From 20eb2c82fda486ceb115f2f3fe3e2c9c7466f500 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 29 Nov 2021 17:56:57 -0500 Subject: [PATCH 001/404] Remove demo directory This demo setups are no longer maintained. See https://github.com/hashicorp/demo-consul-101 for a maintained demo. --- .../docker-compose-cluster/docker-compose.yml | 34 ----------- demo/vagrant-cluster/README.md | 57 ------------------- demo/vagrant-cluster/Vagrantfile | 56 ------------------ 3 files changed, 147 deletions(-) delete mode 100644 demo/docker-compose-cluster/docker-compose.yml delete mode 100644 demo/vagrant-cluster/README.md delete mode 100644 demo/vagrant-cluster/Vagrantfile diff --git a/demo/docker-compose-cluster/docker-compose.yml b/demo/docker-compose-cluster/docker-compose.yml deleted file mode 100644 index d9b022b3b..000000000 --- a/demo/docker-compose-cluster/docker-compose.yml +++ /dev/null @@ -1,34 +0,0 @@ -version: '3' - -services: - - consul-agent-1: &consul-agent - image: consul:latest - networks: - - consul-demo - command: "agent -retry-join consul-server-bootstrap -client 0.0.0.0" - - consul-agent-2: - <<: *consul-agent - - consul-agent-3: - <<: *consul-agent - - consul-server-1: &consul-server - <<: *consul-agent - command: "agent -server -retry-join consul-server-bootstrap -client 0.0.0.0" - - consul-server-2: - <<: *consul-server - - consul-server-bootstrap: - <<: *consul-agent - ports: - - "8400:8400" - - "8500:8500" - - "8600:8600" - - "8600:8600/udp" - command: "agent -server -bootstrap-expect 3 -ui -client 0.0.0.0" - -networks: - consul-demo: diff --git a/demo/vagrant-cluster/README.md b/demo/vagrant-cluster/README.md deleted file mode 100644 index 6b5405861..000000000 --- a/demo/vagrant-cluster/README.md +++ /dev/null @@ -1,57 +0,0 @@ -# Vagrant Consul Demo - -This demo provides a very simple `Vagrantfile` that creates two Consul -server nodes, one at *172.20.20.10* and another at *172.20.20.11*. Both are -running a standard Debian * distribution, and *the latest version* of Consul -is pre-installed. - -To get started, you can start the nodes by just doing: - -``` -vagrant up -``` - -> NOTE: If you prefer a different Vagrant box, you can set the `DEMO_BOX_NAME` -> environment variable before starting `vagrant` like this: -> `DEMO_BOX_NAME="ubuntu/xenial64" vagrant up` - -Once it is finished, you should be able to see the following: - -``` -vagrant status -Current machine states: - -n1 running (virtualbox) -n2 running (virtualbox) -``` - -At this point the two nodes are running and you can SSH in to play with them: - -``` -vagrant ssh n1 -consul version -Consul v0.7.5 -Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents) -exit -``` - -and - -``` -vagrant ssh n2 -consul version -Consul v0.7.5 -Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents) -exit -``` - -> NOTE: This demo will query the HashiCorp Checkpoint service to determine -> the latest Consul release version and install that version by default, -> but if you need a different Consul version, set the `CONSUL_DEMO_VERSION` -> environment variable before `vagrant up` like this: -> `CONSUL_DEMO_VERSION=0.6.4 vagrant up` - -## Where to Next? - -To learn more about starting Consul, joining nodes into a cluster, and -interacting with the agent, check out the [Getting Started guide](https://www.consul.io/intro/getting-started/install.html). diff --git a/demo/vagrant-cluster/Vagrantfile b/demo/vagrant-cluster/Vagrantfile deleted file mode 100644 index 0ac0f199c..000000000 --- a/demo/vagrant-cluster/Vagrantfile +++ /dev/null @@ -1,56 +0,0 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : - -$script = < From d87fe70a828b6b995c9b2956fe629a53f78e6444 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Tue, 4 Jan 2022 11:24:56 -0500 Subject: [PATCH 098/404] testing: Revert assertion for virtual IP flag (#11932) --- agent/consul/system_metadata_test.go | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/agent/consul/system_metadata_test.go b/agent/consul/system_metadata_test.go index 61f62c8d1..633aa6bc4 100644 --- a/agent/consul/system_metadata_test.go +++ b/agent/consul/system_metadata_test.go @@ -33,10 +33,10 @@ func TestLeader_SystemMetadata_CRUD(t *testing.T) { state := srv.fsm.State() - // Initially has one entry for virtual-ips feature flag + // Initially has no entries _, entries, err := state.SystemMetadataList(nil) require.NoError(t, err) - require.Len(t, entries, 1) + require.Len(t, entries, 0) // Create 3 require.NoError(t, srv.setSystemMetadataKey("key1", "val1")) @@ -53,13 +53,12 @@ func TestLeader_SystemMetadata_CRUD(t *testing.T) { _, entries, err = state.SystemMetadataList(nil) require.NoError(t, err) - require.Len(t, entries, 4) + require.Len(t, entries, 3) require.Equal(t, map[string]string{ - structs.SystemMetadataVirtualIPsEnabled: "true", - "key1": "val1", - "key2": "val2", - "key3": "", + "key1": "val1", + "key2": "val2", + "key3": "", }, mapify(entries)) // Update one and delete one. @@ -68,11 +67,10 @@ func TestLeader_SystemMetadata_CRUD(t *testing.T) { _, entries, err = state.SystemMetadataList(nil) require.NoError(t, err) - require.Len(t, entries, 3) + require.Len(t, entries, 2) require.Equal(t, map[string]string{ - structs.SystemMetadataVirtualIPsEnabled: "true", - "key2": "val2", - "key3": "val3", + "key2": "val2", + "key3": "val3", }, mapify(entries)) } From a9371f18e5f6598ae0bc874af77a17c10b56a587 Mon Sep 17 00:00:00 2001 From: Jared Kirschner Date: Fri, 20 Aug 2021 22:03:24 -0400 Subject: [PATCH 099/404] Clarify service and check error messages (use ID) Error messages related to service and check operations previously included the following substrings: - service %q - check %q From this error message, it isn't clear that the expected field is the ID for the entity, not the name. For example, if the user has a service named test, the error message would read 'Unknown service "test"'. This is misleading - a service with that *name* does exist, but not with that *ID*. The substrings above have been modified to make it clear that ID is needed, not name: - service with ID %q - check with ID %q --- .changelog/10894.txt | 3 +++ agent/acl.go | 10 ++++++++-- agent/agent_endpoint.go | 4 +++- agent/agent_endpoint_test.go | 2 +- agent/consul/catalog_endpoint.go | 8 ++++---- agent/local/state.go | 17 ++++++++++++----- agent/local/state_test.go | 32 ++++++++++++++++++++++++++++++-- 7 files changed, 61 insertions(+), 15 deletions(-) create mode 100644 .changelog/10894.txt diff --git a/.changelog/10894.txt b/.changelog/10894.txt new file mode 100644 index 000000000..2799a4537 --- /dev/null +++ b/.changelog/10894.txt @@ -0,0 +1,3 @@ +```release-note:improvement +api: Improve error message if service or health check not found by stating that the entity must be referred to by ID, not name +``` diff --git a/agent/acl.go b/agent/acl.go index 550299216..ae7efdde1 100644 --- a/agent/acl.go +++ b/agent/acl.go @@ -84,7 +84,13 @@ func (a *Agent) vetServiceUpdateWithAuthorizer(authz acl.Authorizer, serviceID s structs.ServiceIDString(existing.Service, &existing.EnterpriseMeta)) } } else { - return NotFoundError{Reason: fmt.Sprintf("Unknown service %q", serviceID)} + // Take care if modifying this error message. + // agent/local/state.go's deleteService assumes the Catalog.Deregister RPC call + // will include "Unknown service"in the error if deregistration fails due to a + // service with that ID not existing. + return NotFoundError{Reason: fmt.Sprintf( + "Unknown service ID %q. Ensure that the service ID is passed, not the service name.", + serviceID)} } return nil @@ -143,7 +149,7 @@ func (a *Agent) vetCheckUpdateWithAuthorizer(authz acl.Authorizer, checkID struc } } } else { - return fmt.Errorf("Unknown check %q", checkID.String()) + return fmt.Errorf("Unknown check ID %q. Ensure that the check ID is passed, not the check name.", checkID.String()) } return nil diff --git a/agent/agent_endpoint.go b/agent/agent_endpoint.go index 623897ac8..297f96cbf 100644 --- a/agent/agent_endpoint.go +++ b/agent/agent_endpoint.go @@ -424,7 +424,9 @@ func (s *HTTPHandlers) AgentService(resp http.ResponseWriter, req *http.Request) svcState := s.agent.State.ServiceState(sid) if svcState == nil { resp.WriteHeader(http.StatusNotFound) - fmt.Fprintf(resp, "unknown service ID: %s", sid.String()) + fmt.Fprintf(resp, + "Unknown service ID %q. Ensure that the service ID is passed, not the service name.", + sid.String()) return "", nil, nil } diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 3d4a80beb..a240aebed 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -4751,7 +4751,7 @@ func TestAgent_ServiceMaintenance_BadRequest(t *testing.T) { resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) require.Equal(t, 404, resp.Code) - require.Contains(t, resp.Body.String(), `Unknown service "_nope_"`) + require.Contains(t, resp.Body.String(), `Unknown service ID "_nope_"`) }) } diff --git a/agent/consul/catalog_endpoint.go b/agent/consul/catalog_endpoint.go index 4de46558a..eb107193a 100644 --- a/agent/consul/catalog_endpoint.go +++ b/agent/consul/catalog_endpoint.go @@ -309,12 +309,12 @@ func vetRegisterWithACL( // Service-level check for some other service. Make sure they've // got write permissions for that service. if ns == nil { - return fmt.Errorf("Unknown service '%s' for check '%s'", check.ServiceID, check.CheckID) + return fmt.Errorf("Unknown service ID '%s' for check ID '%s'", check.ServiceID, check.CheckID) } other, ok := ns.Services[check.ServiceID] if !ok { - return fmt.Errorf("Unknown service '%s' for check '%s'", check.ServiceID, check.CheckID) + return fmt.Errorf("Unknown service ID '%s' for check ID '%s'", check.ServiceID, check.CheckID) } // We are only adding a check here, so we don't add the scope, @@ -417,7 +417,7 @@ func vetDeregisterWithACL( // ignore them from an ACL perspective. if subj.ServiceID != "" { if ns == nil { - return fmt.Errorf("Unknown service '%s'", subj.ServiceID) + return fmt.Errorf("Unknown service ID '%s'", subj.ServiceID) } ns.FillAuthzContext(&authzContext) @@ -427,7 +427,7 @@ func vetDeregisterWithACL( } } else if subj.CheckID != "" { if nc == nil { - return fmt.Errorf("Unknown check '%s'", subj.CheckID) + return fmt.Errorf("Unknown check ID '%s'", subj.CheckID) } nc.FillAuthzContext(&authzContext) diff --git a/agent/local/state.go b/agent/local/state.go index a729bf06c..03db0badb 100644 --- a/agent/local/state.go +++ b/agent/local/state.go @@ -272,7 +272,7 @@ func (l *State) addServiceLocked(service *structs.NodeService, token string) err } if l.agentEnterpriseMeta.PartitionOrDefault() != service.PartitionOrDefault() { - return fmt.Errorf("cannot add service %q to node in partition %q", service.CompoundServiceID(), l.config.Partition) + return fmt.Errorf("cannot add service ID %q to node in partition %q", service.CompoundServiceID(), l.config.Partition) } l.setServiceStateLocked(&ServiceState{ @@ -328,7 +328,14 @@ func (l *State) RemoveServiceWithChecks(serviceID structs.ServiceID, checkIDs [] func (l *State) removeServiceLocked(id structs.ServiceID) error { s := l.services[id] if s == nil || s.Deleted { - return fmt.Errorf("Service %q does not exist", id) + // Take care if modifying this error message. + // deleteService assumes the Catalog.Deregister RPC call will include "Unknown service" + // in the error if deregistration fails due to a service with that ID not existing. + + // When the service register endpoint is called, this error message is also typically + // shadowed by vetServiceUpdateWithAuthorizer, which checks for the existence of the + // service and, if none is found, returns an error before this function is ever called. + return fmt.Errorf("Unknown service ID %q. Ensure that the service ID is passed, not the service name.", id) } // To remove the service on the server we need the token. @@ -539,7 +546,7 @@ func (l *State) addCheckLocked(check *structs.HealthCheck, token string) error { // if there is a serviceID associated with the check, make sure it exists before adding it // NOTE - This logic may be moved to be handled within the Agent's Addcheck method after a refactor if _, ok := l.services[check.CompoundServiceID()]; check.ServiceID != "" && !ok { - return fmt.Errorf("Check %q refers to non-existent service %q", check.CheckID, check.ServiceID) + return fmt.Errorf("Check ID %q refers to non-existent service ID %q", check.CheckID, check.ServiceID) } l.setCheckStateLocked(&CheckState{ @@ -561,7 +568,7 @@ func (l *State) AddAliasCheck(checkID structs.CheckID, srcServiceID structs.Serv defer l.Unlock() if l.agentEnterpriseMeta.PartitionOrDefault() != checkID.PartitionOrDefault() { - return fmt.Errorf("cannot add alias check %q to node in partition %q", checkID.String(), l.config.Partition) + return fmt.Errorf("cannot add alias check ID %q to node in partition %q", checkID.String(), l.config.Partition) } if l.agentEnterpriseMeta.PartitionOrDefault() != srcServiceID.PartitionOrDefault() { return fmt.Errorf("cannot add alias check for %q to node in partition %q", srcServiceID.String(), l.config.Partition) @@ -612,7 +619,7 @@ func (l *State) RemoveCheck(id structs.CheckID) error { func (l *State) removeCheckLocked(id structs.CheckID) error { c := l.checks[id] if c == nil || c.Deleted { - return fmt.Errorf("Check %q does not exist", id) + return fmt.Errorf("Check ID %q does not exist", id) } // If this is a check for an aliased service, then notify the waiters. diff --git a/agent/local/state_test.go b/agent/local/state_test.go index af8944309..62ebd4040 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -1952,7 +1952,7 @@ func TestAgent_AddCheckFailure(t *testing.T) { ServiceID: "redis", Status: api.HealthPassing, } - wantErr := errors.New(`Check "redis:1" refers to non-existent service "redis"`) + wantErr := errors.New(`Check ID "redis:1" refers to non-existent service ID "redis"`) got := l.AddCheck(chk, "") require.Equal(t, wantErr, got) @@ -2114,7 +2114,7 @@ func servicesInSync(state *local.State, wantServices int, entMeta *structs.Enter } for id, s := range services { if !s.InSync { - return fmt.Errorf("service %q should be in sync %+v", id.String(), s) + return fmt.Errorf("service ID %q should be in sync %+v", id.String(), s) } } return nil @@ -2133,6 +2133,34 @@ func checksInSync(state *local.State, wantChecks int, entMeta *structs.Enterpris return nil } +func TestState_RemoveServiceErrorMessages(t *testing.T) { + state := local.NewState(local.Config{}, hclog.New(nil), &token.Store{}) + + // Stub state syncing + state.TriggerSyncChanges = func() {} + + require := require.New(t) + + // Add 1 service + err := state.AddService(&structs.NodeService{ + ID: "web-id", + Service: "web-name", + }, "") + require.NoError(err) + + // Attempt to remove service that doesn't exist + err = state.RemoveService(structs.NewServiceID("db", nil)) + require.Contains(err.Error(), `Unknown service ID "db"`) + + // Attempt to remove service by name (which isn't valid) + err = state.RemoveService(structs.NewServiceID("web-name", nil)) + require.Contains(err.Error(), `Unknown service ID "web-name"`) + + // Attempt to remove service by id (valid) + err = state.RemoveService(structs.NewServiceID("web-id", nil)) + require.NoError(err) +} + func TestState_Notify(t *testing.T) { t.Parallel() logger := hclog.New(&hclog.LoggerOptions{ From 2c047e1c3ab961bde2e73f60f0e020486cdaf0b7 Mon Sep 17 00:00:00 2001 From: Noel Quiles <3746694+EnMod@users.noreply.github.com> Date: Tue, 4 Jan 2022 15:29:46 -0500 Subject: [PATCH 100/404] website: Update copy (#11853) --- website/content/docs/connect/nomad.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/content/docs/connect/nomad.mdx b/website/content/docs/connect/nomad.mdx index e5ac1e7aa..d141e30a1 100644 --- a/website/content/docs/connect/nomad.mdx +++ b/website/content/docs/connect/nomad.mdx @@ -10,7 +10,8 @@ description: >- # Connect on Nomad Consul Connect can be used with [Nomad](https://www.nomadproject.io) to provide -secure service-to-service communication between Nomad jobs and task groups. The ability to +secure service-to-service communication between Nomad jobs and task groups. +Nomad is a simple, flexible scheduler and workload orchestrator. The ability to use the [dynamic port](https://www.nomadproject.io/docs/job-specification/network#dynamic-ports) feature of Nomad makes Connect reduces operational complexity. From 4a36e4ee24b520196414e178ac07bea07d9b8a96 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Tue, 4 Jan 2022 12:44:43 -0800 Subject: [PATCH 102/404] cli: Show node identities in acl token list output (#11926) Fix the pretty CLI output of `consul acl token list` so that it properly displays node identities that are associated with a token. --- .changelog/11926.txt | 3 +++ command/acl/token/formatter.go | 10 +++------- .../FormatTokenList/complex.pretty-meta.golden | 4 ++-- .../FormatTokenList/complex.pretty.golden | 4 ++-- website/content/commands/acl/token/list.mdx | 18 ++++++++++-------- 5 files changed, 20 insertions(+), 19 deletions(-) create mode 100644 .changelog/11926.txt diff --git a/.changelog/11926.txt b/.changelog/11926.txt new file mode 100644 index 000000000..29ce1b043 --- /dev/null +++ b/.changelog/11926.txt @@ -0,0 +1,3 @@ +```release-note:bug +cli: Display assigned node identities in output of `consul acl token list`. +``` diff --git a/command/acl/token/formatter.go b/command/acl/token/formatter.go index ad6d3ae79..e88ee28ba 100644 --- a/command/acl/token/formatter.go +++ b/command/acl/token/formatter.go @@ -173,13 +173,9 @@ func (f *prettyFormatter) formatTokenListEntry(token *api.ACLTokenListEntry) str } } if len(token.NodeIdentities) > 0 { - buffer.WriteString(fmt.Sprintln("Service Identities:")) - for _, svcid := range token.ServiceIdentities { - if len(svcid.Datacenters) > 0 { - buffer.WriteString(fmt.Sprintf(" %s (Datacenters: %s)\n", svcid.ServiceName, strings.Join(svcid.Datacenters, ", "))) - } else { - buffer.WriteString(fmt.Sprintf(" %s (Datacenters: all)\n", svcid.ServiceName)) - } + buffer.WriteString(fmt.Sprintln("Node Identities:")) + for _, nodeid := range token.NodeIdentities { + buffer.WriteString(fmt.Sprintf(" %s (Datacenter: %s)\n", nodeid.NodeName, nodeid.Datacenter)) } } return buffer.String() diff --git a/command/acl/token/testdata/FormatTokenList/complex.pretty-meta.golden b/command/acl/token/testdata/FormatTokenList/complex.pretty-meta.golden index 7ef9e8a55..11e05cfe4 100644 --- a/command/acl/token/testdata/FormatTokenList/complex.pretty-meta.golden +++ b/command/acl/token/testdata/FormatTokenList/complex.pretty-meta.golden @@ -18,5 +18,5 @@ Roles: 6c9d1e1d-34bc-4d55-80f3-add0890ad791 - west-farthing Service Identities: gardener (Datacenters: middleearth-northwest) -Service Identities: - gardener (Datacenters: middleearth-northwest) +Node Identities: + bagend (Datacenter: middleearth-northwest) diff --git a/command/acl/token/testdata/FormatTokenList/complex.pretty.golden b/command/acl/token/testdata/FormatTokenList/complex.pretty.golden index 9005d254b..596d7aba0 100644 --- a/command/acl/token/testdata/FormatTokenList/complex.pretty.golden +++ b/command/acl/token/testdata/FormatTokenList/complex.pretty.golden @@ -15,5 +15,5 @@ Roles: 6c9d1e1d-34bc-4d55-80f3-add0890ad791 - west-farthing Service Identities: gardener (Datacenters: middleearth-northwest) -Service Identities: - gardener (Datacenters: middleearth-northwest) +Node Identities: + bagend (Datacenter: middleearth-northwest) diff --git a/website/content/commands/acl/token/list.mdx b/website/content/commands/acl/token/list.mdx index bca01c369..2458a102e 100644 --- a/website/content/commands/acl/token/list.mdx +++ b/website/content/commands/acl/token/list.mdx @@ -46,14 +46,6 @@ Legacy: false Policies: 00000000-0000-0000-0000-000000000001 - global-management -AccessorID: 59f86a9b-d3b6-166c-32a0-be4ab3f94caa -Description: Super User -Local: false -Create Time: 2018-10-22 15:35:28.787003 -0400 EDT -Legacy: false -Policies: - 00000000-0000-0000-0000-000000000001 - global-management - AccessorID: 00000000-0000-0000-0000-000000000002 Description: Anonymous Token Local: false @@ -69,4 +61,14 @@ Create Time: 2018-10-22 15:33:39.01789 -0400 EDT Legacy: false Policies: 06acc965-df4b-5a99-58cb-3250930c6324 - node-services-read +Service Identities: + wonderservice (Datacenters: all) + +AccessorID: def4895d-eeb9-f78a-fbb9-2a15a568af31 +Description: Node 1 agent token +Local: false +Create Time: 2020-12-22 04:19:30.552528733 +0000 UTC +Legacy: false +Node Identities: + node1 (Datacenter: dc1) ``` From 98aac0855cc13a8aeeea6d65700f3ff070aef68e Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 5 Jan 2022 09:34:28 +0000 Subject: [PATCH 103/404] ui: Configure routes in route config rather than classes (#11900) --- .../vendor/consul-nspaces/routes.js | 25 +- .../vendor/consul-partitions/routes.js | 25 +- ui/packages/consul-ui/app/router.js | 227 +++++++++++++++++- ui/packages/consul-ui/app/routes/dc/index.js | 6 - .../app/routes/dc/intentions/create.js | 5 - .../app/routes/dc/intentions/index.js | 16 -- .../consul-ui/app/routes/dc/kv/create.js | 5 - .../consul-ui/app/routes/dc/kv/folder.js | 2 - .../consul-ui/app/routes/dc/kv/index.js | 9 - .../consul-ui/app/routes/dc/kv/root-create.js | 3 - .../consul-ui/app/routes/dc/nodes/index.js | 16 -- .../app/routes/dc/nodes/show/healthchecks.js | 18 -- .../app/routes/dc/nodes/show/services.js | 17 -- .../consul-ui/app/routes/dc/services/index.js | 18 -- .../dc/services/instance/healthchecks.js | 17 -- .../app/routes/dc/services/instance/index.js | 6 - .../routes/dc/services/instance/upstreams.js | 15 -- .../dc/services/show/intentions/create.js | 5 - .../dc/services/show/intentions/index.js | 16 -- .../app/routes/dc/services/show/services.js | 16 -- .../app/routes/dc/services/show/upstreams.js | 16 -- ui/packages/consul-ui/app/routing/route.js | 40 +-- .../tests/unit/routes/dc/index-test.js | 11 - .../unit/routes/dc/intentions/create-test.js | 11 - .../unit/routes/dc/intentions/index-test.js | 11 - .../tests/unit/routes/dc/kv/create-test.js | 11 - .../tests/unit/routes/dc/kv/index-test.js | 11 - .../unit/routes/dc/kv/root-create-test.js | 11 - 28 files changed, 268 insertions(+), 321 deletions(-) delete mode 100644 ui/packages/consul-ui/app/routes/dc/index.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/intentions/create.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/intentions/index.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/kv/create.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/kv/root-create.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/nodes/index.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/nodes/show/services.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/index.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/instance/index.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/show/services.js delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js delete mode 100644 ui/packages/consul-ui/tests/unit/routes/dc/index-test.js delete mode 100644 ui/packages/consul-ui/tests/unit/routes/dc/intentions/create-test.js delete mode 100644 ui/packages/consul-ui/tests/unit/routes/dc/intentions/index-test.js delete mode 100644 ui/packages/consul-ui/tests/unit/routes/dc/kv/create-test.js delete mode 100644 ui/packages/consul-ui/tests/unit/routes/dc/kv/index-test.js delete mode 100644 ui/packages/consul-ui/tests/unit/routes/dc/kv/root-create-test.js diff --git a/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js b/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js index 3f8a0f904..b4f0976c9 100644 --- a/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js +++ b/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js @@ -3,18 +3,23 @@ nspaces: { _options: { path: '/namespaces', - queryParams: { - sortBy: 'sort', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Description', 'Role', 'Policy']], - }, - search: { - as: 'filter', - replace: true, + abilities: ['read nspaces'], + }, + index: { + _options: { + path: '/', + queryParams: { + sortBy: 'sort', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Description', 'Role', 'Policy']], + }, + search: { + as: 'filter', + replace: true, + }, }, }, - abilities: ['read nspaces'], }, edit: { _options: { path: '/:name' }, diff --git a/ui/packages/consul-partitions/vendor/consul-partitions/routes.js b/ui/packages/consul-partitions/vendor/consul-partitions/routes.js index 3ef4d56a3..a60c5ba22 100644 --- a/ui/packages/consul-partitions/vendor/consul-partitions/routes.js +++ b/ui/packages/consul-partitions/vendor/consul-partitions/routes.js @@ -3,18 +3,23 @@ partitions: { _options: { path: '/partitions', - queryParams: { - sortBy: 'sort', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Description']], - }, - search: { - as: 'filter', - replace: true, + abilities: ['read partitions'], + }, + index: { + _options: { + path: '/', + queryParams: { + sortBy: 'sort', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Description']], + }, + search: { + as: 'filter', + replace: true, + }, }, }, - abilities: ['read partitions'], }, edit: { _options: { path: '/:name' }, diff --git a/ui/packages/consul-ui/app/router.js b/ui/packages/consul-ui/app/router.js index 6ecbd29a0..1ac7c4da1 100644 --- a/ui/packages/consul-ui/app/router.js +++ b/ui/packages/consul-ui/app/router.js @@ -19,33 +19,123 @@ export const routes = merge.all( // Our parent datacenter resource sets the namespace // for the entire application dc: { - _options: { path: '/:dc' }, + _options: { + path: '/:dc', + }, + index: { + _options: { + path: '/', + redirect: '../services', + }, + }, // Services represent a consul service services: { _options: { path: '/services' }, + index: { + _options: { + path: '/', + queryParams: { + sortBy: 'sort', + status: 'status', + source: 'source', + kind: 'kind', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Tags']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, + }, // Show an individual service show: { _options: { path: '/:name' }, instances: { - _options: { path: '/instances' }, + _options: { + path: '/instances', + queryParams: { + sortBy: 'sort', + status: 'status', + source: 'source', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Node', 'Tags', 'ID', 'Address', 'Port', 'Service.Meta', 'Node.Meta']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, }, intentions: { _options: { path: '/intentions' }, + index: { + _options: { + path: '', + queryParams: { + sortBy: 'sort', + access: 'access', + searchproperty: { + as: 'searchproperty', + empty: [['SourceName', 'DestinationName']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, + }, edit: { _options: { path: '/:intention_id' }, }, create: { - _options: { path: '/create' }, + _options: { + template: 'dc/services/show/intentions/edit', + path: '/create', + }, }, }, topology: { _options: { path: '/topology' }, }, services: { - _options: { path: '/services' }, + _options: { + path: '/services', + queryParams: { + sortBy: 'sort', + instance: 'instance', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Tags']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, }, upstreams: { - _options: { path: '/upstreams' }, + _options: { + path: '/upstreams', + queryParams: { + sortBy: 'sort', + instance: 'instance', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Tags']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, }, routing: { _options: { path: '/routing' }, @@ -55,12 +145,43 @@ export const routes = merge.all( }, }, instance: { - _options: { path: '/:name/instances/:node/:id' }, + _options: { + path: '/:name/instances/:node/:id', + redirect: './healthchecks', + }, healthchecks: { - _options: { path: '/health-checks' }, + _options: { + path: '/health-checks', + queryParams: { + sortBy: 'sort', + status: 'status', + check: 'check', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Node', 'CheckID', 'Notes', 'Output', 'ServiceTags']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, }, upstreams: { - _options: { path: '/upstreams' }, + _options: { + path: '/upstreams', + queryParams: { + sortBy: 'sort', + search: { + as: 'filter', + replace: true, + }, + searchproperty: { + as: 'searchproperty', + empty: [['DestinationName', 'LocalBindAddress', 'LocalBindPort']], + }, + }, + }, }, exposedpaths: { _options: { path: '/exposed-paths' }, @@ -79,14 +200,62 @@ export const routes = merge.all( // Nodes represent a consul node nodes: { _options: { path: '/nodes' }, + index: { + _options: { + path: '', + queryParams: { + sortBy: 'sort', + status: 'status', + searchproperty: { + as: 'searchproperty', + empty: [['Node', 'Address', 'Meta']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, + }, // Show an individual node show: { _options: { path: '/:name' }, healthchecks: { - _options: { path: '/health-checks' }, + _options: { + path: '/health-checks', + queryParams: { + sortBy: 'sort', + status: 'status', + kind: 'kind', + check: 'check', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Service', 'CheckID', 'Notes', 'Output', 'ServiceTags']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, }, services: { - _options: { path: '/service-instances' }, + _options: { + path: '/service-instances', + queryParams: { + sortBy: 'sort', + status: 'status', + source: 'source', + searchproperty: { + as: 'searchproperty', + empty: [['Name', 'Tags', 'ID', 'Address', 'Port', 'Service.Meta']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, }, rtt: { _options: { path: '/round-trip-time' }, @@ -102,6 +271,23 @@ export const routes = merge.all( // Intentions represent a consul intention intentions: { _options: { path: '/intentions' }, + index: { + _options: { + path: '/', + queryParams: { + sortBy: 'sort', + access: 'access', + searchproperty: { + as: 'searchproperty', + empty: [['SourceName', 'DestinationName']], + }, + search: { + as: 'filter', + replace: true, + }, + }, + }, + }, edit: { _options: { path: '/:intention_id', @@ -110,6 +296,7 @@ export const routes = merge.all( }, create: { _options: { + template: 'dc/intentions/edit', path: '/create', abilities: ['create intentions'], }, @@ -118,20 +305,38 @@ export const routes = merge.all( // Key/Value kv: { _options: { path: '/kv' }, + index: { + _options: { + path: '/', + queryParams: { + sortBy: 'sort', + kind: 'kind', + search: { + as: 'filter', + replace: true, + }, + }, + }, + }, folder: { - _options: { path: '/*key' }, + _options: { + template: 'dc/kv/index', + path: '/*key', + }, }, edit: { _options: { path: '/*key/edit' }, }, create: { _options: { + template: 'dc/kv/edit', path: '/*key/create', abilities: ['create kvs'], }, }, 'root-create': { _options: { + template: 'dc/kv/edit', path: '/create', abilities: ['create kvs'], }, diff --git a/ui/packages/consul-ui/app/routes/dc/index.js b/ui/packages/consul-ui/app/routes/dc/index.js deleted file mode 100644 index 6503c013f..000000000 --- a/ui/packages/consul-ui/app/routes/dc/index.js +++ /dev/null @@ -1,6 +0,0 @@ -import Route from 'consul-ui/routing/route'; -import to from 'consul-ui/utils/routing/redirect-to'; - -export default class IndexRoute extends Route { - redirect = to('services'); -} diff --git a/ui/packages/consul-ui/app/routes/dc/intentions/create.js b/ui/packages/consul-ui/app/routes/dc/intentions/create.js deleted file mode 100644 index 416c50354..000000000 --- a/ui/packages/consul-ui/app/routes/dc/intentions/create.js +++ /dev/null @@ -1,5 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class CreateRoute extends Route { - templateName = 'dc/intentions/edit'; -} diff --git a/ui/packages/consul-ui/app/routes/dc/intentions/index.js b/ui/packages/consul-ui/app/routes/dc/intentions/index.js deleted file mode 100644 index abbb2483e..000000000 --- a/ui/packages/consul-ui/app/routes/dc/intentions/index.js +++ /dev/null @@ -1,16 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class IndexRoute extends Route { - queryParams = { - sortBy: 'sort', - access: 'access', - searchproperty: { - as: 'searchproperty', - empty: [['SourceName', 'DestinationName']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/kv/create.js b/ui/packages/consul-ui/app/routes/dc/kv/create.js deleted file mode 100644 index 07a6d95be..000000000 --- a/ui/packages/consul-ui/app/routes/dc/kv/create.js +++ /dev/null @@ -1,5 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class CreateRoute extends Route { - templateName = 'dc/kv/edit'; -} diff --git a/ui/packages/consul-ui/app/routes/dc/kv/folder.js b/ui/packages/consul-ui/app/routes/dc/kv/folder.js index 335447023..bc38291c1 100644 --- a/ui/packages/consul-ui/app/routes/dc/kv/folder.js +++ b/ui/packages/consul-ui/app/routes/dc/kv/folder.js @@ -1,8 +1,6 @@ import Route from './index'; export default class FolderRoute extends Route { - templateName = 'dc/kv/index'; - beforeModel(transition) { super.beforeModel(...arguments); const params = this.paramsFor('dc.kv.folder'); diff --git a/ui/packages/consul-ui/app/routes/dc/kv/index.js b/ui/packages/consul-ui/app/routes/dc/kv/index.js index 0131797b1..8c3999b21 100644 --- a/ui/packages/consul-ui/app/routes/dc/kv/index.js +++ b/ui/packages/consul-ui/app/routes/dc/kv/index.js @@ -3,15 +3,6 @@ import { action } from '@ember/object'; import isFolder from 'consul-ui/utils/isFolder'; export default class IndexRoute extends Route { - queryParams = { - sortBy: 'sort', - kind: 'kind', - search: { - as: 'filter', - replace: true, - }, - }; - beforeModel() { // we are index or folder, so if the key doesn't have a trailing slash // add one to force a fake findBySlug diff --git a/ui/packages/consul-ui/app/routes/dc/kv/root-create.js b/ui/packages/consul-ui/app/routes/dc/kv/root-create.js deleted file mode 100644 index 796723b13..000000000 --- a/ui/packages/consul-ui/app/routes/dc/kv/root-create.js +++ /dev/null @@ -1,3 +0,0 @@ -import Route from './create'; - -export default class RootCreateRoute extends Route {} diff --git a/ui/packages/consul-ui/app/routes/dc/nodes/index.js b/ui/packages/consul-ui/app/routes/dc/nodes/index.js deleted file mode 100644 index c3ed3a894..000000000 --- a/ui/packages/consul-ui/app/routes/dc/nodes/index.js +++ /dev/null @@ -1,16 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class IndexRoute extends Route { - queryParams = { - sortBy: 'sort', - status: 'status', - searchproperty: { - as: 'searchproperty', - empty: [['Node', 'Address', 'Meta']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js deleted file mode 100644 index 665b16a93..000000000 --- a/ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js +++ /dev/null @@ -1,18 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class HealthchecksRoute extends Route { - queryParams = { - sortBy: 'sort', - status: 'status', - kind: 'kind', - check: 'check', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Service', 'CheckID', 'Notes', 'Output', 'ServiceTags']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/nodes/show/services.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/services.js deleted file mode 100644 index 8920d28ab..000000000 --- a/ui/packages/consul-ui/app/routes/dc/nodes/show/services.js +++ /dev/null @@ -1,17 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class ServicesRoute extends Route { - queryParams = { - sortBy: 'sort', - status: 'status', - source: 'source', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Tags', 'ID', 'Address', 'Port', 'Service.Meta']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/index.js b/ui/packages/consul-ui/app/routes/dc/services/index.js deleted file mode 100644 index 3de9104fc..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/index.js +++ /dev/null @@ -1,18 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class IndexRoute extends Route { - queryParams = { - sortBy: 'sort', - status: 'status', - source: 'source', - kind: 'kind', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Tags']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js b/ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js deleted file mode 100644 index cc0a1b1f7..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js +++ /dev/null @@ -1,17 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class HealthchecksRoute extends Route { - queryParams = { - sortBy: 'sort', - status: 'status', - check: 'check', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Node', 'CheckID', 'Notes', 'Output', 'ServiceTags']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/instance/index.js b/ui/packages/consul-ui/app/routes/dc/services/instance/index.js deleted file mode 100644 index 37898e3e3..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/instance/index.js +++ /dev/null @@ -1,6 +0,0 @@ -import Route from 'consul-ui/routing/route'; -import to from 'consul-ui/utils/routing/redirect-to'; - -export default class InstanceIndexRoute extends Route { - redirect = to('healthchecks'); -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js b/ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js deleted file mode 100644 index 2179c8c20..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js +++ /dev/null @@ -1,15 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class UpstreamsRoute extends Route { - queryParams = { - sortBy: 'sort', - search: { - as: 'filter', - replace: true, - }, - searchproperty: { - as: 'searchproperty', - empty: [['DestinationName', 'LocalBindAddress', 'LocalBindPort']], - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js deleted file mode 100644 index 818d5e8aa..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js +++ /dev/null @@ -1,5 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class CreateRoute extends Route { - templateName = 'dc/services/show/intentions/edit'; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js deleted file mode 100644 index abbb2483e..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js +++ /dev/null @@ -1,16 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class IndexRoute extends Route { - queryParams = { - sortBy: 'sort', - access: 'access', - searchproperty: { - as: 'searchproperty', - empty: [['SourceName', 'DestinationName']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/services.js b/ui/packages/consul-ui/app/routes/dc/services/show/services.js deleted file mode 100644 index 55025bfb2..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/show/services.js +++ /dev/null @@ -1,16 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class ServicesRoute extends Route { - queryParams = { - sortBy: 'sort', - instance: 'instance', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Tags']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js b/ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js deleted file mode 100644 index 023f37902..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js +++ /dev/null @@ -1,16 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class UpstreamsRoute extends Route { - queryParams = { - sortBy: 'sort', - instance: 'instance', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Tags']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routing/route.js b/ui/packages/consul-ui/app/routing/route.js index 2028c96df..0499b849f 100644 --- a/ui/packages/consul-ui/app/routing/route.js +++ b/ui/packages/consul-ui/app/routing/route.js @@ -13,36 +13,40 @@ export default class BaseRoute extends Route { _setRouteName() { super._setRouteName(...arguments); - const routeName = this.routeName - .split('.') - .filter(item => item !== 'index') - .join('.'); - const template = get(routes, `${routeName}._options.template`); - if (template) { + + const template = get(routes, `${this.routeName}._options.template`); + if (typeof template !== 'undefined') { this.templateName = template; } - const queryParams = get(routes, `${routeName}._options.queryParams`); - if ( - queryParams && - ['dc.partitions.index', 'dc.nspaces.index', 'oauth-provider-debug'].includes(this.routeName) - ) { + + const queryParams = get(routes, `${this.routeName}._options.queryParams`); + if (typeof queryParams !== 'undefined') { this.queryParams = queryParams; } } redirect(model, transition) { - // remove any references to index as it is the same as the root routeName - const routeName = this.routeName - .split('.') - .filter(item => item !== 'index') - .join('.'); - const to = get(routes, `${routeName}._options.redirect`); + let to = get(routes, `${this.routeName}._options.redirect`); if (typeof to !== 'undefined') { + // simple path resolve + to = to + .split('/') + .reduce((prev, item, i, items) => { + if (item !== '.') { + if (item === '..') { + prev.pop(); + } else if (item !== '' || i === items.length - 1) { + prev.push(item); + } + } + return prev; + }, this.routeName.split('.')) + .join('.'); // TODO: Does this need to return? // Almost remember things getting strange if you returned from here // which is why I didn't do it originally so be sure to look properly if // you feel like adding a return - this.replaceWith(`${routeName}${to}`, model); + this.replaceWith(`${to}`, model); } } diff --git a/ui/packages/consul-ui/tests/unit/routes/dc/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/index-test.js deleted file mode 100644 index 705db7668..000000000 --- a/ui/packages/consul-ui/tests/unit/routes/dc/index-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import { module, test } from 'qunit'; -import { setupTest } from 'ember-qunit'; - -module('Unit | Route | dc/index', function(hooks) { - setupTest(hooks); - - test('it exists', function(assert) { - let route = this.owner.lookup('route:dc/index'); - assert.ok(route); - }); -}); diff --git a/ui/packages/consul-ui/tests/unit/routes/dc/intentions/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/intentions/create-test.js deleted file mode 100644 index ab1b5a8f7..000000000 --- a/ui/packages/consul-ui/tests/unit/routes/dc/intentions/create-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import { module, test } from 'qunit'; -import { setupTest } from 'ember-qunit'; - -module('Unit | Route | dc/intentions/create', function(hooks) { - setupTest(hooks); - - test('it exists', function(assert) { - let route = this.owner.lookup('route:dc/intentions/create'); - assert.ok(route); - }); -}); diff --git a/ui/packages/consul-ui/tests/unit/routes/dc/intentions/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/intentions/index-test.js deleted file mode 100644 index 24e410426..000000000 --- a/ui/packages/consul-ui/tests/unit/routes/dc/intentions/index-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import { module, test } from 'qunit'; -import { setupTest } from 'ember-qunit'; - -module('Unit | Route | dc/intentions/index', function(hooks) { - setupTest(hooks); - - test('it exists', function(assert) { - let route = this.owner.lookup('route:dc/intentions/index'); - assert.ok(route); - }); -}); diff --git a/ui/packages/consul-ui/tests/unit/routes/dc/kv/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/create-test.js deleted file mode 100644 index fc868ed2a..000000000 --- a/ui/packages/consul-ui/tests/unit/routes/dc/kv/create-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import { module, skip } from 'qunit'; -import { setupTest } from 'ember-qunit'; - -module('Unit | Route | dc/kv/create', function(hooks) { - setupTest(hooks); - - skip('it exists', function(assert) { - let route = this.subject(); - assert.ok(route); - }); -}); diff --git a/ui/packages/consul-ui/tests/unit/routes/dc/kv/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/index-test.js deleted file mode 100644 index b9e9b1012..000000000 --- a/ui/packages/consul-ui/tests/unit/routes/dc/kv/index-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import { module, test } from 'qunit'; -import { setupTest } from 'ember-qunit'; - -module('Unit | Route | dc/kv/index', function(hooks) { - setupTest(hooks); - - test('it exists', function(assert) { - let route = this.owner.lookup('route:dc/kv/index'); - assert.ok(route); - }); -}); diff --git a/ui/packages/consul-ui/tests/unit/routes/dc/kv/root-create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/root-create-test.js deleted file mode 100644 index f36815359..000000000 --- a/ui/packages/consul-ui/tests/unit/routes/dc/kv/root-create-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import { module, test } from 'qunit'; -import { setupTest } from 'ember-qunit'; - -module('Unit | Route | dc/kv/root create', function(hooks) { - setupTest(hooks); - - test('it exists', function(assert) { - let route = this.owner.lookup('route:dc/kv/root-create'); - assert.ok(route); - }); -}); From be78d764164b924cf91669c3828b788490a7b1b8 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 5 Jan 2022 14:52:06 +0000 Subject: [PATCH 104/404] ui: Only allow partition creation with a single datacenter setup (#11817) --- .../app/templates/dc/partitions/index.hbs | 10 +++++++++- ui/packages/consul-ui/app/abilities/partition.js | 14 ++++++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/ui/packages/consul-partitions/app/templates/dc/partitions/index.hbs b/ui/packages/consul-partitions/app/templates/dc/partitions/index.hbs index 824a6ab4f..57609854c 100644 --- a/ui/packages/consul-partitions/app/templates/dc/partitions/index.hbs +++ b/ui/packages/consul-partitions/app/templates/dc/partitions/index.hbs @@ -48,7 +48,15 @@ as |route|> - Create +{{#if (can 'create partitions')}} + + Create + +{{/if}} {{#if (gt items.length 0)}} diff --git a/ui/packages/consul-ui/app/abilities/partition.js b/ui/packages/consul-ui/app/abilities/partition.js index 8756ba3b0..86cc5cefc 100644 --- a/ui/packages/consul-ui/app/abilities/partition.js +++ b/ui/packages/consul-ui/app/abilities/partition.js @@ -3,6 +3,7 @@ import { inject as service } from '@ember/service'; export default class PartitionAbility extends BaseAbility { @service('env') env; + @service('repository/dc') dcs; resource = 'operator'; segmented = false; @@ -12,7 +13,16 @@ export default class PartitionAbility extends BaseAbility { } get canManage() { - return this.canCreate; + // management currently means "can I write", not necessarily just create + return this.canWrite; + } + + get canCreate() { + // we can only currently create a partition if you have only one datacenter + if (this.dcs.peekAll().length > 1) { + return false; + } + return super.canCreate; } get canDelete() { @@ -20,7 +30,7 @@ export default class PartitionAbility extends BaseAbility { } get canChoose() { - if(typeof this.dc === 'undefined') { + if (typeof this.dc === 'undefined') { return false; } return this.canUse && this.dc.Primary; From 45b5742973224aa5f06f4e7a4d1fc208984e2ccf Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 5 Jan 2022 16:56:26 +0000 Subject: [PATCH 105/404] ui: Add selective no-console eslint rule (#11938) --- ui/packages/consul-ui/.dev.eslintrc.js | 8 -------- ui/packages/consul-ui/.eslintrc.js | 1 + ui/packages/consul-ui/app/locations/fsm-with-optional.js | 2 +- .../auth-providers/oauth2-code-with-url-provider.js | 7 +++---- ui/packages/consul-ui/package.json | 1 - 5 files changed, 5 insertions(+), 14 deletions(-) delete mode 100644 ui/packages/consul-ui/.dev.eslintrc.js diff --git a/ui/packages/consul-ui/.dev.eslintrc.js b/ui/packages/consul-ui/.dev.eslintrc.js deleted file mode 100644 index 0cf0f31ed..000000000 --- a/ui/packages/consul-ui/.dev.eslintrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - extends: ['./.eslintrc.js'], - rules: { - 'no-console': 'warn', - 'no-unused-vars': ['error', { args: 'none' }], - 'ember/routes-segments-snake-case': 'warn', - }, -}; diff --git a/ui/packages/consul-ui/.eslintrc.js b/ui/packages/consul-ui/.eslintrc.js index 0daee7958..994b78a24 100644 --- a/ui/packages/consul-ui/.eslintrc.js +++ b/ui/packages/consul-ui/.eslintrc.js @@ -14,6 +14,7 @@ module.exports = { browser: true, }, rules: { + 'no-console': ['error', {allow: ['error', 'info']}], 'no-unused-vars': ['error', { args: 'none' }], 'ember/no-new-mixins': ['warn'], 'ember/no-jquery': 'warn', diff --git a/ui/packages/consul-ui/app/locations/fsm-with-optional.js b/ui/packages/consul-ui/app/locations/fsm-with-optional.js index 19ed18da3..1e4feb839 100644 --- a/ui/packages/consul-ui/app/locations/fsm-with-optional.js +++ b/ui/packages/consul-ui/app/locations/fsm-with-optional.js @@ -240,7 +240,7 @@ export default class FSMWithOptionalLocation { */ transitionTo(url) { if (this.router.currentRouteName.startsWith('docs') && url.startsWith('console://')) { - console.log(`location.transitionTo: ${url.substr(10)}`); + console.info(`location.transitionTo: ${url.substr(10)}`); return true; } const previousOptional = Object.entries(this.optionalParams()); diff --git a/ui/packages/consul-ui/app/services/auth-providers/oauth2-code-with-url-provider.js b/ui/packages/consul-ui/app/services/auth-providers/oauth2-code-with-url-provider.js index f7a4cf7ca..69aa83f74 100644 --- a/ui/packages/consul-ui/app/services/auth-providers/oauth2-code-with-url-provider.js +++ b/ui/packages/consul-ui/app/services/auth-providers/oauth2-code-with-url-provider.js @@ -2,7 +2,6 @@ import OAuth2CodeProvider from 'torii/providers/oauth2-code'; import { runInDebug } from '@ember/debug'; export default class OAuth2CodeWithURLProvider extends OAuth2CodeProvider { - name = 'oidc-with-url'; buildUrl() { @@ -23,7 +22,9 @@ export default class OAuth2CodeWithURLProvider extends OAuth2CodeProvider { authorizationCode: decodeURIComponent(authData[responseType]), provider: name, }; - runInDebug(_ => console.log('Retrieved the following creds from the OAuth Provider', creds)) + runInDebug(_ => + console.info('Retrieved the following creds from the OAuth Provider', creds) + ); return creds; }); } @@ -34,6 +35,4 @@ export default class OAuth2CodeWithURLProvider extends OAuth2CodeProvider { return popup.close(); } } - } - diff --git a/ui/packages/consul-ui/package.json b/ui/packages/consul-ui/package.json index 0eb5ff1e8..5c4035202 100644 --- a/ui/packages/consul-ui/package.json +++ b/ui/packages/consul-ui/package.json @@ -16,7 +16,6 @@ "lint": "FORCE_COLOR=1 npm-run-all --aggregate-output --continue-on-error --parallel lint:*", "lint:hbs": "ember-template-lint .", "lint:js": "eslint .", - "_lint:dev:js": "eslint -c .dev.eslintrc.js --fix ./*.js ./.*.js app config lib server tests", "format": "npm-run-all format:*", "format:js": "prettier --write \"{app,config,lib,server,vendor,tests}/**/*.js\" ./*.js ./.*.js", "format:sass": "prettier --write \"app/**/*.scss\"", From dc18933cc2136e498959c10c0acc8d2792ffc319 Mon Sep 17 00:00:00 2001 From: Mathew Estafanous <56979977+Mathew-Estafanous@users.noreply.github.com> Date: Wed, 5 Jan 2022 12:11:03 -0500 Subject: [PATCH 106/404] Ensure consistency with error-handling across all handlers. (#11599) --- agent/acl_endpoint.go | 107 +++++++++++++++++------------------ agent/acl_endpoint_test.go | 7 +-- agent/agent_endpoint.go | 104 +++++++++++----------------------- agent/agent_endpoint_test.go | 9 +-- agent/http.go | 20 ++++++- 5 files changed, 107 insertions(+), 140 deletions(-) diff --git a/agent/acl_endpoint.go b/agent/acl_endpoint.go index 08ddfb496..ef07e2a01 100644 --- a/agent/acl_endpoint.go +++ b/agent/acl_endpoint.go @@ -16,23 +16,22 @@ type aclBootstrapResponse struct { structs.ACLToken } +var aclDisabled = UnauthorizedError{Reason: "ACL support disabled"} + // checkACLDisabled will return a standard response if ACLs are disabled. This // returns true if they are disabled and we should not continue. -func (s *HTTPHandlers) checkACLDisabled(resp http.ResponseWriter, _req *http.Request) bool { +func (s *HTTPHandlers) checkACLDisabled() bool { if s.agent.config.ACLsEnabled { return false } - - resp.WriteHeader(http.StatusUnauthorized) - fmt.Fprint(resp, "ACL support disabled") return true } // ACLBootstrap is used to perform a one-time ACL bootstrap operation on // a cluster to get the first management token. func (s *HTTPHandlers) ACLBootstrap(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } args := structs.DCSpecificRequest{ @@ -42,9 +41,7 @@ func (s *HTTPHandlers) ACLBootstrap(resp http.ResponseWriter, req *http.Request) err := s.agent.RPC("ACL.BootstrapTokens", &args, &out) if err != nil { if strings.Contains(err.Error(), structs.ACLBootstrapNotAllowedErr.Error()) { - resp.WriteHeader(http.StatusForbidden) - fmt.Fprint(resp, acl.PermissionDeniedError{Cause: err.Error()}.Error()) - return nil, nil + return nil, acl.PermissionDeniedError{Cause: err.Error()} } else { return nil, err } @@ -53,8 +50,8 @@ func (s *HTTPHandlers) ACLBootstrap(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) ACLReplicationStatus(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } // Note that we do not forward to the ACL DC here. This is a query for @@ -74,8 +71,8 @@ func (s *HTTPHandlers) ACLReplicationStatus(resp http.ResponseWriter, req *http. } func (s *HTTPHandlers) ACLPolicyList(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var args structs.ACLPolicyListRequest @@ -105,8 +102,8 @@ func (s *HTTPHandlers) ACLPolicyList(resp http.ResponseWriter, req *http.Request } func (s *HTTPHandlers) ACLPolicyCRUD(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var fn func(resp http.ResponseWriter, req *http.Request, policyID string) (interface{}, error) @@ -166,8 +163,8 @@ func (s *HTTPHandlers) ACLPolicyRead(resp http.ResponseWriter, req *http.Request } func (s *HTTPHandlers) ACLPolicyReadByName(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } policyName := strings.TrimPrefix(req.URL.Path, "/v1/acl/policy/name/") @@ -183,8 +180,8 @@ func (s *HTTPHandlers) ACLPolicyReadByID(resp http.ResponseWriter, req *http.Req } func (s *HTTPHandlers) ACLPolicyCreate(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } return s.aclPolicyWriteInternal(resp, req, "", true) @@ -248,8 +245,8 @@ func (s *HTTPHandlers) ACLPolicyDelete(resp http.ResponseWriter, req *http.Reque } func (s *HTTPHandlers) ACLTokenList(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } args := &structs.ACLTokenListRequest{ @@ -285,8 +282,8 @@ func (s *HTTPHandlers) ACLTokenList(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) ACLTokenCRUD(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var fn func(resp http.ResponseWriter, req *http.Request, tokenID string) (interface{}, error) @@ -318,8 +315,8 @@ func (s *HTTPHandlers) ACLTokenCRUD(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) ACLTokenSelf(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } args := structs.ACLTokenGetRequest{ @@ -351,8 +348,8 @@ func (s *HTTPHandlers) ACLTokenSelf(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) ACLTokenCreate(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } return s.aclTokenSetInternal(req, "", true) @@ -442,8 +439,8 @@ func (s *HTTPHandlers) ACLTokenDelete(resp http.ResponseWriter, req *http.Reques } func (s *HTTPHandlers) ACLTokenClone(resp http.ResponseWriter, req *http.Request, tokenID string) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } args := structs.ACLTokenSetRequest{ @@ -471,8 +468,8 @@ func (s *HTTPHandlers) ACLTokenClone(resp http.ResponseWriter, req *http.Request } func (s *HTTPHandlers) ACLRoleList(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var args structs.ACLRoleListRequest @@ -504,8 +501,8 @@ func (s *HTTPHandlers) ACLRoleList(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) ACLRoleCRUD(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var fn func(resp http.ResponseWriter, req *http.Request, roleID string) (interface{}, error) @@ -533,8 +530,8 @@ func (s *HTTPHandlers) ACLRoleCRUD(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) ACLRoleReadByName(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } roleName := strings.TrimPrefix(req.URL.Path, "/v1/acl/role/name/") @@ -581,8 +578,8 @@ func (s *HTTPHandlers) ACLRoleRead(resp http.ResponseWriter, req *http.Request, } func (s *HTTPHandlers) ACLRoleCreate(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } return s.ACLRoleWrite(resp, req, "") @@ -634,8 +631,8 @@ func (s *HTTPHandlers) ACLRoleDelete(resp http.ResponseWriter, req *http.Request } func (s *HTTPHandlers) ACLBindingRuleList(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var args structs.ACLBindingRuleListRequest @@ -668,8 +665,8 @@ func (s *HTTPHandlers) ACLBindingRuleList(resp http.ResponseWriter, req *http.Re } func (s *HTTPHandlers) ACLBindingRuleCRUD(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var fn func(resp http.ResponseWriter, req *http.Request, bindingRuleID string) (interface{}, error) @@ -728,8 +725,8 @@ func (s *HTTPHandlers) ACLBindingRuleRead(resp http.ResponseWriter, req *http.Re } func (s *HTTPHandlers) ACLBindingRuleCreate(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } return s.ACLBindingRuleWrite(resp, req, "") @@ -781,8 +778,8 @@ func (s *HTTPHandlers) ACLBindingRuleDelete(resp http.ResponseWriter, req *http. } func (s *HTTPHandlers) ACLAuthMethodList(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var args structs.ACLAuthMethodListRequest @@ -812,8 +809,8 @@ func (s *HTTPHandlers) ACLAuthMethodList(resp http.ResponseWriter, req *http.Req } func (s *HTTPHandlers) ACLAuthMethodCRUD(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } var fn func(resp http.ResponseWriter, req *http.Request, methodName string) (interface{}, error) @@ -872,8 +869,8 @@ func (s *HTTPHandlers) ACLAuthMethodRead(resp http.ResponseWriter, req *http.Req } func (s *HTTPHandlers) ACLAuthMethodCreate(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } return s.ACLAuthMethodWrite(resp, req, "") @@ -928,8 +925,8 @@ func (s *HTTPHandlers) ACLAuthMethodDelete(resp http.ResponseWriter, req *http.R } func (s *HTTPHandlers) ACLLogin(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } args := &structs.ACLLoginRequest{ @@ -954,8 +951,8 @@ func (s *HTTPHandlers) ACLLogin(resp http.ResponseWriter, req *http.Request) (in } func (s *HTTPHandlers) ACLLogout(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } args := structs.ACLLogoutRequest{ @@ -1014,8 +1011,8 @@ func (s *HTTPHandlers) ACLAuthorize(resp http.ResponseWriter, req *http.Request) // policy. const maxRequests = 64 - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, aclDisabled } request := structs.RemoteACLAuthorizationRequest{ diff --git a/agent/acl_endpoint_test.go b/agent/acl_endpoint_test.go index bd8929aab..ca5239061 100644 --- a/agent/acl_endpoint_test.go +++ b/agent/acl_endpoint_test.go @@ -70,10 +70,8 @@ func TestACL_Disabled_Response(t *testing.T) { req, _ := http.NewRequest("PUT", "/should/not/care", nil) resp := httptest.NewRecorder() obj, err := tt.fn(resp, req) - require.NoError(t, err) require.Nil(t, obj) - require.Equal(t, http.StatusUnauthorized, resp.Code) - require.Contains(t, resp.Body.String(), "ACL support disabled") + require.ErrorIs(t, err, UnauthorizedError{Reason: "ACL support disabled"}) }) } } @@ -119,9 +117,6 @@ func TestACL_Bootstrap(t *testing.T) { if tt.token && err != nil { t.Fatalf("err: %v", err) } - if got, want := resp.Code, tt.code; got != want { - t.Fatalf("got %d want %d", got, want) - } if tt.token { wrap, ok := out.(*aclBootstrapResponse) if !ok { diff --git a/agent/agent_endpoint.go b/agent/agent_endpoint.go index 297f96cbf..2de8c53c4 100644 --- a/agent/agent_endpoint.go +++ b/agent/agent_endpoint.go @@ -155,9 +155,11 @@ func (s *HTTPHandlers) AgentMetrics(resp http.ResponseWriter, req *http.Request) } if enablePrometheusOutput(req) { if s.agent.config.Telemetry.PrometheusOpts.Expiration < 1 { - resp.WriteHeader(http.StatusUnsupportedMediaType) - fmt.Fprint(resp, "Prometheus is not enabled since its retention time is not positive") - return nil, nil + return nil, CodeWithPayloadError{ + StatusCode: http.StatusUnsupportedMediaType, + Reason: "Prometheus is not enabled since its retention time is not positive", + ContentType: "text/plain", + } } handlerOptions := promhttp.HandlerOpts{ ErrorLog: s.agent.logger.StandardLogger(&hclog.StandardLoggerOptions{ @@ -423,11 +425,7 @@ func (s *HTTPHandlers) AgentService(resp http.ResponseWriter, req *http.Request) svcState := s.agent.State.ServiceState(sid) if svcState == nil { - resp.WriteHeader(http.StatusNotFound) - fmt.Fprintf(resp, - "Unknown service ID %q. Ensure that the service ID is passed, not the service name.", - sid.String()) - return "", nil, nil + return "", nil, NotFoundError{Reason: fmt.Sprintf("unknown service ID: %s", sid.String())} } svc := svcState.Service @@ -557,9 +555,7 @@ func (s *HTTPHandlers) AgentMembers(resp http.ResponseWriter, req *http.Request) // key are ok, otherwise the argument doesn't apply to // the WAN. default: - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, "Cannot provide a segment with wan=true") - return nil, nil + return nil, BadRequestError{Reason: "Cannot provide a segment with wan=true"} } } @@ -735,16 +731,16 @@ func (s *HTTPHandlers) AgentRegisterCheck(resp http.ResponseWriter, req *http.Re } if err := decodeBody(req.Body, &args); err != nil { - return nil, BadRequestError{fmt.Sprintf("Request decode failed: %v", err)} + return nil, BadRequestError{Reason: fmt.Sprintf("Request decode failed: %v", err)} } // Verify the check has a name. if args.Name == "" { - return nil, BadRequestError{"Missing check name"} + return nil, BadRequestError{Reason: "Missing check name"} } if args.Status != "" && !structs.ValidStatus(args.Status) { - return nil, BadRequestError{"Bad check status"} + return nil, BadRequestError{Reason: "Bad check status"} } authz, err := s.agent.delegate.ResolveTokenAndDefaultMeta(token, &args.EnterpriseMeta, nil) @@ -763,15 +759,15 @@ func (s *HTTPHandlers) AgentRegisterCheck(resp http.ResponseWriter, req *http.Re chkType := args.CheckType() err = chkType.Validate() if err != nil { - return nil, BadRequestError{fmt.Sprintf("Invalid check: %v", err)} + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid check: %v", err)} } // Store the type of check based on the definition health.Type = chkType.Type() if health.ServiceID != "" { - cid := health.CompoundServiceID() // fixup the service name so that vetCheckRegister requires the right ACLs + cid := health.CompoundServiceID() service := s.agent.State.Service(cid) if service != nil { health.ServiceName = service.Service @@ -881,9 +877,7 @@ type checkUpdate struct { func (s *HTTPHandlers) AgentCheckUpdate(resp http.ResponseWriter, req *http.Request) (interface{}, error) { var update checkUpdate if err := decodeBody(req.Body, &update); err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprintf(resp, "Request decode failed: %v", err) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Request decode failed: %v", err)} } switch update.Status { @@ -891,9 +885,7 @@ func (s *HTTPHandlers) AgentCheckUpdate(resp http.ResponseWriter, req *http.Requ case api.HealthWarning: case api.HealthCritical: default: - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprintf(resp, "Invalid check status: '%s'", update.Status) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid check status: '%s'", update.Status)} } ID, err := getPathSuffixUnescaped(req.URL.Path, "/v1/agent/check/update/") @@ -1121,24 +1113,18 @@ func (s *HTTPHandlers) AgentRegisterService(resp http.ResponseWriter, req *http. } if err := decodeBody(req.Body, &args); err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprintf(resp, "Request decode failed: %v", err) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Request decode failed: %v", err)} } // Verify the service has a name. if args.Name == "" { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, "Missing service name") - return nil, nil + return nil, BadRequestError{Reason: "Missing service name"} } // Check the service address here and in the catalog RPC endpoint // since service registration isn't synchronous. if ipaddr.IsAny(args.Address) { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprintf(resp, "Invalid service address") - return nil, nil + return nil, BadRequestError{Reason: "Invalid service address"} } var token string @@ -1157,37 +1143,27 @@ func (s *HTTPHandlers) AgentRegisterService(resp http.ResponseWriter, req *http. ns := args.NodeService() if ns.Weights != nil { if err := structs.ValidateWeights(ns.Weights); err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, fmt.Errorf("Invalid Weights: %v", err)) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid Weights: %v", err)} } } if err := structs.ValidateServiceMetadata(ns.Kind, ns.Meta, false); err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, fmt.Errorf("Invalid Service Meta: %v", err)) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid Service Meta: %v", err)} } // Run validation. This is the same validation that would happen on // the catalog endpoint so it helps ensure the sync will work properly. if err := ns.Validate(); err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, err.Error()) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Validation failed: %v", err.Error())} } // Verify the check type. chkTypes, err := args.CheckTypes() if err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, fmt.Errorf("Invalid check: %v", err)) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid check: %v", err)} } for _, check := range chkTypes { if check.Status != "" && !structs.ValidStatus(check.Status) { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, "Status for checks must 'passing', 'warning', 'critical'") - return nil, nil + return nil, BadRequestError{Reason: "Status for checks must 'passing', 'warning', 'critical'"} } } @@ -1221,9 +1197,7 @@ func (s *HTTPHandlers) AgentRegisterService(resp http.ResponseWriter, req *http. } if sidecar != nil { if err := sidecar.Validate(); err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, err.Error()) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Failed Validation: %v", err.Error())} } // Make sure we are allowed to register the sidecar using the token // specified (might be specific to sidecar or the same one as the overall @@ -1324,25 +1298,19 @@ func (s *HTTPHandlers) AgentServiceMaintenance(resp http.ResponseWriter, req *ht sid := structs.NewServiceID(serviceID, nil) if sid.ID == "" { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, "Missing service ID") - return nil, nil + return nil, BadRequestError{Reason: "Missing service ID"} } // Ensure we have some action params := req.URL.Query() if _, ok := params["enable"]; !ok { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, "Missing value for enable") - return nil, nil + return nil, BadRequestError{Reason: "Missing value for enable"} } raw := params.Get("enable") enable, err := strconv.ParseBool(raw) if err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprintf(resp, "Invalid value for enable: %q", raw) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid value for enable: %q", raw)} } // Get the provided token, if any, and vet against any ACL policies. @@ -1371,15 +1339,11 @@ func (s *HTTPHandlers) AgentServiceMaintenance(resp http.ResponseWriter, req *ht if enable { reason := params.Get("reason") if err = s.agent.EnableServiceMaintenance(sid, reason, token); err != nil { - resp.WriteHeader(http.StatusNotFound) - fmt.Fprint(resp, err.Error()) - return nil, nil + return nil, NotFoundError{Reason: err.Error()} } } else { if err = s.agent.DisableServiceMaintenance(sid); err != nil { - resp.WriteHeader(http.StatusNotFound) - fmt.Fprint(resp, err.Error()) - return nil, nil + return nil, NotFoundError{Reason: err.Error()} } } s.syncChanges() @@ -1390,17 +1354,13 @@ func (s *HTTPHandlers) AgentNodeMaintenance(resp http.ResponseWriter, req *http. // Ensure we have some action params := req.URL.Query() if _, ok := params["enable"]; !ok { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprint(resp, "Missing value for enable") - return nil, nil + return nil, BadRequestError{Reason: "Missing value for enable"} } raw := params.Get("enable") enable, err := strconv.ParseBool(raw) if err != nil { - resp.WriteHeader(http.StatusBadRequest) - fmt.Fprintf(resp, "Invalid value for enable: %q", raw) - return nil, nil + return nil, BadRequestError{Reason: fmt.Sprintf("Invalid value for enable: %q", raw)} } // Get the provided token, if any, and vet against any ACL policies. @@ -1507,8 +1467,8 @@ func (s *HTTPHandlers) AgentMonitor(resp http.ResponseWriter, req *http.Request) } func (s *HTTPHandlers) AgentToken(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - if s.checkACLDisabled(resp, req) { - return nil, nil + if s.checkACLDisabled() { + return nil, UnauthorizedError{Reason: "ACL support disabled"} } // Fetch the ACL token, if any, and enforce agent policy. diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index a240aebed..7f4273269 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -660,9 +660,9 @@ func TestAgent_Service(t *testing.T) { wantResp: &updatedResponse, }, { - name: "err: non-existent proxy", - url: "/v1/agent/service/nope", - wantCode: 404, + name: "err: non-existent proxy", + url: "/v1/agent/service/nope", + wantErr: "unknown service ID: nope", }, { name: "err: bad ACL for service", @@ -3784,9 +3784,6 @@ func testAgent_RegisterService_InvalidAddress(t *testing.T, extraHCL string) { if got, want := resp.Code, 400; got != want { t.Fatalf("got code %d want %d", got, want) } - if got, want := resp.Body.String(), "Invalid service address"; got != want { - t.Fatalf("got body %q want %q", got, want) - } }) } } diff --git a/agent/http.go b/agent/http.go index ddc0dffc8..5fc84ea11 100644 --- a/agent/http.go +++ b/agent/http.go @@ -69,6 +69,15 @@ func (e NotFoundError) Error() string { return e.Reason } +// UnauthorizedError should be returned by a handler when the request lacks valid authorization. +type UnauthorizedError struct { + Reason string +} + +func (e UnauthorizedError) Error() string { + return e.Reason +} + // CodeWithPayloadError allow returning non HTTP 200 // Error codes while not returning PlainText payload type CodeWithPayloadError struct { @@ -241,7 +250,8 @@ func (s *HTTPHandlers) handler(enableDebug bool) http.Handler { // If enableDebug is not set, and ACLs are disabled, write // an unauthorized response - if !enableDebug && s.checkACLDisabled(resp, req) { + if !enableDebug && s.checkACLDisabled() { + resp.WriteHeader(http.StatusUnauthorized) return } @@ -423,6 +433,11 @@ func (s *HTTPHandlers) wrap(handler endpoint, methods []string) http.HandlerFunc return ok } + isUnauthorized := func(err error) bool { + _, ok := err.(UnauthorizedError) + return ok + } + isTooManyRequests := func(err error) bool { // Sadness net/rpc can't do nice typed errors so this is all we got return err.Error() == consul.ErrRateLimited.Error() @@ -467,6 +482,9 @@ func (s *HTTPHandlers) wrap(handler endpoint, methods []string) http.HandlerFunc case isNotFound(err): resp.WriteHeader(http.StatusNotFound) fmt.Fprint(resp, err.Error()) + case isUnauthorized(err): + resp.WriteHeader(http.StatusUnauthorized) + fmt.Fprint(resp, err.Error()) case isTooManyRequests(err): resp.WriteHeader(http.StatusTooManyRequests) fmt.Fprint(resp, err.Error()) From 5f6bf369af51557540bfd2d46367cc90675969ce Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Wed, 5 Jan 2022 12:17:47 -0500 Subject: [PATCH 107/404] reset `coalesceTimer` to nil as soon as the event is consumed (#11924) * reset `coalesceTimer` to nil as soon as the event is consumed * add change log * refactor to add relevant test. * fix linter * Apply suggestions from code review Co-authored-by: Freddy * remove non needed check Co-authored-by: Freddy --- .changelog/11924.txt | 3 + agent/proxycfg/manager.go | 22 ++--- agent/proxycfg/manager_test.go | 141 ++++++++++++++++++++++++++++++++- agent/proxycfg/state.go | 13 ++- 4 files changed, 160 insertions(+), 19 deletions(-) create mode 100644 .changelog/11924.txt diff --git a/.changelog/11924.txt b/.changelog/11924.txt new file mode 100644 index 000000000..d76445017 --- /dev/null +++ b/.changelog/11924.txt @@ -0,0 +1,3 @@ +```release-note:bug +xds: fix a deadlock when the snapshot channel already have a snapshot to be consumed. +``` diff --git a/agent/proxycfg/manager.go b/agent/proxycfg/manager.go index 083291c13..d5d102b1e 100644 --- a/agent/proxycfg/manager.go +++ b/agent/proxycfg/manager.go @@ -127,7 +127,7 @@ func (m *Manager) Run() error { defer m.State.StopNotify(stateCh) for { - m.syncState() + m.syncState(m.notifyBroadcast) // Wait for a state change _, ok := <-stateCh @@ -140,7 +140,7 @@ func (m *Manager) Run() error { // syncState is called whenever the local state notifies a change. It holds the // lock while finding any new or updated proxies and removing deleted ones. -func (m *Manager) syncState() { +func (m *Manager) syncState(notifyBroadcast func(ch <-chan ConfigSnapshot)) { m.mu.Lock() defer m.mu.Unlock() @@ -160,7 +160,7 @@ func (m *Manager) syncState() { // know that so we'd need to set it here if not during registration of the // proxy service. Sidecar Service in the interim can do that, but we should // validate more generally that that is always true. - err := m.ensureProxyServiceLocked(svc) + err := m.ensureProxyServiceLocked(svc, notifyBroadcast) if err != nil { m.Logger.Error("failed to watch proxy service", "service", sid.String(), @@ -179,7 +179,7 @@ func (m *Manager) syncState() { } // ensureProxyServiceLocked adds or changes the proxy to our state. -func (m *Manager) ensureProxyServiceLocked(ns *structs.NodeService) error { +func (m *Manager) ensureProxyServiceLocked(ns *structs.NodeService, notifyBroadcast func(ch <-chan ConfigSnapshot)) error { sid := ns.CompoundServiceID() // Retrieve the token used to register the service, or fallback to the @@ -227,16 +227,18 @@ func (m *Manager) ensureProxyServiceLocked(ns *structs.NodeService) error { m.proxies[sid] = state // Start a goroutine that will wait for changes and broadcast them to watchers. - go func(ch <-chan ConfigSnapshot) { - // Run until ch is closed - for snap := range ch { - m.notify(&snap) - } - }(ch) + go notifyBroadcast(ch) return nil } +func (m *Manager) notifyBroadcast(ch <-chan ConfigSnapshot) { + // Run until ch is closed + for snap := range ch { + m.notify(&snap) + } +} + // removeProxyService is called when a service deregisters and frees all // resources for that service. func (m *Manager) removeProxyServiceLocked(proxyID structs.ServiceID) { diff --git a/agent/proxycfg/manager_test.go b/agent/proxycfg/manager_test.go index 9e659b5f0..cdb271ee3 100644 --- a/agent/proxycfg/manager_test.go +++ b/agent/proxycfg/manager_test.go @@ -598,7 +598,146 @@ func TestManager_SyncState_DefaultToken(t *testing.T) { err = state.AddServiceWithChecks(srv, nil, "") require.NoError(t, err) - m.syncState() + m.syncState(m.notifyBroadcast) require.Equal(t, "default-token", m.proxies[srv.CompoundServiceID()].serviceInstance.token) } + +func TestManager_SyncState_No_Notify(t *testing.T) { + types := NewTestCacheTypes(t) + c := TestCacheWithTypes(t, types) + logger := testutil.Logger(t) + tokens := new(token.Store) + tokens.UpdateUserToken("default-token", token.TokenSourceConfig) + + state := local.NewState(local.Config{}, logger, tokens) + state.TriggerSyncChanges = func() {} + + m, err := NewManager(ManagerConfig{ + Cache: c, + Health: &health.Client{Cache: c, CacheName: cachetype.HealthServicesName}, + State: state, + Tokens: tokens, + Source: &structs.QuerySource{Datacenter: "dc1"}, + Logger: logger, + }) + require.NoError(t, err) + defer m.Close() + + srv := &structs.NodeService{ + Kind: structs.ServiceKindConnectProxy, + ID: "web-sidecar-proxy", + Service: "web-sidecar-proxy", + Port: 9999, + Meta: map[string]string{}, + Proxy: structs.ConnectProxyConfig{ + DestinationServiceID: "web", + DestinationServiceName: "web", + LocalServiceAddress: "127.0.0.1", + LocalServicePort: 8080, + Config: map[string]interface{}{ + "foo": "bar", + }, + }, + } + + err = state.AddServiceWithChecks(srv, nil, "") + require.NoError(t, err) + + readEvent := make(chan bool, 1) + snapSent := make(chan bool, 1) + + m.syncState(func(ch <-chan ConfigSnapshot) { + for { + <-readEvent + snap := <-ch + m.notify(&snap) + snapSent <- true + } + }) + + // Get the relevant notification Channel, should only have 1 + notifyCH := m.proxies[srv.CompoundServiceID()].ch + + // update the leaf certs + roots, issuedCert := TestCerts(t) + notifyCH <- cache.UpdateEvent{ + CorrelationID: leafWatchID, + Result: issuedCert, + Err: nil, + } + // at this point the snapshot should not be valid and not be sent + after := time.After(200 * time.Millisecond) + select { + case <-snapSent: + t.Fatal("snap should not be valid") + case <-after: + + } + + // update the root certs + notifyCH <- cache.UpdateEvent{ + CorrelationID: rootsWatchID, + Result: roots, + Err: nil, + } + + // at this point the snapshot should not be valid and not be sent + after = time.After(200 * time.Millisecond) + select { + case <-snapSent: + t.Fatal("snap should not be valid") + case <-after: + + } + + // prepare to read a snapshot update as the next update should make the snapshot valid + readEvent <- true + + // update the intentions + notifyCH <- cache.UpdateEvent{ + CorrelationID: intentionsWatchID, + Result: &structs.IndexedIntentionMatches{}, + Err: nil, + } + + // at this point we have a valid snapshot + after = time.After(500 * time.Millisecond) + select { + case <-snapSent: + case <-after: + t.Fatal("snap should be valid") + + } + + // send two snapshots back to back without reading them to overflow the snapshot channel and get to the default use case + for i := 0; i < 2; i++ { + time.Sleep(250 * time.Millisecond) + notifyCH <- cache.UpdateEvent{ + CorrelationID: leafWatchID, + Result: issuedCert, + Err: nil, + } + } + + // make sure that we are not receiving any snapshot and wait for the snapshots to be processed + after = time.After(500 * time.Millisecond) + select { + case <-snapSent: + t.Fatal("snap should not be sent") + case <-after: + } + + // now make sure that both snapshots got propagated + for i := 0; i < 2; i++ { + + readEvent <- true + after = time.After(500 * time.Millisecond) + select { + case <-snapSent: + case <-after: + t.Fatal("snap should be valid") + + } + } +} diff --git a/agent/proxycfg/state.go b/agent/proxycfg/state.go index 0b535d0e4..586bc3938 100644 --- a/agent/proxycfg/state.go +++ b/agent/proxycfg/state.go @@ -294,6 +294,8 @@ func (s *state) run(ctx context.Context, snap *ConfigSnapshot) { } case <-sendCh: + // Allow the next change to trigger a send + coalesceTimer = nil // Make a deep copy of snap so we don't mutate any of the embedded structs // etc on future updates. snapCopy, err := snap.Clone() @@ -307,9 +309,6 @@ func (s *state) run(ctx context.Context, snap *ConfigSnapshot) { case s.snapCh <- *snapCopy: s.logger.Trace("Delivered new snapshot to proxy config watchers") - // Allow the next change to trigger a send - coalesceTimer = nil - // Skip rest of loop - there is nothing to send since nothing changed on // this iteration continue @@ -320,11 +319,9 @@ func (s *state) run(ctx context.Context, snap *ConfigSnapshot) { s.logger.Trace("Failed to deliver new snapshot to proxy config watchers") // Reset the timer to retry later. This is to ensure we attempt to redeliver the updated snapshot shortly. - if coalesceTimer == nil { - coalesceTimer = time.AfterFunc(coalesceTimeout, func() { - sendCh <- struct{}{} - }) - } + coalesceTimer = time.AfterFunc(coalesceTimeout, func() { + sendCh <- struct{}{} + }) // Do not reset coalesceTimer since we just queued a timer-based refresh continue From 407b0b89634e13447364b66dfb8d84ed35d82cf2 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Wed, 5 Jan 2022 12:24:44 -0500 Subject: [PATCH 108/404] Fix test for ENT (#11941) --- agent/local/state_test.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/agent/local/state_test.go b/agent/local/state_test.go index 62ebd4040..f2c51a281 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -2149,12 +2149,14 @@ func TestState_RemoveServiceErrorMessages(t *testing.T) { require.NoError(err) // Attempt to remove service that doesn't exist - err = state.RemoveService(structs.NewServiceID("db", nil)) - require.Contains(err.Error(), `Unknown service ID "db"`) + sid := structs.NewServiceID("db", nil) + err = state.RemoveService(sid) + require.Contains(err.Error(), fmt.Sprintf(`Unknown service ID %q`, sid)) // Attempt to remove service by name (which isn't valid) - err = state.RemoveService(structs.NewServiceID("web-name", nil)) - require.Contains(err.Error(), `Unknown service ID "web-name"`) + sid2 := structs.NewServiceID("web-name", nil) + err = state.RemoveService(sid2) + require.Contains(err.Error(), fmt.Sprintf(`Unknown service ID %q`, sid2)) // Attempt to remove service by id (valid) err = state.RemoveService(structs.NewServiceID("web-id", nil)) From ea2ae4b6375cc088cf05c6fda0d6f03d71b6b689 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 5 Jan 2022 12:01:10 -0800 Subject: [PATCH 109/404] tweaks to the language used in the requirements section --- .../config-entries/exported-services.mdx | 78 ++++++++++--------- 1 file changed, 40 insertions(+), 38 deletions(-) diff --git a/website/content/docs/connect/config-entries/exported-services.mdx b/website/content/docs/connect/config-entries/exported-services.mdx index 3965f657a..def7a2040 100644 --- a/website/content/docs/connect/config-entries/exported-services.mdx +++ b/website/content/docs/connect/config-entries/exported-services.mdx @@ -10,29 +10,28 @@ description: >- -This topic describes the `exported-services` configuration entry type. The `exported-services` configuration entry enables Consul to export service instances to other admin partitions from a single file. This enables your services to be networked across admin partitions. See [Admin Partitions](/docs/enterprise/admin-partitions) for additional information. +This topic describes the `exported-services` configuration entry type. The `exported-services` configuration entry enables Consul to export service instances to other admin partitions from a single file. This enables your services to be networked across admin partitions. See [Admin Partitions](/docs/enterprise/admin-partitions) for additional information. -> **v1.11.0+:** This config entry is supported in Consul Enterprise versions 1.11.0+. ## Introduction -You can configure Consul to export services contained in an admin partition to one or more additional partitions by declaring the `exported-services` configuration entry in the `kind` field. This enables you to route traffic between services in different clusters that share a single set of Consul servers. +You can configure Consul to export services contained in an admin partition to one or more additional partitions by declaring the `exported-services` configuration entry in the `kind` field. This enables you to route traffic between services in different clusters that share a single set of Consul servers. You can configure the settings defined in the `exported-services` configuration entry to apply to all namespaces and federated datacenters. ## Requirements -* A Consul Enterprise binary -* A partition that corresponds to the configuration entry. As in, the exported services config entry for partition "frontend" requires that the "frontend" partition exists - +- A Consul Enterprise binary +- A corresponding partition that the configuration entry can export to. For example, the `exported-services` configuration entry for a partition named `frontend` requires an existing `frontend` partition. ## Usage 1. Verify that your datacenter meets the conditions specified in the [Requirements](#requirements). 1. Specify the `exported-services` configuration in the agent configuration file (see [`config_entries`](/docs/agent/options#config_entries)) as described in [Configuration](#configuration). 1. Apply the configuration using one of the following methods: - * Kubernetes CRD: Refer to the [Custom Resource Definitions](/docs/k8s/crds) documentation for details. - * Issue the `consul config write` command: Refer to the [Consul Config Write](/commands/config/write) documentation for details. + - Kubernetes CRD: Refer to the [Custom Resource Definitions](/docs/k8s/crds) documentation for details. + - Issue the `consul config write` command: Refer to the [Consul Config Write](/commands/config/write) documentation for details. ## Configuration @@ -48,15 +47,16 @@ Name = "" Services = [ { Name = "" - Namespace = "" + Namespace = "" Consumers = [ { Partition = "" - }, + }, ] } ] ``` + @@ -65,13 +65,14 @@ apiVersion: consul.hashicorp.com/v1alpha1 Kind: ExportedServices metadata: name: -spec: +spec: services: - - name: - namespace: - consumers: - - partition: + - name: + namespace: + consumers: + - partition: ``` + @@ -91,6 +92,7 @@ spec: } ] ``` + @@ -98,31 +100,31 @@ spec: The following table describes the parameters associated with the `exported-services` configuration entry. -| Parameter | Description | Required | Default | -| --- | --- | --- | --- | -| `Kind` | String value that enables the configuration entry. The value should always be `exported-services` (HCL and JSON) or `ExportedServices` (YAML) | Required | None | -| `Partition` | String value that specifies the name of the partition that contains the services you want to export. | Required | None | -| `Name` | String value that specifies the name of the partition that contains the services you want to export. | Required | None | -| `Services` | List of objects that specify which services to export. See [`Services`](#services) for details. | Required | None| -| `Meta` | Object that defines a map of the max 64 key/value pairs. | Optional | None | +| Parameter | Description | Required | Default | +| ----------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------- | +| `Kind` | String value that enables the configuration entry. The value should always be `exported-services` (HCL and JSON) or `ExportedServices` (YAML) | Required | None | +| `Partition` | String value that specifies the name of the partition that contains the services you want to export. | Required | None | +| `Name` | String value that specifies the name of the partition that contains the services you want to export. | Required | None | +| `Services` | List of objects that specify which services to export. See [`Services`](#services) for details. | Required | None | +| `Meta` | Object that defines a map of the max 64 key/value pairs. | Optional | None | ### Services The `Services` parameter contains one or more lists of parameters that specify which services to export, which namespaces the services reside, and the destination partition for the exported services. Each list in the `Services` block must contain the following parameters: -* `Name`: Specifies the name of the service to export. You can use a asterisk wildcard (`*`) to include all services in the namespace. -* `Namespace`: Specifies the namespace containing the services to export. You can use a asterisk wildcard (`*`) to include all namespaces in the partition. -* `Consumers`: Specifies one ore more objects that identify a destination partition for the exported services. +- `Name`: Specifies the name of the service to export. You can use a asterisk wildcard (`*`) to include all services in the namespace. +- `Namespace`: Specifies the namespace containing the services to export. You can use a asterisk wildcard (`*`) to include all namespaces in the partition. +- `Consumers`: Specifies one ore more objects that identify a destination partition for the exported services. ## Example -The following example configures the agent to export the `billing` service from the `default` namespace of the `finance` admin partition to the `frontend` and `backend` partitions. Additionally, all services in all namespaces within the `finance` partition will be exported to the `monitoring` partition. +The following example configures the agent to export the `billing` service from the `default` namespace of the `finance` admin partition to the `frontend` and `backend` partitions. Additionally, all services in all namespaces within the `finance` partition will be exported to the `monitoring` partition. ```hcl -Kind = "exported-services" +Kind = "exported-services" Partition = "finance" Name = "finance" @@ -157,19 +159,19 @@ Services = [ ```yaml apiVersion: consul.hashicorp.com/v1alpha1 Kind: ExportedServices -metadata: +metadata: name: finance spec: services: - - name: mesh-gateway - namespace: default - consumers: - - partition: default - - name: billing - namespace: default - consumers: - - partition: frontend - - partition: backend + - name: mesh-gateway + namespace: default + consumers: + - partition: default + - name: billing + namespace: default + consumers: + - partition: frontend + - partition: backend ``` @@ -215,8 +217,8 @@ When an exported service has been imported to another partition, you can use the $ curl 'localhost:8500/v1/health/connect/billing?partition=finance' ``` -An ACL token with `service:write` permissions is required for the partition from which the query is made. If the call in the previous example is made from a service named `web` in a partition named `frontend`, then the request will require a token with `write` permissions to `web` in the `frontend` partition. +An ACL token with `service:write` permissions is required for the partition from which the query is made. If the call in the previous example is made from a service named `web` in a partition named `frontend`, then the request will require a token with `write` permissions to `web` in the `frontend` partition. -Exports are available to all services in the consumer partition. In the previous example, any service with `write` permissions for the `frontend` partition will be able to read exports. +Exports are available to all services in the consumer partition. In the previous example, any service with `write` permissions for the `frontend` partition will be able to read exports. See [Health HTTP Endpoint](/api-docs/health) for additional information. From f7f5aca0588fb45b5ff37630d2ef71bdaa97de06 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Wed, 5 Jan 2022 15:18:08 -0500 Subject: [PATCH 110/404] Fix test for ENT (#11946) --- agent/agent_endpoint_test.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 7f4273269..5d7bed8ba 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -662,7 +662,7 @@ func TestAgent_Service(t *testing.T) { { name: "err: non-existent proxy", url: "/v1/agent/service/nope", - wantErr: "unknown service ID: nope", + wantErr: fmt.Sprintf("unknown service ID: %s", structs.NewServiceID("nope", nil)), }, { name: "err: bad ACL for service", @@ -4748,7 +4748,8 @@ func TestAgent_ServiceMaintenance_BadRequest(t *testing.T) { resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) require.Equal(t, 404, resp.Code) - require.Contains(t, resp.Body.String(), `Unknown service ID "_nope_"`) + sid := structs.NewServiceID("_nope_", nil) + require.Contains(t, resp.Body.String(), fmt.Sprintf(`Unknown service ID %q`, sid)) }) } From affe97e22d46263352fcf046560f6b884c1d4549 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 23 Dec 2021 16:30:36 -0500 Subject: [PATCH 111/404] config: correctly capture all errors. Some calls to multierror.Append were not using the existing b.err, which meant we were losing all previous errors. --- agent/config/builder.go | 10 +++++----- agent/config/builder_test.go | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 5 deletions(-) diff --git a/agent/config/builder.go b/agent/config/builder.go index 7f3ab5e4e..987a04fbb 100644 --- a/agent/config/builder.go +++ b/agent/config/builder.go @@ -1631,7 +1631,7 @@ func (b *builder) serviceVal(v *ServiceDefinition) *structs.ServiceDefinition { meta := make(map[string]string) if err := structs.ValidateServiceMetadata(kind, v.Meta, false); err != nil { - b.err = multierror.Append(fmt.Errorf("invalid meta for service %s: %v", stringVal(v.Name), err)) + b.err = multierror.Append(b.err, fmt.Errorf("invalid meta for service %s: %v", stringVal(v.Name), err)) } else { meta = v.Meta } @@ -1646,13 +1646,13 @@ func (b *builder) serviceVal(v *ServiceDefinition) *structs.ServiceDefinition { } if err := structs.ValidateWeights(serviceWeights); err != nil { - b.err = multierror.Append(fmt.Errorf("Invalid weight definition for service %s: %s", stringVal(v.Name), err)) + b.err = multierror.Append(b.err, fmt.Errorf("Invalid weight definition for service %s: %s", stringVal(v.Name), err)) } if (v.Port != nil || v.Address != nil) && (v.SocketPath != nil) { - b.err = multierror.Append( + b.err = multierror.Append(b.err, fmt.Errorf("service %s cannot have both socket path %s and address/port", - stringVal(v.Name), stringVal(v.SocketPath)), b.err) + stringVal(v.Name), stringVal(v.SocketPath))) } return &structs.ServiceDefinition{ @@ -1890,7 +1890,7 @@ func (b *builder) durationValWithDefault(name string, v *string, defaultVal time } d, err := time.ParseDuration(*v) if err != nil { - b.err = multierror.Append(fmt.Errorf("%s: invalid duration: %q: %s", name, *v, err)) + b.err = multierror.Append(b.err, fmt.Errorf("%s: invalid duration: %q: %s", name, *v, err)) } return d } diff --git a/agent/config/builder_test.go b/agent/config/builder_test.go index 5901431a0..80ad7b368 100644 --- a/agent/config/builder_test.go +++ b/agent/config/builder_test.go @@ -291,3 +291,39 @@ func TestLoad_EmptyClientAddr(t *testing.T) { }) } } + +func TestBuilder_DurationVal_InvalidDuration(t *testing.T) { + b := builder{} + badDuration1 := "not-a-duration" + badDuration2 := "also-not" + b.durationVal("field1", &badDuration1) + b.durationVal("field1", &badDuration2) + + require.Error(t, b.err) + require.Contains(t, b.err.Error(), "2 errors") + require.Contains(t, b.err.Error(), badDuration1) + require.Contains(t, b.err.Error(), badDuration2) +} + +func TestBuilder_ServiceVal_MultiError(t *testing.T) { + b := builder{} + b.serviceVal(&ServiceDefinition{ + Meta: map[string]string{"": "empty-key"}, + Port: intPtr(12345), + SocketPath: strPtr("/var/run/socket.sock"), + Checks: []CheckDefinition{ + {Interval: strPtr("bad-interval")}, + }, + Weights: &ServiceWeights{Passing: intPtr(-1)}, + }) + require.Error(t, b.err) + require.Contains(t, b.err.Error(), "4 errors") + require.Contains(t, b.err.Error(), "bad-interval") + require.Contains(t, b.err.Error(), "Key cannot be blank") + require.Contains(t, b.err.Error(), "Invalid weight") + require.Contains(t, b.err.Error(), "cannot have both socket path") +} + +func intPtr(v int) *int { + return &v +} From fd084c15c3918ce279708db44e31f2730558e648 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 23 Dec 2021 16:34:54 -0500 Subject: [PATCH 112/404] cli: use file mode 0600 when saving a snapshot So that other users on the machine can not access the snapshot data. --- command/snapshot/save/snapshot_save.go | 7 ++++--- command/snapshot/save/snapshot_save_test.go | 4 ++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/command/snapshot/save/snapshot_save.go b/command/snapshot/save/snapshot_save.go index 699cf5f1d..e43dcb612 100644 --- a/command/snapshot/save/snapshot_save.go +++ b/command/snapshot/save/snapshot_save.go @@ -5,11 +5,12 @@ import ( "fmt" "os" + "github.com/mitchellh/cli" + "github.com/rboyer/safeio" + "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/command/flags" "github.com/hashicorp/consul/snapshot" - "github.com/mitchellh/cli" - "github.com/rboyer/safeio" ) func New(ui cli.Ui) *cmd { @@ -71,7 +72,7 @@ func (c *cmd) Run(args []string) int { // Save the file first. unverifiedFile := file + ".unverified" - if _, err := safeio.WriteToFile(snap, unverifiedFile, 0666); err != nil { + if _, err := safeio.WriteToFile(snap, unverifiedFile, 0600); err != nil { c.UI.Error(fmt.Sprintf("Error writing unverified snapshot file: %s", err)) return 1 } diff --git a/command/snapshot/save/snapshot_save_test.go b/command/snapshot/save/snapshot_save_test.go index 79df0dfc6..10e8abcfe 100644 --- a/command/snapshot/save/snapshot_save_test.go +++ b/command/snapshot/save/snapshot_save_test.go @@ -94,6 +94,10 @@ func TestSnapshotSaveCommand(t *testing.T) { t.Fatalf("bad: %d. %#v", code, ui.ErrorWriter.String()) } + fi, err := os.Stat(file) + require.NoError(t, err) + require.Equal(t, fi.Mode(), os.FileMode(0600)) + f, err := os.Open(file) if err != nil { t.Fatalf("err: %v", err) From 4983c2770370150189e1fec81ab7c9da3454d126 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 23 Dec 2021 16:56:30 -0500 Subject: [PATCH 113/404] snapshot: return the error from replyFn The only function passed to SnapshotRPC today always returns a nil error, so there's no way to exercise this bug in practice. This change is being made for correctness so that it doesn't become a problem in the future, if we ever pass a different function to SnapshotRPC. --- agent/consul/client.go | 2 +- agent/consul/server.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/agent/consul/client.go b/agent/consul/client.go index ac64d704a..999f98663 100644 --- a/agent/consul/client.go +++ b/agent/consul/client.go @@ -347,7 +347,7 @@ func (c *Client) SnapshotRPC(args *structs.SnapshotRequest, in io.Reader, out io // Let the caller peek at the reply. if replyFn != nil { if err := replyFn(&reply); err != nil { - return nil + return err } } diff --git a/agent/consul/server.go b/agent/consul/server.go index 91082a7d6..e076af721 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -1347,7 +1347,7 @@ func (s *Server) SnapshotRPC(args *structs.SnapshotRequest, in io.Reader, out io // Let the caller peek at the reply. if replyFn != nil { if err := replyFn(&reply); err != nil { - return nil + return err } } From f91fcb31d280864e5f85c6eb18fa8d69ef02ce6a Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 5 Jan 2022 17:26:59 -0500 Subject: [PATCH 114/404] changelog --- .changelog/11918.txt | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changelog/11918.txt diff --git a/.changelog/11918.txt b/.changelog/11918.txt new file mode 100644 index 000000000..276a77eef --- /dev/null +++ b/.changelog/11918.txt @@ -0,0 +1,6 @@ +```release-note:bug +config: include all config errors in the error message, previously some could be hidden. +``` +```release-note:bug +snapshot: the `snapshot save` command now saves the snapshot with read permission for only the current user. +``` From 39def0fefeb69ef6c4ca07acefef9252f9bc618f Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 5 Jan 2022 18:45:00 -0800 Subject: [PATCH 115/404] initial commit/draft of the API gateway docs --- .../content/docs/k8s/connect/api-gateway.mdx | 171 ++++++++++++++++++ website/data/docs-nav-data.json | 4 + 2 files changed, 175 insertions(+) create mode 100644 website/content/docs/k8s/connect/api-gateway.mdx diff --git a/website/content/docs/k8s/connect/api-gateway.mdx b/website/content/docs/k8s/connect/api-gateway.mdx new file mode 100644 index 000000000..732bed868 --- /dev/null +++ b/website/content/docs/k8s/connect/api-gateway.mdx @@ -0,0 +1,171 @@ +--- +layout: docs +page_title: API Gateway +description: Using Consul API gateway functionality +--- + +# Consul API Gateway + +This topic describes how to use the Consul API Gateway module, which enables applications and services running in a datacenter to be accessed by network clients outside the datacenter. This type of network traffic is commonly referred to as "north-south" network traffic. + +## Introduction + +Consul API Gateway is an implementation of the Kubernetes Gateway API Specification (https://gateway-api.sigs.k8s.io/). The specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes. + +## Requirements + +Your datacenter must meet the following requirements prior to configuring the Consul API Gateway: + +- A Kubernetes cluster must be running +- Consul 1.11.0+ + +## Installation + +1. Create a values file for your Consul server agents that contains the following parameters: + + ```yaml + global: + name: consul + image: 'hashicorp/consul:1.11.0' + tls: + enabled: true + connectInject: + enabled: true + controller: + enabled: true + ``` + +1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. + +```shell-session +helm install consul hashicorp/consul --version 0.37.0 -f values.yaml +``` + +The following components will be installed: + + - Gateway controller + - CRDs required by the Kubernetes Gateway API specification + - `kustomize` manifests for completing the installation + +1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. + +```shell-session +kubectl apply -k "github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-techpreview" +kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-techpreview" +``` + +## Usage + +1. Verify that the [requirements](#requirements) have been met. +1. Verify that the Consul API Gateway software has been installed and applied (see [Installation](#installation)). +1. Configure the gateway, listener(s), and route(s) as described in [Configuration](#configuration) +1. Issue the `kubectl apply` command to implement the configurations, e.g.: + +```shell-session +kubectl apply -f gateway-configuration.yaml +``` + +### Using the Consul API Gateway Binary + +You can manually start the Consul API Gateway control plane server using the binary located in the home directory to issue the `server` command: + +```shell-session +./consul-api-gateway server +``` + +The following options are supported: + +| Option | Description | Required | Default | +| ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | --------------------------------------------------------- | ------ | +| `-ca-file` | String value that specifies the path to the CA for the Consul server. | Required | none | +| `-ca-secret` | String value that specifies the CA secret for the Consul server. | Required | none | +| `-ca-secret-namespace`                         | String value that specifies the CA secret namespace for the Consul server. | Required | none | +| `-k8-context` | String value that specifies the Kubernetes context to use when starting the Consul server. | Optional | current context | +| `-k8-namespace` | String value that specifies the Kubernetes namespace to use when starting the Consul server. | Optional | `default` | +| `-log-json` | Boolean value that enables or disables JSON format for the log output. | Required | `false` | +| `-log-level` | String value that specifies the logging level. The following values are supported:
- `trace` (highest level of detail)
- `debug`
- `info`
- `warn`
- `error` | context to use when starting the Consul server. | Required | `info` | +| `-metrics-port` | Integer value that specifies the port number for collecting metrics. | Optional | none | +| `-pprof` | Integer value that specifies the Go pprof port number for collecting metrics. | Optional | none | +| `-sds-server-host` | String value that specifies the host server for the secret discovery service (SDS). | Optional | `consul-api-gateway-controller.default.svc.cluster.local` | +| `-sds-server-host` | Integer value that specifies the port number for the secret discovery service (SDS). | Optional | `9090` | + +You can also issue the `version` command to print the Consul API Gateway version to the console: + +```shell-session +./consul-api-gateway version +consul-api-gateway 0.1.0-dev +``` + +## Configuration + +Create the following artifacts to configure the API Gateway: + +- [Gateway](#gateway): Defines the gateway properties, including listeners. +- [Listeners](#listeners): Defines listener properties, such as protocol, port, and namespace. +- [Routes](#routes): Specifies the path from the client to the listener. + +### Gateway + +The gateway object contains gateway listeners. +Add the `kind: Gateway` option to the configuration file to declare a gateway. +The following example creates a gateway called `example-gateway` that includes a listener called `https` (see Listeners for details about the `listener` configuration). + +```yaml +apiVersion: gateway.networking.k8s.io/v1alpha2 +kind: Gateway +metadata: + name: example-gateway + annotations: + 'external-dns.alpha.kubernetes.io/hostname': DNS_HOSTNAME +spec: + gatewayClassName: default-consul-gateway-class + listeners: + - protocol: HTTPS + hostname: DNS_HOSTNAME + port: 443 + name: https + allowedRoutes: + namespaces: + from: Same + tls: + certificateRefs: + - name: gateway-production-certificate +``` + +Refer to the Kubernetes Gateway API documentation for details about configuring gateways: +https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.Gateway + +### Listener + +Listeners are the logical endpoints bound to the gateway's addresses. +Add the `listener` object to the `gateway` configuration and specify the following properties to define a listener: + +- `hostname`: Hostname specifies the virtual hostname to match for protocol types. +- `port`: Specifies the network port. +- `protocol`: Specifies the network protocol expected by the listener. + +Refer to the Kubernetes Gateway API documentation for details about configuring listeners: +https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.Listener + +In the example included the [Gateway](#gateway) description, a listener named `https` that listens over `HTTPS` is configured to listen on port `443` + +### Route + +Routes are independent configuration objects that are associated with a specific listener. +Use the `kind: HTTPRoute` option to declare a route and use the `spec` option to specify the route details. +The following example creates a route named `example-route` associated with a listener defined in `example-gateway`. + +```yaml +apiVersion: gateway.networking.k8s.io/v1alpha2 +kind: HTTPRoute +metadata: + name: example-route +spec: + parentRefs: + - name: example-gateway + rules: + - backendRefs: + - kind: Service + name: echo + port: 8080 +``` diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 77a5ef1ff..f16ce4f4f 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -475,6 +475,10 @@ "title": "Transparent Proxy", "href": "/docs/connect/transparent-proxy" }, + { + "title": "Consul API Gateway", + "path": "k8s/connect/api-gateway" + }, { "title": "Ingress Gateways", "path": "k8s/connect/ingress-gateways" From f1841e36c97fa8b9e31ac67c93c82459a1573253 Mon Sep 17 00:00:00 2001 From: David Yu Date: Wed, 5 Jan 2022 21:35:28 -0800 Subject: [PATCH 116/404] docs: Fix indentation for gossipEncryption when using Vault secrets backend --- website/content/docs/k8s/installation/vault/gossip.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/content/docs/k8s/installation/vault/gossip.mdx b/website/content/docs/k8s/installation/vault/gossip.mdx index cea8d6923..4e1422d58 100644 --- a/website/content/docs/k8s/installation/vault/gossip.mdx +++ b/website/content/docs/k8s/installation/vault/gossip.mdx @@ -76,9 +76,9 @@ global: enabled: true consulServerRole: consul-server consulClientRole: consul-client - gossipEncryption: - secretName: secret/data/consul/gossip - secretKey: key + gossipEncryption: + secretName: secret/data/consul/gossip + secretKey: key ``` Note that `global.gossipEncryption.secretName` is the path of the secret in Vault. From 09688bdc3827805748d0951fef67f426e975bae4 Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Thu, 6 Jan 2022 14:09:13 -0500 Subject: [PATCH 117/404] upgrade raft to v1.3.3 (#11958) * upgrade raft to v1.3.3 * add change log * reword the changelog Co-authored-by: FFMMM Co-authored-by: FFMMM --- .changelog/11958.txt | 3 +++ go.mod | 2 +- go.sum | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 .changelog/11958.txt diff --git a/.changelog/11958.txt b/.changelog/11958.txt new file mode 100644 index 000000000..80780dcf2 --- /dev/null +++ b/.changelog/11958.txt @@ -0,0 +1,3 @@ +```release-note:bug +Upgrade to raft `1.3.3` which fixes a bug where a read replica node can trigger a raft election and become a leader. +``` diff --git a/go.mod b/go.mod index 386a5928e..26decc628 100644 --- a/go.mod +++ b/go.mod @@ -52,7 +52,7 @@ require ( github.com/hashicorp/hil v0.0.0-20200423225030-a18a1cd20038 github.com/hashicorp/memberlist v0.3.0 github.com/hashicorp/net-rpc-msgpackrpc v0.0.0-20151116020338-a14192a58a69 - github.com/hashicorp/raft v1.3.2 + github.com/hashicorp/raft v1.3.3 github.com/hashicorp/raft-autopilot v0.1.5 github.com/hashicorp/raft-boltdb v0.0.0-20211202195631-7d34b9fb3f42 // indirect github.com/hashicorp/raft-boltdb/v2 v2.2.0 diff --git a/go.sum b/go.sum index 58d66cff8..72542c796 100644 --- a/go.sum +++ b/go.sum @@ -289,8 +289,8 @@ github.com/hashicorp/net-rpc-msgpackrpc v0.0.0-20151116020338-a14192a58a69/go.mo github.com/hashicorp/raft v1.1.0/go.mod h1:4Ak7FSPnuvmb0GV6vgIAJ4vYT4bek9bb6Q+7HVbyzqM= github.com/hashicorp/raft v1.1.1/go.mod h1:vPAJM8Asw6u8LxC3eJCUZmRP/E4QmUGE1R7g7k8sG/8= github.com/hashicorp/raft v1.2.0/go.mod h1:vPAJM8Asw6u8LxC3eJCUZmRP/E4QmUGE1R7g7k8sG/8= -github.com/hashicorp/raft v1.3.2 h1:j2tqHqFnDdWCepLxzuo3b6WzS2krIweBrvEoqBbWMTo= -github.com/hashicorp/raft v1.3.2/go.mod h1:4Ak7FSPnuvmb0GV6vgIAJ4vYT4bek9bb6Q+7HVbyzqM= +github.com/hashicorp/raft v1.3.3 h1:Xr6DSHC5cIM8kzxu+IgoT/+MeNeUNeWin3ie6nlSrMg= +github.com/hashicorp/raft v1.3.3/go.mod h1:4Ak7FSPnuvmb0GV6vgIAJ4vYT4bek9bb6Q+7HVbyzqM= github.com/hashicorp/raft-autopilot v0.1.5 h1:onEfMH5uHVdXQqtas36zXUHEZxLdsJVu/nXHLcLdL1I= github.com/hashicorp/raft-autopilot v0.1.5/go.mod h1:Af4jZBwaNOI+tXfIqIdbcAnh/UyyqIMj/pOISIfhArw= github.com/hashicorp/raft-boltdb v0.0.0-20171010151810-6e5ba93211ea/go.mod h1:pNv7Wc3ycL6F5oOWn+tPGo2gWD4a5X+yp/ntwdKLjRk= From 7e0b8354a570efe6020f0e3801abf6a27897bb5c Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Thu, 6 Jan 2022 14:33:06 -0500 Subject: [PATCH 118/404] clone the service under lock to avoid a data race (#11940) * clone the service under lock to avoid a data race * add change log * create a struct and copy the pointer to mutate it to avoid a data race * fix failing test * revert added space * add comments, to clarify the data race. --- .changelog/11940.txt | 3 +++ agent/local/state.go | 23 +++++++++++++++-------- agent/local/state_test.go | 6 ++++++ 3 files changed, 24 insertions(+), 8 deletions(-) create mode 100644 .changelog/11940.txt diff --git a/.changelog/11940.txt b/.changelog/11940.txt new file mode 100644 index 000000000..22278079f --- /dev/null +++ b/.changelog/11940.txt @@ -0,0 +1,3 @@ +```release-note:bug + Mutate `NodeService` struct properly to avoid a data race. +``` diff --git a/agent/local/state.go b/agent/local/state.go index 03db0badb..d8ad529f7 100644 --- a/agent/local/state.go +++ b/agent/local/state.go @@ -1082,27 +1082,34 @@ func (l *State) updateSyncState() error { continue } + // to avoid a data race with the service struct, + // We copy the Service struct, mutate it and replace the pointer + svc := *ls.Service + // If our definition is different, we need to update it. Make a // copy so that we don't retain a pointer to any actual state // store info for in-memory RPCs. - if ls.Service.EnableTagOverride { - ls.Service.Tags = make([]string, len(rs.Tags)) - copy(ls.Service.Tags, rs.Tags) + if svc.EnableTagOverride { + svc.Tags = make([]string, len(rs.Tags)) + copy(svc.Tags, rs.Tags) } // Merge any tagged addresses with the consul- prefix (set by the server) // back into the local state. - if !reflect.DeepEqual(ls.Service.TaggedAddresses, rs.TaggedAddresses) { - if ls.Service.TaggedAddresses == nil { - ls.Service.TaggedAddresses = make(map[string]structs.ServiceAddress) + if !reflect.DeepEqual(svc.TaggedAddresses, rs.TaggedAddresses) { + if svc.TaggedAddresses == nil { + svc.TaggedAddresses = make(map[string]structs.ServiceAddress) } for k, v := range rs.TaggedAddresses { if strings.HasPrefix(k, structs.MetaKeyReservedPrefix) { - ls.Service.TaggedAddresses[k] = v + svc.TaggedAddresses[k] = v } } } - ls.InSync = ls.Service.IsSame(rs) + ls.InSync = svc.IsSame(rs) + + // replace the service pointer to the new mutated struct + ls.Service = &svc } // Check which checks need syncing diff --git a/agent/local/state_test.go b/agent/local/state_test.go index f2c51a281..679adba84 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -415,6 +415,12 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { // All the services should match for id, serv := range services.NodeServices.Services { serv.CreateIndex, serv.ModifyIndex = 0, 0 + if serv.TaggedAddresses != nil { + serviceVIP := serv.TaggedAddresses[structs.TaggedAddressVirtualIP].Address + assert.NotEmpty(serviceVIP) + vips[serviceVIP] = struct{}{} + } + serv.TaggedAddresses = nil switch id { case "mysql-proxy": assert.Equal(srv1, serv) From b13fb553acff77f009982e2b6bf6350314e81b7b Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Thu, 6 Jan 2022 12:38:37 -0800 Subject: [PATCH 119/404] api: Return 404 when deregistering a non-existent check (#11950) Update the `/agent/check/deregister/` API endpoint to return a 404 HTTP response code when an attempt is made to de-register a check ID that does not exist on the agent. This brings the behavior of /agent/check/deregister/ in line with the behavior of /agent/service/deregister/ which was changed in #10632 to similarly return a 404 when de-registering non-existent services. Fixes #5821 --- .changelog/11950.txt | 3 +++ agent/acl.go | 4 +++- agent/agent_endpoint_test.go | 33 +++++++++++++++++++++++++++------ 3 files changed, 33 insertions(+), 7 deletions(-) create mode 100644 .changelog/11950.txt diff --git a/.changelog/11950.txt b/.changelog/11950.txt new file mode 100644 index 000000000..6e9147674 --- /dev/null +++ b/.changelog/11950.txt @@ -0,0 +1,3 @@ +```release-note:improvement +api: Return 404 when de-registering a non-existent check +``` diff --git a/agent/acl.go b/agent/acl.go index ae7efdde1..fa2259cfd 100644 --- a/agent/acl.go +++ b/agent/acl.go @@ -149,7 +149,9 @@ func (a *Agent) vetCheckUpdateWithAuthorizer(authz acl.Authorizer, checkID struc } } } else { - return fmt.Errorf("Unknown check ID %q. Ensure that the check ID is passed, not the check name.", checkID.String()) + return NotFoundError{Reason: fmt.Sprintf( + "Unknown check ID %q. Ensure that the check ID is passed, not the check name.", + checkID.String())} } return nil diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 5d7bed8ba..6e5025dd2 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -2889,12 +2889,19 @@ func TestAgent_DeregisterCheck(t *testing.T) { t.Fatalf("err: %v", err) } - req, _ := http.NewRequest("PUT", "/v1/agent/check/deregister/test", nil) - resp := httptest.NewRecorder() - a.srv.h.ServeHTTP(resp, req) - if http.StatusOK != resp.Code { - t.Fatalf("expected 200 but got %v", resp.Code) - } + t.Run("remove registered check", func(t *testing.T) { + req, _ := http.NewRequest("PUT", "/v1/agent/check/deregister/test", nil) + resp := httptest.NewRecorder() + a.srv.h.ServeHTTP(resp, req) + require.Equal(t, http.StatusOK, resp.Code) + }) + + t.Run("remove non-existent check", func(t *testing.T) { + req, _ := http.NewRequest("PUT", "/v1/agent/check/deregister/test", nil) + resp := httptest.NewRecorder() + a.srv.h.ServeHTTP(resp, req) + require.Equal(t, http.StatusNotFound, resp.Code) + }) // Ensure we have a check mapping requireCheckMissing(t, a, "test") @@ -2928,6 +2935,20 @@ func TestAgent_DeregisterCheckACLDeny(t *testing.T) { a.srv.h.ServeHTTP(resp, req) require.Equal(t, http.StatusOK, resp.Code) }) + + t.Run("non-existent check without token", func(t *testing.T) { + req, _ := http.NewRequest("PUT", "/v1/agent/check/deregister/_nope_", nil) + resp := httptest.NewRecorder() + a.srv.h.ServeHTTP(resp, req) + require.Equal(t, http.StatusNotFound, resp.Code) + }) + + t.Run("non-existent check with token", func(t *testing.T) { + req, _ := http.NewRequest("PUT", "/v1/agent/check/deregister/_nope_?token=root", nil) + resp := httptest.NewRecorder() + a.srv.h.ServeHTTP(resp, req) + require.Equal(t, http.StatusNotFound, resp.Code) + }) } func TestAgent_PassCheck(t *testing.T) { From c9735476a7ab748346f8da95d005beb3cdc3802d Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Thu, 6 Jan 2022 16:07:09 -0500 Subject: [PATCH 120/404] Fix Windows logging to files (#11960) --- .changelog/11960.txt | 3 +++ logging/logger.go | 24 +++++++++++++++++++----- 2 files changed, 22 insertions(+), 5 deletions(-) create mode 100644 .changelog/11960.txt diff --git a/.changelog/11960.txt b/.changelog/11960.txt new file mode 100644 index 000000000..aac5bd422 --- /dev/null +++ b/.changelog/11960.txt @@ -0,0 +1,3 @@ +```release-note:bug +windows: Fixes a bug with empty log files when Consul is run as a Windows Service +``` \ No newline at end of file diff --git a/logging/logger.go b/logging/logger.go index dfc05785c..9d6cff74f 100644 --- a/logging/logger.go +++ b/logging/logger.go @@ -27,16 +27,16 @@ type Config struct { // SyslogFacility is the destination for syslog forwarding. SyslogFacility string - //LogFilePath is the path to write the logs to the user specified file. + // LogFilePath is the path to write the logs to the user specified file. LogFilePath string - //LogRotateDuration is the user specified time to rotate logs + // LogRotateDuration is the user specified time to rotate logs LogRotateDuration time.Duration - //LogRotateBytes is the user specified byte limit to rotate logs + // LogRotateBytes is the user specified byte limit to rotate logs LogRotateBytes int - //LogRotateMaxFiles is the maximum number of past archived log files to keep + // LogRotateMaxFiles is the maximum number of past archived log files to keep LogRotateMaxFiles int } @@ -45,6 +45,17 @@ const defaultRotateDuration = 24 * time.Hour type LogSetupErrorFn func(string) +// noErrorWriter is a wrapper to suppress errors when writing to w. +type noErrorWriter struct { + w io.Writer +} + +func (w noErrorWriter) Write(p []byte) (n int, err error) { + _, _ = w.w.Write(p) + // We purposely return n == len(p) as if write was successful + return len(p), nil +} + // Setup logging from Config, and return an hclog Logger. // // Logs may be written to out, and optionally to syslog, and a file. @@ -55,7 +66,10 @@ func Setup(config Config, out io.Writer) (hclog.InterceptLogger, error) { allowedLogLevels) } - writers := []io.Writer{out} + // If out is os.Stdout and Consul is being run as a Windows Service, writes will + // fail silently, which may inadvertently prevent writes to other writers. + // noErrorWriter is used as a wrapper to suppress any errors when writing to out. + writers := []io.Writer{noErrorWriter{w: out}} if config.EnableSyslog { retries := 12 From 048d9b69ba441bd90ce7f85290902d223c15c06d Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Thu, 6 Jan 2022 13:03:31 -0800 Subject: [PATCH 121/404] docs: Redirect mesh-gateway page to new location The mesh gateway docs at /docs/connect/gateways/mesh-gateway were moved in #11859 to a new location in order to accommodate the addition of separate instructions for using gateways with admin partitions. This commit redirects the old mesh gateway page to its new location at /connect/gateways/mesh-gateway/service-to-service-traffic-datacenters. --- website/redirects.next.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/website/redirects.next.js b/website/redirects.next.js index c2de7c5df..525ab5077 100644 --- a/website/redirects.next.js +++ b/website/redirects.next.js @@ -114,7 +114,14 @@ module.exports = [ { source: '/configuration', destination: '/', permanent: true }, { source: '/docs/connect/mesh(_|-)gateway', - destination: '/docs/connect/gateways/mesh-gateway', + destination: + '/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters', + permanent: true, + }, + { + source: '/docs/connect/gateways/mesh-gateway', + destination: + '/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters', permanent: true, }, { From 9ec7e07db4389c9b13e4c7c161c33a6300adb56a Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 23 Nov 2021 12:49:43 -0500 Subject: [PATCH 122/404] ca: use the new leaf signing lookup func in leader metrics --- agent/consul/leader_metrics.go | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/agent/consul/leader_metrics.go b/agent/consul/leader_metrics.go index 7151adb74..244d3fd5d 100644 --- a/agent/consul/leader_metrics.go +++ b/agent/consul/leader_metrics.go @@ -13,7 +13,6 @@ import ( "github.com/hashicorp/go-hclog" "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/connect/ca" "github.com/hashicorp/consul/logging" ) @@ -55,27 +54,14 @@ func getRootCAExpiry(s *Server) (time.Duration, error) { } func signingCAExpiryMonitor(s *Server) CertExpirationMonitor { - isPrimary := s.config.Datacenter == s.config.PrimaryDatacenter - if isPrimary { - return CertExpirationMonitor{ - Key: metricsKeyMeshActiveSigningCAExpiry, - Logger: s.logger.Named(logging.Connect), - Query: func() (time.Duration, error) { - provider, _ := s.caManager.getCAProvider() - - if _, ok := provider.(ca.PrimaryUsesIntermediate); ok { - return getActiveIntermediateExpiry(s) - } - return getRootCAExpiry(s) - }, - } - } - return CertExpirationMonitor{ Key: metricsKeyMeshActiveSigningCAExpiry, Logger: s.logger.Named(logging.Connect), Query: func() (time.Duration, error) { - return getActiveIntermediateExpiry(s) + if s.caManager.isIntermediateUsedToSignLeaf() { + return getActiveIntermediateExpiry(s) + } + return getRootCAExpiry(s) }, } } From 92a054cfa6328c065d1457e3550bb84b1432307a Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 23 Nov 2021 13:16:40 -0500 Subject: [PATCH 123/404] ca: cleanup a test Fix the name to match the function it is testing Remove unused code Fix the signature, instead of returning (error, string) which should be (string, error) accept a testing.T to emit errors. Handle the error from encode. --- agent/consul/leader_connect_ca_test.go | 35 ++++++++++---------------- 1 file changed, 13 insertions(+), 22 deletions(-) diff --git a/agent/consul/leader_connect_ca_test.go b/agent/consul/leader_connect_ca_test.go index fc2150eea..ba1a2677d 100644 --- a/agent/consul/leader_connect_ca_test.go +++ b/agent/consul/leader_connect_ca_test.go @@ -400,7 +400,7 @@ func TestCAManager_UpdateConfigWhileRenewIntermediate(t *testing.T) { require.EqualValues(t, caStateInitialized, manager.state) } -func TestCAManager_SignLeafWithExpiredCert(t *testing.T) { +func TestCAManager_SignCertificate_WithExpiredCert(t *testing.T) { if testing.Short() { t.Skip("too slow for testing.Short") } @@ -423,7 +423,6 @@ func TestCAManager_SignLeafWithExpiredCert(t *testing.T) { } for _, arg := range args { - t.Run(arg.testName, func(t *testing.T) { // No parallel execution because we change globals // Set the interval and drift buffer low for renewing the cert. @@ -443,10 +442,8 @@ func TestCAManager_SignLeafWithExpiredCert(t *testing.T) { delegate := NewMockCAServerDelegate(t, conf) manager := NewCAManager(delegate, nil, testutil.Logger(t), conf) - err, rootPEM := generatePem(arg.notBeforeRoot, arg.notAfterRoot) - require.NoError(t, err) - err, intermediatePEM := generatePem(arg.notBeforeIntermediate, arg.notAfterIntermediate) - require.NoError(t, err) + rootPEM := generateCertPEM(t, arg.notBeforeRoot, arg.notAfterRoot) + intermediatePEM := generateCertPEM(t, arg.notBeforeIntermediate, arg.notAfterIntermediate) manager.providerShim = &mockCAProvider{ callbackCh: delegate.callbackCh, rootPEM: rootPEM, @@ -462,7 +459,7 @@ func TestCAManager_SignLeafWithExpiredCert(t *testing.T) { // Call RenewIntermediate and then confirm the RPCs and provider calls // happen in the expected order. - _, err = manager.SignCertificate(&x509.CertificateRequest{}, &connect.SpiffeIDAgent{}) + _, err := manager.SignCertificate(&x509.CertificateRequest{}, &connect.SpiffeIDAgent{}) if arg.isError { require.Error(t, err) @@ -474,7 +471,8 @@ func TestCAManager_SignLeafWithExpiredCert(t *testing.T) { } } -func generatePem(notBefore time.Time, notAfter time.Time) (error, string) { +func generateCertPEM(t *testing.T, notBefore time.Time, notAfter time.Time) string { + t.Helper() ca := &x509.Certificate{ SerialNumber: big.NewInt(2019), Subject: pkix.Name{ @@ -493,25 +491,18 @@ func generatePem(notBefore time.Time, notAfter time.Time) (error, string) { BasicConstraintsValid: true, } caPrivKey, err := rsa.GenerateKey(rand.Reader, 4096) - if err != nil { - return err, "" - } + require.NoError(t, err, "failed to generate key") + caBytes, err := x509.CreateCertificate(rand.Reader, ca, ca, &caPrivKey.PublicKey, caPrivKey) - if err != nil { - return err, "" - } + require.NoError(t, err, "failed to create cert") + caPEM := new(bytes.Buffer) - pem.Encode(caPEM, &pem.Block{ + err = pem.Encode(caPEM, &pem.Block{ Type: "CERTIFICATE", Bytes: caBytes, }) - - caPrivKeyPEM := new(bytes.Buffer) - pem.Encode(caPrivKeyPEM, &pem.Block{ - Type: "RSA PRIVATE KEY", - Bytes: x509.MarshalPKCS1PrivateKey(caPrivKey), - }) - return err, caPEM.String() + require.NoError(t, err, "failed to encode") + return caPEM.String() } func TestCADelegateWithState_GenerateCASignRequest(t *testing.T) { From b66d259c1af33b4dc88c7a69f1e9bdd6cc2cb9d0 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 24 Nov 2021 18:45:03 -0500 Subject: [PATCH 124/404] ca: only generate a single private key for the whole test case Using tracing and cpu profiling I found that the majority of the time in these test cases is spent generating a private key. We really don't need separate private keys, so we can generate only one and use it for all cases. With this change the test runs much faster. --- agent/consul/leader_connect_ca_test.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/agent/consul/leader_connect_ca_test.go b/agent/consul/leader_connect_ca_test.go index ba1a2677d..869459cb7 100644 --- a/agent/consul/leader_connect_ca_test.go +++ b/agent/consul/leader_connect_ca_test.go @@ -422,6 +422,9 @@ func TestCAManager_SignCertificate_WithExpiredCert(t *testing.T) { {"root in the future", time.Now().AddDate(0, 0, 1), time.Now().AddDate(0, 0, 2), time.Now().AddDate(0, 0, -1), time.Now().AddDate(0, 0, 2), false, ""}, } + caPrivKey, err := rsa.GenerateKey(rand.Reader, 4096) + require.NoError(t, err, "failed to generate key") + for _, arg := range args { t.Run(arg.testName, func(t *testing.T) { // No parallel execution because we change globals @@ -439,11 +442,13 @@ func TestCAManager_SignCertificate_WithExpiredCert(t *testing.T) { conf.ConnectEnabled = true conf.PrimaryDatacenter = "dc1" conf.Datacenter = "dc2" + + rootPEM := generateCertPEM(t, caPrivKey, arg.notBeforeRoot, arg.notAfterRoot) + intermediatePEM := generateCertPEM(t, caPrivKey, arg.notBeforeIntermediate, arg.notAfterIntermediate) + delegate := NewMockCAServerDelegate(t, conf) manager := NewCAManager(delegate, nil, testutil.Logger(t), conf) - rootPEM := generateCertPEM(t, arg.notBeforeRoot, arg.notAfterRoot) - intermediatePEM := generateCertPEM(t, arg.notBeforeIntermediate, arg.notAfterIntermediate) manager.providerShim = &mockCAProvider{ callbackCh: delegate.callbackCh, rootPEM: rootPEM, @@ -471,7 +476,7 @@ func TestCAManager_SignCertificate_WithExpiredCert(t *testing.T) { } } -func generateCertPEM(t *testing.T, notBefore time.Time, notAfter time.Time) string { +func generateCertPEM(t *testing.T, caPrivKey *rsa.PrivateKey, notBefore time.Time, notAfter time.Time) string { t.Helper() ca := &x509.Certificate{ SerialNumber: big.NewInt(2019), @@ -490,8 +495,6 @@ func generateCertPEM(t *testing.T, notBefore time.Time, notAfter time.Time) stri KeyUsage: x509.KeyUsageDigitalSignature | x509.KeyUsageCertSign, BasicConstraintsValid: true, } - caPrivKey, err := rsa.GenerateKey(rand.Reader, 4096) - require.NoError(t, err, "failed to generate key") caBytes, err := x509.CreateCertificate(rand.Reader, ca, ca, &caPrivKey.PublicKey, caPrivKey) require.NoError(t, err, "failed to create cert") From 1f66120c20694fff1e8d1be8442faaeda50b5adf Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 25 Nov 2021 12:19:10 -0500 Subject: [PATCH 125/404] ca: remove redundant append of an intermediate cert Immediately above this line we are already appending the full list of intermediates. The `provider.ActiveIntermediate` MUST be in this list of intermediates because it must be available to all the other non-leader Servers. If it was not in this list of intermediates then any proxy that received data from a non-leader would have the wrong certs. This is being removed now because we are planning on changing the `Provider.ActiveIntermediate` interface, and removing these extra calls ahead of time helps make that change easier. --- agent/consul/leader_connect_ca.go | 5 ----- 1 file changed, 5 deletions(-) diff --git a/agent/consul/leader_connect_ca.go b/agent/consul/leader_connect_ca.go index 82956bed2..3087fb84a 100644 --- a/agent/consul/leader_connect_ca.go +++ b/agent/consul/leader_connect_ca.go @@ -1498,11 +1498,6 @@ func (c *CAManager) SignCertificate(csr *x509.CertificateRequest, spiffeID conne pem = pem + ca.EnsureTrailingNewline(p) } - // Append our local CA's intermediate if there is one. - if inter != root { - pem = pem + ca.EnsureTrailingNewline(inter) - } - modIdx, err := c.delegate.ApplyCALeafRequest() if err != nil { return nil, err From 1f670c22f5bfc3c3e03d8a5a768e073814c0a5e9 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 23 Nov 2021 14:15:08 -0500 Subject: [PATCH 126/404] ca: remove one call to provider.ActiveRoot ActiveRoot should not be called from the secondary DC, because there should not be a requirement to run the same Vault instance in a secondary DC. SignIntermediate is called in a secondary DC, so it should not call ActiveRoot We would also like to change the interface of ActiveRoot so that we can support using an intermediate cert as the primary CA in Consul. In preparation for making that change I am reducing the number of calls to ActiveRoot, so that there are fewer code paths to modify when the interface changes. This change required a change to the mockCAServerDelegate we use in tests. It was returning the RootCert for SignIntermediate, but that is not an accurate fake of production. In production this would also be a separate cert. --- agent/consul/leader_connect_ca.go | 22 ++++++++-------------- agent/consul/leader_connect_ca_test.go | 24 +++++++++++++++--------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/agent/consul/leader_connect_ca.go b/agent/consul/leader_connect_ca.go index 3087fb84a..0a6b0b47a 100644 --- a/agent/consul/leader_connect_ca.go +++ b/agent/consul/leader_connect_ca.go @@ -1463,28 +1463,22 @@ func (c *CAManager) SignCertificate(csr *x509.CertificateRequest, spiffeID conne connect.HackSANExtensionForCSR(csr) - root, err := provider.ActiveRoot() - if err != nil { - return nil, err - } // Check if the root expired before using it to sign. - err = c.checkExpired(root) + // TODO: we store NotBefore and NotAfter on this struct, so we could avoid + // parsing the cert here. + err = c.checkExpired(caRoot.RootCert) if err != nil { return nil, fmt.Errorf("root expired: %w", err) } - inter, err := provider.ActiveIntermediate() - if err != nil { - return nil, err - } - // Check if the intermediate expired before using it to sign. - err = c.checkExpired(inter) - if err != nil { - return nil, fmt.Errorf("intermediate expired: %w", err) + if c.isIntermediateUsedToSignLeaf() && len(caRoot.IntermediateCerts) > 0 { + inter := caRoot.IntermediateCerts[len(caRoot.IntermediateCerts)-1] + if err := c.checkExpired(inter); err != nil { + return nil, fmt.Errorf("intermediate expired: %w", err) + } } // All seems to be in order, actually sign it. - pem, err := provider.Sign(csr) if err == ca.ErrRateLimited { return nil, ErrRateLimited diff --git a/agent/consul/leader_connect_ca_test.go b/agent/consul/leader_connect_ca_test.go index 869459cb7..5e5e1de59 100644 --- a/agent/consul/leader_connect_ca_test.go +++ b/agent/consul/leader_connect_ca_test.go @@ -12,6 +12,7 @@ import ( "fmt" "math/big" "net/rpc" + "net/url" "testing" "time" @@ -131,11 +132,12 @@ func verifyLeafCert(t *testing.T, root *structs.CARoot, leafCertPEM string) { } type mockCAServerDelegate struct { - t *testing.T - config *Config - store *state.Store - primaryRoot *structs.CARoot - callbackCh chan string + t *testing.T + config *Config + store *state.Store + primaryRoot *structs.CARoot + secondaryIntermediate string + callbackCh chan string } func NewMockCAServerDelegate(t *testing.T, config *Config) *mockCAServerDelegate { @@ -198,7 +200,7 @@ func (m *mockCAServerDelegate) forwardDC(method, dc string, args interface{}, re roots.ActiveRootID = m.primaryRoot.ID case "ConnectCA.SignIntermediate": r := reply.(*string) - *r = m.primaryRoot.RootCert + *r = m.secondaryIntermediate default: return fmt.Errorf("received call to unsupported method %q", method) } @@ -305,13 +307,14 @@ func initTestManager(t *testing.T, manager *CAManager, delegate *mockCAServerDel } func TestCAManager_Initialize(t *testing.T) { - conf := DefaultConfig() conf.ConnectEnabled = true conf.PrimaryDatacenter = "dc1" conf.Datacenter = "dc2" delegate := NewMockCAServerDelegate(t, conf) + delegate.secondaryIntermediate = delegate.primaryRoot.RootCert manager := NewCAManager(delegate, nil, testutil.Logger(t), conf) + manager.providerShim = &mockCAProvider{ callbackCh: delegate.callbackCh, rootPEM: delegate.primaryRoot.RootCert, @@ -356,6 +359,7 @@ func TestCAManager_UpdateConfigWhileRenewIntermediate(t *testing.T) { conf.PrimaryDatacenter = "dc1" conf.Datacenter = "dc2" delegate := NewMockCAServerDelegate(t, conf) + delegate.secondaryIntermediate = delegate.primaryRoot.RootCert manager := NewCAManager(delegate, nil, testutil.Logger(t), conf) manager.providerShim = &mockCAProvider{ callbackCh: delegate.callbackCh, @@ -447,6 +451,8 @@ func TestCAManager_SignCertificate_WithExpiredCert(t *testing.T) { intermediatePEM := generateCertPEM(t, caPrivKey, arg.notBeforeIntermediate, arg.notAfterIntermediate) delegate := NewMockCAServerDelegate(t, conf) + delegate.primaryRoot.RootCert = rootPEM + delegate.secondaryIntermediate = intermediatePEM manager := NewCAManager(delegate, nil, testutil.Logger(t), conf) manager.providerShim = &mockCAProvider{ @@ -458,14 +464,13 @@ func TestCAManager_SignCertificate_WithExpiredCert(t *testing.T) { // Simulate Wait half the TTL for the cert to need renewing. manager.timeNow = func() time.Time { - return time.Now().Add(500 * time.Millisecond) + return time.Now().UTC().Add(500 * time.Millisecond) } // Call RenewIntermediate and then confirm the RPCs and provider calls // happen in the expected order. _, err := manager.SignCertificate(&x509.CertificateRequest{}, &connect.SpiffeIDAgent{}) - if arg.isError { require.Error(t, err) require.Contains(t, err.Error(), arg.errorMsg) @@ -494,6 +499,7 @@ func generateCertPEM(t *testing.T, caPrivKey *rsa.PrivateKey, notBefore time.Tim ExtKeyUsage: []x509.ExtKeyUsage{x509.ExtKeyUsageClientAuth, x509.ExtKeyUsageServerAuth}, KeyUsage: x509.KeyUsageDigitalSignature | x509.KeyUsageCertSign, BasicConstraintsValid: true, + URIs: []*url.URL{connect.SpiffeIDAgent{Host: "foo"}.URI()}, } caBytes, err := x509.CreateCertificate(rand.Reader, ca, ca, &caPrivKey.PublicKey, caPrivKey) From 37b09df4278f2a78675183d37e3f82b8773f6d11 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 25 Nov 2021 13:24:35 -0500 Subject: [PATCH 127/404] ca: update godoc To clarify what to expect from the data stored in this field, and the behaviour of this function. --- agent/consul/leader_connect_ca.go | 10 ++++++---- agent/structs/connect_ca.go | 23 ++++++++++++++++------- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/agent/consul/leader_connect_ca.go b/agent/consul/leader_connect_ca.go index 0a6b0b47a..2cf6fce97 100644 --- a/agent/consul/leader_connect_ca.go +++ b/agent/consul/leader_connect_ca.go @@ -602,10 +602,12 @@ func (c *CAManager) getLeafSigningCertFromRoot(root *structs.CARoot) string { return root.IntermediateCerts[len(root.IntermediateCerts)-1] } -// secondaryInitializeIntermediateCA runs the routine for generating an intermediate CA CSR and getting -// it signed by the primary DC if the root CA of the primary DC has changed since the last -// intermediate. It should only be called while the state lock is held by setting the state -// to non-ready. +// secondaryInitializeIntermediateCA generates a Certificate Signing Request (CSR) +// for the intermediate CA that is used to sign leaf certificates in the secondary. +// The CSR is signed by the primary DC and then persisted in the state store. +// +// This method should only be called while the state lock is held by setting the +// state to non-ready. func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, config *structs.CAConfiguration) error { activeIntermediate, err := provider.ActiveIntermediate() if err != nil { diff --git a/agent/structs/connect_ca.go b/agent/structs/connect_ca.go index f3d175d35..4b4549b7a 100644 --- a/agent/structs/connect_ca.go +++ b/agent/structs/connect_ca.go @@ -76,9 +76,14 @@ type CARoot struct { // SerialNumber is the x509 serial number of the certificate. SerialNumber uint64 - // SigningKeyID is the ID of the public key that corresponds to the private - // key used to sign leaf certificates. Is is the HexString format of the - // raw AuthorityKeyID bytes. + // SigningKeyID is the connect.HexString encoded id of the public key that + // corresponds to the private key used to sign leaf certificates in the + // local datacenter. + // + // The value comes from x509.Certificate.SubjectKeyId of the local leaf + // signing cert. + // + // See https://www.rfc-editor.org/rfc/rfc3280#section-4.2.1.1 for more detail. SigningKeyID string // ExternalTrustDomain is the trust domain this root was generated under. It @@ -192,10 +197,14 @@ type IssuedCert struct { // This is encoded in standard hex separated by :. SerialNumber string - // CertPEM and PrivateKeyPEM are the PEM-encoded certificate and private - // key for that cert, respectively. This should not be stored in the - // state store, but is present in the sign API response. - CertPEM string `json:",omitempty"` + // CertPEM is a PEM encoded bundle of a leaf certificate, optionally followed + // by one or more intermediate certificates that will form a chain of trust + // back to a root CA. + // + // This field is not persisted in the state store, but is present in the + // sign API response. + CertPEM string `json:",omitempty"` + // PrivateKeyPEM is the PEM encoded private key associated with CertPEM. PrivateKeyPEM string `json:",omitempty"` // Service is the name of the service for which the cert was issued. From 4d15e8a9ec9557e772100c85ddd66b5df659f4ab Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 25 Nov 2021 16:15:09 -0500 Subject: [PATCH 128/404] ca: extract the lookup of the active primary CA This method had only one caller, which always looked for the active root. This commit moves the lookup into the method to reduce the logic in the one caller. This is being done in preparation for a larger change. Keeping this separate so it is easier to see. The `storedRootID != primaryRoots.ActiveRootID` is being removed because these can never be different. The `storedRootID` comes from `provider.ActiveRoot`, the `primaryRoots.ActiveRootID` comes from the store `CARoot` from the primary. In both cases the source of the data is the primary DC. Technically they could be different if someone modified the provider outside of Consul, but that would break many things, so is not a supported flow. If these were out of sync because of ordering of events then the secondary will soon receive an update to `primaryRoots` and everything will be sorted out again. --- agent/consul/leader_connect_ca.go | 33 +++++++++++++++---------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/agent/consul/leader_connect_ca.go b/agent/consul/leader_connect_ca.go index 2cf6fce97..6a6a2a702 100644 --- a/agent/consul/leader_connect_ca.go +++ b/agent/consul/leader_connect_ca.go @@ -197,11 +197,18 @@ func (c *CAManager) secondarySetPrimaryRoots(newRoots structs.IndexedCARoots) { c.primaryRoots = newRoots } -func (c *CAManager) secondaryGetPrimaryRoots() structs.IndexedCARoots { +func (c *CAManager) secondaryGetActivePrimaryCARoot() (*structs.CARoot, error) { // TODO: this could be a different lock, as long as its the same lock in secondarySetPrimaryRoots c.stateLock.Lock() - defer c.stateLock.Unlock() - return c.primaryRoots + primaryRoots := c.primaryRoots + c.stateLock.Unlock() + + for _, root := range primaryRoots.Roots { + if root.ID == primaryRoots.ActiveRootID && root.Active { + return root, nil + } + } + return nil, fmt.Errorf("primary datacenter does not have an active root CA for Connect") } // initializeCAConfig is used to initialize the CA config if necessary @@ -658,25 +665,17 @@ func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, conf } } - // Determine which of the provided PRIMARY representations of roots is the - // active one. We'll use this as a template to generate any new root - // representations meant for this secondary. - var newActiveRoot *structs.CARoot - primaryRoots := c.secondaryGetPrimaryRoots() - for _, root := range primaryRoots.Roots { - if root.ID == primaryRoots.ActiveRootID && root.Active { - newActiveRoot = root - break - } - } - if newActiveRoot == nil { - return fmt.Errorf("primary datacenter does not have an active root CA for Connect") + newActiveRoot, err := c.secondaryGetActivePrimaryCARoot() + if err != nil { + return err } + _ = storedRootID // TODO: will be removed in the next commit + // Get a signed intermediate from the primary DC if the provider // hasn't been initialized yet or if the primary's root has changed. needsNewIntermediate := false - if activeIntermediate == "" || storedRootID != primaryRoots.ActiveRootID { + if activeIntermediate == "" { needsNewIntermediate = true } From d406f78c5c1367f049545108aee44a6e3f48595b Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 25 Nov 2021 16:33:48 -0500 Subject: [PATCH 129/404] ca: remove unused provider.ActiveRoot call In the previous commit the single use of this storedRoot was removed. In this commit the original objective is completed. The Provider.ActiveRoot is being removed because 1. the secondary should get the active root from the Consul primary DC, not the provider, so that secondary DCs do not need to communicate with a provider instance in a different DC. 2. so that the Provider.ActiveRoot interface can be changed without impacting other code paths. --- agent/consul/leader_connect_ca.go | 61 +++++++------------------------ testrpc/wait.go | 1 + 2 files changed, 14 insertions(+), 48 deletions(-) diff --git a/agent/consul/leader_connect_ca.go b/agent/consul/leader_connect_ca.go index 6a6a2a702..75ac1df5d 100644 --- a/agent/consul/leader_connect_ca.go +++ b/agent/consul/leader_connect_ca.go @@ -621,48 +621,22 @@ func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, conf return err } - var ( - storedRootID string - expectedSigningKeyID string - currentSigningKeyID string - activeSecondaryRoot *structs.CARoot - ) + _, activeRoot, err := c.delegate.State().CARootActive(nil) + if err != nil { + return err + } + var currentSigningKeyID string + if activeRoot != nil { + currentSigningKeyID = activeRoot.SigningKeyID + } + + var expectedSigningKeyID string if activeIntermediate != "" { - // In the event that we already have an intermediate, we must have - // already replicated some primary root information locally, so check - // to see if we're up to date by fetching the rootID and the - // signingKeyID used in the secondary. - // - // Note that for the same rootID the primary representation of the root - // will have a different SigningKeyID field than the secondary - // representation of the same root. This is because it's derived from - // the intermediate which is different in all datacenters. - storedRoot, err := provider.ActiveRoot() - if err != nil { - return err - } - - storedRootID, err = connect.CalculateCertFingerprint(storedRoot) - if err != nil { - return fmt.Errorf("error parsing root fingerprint: %v, %#v", err, storedRoot) - } - intermediateCert, err := connect.ParseCert(activeIntermediate) if err != nil { return fmt.Errorf("error parsing active intermediate cert: %v", err) } expectedSigningKeyID = connect.EncodeSigningKeyID(intermediateCert.SubjectKeyId) - - // This will fetch the secondary's exact current representation of the - // active root. Note that this data should only be used if the IDs - // match, otherwise it's out of date and should be regenerated. - _, activeSecondaryRoot, err = c.delegate.State().CARootActive(nil) - if err != nil { - return err - } - if activeSecondaryRoot != nil { - currentSigningKeyID = activeSecondaryRoot.SigningKeyID - } } newActiveRoot, err := c.secondaryGetActivePrimaryCARoot() @@ -670,12 +644,10 @@ func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, conf return err } - _ = storedRootID // TODO: will be removed in the next commit - // Get a signed intermediate from the primary DC if the provider // hasn't been initialized yet or if the primary's root has changed. - needsNewIntermediate := false - if activeIntermediate == "" { + needsNewIntermediate := activeIntermediate == "" + if activeRoot != nil && newActiveRoot.ID != activeRoot.ID { needsNewIntermediate = true } @@ -694,14 +666,7 @@ func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, conf } else { // Discard the primary's representation since our local one is // sufficiently up to date. - newActiveRoot = activeSecondaryRoot - } - - // Update the roots list in the state store if there's a new active root. - state := c.delegate.State() - _, activeRoot, err := state.CARootActive(nil) - if err != nil { - return err + newActiveRoot = activeRoot } // Determine whether a root update is needed, and persist the roots/config accordingly. diff --git a/testrpc/wait.go b/testrpc/wait.go index a872668ce..230f2f38a 100644 --- a/testrpc/wait.go +++ b/testrpc/wait.go @@ -144,6 +144,7 @@ func WaitForTestAgent(t *testing.T, rpc rpcFn, dc string, options ...waitOption) // raft leadership is gained so WaitForLeader isn't sufficient to be sure that // the CA is fully initialized. func WaitForActiveCARoot(t *testing.T, rpc rpcFn, dc string, expect *structs.CARoot) { + t.Helper() retry.Run(t, func(r *retry.R) { args := &structs.DCSpecificRequest{ Datacenter: dc, From 262898e5612a01c8b54286c86b9c1b36254a4826 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 25 Nov 2021 18:09:23 -0500 Subject: [PATCH 130/404] ca: remove unnecessary var, and slightly reduce cyclo complexity `newIntermediate` is always equal to `needsNewIntermediate`, so we can remove the extra variable and use the original directly. Also remove the `activeRoot.ID != newActiveRoot.ID` case from an if, because that case is already checked above, and `needsNewIntermediate` will already be true in that case. This condition now reads a lot better: > Persist a new root if we did not have one before, or if generated a new intermediate. --- agent/consul/leader_connect_ca.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/agent/consul/leader_connect_ca.go b/agent/consul/leader_connect_ca.go index 75ac1df5d..51525f507 100644 --- a/agent/consul/leader_connect_ca.go +++ b/agent/consul/leader_connect_ca.go @@ -657,12 +657,10 @@ func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, conf needsNewIntermediate = true } - newIntermediate := false if needsNewIntermediate { if err := c.secondaryRenewIntermediate(provider, newActiveRoot); err != nil { return err } - newIntermediate = true } else { // Discard the primary's representation since our local one is // sufficiently up to date. @@ -671,7 +669,7 @@ func (c *CAManager) secondaryInitializeIntermediateCA(provider ca.Provider, conf // Determine whether a root update is needed, and persist the roots/config accordingly. var newRoot *structs.CARoot - if activeRoot == nil || activeRoot.ID != newActiveRoot.ID || newIntermediate { + if activeRoot == nil || needsNewIntermediate { newRoot = newActiveRoot } if err := c.persistNewRootAndConfig(provider, newRoot, config); err != nil { From a08f2927fdcea91ffe4763b10781854741253d3e Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 7 Jan 2022 16:15:22 +0000 Subject: [PATCH 131/404] ui: Fix dark borders on certain visualizations (#11959) --- .changelog/11959.txt | 3 +++ .../app/components/consul/discovery-chain/skin.scss | 10 ++++++++-- .../app/components/topology-metrics/card/index.scss | 5 ++++- .../app/components/topology-metrics/skin.scss | 5 ++++- 4 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 .changelog/11959.txt diff --git a/.changelog/11959.txt b/.changelog/11959.txt new file mode 100644 index 000000000..592a83667 --- /dev/null +++ b/.changelog/11959.txt @@ -0,0 +1,3 @@ +```release-note:bug +ui: Fixes a visual issue with some border colors +``` diff --git a/ui/packages/consul-ui/app/components/consul/discovery-chain/skin.scss b/ui/packages/consul-ui/app/components/consul/discovery-chain/skin.scss index 30055d3aa..03c367537 100644 --- a/ui/packages/consul-ui/app/components/consul/discovery-chain/skin.scss +++ b/ui/packages/consul-ui/app/components/consul/discovery-chain/skin.scss @@ -37,7 +37,10 @@ } %chain-group { border-radius: var(--decor-radius-100); - border: 1px solid rgb(var(--tone-gray-200)); + border: 1px solid; + /* TODO: If this color is combined with the above */ + /* border property then the compressor removes the color */ + border-color: rgb(var(--tone-gray-200)); background-color: rgb(var(--tone-gray-100)); pointer-events: none; @@ -102,7 +105,10 @@ background-color: rgb(var(--tone-gray-000)); border-radius: var(--decor-radius-full); - border: 2px solid rgb(var(--tone-gray-400)); + border: 2px solid; + /* TODO: If this color is combined with the above */ + /* border property then the compressor removes the color */ + border-color: rgb(var(--tone-gray-400)); } %discovery-chain circle { stroke-width: 2; diff --git a/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss b/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss index 7a08492ca..72d5c4ee1 100644 --- a/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss @@ -9,7 +9,10 @@ overflow: hidden; background-color: rgb(var(--tone-gray-000)); border-radius: var(--decor-radius-100); - border: 1px solid rgb(var(--tone-gray-200)); + border: 1px solid; + /* TODO: If this color is combined with the above */ + /* border property then the compressor removes the color */ + border-color: rgb(var(--tone-gray-200)); p { padding: 12px 12px 0 12px; font-size: var(--typo-size-500); diff --git a/ui/packages/consul-ui/app/components/topology-metrics/skin.scss b/ui/packages/consul-ui/app/components/topology-metrics/skin.scss index 8b6fc0fda..026db0f67 100644 --- a/ui/packages/consul-ui/app/components/topology-metrics/skin.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/skin.scss @@ -6,8 +6,11 @@ #downstream-container, #metrics-container, #upstream-container { - border: 1px solid rgb(var(--tone-gray-200)); border-radius: var(--decor-radius-100); + border: 1px solid; + /* TODO: If this color is combined with the above */ + /* border property then the compressor removes the color */ + border-color: rgb(var(--tone-gray-200)); } #downstream-container, #upstream-container { From 86e885fc5b81c6246faa90eac4d467cc57058371 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 7 Jan 2022 19:08:25 +0000 Subject: [PATCH 132/404] ui: Upgrade AuthDialog (#11913) - Move AuthDialog to use a Glimmer Component plus native named blocks/slots. - Unravel the Auth* contextual components, there wasn't a lot of point having them as contextual components and now the AuthDialog (non-view-specific state machine component) can be used entirely separately from the view-specific components (AuthForm and AuthProfile). - Move all the ACL related components that are in the main app chrome/navigation (our HashicorpConsul component) in our consul-acls sub package/module (which will eventually be loaded on demand only when ACLs are enabled) --- .../components/consul/acl/selector/index.hbs | 79 +++ .../consul/token/selector/index.hbs | 158 +++++ .../components/consul/token/selector/index.js | 20 + .../consul-ui/app/abilities/authenticate.js | 8 - .../app/components/auth-dialog/README.mdx | 82 ++- .../app/components/auth-dialog/index.hbs | 24 +- .../app/components/auth-dialog/index.js | 79 +-- .../app/components/auth-profile/README.mdx | 19 +- .../app/components/auth-profile/index.hbs | 7 +- .../app/components/auth-profile/index.js | 5 - .../app/components/auth-profile/index.scss | 19 + .../app/components/hashicorp-consul/index.hbs | 610 +++++++----------- .../app/components/hashicorp-consul/index.js | 22 - .../app/components/menu-panel/layout.scss | 3 - .../app/components/menu-panel/skin.scss | 14 - .../consul-ui/app/styles/components.scss | 1 + .../consul-ui/app/styles/typography.scss | 1 - .../components/auth-dialog-test.js | 26 - 18 files changed, 614 insertions(+), 563 deletions(-) create mode 100644 ui/packages/consul-acls/app/components/consul/acl/selector/index.hbs create mode 100644 ui/packages/consul-acls/app/components/consul/token/selector/index.hbs create mode 100644 ui/packages/consul-acls/app/components/consul/token/selector/index.js delete mode 100644 ui/packages/consul-ui/app/abilities/authenticate.js delete mode 100644 ui/packages/consul-ui/app/components/auth-profile/index.js create mode 100644 ui/packages/consul-ui/app/components/auth-profile/index.scss delete mode 100644 ui/packages/consul-ui/tests/integration/components/auth-dialog-test.js diff --git a/ui/packages/consul-acls/app/components/consul/acl/selector/index.hbs b/ui/packages/consul-acls/app/components/consul/acl/selector/index.hbs new file mode 100644 index 000000000..f5e6bae34 --- /dev/null +++ b/ui/packages/consul-acls/app/components/consul/acl/selector/index.hbs @@ -0,0 +1,79 @@ + +
  • + + Tokens + +
  • +{{#if (can "read acls")}} +
  • + + Policies + +
  • +
  • + + Roles + +
  • +
  • + + Auth Methods + +
  • +{{else if (not (can "use acls"))}} +
  • + + Policies + +
  • +
  • + + Roles + +
  • +
  • + + Auth Methods + +
  • +{{/if}} + diff --git a/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs b/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs new file mode 100644 index 000000000..924536628 --- /dev/null +++ b/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs @@ -0,0 +1,158 @@ +{{#if (can 'use acls')}} +
  • + + + <:unauthorized as |authDialog|> + + + Login + + + + Log in + + + + +

    + Log in to Consul +

    +
    + + + + {{#if (can "use SSO")}} + + + + {{/if}} + + + + + Continue without logging in + + +
    + + <:authorized as |authDialog|> + + + +

    + Log in with a different token +

    +
    + + + + + + + + Continue without logging in + + +
    + + + Logout + + + + + Logout + + + {{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} +{{!TODO: It might be nice to use one of our recursive components here}} +{{#if @token.AccessorID}} +
  • + +
  • + +{{/if}} + + + Logout + + + {{/let}} +
    + + + + + +{{yield + (hash + modal=this.modal + ) +}} +{{/if}} + diff --git a/ui/packages/consul-acls/app/components/consul/token/selector/index.js b/ui/packages/consul-acls/app/components/consul/token/selector/index.js new file mode 100644 index 000000000..bfdcaaae6 --- /dev/null +++ b/ui/packages/consul-acls/app/components/consul/token/selector/index.js @@ -0,0 +1,20 @@ +import Component from '@glimmer/component'; +import { action } from '@ember/object'; + +export default class ConsulAclsTokensSelector extends Component { + @action + open() { + this.authForm.focus(); + } + + @action + close() { + this.authForm.reset(); + } + + @action + reauthorize(e) { + this.modal.close(); + this.args.onchange(e); + } +} diff --git a/ui/packages/consul-ui/app/abilities/authenticate.js b/ui/packages/consul-ui/app/abilities/authenticate.js deleted file mode 100644 index 99d3ae040..000000000 --- a/ui/packages/consul-ui/app/abilities/authenticate.js +++ /dev/null @@ -1,8 +0,0 @@ -import BaseAbility from './base'; -import { inject as service } from '@ember/service'; -export default class AuthenticateAbility extends BaseAbility { - @service('env') env; - get can() { - return this.env.var('CONSUL_ACLS_ENABLED'); - } -} diff --git a/ui/packages/consul-ui/app/components/auth-dialog/README.mdx b/ui/packages/consul-ui/app/components/auth-dialog/README.mdx index d09f7fbfb..da916cbb3 100644 --- a/ui/packages/consul-ui/app/components/auth-dialog/README.mdx +++ b/ui/packages/consul-ui/app/components/auth-dialog/README.mdx @@ -1,63 +1,55 @@ ---- -class: ember ---- # AuthDialog -```hbs preview-template - - {{#let components.AuthForm components.AuthProfile as |AuthForm AuthProfile|}} - - Here's the login form: - - - - Here's your profile: - - - - {{/let}} - -``` - -### Arguments - A component to help orchestrate a login/logout flow. +```hbs preview-template + + <:unauthorized as |api|> + + + <:authorized as |api|> + + + + +``` + +## Arguments + | Argument | Type | Default | Description | | --- | --- | --- | --- | -| `dc` | `String` | | The name of the current datacenter | -| `nspace` | `String` | | The name of the current namespace | -| `partition` | `String` | | The name of the current partition | | `onchange` | `Function` | | An action to fire when the users token has changed (logged in/logged out/token changed) | +| `src` | `URI` | | DataSource URI used to retrive/watch for changes on the users token | +| `sink` | `URI` | | DataSink URI used to save the users token to | -### Methods/Actions/api +## Exports -| Method/Action | Description | -| --- | --- | -| `login` | Login with a specified token | -| `logout` | Logout (delete token) | -| `token` | The current token itself (as a property not a method) | +| Name | Type | Description | +| --- | --- | --- | +| `login` | `Function` | Login with a specified token | +| `logout` | `Function` | Logout (delete token) | +| `token` | `Token` | The current token itself | -### Components - -| Name | Description | -| --- | --- | -| [`AuthForm`](../auth-form/README.mdx) | Renders an Authorization form | -| [`AuthProfile`](../auth-profile/README.mdx) | Renders a User Profile | - -### Slots +## Slots | Name | Description | | --- | --- | | `unauthorized` | This slot is only rendered when the user doesn't have a token | -| `authorized` | This slot is only rendered whtn the user has a token.| +| `authorized` | This slot is only rendered when the user has a token.| -### See +## See - [Component Source Code](./index.js) - [Template Source Code](./index.hbs) diff --git a/ui/packages/consul-ui/app/components/auth-dialog/index.hbs b/ui/packages/consul-ui/app/components/auth-dialog/index.hbs index 2e8470208..1428ec5bb 100644 --- a/ui/packages/consul-ui/app/components/auth-dialog/index.hbs +++ b/ui/packages/consul-ui/app/components/auth-dialog/index.hbs @@ -18,39 +18,29 @@ as |State Guard Action dispatch state|> {{! This DataSource just permanently listens to any changes to the users }} {{! token, whether thats a new token, a changed token or a deleted token }} {{! This DataSink is just used for logging in from the form, }} {{! or logging out via the exposed logout function }} - {{yield}} {{#let (hash login=(action sink.open) logout=(action sink.open null) token=token - ) (hash - AuthProfile=(component 'auth-profile' item=token) - AuthForm=(component 'auth-form' - dc=dc - partition=partition - nspace=nspace - onsubmit=(action sink.open value="data")) - ) as |api components|}} + ) as |api|}} + - {{#yield-slot name="authorized"}} - {{yield api components}} - {{/yield-slot}} + {{yield api to="authorized"}} - {{#yield-slot name="unauthorized"}} - {{yield api components}} - {{/yield-slot}} + {{yield api to="unauthorized"}} + {{/let}} diff --git a/ui/packages/consul-ui/app/components/auth-dialog/index.js b/ui/packages/consul-ui/app/components/auth-dialog/index.js index 041fee483..fd0120f0c 100644 --- a/ui/packages/consul-ui/app/components/auth-dialog/index.js +++ b/ui/packages/consul-ui/app/components/auth-dialog/index.js @@ -1,42 +1,45 @@ -import Component from '@ember/component'; -import Slotted from 'block-slots'; +import Component from '@glimmer/component'; import { inject as service } from '@ember/service'; -import { get } from '@ember/object'; +import { get, action } from '@ember/object'; import chart from './chart.xstate'; -export default Component.extend(Slotted, { - tagName: '', - repo: service('repository/oidc-provider'), - init: function() { - this._super(...arguments); +export default class AuthDialog extends Component { + @service('repository/oidc-provider') repo; + + constructor() { + super(...arguments); this.chart = chart; - }, - actions: { - hasToken: function() { - return typeof this.token.AccessorID !== 'undefined'; - }, - login: function() { - let prev = get(this, 'previousToken.AccessorID'); - let current = get(this, 'token.AccessorID'); - if (prev === null) { - prev = get(this, 'previousToken.SecretID'); - } - if (current === null) { - current = get(this, 'token.SecretID'); - } - let type = 'authorize'; - if (typeof prev !== 'undefined' && prev !== current) { - type = 'use'; - } - this.onchange({ data: get(this, 'token'), type: type }); - }, - logout: function() { - if (typeof get(this, 'previousToken.AuthMethod') !== 'undefined') { - // we are ok to fire and forget here - this.repo.logout(get(this, 'previousToken.SecretID')); - } - this.previousToken = null; - this.onchange({ data: null, type: 'logout' }); - }, - }, -}); + } + + @action + hasToken() { + return typeof this.token.AccessorID !== 'undefined'; + } + + @action + login() { + let prev = get(this, 'previousToken.AccessorID'); + let current = get(this, 'token.AccessorID'); + if (prev === null) { + prev = get(this, 'previousToken.SecretID'); + } + if (current === null) { + current = get(this, 'token.SecretID'); + } + let type = 'authorize'; + if (typeof prev !== 'undefined' && prev !== current) { + type = 'use'; + } + this.args.onchange({ data: get(this, 'token'), type: type }); + } + + @action + logout() { + if (typeof get(this, 'previousToken.AuthMethod') !== 'undefined') { + // we are ok to fire and forget here + this.repo.logout(get(this, 'previousToken.SecretID')); + } + this.previousToken = null; + this.args.onchange({ data: null, type: 'logout' }); + } +} diff --git a/ui/packages/consul-ui/app/components/auth-profile/README.mdx b/ui/packages/consul-ui/app/components/auth-profile/README.mdx index cda8cd031..59c70cdb4 100644 --- a/ui/packages/consul-ui/app/components/auth-profile/README.mdx +++ b/ui/packages/consul-ui/app/components/auth-profile/README.mdx @@ -1,23 +1,22 @@ ---- -class: ember ---- # AuthProfile -```hbs preview-template - -``` - A straightforward partial-like component for rendering a user profile. Only the last 8 characters are shown. -### Arguments +```hbs preview-template + +``` + +## Arguments | Argument | Type | Default | Description | | --- | --- | --- | --- | -| `item` | `Object` | | A Consul shaped token object (currently only requires an AccessorID property to be set | +| `item` | `Token` | | A token object (currently only requires an AccessorID property to be set | -### See +## See - [Component Source Code](./index.js) - [Template Source Code](./index.hbs) diff --git a/ui/packages/consul-ui/app/components/auth-profile/index.hbs b/ui/packages/consul-ui/app/components/auth-profile/index.hbs index 6f46fd37c..0595136e4 100644 --- a/ui/packages/consul-ui/app/components/auth-profile/index.hbs +++ b/ui/packages/consul-ui/app/components/auth-profile/index.hbs @@ -1,9 +1,12 @@ -
    +
    My ACL Token
    AccessorID
    - {{substr item.AccessorID -8}} + {{string-substring @item.AccessorID (sub @item.AccessorID.length 8)}}
    \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/auth-profile/index.js b/ui/packages/consul-ui/app/components/auth-profile/index.js deleted file mode 100644 index 479865264..000000000 --- a/ui/packages/consul-ui/app/components/auth-profile/index.js +++ /dev/null @@ -1,5 +0,0 @@ -import Component from '@ember/component'; - -export default Component.extend({ - tagName: '', -}); diff --git a/ui/packages/consul-ui/app/components/auth-profile/index.scss b/ui/packages/consul-ui/app/components/auth-profile/index.scss new file mode 100644 index 000000000..ebc4837a3 --- /dev/null +++ b/ui/packages/consul-ui/app/components/auth-profile/index.scss @@ -0,0 +1,19 @@ +.auth-profile { + padding: 0.9em 1em; +} +.auth-profile { + @extend %p2; +} +.auth-profile dt span { + font-weight: var(--typo-weight-normal); +} +.auth-profile dt { + font-weight: var(--typo-weight-bold); +} +.auth-profile dt, +.auth-profile dd { + color: rgb(var(--tone-gray-800)); +} +.auth-profile dt span { + color: rgb(var(--tone-gray-600)); +} diff --git a/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs b/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs index 95eca1b73..2e610a8a9 100644 --- a/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs +++ b/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs @@ -1,397 +1,263 @@ -{{#let (unique-id) as |guid|}} - + + <:notifications as |app|> +{{#each flashMessages.queue as |flash|}} + - <:notifications as |app|> - {{#each flashMessages.queue as |flash|}} - - {{#if flash.dom}} - {{{flash.dom}}} - {{else}} + {{#if flash.dom}} + {{{flash.dom}}} + {{else}} {{#let (lowercase flash.type) (lowercase flash.action) as |status type|}} - - - - {{capitalize status}}! - - - -

    - {{#if (eq type 'logout')}} - {{#if (eq status 'success') }} - You are now logged out. - {{else}} - There was an error logging out. - {{/if}} - {{else if (eq type 'authorize')}} - {{#if (eq status 'success') }} - You are now logged in. - {{else}} - There was an error, please check your SecretID/Token - {{/if}} + + + + {{capitalize status}}! + + + +

    + {{#if (eq type 'logout')}} + {{#if (eq status 'success') }} + You are now logged out. {{else}} - {{#if (or (eq type 'use') (eq flash.model 'token'))}} - - {{else if (eq flash.model 'intention')}} - - {{else if (eq flash.model 'role')}} - - {{else if (eq flash.model 'policy')}} - - {{/if}} + There was an error logging out. {{/if}} -

    -
    -
    + {{else if (eq type 'authorize')}} + {{#if (eq status 'success') }} + You are now logged in. + {{else}} + There was an error, please check your SecretID/Token + {{/if}} + {{else}} + {{#if (or (eq type 'use') (eq flash.model 'token'))}} + + {{else if (eq flash.model 'intention')}} + + {{else if (eq flash.model 'role')}} + + {{else if (eq flash.model 'policy')}} + + {{/if}} + {{/if}} +

    + + {{/let}} - {{/if}} -
    - {{/each}} + {{/if}} +
    +{{/each}} - - <:home-nav> - - + - <:main-nav> -
      + <:home-nav> + + + + <:main-nav> +
        +
      • + + + {{@dc.Name}} + + +{{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} + +{{#each (sort-by 'Name' @dcs) as |item|}} + + + {{item.Name}} + {{#if item.Primary}} + Primary + {{/if}} + {{#if item.Local}} + Local + {{/if}} + + +{{/each}} +{{/let}} + + +
      • + + +{{#if (can "read services")}} +
      • + Services +
      • +{{/if}} +{{#if (can "read nodes")}} +
      • + Nodes +
      • +{{/if}} +{{#if (can "read kv")}} +
      • + Key/Value +
      • +{{/if}} +{{#if (can "read intentions")}} +
      • + Intentions +
      • +{{/if}} + +
      + + + <:complementary-nav> +
        +
      • - + - {{@dc.Name}} + Help -{{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} - - {{#each (sort-by 'Name' @dcs) as |item|}} + {{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} + + + Consul v{{env 'CONSUL_VERSION'}} + + - {{item.Name}} - {{#if item.Primary}} - Primary - {{/if}} - {{#if item.Local}} - Local - {{/if}} + Documentation - {{/each}} -{{/let}} + + + HashiCorp Learn + + + + + + Provide Feedback + + + {{/let}}
      • - - -{{#if (can "read services")}} -
      • - Services -
      • -{{/if}} -{{#if (can "read nodes")}} -
      • - Nodes -
      • -{{/if}} -{{#if (can "read kv")}} -
      • - Key/Value -
      • -{{/if}} -{{#if (can "read intentions")}} -
      • - Intentions -
      • -{{/if}} - -
      • - Tokens -
      • -{{#if (can "read acls")}} -
      • - Policies -
      • -
      • - Roles -
      • -
      • - Auth Methods -
      • -{{else if (not (can "use acls"))}} -
      • - Policies -
      • -
      • - Roles -
      • -
      • - Auth Methods -
      • -{{/if}} -
      - - - <:complementary-nav> -
        - -
      • - - - Help - - - {{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} - - - Consul v{{env 'CONSUL_VERSION'}} - - - - - Documentation - - - - - HashiCorp Learn - - - - - - Provide Feedback - - - {{/let}} - - -
      • -
      • - + Settings -
      • - {{#if (can 'authenticate')}} -
      • - - {{#let components.AuthForm components.AuthProfile as |AuthForm AuthProfile|}} - - - - - - - - -

        Log in to Consul

        -
        - - - - {{#if (can "use SSO")}} - - - - {{/if}} - - - - - -
        -
        - - - - -

        Log in with a different token

        -
        - - - - - - - - -
        - - - - - - Logout - - - {{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} - {{!TODO: It might be nice to use one of our recursive components here}} - {{#if authDialog.token.AccessorID}} -
      • - -
      • - - {{/if}} - - - Logout - - - {{/let}} - - - - {{/let}} - - - {{/if}} -
      - + Settings + + + + {{did-insert (set this 'modal')}} + +
    + - <:main> - {{yield (hash - login=(if (env 'CONSUL_ACLS_ENABLED') this.modal (hash open=undefined)) - )}} - + <:main> + {{yield (hash + login=(if this.modal this.modal (hash open=undefined)) + )}} + - <:content-info> -

    - Consul v{{env 'CONSUL_VERSION'}} -

    - {{{concat ''}}} - -
    -{{/let}} \ No newline at end of file + <:content-info> +

    + Consul v{{env 'CONSUL_VERSION'}} +

    + {{{concat ''}}} + + + \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/hashicorp-consul/index.js b/ui/packages/consul-ui/app/components/hashicorp-consul/index.js index 6d1578d16..38e7edd51 100644 --- a/ui/packages/consul-ui/app/components/hashicorp-consul/index.js +++ b/ui/packages/consul-ui/app/components/hashicorp-consul/index.js @@ -1,28 +1,6 @@ import Component from '@glimmer/component'; -import { action } from '@ember/object'; import { inject as service } from '@ember/service'; export default class HashiCorpConsul extends Component { @service('flashMessages') flashMessages; - - @action - open() { - this.authForm.focus(); - } - - @action - close() { - this.authForm.reset(); - } - - @action - reauthorize(e) { - this.modal.close(); - this.args.onchange(e); - } - - @action - keypressClick(e) { - e.target.dispatchEvent(new MouseEvent('click')); - } } diff --git a/ui/packages/consul-ui/app/components/menu-panel/layout.scss b/ui/packages/consul-ui/app/components/menu-panel/layout.scss index 6974243c0..ac953aeb8 100644 --- a/ui/packages/consul-ui/app/components/menu-panel/layout.scss +++ b/ui/packages/consul-ui/app/components/menu-panel/layout.scss @@ -45,9 +45,6 @@ display: block; } /**/ -%menu-panel dl { - padding: 0.9em 1em; -} %menu-panel > ul > li > div[role='menu'] { @extend %menu-panel-sub-panel; } diff --git a/ui/packages/consul-ui/app/components/menu-panel/skin.scss b/ui/packages/consul-ui/app/components/menu-panel/skin.scss index aff64474c..bf759cd40 100644 --- a/ui/packages/consul-ui/app/components/menu-panel/skin.scss +++ b/ui/packages/consul-ui/app/components/menu-panel/skin.scss @@ -6,10 +6,6 @@ %menu-panel > ul > li { list-style-type: none; } -%menu-panel dt { - font-weight: var(--typo-weight-bold); -} -%menu-panel dl, %menu-panel-header { @extend %p2; } @@ -18,9 +14,6 @@ text-transform: uppercase; font-weight: var(--typo-weight-medium); } -%menu-panel dt span { - font-weight: var(--typo-weight-normal); -} %menu-panel-header + ul, %menu-panel-separator:not(:first-child) { border-top: var(--decor-border-100); @@ -32,13 +25,6 @@ border-color: rgb(var(--tone-gray-300)); background-color: rgb(var(--tone-gray-000)); } -%menu-panel dt, -%menu-panel dd { - color: rgb(var(--tone-gray-800)); -} -%menu-panel dt span { - color: rgb(var(--tone-gray-600)); -} %menu-panel-separator { color: rgb(var(--tone-gray-600)); } diff --git a/ui/packages/consul-ui/app/styles/components.scss b/ui/packages/consul-ui/app/styles/components.scss index 197e90963..00e9d2981 100644 --- a/ui/packages/consul-ui/app/styles/components.scss +++ b/ui/packages/consul-ui/app/styles/components.scss @@ -3,6 +3,7 @@ @import 'consul-ui/components/anchors'; @import 'consul-ui/components/auth-form'; @import 'consul-ui/components/auth-modal'; +@import 'consul-ui/components/auth-profile'; @import 'consul-ui/components/breadcrumbs'; @import 'consul-ui/components/buttons'; @import 'consul-ui/components/card'; diff --git a/ui/packages/consul-ui/app/styles/typography.scss b/ui/packages/consul-ui/app/styles/typography.scss index 2e9bd6370..8bf6a3238 100644 --- a/ui/packages/consul-ui/app/styles/typography.scss +++ b/ui/packages/consul-ui/app/styles/typography.scss @@ -78,7 +78,6 @@ pre code, /**/ /* resets */ -%menu-panel dt span, %empty-state-subheader, %main-content label a[rel*='help'], %pill, diff --git a/ui/packages/consul-ui/tests/integration/components/auth-dialog-test.js b/ui/packages/consul-ui/tests/integration/components/auth-dialog-test.js deleted file mode 100644 index 32b659403..000000000 --- a/ui/packages/consul-ui/tests/integration/components/auth-dialog-test.js +++ /dev/null @@ -1,26 +0,0 @@ -import { module, test } from 'qunit'; -import { setupRenderingTest } from 'ember-qunit'; -import { render } from '@ember/test-helpers'; -import { hbs } from 'ember-cli-htmlbars'; - -module('Integration | Component | auth-dialog', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - - await render(hbs``); - - assert.equal(this.element.textContent.trim(), ''); - - // Template block usage: - await render(hbs` - - template block text - - `); - - assert.equal(this.element.textContent.trim(), 'template block text'); - }); -}); From 3ab747109b54281ec44e8c7e09ee28dbcfad9e67 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 7 Jan 2022 19:09:40 +0000 Subject: [PATCH 133/404] ui: [BUGFIX] Fixes an issue when editing intentions from the service > intentions sub tab (#11937) We recently changed the intentions form to take a full model of a dc rather than just the string identifier (so {Name: 'dc', Primary: true} vs just 'dc' in order to know whether the DC is the primary or not. Unfortunately, we only did this on the global intentions page not the per service intentions page. This makes it impossible to save an intention from the per service intention page (whilst you can still save intentions from the global intention page as normal). The fix here pretty much copy/pastes the approach taken in the global intention edit template over to the per service intention edit template. Tests have been added for creation in the per service intention section, which again are pretty much just copied from the global one, unfortunately this didn't exist previously which would have helped prevent this. --- .changelog/11937.txt | 3 + .../dc/services/show/intentions/edit.hbs | 49 ++++++-- .../services/show/intentions/create.feature | 108 ++++++++++++++++++ .../index.feature} | 2 +- .../create-steps.js} | 2 +- .../services/show/intentions/index-steps.js | 10 ++ .../consul-ui/tests/helpers/type-to-url.js | 4 +- .../tests/pages/dc/intentions/edit.js | 7 +- 8 files changed, 170 insertions(+), 15 deletions(-) create mode 100644 .changelog/11937.txt create mode 100644 ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/create.feature rename ui/packages/consul-ui/tests/acceptance/dc/services/show/{intentions.feature => intentions/index.feature} (95%) rename ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/{intentions-steps.js => intentions/create-steps.js} (86%) create mode 100644 ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/index-steps.js diff --git a/.changelog/11937.txt b/.changelog/11937.txt new file mode 100644 index 000000000..abd223496 --- /dev/null +++ b/.changelog/11937.txt @@ -0,0 +1,3 @@ +```release-note:bug +ui: Fixes an issue saving intentions when editing per service intentions +``` diff --git a/ui/packages/consul-ui/app/templates/dc/services/show/intentions/edit.hbs b/ui/packages/consul-ui/app/templates/dc/services/show/intentions/edit.hbs index 44bbc9d03..719190902 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/show/intentions/edit.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/show/intentions/edit.hbs @@ -1,17 +1,44 @@ -{{#let (not (can "write intention for service" item=item.Service)) as |readOnly|}} - + as |loader|> + + + + + + +{{#let + loader.data +as |item|}} + +{{/let}} + + {{/let}} diff --git a/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/create.feature new file mode 100644 index 000000000..e95b03d62 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/create.feature @@ -0,0 +1,108 @@ +@setupApplicationTest +Feature: dc / services / intentions / create: Intention Create per Service + @onlyNamespaceable + Scenario: with namespaces enabled + Given 1 datacenter model with the value "datacenter" + And 3 service models from yaml + --- + - Name: web + Kind: ~ + - Name: db + Kind: ~ + - Name: cache + Kind: ~ + --- + And 1 instance model from yaml + --- + - Service: + ID: db + Service: db + Kind: ~ + --- + And 1 nspace model from yaml + --- + - Name: nspace-0 + --- + When I visit the intention page for yaml + --- + dc: datacenter + service: db + --- + Then the url should be /datacenter/services/db/intentions/create + # Set source + And I click "[data-test-source-element] .ember-power-select-trigger" + And I type "web" into ".ember-power-select-search-input" + And I click ".ember-power-select-option:first-child" + Then I see the text "web" in "[data-test-source-element] .ember-power-select-selected-item" + # Set destination + And I click "[data-test-destination-element] .ember-power-select-trigger" + And I type "db" into ".ember-power-select-search-input" + And I click ".ember-power-select-option:first-child" + Then I see the text "db" in "[data-test-destination-element] .ember-power-select-selected-item" + # Set source nspace + And I click "[data-test-source-nspace] .ember-power-select-trigger" + And I click ".ember-power-select-option:last-child" + Then I see the text "nspace-0" in "[data-test-source-nspace] .ember-power-select-selected-item" + # Set destination nspace + And I click "[data-test-destination-nspace] .ember-power-select-trigger" + And I click ".ember-power-select-option:last-child" + Then I see the text "nspace-0" in "[data-test-destination-nspace] .ember-power-select-selected-item" + # Specifically set deny + And I click ".value-deny" + And I submit + Then a PUT request was made to "/v1/connect/intentions/exact?source=default%2Fnspace-0%2Fweb&destination=default%2Fnspace-0%2Fdb&dc=datacenter" from yaml + --- + body: + SourceName: web + DestinationName: db + SourceNS: nspace-0 + DestinationNS: nspace-0 + SourcePartition: default + DestinationPartition: default + Action: deny + --- + Then the url should be /datacenter/services/db/intentions + And "[data-notification]" has the "notification-update" class + And "[data-notification]" has the "success" class + @notNamespaceable + Scenario: with namespaces disabled + Given 1 datacenter model with the value "datacenter" + And 3 instance models from yaml + --- + - Service: + ID: web + Service: web + Kind: ~ + - Service: + ID: db + Service: db + Kind: ~ + - Service: + ID: cache + Service: cache + Kind: ~ + --- + When I visit the intention page for yaml + --- + dc: datacenter + service: db + --- + Then the url should be /datacenter/services/db/intentions/create + # Set source + And I click "[data-test-source-element] .ember-power-select-trigger" + And I type "web" into ".ember-power-select-search-input" + And I click ".ember-power-select-option:first-child" + Then I see the text "web" in "[data-test-source-element] .ember-power-select-selected-item" + # Specifically set deny + And I click ".value-deny" + And I submit + Then a PUT request was made to "/v1/connect/intentions/exact?source=default%2Fdefault%2Fweb&destination=default%2Fdefault%2Fdb&dc=datacenter" from yaml + --- + body: + SourceName: web + DestinationName: db + Action: deny + --- + Then the url should be /datacenter/services/db/intentions + And "[data-notification]" has the "notification-update" class + And "[data-notification]" has the "success" class diff --git a/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/index.feature similarity index 95% rename from ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/index.feature index 61bd40ea7..53c5fe54b 100644 --- a/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions/index.feature @@ -1,5 +1,5 @@ @setupApplicationTest -Feature: dc / services / show / intentions: Intentions per service +Feature: dc / services / show / intentions / index: Intentions per service Background: Given 1 datacenter model with the value "dc1" And 1 node models diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/create-steps.js similarity index 86% rename from ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/create-steps.js index 3231912b9..f2aad107e 100644 --- a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-steps.js +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/create-steps.js @@ -1,4 +1,4 @@ -import steps from '../../../steps'; +import steps from '../../../../steps'; // step definitions that are shared between features should be moved to the // tests/acceptance/steps/steps.js file diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/index-steps.js new file mode 100644 index 000000000..f2aad107e --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions/index-steps.js @@ -0,0 +1,10 @@ +import steps from '../../../../steps'; + +// step definitions that are shared between features should be moved to the +// tests/acceptance/steps/steps.js file + +export default function(assert) { + return steps(assert).then('I should find a file', function() { + assert.ok(true, this.step); + }); +} diff --git a/ui/packages/consul-ui/tests/helpers/type-to-url.js b/ui/packages/consul-ui/tests/helpers/type-to-url.js index aa45c3fb3..d35cce0c9 100644 --- a/ui/packages/consul-ui/tests/helpers/type-to-url.js +++ b/ui/packages/consul-ui/tests/helpers/type-to-url.js @@ -5,9 +5,11 @@ export default function(type) { requests = ['/v1/catalog/datacenters']; break; case 'service': - case 'instance': requests = ['/v1/internal/ui/services', '/v1/health/service/']; break; + case 'instance': + requests = ['/v1/health/service/']; + break; case 'proxy': requests = ['/v1/catalog/connect']; break; diff --git a/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js b/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js index 53503232a..23071d1ec 100644 --- a/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js +++ b/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js @@ -10,7 +10,12 @@ export default function( ) { return { scope: 'main', - visit: visitable(['/:dc/intentions/:intention', '/:dc/intentions/create']), + visit: visitable([ + '/:dc/intentions/:intention', + '/:dc/services/:service/intentions/:intention', + '/:dc/services/:service/intentions/create', + '/:dc/intentions/create', + ]), permissions: { create: { scope: '[data-test-create-permission]', From 514e24ba9f4908a0bb959e96681b1e7b454360bd Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 7 Jan 2022 19:16:21 +0000 Subject: [PATCH 134/404] ui: Ensure service instance data does not get re-written on blocking refresh (#11903) * Add some less fake API data * Rename the models class so as to not be confused with JS Proxies * Rearrange routlets slightly and add some initial outletFor tests * Move away from a MeshChecks computed property and just use a helper * Just use ServiceChecks for healthiness filtering for the moment * Make TProxy cookie configurable * Amend exposed paths and upstreams so they know about meta AND proxy * Slight bit of TaggedAddresses refactor while I was checking for `meta` etc * Document CONSUL_TPROXY_ENABLE --- .changelog/11903.txt | 4 + .../consul-ui/app/components/outlet/index.js | 8 +- .../consul-ui/app/components/route/index.hbs | 2 +- .../consul-ui/app/components/route/index.js | 17 +- .../app/filter/predicates/service-instance.js | 2 +- .../consul-ui/app/helpers/merge-checks.js | 9 + ui/packages/consul-ui/app/models/proxy.js | 2 +- .../consul-ui/app/models/service-instance.js | 19 +- .../app/services/repository/proxy.js | 30 +-- .../services/repository/service-instance.js | 42 +--- ui/packages/consul-ui/app/services/routlet.js | 59 +++-- .../app/templates/dc/services/instance.hbs | 44 ++-- .../dc/services/instance/addresses.hbs | 8 +- .../dc/services/instance/exposedpaths.hbs | 12 +- .../dc/services/instance/healthchecks.hbs | 2 +- .../dc/services/instance/upstreams.hbs | 53 ++--- ui/packages/consul-ui/docs/bookmarklets.mdx | 2 + .../consul-ui/mock-api/v1/catalog/connect/_ | 2 +- .../mock-api/v1/catalog/connect/backend | 82 +++++++ .../mock-api/v1/health/service/backend | 122 +++++++++++ .../v1/health/service/backend-sidecar-proxy | 204 ++++++++++++++++++ .../integration/services/routlet-test.js | 32 +++ 22 files changed, 593 insertions(+), 164 deletions(-) create mode 100644 .changelog/11903.txt create mode 100644 ui/packages/consul-ui/app/helpers/merge-checks.js create mode 100644 ui/packages/consul-ui/mock-api/v1/catalog/connect/backend create mode 100644 ui/packages/consul-ui/mock-api/v1/health/service/backend create mode 100644 ui/packages/consul-ui/mock-api/v1/health/service/backend-sidecar-proxy create mode 100644 ui/packages/consul-ui/tests/integration/services/routlet-test.js diff --git a/.changelog/11903.txt b/.changelog/11903.txt new file mode 100644 index 000000000..4b9baa6fa --- /dev/null +++ b/.changelog/11903.txt @@ -0,0 +1,4 @@ +```release-note:bug +ui: Fixes a bug where proxy service health checks would sometimes not appear +until refresh +``` diff --git a/ui/packages/consul-ui/app/components/outlet/index.js b/ui/packages/consul-ui/app/components/outlet/index.js index 3792e5ebd..4910f1d1b 100644 --- a/ui/packages/consul-ui/app/components/outlet/index.js +++ b/ui/packages/consul-ui/app/components/outlet/index.js @@ -28,6 +28,10 @@ export default class Outlet extends Component { return this.args.model || {}; } + get name() { + return this.args.name; + } + setAppRoute(name) { if (name !== 'loading' || name === 'oidc-provider-debug') { const doc = this.element.ownerDocument.documentElement; @@ -55,7 +59,9 @@ export default class Outlet extends Component { } break; case 'model': - this.route._model = this.args.model; + if(typeof this.route !== 'undefined') { + this.route._model = value; + } break; } } diff --git a/ui/packages/consul-ui/app/components/route/index.hbs b/ui/packages/consul-ui/app/components/route/index.hbs index d3ea2f07c..783e62db5 100644 --- a/ui/packages/consul-ui/app/components/route/index.hbs +++ b/ui/packages/consul-ui/app/components/route/index.hbs @@ -1,7 +1,7 @@ {{did-insert this.connect}} {{will-destroy this.disconnect}} {{yield (hash - model=(or this.model this._model) + model=this.model params=this.params currentName=this.router.currentRoute.name diff --git a/ui/packages/consul-ui/app/components/route/index.js b/ui/packages/consul-ui/app/components/route/index.js index cae255e6c..d484560c1 100644 --- a/ui/packages/consul-ui/app/components/route/index.js +++ b/ui/packages/consul-ui/app/components/route/index.js @@ -14,17 +14,14 @@ export default class RouteComponent extends Component { } get model() { - if(this.args.name) { - const temp = this.args.name.split('.'); - temp.pop(); - const name = temp.join('.'); - let model = this.routlet.modelFor(name); - if(Object.keys(model).length === 0) { - return null; - } - return model; + if(this._model) { + return this._model; } - return null; + if (this.args.name) { + const outlet = this.routlet.outletFor(this.args.name); + return this.routlet.modelFor(outlet.name); + } + return undefined; } @action diff --git a/ui/packages/consul-ui/app/filter/predicates/service-instance.js b/ui/packages/consul-ui/app/filter/predicates/service-instance.js index 76111c576..c55f9e79e 100644 --- a/ui/packages/consul-ui/app/filter/predicates/service-instance.js +++ b/ui/packages/consul-ui/app/filter/predicates/service-instance.js @@ -5,7 +5,7 @@ export default { passing: (item, value) => item.Status === value, warning: (item, value) => item.Status === value, critical: (item, value) => item.Status === value, - empty: (item, value) => item.MeshChecks.length === 0, + empty: (item, value) => item.ServiceChecks.length === 0, }, source: (item, values) => { return setHelpers.intersectionSize(values, new Set(item.ExternalSources || [])) !== 0; diff --git a/ui/packages/consul-ui/app/helpers/merge-checks.js b/ui/packages/consul-ui/app/helpers/merge-checks.js new file mode 100644 index 000000000..ffa764640 --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/merge-checks.js @@ -0,0 +1,9 @@ +import { helper } from '@ember/component/helper'; +import mergeChecks from 'consul-ui/utils/merge-checks'; + +export default helper(function([checks, exposed], hash) { + return mergeChecks( + checks, + exposed + ); +}); diff --git a/ui/packages/consul-ui/app/models/proxy.js b/ui/packages/consul-ui/app/models/proxy.js index 276345267..2e0ae12d2 100644 --- a/ui/packages/consul-ui/app/models/proxy.js +++ b/ui/packages/consul-ui/app/models/proxy.js @@ -5,7 +5,7 @@ export const PRIMARY_KEY = 'uid'; export const SLUG_KEY = 'Node,ServiceID'; // TODO: This should be changed to ProxyInstance -export default class Proxy extends ServiceInstanceModel { +export default class ProxyServiceInstance extends ServiceInstanceModel { @attr('string') uid; @attr('string') ID; diff --git a/ui/packages/consul-ui/app/models/service-instance.js b/ui/packages/consul-ui/app/models/service-instance.js index 05769fc4f..c69d30200 100644 --- a/ui/packages/consul-ui/app/models/service-instance.js +++ b/ui/packages/consul-ui/app/models/service-instance.js @@ -1,9 +1,8 @@ -import Model, { attr, belongsTo } from '@ember-data/model'; +import Model, { attr } from '@ember-data/model'; import { fragmentArray } from 'ember-data-model-fragments/attributes'; -import { computed, get } from '@ember/object'; +import { computed } from '@ember/object'; import { or, filter, alias } from '@ember/object/computed'; import { tracked } from '@glimmer/tracking'; -import mergeChecks from 'consul-ui/utils/merge-checks'; export const PRIMARY_KEY = 'uid'; export const SLUG_KEY = 'Node.Node,Service.ID'; @@ -28,8 +27,6 @@ export default class ServiceInstance extends Model { @attr('string') uid; @attr('string') Datacenter; - // ProxyInstance is the ember-data model relationship - @belongsTo('Proxy') ProxyInstance; // Proxy is the actual JSON api response @attr() Proxy; @attr() Node; @@ -55,18 +52,6 @@ export default class ServiceInstance extends Model { @filter('Checks.@each.Kind', (item, i, arr) => item.Kind === 'service') ServiceChecks; @filter('Checks.@each.Kind', (item, i, arr) => item.Kind === 'node') NodeChecks; - // MeshChecks are a concatenation of Checks for the Instance and Checks for - // the ProxyInstance. - @computed('Checks.[]', 'ProxyInstance.{Checks.[],ServiceProxy.Expose.Checks}') - get MeshChecks() { - // merge the instance and proxy checks together, avoiding duplicate node - // checks and additionally setting any checks to exposed if required - return mergeChecks( - [get(this, 'Checks'), get(this, 'ProxyInstance.Checks')], - get(this, 'ProxyInstance.ServiceProxy.Expose.Checks') - ); - } - @computed('Service.Meta') get ExternalSources() { const sources = Object.entries(this.Service.Meta || {}) diff --git a/ui/packages/consul-ui/app/services/repository/proxy.js b/ui/packages/consul-ui/app/services/repository/proxy.js index 8aed43bdb..4032945aa 100644 --- a/ui/packages/consul-ui/app/services/repository/proxy.js +++ b/ui/packages/consul-ui/app/services/repository/proxy.js @@ -36,24 +36,24 @@ export default class ProxyService extends RepositoryService { } @dataSource('/:partition/:ns/:dc/proxy-instance/:serviceId/:node/:id') - findInstanceBySlug(params, configuration) { - return this.findAllBySlug(params, configuration).then(function(items) { - let res = {}; - if (get(items, 'length') > 0) { - let instance = items - .filterBy('ServiceProxy.DestinationServiceID', params.serviceId) - .findBy('NodeName', params.node); + async findInstanceBySlug(params, configuration) { + const items = await this.findAllBySlug(params, configuration); + + let res = {}; + if (get(items, 'length') > 0) { + let instance = items + .filterBy('ServiceProxy.DestinationServiceID', params.serviceId) + .findBy('NodeName', params.node); + if (instance) { + res = instance; + } else { + instance = items.findBy('ServiceProxy.DestinationServiceName', params.id); if (instance) { res = instance; - } else { - instance = items.findBy('ServiceProxy.DestinationServiceName', params.id); - if (instance) { - res = instance; - } } } - set(res, 'meta', get(items, 'meta')); - return res; - }); + } + set(res, 'meta', get(items, 'meta')); + return res; } } diff --git a/ui/packages/consul-ui/app/services/repository/service-instance.js b/ui/packages/consul-ui/app/services/repository/service-instance.js index d69fc067d..749262abc 100644 --- a/ui/packages/consul-ui/app/services/repository/service-instance.js +++ b/ui/packages/consul-ui/app/services/repository/service-instance.js @@ -1,12 +1,10 @@ import RepositoryService from 'consul-ui/services/repository'; -import { inject as service } from '@ember/service'; import { set } from '@ember/object'; import { ACCESS_READ } from 'consul-ui/abilities/base'; import dataSource from 'consul-ui/decorators/data-source'; const modelName = 'service-instance'; export default class ServiceInstanceService extends RepositoryService { - @service('repository/proxy') proxyRepo; getModelName() { return modelName; } @@ -34,44 +32,6 @@ export default class ServiceInstanceService extends RepositoryService { @dataSource('/:partition/:ns/:dc/service-instance/:serviceId/:node/:id') async findBySlug(params, configuration = {}) { - if (typeof configuration.cursor !== 'undefined') { - params.index = configuration.cursor; - params.uri = configuration.uri; - } - return this.authorizeBySlug( - async () => this.store.queryRecord(this.getModelName(), params), - ACCESS_READ, - params - ); - } - - @dataSource('/:partition/:ns/:dc/proxy-service-instance/:serviceId/:node/:id') - async findProxyBySlug(params, configuration = {}) { - const instance = await this.findBySlug(...arguments); - let proxy = this.store.peekRecord('proxy', instance.uid); - // Currently, we call the proxy endpoint before this endpoint - // therefore proxy is never undefined. If we ever call this endpoint - // first we'll need to do something like the following - // if(typeof proxy === 'undefined') { - // await proxyRepo.create({}) - // } - - // Copy over all the things to the ProxyServiceInstance - ['Service', 'Node', 'meta'].forEach(prop => { - set(proxy, prop, instance[prop]); - }); - ['Checks'].forEach(prop => { - // completely wipe out any previous values so we don't accumulate things - // eternally - proxy.set(prop, []); - instance[prop].forEach(item => { - if (typeof item !== 'undefined') { - proxy[prop].addFragment(item.copy()); - } - }); - }); - // delete the ServiceInstance record as we now have a ProxyServiceInstance - instance.unloadRecord(); - return proxy; + return super.findBySlug(...arguments); } } diff --git a/ui/packages/consul-ui/app/services/routlet.js b/ui/packages/consul-ui/app/services/routlet.js index b743e51b6..4ff011158 100644 --- a/ui/packages/consul-ui/app/services/routlet.js +++ b/ui/packages/consul-ui/app/services/routlet.js @@ -75,21 +75,11 @@ export default class RoutletService extends Service { return key; } - addOutlet(name, outlet) { - outlets.set(name, outlet); - } - - removeOutlet(name) { - outlets.delete(name); - } - - // modelFor gets the model for Outlet specified by `name`, not the Route - modelFor(name) { - const outlet = outlets.get(name); - if (typeof outlet !== 'undefined') { - return outlet.model || {}; - } - return {}; + outletFor(routeName) { + const keys = [...outlets.keys()]; + const pos = keys.indexOf(routeName); + const key = pos + 1; + return outlets.get(keys[key]); } /** @@ -149,20 +139,43 @@ export default class RoutletService extends Service { }; } - addRoute(name, route) { - const keys = [...outlets.keys()]; - const pos = keys.indexOf(name); - const key = pos + 1; - const outlet = outlets.get(keys[key]); + + // modelFor gets the model for Outlet specified by `name`, not the Route + modelFor(name) { + const outlet = outlets.get(name); + if (typeof outlet !== 'undefined') { + return outlet.model; + } + } + + addRoute(name, route) { + const outlet = this.outletFor(name); if (typeof outlet !== 'undefined') { - route._model = outlet.model; outlet.route = route; // TODO: Try to avoid the double computation bug schedule('afterRender', () => { - outlet.routeName = route.args.name; + outlet.routeName = name; }); } } - removeRoute(name, route) {} + removeRoute(name, route) { + const outlet = this.outletFor(name); + route._model = undefined; + if (typeof outlet !== 'undefined') { + schedule('afterRender', () => { + outlet.route = undefined; + }); + } + } + + addOutlet(name, outlet) { + outlets.set(name, outlet); + } + + removeOutlet(name) { + schedule('afterRender', () => { + outlets.delete(name); + }); + } } diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance.hbs index cab131278..052ee14b1 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/instance.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance.hbs @@ -94,6 +94,7 @@ as |item|}} name=route.params.name ) }} + @onchange={{action (mut meta) value="data"}} as |meta|> {{! We only really need meta to get the correct ServiceID }} {{! but we may as well use the NodeName and ServiceName }} @@ -101,8 +102,13 @@ as |item|}} {{! so if we can ever get ServiceID from elsewhere we could save }} {{! a HTTP request/long poll here }} {{#if meta.data.ServiceID}} + {{! if we have a proxy then get the additional instance information }} + {{! for the proxy itself so if the service is called `backend` }} + {{! its likely to have a proxy service called `backend-sidecar-proxy` }} + {{! and this second request get the info for that instance and saves }} + {{! it into the `proxy` variable }} + @onchange={{action (mut proxy) value="data"}} + /> {{/if}} {{/if}} @@ -129,7 +136,9 @@ as |item|}} - {{#if (eq proxy.ServiceProxy.Mode 'transparent')}} + {{! TODO: Looks like we can get this straight from item.Proxy.Mode }} + {{! the less we need `proxy` and `meta` the better }} + {{#if (eq meta.ServiceProxy.Mode 'transparent')}} {{/if}} @@ -149,27 +158,22 @@ as |item|}} {{/let}} - + diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance/addresses.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/addresses.hbs index bc42b919f..45980f3ab 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/instance/addresses.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/addresses.hbs @@ -2,14 +2,14 @@ @name={{routeName}} as |route|> {{#let - route.model.item -as |item|}} + (entries route.model.item.Service.TaggedAddresses) +as |items|}}
    - {{#if item.Service.TaggedAddresses }} + {{#if (gt items.length 0)}} Tag diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs index cae11c18b..df7e723d6 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs @@ -3,13 +3,17 @@ as |route|> {{#let route.model.proxy -as |proxy|}} + route.model.meta +as |item proxy|}}
    - {{#if (gt proxy.Service.Proxy.Expose.Paths.length 0)}} + {{#if (gt proxy.ServiceProxy.Expose.Paths.length 0)}}

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

    - + {{else}} diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs index 1e3648b5f..454e92f1a 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs @@ -27,7 +27,7 @@ as |route|> ) ) - route.model.item.MeshChecks + (merge-checks (array route.model.item.Checks route.model.proxy.Checks) route.model.proxy.ServiceProxy.Expose.Checks) as |sort filters items|}}
    diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs index 526073d51..30830ca4c 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs @@ -25,9 +25,10 @@ as |route|> route.params.dc route.model.proxy + route.model.meta route.model.proxy.Service.Proxy.Upstreams - as |sort filters partition nspace dc proxy items|}} + as |sort filters partition nspace dc proxy meta items|}} {{#if (gt items.length 0)}} @filter={{filters}} /> {{/if}} - {{#if (eq proxy.ServiceProxy.Mode 'transparent')}} - - -

    {{t "routes.dc.services.instance.upstreams.tproxy-mode.header"}}

    -
    - -

    - {{t "routes.dc.services.instance.upstreams.tproxy-mode.body"}} -

    -
    - -

    - - {{t "routes.dc.services.instance.upstreams.tproxy-mode.footer"}} - -

    -
    -
    + {{! TODO: Looks like we can get this straight from item.Proxy.Mode }} + {{! the less we need `proxy` and `meta` the better }} + {{#if (eq meta.ServiceProxy.Mode 'transparent')}} + + +

    + {{t "routes.dc.services.instance.upstreams.tproxy-mode.header"}} +

    +
    + +

    + {{t "routes.dc.services.instance.upstreams.tproxy-mode.body"}} +

    +
    + +

    + + {{t "routes.dc.services.instance.upstreams.tproxy-mode.footer"}} + +

    +
    +
    {{/if}} ` `)} ] }, - "Mode": "${fake.helpers.randomize(['', 'direct', 'transparent'])}", + "Mode": "${env('CONSUL_TPROXY_ENABLE') ? `transparent` : fake.helpers.randomize(['', 'direct', 'transparent'])}", "TransparentProxy": {}, "DestinationServiceName": "${location.pathname.slice(4)}" ${ location.pathname.slice(4) === "service-0" ? ` diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/connect/backend b/ui/packages/consul-ui/mock-api/v1/catalog/connect/backend new file mode 100644 index 000000000..87989f145 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/catalog/connect/backend @@ -0,0 +1,82 @@ +[ + { + "ID": "237b9eeb-bba1-e6e3-3c99-c527d6d76cc0", + "Node": "node", + "Address": "172.17.0.2", + "Datacenter": "dc1", + "TaggedAddresses": { + "lan": "172.17.0.2", + "lan_ipv4": "172.17.0.2", + "wan": "172.17.0.2", + "wan_ipv4": "172.17.0.2" + }, + "NodeMeta": { + "consul-network-segment": "" + }, + "ServiceKind": "connect-proxy", + "ServiceID": "backend-sidecar-proxy", + "ServiceName": "backend-sidecar-proxy", + "ServiceTags": [], + "ServiceAddress": "", + "ServiceWeights": { + "Passing": 1, + "Warning": 1 + }, + "ServiceMeta": {}, + "ServicePort": 21000, + "ServiceSocketPath": "", + "ServiceEnableTagOverride": false, + "ServiceProxy": { + "DestinationServiceName": "backend", + "DestinationServiceID": "backend", + "LocalServiceAddress": "127.0.0.1", + "LocalServicePort": 7000, + "Mode": "", + "MeshGateway": {}, + "Expose": {} + }, + "ServiceConnect": {}, + "CreateIndex": 19, + "ModifyIndex": 19 + }, + { + "ID": "237b9eeb-bba1-e6e3-3c99-c527d6d76cc0", + "Node": "node", + "Address": "172.17.0.2", + "Datacenter": "dc1", + "TaggedAddresses": { + "lan": "172.17.0.2", + "lan_ipv4": "172.17.0.2", + "wan": "172.17.0.2", + "wan_ipv4": "172.17.0.2" + }, + "NodeMeta": { + "consul-network-segment": "" + }, + "ServiceKind": "connect-proxy", + "ServiceID": "backend-v2-sidecar-proxy", + "ServiceName": "backend-sidecar-proxy", + "ServiceTags": [], + "ServiceAddress": "", + "ServiceWeights": { + "Passing": 1, + "Warning": 1 + }, + "ServiceMeta": {}, + "ServicePort": 21001, + "ServiceSocketPath": "", + "ServiceEnableTagOverride": false, + "ServiceProxy": { + "DestinationServiceName": "backend", + "DestinationServiceID": "backend-v2", + "LocalServiceAddress": "127.0.0.1", + "LocalServicePort": 7001, + "Mode": "", + "MeshGateway": {}, + "Expose": {} + }, + "ServiceConnect": {}, + "CreateIndex": 21, + "ModifyIndex": 21 + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/health/service/backend b/ui/packages/consul-ui/mock-api/v1/health/service/backend new file mode 100644 index 000000000..40b1cbbac --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/health/service/backend @@ -0,0 +1,122 @@ +[ + { + "Node": { + "ID": "237b9eeb-bba1-e6e3-3c99-c527d6d76cc0", + "Node": "node", + "Address": "172.17.0.2", + "Datacenter": "dc1", + "TaggedAddresses": { + "lan": "172.17.0.2", + "lan_ipv4": "172.17.0.2", + "wan": "172.17.0.2", + "wan_ipv4": "172.17.0.2" + }, + "Meta": { + "consul-network-segment": "" + }, + "CreateIndex": 14, + "ModifyIndex": 17 + }, + "Service": { + "ID": "backend", + "Service": "backend", + "Tags": [], + "Address": "", + "Meta": null, + "Port": 7000, + "Weights": { + "Passing": 1, + "Warning": 1 + }, + "EnableTagOverride": false, + "Proxy": { + "Mode": "", + "MeshGateway": {}, + "Expose": {} + }, + "Connect": {}, + "CreateIndex": 18, + "ModifyIndex": 18 + }, + "Checks": [ + { + "Node": "node", + "CheckID": "serfHealth", + "Name": "Serf Health Status", + "Status": "passing", + "Notes": "", + "Output": "Agent alive and reachable", + "ServiceID": "", + "ServiceName": "", + "ServiceTags": [], + "Type": "", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 14, + "ModifyIndex": 14 + } + ] + }, + { + "Node": { + "ID": "237b9eeb-bba1-e6e3-3c99-c527d6d76cc0", + "Node": "node", + "Address": "172.17.0.2", + "Datacenter": "dc1", + "TaggedAddresses": { + "lan": "172.17.0.2", + "lan_ipv4": "172.17.0.2", + "wan": "172.17.0.2", + "wan_ipv4": "172.17.0.2" + }, + "Meta": { + "consul-network-segment": "" + }, + "CreateIndex": 14, + "ModifyIndex": 17 + }, + "Service": { + "ID": "backend-v2", + "Service": "backend", + "Tags": [], + "Address": "", + "Meta": null, + "Port": 7001, + "Weights": { + "Passing": 1, + "Warning": 1 + }, + "EnableTagOverride": false, + "Proxy": { + "Mode": "", + "MeshGateway": {}, + "Expose": {} + }, + "Connect": {}, + "CreateIndex": 20, + "ModifyIndex": 20 + }, + "Checks": [ + { + "Node": "node", + "CheckID": "serfHealth", + "Name": "Serf Health Status", + "Status": "passing", + "Notes": "", + "Output": "Agent alive and reachable", + "ServiceID": "", + "ServiceName": "", + "ServiceTags": [], + "Type": "", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 14, + "ModifyIndex": 14 + } + ] + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/health/service/backend-sidecar-proxy b/ui/packages/consul-ui/mock-api/v1/health/service/backend-sidecar-proxy new file mode 100644 index 000000000..f1a2bdfe4 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/health/service/backend-sidecar-proxy @@ -0,0 +1,204 @@ +[ + { + "Node": { + "ID": "237b9eeb-bba1-e6e3-3c99-c527d6d76cc0", + "Node": "node", + "Address": "172.17.0.2", + "Datacenter": "dc1", + "TaggedAddresses": { + "lan": "172.17.0.2", + "lan_ipv4": "172.17.0.2", + "wan": "172.17.0.2", + "wan_ipv4": "172.17.0.2" + }, + "Meta": { + "consul-network-segment": "" + }, + "CreateIndex": 14, + "ModifyIndex": 17 + }, + "Service": { + "Kind": "connect-proxy", + "ID": "backend-sidecar-proxy", + "Service": "backend-sidecar-proxy", + "Tags": [], + "Address": "", + "Meta": null, + "Port": 21000, + "Weights": { + "Passing": 1, + "Warning": 1 + }, + "EnableTagOverride": false, + "Proxy": { + "DestinationServiceName": "backend", + "DestinationServiceID": "backend", + "LocalServiceAddress": "127.0.0.1", + "LocalServicePort": 7000, + "Mode": "", + "MeshGateway": {}, + "Expose": {} + }, + "Connect": {}, + "CreateIndex": 19, + "ModifyIndex": 19 + }, + "Checks": [ + { + "Node": "node", + "CheckID": "serfHealth", + "Name": "Serf Health Status", + "Status": "passing", + "Notes": "", + "Output": "Agent alive and reachable", + "ServiceID": "", + "ServiceName": "", + "ServiceTags": [], + "Type": "", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 14, + "ModifyIndex": 14 + }, + { + "Node": "node", + "CheckID": "service:backend-sidecar-proxy:1", + "Name": "Connect Sidecar Listening", + "Status": "critical", + "Notes": "", + "Output": "dial tcp 127.0.0.1:21000: connect: connection refused", + "ServiceID": "backend-sidecar-proxy", + "ServiceName": "backend-sidecar-proxy", + "ServiceTags": [], + "Type": "tcp", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 19, + "ModifyIndex": 42 + }, + { + "Node": "node", + "CheckID": "service:backend-sidecar-proxy:2", + "Name": "Connect Sidecar Aliasing backend", + "Status": "critical", + "Notes": "", + "Output": "No checks found.", + "ServiceID": "backend-sidecar-proxy", + "ServiceName": "backend-sidecar-proxy", + "ServiceTags": [], + "Type": "alias", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 19, + "ModifyIndex": 19 + } + ] + }, + { + "Node": { + "ID": "237b9eeb-bba1-e6e3-3c99-c527d6d76cc0", + "Node": "node", + "Address": "172.17.0.2", + "Datacenter": "dc1", + "TaggedAddresses": { + "lan": "172.17.0.2", + "lan_ipv4": "172.17.0.2", + "wan": "172.17.0.2", + "wan_ipv4": "172.17.0.2" + }, + "Meta": { + "consul-network-segment": "" + }, + "CreateIndex": 14, + "ModifyIndex": 17 + }, + "Service": { + "Kind": "connect-proxy", + "ID": "backend-v2-sidecar-proxy", + "Service": "backend-sidecar-proxy", + "Tags": [], + "Address": "", + "Meta": null, + "Port": 21001, + "Weights": { + "Passing": 1, + "Warning": 1 + }, + "EnableTagOverride": false, + "Proxy": { + "DestinationServiceName": "backend", + "DestinationServiceID": "backend-v2", + "LocalServiceAddress": "127.0.0.1", + "LocalServicePort": 7001, + "Mode": "", + "MeshGateway": {}, + "Expose": {} + }, + "Connect": {}, + "CreateIndex": 21, + "ModifyIndex": 21 + }, + "Checks": [ + { + "Node": "node", + "CheckID": "serfHealth", + "Name": "Serf Health Status", + "Status": "passing", + "Notes": "", + "Output": "Agent alive and reachable", + "ServiceID": "", + "ServiceName": "", + "ServiceTags": [], + "Type": "", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 14, + "ModifyIndex": 14 + }, + { + "Node": "node", + "CheckID": "service:backend-v2-sidecar-proxy:1", + "Name": "Connect Sidecar Listening", + "Status": "critical", + "Notes": "", + "Output": "dial tcp 127.0.0.1:21001: connect: connection refused", + "ServiceID": "backend-v2-sidecar-proxy", + "ServiceName": "backend-sidecar-proxy", + "ServiceTags": [], + "Type": "tcp", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 21, + "ModifyIndex": 44 + }, + { + "Node": "node", + "CheckID": "service:backend-v2-sidecar-proxy:2", + "Name": "Connect Sidecar Aliasing backend-v2", + "Status": "passing", + "Notes": "", + "Output": "No checks found.", + "ServiceID": "backend-v2-sidecar-proxy", + "ServiceName": "backend-sidecar-proxy", + "ServiceTags": [], + "Type": "alias", + "Interval": "", + "Timeout": "", + "ExposedPort": 0, + "Definition": {}, + "CreateIndex": 21, + "ModifyIndex": 21 + } + ] + } +] diff --git a/ui/packages/consul-ui/tests/integration/services/routlet-test.js b/ui/packages/consul-ui/tests/integration/services/routlet-test.js new file mode 100644 index 000000000..c0faa5f40 --- /dev/null +++ b/ui/packages/consul-ui/tests/integration/services/routlet-test.js @@ -0,0 +1,32 @@ +import { moduleFor, test } from 'ember-qunit'; +moduleFor('service:routlet', 'Integration | Routlet', { + // Specify the other units that are required for this test. + integration: true, +}); +test('outletFor works', function(assert) { + const routlet = this.subject(); + routlet.addOutlet('application', { + name: 'application' + }); + routlet.addRoute('dc', {}); + routlet.addOutlet('dc', { + name: 'dc' + }); + routlet.addRoute('dc.services', {}); + routlet.addOutlet('dc.services', { + name: 'dc.services' + }); + routlet.addRoute('dc.services.instances', {}); + + let actual = routlet.outletFor('dc.services'); + let expected = 'dc'; + assert.equal(actual.name, expected); + + actual = routlet.outletFor('dc'); + expected = 'application'; + assert.equal(actual.name, expected); + + actual = routlet.outletFor('application'); + expected = undefined; + assert.equal(actual, expected); +}); From dfc0f0e40ccf29da3ae2abc7d5fe7fb44168a6bc Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 7 Jan 2022 19:26:54 +0000 Subject: [PATCH 135/404] ui: Remove KV pre-flight auth check (#11968) * ui: Don't even ask whether we are authorized for a KV... ...just let the actual API tell us in the response, thin-client style. * Add some similar commenting for previous PRs related to this problem --- .changelog/11968.txt | 3 ++ ui/packages/consul-ui/app/abilities/kv.js | 7 ++++ .../consul-ui/app/services/repository/kv.js | 34 ++++++++++++------- 3 files changed, 31 insertions(+), 13 deletions(-) create mode 100644 .changelog/11968.txt diff --git a/.changelog/11968.txt b/.changelog/11968.txt new file mode 100644 index 000000000..cbafff604 --- /dev/null +++ b/.changelog/11968.txt @@ -0,0 +1,3 @@ +```release-note:bug +ui: Temporarily remove KV pre-flight check for KV list permissions +``` diff --git a/ui/packages/consul-ui/app/abilities/kv.js b/ui/packages/consul-ui/app/abilities/kv.js index 2fabf1a48..71623519d 100644 --- a/ui/packages/consul-ui/app/abilities/kv.js +++ b/ui/packages/consul-ui/app/abilities/kv.js @@ -10,6 +10,12 @@ export default class KVAbility extends BaseAbility { } return resources; } + /**/ + // Temporarily revert to pre-1.10 UI functionality by overwriting frontend + // permissions. These are used to hide certain UI elements, but they are + // still enforced on the backend. + // This temporary measure should be removed again once https://github.com/hashicorp/consul/issues/11098 + // has been resolved get canRead() { return true; } @@ -21,4 +27,5 @@ export default class KVAbility extends BaseAbility { get canWrite() { return true; } + /**/ } diff --git a/ui/packages/consul-ui/app/services/repository/kv.js b/ui/packages/consul-ui/app/services/repository/kv.js index ac1d2960b..025ced636 100644 --- a/ui/packages/consul-ui/app/services/repository/kv.js +++ b/ui/packages/consul-ui/app/services/repository/kv.js @@ -2,7 +2,7 @@ import RepositoryService from 'consul-ui/services/repository'; import isFolder from 'consul-ui/utils/isFolder'; import { get } from '@ember/object'; import { PRIMARY_KEY } from 'consul-ui/models/kv'; -import { ACCESS_LIST } from 'consul-ui/abilities/base'; +// import { ACCESS_LIST } from 'consul-ui/abilities/base'; import dataSource from 'consul-ui/decorators/data-source'; const modelName = 'kv'; @@ -54,21 +54,29 @@ export default class KvService extends RepositoryService { // this one only gives you keys // https://www.consul.io/api/kv.html @dataSource('/:partition/:ns/:dc/kvs/:id') - findAllBySlug(params, configuration = {}) { + async findAllBySlug(params, configuration = {}) { params.separator = '/'; if (params.id === '/') { params.id = ''; } - return this.authorizeBySlug( - async () => { - let items = await this.findAll(...arguments); - const meta = items.meta; - items = items.filter(item => params.id !== get(item, 'Key')); - items.meta = meta; - return items; - }, - ACCESS_LIST, - params - ); + + /**/ + // Temporarily revert to pre-1.10 UI functionality by not pre-checking backend + // permissions. + // This temporary measure should be removed again once https://github.com/hashicorp/consul/issues/11098 + // has been resolved + + // return this.authorizeBySlug( + // async () => { + let items = await this.findAll(...arguments); + const meta = items.meta; + items = items.filter(item => params.id !== get(item, 'Key')); + items.meta = meta; + return items; + // }, + // ACCESS_LIST, + // params + // ); + /**/ } } From c617a4a9707a864424ad574ee9b9130774941eea Mon Sep 17 00:00:00 2001 From: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> Date: Fri, 7 Jan 2022 14:20:43 -0800 Subject: [PATCH 136/404] Update website/content/docs/connect/config-entries/mesh.mdx Co-authored-by: Freddy --- website/content/docs/connect/config-entries/mesh.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/connect/config-entries/mesh.mdx b/website/content/docs/connect/config-entries/mesh.mdx index 519048631..fd3fae5e6 100644 --- a/website/content/docs/connect/config-entries/mesh.mdx +++ b/website/content/docs/connect/config-entries/mesh.mdx @@ -98,7 +98,7 @@ spec: -Note that the Kuberetes example does not include a `partition` field. Configuration entries are applied on Kubernetes using [custom resource definitions (CRD)](/docs/k8s/crds), which can only reference their own partition. +Note that the Kuberetes example does not include a `partition` field. Configuration entries are applied on Kubernetes using [custom resource definitions (CRD)](/docs/k8s/crds), which can only be scoped to their own partition. ## Available Fields From 15220e8d398bc92e8958b80a44d3983867b7328c Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Fri, 7 Jan 2022 15:43:51 -0800 Subject: [PATCH 137/404] applied feedback --- website/content/docs/connect/intentions.mdx | 121 ++++++++++++++++---- 1 file changed, 101 insertions(+), 20 deletions(-) diff --git a/website/content/docs/connect/intentions.mdx b/website/content/docs/connect/intentions.mdx index 85b380007..198fa0d28 100644 --- a/website/content/docs/connect/intentions.mdx +++ b/website/content/docs/connect/intentions.mdx @@ -49,26 +49,17 @@ target destination. After verifying the TLS client certificate, the cached intentions should be consulted for each incoming connection/request to determine if it should be accepted or rejected. -The default intention behavior is defined by the default [ACL -policy](/docs/agent/options#acl_default_policy). If the default ACL policy is -"allow all", then all Connect connections are allowed by default. If the -default ACL policy is "deny all", then all Connect connections or requests are -denied by default. +The default intention behavior is defined by the [`default_policy`](/docs/agent/options#acl_default_policy) configuration. +If the configuration is set `allow`, then all service mesh Connect connections will be allowed by default. +If is set to `deny`, then all connections or requests will be denied by default. ## Intention Basics -Intentions are managed primarily via -[`service-intentions`](/docs/connect/config-entries/service-intentions) config -entries or the UI. Some simpler tasks can also be achieved with the older -[API](/api-docs/connect/intentions) or [CLI](/commands/intention). Please see -the respective documentation for each for full details on options, flags, etc. +You can define a [`service-intentions`](/docs/connect/config-entries/service-intentions) configuration entry to create and manage intentions, as well as manage intentions through the Consul UI. You can also perform some intention-related tasks using the API and CLI commands. Refer to the [API](/api-docs/connect/intentions) and [CLI](/commands/intention) documentation for details. -Below is an example of a basic -[`service-intentions`](/docs/connect/config-entries/service-intentions) config -entry representing two simple intentions. The full data model complete with -more examples can be found in the -[`service-intentions`](/docs/connect/config-entries/service-intentions) config -entry documentation. +The following example shows a `service-intentions` configuration entry that specifes two intentions. Refer to the [`service-intentions`](/docs/connect/config-entries/service-intentions) documentation for the full data model and additional examples. + + ```hcl Kind = "service-intentions" @@ -85,10 +76,29 @@ Sources = [ ] ``` -This config entry defines two intentions with a common destination of "db". The -first intention above is a deny intention with a source of "web". This says +```json +{ + "Kind": "service-intentions", + "Name": "db", + "Sources": [ + { + "Action": "deny", + "Name": "web" + }, + { + "Action": "allow", + "Name": "api" + } + ] +} +``` + + + +This configuration entry defines two intentions with a common destination of `db`. The +first intention above is a deny intention with a source of `web`. This says that connections from web to db are not allowed and the connection will be -rejected. The second intention is an allow intention with a source of "api". +rejected. The second intention is an allow intention with a source of `api`. This says that connections from api to db are allowed and connections will be accepted. @@ -100,6 +110,8 @@ The wildcard is supported in Consul Enterprise `namespace` fields (see [Namespac In the following example, the `web` service cannot connect to _any_ service: + + ```hcl Kind = "service-intentions" Name = "*" @@ -111,8 +123,25 @@ Sources = [ ] ``` +```json +{ + "Kind": "service-intentions", + "Name": "*", + "Sources": [ + { + "Action": "deny", + "Name": "web" + } + ] +} +``` + + + The `db` service is configured to deny all connection in the following example: + + ```hcl Kind = "service-intentions" Name = "db" @@ -124,9 +153,26 @@ Sources = [ ] ``` +```json +{ + "Kind": "service-intentions", + "Name": "db", + "Sources": [ + { + "Action": "deny", + "Name": "*" + } + ] +} +``` + + + This example grants Prometheus access to any service in any namespace. + + ```hcl Kind = "service-intentions" Name = "*" @@ -140,6 +186,23 @@ Sources = [ ] ``` +```json +{ + "Kind": "service-intentions", + "Name": "*", + "Namespace": "*", + "Sources": [ + { + "Action": "allow", + "Name": "prometheus", + "Namespace": "monitoring" + } + ] +} +``` + + + ### Enforcement For services that define their [protocol] as TCP, intentions mediate the @@ -177,7 +240,7 @@ top to bottom, with larger numbers being evaluated first. The precedence value can be read from a [field](/docs/connect/config-entries/service-intentions#precedence) on the -`service-intentions` config entry after it is modified. Precedence cannot be +`service-intentions` configuration entry after it is modified. Precedence cannot be manually overridden today. The numbers in the table above are not stable. Their ordering will remain @@ -201,12 +264,30 @@ for its own service name in order to know whether or not to authorize connections. The following ACL policy will implicitly grant `intentions:read` (note _read_) for service `web`. + + ```hcl service "web" { policy = "write" } ``` +```json +{ + "service": [ + { + "web": [ + { + "policy": "write" + } + ] + } + ] +} +``` + + + It is possible to explicitly specify intention permissions. For example, the following policy will allow a service to be discovered without granting access to read intentions for it. From e3f5dc098780643beabf1f10aae9af58994bf386 Mon Sep 17 00:00:00 2001 From: Evan Culver Date: Fri, 7 Jan 2022 20:23:46 -0800 Subject: [PATCH 138/404] Add missing changelog entries (#11973) Added missing entries from: * 1.8.18 * 1.8.19 * 1.9.12 * 1.9.13 * 1.10.5 * 1.10.6 * 1.11.1 --- CHANGELOG.md | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc160bb6c..0391f6984 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,15 @@ +## 1.11.1 (December 15, 2021) + +SECURITY: + +* ci: Upgrade golang.org/x/net to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11854](https://github.com/hashicorp/consul/issues/11854)] + +FEATURES: + +* Admin Partitions (Consul Enterprise only) This version adds admin partitions, a new entity defining administrative and networking boundaries within a Consul deployment. For more information refer to the + [Admin Partition](https://www.consul.io/docs/enterprise/admin-partitions) documentation. [[GH-11855](https://github.com/hashicorp/consul/issues/11855)] +* networking: **(Enterprise Only)** Make `segment_limit` configurable, cap at 256. + ## 1.11.0 (December 14, 2021) BREAKING CHANGES: @@ -121,6 +133,22 @@ NOTES: * Renamed the `agent_master` field to `agent_recovery` in the `acl-tokens.json` file in which tokens are persisted on-disk (when `acl.enable_token_persistence` is enabled) [[GH-11744](https://github.com/hashicorp/consul/issues/11744)] +## 1.10.6 (December 15, 2021) + +SECURITY: + +* ci: Upgrade golang.org/x/net to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11856](https://github.com/hashicorp/consul/issues/11856)] + +## 1.10.5 (December 13, 2021) + +SECURITY: + +* ci: Upgrade to Go 1.16.12 to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11808](https://github.com/hashicorp/consul/issues/11808)] + +BUG FIXES: + +* agent: **(Enterprise only)** fix bug where 1.10.x agents would deregister serf checks from 1.11.x servers [[GH-11700](https://github.com/hashicorp/consul/issues/11700)] + ## 1.10.4 (November 11, 2021) SECURITY: @@ -389,6 +417,18 @@ NOTES: * legal: **(Enterprise only)** Enterprise binary downloads will now include a copy of the EULA and Terms of Evaluation in the zip archive +## 1.9.13 (December 15, 2021) + +SECURITY: + +* ci: Upgrade golang.org/x/net to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11858](https://github.com/hashicorp/consul/issues/11858)] + +## 1.9.12 (December 13, 2021) + +SECURITY: + +* ci: Upgrade to Go 1.16.12 to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11807](https://github.com/hashicorp/consul/issues/11807)] + ## 1.9.11 (November 11, 2021) SECURITY: @@ -769,6 +809,26 @@ BUG FIXES: * telemetry: fixed a bug that caused logs to be flooded with `[WARN] agent.router: Non-server in server-only area` [[GH-8685](https://github.com/hashicorp/consul/issues/8685)] * ui: show correct datacenter for gateways [[GH-8704](https://github.com/hashicorp/consul/issues/8704)] +## 1.8.19 (December 15, 2021) + +SECURITY: + +* ci: Upgrade golang.org/x/net to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11857](https://github.com/hashicorp/consul/issues/11857)] + +## 1.8.18 (December 13, 2021) + +SECURITY: + +* ci: Upgrade to Go 1.16.12 to address [CVE-2021-44716](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44716) [[GH-11806](https://github.com/hashicorp/consul/issues/11806)] +* namespaces: **(Enterprise only)** Creating or editing namespaces that include default ACL policies or ACL roles now requires `acl:write` permission in the default namespace. This change fixes CVE-2021-41805. + +BUG FIXES: + +* snapshot: **(Enterprise only)** fixed a bug where the snapshot agent would ignore the `license_path` setting in config files +* ui: Fixes an issue where under some circumstances after logging we present the +data loaded previous to you logging in. [[GH-11681](https://github.com/hashicorp/consul/issues/11681)] +* ui: Include `Service.Namespace` into available variables for `dashboard_url_templates` [[GH-11640](https://github.com/hashicorp/consul/issues/11640)] + ## 1.8.17 (November 11, 2021) SECURITY: From 1800a4d240f08a574c22b3ce63e59bc8d90aeb03 Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 11:40:25 +0000 Subject: [PATCH 139/404] docs: fix placement of warning in kv put example --- website/content/commands/kv/put.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index 76778d088..0e42c106b 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -69,6 +69,9 @@ $ consul kv put redis/config/connections Success! Data written to: redis/config/connections ``` +!> **Be careful when overwriting data!** The above operation would overwrite +the value at the key to the empty value. + If the `-base64` flag is set, the data will be decoded before writing: ```shell-session @@ -76,9 +79,6 @@ $ consul kv put -base64 foo/encoded aGVsbG8gd29ybGQK Success! Data written to: foo/encoded ``` -!> **Be careful when overwriting data!** The above operation would overwrite -the value at the key to the empty value. - For longer or sensitive values, it is possible to read from a file by prefixing with the `@` symbol: From c2f81b492b217c2dd28c84432bc35a4f50a8468c Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 12:15:59 +0000 Subject: [PATCH 140/404] docs: improve read/scanability of kv put examples - Split examples into sections with headers - Hide the clipboard on examples as the copied text isn't useful - Add an example of supplying data in a heredoc - Move the flags section to the bottom to clearly separate it from CAS which also mentions "flags" of a different kind - Slight re-wording for clarity --- website/content/commands/kv/put.mdx | 73 +++++++++++++++++++---------- 1 file changed, 48 insertions(+), 25 deletions(-) diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index 0e42c106b..beb76fbf5 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -57,57 +57,76 @@ Usage: `consul kv put [options] KEY [DATA]` To insert a value of "5" for the key named "redis/config/connections" in the KV store: -```shell-session +```shell-session hideClipboard $ consul kv put redis/config/connections 5 Success! Data written to: redis/config/connections ``` If no data is specified, the key will be created with empty data: -```shell-session +```shell-session hideClipboard $ consul kv put redis/config/connections Success! Data written to: redis/config/connections ``` -!> **Be careful when overwriting data!** The above operation would overwrite -the value at the key to the empty value. +!> **Be careful of overwriting data!** The above operation would overwrite +any existing value at the key to the empty value. -If the `-base64` flag is set, the data will be decoded before writing: +### Base64 Encoded Values -```shell-session +If the `-base64` flag is set, the given data will be Base64-decoded before writing: + +```shell-session hideClipboard $ consul kv put -base64 foo/encoded aGVsbG8gd29ybGQK Success! Data written to: foo/encoded ``` -For longer or sensitive values, it is possible to read from a file by prefixing -with the `@` symbol: +### Longer or Sensitive Values -```shell-session +For longer or sensitive values, it is possible to read from a file by +supplying its path prefixed with the `@` symbol: + +```shell-session hideClipboard $ consul kv put redis/config/password @password.txt -Success! Data written to: redis/config/connections +Success! Data written to: redis/config/password ``` Or read values from stdin by specifying the `-` symbol: -```shell-session -$ echo "5" | consul kv put redis/config/password - +```shell-session hideClipboard +$ echo "5" | consul kv put redis/config/connections - Success! Data written to: redis/config/connections +``` -$ consul kv put redis/config/password - +```shell-session hideClipboard +$ consul kv put redis/config/connections - 5 Success! Data written to: redis/config/connections ``` +```shell-session hideClipboard +$ consul kv put leaderboard/scores - < For secret and sensitive values, you should consider using a secret management solution like **[HashiCorp's Vault](https://www.vaultproject.io/)**. -While it is possible to secure values in Consul's KV store, Vault provides a -more robust interface for secret management. +While it is possible to encrpyt data before writing it to Consul's KV store, +Consul provides no built-in support for encryption at-rest. + +### Atomic Check-And-Set (CAS) To only update a key if it has not been modified since a given index, specify the `-cas` and `-modify-index` flags: -```shell-session +```shell-session hideClipboard $ consul kv get -detailed redis/config/connections | grep ModifyIndex ModifyIndex 456 @@ -118,24 +137,18 @@ $ consul kv put -cas -modify-index=456 redis/config/connections 10 Success! Data written to: redis/config/connections ``` -To specify flags on the key, use the `-flags` option. These flags are completely -controlled by the user: - -```shell-session -$ consul kv put -flags=42 redis/config/password s3cr3t -Success! Data written to: redis/config/password -``` +### Locking Primatives To create or tune a lock, use the `-acquire` and `-session` flags. The session must already exist (this command will not create it or manage it): -```shell-session +```shell-session hideClipboard $ consul kv put -acquire -session=abc123 redis/lock/update Success! Lock acquired on: redis/lock/update ``` When you are finished, release the lock: -```shell-session +```shell-session hideClipboard $ consul kv put -release -session=acb123 redis/lock/update Success! Lock released on: redis/lock/update ``` @@ -144,3 +157,13 @@ Success! Lock released on: redis/lock/update low-level primitives, you may want to look at the [consul lock](/commands/lock) command. It provides higher-level functionality without exposing the internal APIs of Consul. + +### Flags + +To set user-defined flags on the entry, use the `-flags` option. These flags +are completely controlled by the user and have no special meaning to Consul: + +```shell-session hideClipboard +$ consul kv put -flags=42 redis/config/password s3cr3t +Success! Data written to: redis/config/password +``` From 77b49965eee90070604e5f1364326064c075b84f Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 12:30:28 +0000 Subject: [PATCH 141/404] docs: call out `kv import` and the transaction API --- website/content/commands/kv/put.mdx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index beb76fbf5..d407df721 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -9,6 +9,11 @@ Command: `consul kv put` The `kv put` command writes the data to the given path in the KV store. +-> When writing multiple entries at once, consider using +[`kv import`](/commands/kv/import) instead. Alternatively, the +[transaction API](/api-docs/txn) provides support for performing up to +64 KV operations atomically. + ## Usage Usage: `consul kv put [options] KEY [DATA]` From e33402f292b6e287e4497748897336b0b1a1257f Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 13:38:18 +0000 Subject: [PATCH 142/404] docs: improve kv get examples - Split examples into sections with headers - Hide the clipboard on examples as the copied text isn't useful - Format inline flags as code using backticks --- website/content/commands/kv/get.mdx | 52 +++++++++++++++++------------ 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/website/content/commands/kv/get.mdx b/website/content/commands/kv/get.mdx index c2f8bf913..eb84020b6 100644 --- a/website/content/commands/kv/get.mdx +++ b/website/content/commands/kv/get.mdx @@ -53,17 +53,27 @@ Usage: `consul kv get [options] [KEY_OR_PREFIX]` To retrieve the value for the key named "redis/config/connections" in the KV store: -```shell-session +```shell-session hideClipboard $ consul kv get redis/config/connections 5 ``` -This will return the original, raw value stored in Consul. To view detailed -information about the key, specify the "-detailed" flag. This will output all -known metadata about the key including ModifyIndex and any user-supplied -flags: +This will return the original, raw value stored in Consul. -```shell-session +If the key with the given name does not exist, an error is returned: + +```shell-session hideClipboard +$ consul kv get not-a-real-key +Error! No key exists at: not-a-real-key +``` + +### Detailed Output + +To view detailed information about the key, specify the `-detailed` flag. +This will output all known metadata about the key including ModifyIndex +and any user-supplied flags: + +```shell-session hideClipboard $ consul kv get -detailed redis/config/connections CreateIndex 336 Flags 0 @@ -74,26 +84,22 @@ Session - Value 5 ``` -If the key with the given name does not exist, an error is returned: +### Recursively Reading By Prefix -```shell-session -$ consul kv get not-a-real-key -Error! No key exists at: not-a-real-key -``` +To treat the path as a prefix and list all entries which start with the given +prefix, specify the `-recurse` flag: -To treat the path as a prefix and list all keys which start with the given -prefix, specify the "-recurse" flag: - -```shell-session +```shell-session hideClipboard $ consul kv get -recurse redis/ redis/config/connections:5 redis/config/cpu:128 redis/config/memory:512 ``` -Or list detailed information about all pairs under a prefix: +Or combine with the `-detailed` flag to list detailed information about all +entries under a prefix: -```shell-session +```shell-session hideClipboard $ consul kv get -recurse -detailed redis CreateIndex 336 Flags 0 @@ -120,10 +126,12 @@ Session - Value 512 ``` -To just list the keys which start with the specified prefix, use the "-keys" +### Listing Keys + +To just list the keys which start with the specified prefix, use the `-keys` option instead. This is more performant and results in a smaller payload: -```shell-session +```shell-session hideClipboard $ consul kv get -keys redis/config/ redis/config/connections redis/config/cpu @@ -134,7 +142,7 @@ By default, the `-keys` operation uses a separator of "/", meaning it will not recurse beyond that separator. You can choose a different separator by setting `-separator=""`. -```shell-session +```shell-session hideClipboard $ consul kv get -keys -separator="c" redis redis/c ``` @@ -142,7 +150,7 @@ redis/c Alternatively, you can disable the separator altogether by setting it to the empty string: -```shell-session +```shell-session hideClipboard $ consul kv get -keys -separator="" redis redis/config/connections redis/config/cpu @@ -151,7 +159,7 @@ redis/config/memory To list all keys at the root, simply omit the prefix parameter: -```shell-session +```shell-session hideClipboard $ consul kv get -keys memcached/ redis/ From d9f057aa69c438833e8de102ac6d38e753889814 Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 13:49:17 +0000 Subject: [PATCH 143/404] docs: call out `kv export` and the transaction API --- website/content/commands/kv/get.mdx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/website/content/commands/kv/get.mdx b/website/content/commands/kv/get.mdx index eb84020b6..84f2e8b5e 100644 --- a/website/content/commands/kv/get.mdx +++ b/website/content/commands/kv/get.mdx @@ -12,6 +12,12 @@ store at the given key name. If no key exists with that name, an error is returned. If a key exists with that name but has no data, nothing is returned. A key name or prefix is required. +-> When reading many entries under a given prefix, it may be worth considering +[`kv export`](/commands/kv/export) instead, the output of which can be used +with [`kv import`](/commands/kv/import) to move entire trees between Consul +clusters. Alternatively, the [transaction API](/api-docs/txn) provides +support for performing up to 64 KV operations atomically. + ## Usage Usage: `consul kv get [options] [KEY_OR_PREFIX]` From e69ad56141f9585ea70f6a0e3de3a4d4bf7dec52 Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 13:59:43 +0000 Subject: [PATCH 144/404] docs: clarify transaction usage and limitations in kv api docs --- website/content/api-docs/kv.mdx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index cc99ed373..05d0fca30 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -18,14 +18,16 @@ replication between datacenters, please view the ~> Values in the KV store cannot be larger than 512kb. -For multi-key updates, please consider using [transaction](/api/txn). +In order to perform atomic operations on multiple KV pairs (up to a limit of 64) +please consider using [transactions](/api/txn) instead. ## Read Key This endpoint returns the specified key. If no key exists at the given path, a 404 is returned instead of a 200 response. -For multi-key reads, please consider using [transaction](/api/txn). +For multi-key reads (up to a limit of 64) please consider using +[transactions](/api/txn) instead. | Method | Path | Produces | | ------ | ---------- | ------------------ | From dd8d8fb6fd7613f3134495fa9c1515db0b31dce4 Mon Sep 17 00:00:00 2001 From: Daniel Upton Date: Mon, 10 Jan 2022 15:53:41 +0000 Subject: [PATCH 145/404] Incorporate feedback from @jkirschner-hashicorp and @karl-cardenas-coding --- website/content/api-docs/kv.mdx | 2 +- website/content/commands/kv/get.mdx | 18 +++++++++--------- website/content/commands/kv/put.mdx | 8 ++++---- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index 05d0fca30..05525e896 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -26,7 +26,7 @@ please consider using [transactions](/api/txn) instead. This endpoint returns the specified key. If no key exists at the given path, a 404 is returned instead of a 200 response. -For multi-key reads (up to a limit of 64) please consider using +For multi-key reads (up to a limit of 64 KV operations) please consider using [transactions](/api/txn) instead. | Method | Path | Produces | diff --git a/website/content/commands/kv/get.mdx b/website/content/commands/kv/get.mdx index 84f2e8b5e..924ddf1a0 100644 --- a/website/content/commands/kv/get.mdx +++ b/website/content/commands/kv/get.mdx @@ -12,10 +12,10 @@ store at the given key name. If no key exists with that name, an error is returned. If a key exists with that name but has no data, nothing is returned. A key name or prefix is required. --> When reading many entries under a given prefix, it may be worth considering -[`kv export`](/commands/kv/export) instead, the output of which can be used -with [`kv import`](/commands/kv/import) to move entire trees between Consul -clusters. Alternatively, the [transaction API](/api-docs/txn) provides +-> **Note**: When reading many entries under a given prefix, it may be worth +considering [`kv export`](/commands/kv/export) instead. The kv export output +can be used with [`kv import`](/commands/kv/import) to move entire trees between +Consul clusters. Alternatively, the [transaction API](/api-docs/txn) provides support for performing up to 64 KV operations atomically. ## Usage @@ -64,9 +64,9 @@ $ consul kv get redis/config/connections 5 ``` -This will return the original, raw value stored in Consul. +This will return the original raw value stored in Consul. -If the key with the given name does not exist, an error is returned: +If the key with the given name does not exist, an error is returned. ```shell-session hideClipboard $ consul kv get not-a-real-key @@ -76,7 +76,7 @@ Error! No key exists at: not-a-real-key ### Detailed Output To view detailed information about the key, specify the `-detailed` flag. -This will output all known metadata about the key including ModifyIndex +This will output all known metadata about the key including `ModifyIndex` and any user-supplied flags: ```shell-session hideClipboard @@ -102,8 +102,8 @@ redis/config/cpu:128 redis/config/memory:512 ``` -Or combine with the `-detailed` flag to list detailed information about all -entries under a prefix: +Alternatively, combine with the `-detailed` flag to list detailed information +about all entries under a prefix: ```shell-session hideClipboard $ consul kv get -recurse -detailed redis diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index d407df721..0f8929176 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -9,7 +9,7 @@ Command: `consul kv put` The `kv put` command writes the data to the given path in the KV store. --> When writing multiple entries at once, consider using +-> **Note**: When writing multiple entries at once, consider using [`kv import`](/commands/kv/import) instead. Alternatively, the [transaction API](/api-docs/txn) provides support for performing up to 64 KV operations atomically. @@ -121,8 +121,8 @@ EOF Success! Data written to: leaderboard/scores ``` -~> For secret and sensitive values, you should consider using a secret -management solution like **[HashiCorp's Vault](https://www.vaultproject.io/)**. +~> **Warning**: For secret and sensitive values, you should consider using a +secret management solution like **[HashiCorp's Vault](https://learn.hashicorp.com/tutorials/vault/static-secrets?in=vault/secrets-management)**. While it is possible to encrpyt data before writing it to Consul's KV store, Consul provides no built-in support for encryption at-rest. @@ -142,7 +142,7 @@ $ consul kv put -cas -modify-index=456 redis/config/connections 10 Success! Data written to: redis/config/connections ``` -### Locking Primatives +### Locking Primitives To create or tune a lock, use the `-acquire` and `-session` flags. The session must already exist (this command will not create it or manage it): From 32ee4e440d840b888660d6dc623c8fc4e8b91ed9 Mon Sep 17 00:00:00 2001 From: Krastin Krastev Date: Mon, 10 Jan 2022 17:37:38 +0100 Subject: [PATCH 146/404] adding JSON examples to /docs/connect/observability/ui-visualization --- .../observability/ui-visualization.mdx | 101 ++++++++++++++++++ 1 file changed, 101 insertions(+) diff --git a/website/content/docs/connect/observability/ui-visualization.mdx b/website/content/docs/connect/observability/ui-visualization.mdx index e21631a48..9a9056ff0 100644 --- a/website/content/docs/connect/observability/ui-visualization.mdx +++ b/website/content/docs/connect/observability/ui-visualization.mdx @@ -66,6 +66,9 @@ service named `prometheus-server` so each Consul agent can reach it on A full configuration to enable Prometheus is given below. + + + ```hcl ui_config { enabled = true @@ -76,6 +79,28 @@ ui_config { } ``` + + + +```json +{ + "ui_config": [ + { + "enabled": true, + "metrics_provider": "prometheus", + "metrics_proxy": [ + { + "base_url": "http://prometheus-server" + } + ] + } + ] +} +``` + + + + Similarly, to configure the UI on Kubernetes, use this [reference](/docs/k8s/connect/observability/metrics). ## Configuring Dashboard URLs @@ -114,6 +139,31 @@ ui_config { without horizontal scrolling in the example above however this needs to be a normal single-line string value in an HCL configuration file. + + + +```json +{ + "ui_config": [ + { + "dashboard_url_templates": [ + { + "service": "https://grafana.example.com/d/lDlaj-NGz/ + service-overview?orgId=1\u0026var-service={{Service.Name}}\u0026 + var-namespace={{Service.Namespace}}\u0026 + var-partition={{Service.Partition}}\u0026var-dc={{Datacenter}}" + } + ], + "enabled": true + } + ] +} +``` + +-> **Note**: the URL is wrapped over multiple lines to make it easier to read +without horizontal scrolling in the example above however this needs to be a +normal single-line string value in a JSON configuration file. + @@ -235,6 +285,9 @@ visible to Consul operators in the configuration file while UI users can query the metrics they need without separately obtaining a token for that provider or having a token exposed to them that they might be able to use elsewhere. + + + ```hcl ui_config { enabled = true @@ -251,6 +304,34 @@ ui_config { } ``` + + + +```json +{ + "ui_config": [ + { + "enabled": true, + "metrics_provider": "example-apm", + "metrics_proxy": [ + { + "add_headers": [ + { + "name": "Authorization", + "value": "Bearer \u003ctoken\u003e" + } + ], + "base_url": "https://example-apm.com/api/v1/metrics" + } + ] + } + ] +} +``` + + + + ## Custom Metrics Providers Consul 1.9.0 includes a built-in provider for fetching metrics from @@ -484,6 +565,9 @@ named `example-provider`, which is defined in have been specified in the call to `consul.registerMetricsProvider` as in the code listing in the last section. + + + ```hcl ui_config { enabled = true @@ -497,6 +581,23 @@ ui_config { } ``` + + + +```json +{ + "ui_config": { + "enabled": true, + "metrics_provider": "example-provider", + "metrics_provide_files": ["/usr/local/bin/example-metrics-provider.js"], + "metrics_provider_options_json": "{\"foo\":\"bar\"}" + } +} +``` + + + + More than one JavaScript file may be specified in [`metrics_provider_files`](/docs/agent/options#ui_config_metrics_provider_files) and all we be served allowing flexibility if needed to include dependencies. From 9ec94fd268c257c6b12a580526dfc6e6bb1f412e Mon Sep 17 00:00:00 2001 From: Matt Siegel Date: Mon, 10 Jan 2022 12:40:11 -0500 Subject: [PATCH 147/404] Added Corresponding HTTP API Endpoints for every CLI command --- .../content/commands/acl/auth-method/create.mdx | 2 ++ .../content/commands/acl/auth-method/delete.mdx | 2 ++ website/content/commands/acl/auth-method/list.mdx | 4 +++- website/content/commands/acl/auth-method/read.mdx | 2 ++ .../content/commands/acl/auth-method/update.mdx | 2 ++ .../content/commands/acl/binding-rule/create.mdx | 2 ++ .../content/commands/acl/binding-rule/delete.mdx | 2 ++ .../content/commands/acl/binding-rule/list.mdx | 2 ++ .../content/commands/acl/binding-rule/read.mdx | 2 ++ .../content/commands/acl/binding-rule/update.mdx | 2 ++ website/content/commands/acl/bootstrap.mdx | 2 ++ website/content/commands/acl/policy/create.mdx | 2 ++ website/content/commands/acl/policy/delete.mdx | 2 ++ website/content/commands/acl/policy/list.mdx | 2 ++ website/content/commands/acl/policy/read.mdx | 2 ++ website/content/commands/acl/policy/update.mdx | 2 ++ website/content/commands/acl/role/create.mdx | 2 ++ website/content/commands/acl/role/delete.mdx | 2 ++ website/content/commands/acl/role/list.mdx | 2 ++ website/content/commands/acl/role/read.mdx | 2 ++ website/content/commands/acl/role/update.mdx | 2 ++ website/content/commands/acl/set-agent-token.mdx | 2 ++ website/content/commands/acl/token/clone.mdx | 2 ++ website/content/commands/acl/token/create.mdx | 2 ++ website/content/commands/acl/token/delete.mdx | 2 ++ website/content/commands/acl/token/list.mdx | 2 ++ website/content/commands/acl/token/read.mdx | 2 ++ website/content/commands/acl/token/update.mdx | 2 ++ website/content/commands/acl/translate-rules.mdx | 2 ++ website/content/commands/catalog/datacenters.mdx | 2 ++ website/content/commands/catalog/nodes.mdx | 2 ++ website/content/commands/catalog/services.mdx | 2 ++ website/content/commands/config/delete.mdx | 2 ++ website/content/commands/config/list.mdx | 2 ++ website/content/commands/config/read.mdx | 2 ++ website/content/commands/config/write.mdx | 2 ++ website/content/commands/connect/ca.mdx | 4 ++++ website/content/commands/event.mdx | 2 ++ website/content/commands/force-leave.mdx | 2 ++ website/content/commands/intention/check.mdx | 2 ++ website/content/commands/intention/create.mdx | 2 ++ website/content/commands/intention/delete.mdx | 2 ++ website/content/commands/intention/get.mdx | 2 ++ website/content/commands/intention/list.mdx | 2 ++ website/content/commands/intention/match.mdx | 2 ++ website/content/commands/join.mdx | 2 ++ website/content/commands/keyring.mdx | 2 ++ website/content/commands/kv/delete.mdx | 2 ++ website/content/commands/kv/get.mdx | 2 ++ website/content/commands/kv/put.mdx | 2 ++ website/content/commands/leave.mdx | 2 ++ website/content/commands/license.mdx | 15 +++++++++++---- website/content/commands/login.mdx | 2 ++ website/content/commands/logout.mdx | 2 ++ website/content/commands/maint.mdx | 2 ++ website/content/commands/members.mdx | 2 ++ website/content/commands/namespace/create.mdx | 2 ++ website/content/commands/namespace/delete.mdx | 2 ++ website/content/commands/namespace/list.mdx | 2 ++ website/content/commands/namespace/read.mdx | 2 ++ website/content/commands/namespace/update.mdx | 2 ++ website/content/commands/namespace/write.mdx | 2 ++ website/content/commands/operator/area.mdx | 12 ++++++++++++ website/content/commands/operator/autopilot.mdx | 6 ++++++ website/content/commands/operator/raft.mdx | 4 ++++ website/content/commands/reload.mdx | 2 ++ website/content/commands/rtt.mdx | 2 ++ website/content/commands/services/deregister.mdx | 2 ++ website/content/commands/services/register.mdx | 2 ++ website/content/commands/snapshot/restore.mdx | 2 ++ website/content/commands/snapshot/save.mdx | 2 ++ 71 files changed, 170 insertions(+), 5 deletions(-) diff --git a/website/content/commands/acl/auth-method/create.mdx b/website/content/commands/acl/auth-method/create.mdx index f6fe84eeb..a76c83043 100644 --- a/website/content/commands/acl/auth-method/create.mdx +++ b/website/content/commands/acl/auth-method/create.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Auth Method Create' Command: `consul acl auth-method create` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method](https://www.consul.io/api-docs/acl/auth-methods#create-an-auth-method) + The `acl auth-method create` command creates new auth methods. ## Usage diff --git a/website/content/commands/acl/auth-method/delete.mdx b/website/content/commands/acl/auth-method/delete.mdx index b0a0a10c0..57e07b030 100644 --- a/website/content/commands/acl/auth-method/delete.mdx +++ b/website/content/commands/acl/auth-method/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Auth Method Delete' Command: `consul acl auth-method delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/auth-method/:name](https://www.consul.io/api-docs/acl/auth-methods#delete-an-auth-method) + The `acl auth-method delete` command deletes an auth method. ## Usage diff --git a/website/content/commands/acl/auth-method/list.mdx b/website/content/commands/acl/auth-method/list.mdx index bb911a913..5f3b62da2 100644 --- a/website/content/commands/acl/auth-method/list.mdx +++ b/website/content/commands/acl/auth-method/list.mdx @@ -7,7 +7,9 @@ page_title: 'Commands: ACL Auth Method List' Command: `consul acl auth-method list` -The `acl auth-method list`s command lists all auth methods. By default it will not show metadata. +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-methods](https://www.consul.io/api-docs/acl/auth-methods#list-auth-methods) + +The `acl auth-method list` command lists all auth methods. By default it will not show metadata. ## Usage diff --git a/website/content/commands/acl/auth-method/read.mdx b/website/content/commands/acl/auth-method/read.mdx index f24c78a85..2568a82cf 100644 --- a/website/content/commands/acl/auth-method/read.mdx +++ b/website/content/commands/acl/auth-method/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Auth Method Read' Command: `consul acl auth-method read` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-method/:name](https://www.consul.io/api-docs/acl/auth-methods#read-an-auth-method) + The `acl auth-method read` command reads and displays an auth method's details. ## Usage diff --git a/website/content/commands/acl/auth-method/update.mdx b/website/content/commands/acl/auth-method/update.mdx index db70c72e4..86536a550 100644 --- a/website/content/commands/acl/auth-method/update.mdx +++ b/website/content/commands/acl/auth-method/update.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Auth Method Update' Command: `consul acl auth-method update` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method/:name](https://www.consul.io/api-docs/acl/auth-methods#update-an-auth-method) + The `acl auth-method update` command is used to update an auth method. The default operations is to merge the current auth method with those values provided to the command invocation. Therefore to update just one field, only diff --git a/website/content/commands/acl/binding-rule/create.mdx b/website/content/commands/acl/binding-rule/create.mdx index 381ded246..a7e4d1a57 100644 --- a/website/content/commands/acl/binding-rule/create.mdx +++ b/website/content/commands/acl/binding-rule/create.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Binding Rule Create' Command: `consul acl binding-rule create` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule](https://www.consul.io/api-docs/acl/binding-rules#create-a-binding-rule) + The `acl binding-rule create` command creates new binding rules. ## Usage diff --git a/website/content/commands/acl/binding-rule/delete.mdx b/website/content/commands/acl/binding-rule/delete.mdx index d6ada8d9b..beb39313b 100644 --- a/website/content/commands/acl/binding-rule/delete.mdx +++ b/website/content/commands/acl/binding-rule/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Binding Rule Delete' Command: `consul acl binding-rule delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/binding-rule/:id](https://www.consul.io/api-docs/acl/binding-rules#delete-a-binding-rule) + The `acl binding-rule delete` command deletes a binding rule. ## Usage diff --git a/website/content/commands/acl/binding-rule/list.mdx b/website/content/commands/acl/binding-rule/list.mdx index 1e7a1018c..8517f5ecc 100644 --- a/website/content/commands/acl/binding-rule/list.mdx +++ b/website/content/commands/acl/binding-rule/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Binding Rule List' Command: `consul acl binding-rule list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rules](https://www.consul.io/api-docs/acl/binding-rules#list-binding-rules) + The `acl binding-rule list` command lists all binding rules. By default it will not show metadata. ## Usage diff --git a/website/content/commands/acl/binding-rule/read.mdx b/website/content/commands/acl/binding-rule/read.mdx index 550dc2478..0a801efbe 100644 --- a/website/content/commands/acl/binding-rule/read.mdx +++ b/website/content/commands/acl/binding-rule/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Binding Rule Read' Command: `consul acl binding-rule read` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rule/:id](https://www.consul.io/api-docs/acl/binding-rules#read-a-binding-rule) + The `acl binding-rule read` command reads and displays a binding rules details. ## Usage diff --git a/website/content/commands/acl/binding-rule/update.mdx b/website/content/commands/acl/binding-rule/update.mdx index a42414157..742d5fe14 100644 --- a/website/content/commands/acl/binding-rule/update.mdx +++ b/website/content/commands/acl/binding-rule/update.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Binding Rule Update' Command: `consul acl binding-rule update` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule/:id](https://www.consul.io/api-docs/acl/binding-rules#update-a-binding-rule) + The `acl binding-rule update` command is used to update a binding rule. The default operations is to merge the current binding rule with those values provided to the command invocation. Therefore to update just one field, only diff --git a/website/content/commands/acl/bootstrap.mdx b/website/content/commands/acl/bootstrap.mdx index 92c651b84..f3a67ede8 100644 --- a/website/content/commands/acl/bootstrap.mdx +++ b/website/content/commands/acl/bootstrap.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Bootstrap' Command: `consul acl bootstrap` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/bootstrap](https://www.consul.io/api-docs/acl#bootstrap-acls) + 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 diff --git a/website/content/commands/acl/policy/create.mdx b/website/content/commands/acl/policy/create.mdx index 9067675c4..f99d58c83 100644 --- a/website/content/commands/acl/policy/create.mdx +++ b/website/content/commands/acl/policy/create.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Policy Create' Command: `consul acl policy create` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/policy](https://www.consul.io/api-docs/acl/policies#create-a-policy) + The `acl policy create` command creates new policies. The policies rules can either be set explicitly or the `-from-token` parameter may be used to load the rules from a legacy ACL token. When loading the rules from an existing legacy ACL token, the rules get translated from the legacy syntax diff --git a/website/content/commands/acl/policy/delete.mdx b/website/content/commands/acl/policy/delete.mdx index a3c02423b..ada285a67 100644 --- a/website/content/commands/acl/policy/delete.mdx +++ b/website/content/commands/acl/policy/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Policy Delete' Command: `consul acl policy delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/policy/:id](https://www.consul.io/api-docs/acl/policies#delete-a-policy) + The `acl policy delete` command deletes a policy. Policies may be deleted by their ID or by name. ## Usage diff --git a/website/content/commands/acl/policy/list.mdx b/website/content/commands/acl/policy/list.mdx index e46348116..374e81de3 100644 --- a/website/content/commands/acl/policy/list.mdx +++ b/website/content/commands/acl/policy/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Policy List' Command: `consul acl policy list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policies](https://www.consul.io/api-docs/acl/policies#list-policies) + The `acl policy list` command lists all policies. By default it will not show metadata. ## Usage diff --git a/website/content/commands/acl/policy/read.mdx b/website/content/commands/acl/policy/read.mdx index 51a4b67db..2f069a354 100644 --- a/website/content/commands/acl/policy/read.mdx +++ b/website/content/commands/acl/policy/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Policy Read' Command: `consul acl policy read` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policy/:id](https://www.consul.io/api-docs/acl/policies#read-a-policy) + The `acl policy read` command reads and displays a policies details. ## Usage diff --git a/website/content/commands/acl/policy/update.mdx b/website/content/commands/acl/policy/update.mdx index 5aa93a05d..3ec5956cf 100644 --- a/website/content/commands/acl/policy/update.mdx +++ b/website/content/commands/acl/policy/update.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Policy Update' Command: `consul acl policy update` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/policy/:id](https://www.consul.io/api-docs/acl/policies#update-a-policy) + The `acl policy update` command is used to update a policy. The default operations is to merge the current policy with those values provided to the command invocation. Therefore to update just one field, only the `-id` or `-name` options and the option to modify must be provided. Note that renaming diff --git a/website/content/commands/acl/role/create.mdx b/website/content/commands/acl/role/create.mdx index f97586c7e..1b0e39df1 100644 --- a/website/content/commands/acl/role/create.mdx +++ b/website/content/commands/acl/role/create.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Role Create' Command: `consul acl role create` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role](https://www.consul.io/api-docs/acl/roles#create-a-role) + The `acl role create` command creates new roles. ## Usage diff --git a/website/content/commands/acl/role/delete.mdx b/website/content/commands/acl/role/delete.mdx index 80762aa67..c33fc76ac 100644 --- a/website/content/commands/acl/role/delete.mdx +++ b/website/content/commands/acl/role/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Role Delete' Command: `consul acl role delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/role/:id](https://www.consul.io/api-docs/acl/roles#delete-a-role) + The `acl role delete` command deletes a role. Roles may be deleted by their ID or by name. ## Usage diff --git a/website/content/commands/acl/role/list.mdx b/website/content/commands/acl/role/list.mdx index 9961d5d85..ea8c110b9 100644 --- a/website/content/commands/acl/role/list.mdx +++ b/website/content/commands/acl/role/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Role List' Command: `consul acl role list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/roles](https://www.consul.io/api-docs/acl/roles#list-roles) + The `acl role list` command lists all roles. By default it will not show metadata. ## Usage diff --git a/website/content/commands/acl/role/read.mdx b/website/content/commands/acl/role/read.mdx index a9d5416db..4c248a943 100644 --- a/website/content/commands/acl/role/read.mdx +++ b/website/content/commands/acl/role/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Role Read' Command: `consul acl role read` +Corresponding HTTP API Endpoints: [\[GET\] /v1/acl/role/:id](https://www.consul.io/api-docs/acl/roles#read-a-role), [\[GET\] /v1/acl/role/name/:name](https://www.consul.io/api-docs/acl/roles#read-a-role-by-name) + The `acl role read` command reads and displays a roles details. ## Usage diff --git a/website/content/commands/acl/role/update.mdx b/website/content/commands/acl/role/update.mdx index 99696e469..52a7c82c8 100644 --- a/website/content/commands/acl/role/update.mdx +++ b/website/content/commands/acl/role/update.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Role Update' Command: `consul acl role update` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role/:id](https://www.consul.io/api-docs/acl/roles#update-a-role) + The `acl role update` command is used to update a role. The default operations is to merge the current role with those values provided to the command invocation. Therefore to update just one field, only the `-id` or `-name` options and the option to diff --git a/website/content/commands/acl/set-agent-token.mdx b/website/content/commands/acl/set-agent-token.mdx index d5caa308c..6c574a828 100644 --- a/website/content/commands/acl/set-agent-token.mdx +++ b/website/content/commands/acl/set-agent-token.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Set Agent Token' Command: `consul acl set-agent-token` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/token/:type](https://www.consul.io/api-docs/agent#update-acl-tokens) + This command updates the ACL tokens currently in use by the agent. It can be used to introduce ACL tokens to the agent for the first time, or to update tokens that were initially loaded from the agent's configuration. Tokens are not persisted unless diff --git a/website/content/commands/acl/token/clone.mdx b/website/content/commands/acl/token/clone.mdx index 893bb56a7..c5a78434e 100644 --- a/website/content/commands/acl/token/clone.mdx +++ b/website/content/commands/acl/token/clone.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Token Clone' Command: `consul acl token clone` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID/clone](https://www.consul.io/api-docs/acl/tokens#clone-a-token) + The `acl token clone` command clones an existing token. ## Usage diff --git a/website/content/commands/acl/token/create.mdx b/website/content/commands/acl/token/create.mdx index 760a3ee9e..b72e881c4 100644 --- a/website/content/commands/acl/token/create.mdx +++ b/website/content/commands/acl/token/create.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Token Create' Command: `consul acl token create` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token](https://www.consul.io/api-docs/acl/tokens#create-a-token) + This command creates new tokens. When creating a new token, policies may be linked using either the `-policy-id` or the `-policy-name` options. When specifying policies by IDs you may use a unique prefix of the UUID as a shortcut for specifying the entire UUID. diff --git a/website/content/commands/acl/token/delete.mdx b/website/content/commands/acl/token/delete.mdx index edd2e8ce0..b3b219e8f 100644 --- a/website/content/commands/acl/token/delete.mdx +++ b/website/content/commands/acl/token/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Token Delete' Command: `consul acl token delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/token/:AccessorID](https://www.consul.io/api-docs/acl/tokens#delete-a-token) + The `acl token delete` command deletes a token. ## Usage diff --git a/website/content/commands/acl/token/list.mdx b/website/content/commands/acl/token/list.mdx index 2458a102e..fc4e970b5 100644 --- a/website/content/commands/acl/token/list.mdx +++ b/website/content/commands/acl/token/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Token List' Command: `consul acl token list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/tokens](https://www.consul.io/api-docs/acl/tokens#list-tokens) + The `acl token list` command lists all tokens. By default it will not show metadata. ## Usage diff --git a/website/content/commands/acl/token/read.mdx b/website/content/commands/acl/token/read.mdx index 584fbeed8..82f531945 100644 --- a/website/content/commands/acl/token/read.mdx +++ b/website/content/commands/acl/token/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Token Read' Command: `consul acl token read` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/token/:AccessorID](https://www.consul.io/api-docs/acl/tokens#read-a-token) + The `acl token read` command reads and displays a token details. ## Usage diff --git a/website/content/commands/acl/token/update.mdx b/website/content/commands/acl/token/update.mdx index 00947cea2..d96835c33 100644 --- a/website/content/commands/acl/token/update.mdx +++ b/website/content/commands/acl/token/update.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: ACL Token Update' Command: `consul acl token update` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID](https://www.consul.io/api-docs/acl/tokens#update-a-token) + The `acl token update` command will update a token. Some parts of the token like whether the token is local to the datacenter cannot be changed. diff --git a/website/content/commands/acl/translate-rules.mdx b/website/content/commands/acl/translate-rules.mdx index 69994ccee..590febbb4 100644 --- a/website/content/commands/acl/translate-rules.mdx +++ b/website/content/commands/acl/translate-rules.mdx @@ -10,6 +10,8 @@ It will be removed in a future major release when support for the legacy ACL sys Command: `consul acl translate-rules` +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/rules/translate/:accessor_id](https://www.consul.io/api-docs/acl#translate-a-legacy-token-s-rules) + This command translates the legacy ACL rule syntax into the new syntax. ### Usage diff --git a/website/content/commands/catalog/datacenters.mdx b/website/content/commands/catalog/datacenters.mdx index a47b8a399..3c31b5bd8 100644 --- a/website/content/commands/catalog/datacenters.mdx +++ b/website/content/commands/catalog/datacenters.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Catalog List Datacenters' Command: `consul catalog datacenters` +Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/datacenters](https://www.consul.io/api-docs/catalog#list-datacenters) + The `catalog datacenters` command prints all known datacenters. ## Examples diff --git a/website/content/commands/catalog/nodes.mdx b/website/content/commands/catalog/nodes.mdx index ced2d9e8e..bf5c5648f 100644 --- a/website/content/commands/catalog/nodes.mdx +++ b/website/content/commands/catalog/nodes.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Catalog List Nodes' Command: `consul catalog nodes` +Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/nodes](https://www.consul.io/api-docs/catalog#list-nodes) + The `catalog nodes` command prints all known nodes and metadata about them. It can also query for nodes that match a particular metadata or provide a particular service. diff --git a/website/content/commands/catalog/services.mdx b/website/content/commands/catalog/services.mdx index fac1ae858..abd53af69 100644 --- a/website/content/commands/catalog/services.mdx +++ b/website/content/commands/catalog/services.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Catalog List Services' Command: `consul catalog services` +Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/services](https://www.consul.io/api-docs/catalog#list-services) + The `catalog services` command prints all known services. It can also query for services that match particular metadata or list the services that a particular node provides. diff --git a/website/content/commands/config/delete.mdx b/website/content/commands/config/delete.mdx index eda5c55d7..afc377ba1 100644 --- a/website/content/commands/config/delete.mdx +++ b/website/content/commands/config/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Config Delete' Command: `consul config delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/config/:kind/:name](https://www.consul.io/api-docs/config#delete-configuration) + The `config delete` command deletes the configuration entry specified by the kind and name. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. diff --git a/website/content/commands/config/list.mdx b/website/content/commands/config/list.mdx index 64072dcf4..9912e3d37 100644 --- a/website/content/commands/config/list.mdx +++ b/website/content/commands/config/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Config List' Command: `consul config list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/config/:kind](https://www.consul.io/api-docs/config#list-configurations) + The `config list` command lists all given config entries of the given kind. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. diff --git a/website/content/commands/config/read.mdx b/website/content/commands/config/read.mdx index b9e1bd29f..ea412270d 100644 --- a/website/content/commands/config/read.mdx +++ b/website/content/commands/config/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Config Read' Command: `consul config read` +Corresponding HTTP API Endpoint: [\[GET\] /v1/config/:kind/:name](https://www.consul.io/api-docs/config#get-configuration) + The `config read` command reads the config entry specified by the given kind and name and outputs its JSON representation. See the [configuration entries docs](/docs/agent/config-entries) for more diff --git a/website/content/commands/config/write.mdx b/website/content/commands/config/write.mdx index 36708694d..d7b0f6ac6 100644 --- a/website/content/commands/config/write.mdx +++ b/website/content/commands/config/write.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Config Write' Command: `consul config write` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/config](https://www.consul.io/api-docs/config#apply-configuration) + The `config write` command creates or updates a centralized config entry. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. diff --git a/website/content/commands/connect/ca.mdx b/website/content/commands/connect/ca.mdx index 452c110ee..583476f35 100644 --- a/website/content/commands/connect/ca.mdx +++ b/website/content/commands/connect/ca.mdx @@ -44,6 +44,8 @@ This command displays the current CA configuration. Usage: `consul connect ca get-config [options]` +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/ca/configuration](https://www.consul.io/api-docs/connect/ca#get-ca-configuration) + #### API Options @include 'http_api_options_client.mdx' @@ -69,6 +71,8 @@ will be triggered. Usage: `consul connect ca set-config [options]` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/connect/ca/configuration](https://www.consul.io/api-docs/connect/ca#update-ca-configuration) + #### API Options @include 'http_api_options_client.mdx' diff --git a/website/content/commands/event.mdx b/website/content/commands/event.mdx index 5ae766951..4a33dec0d 100644 --- a/website/content/commands/event.mdx +++ b/website/content/commands/event.mdx @@ -13,6 +13,8 @@ description: >- Command: `consul event` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/event/fire/:name](https://www.consul.io/api-docs/event#fire-event) + The `event` command provides a mechanism to fire a custom user event to an entire datacenter. These events are opaque to Consul, but they can be used to build scripting infrastructure to do automated deploys, restart services, diff --git a/website/content/commands/force-leave.mdx b/website/content/commands/force-leave.mdx index cbfb21082..183dba282 100644 --- a/website/content/commands/force-leave.mdx +++ b/website/content/commands/force-leave.mdx @@ -11,6 +11,8 @@ description: >- Command: `consul force-leave` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/force-leave/:node](https://www.consul.io/api-docs/agent#force-leave-and-shutdown) + The `force-leave` command forces a member of a Consul cluster to enter the "left" state. The purpose of this method is to force-remove a node that has failed or was shutdown without a [graceful leave](/commands/leave). diff --git a/website/content/commands/intention/check.mdx b/website/content/commands/intention/check.mdx index 346966160..9a2c53a7c 100644 --- a/website/content/commands/intention/check.mdx +++ b/website/content/commands/intention/check.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Intention Check' Command: `consul intention check` +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/check](https://www.consul.io/api-docs/connect/intentions#check-intention-result) + The `intention check` command checks whether a connection attempt between two services would be authorized given the current set of intentions and Consul configuration. diff --git a/website/content/commands/intention/create.mdx b/website/content/commands/intention/create.mdx index c741bff51..95fc8ad27 100644 --- a/website/content/commands/intention/create.mdx +++ b/website/content/commands/intention/create.mdx @@ -13,6 +13,8 @@ entry for the destination. Command: `consul intention create` +Corresponding HTTP API Endpoint: [\[POST\] /v1/connect/intentions](https://www.consul.io/api-docs/connect/intentions#create-intention-with-id) + The `intention create` command creates or updates an L4 intention. ## Usage diff --git a/website/content/commands/intention/delete.mdx b/website/content/commands/intention/delete.mdx index a0f35af65..8f88fc3a3 100644 --- a/website/content/commands/intention/delete.mdx +++ b/website/content/commands/intention/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Intention Delete' Command: `consul intention delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/connect/intentions/exact](https://www.consul.io/api-docs/connect/intentions#delete-intention-by-name) + The `intention delete` command deletes a matching intention. -> **Deprecated** - The one argument form of this command is deprecated in diff --git a/website/content/commands/intention/get.mdx b/website/content/commands/intention/get.mdx index c455028e6..3a78babf1 100644 --- a/website/content/commands/intention/get.mdx +++ b/website/content/commands/intention/get.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Intention Get' Command: `consul intention get` +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/exact](https://www.consul.io/api-docs/connect/intentions##read-specific-intention-by-name) + The `intention get` command shows a single intention. -> **Deprecated** - The one argument form of this command is deprecated in diff --git a/website/content/commands/intention/list.mdx b/website/content/commands/intention/list.mdx index f742f6e31..a876a5d4f 100644 --- a/website/content/commands/intention/list.mdx +++ b/website/content/commands/intention/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Intention List' Command: `consul intention list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions](https://www.consul.io/api-docs/connect/intentions#list-intentions) + The `intention list` command shows all intentions including ID and precedence. ## Usage diff --git a/website/content/commands/intention/match.mdx b/website/content/commands/intention/match.mdx index 99ad3d32b..f6cec45f1 100644 --- a/website/content/commands/intention/match.mdx +++ b/website/content/commands/intention/match.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Intention Match' Command: `consul intention match` +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/match](https://www.consul.io/api-docs/connect/intentions#list-matching-intentions) + The `intention match` command shows the list of intentions that match a given source or destination. The list of intentions is listed in evaluation order: the first intention that matches a request would be evaluated. diff --git a/website/content/commands/join.mdx b/website/content/commands/join.mdx index 8968ace5f..6871b547c 100644 --- a/website/content/commands/join.mdx +++ b/website/content/commands/join.mdx @@ -12,6 +12,8 @@ description: >- Command: `consul join` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/join/:address](https://www.consul.io/api-docs/agent#join-agent) + The `join` command tells a Consul agent to join an existing cluster. A new Consul agent may join any node in the existing cluster. After joining with one member, the gossip communication will propagate the updated membership diff --git a/website/content/commands/keyring.mdx b/website/content/commands/keyring.mdx index 168a46ca6..445dffc49 100644 --- a/website/content/commands/keyring.mdx +++ b/website/content/commands/keyring.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Keyring' Command: `consul keyring` +Corresponding HTTP API Endpoints: [\[VARIES\] /v1/operator/keyring](https://www.consul.io/api-docs/operator/keyring) + The `keyring` command is used to examine and modify the encryption keys used in Consul's [Gossip Pools](/docs/internals/gossip). It is capable of distributing new encryption keys to the cluster, retiring old encryption keys, diff --git a/website/content/commands/kv/delete.mdx b/website/content/commands/kv/delete.mdx index 7c5092108..56ca09e02 100644 --- a/website/content/commands/kv/delete.mdx +++ b/website/content/commands/kv/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: KV Delete' Command: `consul kv delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/kv/:key](https://www.consul.io/api-docs/kv#delete-key) + The `kv delete` command removes the value from Consul's KV store at the given path. If no key exists at the path, no action is taken. diff --git a/website/content/commands/kv/get.mdx b/website/content/commands/kv/get.mdx index c2f8bf913..742524403 100644 --- a/website/content/commands/kv/get.mdx +++ b/website/content/commands/kv/get.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: KV Get' Command: `consul kv get` +Corresponding HTTP API Endpoint: [\[GET\] /v1/kv/:key](https://www.consul.io/api-docs/kv#read-key) + The `kv get` command is used to retrieve the value from Consul's KV store at the given key name. If no key exists with that name, an error is returned. If a key exists with that name but has no data, nothing is returned. diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index 76778d088..3f4afb83a 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: KV Put' Command: `consul kv put` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/kv/:key](https://www.consul.io/api-docs/kv#create-update-key) + The `kv put` command writes the data to the given path in the KV store. ## Usage diff --git a/website/content/commands/leave.mdx b/website/content/commands/leave.mdx index 020c3380e..fcf6dbcef 100644 --- a/website/content/commands/leave.mdx +++ b/website/content/commands/leave.mdx @@ -11,6 +11,8 @@ description: >- Command: `consul leave` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/leave](https://www.consul.io/api-docs/agent#graceful-leave-and-shutdown) + The `leave` command triggers a graceful leave and shutdown of the agent. It is used to ensure other nodes see the agent as "left" instead of "failed". Nodes that leave will not attempt to re-join the cluster diff --git a/website/content/commands/license.mdx b/website/content/commands/license.mdx index 133e2f0db..e8f12d3a8 100644 --- a/website/content/commands/license.mdx +++ b/website/content/commands/license.mdx @@ -14,7 +14,7 @@ Command: `consul license` The `license` command provides a datacenter-level view of the Consul Enterprise license. This was added in Consul 1.1.0 but Consul 1.10.0 removed the ability to set and reset the license using the CLI. -See the [licensing documentation](/docs/enterprise/license/overview) for more information about +See the [licensing documentation](/docs/enterprise/license/overview) for more information about Consul Enterprise license management. If ACLs are enabled then a token with operator privileges may be required in @@ -44,9 +44,9 @@ Usage: consul license [options] [args] Retrieve the current license: $ consul license get - + Inspect a license: - + $ consul license inspect "" Reset the current license: @@ -66,7 +66,7 @@ Subcommands: ## inspect This command inspects and validates a license. Just like a Consul agent it -can load the license from a file on disk or from the `CONSUL_LICENSE` and +can load the license from a file on disk or from the `CONSUL_LICENSE` and `CONSUL_LICENSE_PATH` environment variables. Usage: `consul license inspect [] []` @@ -117,12 +117,15 @@ Features: License is valid ``` + ## put -> **Deprecated** The ability to manage the cluster's license via the CLI was removed in Consul 1.10. While the CLI command still exists it will always return an error. This command will be fully removed in a future release. +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/license](https://www.consul.io/api-docs/operator/license#updating-the-consul-license) + This command sets the Consul Enterprise license. Usage: `consul license put [options] LICENSE` @@ -153,6 +156,8 @@ Licensed Features: ## get +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/license](https://www.consul.io/api-docs/operator/license#getting-the-consul-license) + This command gets the Consul Enterprise license. Usage: `consul license get [options]` @@ -187,6 +192,8 @@ Licensed Features: was removed in Consul 1.10. While the CLI command still exists it will always return an error. This command will be fully removed in a future release. +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/license](https://www.consul.io/api-docs/operator/license#resetting-the-consul-license) + Resets license for the datacenter to the one builtin in Consul binary, if it is still valid. If the builtin license is invalid, the current one stays active. diff --git a/website/content/commands/login.mdx b/website/content/commands/login.mdx index a19cf0ec9..80b16363f 100644 --- a/website/content/commands/login.mdx +++ b/website/content/commands/login.mdx @@ -10,6 +10,8 @@ description: > Command: `consul login` +Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/login](https://www.consul.io/api-docs/acl#login-to-auth-method) + The `login` command will exchange the provided third party credentials with the requested auth method for a newly minted Consul ACL token. The companion command `consul logout` should be used to destroy any tokens created this way diff --git a/website/content/commands/logout.mdx b/website/content/commands/logout.mdx index ced33c583..2084565cc 100644 --- a/website/content/commands/logout.mdx +++ b/website/content/commands/logout.mdx @@ -10,6 +10,8 @@ description: > Command: `consul logout` +Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/logout](https://www.consul.io/api-docs/acl#logout-from-auth-method) + The `logout` command will destroy the provided token if it was created from `consul login`. diff --git a/website/content/commands/maint.mdx b/website/content/commands/maint.mdx index 16e517e12..e1c5b0654 100644 --- a/website/content/commands/maint.mdx +++ b/website/content/commands/maint.mdx @@ -9,6 +9,8 @@ description: | Command: `consul maint` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/maintenance](https://www.consul.io/api-docs/agent#enable-maintenance-mode) + The `maint` command provides control of service maintenance mode. Using the command, it is possible to mark a service provided by a node or all the services on the node as a whole as "under maintenance". In this mode of operation, the service diff --git a/website/content/commands/members.mdx b/website/content/commands/members.mdx index 5819f70a4..3c37e1e2f 100644 --- a/website/content/commands/members.mdx +++ b/website/content/commands/members.mdx @@ -11,6 +11,8 @@ description: >- Command: `consul members` +Corresponding HTTP API Endpoint: [\[GET\] /v1/agent/members](https://www.consul.io/api-docs/agent#list-members) + The `members` command outputs the current list of members that a Consul agent knows about, along with their state. The state of a node can only be "alive", "left", or "failed". diff --git a/website/content/commands/namespace/create.mdx b/website/content/commands/namespace/create.mdx index f79db884a..af8c3bbbd 100644 --- a/website/content/commands/namespace/create.mdx +++ b/website/content/commands/namespace/create.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Namespace Create' Command: `consul namespace create` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace](https://www.consul.io/api-docs/namespaces#create-a-namespace) + This `namespace create` command creates a namespaces using the CLI parameters provided. diff --git a/website/content/commands/namespace/delete.mdx b/website/content/commands/namespace/delete.mdx index 3bd4afab9..d9f0f2499 100644 --- a/website/content/commands/namespace/delete.mdx +++ b/website/content/commands/namespace/delete.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Namespace Delete' Command: `consul namespace delete` +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#delete-a-namespace) + This `namespace delete` command deletes a namespace. This was added in Consul Enterprise 1.7.0. If diff --git a/website/content/commands/namespace/list.mdx b/website/content/commands/namespace/list.mdx index fdbbb25d8..0f2254725 100644 --- a/website/content/commands/namespace/list.mdx +++ b/website/content/commands/namespace/list.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Namespace List' Command: `consul namespace list` +Corresponding HTTP API Endpoint: [\[GET\] /v1/namespaces](https://www.consul.io/api-docs/namespaces#list-all-namespaces) + This `namespace list` command lists all namespace configurations. This was added in Consul Enterprise 1.7.0. If diff --git a/website/content/commands/namespace/read.mdx b/website/content/commands/namespace/read.mdx index d114a8eaf..54d5956b7 100644 --- a/website/content/commands/namespace/read.mdx +++ b/website/content/commands/namespace/read.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Namespace Read' Command: `consul namespace read` +Corresponding HTTP API Endpoint: [\[GET\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#read-a-namespace) + This `namespace read` command reads a namespaces configuration. This was added in Consul Enterprise 1.7.0. If diff --git a/website/content/commands/namespace/update.mdx b/website/content/commands/namespace/update.mdx index b2c79f9bf..5cd952a38 100644 --- a/website/content/commands/namespace/update.mdx +++ b/website/content/commands/namespace/update.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Namespace Update' Command: `consul namespace update` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#update-a-namespace) + This `namespace update` command updates a namespaces using the CLI parameters provided. diff --git a/website/content/commands/namespace/write.mdx b/website/content/commands/namespace/write.mdx index 31f0a9a38..8c90ffc5f 100644 --- a/website/content/commands/namespace/write.mdx +++ b/website/content/commands/namespace/write.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Namespace Write' Command: `consul namespace write` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#update-a-namespace) + This `namespace write` command creates or updates a namespace's configuration from its full definition. This was added in Consul Enterprise 1.7.0. diff --git a/website/content/commands/operator/area.mdx b/website/content/commands/operator/area.mdx index 590d33678..0597ef986 100644 --- a/website/content/commands/operator/area.mdx +++ b/website/content/commands/operator/area.mdx @@ -47,6 +47,8 @@ read or write privileges to use these commands. ## create +Corresponding HTTP API Endpoint: [\[POST\] /v1/operator/area](https://www.consul.io/api-docs/operator/area#create-network-area) + This command creates a new network area. Usage: `consul operator area create [options]` @@ -79,6 +81,8 @@ The return code will indicate success or failure. ## delete +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/area/:uuid](https://www.consul.io/api-docs/operator/area#delete-network-area) + This command deletes an existing network area. Usage: `consul operator area delete [options]` @@ -107,6 +111,8 @@ The return code will indicate success or failure. ## join +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid/join](https://www.consul.io/api-docs/operator/area#join-network-area) + This command joins Consul servers into an existing network area by address, such as an IP or hostname with an optional port. Multiple addresses may be given. @@ -142,6 +148,8 @@ The return code will indicate success or failure. ## list +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area](https://www.consul.io/api-docs/operator/area#list-network-areas) + This command lists all network areas. Usage: `consul operator area list [options]` @@ -170,6 +178,8 @@ The return code will indicate success or failure. ## members +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area/:uuid/members](https://www.consul.io/api-docs/operator/area#list-network-area-members) + This command displays Consul server nodes present in a network area, or all areas if no area is specified. @@ -225,6 +235,8 @@ The return code will indicate success or failure. ## update +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid](https://www.consul.io/api-docs/operator/area#update-network-area) + This command updates the configuration of network area. Usage: `consul operator area update [options]` diff --git a/website/content/commands/operator/autopilot.mdx b/website/content/commands/operator/autopilot.mdx index a0949b9bc..24fa2a1db 100644 --- a/website/content/commands/operator/autopilot.mdx +++ b/website/content/commands/operator/autopilot.mdx @@ -28,6 +28,8 @@ Subcommands: ## get-config +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/configuration](https://www.consul.io/api-docs/operator/autopilot#read-configuration) + This command displays the current autopilot configuration. Usage: `consul operator autopilot get-config [options]` @@ -53,6 +55,8 @@ UpgradeMigrationTag = "" ## set-config +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/autopilot/configuration](https://www.consul.io/api-docs/operator/autopilot#update-configuration) + Modifies the current Autopilot configuration. Usage: `consul operator autopilot set-config [options]` @@ -101,6 +105,8 @@ The return code will indicate success or failure. ## state +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/state](https://www.consul.io/api-docs/operator/autopilot#read-the-autopilot-state) + This command displays the current autopilot state. Usage: `consul operator autopilot state [options]` diff --git a/website/content/commands/operator/raft.mdx b/website/content/commands/operator/raft.mdx index 5d8db1fc5..7649261c6 100644 --- a/website/content/commands/operator/raft.mdx +++ b/website/content/commands/operator/raft.mdx @@ -29,6 +29,8 @@ Subcommands: ## list-peers +Corresponding HTTP API Endpoint: [\[GET\] /v1/status/peers](https://www.consul.io/api-docs/status#list-raft-peers) + This command displays the current Raft peer configuration. Usage: `consul operator raft list-peers -stale=[true|false]` @@ -62,6 +64,8 @@ configuration. ## remove-peer +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/raft/peer](https://www.consul.io/api-docs/operator/raft#delete-raft-peer) + This command removes the Consul server with given address from the Raft configuration. There are rare cases where a peer may be left behind in the Raft configuration diff --git a/website/content/commands/reload.mdx b/website/content/commands/reload.mdx index 930dc8746..01f68991e 100644 --- a/website/content/commands/reload.mdx +++ b/website/content/commands/reload.mdx @@ -8,6 +8,8 @@ description: The `reload` command triggers a reload of configuration files for t Command: `consul reload` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/reload](https://www.consul.io/api-docs/agent#reload-agent) + The `reload` command triggers a reload of configuration files for the agent. The `SIGHUP` signal is usually used to trigger a reload of configurations, diff --git a/website/content/commands/rtt.mdx b/website/content/commands/rtt.mdx index 49294bb2b..f6622edf0 100644 --- a/website/content/commands/rtt.mdx +++ b/website/content/commands/rtt.mdx @@ -9,6 +9,8 @@ description: | Command: `consul rtt` +Corresponding HTTP API Endpoints: [\[GET\] /v1/coordinate/datacenters](https://www.consul.io/api-docs/coordinate#read-wan-coordinates), [\[GET\] /v1/coordinate/nodes](https://www.consul.io/api-docs/coordinate#read-lan-coordinates-for-all-nodes) + The `rtt` command estimates the network round trip time between two nodes using Consul's network coordinate model of the cluster. diff --git a/website/content/commands/services/deregister.mdx b/website/content/commands/services/deregister.mdx index a6e3fd996..2799531da 100644 --- a/website/content/commands/services/deregister.mdx +++ b/website/content/commands/services/deregister.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Services Deregister' Command: `consul services deregister` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/deregister/:service_id](https://www.consul.io/api-docs/agent/service#deregister-service) + The `services deregister` command deregisters a service with the local agent. Note that this command can only deregister services that were registered with the agent specified (defaults to the local agent) and is meant to diff --git a/website/content/commands/services/register.mdx b/website/content/commands/services/register.mdx index 70e686f79..195baae52 100644 --- a/website/content/commands/services/register.mdx +++ b/website/content/commands/services/register.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Services Register' Command: `consul services register` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/register](https://www.consul.io/api-docs/agent/service#register-service) + The `services register` command registers a service with the local agent. This command returns after registration and must be paired with explicit service deregistration. This command simplifies service registration from diff --git a/website/content/commands/snapshot/restore.mdx b/website/content/commands/snapshot/restore.mdx index 89e4ba394..5da2b11ac 100644 --- a/website/content/commands/snapshot/restore.mdx +++ b/website/content/commands/snapshot/restore.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Snapshot Restore' Command: `consul snapshot restore` +Corresponding HTTP API Endpoint: [\[PUT\] /v1/snapshot](https://www.consul.io/api-docs/snapshot#restore-snapshot) + The `snapshot restore` command is used to restore an atomic, point-in-time snapshot of the state of the Consul servers which includes key/value entries, service catalog, prepared queries, sessions, and ACLs. The snapshot is read diff --git a/website/content/commands/snapshot/save.mdx b/website/content/commands/snapshot/save.mdx index ecb355735..71c7cb1ee 100644 --- a/website/content/commands/snapshot/save.mdx +++ b/website/content/commands/snapshot/save.mdx @@ -7,6 +7,8 @@ page_title: 'Commands: Snapshot Save' Command: `consul snapshot save` +Corresponding HTTP API Endpoint: [\[GET\] /v1/snapshot](https://www.consul.io/api-docs/snapshot#generate-snapshot) + The `snapshot save` command is used to retrieve an atomic, point-in-time snapshot of the state of the Consul servers which includes key/value entries, service catalog, prepared queries, sessions, and ACLs. The snapshot is saved to From 967093f425cd70427fc92fbefb5537a850f4600b Mon Sep 17 00:00:00 2001 From: Karl Cardenas Date: Mon, 10 Jan 2022 10:45:54 -0700 Subject: [PATCH 148/404] added another example for DC and namespace failover --- .../config-entries/service-resolver.mdx | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index 6afe1265e..5a060335f 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -168,6 +168,57 @@ spec: + + {' '} + Failover to another datacenter and namespace + + + + +```hcl +Kind = "service-resolver" +Name = "product-api" +Namespace = "primary" +ConnectTimeout = "0s" +Failover = { + "*" = { + Datacenters = ["dc2"] + Namespace = "secodary" + } +} +``` + +```yaml +apiVersion: consul.hashicorp.com/v1alpha1 +kind: ServiceResolver +metadata: + name: product-api + namespace: primary +spec: + connectTimeout: 0 + failover: + namespace: 'secondary' + '*': + datacenters: ['dc2'] +``` + +```json +{ + "Kind": "service-resolver", + "Name": "product-api", + "Namespace": "primary" + "ConnectTimeout": "0s", + "Failover": { + "*": { + "Datacenters": ["dc2"] + "Namespace": "secondary" + } + } +} +``` + + + ### Consistent load balancing Apply consistent load balancing for requests based on `x-user-id` header: From 77b6e1824c65bb047bcc52fd39ae6409699bda3a Mon Sep 17 00:00:00 2001 From: Karl Cardenas Date: Mon, 10 Jan 2022 10:51:00 -0700 Subject: [PATCH 149/404] removed empty {} --- website/content/docs/connect/config-entries/service-resolver.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index 5a060335f..e5716cfd9 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -169,7 +169,6 @@ spec: - {' '} Failover to another datacenter and namespace From 095ad35891aba1fc05a6c96d2853f8d62b4965df Mon Sep 17 00:00:00 2001 From: mrspanishviking Date: Mon, 10 Jan 2022 11:22:53 -0700 Subject: [PATCH 150/404] Apply suggestions from code review Co-authored-by: Blake Covarrubias --- .../content/docs/connect/config-entries/service-resolver.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index e5716cfd9..b3560bd79 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -169,7 +169,7 @@ spec: - Failover to another datacenter and namespace + Failover to another datacenter and namespace for all service subsets. @@ -182,7 +182,7 @@ ConnectTimeout = "0s" Failover = { "*" = { Datacenters = ["dc2"] - Namespace = "secodary" + Namespace = "secondary" } } ``` From 52a667ca858da4f28d3089fdc2920016e209a776 Mon Sep 17 00:00:00 2001 From: Karl Cardenas Date: Mon, 10 Jan 2022 11:41:43 -0700 Subject: [PATCH 151/404] added additonal example for failover within DC and unique namespace --- .../config-entries/service-resolver.mdx | 62 ++++++++++++++++--- 1 file changed, 55 insertions(+), 7 deletions(-) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index b3560bd79..c4ba27d85 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -116,9 +116,9 @@ spec: -### Datacenter failover +### Failover -Enable failover for subset 'v2' to 'dc2', and all other subsets to dc3 or dc4: +Enable failover for subset `v2` to `dc2`, and all other subsets to `dc3` or `dc4`: @@ -194,22 +194,70 @@ metadata: name: product-api namespace: primary spec: - connectTimeout: 0 + connectTimeout: 0s failover: namespace: 'secondary' - '*': - datacenters: ['dc2'] + datacenters: ['dc2'] ``` ```json { "Kind": "service-resolver", "Name": "product-api", - "Namespace": "primary" + "Namespace": "primary", "ConnectTimeout": "0s", "Failover": { "*": { - "Datacenters": ["dc2"] + "Datacenters": ["dc2"], + "Namespace": "secondary" + } + } +} +``` + + + + + Failover within a datacenter and a different namespace. + + + + +```hcl +Kind = "service-resolver" +Name = "product-api" +Namespace = "primary" +ConnectTimeout = "0s" +Failover = { + "*" = { + Service = "product-api-backup" + Namespace = "secondary" + } +} +``` + +```yaml +apiVersion: consul.hashicorp.com/v1alpha1 +kind: ServiceResolver +metadata: + name: product-api + namespace: primary +spec: + connectTimeout: 0s + failover: + service: 'product-api-backup' + namespace: 'secondary' +``` + +```json +{ + "Kind": "service-resolver", + "Name": "product-api", + "Namespace": "primary", + "ConnectTimeout": "0s", + "Failover": { + "*": { + "Service": "product-api-backup", "Namespace": "secondary" } } From 14e189854431bd8889d389e1f7b74ab0cda8f417 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Mon, 10 Jan 2022 13:42:57 -0500 Subject: [PATCH 152/404] Add LastErrorMessage to /acl/replication docs (#11990) --- website/content/api-docs/acl/index.mdx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index 5c69331ed..cd7a20fc6 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -128,7 +128,8 @@ $ curl \ "ReplicatedIndex": 1976, "ReplicatedTokenIndex": 2018, "LastSuccess": "2018-11-03T06:28:58Z", - "LastError": "2016-11-03T06:28:28Z" + "LastError": "2016-11-03T06:28:28Z", + "LastErrorMessage": "failed to retrieve ACL policy updates: RPC rate limit exceeded" } ``` @@ -179,6 +180,9 @@ $ curl \ replication process is not in a good state. A zero value of "0001-01-01T00:00:00Z" will be present if no sync has resulted in an error. +- `LastErrorMessage` - The last error message produced at the time of `LastError`. + An empty string indicates that no sync has resulted in an error. + ## Translate Rules -> **Deprecated** - This endpoint was removed in Consul 1.11.0. From f9328bfdaeb53e41cdf043920a6b9ffec323c7ad Mon Sep 17 00:00:00 2001 From: Preetha <460133+preetapan@users.noreply.github.com> Date: Mon, 10 Jan 2022 13:12:42 -0600 Subject: [PATCH 153/404] Added HCL examples to service discovery page (#11989) Improved HCL examples in the service discovery docs page --- website/content/docs/discovery/services.mdx | 172 +++++++++++++++----- 1 file changed, 134 insertions(+), 38 deletions(-) diff --git a/website/content/docs/discovery/services.mdx b/website/content/docs/discovery/services.mdx index 92ed20576..213a38229 100644 --- a/website/content/docs/discovery/services.mdx +++ b/website/content/docs/discovery/services.mdx @@ -32,7 +32,91 @@ Send a `SIGHUP` to the running agent or use [`consul reload`](/commands/reload) update existing services. Alternatively, the service can be [registered dynamically](/api-docs/agent/service#register-service) using the [HTTP API](/api). -A service definition contains a set of parameters that specify various aspects of the service, including how it is discovered by other services in the network. All possible parameters are included in the following example, but only the top-level `service` parameter and its `name` parameter child are required by default. +A service definition contains a set of parameters that specify various aspects of the service, including how it is discovered by other services in the network. +All possible parameters are included in the following example, but only the top-level `service` parameter and its `name` parameter child are required by default. + + + +```hcl +service { + name = "redis" + id = "redis" + port = 80 + tags = ["primary"] + + meta = { + custom_meta_key = "custom_meta_value" + } + + tagged_addresses = { + lan = { + address = "192.168.0.55" + port = 8000 + } + + wan = { + address = "198.18.0.23" + port = 80 + } + } + + port = 8000 + socket_path = "/tmp/redis.sock" + enable_tag_override = false + + checks = [ + { + args = ["/usr/local/bin/check_redis.py"] + interval = "10s" + } + ] + + kind = "connect-proxy" + proxy_destination = "redis" + + proxy = { + destination_service_name = "redis" + destination_service_id = "redis1" + local_service_address = "127.0.0.1" + local_service_port = 9090 + local_service_socket_path = "/tmp/redis.sock" + mode = "transparent" + + transparent_proxy { + outbound_listener_port = 22500 + } + + mesh_gateway = { + mode = "local" + } + + expose = { + checks = true + + paths = [ + { + path = "/healthz" + local_path_port = 8080 + listener_port = 21500 + protocol = "http2" + } + ] + } + } + + connect = { + native = false + } + + weights = { + passing = 5 + warning = 1 + } + + token = "233b604b-b92e-48c8-a253-5f11514e4b50" + namespace = "foo" +} +``` ```json { @@ -110,6 +194,8 @@ A service definition contains a set of parameters that specify various aspects o } ``` + + The following table describes the available parameters for service definitions. ### `service` @@ -504,6 +590,51 @@ Multiple services definitions can be provided at once when registering services via the agent configuration by using the plural `services` key (registering multiple services in this manner is not supported using the HTTP API). + + + + +```hcl +services { + id = "red0" + name = "redis" + tags = [ + "primary" + ] + address = "" + port = 6000 + checks = [ + { + args = ["/bin/check_redis", "-p", "6000"] + interval = "5s" + timeout = "20s" + } + ] +} +services { + id = "red1" + name = "redis" + tags = [ + "delayed", + "secondary" + ] + address = "" + port = 7000 + checks = [ + { + args = ["/bin/check_redis", "-p", "7000"] + interval = "30s" + timeout = "60s" + } + ] +} + +``` + + + + + ```json { "services": [ @@ -545,43 +676,8 @@ multiple services in this manner is not supported using the HTTP API). } ``` -In HCL you can specify the plural `services` key (although not `service`) multiple times: - -```hcl -services { - id = "red0" - name = "redis" - tags = [ - "primary" - ] - address = "" - port = 6000 - checks = [ - { - args = ["/bin/check_redis", "-p", "6000"] - interval = "5s" - timeout = "20s" - } - ] -} -services { - id = "red1" - name = "redis" - tags = [ - "delayed", - "secondary" - ] - address = "" - port = 7000 - checks = [ - { - args = ["/bin/check_redis", "-p", "7000"] - interval = "30s" - timeout = "60s" - } - ] -} -``` + + ## Service and Tag Names with DNS From 309f1eab4b0173b4551ebd6ed563faac843dba01 Mon Sep 17 00:00:00 2001 From: Chip Vaughn Date: Mon, 10 Jan 2022 14:21:32 -0500 Subject: [PATCH 154/404] Updating HTTP API endpoints with CLI equivalent links --- website/content/api-docs/acl/auth-methods.mdx | 12 +++++++++++- website/content/api-docs/acl/binding-rules.mdx | 10 ++++++++++ website/content/api-docs/acl/index.mdx | 10 ++++++++++ website/content/api-docs/acl/policies.mdx | 12 ++++++++++++ website/content/api-docs/acl/roles.mdx | 12 ++++++++++++ website/content/api-docs/acl/tokens.mdx | 14 ++++++++++++++ website/content/api-docs/agent/index.mdx | 14 ++++++++++++++ website/content/api-docs/agent/service.mdx | 4 ++++ website/content/api-docs/catalog.mdx | 6 ++++++ website/content/api-docs/config.mdx | 8 ++++++++ website/content/api-docs/connect/ca.mdx | 4 ++++ .../content/api-docs/connect/intentions.mdx | 18 ++++++++++++++++++ website/content/api-docs/coordinate.mdx | 4 ++++ website/content/api-docs/event.mdx | 2 ++ website/content/api-docs/kv.mdx | 6 ++++++ website/content/api-docs/namespaces.mdx | 10 ++++++++++ website/content/api-docs/operator/area.mdx | 12 ++++++++++++ .../content/api-docs/operator/autopilot.mdx | 6 ++++++ website/content/api-docs/operator/keyring.mdx | 8 ++++++++ website/content/api-docs/operator/license.mdx | 6 ++++++ website/content/api-docs/operator/raft.mdx | 2 ++ website/content/api-docs/snapshot.mdx | 4 ++++ website/content/api-docs/status.mdx | 2 ++ 23 files changed, 185 insertions(+), 1 deletion(-) diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 9f4ebbbd3..076d9d2c3 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -34,7 +34,9 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -### Payload Fields +-> The corresponding CLI command is [`consul acl auth-method create`](https://www.consul.io/commands/acl/auth-method/create) + +### Parameters - `Name` `(string: )` - Specifies a name for the ACL auth method. The name can contain alphanumeric characters, dashes `-`, and underscores `_`. @@ -160,6 +162,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl auth-method read`](https://www.consul.io/commands/acl/auth-method/read) + ### Parameters - `name` `(string: )` - Specifies the name of the ACL auth method to @@ -212,6 +216,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl auth-method update`](https://www.consul.io/commands/acl/auth-method/update) + ### Parameters - `Name` `(string: )` - Specifies the name of the auth method to @@ -343,6 +349,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl auth-method delete`](https://www.consul.io/commands/acl/auth-method/delete) + ### Parameters - `name` `(string: )` - Specifies the name of the ACL auth method to @@ -385,6 +393,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl auth-method list`](https://www.consul.io/commands/acl/auth-method/list) + ### Parameters - `ns` `(string: "")` - Specifies the namespace to list diff --git a/website/content/api-docs/acl/binding-rules.mdx b/website/content/api-docs/acl/binding-rules.mdx index b598a5569..3375b2b41 100644 --- a/website/content/api-docs/acl/binding-rules.mdx +++ b/website/content/api-docs/acl/binding-rules.mdx @@ -34,6 +34,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl binding-rule create`](https://www.consul.io/commands/acl/binding-rule/create) + ### Parameters - `Description` `(string: "")` - Free form human readable description of the binding rule. @@ -158,6 +160,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl binding-rule read`](https://www.consul.io/commands/acl/binding-rule/read) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL binding rule @@ -208,6 +212,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl binding-rule update`](https://www.consul.io/commands/acl/binding-rule/update) + ### Parameters - `ID` `(string: )` - Specifies the ID of the binding rule to update. @@ -338,6 +344,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl binding-rule delete`](https://www.consul.io/commands/acl/binding-rule/delete) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL binding rule to @@ -380,6 +388,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl binding-rule list`](https://www.consul.io/commands/acl/binding-rule/list) + ## Parameters - `authmethod` `(string: "")` - Filters the binding rule list to those binding diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index 5c69331ed..162e9eb01 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -38,6 +38,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul acl bootstrap`](https://www.consul.io/commands/acl/bootstrap) + ### Sample Request ```shell-session @@ -202,6 +204,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) + ### Sample Payload ```hcl @@ -249,6 +253,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) + ### Sample Request ```shell-session @@ -290,6 +296,8 @@ enabled. Login requires the ability to create local tokens which is restricted to the primary datacenter and any secondary datacenters with ACL token replication enabled. +-> The corresponding CLI command is [`consul login`](https://www.consul.io/commands/login) + ### Parameters - `AuthMethod` `(string: )` - The name of the auth method to use for login. @@ -376,6 +384,8 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just deleting a token for which you already must possess its secret. +-> The corresponding CLI command is [`consul logout`](https://www.consul.io/commands/logout) + ### Sample Request ```shell-session diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index 6fe426d53..38c3c2e0a 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -33,6 +33,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl policy create`](https://www.consul.io/commands/acl/policy/create) + ### Parameters - `Name` `(string: )` - Specifies a name for the ACL policy. The name @@ -106,6 +108,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl policy read`](https://www.consul.io/commands/acl/policy/read) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL policy to @@ -156,6 +160,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl policy read -name=`](https://www.consul.io/commands/acl/policy/read#name) + ### Parameters - `name` `(string: )` - Specifies the name of the ACL policy to @@ -206,6 +212,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl policy update`](https://www.consul.io/commands/acl/policy/update) + ### Parameters - `ID` `(string: )` - Specifies the UUID of the policy to update. This is @@ -285,6 +293,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl policy delete`](https://www.consul.io/commands/acl/policy/delete) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL policy to @@ -327,6 +337,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl policy list`](https://www.consul.io/commands/acl/policy/list) + ### Parameters - `ns` `(string: "")` - Specifies the namespace to list diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index 5862fefcf..84ef0a0f6 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -32,6 +32,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl role create`](https://www.consul.io/commands/acl/role/create) + ### Parameters - `Name` `(string: )` - Specifies a name for the ACL role. The name @@ -172,6 +174,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl role read`](https://www.consul.io/commands/acl/role/read) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL role to @@ -242,6 +246,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl role read -name=`](https://www.consul.io/commands/acl/role/read#name) + ### Parameters - `name` `(string: )` - Specifies the Name of the ACL role to @@ -311,6 +317,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl role update`](https://www.consul.io/commands/acl/role/update) + ### Parameters - `ID` `(string: )` - Specifies the ID of the role to update. This is @@ -427,6 +435,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl role delete`](https://www.consul.io/commands/acl/role/delete) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL role to @@ -469,6 +479,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl role list`](https://www.consul.io/commands/acl/role/list) + ## Parameters - `policy` `(string: "")` - Filters the role list to those roles that are diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index 4bdc026ae..7554e6ebd 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -32,6 +32,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token create`](https://www.consul.io/commands/acl/token/create) + ### Parameters - `AccessorID` `(string: "")` - Specifies a UUID to use as the token's Accessor ID. @@ -173,6 +175,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl token read`](https://www.consul.io/commands/acl/token/read) + ### Parameters - `AccessorID` `(string: )` - Specifies the accessor ID of the ACL token to @@ -243,6 +247,8 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just retrieving the data for a token that you must already possess its secret. +-> The corresponding CLI command is [`consul acl token read -self`](https://www.consul.io/commands/acl/token/read#self) + ### Sample Request ```shell-session @@ -293,6 +299,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token update`](https://www.consul.io/commands/acl/token/update) + ### Parameters - `AccessorID` `(string: "")` - Specifies the accessor ID of the token being updated. This is @@ -441,6 +449,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token clone`](https://www.consul.io/commands/acl/token/clone) + ### Parameters - `AccessorID` `(string: )` - The accessor ID of the token to clone. This is required @@ -520,6 +530,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token delete`](https://www.consul.io/commands/acl/token/delete) + ### Parameters - `AccessorID` `(string: )` - Specifies the accessor ID of the ACL token to @@ -562,6 +574,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl token list`](https://www.consul.io/commands/acl/token/list) + ## Parameters - `policy` `(string: "")` - Filters the token list to those tokens that are diff --git a/website/content/api-docs/agent/index.mdx b/website/content/api-docs/agent/index.mdx index 5bcd4f2da..9fe617015 100644 --- a/website/content/api-docs/agent/index.mdx +++ b/website/content/api-docs/agent/index.mdx @@ -227,6 +227,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:read` | +-> The corresponding CLI command is [`consul members`](https://www.consul.io/commands/members) + ### Parameters - `wan` `(bool: false)` - Specifies to list WAN members instead of the LAN @@ -373,6 +375,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul reload`](https://www.consul.io/commands/reload) + ### Sample Request ```shell-session @@ -404,6 +408,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:write` | +-> The corresponding CLI command is [`consul maint`](https://www.consul.io/commands/maint) + ### Parameters - `enable` `(bool: )` - Specifies whether to enable or disable @@ -629,6 +635,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul join`](https://www.consul.io/commands/join) + ### Parameters - `address` `(string: )` - Specifies the address of the other agent to @@ -669,6 +677,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul leave`](https://www.consul.io/commands/leave) + ### Sample Request ```shell-session @@ -706,6 +716,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul force-leave`](https://www.consul.io/commands/force-leave) + ### Parameters - `node` `(string: )` - Specifies the name of the node to be forced into `left` state. This is specified as part of the URL. @@ -780,6 +792,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul acl set-agent-token`](https://www.consul.io/commands/acl/set-agent-token) + ### Parameters - `Token` `(string: "")` - Specifies the ACL token to set. diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index b475b36e4..78d83ac7f 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -593,6 +593,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | +-> The corresponding CLI command is [`consul services register`](https://www.consul.io/commands/services/register) + ### Query string parameters - `replace-existing-checks` - Missing health checks from the request will be deleted from the agent. Using this parameter allows to idempotently register a service and its checks without having to manually deregister checks. @@ -766,6 +768,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | +-> The corresponding CLI command is [`consul services deregister`](https://www.consul.io/commands/services/deregister) + ### Parameters - `service_id` `(string: )` - Specifies the ID of the service to diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index 187a03769..3c3503f74 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -266,6 +266,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul catalog datacenters`](https://www.consul.io/commands/catalog/datacenters) + ### Sample Request ```shell-session @@ -297,6 +299,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | +-> The corresponding CLI command is [`consul catalog nodes`](https://www.consul.io/commands/catalog/nodes) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -392,6 +396,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `YES` | `all` | `none` | `service:read` | +-> The corresponding CLI command is [`consul catalog services`](https://www.consul.io/commands/catalog/services) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/config.mdx b/website/content/api-docs/config.mdx index 7587e14b3..56e5a8633 100644 --- a/website/content/api-docs/config.mdx +++ b/website/content/api-docs/config.mdx @@ -48,6 +48,8 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write` | +-> The corresponding CLI command is [`consul config write`](https://www.consul.io/commands/config/write) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -115,6 +117,8 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | +-> The corresponding CLI command is [`consul config read`](https://www.consul.io/commands/config/read) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -184,6 +188,8 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | +-> The corresponding CLI command is [`consul config list`](https://www.consul.io/commands/config/list) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -258,6 +264,8 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write ` | +-> The corresponding CLI command is [`consul config delete`](https://www.consul.io/commands/config/delete) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/connect/ca.mdx b/website/content/api-docs/connect/ca.mdx index af413b022..181c0cccc 100644 --- a/website/content/api-docs/connect/ca.mdx +++ b/website/content/api-docs/connect/ca.mdx @@ -125,6 +125,8 @@ The table below shows this endpoint's support for 1 ACL required was operator:read prior to versions 1.8.6, 1.7.10, and 1.6.10. +-> The corresponding CLI command is [`consul connect ca get-config`](https://www.consul.io/commands/connect/ca#get-config) + ### Sample Request ```shell-session @@ -165,6 +167,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul connect ca set-config`](https://www.consul.io/commands/connect/ca#set-config) + ### Parameters - `Provider` `(string: )` - Specifies the CA provider type to use. diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 39912a9b1..30d4f1363 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -54,6 +54,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create -replace`](https://www.consul.io/commands/intention/create#replace) + ### URL Parameters - `source` `(string: )` - Specifies the source service. This @@ -163,6 +165,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/create) + ### URL Parameters - `ns` `(string: "")` - Specifies the default @@ -315,6 +319,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) + ### Parameters - `source` `(string: )` - Specifies the source service. This @@ -390,6 +396,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the intention to read. This @@ -450,6 +458,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) + ### Parameters - `filter` `(string: "")` - Specifies the expression used to filter the @@ -539,6 +549,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) + ### Parameters - `source` `(string: )` - Specifies the source service. This @@ -597,6 +609,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the intention to delete. This @@ -652,6 +666,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention check`](https://www.consul.io/commands/intention/check) + ### Parameters - `source` `(string: )` - Specifies the source service. This @@ -715,6 +731,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention match`](https://www.consul.io/commands/intention/match) + ### Parameters - `by` `(string: )` - Specifies whether to match the "name" value diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index f3ff23bae..6f2958095 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -38,6 +38,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul rtt -wan #`](https://www.consul.io/commands/rtt#wan) + ### Sample Request ```shell-session @@ -90,6 +92,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | +-> The corresponding CLI command is [`consul rtt #`](https://www.consul.io/commands/rtt) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/event.mdx b/website/content/api-docs/event.mdx index 8773a337c..3a58f52fc 100644 --- a/website/content/api-docs/event.mdx +++ b/website/content/api-docs/event.mdx @@ -29,6 +29,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `event:write` | +-> The corresponding CLI command is [`consul event`](https://www.consul.io/commands/event) + ### Parameters - `name` `(string: )` - Specifies the name of the event to fire. This diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index cc99ed373..efdeee907 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -41,6 +41,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `key:read` | +-> The corresponding CLI command is [`consul kv get`](https://www.consul.io/commands/kv/get) + ### Parameters - `key` `(string: "")` - Specifies the path of the key to read. @@ -171,6 +173,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | +-> The corresponding CLI command is [`consul kv put`](https://www.consul.io/commands/kv/put) + ### Parameters - `key` `(string: "")` - Specifies the path of the key. @@ -257,6 +261,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | +-> The corresponding CLI command is [`consul kv delete`](https://www.consul.io/commands/kv/delete) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/namespaces.mdx b/website/content/api-docs/namespaces.mdx index 27da27e12..ad8b032cb 100644 --- a/website/content/api-docs/namespaces.mdx +++ b/website/content/api-docs/namespaces.mdx @@ -29,6 +29,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul namespace create`](https://www.consul.io/commands/namespace/create) + ### Parameters - `Name` `(string: )` - The namespaces name. This must be a valid @@ -161,6 +163,8 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). +-> The corresponding CLI command is [`consul namespace read`](https://www.consul.io/commands/namespace/read) + ### Parameters - `name` `(string: )` - Specifies the namespace to read. This @@ -227,6 +231,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul namespace update`](https://www.consul.io/commands/namespace/update) or [`consul namespace write`](https://www.consul.io/commands/namespace/write) + ### Parameters - `Name` `(string: )` - The namespaces name. This must be a valid @@ -364,6 +370,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul namespace delete`](https://www.consul.io/commands/namespace/delete) + ### Parameters - `name` `(string: )` - Specifies the namespace to delete. This @@ -436,6 +444,8 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). +-> The corresponding CLI command is [`consul namespace list`](https://www.consul.io/commands/namespace/list) + ### Sample Request ```shell-session diff --git a/website/content/api-docs/operator/area.mdx b/website/content/api-docs/operator/area.mdx index 6d941ca3d..6529dc2c3 100644 --- a/website/content/api-docs/operator/area.mdx +++ b/website/content/api-docs/operator/area.mdx @@ -45,6 +45,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area create`](https://www.consul.io/commands/operator/area#create) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -111,6 +113,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `YES` | `all` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator area list`](https://www.consul.io/commands/operator/area#list) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -154,6 +158,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area update`](https://www.consul.io/commands/operator/area#update) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -244,6 +250,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area delete`](https://www.consul.io/commands/operator/area#delete) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the area to delete. This @@ -280,6 +288,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area join`](https://www.consul.io/commands/operator/area#join) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the area to join. This @@ -353,6 +363,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator area members`](https://www.consul.io/commands/operator/area#members) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the area to list. This diff --git a/website/content/api-docs/operator/autopilot.mdx b/website/content/api-docs/operator/autopilot.mdx index ed568e648..23ca9edc9 100644 --- a/website/content/api-docs/operator/autopilot.mdx +++ b/website/content/api-docs/operator/autopilot.mdx @@ -33,6 +33,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator autopilot get-config`](https://www.consul.io/commands/operator/autopilot#get-config) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -87,6 +89,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator autopilot set-config`](https://www.consul.io/commands/operator/autopilot#set-config) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -269,6 +273,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator autopilot state`](https://www.consul.io/commands/operator/autopilot#state) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index 4a1e86887..a2def36ef 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -35,6 +35,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `NO` | `none` | `none` | `keyring:read` | +-> The corresponding CLI command is [`consul keyring -list`](https://www.consul.io/commands/keyring#list) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a @@ -120,6 +122,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | +-> The corresponding CLI command is [`consul keyring -intstall`](https://www.consul.io/commands/keyring#install) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a @@ -166,6 +170,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | +-> The corresponding CLI command is [`consul keyring -use`](https://www.consul.io/commands/keyring#use) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a @@ -212,6 +218,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | +-> The corresponding CLI command is [`consul keyring -remove`](https://www.consul.io/commands/keyring#remove) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a diff --git a/website/content/api-docs/operator/license.mdx b/website/content/api-docs/operator/license.mdx index 415491966..467b88350 100644 --- a/website/content/api-docs/operator/license.mdx +++ b/website/content/api-docs/operator/license.mdx @@ -31,6 +31,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `all` | `none` | `none` | +-> The corresponding CLI command is [`consul license get`](https://www.consul.io/commands/license#get) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter whose license should be retrieved. @@ -96,6 +98,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul license put`](https://www.consul.io/commands/license#put) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter whose license should be updated. @@ -166,6 +170,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul license reset`](https://www.consul.io/commands/license#reset) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter whose license should be updated. diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index b56211b2c..04fbfa2eb 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -130,6 +130,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator raft remove-peer`](https://www.consul.io/commands/operator/raft#remove-peer) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index d94248a1b..9080389af 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -39,6 +39,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `default,stale` | `none` | `management` | +-> The corresponding CLI command is [`consul snapshot save`](https://www.consul.io/commands/snapshot/save) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default @@ -94,6 +96,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `management` | +-> The corresponding CLI command is [`consul snapshot restore`](https://www.consul.io/commands/snapshot/restore) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default diff --git a/website/content/api-docs/status.mdx b/website/content/api-docs/status.mdx index e2ad3ad9e..30b0f45ae 100644 --- a/website/content/api-docs/status.mdx +++ b/website/content/api-docs/status.mdx @@ -70,6 +70,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul operator raft list-peers`](https://www.consul.io/commands/operator/raft#list-peers) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to From 2e60b0949f1a870044bb95337d093aaa0f994102 Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Mon, 10 Jan 2022 14:34:00 -0500 Subject: [PATCH 155/404] Adding UI screenshots to L7 overview --- package-lock.json | 3 + .../content/docs/connect/l7-traffic/index.mdx | 10 +- website/package-lock.json | 20090 +--------------- website/public/img/l7-routing/Resolver.png | 3 + website/public/img/l7-routing/Router.png | 3 + website/public/img/l7-routing/Splitter.png | 3 + website/public/img/l7-routing/full.png | 3 + 7 files changed, 86 insertions(+), 20029 deletions(-) create mode 100644 package-lock.json create mode 100644 website/public/img/l7-routing/Resolver.png create mode 100644 website/public/img/l7-routing/Router.png create mode 100644 website/public/img/l7-routing/Splitter.png create mode 100644 website/public/img/l7-routing/full.png diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 000000000..48e341a09 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3 @@ +{ + "lockfileVersion": 1 +} diff --git a/website/content/docs/connect/l7-traffic/index.mdx b/website/content/docs/connect/l7-traffic/index.mdx index a37dabdba..b01a46e7e 100644 --- a/website/content/docs/connect/l7-traffic/index.mdx +++ b/website/content/docs/connect/l7-traffic/index.mdx @@ -33,7 +33,7 @@ Connect proxy upstreams are discovered using a series of stages: routing, splitting, and resolution. These stages represent different ways of managing L7 traffic. -![diagram showing l7 traffic discovery stages: routing to splitting to resolution](/img/l7-traffic-stages.svg) +![screenshot of L7 traffic visualization in the UI](/img/l7-routing/full.png) Each stage of this discovery process can be dynamically reconfigured via various [configuration entries](/docs/agent/config-entries). When a configuration @@ -44,6 +44,8 @@ entry is missing, that stage will fall back on reasonable default behavior. A [`service-router`](/docs/connect/config-entries/service-router) config entry kind is the first configurable stage. +![screenshot of service router in the UI](/img/l7-routing/Router.png) + A router config entry allows for a user to intercept traffic using L7 criteria such as path prefixes or http headers, and change behavior such as by sending traffic to a different service or service subset. @@ -59,6 +61,8 @@ can be found in the `service-router` documentation. A [`service-splitter`](/docs/connect/config-entries/service-splitter) config entry kind is the next stage after routing. +![screenshot of service splitter in the UI](/img/l7-routing/Splitter.png) + A splitter config entry allows for a user to choose to split incoming requests across different subsets of a single service (like during staged canary rollouts), or perhaps across different services (like during a v2 rewrite or @@ -84,6 +88,8 @@ can be found in the `service-splitter` documentation. A [`service-resolver`](/docs/connect/config-entries/service-resolver) config entry kind is the last stage. +![screenshot of service resolver in the UI](/img/l7-routing/Resolver.png) + A resolver config entry allows for a user to define which instances of a service should satisfy discovery requests for the provided name. @@ -118,4 +124,4 @@ can be found in the `service-resolver` documentation. -> **Note:** `service-resolver` config entries kinds can function at L4 (unlike `service-router` and `service-splitter` kinds). These can be created for -services of any protocol such as `tcp`. +services of any protocol such as `tcp`. \ No newline at end of file diff --git a/website/package-lock.json b/website/package-lock.json index c9d206142..7ddb0749a 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -1,19956 +1,8 @@ { "name": "consul-docs", "version": "0.0.1", - "lockfileVersion": 2, + "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "name": "consul-docs", - "version": "0.0.1", - "dependencies": { - "@hashicorp/flight-icons": "^1.3.0", - "@hashicorp/mktg-global-styles": "^4.0.0", - "@hashicorp/mktg-logos": "^1.2.0", - "@hashicorp/nextjs-scripts": "^19.0.3", - "@hashicorp/platform-analytics": "^0.2.0", - "@hashicorp/platform-code-highlighting": "^0.1.2", - "@hashicorp/platform-runtime-error-monitoring": "^0.1.0", - "@hashicorp/platform-util": "^0.1.0", - "@hashicorp/react-alert": "^6.0.1", - "@hashicorp/react-alert-banner": "^7.0.1", - "@hashicorp/react-button": "^6.0.1", - "@hashicorp/react-call-to-action": "^4.0.0", - "@hashicorp/react-callouts": "^8.0.1", - "@hashicorp/react-code-block": "^4.1.5", - "@hashicorp/react-consent-manager": "^7.1.0", - "@hashicorp/react-content": "^8.0.2", - "@hashicorp/react-docs-page": "^14.4.2", - "@hashicorp/react-enterprise-alert": "^6.0.1", - "@hashicorp/react-featured-slider": "^5.0.1", - "@hashicorp/react-hashi-stack-menu": "^2.1.2", - "@hashicorp/react-head": "^3.1.2", - "@hashicorp/react-hero": "^8.0.2", - "@hashicorp/react-image": "^4.0.3", - "@hashicorp/react-inline-svg": "^6.0.3", - "@hashicorp/react-learn-callout": "^2.0.1", - "@hashicorp/react-markdown-page": "^1.4.3", - "@hashicorp/react-product-downloads-page": "^2.5.3", - "@hashicorp/react-product-features-list": "^5.0.0", - "@hashicorp/react-search": "^6.1.1", - "@hashicorp/react-section-header": "^5.0.4", - "@hashicorp/react-stepped-feature-list": "^4.0.3", - "@hashicorp/react-subnav": "^9.3.2", - "@hashicorp/react-tabs": "^7.0.1", - "@hashicorp/react-text-split": "^4.0.0", - "@hashicorp/react-text-split-with-code": "^3.3.8", - "@hashicorp/react-text-split-with-image": "^4.2.5", - "@hashicorp/react-use-cases": "^5.0.0", - "@hashicorp/react-vertical-text-block-list": "^7.0.0", - "@reach/dialog": "^0.16.2", - "ci": "^2.1.1", - "framer-motion": "^5.3.3", - "next": "^11.1.2", - "next-mdx-remote": "3.0.1", - "next-remote-watch": "1.0.0", - "nuka-carousel": "4.7.7", - "react": "^17.0.2", - "react-datocms": "^1.6.6", - "react-device-detect": "1.17.0", - "react-dom": "^17.0.2", - "react-player": "^2.9.0" - }, - "devDependencies": { - "@hashicorp/platform-cli": "^1.2.0", - "@hashicorp/platform-nextjs-plugin": "^1.0.1", - "@hashicorp/platform-types": "^0.1.1", - "@types/react": "^17.0.3", - "dart-linkcheck": "2.0.15", - "husky": "4.3.7", - "prettier": "2.2.1", - "typescript": "^4.3.5" - }, - "engines": { - "npm": ">=7.0.0" - } - }, - "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.10.5.tgz", - "integrity": "sha512-cfX2rEKOtuuljcGI5DMDHClwZHdDqd2nT2Ohsc8aHtBiz6bUxKVyIqxr2gaC6tU8AgPtrTVBzcxCA+UavXpKww==", - "dependencies": { - "@algolia/cache-common": "4.10.5" - } - }, - "node_modules/@algolia/cache-common": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.10.5.tgz", - "integrity": "sha512-1mClwdmTHll+OnHkG+yeRoFM17kSxDs4qXkjf6rNZhoZGXDvfYLy3YcZ1FX4Kyz0DJv8aroq5RYGBDsWkHj6Tw==" - }, - "node_modules/@algolia/cache-in-memory": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.10.5.tgz", - "integrity": "sha512-+ciQnfIGi5wjMk02XhEY8fmy2pzy+oY1nIIfu8LBOglaSipCRAtjk6WhHc7/KIbXPiYzIwuDbM2K1+YOwSGjwA==", - "dependencies": { - "@algolia/cache-common": "4.10.5" - } - }, - "node_modules/@algolia/client-account": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.10.5.tgz", - "integrity": "sha512-I9UkSS2glXm7RBZYZIALjBMmXSQbw/fI/djPcBHxiwXIheNIlqIFl2SNPkvihpPF979BSkzjqdJNRPhE1vku3Q==", - "dependencies": { - "@algolia/client-common": "4.10.5", - "@algolia/client-search": "4.10.5", - "@algolia/transporter": "4.10.5" - } - }, - "node_modules/@algolia/client-analytics": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.10.5.tgz", - "integrity": "sha512-h2owwJSkovPxzc+xIsjY1pMl0gj+jdVwP9rcnGjlaTY2fqHbSLrR9yvGyyr6305LvTppxsQnfAbRdE/5Z3eFxw==", - "dependencies": { - "@algolia/client-common": "4.10.5", - "@algolia/client-search": "4.10.5", - "@algolia/requester-common": "4.10.5", - "@algolia/transporter": "4.10.5" - } - }, - "node_modules/@algolia/client-common": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.10.5.tgz", - "integrity": "sha512-21FAvIai5qm8DVmZHm2Gp4LssQ/a0nWwMchAx+1hIRj1TX7OcdW6oZDPyZ8asQdvTtK7rStQrRnD8a95SCUnzA==", - "dependencies": { - "@algolia/requester-common": "4.10.5", - "@algolia/transporter": "4.10.5" - } - }, - "node_modules/@algolia/client-personalization": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.10.5.tgz", - "integrity": "sha512-nH+IyFKBi8tCyzGOanJTbXC5t4dspSovX3+ABfmwKWUYllYzmiQNFUadpb3qo+MLA3jFx5IwBesjneN6dD5o3w==", - "dependencies": { - "@algolia/client-common": "4.10.5", - "@algolia/requester-common": "4.10.5", - "@algolia/transporter": "4.10.5" - } - }, - "node_modules/@algolia/client-search": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.10.5.tgz", - "integrity": "sha512-1eQFMz9uodrc5OM+9HeT+hHcfR1E1AsgFWXwyJ9Q3xejA2c1c4eObGgOgC9ZoshuHHdptaTN1m3rexqAxXRDBg==", - "dependencies": { - "@algolia/client-common": "4.10.5", - "@algolia/requester-common": "4.10.5", - "@algolia/transporter": "4.10.5" - } - }, - "node_modules/@algolia/logger-common": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.10.5.tgz", - "integrity": "sha512-gRJo9zt1UYP4k3woEmZm4iuEBIQd/FrArIsjzsL/b+ihNoOqIxZKTSuGFU4UUZOEhvmxDReiA4gzvQXG+TMTmA==" - }, - "node_modules/@algolia/logger-console": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.10.5.tgz", - "integrity": "sha512-4WfIbn4253EDU12u9UiYvz+QTvAXDv39mKNg9xSoMCjKE5szcQxfcSczw2byc6pYhahOJ9PmxPBfs1doqsdTKQ==", - "dependencies": { - "@algolia/logger-common": "4.10.5" - } - }, - "node_modules/@algolia/requester-browser-xhr": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.10.5.tgz", - "integrity": "sha512-53/MURQEqtK+bGdfq4ITSPwTh5hnADU99qzvpAINGQveUFNSFGERipJxHjTJjIrjFz3vxj5kKwjtxDnU6ygO9g==", - "dependencies": { - "@algolia/requester-common": "4.10.5" - } - }, - "node_modules/@algolia/requester-common": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.10.5.tgz", - "integrity": "sha512-UkVa1Oyuj6NPiAEt5ZvrbVopEv1m/mKqjs40KLB+dvfZnNcj+9Fry4Oxnt15HMy/HLORXsx4UwcthAvBuOXE9Q==" - }, - "node_modules/@algolia/requester-node-http": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.10.5.tgz", - "integrity": "sha512-aNEKVKXL4fiiC+bS7yJwAHdxln81ieBwY3tsMCtM4zF9f5KwCzY2OtN4WKEZa5AAADVcghSAUdyjs4AcGUlO5w==", - "dependencies": { - "@algolia/requester-common": "4.10.5" - } - }, - "node_modules/@algolia/transporter": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.10.5.tgz", - "integrity": "sha512-F8DLkmIlvCoMwSCZA3FKHtmdjH3o5clbt0pi2ktFStVNpC6ZDmY307HcK619bKP5xW6h8sVJhcvrLB775D2cyA==", - "dependencies": { - "@algolia/cache-common": "4.10.5", - "@algolia/logger-common": "4.10.5", - "@algolia/requester-common": "4.10.5" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "dependencies": { - "@babel/highlight": "^7.12.13" - } - }, - "node_modules/@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@babel/generator": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", - "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==", - "dependencies": { - "@babel/types": "^7.14.2", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", - "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==", - "dependencies": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.14.2" - } - }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "dependencies": { - "@babel/types": "^7.12.13" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", - "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", - "dependencies": { - "@babel/types": "^7.13.12" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", - "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", - "dependencies": { - "@babel/types": "^7.13.12" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", - "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==", - "dependencies": { - "@babel/helper-module-imports": "^7.13.12", - "@babel/helper-replace-supers": "^7.13.12", - "@babel/helper-simple-access": "^7.13.12", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/helper-validator-identifier": "^7.14.0", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.2" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", - "dependencies": { - "@babel/types": "^7.12.13" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz", - "integrity": "sha512-zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==", - "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.13.12", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.4" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", - "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==", - "dependencies": { - "@babel/types": "^7.13.12" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "dependencies": { - "@babel/types": "^7.12.13" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz", - "integrity": "sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==", - "dependencies": { - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.14.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz", - "integrity": "sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", - "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", - "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz", - "integrity": "sha512-NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.13.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.15.3", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.3.tgz", - "integrity": "sha512-OvwMLqNXkCXSz1kSm58sEsNuhqOx/fKpnUnKnFB5v8uDda5bLNEHNgKPvhDN6IU0LDcnHQ90LlJ0Q6jnyBSIBA==", - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/runtime-corejs3": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.8.tgz", - "integrity": "sha512-4dMD5QRBkumn45oweR0SxoNtt15oz3BUBAQ8cIx7HJqZTtE8zjpM0My8aHJHVnyf4XfRg6DNzaE1080WLBiC1w==", - "dependencies": { - "core-js-pure": "^3.15.0", - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "node_modules/@babel/traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", - "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==", - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.2", - "@babel/helper-function-name": "^7.14.2", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.14.2", - "@babel/types": "^7.14.2", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "node_modules/@babel/types": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz", - "integrity": "sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.14.9", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bugsnag/browser": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.10.5.tgz", - "integrity": "sha512-LxzQ0g8kbVq2YAoZkLM58pzNGqKWV/JxVTBCudHQVp92Wm9Wl7aFVMNPzUWCjp9T9XrNl3h9lrs6Bb127SomyA==", - "dependencies": { - "@bugsnag/core": "^7.10.0" - } - }, - "node_modules/@bugsnag/core": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/@bugsnag/core/-/core-7.10.0.tgz", - "integrity": "sha512-sDa2nDxwsxHQx2/2/tsBWjYqH0TewCR8N/r5at6B+irwVkI0uts7Qc2JyqDTfiEiBXKVEXFK+fHTz1x9b8tsiA==", - "dependencies": { - "@bugsnag/cuid": "^3.0.0", - "@bugsnag/safe-json-stringify": "^6.0.0", - "error-stack-parser": "^2.0.3", - "iserror": "0.0.2", - "stack-generator": "^2.0.3" - } - }, - "node_modules/@bugsnag/cuid": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.0.0.tgz", - "integrity": "sha512-LOt8aaBI+KvOQGneBtpuCz3YqzyEAehd1f3nC5yr9TIYW1+IzYKa2xWS4EiMz5pPOnRPHkyyS5t/wmSmN51Gjg==" - }, - "node_modules/@bugsnag/js": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@bugsnag/js/-/js-7.5.4.tgz", - "integrity": "sha512-V1+482YPndAD0c0ju7Ik1dXunyKAssZWUIqOMs7Ff3PtZb1107sJ4Hw1E7ZusQvvI/IjA6FO3ZJkmzjIJjQ+UA==", - "dependencies": { - "@bugsnag/browser": "^7.5.4", - "@bugsnag/node": "^7.5.4" - } - }, - "node_modules/@bugsnag/node": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@bugsnag/node/-/node-7.10.1.tgz", - "integrity": "sha512-kpasrz/im5ljptt2JOqrjbOu4b0i5sAZOYU4L0psWXlD31/wXytk7im11QlNALdI8gZZBxIFsVo8ks6dR6mHzg==", - "dependencies": { - "@bugsnag/core": "^7.10.0", - "byline": "^5.0.0", - "error-stack-parser": "^2.0.2", - "iserror": "^0.0.2", - "pump": "^3.0.0", - "stack-generator": "^2.0.3" - } - }, - "node_modules/@bugsnag/plugin-react": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@bugsnag/plugin-react/-/plugin-react-7.5.4.tgz", - "integrity": "sha512-UFNCae2BbvvetIegAy+h45jlmtQ8k+ZnhpM0wnG4EPzDeZA1AFM+LzqRMWF7GrRRLb8H3W8PoswUN9M1Vr6eog==", - "peerDependencies": { - "@bugsnag/core": "^7.0.0" - } - }, - "node_modules/@bugsnag/safe-json-stringify": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@bugsnag/safe-json-stringify/-/safe-json-stringify-6.0.0.tgz", - "integrity": "sha512-htzFO1Zc57S8kgdRK9mLcPVTW1BY2ijfH7Dk2CeZmspTWKdKqSo1iwmqrq2WtRjFlo8aRZYgLX0wFrDXF/9DLA==" - }, - "node_modules/@csstools/convert-colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", - "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/@csstools/normalize.css": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.0.0.tgz", - "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg==" - }, - "node_modules/@emotion/is-prop-valid": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", - "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", - "optional": true, - "dependencies": { - "@emotion/memoize": "0.7.4" - } - }, - "node_modules/@emotion/memoize": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", - "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", - "optional": true - }, - "node_modules/@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@hapi/accept": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@hapi/accept/-/accept-5.0.2.tgz", - "integrity": "sha512-CmzBx/bXUR8451fnZRuZAJRlzgm0Jgu5dltTX/bszmR2lheb9BpyN47Q1RbaGTsvFzn0PXAEs+lXDKfshccYZw==", - "dependencies": { - "@hapi/boom": "9.x.x", - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/boom": { - "version": "9.1.3", - "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-9.1.3.tgz", - "integrity": "sha512-RlrGyZ603hE/eRTZtTltocRm50HHmrmL3kGOP0SQ9MasazlW1mt/fkv4C5P/6rnpFXjwld/POFX1C8tMZE3ldg==", - "dependencies": { - "@hapi/hoek": "9.x.x" - } - }, - "node_modules/@hapi/hoek": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.2.0.tgz", - "integrity": "sha512-sqKVVVOe5ivCaXDWivIJYVSaEgdQK9ul7a4Kity5Iw7u9+wBAPbX1RMSnLLmp7O4Vzj0WOWwMAJsTL00xwaNug==" - }, - "node_modules/@hashicorp/flight-icons": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@hashicorp/flight-icons/-/flight-icons-1.3.0.tgz", - "integrity": "sha512-m4GkuYocXv54cBc+7sCkD+xorSxGPYovACpk8/A8I9rCFwdkX3WSZM8osT2/ws4IkCfeNYoxB1dz6a2SRhRfDg==" - }, - "node_modules/@hashicorp/js-utils": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@hashicorp/js-utils/-/js-utils-1.0.10.tgz", - "integrity": "sha512-59AS4kK3EURCTU9ibJmk8MVT8i3qc5tEHv985dxECZrWTL4+3kKr45u/13OPpcRlpUSIKeWEsN9FL1f5/ztHww==", - "deprecated": "[DEPRECATED] - This package has been moved to @hashicorp/nextjs-scripts. See https://github.com/hashicorp/nextjs-scripts/pull/124 for details.This package is deprecated, and will no longer be maintained. Please check the hashicorp/react-components repository for a list of maintained packages, and file an issue if you need a replacement for this package." - }, - "node_modules/@hashicorp/mktg-global-styles": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/mktg-global-styles/-/mktg-global-styles-4.0.0.tgz", - "integrity": "sha512-5B0/AUCtqTeGoDR9a5FmkRAC5ubBSN2DQEtDHFy7eOSxXqETRfvMRjHa4Gfv1shfb0PNMufDWKfaDalhuHJ+jA==" - }, - "node_modules/@hashicorp/mktg-logos": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@hashicorp/mktg-logos/-/mktg-logos-1.2.0.tgz", - "integrity": "sha512-bGPaj1FhidA4NFF0C/KpIPwQL4QXJzvOB4uTdBX9g8zTg9V2Kf2MZBC2lt+TL8Xem4k8qmBaa36w8x6+fmbdRw==" - }, - "node_modules/@hashicorp/next-optimized-images": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/next-optimized-images/-/next-optimized-images-0.1.0.tgz", - "integrity": "sha512-fsjGIrpGZozjKUVrEqVfKYpzQvLkYzV+PnybKnAH7gyEX8xZDZXyM7T710ZAkmNaa9KgszvOQ0o21Z6ukfw3UQ==", - "dev": true, - "dependencies": { - "chalk": "^2.4.2", - "figures": "^3.0.0", - "file-loader": "^3.0.1", - "imagemin": "^6.1.0", - "img-loader": "^3.0.1", - "raw-loader": "^2.0.0", - "url-loader": "^1.1.2" - } - }, - "node_modules/@hashicorp/next-optimized-images/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/next-optimized-images/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/next-optimized-images/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@hashicorp/next-optimized-images/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/@hashicorp/next-optimized-images/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/next-optimized-images/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/nextjs-scripts": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/nextjs-scripts/-/nextjs-scripts-19.0.3.tgz", - "integrity": "sha512-SB/Jz/9k/UH3dkAwsZ4tRWsRC9CL5kbSdoeBe+YduFBg/DrhMg8xPpxjetBWuu5kD37vcoAILdcVpAcitD4BKA==", - "dependencies": { - "@bugsnag/js": "7.5.4", - "@bugsnag/plugin-react": "7.5.4", - "@hashicorp/react-code-block": "4.1.2", - "@hashicorp/react-consent-manager": "5.1.0", - "@hashicorp/react-enterprise-alert": "5.0.0", - "@hashicorp/react-tabs": "6.0.0", - "@hashicorp/remark-plugins": "3.2.0", - "@mapbox/rehype-prism": "0.5.0", - "@mdx-js/react": "1.6.22", - "@next/bundle-analyzer": "10.0.3", - "@typescript-eslint/eslint-plugin": "4.9.1", - "@typescript-eslint/parser": "4.9.1", - "babel-eslint": "10.1.0", - "chalk": "4.1.0", - "debug": "4.3.1", - "ejs": "3.1.5", - "eslint": "7.15.0", - "eslint-config-prettier": "7.0.0", - "eslint-plugin-jsx-a11y": "6.4.1", - "eslint-plugin-prettier": "3.3.0", - "eslint-plugin-react": "7.21.5", - "fs-extra": "9.0.1", - "globby": "11.0.1", - "imagemin-mozjpeg": "9.0.0", - "imagemin-optipng": "8.0.0", - "imagemin-svgo": "8.0.0", - "inquirer": "7.3.3", - "lint-staged": "10.5.3", - "next-optimized-images": "2.6.2", - "next-transpile-modules": "4.1.0", - "nprogress": "0.2.0", - "open": "7.3.0", - "postcss-flexbugs-fixes": "4.2.1", - "postcss-normalize": "9.0.0", - "postcss-preset-env": "6.7.0", - "readdirp": "3.5.0", - "rehype-katex": "4.0.0", - "rehype-parse": "^7.0.1", - "rehype-stringify": "^8.0.0", - "remark-math": "4.0.0", - "remark-parse": "9.0.0", - "remark-rehype": "8.0.0", - "rivet-graphql": "0.3.1", - "signale": "1.4.0", - "slugify": "1.4.6", - "stylelint": "13.8.0", - "stylelint-config-css-modules": "2.2.0", - "stylelint-config-prettier": "8.0.2", - "stylelint-config-standard": "20.0.0", - "stylelint-media-use-custom-media": "2.0.0", - "stylelint-order": "4.1.0", - "stylelint-use-nesting": "3.0.0", - "stylelint-value-no-unknown-custom-properties": "3.0.0", - "typescript": "4.1.3", - "unified": "9.2.0", - "unist-util-visit": "2.0.3" - }, - "bin": { - "next-hashicorp": "bin/next-hashicorp" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">= 3" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@eslint/eslintrc": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", - "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-button": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-5.3.1.tgz", - "integrity": "sha512-2g8s9Iq8JKL34y9QMAMdq4UWvWkZHAa6OC1HGddqaSnSLkn8+ms14uWRIB1xc00/htgILqIqTncfkfclBLxLyw==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-inline-svg": "^1.0.0", - "classnames": "^2.2.6", - "slugify": "1.3.6" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-button/node_modules/@hashicorp/react-inline-svg": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", - "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", - "peerDependencies": { - "react": "^16.9.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-button/node_modules/slugify": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.3.6.tgz", - "integrity": "sha512-wA9XS475ZmGNlEnYYLPReSfuz/c3VQsEMoU43mi6OnKMCdbnFXd4/Yg7J0lBv8jkPolacMpOrWEaoYxuE1+hoQ==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-code-block": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-code-block/-/react-code-block-4.1.2.tgz", - "integrity": "sha512-kHlk0lid8kp1MmrGGtmPvRP2BNSz8rQBYWH0txqipBJv5ZPsXnyflypcBlivIppxA1+gciwAwg3B/Zcx8L6m1A==", - "dependencies": { - "@hashicorp/react-inline-svg": "6.0.1", - "@reach/listbox": "0.15.0", - "shellwords": "^0.1.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "@hashicorp/nextjs-scripts": ">=17.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-consent-manager": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-5.1.0.tgz", - "integrity": "sha512-GSG+UaXkhF+ACkLtqk5WpfcBEZ2qBVHcCsXjD3lkC7ZsFBXZvd8Myn/HKpb5AeTG70tB0/I4rxyUT1W74alVTw==", - "dependencies": { - "@hashicorp/react-button": "^5.0.1", - "@hashicorp/react-toggle": "^3.0.1", - "@segment/in-eu": "^0.2.1", - "js-cookie": "^2.2.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "@hashicorp/nextjs-scripts": ">=17.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-enterprise-alert": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-enterprise-alert/-/react-enterprise-alert-5.0.0.tgz", - "integrity": "sha512-zprU+/RTVjeBf7JTYOt8yVGI6PX2MhteMtiI4459Yg0v+xuB4D2t1eSTAOL409cclIQKXrrC4N1wBPLpaYKzBA==", - "dependencies": { - "@hashicorp/js-utils": "^1.0.10" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "@hashicorp/nextjs-scripts": ">=17.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-inline-svg": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.1.tgz", - "integrity": "sha512-EpvJd0AkE5tvlentS/Oez5W7SFJ32UjvU0RVFPYQlwR6tOTMOR9wK7Ose69WjkmtdjPMHWRE6MxWeSn0c1N5Bw==", - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "@hashicorp/nextjs-scripts": ">=17.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-tabs": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-6.0.0.tgz", - "integrity": "sha512-tUMyal1QYhxgukzaS1clHmYls8J5au+79c5Ea7TY1Lpg8X+pGR6+hUATS3+nhLjt+FlYy6ySI7YQSxgrb752NA==", - "dependencies": { - "@hashicorp/react-inline-svg": "^1.0.2", - "@tippy.js/react": "^3.1.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-tabs/node_modules/@hashicorp/react-inline-svg": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", - "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", - "peerDependencies": { - "react": "^16.9.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-tabs/node_modules/@tippy.js/react": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@tippy.js/react/-/react-3.1.1.tgz", - "integrity": "sha512-KF45vW/jKh/nBXk/2zzTFslv/T46zOMkIoDJ56ymZ+M00yHttk58J5wZ29oqGqDIUnobWSZD+cFpbR4u/UUvgw==", - "deprecated": "This package has moved to @tippyjs/react (the same but without a dot in the scoped organization) due to issues some shells had with the dot when installing the package.", - "dependencies": { - "prop-types": "^15.6.2", - "tippy.js": "^5.1.1" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-toggle": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-3.0.3.tgz", - "integrity": "sha512-rcmMgEGUP+rh8gHnAYBZwZSkPs4Cz+iL1+v/ROW3cYsqZPZBdeAKG/WqRrL7eNBEWsYvBgx/M9885tsl1I5BTg==", - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/commander": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/eslint": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.15.0.tgz", - "integrity": "sha512-Vr64xFDT8w30wFll643e7cGrIkPEU50yIiI36OdSIDoSGguIeaLzBo0vpGvzo9RECUqq7htURfwEtKqwytkqzA==", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.2", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.2.0", - "esutils": "^2.0.2", - "file-entry-cache": "^6.0.0", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", - "dependencies": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", - "doctrine": "^2.1.0", - "has": "^1.0.3", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dependencies": { - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "engines": { - "node": ">=4" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/lint-staged": { - "version": "10.5.3", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.5.3.tgz", - "integrity": "sha512-TanwFfuqUBLufxCc3RUtFEkFraSPNR3WzWcGF39R3f2J7S9+iF9W0KTVLfSy09lYGmZS5NDCxjNvhGMSJyFCWg==", - "dependencies": { - "chalk": "^4.1.0", - "cli-truncate": "^2.1.0", - "commander": "^6.2.0", - "cosmiconfig": "^7.0.0", - "debug": "^4.2.0", - "dedent": "^0.7.0", - "enquirer": "^2.3.6", - "execa": "^4.1.0", - "listr2": "^3.2.2", - "log-symbols": "^4.0.0", - "micromatch": "^4.0.2", - "normalize-path": "^3.0.0", - "please-upgrade-node": "^3.2.0", - "string-argv": "0.3.1", - "stringify-object": "^3.3.0" - }, - "bin": { - "lint-staged": "bin/lint-staged.js" - }, - "funding": { - "url": "https://opencollective.com/lint-staged" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/next-transpile-modules": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/next-transpile-modules/-/next-transpile-modules-4.1.0.tgz", - "integrity": "sha512-brb9S2Dq7l01fV0fdZw1pO2cWMu7fFTclIV2nccmX2Jzwtz1c9iScPMqGyWP6/wglOPOColoJlHzOrSG6cnEIQ==", - "dependencies": { - "micromatch": "^4.0.2", - "slash": "^3.0.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/postcss-browser-comments": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz", - "integrity": "sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig==", - "dependencies": { - "postcss": "^7" - }, - "engines": { - "node": ">=8.0.0" - }, - "peerDependencies": { - "browserslist": "^4" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/postcss-normalize": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-9.0.0.tgz", - "integrity": "sha512-//kq5O1xkygzN1iCioFIBtzyVTgB6ce9+Hu0mNHuUhPn+FnnFSPybe5kBemnUPPqd7QrHc+kdX6GVECUWdU2uQ==", - "dependencies": { - "@csstools/normalize.css": "*", - "postcss": "^7.0.27", - "postcss-browser-comments": "^3.0.0", - "sanitize.css": "*" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/string-width/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@hashicorp/nextjs-scripts/node_modules/typescript": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", - "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/@hashicorp/platform-analytics": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-analytics/-/platform-analytics-0.2.0.tgz", - "integrity": "sha512-4Pmb4Fy/2eDCZPFu/O4wKK2L5VIqwsXfDPDGX3eA4Dk67ytZ//SXuW9oFtG97ACyW/p1i72EmwoqcrR6usDwtg==", - "dependencies": { - "fathom-client": "^3.2.0" - }, - "peerDependencies": { - "react": ">= 16.x" - } - }, - "node_modules/@hashicorp/platform-cli": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-cli/-/platform-cli-1.2.0.tgz", - "integrity": "sha512-bdGYmqRxxApO+WKPoj8Tc6cWLY2zfPIOQUwnSAcheSE3hIwhscEeudkAxQhKGtgjX4HazgfhEBmQEcJ8T28Bew==", - "dev": true, - "dependencies": { - "@hashicorp/platform-cms": "0.3.0", - "@typescript-eslint/eslint-plugin": "4.9.1", - "@typescript-eslint/parser": "4.9.1", - "babel-eslint": "10.1.0", - "chalk": "4.1.0", - "commander": "7.2.0", - "ejs": "3.1.5", - "eslint": "7.23.0", - "eslint-config-next": "^11.0.1", - "eslint-config-prettier": "7.0.0", - "eslint-plugin-jsx-a11y": "6.4.1", - "eslint-plugin-prettier": "3.3.0", - "fs-extra": "9.0.1", - "globby": "11.0.1", - "inquirer": "7.3.3", - "lint-staged": "11.1.2", - "open": "7.3.0", - "prettier": "2.2.1", - "readdirp": "3.5.0", - "signale": "1.4.0", - "slugify": "1.4.6", - "stylelint": "13.8.0", - "stylelint-config-css-modules": "2.2.0", - "stylelint-config-prettier": "8.0.2", - "stylelint-config-standard": "20.0.0", - "stylelint-media-use-custom-media": "2.0.0", - "stylelint-order": "4.1.0", - "stylelint-use-nesting": "3.0.0", - "stylelint-value-no-unknown-custom-properties": "3.0.0", - "ts-jest": "^26.4.4" - }, - "bin": { - "next-hashicorp": "next-hashicorp" - } - }, - "node_modules/@hashicorp/platform-cms": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-cms/-/platform-cms-0.3.0.tgz", - "integrity": "sha512-sRX9A+kDEZvfZy8PvGFbEaHjn5G1mEsHwTri1vDnrmKG8apE+ELlug83b0iEkD5wIJi9OqaewMIb0NrLxg9s5A==", - "dev": true, - "dependencies": { - "rivet-graphql": "0.3.1" - } - }, - "node_modules/@hashicorp/platform-code-highlighting": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-code-highlighting/-/platform-code-highlighting-0.1.2.tgz", - "integrity": "sha512-87+BwqKW2kY3TjYj5sgcJMHwjFD2xYhQKcMfbzdyDPC4xJLhg5T7/4tXK5SM/G8stpomlt349CIWL0s+jWk2rw==", - "dependencies": { - "@mapbox/rehype-prism": "0.5.0", - "rehype-parse": "7.0.1", - "rehype-stringify": "8.0.0", - "unified": "9.2.0", - "unist-util-visit": "2.0.3" - } - }, - "node_modules/@hashicorp/platform-docs-mdx": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-docs-mdx/-/platform-docs-mdx-0.1.3.tgz", - "integrity": "sha512-NPVvn3s/JuFfebvymJ9JkOd6CHKfCVISz/QenmPgPim1nzJfe3uXKFeqolYdfMb8k1++XpX7KM70nJMVDyQLpw==", - "dependencies": { - "@hashicorp/react-code-block": "^4.1.0", - "@hashicorp/react-enterprise-alert": "^6.0.1", - "@hashicorp/react-tabs": "^7.0.1", - "@mdx-js/react": "1.6.22" - }, - "peerDependencies": { - "react": ">= 16.x" - } - }, - "node_modules/@hashicorp/platform-markdown-utils": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-markdown-utils/-/platform-markdown-utils-0.1.3.tgz", - "integrity": "sha512-WIVCYljXQAhT+wFb8EtN3AEkgFDcbXMEvF4XkBg8OE/UWlrKWUNICjhrwTN68Q4Vl11ChX/ifH803DmLcSninA==", - "dependencies": { - "@hashicorp/platform-types": "^0.1.0", - "@hashicorp/remark-plugins": "^3.2.0", - "@mapbox/rehype-prism": "^0.6.0", - "@mdx-js/react": "1.6.22", - "rehype-katex": "^5.0.0", - "remark-math": "^4.0.0", - "remark-rehype": "^7.0.0" - }, - "peerDependencies": { - "react": ">= 16.x" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/@mapbox/rehype-prism": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.6.0.tgz", - "integrity": "sha512-/0Ev/PB4fXdKPT6VDzVpnAPxGpWFIc4Yz3mf/DzLEMxlpIPZpZlCzaFk4V4NGFofQXPc41+GpEcZtWP3VuFWVA==", - "dependencies": { - "hast-util-to-string": "^1.0.4", - "refractor": "^3.3.1", - "unist-util-visit": "^2.0.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/commander": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/katex": { - "version": "0.13.13", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.13.tgz", - "integrity": "sha512-cCMcil4jwMm7behpXGiQfXJA29sko/Gd/26iCsr53Dv5Jn2iHbHyEb14dm9uVrIijUXx6Zz1WhlFhHE6DckvkQ==", - "dependencies": { - "commander": "^6.0.0" - }, - "bin": { - "katex": "cli.js" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/mdast-util-definitions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-3.0.1.tgz", - "integrity": "sha512-BAv2iUm/e6IK/b2/t+Fx69EL/AGcq/IG2S+HxHjDJGfLJtd6i9SZUS76aC9cig+IEucsqxKTR0ot3m933R3iuA==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/mdast-util-to-hast": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-9.1.2.tgz", - "integrity": "sha512-OpkFLBC2VnNAb2FNKcKWu9FMbJhQKog+FCT8nuKmQNIKXyT1n3SIskE7uWDep6x+cA20QXlK5AETHQtYmQmxtQ==", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^3.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/rehype-katex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", - "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", - "dependencies": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.13.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@hashicorp/platform-markdown-utils/node_modules/remark-rehype": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-7.0.0.tgz", - "integrity": "sha512-uqQ/VbaTdxyu/da6npHAso6hA00cMqhA3a59RziQdOLN2KEIkPykAVy52IcmZEVTuauXO0VtpxkyCey4phtHzQ==", - "dependencies": { - "mdast-util-to-hast": "^9.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@hashicorp/platform-nextjs-plugin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-nextjs-plugin/-/platform-nextjs-plugin-1.0.1.tgz", - "integrity": "sha512-gT26wGylFuAUuMHuQ57PRrrL414xWsqaVUfrvlcQcrOXUF9YsUjNnVAWo+JLoo9y37vpdOMhdEPWrwPxXoeItw==", - "dev": true, - "dependencies": { - "@hashicorp/next-optimized-images": "0.1.0", - "@next/bundle-analyzer": "10.0.3", - "imagemin-mozjpeg": "9.0.0", - "imagemin-optipng": "8.0.0", - "imagemin-svgo": "8.0.0", - "next-transpile-modules": "^8.0.0", - "postcss-normalize": "10.0.1" - }, - "peerDependencies": { - "next": ">= 11.x" - } - }, - "node_modules/@hashicorp/platform-product-meta": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-product-meta/-/platform-product-meta-0.1.0.tgz", - "integrity": "sha512-UXAiYENDP8I0mD9+LNMyaCksUPthPRkxAIzg12SbERgx5kAjEaBCzYRHKXibL1dZpVQiRfs0i/0ieSw0mP2y+Q==", - "dependencies": { - "@hashicorp/platform-util": "^0.1.0" - }, - "peerDependencies": { - "react": ">= 16.x" - } - }, - "node_modules/@hashicorp/platform-runtime-error-monitoring": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-runtime-error-monitoring/-/platform-runtime-error-monitoring-0.1.0.tgz", - "integrity": "sha512-G6YhBPIu9cPPE2j+uLVoCuamPzxrpEPi45B0ySa+1CTCUmG+3fswvPHXILbyr91ZtpuBsFg1nYJOBwlwEftHdg==", - "dependencies": { - "@bugsnag/js": "7.5.4", - "@bugsnag/plugin-react": "7.5.4" - }, - "peerDependencies": { - "react": ">= 16.x" - } - }, - "node_modules/@hashicorp/platform-types": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-types/-/platform-types-0.1.1.tgz", - "integrity": "sha512-aQU6hyzBpMax7WoZKF6f/OkCER/SxsVn25RBVgU7JHxmebYJB4VfmDXAfa0TyKaPz2cDWPeOgc8MVezGVjouSw==", - "dependencies": { - "@types/segment-analytics": "^0.0.33" - } - }, - "node_modules/@hashicorp/platform-util": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/platform-util/-/platform-util-0.1.0.tgz", - "integrity": "sha512-XGWmQnMThygQKUsB5fPfhWT2KIbAq3Zax1K7TiEarX7IrngpEk7oTpVUR0uEraZgpfsaOfhHGSilvBRZjCZ+Ew==", - "dependencies": { - "nprogress": "0.2.0" - }, - "peerDependencies": { - "next": ">= 9.x", - "react": ">= 16.x" - } - }, - "node_modules/@hashicorp/react-alert": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-6.0.1.tgz", - "integrity": "sha512-4CSHoPD0D9oIMSxEV84b69QZK9LQFol4muinWyarWfv8oTfVmxe7bNRcCbOZ6o1C1AyURkgJvM4KZZ/8MA69Sg==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-alert-banner": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-alert-banner/-/react-alert-banner-7.0.1.tgz", - "integrity": "sha512-h6M9NhQQxDJZQwhrT1I+Rwfiko8yGsQGrTp6jF0XUrOnteok69SfuDfc0/Vv50aNG0029R4pnBvgK3e1Xc7TlQ==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-inline-svg": "^6.0.3", - "@reach/visually-hidden": "^0.16.0", - "js-cookie": "^2.2.1", - "slugify": "^1.6.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-alert-banner/node_modules/slugify": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz", - "integrity": "sha512-FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@hashicorp/react-button": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-6.0.3.tgz", - "integrity": "sha512-CRK93cWw5ap4tGGvMoyr/Ydvvz1Ie1RTyTdBhcpARlH7pCIAmvxHKMK+FCWXWGJNjpM9suKenXfdTJRfz7+KNw==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-inline-svg": "^6.0.1", - "classnames": "^2.3.1", - "slugify": "^1.6.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-button/node_modules/slugify": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz", - "integrity": "sha512-FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@hashicorp/react-call-to-action": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-call-to-action/-/react-call-to-action-4.0.0.tgz", - "integrity": "sha512-SpdyItfcQKCGMzI6RlfT2ZbplyeERd6eK12ZwTT2UDejmDSlD0s0/rauzR6brfCh2RGbyRct3/KjJFYWyVsYaw==", - "dependencies": { - "@hashicorp/react-button": "^6.0.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-callouts": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-callouts/-/react-callouts-8.0.1.tgz", - "integrity": "sha512-KfrEZOO8jWBhHlld2quusPskGbB/6LBuV9bnzsFyS4yn+y7RSBTVk8yovdc8BkFyTaxMq6h/tLW8PgYDLnWPQQ==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-button": "^6.0.0", - "@hashicorp/react-inline-svg": "^6.0.1", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-code-block": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@hashicorp/react-code-block/-/react-code-block-4.1.5.tgz", - "integrity": "sha512-94IHagrdqxvoPE130b2FOvyeSZ26DIhaNSnZ3b/isKMpaNdWjoi/uo+nckRu3auiSyxldbMty8W5EXclgGkCEA==", - "dependencies": { - "@hashicorp/react-inline-svg": "^6.0.3", - "@reach/listbox": "0.15.0", - "shellwords": "^0.1.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-consent-manager": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-7.1.0.tgz", - "integrity": "sha512-Hxs58z80gbyfO2HpdyvQFB1PtXzazWICJnH5Kp1VRL2oQpJPeylG6jUsQ6K6a9kfdclZQjK1EeVKDZg2vVFrhA==", - "dependencies": { - "@hashicorp/react-button": "^6.0.0", - "@hashicorp/react-toggle": "^4.0.1", - "classnames": "^2.3.1", - "js-cookie": "^2.2.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "next": ">=11.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-content": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-8.0.2.tgz", - "integrity": "sha512-FNE1IiXizUDPL/rsvo37uYSBsAB8LhtCianMU/h3MIj8Khcwc/qC3pTabGs9Kv3ujA+fiIp/ImzWEGAhB22T7g==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.2.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-docs-page": { - "version": "14.4.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-14.4.2.tgz", - "integrity": "sha512-K/KITJsAYA8sjxCy4JbAJKEgEKA924MNm4bd4SPniomzSYmsCNxeDaM/bSM/EpaGR7cX9r6htSyugKwo7V3QFQ==", - "dependencies": { - "@hashicorp/platform-docs-mdx": "^0.1.3", - "@hashicorp/platform-markdown-utils": "^0.1.3", - "@hashicorp/react-alert": "^6.0.0", - "@hashicorp/react-content": "^8.0.2", - "@hashicorp/react-docs-sidenav": "^8.4.0", - "@hashicorp/react-head": "^3.1.2", - "@hashicorp/react-placeholder": "^0.1.0", - "@hashicorp/react-search": "^6.1.1", - "@hashicorp/react-version-select": "^0.2.0", - "classnames": "^2.3.1", - "fs-exists-sync": "^0.1.0", - "gray-matter": "^4.0.3", - "js-yaml": "^4.1.0", - "line-reader": "^0.4.0", - "moize": "^6.0.3", - "readdirp": "^3.6.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "next-mdx-remote": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-docs-page/node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@hashicorp/react-docs-page/node_modules/gray-matter/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@hashicorp/react-docs-page/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@hashicorp/react-docs-page/node_modules/js-yaml/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/@hashicorp/react-docs-page/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/@hashicorp/react-docs-sidenav": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-8.4.0.tgz", - "integrity": "sha512-r2yFLuAD4+9RbPvBzWwcv7b9wrk1MooUJJMdLFP6WUUPYxt3r0Jju6/y4CubVUwtDnNCe3iqo3KoRmWrfNSS0Q==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-link-wrap": "^3.0.3", - "fuzzysearch": "1.0.3" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-enterprise-alert": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-enterprise-alert/-/react-enterprise-alert-6.0.1.tgz", - "integrity": "sha512-fIT5A5G7mNW77Iob/B5FRlKukDws8CEtK/pLqYJjYhz1HmwZiPRORWTDcaBDh8XUARqo8gA8lg9gqke2kEv6UQ==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-featured-slider": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-featured-slider/-/react-featured-slider-5.0.1.tgz", - "integrity": "sha512-AuTZA/C5JHjyb+fCr2nrZcL0iPoDBaj0wGRXxRnNwltV1YOwYnn1p3vzRtrAky+BAjTWtYkh+h4Nebi+pvi+AQ==", - "dependencies": { - "@hashicorp/react-button": "^6.0.0", - "@hashicorp/react-image": "^4.0.1", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-hashi-stack-menu": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-hashi-stack-menu/-/react-hashi-stack-menu-2.1.2.tgz", - "integrity": "sha512-3K6Y2FNSLq6TsMceX3a1pdmxaVx8lRvxCgjxcKL1P6DpmOk0AU5/eL0CvKP8GzXSYstL36xXxIhWFfiaAaF/yQ==", - "dependencies": { - "@hashicorp/react-inline-svg": "^6.0.1", - "@hashicorp/react-link-wrap": "^3.0.3", - "slugify": "1.6.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "@hashicorp/mktg-logos": ">=1.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-hashi-stack-menu/node_modules/slugify": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz", - "integrity": "sha512-FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@hashicorp/react-head": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-head/-/react-head-3.1.2.tgz", - "integrity": "sha512-DkQt0F2zU2cZ36IafDI8TWQNS6kkCVzaouLMR0Mwb/MYCzOJtutyZYrzrrDU+uQQ5tWSt3vZQKrSqD4M5RMMoQ==", - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-hero": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-hero/-/react-hero-8.0.2.tgz", - "integrity": "sha512-q+XgMk0b2YFcmPL8wNHjlZErUEyfIO1i9/diTebHVvKjCs2AeOVDODU3diSU/Q5mvX5dCx36l/fp1qmyYdP8SQ==", - "dependencies": { - "@hashicorp/js-utils": "^1.0.10", - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-alert": "^6.0.0", - "@hashicorp/react-button": "^6.0.1", - "@hashicorp/react-image": "^4.0.2", - "@hashicorp/react-text-input": "^5.0.0", - "classnames": "^2.3.1", - "formik": "^2.2.9", - "promise-polyfill": "^8.2.0", - "query-string": "^5.1.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-image": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-4.0.3.tgz", - "integrity": "sha512-GcTWoIGVwZm8nvxKftqjsQjVfjhhDm4VUDpBcCtRAEj3f/umhrppDV6hFuJYSWSWtGp8hnVCFVAS445nNBgaeg==", - "dependencies": { - "object-assign": "4.1.1", - "query-string": "5.1.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-inline-svg": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.3.tgz", - "integrity": "sha512-BKLhVFc0gIRxyd2QZ5KWSAXDyyiOI+dQ4U4HrgAA3f4/JmpOsF/EgQ6Ro+cmNZy1/cn42OM2iqoEvUqYvW+ZfQ==", - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-learn-callout": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-learn-callout/-/react-learn-callout-2.0.1.tgz", - "integrity": "sha512-Dldn8SfbOFGd8cVdYyLUuCXllGYIQ5A8Txv3J6wYzMnWbvRTRnqjzun4kxk1UTxqHonP5D3fACP7xeM1mlbroQ==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-button": "^6.0.0", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-link-wrap": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-link-wrap/-/react-link-wrap-3.0.3.tgz", - "integrity": "sha512-G0JM3IowWCUWkc/mW5Llb/9NK50PH81/fySGZmQI6/oakK1gLvA6/fEfWRX7cqa7NoFHLiNnDrXJkc3ShtKNVw==", - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-markdown-page": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-markdown-page/-/react-markdown-page-1.4.3.tgz", - "integrity": "sha512-CBYXek4/p/x9P9MSOtUm24QJjoGVvGufxv26WJlnXCeXspprYxWULikcBatZFXresWSa5hYQjpUqNfk3F+XQyw==", - "dependencies": { - "@hashicorp/platform-markdown-utils": "^0.1.0", - "@hashicorp/react-content": "^8.0.2", - "@hashicorp/react-head": "^3.1.2", - "gray-matter": "4.0.2" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "next-mdx-remote": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-placeholder": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-placeholder/-/react-placeholder-0.1.0.tgz", - "integrity": "sha512-Jti+Z4p6fVXiukBZpPIvIFJb/oxRYY3AIXCgrEJxvKemvF8iD84oWSyCB2WPzycmHIn4u8dlSCrc/VhicnieQA==", - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.9.0" - } - }, - "node_modules/@hashicorp/react-product-downloads-page": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-product-downloads-page/-/react-product-downloads-page-2.5.3.tgz", - "integrity": "sha512-SY3sEM/xYZDbd7XSDaqkT4L+DVRdGJYPpF/0WRDHfR0PObf2zE+iqRjm2APaIACg32sAM1NIZPuc+oQv6vKq5A==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-button": "^6.0.0", - "@hashicorp/react-head": "^3.1.2", - "@hashicorp/react-tabs": "^7.0.0", - "semver": "^7.3.5" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-product-features-list": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-product-features-list/-/react-product-features-list-5.0.0.tgz", - "integrity": "sha512-H1Pp9wq+xdMQ4QZsBGSOcqPGmXMzOP49Ed/e/tsvOrQWhhdj4tjjVqBIPZFKjx6tHW7Ebjz2/PDw27i1UwoYnQ==", - "dependencies": { - "@hashicorp/react-button": "^6.0.0", - "@hashicorp/react-image": "^4.0.1", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-search": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-6.1.1.tgz", - "integrity": "sha512-azaXjFP/om+DN6InI/WD+qH9jmLE3/9pqIc2Dp4rYY/tn1KuWyJ5MefvcsbYxIFUVX/wiT2n+8HZFwRfxhdA+w==", - "dependencies": { - "@hashicorp/react-inline-svg": "^6.0.1", - "@hashicorp/remark-plugins": "^3.1.1", - "@reach/visually-hidden": "^0.16.0", - "algoliasearch": "^4.10.3", - "classnames": "^2.3.1", - "dotenv": "^10.0.0", - "glob": "^7.1.7", - "gray-matter": "^4.0.3", - "react-instantsearch-dom": "^6.12.1", - "remark": "^13.0.0", - "search-insights": "^1.7.1", - "unist-util-visit": "^2.0.3" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-search/node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@hashicorp/react-section-header": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@hashicorp/react-section-header/-/react-section-header-5.0.4.tgz", - "integrity": "sha512-1C1bdgn4qdD2IOVjbL+WqTUmLBQHAnKiNezSwQbO4MvdrSFfAllPhPchA760VuVaEBnMWo0gFQPSybRrv7faVQ==", - "dependencies": { - "@hashicorp/js-utils": "^1.0.10" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-select-input": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-select-input/-/react-select-input-4.0.3.tgz", - "integrity": "sha512-HN7uy2acXOCNE2cz844da0V8JHesnCLjKXis7/n+PB9O6wLfSYblWYPoPLEPx83Ph0dQfAtUT8dsJ9v6S2TSiw==", - "dependencies": { - "classnames": "^2.2.6", - "downshift": "3.1.5" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-stepped-feature-list": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-stepped-feature-list/-/react-stepped-feature-list-4.0.3.tgz", - "integrity": "sha512-s/MwmtnMjBViElSCXVbP+sKtDxy6A8jceSVhfVgLv8Q0+G84yeHO0THaMGgTBoA8wgF6Ad5zChW9zDJojdDrMw==", - "dependencies": { - "nuka-carousel": "^4.7.2" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x" - } - }, - "node_modules/@hashicorp/react-subnav": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-subnav/-/react-subnav-9.3.2.tgz", - "integrity": "sha512-UoMnQgV/KnqNX/bwKKsnw5ph4egJhQPFHwrnplRlBuRMlHgblMMP5jsPi/07wkpIv4iyV0yc1ttaFN4RPVTa5w==", - "dependencies": { - "@hashicorp/mktg-logos": "^1.0.2", - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-button": "^6.0.3", - "@hashicorp/react-inline-svg": "^6.0.3", - "@hashicorp/react-link-wrap": "^3.0.3", - "@reach/visually-hidden": "^0.16.0", - "camel-case": "^4.1.2", - "classnames": "^2.3.1", - "isomorphic-unfetch": "^3.1.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-tabs": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-7.0.1.tgz", - "integrity": "sha512-qmQscQkIxNhZc/QhWo5RCEu39rKXl4iQHlk0Q0Zk+ClqKSplDuVMMJqg3GtrG056em9xA2p+n7J501EZlOfzGg==", - "dependencies": { - "@hashicorp/react-inline-svg": "^6.0.1", - "@reach/portal": "^0.16.0", - "@reach/tooltip": "^0.16.0", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-tabs/node_modules/@reach/portal": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.0.tgz", - "integrity": "sha512-vXJ0O9T+72HiSEWHPs2cx7YbSO7pQsTMhgqPc5aaddIYpo2clJx1PnYuS0lSNlVaDO0IxQhwYq43evXaXnmviw==", - "dependencies": { - "@reach/utils": "0.16.0", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@hashicorp/react-tabs/node_modules/@reach/utils": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", - "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", - "dependencies": { - "tiny-warning": "^1.0.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@hashicorp/react-tabs/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/@hashicorp/react-text-input": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-text-input/-/react-text-input-5.0.1.tgz", - "integrity": "sha512-KXY2XloVHKYKJFk/S3LrVZBm0QNtDqdhRsd9wXdxe3dlElfAbNMgxIUQz2bzqmLYxegatlhgGCr6GBU9odkz5A==", - "dependencies": { - "classnames": "^2.3.1", - "uuid": "^8.3.2" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-text-input/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/@hashicorp/react-text-split": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-text-split/-/react-text-split-4.0.0.tgz", - "integrity": "sha512-drBWTG3l7v/GNusn2gy2eW3SjuJ3lldlfzX3lr20IxprP2UcMcpLBDQFL+xrJbaHe7Tn2WjwrdmOS6MtQOopbQ==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-button": "^6.0.0", - "@hashicorp/react-inline-svg": "^6.0.3", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-text-split-with-code": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@hashicorp/react-text-split-with-code/-/react-text-split-with-code-3.3.8.tgz", - "integrity": "sha512-aOakwQL+GjrSEsySSOHw7WlJLg0nEiKoIMK5x8aLry64ZwHgTpqqFj5CTQ01RHk0sAfqbCCvrRc2il9CLR83fg==", - "dependencies": { - "@hashicorp/react-code-block": "^4.1.5", - "@hashicorp/react-text-split": "^4.0.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-text-split-with-image": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@hashicorp/react-text-split-with-image/-/react-text-split-with-image-4.2.5.tgz", - "integrity": "sha512-UJ2hF7xYXcWoIpgAD3MlJijutbouKW5joVScfL9zgTWUPmr1c9cBj6MQf7VNNP00q4CR0ElId74ki2tr/8Vkfw==", - "dependencies": { - "@hashicorp/react-image": "^4.0.3", - "@hashicorp/react-text-split": "^4.0.0" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-toggle": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-4.0.1.tgz", - "integrity": "sha512-pPcFs3mlR7qt6j+bbfRnkxr1dEpTInuvLfYZ27L92uEcd83MBLcc+jp6c/idMuzHyLGSFU5aGqrAz5ufhLERZw==", - "dependencies": { - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-use-cases": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-use-cases/-/react-use-cases-5.0.0.tgz", - "integrity": "sha512-doiU9Wpo5c1r5XhsiIWNStPd+P3D/9BqMoYn+MrCrfFvD19pbAuH5GEJslC/XBJt7M4uumAb9e803XKJAayZww==", - "dependencies": { - "@hashicorp/react-image": "^4.0.3", - "@hashicorp/react-inline-svg": "^6.0.3", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/react-version-select": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-version-select/-/react-version-select-0.2.1.tgz", - "integrity": "sha512-E7BW4FotIYq1S5d/GrUPH2NvXmzYmeNpM01wNThDEbes47RfT8nzN3dg64QOUdCvWoUcUaOlGMQHNychBTif2g==", - "dependencies": { - "@hashicorp/react-select-input": ">=4.x" - }, - "peerDependencies": { - "react": ">=16.8.x" - } - }, - "node_modules/@hashicorp/react-vertical-text-block-list": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-vertical-text-block-list/-/react-vertical-text-block-list-7.0.0.tgz", - "integrity": "sha512-RYFO/HXEiB4Adj6zdmuLCL19gfTh7MZc53Kp9FqZ7dWR7ggW24tMCwIsgqvk4NjubBkJ0Lx/DnhiQ3ATZVMC6w==", - "dependencies": { - "@hashicorp/platform-product-meta": "^0.1.0", - "@hashicorp/react-image": "^4.0.1", - "@hashicorp/react-link-wrap": "^3.0.1", - "classnames": "^2.3.1" - }, - "peerDependencies": { - "@hashicorp/mktg-global-styles": ">=3.x", - "react": ">=16.x" - } - }, - "node_modules/@hashicorp/remark-plugins": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@hashicorp/remark-plugins/-/remark-plugins-3.2.0.tgz", - "integrity": "sha512-kHY0Uq/6TnqXkIKGo4oIhhvVDfynlNzLxNRxMYMi6yOyGSI407j9M0sTfJWwoQom4NWFd3aOlwJV8IAhF7deJQ==", - "dependencies": { - "@mdx-js/util": "1.6.22", - "github-slugger": "^1.3.0", - "remark": "12.0.1", - "remark-mdx": "1.6.22", - "to-vfile": "^6.1.0", - "unist-util-flatmap": "^1.0.0", - "unist-util-is": "^4.0.2", - "unist-util-map": "^2.0.1", - "unist-util-visit": "^2.0.3" - } - }, - "node_modules/@hashicorp/remark-plugins/node_modules/remark": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/remark/-/remark-12.0.1.tgz", - "integrity": "sha512-gS7HDonkdIaHmmP/+shCPejCEEW+liMp/t/QwmF0Xt47Rpuhl32lLtDV1uKWvGoq+kxr5jSgg5oAIpGuyULjUw==", - "dependencies": { - "remark-parse": "^8.0.0", - "remark-stringify": "^8.0.0", - "unified": "^9.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@hashicorp/remark-plugins/node_modules/remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "dependencies": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@hashicorp/remark-plugins/node_modules/remark-stringify": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", - "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", - "dependencies": { - "ccount": "^1.0.0", - "is-alphanumeric": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "longest-streak": "^2.0.1", - "markdown-escapes": "^1.0.0", - "markdown-table": "^2.0.0", - "mdast-util-compact": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "stringify-entities": "^3.0.0", - "unherit": "^1.0.4", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@jest/types": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", - "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@mapbox/rehype-prism": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.5.0.tgz", - "integrity": "sha512-sE5EetmSR6At7AU2s3N2rFUUqm8BpvxUcGcesgfTZgqF7bQoekqsKxLX8gunIDjZs34acZJ6fgPFHepEWnYKCQ==", - "dependencies": { - "hast-util-to-string": "^1.0.3", - "refractor": "^3.0.0", - "unist-util-visit": "^2.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@mdx-js/mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", - "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/plugin-syntax-jsx": "7.12.1", - "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "1.6.22", - "babel-plugin-apply-mdx-type-prop": "1.6.22", - "babel-plugin-extract-import-names": "1.6.22", - "camelcase-css": "2.0.1", - "detab": "2.0.4", - "hast-util-raw": "6.0.1", - "lodash.uniq": "4.5.0", - "mdast-util-to-hast": "10.0.1", - "remark-footnotes": "2.0.0", - "remark-mdx": "1.6.22", - "remark-parse": "8.0.3", - "remark-squeeze-paragraphs": "4.0.0", - "style-to-object": "0.3.0", - "unified": "9.2.0", - "unist-builder": "2.0.3", - "unist-util-visit": "2.0.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/mdx/node_modules/remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "dependencies": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mdx-js/react": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "react": "^16.13.1 || ^17.0.0" - } - }, - "node_modules/@mdx-js/util": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", - "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", - "dependencies": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@mrmlnc/readdir-enhanced/node_modules/glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=" - }, - "node_modules/@napi-rs/triples": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@napi-rs/triples/-/triples-1.0.3.tgz", - "integrity": "sha512-jDJTpta+P4p1NZTFVLHJ/TLFVYVcOqv6l8xwOeBKNPMgY/zDYH/YH7SJbvrr/h1RcS9GzbPcLKGzpuK9cV56UA==" - }, - "node_modules/@next/bundle-analyzer": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/@next/bundle-analyzer/-/bundle-analyzer-10.0.3.tgz", - "integrity": "sha512-+RtvLLpNkTLnq5ICli2hCBI6oZZ1lrrLLa6Dcaitadvly1IuspgwkwyBVlufm2barV+QSHJ2GlX26+NuLbisyg==", - "dependencies": { - "webpack-bundle-analyzer": "3.6.1" - } - }, - "node_modules/@next/env": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/env/-/env-11.1.2.tgz", - "integrity": "sha512-+fteyVdQ7C/OoulfcF6vd1Yk0FEli4453gr8kSFbU8sKseNSizYq6df5MKz/AjwLptsxrUeIkgBdAzbziyJ3mA==" - }, - "node_modules/@next/eslint-plugin-next": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-11.1.2.tgz", - "integrity": "sha512-cN+ojHRsufr9Yz0rtvjv8WI5En0RPZRJnt0y16Ha7DD+0n473evz8i1ETEJHmOLeR7iPJR0zxRrxeTN/bJMOjg==", - "dev": true, - "dependencies": { - "glob": "7.1.7" - } - }, - "node_modules/@next/polyfill-module": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/polyfill-module/-/polyfill-module-11.1.2.tgz", - "integrity": "sha512-xZmixqADM3xxtqBV0TpAwSFzWJP0MOQzRfzItHXf1LdQHWb0yofHHC+7eOrPFic8+ZGz5y7BdPkkgR1S25OymA==" - }, - "node_modules/@next/react-dev-overlay": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/react-dev-overlay/-/react-dev-overlay-11.1.2.tgz", - "integrity": "sha512-rDF/mGY2NC69mMg2vDqzVpCOlWqnwPUXB2zkARhvknUHyS6QJphPYv9ozoPJuoT/QBs49JJd9KWaAzVBvq920A==", - "dependencies": { - "@babel/code-frame": "7.12.11", - "anser": "1.4.9", - "chalk": "4.0.0", - "classnames": "2.2.6", - "css.escape": "1.5.1", - "data-uri-to-buffer": "3.0.1", - "platform": "1.3.6", - "shell-quote": "1.7.2", - "source-map": "0.8.0-beta.0", - "stacktrace-parser": "0.1.10", - "strip-ansi": "6.0.0" - }, - "peerDependencies": { - "react": "^17.0.2", - "react-dom": "^17.0.2" - } - }, - "node_modules/@next/react-dev-overlay/node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@next/react-dev-overlay/node_modules/chalk": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", - "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@next/react-dev-overlay/node_modules/classnames": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", - "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" - }, - "node_modules/@next/react-dev-overlay/node_modules/source-map": { - "version": "0.8.0-beta.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", - "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", - "dependencies": { - "whatwg-url": "^7.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@next/react-refresh-utils": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/react-refresh-utils/-/react-refresh-utils-11.1.2.tgz", - "integrity": "sha512-hsoJmPfhVqjZ8w4IFzoo8SyECVnN+8WMnImTbTKrRUHOVJcYMmKLL7xf7T0ft00tWwAl/3f3Q3poWIN2Ueql/Q==", - "peerDependencies": { - "react-refresh": "0.8.3", - "webpack": "^4 || ^5" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - } - } - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-11.1.2.tgz", - "integrity": "sha512-hZuwOlGOwBZADA8EyDYyjx3+4JGIGjSHDHWrmpI7g5rFmQNltjlbaefAbiU5Kk7j3BUSDwt30quJRFv3nyJQ0w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-11.1.2.tgz", - "integrity": "sha512-PGOp0E1GisU+EJJlsmJVGE+aPYD0Uh7zqgsrpD3F/Y3766Ptfbe1lEPPWnRDl+OzSSrSrX1lkyM/Jlmh5OwNvA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-11.1.2.tgz", - "integrity": "sha512-YcDHTJjn/8RqvyJVB6pvEKXihDcdrOwga3GfMv/QtVeLphTouY4BIcEUfrG5+26Nf37MP1ywN3RRl1TxpurAsQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-11.1.2.tgz", - "integrity": "sha512-e/pIKVdB+tGQYa1cW3sAeHm8gzEri/HYLZHT4WZojrUxgWXqx8pk7S7Xs47uBcFTqBDRvK3EcQpPLf3XdVsDdg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@node-rs/helper": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@node-rs/helper/-/helper-1.2.1.tgz", - "integrity": "sha512-R5wEmm8nbuQU0YGGmYVjEc0OHtYsuXdpRG+Ut/3wZ9XAvQWyThN08bTh2cBJgoZxHQUPtvRfeQuxcAgLuiBISg==", - "dependencies": { - "@napi-rs/triples": "^1.0.3" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@reach/auto-id": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/auto-id/-/auto-id-0.15.0.tgz", - "integrity": "sha512-iACaCcZeqAhDf4OOwJpmHHS/LaRj9z3Ip8JmlhpCrFWV2YOIiiZk42amlBZX6CKH66Md+eriYZQk3TyAjk6Oxg==", - "dependencies": { - "@reach/utils": "0.15.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/auto-id/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/descendants": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/descendants/-/descendants-0.15.0.tgz", - "integrity": "sha512-MGs+7sGjx07sm29Wc2d/Ya72qwatNVHofnYwwHMT6LImv99kE5TQMCgkMSDeRwqQxHURmcjb4I7Tab+ahvCGiw==", - "dependencies": { - "@reach/utils": "0.15.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/descendants/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/dialog": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@reach/dialog/-/dialog-0.16.2.tgz", - "integrity": "sha512-qq8oX0cROgTb8LjOKWzzNm4SqaN9b89lJHr7UyVo2aQ6WbeNzZBxqXhGywFP7dkR+hNqOJnrA59PXFWhfttA9A==", - "dependencies": { - "@reach/portal": "0.16.2", - "@reach/utils": "0.16.0", - "prop-types": "^15.7.2", - "react-focus-lock": "^2.5.2", - "react-remove-scroll": "^2.4.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/dialog/node_modules/@reach/portal": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.2.tgz", - "integrity": "sha512-9ur/yxNkuVYTIjAcfi46LdKUvH0uYZPfEp4usWcpt6PIp+WDF57F/5deMe/uGi/B/nfDweQu8VVwuMVrCb97JQ==", - "dependencies": { - "@reach/utils": "0.16.0", - "tiny-warning": "^1.0.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/dialog/node_modules/@reach/utils": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", - "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", - "dependencies": { - "tiny-warning": "^1.0.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/dialog/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/@reach/listbox": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/listbox/-/listbox-0.15.0.tgz", - "integrity": "sha512-3Vvpte0HQkfo3sT4Cz6gG9h+E/La2IwbtLQDTesEmDzToQ8bk9rOfuFDVp7IXUyOdDggfDCOEz/ZphsuniADWA==", - "dependencies": { - "@reach/auto-id": "0.15.0", - "@reach/descendants": "0.15.0", - "@reach/machine": "0.15.0", - "@reach/popover": "0.15.0", - "@reach/utils": "0.15.0", - "prop-types": "^15.7.2" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/machine": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/machine/-/machine-0.15.0.tgz", - "integrity": "sha512-o3vvqsTQyj7apxpbSuIn4xKYlqNagcjhlMnroJ2uqgJfFwy1tLrsQo4Sr8GnZu4hitPbNAfqGExYjV8ZV8SHpA==", - "dependencies": { - "@reach/utils": "0.15.0", - "@xstate/fsm": "1.4.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/machine/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/observe-rect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@reach/observe-rect/-/observe-rect-1.2.0.tgz", - "integrity": "sha512-Ba7HmkFgfQxZqqaeIWWkNK0rEhpxVQHIoVyW1YDSkGsGIXzcaW4deC8B0pZrNSSyLTdIk7y+5olKt5+g0GmFIQ==" - }, - "node_modules/@reach/popover": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/popover/-/popover-0.15.0.tgz", - "integrity": "sha512-nBR6ZlULF7ZZIqkN47QEWmdqUX2Zd6FSeYJku1il9OkiMnWzI3aTOyu1B+IJfYeIqg28D/aeF4ff0oVu1VUrqQ==", - "dependencies": { - "@reach/portal": "0.15.0", - "@reach/rect": "0.15.0", - "@reach/utils": "0.15.0", - "tabbable": "^4.0.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/popover/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/portal": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.15.0.tgz", - "integrity": "sha512-Aulqjk/PIRu+R7yhINYAAYfYh++ZdC30qwHDWDtGk2cmTEJT7m9AlvBX+W7T+Q3Ux6Wy5f37eV+TTGid1CcjFw==", - "dependencies": { - "@reach/utils": "0.15.0", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/portal/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/rect": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/rect/-/rect-0.15.0.tgz", - "integrity": "sha512-Nu0zG4Xq8Z0C3Yr3wbjtj7fvII1q2KopHDStNtmL26oWPzlaZJ9A1K6rZSPIqxKkx1hvl6AUTeom7eHTIKhHjA==", - "dependencies": { - "@reach/observe-rect": "1.2.0", - "@reach/utils": "0.15.0", - "prop-types": "^15.7.2", - "tiny-warning": "^1.0.3", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/rect/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/tooltip": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/tooltip/-/tooltip-0.16.0.tgz", - "integrity": "sha512-kZr/OqfmmBQVBxJh+OQRCq++T5f6iQaWinpLnwD5FlG5HRKPwNzTnsy+hpyY9pR2mabk+96POp/TsT4Dv3K/qQ==", - "dependencies": { - "@reach/auto-id": "0.16.0", - "@reach/portal": "0.16.0", - "@reach/rect": "0.16.0", - "@reach/utils": "0.16.0", - "@reach/visually-hidden": "0.16.0", - "prop-types": "^15.7.2", - "tiny-warning": "^1.0.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/tooltip/node_modules/@reach/auto-id": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/auto-id/-/auto-id-0.16.0.tgz", - "integrity": "sha512-5ssbeP5bCkM39uVsfQCwBBL+KT8YColdnMN5/Eto6Rj7929ql95R3HZUOkKIvj7mgPtEb60BLQxd1P3o6cjbmg==", - "dependencies": { - "@reach/utils": "0.16.0", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/tooltip/node_modules/@reach/portal": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.0.tgz", - "integrity": "sha512-vXJ0O9T+72HiSEWHPs2cx7YbSO7pQsTMhgqPc5aaddIYpo2clJx1PnYuS0lSNlVaDO0IxQhwYq43evXaXnmviw==", - "dependencies": { - "@reach/utils": "0.16.0", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/tooltip/node_modules/@reach/rect": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/rect/-/rect-0.16.0.tgz", - "integrity": "sha512-/qO9jQDzpOCdrSxVPR6l674mRHNTqfEjkaxZHluwJ/2qGUtYsA0GSZiF/+wX/yOWeBif1ycxJDa6HusAMJZC5Q==", - "dependencies": { - "@reach/observe-rect": "1.2.0", - "@reach/utils": "0.16.0", - "prop-types": "^15.7.2", - "tiny-warning": "^1.0.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/tooltip/node_modules/@reach/utils": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", - "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", - "dependencies": { - "tiny-warning": "^1.0.3", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/tooltip/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/@reach/utils": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.15.0.tgz", - "integrity": "sha512-JHHN7T5ucFiuQbqkgv8ECbRWKfRiJxrO/xHR3fHf+f2C7mVs/KkJHhYtovS1iEapR4silygX9PY0+QUmHPOTYw==", - "dependencies": { - "tiny-warning": "^1.0.3", - "tslib": "^2.1.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/utils/node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/@reach/visually-hidden": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@reach/visually-hidden/-/visually-hidden-0.16.0.tgz", - "integrity": "sha512-IIayZ3jzJtI5KfcfRVtOMFkw2ef/1dMT8D9BUuFcU2ORZAWLNvnzj1oXNoIfABKl5wtsLjY6SGmkYQ+tMPN8TA==", - "dependencies": { - "prop-types": "^15.7.2", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || 17.x", - "react-dom": "^16.8.0 || 17.x" - } - }, - "node_modules/@reach/visually-hidden/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.0.7.tgz", - "integrity": "sha512-3Zi2LGbCLDz4IIL7ir6wD0u/ggHotLkK5SlVzFzTcYaNgPR4MAt/9JYZqXWKcofPWEoptfpnCJU8Bq9sxw8QUg==", - "dev": true - }, - "node_modules/@segment/in-eu": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@segment/in-eu/-/in-eu-0.2.1.tgz", - "integrity": "sha512-7JKBw/l3S9J0ldo/n6XPfd3sT89f300KOCvmZsd8sryVZOWlE4L2LMKT538I34bjRdaOd1aJ52TsOAZUOLqxiQ==", - "dependencies": { - "jstz": "^2.0.0" - } - }, - "node_modules/@sindresorhus/is": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", - "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", - "engines": { - "node": ">=4" - } - }, - "node_modules/@stylelint/postcss-css-in-js": { - "version": "0.37.2", - "resolved": "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz", - "integrity": "sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==", - "dependencies": { - "@babel/core": ">=7.9.0" - }, - "peerDependencies": { - "postcss": ">=7.0.0", - "postcss-syntax": ">=0.36.2" - } - }, - "node_modules/@stylelint/postcss-markdown": { - "version": "0.36.2", - "resolved": "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz", - "integrity": "sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==", - "deprecated": "Use the original unforked package instead: postcss-markdown", - "dependencies": { - "remark": "^13.0.0", - "unist-util-find-all-after": "^3.0.2" - }, - "peerDependencies": { - "postcss": ">=7.0.0", - "postcss-syntax": ">=0.36.2" - } - }, - "node_modules/@types/hast": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.1.tgz", - "integrity": "sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", - "integrity": "sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==" - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "node_modules/@types/katex": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.0.tgz", - "integrity": "sha512-27BfE8zASRLYfSBNMk5/+KIjr2CBBrH0i5lhsO04fca4TGirIIMay73v3zNkzqmsaeIa/Mi5kejWDcxPLAmkvA==" - }, - "node_modules/@types/mdast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz", - "integrity": "sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" - }, - "node_modules/@types/node": { - "version": "16.4.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.4.1.tgz", - "integrity": "sha512-UW7cbLqf/Wu5XH2RKKY1cHwUNLicIDRLMraYKz+HHAerJ0ZffUEk+fMnd8qU2JaS6cAy0r8tsaf7yqHASf/Y0Q==" - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" - }, - "node_modules/@types/parse5": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", - "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" - }, - "node_modules/@types/prop-types": { - "version": "15.7.3", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", - "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==", - "devOptional": true - }, - "node_modules/@types/q": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", - "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==" - }, - "node_modules/@types/react": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", - "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", - "devOptional": true, - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/scheduler": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", - "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", - "devOptional": true - }, - "node_modules/@types/segment-analytics": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/@types/segment-analytics/-/segment-analytics-0.0.33.tgz", - "integrity": "sha512-8OB3OhKGuIkItHeQxgQpzldyaL1dVKzJQF9ujfVLmO0MJyIhXZTiOIZtkSHF6jhptEQZqm8EyTuceIAR36OS3A==" - }, - "node_modules/@types/unist": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", - "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==" - }, - "node_modules/@types/yargs": { - "version": "15.0.14", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", - "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "20.2.1", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", - "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.9.1.tgz", - "integrity": "sha512-QRLDSvIPeI1pz5tVuurD+cStNR4sle4avtHhxA+2uyixWGFjKzJ+EaFVRW6dA/jOgjV5DTAjOxboQkRDE8cRlQ==", - "dependencies": { - "@typescript-eslint/experimental-utils": "4.9.1", - "@typescript-eslint/scope-manager": "4.9.1", - "debug": "^4.1.1", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^4.0.0", - "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/experimental-utils": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.9.1.tgz", - "integrity": "sha512-c3k/xJqk0exLFs+cWSJxIjqLYwdHCuLWhnpnikmPQD2+NGAx9KjLYlBDcSI81EArh9FDYSL6dslAUSwILeWOxg==", - "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.9.1", - "@typescript-eslint/types": "4.9.1", - "@typescript-eslint/typescript-estree": "4.9.1", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.9.1.tgz", - "integrity": "sha512-Gv2VpqiomvQ2v4UL+dXlQcZ8zCX4eTkoIW+1aGVWT6yTO+6jbxsw7yQl2z2pPl/4B9qa5JXeIbhJpONKjXIy3g==", - "dependencies": { - "@typescript-eslint/scope-manager": "4.9.1", - "@typescript-eslint/types": "4.9.1", - "@typescript-eslint/typescript-estree": "4.9.1", - "debug": "^4.1.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.9.1.tgz", - "integrity": "sha512-sa4L9yUfD/1sg9Kl8OxPxvpUcqxKXRjBeZxBuZSSV1v13hjfEJkn84n0An2hN8oLQ1PmEl2uA6FkI07idXeFgQ==", - "dependencies": { - "@typescript-eslint/types": "4.9.1", - "@typescript-eslint/visitor-keys": "4.9.1" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.9.1.tgz", - "integrity": "sha512-fjkT+tXR13ks6Le7JiEdagnwEFc49IkOyys7ueWQ4O8k4quKPwPJudrwlVOJCUQhXo45PrfIvIarcrEjFTNwUA==", - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.9.1.tgz", - "integrity": "sha512-bzP8vqwX6Vgmvs81bPtCkLtM/Skh36NE6unu6tsDeU/ZFoYthlTXbBmpIrvosgiDKlWTfb2ZpPELHH89aQjeQw==", - "dependencies": { - "@typescript-eslint/types": "4.9.1", - "@typescript-eslint/visitor-keys": "4.9.1", - "debug": "^4.1.1", - "globby": "^11.0.1", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.9.1.tgz", - "integrity": "sha512-9gspzc6UqLQHd7lXQS7oWs+hrYggspv/rk6zzEMhCbYwPE/sF7oxo7GAjkS35Tdlt7wguIG+ViWCPtVZHz/ybQ==", - "dependencies": { - "@typescript-eslint/types": "4.9.1", - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@xstate/fsm": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@xstate/fsm/-/fsm-1.4.0.tgz", - "integrity": "sha512-uTHDeu2xI5E1IFwf37JFQM31RrH7mY7877RqPBS4ZqSNUwoLDuct8AhBWaXGnVizBAYyimVwgCyGa9z/NiRhXA==" - }, - "node_modules/accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dependencies": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "peerDependencies": { - "ajv": ">=5.0.0" - } - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/algoliasearch": { - "version": "4.10.5", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.10.5.tgz", - "integrity": "sha512-KmH2XkiN+8FxhND4nWFbQDkIoU6g2OjfeU9kIv4Lb+EiOOs3Gpp7jvd+JnatsCisAZsnWQdjd7zVlW7I/85QvQ==", - "dependencies": { - "@algolia/cache-browser-local-storage": "4.10.5", - "@algolia/cache-common": "4.10.5", - "@algolia/cache-in-memory": "4.10.5", - "@algolia/client-account": "4.10.5", - "@algolia/client-analytics": "4.10.5", - "@algolia/client-common": "4.10.5", - "@algolia/client-personalization": "4.10.5", - "@algolia/client-search": "4.10.5", - "@algolia/logger-common": "4.10.5", - "@algolia/logger-console": "4.10.5", - "@algolia/requester-browser-xhr": "4.10.5", - "@algolia/requester-common": "4.10.5", - "@algolia/requester-node-http": "4.10.5", - "@algolia/transporter": "4.10.5" - } - }, - "node_modules/algoliasearch-helper": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.6.0.tgz", - "integrity": "sha512-F4Smiq+Vyv/JJytuKNFuzXndPSb4pjtiHZSkEztQCcB+SORu71A8grgt2NSJhbB5VhqHW19QDtlPKbdYdcNrLg==", - "dependencies": { - "events": "^1.1.1" - }, - "peerDependencies": { - "algoliasearch": ">= 3.1 < 5" - } - }, - "node_modules/algoliasearch-helper/node_modules/events": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/anser": { - "version": "1.4.9", - "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.9.tgz", - "integrity": "sha512-AI+BjTeGt2+WFk4eWcqbQ7snZpDBt8SaLlj0RT2h5xfdWaiy51OjYvqwMrNzJLGy8iOAL6nKDITWO+rd4MkYEA==" - }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/archive-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz", - "integrity": "sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA=", - "dependencies": { - "file-type": "^4.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/archive-type/node_modules/file-type": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz", - "integrity": "sha1-G2AOX8ofvcboDApwxxyNul95BsU=", - "engines": { - "node": ">=4" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/aria-query": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", - "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", - "dependencies": { - "@babel/runtime": "^7.10.2", - "@babel/runtime-corejs3": "^7.10.2" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "node_modules/array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ast-types": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.2.tgz", - "integrity": "sha512-uWMHxJxtfj/1oZClOxDEV1sQ1HCDkA4MG8Gr69KKeBjEVH0R84WlejZ0y2DcwyBlpAEMltmVYkVgqfLFb2oyiA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=" - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" - }, - "node_modules/async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/autoprefixer": { - "version": "9.8.6", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", - "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", - "dependencies": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "colorette": "^1.2.1", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "funding": { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - }, - "node_modules/autoprefixer/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/autoprefixer/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/autoprefixer/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/autoprefixer/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/autoprefixer/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/autoprefixer/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/autoprefixer/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/autoprefixer/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/autoprefixer/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz", - "integrity": "sha512-SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.3.1.tgz", - "integrity": "sha512-3WVgVPs/7OnKU3s+lqMtkv3wQlg3WxK1YifmpJSDO0E1aPBrZWlrrTO6cxRqCXLuX2aYgCljqXIQd0VnRidV0g==", - "engines": { - "node": ">=4" - } - }, - "node_modules/axobject-query": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", - "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" - }, - "node_modules/babel-eslint": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", - "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", - "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "eslint": ">= 4.12.1" - } - }, - "node_modules/babel-eslint/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", - "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4", - "@mdx-js/util": "1.6.22" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - }, - "peerDependencies": { - "@babel/core": "^7.11.6" - } - }, - "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/babel-plugin-extract-import-names": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", - "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", - "dependencies": { - "@babel/helper-plugin-utils": "7.10.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/bfj": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz", - "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==", - "dependencies": { - "bluebird": "^3.5.5", - "check-types": "^8.0.3", - "hoopy": "^0.1.4", - "tryer": "^1.0.1" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "engines": { - "node": "*" - } - }, - "node_modules/bin-build": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bin-build/-/bin-build-3.0.0.tgz", - "integrity": "sha512-jcUOof71/TNAI2uM5uoUaDq2ePcVBQ3R/qhxAz1rX7UfvduAL/RXD3jXzvn8cVcDJdGVkiR1shal3OH0ImpuhA==", - "dependencies": { - "decompress": "^4.0.0", - "download": "^6.2.2", - "execa": "^0.7.0", - "p-map-series": "^1.0.0", - "tempfile": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-build/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/bin-build/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-build/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-build/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-build/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/bin-build/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-build/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-build/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-build/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-build/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/bin-build/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - }, - "node_modules/bin-check": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bin-check/-/bin-check-4.1.0.tgz", - "integrity": "sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA==", - "dependencies": { - "execa": "^0.7.0", - "executable": "^4.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-check/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/bin-check/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-check/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-check/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-check/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/bin-check/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-check/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-check/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-check/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-check/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/bin-check/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - }, - "node_modules/bin-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bin-version/-/bin-version-3.1.0.tgz", - "integrity": "sha512-Mkfm4iE1VFt4xd4vH+gx+0/71esbfus2LsnCGe8Pi4mndSPyT+NGES/Eg99jx8/lUGWfu3z2yuB/bt5UB+iVbQ==", - "dependencies": { - "execa": "^1.0.0", - "find-versions": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version-check": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-4.0.0.tgz", - "integrity": "sha512-sR631OrhC+1f8Cvs8WyVWOA33Y8tgwjETNPyyD/myRBXLkfS/vl74FmH/lFcRl9KY3zwGh7jFhvyk9vV3/3ilQ==", - "dependencies": { - "bin-version": "^3.0.0", - "semver": "^5.6.0", - "semver-truncate": "^1.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version-check/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/bin-version/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/bin-version/node_modules/execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version/node_modules/find-versions": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", - "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", - "dependencies": { - "semver-regex": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-version/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-version/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-version/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/bin-version/node_modules/semver-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", - "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-version/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-version/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bin-version/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/bin-wrapper": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-4.1.0.tgz", - "integrity": "sha512-hfRmo7hWIXPkbpi0ZltboCMVrU+0ClXR/JgbCKKjlDjQf6igXa7OwdqNcFWQZPZTgiY7ZpzE3+LjjkLiTN2T7Q==", - "dependencies": { - "bin-check": "^4.1.0", - "bin-version-check": "^4.0.0", - "download": "^7.1.0", - "import-lazy": "^3.1.0", - "os-filter-obj": "^2.0.0", - "pify": "^4.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-wrapper/node_modules/download": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/download/-/download-7.1.0.tgz", - "integrity": "sha512-xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ==", - "dependencies": { - "archive-type": "^4.0.0", - "caw": "^2.0.1", - "content-disposition": "^0.5.2", - "decompress": "^4.2.0", - "ext-name": "^5.0.0", - "file-type": "^8.1.0", - "filenamify": "^2.0.0", - "get-stream": "^3.0.0", - "got": "^8.3.1", - "make-dir": "^1.2.0", - "p-event": "^2.1.0", - "pify": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-wrapper/node_modules/download/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/file-type": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-8.1.0.tgz", - "integrity": "sha512-qyQ0pzAy78gVoJsmYeNgl8uH8yKhr1lVhW7JbzJmnlRi0I4R2eEDEJZVKG8agpDnLpacwNbDhLNG/LMdxHD2YQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-wrapper/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/got": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", - "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", - "dependencies": { - "@sindresorhus/is": "^0.7.0", - "cacheable-request": "^2.1.1", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "into-stream": "^3.1.0", - "is-retry-allowed": "^1.1.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "mimic-response": "^1.0.0", - "p-cancelable": "^0.4.0", - "p-timeout": "^2.0.1", - "pify": "^3.0.0", - "safe-buffer": "^5.1.1", - "timed-out": "^4.0.1", - "url-parse-lax": "^3.0.0", - "url-to-options": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/got/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/import-lazy": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz", - "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-wrapper/node_modules/p-cancelable": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", - "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/p-event": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz", - "integrity": "sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==", - "dependencies": { - "p-timeout": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-wrapper/node_modules/p-timeout": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", - "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", - "dependencies": { - "p-finally": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "engines": { - "node": ">=6" - } - }, - "node_modules/bin-wrapper/node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "engines": { - "node": ">=4" - } - }, - "node_modules/bin-wrapper/node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", - "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", - "dependencies": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/bl/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/bl/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "node_modules/bn.js": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", - "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" - }, - "node_modules/body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "dependencies": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/body-parser/node_modules/raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "dependencies": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "node_modules/browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dependencies": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "node_modules/browserify-sign/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dependencies": { - "pako": "~1.0.5" - } - }, - "node_modules/browserslist": { - "version": "4.16.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", - "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", - "dependencies": { - "caniuse-lite": "^1.0.30001219", - "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.723", - "escalade": "^3.1.1", - "node-releases": "^1.1.71" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dependencies": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "node_modules/buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "engines": { - "node": "*" - } - }, - "node_modules/buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" - }, - "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "node_modules/builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" - }, - "node_modules/byline": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz", - "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cacheable-request": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", - "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", - "dependencies": { - "clone-response": "1.0.2", - "get-stream": "3.0.0", - "http-cache-semantics": "3.8.1", - "keyv": "3.0.0", - "lowercase-keys": "1.0.0", - "normalize-url": "2.0.1", - "responselike": "1.0.2" - } - }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "node_modules/camel-case/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001246", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz", - "integrity": "sha512-Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } - }, - "node_modules/caw": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz", - "integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==", - "dependencies": { - "get-proxy": "^2.0.0", - "isurl": "^1.0.0-alpha5", - "tunnel-agent": "^0.6.0", - "url-to-options": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ccount": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", - "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-html4": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.4.tgz", - "integrity": "sha512-HRcDxZuZqMx3/a+qrzxdBKBPUpxWEq9xw2OPZ3a/174ihfrQKVsFhqtthBInFy1zZ9GgZyFXOatNujm8M+El3g==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" - }, - "node_modules/check-types": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz", - "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==" - }, - "node_modules/chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", - "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.1" - } - }, - "node_modules/ci": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ci/-/ci-2.1.1.tgz", - "integrity": "sha512-StBCU1G9zbhgVBqvslvOpT601zme9YfyZaUSjgXCtfnIynPuDBHX85WwnXv5cnh74bYo8S3xfPpI41yk1jZmRw==", - "bin": { - "ci": "ci.js" - }, - "funding": { - "url": "https://github.com/privatenumber/ci?sponsor=1" - } - }, - "node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/class-utils/node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/classnames": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", - "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "engines": { - "node": ">= 10" - } - }, - "node_modules/clone-regexp": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", - "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", - "dependencies": { - "is-regexp": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/clone-regexp/node_modules/is-regexp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", - "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", - "dependencies": { - "mimic-response": "^1.0.0" - } - }, - "node_modules/coa": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", - "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", - "dependencies": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/coa/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/coa/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/coa/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/coa/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/coa/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/coa/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" - }, - "node_modules/compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "node_modules/compute-scroll-into-view": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz", - "integrity": "sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg==" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "node_modules/config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "node_modules/console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" - }, - "node_modules/console-stream": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", - "integrity": "sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ=" - }, - "node_modules/constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" - }, - "node_modules/content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "dependencies": { - "safe-buffer": "5.1.2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "node_modules/copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/core-js-pure": { - "version": "3.15.2", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.15.2.tgz", - "integrity": "sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA==", - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "node_modules/cosmiconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - } - }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/cross-fetch": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.4.tgz", - "integrity": "sha512-1eAtFWdIubi6T4XPy6ei9iUFoKpUkIF971QLN8lIvvvwueI65+Nw5haMNKUwfJxabqlIIDODJKGrQ66gxC0PbQ==", - "dependencies": { - "node-fetch": "2.6.1" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dependencies": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - }, - "engines": { - "node": "*" - } - }, - "node_modules/css-blank-pseudo": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", - "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", - "dependencies": { - "postcss": "^7.0.5" - }, - "bin": { - "css-blank-pseudo": "cli.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/css-blank-pseudo/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/css-blank-pseudo/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/css-has-pseudo": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", - "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^5.0.0-rc.4" - }, - "bin": { - "css-has-pseudo": "cli.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/css-has-pseudo/node_modules/cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/css-has-pseudo/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dependencies": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/css-has-pseudo/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", - "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", - "dependencies": { - "postcss": "^7.0.5" - }, - "bin": { - "css-prefers-color-scheme": "cli.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/css-prefers-color-scheme/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/css-prefers-color-scheme/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" - } - }, - "node_modules/css-select-base-adapter": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" - }, - "node_modules/css-tree": { - "version": "1.0.0-alpha.37", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", - "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", - "dependencies": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/css-tree/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/css-what": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", - "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" - }, - "node_modules/cssdb": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", - "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==" - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssnano-preset-simple": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssnano-preset-simple/-/cssnano-preset-simple-3.0.0.tgz", - "integrity": "sha512-vxQPeoMRqUT3c/9f0vWeVa2nKQIHFpogtoBvFdW4GQ3IvEJ6uauCP6p3Y5zQDLFcI7/+40FTgX12o7XUL0Ko+w==", - "dependencies": { - "caniuse-lite": "^1.0.30001202" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-simple": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssnano-simple/-/cssnano-simple-3.0.0.tgz", - "integrity": "sha512-oU3ueli5Dtwgh0DyeohcIEE00QVfbPR3HzyXdAl89SfnQG3y0/qcpfLVW+jPIh3/rgMZGwuW96rejZGaYE9eUg==", - "dependencies": { - "cssnano-preset-simple": "^3.0.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - } - } - }, - "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/csso/node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/csso/node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" - }, - "node_modules/csso/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/csstype": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", - "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==", - "devOptional": true - }, - "node_modules/currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dependencies": { - "array-find-index": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/d3-ease": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.7.tgz", - "integrity": "sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ==" - }, - "node_modules/d3-timer": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", - "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz", - "integrity": "sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw==" - }, - "node_modules/dart-linkcheck": { - "version": "2.0.15", - "resolved": "https://registry.npmjs.org/dart-linkcheck/-/dart-linkcheck-2.0.15.tgz", - "integrity": "sha512-ZMvxkAyEpBTvBFk+DPjcK0ObNy8GM4gmrGG1qIu0EXb/zj25vjRWNnhLHKZw4JlOLo02oWlwDeqo98GuBlJcIg==", - "dev": true, - "bin": { - "linkcheck": "bin/linkcheck", - "linkcheck-linux": "bin/linkcheck-linux", - "linkcheck-win": "bin/linkcheck-win" - } - }, - "node_modules/data-uri-to-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", - "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/datocms-listen": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/datocms-listen/-/datocms-listen-0.1.6.tgz", - "integrity": "sha512-B3lJqobSV4fzkY7CYgYMcK0k2Hvy7/8g+LLnxiQ9Fgm+ETsQbRjHvF2neEX6kDWXNiP6pn0Fq5lkxyeGFjXU7w==" - }, - "node_modules/datocms-structured-text-generic-html-renderer": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/datocms-structured-text-generic-html-renderer/-/datocms-structured-text-generic-html-renderer-1.2.0.tgz", - "integrity": "sha512-77w/bfO0GE43ck4ClhkeNs7vG3zmsgo1uyBLEomeALtfj0rlbCWS5jI33svMl3ek1BbBukTVdqLaliyrxCwpWg==", - "dependencies": { - "datocms-structured-text-utils": "^1.2.0" - } - }, - "node_modules/datocms-structured-text-utils": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/datocms-structured-text-utils/-/datocms-structured-text-utils-1.2.0.tgz", - "integrity": "sha512-8qfpSWU/nVrMr8C0aT5n16WN0/KQbtYD2GJXd9WDf01bfr+WzJCi5szZF1dBLhD2zhs41A4gtO3aM4J1CQe4wA==", - "dependencies": { - "array-flatten": "^3.0.0" - } - }, - "node_modules/datocms-structured-text-utils/node_modules/array-flatten": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", - "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" - }, - "node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/decompress": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", - "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", - "dependencies": { - "decompress-tar": "^4.0.0", - "decompress-tarbz2": "^4.0.0", - "decompress-targz": "^4.0.0", - "decompress-unzip": "^4.0.1", - "graceful-fs": "^4.1.10", - "make-dir": "^1.0.0", - "pify": "^2.3.0", - "strip-dirs": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tar": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", - "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", - "dependencies": { - "file-type": "^5.2.0", - "is-stream": "^1.1.0", - "tar-stream": "^1.5.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tar/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-tarbz2": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", - "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", - "dependencies": { - "decompress-tar": "^4.1.0", - "file-type": "^6.1.0", - "is-stream": "^1.1.0", - "seek-bzip": "^1.0.5", - "unbzip2-stream": "^1.0.9" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tarbz2/node_modules/file-type": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", - "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-tarbz2/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-targz": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", - "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", - "dependencies": { - "decompress-tar": "^4.1.1", - "file-type": "^5.2.0", - "is-stream": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-targz/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-unzip": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", - "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", - "dependencies": { - "file-type": "^3.8.0", - "get-stream": "^2.2.0", - "pify": "^2.3.0", - "yauzl": "^2.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/decompress-unzip/node_modules/file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-unzip/node_modules/get-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", - "dependencies": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-unzip/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=" - }, - "node_modules/deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "node_modules/deepmerge": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", - "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dependencies": { - "object-keys": "^1.0.12" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/dequal": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.2.tgz", - "integrity": "sha512-q9K8BlJVxK7hQYqa6XISGmBZbtQQWVXSrRrWreHC94rMt1QL/Impruc+7p2CYSYuVIUr+YCt6hjrs1kkdJRTug==", - "engines": { - "node": ">=6" - } - }, - "node_modules/des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "node_modules/detab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", - "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", - "dependencies": { - "repeat-string": "^1.5.4" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" - }, - "node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dependencies": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - } - }, - "node_modules/dom-serializer/node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/domain-browser": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.19.0.tgz", - "integrity": "sha512-fRA+BaAWOR/yr/t7T9E9GJztHPeFjj8U35ajyAjCDtAAnTn1Rc1f6W6VGPJrO1tkQv9zWu+JRof7z6oQtiYVFQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" - }, - "node_modules/domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dependencies": { - "domelementtype": "1" - } - }, - "node_modules/domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", - "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "engines": { - "node": ">=10" - } - }, - "node_modules/download": { - "version": "6.2.5", - "resolved": "https://registry.npmjs.org/download/-/download-6.2.5.tgz", - "integrity": "sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA==", - "dependencies": { - "caw": "^2.0.0", - "content-disposition": "^0.5.2", - "decompress": "^4.0.0", - "ext-name": "^5.0.0", - "file-type": "5.2.0", - "filenamify": "^2.0.0", - "get-stream": "^3.0.0", - "got": "^7.0.0", - "make-dir": "^1.0.0", - "p-event": "^1.0.0", - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/download/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/downshift": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/downshift/-/downshift-3.1.5.tgz", - "integrity": "sha512-2PpR4+A0WiF0R+Q6sq79sSG+sAy4KBlH5FwnU8FtD5zkeZH/UQZm/QS7kq/CglSH8vl1qpPoaap4Z2Oe9Swcrg==", - "dependencies": { - "@babel/runtime": "^7.1.2", - "compute-scroll-into-view": "^1.0.9", - "prop-types": "^15.6.0", - "react-is": "^16.5.2" - }, - "peerDependencies": { - "react": ">=0.14.9" - } - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "node_modules/duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "node_modules/ejs": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.5.tgz", - "integrity": "sha512-dldq3ZfFtgVTJMLjOe+/3sROTzALlL9E34V4/sDtUd/KlBSS0s6U1/+WPE1B4sj9CXHJpL1M6rhNJnc9Wbal9w==", - "dependencies": { - "jake": "^10.6.1" - }, - "bin": { - "ejs": "bin/cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.3.785", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.785.tgz", - "integrity": "sha512-WmCgAeURsMFiyoJ646eUaJQ7GNfvMRLXo+GamUyKVNEM4MqTAsXyC0f38JEB4N3BtbD0tlAKozGP5E2T9K3YGg==" - }, - "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", - "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/error-stack-parser": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz", - "integrity": "sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==", - "dependencies": { - "stackframe": "^1.1.1" - } - }, - "node_modules/es-abstract": { - "version": "1.18.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", - "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", - "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.2", - "is-callable": "^1.2.3", - "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.3", - "is-string": "^1.0.6", - "object-inspect": "^1.10.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" - }, - "node_modules/esbuild": { - "version": "0.11.23", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.11.23.tgz", - "integrity": "sha512-iaiZZ9vUF5wJV8ob1tl+5aJTrwDczlvGP0JoMmnpC2B0ppiMCu8n8gmy5ZTGl5bcG081XBVn+U+jP+mPFm5T5Q==", - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.23.0.tgz", - "integrity": "sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q==", - "dependencies": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.21", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.4", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-next": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-11.1.2.tgz", - "integrity": "sha512-dFutecxX2Z5/QVlLwdtKt+gIfmNMP8Qx6/qZh3LM/DFVdGJEAnUKrr4VwGmACB2kx/PQ5bx3R+QxnEg4fDPiTg==", - "dev": true, - "dependencies": { - "@next/eslint-plugin-next": "11.1.2", - "@rushstack/eslint-patch": "^1.0.6", - "@typescript-eslint/parser": "^4.20.0", - "eslint-import-resolver-node": "^0.3.4", - "eslint-import-resolver-typescript": "^2.4.0", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-jsx-a11y": "^6.4.1", - "eslint-plugin-react": "^7.23.1", - "eslint-plugin-react-hooks": "^4.2.0" - }, - "peerDependencies": { - "eslint": "^7.23.0", - "next": ">=10.2.0", - "typescript": ">=3.3.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/parser": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.32.0.tgz", - "integrity": "sha512-lhtYqQ2iEPV5JqV7K+uOVlPePjClj4dOw7K4/Z1F2yvjIUvyr13yJnDzkK6uon4BjHYuHy3EG0c2Z9jEhFk56w==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "4.32.0", - "@typescript-eslint/types": "4.32.0", - "@typescript-eslint/typescript-estree": "4.32.0", - "debug": "^4.3.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/scope-manager": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.32.0.tgz", - "integrity": "sha512-DK+fMSHdM216C0OM/KR1lHXjP1CNtVIhJ54kQxfOE6x8UGFAjha8cXgDMBEIYS2XCYjjCtvTkjQYwL3uvGOo0w==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "4.32.0", - "@typescript-eslint/visitor-keys": "4.32.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/types": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.32.0.tgz", - "integrity": "sha512-LE7Z7BAv0E2UvqzogssGf1x7GPpUalgG07nGCBYb1oK4mFsOiFC/VrSMKbZQzFJdN2JL5XYmsx7C7FX9p9ns0w==", - "dev": true, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/typescript-estree": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.32.0.tgz", - "integrity": "sha512-tRYCgJ3g1UjMw1cGG8Yn1KzOzNlQ6u1h9AmEtPhb5V5a1TmiHWcRyF/Ic+91M4f43QeChyYlVTcf3DvDTZR9vw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "4.32.0", - "@typescript-eslint/visitor-keys": "4.32.0", - "debug": "^4.3.1", - "globby": "^11.0.3", - "is-glob": "^4.0.1", - "semver": "^7.3.5", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-next/node_modules/@typescript-eslint/visitor-keys": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.32.0.tgz", - "integrity": "sha512-e7NE0qz8W+atzv3Cy9qaQ7BTLwWsm084Z0c4nIO2l3Bp6u9WIgdqCgyPyV5oSPDMIW3b20H59OOCmVk3jw3Ptw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "4.32.0", - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-next/node_modules/globby": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", - "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-config-prettier": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-7.0.0.tgz", - "integrity": "sha512-8Y8lGLVPPZdaNA7JXqnvETVC7IiVRgAP6afQu9gOQRn90YY3otMNh+x7Vr2vMePQntF+5erdSUBqSzCmU/AxaQ==", - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", - "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "resolve": "^1.20.0" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-import-resolver-typescript": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz", - "integrity": "sha512-qZ6e5CFr+I7K4VVhQu3M/9xGv9/YmwsEXrsm3nimw8vWaVHRDrQRp26BgCypTxBp3vUp4o5aVEJRiy0F2DFddQ==", - "dev": true, - "dependencies": { - "debug": "^4.3.1", - "glob": "^7.1.7", - "is-glob": "^4.0.1", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.9.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*" - } - }, - "node_modules/eslint-module-utils": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", - "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "pkg-dir": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-module-utils/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.24.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", - "integrity": "sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-module-utils": "^2.6.2", - "find-up": "^2.0.0", - "has": "^1.0.3", - "is-core-module": "^2.6.0", - "minimatch": "^3.0.4", - "object.values": "^1.1.4", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.11.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/eslint-plugin-import/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-plugin-import/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.4.1.tgz", - "integrity": "sha512-0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg==", - "dependencies": { - "@babel/runtime": "^7.11.2", - "aria-query": "^4.2.2", - "array-includes": "^3.1.1", - "ast-types-flow": "^0.0.7", - "axe-core": "^4.0.2", - "axobject-query": "^2.2.0", - "damerau-levenshtein": "^1.0.6", - "emoji-regex": "^9.0.0", - "has": "^1.0.3", - "jsx-ast-utils": "^3.1.0", - "language-tags": "^1.0.5" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7" - } - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" - }, - "node_modules/eslint-plugin-prettier": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.0.tgz", - "integrity": "sha512-tMTwO8iUWlSRZIwS9k7/E4vrTsfvsrcM5p1eftyuqWH25nKsz/o6/54I7jwQ/3zobISyC7wMy9ZsFwgTxOcOpQ==", - "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "eslint": ">=5.0.0", - "prettier": ">=1.13.0" - }, - "peerDependenciesMeta": { - "eslint-plugin-prettier": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.26.0.tgz", - "integrity": "sha512-dceliS5itjk4EZdQYtLMz6GulcsasguIs+VTXuiC7Q5IPIdGTkyfXVdmsQOqEhlD9MciofH4cMcT1bw1WWNxCQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.3", - "array.prototype.flatmap": "^1.2.4", - "doctrine": "^2.1.0", - "estraverse": "^5.2.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.0.4", - "object.entries": "^1.1.4", - "object.fromentries": "^2.0.4", - "object.hasown": "^1.0.0", - "object.values": "^1.1.4", - "prop-types": "^15.7.2", - "resolve": "^2.0.0-next.3", - "semver": "^6.3.0", - "string.prototype.matchall": "^4.0.5" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", - "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz", - "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==", - "dev": true, - "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint/node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dependencies": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/exec-buffer": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz", - "integrity": "sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA==", - "dependencies": { - "execa": "^0.7.0", - "p-finally": "^1.0.0", - "pify": "^3.0.0", - "rimraf": "^2.5.4", - "tempfile": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/exec-buffer/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-buffer/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/exec-buffer/node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "engines": { - "node": ">=4" - } - }, - "node_modules/exec-buffer/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/exec-buffer/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-buffer/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-buffer/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/exec-buffer/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - }, - "node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execall": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", - "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", - "dependencies": { - "clone-regexp": "^2.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/executable": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", - "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", - "dependencies": { - "pify": "^2.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/executable/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exenv": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", - "integrity": "sha1-KueOhdmJQVhnCwPUe+wfA72Ru50=" - }, - "node_modules/expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/expand-brackets/node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dependencies": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "node_modules/ext-list": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", - "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", - "dependencies": { - "mime-db": "^1.28.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ext-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", - "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", - "dependencies": { - "ext-list": "^2.0.0", - "sort-keys-length": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extend-shallow/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extract-files": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/extract-files/-/extract-files-9.0.0.tgz", - "integrity": "sha512-CvdFfHkC95B4bBBk36hcEmvdR2awOdhhVUYH6S/zrVj3477zven/fJMYg7121h4T1xHZC+tetUpubpAhxwI7hQ==", - "engines": { - "node": "^10.17.0 || ^12.0.0 || >= 13.7.0" - }, - "funding": { - "url": "https://github.com/sponsors/jaydenseric" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" - }, - "node_modules/fast-equals": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.3.tgz", - "integrity": "sha512-0EMw4TTUxsMDpDkCg0rXor2gsg+npVrMIHbEhvD0HZyIhUX6AktC/yasm+qKwfyswd06Qy95ZKk8p2crTo0iPA==" - }, - "node_modules/fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "node_modules/fast-xml-parser": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", - "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==", - "bin": { - "xml2js": "cli.js" - }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" - } - }, - "node_modules/fastest-levenshtein": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", - "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==" - }, - "node_modules/fastq": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", - "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fathom-client": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/fathom-client/-/fathom-client-3.2.0.tgz", - "integrity": "sha512-WF/qA5wXYSuA5K8uiIhGNbErOcTAmfLEWrBxWP2px2dEc9waH9zxjdh9k0F907VCBhdJrv+f7V3HT/Pmro40zA==" - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/file-loader": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-3.0.1.tgz", - "integrity": "sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw==", - "dependencies": { - "loader-utils": "^1.0.2", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "webpack": "^4.0.0" - } - }, - "node_modules/file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", - "engines": { - "node": ">=4" - } - }, - "node_modules/filelist": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz", - "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==", - "dependencies": { - "minimatch": "^3.0.4" - } - }, - "node_modules/filename-reserved-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", - "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik=", - "engines": { - "node": ">=4" - } - }, - "node_modules/filenamify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz", - "integrity": "sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==", - "dependencies": { - "filename-reserved-regex": "^2.0.0", - "strip-outer": "^1.0.0", - "trim-repeated": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/filesize": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", - "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-cache-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-cache-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-cache-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/find-cache-dir/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-versions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", - "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", - "dev": true, - "dependencies": { - "semver-regex": "^3.1.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz", - "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==" - }, - "node_modules/flatten": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", - "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", - "deprecated": "flatten is deprecated in favor of utility frameworks such as lodash." - }, - "node_modules/focus-lock": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-0.9.2.tgz", - "integrity": "sha512-YtHxjX7a0IC0ZACL5wsX8QdncXofWpGPNoVMuI/nZUrPGp6LmNI6+D5j0pPj+v8Kw5EpweA+T5yImK0rnWf7oQ==", - "dependencies": { - "tslib": "^2.0.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/focus-lock/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" - }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/formik": { - "version": "2.2.9", - "resolved": "https://registry.npmjs.org/formik/-/formik-2.2.9.tgz", - "integrity": "sha512-LQLcISMmf1r5at4/gyJigGn0gOwFbeEAlji+N9InZF6LIMXnFNkO42sCI8Jt84YZggpD4cPWObAZaxpEFtSzNA==", - "funding": [ - { - "type": "individual", - "url": "https://opencollective.com/formik" - } - ], - "dependencies": { - "deepmerge": "^2.1.1", - "hoist-non-react-statics": "^3.3.0", - "lodash": "^4.17.21", - "lodash-es": "^4.17.21", - "react-fast-compare": "^2.0.1", - "tiny-warning": "^1.0.2", - "tslib": "^1.10.0" - }, - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/framer-motion": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-5.3.3.tgz", - "integrity": "sha512-s4mz0E4/TPTKXqKnpb578S0Jp/0JhAyvDpULFe95kHnWs1lOCKf2+EEl6yAX+1wfPLUYokZzudiK9jam0ZAVdQ==", - "dependencies": { - "framesync": "6.0.1", - "hey-listen": "^1.0.8", - "popmotion": "11.0.0", - "style-value-types": "5.0.0", - "tslib": "^2.1.0" - }, - "optionalDependencies": { - "@emotion/is-prop-valid": "^0.8.2" - }, - "peerDependencies": { - "react": ">=16.8 || ^17.0.0", - "react-dom": ">=16.8 || ^17.0.0" - } - }, - "node_modules/framer-motion/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/framesync": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/framesync/-/framesync-6.0.1.tgz", - "integrity": "sha512-fUY88kXvGiIItgNC7wcTOl0SNRCVXMKSWW2Yzfmn7EKNc+MpCzcz9DhdHcdjbrtN3c6R4H5dTY2jiCpPdysEjA==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/framesync/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "node_modules/from2/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/from2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "node_modules/fs-exists-sync": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", - "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fs-extra": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", - "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^1.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" - }, - "node_modules/fuzzysearch": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fuzzysearch/-/fuzzysearch-1.0.3.tgz", - "integrity": "sha1-3/yA9tawQiPyImqnndGUIxCW0Ag=" - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-nonce": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", - "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", - "engines": { - "node": ">=6" - } - }, - "node_modules/get-orientation": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-orientation/-/get-orientation-1.1.2.tgz", - "integrity": "sha512-/pViTfifW+gBbh/RnlFYHINvELT9Znt+SYyDKAUL6uV6By019AK/s+i9XP4jSwq7lwP38Fd8HVeTxym3+hkwmQ==", - "dependencies": { - "stream-parser": "^0.3.1" - } - }, - "node_modules/get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" - }, - "node_modules/get-proxy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz", - "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==", - "dependencies": { - "npm-conf": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/github-slugger": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.3.0.tgz", - "integrity": "sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q==", - "dependencies": { - "emoji-regex": ">=6.0.0 <=6.1.1" - } - }, - "node_modules/github-slugger/node_modules/emoji-regex": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.1.tgz", - "integrity": "sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4=" - }, - "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" - }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dependencies": { - "global-prefix": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globjoin": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", - "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=" - }, - "node_modules/gonzales-pe": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", - "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "gonzales": "bin/gonzales.js" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "dependencies": { - "decompress-response": "^3.2.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-plain-obj": "^1.1.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "p-cancelable": "^0.3.0", - "p-timeout": "^1.1.1", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "url-parse-lax": "^1.0.0", - "url-to-options": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/got/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/got/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" - }, - "node_modules/graphql": { - "version": "15.6.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.6.0.tgz", - "integrity": "sha512-WJR872Zlc9hckiEPhXgyUftXH48jp2EjO5tgBBOyNMRJZ9fviL2mJBD6CAysk6N5S0r9BTs09Qk39nnJBkvOXQ==", - "engines": { - "node": ">= 10.x" - } - }, - "node_modules/graphql-request": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/graphql-request/-/graphql-request-3.5.0.tgz", - "integrity": "sha512-Io89QpfU4rqiMbqM/KwMBzKaDLOppi8FU8sEccCE4JqCgz95W9Q8bvxQ4NfPALLSMvg9nafgg8AkYRmgKSlukA==", - "dependencies": { - "cross-fetch": "^3.0.6", - "extract-files": "^9.0.0", - "form-data": "^3.0.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x" - } - }, - "node_modules/gray-matter": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.2.tgz", - "integrity": "sha512-7hB/+LxrOjq/dd8APlK0r24uL/67w7SkYnfwhNFwg/VDIGWGmduTDYf3WNstLW2fbbmRwrDGCVSJ2isuf2+4Hw==", - "dependencies": { - "js-yaml": "^3.11.0", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/gzip-size": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", - "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", - "dependencies": { - "duplexer": "^0.1.1", - "pify": "^4.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gzip-size/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "engines": { - "node": ">=6" - } - }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-symbol-support-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", - "engines": { - "node": "*" - } - }, - "node_modules/has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", - "dependencies": { - "has-symbol-support-x": "^1.4.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/has-values/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hast-to-hyperscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", - "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", - "dependencies": { - "@types/unist": "^2.0.3", - "comma-separated-tokens": "^1.0.0", - "property-information": "^5.3.0", - "space-separated-tokens": "^1.0.0", - "style-to-object": "^0.3.0", - "unist-util-is": "^4.0.0", - "web-namespaces": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", - "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", - "dependencies": { - "@types/parse5": "^5.0.0", - "hastscript": "^6.0.0", - "property-information": "^5.0.0", - "vfile": "^4.0.0", - "vfile-location": "^3.2.0", - "web-namespaces": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", - "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-raw": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", - "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", - "dependencies": { - "@types/hast": "^2.0.0", - "hast-util-from-parse5": "^6.0.0", - "hast-util-to-parse5": "^6.0.0", - "html-void-elements": "^1.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^3.0.0", - "vfile": "^4.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-html": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-7.1.3.tgz", - "integrity": "sha512-yk2+1p3EJTEE9ZEUkgHsUSVhIpCsL/bvT8E5GzmWc+N1Po5gBw+0F8bo7dpxXR0nu0bQVxVZGX2lBGF21CmeDw==", - "dependencies": { - "ccount": "^1.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-is-element": "^1.0.0", - "hast-util-whitespace": "^1.0.0", - "html-void-elements": "^1.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0", - "stringify-entities": "^3.0.1", - "unist-util-is": "^4.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-parse5": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", - "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", - "dependencies": { - "hast-to-hyperscript": "^9.0.0", - "property-information": "^5.0.0", - "web-namespaces": "^1.0.0", - "xtend": "^4.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-string": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.4.tgz", - "integrity": "sha512-eK0MxRX47AV2eZ+Lyr18DCpQgodvaS3fAQO2+b9Two9F5HEoRPhiUMNzoXArMJfZi2yieFzUBMRl3HNJ3Jus3w==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", - "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", - "dependencies": { - "hast-util-is-element": "^1.0.0", - "repeat-string": "^1.0.0", - "unist-util-find-after": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-whitespace": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-1.0.4.tgz", - "integrity": "sha512-I5GTdSfhYfAPNztx2xJRQpG8cuDSNt599/7YUn7Gx/WxNMsG+a835k97TDkFgk123cwjfwINaZknkKkphx/f2A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "bin": { - "he": "bin/he" - } - }, - "node_modules/hey-listen": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz", - "integrity": "sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==" - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dependencies": { - "react-is": "^16.7.0" - } - }, - "node_modules/hoopy": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", - "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/hosted-git-info": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", - "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/html-tags": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", - "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/html-void-elements": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", - "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dependencies": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - } - }, - "node_modules/http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" - }, - "node_modules/http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/http-errors/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" - }, - "node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/husky": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.7.tgz", - "integrity": "sha512-0fQlcCDq/xypoyYSJvEuzbDPHFf8ZF9IXKJxlrnvxABTSzK1VPT2RKYQKrcgJ+YD39swgoB6sbzywUqFxUiqjw==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "chalk": "^4.0.0", - "ci-info": "^2.0.0", - "compare-versions": "^3.6.0", - "cosmiconfig": "^7.0.0", - "find-versions": "^4.0.0", - "opencollective-postinstall": "^2.0.2", - "pkg-dir": "^5.0.0", - "please-upgrade-node": "^3.2.0", - "slash": "^3.0.0", - "which-pm-runs": "^1.0.0" - }, - "bin": { - "husky-run": "bin/run.js", - "husky-upgrade": "lib/upgrader/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/husky" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/image-size": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.0.tgz", - "integrity": "sha512-JLJ6OwBfO1KcA+TvJT+v8gbE6iWbj24LyDNFgFEN0lzegn6cC6a/p3NIDaepMsJjQjlUWqIC7wJv8lBFxPNjcw==", - "dependencies": { - "queue": "6.0.2" - }, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/imagemin": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/imagemin/-/imagemin-6.1.0.tgz", - "integrity": "sha512-8ryJBL1CN5uSHpiBMX0rJw79C9F9aJqMnjGnrd/1CafegpNuA81RBAAru/jQQEOWlOJJlpRnlcVFF6wq+Ist0A==", - "dependencies": { - "file-type": "^10.7.0", - "globby": "^8.0.1", - "make-dir": "^1.0.0", - "p-pipe": "^1.1.0", - "pify": "^4.0.1", - "replace-ext": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/imagemin-mozjpeg": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/imagemin-mozjpeg/-/imagemin-mozjpeg-9.0.0.tgz", - "integrity": "sha512-TwOjTzYqCFRgROTWpVSt5UTT0JeCuzF1jswPLKALDd89+PmrJ2PdMMYeDLYZ1fs9cTovI9GJd68mRSnuVt691w==", - "dependencies": { - "execa": "^4.0.0", - "is-jpg": "^2.0.0", - "mozjpeg": "^7.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/imagemin-optipng": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/imagemin-optipng/-/imagemin-optipng-8.0.0.tgz", - "integrity": "sha512-CUGfhfwqlPjAC0rm8Fy+R2DJDBGjzy2SkfyT09L8rasnF9jSoHFqJ1xxSZWK6HVPZBMhGPMxCTL70OgTHlLF5A==", - "dependencies": { - "exec-buffer": "^3.0.0", - "is-png": "^2.0.0", - "optipng-bin": "^7.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/imagemin-svgo": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/imagemin-svgo/-/imagemin-svgo-8.0.0.tgz", - "integrity": "sha512-++fDnnxsLT+4rpt8babwiIbzapgBzeS2Kgcy+CwgBvgSRFltBFhX2WnpCziMtxhRCzqJcCE9EcHWZP/sj+G3rQ==", - "dependencies": { - "is-svg": "^4.2.1", - "svgo": "^1.3.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/imagemin-svgo?sponsor=1" - } - }, - "node_modules/imagemin/node_modules/@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/imagemin/node_modules/array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dependencies": { - "array-uniq": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "dependencies": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/imagemin/node_modules/fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "dependencies": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/imagemin/node_modules/file-type": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", - "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/imagemin/node_modules/fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/imagemin/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/globby": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", - "dependencies": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/imagemin/node_modules/globby/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "engines": { - "node": ">=4" - } - }, - "node_modules/imagemin/node_modules/ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" - }, - "node_modules/imagemin/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/imagemin/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/imagemin/node_modules/path-type/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "engines": { - "node": ">=4" - } - }, - "node_modules/imagemin/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "engines": { - "node": ">=6" - } - }, - "node_modules/imagemin/node_modules/slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imagemin/node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/img-loader": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/img-loader/-/img-loader-3.0.2.tgz", - "integrity": "sha512-rSriLKgvi85Km7ppSF+AEAM3nU4fxpvCkaXtC/IoCEU7jfks55bEANFs0bB9YXYkxY9JurZQIZFtXh5Gue3upw==", - "dependencies": { - "loader-utils": "^1.1.0" - }, - "peerDependencies": { - "imagemin": "^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" - }, - "node_modules/inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/intersection-observer": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.0.tgz", - "integrity": "sha512-2Vkz8z46Dv401zTWudDGwO7KiGHNDkMv417T5ItcNYfmvHR/1qCTVBO9vwH8zZmQ0WkA/1ARwpysR9bsnop4NQ==" - }, - "node_modules/into-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", - "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", - "dependencies": { - "from2": "^2.1.1", - "p-is-promise": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/ip-regex": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", - "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumeric": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz", - "integrity": "sha1-Spzvcdr0wAHB2B1j0UDPU/1oifQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-arguments": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", - "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==", - "dependencies": { - "call-bind": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "node_modules/is-bigint": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", - "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", - "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", - "dependencies": { - "call-bind": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, - "node_modules/is-callable": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", - "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-date-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz", - "integrity": "sha512-ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-jpg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-jpg/-/is-jpg-2.0.0.tgz", - "integrity": "sha1-LhmX+m6RZuqsAkLarkQ0A+TvHZc=", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-natural-number": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", - "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" - }, - "node_modules/is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", - "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-png": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-png/-/is-png-2.0.0.tgz", - "integrity": "sha512-4KPGizaVGj2LK7xwJIz8o5B2ubu1D/vcQsgOGFEDlpcvgZHto4gBnyd0ig7Ws+67ixmwKoNmu0hYnpo6AaKb5g==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-regex": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", - "dependencies": { - "call-bind": "^1.0.2", - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-retry-allowed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-string": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", - "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-svg": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-4.3.1.tgz", - "integrity": "sha512-h2CGs+yPUyvkgTJQS9cJzo9lYK06WgRiXUqBBHtglSzVKAuH4/oWsqk7LGfbSa1hGk9QcZ0SyQtVggvBA8LZXA==", - "dependencies": { - "fast-xml-parser": "^3.19.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz", - "integrity": "sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==", - "dependencies": { - "available-typed-arrays": "^1.0.2", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.0-next.2", - "foreach": "^2.0.5", - "has-symbols": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-url-superb": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-url-superb/-/is-url-superb-3.0.0.tgz", - "integrity": "sha512-3faQP+wHCGDQT1qReM5zCPx2mxoal6DzbzquFlCYJLWyy4WPTved33ea2xFbX37z4NoriEwZGIYhFtx8RUB5wQ==", - "dependencies": { - "url-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" - }, - "node_modules/is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "node_modules/iserror": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/iserror/-/iserror-0.0.2.tgz", - "integrity": "sha1-vVNFH+L2aLnyQCwZZnh6qix8C/U=" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isomorphic-unfetch": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz", - "integrity": "sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==", - "dependencies": { - "node-fetch": "^2.6.1", - "unfetch": "^4.2.0" - } - }, - "node_modules/isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", - "dependencies": { - "has-to-string-tag-x": "^1.2.0", - "is-object": "^1.0.1" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/jake": { - "version": "10.8.2", - "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz", - "integrity": "sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==", - "dependencies": { - "async": "0.9.x", - "chalk": "^2.4.2", - "filelist": "^1.0.1", - "minimatch": "^3.0.4" - }, - "bin": { - "jake": "bin/cli.js" - }, - "engines": { - "node": "*" - } - }, - "node_modules/jake/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jake/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jake/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/jake/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/jake/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/jake/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jest-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", - "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", - "dev": true, - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-worker": { - "version": "27.0.0-next.5", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.0-next.5.tgz", - "integrity": "sha512-mk0umAQ5lT+CaOJ+Qp01N6kz48sJG2kr2n1rX0koqKf6FIygQV0qLOdN9SCYID4IVeSigDOcPeGLozdMLYfb5g==", - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-cookie": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", - "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" - }, - "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonfile/node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/jstz": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/jstz/-/jstz-2.1.1.tgz", - "integrity": "sha512-8hfl5RD6P7rEeIbzStBz3h4f+BQHfq/ABtoU6gXKQv5OcZhnmrIpG7e1pYaZ8hS9e0mp+bxUj08fnDUbKctYyA==", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", - "dependencies": { - "array-includes": "^3.1.2", - "object.assign": "^4.1.2" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/kapellmeister": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/kapellmeister/-/kapellmeister-3.0.1.tgz", - "integrity": "sha512-S7+gYcziMREv8RxG46138mb1O4Xf9II/bCxEJPYkhlZ7PgGWTlicgsyNad/DGc5oEAlWGLXE5ExLbTDVvJmgDA==", - "dependencies": { - "d3-timer": "^1.0.9" - } - }, - "node_modules/katex": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.12.0.tgz", - "integrity": "sha512-y+8btoc/CK70XqcHqjxiGWBOeIL8upbS0peTPXTvgrh21n1RiWWcIpSWM+4uXq+IAgNh9YYQWdc7LVDPDAEEAg==", - "dependencies": { - "commander": "^2.19.0" - }, - "bin": { - "katex": "cli.js" - } - }, - "node_modules/katex/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/keyv": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", - "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", - "dependencies": { - "json-buffer": "3.0.0" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/known-css-properties": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.20.0.tgz", - "integrity": "sha512-URvsjaA9ypfreqJ2/ylDr5MUERhJZ+DhguoWRr2xgS5C7aGCalXo+ewL+GixgKBfhT2vuL02nbIgNGqVWgTOYw==" - }, - "node_modules/language-subtag-registry": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz", - "integrity": "sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==" - }, - "node_modules/language-tags": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", - "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=", - "dependencies": { - "language-subtag-registry": "~0.3.2" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/line-reader": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.4.0.tgz", - "integrity": "sha1-F+RIGNoKwzVnW6MAlU+U72cOZv0=" - }, - "node_modules/lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" - }, - "node_modules/lint-staged": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-11.1.2.tgz", - "integrity": "sha512-6lYpNoA9wGqkL6Hew/4n1H6lRqF3qCsujVT0Oq5Z4hiSAM7S6NksPJ3gnr7A7R52xCtiZMcEUNNQ6d6X5Bvh9w==", - "dev": true, - "dependencies": { - "chalk": "^4.1.1", - "cli-truncate": "^2.1.0", - "commander": "^7.2.0", - "cosmiconfig": "^7.0.0", - "debug": "^4.3.1", - "enquirer": "^2.3.6", - "execa": "^5.0.0", - "listr2": "^3.8.2", - "log-symbols": "^4.1.0", - "micromatch": "^4.0.4", - "normalize-path": "^3.0.0", - "please-upgrade-node": "^3.2.0", - "string-argv": "0.3.1", - "stringify-object": "^3.3.0" - }, - "bin": { - "lint-staged": "bin/lint-staged.js" - }, - "funding": { - "url": "https://opencollective.com/lint-staged" - } - }, - "node_modules/lint-staged/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/listr2": { - "version": "3.12.2", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.12.2.tgz", - "integrity": "sha512-64xC2CJ/As/xgVI3wbhlPWVPx0wfTqbUAkpb7bjDi0thSWMqrf07UFhrfsGoo8YSXmF049Rp9C0cjLC8rZxK9A==", - "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^1.4.0", - "log-update": "^4.0.0", - "p-map": "^4.0.0", - "rxjs": "^6.6.7", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - } - }, - "node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-script": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/load-script/-/load-script-1.0.0.tgz", - "integrity": "sha1-BJGTngvuVkPuSUp+PaPSuscMbKQ=" - }, - "node_modules/loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/loader-utils/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" - }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" - }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" - }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" - }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", - "dependencies": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update/node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/log-update/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/logalot": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz", - "integrity": "sha1-X46MkNME7fElMJUaVVSruMXj9VI=", - "dependencies": { - "figures": "^1.3.5", - "squeak": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/logalot/node_modules/figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "dependencies": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/longest-streak": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", - "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dependencies": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dependencies": { - "tslib": "^2.0.3" - } - }, - "node_modules/lower-case/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz", - "integrity": "sha1-IfYArBwwlcPG5JfuZyce4ISB/p4=", - "dependencies": { - "get-stdin": "^4.0.1", - "indent-string": "^2.1.0", - "longest": "^1.0.0", - "meow": "^3.3.0" - }, - "bin": { - "lpad-align": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dependencies": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" - }, - "node_modules/lpad-align/node_modules/indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dependencies": { - "repeating": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dependencies": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/lpad-align/node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dependencies": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/lpad-align/node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dependencies": { - "is-utf8": "^0.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dependencies": { - "get-stdin": "^4.0.1" - }, - "bin": { - "strip-indent": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lpad-align/node_modules/trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-obj": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz", - "integrity": "sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dependencies": { - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "dependencies": { - "repeat-string": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/mathml-tag-names": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", - "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/mdast-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", - "dependencies": { - "unist-util-remove": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-compact": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz", - "integrity": "sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-definitions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", - "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-math": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-0.1.2.tgz", - "integrity": "sha512-fogAitds+wH+QRas78Yr1TwmQGN4cW/G2WRw5ePuNoJbBSPJCxIOCE8MTzHgWHVSpgkRaPQTgfzXRE1CrwWSlg==", - "dependencies": { - "longest-streak": "^2.0.0", - "mdast-util-to-markdown": "^0.6.0", - "repeat-string": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", - "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "mdast-util-definitions": "^4.0.0", - "mdurl": "^1.0.0", - "unist-builder": "^2.0.0", - "unist-util-generated": "^1.0.0", - "unist-util-position": "^3.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-markdown": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", - "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "longest-streak": "^2.0.0", - "mdast-util-to-string": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.0.0", - "zwitch": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" - }, - "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memoize-one": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", - "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" - }, - "node_modules/meow": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", - "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", - "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micro-memoize": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/micro-memoize/-/micro-memoize-4.0.9.tgz", - "integrity": "sha512-Z2uZi/IUMGQDCXASdujXRqrXXEwSY0XffUrAOllhqzQI3wpUyZbiZTiE2JuYC0HSG2G7DbCS5jZmsEKEGZuemg==" - }, - "node_modules/micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - } - }, - "node_modules/micromark-extension-math": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-0.1.2.tgz", - "integrity": "sha512-ZJXsT2eVPM8VTmcw0CPSDeyonOn9SziGK3Z+nkf9Vb6xMPeU+4JMEnO6vzDL10562Favw8Vste74f54rxJ/i6Q==", - "dependencies": { - "katex": "^0.12.0", - "micromark": "~2.11.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", - "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.31", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", - "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", - "dependencies": { - "mime-db": "1.48.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/moize": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/moize/-/moize-6.1.0.tgz", - "integrity": "sha512-WrMcM+C2Jy+qyOC/UMhA3BCHGowxV34dhDZnDNfxsREW/8N+33SFjmc23Q61Xv1WUthUA1vYopTitP1sZ5jkeg==", - "dependencies": { - "fast-equals": "^2.0.1", - "micro-memoize": "^4.0.9" - } - }, - "node_modules/mozjpeg": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/mozjpeg/-/mozjpeg-7.1.0.tgz", - "integrity": "sha512-A6nVpI33DVi04HxatRx3PZTeVAOP1AC/T/5kXEvP0U8F+J11mmFFDv46BM2j5/cEyzDDtK8ptHeBSphNMrQLqA==", - "hasInstallScript": true, - "dependencies": { - "bin-build": "^3.0.0", - "bin-wrapper": "^4.0.0", - "logalot": "^2.1.0" - }, - "bin": { - "mozjpeg": "cli.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" - }, - "node_modules/nanoid": { - "version": "3.1.23", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", - "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/native-url": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/native-url/-/native-url-0.3.4.tgz", - "integrity": "sha512-6iM8R99ze45ivyH8vybJ7X0yekIcPf5GgLV5K0ENCbmRcaRIDoj37BC8iLEmaaBfqqb8enuZ5p0uhY+lVAbAcA==", - "dependencies": { - "querystring": "^0.2.0" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - }, - "node_modules/negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/next": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/next/-/next-11.1.2.tgz", - "integrity": "sha512-azEYL0L+wFjv8lstLru3bgvrzPvK0P7/bz6B/4EJ9sYkXeW8r5Bjh78D/Ol7VOg0EIPz0CXoe72hzAlSAXo9hw==", - "dependencies": { - "@babel/runtime": "7.15.3", - "@hapi/accept": "5.0.2", - "@next/env": "11.1.2", - "@next/polyfill-module": "11.1.2", - "@next/react-dev-overlay": "11.1.2", - "@next/react-refresh-utils": "11.1.2", - "@node-rs/helper": "1.2.1", - "assert": "2.0.0", - "ast-types": "0.13.2", - "browserify-zlib": "0.2.0", - "browserslist": "4.16.6", - "buffer": "5.6.0", - "caniuse-lite": "^1.0.30001228", - "chalk": "2.4.2", - "chokidar": "3.5.1", - "constants-browserify": "1.0.0", - "crypto-browserify": "3.12.0", - "cssnano-simple": "3.0.0", - "domain-browser": "4.19.0", - "encoding": "0.1.13", - "etag": "1.8.1", - "find-cache-dir": "3.3.1", - "get-orientation": "1.1.2", - "https-browserify": "1.0.0", - "image-size": "1.0.0", - "jest-worker": "27.0.0-next.5", - "native-url": "0.3.4", - "node-fetch": "2.6.1", - "node-html-parser": "1.4.9", - "node-libs-browser": "^2.2.1", - "os-browserify": "0.3.0", - "p-limit": "3.1.0", - "path-browserify": "1.0.1", - "pnp-webpack-plugin": "1.6.4", - "postcss": "8.2.15", - "process": "0.11.10", - "querystring-es3": "0.2.1", - "raw-body": "2.4.1", - "react-is": "17.0.2", - "react-refresh": "0.8.3", - "stream-browserify": "3.0.0", - "stream-http": "3.1.1", - "string_decoder": "1.3.0", - "styled-jsx": "4.0.1", - "timers-browserify": "2.0.12", - "tty-browserify": "0.0.1", - "use-subscription": "1.5.1", - "util": "0.12.4", - "vm-browserify": "1.1.2", - "watchpack": "2.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=12.0.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "11.1.2", - "@next/swc-darwin-x64": "11.1.2", - "@next/swc-linux-x64-gnu": "11.1.2", - "@next/swc-win32-x64-msvc": "11.1.2" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0", - "react": "^17.0.2", - "react-dom": "^17.0.2", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "node_modules/next-mdx-remote": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-3.0.1.tgz", - "integrity": "sha512-sV1sM6CkdYP5aPND1+vrF3wr8TU8NJwVlcFe2rPjVHR5J/9M2bl9zlhF6AF+GOKHA7d5kUdwHoLbApEGofD8hA==", - "dependencies": { - "@mdx-js/mdx": "^1.6.22", - "@mdx-js/react": "^1.6.22", - "esbuild": "^0.11.12", - "pkg-dir": "^5.0.0" - }, - "peerDependencies": { - "react": ">=16.x <=17.x", - "react-dom": ">=16.x <=17.x" - } - }, - "node_modules/next-optimized-images": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/next-optimized-images/-/next-optimized-images-2.6.2.tgz", - "integrity": "sha512-yH/f3eLmoQ/TxvWRiSuM6AuF3tR1s4nePdHPTm9gl4lAaGEKxTGaSuUL+ZxE5j/c/ITrnHVHibQzOz1Jl8euQw==", - "dependencies": { - "chalk": "^2.4.2", - "figures": "^3.0.0", - "file-loader": "^3.0.1", - "imagemin": "^6.1.0", - "img-loader": "^3.0.1", - "raw-loader": "^2.0.0", - "url-loader": "^1.1.2" - } - }, - "node_modules/next-optimized-images/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/next-optimized-images/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/next-optimized-images/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/next-optimized-images/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/next-optimized-images/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/next-optimized-images/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/next-remote-watch": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-remote-watch/-/next-remote-watch-1.0.0.tgz", - "integrity": "sha512-kV+pglCwcnKyqJIXPHUUrnZr9d3rCqCIEQWBkFYC02GDXHyKVmcFytoY6q0+wMIQqh/izIAQL1x6OKXZhksjLA==", - "dependencies": { - "body-parser": "^1.19.0", - "chalk": "^4.0.0", - "chokidar": "^3.4.0", - "commander": "^5.0.0", - "express": "^4.17.1" - }, - "bin": { - "next-remote-watch": "bin/next-remote-watch" - } - }, - "node_modules/next-remote-watch/node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/next-transpile-modules": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/next-transpile-modules/-/next-transpile-modules-8.0.0.tgz", - "integrity": "sha512-Q2f2yB0zMJ8KJbIYAeZoIxG6cSfVk813zr6B5HzsLMBVcJ3FaF8lKr7WG66n0KlHCwjLSmf/6EkgI6QQVWHrDw==", - "dev": true, - "dependencies": { - "enhanced-resolve": "^5.7.0", - "escalade": "^3.1.1" - } - }, - "node_modules/next/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/next/node_modules/buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "node_modules/next/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/next/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/next/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/next/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/next/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" - }, - "node_modules/next/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" - }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node_modules/no-case/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", - "engines": { - "node": "4.x || >=6.0.0" - } - }, - "node_modules/node-html-parser": { - "version": "1.4.9", - "resolved": "https://registry.npmjs.org/node-html-parser/-/node-html-parser-1.4.9.tgz", - "integrity": "sha512-UVcirFD1Bn0O+TSmloHeHqZZCxHjvtIeGdVdGMhyZ8/PWlEiZaZ5iJzR189yKZr8p0FXN58BUeC7RHRkf/KYGw==", - "dependencies": { - "he": "1.2.0" - } - }, - "node_modules/node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dependencies": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - } - }, - "node_modules/node-libs-browser/node_modules/assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dependencies": { - "object-assign": "^4.1.1", - "util": "0.10.3" - } - }, - "node_modules/node-libs-browser/node_modules/assert/node_modules/util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dependencies": { - "inherits": "2.0.1" - } - }, - "node_modules/node-libs-browser/node_modules/buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "node_modules/node-libs-browser/node_modules/domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "engines": { - "node": ">=0.4", - "npm": ">=1.2" - } - }, - "node_modules/node-libs-browser/node_modules/inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - }, - "node_modules/node-libs-browser/node_modules/path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" - }, - "node_modules/node-libs-browser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "node_modules/node-libs-browser/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/node-libs-browser/node_modules/readable-stream/node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/node-libs-browser/node_modules/readable-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/node-libs-browser/node_modules/stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "node_modules/node-libs-browser/node_modules/stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "node_modules/node-libs-browser/node_modules/tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" - }, - "node_modules/node-libs-browser/node_modules/util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dependencies": { - "inherits": "2.0.3" - } - }, - "node_modules/node-libs-browser/node_modules/util/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "node_modules/node-releases": { - "version": "1.1.73", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", - "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==" - }, - "node_modules/normalize-package-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", - "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", - "dependencies": { - "hosted-git-info": "^4.0.1", - "resolve": "^1.20.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-selector": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", - "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=" - }, - "node_modules/normalize-url": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", - "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", - "dependencies": { - "prepend-http": "^2.0.0", - "query-string": "^5.0.1", - "sort-keys": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/normalize-url/node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "engines": { - "node": ">=4" - } - }, - "node_modules/normalize-url/node_modules/sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dependencies": { - "is-plain-obj": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-conf": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", - "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", - "dependencies": { - "config-chain": "^1.1.11", - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nprogress": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", - "integrity": "sha1-y480xTIT2JVyP8urkH6UIq28r7E=" - }, - "node_modules/nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dependencies": { - "boolbase": "~1.0.0" - } - }, - "node_modules/nuka-carousel": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/nuka-carousel/-/nuka-carousel-4.7.7.tgz", - "integrity": "sha512-v0qvvtJdnr6ZhaT529Y/RcdxBdVo6Eab3Xfqt9UfMyXMYIYtEmyTXOW1MRLKagF4woWDhjyG3ju8XX7u+QE10g==", - "dependencies": { - "csstype": "^2.6.6", - "d3-ease": "^1.0.3", - "exenv": "^1.2.0", - "prop-types": "^15.6.0", - "react-move": "^6.1.0", - "wicg-inert": "^3.1.0" - }, - "peerDependencies": { - "react": "^0.14.9 || ^15.3.0 || ^16.0.0", - "react-dom": "^0.14.9 || ^15.3.0 || ^16.0.0" - } - }, - "node_modules/nuka-carousel/node_modules/csstype": { - "version": "2.6.17", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.17.tgz", - "integrity": "sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A==" - }, - "node_modules/num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/object-copy/node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", - "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", - "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz", - "integrity": "sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.hasown": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.0.0.tgz", - "integrity": "sha512-qYMF2CLIjxxLGleeM0jrcB4kiv3loGVAjKQKvH8pSU/i2VcRRvUNmxbD+nEMmrXRfORhuVJuH8OtSYCZoue3zA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/open/-/open-7.3.0.tgz", - "integrity": "sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==", - "dependencies": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/opencollective-postinstall": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", - "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", - "dev": true, - "bin": { - "opencollective-postinstall": "index.js" - } - }, - "node_modules/opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "bin": { - "opener": "bin/opener-bin.js" - } - }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/optipng-bin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/optipng-bin/-/optipng-bin-7.0.0.tgz", - "integrity": "sha512-mesUAwfedu5p9gRQwlYgD6Svw5IH3VUIWDJj/9cNpP3yFNbbEVqkTMWYhrIEn/cxmbGA3LpZrdoV2Yl8OfmnIA==", - "hasInstallScript": true, - "dependencies": { - "bin-build": "^3.0.0", - "bin-wrapper": "^4.0.0", - "logalot": "^2.0.0" - }, - "bin": { - "optipng": "cli.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" - }, - "node_modules/os-filter-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-2.0.0.tgz", - "integrity": "sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg==", - "dependencies": { - "arch": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-event": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz", - "integrity": "sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU=", - "dependencies": { - "p-timeout": "^1.1.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-is-promise": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map-series": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-1.0.0.tgz", - "integrity": "sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco=", - "dependencies": { - "p-reduce": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-pipe": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-1.2.0.tgz", - "integrity": "sha1-SxoROZoRUgpneQ7loMHViB1r7+k=", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-reduce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", - "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", - "dependencies": { - "p-finally": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "engines": { - "node": ">=4" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/pascal-case/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" - }, - "node_modules/path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, - "node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==" - }, - "node_modules/picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "engines": { - "node": ">=4" - } - }, - "node_modules/pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", - "dependencies": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-conf/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/platform": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz", - "integrity": "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==" - }, - "node_modules/please-upgrade-node": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", - "dependencies": { - "semver-compare": "^1.0.0" - } - }, - "node_modules/pnp-webpack-plugin": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", - "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", - "dependencies": { - "ts-pnp": "^1.1.6" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/popmotion": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/popmotion/-/popmotion-11.0.0.tgz", - "integrity": "sha512-kJDyaG00TtcANP5JZ51od+DCqopxBm2a/Txh3Usu23L9qntjY5wumvcVf578N8qXEHR1a+jx9XCv8zOntdYalQ==", - "dependencies": { - "framesync": "^6.0.1", - "hey-listen": "^1.0.8", - "style-value-types": "5.0.0", - "tslib": "^2.1.0" - } - }, - "node_modules/popmotion/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss": { - "version": "8.2.15", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.15.tgz", - "integrity": "sha512-2zO3b26eJD/8rb106Qu2o7Qgg52ND5HPjcyQiK2B98O388h43A448LCslC0dI2P97wCAQRJsFvwTRcXxTKds+Q==", - "dependencies": { - "colorette": "^1.2.2", - "nanoid": "^3.1.23", - "source-map": "^0.6.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-attribute-case-insensitive": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", - "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^6.0.2" - } - }, - "node_modules/postcss-attribute-case-insensitive/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-attribute-case-insensitive/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-browser-comments": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz", - "integrity": "sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "peerDependencies": { - "browserslist": ">=4", - "postcss": ">=8" - } - }, - "node_modules/postcss-color-functional-notation": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", - "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-color-functional-notation/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-color-functional-notation/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-color-functional-notation/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-color-gray": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", - "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", - "dependencies": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-color-gray/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-color-gray/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-color-gray/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-color-hex-alpha": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", - "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", - "dependencies": { - "postcss": "^7.0.14", - "postcss-values-parser": "^2.0.1" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-color-hex-alpha/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-color-hex-alpha/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-color-hex-alpha/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-color-mod-function": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", - "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", - "dependencies": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-color-mod-function/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-color-mod-function/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-color-mod-function/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-color-rebeccapurple": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", - "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-color-rebeccapurple/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-color-rebeccapurple/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-color-rebeccapurple/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-custom-media": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", - "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-custom-media/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-custom-media/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-custom-properties": { - "version": "8.0.11", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", - "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", - "dependencies": { - "postcss": "^7.0.17", - "postcss-values-parser": "^2.0.1" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-custom-properties/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-custom-properties/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-custom-properties/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-custom-selectors": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", - "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-custom-selectors/node_modules/cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-custom-selectors/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dependencies": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-custom-selectors/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-dir-pseudo-class": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", - "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/postcss-dir-pseudo-class/node_modules/cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-dir-pseudo-class/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dependencies": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-dir-pseudo-class/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-double-position-gradients": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", - "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", - "dependencies": { - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-double-position-gradients/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-double-position-gradients/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-double-position-gradients/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-env-function": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", - "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-env-function/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-env-function/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-env-function/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-flexbugs-fixes": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", - "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", - "dependencies": { - "postcss": "^7.0.26" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-focus-visible": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", - "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-focus-visible/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-focus-visible/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-focus-within": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", - "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-focus-within/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-focus-within/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-font-variant": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", - "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", - "dependencies": { - "postcss": "^7.0.2" - } - }, - "node_modules/postcss-font-variant/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-font-variant/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-gap-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", - "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-gap-properties/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-gap-properties/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-html": { - "version": "0.36.0", - "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", - "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", - "dependencies": { - "htmlparser2": "^3.10.0" - }, - "peerDependencies": { - "postcss": ">=5.0.0", - "postcss-syntax": ">=0.36.0" - } - }, - "node_modules/postcss-image-set-function": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", - "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-image-set-function/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-image-set-function/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-image-set-function/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-initial": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", - "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", - "dependencies": { - "postcss": "^7.0.2" - } - }, - "node_modules/postcss-initial/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-initial/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-lab-function": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", - "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", - "dependencies": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-lab-function/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-lab-function/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-lab-function/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-less": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", - "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-less/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-less/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-less/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-less/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-less/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/postcss-less/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-less/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-less/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-less/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/postcss-logical": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", - "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-logical/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-logical/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-media-minmax": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", - "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-media-minmax/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-media-minmax/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-media-query-parser": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", - "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=" - }, - "node_modules/postcss-nesting": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", - "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-nesting/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-nesting/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-normalize": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-10.0.1.tgz", - "integrity": "sha512-+5w18/rDev5mqERcG3W5GZNMJa1eoYYNGo8gB7tEwaos0ajk3ZXAI4mHGcNT47NE+ZnZD1pEpUOFLvltIwmeJA==", - "dev": true, - "dependencies": { - "@csstools/normalize.css": "*", - "postcss-browser-comments": "^4", - "sanitize.css": "*" - }, - "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "browserslist": ">= 4", - "postcss": ">= 8" - } - }, - "node_modules/postcss-overflow-shorthand": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", - "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", - "dependencies": { - "postcss": "^7.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-overflow-shorthand/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-overflow-shorthand/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-page-break": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", - "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", - "dependencies": { - "postcss": "^7.0.2" - } - }, - "node_modules/postcss-page-break/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-page-break/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-place": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", - "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-place/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-place/node_modules/postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", - "dependencies": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-place/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-preset-env": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", - "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", - "dependencies": { - "autoprefixer": "^9.6.1", - "browserslist": "^4.6.4", - "caniuse-lite": "^1.0.30000981", - "css-blank-pseudo": "^0.1.4", - "css-has-pseudo": "^0.10.0", - "css-prefers-color-scheme": "^3.1.1", - "cssdb": "^4.4.0", - "postcss": "^7.0.17", - "postcss-attribute-case-insensitive": "^4.0.1", - "postcss-color-functional-notation": "^2.0.1", - "postcss-color-gray": "^5.0.0", - "postcss-color-hex-alpha": "^5.0.3", - "postcss-color-mod-function": "^3.0.3", - "postcss-color-rebeccapurple": "^4.0.1", - "postcss-custom-media": "^7.0.8", - "postcss-custom-properties": "^8.0.11", - "postcss-custom-selectors": "^5.1.2", - "postcss-dir-pseudo-class": "^5.0.0", - "postcss-double-position-gradients": "^1.0.0", - "postcss-env-function": "^2.0.2", - "postcss-focus-visible": "^4.0.0", - "postcss-focus-within": "^3.0.0", - "postcss-font-variant": "^4.0.0", - "postcss-gap-properties": "^2.0.0", - "postcss-image-set-function": "^3.0.1", - "postcss-initial": "^3.0.0", - "postcss-lab-function": "^2.0.1", - "postcss-logical": "^3.0.0", - "postcss-media-minmax": "^4.0.0", - "postcss-nesting": "^7.0.0", - "postcss-overflow-shorthand": "^2.0.0", - "postcss-page-break": "^2.0.0", - "postcss-place": "^4.0.1", - "postcss-pseudo-class-any-link": "^6.0.0", - "postcss-replace-overflow-wrap": "^3.0.0", - "postcss-selector-matches": "^4.0.0", - "postcss-selector-not": "^4.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-preset-env/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-preset-env/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", - "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", - "dependencies": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-pseudo-class-any-link/node_modules/cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-pseudo-class-any-link/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dependencies": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-pseudo-class-any-link/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", - "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", - "dependencies": { - "postcss": "^7.0.2" - } - }, - "node_modules/postcss-replace-overflow-wrap/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-replace-overflow-wrap/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-resolve-nested-selector": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", - "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=" - }, - "node_modules/postcss-safe-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz", - "integrity": "sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==", - "dependencies": { - "postcss": "^7.0.26" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-safe-parser/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-safe-parser/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-safe-parser/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-safe-parser/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-safe-parser/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/postcss-safe-parser/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-safe-parser/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-safe-parser/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-safe-parser/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/postcss-sass": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz", - "integrity": "sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==", - "dependencies": { - "gonzales-pe": "^4.3.0", - "postcss": "^7.0.21" - } - }, - "node_modules/postcss-sass/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sass/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sass/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sass/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-sass/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/postcss-sass/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sass/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-sass/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-sass/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/postcss-scss": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", - "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", - "dependencies": { - "postcss": "^7.0.6" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-scss/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-scss/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-scss/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-scss/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-scss/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/postcss-scss/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-scss/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-scss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-scss/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/postcss-selector-matches": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", - "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", - "dependencies": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" - } - }, - "node_modules/postcss-selector-matches/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-selector-matches/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-selector-not": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", - "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", - "dependencies": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" - } - }, - "node_modules/postcss-selector-not/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-selector-not/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", - "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sorting": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-5.0.1.tgz", - "integrity": "sha512-Y9fUFkIhfrm6i0Ta3n+89j56EFqaNRdUKqXyRp6kvTcSXnmgEjaVowCXH+JBe9+YKWqd4nc28r2sgwnzJalccA==", - "dependencies": { - "lodash": "^4.17.14", - "postcss": "^7.0.17" - }, - "engines": { - "node": ">=8.7.0" - } - }, - "node_modules/postcss-sorting/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sorting/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sorting/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sorting/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-sorting/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/postcss-sorting/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-sorting/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-sorting/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-sorting/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/postcss-syntax": { - "version": "0.36.2", - "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", - "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", - "peerDependencies": { - "postcss": ">=5.0.0" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" - }, - "node_modules/postcss-values-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-3.2.1.tgz", - "integrity": "sha512-SQ7/88VE9LhJh9gc27/hqnSU/aZaREVJcRVccXBmajgP2RkjdJzNyH/a9GCVMI5nsRhT0jC5HpUMwfkz81DVVg==", - "dependencies": { - "color-name": "^1.1.4", - "is-url-superb": "^3.0.0", - "postcss": "^7.0.5", - "url-regex": "^5.0.0" - }, - "engines": { - "node": ">=6.14.4" - } - }, - "node_modules/postcss-values-parser/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-values-parser/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-values-parser/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-values-parser/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-values-parser/node_modules/color-convert/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/postcss-values-parser/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-values-parser/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-values-parser/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss-values-parser/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/postcss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/prettier": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dependencies": { - "fast-diff": "^1.1.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/prismjs": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.24.1.tgz", - "integrity": "sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==" - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/promise-polyfill": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.2.0.tgz", - "integrity": "sha512-k/TC0mIcPVF6yHhUvwAp7cvL6I2fFV7TzF1DuGPI8mBh4QQazf36xCKEHKTZKRysEoTQoQdKyP25J8MPJp7j5g==" - }, - "node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "node_modules/property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "dependencies": { - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=" - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "engines": { - "node": ">=0.6.0", - "teleport": ">=0.2.0" - } - }, - "node_modules/qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", - "dependencies": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/querystring": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz", - "integrity": "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "dependencies": { - "inherits": "~2.0.3" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "engines": { - "node": ">=8" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-body/node_modules/http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-loader": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-2.0.0.tgz", - "integrity": "sha512-kZnO5MoIyrojfrPWqrhFNLZemIAX8edMOCp++yC5RKxzFB3m92DqKNhKlU6+FvpOhWtvyh3jOaD7J6/9tpdIKg==", - "dependencies": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "webpack": "^4.3.0" - } - }, - "node_modules/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-clientside-effect": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.5.tgz", - "integrity": "sha512-2bL8qFW1TGBHozGGbVeyvnggRpMjibeZM2536AKNENLECutp2yfs44IL8Hmpn8qjFQ2K7A9PnYf3vc7aQq/cPA==", - "dependencies": { - "@babel/runtime": "^7.12.13" - }, - "peerDependencies": { - "react": "^15.3.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/react-datocms": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/react-datocms/-/react-datocms-1.6.6.tgz", - "integrity": "sha512-7k8HziRVkTLGz5MM+MmdO815rSEUJb1xPv0dNRJoCJBh+UDkB3hRBCwDZgVPJMK5AH9DSshcu6bN1gAhLpHRtw==", - "dependencies": { - "datocms-listen": "^0.1.6", - "datocms-structured-text-generic-html-renderer": "^1.1.0", - "datocms-structured-text-utils": "^1.1.0", - "intersection-observer": "^0.12.0", - "react-intersection-observer": "^8.31.1", - "use-deep-compare-effect": "^1.6.1" - }, - "peerDependencies": { - "react": ">= 16.12.0" - } - }, - "node_modules/react-device-detect": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-1.17.0.tgz", - "integrity": "sha512-bBblIStwpHmoS281JFIVqeimcN3LhpoP5YKDWzxQdBIUP8S2xPvHDgizLDhUq2ScguLfVPmwfF5y268EEQR60w==", - "dependencies": { - "ua-parser-js": "^0.7.24" - }, - "peerDependencies": { - "react": ">= 0.14.0 < 18.0.0", - "react-dom": ">= 0.14.0 < 18.0.0" - } - }, - "node_modules/react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" - }, - "peerDependencies": { - "react": "17.0.2" - } - }, - "node_modules/react-fast-compare": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", - "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" - }, - "node_modules/react-focus-lock": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.6.0.tgz", - "integrity": "sha512-2yB5KWyaefbvFDgqvsg/KpIjbqVlhIY2c/dyDcokDLhB3Ib7I4bjsrta5OkI5euUoIu5xBTyBwIQZPykUJAr1g==", - "dependencies": { - "@babel/runtime": "^7.0.0", - "focus-lock": "^0.9.2", - "prop-types": "^15.6.2", - "react-clientside-effect": "^1.2.5", - "use-callback-ref": "^1.2.5", - "use-sidecar": "^1.0.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-instantsearch-core": { - "version": "6.12.1", - "resolved": "https://registry.npmjs.org/react-instantsearch-core/-/react-instantsearch-core-6.12.1.tgz", - "integrity": "sha512-X4OqakDI3DOcFiS1S46z+cciKEQcKBmH8HGQLztzW14hoHRqFfZzuqWydlSxfJZN5WksMMm78EmL2jvoqIHd/A==", - "dependencies": { - "@babel/runtime": "^7.1.2", - "algoliasearch-helper": "^3.5.3", - "prop-types": "^15.6.2", - "react-fast-compare": "^3.0.0" - }, - "peerDependencies": { - "algoliasearch": ">= 3.1 < 5", - "react": ">= 16.3.0 < 18" - } - }, - "node_modules/react-instantsearch-core/node_modules/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==" - }, - "node_modules/react-instantsearch-dom": { - "version": "6.12.1", - "resolved": "https://registry.npmjs.org/react-instantsearch-dom/-/react-instantsearch-dom-6.12.1.tgz", - "integrity": "sha512-KXk2UDmJ3OP9B57owPC0+7fdcVtmYAA6/UWimR9CXhvFGCMi11xlR/wscYMYxdPuxs9IkmnnLDIJSjSGADYnow==", - "dependencies": { - "@babel/runtime": "^7.1.2", - "algoliasearch-helper": "^3.5.3", - "classnames": "^2.2.5", - "prop-types": "^15.6.2", - "react-fast-compare": "^3.0.0", - "react-instantsearch-core": "^6.12.1" - }, - "peerDependencies": { - "react": ">= 16.3.0 < 18", - "react-dom": ">= 16.3.0 < 18" - } - }, - "node_modules/react-instantsearch-dom/node_modules/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==" - }, - "node_modules/react-intersection-observer": { - "version": "8.32.5", - "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-8.32.5.tgz", - "integrity": "sha512-4xKdUWRNdPueXXxTyMOV41w6qIa4tsV7BbWOW+IYsvGPP7wxOj9V6o3cKywie+/VDr5Qs7pCzi5Wom78dUxj1w==", - "peerDependencies": { - "react": "^15.0.0 || ^16.0.0 || ^17.0.0|| ^18.0.0" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "node_modules/react-move": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/react-move/-/react-move-6.4.0.tgz", - "integrity": "sha512-TNyDQESDZ0xsejnxFTQ9CKarJQN6NbgpImrvIEzOVe7+jt8y7uTjJwWxqFTfmvwskIs+RmUbCWdN7PAbGyhrdA==", - "dependencies": { - "@babel/runtime": "^7.10.3", - "kapellmeister": "^3.0.1", - "prop-types": "^15.7.2" - }, - "peerDependencies": { - "react": "^16.3.0" - } - }, - "node_modules/react-player": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/react-player/-/react-player-2.9.0.tgz", - "integrity": "sha512-jNUkTfMmUhwPPAktAdIqiBcVUKsFKrVGH6Ocutj6535CNfM91yrvWxHg6fvIX8Y/fjYUPoejddwh7qboNV9vGA==", - "dependencies": { - "deepmerge": "^4.0.0", - "load-script": "^1.0.0", - "memoize-one": "^5.1.1", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.0.1" - }, - "peerDependencies": { - "react": ">=16.6.0" - } - }, - "node_modules/react-player/node_modules/deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-player/node_modules/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==" - }, - "node_modules/react-refresh": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", - "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-remove-scroll": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.4.3.tgz", - "integrity": "sha512-lGWYXfV6jykJwbFpsuPdexKKzp96f3RbvGapDSIdcyGvHb7/eqyn46C7/6h+rUzYar1j5mdU+XECITHXCKBk9Q==", - "dependencies": { - "react-remove-scroll-bar": "^2.1.0", - "react-style-singleton": "^2.1.0", - "tslib": "^1.0.0", - "use-callback-ref": "^1.2.3", - "use-sidecar": "^1.0.1" - }, - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0", - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-remove-scroll-bar": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.2.0.tgz", - "integrity": "sha512-UU9ZBP1wdMR8qoUs7owiVcpaPwsQxUDC2lypP6mmixaGlARZa7ZIBx1jcuObLdhMOvCsnZcvetOho0wzPa9PYg==", - "dependencies": { - "react-style-singleton": "^2.1.0", - "tslib": "^1.0.0" - }, - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0", - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-style-singleton": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.1.1.tgz", - "integrity": "sha512-jNRp07Jza6CBqdRKNgGhT3u9umWvils1xsuMOjZlghBDH2MU0PL2WZor4PGYjXpnRCa9DQSlHMs/xnABWOwYbA==", - "dependencies": { - "get-nonce": "^1.0.0", - "invariant": "^2.2.4", - "tslib": "^1.0.0" - }, - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0", - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" - }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/read-pkg/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/refractor": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-3.4.0.tgz", - "integrity": "sha512-dBeD02lC5eytm9Gld2Mx0cMcnR+zhSnsTfPpWqFaMgUMJfC9A6bcN3Br/NaXrnBJcuxnLFR90k1jrkaSyV8umg==", - "dependencies": { - "hastscript": "^6.0.0", - "parse-entities": "^2.0.0", - "prismjs": "~1.24.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.7", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" - }, - "node_modules/regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/rehype-katex": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-4.0.0.tgz", - "integrity": "sha512-0mgBqYugQyIW0eUl6RDOZ28Cat2YzrnWGaYgKCMQnJw6ClmKgLqXBnkDAPGh2mwxvkkKwQOUMUpSLpA5rt7rzA==", - "dependencies": { - "@types/katex": "^0.11.0", - "hast-util-to-text": "^2.0.0", - "katex": "^0.12.0", - "rehype-parse": "^7.0.0", - "unified": "^9.0.0", - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-parse": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", - "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", - "dependencies": { - "hast-util-from-parse5": "^6.0.0", - "parse5": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-stringify": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/rehype-stringify/-/rehype-stringify-8.0.0.tgz", - "integrity": "sha512-VkIs18G0pj2xklyllrPSvdShAV36Ff3yE5PUO9u36f6+2qJFnn22Z5gKwBOwgXviux4UC7K+/j13AnZfPICi/g==", - "dependencies": { - "hast-util-to-html": "^7.1.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz", - "integrity": "sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==", - "dependencies": { - "remark-parse": "^9.0.0", - "remark-stringify": "^9.0.0", - "unified": "^9.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-footnotes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", - "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-math": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-4.0.0.tgz", - "integrity": "sha512-lH7SoQenXtQrvL0bm+mjZbvOk//YWNuyR+MxV18Qyv8rgFmMEGNuB0TSCQDkoDaiJ40FCnG8lxErc/zhcedYbw==", - "dependencies": { - "mdast-util-math": "^0.1.0", - "micromark-extension-math": "^0.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx": { - "version": "1.6.22", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", - "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", - "dependencies": { - "@babel/core": "7.12.9", - "@babel/helper-plugin-utils": "7.10.4", - "@babel/plugin-proposal-object-rest-spread": "7.12.1", - "@babel/plugin-syntax-jsx": "7.12.1", - "@mdx-js/util": "1.6.22", - "is-alphabetical": "1.0.4", - "remark-parse": "8.0.3", - "unified": "9.2.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "node_modules/remark-mdx/node_modules/remark-parse": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", - "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", - "dependencies": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "dependencies": { - "mdast-util-from-markdown": "^0.8.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-rehype": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-8.0.0.tgz", - "integrity": "sha512-gVvOH02TMFqXOWoL6iXU7NXMsDJguNkNuMrzfkQeA4V6WCyHQnOKptn+IQBVVPuIH2sMJBwo8hlrmtn1MLTh9w==", - "dependencies": { - "mdast-util-to-hast": "^10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-squeeze-paragraphs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", - "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", - "dependencies": { - "mdast-squeeze-paragraphs": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/remark-stringify": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", - "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", - "dependencies": { - "mdast-util-to-markdown": "^0.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/repeat-element": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dependencies": { - "is-finite": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/replace-ext": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", - "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "deprecated": "https://github.com/lydell/resolve-url#deprecated" - }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", - "dependencies": { - "lowercase-keys": "^1.0.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "engines": { - "node": ">=0.12" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/rivet-graphql": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/rivet-graphql/-/rivet-graphql-0.3.1.tgz", - "integrity": "sha512-HEov02XhZ6H1jOME+mO8CZwliu/UtgZSHixYUwvQ7HSx3gk8EOVaQY5c3zscOYjZECvP8cR4+1Ob3KHWJRWEMw==", - "dependencies": { - "graphql": "^15.3.0", - "graphql-request": "^3.0.0" - } - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dependencies": { - "ret": "~0.1.10" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sanitize.css": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/sanitize.css/-/sanitize.css-13.0.0.tgz", - "integrity": "sha512-ZRwKbh/eQ6w9vmTjkuG0Ioi3HBwPFce0O+v//ve+aOq1oeCy7jMV2qzzAlpsNuqpqCBjjriM1lbtZbF/Q8jVyA==" - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/search-insights": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-1.8.0.tgz", - "integrity": "sha512-4sd6oS/sLH/UxiZ4vMoDbcpJP01pcoNI4mm3ZsUfDAMCPKxDda1R8SFZUv618og3NYBvvWvwmf8VRC0rNYuTkg==", - "engines": { - "node": ">=8.16.0" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/section-matter/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/seek-bzip": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz", - "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==", - "dependencies": { - "commander": "^2.8.1" - }, - "bin": { - "seek-bunzip": "bin/seek-bunzip", - "seek-table": "bin/seek-bzip-table" - } - }, - "node_modules/seek-bzip/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=" - }, - "node_modules/semver-regex": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-3.1.2.tgz", - "integrity": "sha512-bXWyL6EAKOJa81XG1OZ/Yyuq+oT0b2YLlxx7c+mrdYPaPbnj6WgVULXhinMIeZGufuUBu/eVRqXEhiv4imfwxA==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/semver-truncate": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz", - "integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=", - "dependencies": { - "semver": "^5.3.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/semver-truncate/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", - "dependencies": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.7.2", - "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" - }, - "node_modules/serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "node_modules/setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "engines": { - "node": ">=8" - } - }, - "node_modules/shell-quote": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" - }, - "node_modules/shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==" - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, - "node_modules/signale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz", - "integrity": "sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==", - "dependencies": { - "chalk": "^2.3.2", - "figures": "^2.0.0", - "pkg-conf": "^2.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/signale/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/signale/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/signale/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/signale/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/signale/node_modules/figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/signale/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/signale/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/slugify": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.6.tgz", - "integrity": "sha512-ZdJIgv9gdrYwhXqxsH9pv7nXxjUEyQ6nqhngRxoAAOlmMGA28FDq5O4/5US4G2/Nod7d1ovNcgURQJ7kHq50KQ==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dependencies": { - "kind-of": "^3.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/snapdragon/node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "dependencies": { - "is-plain-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sort-keys-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", - "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=", - "dependencies": { - "sort-keys": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "node_modules/source-map-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==" - }, - "node_modules/space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==" - }, - "node_modules/specificity": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", - "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", - "bin": { - "specificity": "bin/specificity" - } - }, - "node_modules/split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dependencies": { - "extend-shallow": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "node_modules/squeak": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz", - "integrity": "sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=", - "dependencies": { - "chalk": "^1.0.0", - "console-stream": "^0.1.1", - "lpad-align": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/squeak/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" - }, - "node_modules/stack-generator": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.5.tgz", - "integrity": "sha512-/t1ebrbHkrLrDuNMdeAcsvynWgoH/i4o8EGGfX7dEYDoTXOYVAkEpFdtshlvabzc6JlJ8Kf9YdFEoz7JkzGN9Q==", - "dependencies": { - "stackframe": "^1.1.1" - } - }, - "node_modules/stackframe": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.2.0.tgz", - "integrity": "sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==" - }, - "node_modules/stacktrace-parser": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", - "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", - "dependencies": { - "type-fest": "^0.7.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/stacktrace-parser/node_modules/type-fest": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", - "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/static-extend/node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "node_modules/stream-http": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.1.1.tgz", - "integrity": "sha512-S7OqaYu0EkFpgeGFb/NPOoPLxFko7TPqtEeFg5DXPB4v/KETHG0Ln6fRFrNezoelpaDKmycEmmZ81cC9DAwgYg==", - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "node_modules/stream-parser": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", - "dependencies": { - "debug": "2" - } - }, - "node_modules/stream-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/stream-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "engines": { - "node": ">=0.6.19" - } - }, - "node_modules/string-hash": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", - "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=" - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", - "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.2", - "get-intrinsic": "^1.1.1", - "has-symbols": "^1.0.2", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.3.1", - "side-channel": "^1.0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/stringify-entities": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz", - "integrity": "sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg==", - "dependencies": { - "character-entities-html4": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", - "dependencies": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", - "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", - "dependencies": { - "is-natural-number": "^4.0.1" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-outer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", - "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", - "dependencies": { - "escape-string-regexp": "^1.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/style-search": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", - "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=" - }, - "node_modules/style-to-object": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", - "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", - "dependencies": { - "inline-style-parser": "0.1.1" - } - }, - "node_modules/style-value-types": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-5.0.0.tgz", - "integrity": "sha512-08yq36Ikn4kx4YU6RD7jWEv27v4V+PUsOGa4n/as8Et3CuODMJQ00ENeAVXAeydX4Z2j1XHZF1K2sX4mGl18fA==", - "dependencies": { - "hey-listen": "^1.0.8", - "tslib": "^2.1.0" - } - }, - "node_modules/style-value-types/node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/styled-jsx": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-4.0.1.tgz", - "integrity": "sha512-Gcb49/dRB1k8B4hdK8vhW27Rlb2zujCk1fISrizCcToIs+55B4vmUM0N9Gi4nnVfFZWe55jRdWpAqH1ldAKWvQ==", - "dependencies": { - "@babel/plugin-syntax-jsx": "7.14.5", - "@babel/types": "7.15.0", - "convert-source-map": "1.7.0", - "loader-utils": "1.2.3", - "source-map": "0.7.3", - "string-hash": "1.1.3", - "stylis": "3.5.4", - "stylis-rule-sheet": "0.0.10" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "react": ">= 16.8.0 || 17.x.x || 18.x.x" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - } - } - }, - "node_modules/styled-jsx/node_modules/@babel/plugin-syntax-jsx": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", - "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/styled-jsx/node_modules/emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/styled-jsx/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/styled-jsx/node_modules/loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/styled-jsx/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/stylelint": { - "version": "13.8.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.8.0.tgz", - "integrity": "sha512-iHH3dv3UI23SLDrH4zMQDjLT9/dDIz/IpoFeuNxZmEx86KtfpjDOscxLTFioQyv+2vQjPlRZnK0UoJtfxLICXQ==", - "dependencies": { - "@stylelint/postcss-css-in-js": "^0.37.2", - "@stylelint/postcss-markdown": "^0.36.2", - "autoprefixer": "^9.8.6", - "balanced-match": "^1.0.0", - "chalk": "^4.1.0", - "cosmiconfig": "^7.0.0", - "debug": "^4.2.0", - "execall": "^2.0.0", - "fast-glob": "^3.2.4", - "fastest-levenshtein": "^1.0.12", - "file-entry-cache": "^6.0.0", - "get-stdin": "^8.0.0", - "global-modules": "^2.0.0", - "globby": "^11.0.1", - "globjoin": "^0.1.4", - "html-tags": "^3.1.0", - "ignore": "^5.1.8", - "import-lazy": "^4.0.0", - "imurmurhash": "^0.1.4", - "known-css-properties": "^0.20.0", - "lodash": "^4.17.20", - "log-symbols": "^4.0.0", - "mathml-tag-names": "^2.1.3", - "meow": "^8.0.0", - "micromatch": "^4.0.2", - "normalize-selector": "^0.2.0", - "postcss": "^7.0.35", - "postcss-html": "^0.36.0", - "postcss-less": "^3.1.4", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^4.0.2", - "postcss-sass": "^0.4.4", - "postcss-scss": "^2.1.1", - "postcss-selector-parser": "^6.0.4", - "postcss-syntax": "^0.36.2", - "postcss-value-parser": "^4.1.0", - "resolve-from": "^5.0.0", - "slash": "^3.0.0", - "specificity": "^0.4.1", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "style-search": "^0.1.0", - "sugarss": "^2.0.0", - "svg-tags": "^1.0.0", - "table": "^6.0.3", - "v8-compile-cache": "^2.2.0", - "write-file-atomic": "^3.0.3" - }, - "bin": { - "stylelint": "bin/stylelint.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/stylelint" - } - }, - "node_modules/stylelint-config-css-modules": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/stylelint-config-css-modules/-/stylelint-config-css-modules-2.2.0.tgz", - "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==", - "peerDependencies": { - "stylelint": "11.x - 13.x" - } - }, - "node_modules/stylelint-config-prettier": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-8.0.2.tgz", - "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==", - "bin": { - "stylelint-config-prettier": "bin/check.js", - "stylelint-config-prettier-check": "bin/check.js" - }, - "engines": { - "node": ">= 10", - "npm": ">= 5" - }, - "peerDependencies": { - "stylelint": ">=11.0.0" - } - }, - "node_modules/stylelint-config-recommended": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", - "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", - "peerDependencies": { - "stylelint": ">=10.1.0" - } - }, - "node_modules/stylelint-config-standard": { - "version": "20.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz", - "integrity": "sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA==", - "dependencies": { - "stylelint-config-recommended": "^3.0.0" - }, - "peerDependencies": { - "stylelint": ">=10.1.0" - } - }, - "node_modules/stylelint-media-use-custom-media": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/stylelint-media-use-custom-media/-/stylelint-media-use-custom-media-2.0.0.tgz", - "integrity": "sha512-G7Hwma8HIMFJOChqrX9ie8hAGbtEMUbEjuiaR3olHIXjloDWqYlFHIJKsCyyckigkm+4LtCwtZDQASrVY4pRBg==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "stylelint": "10 - 13" - } - }, - "node_modules/stylelint-order": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-4.1.0.tgz", - "integrity": "sha512-sVTikaDvMqg2aJjh4r48jsdfmqLT+nqB1MOsaBnvM3OwLx4S+WXcsxsgk5w18h/OZoxZCxuyXMh61iBHcj9Qiw==", - "dependencies": { - "lodash": "^4.17.15", - "postcss": "^7.0.31", - "postcss-sorting": "^5.0.1" - }, - "peerDependencies": { - "stylelint": "^10.0.1 || ^11.0.0 || ^12.0.0 || ^13.0.0" - } - }, - "node_modules/stylelint-order/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint-order/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint-order/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint-order/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/stylelint-order/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/stylelint-order/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint-order/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/stylelint-order/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stylelint-order/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/stylelint-use-nesting": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stylelint-use-nesting/-/stylelint-use-nesting-3.0.0.tgz", - "integrity": "sha512-BMzhXWbK5DdAYtZMQULn7VmWZXpy8Rwlx2PgeNYqKInQrKTJWM/TFKPScc+xvsGUc/6JPiUDeQQij9gFnOo8Kg==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "stylelint": "10 - 13" - } - }, - "node_modules/stylelint-value-no-unknown-custom-properties": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stylelint-value-no-unknown-custom-properties/-/stylelint-value-no-unknown-custom-properties-3.0.0.tgz", - "integrity": "sha512-8WoOnZ4ELTxA1cDbhwolIVOutxHwbjpXmd0lL0Li3Iye078jSnEb1KO6pJ/ig5oDVGRApFeA25Fyy4qqmqwGgg==", - "dependencies": { - "postcss-values-parser": "^3.2.1" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "stylelint": "10 - 13" - } - }, - "node_modules/stylelint/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/stylelint/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/stylelint/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/stylelint/node_modules/postcss/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint/node_modules/postcss/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/stylelint/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/stylelint/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stylelint/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/stylis": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-3.5.4.tgz", - "integrity": "sha512-8/3pSmthWM7lsPBKv7NXkzn2Uc9W7NotcwGNpJaa3k7WMM1XDCA4MgT5k/8BIexd5ydZdboXtU90XH9Ec4Bv/Q==" - }, - "node_modules/stylis-rule-sheet": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz", - "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==", - "peerDependencies": { - "stylis": "^3.5.0" - } - }, - "node_modules/sugarss": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", - "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", - "dependencies": { - "postcss": "^7.0.2" - } - }, - "node_modules/sugarss/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/sugarss/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/sugarss/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/sugarss/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/sugarss/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/sugarss/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/sugarss/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/sugarss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sugarss/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/svg-tags": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=" - }, - "node_modules/svgo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", - "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", - "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.", - "dependencies": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/svgo/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/svgo/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/svgo/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/svgo/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/svgo/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/svgo/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/svgo/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/tabbable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-4.0.0.tgz", - "integrity": "sha512-H1XoH1URcBOa/rZZWxLxHCtOdVUEev+9vo5YdYhC9tCY4wnybX+VQrCYuy9ubkg69fCBxCONJOSLGfw0DWMffQ==" - }, - "node_modules/table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", - "dependencies": { - "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/table/node_modules/ajv": { - "version": "8.6.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", - "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/table/node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", - "dependencies": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/tar-stream/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/tar-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/tempfile": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", - "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", - "dependencies": { - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "node_modules/timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" - }, - "node_modules/tippy.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-5.2.1.tgz", - "integrity": "sha512-66UT6JRVn3dXNCORE+0UvUK3JZqV/VhLlU6HTDm3FmrweUUFUxUGvT8tUQ7ycMp+uhuLAwQw6dBabyC+iKf/MA==", - "dependencies": { - "popper.js": "^1.16.0" - } - }, - "node_modules/tlds": { - "version": "1.221.1", - "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.221.1.tgz", - "integrity": "sha512-N1Afn/SLeOQRpxMwHBuNFJ3GvGrdtY4XPXKPFcx8he0U9Jg9ZkvTKE1k3jQDtCmlFn44UxjVtouF6PT4rEGd3Q==", - "bin": { - "tlds": "bin.js" - } - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" - }, - "node_modules/to-buffer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path/node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/to-vfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/to-vfile/-/to-vfile-6.1.0.tgz", - "integrity": "sha512-BxX8EkCxOAZe+D/ToHdDsJcVI4HqQfmw0tCkp31zf3dNP/XWIAjU4CmeuSwsSoOzOTqHPOL0KUzyZqJplkD0Qw==", - "dependencies": { - "is-buffer": "^2.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" - }, - "node_modules/trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/trim-repeated": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", - "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", - "dependencies": { - "escape-string-regexp": "^1.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/trim-trailing-lines": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", - "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/tryer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", - "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==" - }, - "node_modules/ts-jest": { - "version": "26.5.6", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.6.tgz", - "integrity": "sha512-rua+rCP8DxpA8b4DQD/6X2HQS8Zy/xzViVYfEs2OQu68tkCuKLV0Md8pmX55+W24uRIyAsf/BajRfxOs+R2MKA==", - "dev": true, - "dependencies": { - "bs-logger": "0.x", - "buffer-from": "1.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^26.1.0", - "json5": "2.x", - "lodash": "4.x", - "make-error": "1.x", - "mkdirp": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": ">= 10" - }, - "peerDependencies": { - "jest": ">=26 <27", - "typescript": ">=3.8 <5.0" - } - }, - "node_modules/ts-pnp": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", - "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", - "engines": { - "node": ">=6" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/tsconfig-paths": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", - "integrity": "sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.0", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", - "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.28", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz", - "integrity": "sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", - "dependencies": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/unbzip2-stream": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", - "dependencies": { - "buffer": "^5.2.1", - "through": "^2.3.8" - } - }, - "node_modules/unfetch": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", - "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==" - }, - "node_modules/unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "dependencies": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unified/node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" - }, - "node_modules/unist-builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", - "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-after": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", - "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-find-all-after": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz", - "integrity": "sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-flatmap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unist-util-flatmap/-/unist-util-flatmap-1.0.0.tgz", - "integrity": "sha512-IG32jcKJlhARCYT2LsYPJWdoXYkzz3ESAdl1aa2hn9Auh+cgUmU6wgkII4yCc/1GgeWibRdELdCZh/p3QKQ1dQ==" - }, - "node_modules/unist-util-generated": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", - "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", - "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-map/-/unist-util-map-2.0.1.tgz", - "integrity": "sha512-VdNvk4BQUUU9Rgr8iUOvclHa/iN9O+6Dt66FKij8l9OVezGG37gGWCPU5KSax1R2degqXFvl3kWTkvzL79e9tQ==", - "dependencies": { - "@types/mdast": "^3.0.0", - "object-assign": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", - "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", - "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", - "dependencies": { - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "dependencies": { - "@types/unist": "^2.0.2" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", - "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=" - }, - "node_modules/unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dependencies": { - "isarray": "1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "deprecated": "Please see https://github.com/lydell/urix#deprecated" - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url-loader": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz", - "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==", - "dependencies": { - "loader-utils": "^1.1.0", - "mime": "^2.0.3", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "webpack": "^3.0.0 || ^4.0.0" - } - }, - "node_modules/url-loader/node_modules/mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dependencies": { - "prepend-http": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/url-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-5.0.0.tgz", - "integrity": "sha512-O08GjTiAFNsSlrUWfqF1jH0H1W3m35ZyadHrGv5krdnmPPoxP27oDTqux/579PtaroiSGm5yma6KT1mHFH6Y/g==", - "dependencies": { - "ip-regex": "^4.1.0", - "tlds": "^1.203.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", - "engines": { - "node": ">= 4" - } - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" - }, - "node_modules/url/node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/use-callback-ref": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", - "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0", - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-deep-compare-effect": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/use-deep-compare-effect/-/use-deep-compare-effect-1.8.1.tgz", - "integrity": "sha512-kbeNVZ9Zkc0RFGpfMN3MNfaKNvcLNyxOAAd9O4CBZ+kCBXXscn9s/4I+8ytUER4RDpEYs5+O6Rs4PqiZ+rHr5Q==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "dequal": "^2.0.2" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - }, - "peerDependencies": { - "react": ">=16.13" - } - }, - "node_modules/use-sidecar": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.0.5.tgz", - "integrity": "sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA==", - "dependencies": { - "detect-node-es": "^1.1.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/use-subscription": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz", - "integrity": "sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA==", - "dependencies": { - "object-assign": "^4.1.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "node_modules/util.promisify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", - "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "dependencies": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-location": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", - "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" - }, - "node_modules/watchpack": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", - "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/web-namespaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", - "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" - }, - "node_modules/webpack-bundle-analyzer": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.6.1.tgz", - "integrity": "sha512-Nfd8HDwfSx1xBwC+P8QMGvHAOITxNBSvu/J/mCJvOwv+G4VWkU7zir9SSenTtyCi0LnVtmsc7G5SZo1uV+bxRw==", - "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1", - "bfj": "^6.1.1", - "chalk": "^2.4.1", - "commander": "^2.18.0", - "ejs": "^2.6.1", - "express": "^4.16.3", - "filesize": "^3.6.1", - "gzip-size": "^5.0.0", - "lodash": "^4.17.15", - "mkdirp": "^0.5.1", - "opener": "^1.5.1", - "ws": "^6.0.0" - }, - "bin": { - "webpack-bundle-analyzer": "lib/bin/analyzer.js" - }, - "engines": { - "node": ">= 6.14.4" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/webpack-bundle-analyzer/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/webpack-bundle-analyzer/node_modules/ejs": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", - "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", - "hasInstallScript": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-pm-runs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", - "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", - "dev": true - }, - "node_modules/which-typed-array": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz", - "integrity": "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==", - "dependencies": { - "available-typed-arrays": "^1.0.2", - "call-bind": "^1.0.0", - "es-abstract": "^1.18.0-next.1", - "foreach": "^2.0.5", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.1", - "is-typed-array": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wicg-inert": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/wicg-inert/-/wicg-inert-3.1.1.tgz", - "integrity": "sha512-PhBaNh8ur9Xm4Ggy4umelwNIP6pPP1bv3EaWaKqfb/QNme2rdLjm7wIInvV4WhxVHhzA4Spgw9qNSqWtB/ca2A==" - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", - "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", - "dependencies": { - "async-limiter": "~1.0.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - }, "dependencies": { "@algolia/cache-browser-local-storage": { "version": "4.10.5", @@ -20415,8 +467,7 @@ "@bugsnag/plugin-react": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/@bugsnag/plugin-react/-/plugin-react-7.5.4.tgz", - "integrity": "sha512-UFNCae2BbvvetIegAy+h45jlmtQ8k+ZnhpM0wnG4EPzDeZA1AFM+LzqRMWF7GrRRLb8H3W8PoswUN9M1Vr6eog==", - "requires": {} + "integrity": "sha512-UFNCae2BbvvetIegAy+h45jlmtQ8k+ZnhpM0wnG4EPzDeZA1AFM+LzqRMWF7GrRRLb8H3W8PoswUN9M1Vr6eog==" }, "@bugsnag/safe-json-stringify": { "version": "6.0.0", @@ -20452,6 +503,7 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -20468,6 +520,7 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -20475,12 +528,14 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true } } }, @@ -20687,8 +742,7 @@ "@hashicorp/react-inline-svg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", - "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", - "requires": {} + "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==" }, "slugify": { "version": "1.3.6", @@ -20729,8 +783,7 @@ "@hashicorp/react-inline-svg": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.1.tgz", - "integrity": "sha512-EpvJd0AkE5tvlentS/Oez5W7SFJ32UjvU0RVFPYQlwR6tOTMOR9wK7Ose69WjkmtdjPMHWRE6MxWeSn0c1N5Bw==", - "requires": {} + "integrity": "sha512-EpvJd0AkE5tvlentS/Oez5W7SFJ32UjvU0RVFPYQlwR6tOTMOR9wK7Ose69WjkmtdjPMHWRE6MxWeSn0c1N5Bw==" }, "@hashicorp/react-tabs": { "version": "6.0.0", @@ -20744,8 +797,7 @@ "@hashicorp/react-inline-svg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", - "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", - "requires": {} + "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==" }, "@tippy.js/react": { "version": "3.1.1", @@ -20761,8 +813,7 @@ "@hashicorp/react-toggle": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-3.0.3.tgz", - "integrity": "sha512-rcmMgEGUP+rh8gHnAYBZwZSkPs4Cz+iL1+v/ROW3cYsqZPZBdeAKG/WqRrL7eNBEWsYvBgx/M9885tsl1I5BTg==", - "requires": {} + "integrity": "sha512-rcmMgEGUP+rh8gHnAYBZwZSkPs4Cz+iL1+v/ROW3cYsqZPZBdeAKG/WqRrL7eNBEWsYvBgx/M9885tsl1I5BTg==" }, "ansi-regex": { "version": "4.1.0", @@ -20958,7 +1009,6 @@ "version": "16.14.0", "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "peer": true, "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", @@ -21441,8 +1491,7 @@ "@hashicorp/react-head": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-head/-/react-head-3.1.2.tgz", - "integrity": "sha512-DkQt0F2zU2cZ36IafDI8TWQNS6kkCVzaouLMR0Mwb/MYCzOJtutyZYrzrrDU+uQQ5tWSt3vZQKrSqD4M5RMMoQ==", - "requires": {} + "integrity": "sha512-DkQt0F2zU2cZ36IafDI8TWQNS6kkCVzaouLMR0Mwb/MYCzOJtutyZYrzrrDU+uQQ5tWSt3vZQKrSqD4M5RMMoQ==" }, "@hashicorp/react-hero": { "version": "8.0.2", @@ -21473,8 +1522,7 @@ "@hashicorp/react-inline-svg": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.3.tgz", - "integrity": "sha512-BKLhVFc0gIRxyd2QZ5KWSAXDyyiOI+dQ4U4HrgAA3f4/JmpOsF/EgQ6Ro+cmNZy1/cn42OM2iqoEvUqYvW+ZfQ==", - "requires": {} + "integrity": "sha512-BKLhVFc0gIRxyd2QZ5KWSAXDyyiOI+dQ4U4HrgAA3f4/JmpOsF/EgQ6Ro+cmNZy1/cn42OM2iqoEvUqYvW+ZfQ==" }, "@hashicorp/react-learn-callout": { "version": "2.0.1", @@ -21489,8 +1537,7 @@ "@hashicorp/react-link-wrap": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@hashicorp/react-link-wrap/-/react-link-wrap-3.0.3.tgz", - "integrity": "sha512-G0JM3IowWCUWkc/mW5Llb/9NK50PH81/fySGZmQI6/oakK1gLvA6/fEfWRX7cqa7NoFHLiNnDrXJkc3ShtKNVw==", - "requires": {} + "integrity": "sha512-G0JM3IowWCUWkc/mW5Llb/9NK50PH81/fySGZmQI6/oakK1gLvA6/fEfWRX7cqa7NoFHLiNnDrXJkc3ShtKNVw==" }, "@hashicorp/react-markdown-page": { "version": "1.4.3", @@ -21506,8 +1553,7 @@ "@hashicorp/react-placeholder": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/@hashicorp/react-placeholder/-/react-placeholder-0.1.0.tgz", - "integrity": "sha512-Jti+Z4p6fVXiukBZpPIvIFJb/oxRYY3AIXCgrEJxvKemvF8iD84oWSyCB2WPzycmHIn4u8dlSCrc/VhicnieQA==", - "requires": {} + "integrity": "sha512-Jti+Z4p6fVXiukBZpPIvIFJb/oxRYY3AIXCgrEJxvKemvF8iD84oWSyCB2WPzycmHIn4u8dlSCrc/VhicnieQA==" }, "@hashicorp/react-product-downloads-page": { "version": "2.5.3", @@ -21871,8 +1917,7 @@ "@mdx-js/react": { "version": "1.6.22", "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", - "requires": {} + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==" }, "@mdx-js/util": { "version": "1.6.22", @@ -21980,8 +2025,7 @@ "@next/react-refresh-utils": { "version": "11.1.2", "resolved": "https://registry.npmjs.org/@next/react-refresh-utils/-/react-refresh-utils-11.1.2.tgz", - "integrity": "sha512-hsoJmPfhVqjZ8w4IFzoo8SyECVnN+8WMnImTbTKrRUHOVJcYMmKLL7xf7T0ft00tWwAl/3f3Q3poWIN2Ueql/Q==", - "requires": {} + "integrity": "sha512-hsoJmPfhVqjZ8w4IFzoo8SyECVnN+8WMnImTbTKrRUHOVJcYMmKLL7xf7T0ft00tWwAl/3f3Q3poWIN2Ueql/Q==" }, "@next/swc-darwin-arm64": { "version": "11.1.2", @@ -22412,7 +2456,7 @@ "version": "15.7.3", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==", - "devOptional": true + "dev": true }, "@types/q": { "version": "1.5.5", @@ -22423,7 +2467,7 @@ "version": "17.0.11", "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", - "devOptional": true, + "dev": true, "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -22434,7 +2478,7 @@ "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", - "devOptional": true + "dev": true }, "@types/segment-analytics": { "version": "0.0.33", @@ -22559,8 +2603,7 @@ "acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "requires": {} + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" }, "acorn-walk": { "version": "7.2.0", @@ -22590,14 +2633,12 @@ "ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "requires": {} + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" }, "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "requires": {} + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" }, "algoliasearch": { "version": "4.10.5", @@ -24589,7 +4630,7 @@ "version": "3.0.8", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==", - "devOptional": true + "dev": true }, "currently-unhandled": { "version": "0.4.1", @@ -25194,6 +5235,7 @@ "version": "7.23.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.23.0.tgz", "integrity": "sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q==", + "dev": true, "requires": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.0", @@ -25238,6 +5280,7 @@ "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, "requires": { "@babel/highlight": "^7.10.4" } @@ -25246,6 +5289,7 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -25253,12 +5297,14 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true } } }, @@ -25351,8 +5397,7 @@ "eslint-config-prettier": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-7.0.0.tgz", - "integrity": "sha512-8Y8lGLVPPZdaNA7JXqnvETVC7IiVRgAP6afQu9gOQRn90YY3otMNh+x7Vr2vMePQntF+5erdSUBqSzCmU/AxaQ==", - "requires": {} + "integrity": "sha512-8Y8lGLVPPZdaNA7JXqnvETVC7IiVRgAP6afQu9gOQRn90YY3otMNh+x7Vr2vMePQntF+5erdSUBqSzCmU/AxaQ==" }, "eslint-import-resolver-node": { "version": "0.3.6", @@ -25699,8 +5744,7 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", - "dev": true, - "requires": {} + "dev": true }, "eslint-scope": { "version": "5.1.1", @@ -30370,8 +10414,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz", "integrity": "sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==", - "dev": true, - "requires": {} + "dev": true }, "postcss-color-functional-notation": { "version": "2.0.1", @@ -31741,8 +11784,7 @@ "postcss-syntax": { "version": "0.36.2", "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", - "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", - "requires": {} + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==" }, "postcss-value-parser": { "version": "4.1.0", @@ -31846,7 +11888,8 @@ "prettier": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==" + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true }, "prettier-linter-helpers": { "version": "1.0.0", @@ -32163,8 +12206,7 @@ "react-intersection-observer": { "version": "8.32.5", "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-8.32.5.tgz", - "integrity": "sha512-4xKdUWRNdPueXXxTyMOV41w6qIa4tsV7BbWOW+IYsvGPP7wxOj9V6o3cKywie+/VDr5Qs7pCzi5Wom78dUxj1w==", - "requires": {} + "integrity": "sha512-4xKdUWRNdPueXXxTyMOV41w6qIa4tsV7BbWOW+IYsvGPP7wxOj9V6o3cKywie+/VDr5Qs7pCzi5Wom78dUxj1w==" }, "react-is": { "version": "16.13.1", @@ -33429,21 +13471,6 @@ "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - } - } - }, "string-argv": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", @@ -33507,6 +13534,21 @@ "define-properties": "^1.1.3" } }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, "stringify-entities": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz", @@ -33802,20 +13844,17 @@ "stylelint-config-css-modules": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/stylelint-config-css-modules/-/stylelint-config-css-modules-2.2.0.tgz", - "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==", - "requires": {} + "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==" }, "stylelint-config-prettier": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-8.0.2.tgz", - "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==", - "requires": {} + "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==" }, "stylelint-config-recommended": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", - "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", - "requires": {} + "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==" }, "stylelint-config-standard": { "version": "20.0.0", @@ -33828,8 +13867,7 @@ "stylelint-media-use-custom-media": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/stylelint-media-use-custom-media/-/stylelint-media-use-custom-media-2.0.0.tgz", - "integrity": "sha512-G7Hwma8HIMFJOChqrX9ie8hAGbtEMUbEjuiaR3olHIXjloDWqYlFHIJKsCyyckigkm+4LtCwtZDQASrVY4pRBg==", - "requires": {} + "integrity": "sha512-G7Hwma8HIMFJOChqrX9ie8hAGbtEMUbEjuiaR3olHIXjloDWqYlFHIJKsCyyckigkm+4LtCwtZDQASrVY4pRBg==" }, "stylelint-order": { "version": "4.1.0", @@ -33915,8 +13953,7 @@ "stylelint-use-nesting": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/stylelint-use-nesting/-/stylelint-use-nesting-3.0.0.tgz", - "integrity": "sha512-BMzhXWbK5DdAYtZMQULn7VmWZXpy8Rwlx2PgeNYqKInQrKTJWM/TFKPScc+xvsGUc/6JPiUDeQQij9gFnOo8Kg==", - "requires": {} + "integrity": "sha512-BMzhXWbK5DdAYtZMQULn7VmWZXpy8Rwlx2PgeNYqKInQrKTJWM/TFKPScc+xvsGUc/6JPiUDeQQij9gFnOo8Kg==" }, "stylelint-value-no-unknown-custom-properties": { "version": "3.0.0", @@ -33934,8 +13971,7 @@ "stylis-rule-sheet": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz", - "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==", - "requires": {} + "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==" }, "sugarss": { "version": "2.0.0", @@ -34473,7 +14509,8 @@ "typescript": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", - "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==" + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", + "dev": true }, "ua-parser-js": { "version": "0.7.28", @@ -34775,8 +14812,7 @@ "use-callback-ref": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", - "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", - "requires": {} + "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==" }, "use-deep-compare-effect": { "version": "1.8.1", diff --git a/website/public/img/l7-routing/Resolver.png b/website/public/img/l7-routing/Resolver.png new file mode 100644 index 000000000..ad3ff92cb --- /dev/null +++ b/website/public/img/l7-routing/Resolver.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55b11c0d8860132a41b829aad5d907ebda4b56aeb7ab99c04b55b7924c9b6844 +size 49361 diff --git a/website/public/img/l7-routing/Router.png b/website/public/img/l7-routing/Router.png new file mode 100644 index 000000000..9954df22a --- /dev/null +++ b/website/public/img/l7-routing/Router.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:417b10aa58fe22218c8290feb7718e426e9a115bcbabac04eac8c455d499c324 +size 48299 diff --git a/website/public/img/l7-routing/Splitter.png b/website/public/img/l7-routing/Splitter.png new file mode 100644 index 000000000..5d144438d --- /dev/null +++ b/website/public/img/l7-routing/Splitter.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f020ccd484d8e399275dd4be437fbbb10a55c6f9e243ed4c6522195f75c61886 +size 48448 diff --git a/website/public/img/l7-routing/full.png b/website/public/img/l7-routing/full.png new file mode 100644 index 000000000..17b15d50a --- /dev/null +++ b/website/public/img/l7-routing/full.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f289fe2cf2297a52b42f9139bde7a7a01388178ae33b3cf5255f2303576ba644 +size 108759 From 59e50ac42efaf2bd5b4d48b7ba04c2074309633c Mon Sep 17 00:00:00 2001 From: Sujata Roy <61177855+20sr20@users.noreply.github.com> Date: Mon, 10 Jan 2022 12:01:27 -0800 Subject: [PATCH 156/404] Adding texts in verify_leader metric - Added description providing example case when the metric can go high --- website/content/docs/agent/telemetry.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/agent/telemetry.mdx b/website/content/docs/agent/telemetry.mdx index 9bcede9c6..307adffff 100644 --- a/website/content/docs/agent/telemetry.mdx +++ b/website/content/docs/agent/telemetry.mdx @@ -398,7 +398,7 @@ These metrics are used to monitor the health of the Consul servers. | `consul.raft.state.leader` | 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.follower` | Counts the number of times an agent has entered the follower mode. This happens when a new agent joins the cluster or after the end of a leader election. | follower state entered / interval | counter | | `consul.raft.transition.heartbeat_timeout` | The number of times an agent has transitioned to the Candidate state, after receive no heartbeat messages from the last known leader. | timeouts / interval | counter | -| `consul.raft.verify_leader` | Counts the number of times an agent checks whether it is still the leader or not | checks / interval | Counter | +| `consul.raft.verify_leader` | This metric doesn't have direct correlation to the leader change. It just counts the number of times an agent checks whether it is still the leader or not. For example, during every consistent read, the check is done. So, depending on the load in the system, this metric can be high as it is incremented each time a consistent read is done. | checks / interval | Counter | | `consul.rpc.accept_conn` | Increments when a server accepts an RPC connection. | connections | counter | | `consul.catalog.register` | Measures the time it takes to complete a catalog register operation. | ms | timer | | `consul.catalog.deregister` | Measures the time it takes to complete a catalog deregister operation. | ms | timer | From b8fe5038d163eb925803ef897aa0c3e394f06c3b Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Mon, 10 Jan 2022 15:57:15 -0500 Subject: [PATCH 157/404] added screenshot of k8s service --- website/content/docs/k8s/service-sync.mdx | 2 ++ website/public/img/k8s-services.png | 3 +++ 2 files changed, 5 insertions(+) create mode 100644 website/public/img/k8s-services.png diff --git a/website/content/docs/k8s/service-sync.mdx b/website/content/docs/k8s/service-sync.mdx index f1caeed30..bd82ce5c3 100644 --- a/website/content/docs/k8s/service-sync.mdx +++ b/website/content/docs/k8s/service-sync.mdx @@ -16,6 +16,8 @@ as first-class Kubernetes services. This functionality is provided by the automatically installed and configured using the [Consul Helm chart](/docs/k8s/installation/install). +![screenshot of a Kubernetes service in the UI](/img/k8s-services.png) + **Why sync Kubernetes services to Consul?** Kubernetes services synced to the Consul catalog enable Kubernetes services to be accessed by any node that is part of the Consul cluster, including other distinct Kubernetes clusters. diff --git a/website/public/img/k8s-services.png b/website/public/img/k8s-services.png new file mode 100644 index 000000000..d565a5cd9 --- /dev/null +++ b/website/public/img/k8s-services.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:123b37f80b56dfc3eaa01f97e9e995fe4bad62fbca75966af0d4eaaa3df0120f +size 173742 From dcdaefcf79b8cab3eee841c45bb15dab92326b15 Mon Sep 17 00:00:00 2001 From: Matt Siegel Date: Mon, 10 Jan 2022 16:44:56 -0500 Subject: [PATCH 158/404] Added ACL requirements for CLI commands --- .../commands/acl/auth-method/create.mdx | 8 ++++ .../commands/acl/auth-method/delete.mdx | 8 ++++ .../content/commands/acl/auth-method/list.mdx | 8 ++++ .../content/commands/acl/auth-method/read.mdx | 8 ++++ .../commands/acl/auth-method/update.mdx | 8 ++++ .../commands/acl/binding-rule/create.mdx | 8 ++++ .../commands/acl/binding-rule/delete.mdx | 8 ++++ .../commands/acl/binding-rule/list.mdx | 8 ++++ .../commands/acl/binding-rule/read.mdx | 8 ++++ .../commands/acl/binding-rule/update.mdx | 8 ++++ website/content/commands/acl/bootstrap.mdx | 8 +++- .../content/commands/acl/policy/create.mdx | 8 ++++ .../content/commands/acl/policy/delete.mdx | 8 ++++ website/content/commands/acl/policy/list.mdx | 8 ++++ website/content/commands/acl/policy/read.mdx | 8 ++++ .../content/commands/acl/policy/update.mdx | 8 ++++ website/content/commands/acl/role/create.mdx | 8 ++++ website/content/commands/acl/role/delete.mdx | 8 ++++ website/content/commands/acl/role/list.mdx | 8 ++++ website/content/commands/acl/role/read.mdx | 8 ++++ website/content/commands/acl/role/update.mdx | 8 ++++ .../content/commands/acl/set-agent-token.mdx | 8 ++++ website/content/commands/acl/token/clone.mdx | 8 ++++ website/content/commands/acl/token/create.mdx | 8 ++++ website/content/commands/acl/token/delete.mdx | 8 ++++ website/content/commands/acl/token/list.mdx | 8 ++++ website/content/commands/acl/token/read.mdx | 8 ++++ website/content/commands/acl/token/update.mdx | 8 ++++ .../content/commands/acl/translate-rules.mdx | 8 ++++ .../content/commands/catalog/datacenters.mdx | 8 ++++ website/content/commands/catalog/nodes.mdx | 8 ++++ website/content/commands/catalog/services.mdx | 8 ++++ website/content/commands/config/delete.mdx | 8 ++++ website/content/commands/config/list.mdx | 8 ++++ website/content/commands/config/read.mdx | 8 ++++ website/content/commands/config/write.mdx | 8 ++++ website/content/commands/connect/ca.mdx | 16 +++++++ website/content/commands/event.mdx | 8 ++++ website/content/commands/force-leave.mdx | 8 ++++ website/content/commands/intention/create.mdx | 8 ++++ website/content/commands/intention/delete.mdx | 8 ++++ website/content/commands/intention/get.mdx | 8 ++++ website/content/commands/intention/match.mdx | 8 ++++ website/content/commands/join.mdx | 8 ++++ website/content/commands/kv/delete.mdx | 8 ++++ website/content/commands/kv/get.mdx | 8 ++++ website/content/commands/kv/put.mdx | 8 ++++ website/content/commands/leave.mdx | 8 ++++ website/content/commands/license.mdx | 24 ++++++++++ website/content/commands/login.mdx | 8 ++++ website/content/commands/logout.mdx | 8 ++++ website/content/commands/maint.mdx | 8 ++++ website/content/commands/members.mdx | 8 ++++ website/content/commands/namespace/create.mdx | 8 ++++ website/content/commands/namespace/delete.mdx | 8 ++++ website/content/commands/namespace/list.mdx | 8 ++++ website/content/commands/namespace/read.mdx | 8 ++++ website/content/commands/namespace/update.mdx | 8 ++++ website/content/commands/operator/area.mdx | 48 +++++++++++++++++++ .../content/commands/operator/autopilot.mdx | 24 ++++++++++ website/content/commands/operator/raft.mdx | 16 +++++++ website/content/commands/reload.mdx | 8 ++++ website/content/commands/rtt.mdx | 8 ++++ .../content/commands/services/deregister.mdx | 8 ++++ .../content/commands/services/register.mdx | 8 ++++ website/content/commands/snapshot/restore.mdx | 9 +++- website/content/commands/snapshot/save.mdx | 8 ++++ 67 files changed, 622 insertions(+), 3 deletions(-) diff --git a/website/content/commands/acl/auth-method/create.mdx b/website/content/commands/acl/auth-method/create.mdx index a76c83043..187f0fbd9 100644 --- a/website/content/commands/acl/auth-method/create.mdx +++ b/website/content/commands/acl/auth-method/create.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method](https://www.consu The `acl auth-method create` command creates new auth methods. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl auth-method create [options] [args]` diff --git a/website/content/commands/acl/auth-method/delete.mdx b/website/content/commands/acl/auth-method/delete.mdx index 57e07b030..6394fe6af 100644 --- a/website/content/commands/acl/auth-method/delete.mdx +++ b/website/content/commands/acl/auth-method/delete.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/auth-method/:name](https:// The `acl auth-method delete` command deletes an auth method. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl auth-method delete [options]` diff --git a/website/content/commands/acl/auth-method/list.mdx b/website/content/commands/acl/auth-method/list.mdx index 5f3b62da2..2217155f6 100644 --- a/website/content/commands/acl/auth-method/list.mdx +++ b/website/content/commands/acl/auth-method/list.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-methods](https://www.cons The `acl auth-method list` command lists all auth methods. By default it will not show metadata. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl auth-method list` diff --git a/website/content/commands/acl/auth-method/read.mdx b/website/content/commands/acl/auth-method/read.mdx index 2568a82cf..805524ed0 100644 --- a/website/content/commands/acl/auth-method/read.mdx +++ b/website/content/commands/acl/auth-method/read.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-method/:name](https://www The `acl auth-method read` command reads and displays an auth method's details. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl auth-method read [options] [args]` diff --git a/website/content/commands/acl/auth-method/update.mdx b/website/content/commands/acl/auth-method/update.mdx index 86536a550..2e455a724 100644 --- a/website/content/commands/acl/auth-method/update.mdx +++ b/website/content/commands/acl/auth-method/update.mdx @@ -14,6 +14,14 @@ default operations is to merge the current auth method with those values provided to the command invocation. Therefore to update just one field, only the `-name` options and the option to modify must be provided. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl auth-method update [options] [args]` diff --git a/website/content/commands/acl/binding-rule/create.mdx b/website/content/commands/acl/binding-rule/create.mdx index a7e4d1a57..681576483 100644 --- a/website/content/commands/acl/binding-rule/create.mdx +++ b/website/content/commands/acl/binding-rule/create.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule](https://www.cons The `acl binding-rule create` command creates new binding rules. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl binding-rule create [options] [args]` diff --git a/website/content/commands/acl/binding-rule/delete.mdx b/website/content/commands/acl/binding-rule/delete.mdx index beb39313b..fc7b599b3 100644 --- a/website/content/commands/acl/binding-rule/delete.mdx +++ b/website/content/commands/acl/binding-rule/delete.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/binding-rule/:id](https://w The `acl binding-rule delete` command deletes a binding rule. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl binding-rule delete [options]` diff --git a/website/content/commands/acl/binding-rule/list.mdx b/website/content/commands/acl/binding-rule/list.mdx index 8517f5ecc..b80774a95 100644 --- a/website/content/commands/acl/binding-rule/list.mdx +++ b/website/content/commands/acl/binding-rule/list.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rules](https://www.con The `acl binding-rule list` command lists all binding rules. By default it will not show metadata. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl binding-rule list` diff --git a/website/content/commands/acl/binding-rule/read.mdx b/website/content/commands/acl/binding-rule/read.mdx index 0a801efbe..3e2e8db17 100644 --- a/website/content/commands/acl/binding-rule/read.mdx +++ b/website/content/commands/acl/binding-rule/read.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rule/:id](https://www. The `acl binding-rule read` command reads and displays a binding rules details. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl binding-rule read [options] [args]` diff --git a/website/content/commands/acl/binding-rule/update.mdx b/website/content/commands/acl/binding-rule/update.mdx index 742d5fe14..dd0d150c1 100644 --- a/website/content/commands/acl/binding-rule/update.mdx +++ b/website/content/commands/acl/binding-rule/update.mdx @@ -14,6 +14,14 @@ default operations is to merge the current binding rule with those values provided to the command invocation. Therefore to update just one field, only the `-id` option and the option to modify must be provided. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl binding-rule update [options] [args]` diff --git a/website/content/commands/acl/bootstrap.mdx b/website/content/commands/acl/bootstrap.mdx index f3a67ede8..3e7aa4707 100644 --- a/website/content/commands/acl/bootstrap.mdx +++ b/website/content/commands/acl/bootstrap.mdx @@ -14,7 +14,13 @@ for management purposes and output its details. This can only be done once and a 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/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). +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `none` | ## Usage diff --git a/website/content/commands/acl/policy/create.mdx b/website/content/commands/acl/policy/create.mdx index f99d58c83..414b0fcdc 100644 --- a/website/content/commands/acl/policy/create.mdx +++ b/website/content/commands/acl/policy/create.mdx @@ -19,6 +19,14 @@ from stdin, a file or the raw value. To use stdin pass `-` as the value. To load the value from a file prefix the value with an `@`. Any other values will be used directly. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + -> **Deprecated:** The `-from-token` and `-token-secret` arguments exist only as a convenience to make legacy ACL migration easier. These will be removed in a future major release when support for the legacy ACL system is removed. diff --git a/website/content/commands/acl/policy/delete.mdx b/website/content/commands/acl/policy/delete.mdx index ada285a67..9296d8949 100644 --- a/website/content/commands/acl/policy/delete.mdx +++ b/website/content/commands/acl/policy/delete.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/policy/:id](https://www.con The `acl policy delete` command deletes a policy. Policies may be deleted by their ID or by name. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl policy delete [options]` diff --git a/website/content/commands/acl/policy/list.mdx b/website/content/commands/acl/policy/list.mdx index 374e81de3..93b1d6cad 100644 --- a/website/content/commands/acl/policy/list.mdx +++ b/website/content/commands/acl/policy/list.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policies](https://www.consul.i The `acl policy list` command lists all policies. By default it will not show metadata. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl policy list` diff --git a/website/content/commands/acl/policy/read.mdx b/website/content/commands/acl/policy/read.mdx index 2f069a354..7657f9f95 100644 --- a/website/content/commands/acl/policy/read.mdx +++ b/website/content/commands/acl/policy/read.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policy/:id](https://www.consul The `acl policy read` command reads and displays a policies details. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl policy read [options] [args]` diff --git a/website/content/commands/acl/policy/update.mdx b/website/content/commands/acl/policy/update.mdx index 3ec5956cf..ac365bbb8 100644 --- a/website/content/commands/acl/policy/update.mdx +++ b/website/content/commands/acl/policy/update.mdx @@ -15,6 +15,14 @@ the `-id` or `-name` options and the option to modify must be provided. Note tha policies requires both the `-id` and `-name` as the new name cannot yet be used to lookup the policy. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl policy update [options] [args]` diff --git a/website/content/commands/acl/role/create.mdx b/website/content/commands/acl/role/create.mdx index 1b0e39df1..3a3b3d0f8 100644 --- a/website/content/commands/acl/role/create.mdx +++ b/website/content/commands/acl/role/create.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role](https://www.consul.io/ap The `acl role create` command creates new roles. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl role create [options] [args]` diff --git a/website/content/commands/acl/role/delete.mdx b/website/content/commands/acl/role/delete.mdx index c33fc76ac..ad1660533 100644 --- a/website/content/commands/acl/role/delete.mdx +++ b/website/content/commands/acl/role/delete.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/role/:id](https://www.consu The `acl role delete` command deletes a role. Roles may be deleted by their ID or by name. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl role delete [options]` diff --git a/website/content/commands/acl/role/list.mdx b/website/content/commands/acl/role/list.mdx index ea8c110b9..b5f4d0c3c 100644 --- a/website/content/commands/acl/role/list.mdx +++ b/website/content/commands/acl/role/list.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/roles](https://www.consul.io/a The `acl role list` command lists all roles. By default it will not show metadata. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl role list` diff --git a/website/content/commands/acl/role/read.mdx b/website/content/commands/acl/role/read.mdx index 4c248a943..3d3b3f3b4 100644 --- a/website/content/commands/acl/role/read.mdx +++ b/website/content/commands/acl/role/read.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoints: [\[GET\] /v1/acl/role/:id](https://www.consul. The `acl role read` command reads and displays a roles details. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl role read [options] [args]` diff --git a/website/content/commands/acl/role/update.mdx b/website/content/commands/acl/role/update.mdx index 52a7c82c8..3cf87d7a2 100644 --- a/website/content/commands/acl/role/update.mdx +++ b/website/content/commands/acl/role/update.mdx @@ -15,6 +15,14 @@ update just one field, only the `-id` or `-name` options and the option to modify must be provided. Note that renaming roles requires both the `-id` and `-name` as the new name cannot yet be used to lookup the role. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl role update [options] [args]` diff --git a/website/content/commands/acl/set-agent-token.mdx b/website/content/commands/acl/set-agent-token.mdx index 6c574a828..51e71c0ce 100644 --- a/website/content/commands/acl/set-agent-token.mdx +++ b/website/content/commands/acl/set-agent-token.mdx @@ -16,6 +16,14 @@ the agent's configuration. Tokens are not persisted unless is `true`, so tokens will need to be updated again if that option is `false` and the agent is restarted. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl set-agent-token [options] TYPE TOKEN` diff --git a/website/content/commands/acl/token/clone.mdx b/website/content/commands/acl/token/clone.mdx index c5a78434e..218d3f5bf 100644 --- a/website/content/commands/acl/token/clone.mdx +++ b/website/content/commands/acl/token/clone.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID/clone](https The `acl token clone` command clones an existing token. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl token clone [options]` diff --git a/website/content/commands/acl/token/create.mdx b/website/content/commands/acl/token/create.mdx index b72e881c4..23aaeccd5 100644 --- a/website/content/commands/acl/token/create.mdx +++ b/website/content/commands/acl/token/create.mdx @@ -13,6 +13,14 @@ This command creates new tokens. When creating a new token, policies may be link either the `-policy-id` or the `-policy-name` options. When specifying policies by IDs you may use a unique prefix of the UUID as a shortcut for specifying the entire UUID. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl token create [options] [args]` diff --git a/website/content/commands/acl/token/delete.mdx b/website/content/commands/acl/token/delete.mdx index b3b219e8f..a020e9274 100644 --- a/website/content/commands/acl/token/delete.mdx +++ b/website/content/commands/acl/token/delete.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/token/:AccessorID](https:// The `acl token delete` command deletes a token. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl token delete [options]` diff --git a/website/content/commands/acl/token/list.mdx b/website/content/commands/acl/token/list.mdx index fc4e970b5..deb147035 100644 --- a/website/content/commands/acl/token/list.mdx +++ b/website/content/commands/acl/token/list.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/tokens](https://www.consul.io/ The `acl token list` command lists all tokens. By default it will not show metadata. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl token list` diff --git a/website/content/commands/acl/token/read.mdx b/website/content/commands/acl/token/read.mdx index 82f531945..2842670f4 100644 --- a/website/content/commands/acl/token/read.mdx +++ b/website/content/commands/acl/token/read.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/token/:AccessorID](https://www The `acl token read` command reads and displays a token details. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ## Usage Usage: `consul acl token read [options] [args]` diff --git a/website/content/commands/acl/token/update.mdx b/website/content/commands/acl/token/update.mdx index d96835c33..9fc331e9f 100644 --- a/website/content/commands/acl/token/update.mdx +++ b/website/content/commands/acl/token/update.mdx @@ -12,6 +12,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID](https://www The `acl token update` command will update a token. Some parts of the token like whether the token is local to the datacenter cannot be changed. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:write` | + ## Usage Usage: `consul acl token update [options]` diff --git a/website/content/commands/acl/translate-rules.mdx b/website/content/commands/acl/translate-rules.mdx index 590febbb4..4e0c95011 100644 --- a/website/content/commands/acl/translate-rules.mdx +++ b/website/content/commands/acl/translate-rules.mdx @@ -14,6 +14,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/rules/translate/:accessor_id]( This command translates the legacy ACL rule syntax into the new syntax. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `acl:read` | + ### Usage Usage: `consul acl translate-rules [options] TRANSLATE` diff --git a/website/content/commands/catalog/datacenters.mdx b/website/content/commands/catalog/datacenters.mdx index 3c31b5bd8..a8cfb96e7 100644 --- a/website/content/commands/catalog/datacenters.mdx +++ b/website/content/commands/catalog/datacenters.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/datacenters](https://www.c The `catalog datacenters` command prints all known datacenters. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `none` | + ## Examples List all datacenters: diff --git a/website/content/commands/catalog/nodes.mdx b/website/content/commands/catalog/nodes.mdx index bf5c5648f..618673bd8 100644 --- a/website/content/commands/catalog/nodes.mdx +++ b/website/content/commands/catalog/nodes.mdx @@ -13,6 +13,14 @@ The `catalog nodes` command prints all known nodes and metadata about them. It can also query for nodes that match a particular metadata or provide a particular service. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `node:read` | + ## Examples List all nodes: diff --git a/website/content/commands/catalog/services.mdx b/website/content/commands/catalog/services.mdx index abd53af69..e7cd46673 100644 --- a/website/content/commands/catalog/services.mdx +++ b/website/content/commands/catalog/services.mdx @@ -13,6 +13,14 @@ The `catalog services` command prints all known services. It can also query for services that match particular metadata or list the services that a particular node provides. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| -------------- | +| `service:read` | + ## Examples List all services: diff --git a/website/content/commands/config/delete.mdx b/website/content/commands/config/delete.mdx index afc377ba1..014e4469c 100644 --- a/website/content/commands/config/delete.mdx +++ b/website/content/commands/config/delete.mdx @@ -13,6 +13,14 @@ The `config delete` command deletes the configuration entry specified by the kind and name. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ----------------------------------- | +| `service:write` or `operator:write` | + ## Usage Usage: `consul config delete [options]` diff --git a/website/content/commands/config/list.mdx b/website/content/commands/config/list.mdx index 9912e3d37..a30b20f71 100644 --- a/website/content/commands/config/list.mdx +++ b/website/content/commands/config/list.mdx @@ -13,6 +13,14 @@ The `config list` command lists all given config entries of the given kind. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| -------------- | +| `service:read` | + ## Usage Usage: `consul config list [options]` diff --git a/website/content/commands/config/read.mdx b/website/content/commands/config/read.mdx index ea412270d..b1b2ca04f 100644 --- a/website/content/commands/config/read.mdx +++ b/website/content/commands/config/read.mdx @@ -14,6 +14,14 @@ kind and name and outputs its JSON representation. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| -------------- | +| `service:read` | + ## Usage Usage: `consul config read [options]` diff --git a/website/content/commands/config/write.mdx b/website/content/commands/config/write.mdx index d7b0f6ac6..f562171eb 100644 --- a/website/content/commands/config/write.mdx +++ b/website/content/commands/config/write.mdx @@ -13,6 +13,14 @@ The `config write` command creates or updates a centralized config entry. See the [configuration entries docs](/docs/agent/config-entries) for more details about configuration entries. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ----------------------------------- | +| `service:write` or `operator:write` | + ## Usage Usage: `consul config write [options] FILE` diff --git a/website/content/commands/connect/ca.mdx b/website/content/commands/connect/ca.mdx index 583476f35..4db356b19 100644 --- a/website/content/commands/connect/ca.mdx +++ b/website/content/commands/connect/ca.mdx @@ -42,6 +42,14 @@ Subcommands: This command displays the current CA configuration. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul connect ca get-config [options]` Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/ca/configuration](https://www.consul.io/api-docs/connect/ca#get-ca-configuration) @@ -69,6 +77,14 @@ Modifies the current CA configuration. If this results in a new root certificate being used, the [Root Rotation](/docs/connect/ca#root-certificate-rotation) process will be triggered. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul connect ca set-config [options]` Corresponding HTTP API Endpoint: [\[PUT\] /v1/connect/ca/configuration](https://www.consul.io/api-docs/connect/ca#update-ca-configuration) diff --git a/website/content/commands/event.mdx b/website/content/commands/event.mdx index 4a33dec0d..7dba8462e 100644 --- a/website/content/commands/event.mdx +++ b/website/content/commands/event.mdx @@ -37,6 +37,14 @@ message. It is hard to give an exact number, as it depends on various parameters of the event, but the payload should be kept very small (< 100 bytes). Specifying too large of an event will return an error. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------- | +| `event:write` | + ## Usage Usage: `consul event [options] [payload]` diff --git a/website/content/commands/force-leave.mdx b/website/content/commands/force-leave.mdx index 183dba282..52a41464b 100644 --- a/website/content/commands/force-leave.mdx +++ b/website/content/commands/force-leave.mdx @@ -32,6 +32,14 @@ from the datacenter's member list nor from the raft configuration. Additionally, if the agent returns after transitioning to the "left" state, but before it is reaped from the member list, then it will rejoin the cluster. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + ## Usage Usage: `consul force-leave [options] node` diff --git a/website/content/commands/intention/create.mdx b/website/content/commands/intention/create.mdx index 95fc8ad27..bcdb62164 100644 --- a/website/content/commands/intention/create.mdx +++ b/website/content/commands/intention/create.mdx @@ -17,6 +17,14 @@ Corresponding HTTP API Endpoint: [\[POST\] /v1/connect/intentions](https://www.c The `intention create` command creates or updates an L4 intention. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------------ | +| `intentions:write` | + ## Usage - `consul intention create [options] SRC DST` diff --git a/website/content/commands/intention/delete.mdx b/website/content/commands/intention/delete.mdx index 8f88fc3a3..1af6fdf87 100644 --- a/website/content/commands/intention/delete.mdx +++ b/website/content/commands/intention/delete.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/connect/intentions/exact](https The `intention delete` command deletes a matching intention. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------------ | +| `intentions:write` | + -> **Deprecated** - The one argument form of this command is deprecated in Consul 1.9.0. Intentions no longer need IDs when represented as [`service-intentions`](/docs/connect/config-entries/service-intentions) config diff --git a/website/content/commands/intention/get.mdx b/website/content/commands/intention/get.mdx index 3a78babf1..b475b4d69 100644 --- a/website/content/commands/intention/get.mdx +++ b/website/content/commands/intention/get.mdx @@ -16,6 +16,14 @@ Consul 1.9.0. Intentions no longer need IDs when represented as [`service-intentions`](/docs/connect/config-entries/service-intentions) config entries. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ----------------- | +| `intentions:read` | + ## Usage Usage: diff --git a/website/content/commands/intention/match.mdx b/website/content/commands/intention/match.mdx index f6cec45f1..2a249ace6 100644 --- a/website/content/commands/intention/match.mdx +++ b/website/content/commands/intention/match.mdx @@ -16,6 +16,14 @@ order: the first intention that matches a request would be evaluated. The [check](/commands/intention/check) command can be used to check whether an L4 connection would be authorized between any two services. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ----------------- | +| `intentions:read` | + ## Usage Usage: `consul intention match [options] SRC_OR_DST` diff --git a/website/content/commands/join.mdx b/website/content/commands/join.mdx index 6871b547c..5083bb545 100644 --- a/website/content/commands/join.mdx +++ b/website/content/commands/join.mdx @@ -22,6 +22,14 @@ state across the cluster. An agent which is already part of a cluster may join an agent in a different cluster, causing the two clusters to be merged into a single cluster. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------- | +| `agent:write` | + ## Usage Usage: `consul join [options] address ...` diff --git a/website/content/commands/kv/delete.mdx b/website/content/commands/kv/delete.mdx index 56ca09e02..f88487065 100644 --- a/website/content/commands/kv/delete.mdx +++ b/website/content/commands/kv/delete.mdx @@ -12,6 +12,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/kv/:key](https://www.consul.io/ The `kv delete` command removes the value from Consul's KV store at the given path. If no key exists at the path, no action is taken. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `key:write` | + ## Usage Usage: `consul kv delete [options] KEY_OR_PREFIX` diff --git a/website/content/commands/kv/get.mdx b/website/content/commands/kv/get.mdx index 742524403..8e5a2d459 100644 --- a/website/content/commands/kv/get.mdx +++ b/website/content/commands/kv/get.mdx @@ -14,6 +14,14 @@ store at the given key name. If no key exists with that name, an error is returned. If a key exists with that name but has no data, nothing is returned. A key name or prefix is required. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `key:read` | + ## Usage Usage: `consul kv get [options] [KEY_OR_PREFIX]` diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index 3f4afb83a..e313b3b33 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -11,6 +11,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/kv/:key](https://www.consul.io/api The `kv put` command writes the data to the given path in the KV store. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `key:write` | + ## Usage Usage: `consul kv put [options] KEY [DATA]` diff --git a/website/content/commands/leave.mdx b/website/content/commands/leave.mdx index fcf6dbcef..c78e508d5 100644 --- a/website/content/commands/leave.mdx +++ b/website/content/commands/leave.mdx @@ -25,6 +25,14 @@ non-graceful leave can affect cluster availability. Running `consul leave` on a server explicitly will reduce the quorum size. Even if the cluster used `bootstrap_expect` to set a quorum size initially, issuing `consul leave` on a server will reconfigure the cluster to have fewer servers. This means you could end up with just one server that is still able to commit writes because quorum is only 1, but those writes might be lost if that server fails before more are added. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------- | +| `agent:write` | + ## Usage Usage: `consul leave [options]` diff --git a/website/content/commands/license.mdx b/website/content/commands/license.mdx index e8f12d3a8..ea80ee008 100644 --- a/website/content/commands/license.mdx +++ b/website/content/commands/license.mdx @@ -128,6 +128,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/license](https://www.cons This command sets the Consul Enterprise license. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul license put [options] LICENSE` #### API Options @@ -160,6 +168,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/license](https://www.cons This command gets the Consul Enterprise license. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `none` | + Usage: `consul license get [options]` #### API Options @@ -197,6 +213,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/license](https://www.c Resets license for the datacenter to the one builtin in Consul binary, if it is still valid. If the builtin license is invalid, the current one stays active. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul license reset [options]` #### API Options diff --git a/website/content/commands/login.mdx b/website/content/commands/login.mdx index 80b16363f..6f205f91c 100644 --- a/website/content/commands/login.mdx +++ b/website/content/commands/login.mdx @@ -17,6 +17,14 @@ requested auth method for a newly minted Consul ACL token. The companion command `consul logout` should be used to destroy any tokens created this way to avoid a resource leak. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `none` | + ## Usage Usage: `consul login [options]` diff --git a/website/content/commands/logout.mdx b/website/content/commands/logout.mdx index 2084565cc..64065896a 100644 --- a/website/content/commands/logout.mdx +++ b/website/content/commands/logout.mdx @@ -15,6 +15,14 @@ Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/logout](https://www.consul.io The `logout` command will destroy the provided token if it was created from `consul login`. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `none` | + ## Usage Usage: `consul logout [options]` diff --git a/website/content/commands/maint.mdx b/website/content/commands/maint.mdx index e1c5b0654..21a673ae1 100644 --- a/website/content/commands/maint.mdx +++ b/website/content/commands/maint.mdx @@ -21,6 +21,14 @@ Under the hood, maintenance mode is activated by registering a health check in critical status against a service, and deactivated by deregistering the health check. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `node:write` | + ## Usage Usage: `consul maint [options]` diff --git a/website/content/commands/members.mdx b/website/content/commands/members.mdx index 3c37e1e2f..fece24893 100644 --- a/website/content/commands/members.mdx +++ b/website/content/commands/members.mdx @@ -21,6 +21,14 @@ Nodes in the "failed" state are still listed because Consul attempts to reconnect with failed nodes for a certain amount of time in the case that the failure is actually just a network partition. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `node:read` | + ## Usage Usage: `consul members [options]` diff --git a/website/content/commands/namespace/create.mdx b/website/content/commands/namespace/create.mdx index af8c3bbbd..9f423685d 100644 --- a/website/content/commands/namespace/create.mdx +++ b/website/content/commands/namespace/create.mdx @@ -14,6 +14,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace](https://www.consul.io/a This `namespace create` command creates a namespaces using the CLI parameters provided. This was added in Consul Enterprise 1.7.2. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + ## Usage Usage: `consul namespace create -name [options]` diff --git a/website/content/commands/namespace/delete.mdx b/website/content/commands/namespace/delete.mdx index d9f0f2499..bb1d3c986 100644 --- a/website/content/commands/namespace/delete.mdx +++ b/website/content/commands/namespace/delete.mdx @@ -14,6 +14,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/namespace/:name](https://www.co This `namespace delete` command deletes a namespace. This was added in Consul Enterprise 1.7.0. If ACLs are enabled then this command will require a token with `operator:write` privileges. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + ## Usage Usage: `consul namespace delete ` diff --git a/website/content/commands/namespace/list.mdx b/website/content/commands/namespace/list.mdx index 0f2254725..c27596982 100644 --- a/website/content/commands/namespace/list.mdx +++ b/website/content/commands/namespace/list.mdx @@ -16,6 +16,14 @@ ACLs are enabled then this command will require a token with `operator:read` pri within the target namespaces. The results will be filtered based on the ACL token and therefore it is possible to see a partial list. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------------------------------- | +| `operator:read` or `namespace:* read` | + ## Usage Usage: `consul namespace list` diff --git a/website/content/commands/namespace/read.mdx b/website/content/commands/namespace/read.mdx index 54d5956b7..1d16783ef 100644 --- a/website/content/commands/namespace/read.mdx +++ b/website/content/commands/namespace/read.mdx @@ -15,6 +15,14 @@ This `namespace read` command reads a namespaces configuration. This was added i ACLs are enabled then this command will require a token with `operator:read` privileges or any `read` privileges within the target namespace. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------------------------------- | +| `operator:read` or `namespace:* read` | + ## Usage Usage: `consul namespace read ` diff --git a/website/content/commands/namespace/update.mdx b/website/content/commands/namespace/update.mdx index 5cd952a38..1b260e099 100644 --- a/website/content/commands/namespace/update.mdx +++ b/website/content/commands/namespace/update.mdx @@ -14,6 +14,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](https://www.consu This `namespace update` command updates a namespaces using the CLI parameters provided. This was added in Consul Enterprise 1.7.2. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + ## Usage Usage: `consul namespace update -name [options]` diff --git a/website/content/commands/operator/area.mdx b/website/content/commands/operator/area.mdx index 0597ef986..63c34b922 100644 --- a/website/content/commands/operator/area.mdx +++ b/website/content/commands/operator/area.mdx @@ -51,6 +51,14 @@ Corresponding HTTP API Endpoint: [\[POST\] /v1/operator/area](https://www.consul This command creates a new network area. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul operator area create [options]` #### API Options @@ -85,6 +93,14 @@ Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/area/:uuid](https://ww This command deletes an existing network area. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul operator area delete [options]` #### API Options @@ -116,6 +132,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid/join](https:// This command joins Consul servers into an existing network area by address, such as an IP or hostname with an optional port. Multiple addresses may be given. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul operator area join [options] ADDRESSES` #### API Options @@ -152,6 +176,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area](https://www.consul. This command lists all network areas. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| --------------- | +| `operator:read` | + Usage: `consul operator area list [options]` #### API Options @@ -183,6 +215,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area/:uuid/members](https This command displays Consul server nodes present in a network area, or all areas if no area is specified. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| --------------- | +| `operator:read` | + Usage: `consul operator area members [options]` #### API Options @@ -239,6 +279,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid](https://www.c This command updates the configuration of network area. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul operator area update [options]` #### API Options diff --git a/website/content/commands/operator/autopilot.mdx b/website/content/commands/operator/autopilot.mdx index 24fa2a1db..4d42af62b 100644 --- a/website/content/commands/operator/autopilot.mdx +++ b/website/content/commands/operator/autopilot.mdx @@ -32,6 +32,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/configuration]( This command displays the current autopilot configuration. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| --------------- | +| `operator:read` | + Usage: `consul operator autopilot get-config [options]` #### API Options @@ -59,6 +67,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/autopilot/configuration]( Modifies the current Autopilot configuration. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul operator autopilot set-config [options]` #### API Options @@ -109,6 +125,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/state](https:// This command displays the current autopilot state. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| --------------- | +| `operator:read` | + Usage: `consul operator autopilot state [options]` #### API Options diff --git a/website/content/commands/operator/raft.mdx b/website/content/commands/operator/raft.mdx index 7649261c6..1ecc6be79 100644 --- a/website/content/commands/operator/raft.mdx +++ b/website/content/commands/operator/raft.mdx @@ -33,6 +33,14 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/status/peers](https://www.consul.i This command displays the current Raft peer configuration. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `none` | + Usage: `consul operator raft list-peers -stale=[true|false]` - `-stale` - Optional and defaults to "false" which means the leader provides @@ -77,6 +85,14 @@ clean up by simply running [`consul force-leave`](/commands/force-leave) instead of this command. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + Usage: `consul operator raft remove-peer -address="IP:port"` - `-address` - "IP:port" for the server to remove. The port number is usually diff --git a/website/content/commands/reload.mdx b/website/content/commands/reload.mdx index 01f68991e..86030a47b 100644 --- a/website/content/commands/reload.mdx +++ b/website/content/commands/reload.mdx @@ -25,6 +25,14 @@ Not all configuration options are reloadable. See the [Reloadable Configuration](/docs/agent/options#reloadable-configuration) section on the agent options page for details on which options are supported. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------- | +| `agent:write` | + ## Usage Usage: `consul reload` diff --git a/website/content/commands/rtt.mdx b/website/content/commands/rtt.mdx index f6622edf0..764157f66 100644 --- a/website/content/commands/rtt.mdx +++ b/website/content/commands/rtt.mdx @@ -17,6 +17,14 @@ Consul's network coordinate model of the cluster. See the [Network Coordinates](/docs/internals/coordinates) internals guide for more information on how these coordinates are computed. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `node:read` | + ## Usage Usage: `consul rtt [options] node1 [node2]` diff --git a/website/content/commands/services/deregister.mdx b/website/content/commands/services/deregister.mdx index 2799531da..12e597e0f 100644 --- a/website/content/commands/services/deregister.mdx +++ b/website/content/commands/services/deregister.mdx @@ -20,6 +20,14 @@ registered with a configuration file, then deleting that file and deregister. See [Service Definition](/docs/agent/services) for more information about registering services generally. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| --------------- | +| `service:write` | + ## Usage Usage: `consul services deregister [options] [FILE...]` diff --git a/website/content/commands/services/register.mdx b/website/content/commands/services/register.mdx index 195baae52..cea34bdfb 100644 --- a/website/content/commands/services/register.mdx +++ b/website/content/commands/services/register.mdx @@ -22,6 +22,14 @@ configuration management systems that other systems that have access to the configuration directory. Clients may also use the [HTTP API](/api/agent/service) directly. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| --------------- | +| `service:write` | + ## Usage Usage: `consul services register [options] [FILE...]` diff --git a/website/content/commands/snapshot/restore.mdx b/website/content/commands/snapshot/restore.mdx index 5da2b11ac..06243b0e0 100644 --- a/website/content/commands/snapshot/restore.mdx +++ b/website/content/commands/snapshot/restore.mdx @@ -19,8 +19,13 @@ designed to handle server failures during a restore. This command is primarily intended to be used when recovering from a disaster, restoring into a fresh cluster of Consul servers. -If ACLs are enabled, a management token must be supplied in order to perform -a snapshot restore. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `management` | ## Usage diff --git a/website/content/commands/snapshot/save.mdx b/website/content/commands/snapshot/save.mdx index 71c7cb1ee..2f177aa60 100644 --- a/website/content/commands/snapshot/save.mdx +++ b/website/content/commands/snapshot/save.mdx @@ -27,6 +27,14 @@ the CLI client attempting to perform a snapshot save will have no effect. It _mu the context of the server process. If you're using Systemd to manage your Consul server processes, then adding `Environment=TMPDIR=/path/to/dir` to your Consul unit file will work. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `management` | + ## Usage Usage: `consul snapshot save [options] FILE` From db29a926dabd61876cdb7da885116c297595583a Mon Sep 17 00:00:00 2001 From: Amier Chery <92801461+Amier3@users.noreply.github.com> Date: Mon, 10 Jan 2022 17:15:33 -0500 Subject: [PATCH 159/404] Create options.mdx Adding a small little note to the top of the 'command line options' section of this page following community feedback in #10628 --- website/content/docs/agent/options.mdx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 06d340ccf..78149a43f 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -54,6 +54,8 @@ information. ## Command-line Options ((#commandline_options)) +-> **Note:** Some CLI arguments may be different from HCL keys. See [Configuration Key Reference](#config_key_reference) for equivalent HCL Keys. + The options below are all specified on the command-line. - `-advertise` ((#\_advertise)) - The advertise address is used to change @@ -566,7 +568,7 @@ definitions support being updated during a reload. } ``` -#### Configuration Key Reference +#### Configuration Key Reference ((#config_key_reference)) -> **Note:** All the TTL values described below are parsed by Go's `time` package, and have the following [formatting specification](https://golang.org/pkg/time/#ParseDuration): "A From 9e788fbd47198b6fe7737b8df5d707990e6b23aa Mon Sep 17 00:00:00 2001 From: Matt Keeler Date: Mon, 10 Jan 2022 17:18:40 -0500 Subject: [PATCH 160/404] Document Consul enterprise 1.10.0-1.10.4 forwards incompatibility with 1.11 (#11978) Also fixed a broken link in the 1.10.x upgrade instructions. Co-authored-by: mrspanishviking --- .../docs/upgrading/instructions/upgrade-to-1-10-x.mdx | 2 +- website/content/docs/upgrading/upgrade-specific.mdx | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx index 73e10eabf..e55fe05c4 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx @@ -14,7 +14,7 @@ description: >- This guide explains how to best upgrade a single Consul Enterprise datacenter to v1.10.0 from a version of Consul that is forward compatible with v1.10. If you are on a major -version of Consul prior to 1.8, you will need to complete and [upgrade to 1.8.13](/docs/upgrading/instructions) +version of Consul prior to 1.8, you will need to complete and [upgrade to 1.8.13](/docs/upgrading/instructions/upgrade-to-1-8-x) or higher before continuing with this guide. If you are already on a major version of 1.8 or 1.9, then this guide will go over the procedures required for upgrading to v1.10. This process will require intermediate version upgrades to a forward-compatible release of v1.8 or v1.9, diff --git a/website/content/docs/upgrading/upgrade-specific.mdx b/website/content/docs/upgrading/upgrade-specific.mdx index b14ce1d92..757c1d73f 100644 --- a/website/content/docs/upgrading/upgrade-specific.mdx +++ b/website/content/docs/upgrading/upgrade-specific.mdx @@ -16,6 +16,13 @@ upgrade flow. ## Consul 1.11.0 +### 1.10 Compatibility +Consul Enterprise versions 1.10.0 through 1.10.4 contain a latent bug that +causes those client or server agents to deregister their own services or health +checks when some of the servers have been upgraded to 1.11. Before upgrading Consul Enterprise servers to 1.11, all Consul agents should first +be upgraded to 1.10.6 or higher to ensure forward compatibility and prevent +flapping of catalog registrations. + ### Deprecated Agent Config Options Consul 1.11.0 is compiled with Go 1.17 and now the ordering of From e62ec3783e2df7c85e3c9ae0cf97244f887c1a9a Mon Sep 17 00:00:00 2001 From: Sujata Roy <61177855+20sr20@users.noreply.github.com> Date: Mon, 10 Jan 2022 14:57:14 -0800 Subject: [PATCH 161/404] Update website/content/docs/agent/telemetry.mdx Co-authored-by: mrspanishviking --- website/content/docs/agent/telemetry.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/agent/telemetry.mdx b/website/content/docs/agent/telemetry.mdx index 307adffff..076c21105 100644 --- a/website/content/docs/agent/telemetry.mdx +++ b/website/content/docs/agent/telemetry.mdx @@ -398,7 +398,7 @@ These metrics are used to monitor the health of the Consul servers. | `consul.raft.state.leader` | 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.follower` | Counts the number of times an agent has entered the follower mode. This happens when a new agent joins the cluster or after the end of a leader election. | follower state entered / interval | counter | | `consul.raft.transition.heartbeat_timeout` | The number of times an agent has transitioned to the Candidate state, after receive no heartbeat messages from the last known leader. | timeouts / interval | counter | -| `consul.raft.verify_leader` | This metric doesn't have direct correlation to the leader change. It just counts the number of times an agent checks whether it is still the leader or not. For example, during every consistent read, the check is done. So, depending on the load in the system, this metric can be high as it is incremented each time a consistent read is done. | checks / interval | Counter | +| `consul.raft.verify_leader` | This metric doesn't have a direct correlation to the leader change. It just counts the number of times an agent checks if it is still the leader or not. For example, during every consistent read, the check is done. Depending on the load in the system, this metric count can be high as it is incremented each time a consistent read is completed. | checks / interval | Counter | | `consul.rpc.accept_conn` | Increments when a server accepts an RPC connection. | connections | counter | | `consul.catalog.register` | Measures the time it takes to complete a catalog register operation. | ms | timer | | `consul.catalog.deregister` | Measures the time it takes to complete a catalog deregister operation. | ms | timer | From 6c230ff458ce28f9e9d4a5388530c8cf78af4048 Mon Sep 17 00:00:00 2001 From: Amier Chery Date: Mon, 10 Jan 2022 18:14:24 -0500 Subject: [PATCH 162/404] Added images to respective pages Added the images to each respective page on splitting/routing/resolving along with a brief description on how to navigate there. --- .../docs/connect/config-entries/service-resolver.mdx | 6 ++++++ .../content/docs/connect/config-entries/service-router.mdx | 7 +++++++ .../docs/connect/config-entries/service-splitter.mdx | 6 ++++++ 3 files changed, 19 insertions(+) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index 6afe1265e..9ca83fad9 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -23,6 +23,12 @@ and discovery terminates. - Service resolver config entries are a component of [L7 Traffic Management](/docs/connect/l7-traffic-management). +## UI + +Once a `service-resolver` is succesfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab + +![screenshot of service resolver in the UI](/img/l7-routing/Resolver.png) + ## Sample Config Entries ### Filter on service version diff --git a/website/content/docs/connect/config-entries/service-router.mdx b/website/content/docs/connect/config-entries/service-router.mdx index 3e02f1601..fbd840b4f 100644 --- a/website/content/docs/connect/config-entries/service-router.mdx +++ b/website/content/docs/connect/config-entries/service-router.mdx @@ -36,6 +36,13 @@ service of the same name. to any configured [`service-resolver`](/docs/connect/config-entries/service-resolver). +## UI + + +Once a `service-router` is succesfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab + +![screenshot of service router in the UI](/img/l7-routing/Router.png) + ## Sample Config Entries ### Path prefix matching diff --git a/website/content/docs/connect/config-entries/service-splitter.mdx b/website/content/docs/connect/config-entries/service-splitter.mdx index f6eb62ddf..f0029665d 100644 --- a/website/content/docs/connect/config-entries/service-splitter.mdx +++ b/website/content/docs/connect/config-entries/service-splitter.mdx @@ -39,6 +39,12 @@ resolution stage. to any configured [`service-resolver`](/docs/connect/config-entries/service-resolver). +## UI + +Once a `service-splitter` is succesfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab + +![screenshot of service splitter in the UI](/img/l7-routing/Splitter.png) + ## Sample Config Entries ### Two subsets of same service From cc8eafbf5ee2ffa0dd82a39c5f1f63a94b66e31d Mon Sep 17 00:00:00 2001 From: Preetha <460133+preetapan@users.noreply.github.com> Date: Mon, 10 Jan 2022 17:19:39 -0600 Subject: [PATCH 163/404] Updated health check docs page with HCL examples (#12000) All healthcheck JSON examples now have HCL equivalents. --- website/content/docs/discovery/checks.mdx | 204 ++++++++++++++++++++++ 1 file changed, 204 insertions(+) diff --git a/website/content/docs/discovery/checks.mdx b/website/content/docs/discovery/checks.mdx index d9a6986d3..02ef1c284 100644 --- a/website/content/docs/discovery/checks.mdx +++ b/website/content/docs/discovery/checks.mdx @@ -142,6 +142,19 @@ There are several different kinds of checks: A script check: + + +```hcl +check = { + id = "mem-util" + name = "Memory utilization" + args = ["/usr/local/bin/check_mem.py", "-limit", "256MB"] + interval = "10s" + timeout = "1s" +} + +``` + ```json { "check": { @@ -154,8 +167,29 @@ A script check: } ``` + + A HTTP check: + + +```hcl +check = { + id = "api" + name = "HTTP API on port 5000" + http = "https://localhost:5000/health" + tls_server_name = "" + tls_skip_verify = false + method = "POST" + header = { + Content-Type = ["application/json"] + } + body = "{\"method\":\"health\"}" + interval = "10s" + timeout = "1s" +} +``` + ```json { "check": { @@ -173,8 +207,23 @@ A HTTP check: } ``` + + A TCP check: + + +```hcl +check = { + id = "ssh" + name = "SSH TCP on port 22" + tcp = "localhost:22" + interval = "10s" + timeout = "1s" +} + +``` + ```json { "check": { @@ -187,8 +236,21 @@ A TCP check: } ``` + + A TTL check: + + +```hcl +check = { + id = "web-app" + name = "Web App Status" + notes = "Web app does a curl internally every 10 seconds" + ttl = "30s" +} +``` + ```json { "check": { @@ -200,8 +262,23 @@ A TTL check: } ``` + + A Docker check: + + +```hcl +check = { + id = "mem-util" + name = "Memory utilization" + docker_container_id = "f972c95ebf0e" + shell = "/bin/bash" + args = ["/usr/local/bin/check_mem.py"] + interval = "10s" +} +``` + ```json { "check": { @@ -215,8 +292,22 @@ A Docker check: } ``` + + A gRPC check for the whole application: + + +```hcl +check = { + id = "mem-util" + name = "Service health status" + grpc = "127.0.0.1:12345" + grpc_use_tls = true + interval = "10s" +} +``` + ```json { "check": { @@ -229,8 +320,22 @@ A gRPC check for the whole application: } ``` + + A gRPC check for the specific `my_service` service: + + +```hcl +check = { + id = "mem-util" + name = "Service health status" + grpc = "127.0.0.1:12345/my_service" + grpc_use_tls = true + interval = "10s" +} +``` + ```json { "check": { @@ -243,8 +348,22 @@ A gRPC check for the specific `my_service` service: } ``` + + A h2ping check: + + +```hcl +check = { + id = "h2ping-check" + name = "h2ping" + h2ping = "localhost:22222" + interval = "10s" + h2ping_use_tls = false +} +``` + ```json { "check": { @@ -257,8 +376,19 @@ A h2ping check: } ``` + + An alias check for a local service: + + +```hcl +check = { + id = "web-alias" + alias_service = "web" +} +``` + ```json { "check": { @@ -268,6 +398,8 @@ An alias check for a local service: } ``` + + ~> Configuration info: The alias check configuration expects the alias to be registered on the same agent as the one you are aliasing. If the service is not registered with the same agent, `"alias_node": ""` must also be @@ -342,6 +474,17 @@ to be healthy. In certain cases, it may be desirable to specify the initial state of a health check. This can be done by specifying the `status` field in a health check definition, like so: + + +```hcl +check = { + "id": "mem", + "args": ["/bin/check_mem", "-limit", "256MB"] + "interval": "10s" + "status": "passing" +} +``` + ```json { "check": { @@ -353,6 +496,8 @@ health check definition, like so: } ``` + + The above service definition would cause the new "mem" check to be registered with its initial state set to "passing". @@ -363,6 +508,17 @@ that the status of the health check will only affect the health status of the given service instead of the entire node. Service-bound health checks may be provided by adding a `service_id` field to a check configuration: + + +```hcl +check = { + id = "web-app" + name = "Web App Status" + service_id = "web-app" + ttl = "30s" +} +``` + ```json { "check": { @@ -374,6 +530,8 @@ provided by adding a `service_id` field to a check configuration: } ``` + + In the above configuration, if the web-app health check begins failing, it will only affect the availability of the web-app service. All other services provided by the node will remain unchanged. @@ -389,6 +547,32 @@ to use the agent's credentials when configured for TLS. Multiple check definitions can be defined using the `checks` (plural) key in your configuration file. + + +```hcl +checks = [ + { + id = "chk1" + name = "mem" + args = ["/bin/check_mem", "-limit", "256MB"] + interval = "5s" + }, + { + id = "chk2" + name = "/health" + http = "http://localhost:5000/health" + interval = "15s" + }, + { + id = "chk3" + name = "cpu" + args = ["/bin/check_cpu"] + interval = "10s" + }, + ... +] +``` + ```json { "checks": [ @@ -415,6 +599,8 @@ key in your configuration file. } ``` + + ## Success/Failures before passing/warning/critical To prevent flapping health checks, and limit the load they cause on the cluster, @@ -436,6 +622,22 @@ This feature is available for HTTP, TCP, gRPC, Docker & Monitor checks. By default, both passing and critical thresholds will be set to 0 so the check status will always reflect the last check result. + + +```hcl +checks = [ + { + name = "HTTP TCP on port 80" + tcp = "localhost:80" + interval = "10s" + timeout = "1s" + success_before_passing = 3 + failures_before_warning = 1 + failures_before_critical = 3 + } +] +``` + ```json { "checks": [ @@ -451,3 +653,5 @@ status will always reflect the last check result. ] } ``` + + From ac0205bbbf0985a97905e0df7915d55b7f33929a Mon Sep 17 00:00:00 2001 From: Xuan Luo Date: Mon, 10 Jan 2022 15:30:01 -0800 Subject: [PATCH 164/404] docs: added gateway overview illustration --- .../svgs/consul_gateway_overview.svg | 321 ++++++++++++++++++ 1 file changed, 321 insertions(+) create mode 100644 website/public/img/consul-connect/svgs/consul_gateway_overview.svg diff --git a/website/public/img/consul-connect/svgs/consul_gateway_overview.svg b/website/public/img/consul-connect/svgs/consul_gateway_overview.svg new file mode 100644 index 000000000..f0d4f868c --- /dev/null +++ b/website/public/img/consul-connect/svgs/consul_gateway_overview.svg @@ -0,0 +1,321 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From c20694d4532a31ffbd47d1ec56016a27dad0f559 Mon Sep 17 00:00:00 2001 From: Neena Pemmaraju Date: Mon, 10 Jan 2022 15:37:36 -0800 Subject: [PATCH 165/404] docs: updated the description of min_quorum --- website/content/docs/agent/options.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 78149a43f..e7526d008 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -919,7 +919,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." unhealthy. Defaults to 250. - `min_quorum` - Sets the minimum number of servers necessary - in a cluster before autopilot can prune dead servers. There is no default. + in a cluster. Autopilot will stop pruning dead servers when this minimum is reached. There is no default. - `server_stabilization_time` - Controls the minimum amount of time a server must be stable in the 'healthy' state before From af77cb65f97b8729e710586e71a24fd8ddab2d2a Mon Sep 17 00:00:00 2001 From: Jake Herschman Date: Mon, 10 Jan 2022 18:37:51 -0500 Subject: [PATCH 166/404] updated topology image --- website/content/docs/k8s/connect/observability/metrics.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/connect/observability/metrics.mdx b/website/content/docs/k8s/connect/observability/metrics.mdx index de4ae3e9e..e4492c80c 100644 --- a/website/content/docs/k8s/connect/observability/metrics.mdx +++ b/website/content/docs/k8s/connect/observability/metrics.mdx @@ -112,7 +112,7 @@ Consul’s built-in UI has a topology visualization for services part of the Con The diagram below illustrates how the UI displays service metrics for a sample application: -[![UI Topology View](/img/ui-topology.png)](/img/ui-topology.png) +[![UI Topology View](/img/ui-service-topology-view-hover.png)](/img/ui-service-topology-view-hover.png) The topology view is configured under `ui.metrics`. This will enable the Consul UI to query the provider specified by `ui.metrics.provider` at the URL of the Prometheus server `ui.metrics.baseURL` to display sidecar proxy metrics for the From 52ef50b1da328f68b851c0879653286bc731fca3 Mon Sep 17 00:00:00 2001 From: Jake Herschman Date: Mon, 10 Jan 2022 18:38:41 -0500 Subject: [PATCH 167/404] updated datacenter dropdown image --- .../content/docs/k8s/installation/multi-cluster/kubernetes.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx b/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx index acf96338a..c48166623 100644 --- a/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx @@ -441,7 +441,7 @@ to retrieve the bootstrap token mentioned in the UI documentation. With the UI open, you'll be able to switch between datacenters via the dropdown in the top left: -![Consul Datacenter Dropdown](/img/consul-datacenter-dropdown.png 'Consul Datacenter Dropdown') +![Consul Datacenter Dropdown](/img/data-center-dropdown.png 'Consul Datacenter Dropdown') ## Next Steps From 5469bcd6d18bc5215083a928ded998db7aa15333 Mon Sep 17 00:00:00 2001 From: Jake Herschman Date: Mon, 10 Jan 2022 18:39:35 -0500 Subject: [PATCH 168/404] updated topology image --- website/content/docs/connect/observability/ui-visualization.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/connect/observability/ui-visualization.mdx b/website/content/docs/connect/observability/ui-visualization.mdx index e21631a48..2102846a0 100644 --- a/website/content/docs/connect/observability/ui-visualization.mdx +++ b/website/content/docs/connect/observability/ui-visualization.mdx @@ -27,7 +27,7 @@ URLs](#configuring-dashboard-urls). It is possible to configure the UI to fetch basic metrics from your metrics provider storage to augment the visualization as displayed below. -![Consul UI Service Mesh Visualization](/img/ui-service-topology-view.png) +![Consul UI Service Mesh Visualization](/img/ui-service-topology-view-hover.png) Consul has built-in support for overlaying metrics from a [Prometheus](https://prometheus.io) backend. Alternative metrics providers may From e30e0a075cd99512f9adc3d64863855db961a5af Mon Sep 17 00:00:00 2001 From: Luke Kysow <1034429+lkysow@users.noreply.github.com> Date: Mon, 10 Jan 2022 15:43:31 -0800 Subject: [PATCH 169/404] Add distributed tracing docs (#12010) * Add distributed tracing docs --- .../docs/connect/distributed-tracing.mdx | 240 ++++++++++++++++++ website/data/docs-nav-data.json | 4 + 2 files changed, 244 insertions(+) create mode 100644 website/content/docs/connect/distributed-tracing.mdx diff --git a/website/content/docs/connect/distributed-tracing.mdx b/website/content/docs/connect/distributed-tracing.mdx new file mode 100644 index 000000000..cabdf92b3 --- /dev/null +++ b/website/content/docs/connect/distributed-tracing.mdx @@ -0,0 +1,240 @@ +--- +layout: docs +page_title: Distributed Tracing +description: >- + Distributed tracing is a way to track and correlate requests across microservices. +--- + +# Distributed Tracing + +Distributed tracing is a way to track and correlate requests across microservices. Distributed tracing must first +be implemented in each application, it cannot be added by Consul. Once implemented in your applications, adding +distributed tracing to Consul will add the sidecar proxies as spans in the request path. + +## Application Changes + +Consul alone cannot implement distributed tracing for your applications. Each application must propagate the required +headers. Typically this is done using a tracing library such as: + +- https://github.com/opentracing/opentracing-go +- https://github.com/DataDog/dd-trace-go +- https://github.com/openzipkin/zipkin-go + +## Configuration + +Once your applications have been instrumented with a tracing library, you are ready to configure Consul to add sidecar +proxy spans to the trace. Your eventual config will look something like: + + + +```hcl +Kind = "proxy-defaults" +Name = "global" +Config { + protocol = "http" + envoy_tracing_json = < + +-> **NOTE:** This example uses a [proxy defaults](/docs/connect/config-entries/proxy-defaults) config entry which will apply to all proxies +but you can also apply this config in the +[proxy service registration](/docs/connect/registration/service-registration#proxy-parameters) (not supported on Kubernetes). + +Within the config there are two keys you need to customize: + +1. [`envoy_tracing_json`](/docs/connect/proxies/envoy#envoy_tracing_json): Sets the tracing configuration for your specific tracing type. + See the [Envoy tracers documentation](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/trace/trace) for your + specific collector's configuration. This configuration will reference the cluster name defined in `envoy_extra_static_clusters_json`. +1. [`envoy_extra_static_clusters_json`](/docs/connect/proxies/envoy#envoy_extra_static_clusters_json): Defines the address + of your tracing collector where Envoy will send its spans. In this example the URL was `collector-url:9411`. + +## Applying the configuration + +This configuration only applies when proxies are _restarted_ since it changes the _bootstrap_ config for Envoy +which can only be applied on startup. This means you must restart all your proxies for changes to this +config to take effect. + +-> **Note:** On Kubernetes this is a matter of restarting your deployments, e.g. `kubectl rollout restart deploy/deploy-name`. + +## Considerations + +1. Distributed tracing is only supported for HTTP and gRPC services. You must specify the protocol either globally + via a proxy defaults config entry: + + + + ```hcl + Kind = "proxy-defaults" + Name = "global" + Config { + protocol = "http" + } + ``` + + ```yaml + apiVersion: consul.hashicorp.com/v1alpha1 + kind: ProxyDefaults + metadata: + name: global + spec: + config: + protocol: http + ``` + + ```json + { + "Kind": "proxy-defaults", + "Name": "global", + "Config": { + "protocol": "http" + } + } + ``` + + + + Or via a service defaults config entry for each service: + + + + ```hcl + Kind = "service-defaults" + Name = "service-name" + Protocol = "http" + ``` + + ```yaml + apiVersion: consul.hashicorp.com/v1alpha1 + kind: ProxyDefaults + metadata: + name: service-name + spec: + protocol: http + ``` + + ```json + { + "Kind": "service-defaults", + "Name": "service-name", + "Protocol": "http" + } + ``` + + + +1. Requests through [Ingress Gateways](/docs/connect/gateways/ingress-gateway) will not be traced unless the header + `x-client-trace-id: 1` is set (see [hashicorp/consul#6645](https://github.com/hashicorp/consul/issues/6645)). + +1. Consul does not currently support interoperation with [OpenTelemetry](https://opentelemetry.io/) libraries due to + Envoy not yet having support. + +1. Tracing is only supported with Envoy proxies, not the built-in proxy. diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 77a5ef1ff..fcfe7f907 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -269,6 +269,10 @@ "title": "Connectivity Tasks", "path": "connect/connectivity-tasks" }, + { + "title": "Distributed Tracing", + "path": "connect/distributed-tracing" + }, { "title": "Gateways", "routes": [ From edb95ce99c823bd8378feed9bf8b60d8f76835c6 Mon Sep 17 00:00:00 2001 From: Xuan Luo Date: Mon, 10 Jan 2022 15:47:57 -0800 Subject: [PATCH 170/404] docs: add gateway overview illustration --- website/content/docs/connect/gateways/index.mdx | 12 +++++++----- .../consul-connect/svgs/consul_gateway_overview.svg | 12 ++++++------ 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/website/content/docs/connect/gateways/index.mdx b/website/content/docs/connect/gateways/index.mdx index dafdcb092..b08bd4dca 100644 --- a/website/content/docs/connect/gateways/index.mdx +++ b/website/content/docs/connect/gateways/index.mdx @@ -13,21 +13,23 @@ This topic provides an overview of the gateway features shipped with Consul. Gat - [Ingress gateways](#ingress-gateways) enable services to accept traffic from outside the Consul service mesh. - [Terminating gateways](#terminating-gateways) enable you to route traffic from services in the Consul service mesh to external services. +![Gateway Architecture](/img/consul-connect/svgs/consul_gateway_overview.svg) + ## Mesh Gateways -> **1.6.0+:** This feature is available in Consul versions 1.6.0 and newer. Mesh gateways enable service mesh traffic to be routed between different Consul datacenters and admin partitions. The datacenters or partitions can reside in different clouds or runtime environments where general interconnectivity between all services in all datacenters -isn't feasible. +isn't feasible. They operate by sniffing and extracting the server name indication (SNI) header from the service mesh session and routing the connection to the appropriate destination based on the server name requested. The gateway does not decrypt the data within the mTLS session. -Mesh gateways enable the following scenarios: +Mesh gateways enable the following scenarios: -* **Federate multiple datacenters across a WAN**. Since Consul 1.8.0, mesh gateways can forward gossip and RPC traffic between Consul servers. See [WAN federation via mesh gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways) for additional information. -* **Service-to-service communication across datacenters**. Refer to [Enabling Service-to-service Traffic Accross Datacenters](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) for additional information. -* **Service-to-service communication across admin partitions**. Since Consul 1.11.0, you can create administrative boundaries for single Consul deployements called "admin partitions". You can use mesh gateways to facilitate cross-partition communication. Refer to [Enabling Service-to-service Traffic Accross Admin Partitions](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions) for additional information. +- **Federate multiple datacenters across a WAN**. Since Consul 1.8.0, mesh gateways can forward gossip and RPC traffic between Consul servers. See [WAN federation via mesh gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways) for additional information. +- **Service-to-service communication across datacenters**. Refer to [Enabling Service-to-service Traffic Accross Datacenters](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) for additional information. +- **Service-to-service communication across admin partitions**. Since Consul 1.11.0, you can create administrative boundaries for single Consul deployements called "admin partitions". You can use mesh gateways to facilitate cross-partition communication. Refer to [Enabling Service-to-service Traffic Accross Admin Partitions](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions) for additional information. -> **Mesh gateway tutorial**: Follow the [mesh gateway tutorial](https://learn.hashicorp.com/tutorials/consul/service-mesh-gateways) to learn concepts associated with mesh gateways. diff --git a/website/public/img/consul-connect/svgs/consul_gateway_overview.svg b/website/public/img/consul-connect/svgs/consul_gateway_overview.svg index f0d4f868c..f6db90f66 100644 --- a/website/public/img/consul-connect/svgs/consul_gateway_overview.svg +++ b/website/public/img/consul-connect/svgs/consul_gateway_overview.svg @@ -106,16 +106,16 @@ - - - + + + - - - + + + From a93ba20343306cdd3bce4b503cceec9f564df7d5 Mon Sep 17 00:00:00 2001 From: Jake Herschman Date: Mon, 10 Jan 2022 19:01:42 -0500 Subject: [PATCH 171/404] Updated Consul UI Screenshots --- website/public/img/data-center-dropdown.png | 3 +++ website/public/img/ui-service-topology-view-hover.png | 3 +++ 2 files changed, 6 insertions(+) create mode 100644 website/public/img/data-center-dropdown.png create mode 100644 website/public/img/ui-service-topology-view-hover.png diff --git a/website/public/img/data-center-dropdown.png b/website/public/img/data-center-dropdown.png new file mode 100644 index 000000000..794405cc0 --- /dev/null +++ b/website/public/img/data-center-dropdown.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05f2db83f1740578f5bef8a76bd5c7455bd51d7351e97bb41310a11e0b150e8d +size 114160 diff --git a/website/public/img/ui-service-topology-view-hover.png b/website/public/img/ui-service-topology-view-hover.png new file mode 100644 index 000000000..30ac20493 --- /dev/null +++ b/website/public/img/ui-service-topology-view-hover.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47f31c0ddd3b6e67fdce032d63acdd2b153351919349ef12e6b1c8afe5ef2b4c +size 153498 From 0925fba88177b0f83661cd30b6f858b2ed8882f4 Mon Sep 17 00:00:00 2001 From: Jake Herschman Date: Mon, 10 Jan 2022 19:08:16 -0500 Subject: [PATCH 172/404] fixed duplicated image path --- website/content/docs/k8s/connect/observability/metrics.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/connect/observability/metrics.mdx b/website/content/docs/k8s/connect/observability/metrics.mdx index e4492c80c..349cd3f49 100644 --- a/website/content/docs/k8s/connect/observability/metrics.mdx +++ b/website/content/docs/k8s/connect/observability/metrics.mdx @@ -112,7 +112,7 @@ Consul’s built-in UI has a topology visualization for services part of the Con The diagram below illustrates how the UI displays service metrics for a sample application: -[![UI Topology View](/img/ui-service-topology-view-hover.png)](/img/ui-service-topology-view-hover.png) +![UI Topology View](/img/ui-service-topology-view-hover.png) The topology view is configured under `ui.metrics`. This will enable the Consul UI to query the provider specified by `ui.metrics.provider` at the URL of the Prometheus server `ui.metrics.baseURL` to display sidecar proxy metrics for the From 3ae25bfb58353b8a443d223780e56a04e9922280 Mon Sep 17 00:00:00 2001 From: Xuan Luo Date: Mon, 10 Jan 2022 16:29:32 -0800 Subject: [PATCH 173/404] updated image --- .../content/docs/connect/gateways/index.mdx | 2 +- .../svgs/consul_gateway_overview_wide.svg | 321 ++++++++++++++++++ 2 files changed, 322 insertions(+), 1 deletion(-) create mode 100644 website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg diff --git a/website/content/docs/connect/gateways/index.mdx b/website/content/docs/connect/gateways/index.mdx index b08bd4dca..b12c100b9 100644 --- a/website/content/docs/connect/gateways/index.mdx +++ b/website/content/docs/connect/gateways/index.mdx @@ -13,7 +13,7 @@ This topic provides an overview of the gateway features shipped with Consul. Gat - [Ingress gateways](#ingress-gateways) enable services to accept traffic from outside the Consul service mesh. - [Terminating gateways](#terminating-gateways) enable you to route traffic from services in the Consul service mesh to external services. -![Gateway Architecture](/img/consul-connect/svgs/consul_gateway_overview.svg) +[![Gateway Architecture](/img/consul-connect/svgs/consul_gateway_overview_wide.svg)](/img/consul-connect/svgs/consul_gateway_overview_wide.svg) ## Mesh Gateways diff --git a/website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg b/website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg new file mode 100644 index 000000000..308caa365 --- /dev/null +++ b/website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg @@ -0,0 +1,321 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From a4d2dc0ce2ac76f10a442a572f79e702343436eb Mon Sep 17 00:00:00 2001 From: Connor Date: Mon, 10 Jan 2022 20:10:25 -0600 Subject: [PATCH 174/404] Add go-sockaddr examples for multiple interfaces (#11998) * Add overview example for multiple interfaces with go-sockaddr * Include go-sockaddr examples in agent configuration * Add changelog entry * Make suggested changes * Simplify hcl comment * Update link and fix gRPC * Switch index.mdx from Tabs to CodeTabs * Reformat new links for screen readers * Apply suggestions from code review Co-authored-by: mrspanishviking * Fix spacing in code block Co-authored-by: mrspanishviking --- website/content/docs/agent/index.mdx | 83 +++++++++++++++++++------- website/content/docs/agent/options.mdx | 35 ++++++++++- 2 files changed, 95 insertions(+), 23 deletions(-) diff --git a/website/content/docs/agent/index.mdx b/website/content/docs/agent/index.mdx index 8e67dbca1..a19c1e312 100644 --- a/website/content/docs/agent/index.mdx +++ b/website/content/docs/agent/index.mdx @@ -193,11 +193,9 @@ The following settings are commonly used in the configuration file (also called The following example configuration is for a server agent named "`consul-server`". The server is [bootstrapped](/docs/agent/options#_bootstrap) and the Consul GUI is enabled. The reason this server agent is configured for a service mesh is that the `connect` configuration is enabled. Connect is Consul's service mesh component that provides service-to-service connection authorization and encryption using mutual Transport Layer Security (TLS). Applications can use sidecar proxies in a service mesh configuration to establish TLS connections for inbound and outbound connections without being aware of Connect at all. See [Connect](/docs/connect) for details. - - + ```hcl - node_name = "consul-server" server = true bootstrap = true @@ -215,8 +213,6 @@ connect { } ``` - - ```json { @@ -238,19 +234,16 @@ connect { } ``` - - + ### Server Node with Encryption Enabled The following example shows a server node configured with encryption enabled. Refer to the [Security](/docs/security) chapter for additional information about how to configure security options for Consul. - - + ```hcl - node_name = "consul-server" server = true ui_config { @@ -274,8 +267,6 @@ key_file = "/consul/config/certs/dc1-server-consul-0-key.pem" ``` - - ```json { @@ -299,19 +290,16 @@ key_file = "/consul/config/certs/dc1-server-consul-0-key.pem" } ``` - - +
    ### Client Node Registering a Service Using Consul as a central service registry is a common use case. The following example configuration includes common settings to register a service with a Consul agent and enable health checks (see [Checks](/docs/discovery/checks) to learn more about health checks): - - + ```hcl - node_name = "consul-client" server = false datacenter = "dc1" @@ -335,9 +323,6 @@ service { ``` - - - ```json { "node_name": "consul-client", @@ -363,8 +348,58 @@ service { } ``` - - + + +## Client Node with Multiple Interfaces or IP addresses + +The following example shows how to configure Consul to listen on multiple interfaces or IP addresses using a [go-sockaddr template]. + +The `bind_addr` is used for internal RPC and Serf communication ([read the Agent Configuration for more information](/docs/agent/options#bind_addr)). + +The `client_addr` configuration specifies IP addresses used for HTTP, HTTPS, DNS and gRPC servers. ([read the Agent Configuration for more information](/docs/agent/options#client_addr)). + + + +```hcl +node_name = "consul-server" +server = true +bootstrap = true +ui_config { + enabled = true +} +datacenter = "dc1" +data_dir = "consul/data" +log_level = "INFO" + +# used for internal RPC and Serf +bind_addr = "0.0.0.0" + +# Used for HTTP, HTTPS, DNS, and gRPC addresses. +# loopback is not included in GetPrivateInterfaces because it is not routable. +client_addr = "{{ GetPrivateInterfaces | exclude \"type\" \"ipv6\" | join \"address\" \" \" }} {{ GetAllInterfaces | include \"flags\" \"loopback\" | join \"address\" \" \" }}" + +# advertises gossip and RPC interface to other nodes +advertise_addr = "{{ GetInterfaceIP \"en0\" }}" +``` + +```json +{ + "node_name": "consul-server", + "server": true, + "bootstrap": true, + "ui_config": { + "enabled": true + }, + "datacenter": "dc1", + "data_dir": "consul/data", + "log_level": "INFO", + "bind_addr": "{{ GetPrivateIP }}", + "client_addr": "{{ GetPrivateInterfaces | exclude \"type\" \"ipv6\" | join \"address\" \" \" }} {{ GetAllInterfaces | include \"flags\" \"loopback\" | join \"address\" \" \" }}", + "advertise_addr": "{{ GetInterfaceIP \"en0\"}}" +} +``` + + ## Stopping an Agent @@ -402,3 +437,7 @@ from the load balancer pool. The [`skip_leave_on_interrupt`](/docs/agent/options#skip_leave_on_interrupt) and [`leave_on_terminate`](/docs/agent/options#leave_on_terminate) configuration options allow you to adjust this behavior. + + + +[go-sockaddr template]: https://godoc.org/github.com/hashicorp/go-sockaddr/template diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 78149a43f..33930d225 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -66,6 +66,15 @@ The options below are all specified on the command-line. state as other nodes will treat the non-routability as a failure. In Consul 1.1.0 and later this can be dynamically defined with a [go-sockaddr] template that is resolved at runtime. + + + ```shell + # Using a static network interface name + $ consul agent -advertise '{{ GetInterfaceIP "eth0" }}' + ``` + + + - `-advertise-wan` ((#\_advertise-wan)) - The advertise WAN address is used to change the address that we advertise to server nodes joining through the WAN. This can also be set on client agents when used in combination with the [`translate_wan_addrs`](#translate_wan_addrs) configuration option. By default, the [`-advertise`](#_advertise) address @@ -139,11 +148,35 @@ The options below are all specified on the command-line. capture, it is possible to use [`discard_check_output`](#discard_check_output). - `-client` ((#\_client)) - The address to which Consul will bind client - interfaces, including the HTTP and DNS servers. By default, this is "127.0.0.1", + interfaces, including the HTTP, HTTPS, gRPC and DNS servers. By default, this is "127.0.0.1", allowing only loopback connections. In Consul 1.0 and later this can be set to a space-separated list of addresses to bind to, or a [go-sockaddr] template that can potentially resolve to multiple addresses. + + + ```shell + $ consul agent -dev -client '{{ GetPrivateInterfaces | exclude "type" "ipv6" | join "address" " " }}' + ``` + + + + + + ```shell + $ consul agent -dev -client '{{ GetPrivateInterfaces | join "address" " " }} {{ GetAllInterfaces | include "flags" "loopback" | join "address" " " }}' + ``` + + + + + + ```shell + $ consul agent -dev -client '{{ GetPrivateInterfaces | exclude "name" "br.*" | join "address" " " }}' + ``` + + + - `-config-file` ((#\_config_file)) - A configuration file to load. For more information on the format of this file, read the [Configuration Files](#configuration_files) section. This option can be specified multiple times to load multiple configuration From a217d13e1bf1cbb1523b0889c6188acb897893c8 Mon Sep 17 00:00:00 2001 From: Anthony Date: Tue, 11 Jan 2022 01:13:27 -0500 Subject: [PATCH 175/404] docs: Add CodeBlockConfig to network coordinates page --- .../content/docs/architecture/coordinates.mdx | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/website/content/docs/architecture/coordinates.mdx b/website/content/docs/architecture/coordinates.mdx index 60c9d3d29..082273fef 100644 --- a/website/content/docs/architecture/coordinates.mdx +++ b/website/content/docs/architecture/coordinates.mdx @@ -48,14 +48,20 @@ Computing the estimated network round trip time between any two nodes is simple once you have their coordinates. Here's a sample coordinate, as returned from the [Coordinate endpoint](/api/coordinate). + + +```json +... + "Coord": { + "Adjustment": 0.1, + "Error": 1.5, + "Height": 0.02, + "Vec": [0.34,0.68,0.003,0.01,0.05,0.1,0.34,0.06] + } +... ``` - "Coord": { - "Adjustment": 0.1, - "Error": 1.5, - "Height": 0.02, - "Vec": [0.34,0.68,0.003,0.01,0.05,0.1,0.34,0.06] - } -``` + + All values are floating point numbers in units of seconds, except for the error term which isn't used for distance calculations. @@ -63,7 +69,9 @@ term which isn't used for distance calculations. Here's a complete example in Go showing how to compute the distance between two coordinates: -``` + + +```go import ( "math" "time" @@ -97,3 +105,5 @@ func dist(a *coordinate.Coordinate, b *coordinate.Coordinate) time.Duration { return time.Duration(rtt * secondsToNanoseconds) } ``` + + From fc8e89d64016dab302192752a90e4dc39d7873fe Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 11 Jan 2022 11:02:46 +0000 Subject: [PATCH 176/404] ui: Ensure the partition is passed through to the request for the SSO auth URL (#11979) * Make sure the mocks reflect the requested partition/namespace * Ensure partition is passed through to the HTTP adapter * Pass AuthMethod object through to TokenSource in order to use Partition * Change up docs and add potential improvements for future * Pass the query partition back onto the response * Make sure the OIDC callback mock returns a Partition * Enable OIDC provider mock overwriting during acceptance testing * Make sure we can enable partitions and SSO post bootup only required ...for now * Wire up oidc provider mocking * Add SSO full auth flow acceptance tests --- .changelog/11979.txt | 4 +++ .../app/components/auth-form/index.hbs | 2 +- .../app/components/token-source/README.mdx | 11 ++++++- .../app/components/token-source/index.hbs | 8 ++--- .../app/serializers/oidc-provider.js | 1 + .../app/services/repository/oidc-provider.js | 3 +- .../consul-ui/mock-api/v1/acl/oidc/callback | 5 ++++ .../mock-api/v1/internal/ui/oidc-auth-methods | 4 +-- .../consul-ui/tests/acceptance/login.feature | 30 +++++++++++++++++++ .../consul-ui/tests/helpers/set-cookies.js | 3 ++ .../consul-ui/tests/helpers/type-to-url.js | 3 ++ ui/packages/consul-ui/tests/steps.js | 9 +++++- .../consul-ui/tests/steps/doubles/http.js | 5 +++- .../consul-ui/tests/steps/doubles/model.js | 8 +++++ 14 files changed, 85 insertions(+), 11 deletions(-) create mode 100644 .changelog/11979.txt diff --git a/.changelog/11979.txt b/.changelog/11979.txt new file mode 100644 index 000000000..8ef0e855b --- /dev/null +++ b/.changelog/11979.txt @@ -0,0 +1,4 @@ +```release-note:bug +ui: Ensure partition query parameter is passed through to all OIDC related API +requests +``` diff --git a/ui/packages/consul-ui/app/components/auth-form/index.hbs b/ui/packages/consul-ui/app/components/auth-form/index.hbs index 3578e467d..b9ba008f9 100644 --- a/ui/packages/consul-ui/app/components/auth-form/index.hbs +++ b/ui/packages/consul-ui/app/components/auth-form/index.hbs @@ -154,7 +154,7 @@ as |TabState IgnoredGuard IgnoredAction tabDispatch tabState|> @nspace={{or this.value.Namespace @nspace}} @partition={{or this.value.Partition @partition}} @type={{if this.value.Name 'oidc' 'secret'}} - @value={{if this.value.Name this.value.Name this.value}} + @value={{this.value}} @onchange={{queue (action dispatch "RESET") @onsubmit}} @onerror={{queue (action (mut this.error) value="error.errors.firstObject") (action dispatch "ERROR")}} /> diff --git a/ui/packages/consul-ui/app/components/token-source/README.mdx b/ui/packages/consul-ui/app/components/token-source/README.mdx index 8a451f2c8..186cba5d4 100644 --- a/ui/packages/consul-ui/app/components/token-source/README.mdx +++ b/ui/packages/consul-ui/app/components/token-source/README.mdx @@ -21,6 +21,15 @@ This component **does not store the resulting token**, it only emits it via its `onchange` argument/event handler. Errors are emitted via the `onerror` argument/event handler. +## Potential improvements + +We could decide to remove the `@type` argument and always require an object +passed to `@value` instead of a `String|Object`. Alternatively we could still +allow `String|Object`. Then inside the component we could decide whether to +use the Consul or SSO depending on the shape of the `@value` argument. All in +all this means we can remove the `@type` argument making a slimmer component +API. + ```hbs preview-template
    Provide a widget to login with
    @@ -75,7 +84,7 @@ argument/event handler. | `nspace` | `String` | | The name of the current namespace | | `partition` | `String` | | The name of the current partition | | `type` | `String` | | `secret` or `oidc`. `secret` is just traditional login, whereas `oidc` uses the users OIDC provider | -| `value` | `String` | | When `type` is `secret` this should be the users secret. When `type` is `oidc` this should be the name of the `AuthMethod` to use for authentication | +| `value` | `String|Object` | | When `type` is `secret` this should be the users secret. When `type` is `oidc` this should be object returned by Consul's AuthMethod HTTP API endpoint | | `onchange` | `Function` | | The action to fire when the data changes. Emits an Event-like object with a `data` property containing the jwt data, in this case the autorizationCode and the status | | `onerror` | `Function` | | The action to fire when an error occurs. Emits ErrorEvent object with an `error` property containing the Error. | diff --git a/ui/packages/consul-ui/app/components/token-source/index.hbs b/ui/packages/consul-ui/app/components/token-source/index.hbs index 94186be1b..962fc7774 100644 --- a/ui/packages/consul-ui/app/components/token-source/index.hbs +++ b/ui/packages/consul-ui/app/components/token-source/index.hbs @@ -7,10 +7,10 @@ as |State Guard Action dispatch state|> @cond={{this.isSecret}} /> {{#let - (uri '/${partition}/{$nspace}/${dc}' + (uri '/${partition}/${nspace}/${dc}' (hash - partition=@partition - nspace=@nspace + partition=(or @value.Partition @partition) + nspace=(or @value.Namespace @nspace) dc=@dc ) ) @@ -30,7 +30,7 @@ as |State Guard Action dispatch state|> Date: Tue, 11 Jan 2022 08:26:58 -0500 Subject: [PATCH 177/404] Fixed absolute links to HTTP apis. --- website/content/commands/acl/auth-method/create.mdx | 2 +- website/content/commands/acl/auth-method/delete.mdx | 2 +- website/content/commands/acl/auth-method/list.mdx | 2 +- website/content/commands/acl/auth-method/read.mdx | 2 +- website/content/commands/acl/auth-method/update.mdx | 2 +- website/content/commands/acl/binding-rule/create.mdx | 2 +- website/content/commands/acl/binding-rule/delete.mdx | 2 +- website/content/commands/acl/binding-rule/list.mdx | 2 +- website/content/commands/acl/binding-rule/read.mdx | 2 +- website/content/commands/acl/binding-rule/update.mdx | 2 +- website/content/commands/acl/bootstrap.mdx | 2 +- website/content/commands/acl/policy/create.mdx | 2 +- website/content/commands/acl/policy/delete.mdx | 2 +- website/content/commands/acl/policy/list.mdx | 2 +- website/content/commands/acl/policy/read.mdx | 2 +- website/content/commands/acl/policy/update.mdx | 2 +- website/content/commands/acl/role/create.mdx | 2 +- website/content/commands/acl/role/delete.mdx | 2 +- website/content/commands/acl/role/list.mdx | 2 +- website/content/commands/acl/role/read.mdx | 2 +- website/content/commands/acl/role/update.mdx | 2 +- website/content/commands/acl/set-agent-token.mdx | 2 +- website/content/commands/acl/token/clone.mdx | 2 +- website/content/commands/acl/token/create.mdx | 2 +- website/content/commands/acl/token/delete.mdx | 2 +- website/content/commands/acl/token/list.mdx | 2 +- website/content/commands/acl/token/read.mdx | 2 +- website/content/commands/acl/token/update.mdx | 2 +- website/content/commands/acl/translate-rules.mdx | 2 +- website/content/commands/catalog/datacenters.mdx | 2 +- website/content/commands/catalog/nodes.mdx | 2 +- website/content/commands/catalog/services.mdx | 2 +- website/content/commands/config/delete.mdx | 2 +- website/content/commands/config/list.mdx | 2 +- website/content/commands/config/read.mdx | 2 +- website/content/commands/config/write.mdx | 2 +- website/content/commands/connect/ca.mdx | 4 ++-- website/content/commands/event.mdx | 2 +- website/content/commands/exec.mdx | 2 +- website/content/commands/force-leave.mdx | 2 +- website/content/commands/intention/check.mdx | 2 +- website/content/commands/intention/create.mdx | 2 +- website/content/commands/intention/delete.mdx | 2 +- website/content/commands/intention/get.mdx | 2 +- website/content/commands/intention/list.mdx | 2 +- website/content/commands/intention/match.mdx | 2 +- website/content/commands/join.mdx | 2 +- website/content/commands/keyring.mdx | 2 +- website/content/commands/kv/delete.mdx | 2 +- website/content/commands/kv/get.mdx | 2 +- website/content/commands/kv/put.mdx | 2 +- website/content/commands/leave.mdx | 2 +- website/content/commands/license.mdx | 6 +++--- website/content/commands/login.mdx | 2 +- website/content/commands/logout.mdx | 2 +- website/content/commands/maint.mdx | 2 +- website/content/commands/members.mdx | 2 +- website/content/commands/namespace/create.mdx | 2 +- website/content/commands/namespace/delete.mdx | 2 +- website/content/commands/namespace/list.mdx | 2 +- website/content/commands/namespace/read.mdx | 2 +- website/content/commands/namespace/update.mdx | 2 +- website/content/commands/namespace/write.mdx | 2 +- website/content/commands/operator/area.mdx | 12 ++++++------ website/content/commands/operator/autopilot.mdx | 6 +++--- website/content/commands/operator/raft.mdx | 4 ++-- website/content/commands/reload.mdx | 2 +- website/content/commands/rtt.mdx | 2 +- website/content/commands/services/deregister.mdx | 2 +- website/content/commands/services/register.mdx | 2 +- website/content/commands/snapshot/restore.mdx | 2 +- website/content/commands/snapshot/save.mdx | 2 +- 72 files changed, 83 insertions(+), 83 deletions(-) diff --git a/website/content/commands/acl/auth-method/create.mdx b/website/content/commands/acl/auth-method/create.mdx index 187f0fbd9..a47477493 100644 --- a/website/content/commands/acl/auth-method/create.mdx +++ b/website/content/commands/acl/auth-method/create.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Auth Method Create' Command: `consul acl auth-method create` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method](https://www.consul.io/api-docs/acl/auth-methods#create-an-auth-method) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method](/api-docs/acl/auth-methods#create-an-auth-method) The `acl auth-method create` command creates new auth methods. diff --git a/website/content/commands/acl/auth-method/delete.mdx b/website/content/commands/acl/auth-method/delete.mdx index 6394fe6af..3ba8324a4 100644 --- a/website/content/commands/acl/auth-method/delete.mdx +++ b/website/content/commands/acl/auth-method/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Auth Method Delete' Command: `consul acl auth-method delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/auth-method/:name](https://www.consul.io/api-docs/acl/auth-methods#delete-an-auth-method) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/auth-method/:name](/api-docs/acl/auth-methods#delete-an-auth-method) The `acl auth-method delete` command deletes an auth method. diff --git a/website/content/commands/acl/auth-method/list.mdx b/website/content/commands/acl/auth-method/list.mdx index 2217155f6..643e1c02c 100644 --- a/website/content/commands/acl/auth-method/list.mdx +++ b/website/content/commands/acl/auth-method/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Auth Method List' Command: `consul acl auth-method list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-methods](https://www.consul.io/api-docs/acl/auth-methods#list-auth-methods) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-methods](/api-docs/acl/auth-methods#list-auth-methods) The `acl auth-method list` command lists all auth methods. By default it will not show metadata. diff --git a/website/content/commands/acl/auth-method/read.mdx b/website/content/commands/acl/auth-method/read.mdx index 805524ed0..fbe7d055c 100644 --- a/website/content/commands/acl/auth-method/read.mdx +++ b/website/content/commands/acl/auth-method/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Auth Method Read' Command: `consul acl auth-method read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-method/:name](https://www.consul.io/api-docs/acl/auth-methods#read-an-auth-method) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/auth-method/:name](/api-docs/acl/auth-methods#read-an-auth-method) The `acl auth-method read` command reads and displays an auth method's details. diff --git a/website/content/commands/acl/auth-method/update.mdx b/website/content/commands/acl/auth-method/update.mdx index 2e455a724..c960a09d0 100644 --- a/website/content/commands/acl/auth-method/update.mdx +++ b/website/content/commands/acl/auth-method/update.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Auth Method Update' Command: `consul acl auth-method update` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method/:name](https://www.consul.io/api-docs/acl/auth-methods#update-an-auth-method) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/auth-method/:name](/api-docs/acl/auth-methods#update-an-auth-method) The `acl auth-method update` command is used to update an auth method. The default operations is to merge the current auth method with those values diff --git a/website/content/commands/acl/binding-rule/create.mdx b/website/content/commands/acl/binding-rule/create.mdx index 681576483..df65da77a 100644 --- a/website/content/commands/acl/binding-rule/create.mdx +++ b/website/content/commands/acl/binding-rule/create.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Binding Rule Create' Command: `consul acl binding-rule create` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule](https://www.consul.io/api-docs/acl/binding-rules#create-a-binding-rule) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule](/api-docs/acl/binding-rules#create-a-binding-rule) The `acl binding-rule create` command creates new binding rules. diff --git a/website/content/commands/acl/binding-rule/delete.mdx b/website/content/commands/acl/binding-rule/delete.mdx index fc7b599b3..e59d533fd 100644 --- a/website/content/commands/acl/binding-rule/delete.mdx +++ b/website/content/commands/acl/binding-rule/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Binding Rule Delete' Command: `consul acl binding-rule delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/binding-rule/:id](https://www.consul.io/api-docs/acl/binding-rules#delete-a-binding-rule) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/binding-rule/:id](/api-docs/acl/binding-rules#delete-a-binding-rule) The `acl binding-rule delete` command deletes a binding rule. diff --git a/website/content/commands/acl/binding-rule/list.mdx b/website/content/commands/acl/binding-rule/list.mdx index b80774a95..1753f3f9b 100644 --- a/website/content/commands/acl/binding-rule/list.mdx +++ b/website/content/commands/acl/binding-rule/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Binding Rule List' Command: `consul acl binding-rule list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rules](https://www.consul.io/api-docs/acl/binding-rules#list-binding-rules) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rules](/api-docs/acl/binding-rules#list-binding-rules) The `acl binding-rule list` command lists all binding rules. By default it will not show metadata. diff --git a/website/content/commands/acl/binding-rule/read.mdx b/website/content/commands/acl/binding-rule/read.mdx index 3e2e8db17..15b66acb6 100644 --- a/website/content/commands/acl/binding-rule/read.mdx +++ b/website/content/commands/acl/binding-rule/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Binding Rule Read' Command: `consul acl binding-rule read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rule/:id](https://www.consul.io/api-docs/acl/binding-rules#read-a-binding-rule) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/binding-rule/:id](/api-docs/acl/binding-rules#read-a-binding-rule) The `acl binding-rule read` command reads and displays a binding rules details. diff --git a/website/content/commands/acl/binding-rule/update.mdx b/website/content/commands/acl/binding-rule/update.mdx index dd0d150c1..2fb1496ab 100644 --- a/website/content/commands/acl/binding-rule/update.mdx +++ b/website/content/commands/acl/binding-rule/update.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Binding Rule Update' Command: `consul acl binding-rule update` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule/:id](https://www.consul.io/api-docs/acl/binding-rules#update-a-binding-rule) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/binding-rule/:id](/api-docs/acl/binding-rules#update-a-binding-rule) The `acl binding-rule update` command is used to update a binding rule. The default operations is to merge the current binding rule with those values diff --git a/website/content/commands/acl/bootstrap.mdx b/website/content/commands/acl/bootstrap.mdx index 3e7aa4707..28592f0e7 100644 --- a/website/content/commands/acl/bootstrap.mdx +++ b/website/content/commands/acl/bootstrap.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Bootstrap' Command: `consul acl bootstrap` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/bootstrap](https://www.consul.io/api-docs/acl#bootstrap-acls) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/bootstrap](/api-docs/acl#bootstrap-acls) 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 diff --git a/website/content/commands/acl/policy/create.mdx b/website/content/commands/acl/policy/create.mdx index 414b0fcdc..8cdcd20b7 100644 --- a/website/content/commands/acl/policy/create.mdx +++ b/website/content/commands/acl/policy/create.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Policy Create' Command: `consul acl policy create` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/policy](https://www.consul.io/api-docs/acl/policies#create-a-policy) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/policy](/api-docs/acl/policies#create-a-policy) The `acl policy create` command creates new policies. The policies rules can either be set explicitly or the `-from-token` parameter may be used to load the rules from a legacy ACL token. When loading diff --git a/website/content/commands/acl/policy/delete.mdx b/website/content/commands/acl/policy/delete.mdx index 9296d8949..c903545c7 100644 --- a/website/content/commands/acl/policy/delete.mdx +++ b/website/content/commands/acl/policy/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Policy Delete' Command: `consul acl policy delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/policy/:id](https://www.consul.io/api-docs/acl/policies#delete-a-policy) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/policy/:id](/api-docs/acl/policies#delete-a-policy) The `acl policy delete` command deletes a policy. Policies may be deleted by their ID or by name. diff --git a/website/content/commands/acl/policy/list.mdx b/website/content/commands/acl/policy/list.mdx index 93b1d6cad..dd2a6606b 100644 --- a/website/content/commands/acl/policy/list.mdx +++ b/website/content/commands/acl/policy/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Policy List' Command: `consul acl policy list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policies](https://www.consul.io/api-docs/acl/policies#list-policies) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policies](/api-docs/acl/policies#list-policies) The `acl policy list` command lists all policies. By default it will not show metadata. diff --git a/website/content/commands/acl/policy/read.mdx b/website/content/commands/acl/policy/read.mdx index 7657f9f95..0b9bdf45d 100644 --- a/website/content/commands/acl/policy/read.mdx +++ b/website/content/commands/acl/policy/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Policy Read' Command: `consul acl policy read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policy/:id](https://www.consul.io/api-docs/acl/policies#read-a-policy) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policy/:id](/api-docs/acl/policies#read-a-policy) The `acl policy read` command reads and displays a policies details. diff --git a/website/content/commands/acl/policy/update.mdx b/website/content/commands/acl/policy/update.mdx index ac365bbb8..4beeec210 100644 --- a/website/content/commands/acl/policy/update.mdx +++ b/website/content/commands/acl/policy/update.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Policy Update' Command: `consul acl policy update` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/policy/:id](https://www.consul.io/api-docs/acl/policies#update-a-policy) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/policy/:id](/api-docs/acl/policies#update-a-policy) The `acl policy update` command is used to update a policy. The default operations is to merge the current policy with those values provided to the command invocation. Therefore to update just one field, only diff --git a/website/content/commands/acl/role/create.mdx b/website/content/commands/acl/role/create.mdx index 3a3b3d0f8..37b3a9a00 100644 --- a/website/content/commands/acl/role/create.mdx +++ b/website/content/commands/acl/role/create.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Role Create' Command: `consul acl role create` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role](https://www.consul.io/api-docs/acl/roles#create-a-role) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role](/api-docs/acl/roles#create-a-role) The `acl role create` command creates new roles. diff --git a/website/content/commands/acl/role/delete.mdx b/website/content/commands/acl/role/delete.mdx index ad1660533..3f37cf51e 100644 --- a/website/content/commands/acl/role/delete.mdx +++ b/website/content/commands/acl/role/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Role Delete' Command: `consul acl role delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/role/:id](https://www.consul.io/api-docs/acl/roles#delete-a-role) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/role/:id](/api-docs/acl/roles#delete-a-role) The `acl role delete` command deletes a role. Roles may be deleted by their ID or by name. diff --git a/website/content/commands/acl/role/list.mdx b/website/content/commands/acl/role/list.mdx index b5f4d0c3c..9ba9115ce 100644 --- a/website/content/commands/acl/role/list.mdx +++ b/website/content/commands/acl/role/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Role List' Command: `consul acl role list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/roles](https://www.consul.io/api-docs/acl/roles#list-roles) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/roles](/api-docs/acl/roles#list-roles) The `acl role list` command lists all roles. By default it will not show metadata. diff --git a/website/content/commands/acl/role/read.mdx b/website/content/commands/acl/role/read.mdx index 3d3b3f3b4..b28aa6bfd 100644 --- a/website/content/commands/acl/role/read.mdx +++ b/website/content/commands/acl/role/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Role Read' Command: `consul acl role read` -Corresponding HTTP API Endpoints: [\[GET\] /v1/acl/role/:id](https://www.consul.io/api-docs/acl/roles#read-a-role), [\[GET\] /v1/acl/role/name/:name](https://www.consul.io/api-docs/acl/roles#read-a-role-by-name) +Corresponding HTTP API Endpoints: [\[GET\] /v1/acl/role/:id](/api-docs/acl/roles#read-a-role), [\[GET\] /v1/acl/role/name/:name](/api-docs/acl/roles#read-a-role-by-name) The `acl role read` command reads and displays a roles details. diff --git a/website/content/commands/acl/role/update.mdx b/website/content/commands/acl/role/update.mdx index 3cf87d7a2..17469059c 100644 --- a/website/content/commands/acl/role/update.mdx +++ b/website/content/commands/acl/role/update.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Role Update' Command: `consul acl role update` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role/:id](https://www.consul.io/api-docs/acl/roles#update-a-role) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/role/:id](/api-docs/acl/roles#update-a-role) The `acl role update` command is used to update a role. The default operations is to merge the current role with those values provided to the command invocation. Therefore to diff --git a/website/content/commands/acl/set-agent-token.mdx b/website/content/commands/acl/set-agent-token.mdx index 51e71c0ce..af142a694 100644 --- a/website/content/commands/acl/set-agent-token.mdx +++ b/website/content/commands/acl/set-agent-token.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Set Agent Token' Command: `consul acl set-agent-token` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/token/:type](https://www.consul.io/api-docs/agent#update-acl-tokens) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/token/:type](/api-docs/agent#update-acl-tokens) This command updates the ACL tokens currently in use by the agent. It can be used to introduce ACL tokens to the agent for the first time, or to update tokens that were initially loaded from diff --git a/website/content/commands/acl/token/clone.mdx b/website/content/commands/acl/token/clone.mdx index 218d3f5bf..2b7b3ca9b 100644 --- a/website/content/commands/acl/token/clone.mdx +++ b/website/content/commands/acl/token/clone.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Token Clone' Command: `consul acl token clone` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID/clone](https://www.consul.io/api-docs/acl/tokens#clone-a-token) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID/clone](/api-docs/acl/tokens#clone-a-token) The `acl token clone` command clones an existing token. diff --git a/website/content/commands/acl/token/create.mdx b/website/content/commands/acl/token/create.mdx index 23aaeccd5..b9e2e0ae1 100644 --- a/website/content/commands/acl/token/create.mdx +++ b/website/content/commands/acl/token/create.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Token Create' Command: `consul acl token create` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token](https://www.consul.io/api-docs/acl/tokens#create-a-token) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token](/api-docs/acl/tokens#create-a-token) This command creates new tokens. When creating a new token, policies may be linked using either the `-policy-id` or the `-policy-name` options. When specifying policies by IDs you diff --git a/website/content/commands/acl/token/delete.mdx b/website/content/commands/acl/token/delete.mdx index a020e9274..20545e319 100644 --- a/website/content/commands/acl/token/delete.mdx +++ b/website/content/commands/acl/token/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Token Delete' Command: `consul acl token delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/token/:AccessorID](https://www.consul.io/api-docs/acl/tokens#delete-a-token) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/acl/token/:AccessorID](/api-docs/acl/tokens#delete-a-token) The `acl token delete` command deletes a token. diff --git a/website/content/commands/acl/token/list.mdx b/website/content/commands/acl/token/list.mdx index deb147035..0439dc7ed 100644 --- a/website/content/commands/acl/token/list.mdx +++ b/website/content/commands/acl/token/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Token List' Command: `consul acl token list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/tokens](https://www.consul.io/api-docs/acl/tokens#list-tokens) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/tokens](/api-docs/acl/tokens#list-tokens) The `acl token list` command lists all tokens. By default it will not show metadata. diff --git a/website/content/commands/acl/token/read.mdx b/website/content/commands/acl/token/read.mdx index 2842670f4..6d3aefadb 100644 --- a/website/content/commands/acl/token/read.mdx +++ b/website/content/commands/acl/token/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Token Read' Command: `consul acl token read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/token/:AccessorID](https://www.consul.io/api-docs/acl/tokens#read-a-token) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/token/:AccessorID](/api-docs/acl/tokens#read-a-token) The `acl token read` command reads and displays a token details. diff --git a/website/content/commands/acl/token/update.mdx b/website/content/commands/acl/token/update.mdx index 9fc331e9f..ca9c04e1f 100644 --- a/website/content/commands/acl/token/update.mdx +++ b/website/content/commands/acl/token/update.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Token Update' Command: `consul acl token update` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID](https://www.consul.io/api-docs/acl/tokens#update-a-token) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID](/api-docs/acl/tokens#update-a-token) The `acl token update` command will update a token. Some parts of the token like whether the token is local to the datacenter cannot be changed. diff --git a/website/content/commands/acl/translate-rules.mdx b/website/content/commands/acl/translate-rules.mdx index 4e0c95011..6501b56e0 100644 --- a/website/content/commands/acl/translate-rules.mdx +++ b/website/content/commands/acl/translate-rules.mdx @@ -10,7 +10,7 @@ It will be removed in a future major release when support for the legacy ACL sys Command: `consul acl translate-rules` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/rules/translate/:accessor_id](https://www.consul.io/api-docs/acl#translate-a-legacy-token-s-rules) +Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/rules/translate/:accessor_id](/api-docs/acl#translate-a-legacy-token-s-rules) This command translates the legacy ACL rule syntax into the new syntax. diff --git a/website/content/commands/catalog/datacenters.mdx b/website/content/commands/catalog/datacenters.mdx index a8cfb96e7..8d329b786 100644 --- a/website/content/commands/catalog/datacenters.mdx +++ b/website/content/commands/catalog/datacenters.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Catalog List Datacenters' Command: `consul catalog datacenters` -Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/datacenters](https://www.consul.io/api-docs/catalog#list-datacenters) +Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/datacenters](/api-docs/catalog#list-datacenters) The `catalog datacenters` command prints all known datacenters. diff --git a/website/content/commands/catalog/nodes.mdx b/website/content/commands/catalog/nodes.mdx index 618673bd8..386948d29 100644 --- a/website/content/commands/catalog/nodes.mdx +++ b/website/content/commands/catalog/nodes.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Catalog List Nodes' Command: `consul catalog nodes` -Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/nodes](https://www.consul.io/api-docs/catalog#list-nodes) +Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/nodes](/api-docs/catalog#list-nodes) The `catalog nodes` command prints all known nodes and metadata about them. It can also query for nodes that match a particular metadata or provide a diff --git a/website/content/commands/catalog/services.mdx b/website/content/commands/catalog/services.mdx index e7cd46673..8c414653c 100644 --- a/website/content/commands/catalog/services.mdx +++ b/website/content/commands/catalog/services.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Catalog List Services' Command: `consul catalog services` -Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/services](https://www.consul.io/api-docs/catalog#list-services) +Corresponding HTTP API Endpoint: [\[GET\] /v1/catalog/services](/api-docs/catalog#list-services) The `catalog services` command prints all known services. It can also query for services that match particular metadata or list the services that a diff --git a/website/content/commands/config/delete.mdx b/website/content/commands/config/delete.mdx index 014e4469c..fb3b6e553 100644 --- a/website/content/commands/config/delete.mdx +++ b/website/content/commands/config/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Config Delete' Command: `consul config delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/config/:kind/:name](https://www.consul.io/api-docs/config#delete-configuration) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/config/:kind/:name](/api-docs/config#delete-configuration) The `config delete` command deletes the configuration entry specified by the kind and name. See the [configuration entries docs](/docs/agent/config-entries) diff --git a/website/content/commands/config/list.mdx b/website/content/commands/config/list.mdx index a30b20f71..26e3ab203 100644 --- a/website/content/commands/config/list.mdx +++ b/website/content/commands/config/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Config List' Command: `consul config list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/config/:kind](https://www.consul.io/api-docs/config#list-configurations) +Corresponding HTTP API Endpoint: [\[GET\] /v1/config/:kind](/api-docs/config#list-configurations) The `config list` command lists all given config entries of the given kind. See the [configuration entries docs](/docs/agent/config-entries) for more diff --git a/website/content/commands/config/read.mdx b/website/content/commands/config/read.mdx index b1b2ca04f..c1984d48b 100644 --- a/website/content/commands/config/read.mdx +++ b/website/content/commands/config/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Config Read' Command: `consul config read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/config/:kind/:name](https://www.consul.io/api-docs/config#get-configuration) +Corresponding HTTP API Endpoint: [\[GET\] /v1/config/:kind/:name](/api-docs/config#get-configuration) The `config read` command reads the config entry specified by the given kind and name and outputs its JSON representation. See the diff --git a/website/content/commands/config/write.mdx b/website/content/commands/config/write.mdx index f562171eb..5677a5db8 100644 --- a/website/content/commands/config/write.mdx +++ b/website/content/commands/config/write.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Config Write' Command: `consul config write` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/config](https://www.consul.io/api-docs/config#apply-configuration) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/config](/api-docs/config#apply-configuration) The `config write` command creates or updates a centralized config entry. See the [configuration entries docs](/docs/agent/config-entries) for more diff --git a/website/content/commands/connect/ca.mdx b/website/content/commands/connect/ca.mdx index 4db356b19..3b037ea4a 100644 --- a/website/content/commands/connect/ca.mdx +++ b/website/content/commands/connect/ca.mdx @@ -52,7 +52,7 @@ are not supported from commands, but may be from the corresponding HTTP endpoint Usage: `consul connect ca get-config [options]` -Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/ca/configuration](https://www.consul.io/api-docs/connect/ca#get-ca-configuration) +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/ca/configuration](/api-docs/connect/ca#get-ca-configuration) #### API Options @@ -87,7 +87,7 @@ are not supported from commands, but may be from the corresponding HTTP endpoint Usage: `consul connect ca set-config [options]` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/connect/ca/configuration](https://www.consul.io/api-docs/connect/ca#update-ca-configuration) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/connect/ca/configuration](/api-docs/connect/ca#update-ca-configuration) #### API Options diff --git a/website/content/commands/event.mdx b/website/content/commands/event.mdx index 7dba8462e..2ca668049 100644 --- a/website/content/commands/event.mdx +++ b/website/content/commands/event.mdx @@ -13,7 +13,7 @@ description: >- Command: `consul event` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/event/fire/:name](https://www.consul.io/api-docs/event#fire-event) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/event/fire/:name](/api-docs/event#fire-event) The `event` command provides a mechanism to fire a custom user event to an entire datacenter. These events are opaque to Consul, but they can be used diff --git a/website/content/commands/exec.mdx b/website/content/commands/exec.mdx index 8bae11c8f..2244a7d6e 100644 --- a/website/content/commands/exec.mdx +++ b/website/content/commands/exec.mdx @@ -40,7 +40,7 @@ execute this command. | `key:write` | `"_rexec"` prefix | | `event:write` | `"_rexec"` prefix | -In addition to the above, the policy associated with the [agent token](https://www.consul.io/docs/security/acl/acl-system#acl-agent-token) should have `write` on `"_rexec"` key prefix. This is for the agents to read the `exec` command and write its output back to the KV store. +In addition to the above, the policy associated with the [agent token](/docs/security/acl/acl-system#acl-agent-token) should have `write` on `"_rexec"` key prefix. This is for the agents to read the `exec` command and write its output back to the KV store. ## Usage diff --git a/website/content/commands/force-leave.mdx b/website/content/commands/force-leave.mdx index 52a41464b..f923b746f 100644 --- a/website/content/commands/force-leave.mdx +++ b/website/content/commands/force-leave.mdx @@ -11,7 +11,7 @@ description: >- Command: `consul force-leave` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/force-leave/:node](https://www.consul.io/api-docs/agent#force-leave-and-shutdown) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/force-leave/:node](/api-docs/agent#force-leave-and-shutdown) The `force-leave` command forces a member of a Consul cluster to enter the "left" state. The purpose of this method is to force-remove a node that has failed or diff --git a/website/content/commands/intention/check.mdx b/website/content/commands/intention/check.mdx index 9a2c53a7c..21cb33422 100644 --- a/website/content/commands/intention/check.mdx +++ b/website/content/commands/intention/check.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention Check' Command: `consul intention check` -Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/check](https://www.consul.io/api-docs/connect/intentions#check-intention-result) +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/check](/api-docs/connect/intentions#check-intention-result) The `intention check` command checks whether a connection attempt between two services would be authorized given the current set of intentions and diff --git a/website/content/commands/intention/create.mdx b/website/content/commands/intention/create.mdx index bcdb62164..505fbe970 100644 --- a/website/content/commands/intention/create.mdx +++ b/website/content/commands/intention/create.mdx @@ -13,7 +13,7 @@ entry for the destination. Command: `consul intention create` -Corresponding HTTP API Endpoint: [\[POST\] /v1/connect/intentions](https://www.consul.io/api-docs/connect/intentions#create-intention-with-id) +Corresponding HTTP API Endpoint: [\[POST\] /v1/connect/intentions](/api-docs/connect/intentions#create-intention-with-id) The `intention create` command creates or updates an L4 intention. diff --git a/website/content/commands/intention/delete.mdx b/website/content/commands/intention/delete.mdx index 1af6fdf87..07f4a95fe 100644 --- a/website/content/commands/intention/delete.mdx +++ b/website/content/commands/intention/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention Delete' Command: `consul intention delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/connect/intentions/exact](https://www.consul.io/api-docs/connect/intentions#delete-intention-by-name) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/connect/intentions/exact](/api-docs/connect/intentions#delete-intention-by-name) The `intention delete` command deletes a matching intention. diff --git a/website/content/commands/intention/get.mdx b/website/content/commands/intention/get.mdx index b475b4d69..438358b66 100644 --- a/website/content/commands/intention/get.mdx +++ b/website/content/commands/intention/get.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention Get' Command: `consul intention get` -Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/exact](https://www.consul.io/api-docs/connect/intentions##read-specific-intention-by-name) +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/exact](/api-docs/connect/intentions##read-specific-intention-by-name) The `intention get` command shows a single intention. diff --git a/website/content/commands/intention/list.mdx b/website/content/commands/intention/list.mdx index a876a5d4f..e3d546877 100644 --- a/website/content/commands/intention/list.mdx +++ b/website/content/commands/intention/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention List' Command: `consul intention list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions](https://www.consul.io/api-docs/connect/intentions#list-intentions) +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions](/api-docs/connect/intentions#list-intentions) The `intention list` command shows all intentions including ID and precedence. diff --git a/website/content/commands/intention/match.mdx b/website/content/commands/intention/match.mdx index 2a249ace6..ee587cb5c 100644 --- a/website/content/commands/intention/match.mdx +++ b/website/content/commands/intention/match.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention Match' Command: `consul intention match` -Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/match](https://www.consul.io/api-docs/connect/intentions#list-matching-intentions) +Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/match](/api-docs/connect/intentions#list-matching-intentions) The `intention match` command shows the list of intentions that match a given source or destination. The list of intentions is listed in evaluation diff --git a/website/content/commands/join.mdx b/website/content/commands/join.mdx index 5083bb545..218419135 100644 --- a/website/content/commands/join.mdx +++ b/website/content/commands/join.mdx @@ -12,7 +12,7 @@ description: >- Command: `consul join` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/join/:address](https://www.consul.io/api-docs/agent#join-agent) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/join/:address](/api-docs/agent#join-agent) The `join` command tells a Consul agent to join an existing cluster. A new Consul agent may join any node in the existing cluster. After joining diff --git a/website/content/commands/keyring.mdx b/website/content/commands/keyring.mdx index 445dffc49..84283a05c 100644 --- a/website/content/commands/keyring.mdx +++ b/website/content/commands/keyring.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Keyring' Command: `consul keyring` -Corresponding HTTP API Endpoints: [\[VARIES\] /v1/operator/keyring](https://www.consul.io/api-docs/operator/keyring) +Corresponding HTTP API Endpoints: [\[VARIES\] /v1/operator/keyring](/api-docs/operator/keyring) The `keyring` command is used to examine and modify the encryption keys used in Consul's [Gossip Pools](/docs/internals/gossip). It is capable of diff --git a/website/content/commands/kv/delete.mdx b/website/content/commands/kv/delete.mdx index f88487065..6789fa810 100644 --- a/website/content/commands/kv/delete.mdx +++ b/website/content/commands/kv/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: KV Delete' Command: `consul kv delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/kv/:key](https://www.consul.io/api-docs/kv#delete-key) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/kv/:key](/api-docs/kv#delete-key) The `kv delete` command removes the value from Consul's KV store at the given path. If no key exists at the path, no action is taken. diff --git a/website/content/commands/kv/get.mdx b/website/content/commands/kv/get.mdx index 8e5a2d459..9a9841332 100644 --- a/website/content/commands/kv/get.mdx +++ b/website/content/commands/kv/get.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: KV Get' Command: `consul kv get` -Corresponding HTTP API Endpoint: [\[GET\] /v1/kv/:key](https://www.consul.io/api-docs/kv#read-key) +Corresponding HTTP API Endpoint: [\[GET\] /v1/kv/:key](/api-docs/kv#read-key) The `kv get` command is used to retrieve the value from Consul's KV store at the given key name. If no key exists with that name, an error is diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index e313b3b33..626e3ff01 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: KV Put' Command: `consul kv put` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/kv/:key](https://www.consul.io/api-docs/kv#create-update-key) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/kv/:key](/api-docs/kv#create-update-key) The `kv put` command writes the data to the given path in the KV store. diff --git a/website/content/commands/leave.mdx b/website/content/commands/leave.mdx index c78e508d5..527a617bf 100644 --- a/website/content/commands/leave.mdx +++ b/website/content/commands/leave.mdx @@ -11,7 +11,7 @@ description: >- Command: `consul leave` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/leave](https://www.consul.io/api-docs/agent#graceful-leave-and-shutdown) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/leave](/api-docs/agent#graceful-leave-and-shutdown) The `leave` command triggers a graceful leave and shutdown of the agent. It is used to ensure other nodes see the agent as "left" instead of diff --git a/website/content/commands/license.mdx b/website/content/commands/license.mdx index ea80ee008..e8073e844 100644 --- a/website/content/commands/license.mdx +++ b/website/content/commands/license.mdx @@ -124,7 +124,7 @@ License is valid was removed in Consul 1.10. While the CLI command still exists it will always return an error. This command will be fully removed in a future release. -Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/license](https://www.consul.io/api-docs/operator/license#updating-the-consul-license) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/license](/api-docs/operator/license#updating-the-consul-license) This command sets the Consul Enterprise license. @@ -164,7 +164,7 @@ Licensed Features: ## get -Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/license](https://www.consul.io/api-docs/operator/license#getting-the-consul-license) +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/license](/api-docs/operator/license#getting-the-consul-license) This command gets the Consul Enterprise license. @@ -208,7 +208,7 @@ Licensed Features: was removed in Consul 1.10. While the CLI command still exists it will always return an error. This command will be fully removed in a future release. -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/license](https://www.consul.io/api-docs/operator/license#resetting-the-consul-license) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/license](/api-docs/operator/license#resetting-the-consul-license) Resets license for the datacenter to the one builtin in Consul binary, if it is still valid. If the builtin license is invalid, the current one stays active. diff --git a/website/content/commands/login.mdx b/website/content/commands/login.mdx index 6f205f91c..ff04c51a4 100644 --- a/website/content/commands/login.mdx +++ b/website/content/commands/login.mdx @@ -10,7 +10,7 @@ description: > Command: `consul login` -Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/login](https://www.consul.io/api-docs/acl#login-to-auth-method) +Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/login](/api-docs/acl#login-to-auth-method) The `login` command will exchange the provided third party credentials with the requested auth method for a newly minted Consul ACL token. The companion diff --git a/website/content/commands/logout.mdx b/website/content/commands/logout.mdx index 64065896a..4c0af4a97 100644 --- a/website/content/commands/logout.mdx +++ b/website/content/commands/logout.mdx @@ -10,7 +10,7 @@ description: > Command: `consul logout` -Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/logout](https://www.consul.io/api-docs/acl#logout-from-auth-method) +Corresponding HTTP API Endpoint: [\[POST\] /v1/acl/logout](/api-docs/acl#logout-from-auth-method) The `logout` command will destroy the provided token if it was created from `consul login`. diff --git a/website/content/commands/maint.mdx b/website/content/commands/maint.mdx index 21a673ae1..221e7e67d 100644 --- a/website/content/commands/maint.mdx +++ b/website/content/commands/maint.mdx @@ -9,7 +9,7 @@ description: | Command: `consul maint` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/maintenance](https://www.consul.io/api-docs/agent#enable-maintenance-mode) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/maintenance](/api-docs/agent#enable-maintenance-mode) The `maint` command provides control of service maintenance mode. Using the command, it is possible to mark a service provided by a node or all the services on the diff --git a/website/content/commands/members.mdx b/website/content/commands/members.mdx index fece24893..98a1ac58b 100644 --- a/website/content/commands/members.mdx +++ b/website/content/commands/members.mdx @@ -11,7 +11,7 @@ description: >- Command: `consul members` -Corresponding HTTP API Endpoint: [\[GET\] /v1/agent/members](https://www.consul.io/api-docs/agent#list-members) +Corresponding HTTP API Endpoint: [\[GET\] /v1/agent/members](/api-docs/agent#list-members) The `members` command outputs the current list of members that a Consul agent knows about, along with their state. The state of a node can only diff --git a/website/content/commands/namespace/create.mdx b/website/content/commands/namespace/create.mdx index 9f423685d..ccadc6204 100644 --- a/website/content/commands/namespace/create.mdx +++ b/website/content/commands/namespace/create.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Namespace Create' Command: `consul namespace create` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace](https://www.consul.io/api-docs/namespaces#create-a-namespace) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace](/api-docs/namespaces#create-a-namespace) diff --git a/website/content/commands/namespace/delete.mdx b/website/content/commands/namespace/delete.mdx index bb1d3c986..95fd4b9e9 100644 --- a/website/content/commands/namespace/delete.mdx +++ b/website/content/commands/namespace/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Namespace Delete' Command: `consul namespace delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#delete-a-namespace) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/namespace/:name](/api-docs/namespaces#delete-a-namespace) diff --git a/website/content/commands/namespace/list.mdx b/website/content/commands/namespace/list.mdx index c27596982..037ef1369 100644 --- a/website/content/commands/namespace/list.mdx +++ b/website/content/commands/namespace/list.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Namespace List' Command: `consul namespace list` -Corresponding HTTP API Endpoint: [\[GET\] /v1/namespaces](https://www.consul.io/api-docs/namespaces#list-all-namespaces) +Corresponding HTTP API Endpoint: [\[GET\] /v1/namespaces](/api-docs/namespaces#list-all-namespaces) diff --git a/website/content/commands/namespace/read.mdx b/website/content/commands/namespace/read.mdx index 1d16783ef..bf31cd228 100644 --- a/website/content/commands/namespace/read.mdx +++ b/website/content/commands/namespace/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Namespace Read' Command: `consul namespace read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#read-a-namespace) +Corresponding HTTP API Endpoint: [\[GET\] /v1/namespace/:name](/api-docs/namespaces#read-a-namespace) diff --git a/website/content/commands/namespace/update.mdx b/website/content/commands/namespace/update.mdx index 1b260e099..bcbb571b4 100644 --- a/website/content/commands/namespace/update.mdx +++ b/website/content/commands/namespace/update.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Namespace Update' Command: `consul namespace update` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#update-a-namespace) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](/api-docs/namespaces#update-a-namespace) diff --git a/website/content/commands/namespace/write.mdx b/website/content/commands/namespace/write.mdx index 8c90ffc5f..f9e533f14 100644 --- a/website/content/commands/namespace/write.mdx +++ b/website/content/commands/namespace/write.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Namespace Write' Command: `consul namespace write` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](https://www.consul.io/api-docs/namespaces#update-a-namespace) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](/api-docs/namespaces#update-a-namespace) diff --git a/website/content/commands/operator/area.mdx b/website/content/commands/operator/area.mdx index 63c34b922..0bd927e24 100644 --- a/website/content/commands/operator/area.mdx +++ b/website/content/commands/operator/area.mdx @@ -47,7 +47,7 @@ read or write privileges to use these commands. ## create -Corresponding HTTP API Endpoint: [\[POST\] /v1/operator/area](https://www.consul.io/api-docs/operator/area#create-network-area) +Corresponding HTTP API Endpoint: [\[POST\] /v1/operator/area](/api-docs/operator/area#create-network-area) This command creates a new network area. @@ -89,7 +89,7 @@ The return code will indicate success or failure. ## delete -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/area/:uuid](https://www.consul.io/api-docs/operator/area#delete-network-area) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/area/:uuid](/api-docs/operator/area#delete-network-area) This command deletes an existing network area. @@ -127,7 +127,7 @@ The return code will indicate success or failure. ## join -Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid/join](https://www.consul.io/api-docs/operator/area#join-network-area) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid/join](/api-docs/operator/area#join-network-area) This command joins Consul servers into an existing network area by address, such as an IP or hostname with an optional port. Multiple addresses may be given. @@ -172,7 +172,7 @@ The return code will indicate success or failure. ## list -Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area](https://www.consul.io/api-docs/operator/area#list-network-areas) +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area](/api-docs/operator/area#list-network-areas) This command lists all network areas. @@ -210,7 +210,7 @@ The return code will indicate success or failure. ## members -Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area/:uuid/members](https://www.consul.io/api-docs/operator/area#list-network-area-members) +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/area/:uuid/members](/api-docs/operator/area#list-network-area-members) This command displays Consul server nodes present in a network area, or all areas if no area is specified. @@ -275,7 +275,7 @@ The return code will indicate success or failure. ## update -Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid](https://www.consul.io/api-docs/operator/area#update-network-area) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/area/:uuid](/api-docs/operator/area#update-network-area) This command updates the configuration of network area. diff --git a/website/content/commands/operator/autopilot.mdx b/website/content/commands/operator/autopilot.mdx index 4d42af62b..ccd395b35 100644 --- a/website/content/commands/operator/autopilot.mdx +++ b/website/content/commands/operator/autopilot.mdx @@ -28,7 +28,7 @@ Subcommands: ## get-config -Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/configuration](https://www.consul.io/api-docs/operator/autopilot#read-configuration) +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/configuration](/api-docs/operator/autopilot#read-configuration) This command displays the current autopilot configuration. @@ -63,7 +63,7 @@ UpgradeMigrationTag = "" ## set-config -Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/autopilot/configuration](https://www.consul.io/api-docs/operator/autopilot#update-configuration) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/operator/autopilot/configuration](/api-docs/operator/autopilot#update-configuration) Modifies the current Autopilot configuration. @@ -121,7 +121,7 @@ The return code will indicate success or failure. ## state -Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/state](https://www.consul.io/api-docs/operator/autopilot#read-the-autopilot-state) +Corresponding HTTP API Endpoint: [\[GET\] /v1/operator/autopilot/state](/api-docs/operator/autopilot#read-the-autopilot-state) This command displays the current autopilot state. diff --git a/website/content/commands/operator/raft.mdx b/website/content/commands/operator/raft.mdx index 1ecc6be79..2f10cac74 100644 --- a/website/content/commands/operator/raft.mdx +++ b/website/content/commands/operator/raft.mdx @@ -29,7 +29,7 @@ Subcommands: ## list-peers -Corresponding HTTP API Endpoint: [\[GET\] /v1/status/peers](https://www.consul.io/api-docs/status#list-raft-peers) +Corresponding HTTP API Endpoint: [\[GET\] /v1/status/peers](/api-docs/status#list-raft-peers) This command displays the current Raft peer configuration. @@ -72,7 +72,7 @@ configuration. ## remove-peer -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/raft/peer](https://www.consul.io/api-docs/operator/raft#delete-raft-peer) +Corresponding HTTP API Endpoint: [\[DELETE\] /v1/operator/raft/peer](/api-docs/operator/raft#delete-raft-peer) This command removes the Consul server with given address from the Raft configuration. diff --git a/website/content/commands/reload.mdx b/website/content/commands/reload.mdx index 86030a47b..def20e377 100644 --- a/website/content/commands/reload.mdx +++ b/website/content/commands/reload.mdx @@ -8,7 +8,7 @@ description: The `reload` command triggers a reload of configuration files for t Command: `consul reload` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/reload](https://www.consul.io/api-docs/agent#reload-agent) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/reload](/api-docs/agent#reload-agent) The `reload` command triggers a reload of configuration files for the agent. diff --git a/website/content/commands/rtt.mdx b/website/content/commands/rtt.mdx index 764157f66..926e08570 100644 --- a/website/content/commands/rtt.mdx +++ b/website/content/commands/rtt.mdx @@ -9,7 +9,7 @@ description: | Command: `consul rtt` -Corresponding HTTP API Endpoints: [\[GET\] /v1/coordinate/datacenters](https://www.consul.io/api-docs/coordinate#read-wan-coordinates), [\[GET\] /v1/coordinate/nodes](https://www.consul.io/api-docs/coordinate#read-lan-coordinates-for-all-nodes) +Corresponding HTTP API Endpoints: [\[GET\] /v1/coordinate/datacenters](/api-docs/coordinate#read-wan-coordinates), [\[GET\] /v1/coordinate/nodes](/api-docs/coordinate#read-lan-coordinates-for-all-nodes) The `rtt` command estimates the network round trip time between two nodes using Consul's network coordinate model of the cluster. diff --git a/website/content/commands/services/deregister.mdx b/website/content/commands/services/deregister.mdx index 12e597e0f..d3442d8d3 100644 --- a/website/content/commands/services/deregister.mdx +++ b/website/content/commands/services/deregister.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Services Deregister' Command: `consul services deregister` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/deregister/:service_id](https://www.consul.io/api-docs/agent/service#deregister-service) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/deregister/:service_id](/api-docs/agent/service#deregister-service) The `services deregister` command deregisters a service with the local agent. Note that this command can only deregister services that were registered diff --git a/website/content/commands/services/register.mdx b/website/content/commands/services/register.mdx index cea34bdfb..27b7494df 100644 --- a/website/content/commands/services/register.mdx +++ b/website/content/commands/services/register.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Services Register' Command: `consul services register` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/register](https://www.consul.io/api-docs/agent/service#register-service) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/agent/service/register](/api-docs/agent/service#register-service) The `services register` command registers a service with the local agent. This command returns after registration and must be paired with explicit diff --git a/website/content/commands/snapshot/restore.mdx b/website/content/commands/snapshot/restore.mdx index 06243b0e0..bc7d68fa1 100644 --- a/website/content/commands/snapshot/restore.mdx +++ b/website/content/commands/snapshot/restore.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Snapshot Restore' Command: `consul snapshot restore` -Corresponding HTTP API Endpoint: [\[PUT\] /v1/snapshot](https://www.consul.io/api-docs/snapshot#restore-snapshot) +Corresponding HTTP API Endpoint: [\[PUT\] /v1/snapshot](/api-docs/snapshot#restore-snapshot) The `snapshot restore` command is used to restore an atomic, point-in-time snapshot of the state of the Consul servers which includes key/value entries, diff --git a/website/content/commands/snapshot/save.mdx b/website/content/commands/snapshot/save.mdx index 2f177aa60..38b9a2708 100644 --- a/website/content/commands/snapshot/save.mdx +++ b/website/content/commands/snapshot/save.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Snapshot Save' Command: `consul snapshot save` -Corresponding HTTP API Endpoint: [\[GET\] /v1/snapshot](https://www.consul.io/api-docs/snapshot#generate-snapshot) +Corresponding HTTP API Endpoint: [\[GET\] /v1/snapshot](/api-docs/snapshot#generate-snapshot) The `snapshot save` command is used to retrieve an atomic, point-in-time snapshot of the state of the Consul servers which includes key/value entries, From 217e2dc656b773e4832644ab3551de1ea058c58a Mon Sep 17 00:00:00 2001 From: Dao Thanh Tung Date: Tue, 11 Jan 2022 21:52:45 +0800 Subject: [PATCH 178/404] URL-encode/decode resource names for HTTP API part 2 (#11957) --- agent/acl_endpoint.go | 35 ++++++++++++++++++++++++------- agent/catalog_endpoint.go | 25 +++++++++++++++++----- agent/config_endpoint.go | 12 +++++++++-- agent/coordinate_endpoint.go | 6 ++++-- agent/discovery_chain_endpoint.go | 7 +++++-- 5 files changed, 67 insertions(+), 18 deletions(-) diff --git a/agent/acl_endpoint.go b/agent/acl_endpoint.go index ef07e2a01..952b3431d 100644 --- a/agent/acl_endpoint.go +++ b/agent/acl_endpoint.go @@ -122,7 +122,10 @@ func (s *HTTPHandlers) ACLPolicyCRUD(resp http.ResponseWriter, req *http.Request return nil, MethodNotAllowedError{req.Method, []string{"GET", "PUT", "DELETE"}} } - policyID := strings.TrimPrefix(req.URL.Path, "/v1/acl/policy/") + policyID, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/policy/") + if err != nil { + return nil, err + } if policyID == "" && req.Method != "PUT" { return nil, BadRequestError{Reason: "Missing policy ID"} } @@ -167,7 +170,10 @@ func (s *HTTPHandlers) ACLPolicyReadByName(resp http.ResponseWriter, req *http.R return nil, aclDisabled } - policyName := strings.TrimPrefix(req.URL.Path, "/v1/acl/policy/name/") + policyName, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/policy/name/") + if err != nil { + return nil, err + } if policyName == "" { return nil, BadRequestError{Reason: "Missing policy Name"} } @@ -302,7 +308,10 @@ func (s *HTTPHandlers) ACLTokenCRUD(resp http.ResponseWriter, req *http.Request) return nil, MethodNotAllowedError{req.Method, []string{"GET", "PUT", "DELETE"}} } - tokenID := strings.TrimPrefix(req.URL.Path, "/v1/acl/token/") + tokenID, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/token/") + if err != nil { + return nil, err + } if strings.HasSuffix(tokenID, "/clone") && req.Method == "PUT" { tokenID = tokenID[:len(tokenID)-6] fn = s.ACLTokenClone @@ -521,7 +530,10 @@ func (s *HTTPHandlers) ACLRoleCRUD(resp http.ResponseWriter, req *http.Request) return nil, MethodNotAllowedError{req.Method, []string{"GET", "PUT", "DELETE"}} } - roleID := strings.TrimPrefix(req.URL.Path, "/v1/acl/role/") + roleID, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/role/") + if err != nil { + return nil, err + } if roleID == "" && req.Method != "PUT" { return nil, BadRequestError{Reason: "Missing role ID"} } @@ -534,7 +546,10 @@ func (s *HTTPHandlers) ACLRoleReadByName(resp http.ResponseWriter, req *http.Req return nil, aclDisabled } - roleName := strings.TrimPrefix(req.URL.Path, "/v1/acl/role/name/") + roleName, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/role/name/") + if err != nil { + return nil, err + } if roleName == "" { return nil, BadRequestError{Reason: "Missing role Name"} } @@ -685,7 +700,10 @@ func (s *HTTPHandlers) ACLBindingRuleCRUD(resp http.ResponseWriter, req *http.Re return nil, MethodNotAllowedError{req.Method, []string{"GET", "PUT", "DELETE"}} } - bindingRuleID := strings.TrimPrefix(req.URL.Path, "/v1/acl/binding-rule/") + bindingRuleID, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/binding-rule/") + if err != nil { + return nil, err + } if bindingRuleID == "" && req.Method != "PUT" { return nil, BadRequestError{Reason: "Missing binding rule ID"} } @@ -829,7 +847,10 @@ func (s *HTTPHandlers) ACLAuthMethodCRUD(resp http.ResponseWriter, req *http.Req return nil, MethodNotAllowedError{req.Method, []string{"GET", "PUT", "DELETE"}} } - methodName := strings.TrimPrefix(req.URL.Path, "/v1/acl/auth-method/") + methodName, err := getPathSuffixUnescaped(req.URL.Path, "/v1/acl/auth-method/") + if err != nil { + return nil, err + } if methodName == "" && req.Method != "PUT" { return nil, BadRequestError{Reason: "Missing auth method name"} } diff --git a/agent/catalog_endpoint.go b/agent/catalog_endpoint.go index 5853bd819..8443e31f3 100644 --- a/agent/catalog_endpoint.go +++ b/agent/catalog_endpoint.go @@ -3,7 +3,6 @@ package agent import ( "fmt" "net/http" - "strings" metrics "github.com/armon/go-metrics" "github.com/armon/go-metrics/prometheus" @@ -362,7 +361,11 @@ func (s *HTTPHandlers) catalogServiceNodes(resp http.ResponseWriter, req *http.R } // Pull out the service name - args.ServiceName = strings.TrimPrefix(req.URL.Path, pathPrefix) + var err error + args.ServiceName, err = getPathSuffixUnescaped(req.URL.Path, pathPrefix) + if err != nil { + return nil, err + } if args.ServiceName == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing service name") @@ -435,7 +438,11 @@ func (s *HTTPHandlers) CatalogNodeServices(resp http.ResponseWriter, req *http.R } // Pull out the node name - args.Node = strings.TrimPrefix(req.URL.Path, "/v1/catalog/node/") + var err error + args.Node, err = getPathSuffixUnescaped(req.URL.Path, "/v1/catalog/node/") + if err != nil { + return nil, err + } if args.Node == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing node name") @@ -498,7 +505,11 @@ func (s *HTTPHandlers) CatalogNodeServiceList(resp http.ResponseWriter, req *htt } // Pull out the node name - args.Node = strings.TrimPrefix(req.URL.Path, "/v1/catalog/node-services/") + var err error + args.Node, err = getPathSuffixUnescaped(req.URL.Path, "/v1/catalog/node-services/") + if err != nil { + return nil, err + } if args.Node == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing node name") @@ -547,7 +558,11 @@ func (s *HTTPHandlers) CatalogGatewayServices(resp http.ResponseWriter, req *htt } // Pull out the gateway's service name - args.ServiceName = strings.TrimPrefix(req.URL.Path, "/v1/catalog/gateway-services/") + var err error + args.ServiceName, err = getPathSuffixUnescaped(req.URL.Path, "/v1/catalog/gateway-services/") + if err != nil { + return nil, err + } if args.ServiceName == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing gateway name") diff --git a/agent/config_endpoint.go b/agent/config_endpoint.go index cc13b27de..9f916624e 100644 --- a/agent/config_endpoint.go +++ b/agent/config_endpoint.go @@ -32,7 +32,11 @@ func (s *HTTPHandlers) configGet(resp http.ResponseWriter, req *http.Request) (i if done := s.parse(resp, req, &args.Datacenter, &args.QueryOptions); done { return nil, nil } - pathArgs := strings.SplitN(strings.TrimPrefix(req.URL.Path, "/v1/config/"), "/", 2) + kindAndName, err := getPathSuffixUnescaped(req.URL.Path, "/v1/config/") + if err != nil { + return nil, err + } + pathArgs := strings.SplitN(kindAndName, "/", 2) switch len(pathArgs) { case 2: @@ -79,7 +83,11 @@ func (s *HTTPHandlers) configDelete(resp http.ResponseWriter, req *http.Request) var args structs.ConfigEntryRequest s.parseDC(req, &args.Datacenter) s.parseToken(req, &args.Token) - pathArgs := strings.SplitN(strings.TrimPrefix(req.URL.Path, "/v1/config/"), "/", 2) + kindAndName, err := getPathSuffixUnescaped(req.URL.Path, "/v1/config/") + if err != nil { + return nil, err + } + pathArgs := strings.SplitN(kindAndName, "/", 2) if len(pathArgs) != 2 { resp.WriteHeader(http.StatusNotFound) diff --git a/agent/coordinate_endpoint.go b/agent/coordinate_endpoint.go index 4a100e154..822ef5b39 100644 --- a/agent/coordinate_endpoint.go +++ b/agent/coordinate_endpoint.go @@ -4,7 +4,6 @@ import ( "fmt" "net/http" "sort" - "strings" "github.com/hashicorp/consul/agent/structs" ) @@ -103,7 +102,10 @@ func (s *HTTPHandlers) CoordinateNode(resp http.ResponseWriter, req *http.Reques return nil, nil } - node := strings.TrimPrefix(req.URL.Path, "/v1/coordinate/node/") + node, err := getPathSuffixUnescaped(req.URL.Path, "/v1/coordinate/node/") + if err != nil { + return nil, err + } args := structs.NodeSpecificRequest{Node: node} if done := s.parse(resp, req, &args.Datacenter, &args.QueryOptions); done { return nil, nil diff --git a/agent/discovery_chain_endpoint.go b/agent/discovery_chain_endpoint.go index 454bfb06e..ec3d46e9e 100644 --- a/agent/discovery_chain_endpoint.go +++ b/agent/discovery_chain_endpoint.go @@ -3,7 +3,6 @@ package agent import ( "fmt" "net/http" - "strings" "time" "github.com/mitchellh/mapstructure" @@ -19,7 +18,11 @@ func (s *HTTPHandlers) DiscoveryChainRead(resp http.ResponseWriter, req *http.Re return nil, nil } - args.Name = strings.TrimPrefix(req.URL.Path, "/v1/discovery-chain/") + var err error + args.Name, err = getPathSuffixUnescaped(req.URL.Path, "/v1/discovery-chain/") + if err != nil { + return nil, err + } if args.Name == "" { return nil, BadRequestError{Reason: "Missing chain name"} } From 24ea879264b3be111935e2c040aa228c0346256c Mon Sep 17 00:00:00 2001 From: Matt Siegel Date: Tue, 11 Jan 2022 09:41:54 -0500 Subject: [PATCH 179/404] Added some missing ACL info, updated details around some permissions, added missing HTTP API refs --- website/content/commands/acl/policy/read.mdx | 2 +- website/content/commands/config/delete.mdx | 19 +++++++++++++--- website/content/commands/config/list.mdx | 19 +++++++++++++--- website/content/commands/config/read.mdx | 19 +++++++++++++--- website/content/commands/config/write.mdx | 22 ++++++++++++++++--- website/content/commands/intention/check.mdx | 17 ++++++++++++++ website/content/commands/intention/create.mdx | 15 ++++++++++--- website/content/commands/intention/delete.mdx | 17 ++++++++++---- website/content/commands/intention/get.mdx | 17 ++++++++++---- website/content/commands/intention/list.mdx | 17 ++++++++++++++ website/content/commands/intention/match.mdx | 15 ++++++++++--- website/content/commands/keyring.mdx | 13 +++++++++++ website/content/commands/kv/export.mdx | 8 +++++++ website/content/commands/kv/import.mdx | 8 +++++++ website/content/commands/namespace/list.mdx | 9 +++++--- website/content/commands/namespace/read.mdx | 9 +++++--- website/content/commands/namespace/write.mdx | 8 +++++++ website/content/commands/rtt.mdx | 10 ++++++--- 18 files changed, 208 insertions(+), 36 deletions(-) diff --git a/website/content/commands/acl/policy/read.mdx b/website/content/commands/acl/policy/read.mdx index 0b9bdf45d..0f45b18cb 100644 --- a/website/content/commands/acl/policy/read.mdx +++ b/website/content/commands/acl/policy/read.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: ACL Policy Read' Command: `consul acl policy read` -Corresponding HTTP API Endpoint: [\[GET\] /v1/acl/policy/:id](/api-docs/acl/policies#read-a-policy) +Corresponding HTTP API Endpoints: [\[GET\] /v1/acl/policy/:id](/api-docs/acl/policies#read-a-policy), [\[GET\] /v1/acl/policy/name/:name](/api-docs/acl/policies#read-a-policy-by-name) The `acl policy read` command reads and displays a policies details. diff --git a/website/content/commands/config/delete.mdx b/website/content/commands/config/delete.mdx index fb3b6e553..a869d17aa 100644 --- a/website/content/commands/config/delete.mdx +++ b/website/content/commands/config/delete.mdx @@ -17,9 +17,22 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ----------------------------------- | -| `service:write` or `operator:write` | +| ACL Required1 | +| ------------------------------------------------------------- | +| `service:write`
    `operator:write`
    `intentions:write` | + +1 The ACL required depends on the config entry kind being deleted: + +| Config Entry Kind | Required ACL | +| ------------------- | ------------------ | +| ingress-gateway | `operator:write` | +| proxy-defaults | `operator:write` | +| service-defaults | `service:write` | +| service-intentions | `intentions:write` | +| service-resolver | `service:write` | +| service-router | `service:write` | +| service-splitter | `service:write` | +| terminating-gateway | `operator:write ` | ## Usage diff --git a/website/content/commands/config/list.mdx b/website/content/commands/config/list.mdx index 26e3ab203..a2e5a7c49 100644 --- a/website/content/commands/config/list.mdx +++ b/website/content/commands/config/list.mdx @@ -17,9 +17,22 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| -------------- | -| `service:read` | +| ACL Required1 | +| ------------------------------------- | +| `service:read`
    `intentions:read` | + +1 The ACL required depends on the config entry kind being read: + +| Config Entry Kind | Required ACL | +| ------------------- | ----------------- | +| ingress-gateway | `service:read` | +| proxy-defaults | `` | +| service-defaults | `service:read` | +| service-intentions | `intentions:read` | +| service-resolver | `service:read` | +| service-router | `service:read` | +| service-splitter | `service:read` | +| terminating-gateway | `service:read` | ## Usage diff --git a/website/content/commands/config/read.mdx b/website/content/commands/config/read.mdx index c1984d48b..3df4009b3 100644 --- a/website/content/commands/config/read.mdx +++ b/website/content/commands/config/read.mdx @@ -18,9 +18,22 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| -------------- | -| `service:read` | +| ACL Required1 | +| ------------------------------------- | +| `service:read`
    `intentions:read` | + +1 The ACL required depends on the config entry kind being read: + +| Config Entry Kind | Required ACL | +| ------------------- | ----------------- | +| ingress-gateway | `service:read` | +| proxy-defaults | `` | +| service-defaults | `service:read` | +| service-intentions | `intentions:read` | +| service-resolver | `service:read` | +| service-router | `service:read` | +| service-splitter | `service:read` | +| terminating-gateway | `service:read` | ## Usage diff --git a/website/content/commands/config/write.mdx b/website/content/commands/config/write.mdx index 5677a5db8..d577999b4 100644 --- a/website/content/commands/config/write.mdx +++ b/website/content/commands/config/write.mdx @@ -17,9 +17,25 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ----------------------------------- | -| `service:write` or `operator:write` | +| ACL Required1 | +| ------------------------------------------------------------- | +| `service:write`
    `operator:write`
    `intentions:write` | + +

    + 1 The actual ACL required depends on the config entry kind being + updated: +

    + +| Config Entry Kind | Required ACL | +| ------------------- | ------------------ | +| ingress-gateway | `operator:write` | +| proxy-defaults | `operator:write` | +| service-defaults | `service:write` | +| service-intentions | `intentions:write` | +| service-resolver | `service:write` | +| service-router | `service:write` | +| service-splitter | `service:write` | +| terminating-gateway | `operator:write` | ## Usage diff --git a/website/content/commands/intention/check.mdx b/website/content/commands/intention/check.mdx index 21cb33422..a8641b653 100644 --- a/website/content/commands/intention/check.mdx +++ b/website/content/commands/intention/check.mdx @@ -23,6 +23,23 @@ intention read permissions and don't evaluate the result. defined as _deny_ intentions during evaluation, as this endpoint is only suited for networking layer 4 (e.g. TCP) integration. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ----------------------------- | +| `intentions:read`1 | + +

    + 1 Intention ACL rules are specified as part of a{' '} + service rule. See{' '} + + Intention Management Permissions + {' '} + for more details. +

    + ## Usage Usage: `consul intention check [options] SRC DST` diff --git a/website/content/commands/intention/create.mdx b/website/content/commands/intention/create.mdx index 505fbe970..37b70b92b 100644 --- a/website/content/commands/intention/create.mdx +++ b/website/content/commands/intention/create.mdx @@ -21,9 +21,18 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ------------------ | -| `intentions:write` | +| ACL Required | +| ------------------------------ | +| `intentions:write`1 | + +

    + 1 Intention ACL rules are specified as part of a{' '} + service rule. See{' '} + + Intention Management Permissions + {' '} + for more details. +

    ## Usage diff --git a/website/content/commands/intention/delete.mdx b/website/content/commands/intention/delete.mdx index 07f4a95fe..d2b58545e 100644 --- a/website/content/commands/intention/delete.mdx +++ b/website/content/commands/intention/delete.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention Delete' Command: `consul intention delete` -Corresponding HTTP API Endpoint: [\[DELETE\] /v1/connect/intentions/exact](/api-docs/connect/intentions#delete-intention-by-name) +Corresponding HTTP API Endpoints: [\[DELETE\] /v1/connect/intentions/exact](/api-docs/connect/intentions#delete-intention-by-name), [\[DELETE\] /v1/connect/intentions/:uuid](/api-docs/connect/intentions#delete-intention-by-id) The `intention delete` command deletes a matching intention. @@ -15,9 +15,18 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ------------------ | -| `intentions:write` | +| ACL Required | +| ------------------------------ | +| `intentions:write`1 | + +

    + 1 Intention ACL rules are specified as part of a{' '} + service rule. See{' '} + + Intention Management Permissions + {' '} + for more details. +

    -> **Deprecated** - The one argument form of this command is deprecated in Consul 1.9.0. Intentions no longer need IDs when represented as diff --git a/website/content/commands/intention/get.mdx b/website/content/commands/intention/get.mdx index 438358b66..b1252a1b4 100644 --- a/website/content/commands/intention/get.mdx +++ b/website/content/commands/intention/get.mdx @@ -7,7 +7,7 @@ page_title: 'Commands: Intention Get' Command: `consul intention get` -Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions/exact](/api-docs/connect/intentions##read-specific-intention-by-name) +Corresponding HTTP API Endpoints: [\[GET\] /v1/connect/intentions/exact](/api-docs/connect/intentions#read-specific-intention-by-name), [\[GET\] /v1/connect/intentions/:uuid](/api-docs/connect/intentions#read-specific-intention-by-id) The `intention get` command shows a single intention. @@ -20,9 +20,18 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ----------------- | -| `intentions:read` | +| ACL Required | +| ----------------------------- | +| `intentions:read`1 | + +

    + 1 Intention ACL rules are specified as part of a{' '} + service rule. See{' '} + + Intention Management Permissions + {' '} + for more details. +

    ## Usage diff --git a/website/content/commands/intention/list.mdx b/website/content/commands/intention/list.mdx index e3d546877..03dd93248 100644 --- a/website/content/commands/intention/list.mdx +++ b/website/content/commands/intention/list.mdx @@ -11,6 +11,23 @@ Corresponding HTTP API Endpoint: [\[GET\] /v1/connect/intentions](/api-docs/conn The `intention list` command shows all intentions including ID and precedence. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ----------------------------- | +| `intentions:read`1 | + +

    + 1 Intention ACL rules are specified as part of a{' '} + service rule. See{' '} + + Intention Management Permissions + {' '} + for more details. +

    + ## Usage Usage: diff --git a/website/content/commands/intention/match.mdx b/website/content/commands/intention/match.mdx index ee587cb5c..49694551a 100644 --- a/website/content/commands/intention/match.mdx +++ b/website/content/commands/intention/match.mdx @@ -20,9 +20,18 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ----------------- | -| `intentions:read` | +| ACL Required | +| ----------------------------- | +| `intentions:read`1 | + +

    + 1 Intention ACL rules are specified as part of a{' '} + service rule. See{' '} + + Intention Management Permissions + {' '} + for more details. +

    ## Usage diff --git a/website/content/commands/keyring.mdx b/website/content/commands/keyring.mdx index 84283a05c..0d50260f9 100644 --- a/website/content/commands/keyring.mdx +++ b/website/content/commands/keyring.mdx @@ -29,6 +29,19 @@ All variations of the `keyring` command return 0 if all nodes reply and there are no errors. If any node fails to reply or reports failure, the exit code will be 1. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required1 | +| ----------------------------------- | +| `keyring:read`
    `keyring:write` | + +

    + 1 The actual ACL required depends on the flags being used in the + command. +

    + ## Usage Usage: `consul keyring [options]` diff --git a/website/content/commands/kv/export.mdx b/website/content/commands/kv/export.mdx index ce6f1e6bf..97f675966 100644 --- a/website/content/commands/kv/export.mdx +++ b/website/content/commands/kv/export.mdx @@ -12,6 +12,14 @@ prefix from Consul's KV store, and write a JSON representation to stdout. This can be used with the command "consul kv import" to move entire trees between Consul clusters. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `key:read` | + ## Usage Usage: `consul kv export [options] [PREFIX]` diff --git a/website/content/commands/kv/import.mdx b/website/content/commands/kv/import.mdx index 6c5f1f1ee..ab9acf229 100644 --- a/website/content/commands/kv/import.mdx +++ b/website/content/commands/kv/import.mdx @@ -10,6 +10,14 @@ Command: `consul kv import` The `kv import` command is used to import KV pairs from the JSON representation generated by the `kv export` command. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ------------ | +| `key:write` | + ## Usage Usage: `consul kv import [options] [DATA]` diff --git a/website/content/commands/namespace/list.mdx b/website/content/commands/namespace/list.mdx index 037ef1369..1ce45328c 100644 --- a/website/content/commands/namespace/list.mdx +++ b/website/content/commands/namespace/list.mdx @@ -20,9 +20,12 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ------------------------------------- | -| `operator:read` or `namespace:* read` | +| ACL Required | +| ------------------------------------------------- | +| `operator:read` or `namespace:*:read`1 | + +1 Access can be granted to list the Namespace if the token used when making +the request has been granted any access in the namespace (read, list or write). ## Usage diff --git a/website/content/commands/namespace/read.mdx b/website/content/commands/namespace/read.mdx index bf31cd228..b008977b7 100644 --- a/website/content/commands/namespace/read.mdx +++ b/website/content/commands/namespace/read.mdx @@ -19,9 +19,12 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ------------------------------------- | -| `operator:read` or `namespace:* read` | +| ACL Required | +| ------------------------------------------------- | +| `operator:read` or `namespace:*:read`1 | + +1 Access can be granted to list the Namespace if the token used when making +the request has been granted any access in the namespace (read, list or write). ## Usage diff --git a/website/content/commands/namespace/write.mdx b/website/content/commands/namespace/write.mdx index f9e533f14..1fe3e5d69 100644 --- a/website/content/commands/namespace/write.mdx +++ b/website/content/commands/namespace/write.mdx @@ -13,6 +13,14 @@ Corresponding HTTP API Endpoint: [\[PUT\] /v1/namespace/:name](/api-docs/namespa This `namespace write` command creates or updates a namespace's configuration from its full definition. This was added in Consul Enterprise 1.7.0. +The table below shows this command's [required ACLs](/api#authentication). Configuration of +[blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) +are not supported from commands, but may be from the corresponding HTTP endpoint. + +| ACL Required | +| ---------------- | +| `operator:write` | + ## Usage Usage: `consul namespace write ` diff --git a/website/content/commands/rtt.mdx b/website/content/commands/rtt.mdx index 926e08570..9eed062c9 100644 --- a/website/content/commands/rtt.mdx +++ b/website/content/commands/rtt.mdx @@ -21,9 +21,13 @@ The table below shows this command's [required ACLs](/api#authentication). Confi [blocking queries](/api/features/blocking) and [agent caching](/api/features/caching) are not supported from commands, but may be from the corresponding HTTP endpoint. -| ACL Required | -| ------------ | -| `node:read` | +| ACL Required | +| ----------------------- | +| `node:read`1 | + +

    + 1 When referencing WAN coordinates, no ACL permission is needed. +

    ## Usage From fbb9f5cdf55cf76d70d19a09112b7715927e27a3 Mon Sep 17 00:00:00 2001 From: Kenia <19161242+kaxcode@users.noreply.github.com> Date: Tue, 11 Jan 2022 10:04:06 -0500 Subject: [PATCH 180/404] ui: Adding Partition to topology card (#11805) --- .../topology-metrics/card/index.hbs | 41 +- .../topology-metrics/card/index.scss | 41 +- .../components/topology-metrics/layout.scss | 7 - .../app/components/topology-metrics/skin.scss | 2 +- .../app/styles/base/icons/base-variables.scss | 3101 ++++++----------- .../styles/base/icons/icon-placeholders.scss | 10 + .../v1/internal/ui/service-topology/_ | 6 +- 7 files changed, 1116 insertions(+), 2092 deletions(-) diff --git a/ui/packages/consul-ui/app/components/topology-metrics/card/index.hbs b/ui/packages/consul-ui/app/components/topology-metrics/card/index.hbs index 1a6417cf5..a4f064b25 100644 --- a/ui/packages/consul-ui/app/components/topology-metrics/card/index.hbs +++ b/ui/packages/consul-ui/app/components/topology-metrics/card/index.hbs @@ -29,18 +29,35 @@ {{/if}}
    - {{#if (and (env 'CONSUL_NSPACES_ENABLED') (not-eq @item.Namespace @service.Namespace))}} -
    -
    - - Namespace - -
    -
    - {{@item.Namespace}} -
    -
    - {{/if}} + {{#if (and (can 'use partitions') (can 'use nspaces'))}} +
    + {{#if (not-eq @item.Partition @service.Partition)}} +
    +
    + + Admin Partition + +
    +
    + {{@item.Partition}} +
    +
    + {{/if}} + + {{#if (or (not-eq @item.Partition @service.Partition) (not-eq @item.Namespace @service.Namespace))}} +
    +
    + + Namespace + +
    +
    + {{@item.Namespace}} +
    +
    + {{/if}} +
    + {{/if}} {{#if (not-eq @item.Source 'routing-config')}} diff --git a/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss b/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss index 72d5c4ee1..0335b76e5 100644 --- a/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/card/index.scss @@ -23,7 +23,6 @@ padding: 12px !important; } div { - display: inline-flex; dl { display: inline-flex; margin-right: 8px; @@ -42,11 +41,8 @@ .health dt::before { margin-top: 2px; } - .nspace dt::before { - @extend %with-folder-outline-mask, %as-pseudo; - } - .health dt::before { - @extend %with-help-circle-outline-mask, %as-pseudo; + .partition dt::before { + @extend %with-user-team-mask, %as-pseudo; } .nspace dt::before { @extend %with-folder-outline-mask, %as-pseudo; @@ -54,6 +50,10 @@ .health dt::before { @extend %with-help-circle-outline-mask, %as-pseudo; } + .health dt::before { + @extend %with-help-circle-outline-mask, %as-pseudo; + } + .partition dt::before, .nspace dt::before, .health dt::before { background-color: rgb(var(--tone-gray-500)); @@ -77,5 +77,34 @@ } .details { padding: 0 12px 12px 12px; + > *:not(:last-child) { + padding-bottom: 6px; + } + .group { + display: grid; + grid-template-columns: 20px 1fr; + grid-template-rows: repeat(2, 1fr); + grid-template-areas: + 'partition partition' + 'union namespace'; + span { + display: inline-block; + grid-area: union; + padding-left: 7px; + margin-right: 0px; + } + span::before { + margin-right: 0px; + @extend %with-union-mask, %as-pseudo; + background-color: rgb(var(--tone-gray-500)); + } + dl:first-child { + grid-area: partition; + padding-bottom: 6px; + } + dl:nth-child(2) { + grid-area: namespace; + } + } } } diff --git a/ui/packages/consul-ui/app/components/topology-metrics/layout.scss b/ui/packages/consul-ui/app/components/topology-metrics/layout.scss index 66c1f21c2..215efad41 100644 --- a/ui/packages/consul-ui/app/components/topology-metrics/layout.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/layout.scss @@ -39,13 +39,6 @@ #upstream-container { padding: 12px; } -#downstream-container div:first-child { - display: inline-flex; - span::before { - @extend %with-info-circle-outline-mask, %as-pseudo; - margin-left: 4px; - } -} #upstream-column #upstream-container:not(:last-child) { margin-bottom: 8px; } diff --git a/ui/packages/consul-ui/app/components/topology-metrics/skin.scss b/ui/packages/consul-ui/app/components/topology-metrics/skin.scss index 026db0f67..06fe49588 100644 --- a/ui/packages/consul-ui/app/components/topology-metrics/skin.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/skin.scss @@ -16,7 +16,7 @@ #upstream-container { background-color: rgb(var(--tone-gray-100)); } -#downstream-container div:first-child { +#downstream-container > div:first-child { display: inline-flex; span::before { @extend %with-info-circle-outline-mask, %as-pseudo; diff --git a/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss index 5149201ec..673e9d8a8 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss @@ -1,5164 +1,4135 @@ - %activity-16-svg-prop { --activity-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %activity-24-svg-prop { --activity-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-circle-16-svg-prop { --alert-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-circle-24-svg-prop { --alert-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-circle-fill-16-svg-prop { --alert-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-circle-fill-24-svg-prop { --alert-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-circle-fill-svg-prop { --alert-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-circle-outline-svg-prop { --alert-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-octagon-16-svg-prop { --alert-octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-octagon-24-svg-prop { --alert-octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-octagon-fill-16-svg-prop { --alert-octagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-octagon-fill-24-svg-prop { --alert-octagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-triangle-16-svg-prop { --alert-triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-triangle-24-svg-prop { --alert-triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-triangle-fill-16-svg-prop { --alert-triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-triangle-fill-24-svg-prop { --alert-triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alert-triangle-svg-prop { --alert-triangle-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alibaba-16-svg-prop { --alibaba-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alibaba-24-svg-prop { --alibaba-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alibaba-color-16-svg-prop { --alibaba-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %alibaba-color-24-svg-prop { --alibaba-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-center-16-svg-prop { --align-center-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-center-24-svg-prop { --align-center-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-justify-16-svg-prop { --align-justify-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-justify-24-svg-prop { --align-justify-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-left-16-svg-prop { --align-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-left-24-svg-prop { --align-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-right-16-svg-prop { --align-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %align-right-24-svg-prop { --align-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %apple-16-svg-prop { --apple-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %apple-24-svg-prop { --apple-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %apple-color-16-svg-prop { --apple-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %apple-color-24-svg-prop { --apple-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %archive-16-svg-prop { --archive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %archive-24-svg-prop { --archive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-16-svg-prop { --arrow-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-24-svg-prop { --arrow-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-circle-16-svg-prop { --arrow-down-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-circle-24-svg-prop { --arrow-down-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-left-16-svg-prop { --arrow-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-left-24-svg-prop { --arrow-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-right-16-svg-prop { --arrow-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-right-24-svg-prop { --arrow-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-down-svg-prop { --arrow-down-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-left-16-svg-prop { --arrow-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-left-24-svg-prop { --arrow-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-left-circle-16-svg-prop { --arrow-left-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-left-circle-24-svg-prop { --arrow-left-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-left-svg-prop { --arrow-left-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-right-16-svg-prop { --arrow-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-right-24-svg-prop { --arrow-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-right-circle-16-svg-prop { --arrow-right-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-right-circle-24-svg-prop { --arrow-right-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-right-svg-prop { --arrow-right-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-16-svg-prop { --arrow-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-24-svg-prop { --arrow-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-circle-16-svg-prop { --arrow-up-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-circle-24-svg-prop { --arrow-up-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-left-16-svg-prop { --arrow-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-left-24-svg-prop { --arrow-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-right-16-svg-prop { --arrow-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-right-24-svg-prop { --arrow-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %arrow-up-svg-prop { --arrow-up-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %at-sign-16-svg-prop { --at-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %at-sign-24-svg-prop { --at-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %auth0-16-svg-prop { --auth0-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %auth0-24-svg-prop { --auth0-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %auth0-color-16-svg-prop { --auth0-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %auth0-color-24-svg-prop { --auth0-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %auto-apply-16-svg-prop { --auto-apply-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %auto-apply-24-svg-prop { --auto-apply-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %award-16-svg-prop { --award-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %award-24-svg-prop { --award-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %aws-16-svg-prop { --aws-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %aws-24-svg-prop { --aws-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %aws-color-16-svg-prop { --aws-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %aws-color-24-svg-prop { --aws-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-16-svg-prop { --azure-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-24-svg-prop { --azure-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-color-16-svg-prop { --azure-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-color-24-svg-prop { --azure-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-devops-16-svg-prop { --azure-devops-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-devops-24-svg-prop { --azure-devops-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-devops-color-16-svg-prop { --azure-devops-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %azure-devops-color-24-svg-prop { --azure-devops-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bar-chart-16-svg-prop { --bar-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bar-chart-24-svg-prop { --bar-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bar-chart-alt-16-svg-prop { --bar-chart-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bar-chart-alt-24-svg-prop { --bar-chart-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %battery-16-svg-prop { --battery-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %battery-24-svg-prop { --battery-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %battery-charging-16-svg-prop { --battery-charging-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %battery-charging-24-svg-prop { --battery-charging-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %beaker-16-svg-prop { --beaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %beaker-24-svg-prop { --beaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-16-svg-prop { --bell-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-24-svg-prop { --bell-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-active-16-svg-prop { --bell-active-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-active-24-svg-prop { --bell-active-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-active-fill-16-svg-prop { --bell-active-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-active-fill-24-svg-prop { --bell-active-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-off-16-svg-prop { --bell-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bell-off-24-svg-prop { --bell-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bitbucket-16-svg-prop { --bitbucket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bitbucket-24-svg-prop { --bitbucket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bitbucket-color-16-svg-prop { --bitbucket-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bitbucket-color-24-svg-prop { --bitbucket-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bolt-svg-prop { --bolt-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-16-svg-prop { --bookmark-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-24-svg-prop { --bookmark-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-add-16-svg-prop { --bookmark-add-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-add-24-svg-prop { --bookmark-add-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-add-fill-16-svg-prop { --bookmark-add-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-add-fill-24-svg-prop { --bookmark-add-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-fill-16-svg-prop { --bookmark-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-fill-24-svg-prop { --bookmark-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-remove-16-svg-prop { --bookmark-remove-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-remove-24-svg-prop { --bookmark-remove-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-remove-fill-16-svg-prop { --bookmark-remove-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bookmark-remove-fill-24-svg-prop { --bookmark-remove-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bottom-16-svg-prop { --bottom-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bottom-24-svg-prop { --bottom-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %box-16-svg-prop { --box-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %box-24-svg-prop { --box-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %box-check-fill-svg-prop { --box-check-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %box-outline-svg-prop { --box-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %briefcase-16-svg-prop { --briefcase-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %briefcase-24-svg-prop { --briefcase-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %broadcast-svg-prop { --broadcast-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bug-16-svg-prop { --bug-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bug-24-svg-prop { --bug-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %bug-svg-prop { --bug-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %build-16-svg-prop { --build-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %build-24-svg-prop { --build-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %calendar-16-svg-prop { --calendar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %calendar-24-svg-prop { --calendar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %calendar-svg-prop { --calendar-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %camera-16-svg-prop { --camera-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %camera-24-svg-prop { --camera-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %camera-off-16-svg-prop { --camera-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %camera-off-24-svg-prop { --camera-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cancel-circle-fill-svg-prop { --cancel-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cancel-circle-outline-svg-prop { --cancel-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cancel-plain-svg-prop { --cancel-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cancel-square-fill-svg-prop { --cancel-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cancel-square-outline-svg-prop { --cancel-square-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %caret-16-svg-prop { --caret-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %caret-24-svg-prop { --caret-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %caret-down-svg-prop { --caret-down-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %caret-up-svg-prop { --caret-up-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cast-16-svg-prop { --cast-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cast-24-svg-prop { --cast-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %certificate-16-svg-prop { --certificate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %certificate-24-svg-prop { --certificate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %change-16-svg-prop { --change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %change-24-svg-prop { --change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %change-circle-16-svg-prop { --change-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %change-circle-24-svg-prop { --change-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %change-square-16-svg-prop { --change-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %change-square-24-svg-prop { --change-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-16-svg-prop { --check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-24-svg-prop { --check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-circle-16-svg-prop { --check-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-circle-24-svg-prop { --check-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-circle-fill-16-svg-prop { --check-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-circle-fill-24-svg-prop { --check-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-circle-fill-svg-prop { --check-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-circle-outline-svg-prop { --check-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-diamond-16-svg-prop { --check-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-diamond-24-svg-prop { --check-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-diamond-fill-16-svg-prop { --check-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-diamond-fill-24-svg-prop { --check-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-hexagon-16-svg-prop { --check-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-hexagon-24-svg-prop { --check-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-hexagon-fill-16-svg-prop { --check-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-hexagon-fill-24-svg-prop { --check-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-plain-svg-prop { --check-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-square-16-svg-prop { --check-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-square-24-svg-prop { --check-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-square-fill-16-svg-prop { --check-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %check-square-fill-24-svg-prop { --check-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-down-16-svg-prop { --chevron-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-down-24-svg-prop { --chevron-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-down-svg-prop { --chevron-down-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-left-16-svg-prop { --chevron-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-left-24-svg-prop { --chevron-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-left-svg-prop { --chevron-left-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-right-16-svg-prop { --chevron-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-right-24-svg-prop { --chevron-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-right-svg-prop { --chevron-right-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-up-16-svg-prop { --chevron-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-up-24-svg-prop { --chevron-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevron-up-svg-prop { --chevron-up-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-down-16-svg-prop { --chevrons-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-down-24-svg-prop { --chevrons-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-left-16-svg-prop { --chevrons-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-left-24-svg-prop { --chevrons-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-right-16-svg-prop { --chevrons-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-right-24-svg-prop { --chevrons-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-up-16-svg-prop { --chevrons-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %chevrons-up-24-svg-prop { --chevrons-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-16-svg-prop { --circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-24-svg-prop { --circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-dot-16-svg-prop { --circle-dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-dot-24-svg-prop { --circle-dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-fill-16-svg-prop { --circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-fill-24-svg-prop { --circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-half-16-svg-prop { --circle-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %circle-half-24-svg-prop { --circle-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clipboard-16-svg-prop { --clipboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clipboard-24-svg-prop { --clipboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clipboard-checked-16-svg-prop { --clipboard-checked-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clipboard-checked-24-svg-prop { --clipboard-checked-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clipboard-copy-16-svg-prop { --clipboard-copy-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clipboard-copy-24-svg-prop { --clipboard-copy-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clock-16-svg-prop { --clock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clock-24-svg-prop { --clock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clock-fill-svg-prop { --clock-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %clock-outline-svg-prop { --clock-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-16-svg-prop { --cloud-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-24-svg-prop { --cloud-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-check-16-svg-prop { --cloud-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-check-24-svg-prop { --cloud-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-cross-svg-prop { --cloud-cross-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-download-16-svg-prop { --cloud-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-download-24-svg-prop { --cloud-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-lightning-16-svg-prop { --cloud-lightning-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-lightning-24-svg-prop { --cloud-lightning-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-lock-16-svg-prop { --cloud-lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-lock-24-svg-prop { --cloud-lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-off-16-svg-prop { --cloud-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-off-24-svg-prop { --cloud-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-upload-16-svg-prop { --cloud-upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-upload-24-svg-prop { --cloud-upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-x-16-svg-prop { --cloud-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cloud-x-24-svg-prop { --cloud-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %code-16-svg-prop { --code-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %code-24-svg-prop { --code-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %code-svg-prop { --code-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %collections-16-svg-prop { --collections-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %collections-24-svg-prop { --collections-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %command-16-svg-prop { --command-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %command-24-svg-prop { --command-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %compass-16-svg-prop { --compass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %compass-24-svg-prop { --compass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %connection-16-svg-prop { --connection-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %connection-24-svg-prop { --connection-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %connection-gateway-16-svg-prop { --connection-gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %connection-gateway-24-svg-prop { --connection-gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %console-svg-prop { --console-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %copy-action-svg-prop { --copy-action-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %copy-success-svg-prop { --copy-success-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-down-left-16-svg-prop { --corner-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-down-left-24-svg-prop { --corner-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-down-right-16-svg-prop { --corner-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-down-right-24-svg-prop { --corner-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-left-down-16-svg-prop { --corner-left-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-left-down-24-svg-prop { --corner-left-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-left-up-16-svg-prop { --corner-left-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-left-up-24-svg-prop { --corner-left-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-right-down-16-svg-prop { --corner-right-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-right-down-24-svg-prop { --corner-right-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-right-up-16-svg-prop { --corner-right-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-right-up-24-svg-prop { --corner-right-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-up-left-16-svg-prop { --corner-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-up-left-24-svg-prop { --corner-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-up-right-16-svg-prop { --corner-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %corner-up-right-24-svg-prop { --corner-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cpu-16-svg-prop { --cpu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %cpu-24-svg-prop { --cpu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %credit-card-16-svg-prop { --credit-card-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %credit-card-24-svg-prop { --credit-card-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %crop-16-svg-prop { --crop-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %crop-24-svg-prop { --crop-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %crosshair-16-svg-prop { --crosshair-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %crosshair-24-svg-prop { --crosshair-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dashboard-16-svg-prop { --dashboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dashboard-24-svg-prop { --dashboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %database-16-svg-prop { --database-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %database-24-svg-prop { --database-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %database-svg-prop { --database-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %delay-16-svg-prop { --delay-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %delay-24-svg-prop { --delay-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %delay-svg-prop { --delay-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %delete-16-svg-prop { --delete-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %delete-24-svg-prop { --delete-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %deny-alt-svg-prop { --deny-alt-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %deny-color-svg-prop { --deny-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %deny-default-svg-prop { --deny-default-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %diamond-16-svg-prop { --diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %diamond-24-svg-prop { --diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %diamond-fill-16-svg-prop { --diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %diamond-fill-24-svg-prop { --diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %disabled-svg-prop { --disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %disc-16-svg-prop { --disc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %disc-24-svg-prop { --disc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %discussion-circle-16-svg-prop { --discussion-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %discussion-circle-24-svg-prop { --discussion-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %discussion-square-16-svg-prop { --discussion-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %discussion-square-24-svg-prop { --discussion-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docker-16-svg-prop { --docker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docker-24-svg-prop { --docker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docker-color-16-svg-prop { --docker-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docker-color-24-svg-prop { --docker-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-16-svg-prop { --docs-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-24-svg-prop { --docs-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-download-16-svg-prop { --docs-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-download-24-svg-prop { --docs-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-link-16-svg-prop { --docs-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-link-24-svg-prop { --docs-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %docs-svg-prop { --docs-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dollar-sign-16-svg-prop { --dollar-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dollar-sign-24-svg-prop { --dollar-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dot-16-svg-prop { --dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dot-24-svg-prop { --dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dot-half-16-svg-prop { --dot-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %dot-half-24-svg-prop { --dot-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %download-16-svg-prop { --download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %download-24-svg-prop { --download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %download-svg-prop { --download-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %droplet-16-svg-prop { --droplet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %droplet-24-svg-prop { --droplet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %duplicate-16-svg-prop { --duplicate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %duplicate-24-svg-prop { --duplicate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %edit-16-svg-prop { --edit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %edit-24-svg-prop { --edit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %edit-svg-prop { --edit-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %entry-point-16-svg-prop { --entry-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %entry-point-24-svg-prop { --entry-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %envelope-sealed-fill-svg-prop { --envelope-sealed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %envelope-sealed-outline-svg-prop { --envelope-sealed-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %envelope-unsealed--outline-svg-prop { --envelope-unsealed--outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %envelope-unsealed-fill-svg-prop { --envelope-unsealed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %event-16-svg-prop { --event-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %event-24-svg-prop { --event-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %exit-point-16-svg-prop { --exit-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %exit-point-24-svg-prop { --exit-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %exit-svg-prop { --exit-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %expand-less-svg-prop { --expand-less-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %expand-more-svg-prop { --expand-more-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %external-link-16-svg-prop { --external-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %external-link-24-svg-prop { --external-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %eye-16-svg-prop { --eye-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %eye-24-svg-prop { --eye-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %eye-off-16-svg-prop { --eye-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %eye-off-24-svg-prop { --eye-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %f5-16-svg-prop { --f5-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %f5-24-svg-prop { --f5-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %f5-color-16-svg-prop { --f5-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %f5-color-24-svg-prop { --f5-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %fast-forward-16-svg-prop { --fast-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %fast-forward-24-svg-prop { --fast-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-16-svg-prop { --file-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-24-svg-prop { --file-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-change-16-svg-prop { --file-change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-change-24-svg-prop { --file-change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-check-16-svg-prop { --file-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-check-24-svg-prop { --file-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-diff-16-svg-prop { --file-diff-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-diff-24-svg-prop { --file-diff-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-fill-svg-prop { --file-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-minus-16-svg-prop { --file-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-minus-24-svg-prop { --file-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-outline-svg-prop { --file-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-plus-16-svg-prop { --file-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-plus-24-svg-prop { --file-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-source-16-svg-prop { --file-source-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-source-24-svg-prop { --file-source-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-text-16-svg-prop { --file-text-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-text-24-svg-prop { --file-text-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-x-16-svg-prop { --file-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %file-x-24-svg-prop { --file-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %files-16-svg-prop { --files-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %files-24-svg-prop { --files-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %film-16-svg-prop { --film-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %film-24-svg-prop { --film-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-16-svg-prop { --filter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-24-svg-prop { --filter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-circle-16-svg-prop { --filter-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-circle-24-svg-prop { --filter-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-fill-16-svg-prop { --filter-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-fill-24-svg-prop { --filter-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %filter-svg-prop { --filter-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %fingerprint-16-svg-prop { --fingerprint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %fingerprint-24-svg-prop { --fingerprint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %flag-16-svg-prop { --flag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %flag-24-svg-prop { --flag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %flag-svg-prop { --flag-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-16-svg-prop { --folder-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-24-svg-prop { --folder-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-fill-16-svg-prop { --folder-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-fill-24-svg-prop { --folder-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-fill-svg-prop { --folder-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-minus-16-svg-prop { --folder-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-minus-24-svg-prop { --folder-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-minus-fill-16-svg-prop { --folder-minus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-minus-fill-24-svg-prop { --folder-minus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-outline-svg-prop { --folder-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-plus-16-svg-prop { --folder-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-plus-24-svg-prop { --folder-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-plus-fill-16-svg-prop { --folder-plus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-plus-fill-24-svg-prop { --folder-plus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-star-16-svg-prop { --folder-star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-star-24-svg-prop { --folder-star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-users-16-svg-prop { --folder-users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %folder-users-24-svg-prop { --folder-users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %frown-16-svg-prop { --frown-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %frown-24-svg-prop { --frown-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gateway-16-svg-prop { --gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gateway-24-svg-prop { --gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gateway-svg-prop { --gateway-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gcp-16-svg-prop { --gcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gcp-24-svg-prop { --gcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gcp-color-16-svg-prop { --gcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gcp-color-24-svg-prop { --gcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gift-16-svg-prop { --gift-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gift-24-svg-prop { --gift-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gift-fill-svg-prop { --gift-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gift-outline-svg-prop { --gift-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-branch-16-svg-prop { --git-branch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-branch-24-svg-prop { --git-branch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-branch-svg-prop { --git-branch-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-commit-16-svg-prop { --git-commit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-commit-24-svg-prop { --git-commit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-commit-svg-prop { --git-commit-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-merge-16-svg-prop { --git-merge-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-merge-24-svg-prop { --git-merge-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-pull-request-16-svg-prop { --git-pull-request-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-pull-request-24-svg-prop { --git-pull-request-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-pull-request-svg-prop { --git-pull-request-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-repo-16-svg-prop { --git-repo-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-repo-24-svg-prop { --git-repo-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %git-repository-svg-prop { --git-repository-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %github-16-svg-prop { --github-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %github-24-svg-prop { --github-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %github-color-16-svg-prop { --github-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %github-color-24-svg-prop { --github-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gitlab-16-svg-prop { --gitlab-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gitlab-24-svg-prop { --gitlab-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gitlab-color-16-svg-prop { --gitlab-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %gitlab-color-24-svg-prop { --gitlab-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %globe-16-svg-prop { --globe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %globe-24-svg-prop { --globe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %globe-private-16-svg-prop { --globe-private-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %globe-private-24-svg-prop { --globe-private-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %google-16-svg-prop { --google-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %google-24-svg-prop { --google-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %google-color-16-svg-prop { --google-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %google-color-24-svg-prop { --google-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %grid-16-svg-prop { --grid-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %grid-24-svg-prop { --grid-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %grid-alt-16-svg-prop { --grid-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %grid-alt-24-svg-prop { --grid-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %guide-16-svg-prop { --guide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %guide-24-svg-prop { --guide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %guide-link-16-svg-prop { --guide-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %guide-link-24-svg-prop { --guide-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %guide-svg-prop { --guide-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hammer-16-svg-prop { --hammer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hammer-24-svg-prop { --hammer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hard-drive-16-svg-prop { --hard-drive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hard-drive-24-svg-prop { --hard-drive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hash-16-svg-prop { --hash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hash-24-svg-prop { --hash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %headphones-16-svg-prop { --headphones-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %headphones-24-svg-prop { --headphones-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %health-svg-prop { --health-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %heart-16-svg-prop { --heart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %heart-24-svg-prop { --heart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %heart-fill-16-svg-prop { --heart-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %heart-fill-24-svg-prop { --heart-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %heart-off-16-svg-prop { --heart-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %heart-off-24-svg-prop { --heart-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %help-16-svg-prop { --help-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %help-24-svg-prop { --help-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %help-circle-fill-svg-prop { --help-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %help-circle-outline-svg-prop { --help-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hexagon-16-svg-prop { --hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hexagon-24-svg-prop { --hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hexagon-fill-16-svg-prop { --hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hexagon-fill-24-svg-prop { --hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %history-16-svg-prop { --history-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %history-24-svg-prop { --history-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %history-svg-prop { --history-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %home-16-svg-prop { --home-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %home-24-svg-prop { --home-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hourglass-16-svg-prop { --hourglass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %hourglass-24-svg-prop { --hourglass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %identity-service-16-svg-prop { --identity-service-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %identity-service-24-svg-prop { --identity-service-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %identity-user-16-svg-prop { --identity-user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %identity-user-24-svg-prop { --identity-user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %image-16-svg-prop { --image-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %image-24-svg-prop { --image-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %inbox-16-svg-prop { --inbox-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %inbox-24-svg-prop { --inbox-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %info-16-svg-prop { --info-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %info-24-svg-prop { --info-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %info-circle-fill-svg-prop { --info-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %info-circle-outline-svg-prop { --info-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %jump-link-16-svg-prop { --jump-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %jump-link-24-svg-prop { --jump-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %key-16-svg-prop { --key-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %key-24-svg-prop { --key-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %key-values-16-svg-prop { --key-values-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %key-values-24-svg-prop { --key-values-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %key-svg-prop { --key-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %kubernetes-16-svg-prop { --kubernetes-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %kubernetes-24-svg-prop { --kubernetes-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %kubernetes-color-16-svg-prop { --kubernetes-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %kubernetes-color-24-svg-prop { --kubernetes-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %labyrinth-16-svg-prop { --labyrinth-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %labyrinth-24-svg-prop { --labyrinth-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %layers-16-svg-prop { --layers-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %layers-24-svg-prop { --layers-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %layers-svg-prop { --layers-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %layout-16-svg-prop { --layout-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %layout-24-svg-prop { --layout-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %learn-16-svg-prop { --learn-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %learn-24-svg-prop { --learn-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %learn-link-16-svg-prop { --learn-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %learn-link-24-svg-prop { --learn-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %learn-svg-prop { --learn-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %line-chart-16-svg-prop { --line-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %line-chart-24-svg-prop { --line-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %line-chart-up-16-svg-prop { --line-chart-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %line-chart-up-24-svg-prop { --line-chart-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %link-16-svg-prop { --link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %link-24-svg-prop { --link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %link-svg-prop { --link-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %list-16-svg-prop { --list-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %list-24-svg-prop { --list-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %loading-svg-prop { --loading-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-16-svg-prop { --lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-24-svg-prop { --lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-closed-fill-svg-prop { --lock-closed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-closed-outline-svg-prop { --lock-closed-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-closed-svg-prop { --lock-closed-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-disabled-svg-prop { --lock-disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-fill-16-svg-prop { --lock-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-fill-24-svg-prop { --lock-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-off-16-svg-prop { --lock-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-off-24-svg-prop { --lock-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %lock-open-svg-prop { --lock-open-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-alicloud-color-svg-prop { --logo-alicloud-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-alicloud-monochrome-svg-prop { --logo-alicloud-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-auth0-color-svg-prop { --logo-auth0-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-aws-color-svg-prop { --logo-aws-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-aws-monochrome-svg-prop { --logo-aws-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-azure-color-svg-prop { --logo-azure-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-azure-dev-ops-color-svg-prop { --logo-azure-dev-ops-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-azure-dev-ops-monochrome-svg-prop { --logo-azure-dev-ops-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-azure-monochrome-svg-prop { --logo-azure-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-bitbucket-color-svg-prop { --logo-bitbucket-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-bitbucket-monochrome-svg-prop { --logo-bitbucket-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-consul-color-svg-prop { --logo-consul-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-ember-circle-color-svg-prop { --logo-ember-circle-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-gcp-color-svg-prop { --logo-gcp-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-gcp-monochrome-svg-prop { --logo-gcp-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-github-color-svg-prop { --logo-github-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-github-monochrome-svg-prop { --logo-github-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-gitlab-color-svg-prop { --logo-gitlab-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-gitlab-monochrome-svg-prop { --logo-gitlab-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-glimmer-color-svg-prop { --logo-glimmer-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-google-color-svg-prop { --logo-google-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-google-monochrome-svg-prop { --logo-google-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-hashicorp-color-svg-prop { --logo-hashicorp-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-jwt-color-svg-prop { --logo-jwt-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-kubernetes-color-svg-prop { --logo-kubernetes-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-kubernetes-monochrome-svg-prop { --logo-kubernetes-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-microsoft-color-svg-prop { --logo-microsoft-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-nomad-color-svg-prop { --logo-nomad-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-oidc-color-svg-prop { --logo-oidc-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-okta-color-svg-prop { --logo-okta-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-oracle-color-svg-prop { --logo-oracle-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-oracle-monochrome-svg-prop { --logo-oracle-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-slack-color-svg-prop { --logo-slack-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-slack-monochrome-svg-prop { --logo-slack-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-terraform-color-svg-prop { --logo-terraform-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-vault-color-svg-prop { --logo-vault-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-vmware-color-svg-prop { --logo-vmware-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %logo-vmware-monochrome-svg-prop { --logo-vmware-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mail-16-svg-prop { --mail-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mail-24-svg-prop { --mail-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mail-open-16-svg-prop { --mail-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mail-open-24-svg-prop { --mail-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %map-16-svg-prop { --map-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %map-24-svg-prop { --map-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %map-pin-16-svg-prop { --map-pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %map-pin-24-svg-prop { --map-pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %maximize-16-svg-prop { --maximize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %maximize-24-svg-prop { --maximize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %maximize-alt-16-svg-prop { --maximize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %maximize-alt-24-svg-prop { --maximize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %meh-16-svg-prop { --meh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %meh-24-svg-prop { --meh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %menu-16-svg-prop { --menu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %menu-24-svg-prop { --menu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %menu-svg-prop { --menu-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mesh-16-svg-prop { --mesh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mesh-24-svg-prop { --mesh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mesh-svg-prop { --mesh-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-circle-16-svg-prop { --message-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-circle-24-svg-prop { --message-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-circle-fill-16-svg-prop { --message-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-circle-fill-24-svg-prop { --message-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-square-16-svg-prop { --message-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-square-24-svg-prop { --message-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-square-fill-16-svg-prop { --message-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-square-fill-24-svg-prop { --message-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %message-svg-prop { --message-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mic-16-svg-prop { --mic-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mic-24-svg-prop { --mic-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mic-off-16-svg-prop { --mic-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mic-off-24-svg-prop { --mic-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %microsoft-16-svg-prop { --microsoft-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %microsoft-24-svg-prop { --microsoft-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %microsoft-color-16-svg-prop { --microsoft-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %microsoft-color-24-svg-prop { --microsoft-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %migrate-16-svg-prop { --migrate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %migrate-24-svg-prop { --migrate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minimize-16-svg-prop { --minimize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minimize-24-svg-prop { --minimize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minimize-alt-16-svg-prop { --minimize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minimize-alt-24-svg-prop { --minimize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-16-svg-prop { --minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-24-svg-prop { --minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-circle-16-svg-prop { --minus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-circle-24-svg-prop { --minus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-circle-fill-svg-prop { --minus-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-circle-outline-svg-prop { --minus-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plain-svg-prop { --minus-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plus-16-svg-prop { --minus-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plus-24-svg-prop { --minus-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plus-circle-16-svg-prop { --minus-plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plus-circle-24-svg-prop { --minus-plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plus-square-16-svg-prop { --minus-plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-plus-square-24-svg-prop { --minus-plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-square-16-svg-prop { --minus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-square-24-svg-prop { --minus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %minus-square-fill-svg-prop { --minus-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %module-16-svg-prop { --module-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %module-24-svg-prop { --module-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %module-svg-prop { --module-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %monitor-16-svg-prop { --monitor-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %monitor-24-svg-prop { --monitor-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %moon-16-svg-prop { --moon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %moon-24-svg-prop { --moon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %more-horizontal-16-svg-prop { --more-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %more-horizontal-24-svg-prop { --more-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %more-horizontal-svg-prop { --more-horizontal-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %more-vertical-16-svg-prop { --more-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %more-vertical-24-svg-prop { --more-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %more-vertical-svg-prop { --more-vertical-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mouse-pointer-16-svg-prop { --mouse-pointer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %mouse-pointer-24-svg-prop { --mouse-pointer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %move-16-svg-prop { --move-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %move-24-svg-prop { --move-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %music-16-svg-prop { --music-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %music-24-svg-prop { --music-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %navigation-16-svg-prop { --navigation-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %navigation-24-svg-prop { --navigation-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %navigation-alt-16-svg-prop { --navigation-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %navigation-alt-24-svg-prop { --navigation-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %network-16-svg-prop { --network-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %network-24-svg-prop { --network-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %network-alt-16-svg-prop { --network-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %network-alt-24-svg-prop { --network-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %newspaper-16-svg-prop { --newspaper-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %newspaper-24-svg-prop { --newspaper-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %node-16-svg-prop { --node-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %node-24-svg-prop { --node-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %notification-disabled-svg-prop { --notification-disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %notification-fill-svg-prop { --notification-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %notification-outline-svg-prop { --notification-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %octagon-16-svg-prop { --octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %octagon-24-svg-prop { --octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %okta-16-svg-prop { --okta-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %okta-24-svg-prop { --okta-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %okta-color-16-svg-prop { --okta-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %okta-color-24-svg-prop { --okta-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %oracle-16-svg-prop { --oracle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %oracle-24-svg-prop { --oracle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %oracle-color-16-svg-prop { --oracle-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %oracle-color-24-svg-prop { --oracle-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %org-16-svg-prop { --org-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %org-24-svg-prop { --org-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %outline-16-svg-prop { --outline-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %outline-24-svg-prop { --outline-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %outline-svg-prop { --outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %package-16-svg-prop { --package-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %package-24-svg-prop { --package-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %page-outline-svg-prop { --page-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %paperclip-16-svg-prop { --paperclip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %paperclip-24-svg-prop { --paperclip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %partner-svg-prop { --partner-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %path-16-svg-prop { --path-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %path-24-svg-prop { --path-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %path-svg-prop { --path-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pause-16-svg-prop { --pause-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pause-24-svg-prop { --pause-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pause-circle-16-svg-prop { --pause-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pause-circle-24-svg-prop { --pause-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pen-tool-16-svg-prop { --pen-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pen-tool-24-svg-prop { --pen-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pencil-tool-16-svg-prop { --pencil-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pencil-tool-24-svg-prop { --pencil-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %phone-16-svg-prop { --phone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %phone-24-svg-prop { --phone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %phone-call-16-svg-prop { --phone-call-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %phone-call-24-svg-prop { --phone-call-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %phone-off-16-svg-prop { --phone-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %phone-off-24-svg-prop { --phone-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pie-chart-16-svg-prop { --pie-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pie-chart-24-svg-prop { --pie-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pin-16-svg-prop { --pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %pin-24-svg-prop { --pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-16-svg-prop { --play-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-24-svg-prop { --play-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-circle-16-svg-prop { --play-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-circle-24-svg-prop { --play-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-fill-svg-prop { --play-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-outline-svg-prop { --play-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %play-plain-svg-prop { --play-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-16-svg-prop { --plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-24-svg-prop { --plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-circle-16-svg-prop { --plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-circle-24-svg-prop { --plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-circle-fill-svg-prop { --plus-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-circle-outline-svg-prop { --plus-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-plain-svg-prop { --plus-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-square-16-svg-prop { --plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-square-24-svg-prop { --plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %plus-square-fill-svg-prop { --plus-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %port-svg-prop { --port-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %power-16-svg-prop { --power-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %power-24-svg-prop { --power-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %printer-16-svg-prop { --printer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %printer-24-svg-prop { --printer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %protocol-svg-prop { --protocol-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %provider-16-svg-prop { --provider-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %provider-24-svg-prop { --provider-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %provider-svg-prop { --provider-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %public-default-svg-prop { --public-default-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %public-locked-svg-prop { --public-locked-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %queue-16-svg-prop { --queue-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %queue-24-svg-prop { --queue-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %queue-svg-prop { --queue-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %radio-16-svg-prop { --radio-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %radio-24-svg-prop { --radio-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %radio-button-checked-svg-prop { --radio-button-checked-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %radio-button-unchecked-svg-prop { --radio-button-unchecked-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %random-16-svg-prop { --random-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %random-24-svg-prop { --random-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %random-svg-prop { --random-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %redirect-16-svg-prop { --redirect-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %redirect-24-svg-prop { --redirect-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %redirect-svg-prop { --redirect-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %refresh-alert-svg-prop { --refresh-alert-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %refresh-default-svg-prop { --refresh-default-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %reload-16-svg-prop { --reload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %reload-24-svg-prop { --reload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %remix-svg-prop { --remix-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %repeat-16-svg-prop { --repeat-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %repeat-24-svg-prop { --repeat-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %replication-direct-16-svg-prop { --replication-direct-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %replication-direct-24-svg-prop { --replication-direct-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %replication-perf-16-svg-prop { --replication-perf-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %replication-perf-24-svg-prop { --replication-perf-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rewind-16-svg-prop { --rewind-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rewind-24-svg-prop { --rewind-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %ribbon-svg-prop { --ribbon-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rocket-16-svg-prop { --rocket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rocket-24-svg-prop { --rocket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rotate-ccw-16-svg-prop { --rotate-ccw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rotate-ccw-24-svg-prop { --rotate-ccw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rotate-cw-16-svg-prop { --rotate-cw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rotate-cw-24-svg-prop { --rotate-cw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rss-16-svg-prop { --rss-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %rss-24-svg-prop { --rss-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %run-svg-prop { --run-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %save-16-svg-prop { --save-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %save-24-svg-prop { --save-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %scissors-16-svg-prop { --scissors-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %scissors-24-svg-prop { --scissors-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %search-16-svg-prop { --search-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %search-24-svg-prop { --search-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %search-color-svg-prop { --search-color-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %search-svg-prop { --search-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %send-16-svg-prop { --send-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %send-24-svg-prop { --send-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %server-16-svg-prop { --server-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %server-24-svg-prop { --server-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %server-cluster-16-svg-prop { --server-cluster-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %server-cluster-24-svg-prop { --server-cluster-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %serverless-16-svg-prop { --serverless-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %serverless-24-svg-prop { --serverless-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %settings-16-svg-prop { --settings-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %settings-24-svg-prop { --settings-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %settings-svg-prop { --settings-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %share-16-svg-prop { --share-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %share-24-svg-prop { --share-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-16-svg-prop { --shield-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-24-svg-prop { --shield-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-alert-16-svg-prop { --shield-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-alert-24-svg-prop { --shield-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-check-16-svg-prop { --shield-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-check-24-svg-prop { --shield-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-off-16-svg-prop { --shield-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-off-24-svg-prop { --shield-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-x-16-svg-prop { --shield-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shield-x-24-svg-prop { --shield-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shopping-bag-16-svg-prop { --shopping-bag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shopping-bag-24-svg-prop { --shopping-bag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shopping-cart-16-svg-prop { --shopping-cart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shopping-cart-24-svg-prop { --shopping-cart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shuffle-16-svg-prop { --shuffle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %shuffle-24-svg-prop { --shuffle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sidebar-16-svg-prop { --sidebar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sidebar-24-svg-prop { --sidebar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sidebar-hide-16-svg-prop { --sidebar-hide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sidebar-hide-24-svg-prop { --sidebar-hide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sidebar-show-16-svg-prop { --sidebar-show-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sidebar-show-24-svg-prop { --sidebar-show-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sign-in-16-svg-prop { --sign-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sign-in-24-svg-prop { --sign-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sign-out-16-svg-prop { --sign-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sign-out-24-svg-prop { --sign-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %skip-16-svg-prop { --skip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %skip-24-svg-prop { --skip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %skip-back-16-svg-prop { --skip-back-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %skip-back-24-svg-prop { --skip-back-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %skip-forward-16-svg-prop { --skip-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %skip-forward-24-svg-prop { --skip-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slack-16-svg-prop { --slack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slack-24-svg-prop { --slack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slack-color-16-svg-prop { --slack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slack-color-24-svg-prop { --slack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slash-16-svg-prop { --slash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slash-24-svg-prop { --slash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slash-square-16-svg-prop { --slash-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %slash-square-24-svg-prop { --slash-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sliders-16-svg-prop { --sliders-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sliders-24-svg-prop { --sliders-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %smartphone-16-svg-prop { --smartphone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %smartphone-24-svg-prop { --smartphone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %smile-16-svg-prop { --smile-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %smile-24-svg-prop { --smile-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %socket-16-svg-prop { --socket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %socket-24-svg-prop { --socket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %socket-svg-prop { --socket-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sort-asc-16-svg-prop { --sort-asc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sort-asc-24-svg-prop { --sort-asc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sort-desc-16-svg-prop { --sort-desc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sort-desc-24-svg-prop { --sort-desc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sort-svg-prop { --sort-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %source-file-svg-prop { --source-file-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %speaker-16-svg-prop { --speaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %speaker-24-svg-prop { --speaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %square-16-svg-prop { --square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %square-24-svg-prop { --square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %square-fill-16-svg-prop { --square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %square-fill-24-svg-prop { --square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-16-svg-prop { --star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-24-svg-prop { --star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-circle-16-svg-prop { --star-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-circle-24-svg-prop { --star-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-fill-16-svg-prop { --star-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-fill-24-svg-prop { --star-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-fill-svg-prop { --star-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-off-16-svg-prop { --star-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-off-24-svg-prop { --star-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %star-outline-svg-prop { --star-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %stop-circle-16-svg-prop { --stop-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %stop-circle-24-svg-prop { --stop-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sub-left-svg-prop { --sub-left-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sub-right-svg-prop { --sub-right-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sun-16-svg-prop { --sun-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sun-24-svg-prop { --sun-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %support-16-svg-prop { --support-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %support-24-svg-prop { --support-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %support-svg-prop { --support-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %swap-horizontal-16-svg-prop { --swap-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %swap-horizontal-24-svg-prop { --swap-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %swap-horizontal-svg-prop { --swap-horizontal-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %swap-vertical-16-svg-prop { --swap-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %swap-vertical-24-svg-prop { --swap-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %swap-vertical-svg-prop { --swap-vertical-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %switcher-16-svg-prop { --switcher-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %switcher-24-svg-prop { --switcher-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sync-16-svg-prop { --sync-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sync-24-svg-prop { --sync-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sync-alert-16-svg-prop { --sync-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sync-alert-24-svg-prop { --sync-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sync-reverse-16-svg-prop { --sync-reverse-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %sync-reverse-24-svg-prop { --sync-reverse-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tablet-16-svg-prop { --tablet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tablet-24-svg-prop { --tablet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tag-16-svg-prop { --tag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tag-24-svg-prop { --tag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tag-svg-prop { --tag-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %target-16-svg-prop { --target-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %target-24-svg-prop { --target-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %terminal-16-svg-prop { --terminal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %terminal-24-svg-prop { --terminal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %terminal-screen-16-svg-prop { --terminal-screen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %terminal-screen-24-svg-prop { --terminal-screen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %thumbs-down-16-svg-prop { --thumbs-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %thumbs-down-24-svg-prop { --thumbs-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %thumbs-up-16-svg-prop { --thumbs-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %thumbs-up-24-svg-prop { --thumbs-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %toggle-left-16-svg-prop { --toggle-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %toggle-left-24-svg-prop { --toggle-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %toggle-right-16-svg-prop { --toggle-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %toggle-right-24-svg-prop { --toggle-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %token-16-svg-prop { --token-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %token-24-svg-prop { --token-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tools-16-svg-prop { --tools-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tools-24-svg-prop { --tools-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %top-16-svg-prop { --top-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %top-24-svg-prop { --top-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trash-16-svg-prop { --trash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trash-24-svg-prop { --trash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trash-svg-prop { --trash-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trend-down-16-svg-prop { --trend-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trend-down-24-svg-prop { --trend-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trend-up-16-svg-prop { --trend-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %trend-up-24-svg-prop { --trend-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %triangle-16-svg-prop { --triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %triangle-24-svg-prop { --triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %triangle-fill-16-svg-prop { --triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %triangle-fill-24-svg-prop { --triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %truck-16-svg-prop { --truck-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %truck-24-svg-prop { --truck-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tune-svg-prop { --tune-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tv-16-svg-prop { --tv-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %tv-24-svg-prop { --tv-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %type-16-svg-prop { --type-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %type-24-svg-prop { --type-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unfold-close-16-svg-prop { --unfold-close-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unfold-close-24-svg-prop { --unfold-close-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unfold-less-svg-prop { --unfold-less-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unfold-more-svg-prop { --unfold-more-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unfold-open-16-svg-prop { --unfold-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unfold-open-24-svg-prop { --unfold-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } +} +%union-svg { + --union-svg: url('data:image/svg+xml;charset=UTF-8,'); +} %unlock-16-svg-prop { --unlock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %unlock-24-svg-prop { --unlock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %upload-16-svg-prop { --upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %upload-24-svg-prop { --upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %upload-svg-prop { --upload-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-16-svg-prop { --user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-24-svg-prop { --user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-add-svg-prop { --user-add-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-check-16-svg-prop { --user-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-check-24-svg-prop { --user-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-circle-16-svg-prop { --user-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-circle-24-svg-prop { --user-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-circle-fill-16-svg-prop { --user-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-circle-fill-24-svg-prop { --user-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-minus-16-svg-prop { --user-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-minus-24-svg-prop { --user-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-organization-svg-prop { --user-organization-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-plain-svg-prop { --user-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-plus-16-svg-prop { --user-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-plus-24-svg-prop { --user-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-square-fill-svg-prop { --user-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-square-outline-svg-prop { --user-square-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-team-svg-prop { --user-team-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-x-16-svg-prop { --user-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %user-x-24-svg-prop { --user-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %users-16-svg-prop { --users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %users-24-svg-prop { --users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %vault-16-svg-prop { --vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %vault-24-svg-prop { --vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %verified-16-svg-prop { --verified-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %verified-24-svg-prop { --verified-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %video-16-svg-prop { --video-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %video-24-svg-prop { --video-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %video-off-16-svg-prop { --video-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %video-off-24-svg-prop { --video-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %visibility-hide-svg-prop { --visibility-hide-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %visibility-show-svg-prop { --visibility-show-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %vmware-16-svg-prop { --vmware-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %vmware-24-svg-prop { --vmware-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %vmware-color-16-svg-prop { --vmware-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %vmware-color-24-svg-prop { --vmware-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-16-svg-prop { --volume-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-2-16-svg-prop { --volume-2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-2-24-svg-prop { --volume-2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-24-svg-prop { --volume-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-down-16-svg-prop { --volume-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-down-24-svg-prop { --volume-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-x-16-svg-prop { --volume-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %volume-x-24-svg-prop { --volume-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wall-16-svg-prop { --wall-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wall-24-svg-prop { --wall-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %watch-16-svg-prop { --watch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %watch-24-svg-prop { --watch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %webhook-16-svg-prop { --webhook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %webhook-24-svg-prop { --webhook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %webhook-svg-prop { --webhook-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wifi-16-svg-prop { --wifi-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wifi-24-svg-prop { --wifi-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wifi-off-16-svg-prop { --wifi-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wifi-off-24-svg-prop { --wifi-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wrench-16-svg-prop { --wrench-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %wrench-24-svg-prop { --wrench-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-16-svg-prop { --x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-24-svg-prop { --x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-circle-16-svg-prop { --x-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-circle-24-svg-prop { --x-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-circle-fill-16-svg-prop { --x-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-circle-fill-24-svg-prop { --x-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-diamond-16-svg-prop { --x-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-diamond-24-svg-prop { --x-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-diamond-fill-16-svg-prop { --x-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-diamond-fill-24-svg-prop { --x-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-hexagon-16-svg-prop { --x-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-hexagon-24-svg-prop { --x-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-hexagon-fill-16-svg-prop { --x-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-hexagon-fill-24-svg-prop { --x-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-square-16-svg-prop { --x-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-square-24-svg-prop { --x-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-square-fill-16-svg-prop { --x-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %x-square-fill-24-svg-prop { --x-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zap-16-svg-prop { --zap-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zap-24-svg-prop { --zap-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zap-off-16-svg-prop { --zap-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zap-off-24-svg-prop { --zap-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zoom-in-16-svg-prop { --zoom-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zoom-in-24-svg-prop { --zoom-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zoom-out-16-svg-prop { --zoom-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - } - +} %zoom-out-24-svg-prop { --zoom-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - } +} diff --git a/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss b/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss index 558c9ce92..9669a0450 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss @@ -9448,6 +9448,16 @@ mask-image: var(--unfold-open-24-svg); } +%with-union-icon { + @extend %with-icon, %union-svg; + background-image: var(--union-svg); +} +%with-union-mask { + @extend %with-mask, %union-svg; + -webkit-mask-image: var(--union-svg); + mask-image: var(--union-svg); +} + %with-unlock-16-icon { @extend %with-icon, %unlock-16-svg-prop; background-image: var(--unlock-16-svg); diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ b/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ index 925e4de71..422288cca 100644 --- a/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ @@ -7,10 +7,12 @@ ${ fake.seed(num); return range(num).map(i => { const nspace = i === 0 ? `default` : `${fake.hacker.noun()}-ns-${i}`; + const partition = i === 0 ? `default` : `${fake.hacker.noun()}-partition`; return { Name: `service-${fake.random.number({min:0, max:99})}`, Datacenter: `${dc}`, - Namespace: `${nspace}` + Namespace: `${nspace}`, + Partition: `${partition}` } }) }; @@ -72,6 +74,7 @@ ${(Math.random(1) > 0.3) ? ` "Name": "${item.Name}", "Datacenter": "${item.Datacenter}", "Namespace": "${item.Namespace}", + "Partition": "${item.Partition}", "ChecksPassing":${fake.random.number({min: 1, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, "ChecksWarning":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, "ChecksCritical":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, @@ -101,6 +104,7 @@ ${(Math.random(1) > 0.3) ? ` "Name": "${item.Name}", "Datacenter": "${item.Datacenter}", "Namespace": "${item.Namespace}", + "Partition": "${item.Partition}", "ChecksPassing":${fake.random.number({min: 1, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, "ChecksWarning":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, "ChecksCritical":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, From 7f61e9f67726d198d0c11cdb9d02d1c058d1c6d6 Mon Sep 17 00:00:00 2001 From: Chip Vaughn Date: Mon, 10 Jan 2022 14:21:32 -0500 Subject: [PATCH 181/404] Editing links and grammer changes --- website/content/api-docs/acl/auth-methods.mdx | 12 +++++++++++- website/content/api-docs/acl/binding-rules.mdx | 10 ++++++++++ website/content/api-docs/acl/index.mdx | 10 ++++++++++ website/content/api-docs/acl/policies.mdx | 12 ++++++++++++ website/content/api-docs/acl/roles.mdx | 12 ++++++++++++ website/content/api-docs/acl/tokens.mdx | 14 ++++++++++++++ website/content/api-docs/agent/index.mdx | 14 ++++++++++++++ website/content/api-docs/agent/service.mdx | 4 ++++ website/content/api-docs/catalog.mdx | 6 ++++++ website/content/api-docs/config.mdx | 8 ++++++++ website/content/api-docs/connect/ca.mdx | 4 ++++ .../content/api-docs/connect/intentions.mdx | 18 ++++++++++++++++++ website/content/api-docs/coordinate.mdx | 4 ++++ website/content/api-docs/event.mdx | 2 ++ website/content/api-docs/kv.mdx | 6 ++++++ website/content/api-docs/namespaces.mdx | 10 ++++++++++ website/content/api-docs/operator/area.mdx | 12 ++++++++++++ .../content/api-docs/operator/autopilot.mdx | 6 ++++++ website/content/api-docs/operator/keyring.mdx | 8 ++++++++ website/content/api-docs/operator/license.mdx | 6 ++++++ website/content/api-docs/operator/raft.mdx | 2 ++ website/content/api-docs/snapshot.mdx | 4 ++++ website/content/api-docs/status.mdx | 2 ++ 23 files changed, 185 insertions(+), 1 deletion(-) diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 9f4ebbbd3..076d9d2c3 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -34,7 +34,9 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -### Payload Fields +-> The corresponding CLI command is [`consul acl auth-method create`](https://www.consul.io/commands/acl/auth-method/create) + +### Parameters - `Name` `(string: )` - Specifies a name for the ACL auth method. The name can contain alphanumeric characters, dashes `-`, and underscores `_`. @@ -160,6 +162,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl auth-method read`](https://www.consul.io/commands/acl/auth-method/read) + ### Parameters - `name` `(string: )` - Specifies the name of the ACL auth method to @@ -212,6 +216,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl auth-method update`](https://www.consul.io/commands/acl/auth-method/update) + ### Parameters - `Name` `(string: )` - Specifies the name of the auth method to @@ -343,6 +349,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl auth-method delete`](https://www.consul.io/commands/acl/auth-method/delete) + ### Parameters - `name` `(string: )` - Specifies the name of the ACL auth method to @@ -385,6 +393,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl auth-method list`](https://www.consul.io/commands/acl/auth-method/list) + ### Parameters - `ns` `(string: "")` - Specifies the namespace to list diff --git a/website/content/api-docs/acl/binding-rules.mdx b/website/content/api-docs/acl/binding-rules.mdx index b598a5569..3375b2b41 100644 --- a/website/content/api-docs/acl/binding-rules.mdx +++ b/website/content/api-docs/acl/binding-rules.mdx @@ -34,6 +34,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl binding-rule create`](https://www.consul.io/commands/acl/binding-rule/create) + ### Parameters - `Description` `(string: "")` - Free form human readable description of the binding rule. @@ -158,6 +160,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl binding-rule read`](https://www.consul.io/commands/acl/binding-rule/read) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL binding rule @@ -208,6 +212,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl binding-rule update`](https://www.consul.io/commands/acl/binding-rule/update) + ### Parameters - `ID` `(string: )` - Specifies the ID of the binding rule to update. @@ -338,6 +344,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl binding-rule delete`](https://www.consul.io/commands/acl/binding-rule/delete) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL binding rule to @@ -380,6 +388,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl binding-rule list`](https://www.consul.io/commands/acl/binding-rule/list) + ## Parameters - `authmethod` `(string: "")` - Filters the binding rule list to those binding diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index 5c69331ed..162e9eb01 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -38,6 +38,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul acl bootstrap`](https://www.consul.io/commands/acl/bootstrap) + ### Sample Request ```shell-session @@ -202,6 +204,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) + ### Sample Payload ```hcl @@ -249,6 +253,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) + ### Sample Request ```shell-session @@ -290,6 +296,8 @@ enabled. Login requires the ability to create local tokens which is restricted to the primary datacenter and any secondary datacenters with ACL token replication enabled. +-> The corresponding CLI command is [`consul login`](https://www.consul.io/commands/login) + ### Parameters - `AuthMethod` `(string: )` - The name of the auth method to use for login. @@ -376,6 +384,8 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just deleting a token for which you already must possess its secret. +-> The corresponding CLI command is [`consul logout`](https://www.consul.io/commands/logout) + ### Sample Request ```shell-session diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index 6fe426d53..38c3c2e0a 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -33,6 +33,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl policy create`](https://www.consul.io/commands/acl/policy/create) + ### Parameters - `Name` `(string: )` - Specifies a name for the ACL policy. The name @@ -106,6 +108,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl policy read`](https://www.consul.io/commands/acl/policy/read) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL policy to @@ -156,6 +160,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl policy read -name=`](https://www.consul.io/commands/acl/policy/read#name) + ### Parameters - `name` `(string: )` - Specifies the name of the ACL policy to @@ -206,6 +212,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl policy update`](https://www.consul.io/commands/acl/policy/update) + ### Parameters - `ID` `(string: )` - Specifies the UUID of the policy to update. This is @@ -285,6 +293,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl policy delete`](https://www.consul.io/commands/acl/policy/delete) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL policy to @@ -327,6 +337,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl policy list`](https://www.consul.io/commands/acl/policy/list) + ### Parameters - `ns` `(string: "")` - Specifies the namespace to list diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index 5862fefcf..84ef0a0f6 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -32,6 +32,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl role create`](https://www.consul.io/commands/acl/role/create) + ### Parameters - `Name` `(string: )` - Specifies a name for the ACL role. The name @@ -172,6 +174,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl role read`](https://www.consul.io/commands/acl/role/read) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL role to @@ -242,6 +246,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl role read -name=`](https://www.consul.io/commands/acl/role/read#name) + ### Parameters - `name` `(string: )` - Specifies the Name of the ACL role to @@ -311,6 +317,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl role update`](https://www.consul.io/commands/acl/role/update) + ### Parameters - `ID` `(string: )` - Specifies the ID of the role to update. This is @@ -427,6 +435,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl role delete`](https://www.consul.io/commands/acl/role/delete) + ### Parameters - `id` `(string: )` - Specifies the UUID of the ACL role to @@ -469,6 +479,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl role list`](https://www.consul.io/commands/acl/role/list) + ## Parameters - `policy` `(string: "")` - Filters the role list to those roles that are diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index 4bdc026ae..7554e6ebd 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -32,6 +32,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token create`](https://www.consul.io/commands/acl/token/create) + ### Parameters - `AccessorID` `(string: "")` - Specifies a UUID to use as the token's Accessor ID. @@ -173,6 +175,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl token read`](https://www.consul.io/commands/acl/token/read) + ### Parameters - `AccessorID` `(string: )` - Specifies the accessor ID of the ACL token to @@ -243,6 +247,8 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just retrieving the data for a token that you must already possess its secret. +-> The corresponding CLI command is [`consul acl token read -self`](https://www.consul.io/commands/acl/token/read#self) + ### Sample Request ```shell-session @@ -293,6 +299,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token update`](https://www.consul.io/commands/acl/token/update) + ### Parameters - `AccessorID` `(string: "")` - Specifies the accessor ID of the token being updated. This is @@ -441,6 +449,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token clone`](https://www.consul.io/commands/acl/token/clone) + ### Parameters - `AccessorID` `(string: )` - The accessor ID of the token to clone. This is required @@ -520,6 +530,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | +-> The corresponding CLI command is [`consul acl token delete`](https://www.consul.io/commands/acl/token/delete) + ### Parameters - `AccessorID` `(string: )` - Specifies the accessor ID of the ACL token to @@ -562,6 +574,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | +-> The corresponding CLI command is [`consul acl token list`](https://www.consul.io/commands/acl/token/list) + ## Parameters - `policy` `(string: "")` - Filters the token list to those tokens that are diff --git a/website/content/api-docs/agent/index.mdx b/website/content/api-docs/agent/index.mdx index 5bcd4f2da..9fe617015 100644 --- a/website/content/api-docs/agent/index.mdx +++ b/website/content/api-docs/agent/index.mdx @@ -227,6 +227,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:read` | +-> The corresponding CLI command is [`consul members`](https://www.consul.io/commands/members) + ### Parameters - `wan` `(bool: false)` - Specifies to list WAN members instead of the LAN @@ -373,6 +375,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul reload`](https://www.consul.io/commands/reload) + ### Sample Request ```shell-session @@ -404,6 +408,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:write` | +-> The corresponding CLI command is [`consul maint`](https://www.consul.io/commands/maint) + ### Parameters - `enable` `(bool: )` - Specifies whether to enable or disable @@ -629,6 +635,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul join`](https://www.consul.io/commands/join) + ### Parameters - `address` `(string: )` - Specifies the address of the other agent to @@ -669,6 +677,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul leave`](https://www.consul.io/commands/leave) + ### Sample Request ```shell-session @@ -706,6 +716,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul force-leave`](https://www.consul.io/commands/force-leave) + ### Parameters - `node` `(string: )` - Specifies the name of the node to be forced into `left` state. This is specified as part of the URL. @@ -780,6 +792,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | +-> The corresponding CLI command is [`consul acl set-agent-token`](https://www.consul.io/commands/acl/set-agent-token) + ### Parameters - `Token` `(string: "")` - Specifies the ACL token to set. diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index b475b36e4..78d83ac7f 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -593,6 +593,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | +-> The corresponding CLI command is [`consul services register`](https://www.consul.io/commands/services/register) + ### Query string parameters - `replace-existing-checks` - Missing health checks from the request will be deleted from the agent. Using this parameter allows to idempotently register a service and its checks without having to manually deregister checks. @@ -766,6 +768,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | +-> The corresponding CLI command is [`consul services deregister`](https://www.consul.io/commands/services/deregister) + ### Parameters - `service_id` `(string: )` - Specifies the ID of the service to diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index 187a03769..3c3503f74 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -266,6 +266,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul catalog datacenters`](https://www.consul.io/commands/catalog/datacenters) + ### Sample Request ```shell-session @@ -297,6 +299,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | +-> The corresponding CLI command is [`consul catalog nodes`](https://www.consul.io/commands/catalog/nodes) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -392,6 +396,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `YES` | `all` | `none` | `service:read` | +-> The corresponding CLI command is [`consul catalog services`](https://www.consul.io/commands/catalog/services) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/config.mdx b/website/content/api-docs/config.mdx index 7587e14b3..56e5a8633 100644 --- a/website/content/api-docs/config.mdx +++ b/website/content/api-docs/config.mdx @@ -48,6 +48,8 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write` | +-> The corresponding CLI command is [`consul config write`](https://www.consul.io/commands/config/write) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -115,6 +117,8 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | +-> The corresponding CLI command is [`consul config read`](https://www.consul.io/commands/config/read) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -184,6 +188,8 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | +-> The corresponding CLI command is [`consul config list`](https://www.consul.io/commands/config/list) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -258,6 +264,8 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write ` | +-> The corresponding CLI command is [`consul config delete`](https://www.consul.io/commands/config/delete) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/connect/ca.mdx b/website/content/api-docs/connect/ca.mdx index af413b022..181c0cccc 100644 --- a/website/content/api-docs/connect/ca.mdx +++ b/website/content/api-docs/connect/ca.mdx @@ -125,6 +125,8 @@ The table below shows this endpoint's support for 1 ACL required was operator:read prior to versions 1.8.6, 1.7.10, and 1.6.10. +-> The corresponding CLI command is [`consul connect ca get-config`](https://www.consul.io/commands/connect/ca#get-config) + ### Sample Request ```shell-session @@ -165,6 +167,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul connect ca set-config`](https://www.consul.io/commands/connect/ca#set-config) + ### Parameters - `Provider` `(string: )` - Specifies the CA provider type to use. diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 39912a9b1..30d4f1363 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -54,6 +54,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create -replace`](https://www.consul.io/commands/intention/create#replace) + ### URL Parameters - `source` `(string: )` - Specifies the source service. This @@ -163,6 +165,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/create) + ### URL Parameters - `ns` `(string: "")` - Specifies the default @@ -315,6 +319,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) + ### Parameters - `source` `(string: )` - Specifies the source service. This @@ -390,6 +396,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the intention to read. This @@ -450,6 +458,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) + ### Parameters - `filter` `(string: "")` - Specifies the expression used to filter the @@ -539,6 +549,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) + ### Parameters - `source` `(string: )` - Specifies the source service. This @@ -597,6 +609,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the intention to delete. This @@ -652,6 +666,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention check`](https://www.consul.io/commands/intention/check) + ### Parameters - `source` `(string: )` - Specifies the source service. This @@ -715,6 +731,8 @@ The table below shows this endpoint's support for for more details.

    +-> The corresponding CLI command is [`consul intention match`](https://www.consul.io/commands/intention/match) + ### Parameters - `by` `(string: )` - Specifies whether to match the "name" value diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index f3ff23bae..6f2958095 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -38,6 +38,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul rtt -wan #`](https://www.consul.io/commands/rtt#wan) + ### Sample Request ```shell-session @@ -90,6 +92,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | +-> The corresponding CLI command is [`consul rtt #`](https://www.consul.io/commands/rtt) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/event.mdx b/website/content/api-docs/event.mdx index 8773a337c..3a58f52fc 100644 --- a/website/content/api-docs/event.mdx +++ b/website/content/api-docs/event.mdx @@ -29,6 +29,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `event:write` | +-> The corresponding CLI command is [`consul event`](https://www.consul.io/commands/event) + ### Parameters - `name` `(string: )` - Specifies the name of the event to fire. This diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index cc99ed373..efdeee907 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -41,6 +41,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `key:read` | +-> The corresponding CLI command is [`consul kv get`](https://www.consul.io/commands/kv/get) + ### Parameters - `key` `(string: "")` - Specifies the path of the key to read. @@ -171,6 +173,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | +-> The corresponding CLI command is [`consul kv put`](https://www.consul.io/commands/kv/put) + ### Parameters - `key` `(string: "")` - Specifies the path of the key. @@ -257,6 +261,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | +-> The corresponding CLI command is [`consul kv delete`](https://www.consul.io/commands/kv/delete) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/namespaces.mdx b/website/content/api-docs/namespaces.mdx index 27da27e12..ad8b032cb 100644 --- a/website/content/api-docs/namespaces.mdx +++ b/website/content/api-docs/namespaces.mdx @@ -29,6 +29,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul namespace create`](https://www.consul.io/commands/namespace/create) + ### Parameters - `Name` `(string: )` - The namespaces name. This must be a valid @@ -161,6 +163,8 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). +-> The corresponding CLI command is [`consul namespace read`](https://www.consul.io/commands/namespace/read) + ### Parameters - `name` `(string: )` - Specifies the namespace to read. This @@ -227,6 +231,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul namespace update`](https://www.consul.io/commands/namespace/update) or [`consul namespace write`](https://www.consul.io/commands/namespace/write) + ### Parameters - `Name` `(string: )` - The namespaces name. This must be a valid @@ -364,6 +370,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul namespace delete`](https://www.consul.io/commands/namespace/delete) + ### Parameters - `name` `(string: )` - Specifies the namespace to delete. This @@ -436,6 +444,8 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). +-> The corresponding CLI command is [`consul namespace list`](https://www.consul.io/commands/namespace/list) + ### Sample Request ```shell-session diff --git a/website/content/api-docs/operator/area.mdx b/website/content/api-docs/operator/area.mdx index 6d941ca3d..6529dc2c3 100644 --- a/website/content/api-docs/operator/area.mdx +++ b/website/content/api-docs/operator/area.mdx @@ -45,6 +45,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area create`](https://www.consul.io/commands/operator/area#create) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -111,6 +113,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `YES` | `all` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator area list`](https://www.consul.io/commands/operator/area#list) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -154,6 +158,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area update`](https://www.consul.io/commands/operator/area#update) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -244,6 +250,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area delete`](https://www.consul.io/commands/operator/area#delete) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the area to delete. This @@ -280,6 +288,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator area join`](https://www.consul.io/commands/operator/area#join) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the area to join. This @@ -353,6 +363,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator area members`](https://www.consul.io/commands/operator/area#members) + ### Parameters - `uuid` `(string: )` - Specifies the UUID of the area to list. This diff --git a/website/content/api-docs/operator/autopilot.mdx b/website/content/api-docs/operator/autopilot.mdx index ed568e648..23ca9edc9 100644 --- a/website/content/api-docs/operator/autopilot.mdx +++ b/website/content/api-docs/operator/autopilot.mdx @@ -33,6 +33,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator autopilot get-config`](https://www.consul.io/commands/operator/autopilot#get-config) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -87,6 +89,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator autopilot set-config`](https://www.consul.io/commands/operator/autopilot#set-config) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to @@ -269,6 +273,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul operator autopilot state`](https://www.consul.io/commands/operator/autopilot#state) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index 4a1e86887..a2def36ef 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -35,6 +35,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `NO` | `none` | `none` | `keyring:read` | +-> The corresponding CLI command is [`consul keyring -list`](https://www.consul.io/commands/keyring#list) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a @@ -120,6 +122,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | +-> The corresponding CLI command is [`consul keyring -intstall`](https://www.consul.io/commands/keyring#install) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a @@ -166,6 +170,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | +-> The corresponding CLI command is [`consul keyring -use`](https://www.consul.io/commands/keyring#use) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a @@ -212,6 +218,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | +-> The corresponding CLI command is [`consul keyring -remove`](https://www.consul.io/commands/keyring#remove) + ### Parameters - `relay-factor` `(int: 0)` - Specifies the relay factor. Setting this to a diff --git a/website/content/api-docs/operator/license.mdx b/website/content/api-docs/operator/license.mdx index 415491966..467b88350 100644 --- a/website/content/api-docs/operator/license.mdx +++ b/website/content/api-docs/operator/license.mdx @@ -31,6 +31,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `all` | `none` | `none` | +-> The corresponding CLI command is [`consul license get`](https://www.consul.io/commands/license#get) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter whose license should be retrieved. @@ -96,6 +98,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul license put`](https://www.consul.io/commands/license#put) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter whose license should be updated. @@ -166,6 +170,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul license reset`](https://www.consul.io/commands/license#reset) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter whose license should be updated. diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index b56211b2c..04fbfa2eb 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -130,6 +130,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul operator raft remove-peer`](https://www.consul.io/commands/operator/raft#remove-peer) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index d94248a1b..9080389af 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -39,6 +39,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `default,stale` | `none` | `management` | +-> The corresponding CLI command is [`consul snapshot save`](https://www.consul.io/commands/snapshot/save) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default @@ -94,6 +96,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `management` | +-> The corresponding CLI command is [`consul snapshot restore`](https://www.consul.io/commands/snapshot/restore) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default diff --git a/website/content/api-docs/status.mdx b/website/content/api-docs/status.mdx index e2ad3ad9e..30b0f45ae 100644 --- a/website/content/api-docs/status.mdx +++ b/website/content/api-docs/status.mdx @@ -70,6 +70,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | +-> The corresponding CLI command is [`consul operator raft list-peers`](https://www.consul.io/commands/operator/raft#list-peers) + ### Parameters - `dc` `(string: "")` - Specifies the datacenter to query. This will default to From 0f6e6600770ebce9ac528751c98df3efdcfdfabd Mon Sep 17 00:00:00 2001 From: Chip Vaughn Date: Tue, 11 Jan 2022 10:37:48 -0500 Subject: [PATCH 182/404] Correcting CLI links and grammer changes --- website/content/api-docs/acl/auth-methods.mdx | 10 +++++----- website/content/api-docs/acl/binding-rules.mdx | 10 +++++----- website/content/api-docs/acl/index.mdx | 10 +++++----- website/content/api-docs/acl/policies.mdx | 12 ++++++------ website/content/api-docs/acl/roles.mdx | 12 ++++++------ website/content/api-docs/acl/tokens.mdx | 14 +++++++------- website/content/api-docs/agent/index.mdx | 14 +++++++------- website/content/api-docs/agent/service.mdx | 4 ++-- website/content/api-docs/catalog.mdx | 6 +++--- website/content/api-docs/config.mdx | 8 ++++---- website/content/api-docs/connect/ca.mdx | 4 ++-- .../content/api-docs/connect/intentions.mdx | 18 +++++++++--------- website/content/api-docs/coordinate.mdx | 4 ++-- website/content/api-docs/event.mdx | 2 +- website/content/api-docs/kv.mdx | 6 +++--- website/content/api-docs/namespaces.mdx | 10 +++++----- website/content/api-docs/operator/area.mdx | 12 ++++++------ .../content/api-docs/operator/autopilot.mdx | 6 +++--- website/content/api-docs/operator/keyring.mdx | 8 ++++---- website/content/api-docs/operator/license.mdx | 6 +++--- website/content/api-docs/operator/raft.mdx | 2 +- website/content/api-docs/snapshot.mdx | 4 ++-- website/content/api-docs/status.mdx | 2 +- 23 files changed, 92 insertions(+), 92 deletions(-) diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 076d9d2c3..e68364db1 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -34,7 +34,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl auth-method create`](https://www.consul.io/commands/acl/auth-method/create) +-> The corresponding CLI command is [`consul acl auth-method create`](https://www.consul.io/commands/acl/auth-method/create). ### Parameters @@ -162,7 +162,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl auth-method read`](https://www.consul.io/commands/acl/auth-method/read) +-> The corresponding CLI command is [`consul acl auth-method read`](https://www.consul.io/commands/acl/auth-method/read). ### Parameters @@ -216,7 +216,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl auth-method update`](https://www.consul.io/commands/acl/auth-method/update) +-> The corresponding CLI command is [`consul acl auth-method update`](https://www.consul.io/commands/acl/auth-method/update). ### Parameters @@ -349,7 +349,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl auth-method delete`](https://www.consul.io/commands/acl/auth-method/delete) +-> The corresponding CLI command is [`consul acl auth-method delete`](/commands/acl/auth-method/delete). ### Parameters @@ -393,7 +393,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl auth-method list`](https://www.consul.io/commands/acl/auth-method/list) +-> The corresponding CLI command is [`consul acl auth-method list`](https://www.consul.io/commands/acl/auth-method/list). ### Parameters diff --git a/website/content/api-docs/acl/binding-rules.mdx b/website/content/api-docs/acl/binding-rules.mdx index 3375b2b41..ca3365f57 100644 --- a/website/content/api-docs/acl/binding-rules.mdx +++ b/website/content/api-docs/acl/binding-rules.mdx @@ -34,7 +34,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl binding-rule create`](https://www.consul.io/commands/acl/binding-rule/create) +-> The corresponding CLI command is [`consul acl binding-rule create`](/commands/acl/binding-rule/create). ### Parameters @@ -160,7 +160,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl binding-rule read`](https://www.consul.io/commands/acl/binding-rule/read) +-> The corresponding CLI command is [`consul acl binding-rule read`](/commands/acl/binding-rule/read). ### Parameters @@ -212,7 +212,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl binding-rule update`](https://www.consul.io/commands/acl/binding-rule/update) +-> The corresponding CLI command is [`consul acl binding-rule update`](/commands/acl/binding-rule/update). ### Parameters @@ -344,7 +344,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl binding-rule delete`](https://www.consul.io/commands/acl/binding-rule/delete) +-> The corresponding CLI command is [`consul acl binding-rule delete`](/commands/acl/binding-rule/delete). ### Parameters @@ -388,7 +388,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl binding-rule list`](https://www.consul.io/commands/acl/binding-rule/list) +-> The corresponding CLI command is [`consul acl binding-rule list`](/commands/acl/binding-rule/list). ## Parameters diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index 162e9eb01..879f90ce1 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -38,7 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul acl bootstrap`](https://www.consul.io/commands/acl/bootstrap) +-> The corresponding CLI command is [`consul acl bootstrap`](/commands/acl/bootstrap). ### Sample Request @@ -204,7 +204,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) +-> The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). ### Sample Payload @@ -253,7 +253,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) +-> The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). ### Sample Request @@ -296,7 +296,7 @@ enabled. Login requires the ability to create local tokens which is restricted to the primary datacenter and any secondary datacenters with ACL token replication enabled. --> The corresponding CLI command is [`consul login`](https://www.consul.io/commands/login) +-> The corresponding CLI command is [`consul login`](/commands/login). ### Parameters @@ -384,7 +384,7 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just deleting a token for which you already must possess its secret. --> The corresponding CLI command is [`consul logout`](https://www.consul.io/commands/logout) +-> The corresponding CLI command is [`consul logout`](/commands/logout). ### Sample Request diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index 38c3c2e0a..6c9edf95a 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -33,7 +33,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl policy create`](https://www.consul.io/commands/acl/policy/create) +-> The corresponding CLI command is [`consul acl policy create`](/commands/acl/policy/create). ### Parameters @@ -108,7 +108,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl policy read`](https://www.consul.io/commands/acl/policy/read) +-> The corresponding CLI command is [`consul acl policy read`](/commands/acl/policy/read). ### Parameters @@ -160,7 +160,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl policy read -name=`](https://www.consul.io/commands/acl/policy/read#name) +-> The corresponding CLI command is [`consul acl policy read -name=`](/commands/acl/policy/read#name). ### Parameters @@ -212,7 +212,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl policy update`](https://www.consul.io/commands/acl/policy/update) +-> The corresponding CLI command is [`consul acl policy update`](/commands/acl/policy/update). ### Parameters @@ -293,7 +293,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl policy delete`](https://www.consul.io/commands/acl/policy/delete) +-> The corresponding CLI command is [`consul acl policy delete`](/commands/acl/policy/delete). ### Parameters @@ -337,7 +337,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl policy list`](https://www.consul.io/commands/acl/policy/list) +-> The corresponding CLI command is [`consul acl policy list`](/commands/acl/policy/list). ### Parameters diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index 84ef0a0f6..099d12da0 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -32,7 +32,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl role create`](https://www.consul.io/commands/acl/role/create) +-> The corresponding CLI command is [`consul acl role create`](/commands/acl/role/create). ### Parameters @@ -174,7 +174,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl role read`](https://www.consul.io/commands/acl/role/read) +-> The corresponding CLI command is [`consul acl role read`](/commands/acl/role/read). ### Parameters @@ -246,7 +246,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl role read -name=`](https://www.consul.io/commands/acl/role/read#name) +-> The corresponding CLI command is [`consul acl role read -name=`](/commands/acl/role/read#name). ### Parameters @@ -317,7 +317,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl role update`](https://www.consul.io/commands/acl/role/update) +-> The corresponding CLI command is [`consul acl role update`](/commands/acl/role/update). ### Parameters @@ -435,7 +435,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl role delete`](https://www.consul.io/commands/acl/role/delete) +-> The corresponding CLI command is [`consul acl role delete`](/commands/acl/role/delete). ### Parameters @@ -479,7 +479,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl role list`](https://www.consul.io/commands/acl/role/list) +-> The corresponding CLI command is [`consul acl role list`](/commands/acl/role/list). ## Parameters diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index 7554e6ebd..af158127c 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -32,7 +32,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token create`](https://www.consul.io/commands/acl/token/create) +-> The corresponding CLI command is [`consul acl token create`](/commands/acl/token/create). ### Parameters @@ -175,7 +175,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl token read`](https://www.consul.io/commands/acl/token/read) +-> The corresponding CLI command is [`consul acl token read`](/commands/acl/token/read). ### Parameters @@ -247,7 +247,7 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just retrieving the data for a token that you must already possess its secret. --> The corresponding CLI command is [`consul acl token read -self`](https://www.consul.io/commands/acl/token/read#self) +-> The corresponding CLI command is [`consul acl token read -self`](/commands/acl/token/read#self). ### Sample Request @@ -299,7 +299,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token update`](https://www.consul.io/commands/acl/token/update) +-> The corresponding CLI command is [`consul acl token update`](/commands/acl/token/update). ### Parameters @@ -449,7 +449,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token clone`](https://www.consul.io/commands/acl/token/clone) +-> The corresponding CLI command is [`consul acl token clone`](/commands/acl/token/clone). ### Parameters @@ -530,7 +530,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token delete`](https://www.consul.io/commands/acl/token/delete) +-> The corresponding CLI command is [`consul acl token delete`](/commands/acl/token/delete). ### Parameters @@ -574,7 +574,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl token list`](https://www.consul.io/commands/acl/token/list) +-> The corresponding CLI command is [`consul acl token list`](/commands/acl/token/list). ## Parameters diff --git a/website/content/api-docs/agent/index.mdx b/website/content/api-docs/agent/index.mdx index 9fe617015..b472c6782 100644 --- a/website/content/api-docs/agent/index.mdx +++ b/website/content/api-docs/agent/index.mdx @@ -227,7 +227,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:read` | --> The corresponding CLI command is [`consul members`](https://www.consul.io/commands/members) +-> The corresponding CLI command is [`consul members`](/commands/members). ### Parameters @@ -375,7 +375,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul reload`](https://www.consul.io/commands/reload) +-> The corresponding CLI command is [`consul reload`](/commands/reload). ### Sample Request @@ -408,7 +408,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:write` | --> The corresponding CLI command is [`consul maint`](https://www.consul.io/commands/maint) +-> The corresponding CLI command is [`consul maint`](/commands/maint). ### Parameters @@ -635,7 +635,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul join`](https://www.consul.io/commands/join) +-> The corresponding CLI command is [`consul join`](/commands/join). ### Parameters @@ -677,7 +677,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul leave`](https://www.consul.io/commands/leave) +-> The corresponding CLI command is [`consul leave`](/commands/leave). ### Sample Request @@ -716,7 +716,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul force-leave`](https://www.consul.io/commands/force-leave) +-> The corresponding CLI command is [`consul force-leave`](/commands/force-leave). ### Parameters @@ -792,7 +792,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul acl set-agent-token`](https://www.consul.io/commands/acl/set-agent-token) +-> The corresponding CLI command is [`consul acl set-agent-token`](/commands/acl/set-agent-token). ### Parameters diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index 78d83ac7f..8c37c7d1a 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -593,7 +593,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | --> The corresponding CLI command is [`consul services register`](https://www.consul.io/commands/services/register) +-> The corresponding CLI command is [`consul services register`](/commands/services/register). ### Query string parameters @@ -768,7 +768,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | --> The corresponding CLI command is [`consul services deregister`](https://www.consul.io/commands/services/deregister) +-> The corresponding CLI command is [`consul services deregister`](/commands/services/deregister). ### Parameters diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index 3c3503f74..e685ce9fb 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -266,7 +266,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul catalog datacenters`](https://www.consul.io/commands/catalog/datacenters) +-> The corresponding CLI command is [`consul catalog datacenters`](/commands/catalog/datacenters). ### Sample Request @@ -299,7 +299,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | --> The corresponding CLI command is [`consul catalog nodes`](https://www.consul.io/commands/catalog/nodes) +-> The corresponding CLI command is [`consul catalog nodes`](/commands/catalog/nodes). ### Parameters @@ -396,7 +396,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `YES` | `all` | `none` | `service:read` | --> The corresponding CLI command is [`consul catalog services`](https://www.consul.io/commands/catalog/services) +-> The corresponding CLI command is [`consul catalog services`](/commands/catalog/services). ### Parameters diff --git a/website/content/api-docs/config.mdx b/website/content/api-docs/config.mdx index 56e5a8633..24d386283 100644 --- a/website/content/api-docs/config.mdx +++ b/website/content/api-docs/config.mdx @@ -48,7 +48,7 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write` | --> The corresponding CLI command is [`consul config write`](https://www.consul.io/commands/config/write) +-> The corresponding CLI command is [`consul config write`](/commands/config/write). ### Parameters @@ -117,7 +117,7 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | --> The corresponding CLI command is [`consul config read`](https://www.consul.io/commands/config/read) +-> The corresponding CLI command is [`consul config read`](/commands/config/read). ### Parameters @@ -188,7 +188,7 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | --> The corresponding CLI command is [`consul config list`](https://www.consul.io/commands/config/list) +-> The corresponding CLI command is [`consul config list`](/commands/config/list). ### Parameters @@ -264,7 +264,7 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write ` | --> The corresponding CLI command is [`consul config delete`](https://www.consul.io/commands/config/delete) +-> The corresponding CLI command is [`consul config delete`](/commands/config/delete). ### Parameters diff --git a/website/content/api-docs/connect/ca.mdx b/website/content/api-docs/connect/ca.mdx index 181c0cccc..4804d362b 100644 --- a/website/content/api-docs/connect/ca.mdx +++ b/website/content/api-docs/connect/ca.mdx @@ -125,7 +125,7 @@ The table below shows this endpoint's support for 1 ACL required was operator:read prior to versions 1.8.6, 1.7.10, and 1.6.10. --> The corresponding CLI command is [`consul connect ca get-config`](https://www.consul.io/commands/connect/ca#get-config) +-> The corresponding CLI command is [`consul connect ca get-config`](/commands/connect/ca#get-config). ### Sample Request @@ -167,7 +167,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul connect ca set-config`](https://www.consul.io/commands/connect/ca#set-config) +-> The corresponding CLI command is [`consul connect ca set-config`](/commands/connect/ca#set-config). ### Parameters diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 30d4f1363..5a93e7583 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -54,7 +54,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create -replace`](https://www.consul.io/commands/intention/create#replace) +-> The corresponding CLI command is [`consul intention create -replace`](/commands/intention/create#replace). ### URL Parameters @@ -165,7 +165,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/create) +-> The corresponding CLI command is [`consul intention create`](/commands/intention/create). ### URL Parameters @@ -319,7 +319,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) +-> The corresponding CLI command is [`consul intention create`](/commands/intention/get). ### Parameters @@ -396,7 +396,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) +-> The corresponding CLI command is [`consul intention create`](/commands/intention/get). ### Parameters @@ -458,7 +458,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) +-> The corresponding CLI command is [`consul intention create`](/commands/intention/get). ### Parameters @@ -549,7 +549,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) +-> The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). ### Parameters @@ -609,7 +609,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) +-> The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). ### Parameters @@ -666,7 +666,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention check`](https://www.consul.io/commands/intention/check) +-> The corresponding CLI command is [`consul intention check`](/commands/intention/check). ### Parameters @@ -731,7 +731,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention match`](https://www.consul.io/commands/intention/match) +-> The corresponding CLI command is [`consul intention match`](/commands/intention/match). ### Parameters diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index 6f2958095..dc53ba358 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -38,7 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul rtt -wan #`](https://www.consul.io/commands/rtt#wan) +-> The corresponding CLI command is [`consul rtt -wan #`](/commands/rtt#wan). ### Sample Request @@ -92,7 +92,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | --> The corresponding CLI command is [`consul rtt #`](https://www.consul.io/commands/rtt) +-> The corresponding CLI command is [`consul rtt #`](/commands/rtt). ### Parameters diff --git a/website/content/api-docs/event.mdx b/website/content/api-docs/event.mdx index 3a58f52fc..fd835a097 100644 --- a/website/content/api-docs/event.mdx +++ b/website/content/api-docs/event.mdx @@ -29,7 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `event:write` | --> The corresponding CLI command is [`consul event`](https://www.consul.io/commands/event) +-> The corresponding CLI command is [`consul event`](/commands/event). ### Parameters diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index efdeee907..63e62060e 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -41,7 +41,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `key:read` | --> The corresponding CLI command is [`consul kv get`](https://www.consul.io/commands/kv/get) +-> The corresponding CLI command is [`consul kv get`](/commands/kv/get). ### Parameters @@ -173,7 +173,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | --> The corresponding CLI command is [`consul kv put`](https://www.consul.io/commands/kv/put) +-> The corresponding CLI command is [`consul kv put`](/commands/kv/put). ### Parameters @@ -261,7 +261,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | --> The corresponding CLI command is [`consul kv delete`](https://www.consul.io/commands/kv/delete) +-> The corresponding CLI command is [`consul kv delete`](/commands/kv/delete). ### Parameters diff --git a/website/content/api-docs/namespaces.mdx b/website/content/api-docs/namespaces.mdx index ad8b032cb..1d3b49871 100644 --- a/website/content/api-docs/namespaces.mdx +++ b/website/content/api-docs/namespaces.mdx @@ -29,7 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul namespace create`](https://www.consul.io/commands/namespace/create) +-> The corresponding CLI command is [`consul namespace create`](/commands/namespace/create). ### Parameters @@ -163,7 +163,7 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). --> The corresponding CLI command is [`consul namespace read`](https://www.consul.io/commands/namespace/read) +-> The corresponding CLI command is [`consul namespace read`](/commands/namespace/read). ### Parameters @@ -231,7 +231,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul namespace update`](https://www.consul.io/commands/namespace/update) or [`consul namespace write`](https://www.consul.io/commands/namespace/write) +-> The corresponding CLI command is [`consul namespace update`](/commands/namespace/update) or [`consul namespace write`](/commands/namespace/write). ### Parameters @@ -370,7 +370,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul namespace delete`](https://www.consul.io/commands/namespace/delete) +-> The corresponding CLI command is [`consul namespace delete`](/commands/namespace/delete). ### Parameters @@ -444,7 +444,7 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). --> The corresponding CLI command is [`consul namespace list`](https://www.consul.io/commands/namespace/list) +-> The corresponding CLI command is [`consul namespace list`](/commands/namespace/list). ### Sample Request diff --git a/website/content/api-docs/operator/area.mdx b/website/content/api-docs/operator/area.mdx index 6529dc2c3..e28fe41f0 100644 --- a/website/content/api-docs/operator/area.mdx +++ b/website/content/api-docs/operator/area.mdx @@ -45,7 +45,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area create`](https://www.consul.io/commands/operator/area#create) +-> The corresponding CLI command is [`consul operator area create`](/commands/operator/area#create). ### Parameters @@ -113,7 +113,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `YES` | `all` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator area list`](https://www.consul.io/commands/operator/area#list) +-> The corresponding CLI command is [`consul operator area list`](/commands/operator/area#list). ### Parameters @@ -158,7 +158,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area update`](https://www.consul.io/commands/operator/area#update) +-> The corresponding CLI command is [`consul operator area update`](/commands/operator/area#update). ### Parameters @@ -250,7 +250,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area delete`](https://www.consul.io/commands/operator/area#delete) +-> The corresponding CLI command is [`consul operator area delete`](/commands/operator/area#delete). ### Parameters @@ -288,7 +288,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area join`](https://www.consul.io/commands/operator/area#join) +-> The corresponding CLI command is [`consul operator area join`](/commands/operator/area#join). ### Parameters @@ -363,7 +363,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator area members`](https://www.consul.io/commands/operator/area#members) +-> The corresponding CLI command is [`consul operator area members`](/commands/operator/area#members). ### Parameters diff --git a/website/content/api-docs/operator/autopilot.mdx b/website/content/api-docs/operator/autopilot.mdx index 23ca9edc9..749e795f6 100644 --- a/website/content/api-docs/operator/autopilot.mdx +++ b/website/content/api-docs/operator/autopilot.mdx @@ -33,7 +33,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator autopilot get-config`](https://www.consul.io/commands/operator/autopilot#get-config) +-> The corresponding CLI command is [`consul operator autopilot get-config`](/commands/operator/autopilot#get-config). ### Parameters @@ -89,7 +89,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator autopilot set-config`](https://www.consul.io/commands/operator/autopilot#set-config) +-> The corresponding CLI command is [`consul operator autopilot set-config`](/commands/operator/autopilot#set-config). ### Parameters @@ -273,7 +273,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator autopilot state`](https://www.consul.io/commands/operator/autopilot#state) +-> The corresponding CLI command is [`consul operator autopilot state`](/commands/operator/autopilot#state). ### Parameters diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index a2def36ef..b0dfef608 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -35,7 +35,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `NO` | `none` | `none` | `keyring:read` | --> The corresponding CLI command is [`consul keyring -list`](https://www.consul.io/commands/keyring#list) +-> The corresponding CLI command is [`consul keyring -list`](/commands/keyring#list). ### Parameters @@ -122,7 +122,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | --> The corresponding CLI command is [`consul keyring -intstall`](https://www.consul.io/commands/keyring#install) +-> The corresponding CLI command is [`consul keyring -intstall`](/commands/keyring#install). ### Parameters @@ -170,7 +170,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | --> The corresponding CLI command is [`consul keyring -use`](https://www.consul.io/commands/keyring#use) +-> The corresponding CLI command is [`consul keyring -use`](/commands/keyring#use). ### Parameters @@ -218,7 +218,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | --> The corresponding CLI command is [`consul keyring -remove`](https://www.consul.io/commands/keyring#remove) +-> The corresponding CLI command is [`consul keyring -remove`](/commands/keyring#remove). ### Parameters diff --git a/website/content/api-docs/operator/license.mdx b/website/content/api-docs/operator/license.mdx index 467b88350..b4853ad1c 100644 --- a/website/content/api-docs/operator/license.mdx +++ b/website/content/api-docs/operator/license.mdx @@ -31,7 +31,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `all` | `none` | `none` | --> The corresponding CLI command is [`consul license get`](https://www.consul.io/commands/license#get) +-> The corresponding CLI command is [`consul license get`](/commands/license#get). ### Parameters @@ -98,7 +98,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul license put`](https://www.consul.io/commands/license#put) +-> The corresponding CLI command is [`consul license put`](/commands/license#put). ### Parameters @@ -170,7 +170,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul license reset`](https://www.consul.io/commands/license#reset) +-> The corresponding CLI command is [`consul license reset`](/commands/license#reset). ### Parameters diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index 04fbfa2eb..3bd4dc4b8 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -130,7 +130,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator raft remove-peer`](https://www.consul.io/commands/operator/raft#remove-peer) +-> The corresponding CLI command is [`consul operator raft remove-peer`](/commands/operator/raft#remove-peer). ### Parameters diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index 9080389af..b2866eae3 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -39,7 +39,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `default,stale` | `none` | `management` | --> The corresponding CLI command is [`consul snapshot save`](https://www.consul.io/commands/snapshot/save) +-> The corresponding CLI command is [`consul snapshot save`](/commands/snapshot/save). ### Parameters @@ -96,7 +96,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `management` | --> The corresponding CLI command is [`consul snapshot restore`](https://www.consul.io/commands/snapshot/restore) +-> The corresponding CLI command is [`consul snapshot restore`](/commands/snapshot/restore). ### Parameters diff --git a/website/content/api-docs/status.mdx b/website/content/api-docs/status.mdx index 30b0f45ae..39df6eeca 100644 --- a/website/content/api-docs/status.mdx +++ b/website/content/api-docs/status.mdx @@ -70,7 +70,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul operator raft list-peers`](https://www.consul.io/commands/operator/raft#list-peers) +-> The corresponding CLI command is [`consul operator raft list-peers`](/commands/operator/raft#list-peers). ### Parameters From b9bfb424b5fb423830737efe273f42dc5013ea36 Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Tue, 11 Jan 2022 11:16:24 -0500 Subject: [PATCH 183/404] pushing for circleci --- website/content/docs/k8s/service-sync.mdx | 2 +- website/public/img/{k8s-services.png => k8s-service.png} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename website/public/img/{k8s-services.png => k8s-service.png} (100%) diff --git a/website/content/docs/k8s/service-sync.mdx b/website/content/docs/k8s/service-sync.mdx index bd82ce5c3..182de64c4 100644 --- a/website/content/docs/k8s/service-sync.mdx +++ b/website/content/docs/k8s/service-sync.mdx @@ -16,7 +16,7 @@ as first-class Kubernetes services. This functionality is provided by the automatically installed and configured using the [Consul Helm chart](/docs/k8s/installation/install). -![screenshot of a Kubernetes service in the UI](/img/k8s-services.png) +![screenshot of a Kubernetes service in the UI](/img/k8s-service.png) **Why sync Kubernetes services to Consul?** Kubernetes services synced to the Consul catalog enable Kubernetes services to be accessed by any node that diff --git a/website/public/img/k8s-services.png b/website/public/img/k8s-service.png similarity index 100% rename from website/public/img/k8s-services.png rename to website/public/img/k8s-service.png From d011b1afcba0509a746c39f64e58a671bd5174f6 Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Tue, 11 Jan 2022 11:18:36 -0500 Subject: [PATCH 184/404] Update website/content/docs/connect/config-entries/service-resolver.mdx Co-authored-by: mrspanishviking --- .../content/docs/connect/config-entries/service-resolver.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index 9ca83fad9..b8ec5ce2b 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -25,7 +25,7 @@ and discovery terminates. ## UI -Once a `service-resolver` is succesfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab +Once a `service-resolver` is successfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab. ![screenshot of service resolver in the UI](/img/l7-routing/Resolver.png) From 62583f75fe921e178b87328c0252352fac70257c Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Tue, 11 Jan 2022 11:18:43 -0500 Subject: [PATCH 185/404] Update website/content/docs/connect/config-entries/service-router.mdx Co-authored-by: mrspanishviking --- website/content/docs/connect/config-entries/service-router.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/connect/config-entries/service-router.mdx b/website/content/docs/connect/config-entries/service-router.mdx index fbd840b4f..da72a7edf 100644 --- a/website/content/docs/connect/config-entries/service-router.mdx +++ b/website/content/docs/connect/config-entries/service-router.mdx @@ -39,7 +39,7 @@ service of the same name. ## UI -Once a `service-router` is succesfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab +Once a `service-router` is successfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab. ![screenshot of service router in the UI](/img/l7-routing/Router.png) From 8f662c49f625613ee02efb03cd2ce4c685e6f075 Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Tue, 11 Jan 2022 11:18:49 -0500 Subject: [PATCH 186/404] Update website/content/docs/connect/config-entries/service-splitter.mdx Co-authored-by: mrspanishviking --- .../content/docs/connect/config-entries/service-splitter.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/connect/config-entries/service-splitter.mdx b/website/content/docs/connect/config-entries/service-splitter.mdx index f0029665d..797aeaf4e 100644 --- a/website/content/docs/connect/config-entries/service-splitter.mdx +++ b/website/content/docs/connect/config-entries/service-splitter.mdx @@ -41,7 +41,7 @@ resolution stage. ## UI -Once a `service-splitter` is succesfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab +Once a `service-splitter` is successfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab. ![screenshot of service splitter in the UI](/img/l7-routing/Splitter.png) From 8436b4b0d1ec007b8942633665d67c45f4e43ea4 Mon Sep 17 00:00:00 2001 From: Hannah Hearth <6323933+hannahhearth@users.noreply.github.com> Date: Mon, 10 Jan 2022 12:52:35 -0600 Subject: [PATCH 187/404] Add CTS and API Gateway to docs on tools page --- website/content/docs/download-tools.mdx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/website/content/docs/download-tools.mdx b/website/content/docs/download-tools.mdx index 47f9fcfd9..16fca097f 100644 --- a/website/content/docs/download-tools.mdx +++ b/website/content/docs/download-tools.mdx @@ -15,10 +15,15 @@ From this page you can download various tools for Consul. These tools are mainta These Consul tools are created and managed by the dedicated engineers at HashiCorp: - [Envconsul](https://github.com/hashicorp/envconsul) - Read and set environmental variables for processes from Consul. +- [Consul API Gateway](https://github.com/hashicorp/consul-api-gateway/) - dedicated ingress solution for intelligently routing traffic to applications running on a Consul Service Mesh. - [Consul ESM](https://github.com/hashicorp/consul-esm) - Provides external service monitoring for Consul. A tutorial is available on [HashiCorp Learn](https://learn.hashicorp.com/tutorials/consul/service-registration-external-services). - [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-Terraform Sync](https://github.com/hashicorp/consul-terraform-sync) - + enables dynamic updates to network infrastructure devices triggered by service +changes. A tutorial is available on [HashiCorp +Learn](https://learn.hashicorp.com/collections/consul/network-infrastructure-automation?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) ## Community Tools From cd0405ff0dcf20d71dafecfb3c7625fc5153e39a Mon Sep 17 00:00:00 2001 From: Chip Vaughn Date: Tue, 11 Jan 2022 11:26:05 -0500 Subject: [PATCH 188/404] Correcting CLI links and grammer changes part 2 --- website/content/api-docs/acl/auth-methods.mdx | 28 ++------------ .../content/api-docs/acl/binding-rules.mdx | 20 ---------- website/content/api-docs/acl/index.mdx | 20 ---------- website/content/api-docs/acl/policies.mdx | 24 ------------ website/content/api-docs/acl/roles.mdx | 24 ------------ website/content/api-docs/acl/tokens.mdx | 28 -------------- website/content/api-docs/agent/index.mdx | 28 -------------- website/content/api-docs/agent/service.mdx | 8 ---- website/content/api-docs/catalog.mdx | 12 ------ website/content/api-docs/config.mdx | 16 -------- website/content/api-docs/connect/ca.mdx | 8 ---- .../content/api-docs/connect/intentions.mdx | 38 +------------------ website/content/api-docs/coordinate.mdx | 8 ---- website/content/api-docs/event.mdx | 4 -- website/content/api-docs/kv.mdx | 12 ------ website/content/api-docs/namespaces.mdx | 20 ---------- website/content/api-docs/operator/area.mdx | 24 ------------ .../content/api-docs/operator/autopilot.mdx | 12 ------ website/content/api-docs/operator/keyring.mdx | 16 -------- website/content/api-docs/operator/license.mdx | 12 ------ website/content/api-docs/operator/raft.mdx | 4 -- website/content/api-docs/snapshot.mdx | 8 ---- website/content/api-docs/status.mdx | 4 -- 23 files changed, 5 insertions(+), 373 deletions(-) diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 8409ae2ac..799a5de42 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -34,11 +34,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD --> The corresponding CLI command is [`consul acl auth-method create`](https://www.consul.io/commands/acl/auth-method/create). -======= --> The corresponding CLI command is [`consul acl auth-method create`](https://www.consul.io/commands/acl/auth-method/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 +-> The corresponding CLI command is [`consul acl auth-method create`](/commands/acl/auth-method/create). ### Parameters @@ -166,11 +162,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD --> The corresponding CLI command is [`consul acl auth-method read`](https://www.consul.io/commands/acl/auth-method/read). -======= --> The corresponding CLI command is [`consul acl auth-method read`](https://www.consul.io/commands/acl/auth-method/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 +-> The corresponding CLI command is [`consul acl auth-method read`](/commands/acl/auth-method/read). ### Parameters @@ -224,11 +216,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD --> The corresponding CLI command is [`consul acl auth-method update`](https://www.consul.io/commands/acl/auth-method/update). -======= --> The corresponding CLI command is [`consul acl auth-method update`](https://www.consul.io/commands/acl/auth-method/update) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 +-> The corresponding CLI command is [`consul acl auth-method update`](/commands/acl/auth-method/update). ### Parameters @@ -361,11 +349,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl auth-method delete`](/commands/acl/auth-method/delete). -======= --> The corresponding CLI command is [`consul acl auth-method delete`](https://www.consul.io/commands/acl/auth-method/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -409,11 +393,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD --> The corresponding CLI command is [`consul acl auth-method list`](https://www.consul.io/commands/acl/auth-method/list). -======= --> The corresponding CLI command is [`consul acl auth-method list`](https://www.consul.io/commands/acl/auth-method/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 +-> The corresponding CLI command is [`consul acl auth-method list`](/commands/acl/auth-method/list). ### Parameters diff --git a/website/content/api-docs/acl/binding-rules.mdx b/website/content/api-docs/acl/binding-rules.mdx index f5c3d9bee..ca3365f57 100644 --- a/website/content/api-docs/acl/binding-rules.mdx +++ b/website/content/api-docs/acl/binding-rules.mdx @@ -34,11 +34,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl binding-rule create`](/commands/acl/binding-rule/create). -======= --> The corresponding CLI command is [`consul acl binding-rule create`](https://www.consul.io/commands/acl/binding-rule/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -164,11 +160,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl binding-rule read`](/commands/acl/binding-rule/read). -======= --> The corresponding CLI command is [`consul acl binding-rule read`](https://www.consul.io/commands/acl/binding-rule/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -220,11 +212,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl binding-rule update`](/commands/acl/binding-rule/update). -======= --> The corresponding CLI command is [`consul acl binding-rule update`](https://www.consul.io/commands/acl/binding-rule/update) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -356,11 +344,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl binding-rule delete`](/commands/acl/binding-rule/delete). -======= --> The corresponding CLI command is [`consul acl binding-rule delete`](https://www.consul.io/commands/acl/binding-rule/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -404,11 +388,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl binding-rule list`](/commands/acl/binding-rule/list). -======= --> The corresponding CLI command is [`consul acl binding-rule list`](https://www.consul.io/commands/acl/binding-rule/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ## Parameters diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index 963b66d74..879f90ce1 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -38,11 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl bootstrap`](/commands/acl/bootstrap). -======= --> The corresponding CLI command is [`consul acl bootstrap`](https://www.consul.io/commands/acl/bootstrap) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -208,11 +204,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). -======= --> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Payload @@ -261,11 +253,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). -======= --> The corresponding CLI command is [`consul acl translate-rules`](https://www.consul.io/commands/acl/translate-rules) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -308,11 +296,7 @@ enabled. Login requires the ability to create local tokens which is restricted to the primary datacenter and any secondary datacenters with ACL token replication enabled. -<<<<<<< HEAD -> The corresponding CLI command is [`consul login`](/commands/login). -======= --> The corresponding CLI command is [`consul login`](https://www.consul.io/commands/login) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -400,11 +384,7 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just deleting a token for which you already must possess its secret. -<<<<<<< HEAD -> The corresponding CLI command is [`consul logout`](/commands/logout). -======= --> The corresponding CLI command is [`consul logout`](https://www.consul.io/commands/logout) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index c68798380..6c9edf95a 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -33,11 +33,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl policy create`](/commands/acl/policy/create). -======= --> The corresponding CLI command is [`consul acl policy create`](https://www.consul.io/commands/acl/policy/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -112,11 +108,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl policy read`](/commands/acl/policy/read). -======= --> The corresponding CLI command is [`consul acl policy read`](https://www.consul.io/commands/acl/policy/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -168,11 +160,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl policy read -name=`](/commands/acl/policy/read#name). -======= --> The corresponding CLI command is [`consul acl policy read -name=`](https://www.consul.io/commands/acl/policy/read#name) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -224,11 +212,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl policy update`](/commands/acl/policy/update). -======= --> The corresponding CLI command is [`consul acl policy update`](https://www.consul.io/commands/acl/policy/update) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -309,11 +293,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl policy delete`](/commands/acl/policy/delete). -======= --> The corresponding CLI command is [`consul acl policy delete`](https://www.consul.io/commands/acl/policy/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -357,11 +337,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl policy list`](/commands/acl/policy/list). -======= --> The corresponding CLI command is [`consul acl policy list`](https://www.consul.io/commands/acl/policy/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index cab0ad1c1..099d12da0 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -32,11 +32,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl role create`](/commands/acl/role/create). -======= --> The corresponding CLI command is [`consul acl role create`](https://www.consul.io/commands/acl/role/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -178,11 +174,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl role read`](/commands/acl/role/read). -======= --> The corresponding CLI command is [`consul acl role read`](https://www.consul.io/commands/acl/role/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -254,11 +246,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl role read -name=`](/commands/acl/role/read#name). -======= --> The corresponding CLI command is [`consul acl role read -name=`](https://www.consul.io/commands/acl/role/read#name) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -329,11 +317,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl role update`](/commands/acl/role/update). -======= --> The corresponding CLI command is [`consul acl role update`](https://www.consul.io/commands/acl/role/update) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -451,11 +435,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl role delete`](/commands/acl/role/delete). -======= --> The corresponding CLI command is [`consul acl role delete`](https://www.consul.io/commands/acl/role/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -499,11 +479,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl role list`](/commands/acl/role/list). -======= --> The corresponding CLI command is [`consul acl role list`](https://www.consul.io/commands/acl/role/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ## Parameters diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index b3f0f2f5c..af158127c 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -32,11 +32,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token create`](/commands/acl/token/create). -======= --> The corresponding CLI command is [`consul acl token create`](https://www.consul.io/commands/acl/token/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -179,11 +175,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token read`](/commands/acl/token/read). -======= --> The corresponding CLI command is [`consul acl token read`](https://www.consul.io/commands/acl/token/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -255,11 +247,7 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just retrieving the data for a token that you must already possess its secret. -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token read -self`](/commands/acl/token/read#self). -======= --> The corresponding CLI command is [`consul acl token read -self`](https://www.consul.io/commands/acl/token/read#self) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -311,11 +299,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token update`](/commands/acl/token/update). -======= --> The corresponding CLI command is [`consul acl token update`](https://www.consul.io/commands/acl/token/update) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -465,11 +449,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token clone`](/commands/acl/token/clone). -======= --> The corresponding CLI command is [`consul acl token clone`](https://www.consul.io/commands/acl/token/clone) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -550,11 +530,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token delete`](/commands/acl/token/delete). -======= --> The corresponding CLI command is [`consul acl token delete`](https://www.consul.io/commands/acl/token/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -598,11 +574,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl token list`](/commands/acl/token/list). -======= --> The corresponding CLI command is [`consul acl token list`](https://www.consul.io/commands/acl/token/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ## Parameters diff --git a/website/content/api-docs/agent/index.mdx b/website/content/api-docs/agent/index.mdx index 5fd0fba7d..b472c6782 100644 --- a/website/content/api-docs/agent/index.mdx +++ b/website/content/api-docs/agent/index.mdx @@ -227,11 +227,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul members`](/commands/members). -======= --> The corresponding CLI command is [`consul members`](https://www.consul.io/commands/members) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -379,11 +375,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul reload`](/commands/reload). -======= --> The corresponding CLI command is [`consul reload`](https://www.consul.io/commands/reload) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -416,11 +408,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul maint`](/commands/maint). -======= --> The corresponding CLI command is [`consul maint`](https://www.consul.io/commands/maint) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -647,11 +635,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul join`](/commands/join). -======= --> The corresponding CLI command is [`consul join`](https://www.consul.io/commands/join) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -693,11 +677,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul leave`](/commands/leave). -======= --> The corresponding CLI command is [`consul leave`](https://www.consul.io/commands/leave) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -736,11 +716,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul force-leave`](/commands/force-leave). -======= --> The corresponding CLI command is [`consul force-leave`](https://www.consul.io/commands/force-leave) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -816,11 +792,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul acl set-agent-token`](/commands/acl/set-agent-token). -======= --> The corresponding CLI command is [`consul acl set-agent-token`](https://www.consul.io/commands/acl/set-agent-token) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index 9abec0fa0..8c37c7d1a 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -593,11 +593,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul services register`](/commands/services/register). -======= --> The corresponding CLI command is [`consul services register`](https://www.consul.io/commands/services/register) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Query string parameters @@ -772,11 +768,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul services deregister`](/commands/services/deregister). -======= --> The corresponding CLI command is [`consul services deregister`](https://www.consul.io/commands/services/deregister) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index 5a48e23dd..e685ce9fb 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -266,11 +266,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul catalog datacenters`](/commands/catalog/datacenters). -======= --> The corresponding CLI command is [`consul catalog datacenters`](https://www.consul.io/commands/catalog/datacenters) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -303,11 +299,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul catalog nodes`](/commands/catalog/nodes). -======= --> The corresponding CLI command is [`consul catalog nodes`](https://www.consul.io/commands/catalog/nodes) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -404,11 +396,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `YES` | `all` | `none` | `service:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul catalog services`](/commands/catalog/services). -======= --> The corresponding CLI command is [`consul catalog services`](https://www.consul.io/commands/catalog/services) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/config.mdx b/website/content/api-docs/config.mdx index e2a5707c2..24d386283 100644 --- a/website/content/api-docs/config.mdx +++ b/website/content/api-docs/config.mdx @@ -48,11 +48,7 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul config write`](/commands/config/write). -======= --> The corresponding CLI command is [`consul config write`](https://www.consul.io/commands/config/write) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -121,11 +117,7 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul config read`](/commands/config/read). -======= --> The corresponding CLI command is [`consul config read`](https://www.consul.io/commands/config/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -196,11 +188,7 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul config list`](/commands/config/list). -======= --> The corresponding CLI command is [`consul config list`](https://www.consul.io/commands/config/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -276,11 +264,7 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write ` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul config delete`](/commands/config/delete). -======= --> The corresponding CLI command is [`consul config delete`](https://www.consul.io/commands/config/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/connect/ca.mdx b/website/content/api-docs/connect/ca.mdx index ccad2a488..4804d362b 100644 --- a/website/content/api-docs/connect/ca.mdx +++ b/website/content/api-docs/connect/ca.mdx @@ -125,11 +125,7 @@ The table below shows this endpoint's support for 1 ACL required was operator:read prior to versions 1.8.6, 1.7.10, and 1.6.10. -<<<<<<< HEAD -> The corresponding CLI command is [`consul connect ca get-config`](/commands/connect/ca#get-config). -======= --> The corresponding CLI command is [`consul connect ca get-config`](https://www.consul.io/commands/connect/ca#get-config) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -171,11 +167,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul connect ca set-config`](/commands/connect/ca#set-config). -======= --> The corresponding CLI command is [`consul connect ca set-config`](https://www.consul.io/commands/connect/ca#set-config) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 1401b8a8f..8f34b65fa 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -54,11 +54,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention create -replace`](/commands/intention/create#replace). -======= --> The corresponding CLI command is [`consul intention create -replace`](https://www.consul.io/commands/intention/create#replace) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### URL Parameters @@ -169,11 +165,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention create`](/commands/intention/create). -======= --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### URL Parameters @@ -327,11 +319,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention create`](/commands/intention/get). -======= --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -408,11 +396,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention create`](/commands/intention/get). -======= --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -474,11 +458,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD --> The corresponding CLI command is [`consul intention create`](/commands/intention/get). -======= --> The corresponding CLI command is [`consul intention create`](https://www.consul.io/commands/intention/get) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 +-> The corresponding CLI command is `consul intention list`. ### Parameters @@ -569,11 +549,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). -======= --> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -633,11 +609,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). -======= --> The corresponding CLI command is [`consul intention delete`](https://www.consul.io/commands/intention/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -694,11 +666,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention check`](/commands/intention/check). -======= --> The corresponding CLI command is [`consul intention check`](https://www.consul.io/commands/intention/check) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -763,11 +731,7 @@ The table below shows this endpoint's support for for more details.

    -<<<<<<< HEAD -> The corresponding CLI command is [`consul intention match`](/commands/intention/match). -======= --> The corresponding CLI command is [`consul intention match`](https://www.consul.io/commands/intention/match) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index c51dc0bd1..dc53ba358 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -38,11 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul rtt -wan #`](/commands/rtt#wan). -======= --> The corresponding CLI command is [`consul rtt -wan #`](https://www.consul.io/commands/rtt#wan) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request @@ -96,11 +92,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul rtt #`](/commands/rtt). -======= --> The corresponding CLI command is [`consul rtt #`](https://www.consul.io/commands/rtt) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/event.mdx b/website/content/api-docs/event.mdx index e72c5aab4..fd835a097 100644 --- a/website/content/api-docs/event.mdx +++ b/website/content/api-docs/event.mdx @@ -29,11 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `event:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul event`](/commands/event). -======= --> The corresponding CLI command is [`consul event`](https://www.consul.io/commands/event) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index 70a533c85..63e62060e 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -41,11 +41,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `key:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul kv get`](/commands/kv/get). -======= --> The corresponding CLI command is [`consul kv get`](https://www.consul.io/commands/kv/get) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -177,11 +173,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul kv put`](/commands/kv/put). -======= --> The corresponding CLI command is [`consul kv put`](https://www.consul.io/commands/kv/put) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -269,11 +261,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul kv delete`](/commands/kv/delete). -======= --> The corresponding CLI command is [`consul kv delete`](https://www.consul.io/commands/kv/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/namespaces.mdx b/website/content/api-docs/namespaces.mdx index 6660a7b8f..1d3b49871 100644 --- a/website/content/api-docs/namespaces.mdx +++ b/website/content/api-docs/namespaces.mdx @@ -29,11 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul namespace create`](/commands/namespace/create). -======= --> The corresponding CLI command is [`consul namespace create`](https://www.consul.io/commands/namespace/create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -167,11 +163,7 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). -<<<<<<< HEAD -> The corresponding CLI command is [`consul namespace read`](/commands/namespace/read). -======= --> The corresponding CLI command is [`consul namespace read`](https://www.consul.io/commands/namespace/read) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -239,11 +231,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul namespace update`](/commands/namespace/update) or [`consul namespace write`](/commands/namespace/write). -======= --> The corresponding CLI command is [`consul namespace update`](https://www.consul.io/commands/namespace/update) or [`consul namespace write`](https://www.consul.io/commands/namespace/write) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -382,11 +370,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul namespace delete`](/commands/namespace/delete). -======= --> The corresponding CLI command is [`consul namespace delete`](https://www.consul.io/commands/namespace/delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -460,11 +444,7 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). -<<<<<<< HEAD -> The corresponding CLI command is [`consul namespace list`](/commands/namespace/list). -======= --> The corresponding CLI command is [`consul namespace list`](https://www.consul.io/commands/namespace/list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Sample Request diff --git a/website/content/api-docs/operator/area.mdx b/website/content/api-docs/operator/area.mdx index cb7afed1f..e28fe41f0 100644 --- a/website/content/api-docs/operator/area.mdx +++ b/website/content/api-docs/operator/area.mdx @@ -45,11 +45,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator area create`](/commands/operator/area#create). -======= --> The corresponding CLI command is [`consul operator area create`](https://www.consul.io/commands/operator/area#create) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -117,11 +113,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `YES` | `all` | `none` | `operator:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator area list`](/commands/operator/area#list). -======= --> The corresponding CLI command is [`consul operator area list`](https://www.consul.io/commands/operator/area#list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -166,11 +158,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator area update`](/commands/operator/area#update). -======= --> The corresponding CLI command is [`consul operator area update`](https://www.consul.io/commands/operator/area#update) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -262,11 +250,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator area delete`](/commands/operator/area#delete). -======= --> The corresponding CLI command is [`consul operator area delete`](https://www.consul.io/commands/operator/area#delete) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -304,11 +288,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator area join`](/commands/operator/area#join). -======= --> The corresponding CLI command is [`consul operator area join`](https://www.consul.io/commands/operator/area#join) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -383,11 +363,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator area members`](/commands/operator/area#members). -======= --> The corresponding CLI command is [`consul operator area members`](https://www.consul.io/commands/operator/area#members) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/operator/autopilot.mdx b/website/content/api-docs/operator/autopilot.mdx index 15d2738fa..749e795f6 100644 --- a/website/content/api-docs/operator/autopilot.mdx +++ b/website/content/api-docs/operator/autopilot.mdx @@ -33,11 +33,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator autopilot get-config`](/commands/operator/autopilot#get-config). -======= --> The corresponding CLI command is [`consul operator autopilot get-config`](https://www.consul.io/commands/operator/autopilot#get-config) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -93,11 +89,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator autopilot set-config`](/commands/operator/autopilot#set-config). -======= --> The corresponding CLI command is [`consul operator autopilot set-config`](https://www.consul.io/commands/operator/autopilot#set-config) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -281,11 +273,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator autopilot state`](/commands/operator/autopilot#state). -======= --> The corresponding CLI command is [`consul operator autopilot state`](https://www.consul.io/commands/operator/autopilot#state) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index de8f37b15..b0dfef608 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -35,11 +35,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `NO` | `none` | `none` | `keyring:read` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul keyring -list`](/commands/keyring#list). -======= --> The corresponding CLI command is [`consul keyring -list`](https://www.consul.io/commands/keyring#list) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -126,11 +122,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul keyring -intstall`](/commands/keyring#install). -======= --> The corresponding CLI command is [`consul keyring -intstall`](https://www.consul.io/commands/keyring#install) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -178,11 +170,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul keyring -use`](/commands/keyring#use). -======= --> The corresponding CLI command is [`consul keyring -use`](https://www.consul.io/commands/keyring#use) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -230,11 +218,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul keyring -remove`](/commands/keyring#remove). -======= --> The corresponding CLI command is [`consul keyring -remove`](https://www.consul.io/commands/keyring#remove) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/operator/license.mdx b/website/content/api-docs/operator/license.mdx index 7766393b0..b4853ad1c 100644 --- a/website/content/api-docs/operator/license.mdx +++ b/website/content/api-docs/operator/license.mdx @@ -31,11 +31,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `all` | `none` | `none` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul license get`](/commands/license#get). -======= --> The corresponding CLI command is [`consul license get`](https://www.consul.io/commands/license#get) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -102,11 +98,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul license put`](/commands/license#put). -======= --> The corresponding CLI command is [`consul license put`](https://www.consul.io/commands/license#put) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -178,11 +170,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul license reset`](/commands/license#reset). -======= --> The corresponding CLI command is [`consul license reset`](https://www.consul.io/commands/license#reset) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index 4bd375447..3bd4dc4b8 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -130,11 +130,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator raft remove-peer`](/commands/operator/raft#remove-peer). -======= --> The corresponding CLI command is [`consul operator raft remove-peer`](https://www.consul.io/commands/operator/raft#remove-peer) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index 2556ab134..b2866eae3 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -39,11 +39,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `default,stale` | `none` | `management` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul snapshot save`](/commands/snapshot/save). -======= --> The corresponding CLI command is [`consul snapshot save`](https://www.consul.io/commands/snapshot/save) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters @@ -100,11 +96,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `management` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul snapshot restore`](/commands/snapshot/restore). -======= --> The corresponding CLI command is [`consul snapshot restore`](https://www.consul.io/commands/snapshot/restore) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters diff --git a/website/content/api-docs/status.mdx b/website/content/api-docs/status.mdx index 3bff750ae..39df6eeca 100644 --- a/website/content/api-docs/status.mdx +++ b/website/content/api-docs/status.mdx @@ -70,11 +70,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | -<<<<<<< HEAD -> The corresponding CLI command is [`consul operator raft list-peers`](/commands/operator/raft#list-peers). -======= --> The corresponding CLI command is [`consul operator raft list-peers`](https://www.consul.io/commands/operator/raft#list-peers) ->>>>>>> f3587417d0a80537b28263338c32bfd840714733 ### Parameters From 277c41d336c6d2ba24a186452ff6ab920dca0e71 Mon Sep 17 00:00:00 2001 From: Mike Morris Date: Tue, 11 Jan 2022 11:46:42 -0500 Subject: [PATCH 189/404] ingress: allow setting TLS min version and cipher suites in ingress gateway config entries (#11576) * xds: refactor ingress listener SDS configuration * xds: update resolveListenerSDS call args in listeners_test * ingress: add TLS min, max and cipher suites to GatewayTLSConfig * xds: implement envoyTLSVersions and envoyTLSCipherSuites * xds: merge TLS config * xds: configure TLS parameters with ingress TLS context from leaf * xds: nil check in resolveListenerTLSConfig validation * xds: nil check in makeTLSParameters* functions * changelog: add entry for TLS params on ingress config entries * xds: remove indirection for TLS params in TLSConfig structs * xds: return tlsContext, nil instead of ambiguous err Co-authored-by: Chris S. Kim * xds: switch zero checks to types.TLSVersionUnspecified * ingress: add validation for ingress config entry TLS params * ingress: validate listener TLS config * xds: add basic ingress with TLS params tests * xds: add ingress listeners mixed TLS min version defaults precedence test * xds: add more explicit tests for ingress listeners inheriting gateway defaults * xds: add test for single TLS listener on gateway without TLS defaults * xds: regen golden files for TLSVersionInvalid zero value, add TLSVersionAuto listener test * types/tls: change TLSVersion to string * types/tls: update TLSCipherSuite to string type * types/tls: implement validation functions for TLSVersion and TLSCipherSuites, make some maps private * api: add TLS params to GatewayTLSConfig, add tests * api: add TLSMinVersion to ingress gateway config entry test JSON * xds: switch to Envoy TLS cipher suite encoding from types package * xds: fixup validation for TLSv1_3 min version with cipher suites * add some kitchen sink tests and add a missing struct tag * xds: check if mergedCfg.TLSVersion is in TLSVersionsWithConfigurableCipherSuites * xds: update connectTLSEnabled comment * xds: remove unsued resolveGatewayServiceTLSConfig function * xds: add makeCommonTLSContextFromLeafWithoutParams * types/tls: add LessThan comparator function for concrete values * types/tls: change tlsVersions validation map from string to TLSVersion keys * types/tls: remove unused envoyTLSCipherSuites * types/tls: enable chacha20 cipher suites for Consul agent * types/tls: remove insecure cipher suites from allowed config TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 and TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 are both explicitly listed as insecure and disabled in the Go source. Refs https://cs.opensource.google/go/go/+/refs/tags/go1.17.3:src/crypto/tls/cipher_suites.go;l=329-330 * types/tls: add ValidateConsulAgentCipherSuites function, make direct lookup map private * types/tls: return all unmatched cipher suites in validation errors * xds: check that Envoy API value matching TLS version is found when building TlsParameters * types/tls: check that value is found in map before appending to slice in MarshalEnvoyTLSCipherSuiteStrings * types/tls: cast to string rather than fmt.Printf in TLSCihperSuite.String() * xds: add TLSVersionUnspecified to list of configurable cipher suites * structs: update note about config entry warning * xds: remove TLS min version cipher suite unconfigurable test placeholder * types/tls: update tests to remove assumption about private map values Co-authored-by: R.B. Boyer --- .changelog/11576.txt | 3 + agent/structs/config_entry_gateways.go | 52 +++ agent/structs/config_entry_test.go | 22 +- agent/xds/clusters.go | 6 +- agent/xds/listeners.go | 16 +- agent/xds/listeners_ingress.go | 224 ++++++++--- agent/xds/listeners_test.go | 235 +++++++++++- ...th-single-tls-listener.envoy-1-20-x.golden | 120 ++++++ ...listener-cipher-suites.envoy-1-20-x.golden | 62 +++ ...s-listener-max-version.envoy-1-20-x.golden | 59 +++ ...s-listener-min-version.envoy-1-20-x.golden | 59 +++ ...eners-gateway-defaults.envoy-1-20-x.golden | 357 ++++++++++++++++++ ...-min-version-listeners.envoy-1-20-x.golden | 217 +++++++++++ api/config_entry_gateways.go | 7 + api/config_entry_gateways_test.go | 3 +- api/config_entry_test.go | 17 +- command/config/write/config_write_test.go | 39 +- types/tls.go | 240 +++++++----- types/tls_test.go | 27 +- 19 files changed, 1578 insertions(+), 187 deletions(-) create mode 100644 .changelog/11576.txt create mode 100644 agent/xds/testdata/listeners/ingress-with-single-tls-listener.envoy-1-20-x.golden create mode 100644 agent/xds/testdata/listeners/ingress-with-tls-listener-cipher-suites.envoy-1-20-x.golden create mode 100644 agent/xds/testdata/listeners/ingress-with-tls-listener-max-version.envoy-1-20-x.golden create mode 100644 agent/xds/testdata/listeners/ingress-with-tls-listener-min-version.envoy-1-20-x.golden create mode 100644 agent/xds/testdata/listeners/ingress-with-tls-min-version-listeners-gateway-defaults.envoy-1-20-x.golden create mode 100644 agent/xds/testdata/listeners/ingress-with-tls-mixed-min-version-listeners.envoy-1-20-x.golden diff --git a/.changelog/11576.txt b/.changelog/11576.txt new file mode 100644 index 000000000..94b422147 --- /dev/null +++ b/.changelog/11576.txt @@ -0,0 +1,3 @@ +```release-note:feature +ingress: allow setting TLS min version and cipher suites in ingress gateway config entries +``` diff --git a/agent/structs/config_entry_gateways.go b/agent/structs/config_entry_gateways.go index bad63294a..eb46df0d7 100644 --- a/agent/structs/config_entry_gateways.go +++ b/agent/structs/config_entry_gateways.go @@ -9,6 +9,7 @@ import ( "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/lib/stringslice" + "github.com/hashicorp/consul/types" ) // IngressGatewayConfigEntry manages the configuration for an ingress service @@ -99,6 +100,13 @@ type GatewayTLSConfig struct { // SDS allows configuring TLS certificate from an SDS service. SDS *GatewayTLSSDSConfig `json:",omitempty"` + + TLSMinVersion types.TLSVersion `json:",omitempty" alias:"tls_min_version"` + TLSMaxVersion types.TLSVersion `json:",omitempty" alias:"tls_max_version"` + + // Define a subset of cipher suites to restrict + // Only applicable to connections negotiated via TLS 1.2 or earlier + CipherSuites []types.TLSCipherSuite `json:",omitempty" alias:"cipher_suites"` } type GatewayServiceTLSConfig struct { @@ -231,11 +239,49 @@ func (e *IngressGatewayConfigEntry) validateServiceSDS(lis IngressListener, svc return nil } +func validateGatewayTLSConfig(tlsCfg GatewayTLSConfig) error { + if tlsCfg.TLSMinVersion != types.TLSVersionUnspecified { + if err := types.ValidateTLSVersion(tlsCfg.TLSMinVersion); err != nil { + return err + } + } + + if tlsCfg.TLSMaxVersion != types.TLSVersionUnspecified { + if err := types.ValidateTLSVersion(tlsCfg.TLSMaxVersion); err != nil { + return err + } + + if tlsCfg.TLSMinVersion != types.TLSVersionUnspecified { + if err, maxLessThanMin := tlsCfg.TLSMaxVersion.LessThan(tlsCfg.TLSMinVersion); err == nil && maxLessThanMin { + return fmt.Errorf("configuring max version %s less than the configured min version %s is invalid", tlsCfg.TLSMaxVersion, tlsCfg.TLSMinVersion) + } + } + } + + if len(tlsCfg.CipherSuites) != 0 { + if _, ok := types.TLSVersionsWithConfigurableCipherSuites[tlsCfg.TLSMinVersion]; !ok { + return fmt.Errorf("configuring CipherSuites is only applicable to conncetions negotiated with TLS 1.2 or earlier, TLSMinVersion is set to %s", tlsCfg.TLSMinVersion) + } + + // NOTE: it would be nice to emit a warning but not return an error from + // here if TLSMaxVersion is unspecified, TLS_AUTO or TLSv1_3 + if err := types.ValidateEnvoyCipherSuites(tlsCfg.CipherSuites); err != nil { + return err + } + } + + return nil +} + func (e *IngressGatewayConfigEntry) Validate() error { if err := validateConfigEntryMeta(e.Meta); err != nil { return err } + if err := validateGatewayTLSConfig(e.TLS); err != nil { + return err + } + validProtocols := map[string]bool{ "tcp": true, "http": true, @@ -264,6 +310,12 @@ func (e *IngressGatewayConfigEntry) Validate() error { listener.Port) } + if listener.TLS != nil { + if err := validateGatewayTLSConfig(*listener.TLS); err != nil { + return err + } + } + declaredHosts := make(map[string]bool) serviceNames := make(map[ServiceID]struct{}) for _, s := range listener.Services { diff --git a/agent/structs/config_entry_test.go b/agent/structs/config_entry_test.go index febe75012..54c7989fc 100644 --- a/agent/structs/config_entry_test.go +++ b/agent/structs/config_entry_test.go @@ -16,6 +16,7 @@ import ( "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/sdk/testutil" + "github.com/hashicorp/consul/types" ) func TestConfigEntries_ACLs(t *testing.T) { @@ -1107,6 +1108,7 @@ func TestDecodeConfigEntry(t *testing.T) { }, }, { + // TODO(rb): test SDS stuff here in both places (global/service) name: "ingress-gateway: kitchen sink", snake: ` kind = "ingress-gateway" @@ -1118,6 +1120,12 @@ func TestDecodeConfigEntry(t *testing.T) { tls { enabled = true + tls_min_version = "TLSv1_1" + tls_max_version = "TLSv1_2" + cipher_suites = [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] } listeners = [ @@ -1181,6 +1189,12 @@ func TestDecodeConfigEntry(t *testing.T) { } TLS { Enabled = true + TLSMinVersion = "TLSv1_1" + TLSMaxVersion = "TLSv1_2" + CipherSuites = [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] } Listeners = [ { @@ -1242,7 +1256,13 @@ func TestDecodeConfigEntry(t *testing.T) { "gir": "zim", }, TLS: GatewayTLSConfig{ - Enabled: true, + Enabled: true, + TLSMinVersion: types.TLSv1_1, + TLSMaxVersion: types.TLSv1_2, + CipherSuites: []types.TLSCipherSuite{ + types.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, + types.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, + }, }, Listeners: []IngressListener{ { diff --git a/agent/xds/clusters.go b/agent/xds/clusters.go index fe978c2d9..d534e9e9a 100644 --- a/agent/xds/clusters.go +++ b/agent/xds/clusters.go @@ -186,7 +186,7 @@ func makePassthroughClusters(cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, ConnectTimeout: ptypes.DurationProto(5 * time.Second), } - commonTLSContext := makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf()) + commonTLSContext := makeCommonTLSContextFromLeafWithoutParams(cfgSnap, cfgSnap.Leaf()) err := injectSANMatcher(commonTLSContext, passthrough.SpiffeID) if err != nil { return nil, fmt.Errorf("failed to inject SAN matcher rules for cluster %q: %v", passthrough.SNI, err) @@ -550,7 +550,7 @@ func (s *ResourceGenerator) makeUpstreamClusterForPreparedQuery(upstream structs } // Enable TLS upstream with the configured client certificate. - commonTLSContext := makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf()) + commonTLSContext := makeCommonTLSContextFromLeafWithoutParams(cfgSnap, cfgSnap.Leaf()) err = injectSANMatcher(commonTLSContext, spiffeIDs...) if err != nil { return nil, fmt.Errorf("failed to inject SAN matcher rules for cluster %q: %v", sni, err) @@ -728,7 +728,7 @@ func (s *ResourceGenerator) makeUpstreamClustersForDiscoveryChain( c.Http2ProtocolOptions = &envoy_core_v3.Http2ProtocolOptions{} } - commonTLSContext := makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf()) + commonTLSContext := makeCommonTLSContextFromLeafWithoutParams(cfgSnap, cfgSnap.Leaf()) err = injectSANMatcher(commonTLSContext, spiffeIDs...) if err != nil { return nil, fmt.Errorf("failed to inject SAN matcher rules for cluster %q: %v", sni, err) diff --git a/agent/xds/listeners.go b/agent/xds/listeners.go index d4de6feb5..2dd9c2ca7 100644 --- a/agent/xds/listeners.go +++ b/agent/xds/listeners.go @@ -740,7 +740,7 @@ func injectHTTPFilterOnFilterChains( func (s *ResourceGenerator) injectConnectTLSOnFilterChains(cfgSnap *proxycfg.ConfigSnapshot, listener *envoy_listener_v3.Listener) error { for idx := range listener.FilterChains { tlsContext := &envoy_tls_v3.DownstreamTlsContext{ - CommonTlsContext: makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf()), + CommonTlsContext: makeCommonTLSContextFromLeafWithoutParams(cfgSnap, cfgSnap.Leaf()), RequireClientCertificate: &wrappers.BoolValue{Value: true}, } transportSocket, err := makeDownstreamTLSTransportSocket(tlsContext) @@ -1062,7 +1062,7 @@ func (s *ResourceGenerator) makeFilterChainTerminatingGateway( protocol string, ) (*envoy_listener_v3.FilterChain, error) { tlsContext := &envoy_tls_v3.DownstreamTlsContext{ - CommonTlsContext: makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.TerminatingGateway.ServiceLeaves[service]), + CommonTlsContext: makeCommonTLSContextFromLeafWithoutParams(cfgSnap, cfgSnap.TerminatingGateway.ServiceLeaves[service]), RequireClientCertificate: &wrappers.BoolValue{Value: true}, } transportSocket, err := makeDownstreamTLSTransportSocket(tlsContext) @@ -1536,7 +1536,11 @@ func makeEnvoyHTTPFilter(name string, cfg proto.Message) (*envoy_http_v3.HttpFil }, nil } -func makeCommonTLSContextFromLeaf(cfgSnap *proxycfg.ConfigSnapshot, leaf *structs.IssuedCert) *envoy_tls_v3.CommonTlsContext { +func makeCommonTLSContextFromLeafWithoutParams(cfgSnap *proxycfg.ConfigSnapshot, leaf *structs.IssuedCert) *envoy_tls_v3.CommonTlsContext { + return makeCommonTLSContextFromLeaf(cfgSnap, leaf, nil) +} + +func makeCommonTLSContextFromLeaf(cfgSnap *proxycfg.ConfigSnapshot, leaf *structs.IssuedCert, tlsParams *envoy_tls_v3.TlsParameters) *envoy_tls_v3.CommonTlsContext { // Concatenate all the root PEMs into one. if cfgSnap.Roots == nil { return nil @@ -1547,8 +1551,12 @@ func makeCommonTLSContextFromLeaf(cfgSnap *proxycfg.ConfigSnapshot, leaf *struct rootPEMS += ca.EnsureTrailingNewline(root.RootCert) } + if tlsParams == nil { + tlsParams = &envoy_tls_v3.TlsParameters{} + } + return &envoy_tls_v3.CommonTlsContext{ - TlsParams: &envoy_tls_v3.TlsParameters{}, + TlsParams: tlsParams, TlsCertificates: []*envoy_tls_v3.TlsCertificate{ { CertificateChain: &envoy_core_v3.DataSource{ diff --git a/agent/xds/listeners_ingress.go b/agent/xds/listeners_ingress.go index 7668bd02e..8f8f741d1 100644 --- a/agent/xds/listeners_ingress.go +++ b/agent/xds/listeners_ingress.go @@ -8,43 +8,26 @@ import ( "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes/duration" "github.com/golang/protobuf/ptypes/wrappers" + "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/types" ) func (s *ResourceGenerator) makeIngressGatewayListeners(address string, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { var resources []proto.Message for listenerKey, upstreams := range cfgSnap.IngressGateway.Upstreams { - var tlsContext *envoy_tls_v3.DownstreamTlsContext - listenerCfg, ok := cfgSnap.IngressGateway.Listeners[listenerKey] if !ok { return nil, fmt.Errorf("no listener config found for listener on port %d", listenerKey.Port) } - // Enable connect TLS if it is enabled at the Gateway or specific listener - // level. - connectTLSEnabled := cfgSnap.IngressGateway.TLSConfig.Enabled || - (listenerCfg.TLS != nil && listenerCfg.TLS.Enabled) - sdsCfg, err := resolveListenerSDSConfig(cfgSnap, listenerCfg) + tlsContext, err := makeDownstreamTLSContextFromSnapshotListenerConfig(cfgSnap, listenerCfg) if err != nil { return nil, err } - if sdsCfg != nil { - // Set up listener TLS from SDS - tlsContext = &envoy_tls_v3.DownstreamTlsContext{ - CommonTlsContext: makeCommonTLSContextFromSDS(*sdsCfg), - RequireClientCertificate: &wrappers.BoolValue{Value: false}, - } - } else if connectTLSEnabled { - tlsContext = &envoy_tls_v3.DownstreamTlsContext{ - CommonTlsContext: makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf()), - RequireClientCertificate: &wrappers.BoolValue{Value: false}, - } - } - if listenerKey.Protocol == "tcp" { // We rely on the invariant of upstreams slice always having at least 1 // member, because this key/value pair is created only when a @@ -154,21 +137,116 @@ func (s *ResourceGenerator) makeIngressGatewayListeners(address string, cfgSnap return resources, nil } -func resolveListenerSDSConfig(cfgSnap *proxycfg.ConfigSnapshot, listenerCfg structs.IngressListener) (*structs.GatewayTLSSDSConfig, error) { - var mergedCfg structs.GatewayTLSSDSConfig +func makeDownstreamTLSContextFromSnapshotListenerConfig(cfgSnap *proxycfg.ConfigSnapshot, listenerCfg structs.IngressListener) (*envoy_tls_v3.DownstreamTlsContext, error) { + var downstreamContext *envoy_tls_v3.DownstreamTlsContext - gwSDS := cfgSnap.IngressGateway.TLSConfig.SDS - if gwSDS != nil { - mergedCfg.ClusterName = gwSDS.ClusterName - mergedCfg.CertResource = gwSDS.CertResource + tlsContext, err := makeCommonTLSContextFromSnapshotListenerConfig(cfgSnap, listenerCfg) + if err != nil { + return nil, err } - if listenerCfg.TLS != nil && listenerCfg.TLS.SDS != nil { - if listenerCfg.TLS.SDS.ClusterName != "" { - mergedCfg.ClusterName = listenerCfg.TLS.SDS.ClusterName + if tlsContext != nil { + downstreamContext = &envoy_tls_v3.DownstreamTlsContext{ + CommonTlsContext: tlsContext, + RequireClientCertificate: &wrappers.BoolValue{Value: false}, } - if listenerCfg.TLS.SDS.CertResource != "" { - mergedCfg.CertResource = listenerCfg.TLS.SDS.CertResource + } + + return downstreamContext, nil +} + +func makeCommonTLSContextFromSnapshotListenerConfig(cfgSnap *proxycfg.ConfigSnapshot, listenerCfg structs.IngressListener) (*envoy_tls_v3.CommonTlsContext, error) { + var tlsContext *envoy_tls_v3.CommonTlsContext + + // Enable connect TLS if it is enabled at the Gateway or specific listener + // level. + gatewayTLSCfg := cfgSnap.IngressGateway.TLSConfig + + // It is not possible to explicitly _disable_ TLS on a listener if it's + // enabled on the gateway, because false is the zero-value of the struct field + // and therefore indistinguishable from it being unspecified. + connectTLSEnabled := gatewayTLSCfg.Enabled || + (listenerCfg.TLS != nil && listenerCfg.TLS.Enabled) + + tlsCfg, err := resolveListenerTLSConfig(&gatewayTLSCfg, listenerCfg) + if err != nil { + return nil, err + } + + if tlsCfg.SDS != nil { + // Set up listener TLS from SDS + tlsContext = makeCommonTLSContextFromGatewayTLSConfig(*tlsCfg) + } else if connectTLSEnabled { + tlsContext = makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf(), makeTLSParametersFromGatewayTLSConfig(*tlsCfg)) + } + + return tlsContext, nil +} + +func resolveListenerTLSConfig(gatewayTLSCfg *structs.GatewayTLSConfig, listenerCfg structs.IngressListener) (*structs.GatewayTLSConfig, error) { + var mergedCfg structs.GatewayTLSConfig + + resolvedSDSCfg, err := resolveListenerSDSConfig(gatewayTLSCfg.SDS, listenerCfg.TLS, listenerCfg.Port) + if err != nil { + return nil, err + } + + mergedCfg.SDS = resolvedSDSCfg + + if gatewayTLSCfg != nil { + mergedCfg.TLSMinVersion = gatewayTLSCfg.TLSMinVersion + mergedCfg.TLSMaxVersion = gatewayTLSCfg.TLSMaxVersion + mergedCfg.CipherSuites = gatewayTLSCfg.CipherSuites + } + + if listenerCfg.TLS != nil { + if listenerCfg.TLS.TLSMinVersion != types.TLSVersionUnspecified { + mergedCfg.TLSMinVersion = listenerCfg.TLS.TLSMinVersion + } + if listenerCfg.TLS.TLSMaxVersion != types.TLSVersionUnspecified { + mergedCfg.TLSMaxVersion = listenerCfg.TLS.TLSMaxVersion + } + if len(listenerCfg.TLS.CipherSuites) != 0 { + mergedCfg.CipherSuites = listenerCfg.TLS.CipherSuites + } + } + + var TLSVersionsWithConfigurableCipherSuites = map[types.TLSVersion]struct{}{ + // Remove these two if Envoy ever sets TLS 1.3 as default minimum + types.TLSVersionUnspecified: {}, + types.TLSVersionAuto: {}, + + types.TLSv1_0: {}, + types.TLSv1_1: {}, + types.TLSv1_2: {}, + } + + // Validate. Configuring cipher suites is only applicable to connections negotiated + // via TLS 1.2 or earlier. Other cases shouldn't be possible as we validate them at + // input but be resilient to bugs later. + if len(mergedCfg.CipherSuites) != 0 { + if _, ok := TLSVersionsWithConfigurableCipherSuites[mergedCfg.TLSMinVersion]; !ok { + return nil, fmt.Errorf("configuring CipherSuites is only applicable to connections negotiated with TLS 1.2 or earlier, TLSMinVersion is set to %s in listener or gateway config", mergedCfg.TLSMinVersion) + } + } + + return &mergedCfg, nil +} + +func resolveListenerSDSConfig(gatewaySDSCfg *structs.GatewayTLSSDSConfig, listenerTLSCfg *structs.GatewayTLSConfig, listenerPort int) (*structs.GatewayTLSSDSConfig, error) { + var mergedCfg structs.GatewayTLSSDSConfig + + if gatewaySDSCfg != nil { + mergedCfg.ClusterName = gatewaySDSCfg.ClusterName + mergedCfg.CertResource = gatewaySDSCfg.CertResource + } + + if listenerTLSCfg != nil && listenerTLSCfg.SDS != nil { + if listenerTLSCfg.SDS.ClusterName != "" { + mergedCfg.ClusterName = listenerTLSCfg.SDS.ClusterName + } + if listenerTLSCfg.SDS.CertResource != "" { + mergedCfg.CertResource = listenerTLSCfg.SDS.CertResource } } @@ -183,10 +261,10 @@ func resolveListenerSDSConfig(cfgSnap *proxycfg.ConfigSnapshot, listenerCfg stru return &mergedCfg, nil case mergedCfg.ClusterName == "" && mergedCfg.CertResource != "": - return nil, fmt.Errorf("missing SDS cluster name for listener on port %d", listenerCfg.Port) + return nil, fmt.Errorf("missing SDS cluster name for listener on port %d", listenerPort) case mergedCfg.ClusterName != "" && mergedCfg.CertResource == "": - return nil, fmt.Errorf("missing SDS cert resource for listener on port %d", listenerCfg.Port) + return nil, fmt.Errorf("missing SDS cert resource for listener on port %d", listenerPort) } return &mergedCfg, nil @@ -260,7 +338,7 @@ func makeSDSOverrideFilterChains(cfgSnap *proxycfg.ConfigSnapshot, } tlsContext := &envoy_tls_v3.DownstreamTlsContext{ - CommonTlsContext: makeCommonTLSContextFromSDS(*svc.TLS.SDS), + CommonTlsContext: makeCommonTLSContextFromGatewayServiceTLSConfig(*svc.TLS), RequireClientCertificate: &wrappers.BoolValue{Value: false}, } @@ -284,33 +362,71 @@ func makeSDSOverrideFilterChains(cfgSnap *proxycfg.ConfigSnapshot, return chains, nil } -func makeCommonTLSContextFromSDS(sdsCfg structs.GatewayTLSSDSConfig) *envoy_tls_v3.CommonTlsContext { +var envoyTLSVersions = map[types.TLSVersion]envoy_tls_v3.TlsParameters_TlsProtocol{ + types.TLSVersionAuto: envoy_tls_v3.TlsParameters_TLS_AUTO, + types.TLSv1_0: envoy_tls_v3.TlsParameters_TLSv1_0, + types.TLSv1_1: envoy_tls_v3.TlsParameters_TLSv1_1, + types.TLSv1_2: envoy_tls_v3.TlsParameters_TLSv1_2, + types.TLSv1_3: envoy_tls_v3.TlsParameters_TLSv1_3, +} + +func makeTLSParametersFromGatewayTLSConfig(tlsCfg structs.GatewayTLSConfig) *envoy_tls_v3.TlsParameters { + tlsParams := envoy_tls_v3.TlsParameters{} + + if tlsCfg.TLSMinVersion != types.TLSVersionUnspecified { + if minVersion, ok := envoyTLSVersions[tlsCfg.TLSMinVersion]; ok { + tlsParams.TlsMinimumProtocolVersion = minVersion + } + } + if tlsCfg.TLSMaxVersion != types.TLSVersionUnspecified { + if maxVersion, ok := envoyTLSVersions[tlsCfg.TLSMaxVersion]; ok { + tlsParams.TlsMaximumProtocolVersion = maxVersion + } + } + if len(tlsCfg.CipherSuites) != 0 { + tlsParams.CipherSuites = types.MarshalEnvoyTLSCipherSuiteStrings(tlsCfg.CipherSuites) + } + + return &tlsParams +} + +func makeCommonTLSContextFromGatewayTLSConfig(tlsCfg structs.GatewayTLSConfig) *envoy_tls_v3.CommonTlsContext { return &envoy_tls_v3.CommonTlsContext{ - TlsParams: &envoy_tls_v3.TlsParameters{}, - TlsCertificateSdsSecretConfigs: []*envoy_tls_v3.SdsSecretConfig{ - { - Name: sdsCfg.CertResource, - SdsConfig: &envoy_core_v3.ConfigSource{ - ConfigSourceSpecifier: &envoy_core_v3.ConfigSource_ApiConfigSource{ - ApiConfigSource: &envoy_core_v3.ApiConfigSource{ - ApiType: envoy_core_v3.ApiConfigSource_GRPC, - TransportApiVersion: envoy_core_v3.ApiVersion_V3, - // Note ClusterNames can't be set here - that's only for REST type - // we need a full GRPC config instead. - GrpcServices: []*envoy_core_v3.GrpcService{ - { - TargetSpecifier: &envoy_core_v3.GrpcService_EnvoyGrpc_{ - EnvoyGrpc: &envoy_core_v3.GrpcService_EnvoyGrpc{ - ClusterName: sdsCfg.ClusterName, - }, + TlsParams: makeTLSParametersFromGatewayTLSConfig(tlsCfg), + TlsCertificateSdsSecretConfigs: makeTLSCertificateSdsSecretConfigsFromSDS(*tlsCfg.SDS), + } +} + +func makeCommonTLSContextFromGatewayServiceTLSConfig(tlsCfg structs.GatewayServiceTLSConfig) *envoy_tls_v3.CommonTlsContext { + return &envoy_tls_v3.CommonTlsContext{ + TlsParams: &envoy_tls_v3.TlsParameters{}, + TlsCertificateSdsSecretConfigs: makeTLSCertificateSdsSecretConfigsFromSDS(*tlsCfg.SDS), + } +} +func makeTLSCertificateSdsSecretConfigsFromSDS(sdsCfg structs.GatewayTLSSDSConfig) []*envoy_tls_v3.SdsSecretConfig { + return []*envoy_tls_v3.SdsSecretConfig{ + { + Name: sdsCfg.CertResource, + SdsConfig: &envoy_core_v3.ConfigSource{ + ConfigSourceSpecifier: &envoy_core_v3.ConfigSource_ApiConfigSource{ + ApiConfigSource: &envoy_core_v3.ApiConfigSource{ + ApiType: envoy_core_v3.ApiConfigSource_GRPC, + TransportApiVersion: envoy_core_v3.ApiVersion_V3, + // Note ClusterNames can't be set here - that's only for REST type + // we need a full GRPC config instead. + GrpcServices: []*envoy_core_v3.GrpcService{ + { + TargetSpecifier: &envoy_core_v3.GrpcService_EnvoyGrpc_{ + EnvoyGrpc: &envoy_core_v3.GrpcService_EnvoyGrpc{ + ClusterName: sdsCfg.ClusterName, }, - Timeout: &duration.Duration{Seconds: 5}, }, + Timeout: &duration.Duration{Seconds: 5}, }, }, }, - ResourceApiVersion: envoy_core_v3.ApiVersion_V3, }, + ResourceApiVersion: envoy_core_v3.ApiVersion_V3, }, }, } diff --git a/agent/xds/listeners_test.go b/agent/xds/listeners_test.go index cbfe6c728..7a3419a24 100644 --- a/agent/xds/listeners_test.go +++ b/agent/xds/listeners_test.go @@ -519,6 +519,30 @@ func TestListenersFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshotIngressWithTLSListener, setup: nil, }, + { + name: "ingress-with-tls-listener-min-version", + create: proxycfg.TestConfigSnapshotIngressWithTLSListener, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.IngressGateway.TLSConfig.TLSMinVersion = types.TLSv1_3 + }, + }, + { + name: "ingress-with-tls-listener-max-version", + create: proxycfg.TestConfigSnapshotIngressWithTLSListener, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.IngressGateway.TLSConfig.TLSMaxVersion = types.TLSv1_2 + }, + }, + { + name: "ingress-with-tls-listener-cipher-suites", + create: proxycfg.TestConfigSnapshotIngressWithTLSListener, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.IngressGateway.TLSConfig.CipherSuites = []types.TLSCipherSuite{ + types.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, + types.TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256, + } + }, + }, { name: "ingress-with-tls-mixed-listeners", // Use SDS helper even though we aren't testing SDS since it already sets @@ -572,6 +596,215 @@ func TestListenersFromSnapshot(t *testing.T) { } }, }, + { + name: "ingress-with-tls-min-version-listeners-gateway-defaults", + create: proxycfg.TestConfigSnapshotIngressWithTLSListener, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.IngressGateway.TLSConfig.TLSMinVersion = types.TLSv1_2 + + // One listener disables TLS, one inherits TLS minimum version from the gateway + // config, two others set different versions + snap.IngressGateway.Upstreams = map[proxycfg.IngressListenerKey]structs.Upstreams{ + {Protocol: "http", Port: 8080}: { + { + DestinationName: "s1", + LocalBindPort: 8080, + }, + }, + {Protocol: "http", Port: 8081}: { + { + DestinationName: "s2", + LocalBindPort: 8081, + }, + }, + {Protocol: "http", Port: 8082}: { + { + DestinationName: "s3", + LocalBindPort: 8082, + }, + }, + {Protocol: "http", Port: 8083}: { + { + DestinationName: "s4", + LocalBindPort: 8083, + }, + }, + {Protocol: "http", Port: 8084}: { + { + DestinationName: "s4", + LocalBindPort: 8084, + }, + }, + } + snap.IngressGateway.Listeners = map[proxycfg.IngressListenerKey]structs.IngressListener{ + // Omits listener TLS config, should default to gateway TLS config + {Protocol: "http", Port: 8080}: { + Port: 8080, + Services: []structs.IngressService{ + { + Name: "s1", + }, + }, + }, + // Explicitly sets listener TLS config to nil, should default to gateway TLS config + {Protocol: "http", Port: 8081}: { + Port: 8081, + Services: []structs.IngressService{ + { + Name: "s2", + }, + }, + TLS: nil, + }, + // Explicitly enables TLS config, but with no listener default TLS params, + // should default to gateway TLS config + {Protocol: "http", Port: 8082}: { + Port: 8082, + Services: []structs.IngressService{ + { + Name: "s3", + }, + }, + TLS: &structs.GatewayTLSConfig{ + Enabled: true, + }, + }, + // Explicitly unset gateway default TLS min version in favor of proxy default + {Protocol: "http", Port: 8083}: { + Port: 8083, + Services: []structs.IngressService{ + { + Name: "s3", + }, + }, + TLS: &structs.GatewayTLSConfig{ + Enabled: true, + TLSMinVersion: types.TLSVersionAuto, + }, + }, + // Disables listener TLS + {Protocol: "http", Port: 8084}: { + Port: 8084, + Services: []structs.IngressService{ + { + Name: "s4", + }, + }, + TLS: &structs.GatewayTLSConfig{ + Enabled: false, + }, + }, + } + }, + }, + { + name: "ingress-with-single-tls-listener", + create: proxycfg.TestConfigSnapshotIngress, + setup: func(snap *proxycfg.ConfigSnapshot) { + // One listener should inherit non-TLS gateway config, another + // listener configures TLS with an explicit minimum version + snap.IngressGateway.Upstreams = map[proxycfg.IngressListenerKey]structs.Upstreams{ + {Protocol: "http", Port: 8080}: { + { + DestinationName: "s1", + LocalBindPort: 8080, + }, + }, + {Protocol: "http", Port: 8081}: { + { + DestinationName: "s2", + LocalBindPort: 8081, + }, + }, + } + snap.IngressGateway.Listeners = map[proxycfg.IngressListenerKey]structs.IngressListener{ + {Protocol: "http", Port: 8080}: { + Port: 8080, + Services: []structs.IngressService{ + { + Name: "s1", + }, + }, + }, + {Protocol: "http", Port: 8081}: { + Port: 8081, + Services: []structs.IngressService{ + { + Name: "s2", + }, + }, + TLS: &structs.GatewayTLSConfig{ + Enabled: true, + TLSMinVersion: types.TLSv1_2, + }, + }, + } + }, + }, + { + name: "ingress-with-tls-mixed-min-version-listeners", + create: proxycfg.TestConfigSnapshotIngressWithTLSListener, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.IngressGateway.TLSConfig.TLSMinVersion = types.TLSv1_2 + + // One listener should inherit TLS minimum version from the gateway config, + // two others each set explicit TLS minimum versions + snap.IngressGateway.Upstreams = map[proxycfg.IngressListenerKey]structs.Upstreams{ + {Protocol: "http", Port: 8080}: { + { + DestinationName: "s1", + LocalBindPort: 8080, + }, + }, + {Protocol: "http", Port: 8081}: { + { + DestinationName: "s2", + LocalBindPort: 8081, + }, + }, + {Protocol: "http", Port: 8082}: { + { + DestinationName: "s3", + LocalBindPort: 8082, + }, + }, + } + snap.IngressGateway.Listeners = map[proxycfg.IngressListenerKey]structs.IngressListener{ + {Protocol: "http", Port: 8080}: { + Port: 8080, + Services: []structs.IngressService{ + { + Name: "s1", + }, + }, + }, + {Protocol: "http", Port: 8081}: { + Port: 8081, + Services: []structs.IngressService{ + { + Name: "s2", + }, + }, + TLS: &structs.GatewayTLSConfig{ + Enabled: true, + TLSMinVersion: types.TLSv1_0, + }, + }, + {Protocol: "http", Port: 8082}: { + Port: 8082, + Services: []structs.IngressService{ + { + Name: "s3", + }, + }, + TLS: &structs.GatewayTLSConfig{ + Enabled: true, + TLSMinVersion: types.TLSv1_3, + }, + }, + } + }, + }, { name: "ingress-with-sds-listener-gw-level", create: proxycfg.TestConfigSnapshotIngressWithGatewaySDS, @@ -1208,7 +1441,7 @@ func TestResolveListenerSDSConfig(t *testing.T) { listenerCfg = lisCfg } - got, err := resolveListenerSDSConfig(snap, listenerCfg) + got, err := resolveListenerSDSConfig(snap.IngressGateway.TLSConfig.SDS, listenerCfg.TLS, listenerCfg.Port) if tc.wantErr != "" { require.Error(t, err) require.Contains(t, err.Error(), tc.wantErr) diff --git a/agent/xds/testdata/listeners/ingress-with-single-tls-listener.envoy-1-20-x.golden b/agent/xds/testdata/listeners/ingress-with-single-tls-listener.envoy-1-20-x.golden new file mode 100644 index 000000000..3c0d3cbec --- /dev/null +++ b/agent/xds/testdata/listeners/ingress-with-single-tls-listener.envoy-1-20-x.golden @@ -0,0 +1,120 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8080", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8080 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8080", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8080" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ] + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8081", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8081 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8081", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8081" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/ingress-with-tls-listener-cipher-suites.envoy-1-20-x.golden b/agent/xds/testdata/listeners/ingress-with-tls-listener-cipher-suites.envoy-1-20-x.golden new file mode 100644 index 000000000..028827865 --- /dev/null +++ b/agent/xds/testdata/listeners/ingress-with-tls-listener-cipher-suites.envoy-1-20-x.golden @@ -0,0 +1,62 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "db:1.2.3.4:9191", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.db.default.default.dc1", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "cipherSuites": [ + "ECDHE-ECDSA-AES128-GCM-SHA256", + "ECDHE-ECDSA-CHACHA20-POLY1305" + ] + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/ingress-with-tls-listener-max-version.envoy-1-20-x.golden b/agent/xds/testdata/listeners/ingress-with-tls-listener-max-version.envoy-1-20-x.golden new file mode 100644 index 000000000..6797b8149 --- /dev/null +++ b/agent/xds/testdata/listeners/ingress-with-tls-listener-max-version.envoy-1-20-x.golden @@ -0,0 +1,59 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "db:1.2.3.4:9191", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.db.default.default.dc1", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMaximumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/ingress-with-tls-listener-min-version.envoy-1-20-x.golden b/agent/xds/testdata/listeners/ingress-with-tls-listener-min-version.envoy-1-20-x.golden new file mode 100644 index 000000000..e052df8df --- /dev/null +++ b/agent/xds/testdata/listeners/ingress-with-tls-listener-min-version.envoy-1-20-x.golden @@ -0,0 +1,59 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "db:1.2.3.4:9191", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.db.default.default.dc1", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_3" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/ingress-with-tls-min-version-listeners-gateway-defaults.envoy-1-20-x.golden b/agent/xds/testdata/listeners/ingress-with-tls-min-version-listeners-gateway-defaults.envoy-1-20-x.golden new file mode 100644 index 000000000..6cce4ea29 --- /dev/null +++ b/agent/xds/testdata/listeners/ingress-with-tls-min-version-listeners-gateway-defaults.envoy-1-20-x.golden @@ -0,0 +1,357 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8080", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8080 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8080", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8080" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8081", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8081 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8081", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8081" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8082", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8082 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8082", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8082" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8083", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8083 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8083", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8083" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8084", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8084 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8084", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8084" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/ingress-with-tls-mixed-min-version-listeners.envoy-1-20-x.golden b/agent/xds/testdata/listeners/ingress-with-tls-mixed-min-version-listeners.envoy-1-20-x.golden new file mode 100644 index 000000000..47b7046a9 --- /dev/null +++ b/agent/xds/testdata/listeners/ingress-with-tls-mixed-min-version-listeners.envoy-1-20-x.golden @@ -0,0 +1,217 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8080", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8080 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8080", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8080" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_2" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8081", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8081 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8081", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8081" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_0" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "http:1.2.3.4:8082", + "address": { + "socketAddress": { + "address": "1.2.3.4", + "portValue": 8082 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager", + "statPrefix": "ingress_upstream_8082", + "rds": { + "configSource": { + "ads": { + + }, + "resourceApiVersion": "V3" + }, + "routeConfigName": "8082" + }, + "httpFilters": [ + { + "name": "envoy.filters.http.router" + } + ], + "tracing": { + "randomSampling": { + + } + } + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "commonTlsContext": { + "tlsParams": { + "tlsMinimumProtocolVersion": "TLSv1_3" + }, + "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": false + } + } + } + ], + "trafficDirection": "OUTBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/api/config_entry_gateways.go b/api/config_entry_gateways.go index 0792ad824..56d949ea5 100644 --- a/api/config_entry_gateways.go +++ b/api/config_entry_gateways.go @@ -43,6 +43,13 @@ type GatewayTLSConfig struct { // SDS allows configuring TLS certificate from an SDS service. SDS *GatewayTLSSDSConfig `json:",omitempty"` + + TLSMinVersion string `json:",omitempty" alias:"tls_min_version"` + TLSMaxVersion string `json:",omitempty" alias:"tls_max_version"` + + // Define a subset of cipher suites to restrict + // Only applicable to connections negotiated via TLS 1.2 or earlier + CipherSuites []string `json:",omitempty" alias:"cipher_suites"` } type GatewayServiceTLSConfig struct { diff --git a/api/config_entry_gateways_test.go b/api/config_entry_gateways_test.go index f80a4d74e..0e2acd728 100644 --- a/api/config_entry_gateways_test.go +++ b/api/config_entry_gateways_test.go @@ -26,7 +26,8 @@ func TestAPI_ConfigEntries_IngressGateway(t *testing.T) { Kind: IngressGateway, Name: "bar", TLS: GatewayTLSConfig{ - Enabled: true, + Enabled: true, + TLSMinVersion: "TLSv1_2", }, } diff --git a/api/config_entry_test.go b/api/config_entry_test.go index 04419ea37..e029889f1 100644 --- a/api/config_entry_test.go +++ b/api/config_entry_test.go @@ -945,6 +945,7 @@ func TestDecodeConfigEntry(t *testing.T) { }, }, { + // TODO(rb): test SDS stuff here in both places (global/service) name: "ingress-gateway", body: ` { @@ -955,7 +956,13 @@ func TestDecodeConfigEntry(t *testing.T) { "gir": "zim" }, "Tls": { - "Enabled": true + "Enabled": true, + "TLSMinVersion": "TLSv1_1", + "TLSMaxVersion": "TLSv1_2", + "CipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] }, "Listeners": [ { @@ -992,7 +999,13 @@ func TestDecodeConfigEntry(t *testing.T) { "gir": "zim", }, TLS: GatewayTLSConfig{ - Enabled: true, + Enabled: true, + TLSMinVersion: "TLSv1_1", + TLSMaxVersion: "TLSv1_2", + CipherSuites: []string{ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + }, }, Listeners: []IngressListener{ { diff --git a/command/config/write/config_write_test.go b/command/config/write/config_write_test.go index 0ff5152c9..3128233fe 100644 --- a/command/config/write/config_write_test.go +++ b/command/config/write/config_write_test.go @@ -2096,6 +2096,7 @@ func TestParseConfigEntry(t *testing.T) { }, }, { + // TODO(rb): test SDS stuff here in both places (global/service) name: "ingress-gateway: kitchen sink", snake: ` kind = "ingress-gateway" @@ -2106,6 +2107,12 @@ func TestParseConfigEntry(t *testing.T) { } tls { enabled = true + tls_min_version = "TLSv1_1" + tls_max_version = "TLSv1_2" + cipher_suites = [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] } listeners = [ { @@ -2133,6 +2140,12 @@ func TestParseConfigEntry(t *testing.T) { } Tls { Enabled = true + TLSMinVersion = "TLSv1_1" + TLSMaxVersion = "TLSv1_2" + CipherSuites = [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] } Listeners = [ { @@ -2160,7 +2173,13 @@ func TestParseConfigEntry(t *testing.T) { "gir": "zim" }, "tls": { - "enabled": true + "enabled": true, + "tls_min_version": "TLSv1_1", + "tls_max_version": "TLSv1_2", + "cipher_suites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] }, "listeners": [ { @@ -2188,8 +2207,14 @@ func TestParseConfigEntry(t *testing.T) { "foo": "bar", "gir": "zim" }, - "Tls": { - "Enabled": true + "TLS": { + "Enabled": true, + "TLSMinVersion": "TLSv1_1", + "TLSMaxVersion": "TLSv1_2", + "CipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + ] }, "Listeners": [ { @@ -2217,7 +2242,13 @@ func TestParseConfigEntry(t *testing.T) { "gir": "zim", }, TLS: api.GatewayTLSConfig{ - Enabled: true, + Enabled: true, + TLSMinVersion: "TLSv1_1", + TLSMaxVersion: "TLSv1_2", + CipherSuites: []string{ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + }, }, Listeners: []api.IngressListener{ { diff --git a/types/tls.go b/types/tls.go index 66c10b19b..9c50f498b 100644 --- a/types/tls.go +++ b/types/tls.go @@ -1,43 +1,42 @@ package types import ( - "encoding/json" "fmt" + "strings" ) -// TLSVersion is a strongly-typed int used for relative comparison -// (minimum, maximum, greater than, less than) of TLS versions -type TLSVersion int +// TLSVersion is a strongly-typed string for TLS versions +type TLSVersion string const ( // Error value, excluded from lookup maps - TLSVersionInvalid TLSVersion = iota - 1 + TLSVersionInvalid TLSVersion = "TLS_INVALID" // Explicit unspecified zero-value to avoid overwriting parent defaults - TLSVersionUnspecified + TLSVersionUnspecified TLSVersion = "" // Explictly allow implementation to select TLS version // May be useful to supercede defaults specified at a higher layer - TLSVersionAuto + TLSVersionAuto TLSVersion = "TLS_AUTO" _ // Placeholder for SSLv3, hopefully we won't have to add this // TLS versions - TLSv1_0 - TLSv1_1 - TLSv1_2 - TLSv1_3 + TLSv1_0 TLSVersion = "TLSv1_0" + TLSv1_1 TLSVersion = "TLSv1_1" + TLSv1_2 TLSVersion = "TLSv1_2" + TLSv1_3 TLSVersion = "TLSv1_3" ) var ( - TLSVersions = map[string]TLSVersion{ - "TLS_AUTO": TLSVersionAuto, - "TLSv1_0": TLSv1_0, - "TLSv1_1": TLSv1_1, - "TLSv1_2": TLSv1_2, - "TLSv1_3": TLSv1_3, + tlsVersions = map[TLSVersion]struct{}{ + TLSVersionAuto: {}, + TLSv1_0: {}, + TLSv1_1: {}, + TLSv1_2: {}, + TLSv1_3: {}, } - // NOTE: This interface is deprecated in favor of TLSVersions + // NOTE: This interface is deprecated in favor of tlsVersions // and should be eventually removed in a future release. DeprecatedConsulAgentTLSVersions = map[string]TLSVersion{ "": TLSVersionAuto, @@ -46,24 +45,10 @@ var ( "tls12": TLSv1_2, "tls13": TLSv1_3, } - HumanTLSVersionStrings = map[TLSVersion]string{ - TLSVersionAuto: "Allow implementation to select TLS version", - TLSv1_0: "TLS 1.0", - TLSv1_1: "TLS 1.1", - TLSv1_2: "TLS 1.2", - TLSv1_3: "TLS 1.3", - } - ConsulConfigTLSVersionStrings = func() map[TLSVersion]string { - inverted := make(map[TLSVersion]string, len(TLSVersions)) - for k, v := range TLSVersions { - inverted[v] = k - } - return inverted - }() // NOTE: these currently map to the deprecated config strings to support the // deployment pattern of upgrading servers first. This map should eventually - // be removed and any lookups updated to use ConsulConfigTLSVersionStrings - // with newer config strings instead in a future release. + // be removed and any lookups updated to instead use the TLSVersion string + // values directly in a future release. ConsulAutoConfigTLSVersionStrings = map[TLSVersion]string{ TLSVersionAuto: "", TLSv1_0: "tls10", @@ -71,33 +56,51 @@ var ( TLSv1_2: "tls12", TLSv1_3: "tls13", } + TLSVersionsWithConfigurableCipherSuites = map[TLSVersion]struct{}{ + // NOTE: these two are implementation-dependent, but it is not expected that + // either Go or Envoy would default to TLS 1.3 as a minimum version in the + // near future + TLSVersionUnspecified: {}, + TLSVersionAuto: {}, + + TLSv1_0: {}, + TLSv1_1: {}, + TLSv1_2: {}, + } ) -func (v TLSVersion) String() string { - return ConsulConfigTLSVersionStrings[v] +func (v *TLSVersion) String() string { + return string(*v) } -func (v TLSVersion) MarshalJSON() ([]byte, error) { - return json.Marshal(v.String()) +var tlsVersionComparison = map[TLSVersion]uint{ + TLSv1_0: 1, + TLSv1_1: 2, + TLSv1_2: 3, + TLSv1_3: 4, } -func (v *TLSVersion) UnmarshalJSON(bytes []byte) error { - versionStr := string(bytes) - - if n := len(versionStr); n > 1 && versionStr[0] == '"' && versionStr[n-1] == '"' { - versionStr = versionStr[1 : n-1] // trim surrounding quotes +// Will only return true for concrete versions and won't catch +// implementation-dependent conflicts with TLSVersionAuto or unspecified values +func (a TLSVersion) LessThan(b TLSVersion) (error, bool) { + for _, v := range []TLSVersion{a, b} { + if _, ok := tlsVersionComparison[v]; !ok { + return fmt.Errorf("can't compare implementation-dependent values"), false + } } - if version, ok := TLSVersions[versionStr]; ok { - *v = version - return nil - } - - *v = TLSVersionInvalid - return fmt.Errorf("no matching TLS Version found for %s", versionStr) + return nil, tlsVersionComparison[a] < tlsVersionComparison[b] } -// IANA cipher suite constants and values as defined at +func ValidateTLSVersion(v TLSVersion) error { + if _, ok := tlsVersions[v]; !ok { + return fmt.Errorf("no matching TLS version found for %s", v.String()) + } + + return nil +} + +// IANA cipher suite string constants as defined at // https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml // This is the total list of TLS 1.2-style cipher suites // which are currently supported by either Envoy 1.21 or the Consul agent @@ -106,67 +109,49 @@ func (v *TLSVersion) UnmarshalJSON(bytes []byte) error { // and as supported cipher suites in the Go runtime change. // // The naming convention for cipher suites changed in TLS 1.3 -// but constant values should still be globally unqiue -// Handling validation on a subset of TLSCipherSuite constants -// would be a future exercise if cipher suites for TLS 1.3 ever -// become configurable in BoringSSL, Envoy, or other implementation -type TLSCipherSuite uint16 +// but constant values should still be globally unqiue. +// +// Handling validation on distinct sets of TLS 1.3 and TLS 1.2 TLSCipherSuite +// constants would be a future exercise if cipher suites for TLS 1.3 ever +// become configurable in BoringSSL, Envoy, or other implementation. +type TLSCipherSuite string const ( - // Envoy cipher suites also used by Consul agent - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLSCipherSuite = 0xc02b - TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 = 0xcca9 // Not used by Consul agent yet - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = 0xc02f - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = 0xcca8 // Not used by Consul agent yet - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA = 0xc009 - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA = 0xc013 - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = 0xc02c - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = 0xc030 - TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA = 0xc00a - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA = 0xc014 + // Cipher suites used by both Envoy and Consul agent + TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 = "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256" + TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 = "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256" + TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 = "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256" + TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 = "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" + TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA" + TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 = "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384" + TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 = "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" + TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" - // Older cipher suites not supported for Consul agent TLS, will eventually be removed from Envoy defaults - TLS_RSA_WITH_AES_128_GCM_SHA256 = 0x009c - TLS_RSA_WITH_AES_128_CBC_SHA = 0x002f - TLS_RSA_WITH_AES_256_GCM_SHA384 = 0x009d - TLS_RSA_WITH_AES_256_CBC_SHA = 0x0035 - - // Additional cipher suites used by Consul agent but not Envoy - // TODO: these are both explicitly listed as insecure and disabled in the Go source, should they be removed? - // https://cs.opensource.google/go/go/+/refs/tags/go1.17.3:src/crypto/tls/cipher_suites.go;l=329-330 - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 = 0x0023 - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 = 0xc027 + // Older cipher suites not supported for Consul agent TLS, + // will eventually be removed from Envoy defaults + TLS_RSA_WITH_AES_128_GCM_SHA256 = "TLS_RSA_WITH_AES_128_GCM_SHA256" + TLS_RSA_WITH_AES_128_CBC_SHA = "TLS_RSA_WITH_AES_128_CBC_SHA" + TLS_RSA_WITH_AES_256_GCM_SHA384 = "TLS_RSA_WITH_AES_256_GCM_SHA384" + TLS_RSA_WITH_AES_256_CBC_SHA = "TLS_RSA_WITH_AES_256_CBC_SHA" ) var ( - TLSCipherSuites = map[string]TLSCipherSuite{ - "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256": TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256, - "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA": TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, - "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256": TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, - "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA": TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, - "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384": TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, - "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256": TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256, - "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA": TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, - "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256": TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, - "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA": TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, - "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384": TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, + consulAgentTLSCipherSuites = map[TLSCipherSuite]struct{}{ + TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256: {}, + TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA: {}, + TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256: {}, + TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA: {}, + TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384: {}, - "TLS_RSA_WITH_AES_128_GCM_SHA256": TLS_RSA_WITH_AES_128_GCM_SHA256, - "TLS_RSA_WITH_AES_128_CBC_SHA": TLS_RSA_WITH_AES_128_CBC_SHA, - "TLS_RSA_WITH_AES_256_GCM_SHA384": TLS_RSA_WITH_AES_256_GCM_SHA384, - "TLS_RSA_WITH_AES_256_CBC_SHA": TLS_RSA_WITH_AES_256_CBC_SHA, - - "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256": TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, - "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256": TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, + TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256: {}, + TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA: {}, + TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256: {}, + TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA: {}, + TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384: {}, } - HumanTLSCipherSuiteStrings = func() map[TLSCipherSuite]string { - inverted := make(map[TLSCipherSuite]string, len(TLSCipherSuites)) - for k, v := range TLSCipherSuites { - inverted[v] = k - } - return inverted - }() - EnvoyTLSCipherSuiteStrings = map[TLSCipherSuite]string{ + envoyTLSCipherSuiteStrings = map[TLSCipherSuite]string{ TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256: "ECDHE-ECDSA-AES128-GCM-SHA256", TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256: "ECDHE-ECDSA-CHACHA20-POLY1305", TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256: "ECDHE-RSA-AES128-GCM-SHA256", @@ -183,3 +168,50 @@ var ( TLS_RSA_WITH_AES_256_CBC_SHA: "AES256-SHA", } ) + +func (c *TLSCipherSuite) String() string { + return string(*c) +} + +func ValidateConsulAgentCipherSuites(cipherSuites []TLSCipherSuite) error { + var unmatched []string + + for _, c := range cipherSuites { + if _, ok := consulAgentTLSCipherSuites[c]; !ok { + unmatched = append(unmatched, c.String()) + } + } + + if len(unmatched) > 0 { + return fmt.Errorf("no matching Consul Agent TLS cipher suite found for %s", strings.Join(unmatched, ",")) + } + return nil +} + +func ValidateEnvoyCipherSuites(cipherSuites []TLSCipherSuite) error { + var unmatched []string + + for _, c := range cipherSuites { + if _, ok := envoyTLSCipherSuiteStrings[c]; !ok { + unmatched = append(unmatched, c.String()) + } + } + + if len(unmatched) > 0 { + return fmt.Errorf("no matching Envoy TLS cipher suite found for %s", strings.Join(unmatched, ",")) + } + + return nil +} + +func MarshalEnvoyTLSCipherSuiteStrings(cipherSuites []TLSCipherSuite) []string { + cipherSuiteStrings := []string{} + + for _, c := range cipherSuites { + if s, ok := envoyTLSCipherSuiteStrings[c]; ok { + cipherSuiteStrings = append(cipherSuiteStrings, s) + } + } + + return cipherSuiteStrings +} diff --git a/types/tls_test.go b/types/tls_test.go index 0cf94e42f..5c1c1f645 100644 --- a/types/tls_test.go +++ b/types/tls_test.go @@ -7,14 +7,12 @@ import ( "github.com/stretchr/testify/require" ) -func TestTLSVersion_PartialEq(t *testing.T) { - require.Greater(t, TLSv1_3, TLSv1_2) - require.Greater(t, TLSv1_2, TLSv1_1) - require.Greater(t, TLSv1_1, TLSv1_0) - - require.Less(t, TLSv1_2, TLSv1_3) - require.Less(t, TLSv1_1, TLSv1_2) - require.Less(t, TLSv1_0, TLSv1_1) +func TestTLSVersion_Valid(t *testing.T) { + require.NoError(t, ValidateTLSVersion("TLS_AUTO")) + require.NoError(t, ValidateTLSVersion("TLSv1_0")) + require.NoError(t, ValidateTLSVersion("TLSv1_1")) + require.NoError(t, ValidateTLSVersion("TLSv1_2")) + require.NoError(t, ValidateTLSVersion("TLSv1_3")) } func TestTLSVersion_Invalid(t *testing.T) { @@ -33,16 +31,19 @@ func TestTLSVersion_Zero(t *testing.T) { func TestTLSVersion_ToJSON(t *testing.T) { var tlsVersion TLSVersion - err := tlsVersion.UnmarshalJSON([]byte(`"foo"`)) - require.Error(t, err) - require.Equal(t, tlsVersion, TLSVersionInvalid) - for str, version := range TLSVersions { + // Unmarshalling won't catch invalid version strings, + // must be checked in config or config entry validation + err := json.Unmarshal([]byte(`"foo"`), &tlsVersion) + require.NoError(t, err) + + for version := range tlsVersions { + str := version.String() versionJSON, err := json.Marshal(version) require.NoError(t, err) require.Equal(t, versionJSON, []byte(`"`+str+`"`)) - err = tlsVersion.UnmarshalJSON([]byte(`"` + str + `"`)) + err = json.Unmarshal([]byte(`"`+str+`"`), &tlsVersion) require.NoError(t, err) require.Equal(t, tlsVersion, version) } From fd71fdbefbbc3d0c9f69426729081f761841df66 Mon Sep 17 00:00:00 2001 From: Chip Vaughn Date: Tue, 11 Jan 2022 11:46:50 -0500 Subject: [PATCH 190/404] Fixing CircleCI issues and adding Partition CLI links --- website/content/api-docs/admin-partitions.mdx | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/website/content/api-docs/admin-partitions.mdx b/website/content/api-docs/admin-partitions.mdx index adf2e0529..a9129ed89 100644 --- a/website/content/api-docs/admin-partitions.mdx +++ b/website/content/api-docs/admin-partitions.mdx @@ -29,6 +29,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul partition create`](/commands/partition#create). + ### Parameters - `Name` `(string: )` - The partition name. This must be a valid @@ -85,6 +87,8 @@ The table below shows this endpoint's support for 1 A non-anonymous token can read its own partition. +-> The corresponding CLI command is [`consul partition read`](/commands/partition#read). + ### Parameters - `name` `(string: )` - Specifies the partition to read. This @@ -126,6 +130,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul partition write`](/commands/partition#write). + ### Parameters - `Name` `(string: )` - The partition name. This must be a valid @@ -188,6 +194,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | +-> The corresponding CLI command is [`consul partition delete`](/commands/partition#delete). + ### Parameters - `name` `(string: )` - Specifies the partition to delete. This @@ -231,6 +239,8 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `consistent` | `none` | `operator:read` | +-> The corresponding CLI command is [`consul partition list`](/commands/partition#list). + ### Sample Request ```shell-session From 97e7e118e0799ddeffb5b700ef6504c9d8d2dacf Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 17:02:17 -0800 Subject: [PATCH 191/404] docs: Fix spelling errors --- website/content/docs/agent/config-entries.mdx | 2 +- website/content/docs/agent/index.mdx | 2 +- website/content/docs/agent/telemetry.mdx | 4 ++-- website/content/docs/connect/gateways/index.mdx | 4 ++-- .../service-to-service-traffic-partitions.mdx | 8 ++++---- website/content/docs/connect/intentions.mdx | 2 +- .../content/docs/connect/proxies/integrate.mdx | 2 +- .../registration/service-registration.mdx | 16 ++++++++-------- website/content/docs/discovery/checks.mdx | 2 +- website/content/docs/ecs/index.mdx | 2 +- .../content/docs/enterprise/admin-partitions.mdx | 2 +- .../docs/k8s/installation/vault/index.mdx | 4 ++-- .../docs/k8s/installation/vault/server-tls.mdx | 4 ++-- website/content/docs/k8s/k8s-cli.mdx | 16 ++++++++-------- .../content/docs/k8s/operations/uninstall.mdx | 2 +- .../docs/nia/network-drivers/terraform.mdx | 2 +- website/content/docs/security/acl/acl-rules.mdx | 6 +++--- .../upgrading/instructions/upgrade-to-1-10-x.mdx | 2 +- 18 files changed, 41 insertions(+), 41 deletions(-) diff --git a/website/content/docs/agent/config-entries.mdx b/website/content/docs/agent/config-entries.mdx index e95ea16f2..38025e67a 100644 --- a/website/content/docs/agent/config-entries.mdx +++ b/website/content/docs/agent/config-entries.mdx @@ -51,7 +51,7 @@ See [Kubernetes Custom Resource Definitions](/docs/k8s/crds). Configuration entries outside of Kubernetes should be managed with the Consul [CLI](/commands/config) or [API](/api/config). Additionally, as a convenience for initial cluster bootstrapping, configuration entries can be -specified in all of the Consul servers's +specified in the Consul servers agent's [configuration files](/docs/agent/options#config_entries_bootstrap) ### Managing Configuration Entries with the CLI diff --git a/website/content/docs/agent/index.mdx b/website/content/docs/agent/index.mdx index a19c1e312..1d7c76987 100644 --- a/website/content/docs/agent/index.mdx +++ b/website/content/docs/agent/index.mdx @@ -136,7 +136,7 @@ $ consul agent -data-dir=/tmp/consul - **Server**: This indicates whether the agent is running in server or client mode. Running an agent in server mode requires additional overhead. This is because they participate in the consensus quorum, store cluster state, and handle queries. A server may also be - in ["bootstrap"](/docs/agent/options#_bootstrap_expect) mode, which enables the server to elect itselft as the Raft leader. Multiple servers cannot be in bootstrap mode because it would put the cluster in an inconsistent state. + in ["bootstrap"](/docs/agent/options#_bootstrap_expect) mode, which enables the server to elect itself as the Raft leader. Multiple servers cannot be in bootstrap mode because it would put the cluster in an inconsistent state. - **Client Addr**: This is the address used for client interfaces to the agent. This includes the ports for the HTTP and DNS interfaces. By default, this diff --git a/website/content/docs/agent/telemetry.mdx b/website/content/docs/agent/telemetry.mdx index 076c21105..ceb2fece5 100644 --- a/website/content/docs/agent/telemetry.mdx +++ b/website/content/docs/agent/telemetry.mdx @@ -350,8 +350,8 @@ These metrics are used to monitor the health of the Consul servers. | `consul.raft.boltdb.logSize` | Measures the size of logs being written to the db. | bytes | sample | | `consul.raft.boltdb.numFreePages` | Represents the number of free pages within the raft.db file. | pages | gauge | | `consul.raft.boltdb.numPendingPages` | Represents the number of pending pages within the raft.db that will soon become free. | pages | gauge | -| `consul.raft.boltdb.openReadTxn` | Represents the number of open read transactions against the db | transactions | guage | -| `consul.raft.boltdb.totalReadTxn` | Represents the total number of started read transactions against the db | transactions | guage | +| `consul.raft.boltdb.openReadTxn` | Represents the number of open read transactions against the db | transactions | gauge | +| `consul.raft.boltdb.totalReadTxn` | Represents the total number of started read transactions against the db | transactions | gauge | | `consul.raft.boltdb.storeLogs` | Measures the amount of time spent writing logs to the db. | ms | timer | | `consul.raft.boltdb.txstats.cursorCount` | Counts the number of cursors created since Consul was started. | cursors | counter | | `consul.raft.boltdb.txstats.nodeCount` | Counts the number of node allocations within the db since Consul was started. | allocations | counter | diff --git a/website/content/docs/connect/gateways/index.mdx b/website/content/docs/connect/gateways/index.mdx index b12c100b9..2111bd86c 100644 --- a/website/content/docs/connect/gateways/index.mdx +++ b/website/content/docs/connect/gateways/index.mdx @@ -28,8 +28,8 @@ They operate by sniffing and extracting the server name indication (SNI) header Mesh gateways enable the following scenarios: - **Federate multiple datacenters across a WAN**. Since Consul 1.8.0, mesh gateways can forward gossip and RPC traffic between Consul servers. See [WAN federation via mesh gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways) for additional information. -- **Service-to-service communication across datacenters**. Refer to [Enabling Service-to-service Traffic Accross Datacenters](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) for additional information. -- **Service-to-service communication across admin partitions**. Since Consul 1.11.0, you can create administrative boundaries for single Consul deployements called "admin partitions". You can use mesh gateways to facilitate cross-partition communication. Refer to [Enabling Service-to-service Traffic Accross Admin Partitions](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions) for additional information. +- **Service-to-service communication across datacenters**. Refer to [Enabling Service-to-service Traffic Across Datacenters](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) for additional information. +- **Service-to-service communication across admin partitions**. Since Consul 1.11.0, you can create administrative boundaries for single Consul deployments called "admin partitions". You can use mesh gateways to facilitate cross-partition communication. Refer to [Enabling Service-to-service Traffic Across Admin Partitions](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions) for additional information. -> **Mesh gateway tutorial**: Follow the [mesh gateway tutorial](https://learn.hashicorp.com/tutorials/consul/service-mesh-gateways) to learn concepts associated with mesh gateways. diff --git a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx index bc529496f..39b10675d 100644 --- a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx +++ b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx @@ -10,7 +10,7 @@ description: >- -> **Consul Enterprise 1.11.0+:** Admin partitions are supported in Consul Enterprise versions 1.11.0 and newer. -Mesh gateways enable you to route service mesh traffic between different Consul [admin partitions](/docs/enteprise/admin-partitions). +Mesh gateways enable you to route service mesh traffic between different Consul [admin partitions](/docs/enterprise/admin-partitions). Partitions can reside in different clouds or runtime environments where general interconnectivity between all services in all partitions isn't feasible. @@ -20,7 +20,7 @@ Mesh gateways operate by sniffing and extracting the server name indication (SNI Ensure that your Consul environment meets the following requirements. -### Consul +### Consul * Consul Enterprise version 1.11.0 or newer. * A local Consul agent is required to manage its configuration. @@ -170,7 +170,7 @@ service: ### Enabling Gateways for a Proxy Upstream -The following service definition will enable gateways in `local` mode for three different partitions. Note that each service exists in the same namepace, but are separated by admin partition. +The following service definition will enable gateways in `local` mode for three different partitions. Note that each service exists in the same namespace, but are separated by admin partition. @@ -241,4 +241,4 @@ service: mesh_gateway: - mode: local ``` - \ No newline at end of file + diff --git a/website/content/docs/connect/intentions.mdx b/website/content/docs/connect/intentions.mdx index 198fa0d28..9f3ea2c42 100644 --- a/website/content/docs/connect/intentions.mdx +++ b/website/content/docs/connect/intentions.mdx @@ -57,7 +57,7 @@ If is set to `deny`, then all connections or requests will be denied by default. You can define a [`service-intentions`](/docs/connect/config-entries/service-intentions) configuration entry to create and manage intentions, as well as manage intentions through the Consul UI. You can also perform some intention-related tasks using the API and CLI commands. Refer to the [API](/api-docs/connect/intentions) and [CLI](/commands/intention) documentation for details. -The following example shows a `service-intentions` configuration entry that specifes two intentions. Refer to the [`service-intentions`](/docs/connect/config-entries/service-intentions) documentation for the full data model and additional examples. +The following example shows a `service-intentions` configuration entry that specifies two intentions. Refer to the [`service-intentions`](/docs/connect/config-entries/service-intentions) documentation for the full data model and additional examples. diff --git a/website/content/docs/connect/proxies/integrate.mdx b/website/content/docs/connect/proxies/integrate.mdx index 7a6e0574d..f57cc2234 100644 --- a/website/content/docs/connect/proxies/integrate.mdx +++ b/website/content/docs/connect/proxies/integrate.mdx @@ -55,7 +55,7 @@ $ curl http://:8500/v1/agent/connect/ca/roots After validating the client certificate from the caller, the proxy can authorize the entire connection (L4) or each request (L7). Depending upon the [protocol] of the proxied service, authorization is performed either on a per-connection (L4) or per-request (L7) basis. Authentication is based on "service identity" (TLS), and is implemented at the transport layer. --> **Note:** Some features, such as (local) rate limiting or max connections, are expected to be proxy-level configurations enforced separately when authorization calls are made. Proxies can enforce the configurations based on information about request rates and other states that should already be availabe. +-> **Note:** Some features, such as (local) rate limiting or max connections, are expected to be proxy-level configurations enforced separately when authorization calls are made. Proxies can enforce the configurations based on information about request rates and other states that should already be available. The proxy can authorize the connection by either calling the [`/v1/agent/connect/authorize`](/api/agent/connect) API endpoint or by querying the [intention match API](/api/connect/intentions#list-matching-intentions) endpoint. diff --git a/website/content/docs/connect/registration/service-registration.mdx b/website/content/docs/connect/registration/service-registration.mdx index 92bcb1a93..32ced2d3a 100644 --- a/website/content/docs/connect/registration/service-registration.mdx +++ b/website/content/docs/connect/registration/service-registration.mdx @@ -97,14 +97,14 @@ Sidecar proxies are co-located with the single service instance they represent a Specify the following parameters in the `proxy` code block to configure a sidecar proxy in its own service registration: * `destination_service_id`: String value that specifies the ID of the service being proxied. Refer to the [proxy parameters reference](#destination-service-id) for details. -* `local_service_port`: Integer value that specifes the port that the proxy should use to connect to the _local_ service instance. Refer to the [proxy parameters reference](#local-service-port) for details. -* `local_service_address`: String value that specifies the IP address or hostname that the proxy should use to connect to the _local_ service. Refer to the [proxy parameters reference](#local-service-address) for details. +* `local_service_port`: Integer value that specifies the port that the proxy should use to connect to the _local_ service instance. Refer to the [proxy parameters reference](#local-service-port) for details. +* `local_service_address`: String value that specifies the IP address or hostname that the proxy should use to connect to the _local_ service. Refer to the [proxy parameters reference](#local-service-address) for details. See (Sidecar Service Registration)[/docs/connect/registration/sidecar-service] for additional information about configuring service mesh proxies as sidecars. ### Complete Configuration Example -The following example includes values for all availble options when registering a proxy instance. +The following example includes values for all available options when registering a proxy instance. @@ -160,7 +160,7 @@ The following table describes all parameters that can be defined in the `proxy` | Parameter | Description | Required | Default | | --- | --- | --- | --- | | `destination_service_id` | String value that specifies the ID of a single service instance represented by the proxy.
    This parameter is only applicable for sidecar proxies that run on the same node as the service.
    Consul checks for the proxied service on the same agent.
    The ID is unique and may differ from its `name` value.
    Specifying this parameter helps tools identify which sidecar proxy instances are associated with which application instance, as well as enable fine-grained analysis of the metrics coming from the proxy.| Required when registering proxy as a sidecar | None | -| `local_service_port`
    | Integer value that specifes the port that a sidecar proxy should use to connect to the _local_ service instance. | Required when registering proxy as a sidecar | Port advertised by the service instance configured in `destination_service_id` | +| `local_service_port` | Integer value that specifies the port that a sidecar proxy should use to connect to the _local_ service instance. | Required when registering proxy as a sidecar | Port advertised by the service instance configured in `destination_service_id` | | `local_service_address` | String value that specifies the IP address or hostname that a sidecar proxy should use to connect to the _local_ service. | Optional | `127.0.0.1` | | `destination_service_name` | String value that specifies the _name_ of the service the instance is proxying. The name is used during service discovery to route to the correct proxy instances for a given service name. | Required | None | | `local_service_socket_path` | String value that specifies the path of a Unix domain socket for connecting to the local application instance.
    This parameter value is created by the application and conflicts with `local_service_address` and `local_service_port`.
    Supported when using Envoy for the proxy. | Optional | None | @@ -175,23 +175,23 @@ The following table describes all parameters that can be defined in the `proxy` You can configure the service mesh proxy to create listeners for upstream services. The listeners enable the upstream service to accept requests. You can specify the following parameters to configure upstream service listeners. -| Parameter | Description | Required | Defautl | +| Parameter | Description | Required | Default | | --- | --- | --- | --- | |`destination_name` | String value that specifies the name of the service or prepared query to route the service mesh to. The prepared query should be the name or the ID of the prepared query. | Required | None | | `destination_namespace` | String value that specifies the namespace containing the upstream service. | Optional | `default` | | `destination_partition` | String value that specifies the name of the admin partition containing the upstream service. | Optional | `default` | | `local_bind_port` | Integer value that specifies the port to bind a local listener to. The application will make outbound connections to the upstream from the local port. | Required | None | -| `local_bind_address` | String value that specifies the address to bind a local listener to. The application will make outbound connecttions to the upstream service from the local bind address. | Optional | `127.0.0.1` | +| `local_bind_address` | String value that specifies the address to bind a local listener to. The application will make outbound connections to the upstream service from the local bind address. | Optional | `127.0.0.1` | | `local_bind_socket_path` | String value that specifies the path at which to bind a Unix domain socket listener. The application will make outbound connections to the upstream from the local bind socket path.
    This parameter conflicts with the `local_bind_port` or `local_bind_address` parameters.
    Supported when using Envoy as a proxy. | Optional | None| | `local_bind_socket_mode` | String value that specifies a Unix octal that configures file permissions for the socket. | Optional | None | | `destination_type` | String value that specifies the type of discovery query the proxy should use for finding service mesh instances. The following values are supported:
  • `service`: Queries for upstream `service` types.
  • `prepared_query`: Queries for upstream prepared queries.
  • | Optional | `service` | | `datacenter` | String value that specifies the datacenter to issue the discovery query to. | Optional | Defaults to the local datacenter. | -| `config` | Object value that specifies opaque configuration options that will be provided to the proxy instance for the upstream.
    Valid JSON objects are also suppported.
    The `config` parameter can specify timeouts, retries, and other proxy-specific features for the given upstream.
    See the [built-in proxy configuration reference](/docs/connect/proxies/built-in#proxy-upstream-config-key-reference) for configuration options when using the built-in proxy.
    If using Envoy as a proxy, see [Envoy configuration reference](/docs/connect/proxies/envoy#proxy-upstream-config-options) | Optional | None | +| `config` | Object value that specifies opaque configuration options that will be provided to the proxy instance for the upstream.
    Valid JSON objects are also supported.
    The `config` parameter can specify timeouts, retries, and other proxy-specific features for the given upstream.
    See the [built-in proxy configuration reference](/docs/connect/proxies/built-in#proxy-upstream-config-key-reference) for configuration options when using the built-in proxy.
    If using Envoy as a proxy, see [Envoy configuration reference](/docs/connect/proxies/envoy#proxy-upstream-config-options) | Optional | None | | `mesh_gateway` | Object that defines the mesh gateway configuration for the proxy. Refer to the [Mesh Gateway Configuration Reference](#mesh-gateway-configuration-reference) for configuration details. | Optional | None | ### Upstream Configuration Examples -Upstreams support multiple destination types. The following examples include information about each implmentation. +Upstreams support multiple destination types. The following examples include information about each implementation. -> **Snake case**: The examples in this topic use `snake_case` because the syntax is supported in configuration files and API registrations. See [Service Definition Parameter Case](/docs/agent/services#service-definition-parameter-case) for additional information. diff --git a/website/content/docs/discovery/checks.mdx b/website/content/docs/discovery/checks.mdx index 02ef1c284..defed5d4e 100644 --- a/website/content/docs/discovery/checks.mdx +++ b/website/content/docs/discovery/checks.mdx @@ -613,7 +613,7 @@ The status will not transition states until the configured threshold is reached. - `failures_before_warning` - Number of consecutive unsuccessful results required before check status transitions to warning. Defaults to the same value as that of `failures_before_critical` to maintain the expected behavior of not changing the - status of serivce checks to `warning` before `critical` unless configured to do so. + status of service checks to `warning` before `critical` unless configured to do so. Values higher than `failures_before_critical` are invalid. Added in Consul 1.11.0. - `failures_before_critical` - Number of consecutive unsuccessful results required before check status transitions to critical. Defaults to `0`. Added in Consul 1.7.0. diff --git a/website/content/docs/ecs/index.mdx b/website/content/docs/ecs/index.mdx index 0e8d22db3..68fa655bb 100644 --- a/website/content/docs/ecs/index.mdx +++ b/website/content/docs/ecs/index.mdx @@ -25,6 +25,6 @@ There are several ways to get started with Consul with ECS. * The [Serverless Consul Service Mesh with ECS and HCP](https://learn.hashicorp.com/tutorials/cloud/consul-ecs-hcp?in=consul/cloud-integrations) learn guide shows how to use Terraform to run Consul service mesh applications on ECS with managed Consul servers running in HashiCorp Cloud Platform (HCP). * The [Service Mesh with ECS and Consul on EC2](https://learn.hashicorp.com/tutorials/consul/consul-ecs-ec2?in=consul/cloud-integrations) learn guide shows how to use Terraform to run Consul service mesh applications on ECS with Consul servers running on EC2 instances. * The [Consul with Dev Server on Fargate](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-fargate) example installation deploys a sample application in ECS using the Fargate launch type. -* The [Consul with Dev Server on EC2](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-ec2) example installation deploys a sample applciation in ECS using the EC2 launch type. +* The [Consul with Dev Server on EC2](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-ec2) example installation deploys a sample application in ECS using the EC2 launch type. See the [Requirements](/docs/ecs/get-started/requirements) and the full [Install Guide](/docs/ecs/get-started/install) when you're ready to install Consul on an existing ECS cluster and add existing tasks to the service mesh. diff --git a/website/content/docs/enterprise/admin-partitions.mdx b/website/content/docs/enterprise/admin-partitions.mdx index 3a88138d9..922d905ed 100644 --- a/website/content/docs/enterprise/admin-partitions.mdx +++ b/website/content/docs/enterprise/admin-partitions.mdx @@ -1,7 +1,7 @@ --- layout: docs page_title: Consul Enterprise Admin Partitions -description: Consul Enterprise enables you to create paritions that can be administrated across namespaces. +description: Consul Enterprise enables you to create partitions that can be administrated across namespaces. --- # Consul Enterprise Admin Partitions diff --git a/website/content/docs/k8s/installation/vault/index.mdx b/website/content/docs/k8s/installation/vault/index.mdx index df1bc25dc..b76ee4b5d 100644 --- a/website/content/docs/k8s/installation/vault/index.mdx +++ b/website/content/docs/k8s/installation/vault/index.mdx @@ -41,7 +41,7 @@ Prior to creating Vault auth roles for the Consul servers and clients, ensure th $ vault auth enable kubernetes ``` -After enabling the Kubernetes auth method, in Vault, ensure that you have configured the Kubernetes Auth method properly as described in [Kubernetes Auth Method Configuration](https://www.vaultproject.io/docs/auth/kubernetes#configuration). The command should look simliar to the following with a custom `kubernetes_host` config provided from the information provided via `kubectl cluster-info`. +After enabling the Kubernetes auth method, in Vault, ensure that you have configured the Kubernetes Auth method properly as described in [Kubernetes Auth Method Configuration](https://www.vaultproject.io/docs/auth/kubernetes#configuration). The command should look similar to the following with a custom `kubernetes_host` config provided from the information provided via `kubectl cluster-info`. ```shell-session $ vault write auth/kubernetes/config \ @@ -52,7 +52,7 @@ $ vault write auth/kubernetes/config \ ### Vault KV Secrets Engine - Version 2 -In order to utlize Vault as a secrets backend, we must enable thne [Vault KV secrets engine - Version 2](https://www.vaultproject.io/docs/secrets/kv/kv-v2). +In order to utilize Vault as a secrets backend, we must enable the [Vault KV secrets engine - Version 2](https://www.vaultproject.io/docs/secrets/kv/kv-v2). ```shell-session $ vault secrets enable -path=consul kv-v2 diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index f0ad83183..612d9997e 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -9,7 +9,7 @@ description: >- To use Vault to issue Server TLS certificates the following will be needed: -1. Bootstrap the Vault PKI engine and boostrap it with any configuration required for your infrastructure. +1. Bootstrap the Vault PKI engine and bootstrap it with any configuration required for your infrastructure. 1. Create Vault Policies that will allow the Consul server to access the certificate issuing url. 1. Create Vault Policies that will allow the Consul components, e.g. ingress gateways, controller, to access the CA url. 1. Create Kubernetes auth roles that link these policies to the Kubernetes service accounts of the Consul components. @@ -130,7 +130,7 @@ vault write auth/kubernetes/role/consul-ca \ ``` The above Vault Roles will now be your Helm values for `global.secretsBackend.vault.consulServerRole` and -`global.secretsBAckend.vault.consulCARole` respectively. +`global.secretsBackend.vault.consulCARole` respectively. ## Deploying the Consul Helm chart diff --git a/website/content/docs/k8s/k8s-cli.mdx b/website/content/docs/k8s/k8s-cli.mdx index c4b07305a..af1ce6c82 100644 --- a/website/content/docs/k8s/k8s-cli.mdx +++ b/website/content/docs/k8s/k8s-cli.mdx @@ -88,9 +88,9 @@ The following options are available. | `-config-file` | String value that specifies the path to a file containing custom installation configurations, e.g., Consul Helm chart values file.
    You can use the `-config-file` flag multiple times to specify multiple files. | none | Optional | | `-namespace` | String value that specifies the namespace of the Consul installation. | `consul` | Optional | | `-preset` | String value that installs Consul based on a preset configuration. You can specify the following values:
    `demo`: Installs a single replica server with sidecar injection enabled; useful for testing service mesh functionality.
    `secure`: Installs a single replica server with sidecar injection, ACLs, and TLS enabled; useful for testing service mesh functionality. | Configuration of the Consul Helm chart. | Optional | -| `-set` | String value that enables you to set a customizeable value. This flag is comparable to the `helm install --set` flag.
    You can use the `-set` flag multiple times to set multiple values.
    Consul Helm chart values are supported. | none | Optional | -| `-set-file` | String value that specifies the name of an arbitrary config file. This flag is comparable to the `helm install --set-file`
    flag. The contents of the file will be used to set a customizeable value. You can use the `-set-file` flag multiple times to specify multiple files.
    Consul Helm chart values are supported. | none | Optional | -| `-set-string` | String value that enables you to set a customizeable string value. This flag is comparable to the `helm install --set-string`
    flag. You can use the `-set-string` flag multiple times to specify multiple strings.
    Consul Helm chart values are supported. | none | Optional | +| `-set` | String value that enables you to set a customizable value. This flag is comparable to the `helm install --set` flag.
    You can use the `-set` flag multiple times to set multiple values.
    Consul Helm chart values are supported. | none | Optional | +| `-set-file` | String value that specifies the name of an arbitrary config file. This flag is comparable to the `helm install --set-file`
    flag. The contents of the file will be used to set a customizable value. You can use the `-set-file` flag multiple times to specify multiple files.
    Consul Helm chart values are supported. | none | Optional | +| `-set-string` | String value that enables you to set a customizable string value. This flag is comparable to the `helm install --set-string`
    flag. You can use the `-set-string` flag multiple times to specify multiple strings.
    Consul Helm chart values are supported. | none | Optional | | `-timeout` | Specifies how long to wait for the installation process to complete before timing out. The value is specified with an integer and string value indicating a unit of time.
    The following units are supported:
    `ms` (milliseconds)
    `s` (seconds)
    `m` (minutes)
    In the following example, installation will timeout after one minute:
    `consul-k8s install -timeout 1m` | `10m` | Optional | | `-wait` | Boolean value that determines if Consul should wait for resources in the installation to be ready before exiting the command. | `true` | Optional | | `-verbose`, `-v` | Boolean value that specifies whether to output verbose logs from the install command with the status of resources being installed. | `false` | Optional | @@ -133,7 +133,7 @@ The following options are available. | `-name` | String value for the name of the installation to remove. | none | Optional | | `-namespace` | String value that specifies the namespace of the Consul installation to remove. | `consul` | Optional | | `-timeout` | Specifies how long to wait for the removal process to complete before timing out. The value is specified with an integer and string value indicating a unit of time.
    The following units are supported:
    `ms` (milliseconds)
    `s` (seconds)
    `m` (minutes)
    `h` (hours)
    In the following example, removal will timeout after one minute:
    `consul-k8s uninstall -timeout 1m` | `10m` | Optional | -| `-wipe-data` | Boolan value that deletes PVCs and secrets associated with the Consul installation during installation.
    Data will be removed without a verification prompt if the `-auto-approve` flag is set to `true`. | `false`
    Instructions for removing data will be printed to the console. | Optional | +| `-wipe-data` | Boolean value that deletes PVCs and secrets associated with the Consul installation during installation.
    Data will be removed without a verification prompt if the `-auto-approve` flag is set to `true`. | `false`
    Instructions for removing data will be printed to the console. | Optional | | `--help` | Prints usage information for this option. | none | Optional | See [Global Options](#global-options) for additional commands that you can use when uninstalling Consul from Kubernetes. @@ -210,11 +210,11 @@ The following options are available. | `-config-file` | String value that specifies the path to a file containing custom upgrade configurations, e.g., Consul Helm chart values file.
    You can use the `-config-file` flag multiple times to specify multiple files. | none | Optional | | `-namespace` | String value that specifies the namespace of the Consul installation. | `consul` | Optional | | `-preset` | String value that upgrades Consul based on a preset configuration. | Configuration of the Consul Helm chart. | Optional | -| `-set` | String value that enables you to set a customizeable value. This flag is comparable to the `helm upgrade --set` flag.
    You can use the `-set` flag multiple times to set multiple values.
    Consul Helm chart values are supported. | none | Optional | -| `-set-file` | String value that specifies the name of an arbitrary config file. This flag is comparable to the `helm upgrade --set-file`
    flag. The contents of the file will be used to set a customizeable value. You can use the `-set-file` flag multiple times to specify multiple files.
    Consul Helm chart values are supported. | none | Optional | -| `-set-string` | String value that enables you to set a customizeable string value. This flag is comparable to the `helm upgrade --set-string`
    flag. You can use the `-set-string` flag multiple times to specify multiple strings.
    Consul Helm chart values are supported. | none | Optional | +| `-set` | String value that enables you to set a customizable value. This flag is comparable to the `helm upgrade --set` flag.
    You can use the `-set` flag multiple times to set multiple values.
    Consul Helm chart values are supported. | none | Optional | +| `-set-file` | String value that specifies the name of an arbitrary config file. This flag is comparable to the `helm upgrade --set-file`
    flag. The contents of the file will be used to set a customizable value. You can use the `-set-file` flag multiple times to specify multiple files.
    Consul Helm chart values are supported. | none | Optional | +| `-set-string` | String value that enables you to set a customizable string value. This flag is comparable to the `helm upgrade --set-string`
    flag. You can use the `-set-string` flag multiple times to specify multiple strings.
    Consul Helm chart values are supported. | none | Optional | | `-timeout` | Specifies how long to wait for the upgrade process to complete before timing out. The value is specified with an integer and string value indicating a unit of time.
    The following units are supported:
    `ms` (milliseconds)
    `s` (seconds)
    `m` (minutes)
    In the following example, the upgrade will timeout after one minute:
    `consul-k8s upgrade -timeout 1m` | `10m` | Optional | -| `-wait` | Boolean value that determines if Consul should wait for resources in the upgtrade to be ready before exiting the command. | `true` | Optional | +| `-wait` | Boolean value that determines if Consul should wait for resources in the upgrade to be ready before exiting the command. | `true` | Optional | | `-verbose`, `-v` | Boolean value that specifies whether to output verbose logs from the upgrade command with the status of resources being upgraded. | `false` | Optional | | `--help` | Prints usage information for this option. | none | Optional | diff --git a/website/content/docs/k8s/operations/uninstall.mdx b/website/content/docs/k8s/operations/uninstall.mdx index 19ffbc66a..2d2ebddf4 100644 --- a/website/content/docs/k8s/operations/uninstall.mdx +++ b/website/content/docs/k8s/operations/uninstall.mdx @@ -10,7 +10,7 @@ You can uninstall Consul using Helm commands or the Consul K8s CLI. ## Consul K8s CLI -Issue the `consul-k8s uninstall` command to remove Consul on Kubernetes. You can specify the installation name, namespace, and data retention behavior using the applicable options. By default, the uninstallation preserves the secrets and PVCs that are provisioned by Consul on Kubernetes. +Issue the `consul-k8s uninstall` command to remove Consul on Kubernetes. You can specify the installation name, namespace, and data retention behavior using the applicable options. By default, the uninstall preserves the secrets and PVCs that are provisioned by Consul on Kubernetes. ```shell-session $ consul-k8s uninstall diff --git a/website/content/docs/nia/network-drivers/terraform.mdx b/website/content/docs/nia/network-drivers/terraform.mdx index 9fd6db4cb..041cac572 100644 --- a/website/content/docs/nia/network-drivers/terraform.mdx +++ b/website/content/docs/nia/network-drivers/terraform.mdx @@ -22,7 +22,7 @@ Once all workspaces are set up, Consul-Terraform-Sync monitors the Consul catalo Within the Consul-Terraform-Sync configuration for a task, practitioners can select the desired module to run for the task as well as set the condition to execute the task. Each task executed by the Terraform driver corresponds to an automated root module that calls the selected module in an isolated Terraform environment. Consul-Terraform-Sync will manage concurrent execution of these tasks. -Autogenerated root modules for tasks are mantained in local subdirectories of the Consul-Terraform-Sync working directory. Each subdirectory represents the local workspace for a task. By default, the working directory `sync-tasks` is created in the current directory. To configure where Terraform configuration files are stored, set [`working_dir`](/docs/nia/configuration#working_dir) to the desired path or configure the [`task.working_dir`](/docs/nia/configuration#working_dir-1) individually. +Autogenerated root modules for tasks are maintained in local subdirectories of the Consul-Terraform-Sync working directory. Each subdirectory represents the local workspace for a task. By default, the working directory `sync-tasks` is created in the current directory. To configure where Terraform configuration files are stored, set [`working_dir`](/docs/nia/configuration#working_dir) to the desired path or configure the [`task.working_dir`](/docs/nia/configuration#working_dir-1) individually. ~> **Note:** Although Terraform state files for task workspaces are independent, this does not guarantee the infrastructure changes from concurrent task executions are independent. Ensure that modules across all tasks are not modifying the same resource objects or have overlapping changes that may result in race conditions during automation. diff --git a/website/content/docs/security/acl/acl-rules.mdx b/website/content/docs/security/acl/acl-rules.mdx index 0d76efce7..1571f754b 100644 --- a/website/content/docs/security/acl/acl-rules.mdx +++ b/website/content/docs/security/acl/acl-rules.mdx @@ -68,7 +68,7 @@ The following syntax describes how to include a resource label in the rule:
    -Labels provide operators with more granular control over access to the resouce, but the following resource types do not take a label: +Labels provide operators with more granular control over access to the resource, but the following resource types do not take a label: * `acl` * `keyring` @@ -102,7 +102,7 @@ Use the `policy` keyword and one of the following access levels to set a policy - `write`: Allows the resource to be read and modified. - `deny`: Denies read and write access to the resource. -The special `list` access level provices access to all keys with the specified resource label in the Consul KV. The `list` access level can only be used with the `key_prefix` resource. The [`acl.enable_key_list_policy`](/docs/agent/options#acl_enable_key_list_policy) setting must be set to `true`. +The special `list` access level provides access to all keys with the specified resource label in the Consul KV. The `list` access level can only be used with the `key_prefix` resource. The [`acl.enable_key_list_policy`](/docs/agent/options#acl_enable_key_list_policy) setting must be set to `true`. ### Matching and Prefix Values @@ -295,7 +295,7 @@ $ curl \ }' http://127.0.0.1:8500/v1/acl/policy?token= ``` -The policy configuration is returned when the call is succesfully performaed: +The policy configuration is returned when the call is successfully performed: ```json { diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx index e55fe05c4..78a602b03 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx @@ -210,7 +210,7 @@ to the latest 1.8.x or 1.9.x before the next steps. Otherwise, this step can be **6.** Update the value of `global.image` in the values file to the latest 1.8.x or 1.9.x image. -Additionally, ensure that the Kuberenetes secret with the license is specified in the +Additionally, ensure that the Kubernetes secret with the license is specified in the values `server.enterpriseLicense.secretName` and `server.enterpriseLicense.secretKey`. **7.** Upgrade the cluster. From 5818d6b6692a58b5ba429874f430d3e7b4ce4ace Mon Sep 17 00:00:00 2001 From: Kim Ngo <6362111+findkim@users.noreply.github.com> Date: Tue, 11 Jan 2022 13:06:13 -0600 Subject: [PATCH 192/404] Clarify CTS monitoring of service and instances (#12008) * Clarify CTS monitoring of service and instances Co-authored-by: Michael Wilkerson <62034708+wilkermichael@users.noreply.github.com> Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> --- website/content/docs/nia/index.mdx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/website/content/docs/nia/index.mdx b/website/content/docs/nia/index.mdx index 58d59c5ba..2d6a03b36 100644 --- a/website/content/docs/nia/index.mdx +++ b/website/content/docs/nia/index.mdx @@ -19,7 +19,7 @@ Consul-Terraform-Sync executes one or more automation tasks with the most recent ## Glossary -**Condition** - A task-level defined environmental requirement. When a task’s condition is met, Consul-Terraform-Sync executes that task to update network infrastructure. Depending on the condition type, the condition definition may also define and enable the source input that the task provides to the configured Terraform Module. +**Condition** - A task-level defined environmental requirement. When a task’s condition is met, Consul-Terraform-Sync executes that task to update network infrastructure. Depending on the condition type, the condition definition may also define and enable the source input that the task provides to the configured Terraform module. **Consul-Terraform-Sync** - [GitHub repo](https://github.com/hashicorp/consul-terraform-sync) and binary/CLI name for the project that is used to perform Network Infrastructure Automation. @@ -33,10 +33,12 @@ Consul-Terraform-Sync executes one or more automation tasks with the most recent -> **Note:** The terminology "tasks" used throughout the documentation refers to all types of tasks except when specifically stated otherwise. -**Source Input** - A source input defines objects that provide values or metadata to the Terraform module. See [source input](/docs/nia/terraform-modules#source-input) for the supported metadata and values. For example, a user can configure a Consul KV source input to provide KV pairs as variables to their respective Terraform Module. The source input can be included in two ways. It can be specified as a parameter in a condition using `source_includes_var` and also by using the `source_input` block. +**Source Input** - A source input defines objects that provide values or metadata to the Terraform module. See [source input](/docs/nia/terraform-modules#source-input) for the supported metadata and values. For example, a user can configure a Consul KV source input to provide KV pairs as variables to their respective Terraform module. The source input can be included in two ways. It can be specified as a parameter in a condition using `source_includes_var` and also by using the `source_input` block. **Network Infrastructure Automation (NIA)** - Enables dynamic updates to network infrastructure devices triggered when specific conditions, such as service changes and registration, are met. +**Services** - A service in CTS represents a service that is registered with Consul for service discovery. Services are grouped by their service names. There may be more than one instance of a particular service, each with its own unique ID. CTS monitors services based on service names and can provide service instance details to a Terraform module for network automation. + **Tasks** - A task is the translation of dynamic service information from the Consul Catalog into network infrastructure changes downstream. **Terraform Cloud** - Per the [Terraform documentation](https://www.terraform.io/docs/cloud/index.html), "Terraform Cloud" describes both Terraform Cloud and Terraform Enterprise, which are different distributions of the same application. Documentation will apply to both distributions unless specifically stated otherwise. From 4f0a3a997c0832ea74ea7d10f3bcba0da2be7411 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Tue, 11 Jan 2022 14:28:51 -0500 Subject: [PATCH 193/404] Fix races in anti-entropy tests (#12028) --- agent/local/state.go | 27 +++++++++---------- agent/local/state_test.go | 55 +++++++++++++++++++-------------------- 2 files changed, 39 insertions(+), 43 deletions(-) diff --git a/agent/local/state.go b/agent/local/state.go index d8ad529f7..527a9b04a 100644 --- a/agent/local/state.go +++ b/agent/local/state.go @@ -1082,34 +1082,31 @@ func (l *State) updateSyncState() error { continue } - // to avoid a data race with the service struct, - // We copy the Service struct, mutate it and replace the pointer - svc := *ls.Service - // If our definition is different, we need to update it. Make a // copy so that we don't retain a pointer to any actual state // store info for in-memory RPCs. - if svc.EnableTagOverride { - svc.Tags = make([]string, len(rs.Tags)) - copy(svc.Tags, rs.Tags) + if ls.Service.EnableTagOverride { + ls.Service.Tags = make([]string, len(rs.Tags)) + copy(ls.Service.Tags, rs.Tags) } // Merge any tagged addresses with the consul- prefix (set by the server) // back into the local state. - if !reflect.DeepEqual(svc.TaggedAddresses, rs.TaggedAddresses) { - if svc.TaggedAddresses == nil { - svc.TaggedAddresses = make(map[string]structs.ServiceAddress) + if !reflect.DeepEqual(ls.Service.TaggedAddresses, rs.TaggedAddresses) { + // Make a copy of TaggedAddresses to prevent races when writing + // since other goroutines may be reading from the map + m := make(map[string]structs.ServiceAddress) + for k, v := range ls.Service.TaggedAddresses { + m[k] = v } for k, v := range rs.TaggedAddresses { if strings.HasPrefix(k, structs.MetaKeyReservedPrefix) { - svc.TaggedAddresses[k] = v + m[k] = v } } + ls.Service.TaggedAddresses = m } - ls.InSync = svc.IsSame(rs) - - // replace the service pointer to the new mutated struct - ls.Service = &svc + ls.InSync = ls.Service.IsSame(rs) } // Check which checks need syncing diff --git a/agent/local/state_test.go b/agent/local/state_test.go index 679adba84..7deb2893f 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -373,36 +373,41 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { // We should have 5 services (consul included) assert.Len(services.NodeServices.Services, 5) - // All the services should match + // Check that virtual IPs have been set vips := make(map[string]struct{}) - srv1.TaggedAddresses = nil - srv2.TaggedAddresses = nil - for id, serv := range services.NodeServices.Services { - serv.CreateIndex, serv.ModifyIndex = 0, 0 + for _, serv := range services.NodeServices.Services { if serv.TaggedAddresses != nil { serviceVIP := serv.TaggedAddresses[structs.TaggedAddressVirtualIP].Address assert.NotEmpty(serviceVIP) vips[serviceVIP] = struct{}{} } - serv.TaggedAddresses = nil - switch id { - case "mysql-proxy": - assert.Equal(srv1, serv) - case "redis-proxy": - assert.Equal(srv2, serv) - case "web-proxy": - assert.Equal(srv3, serv) - case "cache-proxy": - assert.Equal(srv5, serv) - case structs.ConsulServiceID: - // ignore - default: - t.Fatalf("unexpected service: %v", id) - } } - assert.Len(vips, 4) - assert.Nil(servicesInSync(a.State, 4, structs.DefaultEnterpriseMetaInDefaultPartition())) + + // All the services should match + // Retry to mitigate data races between local and remote state + retry.Run(t, func(r *retry.R) { + require.NoError(r, a.State.SyncFull()) + for id, serv := range services.NodeServices.Services { + serv.CreateIndex, serv.ModifyIndex = 0, 0 + switch id { + case "mysql-proxy": + require.Equal(r, srv1, serv) + case "redis-proxy": + require.Equal(r, srv2, serv) + case "web-proxy": + require.Equal(r, srv3, serv) + case "cache-proxy": + require.Equal(r, srv5, serv) + case structs.ConsulServiceID: + // ignore + default: + r.Fatalf("unexpected service: %v", id) + } + } + }) + + assert.NoError(servicesInSync(a.State, 4, structs.DefaultEnterpriseMetaInDefaultPartition())) // Remove one of the services a.State.RemoveService(structs.NewServiceID("cache-proxy", nil)) @@ -415,12 +420,6 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { // All the services should match for id, serv := range services.NodeServices.Services { serv.CreateIndex, serv.ModifyIndex = 0, 0 - if serv.TaggedAddresses != nil { - serviceVIP := serv.TaggedAddresses[structs.TaggedAddressVirtualIP].Address - assert.NotEmpty(serviceVIP) - vips[serviceVIP] = struct{}{} - } - serv.TaggedAddresses = nil switch id { case "mysql-proxy": assert.Equal(srv1, serv) From 9340b3bfe5dcd17b2d98012c8762e48d3c72dce7 Mon Sep 17 00:00:00 2001 From: Kim Ngo <6362111+findkim@users.noreply.github.com> Date: Tue, 11 Jan 2022 13:31:06 -0600 Subject: [PATCH 194/404] CTS OSS vs Ent docs (#12006) * Add CTS OSS and Ent feature comparision chart * Mention CTS Ent in intro * Update CTS install page with Ent and tab install options * Clarify local workspaces and add Collaboration row * Oxford comma, rename to Automation Driver, install +ent ctx * Update website/content/docs/nia/installation/install.mdx Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Melissa Kam <3768460+mkam@users.noreply.github.com> Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> * Remove self-hosted row and add TFE explicitly Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> Co-authored-by: Melissa Kam <3768460+mkam@users.noreply.github.com> --- website/content/docs/nia/enterprise/index.mdx | 19 +++- website/content/docs/nia/index.mdx | 2 + .../content/docs/nia/installation/install.mdx | 94 ++++++++++++++----- .../docs/nia/network-drivers/index.mdx | 2 +- 4 files changed, 92 insertions(+), 25 deletions(-) diff --git a/website/content/docs/nia/enterprise/index.mdx b/website/content/docs/nia/enterprise/index.mdx index 21bdcea17..d5349cca2 100644 --- a/website/content/docs/nia/enterprise/index.mdx +++ b/website/content/docs/nia/enterprise/index.mdx @@ -7,8 +7,21 @@ description: >- # Consul-Terraform-Sync Enterprise -Consul-Terraform-Sync Enterprise features address organization complexities of collaboration, operations, scale, and governance. Please see the sidebar navigation on the left to view all enterprise features. +Consul-Terraform-Sync (CTS) Enterprise is available with [Consul Enterprise](https://www.hashicorp.com/products/consul) and requires a Consul [license](/docs/nia/enterprise/license) to be applied. -Enterprise features require a Consul [license](/docs/nia/enterprise/license) to be applied. +Enterprise features of CTS address organization complexities of collaboration, operations, scale, and governance. CTS Enterprise supports an official integration with [Terraform Cloud](https://www.terraform.io/cloud) and [Terraform Enterprise](https://www.terraform.io/enterprise), the self-hosted distribution, to extend insight into dynamic updates of your network infrastructure. -These features are part of Consul-Terraform-Sync Enterprise which is part of [Consul Enterprise](https://www.hashicorp.com/products/consul). +| Features | Open Source | Enterprise | +|----------|-------------|------------| +| Consul Namespace | Default namespace only | Filter task triggers by any namespace | +| Automation Driver | Terraform OSS | Terraform OSS, Terraform Cloud, or Terraform Enterprise | +| Terraform Workspaces | Local | Local workspaces with the Terraform driver or [remote workspaces](https://www.terraform.io/cloud-docs/workspaces) with the Terraform Cloud driver | +| Terraform Backend Options | [azurerm](https://www.terraform.io/docs/backends/types/azurerm.html), [consul](https://www.terraform.io/docs/backends/types/consul.html), [cos](https://www.terraform.io/docs/backends/types/cos.html), [gcs](https://www.terraform.io/docs/backends/types/gcs.html), [kubernetes](https://www.terraform.io/docs/backends/types/kubernetes.html), [local](https://www.terraform.io/docs/backends/types/local.html), [manta](https://www.terraform.io/docs/backends/types/manta.html), [pg](https://www.terraform.io/docs/backends/types/pg.html), and [s3](https://www.terraform.io/docs/backends/types/s3.html) with the Terraform driver | The supported backends for CTS with the Terraform driver or Terraform Cloud with the Terraform Cloud driver | +| Terraform Version | One Terraform version for all tasks | Optional Terraform version per task when using the Terraform Cloud driver | +| Terraform Run Output | CTS logs | CTS logs or Terraform output organized by Terraform Cloud remote workspaces | +| Credentials and secrets | On disk as `.tfvars` files or in shell environment | Secured variables stored in remote workspace | +| Audit | | Terraform audit logs ([Terraform Cloud](https://www.terraform.io/cloud-docs/api-docs/audit-trails) or [Terraform Enterprise](https://www.terraform.io/enterprise/admin/infrastructure/logging)) | +| Collaboration | | Run [history](https://www.terraform.io/docs/cloud/run/manage.html), [triggers](https://www.terraform.io/docs/cloud/workspaces/run-triggers.html), and [notifications](https://www.terraform.io/docs/cloud/workspaces/notifications.html) supported on Terraform Cloud | +| Governance | | [Sentinel](https://www.terraform.io/docs/cloud/sentinel/index.html) to enforce governance policies as code | + +The [Terraform Cloud driver](/docs/nia/configuration#terraform-cloud-driver) enables CTS Enterprise to integrate with Terraform Cloud or Terraform Enterprise. The [Terraform Cloud driver](/docs/nia/network-drivers/terraform-cloud) page provides an overview of how the integration works within CTS. diff --git a/website/content/docs/nia/index.mdx b/website/content/docs/nia/index.mdx index 2d6a03b36..8e5723098 100644 --- a/website/content/docs/nia/index.mdx +++ b/website/content/docs/nia/index.mdx @@ -11,6 +11,8 @@ Network Infrastructure Automation (NIA) enables dynamic updates to network infra Consul-Terraform-Sync executes one or more automation tasks with the most recent service variable values from the Consul service catalog. Each task consists of a runbook automation written as a Consul-Terraform-Sync compatible Terraform module using resources and data sources for the underlying network infrastructure. The `consul-terraform-sync` daemon runs on the same node as a Consul agent. +CTS is available as an open source and enterprise distribution. Follow the [Network Infrastructure Automation introduction tutorial](https://learn.hashicorp.com/tutorials/consul/consul-terraform-sync-intro?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) to get started with CTS OSS or read more about [CTS Enterprise](/docs/nia/enterprise). + ## Use Cases **Application teams must wait for manual changes in the network to release, scale up/down and re-deploy their applications.** This creates a bottleneck, especially in frequent workflows related to scaling up/down the application, breaking the DevOps goal of self-service enablement. Consul-Terraform-Sync automates this process, thus decreasing the possibility of human error in manually editing configuration files, as well as decreasing the overall time taken to push out configuration changes. diff --git a/website/content/docs/nia/installation/install.mdx b/website/content/docs/nia/installation/install.mdx index 6d18959af..3dada0fc6 100644 --- a/website/content/docs/nia/installation/install.mdx +++ b/website/content/docs/nia/installation/install.mdx @@ -9,36 +9,88 @@ description: >- Refer to the [introduction](https://learn.hashicorp.com/tutorials/consul/consul-terraform-sync-intro?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) tutorial for details about installing, configuring, and running Consul-Terraform-Sync on your local machine with the Terraform driver. -## Installing Consul-Terraform-Sync +## Install Consul-Terraform-Sync -To install Consul-Terraform-Sync, find the [appropriate package](https://releases.hashicorp.com/consul-terraform-sync/) for your system and download it as a zip archive. Unzip the package to extract the binary named consul-terraform-sync. Move the consul-terraform-sync binary to a location available on your PATH. + + +To install Consul-Terraform-Sync, find the [appropriate package](https://releases.hashicorp.com/consul-terraform-sync/) for your system and download it as a zip archive. For the CTS Enterprise binary, download a zip archive with the `+ent` metadata. [CTS Enterprise requires a Consul Enterpise license](/docs/nia/enterprise/license) to run. + +Unzip the package to extract the binary named `consul-terraform-sync`. Move the `consul-terraform-sync` binary to a location available on your `PATH`. + +Example: ```shell-session -$ mv ~/Downloads/consul-terraform-sync /usr/local/bin/consul-terraform-sync +$ echo $PATH +/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin +$ mv ./consul-terraform-sync /usr/local/bin/consul-terraform-sync ``` -You can also install Consul-Terraform-Sync as a [Docker container](https://hub.docker.com/u/hashicorp/consul-terraform-sync) or build the binary from [source](https://github.com/hashicorp/consul-terraform-sync). - -Once installed, verify the installation works by prompting the help option. +Once installed, verify the installation works by prompting the `-version` or `-help` option. The version outputed for the CTS Enterpise binary includes the `+ent` metadata. ```shell-session -$ consul-terraform-sync -h -Usage of consul-terraform-sync: - -config-dir value - A directory to load files for configuring Sync. Configuration files - require an .hcl or .json file extention in order to specify their format. - This option can be specified multiple times to load different directories. - -config-file value - A file to load for configuring Sync. Configuration file requires an - .hcl or .json extension in order to specify their format. This option can - be specified multiple times to load different configuration files. - -once - Render templates and run tasks once. Does not run the process as a daemon - and disables wait timers. - -version - Print the version of this daemon. +$ consul-terraform-sync -version ``` + + + +Install and run Consul-Terraform-Sync as a [Docker container](https://hub.docker.com/r/hashicorp/consul-terraform-sync). + +For the CTS Enterprise, use the Docker image [`hashicorp/consul-terraform-sync-enterprise`](https://hub.docker.com/r/hashicorp/consul-terraform-sync-enterprise). + +```shell-session +$ docker pull hashicorp/consul-terraform-sync +``` + +Once installed, verify the installation works by prompting the `-version` or `-help` option. The version outputed for the CTS Enterpise image includes the `+ent` metadata. + +```shell-session +$ docker run --rm hashicorp/consul-terraform-sync -version +``` + + + + +The CTS OSS binary is available in the HashiCorp tap, which is a repository of all our Homebrew packages. + +```shell-session +$ brew tap hashicorp/tap +$ brew install hashicorp/tap/consul-terraform-sync +``` + +Run the following command to update to the latest version: + +```shell-session +$ brew upgrade hashicorp/tap/consul-terraform-sync +``` + +Once installed, verify the installation works by prompting the `-version` or `-help` option. + +```shell-session +$ consul-terraform-sync -version +``` + + + + +Clone the repository from GitHub [`hashicorp/consul-terraform-sync`](https://github.com/hashicorp/consul-terraform-sync) to build and install the CTS OSS binary in your path `$GOPATH/bin`. Building from source requires `git` and [Golang](https://go.dev/). + +```shell-session +$ git clone https://github.com/hashicorp/consul-terraform-sync.git +$ cd consul-terraform-sync +$ git checkout tags/ +$ go install +``` + +Once installed, verify the installation works by prompting the `-version` or `-help` option. + +```shell-session +$ consul-terraform-sync -version +``` + + + + ## Connect your Consul Cluster Consul-Terraform-Sync connects with your Consul cluster in order to monitor the Consul catalog for service changes. These service changes lead to downstream updates to your network devices. You can configure your Consul cluster in Consul-Terraform-Sync with the [Consul block](/docs/nia/configuration#consul). Below is an example: diff --git a/website/content/docs/nia/network-drivers/index.mdx b/website/content/docs/nia/network-drivers/index.mdx index 3186619e0..ae178039a 100644 --- a/website/content/docs/nia/network-drivers/index.mdx +++ b/website/content/docs/nia/network-drivers/index.mdx @@ -16,7 +16,7 @@ The following table highlights some of the additional features Terraform and Ter | Network Driver | Description | Features | | -------------- | ----------- | -------- | | [Terraform driver](/docs/nia/network-drivers/terraform) | Consul-Terraform-Sync automates a local installation of the [Terraform CLI](https://www.terraform.io/) | - Local Terraform execution
    - Local workspace directories
    - [Backend options](/docs/nia/configuration#backend) available for state storage
    | -| [Terraform Cloud driver](/docs/nia/network-drivers/terraform-cloud) | Consul-Terraform-Sync Enterprise automates remote workspaces on [Terraform Cloud](https://www.terraform.io/docs/cloud/index.html) | - [Remote Terraform execution](https://www.terraform.io/docs/cloud/run/index.html)
    - Concurrent runs
    - [Secured variables](https://www.terraform.io/docs/cloud/workspaces/variables.html)
    - [State versions](https://www.terraform.io/docs/cloud/workspaces/state.html)
    - [Sentinel](https://www.terraform.io/docs/cloud/sentinel/index.html) to enforce governance policies as code
    - Audit [logs](https://www.terraform.io/docs/enterprise/admin/logging.html) and [trails](https://www.terraform.io/docs/cloud/api/audit-trails.html)
    - Run [history](https://www.terraform.io/docs/cloud/run/manage.html), [triggers](https://www.terraform.io/docs/cloud/workspaces/run-triggers.html) and [notifications](https://www.terraform.io/docs/cloud/workspaces/notifications.html)
    - [Terraform Cloud Agents](https://www.terraform.io/docs/cloud/agents/index.html) | +| [Terraform Cloud driver](/docs/nia/network-drivers/terraform-cloud) | Consul-Terraform-Sync Enterprise automates remote workspaces on [Terraform Cloud](https://www.terraform.io/docs/cloud/index.html) | - [Remote Terraform execution](https://www.terraform.io/docs/cloud/run/index.html)
    - Concurrent runs
    - [Secured variables](https://www.terraform.io/docs/cloud/workspaces/variables.html)
    - [State versions](https://www.terraform.io/docs/cloud/workspaces/state.html)
    - [Sentinel](https://www.terraform.io/docs/cloud/sentinel/index.html) to enforce governance policies as code
    - Audit [logs](https://www.terraform.io/docs/enterprise/admin/logging.html) and [trails](https://www.terraform.io/docs/cloud/api/audit-trails.html)
    - Run [history](https://www.terraform.io/docs/cloud/run/manage.html), [triggers](https://www.terraform.io/docs/cloud/workspaces/run-triggers.html), and [notifications](https://www.terraform.io/docs/cloud/workspaces/notifications.html)
    - [Terraform Cloud Agents](https://www.terraform.io/docs/cloud/agents/index.html) | ## Understanding Terraform Automation From e210e7cb58e1bd34faf96c024ee5c15aa8f6849b Mon Sep 17 00:00:00 2001 From: Chip Vaughn Date: Tue, 11 Jan 2022 15:51:04 -0500 Subject: [PATCH 195/404] CLI Link clean-up --- website/content/api-docs/connect/intentions.mdx | 4 ++-- website/content/api-docs/coordinate.mdx | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 8f34b65fa..7afdb026d 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -319,7 +319,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create`](/commands/intention/get). +-> The corresponding CLI command is [`consul intention get`](/commands/intention/get). ### Parameters @@ -396,7 +396,7 @@ The table below shows this endpoint's support for for more details.

    --> The corresponding CLI command is [`consul intention create`](/commands/intention/get). +-> The corresponding CLI command is [`consul intention get`](/commands/intention/get). ### Parameters diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index dc53ba358..e9103a116 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -38,7 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul rtt -wan #`](/commands/rtt#wan). +-> The corresponding CLI command is [`consul rtt -wan`](/commands/rtt#wan). ### Sample Request @@ -92,7 +92,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | --> The corresponding CLI command is [`consul rtt #`](/commands/rtt). +-> The corresponding CLI command is [`consul rtt`](/commands/rtt). ### Parameters From 733526a0125d9be1f13ff8bae36e1d3168efe6db Mon Sep 17 00:00:00 2001 From: David Yu Date: Tue, 11 Jan 2022 12:53:39 -0800 Subject: [PATCH 196/404] docs: Update uninstall to ensure CRDs are deleted (#12021) * docs: Update uninstall to ensure CRDs are deleted * Update website/content/docs/k8s/operations/uninstall.mdx Co-authored-by: Blake Covarrubias * add more details around CRD deletion * move around crd deletion to before unsintall * slight wording * move deletion of CRDs to first line Co-authored-by: Blake Covarrubias --- website/content/docs/k8s/operations/uninstall.mdx | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/website/content/docs/k8s/operations/uninstall.mdx b/website/content/docs/k8s/operations/uninstall.mdx index 2d2ebddf4..b37cabaf3 100644 --- a/website/content/docs/k8s/operations/uninstall.mdx +++ b/website/content/docs/k8s/operations/uninstall.mdx @@ -29,12 +29,18 @@ Refer to the [Consul K8s CLI reference](/docs/k8s/k8s-cli#uninstall) topic for d Run the `helm uninstall` **and** manually remove resources that Helm does not delete. +1. Although the Helm chart automates the deletion of CRDs upon the uninstallation of the Helm chart, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. + + ```shell-session + $ kubectl delete crd --selector app=consul + ``` 1. (Optional) If Consul is installed in a dedicated namespace, set the kubeConfig context to the `consul` namespace. Otherwise, subsequent commands will need to include `-n consul`. ``` kubectl config set-context --current --namespace=consul ``` + 1. Run the `helm uninstall ` command and specify the release name you've installed Consul with, e.g.,: @@ -42,6 +48,7 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de $ helm uninstall consul release "consul" uninstalled ``` + 1. After deleting the Helm release, you need to delete the `PersistentVolumeClaim`'s for the persistent volumes that store Consul's data. A [bug](https://github.com/helm/helm/issues/5156) in Helm prevents PVCs from being deleted. Issue the following commands: @@ -102,3 +109,9 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de $ kubectl delete serviceaccount consul-tls-init serviceaccount "consul-tls-init" deleted ``` + +1. (Optional) Delete the namespace (i.e. `consul` in the following example) that you have dedicated for installing Consul on Kubernetes. + + ```shell-session + $ kubectl delete ns consul + ``` From 2c0a87a05773727e666660c8a400a439a4b6dcf4 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Tue, 11 Jan 2022 13:22:50 -0800 Subject: [PATCH 197/404] Clarifies external CA config It is not clear that this page is to configure an external CA for Connect CA. Added line to clarify that this page is for configuring external CA's for the Connect CA. For the built-in CA, no config is needed. --- website/content/docs/k8s/connect/connect-ca-provider.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/content/docs/k8s/connect/connect-ca-provider.mdx b/website/content/docs/k8s/connect/connect-ca-provider.mdx index de1bca22a..3b982f66d 100644 --- a/website/content/docs/k8s/connect/connect-ca-provider.mdx +++ b/website/content/docs/k8s/connect/connect-ca-provider.mdx @@ -14,7 +14,8 @@ Consul has support for different certificate authority (CA) providers to be used Please see [Connect Certificate Management](/docs/connect/ca) for the information on the providers we currently support. -To configure a provider via the Consul Helm chart, you need to follow three steps: +If Connect is enabled, the built-in Consul CA is automatically enabled for the Connect CA. +To configure an external CA provider via the Consul Helm chart, you need to follow three steps: 1. Create a configuration file containing your provider information. 1. Create a Kubernetes secret containing the configuration file. From ac72b1b9f0675606da0e47b871ef979b2339b91b Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 12 Jan 2022 09:26:02 +0000 Subject: [PATCH 198/404] ui: First pass at writing some data layer related Eng docs (#11203) --- ui/packages/consul-ui/docs/data-layer.mdx | 117 ++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 ui/packages/consul-ui/docs/data-layer.mdx diff --git a/ui/packages/consul-ui/docs/data-layer.mdx b/ui/packages/consul-ui/docs/data-layer.mdx new file mode 100644 index 000000000..3a47d4912 --- /dev/null +++ b/ui/packages/consul-ui/docs/data-layer.mdx @@ -0,0 +1,117 @@ +--- +title: The Data/Model Layer +--- +# The Data/Model Layer + +Consul UI is currently backed by an Ember conventional ember-data model/adapter/serializer set of classes. But the primary unit for the model layer of the application are our `Repository` classes which 'front' ember-data and provide a layer of abstraction between the application code and ember-data. + +## ember-data Model classes + +These model classes are primarily used to describe the `schema` of our data objects. We mainly use the ember-data `@attr` decorator to do this, but we also have `@nullValue` and `@replace` decorators which allow you to define what to do when the HTTP API responds with a `null` value for a property (using `@nullValue`) something which is very common in with the Consul HTTP API. `@nullValue` is a shortcut for `@replace` which can be used to declaratively specify any sort of replacement. For example we use this for our HealthCheck model to replace a `Type` property with an empty string (`''`) to the value `serf` (which is what the empty string actually means). + +When you come to need extra checks for abilities or characteristics of models, prefer using our `test` (or `is`/`can`) helpers along with `ember-can`s `Ability` classes instead of adding more computed properties to the model classes. Model classes should be primarily used for declaratively specifying the schema for the model. Here 'prefer' means don't worry if you can't, it's fine to keep using model classes if you can't use the `Ability` classes for some reason. + +We don't use ember-data to model relationships spread across more than one API request. Please use nested `DataLoader`/`DataSource` components which offer a more flexible/featured way to model relationships between different API requests. + +Whilst we don't use ember-data async relationships, we do use `ember-data-model-fragments` _minimally_ for when you need to add computed/tracked properties to nested objects of a model. We use them minimally because the compatibility matrix for this addon with ember-data can often lead to this addon blocking ember upgrades. Despite this, if you need to use it, then use it, we have it installed as a dependency currently. + +## ember-data Adapter classes + +We use a completely custom base adapter class (HTTPAdapter) which is based on (but doesn't inherit from) the ember-data RESTAdapter. This is not as strict at sticking to REST conventions as the original RESTAdapter, which suits Consul's HTTP API a lot better. + +The adapter aims to be very simple and gives full control of the HTTP request to the engineer all in one place. For example: + +```javascript +async requestForQuery(request, { dc, ns, partition, index, id, uri }) { + return request` + GET /v1/internal/ui/nodes?${{ dc }} + X-Request-ID: ${uri} + + ${{ + ns, + partition, + index, + }} + `; +} +``` + +Here the `request` Tagged Template Literal here ensures that it is very difficult not to URL encode user provided values. Depending on where you interpolate a user provided value the value will be encoded accordingly, whether thats URL parameters, query parameters or header values. The format of the template follows the HTTP protocol as much as possible. + +1. The HTTP method followed by a single space, followed by the URL for the request, followed by a question mark, an object interpolated directly after the question mark will be encoded as query parameters (using ='s &'s etc). +2. After a single return, you can optinally provide HTTP header values, separated by a single return. +3. A double return then lets you interpolate HTTP body values for POSTing/PUTing, if you've defined the HTTP method to be a GET request, then these values will be added to the query parameters. + +As `request` performs all of the encoding for you when the user provided values are interpolated into the template, the only way you can add a URL encoding error is if you actually type one yourself into the code. This avoids all manner of bugs. + +`request` is usually just returned by the method, but you can further normalize the response here also (which gives you direct access to the methods parameters without having to pass them all through somehow to the serializer. For example: + +```javascript +async requestForQuery(request, { ns, dc, index }) { + const respond = await request` + GET /v1/partitions?${{ dc }} + + ${{ index }} + `; + // deleting the x-consul-index header disables blocking queries for this request + await respond((headers, body) => delete headers['x-consul-index']); + return respond; +} +``` + +`respond` here acts as kind of a distributed filter chain, in that you can call `respond` multiple times across different classes and it will keep filtering/mutating the values as you go. As the request and the response of a HTTP API endpint is usually very tightly coupled, it probably makes sense for us to do more and more of this here in the adapter in the future, and eventually to move all of this directly into our repositories. + +## ember-data Serializer classes + +Currently the majority of our serializing code (of which there is very little), is done in conventional ember-data serializers. Our Serializers also use a HTTPSerializer class as a base, which _does_ inherit form the standard ember-data serializer. Every model object gets fingerprinted with a `['partition', 'nspace', 'dc', 'slug', ...]` formatted unique ID. Therefore most models have `Partition`, `Namespace`, and `Datacenter` properties. The functions used for serializing are unfortunately a little verbose, but this gives use the distributed filter chain characteristic and was originally planned to also support streaming JSON responses. + +## Consul UIs Repository classes + +Most importantly Consul UI uses an extra `Repository` class per data model. This gives us a thin layer of abstraction over ember-data which means the rest of our application doesn't need to know it is using ember-data at all. We have a base/abstract Repository class which all of the others inherit from for now, and mostly just pass things through to more conventional ember-data access using the ember-data store. Importantly, it also gives us a place to smooth over any wrinkles that we might have with ember-data (and/or ember-changeset) without doing that outside of the data/model layer. + +All access methods on the `Repository` classes follow a fairly standard naming scheme `findAll/findBySlug`, but since we use our `@dataSource` decorator/annotation to access these methods, functionally the naming isn't important, so naming is mainly for documentation/consistency purposes. + +You'll find most `Repository` methods look like this: + +```javascript +@dataSource('/:partition/:ns/:dc/auth-method/:id') +async findBySlug() { + return super.findBySlug(...arguments); +} +``` + +Which means that `partition`, `ns` and `id` parameters will eventually find their way into the Adapter class ready for you to make the request. + +The above method can be called from within the app, along with Blocking Query and/or more traditional polling support, using our DataSource and/or DataLoader component: + +```hbs +{{! with loading, loaded, error and disconnection states }} + + + Show the Auth Methods here {{loader.data}} + + + +{{! or just }} + + Show the Auth Methods here {{source.data}} + +``` + +See the separate Component documentation for both the DataLoader and the DataSource component for more details. From fe105d1ba70eec6a48114308ee28bc790665aafb Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 12 Jan 2022 09:27:00 +0000 Subject: [PATCH 199/404] ui: Allow templateName paths to be relative (#11955) --- .../vendor/consul-nspaces/routes.js | 2 +- .../vendor/consul-partitions/routes.js | 2 +- ui/packages/consul-ui/app/router.js | 23 +++++-- .../app/routes/dc/services/show/instances.js | 17 ------ ui/packages/consul-ui/app/routing/route.js | 24 +++----- .../consul-ui/app/utils/path/resolve.js | 25 ++++++++ .../consul-ui/docs/significant-patterns.mdx | 5 ++ .../tests/unit/utils/path/resolve-test.js | 61 +++++++++++++++++++ 8 files changed, 118 insertions(+), 41 deletions(-) delete mode 100644 ui/packages/consul-ui/app/routes/dc/services/show/instances.js create mode 100644 ui/packages/consul-ui/app/utils/path/resolve.js create mode 100644 ui/packages/consul-ui/tests/unit/utils/path/resolve-test.js diff --git a/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js b/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js index b4f0976c9..2c1e882b7 100644 --- a/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js +++ b/ui/packages/consul-nspaces/vendor/consul-nspaces/routes.js @@ -26,7 +26,7 @@ }, create: { _options: { - template: 'dc/nspaces/edit', + template: '../edit', path: '/create', abilities: ['create nspaces'], }, diff --git a/ui/packages/consul-partitions/vendor/consul-partitions/routes.js b/ui/packages/consul-partitions/vendor/consul-partitions/routes.js index a60c5ba22..dc925e985 100644 --- a/ui/packages/consul-partitions/vendor/consul-partitions/routes.js +++ b/ui/packages/consul-partitions/vendor/consul-partitions/routes.js @@ -26,7 +26,7 @@ }, create: { _options: { - template: 'dc/partitions/edit', + template: '../edit', path: '/create', abilities: ['create partitions'], }, diff --git a/ui/packages/consul-ui/app/router.js b/ui/packages/consul-ui/app/router.js index 1ac7c4da1..fb6691f92 100644 --- a/ui/packages/consul-ui/app/router.js +++ b/ui/packages/consul-ui/app/router.js @@ -62,7 +62,18 @@ export const routes = merge.all( source: 'source', searchproperty: { as: 'searchproperty', - empty: [['Name', 'Node', 'Tags', 'ID', 'Address', 'Port', 'Service.Meta', 'Node.Meta']], + empty: [ + [ + 'Name', + 'Node', + 'Tags', + 'ID', + 'Address', + 'Port', + 'Service.Meta', + 'Node.Meta', + ], + ], }, search: { as: 'filter', @@ -95,7 +106,7 @@ export const routes = merge.all( }, create: { _options: { - template: 'dc/services/show/intentions/edit', + template: '../edit', path: '/create', }, }, @@ -296,7 +307,7 @@ export const routes = merge.all( }, create: { _options: { - template: 'dc/intentions/edit', + template: '../edit', path: '/create', abilities: ['create intentions'], }, @@ -320,7 +331,7 @@ export const routes = merge.all( }, folder: { _options: { - template: 'dc/kv/index', + template: '../index', path: '/*key', }, }, @@ -329,14 +340,14 @@ export const routes = merge.all( }, create: { _options: { - template: 'dc/kv/edit', + template: '../edit', path: '/*key/create', abilities: ['create kvs'], }, }, 'root-create': { _options: { - template: 'dc/kv/edit', + template: '../edit', path: '/create', abilities: ['create kvs'], }, diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/instances.js b/ui/packages/consul-ui/app/routes/dc/services/show/instances.js deleted file mode 100644 index 5c27d6497..000000000 --- a/ui/packages/consul-ui/app/routes/dc/services/show/instances.js +++ /dev/null @@ -1,17 +0,0 @@ -import Route from 'consul-ui/routing/route'; - -export default class InstancesRoute extends Route { - queryParams = { - sortBy: 'sort', - status: 'status', - source: 'source', - searchproperty: { - as: 'searchproperty', - empty: [['Name', 'Node', 'Tags', 'ID', 'Address', 'Port', 'Service.Meta', 'Node.Meta']], - }, - search: { - as: 'filter', - replace: true, - }, - }; -} diff --git a/ui/packages/consul-ui/app/routing/route.js b/ui/packages/consul-ui/app/routing/route.js index 0499b849f..c50b975a8 100644 --- a/ui/packages/consul-ui/app/routing/route.js +++ b/ui/packages/consul-ui/app/routing/route.js @@ -1,6 +1,7 @@ import Route from '@ember/routing/route'; import { get, setProperties, action } from '@ember/object'; import { inject as service } from '@ember/service'; +import resolve from 'consul-ui/utils/path/resolve'; import { routes } from 'consul-ui/router'; @@ -16,7 +17,7 @@ export default class BaseRoute extends Route { const template = get(routes, `${this.routeName}._options.template`); if (typeof template !== 'undefined') { - this.templateName = template; + this.templateName = resolve(this.routeName.split('.').join('/'), template); } const queryParams = get(routes, `${this.routeName}._options.queryParams`); @@ -28,25 +29,16 @@ export default class BaseRoute extends Route { redirect(model, transition) { let to = get(routes, `${this.routeName}._options.redirect`); if (typeof to !== 'undefined') { - // simple path resolve - to = to - .split('/') - .reduce((prev, item, i, items) => { - if (item !== '.') { - if (item === '..') { - prev.pop(); - } else if (item !== '' || i === items.length - 1) { - prev.push(item); - } - } - return prev; - }, this.routeName.split('.')) - .join('.'); // TODO: Does this need to return? // Almost remember things getting strange if you returned from here // which is why I didn't do it originally so be sure to look properly if // you feel like adding a return - this.replaceWith(`${to}`, model); + this.replaceWith( + resolve(this.routeName.split('.').join('/'), to) + .split('/') + .join('.'), + model + ); } } diff --git a/ui/packages/consul-ui/app/utils/path/resolve.js b/ui/packages/consul-ui/app/utils/path/resolve.js new file mode 100644 index 000000000..80fa362a9 --- /dev/null +++ b/ui/packages/consul-ui/app/utils/path/resolve.js @@ -0,0 +1,25 @@ +/** + * basic path.resolve like function for resolving ember Route-type paths + * importantly your from should look ember-y route-like (i.e. with no prefix /) + * and your to should begin with either ./ or ../ + * if to begins with a / then ../ and ./ in the to are not currently + * resolved + */ +export default (from, to) => { + if (to.indexOf('/') === 0) { + return to; + } + return to + .split('/') + .reduce((prev, item, i, items) => { + if (item !== '.') { + if (item === '..') { + prev.pop(); + } else if (item !== '' || i === items.length - 1) { + prev.push(item); + } + } + return prev; + }, from.split('/')) + .join('/'); +}; diff --git a/ui/packages/consul-ui/docs/significant-patterns.mdx b/ui/packages/consul-ui/docs/significant-patterns.mdx index 657da2d5e..0cd9d4365 100644 --- a/ui/packages/consul-ui/docs/significant-patterns.mdx +++ b/ui/packages/consul-ui/docs/significant-patterns.mdx @@ -12,6 +12,11 @@ DSL. The format is closely modeled on Ember's DSL and if you need to generate Ember's DSL from this for some reason you can use one of our Debug Utilities to do this. +All Route based configuration including paths, queryParams, simple redirects +and non-default templateNames are configured in this configuration format. +Please note redirects and template names use relative slash separated paths to +avoid copypasta and for future potential reuse purposes. + ### Routes We use a specific BaseRoute as a parent Route for **all** our Routes. This contains project wide diff --git a/ui/packages/consul-ui/tests/unit/utils/path/resolve-test.js b/ui/packages/consul-ui/tests/unit/utils/path/resolve-test.js new file mode 100644 index 000000000..4c77ffc10 --- /dev/null +++ b/ui/packages/consul-ui/tests/unit/utils/path/resolve-test.js @@ -0,0 +1,61 @@ +import resolve from 'consul-ui/utils/path/resolve'; +import { module, test } from 'qunit'; + +module('Unit | Utility | path/resolve', function() { + test('it resolves paths', function(assert) { + [ + { + from: 'dc/intentions/create', + to: '../edit', + expected: 'dc/intentions/edit', + }, + { + from: 'dc/intentions/create', + to: '../../edit', + expected: 'dc/edit', + }, + { + from: 'dc/intentions/create', + to: './edit', + expected: 'dc/intentions/create/edit', + }, + { + from: 'dc/intentions/create', + to: '././edit', + expected: 'dc/intentions/create/edit', + }, + { + from: 'dc/intentions/create', + to: './deep/edit', + expected: 'dc/intentions/create/deep/edit', + }, + { + from: 'dc/intentions/create', + to: '../deep/edit', + expected: 'dc/intentions/deep/edit', + }, + { + from: 'dc/intentions/create', + to: '.././edit', + expected: 'dc/intentions/edit', + }, + { + from: 'dc/intentions/create', + to: '../deep/./edit', + expected: 'dc/intentions/deep/edit', + }, + { + from: 'dc/intentions/create', + to: '/deep/edit', + expected: '/deep/edit', + }, + ].forEach(item => { + const actual = resolve(item.from, item.to); + assert.equal( + actual, + item.expected, + `Expected '${item.from}' < '${item.to}' to equal ${item.expected}` + ); + }); + }); +}); From 754afd356aecc22447073c1fd2e8769cda9aa65a Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 12 Jan 2022 09:31:54 +0000 Subject: [PATCH 200/404] ui: Alter position of dashboard button in the service instance header (#11988) --- .../consul-ui/app/components/app-view/layout.scss | 3 --- .../consul-ui/app/styles/routes/dc/services/index.scss | 8 ++++++++ .../consul-ui/app/templates/dc/services/show.hbs | 10 +++++----- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/ui/packages/consul-ui/app/components/app-view/layout.scss b/ui/packages/consul-ui/app/components/app-view/layout.scss index 725b0cba2..f08c05096 100644 --- a/ui/packages/consul-ui/app/components/app-view/layout.scss +++ b/ui/packages/consul-ui/app/components/app-view/layout.scss @@ -21,9 +21,6 @@ %app-view-actions { margin-top: 9px; } -%app-view-actions > *:not(:last-child) { - margin-right: 12px; -} /* content */ /* TODO: Think about an %app-form or similar */ diff --git a/ui/packages/consul-ui/app/styles/routes/dc/services/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/services/index.scss index ac0c58023..ed24d44f4 100644 --- a/ui/packages/consul-ui/app/styles/routes/dc/services/index.scss +++ b/ui/packages/consul-ui/app/styles/routes/dc/services/index.scss @@ -1,3 +1,11 @@ +/* drop the external dashboard button down if it exists */ +/* so it doesn't sit next to the Intentions create button */ +/* awkwardly */ +html[data-route^='dc.services.show'] .app-view .actions .external-dashboard { + position: absolute; + top: 50px; + right: 0; +} /* instance detail dl text*/ html[data-route^='dc.services.instance'] .app-view > header dl { float: left; diff --git a/ui/packages/consul-ui/app/templates/dc/services/show.hbs b/ui/packages/consul-ui/app/templates/dc/services/show.hbs index 4817b0984..5bfd29fd5 100644 --- a/ui/packages/consul-ui/app/templates/dc/services/show.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/show.hbs @@ -186,8 +186,8 @@ as |items item dc|}} }} as |config|> {{#if config.data.dashboard_url_templates.service}} -
    Open dashboard - + {{/if}} From 5cadcae8e748058c386e7f4e471947c01b3c0ecd Mon Sep 17 00:00:00 2001 From: Krastin Krastev Date: Wed, 12 Jan 2022 11:21:13 +0100 Subject: [PATCH 201/404] Clarify consul.version telemetry description The description of consul.version telemetry is not very clear, fixing --- website/content/docs/agent/telemetry.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/agent/telemetry.mdx b/website/content/docs/agent/telemetry.mdx index ceb2fece5..cb3c8e4f5 100644 --- a/website/content/docs/agent/telemetry.mdx +++ b/website/content/docs/agent/telemetry.mdx @@ -323,7 +323,7 @@ This is a full list of metrics emitted by Consul. | `consul.dns.domain_query.` | Measures the time spent handling a domain query for the given node. | ms | timer | | `consul.http...` | DEPRECATED IN 1.9: Tracks how long it takes to service the given HTTP request for the given verb and path. Paths do not include details like service or key names, for these an underscore will be present as a placeholder (eg. `consul.http.GET.v1.kv._`) | ms | timer | | `consul.system.licenseExpiration` | This measures the number of hours remaining on the agents license. | hours | gauge | -| `consul.version` | Measures the count of running agents. | agents | gauge | +| `consul.version` | Represents the Consul version. | agents | gauge | ## Server Health From a40864420597900a92fd36b0dce03d99e192a5aa Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 12 Jan 2022 11:05:24 +0000 Subject: [PATCH 202/404] ui: Fix up wiring or empty state login button (#11981) * ui: Some ACL component documentation (#11982) --- .../components/consul/acl/selector/README.mdx | 35 +++++++++++++ .../consul/token/selector/README.mdx | 49 +++++++++++++++++++ .../consul/token/selector/index.hbs | 7 +-- ui/packages/consul-ui/.docfy-config.js | 6 +++ .../app/components/hashicorp-consul/index.hbs | 11 +++-- .../tests/acceptance/navigation-links.feature | 9 ++++ 6 files changed, 110 insertions(+), 7 deletions(-) create mode 100644 ui/packages/consul-acls/app/components/consul/acl/selector/README.mdx create mode 100644 ui/packages/consul-acls/app/components/consul/token/selector/README.mdx diff --git a/ui/packages/consul-acls/app/components/consul/acl/selector/README.mdx b/ui/packages/consul-acls/app/components/consul/acl/selector/README.mdx new file mode 100644 index 000000000..bacbafacf --- /dev/null +++ b/ui/packages/consul-acls/app/components/consul/acl/selector/README.mdx @@ -0,0 +1,35 @@ +# Consul::Acl::Selector + +A component to allow the user to 'select' the ACL area they wish to view. +Whilst the 'Selector' naming here is a bit of a reach, it fits well with other +similar 'Selector' components that we use within the main navigation area. + +The component itself is a simple wrapper around a bunch of `li a`'s. + +Please note: + +- Currently at least, you must add this inside of a `
      ` element. + +```hbs preview-template +
        + +
      +``` + + +## Arguments + +| Argument/Attribute | Type | Default | Description | +| --- | --- | --- | --- | +| `dc` | `object` | | The current datacenter | + +## See + +- [Template Source Code](./index.hbs) +- [Component Source Code](./index.js) + +--- diff --git a/ui/packages/consul-acls/app/components/consul/token/selector/README.mdx b/ui/packages/consul-acls/app/components/consul/token/selector/README.mdx new file mode 100644 index 000000000..ecb6933c3 --- /dev/null +++ b/ui/packages/consul-acls/app/components/consul/token/selector/README.mdx @@ -0,0 +1,49 @@ +# Consul::Token::Selector + +A self-contained component to allow the user to 'select' their token a.k.a. +log in. The component is mostly a wrapper around a composition of ``, ``, `` and ``. The majority of +the functionality is contained in those other components. This composition +mostly orchestrates the interactions between them i.e. wires them together. + +As it uses `` (a componentized state machine), retrieving and saving +the token is all managed via that component (via `` and +``, but this component provides the Consul specific DataSource +uri's to tell `AuthDialog` to save user tokens to a Consul namespaced user +settings area (Consul uses localStorage for saving user settings) + +Please note: + +- Currently at least, you must add this inside of a `
        ` element. +- For the moment, make sure you have enabled ACLs using developer debug + cookies. + +```hbs preview-template +
          + +
        +``` + + +## Arguments + +| Argument/Attribute | Type | Default | Description | +| --- | --- | --- | --- | +| `dc` | `object` | | The current datacenter | +| `nspace` | `string` | | The name of the current namespace | +| `partition` | `string` | | The name of the current partition | +| `onchange` | `function` | | An event handler, for when the user token change, either via logging in, logging out or re-logging in. + +## See + +- [Template Source Code](./index.hbs) +- [Component Source Code](./index.js) + +--- diff --git a/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs b/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs index 924536628..b60b2526d 100644 --- a/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs +++ b/ui/packages/consul-acls/app/components/consul/token/selector/index.hbs @@ -126,10 +126,10 @@ {{#let components.MenuItem components.MenuSeparator as |MenuItem MenuSeparator|}} {{!TODO: It might be nice to use one of our recursive components here}} -{{#if @token.AccessorID}} +{{#if authDialog.token.AccessorID}}
      • @@ -151,7 +151,8 @@ {{yield (hash - modal=this.modal + open=this.modal.open + close=this.model.close ) }} {{/if}} diff --git a/ui/packages/consul-ui/.docfy-config.js b/ui/packages/consul-ui/.docfy-config.js index 5a8995323..9c5f039f7 100644 --- a/ui/packages/consul-ui/.docfy-config.js +++ b/ui/packages/consul-ui/.docfy-config.js @@ -86,6 +86,12 @@ module.exports = { urlSchema: 'auto', urlPrefix: 'docs/consul', }, + { + root: `${path.dirname(require.resolve('consul-acls/package.json'))}/app/components`, + pattern: '**/README.mdx', + urlSchema: 'auto', + urlPrefix: 'docs/consul-acls', + }, { root: `${path.dirname(require.resolve('consul-partitions/package.json'))}/app/components`, pattern: '**/README.mdx', diff --git a/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs b/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs index 2e610a8a9..108370296 100644 --- a/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs +++ b/ui/packages/consul-ui/app/components/hashicorp-consul/index.hbs @@ -236,20 +236,23 @@ - {{did-insert (set this 'modal')}} + as |selector|> +
      <:main> {{yield (hash - login=(if this.modal this.modal (hash open=undefined)) + login=(if this.tokenSelector this.tokenSelector (hash open=undefined close=undefined)) )}} diff --git a/ui/packages/consul-ui/tests/acceptance/navigation-links.feature b/ui/packages/consul-ui/tests/acceptance/navigation-links.feature index 31564f470..03cc3b57b 100644 --- a/ui/packages/consul-ui/tests/acceptance/navigation-links.feature +++ b/ui/packages/consul-ui/tests/acceptance/navigation-links.feature @@ -31,3 +31,12 @@ Feature: navigation-links: Main Navigation link visibility Then I see services on the navigation Then I don't see roles on the navigation + Scenario: Empty state login button is shown + Given 1 datacenter model with the value "dc-1" + And 0 service models + When I visit the services page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/services + And I see login on the emptystate From 4d62ee7353f861d3359fd31edb20e8ade2006bd9 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 12 Jan 2022 11:50:09 +0000 Subject: [PATCH 203/404] ui: Adds a notice for non-primary intention creation (#11985) --- .changelog/11985.txt | 3 +++ .../consul/intention/form/index.hbs | 20 ++++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 .changelog/11985.txt diff --git a/.changelog/11985.txt b/.changelog/11985.txt new file mode 100644 index 000000000..d6b56857f --- /dev/null +++ b/.changelog/11985.txt @@ -0,0 +1,3 @@ +```release-note:improvement +ui: Added a notice for non-primary intention creation +``` diff --git a/ui/packages/consul-ui/app/components/consul/intention/form/index.hbs b/ui/packages/consul-ui/app/components/consul/intention/form/index.hbs index 0d3f875b4..e58b1ffb3 100644 --- a/ui/packages/consul-ui/app/components/consul/intention/form/index.hbs +++ b/ui/packages/consul-ui/app/components/consul/intention/form/index.hbs @@ -133,8 +133,26 @@ as |item readonly|}} /> {{/if}} - {{#if (and api.isCreate this.isManagedByCRDs)}} + {{#if api.isCreate}} + {{#if (and (can 'use partitions') (not (can 'choose partitions' dc=@dc)))}} + + +

      + Cross-partition communication not supported +

      +
      + +

      + Cross-partition communication is not supported outside of the primary datacenter. You will only be able to select namespaces for source and destination services. +

      +
      +
      + {{/if}} + {{#if this.isManagedByCRDs}} + {{/if}} {{/if}}
      Date: Wed, 12 Jan 2022 11:24:51 -0500 Subject: [PATCH 204/404] Fix race with tags (#12041) --- agent/local/state.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/agent/local/state.go b/agent/local/state.go index 527a9b04a..5c70b0c8d 100644 --- a/agent/local/state.go +++ b/agent/local/state.go @@ -1086,8 +1086,9 @@ func (l *State) updateSyncState() error { // copy so that we don't retain a pointer to any actual state // store info for in-memory RPCs. if ls.Service.EnableTagOverride { - ls.Service.Tags = make([]string, len(rs.Tags)) - copy(ls.Service.Tags, rs.Tags) + tags := make([]string, len(rs.Tags)) + copy(tags, rs.Tags) + ls.Service.Tags = tags } // Merge any tagged addresses with the consul- prefix (set by the server) From 369c4d07608776c0d025015b745267bd77fa583c Mon Sep 17 00:00:00 2001 From: Bryce Kalow Date: Wed, 12 Jan 2022 10:30:46 -0600 Subject: [PATCH 205/404] website: upgrade downloads page (#12043) --- website/package-lock.json | 20080 +++++++++++++++++++++++++++++++++++- website/package.json | 2 +- 2 files changed, 20015 insertions(+), 67 deletions(-) diff --git a/website/package-lock.json b/website/package-lock.json index 7ddb0749a..34d0fbfd1 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -1,8 +1,19940 @@ { "name": "consul-docs", "version": "0.0.1", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "consul-docs", + "version": "0.0.1", + "dependencies": { + "@hashicorp/flight-icons": "^1.3.0", + "@hashicorp/mktg-global-styles": "^4.0.0", + "@hashicorp/mktg-logos": "^1.2.0", + "@hashicorp/nextjs-scripts": "^19.0.3", + "@hashicorp/platform-analytics": "^0.2.0", + "@hashicorp/platform-code-highlighting": "^0.1.2", + "@hashicorp/platform-runtime-error-monitoring": "^0.1.0", + "@hashicorp/platform-util": "^0.1.0", + "@hashicorp/react-alert": "^6.0.1", + "@hashicorp/react-alert-banner": "^7.0.1", + "@hashicorp/react-button": "^6.0.1", + "@hashicorp/react-call-to-action": "^4.0.0", + "@hashicorp/react-callouts": "^8.0.1", + "@hashicorp/react-code-block": "^4.1.5", + "@hashicorp/react-consent-manager": "^7.1.0", + "@hashicorp/react-content": "^8.0.2", + "@hashicorp/react-docs-page": "^14.4.2", + "@hashicorp/react-enterprise-alert": "^6.0.1", + "@hashicorp/react-featured-slider": "^5.0.1", + "@hashicorp/react-hashi-stack-menu": "^2.1.2", + "@hashicorp/react-head": "^3.1.2", + "@hashicorp/react-hero": "^8.0.2", + "@hashicorp/react-image": "^4.0.3", + "@hashicorp/react-inline-svg": "^6.0.3", + "@hashicorp/react-learn-callout": "^2.0.1", + "@hashicorp/react-markdown-page": "^1.4.3", + "@hashicorp/react-product-downloads-page": "^2.7.0", + "@hashicorp/react-product-features-list": "^5.0.0", + "@hashicorp/react-search": "^6.1.1", + "@hashicorp/react-section-header": "^5.0.4", + "@hashicorp/react-stepped-feature-list": "^4.0.3", + "@hashicorp/react-subnav": "^9.3.2", + "@hashicorp/react-tabs": "^7.0.1", + "@hashicorp/react-text-split": "^4.0.0", + "@hashicorp/react-text-split-with-code": "^3.3.8", + "@hashicorp/react-text-split-with-image": "^4.2.5", + "@hashicorp/react-use-cases": "^5.0.0", + "@hashicorp/react-vertical-text-block-list": "^7.0.0", + "@reach/dialog": "^0.16.2", + "ci": "^2.1.1", + "framer-motion": "^5.3.3", + "next": "^11.1.2", + "next-mdx-remote": "3.0.1", + "next-remote-watch": "1.0.0", + "nuka-carousel": "4.7.7", + "react": "^17.0.2", + "react-datocms": "^1.6.6", + "react-device-detect": "1.17.0", + "react-dom": "^17.0.2", + "react-player": "^2.9.0" + }, + "devDependencies": { + "@hashicorp/platform-cli": "^1.2.0", + "@hashicorp/platform-nextjs-plugin": "^1.0.1", + "@hashicorp/platform-types": "^0.1.1", + "@types/react": "^17.0.3", + "dart-linkcheck": "2.0.15", + "husky": "4.3.7", + "prettier": "2.2.1", + "typescript": "^4.3.5" + }, + "engines": { + "npm": ">=7.0.0" + } + }, + "node_modules/@algolia/cache-browser-local-storage": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.10.5.tgz", + "integrity": "sha512-cfX2rEKOtuuljcGI5DMDHClwZHdDqd2nT2Ohsc8aHtBiz6bUxKVyIqxr2gaC6tU8AgPtrTVBzcxCA+UavXpKww==", + "dependencies": { + "@algolia/cache-common": "4.10.5" + } + }, + "node_modules/@algolia/cache-common": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.10.5.tgz", + "integrity": "sha512-1mClwdmTHll+OnHkG+yeRoFM17kSxDs4qXkjf6rNZhoZGXDvfYLy3YcZ1FX4Kyz0DJv8aroq5RYGBDsWkHj6Tw==" + }, + "node_modules/@algolia/cache-in-memory": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.10.5.tgz", + "integrity": "sha512-+ciQnfIGi5wjMk02XhEY8fmy2pzy+oY1nIIfu8LBOglaSipCRAtjk6WhHc7/KIbXPiYzIwuDbM2K1+YOwSGjwA==", + "dependencies": { + "@algolia/cache-common": "4.10.5" + } + }, + "node_modules/@algolia/client-account": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.10.5.tgz", + "integrity": "sha512-I9UkSS2glXm7RBZYZIALjBMmXSQbw/fI/djPcBHxiwXIheNIlqIFl2SNPkvihpPF979BSkzjqdJNRPhE1vku3Q==", + "dependencies": { + "@algolia/client-common": "4.10.5", + "@algolia/client-search": "4.10.5", + "@algolia/transporter": "4.10.5" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.10.5.tgz", + "integrity": "sha512-h2owwJSkovPxzc+xIsjY1pMl0gj+jdVwP9rcnGjlaTY2fqHbSLrR9yvGyyr6305LvTppxsQnfAbRdE/5Z3eFxw==", + "dependencies": { + "@algolia/client-common": "4.10.5", + "@algolia/client-search": "4.10.5", + "@algolia/requester-common": "4.10.5", + "@algolia/transporter": "4.10.5" + } + }, + "node_modules/@algolia/client-common": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.10.5.tgz", + "integrity": "sha512-21FAvIai5qm8DVmZHm2Gp4LssQ/a0nWwMchAx+1hIRj1TX7OcdW6oZDPyZ8asQdvTtK7rStQrRnD8a95SCUnzA==", + "dependencies": { + "@algolia/requester-common": "4.10.5", + "@algolia/transporter": "4.10.5" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.10.5.tgz", + "integrity": "sha512-nH+IyFKBi8tCyzGOanJTbXC5t4dspSovX3+ABfmwKWUYllYzmiQNFUadpb3qo+MLA3jFx5IwBesjneN6dD5o3w==", + "dependencies": { + "@algolia/client-common": "4.10.5", + "@algolia/requester-common": "4.10.5", + "@algolia/transporter": "4.10.5" + } + }, + "node_modules/@algolia/client-search": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.10.5.tgz", + "integrity": "sha512-1eQFMz9uodrc5OM+9HeT+hHcfR1E1AsgFWXwyJ9Q3xejA2c1c4eObGgOgC9ZoshuHHdptaTN1m3rexqAxXRDBg==", + "dependencies": { + "@algolia/client-common": "4.10.5", + "@algolia/requester-common": "4.10.5", + "@algolia/transporter": "4.10.5" + } + }, + "node_modules/@algolia/logger-common": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.10.5.tgz", + "integrity": "sha512-gRJo9zt1UYP4k3woEmZm4iuEBIQd/FrArIsjzsL/b+ihNoOqIxZKTSuGFU4UUZOEhvmxDReiA4gzvQXG+TMTmA==" + }, + "node_modules/@algolia/logger-console": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.10.5.tgz", + "integrity": "sha512-4WfIbn4253EDU12u9UiYvz+QTvAXDv39mKNg9xSoMCjKE5szcQxfcSczw2byc6pYhahOJ9PmxPBfs1doqsdTKQ==", + "dependencies": { + "@algolia/logger-common": "4.10.5" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.10.5.tgz", + "integrity": "sha512-53/MURQEqtK+bGdfq4ITSPwTh5hnADU99qzvpAINGQveUFNSFGERipJxHjTJjIrjFz3vxj5kKwjtxDnU6ygO9g==", + "dependencies": { + "@algolia/requester-common": "4.10.5" + } + }, + "node_modules/@algolia/requester-common": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.10.5.tgz", + "integrity": "sha512-UkVa1Oyuj6NPiAEt5ZvrbVopEv1m/mKqjs40KLB+dvfZnNcj+9Fry4Oxnt15HMy/HLORXsx4UwcthAvBuOXE9Q==" + }, + "node_modules/@algolia/requester-node-http": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.10.5.tgz", + "integrity": "sha512-aNEKVKXL4fiiC+bS7yJwAHdxln81ieBwY3tsMCtM4zF9f5KwCzY2OtN4WKEZa5AAADVcghSAUdyjs4AcGUlO5w==", + "dependencies": { + "@algolia/requester-common": "4.10.5" + } + }, + "node_modules/@algolia/transporter": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.10.5.tgz", + "integrity": "sha512-F8DLkmIlvCoMwSCZA3FKHtmdjH3o5clbt0pi2ktFStVNpC6ZDmY307HcK619bKP5xW6h8sVJhcvrLB775D2cyA==", + "dependencies": { + "@algolia/cache-common": "4.10.5", + "@algolia/logger-common": "4.10.5", + "@algolia/requester-common": "4.10.5" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "dependencies": { + "@babel/highlight": "^7.12.13" + } + }, + "node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@babel/generator": { + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", + "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==", + "dependencies": { + "@babel/types": "^7.14.2", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", + "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==", + "dependencies": { + "@babel/helper-get-function-arity": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/types": "^7.14.2" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", + "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", + "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", + "dependencies": { + "@babel/types": "^7.13.12" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", + "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", + "dependencies": { + "@babel/types": "^7.13.12" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", + "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==", + "dependencies": { + "@babel/helper-module-imports": "^7.13.12", + "@babel/helper-replace-supers": "^7.13.12", + "@babel/helper-simple-access": "^7.13.12", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/helper-validator-identifier": "^7.14.0", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.2" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", + "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz", + "integrity": "sha512-zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.13.12", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.4" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", + "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==", + "dependencies": { + "@babel/types": "^7.13.12" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", + "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz", + "integrity": "sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==", + "dependencies": { + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.14.0", + "@babel/types": "^7.14.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", + "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.14.0", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz", + "integrity": "sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz", + "integrity": "sha512-NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.13.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.3.tgz", + "integrity": "sha512-OvwMLqNXkCXSz1kSm58sEsNuhqOx/fKpnUnKnFB5v8uDda5bLNEHNgKPvhDN6IU0LDcnHQ90LlJ0Q6jnyBSIBA==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.8.tgz", + "integrity": "sha512-4dMD5QRBkumn45oweR0SxoNtt15oz3BUBAQ8cIx7HJqZTtE8zjpM0My8aHJHVnyf4XfRg6DNzaE1080WLBiC1w==", + "dependencies": { + "core-js-pure": "^3.15.0", + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", + "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/traverse": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", + "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.14.2", + "@babel/helper-function-name": "^7.14.2", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/parser": "^7.14.2", + "@babel/types": "^7.14.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "node_modules/@babel/types": { + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz", + "integrity": "sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.14.9", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bugsnag/browser": { + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.10.5.tgz", + "integrity": "sha512-LxzQ0g8kbVq2YAoZkLM58pzNGqKWV/JxVTBCudHQVp92Wm9Wl7aFVMNPzUWCjp9T9XrNl3h9lrs6Bb127SomyA==", + "dependencies": { + "@bugsnag/core": "^7.10.0" + } + }, + "node_modules/@bugsnag/core": { + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/@bugsnag/core/-/core-7.10.0.tgz", + "integrity": "sha512-sDa2nDxwsxHQx2/2/tsBWjYqH0TewCR8N/r5at6B+irwVkI0uts7Qc2JyqDTfiEiBXKVEXFK+fHTz1x9b8tsiA==", + "dependencies": { + "@bugsnag/cuid": "^3.0.0", + "@bugsnag/safe-json-stringify": "^6.0.0", + "error-stack-parser": "^2.0.3", + "iserror": "0.0.2", + "stack-generator": "^2.0.3" + } + }, + "node_modules/@bugsnag/cuid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.0.0.tgz", + "integrity": "sha512-LOt8aaBI+KvOQGneBtpuCz3YqzyEAehd1f3nC5yr9TIYW1+IzYKa2xWS4EiMz5pPOnRPHkyyS5t/wmSmN51Gjg==" + }, + "node_modules/@bugsnag/js": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@bugsnag/js/-/js-7.5.4.tgz", + "integrity": "sha512-V1+482YPndAD0c0ju7Ik1dXunyKAssZWUIqOMs7Ff3PtZb1107sJ4Hw1E7ZusQvvI/IjA6FO3ZJkmzjIJjQ+UA==", + "dependencies": { + "@bugsnag/browser": "^7.5.4", + "@bugsnag/node": "^7.5.4" + } + }, + "node_modules/@bugsnag/node": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@bugsnag/node/-/node-7.10.1.tgz", + "integrity": "sha512-kpasrz/im5ljptt2JOqrjbOu4b0i5sAZOYU4L0psWXlD31/wXytk7im11QlNALdI8gZZBxIFsVo8ks6dR6mHzg==", + "dependencies": { + "@bugsnag/core": "^7.10.0", + "byline": "^5.0.0", + "error-stack-parser": "^2.0.2", + "iserror": "^0.0.2", + "pump": "^3.0.0", + "stack-generator": "^2.0.3" + } + }, + "node_modules/@bugsnag/plugin-react": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@bugsnag/plugin-react/-/plugin-react-7.5.4.tgz", + "integrity": "sha512-UFNCae2BbvvetIegAy+h45jlmtQ8k+ZnhpM0wnG4EPzDeZA1AFM+LzqRMWF7GrRRLb8H3W8PoswUN9M1Vr6eog==", + "peerDependencies": { + "@bugsnag/core": "^7.0.0" + } + }, + "node_modules/@bugsnag/safe-json-stringify": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@bugsnag/safe-json-stringify/-/safe-json-stringify-6.0.0.tgz", + "integrity": "sha512-htzFO1Zc57S8kgdRK9mLcPVTW1BY2ijfH7Dk2CeZmspTWKdKqSo1iwmqrq2WtRjFlo8aRZYgLX0wFrDXF/9DLA==" + }, + "node_modules/@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@csstools/normalize.css": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.0.0.tgz", + "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg==" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "optional": true, + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", + "optional": true + }, + "node_modules/@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@hapi/accept": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@hapi/accept/-/accept-5.0.2.tgz", + "integrity": "sha512-CmzBx/bXUR8451fnZRuZAJRlzgm0Jgu5dltTX/bszmR2lheb9BpyN47Q1RbaGTsvFzn0PXAEs+lXDKfshccYZw==", + "dependencies": { + "@hapi/boom": "9.x.x", + "@hapi/hoek": "9.x.x" + } + }, + "node_modules/@hapi/boom": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-9.1.3.tgz", + "integrity": "sha512-RlrGyZ603hE/eRTZtTltocRm50HHmrmL3kGOP0SQ9MasazlW1mt/fkv4C5P/6rnpFXjwld/POFX1C8tMZE3ldg==", + "dependencies": { + "@hapi/hoek": "9.x.x" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.2.0.tgz", + "integrity": "sha512-sqKVVVOe5ivCaXDWivIJYVSaEgdQK9ul7a4Kity5Iw7u9+wBAPbX1RMSnLLmp7O4Vzj0WOWwMAJsTL00xwaNug==" + }, + "node_modules/@hashicorp/flight-icons": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@hashicorp/flight-icons/-/flight-icons-1.3.0.tgz", + "integrity": "sha512-m4GkuYocXv54cBc+7sCkD+xorSxGPYovACpk8/A8I9rCFwdkX3WSZM8osT2/ws4IkCfeNYoxB1dz6a2SRhRfDg==" + }, + "node_modules/@hashicorp/js-utils": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@hashicorp/js-utils/-/js-utils-1.0.10.tgz", + "integrity": "sha512-59AS4kK3EURCTU9ibJmk8MVT8i3qc5tEHv985dxECZrWTL4+3kKr45u/13OPpcRlpUSIKeWEsN9FL1f5/ztHww==", + "deprecated": "[DEPRECATED] - This package has been moved to @hashicorp/nextjs-scripts. See https://github.com/hashicorp/nextjs-scripts/pull/124 for details.This package is deprecated, and will no longer be maintained. Please check the hashicorp/react-components repository for a list of maintained packages, and file an issue if you need a replacement for this package." + }, + "node_modules/@hashicorp/mktg-global-styles": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/mktg-global-styles/-/mktg-global-styles-4.0.0.tgz", + "integrity": "sha512-5B0/AUCtqTeGoDR9a5FmkRAC5ubBSN2DQEtDHFy7eOSxXqETRfvMRjHa4Gfv1shfb0PNMufDWKfaDalhuHJ+jA==" + }, + "node_modules/@hashicorp/mktg-logos": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/mktg-logos/-/mktg-logos-1.2.0.tgz", + "integrity": "sha512-bGPaj1FhidA4NFF0C/KpIPwQL4QXJzvOB4uTdBX9g8zTg9V2Kf2MZBC2lt+TL8Xem4k8qmBaa36w8x6+fmbdRw==" + }, + "node_modules/@hashicorp/next-optimized-images": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/next-optimized-images/-/next-optimized-images-0.1.0.tgz", + "integrity": "sha512-fsjGIrpGZozjKUVrEqVfKYpzQvLkYzV+PnybKnAH7gyEX8xZDZXyM7T710ZAkmNaa9KgszvOQ0o21Z6ukfw3UQ==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "figures": "^3.0.0", + "file-loader": "^3.0.1", + "imagemin": "^6.1.0", + "img-loader": "^3.0.1", + "raw-loader": "^2.0.0", + "url-loader": "^1.1.2" + } + }, + "node_modules/@hashicorp/next-optimized-images/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/next-optimized-images/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/next-optimized-images/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@hashicorp/next-optimized-images/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/@hashicorp/next-optimized-images/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/next-optimized-images/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/nextjs-scripts": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/nextjs-scripts/-/nextjs-scripts-19.0.3.tgz", + "integrity": "sha512-SB/Jz/9k/UH3dkAwsZ4tRWsRC9CL5kbSdoeBe+YduFBg/DrhMg8xPpxjetBWuu5kD37vcoAILdcVpAcitD4BKA==", + "dependencies": { + "@bugsnag/js": "7.5.4", + "@bugsnag/plugin-react": "7.5.4", + "@hashicorp/react-code-block": "4.1.2", + "@hashicorp/react-consent-manager": "5.1.0", + "@hashicorp/react-enterprise-alert": "5.0.0", + "@hashicorp/react-tabs": "6.0.0", + "@hashicorp/remark-plugins": "3.2.0", + "@mapbox/rehype-prism": "0.5.0", + "@mdx-js/react": "1.6.22", + "@next/bundle-analyzer": "10.0.3", + "@typescript-eslint/eslint-plugin": "4.9.1", + "@typescript-eslint/parser": "4.9.1", + "babel-eslint": "10.1.0", + "chalk": "4.1.0", + "debug": "4.3.1", + "ejs": "3.1.5", + "eslint": "7.15.0", + "eslint-config-prettier": "7.0.0", + "eslint-plugin-jsx-a11y": "6.4.1", + "eslint-plugin-prettier": "3.3.0", + "eslint-plugin-react": "7.21.5", + "fs-extra": "9.0.1", + "globby": "11.0.1", + "imagemin-mozjpeg": "9.0.0", + "imagemin-optipng": "8.0.0", + "imagemin-svgo": "8.0.0", + "inquirer": "7.3.3", + "lint-staged": "10.5.3", + "next-optimized-images": "2.6.2", + "next-transpile-modules": "4.1.0", + "nprogress": "0.2.0", + "open": "7.3.0", + "postcss-flexbugs-fixes": "4.2.1", + "postcss-normalize": "9.0.0", + "postcss-preset-env": "6.7.0", + "readdirp": "3.5.0", + "rehype-katex": "4.0.0", + "rehype-parse": "^7.0.1", + "rehype-stringify": "^8.0.0", + "remark-math": "4.0.0", + "remark-parse": "9.0.0", + "remark-rehype": "8.0.0", + "rivet-graphql": "0.3.1", + "signale": "1.4.0", + "slugify": "1.4.6", + "stylelint": "13.8.0", + "stylelint-config-css-modules": "2.2.0", + "stylelint-config-prettier": "8.0.2", + "stylelint-config-standard": "20.0.0", + "stylelint-media-use-custom-media": "2.0.0", + "stylelint-order": "4.1.0", + "stylelint-use-nesting": "3.0.0", + "stylelint-value-no-unknown-custom-properties": "3.0.0", + "typescript": "4.1.3", + "unified": "9.2.0", + "unist-util-visit": "2.0.3" + }, + "bin": { + "next-hashicorp": "bin/next-hashicorp" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">= 3" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@eslint/eslintrc": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", + "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-button": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-5.3.1.tgz", + "integrity": "sha512-2g8s9Iq8JKL34y9QMAMdq4UWvWkZHAa6OC1HGddqaSnSLkn8+ms14uWRIB1xc00/htgILqIqTncfkfclBLxLyw==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-inline-svg": "^1.0.0", + "classnames": "^2.2.6", + "slugify": "1.3.6" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-button/node_modules/@hashicorp/react-inline-svg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", + "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", + "peerDependencies": { + "react": "^16.9.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-button/node_modules/slugify": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.3.6.tgz", + "integrity": "sha512-wA9XS475ZmGNlEnYYLPReSfuz/c3VQsEMoU43mi6OnKMCdbnFXd4/Yg7J0lBv8jkPolacMpOrWEaoYxuE1+hoQ==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-code-block": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-code-block/-/react-code-block-4.1.2.tgz", + "integrity": "sha512-kHlk0lid8kp1MmrGGtmPvRP2BNSz8rQBYWH0txqipBJv5ZPsXnyflypcBlivIppxA1+gciwAwg3B/Zcx8L6m1A==", + "dependencies": { + "@hashicorp/react-inline-svg": "6.0.1", + "@reach/listbox": "0.15.0", + "shellwords": "^0.1.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "@hashicorp/nextjs-scripts": ">=17.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-consent-manager": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-5.1.0.tgz", + "integrity": "sha512-GSG+UaXkhF+ACkLtqk5WpfcBEZ2qBVHcCsXjD3lkC7ZsFBXZvd8Myn/HKpb5AeTG70tB0/I4rxyUT1W74alVTw==", + "dependencies": { + "@hashicorp/react-button": "^5.0.1", + "@hashicorp/react-toggle": "^3.0.1", + "@segment/in-eu": "^0.2.1", + "js-cookie": "^2.2.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "@hashicorp/nextjs-scripts": ">=17.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-enterprise-alert": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-enterprise-alert/-/react-enterprise-alert-5.0.0.tgz", + "integrity": "sha512-zprU+/RTVjeBf7JTYOt8yVGI6PX2MhteMtiI4459Yg0v+xuB4D2t1eSTAOL409cclIQKXrrC4N1wBPLpaYKzBA==", + "dependencies": { + "@hashicorp/js-utils": "^1.0.10" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "@hashicorp/nextjs-scripts": ">=17.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-inline-svg": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.1.tgz", + "integrity": "sha512-EpvJd0AkE5tvlentS/Oez5W7SFJ32UjvU0RVFPYQlwR6tOTMOR9wK7Ose69WjkmtdjPMHWRE6MxWeSn0c1N5Bw==", + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "@hashicorp/nextjs-scripts": ">=17.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-tabs": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-6.0.0.tgz", + "integrity": "sha512-tUMyal1QYhxgukzaS1clHmYls8J5au+79c5Ea7TY1Lpg8X+pGR6+hUATS3+nhLjt+FlYy6ySI7YQSxgrb752NA==", + "dependencies": { + "@hashicorp/react-inline-svg": "^1.0.2", + "@tippy.js/react": "^3.1.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-tabs/node_modules/@hashicorp/react-inline-svg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", + "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", + "peerDependencies": { + "react": "^16.9.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-tabs/node_modules/@tippy.js/react": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@tippy.js/react/-/react-3.1.1.tgz", + "integrity": "sha512-KF45vW/jKh/nBXk/2zzTFslv/T46zOMkIoDJ56ymZ+M00yHttk58J5wZ29oqGqDIUnobWSZD+cFpbR4u/UUvgw==", + "deprecated": "This package has moved to @tippyjs/react (the same but without a dot in the scoped organization) due to issues some shells had with the dot when installing the package.", + "dependencies": { + "prop-types": "^15.6.2", + "tippy.js": "^5.1.1" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/@hashicorp/react-toggle": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-3.0.3.tgz", + "integrity": "sha512-rcmMgEGUP+rh8gHnAYBZwZSkPs4Cz+iL1+v/ROW3cYsqZPZBdeAKG/WqRrL7eNBEWsYvBgx/M9885tsl1I5BTg==", + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/eslint": { + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.15.0.tgz", + "integrity": "sha512-Vr64xFDT8w30wFll643e7cGrIkPEU50yIiI36OdSIDoSGguIeaLzBo0vpGvzo9RECUqq7htURfwEtKqwytkqzA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.2.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.0", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/eslint-plugin-react": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", + "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "engines": { + "node": ">=4" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/lint-staged": { + "version": "10.5.3", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.5.3.tgz", + "integrity": "sha512-TanwFfuqUBLufxCc3RUtFEkFraSPNR3WzWcGF39R3f2J7S9+iF9W0KTVLfSy09lYGmZS5NDCxjNvhGMSJyFCWg==", + "dependencies": { + "chalk": "^4.1.0", + "cli-truncate": "^2.1.0", + "commander": "^6.2.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.2.0", + "dedent": "^0.7.0", + "enquirer": "^2.3.6", + "execa": "^4.1.0", + "listr2": "^3.2.2", + "log-symbols": "^4.0.0", + "micromatch": "^4.0.2", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "^3.3.0" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/next-transpile-modules": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/next-transpile-modules/-/next-transpile-modules-4.1.0.tgz", + "integrity": "sha512-brb9S2Dq7l01fV0fdZw1pO2cWMu7fFTclIV2nccmX2Jzwtz1c9iScPMqGyWP6/wglOPOColoJlHzOrSG6cnEIQ==", + "dependencies": { + "micromatch": "^4.0.2", + "slash": "^3.0.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/postcss-browser-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz", + "integrity": "sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig==", + "dependencies": { + "postcss": "^7" + }, + "engines": { + "node": ">=8.0.0" + }, + "peerDependencies": { + "browserslist": "^4" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/postcss-normalize": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-9.0.0.tgz", + "integrity": "sha512-//kq5O1xkygzN1iCioFIBtzyVTgB6ce9+Hu0mNHuUhPn+FnnFSPybe5kBemnUPPqd7QrHc+kdX6GVECUWdU2uQ==", + "dependencies": { + "@csstools/normalize.css": "*", + "postcss": "^7.0.27", + "postcss-browser-comments": "^3.0.0", + "sanitize.css": "*" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/react": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", + "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/string-width/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@hashicorp/nextjs-scripts/node_modules/typescript": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", + "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/@hashicorp/platform-analytics": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-analytics/-/platform-analytics-0.2.0.tgz", + "integrity": "sha512-4Pmb4Fy/2eDCZPFu/O4wKK2L5VIqwsXfDPDGX3eA4Dk67ytZ//SXuW9oFtG97ACyW/p1i72EmwoqcrR6usDwtg==", + "dependencies": { + "fathom-client": "^3.2.0" + }, + "peerDependencies": { + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/platform-cli": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-cli/-/platform-cli-1.2.0.tgz", + "integrity": "sha512-bdGYmqRxxApO+WKPoj8Tc6cWLY2zfPIOQUwnSAcheSE3hIwhscEeudkAxQhKGtgjX4HazgfhEBmQEcJ8T28Bew==", + "dev": true, + "dependencies": { + "@hashicorp/platform-cms": "0.3.0", + "@typescript-eslint/eslint-plugin": "4.9.1", + "@typescript-eslint/parser": "4.9.1", + "babel-eslint": "10.1.0", + "chalk": "4.1.0", + "commander": "7.2.0", + "ejs": "3.1.5", + "eslint": "7.23.0", + "eslint-config-next": "^11.0.1", + "eslint-config-prettier": "7.0.0", + "eslint-plugin-jsx-a11y": "6.4.1", + "eslint-plugin-prettier": "3.3.0", + "fs-extra": "9.0.1", + "globby": "11.0.1", + "inquirer": "7.3.3", + "lint-staged": "11.1.2", + "open": "7.3.0", + "prettier": "2.2.1", + "readdirp": "3.5.0", + "signale": "1.4.0", + "slugify": "1.4.6", + "stylelint": "13.8.0", + "stylelint-config-css-modules": "2.2.0", + "stylelint-config-prettier": "8.0.2", + "stylelint-config-standard": "20.0.0", + "stylelint-media-use-custom-media": "2.0.0", + "stylelint-order": "4.1.0", + "stylelint-use-nesting": "3.0.0", + "stylelint-value-no-unknown-custom-properties": "3.0.0", + "ts-jest": "^26.4.4" + }, + "bin": { + "next-hashicorp": "next-hashicorp" + } + }, + "node_modules/@hashicorp/platform-cms": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-cms/-/platform-cms-0.3.0.tgz", + "integrity": "sha512-sRX9A+kDEZvfZy8PvGFbEaHjn5G1mEsHwTri1vDnrmKG8apE+ELlug83b0iEkD5wIJi9OqaewMIb0NrLxg9s5A==", + "dev": true, + "dependencies": { + "rivet-graphql": "0.3.1" + } + }, + "node_modules/@hashicorp/platform-code-highlighting": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-code-highlighting/-/platform-code-highlighting-0.1.2.tgz", + "integrity": "sha512-87+BwqKW2kY3TjYj5sgcJMHwjFD2xYhQKcMfbzdyDPC4xJLhg5T7/4tXK5SM/G8stpomlt349CIWL0s+jWk2rw==", + "dependencies": { + "@mapbox/rehype-prism": "0.5.0", + "rehype-parse": "7.0.1", + "rehype-stringify": "8.0.0", + "unified": "9.2.0", + "unist-util-visit": "2.0.3" + } + }, + "node_modules/@hashicorp/platform-docs-mdx": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-docs-mdx/-/platform-docs-mdx-0.1.3.tgz", + "integrity": "sha512-NPVvn3s/JuFfebvymJ9JkOd6CHKfCVISz/QenmPgPim1nzJfe3uXKFeqolYdfMb8k1++XpX7KM70nJMVDyQLpw==", + "dependencies": { + "@hashicorp/react-code-block": "^4.1.0", + "@hashicorp/react-enterprise-alert": "^6.0.1", + "@hashicorp/react-tabs": "^7.0.1", + "@mdx-js/react": "1.6.22" + }, + "peerDependencies": { + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/platform-markdown-utils": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-markdown-utils/-/platform-markdown-utils-0.1.3.tgz", + "integrity": "sha512-WIVCYljXQAhT+wFb8EtN3AEkgFDcbXMEvF4XkBg8OE/UWlrKWUNICjhrwTN68Q4Vl11ChX/ifH803DmLcSninA==", + "dependencies": { + "@hashicorp/platform-types": "^0.1.0", + "@hashicorp/remark-plugins": "^3.2.0", + "@mapbox/rehype-prism": "^0.6.0", + "@mdx-js/react": "1.6.22", + "rehype-katex": "^5.0.0", + "remark-math": "^4.0.0", + "remark-rehype": "^7.0.0" + }, + "peerDependencies": { + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/@mapbox/rehype-prism": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.6.0.tgz", + "integrity": "sha512-/0Ev/PB4fXdKPT6VDzVpnAPxGpWFIc4Yz3mf/DzLEMxlpIPZpZlCzaFk4V4NGFofQXPc41+GpEcZtWP3VuFWVA==", + "dependencies": { + "hast-util-to-string": "^1.0.4", + "refractor": "^3.3.1", + "unist-util-visit": "^2.0.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/katex": { + "version": "0.13.13", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.13.tgz", + "integrity": "sha512-cCMcil4jwMm7behpXGiQfXJA29sko/Gd/26iCsr53Dv5Jn2iHbHyEb14dm9uVrIijUXx6Zz1WhlFhHE6DckvkQ==", + "dependencies": { + "commander": "^6.0.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/mdast-util-definitions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-3.0.1.tgz", + "integrity": "sha512-BAv2iUm/e6IK/b2/t+Fx69EL/AGcq/IG2S+HxHjDJGfLJtd6i9SZUS76aC9cig+IEucsqxKTR0ot3m933R3iuA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/mdast-util-to-hast": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-9.1.2.tgz", + "integrity": "sha512-OpkFLBC2VnNAb2FNKcKWu9FMbJhQKog+FCT8nuKmQNIKXyT1n3SIskE7uWDep6x+cA20QXlK5AETHQtYmQmxtQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^3.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "dependencies": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/platform-markdown-utils/node_modules/remark-rehype": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-7.0.0.tgz", + "integrity": "sha512-uqQ/VbaTdxyu/da6npHAso6hA00cMqhA3a59RziQdOLN2KEIkPykAVy52IcmZEVTuauXO0VtpxkyCey4phtHzQ==", + "dependencies": { + "mdast-util-to-hast": "^9.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/platform-nextjs-plugin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-nextjs-plugin/-/platform-nextjs-plugin-1.0.1.tgz", + "integrity": "sha512-gT26wGylFuAUuMHuQ57PRrrL414xWsqaVUfrvlcQcrOXUF9YsUjNnVAWo+JLoo9y37vpdOMhdEPWrwPxXoeItw==", + "dev": true, + "dependencies": { + "@hashicorp/next-optimized-images": "0.1.0", + "@next/bundle-analyzer": "10.0.3", + "imagemin-mozjpeg": "9.0.0", + "imagemin-optipng": "8.0.0", + "imagemin-svgo": "8.0.0", + "next-transpile-modules": "^8.0.0", + "postcss-normalize": "10.0.1" + }, + "peerDependencies": { + "next": ">= 11.x" + } + }, + "node_modules/@hashicorp/platform-product-meta": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-product-meta/-/platform-product-meta-0.1.0.tgz", + "integrity": "sha512-UXAiYENDP8I0mD9+LNMyaCksUPthPRkxAIzg12SbERgx5kAjEaBCzYRHKXibL1dZpVQiRfs0i/0ieSw0mP2y+Q==", + "dependencies": { + "@hashicorp/platform-util": "^0.1.0" + }, + "peerDependencies": { + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/platform-runtime-error-monitoring": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-runtime-error-monitoring/-/platform-runtime-error-monitoring-0.1.0.tgz", + "integrity": "sha512-G6YhBPIu9cPPE2j+uLVoCuamPzxrpEPi45B0ySa+1CTCUmG+3fswvPHXILbyr91ZtpuBsFg1nYJOBwlwEftHdg==", + "dependencies": { + "@bugsnag/js": "7.5.4", + "@bugsnag/plugin-react": "7.5.4" + }, + "peerDependencies": { + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/platform-types": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-types/-/platform-types-0.1.1.tgz", + "integrity": "sha512-aQU6hyzBpMax7WoZKF6f/OkCER/SxsVn25RBVgU7JHxmebYJB4VfmDXAfa0TyKaPz2cDWPeOgc8MVezGVjouSw==", + "dependencies": { + "@types/segment-analytics": "^0.0.33" + } + }, + "node_modules/@hashicorp/platform-util": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-util/-/platform-util-0.1.0.tgz", + "integrity": "sha512-XGWmQnMThygQKUsB5fPfhWT2KIbAq3Zax1K7TiEarX7IrngpEk7oTpVUR0uEraZgpfsaOfhHGSilvBRZjCZ+Ew==", + "dependencies": { + "nprogress": "0.2.0" + }, + "peerDependencies": { + "next": ">= 9.x", + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/react-alert": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-6.0.1.tgz", + "integrity": "sha512-4CSHoPD0D9oIMSxEV84b69QZK9LQFol4muinWyarWfv8oTfVmxe7bNRcCbOZ6o1C1AyURkgJvM4KZZ/8MA69Sg==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-alert-banner": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-alert-banner/-/react-alert-banner-7.0.1.tgz", + "integrity": "sha512-h6M9NhQQxDJZQwhrT1I+Rwfiko8yGsQGrTp6jF0XUrOnteok69SfuDfc0/Vv50aNG0029R4pnBvgK3e1Xc7TlQ==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-inline-svg": "^6.0.3", + "@reach/visually-hidden": "^0.16.0", + "js-cookie": "^2.2.1", + "slugify": "^1.6.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-alert-banner/node_modules/slugify": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz", + "integrity": "sha512-FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@hashicorp/react-button": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-button/-/react-button-6.0.3.tgz", + "integrity": "sha512-CRK93cWw5ap4tGGvMoyr/Ydvvz1Ie1RTyTdBhcpARlH7pCIAmvxHKMK+FCWXWGJNjpM9suKenXfdTJRfz7+KNw==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-inline-svg": "^6.0.1", + "classnames": "^2.3.1", + "slugify": "^1.6.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-button/node_modules/slugify": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz", + "integrity": "sha512-FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@hashicorp/react-call-to-action": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-call-to-action/-/react-call-to-action-4.0.0.tgz", + "integrity": "sha512-SpdyItfcQKCGMzI6RlfT2ZbplyeERd6eK12ZwTT2UDejmDSlD0s0/rauzR6brfCh2RGbyRct3/KjJFYWyVsYaw==", + "dependencies": { + "@hashicorp/react-button": "^6.0.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-callouts": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-callouts/-/react-callouts-8.0.1.tgz", + "integrity": "sha512-KfrEZOO8jWBhHlld2quusPskGbB/6LBuV9bnzsFyS4yn+y7RSBTVk8yovdc8BkFyTaxMq6h/tLW8PgYDLnWPQQ==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-button": "^6.0.0", + "@hashicorp/react-inline-svg": "^6.0.1", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-code-block": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@hashicorp/react-code-block/-/react-code-block-4.1.5.tgz", + "integrity": "sha512-94IHagrdqxvoPE130b2FOvyeSZ26DIhaNSnZ3b/isKMpaNdWjoi/uo+nckRu3auiSyxldbMty8W5EXclgGkCEA==", + "dependencies": { + "@hashicorp/react-inline-svg": "^6.0.3", + "@reach/listbox": "0.15.0", + "shellwords": "^0.1.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-consent-manager": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-7.1.0.tgz", + "integrity": "sha512-Hxs58z80gbyfO2HpdyvQFB1PtXzazWICJnH5Kp1VRL2oQpJPeylG6jUsQ6K6a9kfdclZQjK1EeVKDZg2vVFrhA==", + "dependencies": { + "@hashicorp/react-button": "^6.0.0", + "@hashicorp/react-toggle": "^4.0.1", + "classnames": "^2.3.1", + "js-cookie": "^2.2.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "next": ">=11.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-content": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-8.0.2.tgz", + "integrity": "sha512-FNE1IiXizUDPL/rsvo37uYSBsAB8LhtCianMU/h3MIj8Khcwc/qC3pTabGs9Kv3ujA+fiIp/ImzWEGAhB22T7g==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.2.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-docs-page": { + "version": "14.4.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-14.4.2.tgz", + "integrity": "sha512-K/KITJsAYA8sjxCy4JbAJKEgEKA924MNm4bd4SPniomzSYmsCNxeDaM/bSM/EpaGR7cX9r6htSyugKwo7V3QFQ==", + "dependencies": { + "@hashicorp/platform-docs-mdx": "^0.1.3", + "@hashicorp/platform-markdown-utils": "^0.1.3", + "@hashicorp/react-alert": "^6.0.0", + "@hashicorp/react-content": "^8.0.2", + "@hashicorp/react-docs-sidenav": "^8.4.0", + "@hashicorp/react-head": "^3.1.2", + "@hashicorp/react-placeholder": "^0.1.0", + "@hashicorp/react-search": "^6.1.1", + "@hashicorp/react-version-select": "^0.2.0", + "classnames": "^2.3.1", + "fs-exists-sync": "^0.1.0", + "gray-matter": "^4.0.3", + "js-yaml": "^4.1.0", + "line-reader": "^0.4.0", + "moize": "^6.0.3", + "readdirp": "^3.6.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "next-mdx-remote": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/gray-matter/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/@hashicorp/react-docs-page/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@hashicorp/react-docs-sidenav": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-8.4.0.tgz", + "integrity": "sha512-r2yFLuAD4+9RbPvBzWwcv7b9wrk1MooUJJMdLFP6WUUPYxt3r0Jju6/y4CubVUwtDnNCe3iqo3KoRmWrfNSS0Q==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-link-wrap": "^3.0.3", + "fuzzysearch": "1.0.3" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-enterprise-alert": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-enterprise-alert/-/react-enterprise-alert-6.0.1.tgz", + "integrity": "sha512-fIT5A5G7mNW77Iob/B5FRlKukDws8CEtK/pLqYJjYhz1HmwZiPRORWTDcaBDh8XUARqo8gA8lg9gqke2kEv6UQ==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-featured-slider": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-featured-slider/-/react-featured-slider-5.0.1.tgz", + "integrity": "sha512-AuTZA/C5JHjyb+fCr2nrZcL0iPoDBaj0wGRXxRnNwltV1YOwYnn1p3vzRtrAky+BAjTWtYkh+h4Nebi+pvi+AQ==", + "dependencies": { + "@hashicorp/react-button": "^6.0.0", + "@hashicorp/react-image": "^4.0.1", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-hashi-stack-menu": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-hashi-stack-menu/-/react-hashi-stack-menu-2.1.2.tgz", + "integrity": "sha512-3K6Y2FNSLq6TsMceX3a1pdmxaVx8lRvxCgjxcKL1P6DpmOk0AU5/eL0CvKP8GzXSYstL36xXxIhWFfiaAaF/yQ==", + "dependencies": { + "@hashicorp/react-inline-svg": "^6.0.1", + "@hashicorp/react-link-wrap": "^3.0.3", + "slugify": "1.6.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "@hashicorp/mktg-logos": ">=1.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-hashi-stack-menu/node_modules/slugify": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz", + "integrity": "sha512-FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@hashicorp/react-head": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-head/-/react-head-3.1.2.tgz", + "integrity": "sha512-DkQt0F2zU2cZ36IafDI8TWQNS6kkCVzaouLMR0Mwb/MYCzOJtutyZYrzrrDU+uQQ5tWSt3vZQKrSqD4M5RMMoQ==", + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-hero": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-hero/-/react-hero-8.0.2.tgz", + "integrity": "sha512-q+XgMk0b2YFcmPL8wNHjlZErUEyfIO1i9/diTebHVvKjCs2AeOVDODU3diSU/Q5mvX5dCx36l/fp1qmyYdP8SQ==", + "dependencies": { + "@hashicorp/js-utils": "^1.0.10", + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-alert": "^6.0.0", + "@hashicorp/react-button": "^6.0.1", + "@hashicorp/react-image": "^4.0.2", + "@hashicorp/react-text-input": "^5.0.0", + "classnames": "^2.3.1", + "formik": "^2.2.9", + "promise-polyfill": "^8.2.0", + "query-string": "^5.1.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-image": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-image/-/react-image-4.0.3.tgz", + "integrity": "sha512-GcTWoIGVwZm8nvxKftqjsQjVfjhhDm4VUDpBcCtRAEj3f/umhrppDV6hFuJYSWSWtGp8hnVCFVAS445nNBgaeg==", + "dependencies": { + "object-assign": "4.1.1", + "query-string": "5.1.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-inline-svg": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.3.tgz", + "integrity": "sha512-BKLhVFc0gIRxyd2QZ5KWSAXDyyiOI+dQ4U4HrgAA3f4/JmpOsF/EgQ6Ro+cmNZy1/cn42OM2iqoEvUqYvW+ZfQ==", + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-learn-callout": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-learn-callout/-/react-learn-callout-2.0.1.tgz", + "integrity": "sha512-Dldn8SfbOFGd8cVdYyLUuCXllGYIQ5A8Txv3J6wYzMnWbvRTRnqjzun4kxk1UTxqHonP5D3fACP7xeM1mlbroQ==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-button": "^6.0.0", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-link-wrap": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-link-wrap/-/react-link-wrap-3.0.3.tgz", + "integrity": "sha512-G0JM3IowWCUWkc/mW5Llb/9NK50PH81/fySGZmQI6/oakK1gLvA6/fEfWRX7cqa7NoFHLiNnDrXJkc3ShtKNVw==", + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-markdown-page": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-markdown-page/-/react-markdown-page-1.4.3.tgz", + "integrity": "sha512-CBYXek4/p/x9P9MSOtUm24QJjoGVvGufxv26WJlnXCeXspprYxWULikcBatZFXresWSa5hYQjpUqNfk3F+XQyw==", + "dependencies": { + "@hashicorp/platform-markdown-utils": "^0.1.0", + "@hashicorp/react-content": "^8.0.2", + "@hashicorp/react-head": "^3.1.2", + "gray-matter": "4.0.2" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "next-mdx-remote": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-placeholder": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-placeholder/-/react-placeholder-0.1.0.tgz", + "integrity": "sha512-Jti+Z4p6fVXiukBZpPIvIFJb/oxRYY3AIXCgrEJxvKemvF8iD84oWSyCB2WPzycmHIn4u8dlSCrc/VhicnieQA==", + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.9.0" + } + }, + "node_modules/@hashicorp/react-product-downloads-page": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-product-downloads-page/-/react-product-downloads-page-2.7.0.tgz", + "integrity": "sha512-GAw+Ztq4Cr/GJ5kyL3HvpLzs2wtpTFrs0FGDp6TRXjAVgqgfqrQU3cJzthtwkvKAZBmgGmubpQf84bhtfgtvLA==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-button": "^6.0.0", + "@hashicorp/react-head": "^3.1.2", + "@hashicorp/react-tabs": "^7.0.0", + "semver": "^7.3.5" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-product-features-list": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-product-features-list/-/react-product-features-list-5.0.0.tgz", + "integrity": "sha512-H1Pp9wq+xdMQ4QZsBGSOcqPGmXMzOP49Ed/e/tsvOrQWhhdj4tjjVqBIPZFKjx6tHW7Ebjz2/PDw27i1UwoYnQ==", + "dependencies": { + "@hashicorp/react-button": "^6.0.0", + "@hashicorp/react-image": "^4.0.1", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-search": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-6.1.1.tgz", + "integrity": "sha512-azaXjFP/om+DN6InI/WD+qH9jmLE3/9pqIc2Dp4rYY/tn1KuWyJ5MefvcsbYxIFUVX/wiT2n+8HZFwRfxhdA+w==", + "dependencies": { + "@hashicorp/react-inline-svg": "^6.0.1", + "@hashicorp/remark-plugins": "^3.1.1", + "@reach/visually-hidden": "^0.16.0", + "algoliasearch": "^4.10.3", + "classnames": "^2.3.1", + "dotenv": "^10.0.0", + "glob": "^7.1.7", + "gray-matter": "^4.0.3", + "react-instantsearch-dom": "^6.12.1", + "remark": "^13.0.0", + "search-insights": "^1.7.1", + "unist-util-visit": "^2.0.3" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-search/node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/@hashicorp/react-section-header": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@hashicorp/react-section-header/-/react-section-header-5.0.4.tgz", + "integrity": "sha512-1C1bdgn4qdD2IOVjbL+WqTUmLBQHAnKiNezSwQbO4MvdrSFfAllPhPchA760VuVaEBnMWo0gFQPSybRrv7faVQ==", + "dependencies": { + "@hashicorp/js-utils": "^1.0.10" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-select-input": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-select-input/-/react-select-input-4.0.3.tgz", + "integrity": "sha512-HN7uy2acXOCNE2cz844da0V8JHesnCLjKXis7/n+PB9O6wLfSYblWYPoPLEPx83Ph0dQfAtUT8dsJ9v6S2TSiw==", + "dependencies": { + "classnames": "^2.2.6", + "downshift": "3.1.5" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-stepped-feature-list": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-stepped-feature-list/-/react-stepped-feature-list-4.0.3.tgz", + "integrity": "sha512-s/MwmtnMjBViElSCXVbP+sKtDxy6A8jceSVhfVgLv8Q0+G84yeHO0THaMGgTBoA8wgF6Ad5zChW9zDJojdDrMw==", + "dependencies": { + "nuka-carousel": "^4.7.2" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x" + } + }, + "node_modules/@hashicorp/react-subnav": { + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-subnav/-/react-subnav-9.3.2.tgz", + "integrity": "sha512-UoMnQgV/KnqNX/bwKKsnw5ph4egJhQPFHwrnplRlBuRMlHgblMMP5jsPi/07wkpIv4iyV0yc1ttaFN4RPVTa5w==", + "dependencies": { + "@hashicorp/mktg-logos": "^1.0.2", + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-button": "^6.0.3", + "@hashicorp/react-inline-svg": "^6.0.3", + "@hashicorp/react-link-wrap": "^3.0.3", + "@reach/visually-hidden": "^0.16.0", + "camel-case": "^4.1.2", + "classnames": "^2.3.1", + "isomorphic-unfetch": "^3.1.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-tabs": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-7.0.1.tgz", + "integrity": "sha512-qmQscQkIxNhZc/QhWo5RCEu39rKXl4iQHlk0Q0Zk+ClqKSplDuVMMJqg3GtrG056em9xA2p+n7J501EZlOfzGg==", + "dependencies": { + "@hashicorp/react-inline-svg": "^6.0.1", + "@reach/portal": "^0.16.0", + "@reach/tooltip": "^0.16.0", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-tabs/node_modules/@reach/portal": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.0.tgz", + "integrity": "sha512-vXJ0O9T+72HiSEWHPs2cx7YbSO7pQsTMhgqPc5aaddIYpo2clJx1PnYuS0lSNlVaDO0IxQhwYq43evXaXnmviw==", + "dependencies": { + "@reach/utils": "0.16.0", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@hashicorp/react-tabs/node_modules/@reach/utils": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", + "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", + "dependencies": { + "tiny-warning": "^1.0.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@hashicorp/react-tabs/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/@hashicorp/react-text-input": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-text-input/-/react-text-input-5.0.1.tgz", + "integrity": "sha512-KXY2XloVHKYKJFk/S3LrVZBm0QNtDqdhRsd9wXdxe3dlElfAbNMgxIUQz2bzqmLYxegatlhgGCr6GBU9odkz5A==", + "dependencies": { + "classnames": "^2.3.1", + "uuid": "^8.3.2" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-text-input/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@hashicorp/react-text-split": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-text-split/-/react-text-split-4.0.0.tgz", + "integrity": "sha512-drBWTG3l7v/GNusn2gy2eW3SjuJ3lldlfzX3lr20IxprP2UcMcpLBDQFL+xrJbaHe7Tn2WjwrdmOS6MtQOopbQ==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-button": "^6.0.0", + "@hashicorp/react-inline-svg": "^6.0.3", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-text-split-with-code": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@hashicorp/react-text-split-with-code/-/react-text-split-with-code-3.3.8.tgz", + "integrity": "sha512-aOakwQL+GjrSEsySSOHw7WlJLg0nEiKoIMK5x8aLry64ZwHgTpqqFj5CTQ01RHk0sAfqbCCvrRc2il9CLR83fg==", + "dependencies": { + "@hashicorp/react-code-block": "^4.1.5", + "@hashicorp/react-text-split": "^4.0.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-text-split-with-image": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/@hashicorp/react-text-split-with-image/-/react-text-split-with-image-4.2.5.tgz", + "integrity": "sha512-UJ2hF7xYXcWoIpgAD3MlJijutbouKW5joVScfL9zgTWUPmr1c9cBj6MQf7VNNP00q4CR0ElId74ki2tr/8Vkfw==", + "dependencies": { + "@hashicorp/react-image": "^4.0.3", + "@hashicorp/react-text-split": "^4.0.0" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-toggle": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-4.0.1.tgz", + "integrity": "sha512-pPcFs3mlR7qt6j+bbfRnkxr1dEpTInuvLfYZ27L92uEcd83MBLcc+jp6c/idMuzHyLGSFU5aGqrAz5ufhLERZw==", + "dependencies": { + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-use-cases": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-use-cases/-/react-use-cases-5.0.0.tgz", + "integrity": "sha512-doiU9Wpo5c1r5XhsiIWNStPd+P3D/9BqMoYn+MrCrfFvD19pbAuH5GEJslC/XBJt7M4uumAb9e803XKJAayZww==", + "dependencies": { + "@hashicorp/react-image": "^4.0.3", + "@hashicorp/react-inline-svg": "^6.0.3", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/react-version-select": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-version-select/-/react-version-select-0.2.1.tgz", + "integrity": "sha512-E7BW4FotIYq1S5d/GrUPH2NvXmzYmeNpM01wNThDEbes47RfT8nzN3dg64QOUdCvWoUcUaOlGMQHNychBTif2g==", + "dependencies": { + "@hashicorp/react-select-input": ">=4.x" + }, + "peerDependencies": { + "react": ">=16.8.x" + } + }, + "node_modules/@hashicorp/react-vertical-text-block-list": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-vertical-text-block-list/-/react-vertical-text-block-list-7.0.0.tgz", + "integrity": "sha512-RYFO/HXEiB4Adj6zdmuLCL19gfTh7MZc53Kp9FqZ7dWR7ggW24tMCwIsgqvk4NjubBkJ0Lx/DnhiQ3ATZVMC6w==", + "dependencies": { + "@hashicorp/platform-product-meta": "^0.1.0", + "@hashicorp/react-image": "^4.0.1", + "@hashicorp/react-link-wrap": "^3.0.1", + "classnames": "^2.3.1" + }, + "peerDependencies": { + "@hashicorp/mktg-global-styles": ">=3.x", + "react": ">=16.x" + } + }, + "node_modules/@hashicorp/remark-plugins": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/remark-plugins/-/remark-plugins-3.2.0.tgz", + "integrity": "sha512-kHY0Uq/6TnqXkIKGo4oIhhvVDfynlNzLxNRxMYMi6yOyGSI407j9M0sTfJWwoQom4NWFd3aOlwJV8IAhF7deJQ==", + "dependencies": { + "@mdx-js/util": "1.6.22", + "github-slugger": "^1.3.0", + "remark": "12.0.1", + "remark-mdx": "1.6.22", + "to-vfile": "^6.1.0", + "unist-util-flatmap": "^1.0.0", + "unist-util-is": "^4.0.2", + "unist-util-map": "^2.0.1", + "unist-util-visit": "^2.0.3" + } + }, + "node_modules/@hashicorp/remark-plugins/node_modules/remark": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-12.0.1.tgz", + "integrity": "sha512-gS7HDonkdIaHmmP/+shCPejCEEW+liMp/t/QwmF0Xt47Rpuhl32lLtDV1uKWvGoq+kxr5jSgg5oAIpGuyULjUw==", + "dependencies": { + "remark-parse": "^8.0.0", + "remark-stringify": "^8.0.0", + "unified": "^9.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/remark-plugins/node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/remark-plugins/node_modules/remark-stringify": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", + "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", + "dependencies": { + "ccount": "^1.0.0", + "is-alphanumeric": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "longest-streak": "^2.0.1", + "markdown-escapes": "^1.0.0", + "markdown-table": "^2.0.0", + "mdast-util-compact": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "stringify-entities": "^3.0.0", + "unherit": "^1.0.4", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@mapbox/rehype-prism": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.5.0.tgz", + "integrity": "sha512-sE5EetmSR6At7AU2s3N2rFUUqm8BpvxUcGcesgfTZgqF7bQoekqsKxLX8gunIDjZs34acZJ6fgPFHepEWnYKCQ==", + "dependencies": { + "hast-util-to-string": "^1.0.3", + "refractor": "^3.0.0", + "unist-util-visit": "^2.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/mdx/node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@mrmlnc/readdir-enhanced/node_modules/glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=" + }, + "node_modules/@napi-rs/triples": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@napi-rs/triples/-/triples-1.0.3.tgz", + "integrity": "sha512-jDJTpta+P4p1NZTFVLHJ/TLFVYVcOqv6l8xwOeBKNPMgY/zDYH/YH7SJbvrr/h1RcS9GzbPcLKGzpuK9cV56UA==" + }, + "node_modules/@next/bundle-analyzer": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/@next/bundle-analyzer/-/bundle-analyzer-10.0.3.tgz", + "integrity": "sha512-+RtvLLpNkTLnq5ICli2hCBI6oZZ1lrrLLa6Dcaitadvly1IuspgwkwyBVlufm2barV+QSHJ2GlX26+NuLbisyg==", + "dependencies": { + "webpack-bundle-analyzer": "3.6.1" + } + }, + "node_modules/@next/env": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/env/-/env-11.1.2.tgz", + "integrity": "sha512-+fteyVdQ7C/OoulfcF6vd1Yk0FEli4453gr8kSFbU8sKseNSizYq6df5MKz/AjwLptsxrUeIkgBdAzbziyJ3mA==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-11.1.2.tgz", + "integrity": "sha512-cN+ojHRsufr9Yz0rtvjv8WI5En0RPZRJnt0y16Ha7DD+0n473evz8i1ETEJHmOLeR7iPJR0zxRrxeTN/bJMOjg==", + "dev": true, + "dependencies": { + "glob": "7.1.7" + } + }, + "node_modules/@next/polyfill-module": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/polyfill-module/-/polyfill-module-11.1.2.tgz", + "integrity": "sha512-xZmixqADM3xxtqBV0TpAwSFzWJP0MOQzRfzItHXf1LdQHWb0yofHHC+7eOrPFic8+ZGz5y7BdPkkgR1S25OymA==" + }, + "node_modules/@next/react-dev-overlay": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/react-dev-overlay/-/react-dev-overlay-11.1.2.tgz", + "integrity": "sha512-rDF/mGY2NC69mMg2vDqzVpCOlWqnwPUXB2zkARhvknUHyS6QJphPYv9ozoPJuoT/QBs49JJd9KWaAzVBvq920A==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "anser": "1.4.9", + "chalk": "4.0.0", + "classnames": "2.2.6", + "css.escape": "1.5.1", + "data-uri-to-buffer": "3.0.1", + "platform": "1.3.6", + "shell-quote": "1.7.2", + "source-map": "0.8.0-beta.0", + "stacktrace-parser": "0.1.10", + "strip-ansi": "6.0.0" + }, + "peerDependencies": { + "react": "^17.0.2", + "react-dom": "^17.0.2" + } + }, + "node_modules/@next/react-dev-overlay/node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@next/react-dev-overlay/node_modules/chalk": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", + "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@next/react-dev-overlay/node_modules/classnames": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", + "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" + }, + "node_modules/@next/react-dev-overlay/node_modules/source-map": { + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", + "dependencies": { + "whatwg-url": "^7.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@next/react-refresh-utils": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/react-refresh-utils/-/react-refresh-utils-11.1.2.tgz", + "integrity": "sha512-hsoJmPfhVqjZ8w4IFzoo8SyECVnN+8WMnImTbTKrRUHOVJcYMmKLL7xf7T0ft00tWwAl/3f3Q3poWIN2Ueql/Q==", + "peerDependencies": { + "react-refresh": "0.8.3", + "webpack": "^4 || ^5" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-11.1.2.tgz", + "integrity": "sha512-hZuwOlGOwBZADA8EyDYyjx3+4JGIGjSHDHWrmpI7g5rFmQNltjlbaefAbiU5Kk7j3BUSDwt30quJRFv3nyJQ0w==", + "cpu": ["arm64"], + "optional": true, + "os": ["darwin"], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-11.1.2.tgz", + "integrity": "sha512-PGOp0E1GisU+EJJlsmJVGE+aPYD0Uh7zqgsrpD3F/Y3766Ptfbe1lEPPWnRDl+OzSSrSrX1lkyM/Jlmh5OwNvA==", + "cpu": ["x64"], + "optional": true, + "os": ["darwin"], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-11.1.2.tgz", + "integrity": "sha512-YcDHTJjn/8RqvyJVB6pvEKXihDcdrOwga3GfMv/QtVeLphTouY4BIcEUfrG5+26Nf37MP1ywN3RRl1TxpurAsQ==", + "cpu": ["x64"], + "optional": true, + "os": ["linux"], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-11.1.2.tgz", + "integrity": "sha512-e/pIKVdB+tGQYa1cW3sAeHm8gzEri/HYLZHT4WZojrUxgWXqx8pk7S7Xs47uBcFTqBDRvK3EcQpPLf3XdVsDdg==", + "cpu": ["x64"], + "optional": true, + "os": ["win32"], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@node-rs/helper": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@node-rs/helper/-/helper-1.2.1.tgz", + "integrity": "sha512-R5wEmm8nbuQU0YGGmYVjEc0OHtYsuXdpRG+Ut/3wZ9XAvQWyThN08bTh2cBJgoZxHQUPtvRfeQuxcAgLuiBISg==", + "dependencies": { + "@napi-rs/triples": "^1.0.3" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@reach/auto-id": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/auto-id/-/auto-id-0.15.0.tgz", + "integrity": "sha512-iACaCcZeqAhDf4OOwJpmHHS/LaRj9z3Ip8JmlhpCrFWV2YOIiiZk42amlBZX6CKH66Md+eriYZQk3TyAjk6Oxg==", + "dependencies": { + "@reach/utils": "0.15.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/auto-id/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/descendants": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/descendants/-/descendants-0.15.0.tgz", + "integrity": "sha512-MGs+7sGjx07sm29Wc2d/Ya72qwatNVHofnYwwHMT6LImv99kE5TQMCgkMSDeRwqQxHURmcjb4I7Tab+ahvCGiw==", + "dependencies": { + "@reach/utils": "0.15.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/descendants/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/dialog": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@reach/dialog/-/dialog-0.16.2.tgz", + "integrity": "sha512-qq8oX0cROgTb8LjOKWzzNm4SqaN9b89lJHr7UyVo2aQ6WbeNzZBxqXhGywFP7dkR+hNqOJnrA59PXFWhfttA9A==", + "dependencies": { + "@reach/portal": "0.16.2", + "@reach/utils": "0.16.0", + "prop-types": "^15.7.2", + "react-focus-lock": "^2.5.2", + "react-remove-scroll": "^2.4.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/dialog/node_modules/@reach/portal": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.2.tgz", + "integrity": "sha512-9ur/yxNkuVYTIjAcfi46LdKUvH0uYZPfEp4usWcpt6PIp+WDF57F/5deMe/uGi/B/nfDweQu8VVwuMVrCb97JQ==", + "dependencies": { + "@reach/utils": "0.16.0", + "tiny-warning": "^1.0.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/dialog/node_modules/@reach/utils": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", + "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", + "dependencies": { + "tiny-warning": "^1.0.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/dialog/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/@reach/listbox": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/listbox/-/listbox-0.15.0.tgz", + "integrity": "sha512-3Vvpte0HQkfo3sT4Cz6gG9h+E/La2IwbtLQDTesEmDzToQ8bk9rOfuFDVp7IXUyOdDggfDCOEz/ZphsuniADWA==", + "dependencies": { + "@reach/auto-id": "0.15.0", + "@reach/descendants": "0.15.0", + "@reach/machine": "0.15.0", + "@reach/popover": "0.15.0", + "@reach/utils": "0.15.0", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/machine": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/machine/-/machine-0.15.0.tgz", + "integrity": "sha512-o3vvqsTQyj7apxpbSuIn4xKYlqNagcjhlMnroJ2uqgJfFwy1tLrsQo4Sr8GnZu4hitPbNAfqGExYjV8ZV8SHpA==", + "dependencies": { + "@reach/utils": "0.15.0", + "@xstate/fsm": "1.4.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/machine/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/observe-rect": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@reach/observe-rect/-/observe-rect-1.2.0.tgz", + "integrity": "sha512-Ba7HmkFgfQxZqqaeIWWkNK0rEhpxVQHIoVyW1YDSkGsGIXzcaW4deC8B0pZrNSSyLTdIk7y+5olKt5+g0GmFIQ==" + }, + "node_modules/@reach/popover": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/popover/-/popover-0.15.0.tgz", + "integrity": "sha512-nBR6ZlULF7ZZIqkN47QEWmdqUX2Zd6FSeYJku1il9OkiMnWzI3aTOyu1B+IJfYeIqg28D/aeF4ff0oVu1VUrqQ==", + "dependencies": { + "@reach/portal": "0.15.0", + "@reach/rect": "0.15.0", + "@reach/utils": "0.15.0", + "tabbable": "^4.0.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/popover/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/portal": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.15.0.tgz", + "integrity": "sha512-Aulqjk/PIRu+R7yhINYAAYfYh++ZdC30qwHDWDtGk2cmTEJT7m9AlvBX+W7T+Q3Ux6Wy5f37eV+TTGid1CcjFw==", + "dependencies": { + "@reach/utils": "0.15.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/portal/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/rect": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/rect/-/rect-0.15.0.tgz", + "integrity": "sha512-Nu0zG4Xq8Z0C3Yr3wbjtj7fvII1q2KopHDStNtmL26oWPzlaZJ9A1K6rZSPIqxKkx1hvl6AUTeom7eHTIKhHjA==", + "dependencies": { + "@reach/observe-rect": "1.2.0", + "@reach/utils": "0.15.0", + "prop-types": "^15.7.2", + "tiny-warning": "^1.0.3", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/rect/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/tooltip": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/tooltip/-/tooltip-0.16.0.tgz", + "integrity": "sha512-kZr/OqfmmBQVBxJh+OQRCq++T5f6iQaWinpLnwD5FlG5HRKPwNzTnsy+hpyY9pR2mabk+96POp/TsT4Dv3K/qQ==", + "dependencies": { + "@reach/auto-id": "0.16.0", + "@reach/portal": "0.16.0", + "@reach/rect": "0.16.0", + "@reach/utils": "0.16.0", + "@reach/visually-hidden": "0.16.0", + "prop-types": "^15.7.2", + "tiny-warning": "^1.0.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/tooltip/node_modules/@reach/auto-id": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/auto-id/-/auto-id-0.16.0.tgz", + "integrity": "sha512-5ssbeP5bCkM39uVsfQCwBBL+KT8YColdnMN5/Eto6Rj7929ql95R3HZUOkKIvj7mgPtEb60BLQxd1P3o6cjbmg==", + "dependencies": { + "@reach/utils": "0.16.0", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/tooltip/node_modules/@reach/portal": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.0.tgz", + "integrity": "sha512-vXJ0O9T+72HiSEWHPs2cx7YbSO7pQsTMhgqPc5aaddIYpo2clJx1PnYuS0lSNlVaDO0IxQhwYq43evXaXnmviw==", + "dependencies": { + "@reach/utils": "0.16.0", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/tooltip/node_modules/@reach/rect": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/rect/-/rect-0.16.0.tgz", + "integrity": "sha512-/qO9jQDzpOCdrSxVPR6l674mRHNTqfEjkaxZHluwJ/2qGUtYsA0GSZiF/+wX/yOWeBif1ycxJDa6HusAMJZC5Q==", + "dependencies": { + "@reach/observe-rect": "1.2.0", + "@reach/utils": "0.16.0", + "prop-types": "^15.7.2", + "tiny-warning": "^1.0.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/tooltip/node_modules/@reach/utils": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", + "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", + "dependencies": { + "tiny-warning": "^1.0.3", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/tooltip/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/@reach/utils": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.15.0.tgz", + "integrity": "sha512-JHHN7T5ucFiuQbqkgv8ECbRWKfRiJxrO/xHR3fHf+f2C7mVs/KkJHhYtovS1iEapR4silygX9PY0+QUmHPOTYw==", + "dependencies": { + "tiny-warning": "^1.0.3", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/utils/node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/@reach/visually-hidden": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@reach/visually-hidden/-/visually-hidden-0.16.0.tgz", + "integrity": "sha512-IIayZ3jzJtI5KfcfRVtOMFkw2ef/1dMT8D9BUuFcU2ORZAWLNvnzj1oXNoIfABKl5wtsLjY6SGmkYQ+tMPN8TA==", + "dependencies": { + "prop-types": "^15.7.2", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "react": "^16.8.0 || 17.x", + "react-dom": "^16.8.0 || 17.x" + } + }, + "node_modules/@reach/visually-hidden/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.0.7.tgz", + "integrity": "sha512-3Zi2LGbCLDz4IIL7ir6wD0u/ggHotLkK5SlVzFzTcYaNgPR4MAt/9JYZqXWKcofPWEoptfpnCJU8Bq9sxw8QUg==", + "dev": true + }, + "node_modules/@segment/in-eu": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@segment/in-eu/-/in-eu-0.2.1.tgz", + "integrity": "sha512-7JKBw/l3S9J0ldo/n6XPfd3sT89f300KOCvmZsd8sryVZOWlE4L2LMKT538I34bjRdaOd1aJ52TsOAZUOLqxiQ==", + "dependencies": { + "jstz": "^2.0.0" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", + "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@stylelint/postcss-css-in-js": { + "version": "0.37.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz", + "integrity": "sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==", + "dependencies": { + "@babel/core": ">=7.9.0" + }, + "peerDependencies": { + "postcss": ">=7.0.0", + "postcss-syntax": ">=0.36.2" + } + }, + "node_modules/@stylelint/postcss-markdown": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz", + "integrity": "sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==", + "deprecated": "Use the original unforked package instead: postcss-markdown", + "dependencies": { + "remark": "^13.0.0", + "unist-util-find-all-after": "^3.0.2" + }, + "peerDependencies": { + "postcss": ">=7.0.0", + "postcss-syntax": ">=0.36.2" + } + }, + "node_modules/@types/hast": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.1.tgz", + "integrity": "sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", + "integrity": "sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/@types/katex": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.11.0.tgz", + "integrity": "sha512-27BfE8zASRLYfSBNMk5/+KIjr2CBBrH0i5lhsO04fca4TGirIIMay73v3zNkzqmsaeIa/Mi5kejWDcxPLAmkvA==" + }, + "node_modules/@types/mdast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz", + "integrity": "sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" + }, + "node_modules/@types/node": { + "version": "16.4.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.4.1.tgz", + "integrity": "sha512-UW7cbLqf/Wu5XH2RKKY1cHwUNLicIDRLMraYKz+HHAerJ0ZffUEk+fMnd8qU2JaS6cAy0r8tsaf7yqHASf/Y0Q==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + }, + "node_modules/@types/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.3", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", + "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==", + "devOptional": true + }, + "node_modules/@types/q": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", + "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==" + }, + "node_modules/@types/react": { + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", + "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", + "devOptional": true, + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", + "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", + "devOptional": true + }, + "node_modules/@types/segment-analytics": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/segment-analytics/-/segment-analytics-0.0.33.tgz", + "integrity": "sha512-8OB3OhKGuIkItHeQxgQpzldyaL1dVKzJQF9ujfVLmO0MJyIhXZTiOIZtkSHF6jhptEQZqm8EyTuceIAR36OS3A==" + }, + "node_modules/@types/unist": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", + "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==" + }, + "node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "20.2.1", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", + "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.9.1.tgz", + "integrity": "sha512-QRLDSvIPeI1pz5tVuurD+cStNR4sle4avtHhxA+2uyixWGFjKzJ+EaFVRW6dA/jOgjV5DTAjOxboQkRDE8cRlQ==", + "dependencies": { + "@typescript-eslint/experimental-utils": "4.9.1", + "@typescript-eslint/scope-manager": "4.9.1", + "debug": "^4.1.1", + "functional-red-black-tree": "^1.0.1", + "regexpp": "^3.0.0", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^4.0.0", + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.9.1.tgz", + "integrity": "sha512-c3k/xJqk0exLFs+cWSJxIjqLYwdHCuLWhnpnikmPQD2+NGAx9KjLYlBDcSI81EArh9FDYSL6dslAUSwILeWOxg==", + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/scope-manager": "4.9.1", + "@typescript-eslint/types": "4.9.1", + "@typescript-eslint/typescript-estree": "4.9.1", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.9.1.tgz", + "integrity": "sha512-Gv2VpqiomvQ2v4UL+dXlQcZ8zCX4eTkoIW+1aGVWT6yTO+6jbxsw7yQl2z2pPl/4B9qa5JXeIbhJpONKjXIy3g==", + "dependencies": { + "@typescript-eslint/scope-manager": "4.9.1", + "@typescript-eslint/types": "4.9.1", + "@typescript-eslint/typescript-estree": "4.9.1", + "debug": "^4.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.9.1.tgz", + "integrity": "sha512-sa4L9yUfD/1sg9Kl8OxPxvpUcqxKXRjBeZxBuZSSV1v13hjfEJkn84n0An2hN8oLQ1PmEl2uA6FkI07idXeFgQ==", + "dependencies": { + "@typescript-eslint/types": "4.9.1", + "@typescript-eslint/visitor-keys": "4.9.1" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.9.1.tgz", + "integrity": "sha512-fjkT+tXR13ks6Le7JiEdagnwEFc49IkOyys7ueWQ4O8k4quKPwPJudrwlVOJCUQhXo45PrfIvIarcrEjFTNwUA==", + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.9.1.tgz", + "integrity": "sha512-bzP8vqwX6Vgmvs81bPtCkLtM/Skh36NE6unu6tsDeU/ZFoYthlTXbBmpIrvosgiDKlWTfb2ZpPELHH89aQjeQw==", + "dependencies": { + "@typescript-eslint/types": "4.9.1", + "@typescript-eslint/visitor-keys": "4.9.1", + "debug": "^4.1.1", + "globby": "^11.0.1", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.9.1.tgz", + "integrity": "sha512-9gspzc6UqLQHd7lXQS7oWs+hrYggspv/rk6zzEMhCbYwPE/sF7oxo7GAjkS35Tdlt7wguIG+ViWCPtVZHz/ybQ==", + "dependencies": { + "@typescript-eslint/types": "4.9.1", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@xstate/fsm": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@xstate/fsm/-/fsm-1.4.0.tgz", + "integrity": "sha512-uTHDeu2xI5E1IFwf37JFQM31RrH7mY7877RqPBS4ZqSNUwoLDuct8AhBWaXGnVizBAYyimVwgCyGa9z/NiRhXA==" + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "peerDependencies": { + "ajv": ">=5.0.0" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/algoliasearch": { + "version": "4.10.5", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.10.5.tgz", + "integrity": "sha512-KmH2XkiN+8FxhND4nWFbQDkIoU6g2OjfeU9kIv4Lb+EiOOs3Gpp7jvd+JnatsCisAZsnWQdjd7zVlW7I/85QvQ==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.10.5", + "@algolia/cache-common": "4.10.5", + "@algolia/cache-in-memory": "4.10.5", + "@algolia/client-account": "4.10.5", + "@algolia/client-analytics": "4.10.5", + "@algolia/client-common": "4.10.5", + "@algolia/client-personalization": "4.10.5", + "@algolia/client-search": "4.10.5", + "@algolia/logger-common": "4.10.5", + "@algolia/logger-console": "4.10.5", + "@algolia/requester-browser-xhr": "4.10.5", + "@algolia/requester-common": "4.10.5", + "@algolia/requester-node-http": "4.10.5", + "@algolia/transporter": "4.10.5" + } + }, + "node_modules/algoliasearch-helper": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.6.0.tgz", + "integrity": "sha512-F4Smiq+Vyv/JJytuKNFuzXndPSb4pjtiHZSkEztQCcB+SORu71A8grgt2NSJhbB5VhqHW19QDtlPKbdYdcNrLg==", + "dependencies": { + "events": "^1.1.1" + }, + "peerDependencies": { + "algoliasearch": ">= 3.1 < 5" + } + }, + "node_modules/algoliasearch-helper/node_modules/events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/anser": { + "version": "1.4.9", + "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.9.tgz", + "integrity": "sha512-AI+BjTeGt2+WFk4eWcqbQ7snZpDBt8SaLlj0RT2h5xfdWaiy51OjYvqwMrNzJLGy8iOAL6nKDITWO+rd4MkYEA==" + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/archive-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz", + "integrity": "sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA=", + "dependencies": { + "file-type": "^4.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/archive-type/node_modules/file-type": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz", + "integrity": "sha1-G2AOX8ofvcboDApwxxyNul95BsU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dependencies": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/array-includes": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", + "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "dependencies": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ast-types": { + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.2.tgz", + "integrity": "sha512-uWMHxJxtfj/1oZClOxDEV1sQ1HCDkA4MG8Gr69KKeBjEVH0R84WlejZ0y2DcwyBlpAEMltmVYkVgqfLFb2oyiA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=" + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" + }, + "node_modules/async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "9.8.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", + "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dependencies": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "colorette": "^1.2.1", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + }, + "node_modules/autoprefixer/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/autoprefixer/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/autoprefixer/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/autoprefixer/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/autoprefixer/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/autoprefixer/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/autoprefixer/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/autoprefixer/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/autoprefixer/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz", + "integrity": "sha512-SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.3.1.tgz", + "integrity": "sha512-3WVgVPs/7OnKU3s+lqMtkv3wQlg3WxK1YifmpJSDO0E1aPBrZWlrrTO6cxRqCXLuX2aYgCljqXIQd0VnRidV0g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" + }, + "node_modules/babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "eslint": ">= 4.12.1" + } + }, + "node_modules/babel-eslint/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@babel/core": "^7.11.6" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/bfj": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz", + "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==", + "dependencies": { + "bluebird": "^3.5.5", + "check-types": "^8.0.3", + "hoopy": "^0.1.4", + "tryer": "^1.0.1" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "engines": { + "node": "*" + } + }, + "node_modules/bin-build": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bin-build/-/bin-build-3.0.0.tgz", + "integrity": "sha512-jcUOof71/TNAI2uM5uoUaDq2ePcVBQ3R/qhxAz1rX7UfvduAL/RXD3jXzvn8cVcDJdGVkiR1shal3OH0ImpuhA==", + "dependencies": { + "decompress": "^4.0.0", + "download": "^6.2.2", + "execa": "^0.7.0", + "p-map-series": "^1.0.0", + "tempfile": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-build/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/bin-build/node_modules/execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-build/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-build/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-build/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/bin-build/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-build/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-build/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-build/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-build/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/bin-build/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "node_modules/bin-check": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bin-check/-/bin-check-4.1.0.tgz", + "integrity": "sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA==", + "dependencies": { + "execa": "^0.7.0", + "executable": "^4.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-check/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/bin-check/node_modules/execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-check/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-check/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-check/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/bin-check/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-check/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-check/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-check/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-check/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/bin-check/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "node_modules/bin-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bin-version/-/bin-version-3.1.0.tgz", + "integrity": "sha512-Mkfm4iE1VFt4xd4vH+gx+0/71esbfus2LsnCGe8Pi4mndSPyT+NGES/Eg99jx8/lUGWfu3z2yuB/bt5UB+iVbQ==", + "dependencies": { + "execa": "^1.0.0", + "find-versions": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-version-check": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-4.0.0.tgz", + "integrity": "sha512-sR631OrhC+1f8Cvs8WyVWOA33Y8tgwjETNPyyD/myRBXLkfS/vl74FmH/lFcRl9KY3zwGh7jFhvyk9vV3/3ilQ==", + "dependencies": { + "bin-version": "^3.0.0", + "semver": "^5.6.0", + "semver-truncate": "^1.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-version-check/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/bin-version/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/bin-version/node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-version/node_modules/find-versions": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", + "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", + "dependencies": { + "semver-regex": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-version/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-version/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-version/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-version/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-version/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/bin-version/node_modules/semver-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", + "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-version/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-version/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bin-version/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/bin-wrapper": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-4.1.0.tgz", + "integrity": "sha512-hfRmo7hWIXPkbpi0ZltboCMVrU+0ClXR/JgbCKKjlDjQf6igXa7OwdqNcFWQZPZTgiY7ZpzE3+LjjkLiTN2T7Q==", + "dependencies": { + "bin-check": "^4.1.0", + "bin-version-check": "^4.0.0", + "download": "^7.1.0", + "import-lazy": "^3.1.0", + "os-filter-obj": "^2.0.0", + "pify": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-wrapper/node_modules/download": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/download/-/download-7.1.0.tgz", + "integrity": "sha512-xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ==", + "dependencies": { + "archive-type": "^4.0.0", + "caw": "^2.0.1", + "content-disposition": "^0.5.2", + "decompress": "^4.2.0", + "ext-name": "^5.0.0", + "file-type": "^8.1.0", + "filenamify": "^2.0.0", + "get-stream": "^3.0.0", + "got": "^8.3.1", + "make-dir": "^1.2.0", + "p-event": "^2.1.0", + "pify": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-wrapper/node_modules/download/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/file-type": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-8.1.0.tgz", + "integrity": "sha512-qyQ0pzAy78gVoJsmYeNgl8uH8yKhr1lVhW7JbzJmnlRi0I4R2eEDEJZVKG8agpDnLpacwNbDhLNG/LMdxHD2YQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-wrapper/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/got": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", + "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", + "dependencies": { + "@sindresorhus/is": "^0.7.0", + "cacheable-request": "^2.1.1", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "into-stream": "^3.1.0", + "is-retry-allowed": "^1.1.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "mimic-response": "^1.0.0", + "p-cancelable": "^0.4.0", + "p-timeout": "^2.0.1", + "pify": "^3.0.0", + "safe-buffer": "^5.1.1", + "timed-out": "^4.0.1", + "url-parse-lax": "^3.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/got/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/import-lazy": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz", + "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-wrapper/node_modules/p-cancelable": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", + "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/p-event": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz", + "integrity": "sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==", + "dependencies": { + "p-timeout": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-wrapper/node_modules/p-timeout": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", + "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/bin-wrapper/node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, + "node_modules/bin-wrapper/node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/bl/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "node_modules/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dependencies": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/body-parser/node_modules/raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-sign/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.16.6", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", + "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", + "dependencies": { + "caniuse-lite": "^1.0.30001219", + "colorette": "^1.2.2", + "electron-to-chromium": "^1.3.723", + "escalade": "^3.1.1", + "node-releases": "^1.1.71" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "node_modules/buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" + }, + "node_modules/byline": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz", + "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cacheable-request": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", + "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", + "dependencies": { + "clone-response": "1.0.2", + "get-stream": "3.0.0", + "http-cache-semantics": "3.8.1", + "keyv": "3.0.0", + "lowercase-keys": "1.0.0", + "normalize-url": "2.0.1", + "responselike": "1.0.2" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camel-case/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001246", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz", + "integrity": "sha512-Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/caw": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz", + "integrity": "sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==", + "dependencies": { + "get-proxy": "^2.0.0", + "isurl": "^1.0.0-alpha5", + "tunnel-agent": "^0.6.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.4.tgz", + "integrity": "sha512-HRcDxZuZqMx3/a+qrzxdBKBPUpxWEq9xw2OPZ3a/174ihfrQKVsFhqtthBInFy1zZ9GgZyFXOatNujm8M+El3g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/check-types": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz", + "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==" + }, + "node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" + } + }, + "node_modules/ci": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ci/-/ci-2.1.1.tgz", + "integrity": "sha512-StBCU1G9zbhgVBqvslvOpT601zme9YfyZaUSjgXCtfnIynPuDBHX85WwnXv5cnh74bYo8S3xfPpI41yk1jZmRw==", + "bin": { + "ci": "ci.js" + }, + "funding": { + "url": "https://github.com/privatenumber/ci?sponsor=1" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/clone-regexp": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", + "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", + "dependencies": { + "is-regexp": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-regexp/node_modules/is-regexp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", + "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dependencies": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/coa/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/coa/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/coa/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + }, + "node_modules/compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "node_modules/compute-scroll-into-view": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz", + "integrity": "sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "node_modules/console-stream": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", + "integrity": "sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ=" + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + }, + "node_modules/content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-js-pure": { + "version": "3.15.2", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.15.2.tgz", + "integrity": "sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/cosmiconfig": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", + "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.4.tgz", + "integrity": "sha512-1eAtFWdIubi6T4XPy6ei9iUFoKpUkIF971QLN8lIvvvwueI65+Nw5haMNKUwfJxabqlIIDODJKGrQ66gxC0PbQ==", + "dependencies": { + "node-fetch": "2.6.1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-blank-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-blank-pseudo/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-blank-pseudo/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "bin": { + "css-has-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-has-pseudo/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-prefers-color-scheme": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-prefers-color-scheme/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-prefers-color-scheme/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "node_modules/css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" + }, + "node_modules/css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "dependencies": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-tree/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" + }, + "node_modules/cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano-preset-simple": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssnano-preset-simple/-/cssnano-preset-simple-3.0.0.tgz", + "integrity": "sha512-vxQPeoMRqUT3c/9f0vWeVa2nKQIHFpogtoBvFdW4GQ3IvEJ6uauCP6p3Y5zQDLFcI7/+40FTgX12o7XUL0Ko+w==", + "dependencies": { + "caniuse-lite": "^1.0.30001202" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-simple": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssnano-simple/-/cssnano-simple-3.0.0.tgz", + "integrity": "sha512-oU3ueli5Dtwgh0DyeohcIEE00QVfbPR3HzyXdAl89SfnQG3y0/qcpfLVW+jPIh3/rgMZGwuW96rejZGaYE9eUg==", + "dependencies": { + "cssnano-preset-simple": "^3.0.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + } + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "node_modules/csso/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/csstype": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", + "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==", + "devOptional": true + }, + "node_modules/currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dependencies": { + "array-find-index": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/d3-ease": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.7.tgz", + "integrity": "sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ==" + }, + "node_modules/d3-timer": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz", + "integrity": "sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw==" + }, + "node_modules/dart-linkcheck": { + "version": "2.0.15", + "resolved": "https://registry.npmjs.org/dart-linkcheck/-/dart-linkcheck-2.0.15.tgz", + "integrity": "sha512-ZMvxkAyEpBTvBFk+DPjcK0ObNy8GM4gmrGG1qIu0EXb/zj25vjRWNnhLHKZw4JlOLo02oWlwDeqo98GuBlJcIg==", + "dev": true, + "bin": { + "linkcheck": "bin/linkcheck", + "linkcheck-linux": "bin/linkcheck-linux", + "linkcheck-win": "bin/linkcheck-win" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", + "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/datocms-listen": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/datocms-listen/-/datocms-listen-0.1.6.tgz", + "integrity": "sha512-B3lJqobSV4fzkY7CYgYMcK0k2Hvy7/8g+LLnxiQ9Fgm+ETsQbRjHvF2neEX6kDWXNiP6pn0Fq5lkxyeGFjXU7w==" + }, + "node_modules/datocms-structured-text-generic-html-renderer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/datocms-structured-text-generic-html-renderer/-/datocms-structured-text-generic-html-renderer-1.2.0.tgz", + "integrity": "sha512-77w/bfO0GE43ck4ClhkeNs7vG3zmsgo1uyBLEomeALtfj0rlbCWS5jI33svMl3ek1BbBukTVdqLaliyrxCwpWg==", + "dependencies": { + "datocms-structured-text-utils": "^1.2.0" + } + }, + "node_modules/datocms-structured-text-utils": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/datocms-structured-text-utils/-/datocms-structured-text-utils-1.2.0.tgz", + "integrity": "sha512-8qfpSWU/nVrMr8C0aT5n16WN0/KQbtYD2GJXd9WDf01bfr+WzJCi5szZF1dBLhD2zhs41A4gtO3aM4J1CQe4wA==", + "dependencies": { + "array-flatten": "^3.0.0" + } + }, + "node_modules/datocms-structured-text-utils/node_modules/array-flatten": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", + "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" + }, + "node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/decompress": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", + "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", + "dependencies": { + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tar": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", + "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", + "dependencies": { + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tar/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress-tarbz2": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", + "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", + "dependencies": { + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tarbz2/node_modules/file-type": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", + "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-tarbz2/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress-targz": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", + "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", + "dependencies": { + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-targz/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress-unzip": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", + "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", + "dependencies": { + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/decompress-unzip/node_modules/file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress-unzip/node_modules/get-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "dependencies": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress-unzip/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decompress/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=" + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "node_modules/deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/dequal": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.2.tgz", + "integrity": "sha512-q9K8BlJVxK7hQYqa6XISGmBZbtQQWVXSrRrWreHC94rMt1QL/Impruc+7p2CYSYuVIUr+YCt6hjrs1kkdJRTug==", + "engines": { + "node": ">=6" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "dependencies": { + "repeat-string": "^1.5.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/domain-browser": { + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.19.0.tgz", + "integrity": "sha512-fRA+BaAWOR/yr/t7T9E9GJztHPeFjj8U35ajyAjCDtAAnTn1Rc1f6W6VGPJrO1tkQv9zWu+JRof7z6oQtiYVFQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "engines": { + "node": ">=10" + } + }, + "node_modules/download": { + "version": "6.2.5", + "resolved": "https://registry.npmjs.org/download/-/download-6.2.5.tgz", + "integrity": "sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA==", + "dependencies": { + "caw": "^2.0.0", + "content-disposition": "^0.5.2", + "decompress": "^4.0.0", + "ext-name": "^5.0.0", + "file-type": "5.2.0", + "filenamify": "^2.0.0", + "get-stream": "^3.0.0", + "got": "^7.0.0", + "make-dir": "^1.0.0", + "p-event": "^1.0.0", + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/download/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/downshift": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/downshift/-/downshift-3.1.5.tgz", + "integrity": "sha512-2PpR4+A0WiF0R+Q6sq79sSG+sAy4KBlH5FwnU8FtD5zkeZH/UQZm/QS7kq/CglSH8vl1qpPoaap4Z2Oe9Swcrg==", + "dependencies": { + "@babel/runtime": "^7.1.2", + "compute-scroll-into-view": "^1.0.9", + "prop-types": "^15.6.0", + "react-is": "^16.5.2" + }, + "peerDependencies": { + "react": ">=0.14.9" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/ejs": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.5.tgz", + "integrity": "sha512-dldq3ZfFtgVTJMLjOe+/3sROTzALlL9E34V4/sDtUd/KlBSS0s6U1/+WPE1B4sj9CXHJpL1M6rhNJnc9Wbal9w==", + "dependencies": { + "jake": "^10.6.1" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.3.785", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.785.tgz", + "integrity": "sha512-WmCgAeURsMFiyoJ646eUaJQ7GNfvMRLXo+GamUyKVNEM4MqTAsXyC0f38JEB4N3BtbD0tlAKozGP5E2T9K3YGg==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", + "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-stack-parser": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz", + "integrity": "sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==", + "dependencies": { + "stackframe": "^1.1.1" + } + }, + "node_modules/es-abstract": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.2", + "is-callable": "^1.2.3", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" + }, + "node_modules/esbuild": { + "version": "0.11.23", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.11.23.tgz", + "integrity": "sha512-iaiZZ9vUF5wJV8ob1tl+5aJTrwDczlvGP0JoMmnpC2B0ppiMCu8n8gmy5ZTGl5bcG081XBVn+U+jP+mPFm5T5Q==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.23.0.tgz", + "integrity": "sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q==", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.21", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.4", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-next": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-11.1.2.tgz", + "integrity": "sha512-dFutecxX2Z5/QVlLwdtKt+gIfmNMP8Qx6/qZh3LM/DFVdGJEAnUKrr4VwGmACB2kx/PQ5bx3R+QxnEg4fDPiTg==", + "dev": true, + "dependencies": { + "@next/eslint-plugin-next": "11.1.2", + "@rushstack/eslint-patch": "^1.0.6", + "@typescript-eslint/parser": "^4.20.0", + "eslint-import-resolver-node": "^0.3.4", + "eslint-import-resolver-typescript": "^2.4.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-jsx-a11y": "^6.4.1", + "eslint-plugin-react": "^7.23.1", + "eslint-plugin-react-hooks": "^4.2.0" + }, + "peerDependencies": { + "eslint": "^7.23.0", + "next": ">=10.2.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-config-next/node_modules/@typescript-eslint/parser": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.32.0.tgz", + "integrity": "sha512-lhtYqQ2iEPV5JqV7K+uOVlPePjClj4dOw7K4/Z1F2yvjIUvyr13yJnDzkK6uon4BjHYuHy3EG0c2Z9jEhFk56w==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "4.32.0", + "@typescript-eslint/types": "4.32.0", + "@typescript-eslint/typescript-estree": "4.32.0", + "debug": "^4.3.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-config-next/node_modules/@typescript-eslint/scope-manager": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.32.0.tgz", + "integrity": "sha512-DK+fMSHdM216C0OM/KR1lHXjP1CNtVIhJ54kQxfOE6x8UGFAjha8cXgDMBEIYS2XCYjjCtvTkjQYwL3uvGOo0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.32.0", + "@typescript-eslint/visitor-keys": "4.32.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-config-next/node_modules/@typescript-eslint/types": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.32.0.tgz", + "integrity": "sha512-LE7Z7BAv0E2UvqzogssGf1x7GPpUalgG07nGCBYb1oK4mFsOiFC/VrSMKbZQzFJdN2JL5XYmsx7C7FX9p9ns0w==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-config-next/node_modules/@typescript-eslint/typescript-estree": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.32.0.tgz", + "integrity": "sha512-tRYCgJ3g1UjMw1cGG8Yn1KzOzNlQ6u1h9AmEtPhb5V5a1TmiHWcRyF/Ic+91M4f43QeChyYlVTcf3DvDTZR9vw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.32.0", + "@typescript-eslint/visitor-keys": "4.32.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-config-next/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.32.0.tgz", + "integrity": "sha512-e7NE0qz8W+atzv3Cy9qaQ7BTLwWsm084Z0c4nIO2l3Bp6u9WIgdqCgyPyV5oSPDMIW3b20H59OOCmVk3jw3Ptw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.32.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-config-next/node_modules/globby": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-config-prettier": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-7.0.0.tgz", + "integrity": "sha512-8Y8lGLVPPZdaNA7JXqnvETVC7IiVRgAP6afQu9gOQRn90YY3otMNh+x7Vr2vMePQntF+5erdSUBqSzCmU/AxaQ==", + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz", + "integrity": "sha512-qZ6e5CFr+I7K4VVhQu3M/9xGv9/YmwsEXrsm3nimw8vWaVHRDrQRp26BgCypTxBp3vUp4o5aVEJRiy0F2DFddQ==", + "dev": true, + "dependencies": { + "debug": "^4.3.1", + "glob": "^7.1.7", + "is-glob": "^4.0.1", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.9.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", + "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "pkg-dir": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.24.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz", + "integrity": "sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.3", + "array.prototype.flat": "^1.2.4", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.6.2", + "find-up": "^2.0.0", + "has": "^1.0.3", + "is-core-module": "^2.6.0", + "minimatch": "^3.0.4", + "object.values": "^1.1.4", + "pkg-up": "^2.0.0", + "read-pkg-up": "^3.0.0", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.11.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/eslint-plugin-import/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-plugin-import/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.4.1.tgz", + "integrity": "sha512-0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg==", + "dependencies": { + "@babel/runtime": "^7.11.2", + "aria-query": "^4.2.2", + "array-includes": "^3.1.1", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.0.2", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.6", + "emoji-regex": "^9.0.0", + "has": "^1.0.3", + "jsx-ast-utils": "^3.1.0", + "language-tags": "^1.0.5" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/eslint-plugin-prettier": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.0.tgz", + "integrity": "sha512-tMTwO8iUWlSRZIwS9k7/E4vrTsfvsrcM5p1eftyuqWH25nKsz/o6/54I7jwQ/3zobISyC7wMy9ZsFwgTxOcOpQ==", + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" + }, + "peerDependenciesMeta": { + "eslint-plugin-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.26.0.tgz", + "integrity": "sha512-dceliS5itjk4EZdQYtLMz6GulcsasguIs+VTXuiC7Q5IPIdGTkyfXVdmsQOqEhlD9MciofH4cMcT1bw1WWNxCQ==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.3", + "array.prototype.flatmap": "^1.2.4", + "doctrine": "^2.1.0", + "estraverse": "^5.2.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.0.4", + "object.entries": "^1.1.4", + "object.fromentries": "^2.0.4", + "object.hasown": "^1.0.0", + "object.values": "^1.1.4", + "prop-types": "^15.7.2", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.5" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", + "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.3", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.3.tgz", + "integrity": "sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/exec-buffer": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz", + "integrity": "sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA==", + "dependencies": { + "execa": "^0.7.0", + "p-finally": "^1.0.0", + "pify": "^3.0.0", + "rimraf": "^2.5.4", + "tempfile": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/exec-buffer/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/exec-buffer/node_modules/execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/exec-buffer/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/exec-buffer/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exec-buffer/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/exec-buffer/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/exec-buffer/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/exec-buffer/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/exec-buffer/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exec-buffer/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exec-buffer/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/exec-buffer/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", + "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", + "dependencies": { + "clone-regexp": "^2.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "dependencies": { + "pify": "^2.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/executable/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha1-KueOhdmJQVhnCwPUe+wfA72Ru50=" + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dependencies": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/ext-list": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", + "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", + "dependencies": { + "mime-db": "^1.28.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ext-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", + "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", + "dependencies": { + "ext-list": "^2.0.0", + "sort-keys-length": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend-shallow/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extract-files": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/extract-files/-/extract-files-9.0.0.tgz", + "integrity": "sha512-CvdFfHkC95B4bBBk36hcEmvdR2awOdhhVUYH6S/zrVj3477zven/fJMYg7121h4T1xHZC+tetUpubpAhxwI7hQ==", + "engines": { + "node": "^10.17.0 || ^12.0.0 || >= 13.7.0" + }, + "funding": { + "url": "https://github.com/sponsors/jaydenseric" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" + }, + "node_modules/fast-equals": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.3.tgz", + "integrity": "sha512-0EMw4TTUxsMDpDkCg0rXor2gsg+npVrMIHbEhvD0HZyIhUX6AktC/yasm+qKwfyswd06Qy95ZKk8p2crTo0iPA==" + }, + "node_modules/fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "node_modules/fast-xml-parser": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", + "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==", + "bin": { + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", + "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==" + }, + "node_modules/fastq": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", + "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fathom-client": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fathom-client/-/fathom-client-3.2.0.tgz", + "integrity": "sha512-WF/qA5wXYSuA5K8uiIhGNbErOcTAmfLEWrBxWP2px2dEc9waH9zxjdh9k0F907VCBhdJrv+f7V3HT/Pmro40zA==" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-3.0.1.tgz", + "integrity": "sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw==", + "dependencies": { + "loader-utils": "^1.0.2", + "schema-utils": "^1.0.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/filelist": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz", + "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==", + "dependencies": { + "minimatch": "^3.0.4" + } + }, + "node_modules/filename-reserved-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", + "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik=", + "engines": { + "node": ">=4" + } + }, + "node_modules/filenamify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz", + "integrity": "sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==", + "dependencies": { + "filename-reserved-regex": "^2.0.0", + "strip-outer": "^1.0.0", + "trim-repeated": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/filesize": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", + "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/find-cache-dir": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", + "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-cache-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-cache-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-cache-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-cache-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-cache-dir/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/find-cache-dir/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-versions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", + "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", + "dev": true, + "dependencies": { + "semver-regex": "^3.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz", + "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==" + }, + "node_modules/flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "deprecated": "flatten is deprecated in favor of utility frameworks such as lodash." + }, + "node_modules/focus-lock": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-0.9.2.tgz", + "integrity": "sha512-YtHxjX7a0IC0ZACL5wsX8QdncXofWpGPNoVMuI/nZUrPGp6LmNI6+D5j0pPj+v8Kw5EpweA+T5yImK0rnWf7oQ==", + "dependencies": { + "tslib": "^2.0.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/focus-lock/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/formik": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/formik/-/formik-2.2.9.tgz", + "integrity": "sha512-LQLcISMmf1r5at4/gyJigGn0gOwFbeEAlji+N9InZF6LIMXnFNkO42sCI8Jt84YZggpD4cPWObAZaxpEFtSzNA==", + "funding": [ + { + "type": "individual", + "url": "https://opencollective.com/formik" + } + ], + "dependencies": { + "deepmerge": "^2.1.1", + "hoist-non-react-statics": "^3.3.0", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "react-fast-compare": "^2.0.1", + "tiny-warning": "^1.0.2", + "tslib": "^1.10.0" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/framer-motion": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-5.3.3.tgz", + "integrity": "sha512-s4mz0E4/TPTKXqKnpb578S0Jp/0JhAyvDpULFe95kHnWs1lOCKf2+EEl6yAX+1wfPLUYokZzudiK9jam0ZAVdQ==", + "dependencies": { + "framesync": "6.0.1", + "hey-listen": "^1.0.8", + "popmotion": "11.0.0", + "style-value-types": "5.0.0", + "tslib": "^2.1.0" + }, + "optionalDependencies": { + "@emotion/is-prop-valid": "^0.8.2" + }, + "peerDependencies": { + "react": ">=16.8 || ^17.0.0", + "react-dom": ">=16.8 || ^17.0.0" + } + }, + "node_modules/framer-motion/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/framesync": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/framesync/-/framesync-6.0.1.tgz", + "integrity": "sha512-fUY88kXvGiIItgNC7wcTOl0SNRCVXMKSWW2Yzfmn7EKNc+MpCzcz9DhdHcdjbrtN3c6R4H5dTY2jiCpPdysEjA==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/framesync/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/from2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/from2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fs-exists-sync": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", + "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs-extra": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", + "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": ["darwin"], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + }, + "node_modules/fuzzysearch": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fuzzysearch/-/fuzzysearch-1.0.3.tgz", + "integrity": "sha1-3/yA9tawQiPyImqnndGUIxCW0Ag=" + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/get-orientation": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-orientation/-/get-orientation-1.1.2.tgz", + "integrity": "sha512-/pViTfifW+gBbh/RnlFYHINvELT9Znt+SYyDKAUL6uV6By019AK/s+i9XP4jSwq7lwP38Fd8HVeTxym3+hkwmQ==", + "dependencies": { + "stream-parser": "^0.3.1" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "node_modules/get-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz", + "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==", + "dependencies": { + "npm-conf": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/github-slugger": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.3.0.tgz", + "integrity": "sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q==", + "dependencies": { + "emoji-regex": ">=6.0.0 <=6.1.1" + } + }, + "node_modules/github-slugger/node_modules/emoji-regex": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.1.tgz", + "integrity": "sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4=" + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=" + }, + "node_modules/gonzales-pe": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", + "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "gonzales": "bin/gonzales.js" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "dependencies": { + "decompress-response": "^3.2.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-plain-obj": "^1.1.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "isurl": "^1.0.0-alpha5", + "lowercase-keys": "^1.0.0", + "p-cancelable": "^0.3.0", + "p-timeout": "^1.1.1", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "url-parse-lax": "^1.0.0", + "url-to-options": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/got/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "engines": { + "node": ">=4" + } + }, + "node_modules/got/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" + }, + "node_modules/graphql": { + "version": "15.6.0", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.6.0.tgz", + "integrity": "sha512-WJR872Zlc9hckiEPhXgyUftXH48jp2EjO5tgBBOyNMRJZ9fviL2mJBD6CAysk6N5S0r9BTs09Qk39nnJBkvOXQ==", + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/graphql-request": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/graphql-request/-/graphql-request-3.5.0.tgz", + "integrity": "sha512-Io89QpfU4rqiMbqM/KwMBzKaDLOppi8FU8sEccCE4JqCgz95W9Q8bvxQ4NfPALLSMvg9nafgg8AkYRmgKSlukA==", + "dependencies": { + "cross-fetch": "^3.0.6", + "extract-files": "^9.0.0", + "form-data": "^3.0.0" + }, + "peerDependencies": { + "graphql": "14.x || 15.x" + } + }, + "node_modules/gray-matter": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.2.tgz", + "integrity": "sha512-7hB/+LxrOjq/dd8APlK0r24uL/67w7SkYnfwhNFwg/VDIGWGmduTDYf3WNstLW2fbbmRwrDGCVSJ2isuf2+4Hw==", + "dependencies": { + "js-yaml": "^3.11.0", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/gzip-size": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", + "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "dependencies": { + "duplexer": "^0.1.1", + "pify": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gzip-size/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbol-support-x": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "engines": { + "node": "*" + } + }, + "node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "dependencies": { + "has-symbol-support-x": "^1.4.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "dependencies": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "dependencies": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz", + "integrity": "sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "dependencies": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-html": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-7.1.3.tgz", + "integrity": "sha512-yk2+1p3EJTEE9ZEUkgHsUSVhIpCsL/bvT8E5GzmWc+N1Po5gBw+0F8bo7dpxXR0nu0bQVxVZGX2lBGF21CmeDw==", + "dependencies": { + "ccount": "^1.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-is-element": "^1.0.0", + "hast-util-whitespace": "^1.0.0", + "html-void-elements": "^1.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0", + "stringify-entities": "^3.0.1", + "unist-util-is": "^4.0.0", + "xtend": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "dependencies": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-string": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.4.tgz", + "integrity": "sha512-eK0MxRX47AV2eZ+Lyr18DCpQgodvaS3fAQO2+b9Two9F5HEoRPhiUMNzoXArMJfZi2yieFzUBMRl3HNJ3Jus3w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-2.0.1.tgz", + "integrity": "sha512-8nsgCARfs6VkwH2jJU9b8LNTuR4700na+0h3PqCaEk4MAnMDeu5P0tP8mjk9LLNGxIeQRLbiDbZVw6rku+pYsQ==", + "dependencies": { + "hast-util-is-element": "^1.0.0", + "repeat-string": "^1.0.0", + "unist-util-find-after": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-1.0.4.tgz", + "integrity": "sha512-I5GTdSfhYfAPNztx2xJRQpG8cuDSNt599/7YUn7Gx/WxNMsG+a835k97TDkFgk123cwjfwINaZknkKkphx/f2A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/hey-listen": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz", + "integrity": "sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==" + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoopy": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", + "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/hosted-git-info": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", + "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-tags": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", + "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/html-void-elements": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/http-cache-semantics": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + }, + "node_modules/http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/husky": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.7.tgz", + "integrity": "sha512-0fQlcCDq/xypoyYSJvEuzbDPHFf8ZF9IXKJxlrnvxABTSzK1VPT2RKYQKrcgJ+YD39swgoB6sbzywUqFxUiqjw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "compare-versions": "^3.6.0", + "cosmiconfig": "^7.0.0", + "find-versions": "^4.0.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^5.0.0", + "please-upgrade-node": "^3.2.0", + "slash": "^3.0.0", + "which-pm-runs": "^1.0.0" + }, + "bin": { + "husky-run": "bin/run.js", + "husky-upgrade": "lib/upgrader/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/husky" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.0.tgz", + "integrity": "sha512-JLJ6OwBfO1KcA+TvJT+v8gbE6iWbj24LyDNFgFEN0lzegn6cC6a/p3NIDaepMsJjQjlUWqIC7wJv8lBFxPNjcw==", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/imagemin": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/imagemin/-/imagemin-6.1.0.tgz", + "integrity": "sha512-8ryJBL1CN5uSHpiBMX0rJw79C9F9aJqMnjGnrd/1CafegpNuA81RBAAru/jQQEOWlOJJlpRnlcVFF6wq+Ist0A==", + "dependencies": { + "file-type": "^10.7.0", + "globby": "^8.0.1", + "make-dir": "^1.0.0", + "p-pipe": "^1.1.0", + "pify": "^4.0.1", + "replace-ext": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/imagemin-mozjpeg": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/imagemin-mozjpeg/-/imagemin-mozjpeg-9.0.0.tgz", + "integrity": "sha512-TwOjTzYqCFRgROTWpVSt5UTT0JeCuzF1jswPLKALDd89+PmrJ2PdMMYeDLYZ1fs9cTovI9GJd68mRSnuVt691w==", + "dependencies": { + "execa": "^4.0.0", + "is-jpg": "^2.0.0", + "mozjpeg": "^7.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/imagemin-optipng": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/imagemin-optipng/-/imagemin-optipng-8.0.0.tgz", + "integrity": "sha512-CUGfhfwqlPjAC0rm8Fy+R2DJDBGjzy2SkfyT09L8rasnF9jSoHFqJ1xxSZWK6HVPZBMhGPMxCTL70OgTHlLF5A==", + "dependencies": { + "exec-buffer": "^3.0.0", + "is-png": "^2.0.0", + "optipng-bin": "^7.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/imagemin-svgo": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/imagemin-svgo/-/imagemin-svgo-8.0.0.tgz", + "integrity": "sha512-++fDnnxsLT+4rpt8babwiIbzapgBzeS2Kgcy+CwgBvgSRFltBFhX2WnpCziMtxhRCzqJcCE9EcHWZP/sj+G3rQ==", + "dependencies": { + "is-svg": "^4.2.1", + "svgo": "^1.3.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/imagemin-svgo?sponsor=1" + } + }, + "node_modules/imagemin/node_modules/@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/imagemin/node_modules/array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dependencies": { + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "dependencies": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/imagemin/node_modules/fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dependencies": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/imagemin/node_modules/file-type": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", + "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/imagemin/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/imagemin/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/globby": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", + "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", + "dependencies": { + "array-union": "^1.0.1", + "dir-glob": "2.0.0", + "fast-glob": "^2.0.2", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/imagemin/node_modules/globby/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/imagemin/node_modules/ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "node_modules/imagemin/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/imagemin/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/imagemin/node_modules/path-type/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/imagemin/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/imagemin/node_modules/slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/imagemin/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/img-loader": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/img-loader/-/img-loader-3.0.2.tgz", + "integrity": "sha512-rSriLKgvi85Km7ppSF+AEAM3nU4fxpvCkaXtC/IoCEU7jfks55bEANFs0bB9YXYkxY9JurZQIZFtXh5Gue3upw==", + "dependencies": { + "loader-utils": "^1.1.0" + }, + "peerDependencies": { + "imagemin": "^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/intersection-observer": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.12.0.tgz", + "integrity": "sha512-2Vkz8z46Dv401zTWudDGwO7KiGHNDkMv417T5ItcNYfmvHR/1qCTVBO9vwH8zZmQ0WkA/1ARwpysR9bsnop4NQ==" + }, + "node_modules/into-stream": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", + "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", + "dependencies": { + "from2": "^2.1.1", + "p-is-promise": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ip-regex": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", + "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumeric": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz", + "integrity": "sha1-Spzvcdr0wAHB2B1j0UDPU/1oifQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arguments": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", + "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==", + "dependencies": { + "call-bind": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "node_modules/is-bigint": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz", + "integrity": "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz", + "integrity": "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", + "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", + "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz", + "integrity": "sha512-ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-jpg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-jpg/-/is-jpg-2.0.0.tgz", + "integrity": "sha1-LhmX+m6RZuqsAkLarkQ0A+TvHZc=", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-natural-number": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", + "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" + }, + "node_modules/is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz", + "integrity": "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-png": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-png/-/is-png-2.0.0.tgz", + "integrity": "sha512-4KPGizaVGj2LK7xwJIz8o5B2ubu1D/vcQsgOGFEDlpcvgZHto4gBnyd0ig7Ws+67ixmwKoNmu0hYnpo6AaKb5g==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-regex": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-svg": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-4.3.1.tgz", + "integrity": "sha512-h2CGs+yPUyvkgTJQS9cJzo9lYK06WgRiXUqBBHtglSzVKAuH4/oWsqk7LGfbSa1hGk9QcZ0SyQtVggvBA8LZXA==", + "dependencies": { + "fast-xml-parser": "^3.19.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz", + "integrity": "sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==", + "dependencies": { + "available-typed-arrays": "^1.0.2", + "call-bind": "^1.0.2", + "es-abstract": "^1.18.0-next.2", + "foreach": "^2.0.5", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-url-superb": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-url-superb/-/is-url-superb-3.0.0.tgz", + "integrity": "sha512-3faQP+wHCGDQT1qReM5zCPx2mxoal6DzbzquFlCYJLWyy4WPTved33ea2xFbX37z4NoriEwZGIYhFtx8RUB5wQ==", + "dependencies": { + "url-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "node_modules/is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/iserror": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/iserror/-/iserror-0.0.2.tgz", + "integrity": "sha1-vVNFH+L2aLnyQCwZZnh6qix8C/U=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isomorphic-unfetch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz", + "integrity": "sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==", + "dependencies": { + "node-fetch": "^2.6.1", + "unfetch": "^4.2.0" + } + }, + "node_modules/isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "dependencies": { + "has-to-string-tag-x": "^1.2.0", + "is-object": "^1.0.1" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/jake": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz", + "integrity": "sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==", + "dependencies": { + "async": "0.9.x", + "chalk": "^2.4.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jake/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jake/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jake/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/jake/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/jake/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/jake/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-worker": { + "version": "27.0.0-next.5", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.0-next.5.tgz", + "integrity": "sha512-mk0umAQ5lT+CaOJ+Qp01N6kz48sJG2kr2n1rX0koqKf6FIygQV0qLOdN9SCYID4IVeSigDOcPeGLozdMLYfb5g==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + }, + "node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonfile/node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/jstz": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/jstz/-/jstz-2.1.1.tgz", + "integrity": "sha512-8hfl5RD6P7rEeIbzStBz3h4f+BQHfq/ABtoU6gXKQv5OcZhnmrIpG7e1pYaZ8hS9e0mp+bxUj08fnDUbKctYyA==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", + "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", + "dependencies": { + "array-includes": "^3.1.2", + "object.assign": "^4.1.2" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/kapellmeister": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/kapellmeister/-/kapellmeister-3.0.1.tgz", + "integrity": "sha512-S7+gYcziMREv8RxG46138mb1O4Xf9II/bCxEJPYkhlZ7PgGWTlicgsyNad/DGc5oEAlWGLXE5ExLbTDVvJmgDA==", + "dependencies": { + "d3-timer": "^1.0.9" + } + }, + "node_modules/katex": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.12.0.tgz", + "integrity": "sha512-y+8btoc/CK70XqcHqjxiGWBOeIL8upbS0peTPXTvgrh21n1RiWWcIpSWM+4uXq+IAgNh9YYQWdc7LVDPDAEEAg==", + "dependencies": { + "commander": "^2.19.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/katex/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/keyv": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", + "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/known-css-properties": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.20.0.tgz", + "integrity": "sha512-URvsjaA9ypfreqJ2/ylDr5MUERhJZ+DhguoWRr2xgS5C7aGCalXo+ewL+GixgKBfhT2vuL02nbIgNGqVWgTOYw==" + }, + "node_modules/language-subtag-registry": { + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz", + "integrity": "sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==" + }, + "node_modules/language-tags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=", + "dependencies": { + "language-subtag-registry": "~0.3.2" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/line-reader": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/line-reader/-/line-reader-0.4.0.tgz", + "integrity": "sha1-F+RIGNoKwzVnW6MAlU+U72cOZv0=" + }, + "node_modules/lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + }, + "node_modules/lint-staged": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-11.1.2.tgz", + "integrity": "sha512-6lYpNoA9wGqkL6Hew/4n1H6lRqF3qCsujVT0Oq5Z4hiSAM7S6NksPJ3gnr7A7R52xCtiZMcEUNNQ6d6X5Bvh9w==", + "dev": true, + "dependencies": { + "chalk": "^4.1.1", + "cli-truncate": "^2.1.0", + "commander": "^7.2.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.3.1", + "enquirer": "^2.3.6", + "execa": "^5.0.0", + "listr2": "^3.8.2", + "log-symbols": "^4.1.0", + "micromatch": "^4.0.4", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "^3.3.0" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/listr2": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.12.2.tgz", + "integrity": "sha512-64xC2CJ/As/xgVI3wbhlPWVPx0wfTqbUAkpb7bjDi0thSWMqrf07UFhrfsGoo8YSXmF049Rp9C0cjLC8rZxK9A==", + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^1.4.0", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rxjs": "^6.6.7", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + } + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-script": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/load-script/-/load-script-1.0.0.tgz", + "integrity": "sha1-BJGTngvuVkPuSUp+PaPSuscMbKQ=" + }, + "node_modules/loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/loader-utils/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/logalot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz", + "integrity": "sha1-X46MkNME7fElMJUaVVSruMXj9VI=", + "dependencies": { + "figures": "^1.3.5", + "squeak": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/logalot/node_modules/figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dependencies": { + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dependencies": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lower-case/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz", + "integrity": "sha1-IfYArBwwlcPG5JfuZyce4ISB/p4=", + "dependencies": { + "get-stdin": "^4.0.1", + "indent-string": "^2.1.0", + "longest": "^1.0.0", + "meow": "^3.3.0" + }, + "bin": { + "lpad-align": "cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dependencies": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dependencies": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/lpad-align/node_modules/indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dependencies": { + "repeating": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dependencies": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/lpad-align/node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dependencies": { + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dependencies": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dependencies": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dependencies": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dependencies": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/lpad-align/node_modules/strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dependencies": { + "is-utf8": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dependencies": { + "get-stdin": "^4.0.1" + }, + "bin": { + "strip-indent": "cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lpad-align/node_modules/trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-obj": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz", + "integrity": "sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "dependencies": { + "repeat-string": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "dependencies": { + "unist-util-remove": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-compact": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz", + "integrity": "sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-math": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-0.1.2.tgz", + "integrity": "sha512-fogAitds+wH+QRas78Yr1TwmQGN4cW/G2WRw5ePuNoJbBSPJCxIOCE8MTzHgWHVSpgkRaPQTgfzXRE1CrwWSlg==", + "dependencies": { + "longest-streak": "^2.0.0", + "mdast-util-to-markdown": "^0.6.0", + "repeat-string": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memoize-one": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", + "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" + }, + "node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micro-memoize": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/micro-memoize/-/micro-memoize-4.0.9.tgz", + "integrity": "sha512-Z2uZi/IUMGQDCXASdujXRqrXXEwSY0XffUrAOllhqzQI3wpUyZbiZTiE2JuYC0HSG2G7DbCS5jZmsEKEGZuemg==" + }, + "node_modules/micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "node_modules/micromark-extension-math": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-0.1.2.tgz", + "integrity": "sha512-ZJXsT2eVPM8VTmcw0CPSDeyonOn9SziGK3Z+nkf9Vb6xMPeU+4JMEnO6vzDL10562Favw8Vste74f54rxJ/i6Q==", + "dependencies": { + "katex": "^0.12.0", + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", + "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.31", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", + "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", + "dependencies": { + "mime-db": "1.48.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/moize": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/moize/-/moize-6.1.0.tgz", + "integrity": "sha512-WrMcM+C2Jy+qyOC/UMhA3BCHGowxV34dhDZnDNfxsREW/8N+33SFjmc23Q61Xv1WUthUA1vYopTitP1sZ5jkeg==", + "dependencies": { + "fast-equals": "^2.0.1", + "micro-memoize": "^4.0.9" + } + }, + "node_modules/mozjpeg": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/mozjpeg/-/mozjpeg-7.1.0.tgz", + "integrity": "sha512-A6nVpI33DVi04HxatRx3PZTeVAOP1AC/T/5kXEvP0U8F+J11mmFFDv46BM2j5/cEyzDDtK8ptHeBSphNMrQLqA==", + "hasInstallScript": true, + "dependencies": { + "bin-build": "^3.0.0", + "bin-wrapper": "^4.0.0", + "logalot": "^2.1.0" + }, + "bin": { + "mozjpeg": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/nanoid": { + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/native-url": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/native-url/-/native-url-0.3.4.tgz", + "integrity": "sha512-6iM8R99ze45ivyH8vybJ7X0yekIcPf5GgLV5K0ENCbmRcaRIDoj37BC8iLEmaaBfqqb8enuZ5p0uhY+lVAbAcA==", + "dependencies": { + "querystring": "^0.2.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/next": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/next/-/next-11.1.2.tgz", + "integrity": "sha512-azEYL0L+wFjv8lstLru3bgvrzPvK0P7/bz6B/4EJ9sYkXeW8r5Bjh78D/Ol7VOg0EIPz0CXoe72hzAlSAXo9hw==", + "dependencies": { + "@babel/runtime": "7.15.3", + "@hapi/accept": "5.0.2", + "@next/env": "11.1.2", + "@next/polyfill-module": "11.1.2", + "@next/react-dev-overlay": "11.1.2", + "@next/react-refresh-utils": "11.1.2", + "@node-rs/helper": "1.2.1", + "assert": "2.0.0", + "ast-types": "0.13.2", + "browserify-zlib": "0.2.0", + "browserslist": "4.16.6", + "buffer": "5.6.0", + "caniuse-lite": "^1.0.30001228", + "chalk": "2.4.2", + "chokidar": "3.5.1", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "cssnano-simple": "3.0.0", + "domain-browser": "4.19.0", + "encoding": "0.1.13", + "etag": "1.8.1", + "find-cache-dir": "3.3.1", + "get-orientation": "1.1.2", + "https-browserify": "1.0.0", + "image-size": "1.0.0", + "jest-worker": "27.0.0-next.5", + "native-url": "0.3.4", + "node-fetch": "2.6.1", + "node-html-parser": "1.4.9", + "node-libs-browser": "^2.2.1", + "os-browserify": "0.3.0", + "p-limit": "3.1.0", + "path-browserify": "1.0.1", + "pnp-webpack-plugin": "1.6.4", + "postcss": "8.2.15", + "process": "0.11.10", + "querystring-es3": "0.2.1", + "raw-body": "2.4.1", + "react-is": "17.0.2", + "react-refresh": "0.8.3", + "stream-browserify": "3.0.0", + "stream-http": "3.1.1", + "string_decoder": "1.3.0", + "styled-jsx": "4.0.1", + "timers-browserify": "2.0.12", + "tty-browserify": "0.0.1", + "use-subscription": "1.5.1", + "util": "0.12.4", + "vm-browserify": "1.1.2", + "watchpack": "2.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=12.0.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "11.1.2", + "@next/swc-darwin-x64": "11.1.2", + "@next/swc-linux-x64-gnu": "11.1.2", + "@next/swc-win32-x64-msvc": "11.1.2" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0", + "react": "^17.0.2", + "react-dom": "^17.0.2", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next-mdx-remote": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/next-mdx-remote/-/next-mdx-remote-3.0.1.tgz", + "integrity": "sha512-sV1sM6CkdYP5aPND1+vrF3wr8TU8NJwVlcFe2rPjVHR5J/9M2bl9zlhF6AF+GOKHA7d5kUdwHoLbApEGofD8hA==", + "dependencies": { + "@mdx-js/mdx": "^1.6.22", + "@mdx-js/react": "^1.6.22", + "esbuild": "^0.11.12", + "pkg-dir": "^5.0.0" + }, + "peerDependencies": { + "react": ">=16.x <=17.x", + "react-dom": ">=16.x <=17.x" + } + }, + "node_modules/next-optimized-images": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/next-optimized-images/-/next-optimized-images-2.6.2.tgz", + "integrity": "sha512-yH/f3eLmoQ/TxvWRiSuM6AuF3tR1s4nePdHPTm9gl4lAaGEKxTGaSuUL+ZxE5j/c/ITrnHVHibQzOz1Jl8euQw==", + "dependencies": { + "chalk": "^2.4.2", + "figures": "^3.0.0", + "file-loader": "^3.0.1", + "imagemin": "^6.1.0", + "img-loader": "^3.0.1", + "raw-loader": "^2.0.0", + "url-loader": "^1.1.2" + } + }, + "node_modules/next-optimized-images/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/next-optimized-images/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/next-optimized-images/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/next-optimized-images/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/next-optimized-images/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/next-optimized-images/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/next-remote-watch": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-remote-watch/-/next-remote-watch-1.0.0.tgz", + "integrity": "sha512-kV+pglCwcnKyqJIXPHUUrnZr9d3rCqCIEQWBkFYC02GDXHyKVmcFytoY6q0+wMIQqh/izIAQL1x6OKXZhksjLA==", + "dependencies": { + "body-parser": "^1.19.0", + "chalk": "^4.0.0", + "chokidar": "^3.4.0", + "commander": "^5.0.0", + "express": "^4.17.1" + }, + "bin": { + "next-remote-watch": "bin/next-remote-watch" + } + }, + "node_modules/next-remote-watch/node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/next-transpile-modules": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/next-transpile-modules/-/next-transpile-modules-8.0.0.tgz", + "integrity": "sha512-Q2f2yB0zMJ8KJbIYAeZoIxG6cSfVk813zr6B5HzsLMBVcJ3FaF8lKr7WG66n0KlHCwjLSmf/6EkgI6QQVWHrDw==", + "dev": true, + "dependencies": { + "enhanced-resolve": "^5.7.0", + "escalade": "^3.1.1" + } + }, + "node_modules/next/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/next/node_modules/buffer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", + "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, + "node_modules/next/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/next/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/next/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/next/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/next/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/next/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/no-case/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-html-parser": { + "version": "1.4.9", + "resolved": "https://registry.npmjs.org/node-html-parser/-/node-html-parser-1.4.9.tgz", + "integrity": "sha512-UVcirFD1Bn0O+TSmloHeHqZZCxHjvtIeGdVdGMhyZ8/PWlEiZaZ5iJzR189yKZr8p0FXN58BUeC7RHRkf/KYGw==", + "dependencies": { + "he": "1.2.0" + } + }, + "node_modules/node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dependencies": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dependencies": { + "object-assign": "^4.1.1", + "util": "0.10.3" + } + }, + "node_modules/node-libs-browser/node_modules/assert/node_modules/util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dependencies": { + "inherits": "2.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "node_modules/node-libs-browser/node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } + }, + "node_modules/node-libs-browser/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + }, + "node_modules/node-libs-browser/node_modules/path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" + }, + "node_modules/node-libs-browser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "node_modules/node-libs-browser/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/readable-stream/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/node-libs-browser/node_modules/readable-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/node-libs-browser/node_modules/stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/node-libs-browser/node_modules/stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/node-libs-browser/node_modules/tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" + }, + "node_modules/node-libs-browser/node_modules/util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/node-libs-browser/node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/node-releases": { + "version": "1.1.73", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", + "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==" + }, + "node_modules/normalize-package-data": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", + "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", + "dependencies": { + "hosted-git-info": "^4.0.1", + "resolve": "^1.20.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-selector": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", + "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=" + }, + "node_modules/normalize-url": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", + "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", + "dependencies": { + "prepend-http": "^2.0.0", + "query-string": "^5.0.1", + "sort-keys": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/normalize-url/node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, + "node_modules/normalize-url/node_modules/sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dependencies": { + "is-plain-obj": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-conf": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", + "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", + "dependencies": { + "config-chain": "^1.1.11", + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha1-y480xTIT2JVyP8urkH6UIq28r7E=" + }, + "node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/nuka-carousel": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/nuka-carousel/-/nuka-carousel-4.7.7.tgz", + "integrity": "sha512-v0qvvtJdnr6ZhaT529Y/RcdxBdVo6Eab3Xfqt9UfMyXMYIYtEmyTXOW1MRLKagF4woWDhjyG3ju8XX7u+QE10g==", + "dependencies": { + "csstype": "^2.6.6", + "d3-ease": "^1.0.3", + "exenv": "^1.2.0", + "prop-types": "^15.6.0", + "react-move": "^6.1.0", + "wicg-inert": "^3.1.0" + }, + "peerDependencies": { + "react": "^0.14.9 || ^15.3.0 || ^16.0.0", + "react-dom": "^0.14.9 || ^15.3.0 || ^16.0.0" + } + }, + "node_modules/nuka-carousel/node_modules/csstype": { + "version": "2.6.17", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.17.tgz", + "integrity": "sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A==" + }, + "node_modules/num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.4.tgz", + "integrity": "sha512-EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz", + "integrity": "sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.2" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.hasown": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.0.0.tgz", + "integrity": "sha512-qYMF2CLIjxxLGleeM0jrcB4kiv3loGVAjKQKvH8pSU/i2VcRRvUNmxbD+nEMmrXRfORhuVJuH8OtSYCZoue3zA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.18.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.values": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.3.0.tgz", + "integrity": "sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/opencollective-postinstall": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", + "dev": true, + "bin": { + "opencollective-postinstall": "index.js" + } + }, + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/optipng-bin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/optipng-bin/-/optipng-bin-7.0.0.tgz", + "integrity": "sha512-mesUAwfedu5p9gRQwlYgD6Svw5IH3VUIWDJj/9cNpP3yFNbbEVqkTMWYhrIEn/cxmbGA3LpZrdoV2Yl8OfmnIA==", + "hasInstallScript": true, + "dependencies": { + "bin-build": "^3.0.0", + "bin-wrapper": "^4.0.0", + "logalot": "^2.0.0" + }, + "bin": { + "optipng": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" + }, + "node_modules/os-filter-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-2.0.0.tgz", + "integrity": "sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg==", + "dependencies": { + "arch": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-event": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz", + "integrity": "sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU=", + "dependencies": { + "p-timeout": "^1.1.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-is-promise": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map-series": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-1.0.0.tgz", + "integrity": "sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco=", + "dependencies": { + "p-reduce": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-pipe": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-1.2.0.tgz", + "integrity": "sha1-SxoROZoRUgpneQ7loMHViB1r7+k=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-reduce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", + "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "engines": { + "node": ">=4" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dependencies": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascal-case/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==" + }, + "node_modules/picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "dependencies": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-dir": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/platform": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz", + "integrity": "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==" + }, + "node_modules/please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dependencies": { + "semver-compare": "^1.0.0" + } + }, + "node_modules/pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "dependencies": { + "ts-pnp": "^1.1.6" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/popmotion": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/popmotion/-/popmotion-11.0.0.tgz", + "integrity": "sha512-kJDyaG00TtcANP5JZ51od+DCqopxBm2a/Txh3Usu23L9qntjY5wumvcVf578N8qXEHR1a+jx9XCv8zOntdYalQ==", + "dependencies": { + "framesync": "^6.0.1", + "hey-listen": "^1.0.8", + "style-value-types": "5.0.0", + "tslib": "^2.1.0" + } + }, + "node_modules/popmotion/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "8.2.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.15.tgz", + "integrity": "sha512-2zO3b26eJD/8rb106Qu2o7Qgg52ND5HPjcyQiK2B98O388h43A448LCslC0dI2P97wCAQRJsFvwTRcXxTKds+Q==", + "dependencies": { + "colorette": "^1.2.2", + "nanoid": "^3.1.23", + "source-map": "^0.6.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-browser-comments": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz", + "integrity": "sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "browserslist": ">=4", + "postcss": ">=8" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-gray/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-gray/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-color-gray/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "dependencies": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-mod-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-mod-function/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-color-mod-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-media/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-media/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "dependencies": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-properties/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-properties/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-custom-properties/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-selectors/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-custom-selectors/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "dependencies": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-env-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-env-function/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-env-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-flexbugs-fixes": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", + "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", + "dependencies": { + "postcss": "^7.0.26" + } + }, + "node_modules/postcss-flexbugs-fixes/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-flexbugs-fixes/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-visible/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-focus-visible/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-within/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-focus-within/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-font-variant/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-font-variant/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-gap-properties/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-gap-properties/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-html": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", + "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", + "dependencies": { + "htmlparser2": "^3.10.0" + }, + "peerDependencies": { + "postcss": ">=5.0.0", + "postcss-syntax": ">=0.36.0" + } + }, + "node_modules/postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-image-set-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-image-set-function/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-image-set-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-initial/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-initial/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-lab-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-lab-function/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-lab-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-less": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", + "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-less/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-less/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-less/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-less/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/postcss-less/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/postcss-less/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-less/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-less/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-logical/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-logical/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-media-minmax/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-media-minmax/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=" + }, + "node_modules/postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-nesting/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-nesting/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-normalize": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-10.0.1.tgz", + "integrity": "sha512-+5w18/rDev5mqERcG3W5GZNMJa1eoYYNGo8gB7tEwaos0ajk3ZXAI4mHGcNT47NE+ZnZD1pEpUOFLvltIwmeJA==", + "dev": true, + "dependencies": { + "@csstools/normalize.css": "*", + "postcss-browser-comments": "^4", + "sanitize.css": "*" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "browserslist": ">= 4", + "postcss": ">= 8" + } + }, + "node_modules/postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-overflow-shorthand/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-overflow-shorthand/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-page-break/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-page-break/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-place/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-place/node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-place/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dependencies": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-preset-env/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-preset-env/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=" + }, + "node_modules/postcss-safe-parser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz", + "integrity": "sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==", + "dependencies": { + "postcss": "^7.0.26" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-safe-parser/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-safe-parser/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-safe-parser/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-safe-parser/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/postcss-safe-parser/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/postcss-safe-parser/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-safe-parser/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-safe-parser/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-safe-parser/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-sass": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz", + "integrity": "sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==", + "dependencies": { + "gonzales-pe": "^4.3.0", + "postcss": "^7.0.21" + } + }, + "node_modules/postcss-sass/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sass/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sass/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sass/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/postcss-sass/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/postcss-sass/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sass/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-sass/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-sass/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-scss": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", + "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", + "dependencies": { + "postcss": "^7.0.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-scss/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-scss/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-scss/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-scss/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/postcss-scss/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/postcss-scss/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-scss/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-scss/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-scss/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-matches/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-selector-matches/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-not/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-selector-not/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sorting": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-5.0.1.tgz", + "integrity": "sha512-Y9fUFkIhfrm6i0Ta3n+89j56EFqaNRdUKqXyRp6kvTcSXnmgEjaVowCXH+JBe9+YKWqd4nc28r2sgwnzJalccA==", + "dependencies": { + "lodash": "^4.17.14", + "postcss": "^7.0.17" + }, + "engines": { + "node": ">=8.7.0" + } + }, + "node_modules/postcss-sorting/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sorting/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sorting/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sorting/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/postcss-sorting/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/postcss-sorting/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sorting/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-sorting/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-sorting/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-syntax": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", + "peerDependencies": { + "postcss": ">=5.0.0" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" + }, + "node_modules/postcss-values-parser": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-3.2.1.tgz", + "integrity": "sha512-SQ7/88VE9LhJh9gc27/hqnSU/aZaREVJcRVccXBmajgP2RkjdJzNyH/a9GCVMI5nsRhT0jC5HpUMwfkz81DVVg==", + "dependencies": { + "color-name": "^1.1.4", + "is-url-superb": "^3.0.0", + "postcss": "^7.0.5", + "url-regex": "^5.0.0" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-values-parser/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-values-parser/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-values-parser/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-values-parser/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/postcss-values-parser/node_modules/color-convert/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/postcss-values-parser/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-values-parser/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-values-parser/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-values-parser/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prettier": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/prismjs": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.24.1.tgz", + "integrity": "sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==" + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-polyfill": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.2.0.tgz", + "integrity": "sha512-k/TC0mIcPVF6yHhUvwAp7cvL6I2fFV7TzF1DuGPI8mBh4QQazf36xCKEHKTZKRysEoTQoQdKyP25J8MPJp7j5g==" + }, + "node_modules/prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "node_modules/property-information": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "dependencies": { + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=" + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "dependencies": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/querystring": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz", + "integrity": "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dependencies": { + "inherits": "~2.0.3" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "engines": { + "node": ">=8" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-2.0.0.tgz", + "integrity": "sha512-kZnO5MoIyrojfrPWqrhFNLZemIAX8edMOCp++yC5RKxzFB3m92DqKNhKlU6+FvpOhWtvyh3jOaD7J6/9tpdIKg==", + "dependencies": { + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.3.0" + } + }, + "node_modules/react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-clientside-effect": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.5.tgz", + "integrity": "sha512-2bL8qFW1TGBHozGGbVeyvnggRpMjibeZM2536AKNENLECutp2yfs44IL8Hmpn8qjFQ2K7A9PnYf3vc7aQq/cPA==", + "dependencies": { + "@babel/runtime": "^7.12.13" + }, + "peerDependencies": { + "react": "^15.3.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/react-datocms": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/react-datocms/-/react-datocms-1.6.6.tgz", + "integrity": "sha512-7k8HziRVkTLGz5MM+MmdO815rSEUJb1xPv0dNRJoCJBh+UDkB3hRBCwDZgVPJMK5AH9DSshcu6bN1gAhLpHRtw==", + "dependencies": { + "datocms-listen": "^0.1.6", + "datocms-structured-text-generic-html-renderer": "^1.1.0", + "datocms-structured-text-utils": "^1.1.0", + "intersection-observer": "^0.12.0", + "react-intersection-observer": "^8.31.1", + "use-deep-compare-effect": "^1.6.1" + }, + "peerDependencies": { + "react": ">= 16.12.0" + } + }, + "node_modules/react-device-detect": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-1.17.0.tgz", + "integrity": "sha512-bBblIStwpHmoS281JFIVqeimcN3LhpoP5YKDWzxQdBIUP8S2xPvHDgizLDhUq2ScguLfVPmwfF5y268EEQR60w==", + "dependencies": { + "ua-parser-js": "^0.7.24" + }, + "peerDependencies": { + "react": ">= 0.14.0 < 18.0.0", + "react-dom": ">= 0.14.0 < 18.0.0" + } + }, + "node_modules/react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + }, + "peerDependencies": { + "react": "17.0.2" + } + }, + "node_modules/react-fast-compare": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", + "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" + }, + "node_modules/react-focus-lock": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.6.0.tgz", + "integrity": "sha512-2yB5KWyaefbvFDgqvsg/KpIjbqVlhIY2c/dyDcokDLhB3Ib7I4bjsrta5OkI5euUoIu5xBTyBwIQZPykUJAr1g==", + "dependencies": { + "@babel/runtime": "^7.0.0", + "focus-lock": "^0.9.2", + "prop-types": "^15.6.2", + "react-clientside-effect": "^1.2.5", + "use-callback-ref": "^1.2.5", + "use-sidecar": "^1.0.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-instantsearch-core": { + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/react-instantsearch-core/-/react-instantsearch-core-6.12.1.tgz", + "integrity": "sha512-X4OqakDI3DOcFiS1S46z+cciKEQcKBmH8HGQLztzW14hoHRqFfZzuqWydlSxfJZN5WksMMm78EmL2jvoqIHd/A==", + "dependencies": { + "@babel/runtime": "^7.1.2", + "algoliasearch-helper": "^3.5.3", + "prop-types": "^15.6.2", + "react-fast-compare": "^3.0.0" + }, + "peerDependencies": { + "algoliasearch": ">= 3.1 < 5", + "react": ">= 16.3.0 < 18" + } + }, + "node_modules/react-instantsearch-core/node_modules/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==" + }, + "node_modules/react-instantsearch-dom": { + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/react-instantsearch-dom/-/react-instantsearch-dom-6.12.1.tgz", + "integrity": "sha512-KXk2UDmJ3OP9B57owPC0+7fdcVtmYAA6/UWimR9CXhvFGCMi11xlR/wscYMYxdPuxs9IkmnnLDIJSjSGADYnow==", + "dependencies": { + "@babel/runtime": "^7.1.2", + "algoliasearch-helper": "^3.5.3", + "classnames": "^2.2.5", + "prop-types": "^15.6.2", + "react-fast-compare": "^3.0.0", + "react-instantsearch-core": "^6.12.1" + }, + "peerDependencies": { + "react": ">= 16.3.0 < 18", + "react-dom": ">= 16.3.0 < 18" + } + }, + "node_modules/react-instantsearch-dom/node_modules/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==" + }, + "node_modules/react-intersection-observer": { + "version": "8.32.5", + "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-8.32.5.tgz", + "integrity": "sha512-4xKdUWRNdPueXXxTyMOV41w6qIa4tsV7BbWOW+IYsvGPP7wxOj9V6o3cKywie+/VDr5Qs7pCzi5Wom78dUxj1w==", + "peerDependencies": { + "react": "^15.0.0 || ^16.0.0 || ^17.0.0|| ^18.0.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-move": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/react-move/-/react-move-6.4.0.tgz", + "integrity": "sha512-TNyDQESDZ0xsejnxFTQ9CKarJQN6NbgpImrvIEzOVe7+jt8y7uTjJwWxqFTfmvwskIs+RmUbCWdN7PAbGyhrdA==", + "dependencies": { + "@babel/runtime": "^7.10.3", + "kapellmeister": "^3.0.1", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": "^16.3.0" + } + }, + "node_modules/react-player": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/react-player/-/react-player-2.9.0.tgz", + "integrity": "sha512-jNUkTfMmUhwPPAktAdIqiBcVUKsFKrVGH6Ocutj6535CNfM91yrvWxHg6fvIX8Y/fjYUPoejddwh7qboNV9vGA==", + "dependencies": { + "deepmerge": "^4.0.0", + "load-script": "^1.0.0", + "memoize-one": "^5.1.1", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.0.1" + }, + "peerDependencies": { + "react": ">=16.6.0" + } + }, + "node_modules/react-player/node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-player/node_modules/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==" + }, + "node_modules/react-refresh": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", + "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-remove-scroll": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.4.3.tgz", + "integrity": "sha512-lGWYXfV6jykJwbFpsuPdexKKzp96f3RbvGapDSIdcyGvHb7/eqyn46C7/6h+rUzYar1j5mdU+XECITHXCKBk9Q==", + "dependencies": { + "react-remove-scroll-bar": "^2.1.0", + "react-style-singleton": "^2.1.0", + "tslib": "^1.0.0", + "use-callback-ref": "^1.2.3", + "use-sidecar": "^1.0.1" + }, + "engines": { + "node": ">=8.5.0" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.2.0.tgz", + "integrity": "sha512-UU9ZBP1wdMR8qoUs7owiVcpaPwsQxUDC2lypP6mmixaGlARZa7ZIBx1jcuObLdhMOvCsnZcvetOho0wzPa9PYg==", + "dependencies": { + "react-style-singleton": "^2.1.0", + "tslib": "^1.0.0" + }, + "engines": { + "node": ">=8.5.0" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-style-singleton": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.1.1.tgz", + "integrity": "sha512-jNRp07Jza6CBqdRKNgGhT3u9umWvils1xsuMOjZlghBDH2MU0PL2WZor4PGYjXpnRCa9DQSlHMs/xnABWOwYbA==", + "dependencies": { + "get-nonce": "^1.0.0", + "invariant": "^2.2.4", + "tslib": "^1.0.0" + }, + "engines": { + "node": ">=8.5.0" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/refractor": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/refractor/-/refractor-3.4.0.tgz", + "integrity": "sha512-dBeD02lC5eytm9Gld2Mx0cMcnR+zhSnsTfPpWqFaMgUMJfC9A6bcN3Br/NaXrnBJcuxnLFR90k1jrkaSyV8umg==", + "dependencies": { + "hastscript": "^6.0.0", + "parse-entities": "^2.0.0", + "prismjs": "~1.24.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/rehype-katex": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-4.0.0.tgz", + "integrity": "sha512-0mgBqYugQyIW0eUl6RDOZ28Cat2YzrnWGaYgKCMQnJw6ClmKgLqXBnkDAPGh2mwxvkkKwQOUMUpSLpA5rt7rzA==", + "dependencies": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.12.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-parse": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz", + "integrity": "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==", + "dependencies": { + "hast-util-from-parse5": "^6.0.0", + "parse5": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-stringify": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/rehype-stringify/-/rehype-stringify-8.0.0.tgz", + "integrity": "sha512-VkIs18G0pj2xklyllrPSvdShAV36Ff3yE5PUO9u36f6+2qJFnn22Z5gKwBOwgXviux4UC7K+/j13AnZfPICi/g==", + "dependencies": { + "hast-util-to-html": "^7.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz", + "integrity": "sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==", + "dependencies": { + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.0", + "unified": "^9.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-footnotes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-math": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-4.0.0.tgz", + "integrity": "sha512-lH7SoQenXtQrvL0bm+mjZbvOk//YWNuyR+MxV18Qyv8rgFmMEGNuB0TSCQDkoDaiJ40FCnG8lxErc/zhcedYbw==", + "dependencies": { + "mdast-util-math": "^0.1.0", + "micromark-extension-math": "^0.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/remark-mdx/node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-8.0.0.tgz", + "integrity": "sha512-gVvOH02TMFqXOWoL6iXU7NXMsDJguNkNuMrzfkQeA4V6WCyHQnOKptn+IQBVVPuIH2sMJBwo8hlrmtn1MLTh9w==", + "dependencies": { + "mdast-util-to-hast": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "dependencies": { + "mdast-squeeze-paragraphs": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dependencies": { + "is-finite": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "deprecated": "https://github.com/lydell/resolve-url#deprecated" + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rivet-graphql": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/rivet-graphql/-/rivet-graphql-0.3.1.tgz", + "integrity": "sha512-HEov02XhZ6H1jOME+mO8CZwliu/UtgZSHixYUwvQ7HSx3gk8EOVaQY5c3zscOYjZECvP8cR4+1Ob3KHWJRWEMw==", + "dependencies": { + "graphql": "^15.3.0", + "graphql-request": "^3.0.0" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sanitize.css": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/sanitize.css/-/sanitize.css-13.0.0.tgz", + "integrity": "sha512-ZRwKbh/eQ6w9vmTjkuG0Ioi3HBwPFce0O+v//ve+aOq1oeCy7jMV2qzzAlpsNuqpqCBjjriM1lbtZbF/Q8jVyA==" + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/search-insights": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-1.8.0.tgz", + "integrity": "sha512-4sd6oS/sLH/UxiZ4vMoDbcpJP01pcoNI4mm3ZsUfDAMCPKxDda1R8SFZUv618og3NYBvvWvwmf8VRC0rNYuTkg==", + "engines": { + "node": ">=8.16.0" + } + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/section-matter/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/seek-bzip": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz", + "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==", + "dependencies": { + "commander": "^2.8.1" + }, + "bin": { + "seek-bunzip": "bin/seek-bunzip", + "seek-table": "bin/seek-bzip-table" + } + }, + "node_modules/seek-bzip/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=" + }, + "node_modules/semver-regex": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-3.1.2.tgz", + "integrity": "sha512-bXWyL6EAKOJa81XG1OZ/Yyuq+oT0b2YLlxx7c+mrdYPaPbnj6WgVULXhinMIeZGufuUBu/eVRqXEhiv4imfwxA==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/semver-truncate": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz", + "integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=", + "dependencies": { + "semver": "^5.3.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/semver-truncate/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + }, + "node_modules/serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", + "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" + }, + "node_modules/shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==" + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "node_modules/signale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz", + "integrity": "sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==", + "dependencies": { + "chalk": "^2.3.2", + "figures": "^2.0.0", + "pkg-conf": "^2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/signale/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/signale/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/signale/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/signale/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/signale/node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/signale/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/signale/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/slugify": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.6.tgz", + "integrity": "sha512-ZdJIgv9gdrYwhXqxsH9pv7nXxjUEyQ6nqhngRxoAAOlmMGA28FDq5O4/5US4G2/Nod7d1ovNcgURQJ7kHq50KQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "dependencies": { + "is-plain-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sort-keys-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", + "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=", + "dependencies": { + "sort-keys": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated" + }, + "node_modules/space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", + "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==" + }, + "node_modules/specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "bin": { + "specificity": "bin/specificity" + } + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "node_modules/squeak": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz", + "integrity": "sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=", + "dependencies": { + "chalk": "^1.0.0", + "console-stream": "^0.1.1", + "lpad-align": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/squeak/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/squeak/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/squeak/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/squeak/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/squeak/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" + }, + "node_modules/stack-generator": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.5.tgz", + "integrity": "sha512-/t1ebrbHkrLrDuNMdeAcsvynWgoH/i4o8EGGfX7dEYDoTXOYVAkEpFdtshlvabzc6JlJ8Kf9YdFEoz7JkzGN9Q==", + "dependencies": { + "stackframe": "^1.1.1" + } + }, + "node_modules/stackframe": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.2.0.tgz", + "integrity": "sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==" + }, + "node_modules/stacktrace-parser": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", + "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "dependencies": { + "type-fest": "^0.7.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/stacktrace-parser/node_modules/type-fest": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", + "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-http": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.1.1.tgz", + "integrity": "sha512-S7OqaYu0EkFpgeGFb/NPOoPLxFko7TPqtEeFg5DXPB4v/KETHG0Ln6fRFrNezoelpaDKmycEmmZ81cC9DAwgYg==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/stream-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", + "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", + "dependencies": { + "debug": "2" + } + }, + "node_modules/stream-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stream-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=" + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.2", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.3.1", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-entities": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz", + "integrity": "sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg==", + "dependencies": { + "character-entities-html4": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", + "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", + "dependencies": { + "is-natural-number": "^4.0.1" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-outer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", + "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", + "dependencies": { + "escape-string-regexp": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=" + }, + "node_modules/style-to-object": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/style-value-types": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/style-value-types/-/style-value-types-5.0.0.tgz", + "integrity": "sha512-08yq36Ikn4kx4YU6RD7jWEv27v4V+PUsOGa4n/as8Et3CuODMJQ00ENeAVXAeydX4Z2j1XHZF1K2sX4mGl18fA==", + "dependencies": { + "hey-listen": "^1.0.8", + "tslib": "^2.1.0" + } + }, + "node_modules/style-value-types/node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/styled-jsx": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-4.0.1.tgz", + "integrity": "sha512-Gcb49/dRB1k8B4hdK8vhW27Rlb2zujCk1fISrizCcToIs+55B4vmUM0N9Gi4nnVfFZWe55jRdWpAqH1ldAKWvQ==", + "dependencies": { + "@babel/plugin-syntax-jsx": "7.14.5", + "@babel/types": "7.15.0", + "convert-source-map": "1.7.0", + "loader-utils": "1.2.3", + "source-map": "0.7.3", + "string-hash": "1.1.3", + "stylis": "3.5.4", + "stylis-rule-sheet": "0.0.10" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || 18.x.x" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/styled-jsx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", + "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/styled-jsx/node_modules/emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/styled-jsx/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/styled-jsx/node_modules/loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/styled-jsx/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/stylelint": { + "version": "13.8.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.8.0.tgz", + "integrity": "sha512-iHH3dv3UI23SLDrH4zMQDjLT9/dDIz/IpoFeuNxZmEx86KtfpjDOscxLTFioQyv+2vQjPlRZnK0UoJtfxLICXQ==", + "dependencies": { + "@stylelint/postcss-css-in-js": "^0.37.2", + "@stylelint/postcss-markdown": "^0.36.2", + "autoprefixer": "^9.8.6", + "balanced-match": "^1.0.0", + "chalk": "^4.1.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.2.0", + "execall": "^2.0.0", + "fast-glob": "^3.2.4", + "fastest-levenshtein": "^1.0.12", + "file-entry-cache": "^6.0.0", + "get-stdin": "^8.0.0", + "global-modules": "^2.0.0", + "globby": "^11.0.1", + "globjoin": "^0.1.4", + "html-tags": "^3.1.0", + "ignore": "^5.1.8", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "known-css-properties": "^0.20.0", + "lodash": "^4.17.20", + "log-symbols": "^4.0.0", + "mathml-tag-names": "^2.1.3", + "meow": "^8.0.0", + "micromatch": "^4.0.2", + "normalize-selector": "^0.2.0", + "postcss": "^7.0.35", + "postcss-html": "^0.36.0", + "postcss-less": "^3.1.4", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^4.0.2", + "postcss-sass": "^0.4.4", + "postcss-scss": "^2.1.1", + "postcss-selector-parser": "^6.0.4", + "postcss-syntax": "^0.36.2", + "postcss-value-parser": "^4.1.0", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "specificity": "^0.4.1", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "style-search": "^0.1.0", + "sugarss": "^2.0.0", + "svg-tags": "^1.0.0", + "table": "^6.0.3", + "v8-compile-cache": "^2.2.0", + "write-file-atomic": "^3.0.3" + }, + "bin": { + "stylelint": "bin/stylelint.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + } + }, + "node_modules/stylelint-config-css-modules": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stylelint-config-css-modules/-/stylelint-config-css-modules-2.2.0.tgz", + "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==", + "peerDependencies": { + "stylelint": "11.x - 13.x" + } + }, + "node_modules/stylelint-config-prettier": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-8.0.2.tgz", + "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==", + "bin": { + "stylelint-config-prettier": "bin/check.js", + "stylelint-config-prettier-check": "bin/check.js" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + }, + "peerDependencies": { + "stylelint": ">=11.0.0" + } + }, + "node_modules/stylelint-config-recommended": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", + "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", + "peerDependencies": { + "stylelint": ">=10.1.0" + } + }, + "node_modules/stylelint-config-standard": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz", + "integrity": "sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA==", + "dependencies": { + "stylelint-config-recommended": "^3.0.0" + }, + "peerDependencies": { + "stylelint": ">=10.1.0" + } + }, + "node_modules/stylelint-media-use-custom-media": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stylelint-media-use-custom-media/-/stylelint-media-use-custom-media-2.0.0.tgz", + "integrity": "sha512-G7Hwma8HIMFJOChqrX9ie8hAGbtEMUbEjuiaR3olHIXjloDWqYlFHIJKsCyyckigkm+4LtCwtZDQASrVY4pRBg==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "stylelint": "10 - 13" + } + }, + "node_modules/stylelint-order": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-4.1.0.tgz", + "integrity": "sha512-sVTikaDvMqg2aJjh4r48jsdfmqLT+nqB1MOsaBnvM3OwLx4S+WXcsxsgk5w18h/OZoxZCxuyXMh61iBHcj9Qiw==", + "dependencies": { + "lodash": "^4.17.15", + "postcss": "^7.0.31", + "postcss-sorting": "^5.0.1" + }, + "peerDependencies": { + "stylelint": "^10.0.1 || ^11.0.0 || ^12.0.0 || ^13.0.0" + } + }, + "node_modules/stylelint-order/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint-order/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint-order/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint-order/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/stylelint-order/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/stylelint-order/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint-order/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/stylelint-order/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stylelint-order/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/stylelint-use-nesting": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-use-nesting/-/stylelint-use-nesting-3.0.0.tgz", + "integrity": "sha512-BMzhXWbK5DdAYtZMQULn7VmWZXpy8Rwlx2PgeNYqKInQrKTJWM/TFKPScc+xvsGUc/6JPiUDeQQij9gFnOo8Kg==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "stylelint": "10 - 13" + } + }, + "node_modules/stylelint-value-no-unknown-custom-properties": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-value-no-unknown-custom-properties/-/stylelint-value-no-unknown-custom-properties-3.0.0.tgz", + "integrity": "sha512-8WoOnZ4ELTxA1cDbhwolIVOutxHwbjpXmd0lL0Li3Iye078jSnEb1KO6pJ/ig5oDVGRApFeA25Fyy4qqmqwGgg==", + "dependencies": { + "postcss-values-parser": "^3.2.1" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "stylelint": "10 - 13" + } + }, + "node_modules/stylelint/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/stylelint/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/stylelint/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/stylelint/node_modules/postcss/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint/node_modules/postcss/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/stylelint/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stylelint/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/stylis": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-3.5.4.tgz", + "integrity": "sha512-8/3pSmthWM7lsPBKv7NXkzn2Uc9W7NotcwGNpJaa3k7WMM1XDCA4MgT5k/8BIexd5ydZdboXtU90XH9Ec4Bv/Q==" + }, + "node_modules/stylis-rule-sheet": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz", + "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==", + "peerDependencies": { + "stylis": "^3.5.0" + } + }, + "node_modules/sugarss": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", + "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/sugarss/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sugarss/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sugarss/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sugarss/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/sugarss/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/sugarss/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/sugarss/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/sugarss/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sugarss/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=" + }, + "node_modules/svgo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.", + "dependencies": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/svgo/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/svgo/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/svgo/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/svgo/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/svgo/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/svgo/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/svgo/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabbable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-4.0.0.tgz", + "integrity": "sha512-H1XoH1URcBOa/rZZWxLxHCtOdVUEev+9vo5YdYhC9tCY4wnybX+VQrCYuy9ubkg69fCBxCONJOSLGfw0DWMffQ==" + }, + "node_modules/table": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "dependencies": { + "ajv": "^8.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.6.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", + "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/table/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dependencies": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/tar-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/tar-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "dependencies": { + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "node_modules/timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "node_modules/tippy.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-5.2.1.tgz", + "integrity": "sha512-66UT6JRVn3dXNCORE+0UvUK3JZqV/VhLlU6HTDm3FmrweUUFUxUGvT8tUQ7ycMp+uhuLAwQw6dBabyC+iKf/MA==", + "dependencies": { + "popper.js": "^1.16.0" + } + }, + "node_modules/tlds": { + "version": "1.221.1", + "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.221.1.tgz", + "integrity": "sha512-N1Afn/SLeOQRpxMwHBuNFJ3GvGrdtY4XPXKPFcx8he0U9Jg9ZkvTKE1k3jQDtCmlFn44UxjVtouF6PT4rEGd3Q==", + "bin": { + "tlds": "bin.js" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" + }, + "node_modules/to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-vfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/to-vfile/-/to-vfile-6.1.0.tgz", + "integrity": "sha512-BxX8EkCxOAZe+D/ToHdDsJcVI4HqQfmw0tCkp31zf3dNP/XWIAjU4CmeuSwsSoOzOTqHPOL0KUzyZqJplkD0Qw==", + "dependencies": { + "is-buffer": "^2.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/trim-repeated": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", + "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", + "dependencies": { + "escape-string-regexp": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/tryer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", + "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==" + }, + "node_modules/ts-jest": { + "version": "26.5.6", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.6.tgz", + "integrity": "sha512-rua+rCP8DxpA8b4DQD/6X2HQS8Zy/xzViVYfEs2OQu68tkCuKLV0Md8pmX55+W24uRIyAsf/BajRfxOs+R2MKA==", + "dev": true, + "dependencies": { + "bs-logger": "0.x", + "buffer-from": "1.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^26.1.0", + "json5": "2.x", + "lodash": "4.x", + "make-error": "1.x", + "mkdirp": "1.x", + "semver": "7.x", + "yargs-parser": "20.x" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": ">= 10" + }, + "peerDependencies": { + "jest": ">=26 <27", + "typescript": ">=3.8 <5.0" + } + }, + "node_modules/ts-pnp": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", + "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", + "engines": { + "node": ">=6" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/tsconfig-paths": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz", + "integrity": "sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.28", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz", + "integrity": "sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dependencies": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/unfetch": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", + "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==" + }, + "node_modules/unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "dependencies": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unified/node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" + }, + "node_modules/unist-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-find-after": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-3.0.0.tgz", + "integrity": "sha512-ojlBqfsBftYXExNu3+hHLfJQ/X1jYY/9vdm4yZWjIbf0VuWF6CRufci1ZyoD/wV2TYMKxXUoNuoqwy+CkgzAiQ==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-find-all-after": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz", + "integrity": "sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-flatmap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unist-util-flatmap/-/unist-util-flatmap-1.0.0.tgz", + "integrity": "sha512-IG32jcKJlhARCYT2LsYPJWdoXYkzz3ESAdl1aa2hn9Auh+cgUmU6wgkII4yCc/1GgeWibRdELdCZh/p3QKQ1dQ==" + }, + "node_modules/unist-util-generated": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-map/-/unist-util-map-2.0.1.tgz", + "integrity": "sha512-VdNvk4BQUUU9Rgr8iUOvclHa/iN9O+6Dt66FKij8l9OVezGG37gGWCPU5KSax1R2degqXFvl3kWTkvzL79e9tQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "object-assign": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dependencies": { + "@types/unist": "^2.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=" + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "deprecated": "Please see https://github.com/lydell/urix#deprecated" + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-loader": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz", + "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==", + "dependencies": { + "loader-utils": "^1.1.0", + "mime": "^2.0.3", + "schema-utils": "^1.0.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/url-loader/node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/url-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-5.0.0.tgz", + "integrity": "sha512-O08GjTiAFNsSlrUWfqF1jH0H1W3m35ZyadHrGv5krdnmPPoxP27oDTqux/579PtaroiSGm5yma6KT1mHFH6Y/g==", + "dependencies": { + "ip-regex": "^4.1.0", + "tlds": "^1.203.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "engines": { + "node": ">= 4" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" + }, + "node_modules/url/node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", + "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", + "engines": { + "node": ">=8.5.0" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-deep-compare-effect": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/use-deep-compare-effect/-/use-deep-compare-effect-1.8.1.tgz", + "integrity": "sha512-kbeNVZ9Zkc0RFGpfMN3MNfaKNvcLNyxOAAd9O4CBZ+kCBXXscn9s/4I+8ytUER4RDpEYs5+O6Rs4PqiZ+rHr5Q==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "dequal": "^2.0.2" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + }, + "peerDependencies": { + "react": ">=16.13" + } + }, + "node_modules/use-sidecar": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.0.5.tgz", + "integrity": "sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA==", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=8.5.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0" + } + }, + "node_modules/use-subscription": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz", + "integrity": "sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA==", + "dependencies": { + "object-assign": "^4.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0" + } + }, + "node_modules/util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/util.promisify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", + "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "node_modules/watchpack": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", + "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/web-namespaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" + }, + "node_modules/webpack-bundle-analyzer": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.6.1.tgz", + "integrity": "sha512-Nfd8HDwfSx1xBwC+P8QMGvHAOITxNBSvu/J/mCJvOwv+G4VWkU7zir9SSenTtyCi0LnVtmsc7G5SZo1uV+bxRw==", + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1", + "bfj": "^6.1.1", + "chalk": "^2.4.1", + "commander": "^2.18.0", + "ejs": "^2.6.1", + "express": "^4.16.3", + "filesize": "^3.6.1", + "gzip-size": "^5.0.0", + "lodash": "^4.17.15", + "mkdirp": "^0.5.1", + "opener": "^1.5.1", + "ws": "^6.0.0" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 6.14.4" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/webpack-bundle-analyzer/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/webpack-bundle-analyzer/node_modules/ejs": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", + "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", + "hasInstallScript": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", + "dev": true + }, + "node_modules/which-typed-array": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz", + "integrity": "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==", + "dependencies": { + "available-typed-arrays": "^1.0.2", + "call-bind": "^1.0.0", + "es-abstract": "^1.18.0-next.1", + "foreach": "^2.0.5", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.1", + "is-typed-array": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wicg-inert": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/wicg-inert/-/wicg-inert-3.1.1.tgz", + "integrity": "sha512-PhBaNh8ur9Xm4Ggy4umelwNIP6pPP1bv3EaWaKqfb/QNme2rdLjm7wIInvV4WhxVHhzA4Spgw9qNSqWtB/ca2A==" + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", + "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + }, "dependencies": { "@algolia/cache-browser-local-storage": { "version": "4.10.5", @@ -467,7 +20399,8 @@ "@bugsnag/plugin-react": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/@bugsnag/plugin-react/-/plugin-react-7.5.4.tgz", - "integrity": "sha512-UFNCae2BbvvetIegAy+h45jlmtQ8k+ZnhpM0wnG4EPzDeZA1AFM+LzqRMWF7GrRRLb8H3W8PoswUN9M1Vr6eog==" + "integrity": "sha512-UFNCae2BbvvetIegAy+h45jlmtQ8k+ZnhpM0wnG4EPzDeZA1AFM+LzqRMWF7GrRRLb8H3W8PoswUN9M1Vr6eog==", + "requires": {} }, "@bugsnag/safe-json-stringify": { "version": "6.0.0", @@ -503,7 +20436,6 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -520,7 +20452,6 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -528,14 +20459,12 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" } } }, @@ -742,7 +20671,8 @@ "@hashicorp/react-inline-svg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", - "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==" + "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", + "requires": {} }, "slugify": { "version": "1.3.6", @@ -783,7 +20713,8 @@ "@hashicorp/react-inline-svg": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.1.tgz", - "integrity": "sha512-EpvJd0AkE5tvlentS/Oez5W7SFJ32UjvU0RVFPYQlwR6tOTMOR9wK7Ose69WjkmtdjPMHWRE6MxWeSn0c1N5Bw==" + "integrity": "sha512-EpvJd0AkE5tvlentS/Oez5W7SFJ32UjvU0RVFPYQlwR6tOTMOR9wK7Ose69WjkmtdjPMHWRE6MxWeSn0c1N5Bw==", + "requires": {} }, "@hashicorp/react-tabs": { "version": "6.0.0", @@ -797,7 +20728,8 @@ "@hashicorp/react-inline-svg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-1.0.2.tgz", - "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==" + "integrity": "sha512-AAFnBslSTgnEr++dTbMn3sybAqvn7myIj88ijGigF6u11eSRiV64zqEcyYLQKWTV6dF4AvYoxiYC6GSOgiM0Yw==", + "requires": {} }, "@tippy.js/react": { "version": "3.1.1", @@ -813,7 +20745,8 @@ "@hashicorp/react-toggle": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-3.0.3.tgz", - "integrity": "sha512-rcmMgEGUP+rh8gHnAYBZwZSkPs4Cz+iL1+v/ROW3cYsqZPZBdeAKG/WqRrL7eNBEWsYvBgx/M9885tsl1I5BTg==" + "integrity": "sha512-rcmMgEGUP+rh8gHnAYBZwZSkPs4Cz+iL1+v/ROW3cYsqZPZBdeAKG/WqRrL7eNBEWsYvBgx/M9885tsl1I5BTg==", + "requires": {} }, "ansi-regex": { "version": "4.1.0", @@ -1009,6 +20942,7 @@ "version": "16.14.0", "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", + "peer": true, "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", @@ -1491,7 +21425,8 @@ "@hashicorp/react-head": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-head/-/react-head-3.1.2.tgz", - "integrity": "sha512-DkQt0F2zU2cZ36IafDI8TWQNS6kkCVzaouLMR0Mwb/MYCzOJtutyZYrzrrDU+uQQ5tWSt3vZQKrSqD4M5RMMoQ==" + "integrity": "sha512-DkQt0F2zU2cZ36IafDI8TWQNS6kkCVzaouLMR0Mwb/MYCzOJtutyZYrzrrDU+uQQ5tWSt3vZQKrSqD4M5RMMoQ==", + "requires": {} }, "@hashicorp/react-hero": { "version": "8.0.2", @@ -1522,7 +21457,8 @@ "@hashicorp/react-inline-svg": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/@hashicorp/react-inline-svg/-/react-inline-svg-6.0.3.tgz", - "integrity": "sha512-BKLhVFc0gIRxyd2QZ5KWSAXDyyiOI+dQ4U4HrgAA3f4/JmpOsF/EgQ6Ro+cmNZy1/cn42OM2iqoEvUqYvW+ZfQ==" + "integrity": "sha512-BKLhVFc0gIRxyd2QZ5KWSAXDyyiOI+dQ4U4HrgAA3f4/JmpOsF/EgQ6Ro+cmNZy1/cn42OM2iqoEvUqYvW+ZfQ==", + "requires": {} }, "@hashicorp/react-learn-callout": { "version": "2.0.1", @@ -1537,7 +21473,8 @@ "@hashicorp/react-link-wrap": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@hashicorp/react-link-wrap/-/react-link-wrap-3.0.3.tgz", - "integrity": "sha512-G0JM3IowWCUWkc/mW5Llb/9NK50PH81/fySGZmQI6/oakK1gLvA6/fEfWRX7cqa7NoFHLiNnDrXJkc3ShtKNVw==" + "integrity": "sha512-G0JM3IowWCUWkc/mW5Llb/9NK50PH81/fySGZmQI6/oakK1gLvA6/fEfWRX7cqa7NoFHLiNnDrXJkc3ShtKNVw==", + "requires": {} }, "@hashicorp/react-markdown-page": { "version": "1.4.3", @@ -1553,12 +21490,13 @@ "@hashicorp/react-placeholder": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/@hashicorp/react-placeholder/-/react-placeholder-0.1.0.tgz", - "integrity": "sha512-Jti+Z4p6fVXiukBZpPIvIFJb/oxRYY3AIXCgrEJxvKemvF8iD84oWSyCB2WPzycmHIn4u8dlSCrc/VhicnieQA==" + "integrity": "sha512-Jti+Z4p6fVXiukBZpPIvIFJb/oxRYY3AIXCgrEJxvKemvF8iD84oWSyCB2WPzycmHIn4u8dlSCrc/VhicnieQA==", + "requires": {} }, "@hashicorp/react-product-downloads-page": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-product-downloads-page/-/react-product-downloads-page-2.5.3.tgz", - "integrity": "sha512-SY3sEM/xYZDbd7XSDaqkT4L+DVRdGJYPpF/0WRDHfR0PObf2zE+iqRjm2APaIACg32sAM1NIZPuc+oQv6vKq5A==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-product-downloads-page/-/react-product-downloads-page-2.7.0.tgz", + "integrity": "sha512-GAw+Ztq4Cr/GJ5kyL3HvpLzs2wtpTFrs0FGDp6TRXjAVgqgfqrQU3cJzthtwkvKAZBmgGmubpQf84bhtfgtvLA==", "requires": { "@hashicorp/platform-product-meta": "^0.1.0", "@hashicorp/react-button": "^6.0.0", @@ -1917,7 +21855,8 @@ "@mdx-js/react": { "version": "1.6.22", "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", - "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==" + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "requires": {} }, "@mdx-js/util": { "version": "1.6.22", @@ -2025,7 +21964,8 @@ "@next/react-refresh-utils": { "version": "11.1.2", "resolved": "https://registry.npmjs.org/@next/react-refresh-utils/-/react-refresh-utils-11.1.2.tgz", - "integrity": "sha512-hsoJmPfhVqjZ8w4IFzoo8SyECVnN+8WMnImTbTKrRUHOVJcYMmKLL7xf7T0ft00tWwAl/3f3Q3poWIN2Ueql/Q==" + "integrity": "sha512-hsoJmPfhVqjZ8w4IFzoo8SyECVnN+8WMnImTbTKrRUHOVJcYMmKLL7xf7T0ft00tWwAl/3f3Q3poWIN2Ueql/Q==", + "requires": {} }, "@next/swc-darwin-arm64": { "version": "11.1.2", @@ -2456,7 +22396,7 @@ "version": "15.7.3", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==", - "dev": true + "devOptional": true }, "@types/q": { "version": "1.5.5", @@ -2467,7 +22407,7 @@ "version": "17.0.11", "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", - "dev": true, + "devOptional": true, "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -2478,7 +22418,7 @@ "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", - "dev": true + "devOptional": true }, "@types/segment-analytics": { "version": "0.0.33", @@ -2603,7 +22543,8 @@ "acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "requires": {} }, "acorn-walk": { "version": "7.2.0", @@ -2633,12 +22574,14 @@ "ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "requires": {} }, "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "requires": {} }, "algoliasearch": { "version": "4.10.5", @@ -4630,7 +24573,7 @@ "version": "3.0.8", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==", - "dev": true + "devOptional": true }, "currently-unhandled": { "version": "0.4.1", @@ -5235,7 +25178,6 @@ "version": "7.23.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.23.0.tgz", "integrity": "sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q==", - "dev": true, "requires": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.0", @@ -5280,7 +25222,6 @@ "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, "requires": { "@babel/highlight": "^7.10.4" } @@ -5289,7 +25230,6 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -5297,14 +25237,12 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" } } }, @@ -5397,7 +25335,8 @@ "eslint-config-prettier": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-7.0.0.tgz", - "integrity": "sha512-8Y8lGLVPPZdaNA7JXqnvETVC7IiVRgAP6afQu9gOQRn90YY3otMNh+x7Vr2vMePQntF+5erdSUBqSzCmU/AxaQ==" + "integrity": "sha512-8Y8lGLVPPZdaNA7JXqnvETVC7IiVRgAP6afQu9gOQRn90YY3otMNh+x7Vr2vMePQntF+5erdSUBqSzCmU/AxaQ==", + "requires": {} }, "eslint-import-resolver-node": { "version": "0.3.6", @@ -5744,7 +25683,8 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.2.0.tgz", "integrity": "sha512-623WEiZJqxR7VdxFCKLI6d6LLpwJkGPYKODnkH3D7WpOG5KM8yWueBd8TLsNAetEJNF5iJmolaAKO3F8yzyVBQ==", - "dev": true + "dev": true, + "requires": {} }, "eslint-scope": { "version": "5.1.1", @@ -10414,7 +30354,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz", "integrity": "sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==", - "dev": true + "dev": true, + "requires": {} }, "postcss-color-functional-notation": { "version": "2.0.1", @@ -11784,7 +31725,8 @@ "postcss-syntax": { "version": "0.36.2", "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", - "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==" + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", + "requires": {} }, "postcss-value-parser": { "version": "4.1.0", @@ -11888,8 +31830,7 @@ "prettier": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", - "dev": true + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==" }, "prettier-linter-helpers": { "version": "1.0.0", @@ -12206,7 +32147,8 @@ "react-intersection-observer": { "version": "8.32.5", "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-8.32.5.tgz", - "integrity": "sha512-4xKdUWRNdPueXXxTyMOV41w6qIa4tsV7BbWOW+IYsvGPP7wxOj9V6o3cKywie+/VDr5Qs7pCzi5Wom78dUxj1w==" + "integrity": "sha512-4xKdUWRNdPueXXxTyMOV41w6qIa4tsV7BbWOW+IYsvGPP7wxOj9V6o3cKywie+/VDr5Qs7pCzi5Wom78dUxj1w==", + "requires": {} }, "react-is": { "version": "16.13.1", @@ -13471,6 +33413,21 @@ "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, "string-argv": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", @@ -13534,21 +33491,6 @@ "define-properties": "^1.1.3" } }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - } - } - }, "stringify-entities": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz", @@ -13844,17 +33786,20 @@ "stylelint-config-css-modules": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/stylelint-config-css-modules/-/stylelint-config-css-modules-2.2.0.tgz", - "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==" + "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==", + "requires": {} }, "stylelint-config-prettier": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-8.0.2.tgz", - "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==" + "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==", + "requires": {} }, "stylelint-config-recommended": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", - "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==" + "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", + "requires": {} }, "stylelint-config-standard": { "version": "20.0.0", @@ -13867,7 +33812,8 @@ "stylelint-media-use-custom-media": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/stylelint-media-use-custom-media/-/stylelint-media-use-custom-media-2.0.0.tgz", - "integrity": "sha512-G7Hwma8HIMFJOChqrX9ie8hAGbtEMUbEjuiaR3olHIXjloDWqYlFHIJKsCyyckigkm+4LtCwtZDQASrVY4pRBg==" + "integrity": "sha512-G7Hwma8HIMFJOChqrX9ie8hAGbtEMUbEjuiaR3olHIXjloDWqYlFHIJKsCyyckigkm+4LtCwtZDQASrVY4pRBg==", + "requires": {} }, "stylelint-order": { "version": "4.1.0", @@ -13953,7 +33899,8 @@ "stylelint-use-nesting": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/stylelint-use-nesting/-/stylelint-use-nesting-3.0.0.tgz", - "integrity": "sha512-BMzhXWbK5DdAYtZMQULn7VmWZXpy8Rwlx2PgeNYqKInQrKTJWM/TFKPScc+xvsGUc/6JPiUDeQQij9gFnOo8Kg==" + "integrity": "sha512-BMzhXWbK5DdAYtZMQULn7VmWZXpy8Rwlx2PgeNYqKInQrKTJWM/TFKPScc+xvsGUc/6JPiUDeQQij9gFnOo8Kg==", + "requires": {} }, "stylelint-value-no-unknown-custom-properties": { "version": "3.0.0", @@ -13971,7 +33918,8 @@ "stylis-rule-sheet": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz", - "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==" + "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==", + "requires": {} }, "sugarss": { "version": "2.0.0", @@ -14509,8 +34457,7 @@ "typescript": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", - "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", - "dev": true + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==" }, "ua-parser-js": { "version": "0.7.28", @@ -14812,7 +34759,8 @@ "use-callback-ref": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", - "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==" + "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", + "requires": {} }, "use-deep-compare-effect": { "version": "1.8.1", diff --git a/website/package.json b/website/package.json index 93b687950..82540f435 100644 --- a/website/package.json +++ b/website/package.json @@ -30,7 +30,7 @@ "@hashicorp/react-inline-svg": "^6.0.3", "@hashicorp/react-learn-callout": "^2.0.1", "@hashicorp/react-markdown-page": "^1.4.3", - "@hashicorp/react-product-downloads-page": "^2.5.3", + "@hashicorp/react-product-downloads-page": "^2.7.0", "@hashicorp/react-product-features-list": "^5.0.0", "@hashicorp/react-search": "^6.1.1", "@hashicorp/react-section-header": "^5.0.4", From 399864d3ce155422b94109208818b4b552fdc9f0 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:46:55 -0800 Subject: [PATCH 206/404] Update server-tls.mdx Added k8s auth role for client Added to Consul yaml file: tls.enableAutoEncrypt: true Fixed name of CA policy: policies=ca-policy --- .../k8s/installation/vault/server-tls.mdx | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 612d9997e..485cae0af 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -102,8 +102,9 @@ echo allowed_domains=\"$DATACENTER.consul, $NAME-server, $NAME-server.$NAMESPACE Prior to creating Vault auth roles for the Consul server and the Consul components, ensure that the Vault Kubernetes auth method is enabled as described in [Vault Kubernetes Auth Method](/docs/k8s/installation/vault#vault-kubernetes-auth-method). -Finally, two Kubernetes auth roles need to be created, one for the Consul servers and one for the Consul components: +Finally, three Kubernetes auth roles need to be created, one for the Consul servers, one for the Consul clients, and one for the Consul components. +Role for Consul servers: ```shell-session vault write auth/kubernetes/role/consul-server \ bound_service_account_names= \ @@ -121,11 +122,30 @@ you can run: -> **Note:** Should you enable other supported features such as gossip-encryption be sure to append additional policies to the Kube auth role in a comma separated value e.g. `policies=consul-server,consul-gossip` +Role for Consul clients: +```shell-session +vault write auth/kubernetes/role/consul-client \ + bound_service_account_names= \ + bound_service_account_namespaces=default \ + policies=ca-policy \ + ttl=1h +``` + +To find out the service account name of the Consul client +you can run: +```shell-session + helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul +``` + +-> **Note:** Should you enable other supported features such as gossip-encryption be sure to append additional policies to +the Kube auth role in a comma separated value e.g. `policies=ca-policy,consul-gossip` + +Role for CA components: ```shell-session vault write auth/kubernetes/role/consul-ca \ bound_service_account_names="*" \ bound_service_account_namespaces= \ - policies=consul-ca \ + policies=ca-policy \ ttl=1h ``` @@ -147,6 +167,7 @@ global: consulClientRole: consul-client consulCARole: consul-ca tls: + enableAutoEncrypt: true enabled: true caCert: secretName: "pki/cert/ca" From 26fb50a3263cd5e96c336f5201cfe0dbdd801c69 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:56:33 -0800 Subject: [PATCH 207/404] Update website/content/docs/k8s/installation/vault/server-tls.mdx Co-authored-by: mrspanishviking --- website/content/docs/k8s/installation/vault/server-tls.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 485cae0af..16e4edc79 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -106,7 +106,7 @@ Finally, three Kubernetes auth roles need to be created, one for the Consul serv Role for Consul servers: ```shell-session -vault write auth/kubernetes/role/consul-server \ +$ vault write auth/kubernetes/role/consul-server \ bound_service_account_names= \ bound_service_account_namespaces= \ policies=consul-server \ From 088decf30f70e47017f21394af0c1d5cf36aba72 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:56:53 -0800 Subject: [PATCH 208/404] Update website/content/docs/k8s/installation/vault/server-tls.mdx Co-authored-by: mrspanishviking --- website/content/docs/k8s/installation/vault/server-tls.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 16e4edc79..e525ffebb 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -124,7 +124,7 @@ the Kube auth role in a comma separated value e.g. `policies=consul-server,cons Role for Consul clients: ```shell-session -vault write auth/kubernetes/role/consul-client \ +$ vault write auth/kubernetes/role/consul-client \ bound_service_account_names= \ bound_service_account_namespaces=default \ policies=ca-policy \ From 073387885ecaa2992d96e7b77154729d7d0b0d60 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:56:58 -0800 Subject: [PATCH 209/404] Update website/content/docs/k8s/installation/vault/server-tls.mdx Co-authored-by: mrspanishviking --- website/content/docs/k8s/installation/vault/server-tls.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index e525ffebb..5c58097b1 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -134,7 +134,7 @@ $ vault write auth/kubernetes/role/consul-client \ To find out the service account name of the Consul client you can run: ```shell-session - helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul + $ helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul ``` -> **Note:** Should you enable other supported features such as gossip-encryption be sure to append additional policies to From 0d43b17228b64ca28df2bfffe4c352e254b573b9 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:57:02 -0800 Subject: [PATCH 210/404] Update website/content/docs/k8s/installation/vault/server-tls.mdx Co-authored-by: mrspanishviking --- website/content/docs/k8s/installation/vault/server-tls.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 5c58097b1..10e5c4c58 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -142,7 +142,7 @@ the Kube auth role in a comma separated value e.g. `policies=ca-policy,consul-g Role for CA components: ```shell-session -vault write auth/kubernetes/role/consul-ca \ +$ vault write auth/kubernetes/role/consul-ca \ bound_service_account_names="*" \ bound_service_account_namespaces= \ policies=ca-policy \ From 7a44e0d78cdb34e3966a17e675345abe20346a03 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:57:09 -0800 Subject: [PATCH 211/404] Update website/content/docs/k8s/installation/vault/server-tls.mdx Co-authored-by: mrspanishviking --- website/content/docs/k8s/installation/vault/server-tls.mdx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 10e5c4c58..d4c6cb3cd 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -131,8 +131,7 @@ $ vault write auth/kubernetes/role/consul-client \ ttl=1h ``` -To find out the service account name of the Consul client -you can run: +To find out the service account name of the Consul client, use the command below. ```shell-session $ helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul ``` From 5781b74d406360e97bf0d7f551dcba82705e9b81 Mon Sep 17 00:00:00 2001 From: vanphan24 <89482663+vanphan24@users.noreply.github.com> Date: Wed, 12 Jan 2022 08:57:14 -0800 Subject: [PATCH 212/404] Update website/content/docs/k8s/installation/vault/server-tls.mdx Co-authored-by: mrspanishviking --- website/content/docs/k8s/installation/vault/server-tls.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index d4c6cb3cd..4669556bb 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -136,7 +136,7 @@ To find out the service account name of the Consul client, use the command below $ helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul ``` --> **Note:** Should you enable other supported features such as gossip-encryption be sure to append additional policies to +-> **Note:** Should you enable other supported features such as gossip-encryption, ensure you append additional policies to the Kube auth role in a comma separated value e.g. `policies=ca-policy,consul-gossip` Role for CA components: From 5a0f3e994e50081b88146d3d3926f056a7fed6d1 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Wed, 12 Jan 2022 12:00:18 -0500 Subject: [PATCH 213/404] Update memberlist to 0.3.1 (#12042) --- .changelog/12042.txt | 4 ++++ go.mod | 2 +- go.sum | 3 ++- 3 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changelog/12042.txt diff --git a/.changelog/12042.txt b/.changelog/12042.txt new file mode 100644 index 000000000..3ce14bc16 --- /dev/null +++ b/.changelog/12042.txt @@ -0,0 +1,4 @@ +```release-note:bug +memberlist: fixes a bug which prevented members from joining a cluster with +large amounts of churn [[GH-253](https://github.com/hashicorp/memberlist/issues/253)] +``` \ No newline at end of file diff --git a/go.mod b/go.mod index 26decc628..f9e21a132 100644 --- a/go.mod +++ b/go.mod @@ -50,7 +50,7 @@ require ( github.com/hashicorp/golang-lru v0.5.4 github.com/hashicorp/hcl v1.0.0 github.com/hashicorp/hil v0.0.0-20200423225030-a18a1cd20038 - github.com/hashicorp/memberlist v0.3.0 + github.com/hashicorp/memberlist v0.3.1 github.com/hashicorp/net-rpc-msgpackrpc v0.0.0-20151116020338-a14192a58a69 github.com/hashicorp/raft v1.3.3 github.com/hashicorp/raft-autopilot v0.1.5 diff --git a/go.sum b/go.sum index 72542c796..ed9f545cf 100644 --- a/go.sum +++ b/go.sum @@ -282,8 +282,9 @@ github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= github.com/hashicorp/mdns v1.0.4 h1:sY0CMhFmjIPDMlTB+HfymFHCaYLhgifZ0QhjaYKD/UQ= github.com/hashicorp/mdns v1.0.4/go.mod h1:mtBihi+LeNXGtG8L9dX59gAEa12BDtBQSp4v/YAJqrc= -github.com/hashicorp/memberlist v0.3.0 h1:8+567mCcFDnS5ADl7lrpxPMWiFCElyUEeW0gtj34fMA= github.com/hashicorp/memberlist v0.3.0/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= +github.com/hashicorp/memberlist v0.3.1 h1:MXgUXLqva1QvpVEDQW1IQLG0wivQAtmFlHRQ+1vWZfM= +github.com/hashicorp/memberlist v0.3.1/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= github.com/hashicorp/net-rpc-msgpackrpc v0.0.0-20151116020338-a14192a58a69 h1:lc3c72qGlIMDqQpQH82Y4vaglRMMFdJbziYWriR4UcE= github.com/hashicorp/net-rpc-msgpackrpc v0.0.0-20151116020338-a14192a58a69/go.mod h1:/z+jUGRBlwVpUZfjute9jWaF6/HuhjuFQuL1YXzVD1Q= github.com/hashicorp/raft v1.1.0/go.mod h1:4Ak7FSPnuvmb0GV6vgIAJ4vYT4bek9bb6Q+7HVbyzqM= From ca94446773b0ad6d43656ce44556378fcefdd593 Mon Sep 17 00:00:00 2001 From: David Yu Date: Wed, 12 Jan 2022 09:16:42 -0800 Subject: [PATCH 214/404] docs: Formatting for Consul K8s uninstall commands (#12031) * docs: Missing $ prior to command for Consul K8s uninstall * re-do numer bullets was mis-numbered * Update uninstall.mdx * simplify wording --- website/content/docs/k8s/operations/uninstall.mdx | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/website/content/docs/k8s/operations/uninstall.mdx b/website/content/docs/k8s/operations/uninstall.mdx index b37cabaf3..ea8e34efb 100644 --- a/website/content/docs/k8s/operations/uninstall.mdx +++ b/website/content/docs/k8s/operations/uninstall.mdx @@ -29,7 +29,7 @@ Refer to the [Consul K8s CLI reference](/docs/k8s/k8s-cli#uninstall) topic for d Run the `helm uninstall` **and** manually remove resources that Helm does not delete. -1. Although the Helm chart automates the deletion of CRDs upon the uninstallation of the Helm chart, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. +1. Although the Helm chart automates the deletion of CRDs upon uninstallation, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. ```shell-session $ kubectl delete crd --selector app=consul @@ -37,18 +37,16 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de 1. (Optional) If Consul is installed in a dedicated namespace, set the kubeConfig context to the `consul` namespace. Otherwise, subsequent commands will need to include `-n consul`. - ``` - kubectl config set-context --current --namespace=consul + ```shell-session + $ kubectl config set-context --current --namespace=consul ``` - 1. Run the `helm uninstall ` command and specify the release name you've installed Consul with, e.g.,: ```shell-session $ helm uninstall consul release "consul" uninstalled ``` - 1. After deleting the Helm release, you need to delete the `PersistentVolumeClaim`'s for the persistent volumes that store Consul's data. A [bug](https://github.com/helm/helm/issues/5156) in Helm prevents PVCs from being deleted. Issue the following commands: From 5e9d9d032c0f19b5708cf871b18d86b4a3c4468e Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 12 Jan 2022 11:19:15 -0800 Subject: [PATCH 215/404] applied feedback --- .../content/docs/k8s/connect/api-gateway.mdx | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/website/content/docs/k8s/connect/api-gateway.mdx b/website/content/docs/k8s/connect/api-gateway.mdx index 732bed868..9e06730c5 100644 --- a/website/content/docs/k8s/connect/api-gateway.mdx +++ b/website/content/docs/k8s/connect/api-gateway.mdx @@ -10,14 +10,14 @@ This topic describes how to use the Consul API Gateway module, which enables app ## Introduction -Consul API Gateway is an implementation of the Kubernetes Gateway API Specification (https://gateway-api.sigs.k8s.io/). The specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes. +Consul API Gateway is an implementation of the Kubernetes Gateway [API Specification](https://gateway-api.sigs.k8s.io/). The specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes. ## Requirements Your datacenter must meet the following requirements prior to configuring the Consul API Gateway: - A Kubernetes cluster must be running -- Consul 1.11.0+ +- Consul 1.11.1+ ## Installation @@ -38,20 +38,16 @@ Your datacenter must meet the following requirements prior to configuring the Co 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. ```shell-session -helm install consul hashicorp/consul --version 0.37.0 -f values.yaml +$ helm install consul hashicorp/consul --version 0.39.0 -f values.yaml ``` -The following components will be installed: - - - Gateway controller - - CRDs required by the Kubernetes Gateway API specification - - `kustomize` manifests for completing the installation +The following components will be installed: - Gateway controller - CRDs required by the Kubernetes Gateway API specification - `kustomize` manifests for completing the installation 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. ```shell-session -kubectl apply -k "github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-techpreview" -kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-techpreview" +$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-techpreview" +$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-techpreview" ``` ## Usage @@ -62,7 +58,7 @@ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-tech 1. Issue the `kubectl apply` command to implement the configurations, e.g.: ```shell-session -kubectl apply -f gateway-configuration.yaml +$ kubectl apply -f gateway-configuration.yaml ``` ### Using the Consul API Gateway Binary @@ -75,24 +71,24 @@ You can manually start the Consul API Gateway control plane server using the bin The following options are supported: -| Option | Description | Required | Default | -| ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | --------------------------------------------------------- | ------ | -| `-ca-file` | String value that specifies the path to the CA for the Consul server. | Required | none | -| `-ca-secret` | String value that specifies the CA secret for the Consul server. | Required | none | -| `-ca-secret-namespace`                         | String value that specifies the CA secret namespace for the Consul server. | Required | none | -| `-k8-context` | String value that specifies the Kubernetes context to use when starting the Consul server. | Optional | current context | -| `-k8-namespace` | String value that specifies the Kubernetes namespace to use when starting the Consul server. | Optional | `default` | -| `-log-json` | Boolean value that enables or disables JSON format for the log output. | Required | `false` | -| `-log-level` | String value that specifies the logging level. The following values are supported:
      - `trace` (highest level of detail)
      - `debug`
      - `info`
      - `warn`
      - `error` | context to use when starting the Consul server. | Required | `info` | -| `-metrics-port` | Integer value that specifies the port number for collecting metrics. | Optional | none | -| `-pprof` | Integer value that specifies the Go pprof port number for collecting metrics. | Optional | none | -| `-sds-server-host` | String value that specifies the host server for the secret discovery service (SDS). | Optional | `consul-api-gateway-controller.default.svc.cluster.local` | -| `-sds-server-host` | Integer value that specifies the port number for the secret discovery service (SDS). | Optional | `9090` | +| Option | Description | Required | Default | +| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | ----------------------------------------------------------------------- | ------ | +| `-ca-file` | String value that specifies the path to the CA for the Consul server. | Required | none | +| `-ca-secret` | String value that specifies the CA secret for the Consul server. | Required | none | +| `-ca-secret-namespace` | String value that specifies the CA secret namespace for the Consul server. | Required | none | +| `-k8-context` | String value that specifies the Kubernetes context to use when starting the Consul server. | Optional | current context | +| `-k8-namespace` | String value that specifies the Kubernetes namespace to use when starting the Consul server. | Optional | `default` | +| `-log-json` | Boolean value that enables or disables JSON format for the log output. | Required | `false` | +| `-log-level` | String value that specifies the logging level. The following values are supported:
      - `trace` (highest level of detail)
      - `debug`
      - `info`
      - `warn`
      - `error` | context to use when starting the Consul server. | Required | `info` | +| `-metrics-port` | Integer value that specifies the port number for collecting metrics. | Optional | none | +| `-pprof` | Integer value that specifies the Go pprof port number for collecting metrics. | Optional | none | +| `-sds-server-host` | String value that specifies the host server for the secret discovery service (SDS). | Optional | `consul-api-gateway-controller.default.`
      `svc.cluster.`
      `local` | +| `-sds-server-host` | Integer value that specifies the port number for the secret discovery service (SDS). | Optional | `9090` | You can also issue the `version` command to print the Consul API Gateway version to the console: ```shell-session -./consul-api-gateway version +$ ./consul-api-gateway version consul-api-gateway 0.1.0-dev ``` @@ -108,7 +104,9 @@ Create the following artifacts to configure the API Gateway: The gateway object contains gateway listeners. Add the `kind: Gateway` option to the configuration file to declare a gateway. -The following example creates a gateway called `example-gateway` that includes a listener called `https` (see Listeners for details about the `listener` configuration). +The following example creates a gateway called `example-gateway` that includes a listener called `https` (see [Listeners](#listeners) for details about the `listener` configuration). + + ```yaml apiVersion: gateway.networking.k8s.io/v1alpha2 @@ -132,10 +130,12 @@ spec: - name: gateway-production-certificate ``` + + Refer to the Kubernetes Gateway API documentation for details about configuring gateways: https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.Gateway -### Listener +### Listeners Listeners are the logical endpoints bound to the gateway's addresses. Add the `listener` object to the `gateway` configuration and specify the following properties to define a listener: From 77cecf97557899604e52feaaedb2da4a968f81a0 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 12 Jan 2022 11:23:22 -0800 Subject: [PATCH 216/404] forgot to update the image version --- website/content/docs/k8s/connect/api-gateway.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/connect/api-gateway.mdx b/website/content/docs/k8s/connect/api-gateway.mdx index 9e06730c5..2d931ea75 100644 --- a/website/content/docs/k8s/connect/api-gateway.mdx +++ b/website/content/docs/k8s/connect/api-gateway.mdx @@ -26,7 +26,7 @@ Your datacenter must meet the following requirements prior to configuring the Co ```yaml global: name: consul - image: 'hashicorp/consul:1.11.0' + image: 'hashicorp/consul:1.11.1' tls: enabled: true connectInject: From c9f2cc370c9e1ea8dedc800d85f1feb22a7fd686 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 12 Jan 2022 11:24:36 -0800 Subject: [PATCH 217/404] missed a cmd block when adding dollar signs --- website/content/docs/k8s/connect/api-gateway.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/connect/api-gateway.mdx b/website/content/docs/k8s/connect/api-gateway.mdx index 2d931ea75..a79953571 100644 --- a/website/content/docs/k8s/connect/api-gateway.mdx +++ b/website/content/docs/k8s/connect/api-gateway.mdx @@ -66,7 +66,7 @@ $ kubectl apply -f gateway-configuration.yaml You can manually start the Consul API Gateway control plane server using the binary located in the home directory to issue the `server` command: ```shell-session -./consul-api-gateway server +$ ./consul-api-gateway server ``` The following options are supported: From 0d69bb190277141a26548c0068835053c592136f Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 12 Jan 2022 11:32:32 -0800 Subject: [PATCH 218/404] added beta flag to nav link --- website/data/docs-nav-data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index f16ce4f4f..af3f213a3 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -476,7 +476,7 @@ "href": "/docs/connect/transparent-proxy" }, { - "title": "Consul API Gateway", + "title": "Consul API Gateway BETA", "path": "k8s/connect/api-gateway" }, { From 1fdc74c7d7feac889b4f6cf650211b7f78afbf76 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 12 Jan 2022 11:53:32 -0800 Subject: [PATCH 219/404] fixes to the params table --- .../content/docs/k8s/connect/api-gateway.mdx | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/website/content/docs/k8s/connect/api-gateway.mdx b/website/content/docs/k8s/connect/api-gateway.mdx index a79953571..ec00cda18 100644 --- a/website/content/docs/k8s/connect/api-gateway.mdx +++ b/website/content/docs/k8s/connect/api-gateway.mdx @@ -71,19 +71,19 @@ $ ./consul-api-gateway server The following options are supported: -| Option | Description | Required | Default | -| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | ----------------------------------------------------------------------- | ------ | -| `-ca-file` | String value that specifies the path to the CA for the Consul server. | Required | none | -| `-ca-secret` | String value that specifies the CA secret for the Consul server. | Required | none | -| `-ca-secret-namespace` | String value that specifies the CA secret namespace for the Consul server. | Required | none | -| `-k8-context` | String value that specifies the Kubernetes context to use when starting the Consul server. | Optional | current context | -| `-k8-namespace` | String value that specifies the Kubernetes namespace to use when starting the Consul server. | Optional | `default` | -| `-log-json` | Boolean value that enables or disables JSON format for the log output. | Required | `false` | -| `-log-level` | String value that specifies the logging level. The following values are supported:
      - `trace` (highest level of detail)
      - `debug`
      - `info`
      - `warn`
      - `error` | context to use when starting the Consul server. | Required | `info` | -| `-metrics-port` | Integer value that specifies the port number for collecting metrics. | Optional | none | -| `-pprof` | Integer value that specifies the Go pprof port number for collecting metrics. | Optional | none | -| `-sds-server-host` | String value that specifies the host server for the secret discovery service (SDS). | Optional | `consul-api-gateway-controller.default.`
      `svc.cluster.`
      `local` | -| `-sds-server-host` | Integer value that specifies the port number for the secret discovery service (SDS). | Optional | `9090` | +| Option | Description | Required | Default | +| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ----------------------------------------------------------------------- | +| `-ca-file` | String value that specifies the path to the CA for the Consul server. | Required | none | +| `-ca-secret` | String value that specifies the CA secret for the Consul server. | Required | none | +| `-ca-secret-namespace` | String value that specifies the CA secret namespace for the Consul server. | Required | none | +| `-k8-context` | String value that specifies the Kubernetes context to use when starting the Consul server. | Optional | current context | +| `-k8-namespace` | String value that specifies the Kubernetes namespace to use when starting the Consul server. | Optional | `default` | +| `-log-json` | Boolean value that enables or disables JSON format for the log output. | Required | `false` | +| `-log-level` | String value that specifies the logging level. The following values are supported:
      - `trace` (highest level of detail)
      - `debug`
      - `info`
      - `warn`
      - `error` | Optional | `info` | +| `-metrics-port` | Integer value that specifies the port number for collecting metrics. | Optional | none | +| `-pprof` | Integer value that specifies the Go pprof port number for collecting metrics. | Optional | none | +| `-sds-server-host` | String value that specifies the host server for the secret discovery service (SDS). | Optional | `consul-api-gateway-controller.default.`
      `svc.cluster.`
      `local` | +| `-sds-server-host` | Integer value that specifies the port number for the secret discovery service (SDS). | Optional | `9090` | You can also issue the `version` command to print the Consul API Gateway version to the console: From 2ba76486d06fa430894a41f1fc04c91238b319c5 Mon Sep 17 00:00:00 2001 From: Kyle Havlovitz Date: Wed, 12 Jan 2022 12:08:49 -0800 Subject: [PATCH 220/404] Add virtual IP generation for term gateway backed services --- agent/consul/leader_connect.go | 42 ++++- agent/consul/leader_test.go | 67 ++++++- agent/consul/state/catalog.go | 165 +++++++++++++++- agent/consul/state/catalog_events.go | 10 +- agent/consul/state/catalog_events_test.go | 155 ++++++++++++--- agent/consul/state/catalog_test.go | 21 ++- agent/structs/structs.go | 4 + agent/structs/system_metadata.go | 9 +- agent/xds/listeners.go | 9 + agent/xds/listeners_test.go | 48 +++++ ...xy-terminating-gateway.envoy-1-20-x.golden | 177 ++++++++++++++++++ 11 files changed, 662 insertions(+), 45 deletions(-) create mode 100644 agent/xds/testdata/listeners/transparent-proxy-terminating-gateway.envoy-1-20-x.golden diff --git a/agent/consul/leader_connect.go b/agent/consul/leader_connect.go index 2f796c691..79162603a 100644 --- a/agent/consul/leader_connect.go +++ b/agent/consul/leader_connect.go @@ -31,6 +31,10 @@ var ( // assignment to be enabled. minVirtualIPVersion = version.Must(version.NewVersion("1.11.0")) + // minVirtualIPVersion is the minimum version for all Consul servers for virtual IP + // assignment to be enabled for terminating gateways. + minVirtualIPTerminatingGatewayVersion = version.Must(version.NewVersion("1.11.2")) + // virtualIPVersionCheckInterval is the frequency we check whether all servers meet // the minimum version to enable virtual IP assignment for services. virtualIPVersionCheckInterval = time.Minute @@ -125,7 +129,7 @@ func (s *Server) pruneCARoots() error { func (s *Server) runVirtualIPVersionCheck(ctx context.Context) error { // Return early if the flag is already set. - done, err := s.setVirtualIPVersionFlag() + done, err := s.setVirtualIPFlags() if err != nil { s.loggers.Named(logging.Connect).Warn("error enabling virtual IPs", "error", err) } @@ -142,7 +146,7 @@ func (s *Server) runVirtualIPVersionCheck(ctx context.Context) error { case <-ctx.Done(): return nil case <-ticker.C: - done, err := s.setVirtualIPVersionFlag() + done, err := s.setVirtualIPFlags() if err != nil { s.loggers.Named(logging.Connect).Warn("error enabling virtual IPs", "error", err) continue @@ -154,6 +158,19 @@ func (s *Server) runVirtualIPVersionCheck(ctx context.Context) error { } } +func (s *Server) setVirtualIPFlags() (bool, error) { + virtualIPFlag, err := s.setVirtualIPVersionFlag() + if err != nil { + return false, err + } + terminatingGatewayVirtualIPFlag, err := s.setVirtualIPTerminatingGatewayVersionFlag() + if err != nil { + return false, err + } + + return virtualIPFlag && terminatingGatewayVirtualIPFlag, nil +} + func (s *Server) setVirtualIPVersionFlag() (bool, error) { val, err := s.getSystemMetadata(structs.SystemMetadataVirtualIPsEnabled) if err != nil { @@ -175,6 +192,27 @@ func (s *Server) setVirtualIPVersionFlag() (bool, error) { return true, nil } +func (s *Server) setVirtualIPTerminatingGatewayVersionFlag() (bool, error) { + val, err := s.getSystemMetadata(structs.SystemMetadataTermGatewayVirtualIPsEnabled) + if err != nil { + return false, err + } + if val != "" { + return true, nil + } + + if ok, _ := ServersInDCMeetMinimumVersion(s, s.config.Datacenter, minVirtualIPTerminatingGatewayVersion); !ok { + return false, fmt.Errorf("can't allocate Virtual IPs for terminating gateways until all servers >= %s", + minVirtualIPTerminatingGatewayVersion.String()) + } + + if err := s.setSystemMetadataKey(structs.SystemMetadataTermGatewayVirtualIPsEnabled, "true"); err != nil { + return false, nil + } + + return true, nil +} + // 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)) { diff --git a/agent/consul/leader_test.go b/agent/consul/leader_test.go index 300e50652..d7f681622 100644 --- a/agent/consul/leader_test.go +++ b/agent/consul/leader_test.go @@ -2134,7 +2134,7 @@ func TestLeader_EnableVirtualIPs(t *testing.T) { c.Bootstrap = false c.BootstrapExpect = 3 c.Datacenter = "dc1" - c.Build = "1.11.0" + c.Build = "1.11.2" } dir1, s1 := testServerWithConfig(t, conf) defer os.RemoveAll(dir1) @@ -2163,6 +2163,10 @@ func TestLeader_EnableVirtualIPs(t *testing.T) { _, entry, err := state.SystemMetadataGet(nil, structs.SystemMetadataVirtualIPsEnabled) require.NoError(t, err) require.Nil(t, entry) + state = s1.fsm.State() + _, entry, err = state.SystemMetadataGet(nil, structs.SystemMetadataTermGatewayVirtualIPsEnabled) + require.NoError(t, err) + require.Nil(t, entry) // Register a connect-native service and make sure we don't have a virtual IP yet. err = state.EnsureRegistration(10, &structs.RegisterRequest{ @@ -2181,6 +2185,35 @@ func TestLeader_EnableVirtualIPs(t *testing.T) { require.NoError(t, err) require.Equal(t, "", vip) + // Register a terminating gateway. + err = state.EnsureRegistration(11, &structs.RegisterRequest{ + Node: "bar", + Address: "127.0.0.2", + Service: &structs.NodeService{ + Service: "tgate1", + ID: "tgate1", + Kind: structs.ServiceKindTerminatingGateway, + }, + }) + require.NoError(t, err) + + err = state.EnsureConfigEntry(12, &structs.TerminatingGatewayConfigEntry{ + Kind: structs.TerminatingGateway, + Name: "tgate1", + Services: []structs.LinkedService{ + { + Name: "bar", + }, + }, + }) + require.NoError(t, err) + + // Make sure the service referenced in the terminating gateway config doesn't have + // a virtual IP yet. + vip, err = state.VirtualIPForService(structs.NewServiceName("bar", nil)) + require.NoError(t, err) + require.Equal(t, "", vip) + // Leave s3 and wait for the version to get updated. require.NoError(t, s3.Leave()) retry.Run(t, func(r *retry.R) { @@ -2188,6 +2221,10 @@ func TestLeader_EnableVirtualIPs(t *testing.T) { require.NoError(r, err) require.NotNil(r, entry) require.Equal(r, "true", entry.Value) + _, entry, err = state.SystemMetadataGet(nil, structs.SystemMetadataTermGatewayVirtualIPsEnabled) + require.NoError(r, err) + require.NotNil(r, entry) + require.Equal(r, "true", entry.Value) }) // Update the connect-native service - now there should be a virtual IP assigned. @@ -2206,6 +2243,34 @@ func TestLeader_EnableVirtualIPs(t *testing.T) { vip, err = state.VirtualIPForService(structs.NewServiceName("api", nil)) require.NoError(t, err) require.Equal(t, "240.0.0.1", vip) + + // Update the terminating gateway config entry - now there should be a virtual IP assigned. + err = state.EnsureConfigEntry(21, &structs.TerminatingGatewayConfigEntry{ + Kind: structs.TerminatingGateway, + Name: "tgate1", + Services: []structs.LinkedService{ + { + Name: "api", + }, + { + Name: "baz", + }, + }, + }) + require.NoError(t, err) + + _, node, err := state.NodeService("bar", "tgate1", nil) + require.NoError(t, err) + sn := structs.ServiceName{Name: "api"} + key := structs.ServiceGatewayVirtualIPTag(sn) + require.Contains(t, node.TaggedAddresses, key) + require.Equal(t, node.TaggedAddresses[key].Address, "240.0.0.1") + + // Make sure the baz service (only referenced in the config entry so far) + // has a virtual IP. + vip, err = state.VirtualIPForService(structs.NewServiceName("baz", nil)) + require.NoError(t, err) + require.Equal(t, "240.0.0.2", vip) } func TestLeader_ACL_Initialization_AnonymousToken(t *testing.T) { diff --git a/agent/consul/state/catalog.go b/agent/consul/state/catalog.go index 8f4b07c2e..90657d841 100644 --- a/agent/consul/state/catalog.go +++ b/agent/consul/state/catalog.go @@ -787,6 +787,32 @@ func ensureServiceTxn(tx WriteTxn, idx uint64, node string, preserveIndexes bool } } + // If there's a terminating gateway config entry for this service, populate the tagged addresses + // with virtual IP mappings. + termGatewayVIPsSupported, err := terminatingGatewayVirtualIPsSupported(tx, nil) + if err != nil { + return err + } + if termGatewayVIPsSupported && svc.Kind == structs.ServiceKindTerminatingGateway { + _, conf, err := configEntryTxn(tx, nil, structs.TerminatingGateway, svc.Service, &svc.EnterpriseMeta) + if err != nil { + return fmt.Errorf("failed to retrieve terminating gateway config: %s", err) + } + if conf != nil { + termGatewayConf := conf.(*structs.TerminatingGatewayConfigEntry) + addrs, err := getTermGatewayVirtualIPs(tx, termGatewayConf.Services, &svc.EnterpriseMeta) + if err != nil { + return err + } + if svc.TaggedAddresses == nil { + svc.TaggedAddresses = make(map[string]structs.ServiceAddress) + } + for key, addr := range addrs { + svc.TaggedAddresses[key] = addr + } + } + } + // Create the service node entry and populate the indexes. Note that // conversion doesn't populate any of the node-specific information. // That's always populated when we read from the state store. @@ -939,6 +965,18 @@ func virtualIPsSupported(tx ReadTxn, ws memdb.WatchSet) (bool, error) { return entry.Value != "", nil } +func terminatingGatewayVirtualIPsSupported(tx ReadTxn, ws memdb.WatchSet) (bool, error) { + _, entry, err := systemMetadataGetTxn(tx, ws, structs.SystemMetadataTermGatewayVirtualIPsEnabled) + if err != nil { + return false, fmt.Errorf("failed system metadata lookup: %s", err) + } + if entry == nil { + return false, nil + } + + return entry.Value != "", nil +} + // Services returns all services along with a list of associated tags. func (s *Store) Services(ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.Services, error) { tx := s.db.Txn(false) @@ -1697,7 +1735,7 @@ func (s *Store) deleteServiceTxn(tx WriteTxn, idx uint64, nodeName, serviceID st if err := cleanupGatewayWildcards(tx, idx, svc); err != nil { return fmt.Errorf("failed to clean up gateway-service associations for %q: %v", name.String(), err) } - if err := freeServiceVirtualIP(tx, svc.ServiceName, entMeta); err != nil { + if err := freeServiceVirtualIP(tx, svc.ServiceName, nil, entMeta); err != nil { return fmt.Errorf("failed to clean up virtual IP for %q: %v", name.String(), err) } if err := cleanupKindServiceName(tx, idx, svc.CompoundServiceName(), svc.ServiceKind); err != nil { @@ -1713,7 +1751,7 @@ func (s *Store) deleteServiceTxn(tx WriteTxn, idx uint64, nodeName, serviceID st // freeServiceVirtualIP is used to free a virtual IP for a service after the last instance // is removed. -func freeServiceVirtualIP(tx WriteTxn, svc string, entMeta *structs.EnterpriseMeta) error { +func freeServiceVirtualIP(tx WriteTxn, svc string, excludeGateway *structs.ServiceName, entMeta *structs.EnterpriseMeta) error { supported, err := virtualIPsSupported(tx, nil) if err != nil { return err @@ -1722,7 +1760,28 @@ func freeServiceVirtualIP(tx WriteTxn, svc string, entMeta *structs.EnterpriseMe return nil } + // Don't deregister the virtual IP if at least one terminating gateway still references this service. sn := structs.NewServiceName(svc, entMeta) + termGatewaySupported, err := terminatingGatewayVirtualIPsSupported(tx, nil) + if err != nil { + return err + } + if termGatewaySupported { + svcGateways, err := tx.Get(tableGatewayServices, indexService, sn) + if err != nil { + return fmt.Errorf("failed gateway lookup for %q: %s", sn.Name, err) + } + + for service := svcGateways.Next(); service != nil; service = svcGateways.Next() { + if svc, ok := service.(*structs.GatewayService); ok && svc != nil { + ignoreGateway := excludeGateway == nil || !svc.Gateway.Matches(*excludeGateway) + if ignoreGateway && svc.GatewayKind == structs.ServiceKindTerminatingGateway { + return nil + } + } + } + } + serviceVIP, err := tx.First(tableServiceVirtualIPs, indexID, sn) if err != nil { return fmt.Errorf("failed service virtual IP lookup: %s", err) @@ -2862,6 +2921,18 @@ func updateGatewayServices(tx WriteTxn, idx uint64, conf structs.ConfigEntry, en return err } + // Update terminating gateway service virtual IPs + vipsSupported, err := terminatingGatewayVirtualIPsSupported(tx, nil) + if err != nil { + return err + } + if vipsSupported && conf.GetKind() == structs.TerminatingGateway { + gatewayConf := conf.(*structs.TerminatingGatewayConfigEntry) + if err := updateTerminatingGatewayVirtualIPs(tx, idx, gatewayConf, entMeta); err != nil { + return err + } + } + // Delete all associated with gateway first, to avoid keeping mappings that were removed sn := structs.NewServiceName(conf.GetName(), entMeta) @@ -2899,6 +2970,96 @@ func updateGatewayServices(tx WriteTxn, idx uint64, conf structs.ConfigEntry, en return nil } +func getTermGatewayVirtualIPs(tx WriteTxn, services []structs.LinkedService, entMeta *structs.EnterpriseMeta) (map[string]structs.ServiceAddress, error) { + addrs := make(map[string]structs.ServiceAddress, len(services)) + for _, s := range services { + sn := structs.ServiceName{Name: s.Name, EnterpriseMeta: *entMeta} + vip, err := assignServiceVirtualIP(tx, sn) + if err != nil { + return nil, err + } + key := structs.ServiceGatewayVirtualIPTag(sn) + addrs[key] = structs.ServiceAddress{Address: vip} + } + + return addrs, nil +} + +func updateTerminatingGatewayVirtualIPs(tx WriteTxn, idx uint64, conf *structs.TerminatingGatewayConfigEntry, entMeta *structs.EnterpriseMeta) error { + // Build the current map of services with virtual IPs for this gateway + services := conf.Services + addrs, err := getTermGatewayVirtualIPs(tx, services, entMeta) + if err != nil { + return err + } + + // Find any deleted service entries by comparing the new config entry to the existing one. + _, existing, err := configEntryTxn(tx, nil, conf.GetKind(), conf.GetName(), entMeta) + if err != nil { + return fmt.Errorf("failed to get config entry: %v", err) + } + var deletes []structs.ServiceName + cfg, ok := existing.(*structs.TerminatingGatewayConfigEntry) + if ok { + for _, s := range cfg.Services { + sn := structs.ServiceName{Name: s.Name, EnterpriseMeta: *entMeta} + key := structs.ServiceGatewayVirtualIPTag(sn) + if _, ok := addrs[key]; !ok { + deletes = append(deletes, sn) + } + } + } + + q := Query{Value: conf.GetName(), EnterpriseMeta: *entMeta} + _, svcNodes, err := serviceNodesTxn(tx, nil, indexService, q) + if err != nil { + return err + } + + // Update the tagged addrs for any existing instances of this terminating gateway. + for _, s := range svcNodes { + newAddrs := make(map[string]structs.ServiceAddress) + for key, addr := range s.ServiceTaggedAddresses { + if !strings.HasPrefix(key, structs.TaggedAddressVirtualIP+":") { + newAddrs[key] = addr + } + } + for key, addr := range addrs { + newAddrs[key] = addr + } + + // Don't need to update the service record if it's a no-op. + if reflect.DeepEqual(newAddrs, s.ServiceTaggedAddresses) { + continue + } + + newSN := s.PartialClone() + newSN.ServiceTaggedAddresses = newAddrs + newSN.ModifyIndex = idx + if err := catalogInsertService(tx, newSN); err != nil { + return err + } + } + + // Check if we can delete any virtual IPs for the removed services. + gatewayName := structs.NewServiceName(conf.GetName(), entMeta) + for _, sn := range deletes { + // If there's no existing service nodes, attempt to free the virtual IP. + q := Query{Value: sn.Name, EnterpriseMeta: sn.EnterpriseMeta} + _, nodes, err := serviceNodesTxn(tx, nil, indexConnect, q) + if err != nil { + return err + } + if len(nodes) == 0 { + if err := freeServiceVirtualIP(tx, sn.Name, &gatewayName, &sn.EnterpriseMeta); err != nil { + return err + } + } + } + + return nil +} + // ingressConfigGatewayServices constructs a list of GatewayService structs for // insertion into the memdb table, specific to ingress gateways. The boolean // returned indicates that there are no changes necessary to the memdb table. diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index c0c2fecde..7ee4e4dce 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -315,8 +315,8 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event events = append(events, e) } - for gatewayName, serviceChanges := range termGatewayChanges { - for serviceName, gsChange := range serviceChanges { + for gatewayName, svcChanges := range termGatewayChanges { + for serviceName, gsChange := range svcChanges { gs := changeObject(gsChange.change).(*structs.GatewayService) q := Query{ @@ -355,6 +355,12 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // Build service events and append them for _, sn := range nodes { tuple := newNodeServiceTupleFromServiceNode(sn) + + // If we're already sending an event for the service, don't send another. + if _, ok := serviceChanges[tuple]; ok { + continue + } + e, err := newServiceHealthEventForService(tx, changes.Index, tuple) if err != nil { return nil, err diff --git a/agent/consul/state/catalog_events_test.go b/agent/consul/state/catalog_events_test.go index 41d5a0961..9becf5bcb 100644 --- a/agent/consul/state/catalog_events_test.go +++ b/agent/consul/state/catalog_events_test.go @@ -73,10 +73,7 @@ func TestServiceHealthSnapshot(t *testing.T) { func TestServiceHealthSnapshot_ConnectTopic(t *testing.T) { store := NewStateStore(nil) - require.NoError(t, store.SystemMetadataSet(0, &structs.SystemMetadataEntry{ - Key: structs.SystemMetadataVirtualIPsEnabled, - Value: "true", - })) + setVirtualIPFlags(t, store) counter := newIndexCounter() err := store.EnsureRegistration(counter.Next(), testServiceRegistration(t, "db")) @@ -1101,28 +1098,34 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { WantEvents: []stream.Event{ testServiceHealthEvent(t, "tgate1", - evServiceTermingGateway("tgate1")), + evServiceTermingGateway("tgate1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2")), testServiceHealthEvent(t, "tgate1", evConnectTopic, - evServiceTermingGateway("srv1")), + evServiceTermingGateway("srv1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2")), testServiceHealthEvent(t, "tgate1", evConnectTopic, - evServiceTermingGateway("srv2")), + evServiceTermingGateway("srv2"), + evTerminatingGatewayVirtualIPs("srv1", "srv2")), testServiceHealthEvent(t, "tgate1", evServiceTermingGateway("tgate1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), evNode2), testServiceHealthEvent(t, "tgate1", evConnectTopic, evServiceTermingGateway("srv1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), evNode2), testServiceHealthEvent(t, "tgate1", evConnectTopic, evServiceTermingGateway("srv2"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), evNode2), }, }) @@ -1161,6 +1164,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { testServiceHealthEvent(t, "tgate1", evServiceTermingGateway("tgate1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), evNodeCheckFail, evNodeUnchanged, evNodeChecksMutated, @@ -1169,6 +1173,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { "tgate1", evConnectTopic, evServiceTermingGateway("srv1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), evNodeCheckFail, evNodeUnchanged, evNodeChecksMutated, @@ -1177,6 +1182,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { "tgate1", evConnectTopic, evServiceTermingGateway("srv2"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), evNodeCheckFail, evNodeUnchanged, evNodeChecksMutated, @@ -1208,16 +1214,26 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { return ensureConfigEntryTxn(tx, tx.Index, configEntry) }, WantEvents: []stream.Event{ + testServiceHealthEvent(t, + "tgate1", + evServiceTermingGateway(""), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), testServiceHealthEvent(t, "tgate1", evConnectTopic, evServiceTermingGateway("srv1"), - evServiceIndex(setupIndex)), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), testServiceHealthEvent(t, "tgate1", evConnectTopic, evServiceTermingGateway("srv2"), - evServiceIndex(setupIndex)), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), }, }) run(t, eventsTestCase{ @@ -1260,11 +1276,26 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { return ensureConfigEntryTxn(tx, tx.Index, configEntry) }, WantEvents: []stream.Event{ + testServiceHealthEvent(t, + "tgate1", + evServiceTermingGateway(""), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), + testServiceHealthEvent(t, + "tgate1", + evConnectTopic, + evServiceTermingGateway("srv1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), testServiceHealthEvent(t, "tgate1", evConnectTopic, evServiceTermingGateway("srv2"), - evServiceIndex(setupIndex)), + evTerminatingGatewayVirtualIPs("srv1", "srv2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), }, }) run(t, eventsTestCase{ @@ -1307,10 +1338,25 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { return ensureConfigEntryTxn(tx, tx.Index, configEntry) }, WantEvents: []stream.Event{ + testServiceHealthEvent(t, + "tgate1", + evServiceTermingGateway(""), + evTerminatingGatewayVirtualIP("srv2", "240.0.0.2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), testServiceHealthDeregistrationEvent(t, "tgate1", evConnectTopic, - evServiceTermingGateway("srv1")), + evServiceTermingGateway("srv1"), + evTerminatingGatewayVirtualIP("srv2", "240.0.0.2"), + evServiceMutatedModifyIndex), + testServiceHealthEvent(t, + "tgate1", + evConnectTopic, + evServiceTermingGateway("srv2"), + evTerminatingGatewayVirtualIP("srv2", "240.0.0.2"), + evServiceIndex(setupIndex), + evServiceMutatedModifyIndex), }, }) run(t, eventsTestCase{ @@ -1327,12 +1373,12 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { }, EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - err := ensureConfigEntryTxn(tx, tx.Index, configEntry) + err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "tgate1", regTerminatingGateway), false) if err != nil { return err } - return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "tgate1", regTerminatingGateway), false) + return ensureConfigEntryTxn(tx, tx.Index, configEntry) }, Mutate: func(s *Store, tx *txn) error { configEntry := &structs.TerminatingGatewayConfigEntry{ @@ -1466,6 +1512,12 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { run(t, eventsTestCase{ Name: "rename a terminating gateway instance", Setup: func(s *Store, tx *txn) error { + err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "tgate1", regTerminatingGateway), false) + if err != nil { + return err + } + configEntry := &structs.TerminatingGatewayConfigEntry{ Kind: structs.TerminatingGateway, Name: "tgate1", @@ -1477,7 +1529,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { }, EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - err := ensureConfigEntryTxn(tx, tx.Index, configEntry) + err = ensureConfigEntryTxn(tx, tx.Index, configEntry) if err != nil { return err } @@ -1492,12 +1544,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { }, EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - err = ensureConfigEntryTxn(tx, tx.Index, configEntry) - if err != nil { - return err - } - return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "tgate1", regTerminatingGateway), false) + return ensureConfigEntryTxn(tx, tx.Index, configEntry) }, Mutate: func(s *Store, tx *txn) error { rename := func(req *structs.RegisterRequest) error { @@ -1511,14 +1558,16 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { WantEvents: []stream.Event{ testServiceHealthDeregistrationEvent(t, "tgate1", - evServiceTermingGateway("tgate1")), + evServiceTermingGateway(""), + evTerminatingGatewayVirtualIPs("srv1")), testServiceHealthEvent(t, "tgate1", evServiceTermingGateway(""), evNodeUnchanged, evServiceMutated, evServiceChecksMutated, - evTerminatingGatewayRenamed("tgate2")), + evTerminatingGatewayRenamed("tgate2"), + evTerminatingGatewayVirtualIPs("srv1")), testServiceHealthDeregistrationEvent(t, "tgate1", evConnectTopic, @@ -1564,15 +1613,18 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { WantEvents: []stream.Event{ testServiceHealthDeregistrationEvent(t, "tgate1", - evServiceTermingGateway("")), + evServiceTermingGateway(""), + evTerminatingGatewayVirtualIPs("srv1", "srv2")), testServiceHealthDeregistrationEvent(t, "tgate1", evConnectTopic, - evServiceTermingGateway("srv1")), + evServiceTermingGateway("srv1"), + evTerminatingGatewayVirtualIPs("srv1", "srv2")), testServiceHealthDeregistrationEvent(t, "tgate1", evConnectTopic, - evServiceTermingGateway("srv2")), + evServiceTermingGateway("srv2"), + evTerminatingGatewayVirtualIPs("srv1", "srv2")), }, }) } @@ -1583,6 +1635,10 @@ func (tc eventsTestCase) run(t *testing.T) { Key: structs.SystemMetadataVirtualIPsEnabled, Value: "true", })) + require.NoError(t, s.SystemMetadataSet(0, &structs.SystemMetadataEntry{ + Key: structs.SystemMetadataTermGatewayVirtualIPsEnabled, + Value: "true", + })) setupIndex := uint64(10) mutateIndex := uint64(100) @@ -1636,6 +1692,14 @@ func evServiceTermingGateway(name string) func(e *stream.Event) error { csn.Service.Kind = structs.ServiceKindTerminatingGateway csn.Service.Port = 22000 + sn := structs.NewServiceName(name, &csn.Service.EnterpriseMeta) + key := structs.ServiceGatewayVirtualIPTag(sn) + if name != "" && name != csn.Service.Service { + csn.Service.TaggedAddresses = map[string]structs.ServiceAddress{ + key: {Address: "240.0.0.1"}, + } + } + if e.Topic == topicServiceHealthConnect { payload := e.Payload.(EventPayloadCheckServiceNode) payload.overrideKey = name @@ -1645,6 +1709,40 @@ func evServiceTermingGateway(name string) func(e *stream.Event) error { } } +func evTerminatingGatewayVirtualIP(name, addr string) func(e *stream.Event) error { + return func(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + + sn := structs.NewServiceName(name, &csn.Service.EnterpriseMeta) + key := structs.ServiceGatewayVirtualIPTag(sn) + csn.Service.TaggedAddresses = map[string]structs.ServiceAddress{ + key: {Address: addr}, + } + + return nil + } +} + +func evTerminatingGatewayVirtualIPs(names ...string) func(e *stream.Event) error { + return func(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + + if len(names) > 0 { + csn.Service.TaggedAddresses = make(map[string]structs.ServiceAddress) + } + for i, name := range names { + sn := structs.NewServiceName(name, &csn.Service.EnterpriseMeta) + key := structs.ServiceGatewayVirtualIPTag(sn) + + csn.Service.TaggedAddresses[key] = structs.ServiceAddress{ + Address: fmt.Sprintf("240.0.0.%d", i+1), + } + } + + return nil + } +} + func evServiceIndex(idx uint64) func(e *stream.Event) error { return func(e *stream.Event) error { payload := e.Payload.(EventPayloadCheckServiceNode) @@ -2040,6 +2138,11 @@ func evServiceMutated(e *stream.Event) error { return nil } +func evServiceMutatedModifyIndex(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Service.ModifyIndex = 100 + return nil +} + // evServiceChecksMutated 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 diff --git a/agent/consul/state/catalog_test.go b/agent/consul/state/catalog_test.go index 1071fea23..b3a41855a 100644 --- a/agent/consul/state/catalog_test.go +++ b/agent/consul/state/catalog_test.go @@ -1551,10 +1551,7 @@ func TestStateStore_EnsureService_connectProxy(t *testing.T) { func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { assert := assert.New(t) s := testStateStore(t) - require.NoError(t, s.SystemMetadataSet(0, &structs.SystemMetadataEntry{ - Key: structs.SystemMetadataVirtualIPsEnabled, - Value: "true", - })) + setVirtualIPFlags(t, s) // Create the service registration. entMeta := structs.DefaultEnterpriseMetaInDefaultPartition() @@ -1687,10 +1684,7 @@ func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { func TestStateStore_EnsureService_ReassignFreedVIPs(t *testing.T) { assert := assert.New(t) s := testStateStore(t) - require.NoError(t, s.SystemMetadataSet(0, &structs.SystemMetadataEntry{ - Key: structs.SystemMetadataVirtualIPsEnabled, - Value: "true", - })) + setVirtualIPFlags(t, s) // Create the service registration. entMeta := structs.DefaultEnterpriseMetaInDefaultPartition() @@ -7986,3 +7980,14 @@ func generateUUID() ([]byte, string) { buf[10:16]) return buf, uuid } + +func setVirtualIPFlags(t *testing.T, s *Store) { + require.NoError(t, s.SystemMetadataSet(0, &structs.SystemMetadataEntry{ + Key: structs.SystemMetadataVirtualIPsEnabled, + Value: "true", + })) + require.NoError(t, s.SystemMetadataSet(0, &structs.SystemMetadataEntry{ + Key: structs.SystemMetadataTermGatewayVirtualIPsEnabled, + Value: "true", + })) +} diff --git a/agent/structs/structs.go b/agent/structs/structs.go index de6a177e9..cb84f77d9 100644 --- a/agent/structs/structs.go +++ b/agent/structs/structs.go @@ -1999,6 +1999,10 @@ func (n ServiceName) ToServiceID() ServiceID { return ServiceID{ID: n.Name, EnterpriseMeta: n.EnterpriseMeta} } +func ServiceGatewayVirtualIPTag(sn ServiceName) string { + return fmt.Sprintf("%s:%s", TaggedAddressVirtualIP, sn.String()) +} + type ServiceList []ServiceName type IndexedServiceList struct { diff --git a/agent/structs/system_metadata.go b/agent/structs/system_metadata.go index dd90ba22c..2c038872b 100644 --- a/agent/structs/system_metadata.go +++ b/agent/structs/system_metadata.go @@ -25,10 +25,11 @@ type SystemMetadataRequest struct { } const ( - SystemMetadataIntentionFormatKey = "intention-format" - SystemMetadataIntentionFormatConfigValue = "config-entry" - SystemMetadataIntentionFormatLegacyValue = "legacy" - SystemMetadataVirtualIPsEnabled = "virtual-ips" + SystemMetadataIntentionFormatKey = "intention-format" + SystemMetadataIntentionFormatConfigValue = "config-entry" + SystemMetadataIntentionFormatLegacyValue = "legacy" + SystemMetadataVirtualIPsEnabled = "virtual-ips" + SystemMetadataTermGatewayVirtualIPsEnabled = "virtual-ips-term-gateway" ) type SystemMetadataEntry struct { diff --git a/agent/xds/listeners.go b/agent/xds/listeners.go index 2dd9c2ca7..319161ff4 100644 --- a/agent/xds/listeners.go +++ b/agent/xds/listeners.go @@ -175,6 +175,15 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. // We do not match on all endpoints here since it would lead to load balancing across // all instances when any instance address is dialed. for _, e := range endpoints { + if e.Service.Kind == structs.ServiceKind(structs.TerminatingGateway) { + key := structs.ServiceGatewayVirtualIPTag(chain.CompoundServiceName()) + + if vip := e.Service.TaggedAddresses[key]; vip.Address != "" { + uniqueAddrs[vip.Address] = struct{}{} + } + + continue + } if vip := e.Service.TaggedAddresses[structs.TaggedAddressVirtualIP]; vip.Address != "" { uniqueAddrs[vip.Address] = struct{}{} } diff --git a/agent/xds/listeners_test.go b/agent/xds/listeners_test.go index 7a3419a24..5c252fad3 100644 --- a/agent/xds/listeners_test.go +++ b/agent/xds/listeners_test.go @@ -1224,6 +1224,54 @@ func TestListenersFromSnapshot(t *testing.T) { } }, }, + { + name: "transparent-proxy-terminating-gateway", + create: proxycfg.TestConfigSnapshot, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.Proxy.Mode = structs.ProxyModeTransparent + + snap.ConnectProxy.MeshConfigSet = true + snap.ConnectProxy.MeshConfig = &structs.MeshConfigEntry{ + TransparentProxy: structs.TransparentProxyMeshConfig{ + MeshDestinationsOnly: true, + }, + } + + // DiscoveryChain without an UpstreamConfig should yield a filter chain when in transparent proxy mode + google := structs.NewServiceName("google", nil) + kafka := structs.NewServiceName("kafka", nil) + snap.ConnectProxy.IntentionUpstreams = map[string]struct{}{ + google.String(): {}, + kafka.String(): {}, + } + snap.ConnectProxy.DiscoveryChain[google.String()] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[kafka.String()] = discoverychain.TestCompileConfigEntries(t, "kafka", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + + tgate := structs.CheckServiceNode{ + Node: &structs.Node{ + Address: "8.8.8.8", + Datacenter: "dc1", + }, + Service: &structs.NodeService{ + Service: "tgate1", + Kind: structs.ServiceKind(structs.TerminatingGateway), + Address: "9.9.9.9", + Port: 9090, + TaggedAddresses: map[string]structs.ServiceAddress{ + structs.ServiceGatewayVirtualIPTag(google): {Address: "10.0.0.1"}, + structs.ServiceGatewayVirtualIPTag(kafka): {Address: "10.0.0.2"}, + "virtual": {Address: "6.6.6.6"}, + }, + }, + } + snap.ConnectProxy.WatchedUpstreamEndpoints[google.String()] = map[string]structs.CheckServiceNodes{ + "google.default.default.dc1": {tgate}, + } + snap.ConnectProxy.WatchedUpstreamEndpoints[kafka.String()] = map[string]structs.CheckServiceNodes{ + "kafka.default.default.dc1": {tgate}, + } + }, + }, } latestEnvoyVersion := proxysupport.EnvoyVersions[0] diff --git a/agent/xds/testdata/listeners/transparent-proxy-terminating-gateway.envoy-1-20-x.golden b/agent/xds/testdata/listeners/transparent-proxy-terminating-gateway.envoy-1-20-x.golden new file mode 100644 index 000000000..5267c8558 --- /dev/null +++ b/agent/xds/testdata/listeners/transparent-proxy-terminating-gateway.envoy-1-20-x.golden @@ -0,0 +1,177 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.db.default.default.dc1", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + } + } + ] + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "outbound_listener:127.0.0.1:15001", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 15001 + } + }, + "filterChains": [ + { + "filterChainMatch": { + "prefixRanges": [ + { + "addressPrefix": "10.0.0.1", + "prefixLen": 32 + } + ] + }, + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.google.default.default.dc1", + "cluster": "google.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + } + } + ] + }, + { + "filterChainMatch": { + "prefixRanges": [ + { + "addressPrefix": "10.0.0.2", + "prefixLen": 32 + } + ] + }, + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.kafka.default.default.dc1", + "cluster": "kafka.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + } + } + ] + } + ], + "listenerFilters": [ + { + "name": "envoy.filters.listener.original_dst" + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "upstream.prepared_query_geo-cache", + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul" + } + } + ] + } + ], + "trafficDirection": "OUTBOUND" + }, + { + "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", + "name": "public_listener:0.0.0.0:9999", + "address": { + "socketAddress": { + "address": "0.0.0.0", + "portValue": 9999 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.filters.network.rbac", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.rbac.v3.RBAC", + "rules": { + + }, + "statPrefix": "connect_authz" + } + }, + { + "name": "envoy.filters.network.tcp_proxy", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", + "statPrefix": "public_listener", + "cluster": "local_app" + } + } + ], + "transportSocket": { + "name": "tls", + "typedConfig": { + "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext", + "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 + } + } + } + ], + "trafficDirection": "INBOUND" + } + ], + "typeUrl": "type.googleapis.com/envoy.config.listener.v3.Listener", + "nonce": "00000001" +} \ No newline at end of file From d32928a98b125dab250445704eb88cd45db29798 Mon Sep 17 00:00:00 2001 From: Kyle Havlovitz Date: Wed, 12 Jan 2022 12:31:28 -0800 Subject: [PATCH 221/404] Add changelog note --- .changelog/12049.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/12049.txt diff --git a/.changelog/12049.txt b/.changelog/12049.txt new file mode 100644 index 000000000..04da55a58 --- /dev/null +++ b/.changelog/12049.txt @@ -0,0 +1,3 @@ +```release-note:improvement +connect: Add support for connecting to services behind a terminating gateway when using a transparent proxy. +``` From 2a0e15cd69350ef322be49e13679f22d16e991c1 Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Wed, 12 Jan 2022 16:10:00 -0500 Subject: [PATCH 222/404] CA certificates relationship HL diagram (#12022) * add diagram and text to explain certificates in consul * use bullet points instead of enumeration * Apply suggestions from code review Co-authored-by: mrspanishviking * remove non needed text and improve image * fix cert naming * move section to the right place * rename DC Co-authored-by: mrspanishviking --- website/content/docs/connect/ca/index.mdx | 17 +++++++++++++++++ website/public/img/cert-relationship.svg | 1 + 2 files changed, 18 insertions(+) create mode 100644 website/public/img/cert-relationship.svg diff --git a/website/content/docs/connect/ca/index.mdx b/website/content/docs/connect/ca/index.mdx index 94d7bf394..d4caf7ed5 100644 --- a/website/content/docs/connect/ca/index.mdx +++ b/website/content/docs/connect/ca/index.mdx @@ -20,6 +20,23 @@ support for using [Vault as a CA](/docs/connect/ca/vault). With Vault, the root certificate and private key material remain with the Vault cluster. +### CA and Certificate relationship + +This diagram shows the relationship between the CA certificates in a Consul primary datacenter and a +secondary Consul datacenter. + +![CA relationship](/img/cert-relationship.svg) + +Leaf certificates are created for two purposes: +- the Leaf Cert Service is used by envoy proxies in the mesh to perform mTLS with other +services. +- the Leaf Cert Client Agent is created by auto-encrypt and auto-config. It is used by +client agents for HTTP API TLS, and for mTLS for RPC requests to servers. + +Any secondary datacenters receive an intermediate certificate, signed by the Primary Root +CA, which is used as the CA certificate to sign leaf certificates in the secondary +datacenter. + ## CA Bootstrapping CA initialization happens automatically when a new Consul leader is elected diff --git a/website/public/img/cert-relationship.svg b/website/public/img/cert-relationship.svg new file mode 100644 index 000000000..735f81ad8 --- /dev/null +++ b/website/public/img/cert-relationship.svg @@ -0,0 +1 @@ + \ No newline at end of file From 2e90c9075df5c508d1d84b3118cc549b40d31599 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 12 Jan 2022 14:04:03 -0800 Subject: [PATCH 223/404] moved consul api gateway to top of nav hierarchy --- website/content/docs/{k8s/connect => }/api-gateway.mdx | 0 website/data/docs-nav-data.json | 8 ++++---- 2 files changed, 4 insertions(+), 4 deletions(-) rename website/content/docs/{k8s/connect => }/api-gateway.mdx (100%) diff --git a/website/content/docs/k8s/connect/api-gateway.mdx b/website/content/docs/api-gateway.mdx similarity index 100% rename from website/content/docs/k8s/connect/api-gateway.mdx rename to website/content/docs/api-gateway.mdx diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index af3f213a3..fcd869740 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -356,6 +356,10 @@ } ] }, + { + "title": "Consul API Gateway BETA", + "path": "api-gateway" + }, { "title": "Kubernetes", "routes": [ @@ -475,10 +479,6 @@ "title": "Transparent Proxy", "href": "/docs/connect/transparent-proxy" }, - { - "title": "Consul API Gateway BETA", - "path": "k8s/connect/api-gateway" - }, { "title": "Ingress Gateways", "path": "k8s/connect/ingress-gateways" From 5a12f2cf20d04ac4cfcf21d1d4850ae30ef9f96c Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Wed, 12 Jan 2022 15:05:01 -0800 Subject: [PATCH 224/404] docs: Use long form of CLI flags (#12030) Use long form of CLI flags in all example commands. Co-authored-by: mrspanishviking Co-authored-by: David Yu --- website/Makefile | 2 +- website/content/api-docs/acl/auth-methods.mdx | 10 +-- .../content/api-docs/acl/binding-rules.mdx | 10 +-- website/content/api-docs/acl/index.mdx | 6 +- website/content/api-docs/acl/policies.mdx | 12 ++-- website/content/api-docs/acl/roles.mdx | 12 ++-- website/content/api-docs/acl/tokens.mdx | 14 ++-- website/content/api-docs/admin-partitions.mdx | 18 ++--- website/content/api-docs/agent/service.mdx | 18 ++--- website/content/api-docs/catalog.mdx | 2 +- .../content/api-docs/connect/intentions.mdx | 6 +- website/content/api-docs/discovery-chain.mdx | 4 +- .../content/api-docs/features/filtering.mdx | 16 ++--- website/content/api-docs/health.mdx | 2 +- website/content/api-docs/namespaces.mdx | 16 ++--- website/content/api-docs/operator/raft.mdx | 2 +- website/content/api-docs/snapshot.mdx | 2 +- website/content/commands/connect/envoy.mdx | 6 +- website/content/commands/index.mdx | 2 +- website/content/commands/partition.mdx | 69 ++++++++++--------- website/content/docs/connect/ca/consul.mdx | 6 +- website/content/docs/connect/dev.mdx | 2 +- website/content/docs/discovery/dns.mdx | 5 +- .../docs/enterprise/admin-partitions.mdx | 66 +++++++++--------- website/content/docs/install/index.mdx | 4 +- .../docs/k8s/connect/connect-ca-provider.mdx | 4 +- website/content/docs/k8s/connect/index.mdx | 6 +- .../docs/k8s/connect/ingress-controllers.mdx | 2 +- .../docs/k8s/connect/ingress-gateways.mdx | 14 ++-- .../docs/k8s/connect/terminating-gateways.mdx | 12 ++-- website/content/docs/k8s/crds/index.mdx | 2 +- website/content/docs/k8s/dns.mdx | 10 +-- website/content/docs/k8s/helm.mdx | 6 +- .../consul-enterprise.mdx | 2 +- .../single-dc-multi-k8s.mdx | 20 +++--- .../content/docs/k8s/installation/install.mdx | 28 ++++---- .../installation/multi-cluster/kubernetes.mdx | 4 +- .../multi-cluster/vms-and-kubernetes.mdx | 4 +- .../k8s/installation/vault/connect-ca.mdx | 6 +- .../k8s/installation/vault/server-tls.mdx | 35 ++++++---- .../k8s/operations/certificate-rotation.mdx | 2 +- .../gossip-encryption-key-rotation.mdx | 18 ++--- .../content/docs/k8s/operations/uninstall.mdx | 19 +++-- website/content/docs/k8s/upgrade/index.mdx | 40 +++++------ .../docs/security/acl/acl-migrate-tokens.mdx | 8 +-- .../docs/security/acl/auth-methods/oidc.mdx | 2 +- .../docs/troubleshoot/common-errors.mdx | 2 +- .../instructions/upgrade-to-1-2-x.mdx | 12 ++-- .../instructions/upgrade-to-1-6-x.mdx | 28 ++++---- .../instructions/upgrade-to-1-8-x.mdx | 12 ++-- 50 files changed, 311 insertions(+), 299 deletions(-) diff --git a/website/Makefile b/website/Makefile index f748ce077..7267737fa 100644 --- a/website/Makefile +++ b/website/Makefile @@ -33,7 +33,7 @@ build: # local Docker image with the dependency changes included. build-image: @echo "==> Building Docker image..." - @docker build -t hashicorp-consul-website-local . + @docker build --tag hashicorp-consul-website-local . # Use this if you have run `build-image` to use the locally built image # rather than our CI-generated image to test dependency changes. diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 9f4ebbbd3..0c840d12f 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -118,7 +118,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/auth-method ``` @@ -174,7 +174,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/auth-method/minikube +$ curl --request GET http://127.0.0.1:8500/v1/acl/auth-method/minikube ``` ### Sample Response @@ -296,7 +296,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/auth-method/minikube ``` @@ -357,7 +357,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ +$ curl --request DELETE \ http://127.0.0.1:8500/v1/acl/auth-method/minikube ``` @@ -397,7 +397,7 @@ The table below shows this endpoint's support for ## Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/auth-methods +$ curl --request GET http://127.0.0.1:8500/v1/acl/auth-methods ``` ### Sample Response diff --git a/website/content/api-docs/acl/binding-rules.mdx b/website/content/api-docs/acl/binding-rules.mdx index b598a5569..74ad21f85 100644 --- a/website/content/api-docs/acl/binding-rules.mdx +++ b/website/content/api-docs/acl/binding-rules.mdx @@ -118,7 +118,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/binding-rule ``` @@ -172,7 +172,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/binding-rule/000ed53c-e2d3-e7e6-31a5-c19bc3518a3d +$ curl --request GET http://127.0.0.1:8500/v1/acl/binding-rule/000ed53c-e2d3-e7e6-31a5-c19bc3518a3d ``` ### Sample Response @@ -297,7 +297,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/binding-rule/000ed53c-e2d3-e7e6-31a5-c19bc3518a3d ``` @@ -352,7 +352,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ +$ curl --request DELETE \ http://127.0.0.1:8500/v1/acl/binding-rule/000ed53c-e2d3-e7e6-31a5-c19bc3518a3d ``` @@ -395,7 +395,7 @@ The table below shows this endpoint's support for ## Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/binding-rules +$ curl --request GET http://127.0.0.1:8500/v1/acl/binding-rules ``` ### Sample Response diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index cd7a20fc6..a9963548f 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -217,7 +217,7 @@ agent "" { ### Sample Request ```shell-session -$ curl -X POST -d @rules.hcl http://127.0.0.1:8500/v1/acl/rules/translate +$ curl --request POST --data @rules.hcl http://127.0.0.1:8500/v1/acl/rules/translate ``` ### Sample Response @@ -256,7 +256,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/rules/translate/4f48f7e6-9359-4890-8e67-6144a962b0a5 +$ curl --request GET http://127.0.0.1:8500/v1/acl/rules/translate/4f48f7e6-9359-4890-8e67-6144a962b0a5 ``` ### Sample Response @@ -384,7 +384,7 @@ deleting a token for which you already must possess its secret. ```shell-session $ curl \ - -H "X-Consul-Token: b78d37c7-0ca7-5f4d-99ee-6d9975ce4586" \ + --header "X-Consul-Token: b78d37c7-0ca7-5f4d-99ee-6d9975ce4586" \ --request POST \ http://127.0.0.1:8500/v1/acl/logout ``` diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index 6fe426d53..cd9bb411d 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -68,7 +68,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/policy ``` @@ -120,7 +120,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/policy/e359bd81-baca-903e-7e64-1ccd9fdc78f5 +$ curl --request GET http://127.0.0.1:8500/v1/acl/policy/e359bd81-baca-903e-7e64-1ccd9fdc78f5 ``` ### Sample Response @@ -170,7 +170,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/policy/name/node-read +$ curl --request GET http://127.0.0.1:8500/v1/acl/policy/name/node-read ``` ### Sample Response @@ -245,7 +245,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/policy/c01a1f82-44be-41b0-a686-685fb6e0f485 ``` @@ -299,7 +299,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ +$ curl --request DELETE \ http://127.0.0.1:8500/v1/acl/policy/8f246b77-f3e1-ff88-5b48-8ec93abf3e05 ``` @@ -339,7 +339,7 @@ The table below shows this endpoint's support for ## Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/policies +$ curl --request GET http://127.0.0.1:8500/v1/acl/policies ``` ### Sample Response diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index 5862fefcf..c5509baa4 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -114,7 +114,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/role ``` @@ -186,7 +186,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/role/aa770e5b-8b0b-7fcf-e5a1-8535fcc388b4 +$ curl --request GET http://127.0.0.1:8500/v1/acl/role/aa770e5b-8b0b-7fcf-e5a1-8535fcc388b4 ``` ### Sample Response @@ -256,7 +256,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/role/name/example-role +$ curl --request GET http://127.0.0.1:8500/v1/acl/role/name/example-role ``` ### Sample Response @@ -372,7 +372,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/role/8bec74a4-5ced-45ed-9c9d-bca6153490bb ``` @@ -441,7 +441,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ +$ curl --request DELETE \ http://127.0.0.1:8500/v1/acl/role/8f246b77-f3e1-ff88-5b48-8ec93abf3e05 ``` @@ -486,7 +486,7 @@ The table below shows this endpoint's support for ## Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/roles +$ curl --request GET http://127.0.0.1:8500/v1/acl/roles ``` ### Sample Response diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index 4bdc026ae..6c3a184be 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -125,7 +125,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/token ``` @@ -187,7 +187,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/token/6a1253d2-1785-24fd-91c2-f8e78c745511 +$ curl --request GET http://127.0.0.1:8500/v1/acl/token/6a1253d2-1785-24fd-91c2-f8e78c745511 ``` ### Sample Response @@ -246,7 +246,7 @@ retrieving the data for a token that you must already possess its secret. ### Sample Request ```shell-session -$ curl -H "X-Consul-Token: 6a1253d2-1785-24fd-91c2-f8e78c745511" \ +$ curl --header "X-Consul-Token: 6a1253d2-1785-24fd-91c2-f8e78c745511" \ http://127.0.0.1:8500/v1/acl/token/self ``` @@ -389,7 +389,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/token/6a1253d2-1785-24fd-91c2-f8e78c745511 ``` @@ -465,7 +465,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ +$ curl --request PUT \ --data @payload.json \ http://127.0.0.1:8500/v1/acl/token/6a1253d2-1785-24fd-91c2-f8e78c745511/clone ``` @@ -534,7 +534,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ +$ curl --request DELETE \ http://127.0.0.1:8500/v1/acl/token/8f246b77-f3e1-ff88-5b48-8ec93abf3e05 ``` @@ -589,7 +589,7 @@ The table below shows this endpoint's support for ## Sample Request ```shell-session -$ curl -X GET http://127.0.0.1:8500/v1/acl/tokens +$ curl --request GET http://127.0.0.1:8500/v1/acl/tokens ``` ### Sample Response diff --git a/website/content/api-docs/admin-partitions.mdx b/website/content/api-docs/admin-partitions.mdx index adf2e0529..13eec37e1 100644 --- a/website/content/api-docs/admin-partitions.mdx +++ b/website/content/api-docs/admin-partitions.mdx @@ -41,15 +41,15 @@ The table below shows this endpoint's support for ```json { "Name": "na-west", - "Description": "Partition for North America West", + "Description": "Partition for North America West" } ``` ### Sample Request ```shell-session -$ curl -X PUT \ - -H "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ +$ curl ---request PUT \ + --header "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ --data @payload.json \ http://127.0.0.1:8500/v1/partition ``` @@ -93,7 +93,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -H "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ +$ curl --header "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ http://127.0.0.1:8500/v1/partition/na-west ``` @@ -145,8 +145,8 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ - -H "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ +$ curl --request PUT \ + --header "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ --data @payload.json \ http://127.0.0.1:8500/v1/partition/na-west ``` @@ -196,8 +196,8 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ - -H "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ +$ curl --request DELETE \ + --header "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ http://127.0.0.1:8500/v1/partition/na-west ``` @@ -234,7 +234,7 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -H "X-Consul-Token: 0137db51-5895-4c25-b6cd-d9ed992f4a52" \ +$ curl --header "X-Consul-Token: 0137db51-5895-4c25-b6cd-d9ed992f4a52" \ http://127.0.0.1:8500/v1/partitions ``` diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index b475b36e4..b446b8a9c 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -274,11 +274,11 @@ The table below shows this endpoint's support for Those endpoints return the aggregated values of all health checks for the service instance(s) and will return the corresponding HTTP codes: -| Result | Meaning | -| ------ | --------------------------------------------------------------- | +| Result | Meaning | +| ------ | ---------------------------------------------------------------- | | `200` | All health checks of every matching service instance are passing | -| `400` | Bad parameter (missing service name of id) | -| `404` | No such service id or name | +| `400` | Bad parameter (missing service name of id) | +| `404` | No such service id or name | | `429` | Some health checks are passing, at least one is warning | | `503` | At least one of the health checks is critical | @@ -305,8 +305,8 @@ Given 2 services with name `web`, with web2 critical and web1 passing: ##### By Name, Text -```shell -$ curl http://localhost:8500/v1/agent/health/service/name/web?format=text +```shell-session +$ curl "http://localhost:8500/v1/agent/health/service/name/web?format=text" critical ``` @@ -438,8 +438,8 @@ Query the health status of the service with ID `web2`. ##### Failure By ID, Text -```shell -$ curl http://localhost:8500/v1/agent/health/service/id/web2?format=text +```shell-session +$ curl "http://localhost:8500/v1/agent/health/service/id/web2?format=text" critical ``` @@ -522,7 +522,7 @@ curl localhost:8500/v1/agent/health/service/id/web2 ##### Success By ID, Text ```shell -$ curl localhost:8500/v1/agent/health/service/id/web1?format=text +$ curl "localhost:8500/v1/agent/health/service/id/web1?format=text" passing ``` diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index 187a03769..b3d8a3b2b 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -159,7 +159,7 @@ and vice versa. A catalog entry can have either, neither, or both. $ curl \ --request PUT \ --data @payload.json \ - -H "X-Consul-Namespace: team-1" \ + --header "X-Consul-Namespace: team-1" \ http://127.0.0.1:8500/v1/catalog/register ``` diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 39912a9b1..46d794081 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -117,7 +117,7 @@ The table below shows this endpoint's support for $ curl \ --request PUT \ --data @payload.json \ - http://127.0.0.1:8500/v1/connect/intentions/exact?source=web&destination=db + "http://127.0.0.1:8500/v1/connect/intentions/exact?source=web&destination=db" ``` ### Sample Response @@ -674,7 +674,7 @@ The table below shows this endpoint's support for ```shell-session $ curl \ - http://127.0.0.1:8500/v1/connect/intentions/check?source=web&destination=db + "http://127.0.0.1:8500/v1/connect/intentions/check?source=web&destination=db" ``` ### Sample Response @@ -736,7 +736,7 @@ The table below shows this endpoint's support for ```shell-session $ curl \ - http://127.0.0.1:8500/v1/connect/intentions/match?by=source&name=web + "http://127.0.0.1:8500/v1/connect/intentions/match?by=source&name=web" ``` ### Sample Response diff --git a/website/content/api-docs/discovery-chain.mdx b/website/content/api-docs/discovery-chain.mdx index bc1d1b00b..8115271d6 100644 --- a/website/content/api-docs/discovery-chain.mdx +++ b/website/content/api-docs/discovery-chain.mdx @@ -209,8 +209,8 @@ redirect { Request: ```shell-session -$ curl -X POST \ - -d' +$ curl --request POST \ + --data ' { "OverrideConnectTimeout": "7s", "OverrideProtocol": "grpc", diff --git a/website/content/api-docs/features/filtering.mdx b/website/content/api-docs/features/filtering.mdx index c5c19e21f..bcf86b9d8 100644 --- a/website/content/api-docs/features/filtering.mdx +++ b/website/content/api-docs/features/filtering.mdx @@ -137,8 +137,8 @@ is executed on the leader. **Command - Unfiltered** -```shell -curl -X GET localhost:8500/v1/agent/services +```shell-session +$ curl --request GET localhost:8500/v1/agent/services ``` **Response - Unfiltered** @@ -227,8 +227,8 @@ curl --get localhost:8500/v1/agent/services --data-urlencode 'filter=Meta.env == **Command - Unfiltered** -```shell -curl -X GET localhost:8500/v1/catalog/service/api-internal +```shell-session +$ curl --request GET localhost:8500/v1/catalog/service/api-internal ``` **Response - Unfiltered** @@ -372,8 +372,8 @@ curl --get localhost:8500/v1/catalog/service/api-internal --data-urlencode 'filt **Command - Unfiltered** -```shell -curl -X GET localhost:8500/v1/health/node/node-1 +```shell-session +$ curl --request GET localhost:8500/v1/health/node/node-1 ``` **Response - Unfiltered** @@ -413,8 +413,8 @@ curl -X GET localhost:8500/v1/health/node/node-1 **Command - Filtered** -```shell -curl -G localhost:8500/v1/health/node/node-1 --data-urlencode 'filter=ServiceName != ""' +```shell-session +$ curl --get localhost:8500/v1/health/node/node-1 --data-urlencode 'filter=ServiceName != ""' ``` **Response - Filtered** diff --git a/website/content/api-docs/health.mdx b/website/content/api-docs/health.mdx index 77721a7cb..82e42b4f3 100644 --- a/website/content/api-docs/health.mdx +++ b/website/content/api-docs/health.mdx @@ -54,7 +54,7 @@ The table below shows this endpoint's support for ```shell-session $ curl \ - -H "X-Consul-Namespace: *" \ + --header "X-Consul-Namespace: *" \ http://127.0.0.1:8500/v1/health/node/my-node ``` diff --git a/website/content/api-docs/namespaces.mdx b/website/content/api-docs/namespaces.mdx index 27da27e12..dabb38dc6 100644 --- a/website/content/api-docs/namespaces.mdx +++ b/website/content/api-docs/namespaces.mdx @@ -98,8 +98,8 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ - -H "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ +$ curl --request PUT \ + --header "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ --data @payload.json \ http://127.0.0.1:8500/v1/namespace ``` @@ -169,7 +169,7 @@ the request has been granted any access in the namespace (read, list or write). ### Sample Request ```shell-session -$ curl -H "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ +$ curl --header "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ http://127.0.0.1:8500/v1/namespace/team-1 ``` @@ -296,8 +296,8 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X PUT \ - -H "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ +$ curl --request PUT \ + --header "X-Consul-Token: 5cdcae6c-0cce-4210-86fe-5dff3b984a6e" \ --data @payload.json \ http://127.0.0.1:8500/v1/namespace/team-1 ``` @@ -372,8 +372,8 @@ The table below shows this endpoint's support for ### Sample Request ```shell-session -$ curl -X DELETE \ - -H "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ +$ curl --request DELETE \ + --header "X-Consul-Token: b23b3cad-5ea1-4413-919e-c76884b9ad60" \ http://127.0.0.1:8500/v1/namespace/team-1 ``` @@ -439,7 +439,7 @@ the request has been granted any access in the namespace (read, list or write). ### Sample Request ```shell-session -$ curl -H "X-Consul-Token: 0137db51-5895-4c25-b6cd-d9ed992f4a52" \ +$ curl --header "X-Consul-Token: 0137db51-5895-4c25-b6cd-d9ed992f4a52" \ http://127.0.0.1:8500/v1/namespaces ``` diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index b56211b2c..995087d95 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -143,5 +143,5 @@ The table below shows this endpoint's support for ```shell-session $ curl \ --request DELETE \ - http://127.0.0.1:8500/v1/operator/raft/peer?address=1.2.3.4:5678 + "http://127.0.0.1:8500/v1/operator/raft/peer?address=1.2.3.4:5678" ``` diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index d94248a1b..07585524d 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -60,7 +60,7 @@ The table below shows this endpoint's support for With a custom datacenter: ```shell-session -$ curl http://127.0.0.1:8500/v1/snapshot?dc=my-datacenter -o snapshot.tgz +$ curl http://127.0.0.1:8500/v1/snapshot?dc=my-datacenter --output snapshot.tgz ``` The above example results in a tarball named `snapshot.tgz` in the current working directory. diff --git a/website/content/commands/connect/envoy.mdx b/website/content/commands/connect/envoy.mdx index 468ed8210..b2a1988e6 100644 --- a/website/content/commands/connect/envoy.mdx +++ b/website/content/commands/connect/envoy.mdx @@ -22,7 +22,7 @@ build for other platforms currently. If the `-bootstrap` option is specified, the bootstrap config is generated in the same way and then printed to stdout. This allows it to be redirected to a -file and used with `envoy -c bootstrap.json`. This works on all operating +file and used with `envoy --config-path bootstrap.json`. This works on all operating systems allowing configuration to be generated on a host that Envoy doesn't build on but then used in a virtualized environment that can run Envoy. @@ -66,7 +66,7 @@ proxy configuration needed. - `-bootstrap` - If present, the command will simply output the generated bootstrap config to stdout in JSON protobuf form. This can be directed to a - file and used to start Envoy with `envoy -c bootstrap.json`. + file and used to start Envoy with `envoy --config-path bootstrap.json`. ~> **Security Note:** If ACLs are enabled the bootstrap JSON will contain the ACL token from `-token` or the environment and so should be handled as a secret. @@ -209,7 +209,7 @@ To pass additional arguments directly to Envoy, for example output logging level, you can use: ```shell-session -$ consul connect envoy -sidecar-for web -- -l debug +$ consul connect envoy -sidecar-for web -- --log-level debug ``` ### Multiple Proxy Instances diff --git a/website/content/commands/index.mdx b/website/content/commands/index.mdx index 2ecd76563..c8144530a 100644 --- a/website/content/commands/index.mdx +++ b/website/content/commands/index.mdx @@ -64,7 +64,7 @@ To get help for any specific command, pass the `-h` flag to the relevant subcommand. For example, to see help about the `join` subcommand: ```shell-session -$ consul join -h +$ consul join --help Usage: consul join [options] address ... Tells a running Consul agent (with "consul agent") to join the cluster diff --git a/website/content/commands/partition.mdx b/website/content/commands/partition.mdx index 8725f817d..ef9142097 100644 --- a/website/content/commands/partition.mdx +++ b/website/content/commands/partition.mdx @@ -73,17 +73,17 @@ consul partition create The admin partition is created according to the values specified in the options. You can specify the following options: -| Option | Description | Default | Required | -| --- | --- | --- | --- | -| `-name` | String value that specifies the name for the new partition. | none | Required | -| `-description`         | String value that specifies a description of the new partition. | none | Optional | -| `-format` | Specifies how to format the output of the operation in the console. | none | Optional | -| `-show-meta` | Prints the description and raft indices to the console in the response.
      This option does not take a value. Include the option when issuing the command to enable. | Disabled | Optional | +| Option | Description | Default | Required | +| ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------- | +| `-name` | String value that specifies the name for the new partition. | none | Required | +| `-description`         | String value that specifies a description of the new partition. | none | Optional | +| `-format` | Specifies how to format the output of the operation in the console. | none | Optional | +| `-show-meta` | Prints the description and raft indices to the console in the response.
      This option does not take a value. Include the option when issuing the command to enable. | Disabled | Optional | In the following example, a partition named `webdev` is created: ```shell-session -consul partition create -name "webdev" -description "Partition for admin of webdev services" -format json -show-meta +$ consul partition create -name "webdev" -description "Partition for admin of webdev services" -format json -show-meta { "Name": "webdev", @@ -109,19 +109,19 @@ Use the following syntax to write from `stdin`: consul partition write - ``` -The definition file or `stdin` values can be provided in JSON or HCL format. Refer to the [Admin Partition Definition](#partition-definition) section for details about the supported parameters. +The definition file or `stdin` values can be provided in JSON or HCL format. Refer to the [Admin Partition Definition](#partition-definition) section for details about the supported parameters. You can specify the following options: -| Option | Description | Default | Required | -| --- | --- | --- | --- | -| `-format` | Specifies how to format the output of the operation in the console. | none | Optional | +| Option | Description | Default | Required | +| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------- | +| `-format` | Specifies how to format the output of the operation in the console. | none | Optional | | `-show-meta`     | Prints the description and raft indices to the console in the response.
      This option does not take a value. Include the option when issuing the command to enable. | Disabled | Optional | In the following example, the `webdev-bu` partition is written using `stdin` values: ```shell-session -consul partition write -format json -show-meta - <<< 'name = "webdev-bu" description = "backup webdev partition"' +$ consul partition write -format json -show-meta - <<< 'name = "webdev-bu" description = "backup webdev partition"' { "Name": "webdev-bu", @@ -141,10 +141,10 @@ consul partition read The admin partition is created according to the values specified in the options. You can specify the following options: -| Option | Description | Default | Required | -| --- | --- | --- | --- | -| `-format`     | Specifies how to format the output of the operation in the console. | none | Optional | -| `-meta` | Prints the description and raft indices to the console in the response.
      This option does not take a value. Include the option when issuing the command to enable. | Disabled | Optional | +| Option | Description | Default | Required | +| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------- | +| `-format`     | Specifies how to format the output of the operation in the console. | none | Optional | +| `-meta` | Prints the description and raft indices to the console in the response.
      This option does not take a value. Include the option when issuing the command to enable. | Disabled | Optional | In the following example, the configuration for the `webdev` partition is read: @@ -168,15 +168,15 @@ consul partition list The admin partition is created according to the values specified in the options. You can specify the following options: -| Option | Description | Default | Required | -| --- | --- | --- | --- | -| `-format` | Specifies how to format the output of the operation in the console. | none | Optional | +| Option | Description | Default | Required | +| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------- | +| `-format` | Specifies how to format the output of the operation in the console. | none | Optional | | `-show-meta` | Prints the description and raft indices to the console in the response.
      This option does not take a value. Include the option when issuing the command to enable. | Disabled | Optional | The following example lists the admin partitions and their meta data in JSON format: ```shell-session -consul partition list -format json -show-meta +$ consul partition list -format json -show-meta [ { @@ -204,8 +204,9 @@ consul partition list -format json -show-meta The `delete` subcommand sends a request to the server to remove the specified partition. ```shell-session -consul partition delete +$ consul partition delete ``` + In the following example, the `webdev-bu` partition is deleted: ```shell-session @@ -218,10 +219,10 @@ Admin partitions are managed exclusively through the HTTP API and the Consul CLI The following parameters are supported in admin partition definition files: -| Option | Description | Default | Required | -| --- | --- | --- | --- | -| `Name` | String value that specifies the name of partition you are creating or writing.
      The value must be valid DNS hostname value. | none | Required | -| `Description` | String value that specifies a description for the partition you are creating or writing.
      The value should provide human-readable information to help other users understand the purpose of the partition. | none | Optional | +| Option | Description | Default | Required | +| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -------- | +| `Name` | String value that specifies the name of partition you are creating or writing.
      The value must be valid DNS hostname value. | none | Required | +| `Description` | String value that specifies a description for the partition you are creating or writing.
      The value should provide human-readable information to help other users understand the purpose of the partition. | none | Optional | ### Example Definition File @@ -236,12 +237,12 @@ Description = "Partition for dev team" You can include the following options to interact with the HTTP API when using the `partition` command. -| Option | Description | Default | Required | -| --- | --- | --- | --- | -| `-ca-file` | Specifies the path to a certificate authority (CA) file when TLS is enabled.
      You can also specify `CONSUL_CACERT` as the value if the environment variable is configured. | none | Required if TLS is enabled | -| `-ca-path` | Specifies the path to a client certificate file when TLS is enabled.
      You can also specify `CONSUL_CAPATH` as the value if the environment variable is configured. | none | Required if TLS is enabled | -| `-client-cert` | Specifies the path to a client certificate file when TLS and the `verify_incoming` option are enabled.
      You can also specify `CONSUL_CLIENT_CERT` as the value if the environment variable is configured. | none | Required if TLS and `verify_incoming` are enabled | -| `-client-key` | Specifies the path to a client key file when TLS and the `verify_incoming` option are enabled.
      You can also specify `CONSUL_CLIENT_KEY` as the value if the environment variable is configured. | none | Required if TLS and `verify_incoming` are enabled | -| `-datacenter` | Specifies the name of the datacenter to query.
      Non-default admin partitions are only supported in the primary datacenter. | Datacenter of the queried agent | Required if the agent is in a non-primary datacenter. | -| `-http-addr` | Specifies the address and port number of the Consul HTTP agent.
      IP and DNS addresses are supported. The address must also include the port.
      You can also specify `CONSUL_HTTP_ADDR` if the environment variable is configured.
      To use an HTTPS address, set the `CONSUL_HTTP_SSL` environment variable to `true`. | `http://127.0.0.1:8500` | Optional | -| `-stale` | Boolean value that enables any Consul server (non-leader) to respond to the request.
      This switch can lower latency and increase throughput, but may result in stale data. This option has no effect on non-read operations. | `false` | Optional | +| Option | Description | Default | Required | +| -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | ----------------------------------------------------- | +| `-ca-file` | Specifies the path to a certificate authority (CA) file when TLS is enabled.
      You can also specify `CONSUL_CACERT` as the value if the environment variable is configured. | none | Required if TLS is enabled | +| `-ca-path` | Specifies the path to a client certificate file when TLS is enabled.
      You can also specify `CONSUL_CAPATH` as the value if the environment variable is configured. | none | Required if TLS is enabled | +| `-client-cert` | Specifies the path to a client certificate file when TLS and the `verify_incoming` option are enabled.
      You can also specify `CONSUL_CLIENT_CERT` as the value if the environment variable is configured. | none | Required if TLS and `verify_incoming` are enabled | +| `-client-key` | Specifies the path to a client key file when TLS and the `verify_incoming` option are enabled.
      You can also specify `CONSUL_CLIENT_KEY` as the value if the environment variable is configured. | none | Required if TLS and `verify_incoming` are enabled | +| `-datacenter` | Specifies the name of the datacenter to query.
      Non-default admin partitions are only supported in the primary datacenter. | Datacenter of the queried agent | Required if the agent is in a non-primary datacenter. | +| `-http-addr` | Specifies the address and port number of the Consul HTTP agent.
      IP and DNS addresses are supported. The address must also include the port.
      You can also specify `CONSUL_HTTP_ADDR` if the environment variable is configured.
      To use an HTTPS address, set the `CONSUL_HTTP_SSL` environment variable to `true`. | `http://127.0.0.1:8500` | Optional | +| `-stale` | Boolean value that enables any Consul server (non-leader) to respond to the request.
      This switch can lower latency and increase throughput, but may result in stale data. This option has no effect on non-read operations. | `false` | Optional | diff --git a/website/content/docs/connect/ca/consul.mdx b/website/content/docs/connect/ca/consul.mdx index bad7effbb..2c7b08d74 100644 --- a/website/content/docs/connect/ca/consul.mdx +++ b/website/content/docs/connect/ca/consul.mdx @@ -45,8 +45,8 @@ connect { The configuration options are listed below. -> **Note**: The first key is the value used in API calls, and the second key - (after the `/`) is used if you are adding the configuration to the agent's - configuration file. +(after the `/`) is used if you are adding the configuration to the agent's +configuration file. - `PrivateKey` / `private_key` (`string: ""`) - A PEM-encoded private key for signing operations. This must match the private key used for the root @@ -103,7 +103,7 @@ In order to use the Update CA Configuration HTTP endpoint, the private key and c must be passed via JSON: ```shell-session -$ jq -n --arg key "$(cat root.key)" --arg cert "$(cat root.crt)" ' +$ jq --null-input --arg key "$(cat root.key)" --arg cert "$(cat root.crt)" ' { "Provider": "consul", "Config": { diff --git a/website/content/docs/connect/dev.mdx b/website/content/docs/connect/dev.mdx index 55b91b6f4..91a5a2352 100644 --- a/website/content/docs/connect/dev.mdx +++ b/website/content/docs/connect/dev.mdx @@ -44,7 +44,7 @@ the example above, the proxy is identifying as `operator-mitchellh`. With the proxy running, we can now use `psql` like normal: ```shell-session -$ psql -h 127.0.0.1 -p 8181 -U mitchellh mydb +$ psql --host=127.0.0.1 --port=8181 --username=mitchellh mydb > ``` diff --git a/website/content/docs/discovery/dns.mdx b/website/content/docs/discovery/dns.mdx index 5de36d932..327940c89 100644 --- a/website/content/docs/discovery/dns.mdx +++ b/website/content/docs/discovery/dns.mdx @@ -314,8 +314,9 @@ In the following example, the `alt_domain` parameter is set to `test-domain`: ``` ```shell-session -$ dig @127.0.0.1 -p 8600 consul.service.test-domain SRV +$ dig @127.0.0.1 -p 8600 consul.service.test-domain SRV ``` + The following responses are returned: ``` @@ -330,7 +331,7 @@ machine.node.dc1.test-domain. 0 IN A 127.0.0.1 machine.node.dc1.test-domain. 0 IN TXT "consul-network-segment=" ``` --> **PTR queries:** Responses to PTR queries (`.in-addr.arpa.`) will always use the +-> **PTR queries:** Responses to PTR queries (`.in-addr.arpa.`) will always use the [primary domain](/docs/agent/options#domain) (not the alternative domain), as there is no way for the query to specify a domain. diff --git a/website/content/docs/enterprise/admin-partitions.mdx b/website/content/docs/enterprise/admin-partitions.mdx index 922d905ed..f55742e40 100644 --- a/website/content/docs/enterprise/admin-partitions.mdx +++ b/website/content/docs/enterprise/admin-partitions.mdx @@ -22,7 +22,7 @@ Admin partitions exist a level above namespaces in the identity hierarchy. They ### Default Admin Partition -Each Consul cluster will have a default admin partition named `default`. The `default` partition must contain the Consul servers. The `default` admin partition is different from other partitions that may be created because the namespaces and resources in this partition are replicated between datacenters when they are federated. +Each Consul cluster will have a default admin partition named `default`. The `default` partition must contain the Consul servers. The `default` admin partition is different from other partitions that may be created because the namespaces and resources in this partition are replicated between datacenters when they are federated. Any resource created without specifying an admin partition will inherit the partition of the ACL token used to create the resource. @@ -39,7 +39,7 @@ When an admin partition is created, it will include the `default` namespace. You ### Cross-datacenter Replication -Only resources in the `default` admin partition will be replicated to secondary datacenters (also see [Known Limitations](#known-limitations)). +Only resources in the `default` admin partition will be replicated to secondary datacenters (also see [Known Limitations](#known-limitations)). ### DNS Queries @@ -82,11 +82,11 @@ Your Consul configuration must meet the following requirements to use admin part One of the primary use cases for admin partitions is for enabling a service mesh across multiple Kubernetes clusters. The following requirements must be met to create admin partitions on Kubernetes: -* Two or more Kubernetes clusters. Consul servers must be deployed to a single cluster. The other clusters should run Consul clients. +* Two or more Kubernetes clusters. Consul servers must be deployed to a single cluster. The other clusters should run Consul clients. * A Consul Enterprise license must be installed on each Kubernetes cluster. * The helm chart for consul-k8s v0.39.0 or greater. * Consul 1.11.1-ent or greater. -* All Consul clients must be able to communicate with the Consul servers in the `default` partition, and all servers must be able to communicate with the clients. +* All Consul clients must be able to communicate with the Consul servers in the `default` partition, and all servers must be able to communicate with the clients. ## Usage @@ -96,16 +96,17 @@ This section describes how to deploy Consul admin partitions to Kubernetes clust The expected use case is to create admin partitions on Kubernetes clusters. This is because many organizations prefer to use cloud-managed Kubernetes offerings to provision separate Kubernetes clusters for individual teams, business units, or environments. This is opposed to deploying a single, large Kubernetes cluster. Organizations encounter problems, however, when they attempt to use a service mesh to enable multi-cluster use cases, such as administration tasks and communication between nodes. -The following procedure will result in an admin partition in each Kubernetes cluster. The Consul clients running in the cluster with servers will be in the `default` partition. Another partition called `clients` will also be created. +The following procedure will result in an admin partition in each Kubernetes cluster. The Consul clients running in the cluster with servers will be in the `default` partition. Another partition called `clients` will also be created. Verify that your Consul deployment meets the [Kubernetes Requirements](#kubernetes-requirements) before proceeding. -1. Verify that your VPC is configured to enable connectivity between the pods running Consul clients and servers. Refer to your virtual cloud provider's documentation for instructions on configuring network connectivity. +1. Verify that your VPC is configured to enable connectivity between the pods running Consul clients and servers. Refer to your virtual cloud provider's documentation for instructions on configuring network connectivity. 1. Create the license secret in each cluster, e.g.: ```shell-session - kubectl create secret generic license --from-file=key=[license file path i.e. ./license.hclic] + $ kubectl create secret generic license --from-file=key=[license file path i.e. ./license.hclic] ``` + This step must also be completed for every cluster. 1. Create a server configuration values file to override the default Consul Helm chart settings: @@ -142,49 +143,49 @@ Verify that your Consul deployment meets the [Kubernetes Requirements](#kubernet enableRedirection: true ``` - + + + Refer to the [Helm Chart Configuration reference](/docs/k8s/helm) for details about the parameters you can specify in the file. - Refer to the [Helm Chart Configuration reference](/docs/k8s/helm) for details about the parameters you can specify in the file. - 1. Install the Consul server(s) using the values file created in the previous step: - ```shell-session - helm install server hashicorp/consul -f server.yaml - ``` -1. After the server starts, get the external IP address for partition service so that it can be added to the client configuration. The partition service is a `LoadBalancer` type. The IP address is used to bootstrap connectivity between servers and clients. ```shell-session - kubectl get service - NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE - kubernetes ClusterIP 10.8.0.1 443/TCP 77m - server-consul-connect-injector-svc ClusterIP 10.8.13.188 443/TCP 76s - server-consul-controller-webhook ClusterIP 10.8.14.178 443/TCP 77s - server-consul-dns ClusterIP 10.8.6.6 53/TCP,53/UDP 77s - server-consul-partition-service LoadBalancer 10.8.1.186 34.135.103.67 8501:31130/TCP,8301:31587/TCP,8300:30378/TCP 76s - server-consul-server ClusterIP None 8501/TCP,8301/TCP,8301/UDP,8302/TCP,8302/UDP,8300/TCP,8600/TCP,8600/UDP 76s - server-consul-ui ClusterIP 10.8.0.218 443/TCP 77s + $ helm install server hashicorp/consul --values server.yaml ``` + +1. After the server starts, get the external IP address for partition service so that it can be added to the client configuration. The IP address is used to bootstrap connectivity between servers and clients. + + ```shell-session + $ kubectl get services --selector="app=consul,component=server" --output jsonpath="{range .items[*]}{@.status.loadBalancer.ingress[*].ip}{end}" + 34.135.103.67 + ``` + 1. Get the Kubernetes authentication method URL for the workload cluster: ```shell-session - kubectl config view -o "jsonpath={.clusters[?(@.name=='')].cluster.server}" + $ kubectl config view --output "jsonpath={.clusters[?(@.name=='')].cluster.server}" ``` - Use the IP address printed to the console to configure the `k8sAuthMethodHost` parameter in the workload configuration file for your client nodes. + + Use the IP address printed to the console to configure the `k8sAuthMethodHost` parameter in the workload configuration file for your client nodes. 1. Copy the server certificate to the workload cluster. ```shell-session - kubectl get secret server-consul-ca-cert --context -o yaml | kubectl apply --context -f - + $ kubectl get secret server-consul-ca-cert --context --output yaml | kubectl apply --context --filename - ``` 1. Copy the server key to the workload cluster. ```shell-session - kubectl get secret server-consul-ca-key --context -o yaml | kubectl apply --context -f - + $ kubectl get secret server-consul-ca-key --context --output yaml | kubectl apply --context --filename - ``` + 1. If ACLs were enabled in the server configuration values file, copy the token to the workload cluster. + ```shell-session - kubectl get secret server-consul-partitions-acl-token --context -o yaml | kubectl apply --context -f - + $ kubectl get secret server-consul-partitions-acl-token --context --output yaml | kubectl apply --context --filename - ``` + 1. Create the workload configuration for client nodes in your cluster. Create a configuration for each admin partition. In the following example, the external IP address and the Kubernetes authentication method IP address from the previous steps have been applied: @@ -236,13 +237,14 @@ Verify that your Consul deployment meets the [Kubernetes Requirements](#kubernet enabled: true enableRedirection: true ``` + 1. Install the workload client clusters: ```shell-session - helm install clients hashicorp/consul -f client.yaml + helm install clients hashicorp/consul --values client.yaml ``` ### Verifying the Deployment @@ -257,13 +259,13 @@ You can log into the Consul UI to verify that the partitions appear as expected. The example command gets the token using the secret name configured in the values file (`bootstrap.secretName`), decodes the secret, and prints the usable token to the console in JSON format. -1. Open the Consul UI in a browser using the external IP address and port number described in a previous step (see [step 5](#get-external-ip-address)). +1. Open the Consul UI in a browser using the external IP address and port number described in a previous step (see [step 5](#get-external-ip-address)). 1. Click **Log in** and enter the decoded token when prompted. You will see the `default` and `clients` partitions available in the **Admin Partition** drop-down menu. ![Partitions will appear in the Admin Partitions drop-down menu within the Consul UI.](/img/admin-partitions/consul-admin-partitions-verify-in-ui.png) - + ## Known Limitations -* Only the `default` admin partition is supported when federating multiple Consul datacenters in a WAN. +* Only the `default` admin partition is supported when federating multiple Consul datacenters in a WAN. diff --git a/website/content/docs/install/index.mdx b/website/content/docs/install/index.mdx index cbda2e1d6..7be522fb6 100644 --- a/website/content/docs/install/index.mdx +++ b/website/content/docs/install/index.mdx @@ -67,12 +67,12 @@ a copy of [`git`](https://www.git-scm.com/) in your `PATH`. ## Verifying the Installation -To verify Consul is properly installed, run `consul -v` on your system. You +To verify Consul is properly installed, run `consul version` on your system. You should see help output. If you are executing it from the command line, make sure it is on your PATH or you may get an error about Consul not being found. ```shell-session -$ consul -v +$ consul version ``` ## Browser Compatibility Considerations diff --git a/website/content/docs/k8s/connect/connect-ca-provider.mdx b/website/content/docs/k8s/connect/connect-ca-provider.mdx index 3b982f66d..d5a824270 100644 --- a/website/content/docs/k8s/connect/connect-ca-provider.mdx +++ b/website/content/docs/k8s/connect/connect-ca-provider.mdx @@ -123,13 +123,13 @@ We will provide this secret and the Vault CA secret, to the Consul server via th 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 +$ helm install consul --values config.yaml hashicorp/consul ``` Verify that the CA provider is set correctly: ```shell-session -$ kubectl exec consul-server-0 -- curl -s http://localhost:8500/v1/connect/ca/configuration\?pretty +$ kubectl exec consul-server-0 -- curl --silent http://localhost:8500/v1/connect/ca/configuration\?pretty { "Provider": "vault", "Config": { diff --git a/website/content/docs/k8s/connect/index.mdx b/website/content/docs/k8s/connect/index.mdx index e77759362..eacd1ed5f 100644 --- a/website/content/docs/k8s/connect/index.mdx +++ b/website/content/docs/k8s/connect/index.mdx @@ -204,7 +204,7 @@ Because transparent proxy is enabled by default, we use Kubernetes DNS to connect to our desired upstream. ```shell-session -$ kubectl exec deploy/static-client -- curl -s http://static-server/ +$ kubectl exec deploy/static-client -- curl --silent http://static-server/ "hello world" ``` @@ -216,7 +216,7 @@ without updating either of the running pods. You can then remove this intention to allow connections again. ```shell-session -$ kubectl exec deploy/static-client -- curl -s http://static-server/ +$ kubectl exec deploy/static-client -- curl --silent http://static-server/ command terminated with exit code 52 ``` @@ -551,7 +551,7 @@ application. To verify the installation, run the ["Accepting Inbound Connections"](/docs/k8s/connect#accepting-inbound-connections) example from the "Usage" section above. After running this example, run -`kubectl get pod static-server -o yaml`. In the raw YAML output, you should +`kubectl get pod static-server --output yaml`. In the raw YAML output, you should see injected Connect containers and an annotation `consul.hashicorp.com/connect-inject-status` set to `injected`. This confirms that injection is working properly. diff --git a/website/content/docs/k8s/connect/ingress-controllers.mdx b/website/content/docs/k8s/connect/ingress-controllers.mdx index 32afe2f93..e8e4c06d1 100644 --- a/website/content/docs/k8s/connect/ingress-controllers.mdx +++ b/website/content/docs/k8s/connect/ingress-controllers.mdx @@ -38,7 +38,7 @@ these annotations to the *pods* of your *ingress controller*. consul.hashicorp.com/connect-inject: "true" # Add the container ports used by your ingress controller consul.hashicorp.com/transparent-proxy-exclude-inbound-ports: "80,8000,9000,8443" - # And the CIDR of your Kubernetes API: `kubectl get svc kubernetes -o jsonpath='{.spec.clusterIP}' + # And the CIDR of your Kubernetes API: `kubectl get svc kubernetes --output jsonpath='{.spec.clusterIP}' consul.hashicorp.com/transparent-proxy-exclude-outbound-cidrs: "10.108.0.1/32" ``` diff --git a/website/content/docs/k8s/connect/ingress-gateways.mdx b/website/content/docs/k8s/connect/ingress-gateways.mdx index fa3cd1162..17bf2e67b 100644 --- a/website/content/docs/k8s/connect/ingress-gateways.mdx +++ b/website/content/docs/k8s/connect/ingress-gateways.mdx @@ -95,7 +95,7 @@ used by the Helm chart when enabling ingress gateways. Apply the `IngressGateway` resource with `kubectl apply`: ```shell-session -$ kubectl apply -f ingress-gateway.yaml +$ kubectl apply --filename ingress-gateway.yaml ingressgateway.consul.hashicorp.com/ingress-gateway created ``` @@ -118,7 +118,7 @@ spec: Apply the `ServiceDefaults` resource with `kubectl apply`: ```shell-session -$ kubectl apply -f service-defaults.yaml +$ kubectl apply --filename service-defaults.yaml servicedefaults.consul.hashicorp.com/static-server created ``` @@ -174,7 +174,7 @@ spec: Apply the `ServiceIntentions` resource with `kubectl apply`: ```shell-session -$ kubectl apply -f service-intentions.yaml +$ kubectl apply --filename service-intentions.yaml serviceintentions.consul.hashicorp.com/ingress-gateway created ``` @@ -236,7 +236,7 @@ spec: ```shell-session -$ kubectl apply -f static-server.yaml +$ kubectl apply --filename static-server.yaml ``` ## Connecting to your application @@ -249,9 +249,9 @@ If TLS is enabled, use: [https://localhost:8501/ui/dc1/services/static-server/in You can also validate the connectivity of the application from the ingress gateway using `curl`: ```shell-session -$ EXTERNAL_IP=$(kubectl get services | grep ingress-gateway | awk ‘{print $4}’) +$ EXTERNAL_IP=$(kubectl get services --selector component=ingress-gateway --output jsonpath="{range .items[*]}{@.status.loadBalancer.ingress[*].ip}{end}") $ echo "Connecting to \"$EXTERNAL_IP\"" -$ curl -H "Host: static-server.ingress.consul" "http://$EXTERNAL_IP:8080" +$ curl --header "Host: static-server.ingress.consul" "http://$EXTERNAL_IP:8080" "hello world" ``` @@ -282,5 +282,5 @@ ingressGateways: And run Helm upgrade: ```shell-session -$ helm upgrade consul hashicorp/consul -f config.yaml +$ helm upgrade consul hashicorp/consul --values config.yaml ``` diff --git a/website/content/docs/k8s/connect/terminating-gateways.mdx b/website/content/docs/k8s/connect/terminating-gateways.mdx index c98002c63..9326b695e 100644 --- a/website/content/docs/k8s/connect/terminating-gateways.mdx +++ b/website/content/docs/k8s/connect/terminating-gateways.mdx @@ -127,14 +127,14 @@ Create a sample external service and register it with Consul. Register the external service with Consul: ```shell-session -$ curl --request PUT --data @external.json -k $CONSUL_HTTP_ADDR/v1/catalog/register +$ curl --request PUT --data @external.json --insecure $CONSUL_HTTP_ADDR/v1/catalog/register true ``` If ACLs and TLS are enabled : ```shell-session -$ curl --request PUT --header "X-Consul-Token: $CONSUL_HTTP_TOKEN" --data @external.json -k $CONSUL_HTTP_ADDR/v1/catalog/register +$ curl --request PUT --header "X-Consul-Token: $CONSUL_HTTP_TOKEN" --data @external.json --insecure $CONSUL_HTTP_ADDR/v1/catalog/register true ``` @@ -219,7 +219,7 @@ container (`/etc/ssl/cert.pem`). Apply the `TerminatingGateway` resource with `kubectl apply`: ```shell-session -$ kubectl apply -f terminating-gateway.yaml +$ kubectl apply --filename terminating-gateway.yaml ``` If using ACLs and TLS, create a [`ServiceIntentions`](/docs/connect/config-entries/service-intentions) resource to allow access from services in the mesh to the external service @@ -244,7 +244,7 @@ spec: Apply the `ServiceIntentions` resource with `kubectl apply`: ```shell-session -$ kubectl apply -f service-intentions.yaml +$ kubectl apply --filename service-intentions.yaml ``` ### Define the external services as upstreams for services in the mesh @@ -301,7 +301,7 @@ spec: Run the service via `kubectl apply`: ```shell-session -$ kubectl apply -f static-client.yaml +$ kubectl apply --filename static-client.yaml ``` Wait for the service to be ready: @@ -314,5 +314,5 @@ deployment "static-client" successfully rolled out You can verify connectivity of the static-client and terminating gateway via a curl command: ```shell-session -$ kubectl exec deploy/static-client -- curl -vvvs -H "Host: example-https.com" http://localhost:1234/ +$ kubectl exec deploy/static-client -- curl -vvvs --header "Host: example-https.com" http://localhost:1234/ ``` diff --git a/website/content/docs/k8s/crds/index.mdx b/website/content/docs/k8s/crds/index.mdx index d0ba9ff7b..03757ff1d 100644 --- a/website/content/docs/k8s/crds/index.mdx +++ b/website/content/docs/k8s/crds/index.mdx @@ -93,7 +93,7 @@ Once installed, you can use `kubectl` to create and manage Consul's configuratio You can create configuration entries via `kubectl apply`. ```shell-session -$ cat < ```shell-session -$ kubectl apply -f job.yaml +$ kubectl apply --filename job.yaml ``` Then query the pod name for the job and check the logs. You should see diff --git a/website/content/docs/k8s/helm.mdx b/website/content/docs/k8s/helm.mdx index d721523a5..788b86382 100644 --- a/website/content/docs/k8s/helm.mdx +++ b/website/content/docs/k8s/helm.mdx @@ -762,9 +762,9 @@ Use these links to navigate to a particular top-level stanza. You could retrieve this value from your `kubeconfig` by running: - ```shell - kubectl config view \ - -o jsonpath="{.clusters[?(@.name=='')].cluster.server}" + ```shell-session + $ kubectl config view \ + --output jsonpath="{.clusters[?(@.name=='')].cluster.server}" ``` ### client diff --git a/website/content/docs/k8s/installation/deployment-configurations/consul-enterprise.mdx b/website/content/docs/k8s/installation/deployment-configurations/consul-enterprise.mdx index 38823f24a..201257249 100644 --- a/website/content/docs/k8s/installation/deployment-configurations/consul-enterprise.mdx +++ b/website/content/docs/k8s/installation/deployment-configurations/consul-enterprise.mdx @@ -66,7 +66,7 @@ server: Now run `helm install`: ```shell-session -$ helm install --wait hashicorp hashicorp/consul -f config.yaml +$ helm install --wait hashicorp hashicorp/consul --values config.yaml ``` Once the cluster is up, you can verify the nodes are running Consul Enterprise by diff --git a/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx b/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx index 22950ab96..01c8b30d9 100644 --- a/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx +++ b/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx @@ -61,7 +61,7 @@ $ kubectl create secret generic consul-gossip-encryption-key --from-literal=key= Now we can install our Consul cluster with Helm: ```shell -$ helm install cluster1 -f cluster1-config.yaml hashicorp/consul +$ helm install cluster1 --values cluster1-config.yaml hashicorp/consul ``` ~> **Note:** The Helm release name must be unique for each Kubernetes cluster. @@ -74,8 +74,8 @@ we need to extract the gossip encryption key we've created, the CA certificate and the ACL bootstrap token generated during installation, so that we can apply them to our second Kubernetes cluster. -```shell -kubectl get secret consul-gossip-encryption-key cluster1-consul-ca-cert cluster1-consul-bootstrap-acl-token -o yaml > cluster1-credentials.yaml +```shell-session +$ kubectl get secret consul-gossip-encryption-key cluster1-consul-ca-cert cluster1-consul-bootstrap-acl-token --output yaml > cluster1-credentials.yaml ``` ## Deploying Consul clients in the second cluster @@ -86,8 +86,8 @@ that will join the first Consul cluster. First, we need to apply credentials we've extracted from the first cluster to the second cluster: -```shell -$ kubectl apply -f cluster1-credentials.yaml +```shell-session +$ kubectl apply --filename cluster1-credentials.yaml ``` To deploy in the second cluster, we will use the following Helm configuration: @@ -140,7 +140,7 @@ Next, we need to set up the `externalServers` configuration. The `externalServers.hosts` and `externalServers.httpsPort` refer to the IP and port of the UI's NodePort service deployed in the first cluster. Set the `externalServers.hosts` to any Node IP of the first cluster, -which you can see by running `kubectl get nodes -o wide`. +which you can see by running `kubectl get nodes --output wide`. Set `externalServers.httpsPort` to the `nodePort` of the `cluster1-consul-ui` service. In our example, the port is `31557`. @@ -182,8 +182,8 @@ for more details. Now we're ready to install! -```shell -helm install cluster2 -f cluster2-config.yaml hashicorp/consul +```shell-session +$ helm install cluster2 --values cluster2-config.yaml hashicorp/consul ``` ## Verifying the Consul Service Mesh works @@ -311,7 +311,7 @@ spec: Once both services are up and running, we can connect to the `static-server` from `static-client`: -```shell -$ kubectl exec deploy/static-client -- curl -s localhost:1234 +```shell-session +$ kubectl exec deploy/static-client -- curl --silent localhost:1234 "hello world" ``` diff --git a/website/content/docs/k8s/installation/install.mdx b/website/content/docs/k8s/installation/install.mdx index 09577c4e2..e9baea8f8 100644 --- a/website/content/docs/k8s/installation/install.mdx +++ b/website/content/docs/k8s/installation/install.mdx @@ -1,6 +1,6 @@ --- layout: docs -page_title: Installing Consul on Kubernetes +page_title: Installing Consul on Kubernetes 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 @@ -27,22 +27,22 @@ mesh](https://learn.hashicorp.com/tutorials/consul/service-mesh-deploy?utm_sourc ## Consul K8s CLI Installation -We recommend using the [Consul K8S CLI](/docs/k8s/k8s-cli) to install Consul on Kubernetes for single-cluster deployments. You can install Consul on Kubernetes using the Consul K8s CLI tool after installing the CLI. +We recommend using the [Consul K8S CLI](/docs/k8s/k8s-cli) to install Consul on Kubernetes for single-cluster deployments. You can install Consul on Kubernetes using the Consul K8s CLI tool after installing the CLI. -Before beginning the installation process, verify that `kubectl` is already configured to authenticate to the Kubernetes cluster using a valid `kubeconfig` file. +Before beginning the installation process, verify that `kubectl` is already configured to authenticate to the Kubernetes cluster using a valid `kubeconfig` file. The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. 1. Install the HashiCorp `tap`, which is a repository of all Homebrew packages for HashiCorp: ```shell-session - brew tap hashicorp/tap + $ brew tap hashicorp/tap ``` - + 1. Install the Consul K8s CLI with the `hashicorp/tap/consul` formula. ```shell-session - brew install hashicorp/tap/consul-k8s + $ brew install hashicorp/tap/consul-k8s ``` - + 1. Issue the `install` subcommand to install Consul on Kubernetes: ```shell-session @@ -123,7 +123,7 @@ The Consul Helm only supports Helm 3.2+. Install the latest version of the Helm ``` 1. Prior to installing via Helm, ensure that the `consul` Kubernetes namespace does not exist, as installing on a dedicated namespace - is recommended. + is recommended. ```shell-session $ kubectl get namespace @@ -134,11 +134,11 @@ The Consul Helm only supports Helm 3.2+. Install the latest version of the Helm kube-system Active 18h ``` -1. Issue the following command to install Consul with the default configuration using Helm. You could also install Consul on a dedicated +1. Issue the following command to install Consul with the default configuration using Helm. You could also install Consul on a dedicated namespace of your choosing by modifying the value of the `-n` flag for the Helm install. ```shell-session - $ helm install consul hashicorp/consul --set global.name=consul --create-namespace -n consul + $ helm install consul hashicorp/consul --set global.name=consul --create-namespace --namespace consul NAME: consul ... ``` @@ -169,10 +169,10 @@ controller: -Once you've created your `config.yaml` file, run `helm install` with the `-f` flag: +Once you've created your `config.yaml` file, run `helm install` with the `--values` flag: ```shell-session -$ helm install consul hashicorp/consul --create-namespace -n consul -f config.yaml +$ helm install consul hashicorp/consul --create-namespace --namespace consul --values config.yaml NAME: consul ... ``` @@ -191,7 +191,7 @@ use `kubectl port-forward` to visit the UI. If running with TLS disabled, the Consul UI will be accessible via http on port 8500: ```shell-session -$ kubectl port-forward service/consul-server -n consul 8500:8500 +$ kubectl port-forward service/consul-server --namespace consul 8500:8500 ... ``` @@ -202,7 +202,7 @@ Once the port is forwarded navigate to [http://localhost:8500](http://localhost: If running with TLS enabled, the Consul UI will be accessible via https on port 8501: ```shell-session -$ kubectl port-forward service/consul-server -n consul 8501:8501 +$ kubectl port-forward service/consul-server --namespace consul 8501:8501 ... ``` diff --git a/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx b/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx index c48166623..bbb652007 100644 --- a/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx @@ -224,7 +224,7 @@ After the installation into your primary cluster you will need to export this secret: ```shell-session -$ kubectl get secret consul-federation -o yaml > consul-federation-secret.yaml +$ kubectl get secret consul-federation --output yaml > consul-federation-secret.yaml ``` !> **Security note:** The federation secret makes it possible to gain @@ -249,7 +249,7 @@ Switched to context "dc2". And import the secret: ```shell-session -$ kubectl apply -f consul-federation-secret.yaml +$ kubectl apply --filename consul-federation-secret.yaml secret/consul-federation configured ``` diff --git a/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx b/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx index d40bb0261..f003ceefc 100644 --- a/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx @@ -99,7 +99,7 @@ Retrieve the WAN addresses of the mesh gateways: ```shell-session $ kubectl exec statefulset/consul-server -- sh -c \ - 'curl -sk https://localhost:8501/v1/catalog/service/mesh-gateway | jq ".[].ServiceTaggedAddresses.wan"' + 'curl --silent --insecure https://localhost:8501/v1/catalog/service/mesh-gateway | jq ".[].ServiceTaggedAddresses.wan"' { "Address": "1.2.3.4", "Port": 443 @@ -125,7 +125,7 @@ primary_gateways = ["1.2.3.4:443"] If ACLs are enabled, you'll also need the replication ACL token: ```shell-session -$ kubectl get secrets/consul-acl-replication-acl-token --template='{{.data.token}}' +$ kubectl get secrets/consul-acl-replication-acl-token --template='{{.data.token | base64decode}}' e7924dd1-dc3f-f644-da54-81a73ba0a178 ``` diff --git a/website/content/docs/k8s/installation/vault/connect-ca.mdx b/website/content/docs/k8s/installation/vault/connect-ca.mdx index 6c33e161a..97d4e0db7 100644 --- a/website/content/docs/k8s/installation/vault/connect-ca.mdx +++ b/website/content/docs/k8s/installation/vault/connect-ca.mdx @@ -29,10 +29,10 @@ vault write auth/kubernetes/role/consul-server \ ``` To find out the service account name of the Consul server, -you can run: +you can run: ```shell-session -helm template --release-name -s templates/server-serviceaccount.yaml hashicorp/consul +$ helm template --release-name --show-only templates/server-serviceaccount.yaml hashicorp/consul ``` Now we can configure the Consul Helm chart to use Vault as the Connect CA provider: @@ -58,7 +58,7 @@ address if the Vault cluster is running the same Kubernetes cluster. The `rootPKIPath` and `intermediatePKIPath` should be the same as the ones defined in your Connect CA policy. Behind the scenes, Consul will authenticate to Vault using a Kubernetes service account using the [Kubernetes auth method](https://www.vaultproject.io/docs/auth/kubernetes) and will use the Vault token for any API calls to Vault. If the Vault token can not be renewed, Consul will re-authenticate to -generate a new Vault token. +generate a new Vault token. The `vaultCASecret` is the Kubernetes secret that stores the CA Certificate that is used for Vault communication. To provide a CA, you first need to create a Kubernetes secret containing the CA. For example, you may create a secret with the Vault CA like so: diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 4669556bb..7ace8c2e2 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -14,26 +14,32 @@ To use Vault to issue Server TLS certificates the following will be needed: 1. Create Vault Policies that will allow the Consul components, e.g. ingress gateways, controller, to access the CA url. 1. Create Kubernetes auth roles that link these policies to the Kubernetes service accounts of the Consul components. - ### Bootstrapping the PKI Engine + First, we need to bootstrap the Vault cluster by enabling and configuring the PKI Secrets Engine to be able to serve TLS certificates to Consul. The process can be as simple as the following, or more complicated such as in this [example](https://learn.hashicorp.com/tutorials/consul/vault-pki-consul-secure-tls) which also uses an intermediate signing authority. * Enable the PKI Secrets Engine: + ```shell-session -vault secrets enable pki +$ vault secrets enable pki ``` + * Tune the engine to enable longer TTL: + ```shell-session -vault secrets tune -max-lease-ttl=87600h pki +$ vault secrets tune -max-lease-ttl=87600h pki ``` + * Generate the root CA + ```shell-session -vault write -field=certificate pki/root/generate/internal \ +$ vault write -field=certificate pki/root/generate/internal \ common_name="dc1.consul" \ ttl=87600h ``` + -> **Note:** Where `common_name` is comprised of combining `global.datacenter` dot `global.domain`. ### Create Vault Policies for the Server TLS Certificates @@ -50,8 +56,9 @@ path "pki/issue/consul-server" { ``` ```shell-session -vault policy write consul-server consul-server-policy.hcl +$ vault policy write consul-server consul-server-policy.hcl ``` + -> **Note:** The PKI secret path referenced by the above Policy will be your `server.serverCert.secretName` Helm value. ### Create Vault Policies for the CA URL @@ -67,8 +74,9 @@ path "pki/cert/ca" { ``` ```shell-session -vault policy write ca-policy ca-policy.hcl +$ vault policy write ca-policy ca-policy.hcl ``` + -> **Note:** The PKI secret path referenced by the above Policy will be your `global.tls.caCert.secretName` Helm value. ### Create Vault Roles for the PKI engine, Consul servers and components @@ -115,14 +123,16 @@ $ vault write auth/kubernetes/role/consul-server \ To find out the service account name of the Consul server, you can run: + ```shell-session - helm template --release-name -s templates/server-serviceaccount.yaml hashicorp/consul + $ helm template --release-name --show-only templates/server-serviceaccount.yaml hashicorp/consul ``` -> **Note:** Should you enable other supported features such as gossip-encryption be sure to append additional policies to -the Kube auth role in a comma separated value e.g. `policies=consul-server,consul-gossip` +the Kube auth role in a comma separated value e.g. `policies=consul-server,consul-gossip` Role for Consul clients: + ```shell-session $ vault write auth/kubernetes/role/consul-client \ bound_service_account_names= \ @@ -133,7 +143,7 @@ $ vault write auth/kubernetes/role/consul-client \ To find out the service account name of the Consul client, use the command below. ```shell-session - $ helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul + $ helm template --release-name --show-only templates/client-serviceaccount.yaml hashicorp/consul ``` -> **Note:** Should you enable other supported features such as gossip-encryption, ensure you append additional policies to @@ -151,7 +161,6 @@ $ vault write auth/kubernetes/role/consul-ca \ The above Vault Roles will now be your Helm values for `global.secretsBackend.vault.consulServerRole` and `global.secretsBackend.vault.consulCARole` respectively. - ## Deploying the Consul Helm chart Now that we've configured Vault, you can configure the Consul Helm chart to @@ -174,9 +183,9 @@ server: serverCert: secretName: "pki/issue/consul-server" extraVolumes: - - type: "secret" - name: - load: "false" + - type: "secret" + name: + load: "false" ``` The `vaultCASecret` is the Kubernetes secret that stores the CA Certificate that is used for Vault communication. To provide a CA, you first need to create a Kubernetes secret containing the CA. For example, you may create a secret with the Vault CA like so: diff --git a/website/content/docs/k8s/operations/certificate-rotation.mdx b/website/content/docs/k8s/operations/certificate-rotation.mdx index f10100100..6a73fdf48 100644 --- a/website/content/docs/k8s/operations/certificate-rotation.mdx +++ b/website/content/docs/k8s/operations/certificate-rotation.mdx @@ -19,7 +19,7 @@ To explicitly perform server certificate rotation, follow these steps: 1. Perform a `helm upgrade`: ```shell-session - helm upgrade consul hashicorp/consul -f /path/to/my/values.yaml + $ helm upgrade consul hashicorp/consul --values /path/to/my/values.yaml ``` This should run the `tls-init` job that will generate new Server certificates. diff --git a/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx b/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx index d4b5f1dcb..9a6b06759 100644 --- a/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx +++ b/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx @@ -8,21 +8,21 @@ description: Rotate the Gossip Encryption Key on Kubernetes Cluster safely The following instructions provides a step-by-step manual process for rotating [gossip encryption](/docs/security/encryption#gossip-encryption) keys on Consul clusters that are deployed onto a Kubernetes cluster with Consul on Kubernetes. -The following steps should only be performed in the *primary datacenter* if your Consul clusters are [federated](https://www.consul.io/docs/k8s/installation/multi-cluster/kubernetes). Rotating the gossip encryption in the primary datacenter will automatically rotate the gossip encryption in the secondary datacenters. +The following steps should only be performed in the *primary datacenter* if your Consul clusters are [federated](https://www.consul.io/docs/k8s/installation/multi-cluster/kubernetes). Rotating the gossip encryption in the primary datacenter will automatically rotate the gossip encryption in the secondary datacenters. --> **Note:** Careful precaution should be taken to prohibit new clients from joining during the gossip encryption rotation process, otherwise the new clients will join the gossip pool without knowledge of the new primary gossip encryption key. In addition, deletion of a gossip encryption key from the keyring should occur only after clients have safely migrated to utilizing the new gossip encryption key for communication. +-> **Note:** Careful precaution should be taken to prohibit new clients from joining during the gossip encryption rotation process, otherwise the new clients will join the gossip pool without knowledge of the new primary gossip encryption key. In addition, deletion of a gossip encryption key from the keyring should occur only after clients have safely migrated to utilizing the new gossip encryption key for communication. 1. (Optional) If Consul is installed in a dedicated namespace, set the kubeConfig context to the consul namespace. Otherwise, subsequent commands will need to include -n consul. ```shell-session kubectl config set-context --current --namespace=consul ``` -1. Generate a new key and store in safe place for retrieval in the future ([Vault KV Secrets Engine](https://www.vaultproject.io/docs/secrets/kv/kv-v2#usage) is a recommended option). +1. Generate a new key and store in safe place for retrieval in the future ([Vault KV Secrets Engine](https://www.vaultproject.io/docs/secrets/kv/kv-v2#usage) is a recommended option). ```shell-session - consul keygen + $ consul keygen ``` - + This should generate a new key which can be used as the gossip encryption key. In this example, we will be using `Wa6/XFAnYy0f9iqVH2iiG+yore3CqHSemUy4AIVTa/w=` as the replacement gossip encryption key. @@ -37,9 +37,9 @@ The following steps should only be performed in the *primary datacenter* if your 1. **Note:** If ACLs are enabled, export the bootstrap token as the CONSUL_HTTP_TOKEN to perform all `consul keyring` operations. The bootstrap token can be found in the Kubernetes secret `consul-bootstrap-acl-token` of the primary datacenter. ```shell-session - export CONSUL_HTTP_TOKEN= + $ export CONSUL_HTTP_TOKEN= ``` - + 1. Install the new Gossip encryption key with the `consul keyring` command: ```shell-session @@ -107,7 +107,7 @@ The following steps should only be performed in the *primary datacenter* if your ``` ```shell-session - kubectl patch secret consul-gossip-encryption-key -p '{"stringData":{"key": "Wa6/XFAnYy0f9iqVH2iiG+yore3CqHSemUy4AIVTa/w="}}' + $ kubectl patch secret consul-gossip-encryption-key --patch='{"stringData":{"key": "Wa6/XFAnYy0f9iqVH2iiG+yore3CqHSemUy4AIVTa/w="}}' ``` **Note:** In the case of federated Consul clusters, update the federation-secret value for the gossip encryption key. The name of the secret and key can be found in the values file of the secondary datacenter. @@ -120,7 +120,7 @@ The following steps should only be performed in the *primary datacenter* if your ``` ```shell-session - kubectl patch secret consul-federation -p '{"stringData":{"gossipEncryptionKey": "Wa6/XFAnYy0f9iqVH2iiG+yore3CqHSemUy4AIVTa/w="}}' + $ kubectl patch secret consul-federation --patch='{"stringData":{"gossipEncryptionKey": "Wa6/XFAnYy0f9iqVH2iiG+yore3CqHSemUy4AIVTa/w="}}' ``` 1. Remove the old key once the new one has been installed successfully. diff --git a/website/content/docs/k8s/operations/uninstall.mdx b/website/content/docs/k8s/operations/uninstall.mdx index ea8e34efb..b57ff2e6e 100644 --- a/website/content/docs/k8s/operations/uninstall.mdx +++ b/website/content/docs/k8s/operations/uninstall.mdx @@ -16,7 +16,6 @@ Issue the `consul-k8s uninstall` command to remove Consul on Kubernetes. You can $ consul-k8s uninstall ``` - In the following example, Consul will be uninstalled and the data removed without prompting you to verify the operations: ```shell-session @@ -29,18 +28,18 @@ Refer to the [Consul K8s CLI reference](/docs/k8s/k8s-cli#uninstall) topic for d Run the `helm uninstall` **and** manually remove resources that Helm does not delete. -1. Although the Helm chart automates the deletion of CRDs upon uninstallation, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. +1. Although the Helm chart automates the deletion of CRDs upon uninstallation, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. ```shell-session $ kubectl delete crd --selector app=consul ``` -1. (Optional) If Consul is installed in a dedicated namespace, set the kubeConfig context to the `consul` namespace. Otherwise, subsequent commands will need to include `-n consul`. +1. (Optional) If Consul is installed in a dedicated namespace, set the kubeConfig context to the `consul` namespace. Otherwise, subsequent commands will need to include `--namespace consul`. ```shell-session $ kubectl config set-context --current --namespace=consul ``` - + 1. Run the `helm uninstall ` command and specify the release name you've installed Consul with, e.g.,: ```shell-session @@ -52,13 +51,13 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de for the persistent volumes that store Consul's data. A [bug](https://github.com/helm/helm/issues/5156) in Helm prevents PVCs from being deleted. Issue the following commands: ```shell-session - $ kubectl get pvc -l chart=consul-helm + $ kubectl get pvc --selector="chart=consul-helm" NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE data-default-hashicorp-consul-server-0 Bound pvc-32cb296b-1213-11ea-b6f0-42010a8001db 10Gi RWO standard 17m data-default-hashicorp-consul-server-1 Bound pvc-32d79919-1213-11ea-b6f0-42010a8001db 10Gi RWO standard 17m data-default-hashicorp-consul-server-2 Bound pvc-331581ea-1213-11ea-b6f0-42010a8001db 10Gi RWO standard 17m - $ kubectl delete pvc -l chart=consul-helm + $ kubectl delete pvc --selector="chart=consul-helm" persistentvolumeclaim "data-default-hashicorp-consul-server-0" deleted persistentvolumeclaim "data-default-hashicorp-consul-server-1" deleted persistentvolumeclaim "data-default-hashicorp-consul-server-2" deleted @@ -70,7 +69,7 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de 1. If installing with ACLs enabled, you will need to then delete the ACL secrets: ```shell-session - $ kubectl get secret | grep consul | grep Opaque + $ kubectl get secrets --field-selector="type=Opaque" | grep consul consul-acl-replication-acl-token Opaque 1 41m consul-bootstrap-acl-token Opaque 1 41m consul-client-acl-token Opaque 1 41m @@ -84,7 +83,7 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de created by another user with the word `consul`. ```shell-session - $ kubectl get secret | grep consul | grep Opaque | awk '{print $1}' | xargs kubectl delete secret + $ kubectl get secrets --field-selector="type=Opaque" | grep consul | awk '{print $1}' | xargs kubectl delete secret secret "consul-acl-replication-acl-token" deleted secret "consul-bootstrap-acl-token" deleted secret "consul-client-acl-token" deleted @@ -107,8 +106,8 @@ Run the `helm uninstall` **and** manually remove resources that Helm does not de $ kubectl delete serviceaccount consul-tls-init serviceaccount "consul-tls-init" deleted ``` - -1. (Optional) Delete the namespace (i.e. `consul` in the following example) that you have dedicated for installing Consul on Kubernetes. + +1. (Optional) Delete the namespace (i.e. `consul` in the following example) that you have dedicated for installing Consul on Kubernetes. ```shell-session $ kubectl delete ns consul diff --git a/website/content/docs/k8s/upgrade/index.mdx b/website/content/docs/k8s/upgrade/index.mdx index 1a0d4d5fe..4a53ab274 100644 --- a/website/content/docs/k8s/upgrade/index.mdx +++ b/website/content/docs/k8s/upgrade/index.mdx @@ -40,7 +40,7 @@ Perform the following steps: 1. Determine your current installed chart version. ```bash -helm list -f consul +helm list --filter consul NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION consul default 2 2020-09-30 ... deployed consul-0.24.0 1.8.2 ``` @@ -49,8 +49,8 @@ In this example, version `0.24.0` (from `consul-0.24.0`) is being used. 1. Perform a `helm upgrade`: - ```bash - helm upgrade consul hashicorp/consul --version 0.24.0 -f /path/to/my/values.yaml + ```shell-session + $ helm upgrade consul hashicorp/consul --version 0.24.0 --values /path/to/my/values.yaml ``` **Before performing the upgrade, be sure you've read the other sections on this page, @@ -74,8 +74,8 @@ helm repo update 1. List all available versions: -```bash -helm search repo hashicorp/consul -l +```shell-session hideClipboard +$ helm search repo hashicorp/consul --versions NAME CHART VERSION APP VERSION DESCRIPTION hashicorp/consul 0.24.1 1.8.2 Official HashiCorp Consul Chart hashicorp/consul 0.24.0 1.8.1 Official HashiCorp Consul Chart @@ -86,8 +86,8 @@ Here we can see that the latest version of `0.24.1`. 1. To determine which version you have installed, issue the following command: -```bash -helm list -f consul +```shell-session +$ helm list --filter consul NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION consul default 2 2020-09-30 ... deployed consul-0.24.0 1.8.2 ``` @@ -99,8 +99,8 @@ If you want to upgrade to the latest `0.24.1` version, use the following procedu 1. Upgrade by performing a `helm upgrade` with the `--version` flag: -```bash -helm upgrade consul hashicorp/consul --version 0.24.1 -f /path/to/my/values.yaml +```shell-session +$ helm upgrade consul hashicorp/consul --version 0.24.1 --values /path/to/my/values.yaml ``` **Before performing the upgrade, be sure you've read the other sections on this page, @@ -129,8 +129,8 @@ to update to the new version. 1. Determine your current installed chart version: -```bash -helm list -f consul +```shell-session +$ helm list --filter consul NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION consul default 2 2020-09-30 ... deployed consul-0.24.0 1.8.2 ``` @@ -139,8 +139,8 @@ In this example, version `0.24.0` (from `consul-0.24.0`) is being used. 1. Perform a `helm upgrade`: -```bash -helm upgrade consul hashicorp/consul --version 0.24.0 -f /path/to/my/values.yaml`. +```shell-session +$ helm upgrade consul hashicorp/consul --version 0.24.0 --values /path/to/my/values.yaml ``` **Before performing the upgrade, be sure you've read the other sections on this page, @@ -154,7 +154,7 @@ unintended upgrade. Before upgrading, it's important to understand what changes will be made to your cluster. For example, you will need to take more care if your upgrade will result -in the Consul server statefulset being redeployed. +in the Consul server StatefulSet being redeployed. There is no built-in functionality in Helm that shows what a helm upgrade will change. There is, however, a Helm plugin [helm-diff](https://github.com/databus23/helm-diff) @@ -169,16 +169,16 @@ helm plugin install https://github.com/databus23/helm-diff 1. If you are updating your `values.yaml` file, do so now. 1. Take the same `helm upgrade` command you were planning to issue but perform `helm diff upgrade` instead of `helm upgrade`: -```bash -helm diff upgrade consul hashicorp/consul --version 0.24.1 -f /path/to/your/values.yaml +```shell-session +$ helm diff upgrade consul hashicorp/consul --version 0.24.1 --values /path/to/your/values.yaml ``` This will print out the manifests that will be updated and their diffs. 1. To see only the objects that will be updated, add `| grep "has changed"`: -```bash -helm diff upgrade consul hashicorp/consul --version 0.24.1 -f /path/to/your/values.yaml | +```shell-session +$ helm diff upgrade consul hashicorp/consul --version 0.24.1 --values /path/to/your/values.yaml | grep "has changed" ``` @@ -272,8 +272,8 @@ servers to be upgraded _before_ the clients. 1. Next, perform the upgrade: -```bash -helm upgrade consul hashicorp/consul --version -f /path/to/your/values.yaml +```shell-session +$ helm upgrade consul hashicorp/consul --version --values /path/to/your/values.yaml ``` This will not cause the servers to redeploy (although the resource will be updated). If diff --git a/website/content/docs/security/acl/acl-migrate-tokens.mdx b/website/content/docs/security/acl/acl-migrate-tokens.mdx index 7e3f064ce..fc1a8e522 100644 --- a/website/content/docs/security/acl/acl-migrate-tokens.mdx +++ b/website/content/docs/security/acl/acl-migrate-tokens.mdx @@ -167,8 +167,8 @@ You can get the AccessorID of every legacy token from the API. For example, using `curl` and `jq` in bash: ```shell-session -$ LEGACY_IDS=$(curl -sH "X-Consul-Token: $CONSUL_HTTP_TOKEN" \ - 'localhost:8500/v1/acl/tokens' | jq -r '.[] | select (.Legacy) | .AccessorID') +$ LEGACY_IDS=$(curl --silent --header "X-Consul-Token: $CONSUL_HTTP_TOKEN" \ + 'localhost:8500/v1/acl/tokens' | jq --raw-output '.[] | select (.Legacy) | .AccessorID') $ echo "$LEGACY_IDS" 621cbd12-dde7-de06-9be0-e28d067b5b7f 65cecc86-eb5b-ced5-92dc-f861cf7636fe @@ -230,8 +230,8 @@ You can get the AccessorID of every legacy token from the API. For example, using `curl` and `jq` in bash: ```shell-session -$ LEGACY_IDS=$(curl -sH "X-Consul-Token: $CONSUL_HTTP_TOKEN" \ - 'localhost:8500/v1/acl/tokens' | jq -r '.[] | select (.Legacy) | .AccessorID') +$ LEGACY_IDS=$(curl --silent --header "X-Consul-Token: $CONSUL_HTTP_TOKEN" \ + 'localhost:8500/v1/acl/tokens' | jq --raw-output '.[] | select (.Legacy) | .AccessorID') $ echo "$LEGACY_IDS" 8b65fdf9-303e-0894-9f87-e71b3273600c d9deb39b-1b30-e100-b9c5-04aba3f593a1 diff --git a/website/content/docs/security/acl/auth-methods/oidc.mdx b/website/content/docs/security/acl/auth-methods/oidc.mdx index d260e6872..67d0b37a4 100644 --- a/website/content/docs/security/acl/auth-methods/oidc.mdx +++ b/website/content/docs/security/acl/auth-methods/oidc.mdx @@ -203,7 +203,7 @@ be tricky to debug why things aren't working. Some tips for setting up OIDC: request to obtain a JWT that you can inspect. An example of how to decode the JWT (in this case located in the `access_token` field of a JSON response): - cat jwt.json | jq -r .access_token | cut -d. -f2 | base64 --decode + cat jwt.json | jq --raw-output .access_token | cut -d. -f2 | base64 --decode - The [`VerboseOIDCLogging`](#verboseoidclogging) option is available which will log the received OIDC token if debug level logging is enabled. This can diff --git a/website/content/docs/troubleshoot/common-errors.mdx b/website/content/docs/troubleshoot/common-errors.mdx index 3307b048b..450bdeaab 100644 --- a/website/content/docs/troubleshoot/common-errors.mdx +++ b/website/content/docs/troubleshoot/common-errors.mdx @@ -156,7 +156,7 @@ If the pods are unable to connect to a Consul client running on the same host, first check if the Consul clients are up and running with `kubectl get pods`. ```shell-session -$ kubectl get pods -l "component=client" +$ kubectl get pods --selector="component=client" NAME READY STATUS RESTARTS AGE consul-kzws6 1/1 Running 0 58s ``` diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx index 9e0b0c6ef..9f0cdee73 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx @@ -48,8 +48,8 @@ Looking through these changes prior to upgrading is highly recommended. **1.** Check replication status in DC1 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty ``` You should receive output similar to this: @@ -71,8 +71,8 @@ disabled, so this is normal even if replication is happening. **2.** Check replication status in DC2 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty ``` You should receive output similar to this: @@ -94,8 +94,8 @@ This should be done one DC at a time, leaving the primary DC for last. **4.** Confirm that replication is still working in DC2 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty ``` You should receive output similar to this: diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx index 5251b5968..5fae87dd8 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx @@ -58,8 +58,8 @@ Two very notable items are: **1.** Check the replication status of the primary datacenter (DC1) by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty ``` You should receive output similar to this: @@ -81,8 +81,8 @@ disabled, so this is normal even if replication is happening. **2.** Check replication status in DC2 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty ``` You should receive output similar to this: @@ -115,9 +115,9 @@ continue working. From a Consul server in DC2: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/list?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/list?pretty ``` Take note of the `ReplicatedIndex` value. @@ -139,15 +139,15 @@ with the following contents: From a Consul server in DC1, create a new token using that file: -```shell -curl -X PUT -H "X-Consul-Token: $MASTER_TOKEN" -d @test-ui-token.json localhost:8500/v1/acl/create +```shell-session +$ curl --request PUT --header "X-Consul-Token: $MASTER_TOKEN" --data @test-ui-token.json localhost:8500/v1/acl/create ``` From a Consul server in DC2: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/list?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty" +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/list?pretty" ``` `ReplicatedIndex` should have incremented and you should find the new token listed. If you try using CLI ACL commands you will receive this error: @@ -169,8 +169,8 @@ Once this is complete, you should observe a log entry like this from your server **6.** Confirm that replication is still working in DC2 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty" ``` You should receive output similar to this: diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-8-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-8-x.mdx index 654ceb08f..8c7ea4a89 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-8-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-8-x.mdx @@ -41,8 +41,8 @@ Looking through these changes prior to upgrading is highly recommended. **1.** Check replication status in DC1 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty" ``` You should receive output similar to this: @@ -67,8 +67,8 @@ disabled, so this is normal even if replication is happening. **2.** Check replication status in DC2 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty" ``` You should receive output similar to this: @@ -92,8 +92,8 @@ You should receive output similar to this: **4.** Confirm that replication is still working in DC2 by issuing the following curl command from a consul server in that DC: -```shell -curl -s -H "X-Consul-Token: $MASTER_TOKEN" localhost:8500/v1/acl/replication?pretty +```shell-session +$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty" ``` You should receive output similar to this: From 709b807c7aaca1447ce8013ff5ef058d3bc4b3c7 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 13 Jan 2022 12:28:51 -0500 Subject: [PATCH 225/404] remove api, sdk, and ui packages from dependabot sdk and api are removed because those two are libraries, and updating libraries to the latest dependency versions only serves to make the library harder to use. A library which uses all the latest versions requires every application which uses it to update all its dependencies in a single batch, which is not great. It is applications that need the latest version of dependencies. Remove UI at the request as jc, since javascript libraries are updated so frequently it ends up being too much noise. Also update the number of PRs for gomod to 10, so we have a few more to work with. --- .github/dependabot.yml | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 6a0a7fd0f..c60f2e869 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,7 +1,7 @@ version: 2 updates: - package-ecosystem: gomod - open-pull-requests-limit: 5 + open-pull-requests-limit: 10 directory: "/" labels: - "go" @@ -9,33 +9,6 @@ updates: - "pr/no-changelog" schedule: interval: daily -- package-ecosystem: gomod - open-pull-requests-limit: 5 - directory: "/api" - labels: - - "go" - - "dependencies" - - "pr/no-changelog" - schedule: - interval: daily -- package-ecosystem: gomod - open-pull-requests-limit: 5 - directory: "/sdk" - labels: - - "go" - - "dependencies" - - "pr/no-changelog" - schedule: - interval: daily -- package-ecosystem: npm - open-pull-requests-limit: 5 - directory: "/ui" - labels: - - "javascript" - - "dependencies" - - "pr/no-changelog" - schedule: - interval: daily - package-ecosystem: npm open-pull-requests-limit: 5 directory: "/website" From 12a148f0d3dd89cadc6edb691eff732074f1726c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jan 2022 17:41:15 +0000 Subject: [PATCH 226/404] build(deps): bump github.com/hashicorp/go-multierror from 1.1.0 to 1.1.1 Bumps [github.com/hashicorp/go-multierror](https://github.com/hashicorp/go-multierror) from 1.1.0 to 1.1.1. - [Release notes](https://github.com/hashicorp/go-multierror/releases) - [Commits](https://github.com/hashicorp/go-multierror/compare/v1.1.0...v1.1.1) --- updated-dependencies: - dependency-name: github.com/hashicorp/go-multierror dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index f9e21a132..70c1545a8 100644 --- a/go.mod +++ b/go.mod @@ -40,7 +40,7 @@ require ( github.com/hashicorp/go-hclog v0.14.1 github.com/hashicorp/go-memdb v1.3.1 github.com/hashicorp/go-msgpack v0.5.5 - github.com/hashicorp/go-multierror v1.1.0 + github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/go-raftchunking v0.6.1 github.com/hashicorp/go-retryablehttp v0.6.7 // indirect github.com/hashicorp/go-sockaddr v1.0.2 diff --git a/go.sum b/go.sum index ed9f545cf..9afbc14c8 100644 --- a/go.sum +++ b/go.sum @@ -247,8 +247,9 @@ github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iP github.com/hashicorp/go-msgpack v0.5.5 h1:i9R9JSrqIz0QVLz3sz+i3YJdT7TTSLcfLLzJi9aZTuI= github.com/hashicorp/go-msgpack v0.5.5/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= -github.com/hashicorp/go-multierror v1.1.0 h1:B9UzwGQJehnUY1yNrnwREHc3fGbC2xefo8g4TbElacI= github.com/hashicorp/go-multierror v1.1.0/go.mod h1:spPvp8C1qA32ftKqdAHm4hHTbPw+vmowP0z+KUhOZdA= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/go-plugin v1.0.1/go.mod h1:++UyYGoz3o5w9ZzAdZxtQKrWWP+iqPBn3cQptSMzBuY= github.com/hashicorp/go-raftchunking v0.6.1 h1:moEnaG3gcwsWNyIBJoD5PCByE+Ewkqxh6N05CT+MbwA= github.com/hashicorp/go-raftchunking v0.6.1/go.mod h1:cGlg3JtDy7qy6c/3Bu660Mic1JF+7lWqIwCFSb08fX0= From 1ea48ec52371e488d4bdcedc5af9dbae03c0de2e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jan 2022 10:28:49 -0800 Subject: [PATCH 227/404] Bump github.com/hashicorp/go-raftchunking from 0.6.1 to 0.6.2 (#11065) Bumps [github.com/hashicorp/go-raftchunking](https://github.com/hashicorp/go-raftchunking) from 0.6.1 to 0.6.2. - [Release notes](https://github.com/hashicorp/go-raftchunking/releases) - [Commits](https://github.com/hashicorp/go-raftchunking/compare/v0.6.1...v0.6.2) --- updated-dependencies: - dependency-name: github.com/hashicorp/go-raftchunking dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 70c1545a8..9ebb67472 100644 --- a/go.mod +++ b/go.mod @@ -41,7 +41,7 @@ require ( github.com/hashicorp/go-memdb v1.3.1 github.com/hashicorp/go-msgpack v0.5.5 github.com/hashicorp/go-multierror v1.1.1 - github.com/hashicorp/go-raftchunking v0.6.1 + github.com/hashicorp/go-raftchunking v0.6.2 github.com/hashicorp/go-retryablehttp v0.6.7 // indirect github.com/hashicorp/go-sockaddr v1.0.2 github.com/hashicorp/go-syslog v1.0.0 diff --git a/go.sum b/go.sum index 9afbc14c8..380abc74b 100644 --- a/go.sum +++ b/go.sum @@ -251,8 +251,8 @@ github.com/hashicorp/go-multierror v1.1.0/go.mod h1:spPvp8C1qA32ftKqdAHm4hHTbPw+ github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= github.com/hashicorp/go-plugin v1.0.1/go.mod h1:++UyYGoz3o5w9ZzAdZxtQKrWWP+iqPBn3cQptSMzBuY= -github.com/hashicorp/go-raftchunking v0.6.1 h1:moEnaG3gcwsWNyIBJoD5PCByE+Ewkqxh6N05CT+MbwA= -github.com/hashicorp/go-raftchunking v0.6.1/go.mod h1:cGlg3JtDy7qy6c/3Bu660Mic1JF+7lWqIwCFSb08fX0= +github.com/hashicorp/go-raftchunking v0.6.2 h1:imj6CVkwXj6VzgXZQvzS+fSrkbFCzlJ2t00F3PacnuU= +github.com/hashicorp/go-raftchunking v0.6.2/go.mod h1:cGlg3JtDy7qy6c/3Bu660Mic1JF+7lWqIwCFSb08fX0= github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs= github.com/hashicorp/go-retryablehttp v0.6.6/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= github.com/hashicorp/go-retryablehttp v0.6.7 h1:8/CAEZt/+F7kR7GevNHulKkUjLht3CPmn7egmhieNKo= From 5c1a491cd45d4eaf75e53c148be14dcaf2893f71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Jan 2022 10:54:36 -0800 Subject: [PATCH 228/404] Bump github.com/hashicorp/go-memdb from 1.3.1 to 1.3.2 (#11066) Bumps [github.com/hashicorp/go-memdb](https://github.com/hashicorp/go-memdb) from 1.3.1 to 1.3.2. - [Release notes](https://github.com/hashicorp/go-memdb/releases) - [Changelog](https://github.com/hashicorp/go-memdb/blob/master/changes.go) - [Commits](https://github.com/hashicorp/go-memdb/compare/v1.3.1...v1.3.2) --- updated-dependencies: - dependency-name: github.com/hashicorp/go-memdb dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 9ebb67472..6615726de 100644 --- a/go.mod +++ b/go.mod @@ -38,7 +38,7 @@ require ( github.com/hashicorp/go-connlimit v0.3.0 github.com/hashicorp/go-discover v0.0.0-20210818145131-c573d69da192 github.com/hashicorp/go-hclog v0.14.1 - github.com/hashicorp/go-memdb v1.3.1 + github.com/hashicorp/go-memdb v1.3.2 github.com/hashicorp/go-msgpack v0.5.5 github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/go-raftchunking v0.6.2 diff --git a/go.sum b/go.sum index 380abc74b..c502a4475 100644 --- a/go.sum +++ b/go.sum @@ -241,8 +241,8 @@ github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjh github.com/hashicorp/go-immutable-radix v1.3.0 h1:8exGP7ego3OmkfksihtSouGMZ+hQrhxx+FVELeXpVPE= github.com/hashicorp/go-immutable-radix v1.3.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-kms-wrapping/entropy v0.1.0/go.mod h1:d1g9WGtAunDNpek8jUIEJnBlbgKS1N2Q61QkHiZyR1g= -github.com/hashicorp/go-memdb v1.3.1 h1:EIj6L28rTL41BDHBvwq1VJXzcmY2R2JBrxpWxF7Etyk= -github.com/hashicorp/go-memdb v1.3.1/go.mod h1:Mluclgwib3R93Hk5fxEfiRhB+6Dar64wWh71LpNSe3g= +github.com/hashicorp/go-memdb v1.3.2 h1:RBKHOsnSszpU6vxq80LzC2BaQjuuvoyaQbkLTf7V7g8= +github.com/hashicorp/go-memdb v1.3.2/go.mod h1:Mluclgwib3R93Hk5fxEfiRhB+6Dar64wWh71LpNSe3g= github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-msgpack v0.5.5 h1:i9R9JSrqIz0QVLz3sz+i3YJdT7TTSLcfLLzJi9aZTuI= github.com/hashicorp/go-msgpack v0.5.5/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= From 8b18b4394c6d2c61ec9441bb3a01c1e004022929 Mon Sep 17 00:00:00 2001 From: Anthony Date: Thu, 13 Jan 2022 16:07:11 -0500 Subject: [PATCH 229/404] Added CodeBlockConfig tags and $ to shell examples missing it. --- website/content/docs/agent/config-entries.mdx | 8 +- website/content/docs/agent/index.mdx | 6 +- website/content/docs/agent/options.mdx | 92 +++++++++++++++---- website/content/docs/agent/sentinel.mdx | 14 ++- website/content/docs/agent/telemetry.mdx | 4 +- 5 files changed, 98 insertions(+), 26 deletions(-) diff --git a/website/content/docs/agent/config-entries.mdx b/website/content/docs/agent/config-entries.mdx index 38025e67a..7a9dfa75d 100644 --- a/website/content/docs/agent/config-entries.mdx +++ b/website/content/docs/agent/config-entries.mdx @@ -20,16 +20,20 @@ Outside of Kubernetes, every configuration entry specified in HCL or JSON has at configuration entry. Configuration entries specified as HCL or JSON objects use either `snake_case` or `CamelCase` for key names. -Example: + ```hcl Kind = "" Name = "" ``` + + On Kubernetes, `Kind` is set as the custom resource `kind` and `Name` is set as `metadata.name`: + + ```yaml apiVersion: consul.hashicorp.com/v1alpha1 kind: @@ -37,6 +41,8 @@ metadata: name: ``` + + ## Supported Config Entries See [Service Mesh - Config Entries](/docs/connect/config-entries) for the list diff --git a/website/content/docs/agent/index.mdx b/website/content/docs/agent/index.mdx index 1d7c76987..a13d3a304 100644 --- a/website/content/docs/agent/index.mdx +++ b/website/content/docs/agent/index.mdx @@ -80,7 +80,7 @@ The [Datacenter Deploy tutorial](https://learn.hashicorp.com/tutorials/consul/re Start a Consul agent with the `consul` command and `agent` subcommand using the following syntax: ```shell-session -consul agent +$ consul agent ``` Consul ships with a `-dev` flag that configures the agent to run in server mode and several additional settings that enable you to quickly get started with Consul. @@ -99,7 +99,7 @@ This enables you to logically group configuration settings into separate files. The following example starts an agent in dev mode and stores agent state data in the `tmp/consul` directory: ```shell-session -consul agent -data-dir=tmp/consul -dev +$ consul agent -data-dir=tmp/consul -dev ``` Agents are highly configurable, which enables you to deploy Consul to any infrastructure. Many of the default options for the `agent` command are suitable for becoming familiar with a local instance of Consul. In practice, however, several additional configuration options must be specified for Consul to function as expected. Refer to [Agent Configuration](/docs/agent/options) topic for a complete list of configuration options. @@ -167,7 +167,7 @@ This is because clients are most commonly used to register services in the Consu The following example starts a Consul agent that takes configuration settings from a file called `server.json` located in the current working directory: ```shell-session -consul agent -config-file=server.json +$ consul agent -config-file=server.json ``` The configuration options necessary to successfully use Consul depend on several factors, including the type of agent you are configuring (client or server), the type of environment you are deploying to (e.g., on-premise, multi-cloud, etc.), and the security options you want to implement (ACLs, gRPC encryption). diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index d6bef6b96..3e047e39f 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -113,21 +113,31 @@ The options below are all specified on the command-line. both. If you have any firewalls, be sure to allow both protocols. In Consul 1.1.0 and later this can be dynamically defined with a [go-sockaddr] template that must resolve at runtime to a single address. Some example templates: + + ```shell - # Using address within a specific CIDR $ consul agent -bind '{{ GetPrivateInterfaces | include "network" "10.0.0.0/8" | attr "address" }}' ``` + + + + ```shell # Using a static network interface name $ consul agent -bind '{{ GetInterfaceIP "eth0" }}' ``` + + + + ```shell - # Using regular expression matching for network interface name that is forwardable and up $ consul agent -bind '{{ GetAllInterfaces | include "name" "^eth" | include "flags" "forwardable|up" | attr "address" }}' ``` + + - `-serf-wan-bind` ((#\_serf_wan_bind)) - The address that should be bound to for Serf WAN gossip communications. By default, the value follows the same rules as [`-bind` command-line flag](#_bind), and if this is not specified, the `-bind` @@ -362,31 +372,46 @@ The options below are all specified on the command-line. Here are some examples of using `-retry-join`: + + ```shell - # Using a DNS entry $ consul agent -retry-join "consul.domain.internal" ``` + + + + ```shell - # Using IPv4 $ consul agent -retry-join "10.0.4.67" ``` + + + + ```shell - # Using a non-default Serf LAN port $ consul agent -retry-join "192.0.2.10:8304" ``` + + + + ```shell - # Using IPv6 $ consul agent -retry-join "[::1]:8301" ``` + + + + ```shell - # Using multiple addresses $ consul agent -retry-join "consul.domain.internal" -retry-join "10.0.4.67" ``` + + ### Cloud Auto-Joining As of Consul 0.9.1, `retry-join` accepts a unified interface using the @@ -394,11 +419,14 @@ The options below are all specified on the command-line. automatic cluster joining using cloud metadata. For more information, see the [Cloud Auto-join page](/docs/agent/cloud-auto-join). + + ```shell - # Using Cloud Auto-Joining $ consul agent -retry-join "provider=aws tag_key=..." ``` + + - `-retry-interval` ((#\_retry_interval)) - Time to wait between join attempts. Defaults to 30s. @@ -580,7 +608,7 @@ They are documented separately under [check configuration](/docs/agent/checks) a [service configuration](/docs/agent/services) respectively. The service and check definitions support being updated during a reload. -#### Example Configuration File + ```json { @@ -601,6 +629,8 @@ definitions support being updated during a reload. } ``` + + #### Configuration Key Reference ((#config_key_reference)) -> **Note:** All the TTL values described below are parsed by Go's `time` package, and have the following @@ -736,6 +766,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `managed_service_provider` ((#acl_tokens_managed_service_provider)) - An array of ACL tokens used by Consul managed service providers for cluster operations. + + ```json "managed_service_provider": [ { @@ -745,6 +777,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." ] ``` + + - `acl_datacenter` - **This field is deprecated in Consul 1.4.0. See the [`primary_datacenter`](#primary_datacenter) field instead.** This designates the datacenter which is authoritative for ACL information. It must be provided to enable ACLs. All servers and datacenters must agree on the ACL datacenter. Setting it on the servers is all you need for cluster-level enforcement, but for the APIs to forward properly from the clients, @@ -883,6 +917,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `audit` - Added in Consul 1.8, the audit object allow users to enable auditing and configure a sink and filters for their audit logs. For more information, review the [audit log tutorial](https://learn.hashicorp.com/tutorials/consul/audit-logging). + + ```hcl audit { enabled = true @@ -898,6 +934,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." } ``` + + The following sub-keys are available: - `enabled` - Controls whether Consul logs out each time a user @@ -1089,7 +1127,9 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." configurations when combined will ensure that the JWT `sub` matches the node name requested by the client. - ``` + + + ```hcl claim_mappings { sub = "node_name" } @@ -1098,6 +1138,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." ] ``` + + 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: @@ -1662,6 +1704,8 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `response_headers` This object allows adding headers to the HTTP API and UI responses. For example, the following config can be used to enable [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) on the HTTP API endpoints: + + ```json { "http_config": { @@ -1672,6 +1716,8 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr } ``` + + - `allow_write_http_from` This object is a list of networks in CIDR notation (eg "127.0.0.0/8") that are allowed to call the agent write endpoints. It defaults to an empty list, which means all networks are allowed. This is used to make the agent read-only, except for select ip ranges. - To block write calls from anywhere, use `[ "255.255.255.255/32" ]`. - To only allow write calls from localhost, use `[ "127.0.0.0/8" ]` - To only allow specific IPs, use `[ "10.0.0.1/32", "10.0.0.2/32" ]` - `use_cache` ((#http_config_use_cache)) Defaults to true. If disabled, the agent won't be using [agent caching](/api/features/caching) to answer the request. Even when the url parameter is provided. @@ -1718,6 +1764,8 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `node_meta` Available in Consul 0.7.3 and later, This object allows associating arbitrary metadata key/value pairs with the local node, which can then be used for filtering results from certain catalog endpoints. See the [`-node-meta` command-line flag](#_node_meta) for more information. + + ```json { "node_meta": { @@ -1726,6 +1774,8 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr } ``` + + - `partition` - This flag is used to set the name of the admin partition the agent belongs to. An agent can only join and communicate with other agents within its admin partition. Review the @@ -2071,10 +2121,14 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr This is a list of filter rules to apply for allowing/blocking metrics by prefix in the following format: + + ```json ["+consul.raft.apply", "-consul.http", "+consul.http.GET"] ``` + + A leading "**+**" will enable any metrics with the given prefix, and a leading "**-**" will block them. If there is overlap between two rules, the more specific rule will take precedence. Blocking will take priority if the same prefix is listed multiple times. - `prometheus_retention_time` ((#telemetry-prometheus_retention_time)) If the value is greater than `0s` (the default), this enables [Prometheus](https://prometheus.io/) @@ -2089,15 +2143,19 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr it is recommended to also enable the option [`disable_hostname`](#telemetry-disable_hostname) to avoid having prefixed metrics with hostname. Consul does not use the default Prometheus path, so Prometheus must be configured as follows. Note that using - ?format=prometheus in the path won't work as ? will be escaped, so it must be + `?format=prometheus` in the path won't work as ? will be escaped, so it must be specified as a parameter. + + ```yaml metrics_path: '/v1/agent/metrics' params: format: ['prometheus'] ``` + + - `statsd_address` ((#telemetry-statsd_address)) This provides the address of a statsd instance in the format `host:port`. If provided, Consul will send various telemetry information to that instance for aggregation. This can be used @@ -2407,6 +2465,10 @@ signed by the CA can be used to gain full access to Consul. encryption and authentication. Failing to set [`verify_incoming`](#verify_incoming) or [`verify_outgoing`](#verify_outgoing) will result in TLS not being enabled at all, even when specifying a [`ca_file`](#ca_file), [`cert_file`](#cert_file), and [`key_file`](#key_file). +See, especially, the use of the `ports` setting highlighted below. + + + ```json { "datacenter": "east-aws", @@ -2429,13 +2491,7 @@ will result in TLS not being enabled at all, even when specifying a [`ca_file`]( } ``` -See, especially, the use of the `ports` setting: - -```json -"ports": { - "https": 8501 -} -``` + Consul will not enable TLS for the HTTP API unless the `https` port has been assigned a port number `> 0`. We recommend using `8501` for `https` as this diff --git a/website/content/docs/agent/sentinel.mdx b/website/content/docs/agent/sentinel.mdx index 29b8f9b93..85a160af6 100644 --- a/website/content/docs/agent/sentinel.mdx +++ b/website/content/docs/agent/sentinel.mdx @@ -21,7 +21,9 @@ Sentinel policies are applied during writes to the KV Store. An optional `sentinel` field specifying code and enforcement level can be added to [ACL policy definitions](/docs/agent/acl-rules#sentinel-integration) for Consul KV. The following policy ensures that the value written during a KV update must end with "dc1". -```text + + +```hcl key "datacenter_name" { policy = "write" sentinel { @@ -34,6 +36,8 @@ EOF } ``` + + If the `enforcementlevel` property is not set, it defaults to "hard-mandatory". ## Imports @@ -58,7 +62,7 @@ The following are two examples of ACL policies with Sentinel rules. ### Required Key Suffix -Any values stored under the key prefix "dc1" must end with "dev" + ```text key "dc1" { @@ -72,9 +76,11 @@ EOF } ``` + + ### Restricted Update Time -The key "haproxy_version" can only be updated during business hours. + ```text key "haproxy_version" { @@ -87,3 +93,5 @@ EOF } } ``` + + diff --git a/website/content/docs/agent/telemetry.mdx b/website/content/docs/agent/telemetry.mdx index cb3c8e4f5..0c8ea8d01 100644 --- a/website/content/docs/agent/telemetry.mdx +++ b/website/content/docs/agent/telemetry.mdx @@ -39,7 +39,7 @@ This information can also be viewed with the [metrics endpoint](/api/agent#view-metrics) in JSON format or using [Prometheus](https://prometheus.io/) format. -Below is sample output of a telemetry dump: + ```log [2014-01-29 10:56:50 -0800 PST][G] 'consul-agent.runtime.num_goroutines': 19.000 @@ -59,6 +59,8 @@ Below is sample output of a telemetry dump: [2014-01-29 10:56:50 -0800 PST][S] 'consul-agent.serf.queue.Event': Count: 10 Min: 0.000 Mean: 2.500 Max: 5.000 Stddev: 2.121 Sum: 25.000 ``` + + # Key Metrics These are some metrics emitted that can help you understand the health of your cluster at a glance. A [Grafana dashboard](https://grafana.com/grafana/dashboards/13396) is also available, which is maintained by the Consul team and displays these metrics for easy visualization. For a full list of metrics emitted by Consul, see [Metrics Reference](#metrics-reference) From 3561dfb5f28b9033ddfca2f0e6948d77da78e790 Mon Sep 17 00:00:00 2001 From: Kevin Wang Date: Thu, 13 Jan 2022 16:10:33 -0500 Subject: [PATCH 230/404] feat: versioned-docs (#11327) This PR introduces versioned docs --- website/next.config.js | 1 + website/package-lock.json | 474 +++++++++++++++++++++---- website/package.json | 2 +- website/pages/api-docs/[[...page]].jsx | 40 +-- website/pages/commands/[[...page]].jsx | 40 +-- website/pages/docs/[[...page]].jsx | 41 +-- 6 files changed, 467 insertions(+), 131 deletions(-) diff --git a/website/next.config.js b/website/next.config.js index 4989f0cf8..0ddf76822 100644 --- a/website/next.config.js +++ b/website/next.config.js @@ -23,6 +23,7 @@ module.exports = withHashicorp({ SEGMENT_WRITE_KEY: 'IyzLrqXkox5KJ8XL4fo8vTYNGfiKlTCm', BUGSNAG_CLIENT_KEY: '01625078d856ef022c88f0c78d2364f1', BUGSNAG_SERVER_KEY: 'be8ed0d0fc887d547284cce9e98e60e5', + ENABLE_VERSIONED_DOCS: process.env.ENABLE_VERSIONED_DOCS || false, }, images: { domains: ['www.datocms-assets.com'], diff --git a/website/package-lock.json b/website/package-lock.json index 34d0fbfd1..0be3ad071 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -24,7 +24,7 @@ "@hashicorp/react-code-block": "^4.1.5", "@hashicorp/react-consent-manager": "^7.1.0", "@hashicorp/react-content": "^8.0.2", - "@hashicorp/react-docs-page": "^14.4.2", + "@hashicorp/react-docs-page": "^14.14.0", "@hashicorp/react-enterprise-alert": "^6.0.1", "@hashicorp/react-featured-slider": "^5.0.1", "@hashicorp/react-hashi-stack-menu": "^2.1.2", @@ -1608,9 +1608,9 @@ } }, "node_modules/@hashicorp/react-alert": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-6.0.1.tgz", - "integrity": "sha512-4CSHoPD0D9oIMSxEV84b69QZK9LQFol4muinWyarWfv8oTfVmxe7bNRcCbOZ6o1C1AyURkgJvM4KZZ/8MA69Sg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-6.0.2.tgz", + "integrity": "sha512-8ePxXMYR6kU0cYb4T3WZ74bInPQdbzfM4B+ZWqmW+raEpVAS2MTqDFl7X55L0syWx6JDbBmrlhzYaRzTDf6qug==", "dependencies": { "@hashicorp/platform-product-meta": "^0.1.0", "classnames": "^2.3.1" @@ -1725,9 +1725,9 @@ } }, "node_modules/@hashicorp/react-content": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-8.0.2.tgz", - "integrity": "sha512-FNE1IiXizUDPL/rsvo37uYSBsAB8LhtCianMU/h3MIj8Khcwc/qC3pTabGs9Kv3ujA+fiIp/ImzWEGAhB22T7g==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-8.1.1.tgz", + "integrity": "sha512-NaUxDcXKacKleZjhMtjxjRaC/BqpAlWzla9P5dJJXFJHAlQJxjbpb1QmPTXOqMTJ3woSqA1+6l59w67BvAnN8g==", "dependencies": { "@hashicorp/platform-product-meta": "^0.1.0", "classnames": "^2.3.1" @@ -1738,26 +1738,27 @@ } }, "node_modules/@hashicorp/react-docs-page": { - "version": "14.4.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-14.4.2.tgz", - "integrity": "sha512-K/KITJsAYA8sjxCy4JbAJKEgEKA924MNm4bd4SPniomzSYmsCNxeDaM/bSM/EpaGR7cX9r6htSyugKwo7V3QFQ==", + "version": "14.14.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-14.14.0.tgz", + "integrity": "sha512-OwbBmbuE7U3nnF/TWeUKRW6MN0/KIgC8nxUJP3rbqANxZFchCjm/7JEG/owDZu41zJQUAa1ZKvmhI+OUfAAvwA==", "dependencies": { "@hashicorp/platform-docs-mdx": "^0.1.3", - "@hashicorp/platform-markdown-utils": "^0.1.3", - "@hashicorp/react-alert": "^6.0.0", - "@hashicorp/react-content": "^8.0.2", + "@hashicorp/platform-markdown-utils": "^0.2.0", + "@hashicorp/react-alert": "^6.0.2", + "@hashicorp/react-content": "^8.1.1", "@hashicorp/react-docs-sidenav": "^8.4.0", "@hashicorp/react-head": "^3.1.2", "@hashicorp/react-placeholder": "^0.1.0", - "@hashicorp/react-search": "^6.1.1", - "@hashicorp/react-version-select": "^0.2.0", + "@hashicorp/react-search": "^6.3.1", + "@hashicorp/react-version-select": "^0.3.0", "classnames": "^2.3.1", "fs-exists-sync": "^0.1.0", "gray-matter": "^4.0.3", "js-yaml": "^4.1.0", "line-reader": "^0.4.0", "moize": "^6.0.3", - "readdirp": "^3.6.0" + "readdirp": "^3.6.0", + "semver": "^7.3.5" }, "peerDependencies": { "@hashicorp/mktg-global-styles": ">=3.x", @@ -1765,6 +1766,60 @@ "react": ">=16.x" } }, + "node_modules/@hashicorp/react-docs-page/node_modules/@hashicorp/platform-markdown-utils": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-markdown-utils/-/platform-markdown-utils-0.2.0.tgz", + "integrity": "sha512-xs/yiP/vcgvGX5wYggvYIhG4WTmTS3e5oUE7QuTtukOHcCN+HmN79z9xn8yCDnJ0GiAm51dv42lmCBiWj3JF6Q==", + "dependencies": { + "@hashicorp/platform-types": "^0.1.0", + "@hashicorp/remark-plugins": "^3.3.1", + "@mapbox/rehype-prism": "^0.6.0", + "@mdx-js/react": "1.6.22", + "rehype-katex": "^5.0.0", + "remark-math": "^4.0.0", + "remark-rehype": "^7.0.0" + }, + "peerDependencies": { + "react": ">= 16.x" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/@hashicorp/remark-plugins": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@hashicorp/remark-plugins/-/remark-plugins-3.3.1.tgz", + "integrity": "sha512-7xThpsBFWasdC/E+E/BAjHxMYqyCcQFiTVspvhBzN51meiQIacVCnyAox/lyvwWiP4N3Yj/ruH4UsR2ifskNeA==", + "dependencies": { + "@mdx-js/util": "1.6.22", + "github-slugger": "^1.3.0", + "remark": "12.0.1", + "remark-mdx": "1.6.22", + "to-vfile": "^6.1.0", + "unist-util-flatmap": "^1.0.0", + "unist-util-is": "^4.0.2", + "unist-util-map": "^2.0.1", + "unist-util-visit": "^2.0.3" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/@mapbox/rehype-prism": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.6.0.tgz", + "integrity": "sha512-/0Ev/PB4fXdKPT6VDzVpnAPxGpWFIc4Yz3mf/DzLEMxlpIPZpZlCzaFk4V4NGFofQXPc41+GpEcZtWP3VuFWVA==", + "dependencies": { + "hast-util-to-string": "^1.0.4", + "refractor": "^3.3.1", + "unist-util-visit": "^2.0.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, "node_modules/@hashicorp/react-docs-page/node_modules/gray-matter": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", @@ -1807,6 +1862,52 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, + "node_modules/@hashicorp/react-docs-page/node_modules/katex": { + "version": "0.13.24", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", + "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "dependencies": { + "commander": "^8.0.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/mdast-util-definitions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-3.0.1.tgz", + "integrity": "sha512-BAv2iUm/e6IK/b2/t+Fx69EL/AGcq/IG2S+HxHjDJGfLJtd6i9SZUS76aC9cig+IEucsqxKTR0ot3m933R3iuA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/mdast-util-to-hast": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-9.1.2.tgz", + "integrity": "sha512-OpkFLBC2VnNAb2FNKcKWu9FMbJhQKog+FCT8nuKmQNIKXyT1n3SIskE7uWDep6x+cA20QXlK5AETHQtYmQmxtQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^3.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/@hashicorp/react-docs-page/node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -1818,10 +1919,105 @@ "node": ">=8.10.0" } }, + "node_modules/@hashicorp/react-docs-page/node_modules/rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "dependencies": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/remark": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-12.0.1.tgz", + "integrity": "sha512-gS7HDonkdIaHmmP/+shCPejCEEW+liMp/t/QwmF0Xt47Rpuhl32lLtDV1uKWvGoq+kxr5jSgg5oAIpGuyULjUw==", + "dependencies": { + "remark-parse": "^8.0.0", + "remark-stringify": "^8.0.0", + "unified": "^9.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/remark-rehype": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-7.0.0.tgz", + "integrity": "sha512-uqQ/VbaTdxyu/da6npHAso6hA00cMqhA3a59RziQdOLN2KEIkPykAVy52IcmZEVTuauXO0VtpxkyCey4phtHzQ==", + "dependencies": { + "mdast-util-to-hast": "^9.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@hashicorp/react-docs-page/node_modules/remark-stringify": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", + "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", + "dependencies": { + "ccount": "^1.0.0", + "is-alphanumeric": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "longest-streak": "^2.0.1", + "markdown-escapes": "^1.0.0", + "markdown-table": "^2.0.0", + "mdast-util-compact": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "stringify-entities": "^3.0.0", + "unherit": "^1.0.4", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/@hashicorp/react-docs-sidenav": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-8.4.0.tgz", - "integrity": "sha512-r2yFLuAD4+9RbPvBzWwcv7b9wrk1MooUJJMdLFP6WUUPYxt3r0Jju6/y4CubVUwtDnNCe3iqo3KoRmWrfNSS0Q==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-8.4.1.tgz", + "integrity": "sha512-X7J19jCrcYiZEa7/ApMn6R5LFmDymJC1/sHSXpaMcXDIW5DD+H0DRYwJKVUPgdJDWhjZ5PXXWeDJTOKcQWBNog==", "dependencies": { "@hashicorp/platform-product-meta": "^0.1.0", "@hashicorp/react-link-wrap": "^3.0.3", @@ -2013,9 +2209,9 @@ } }, "node_modules/@hashicorp/react-search": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-6.1.1.tgz", - "integrity": "sha512-azaXjFP/om+DN6InI/WD+qH9jmLE3/9pqIc2Dp4rYY/tn1KuWyJ5MefvcsbYxIFUVX/wiT2n+8HZFwRfxhdA+w==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-6.4.0.tgz", + "integrity": "sha512-ITAvD5QEc+B79VTYC27kdx0P1ynGFPUwed1ttUxlAIhvzasWjKeM6sS1rT8oFF+QcUZqoE7rKq7Y8k53sAB2Lw==", "dependencies": { "@hashicorp/react-inline-svg": "^6.0.1", "@hashicorp/remark-plugins": "^3.1.1", @@ -2062,11 +2258,11 @@ } }, "node_modules/@hashicorp/react-select-input": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-select-input/-/react-select-input-4.0.3.tgz", - "integrity": "sha512-HN7uy2acXOCNE2cz844da0V8JHesnCLjKXis7/n+PB9O6wLfSYblWYPoPLEPx83Ph0dQfAtUT8dsJ9v6S2TSiw==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@hashicorp/react-select-input/-/react-select-input-4.0.5.tgz", + "integrity": "sha512-iN7iq7HZTQh3sa3LViuXbS84Si5hL6eWOqXd4DHfWYcZuuwping88l8SwwPWtqr+HVDcFsRixpVuvOCwgQSX0Q==", "dependencies": { - "classnames": "^2.2.6", + "classnames": "^2.3.1", "downshift": "3.1.5" }, "peerDependencies": { @@ -2240,9 +2436,9 @@ } }, "node_modules/@hashicorp/react-version-select": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-version-select/-/react-version-select-0.2.1.tgz", - "integrity": "sha512-E7BW4FotIYq1S5d/GrUPH2NvXmzYmeNpM01wNThDEbes47RfT8nzN3dg64QOUdCvWoUcUaOlGMQHNychBTif2g==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-version-select/-/react-version-select-0.3.0.tgz", + "integrity": "sha512-wd708z+ftdUkK+jKBLFHdHE3U4a0g37LTOxH9X68LzFDWPUT9gTAI5dPEfT0Os/DeJxWcRvUoaS8Fbtd7SQPmg==", "dependencies": { "@hashicorp/react-select-input": ">=4.x" }, @@ -8082,9 +8278,9 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" }, "node_modules/fast-equals": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.3.tgz", - "integrity": "sha512-0EMw4TTUxsMDpDkCg0rXor2gsg+npVrMIHbEhvD0HZyIhUX6AktC/yasm+qKwfyswd06Qy95ZKk8p2crTo0iPA==" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.4.tgz", + "integrity": "sha512-caj/ZmjHljPrZtbzJ3kfH5ia/k4mTJe/qSiXAGzxZWRZgsgDV0cvNaQULqUX8t0/JVlzzEdYOwCN5DmzTxoD4w==" }, "node_modules/fast-glob": { "version": "3.2.7", @@ -21212,9 +21408,9 @@ } }, "@hashicorp/react-alert": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-6.0.1.tgz", - "integrity": "sha512-4CSHoPD0D9oIMSxEV84b69QZK9LQFol4muinWyarWfv8oTfVmxe7bNRcCbOZ6o1C1AyURkgJvM4KZZ/8MA69Sg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@hashicorp/react-alert/-/react-alert-6.0.2.tgz", + "integrity": "sha512-8ePxXMYR6kU0cYb4T3WZ74bInPQdbzfM4B+ZWqmW+raEpVAS2MTqDFl7X55L0syWx6JDbBmrlhzYaRzTDf6qug==", "requires": { "@hashicorp/platform-product-meta": "^0.1.0", "classnames": "^2.3.1" @@ -21298,37 +21494,83 @@ } }, "@hashicorp/react-content": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-8.0.2.tgz", - "integrity": "sha512-FNE1IiXizUDPL/rsvo37uYSBsAB8LhtCianMU/h3MIj8Khcwc/qC3pTabGs9Kv3ujA+fiIp/ImzWEGAhB22T7g==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-content/-/react-content-8.1.1.tgz", + "integrity": "sha512-NaUxDcXKacKleZjhMtjxjRaC/BqpAlWzla9P5dJJXFJHAlQJxjbpb1QmPTXOqMTJ3woSqA1+6l59w67BvAnN8g==", "requires": { "@hashicorp/platform-product-meta": "^0.1.0", "classnames": "^2.3.1" } }, "@hashicorp/react-docs-page": { - "version": "14.4.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-14.4.2.tgz", - "integrity": "sha512-K/KITJsAYA8sjxCy4JbAJKEgEKA924MNm4bd4SPniomzSYmsCNxeDaM/bSM/EpaGR7cX9r6htSyugKwo7V3QFQ==", + "version": "14.14.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-page/-/react-docs-page-14.14.0.tgz", + "integrity": "sha512-OwbBmbuE7U3nnF/TWeUKRW6MN0/KIgC8nxUJP3rbqANxZFchCjm/7JEG/owDZu41zJQUAa1ZKvmhI+OUfAAvwA==", "requires": { "@hashicorp/platform-docs-mdx": "^0.1.3", - "@hashicorp/platform-markdown-utils": "^0.1.3", - "@hashicorp/react-alert": "^6.0.0", - "@hashicorp/react-content": "^8.0.2", + "@hashicorp/platform-markdown-utils": "^0.2.0", + "@hashicorp/react-alert": "^6.0.2", + "@hashicorp/react-content": "^8.1.1", "@hashicorp/react-docs-sidenav": "^8.4.0", "@hashicorp/react-head": "^3.1.2", "@hashicorp/react-placeholder": "^0.1.0", - "@hashicorp/react-search": "^6.1.1", - "@hashicorp/react-version-select": "^0.2.0", + "@hashicorp/react-search": "^6.3.1", + "@hashicorp/react-version-select": "^0.3.0", "classnames": "^2.3.1", "fs-exists-sync": "^0.1.0", "gray-matter": "^4.0.3", "js-yaml": "^4.1.0", "line-reader": "^0.4.0", "moize": "^6.0.3", - "readdirp": "^3.6.0" + "readdirp": "^3.6.0", + "semver": "^7.3.5" }, "dependencies": { + "@hashicorp/platform-markdown-utils": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/platform-markdown-utils/-/platform-markdown-utils-0.2.0.tgz", + "integrity": "sha512-xs/yiP/vcgvGX5wYggvYIhG4WTmTS3e5oUE7QuTtukOHcCN+HmN79z9xn8yCDnJ0GiAm51dv42lmCBiWj3JF6Q==", + "requires": { + "@hashicorp/platform-types": "^0.1.0", + "@hashicorp/remark-plugins": "^3.3.1", + "@mapbox/rehype-prism": "^0.6.0", + "@mdx-js/react": "1.6.22", + "rehype-katex": "^5.0.0", + "remark-math": "^4.0.0", + "remark-rehype": "^7.0.0" + } + }, + "@hashicorp/remark-plugins": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@hashicorp/remark-plugins/-/remark-plugins-3.3.1.tgz", + "integrity": "sha512-7xThpsBFWasdC/E+E/BAjHxMYqyCcQFiTVspvhBzN51meiQIacVCnyAox/lyvwWiP4N3Yj/ruH4UsR2ifskNeA==", + "requires": { + "@mdx-js/util": "1.6.22", + "github-slugger": "^1.3.0", + "remark": "12.0.1", + "remark-mdx": "1.6.22", + "to-vfile": "^6.1.0", + "unist-util-flatmap": "^1.0.0", + "unist-util-is": "^4.0.2", + "unist-util-map": "^2.0.1", + "unist-util-visit": "^2.0.3" + } + }, + "@mapbox/rehype-prism": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.6.0.tgz", + "integrity": "sha512-/0Ev/PB4fXdKPT6VDzVpnAPxGpWFIc4Yz3mf/DzLEMxlpIPZpZlCzaFk4V4NGFofQXPc41+GpEcZtWP3VuFWVA==", + "requires": { + "hast-util-to-string": "^1.0.4", + "refractor": "^3.3.1", + "unist-util-visit": "^2.0.3" + } + }, + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" + }, "gray-matter": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", @@ -21366,6 +21608,37 @@ } } }, + "katex": { + "version": "0.13.24", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.24.tgz", + "integrity": "sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==", + "requires": { + "commander": "^8.0.0" + } + }, + "mdast-util-definitions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-3.0.1.tgz", + "integrity": "sha512-BAv2iUm/e6IK/b2/t+Fx69EL/AGcq/IG2S+HxHjDJGfLJtd6i9SZUS76aC9cig+IEucsqxKTR0ot3m933R3iuA==", + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-to-hast": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-9.1.2.tgz", + "integrity": "sha512-OpkFLBC2VnNAb2FNKcKWu9FMbJhQKog+FCT8nuKmQNIKXyT1n3SIskE7uWDep6x+cA20QXlK5AETHQtYmQmxtQ==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^3.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + } + }, "readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -21373,13 +21646,88 @@ "requires": { "picomatch": "^2.2.1" } + }, + "rehype-katex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-katex/-/rehype-katex-5.0.0.tgz", + "integrity": "sha512-ksSuEKCql/IiIadOHiKRMjypva9BLhuwQNascMqaoGLDVd0k2NlE2wMvgZ3rpItzRKCd6vs8s7MFbb8pcR0AEg==", + "requires": { + "@types/katex": "^0.11.0", + "hast-util-to-text": "^2.0.0", + "katex": "^0.13.0", + "rehype-parse": "^7.0.0", + "unified": "^9.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "remark": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-12.0.1.tgz", + "integrity": "sha512-gS7HDonkdIaHmmP/+shCPejCEEW+liMp/t/QwmF0Xt47Rpuhl32lLtDV1uKWvGoq+kxr5jSgg5oAIpGuyULjUw==", + "requires": { + "remark-parse": "^8.0.0", + "remark-stringify": "^8.0.0", + "unified": "^9.0.0" + } + }, + "remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "requires": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + } + }, + "remark-rehype": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-7.0.0.tgz", + "integrity": "sha512-uqQ/VbaTdxyu/da6npHAso6hA00cMqhA3a59RziQdOLN2KEIkPykAVy52IcmZEVTuauXO0VtpxkyCey4phtHzQ==", + "requires": { + "mdast-util-to-hast": "^9.1.0" + } + }, + "remark-stringify": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", + "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", + "requires": { + "ccount": "^1.0.0", + "is-alphanumeric": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "longest-streak": "^2.0.1", + "markdown-escapes": "^1.0.0", + "markdown-table": "^2.0.0", + "mdast-util-compact": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "stringify-entities": "^3.0.0", + "unherit": "^1.0.4", + "xtend": "^4.0.1" + } } } }, "@hashicorp/react-docs-sidenav": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-8.4.0.tgz", - "integrity": "sha512-r2yFLuAD4+9RbPvBzWwcv7b9wrk1MooUJJMdLFP6WUUPYxt3r0Jju6/y4CubVUwtDnNCe3iqo3KoRmWrfNSS0Q==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@hashicorp/react-docs-sidenav/-/react-docs-sidenav-8.4.1.tgz", + "integrity": "sha512-X7J19jCrcYiZEa7/ApMn6R5LFmDymJC1/sHSXpaMcXDIW5DD+H0DRYwJKVUPgdJDWhjZ5PXXWeDJTOKcQWBNog==", "requires": { "@hashicorp/platform-product-meta": "^0.1.0", "@hashicorp/react-link-wrap": "^3.0.3", @@ -21516,9 +21864,9 @@ } }, "@hashicorp/react-search": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-6.1.1.tgz", - "integrity": "sha512-azaXjFP/om+DN6InI/WD+qH9jmLE3/9pqIc2Dp4rYY/tn1KuWyJ5MefvcsbYxIFUVX/wiT2n+8HZFwRfxhdA+w==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-6.4.0.tgz", + "integrity": "sha512-ITAvD5QEc+B79VTYC27kdx0P1ynGFPUwed1ttUxlAIhvzasWjKeM6sS1rT8oFF+QcUZqoE7rKq7Y8k53sAB2Lw==", "requires": { "@hashicorp/react-inline-svg": "^6.0.1", "@hashicorp/remark-plugins": "^3.1.1", @@ -21556,11 +21904,11 @@ } }, "@hashicorp/react-select-input": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@hashicorp/react-select-input/-/react-select-input-4.0.3.tgz", - "integrity": "sha512-HN7uy2acXOCNE2cz844da0V8JHesnCLjKXis7/n+PB9O6wLfSYblWYPoPLEPx83Ph0dQfAtUT8dsJ9v6S2TSiw==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@hashicorp/react-select-input/-/react-select-input-4.0.5.tgz", + "integrity": "sha512-iN7iq7HZTQh3sa3LViuXbS84Si5hL6eWOqXd4DHfWYcZuuwping88l8SwwPWtqr+HVDcFsRixpVuvOCwgQSX0Q==", "requires": { - "classnames": "^2.2.6", + "classnames": "^2.3.1", "downshift": "3.1.5" } }, @@ -21688,9 +22036,9 @@ } }, "@hashicorp/react-version-select": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-version-select/-/react-version-select-0.2.1.tgz", - "integrity": "sha512-E7BW4FotIYq1S5d/GrUPH2NvXmzYmeNpM01wNThDEbes47RfT8nzN3dg64QOUdCvWoUcUaOlGMQHNychBTif2g==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-version-select/-/react-version-select-0.3.0.tgz", + "integrity": "sha512-wd708z+ftdUkK+jKBLFHdHE3U4a0g37LTOxH9X68LzFDWPUT9gTAI5dPEfT0Os/DeJxWcRvUoaS8Fbtd7SQPmg==", "requires": { "@hashicorp/react-select-input": ">=4.x" } @@ -26202,9 +26550,9 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" }, "fast-equals": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.3.tgz", - "integrity": "sha512-0EMw4TTUxsMDpDkCg0rXor2gsg+npVrMIHbEhvD0HZyIhUX6AktC/yasm+qKwfyswd06Qy95ZKk8p2crTo0iPA==" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-2.0.4.tgz", + "integrity": "sha512-caj/ZmjHljPrZtbzJ3kfH5ia/k4mTJe/qSiXAGzxZWRZgsgDV0cvNaQULqUX8t0/JVlzzEdYOwCN5DmzTxoD4w==" }, "fast-glob": { "version": "3.2.7", diff --git a/website/package.json b/website/package.json index 82540f435..92669dd65 100644 --- a/website/package.json +++ b/website/package.json @@ -20,7 +20,7 @@ "@hashicorp/react-code-block": "^4.1.5", "@hashicorp/react-consent-manager": "^7.1.0", "@hashicorp/react-content": "^8.0.2", - "@hashicorp/react-docs-page": "^14.4.2", + "@hashicorp/react-docs-page": "^14.14.0", "@hashicorp/react-enterprise-alert": "^6.0.1", "@hashicorp/react-featured-slider": "^5.0.1", "@hashicorp/react-hashi-stack-menu": "^2.1.2", diff --git a/website/pages/api-docs/[[...page]].jsx b/website/pages/api-docs/[[...page]].jsx index 1f40bb82f..0055285d9 100644 --- a/website/pages/api-docs/[[...page]].jsx +++ b/website/pages/api-docs/[[...page]].jsx @@ -1,16 +1,12 @@ import { productName, productSlug } from 'data/metadata' import DocsPage from '@hashicorp/react-docs-page' // Imports below are only used server-side -import { - generateStaticPaths, - generateStaticProps, -} from '@hashicorp/react-docs-page/server' +import { getStaticGenerationFunctions } from '@hashicorp/react-docs-page/server' // Configure the docs path const baseRoute = 'api-docs' const navDataFile = `data/${baseRoute}-nav-data.json` const localContentDir = `content/${baseRoute}` -const mainBranch = 'main' const product = { name: productName, slug: productSlug } export default function ApiDocsLayout(props) { @@ -19,21 +15,21 @@ export default function ApiDocsLayout(props) { ) } -export async function getStaticPaths() { - const paths = await generateStaticPaths({ - localContentDir, - navDataFile, - }) - return { paths, fallback: false } -} +const { getStaticPaths, getStaticProps } = getStaticGenerationFunctions( + process.env.ENABLE_VERSIONED_DOCS === 'true' + ? { + strategy: 'remote', + basePath: baseRoute, + fallback: 'blocking', + revalidate: 360, // 1 hour + product: productSlug, + } + : { + strategy: 'fs', + localContentDir: localContentDir, + navDataFile: navDataFile, + product: productSlug, + } +) -export async function getStaticProps({ params }) { - const props = await generateStaticProps({ - localContentDir, - mainBranch, - navDataFile, - params, - product, - }) - return { props } -} +export { getStaticPaths, getStaticProps } diff --git a/website/pages/commands/[[...page]].jsx b/website/pages/commands/[[...page]].jsx index e76ccb371..0572b361a 100644 --- a/website/pages/commands/[[...page]].jsx +++ b/website/pages/commands/[[...page]].jsx @@ -1,16 +1,12 @@ import { productName, productSlug } from 'data/metadata' import DocsPage from '@hashicorp/react-docs-page' // Imports below are only used server-side -import { - generateStaticPaths, - generateStaticProps, -} from '@hashicorp/react-docs-page/server' +import { getStaticGenerationFunctions } from '@hashicorp/react-docs-page/server' // Configure the docs path const baseRoute = 'commands' const navDataFile = `data/${baseRoute}-nav-data.json` const localContentDir = `content/${baseRoute}` -const mainBranch = 'main' const product = { name: productName, slug: productSlug } export default function CommandsLayout(props) { @@ -19,21 +15,21 @@ export default function CommandsLayout(props) { ) } -export async function getStaticPaths() { - const paths = await generateStaticPaths({ - localContentDir, - navDataFile, - }) - return { paths, fallback: false } -} +const { getStaticPaths, getStaticProps } = getStaticGenerationFunctions( + process.env.ENABLE_VERSIONED_DOCS === 'true' + ? { + strategy: 'remote', + basePath: baseRoute, + fallback: 'blocking', + revalidate: 360, // 1 hour + product: productSlug, + } + : { + strategy: 'fs', + localContentDir: localContentDir, + navDataFile: navDataFile, + product: productSlug, + } +) -export async function getStaticProps({ params }) { - const props = await generateStaticProps({ - localContentDir, - mainBranch, - navDataFile, - params, - product, - }) - return { props } -} +export { getStaticPaths, getStaticProps } diff --git a/website/pages/docs/[[...page]].jsx b/website/pages/docs/[[...page]].jsx index 2976490a9..f6971e6b1 100644 --- a/website/pages/docs/[[...page]].jsx +++ b/website/pages/docs/[[...page]].jsx @@ -2,17 +2,13 @@ import { productName, productSlug } from 'data/metadata' import DocsPage from '@hashicorp/react-docs-page' import ConfigEntryReference from 'components/config-entry-reference' // Imports below are only used server-side -import { - generateStaticPaths, - generateStaticProps, -} from '@hashicorp/react-docs-page/server' +import { getStaticGenerationFunctions } from '@hashicorp/react-docs-page/server' // Configure the docs path const additionalComponents = { ConfigEntryReference } const baseRoute = 'docs' const navDataFile = `data/${baseRoute}-nav-data.json` const localContentDir = `content/${baseRoute}` -const mainBranch = 'main' const product = { name: productName, slug: productSlug } export default function DocsLayout(props) { @@ -26,22 +22,21 @@ export default function DocsLayout(props) { ) } -export async function getStaticPaths() { - const paths = await generateStaticPaths({ - localContentDir, - navDataFile, - }) - return { paths, fallback: false } -} +const { getStaticPaths, getStaticProps } = getStaticGenerationFunctions( + process.env.ENABLE_VERSIONED_DOCS === 'true' + ? { + strategy: 'remote', + basePath: baseRoute, + fallback: 'blocking', + revalidate: 360, // 1 hour + product: productSlug, + } + : { + strategy: 'fs', + localContentDir: localContentDir, + navDataFile: navDataFile, + product: productSlug, + } +) -export async function getStaticProps({ params }) { - const props = await generateStaticProps({ - additionalComponents, - localContentDir, - mainBranch, - navDataFile, - params, - product, - }) - return { props } -} +export { getStaticPaths, getStaticProps } From cd9c843e07a7a3f817df0634692f32189bbcad54 Mon Sep 17 00:00:00 2001 From: Anthony Date: Thu, 13 Jan 2022 16:22:57 -0500 Subject: [PATCH 231/404] Missed CodeBlockConfig tag. --- website/content/docs/agent/options.mdx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 3e047e39f..dcbf96ddb 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -66,10 +66,9 @@ The options below are all specified on the command-line. state as other nodes will treat the non-routability as a failure. In Consul 1.1.0 and later this can be dynamically defined with a [go-sockaddr] template that is resolved at runtime. - + ```shell - # Using a static network interface name $ consul agent -advertise '{{ GetInterfaceIP "eth0" }}' ``` From e62c21e1364f43bd0a85ddfcf052955153c80b42 Mon Sep 17 00:00:00 2001 From: Anthony Date: Thu, 13 Jan 2022 16:26:40 -0500 Subject: [PATCH 232/404] Removed extra comment. --- website/content/docs/agent/options.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index dcbf96ddb..8a29758c4 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -123,7 +123,6 @@ The options below are all specified on the command-line. ```shell - # Using a static network interface name $ consul agent -bind '{{ GetInterfaceIP "eth0" }}' ``` From 5ffa877cdb0b65532acd8cfc2b42ec049e9c11a7 Mon Sep 17 00:00:00 2001 From: Anthony Date: Thu, 13 Jan 2022 16:34:37 -0500 Subject: [PATCH 233/404] Added hcl language to snippet. --- website/content/docs/agent/sentinel.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/content/docs/agent/sentinel.mdx b/website/content/docs/agent/sentinel.mdx index 85a160af6..ae0f61812 100644 --- a/website/content/docs/agent/sentinel.mdx +++ b/website/content/docs/agent/sentinel.mdx @@ -64,7 +64,7 @@ The following are two examples of ACL policies with Sentinel rules. -```text +```hcl key "dc1" { policy = "write" sentinel { @@ -82,7 +82,7 @@ EOF -```text +```hcl key "haproxy_version" { policy = "write" sentinel { From 3f01f2fe12278142881eff5fa41324d8d239d62d Mon Sep 17 00:00:00 2001 From: Anthony Date: Thu, 13 Jan 2022 16:55:07 -0500 Subject: [PATCH 234/404] Apply suggestions from code review Co-authored-by: mrspanishviking --- website/content/docs/agent/index.mdx | 2 +- website/content/docs/agent/options.mdx | 20 ++++++++++---------- website/content/docs/agent/sentinel.mdx | 6 +++--- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/website/content/docs/agent/index.mdx b/website/content/docs/agent/index.mdx index a13d3a304..c54c1b093 100644 --- a/website/content/docs/agent/index.mdx +++ b/website/content/docs/agent/index.mdx @@ -166,7 +166,7 @@ This is because clients are most commonly used to register services in the Consu The following example starts a Consul agent that takes configuration settings from a file called `server.json` located in the current working directory: -```shell-session +```shell-session hideClipboard $ consul agent -config-file=server.json ``` diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 8a29758c4..405c8dcaa 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -68,7 +68,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -advertise '{{ GetInterfaceIP "eth0" }}' ``` @@ -114,7 +114,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -bind '{{ GetPrivateInterfaces | include "network" "10.0.0.0/8" | attr "address" }}' ``` @@ -122,7 +122,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -bind '{{ GetInterfaceIP "eth0" }}' ``` @@ -130,7 +130,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -bind '{{ GetAllInterfaces | include "name" "^eth" | include "flags" "forwardable|up" | attr "address" }}' ``` @@ -372,7 +372,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -retry-join "consul.domain.internal" ``` @@ -380,7 +380,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -retry-join "10.0.4.67" ``` @@ -388,7 +388,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -retry-join "192.0.2.10:8304" ``` @@ -396,7 +396,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -retry-join "[::1]:8301" ``` @@ -404,7 +404,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -retry-join "consul.domain.internal" -retry-join "10.0.4.67" ``` @@ -419,7 +419,7 @@ The options below are all specified on the command-line. - ```shell + ```shell-session $ consul agent -retry-join "provider=aws tag_key=..." ``` diff --git a/website/content/docs/agent/sentinel.mdx b/website/content/docs/agent/sentinel.mdx index ae0f61812..ec6510f12 100644 --- a/website/content/docs/agent/sentinel.mdx +++ b/website/content/docs/agent/sentinel.mdx @@ -23,7 +23,7 @@ An optional `sentinel` field specifying code and enforcement level can be added -```hcl +```sentinel key "datacenter_name" { policy = "write" sentinel { @@ -64,7 +64,7 @@ The following are two examples of ACL policies with Sentinel rules. -```hcl +```sentinel key "dc1" { policy = "write" sentinel { @@ -82,7 +82,7 @@ EOF -```hcl +```sentinel key "haproxy_version" { policy = "write" sentinel { From b003fd93d7f56e94d1a067ff2ac8555ab795040a Mon Sep 17 00:00:00 2001 From: Anthony Date: Thu, 13 Jan 2022 17:04:19 -0500 Subject: [PATCH 235/404] Apply suggestions from code review --- website/content/docs/agent/sentinel.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/content/docs/agent/sentinel.mdx b/website/content/docs/agent/sentinel.mdx index ec6510f12..8344ee995 100644 --- a/website/content/docs/agent/sentinel.mdx +++ b/website/content/docs/agent/sentinel.mdx @@ -23,7 +23,7 @@ An optional `sentinel` field specifying code and enforcement level can be added -```sentinel +```go key "datacenter_name" { policy = "write" sentinel { @@ -64,7 +64,7 @@ The following are two examples of ACL policies with Sentinel rules. -```sentinel +```go key "dc1" { policy = "write" sentinel { @@ -82,7 +82,7 @@ EOF -```sentinel +```go key "haproxy_version" { policy = "write" sentinel { From ef9c36fa31c5c152acd0ca3dfa44bd96b095e85b Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Thu, 13 Jan 2022 18:58:28 -0800 Subject: [PATCH 236/404] docs: Show `consul intention list` in nav sidebar Ensure `consul intention list` command is displayed in the navigation sidebar. Fixes #12036 --- website/data/commands-nav-data.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/data/commands-nav-data.json b/website/data/commands-nav-data.json index e34f9e0c3..565851223 100644 --- a/website/data/commands-nav-data.json +++ b/website/data/commands-nav-data.json @@ -297,8 +297,7 @@ }, { "title": "list", - "path": "intention/list", - "hidden": true + "path": "intention/list" }, { "title": "match", From 6c7379d58e0696ef6e89d9f9d4f02ff76126e452 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Jan 2022 11:54:41 -0500 Subject: [PATCH 237/404] Bump github.com/aws/aws-sdk-go from 1.25.41 to 1.42.34 (#12083) Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.25.41 to 1.42.34. - [Release notes](https://github.com/aws/aws-sdk-go/releases) - [Changelog](https://github.com/aws/aws-sdk-go/blob/main/CHANGELOG.md) - [Commits](https://github.com/aws/aws-sdk-go/compare/v1.25.41...v1.42.34) --- updated-dependencies: - dependency-name: github.com/aws/aws-sdk-go dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 4 ++-- go.sum | 12 ++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/go.mod b/go.mod index 6615726de..598631f90 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e github.com/armon/go-metrics v0.3.10 github.com/armon/go-radix v1.0.0 - github.com/aws/aws-sdk-go v1.25.41 + github.com/aws/aws-sdk-go v1.42.34 github.com/coredns/coredns v1.1.2 github.com/coreos/go-oidc v2.1.0+incompatible github.com/digitalocean/godo v1.10.0 // indirect @@ -85,7 +85,7 @@ require ( go.opencensus.io v0.22.0 // indirect go.uber.org/goleak v1.1.10 golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a - golang.org/x/net v0.0.0-20211209124913-491a49abca63 + golang.org/x/net v0.0.0-20211216030914-fe4d6282115f golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45 golang.org/x/sync v0.0.0-20210220032951-036812b2e83c golang.org/x/sys v0.0.0-20211013075003-97ac67df715c diff --git a/go.sum b/go.sum index c502a4475..b4d686c62 100644 --- a/go.sum +++ b/go.sum @@ -66,8 +66,9 @@ github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/aws/aws-sdk-go v1.25.37/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.25.41 h1:/hj7nZ0586wFqpwjNpzWiUTwtaMgxAZNZKHay80MdXw= github.com/aws/aws-sdk-go v1.25.41/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= +github.com/aws/aws-sdk-go v1.42.34 h1:fqGAiKmCSRY1rEa4G9VqgkKKbNmLKYq5dKmLtQkvYi8= +github.com/aws/aws-sdk-go v1.42.34/go.mod h1:OGr6lGMAKGlG9CVrYnWYDKIyb829c6EVBRjxqjmPepc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= @@ -322,8 +323,11 @@ github.com/jackc/fake v0.0.0-20150926172116-812a484cc733/go.mod h1:WrMFNQdiFJ80s github.com/jackc/pgx v3.3.0+incompatible/go.mod h1:0ZGrqGqkRlliWnWB4zKnWtjbSWbGkVEFm4TeybAXq+I= github.com/jarcoal/httpmock v0.0.0-20180424175123-9c70cfe4a1da h1:FjHUJJ7oBW4G/9j1KzlHaXL09LyMVM9rupS39lncbXk= github.com/jarcoal/httpmock v0.0.0-20180424175123-9c70cfe4a1da/go.mod h1:ks+b9deReOc7jgqp+e7LuFiCBH6Rm5hL32cLcEAArb4= -github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af h1:pmfjZENx5imkbgOkpRUYLnmbU7UEFbjtDA2hxJ1ichM= github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= +github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= +github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= +github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= github.com/joyent/triton-go v0.0.0-20180628001255-830d2b111e62/go.mod h1:U+RSyWxWd04xTqnuOQxnai7XGS2PrPY2cfGoDKtMHjA= github.com/joyent/triton-go v1.7.1-0.20200416154420-6801d15b779f h1:ENpDacvnr8faw5ugQmEF1QYk+f/Y9lXFvuYmRxykago= @@ -588,8 +592,8 @@ golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/ golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210410081132-afb366fc7cd1/go.mod h1:9tjilg8BloeKEkVJvy7fQ90B1CfIiPueXVOjqfkSzI8= -golang.org/x/net v0.0.0-20211209124913-491a49abca63 h1:iocB37TsdFuN6IBRZ+ry36wrkoV51/tl5vOWqkcPGvY= -golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211216030914-fe4d6282115f h1:hEYJvxw1lSnWIl8X9ofsYMklzaDs90JI2az5YMd4fPM= +golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45 h1:SVwTIAaPC2U/AvvLNZ2a7OVsmBpC8L5BlwK1whH3hm0= From a6ae87f1a7d34e7c2bad86bc100a9cc2d0d116d7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Jan 2022 11:56:26 -0500 Subject: [PATCH 238/404] build(deps): bump github.com/mitchellh/pointerstructure (#12072) Bumps [github.com/mitchellh/pointerstructure](https://github.com/mitchellh/pointerstructure) from 1.0.0 to 1.2.1. - [Release notes](https://github.com/mitchellh/pointerstructure/releases) - [Commits](https://github.com/mitchellh/pointerstructure/compare/v1.0.0...v1.2.1) --- updated-dependencies: - dependency-name: github.com/mitchellh/pointerstructure dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 4 ++-- go.sum | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/go.mod b/go.mod index 598631f90..1d4258fef 100644 --- a/go.mod +++ b/go.mod @@ -69,8 +69,8 @@ require ( github.com/mitchellh/copystructure v1.0.0 github.com/mitchellh/go-testing-interface v1.14.0 github.com/mitchellh/hashstructure v0.0.0-20170609045927-2bca23e0e452 - github.com/mitchellh/mapstructure v1.4.1-0.20210112042008-8ebf2d61a8b4 - github.com/mitchellh/pointerstructure v1.0.0 + github.com/mitchellh/mapstructure v1.4.1 + github.com/mitchellh/pointerstructure v1.2.1 github.com/mitchellh/reflectwalk v1.0.1 github.com/patrickmn/go-cache v2.1.0+incompatible github.com/pierrec/lz4 v2.5.2+incompatible // indirect diff --git a/go.sum b/go.sum index b4d686c62..f1b60a8f0 100644 --- a/go.sum +++ b/go.sum @@ -394,10 +394,10 @@ github.com/mitchellh/hashstructure v0.0.0-20170609045927-2bca23e0e452/go.mod h1: github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.3.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/mitchellh/mapstructure v1.4.1-0.20210112042008-8ebf2d61a8b4 h1:MGwxzM4mdkhmCfDyEmSfng7tE1QRIUGbedKdaMksvjw= -github.com/mitchellh/mapstructure v1.4.1-0.20210112042008-8ebf2d61a8b4/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/mitchellh/pointerstructure v1.0.0 h1:ATSdz4NWrmWPOF1CeCBU4sMCno2hgqdbSrRPFWQSVZI= -github.com/mitchellh/pointerstructure v1.0.0/go.mod h1:k4XwG94++jLVsSiTxo7qdIfXA9pj9EAeo0QsNNJOLZ8= +github.com/mitchellh/mapstructure v1.4.1 h1:CpVNEelQCZBooIPDn+AR3NpivK/TIKU8bDxdASFVQag= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/pointerstructure v1.2.1 h1:ZhBBeX8tSlRpu/FFhXH4RC4OJzFlqsQhoHZAz4x7TIw= +github.com/mitchellh/pointerstructure v1.2.1/go.mod h1:BRAsLI5zgXmw97Lf6s25bs8ohIXc3tViBH44KcwB2g4= github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.1 h1:FVzMWA5RllMAKIdUSC8mdWo3XtwoecrH79BY70sEEpE= github.com/mitchellh/reflectwalk v1.0.1/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= From 4970a715b1984d27912a7a825128c75f370248b1 Mon Sep 17 00:00:00 2001 From: Matt Keeler Date: Fri, 14 Jan 2022 12:03:20 -0500 Subject: [PATCH 239/404] Updating the docs to point out that 1.10.7 should be used instead of 1.10.6 (#12086) --- website/content/docs/upgrading/upgrade-specific.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/upgrading/upgrade-specific.mdx b/website/content/docs/upgrading/upgrade-specific.mdx index 757c1d73f..91a0a7c2c 100644 --- a/website/content/docs/upgrading/upgrade-specific.mdx +++ b/website/content/docs/upgrading/upgrade-specific.mdx @@ -20,7 +20,7 @@ upgrade flow. Consul Enterprise versions 1.10.0 through 1.10.4 contain a latent bug that causes those client or server agents to deregister their own services or health checks when some of the servers have been upgraded to 1.11. Before upgrading Consul Enterprise servers to 1.11, all Consul agents should first -be upgraded to 1.10.6 or higher to ensure forward compatibility and prevent +be upgraded to 1.10.7 or higher to ensure forward compatibility and prevent flapping of catalog registrations. ### Deprecated Agent Config Options From 9a774eac679ce001f86f7b91fecf73c517f2b88d Mon Sep 17 00:00:00 2001 From: Melissa Kam Date: Fri, 14 Jan 2022 11:12:21 -0600 Subject: [PATCH 240/404] docs/nia: CTS Terraform v1.1 compatibility --- website/content/docs/nia/compatibility.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/content/docs/nia/compatibility.mdx b/website/content/docs/nia/compatibility.mdx index be7bd13ac..9c97b707f 100644 --- a/website/content/docs/nia/compatibility.mdx +++ b/website/content/docs/nia/compatibility.mdx @@ -21,7 +21,8 @@ Consul-Terraform-Sync is compatible with the following Terraform OSS versions: | Consul-Terraform-Sync | Compatible Terraform Version | | --------------------- | ---------------------------- | -| 0.2+ | 0.13 - 1.0 | +| 0.3+ | 0.13 - 1.1 | +| 0.2 | 0.13 - 1.0 | | 0.1 | 0.13 - 0.14 | ## Terraform Cloud From 6e9ff354f20838a30845305dd29b056a921dd20c Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Thu, 13 Jan 2022 16:30:52 -0800 Subject: [PATCH 241/404] docs: Add HCL examples to agent config options --- website/content/docs/agent/options.mdx | 179 ++++++++++++++++++++----- 1 file changed, 142 insertions(+), 37 deletions(-) diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 405c8dcaa..c0d4efc5e 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -113,7 +113,7 @@ The options below are all specified on the command-line. template that must resolve at runtime to a single address. Some example templates: - + ```shell-session $ consul agent -bind '{{ GetPrivateInterfaces | include "network" "10.0.0.0/8" | attr "address" }}' ``` @@ -162,11 +162,11 @@ The options below are all specified on the command-line. template that can potentially resolve to multiple addresses. - + ```shell $ consul agent -dev -client '{{ GetPrivateInterfaces | exclude "type" "ipv6" | join "address" " " }}' ``` - + @@ -275,7 +275,6 @@ The options below are all specified on the command-line. they are defined in the local configuration files. Script checks defined in HTTP API registrations will still not be allowed. - - `-encrypt` ((#\_encrypt)) - Specifies the secret key to use for encryption of Consul network traffic. This key must be 32-bytes that are Base64-encoded. The easiest way to create an encryption key is to use [`consul keygen`](/commands/keygen). @@ -595,18 +594,36 @@ In addition to the command-line options, configuration can be put into files. This may be easier in certain situations, for example when Consul is being configured using a configuration management system. -The configuration files are JSON formatted, making them easily readable -and editable by both humans and computers. The configuration is formatted -as a single JSON object with configuration within it. +The configuration files are formatted as HCL, or JSON. JSON formatted configs are easily readable +and editable by both humans and computers. JSON formatted configuration consists +of a single JSON object with multiple configuration keys specified within it. -Configuration files are used for more than just setting up the agent, -they are also used to provide check and service definitions. These are used -to announce the availability of system servers to the rest of the cluster. -They are documented separately under [check configuration](/docs/agent/checks) and -[service configuration](/docs/agent/services) respectively. The service and check +Configuration files are used for more than just setting up the agent. +They are also used to provide check and service definitions that +announce the availability of system servers to the rest of the cluster. +These definitions are documented separately under [check configuration](/docs/agent/checks) and +[service configuration](/docs/agent/services) respectively. Service and check definitions support being updated during a reload. - + + +```hcl +datacenter = "east-aws" +data_dir = "/opt/consul" +log_level = "INFO" +node_name = "foobar" +server = true +watches = [ + { + type = "checks" + handler = "/usr/bin/health-check-handler.sh" + } +] + +telemetry { + statsite_address = "127.0.0.1:2180" +} +``` ```json { @@ -627,7 +644,7 @@ definitions support being updated during a reload. } ``` - + #### Configuration Key Reference ((#config_key_reference)) @@ -764,7 +781,14 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `managed_service_provider` ((#acl_tokens_managed_service_provider)) - An array of ACL tokens used by Consul managed service providers for cluster operations. - + + + ```hcl + managed_service_provider { + accessor_id = "ed22003b-0832-4e48-ac65-31de64e5c2ff" + secret_id = "cb6be010-bba8-4f30-a9ed-d347128dde17" + } + ``` ```json "managed_service_provider": [ @@ -775,7 +799,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." ] ``` - + - `acl_datacenter` - **This field is deprecated in Consul 1.4.0. See the [`primary_datacenter`](#primary_datacenter) field instead.** @@ -915,7 +939,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `audit` - Added in Consul 1.8, the audit object allow users to enable auditing and configure a sink and filters for their audit logs. For more information, review the [audit log tutorial](https://learn.hashicorp.com/tutorials/consul/audit-logging). - + ```hcl audit { @@ -932,7 +956,26 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." } ``` - + ```json + { + "audit": { + "enabled": true, + "sink": { + "My sink": { + "type": "file", + "format": "json", + "path": "data/audit/audit.json", + "delivery_guarantee": "best-effort", + "rotate_duration": "24h", + "rotate_max_files": 15, + "rotate_bytes": 25165824 + } + } + } + } + ``` + + The following sub-keys are available: @@ -1118,14 +1161,14 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." 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 + - `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](https://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. - + ```hcl claim_mappings { @@ -1136,7 +1179,16 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." ] ``` - + ```json + { + "claim_mappings": { + "sub": "node_name" + }, + "claim_assertions": ["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 @@ -1534,7 +1586,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr equivalent to "no max age". To get a fresh value from the cache use a very small value of `1ns` instead of 0. - - `prefer_namespace` ((#dns_prefer_namespace)) **Deprecated in + - `prefer_namespace` ((#dns_prefer_namespace)) **Deprecated in Consul 1.11. Use the [canonical DNS format](/docs/discovery/dns#namespaced-partitioned-services) instead.** - 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. @@ -1702,7 +1754,15 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `response_headers` This object allows adding headers to the HTTP API and UI responses. For example, the following config can be used to enable [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) on the HTTP API endpoints: - + + + ```hcl + http_config { + response_headers { + Access-Control-Allow-Origin = "*" + } + } + ``` ```json { @@ -1714,7 +1774,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr } ``` - + - `allow_write_http_from` This object is a list of networks in CIDR notation (eg "127.0.0.0/8") that are allowed to call the agent write endpoints. It defaults to an empty list, which means all networks are allowed. This is used to make the agent read-only, except for select ip ranges. - To block write calls from anywhere, use `[ "255.255.255.255/32" ]`. - To only allow write calls from localhost, use `[ "127.0.0.0/8" ]` - To only allow specific IPs, use `[ "10.0.0.1/32", "10.0.0.2/32" ]` @@ -1762,7 +1822,13 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `node_meta` Available in Consul 0.7.3 and later, This object allows associating arbitrary metadata key/value pairs with the local node, which can then be used for filtering results from certain catalog endpoints. See the [`-node-meta` command-line flag](#_node_meta) for more information. - + + + ```hcl + node_meta { + instance_type = "t2.medium" + } + ``` ```json { @@ -1772,7 +1838,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr } ``` - + - `partition` - This flag is used to set the name of the admin partition the agent belongs to. An agent can only join @@ -1782,7 +1848,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr partition. This cannot be set on a server agent. ~> **Warning:** The `partition` option cannot be used either the - [`segment`](#segment-2) option or [`-segment`](#_segment) flag. + [`segment`](#segment-2) option or [`-segment`](#_segment) flag. - `performance` Available in Consul 0.7 and later, this is a nested object that allows tuning the performance of different subsystems in Consul. See the [Server Performance](/docs/install/performance) documentation for more details. The following parameters are available: @@ -1866,15 +1932,14 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `protocol` ((#protocol)) Equivalent to the [`-protocol` command-line flag](#_protocol). -- `raft_boltdb` ((#raft_boltdb)) This is a nested object that allows configuring +- `raft_boltdb` ((#raft_boltdb)) This is a nested object that allows configuring options for Raft's BoltDB based log store. - - `NoFreelistSync` ((#NoFreelistSync)) Setting this to `true` will disable + - `NoFreelistSync` ((#NoFreelistSync)) Setting this to `true` will disable syncing the BoltDB freelist to disk within the raft.db file. Not syncing the freelist to disk will reduce disk IO required for write operations at the expense of potentially increasing start up time due to needing to scan the db to discover where the free space resides within the file. - - `raft_protocol` ((#raft_protocol)) Equivalent to the [`-raft-protocol` command-line flag](#_raft_protocol). @@ -2119,13 +2184,23 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr This is a list of filter rules to apply for allowing/blocking metrics by prefix in the following format: - + - ```json - ["+consul.raft.apply", "-consul.http", "+consul.http.GET"] + ```hcl + telemetry { + prefix_filter = ["+consul.raft.apply", "-consul.http", "+consul.http.GET"] + } ``` - + ```json + { + "telemetry": { + "prefix_filter": ["+consul.raft.apply", "-consul.http", "+consul.http.GET"] + } + } + ``` + + A leading "**+**" will enable any metrics with the given prefix, and a leading "**-**" will block them. If there is overlap between two rules, the more specific rule will take precedence. Blocking will take priority if the same prefix is listed multiple times. @@ -2141,7 +2216,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr it is recommended to also enable the option [`disable_hostname`](#telemetry-disable_hostname) to avoid having prefixed metrics with hostname. Consul does not use the default Prometheus path, so Prometheus must be configured as follows. Note that using - `?format=prometheus` in the path won't work as ? will be escaped, so it must be + `?format=prometheus` in the path won't work as `?` will be escaped, so it must be specified as a parameter. @@ -2465,7 +2540,35 @@ will result in TLS not being enabled at all, even when specifying a [`ca_file`]( See, especially, the use of the `ports` setting highlighted below. - + + + + +```hcl +datacenter = "east-aws" +data_dir = "/opt/consul" +log_level = "INFO" +node_name = "foobar" +server = true + +addresses = { + https = "0.0.0.0" +} +ports { + https = 8501 +} + +key_file = "/etc/pki/tls/private/my.key" +cert_file = "/etc/pki/tls/certs/my.crt" +ca_file = "/etc/pki/tls/certs/ca-bundle.crt" +verify_incoming = true +verify_outgoing = true +verify_server_hostname = true +``` + + + + ```json { @@ -2491,6 +2594,8 @@ See, especially, the use of the `ports` setting highlighted below. + + Consul will not enable TLS for the HTTP API unless the `https` port has been assigned a port number `> 0`. We recommend using `8501` for `https` as this default will automatically work with some tooling. From 761c286d6294e9bb06193bcbfd05f451210330ca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Jan 2022 12:35:00 -0500 Subject: [PATCH 242/404] build(deps): bump github.com/kr/text from 0.1.0 to 0.2.0 (#12063) Bumps [github.com/kr/text](https://github.com/kr/text) from 0.1.0 to 0.2.0. - [Release notes](https://github.com/kr/text/releases) - [Commits](https://github.com/kr/text/compare/v0.1.0...v0.2.0) --- updated-dependencies: - dependency-name: github.com/kr/text dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index 1d4258fef..8f64548d2 100644 --- a/go.mod +++ b/go.mod @@ -63,7 +63,7 @@ require ( github.com/imdario/mergo v0.3.6 github.com/joyent/triton-go v1.7.1-0.20200416154420-6801d15b779f // indirect github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect - github.com/kr/text v0.1.0 + github.com/kr/text v0.2.0 github.com/miekg/dns v1.1.41 github.com/mitchellh/cli v1.1.0 github.com/mitchellh/copystructure v1.0.0 diff --git a/go.sum b/go.sum index f1b60a8f0..c58bf5e9b 100644 --- a/go.sum +++ b/go.sum @@ -105,6 +105,7 @@ github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3Ee github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -351,8 +352,9 @@ github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfn github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/linode/linodego v0.7.1 h1:4WZmMpSA2NRwlPZcc0+4Gyn7rr99Evk9bnr0B3gXRKE= github.com/linode/linodego v0.7.1/go.mod h1:ga11n3ivecUrPCHN0rANxKmfWBJVkOXfLMZinAbj2sY= From 0d0b55bd1b8f52ace416df690111dcd74d1b6259 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Jan 2022 12:39:13 -0500 Subject: [PATCH 243/404] build(deps): bump github.com/ryanuber/columnize (#12062) Bumps [github.com/ryanuber/columnize](https://github.com/ryanuber/columnize) from 2.1.0+incompatible to 2.1.2+incompatible. - [Release notes](https://github.com/ryanuber/columnize/releases) - [Commits](https://github.com/ryanuber/columnize/compare/v2.1.0...v2.1.2) --- updated-dependencies: - dependency-name: github.com/ryanuber/columnize dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index 8f64548d2..ed0bdc6bb 100644 --- a/go.mod +++ b/go.mod @@ -78,7 +78,7 @@ require ( github.com/pquerna/cachecontrol v0.0.0-20180517163645-1555304b9b35 // indirect github.com/prometheus/client_golang v1.4.0 github.com/rboyer/safeio v0.2.1 - github.com/ryanuber/columnize v2.1.0+incompatible + github.com/ryanuber/columnize v2.1.2+incompatible github.com/shirou/gopsutil/v3 v3.21.10 github.com/stretchr/testify v1.7.0 go.etcd.io/bbolt v1.3.5 diff --git a/go.sum b/go.sum index c58bf5e9b..22d0a704e 100644 --- a/go.sum +++ b/go.sum @@ -477,8 +477,9 @@ github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6So github.com/rs/zerolog v1.4.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= -github.com/ryanuber/columnize v2.1.0+incompatible h1:j1Wcmh8OrK4Q7GXY+V7SVSY8nUWQxHW5TkBe7YUl+2s= github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= +github.com/ryanuber/columnize v2.1.2+incompatible h1:C89EOx/XBWwIXl8wm8OPJBd7kPF25UfsK2X7Ph/zCAk= +github.com/ryanuber/columnize v2.1.2+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= From 71907728ff602c80ae534c9b878879714a24a043 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Fri, 14 Jan 2022 09:51:57 -0800 Subject: [PATCH 244/404] applying latest round of feedback --- .../docs/connect/config-entries/proxy-defaults.mdx | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/website/content/docs/connect/config-entries/proxy-defaults.mdx b/website/content/docs/connect/config-entries/proxy-defaults.mdx index 8993915a8..d00dd21a4 100644 --- a/website/content/docs/connect/config-entries/proxy-defaults.mdx +++ b/website/content/docs/connect/config-entries/proxy-defaults.mdx @@ -203,7 +203,8 @@ spec: name: 'Namespace', type: `string: "default"`, enterprise: true, - description: 'Must be set to `default`. The configuration will apply to all namespaces.', + description: + 'Must be set to `default`. The configuration will apply to all namespaces.', yaml: false, }, { @@ -234,12 +235,6 @@ spec: description: 'If running Consul Open Source, the namespace is ignored (see [Kubernetes Namespaces in Consul OSS](/docs/k8s/crds#consul-oss)). If running Consul Enterprise see [Kubernetes Namespaces in Consul Enterprise](/docs/k8s/crds#consul-enterprise) for more details.', }, - { - name: 'partition', - enterprise: true, - description: - 'Specifies the admin partition in which the configuration will apply. The current partition is used if unspecified. Refer to the [Admin Partitions documentation](/docs/enterprise/admin-partitions) for details. The partitions parameter is not supported in Consul OSS.', - }, ], hcl: false, }, From 9fee1979041e880b341fa879efc8c84d91f9855f Mon Sep 17 00:00:00 2001 From: Evan Culver Date: Fri, 14 Jan 2022 13:35:46 -0800 Subject: [PATCH 245/404] Add changelog from latest releases (#12095) --- CHANGELOG.md | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0391f6984..084cb6a4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,46 @@ +## 1.11.2 (January 12, 2022) + +FEATURES: + +* ingress: allow setting TLS min version and cipher suites in ingress gateway config entries [[GH-11576](https://github.com/hashicorp/consul/issues/11576)] + +IMPROVEMENTS: + +* api: Return 404 when de-registering a non-existent check [[GH-11950](https://github.com/hashicorp/consul/issues/11950)] +* connect: Add support for connecting to services behind a terminating gateway when using a transparent proxy. [[GH-12049](https://github.com/hashicorp/consul/issues/12049)] +* http: when a user attempts to access the UI but can't because it's disabled, explain this and how to fix it [[GH-11820](https://github.com/hashicorp/consul/issues/11820)] +* ui: Added a notice for non-primary intention creation [[GH-11985](https://github.com/hashicorp/consul/issues/11985)] + +BUG FIXES: + +* Mutate `NodeService` struct properly to avoid a data race. [[GH-11940](https://github.com/hashicorp/consul/issues/11940)] +* Upgrade to raft `1.3.3` which fixes a bug where a read replica node can trigger a raft election and become a leader. [[GH-11958](https://github.com/hashicorp/consul/issues/11958)] +* cli: Display assigned node identities in output of `consul acl token list`. [[GH-11926](https://github.com/hashicorp/consul/issues/11926)] +* cli: when creating a private key, save the file with mode 0600 so that only the user has read permission. [[GH-11781](https://github.com/hashicorp/consul/issues/11781)] +* config: include all config errors in the error message, previously some could be hidden. [[GH-11918](https://github.com/hashicorp/consul/issues/11918)] +* memberlist: fixes a bug which prevented members from joining a cluster with +large amounts of churn [[GH-253](https://github.com/hashicorp/memberlist/issues/253)] [[GH-12042](https://github.com/hashicorp/consul/issues/12042)] +* snapshot: the `snapshot save` command now saves the snapshot with read permission for only the current user. [[GH-11918](https://github.com/hashicorp/consul/issues/11918)] +* ui: Differentiate between Service Meta and Node Meta when choosing search fields +in Service Instance listings [[GH-11774](https://github.com/hashicorp/consul/issues/11774)] +* ui: Ensure a login buttons appear for some error states, plus text amends [[GH-11892](https://github.com/hashicorp/consul/issues/11892)] +* ui: Ensure partition query parameter is passed through to all OIDC related API +requests [[GH-11979](https://github.com/hashicorp/consul/issues/11979)] +* ui: Fix an issue where attempting to delete a policy from the policy detail page when +attached to a token would result in the delete button disappearing and no +deletion being attempted [[GH-11868](https://github.com/hashicorp/consul/issues/11868)] +* ui: Fixes a bug where proxy service health checks would sometimes not appear +until refresh [[GH-11903](https://github.com/hashicorp/consul/issues/11903)] +* ui: Fixes a bug with URL decoding within KV area [[GH-11931](https://github.com/hashicorp/consul/issues/11931)] +* ui: Fixes a visual issue with some border colors [[GH-11959](https://github.com/hashicorp/consul/issues/11959)] +* ui: Fixes an issue saving intentions when editing per service intentions [[GH-11937](https://github.com/hashicorp/consul/issues/11937)] +* ui: Fixes an issue where once a 403 page is displayed in some circumstances its +diffcult to click back to where you where before receiving a 403 [[GH-11891](https://github.com/hashicorp/consul/issues/11891)] +* ui: Prevent disconnection notice appearing with auth change on certain pages [[GH-11905](https://github.com/hashicorp/consul/issues/11905)] +* ui: Temporarily remove KV pre-flight check for KV list permissions [[GH-11968](https://github.com/hashicorp/consul/issues/11968)] +* windows: Fixes a bug with empty log files when Consul is run as a Windows Service [[GH-11960](https://github.com/hashicorp/consul/issues/11960)] +* xds: fix a deadlock when the snapshot channel already have a snapshot to be consumed. [[GH-11924](https://github.com/hashicorp/consul/issues/11924)] + ## 1.11.1 (December 15, 2021) SECURITY: @@ -133,6 +176,45 @@ NOTES: * Renamed the `agent_master` field to `agent_recovery` in the `acl-tokens.json` file in which tokens are persisted on-disk (when `acl.enable_token_persistence` is enabled) [[GH-11744](https://github.com/hashicorp/consul/issues/11744)] +## 1.10.7 (January 12, 2022) + +SECURITY: + +* namespaces: **(Enterprise only)** Creating or editing namespaces that include default ACL policies or ACL roles now requires `acl:write` permission in the default namespace. This change fixes CVE-2021-41805. + +FEATURES: + +* ui: Adds visible Consul version information [[GH-11803](https://github.com/hashicorp/consul/issues/11803)] + +BUG FIXES: + +* Mutate `NodeService` struct properly to avoid a data race. [[GH-11940](https://github.com/hashicorp/consul/issues/11940)] +* Upgrade to raft `1.3.3` which fixes a bug where a read replica node can trigger a raft election and become a leader. [[GH-11958](https://github.com/hashicorp/consul/issues/11958)] +* ca: fixes a bug that caused non blocking leaf cert queries to return the same cached response regardless of ca rotation or leaf cert expiry [[GH-11693](https://github.com/hashicorp/consul/issues/11693)] +* ca: fixes a bug that caused the SigningKeyID to be wrong in the primary DC, when the Vault provider is used, after a CA config creates a new root. [[GH-11672](https://github.com/hashicorp/consul/issues/11672)] +* ca: fixes a bug that caused the intermediate cert used to sign leaf certs to be missing from the /connect/ca/roots API response when the Vault provider was used. [[GH-11671](https://github.com/hashicorp/consul/issues/11671)] +* cli: Display assigned node identities in output of `consul acl token list`. [[GH-11926](https://github.com/hashicorp/consul/issues/11926)] +* cli: when creating a private key, save the file with mode 0600 so that only the user has read permission. [[GH-11781](https://github.com/hashicorp/consul/issues/11781)] +* snapshot: **(Enterprise only)** fixed a bug where the snapshot agent would ignore the `license_path` setting in config files +* structs: **(Enterprise only)** Remove partition field parsing from 1.10 to prevent further 1.11 upgrade compatibility issues. +* ui: Differentiate between Service Meta and Node Meta when choosing search fields +in Service Instance listings [[GH-11774](https://github.com/hashicorp/consul/issues/11774)] +* ui: Ensure we show a readonly designed page for readonly intentions [[GH-11767](https://github.com/hashicorp/consul/issues/11767)] +* ui: Fix an issue where attempting to delete a policy from the policy detail page when +attached to a token would result in the delete button disappearing and no +deletion being attempted [[GH-11868](https://github.com/hashicorp/consul/issues/11868)] +* ui: Fix visual issue with slight table header overflow [[GH-11670](https://github.com/hashicorp/consul/issues/11670)] +* ui: Fixes an issue where once a 403 page is displayed in some circumstances its +diffcult to click back to where you where before receiving a 403 [[GH-11891](https://github.com/hashicorp/consul/issues/11891)] +* ui: Fixes an issue where under some circumstances after logging we present the +data loaded previous to you logging in. [[GH-11681](https://github.com/hashicorp/consul/issues/11681)] +* ui: Include `Service.Namespace` into available variables for `dashboard_url_templates` [[GH-11640](https://github.com/hashicorp/consul/issues/11640)] +* ui: Revert to depending on the backend, 'post-user-action', to report +permissions errors rather than using UI capabilities 'pre-user-action' [[GH-11520](https://github.com/hashicorp/consul/issues/11520)] +* ui: Temporarily remove KV pre-flight check for KV list permissions [[GH-11968](https://github.com/hashicorp/consul/issues/11968)] +* windows: Fixes a bug with empty log files when Consul is run as a Windows Service [[GH-11960](https://github.com/hashicorp/consul/issues/11960)] +* xds: fix a deadlock when the snapshot channel already have a snapshot to be consumed. [[GH-11924](https://github.com/hashicorp/consul/issues/11924)] + ## 1.10.6 (December 15, 2021) SECURITY: @@ -417,6 +499,29 @@ NOTES: * legal: **(Enterprise only)** Enterprise binary downloads will now include a copy of the EULA and Terms of Evaluation in the zip archive +## 1.9.14 (January 12, 2022) + +SECURITY: + +* namespaces: **(Enterprise only)** Creating or editing namespaces that include default ACL policies or ACL roles now requires `acl:write` permission in the default namespace. This change fixes CVE-2021-41805. + +BUG FIXES: + +* ca: fixes a bug that caused non blocking leaf cert queries to return the same cached response regardless of ca rotation or leaf cert expiry [[GH-11693](https://github.com/hashicorp/consul/issues/11693)] +* ca: fixes a bug that caused the intermediate cert used to sign leaf certs to be missing from the /connect/ca/roots API response when the Vault provider was used. [[GH-11671](https://github.com/hashicorp/consul/issues/11671)] +* cli: Display assigned node identities in output of `consul acl token list`. [[GH-11926](https://github.com/hashicorp/consul/issues/11926)] +* cli: when creating a private key, save the file with mode 0600 so that only the user has read permission. [[GH-11781](https://github.com/hashicorp/consul/issues/11781)] +* snapshot: **(Enterprise only)** fixed a bug where the snapshot agent would ignore the `license_path` setting in config files +* ui: Differentiate between Service Meta and Node Meta when choosing search fields +in Service Instance listings [[GH-11774](https://github.com/hashicorp/consul/issues/11774)] +* ui: Fixes an issue where under some circumstances after logging we present the +data loaded previous to you logging in. [[GH-11681](https://github.com/hashicorp/consul/issues/11681)] +* ui: Fixes an issue where under some circumstances the namespace selector could +become 'stuck' on the default namespace [[GH-11830](https://github.com/hashicorp/consul/issues/11830)] +* ui: Include `Service.Namespace` into available variables for `dashboard_url_templates` [[GH-11640](https://github.com/hashicorp/consul/issues/11640)] +* ui: Prevent disconnection notice appearing with auth change on certain pages [[GH-11905](https://github.com/hashicorp/consul/issues/11905)] +* xds: fix a deadlock when the snapshot channel already have a snapshot to be consumed. [[GH-11924](https://github.com/hashicorp/consul/issues/11924)] + ## 1.9.13 (December 15, 2021) SECURITY: From 40c616e8d7bb9934ed9dbfa821399b76ee826f5e Mon Sep 17 00:00:00 2001 From: Mark Anderson Date: Fri, 14 Jan 2022 13:45:56 -0800 Subject: [PATCH 246/404] Update website for latest version (#12099) Signed-off-by: Mark Anderson --- website/data/version.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/data/version.js b/website/data/version.js index 9797bab9f..2dcefc83f 100644 --- a/website/data/version.js +++ b/website/data/version.js @@ -1 +1 @@ -export default '1.11.1' +export default '1.11.2' From 6826923f326bb9f71c42ccebe47eceda35468a71 Mon Sep 17 00:00:00 2001 From: Preetha <460133+preetapan@users.noreply.github.com> Date: Fri, 14 Jan 2022 18:32:44 -0600 Subject: [PATCH 247/404] Add new page on multi DC ACLs (#12020) New docs page that details the steps needed to configure ACLS and replication in federated datacenters. --- .../acl/acl-federated-datacenters.mdx | 238 ++++++++++++++++++ website/data/docs-nav-data.json | 4 + 2 files changed, 242 insertions(+) create mode 100644 website/content/docs/security/acl/acl-federated-datacenters.mdx diff --git a/website/content/docs/security/acl/acl-federated-datacenters.mdx b/website/content/docs/security/acl/acl-federated-datacenters.mdx new file mode 100644 index 000000000..1c5b63792 --- /dev/null +++ b/website/content/docs/security/acl/acl-federated-datacenters.mdx @@ -0,0 +1,238 @@ +--- +layout: docs +page_title: ACL in Federated Datacenters +description: >- + This topic describes the specific ACL bootstrapping policies that are necessary when ACLs are enabled for federated, multi-datacenter deployments. +--- + +# ACLs in Federated Datacenters + +This topic describes how to set up Consul's access control list (ACL) system +in cluster deployments that span multiple data centers. This documentation is applicable +to new clusters rather than existing clusters. + +# Requirements + +Consul versions 1.4.0 and later + +## Configure ACLs in the Primary Datacenter + +In a [federated Consul deployment](/docs/k8s/installation/multi-cluster), one of the datacenters is marked as the primary datacenter. +The `acl` configuration block should be added to the primary datacenter server's configuration file +as shown in the following example. + +See the [ACL Config Stanza](/docs/agent/options#acl) for more detailed descriptions of each option. + +-> **Versions before 1.11.0:** The `initial_management` token was called the `master` token in versions +prior to 1.11.0 + + + +```hcl +bootstrap_expect = 3 +primary_datacenter = "PRIMARY_DATACENTER_VALUE" +acl = { + enabled = true + default_policy = "deny" + down_policy = "deny" + enable_token_persistence = true + enable_token_replication = true + tokens = { + initial_management = "ACL_MANAGEMENT_TOKEN" + agent = "YOUR_ACL_AGENT_TOKEN" + } +} + +``` + +```json +{ + "bootstrap_expect": N, + "primary_datacenter": "PRIMARY_DATACENTER_VALUE", + "acl": { + "enabled": true, + "default_policy": "deny", + "down_policy": "deny", + "enable_token_persistence": true, + "enable_token_replication": true, + "tokens": { + "initial_management": "ACL_MANAGEMENT_TOKEN", + "agent": "ACL_AGENT_TOKEN" + } + } +} +``` + + + +~> **Warning:** Note that most enterprise deployments have security requirements that prevent specifying tokens in configuration files. +The `enable_token_persistence` flag is also set in the configuration example so that the token is stored to disk in the agent's +[data directory](/docs/agent/options#_data_dir). Any future changes to the token that are made through the [API](/api/agent#update-acl-tokens) will +be persisted to the same location, and the value in the config file will be ignored. + +The ACL agent token can also be set using the [`consul acl set-agent-token`](/commands/acl/set-agent-token) CLI as shown below. + +```shell-session +$ consul acl set-agent-token agent "" +``` + +## Configure Servers in Secondary Datacenters + +Servers in secondary data centers must be configured to point to the primary data center +as shown in the following example. Secondary data centers also need the ACL replication token +provided to them. + +### Create the replication token for ACL Management + +Replication tokens are needed for ACL token replication and +to create both [configuration entries](/docs/agent/config-entries) and [auth methods](/docs/acl/auth-methods) +in connected secondary datacenters. + +Replication tokens require the following permissions: + +- `acl = "write"`: The permission allows you to replicate tokens. +- `operator = "write"`: This permission enables the `proxy-default` configuration entries to be replicated and enables CA certificate signing in the secondary datacenter. +- `policy = "read"` and `intentions = "read"` in the `service_prefix` field: These permissions enable `service-default` configuration entries, CA, and intention data to be replicated for all services. + + + + + +```hcl +acl = "write" +operator = "write" +service_prefix "" { + policy = "read" + intentions = "read" +} +``` + + + + +Create a replication policy with the following command: + +```shell-session +$ consul acl policy create -name replication -rules @replication-policy.hcl +``` + +Use your newly created policy to create the replication token. + +```shell-session +$ consul acl token create -description "replication token" -policy-name replication +``` + +### Configure the replication token in Secondary Datacenters + +Add the replication token generated above, to the ACL stanza in secondary datacenters. + + + +```hcl +primary_datacenter = "PRIMARY_DATACENTER_NAME" +acl = { + enabled = true + default_policy = "deny" + down_policy = "deny" + tokens = { + agent = "ACL_AGENT_TOKEN" + replication = "ACL_REPLICATION_TOKEN" + } +} +``` + +```json +{ + "primary_datacenter": "PRIMARY_DATACENTER_VALUE", + "acl": { + "enabled": true, + "default_policy": "deny", + "down_policy": "deny", + "tokens": { + "agent": "ACL_AGENT_TOKEN", + "replication": "ACL_REPLICATION_TOKEN" + } + } +} +``` + + + +~> **Warning:** When enabling ACL token replication in secondary datacenters, +global tokens already present in the secondary datacenter will be lost. For +production environments, consider configuring ACL replication in your initial +datacenter bootstrapping process. + +~> **Warning:** If you are using [Consul Enterprise](/docs/enterprise) and +the [Admin Partitions](https://www.consul.io/docs/enterprise/admin-partitions) +feature, only ACL tokens in the default partition are replicated to other datacenters. + +## WAN Join Servers + +This step is needed for new federated cluster deployments in order for +servers in each federated datacenter to discover each other. + +Run the following command from one of the server nodes. + +```shell-session +$ consul join -token="ACL_MANAGEMENT_TOKEN" -wan [server 1, server 2, ...] +``` + +## Configure Clients in Secondary Datacenters + +When ACLs are enabled, client agents need a special token known as the [`agent token`](/docs/security/acl/acl-system#acl-agent-token) to perform internal operations. Agent tokens need to have the right policies for node related actions, including +registering itself in the catalog, updating node level health checks, and performing [anti-entropy](/docs/architecture/anti-entropy) syncing. + +### Generate Agent ACL Token + +[ACL Node Identities](/docs/security/acl/acl-system#acl-node-identities) were introduced +in Consul 1.8.1 and enable easily creating agent tokens with appropriately scoped policies. + +To generate the ACL token using node identity, run the following command: + +```shell-session +$ consul acl token create -node-identity=: +``` + +### Configure clients to use the ACL agent token + +Update the client agents to include the token value from the previous step. Replace +the `ACL_AGENT_TOKEN` value below with the secret ID value from the command output. + + + +```hcl +primary_datacenter = "PRIMARY_DATACENTER_NAME" +acl = { + enabled = true + default_policy = "deny" + down_policy = "deny" + tokens = { + agent = "ACL_AGENT_TOKEN" + } +} +``` + +```json +{ + "primary_datacenter": "PRIMARY_DATACENTER_VALUE", + "acl": { + "enabled": true, + "default_policy": "deny", + "down_policy": "deny", + "tokens": { + "agent": "ACL_AGENT_TOKEN" + } + } +} +``` + + + +Note that client agents have to be restarted for ACL related configuration changes to take effect. + +## Summary + +After completing the above steps, a federated Consul cluster can be used with ACLs. Refer to +[ACL Replication Guide](https://learn.hashicorp.com/tutorials/consul/access-control-replication-multiple-datacenters?in=consul/security-operations) +for more on this topic. diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index fcfe7f907..94e18d047 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -822,6 +822,10 @@ "title": "Token Migration", "path": "security/acl/acl-migrate-tokens" }, + { + "title": "ACLs in Federated Datacenters", + "path": "security/acl/acl-federated-datacenters" + }, { "title": "Auth Methods", "routes": [ From fdd196ae1ca328db8f653ea63a37496f3b07f4d0 Mon Sep 17 00:00:00 2001 From: Thomas Kula Date: Fri, 14 Jan 2022 19:36:02 -0500 Subject: [PATCH 248/404] docs: Minor grammar change to ingress-gateway.mdx (#11365) Use plural form of "listeners", not possessive form of "listener's" --- website/content/docs/connect/config-entries/ingress-gateway.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/connect/config-entries/ingress-gateway.mdx b/website/content/docs/connect/config-entries/ingress-gateway.mdx index cdfe9e6c7..18b884d57 100644 --- a/website/content/docs/connect/config-entries/ingress-gateway.mdx +++ b/website/content/docs/connect/config-entries/ingress-gateway.mdx @@ -873,7 +873,7 @@ spec: through this listener. This can be either a service registered in the catalog, or a service defined only by [other config entries](/docs/connect/l7-traffic-management). If the wildcard specifier, \`*\`, is provided, then ALL services will be exposed through the listener. - This is not supported for listener's with protocol \`tcp\`.`, + This is not supported for listeners with protocol \`tcp\`.`, }, { name: 'Namespace', From 65d5836951c1e57759dd3da8589fbf9c93a8ee5c Mon Sep 17 00:00:00 2001 From: Jared Kirschner Date: Sat, 15 Jan 2022 09:29:35 -0800 Subject: [PATCH 249/404] docs: don't treat CLI cmd cross-ref as info box --- website/content/api-docs/acl/auth-methods.mdx | 10 +++++----- website/content/api-docs/acl/binding-rules.mdx | 10 +++++----- website/content/api-docs/acl/index.mdx | 10 +++++----- website/content/api-docs/acl/policies.mdx | 12 ++++++------ website/content/api-docs/acl/roles.mdx | 12 ++++++------ website/content/api-docs/acl/tokens.mdx | 14 +++++++------- website/content/api-docs/admin-partitions.mdx | 10 +++++----- website/content/api-docs/agent/index.mdx | 14 +++++++------- website/content/api-docs/agent/service.mdx | 4 ++-- website/content/api-docs/catalog.mdx | 6 +++--- website/content/api-docs/config.mdx | 8 ++++---- website/content/api-docs/connect/ca.mdx | 4 ++-- .../content/api-docs/connect/intentions.mdx | 18 +++++++++--------- website/content/api-docs/coordinate.mdx | 4 ++-- website/content/api-docs/event.mdx | 2 +- website/content/api-docs/kv.mdx | 6 +++--- website/content/api-docs/namespaces.mdx | 10 +++++----- website/content/api-docs/operator/area.mdx | 12 ++++++------ .../content/api-docs/operator/autopilot.mdx | 6 +++--- website/content/api-docs/operator/keyring.mdx | 8 ++++---- website/content/api-docs/operator/license.mdx | 6 +++--- website/content/api-docs/operator/raft.mdx | 2 +- website/content/api-docs/snapshot.mdx | 4 ++-- website/content/api-docs/status.mdx | 2 +- 24 files changed, 97 insertions(+), 97 deletions(-) diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 799a5de42..ab5a07646 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -34,7 +34,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl auth-method create`](/commands/acl/auth-method/create). +The corresponding CLI command is [`consul acl auth-method create`](/commands/acl/auth-method/create). ### Parameters @@ -162,7 +162,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl auth-method read`](/commands/acl/auth-method/read). +The corresponding CLI command is [`consul acl auth-method read`](/commands/acl/auth-method/read). ### Parameters @@ -216,7 +216,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl auth-method update`](/commands/acl/auth-method/update). +The corresponding CLI command is [`consul acl auth-method update`](/commands/acl/auth-method/update). ### Parameters @@ -349,7 +349,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl auth-method delete`](/commands/acl/auth-method/delete). +The corresponding CLI command is [`consul acl auth-method delete`](/commands/acl/auth-method/delete). ### Parameters @@ -393,7 +393,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl auth-method list`](/commands/acl/auth-method/list). +The corresponding CLI command is [`consul acl auth-method list`](/commands/acl/auth-method/list). ### Parameters diff --git a/website/content/api-docs/acl/binding-rules.mdx b/website/content/api-docs/acl/binding-rules.mdx index ca3365f57..20c8196db 100644 --- a/website/content/api-docs/acl/binding-rules.mdx +++ b/website/content/api-docs/acl/binding-rules.mdx @@ -34,7 +34,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl binding-rule create`](/commands/acl/binding-rule/create). +The corresponding CLI command is [`consul acl binding-rule create`](/commands/acl/binding-rule/create). ### Parameters @@ -160,7 +160,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl binding-rule read`](/commands/acl/binding-rule/read). +The corresponding CLI command is [`consul acl binding-rule read`](/commands/acl/binding-rule/read). ### Parameters @@ -212,7 +212,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl binding-rule update`](/commands/acl/binding-rule/update). +The corresponding CLI command is [`consul acl binding-rule update`](/commands/acl/binding-rule/update). ### Parameters @@ -344,7 +344,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl binding-rule delete`](/commands/acl/binding-rule/delete). +The corresponding CLI command is [`consul acl binding-rule delete`](/commands/acl/binding-rule/delete). ### Parameters @@ -388,7 +388,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl binding-rule list`](/commands/acl/binding-rule/list). +The corresponding CLI command is [`consul acl binding-rule list`](/commands/acl/binding-rule/list). ## Parameters diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index 879f90ce1..ddae6cfab 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -38,7 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul acl bootstrap`](/commands/acl/bootstrap). +The corresponding CLI command is [`consul acl bootstrap`](/commands/acl/bootstrap). ### Sample Request @@ -204,7 +204,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). +The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). ### Sample Payload @@ -253,7 +253,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). +The corresponding CLI command is [`consul acl translate-rules`](/commands/acl/translate-rules). ### Sample Request @@ -296,7 +296,7 @@ enabled. Login requires the ability to create local tokens which is restricted to the primary datacenter and any secondary datacenters with ACL token replication enabled. --> The corresponding CLI command is [`consul login`](/commands/login). +The corresponding CLI command is [`consul login`](/commands/login). ### Parameters @@ -384,7 +384,7 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just deleting a token for which you already must possess its secret. --> The corresponding CLI command is [`consul logout`](/commands/logout). +The corresponding CLI command is [`consul logout`](/commands/logout). ### Sample Request diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index 6c9edf95a..77a1d2ce5 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -33,7 +33,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl policy create`](/commands/acl/policy/create). +The corresponding CLI command is [`consul acl policy create`](/commands/acl/policy/create). ### Parameters @@ -108,7 +108,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl policy read`](/commands/acl/policy/read). +The corresponding CLI command is [`consul acl policy read`](/commands/acl/policy/read). ### Parameters @@ -160,7 +160,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl policy read -name=`](/commands/acl/policy/read#name). +The corresponding CLI command is [`consul acl policy read -name=`](/commands/acl/policy/read#name). ### Parameters @@ -212,7 +212,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl policy update`](/commands/acl/policy/update). +The corresponding CLI command is [`consul acl policy update`](/commands/acl/policy/update). ### Parameters @@ -293,7 +293,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl policy delete`](/commands/acl/policy/delete). +The corresponding CLI command is [`consul acl policy delete`](/commands/acl/policy/delete). ### Parameters @@ -337,7 +337,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl policy list`](/commands/acl/policy/list). +The corresponding CLI command is [`consul acl policy list`](/commands/acl/policy/list). ### Parameters diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index 099d12da0..29beb3fa7 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -32,7 +32,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl role create`](/commands/acl/role/create). +The corresponding CLI command is [`consul acl role create`](/commands/acl/role/create). ### Parameters @@ -174,7 +174,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl role read`](/commands/acl/role/read). +The corresponding CLI command is [`consul acl role read`](/commands/acl/role/read). ### Parameters @@ -246,7 +246,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl role read -name=`](/commands/acl/role/read#name). +The corresponding CLI command is [`consul acl role read -name=`](/commands/acl/role/read#name). ### Parameters @@ -317,7 +317,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl role update`](/commands/acl/role/update). +The corresponding CLI command is [`consul acl role update`](/commands/acl/role/update). ### Parameters @@ -435,7 +435,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl role delete`](/commands/acl/role/delete). +The corresponding CLI command is [`consul acl role delete`](/commands/acl/role/delete). ### Parameters @@ -479,7 +479,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl role list`](/commands/acl/role/list). +The corresponding CLI command is [`consul acl role list`](/commands/acl/role/list). ## Parameters diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index af158127c..9e457589b 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -32,7 +32,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token create`](/commands/acl/token/create). +The corresponding CLI command is [`consul acl token create`](/commands/acl/token/create). ### Parameters @@ -175,7 +175,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl token read`](/commands/acl/token/read). +The corresponding CLI command is [`consul acl token read`](/commands/acl/token/read). ### Parameters @@ -247,7 +247,7 @@ The table below shows this endpoint's support for -> **Note** - This endpoint requires no specific privileges as it is just retrieving the data for a token that you must already possess its secret. --> The corresponding CLI command is [`consul acl token read -self`](/commands/acl/token/read#self). +The corresponding CLI command is [`consul acl token read -self`](/commands/acl/token/read#self). ### Sample Request @@ -299,7 +299,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token update`](/commands/acl/token/update). +The corresponding CLI command is [`consul acl token update`](/commands/acl/token/update). ### Parameters @@ -449,7 +449,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token clone`](/commands/acl/token/clone). +The corresponding CLI command is [`consul acl token clone`](/commands/acl/token/clone). ### Parameters @@ -530,7 +530,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `acl:write` | --> The corresponding CLI command is [`consul acl token delete`](/commands/acl/token/delete). +The corresponding CLI command is [`consul acl token delete`](/commands/acl/token/delete). ### Parameters @@ -574,7 +574,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `acl:read` | --> The corresponding CLI command is [`consul acl token list`](/commands/acl/token/list). +The corresponding CLI command is [`consul acl token list`](/commands/acl/token/list). ## Parameters diff --git a/website/content/api-docs/admin-partitions.mdx b/website/content/api-docs/admin-partitions.mdx index a9129ed89..e80886160 100644 --- a/website/content/api-docs/admin-partitions.mdx +++ b/website/content/api-docs/admin-partitions.mdx @@ -29,7 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul partition create`](/commands/partition#create). +The corresponding CLI command is [`consul partition create`](/commands/partition#create). ### Parameters @@ -87,7 +87,7 @@ The table below shows this endpoint's support for 1 A non-anonymous token can read its own partition. --> The corresponding CLI command is [`consul partition read`](/commands/partition#read). +The corresponding CLI command is [`consul partition read`](/commands/partition#read). ### Parameters @@ -130,7 +130,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul partition write`](/commands/partition#write). +The corresponding CLI command is [`consul partition write`](/commands/partition#write). ### Parameters @@ -194,7 +194,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul partition delete`](/commands/partition#delete). +The corresponding CLI command is [`consul partition delete`](/commands/partition#delete). ### Parameters @@ -239,7 +239,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `consistent` | `none` | `operator:read` | --> The corresponding CLI command is [`consul partition list`](/commands/partition#list). +The corresponding CLI command is [`consul partition list`](/commands/partition#list). ### Sample Request diff --git a/website/content/api-docs/agent/index.mdx b/website/content/api-docs/agent/index.mdx index b472c6782..899949f37 100644 --- a/website/content/api-docs/agent/index.mdx +++ b/website/content/api-docs/agent/index.mdx @@ -227,7 +227,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:read` | --> The corresponding CLI command is [`consul members`](/commands/members). +The corresponding CLI command is [`consul members`](/commands/members). ### Parameters @@ -375,7 +375,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul reload`](/commands/reload). +The corresponding CLI command is [`consul reload`](/commands/reload). ### Sample Request @@ -408,7 +408,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `node:write` | --> The corresponding CLI command is [`consul maint`](/commands/maint). +The corresponding CLI command is [`consul maint`](/commands/maint). ### Parameters @@ -635,7 +635,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul join`](/commands/join). +The corresponding CLI command is [`consul join`](/commands/join). ### Parameters @@ -677,7 +677,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul leave`](/commands/leave). +The corresponding CLI command is [`consul leave`](/commands/leave). ### Sample Request @@ -716,7 +716,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul force-leave`](/commands/force-leave). +The corresponding CLI command is [`consul force-leave`](/commands/force-leave). ### Parameters @@ -792,7 +792,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `agent:write` | --> The corresponding CLI command is [`consul acl set-agent-token`](/commands/acl/set-agent-token). +The corresponding CLI command is [`consul acl set-agent-token`](/commands/acl/set-agent-token). ### Parameters diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index 8c37c7d1a..d870eae23 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -593,7 +593,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | --> The corresponding CLI command is [`consul services register`](/commands/services/register). +The corresponding CLI command is [`consul services register`](/commands/services/register). ### Query string parameters @@ -768,7 +768,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `service:write` | --> The corresponding CLI command is [`consul services deregister`](/commands/services/deregister). +The corresponding CLI command is [`consul services deregister`](/commands/services/deregister). ### Parameters diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index e685ce9fb..f1e9c7fe4 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -266,7 +266,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul catalog datacenters`](/commands/catalog/datacenters). +The corresponding CLI command is [`consul catalog datacenters`](/commands/catalog/datacenters). ### Sample Request @@ -299,7 +299,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | --> The corresponding CLI command is [`consul catalog nodes`](/commands/catalog/nodes). +The corresponding CLI command is [`consul catalog nodes`](/commands/catalog/nodes). ### Parameters @@ -396,7 +396,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `YES` | `all` | `none` | `service:read` | --> The corresponding CLI command is [`consul catalog services`](/commands/catalog/services). +The corresponding CLI command is [`consul catalog services`](/commands/catalog/services). ### Parameters diff --git a/website/content/api-docs/config.mdx b/website/content/api-docs/config.mdx index 24d386283..c8ea8172b 100644 --- a/website/content/api-docs/config.mdx +++ b/website/content/api-docs/config.mdx @@ -48,7 +48,7 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write` | --> The corresponding CLI command is [`consul config write`](/commands/config/write). +The corresponding CLI command is [`consul config write`](/commands/config/write). ### Parameters @@ -117,7 +117,7 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | --> The corresponding CLI command is [`consul config read`](/commands/config/read). +The corresponding CLI command is [`consul config read`](/commands/config/read). ### Parameters @@ -188,7 +188,7 @@ The table below shows this endpoint's support for | service-splitter | `service:read` | | terminating-gateway | `service:read` | --> The corresponding CLI command is [`consul config list`](/commands/config/list). +The corresponding CLI command is [`consul config list`](/commands/config/list). ### Parameters @@ -264,7 +264,7 @@ The table below shows this endpoint's support for | service-splitter | `service:write` | | terminating-gateway | `operator:write ` | --> The corresponding CLI command is [`consul config delete`](/commands/config/delete). +The corresponding CLI command is [`consul config delete`](/commands/config/delete). ### Parameters diff --git a/website/content/api-docs/connect/ca.mdx b/website/content/api-docs/connect/ca.mdx index 4804d362b..90a49d8c6 100644 --- a/website/content/api-docs/connect/ca.mdx +++ b/website/content/api-docs/connect/ca.mdx @@ -125,7 +125,7 @@ The table below shows this endpoint's support for 1 ACL required was operator:read prior to versions 1.8.6, 1.7.10, and 1.6.10. --> The corresponding CLI command is [`consul connect ca get-config`](/commands/connect/ca#get-config). +The corresponding CLI command is [`consul connect ca get-config`](/commands/connect/ca#get-config). ### Sample Request @@ -167,7 +167,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul connect ca set-config`](/commands/connect/ca#set-config). +The corresponding CLI command is [`consul connect ca set-config`](/commands/connect/ca#set-config). ### Parameters diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index 7afdb026d..d6458073a 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -54,7 +54,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention create -replace`](/commands/intention/create#replace). +The corresponding CLI command is [`consul intention create -replace`](/commands/intention/create#replace). ### URL Parameters @@ -165,7 +165,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention create`](/commands/intention/create). +The corresponding CLI command is [`consul intention create`](/commands/intention/create). ### URL Parameters @@ -319,7 +319,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention get`](/commands/intention/get). +The corresponding CLI command is [`consul intention get`](/commands/intention/get). ### Parameters @@ -396,7 +396,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention get`](/commands/intention/get). +The corresponding CLI command is [`consul intention get`](/commands/intention/get). ### Parameters @@ -458,7 +458,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is `consul intention list`. +The corresponding CLI command is `consul intention list`. ### Parameters @@ -549,7 +549,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). +The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). ### Parameters @@ -609,7 +609,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). +The corresponding CLI command is [`consul intention delete`](/commands/intention/delete). ### Parameters @@ -666,7 +666,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention check`](/commands/intention/check). +The corresponding CLI command is [`consul intention check`](/commands/intention/check). ### Parameters @@ -731,7 +731,7 @@ The table below shows this endpoint's support for for more details.

      --> The corresponding CLI command is [`consul intention match`](/commands/intention/match). +The corresponding CLI command is [`consul intention match`](/commands/intention/match). ### Parameters diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index e9103a116..f3328d551 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -38,7 +38,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul rtt -wan`](/commands/rtt#wan). +The corresponding CLI command is [`consul rtt -wan`](/commands/rtt#wan). ### Sample Request @@ -92,7 +92,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `node:read` | --> The corresponding CLI command is [`consul rtt`](/commands/rtt). +The corresponding CLI command is [`consul rtt`](/commands/rtt). ### Parameters diff --git a/website/content/api-docs/event.mdx b/website/content/api-docs/event.mdx index fd835a097..47ec7345d 100644 --- a/website/content/api-docs/event.mdx +++ b/website/content/api-docs/event.mdx @@ -29,7 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------- | | `NO` | `none` | `none` | `event:write` | --> The corresponding CLI command is [`consul event`](/commands/event). +The corresponding CLI command is [`consul event`](/commands/event). ### Parameters diff --git a/website/content/api-docs/kv.mdx b/website/content/api-docs/kv.mdx index 63e62060e..aa7c38670 100644 --- a/website/content/api-docs/kv.mdx +++ b/website/content/api-docs/kv.mdx @@ -41,7 +41,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `YES` | `all` | `none` | `key:read` | --> The corresponding CLI command is [`consul kv get`](/commands/kv/get). +The corresponding CLI command is [`consul kv get`](/commands/kv/get). ### Parameters @@ -173,7 +173,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | --> The corresponding CLI command is [`consul kv put`](/commands/kv/put). +The corresponding CLI command is [`consul kv put`](/commands/kv/put). ### Parameters @@ -261,7 +261,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `key:write` | --> The corresponding CLI command is [`consul kv delete`](/commands/kv/delete). +The corresponding CLI command is [`consul kv delete`](/commands/kv/delete). ### Parameters diff --git a/website/content/api-docs/namespaces.mdx b/website/content/api-docs/namespaces.mdx index 1d3b49871..6ddf26583 100644 --- a/website/content/api-docs/namespaces.mdx +++ b/website/content/api-docs/namespaces.mdx @@ -29,7 +29,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul namespace create`](/commands/namespace/create). +The corresponding CLI command is [`consul namespace create`](/commands/namespace/create). ### Parameters @@ -163,7 +163,7 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). --> The corresponding CLI command is [`consul namespace read`](/commands/namespace/read). +The corresponding CLI command is [`consul namespace read`](/commands/namespace/read). ### Parameters @@ -231,7 +231,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul namespace update`](/commands/namespace/update) or [`consul namespace write`](/commands/namespace/write). +The corresponding CLI command is [`consul namespace update`](/commands/namespace/update) or [`consul namespace write`](/commands/namespace/write). ### Parameters @@ -370,7 +370,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul namespace delete`](/commands/namespace/delete). +The corresponding CLI command is [`consul namespace delete`](/commands/namespace/delete). ### Parameters @@ -444,7 +444,7 @@ The table below shows this endpoint's support for 1 Access can be granted to list the Namespace if the token used when making the request has been granted any access in the namespace (read, list or write). --> The corresponding CLI command is [`consul namespace list`](/commands/namespace/list). +The corresponding CLI command is [`consul namespace list`](/commands/namespace/list). ### Sample Request diff --git a/website/content/api-docs/operator/area.mdx b/website/content/api-docs/operator/area.mdx index e28fe41f0..d4333503d 100644 --- a/website/content/api-docs/operator/area.mdx +++ b/website/content/api-docs/operator/area.mdx @@ -45,7 +45,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area create`](/commands/operator/area#create). +The corresponding CLI command is [`consul operator area create`](/commands/operator/area#create). ### Parameters @@ -113,7 +113,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `YES` | `all` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator area list`](/commands/operator/area#list). +The corresponding CLI command is [`consul operator area list`](/commands/operator/area#list). ### Parameters @@ -158,7 +158,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area update`](/commands/operator/area#update). +The corresponding CLI command is [`consul operator area update`](/commands/operator/area#update). ### Parameters @@ -250,7 +250,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area delete`](/commands/operator/area#delete). +The corresponding CLI command is [`consul operator area delete`](/commands/operator/area#delete). ### Parameters @@ -288,7 +288,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator area join`](/commands/operator/area#join). +The corresponding CLI command is [`consul operator area join`](/commands/operator/area#join). ### Parameters @@ -363,7 +363,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator area members`](/commands/operator/area#members). +The corresponding CLI command is [`consul operator area members`](/commands/operator/area#members). ### Parameters diff --git a/website/content/api-docs/operator/autopilot.mdx b/website/content/api-docs/operator/autopilot.mdx index 749e795f6..89ffb67a3 100644 --- a/website/content/api-docs/operator/autopilot.mdx +++ b/website/content/api-docs/operator/autopilot.mdx @@ -33,7 +33,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator autopilot get-config`](/commands/operator/autopilot#get-config). +The corresponding CLI command is [`consul operator autopilot get-config`](/commands/operator/autopilot#get-config). ### Parameters @@ -89,7 +89,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator autopilot set-config`](/commands/operator/autopilot#set-config). +The corresponding CLI command is [`consul operator autopilot set-config`](/commands/operator/autopilot#set-config). ### Parameters @@ -273,7 +273,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `operator:read` | --> The corresponding CLI command is [`consul operator autopilot state`](/commands/operator/autopilot#state). +The corresponding CLI command is [`consul operator autopilot state`](/commands/operator/autopilot#state). ### Parameters diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index b0dfef608..f493ad336 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -35,7 +35,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | -------------- | | `NO` | `none` | `none` | `keyring:read` | --> The corresponding CLI command is [`consul keyring -list`](/commands/keyring#list). +The corresponding CLI command is [`consul keyring -list`](/commands/keyring#list). ### Parameters @@ -122,7 +122,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | --> The corresponding CLI command is [`consul keyring -intstall`](/commands/keyring#install). +The corresponding CLI command is [`consul keyring -intstall`](/commands/keyring#install). ### Parameters @@ -170,7 +170,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | --> The corresponding CLI command is [`consul keyring -use`](/commands/keyring#use). +The corresponding CLI command is [`consul keyring -use`](/commands/keyring#use). ### Parameters @@ -218,7 +218,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | --> The corresponding CLI command is [`consul keyring -remove`](/commands/keyring#remove). +The corresponding CLI command is [`consul keyring -remove`](/commands/keyring#remove). ### Parameters diff --git a/website/content/api-docs/operator/license.mdx b/website/content/api-docs/operator/license.mdx index b4853ad1c..ff0c0b657 100644 --- a/website/content/api-docs/operator/license.mdx +++ b/website/content/api-docs/operator/license.mdx @@ -31,7 +31,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `all` | `none` | `none` | --> The corresponding CLI command is [`consul license get`](/commands/license#get). +The corresponding CLI command is [`consul license get`](/commands/license#get). ### Parameters @@ -98,7 +98,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul license put`](/commands/license#put). +The corresponding CLI command is [`consul license put`](/commands/license#put). ### Parameters @@ -170,7 +170,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul license reset`](/commands/license#reset). +The corresponding CLI command is [`consul license reset`](/commands/license#reset). ### Parameters diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index 3bd4dc4b8..892c5416d 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -130,7 +130,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ---------------- | | `NO` | `none` | `none` | `operator:write` | --> The corresponding CLI command is [`consul operator raft remove-peer`](/commands/operator/raft#remove-peer). +The corresponding CLI command is [`consul operator raft remove-peer`](/commands/operator/raft#remove-peer). ### Parameters diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index b2866eae3..36bc57e58 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -39,7 +39,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `default,stale` | `none` | `management` | --> The corresponding CLI command is [`consul snapshot save`](/commands/snapshot/save). +The corresponding CLI command is [`consul snapshot save`](/commands/snapshot/save). ### Parameters @@ -96,7 +96,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `management` | --> The corresponding CLI command is [`consul snapshot restore`](/commands/snapshot/restore). +The corresponding CLI command is [`consul snapshot restore`](/commands/snapshot/restore). ### Parameters diff --git a/website/content/api-docs/status.mdx b/website/content/api-docs/status.mdx index 39df6eeca..c7cb3e557 100644 --- a/website/content/api-docs/status.mdx +++ b/website/content/api-docs/status.mdx @@ -70,7 +70,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | ------------ | | `NO` | `none` | `none` | `none` | --> The corresponding CLI command is [`consul operator raft list-peers`](/commands/operator/raft#list-peers). +The corresponding CLI command is [`consul operator raft list-peers`](/commands/operator/raft#list-peers). ### Parameters From fa6200bba38a630a6e5da21883c200d6ed27b483 Mon Sep 17 00:00:00 2001 From: Jared Kirschner Date: Sat, 15 Jan 2022 09:31:27 -0800 Subject: [PATCH 250/404] docs: add missing link for intention list --- website/content/api-docs/connect/intentions.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/api-docs/connect/intentions.mdx b/website/content/api-docs/connect/intentions.mdx index d6458073a..ee50d8462 100644 --- a/website/content/api-docs/connect/intentions.mdx +++ b/website/content/api-docs/connect/intentions.mdx @@ -458,7 +458,7 @@ The table below shows this endpoint's support for for more details.

      -The corresponding CLI command is `consul intention list`. +The corresponding CLI command is [`consul intention list`](/commands/intention/list). ### Parameters From f6f28c49529741b13bd507812a9c910f9ce6f8ca Mon Sep 17 00:00:00 2001 From: Jared Kirschner Date: Sat, 15 Jan 2022 11:09:49 -0800 Subject: [PATCH 251/404] docs: show WAN fed with/without mesh gateways --- .../wan-federation-via-mesh-gateways.mdx | 4 +- ...-federation-connectivity-mesh-gateways.png | 3 + ...-federation-connectivity-mesh-gateways.svg | 2371 +++++++++++++++++ ...an-federation-connectivity-traditional.png | 3 + ...an-federation-connectivity-traditional.svg | 1539 +++++++++++ 5 files changed, 3919 insertions(+), 1 deletion(-) create mode 100755 website/public/img/wan-federation-connectivity-mesh-gateways.png create mode 100755 website/public/img/wan-federation-connectivity-mesh-gateways.svg create mode 100755 website/public/img/wan-federation-connectivity-traditional.png create mode 100755 website/public/img/wan-federation-connectivity-traditional.svg diff --git a/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx b/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx index eca396d92..8c5aa2c4b 100644 --- a/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx +++ b/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx @@ -20,6 +20,8 @@ Consul cluster, operators must ensure that all Consul servers in every datacenter must be directly connectable over their WAN-advertised network address from each other. +[![WAN federation without mesh gateways](/img/wan-federation-connectivity-traditional.png)](/img/wan-federation-connectivity-traditional.png) + This requires that operators setting up the virtual machines or containers hosting the servers take additional steps to ensure the necessary routing and firewall rules are in place to allow the servers to speak to each other over @@ -38,7 +40,7 @@ Operators looking to simplify their WAN deployment and minimize the exposed security surface area can elect to join these datacenters together using [mesh gateways](/docs/connect/gateways/mesh-gateway) to do so. -![Mesh Gateway Architecture](/img/mesh-gateways.png) +[![WAN federation with mesh gateways](/img/wan-federation-connectivity-mesh-gateways.png)](/img/wan-federation-connectivity-mesh-gateways.png) ## Architecture diff --git a/website/public/img/wan-federation-connectivity-mesh-gateways.png b/website/public/img/wan-federation-connectivity-mesh-gateways.png new file mode 100755 index 000000000..6545e62f6 --- /dev/null +++ b/website/public/img/wan-federation-connectivity-mesh-gateways.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:852c56560756f176487f6dbfb4cc5e88763257010408bc9957b8de8ca6a7c501 +size 722888 diff --git a/website/public/img/wan-federation-connectivity-mesh-gateways.svg b/website/public/img/wan-federation-connectivity-mesh-gateways.svg new file mode 100755 index 000000000..8d4599f7f --- /dev/null +++ b/website/public/img/wan-federation-connectivity-mesh-gateways.svg @@ -0,0 +1,2371 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DC1 + + + + + | ON PREMISES + + + + DC2 + + + + + | CLOUD US-EAST-1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + + + + + + + + + + + + + + 8300/tcp + Remote listener-wan-address=ip:port + Local listener-address=ip:port + + + + + + + + PRIMARY + SECONDARY + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + LEADER + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + LEADER + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + + + + + + + + + + + + + + + 8443/tcp + + + + + + + + + + + + + + + + + + 8443/tcp + + + + + With Mesh Gateways + CROSS-DC CONTROL PLANE COMMUNICATION (WAN FEDERATION) + + + consul connect envoy \ -gateway=mesh -register \ -service "dc1-mesh-gw" \ -address "ip1:8443" \ -wan-address "ip2:8443" \ -token=<used by gateway> + $ + + 8300/tcp + 8300/tcp + + + DC2 + DC1 + + Server RPC & Cross-DC WAN Gossip + ####/tcp + Intra-DC WAN Gossip + when using mesh gateways, cross-DC WAN gossipexclusively uses TCP over the server RPC port (8300) + Direct Primary GW Connection + unidirectional connection from all Consul server agentsin secondary DCs to the mesh gateway of the primary DC(see "primary_gateways" agent config option); necessaryfor infrequent internal operations (e.g., bootstrapping) + GW Local Listener + see "-address" config optionwhen launching gateway + EXAMPLE GATEWAY CONFIG + ####/tcp + GW Remote Listener + see "-wan-address" config optionwhen launching gateway + 8302/tcp + 8302/udp + not shown: the Consul client agent deployedwith each gateway to manage its configuration + + + + + + + + + + + + + + + Mesh Gateway + + + paths through gateways can differ forDC1 DC2 versus DC2 DC1 because agateway's local listener (for internal traffic) typicallydiffers from its remote listener (for external traffic) + + + + + + Control Plane + + + + + + + LEADER + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Consul Server Agent + System Components + Communication Paths + Ports + Requires server agent configuration: connect.enable_mesh_gateway_wan_federation=true + Not shown: Consul client agents and their LAN Serf Gossip traffic on ports 8301/{udp,tcp} are not shown because they are not involved in cross-DC communication. + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + diff --git a/website/public/img/wan-federation-connectivity-traditional.png b/website/public/img/wan-federation-connectivity-traditional.png new file mode 100755 index 000000000..91eb13b20 --- /dev/null +++ b/website/public/img/wan-federation-connectivity-traditional.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:625d73e3709f4091e69c01cacca5818767df2f90822a5cda3ad5de930e7c88eb +size 615867 diff --git a/website/public/img/wan-federation-connectivity-traditional.svg b/website/public/img/wan-federation-connectivity-traditional.svg new file mode 100755 index 000000000..0a8f64c9b --- /dev/null +++ b/website/public/img/wan-federation-connectivity-traditional.svg @@ -0,0 +1,1539 @@ + + + + + + + + + + + DC1 + + + + + | ON PREMISES + + + + DC2 + + + + + | CLOUD US-EAST-1 + + PRIMARY + SECONDARY + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + LEADER + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + LEADER + + + + + + + + + + + + + + + + + 8300/tcp + 8302/tcp + 8302/udp + + Standard: Without Mesh Gateways + CROSS-DC CONTROL PLANE COMMUNICATION (WAN FEDERATION) + + 8302/tcp + 8302/udp + + 8300/tcp + Server RPC + WAN Serf Gossip + all servers are connected in the WAN gossip pool + Control Plane + + + + + + LEADER + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Consul Server Agent + System Components + Communication Paths + Ports + gossip occurs primarily via UDP,TCP is only used as a fallback + + + + Not shown: Consul client agents and their LAN Serf Gossip traffic on ports 8301/{udp,tcp} are not shown because they are not involved in cross-DC communication. + + From 6bf8efe607ca607d43b722ee386bb6923657fc25 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 12 Jan 2022 17:46:12 -0500 Subject: [PATCH 252/404] rpc: refactor blocking query To remove the TODO, and make it more readable. In general this reduces the scope of variables, making them easier to reason about. It also introduces more early returns so that we can see the flow from the structure of the function. --- agent/consul/rpc.go | 101 ++++++++++++++++++++++---------------------- 1 file changed, 50 insertions(+), 51 deletions(-) diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index c8fa6846c..ddf429950 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -919,22 +919,26 @@ type queryFn func(memdb.WatchSet, *state.Store) error // blockingQuery is used to process a potentially blocking query operation. func (s *Server) blockingQuery(queryOpts structs.QueryOptionsCompat, queryMeta structs.QueryMetaCompat, fn queryFn) error { - var cancel func() var ctx context.Context = &lib.StopChannelContext{StopCh: s.shutdownCh} - var queriesBlocking uint64 - var queryTimeout time.Duration - - // Instrument all queries run metrics.IncrCounter([]string{"rpc", "query"}, 1) minQueryIndex := queryOpts.GetMinQueryIndex() - // Fast path right to the non-blocking query. + // Perform a non-blocking query if minQueryIndex == 0 { - goto RUN_QUERY + if queryOpts.GetRequireConsistent() { + if err := s.consistentRead(); err != nil { + return err + } + } + + var ws memdb.WatchSet + err := fn(ws, s.fsm.State()) + s.setQueryMeta(queryMeta, queryOpts.GetToken()) + return err } - queryTimeout = queryOpts.GetMaxQueryTime() + queryTimeout := queryOpts.GetMaxQueryTime() // Restrict the max query time, and ensure there is always one. if queryTimeout > s.config.MaxQueryTime { queryTimeout = s.config.MaxQueryTime @@ -946,64 +950,57 @@ func (s *Server) blockingQuery(queryOpts structs.QueryOptionsCompat, queryMeta s queryTimeout += lib.RandomStagger(queryTimeout / structs.JitterFraction) // wrap the base context with a deadline - ctx, cancel = context.WithDeadline(ctx, time.Now().Add(queryTimeout)) + ctx, cancel := context.WithTimeout(ctx, queryTimeout) defer cancel() // instrument blockingQueries // atomic inc our server's count of in-flight blockingQueries and store the new value - queriesBlocking = atomic.AddUint64(&s.queriesBlocking, 1) + queriesBlocking := atomic.AddUint64(&s.queriesBlocking, 1) // atomic dec when we return from blockingQuery() defer atomic.AddUint64(&s.queriesBlocking, ^uint64(0)) // set the gauge directly to the new value of s.blockingQueries metrics.SetGauge([]string{"rpc", "queries_blocking"}, float32(queriesBlocking)) -RUN_QUERY: - // Setup blocking loop - - // Validate - // If the read must be consistent we verify that we are still the leader. - if queryOpts.GetRequireConsistent() { - if err := s.consistentRead(); err != nil { - return err + for { + if queryOpts.GetRequireConsistent() { + if err := s.consistentRead(); err != nil { + return err + } } - } - // Run query - - // Operate on a consistent set of state. This makes sure that the - // abandon channel goes with the state that the caller is using to - // build watches. - state := s.fsm.State() - - // We can skip all watch tracking if this isn't a blocking query. - var ws memdb.WatchSet - if minQueryIndex > 0 { - ws = memdb.NewWatchSet() + // Operate on a consistent set of state. This makes sure that the + // abandon channel goes with the state that the caller is using to + // build watches. + state := s.fsm.State() + ws := memdb.NewWatchSet() // This channel will be closed if a snapshot is restored and the // whole state store is abandoned. ws.Add(state.AbandonCh()) - } - // Execute the queryFn - err := fn(ws, state) + err := fn(ws, state) + s.setQueryMeta(queryMeta, queryOpts.GetToken()) + if err != nil { + return err + } - // Update the query metadata. - s.setQueryMeta(queryMeta, queryOpts.GetToken()) + // Note we check queryOpts.MinQueryIndex is greater than zero to determine if + // blocking was requested by client, NOT meta.Index since the state function + // might return zero if something is not initialized and care wasn't taken to + // handle that special case (in practice this happened a lot so fixing it + // systematically here beats trying to remember to add zero checks in every + // state method). We also need to ensure that unless there is an error, we + // return an index > 0 otherwise the client will never block and burn CPU and + // requests. + if queryMeta.GetIndex() < 1 { + queryMeta.SetIndex(1) + } - // Note we check queryOpts.MinQueryIndex is greater than zero to determine if - // blocking was requested by client, NOT meta.Index since the state function - // might return zero if something is not initialized and care wasn't taken to - // handle that special case (in practice this happened a lot so fixing it - // systematically here beats trying to remember to add zero checks in every - // state method). We also need to ensure that unless there is an error, we - // return an index > 0 otherwise the client will never block and burn CPU and - // requests. - if err == nil && queryMeta.GetIndex() < 1 { - queryMeta.SetIndex(1) - } - // block up to the timeout if we don't see anything fresh. - if err == nil && minQueryIndex > 0 && queryMeta.GetIndex() <= minQueryIndex { + if queryMeta.GetIndex() > minQueryIndex { + return nil + } + + // block up to the timeout if we don't see anything fresh. if err := ws.WatchCtx(ctx); err == nil { // a non-nil error only occurs when the context is cancelled @@ -1014,13 +1011,15 @@ RUN_QUERY: // case. select { case <-state.AbandonCh(): + return nil default: - // loop back and look for an update again - goto RUN_QUERY } } + + if ctx.Err() != nil { + return nil + } } - return err } // setQueryMeta is used to populate the QueryMeta data for an RPC call From 95e471052b817bcf0921c2332ed7ae7c1556b17a Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 14 Jan 2022 18:53:31 -0500 Subject: [PATCH 253/404] rpc: add subtests to blockingQuery test --- agent/consul/rpc_test.go | 70 +++++++++++++++++----------------------- 1 file changed, 29 insertions(+), 41 deletions(-) diff --git a/agent/consul/rpc_test.go b/agent/consul/rpc_test.go index bde9b4d9e..0782cbade 100644 --- a/agent/consul/rpc_test.go +++ b/agent/consul/rpc_test.go @@ -233,13 +233,10 @@ func TestRPC_blockingQuery(t *testing.T) { defer os.RemoveAll(dir) defer s.Shutdown() - require := require.New(t) - assert := assert.New(t) - // Perform a non-blocking query. Note that it's significant that the meta has // a zero index in response - the implied opts.MinQueryIndex is also zero but // this should not block still. - { + t.Run("non-blocking query", func(t *testing.T) { var opts structs.QueryOptions var meta structs.QueryMeta var calls int @@ -247,16 +244,13 @@ func TestRPC_blockingQuery(t *testing.T) { calls++ return nil } - if err := s.blockingQuery(&opts, &meta, fn); err != nil { - t.Fatalf("err: %v", err) - } - if calls != 1 { - t.Fatalf("bad: %d", calls) - } - } + err := s.blockingQuery(&opts, &meta, fn) + require.NoError(t, err) + require.Equal(t, 1, calls) + }) // Perform a blocking query that gets woken up and loops around once. - { + t.Run("blocking query - single loop", func(t *testing.T) { opts := structs.QueryOptions{ MinQueryIndex: 3, } @@ -275,13 +269,10 @@ func TestRPC_blockingQuery(t *testing.T) { calls++ return nil } - if err := s.blockingQuery(&opts, &meta, fn); err != nil { - t.Fatalf("err: %v", err) - } - if calls != 2 { - t.Fatalf("bad: %d", calls) - } - } + err := s.blockingQuery(&opts, &meta, fn) + require.NoError(t, err) + require.Equal(t, 2, calls) + }) // Perform a blocking query that returns a zero index from blocking func (e.g. // no state yet). This should still return an empty response immediately, but @@ -292,7 +283,7 @@ func TestRPC_blockingQuery(t *testing.T) { // covered by tests but eventually when hit in the wild causes blocking // clients to busy loop and burn CPU. This test ensure that blockingQuery // systematically does the right thing to prevent future bugs like that. - { + t.Run("blocking query with 0 modifyIndex from state func", func(t *testing.T) { opts := structs.QueryOptions{ MinQueryIndex: 0, } @@ -311,9 +302,9 @@ func TestRPC_blockingQuery(t *testing.T) { calls++ return nil } - require.NoError(s.blockingQuery(&opts, &meta, fn)) - assert.Equal(1, calls) - assert.Equal(uint64(1), meta.Index, + require.NoError(t, s.blockingQuery(&opts, &meta, fn)) + assert.Equal(t, 1, calls) + assert.Equal(t, uint64(1), meta.Index, "expect fake index of 1 to force client to block on next update") // Simulate client making next request @@ -322,19 +313,19 @@ func TestRPC_blockingQuery(t *testing.T) { // This time we should block even though the func returns index 0 still t0 := time.Now() - require.NoError(s.blockingQuery(&opts, &meta, fn)) + require.NoError(t, s.blockingQuery(&opts, &meta, fn)) t1 := time.Now() - assert.Equal(2, calls) - assert.Equal(uint64(1), meta.Index, + assert.Equal(t, 2, calls) + assert.Equal(t, uint64(1), meta.Index, "expect fake index of 1 to force client to block on next update") - assert.True(t1.Sub(t0) > 20*time.Millisecond, + assert.True(t, t1.Sub(t0) > 20*time.Millisecond, "should have actually blocked waiting for timeout") - } + }) // Perform a query that blocks and gets interrupted when the state store // is abandoned. - { + t.Run("blocking query interrupted by abandonCh", func(t *testing.T) { opts := structs.QueryOptions{ MinQueryIndex: 3, } @@ -363,13 +354,10 @@ func TestRPC_blockingQuery(t *testing.T) { calls++ return nil } - if err := s.blockingQuery(&opts, &meta, fn); err != nil { - t.Fatalf("err: %v", err) - } - if calls != 1 { - t.Fatalf("bad: %d", calls) - } - } + err := s.blockingQuery(&opts, &meta, fn) + require.NoError(t, err) + require.Equal(t, 1, calls) + }) t.Run("ResultsFilteredByACLs is reset for unauthenticated calls", func(t *testing.T) { opts := structs.QueryOptions{ @@ -382,13 +370,13 @@ func TestRPC_blockingQuery(t *testing.T) { } err := s.blockingQuery(&opts, &meta, fn) - require.NoError(err) - require.False(meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be reset for unauthenticated calls") + require.NoError(t, err) + require.False(t, meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be reset for unauthenticated calls") }) t.Run("ResultsFilteredByACLs is honored for authenticated calls", func(t *testing.T) { token, err := lib.GenerateUUID(nil) - require.NoError(err) + require.NoError(t, err) opts := structs.QueryOptions{ Token: token, @@ -400,8 +388,8 @@ func TestRPC_blockingQuery(t *testing.T) { } err = s.blockingQuery(&opts, &meta, fn) - require.NoError(err) - require.True(meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be honored for authenticated calls") + require.NoError(t, err) + require.True(t, meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be honored for authenticated calls") }) } From 751bc2e7d35f21758ed2e2da4ec21ac462199c35 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 17 Jan 2022 15:09:08 -0500 Subject: [PATCH 254/404] rpc: move the index defaulting to setQueryMeta. This safeguard should be safe to apply in general. We are already applying it to non-blocking queries that call blockingQuery, so it should be fine to apply it to others. --- agent/consul/rpc.go | 23 +++++++++++------------ agent/consul/txn_endpoint_test.go | 1 + agent/structs/structs.go | 4 +++- agent/txn_endpoint_test.go | 6 ++++-- 4 files changed, 19 insertions(+), 15 deletions(-) diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index ddf429950..b536aad36 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -984,18 +984,6 @@ func (s *Server) blockingQuery(queryOpts structs.QueryOptionsCompat, queryMeta s return err } - // Note we check queryOpts.MinQueryIndex is greater than zero to determine if - // blocking was requested by client, NOT meta.Index since the state function - // might return zero if something is not initialized and care wasn't taken to - // handle that special case (in practice this happened a lot so fixing it - // systematically here beats trying to remember to add zero checks in every - // state method). We also need to ensure that unless there is an error, we - // return an index > 0 otherwise the client will never block and burn CPU and - // requests. - if queryMeta.GetIndex() < 1 { - queryMeta.SetIndex(1) - } - if queryMeta.GetIndex() > minQueryIndex { return nil } @@ -1034,6 +1022,17 @@ func (s *Server) setQueryMeta(m structs.QueryMetaCompat, token string) { m.SetKnownLeader(s.raft.Leader() != "") } maskResultsFilteredByACLs(token, m) + + // Always set a non-zero QueryMeta.Index. Generally we expect the + // QueryMeta.Index to be set to structs.RaftIndex.ModifyIndex. If the query + // returned no results we expect it to be set to the max index of the table, + // however we can't guarantee this always happens. + // To prevent a client from accidentally performing many non-blocking queries + // (which causes lots of unnecessary load), we always set a default value of 1. + // This is sufficient to prevent the unnecessary load in most cases. + if m.GetIndex() < 1 { + m.SetIndex(1) + } } // consistentRead is used to ensure we do not perform a stale diff --git a/agent/consul/txn_endpoint_test.go b/agent/consul/txn_endpoint_test.go index 9619dc881..10178866a 100644 --- a/agent/consul/txn_endpoint_test.go +++ b/agent/consul/txn_endpoint_test.go @@ -821,6 +821,7 @@ func TestTxn_Read(t *testing.T) { }, QueryMeta: structs.QueryMeta{ KnownLeader: true, + Index: 1, }, } require.Equal(expected, out) diff --git a/agent/structs/structs.go b/agent/structs/structs.go index cb84f77d9..168c70efe 100644 --- a/agent/structs/structs.go +++ b/agent/structs/structs.go @@ -370,7 +370,9 @@ func (q QueryBackend) String() string { // QueryMeta allows a query response to include potentially // useful metadata about a query type QueryMeta struct { - // Index in the raft log of the latest item returned by the query. + // Index in the raft log of the latest item returned by the query. If the + // query did not return any results the Index will be a value that will + // change when a new item is added. Index uint64 // If AllowStale is used, this is time elapsed since diff --git a/agent/txn_endpoint_test.go b/agent/txn_endpoint_test.go index 1d6d3f01b..6b3a7c468 100644 --- a/agent/txn_endpoint_test.go +++ b/agent/txn_endpoint_test.go @@ -10,11 +10,12 @@ import ( "testing" "time" + "github.com/hashicorp/raft" + "github.com/stretchr/testify/assert" + "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/testrpc" - "github.com/hashicorp/raft" - "github.com/stretchr/testify/assert" ) func TestTxnEndpoint_Bad_JSON(t *testing.T) { @@ -385,6 +386,7 @@ func TestTxnEndpoint_KV_Actions(t *testing.T) { }, QueryMeta: structs.QueryMeta{ KnownLeader: true, + Index: 1, }, } assert.Equal(t, expected, txnResp) From a28d1268cbfee31d3c3bb3c56555caae6787fadd Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 17 Jan 2022 16:33:17 -0500 Subject: [PATCH 255/404] rpc: extract rpcQueryTimeout method This helps keep the logic in blockingQuery more focused. In the future we may have a separate struct for RPC queries which may allow us to move this off of Server. --- agent/consul/rpc.go | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index b536aad36..52168b4db 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -938,19 +938,8 @@ func (s *Server) blockingQuery(queryOpts structs.QueryOptionsCompat, queryMeta s return err } - queryTimeout := queryOpts.GetMaxQueryTime() - // Restrict the max query time, and ensure there is always one. - if queryTimeout > s.config.MaxQueryTime { - queryTimeout = s.config.MaxQueryTime - } else if queryTimeout <= 0 { - queryTimeout = s.config.DefaultQueryTime - } - - // Apply a small amount of jitter to the request. - queryTimeout += lib.RandomStagger(queryTimeout / structs.JitterFraction) - - // wrap the base context with a deadline - ctx, cancel := context.WithTimeout(ctx, queryTimeout) + timeout := s.rpcQueryTimeout(queryOpts.GetMaxQueryTime()) + ctx, cancel := context.WithTimeout(ctx, timeout) defer cancel() // instrument blockingQueries @@ -1068,6 +1057,22 @@ func (s *Server) consistentRead() error { return structs.ErrNotReadyForConsistentReads } +// rpcQueryTimeout calculates the timeout for the query, ensures it is +// constrained to the configured limit, and adds jitter to prevent multiple +// blocking queries from all timing out at the same time. +func (s *Server) rpcQueryTimeout(queryTimeout time.Duration) time.Duration { + // Restrict the max query time, and ensure there is always one. + if queryTimeout > s.config.MaxQueryTime { + queryTimeout = s.config.MaxQueryTime + } else if queryTimeout <= 0 { + queryTimeout = s.config.DefaultQueryTime + } + + // Apply a small amount of jitter to the request. + queryTimeout += lib.RandomStagger(queryTimeout / structs.JitterFraction) + return queryTimeout +} + // maskResultsFilteredByACLs blanks out the ResultsFilteredByACLs flag if the // request is unauthenticated, to limit information leaking. // From 59206e38c7b12f12c592a6b6dce1bc7d37af37c5 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 17 Jan 2022 16:43:56 -0500 Subject: [PATCH 256/404] rpc: cleanup exit and blocking condition logic in blockingQuery Remove some unnecessary comments around query_blocking metric. The only line that needs any comments in the atomic decrement. Cleanup the block and return comments and logic. The old comment about AbandonCh may have been relevant before, but it is expected behaviour now. The logic was simplified by inverting the err condition. --- agent/consul/rpc.go | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index 52168b4db..6a5078170 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -942,13 +942,10 @@ func (s *Server) blockingQuery(queryOpts structs.QueryOptionsCompat, queryMeta s ctx, cancel := context.WithTimeout(ctx, timeout) defer cancel() - // instrument blockingQueries - // atomic inc our server's count of in-flight blockingQueries and store the new value - queriesBlocking := atomic.AddUint64(&s.queriesBlocking, 1) - // atomic dec when we return from blockingQuery() + count := atomic.AddUint64(&s.queriesBlocking, 1) + metrics.SetGauge([]string{"rpc", "queries_blocking"}, float32(count)) + // decrement the count when the function returns. defer atomic.AddUint64(&s.queriesBlocking, ^uint64(0)) - // set the gauge directly to the new value of s.blockingQueries - metrics.SetGauge([]string{"rpc", "queries_blocking"}, float32(queriesBlocking)) for { if queryOpts.GetRequireConsistent() { @@ -977,24 +974,17 @@ func (s *Server) blockingQuery(queryOpts structs.QueryOptionsCompat, queryMeta s return nil } - // block up to the timeout if we don't see anything fresh. - if err := ws.WatchCtx(ctx); err == nil { - // a non-nil error only occurs when the context is cancelled - - // If a restore may have woken us up then bail out from - // the query immediately. This is slightly race-ey since - // this might have been interrupted for other reasons, - // but it's OK to kick it back to the caller in either - // case. - select { - case <-state.AbandonCh(): - return nil - default: - } + // block until something changes, or the timeout + if err := ws.WatchCtx(ctx); err != nil { + // exit if we've reached the timeout, or other cancellation + return nil } - if ctx.Err() != nil { + // exit if the state store has been abandoned + select { + case <-state.AbandonCh(): return nil + default: } } } From 7e57aa8d36086a913ec37da4dd07e4fecc87a65d Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Tue, 18 Jan 2022 13:03:22 -0500 Subject: [PATCH 257/404] update serf to v0.9.7 (#12057) * update serf to v0.9.7 * add change log * update changelog --- .changelog/12057.txt | 3 +++ go.mod | 2 +- go.sum | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 .changelog/12057.txt diff --git a/.changelog/12057.txt b/.changelog/12057.txt new file mode 100644 index 000000000..46eb294ce --- /dev/null +++ b/.changelog/12057.txt @@ -0,0 +1,3 @@ +```release-note:bug +serf: update serf v0.9.7, complete the leave process if broadcasting leave timeout. +``` diff --git a/go.mod b/go.mod index ed0bdc6bb..913993383 100644 --- a/go.mod +++ b/go.mod @@ -56,7 +56,7 @@ require ( github.com/hashicorp/raft-autopilot v0.1.5 github.com/hashicorp/raft-boltdb v0.0.0-20211202195631-7d34b9fb3f42 // indirect github.com/hashicorp/raft-boltdb/v2 v2.2.0 - github.com/hashicorp/serf v0.9.6 + github.com/hashicorp/serf v0.9.7 github.com/hashicorp/vault/api v1.0.5-0.20200717191844-f687267c8086 github.com/hashicorp/vault/sdk v0.1.14-0.20200519221838-e0cfd64bc267 github.com/hashicorp/yamux v0.0.0-20210826001029-26ff87cf9493 diff --git a/go.sum b/go.sum index 22d0a704e..c2df87dd3 100644 --- a/go.sum +++ b/go.sum @@ -303,8 +303,9 @@ github.com/hashicorp/raft-boltdb v0.0.0-20211202195631-7d34b9fb3f42 h1:Ye8SofeDH github.com/hashicorp/raft-boltdb v0.0.0-20211202195631-7d34b9fb3f42/go.mod h1:wcXL8otVu5cpJVLjcmq7pmfdRCdaP+xnvu7WQcKJAhs= github.com/hashicorp/raft-boltdb/v2 v2.2.0 h1:/CVN9LSAcH50L3yp2TsPFIpeyHn1m3VF6kiutlDE3Nw= github.com/hashicorp/raft-boltdb/v2 v2.2.0/go.mod h1:SgPUD5TP20z/bswEr210SnkUFvQP/YjKV95aaiTbeMQ= -github.com/hashicorp/serf v0.9.6 h1:uuEX1kLR6aoda1TBttmJQKDLZE1Ob7KN0NPdE7EtCDc= github.com/hashicorp/serf v0.9.6/go.mod h1:TXZNMjZQijwlDvp+r0b63xZ45H7JmCmgg4gpTwn9UV4= +github.com/hashicorp/serf v0.9.7 h1:hkdgbqizGQHuU5IPqYM1JdSMV8nKfpuOnZYXssk9muY= +github.com/hashicorp/serf v0.9.7/go.mod h1:TXZNMjZQijwlDvp+r0b63xZ45H7JmCmgg4gpTwn9UV4= github.com/hashicorp/vault/api v1.0.5-0.20200717191844-f687267c8086 h1:OKsyxKi2sNmqm1Gv93adf2AID2FOBFdCbbZn9fGtIdg= github.com/hashicorp/vault/api v1.0.5-0.20200717191844-f687267c8086/go.mod h1:R3Umvhlxi2TN7Ex2hzOowyeNb+SfbVWI973N+ctaFMk= github.com/hashicorp/vault/sdk v0.1.14-0.20200519221838-e0cfd64bc267 h1:e1ok06zGrWJW91rzRroyl5nRNqraaBe4d5hiKcVZuHM= From 0f3636a741b95f39377f24e85c581b5310122229 Mon Sep 17 00:00:00 2001 From: David Yu Date: Tue, 18 Jan 2022 10:33:26 -0800 Subject: [PATCH 258/404] docs: move K8s compatability matrix and add more details for compatibility (#11936) * adding changes to move compat matrix * add back compat matrix * add Vault versions * adding details around monorepo * add note about secrets backend * small refactors * Slight update with OpenShift notes * Add note about OpenShift 4.4.x * Update website/content/docs/k8s/installation/compatibility.mdx Co-authored-by: Nitya Dhanushkodi * small formatting * Removing Consul image column from Vault as secrets backend section Since we already imply that default consul-k8s image should be used for support * formating changes Co-authored-by: Nitya Dhanushkodi --- .../docs/k8s/installation/compatibility.mdx | 52 +++++++++++++++++++ .../docs/k8s/upgrade/compatibility.mdx | 26 ---------- website/data/docs-nav-data.json | 8 +-- 3 files changed, 56 insertions(+), 30 deletions(-) create mode 100644 website/content/docs/k8s/installation/compatibility.mdx delete mode 100644 website/content/docs/k8s/upgrade/compatibility.mdx diff --git a/website/content/docs/k8s/installation/compatibility.mdx b/website/content/docs/k8s/installation/compatibility.mdx new file mode 100644 index 000000000..5b6603990 --- /dev/null +++ b/website/content/docs/k8s/installation/compatibility.mdx @@ -0,0 +1,52 @@ +--- +layout: docs +page_title: Compatibility Matrix +description: Compatibility Matrix for Consul Kubernetes +--- + +# Compatibility Matrix for Consul on Kubernetes + +For every release of Consul on Kubernetes, a Helm chart, `consul-k8s-control-plane` binary and a `consul-k8s` CLI binary is built and distributed through a single version. When deploying via Helm, the recommended best path for upgrading Consul on Kubernetes, is to upgrade using the same `consul-k8s-control-plane` version as the Helm Chart, as the Helm Chart and Control Plane binary are tightly coupled. + +## Supported Consul versions + +### Version 0.33.0 and above + +Starting with Consul Kubernetes 0.33.0, Consul Kubernetes versions all of it components (`consul-k8s` CLI, `consul-k8s-control-plane`, and Helm chart) with a single version. + +| Consul Version | Compatible consul-k8s Versions | +| -------------- | ------------------------------- | +| 1.11.x | 0.39.0 - latest | +| 1.10.x | 0.33.0 - 0.38.0 | + +### Prior to version 0.33.0 + +Prior to Consul Kubernetes 0.33.0, a separately versioned Consul Helm chart was distributed to deploy the Consul on Kubernetes binary. The default version of the `consul-k8s` binary specified by the Helm chart should be used to ensure proper compatibility, since the Helm chart is designed and tested with the default `consul-k8s` version. To find the default version for the appropriate Helm chart version, navigate to the corresponding tag (i.e. 0.32.1) in [`values.yaml`](https://github.com/hashicorp/consul-helm/blob/v0.32.1/values.yaml) and retrieve the `imageK8S` global value. + +| Consul Version | Compatible Consul Helm Versions (default `consul-k8s` image) | +| -------------- | -----------------------------------------------------------| +| 1.10.x | 0.32.0 (consul-k8s:0.26.0) - 0.32.1 (consul-k8s:0.26.0) | +| 1.9.x | 0.27.0 (consul-k8s:0.21.0) - 0.31.1 (consul-k8s:0.25.0) | +| 1.8.x | 0.22.0 (consul-k8s:0.16.0) - 0.26.0 (consul-k8s:0.20.0) | +| 1.7.x | 0.17.0 (consul-k8s:0.12.0) - 0.21.0 (consul-k8s:0.15.0) | +| 1.6.x | 0.10.0 (consul-k8s:0.9.2) - 0.16.2 (consul-k8s:0.11.0) | + +## Supported Envoy versions + +Supported versions of Envoy for Consul versions are also found in [Envoy - Supported Versions](https://www.consul.io/docs/connect/proxies/envoy#supported-versions). The recommended best practice is to use the default version of Envoy that is provided in the Helm values.yml file, as that is the version that has been tested with the default Consul and Consul Kubernetes binaries for a given Helm chart. + +## Red Hat OpenShift compatability + +Consul Kubernetes delivered Red Hat OpenShift support starting with Consul Helm chart version 0.25.0 for Consul 1.8.4 Please note the following details regarding OpenShift support. + +- Red Hat OpenShift is only supported for OpenShift 4.4.x and above. +- Only the default CNI Plugin, [OpenShift SDN CNI Plugin](https://docs.openshift.com/container-platform/4.9/networking/openshift_sdn/about-openshift-sdn.html) is currently supported. + +## Vault as a Secrets Backend compatibility + +Starting with Consul K8s 0.39.0 and Consul 1.11.x, Consul Kubernetes supports the ability to utilize Vault as the secrets backend for all the secrets utilized by Consul Kubernetes. + +| `consul-k8s` Versions | Compatible Vault Versions | Compatible Vault K8s Versions | +| ------------------------ | --------------------------| ----------------------------- | +| 0.39.0 - latest | 1.9.0 - latest | 0.14.0 - latest | + diff --git a/website/content/docs/k8s/upgrade/compatibility.mdx b/website/content/docs/k8s/upgrade/compatibility.mdx deleted file mode 100644 index faa2d2595..000000000 --- a/website/content/docs/k8s/upgrade/compatibility.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -layout: docs -page_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 Consul versions - -| Consul Version | Compatible Consul Helm Versions | -| -------------- | ------------------------------- | -| 1.11.x | 0.39.0 - latest | -| 1.10.x | 0.32.0 - 0.38.0 | -| 1.9.x | 0.27.0 - 0.31.1 | -| 1.8.x | 0.22.0 - 0.26.0 | -| 1.7.x | 0.17.0 - 0.21.0 | -| 1.6.x | 0.10.0 - 0.16.2 | - -## Supported Envoy versions - -Supported versions of Envoy for Consul versions are also found in [Envoy - Supported Versions](https://www.consul.io/docs/connect/proxies/envoy#supported-versions). The recommended best practice is to use the default version of Envoy that is provided in the Helm values.yml file, as that is the version that has been tested with the default Consul and Consul Kubernetes binaries for a given Helm chart. diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 94e18d047..2f8f81f2a 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -465,6 +465,10 @@ "path": "k8s/installation/vault/connect-ca" } ] + }, + { + "title": "Compatibility Matrix", + "path": "k8s/installation/compatibility" } ] }, @@ -541,10 +545,6 @@ { "title": "Overview", "path": "k8s/upgrade" - }, - { - "title": "Compatibility Matrix", - "path": "k8s/upgrade/compatibility" } ] }, From ec65890f018be9f2e9b23ba28840830d459cf2d9 Mon Sep 17 00:00:00 2001 From: Evan Culver Date: Tue, 18 Jan 2022 11:35:27 -0800 Subject: [PATCH 259/404] connect: Upgrade Envoy 1.20 to 1.20.1 (#11895) --- .changelog/11895.txt | 3 +++ .circleci/config.yml | 6 +++--- agent/xds/envoy_versioning_test.go | 2 +- agent/xds/proxysupport/proxysupport.go | 2 +- test/integration/connect/envoy/run-tests.sh | 2 +- website/content/docs/connect/proxies/envoy.mdx | 2 +- 6 files changed, 10 insertions(+), 7 deletions(-) create mode 100644 .changelog/11895.txt diff --git a/.changelog/11895.txt b/.changelog/11895.txt new file mode 100644 index 000000000..3bc591833 --- /dev/null +++ b/.changelog/11895.txt @@ -0,0 +1,3 @@ +```release-note:improvement +connect: update Envoy supported version of 1.20 to 1.20.1 +``` diff --git a/.circleci/config.yml b/.circleci/config.yml index 362523f85..274092b15 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -837,10 +837,10 @@ jobs: environment: ENVOY_VERSION: "1.19.1" - envoy-integration-test-1_20_0: + envoy-integration-test-1_20_1: <<: *ENVOY_TESTS environment: - ENVOY_VERSION: "1.20.0" + ENVOY_VERSION: "1.20.1" # run integration tests for the connect ca providers test-connect-ca-providers: @@ -1091,7 +1091,7 @@ workflows: - envoy-integration-test-1_19_1: requires: - dev-build - - envoy-integration-test-1_20_0: + - envoy-integration-test-1_20_1: requires: - dev-build diff --git a/agent/xds/envoy_versioning_test.go b/agent/xds/envoy_versioning_test.go index 6b715f4c2..75211ecc5 100644 --- a/agent/xds/envoy_versioning_test.go +++ b/agent/xds/envoy_versioning_test.go @@ -126,7 +126,7 @@ func TestDetermineSupportedProxyFeaturesFromString(t *testing.T) { "1.17.0", "1.17.1", "1.17.2", "1.17.3", "1.17.4", "1.18.0", "1.18.1", "1.18.2", "1.18.3", "1.18.4", "1.19.0", "1.19.1", - "1.20.0", + "1.20.0", "1.20.1", } { cases[v] = testcase{expect: supportedProxyFeatures{}} } diff --git a/agent/xds/proxysupport/proxysupport.go b/agent/xds/proxysupport/proxysupport.go index 9d4304426..7f7c829a6 100644 --- a/agent/xds/proxysupport/proxysupport.go +++ b/agent/xds/proxysupport/proxysupport.go @@ -7,7 +7,7 @@ package proxysupport // // see: https://www.consul.io/docs/connect/proxies/envoy#supported-versions var EnvoyVersions = []string{ - "1.20.0", + "1.20.1", "1.19.1", "1.18.4", "1.17.4", diff --git a/test/integration/connect/envoy/run-tests.sh b/test/integration/connect/envoy/run-tests.sh index b5978ad29..148ceb4d1 100755 --- a/test/integration/connect/envoy/run-tests.sh +++ b/test/integration/connect/envoy/run-tests.sh @@ -10,7 +10,7 @@ readonly HASHICORP_DOCKER_PROXY="docker.mirror.hashicorp.services" DEBUG=${DEBUG:-} # ENVOY_VERSION to run each test against -ENVOY_VERSION=${ENVOY_VERSION:-"1.20.0"} +ENVOY_VERSION=${ENVOY_VERSION:-"1.20.1"} export ENVOY_VERSION if [ ! -z "$DEBUG" ] ; then diff --git a/website/content/docs/connect/proxies/envoy.mdx b/website/content/docs/connect/proxies/envoy.mdx index c5e29b24c..52c1f1471 100644 --- a/website/content/docs/connect/proxies/envoy.mdx +++ b/website/content/docs/connect/proxies/envoy.mdx @@ -35,7 +35,7 @@ compatible Envoy versions. | Consul Version | Compatible Envoy Versions | | ------------------- | ------------------------------------------------------ | -| 1.11.x | 1.20.0, 1.19.1, 1.18.4, 1.17.4 | +| 1.11.x | 1.20.1, 1.19.1, 1.18.4, 1.17.4 | | 1.10.x | 1.18.4, 1.17.4, 1.16.5, 1.15.5 | | 1.9.x | 1.16.5, 1.15.5, 1.14.71, 1.13.71 | | 1.8.x | 1.14.7, 1.13.7, 1.12.7, 1.11.2 | From db32ca7be23ca6fe88196abdc00d7f3b410cece7 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Tue, 18 Jan 2022 12:23:17 -0800 Subject: [PATCH 260/404] addressed feedback about binary --- website/content/docs/api-gateway.mdx | 53 +++++++++++++++++++--------- 1 file changed, 36 insertions(+), 17 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index ec00cda18..0ee9ffa84 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -17,23 +17,27 @@ Consul API Gateway is an implementation of the Kubernetes Gateway [API Specifica Your datacenter must meet the following requirements prior to configuring the Consul API Gateway: - A Kubernetes cluster must be running -- Consul 1.11.1+ +- Consul 1.11.2+ ## Installation 1. Create a values file for your Consul server agents that contains the following parameters: - ```yaml - global: - name: consul - image: 'hashicorp/consul:1.11.1' - tls: - enabled: true - connectInject: - enabled: true - controller: - enabled: true - ``` + + +```yaml +global: + name: consul + image: 'hashicorp/consul:1.11.2' + tls: + enabled: true +connectInject: + enabled: true +controller: + enabled: true +``` + + 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. @@ -46,8 +50,8 @@ The following components will be installed: - Gateway controller - CRDs required 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. ```shell-session -$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-techpreview" -$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-techpreview" +$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" +$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" ``` ## Usage @@ -63,7 +67,22 @@ $ kubectl apply -f gateway-configuration.yaml ### Using the Consul API Gateway Binary -You can manually start the Consul API Gateway control plane server using the binary located in the home directory to issue the `server` command: +You can download the Consul API Gateway binary and use it to manually start the control plane server. + +1. Download the binary from the [Consul API Gateway repository](https://github.com/hashicorp/consul-api-gateway). +1. Navigate to the `consul-api-gateway-main` directory and build the binary: + +```shell-session +$ go build +``` + +1. (Optional) Copy the binary to the execution path, e.g.: + +```shell-session +$ cp consul-api-gateway /usr/bin +``` + +1. Use the `server` command to interact with the Consul API Gateway binary: ```shell-session $ ./consul-api-gateway server @@ -89,7 +108,7 @@ You can also issue the `version` command to print the Consul API Gateway version ```shell-session $ ./consul-api-gateway version -consul-api-gateway 0.1.0-dev +consul-api-gateway 0.1.0 ``` ## Configuration @@ -151,7 +170,7 @@ In the example included the [Gateway](#gateway) description, a listener named `h ### Route -Routes are independent configuration objects that are associated with a specific listener. +Routes are independent configuration objects that are associated with specific listeners. Use the `kind: HTTPRoute` option to declare a route and use the `spec` option to specify the route details. The following example creates a route named `example-route` associated with a listener defined in `example-gateway`. From b2155dfa7c8072762496d88431c40849037629e6 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Tue, 18 Jan 2022 12:28:44 -0800 Subject: [PATCH 261/404] addressed feedback about binary - fixed bad formatting --- website/content/docs/api-gateway.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 0ee9ffa84..1ce7f4981 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -37,7 +37,7 @@ controller: enabled: true ``` -
      +
      1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. From c82e3130a034c459c98b5deb343091fa185271d9 Mon Sep 17 00:00:00 2001 From: Jared Kirschner Date: Fri, 14 Jan 2022 16:23:00 -0800 Subject: [PATCH 262/404] docs: clarify gateways don't connect to internet Consul's ingress and terminating gateways are meant to enable connectivity within your organizational network between services outside the Consul service mesh and those within. They are not meant to connect to the public internet. --- .../content/docs/connect/gateways/index.mdx | 14 +- .../docs/connect/gateways/ingress-gateway.mdx | 4 +- .../connect/gateways/terminating-gateway.mdx | 2 +- .../svgs/consul_gateway_overview.svg | 659 ++++++++++-------- .../svgs/consul_gateway_overview_wide.svg | 321 --------- 5 files changed, 385 insertions(+), 615 deletions(-) delete mode 100644 website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg diff --git a/website/content/docs/connect/gateways/index.mdx b/website/content/docs/connect/gateways/index.mdx index 2111bd86c..eed33af64 100644 --- a/website/content/docs/connect/gateways/index.mdx +++ b/website/content/docs/connect/gateways/index.mdx @@ -10,10 +10,10 @@ description: >- This topic provides an overview of the gateway features shipped with Consul. Gateways provide connectivity into, out of, and between Consul service meshes. You can configure the following types of gateways: - [Mesh gateways](#mesh-gateways) enable service-to-service traffic between Consul datacenters or between Consul admin partitions. They also enable datacenters to be federated across wide area networks. -- [Ingress gateways](#ingress-gateways) enable services to accept traffic from outside the Consul service mesh. -- [Terminating gateways](#terminating-gateways) enable you to route traffic from services in the Consul service mesh to external services. +- [Ingress gateways](#ingress-gateways) enable connectivity within your organizational network from services outside the Consul service mesh to services in the mesh. +- [Terminating gateways](#terminating-gateways) enable connectivity within your organizational network from services in the Consul service mesh to services outside the mesh. -[![Gateway Architecture](/img/consul-connect/svgs/consul_gateway_overview_wide.svg)](/img/consul-connect/svgs/consul_gateway_overview_wide.svg) +[![Gateway Architecture](/img/consul-connect/svgs/consul_gateway_overview.svg)](/img/consul-connect/svgs/consul_gateway_overview.svg) ## Mesh Gateways @@ -37,8 +37,9 @@ Mesh gateways enable the following scenarios: -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. -Ingress gateways are an entrypoint for outside traffic. They enable potentially unauthenticated ingress traffic from -services outside the Consul service mesh to services inside the service mesh. +Ingress gateways enable connectivity within your organizational network from services outside the Consul service mesh +to services in the mesh. To accept ingress traffic from the public internet, use Consul's +[API Gateway](https://www.hashicorp.com/blog/announcing-hashicorp-consul-api-gateway) instead. These gateways allow you to define what services should be exposed, on what port, and by what hostname. You configure an ingress gateway by defining a set of listeners that can map to different sets of backing services. @@ -55,7 +56,8 @@ and the [ingress gateway tutorial](https://learn.hashicorp.com/tutorials/consul/ -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. -Terminating gateways enable connectivity from services in the Consul service mesh to services outside the mesh. +Terminating gateways enable connectivity within your organizational network from services in the Consul service mesh +to services outside the mesh. Services outside the mesh do not have sidecar proxies or are not [integrated natively](/docs/connect/native). These may be services running on legacy infrastructure or managed cloud services running on infrastructure you do not control. diff --git a/website/content/docs/connect/gateways/ingress-gateway.mdx b/website/content/docs/connect/gateways/ingress-gateway.mdx index 72c98125e..50c796532 100644 --- a/website/content/docs/connect/gateways/ingress-gateway.mdx +++ b/website/content/docs/connect/gateways/ingress-gateway.mdx @@ -10,8 +10,8 @@ description: >- -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. -Ingress gateways enable ingress traffic from services outside the Consul -service mesh to services inside the Consul service mesh. An ingress gateway is +Ingress gateways enable connectivity within your organizational network from services outside the Consul +service mesh to services in the mesh. An ingress gateway is a type of proxy and must be registered as a service in Consul, with the [kind](/api/agent/service#kind) set to "ingress-gateway". They are an entrypoint for outside traffic and allow you to define what services should be diff --git a/website/content/docs/connect/gateways/terminating-gateway.mdx b/website/content/docs/connect/gateways/terminating-gateway.mdx index fe5c700e7..650af5f7f 100644 --- a/website/content/docs/connect/gateways/terminating-gateway.mdx +++ b/website/content/docs/connect/gateways/terminating-gateway.mdx @@ -11,7 +11,7 @@ description: >- -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. -Terminating gateways enable connectivity from services in the Consul service mesh to +Terminating gateways enable connectivity within your organizational network from services in the Consul service mesh to services outside the mesh. These gateways effectively act as Connect proxies that can represent more than one service. They terminate Connect mTLS connections, enforce intentions, and forward requests to the appropriate destination. diff --git a/website/public/img/consul-connect/svgs/consul_gateway_overview.svg b/website/public/img/consul-connect/svgs/consul_gateway_overview.svg index f6db90f66..d604e5049 100644 --- a/website/public/img/consul-connect/svgs/consul_gateway_overview.svg +++ b/website/public/img/consul-connect/svgs/consul_gateway_overview.svg @@ -1,321 +1,410 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - - + + + + + + + + + + + + + + + + + + - - + + diff --git a/website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg b/website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg deleted file mode 100644 index 308caa365..000000000 --- a/website/public/img/consul-connect/svgs/consul_gateway_overview_wide.svg +++ /dev/null @@ -1,321 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From ffa755865814db65cf7de3a7d3df8e6230c96b6d Mon Sep 17 00:00:00 2001 From: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> Date: Tue, 18 Jan 2022 14:30:35 -0800 Subject: [PATCH 263/404] Apply suggestions from code review Co-authored-by: Blake Covarrubias --- website/content/docs/api-gateway.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 1ce7f4981..5a5b4f1a2 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -50,8 +50,8 @@ The following components will be installed: - Gateway controller - CRDs required 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. ```shell-session -$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" -$ kubectl apply -k "github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" +$ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" +$ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" ``` ## Usage From c49773590f9f0af9c241e2c2e111130a4deba721 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Tue, 18 Jan 2022 15:06:55 -0800 Subject: [PATCH 264/404] fixed formatting --- website/content/docs/api-gateway.mdx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 5a5b4f1a2..3327e8004 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -42,7 +42,7 @@ controller: 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. ```shell-session -$ helm install consul hashicorp/consul --version 0.39.0 -f values.yaml +$ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml ``` The following components will be installed: - Gateway controller - CRDs required by the Kubernetes Gateway API specification - `kustomize` manifests for completing the installation @@ -62,7 +62,7 @@ $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref= 1. Issue the `kubectl apply` command to implement the configurations, e.g.: ```shell-session -$ kubectl apply -f gateway-configuration.yaml +$ kubectl apply --values gateway-configuration.yaml ``` ### Using the Consul API Gateway Binary @@ -152,7 +152,7 @@ spec:
      Refer to the Kubernetes Gateway API documentation for details about configuring gateways: -https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.Gateway + ### Listeners @@ -164,7 +164,7 @@ Add the `listener` object to the `gateway` configuration and specify the followi - `protocol`: Specifies the network protocol expected by the listener. Refer to the Kubernetes Gateway API documentation for details about configuring listeners: -https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.Listener + In the example included the [Gateway](#gateway) description, a listener named `https` that listens over `HTTPS` is configured to listen on port `443` From 55e9afec9907a843b68da890b658d4d63ee1e8f2 Mon Sep 17 00:00:00 2001 From: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> Date: Tue, 18 Jan 2022 15:31:58 -0800 Subject: [PATCH 265/404] Apply suggestions from code review Co-authored-by: Freddy --- .../content/docs/connect/config-entries/ingress-gateway.mdx | 3 --- 1 file changed, 3 deletions(-) diff --git a/website/content/docs/connect/config-entries/ingress-gateway.mdx b/website/content/docs/connect/config-entries/ingress-gateway.mdx index 763253bde..a14a364f3 100644 --- a/website/content/docs/connect/config-entries/ingress-gateway.mdx +++ b/website/content/docs/connect/config-entries/ingress-gateway.mdx @@ -287,7 +287,6 @@ kind: IngressGateway metadata: name: us-east-ingress namespace: default - partition: team-frontend spec: listeners: - port: 3456 @@ -670,7 +669,6 @@ kind: IngressGateway metadata: name: us-east-ingress namespace: default - partition: default spec: listeners: - port: 80 @@ -845,7 +843,6 @@ kind: ServiceRouter metadata: name: api namespace: default - partition: default spec: routes: - match: From c7331577c9e94d34586b72cea06e5d4048aa4b06 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Tue, 18 Jan 2022 15:40:43 -0800 Subject: [PATCH 266/404] applied final feedback --- .../config-entries/ingress-gateway.mdx | 115 +++++++++--------- 1 file changed, 58 insertions(+), 57 deletions(-) diff --git a/website/content/docs/connect/config-entries/ingress-gateway.mdx b/website/content/docs/connect/config-entries/ingress-gateway.mdx index a14a364f3..21f14daea 100644 --- a/website/content/docs/connect/config-entries/ingress-gateway.mdx +++ b/website/content/docs/connect/config-entries/ingress-gateway.mdx @@ -8,7 +8,7 @@ description: >- # Ingress Gateway -This topic provides reference information for the `ingress-gateway` configuration entry. +This topic provides reference information for the `ingress-gateway` configuration entry. ## Introduction @@ -20,20 +20,20 @@ For other platforms, see [Ingress Gateway](/docs/connect/ingress-gateway). ## Requirements -* Consul versions 1.8.4+ is required to use the `IngressGateway` custom resource on Kubernetes. -* Consul versions 1.8.0+ is required to use the `ingress-gateway` custom resource on all other platforms. +- Consul versions 1.8.4+ is required to use the `IngressGateway` custom resource on Kubernetes. +- Consul versions 1.8.0+ is required to use the `ingress-gateway` custom resource on all other platforms. ## Usage 1. Verify that your datacenter meets the conditions specified in the [Requirements](#requirements). -1. Specify the `ingress-gateway` (`IngressGateway`) configuration in the agent configuration file (see [config_entries](/docs/agent/options#config_entries)) as described in [Configuration](#configuration). -1. Apply the configuration using one of the following methods: - * Kubernetes CRD: Refer to the [Custom Resource Definitions](/docs/k8s/crds) documentation for details. - * Issue the `consul config write` command: Refer to the [Consul Config Write](/commands/config/write) documentation for details. +1. Create a file containing the configuration entry settings (see [Configuration](#configuration)). +1. Apply the configuration settings using one of the following methods: + - Kubernetes CRD: Refer to the [Custom Resource Definitions](/docs/k8s/crds) documentation for details. + - Issue the `consul config write` command: Refer to the [Consul Config Write](/commands/config/write) documentation for details. -## Configuration +## Configuration -Use the following syntax to configure an ingress gateway. +Use the following syntax to configure an ingress gateway. @@ -153,11 +153,12 @@ spec: ] } ``` + - + -Refer to the [Available Fields](#available-fields) section for complete information about all ingress gateway configuration entry options and to the [Example Configurations](#example-configurations) section for example use-cases. +Refer to the [Available Fields](#available-fields) section for complete information about all ingress gateway configuration entry options and to the [Example Configurations](#example-configurations) section for example use-cases. ### Scope @@ -202,7 +203,6 @@ The following examples describe possible use-cases for ingress gateway configura The following example sets up a TCP listener on an ingress gateway named `us-east-ingress` to proxy traffic to the `db` service. The Consul Enterprise version also posits the gateway listener inside the `default` [namespace](/docs/enterprise/namespaces) and the `team-frontend` [admin partition](/docs/enterprise/admin-partitions): - @@ -326,14 +326,14 @@ spec: In the following example, two listeners are configured on an ingress gateway named `us-east-ingress`: -* The first listener is configured to listen on port `8080` and uses a wildcard (`*`) to proxy traffic to all services in the datacenter. -* The second listener exposes the `api` and `web` services on port `4567` at user-provided hosts. -* TLS is enabled on every listener. +- The first listener is configured to listen on port `8080` and uses a wildcard (`*`) to proxy traffic to all services in the datacenter. +- The second listener exposes the `api` and `web` services on port `4567` at user-provided hosts. +- TLS is enabled on every listener. The Consul Enterprise version implements the following additional configurations: -* The ingress gateway is set up in the `default` [namespace](/docs/enterprise/namespaces) and proxies traffic to all services in the `frontend` namespace. -* The `api` and `web` services are proxied to team-specific [admin partitions](/docs/enterprise/admin-partitions): +- The ingress gateway is set up in the `default` [namespace](/docs/enterprise/namespaces) and proxies traffic to all services in the `frontend` namespace. +- The `api` and `web` services are proxied to team-specific [admin partitions](/docs/enterprise/admin-partitions): @@ -557,7 +557,7 @@ spec: The following example sets up an HTTP listener on an ingress gateway named `us-east-ingress` to proxy traffic to a virtual service named `api`. In the Consul Enterprise version, `us-east-ingress` is set up in the `default` namespace and `default` partition. -In this use-case, internal-only debug headers should be stripped before responding to external clients. +In this use-case, internal-only debug headers should be stripped before responding to external clients. Requests to internal services should also be labelled to indicate which gateway they came through. @@ -693,7 +693,7 @@ spec: { "Name": "api", "Namespace": "frontend", - "RequestHeaders": { + "RequestHeaders": { "Add": { "x-gateway": "us-east-ingress" } @@ -899,7 +899,7 @@ spec: ## Available Fields -You can specify the following parameters to configure ingress gateway configuration entries. +You can specify the following parameters to configure ingress gateway configuration entries. ', - description: "Defines a set of parameters that configures the gateway to load TLS certificates from an external SDS service. See [SDS](/docs/connect/gateways/ingress-gateway#sds) for more details on usage.

      SDS properties defined in this field are used as defaults for all listeners on the gateway.", + description: + 'Defines a set of parameters that configures the gateway to load TLS certificates from an external SDS service. See [SDS](/docs/connect/gateways/ingress-gateway#sds) for more details on usage.

      SDS properties defined in this field are used as defaults for all listeners on the gateway.', children: [ { name: 'ClusterName', type: 'string', - description: "Specifies the name of the SDS cluster from which Consul should retrieve certificates. This cluster must be [specified in the Gateway's bootstrap configuration](/docs/connect/gateways/ingress-gateway#sds).", + description: + "Specifies the name of the SDS cluster from which Consul should retrieve certificates. This cluster must be [specified in the Gateway's bootstrap configuration](/docs/connect/gateways/ingress-gateway#sds).", }, { name: 'CertResource', type: 'string', - description: "Specifies an SDS resource name. Consul will request the SDS resource name when fetching the certificate from the SDS service. Setting this causes all listeners to be served exclusively over TLS with this certificate unless overridden by listener-specific TLS configuration.", + description: + 'Specifies an SDS resource name. Consul will request the SDS resource name when fetching the certificate from the SDS service. Setting this causes all listeners to be served exclusively over TLS with this certificate unless overridden by listener-specific TLS configuration.', }, ], }, @@ -1094,34 +1091,36 @@ You can specify the following parameters to configure ingress gateway configurat This cannot be used with a \`tcp\` listener.`, }, { - name: 'TLS', - yaml: false, - type: 'ServiceTLSConfig: ', - description: 'TLS configuration for this service.', - children: [ - { - name: 'SDS', - type: 'SDSConfig: ', - description: `Defines a set of parameters that configures the SDS source for the certificate for this specific service. + name: 'TLS', + yaml: false, + type: 'ServiceTLSConfig: ', + description: 'TLS configuration for this service.', + children: [ + { + name: 'SDS', + type: 'SDSConfig: ', + description: `Defines a set of parameters that configures the SDS source for the certificate for this specific service. At least one custom host must be specified in \`Hosts\`. The certificate retrieved from SDS will be served for all requests identifying one of the \`Hosts\` values in the TLS Server Name Indication (SNI) header.`, - children: [ - { - name: 'ClusterName', - type: 'string', - description: "The SDS cluster name to connect to to retrieve certificates. This cluster must be [specified in the Gateway's bootstrap configuration](/docs/connect/gateways/ingress-gateway#sds).", - }, - { - name: 'CertResource', - type: 'string', - description: "The SDS resource name to request when fetching the certificate from the SDS service.", + children: [ + { + name: 'ClusterName', + type: 'string', + description: + "The SDS cluster name to connect to to retrieve certificates. This cluster must be [specified in the Gateway's bootstrap configuration](/docs/connect/gateways/ingress-gateway#sds).", + }, + { + name: 'CertResource', + type: 'string', + description: + 'The SDS resource name to request when fetching the certificate from the SDS service.', + }, + ], }, ], }, ], - }, - ], }, { name: 'TLS', @@ -1142,17 +1141,20 @@ You can specify the following parameters to configure ingress gateway configurat { name: 'SDS', type: 'SDSConfig: ', - description: "Defines a set of parameters that configures the listener to load TLS certificates from an external SDS service. See [SDS](/docs/connect/gateways/ingress-gateway#sds) for more details on usage.

      SDS properties set here will be used as defaults for all services on this listener.", + description: + 'Defines a set of parameters that configures the listener to load TLS certificates from an external SDS service. See [SDS](/docs/connect/gateways/ingress-gateway#sds) for more details on usage.

      SDS properties set here will be used as defaults for all services on this listener.', children: [ { name: 'ClusterName', type: 'string', - description: "The SDS cluster name to connect to to retrieve certificates. This cluster must be [specified in the Gateway's bootstrap configuration](/docs/connect/gateways/ingress-gateway#sds).", + description: + "The SDS cluster name to connect to to retrieve certificates. This cluster must be [specified in the Gateway's bootstrap configuration](/docs/connect/gateways/ingress-gateway#sds).", }, { name: 'CertResource', type: 'string', - description: "The SDS resource name to request when fetching the certificate from the SDS service.", + description: + 'The SDS resource name to request when fetching the certificate from the SDS service.', }, ], }, @@ -1162,4 +1164,3 @@ You can specify the following parameters to configure ingress gateway configurat }, ]} /> - From e22c4a818ceae08cdbff4d230199dbf2f8e0a051 Mon Sep 17 00:00:00 2001 From: Hariram Sankaran <56744845+ramramhariram@users.noreply.github.com> Date: Tue, 18 Jan 2022 20:43:11 -0800 Subject: [PATCH 267/404] docs: Fix typo on NIA architecture page (#10797) Fix typo under Task section. Change 'the dynamic service data' to 'that dynamic service data'. --- website/content/docs/nia/architecture.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/nia/architecture.mdx b/website/content/docs/nia/architecture.mdx index beaebb404..4a0f9626f 100644 --- a/website/content/docs/nia/architecture.mdx +++ b/website/content/docs/nia/architecture.mdx @@ -37,7 +37,7 @@ proxy when an instance goes unhealthy. ## Tasks A task is the action triggered by the updated data monitored in Consul. It -takes the dynamic service data and translates it into a call to the +takes that dynamic service data and translates it into a call to the infrastructure application to configure it with the updates. It uses a driver to push out these updates, the initial driver being a local Terraform run. An example of a task is to automate a firewall security policy rule with From e77becb59e492e18d32d70b5a3a82f2a906faccc Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 19 Jan 2022 10:09:25 +0000 Subject: [PATCH 268/404] ui: Fixup KV folder creation then further creation within that folder (#12081) The fix here is two fold: - We shouldn't be providing the DataSource (which loads the data) with an id when we are creating from within a folder (in the buggy code we are providing the parentKey of the new KV you are creating) - Being able to provide an empty id to the DataSource/KV repository and that repository responding with a newly created object is more towards the "new way of doing forms", therefore the corresponding code to return a newly created ember-data object. As we changed the actual bug in point 1 here, we need to make sure the repository responds with an empty object when the request id is empty. --- .changelog/12081.txt | 3 +++ .../app/components/consul/kv/form/index.hbs | 2 +- .../consul-ui/app/services/repository/kv.js | 15 +++++++++--- .../consul-ui/app/templates/dc/kv/edit.hbs | 2 +- .../tests/acceptance/dc/kvs/create.feature | 24 +++++++++++++++++++ 5 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 .changelog/12081.txt diff --git a/.changelog/12081.txt b/.changelog/12081.txt new file mode 100644 index 000000000..18f26276d --- /dev/null +++ b/.changelog/12081.txt @@ -0,0 +1,3 @@ +```release-note:bug +ui: Fixed a bug with creating multiple nested KVs in one interaction +``` diff --git a/ui/packages/consul-ui/app/components/consul/kv/form/index.hbs b/ui/packages/consul-ui/app/components/consul/kv/form/index.hbs index 9b8f366e3..8ca9d738a 100644 --- a/ui/packages/consul-ui/app/components/consul/kv/form/index.hbs +++ b/ui/packages/consul-ui/app/components/consul/kv/form/index.hbs @@ -18,7 +18,7 @@ {{disabled (or disabld api.disabled)}} > {{#if api.isCreate}} -
      1. Determine your current installed chart version: @@ -220,9 +221,8 @@ the following will occur: of time, however, it's important for the local Consul client to be restarted as quickly as possible. -Once the local Consul client pod restarts, each service pod needs to re-register -itself with the client. This is done automatically by the `consul-connect-lifecycle-sidecar` -sidecar container that is injected alongside each service. +Once the local Consul client pod restarts, each service pod needs to be re-registered +with its local Consul client. This is done automatically by the connect inject controller. Because service mesh pods are briefly deregistered during a Consul client restart, it's **important that you do not restart all Consul clients at once**. Otherwise From 6f419e65f1d004e1758fd675c9db3af156ca69d9 Mon Sep 17 00:00:00 2001 From: Evan Culver Date: Wed, 19 Jan 2022 14:37:39 -0800 Subject: [PATCH 274/404] Update version to use 1.11.2 as base (#12127) --- version/version.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version/version.go b/version/version.go index 13229b339..e0e15e8f6 100644 --- a/version/version.go +++ b/version/version.go @@ -13,7 +13,7 @@ var ( // // Version must conform to the format expected by github.com/hashicorp/go-version // for tests to work. - Version = "1.11.0" + Version = "1.11.2" // A pre-release marker for the version. If this is "" (empty string) // then it means that it is a final release. Otherwise, this is a pre-release From 86d6d2b3badae6de56676426ff6d9e49ea03ae0a Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Wed, 19 Jan 2022 11:18:26 -0800 Subject: [PATCH 275/404] docs: Fix typo in service resolver's RingHashConfig Fix typo in documentation for service resolver's RingHashConfig. The correct child parameters are `MinimumRingSize` and `MaximumRingSize`. --- .../docs/connect/config-entries/service-resolver.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index 9d0fa7fea..93ac1e8d3 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -23,7 +23,7 @@ and discovery terminates. - Service resolver config entries are a component of [L7 Traffic Management](/docs/connect/l7-traffic-management). -## UI +## UI Once a `service-resolver` is successfully entered, you can view it in the UI. Service routers, service splitters, and service resolvers can all be viewed by clicking on your service then switching to the *routing* tab. @@ -546,13 +546,13 @@ spec: description: 'Configuration for the `ring_hash` policy type.', children: [ { - name: 'MinimumRingRize', + name: 'MinimumRingSize', type: 'int: 1024', description: 'Determines the minimum number of entries in the hash ring.', }, { - name: 'MaximumRingRize', + name: 'MaximumRingSize', type: 'int: 8192', description: 'Determines the maximum number of entries in the hash ring.', From d571fc0fd4676b81d99d447075789be49ea991b8 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Wed, 19 Jan 2022 11:50:57 -0800 Subject: [PATCH 276/404] docs: Link to supported config kinds in `config write` Remove statement about service-defaults and proxy-defaults being the only supported configuration entry types. Update the sentence to point to the configuration entry documentation for a list of supported types. --- website/content/commands/config/write.mdx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/website/content/commands/config/write.mdx b/website/content/commands/config/write.mdx index d577999b4..214b92a24 100644 --- a/website/content/commands/config/write.mdx +++ b/website/content/commands/config/write.mdx @@ -70,8 +70,9 @@ From stdin: ### Config Entry examples -All config entries must have a `Kind` when registered. Currently, the only -supported types are `service-defaults` and `proxy-defaults`. +All config entries must have a `Kind` when registered. See +[Service Mesh - Config Entries](/docs/connect/config-entries) for the list of +supported config entries. #### Service defaults From bc21e9590922ebfd1f48f24b7c29a2d31f987ce3 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" <4903+rboyer@users.noreply.github.com> Date: Wed, 19 Jan 2022 17:28:53 -0600 Subject: [PATCH 277/404] update changelog (#12128) --- .changelog/_1502.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/_1502.txt diff --git a/.changelog/_1502.txt b/.changelog/_1502.txt new file mode 100644 index 000000000..66267cb6b --- /dev/null +++ b/.changelog/_1502.txt @@ -0,0 +1,3 @@ +```release-note:bug +partitions: **(Enterprise only)** Do not leave a serf partition when the partition is deleted +``` From 088ba2edaf409f8a0510dc521fbf109365417ec6 Mon Sep 17 00:00:00 2001 From: Dan Upton Date: Thu, 20 Jan 2022 12:47:50 +0000 Subject: [PATCH 278/404] [OSS] Remove remaining references to master (#11827) --- .changelog/11827.txt | 3 + agent/acl_endpoint_test.go | 16 +- agent/agent.go | 3 - agent/agent_endpoint_test.go | 139 ++-- agent/consul/acl.go | 32 +- agent/consul/acl_endpoint_test.go | 714 +++++++++--------- agent/consul/acl_test.go | 14 +- agent/consul/acl_token_exp_test.go | 8 +- agent/consul/auto_config_backend_test.go | 2 +- agent/consul/connect_ca_endpoint_test.go | 8 +- .../consul/federation_state_endpoint_test.go | 2 +- agent/consul/fsm/commands_oss_test.go | 10 +- agent/consul/intention_endpoint_test.go | 30 +- agent/consul/internal_endpoint_test.go | 26 +- agent/consul/leader_connect_test.go | 10 +- agent/consul/leader_test.go | 24 +- agent/consul/prepared_query_endpoint_test.go | 10 +- agent/consul/server_test.go | 6 +- agent/consul/state/prepared_query_test.go | 7 +- agent/local/state_test.go | 12 +- agent/structs/acl.go | 26 +- api/acl_test.go | 16 +- api/api_test.go | 7 +- api/catalog_test.go | 4 +- api/prepared_query_test.go | 2 +- sdk/testutil/README.md | 4 +- sdk/testutil/server.go | 35 +- ui/packages/consul-ui/mock-api/v1/acl/list | 2 +- 28 files changed, 600 insertions(+), 572 deletions(-) create mode 100644 .changelog/11827.txt diff --git a/.changelog/11827.txt b/.changelog/11827.txt new file mode 100644 index 000000000..dc8cc8244 --- /dev/null +++ b/.changelog/11827.txt @@ -0,0 +1,3 @@ +```release-note:breaking-change +sdk: several changes to the testutil configuration structs (removed `ACLMasterToken`, renamed `Master` to `InitialManagement`, and `AgentMaster` to `AgentRecovery`) +``` diff --git a/agent/acl_endpoint_test.go b/agent/acl_endpoint_test.go index ca5239061..84efebc19 100644 --- a/agent/acl_endpoint_test.go +++ b/agent/acl_endpoint_test.go @@ -849,10 +849,10 @@ func TestACL_HTTP(t *testing.T) { tokens, ok := raw.(structs.ACLTokenListStubs) require.True(t, ok) - // 3 tokens created but 1 was deleted + master token + anon token + // 3 tokens created but 1 was deleted + initial management token + anon token require.Len(t, tokens, 4) - // this loop doesn't verify anything about the master token + // this loop doesn't verify anything about the initial management token for tokenID, expected := range tokenMap { found := false for _, actual := range tokens { @@ -1880,7 +1880,7 @@ func TestACL_Authorize(t *testing.T) { var localToken structs.ACLToken require.NoError(t, a2.RPC("ACL.TokenSet", &localTokenReq, &localToken)) - t.Run("master-token", func(t *testing.T) { + t.Run("initial-management-token", func(t *testing.T) { request := []structs.ACLAuthorizationRequest{ { Resource: "acl", @@ -2016,7 +2016,7 @@ func TestACL_Authorize(t *testing.T) { resp := responses[idx] require.Equal(t, req, resp.ACLAuthorizationRequest) - require.True(t, resp.Allow, "should have allowed all access for master token") + require.True(t, resp.Allow, "should have allowed all access for initial management token") } }) } @@ -2277,7 +2277,7 @@ func TestACL_Authorize(t *testing.T) { type rpcFn func(string, interface{}, interface{}) error func upsertTestCustomizedAuthMethod( - rpc rpcFn, masterToken string, datacenter string, + rpc rpcFn, initialManagementToken string, datacenter string, modify func(method *structs.ACLAuthMethod), ) (*structs.ACLAuthMethod, error) { name, err := uuid.GenerateUUID() @@ -2291,7 +2291,7 @@ func upsertTestCustomizedAuthMethod( Name: "test-method-" + name, Type: "testing", }, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if modify != nil { @@ -2308,11 +2308,11 @@ func upsertTestCustomizedAuthMethod( return &out, nil } -func upsertTestCustomizedBindingRule(rpc rpcFn, masterToken string, datacenter string, modify func(rule *structs.ACLBindingRule)) (*structs.ACLBindingRule, error) { +func upsertTestCustomizedBindingRule(rpc rpcFn, initialManagementToken string, datacenter string, modify func(rule *structs.ACLBindingRule)) (*structs.ACLBindingRule, error) { req := structs.ACLBindingRuleSetRequest{ Datacenter: datacenter, BindingRule: structs.ACLBindingRule{}, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if modify != nil { diff --git a/agent/agent.go b/agent/agent.go index d4f0397bb..41bab89e7 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -209,9 +209,6 @@ type Agent struct { // depending on the configuration delegate delegate - // aclMasterAuthorizer is an object that helps manage local ACL enforcement. - aclMasterAuthorizer acl.Authorizer - // state stores a local representation of the node, // services and checks. Used for anti-entropy. State *local.State diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 6e5025dd2..e8c8d63fe 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -85,7 +85,7 @@ func TestAgent_Services(t *testing.T) { srv1 := &structs.NodeService{ ID: "mysql", Service: "mysql", - Tags: []string{"master"}, + Tags: []string{"primary"}, Meta: map[string]string{ "foo": "bar", }, @@ -120,7 +120,7 @@ func TestAgent_ServicesFiltered(t *testing.T) { srv1 := &structs.NodeService{ ID: "mysql", Service: "mysql", - Tags: []string{"master"}, + Tags: []string{"primary"}, Meta: map[string]string{ "foo": "bar", }, @@ -1517,7 +1517,7 @@ func TestAgent_Self_ACLDeny(t *testing.T) { require.Equal(t, http.StatusForbidden, resp.Code) }) - t.Run("agent master token", func(t *testing.T) { + t.Run("agent recovery token", func(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/agent/self?token=towel", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) @@ -1550,7 +1550,7 @@ func TestAgent_Metrics_ACLDeny(t *testing.T) { require.Equal(t, http.StatusForbidden, resp.Code) }) - t.Run("agent master token", func(t *testing.T) { + t.Run("agent recovery token", func(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/agent/metrics?token=towel", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) @@ -2125,7 +2125,7 @@ func TestAgent_Join_ACLDeny(t *testing.T) { require.Equal(t, http.StatusForbidden, resp.Code) }) - t.Run("agent master token", func(t *testing.T) { + t.Run("agent recovery token", func(t *testing.T) { req, _ := http.NewRequest("PUT", fmt.Sprintf("/v1/agent/join/%s?token=towel", addr), nil) resp := httptest.NewRecorder() a1.srv.h.ServeHTTP(resp, req) @@ -2246,7 +2246,7 @@ func TestAgent_Leave_ACLDeny(t *testing.T) { // this sub-test will change the state so that there is no leader. // it must therefore be the last one in this list. - t.Run("agent master token", func(t *testing.T) { + t.Run("agent recovery token", func(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/agent/leave?token=towel", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) @@ -2332,7 +2332,7 @@ func TestAgent_ForceLeave_ACLDeny(t *testing.T) { require.Equal(t, http.StatusForbidden, resp.Code) }) - t.Run("agent master token", func(t *testing.T) { + t.Run("agent recovery token", func(t *testing.T) { req, _ := http.NewRequest("PUT", uri+"?token=towel", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) @@ -3266,7 +3266,7 @@ func testAgent_RegisterService(t *testing.T, extraHCL string) { args := &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Check: structs.CheckType{ TTL: 15 * time.Second, @@ -3353,7 +3353,7 @@ func testAgent_RegisterService_ReRegister(t *testing.T, extraHCL string) { args := &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Checks: []*structs.CheckType{ { @@ -3378,7 +3378,7 @@ func testAgent_RegisterService_ReRegister(t *testing.T, extraHCL string) { args = &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Checks: []*structs.CheckType{ { @@ -3434,7 +3434,7 @@ func testAgent_RegisterService_ReRegister_ReplaceExistingChecks(t *testing.T, ex args := &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Checks: []*structs.CheckType{ { @@ -3460,7 +3460,7 @@ func testAgent_RegisterService_ReRegister_ReplaceExistingChecks(t *testing.T, ex args = &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Checks: []*structs.CheckType{ { @@ -3740,7 +3740,7 @@ func testAgent_RegisterService_ACLDeny(t *testing.T, extraHCL string) { args := &structs.ServiceDefinition{ Name: "test", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Check: structs.CheckType{ TTL: 15 * time.Second, @@ -4588,7 +4588,7 @@ func testAgent_RegisterService_ScriptCheck_ExecDisable(t *testing.T, extraHCL st args := &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Check: structs.CheckType{ Name: "test-check", @@ -4640,7 +4640,7 @@ func testAgent_RegisterService_ScriptCheck_ExecRemoteDisable(t *testing.T, extra args := &structs.ServiceDefinition{ Name: "test", Meta: map[string]string{"hello": "world"}, - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, Check: structs.CheckType{ Name: "test-check", @@ -5379,7 +5379,7 @@ func TestAgent_TokenTriggersFullSync(t *testing.T) { initial_management = "root" default = "" agent = "" - agent_master = "" + agent_recovery = "" replication = "" } } @@ -5427,7 +5427,7 @@ func TestAgent_Token(t *testing.T) { initial_management = "root" default = "" agent = "" - agent_master = "" + agent_recovery = "" replication = "" } } @@ -5436,20 +5436,20 @@ func TestAgent_Token(t *testing.T) { testrpc.WaitForLeader(t, a.RPC, "dc1") type tokens struct { - user string - userSource tokenStore.TokenSource - agent string - agentSource tokenStore.TokenSource - master string - masterSource tokenStore.TokenSource - repl string - replSource tokenStore.TokenSource + user string + userSource tokenStore.TokenSource + agent string + agentSource tokenStore.TokenSource + agentRecovery string + agentRecoverySource tokenStore.TokenSource + repl string + replSource tokenStore.TokenSource } resetTokens := func(init tokens) { a.tokens.UpdateUserToken(init.user, init.userSource) a.tokens.UpdateAgentToken(init.agent, init.agentSource) - a.tokens.UpdateAgentRecoveryToken(init.master, init.masterSource) + a.tokens.UpdateAgentRecoveryToken(init.agentRecovery, init.agentRecoverySource) a.tokens.UpdateReplicationToken(init.repl, init.replSource) } @@ -5531,8 +5531,8 @@ func TestAgent_Token(t *testing.T) { url: "acl_agent_master_token?token=root", body: body("M"), code: http.StatusOK, - raw: tokens{master: "M", masterSource: tokenStore.TokenSourceAPI}, - effective: tokens{master: "M"}, + raw: tokens{agentRecovery: "M", agentRecoverySource: tokenStore.TokenSourceAPI}, + effective: tokens{agentRecovery: "M"}, }, { name: "set master", @@ -5540,8 +5540,8 @@ func TestAgent_Token(t *testing.T) { url: "agent_master?token=root", body: body("M"), code: http.StatusOK, - raw: tokens{master: "M", masterSource: tokenStore.TokenSourceAPI}, - effective: tokens{master: "M"}, + raw: tokens{agentRecovery: "M", agentRecoverySource: tokenStore.TokenSourceAPI}, + effective: tokens{agentRecovery: "M"}, }, { name: "set recovery", @@ -5549,8 +5549,8 @@ func TestAgent_Token(t *testing.T) { url: "agent_recovery?token=root", body: body("R"), code: http.StatusOK, - raw: tokens{master: "R", masterSource: tokenStore.TokenSourceAPI}, - effective: tokens{master: "R", masterSource: tokenStore.TokenSourceAPI}, + raw: tokens{agentRecovery: "R", agentRecoverySource: tokenStore.TokenSourceAPI}, + effective: tokens{agentRecovery: "R", agentRecoverySource: tokenStore.TokenSourceAPI}, }, { name: "set repl legacy", @@ -5612,8 +5612,8 @@ func TestAgent_Token(t *testing.T) { url: "acl_agent_master_token?token=root", body: body(""), code: http.StatusOK, - init: tokens{master: "M"}, - raw: tokens{masterSource: tokenStore.TokenSourceAPI}, + init: tokens{agentRecovery: "M"}, + raw: tokens{agentRecoverySource: tokenStore.TokenSourceAPI}, }, { name: "clear master", @@ -5621,8 +5621,8 @@ func TestAgent_Token(t *testing.T) { url: "agent_master?token=root", body: body(""), code: http.StatusOK, - init: tokens{master: "M"}, - raw: tokens{masterSource: tokenStore.TokenSourceAPI}, + init: tokens{agentRecovery: "M"}, + raw: tokens{agentRecoverySource: tokenStore.TokenSourceAPI}, }, { name: "clear recovery", @@ -5630,8 +5630,8 @@ func TestAgent_Token(t *testing.T) { url: "agent_recovery?token=root", body: body(""), code: http.StatusOK, - init: tokens{master: "R"}, - raw: tokens{masterSource: tokenStore.TokenSourceAPI}, + init: tokens{agentRecovery: "R"}, + raw: tokens{agentRecoverySource: tokenStore.TokenSourceAPI}, }, { name: "clear repl legacy", @@ -5667,7 +5667,7 @@ func TestAgent_Token(t *testing.T) { } require.Equal(t, tt.effective.user, a.tokens.UserToken()) require.Equal(t, tt.effective.agent, a.tokens.AgentToken()) - require.Equal(t, tt.effective.master, a.tokens.AgentRecoveryToken()) + require.Equal(t, tt.effective.agentRecovery, a.tokens.AgentRecoveryToken()) require.Equal(t, tt.effective.repl, a.tokens.ReplicationToken()) tok, src := a.tokens.UserTokenAndSource() @@ -5679,8 +5679,8 @@ func TestAgent_Token(t *testing.T) { require.Equal(t, tt.raw.agentSource, src) tok, src = a.tokens.AgentRecoveryTokenAndSource() - require.Equal(t, tt.raw.master, tok) - require.Equal(t, tt.raw.masterSource, src) + require.Equal(t, tt.raw.agentRecovery, tok) + require.Equal(t, tt.raw.agentRecoverySource, src) tok, src = a.tokens.ReplicationTokenAndSource() require.Equal(t, tt.raw.repl, tok) @@ -7031,11 +7031,18 @@ func TestAgentConnectAuthorize_defaultAllow(t *testing.T) { assert := assert.New(t) dc1 := "dc1" a := NewTestAgent(t, ` - acl_datacenter = "`+dc1+`" - acl_default_policy = "allow" - acl_master_token = "root" - acl_agent_token = "root" - acl_agent_master_token = "towel" + primary_datacenter = "`+dc1+`" + + acl { + enabled = true + default_policy = "allow" + + tokens { + initial_management = "root" + agent = "root" + agent_recovery = "towel" + } + } `) defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, dc1) @@ -7066,16 +7073,23 @@ func TestAgent_Host(t *testing.T) { dc1 := "dc1" a := NewTestAgent(t, ` - acl_datacenter = "`+dc1+`" - acl_default_policy = "allow" - acl_master_token = "master" - acl_agent_token = "agent" - acl_agent_master_token = "towel" -`) + primary_datacenter = "`+dc1+`" + + acl { + enabled = true + default_policy = "allow" + + tokens { + initial_management = "initial-management" + agent = "agent" + agent_recovery = "towel" + } + } + `) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") - req, _ := http.NewRequest("GET", "/v1/agent/host?token=master", nil) + req, _ := http.NewRequest("GET", "/v1/agent/host?token=initial-management", nil) resp := httptest.NewRecorder() // TODO: AgentHost should write to response so that we can test using ServeHTTP() respRaw, err := a.srv.AgentHost(resp, req) @@ -7098,12 +7112,19 @@ func TestAgent_HostBadACL(t *testing.T) { dc1 := "dc1" a := NewTestAgent(t, ` - acl_datacenter = "`+dc1+`" - acl_default_policy = "deny" - acl_master_token = "root" - acl_agent_token = "agent" - acl_agent_master_token = "towel" -`) + primary_datacenter = "`+dc1+`" + + acl { + enabled = true + default_policy = "deny" + + tokens { + initial_management = "root" + agent = "agent" + agent_recovery = "towel" + } + } + `) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") diff --git a/agent/consul/acl.go b/agent/consul/acl.go index d259437f7..b475bf159 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -263,19 +263,19 @@ type ACLResolver struct { // disabledLock synchronizes access to disabledUntil disabledLock sync.RWMutex - agentMasterAuthz acl.Authorizer + agentRecoveryAuthz acl.Authorizer } -func agentMasterAuthorizer(nodeName string, entMeta *structs.EnterpriseMeta, aclConf *acl.Config) (acl.Authorizer, error) { +func agentRecoveryAuthorizer(nodeName string, entMeta *structs.EnterpriseMeta, aclConf *acl.Config) (acl.Authorizer, error) { var conf acl.Config if aclConf != nil { conf = *aclConf } setEnterpriseConf(entMeta, &conf) - // Build a policy for the agent master token. + // Build a policy for the agent recovery token. // - // The builtin agent master policy allows reading any node information + // The builtin agent recovery policy allows reading any node information // and allows writes to the agent with the node name of the running agent // only. This used to allow a prefix match on agent names but that seems // entirely unnecessary so it is now using an exact match. @@ -323,21 +323,21 @@ func NewACLResolver(config *ACLResolverConfig) (*ACLResolver, error) { return nil, fmt.Errorf("invalid ACL down policy %q", config.Config.ACLDownPolicy) } - authz, err := agentMasterAuthorizer(config.Config.NodeName, &config.Config.EnterpriseMeta, config.ACLConfig) + authz, err := agentRecoveryAuthorizer(config.Config.NodeName, &config.Config.EnterpriseMeta, config.ACLConfig) if err != nil { - return nil, fmt.Errorf("failed to initialize the agent master authorizer") + return nil, fmt.Errorf("failed to initialize the agent recovery authorizer") } return &ACLResolver{ - config: config.Config, - logger: config.Logger.Named(logging.ACL), - delegate: config.Delegate, - aclConf: config.ACLConfig, - cache: cache, - disableDuration: config.DisableDuration, - down: down, - tokens: config.Tokens, - agentMasterAuthz: authz, + config: config.Config, + logger: config.Logger.Named(logging.ACL), + delegate: config.Delegate, + aclConf: config.ACLConfig, + cache: cache, + disableDuration: config.DisableDuration, + down: down, + tokens: config.Tokens, + agentRecoveryAuthz: authz, }, nil } @@ -1049,7 +1049,7 @@ func (r *ACLResolver) resolveLocallyManagedToken(token string) (structs.ACLIdent } if r.tokens.IsAgentRecoveryToken(token) { - return structs.NewAgentMasterTokenIdentity(r.config.NodeName, token), r.agentMasterAuthz, true + return structs.NewAgentRecoveryTokenIdentity(r.config.NodeName, token), r.agentRecoveryAuthz, true } return r.resolveLocallyManagedEnterpriseToken(token) diff --git a/agent/consul/acl_endpoint_test.go b/agent/consul/acl_endpoint_test.go index ddf00ba11..c96fec4e4 100644 --- a/agent/consul/acl_endpoint_test.go +++ b/agent/consul/acl_endpoint_test.go @@ -116,14 +116,14 @@ func TestACLEndpoint_TokenRead(t *testing.T) { acl := ACL{srv: srv} t.Run("exists and matches what we created", func(t *testing.T) { - token, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", nil) + token, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", nil) require.NoError(t, err) req := structs.ACLTokenGetRequest{ Datacenter: "dc1", TokenID: token.AccessorID, TokenIDType: structs.ACLTokenAccessor, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenResponse{} @@ -136,7 +136,7 @@ func TestACLEndpoint_TokenRead(t *testing.T) { t.Run("expired tokens are filtered", func(t *testing.T) { // insert a token that will expire - token, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(t *structs.ACLToken) { + token, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(t *structs.ACLToken) { t.ExpirationTTL = 200 * time.Millisecond }) require.NoError(t, err) @@ -146,7 +146,7 @@ func TestACLEndpoint_TokenRead(t *testing.T) { Datacenter: "dc1", TokenID: token.AccessorID, TokenIDType: structs.ACLTokenAccessor, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenResponse{} @@ -160,7 +160,7 @@ func TestACLEndpoint_TokenRead(t *testing.T) { Datacenter: "dc1", TokenID: token.AccessorID, TokenIDType: structs.ACLTokenAccessor, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenResponse{} @@ -180,7 +180,7 @@ func TestACLEndpoint_TokenRead(t *testing.T) { Datacenter: "dc1", TokenID: fakeID, TokenIDType: structs.ACLTokenAccessor, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenResponse{} @@ -195,7 +195,7 @@ func TestACLEndpoint_TokenRead(t *testing.T) { Datacenter: "dc1", TokenID: "definitely-really-certainly-not-a-uuid", TokenIDType: structs.ACLTokenAccessor, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenResponse{} @@ -219,13 +219,13 @@ func TestACLEndpoint_TokenClone(t *testing.T) { }, false) waitForLeaderEstablishment(t, srv) - p1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - r1, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r1, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - t1, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(t *structs.ACLToken) { + t1, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(t *structs.ACLToken) { t.Policies = []structs.ACLTokenPolicyLink{ {ID: p1.ID}, } @@ -247,7 +247,7 @@ func TestACLEndpoint_TokenClone(t *testing.T) { req := structs.ACLTokenSetRequest{ Datacenter: "dc1", ACLToken: structs.ACLToken{AccessorID: t1.AccessorID}, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } t2 := structs.ACLToken{} @@ -268,7 +268,7 @@ func TestACLEndpoint_TokenClone(t *testing.T) { t.Run("can't clone expired token", func(t *testing.T) { // insert a token that will expire - t1, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(t *structs.ACLToken) { + t1, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(t *structs.ACLToken) { t.ExpirationTTL = 11 * time.Millisecond }) require.NoError(t, err) @@ -278,7 +278,7 @@ func TestACLEndpoint_TokenClone(t *testing.T) { req := structs.ACLTokenSetRequest{ Datacenter: "dc1", ACLToken: structs.ACLToken{AccessorID: t1.AccessorID}, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } t2 := structs.ACLToken{} @@ -320,7 +320,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -329,7 +329,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -351,7 +351,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Description: "new-description", AccessorID: tokenID, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -360,7 +360,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -372,9 +372,9 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }) t.Run("Create it using Policies linked by id and name", func(t *testing.T) { - policy1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - policy2, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy2, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) req := structs.ACLTokenSetRequest{ @@ -391,7 +391,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, Local: false, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -401,11 +401,11 @@ func TestACLEndpoint_TokenSet(t *testing.T) { // Delete both policies to ensure that we skip resolving ID->Name // in the returned data. - require.NoError(t, deleteTestPolicy(codec, TestDefaultMasterToken, "dc1", policy1.ID)) - require.NoError(t, deleteTestPolicy(codec, TestDefaultMasterToken, "dc1", policy2.ID)) + require.NoError(t, deleteTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", policy1.ID)) + require.NoError(t, deleteTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", policy2.ID)) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -418,9 +418,9 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }) t.Run("Create it using Roles linked by id and name", func(t *testing.T) { - role1, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + role1, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - role2, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + role2, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) req := structs.ACLTokenSetRequest{ @@ -437,7 +437,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, Local: false, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -447,11 +447,11 @@ func TestACLEndpoint_TokenSet(t *testing.T) { // Delete both roles to ensure that we skip resolving ID->Name // in the returned data. - require.NoError(t, deleteTestRole(codec, TestDefaultMasterToken, "dc1", role1.ID)) - require.NoError(t, deleteTestRole(codec, TestDefaultMasterToken, "dc1", role2.ID)) + require.NoError(t, deleteTestRole(codec, TestDefaultInitialManagementToken, "dc1", role1.ID)) + require.NoError(t, deleteTestRole(codec, TestDefaultInitialManagementToken, "dc1", role2.ID)) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -470,7 +470,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Description: "foobar", AuthMethod: "fakemethod", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -486,10 +486,10 @@ func TestACLEndpoint_TokenSet(t *testing.T) { defer testauth.ResetSession(testSessionID) testauth.InstallSessionToken(testSessionID, "fake-token", "default", "demo", "abc123") - method1, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID) + method1, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID) require.NoError(t, err) - _, err = upsertTestBindingRule(codec, TestDefaultMasterToken, "dc1", method1.Name, "", structs.BindingRuleBindTypeService, "demo") + _, err = upsertTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", method1.Name, "", structs.BindingRuleBindTypeService, "demo") require.NoError(t, err) // create a token in one method @@ -502,7 +502,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Datacenter: "dc1", }, &methodToken)) - method2, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + method2, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) // try to update the token and change the method @@ -515,7 +515,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Description: "updated token", Local: true, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -531,10 +531,10 @@ func TestACLEndpoint_TokenSet(t *testing.T) { defer testauth.ResetSession(testSessionID) testauth.InstallSessionToken(testSessionID, "fake-token", "default", "demo", "abc123") - method, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID) + method, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID) require.NoError(t, err) - _, err = upsertTestBindingRule(codec, TestDefaultMasterToken, "dc1", method.Name, "", structs.BindingRuleBindTypeService, "demo") + _, err = upsertTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", method.Name, "", structs.BindingRuleBindTypeService, "demo") require.NoError(t, err) methodToken := structs.ACLToken{} @@ -555,7 +555,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Description: "updated token", Local: true, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -563,7 +563,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, acl.TokenSet(&req, &resp)) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -586,7 +586,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { {ServiceName: ""}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -607,7 +607,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { {ServiceName: long}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -653,7 +653,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { {ServiceName: test.name}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -663,7 +663,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token require.NotNil(t, token) @@ -686,7 +686,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { {ServiceName: "example"}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -695,7 +695,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token require.NotNil(t, token) @@ -720,7 +720,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -729,7 +729,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token require.NotNil(t, token) @@ -750,7 +750,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { {ServiceName: "foo", Datacenters: []string{"dc2"}}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -778,7 +778,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Local: false, ExpirationTime: timePointer(time.Now().Add(test.offset)), }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -800,7 +800,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Local: false, ExpirationTTL: test.offset, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -824,7 +824,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { ExpirationTime: timePointer(time.Now().Add(4 * time.Second)), ExpirationTTL: 4 * time.Second, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -842,7 +842,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Local: false, ExpirationTTL: 4 * time.Second, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -851,7 +851,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -877,7 +877,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Local: false, ExpirationTime: &expTime, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -886,7 +886,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -909,7 +909,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { AccessorID: tokenID, ExpirationTime: timePointer(expTime.Add(-1 * time.Second)), }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -927,7 +927,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { Description: "new-description-1", AccessorID: tokenID, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -936,7 +936,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -955,7 +955,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { AccessorID: tokenID, ExpirationTime: &expTime, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -964,7 +964,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -977,7 +977,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { t.Run("cannot update a token that is past its expiration time", func(t *testing.T) { // create a token that will expire - expiringToken, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(token *structs.ACLToken) { + expiringToken, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(token *structs.ACLToken) { token.ExpirationTTL = 11 * time.Millisecond }) require.NoError(t, err) @@ -991,7 +991,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { AccessorID: expiringToken.AccessorID, ExpirationTTL: 4 * time.Second, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1010,7 +1010,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1030,7 +1030,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1048,7 +1048,7 @@ func TestACLEndpoint_TokenSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1081,7 +1081,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Policies: nil, Local: false, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1102,7 +1102,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1111,7 +1111,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", resp.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", resp.AccessorID) require.NoError(t, err) token := tokenResp.Token @@ -1132,7 +1132,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1152,7 +1152,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1172,7 +1172,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1192,7 +1192,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1212,7 +1212,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1232,7 +1232,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1252,7 +1252,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Policies: nil, Local: false, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1273,7 +1273,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1293,7 +1293,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Policies: nil, Local: false, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1314,7 +1314,7 @@ func TestACLEndpoint_TokenSet_CustomID(t *testing.T) { Local: false, }, Create: true, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLToken{} @@ -1334,7 +1334,7 @@ func TestACLEndpoint_TokenSet_anon(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - policy, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -1350,14 +1350,14 @@ func TestACLEndpoint_TokenSet_anon(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } token := structs.ACLToken{} err = acl.TokenSet(&tokenUpsertReq, &token) require.NoError(t, err) require.NotEmpty(t, token.SecretID) - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", structs.ACLTokenAnonymousID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", structs.ACLTokenAnonymousID) require.NoError(t, err) require.Equal(t, len(tokenResp.Token.Policies), 1) require.Equal(t, tokenResp.Token.Policies[0].ID, policy.ID) @@ -1396,18 +1396,18 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { acl := ACL{srv: s1} acl2 := ACL{srv: s2} - existingToken, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", nil) + existingToken, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", nil) require.NoError(t, err) t.Run("deletes a token that has an expiration time in the future", func(t *testing.T) { // create a token that will expire - testToken, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(token *structs.ACLToken) { + testToken, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(token *structs.ACLToken) { token.ExpirationTTL = 4 * time.Second }) require.NoError(t, err) // Make sure the token is listable - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", testToken.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", testToken.AccessorID) require.NoError(t, err) require.NotNil(t, tokenResp.Token) @@ -1415,7 +1415,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: testToken.AccessorID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1424,14 +1424,14 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { require.NoError(t, err) // Make sure the token is gone - tokenResp, err = retrieveTestToken(codec, TestDefaultMasterToken, "dc1", testToken.AccessorID) + tokenResp, err = retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", testToken.AccessorID) require.NoError(t, err) require.Nil(t, tokenResp.Token) }) t.Run("deletes a token that is past its expiration time", func(t *testing.T) { // create a token that will expire - expiringToken, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(token *structs.ACLToken) { + expiringToken, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(token *structs.ACLToken) { token.ExpirationTTL = 11 * time.Millisecond }) require.NoError(t, err) @@ -1439,7 +1439,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { time.Sleep(20 * time.Millisecond) // now 'expiringToken' is expired // Make sure the token is not listable (filtered due to expiry) - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", expiringToken.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", expiringToken.AccessorID) require.NoError(t, err) require.Nil(t, tokenResp.Token) @@ -1447,7 +1447,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: expiringToken.AccessorID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1456,7 +1456,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { require.NoError(t, err) // Make sure the token is still gone (this time it's actually gone) - tokenResp, err = retrieveTestToken(codec, TestDefaultMasterToken, "dc1", expiringToken.AccessorID) + tokenResp, err = retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", expiringToken.AccessorID) require.NoError(t, err) require.Nil(t, tokenResp.Token) }) @@ -1465,7 +1465,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: existingToken.AccessorID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1474,7 +1474,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { require.NoError(t, err) // Make sure the token is gone - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", existingToken.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", existingToken.AccessorID) require.Nil(t, tokenResp.Token) require.NoError(t, err) }) @@ -1482,9 +1482,9 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { t.Run("can't delete itself", func(t *testing.T) { readReq := structs.ACLTokenGetRequest{ Datacenter: "dc1", - TokenID: TestDefaultMasterToken, + TokenID: TestDefaultInitialManagementToken, TokenIDType: structs.ACLTokenSecret, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } var out structs.ACLTokenResponse @@ -1496,7 +1496,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: out.Token.AccessorID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1511,7 +1511,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: fakeID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1520,7 +1520,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { require.NoError(t, err) // token should be nil - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", existingToken.AccessorID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", existingToken.AccessorID) require.Nil(t, tokenResp.Token) require.NoError(t, err) }) @@ -1532,7 +1532,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc2", TokenID: fakeID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1541,7 +1541,7 @@ func TestACLEndpoint_TokenDelete(t *testing.T) { require.NoError(t, err) // token should be nil - tokenResp, err := retrieveTestToken(codec2, TestDefaultMasterToken, "dc1", existingToken.AccessorID) + tokenResp, err := retrieveTestToken(codec2, TestDefaultInitialManagementToken, "dc1", existingToken.AccessorID) require.Nil(t, tokenResp.Token) require.NoError(t, err) }) @@ -1562,7 +1562,7 @@ func TestACLEndpoint_TokenDelete_anon(t *testing.T) { req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: structs.ACLTokenAnonymousID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -1571,7 +1571,7 @@ func TestACLEndpoint_TokenDelete_anon(t *testing.T) { require.EqualError(t, err, "Delete operation not permitted on the anonymous token") // Make sure the token is still there - tokenResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", structs.ACLTokenAnonymousID) + tokenResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", structs.ACLTokenAnonymousID) require.NoError(t, err) require.NotNil(t, tokenResp.Token) } @@ -1591,13 +1591,13 @@ func TestACLEndpoint_TokenList(t *testing.T) { acl := ACL{srv: srv} - t1, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", nil) + t1, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", nil) require.NoError(t, err) - t2, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", nil) + t2, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", nil) require.NoError(t, err) - masterTokenAccessorID, err := retrieveTestTokenAccessorForSecret(codec, TestDefaultMasterToken, "dc1", TestDefaultMasterToken) + initialManagementTokenAccessorID, err := retrieveTestTokenAccessorForSecret(codec, TestDefaultInitialManagementToken, "dc1", TestDefaultInitialManagementToken) require.NoError(t, err) t.Run("normal", func(t *testing.T) { @@ -1605,14 +1605,14 @@ func TestACLEndpoint_TokenList(t *testing.T) { // however previously inserting it outside of the subtest func resulted in this being // extra flakey due to there being more code that needed to run to setup the subtest // between when we inserted the token and when we performed the listing. - t3, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(token *structs.ACLToken) { + t3, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(token *structs.ACLToken) { token.ExpirationTTL = 50 * time.Millisecond }) require.NoError(t, err) req := structs.ACLTokenListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenListResponse{} @@ -1621,7 +1621,7 @@ func TestACLEndpoint_TokenList(t *testing.T) { require.NoError(t, err) tokens := []string{ - masterTokenAccessorID, + initialManagementTokenAccessorID, structs.ACLTokenAnonymousID, t1.AccessorID, t2.AccessorID, @@ -1635,7 +1635,7 @@ func TestACLEndpoint_TokenList(t *testing.T) { t.Run("filter expired", func(t *testing.T) { req := structs.ACLTokenListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenListResponse{} @@ -1644,7 +1644,7 @@ func TestACLEndpoint_TokenList(t *testing.T) { require.NoError(t, err) tokens := []string{ - masterTokenAccessorID, + initialManagementTokenAccessorID, structs.ACLTokenAnonymousID, t1.AccessorID, t2.AccessorID, @@ -1656,7 +1656,7 @@ func TestACLEndpoint_TokenList(t *testing.T) { rules := ` acl = "read" ` - readOnlyToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", rules) + readOnlyToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", rules) require.NoError(t, err) req := structs.ACLTokenListRequest{ @@ -1670,7 +1670,7 @@ func TestACLEndpoint_TokenList(t *testing.T) { require.NoError(t, err) tokens := []string{ - masterTokenAccessorID, + initialManagementTokenAccessorID, structs.ACLTokenAnonymousID, readOnlyToken.AccessorID, t1.AccessorID, @@ -1698,13 +1698,13 @@ func TestACLEndpoint_TokenBatchRead(t *testing.T) { acl := ACL{srv: srv} - t1, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", nil) + t1, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", nil) require.NoError(t, err) - t2, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", nil) + t2, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", nil) require.NoError(t, err) - t3, err := upsertTestToken(codec, TestDefaultMasterToken, "dc1", func(token *structs.ACLToken) { + t3, err := upsertTestToken(codec, TestDefaultInitialManagementToken, "dc1", func(token *structs.ACLToken) { token.ExpirationTTL = 4 * time.Second }) require.NoError(t, err) @@ -1715,7 +1715,7 @@ func TestACLEndpoint_TokenBatchRead(t *testing.T) { req := structs.ACLTokenBatchGetRequest{ Datacenter: "dc1", AccessorIDs: tokens, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenBatchResponse{} @@ -1733,7 +1733,7 @@ func TestACLEndpoint_TokenBatchRead(t *testing.T) { req := structs.ACLTokenBatchGetRequest{ Datacenter: "dc1", AccessorIDs: tokens, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLTokenBatchResponse{} @@ -1753,7 +1753,7 @@ func TestACLEndpoint_PolicyRead(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - policy, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -1761,7 +1761,7 @@ func TestACLEndpoint_PolicyRead(t *testing.T) { req := structs.ACLPolicyGetRequest{ Datacenter: "dc1", PolicyID: policy.ID, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicyResponse{} @@ -1780,7 +1780,7 @@ func TestACLEndpoint_PolicyReadByName(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - policy, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -1788,7 +1788,7 @@ func TestACLEndpoint_PolicyReadByName(t *testing.T) { req := structs.ACLPolicyGetRequest{ Datacenter: "dc1", PolicyName: policy.Name, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicyResponse{} @@ -1808,10 +1808,10 @@ func TestACLEndpoint_PolicyBatchRead(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - p1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - p2, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p2, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -1820,7 +1820,7 @@ func TestACLEndpoint_PolicyBatchRead(t *testing.T) { req := structs.ACLPolicyBatchGetRequest{ Datacenter: "dc1", PolicyIDs: policies, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicyBatchResponse{} @@ -1851,7 +1851,7 @@ func TestACLEndpoint_PolicySet(t *testing.T) { Name: "baz", Rules: "service \"\" { policy = \"read\" }", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicy{} @@ -1860,7 +1860,7 @@ func TestACLEndpoint_PolicySet(t *testing.T) { require.NotNil(t, resp.ID) // Get the policy directly to validate that it exists - policyResp, err := retrieveTestPolicy(codec, TestDefaultMasterToken, "dc1", resp.ID) + policyResp, err := retrieveTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) policy := policyResp.Policy @@ -1880,7 +1880,7 @@ func TestACLEndpoint_PolicySet(t *testing.T) { Name: "baz", Rules: "service \"\" { policy = \"read\" }", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicy{} @@ -1897,7 +1897,7 @@ func TestACLEndpoint_PolicySet(t *testing.T) { Name: "bar", Rules: "service \"\" { policy = \"write\" }", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicy{} @@ -1906,7 +1906,7 @@ func TestACLEndpoint_PolicySet(t *testing.T) { require.NotNil(t, resp.ID) // Get the policy directly to validate that it exists - policyResp, err := retrieveTestPolicy(codec, TestDefaultMasterToken, "dc1", resp.ID) + policyResp, err := retrieveTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) policy := policyResp.Policy @@ -1938,7 +1938,7 @@ func TestACLEndpoint_PolicySet_CustomID(t *testing.T) { Name: "baz", Rules: "service \"\" { policy = \"read\" }", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicy{} @@ -1967,7 +1967,7 @@ func TestACLEndpoint_PolicySet_globalManagement(t *testing.T) { Name: "foobar", // This is required to get past validation Rules: "service \"\" { policy = \"write\" }", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicy{} @@ -1984,7 +1984,7 @@ func TestACLEndpoint_PolicySet_globalManagement(t *testing.T) { Name: "foobar", Rules: structs.ACLPolicyGlobalManagement, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicy{} @@ -1992,7 +1992,7 @@ func TestACLEndpoint_PolicySet_globalManagement(t *testing.T) { require.NoError(t, err) // Get the policy again - policyResp, err := retrieveTestPolicy(codec, TestDefaultMasterToken, "dc1", structs.ACLPolicyGlobalManagementID) + policyResp, err := retrieveTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", structs.ACLPolicyGlobalManagementID) require.NoError(t, err) policy := policyResp.Policy @@ -2012,7 +2012,7 @@ func TestACLEndpoint_PolicyDelete(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - existingPolicy, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + existingPolicy, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -2020,7 +2020,7 @@ func TestACLEndpoint_PolicyDelete(t *testing.T) { req := structs.ACLPolicyDeleteRequest{ Datacenter: "dc1", PolicyID: existingPolicy.ID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -2029,7 +2029,7 @@ func TestACLEndpoint_PolicyDelete(t *testing.T) { require.NoError(t, err) // Make sure the policy is gone - tokenResp, err := retrieveTestPolicy(codec, TestDefaultMasterToken, "dc1", existingPolicy.ID) + tokenResp, err := retrieveTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", existingPolicy.ID) require.NoError(t, err) require.Nil(t, tokenResp.Policy) } @@ -2048,7 +2048,7 @@ func TestACLEndpoint_PolicyDelete_globalManagement(t *testing.T) { req := structs.ACLPolicyDeleteRequest{ Datacenter: "dc1", PolicyID: structs.ACLPolicyGlobalManagementID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -2067,17 +2067,17 @@ func TestACLEndpoint_PolicyList(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - p1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - p2, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p2, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} req := structs.ACLPolicyListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLPolicyListResponse{} @@ -2103,10 +2103,10 @@ func TestACLEndpoint_PolicyResolve(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - p1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - p2, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + p2, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -2126,7 +2126,7 @@ func TestACLEndpoint_PolicyResolve(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } token := structs.ACLToken{} err = acl.TokenSet(&tokenUpsertReq, &token) @@ -2153,7 +2153,7 @@ func TestACLEndpoint_RoleRead(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - role, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + role, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -2161,7 +2161,7 @@ func TestACLEndpoint_RoleRead(t *testing.T) { req := structs.ACLRoleGetRequest{ Datacenter: "dc1", RoleID: role.ID, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRoleResponse{} @@ -2181,10 +2181,10 @@ func TestACLEndpoint_RoleBatchRead(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - r1, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r1, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - r2, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r2, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -2193,7 +2193,7 @@ func TestACLEndpoint_RoleBatchRead(t *testing.T) { req := structs.ACLRoleBatchGetRequest{ Datacenter: "dc1", RoleIDs: roles, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRoleBatchResponse{} @@ -2216,9 +2216,9 @@ func TestACLEndpoint_RoleSet(t *testing.T) { acl := ACL{srv: srv} var roleID string - testPolicy1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + testPolicy1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - testPolicy2, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + testPolicy2, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) t.Run("Create it", func(t *testing.T) { @@ -2239,7 +2239,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2248,7 +2248,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { require.NotNil(t, resp.ID) // Get the role directly to validate that it exists - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role @@ -2277,7 +2277,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2286,7 +2286,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { require.NotNil(t, resp.ID) // Get the role directly to validate that it exists - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role @@ -2299,9 +2299,9 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }) t.Run("Create it using Policies linked by id and name", func(t *testing.T) { - policy1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - policy2, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + policy2, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) req := structs.ACLRoleSetRequest{ @@ -2318,7 +2318,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2328,11 +2328,11 @@ func TestACLEndpoint_RoleSet(t *testing.T) { // Delete both policies to ensure that we skip resolving ID->Name // in the returned data. - require.NoError(t, deleteTestPolicy(codec, TestDefaultMasterToken, "dc1", policy1.ID)) - require.NoError(t, deleteTestPolicy(codec, TestDefaultMasterToken, "dc1", policy2.ID)) + require.NoError(t, deleteTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", policy1.ID)) + require.NoError(t, deleteTestPolicy(codec, TestDefaultInitialManagementToken, "dc1", policy2.ID)) // Get the role directly to validate that it exists - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role @@ -2360,7 +2360,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { {ServiceName: ""}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2379,7 +2379,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { {ServiceName: long}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2423,7 +2423,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { {ServiceName: test.name}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2433,7 +2433,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { require.NoError(t, err) // Get the token directly to validate that it exists - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role require.ElementsMatch(t, req.Role.ServiceIdentities, role.ServiceIdentities) @@ -2454,7 +2454,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { {ServiceName: "example"}, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2463,7 +2463,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { require.NoError(t, err) // Get the role directly to validate that it exists - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role require.Len(t, role.ServiceIdentities, 1) @@ -2486,7 +2486,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2495,7 +2495,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { require.NoError(t, err) // Get the role directly to validate that it exists - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role require.Len(t, role.ServiceIdentities, 1) @@ -2515,7 +2515,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2536,7 +2536,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2555,7 +2555,7 @@ func TestACLEndpoint_RoleSet(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2576,7 +2576,7 @@ func TestACLEndpoint_RoleSet_names(t *testing.T) { waitForLeaderEstablishment(t, srv) acl := ACL{srv: srv} - testPolicy1, err := upsertTestPolicy(codec, TestDefaultMasterToken, "dc1") + testPolicy1, err := upsertTestPolicy(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) @@ -2615,7 +2615,7 @@ func TestACLEndpoint_RoleSet_names(t *testing.T) { t.Run(testName, func(t *testing.T) { // cleanup from a prior insertion that may have succeeded - require.NoError(t, deleteTestRoleByName(codec, TestDefaultMasterToken, "dc1", test.name)) + require.NoError(t, deleteTestRoleByName(codec, TestDefaultInitialManagementToken, "dc1", test.name)) req := structs.ACLRoleSetRequest{ Datacenter: "dc1", @@ -2628,7 +2628,7 @@ func TestACLEndpoint_RoleSet_names(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRole{} @@ -2636,7 +2636,7 @@ func TestACLEndpoint_RoleSet_names(t *testing.T) { if test.ok { require.NoError(t, err) - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", resp.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) role := roleResp.Role require.Equal(t, test.name, role.Name) @@ -2656,7 +2656,7 @@ func TestACLEndpoint_RoleDelete(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - existingRole, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + existingRole, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) @@ -2665,7 +2665,7 @@ func TestACLEndpoint_RoleDelete(t *testing.T) { req := structs.ACLRoleDeleteRequest{ Datacenter: "dc1", RoleID: existingRole.ID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string @@ -2674,7 +2674,7 @@ func TestACLEndpoint_RoleDelete(t *testing.T) { require.NoError(t, err) // Make sure the role is gone - roleResp, err := retrieveTestRole(codec, TestDefaultMasterToken, "dc1", existingRole.ID) + roleResp, err := retrieveTestRole(codec, TestDefaultInitialManagementToken, "dc1", existingRole.ID) require.NoError(t, err) require.Nil(t, roleResp.Role) } @@ -2689,17 +2689,17 @@ func TestACLEndpoint_RoleList(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - r1, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r1, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - r2, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r2, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} req := structs.ACLRoleListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLRoleListResponse{} @@ -2720,10 +2720,10 @@ func TestACLEndpoint_RoleResolve(t *testing.T) { waitForLeaderEstablishment(t, srv) t.Run("Normal", func(t *testing.T) { - r1, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r1, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) - r2, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r2, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) acl := ACL{srv: srv} @@ -2741,7 +2741,7 @@ func TestACLEndpoint_RoleResolve(t *testing.T) { }, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } token := structs.ACLToken{} err = acl.TokenSet(&tokenUpsertReq, &token) @@ -2790,7 +2790,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2798,7 +2798,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { require.NoError(t, err) // Get the method directly to validate that it exists - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", resp.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", resp.Name) require.NoError(t, err) method := methodResp.AuthMethod @@ -2814,7 +2814,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2831,7 +2831,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2839,7 +2839,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { require.NoError(t, err) // Get the method directly to validate that it exists - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", resp.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", resp.Name) require.NoError(t, err) method := methodResp.AuthMethod @@ -2857,7 +2857,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2865,7 +2865,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { require.NoError(t, err) // Get the method directly to validate that it exists - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", resp.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", resp.Name) require.NoError(t, err) method := methodResp.AuthMethod @@ -2879,7 +2879,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: newAuthMethod(""), - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2895,7 +2895,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { Description: "invalid test", Type: "invalid", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2935,7 +2935,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: newAuthMethod(test.name), - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2945,7 +2945,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { require.NoError(t, err) // Get the method directly to validate that it exists - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", resp.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", resp.Name) require.NoError(t, err) method := methodResp.AuthMethod @@ -2964,7 +2964,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2972,7 +2972,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { require.NoError(t, err) // Get the method directly to validate that it exists - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", resp.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", resp.Name) require.NoError(t, err) method := methodResp.AuthMethod @@ -2991,7 +2991,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -2999,7 +2999,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { require.NoError(t, err) // Get the method directly to validate that it exists - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", resp.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", resp.Name) require.NoError(t, err) method := methodResp.AuthMethod @@ -3017,7 +3017,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -3032,7 +3032,7 @@ func TestACLEndpoint_AuthMethodSet(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: reqMethod, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} @@ -3054,7 +3054,7 @@ func TestACLEndpoint_AuthMethodDelete(t *testing.T) { testSessionID := testauth.StartSession() defer testauth.ResetSession(testSessionID) - existingMethod, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID) + existingMethod, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID) require.NoError(t, err) acl := ACL{srv: srv} @@ -3063,7 +3063,7 @@ func TestACLEndpoint_AuthMethodDelete(t *testing.T) { req := structs.ACLAuthMethodDeleteRequest{ Datacenter: "dc1", AuthMethodName: existingMethod.Name, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool @@ -3071,7 +3071,7 @@ func TestACLEndpoint_AuthMethodDelete(t *testing.T) { require.NoError(t, err) // Make sure the method is gone - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", existingMethod.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", existingMethod.Name) require.NoError(t, err) require.Nil(t, methodResp.AuthMethod) }) @@ -3080,7 +3080,7 @@ func TestACLEndpoint_AuthMethodDelete(t *testing.T) { req := structs.ACLAuthMethodDeleteRequest{ Datacenter: "dc1", AuthMethodName: "missing", - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool @@ -3124,10 +3124,10 @@ func TestACLEndpoint_AuthMethodDelete_RuleAndTokenCascade(t *testing.T) { return &resp } - method1, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID1) + method1, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID1) require.NoError(t, err) i1_r1, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", method1.Name, "serviceaccount.name==abc", structs.BindingRuleBindTypeService, @@ -3135,7 +3135,7 @@ func TestACLEndpoint_AuthMethodDelete_RuleAndTokenCascade(t *testing.T) { ) require.NoError(t, err) i1_r2, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", method1.Name, "serviceaccount.name==def", structs.BindingRuleBindTypeService, @@ -3145,10 +3145,10 @@ func TestACLEndpoint_AuthMethodDelete_RuleAndTokenCascade(t *testing.T) { i1_t1 := createToken(method1.Name, "fake-token1") i1_t2 := createToken(method1.Name, "fake-token1") - method2, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID2) + method2, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID2) require.NoError(t, err) i2_r1, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", method2.Name, "serviceaccount.name==abc", structs.BindingRuleBindTypeService, @@ -3156,7 +3156,7 @@ func TestACLEndpoint_AuthMethodDelete_RuleAndTokenCascade(t *testing.T) { ) require.NoError(t, err) i2_r2, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", method2.Name, "serviceaccount.name==def", structs.BindingRuleBindTypeService, @@ -3171,7 +3171,7 @@ func TestACLEndpoint_AuthMethodDelete_RuleAndTokenCascade(t *testing.T) { req := structs.ACLAuthMethodDeleteRequest{ Datacenter: "dc1", AuthMethodName: method1.Name, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool @@ -3179,30 +3179,30 @@ func TestACLEndpoint_AuthMethodDelete_RuleAndTokenCascade(t *testing.T) { require.NoError(t, err) // Make sure the method is gone. - methodResp, err := retrieveTestAuthMethod(codec, TestDefaultMasterToken, "dc1", method1.Name) + methodResp, err := retrieveTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", method1.Name) require.NoError(t, err) require.Nil(t, methodResp.AuthMethod) // Make sure the rules and tokens are gone. for _, id := range []string{i1_r1.ID, i1_r2.ID} { - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", id) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", id) require.NoError(t, err) require.Nil(t, ruleResp.BindingRule) } for _, id := range []string{i1_t1.AccessorID, i1_t2.AccessorID} { - tokResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", id) + tokResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", id) require.NoError(t, err) require.Nil(t, tokResp.Token) } // Make sure the rules and tokens for the untouched auth method are still there. for _, id := range []string{i2_r1.ID, i2_r2.ID} { - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", id) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", id) require.NoError(t, err) require.NotNil(t, ruleResp.BindingRule) } for _, id := range []string{i2_t1.AccessorID, i2_t2.AccessorID} { - tokResp, err := retrieveTestToken(codec, TestDefaultMasterToken, "dc1", id) + tokResp, err := retrieveTestToken(codec, TestDefaultInitialManagementToken, "dc1", id) require.NoError(t, err) require.NotNil(t, tokResp.Token) } @@ -3218,17 +3218,17 @@ func TestACLEndpoint_AuthMethodList(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - i1, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + i1, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) - i2, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + i2, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) acl := ACL{srv: srv} req := structs.ACLAuthMethodListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethodListResponse{} @@ -3251,10 +3251,10 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { var ruleID string - testAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + testAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) - otherTestAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + otherTestAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) newRule := func() structs.ACLBindingRule { @@ -3271,7 +3271,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { req := structs.ACLBindingRuleSetRequest{ Datacenter: "dc1", BindingRule: reqRule, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3283,7 +3283,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { req := structs.ACLBindingRuleSetRequest{ Datacenter: "dc1", BindingRule: reqRule, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3299,7 +3299,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { req := structs.ACLBindingRuleSetRequest{ Datacenter: "dc1", BindingRule: reqRule, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3308,7 +3308,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { require.NotNil(t, resp.ID) // Get the rule directly to validate that it exists - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", resp.ID) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) rule := ruleResp.BindingRule @@ -3332,7 +3332,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { BindType: structs.BindingRuleBindTypeNode, BindName: "test-node", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp structs.ACLBindingRule @@ -3341,7 +3341,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { require.NotNil(t, resp.ID) // Get the rule directly to validate that it exists - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", resp.ID) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) rule := ruleResp.BindingRule @@ -3372,7 +3372,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { req := structs.ACLBindingRuleSetRequest{ Datacenter: "dc1", BindingRule: reqRule, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3381,7 +3381,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { require.NotNil(t, resp.ID) // Get the rule directly to validate that it exists - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", resp.ID) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) rule := ruleResp.BindingRule @@ -3404,7 +3404,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { req := structs.ACLBindingRuleSetRequest{ Datacenter: "dc1", BindingRule: reqRule, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3413,7 +3413,7 @@ func TestACLEndpoint_BindingRuleSet(t *testing.T) { require.NotNil(t, resp.ID) // Get the rule directly to validate that it exists - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", resp.ID) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", resp.ID) require.NoError(t, err) rule := ruleResp.BindingRule @@ -3509,11 +3509,11 @@ func TestACLEndpoint_BindingRuleDelete(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - testAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + testAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) existingRule, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", testAuthMethod.Name, "serviceaccount.name==abc", structs.BindingRuleBindTypeService, @@ -3527,7 +3527,7 @@ func TestACLEndpoint_BindingRuleDelete(t *testing.T) { req := structs.ACLBindingRuleDeleteRequest{ Datacenter: "dc1", BindingRuleID: existingRule.ID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool @@ -3535,7 +3535,7 @@ func TestACLEndpoint_BindingRuleDelete(t *testing.T) { require.NoError(t, err) // Make sure the rule is gone - ruleResp, err := retrieveTestBindingRule(codec, TestDefaultMasterToken, "dc1", existingRule.ID) + ruleResp, err := retrieveTestBindingRule(codec, TestDefaultInitialManagementToken, "dc1", existingRule.ID) require.NoError(t, err) require.Nil(t, ruleResp.BindingRule) }) @@ -3547,7 +3547,7 @@ func TestACLEndpoint_BindingRuleDelete(t *testing.T) { req := structs.ACLBindingRuleDeleteRequest{ Datacenter: "dc1", BindingRuleID: fakeID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool @@ -3566,11 +3566,11 @@ func TestACLEndpoint_BindingRuleList(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - testAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", "") + testAuthMethod, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", "") require.NoError(t, err) r1, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", testAuthMethod.Name, "serviceaccount.name==abc", structs.BindingRuleBindTypeService, @@ -3579,7 +3579,7 @@ func TestACLEndpoint_BindingRuleList(t *testing.T) { require.NoError(t, err) r2, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", testAuthMethod.Name, "serviceaccount.name==def", structs.BindingRuleBindTypeService, @@ -3591,7 +3591,7 @@ func TestACLEndpoint_BindingRuleList(t *testing.T) { req := structs.ACLBindingRuleListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRuleListResponse{} @@ -3765,19 +3765,19 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { "SessionID": testSessionID_2, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} require.NoError(t, acl2.AuthMethodSet(&req, &resp)) // present in dc2 - resp2, err := retrieveTestAuthMethod(codec2, TestDefaultMasterToken, "dc2", "testmethod") + resp2, err := retrieveTestAuthMethod(codec2, TestDefaultInitialManagementToken, "dc2", "testmethod") require.NoError(t, err) require.NotNil(t, resp2.AuthMethod) require.Equal(t, "test original", resp2.AuthMethod.Description) // absent in dc1 - resp2, err = retrieveTestAuthMethod(codec1, TestDefaultMasterToken, "dc1", "testmethod") + resp2, err = retrieveTestAuthMethod(codec1, TestDefaultInitialManagementToken, "dc1", "testmethod") require.NoError(t, err) require.Nil(t, resp2.AuthMethod) }) @@ -3792,19 +3792,19 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { "SessionID": testSessionID_2, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethod{} require.NoError(t, acl2.AuthMethodSet(&req, &resp)) // present in dc2 - resp2, err := retrieveTestAuthMethod(codec2, TestDefaultMasterToken, "dc2", "testmethod") + resp2, err := retrieveTestAuthMethod(codec2, TestDefaultInitialManagementToken, "dc2", "testmethod") require.NoError(t, err) require.NotNil(t, resp2.AuthMethod) require.Equal(t, "test updated", resp2.AuthMethod.Description) // absent in dc1 - resp2, err = retrieveTestAuthMethod(codec1, TestDefaultMasterToken, "dc1", "testmethod") + resp2, err = retrieveTestAuthMethod(codec1, TestDefaultInitialManagementToken, "dc1", "testmethod") require.NoError(t, err) require.Nil(t, resp2.AuthMethod) }) @@ -3814,7 +3814,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { req := structs.ACLAuthMethodGetRequest{ Datacenter: "dc2", AuthMethodName: "testmethod", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethodResponse{} require.NoError(t, acl2.AuthMethodRead(&req, &resp)) @@ -3825,7 +3825,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { req = structs.ACLAuthMethodGetRequest{ Datacenter: "dc1", AuthMethodName: "testmethod", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp = structs.ACLAuthMethodResponse{} require.NoError(t, acl.AuthMethodRead(&req, &resp)) @@ -3836,7 +3836,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { // present in dc2 req := structs.ACLAuthMethodListRequest{ Datacenter: "dc2", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLAuthMethodListResponse{} require.NoError(t, acl2.AuthMethodList(&req, &resp)) @@ -3845,7 +3845,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { // absent in dc1 req = structs.ACLAuthMethodListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp = structs.ACLAuthMethodListResponse{} require.NoError(t, acl.AuthMethodList(&req, &resp)) @@ -3862,7 +3862,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { BindType: structs.BindingRuleBindTypeService, BindName: "${serviceaccount.name}", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3871,12 +3871,12 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { ruleID = resp.ID // present in dc2 - resp2, err := retrieveTestBindingRule(codec2, TestDefaultMasterToken, "dc2", ruleID) + resp2, err := retrieveTestBindingRule(codec2, TestDefaultInitialManagementToken, "dc2", ruleID) require.NoError(t, err) require.NotNil(t, resp2.BindingRule) require.Equal(t, "test original", resp2.BindingRule.Description) // absent in dc1 - resp2, err = retrieveTestBindingRule(codec1, TestDefaultMasterToken, "dc1", ruleID) + resp2, err = retrieveTestBindingRule(codec1, TestDefaultInitialManagementToken, "dc1", ruleID) require.NoError(t, err) require.Nil(t, resp2.BindingRule) }) @@ -3891,7 +3891,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { BindType: structs.BindingRuleBindTypeService, BindName: "${serviceaccount.name}", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRule{} @@ -3900,12 +3900,12 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { ruleID = resp.ID // present in dc2 - resp2, err := retrieveTestBindingRule(codec2, TestDefaultMasterToken, "dc2", ruleID) + resp2, err := retrieveTestBindingRule(codec2, TestDefaultInitialManagementToken, "dc2", ruleID) require.NoError(t, err) require.NotNil(t, resp2.BindingRule) require.Equal(t, "test updated", resp2.BindingRule.Description) // absent in dc1 - resp2, err = retrieveTestBindingRule(codec1, TestDefaultMasterToken, "dc1", ruleID) + resp2, err = retrieveTestBindingRule(codec1, TestDefaultInitialManagementToken, "dc1", ruleID) require.NoError(t, err) require.Nil(t, resp2.BindingRule) }) @@ -3915,7 +3915,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { req := structs.ACLBindingRuleGetRequest{ Datacenter: "dc2", BindingRuleID: ruleID, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRuleResponse{} require.NoError(t, acl2.BindingRuleRead(&req, &resp)) @@ -3926,7 +3926,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { req = structs.ACLBindingRuleGetRequest{ Datacenter: "dc1", BindingRuleID: ruleID, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp = structs.ACLBindingRuleResponse{} require.NoError(t, acl.BindingRuleRead(&req, &resp)) @@ -3937,7 +3937,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { // present in dc2 req := structs.ACLBindingRuleListRequest{ Datacenter: "dc2", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp := structs.ACLBindingRuleListResponse{} require.NoError(t, acl2.BindingRuleList(&req, &resp)) @@ -3946,7 +3946,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { // absent in dc1 req = structs.ACLBindingRuleListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } resp = structs.ACLBindingRuleListResponse{} require.NoError(t, acl.BindingRuleList(&req, &resp)) @@ -3968,13 +3968,13 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { remoteToken = &resp // present in dc2 - resp2, err := retrieveTestToken(codec2, TestDefaultMasterToken, "dc2", remoteToken.AccessorID) + resp2, err := retrieveTestToken(codec2, TestDefaultInitialManagementToken, "dc2", remoteToken.AccessorID) require.NoError(t, err) require.NotNil(t, resp2.Token) require.Len(t, resp2.Token.ServiceIdentities, 1) require.Equal(t, "web2", resp2.Token.ServiceIdentities[0].ServiceName) // absent in dc1 - resp2, err = retrieveTestToken(codec1, TestDefaultMasterToken, "dc1", remoteToken.AccessorID) + resp2, err = retrieveTestToken(codec1, TestDefaultInitialManagementToken, "dc1", remoteToken.AccessorID) require.NoError(t, err) require.Nil(t, resp2.Token) }) @@ -3993,7 +3993,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { "SessionID": testSessionID_1, }, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } respAM := structs.ACLAuthMethod{} require.NoError(t, acl.AuthMethodSet(&reqAM, &respAM)) @@ -4005,7 +4005,7 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { BindType: structs.BindingRuleBindTypeService, BindName: "${serviceaccount.name}", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } respBR := structs.ACLBindingRule{} @@ -4027,13 +4027,13 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { primaryToken = &resp // present in dc1 - resp2, err := retrieveTestToken(codec1, TestDefaultMasterToken, "dc1", primaryToken.AccessorID) + resp2, err := retrieveTestToken(codec1, TestDefaultInitialManagementToken, "dc1", primaryToken.AccessorID) require.NoError(t, err) require.NotNil(t, resp2.Token) require.Len(t, resp2.Token.ServiceIdentities, 1) require.Equal(t, "web1", resp2.Token.ServiceIdentities[0].ServiceName) // absent in dc2 - resp2, err = retrieveTestToken(codec2, TestDefaultMasterToken, "dc2", primaryToken.AccessorID) + resp2, err = retrieveTestToken(codec2, TestDefaultInitialManagementToken, "dc2", primaryToken.AccessorID) require.NoError(t, err) require.Nil(t, resp2.Token) }) @@ -4051,11 +4051,11 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { require.NoError(t, acl.Logout(&req, &ignored)) // absent in dc2 - resp2, err := retrieveTestToken(codec2, TestDefaultMasterToken, "dc2", remoteToken.AccessorID) + resp2, err := retrieveTestToken(codec2, TestDefaultInitialManagementToken, "dc2", remoteToken.AccessorID) require.NoError(t, err) require.Nil(t, resp2.Token) // absent in dc1 - resp2, err = retrieveTestToken(codec1, TestDefaultMasterToken, "dc1", remoteToken.AccessorID) + resp2, err = retrieveTestToken(codec1, TestDefaultInitialManagementToken, "dc1", remoteToken.AccessorID) require.NoError(t, err) require.Nil(t, resp2.Token) }) @@ -4070,13 +4070,13 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { testutil.RequireErrorContains(t, acl.Logout(&req, &ignored), "ACL not found") // present in dc1 - resp2, err := retrieveTestToken(codec1, TestDefaultMasterToken, "dc1", primaryToken.AccessorID) + resp2, err := retrieveTestToken(codec1, TestDefaultInitialManagementToken, "dc1", primaryToken.AccessorID) require.NoError(t, err) require.NotNil(t, resp2.Token) require.Len(t, resp2.Token.ServiceIdentities, 1) require.Equal(t, "web1", resp2.Token.ServiceIdentities[0].ServiceName) // absent in dc2 - resp2, err = retrieveTestToken(codec2, TestDefaultMasterToken, "dc2", primaryToken.AccessorID) + resp2, err = retrieveTestToken(codec2, TestDefaultInitialManagementToken, "dc2", primaryToken.AccessorID) require.NoError(t, err) require.Nil(t, resp2.Token) }) @@ -4088,18 +4088,18 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { req := structs.ACLBindingRuleDeleteRequest{ Datacenter: "dc2", BindingRuleID: ruleID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool require.NoError(t, acl2.BindingRuleDelete(&req, &ignored)) // absent in dc2 - resp2, err := retrieveTestBindingRule(codec2, TestDefaultMasterToken, "dc2", ruleID) + resp2, err := retrieveTestBindingRule(codec2, TestDefaultInitialManagementToken, "dc2", ruleID) require.NoError(t, err) require.Nil(t, resp2.BindingRule) // absent in dc1 - resp2, err = retrieveTestBindingRule(codec1, TestDefaultMasterToken, "dc1", ruleID) + resp2, err = retrieveTestBindingRule(codec1, TestDefaultInitialManagementToken, "dc1", ruleID) require.NoError(t, err) require.Nil(t, resp2.BindingRule) }) @@ -4108,18 +4108,18 @@ func TestACLEndpoint_SecureIntroEndpoints_OnlyCreateLocalData(t *testing.T) { req := structs.ACLAuthMethodDeleteRequest{ Datacenter: "dc2", AuthMethodName: "testmethod", - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool require.NoError(t, acl2.AuthMethodDelete(&req, &ignored)) // absent in dc2 - resp2, err := retrieveTestAuthMethod(codec2, TestDefaultMasterToken, "dc2", "testmethod") + resp2, err := retrieveTestAuthMethod(codec2, TestDefaultInitialManagementToken, "dc2", "testmethod") require.NoError(t, err) require.Nil(t, resp2.AuthMethod) // absent in dc1 - resp2, err = retrieveTestAuthMethod(codec1, TestDefaultMasterToken, "dc1", "testmethod") + resp2, err = retrieveTestAuthMethod(codec1, TestDefaultInitialManagementToken, "dc1", "testmethod") require.NoError(t, err) require.Nil(t, resp2.AuthMethod) }) @@ -4166,12 +4166,12 @@ func TestACLEndpoint_Login(t *testing.T) { "default", "mynode", "jkl101", ) - method, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID) + method, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID) require.NoError(t, err) // 'fake-db' rules ruleDB, err := upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "serviceaccount.namespace==default and serviceaccount.name==db", structs.BindingRuleBindTypeService, "method-${serviceaccount.name}", @@ -4180,7 +4180,7 @@ func TestACLEndpoint_Login(t *testing.T) { // 'fake-vault' rules _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "serviceaccount.namespace==default and serviceaccount.name==vault", structs.BindingRuleBindTypeRole, "method-${serviceaccount.name}", @@ -4189,14 +4189,14 @@ func TestACLEndpoint_Login(t *testing.T) { // 'fake-monolith' rules _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "serviceaccount.namespace==default and serviceaccount.name==monolith", structs.BindingRuleBindTypeService, "method-${serviceaccount.name}", ) require.NoError(t, err) _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "serviceaccount.namespace==default and serviceaccount.name==monolith", structs.BindingRuleBindTypeRole, "method-${serviceaccount.name}", @@ -4205,7 +4205,7 @@ func TestACLEndpoint_Login(t *testing.T) { // node identity rule _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "serviceaccount.namespace==default and serviceaccount.name==mynode", structs.BindingRuleBindTypeNode, "${serviceaccount.name}", @@ -4291,7 +4291,7 @@ func TestACLEndpoint_Login(t *testing.T) { Role: structs.ACLRole{ Name: "method-vault", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var out structs.ACLRole @@ -4354,7 +4354,7 @@ func TestACLEndpoint_Login(t *testing.T) { Role: structs.ACLRole{ Name: "method-monolith", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var out structs.ACLRole @@ -4445,7 +4445,7 @@ func TestACLEndpoint_Login(t *testing.T) { BindName: ruleDB.BindName, Selector: "", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var out structs.ACLBindingRule @@ -4489,7 +4489,7 @@ func TestACLEndpoint_Login(t *testing.T) { req := structs.ACLAuthMethodSetRequest{ Datacenter: "dc1", AuthMethod: updated, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored structs.ACLAuthMethod @@ -4534,7 +4534,7 @@ func TestACLEndpoint_Login_with_MaxTokenTTL(t *testing.T) { "default", "web", "abc123", ) - method, err := upsertTestCustomizedAuthMethod(codec, TestDefaultMasterToken, "dc1", func(method *structs.ACLAuthMethod) { + method, err := upsertTestCustomizedAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", func(method *structs.ACLAuthMethod) { method.MaxTokenTTL = 5 * time.Minute method.Config = map[string]interface{}{ "SessionID": testSessionID, @@ -4543,7 +4543,7 @@ func TestACLEndpoint_Login_with_MaxTokenTTL(t *testing.T) { require.NoError(t, err) _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "", structs.BindingRuleBindTypeService, "web", @@ -4640,7 +4640,7 @@ func TestACLEndpoint_Login_with_TokenLocality(t *testing.T) { for name, tc := range cases { tc := tc t.Run(name, func(t *testing.T) { - method, err := upsertTestCustomizedAuthMethod(codec, TestDefaultMasterToken, "dc1", func(method *structs.ACLAuthMethod) { + method, err := upsertTestCustomizedAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", func(method *structs.ACLAuthMethod) { method.TokenLocality = tc.tokenLocality method.Config = map[string]interface{}{ "SessionID": testSessionID, @@ -4649,7 +4649,7 @@ func TestACLEndpoint_Login_with_TokenLocality(t *testing.T) { require.NoError(t, err) _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "", structs.BindingRuleBindTypeService, "web", @@ -4706,7 +4706,7 @@ func TestACLEndpoint_Login_with_TokenLocality(t *testing.T) { TokenIDType: structs.ACLTokenSecret, Datacenter: "dc2", EnterpriseMeta: *defaultEntMeta, - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, }, &resp)) require.NotNil(r, resp.Token, "cannot lookup token with secretID %q", secretID) }) @@ -4755,7 +4755,7 @@ func TestACLEndpoint_Login_k8s(t *testing.T) { ) method, err := upsertTestKubernetesAuthMethod( - codec, TestDefaultMasterToken, "dc1", + codec, TestDefaultInitialManagementToken, "dc1", testSrv.CACert(), testSrv.Addr(), goodJWT_A, @@ -4791,7 +4791,7 @@ func TestACLEndpoint_Login_k8s(t *testing.T) { }) _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "serviceaccount.namespace==default", structs.BindingRuleBindTypeService, "${serviceaccount.name}", @@ -4899,7 +4899,7 @@ func TestACLEndpoint_Login_jwt(t *testing.T) { for name, tc := range cases { tc := tc t.Run(name, func(t *testing.T) { - method, err := upsertTestCustomizedAuthMethod(codec, TestDefaultMasterToken, "dc1", func(method *structs.ACLAuthMethod) { + method, err := upsertTestCustomizedAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", func(method *structs.ACLAuthMethod) { method.Type = "jwt" method.Config = map[string]interface{}{ "JWTSupportedAlgs": []string{"ES256"}, @@ -4970,7 +4970,7 @@ func TestACLEndpoint_Login_jwt(t *testing.T) { }) _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "value.name == jeff2 and value.primary_org == engineering and foo in list.groups", structs.BindingRuleBindTypeService, "test--${value.name}--${value.primary_org}", @@ -5022,11 +5022,11 @@ func TestACLEndpoint_Logout(t *testing.T) { "default", "db", "def456", ) - method, err := upsertTestAuthMethod(codec, TestDefaultMasterToken, "dc1", testSessionID) + method, err := upsertTestAuthMethod(codec, TestDefaultInitialManagementToken, "dc1", testSessionID) require.NoError(t, err) _, err = upsertTestBindingRule( - codec, TestDefaultMasterToken, "dc1", method.Name, + codec, TestDefaultInitialManagementToken, "dc1", method.Name, "", structs.BindingRuleBindTypeService, "method-${serviceaccount.name}", @@ -5035,8 +5035,8 @@ func TestACLEndpoint_Logout(t *testing.T) { t.Run("you must provide a token", func(t *testing.T) { req := structs.ACLLogoutRequest{ - Datacenter: "dc1", - // WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + Datacenter: "dc1", + WriteRequest: structs.WriteRequest{Token: ""}, } req.Token = "" var ignored bool @@ -5056,7 +5056,7 @@ func TestACLEndpoint_Logout(t *testing.T) { t.Run("logout from non-auth method-linked token should fail", func(t *testing.T) { req := structs.ACLLogoutRequest{ Datacenter: "dc1", - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var ignored bool testutil.RequireErrorContains(t, acl.Logout(&req, &ignored), "Permission denied") @@ -5239,7 +5239,7 @@ func TestValidateBindingRuleBindName(t *testing.T) { } // upsertTestToken creates a token for testing purposes -func upsertTestTokenInEntMeta(codec rpc.ClientCodec, masterToken string, datacenter string, +func upsertTestTokenInEntMeta(codec rpc.ClientCodec, initialManagementToken string, datacenter string, tokenModificationFn func(token *structs.ACLToken), entMeta *structs.EnterpriseMeta) (*structs.ACLToken, error) { if entMeta == nil { entMeta = structs.DefaultEnterpriseMetaInDefaultPartition() @@ -5252,7 +5252,7 @@ func upsertTestTokenInEntMeta(codec rpc.ClientCodec, masterToken string, datacen Policies: nil, EnterpriseMeta: *entMeta, }, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if tokenModificationFn != nil { @@ -5274,19 +5274,19 @@ func upsertTestTokenInEntMeta(codec rpc.ClientCodec, masterToken string, datacen return &out, nil } -func upsertTestToken(codec rpc.ClientCodec, masterToken string, datacenter string, +func upsertTestToken(codec rpc.ClientCodec, initialManagementToken string, datacenter string, tokenModificationFn func(token *structs.ACLToken)) (*structs.ACLToken, error) { - return upsertTestTokenInEntMeta(codec, masterToken, datacenter, + return upsertTestTokenInEntMeta(codec, initialManagementToken, datacenter, tokenModificationFn, structs.DefaultEnterpriseMetaInDefaultPartition()) } -func upsertTestTokenWithPolicyRulesInEntMeta(codec rpc.ClientCodec, masterToken string, datacenter string, rules string, entMeta *structs.EnterpriseMeta) (*structs.ACLToken, error) { - policy, err := upsertTestPolicyWithRulesInEntMeta(codec, masterToken, datacenter, rules, entMeta) +func upsertTestTokenWithPolicyRulesInEntMeta(codec rpc.ClientCodec, initialManagementToken string, datacenter string, rules string, entMeta *structs.EnterpriseMeta) (*structs.ACLToken, error) { + policy, err := upsertTestPolicyWithRulesInEntMeta(codec, initialManagementToken, datacenter, rules, entMeta) if err != nil { return nil, err } - token, err := upsertTestTokenInEntMeta(codec, masterToken, datacenter, func(token *structs.ACLToken) { + token, err := upsertTestTokenInEntMeta(codec, initialManagementToken, datacenter, func(token *structs.ACLToken) { token.Policies = []structs.ACLTokenPolicyLink{{ID: policy.ID}} }, entMeta) if err != nil { @@ -5296,16 +5296,16 @@ func upsertTestTokenWithPolicyRulesInEntMeta(codec rpc.ClientCodec, masterToken return token, nil } -func upsertTestTokenWithPolicyRules(codec rpc.ClientCodec, masterToken string, datacenter string, rules string) (*structs.ACLToken, error) { - return upsertTestTokenWithPolicyRulesInEntMeta(codec, masterToken, datacenter, rules, nil) +func upsertTestTokenWithPolicyRules(codec rpc.ClientCodec, initialManagementToken string, datacenter string, rules string) (*structs.ACLToken, error) { + return upsertTestTokenWithPolicyRulesInEntMeta(codec, initialManagementToken, datacenter, rules, nil) } -func retrieveTestTokenAccessorForSecret(codec rpc.ClientCodec, masterToken string, datacenter string, id string) (string, error) { +func retrieveTestTokenAccessorForSecret(codec rpc.ClientCodec, initialManagementToken string, datacenter string, id string) (string, error) { arg := structs.ACLTokenGetRequest{ TokenID: id, TokenIDType: structs.ACLTokenSecret, Datacenter: datacenter, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLTokenResponse @@ -5324,12 +5324,12 @@ func retrieveTestTokenAccessorForSecret(codec rpc.ClientCodec, masterToken strin } // retrieveTestToken returns a policy for testing purposes -func retrieveTestToken(codec rpc.ClientCodec, masterToken string, datacenter string, id string) (*structs.ACLTokenResponse, error) { +func retrieveTestToken(codec rpc.ClientCodec, initialManagementToken string, datacenter string, id string) (*structs.ACLTokenResponse, error) { arg := structs.ACLTokenGetRequest{ Datacenter: datacenter, TokenID: id, TokenIDType: structs.ACLTokenAccessor, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLTokenResponse @@ -5343,11 +5343,11 @@ func retrieveTestToken(codec rpc.ClientCodec, masterToken string, datacenter str return &out, nil } -func deleteTestToken(codec rpc.ClientCodec, masterToken string, datacenter string, tokenAccessor string) error { +func deleteTestToken(codec rpc.ClientCodec, initialManagementToken string, datacenter string, tokenAccessor string) error { arg := structs.ACLTokenDeleteRequest{ Datacenter: datacenter, TokenID: tokenAccessor, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } var ignored string @@ -5355,11 +5355,11 @@ func deleteTestToken(codec rpc.ClientCodec, masterToken string, datacenter strin return err } -func deleteTestPolicy(codec rpc.ClientCodec, masterToken string, datacenter string, policyID string) error { +func deleteTestPolicy(codec rpc.ClientCodec, initialManagementToken string, datacenter string, policyID string) error { arg := structs.ACLPolicyDeleteRequest{ Datacenter: datacenter, PolicyID: policyID, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } var ignored string @@ -5367,7 +5367,7 @@ func deleteTestPolicy(codec rpc.ClientCodec, masterToken string, datacenter stri return err } -func upsertTestCustomizedPolicy(codec rpc.ClientCodec, masterToken string, datacenter string, policyModificationFn func(policy *structs.ACLPolicy)) (*structs.ACLPolicy, error) { +func upsertTestCustomizedPolicy(codec rpc.ClientCodec, initialManagementToken string, datacenter string, policyModificationFn func(policy *structs.ACLPolicy)) (*structs.ACLPolicy, error) { // Make sure test policies can't collide policyUnq, err := uuid.GenerateUUID() if err != nil { @@ -5379,7 +5379,7 @@ func upsertTestCustomizedPolicy(codec rpc.ClientCodec, masterToken string, datac Policy: structs.ACLPolicy{ Name: fmt.Sprintf("test-policy-%s", policyUnq), }, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if policyModificationFn != nil { @@ -5402,16 +5402,16 @@ func upsertTestCustomizedPolicy(codec rpc.ClientCodec, masterToken string, datac } // upsertTestPolicy creates a policy for testing purposes -func upsertTestPolicy(codec rpc.ClientCodec, masterToken string, datacenter string) (*structs.ACLPolicy, error) { - return upsertTestPolicyWithRules(codec, masterToken, datacenter, "") +func upsertTestPolicy(codec rpc.ClientCodec, initialManagementToken string, datacenter string) (*structs.ACLPolicy, error) { + return upsertTestPolicyWithRules(codec, initialManagementToken, datacenter, "") } -func upsertTestPolicyWithRules(codec rpc.ClientCodec, masterToken string, datacenter string, rules string) (*structs.ACLPolicy, error) { - return upsertTestPolicyWithRulesInEntMeta(codec, masterToken, datacenter, rules, structs.DefaultEnterpriseMetaInDefaultPartition()) +func upsertTestPolicyWithRules(codec rpc.ClientCodec, initialManagementToken string, datacenter string, rules string) (*structs.ACLPolicy, error) { + return upsertTestPolicyWithRulesInEntMeta(codec, initialManagementToken, datacenter, rules, structs.DefaultEnterpriseMetaInDefaultPartition()) } -func upsertTestPolicyWithRulesInEntMeta(codec rpc.ClientCodec, masterToken string, datacenter string, rules string, entMeta *structs.EnterpriseMeta) (*structs.ACLPolicy, error) { - return upsertTestCustomizedPolicy(codec, masterToken, datacenter, func(policy *structs.ACLPolicy) { +func upsertTestPolicyWithRulesInEntMeta(codec rpc.ClientCodec, initialManagementToken string, datacenter string, rules string, entMeta *structs.EnterpriseMeta) (*structs.ACLPolicy, error) { + return upsertTestCustomizedPolicy(codec, initialManagementToken, datacenter, func(policy *structs.ACLPolicy) { if entMeta == nil { entMeta = structs.DefaultEnterpriseMetaInDefaultPartition() } @@ -5421,11 +5421,11 @@ func upsertTestPolicyWithRulesInEntMeta(codec rpc.ClientCodec, masterToken strin } // retrieveTestPolicy returns a policy for testing purposes -func retrieveTestPolicy(codec rpc.ClientCodec, masterToken string, datacenter string, id string) (*structs.ACLPolicyResponse, error) { +func retrieveTestPolicy(codec rpc.ClientCodec, initialManagementToken string, datacenter string, id string) (*structs.ACLPolicyResponse, error) { arg := structs.ACLPolicyGetRequest{ Datacenter: datacenter, PolicyID: id, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLPolicyResponse @@ -5439,11 +5439,11 @@ func retrieveTestPolicy(codec rpc.ClientCodec, masterToken string, datacenter st return &out, nil } -func deleteTestRole(codec rpc.ClientCodec, masterToken string, datacenter string, roleID string) error { +func deleteTestRole(codec rpc.ClientCodec, initialManagementToken string, datacenter string, roleID string) error { arg := structs.ACLRoleDeleteRequest{ Datacenter: datacenter, RoleID: roleID, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } var ignored string @@ -5451,8 +5451,8 @@ func deleteTestRole(codec rpc.ClientCodec, masterToken string, datacenter string return err } -func deleteTestRoleByName(codec rpc.ClientCodec, masterToken string, datacenter string, roleName string) error { - resp, err := retrieveTestRoleByName(codec, masterToken, datacenter, roleName) +func deleteTestRoleByName(codec rpc.ClientCodec, initialManagementToken string, datacenter string, roleName string) error { + resp, err := retrieveTestRoleByName(codec, initialManagementToken, datacenter, roleName) if err != nil { return err } @@ -5460,15 +5460,15 @@ func deleteTestRoleByName(codec rpc.ClientCodec, masterToken string, datacenter return nil } - return deleteTestRole(codec, masterToken, datacenter, resp.Role.ID) + return deleteTestRole(codec, initialManagementToken, datacenter, resp.Role.ID) } // upsertTestRole creates a role for testing purposes -func upsertTestRole(codec rpc.ClientCodec, masterToken string, datacenter string) (*structs.ACLRole, error) { - return upsertTestCustomizedRole(codec, masterToken, datacenter, nil) +func upsertTestRole(codec rpc.ClientCodec, initialManagementToken string, datacenter string) (*structs.ACLRole, error) { + return upsertTestCustomizedRole(codec, initialManagementToken, datacenter, nil) } -func upsertTestCustomizedRole(codec rpc.ClientCodec, masterToken string, datacenter string, modify func(role *structs.ACLRole)) (*structs.ACLRole, error) { +func upsertTestCustomizedRole(codec rpc.ClientCodec, initialManagementToken string, datacenter string, modify func(role *structs.ACLRole)) (*structs.ACLRole, error) { // Make sure test roles can't collide roleUnq, err := uuid.GenerateUUID() if err != nil { @@ -5480,7 +5480,7 @@ func upsertTestCustomizedRole(codec rpc.ClientCodec, masterToken string, datacen Role: structs.ACLRole{ Name: fmt.Sprintf("test-role-%s", roleUnq), }, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if modify != nil { @@ -5502,11 +5502,11 @@ func upsertTestCustomizedRole(codec rpc.ClientCodec, masterToken string, datacen return &out, nil } -func retrieveTestRole(codec rpc.ClientCodec, masterToken string, datacenter string, id string) (*structs.ACLRoleResponse, error) { +func retrieveTestRole(codec rpc.ClientCodec, initialManagementToken string, datacenter string, id string) (*structs.ACLRoleResponse, error) { arg := structs.ACLRoleGetRequest{ Datacenter: datacenter, RoleID: id, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLRoleResponse @@ -5520,11 +5520,11 @@ func retrieveTestRole(codec rpc.ClientCodec, masterToken string, datacenter stri return &out, nil } -func retrieveTestRoleByName(codec rpc.ClientCodec, masterToken string, datacenter string, name string) (*structs.ACLRoleResponse, error) { +func retrieveTestRoleByName(codec rpc.ClientCodec, initialManagementToken string, datacenter string, name string) (*structs.ACLRoleResponse, error) { arg := structs.ACLRoleGetRequest{ Datacenter: datacenter, RoleName: name, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLRoleResponse @@ -5538,11 +5538,11 @@ func retrieveTestRoleByName(codec rpc.ClientCodec, masterToken string, datacente return &out, nil } -func deleteTestAuthMethod(codec rpc.ClientCodec, masterToken string, datacenter string, methodName string) error { +func deleteTestAuthMethod(codec rpc.ClientCodec, initialManagementToken string, datacenter string, methodName string) error { arg := structs.ACLAuthMethodDeleteRequest{ Datacenter: datacenter, AuthMethodName: methodName, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } var ignored string @@ -5550,10 +5550,10 @@ func deleteTestAuthMethod(codec rpc.ClientCodec, masterToken string, datacenter return err } func upsertTestAuthMethod( - codec rpc.ClientCodec, masterToken string, datacenter string, + codec rpc.ClientCodec, initialManagementToken string, datacenter string, sessionID string, ) (*structs.ACLAuthMethod, error) { - return upsertTestCustomizedAuthMethod(codec, masterToken, datacenter, func(method *structs.ACLAuthMethod) { + return upsertTestCustomizedAuthMethod(codec, initialManagementToken, datacenter, func(method *structs.ACLAuthMethod) { method.Config = map[string]interface{}{ "SessionID": sessionID, } @@ -5561,7 +5561,7 @@ func upsertTestAuthMethod( } func upsertTestCustomizedAuthMethod( - codec rpc.ClientCodec, masterToken string, datacenter string, + codec rpc.ClientCodec, initialManagementToken string, datacenter string, modify func(method *structs.ACLAuthMethod), ) (*structs.ACLAuthMethod, error) { name, err := uuid.GenerateUUID() @@ -5575,7 +5575,7 @@ func upsertTestCustomizedAuthMethod( Name: "test-method-" + name, Type: "testing", }, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if modify != nil { @@ -5593,7 +5593,7 @@ func upsertTestCustomizedAuthMethod( } func upsertTestKubernetesAuthMethod( - codec rpc.ClientCodec, masterToken string, datacenter string, + codec rpc.ClientCodec, initialManagementToken string, datacenter string, caCert, kubeHost, kubeJWT string, ) (*structs.ACLAuthMethod, error) { name, err := uuid.GenerateUUID() @@ -5619,7 +5619,7 @@ func upsertTestKubernetesAuthMethod( "ServiceAccountJWT": kubeJWT, }, }, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } var out structs.ACLAuthMethod @@ -5632,11 +5632,11 @@ func upsertTestKubernetesAuthMethod( return &out, nil } -func retrieveTestAuthMethod(codec rpc.ClientCodec, masterToken string, datacenter string, name string) (*structs.ACLAuthMethodResponse, error) { +func retrieveTestAuthMethod(codec rpc.ClientCodec, initialManagementToken string, datacenter string, name string) (*structs.ACLAuthMethodResponse, error) { arg := structs.ACLAuthMethodGetRequest{ Datacenter: datacenter, AuthMethodName: name, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLAuthMethodResponse @@ -5650,11 +5650,11 @@ func retrieveTestAuthMethod(codec rpc.ClientCodec, masterToken string, datacente return &out, nil } -func deleteTestBindingRule(codec rpc.ClientCodec, masterToken string, datacenter string, ruleID string) error { +func deleteTestBindingRule(codec rpc.ClientCodec, initialManagementToken string, datacenter string, ruleID string) error { arg := structs.ACLBindingRuleDeleteRequest{ Datacenter: datacenter, BindingRuleID: ruleID, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } var ignored string @@ -5664,14 +5664,14 @@ func deleteTestBindingRule(codec rpc.ClientCodec, masterToken string, datacenter func upsertTestBindingRule( codec rpc.ClientCodec, - masterToken string, + initialManagementToken string, datacenter string, methodName string, selector string, bindType string, bindName string, ) (*structs.ACLBindingRule, error) { - return upsertTestCustomizedBindingRule(codec, masterToken, datacenter, func(rule *structs.ACLBindingRule) { + return upsertTestCustomizedBindingRule(codec, initialManagementToken, datacenter, func(rule *structs.ACLBindingRule) { rule.AuthMethod = methodName rule.BindType = bindType rule.BindName = bindName @@ -5679,11 +5679,11 @@ func upsertTestBindingRule( }) } -func upsertTestCustomizedBindingRule(codec rpc.ClientCodec, masterToken string, datacenter string, modify func(rule *structs.ACLBindingRule)) (*structs.ACLBindingRule, error) { +func upsertTestCustomizedBindingRule(codec rpc.ClientCodec, initialManagementToken string, datacenter string, modify func(rule *structs.ACLBindingRule)) (*structs.ACLBindingRule, error) { req := structs.ACLBindingRuleSetRequest{ Datacenter: datacenter, BindingRule: structs.ACLBindingRule{}, - WriteRequest: structs.WriteRequest{Token: masterToken}, + WriteRequest: structs.WriteRequest{Token: initialManagementToken}, } if modify != nil { @@ -5700,11 +5700,11 @@ func upsertTestCustomizedBindingRule(codec rpc.ClientCodec, masterToken string, return &out, nil } -func retrieveTestBindingRule(codec rpc.ClientCodec, masterToken string, datacenter string, ruleID string) (*structs.ACLBindingRuleResponse, error) { +func retrieveTestBindingRule(codec rpc.ClientCodec, initialManagementToken string, datacenter string, ruleID string) (*structs.ACLBindingRuleResponse, error) { arg := structs.ACLBindingRuleGetRequest{ Datacenter: datacenter, BindingRuleID: ruleID, - QueryOptions: structs.QueryOptions{Token: masterToken}, + QueryOptions: structs.QueryOptions{Token: initialManagementToken}, } var out structs.ACLBindingRuleResponse diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index 03707c0cb..f4ca0610b 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -4007,7 +4007,7 @@ func TestACL_LocalToken(t *testing.T) { }) } -func TestACLResolver_AgentMaster(t *testing.T) { +func TestACLResolver_AgentRecovery(t *testing.T) { var tokens token.Store d := &ACLResolverTestDelegate{ @@ -4025,9 +4025,9 @@ func TestACLResolver_AgentMaster(t *testing.T) { ident, authz, err := r.ResolveTokenToIdentityAndAuthorizer("9a184a11-5599-459e-b71a-550e5f9a5a23") require.NoError(t, err) require.NotNil(t, ident) - require.Equal(t, "agent-master:foo", ident.ID()) + require.Equal(t, "agent-recovery:foo", ident.ID()) require.NotNil(t, authz) - require.Equal(t, r.agentMasterAuthz, authz) + require.Equal(t, r.agentRecoveryAuthz, authz) require.Equal(t, acl.Allow, authz.AgentWrite("foo", nil)) require.Equal(t, acl.Allow, authz.NodeRead("bar", nil)) require.Equal(t, acl.Deny, authz.NodeWrite("bar", nil)) @@ -4106,7 +4106,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t Name: "the-policy", Rules: `key_prefix "" { policy = "read"}`, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var respPolicy = structs.ACLPolicy{} err := msgpackrpc.CallWithCodec(codec, "ACL.PolicySet", &reqPolicy, &respPolicy) @@ -4121,7 +4121,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t SecretID: token, Policies: []structs.ACLTokenPolicyLink{{Name: "the-policy"}}, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var respToken structs.ACLToken err = msgpackrpc.CallWithCodec(codec, "ACL.TokenSet", &reqToken, &respToken) @@ -4142,7 +4142,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t Name: "the-policy", Rules: `{"key_prefix": {"": {"policy": "deny"}}}`, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } err := msgpackrpc.CallWithCodec(codec, "ACL.PolicySet", &reqPolicy, &structs.ACLPolicy{}) require.NoError(t, err) @@ -4157,7 +4157,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t req := structs.ACLTokenDeleteRequest{ Datacenter: "dc1", TokenID: respToken.AccessorID, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var resp string err := msgpackrpc.CallWithCodec(codec, "ACL.TokenDelete", &req, &resp) diff --git a/agent/consul/acl_token_exp_test.go b/agent/consul/acl_token_exp_test.go index 17e8622c1..672cb332c 100644 --- a/agent/consul/acl_token_exp_test.go +++ b/agent/consul/acl_token_exp_test.go @@ -58,7 +58,7 @@ func testACLTokenReap_Primary(t *testing.T, local, global bool) { acl := ACL{srv: s1} - masterTokenAccessorID, err := retrieveTestTokenAccessorForSecret(codec, "root", "dc1", "root") + initialManagementTokenAccessorID, err := retrieveTestTokenAccessorForSecret(codec, "root", "dc1", "root") require.NoError(t, err) listTokens := func() (localTokens, globalTokens []string, err error) { @@ -88,9 +88,9 @@ func testACLTokenReap_Primary(t *testing.T, local, global bool) { t.Helper() var expectLocal, expectGlobal []string - // The master token and the anonymous token are always going to be - // present and global. - expectGlobal = append(expectGlobal, masterTokenAccessorID) + // The initial management token and the anonymous token are always + // going to be present and global. + expectGlobal = append(expectGlobal, initialManagementTokenAccessorID) expectGlobal = append(expectGlobal, structs.ACLTokenAnonymousID) if local { diff --git a/agent/consul/auto_config_backend_test.go b/agent/consul/auto_config_backend_test.go index f5078494b..b4a8a2c6c 100644 --- a/agent/consul/auto_config_backend_test.go +++ b/agent/consul/auto_config_backend_test.go @@ -41,7 +41,7 @@ func TestAutoConfigBackend_CreateACLToken(t *testing.T) { waitForLeaderEstablishment(t, srv) - r1, err := upsertTestRole(codec, TestDefaultMasterToken, "dc1") + r1, err := upsertTestRole(codec, TestDefaultInitialManagementToken, "dc1") require.NoError(t, err) t.Run("predefined-ids", func(t *testing.T) { diff --git a/agent/consul/connect_ca_endpoint_test.go b/agent/consul/connect_ca_endpoint_test.go index 40a384f90..84ea9f69a 100644 --- a/agent/consul/connect_ca_endpoint_test.go +++ b/agent/consul/connect_ca_endpoint_test.go @@ -163,7 +163,7 @@ func TestConnectCAConfig_GetSet_ACLDeny(t *testing.T) { dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true - c.ACLInitialManagementToken = TestDefaultMasterToken + c.ACLInitialManagementToken = TestDefaultInitialManagementToken c.ACLResolverSettings.ACLDefaultPolicy = "deny" }) defer os.RemoveAll(dir1) @@ -175,11 +175,11 @@ func TestConnectCAConfig_GetSet_ACLDeny(t *testing.T) { testrpc.WaitForLeader(t, s1.RPC, "dc1") opReadToken, err := upsertTestTokenWithPolicyRules( - codec, TestDefaultMasterToken, "dc1", `operator = "read"`) + codec, TestDefaultInitialManagementToken, "dc1", `operator = "read"`) require.NoError(t, err) opWriteToken, err := upsertTestTokenWithPolicyRules( - codec, TestDefaultMasterToken, "dc1", `operator = "write"`) + codec, TestDefaultInitialManagementToken, "dc1", `operator = "write"`) require.NoError(t, err) // Update a config value @@ -215,7 +215,7 @@ pY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g= args := &structs.CARequest{ Datacenter: "dc1", Config: newConfig, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var reply interface{} require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) diff --git a/agent/consul/federation_state_endpoint_test.go b/agent/consul/federation_state_endpoint_test.go index a8544869c..f3a1e345f 100644 --- a/agent/consul/federation_state_endpoint_test.go +++ b/agent/consul/federation_state_endpoint_test.go @@ -541,7 +541,7 @@ func TestFederationState_List_ACLDeny(t *testing.T) { gwListEmpty: true, gwFilteredByACLs: true, }, - "master token": { + "initial management token": { token: "root", }, } diff --git a/agent/consul/fsm/commands_oss_test.go b/agent/consul/fsm/commands_oss_test.go index 380c790c7..868de93bb 100644 --- a/agent/consul/fsm/commands_oss_test.go +++ b/agent/consul/fsm/commands_oss_test.go @@ -105,7 +105,7 @@ func TestFSM_RegisterNode_Service(t *testing.T) { Service: &structs.NodeService{ ID: "db", Service: "db", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, Check: &structs.HealthCheck{ @@ -170,7 +170,7 @@ func TestFSM_DeregisterService(t *testing.T) { Service: &structs.NodeService{ ID: "db", Service: "db", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, } @@ -296,7 +296,7 @@ func TestFSM_DeregisterNode(t *testing.T) { Service: &structs.NodeService{ ID: "db", Service: "db", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, Check: &structs.HealthCheck{ @@ -1429,7 +1429,7 @@ func TestFSM_Chunking_Lifecycle(t *testing.T) { Service: &structs.NodeService{ ID: "db", Service: "db", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, Check: &structs.HealthCheck{ @@ -1559,7 +1559,7 @@ func TestFSM_Chunking_TermChange(t *testing.T) { Service: &structs.NodeService{ ID: "db", Service: "db", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, Check: &structs.HealthCheck{ diff --git a/agent/consul/intention_endpoint_test.go b/agent/consul/intention_endpoint_test.go index ec8349f82..028c66fef 100644 --- a/agent/consul/intention_endpoint_test.go +++ b/agent/consul/intention_endpoint_test.go @@ -937,17 +937,17 @@ func TestIntention_WildcardACLEnforcement(t *testing.T) { // create some test policies. - writeToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service_prefix "" { policy = "deny" intentions = "write" }`) + writeToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service_prefix "" { policy = "deny" intentions = "write" }`) require.NoError(t, err) - readToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service_prefix "" { policy = "deny" intentions = "read" }`) + readToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service_prefix "" { policy = "deny" intentions = "read" }`) require.NoError(t, err) - exactToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service "*" { policy = "deny" intentions = "write" }`) + exactToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service "*" { policy = "deny" intentions = "write" }`) require.NoError(t, err) - wildcardPrefixToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service_prefix "*" { policy = "deny" intentions = "write" }`) + wildcardPrefixToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service_prefix "*" { policy = "deny" intentions = "write" }`) require.NoError(t, err) - fooToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service "foo" { policy = "deny" intentions = "write" }`) + fooToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service "foo" { policy = "deny" intentions = "write" }`) require.NoError(t, err) - denyToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service_prefix "" { policy = "deny" intentions = "deny" }`) + denyToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service_prefix "" { policy = "deny" intentions = "deny" }`) require.NoError(t, err) doIntentionCreate := func(t *testing.T, token string, dest string, deny bool) string { @@ -1607,7 +1607,7 @@ func TestIntentionList_acl(t *testing.T) { waitForLeaderEstablishment(t, s1) - token, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service_prefix "foo" { policy = "write" }`) + token, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service_prefix "foo" { policy = "write" }`) require.NoError(t, err) // Create a few records @@ -1620,7 +1620,7 @@ func TestIntentionList_acl(t *testing.T) { ixn.Intention.SourceNS = "default" ixn.Intention.DestinationNS = "default" ixn.Intention.DestinationName = name - ixn.WriteRequest.Token = TestDefaultMasterToken + ixn.WriteRequest.Token = TestDefaultInitialManagementToken // Create var reply string @@ -1639,10 +1639,10 @@ func TestIntentionList_acl(t *testing.T) { }) // Test with management token - t.Run("master-token", func(t *testing.T) { + t.Run("initial-management-token", func(t *testing.T) { req := &structs.IntentionListRequest{ Datacenter: "dc1", - QueryOptions: structs.QueryOptions{Token: TestDefaultMasterToken}, + QueryOptions: structs.QueryOptions{Token: TestDefaultInitialManagementToken}, } var resp structs.IndexedIntentions require.NoError(t, msgpackrpc.CallWithCodec(codec, "Intention.List", req, &resp)) @@ -1666,7 +1666,7 @@ func TestIntentionList_acl(t *testing.T) { req := &structs.IntentionListRequest{ Datacenter: "dc1", QueryOptions: structs.QueryOptions{ - Token: TestDefaultMasterToken, + Token: TestDefaultInitialManagementToken, Filter: "DestinationName == foobar", }, } @@ -1763,7 +1763,7 @@ func TestIntentionMatch_acl(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - token, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service "bar" { policy = "write" }`) + token, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service "bar" { policy = "write" }`) require.NoError(t, err) // Create some records @@ -1781,7 +1781,7 @@ func TestIntentionMatch_acl(t *testing.T) { Intention: structs.TestIntention(t), } ixn.Intention.DestinationName = v - ixn.WriteRequest.Token = TestDefaultMasterToken + ixn.WriteRequest.Token = TestDefaultInitialManagementToken // Create var reply string @@ -1993,7 +1993,7 @@ func TestIntentionCheck_match(t *testing.T) { _, srv, codec := testACLServerWithConfig(t, nil, false) waitForLeaderEstablishment(t, srv) - token, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", `service "api" { policy = "read" }`) + token, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", `service "api" { policy = "read" }`) require.NoError(t, err) // Create some intentions @@ -2015,7 +2015,7 @@ func TestIntentionCheck_match(t *testing.T) { DestinationName: v[1], Action: structs.IntentionActionAllow, }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } // Create var reply string diff --git a/agent/consul/internal_endpoint_test.go b/agent/consul/internal_endpoint_test.go index 7a354e7b5..599b4330c 100644 --- a/agent/consul/internal_endpoint_test.go +++ b/agent/consul/internal_endpoint_test.go @@ -1790,7 +1790,7 @@ func TestInternal_GatewayIntentions_aclDeny(t *testing.T) { codec := rpcClient(t, s1) defer codec.Close() - testrpc.WaitForTestAgent(t, s1.RPC, "dc1", testrpc.WithToken(TestDefaultMasterToken)) + testrpc.WaitForTestAgent(t, s1.RPC, "dc1", testrpc.WithToken(TestDefaultInitialManagementToken)) // Register terminating gateway and config entry linking it to postgres + redis { @@ -1809,7 +1809,7 @@ func TestInternal_GatewayIntentions_aclDeny(t *testing.T) { Status: api.HealthPassing, ServiceID: "terminating-gateway", }, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var regOutput struct{} require.NoError(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &arg, ®Output)) @@ -1834,7 +1834,7 @@ func TestInternal_GatewayIntentions_aclDeny(t *testing.T) { Op: structs.ConfigEntryUpsert, Datacenter: "dc1", Entry: args, - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } var configOutput bool require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Apply", &req, &configOutput)) @@ -1848,7 +1848,7 @@ func TestInternal_GatewayIntentions_aclDeny(t *testing.T) { Datacenter: "dc1", Op: structs.IntentionOpCreate, Intention: structs.TestIntention(t), - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } req.Intention.SourceName = "api" req.Intention.DestinationName = v @@ -1860,7 +1860,7 @@ func TestInternal_GatewayIntentions_aclDeny(t *testing.T) { Datacenter: "dc1", Op: structs.IntentionOpCreate, Intention: structs.TestIntention(t), - WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + WriteRequest: structs.WriteRequest{Token: TestDefaultInitialManagementToken}, } req.Intention.SourceName = v req.Intention.DestinationName = "api" @@ -1868,7 +1868,7 @@ func TestInternal_GatewayIntentions_aclDeny(t *testing.T) { } } - userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", ` + userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", ` service_prefix "redis" { policy = "read" } service_prefix "terminating-gateway" { policy = "read" } `) @@ -2192,7 +2192,7 @@ func TestInternal_ServiceTopology_ACL(t *testing.T) { dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true - c.ACLInitialManagementToken = TestDefaultMasterToken + c.ACLInitialManagementToken = TestDefaultInitialManagementToken c.ACLResolverSettings.ACLDefaultPolicy = "deny" }) defer os.RemoveAll(dir1) @@ -2215,10 +2215,10 @@ func TestInternal_ServiceTopology_ACL(t *testing.T) { // web -> redis exact intention // redis and redis-proxy on node zip - registerTestTopologyEntries(t, codec, TestDefaultMasterToken) + registerTestTopologyEntries(t, codec, TestDefaultInitialManagementToken) // Token grants read to: foo/api, foo/api-proxy, bar/web, baz/web - userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", ` + userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", ` node_prefix "" { policy = "read" } service_prefix "api" { policy = "read" } service "web" { policy = "read" } @@ -2331,7 +2331,7 @@ func TestInternal_IntentionUpstreams_ACL(t *testing.T) { dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true - c.ACLInitialManagementToken = TestDefaultMasterToken + c.ACLInitialManagementToken = TestDefaultInitialManagementToken c.ACLResolverSettings.ACLDefaultPolicy = "deny" }) defer os.RemoveAll(dir1) @@ -2349,11 +2349,11 @@ func TestInternal_IntentionUpstreams_ACL(t *testing.T) { // Intentions // * -> * (deny) intention // web -> api (allow) - registerIntentionUpstreamEntries(t, codec, TestDefaultMasterToken) + registerIntentionUpstreamEntries(t, codec, TestDefaultInitialManagementToken) t.Run("valid token", func(t *testing.T) { // Token grants read to read api service - userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", ` + userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", ` service_prefix "api" { policy = "read" } `) require.NoError(t, err) @@ -2379,7 +2379,7 @@ service_prefix "api" { policy = "read" } t.Run("invalid token filters results", func(t *testing.T) { // Token grants read to read an unrelated service, mongo - userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultMasterToken, "dc1", ` + userToken, err := upsertTestTokenWithPolicyRules(codec, TestDefaultInitialManagementToken, "dc1", ` service_prefix "mongo" { policy = "read" } `) require.NoError(t, err) diff --git a/agent/consul/leader_connect_test.go b/agent/consul/leader_connect_test.go index 3257e9f79..ea6e3482d 100644 --- a/agent/consul/leader_connect_test.go +++ b/agent/consul/leader_connect_test.go @@ -196,7 +196,7 @@ func TestCAManager_Initialize_Secondary(t *testing.T) { for _, tc := range tests { tc := tc t.Run(fmt.Sprintf("%s-%d", tc.keyType, tc.keyBits), func(t *testing.T) { - masterToken := "8a85f086-dd95-4178-b128-e10902767c5c" + initialManagementToken := "8a85f086-dd95-4178-b128-e10902767c5c" // Initialize primary as the primary DC dir1, s1 := testServerWithConfig(t, func(c *Config) { @@ -204,7 +204,7 @@ func TestCAManager_Initialize_Secondary(t *testing.T) { c.PrimaryDatacenter = "primary" c.Build = "1.6.0" c.ACLsEnabled = true - c.ACLInitialManagementToken = masterToken + c.ACLInitialManagementToken = initialManagementToken c.ACLResolverSettings.ACLDefaultPolicy = "deny" c.CAConfig.Config["PrivateKeyType"] = tc.keyType c.CAConfig.Config["PrivateKeyBits"] = tc.keyBits @@ -213,7 +213,7 @@ func TestCAManager_Initialize_Secondary(t *testing.T) { defer os.RemoveAll(dir1) defer s1.Shutdown() - s1.tokens.UpdateAgentToken(masterToken, token.TokenSourceConfig) + s1.tokens.UpdateAgentToken(initialManagementToken, token.TokenSourceConfig) testrpc.WaitForLeader(t, s1.RPC, "primary") @@ -232,8 +232,8 @@ func TestCAManager_Initialize_Secondary(t *testing.T) { defer os.RemoveAll(dir2) defer s2.Shutdown() - s2.tokens.UpdateAgentToken(masterToken, token.TokenSourceConfig) - s2.tokens.UpdateReplicationToken(masterToken, token.TokenSourceConfig) + s2.tokens.UpdateAgentToken(initialManagementToken, token.TokenSourceConfig) + s2.tokens.UpdateReplicationToken(initialManagementToken, token.TokenSourceConfig) // Create the WAN link joinWAN(t, s2, s1) diff --git a/agent/consul/leader_test.go b/agent/consul/leader_test.go index d7f681622..aeaf70f22 100644 --- a/agent/consul/leader_test.go +++ b/agent/consul/leader_test.go @@ -1162,15 +1162,15 @@ func TestLeader_ACL_Initialization(t *testing.T) { t.Parallel() tests := []struct { - name string - build string - master string - bootstrap bool + name string + build string + initialManagement string + bootstrap bool }{ - {"old version, no master", "0.8.0", "", true}, - {"old version, master", "0.8.0", "root", false}, - {"new version, no master", "0.9.1", "", true}, - {"new version, master", "0.9.1", "root", false}, + {"old version, no initial management", "0.8.0", "", true}, + {"old version, initial management", "0.8.0", "root", false}, + {"new version, no initial management", "0.9.1", "", true}, + {"new version, initial management", "0.9.1", "root", false}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { @@ -1180,17 +1180,17 @@ func TestLeader_ACL_Initialization(t *testing.T) { c.Datacenter = "dc1" c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true - c.ACLInitialManagementToken = tt.master + c.ACLInitialManagementToken = tt.initialManagement } dir1, s1 := testServerWithConfig(t, conf) defer os.RemoveAll(dir1) defer s1.Shutdown() testrpc.WaitForTestAgent(t, s1.RPC, "dc1") - if tt.master != "" { - _, master, err := s1.fsm.State().ACLTokenGetBySecret(nil, tt.master, nil) + if tt.initialManagement != "" { + _, initialManagement, err := s1.fsm.State().ACLTokenGetBySecret(nil, tt.initialManagement, nil) require.NoError(t, err) - require.NotNil(t, master) + require.NotNil(t, initialManagement) } _, anon, err := s1.fsm.State().ACLTokenGetBySecret(nil, anonymousToken, nil) diff --git a/agent/consul/prepared_query_endpoint_test.go b/agent/consul/prepared_query_endpoint_test.go index 9d82fdfa2..2d1702f4f 100644 --- a/agent/consul/prepared_query_endpoint_test.go +++ b/agent/consul/prepared_query_endpoint_test.go @@ -222,7 +222,7 @@ func TestPreparedQuery_Apply_ACLDeny(t *testing.T) { Datacenter: "dc1", Op: structs.PreparedQueryCreate, Query: &structs.PreparedQuery{ - Name: "redis-master", + Name: "redis-primary", Service: structs.ServiceQuery{ Service: "the-redis", }, @@ -503,7 +503,7 @@ func TestPreparedQuery_Apply_ForwardLeader(t *testing.T) { Address: "127.0.0.1", Service: &structs.NodeService{ Service: "redis", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, } @@ -853,7 +853,7 @@ func TestPreparedQuery_Get(t *testing.T) { Datacenter: "dc1", Op: structs.PreparedQueryCreate, Query: &structs.PreparedQuery{ - Name: "redis-master", + Name: "redis-primary", Service: structs.ServiceQuery{ Service: "the-redis", }, @@ -1110,7 +1110,7 @@ func TestPreparedQuery_List(t *testing.T) { Datacenter: "dc1", Op: structs.PreparedQueryCreate, Query: &structs.PreparedQuery{ - Name: "redis-master", + Name: "redis-primary", Token: "le-token", Service: structs.ServiceQuery{ Service: "the-redis", @@ -2348,7 +2348,7 @@ func TestPreparedQuery_Execute_ForwardLeader(t *testing.T) { Address: "127.0.0.1", Service: &structs.NodeService{ Service: "redis", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 8000, }, } diff --git a/agent/consul/server_test.go b/agent/consul/server_test.go index 0c7b84223..c06b95487 100644 --- a/agent/consul/server_test.go +++ b/agent/consul/server_test.go @@ -35,7 +35,7 @@ import ( ) const ( - TestDefaultMasterToken = "d9f05e83-a7ae-47ce-839e-c0d53a68c00a" + TestDefaultInitialManagementToken = "d9f05e83-a7ae-47ce-839e-c0d53a68c00a" ) // testTLSCertificates Generates a TLS CA and server key/cert and returns them @@ -70,7 +70,7 @@ func testTLSCertificates(serverName string) (cert string, key string, cacert str func testServerACLConfig(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true - c.ACLInitialManagementToken = TestDefaultMasterToken + c.ACLInitialManagementToken = TestDefaultInitialManagementToken c.ACLResolverSettings.ACLDefaultPolicy = "deny" } @@ -245,7 +245,7 @@ func testACLServerWithConfig(t *testing.T, cb func(*Config), initReplicationToke if initReplicationToken { // setup some tokens here so we get less warnings in the logs - srv.tokens.UpdateReplicationToken(TestDefaultMasterToken, token.TokenSourceConfig) + srv.tokens.UpdateReplicationToken(TestDefaultInitialManagementToken, token.TokenSourceConfig) } codec := rpcClient(t, srv) diff --git a/agent/consul/state/prepared_query_test.go b/agent/consul/state/prepared_query_test.go index 9ccd90dd0..6c66b9eee 100644 --- a/agent/consul/state/prepared_query_test.go +++ b/agent/consul/state/prepared_query_test.go @@ -5,8 +5,9 @@ import ( "strings" "testing" - "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/go-memdb" + + "github.com/hashicorp/consul/agent/structs" ) func TestStateStore_PreparedQuery_isUUID(t *testing.T) { @@ -663,7 +664,7 @@ func TestStateStore_PreparedQueryResolve(t *testing.T) { Regexp: "^prod-(.*)$", }, Service: structs.ServiceQuery{ - Service: "${match(1)}-master", + Service: "${match(1)}-primary", }, } if err := s.PreparedQuerySet(5, tmpl2); err != nil { @@ -705,7 +706,7 @@ func TestStateStore_PreparedQueryResolve(t *testing.T) { Regexp: "^prod-(.*)$", }, Service: structs.ServiceQuery{ - Service: "redis-foobar-master", + Service: "redis-foobar-primary", }, RaftIndex: structs.RaftIndex{ CreateIndex: 5, diff --git a/agent/local/state_test.go b/agent/local/state_test.go index 7deb2893f..0ec473505 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -52,7 +52,7 @@ func TestAgentAntiEntropy_Services(t *testing.T) { srv1 := &structs.NodeService{ ID: "mysql", Service: "mysql", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 5000, Weights: &structs.Weights{ Passing: 1, @@ -675,7 +675,7 @@ func TestAgentAntiEntropy_Services_WithChecks(t *testing.T) { srv := &structs.NodeService{ ID: "mysql", Service: "mysql", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 5000, } a.State.AddService(srv, "") @@ -725,7 +725,7 @@ func TestAgentAntiEntropy_Services_WithChecks(t *testing.T) { srv := &structs.NodeService{ ID: "redis", Service: "redis", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 5000, } a.State.AddService(srv, "") @@ -821,7 +821,7 @@ func TestAgentAntiEntropy_Services_ACLDeny(t *testing.T) { srv1 := &structs.NodeService{ ID: "mysql", Service: "mysql", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 5000, Weights: &structs.Weights{ Passing: 1, @@ -1278,7 +1278,7 @@ func TestAgentAntiEntropy_Checks_ACLDeny(t *testing.T) { srv1 := &structs.NodeService{ ID: "mysql", Service: "mysql", - Tags: []string{"master"}, + Tags: []string{"primary"}, Port: 5000, Weights: &structs.Weights{ Passing: 1, @@ -1348,7 +1348,7 @@ func TestAgentAntiEntropy_Checks_ACLDeny(t *testing.T) { Node: a.Config.NodeName, ServiceID: "mysql", ServiceName: "mysql", - ServiceTags: []string{"master"}, + ServiceTags: []string{"primary"}, CheckID: "mysql-check", Name: "mysql", Status: api.HealthPassing, diff --git a/agent/structs/acl.go b/agent/structs/acl.go index ae63878bc..756cadbb1 100644 --- a/agent/structs/acl.go +++ b/agent/structs/acl.go @@ -1728,50 +1728,50 @@ func CreateACLAuthorizationResponses(authz acl.Authorizer, requests []ACLAuthori return responses, nil } -type AgentMasterTokenIdentity struct { +type AgentRecoveryTokenIdentity struct { agent string secretID string } -func NewAgentMasterTokenIdentity(agent string, secretID string) *AgentMasterTokenIdentity { - return &AgentMasterTokenIdentity{ +func NewAgentRecoveryTokenIdentity(agent string, secretID string) *AgentRecoveryTokenIdentity { + return &AgentRecoveryTokenIdentity{ agent: agent, secretID: secretID, } } -func (id *AgentMasterTokenIdentity) ID() string { - return fmt.Sprintf("agent-master:%s", id.agent) +func (id *AgentRecoveryTokenIdentity) ID() string { + return fmt.Sprintf("agent-recovery:%s", id.agent) } -func (id *AgentMasterTokenIdentity) SecretToken() string { +func (id *AgentRecoveryTokenIdentity) SecretToken() string { return id.secretID } -func (id *AgentMasterTokenIdentity) PolicyIDs() []string { +func (id *AgentRecoveryTokenIdentity) PolicyIDs() []string { return nil } -func (id *AgentMasterTokenIdentity) RoleIDs() []string { +func (id *AgentRecoveryTokenIdentity) RoleIDs() []string { return nil } -func (id *AgentMasterTokenIdentity) ServiceIdentityList() []*ACLServiceIdentity { +func (id *AgentRecoveryTokenIdentity) ServiceIdentityList() []*ACLServiceIdentity { return nil } -func (id *AgentMasterTokenIdentity) NodeIdentityList() []*ACLNodeIdentity { +func (id *AgentRecoveryTokenIdentity) NodeIdentityList() []*ACLNodeIdentity { return nil } -func (id *AgentMasterTokenIdentity) IsExpired(asOf time.Time) bool { +func (id *AgentRecoveryTokenIdentity) IsExpired(asOf time.Time) bool { return false } -func (id *AgentMasterTokenIdentity) IsLocal() bool { +func (id *AgentRecoveryTokenIdentity) IsLocal() bool { return true } -func (id *AgentMasterTokenIdentity) EnterpriseMetadata() *EnterpriseMeta { +func (id *AgentRecoveryTokenIdentity) EnterpriseMetadata() *EnterpriseMeta { return nil } diff --git a/api/acl_test.go b/api/acl_test.go index c4749f23e..59c9bc315 100644 --- a/api/acl_test.go +++ b/api/acl_test.go @@ -455,7 +455,7 @@ func TestAPI_ACLToken_List(t *testing.T) { tokens, qm, err := acl.TokenList(nil) require.NoError(t, err) - // 3 + anon + master + // 3 + anon + initial management require.Len(t, tokens, 5) require.NotEqual(t, 0, qm.LastIndex) require.True(t, qm.KnownLeader) @@ -500,7 +500,7 @@ func TestAPI_ACLToken_List(t *testing.T) { require.True(t, ok) require.NotNil(t, token4) - // ensure the 5th token is the root master token + // ensure the 5th token is the initial management token root, _, err := acl.TokenReadSelf(nil) require.NoError(t, err) require.NotNil(t, root) @@ -516,17 +516,17 @@ func TestAPI_ACLToken_Clone(t *testing.T) { acl := c.ACL() - master, _, err := acl.TokenReadSelf(nil) + initialManagement, _, err := acl.TokenReadSelf(nil) require.NoError(t, err) - require.NotNil(t, master) + require.NotNil(t, initialManagement) - cloned, _, err := acl.TokenClone(master.AccessorID, "cloned", nil) + cloned, _, err := acl.TokenClone(initialManagement.AccessorID, "cloned", nil) require.NoError(t, err) require.NotNil(t, cloned) - require.NotEqual(t, master.AccessorID, cloned.AccessorID) - require.NotEqual(t, master.SecretID, cloned.SecretID) + require.NotEqual(t, initialManagement.AccessorID, cloned.AccessorID) + require.NotEqual(t, initialManagement.SecretID, cloned.SecretID) require.Equal(t, "cloned", cloned.Description) - require.ElementsMatch(t, master.Policies, cloned.Policies) + require.ElementsMatch(t, initialManagement.Policies, cloned.Policies) read, _, err := acl.TokenRead(cloned.AccessorID, nil) require.NoError(t, err) diff --git a/api/api_test.go b/api/api_test.go index 01dc0b681..6558efbd1 100644 --- a/api/api_test.go +++ b/api/api_test.go @@ -16,10 +16,11 @@ import ( "testing" "time" - "github.com/hashicorp/consul/sdk/testutil" - "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/sdk/testutil" + "github.com/hashicorp/consul/sdk/testutil/retry" ) type configCallback func(c *Config) @@ -39,7 +40,7 @@ func makeACLClient(t *testing.T) (*Client, *testutil.TestServer) { clientConfig.Token = "root" }, func(serverConfig *testutil.TestServerConfig) { serverConfig.PrimaryDatacenter = "dc1" - serverConfig.ACL.Tokens.Master = "root" + serverConfig.ACL.Tokens.InitialManagement = "root" serverConfig.ACL.Tokens.Agent = "root" serverConfig.ACL.Enabled = true serverConfig.ACL.DefaultPolicy = "deny" diff --git a/api/catalog_test.go b/api/catalog_test.go index 093d6d974..c1b7f0593 100644 --- a/api/catalog_test.go +++ b/api/catalog_test.go @@ -826,7 +826,7 @@ func TestAPI_CatalogRegistration(t *testing.T) { service := &AgentService{ ID: "redis1", Service: "redis", - Tags: []string{"master", "v1"}, + Tags: []string{"primary", "v1"}, Port: 8000, } @@ -1023,7 +1023,7 @@ func TestAPI_CatalogEnableTagOverride(t *testing.T) { service := &AgentService{ ID: "redis1", Service: "redis", - Tags: []string{"master", "v1"}, + Tags: []string{"primary", "v1"}, Port: 8000, } diff --git a/api/prepared_query_test.go b/api/prepared_query_test.go index 7fe727c6c..0e358d777 100644 --- a/api/prepared_query_test.go +++ b/api/prepared_query_test.go @@ -24,7 +24,7 @@ func TestAPI_PreparedQuery(t *testing.T) { Service: &AgentService{ ID: "redis1", Service: "redis", - Tags: []string{"master", "v1"}, + Tags: []string{"primary", "v1"}, Meta: map[string]string{"redis-version": "4.0"}, Port: 8000, }, diff --git a/sdk/testutil/README.md b/sdk/testutil/README.md index dfd57ceb8..a3f4c904d 100644 --- a/sdk/testutil/README.md +++ b/sdk/testutil/README.md @@ -56,10 +56,10 @@ func TestFoo_bar(t *testing.T) { }) // Create a service - srv1.AddService(t, "redis", structs.HealthPassing, []string{"master"}) + srv1.AddService(t, "redis", structs.HealthPassing, []string{"primary"}) // Create a service that will be accessed in target source code - srv1.AddAccessibleService("redis", structs.HealthPassing, "127.0.0.1", 6379, []string{"master"}) + srv1.AddAccessibleService("redis", structs.HealthPassing, "127.0.0.1", 6379, []string{"primary"}) // Create a service check srv1.AddCheck(t, "service:redis", "redis", structs.HealthPassing) diff --git a/sdk/testutil/server.go b/sdk/testutil/server.go index cd894a2ef..f017506d2 100644 --- a/sdk/testutil/server.go +++ b/sdk/testutil/server.go @@ -86,7 +86,6 @@ type TestServerConfig struct { Addresses *TestAddressConfig `json:"addresses,omitempty"` Ports *TestPortConfig `json:"ports,omitempty"` RaftProtocol int `json:"raft_protocol,omitempty"` - ACLMasterToken string `json:"acl_master_token,omitempty"` ACLDatacenter string `json:"acl_datacenter,omitempty"` PrimaryDatacenter string `json:"primary_datacenter,omitempty"` ACLDefaultPolicy string `json:"acl_default_policy,omitempty"` @@ -124,11 +123,17 @@ type TestACLs struct { } type TestTokens struct { - Master string `json:"master,omitempty"` Replication string `json:"replication,omitempty"` - AgentMaster string `json:"agent_master,omitempty"` Default string `json:"default,omitempty"` Agent string `json:"agent,omitempty"` + + // Note: this field is marshaled as master for compatibility with + // versions of Consul prior to 1.11. + InitialManagement string `json:"master,omitempty"` + + // Note: this field is marshaled as agent_master for compatibility with + // versions of Consul prior to 1.11. + AgentRecovery string `json:"agent_master,omitempty"` } // ServerConfigCallback is a function interface which can be @@ -375,7 +380,7 @@ func (s *TestServer) waitForAPI() error { time.Sleep(timer.Wait) url := s.url("/v1/status/leader") - resp, err := s.masterGet(url) + resp, err := s.privilegedGet(url) if err != nil { failed = true continue @@ -397,7 +402,7 @@ func (s *TestServer) WaitForLeader(t testing.TB) { retry.Run(t, func(r *retry.R) { // Query the API and check the status code. url := s.url("/v1/catalog/nodes") - resp, err := s.masterGet(url) + resp, err := s.privilegedGet(url) if err != nil { r.Fatalf("failed http get '%s': %v", url, err) } @@ -433,7 +438,7 @@ func (s *TestServer) WaitForActiveCARoot(t testing.TB) { retry.Run(t, func(r *retry.R) { // Query the API and check the status code. url := s.url("/v1/agent/connect/ca/roots") - resp, err := s.masterGet(url) + resp, err := s.privilegedGet(url) if err != nil { r.Fatalf("failed http get '%s': %v", url, err) } @@ -469,7 +474,7 @@ func (s *TestServer) WaitForServiceIntentions(t testing.TB) { // preflightCheck call in agent/consul/config_endpoint.go will fail if // we aren't ready yet, vs just doing no work instead. url := s.url("/v1/config/service-intentions/" + fakeConfigName) - resp, err := s.masterDelete(url) + resp, err := s.privilegedDelete(url) if err != nil { r.Fatalf("failed http get '%s': %v", url, err) } @@ -486,7 +491,7 @@ func (s *TestServer) WaitForSerfCheck(t testing.TB) { retry.Run(t, func(r *retry.R) { // Query the API and check the status code. url := s.url("/v1/catalog/nodes?index=0") - resp, err := s.masterGet(url) + resp, err := s.privilegedGet(url) if err != nil { r.Fatalf("failed http get: %v", err) } @@ -507,7 +512,7 @@ func (s *TestServer) WaitForSerfCheck(t testing.TB) { // Ensure the serfHealth check is registered url = s.url(fmt.Sprintf("/v1/health/node/%s", payload[0]["Node"])) - resp, err = s.masterGet(url) + resp, err = s.privilegedGet(url) if err != nil { r.Fatalf("failed http get: %v", err) } @@ -533,24 +538,24 @@ func (s *TestServer) WaitForSerfCheck(t testing.TB) { }) } -func (s *TestServer) masterGet(url string) (*http.Response, error) { +func (s *TestServer) privilegedGet(url string) (*http.Response, error) { req, err := http.NewRequest("GET", url, nil) if err != nil { return nil, err } - if s.Config.ACL.Tokens.Master != "" { - req.Header.Set("x-consul-token", s.Config.ACL.Tokens.Master) + if s.Config.ACL.Tokens.InitialManagement != "" { + req.Header.Set("x-consul-token", s.Config.ACL.Tokens.InitialManagement) } return s.HTTPClient.Do(req) } -func (s *TestServer) masterDelete(url string) (*http.Response, error) { +func (s *TestServer) privilegedDelete(url string) (*http.Response, error) { req, err := http.NewRequest("DELETE", url, nil) if err != nil { return nil, err } - if s.Config.ACL.Tokens.Master != "" { - req.Header.Set("x-consul-token", s.Config.ACL.Tokens.Master) + if s.Config.ACL.Tokens.InitialManagement != "" { + req.Header.Set("x-consul-token", s.Config.ACL.Tokens.InitialManagement) } return s.HTTPClient.Do(req) } diff --git a/ui/packages/consul-ui/mock-api/v1/acl/list b/ui/packages/consul-ui/mock-api/v1/acl/list index aa9f8c6a7..27fe3e99f 100644 --- a/ui/packages/consul-ui/mock-api/v1/acl/list +++ b/ui/packages/consul-ui/mock-api/v1/acl/list @@ -20,7 +20,7 @@ ${ }, { "ID":"secret", - "Name":"Master Token", + "Name":"Initial Management Token", "Type":"management", "Rules":"", "CreateIndex":5, From baf886c6f315f594f627bc3436d7e8d8b4ab6951 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" <4903+rboyer@users.noreply.github.com> Date: Thu, 20 Jan 2022 10:12:04 -0600 Subject: [PATCH 279/404] proxycfg: introduce explicit UpstreamID in lieu of bare string (#12125) The gist here is that now we use a value-type struct proxycfg.UpstreamID as the map key in ConfigSnapshot maps where we used to use "upstream id-ish" strings. These are internal only and used just for bidirectional trips through the agent cache keyspace (like the discovery chain target struct). For the few places where the upstream id needs to be projected into xDS, that's what (proxycfg.UpstreamID).EnvoyID() is for. This lets us ALWAYS inject the partition and namespace into these things without making stuff like the golden testdata diverge. --- agent/proxycfg/connect_proxy.go | 104 +++++----- agent/proxycfg/ingress_gateway.go | 28 +-- agent/proxycfg/manager_test.go | 53 ++--- agent/proxycfg/naming.go | 130 ++++++++++++ agent/proxycfg/naming_oss.go | 30 +++ agent/proxycfg/naming_test.go | 195 ++++++++++++++++++ agent/proxycfg/snapshot.go | 50 ++--- agent/proxycfg/state.go | 4 +- agent/proxycfg/state_test.go | 143 +++++++------ agent/proxycfg/testing.go | 80 +++---- agent/proxycfg/upstreams.go | 108 +++++----- agent/structs/connect_proxy_config.go | 26 +-- agent/structs/connect_proxy_config_oss.go | 2 +- agent/xds/clusters.go | 44 ++-- agent/xds/clusters_test.go | 27 ++- agent/xds/delta_test.go | 10 +- agent/xds/endpoints.go | 38 ++-- agent/xds/endpoints_test.go | 4 +- agent/xds/listeners.go | 51 ++--- agent/xds/listeners_ingress.go | 13 +- agent/xds/listeners_test.go | 85 +++++--- agent/xds/routes.go | 18 +- agent/xds/routes_test.go | 17 +- .../custom-upstream.envoy-1-20-x.golden | 13 +- agent/xds/xds_protocol_helpers_test.go | 6 +- 25 files changed, 843 insertions(+), 436 deletions(-) create mode 100644 agent/proxycfg/naming.go create mode 100644 agent/proxycfg/naming_oss.go create mode 100644 agent/proxycfg/naming_test.go diff --git a/agent/proxycfg/connect_proxy.go b/agent/proxycfg/connect_proxy.go index bd21dd2a7..629c41642 100644 --- a/agent/proxycfg/connect_proxy.go +++ b/agent/proxycfg/connect_proxy.go @@ -18,16 +18,16 @@ type handlerConnectProxy struct { // state. func (s *handlerConnectProxy) initialize(ctx context.Context) (ConfigSnapshot, error) { snap := newConfigSnapshotFromServiceInstance(s.serviceInstance, s.stateConfig) - snap.ConnectProxy.DiscoveryChain = make(map[string]*structs.CompiledDiscoveryChain) - snap.ConnectProxy.WatchedDiscoveryChains = make(map[string]context.CancelFunc) - snap.ConnectProxy.WatchedUpstreams = make(map[string]map[string]context.CancelFunc) - snap.ConnectProxy.WatchedUpstreamEndpoints = make(map[string]map[string]structs.CheckServiceNodes) - snap.ConnectProxy.WatchedGateways = make(map[string]map[string]context.CancelFunc) - snap.ConnectProxy.WatchedGatewayEndpoints = make(map[string]map[string]structs.CheckServiceNodes) + snap.ConnectProxy.DiscoveryChain = make(map[UpstreamID]*structs.CompiledDiscoveryChain) + snap.ConnectProxy.WatchedDiscoveryChains = make(map[UpstreamID]context.CancelFunc) + snap.ConnectProxy.WatchedUpstreams = make(map[UpstreamID]map[string]context.CancelFunc) + snap.ConnectProxy.WatchedUpstreamEndpoints = make(map[UpstreamID]map[string]structs.CheckServiceNodes) + snap.ConnectProxy.WatchedGateways = make(map[UpstreamID]map[string]context.CancelFunc) + snap.ConnectProxy.WatchedGatewayEndpoints = make(map[UpstreamID]map[string]structs.CheckServiceNodes) snap.ConnectProxy.WatchedServiceChecks = make(map[structs.ServiceID][]structs.CheckType) - snap.ConnectProxy.PreparedQueryEndpoints = make(map[string]structs.CheckServiceNodes) - snap.ConnectProxy.UpstreamConfig = make(map[string]*structs.Upstream) - snap.ConnectProxy.PassthroughUpstreams = make(map[string]ServicePassthroughAddrs) + snap.ConnectProxy.PreparedQueryEndpoints = make(map[UpstreamID]structs.CheckServiceNodes) + snap.ConnectProxy.UpstreamConfig = make(map[UpstreamID]*structs.Upstream) + snap.ConnectProxy.PassthroughUpstreams = make(map[UpstreamID]ServicePassthroughAddrs) // Watch for root changes err := s.cache.Notify(ctx, cachetype.ConnectCARootName, &structs.DCSpecificRequest{ @@ -106,9 +106,11 @@ func (s *handlerConnectProxy) initialize(ctx context.Context) (ConfigSnapshot, e for i := range s.proxyCfg.Upstreams { u := s.proxyCfg.Upstreams[i] + uid := NewUpstreamID(&u) + // Store defaults keyed under wildcard so they can be applied to centrally configured upstreams if u.DestinationName == structs.WildcardSpecifier { - snap.ConnectProxy.UpstreamConfig[u.DestinationID().String()] = &u + snap.ConnectProxy.UpstreamConfig[uid] = &u continue } @@ -117,7 +119,7 @@ func (s *handlerConnectProxy) initialize(ctx context.Context) (ConfigSnapshot, e if u.CentrallyConfigured { continue } - snap.ConnectProxy.UpstreamConfig[u.Identifier()] = &u + snap.ConnectProxy.UpstreamConfig[uid] = &u dc := s.source.Datacenter if u.Datacenter != "" { @@ -144,7 +146,7 @@ func (s *handlerConnectProxy) initialize(ctx context.Context) (ConfigSnapshot, e // the plain discovery chain if there is an error so it's safe to // continue. s.logger.Warn("failed to parse upstream config", - "upstream", u.Identifier(), + "upstream", uid.String(), "error", err, ) } @@ -157,7 +159,7 @@ func (s *handlerConnectProxy) initialize(ctx context.Context) (ConfigSnapshot, e QueryIDOrName: u.DestinationName, Connect: true, Source: *s.source, - }, "upstream:"+u.Identifier(), s.ch) + }, "upstream:"+uid.String(), s.ch) if err != nil { return snap, err } @@ -176,9 +178,9 @@ func (s *handlerConnectProxy) initialize(ctx context.Context) (ConfigSnapshot, e OverrideMeshGateway: s.proxyCfg.MeshGateway.OverlayWith(u.MeshGateway), OverrideProtocol: cfg.Protocol, OverrideConnectTimeout: cfg.ConnectTimeout(), - }, "discovery-chain:"+u.Identifier(), s.ch) + }, "discovery-chain:"+uid.String(), s.ch) if err != nil { - return snap, fmt.Errorf("failed to watch discovery chain for %s: %v", u.Identifier(), err) + return snap, fmt.Errorf("failed to watch discovery chain for %s: %v", uid.String(), err) } default: @@ -220,12 +222,14 @@ func (s *handlerConnectProxy) handleUpdate(ctx context.Context, u cache.UpdateEv return fmt.Errorf("invalid type for response %T", u.Result) } - seenServices := make(map[string]struct{}) + seenUpstreams := make(map[UpstreamID]struct{}) for _, svc := range resp.Services { - seenServices[svc.String()] = struct{}{} + uid := NewUpstreamIDFromServiceName(svc) + + seenUpstreams[uid] = struct{}{} cfgMap := make(map[string]interface{}) - u, ok := snap.ConnectProxy.UpstreamConfig[svc.String()] + u, ok := snap.ConnectProxy.UpstreamConfig[uid] if ok { cfgMap = u.Config } else { @@ -233,11 +237,12 @@ func (s *handlerConnectProxy) handleUpdate(ctx context.Context, u cache.UpdateEv // This is only relevant to upstreams from intentions because for explicit upstreams the defaulting is handled // by the ResolveServiceConfig endpoint. wildcardSID := structs.NewServiceID(structs.WildcardSpecifier, s.proxyID.WithWildcardNamespace()) - defaults, ok := snap.ConnectProxy.UpstreamConfig[wildcardSID.String()] + wildcardUID := NewUpstreamIDFromServiceID(wildcardSID) + defaults, ok := snap.ConnectProxy.UpstreamConfig[wildcardUID] if ok { u = defaults cfgMap = defaults.Config - snap.ConnectProxy.UpstreamConfig[svc.String()] = defaults + snap.ConnectProxy.UpstreamConfig[uid] = defaults } } @@ -247,7 +252,7 @@ func (s *handlerConnectProxy) handleUpdate(ctx context.Context, u cache.UpdateEv // the plain discovery chain if there is an error so it's safe to // continue. s.logger.Warn("failed to parse upstream config", - "upstream", u.Identifier(), + "upstream", uid, "error", err, ) } @@ -257,7 +262,7 @@ func (s *handlerConnectProxy) handleUpdate(ctx context.Context, u cache.UpdateEv meshGateway = meshGateway.OverlayWith(u.MeshGateway) } watchOpts := discoveryChainWatchOpts{ - id: svc.String(), + id: NewUpstreamIDFromServiceName(svc), name: svc.Name, namespace: svc.NamespaceOrDefault(), partition: svc.PartitionOrDefault(), @@ -268,69 +273,69 @@ func (s *handlerConnectProxy) handleUpdate(ctx context.Context, u cache.UpdateEv up := &handlerUpstreams{handlerState: s.handlerState} err = up.watchDiscoveryChain(ctx, snap, watchOpts) if err != nil { - return fmt.Errorf("failed to watch discovery chain for %s: %v", svc.String(), err) + return fmt.Errorf("failed to watch discovery chain for %s: %v", uid, err) } } - snap.ConnectProxy.IntentionUpstreams = seenServices + snap.ConnectProxy.IntentionUpstreams = seenUpstreams // Clean up data from services that were not in the update - for sn, targets := range snap.ConnectProxy.WatchedUpstreams { - if upstream, ok := snap.ConnectProxy.UpstreamConfig[sn]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { + for uid, targets := range snap.ConnectProxy.WatchedUpstreams { + if upstream, ok := snap.ConnectProxy.UpstreamConfig[uid]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { continue } - if _, ok := seenServices[sn]; !ok { + if _, ok := seenUpstreams[uid]; !ok { for _, cancelFn := range targets { cancelFn() } - delete(snap.ConnectProxy.WatchedUpstreams, sn) + delete(snap.ConnectProxy.WatchedUpstreams, uid) } } - for sn := range snap.ConnectProxy.WatchedUpstreamEndpoints { - if upstream, ok := snap.ConnectProxy.UpstreamConfig[sn]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { + for uid := range snap.ConnectProxy.WatchedUpstreamEndpoints { + if upstream, ok := snap.ConnectProxy.UpstreamConfig[uid]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { continue } - if _, ok := seenServices[sn]; !ok { - delete(snap.ConnectProxy.WatchedUpstreamEndpoints, sn) + if _, ok := seenUpstreams[uid]; !ok { + delete(snap.ConnectProxy.WatchedUpstreamEndpoints, uid) } } - for sn, cancelMap := range snap.ConnectProxy.WatchedGateways { - if upstream, ok := snap.ConnectProxy.UpstreamConfig[sn]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { + for uid, cancelMap := range snap.ConnectProxy.WatchedGateways { + if upstream, ok := snap.ConnectProxy.UpstreamConfig[uid]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { continue } - if _, ok := seenServices[sn]; !ok { + if _, ok := seenUpstreams[uid]; !ok { for _, cancelFn := range cancelMap { cancelFn() } - delete(snap.ConnectProxy.WatchedGateways, sn) + delete(snap.ConnectProxy.WatchedGateways, uid) } } - for sn := range snap.ConnectProxy.WatchedGatewayEndpoints { - if upstream, ok := snap.ConnectProxy.UpstreamConfig[sn]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { + for uid := range snap.ConnectProxy.WatchedGatewayEndpoints { + if upstream, ok := snap.ConnectProxy.UpstreamConfig[uid]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { continue } - if _, ok := seenServices[sn]; !ok { - delete(snap.ConnectProxy.WatchedGatewayEndpoints, sn) + if _, ok := seenUpstreams[uid]; !ok { + delete(snap.ConnectProxy.WatchedGatewayEndpoints, uid) } } - for sn, cancelFn := range snap.ConnectProxy.WatchedDiscoveryChains { - if upstream, ok := snap.ConnectProxy.UpstreamConfig[sn]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { + for uid, cancelFn := range snap.ConnectProxy.WatchedDiscoveryChains { + if upstream, ok := snap.ConnectProxy.UpstreamConfig[uid]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { continue } - if _, ok := seenServices[sn]; !ok { + if _, ok := seenUpstreams[uid]; !ok { cancelFn() - delete(snap.ConnectProxy.WatchedDiscoveryChains, sn) + delete(snap.ConnectProxy.WatchedDiscoveryChains, uid) } } // These entries are intentionally handled separately from the WatchedDiscoveryChains above. // There have been situations where a discovery watch was cancelled, then fired. // That update event then re-populated the DiscoveryChain map entry, which wouldn't get cleaned up // since there was no known watch for it. - for sn := range snap.ConnectProxy.DiscoveryChain { - if upstream, ok := snap.ConnectProxy.UpstreamConfig[sn]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { + for uid := range snap.ConnectProxy.DiscoveryChain { + if upstream, ok := snap.ConnectProxy.UpstreamConfig[uid]; ok && upstream.Datacenter != "" && upstream.Datacenter != s.source.Datacenter { continue } - if _, ok := seenServices[sn]; !ok { - delete(snap.ConnectProxy.DiscoveryChain, sn) + if _, ok := seenUpstreams[uid]; !ok { + delete(snap.ConnectProxy.DiscoveryChain, uid) } } @@ -340,7 +345,8 @@ func (s *handlerConnectProxy) handleUpdate(ctx context.Context, u cache.UpdateEv return fmt.Errorf("invalid type for response: %T", u.Result) } pq := strings.TrimPrefix(u.CorrelationID, "upstream:") - snap.ConnectProxy.PreparedQueryEndpoints[pq] = resp.Nodes + uid := UpstreamIDFromString(pq) + snap.ConnectProxy.PreparedQueryEndpoints[uid] = resp.Nodes case strings.HasPrefix(u.CorrelationID, svcChecksWatchIDPrefix): resp, ok := u.Result.([]structs.CheckType) diff --git a/agent/proxycfg/ingress_gateway.go b/agent/proxycfg/ingress_gateway.go index e14dce07b..1a5eb5ed9 100644 --- a/agent/proxycfg/ingress_gateway.go +++ b/agent/proxycfg/ingress_gateway.go @@ -48,12 +48,12 @@ func (s *handlerIngressGateway) initialize(ctx context.Context) (ConfigSnapshot, return snap, err } - snap.IngressGateway.WatchedDiscoveryChains = make(map[string]context.CancelFunc) - snap.IngressGateway.DiscoveryChain = make(map[string]*structs.CompiledDiscoveryChain) - snap.IngressGateway.WatchedUpstreams = make(map[string]map[string]context.CancelFunc) - snap.IngressGateway.WatchedUpstreamEndpoints = make(map[string]map[string]structs.CheckServiceNodes) - snap.IngressGateway.WatchedGateways = make(map[string]map[string]context.CancelFunc) - snap.IngressGateway.WatchedGatewayEndpoints = make(map[string]map[string]structs.CheckServiceNodes) + snap.IngressGateway.WatchedDiscoveryChains = make(map[UpstreamID]context.CancelFunc) + snap.IngressGateway.DiscoveryChain = make(map[UpstreamID]*structs.CompiledDiscoveryChain) + snap.IngressGateway.WatchedUpstreams = make(map[UpstreamID]map[string]context.CancelFunc) + snap.IngressGateway.WatchedUpstreamEndpoints = make(map[UpstreamID]map[string]structs.CheckServiceNodes) + snap.IngressGateway.WatchedGateways = make(map[UpstreamID]map[string]context.CancelFunc) + snap.IngressGateway.WatchedGatewayEndpoints = make(map[UpstreamID]map[string]structs.CheckServiceNodes) snap.IngressGateway.Listeners = make(map[IngressListenerKey]structs.IngressListener) return snap, nil } @@ -102,13 +102,15 @@ func (s *handlerIngressGateway) handleUpdate(ctx context.Context, u cache.Update // Update our upstreams and watches. var hosts []string - watchedSvcs := make(map[string]struct{}) + watchedSvcs := make(map[UpstreamID]struct{}) upstreamsMap := make(map[IngressListenerKey]structs.Upstreams) for _, service := range services.Services { u := makeUpstream(service) + uid := NewUpstreamID(&u) + watchOpts := discoveryChainWatchOpts{ - id: u.Identifier(), + id: uid, name: u.DestinationName, namespace: u.DestinationNamespace, partition: u.DestinationPartition, @@ -117,9 +119,9 @@ func (s *handlerIngressGateway) handleUpdate(ctx context.Context, u cache.Update up := &handlerUpstreams{handlerState: s.handlerState} err := up.watchDiscoveryChain(ctx, snap, watchOpts) if err != nil { - return fmt.Errorf("failed to watch discovery chain for %s: %v", u.Identifier(), err) + return fmt.Errorf("failed to watch discovery chain for %s: %v", uid, err) } - watchedSvcs[u.Identifier()] = struct{}{} + watchedSvcs[uid] = struct{}{} hosts = append(hosts, service.Hosts...) @@ -132,10 +134,10 @@ func (s *handlerIngressGateway) handleUpdate(ctx context.Context, u cache.Update snap.IngressGateway.Hosts = hosts snap.IngressGateway.HostsSet = true - for id, cancelFn := range snap.IngressGateway.WatchedDiscoveryChains { - if _, ok := watchedSvcs[id]; !ok { + for uid, cancelFn := range snap.IngressGateway.WatchedDiscoveryChains { + if _, ok := watchedSvcs[uid]; !ok { cancelFn() - delete(snap.IngressGateway.WatchedDiscoveryChains, id) + delete(snap.IngressGateway.WatchedDiscoveryChains, uid) } } diff --git a/agent/proxycfg/manager_test.go b/agent/proxycfg/manager_test.go index cdb271ee3..9b7fe0060 100644 --- a/agent/proxycfg/manager_test.go +++ b/agent/proxycfg/manager_test.go @@ -187,6 +187,7 @@ func TestManager_BasicLifecycle(t *testing.T) { }) db := structs.NewServiceName("db", nil) + dbUID := NewUpstreamIDFromServiceName(db) // Create test cases using some of the common data above. tests := []*testcase_BasicLifecycle{ @@ -214,28 +215,28 @@ func TestManager_BasicLifecycle(t *testing.T) { ConnectProxy: configSnapshotConnectProxy{ ConfigSnapshotUpstreams: ConfigSnapshotUpstreams{ Leaf: leaf, - DiscoveryChain: map[string]*structs.CompiledDiscoveryChain{ - db.String(): dbDefaultChain(), + DiscoveryChain: map[UpstreamID]*structs.CompiledDiscoveryChain{ + dbUID: dbDefaultChain(), }, - WatchedDiscoveryChains: map[string]context.CancelFunc{}, + WatchedDiscoveryChains: map[UpstreamID]context.CancelFunc{}, WatchedUpstreams: nil, // Clone() clears this out - WatchedUpstreamEndpoints: map[string]map[string]structs.CheckServiceNodes{ - db.String(): { + WatchedUpstreamEndpoints: map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "db.default.default.dc1": TestUpstreamNodes(t, db.Name), }, }, WatchedGateways: nil, // Clone() clears this out - WatchedGatewayEndpoints: map[string]map[string]structs.CheckServiceNodes{ - db.String(): {}, + WatchedGatewayEndpoints: map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: {}, }, - UpstreamConfig: map[string]*structs.Upstream{ - upstreams[0].Identifier(): &upstreams[0], - upstreams[1].Identifier(): &upstreams[1], - upstreams[2].Identifier(): &upstreams[2], + UpstreamConfig: map[UpstreamID]*structs.Upstream{ + NewUpstreamID(&upstreams[0]): &upstreams[0], + NewUpstreamID(&upstreams[1]): &upstreams[1], + NewUpstreamID(&upstreams[2]): &upstreams[2], }, - PassthroughUpstreams: map[string]ServicePassthroughAddrs{}, + PassthroughUpstreams: map[UpstreamID]ServicePassthroughAddrs{}, }, - PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{}, + PreparedQueryEndpoints: map[UpstreamID]structs.CheckServiceNodes{}, WatchedServiceChecks: map[structs.ServiceID][]structs.CheckType{}, Intentions: TestIntentions().Matches[0], IntentionsSet: true, @@ -271,29 +272,29 @@ func TestManager_BasicLifecycle(t *testing.T) { ConnectProxy: configSnapshotConnectProxy{ ConfigSnapshotUpstreams: ConfigSnapshotUpstreams{ Leaf: leaf, - DiscoveryChain: map[string]*structs.CompiledDiscoveryChain{ - db.String(): dbSplitChain(), + DiscoveryChain: map[UpstreamID]*structs.CompiledDiscoveryChain{ + dbUID: dbSplitChain(), }, - WatchedDiscoveryChains: map[string]context.CancelFunc{}, + WatchedDiscoveryChains: map[UpstreamID]context.CancelFunc{}, WatchedUpstreams: nil, // Clone() clears this out - WatchedUpstreamEndpoints: map[string]map[string]structs.CheckServiceNodes{ - db.String(): { + WatchedUpstreamEndpoints: map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "v1.db.default.default.dc1": TestUpstreamNodes(t, db.Name), "v2.db.default.default.dc1": TestUpstreamNodesAlternate(t), }, }, WatchedGateways: nil, // Clone() clears this out - WatchedGatewayEndpoints: map[string]map[string]structs.CheckServiceNodes{ - db.String(): {}, + WatchedGatewayEndpoints: map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: {}, }, - UpstreamConfig: map[string]*structs.Upstream{ - upstreams[0].Identifier(): &upstreams[0], - upstreams[1].Identifier(): &upstreams[1], - upstreams[2].Identifier(): &upstreams[2], + UpstreamConfig: map[UpstreamID]*structs.Upstream{ + NewUpstreamID(&upstreams[0]): &upstreams[0], + NewUpstreamID(&upstreams[1]): &upstreams[1], + NewUpstreamID(&upstreams[2]): &upstreams[2], }, - PassthroughUpstreams: map[string]ServicePassthroughAddrs{}, + PassthroughUpstreams: map[UpstreamID]ServicePassthroughAddrs{}, }, - PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{}, + PreparedQueryEndpoints: map[UpstreamID]structs.CheckServiceNodes{}, WatchedServiceChecks: map[structs.ServiceID][]structs.CheckType{}, Intentions: TestIntentions().Matches[0], IntentionsSet: true, diff --git a/agent/proxycfg/naming.go b/agent/proxycfg/naming.go new file mode 100644 index 000000000..5304b8d1a --- /dev/null +++ b/agent/proxycfg/naming.go @@ -0,0 +1,130 @@ +package proxycfg + +import ( + "strings" + + "github.com/hashicorp/consul/agent/structs" +) + +type UpstreamID struct { + Type string + Name string + Datacenter string + structs.EnterpriseMeta +} + +func NewUpstreamID(u *structs.Upstream) UpstreamID { + id := UpstreamID{ + Type: u.DestinationType, + Name: u.DestinationName, + Datacenter: u.Datacenter, + EnterpriseMeta: structs.NewEnterpriseMetaWithPartition( + u.DestinationPartition, + u.DestinationNamespace, + ), + } + id.normalize() + return id +} + +func NewUpstreamIDFromServiceName(sn structs.ServiceName) UpstreamID { + id := UpstreamID{ + Name: sn.Name, + EnterpriseMeta: sn.EnterpriseMeta, + } + id.normalize() + return id +} + +func NewUpstreamIDFromServiceID(sid structs.ServiceID) UpstreamID { + id := UpstreamID{ + Name: sid.ID, + EnterpriseMeta: sid.EnterpriseMeta, + } + id.normalize() + return id +} + +func (u *UpstreamID) normalize() { + if u.Type == structs.UpstreamDestTypeService { + u.Type = "" + } + + u.EnterpriseMeta.Normalize() +} + +// String encodes the UpstreamID into a string for use in agent cache keys. +// You can decode it back again using UpstreamIDFromString. +func (u UpstreamID) String() string { + return UpstreamIDString(u.Type, u.Datacenter, u.Name, &u.EnterpriseMeta) +} + +func (u UpstreamID) GoString() string { + return u.String() +} + +func UpstreamIDFromString(input string) UpstreamID { + typ, dc, name, entMeta := ParseUpstreamIDString(input) + id := UpstreamID{ + Type: typ, + Datacenter: dc, + Name: name, + EnterpriseMeta: *entMeta, + } + id.normalize() + return id +} + +const upstreamTypePreparedQueryPrefix = structs.UpstreamDestTypePreparedQuery + ":" + +func ParseUpstreamIDString(input string) (typ, dc, name string, meta *structs.EnterpriseMeta) { + if strings.HasPrefix(input, upstreamTypePreparedQueryPrefix) { + typ = structs.UpstreamDestTypePreparedQuery + input = strings.TrimPrefix(input, upstreamTypePreparedQueryPrefix) + } + + idx := strings.LastIndex(input, "?dc=") + if idx != -1 { + dc = input[idx+4:] + input = input[0:idx] + } + + name, meta = parseInnerUpstreamIDString(input) + + return typ, dc, name, meta +} + +// EnvoyID returns a string representation that uniquely identifies the +// upstream in a canonical but human readable way. +// +// This should be used for any situation where we generate identifiers in Envoy +// xDS structures for this upstream. +// +// This will ensure that generated identifiers for the same thing in OSS and +// Enterprise render the same and omit default namespaces and partitions. +func (u UpstreamID) EnvoyID() string { + name := u.enterpriseIdentifierPrefix() + u.Name + typ := u.Type + + if u.Datacenter != "" { + name += "?dc=" + u.Datacenter + } + + // Service is default type so never prefix it. This is more readable and long + // term it is the only type that matters so we can drop the prefix and have + // nicer naming in metrics etc. + if typ == "" || typ == structs.UpstreamDestTypeService { + return name + } + return typ + ":" + name +} + +func UpstreamsToMap(us structs.Upstreams) map[UpstreamID]*structs.Upstream { + upstreamMap := make(map[UpstreamID]*structs.Upstream) + + for i := range us { + u := us[i] + upstreamMap[NewUpstreamID(&u)] = &u + } + return upstreamMap +} diff --git a/agent/proxycfg/naming_oss.go b/agent/proxycfg/naming_oss.go new file mode 100644 index 000000000..bbcf1d0e8 --- /dev/null +++ b/agent/proxycfg/naming_oss.go @@ -0,0 +1,30 @@ +//go:build !consulent +// +build !consulent + +package proxycfg + +import ( + "github.com/hashicorp/consul/agent/structs" +) + +func UpstreamIDString(typ, dc, name string, _ *structs.EnterpriseMeta) string { + ret := name + + if dc != "" { + ret += "?dc=" + dc + } + + if typ == "" || typ == structs.UpstreamDestTypeService { + return ret + } + + return typ + ":" + ret +} + +func parseInnerUpstreamIDString(input string) (string, *structs.EnterpriseMeta) { + return input, structs.DefaultEnterpriseMetaInDefaultPartition() +} + +func (u UpstreamID) enterpriseIdentifierPrefix() string { + return "" +} diff --git a/agent/proxycfg/naming_test.go b/agent/proxycfg/naming_test.go new file mode 100644 index 000000000..d74ae7e05 --- /dev/null +++ b/agent/proxycfg/naming_test.go @@ -0,0 +1,195 @@ +package proxycfg + +import ( + "testing" + + "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/agent/structs" +) + +func TestUpstreamIDFromString(t *testing.T) { + type testcase struct { + id string + expect UpstreamID + } + run := func(t *testing.T, tc testcase) { + tc.expect.EnterpriseMeta.Normalize() + + got := UpstreamIDFromString(tc.id) + require.Equal(t, tc.expect, got) + } + + prefix := "" + if structs.DefaultEnterpriseMetaInDefaultPartition().PartitionOrEmpty() != "" { + prefix = "default/default/" + } + + cases := map[string]testcase{ + "prepared query": { + "prepared_query:" + prefix + "foo", + UpstreamID{ + Type: structs.UpstreamDestTypePreparedQuery, + Name: "foo", + }, + }, + "prepared query dc": { + "prepared_query:" + prefix + "foo?dc=dc2", + UpstreamID{ + Type: structs.UpstreamDestTypePreparedQuery, + Name: "foo", + Datacenter: "dc2", + }, + }, + "normal": { + prefix + "foo", + UpstreamID{ + Name: "foo", + }, + }, + "normal dc": { + prefix + "foo?dc=dc2", + UpstreamID{ + Name: "foo", + Datacenter: "dc2", + }, + }, + } + + for name, tc := range cases { + t.Run(name, func(t *testing.T) { + run(t, tc) + }) + } +} + +func TestUpstreamID_String(t *testing.T) { + type testcase struct { + u UpstreamID + expect string + } + run := func(t *testing.T, tc testcase) { + got := tc.u.String() + require.Equal(t, tc.expect, got) + } + + prefix := "" + if structs.DefaultEnterpriseMetaInDefaultPartition().PartitionOrEmpty() != "" { + prefix = "default/default/" + } + + cases := map[string]testcase{ + "prepared query": { + UpstreamID{ + Type: structs.UpstreamDestTypePreparedQuery, + Name: "foo", + }, + "prepared_query:" + prefix + "foo", + }, + "prepared query dc": { + UpstreamID{ + Type: structs.UpstreamDestTypePreparedQuery, + Name: "foo", + Datacenter: "dc2", + }, + "prepared_query:" + prefix + "foo?dc=dc2", + }, + "normal implicit": { + UpstreamID{ + Name: "foo", + }, + prefix + "foo", + }, + "normal implicit dc": { + UpstreamID{ + Name: "foo", + Datacenter: "dc2", + }, + prefix + "foo?dc=dc2", + }, + "normal explicit": { + UpstreamID{ + Type: structs.UpstreamDestTypeService, + Name: "foo", + }, + prefix + "foo", + }, + "normal explicit dc": { + UpstreamID{ + Type: structs.UpstreamDestTypeService, + Name: "foo", + Datacenter: "dc2", + }, + prefix + "foo?dc=dc2", + }, + } + + for name, tc := range cases { + t.Run(name, func(t *testing.T) { + run(t, tc) + }) + } +} + +func TestUpstreamID_EnvoyID(t *testing.T) { + type testcase struct { + u UpstreamID + expect string + } + run := func(t *testing.T, tc testcase) { + got := tc.u.EnvoyID() + require.Equal(t, tc.expect, got) + } + + cases := map[string]testcase{ + "prepared query": { + UpstreamID{ + Type: structs.UpstreamDestTypePreparedQuery, + Name: "foo", + }, + "prepared_query:foo", + }, + "prepared query dc": { + UpstreamID{ + Type: structs.UpstreamDestTypePreparedQuery, + Name: "foo", + Datacenter: "dc2", + }, + "prepared_query:foo?dc=dc2", + }, + "normal implicit": { + UpstreamID{ + Name: "foo", + }, + "foo", + }, + "normal implicit dc": { + UpstreamID{ + Name: "foo", + Datacenter: "dc2", + }, + "foo?dc=dc2", + }, + "normal explicit": { + UpstreamID{ + Type: structs.UpstreamDestTypeService, + Name: "foo", + }, + "foo", + }, + "normal explicit dc": { + UpstreamID{ + Type: structs.UpstreamDestTypeService, + Name: "foo", + Datacenter: "dc2", + }, + "foo?dc=dc2", + }, + } + + for name, tc := range cases { + t.Run(name, func(t *testing.T) { + run(t, tc) + }) + } +} diff --git a/agent/proxycfg/snapshot.go b/agent/proxycfg/snapshot.go index 219c45694..35bea81f5 100644 --- a/agent/proxycfg/snapshot.go +++ b/agent/proxycfg/snapshot.go @@ -18,47 +18,47 @@ import ( type ConfigSnapshotUpstreams struct { Leaf *structs.IssuedCert - // DiscoveryChain is a map of upstream.Identifier() -> - // CompiledDiscoveryChain's, and is used to determine what services could be - // targeted by this upstream. We then instantiate watches for those targets. - DiscoveryChain map[string]*structs.CompiledDiscoveryChain + // DiscoveryChain is a map of UpstreamID -> CompiledDiscoveryChain's, and + // is used to determine what services could be targeted by this upstream. + // We then instantiate watches for those targets. + DiscoveryChain map[UpstreamID]*structs.CompiledDiscoveryChain - // WatchedDiscoveryChains is a map of upstream.Identifier() -> CancelFunc's + // WatchedDiscoveryChains is a map of UpstreamID -> CancelFunc's // in order to cancel any watches when the proxy's configuration is // changed. Ingress gateways and transparent proxies need this because // discovery chain watches are added and removed through the lifecycle // of a single proxycfg state instance. - WatchedDiscoveryChains map[string]context.CancelFunc + WatchedDiscoveryChains map[UpstreamID]context.CancelFunc - // WatchedUpstreams is a map of upstream.Identifier() -> (map of TargetID -> + // WatchedUpstreams is a map of UpstreamID -> (map of TargetID -> // CancelFunc's) in order to cancel any watches when the configuration is // changed. - WatchedUpstreams map[string]map[string]context.CancelFunc + WatchedUpstreams map[UpstreamID]map[string]context.CancelFunc - // WatchedUpstreamEndpoints is a map of upstream.Identifier() -> (map of + // WatchedUpstreamEndpoints is a map of UpstreamID -> (map of // TargetID -> CheckServiceNodes) and is used to determine the backing // endpoints of an upstream. - WatchedUpstreamEndpoints map[string]map[string]structs.CheckServiceNodes + WatchedUpstreamEndpoints map[UpstreamID]map[string]structs.CheckServiceNodes - // WatchedGateways is a map of upstream.Identifier() -> (map of - // GatewayKey.String() -> CancelFunc) in order to cancel watches for mesh gateways - WatchedGateways map[string]map[string]context.CancelFunc + // WatchedGateways is a map of UpstreamID -> (map of GatewayKey.String() -> + // CancelFunc) in order to cancel watches for mesh gateways + WatchedGateways map[UpstreamID]map[string]context.CancelFunc - // WatchedGatewayEndpoints is a map of upstream.Identifier() -> (map of - // GatewayKey.String() -> CheckServiceNodes) and is used to determine the backing - // endpoints of a mesh gateway. - WatchedGatewayEndpoints map[string]map[string]structs.CheckServiceNodes + // WatchedGatewayEndpoints is a map of UpstreamID -> (map of + // GatewayKey.String() -> CheckServiceNodes) and is used to determine the + // backing endpoints of a mesh gateway. + WatchedGatewayEndpoints map[UpstreamID]map[string]structs.CheckServiceNodes // UpstreamConfig is a map to an upstream's configuration. - UpstreamConfig map[string]*structs.Upstream + UpstreamConfig map[UpstreamID]*structs.Upstream - // PassthroughEndpoints is a map of: ServiceName -> ServicePassthroughAddrs. - PassthroughUpstreams map[string]ServicePassthroughAddrs + // PassthroughEndpoints is a map of: UpstreamID -> ServicePassthroughAddrs. + PassthroughUpstreams map[UpstreamID]ServicePassthroughAddrs // IntentionUpstreams is a set of upstreams inferred from intentions. - // The keys are created with structs.ServiceName.String(). + // // This list only applies to proxies registered in 'transparent' mode. - IntentionUpstreams map[string]struct{} + IntentionUpstreams map[UpstreamID]struct{} } type GatewayKey struct { @@ -107,7 +107,7 @@ type configSnapshotConnectProxy struct { ConfigSnapshotUpstreams WatchedServiceChecks map[structs.ServiceID][]structs.CheckType // TODO: missing garbage collection - PreparedQueryEndpoints map[string]structs.CheckServiceNodes // DEPRECATED:see:WatchedUpstreamEndpoints + PreparedQueryEndpoints map[UpstreamID]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 @@ -371,8 +371,8 @@ type configSnapshotIngressGateway struct { // the GatewayServices RPC to retrieve them. Upstreams map[IngressListenerKey]structs.Upstreams - // UpstreamsSet is the unique set of upstream.Identifier() the gateway routes to. - UpstreamsSet map[string]struct{} + // UpstreamsSet is the unique set of UpstreamID the gateway routes to. + UpstreamsSet map[UpstreamID]struct{} // Listeners is the original listener config from the ingress-gateway config // entry to save us trying to pass fields through Upstreams diff --git a/agent/proxycfg/state.go b/agent/proxycfg/state.go index 586bc3938..f31c62b4e 100644 --- a/agent/proxycfg/state.go +++ b/agent/proxycfg/state.go @@ -437,7 +437,7 @@ type gatewayWatchOpts struct { source structs.QuerySource token string key GatewayKey - upstreamID string + upstreamID UpstreamID } func watchMeshGateway(ctx context.Context, opts gatewayWatchOpts) error { @@ -448,5 +448,5 @@ func watchMeshGateway(ctx context.Context, opts gatewayWatchOpts) error { UseServiceKind: true, Source: opts.source, EnterpriseMeta: *structs.DefaultEnterpriseMetaInPartition(opts.key.Partition), - }, fmt.Sprintf("mesh-gateway:%s:%s", opts.key.String(), opts.upstreamID), opts.notifyCh) + }, fmt.Sprintf("mesh-gateway:%s:%s", opts.key.String(), opts.upstreamID.String()), opts.notifyCh) } diff --git a/agent/proxycfg/state_test.go b/agent/proxycfg/state_test.go index 77d8fee39..e43fc6481 100644 --- a/agent/proxycfg/state_test.go +++ b/agent/proxycfg/state_test.go @@ -381,8 +381,9 @@ func ingressConfigWatchEvent(gwTLS bool, mixedTLS bool) cache.UpdateEvent { } } -func upstreamIDForDC2(name string) string { - return fmt.Sprintf("%s?dc=dc2", name) +func upstreamIDForDC2(uid UpstreamID) UpstreamID { + uid.Datacenter = "dc2" + return uid } // This test is meant to exercise the various parts of the cache watching done by the state as @@ -410,6 +411,10 @@ func TestState_WatchesAndUpdates(t *testing.T) { db = structs.NewServiceName("db", nil) billing = structs.NewServiceName("billing", nil) api = structs.NewServiceName("api", nil) + + apiUID = NewUpstreamIDFromServiceName(api) + dbUID = NewUpstreamIDFromServiceName(db) + pqUID = UpstreamIDFromString("prepared_query:query") ) rootWatchEvent := func() cache.UpdateEvent { @@ -498,11 +503,11 @@ func TestState_WatchesAndUpdates(t *testing.T) { stage0 := verificationStage{ requiredWatches: map[string]verifyWatchRequest{ - rootsWatchID: genVerifyRootsWatch("dc1"), - leafWatchID: genVerifyLeafWatch("web", "dc1"), - intentionsWatchID: genVerifyIntentionWatch("web", "dc1"), - "upstream:prepared_query:query": genVerifyPreparedQueryWatch("query", "dc1"), - fmt.Sprintf("discovery-chain:%s", api.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + rootsWatchID: genVerifyRootsWatch("dc1"), + leafWatchID: genVerifyLeafWatch("web", "dc1"), + intentionsWatchID: genVerifyIntentionWatch("web", "dc1"), + "upstream:" + pqUID.String(): genVerifyPreparedQueryWatch("query", "dc1"), + fmt.Sprintf("discovery-chain:%s", apiUID.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "api", EvaluateInDatacenter: "dc1", EvaluateInNamespace: "default", @@ -512,7 +517,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Mode: meshGatewayProxyConfigValue, }, }), - fmt.Sprintf("discovery-chain:%s-failover-remote?dc=dc2", api.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + fmt.Sprintf("discovery-chain:%s-failover-remote?dc=dc2", apiUID.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "api-failover-remote", EvaluateInDatacenter: "dc2", EvaluateInNamespace: "default", @@ -522,7 +527,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Mode: structs.MeshGatewayModeRemote, }, }), - fmt.Sprintf("discovery-chain:%s-failover-local?dc=dc2", api.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + fmt.Sprintf("discovery-chain:%s-failover-local?dc=dc2", apiUID.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "api-failover-local", EvaluateInDatacenter: "dc2", EvaluateInNamespace: "default", @@ -532,7 +537,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Mode: structs.MeshGatewayModeLocal, }, }), - fmt.Sprintf("discovery-chain:%s-failover-direct?dc=dc2", api.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + fmt.Sprintf("discovery-chain:%s-failover-direct?dc=dc2", apiUID.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "api-failover-direct", EvaluateInDatacenter: "dc2", EvaluateInNamespace: "default", @@ -542,7 +547,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Mode: structs.MeshGatewayModeNone, }, }), - fmt.Sprintf("discovery-chain:%s-dc2", api.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + fmt.Sprintf("discovery-chain:%s-dc2", apiUID.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "api-dc2", EvaluateInDatacenter: "dc1", EvaluateInNamespace: "default", @@ -566,7 +571,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Err: nil, }, { - CorrelationID: fmt.Sprintf("discovery-chain:%s", api.String()), + CorrelationID: fmt.Sprintf("discovery-chain:%s", apiUID.String()), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "api", "default", "default", "dc1", "trustdomain.consul", func(req *discoverychain.CompileRequest) { @@ -576,7 +581,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Err: nil, }, { - CorrelationID: fmt.Sprintf("discovery-chain:%s-failover-remote?dc=dc2", api.String()), + CorrelationID: fmt.Sprintf("discovery-chain:%s-failover-remote?dc=dc2", apiUID.String()), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "api-failover-remote", "default", "default", "dc2", "trustdomain.consul", func(req *discoverychain.CompileRequest) { @@ -586,7 +591,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Err: nil, }, { - CorrelationID: fmt.Sprintf("discovery-chain:%s-failover-local?dc=dc2", api.String()), + CorrelationID: fmt.Sprintf("discovery-chain:%s-failover-local?dc=dc2", apiUID.String()), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "api-failover-local", "default", "default", "dc2", "trustdomain.consul", func(req *discoverychain.CompileRequest) { @@ -596,7 +601,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Err: nil, }, { - CorrelationID: fmt.Sprintf("discovery-chain:%s-failover-direct?dc=dc2", api.String()), + CorrelationID: fmt.Sprintf("discovery-chain:%s-failover-direct?dc=dc2", apiUID.String()), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "api-failover-direct", "default", "default", "dc2", "trustdomain.consul", func(req *discoverychain.CompileRequest) { @@ -606,7 +611,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Err: nil, }, { - CorrelationID: fmt.Sprintf("discovery-chain:%s-dc2", api.String()), + CorrelationID: fmt.Sprintf("discovery-chain:%s-dc2", apiUID.String()), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "api-dc2", "default", "default", "dc1", "trustdomain.consul", func(req *discoverychain.CompileRequest) { @@ -645,12 +650,12 @@ func TestState_WatchesAndUpdates(t *testing.T) { stage1 := verificationStage{ requiredWatches: map[string]verifyWatchRequest{ - fmt.Sprintf("upstream-target:api.default.default.dc1:%s", api.String()): genVerifyServiceWatch("api", "", "dc1", true), - fmt.Sprintf("upstream-target:api-failover-remote.default.default.dc2:%s-failover-remote?dc=dc2", api.String()): genVerifyServiceWatch("api-failover-remote", "", "dc2", true), - fmt.Sprintf("upstream-target:api-failover-local.default.default.dc2:%s-failover-local?dc=dc2", api.String()): genVerifyServiceWatch("api-failover-local", "", "dc2", true), - fmt.Sprintf("upstream-target:api-failover-direct.default.default.dc2:%s-failover-direct?dc=dc2", api.String()): genVerifyServiceWatch("api-failover-direct", "", "dc2", true), - fmt.Sprintf("mesh-gateway:dc2:%s-failover-remote?dc=dc2", api.String()): genVerifyGatewayWatch("dc2"), - fmt.Sprintf("mesh-gateway:dc1:%s-failover-local?dc=dc2", api.String()): genVerifyGatewayWatch("dc1"), + fmt.Sprintf("upstream-target:api.default.default.dc1:%s", apiUID.String()): genVerifyServiceWatch("api", "", "dc1", true), + fmt.Sprintf("upstream-target:api-failover-remote.default.default.dc2:%s-failover-remote?dc=dc2", apiUID.String()): genVerifyServiceWatch("api-failover-remote", "", "dc2", true), + fmt.Sprintf("upstream-target:api-failover-local.default.default.dc2:%s-failover-local?dc=dc2", apiUID.String()): genVerifyServiceWatch("api-failover-local", "", "dc2", true), + fmt.Sprintf("upstream-target:api-failover-direct.default.default.dc2:%s-failover-direct?dc=dc2", apiUID.String()): genVerifyServiceWatch("api-failover-direct", "", "dc2", true), + fmt.Sprintf("mesh-gateway:dc2:%s-failover-remote?dc=dc2", apiUID.String()): genVerifyGatewayWatch("dc2"), + fmt.Sprintf("mesh-gateway:dc1:%s-failover-local?dc=dc2", apiUID.String()): genVerifyGatewayWatch("dc1"), }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.True(t, snap.Valid()) @@ -673,7 +678,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { } if meshGatewayProxyConfigValue == structs.MeshGatewayModeLocal { - stage1.requiredWatches[fmt.Sprintf("mesh-gateway:dc1:%s-dc2", api.String())] = genVerifyGatewayWatch("dc1") + stage1.requiredWatches[fmt.Sprintf("mesh-gateway:dc1:%s-dc2", apiUID.String())] = genVerifyGatewayWatch("dc1") } return testCase{ @@ -999,7 +1004,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }) require.Len(t, snap.IngressGateway.WatchedDiscoveryChains, 1) - require.Contains(t, snap.IngressGateway.WatchedDiscoveryChains, api.String()) + require.Contains(t, snap.IngressGateway.WatchedDiscoveryChains, apiUID) }, }, { @@ -1020,7 +1025,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, { requiredWatches: map[string]verifyWatchRequest{ - "discovery-chain:" + api.String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + "discovery-chain:" + apiUID.String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "api", EvaluateInDatacenter: "dc1", EvaluateInNamespace: "default", @@ -1030,7 +1035,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, events: []cache.UpdateEvent{ { - CorrelationID: "discovery-chain:" + api.String(), + CorrelationID: "discovery-chain:" + apiUID.String(), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "api", "default", "default", "dc1", "trustdomain.consul", nil), }, @@ -1039,16 +1044,16 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.Len(t, snap.IngressGateway.WatchedUpstreams, 1) - require.Len(t, snap.IngressGateway.WatchedUpstreams[api.String()], 1) + require.Len(t, snap.IngressGateway.WatchedUpstreams[apiUID], 1) }, }, { requiredWatches: map[string]verifyWatchRequest{ - "upstream-target:api.default.default.dc1:" + api.String(): genVerifyServiceWatch("api", "", "dc1", true), + "upstream-target:api.default.default.dc1:" + apiUID.String(): genVerifyServiceWatch("api", "", "dc1", true), }, events: []cache.UpdateEvent{ { - CorrelationID: "upstream-target:api.default.default.dc1:" + api.String(), + CorrelationID: "upstream-target:api.default.default.dc1:" + apiUID.String(), Result: &structs.IndexedCheckServiceNodes{ Nodes: structs.CheckServiceNodes{ { @@ -1068,10 +1073,10 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.Len(t, snap.IngressGateway.WatchedUpstreamEndpoints, 1) - require.Contains(t, snap.IngressGateway.WatchedUpstreamEndpoints, api.String()) - require.Len(t, snap.IngressGateway.WatchedUpstreamEndpoints[api.String()], 1) - require.Contains(t, snap.IngressGateway.WatchedUpstreamEndpoints[api.String()], "api.default.default.dc1") - require.Equal(t, snap.IngressGateway.WatchedUpstreamEndpoints[api.String()]["api.default.default.dc1"], + require.Contains(t, snap.IngressGateway.WatchedUpstreamEndpoints, apiUID) + require.Len(t, snap.IngressGateway.WatchedUpstreamEndpoints[apiUID], 1) + require.Contains(t, snap.IngressGateway.WatchedUpstreamEndpoints[apiUID], "api.default.default.dc1") + require.Equal(t, snap.IngressGateway.WatchedUpstreamEndpoints[apiUID]["api.default.default.dc1"], structs.CheckServiceNodes{ { Node: &structs.Node{ @@ -1135,7 +1140,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Len(t, snap.IngressGateway.Hosts, 1) require.Len(t, snap.IngressGateway.Upstreams, 1) require.Len(t, snap.IngressGateway.WatchedDiscoveryChains, 1) - require.Contains(t, snap.IngressGateway.WatchedDiscoveryChains, api.String()) + require.Contains(t, snap.IngressGateway.WatchedDiscoveryChains, apiUID) }, }, { @@ -1220,7 +1225,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Len(t, snap.IngressGateway.Hosts, 1) require.Len(t, snap.IngressGateway.Upstreams, 1) require.Len(t, snap.IngressGateway.WatchedDiscoveryChains, 1) - require.Contains(t, snap.IngressGateway.WatchedDiscoveryChains, api.String()) + require.Contains(t, snap.IngressGateway.WatchedDiscoveryChains, apiUID) }, }, { @@ -1682,8 +1687,8 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.True(t, snap.TerminatingGateway.IsEmpty()) require.False(t, snap.ConnectProxy.IsEmpty()) - expectUpstreams := map[string]*structs.Upstream{ - db.String(): { + expectUpstreams := map[UpstreamID]*structs.Upstream{ + dbUID: { DestinationName: "db", DestinationNamespace: structs.IntentionDefaultNamespace, DestinationPartition: structs.IntentionDefaultNamespace, @@ -1771,7 +1776,8 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Len(t, snap.ConnectProxy.UpstreamConfig, 1) wc := structs.NewServiceName(structs.WildcardSpecifier, structs.WildcardEnterpriseMetaInDefaultPartition()) - require.Contains(t, snap.ConnectProxy.UpstreamConfig, wc.String()) + wcUID := NewUpstreamIDFromServiceName(wc) + require.Contains(t, snap.ConnectProxy.UpstreamConfig, wcUID) }, }, // Valid snapshot after roots, leaf, and intentions @@ -1833,16 +1839,16 @@ func TestState_WatchesAndUpdates(t *testing.T) { verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.True(t, snap.Valid(), "should still be valid") - require.Equal(t, map[string]struct{}{db.String(): {}}, snap.ConnectProxy.IntentionUpstreams) + require.Equal(t, map[UpstreamID]struct{}{dbUID: {}}, snap.ConnectProxy.IntentionUpstreams) // Should start watch for db's chain - require.Contains(t, snap.ConnectProxy.WatchedDiscoveryChains, db.String()) + require.Contains(t, snap.ConnectProxy.WatchedDiscoveryChains, dbUID) // Should not have results yet require.Empty(t, snap.ConnectProxy.DiscoveryChain) require.Len(t, snap.ConnectProxy.UpstreamConfig, 2) - cfg, ok := snap.ConnectProxy.UpstreamConfig[db.String()] + cfg, ok := snap.ConnectProxy.UpstreamConfig[dbUID] require.True(t, ok) // Upstream config should have been inherited from defaults under wildcard key @@ -1852,7 +1858,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { // Discovery chain updates should be stored { requiredWatches: map[string]verifyWatchRequest{ - "discovery-chain:" + db.String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + "discovery-chain:" + dbUID.String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "db", EvaluateInDatacenter: "dc1", EvaluateInNamespace: "default", @@ -1864,7 +1870,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, events: []cache.UpdateEvent{ { - CorrelationID: "discovery-chain:" + db.String(), + CorrelationID: "discovery-chain:" + dbUID.String(), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "db", "default", "default", "dc1", "trustdomain.consul", nil), }, @@ -1873,16 +1879,16 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.Len(t, snap.ConnectProxy.WatchedUpstreams, 1) - require.Len(t, snap.ConnectProxy.WatchedUpstreams[db.String()], 1) + require.Len(t, snap.ConnectProxy.WatchedUpstreams[dbUID], 1) }, }, { requiredWatches: map[string]verifyWatchRequest{ - "upstream-target:db.default.default.dc1:" + db.String(): genVerifyServiceWatch("db", "", "dc1", true), + "upstream-target:db.default.default.dc1:" + dbUID.String(): genVerifyServiceWatch("db", "", "dc1", true), }, events: []cache.UpdateEvent{ { - CorrelationID: "upstream-target:db.default.default.dc1:" + db.String(), + CorrelationID: "upstream-target:db.default.default.dc1:" + dbUID.String(), Result: &structs.IndexedCheckServiceNodes{ Nodes: structs.CheckServiceNodes{ { @@ -1931,10 +1937,10 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.Len(t, snap.ConnectProxy.WatchedUpstreamEndpoints, 1) - require.Contains(t, snap.ConnectProxy.WatchedUpstreamEndpoints, db.String()) - require.Len(t, snap.ConnectProxy.WatchedUpstreamEndpoints[db.String()], 1) - require.Contains(t, snap.ConnectProxy.WatchedUpstreamEndpoints[db.String()], "db.default.default.dc1") - require.Equal(t, snap.ConnectProxy.WatchedUpstreamEndpoints[db.String()]["db.default.default.dc1"], + require.Contains(t, snap.ConnectProxy.WatchedUpstreamEndpoints, dbUID) + require.Len(t, snap.ConnectProxy.WatchedUpstreamEndpoints[dbUID], 1) + require.Contains(t, snap.ConnectProxy.WatchedUpstreamEndpoints[dbUID], "db.default.default.dc1") + require.Equal(t, snap.ConnectProxy.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc1"], structs.CheckServiceNodes{ { Node: &structs.Node{ @@ -1980,8 +1986,8 @@ func TestState_WatchesAndUpdates(t *testing.T) { // The LAN service address is used below because transparent proxying // does not support querying service nodes in other DCs, and the WAN address // should not be used in DC-local calls. - require.Equal(t, snap.ConnectProxy.PassthroughUpstreams, map[string]ServicePassthroughAddrs{ - db.String(): { + require.Equal(t, snap.ConnectProxy.PassthroughUpstreams, map[UpstreamID]ServicePassthroughAddrs{ + dbUID: { SNI: connect.ServiceSNI("db", "", structs.IntentionDefaultNamespace, "", snap.Datacenter, snap.Roots.TrustDomain), SpiffeID: connect.SpiffeIDService{ Host: snap.Roots.TrustDomain, @@ -2001,7 +2007,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { // Discovery chain updates should be stored { requiredWatches: map[string]verifyWatchRequest{ - "discovery-chain:" + db.String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + "discovery-chain:" + dbUID.String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "db", EvaluateInDatacenter: "dc1", EvaluateInNamespace: "default", @@ -2013,7 +2019,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, events: []cache.UpdateEvent{ { - CorrelationID: "discovery-chain:" + db.String(), + CorrelationID: "discovery-chain:" + dbUID.String(), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "db", "default", "default", "dc1", "trustdomain.consul", nil, &structs.ServiceResolverConfigEntry{ Kind: structs.ServiceResolver, @@ -2028,12 +2034,12 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.Len(t, snap.ConnectProxy.WatchedUpstreams, 1) - require.Len(t, snap.ConnectProxy.WatchedUpstreams[db.String()], 2) + require.Len(t, snap.ConnectProxy.WatchedUpstreams[dbUID], 2) // In transparent mode we watch the upstream's endpoints even if the upstream is not a target of its chain. // This will happen in cases like redirects. - require.Contains(t, snap.ConnectProxy.WatchedUpstreams[db.String()], "db.default.default.dc1") - require.Contains(t, snap.ConnectProxy.WatchedUpstreams[db.String()], "mysql.default.default.dc1") + require.Contains(t, snap.ConnectProxy.WatchedUpstreams[dbUID], "db.default.default.dc1") + require.Contains(t, snap.ConnectProxy.WatchedUpstreams[dbUID], "mysql.default.default.dc1") }, }, // Empty list of upstreams should clean everything up @@ -2110,7 +2116,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { leafWatchID: genVerifyLeafWatch("api", "dc1"), intentionsWatchID: genVerifyIntentionWatch("api", "dc1"), meshConfigEntryID: genVerifyMeshConfigWatch("dc1"), - "discovery-chain:" + upstreamIDForDC2(db.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + "discovery-chain:" + upstreamIDForDC2(dbUID).String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "db", EvaluateInDatacenter: "dc2", EvaluateInNamespace: "default", @@ -2129,8 +2135,9 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Len(t, snap.ConnectProxy.UpstreamConfig, 2) wc := structs.NewServiceName(structs.WildcardSpecifier, structs.WildcardEnterpriseMetaInDefaultPartition()) - require.Contains(t, snap.ConnectProxy.UpstreamConfig, wc.String()) - require.Contains(t, snap.ConnectProxy.UpstreamConfig, upstreamIDForDC2(db.String())) + wcUID := NewUpstreamIDFromServiceName(wc) + require.Contains(t, snap.ConnectProxy.UpstreamConfig, wcUID) + require.Contains(t, snap.ConnectProxy.UpstreamConfig, upstreamIDForDC2(dbUID)) }, }, // Valid snapshot after roots, leaf, and intentions @@ -2172,7 +2179,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { // Discovery chain updates should be stored { requiredWatches: map[string]verifyWatchRequest{ - "discovery-chain:" + upstreamIDForDC2(db.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + "discovery-chain:" + upstreamIDForDC2(dbUID).String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "db", EvaluateInDatacenter: "dc2", EvaluateInNamespace: "default", @@ -2183,7 +2190,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, events: []cache.UpdateEvent{ { - CorrelationID: "discovery-chain:" + upstreamIDForDC2(db.String()), + CorrelationID: "discovery-chain:" + upstreamIDForDC2(dbUID).String(), Result: &structs.DiscoveryChainResponse{ Chain: discoverychain.TestCompileConfigEntries(t, "db", "default", "default", "dc2", "trustdomain.consul", func(req *discoverychain.CompileRequest) { @@ -2195,9 +2202,9 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.Len(t, snap.ConnectProxy.WatchedGateways, 1) - require.Len(t, snap.ConnectProxy.WatchedGateways[upstreamIDForDC2(db.String())], 1) + require.Len(t, snap.ConnectProxy.WatchedGateways[upstreamIDForDC2(dbUID)], 1) require.Len(t, snap.ConnectProxy.WatchedUpstreams, 1) - require.Len(t, snap.ConnectProxy.WatchedUpstreams[upstreamIDForDC2(db.String())], 1) + require.Len(t, snap.ConnectProxy.WatchedUpstreams[upstreamIDForDC2(dbUID)], 1) }, }, // Empty list of upstreams should only clean up implicit upstreams. The explicit upstream db should not @@ -2209,7 +2216,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { "api", "", "dc1", false), leafWatchID: genVerifyLeafWatch("api", "dc1"), intentionsWatchID: genVerifyIntentionWatch("api", "dc1"), - "discovery-chain:" + upstreamIDForDC2(db.String()): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ + "discovery-chain:" + upstreamIDForDC2(dbUID).String(): genVerifyDiscoveryChainWatch(&structs.DiscoveryChainRequest{ Name: "db", EvaluateInDatacenter: "dc2", EvaluateInNamespace: "default", @@ -2238,11 +2245,11 @@ func TestState_WatchesAndUpdates(t *testing.T) { // Explicit upstreams should not be deleted when the empty update event happens since that is // for intention upstreams. require.Len(t, snap.ConnectProxy.DiscoveryChain, 1) - require.Contains(t, snap.ConnectProxy.DiscoveryChain, upstreamIDForDC2(db.String())) + require.Contains(t, snap.ConnectProxy.DiscoveryChain, upstreamIDForDC2(dbUID)) require.Len(t, snap.ConnectProxy.WatchedGateways, 1) - require.Len(t, snap.ConnectProxy.WatchedGateways[upstreamIDForDC2(db.String())], 1) + require.Len(t, snap.ConnectProxy.WatchedGateways[upstreamIDForDC2(dbUID)], 1) require.Len(t, snap.ConnectProxy.WatchedUpstreams, 1) - require.Len(t, snap.ConnectProxy.WatchedUpstreams[upstreamIDForDC2(db.String())], 1) + require.Len(t, snap.ConnectProxy.WatchedUpstreams[upstreamIDForDC2(dbUID)], 1) }, }, }, diff --git a/agent/proxycfg/testing.go b/agent/proxycfg/testing.go index 110762376..11730819c 100644 --- a/agent/proxycfg/testing.go +++ b/agent/proxycfg/testing.go @@ -696,18 +696,18 @@ func TestConfigSnapshot(t testing.T) *ConfigSnapshot { ConnectProxy: configSnapshotConnectProxy{ ConfigSnapshotUpstreams: ConfigSnapshotUpstreams{ Leaf: leaf, - UpstreamConfig: upstreams.ToMap(), - DiscoveryChain: map[string]*structs.CompiledDiscoveryChain{ - "db": dbChain, + UpstreamConfig: UpstreamsToMap(upstreams), + DiscoveryChain: map[UpstreamID]*structs.CompiledDiscoveryChain{ + UpstreamIDFromString("db"): dbChain, }, - WatchedUpstreamEndpoints: map[string]map[string]structs.CheckServiceNodes{ - "db": { + WatchedUpstreamEndpoints: map[UpstreamID]map[string]structs.CheckServiceNodes{ + UpstreamIDFromString("db"): { "db.default.default.dc1": TestUpstreamNodes(t, "db"), }, }, }, - PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{ - "prepared_query:geo-cache": TestPreparedQueryNodes(t, "geo-cache"), + PreparedQueryEndpoints: map[UpstreamID]structs.CheckServiceNodes{ + UpstreamIDFromString("prepared_query:geo-cache"): TestPreparedQueryNodes(t, "geo-cache"), }, Intentions: nil, // no intentions defined IntentionsSet: true, @@ -822,8 +822,8 @@ func testConfigSnapshotDiscoveryChain(t testing.T, variation string, additionalE ConfigSnapshotUpstreams: setupTestVariationConfigEntriesAndSnapshot( t, variation, leaf, additionalEntries..., ), - PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{ - "prepared_query:geo-cache": TestPreparedQueryNodes(t, "geo-cache"), + PreparedQueryEndpoints: map[UpstreamID]structs.CheckServiceNodes{ + UpstreamIDFromString("prepared_query:geo-cache"): TestPreparedQueryNodes(t, "geo-cache"), }, Intentions: nil, // no intentions defined IntentionsSet: true, @@ -1402,18 +1402,20 @@ func setupTestVariationConfigEntriesAndSnapshot( dbChain := discoverychain.TestCompileConfigEntries(t, "db", "default", "default", "dc1", connect.TestClusterID+".consul", compileSetup, entries...) + dbUID := UpstreamIDFromString("db") + upstreams := structs.TestUpstreams(t) snap := ConfigSnapshotUpstreams{ Leaf: leaf, - DiscoveryChain: map[string]*structs.CompiledDiscoveryChain{ - "db": dbChain, + DiscoveryChain: map[UpstreamID]*structs.CompiledDiscoveryChain{ + dbUID: dbChain, }, - WatchedUpstreamEndpoints: map[string]map[string]structs.CheckServiceNodes{ - "db": { + WatchedUpstreamEndpoints: map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "db.default.default.dc1": TestUpstreamNodes(t, "db"), }, }, - UpstreamConfig: upstreams.ToMap(), + UpstreamConfig: UpstreamsToMap(upstreams), } switch variation { @@ -1422,61 +1424,61 @@ func setupTestVariationConfigEntriesAndSnapshot( case "simple": case "external-sni": case "failover": - snap.WatchedUpstreamEndpoints["db"]["fail.default.default.dc1"] = + snap.WatchedUpstreamEndpoints[dbUID]["fail.default.default.dc1"] = TestUpstreamNodesAlternate(t) case "failover-through-remote-gateway-triggered": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc1"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc1"] = TestUpstreamNodesInStatus(t, "critical") fallthrough case "failover-through-remote-gateway": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc2"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc2"] = TestUpstreamNodesDC2(t) - snap.WatchedGatewayEndpoints = map[string]map[string]structs.CheckServiceNodes{ - "db": { + snap.WatchedGatewayEndpoints = map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "dc2": TestGatewayNodesDC2(t), }, } case "failover-through-double-remote-gateway-triggered": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc1"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc1"] = TestUpstreamNodesInStatus(t, "critical") - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc2"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc2"] = TestUpstreamNodesInStatusDC2(t, "critical") fallthrough case "failover-through-double-remote-gateway": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc3"] = TestUpstreamNodesDC2(t) - snap.WatchedGatewayEndpoints = map[string]map[string]structs.CheckServiceNodes{ - "db": { + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc3"] = TestUpstreamNodesDC2(t) + snap.WatchedGatewayEndpoints = map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "dc2": TestGatewayNodesDC2(t), "dc3": TestGatewayNodesDC3(t), }, } case "failover-through-local-gateway-triggered": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc1"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc1"] = TestUpstreamNodesInStatus(t, "critical") fallthrough case "failover-through-local-gateway": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc2"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc2"] = TestUpstreamNodesDC2(t) - snap.WatchedGatewayEndpoints = map[string]map[string]structs.CheckServiceNodes{ - "db": { + snap.WatchedGatewayEndpoints = map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "dc1": TestGatewayNodesDC1(t), }, } case "failover-through-double-local-gateway-triggered": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc1"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc1"] = TestUpstreamNodesInStatus(t, "critical") - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc2"] = + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc2"] = TestUpstreamNodesInStatusDC2(t, "critical") fallthrough case "failover-through-double-local-gateway": - snap.WatchedUpstreamEndpoints["db"]["db.default.default.dc3"] = TestUpstreamNodesDC2(t) - snap.WatchedGatewayEndpoints = map[string]map[string]structs.CheckServiceNodes{ - "db": { + snap.WatchedUpstreamEndpoints[dbUID]["db.default.default.dc3"] = TestUpstreamNodesDC2(t) + snap.WatchedGatewayEndpoints = map[UpstreamID]map[string]structs.CheckServiceNodes{ + dbUID: { "dc1": TestGatewayNodesDC1(t), }, } case "splitter-with-resolver-redirect-multidc": - snap.WatchedUpstreamEndpoints["db"] = map[string]structs.CheckServiceNodes{ + snap.WatchedUpstreamEndpoints[dbUID] = map[string]structs.CheckServiceNodes{ "v1.db.default.default.dc1": TestUpstreamNodes(t, "db"), "v2.db.default.default.dc2": TestUpstreamNodesDC2(t), } @@ -1484,10 +1486,10 @@ func setupTestVariationConfigEntriesAndSnapshot( case "grpc-router": case "chain-and-router": case "http-multiple-services": - snap.WatchedUpstreamEndpoints["foo"] = map[string]structs.CheckServiceNodes{ + snap.WatchedUpstreamEndpoints[UpstreamIDFromString("foo")] = map[string]structs.CheckServiceNodes{ "foo.default.default.dc1": TestUpstreamNodes(t, "foo"), } - snap.WatchedUpstreamEndpoints["bar"] = map[string]structs.CheckServiceNodes{ + snap.WatchedUpstreamEndpoints[UpstreamIDFromString("bar")] = map[string]structs.CheckServiceNodes{ "bar.default.default.dc1": TestUpstreamNodesAlternate(t), } case "lb-resolver": @@ -2147,9 +2149,9 @@ func TestConfigSnapshotIngress_MultipleListenersDuplicateService(t testing.T) *C fooChain := discoverychain.TestCompileConfigEntries(t, "foo", "default", "default", "dc1", connect.TestClusterID+".consul", nil) barChain := discoverychain.TestCompileConfigEntries(t, "bar", "default", "default", "dc1", connect.TestClusterID+".consul", nil) - snap.IngressGateway.DiscoveryChain = map[string]*structs.CompiledDiscoveryChain{ - "foo": fooChain, - "bar": barChain, + snap.IngressGateway.DiscoveryChain = map[UpstreamID]*structs.CompiledDiscoveryChain{ + UpstreamIDFromString("foo"): fooChain, + UpstreamIDFromString("bar"): barChain, } return snap diff --git a/agent/proxycfg/upstreams.go b/agent/proxycfg/upstreams.go index a25cb62f6..c923546c7 100644 --- a/agent/proxycfg/upstreams.go +++ b/agent/proxycfg/upstreams.go @@ -42,34 +42,35 @@ func (s *handlerUpstreams) handleUpdateUpstreams(ctx context.Context, u cache.Up if !ok { return fmt.Errorf("invalid type for response: %T", u.Result) } - svc := strings.TrimPrefix(u.CorrelationID, "discovery-chain:") + uidString := strings.TrimPrefix(u.CorrelationID, "discovery-chain:") + uid := UpstreamIDFromString(uidString) switch snap.Kind { case structs.ServiceKindIngressGateway: - if _, ok := snap.IngressGateway.UpstreamsSet[svc]; !ok { + if _, ok := snap.IngressGateway.UpstreamsSet[uid]; !ok { // Discovery chain is not associated with a known explicit or implicit upstream so it is purged/skipped. // The associated watch was likely cancelled. - delete(upstreamsSnapshot.DiscoveryChain, svc) - s.logger.Trace("discovery-chain watch fired for unknown upstream", "upstream", svc) + delete(upstreamsSnapshot.DiscoveryChain, uid) + s.logger.Trace("discovery-chain watch fired for unknown upstream", "upstream", uid) return nil } case structs.ServiceKindConnectProxy: - explicit := snap.ConnectProxy.UpstreamConfig[svc].HasLocalPortOrSocket() - if _, implicit := snap.ConnectProxy.IntentionUpstreams[svc]; !implicit && !explicit { + explicit := snap.ConnectProxy.UpstreamConfig[uid].HasLocalPortOrSocket() + if _, implicit := snap.ConnectProxy.IntentionUpstreams[uid]; !implicit && !explicit { // Discovery chain is not associated with a known explicit or implicit upstream so it is purged/skipped. // The associated watch was likely cancelled. - delete(upstreamsSnapshot.DiscoveryChain, svc) - s.logger.Trace("discovery-chain watch fired for unknown upstream", "upstream", svc) + delete(upstreamsSnapshot.DiscoveryChain, uid) + s.logger.Trace("discovery-chain watch fired for unknown upstream", "upstream", uid) return nil } default: return fmt.Errorf("discovery-chain watch fired for unsupported kind: %s", snap.Kind) } - upstreamsSnapshot.DiscoveryChain[svc] = resp.Chain + upstreamsSnapshot.DiscoveryChain[uid] = resp.Chain - if err := s.resetWatchesFromChain(ctx, svc, resp.Chain, upstreamsSnapshot); err != nil { + if err := s.resetWatchesFromChain(ctx, uid, resp.Chain, upstreamsSnapshot); err != nil { return err } @@ -79,15 +80,17 @@ func (s *handlerUpstreams) handleUpdateUpstreams(ctx context.Context, u cache.Up return fmt.Errorf("invalid type for response: %T", u.Result) } correlationID := strings.TrimPrefix(u.CorrelationID, "upstream-target:") - targetID, svc, ok := removeColonPrefix(correlationID) + targetID, uidString, ok := removeColonPrefix(correlationID) if !ok { return fmt.Errorf("invalid correlation id %q", u.CorrelationID) } - if _, ok := upstreamsSnapshot.WatchedUpstreamEndpoints[svc]; !ok { - upstreamsSnapshot.WatchedUpstreamEndpoints[svc] = make(map[string]structs.CheckServiceNodes) + uid := UpstreamIDFromString(uidString) + + if _, ok := upstreamsSnapshot.WatchedUpstreamEndpoints[uid]; !ok { + upstreamsSnapshot.WatchedUpstreamEndpoints[uid] = make(map[string]structs.CheckServiceNodes) } - upstreamsSnapshot.WatchedUpstreamEndpoints[svc][targetID] = resp.Nodes + upstreamsSnapshot.WatchedUpstreamEndpoints[uid][targetID] = resp.Nodes var passthroughAddrs map[string]ServicePassthroughAddrs @@ -121,8 +124,9 @@ func (s *handlerUpstreams) handleUpdateUpstreams(ctx context.Context, u cache.Up Service: svc.Name, } - if _, ok := upstreamsSnapshot.PassthroughUpstreams[svc.String()]; !ok { - upstreamsSnapshot.PassthroughUpstreams[svc.String()] = ServicePassthroughAddrs{ + svcUID := NewUpstreamIDFromServiceName(svc) + if _, ok := upstreamsSnapshot.PassthroughUpstreams[svcUID]; !ok { + upstreamsSnapshot.PassthroughUpstreams[svcUID] = ServicePassthroughAddrs{ SNI: sni, SpiffeID: spiffeID, @@ -136,7 +140,7 @@ func (s *handlerUpstreams) handleUpdateUpstreams(ctx context.Context, u cache.Up isRemote := !structs.EqualPartitions(svc.PartitionOrDefault(), s.proxyID.PartitionOrDefault()) addr, _ := node.BestAddress(isRemote) - upstreamsSnapshot.PassthroughUpstreams[svc.String()].Addrs[addr] = struct{}{} + upstreamsSnapshot.PassthroughUpstreams[NewUpstreamIDFromServiceName(svc)].Addrs[addr] = struct{}{} } } @@ -146,14 +150,16 @@ func (s *handlerUpstreams) handleUpdateUpstreams(ctx context.Context, u cache.Up return fmt.Errorf("invalid type for response: %T", u.Result) } correlationID := strings.TrimPrefix(u.CorrelationID, "mesh-gateway:") - key, svc, ok := removeColonPrefix(correlationID) + key, uidString, ok := removeColonPrefix(correlationID) if !ok { return fmt.Errorf("invalid correlation id %q", u.CorrelationID) } - if _, ok = upstreamsSnapshot.WatchedGatewayEndpoints[svc]; !ok { - upstreamsSnapshot.WatchedGatewayEndpoints[svc] = make(map[string]structs.CheckServiceNodes) + uid := UpstreamIDFromString(uidString) + + if _, ok = upstreamsSnapshot.WatchedGatewayEndpoints[uid]; !ok { + upstreamsSnapshot.WatchedGatewayEndpoints[uid] = make(map[string]structs.CheckServiceNodes) } - upstreamsSnapshot.WatchedGatewayEndpoints[svc][key] = resp.Nodes + upstreamsSnapshot.WatchedGatewayEndpoints[uid][key] = resp.Nodes default: return fmt.Errorf("unknown correlation ID: %s", u.CorrelationID) @@ -171,27 +177,27 @@ func removeColonPrefix(s string) (string, string, bool) { func (s *handlerUpstreams) resetWatchesFromChain( ctx context.Context, - id string, + uid UpstreamID, chain *structs.CompiledDiscoveryChain, snap *ConfigSnapshotUpstreams, ) error { - s.logger.Trace("resetting watches for discovery chain", "id", id) + s.logger.Trace("resetting watches for discovery chain", "id", uid) if chain == nil { return fmt.Errorf("not possible to arrive here with no discovery chain") } // Initialize relevant sub maps. - if _, ok := snap.WatchedUpstreams[id]; !ok { - snap.WatchedUpstreams[id] = make(map[string]context.CancelFunc) + if _, ok := snap.WatchedUpstreams[uid]; !ok { + snap.WatchedUpstreams[uid] = make(map[string]context.CancelFunc) } - if _, ok := snap.WatchedUpstreamEndpoints[id]; !ok { - snap.WatchedUpstreamEndpoints[id] = make(map[string]structs.CheckServiceNodes) + if _, ok := snap.WatchedUpstreamEndpoints[uid]; !ok { + snap.WatchedUpstreamEndpoints[uid] = make(map[string]structs.CheckServiceNodes) } - if _, ok := snap.WatchedGateways[id]; !ok { - snap.WatchedGateways[id] = make(map[string]context.CancelFunc) + if _, ok := snap.WatchedGateways[uid]; !ok { + snap.WatchedGateways[uid] = make(map[string]context.CancelFunc) } - if _, ok := snap.WatchedGatewayEndpoints[id]; !ok { - snap.WatchedGatewayEndpoints[id] = make(map[string]structs.CheckServiceNodes) + if _, ok := snap.WatchedGatewayEndpoints[uid]; !ok { + snap.WatchedGatewayEndpoints[uid] = make(map[string]structs.CheckServiceNodes) } // We could invalidate this selectively based on a hash of the relevant @@ -199,14 +205,14 @@ func (s *handlerUpstreams) resetWatchesFromChain( // upstream when the chain changes in any way. // // TODO(rb): content hash based add/remove - for targetID, cancelFn := range snap.WatchedUpstreams[id] { + for targetID, cancelFn := range snap.WatchedUpstreams[uid] { s.logger.Trace("stopping watch of target", - "upstream", id, + "upstream", uid, "chain", chain.ServiceName, "target", targetID, ) - delete(snap.WatchedUpstreams[id], targetID) - delete(snap.WatchedUpstreamEndpoints[id], targetID) + delete(snap.WatchedUpstreams[uid], targetID) + delete(snap.WatchedUpstreamEndpoints[uid], targetID) cancelFn() } @@ -222,7 +228,7 @@ func (s *handlerUpstreams) resetWatchesFromChain( } opts := targetWatchOpts{ - upstreamID: id, + upstreamID: uid, chainID: target.ID, service: target.Service, filter: target.Subset.Filter, @@ -231,7 +237,7 @@ func (s *handlerUpstreams) resetWatchesFromChain( } err := s.watchUpstreamTarget(ctx, snap, opts) if err != nil { - return fmt.Errorf("failed to watch target %q for upstream %q", target.ID, id) + return fmt.Errorf("failed to watch target %q for upstream %q", target.ID, uid) } // We'll get endpoints from the gateway query, but the health still has @@ -267,7 +273,7 @@ func (s *handlerUpstreams) resetWatchesFromChain( chainEntMeta := structs.NewEnterpriseMetaWithPartition(chain.Partition, chain.Namespace) opts := targetWatchOpts{ - upstreamID: id, + upstreamID: uid, chainID: chainID, service: chain.ServiceName, filter: "", @@ -276,18 +282,18 @@ func (s *handlerUpstreams) resetWatchesFromChain( } err := s.watchUpstreamTarget(ctx, snap, opts) if err != nil { - return fmt.Errorf("failed to watch target %q for upstream %q", chainID, id) + return fmt.Errorf("failed to watch target %q for upstream %q", chainID, uid) } } for key := range needGateways { - if _, ok := snap.WatchedGateways[id][key]; ok { + if _, ok := snap.WatchedGateways[uid][key]; ok { continue } gwKey := gatewayKeyFromString(key) s.logger.Trace("initializing watch of mesh gateway", - "upstream", id, + "upstream", uid, "chain", chain.ServiceName, "datacenter", gwKey.Datacenter, "partition", gwKey.Partition, @@ -300,7 +306,7 @@ func (s *handlerUpstreams) resetWatchesFromChain( source: *s.source, token: s.token, key: gwKey, - upstreamID: id, + upstreamID: uid, } err := watchMeshGateway(ctx, opts) if err != nil { @@ -308,23 +314,23 @@ func (s *handlerUpstreams) resetWatchesFromChain( return err } - snap.WatchedGateways[id][key] = cancel + snap.WatchedGateways[uid][key] = cancel } - for key, cancelFn := range snap.WatchedGateways[id] { + for key, cancelFn := range snap.WatchedGateways[uid] { if _, ok := needGateways[key]; ok { continue } gwKey := gatewayKeyFromString(key) s.logger.Trace("stopping watch of mesh gateway", - "upstream", id, + "upstream", uid, "chain", chain.ServiceName, "datacenter", gwKey.Datacenter, "partition", gwKey.Partition, ) - delete(snap.WatchedGateways[id], key) - delete(snap.WatchedGatewayEndpoints[id], key) + delete(snap.WatchedGateways[uid], key) + delete(snap.WatchedGatewayEndpoints[uid], key) cancelFn() } @@ -332,7 +338,7 @@ func (s *handlerUpstreams) resetWatchesFromChain( } type targetWatchOpts struct { - upstreamID string + upstreamID UpstreamID chainID string service string filter string @@ -350,7 +356,7 @@ func (s *handlerUpstreams) watchUpstreamTarget(ctx context.Context, snap *Config var finalMeta structs.EnterpriseMeta finalMeta.Merge(opts.entMeta) - correlationID := "upstream-target:" + opts.chainID + ":" + opts.upstreamID + correlationID := "upstream-target:" + opts.chainID + ":" + opts.upstreamID.String() ctx, cancel := context.WithCancel(ctx) err := s.health.Notify(ctx, structs.ServiceSpecificRequest{ @@ -378,7 +384,7 @@ func (s *handlerUpstreams) watchUpstreamTarget(ctx context.Context, snap *Config } type discoveryChainWatchOpts struct { - id string + id UpstreamID name string namespace string partition string @@ -403,7 +409,7 @@ func (s *handlerUpstreams) watchDiscoveryChain(ctx context.Context, snap *Config OverrideProtocol: opts.cfg.Protocol, OverrideConnectTimeout: opts.cfg.ConnectTimeout(), OverrideMeshGateway: opts.meshGateway, - }, "discovery-chain:"+opts.id, s.ch) + }, "discovery-chain:"+opts.id.String(), s.ch) if err != nil { cancel() return err diff --git a/agent/structs/connect_proxy_config.go b/agent/structs/connect_proxy_config.go index ba0696794..f59543bdf 100644 --- a/agent/structs/connect_proxy_config.go +++ b/agent/structs/connect_proxy_config.go @@ -314,15 +314,6 @@ func (us Upstreams) ToAPI() []api.Upstream { return a } -func (us Upstreams) ToMap() map[string]*Upstream { - upstreamMap := make(map[string]*Upstream) - - for i := range us { - upstreamMap[us[i].Identifier()] = &us[i] - } - return upstreamMap -} - // UpstreamsFromAPI is a helper for converting api.Upstream to Upstream. func UpstreamsFromAPI(us []api.Upstream) Upstreams { a := make([]Upstream, len(us)) @@ -551,24 +542,17 @@ func (k UpstreamKey) String() string { ) } -// String implements Stringer by returning the Identifier. -func (u *Upstream) String() string { - return u.Identifier() -} - -// Identifier returns a string representation that uniquely identifies the -// upstream in a canonical but human readable way. -func (us *Upstream) Identifier() string { - name := us.enterpriseIdentifierPrefix() + us.DestinationName +// String returns a representation of this upstream suitable for debugging +// purposes but nothing relies upon this format. +func (us *Upstream) String() string { + name := us.enterpriseStringPrefix() + us.DestinationName typ := us.DestinationType if us.Datacenter != "" { name += "?dc=" + us.Datacenter } - // Service is default type so never prefix it. This is more readable and long - // term it is the only type that matters so we can drop the prefix and have - // nicer naming in metrics etc. + // Service is default type so never prefix it. if typ == "" || typ == UpstreamDestTypeService { return name } diff --git a/agent/structs/connect_proxy_config_oss.go b/agent/structs/connect_proxy_config_oss.go index 61bd2e393..dff9cc25c 100644 --- a/agent/structs/connect_proxy_config_oss.go +++ b/agent/structs/connect_proxy_config_oss.go @@ -13,6 +13,6 @@ func (us *Upstream) DestinationID() ServiceID { } } -func (us *Upstream) enterpriseIdentifierPrefix() string { +func (us *Upstream) enterpriseStringPrefix() string { return "" } diff --git a/agent/xds/clusters.go b/agent/xds/clusters.go index d534e9e9a..4d33bf377 100644 --- a/agent/xds/clusters.go +++ b/agent/xds/clusters.go @@ -77,22 +77,22 @@ func (s *ResourceGenerator) clustersFromSnapshotConnectProxy(cfgSnap *proxycfg.C clusters = append(clusters, passthroughs...) } - for id, chain := range cfgSnap.ConnectProxy.DiscoveryChain { - upstreamCfg := cfgSnap.ConnectProxy.UpstreamConfig[id] + for uid, chain := range cfgSnap.ConnectProxy.DiscoveryChain { + upstreamCfg := cfgSnap.ConnectProxy.UpstreamConfig[uid] explicit := upstreamCfg.HasLocalPortOrSocket() - if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[id]; !implicit && !explicit { + if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[uid]; !implicit && !explicit { // Discovery chain is not associated with a known explicit or implicit upstream so it is skipped. continue } - chainEndpoints, ok := cfgSnap.ConnectProxy.WatchedUpstreamEndpoints[id] + chainEndpoints, ok := cfgSnap.ConnectProxy.WatchedUpstreamEndpoints[uid] if !ok { // this should not happen - return nil, fmt.Errorf("no endpoint map for upstream %q", id) + return nil, fmt.Errorf("no endpoint map for upstream %q", uid) } - upstreamClusters, err := s.makeUpstreamClustersForDiscoveryChain(id, upstreamCfg, chain, chainEndpoints, cfgSnap) + upstreamClusters, err := s.makeUpstreamClustersForDiscoveryChain(uid, upstreamCfg, chain, chainEndpoints, cfgSnap) if err != nil { return nil, err } @@ -387,30 +387,30 @@ func (s *ResourceGenerator) injectGatewayServiceAddons(cfgSnap *proxycfg.ConfigS func (s *ResourceGenerator) clustersFromSnapshotIngressGateway(cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { var clusters []proto.Message - createdClusters := make(map[string]bool) + createdClusters := make(map[proxycfg.UpstreamID]bool) for _, upstreams := range cfgSnap.IngressGateway.Upstreams { for _, u := range upstreams { - id := u.Identifier() + uid := proxycfg.NewUpstreamID(&u) // If we've already created a cluster for this upstream, skip it. Multiple listeners may // reference the same upstream, so we don't need to create duplicate clusters in that case. - if createdClusters[id] { + if createdClusters[uid] { continue } - chain, ok := cfgSnap.IngressGateway.DiscoveryChain[id] + chain, ok := cfgSnap.IngressGateway.DiscoveryChain[uid] if !ok { // this should not happen - return nil, fmt.Errorf("no discovery chain for upstream %q", id) + return nil, fmt.Errorf("no discovery chain for upstream %q", uid) } - chainEndpoints, ok := cfgSnap.IngressGateway.WatchedUpstreamEndpoints[id] + chainEndpoints, ok := cfgSnap.IngressGateway.WatchedUpstreamEndpoints[uid] if !ok { // this should not happen - return nil, fmt.Errorf("no endpoint map for upstream %q", id) + return nil, fmt.Errorf("no endpoint map for upstream %q", uid) } - upstreamClusters, err := s.makeUpstreamClustersForDiscoveryChain(id, &u, chain, chainEndpoints, cfgSnap) + upstreamClusters, err := s.makeUpstreamClustersForDiscoveryChain(uid, &u, chain, chainEndpoints, cfgSnap) if err != nil { return nil, err } @@ -418,7 +418,7 @@ func (s *ResourceGenerator) clustersFromSnapshotIngressGateway(cfgSnap *proxycfg for _, c := range upstreamClusters { clusters = append(clusters, c) } - createdClusters[id] = true + createdClusters[uid] = true } } return clusters, nil @@ -481,6 +481,8 @@ func (s *ResourceGenerator) makeUpstreamClusterForPreparedQuery(upstream structs var c *envoy_cluster_v3.Cluster var err error + uid := proxycfg.NewUpstreamID(&upstream) + dc := upstream.Datacenter if dc == "" { dc = cfgSnap.Datacenter @@ -491,7 +493,7 @@ func (s *ResourceGenerator) makeUpstreamClusterForPreparedQuery(upstream structs 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.Warn("failed to parse", "upstream", upstream.Identifier(), "error", err) + s.Logger.Warn("failed to parse", "upstream", uid, "error", err) } if cfg.EnvoyClusterJSON != "" { c, err = makeClusterFromUserConfig(cfg.EnvoyClusterJSON) @@ -524,7 +526,7 @@ func (s *ResourceGenerator) makeUpstreamClusterForPreparedQuery(upstream structs } } - endpoints := cfgSnap.ConnectProxy.PreparedQueryEndpoints[upstream.Identifier()] + endpoints := cfgSnap.ConnectProxy.PreparedQueryEndpoints[uid] var ( spiffeIDs = make([]connect.SpiffeIDService, 0) seen = make(map[string]struct{}) @@ -571,14 +573,14 @@ func (s *ResourceGenerator) makeUpstreamClusterForPreparedQuery(upstream structs } func (s *ResourceGenerator) makeUpstreamClustersForDiscoveryChain( - id string, + uid proxycfg.UpstreamID, upstream *structs.Upstream, chain *structs.CompiledDiscoveryChain, chainEndpoints map[string]structs.CheckServiceNodes, cfgSnap *proxycfg.ConfigSnapshot, ) ([]*envoy_cluster_v3.Cluster, error) { if chain == nil { - return nil, fmt.Errorf("cannot create upstream cluster without discovery chain for %s", id) + return nil, fmt.Errorf("cannot create upstream cluster without discovery chain for %s", uid) } configMap := make(map[string]interface{}) @@ -589,7 +591,7 @@ func (s *ResourceGenerator) makeUpstreamClustersForDiscoveryChain( 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.Warn("failed to parse", "upstream", id, + s.Logger.Warn("failed to parse", "upstream", uid, "error", err) } @@ -604,7 +606,7 @@ func (s *ResourceGenerator) makeUpstreamClustersForDiscoveryChain( } } else { s.Logger.Warn("ignoring escape hatch setting, because a discovery chain is configured for", - "discovery chain", chain.ServiceName, "upstream", id, + "discovery chain", chain.ServiceName, "upstream", uid, "envoy_cluster_json", chain.ServiceName) } } diff --git a/agent/xds/clusters_test.go b/agent/xds/clusters_test.go index 6553a22d3..971407efc 100644 --- a/agent/xds/clusters_test.go +++ b/agent/xds/clusters_test.go @@ -69,8 +69,8 @@ func TestClustersFromSnapshot(t *testing.T) { customAppClusterJSON(t, customClusterJSONOptions{ Name: "myservice", }) - snap.ConnectProxy.UpstreamConfig = map[string]*structs.Upstream{ - "db": { + snap.ConnectProxy.UpstreamConfig = map[proxycfg.UpstreamID]*structs.Upstream{ + UID("db"): { // The local bind port is overridden by the escape hatch, but is required for explicit upstreams. LocalBindPort: 9191, Config: map[string]interface{}{ @@ -669,15 +669,17 @@ func TestClustersFromSnapshot(t *testing.T) { snap.Proxy.Mode = structs.ProxyModeTransparent kafka := structs.NewServiceName("kafka", nil) mongo := structs.NewServiceName("mongo", nil) + kafkaUID := proxycfg.NewUpstreamIDFromServiceName(kafka) + mongoUID := proxycfg.NewUpstreamIDFromServiceName(mongo) - snap.ConnectProxy.IntentionUpstreams = map[string]struct{}{ - kafka.String(): {}, - mongo.String(): {}, + snap.ConnectProxy.IntentionUpstreams = map[proxycfg.UpstreamID]struct{}{ + kafkaUID: {}, + mongoUID: {}, } // We add a passthrough cluster for each upstream service name - snap.ConnectProxy.PassthroughUpstreams = map[string]proxycfg.ServicePassthroughAddrs{ - kafka.String(): { + snap.ConnectProxy.PassthroughUpstreams = map[proxycfg.UpstreamID]proxycfg.ServicePassthroughAddrs{ + kafkaUID: { SNI: "kafka.default.dc1.internal.e5b08d03-bfc3-c870-1833-baddb116e648.consul", SpiffeID: connect.SpiffeIDService{ Host: "e5b08d03-bfc3-c870-1833-baddb116e648.consul", @@ -689,7 +691,7 @@ func TestClustersFromSnapshot(t *testing.T) { "9.9.9.9": {}, }, }, - mongo.String(): { + mongoUID: { SNI: "mongo.default.dc1.internal.e5b08d03-bfc3-c870-1833-baddb116e648.consul", SpiffeID: connect.SpiffeIDService{ Host: "e5b08d03-bfc3-c870-1833-baddb116e648.consul", @@ -705,8 +707,8 @@ func TestClustersFromSnapshot(t *testing.T) { } // There should still be a cluster for non-passthrough requests - snap.ConnectProxy.DiscoveryChain[mongo.String()] = discoverychain.TestCompileConfigEntries(t, "mongo", "default", "default", "dc1", connect.TestClusterID+".consul", nil) - snap.ConnectProxy.WatchedUpstreamEndpoints[mongo.String()] = map[string]structs.CheckServiceNodes{ + snap.ConnectProxy.DiscoveryChain[mongoUID] = discoverychain.TestCompileConfigEntries(t, "mongo", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.WatchedUpstreamEndpoints[mongoUID] = map[string]structs.CheckServiceNodes{ "mongo.default.default.dc1": { structs.CheckServiceNode{ Node: &structs.Node{ @@ -923,3 +925,8 @@ func TestEnvoyLBConfig_InjectToCluster(t *testing.T) { }) } } + +// UID is just a convenience function to aid in writing tests less verbosely. +func UID(input string) proxycfg.UpstreamID { + return proxycfg.UpstreamIDFromString(input) +} diff --git a/agent/xds/delta_test.go b/agent/xds/delta_test.go index 99a1f0393..d5b1a575b 100644 --- a/agent/xds/delta_test.go +++ b/agent/xds/delta_test.go @@ -153,9 +153,9 @@ func TestServer_DeltaAggregatedResources_v3_BasicProtocol_TCP(t *testing.T) { assertDeltaChanBlocked(t, envoy.deltaStream.sendCh) }) - deleteAllButOneEndpoint := func(snap *proxycfg.ConfigSnapshot, svc, targetID string) { - snap.ConnectProxy.ConfigSnapshotUpstreams.WatchedUpstreamEndpoints[svc][targetID] = - snap.ConnectProxy.ConfigSnapshotUpstreams.WatchedUpstreamEndpoints[svc][targetID][0:1] + deleteAllButOneEndpoint := func(snap *proxycfg.ConfigSnapshot, uid proxycfg.UpstreamID, targetID string) { + snap.ConnectProxy.ConfigSnapshotUpstreams.WatchedUpstreamEndpoints[uid][targetID] = + snap.ConnectProxy.ConfigSnapshotUpstreams.WatchedUpstreamEndpoints[uid][targetID][0:1] } runStep(t, "avoid sending config for unsubscribed resource", func(t *testing.T) { @@ -169,7 +169,7 @@ func TestServer_DeltaAggregatedResources_v3_BasicProtocol_TCP(t *testing.T) { // now reconfigure the snapshot and JUST edit the endpoints to strike one of the two current endpoints for DB snap = newTestSnapshot(t, snap, "") - deleteAllButOneEndpoint(snap, "db", "db.default.default.dc1") + deleteAllButOneEndpoint(snap, UID("db"), "db.default.default.dc1") mgr.DeliverConfig(t, sid, snap) // We never send an EDS reply about this change. @@ -206,7 +206,7 @@ func TestServer_DeltaAggregatedResources_v3_BasicProtocol_TCP(t *testing.T) { runStep(t, "simulate envoy NACKing an endpoint update", func(t *testing.T) { // Trigger only an EDS update. snap = newTestSnapshot(t, snap, "") - deleteAllButOneEndpoint(snap, "db", "db.default.default.dc1") + deleteAllButOneEndpoint(snap, UID("db"), "db.default.default.dc1") mgr.DeliverConfig(t, sid, snap) // Send envoy an EDS update. diff --git a/agent/xds/endpoints.go b/agent/xds/endpoints.go index b93b6da76..4742ea526 100644 --- a/agent/xds/endpoints.go +++ b/agent/xds/endpoints.go @@ -47,22 +47,22 @@ func (s *ResourceGenerator) endpointsFromSnapshotConnectProxy(cfgSnap *proxycfg. resources := make([]proto.Message, 0, len(cfgSnap.ConnectProxy.PreparedQueryEndpoints)+len(cfgSnap.ConnectProxy.WatchedUpstreamEndpoints)) - for id, chain := range cfgSnap.ConnectProxy.DiscoveryChain { - upstreamCfg := cfgSnap.ConnectProxy.UpstreamConfig[id] + for uid, chain := range cfgSnap.ConnectProxy.DiscoveryChain { + upstreamCfg := cfgSnap.ConnectProxy.UpstreamConfig[uid] explicit := upstreamCfg.HasLocalPortOrSocket() - if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[id]; !implicit && !explicit { + if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[uid]; !implicit && !explicit { // Discovery chain is not associated with a known explicit or implicit upstream so it is skipped. continue } es := s.endpointsFromDiscoveryChain( - id, + uid, chain, cfgSnap.Locality, upstreamCfg, - cfgSnap.ConnectProxy.WatchedUpstreamEndpoints[id], - cfgSnap.ConnectProxy.WatchedGatewayEndpoints[id], + cfgSnap.ConnectProxy.WatchedUpstreamEndpoints[uid], + cfgSnap.ConnectProxy.WatchedGatewayEndpoints[uid], ) resources = append(resources, es...) } @@ -72,7 +72,7 @@ func (s *ResourceGenerator) endpointsFromSnapshotConnectProxy(cfgSnap *proxycfg. if u.DestinationType != structs.UpstreamDestTypePreparedQuery { continue } - id := u.Identifier() + uid := proxycfg.NewUpstreamID(&u) dc := u.Datacenter if dc == "" { @@ -80,7 +80,7 @@ func (s *ResourceGenerator) endpointsFromSnapshotConnectProxy(cfgSnap *proxycfg. } clusterName := connect.UpstreamSNI(&u, "", dc, cfgSnap.Roots.TrustDomain) - endpoints, ok := cfgSnap.ConnectProxy.PreparedQueryEndpoints[id] + endpoints, ok := cfgSnap.ConnectProxy.PreparedQueryEndpoints[uid] if ok { la := makeLoadAssignment( clusterName, @@ -318,27 +318,27 @@ func (s *ResourceGenerator) endpointsFromServicesAndResolvers( func (s *ResourceGenerator) endpointsFromSnapshotIngressGateway(cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { var resources []proto.Message - createdClusters := make(map[string]bool) + createdClusters := make(map[proxycfg.UpstreamID]bool) for _, upstreams := range cfgSnap.IngressGateway.Upstreams { for _, u := range upstreams { - id := u.Identifier() + uid := proxycfg.NewUpstreamID(&u) // If we've already created endpoints for this upstream, skip it. Multiple listeners may // reference the same upstream, so we don't need to create duplicate endpoints in that case. - if createdClusters[id] { + if createdClusters[uid] { continue } es := s.endpointsFromDiscoveryChain( - id, - cfgSnap.IngressGateway.DiscoveryChain[id], + uid, + cfgSnap.IngressGateway.DiscoveryChain[uid], proxycfg.GatewayKey{Datacenter: cfgSnap.Datacenter, Partition: u.DestinationPartition}, &u, - cfgSnap.IngressGateway.WatchedUpstreamEndpoints[id], - cfgSnap.IngressGateway.WatchedGatewayEndpoints[id], + cfgSnap.IngressGateway.WatchedUpstreamEndpoints[uid], + cfgSnap.IngressGateway.WatchedGatewayEndpoints[uid], ) resources = append(resources, es...) - createdClusters[id] = true + createdClusters[uid] = true } } return resources, nil @@ -366,7 +366,7 @@ func makePipeEndpoint(path string) *envoy_endpoint_v3.LbEndpoint { } func (s *ResourceGenerator) endpointsFromDiscoveryChain( - id string, + uid proxycfg.UpstreamID, chain *structs.CompiledDiscoveryChain, gatewayKey proxycfg.GatewayKey, upstream *structs.Upstream, @@ -387,7 +387,7 @@ func (s *ResourceGenerator) endpointsFromDiscoveryChain( 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.Warn("failed to parse", "upstream", id, + s.Logger.Warn("failed to parse", "upstream", uid, "error", err) } @@ -402,7 +402,7 @@ func (s *ResourceGenerator) endpointsFromDiscoveryChain( } } else { s.Logger.Warn("ignoring escape hatch setting, because a discovery chain is configued for", - "discovery chain", chain.ServiceName, "upstream", id, + "discovery chain", chain.ServiceName, "upstream", uid, "envoy_cluster_json", chain.ServiceName) } } diff --git a/agent/xds/endpoints_test.go b/agent/xds/endpoints_test.go index 1aedb21a9..83886a371 100644 --- a/agent/xds/endpoints_test.go +++ b/agent/xds/endpoints_test.go @@ -325,8 +325,8 @@ func TestEndpointsFromSnapshot(t *testing.T) { customAppClusterJSON(t, customClusterJSONOptions{ Name: "myservice", }) - snap.ConnectProxy.UpstreamConfig = map[string]*structs.Upstream{ - "db": { + snap.ConnectProxy.UpstreamConfig = map[proxycfg.UpstreamID]*structs.Upstream{ + UID("db"): { // The local bind port is overridden by the escape hatch, but is required for explicit upstreams. LocalBindPort: 9191, Config: map[string]interface{}{ diff --git a/agent/xds/listeners.go b/agent/xds/listeners.go index 319161ff4..fcc3fd2ad 100644 --- a/agent/xds/listeners.go +++ b/agent/xds/listeners.go @@ -93,16 +93,16 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. } } - for id, chain := range cfgSnap.ConnectProxy.DiscoveryChain { - upstreamCfg := cfgSnap.ConnectProxy.UpstreamConfig[id] + for uid, chain := range cfgSnap.ConnectProxy.DiscoveryChain { + upstreamCfg := cfgSnap.ConnectProxy.UpstreamConfig[uid] explicit := upstreamCfg.HasLocalPortOrSocket() - if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[id]; !implicit && !explicit { + if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[uid]; !implicit && !explicit { // Discovery chain is not associated with a known explicit or implicit upstream so it is skipped. continue } - cfg := s.getAndModifyUpstreamConfigForListener(id, upstreamCfg, chain) + cfg := s.getAndModifyUpstreamConfigForListener(uid, upstreamCfg, chain) // If escape hatch is present, create a listener from it and move on to the next if cfg.EnvoyListenerJSON != "" { @@ -133,7 +133,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. // Generate the upstream listeners for when they are explicitly set with a local bind port or socket path if upstreamCfg != nil && upstreamCfg.HasLocalPortOrSocket() { filterChain, err := s.makeUpstreamFilterChain(filterChainOpts{ - routeName: id, + routeName: uid.EnvoyID(), clusterName: clusterName, filterName: filterName, protocol: cfg.Protocol, @@ -143,7 +143,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. return nil, err } - upstreamListener := makeListener(id, upstreamCfg, envoy_core_v3.TrafficDirection_OUTBOUND) + upstreamListener := makeListener(uid.EnvoyID(), upstreamCfg, envoy_core_v3.TrafficDirection_OUTBOUND) upstreamListener.FilterChains = []*envoy_listener_v3.FilterChain{ filterChain, } @@ -158,7 +158,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. // as we do for explicit upstreams above. filterChain, err := s.makeUpstreamFilterChain(filterChainOpts{ - routeName: id, + routeName: uid.EnvoyID(), clusterName: clusterName, filterName: filterName, protocol: cfg.Protocol, @@ -168,7 +168,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. return nil, err } - endpoints := cfgSnap.ConnectProxy.WatchedUpstreamEndpoints[id][chain.ID()] + endpoints := cfgSnap.ConnectProxy.WatchedUpstreamEndpoints[uid][chain.ID()] uniqueAddrs := make(map[string]struct{}) // Match on the virtual IP for the upstream service (identified by the chain's ID). @@ -199,7 +199,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. } if len(uniqueAddrs) > 2 { s.Logger.Debug("detected multiple virtual IPs for an upstream, all will be used to match traffic", - "upstream", id, "ip_count", len(uniqueAddrs)) + "upstream", uid, "ip_count", len(uniqueAddrs)) } // For every potential address we collected, create the appropriate address prefix to match on. @@ -218,12 +218,11 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. // as opposed to via a virtual IP. var passthroughChains []*envoy_listener_v3.FilterChain - for svc, passthrough := range cfgSnap.ConnectProxy.PassthroughUpstreams { - sn := structs.ServiceNameFromString(svc) + for uid, passthrough := range cfgSnap.ConnectProxy.PassthroughUpstreams { u := structs.Upstream{ - DestinationName: sn.Name, - DestinationNamespace: sn.NamespaceOrDefault(), - DestinationPartition: sn.PartitionOrDefault(), + DestinationName: uid.Name, + DestinationNamespace: uid.NamespaceOrDefault(), + DestinationPartition: uid.PartitionOrDefault(), } filterName := fmt.Sprintf("%s.%s.%s.%s", u.DestinationName, u.DestinationNamespace, u.DestinationPartition, cfgSnap.Datacenter) @@ -271,7 +270,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. } // Looping over explicit upstreams is only needed for prepared queries because they do not have discovery chains - for id, u := range cfgSnap.ConnectProxy.UpstreamConfig { + for uid, u := range cfgSnap.ConnectProxy.UpstreamConfig { if u.DestinationType != structs.UpstreamDestTypePreparedQuery { continue } @@ -280,7 +279,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. 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.Warn("failed to parse", "upstream", u.Identifier(), "error", err) + s.Logger.Warn("failed to parse", "upstream", uid, "error", err) } // If escape hatch is present, create a listener from it and move on to the next @@ -288,7 +287,7 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. upstreamListener, err := makeListenerFromUserConfig(cfg.EnvoyListenerJSON) if err != nil { s.Logger.Error("failed to parse envoy_listener_json", - "upstream", u.Identifier(), + "upstream", uid, "error", err) continue } @@ -296,13 +295,13 @@ func (s *ResourceGenerator) listenersFromSnapshotConnectProxy(cfgSnap *proxycfg. continue } - upstreamListener := makeListener(id, u, envoy_core_v3.TrafficDirection_OUTBOUND) + upstreamListener := makeListener(uid.EnvoyID(), u, envoy_core_v3.TrafficDirection_OUTBOUND) filterChain, err := s.makeUpstreamFilterChain(filterChainOpts{ // TODO (SNI partition) add partition for upstream SNI clusterName: connect.UpstreamSNI(u, "", cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain), - filterName: id, - routeName: id, + filterName: uid.EnvoyID(), + routeName: uid.EnvoyID(), protocol: cfg.Protocol, }) if err != nil { @@ -1289,7 +1288,11 @@ func simpleChainTarget(chain *structs.CompiledDiscoveryChain) (*structs.Discover return chain.Targets[targetID], nil } -func (s *ResourceGenerator) getAndModifyUpstreamConfigForListener(id string, u *structs.Upstream, chain *structs.CompiledDiscoveryChain) structs.UpstreamConfig { +func (s *ResourceGenerator) getAndModifyUpstreamConfigForListener( + uid proxycfg.UpstreamID, + u *structs.Upstream, + chain *structs.CompiledDiscoveryChain, +) structs.UpstreamConfig { var ( cfg structs.UpstreamConfig err error @@ -1304,7 +1307,7 @@ func (s *ResourceGenerator) getAndModifyUpstreamConfigForListener(id string, u * 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.Warn("failed to parse", "upstream", id, "error", err) + s.Logger.Warn("failed to parse", "upstream", uid, "error", err) } } else { // Use NoDefaults here so that we can set the protocol to the chain @@ -1313,12 +1316,12 @@ func (s *ResourceGenerator) getAndModifyUpstreamConfigForListener(id string, u * 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.Warn("failed to parse", "upstream", id, "error", err) + s.Logger.Warn("failed to parse", "upstream", uid, "error", err) } if cfg.EnvoyListenerJSON != "" { s.Logger.Warn("ignoring escape hatch setting because already configured for", - "discovery chain", chain.ServiceName, "upstream", id, "config", "envoy_listener_json") + "discovery chain", chain.ServiceName, "upstream", uid, "config", "envoy_listener_json") // Remove from config struct so we don't use it later on cfg.EnvoyListenerJSON = "" diff --git a/agent/xds/listeners_ingress.go b/agent/xds/listeners_ingress.go index 8f8f741d1..899e842d4 100644 --- a/agent/xds/listeners_ingress.go +++ b/agent/xds/listeners_ingress.go @@ -2,9 +2,11 @@ package xds import ( "fmt" + envoy_core_v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" envoy_listener_v3 "github.com/envoyproxy/go-control-plane/envoy/config/listener/v3" envoy_tls_v3 "github.com/envoyproxy/go-control-plane/envoy/extensions/transport_sockets/tls/v3" + "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes/duration" "github.com/golang/protobuf/ptypes/wrappers" @@ -33,15 +35,16 @@ func (s *ResourceGenerator) makeIngressGatewayListeners(address string, cfgSnap // member, because this key/value pair is created only when a // GatewayService is returned in the RPC u := upstreams[0] - id := u.Identifier() - chain := cfgSnap.IngressGateway.DiscoveryChain[id] + uid := proxycfg.NewUpstreamID(&u) + + chain := cfgSnap.IngressGateway.DiscoveryChain[uid] if chain == nil { // Wait until a chain is present in the snapshot. continue } - cfg := s.getAndModifyUpstreamConfigForListener(id, &u, chain) + cfg := s.getAndModifyUpstreamConfigForListener(uid, &u, chain) // RDS, Envoy's Route Discovery Service, is only used for HTTP services with a customized discovery chain. // TODO(freddy): Why can the protocol of the listener be overridden here? @@ -60,9 +63,9 @@ func (s *ResourceGenerator) makeIngressGatewayListeners(address string, cfgSnap filterName := fmt.Sprintf("%s.%s.%s.%s", chain.ServiceName, chain.Namespace, chain.Partition, chain.Datacenter) - l := makePortListenerWithDefault(id, address, u.LocalBindPort, envoy_core_v3.TrafficDirection_OUTBOUND) + l := makePortListenerWithDefault(uid.EnvoyID(), address, u.LocalBindPort, envoy_core_v3.TrafficDirection_OUTBOUND) filterChain, err := s.makeUpstreamFilterChain(filterChainOpts{ - routeName: id, + routeName: uid.EnvoyID(), useRDS: useRDS, clusterName: clusterName, filterName: filterName, diff --git a/agent/xds/listeners_test.go b/agent/xds/listeners_test.go index 5c252fad3..c097176f4 100644 --- a/agent/xds/listeners_test.go +++ b/agent/xds/listeners_test.go @@ -72,6 +72,8 @@ func TestListenersFromSnapshot(t *testing.T) { snap.Proxy.Upstreams[0].LocalBindPort = 0 snap.Proxy.Upstreams[0].LocalBindSocketPath = "/tmp/service-mesh/client-1/grpc-employee-server" snap.Proxy.Upstreams[0].LocalBindSocketMode = "0640" + + snap.ConnectProxy.UpstreamConfig = proxycfg.UpstreamsToMap(snap.Proxy.Upstreams) }, }, { @@ -95,6 +97,8 @@ func TestListenersFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshot, setup: func(snap *proxycfg.ConfigSnapshot) { snap.Proxy.Upstreams[0].Config["protocol"] = "http" + + snap.ConnectProxy.UpstreamConfig = proxycfg.UpstreamsToMap(snap.Proxy.Upstreams) }, }, { @@ -159,14 +163,21 @@ func TestListenersFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshot, setup: func(snap *proxycfg.ConfigSnapshot) { for i := range snap.Proxy.Upstreams { + if snap.Proxy.Upstreams[i].DestinationName != "db" { + continue // only tweak the db upstream + } if snap.Proxy.Upstreams[i].Config == nil { snap.Proxy.Upstreams[i].Config = map[string]interface{}{} } + + uid := proxycfg.NewUpstreamID(&snap.Proxy.Upstreams[i]) + snap.Proxy.Upstreams[i].Config["envoy_listener_json"] = customListenerJSON(t, customListenerJSONOptions{ - Name: snap.Proxy.Upstreams[i].Identifier() + ":custom-upstream", + Name: uid.EnvoyID() + ":custom-upstream", }) } + snap.ConnectProxy.UpstreamConfig = proxycfg.UpstreamsToMap(snap.Proxy.Upstreams) }, }, { @@ -174,14 +185,22 @@ func TestListenersFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshotDiscoveryChainWithFailover, setup: func(snap *proxycfg.ConfigSnapshot) { for i := range snap.Proxy.Upstreams { + if snap.Proxy.Upstreams[i].DestinationName != "db" { + continue // only tweak the db upstream + } if snap.Proxy.Upstreams[i].Config == nil { snap.Proxy.Upstreams[i].Config = map[string]interface{}{} } + + uid := proxycfg.NewUpstreamID(&snap.Proxy.Upstreams[i]) + snap.Proxy.Upstreams[i].Config["envoy_listener_json"] = customListenerJSON(t, customListenerJSONOptions{ - Name: snap.Proxy.Upstreams[i].Identifier() + ":custom-upstream", + Name: uid.EnvoyID() + ":custom-upstream", }) } + + snap.ConnectProxy.UpstreamConfig = proxycfg.UpstreamsToMap(snap.Proxy.Upstreams) }, }, { @@ -901,7 +920,7 @@ func TestListenersFromSnapshot(t *testing.T) { connect.TestClusterID+".consul", nil, ) - snap.IngressGateway.DiscoveryChain["secure"] = secureChain + snap.IngressGateway.DiscoveryChain[UID("secure")] = secureChain insecureChain := discoverychain.TestCompileConfigEntries( t, @@ -912,7 +931,7 @@ func TestListenersFromSnapshot(t *testing.T) { connect.TestClusterID+".consul", nil, ) - snap.IngressGateway.DiscoveryChain["insecure"] = insecureChain + snap.IngressGateway.DiscoveryChain[UID("insecure")] = insecureChain snap.IngressGateway.Listeners = map[proxycfg.IngressListenerKey]structs.IngressListener{ {Protocol: "tcp", Port: 8080}: { @@ -1084,12 +1103,13 @@ func TestListenersFromSnapshot(t *testing.T) { // DiscoveryChain without an UpstreamConfig should yield a filter chain when in transparent proxy mode google := structs.NewServiceName("google", nil) - snap.ConnectProxy.IntentionUpstreams = map[string]struct{}{ - google.String(): {}, + googleUID := proxycfg.NewUpstreamIDFromServiceName(google) + snap.ConnectProxy.IntentionUpstreams = map[proxycfg.UpstreamID]struct{}{ + googleUID: {}, } - snap.ConnectProxy.DiscoveryChain[google.String()] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[googleUID] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) - snap.ConnectProxy.WatchedUpstreamEndpoints[google.String()] = map[string]structs.CheckServiceNodes{ + snap.ConnectProxy.WatchedUpstreamEndpoints[googleUID] = map[string]structs.CheckServiceNodes{ "google.default.default.dc1": { structs.CheckServiceNode{ Node: &structs.Node{ @@ -1126,7 +1146,7 @@ func TestListenersFromSnapshot(t *testing.T) { } // DiscoveryChains without endpoints do not get a filter chain because there are no addresses to match on. - snap.ConnectProxy.DiscoveryChain["no-endpoints"] = discoverychain.TestCompileConfigEntries(t, "no-endpoints", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[UID("no-endpoints")] = discoverychain.TestCompileConfigEntries(t, "no-endpoints", "default", "default", "dc1", connect.TestClusterID+".consul", nil) }, }, { @@ -1144,11 +1164,12 @@ func TestListenersFromSnapshot(t *testing.T) { // DiscoveryChain without an UpstreamConfig should yield a filter chain when in transparent proxy mode google := structs.NewServiceName("google", nil) - snap.ConnectProxy.IntentionUpstreams = map[string]struct{}{ - google.String(): {}, + googleUID := proxycfg.NewUpstreamIDFromServiceName(google) + snap.ConnectProxy.IntentionUpstreams = map[proxycfg.UpstreamID]struct{}{ + googleUID: {}, } - snap.ConnectProxy.DiscoveryChain[google.String()] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) - snap.ConnectProxy.WatchedUpstreamEndpoints[google.String()] = map[string]structs.CheckServiceNodes{ + snap.ConnectProxy.DiscoveryChain[googleUID] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.WatchedUpstreamEndpoints[googleUID] = map[string]structs.CheckServiceNodes{ "google.default.default.dc1": { structs.CheckServiceNode{ Node: &structs.Node{ @@ -1168,7 +1189,7 @@ func TestListenersFromSnapshot(t *testing.T) { } // DiscoveryChains without endpoints do not get a filter chain because there are no addresses to match on. - snap.ConnectProxy.DiscoveryChain["no-endpoints"] = discoverychain.TestCompileConfigEntries(t, "no-endpoints", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[UID("no-endpoints")] = discoverychain.TestCompileConfigEntries(t, "no-endpoints", "default", "default", "dc1", connect.TestClusterID+".consul", nil) }, }, { @@ -1178,24 +1199,26 @@ func TestListenersFromSnapshot(t *testing.T) { snap.Proxy.Mode = structs.ProxyModeTransparent kafka := structs.NewServiceName("kafka", nil) mongo := structs.NewServiceName("mongo", nil) + kafkaUID := proxycfg.NewUpstreamIDFromServiceName(kafka) + mongoUID := proxycfg.NewUpstreamIDFromServiceName(mongo) - snap.ConnectProxy.IntentionUpstreams = map[string]struct{}{ - kafka.String(): {}, - mongo.String(): {}, + snap.ConnectProxy.IntentionUpstreams = map[proxycfg.UpstreamID]struct{}{ + kafkaUID: {}, + mongoUID: {}, } - snap.ConnectProxy.DiscoveryChain[mongo.String()] = discoverychain.TestCompileConfigEntries(t, "mongo", "default", "default", "dc1", connect.TestClusterID+".consul", nil) - snap.ConnectProxy.DiscoveryChain[kafka.String()] = discoverychain.TestCompileConfigEntries(t, "kafka", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[mongoUID] = discoverychain.TestCompileConfigEntries(t, "mongo", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[kafkaUID] = discoverychain.TestCompileConfigEntries(t, "kafka", "default", "default", "dc1", connect.TestClusterID+".consul", nil) // We add a filter chains for each passthrough service name. // The filter chain will route to a cluster with the same SNI name. - snap.ConnectProxy.PassthroughUpstreams = map[string]proxycfg.ServicePassthroughAddrs{ - kafka.String(): { + snap.ConnectProxy.PassthroughUpstreams = map[proxycfg.UpstreamID]proxycfg.ServicePassthroughAddrs{ + kafkaUID: { SNI: "kafka.default.dc1.internal.e5b08d03-bfc3-c870-1833-baddb116e648.consul", Addrs: map[string]struct{}{ "9.9.9.9": {}, }, }, - mongo.String(): { + mongoUID: { SNI: "mongo.default.dc1.internal.e5b08d03-bfc3-c870-1833-baddb116e648.consul", Addrs: map[string]struct{}{ "10.10.10.10": {}, @@ -1205,7 +1228,7 @@ func TestListenersFromSnapshot(t *testing.T) { } // There should still be a filter chain for mongo's virtual address - snap.ConnectProxy.WatchedUpstreamEndpoints[mongo.String()] = map[string]structs.CheckServiceNodes{ + snap.ConnectProxy.WatchedUpstreamEndpoints[mongoUID] = map[string]structs.CheckServiceNodes{ "mongo.default.default.dc1": { structs.CheckServiceNode{ Node: &structs.Node{ @@ -1240,12 +1263,14 @@ func TestListenersFromSnapshot(t *testing.T) { // DiscoveryChain without an UpstreamConfig should yield a filter chain when in transparent proxy mode google := structs.NewServiceName("google", nil) kafka := structs.NewServiceName("kafka", nil) - snap.ConnectProxy.IntentionUpstreams = map[string]struct{}{ - google.String(): {}, - kafka.String(): {}, + googleUID := proxycfg.NewUpstreamIDFromServiceName(google) + kafkaUID := proxycfg.NewUpstreamIDFromServiceName(kafka) + snap.ConnectProxy.IntentionUpstreams = map[proxycfg.UpstreamID]struct{}{ + googleUID: {}, + kafkaUID: {}, } - snap.ConnectProxy.DiscoveryChain[google.String()] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) - snap.ConnectProxy.DiscoveryChain[kafka.String()] = discoverychain.TestCompileConfigEntries(t, "kafka", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[googleUID] = discoverychain.TestCompileConfigEntries(t, "google", "default", "default", "dc1", connect.TestClusterID+".consul", nil) + snap.ConnectProxy.DiscoveryChain[kafkaUID] = discoverychain.TestCompileConfigEntries(t, "kafka", "default", "default", "dc1", connect.TestClusterID+".consul", nil) tgate := structs.CheckServiceNode{ Node: &structs.Node{ @@ -1264,10 +1289,10 @@ func TestListenersFromSnapshot(t *testing.T) { }, }, } - snap.ConnectProxy.WatchedUpstreamEndpoints[google.String()] = map[string]structs.CheckServiceNodes{ + snap.ConnectProxy.WatchedUpstreamEndpoints[googleUID] = map[string]structs.CheckServiceNodes{ "google.default.default.dc1": {tgate}, } - snap.ConnectProxy.WatchedUpstreamEndpoints[kafka.String()] = map[string]structs.CheckServiceNodes{ + snap.ConnectProxy.WatchedUpstreamEndpoints[kafkaUID] = map[string]structs.CheckServiceNodes{ "kafka.default.default.dc1": {tgate}, } }, diff --git a/agent/xds/routes.go b/agent/xds/routes.go index 7cb714daa..8d0b6330e 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -48,24 +48,24 @@ func (s *ResourceGenerator) routesFromSnapshot(cfgSnap *proxycfg.ConfigSnapshot) // "routes" in the snapshot. func (s *ResourceGenerator) routesForConnectProxy(cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { var resources []proto.Message - for id, chain := range cfgSnap.ConnectProxy.DiscoveryChain { + for uid, chain := range cfgSnap.ConnectProxy.DiscoveryChain { if chain.IsDefault() { continue } - explicit := cfgSnap.ConnectProxy.UpstreamConfig[id].HasLocalPortOrSocket() - if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[id]; !implicit && !explicit { + explicit := cfgSnap.ConnectProxy.UpstreamConfig[uid].HasLocalPortOrSocket() + if _, implicit := cfgSnap.ConnectProxy.IntentionUpstreams[uid]; !implicit && !explicit { // Discovery chain is not associated with a known explicit or implicit upstream so it is skipped. continue } - virtualHost, err := makeUpstreamRouteForDiscoveryChain(id, chain, []string{"*"}) + virtualHost, err := makeUpstreamRouteForDiscoveryChain(uid.EnvoyID(), chain, []string{"*"}) if err != nil { return nil, err } route := &envoy_route_v3.RouteConfiguration{ - Name: id, + Name: uid.EnvoyID(), VirtualHosts: []*envoy_route_v3.VirtualHost{virtualHost}, // ValidateClusters defaults to true when defined statically and false // when done via RDS. Re-set the reasonable value of true to prevent @@ -173,7 +173,7 @@ func makeNamedDefaultRouteWithLB(clusterName string, lb *structs.LoadBalancer, a func (s *ResourceGenerator) routesForIngressGateway( listeners map[proxycfg.IngressListenerKey]structs.IngressListener, upstreams map[proxycfg.IngressListenerKey]structs.Upstreams, - chains map[string]*structs.CompiledDiscoveryChain, + chains map[proxycfg.UpstreamID]*structs.CompiledDiscoveryChain, ) ([]proto.Message, error) { var result []proto.Message @@ -195,14 +195,14 @@ func (s *ResourceGenerator) routesForIngressGateway( } for _, u := range upstreams { - upstreamID := u.Identifier() - chain := chains[upstreamID] + uid := proxycfg.NewUpstreamID(&u) + chain := chains[uid] if chain == nil { continue } domains := generateUpstreamIngressDomains(listenerKey, u) - virtualHost, err := makeUpstreamRouteForDiscoveryChain(upstreamID, chain, domains) + virtualHost, err := makeUpstreamRouteForDiscoveryChain(uid.EnvoyID(), chain, domains) if err != nil { return nil, err } diff --git a/agent/xds/routes_test.go b/agent/xds/routes_test.go index cd76184db..d0c1b44d9 100644 --- a/agent/xds/routes_test.go +++ b/agent/xds/routes_test.go @@ -204,11 +204,11 @@ func TestRoutesFromSnapshot(t *testing.T) { bazChain := discoverychain.TestCompileConfigEntries(t, "baz", "default", "default", "dc1", connect.TestClusterID+".consul", nil, entries...) quxChain := discoverychain.TestCompileConfigEntries(t, "qux", "default", "default", "dc1", connect.TestClusterID+".consul", nil, entries...) - snap.IngressGateway.DiscoveryChain = map[string]*structs.CompiledDiscoveryChain{ - "foo": fooChain, - "bar": barChain, - "baz": bazChain, - "qux": quxChain, + snap.IngressGateway.DiscoveryChain = map[proxycfg.UpstreamID]*structs.CompiledDiscoveryChain{ + UID("foo"): fooChain, + UID("bar"): barChain, + UID("baz"): bazChain, + UID("qux"): quxChain, } }, }, @@ -667,6 +667,9 @@ func setupIngressWithTwoHTTPServices(t *testing.T, o ingressSDSOpts) func(snap * }, } + webUID := proxycfg.NewUpstreamID(&webUpstream) + fooUID := proxycfg.NewUpstreamID(&fooUpstream) + // Setup additional HTTP service on same listener with default router snap.IngressGateway.Upstreams = map[proxycfg.IngressListenerKey]structs.Upstreams{ {Protocol: "http", Port: 9191}: {webUpstream, fooUpstream}, @@ -775,7 +778,7 @@ func setupIngressWithTwoHTTPServices(t *testing.T, o ingressSDSOpts) func(snap * o.entMetas["web"].PartitionOrDefault(), "dc1", connect.TestClusterID+".consul", nil, entries...) - snap.IngressGateway.DiscoveryChain[webUpstream.Identifier()] = webChain - snap.IngressGateway.DiscoveryChain[fooUpstream.Identifier()] = fooChain + snap.IngressGateway.DiscoveryChain[webUID] = webChain + snap.IngressGateway.DiscoveryChain[fooUID] = fooChain } } diff --git a/agent/xds/testdata/listeners/custom-upstream.envoy-1-20-x.golden b/agent/xds/testdata/listeners/custom-upstream.envoy-1-20-x.golden index 62e02591d..d12bdaf99 100644 --- a/agent/xds/testdata/listeners/custom-upstream.envoy-1-20-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream.envoy-1-20-x.golden @@ -27,11 +27,11 @@ }, { "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", - "name": "prepared_query:geo-cache:custom-upstream", + "name": "prepared_query:geo-cache:127.10.10.10:8181", "address": { "socketAddress": { - "address": "11.11.11.11", - "portValue": 11111 + "address": "127.10.10.10", + "portValue": 8181 } }, "filterChains": [ @@ -41,13 +41,14 @@ "name": "envoy.filters.network.tcp_proxy", "typedConfig": { "@type": "type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy", - "statPrefix": "foo-stats", - "cluster": "random-cluster" + "statPrefix": "upstream.prepared_query_geo-cache", + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul" } } ] } - ] + ], + "trafficDirection": "OUTBOUND" }, { "@type": "type.googleapis.com/envoy.config.listener.v3.Listener", diff --git a/agent/xds/xds_protocol_helpers_test.go b/agent/xds/xds_protocol_helpers_test.go index dc58e1f9d..c0be25680 100644 --- a/agent/xds/xds_protocol_helpers_test.go +++ b/agent/xds/xds_protocol_helpers_test.go @@ -43,8 +43,8 @@ func newTestSnapshot( additionalEntries ...structs.ConfigEntry, ) *proxycfg.ConfigSnapshot { snap := proxycfg.TestConfigSnapshotDiscoveryChainDefaultWithEntries(t, additionalEntries...) - snap.ConnectProxy.PreparedQueryEndpoints = map[string]structs.CheckServiceNodes{ - "prepared_query:geo-cache": proxycfg.TestPreparedQueryNodes(t, "geo-cache"), + snap.ConnectProxy.PreparedQueryEndpoints = map[proxycfg.UpstreamID]structs.CheckServiceNodes{ + UID("prepared_query:geo-cache"): proxycfg.TestPreparedQueryNodes(t, "geo-cache"), } if prevSnap != nil { snap.Roots = prevSnap.Roots @@ -53,7 +53,7 @@ func newTestSnapshot( if dbServiceProtocol != "" { // Simulate ServiceManager injection of protocol snap.Proxy.Upstreams[0].Config["protocol"] = dbServiceProtocol - snap.ConnectProxy.ConfigSnapshotUpstreams.UpstreamConfig = snap.Proxy.Upstreams.ToMap() + snap.ConnectProxy.ConfigSnapshotUpstreams.UpstreamConfig = proxycfg.UpstreamsToMap(snap.Proxy.Upstreams) } return snap } From d8b9eb7756273c9407032d46c4fdecaf7ec3deaa Mon Sep 17 00:00:00 2001 From: David Yu Date: Thu, 20 Jan 2022 08:26:31 -0800 Subject: [PATCH 280/404] docs: Add specific version install guide for `consul-k8s` CLI, refactor install (#12114) * docs: Add specific version install guide for `consul-k8s` CLI * parameterize version * remove extra path * Update k8s-cli.mdx * slight formatting * Update k8s-cli.mdx * specific version details in overall install guide * shell details * Update install.mdx * Update k8s-cli.mdx * Update install.mdx * broken link * typo * Update website/content/docs/k8s/installation/compatibility.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/k8s-cli.mdx Co-authored-by: mrspanishviking * Update website/content/docs/k8s/installation/install.mdx Co-authored-by: mrspanishviking * moving install cli commands to separate page * add tabs, wip * add specific distro install guides * add upgrade tabs * build failure * not sure why heading is not working * remove whitespace * add more whitespace * fixes on formatting * remove package lock * add back package lock json * test * latest * remove modified file * adding fix to yum install * create folder for upgrade and move upgrade cli there * revert package-lock * adding upgrade file * Update website/content/docs/k8s/upgrade/upgrade-cli.mdx Co-authored-by: Thomas Eckert * Update website/content/docs/k8s/installation/install-cli.mdx Co-authored-by: Thomas Eckert * Update website/content/docs/k8s/installation/install-cli.mdx Co-authored-by: Thomas Eckert * Update install-cli.mdx * multi-line copy Co-authored-by: mrspanishviking Co-authored-by: Thomas Eckert --- .../docs/k8s/installation/compatibility.mdx | 8 +- .../docs/k8s/installation/install-cli.mdx | 205 ++++++++++++++++++ .../content/docs/k8s/installation/install.mdx | 2 + website/content/docs/k8s/k8s-cli.mdx | 45 +--- .../content/docs/k8s/upgrade/upgrade-cli.mdx | 82 +++++++ website/data/docs-nav-data.json | 10 +- 6 files changed, 303 insertions(+), 49 deletions(-) create mode 100644 website/content/docs/k8s/installation/install-cli.mdx create mode 100644 website/content/docs/k8s/upgrade/upgrade-cli.mdx diff --git a/website/content/docs/k8s/installation/compatibility.mdx b/website/content/docs/k8s/installation/compatibility.mdx index 5b6603990..b46eef6fb 100644 --- a/website/content/docs/k8s/installation/compatibility.mdx +++ b/website/content/docs/k8s/installation/compatibility.mdx @@ -12,7 +12,7 @@ For every release of Consul on Kubernetes, a Helm chart, `consul-k8s-control-pla ### Version 0.33.0 and above -Starting with Consul Kubernetes 0.33.0, Consul Kubernetes versions all of it components (`consul-k8s` CLI, `consul-k8s-control-plane`, and Helm chart) with a single version. +Starting with Consul Kubernetes 0.33.0, Consul Kubernetes versions all of its components (`consul-k8s` CLI, `consul-k8s-control-plane`, and Helm chart) with a single semantic version. | Consul Version | Compatible consul-k8s Versions | | -------------- | ------------------------------- | @@ -37,16 +37,16 @@ Supported versions of Envoy for Consul versions are also found in [Envoy - Suppo ## Red Hat OpenShift compatability -Consul Kubernetes delivered Red Hat OpenShift support starting with Consul Helm chart version 0.25.0 for Consul 1.8.4 Please note the following details regarding OpenShift support. +Consul Kubernetes delivered Red Hat OpenShift support starting with Consul Helm chart version 0.25.0 for Consul 1.8.4. Please note the following details regarding OpenShift support. - Red Hat OpenShift is only supported for OpenShift 4.4.x and above. - Only the default CNI Plugin, [OpenShift SDN CNI Plugin](https://docs.openshift.com/container-platform/4.9/networking/openshift_sdn/about-openshift-sdn.html) is currently supported. ## Vault as a Secrets Backend compatibility -Starting with Consul K8s 0.39.0 and Consul 1.11.x, Consul Kubernetes supports the ability to utilize Vault as the secrets backend for all the secrets utilized by Consul Kubernetes. +Starting with Consul K8s 0.39.0 and Consul 1.11.x, Consul Kubernetes supports the ability to utilize Vault as the secrets backend for all the secrets utilized by Consul on Kubernetes. -| `consul-k8s` Versions | Compatible Vault Versions | Compatible Vault K8s Versions | +| `consul-k8s` Versions | Compatible Vault Versions | Compatible `vault-k8s` Versions | | ------------------------ | --------------------------| ----------------------------- | | 0.39.0 - latest | 1.9.0 - latest | 0.14.0 - latest | diff --git a/website/content/docs/k8s/installation/install-cli.mdx b/website/content/docs/k8s/installation/install-cli.mdx new file mode 100644 index 000000000..5a4016776 --- /dev/null +++ b/website/content/docs/k8s/installation/install-cli.mdx @@ -0,0 +1,205 @@ +--- +layout: docs +page_title: Installing the Consul K8s CLI +description: >- + Consul K8s CLI is a tool for quickly installing and interacting with Consul on Kubernetes. +--- + +# Installing the Consul K8s CLI + +Consul K8s CLI is a tool for quickly installing and interacting with Consul on Kubernetes. Ensure that you are installing the correct version of the CLI for your Consul on Kubernetes deployment, as the CLI and the control plane are version dependent. + +## Install the CLI + +These instructions describe how to install the latest version of the CLI depending on your Operating System, and are suited for fresh installations of Consul on Kubernetes. + + + + + +The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. The Homebrew formulae will always install the latest version of a binary. If you are looking to install a specific version of the CLI please follow [Install a specific version of Consul K8s CLI](#install-a-specific-version-of-consul-k8s-cli). + +1. Install the HashiCorp `tap`, which is a repository of all Homebrew packages for HashiCorp: + ```shell-session + $ brew tap hashicorp/tap + ``` + +1. Install the Consul K8s CLI with `hashicorp/tap/consul` formula. + ```shell-session + $ brew install hashicorp/tap/consul-k8s + ``` + +1. If you have already provisioned a Kubernetes cluster and have already configured access to the cluster via a `kubeconfig` file, you are ready to install Consul K8s. Issue the `install` subcommand to install Consul on Kubernetes: + + ```shell-session + $ consul-k8s install + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation: + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +1. Add the HashiCorp GPG key. + + ```shell-session + $ curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - + ``` + +1. Add the HashiCorp apt repository. + + ```shell-session + $ sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main" + ``` + +1. Run apt-get install to install the `consul-k8s` CLI. + + ```shell-session + $ sudo apt-get update && sudo apt-get install consul-k8s + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation. + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +1. Install `yum-config-manager` to manage your repositories. + + ```shell-session + $ sudo yum install -y yum-utils + ``` + +1. Use `yum-config-manager` to add the official HashiCorp Linux repository. + + ```shell-session + $ sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo + ``` + +1. Install the `consul-k8s` CLI. + + ```shell-session + $ sudo yum -y install consul-k8s + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation. + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +## Install a specific version of the CLI + +These instructions describe how to install a specific version of the CLI and are best suited for installing or managing specific versions of the Consul on Kubernetes control plane. + + + + + +Homebrew does not provide a method to install previous versions of a package. The Consul K8s CLI will need to be installed manually. Previous versions of the Consul K8s CLI could be used to install a specific version of Consul on the Kubernetes control plane. Manual upgrades to the Consul K8s CLI is also performed in the same manner, provided that the Consul K8s CLI was manually installed before. + +1. Download the desired Consul K8s CLI using the following `curl` command. Enter the approriate version for your deployment via the `$VERSION` environment variable. + + ```shell-session + $ export VERSION=0.39.0 && \ + curl --location "https://releases.hashicorp.com/consul-k8s/${VERSION}/consul-k8s_${VERSION}_darwin_amd64.zip" --output consul-k8s-cli.zip + ``` + +1. Unzip the zip file ouput to extract the `consul-k8s` CLI binary. This overwrites existing files and also creates a `.consul-k8s` subdirectory in your `$HOME` folder. + + ```shell-session + $ unzip -o consul-k8s-cli.zip -d ~/.consul-k8s + ``` + +1. Add the path to your directory. In order to persist the `$PATH` across sessions, you will need to add this to your shellrc (i.e. shell run commands) file for the shell used by your terminal. + + ```shell-session + $ export PATH=$PATH:$HOME/.consul-k8s/ + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation. + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +1. Add the HashiCorp GPG key. + + ```shell-session + $ curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - + ``` + +1. Add the HashiCorp apt repository. + + ```shell-session + $ sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main" + ``` + +1. Run apt-get install to install the `consul-k8s` CLI. + + ```shell-session + $ export VERSION=0.39.0 && \ + sudo apt-get update && sudo apt-get install consul-k8s=${VERSION} + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation. + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +1. Install `yum-config-manager` to manage your repositories. + + ```shell-session + $ sudo yum install -y yum-utils + ``` + +1. Use `yum-config-manager` to add the official HashiCorp Linux repository. + + ```shell-session + $ sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo + ``` + +1. Install the `consul-k8s` CLI. + + ```shell-session + $ export VERSION=-0.39.0 && \ + sudo yum -y install consul-k8s-${VERSION}-1 + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation. + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + diff --git a/website/content/docs/k8s/installation/install.mdx b/website/content/docs/k8s/installation/install.mdx index e9baea8f8..170a8212d 100644 --- a/website/content/docs/k8s/installation/install.mdx +++ b/website/content/docs/k8s/installation/install.mdx @@ -33,6 +33,8 @@ Before beginning the installation process, verify that `kubectl` is already conf The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. +-> ** NOTE:** To deploy a previous version of Consul on Kubernetes via the CLI, you will need to first download the specific version of the CLI that matches the version of the control plane that you would like to deploy. Please follow [Install a specific version of Consul K8s CLI](/docs/k8s/installation/install-cli#install-a-specific-version-of-the-cli). + 1. Install the HashiCorp `tap`, which is a repository of all Homebrew packages for HashiCorp: ```shell-session $ brew tap hashicorp/tap diff --git a/website/content/docs/k8s/k8s-cli.mdx b/website/content/docs/k8s/k8s-cli.mdx index af1ce6c82..6e5f0b901 100644 --- a/website/content/docs/k8s/k8s-cli.mdx +++ b/website/content/docs/k8s/k8s-cli.mdx @@ -8,50 +8,7 @@ description: >- # Consul K8s CLI Reference Consul K8s CLI is a tool for quickly installing and interacting with Consul on Kubernetes. -This topic describes the commands, subcommands, and available options for using Consul K8s CLI. - -## Install the Consul K8s CLI - -The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. - -1. Install the HashiCorp `tap`, which is a repository of all Homebrew packages for HashiCorp: - ```shell-session - brew tap hashicorp/tap - ``` - -1. Install the Consul K8s CLI with `hashicorp/tap/consul` formula. - ```shell-session - brew install hashicorp/tap/consul-k8s - ``` - -1. If you have already provisioned a Kubernetes cluster and have already configured access to the cluster via a `kubeconfig` file, you are ready to install Consul K8s. Issue the `install` subcommand to install Consul on Kubernetes: - - ```shell-session - consul-k8s install - ``` - -1. (Optional) Issue the `consul-k8s version` command to verify the installation: - - ```shell-session - consul-k8s version - consul-k8s 0.39.0 - ``` - -## Upgrade the Consul K8s CLI - -The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. The `brew upgrade` command assumes that Hashicorp `tap` repository has already been installed from a prior install. - -1. Upgrade the Consul K8s CLI with the latest `consul-k8s` package. - ```shell-session - brew upgrade consul-k8s - ``` - -2. (Optional) Issue the `consul-k8s version` command to verify the installation: - - ```shell-session - consul-k8s version - consul-k8s 0.39.0 - ``` +This topic describes the subcommands and available options for using Consul K8s CLI. ## Usage diff --git a/website/content/docs/k8s/upgrade/upgrade-cli.mdx b/website/content/docs/k8s/upgrade/upgrade-cli.mdx new file mode 100644 index 000000000..fdb513965 --- /dev/null +++ b/website/content/docs/k8s/upgrade/upgrade-cli.mdx @@ -0,0 +1,82 @@ +--- +layout: docs +page_title: Upgrade the Consul K8s CLI +description: >- + Consul K8s CLI is a tool for quickly installing and interacting with Consul on Kubernetes. +--- + +# Upgrade the Consul K8s CLI + +Consul K8s CLI is a tool for quickly installing and interacting with Consul on Kubernetes. Ensure that you are running the correct version of the CLI prior to upgrading your Consul on Kubernetes deployment, as the CLI and the control plane are version dependent. + +## Upgrade the CLI + +These instructions describe how to upgrade the current installed version of the CLI to the latest version. If you are looking to upgrade to a specific version, please follow [Install a specific version of the CLI](/docs/k8s/installation/install-cli#install-a-specific-version-of-the-cli). + + + + + +The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. The `brew upgrade` command assumes that Hashicorp `tap` repository has already been installed from a prior install. + +1. Upgrade the Consul K8s CLI with the latest `consul-k8s` package. + ```shell-session + $ brew upgrade consul-k8s + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation: + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +1. Upgrade all the available packages on your system. + + ```shell-session + $ sudo apt-get update + ``` + +1. Upgrade the Consul K8s CLI with the latest `consul-k8s` package. + + ```shell-session + $ sudo apt-get --only-upgrade install consul-k8s + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation: + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + + +1. Upgrade all the available packages on your system. + + ```shell-session + $ sudo yum update + ``` + +1. Upgrade the Consul K8s CLI with the latest `consul-k8s` package. + + ```shell-session + $ sudo yum update consul-k8s + ``` + +1. (Optional) Issue the `consul-k8s version` command to verify the installation: + + ```shell-session + $ consul-k8s version + consul-k8s 0.39.0 + ``` + + + + \ No newline at end of file diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 2f8f81f2a..66a0415cb 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -374,6 +374,10 @@ "title": "Installing Consul on Kubernetes", "path": "k8s/installation/install" }, + { + "title": "Installing Consul K8s CLI", + "path": "k8s/installation/install-cli" + }, { "title": "Platform Guides", "routes": [ @@ -543,8 +547,12 @@ "title": "Upgrade", "routes": [ { - "title": "Overview", + "title": "Upgrading Consul on Kubernetes", "path": "k8s/upgrade" + }, + { + "title": "Upgrading Consul K8s CLI", + "path": "k8s/upgrade/upgrade-cli" } ] }, From c12b0ee3d217781f5945fa704e221ba246efa704 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Thu, 20 Jan 2022 10:45:56 -0600 Subject: [PATCH 281/404] test: normalize require.New and assert.New syntax --- acl/policy_test.go | 38 +++++------ agent/cache-types/connect_ca_leaf_test.go | 3 +- agent/connect/generate_test.go | 45 ++++++------- agent/connect_ca_endpoint_test.go | 12 ++-- agent/consul/connect_ca_endpoint_test.go | 5 +- agent/consul/logging_test.go | 9 ++- agent/consul/state/catalog_test.go | 5 +- agent/event_endpoint_test.go | 37 +++++------ command/acl/token/clone/token_clone_test.go | 64 +++++++++---------- command/acl/token/update/token_update_test.go | 6 +- command/services/config_test.go | 6 +- 11 files changed, 111 insertions(+), 119 deletions(-) diff --git a/acl/policy_test.go b/acl/policy_test.go index fd0e9dba5..90854449a 100644 --- a/acl/policy_test.go +++ b/acl/policy_test.go @@ -1516,30 +1516,30 @@ func TestMergePolicies(t *testing.T) { }, } - req := require.New(t) + require := require.New(t) for _, tcase := range tests { t.Run(tcase.name, func(t *testing.T) { act := MergePolicies(tcase.input) exp := tcase.expected - req.Equal(exp.ACL, act.ACL) - req.Equal(exp.Keyring, act.Keyring) - req.Equal(exp.Operator, act.Operator) - req.Equal(exp.Mesh, act.Mesh) - req.ElementsMatch(exp.Agents, act.Agents) - req.ElementsMatch(exp.AgentPrefixes, act.AgentPrefixes) - req.ElementsMatch(exp.Events, act.Events) - req.ElementsMatch(exp.EventPrefixes, act.EventPrefixes) - req.ElementsMatch(exp.Keys, act.Keys) - req.ElementsMatch(exp.KeyPrefixes, act.KeyPrefixes) - req.ElementsMatch(exp.Nodes, act.Nodes) - req.ElementsMatch(exp.NodePrefixes, act.NodePrefixes) - req.ElementsMatch(exp.PreparedQueries, act.PreparedQueries) - req.ElementsMatch(exp.PreparedQueryPrefixes, act.PreparedQueryPrefixes) - req.ElementsMatch(exp.Services, act.Services) - req.ElementsMatch(exp.ServicePrefixes, act.ServicePrefixes) - req.ElementsMatch(exp.Sessions, act.Sessions) - req.ElementsMatch(exp.SessionPrefixes, act.SessionPrefixes) + require.Equal(exp.ACL, act.ACL) + require.Equal(exp.Keyring, act.Keyring) + require.Equal(exp.Operator, act.Operator) + require.Equal(exp.Mesh, act.Mesh) + require.ElementsMatch(exp.Agents, act.Agents) + require.ElementsMatch(exp.AgentPrefixes, act.AgentPrefixes) + require.ElementsMatch(exp.Events, act.Events) + require.ElementsMatch(exp.EventPrefixes, act.EventPrefixes) + require.ElementsMatch(exp.Keys, act.Keys) + require.ElementsMatch(exp.KeyPrefixes, act.KeyPrefixes) + require.ElementsMatch(exp.Nodes, act.Nodes) + require.ElementsMatch(exp.NodePrefixes, act.NodePrefixes) + require.ElementsMatch(exp.PreparedQueries, act.PreparedQueries) + require.ElementsMatch(exp.PreparedQueryPrefixes, act.PreparedQueryPrefixes) + require.ElementsMatch(exp.Services, act.Services) + require.ElementsMatch(exp.ServicePrefixes, act.ServicePrefixes) + require.ElementsMatch(exp.Sessions, act.Sessions) + require.ElementsMatch(exp.SessionPrefixes, act.SessionPrefixes) }) } diff --git a/agent/cache-types/connect_ca_leaf_test.go b/agent/cache-types/connect_ca_leaf_test.go index 10ec02b10..c2fccf983 100644 --- a/agent/cache-types/connect_ca_leaf_test.go +++ b/agent/cache-types/connect_ca_leaf_test.go @@ -406,8 +406,7 @@ func TestConnectCALeaf_changingRootsJitterBetweenCalls(t *testing.T) { // Sanity check that we've not gone way beyond the deadline without a // new cert. We give some leeway to make it less brittle. - require.Falsef( - time.Now().After(shouldExpireAfter.Add(100*time.Millisecond)), + require.Falsef(time.Now().After(shouldExpireAfter.Add(100*time.Millisecond)), "waited extra 100ms and delayed CA rotate renew didn't happen") } } diff --git a/agent/connect/generate_test.go b/agent/connect/generate_test.go index bd328f69f..21e2f72e9 100644 --- a/agent/connect/generate_test.go +++ b/agent/connect/generate_test.go @@ -8,8 +8,9 @@ import ( "crypto/x509" "encoding/pem" - "github.com/hashicorp/consul/agent/structs" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/agent/structs" ) type KeyConfig struct { @@ -47,32 +48,32 @@ func makeConfig(kc KeyConfig) structs.CommonCAProviderConfig { } func testGenerateRSAKey(t *testing.T, bits int) { - r := require.New(t) + require := require.New(t) _, rsaBlock, err := GeneratePrivateKeyWithConfig("rsa", bits) - r.NoError(err) - r.Contains(rsaBlock, "RSA PRIVATE KEY") + require.NoError(err) + require.Contains(rsaBlock, "RSA PRIVATE KEY") rsaBytes, _ := pem.Decode([]byte(rsaBlock)) - r.NotNil(rsaBytes) + require.NotNil(rsaBytes) rsaKey, err := x509.ParsePKCS1PrivateKey(rsaBytes.Bytes) - r.NoError(err) - r.NoError(rsaKey.Validate()) - r.Equal(bits/8, rsaKey.Size()) // note: returned size is in bytes. 2048/8==256 + require.NoError(err) + require.NoError(rsaKey.Validate()) + require.Equal(bits/8, rsaKey.Size()) // note: returned size is in bytes. 2048/8==256 } func testGenerateECDSAKey(t *testing.T, bits int) { - r := require.New(t) + require := require.New(t) _, pemBlock, err := GeneratePrivateKeyWithConfig("ec", bits) - r.NoError(err) - r.Contains(pemBlock, "EC PRIVATE KEY") + require.NoError(err) + require.Contains(pemBlock, "EC PRIVATE KEY") block, _ := pem.Decode([]byte(pemBlock)) - r.NotNil(block) + require.NotNil(block) pk, err := x509.ParseECPrivateKey(block.Bytes) - r.NoError(err) - r.Equal(bits, pk.Curve.Params().BitSize) + require.NoError(err) + require.Equal(bits, pk.Curve.Params().BitSize) } // Tests to make sure we are able to generate every type of private key supported by the x509 lib. @@ -104,7 +105,7 @@ func TestValidateGoodConfigs(t *testing.T) { config := makeConfig(params) t.Run(fmt.Sprintf("TestValidateGoodConfigs-%s-%d", params.keyType, params.keyBits), func(t *testing.T) { - require.New(t).NoError(config.Validate(), "unexpected error: type=%s bits=%d", + require.NoError(t, config.Validate(), "unexpected error: type=%s bits=%d", params.keyType, params.keyBits) }) @@ -117,7 +118,7 @@ func TestValidateBadConfigs(t *testing.T) { for _, params := range badParams { config := makeConfig(params) t.Run(fmt.Sprintf("TestValidateBadConfigs-%s-%d", params.keyType, params.keyBits), func(t *testing.T) { - require.New(t).Error(config.Validate(), "expected error: type=%s bits=%d", + require.Error(t, config.Validate(), "expected error: type=%s bits=%d", params.keyType, params.keyBits) }) } @@ -131,7 +132,7 @@ func TestSignatureMismatches(t *testing.T) { } t.Parallel() - r := require.New(t) + require := require.New(t) for _, p1 := range goodParams { for _, p2 := range goodParams { if p1 == p2 { @@ -139,14 +140,14 @@ func TestSignatureMismatches(t *testing.T) { } t.Run(fmt.Sprintf("TestMismatches-%s%d-%s%d", p1.keyType, p1.keyBits, p2.keyType, p2.keyBits), func(t *testing.T) { ca := TestCAWithKeyType(t, nil, p1.keyType, p1.keyBits) - r.Equal(p1.keyType, ca.PrivateKeyType) - r.Equal(p1.keyBits, ca.PrivateKeyBits) + require.Equal(p1.keyType, ca.PrivateKeyType) + require.Equal(p1.keyBits, ca.PrivateKeyBits) certPEM, keyPEM, err := testLeaf(t, "foobar.service.consul", "default", ca, p2.keyType, p2.keyBits) - r.NoError(err) + require.NoError(err) _, err = ParseCert(certPEM) - r.NoError(err) + require.NoError(err) _, err = ParseSigner(keyPEM) - r.NoError(err) + require.NoError(err) }) } } diff --git a/agent/connect_ca_endpoint_test.go b/agent/connect_ca_endpoint_test.go index 44dfc0acb..0256151f8 100644 --- a/agent/connect_ca_endpoint_test.go +++ b/agent/connect_ca_endpoint_test.go @@ -43,7 +43,7 @@ func TestConnectCARoots_list(t *testing.T) { t.Parallel() - assertion := assert.New(t) + assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -56,16 +56,16 @@ func TestConnectCARoots_list(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/connect/ca/roots", nil) resp := httptest.NewRecorder() obj, err := a.srv.ConnectCARoots(resp, req) - assertion.NoError(err) + assert.NoError(err) value := obj.(structs.IndexedCARoots) - assertion.Equal(value.ActiveRootID, ca2.ID) - assertion.Len(value.Roots, 2) + assert.Equal(value.ActiveRootID, ca2.ID) + assert.Len(value.Roots, 2) // We should never have the secret information for _, r := range value.Roots { - assertion.Equal("", r.SigningCert) - assertion.Equal("", r.SigningKey) + assert.Equal("", r.SigningCert) + assert.Equal("", r.SigningKey) } } diff --git a/agent/consul/connect_ca_endpoint_test.go b/agent/consul/connect_ca_endpoint_test.go index 84ea9f69a..89c4b2a05 100644 --- a/agent/consul/connect_ca_endpoint_test.go +++ b/agent/consul/connect_ca_endpoint_test.go @@ -899,7 +899,6 @@ func TestConnectCASign(t *testing.T) { func BenchmarkConnectCASign(b *testing.B) { t := &testing.T{} - require := require.New(b) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -919,7 +918,9 @@ func BenchmarkConnectCASign(b *testing.B) { b.ResetTimer() for n := 0; n < b.N; n++ { - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply)) + if err := msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply); err != nil { + b.Fatalf("err: %v", err) + } } } diff --git a/agent/consul/logging_test.go b/agent/consul/logging_test.go index 720f229f8..493360037 100644 --- a/agent/consul/logging_test.go +++ b/agent/consul/logging_test.go @@ -3,8 +3,9 @@ package consul import ( "testing" - "github.com/hashicorp/consul/sdk/testutil" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/sdk/testutil" ) func TestLoggerStore_Named(t *testing.T) { @@ -17,8 +18,7 @@ func TestLoggerStore_Named(t *testing.T) { l1 := store.Named("test1") l2 := store.Named("test2") - require.Truef( - l1 != l2, + require.Truef(l1 != l2, "expected %p and %p to have a different memory address", l1, l2, @@ -35,8 +35,7 @@ func TestLoggerStore_NamedCache(t *testing.T) { l1 := store.Named("test") l2 := store.Named("test") - require.Truef( - l1 == l2, + require.Truef(l1 == l2, "expected %p and %p to have the same memory address", l1, l2, diff --git a/agent/consul/state/catalog_test.go b/agent/consul/state/catalog_test.go index b3a41855a..295176a17 100644 --- a/agent/consul/state/catalog_test.go +++ b/agent/consul/state/catalog_test.go @@ -2389,9 +2389,8 @@ func TestStateStore_ConnectServiceNodes(t *testing.T) { assert.Len(nodes, 3) for _, n := range nodes { - assert.True( - n.ServiceKind == structs.ServiceKindConnectProxy || - n.ServiceConnect.Native, + assert.True(n.ServiceKind == structs.ServiceKindConnectProxy || + n.ServiceConnect.Native, "either proxy or connect native") } diff --git a/agent/event_endpoint_test.go b/agent/event_endpoint_test.go index d3ca95077..d430c15dd 100644 --- a/agent/event_endpoint_test.go +++ b/agent/event_endpoint_test.go @@ -9,10 +9,11 @@ import ( "testing" "time" + "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/hashicorp/consul/testrpc" - "github.com/stretchr/testify/require" ) func TestEventFire(t *testing.T) { @@ -212,25 +213,21 @@ func TestEventList_ACLFilter(t *testing.T) { t.Run("no token", func(t *testing.T) { retry.Run(t, func(r *retry.R) { - require := require.New(r) - req := httptest.NewRequest("GET", "/v1/event/list", nil) resp := httptest.NewRecorder() obj, err := a.srv.EventList(resp, req) - require.NoError(err) + require.NoError(r, err) list, ok := obj.([]*UserEvent) - require.True(ok) - require.Empty(list) - require.Empty(resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) + require.True(r, ok) + require.Empty(r, list) + require.Empty(r, resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) }) }) t.Run("token with access to one event type", func(t *testing.T) { retry.Run(t, func(r *retry.R) { - require := require.New(r) - token := testCreateToken(t, a, ` event "foo" { policy = "read" @@ -241,37 +238,35 @@ func TestEventList_ACLFilter(t *testing.T) { resp := httptest.NewRecorder() obj, err := a.srv.EventList(resp, req) - require.NoError(err) + require.NoError(r, err) list, ok := obj.([]*UserEvent) - require.True(ok) - require.Len(list, 1) - require.Equal("foo", list[0].Name) - require.NotEmpty(resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) + require.True(r, ok) + require.Len(r, list, 1) + require.Equal(r, "foo", list[0].Name) + require.NotEmpty(r, resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) }) }) t.Run("root token", func(t *testing.T) { retry.Run(t, func(r *retry.R) { - require := require.New(r) - req := httptest.NewRequest("GET", "/v1/event/list?token=root", nil) resp := httptest.NewRecorder() obj, err := a.srv.EventList(resp, req) - require.NoError(err) + require.NoError(r, err) list, ok := obj.([]*UserEvent) - require.True(ok) - require.Len(list, 2) + require.True(r, ok) + require.Len(r, list, 2) var names []string for _, e := range list { names = append(names, e.Name) } - require.ElementsMatch([]string{"foo", "bar"}, names) + require.ElementsMatch(r, []string{"foo", "bar"}, names) - require.Empty(resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) + require.Empty(r, resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) }) }) } diff --git a/command/acl/token/clone/token_clone_test.go b/command/acl/token/clone/token_clone_test.go index ec7c4ebcc..0c6b56c20 100644 --- a/command/acl/token/clone/token_clone_test.go +++ b/command/acl/token/clone/token_clone_test.go @@ -65,7 +65,7 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { } t.Parallel() - req := require.New(t) + require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -86,14 +86,14 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - req.NoError(err) + require.NoError(err) // create a token token, _, err := client.ACL().TokenCreate( &api.ACLToken{Description: "test", Policies: []*api.ACLTokenPolicyLink{{Name: "test-policy"}}}, &api.WriteOptions{Token: "root"}, ) - req.NoError(err) + require.NoError(err) // clone with description t.Run("Description", func(t *testing.T) { @@ -108,27 +108,27 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - req.Empty(ui.ErrorWriter.String()) - req.Equal(code, 0) + require.Empty(ui.ErrorWriter.String()) + require.Equal(code, 0) cloned := parseCloneOutput(t, ui.OutputWriter.String()) - req.Equal("test cloned", cloned.Description) - req.Len(cloned.Policies, 1) + require.Equal("test cloned", cloned.Description) + require.Len(cloned.Policies, 1) apiToken, _, err := client.ACL().TokenRead( cloned.AccessorID, &api.QueryOptions{Token: "root"}, ) - req.NoError(err) - req.NotNil(apiToken) + require.NoError(err) + require.NotNil(apiToken) - req.Equal(cloned.AccessorID, apiToken.AccessorID) - req.Equal(cloned.SecretID, apiToken.SecretID) - req.Equal(cloned.Description, apiToken.Description) - req.Equal(cloned.Local, apiToken.Local) - req.Equal(cloned.Policies, apiToken.Policies) + require.Equal(cloned.AccessorID, apiToken.AccessorID) + require.Equal(cloned.SecretID, apiToken.SecretID) + require.Equal(cloned.Description, apiToken.Description) + require.Equal(cloned.Local, apiToken.Local) + require.Equal(cloned.Policies, apiToken.Policies) }) // clone without description @@ -143,27 +143,27 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - req.Equal(code, 0) - req.Empty(ui.ErrorWriter.String()) + require.Equal(code, 0) + require.Empty(ui.ErrorWriter.String()) cloned := parseCloneOutput(t, ui.OutputWriter.String()) - req.Equal("test", cloned.Description) - req.Len(cloned.Policies, 1) + require.Equal("test", cloned.Description) + require.Len(cloned.Policies, 1) apiToken, _, err := client.ACL().TokenRead( cloned.AccessorID, &api.QueryOptions{Token: "root"}, ) - req.NoError(err) - req.NotNil(apiToken) + require.NoError(err) + require.NotNil(apiToken) - req.Equal(cloned.AccessorID, apiToken.AccessorID) - req.Equal(cloned.SecretID, apiToken.SecretID) - req.Equal(cloned.Description, apiToken.Description) - req.Equal(cloned.Local, apiToken.Local) - req.Equal(cloned.Policies, apiToken.Policies) + require.Equal(cloned.AccessorID, apiToken.AccessorID) + require.Equal(cloned.SecretID, apiToken.SecretID) + require.Equal(cloned.Description, apiToken.Description) + require.Equal(cloned.Local, apiToken.Local) + require.Equal(cloned.Policies, apiToken.Policies) }) } @@ -173,7 +173,7 @@ func TestTokenCloneCommand_JSON(t *testing.T) { } t.Parallel() - req := require.New(t) + require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -194,14 +194,14 @@ func TestTokenCloneCommand_JSON(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - req.NoError(err) + require.NoError(err) // create a token token, _, err := client.ACL().TokenCreate( &api.ACLToken{Description: "test", Policies: []*api.ACLTokenPolicyLink{{Name: "test-policy"}}}, &api.WriteOptions{Token: "root"}, ) - req.NoError(err) + require.NoError(err) // clone with description t.Run("Description", func(t *testing.T) { @@ -217,8 +217,8 @@ func TestTokenCloneCommand_JSON(t *testing.T) { } code := cmd.Run(args) - req.Empty(ui.ErrorWriter.String()) - req.Equal(code, 0) + require.Empty(ui.ErrorWriter.String()) + require.Equal(code, 0) output := ui.OutputWriter.String() var jsonOutput json.RawMessage @@ -239,8 +239,8 @@ func TestTokenCloneCommand_JSON(t *testing.T) { } code := cmd.Run(args) - req.Empty(ui.ErrorWriter.String()) - req.Equal(code, 0) + require.Empty(ui.ErrorWriter.String()) + require.Equal(code, 0) output := ui.OutputWriter.String() var jsonOutput json.RawMessage diff --git a/command/acl/token/update/token_update_test.go b/command/acl/token/update/token_update_test.go index 924e6052c..17fca2e81 100644 --- a/command/acl/token/update/token_update_test.go +++ b/command/acl/token/update/token_update_test.go @@ -158,8 +158,6 @@ func TestTokenUpdateCommand_JSON(t *testing.T) { t.Parallel() assert := assert.New(t) - // Alias because we need to access require package in Retry below - req := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -182,14 +180,14 @@ func TestTokenUpdateCommand_JSON(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - req.NoError(err) + require.NoError(t, err) // create a token token, _, err := client.ACL().TokenCreate( &api.ACLToken{Description: "test"}, &api.WriteOptions{Token: "root"}, ) - req.NoError(err) + require.NoError(t, err) t.Run("update with policy by name", func(t *testing.T) { cmd := New(ui) diff --git a/command/services/config_test.go b/command/services/config_test.go index a90701da2..daf05c6cb 100644 --- a/command/services/config_test.go +++ b/command/services/config_test.go @@ -176,10 +176,10 @@ func TestStructsToAgentService(t *testing.T) { tc := tt t.Run(tc.Name, func(t *testing.T) { t.Parallel() - r := require.New(t) + require := require.New(t) actual, err := serviceToAgentService(tc.Input) - r.NoError(err) - r.Equal(tc.Output, actual) + require.NoError(err) + require.Equal(tc.Output, actual) }) } } From 05c7373a28656338bd974e8e804bdf9d86a502f7 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Thu, 20 Jan 2022 10:46:23 -0600 Subject: [PATCH 282/404] bulk rewrite using this script set -euo pipefail unset CDPATH cd "$(dirname "$0")" for f in $(git grep '\brequire := require\.New(' | cut -d':' -f1 | sort -u); do echo "=== require: $f ===" sed -i '/require := require.New(t)/d' $f # require.XXX(blah) but not require.XXX(tblah) or require.XXX(rblah) sed -i 's/\brequire\.\([a-zA-Z0-9_]*\)(\([^tr]\)/require.\1(t,\2/g' $f # require.XXX(tblah) but not require.XXX(t, blah) sed -i 's/\brequire\.\([a-zA-Z0-9_]*\)(\(t[^,]\)/require.\1(t,\2/g' $f # require.XXX(rblah) but not require.XXX(r, blah) sed -i 's/\brequire\.\([a-zA-Z0-9_]*\)(\(r[^,]\)/require.\1(t,\2/g' $f gofmt -s -w $f done for f in $(git grep '\bassert := assert\.New(' | cut -d':' -f1 | sort -u); do echo "=== assert: $f ===" sed -i '/assert := assert.New(t)/d' $f # assert.XXX(blah) but not assert.XXX(tblah) or assert.XXX(rblah) sed -i 's/\bassert\.\([a-zA-Z0-9_]*\)(\([^tr]\)/assert.\1(t,\2/g' $f # assert.XXX(tblah) but not assert.XXX(t, blah) sed -i 's/\bassert\.\([a-zA-Z0-9_]*\)(\(t[^,]\)/assert.\1(t,\2/g' $f # assert.XXX(rblah) but not assert.XXX(r, blah) sed -i 's/\bassert\.\([a-zA-Z0-9_]*\)(\(r[^,]\)/assert.\1(t,\2/g' $f gofmt -s -w $f done --- acl/policy_test.go | 38 +- agent/agent_endpoint_test.go | 396 ++++++------- agent/agent_test.go | 46 +- agent/cache-types/catalog_services_test.go | 18 +- agent/cache-types/connect_ca_leaf_test.go | 117 ++-- agent/cache-types/connect_ca_root_test.go | 14 +- agent/cache-types/health_services_test.go | 18 +- agent/cache-types/intention_match_test.go | 14 +- agent/cache-types/node_services_test.go | 18 +- agent/cache-types/prepared_query_test.go | 16 +- .../resolved_service_config_test.go | 18 +- agent/cache/cache_test.go | 342 +++++------ agent/cache/watch_test.go | 80 ++- agent/catalog_endpoint_test.go | 52 +- agent/config/deprecated_test.go | 25 +- agent/config_endpoint_test.go | 81 ++- agent/connect/ca/provider_aws_test.go | 19 +- agent/connect/ca/provider_consul_test.go | 159 +++--- agent/connect/ca/provider_vault_test.go | 84 ++- agent/connect/generate_test.go | 35 +- agent/connect/testing_ca_test.go | 24 +- agent/connect_ca_endpoint_test.go | 11 +- agent/consul/acl_test.go | 485 +++++++--------- agent/consul/autopilot_test.go | 3 +- agent/consul/catalog_endpoint_test.go | 124 ++-- agent/consul/config_endpoint_test.go | 244 ++++---- agent/consul/connect_ca_endpoint_test.go | 165 +++--- agent/consul/fsm/commands_oss_test.go | 147 +++-- agent/consul/health_endpoint_test.go | 55 +- agent/consul/intention_endpoint_test.go | 82 ++- agent/consul/internal_endpoint_test.go | 37 +- agent/consul/leader_connect_test.go | 159 +++--- agent/consul/leader_intentions_test.go | 3 +- agent/consul/logging_test.go | 10 +- agent/consul/prepared_query_endpoint_test.go | 55 +- agent/consul/rpc_test.go | 27 +- agent/consul/session_endpoint_test.go | 45 +- agent/consul/state/catalog_test.go | 532 +++++++++--------- agent/consul/state/config_entry_test.go | 120 ++-- agent/consul/state/connect_ca_test.go | 147 +++-- agent/consul/state/intention_test.go | 7 +- agent/consul/state/store_integration_test.go | 63 +-- agent/consul/txn_endpoint_test.go | 38 +- agent/debug/host_test.go | 11 +- agent/health_endpoint_test.go | 48 +- agent/http_test.go | 12 +- agent/local/state_test.go | 100 ++-- agent/prepared_query_endpoint_test.go | 20 +- agent/proxycfg/manager_test.go | 32 +- agent/proxycfg/state_test.go | 5 +- agent/service_manager_test.go | 64 +-- agent/sidecar_service_test.go | 17 +- agent/structs/connect_proxy_config_test.go | 14 +- agent/structs/intention_test.go | 8 +- agent/structs/service_definition_test.go | 7 +- agent/structs/structs_test.go | 15 +- api/agent_test.go | 56 +- api/api_test.go | 8 +- api/catalog_test.go | 8 +- api/config_entry_test.go | 17 +- api/connect_ca_test.go | 5 +- api/status_test.go | 10 +- command/acl/agenttokens/agent_tokens_test.go | 19 +- command/acl/bootstrap/bootstrap_test.go | 18 +- .../acl/policy/create/policy_create_test.go | 14 +- .../acl/policy/delete/policy_delete_test.go | 13 +- command/acl/policy/list/policy_list_test.go | 24 +- command/acl/policy/read/policy_read_test.go | 32 +- .../acl/policy/update/policy_update_test.go | 20 +- command/acl/role/list/role_list_test.go | 22 +- command/acl/token/clone/token_clone_test.go | 62 +- command/acl/token/create/token_create_test.go | 9 +- command/acl/token/delete/token_delete_test.go | 13 +- command/acl/token/list/token_list_test.go | 18 +- command/acl/token/read/token_read_test.go | 20 +- command/acl/token/update/token_update_test.go | 5 +- command/connect/ca/set/connect_ca_set_test.go | 9 +- command/connect/envoy/envoy_test.go | 21 +- command/connect/envoy/exec_test.go | 11 +- command/connect/expose/expose_test.go | 63 +-- command/connect/proxy/flag_upstreams_test.go | 7 +- command/connect/proxy/proxy_test.go | 9 +- command/connect/proxy/register_test.go | 15 +- command/flags/http_test.go | 7 +- command/intention/check/check_test.go | 16 +- command/intention/create/create_test.go | 96 ++-- command/intention/get/get_test.go | 26 +- command/intention/match/match_test.go | 29 +- command/services/config_test.go | 5 +- .../services/deregister/deregister_test.go | 44 +- command/services/register/register_test.go | 59 +- connect/resolver_test.go | 25 +- connect/service_test.go | 31 +- connect/tls_test.go | 62 +- lib/file/atomic_test.go | 9 +- logging/logger_test.go | 64 +-- logging/monitor/monitor_test.go | 26 +- 97 files changed, 2523 insertions(+), 3030 deletions(-) diff --git a/acl/policy_test.go b/acl/policy_test.go index 90854449a..5416eb557 100644 --- a/acl/policy_test.go +++ b/acl/policy_test.go @@ -1516,30 +1516,28 @@ func TestMergePolicies(t *testing.T) { }, } - require := require.New(t) - for _, tcase := range tests { t.Run(tcase.name, func(t *testing.T) { act := MergePolicies(tcase.input) exp := tcase.expected - require.Equal(exp.ACL, act.ACL) - require.Equal(exp.Keyring, act.Keyring) - require.Equal(exp.Operator, act.Operator) - require.Equal(exp.Mesh, act.Mesh) - require.ElementsMatch(exp.Agents, act.Agents) - require.ElementsMatch(exp.AgentPrefixes, act.AgentPrefixes) - require.ElementsMatch(exp.Events, act.Events) - require.ElementsMatch(exp.EventPrefixes, act.EventPrefixes) - require.ElementsMatch(exp.Keys, act.Keys) - require.ElementsMatch(exp.KeyPrefixes, act.KeyPrefixes) - require.ElementsMatch(exp.Nodes, act.Nodes) - require.ElementsMatch(exp.NodePrefixes, act.NodePrefixes) - require.ElementsMatch(exp.PreparedQueries, act.PreparedQueries) - require.ElementsMatch(exp.PreparedQueryPrefixes, act.PreparedQueryPrefixes) - require.ElementsMatch(exp.Services, act.Services) - require.ElementsMatch(exp.ServicePrefixes, act.ServicePrefixes) - require.ElementsMatch(exp.Sessions, act.Sessions) - require.ElementsMatch(exp.SessionPrefixes, act.SessionPrefixes) + require.Equal(t, exp.ACL, act.ACL) + require.Equal(t, exp.Keyring, act.Keyring) + require.Equal(t, exp.Operator, act.Operator) + require.Equal(t, exp.Mesh, act.Mesh) + require.ElementsMatch(t, exp.Agents, act.Agents) + require.ElementsMatch(t, exp.AgentPrefixes, act.AgentPrefixes) + require.ElementsMatch(t, exp.Events, act.Events) + require.ElementsMatch(t, exp.EventPrefixes, act.EventPrefixes) + require.ElementsMatch(t, exp.Keys, act.Keys) + require.ElementsMatch(t, exp.KeyPrefixes, act.KeyPrefixes) + require.ElementsMatch(t, exp.Nodes, act.Nodes) + require.ElementsMatch(t, exp.NodePrefixes, act.NodePrefixes) + require.ElementsMatch(t, exp.PreparedQueries, act.PreparedQueries) + require.ElementsMatch(t, exp.PreparedQueryPrefixes, act.PreparedQueryPrefixes) + require.ElementsMatch(t, exp.Services, act.Services) + require.ElementsMatch(t, exp.ServicePrefixes, act.ServicePrefixes) + require.ElementsMatch(t, exp.Sessions, act.Sessions) + require.ElementsMatch(t, exp.SessionPrefixes, act.SessionPrefixes) }) } diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index e8c8d63fe..8e965db38 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -172,7 +172,6 @@ func TestAgent_Services_ExternalConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -197,10 +196,10 @@ func TestAgent_Services_ExternalConnectProxy(t *testing.T) { err := decoder.Decode(&val) require.NoError(t, err) - assert.Len(val, 1) + assert.Len(t, val, 1) actual := val["db-proxy"] - assert.Equal(api.ServiceKindConnectProxy, actual.Kind) - assert.Equal(srv1.Proxy.ToAPI(), actual.Proxy) + assert.Equal(t, api.ServiceKindConnectProxy, actual.Kind) + assert.Equal(t, srv1.Proxy.ToAPI(), actual.Proxy) } // Thie tests that a sidecar-registered service is returned as expected. @@ -211,8 +210,6 @@ func TestAgent_Services_Sidecar(t *testing.T) { t.Parallel() - require := require.New(t) - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -241,13 +238,13 @@ func TestAgent_Services_Sidecar(t *testing.T) { decoder := json.NewDecoder(resp.Body) var val map[string]*api.AgentService err := decoder.Decode(&val) - require.NoError(err) + require.NoError(t, err) - assert.Len(val, 1) + assert.Len(t, val, 1) actual := val["db-sidecar-proxy"] - require.NotNil(actual) - assert.Equal(api.ServiceKindConnectProxy, actual.Kind) - assert.Equal(srv1.Proxy.ToAPI(), actual.Proxy) + require.NotNil(t, actual) + assert.Equal(t, api.ServiceKindConnectProxy, actual.Kind) + assert.Equal(t, srv1.Proxy.ToAPI(), actual.Proxy) // Sanity check that LocalRegisteredAsSidecar is not in the output (assuming // JSON encoding). Right now this is not the case because the services @@ -255,8 +252,8 @@ func TestAgent_Services_Sidecar(t *testing.T) { // but this test serves as a regression test incase we change the endpoint to // return the internal struct later and accidentally expose some "internal" // state. - assert.NotContains(resp.Body.String(), "LocallyRegisteredAsSidecar") - assert.NotContains(resp.Body.String(), "locally_registered_as_sidecar") + assert.NotContains(t, resp.Body.String(), "LocallyRegisteredAsSidecar") + assert.NotContains(t, resp.Body.String(), "locally_registered_as_sidecar") } // This tests that a mesh gateway service is returned as expected. @@ -393,7 +390,6 @@ func TestAgent_Services_ACLFilter(t *testing.T) { }) t.Run("limited token", func(t *testing.T) { - require := require.New(t) token := testCreateToken(t, a, ` service "web" { @@ -410,8 +406,8 @@ func TestAgent_Services_ACLFilter(t *testing.T) { if err := dec.Decode(&val); err != nil { t.Fatalf("Err: %v", err) } - require.Len(val, 1) - require.NotEmpty(resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) + require.Len(t, val, 1) + require.NotEmpty(t, resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) }) t.Run("root token", func(t *testing.T) { @@ -694,15 +690,13 @@ func TestAgent_Service(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - assert := assert.New(t) - require := require.New(t) // Register the basic service to ensure it's in a known state to start. { req, _ := http.NewRequest("PUT", "/v1/agent/service/register?token=root", jsonReader(sidecarProxy)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code, "body: %s", resp.Body.String()) + require.Equal(t, 200, resp.Code, "body: %s", resp.Body.String()) } req, _ := http.NewRequest("GET", tt.url, nil) @@ -723,16 +717,16 @@ func TestAgent_Service(t *testing.T) { elapsed := time.Since(start) if tt.wantErr != "" { - require.Contains(strings.ToLower(resp.Body.String()), strings.ToLower(tt.wantErr)) + require.Contains(t, strings.ToLower(resp.Body.String()), strings.ToLower(tt.wantErr)) } if tt.wantCode != 0 { - require.Equal(tt.wantCode, resp.Code, "body: %s", resp.Body.String()) + require.Equal(t, tt.wantCode, resp.Code, "body: %s", resp.Body.String()) } if tt.wantWait != 0 { - assert.True(elapsed >= tt.wantWait, "should have waited at least %s, "+ + assert.True(t, elapsed >= tt.wantWait, "should have waited at least %s, "+ "took %s", tt.wantWait, elapsed) } else { - assert.True(elapsed < 10*time.Millisecond, "should not have waited, "+ + assert.True(t, elapsed < 10*time.Millisecond, "should not have waited, "+ "took %s", elapsed) } @@ -740,10 +734,10 @@ func TestAgent_Service(t *testing.T) { dec := json.NewDecoder(resp.Body) val := &api.AgentService{} err := dec.Decode(&val) - require.NoError(err) + require.NoError(t, err) - assert.Equal(tt.wantResp, val) - assert.Equal(tt.wantResp.ContentHash, resp.Header().Get("X-Consul-ContentHash")) + assert.Equal(t, tt.wantResp, val) + assert.Equal(t, tt.wantResp.ContentHash, resp.Header().Get("X-Consul-ContentHash")) } }) } @@ -1390,7 +1384,6 @@ func TestAgent_Checks_ACLFilter(t *testing.T) { }) t.Run("limited token", func(t *testing.T) { - require := require.New(t) token := testCreateToken(t, a, fmt.Sprintf(` service "web" { @@ -1410,8 +1403,8 @@ func TestAgent_Checks_ACLFilter(t *testing.T) { if err := dec.Decode(&val); err != nil { t.Fatalf("Err: %v", err) } - require.Len(val, 1) - require.NotEmpty(resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) + require.Len(t, val, 1) + require.NotEmpty(t, resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) }) t.Run("root token", func(t *testing.T) { @@ -2008,7 +2001,6 @@ func TestAgent_Members_ACLFilter(t *testing.T) { }) t.Run("limited token", func(t *testing.T) { - require := require.New(t) token := testCreateToken(t, a, fmt.Sprintf(` node "%s" { @@ -2025,8 +2017,8 @@ func TestAgent_Members_ACLFilter(t *testing.T) { if err := dec.Decode(&val); err != nil { t.Fatalf("Err: %v", err) } - require.Len(val, 1) - require.NotEmpty(resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) + require.Len(t, val, 1) + require.NotEmpty(t, resp.Header().Get("X-Consul-Results-Filtered-By-ACLs")) }) t.Run("root token", func(t *testing.T) { @@ -4364,8 +4356,6 @@ func testAgent_RegisterServiceDeregisterService_Sidecar(t *testing.T, extraHCL s for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - assert := assert.New(t) - require := require.New(t) // Constrain auto ports to 1 available to make it deterministic hcl := `ports { @@ -4382,10 +4372,10 @@ func testAgent_RegisterServiceDeregisterService_Sidecar(t *testing.T, extraHCL s testrpc.WaitForLeader(t, a.RPC, "dc1") if tt.preRegister != nil { - require.NoError(a.addServiceFromSource(tt.preRegister, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(tt.preRegister, nil, false, "", ConfigSourceLocal)) } if tt.preRegister2 != nil { - require.NoError(a.addServiceFromSource(tt.preRegister2, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(tt.preRegister2, nil, false, "", ConfigSourceLocal)) } // Create an ACL token with require policy @@ -4400,10 +4390,10 @@ func testAgent_RegisterServiceDeregisterService_Sidecar(t *testing.T, extraHCL s resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) if tt.wantErr != "" { - require.Contains(strings.ToLower(resp.Body.String()), strings.ToLower(tt.wantErr)) + require.Contains(t, strings.ToLower(resp.Body.String()), strings.ToLower(tt.wantErr)) return } - require.Equal(200, resp.Code, "request failed with body: %s", + require.Equal(t, 200, resp.Code, "request failed with body: %s", resp.Body.String()) // Sanity the target service registration @@ -4412,8 +4402,8 @@ func testAgent_RegisterServiceDeregisterService_Sidecar(t *testing.T, extraHCL s // Parse the expected definition into a ServiceDefinition var sd structs.ServiceDefinition err := json.Unmarshal([]byte(tt.json), &sd) - require.NoError(err) - require.NotEmpty(sd.Name) + require.NoError(t, err) + require.NotEmpty(t, sd.Name) svcID := sd.ID if svcID == "" { @@ -4421,26 +4411,26 @@ func testAgent_RegisterServiceDeregisterService_Sidecar(t *testing.T, extraHCL s } sid := structs.NewServiceID(svcID, nil) svc, ok := svcs[sid] - require.True(ok, "has service "+sid.String()) - assert.Equal(sd.Name, svc.Service) - assert.Equal(sd.Port, svc.Port) + require.True(t, ok, "has service "+sid.String()) + assert.Equal(t, sd.Name, svc.Service) + assert.Equal(t, sd.Port, svc.Port) // Ensure that the actual registered service _doesn't_ still have it's // sidecar info since it's duplicate and we don't want that synced up to // the catalog or included in responses particularly - it's just // registration syntax sugar. - assert.Nil(svc.Connect.SidecarService) + assert.Nil(t, svc.Connect.SidecarService) if tt.wantNS == nil { // Sanity check that there was no service registered, we rely on there // being no services at start of test so we can just use the count. - assert.Len(svcs, 1, "should be no sidecar registered") + assert.Len(t, svcs, 1, "should be no sidecar registered") return } // Ensure sidecar svc, ok = svcs[structs.NewServiceID(tt.wantNS.ID, nil)] - require.True(ok, "no sidecar registered at "+tt.wantNS.ID) - assert.Equal(tt.wantNS, svc) + require.True(t, ok, "no sidecar registered at "+tt.wantNS.ID) + assert.Equal(t, tt.wantNS, svc) if tt.assertStateFn != nil { tt.assertStateFn(t, a.State) @@ -4453,14 +4443,14 @@ func testAgent_RegisterServiceDeregisterService_Sidecar(t *testing.T, extraHCL s "/v1/agent/service/deregister/"+svcID+"?token="+token, nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusOK, resp.Code) + require.Equal(t, http.StatusOK, resp.Code) svcs := a.State.AllServices() _, ok = svcs[structs.NewServiceID(tt.wantNS.ID, nil)] if tt.wantSidecarIDLeftAfterDereg { - require.True(ok, "removed non-sidecar service at "+tt.wantNS.ID) + require.True(t, ok, "removed non-sidecar service at "+tt.wantNS.ID) } else { - require.False(ok, "sidecar not deregistered with service "+svcID) + require.False(t, ok, "sidecar not deregistered with service "+svcID) } } }) @@ -4488,7 +4478,6 @@ func TestAgent_RegisterService_UnmanagedConnectProxyInvalid(t *testing.T) { func testAgent_RegisterService_UnmanagedConnectProxyInvalid(t *testing.T, extraHCL string) { t.Helper() - assert := assert.New(t) a := NewTestAgent(t, extraHCL) defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -4507,11 +4496,11 @@ func testAgent_RegisterService_UnmanagedConnectProxyInvalid(t *testing.T, extraH req, _ := http.NewRequest("PUT", "/v1/agent/service/register?token=abc123", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(http.StatusBadRequest, resp.Code) - assert.Contains(resp.Body.String(), "Port") + assert.Equal(t, http.StatusBadRequest, resp.Code) + assert.Contains(t, resp.Body.String(), "Port") // Ensure the service doesn't exist - assert.Nil(a.State.Service(structs.NewServiceID("connect-proxy", nil))) + assert.Nil(t, a.State.Service(structs.NewServiceID("connect-proxy", nil))) } // Tests agent registration of a service that is connect native. @@ -4533,7 +4522,6 @@ func TestAgent_RegisterService_ConnectNative(t *testing.T) { func testAgent_RegisterService_ConnectNative(t *testing.T, extraHCL string) { t.Helper() - assert := assert.New(t) a := NewTestAgent(t, extraHCL) defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -4555,12 +4543,12 @@ func testAgent_RegisterService_ConnectNative(t *testing.T, extraHCL string) { req, _ := http.NewRequest("PUT", "/v1/agent/service/register", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(http.StatusOK, resp.Code) + assert.Equal(t, http.StatusOK, resp.Code) // Ensure the service svc := a.State.Service(structs.NewServiceID("web", nil)) require.NotNil(t, svc) - assert.True(svc.Connect.Native) + assert.True(t, svc.Connect.Native) } func TestAgent_RegisterService_ScriptCheck_ExecDisable(t *testing.T) { @@ -5708,7 +5696,6 @@ func TestAgentConnectCARoots_empty(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "connect { enabled = false }") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -5716,8 +5703,8 @@ func TestAgentConnectCARoots_empty(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/agent/connect/ca/roots", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusInternalServerError, resp.Code) - require.Contains(resp.Body.String(), "Connect must be enabled") + require.Equal(t, http.StatusInternalServerError, resp.Code) + require.Contains(t, resp.Body.String(), "Connect must be enabled") } func TestAgentConnectCARoots_list(t *testing.T) { @@ -5727,8 +5714,6 @@ func TestAgentConnectCARoots_list(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -5744,22 +5729,22 @@ func TestAgentConnectCARoots_list(t *testing.T) { dec := json.NewDecoder(resp.Body) value := &structs.IndexedCARoots{} - require.NoError(dec.Decode(value)) + require.NoError(t, dec.Decode(value)) - assert.Equal(value.ActiveRootID, ca2.ID) + assert.Equal(t, value.ActiveRootID, ca2.ID) // Would like to assert that it's the same as the TestAgent domain but the // only way to access that state via this package is by RPC to the server // implementation running in TestAgent which is more or less a tautology. - assert.NotEmpty(value.TrustDomain) - assert.Len(value.Roots, 2) + assert.NotEmpty(t, value.TrustDomain) + assert.Len(t, value.Roots, 2) // We should never have the secret information for _, r := range value.Roots { - assert.Equal("", r.SigningCert) - assert.Equal("", r.SigningKey) + assert.Equal(t, "", r.SigningCert) + assert.Equal(t, "", r.SigningKey) } - assert.Equal("MISS", resp.Header().Get("X-Cache")) + assert.Equal(t, "MISS", resp.Header().Get("X-Cache")) // Test caching { @@ -5769,11 +5754,11 @@ func TestAgentConnectCARoots_list(t *testing.T) { dec := json.NewDecoder(resp2.Body) value2 := &structs.IndexedCARoots{} - require.NoError(dec.Decode(value2)) - assert.Equal(value, value2) + require.NoError(t, dec.Decode(value2)) + assert.Equal(t, value, value2) // Should cache hit this time and not make request - assert.Equal("HIT", resp2.Header().Get("X-Cache")) + assert.Equal(t, "HIT", resp2.Header().Get("X-Cache")) } // Test that caching is updated in the background @@ -5788,7 +5773,7 @@ func TestAgentConnectCARoots_list(t *testing.T) { dec := json.NewDecoder(resp.Body) value := &structs.IndexedCARoots{} - require.NoError(dec.Decode(value)) + require.NoError(t, dec.Decode(value)) if ca.ID != value.ActiveRootID { r.Fatalf("%s != %s", ca.ID, value.ActiveRootID) } @@ -5815,7 +5800,6 @@ func TestAgentConnectCALeafCert_aclDefaultDeny(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, TestACLConfig()) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -5837,13 +5821,13 @@ func TestAgentConnectCALeafCert_aclDefaultDeny(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/agent/service/register?token=root", jsonReader(reg)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code, "body: %s", resp.Body.String()) + require.Equal(t, 200, resp.Code, "body: %s", resp.Body.String()) } req, _ := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusForbidden, resp.Code) + require.Equal(t, http.StatusForbidden, resp.Code) } func TestAgentConnectCALeafCert_aclServiceWrite(t *testing.T) { @@ -5853,7 +5837,6 @@ func TestAgentConnectCALeafCert_aclServiceWrite(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, TestACLConfig()) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -5875,7 +5858,7 @@ func TestAgentConnectCALeafCert_aclServiceWrite(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/agent/service/register?token=root", jsonReader(reg)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code, "body: %s", resp.Body.String()) + require.Equal(t, 200, resp.Code, "body: %s", resp.Body.String()) } token := createACLTokenWithServicePolicy(t, a.srv, "write") @@ -5887,8 +5870,8 @@ func TestAgentConnectCALeafCert_aclServiceWrite(t *testing.T) { // Get the issued cert dec := json.NewDecoder(resp.Body) value := &structs.IssuedCert{} - require.NoError(dec.Decode(value)) - require.NotNil(value) + require.NoError(t, dec.Decode(value)) + require.NotNil(t, value) } func createACLTokenWithServicePolicy(t *testing.T, srv *HTTPHandlers, policy string) string { @@ -5924,7 +5907,6 @@ func TestAgentConnectCALeafCert_aclServiceReadDeny(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, TestACLConfig()) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -5946,7 +5928,7 @@ func TestAgentConnectCALeafCert_aclServiceReadDeny(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/agent/service/register?token=root", jsonReader(reg)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code, "body: %s", resp.Body.String()) + require.Equal(t, 200, resp.Code, "body: %s", resp.Body.String()) } token := createACLTokenWithServicePolicy(t, a.srv, "read") @@ -5954,7 +5936,7 @@ func TestAgentConnectCALeafCert_aclServiceReadDeny(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test?token="+token, nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusForbidden, resp.Code) + require.Equal(t, http.StatusForbidden, resp.Code) } func TestAgentConnectCALeafCert_good(t *testing.T) { @@ -5964,8 +5946,6 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := StartTestAgent(t, TestAgent{Overrides: ` connect { test_ca_leaf_root_change_spread = "1ns" @@ -5993,7 +5973,7 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/agent/service/register", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - if !assert.Equal(200, resp.Code) { + if !assert.Equal(t, 200, resp.Code) { t.Log("Body: ", resp.Body.String()) } } @@ -6002,19 +5982,19 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) // Get the issued cert dec := json.NewDecoder(resp.Body) issued := &structs.IssuedCert{} - require.NoError(dec.Decode(issued)) + require.NoError(t, dec.Decode(issued)) // Verify that the cert is signed by the CA requireLeafValidUnderCA(t, issued, ca1) // Verify blocking index - assert.True(issued.ModifyIndex > 0) - assert.Equal(fmt.Sprintf("%d", issued.ModifyIndex), + assert.True(t, issued.ModifyIndex > 0) + assert.Equal(t, fmt.Sprintf("%d", issued.ModifyIndex), resp.Header().Get("X-Consul-Index")) index := resp.Header().Get("X-Consul-Index") @@ -6026,8 +6006,8 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { a.srv.h.ServeHTTP(resp, req) dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) - require.Equal(issued, issued2) + require.NoError(t, dec.Decode(issued2)) + require.Equal(t, issued, issued2) } // Set a new CA @@ -6040,26 +6020,26 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { a.srv.h.ServeHTTP(resp, req) dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) - require.NotEqual(issued.CertPEM, issued2.CertPEM) - require.NotEqual(issued.PrivateKeyPEM, issued2.PrivateKeyPEM) + require.NoError(t, dec.Decode(issued2)) + require.NotEqual(t, issued.CertPEM, issued2.CertPEM) + require.NotEqual(t, issued.PrivateKeyPEM, issued2.PrivateKeyPEM) // Verify that the cert is signed by the new CA requireLeafValidUnderCA(t, issued2, ca2) // Should not be a cache hit! The data was updated in response to the blocking // query being made. - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) } t.Run("test non-blocking queries update leaf cert", func(t *testing.T) { resp := httptest.NewRecorder() obj, err := a.srv.AgentConnectCALeafCert(resp, req) - require.NoError(err) + require.NoError(t, err) // Get the issued cert issued, ok := obj.(*structs.IssuedCert) - assert.True(ok) + assert.True(t, ok) // Verify that the cert is signed by the CA requireLeafValidUnderCA(t, issued, ca2) @@ -6071,18 +6051,18 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { resp := httptest.NewRecorder() req, err := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test", nil) - require.NoError(err) + require.NoError(t, err) obj, err = a.srv.AgentConnectCALeafCert(resp, req) - require.NoError(err) + require.NoError(t, err) issued2 := obj.(*structs.IssuedCert) - require.NotEqual(issued.CertPEM, issued2.CertPEM) - require.NotEqual(issued.PrivateKeyPEM, issued2.PrivateKeyPEM) + require.NotEqual(t, issued.CertPEM, issued2.CertPEM) + require.NotEqual(t, issued.PrivateKeyPEM, issued2.PrivateKeyPEM) // Verify that the cert is signed by the new CA requireLeafValidUnderCA(t, issued2, ca3) // Should not be a cache hit! - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) } // Test caching for the leaf cert @@ -6093,8 +6073,8 @@ func TestAgentConnectCALeafCert_good(t *testing.T) { // Fetch it again resp := httptest.NewRecorder() obj2, err := a.srv.AgentConnectCALeafCert(resp, req) - require.NoError(err) - require.Equal(obj, obj2) + require.NoError(t, err) + require.Equal(t, obj, obj2) } } }) @@ -6109,8 +6089,6 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := StartTestAgent(t, TestAgent{Overrides: ` connect { test_ca_leaf_root_change_spread = "1ns" @@ -6138,7 +6116,7 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/catalog/register", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - if !assert.Equal(200, resp.Code) { + if !assert.Equal(t, 200, resp.Code) { t.Log("Body: ", resp.Body.String()) } } @@ -6147,19 +6125,19 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) // Get the issued cert dec := json.NewDecoder(resp.Body) issued := &structs.IssuedCert{} - require.NoError(dec.Decode(issued)) + require.NoError(t, dec.Decode(issued)) // Verify that the cert is signed by the CA requireLeafValidUnderCA(t, issued, ca1) // Verify blocking index - assert.True(issued.ModifyIndex > 0) - assert.Equal(fmt.Sprintf("%d", issued.ModifyIndex), + assert.True(t, issued.ModifyIndex > 0) + assert.Equal(t, fmt.Sprintf("%d", issued.ModifyIndex), resp.Header().Get("X-Consul-Index")) // Test caching @@ -6169,8 +6147,8 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { a.srv.h.ServeHTTP(resp, req) dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) - require.Equal(issued, issued2) + require.NoError(t, dec.Decode(issued2)) + require.Equal(t, issued, issued2) } // Test Blocking - see https://github.com/hashicorp/consul/issues/4462 @@ -6186,7 +6164,7 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { select { case <-time.After(500 * time.Millisecond): - require.FailNow("Shouldn't block for this long - not respecting wait parameter in the query") + require.FailNow(t, "Shouldn't block for this long - not respecting wait parameter in the query") case <-doneCh: } @@ -6205,7 +6183,7 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) + require.NoError(t, dec.Decode(issued2)) if issued.CertPEM == issued2.CertPEM { r.Fatalf("leaf has not updated") } @@ -6219,7 +6197,7 @@ func TestAgentConnectCALeafCert_goodNotLocal(t *testing.T) { // Verify that the cert is signed by the new CA requireLeafValidUnderCA(t, issued2, ca) - require.NotEqual(issued, issued2) + require.NotEqual(t, issued, issued2) }) } } @@ -6236,8 +6214,6 @@ func TestAgentConnectCALeafCert_Vault_doesNotChurnLeafCertsAtIdle(t *testing.T) testVault := ca.NewTestVaultServer(t) defer testVault.Stop() - assert := assert.New(t) - require := require.New(t) a := StartTestAgent(t, TestAgent{Overrides: fmt.Sprintf(` connect { test_ca_leaf_root_change_spread = "1ns" @@ -6258,14 +6234,14 @@ func TestAgentConnectCALeafCert_Vault_doesNotChurnLeafCertsAtIdle(t *testing.T) { args := &structs.DCSpecificRequest{Datacenter: "dc1"} var reply structs.IndexedCARoots - require.NoError(a.RPC("ConnectCA.Roots", args, &reply)) + require.NoError(t, a.RPC("ConnectCA.Roots", args, &reply)) for _, r := range reply.Roots { if r.ID == reply.ActiveRootID { ca1 = r break } } - require.NotNil(ca1) + require.NotNil(t, ca1) } { @@ -6282,7 +6258,7 @@ func TestAgentConnectCALeafCert_Vault_doesNotChurnLeafCertsAtIdle(t *testing.T) req, _ := http.NewRequest("PUT", "/v1/agent/service/register", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - if !assert.Equal(200, resp.Code) { + if !assert.Equal(t, 200, resp.Code) { t.Log("Body: ", resp.Body.String()) } } @@ -6291,19 +6267,19 @@ func TestAgentConnectCALeafCert_Vault_doesNotChurnLeafCertsAtIdle(t *testing.T) req, _ := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test", nil) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) // Get the issued cert dec := json.NewDecoder(resp.Body) issued := &structs.IssuedCert{} - require.NoError(dec.Decode(issued)) + require.NoError(t, dec.Decode(issued)) // Verify that the cert is signed by the CA requireLeafValidUnderCA(t, issued, ca1) // Verify blocking index - assert.True(issued.ModifyIndex > 0) - assert.Equal(fmt.Sprintf("%d", issued.ModifyIndex), + assert.True(t, issued.ModifyIndex > 0) + assert.Equal(t, fmt.Sprintf("%d", issued.ModifyIndex), resp.Header().Get("X-Consul-Index")) // Test caching @@ -6313,8 +6289,8 @@ func TestAgentConnectCALeafCert_Vault_doesNotChurnLeafCertsAtIdle(t *testing.T) a.srv.h.ServeHTTP(resp, req) dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) - require.Equal(issued, issued2) + require.NoError(t, dec.Decode(issued2)) + require.Equal(t, issued, issued2) } // Test that we aren't churning leaves for no reason at idle. @@ -6359,9 +6335,6 @@ func TestAgentConnectCALeafCert_secondaryDC_good(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) - a1 := StartTestAgent(t, TestAgent{Name: "dc1", HCL: ` datacenter = "dc1" primary_datacenter = "dc1" @@ -6387,7 +6360,7 @@ func TestAgentConnectCALeafCert_secondaryDC_good(t *testing.T) { // Wait for the WAN join. addr := fmt.Sprintf("127.0.0.1:%d", a1.Config.SerfPortWAN) _, err := a2.JoinWAN([]string{addr}) - require.NoError(err) + require.NoError(t, err) testrpc.WaitForLeader(t, a1.RPC, "dc1") testrpc.WaitForLeader(t, a2.RPC, "dc2") @@ -6419,30 +6392,30 @@ func TestAgentConnectCALeafCert_secondaryDC_good(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/agent/service/register", jsonReader(args)) resp := httptest.NewRecorder() a2.srv.h.ServeHTTP(resp, req) - if !assert.Equal(200, resp.Code) { + if !assert.Equal(t, 200, resp.Code) { t.Log("Body: ", resp.Body.String()) } } // List req, err := http.NewRequest("GET", "/v1/agent/connect/ca/leaf/test", nil) - require.NoError(err) + require.NoError(t, err) resp := httptest.NewRecorder() a2.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusOK, resp.Code) - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, http.StatusOK, resp.Code) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) // Get the issued cert dec := json.NewDecoder(resp.Body) issued := &structs.IssuedCert{} - require.NoError(dec.Decode(issued)) + require.NoError(t, dec.Decode(issued)) // Verify that the cert is signed by the CA requireLeafValidUnderCA(t, issued, dc1_ca1) // Verify blocking index - assert.True(issued.ModifyIndex > 0) - assert.Equal(fmt.Sprintf("%d", issued.ModifyIndex), + assert.True(t, issued.ModifyIndex > 0) + assert.Equal(t, fmt.Sprintf("%d", issued.ModifyIndex), resp.Header().Get("X-Consul-Index")) // Test caching @@ -6452,8 +6425,8 @@ func TestAgentConnectCALeafCert_secondaryDC_good(t *testing.T) { a2.srv.h.ServeHTTP(resp, req) dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) - require.Equal(issued, issued2) + require.NoError(t, dec.Decode(issued2)) + require.Equal(t, issued, issued2) } // Test that we aren't churning leaves for no reason at idle. @@ -6508,11 +6481,11 @@ func TestAgentConnectCALeafCert_secondaryDC_good(t *testing.T) { // Try and sign again (note no index/wait arg since cache should update in // background even if we aren't actively blocking) a2.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusOK, resp.Code) + require.Equal(t, http.StatusOK, resp.Code) dec := json.NewDecoder(resp.Body) issued2 := &structs.IssuedCert{} - require.NoError(dec.Decode(issued2)) + require.NoError(t, dec.Decode(issued2)) if issued.CertPEM == issued2.CertPEM { r.Fatalf("leaf has not updated") } @@ -6526,7 +6499,7 @@ func TestAgentConnectCALeafCert_secondaryDC_good(t *testing.T) { // Verify that the cert is signed by the new CA requireLeafValidUnderCA(t, issued2, dc1_ca2) - require.NotEqual(issued, issued2) + require.NotEqual(t, issued, issued2) }) } @@ -6584,8 +6557,6 @@ func TestAgentConnectAuthorize_badBody(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6594,8 +6565,8 @@ func TestAgentConnectAuthorize_badBody(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusBadRequest, resp.Code) - assert.Contains(resp.Body.String(), "decode failed") + require.Equal(t, http.StatusBadRequest, resp.Code) + assert.Contains(t, resp.Body.String(), "decode failed") } func TestAgentConnectAuthorize_noTarget(t *testing.T) { @@ -6605,8 +6576,6 @@ func TestAgentConnectAuthorize_noTarget(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6615,8 +6584,8 @@ func TestAgentConnectAuthorize_noTarget(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusBadRequest, resp.Code) - assert.Contains(resp.Body.String(), "Target service must be specified") + require.Equal(t, http.StatusBadRequest, resp.Code) + assert.Contains(t, resp.Body.String(), "Target service must be specified") } // Client ID is not in the valid URI format @@ -6627,8 +6596,6 @@ func TestAgentConnectAuthorize_idInvalidFormat(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6640,8 +6607,8 @@ func TestAgentConnectAuthorize_idInvalidFormat(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusBadRequest, resp.Code) - assert.Contains(resp.Body.String(), "ClientCertURI not a valid Connect identifier") + require.Equal(t, http.StatusBadRequest, resp.Code) + assert.Contains(t, resp.Body.String(), "ClientCertURI not a valid Connect identifier") } // Client ID is a valid URI but its not a service URI @@ -6652,8 +6619,6 @@ func TestAgentConnectAuthorize_idNotService(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6665,8 +6630,8 @@ func TestAgentConnectAuthorize_idNotService(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(http.StatusBadRequest, resp.Code) - assert.Contains(resp.Body.String(), "ClientCertURI not a valid Service identifier") + require.Equal(t, http.StatusBadRequest, resp.Code) + assert.Contains(t, resp.Body.String(), "ClientCertURI not a valid Service identifier") } // Test when there is an intention allowing the connection @@ -6677,7 +6642,6 @@ func TestAgentConnectAuthorize_allow(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6698,7 +6662,7 @@ func TestAgentConnectAuthorize_allow(t *testing.T) { req.Intention.DestinationName = target req.Intention.Action = structs.IntentionActionAllow - require.Nil(a.RPC("Intention.Apply", &req, &ixnId)) + require.Nil(t, a.RPC("Intention.Apply", &req, &ixnId)) } args := &structs.ConnectAuthorizeRequest{ @@ -6708,30 +6672,30 @@ func TestAgentConnectAuthorize_allow(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code) - require.Equal("MISS", resp.Header().Get("X-Cache")) + require.Equal(t, 200, resp.Code) + require.Equal(t, "MISS", resp.Header().Get("X-Cache")) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} - require.NoError(dec.Decode(obj)) - require.True(obj.Authorized) - require.Contains(obj.Reason, "Matched") + require.NoError(t, dec.Decode(obj)) + require.True(t, obj.Authorized) + require.Contains(t, obj.Reason, "Matched") // Make the request again { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code) + require.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} - require.NoError(dec.Decode(obj)) - require.True(obj.Authorized) - require.Contains(obj.Reason, "Matched") + require.NoError(t, dec.Decode(obj)) + require.True(t, obj.Authorized) + require.Contains(t, obj.Reason, "Matched") // That should've been a cache hit. - require.Equal("HIT", resp.Header().Get("X-Cache")) + require.Equal(t, "HIT", resp.Header().Get("X-Cache")) } // Change the intention @@ -6748,7 +6712,7 @@ func TestAgentConnectAuthorize_allow(t *testing.T) { req.Intention.DestinationName = target req.Intention.Action = structs.IntentionActionDeny - require.Nil(a.RPC("Intention.Apply", &req, &ixnId)) + require.Nil(t, a.RPC("Intention.Apply", &req, &ixnId)) } // Short sleep lets the cache background refresh happen @@ -6759,17 +6723,17 @@ func TestAgentConnectAuthorize_allow(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - require.Equal(200, resp.Code) + require.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} - require.NoError(dec.Decode(obj)) - require.False(obj.Authorized) - require.Contains(obj.Reason, "Matched") + require.NoError(t, dec.Decode(obj)) + require.False(t, obj.Authorized) + require.Contains(t, obj.Reason, "Matched") // That should've been a cache hit, too, since it updated in the // background. - require.Equal("HIT", resp.Header().Get("X-Cache")) + require.Equal(t, "HIT", resp.Header().Get("X-Cache")) } } @@ -6781,7 +6745,6 @@ func TestAgentConnectAuthorize_deny(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6802,7 +6765,7 @@ func TestAgentConnectAuthorize_deny(t *testing.T) { req.Intention.Action = structs.IntentionActionDeny var reply string - assert.Nil(a.RPC("Intention.Apply", &req, &reply)) + assert.Nil(t, a.RPC("Intention.Apply", &req, &reply)) } args := &structs.ConnectAuthorizeRequest{ @@ -6812,13 +6775,13 @@ func TestAgentConnectAuthorize_deny(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(200, resp.Code) + assert.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} require.NoError(t, dec.Decode(obj)) - assert.False(obj.Authorized) - assert.Contains(obj.Reason, "Matched") + assert.False(t, obj.Authorized) + assert.Contains(t, obj.Reason, "Matched") } // Test when there is an intention allowing service with a different trust @@ -6835,8 +6798,6 @@ func TestAgentConnectAuthorize_allowTrustDomain(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -6857,7 +6818,7 @@ func TestAgentConnectAuthorize_allowTrustDomain(t *testing.T) { req.Intention.Action = structs.IntentionActionAllow var reply string - require.NoError(a.RPC("Intention.Apply", &req, &reply)) + require.NoError(t, a.RPC("Intention.Apply", &req, &reply)) } { @@ -6868,13 +6829,13 @@ func TestAgentConnectAuthorize_allowTrustDomain(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(200, resp.Code) + assert.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} - require.NoError(dec.Decode(obj)) - require.True(obj.Authorized) - require.Contains(obj.Reason, "Matched") + require.NoError(t, dec.Decode(obj)) + require.True(t, obj.Authorized) + require.Contains(t, obj.Reason, "Matched") } } @@ -6885,8 +6846,6 @@ func TestAgentConnectAuthorize_denyWildcard(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -6908,7 +6867,7 @@ func TestAgentConnectAuthorize_denyWildcard(t *testing.T) { req.Intention.Action = structs.IntentionActionDeny var reply string - require.NoError(a.RPC("Intention.Apply", &req, &reply)) + require.NoError(t, a.RPC("Intention.Apply", &req, &reply)) } { // Allow web to DB @@ -6924,7 +6883,7 @@ func TestAgentConnectAuthorize_denyWildcard(t *testing.T) { req.Intention.Action = structs.IntentionActionAllow var reply string - assert.Nil(a.RPC("Intention.Apply", &req, &reply)) + assert.Nil(t, a.RPC("Intention.Apply", &req, &reply)) } // Web should be allowed @@ -6936,13 +6895,13 @@ func TestAgentConnectAuthorize_denyWildcard(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(200, resp.Code) + assert.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} - require.NoError(dec.Decode(obj)) - assert.True(obj.Authorized) - assert.Contains(obj.Reason, "Matched") + require.NoError(t, dec.Decode(obj)) + assert.True(t, obj.Authorized) + assert.Contains(t, obj.Reason, "Matched") } // API should be denied @@ -6954,13 +6913,13 @@ func TestAgentConnectAuthorize_denyWildcard(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(200, resp.Code) + assert.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} - require.NoError(dec.Decode(obj)) - assert.False(obj.Authorized) - assert.Contains(obj.Reason, "Matched") + require.NoError(t, dec.Decode(obj)) + assert.False(t, obj.Authorized) + assert.Contains(t, obj.Reason, "Matched") } } @@ -6972,7 +6931,6 @@ func TestAgentConnectAuthorize_serviceWrite(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, TestACLConfig()) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -6988,7 +6946,7 @@ func TestAgentConnectAuthorize_serviceWrite(t *testing.T) { resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(http.StatusForbidden, resp.Code) + assert.Equal(t, http.StatusForbidden, resp.Code) } // Test when no intentions match w/ a default deny policy @@ -6999,7 +6957,6 @@ func TestAgentConnectAuthorize_defaultDeny(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, TestACLConfig()) defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -7011,13 +6968,13 @@ func TestAgentConnectAuthorize_defaultDeny(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize?token=root", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(200, resp.Code) + assert.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} require.NoError(t, dec.Decode(obj)) - assert.False(obj.Authorized) - assert.Contains(obj.Reason, "Default behavior") + assert.False(t, obj.Authorized) + assert.Contains(t, obj.Reason, "Default behavior") } // Test when no intentions match w/ a default allow policy @@ -7028,7 +6985,6 @@ func TestAgentConnectAuthorize_defaultAllow(t *testing.T) { t.Parallel() - assert := assert.New(t) dc1 := "dc1" a := NewTestAgent(t, ` primary_datacenter = "`+dc1+`" @@ -7054,13 +7010,13 @@ func TestAgentConnectAuthorize_defaultAllow(t *testing.T) { req, _ := http.NewRequest("POST", "/v1/agent/connect/authorize?token=root", jsonReader(args)) resp := httptest.NewRecorder() a.srv.h.ServeHTTP(resp, req) - assert.Equal(200, resp.Code) + assert.Equal(t, 200, resp.Code) dec := json.NewDecoder(resp.Body) obj := &connectAuthorizeResp{} require.NoError(t, dec.Decode(obj)) - assert.True(obj.Authorized) - assert.Contains(obj.Reason, "Default behavior") + assert.True(t, obj.Authorized) + assert.Contains(t, obj.Reason, "Default behavior") } func TestAgent_Host(t *testing.T) { @@ -7069,7 +7025,6 @@ func TestAgent_Host(t *testing.T) { } t.Parallel() - assert := assert.New(t) dc1 := "dc1" a := NewTestAgent(t, ` @@ -7093,13 +7048,13 @@ func TestAgent_Host(t *testing.T) { resp := httptest.NewRecorder() // TODO: AgentHost should write to response so that we can test using ServeHTTP() respRaw, err := a.srv.AgentHost(resp, req) - assert.Nil(err) - assert.Equal(http.StatusOK, resp.Code) - assert.NotNil(respRaw) + assert.Nil(t, err) + assert.Equal(t, http.StatusOK, resp.Code) + assert.NotNil(t, respRaw) obj := respRaw.(*debug.HostInfo) - assert.NotNil(obj.CollectionTime) - assert.Empty(obj.Errors) + assert.NotNil(t, obj.CollectionTime) + assert.Empty(t, obj.Errors) } func TestAgent_HostBadACL(t *testing.T) { @@ -7108,7 +7063,6 @@ func TestAgent_HostBadACL(t *testing.T) { } t.Parallel() - assert := assert.New(t) dc1 := "dc1" a := NewTestAgent(t, ` @@ -7132,8 +7086,8 @@ func TestAgent_HostBadACL(t *testing.T) { resp := httptest.NewRecorder() // TODO: AgentHost should write to response so that we can test using ServeHTTP() _, err := a.srv.AgentHost(resp, req) - assert.EqualError(err, "ACL not found") - assert.Equal(http.StatusOK, resp.Code) + assert.EqualError(t, err, "ACL not found") + assert.Equal(t, http.StatusOK, resp.Code) } // Thie tests that a proxy with an ExposeConfig is returned as expected. diff --git a/agent/agent_test.go b/agent/agent_test.go index cc3151a82..b37564a61 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -1855,7 +1855,6 @@ func TestAgent_AddCheck_Alias(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -1869,19 +1868,19 @@ func TestAgent_AddCheck_Alias(t *testing.T) { AliasService: "foo", } err := a.AddCheck(health, chk, false, "", ConfigSourceLocal) - require.NoError(err) + require.NoError(t, err) // Ensure we have a check mapping sChk := requireCheckExists(t, a, "aliashealth") - require.Equal(api.HealthCritical, sChk.Status) + require.Equal(t, api.HealthCritical, sChk.Status) chkImpl, ok := a.checkAliases[structs.NewCheckID("aliashealth", nil)] - require.True(ok, "missing aliashealth check") - require.Equal("", chkImpl.RPCReq.Token) + require.True(t, ok, "missing aliashealth check") + require.Equal(t, "", chkImpl.RPCReq.Token) cs := a.State.CheckState(structs.NewCheckID("aliashealth", nil)) - require.NotNil(cs) - require.Equal("", cs.Token) + require.NotNil(t, cs) + require.Equal(t, "", cs.Token) } func TestAgent_AddCheck_Alias_setToken(t *testing.T) { @@ -1891,7 +1890,6 @@ func TestAgent_AddCheck_Alias_setToken(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() @@ -1905,15 +1903,15 @@ func TestAgent_AddCheck_Alias_setToken(t *testing.T) { AliasService: "foo", } err := a.AddCheck(health, chk, false, "foo", ConfigSourceLocal) - require.NoError(err) + require.NoError(t, err) cs := a.State.CheckState(structs.NewCheckID("aliashealth", nil)) - require.NotNil(cs) - require.Equal("foo", cs.Token) + require.NotNil(t, cs) + require.Equal(t, "foo", cs.Token) chkImpl, ok := a.checkAliases[structs.NewCheckID("aliashealth", nil)] - require.True(ok, "missing aliashealth check") - require.Equal("foo", chkImpl.RPCReq.Token) + require.True(t, ok, "missing aliashealth check") + require.Equal(t, "foo", chkImpl.RPCReq.Token) } func TestAgent_AddCheck_Alias_userToken(t *testing.T) { @@ -1923,7 +1921,6 @@ func TestAgent_AddCheck_Alias_userToken(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, ` acl_token = "hello" `) @@ -1939,15 +1936,15 @@ acl_token = "hello" AliasService: "foo", } err := a.AddCheck(health, chk, false, "", ConfigSourceLocal) - require.NoError(err) + require.NoError(t, err) cs := a.State.CheckState(structs.NewCheckID("aliashealth", nil)) - require.NotNil(cs) - require.Equal("", cs.Token) // State token should still be empty + require.NotNil(t, cs) + require.Equal(t, "", cs.Token) // State token should still be empty chkImpl, ok := a.checkAliases[structs.NewCheckID("aliashealth", nil)] - require.True(ok, "missing aliashealth check") - require.Equal("hello", chkImpl.RPCReq.Token) // Check should use the token + require.True(t, ok, "missing aliashealth check") + require.Equal(t, "hello", chkImpl.RPCReq.Token) // Check should use the token } func TestAgent_AddCheck_Alias_userAndSetToken(t *testing.T) { @@ -1957,7 +1954,6 @@ func TestAgent_AddCheck_Alias_userAndSetToken(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, ` acl_token = "hello" `) @@ -1973,15 +1969,15 @@ acl_token = "hello" AliasService: "foo", } err := a.AddCheck(health, chk, false, "goodbye", ConfigSourceLocal) - require.NoError(err) + require.NoError(t, err) cs := a.State.CheckState(structs.NewCheckID("aliashealth", nil)) - require.NotNil(cs) - require.Equal("goodbye", cs.Token) + require.NotNil(t, cs) + require.Equal(t, "goodbye", cs.Token) chkImpl, ok := a.checkAliases[structs.NewCheckID("aliashealth", nil)] - require.True(ok, "missing aliashealth check") - require.Equal("goodbye", chkImpl.RPCReq.Token) + require.True(t, ok, "missing aliashealth check") + require.Equal(t, "goodbye", chkImpl.RPCReq.Token) } func TestAgent_RemoveCheck(t *testing.T) { diff --git a/agent/cache-types/catalog_services_test.go b/agent/cache-types/catalog_services_test.go index 7400a443f..c7adf2820 100644 --- a/agent/cache-types/catalog_services_test.go +++ b/agent/cache-types/catalog_services_test.go @@ -11,7 +11,6 @@ import ( ) func TestCatalogServices(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &CatalogServices{RPC: rpc} @@ -22,10 +21,10 @@ func TestCatalogServices(t *testing.T) { rpc.On("RPC", "Catalog.ServiceNodes", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.ServiceSpecificRequest) - require.Equal(uint64(24), req.QueryOptions.MinQueryIndex) - require.Equal(1*time.Second, req.QueryOptions.MaxQueryTime) - require.Equal("web", req.ServiceName) - require.True(req.AllowStale) + require.Equal(t, uint64(24), req.QueryOptions.MinQueryIndex) + require.Equal(t, 1*time.Second, req.QueryOptions.MaxQueryTime) + require.Equal(t, "web", req.ServiceName) + require.True(t, req.AllowStale) reply := args.Get(2).(*structs.IndexedServiceNodes) reply.ServiceNodes = []*structs.ServiceNode{ @@ -44,15 +43,14 @@ func TestCatalogServices(t *testing.T) { ServiceName: "web", ServiceTags: []string{"tag1", "tag2"}, }) - require.NoError(err) - require.Equal(cache.FetchResult{ + require.NoError(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, resultA) } func TestCatalogServices_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &CatalogServices{RPC: rpc} @@ -60,7 +58,7 @@ func TestCatalogServices_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.Error(err) - require.Contains(err.Error(), "wrong type") + require.Error(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache-types/connect_ca_leaf_test.go b/agent/cache-types/connect_ca_leaf_test.go index c2fccf983..92a215af8 100644 --- a/agent/cache-types/connect_ca_leaf_test.go +++ b/agent/cache-types/connect_ca_leaf_test.go @@ -123,23 +123,22 @@ func TestCalculateSoftExpire(t *testing.T) { for _, tc := range tests { t.Run(tc.name, func(t *testing.T) { - require := require.New(t) now, err := time.Parse("2006-01-02 15:04:05", tc.now) - require.NoError(err) + require.NoError(t, err) issued, err := time.Parse("2006-01-02 15:04:05", tc.issued) - require.NoError(err) + require.NoError(t, err) wantMin, err := time.Parse("2006-01-02 15:04:05", tc.wantMin) - require.NoError(err) + require.NoError(t, err) wantMax, err := time.Parse("2006-01-02 15:04:05", tc.wantMax) - require.NoError(err) + require.NoError(t, err) min, max := calculateSoftExpiry(now, &structs.IssuedCert{ ValidAfter: issued, ValidBefore: issued.Add(tc.lifetime), }) - require.Equal(wantMin, min) - require.Equal(wantMax, max) + require.Equal(t, wantMin, min) + require.Equal(t, wantMax, max) }) } } @@ -156,7 +155,6 @@ func TestConnectCALeaf_changingRoots(t *testing.T) { } t.Parallel() - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) @@ -211,8 +209,8 @@ func TestConnectCALeaf_changingRoots(t *testing.T) { t.Fatal("shouldn't block waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) - require.Equal(uint64(1), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -244,9 +242,9 @@ func TestConnectCALeaf_changingRoots(t *testing.T) { t.Fatal("shouldn't block waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) + require.Equal(t, resp, v.Value) // 3 since the second CA "update" used up 2 - require.Equal(uint64(3), v.Index) + require.Equal(t, uint64(3), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v opts.MinIndex = 3 @@ -267,7 +265,6 @@ func TestConnectCALeaf_changingRoots(t *testing.T) { func TestConnectCALeaf_changingRootsJitterBetweenCalls(t *testing.T) { t.Parallel() - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) @@ -323,8 +320,8 @@ func TestConnectCALeaf_changingRootsJitterBetweenCalls(t *testing.T) { t.Fatal("shouldn't block waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) - require.Equal(uint64(1), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -378,24 +375,24 @@ func TestConnectCALeaf_changingRootsJitterBetweenCalls(t *testing.T) { if v.Index > uint64(1) { // Got a new cert - require.Equal(resp, v.Value) - require.Equal(uint64(3), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(3), v.Index) // Should not have been delivered before the delay - require.True(time.Since(earliestRootDelivery) > typ.TestOverrideCAChangeInitialDelay) + require.True(t, time.Since(earliestRootDelivery) > typ.TestOverrideCAChangeInitialDelay) // All good. We are done! rootsDelivered = true } else { // Should be the cached cert - require.Equal(resp, v.Value) - require.Equal(uint64(1), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(1), v.Index) // Sanity check we blocked for the whole timeout - require.Truef(timeTaken > opts.Timeout, + require.Truef(t, timeTaken > opts.Timeout, "should block for at least %s, returned after %s", opts.Timeout, timeTaken) // Sanity check that the forceExpireAfter state was set correctly shouldExpireAfter = v.State.(*fetchState).forceExpireAfter - require.True(shouldExpireAfter.After(time.Now())) - require.True(shouldExpireAfter.Before(time.Now().Add(typ.TestOverrideCAChangeInitialDelay))) + require.True(t, shouldExpireAfter.After(time.Now())) + require.True(t, shouldExpireAfter.Before(time.Now().Add(typ.TestOverrideCAChangeInitialDelay))) } // Set the LastResult for subsequent fetches opts.LastResult = &v @@ -406,7 +403,7 @@ func TestConnectCALeaf_changingRootsJitterBetweenCalls(t *testing.T) { // Sanity check that we've not gone way beyond the deadline without a // new cert. We give some leeway to make it less brittle. - require.Falsef(time.Now().After(shouldExpireAfter.Add(100*time.Millisecond)), + require.Falsef(t, time.Now().After(shouldExpireAfter.Add(100*time.Millisecond)), "waited extra 100ms and delayed CA rotate renew didn't happen") } } @@ -415,7 +412,6 @@ func TestConnectCALeaf_changingRootsJitterBetweenCalls(t *testing.T) { func TestConnectCALeaf_changingRootsBetweenBlockingCalls(t *testing.T) { t.Parallel() - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) @@ -460,8 +456,8 @@ func TestConnectCALeaf_changingRootsBetweenBlockingCalls(t *testing.T) { t.Fatal("shouldn't block waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) - require.Equal(uint64(1), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -474,11 +470,11 @@ func TestConnectCALeaf_changingRootsBetweenBlockingCalls(t *testing.T) { t.Fatal("shouldn't block for too long waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) + require.Equal(t, resp, v.Value) // Still the initial cached result - require.Equal(uint64(1), v.Index) + require.Equal(t, uint64(1), v.Index) // Sanity check that it waited - require.True(time.Since(start) > opts.Timeout) + require.True(t, time.Since(start) > opts.Timeout) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -506,11 +502,11 @@ func TestConnectCALeaf_changingRootsBetweenBlockingCalls(t *testing.T) { t.Fatal("shouldn't block too long waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) + require.Equal(t, resp, v.Value) // Index should be 3 since root change consumed 2 - require.Equal(uint64(3), v.Index) + require.Equal(t, uint64(3), v.Index) // Sanity check that we didn't wait too long - require.True(time.Since(earliestRootDelivery) < opts.Timeout) + require.True(t, time.Since(earliestRootDelivery) < opts.Timeout) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -524,7 +520,6 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { t.Parallel() - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) @@ -593,8 +588,8 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { case result := <-fetchCh: switch v := result.(type) { case error: - require.Error(v) - require.Equal(consul.ErrRateLimited.Error(), v.Error()) + require.Error(t, v) + require.Equal(t, consul.ErrRateLimited.Error(), v.Error()) case cache.FetchResult: t.Fatalf("Expected error") } @@ -607,8 +602,8 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { t.Fatal("shouldn't block waiting for fetch") case result := <-fetchCh: v := mustFetchResult(t, result) - require.Equal(resp, v.Value) - require.Equal(uint64(1), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v // Set MinIndex @@ -632,7 +627,7 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { earliestRootDelivery := time.Now() // Sanity check state - require.Equal(uint64(1), atomic.LoadUint64(&rateLimitedRPCs)) + require.Equal(t, uint64(1), atomic.LoadUint64(&rateLimitedRPCs)) // After root rotation jitter has been waited out, a new CSR will // be attempted but will fail and return the previous cached result with no @@ -645,14 +640,14 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { // We should block for _at least_ one jitter period since we set that to // 100ms and in test override mode we always pick the max jitter not a // random amount. - require.True(time.Since(earliestRootDelivery) > 100*time.Millisecond) - require.Equal(uint64(2), atomic.LoadUint64(&rateLimitedRPCs)) + require.True(t, time.Since(earliestRootDelivery) > 100*time.Millisecond) + require.Equal(t, uint64(2), atomic.LoadUint64(&rateLimitedRPCs)) v := mustFetchResult(t, result) - require.Equal(resp, v.Value) + require.Equal(t, resp, v.Value) // 1 since this should still be the original cached result as we failed to // get a new cert. - require.Equal(uint64(1), v.Index) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -666,14 +661,14 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { t.Fatal("shouldn't block too long waiting for fetch") case result := <-fetchCh: // We should block for _at least_ two jitter periods now. - require.True(time.Since(earliestRootDelivery) > 200*time.Millisecond) - require.Equal(uint64(3), atomic.LoadUint64(&rateLimitedRPCs)) + require.True(t, time.Since(earliestRootDelivery) > 200*time.Millisecond) + require.Equal(t, uint64(3), atomic.LoadUint64(&rateLimitedRPCs)) v := mustFetchResult(t, result) - require.Equal(resp, v.Value) + require.Equal(t, resp, v.Value) // 1 since this should still be the original cached result as we failed to // get a new cert. - require.Equal(uint64(1), v.Index) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -688,13 +683,13 @@ func TestConnectCALeaf_CSRRateLimiting(t *testing.T) { t.Fatal("shouldn't block too long waiting for fetch") case result := <-fetchCh: // We should block for _at least_ three jitter periods now. - require.True(time.Since(earliestRootDelivery) > 300*time.Millisecond) - require.Equal(uint64(3), atomic.LoadUint64(&rateLimitedRPCs)) + require.True(t, time.Since(earliestRootDelivery) > 300*time.Millisecond) + require.Equal(t, uint64(3), atomic.LoadUint64(&rateLimitedRPCs)) v := mustFetchResult(t, result) - require.Equal(resp, v.Value) + require.Equal(t, resp, v.Value) // 3 since the rootCA change used 2 - require.Equal(uint64(3), v.Index) + require.Equal(t, uint64(3), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -908,7 +903,6 @@ func TestConnectCALeaf_expiringLeaf(t *testing.T) { t.Parallel() - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) @@ -962,10 +956,10 @@ func TestConnectCALeaf_expiringLeaf(t *testing.T) { case result := <-fetchCh: switch v := result.(type) { case error: - require.NoError(v) + require.NoError(t, v) case cache.FetchResult: - require.Equal(resp, v.Value) - require.Equal(uint64(1), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(1), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -980,10 +974,10 @@ func TestConnectCALeaf_expiringLeaf(t *testing.T) { case result := <-fetchCh: switch v := result.(type) { case error: - require.NoError(v) + require.NoError(t, v) case cache.FetchResult: - require.Equal(resp, v.Value) - require.Equal(uint64(2), v.Index) + require.Equal(t, resp, v.Value) + require.Equal(t, uint64(2), v.Index) // Set the LastResult for subsequent fetches opts.LastResult = &v } @@ -1003,7 +997,6 @@ func TestConnectCALeaf_expiringLeaf(t *testing.T) { func TestConnectCALeaf_DNSSANForService(t *testing.T) { t.Parallel() - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) @@ -1039,12 +1032,12 @@ func TestConnectCALeaf_DNSSANForService(t *testing.T) { DNSSAN: []string{"test.example.com"}, } _, err := typ.Fetch(opts, req) - require.NoError(err) + require.NoError(t, err) pemBlock, _ := pem.Decode([]byte(caReq.CSR)) csr, err := x509.ParseCertificateRequest(pemBlock.Bytes) - require.NoError(err) - require.Equal(csr.DNSNames, []string{"test.example.com"}) + require.NoError(t, err) + require.Equal(t, csr.DNSNames, []string{"test.example.com"}) } // testConnectCaRoot wraps ConnectCARoot to disable refresh so that the gated diff --git a/agent/cache-types/connect_ca_root_test.go b/agent/cache-types/connect_ca_root_test.go index 24c37f313..ea1d50050 100644 --- a/agent/cache-types/connect_ca_root_test.go +++ b/agent/cache-types/connect_ca_root_test.go @@ -11,7 +11,6 @@ import ( ) func TestConnectCARoot(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &ConnectCARoot{RPC: rpc} @@ -22,8 +21,8 @@ func TestConnectCARoot(t *testing.T) { rpc.On("RPC", "ConnectCA.Roots", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.DCSpecificRequest) - require.Equal(uint64(24), req.QueryOptions.MinQueryIndex) - require.Equal(1*time.Second, req.QueryOptions.MaxQueryTime) + require.Equal(t, uint64(24), req.QueryOptions.MinQueryIndex) + require.Equal(t, 1*time.Second, req.QueryOptions.MaxQueryTime) reply := args.Get(2).(*structs.IndexedCARoots) reply.QueryMeta.Index = 48 @@ -35,15 +34,14 @@ func TestConnectCARoot(t *testing.T) { MinIndex: 24, Timeout: 1 * time.Second, }, &structs.DCSpecificRequest{Datacenter: "dc1"}) - require.Nil(err) - require.Equal(cache.FetchResult{ + require.Nil(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, result) } func TestConnectCARoot_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &ConnectCARoot{RPC: rpc} @@ -51,7 +49,7 @@ func TestConnectCARoot_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.NotNil(err) - require.Contains(err.Error(), "wrong type") + require.NotNil(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache-types/health_services_test.go b/agent/cache-types/health_services_test.go index 4b368c29d..6aa900b3f 100644 --- a/agent/cache-types/health_services_test.go +++ b/agent/cache-types/health_services_test.go @@ -11,7 +11,6 @@ import ( ) func TestHealthServices(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &HealthServices{RPC: rpc} @@ -22,10 +21,10 @@ func TestHealthServices(t *testing.T) { rpc.On("RPC", "Health.ServiceNodes", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.ServiceSpecificRequest) - require.Equal(uint64(24), req.QueryOptions.MinQueryIndex) - require.Equal(1*time.Second, req.QueryOptions.MaxQueryTime) - require.Equal("web", req.ServiceName) - require.True(req.AllowStale) + require.Equal(t, uint64(24), req.QueryOptions.MinQueryIndex) + require.Equal(t, 1*time.Second, req.QueryOptions.MaxQueryTime) + require.Equal(t, "web", req.ServiceName) + require.True(t, req.AllowStale) reply := args.Get(2).(*structs.IndexedCheckServiceNodes) reply.Nodes = []structs.CheckServiceNode{ @@ -44,15 +43,14 @@ func TestHealthServices(t *testing.T) { ServiceName: "web", ServiceTags: []string{"tag1", "tag2"}, }) - require.NoError(err) - require.Equal(cache.FetchResult{ + require.NoError(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, resultA) } func TestHealthServices_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &HealthServices{RPC: rpc} @@ -60,7 +58,7 @@ func TestHealthServices_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.Error(err) - require.Contains(err.Error(), "wrong type") + require.Error(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache-types/intention_match_test.go b/agent/cache-types/intention_match_test.go index d94d7d935..869792cff 100644 --- a/agent/cache-types/intention_match_test.go +++ b/agent/cache-types/intention_match_test.go @@ -11,7 +11,6 @@ import ( ) func TestIntentionMatch(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &IntentionMatch{RPC: rpc} @@ -22,8 +21,8 @@ func TestIntentionMatch(t *testing.T) { rpc.On("RPC", "Intention.Match", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.IntentionQueryRequest) - require.Equal(uint64(24), req.MinQueryIndex) - require.Equal(1*time.Second, req.MaxQueryTime) + require.Equal(t, uint64(24), req.MinQueryIndex) + require.Equal(t, 1*time.Second, req.MaxQueryTime) reply := args.Get(2).(*structs.IndexedIntentionMatches) reply.Index = 48 @@ -35,15 +34,14 @@ func TestIntentionMatch(t *testing.T) { MinIndex: 24, Timeout: 1 * time.Second, }, &structs.IntentionQueryRequest{Datacenter: "dc1"}) - require.NoError(err) - require.Equal(cache.FetchResult{ + require.NoError(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, result) } func TestIntentionMatch_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &IntentionMatch{RPC: rpc} @@ -51,7 +49,7 @@ func TestIntentionMatch_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.Error(err) - require.Contains(err.Error(), "wrong type") + require.Error(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache-types/node_services_test.go b/agent/cache-types/node_services_test.go index 09acee940..fa600d012 100644 --- a/agent/cache-types/node_services_test.go +++ b/agent/cache-types/node_services_test.go @@ -11,7 +11,6 @@ import ( ) func TestNodeServices(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &NodeServices{RPC: rpc} @@ -22,10 +21,10 @@ func TestNodeServices(t *testing.T) { rpc.On("RPC", "Catalog.NodeServices", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.NodeSpecificRequest) - require.Equal(uint64(24), req.QueryOptions.MinQueryIndex) - require.Equal(1*time.Second, req.QueryOptions.MaxQueryTime) - require.Equal("node-01", req.Node) - require.True(req.AllowStale) + require.Equal(t, uint64(24), req.QueryOptions.MinQueryIndex) + require.Equal(t, 1*time.Second, req.QueryOptions.MaxQueryTime) + require.Equal(t, "node-01", req.Node) + require.True(t, req.AllowStale) reply := args.Get(2).(*structs.IndexedNodeServices) reply.NodeServices = &structs.NodeServices{ @@ -49,15 +48,14 @@ func TestNodeServices(t *testing.T) { Datacenter: "dc1", Node: "node-01", }) - require.NoError(err) - require.Equal(cache.FetchResult{ + require.NoError(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, resultA) } func TestNodeServices_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &NodeServices{RPC: rpc} @@ -65,7 +63,7 @@ func TestNodeServices_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.Error(err) - require.Contains(err.Error(), "wrong type") + require.Error(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache-types/prepared_query_test.go b/agent/cache-types/prepared_query_test.go index dc54b2631..870bdbd52 100644 --- a/agent/cache-types/prepared_query_test.go +++ b/agent/cache-types/prepared_query_test.go @@ -10,7 +10,6 @@ import ( ) func TestPreparedQuery(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &PreparedQuery{RPC: rpc} @@ -21,9 +20,9 @@ func TestPreparedQuery(t *testing.T) { rpc.On("RPC", "PreparedQuery.Execute", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.PreparedQueryExecuteRequest) - require.Equal("geo-db", req.QueryIDOrName) - require.Equal(10, req.Limit) - require.True(req.AllowStale) + require.Equal(t, "geo-db", req.QueryIDOrName) + require.Equal(t, 10, req.Limit) + require.True(t, req.AllowStale) reply := args.Get(2).(*structs.PreparedQueryExecuteResponse) reply.QueryMeta.Index = 48 @@ -36,15 +35,14 @@ func TestPreparedQuery(t *testing.T) { QueryIDOrName: "geo-db", Limit: 10, }) - require.NoError(err) - require.Equal(cache.FetchResult{ + require.NoError(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, result) } func TestPreparedQuery_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &PreparedQuery{RPC: rpc} @@ -52,6 +50,6 @@ func TestPreparedQuery_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.Error(err) - require.Contains(err.Error(), "wrong type") + require.Error(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache-types/resolved_service_config_test.go b/agent/cache-types/resolved_service_config_test.go index 34c2ddea0..0f99aa9c0 100644 --- a/agent/cache-types/resolved_service_config_test.go +++ b/agent/cache-types/resolved_service_config_test.go @@ -11,7 +11,6 @@ import ( ) func TestResolvedServiceConfig(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &ResolvedServiceConfig{RPC: rpc} @@ -22,10 +21,10 @@ func TestResolvedServiceConfig(t *testing.T) { rpc.On("RPC", "ConfigEntry.ResolveServiceConfig", mock.Anything, mock.Anything).Return(nil). Run(func(args mock.Arguments) { req := args.Get(1).(*structs.ServiceConfigRequest) - require.Equal(uint64(24), req.QueryOptions.MinQueryIndex) - require.Equal(1*time.Second, req.QueryOptions.MaxQueryTime) - require.Equal("foo", req.Name) - require.True(req.AllowStale) + require.Equal(t, uint64(24), req.QueryOptions.MinQueryIndex) + require.Equal(t, 1*time.Second, req.QueryOptions.MaxQueryTime) + require.Equal(t, "foo", req.Name) + require.True(t, req.AllowStale) reply := args.Get(2).(*structs.ServiceConfigResponse) reply.ProxyConfig = map[string]interface{}{ @@ -49,15 +48,14 @@ func TestResolvedServiceConfig(t *testing.T) { Datacenter: "dc1", Name: "foo", }) - require.NoError(err) - require.Equal(cache.FetchResult{ + require.NoError(t, err) + require.Equal(t, cache.FetchResult{ Value: resp, Index: 48, }, resultA) } func TestResolvedServiceConfig_badReqType(t *testing.T) { - require := require.New(t) rpc := TestRPC(t) defer rpc.AssertExpectations(t) typ := &ResolvedServiceConfig{RPC: rpc} @@ -65,7 +63,7 @@ func TestResolvedServiceConfig_badReqType(t *testing.T) { // Fetch _, err := typ.Fetch(cache.FetchOptions{}, cache.TestRequest( t, cache.RequestInfo{Key: "foo", MinIndex: 64})) - require.Error(err) - require.Contains(err.Error(), "wrong type") + require.Error(t, err) + require.Contains(t, err.Error(), "wrong type") } diff --git a/agent/cache/cache_test.go b/agent/cache/cache_test.go index c986f19fd..5c2b3d203 100644 --- a/agent/cache/cache_test.go +++ b/agent/cache/cache_test.go @@ -24,8 +24,6 @@ import ( func TestCacheGet_noIndex(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) c := New(Options{}) @@ -37,15 +35,15 @@ func TestCacheGet_noIndex(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Get, should not fetch since we already have a satisfying value result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.True(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call @@ -57,8 +55,6 @@ func TestCacheGet_noIndex(t *testing.T) { func TestCacheGet_initError(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) c := New(Options{}) @@ -71,15 +67,15 @@ func TestCacheGet_initError(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.Error(err) - require.Nil(result) - require.False(meta.Hit) + require.Error(t, err) + require.Nil(t, result) + require.False(t, meta.Hit) // Get, should fetch again since our last fetch was an error result, meta, err = c.Get(context.Background(), "t", req) - require.Error(err) - require.Nil(result) - require.False(meta.Hit) + require.Error(t, err) + require.Nil(t, result) + require.False(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call @@ -96,8 +92,6 @@ func TestCacheGet_cachedErrorsDontStick(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) c := New(Options{}) @@ -115,15 +109,15 @@ func TestCacheGet_cachedErrorsDontStick(t *testing.T) { // Get, should fetch and get error req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.Error(err) - require.Nil(result) - require.False(meta.Hit) + require.Error(t, err) + require.Nil(t, result) + require.False(t, meta.Hit) // Get, should fetch again since our last fetch was an error, but get success result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Now get should block until timeout and then get the same response NOT the // cached error. @@ -157,8 +151,6 @@ func TestCacheGet_cachedErrorsDontStick(t *testing.T) { func TestCacheGet_blankCacheKey(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) c := New(Options{}) @@ -170,15 +162,15 @@ func TestCacheGet_blankCacheKey(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: ""}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Get, should not fetch since we already have a satisfying value result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call @@ -225,8 +217,6 @@ func TestCacheGet_blockingInitSameKey(t *testing.T) { func TestCacheGet_blockingInitDiffKeys(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) c := New(Options{}) @@ -269,7 +259,7 @@ func TestCacheGet_blockingInitDiffKeys(t *testing.T) { // Verify proper keys sort.Strings(keys) - require.Equal([]string{"goodbye", "hello"}, keys) + require.Equal(t, []string{"goodbye", "hello"}, keys) } // Test a get with an index set will wait until an index that is higher @@ -414,8 +404,6 @@ func TestCacheGet_emptyFetchResult(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) c := New(Options{}) @@ -429,29 +417,29 @@ func TestCacheGet_emptyFetchResult(t *testing.T) { typ.Static(FetchResult{Value: nil, State: 32}, nil).Run(func(args mock.Arguments) { // We should get back the original state opts := args.Get(0).(FetchOptions) - require.NotNil(opts.LastResult) + require.NotNil(t, opts.LastResult) stateCh <- opts.LastResult.State.(int) }) // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Get, should not fetch since we already have a satisfying value req = TestRequest(t, RequestInfo{ Key: "hello", MinIndex: 1, Timeout: 100 * time.Millisecond}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // State delivered to second call should be the result from first call. select { case state := <-stateCh: - require.Equal(31, state) + require.Equal(t, 31, state) case <-time.After(20 * time.Millisecond): t.Fatal("timed out") } @@ -461,12 +449,12 @@ func TestCacheGet_emptyFetchResult(t *testing.T) { req = TestRequest(t, RequestInfo{ Key: "hello", MinIndex: 1, Timeout: 100 * time.Millisecond}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) select { case state := <-stateCh: - require.Equal(32, state) + require.Equal(t, 32, state) case <-time.After(20 * time.Millisecond): t.Fatal("timed out") } @@ -737,8 +725,6 @@ func TestCacheGet_noIndexSetsOne(t *testing.T) { func TestCacheGet_fetchTimeout(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} timeout := 10 * time.Minute typ.On("RegisterOptions").Return(RegisterOptions{ @@ -761,12 +747,12 @@ func TestCacheGet_fetchTimeout(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Test the timeout - require.Equal(timeout, actual) + require.Equal(t, timeout, actual) } // Test that entries expire @@ -777,8 +763,6 @@ func TestCacheGet_expire(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} typ.On("RegisterOptions").Return(RegisterOptions{ LastGetTTL: 400 * time.Millisecond, @@ -795,9 +779,9 @@ func TestCacheGet_expire(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Wait for a non-trivial amount of time to sanity check the age increases at // least this amount. Note that this is not a fudge for some timing-dependent @@ -808,10 +792,10 @@ func TestCacheGet_expire(t *testing.T) { // Get, should not fetch, verified via the mock assertions above req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.True(meta.Hit) - require.True(meta.Age > 5*time.Millisecond) + require.NoError(t, err) + require.Equal(t, 42, result) + require.True(t, meta.Hit) + require.True(t, meta.Age > 5*time.Millisecond) // Sleep for the expiry time.Sleep(500 * time.Millisecond) @@ -819,9 +803,9 @@ func TestCacheGet_expire(t *testing.T) { // Get, should fetch req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen then verify // that we still only got the one call @@ -837,8 +821,6 @@ func TestCacheGet_expire(t *testing.T) { func TestCacheGet_expireBackgroudRefreshCancel(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} typ.On("RegisterOptions").Return(RegisterOptions{ LastGetTTL: 400 * time.Millisecond, @@ -879,18 +861,18 @@ func TestCacheGet_expireBackgroudRefreshCancel(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(8, result) - require.Equal(uint64(4), meta.Index) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.Equal(t, uint64(4), meta.Index) + require.False(t, meta.Hit) // Get, should not fetch, verified via the mock assertions above req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(8, result) - require.Equal(uint64(4), meta.Index) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.Equal(t, uint64(4), meta.Index) + require.True(t, meta.Hit) // Sleep for the expiry time.Sleep(500 * time.Millisecond) @@ -898,10 +880,10 @@ func TestCacheGet_expireBackgroudRefreshCancel(t *testing.T) { // Get, should fetch req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(8, result) - require.Equal(uint64(4), meta.Index) - require.False(meta.Hit, "the fetch should not have re-populated the cache "+ + require.NoError(t, err) + require.Equal(t, 8, result) + require.Equal(t, uint64(4), meta.Index) + require.False(t, meta.Hit, "the fetch should not have re-populated the cache "+ "entry after it expired so this get should be a miss") // Sleep a tiny bit just to let maybe some background calls happen @@ -915,8 +897,6 @@ func TestCacheGet_expireBackgroudRefreshCancel(t *testing.T) { func TestCacheGet_expireBackgroudRefresh(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} typ.On("RegisterOptions").Return(RegisterOptions{ LastGetTTL: 400 * time.Millisecond, @@ -948,18 +928,18 @@ func TestCacheGet_expireBackgroudRefresh(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(8, result) - require.Equal(uint64(4), meta.Index) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.Equal(t, uint64(4), meta.Index) + require.False(t, meta.Hit) // Get, should not fetch, verified via the mock assertions above req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(8, result) - require.Equal(uint64(4), meta.Index) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.Equal(t, uint64(4), meta.Index) + require.True(t, meta.Hit) // Sleep for the expiry time.Sleep(500 * time.Millisecond) @@ -971,10 +951,10 @@ func TestCacheGet_expireBackgroudRefresh(t *testing.T) { // re-insert the value back into the cache and make it live forever). req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(8, result) - require.Equal(uint64(4), meta.Index) - require.False(meta.Hit, "the fetch should not have re-populated the cache "+ + require.NoError(t, err) + require.Equal(t, 8, result) + require.Equal(t, uint64(4), meta.Index) + require.False(t, meta.Hit, "the fetch should not have re-populated the cache "+ "entry after it expired so this get should be a miss") // Sleep a tiny bit just to let maybe some background calls happen @@ -991,8 +971,6 @@ func TestCacheGet_expireResetGet(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} typ.On("RegisterOptions").Return(RegisterOptions{ LastGetTTL: 150 * time.Millisecond, @@ -1009,9 +987,9 @@ func TestCacheGet_expireResetGet(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Fetch multiple times, where the total time is well beyond // the TTL. We should not trigger any fetches during this time. @@ -1022,9 +1000,9 @@ func TestCacheGet_expireResetGet(t *testing.T) { // Get, should not fetch req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.True(t, meta.Hit) } time.Sleep(200 * time.Millisecond) @@ -1032,9 +1010,9 @@ func TestCacheGet_expireResetGet(t *testing.T) { // Get, should fetch req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call @@ -1046,8 +1024,6 @@ func TestCacheGet_expireResetGet(t *testing.T) { func TestCacheGet_expireResetGetNoChange(t *testing.T) { t.Parallel() - require := require.New(t) - // Create a closer so we can tell if the entry gets evicted. closer := &testCloser{} @@ -1080,19 +1056,19 @@ func TestCacheGet_expireResetGetNoChange(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.Equal(uint64(10), meta.Index) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.Equal(t, uint64(10), meta.Index) + require.False(t, meta.Hit) // Do a blocking watch of the value that won't time out until after the TTL. start := time.Now() req = TestRequest(t, RequestInfo{Key: "hello", MinIndex: 10, Timeout: 300 * time.Millisecond}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.Equal(uint64(10), meta.Index) - require.GreaterOrEqual(time.Since(start).Milliseconds(), int64(300)) + require.NoError(t, err) + require.Equal(t, 42, result) + require.Equal(t, uint64(10), meta.Index) + require.GreaterOrEqual(t, time.Since(start).Milliseconds(), int64(300)) // This is the point of this test! Even though we waited for a change for // longer than the TTL, we should have been updating the TTL so that the cache @@ -1100,7 +1076,7 @@ func TestCacheGet_expireResetGetNoChange(t *testing.T) { // since that is not set for blocking Get calls but we can assert that the // entry was never closed (which assuming the test for eviction closing is // also passing is a reliable signal). - require.False(closer.isClosed(), "cache entry should not have been evicted") + require.False(t, closer.isClosed(), "cache entry should not have been evicted") // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call @@ -1116,8 +1092,6 @@ func TestCacheGet_expireClose(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} defer typ.AssertExpectations(t) c := New(Options{}) @@ -1137,16 +1111,16 @@ func TestCacheGet_expireClose(t *testing.T) { ctx := context.Background() req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(ctx, "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) - require.False(state.isClosed()) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) + require.False(t, state.isClosed()) // Sleep for the expiry time.Sleep(200 * time.Millisecond) // state.Close() should have been called - require.True(state.isClosed()) + require.True(t, state.isClosed()) } type testCloser struct { @@ -1171,8 +1145,6 @@ func (t *testCloser) isClosed() bool { func TestCacheGet_duplicateKeyDifferentType(t *testing.T) { t.Parallel() - require := require.New(t) - typ := TestType(t) defer typ.AssertExpectations(t) typ2 := TestType(t) @@ -1189,23 +1161,23 @@ func TestCacheGet_duplicateKeyDifferentType(t *testing.T) { // Get, should fetch req := TestRequest(t, RequestInfo{Key: "foo"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(100, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 100, result) + require.False(t, meta.Hit) // Get from t2 with same key, should fetch req = TestRequest(t, RequestInfo{Key: "foo"}) result, meta, err = c.Get(context.Background(), "t2", req) - require.NoError(err) - require.Equal(200, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 200, result) + require.False(t, meta.Hit) // Get from t again with same key, should cache req = TestRequest(t, RequestInfo{Key: "foo"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(100, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 100, result) + require.True(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call @@ -1283,8 +1255,6 @@ func TestCacheGet_refreshAge(t *testing.T) { } t.Parallel() - require := require.New(t) - typ := &MockType{} typ.On("RegisterOptions").Return(RegisterOptions{ Refresh: true, @@ -1330,11 +1300,11 @@ func TestCacheGet_refreshAge(t *testing.T) { // Fetch again, non-blocking result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) - require.NoError(err) - require.Equal(8, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.True(t, meta.Hit) // Age should be zero since background refresh was "active" - require.Equal(time.Duration(0), meta.Age) + require.Equal(t, time.Duration(0), meta.Age) } // Now fail the next background sync @@ -1350,21 +1320,21 @@ func TestCacheGet_refreshAge(t *testing.T) { var lastAge time.Duration { result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) - require.NoError(err) - require.Equal(8, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.True(t, meta.Hit) // Age should be non-zero since background refresh was "active" - require.True(meta.Age > 0) + require.True(t, meta.Age > 0) lastAge = meta.Age } // Wait a bit longer - age should increase by at least this much time.Sleep(5 * time.Millisecond) { result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) - require.NoError(err) - require.Equal(8, result) - require.True(meta.Hit) - require.True(meta.Age > (lastAge + (1 * time.Millisecond))) + require.NoError(t, err) + require.Equal(t, 8, result) + require.True(t, meta.Hit) + require.True(t, meta.Age > (lastAge+(1*time.Millisecond))) } // Now unfail the background refresh @@ -1384,18 +1354,18 @@ func TestCacheGet_refreshAge(t *testing.T) { time.Sleep(100 * time.Millisecond) result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) // Should never error even if background is failing as we have cached value - require.NoError(err) - require.True(meta.Hit) + require.NoError(t, err) + require.True(t, meta.Hit) // Got the new value! if result == 10 { // Age should be zero since background refresh is "active" again t.Logf("Succeeded after %d attempts", attempts) - require.Equal(time.Duration(0), meta.Age) + require.Equal(t, time.Duration(0), meta.Age) timeout = false break } } - require.False(timeout, "failed to observe update after %s", time.Since(t0)) + require.False(t, timeout, "failed to observe update after %s", time.Since(t0)) } func TestCacheGet_nonRefreshAge(t *testing.T) { @@ -1405,8 +1375,6 @@ func TestCacheGet_nonRefreshAge(t *testing.T) { t.Parallel() - require := require.New(t) - typ := &MockType{} typ.On("RegisterOptions").Return(RegisterOptions{ Refresh: false, @@ -1440,10 +1408,10 @@ func TestCacheGet_nonRefreshAge(t *testing.T) { // Fetch again, non-blocking result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) - require.NoError(err) - require.Equal(8, result) - require.True(meta.Hit) - require.True(meta.Age > (5 * time.Millisecond)) + require.NoError(t, err) + require.Equal(t, 8, result) + require.True(t, meta.Hit) + require.True(t, meta.Age > (5*time.Millisecond)) lastAge = meta.Age } @@ -1452,11 +1420,11 @@ func TestCacheGet_nonRefreshAge(t *testing.T) { { result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) - require.NoError(err) - require.Equal(8, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.False(t, meta.Hit) // Age should smaller again - require.True(meta.Age < lastAge) + require.True(t, meta.Age < lastAge) } { @@ -1468,10 +1436,10 @@ func TestCacheGet_nonRefreshAge(t *testing.T) { // Fetch again, non-blocking result, meta, err := c.Get(context.Background(), "t", TestRequest(t, RequestInfo{Key: "hello"})) - require.NoError(err) - require.Equal(8, result) - require.True(meta.Hit) - require.True(meta.Age > (5 * time.Millisecond)) + require.NoError(t, err) + require.Equal(t, 8, result) + require.True(t, meta.Hit) + require.True(t, meta.Age > (5*time.Millisecond)) lastAge = meta.Age } @@ -1481,11 +1449,11 @@ func TestCacheGet_nonRefreshAge(t *testing.T) { Key: "hello", MaxAge: 1 * time.Millisecond, })) - require.NoError(err) - require.Equal(8, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 8, result) + require.False(t, meta.Hit) // Age should smaller again - require.True(meta.Age < lastAge) + require.True(t, meta.Age < lastAge) } } @@ -1505,21 +1473,19 @@ func TestCacheGet_nonBlockingType(t *testing.T) { require.Equal(t, uint64(0), opts.MinIndex) }) - require := require.New(t) - // Get, should fetch req := TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err := c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.False(t, meta.Hit) // Get, should not fetch since we have a cached value req = TestRequest(t, RequestInfo{Key: "hello"}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.True(t, meta.Hit) // Get, should not attempt to fetch with blocking even if requested. The // assertions below about the value being the same combined with the fact the @@ -1531,25 +1497,25 @@ func TestCacheGet_nonBlockingType(t *testing.T) { Timeout: 10 * time.Minute, }) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(42, result) - require.True(meta.Hit) + require.NoError(t, err) + require.Equal(t, 42, result) + require.True(t, meta.Hit) time.Sleep(10 * time.Millisecond) // Get with a max age should fetch again req = TestRequest(t, RequestInfo{Key: "hello", MaxAge: 5 * time.Millisecond}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(43, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 43, result) + require.False(t, meta.Hit) // Get with a must revalidate should fetch again even without a delay. req = TestRequest(t, RequestInfo{Key: "hello", MustRevalidate: true}) result, meta, err = c.Get(context.Background(), "t", req) - require.NoError(err) - require.Equal(43, result) - require.False(meta.Hit) + require.NoError(t, err) + require.Equal(t, 43, result) + require.False(t, meta.Hit) // Sleep a tiny bit just to let maybe some background calls happen // then verify that we still only got the one call diff --git a/agent/cache/watch_test.go b/agent/cache/watch_test.go index 7d57aee56..e635aa452 100644 --- a/agent/cache/watch_test.go +++ b/agent/cache/watch_test.go @@ -51,15 +51,13 @@ func TestCacheNotify(t *testing.T) { // after cancellation as if it had timed out. typ.Static(FetchResult{Value: 42, Index: 8}, nil).WaitUntil(trigger[4]) - require := require.New(t) - ctx, cancel := context.WithCancel(context.Background()) defer cancel() ch := make(chan UpdateEvent) err := c.Notify(ctx, "t", TestRequest(t, RequestInfo{Key: "hello"}), "test", ch) - require.NoError(err) + require.NoError(t, err) // Should receive the error with index == 0 first. TestCacheNotifyChResult(t, ch, UpdateEvent{ @@ -70,7 +68,7 @@ func TestCacheNotify(t *testing.T) { }) // There should be no more updates delivered yet - require.Len(ch, 0) + require.Len(t, ch, 0) // Trigger blocking query to return a "change" close(trigger[0]) @@ -102,7 +100,7 @@ func TestCacheNotify(t *testing.T) { // requests to the "backend" // - that multiple watchers can distinguish their results using correlationID err = c.Notify(ctx, "t", TestRequest(t, RequestInfo{Key: "hello"}), "test2", ch) - require.NoError(err) + require.NoError(t, err) // Should get test2 notify immediately, and it should be a cache hit TestCacheNotifyChResult(t, ch, UpdateEvent{ @@ -121,7 +119,7 @@ func TestCacheNotify(t *testing.T) { // it's only a sanity check, if we somehow _do_ get the change delivered later // than 10ms the next value assertion will fail anyway. time.Sleep(10 * time.Millisecond) - require.Len(ch, 0) + require.Len(t, ch, 0) // Trigger final update close(trigger[3]) @@ -183,15 +181,13 @@ func TestCacheNotifyPolling(t *testing.T) { typ.Static(FetchResult{Value: 12, Index: 1}, nil).Once() typ.Static(FetchResult{Value: 42, Index: 1}, nil).Once() - require := require.New(t) - ctx, cancel := context.WithCancel(context.Background()) defer cancel() ch := make(chan UpdateEvent) err := c.Notify(ctx, "t", TestRequest(t, RequestInfo{Key: "hello", MaxAge: 100 * time.Millisecond}), "test", ch) - require.NoError(err) + require.NoError(t, err) // Should receive the first result pretty soon TestCacheNotifyChResult(t, ch, UpdateEvent{ @@ -202,32 +198,32 @@ func TestCacheNotifyPolling(t *testing.T) { }) // There should be no more updates delivered yet - require.Len(ch, 0) + require.Len(t, ch, 0) // make sure the updates do not come too quickly select { case <-time.After(50 * time.Millisecond): case <-ch: - require.Fail("Received update too early") + require.Fail(t, "Received update too early") } // make sure we get the update not too far out. select { case <-time.After(100 * time.Millisecond): - require.Fail("Didn't receive the notification") + require.Fail(t, "Didn't receive the notification") case result := <-ch: - require.Equal(result.Result, 12) - require.Equal(result.CorrelationID, "test") - require.Equal(result.Meta.Hit, false) - require.Equal(result.Meta.Index, uint64(1)) + require.Equal(t, result.Result, 12) + require.Equal(t, result.CorrelationID, "test") + require.Equal(t, result.Meta.Hit, false) + require.Equal(t, result.Meta.Index, uint64(1)) // pretty conservative check it should be even newer because without a second // notifier each value returned will have been executed just then and not served // from the cache. - require.True(result.Meta.Age < 50*time.Millisecond) - require.NoError(result.Err) + require.True(t, result.Meta.Age < 50*time.Millisecond) + require.NoError(t, result.Err) } - require.Len(ch, 0) + require.Len(t, ch, 0) // Register a second observer using same chan and request. Note that this is // testing a few things implicitly: @@ -235,7 +231,7 @@ func TestCacheNotifyPolling(t *testing.T) { // requests to the "backend" // - that multiple watchers can distinguish their results using correlationID err = c.Notify(ctx, "t", TestRequest(t, RequestInfo{Key: "hello", MaxAge: 100 * time.Millisecond}), "test2", ch) - require.NoError(err) + require.NoError(t, err) // Should get test2 notify immediately, and it should be a cache hit TestCacheNotifyChResult(t, ch, UpdateEvent{ @@ -245,7 +241,7 @@ func TestCacheNotifyPolling(t *testing.T) { Err: nil, }) - require.Len(ch, 0) + require.Len(t, ch, 0) // wait for the next batch of responses events := make([]UpdateEvent, 0) @@ -255,25 +251,25 @@ func TestCacheNotifyPolling(t *testing.T) { for i := 0; i < 2; i++ { select { case <-timeout: - require.Fail("UpdateEvent not received in time") + require.Fail(t, "UpdateEvent not received in time") case eve := <-ch: events = append(events, eve) } } - require.Equal(events[0].Result, 42) - 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) - require.Equal(events[1].Result, 42) + require.Equal(t, events[0].Result, 42) + require.Equal(t, events[0].Meta.Hit && events[1].Meta.Hit, false) + require.Equal(t, events[0].Meta.Index, uint64(1)) + require.True(t, events[0].Meta.Age < 50*time.Millisecond) + require.NoError(t, events[0].Err) + require.Equal(t, events[1].Result, 42) // Sometimes this would be a hit and others not. It all depends on when the various getWithIndex calls got fired. // If both are done concurrently then it will not be a cache hit but the request gets single flighted and both // get notified at the same time. - // require.Equal(events[1].Meta.Hit, true) - require.Equal(events[1].Meta.Index, uint64(1)) - require.True(events[1].Meta.Age < 100*time.Millisecond) - require.NoError(events[1].Err) + // require.Equal(t,events[1].Meta.Hit, true) + require.Equal(t, events[1].Meta.Index, uint64(1)) + require.True(t, events[1].Meta.Age < 100*time.Millisecond) + require.NoError(t, events[1].Err) } // Test that a refresh performs a backoff. @@ -298,15 +294,13 @@ func TestCacheWatch_ErrorBackoff(t *testing.T) { atomic.AddUint32(&retries, 1) }) - require := require.New(t) - ctx, cancel := context.WithCancel(context.Background()) defer cancel() ch := make(chan UpdateEvent) err := c.Notify(ctx, "t", TestRequest(t, RequestInfo{Key: "hello"}), "test", ch) - require.NoError(err) + require.NoError(t, err) // Should receive the first result pretty soon TestCacheNotifyChResult(t, ch, UpdateEvent{ @@ -331,15 +325,15 @@ OUT: break OUT case u := <-ch: numErrors++ - require.Error(u.Err) + require.Error(t, u.Err) } } // Must be fewer than 10 failures in that time - require.True(numErrors < 10, fmt.Sprintf("numErrors: %d", numErrors)) + require.True(t, numErrors < 10, fmt.Sprintf("numErrors: %d", numErrors)) // Check the number of RPCs as a sanity check too actual := atomic.LoadUint32(&retries) - require.True(actual < 10, fmt.Sprintf("actual: %d", actual)) + require.True(t, actual < 10, fmt.Sprintf("actual: %d", actual)) } // Test that a refresh performs a backoff. @@ -363,15 +357,13 @@ func TestCacheWatch_ErrorBackoffNonBlocking(t *testing.T) { atomic.AddUint32(&retries, 1) }) - require := require.New(t) - ctx, cancel := context.WithCancel(context.Background()) defer cancel() ch := make(chan UpdateEvent) err := c.Notify(ctx, "t", TestRequest(t, RequestInfo{Key: "hello", MaxAge: 100 * time.Millisecond}), "test", ch) - require.NoError(err) + require.NoError(t, err) // Should receive the first result pretty soon TestCacheNotifyChResult(t, ch, UpdateEvent{ @@ -399,13 +391,13 @@ OUT: break OUT case u := <-ch: numErrors++ - require.Error(u.Err) + require.Error(t, u.Err) } } // Must be fewer than 10 failures in that time - require.True(numErrors < 10, fmt.Sprintf("numErrors: %d", numErrors)) + require.True(t, numErrors < 10, fmt.Sprintf("numErrors: %d", numErrors)) // Check the number of RPCs as a sanity check too actual := atomic.LoadUint32(&retries) - require.True(actual < 10, fmt.Sprintf("actual: %d", actual)) + require.True(t, actual < 10, fmt.Sprintf("actual: %d", actual)) } diff --git a/agent/catalog_endpoint_test.go b/agent/catalog_endpoint_test.go index 63e8efa1e..a4f465eb3 100644 --- a/agent/catalog_endpoint_test.go +++ b/agent/catalog_endpoint_test.go @@ -635,9 +635,6 @@ func TestCatalogServiceNodes(t *testing.T) { a := NewTestAgent(t, "") defer a.Shutdown() - assert := assert.New(t) - require := require.New(t) - // Make sure an empty list is returned, not a nil { req, _ := http.NewRequest("GET", "/v1/catalog/service/api?tag=a", nil) @@ -691,12 +688,12 @@ func TestCatalogServiceNodes(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/catalog/service/api?cached", nil) resp := httptest.NewRecorder() obj, err := a.srv.CatalogServiceNodes(resp, req) - require.NoError(err) + require.NoError(t, err) nodes := obj.(structs.ServiceNodes) - assert.Len(nodes, 1) + assert.Len(t, nodes, 1) // Should be a cache miss - assert.Equal("MISS", resp.Header().Get("X-Cache")) + assert.Equal(t, "MISS", resp.Header().Get("X-Cache")) } { @@ -704,13 +701,13 @@ func TestCatalogServiceNodes(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/catalog/service/api?cached", nil) resp := httptest.NewRecorder() obj, err := a.srv.CatalogServiceNodes(resp, req) - require.NoError(err) + require.NoError(t, err) nodes := obj.(structs.ServiceNodes) - assert.Len(nodes, 1) + assert.Len(t, nodes, 1) // Should be a cache HIT now! - assert.Equal("HIT", resp.Header().Get("X-Cache")) - assert.Equal("0", resp.Header().Get("Age")) + assert.Equal(t, "HIT", resp.Header().Get("X-Cache")) + assert.Equal(t, "0", resp.Header().Get("Age")) } // Ensure background refresh works @@ -719,7 +716,7 @@ func TestCatalogServiceNodes(t *testing.T) { args2 := args args2.Node = "bar" args2.Address = "127.0.0.2" - require.NoError(a.RPC("Catalog.Register", args, &out)) + require.NoError(t, a.RPC("Catalog.Register", args, &out)) retry.Run(t, func(r *retry.R) { // List it again @@ -1057,7 +1054,6 @@ func TestCatalogServiceNodes_ConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -1065,19 +1061,19 @@ func TestCatalogServiceNodes_ConnectProxy(t *testing.T) { // Register args := structs.TestRegisterRequestProxy(t) var out struct{} - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/catalog/service/%s", args.Service.Service), nil) resp := httptest.NewRecorder() obj, err := a.srv.CatalogServiceNodes(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) nodes := obj.(structs.ServiceNodes) - assert.Len(nodes, 1) - assert.Equal(structs.ServiceKindConnectProxy, nodes[0].ServiceKind) - assert.Equal(args.Service.Proxy, nodes[0].ServiceProxy) + assert.Len(t, nodes, 1) + assert.Equal(t, structs.ServiceKindConnectProxy, nodes[0].ServiceKind) + assert.Equal(t, args.Service.Proxy, nodes[0].ServiceProxy) } // Test that the Connect-compatible endpoints can be queried for a @@ -1089,7 +1085,6 @@ func TestCatalogConnectServiceNodes_good(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -1098,20 +1093,20 @@ func TestCatalogConnectServiceNodes_good(t *testing.T) { args := structs.TestRegisterRequestProxy(t) args.Service.Address = "127.0.0.55" var out struct{} - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/catalog/connect/%s", args.Service.Proxy.DestinationServiceName), nil) resp := httptest.NewRecorder() obj, err := a.srv.CatalogConnectServiceNodes(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) nodes := obj.(structs.ServiceNodes) - assert.Len(nodes, 1) - assert.Equal(structs.ServiceKindConnectProxy, nodes[0].ServiceKind) - assert.Equal(args.Service.Address, nodes[0].ServiceAddress) - assert.Equal(args.Service.Proxy, nodes[0].ServiceProxy) + assert.Len(t, nodes, 1) + assert.Equal(t, structs.ServiceKindConnectProxy, nodes[0].ServiceKind) + assert.Equal(t, args.Service.Address, nodes[0].ServiceAddress) + assert.Equal(t, args.Service.Proxy, nodes[0].ServiceProxy) } func TestCatalogConnectServiceNodes_Filter(t *testing.T) { @@ -1307,7 +1302,6 @@ func TestCatalogNodeServices_ConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -1315,19 +1309,19 @@ func TestCatalogNodeServices_ConnectProxy(t *testing.T) { // Register args := structs.TestRegisterRequestProxy(t) var out struct{} - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/catalog/node/%s", args.Node), nil) resp := httptest.NewRecorder() obj, err := a.srv.CatalogNodeServices(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) ns := obj.(*structs.NodeServices) - assert.Len(ns.Services, 1) + assert.Len(t, ns.Services, 1) v := ns.Services[args.Service.Service] - assert.Equal(structs.ServiceKindConnectProxy, v.Kind) + assert.Equal(t, structs.ServiceKindConnectProxy, v.Kind) } func TestCatalogNodeServices_WanTranslation(t *testing.T) { diff --git a/agent/config/deprecated_test.go b/agent/config/deprecated_test.go index 6cbec5448..6930c47b5 100644 --- a/agent/config/deprecated_test.go +++ b/agent/config/deprecated_test.go @@ -88,7 +88,6 @@ enable_acl_replication = true func TestLoad_DeprecatedConfig_ACLMasterTokens(t *testing.T) { t.Run("top-level fields", func(t *testing.T) { - require := require.New(t) opts := LoadOpts{ HCL: []string{` @@ -101,21 +100,20 @@ func TestLoad_DeprecatedConfig_ACLMasterTokens(t *testing.T) { patchLoadOptsShims(&opts) result, err := Load(opts) - require.NoError(err) + require.NoError(t, err) expectWarns := []string{ deprecationWarning("acl_master_token", "acl.tokens.initial_management"), deprecationWarning("acl_agent_master_token", "acl.tokens.agent_recovery"), } - require.ElementsMatch(expectWarns, result.Warnings) + require.ElementsMatch(t, expectWarns, result.Warnings) rt := result.RuntimeConfig - require.Equal("token1", rt.ACLInitialManagementToken) - require.Equal("token2", rt.ACLTokens.ACLAgentRecoveryToken) + require.Equal(t, "token1", rt.ACLInitialManagementToken) + require.Equal(t, "token2", rt.ACLTokens.ACLAgentRecoveryToken) }) t.Run("embedded in tokens struct", func(t *testing.T) { - require := require.New(t) opts := LoadOpts{ HCL: []string{` @@ -132,21 +130,20 @@ func TestLoad_DeprecatedConfig_ACLMasterTokens(t *testing.T) { patchLoadOptsShims(&opts) result, err := Load(opts) - require.NoError(err) + require.NoError(t, err) expectWarns := []string{ deprecationWarning("acl.tokens.master", "acl.tokens.initial_management"), deprecationWarning("acl.tokens.agent_master", "acl.tokens.agent_recovery"), } - require.ElementsMatch(expectWarns, result.Warnings) + require.ElementsMatch(t, expectWarns, result.Warnings) rt := result.RuntimeConfig - require.Equal("token1", rt.ACLInitialManagementToken) - require.Equal("token2", rt.ACLTokens.ACLAgentRecoveryToken) + require.Equal(t, "token1", rt.ACLInitialManagementToken) + require.Equal(t, "token2", rt.ACLTokens.ACLAgentRecoveryToken) }) t.Run("both", func(t *testing.T) { - require := require.New(t) opts := LoadOpts{ HCL: []string{` @@ -166,10 +163,10 @@ func TestLoad_DeprecatedConfig_ACLMasterTokens(t *testing.T) { patchLoadOptsShims(&opts) result, err := Load(opts) - require.NoError(err) + require.NoError(t, err) rt := result.RuntimeConfig - require.Equal("token3", rt.ACLInitialManagementToken) - require.Equal("token4", rt.ACLTokens.ACLAgentRecoveryToken) + require.Equal(t, "token3", rt.ACLInitialManagementToken) + require.Equal(t, "token4", rt.ACLTokens.ACLAgentRecoveryToken) }) } diff --git a/agent/config_endpoint_test.go b/agent/config_endpoint_test.go index 1f2d77c52..3518d045e 100644 --- a/agent/config_endpoint_test.go +++ b/agent/config_endpoint_test.go @@ -149,7 +149,6 @@ func TestConfig_Delete(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -171,7 +170,7 @@ func TestConfig_Delete(t *testing.T) { } for _, req := range reqs { out := false - require.NoError(a.RPC("ConfigEntry.Apply", &req, &out)) + require.NoError(t, a.RPC("ConfigEntry.Apply", &req, &out)) } // Delete an entry. @@ -179,7 +178,7 @@ func TestConfig_Delete(t *testing.T) { req, _ := http.NewRequest("DELETE", "/v1/config/service-defaults/bar", nil) resp := httptest.NewRecorder() _, err := a.srv.Config(resp, req) - require.NoError(err) + require.NoError(t, err) } // Get the remaining entry. { @@ -188,11 +187,11 @@ func TestConfig_Delete(t *testing.T) { Datacenter: "dc1", } var out structs.IndexedConfigEntries - require.NoError(a.RPC("ConfigEntry.List", &args, &out)) - require.Equal(structs.ServiceDefaults, out.Kind) - require.Len(out.Entries, 1) + require.NoError(t, a.RPC("ConfigEntry.List", &args, &out)) + require.Equal(t, structs.ServiceDefaults, out.Kind) + require.Len(t, out.Entries, 1) entry := out.Entries[0].(*structs.ServiceConfigEntry) - require.Equal(entry.Name, "foo") + require.Equal(t, entry.Name, "foo") } } @@ -202,8 +201,6 @@ func TestConfig_Delete_CAS(t *testing.T) { } t.Parallel() - require := require.New(t) - a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -214,20 +211,20 @@ func TestConfig_Delete_CAS(t *testing.T) { Name: "foo", } var created bool - require.NoError(a.RPC("ConfigEntry.Apply", &structs.ConfigEntryRequest{ + require.NoError(t, a.RPC("ConfigEntry.Apply", &structs.ConfigEntryRequest{ Datacenter: "dc1", Entry: entry, }, &created)) - require.True(created) + require.True(t, created) // Read it back to get its ModifyIndex. var out structs.ConfigEntryResponse - require.NoError(a.RPC("ConfigEntry.Get", &structs.ConfigEntryQuery{ + require.NoError(t, a.RPC("ConfigEntry.Get", &structs.ConfigEntryQuery{ Datacenter: "dc1", Kind: entry.Kind, Name: entry.Name, }, &out)) - require.NotNil(out.Entry) + require.NotNil(t, out.Entry) modifyIndex := out.Entry.GetRaftIndex().ModifyIndex @@ -238,20 +235,20 @@ func TestConfig_Delete_CAS(t *testing.T) { nil, ) rawRsp, err := a.srv.Config(httptest.NewRecorder(), req) - require.NoError(err) + require.NoError(t, err) deleted, isBool := rawRsp.(bool) - require.True(isBool, "response should be a boolean") - require.False(deleted, "entry should not have been deleted") + require.True(t, isBool, "response should be a boolean") + require.False(t, deleted, "entry should not have been deleted") // Verify it was not deleted. var out structs.ConfigEntryResponse - require.NoError(a.RPC("ConfigEntry.Get", &structs.ConfigEntryQuery{ + require.NoError(t, a.RPC("ConfigEntry.Get", &structs.ConfigEntryQuery{ Datacenter: "dc1", Kind: entry.Kind, Name: entry.Name, }, &out)) - require.NotNil(out.Entry) + require.NotNil(t, out.Entry) }) t.Run("attempt to delete with a valid index", func(t *testing.T) { @@ -261,20 +258,20 @@ func TestConfig_Delete_CAS(t *testing.T) { nil, ) rawRsp, err := a.srv.Config(httptest.NewRecorder(), req) - require.NoError(err) + require.NoError(t, err) deleted, isBool := rawRsp.(bool) - require.True(isBool, "response should be a boolean") - require.True(deleted, "entry should have been deleted") + require.True(t, isBool, "response should be a boolean") + require.True(t, deleted, "entry should have been deleted") // Verify it was deleted. var out structs.ConfigEntryResponse - require.NoError(a.RPC("ConfigEntry.Get", &structs.ConfigEntryQuery{ + require.NoError(t, a.RPC("ConfigEntry.Get", &structs.ConfigEntryQuery{ Datacenter: "dc1", Kind: entry.Kind, Name: entry.Name, }, &out)) - require.Nil(out.Entry) + require.Nil(t, out.Entry) }) } @@ -285,7 +282,6 @@ func TestConfig_Apply(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -301,7 +297,7 @@ func TestConfig_Apply(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/config", body) resp := httptest.NewRecorder() _, err := a.srv.ConfigApply(resp, req) - require.NoError(err) + require.NoError(t, err) if resp.Code != 200 { t.Fatalf(resp.Body.String()) } @@ -314,10 +310,10 @@ func TestConfig_Apply(t *testing.T) { Datacenter: "dc1", } var out structs.ConfigEntryResponse - require.NoError(a.RPC("ConfigEntry.Get", &args, &out)) - require.NotNil(out.Entry) + require.NoError(t, a.RPC("ConfigEntry.Get", &args, &out)) + require.NotNil(t, out.Entry) entry := out.Entry.(*structs.ServiceConfigEntry) - require.Equal(entry.Name, "foo") + require.Equal(t, entry.Name, "foo") } } @@ -503,7 +499,6 @@ func TestConfig_Apply_CAS(t *testing.T) { t.Parallel() - require := require.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -519,7 +514,7 @@ func TestConfig_Apply_CAS(t *testing.T) { req, _ := http.NewRequest("PUT", "/v1/config", body) resp := httptest.NewRecorder() _, err := a.srv.ConfigApply(resp, req) - require.NoError(err) + require.NoError(t, err) if resp.Code != 200 { t.Fatalf(resp.Body.String()) } @@ -532,8 +527,8 @@ func TestConfig_Apply_CAS(t *testing.T) { } out := &structs.ConfigEntryResponse{} - require.NoError(a.RPC("ConfigEntry.Get", &args, out)) - require.NotNil(out.Entry) + require.NoError(t, a.RPC("ConfigEntry.Get", &args, out)) + require.NotNil(t, out.Entry) entry := out.Entry.(*structs.ServiceConfigEntry) body = bytes.NewBuffer([]byte(` @@ -546,11 +541,11 @@ func TestConfig_Apply_CAS(t *testing.T) { req, _ = http.NewRequest("PUT", "/v1/config?cas=0", body) resp = httptest.NewRecorder() writtenRaw, err := a.srv.ConfigApply(resp, req) - require.NoError(err) + require.NoError(t, err) written, ok := writtenRaw.(bool) - require.True(ok) - require.False(written) - require.EqualValues(200, resp.Code, resp.Body.String()) + require.True(t, ok) + require.False(t, written) + require.EqualValues(t, 200, resp.Code, resp.Body.String()) body = bytes.NewBuffer([]byte(` { @@ -562,11 +557,11 @@ func TestConfig_Apply_CAS(t *testing.T) { req, _ = http.NewRequest("PUT", fmt.Sprintf("/v1/config?cas=%d", entry.GetRaftIndex().ModifyIndex), body) resp = httptest.NewRecorder() writtenRaw, err = a.srv.ConfigApply(resp, req) - require.NoError(err) + require.NoError(t, err) written, ok = writtenRaw.(bool) - require.True(ok) - require.True(written) - require.EqualValues(200, resp.Code, resp.Body.String()) + require.True(t, ok) + require.True(t, written) + require.EqualValues(t, 200, resp.Code, resp.Body.String()) // Get the entry remaining entry. args = structs.ConfigEntryQuery{ @@ -576,10 +571,10 @@ func TestConfig_Apply_CAS(t *testing.T) { } out = &structs.ConfigEntryResponse{} - require.NoError(a.RPC("ConfigEntry.Get", &args, out)) - require.NotNil(out.Entry) + require.NoError(t, a.RPC("ConfigEntry.Get", &args, out)) + require.NotNil(t, out.Entry) newEntry := out.Entry.(*structs.ServiceConfigEntry) - require.NotEqual(entry.GetRaftIndex(), newEntry.GetRaftIndex()) + require.NotEqual(t, entry.GetRaftIndex(), newEntry.GetRaftIndex()) } func TestConfig_Apply_Decoding(t *testing.T) { diff --git a/agent/connect/ca/provider_aws_test.go b/agent/connect/ca/provider_aws_test.go index dab8f8dcd..a090df785 100644 --- a/agent/connect/ca/provider_aws_test.go +++ b/agent/connect/ca/provider_aws_test.go @@ -38,7 +38,6 @@ func TestAWSBootstrapAndSignPrimary(t *testing.T) { for _, tc := range KeyTestCases { tc := tc t.Run(tc.Desc, func(t *testing.T) { - require := require.New(t) cfg := map[string]interface{}{ "PrivateKeyType": tc.KeyType, "PrivateKeyBits": tc.KeyBits, @@ -48,33 +47,33 @@ func TestAWSBootstrapAndSignPrimary(t *testing.T) { defer provider.Cleanup(true, nil) // Generate the root - require.NoError(provider.GenerateRoot()) + require.NoError(t, provider.GenerateRoot()) // Fetch Active Root rootPEM, err := provider.ActiveRoot() - require.NoError(err) + require.NoError(t, err) // Generate Intermediate (not actually needed for this provider for now // but this simulates the calls in Server.initializeRoot). interPEM, err := provider.GenerateIntermediate() - require.NoError(err) + require.NoError(t, err) // Should be the same for now - require.Equal(rootPEM, interPEM) + require.Equal(t, rootPEM, interPEM) // Ensure they use the right key type rootCert, err := connect.ParseCert(rootPEM) - require.NoError(err) + require.NoError(t, err) keyType, keyBits, err := connect.KeyInfoFromCert(rootCert) - require.NoError(err) - require.Equal(tc.KeyType, keyType) - require.Equal(tc.KeyBits, keyBits) + require.NoError(t, err) + require.Equal(t, tc.KeyType, keyType) + require.Equal(t, tc.KeyBits, keyBits) // Ensure that the root cert ttl is withing the configured value // computation is similar to how we are passing the TTL thru the aws client expectedTime := time.Now().AddDate(0, 0, int(8761*60*time.Minute/day)).UTC() - require.WithinDuration(expectedTime, rootCert.NotAfter, 10*time.Minute, "expected parsed cert ttl to be the same as the value configured") + require.WithinDuration(t, expectedTime, rootCert.NotAfter, 10*time.Minute, "expected parsed cert ttl to be the same as the value configured") // Sign a leaf with it testSignAndValidate(t, provider, rootPEM, nil) diff --git a/agent/connect/ca/provider_consul_test.go b/agent/connect/ca/provider_consul_test.go index c9fcc28d1..dd4fd12a7 100644 --- a/agent/connect/ca/provider_consul_test.go +++ b/agent/connect/ca/provider_consul_test.go @@ -78,26 +78,25 @@ func requireNotEncoded(t *testing.T, v []byte) { func TestConsulCAProvider_Bootstrap(t *testing.T) { t.Parallel() - require := require.New(t) conf := testConsulCAConfig() delegate := newMockDelegate(t, conf) provider := TestConsulProvider(t, delegate) - require.NoError(provider.Configure(testProviderConfig(conf))) - require.NoError(provider.GenerateRoot()) + require.NoError(t, provider.Configure(testProviderConfig(conf))) + require.NoError(t, provider.GenerateRoot()) root, err := provider.ActiveRoot() - require.NoError(err) + require.NoError(t, err) // Intermediate should be the same cert. inter, err := provider.ActiveIntermediate() - require.NoError(err) - require.Equal(root, inter) + require.NoError(t, err) + require.Equal(t, root, inter) // Should be a valid cert parsed, err := connect.ParseCert(root) - require.NoError(err) - require.Equal(parsed.URIs[0].String(), fmt.Sprintf("spiffe://%s.consul", conf.ClusterID)) + require.NoError(t, err) + require.Equal(t, parsed.URIs[0].String(), fmt.Sprintf("spiffe://%s.consul", conf.ClusterID)) requireNotEncoded(t, parsed.SubjectKeyId) requireNotEncoded(t, parsed.AuthorityKeyId) @@ -105,16 +104,15 @@ func TestConsulCAProvider_Bootstrap(t *testing.T) { // notice that we allow a margin of "error" of 10 minutes between the // generateCA() creation and this check defaultRootCertTTL, err := time.ParseDuration(structs.DefaultRootCertTTL) - require.NoError(err) + require.NoError(t, err) expectedNotAfter := time.Now().Add(defaultRootCertTTL).UTC() - require.WithinDuration(expectedNotAfter, parsed.NotAfter, 10*time.Minute, "expected parsed cert ttl to be the same as the value configured") + require.WithinDuration(t, expectedNotAfter, parsed.NotAfter, 10*time.Minute, "expected parsed cert ttl to be the same as the value configured") } func TestConsulCAProvider_Bootstrap_WithCert(t *testing.T) { t.Parallel() // Make sure setting a custom private key/root cert works. - require := require.New(t) rootCA := connect.TestCAWithTTL(t, nil, 5*time.Hour) conf := testConsulCAConfig() conf.Config = map[string]interface{}{ @@ -124,24 +122,24 @@ func TestConsulCAProvider_Bootstrap_WithCert(t *testing.T) { delegate := newMockDelegate(t, conf) provider := TestConsulProvider(t, delegate) - require.NoError(provider.Configure(testProviderConfig(conf))) - require.NoError(provider.GenerateRoot()) + require.NoError(t, provider.Configure(testProviderConfig(conf))) + require.NoError(t, provider.GenerateRoot()) root, err := provider.ActiveRoot() - require.NoError(err) - require.Equal(root, rootCA.RootCert) + require.NoError(t, err) + require.Equal(t, root, rootCA.RootCert) // Should be a valid cert parsed, err := connect.ParseCert(root) - require.NoError(err) + require.NoError(t, err) // test that the default root cert ttl was not applied to the provided cert defaultRootCertTTL, err := time.ParseDuration(structs.DefaultRootCertTTL) - require.NoError(err) + require.NoError(t, err) defaultNotAfter := time.Now().Add(defaultRootCertTTL).UTC() // we can't compare given the "delta" between the time the cert is generated // and when we start the test; so just look at the years for now, given different years - require.NotEqualf(defaultNotAfter.Year(), parsed.NotAfter.Year(), "parsed cert ttl expected to be different from default root cert ttl") + require.NotEqualf(t, defaultNotAfter.Year(), parsed.NotAfter.Year(), "parsed cert ttl expected to be different from default root cert ttl") } func TestConsulCAProvider_SignLeaf(t *testing.T) { @@ -154,7 +152,6 @@ func TestConsulCAProvider_SignLeaf(t *testing.T) { for _, tc := range KeyTestCases { tc := tc t.Run(tc.Desc, func(t *testing.T) { - require := require.New(t) conf := testConsulCAConfig() conf.Config["LeafCertTTL"] = "1h" conf.Config["PrivateKeyType"] = tc.KeyType @@ -162,8 +159,8 @@ func TestConsulCAProvider_SignLeaf(t *testing.T) { delegate := newMockDelegate(t, conf) provider := TestConsulProvider(t, delegate) - require.NoError(provider.Configure(testProviderConfig(conf))) - require.NoError(provider.GenerateRoot()) + require.NoError(t, provider.Configure(testProviderConfig(conf))) + require.NoError(t, provider.GenerateRoot()) spiffeService := &connect.SpiffeIDService{ Host: connect.TestClusterID + ".consul", @@ -177,26 +174,26 @@ func TestConsulCAProvider_SignLeaf(t *testing.T) { raw, _ := connect.TestCSR(t, spiffeService) csr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) cert, err := provider.Sign(csr) - require.NoError(err) + require.NoError(t, err) requireTrailingNewline(t, cert) parsed, err := connect.ParseCert(cert) - require.NoError(err) - require.Equal(spiffeService.URI(), parsed.URIs[0]) - require.Empty(parsed.Subject.CommonName) - require.Equal(uint64(3), parsed.SerialNumber.Uint64()) + require.NoError(t, err) + require.Equal(t, spiffeService.URI(), parsed.URIs[0]) + require.Empty(t, parsed.Subject.CommonName) + require.Equal(t, uint64(3), parsed.SerialNumber.Uint64()) subjectKeyID, err := connect.KeyId(csr.PublicKey) - require.NoError(err) - require.Equal(subjectKeyID, parsed.SubjectKeyId) + require.NoError(t, err) + require.Equal(t, subjectKeyID, parsed.SubjectKeyId) requireNotEncoded(t, parsed.SubjectKeyId) requireNotEncoded(t, parsed.AuthorityKeyId) // Ensure the cert is valid now and expires within the correct limit. now := time.Now() - require.True(parsed.NotAfter.Sub(now) < time.Hour) - require.True(parsed.NotBefore.Before(now)) + require.True(t, parsed.NotAfter.Sub(now) < time.Hour) + require.True(t, parsed.NotBefore.Before(now)) } // Generate a new cert for another service and make sure @@ -206,22 +203,22 @@ func TestConsulCAProvider_SignLeaf(t *testing.T) { raw, _ := connect.TestCSR(t, spiffeService) csr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) cert, err := provider.Sign(csr) - require.NoError(err) + require.NoError(t, err) parsed, err := connect.ParseCert(cert) - require.NoError(err) - require.Equal(spiffeService.URI(), parsed.URIs[0]) - require.Empty(parsed.Subject.CommonName) - require.Equal(uint64(4), parsed.SerialNumber.Uint64()) + require.NoError(t, err) + require.Equal(t, spiffeService.URI(), parsed.URIs[0]) + require.Empty(t, parsed.Subject.CommonName) + require.Equal(t, uint64(4), parsed.SerialNumber.Uint64()) requireNotEncoded(t, parsed.SubjectKeyId) requireNotEncoded(t, parsed.AuthorityKeyId) // Ensure the cert is valid now and expires within the correct limit. - require.True(time.Until(parsed.NotAfter) < 3*24*time.Hour) - require.True(parsed.NotBefore.Before(time.Now())) + require.True(t, time.Until(parsed.NotAfter) < 3*24*time.Hour) + require.True(t, parsed.NotBefore.Before(time.Now())) } spiffeAgent := &connect.SpiffeIDAgent{ @@ -234,23 +231,23 @@ func TestConsulCAProvider_SignLeaf(t *testing.T) { raw, _ := connect.TestCSR(t, spiffeAgent) csr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) cert, err := provider.Sign(csr) - require.NoError(err) + require.NoError(t, err) parsed, err := connect.ParseCert(cert) - require.NoError(err) - require.Equal(spiffeAgent.URI(), parsed.URIs[0]) - require.Empty(parsed.Subject.CommonName) - require.Equal(uint64(5), parsed.SerialNumber.Uint64()) + require.NoError(t, err) + require.Equal(t, spiffeAgent.URI(), parsed.URIs[0]) + require.Empty(t, parsed.Subject.CommonName) + require.Equal(t, uint64(5), parsed.SerialNumber.Uint64()) requireNotEncoded(t, parsed.SubjectKeyId) requireNotEncoded(t, parsed.AuthorityKeyId) // Ensure the cert is valid now and expires within the correct limit. now := time.Now() - require.True(parsed.NotAfter.Sub(now) < time.Hour) - require.True(parsed.NotBefore.Before(now)) + require.True(t, parsed.NotAfter.Sub(now) < time.Hour) + require.True(t, parsed.NotBefore.Before(now)) } }) } @@ -268,15 +265,14 @@ func TestConsulCAProvider_CrossSignCA(t *testing.T) { for _, tc := range tests { tc := tc t.Run(tc.Desc, func(t *testing.T) { - require := require.New(t) conf1 := testConsulCAConfig() delegate1 := newMockDelegate(t, conf1) provider1 := TestConsulProvider(t, delegate1) conf1.Config["PrivateKeyType"] = tc.SigningKeyType conf1.Config["PrivateKeyBits"] = tc.SigningKeyBits - require.NoError(provider1.Configure(testProviderConfig(conf1))) - require.NoError(provider1.GenerateRoot()) + require.NoError(t, provider1.Configure(testProviderConfig(conf1))) + require.NoError(t, provider1.GenerateRoot()) conf2 := testConsulCAConfig() conf2.CreateIndex = 10 @@ -284,8 +280,8 @@ func TestConsulCAProvider_CrossSignCA(t *testing.T) { provider2 := TestConsulProvider(t, delegate2) conf2.Config["PrivateKeyType"] = tc.CSRKeyType conf2.Config["PrivateKeyBits"] = tc.CSRKeyBits - require.NoError(provider2.Configure(testProviderConfig(conf2))) - require.NoError(provider2.GenerateRoot()) + require.NoError(t, provider2.Configure(testProviderConfig(conf2))) + require.NoError(t, provider2.GenerateRoot()) testCrossSignProviders(t, provider1, provider2) }) @@ -293,52 +289,51 @@ func TestConsulCAProvider_CrossSignCA(t *testing.T) { } func testCrossSignProviders(t *testing.T, provider1, provider2 Provider) { - require := require.New(t) // Get the root from the new provider to be cross-signed. newRootPEM, err := provider2.ActiveRoot() - require.NoError(err) + require.NoError(t, err) newRoot, err := connect.ParseCert(newRootPEM) - require.NoError(err) + require.NoError(t, err) oldSubject := newRoot.Subject.CommonName requireNotEncoded(t, newRoot.SubjectKeyId) requireNotEncoded(t, newRoot.AuthorityKeyId) newInterPEM, err := provider2.ActiveIntermediate() - require.NoError(err) + require.NoError(t, err) newIntermediate, err := connect.ParseCert(newInterPEM) - require.NoError(err) + require.NoError(t, err) requireNotEncoded(t, newIntermediate.SubjectKeyId) requireNotEncoded(t, newIntermediate.AuthorityKeyId) // Have provider1 cross sign our new root cert. xcPEM, err := provider1.CrossSignCA(newRoot) - require.NoError(err) + require.NoError(t, err) xc, err := connect.ParseCert(xcPEM) - require.NoError(err) + require.NoError(t, err) requireNotEncoded(t, xc.SubjectKeyId) requireNotEncoded(t, xc.AuthorityKeyId) oldRootPEM, err := provider1.ActiveRoot() - require.NoError(err) + require.NoError(t, err) oldRoot, err := connect.ParseCert(oldRootPEM) - require.NoError(err) + require.NoError(t, err) requireNotEncoded(t, oldRoot.SubjectKeyId) requireNotEncoded(t, oldRoot.AuthorityKeyId) // AuthorityKeyID should now be the signing root's, SubjectKeyId should be kept. - require.Equal(oldRoot.SubjectKeyId, xc.AuthorityKeyId, + require.Equal(t, oldRoot.SubjectKeyId, xc.AuthorityKeyId, "newSKID=%x\nnewAKID=%x\noldSKID=%x\noldAKID=%x\nxcSKID=%x\nxcAKID=%x", newRoot.SubjectKeyId, newRoot.AuthorityKeyId, oldRoot.SubjectKeyId, oldRoot.AuthorityKeyId, xc.SubjectKeyId, xc.AuthorityKeyId) - require.Equal(newRoot.SubjectKeyId, xc.SubjectKeyId) + require.Equal(t, newRoot.SubjectKeyId, xc.SubjectKeyId) // Subject name should not have changed. - require.Equal(oldSubject, xc.Subject.CommonName) + require.Equal(t, oldSubject, xc.Subject.CommonName) // Issuer should be the signing root. - require.Equal(oldRoot.Issuer.CommonName, xc.Issuer.CommonName) + require.Equal(t, oldRoot.Issuer.CommonName, xc.Issuer.CommonName) // Get a leaf cert so we can verify against the cross-signed cert. spiffeService := &connect.SpiffeIDService{ @@ -350,13 +345,13 @@ func testCrossSignProviders(t *testing.T, provider1, provider2 Provider) { raw, _ := connect.TestCSR(t, spiffeService) leafCsr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) leafPEM, err := provider2.Sign(leafCsr) - require.NoError(err) + require.NoError(t, err) cert, err := connect.ParseCert(leafPEM) - require.NoError(err) + require.NoError(t, err) requireNotEncoded(t, cert.SubjectKeyId) requireNotEncoded(t, cert.AuthorityKeyId) @@ -374,7 +369,7 @@ func testCrossSignProviders(t *testing.T, provider1, provider2 Provider) { Intermediates: intermediatePool, Roots: rootPool, }) - require.NoError(err) + require.NoError(t, err) } } @@ -390,15 +385,14 @@ func TestConsulProvider_SignIntermediate(t *testing.T) { for _, tc := range tests { tc := tc t.Run(tc.Desc, func(t *testing.T) { - require := require.New(t) conf1 := testConsulCAConfig() delegate1 := newMockDelegate(t, conf1) provider1 := TestConsulProvider(t, delegate1) conf1.Config["PrivateKeyType"] = tc.SigningKeyType conf1.Config["PrivateKeyBits"] = tc.SigningKeyBits - require.NoError(provider1.Configure(testProviderConfig(conf1))) - require.NoError(provider1.GenerateRoot()) + require.NoError(t, provider1.Configure(testProviderConfig(conf1))) + require.NoError(t, provider1.GenerateRoot()) conf2 := testConsulCAConfig() conf2.CreateIndex = 10 @@ -409,7 +403,7 @@ func TestConsulProvider_SignIntermediate(t *testing.T) { cfg := testProviderConfig(conf2) cfg.IsPrimary = false cfg.Datacenter = "dc2" - require.NoError(provider2.Configure(cfg)) + require.NoError(t, provider2.Configure(cfg)) testSignIntermediateCrossDC(t, provider1, provider2) }) @@ -418,22 +412,21 @@ func TestConsulProvider_SignIntermediate(t *testing.T) { } func testSignIntermediateCrossDC(t *testing.T, provider1, provider2 Provider) { - require := require.New(t) // Get the intermediate CSR from provider2. csrPEM, err := provider2.GenerateIntermediateCSR() - require.NoError(err) + require.NoError(t, err) csr, err := connect.ParseCSR(csrPEM) - require.NoError(err) + require.NoError(t, err) // Sign the CSR with provider1. intermediatePEM, err := provider1.SignIntermediate(csr) - require.NoError(err) + require.NoError(t, err) rootPEM, err := provider1.ActiveRoot() - require.NoError(err) + require.NoError(t, err) // Give the new intermediate to provider2 to use. - require.NoError(provider2.SetIntermediate(intermediatePEM, rootPEM)) + require.NoError(t, provider2.SetIntermediate(intermediatePEM, rootPEM)) // Have provider2 sign a leaf cert and make sure the chain is correct. spiffeService := &connect.SpiffeIDService{ @@ -445,13 +438,13 @@ func testSignIntermediateCrossDC(t *testing.T, provider1, provider2 Provider) { raw, _ := connect.TestCSR(t, spiffeService) leafCsr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) leafPEM, err := provider2.Sign(leafCsr) - require.NoError(err) + require.NoError(t, err) cert, err := connect.ParseCert(leafPEM) - require.NoError(err) + require.NoError(t, err) requireNotEncoded(t, cert.SubjectKeyId) requireNotEncoded(t, cert.AuthorityKeyId) @@ -466,7 +459,7 @@ func testSignIntermediateCrossDC(t *testing.T, provider1, provider2 Provider) { Intermediates: intermediatePool, Roots: rootPool, }) - require.NoError(err) + require.NoError(t, err) } func TestConsulCAProvider_MigrateOldID(t *testing.T) { diff --git a/agent/connect/ca/provider_vault_test.go b/agent/connect/ca/provider_vault_test.go index f09b7717e..bba2cd04a 100644 --- a/agent/connect/ca/provider_vault_test.go +++ b/agent/connect/ca/provider_vault_test.go @@ -116,13 +116,12 @@ func TestVaultCAProvider_VaultTLSConfig(t *testing.T) { TLSSkipVerify: true, } tlsConfig := vaultTLSConfig(config) - require := require.New(t) - require.Equal(config.CAFile, tlsConfig.CACert) - require.Equal(config.CAPath, tlsConfig.CAPath) - require.Equal(config.CertFile, tlsConfig.ClientCert) - require.Equal(config.KeyFile, tlsConfig.ClientKey) - require.Equal(config.TLSServerName, tlsConfig.TLSServerName) - require.Equal(config.TLSSkipVerify, tlsConfig.Insecure) + require.Equal(t, config.CAFile, tlsConfig.CACert) + require.Equal(t, config.CAPath, tlsConfig.CAPath) + require.Equal(t, config.CertFile, tlsConfig.ClientCert) + require.Equal(t, config.KeyFile, tlsConfig.ClientKey) + require.Equal(t, config.TLSServerName, tlsConfig.TLSServerName) + require.Equal(t, config.TLSSkipVerify, tlsConfig.Insecure) } func TestVaultCAProvider_Configure(t *testing.T) { @@ -171,11 +170,10 @@ func TestVaultCAProvider_SecondaryActiveIntermediate(t *testing.T) { provider, testVault := testVaultProviderWithConfig(t, false, nil) defer testVault.Stop() - require := require.New(t) cert, err := provider.ActiveIntermediate() - require.Empty(cert) - require.NoError(err) + require.Empty(t, cert) + require.NoError(t, err) } func TestVaultCAProvider_RenewToken(t *testing.T) { @@ -231,8 +229,6 @@ func TestVaultCAProvider_Bootstrap(t *testing.T) { defer testvault2.Stop() client2 := testvault2.client - require := require.New(t) - cases := []struct { certFunc func() (string, error) backendPath string @@ -264,28 +260,28 @@ func TestVaultCAProvider_Bootstrap(t *testing.T) { provider := tc.provider client := tc.client cert, err := tc.certFunc() - require.NoError(err) + require.NoError(t, err) req := client.NewRequest("GET", "/v1/"+tc.backendPath+"ca/pem") resp, err := client.RawRequest(req) - require.NoError(err) + require.NoError(t, err) bytes, err := ioutil.ReadAll(resp.Body) - require.NoError(err) - require.Equal(cert, string(bytes)+"\n") + require.NoError(t, err) + require.Equal(t, cert, string(bytes)+"\n") // Should be a valid CA cert parsed, err := connect.ParseCert(cert) - require.NoError(err) - require.True(parsed.IsCA) - require.Len(parsed.URIs, 1) - require.Equal(fmt.Sprintf("spiffe://%s.consul", provider.clusterID), parsed.URIs[0].String()) + require.NoError(t, err) + require.True(t, parsed.IsCA) + require.Len(t, parsed.URIs, 1) + require.Equal(t, fmt.Sprintf("spiffe://%s.consul", provider.clusterID), parsed.URIs[0].String()) // test that the root cert ttl as applied if tc.rootCaCreation { rootCertTTL, err := time.ParseDuration(tc.expectedRootCertTTL) - require.NoError(err) + require.NoError(t, err) expectedNotAfter := time.Now().Add(rootCertTTL).UTC() - require.WithinDuration(expectedNotAfter, parsed.NotAfter, 10*time.Minute, "expected parsed cert ttl to be the same as the value configured") + require.WithinDuration(t, expectedNotAfter, parsed.NotAfter, 10*time.Minute, "expected parsed cert ttl to be the same as the value configured") } } } @@ -313,7 +309,6 @@ func TestVaultCAProvider_SignLeaf(t *testing.T) { for _, tc := range KeyTestCases { tc := tc t.Run(tc.Desc, func(t *testing.T) { - require := require.New(t) provider, testVault := testVaultProviderWithConfig(t, true, map[string]interface{}{ "LeafCertTTL": "1h", "PrivateKeyType": tc.KeyType, @@ -329,11 +324,11 @@ func TestVaultCAProvider_SignLeaf(t *testing.T) { } rootPEM, err := provider.ActiveRoot() - require.NoError(err) + require.NoError(t, err) assertCorrectKeyType(t, tc.KeyType, rootPEM) intPEM, err := provider.ActiveIntermediate() - require.NoError(err) + require.NoError(t, err) assertCorrectKeyType(t, tc.KeyType, intPEM) // Generate a leaf cert for the service. @@ -342,23 +337,23 @@ func TestVaultCAProvider_SignLeaf(t *testing.T) { raw, _ := connect.TestCSR(t, spiffeService) csr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) cert, err := provider.Sign(csr) - require.NoError(err) + require.NoError(t, err) parsed, err := connect.ParseCert(cert) - require.NoError(err) - require.Equal(parsed.URIs[0], spiffeService.URI()) + require.NoError(t, err) + require.Equal(t, parsed.URIs[0], spiffeService.URI()) firstSerial = parsed.SerialNumber.Uint64() // Ensure the cert is valid now and expires within the correct limit. now := time.Now() - require.True(parsed.NotAfter.Sub(now) < time.Hour) - require.True(parsed.NotBefore.Before(now)) + require.True(t, parsed.NotAfter.Sub(now) < time.Hour) + require.True(t, parsed.NotBefore.Before(now)) // Make sure we can validate the cert as expected. - require.NoError(connect.ValidateLeaf(rootPEM, cert, []string{intPEM})) + require.NoError(t, connect.ValidateLeaf(rootPEM, cert, []string{intPEM})) requireTrailingNewline(t, cert) } @@ -369,22 +364,22 @@ func TestVaultCAProvider_SignLeaf(t *testing.T) { raw, _ := connect.TestCSR(t, spiffeService) csr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) cert, err := provider.Sign(csr) - require.NoError(err) + require.NoError(t, err) parsed, err := connect.ParseCert(cert) - require.NoError(err) - require.Equal(parsed.URIs[0], spiffeService.URI()) - require.NotEqual(firstSerial, parsed.SerialNumber.Uint64()) + require.NoError(t, err) + require.Equal(t, parsed.URIs[0], spiffeService.URI()) + require.NotEqual(t, firstSerial, parsed.SerialNumber.Uint64()) // Ensure the cert is valid now and expires within the correct limit. - require.True(time.Until(parsed.NotAfter) < time.Hour) - require.True(parsed.NotBefore.Before(time.Now())) + require.True(t, time.Until(parsed.NotAfter) < time.Hour) + require.True(t, parsed.NotBefore.Before(time.Now())) // Make sure we can validate the cert as expected. - require.NoError(connect.ValidateLeaf(rootPEM, cert, []string{intPEM})) + require.NoError(t, connect.ValidateLeaf(rootPEM, cert, []string{intPEM})) } }) } @@ -399,7 +394,6 @@ func TestVaultCAProvider_CrossSignCA(t *testing.T) { for _, tc := range tests { tc := tc t.Run(tc.Desc, func(t *testing.T) { - require := require.New(t) if tc.SigningKeyType != tc.CSRKeyType { // See https://github.com/hashicorp/vault/issues/7709 @@ -414,11 +408,11 @@ func TestVaultCAProvider_CrossSignCA(t *testing.T) { { rootPEM, err := provider1.ActiveRoot() - require.NoError(err) + require.NoError(t, err) assertCorrectKeyType(t, tc.SigningKeyType, rootPEM) intPEM, err := provider1.ActiveIntermediate() - require.NoError(err) + require.NoError(t, err) assertCorrectKeyType(t, tc.SigningKeyType, intPEM) } @@ -431,11 +425,11 @@ func TestVaultCAProvider_CrossSignCA(t *testing.T) { { rootPEM, err := provider2.ActiveRoot() - require.NoError(err) + require.NoError(t, err) assertCorrectKeyType(t, tc.CSRKeyType, rootPEM) intPEM, err := provider2.ActiveIntermediate() - require.NoError(err) + require.NoError(t, err) assertCorrectKeyType(t, tc.CSRKeyType, intPEM) } diff --git a/agent/connect/generate_test.go b/agent/connect/generate_test.go index 21e2f72e9..b6234a497 100644 --- a/agent/connect/generate_test.go +++ b/agent/connect/generate_test.go @@ -48,32 +48,30 @@ func makeConfig(kc KeyConfig) structs.CommonCAProviderConfig { } func testGenerateRSAKey(t *testing.T, bits int) { - require := require.New(t) _, rsaBlock, err := GeneratePrivateKeyWithConfig("rsa", bits) - require.NoError(err) - require.Contains(rsaBlock, "RSA PRIVATE KEY") + require.NoError(t, err) + require.Contains(t, rsaBlock, "RSA PRIVATE KEY") rsaBytes, _ := pem.Decode([]byte(rsaBlock)) - require.NotNil(rsaBytes) + require.NotNil(t, rsaBytes) rsaKey, err := x509.ParsePKCS1PrivateKey(rsaBytes.Bytes) - require.NoError(err) - require.NoError(rsaKey.Validate()) - require.Equal(bits/8, rsaKey.Size()) // note: returned size is in bytes. 2048/8==256 + require.NoError(t, err) + require.NoError(t, rsaKey.Validate()) + require.Equal(t, bits/8, rsaKey.Size()) // note: returned size is in bytes. 2048/8==256 } func testGenerateECDSAKey(t *testing.T, bits int) { - require := require.New(t) _, pemBlock, err := GeneratePrivateKeyWithConfig("ec", bits) - require.NoError(err) - require.Contains(pemBlock, "EC PRIVATE KEY") + require.NoError(t, err) + require.Contains(t, pemBlock, "EC PRIVATE KEY") block, _ := pem.Decode([]byte(pemBlock)) - require.NotNil(block) + require.NotNil(t, block) pk, err := x509.ParseECPrivateKey(block.Bytes) - require.NoError(err) - require.Equal(bits, pk.Curve.Params().BitSize) + require.NoError(t, err) + require.Equal(t, bits, pk.Curve.Params().BitSize) } // Tests to make sure we are able to generate every type of private key supported by the x509 lib. @@ -132,7 +130,6 @@ func TestSignatureMismatches(t *testing.T) { } t.Parallel() - require := require.New(t) for _, p1 := range goodParams { for _, p2 := range goodParams { if p1 == p2 { @@ -140,14 +137,14 @@ func TestSignatureMismatches(t *testing.T) { } t.Run(fmt.Sprintf("TestMismatches-%s%d-%s%d", p1.keyType, p1.keyBits, p2.keyType, p2.keyBits), func(t *testing.T) { ca := TestCAWithKeyType(t, nil, p1.keyType, p1.keyBits) - require.Equal(p1.keyType, ca.PrivateKeyType) - require.Equal(p1.keyBits, ca.PrivateKeyBits) + require.Equal(t, p1.keyType, ca.PrivateKeyType) + require.Equal(t, p1.keyBits, ca.PrivateKeyBits) certPEM, keyPEM, err := testLeaf(t, "foobar.service.consul", "default", ca, p2.keyType, p2.keyBits) - require.NoError(err) + require.NoError(t, err) _, err = ParseCert(certPEM) - require.NoError(err) + require.NoError(t, err) _, err = ParseSigner(keyPEM) - require.NoError(err) + require.NoError(t, err) }) } } diff --git a/agent/connect/testing_ca_test.go b/agent/connect/testing_ca_test.go index 2cee472a9..fa0233c19 100644 --- a/agent/connect/testing_ca_test.go +++ b/agent/connect/testing_ca_test.go @@ -29,20 +29,18 @@ func skipIfMissingOpenSSL(t *testing.T) { func testCAAndLeaf(t *testing.T, keyType string, keyBits int) { skipIfMissingOpenSSL(t) - require := require.New(t) - // Create the certs ca := TestCAWithKeyType(t, nil, keyType, keyBits) leaf, _ := TestLeaf(t, "web", ca) // Create a temporary directory for storing the certs td, err := ioutil.TempDir("", "consul") - require.NoError(err) + require.NoError(t, err) defer os.RemoveAll(td) // Write the cert - require.NoError(ioutil.WriteFile(filepath.Join(td, "ca.pem"), []byte(ca.RootCert), 0644)) - require.NoError(ioutil.WriteFile(filepath.Join(td, "leaf.pem"), []byte(leaf[:]), 0644)) + require.NoError(t, ioutil.WriteFile(filepath.Join(td, "ca.pem"), []byte(ca.RootCert), 0644)) + require.NoError(t, ioutil.WriteFile(filepath.Join(td, "leaf.pem"), []byte(leaf[:]), 0644)) // Use OpenSSL to verify so we have an external, known-working process // that can verify this outside of our own implementations. @@ -54,15 +52,13 @@ func testCAAndLeaf(t *testing.T, keyType string, keyBits int) { if ee, ok := err.(*exec.ExitError); ok { t.Log("STDERR:", string(ee.Stderr)) } - require.NoError(err) + require.NoError(t, err) } // Test cross-signing. func testCAAndLeaf_xc(t *testing.T, keyType string, keyBits int) { skipIfMissingOpenSSL(t) - assert := assert.New(t) - // Create the certs ca1 := TestCAWithKeyType(t, nil, keyType, keyBits) ca2 := TestCAWithKeyType(t, ca1, keyType, keyBits) @@ -71,16 +67,16 @@ func testCAAndLeaf_xc(t *testing.T, keyType string, keyBits int) { // Create a temporary directory for storing the certs td, err := ioutil.TempDir("", "consul") - assert.Nil(err) + assert.Nil(t, err) defer os.RemoveAll(td) // Write the cert xcbundle := []byte(ca1.RootCert) xcbundle = append(xcbundle, '\n') xcbundle = append(xcbundle, []byte(ca2.SigningCert)...) - assert.Nil(ioutil.WriteFile(filepath.Join(td, "ca.pem"), xcbundle, 0644)) - assert.Nil(ioutil.WriteFile(filepath.Join(td, "leaf1.pem"), []byte(leaf1), 0644)) - assert.Nil(ioutil.WriteFile(filepath.Join(td, "leaf2.pem"), []byte(leaf2), 0644)) + assert.Nil(t, ioutil.WriteFile(filepath.Join(td, "ca.pem"), xcbundle, 0644)) + assert.Nil(t, ioutil.WriteFile(filepath.Join(td, "leaf1.pem"), []byte(leaf1), 0644)) + assert.Nil(t, ioutil.WriteFile(filepath.Join(td, "leaf2.pem"), []byte(leaf2), 0644)) // OpenSSL verify the cross-signed leaf (leaf2) { @@ -89,7 +85,7 @@ func testCAAndLeaf_xc(t *testing.T, keyType string, keyBits int) { cmd.Dir = td output, err := cmd.Output() t.Log(string(output)) - assert.Nil(err) + assert.Nil(t, err) } // OpenSSL verify the old leaf (leaf1) @@ -99,7 +95,7 @@ func testCAAndLeaf_xc(t *testing.T, keyType string, keyBits int) { cmd.Dir = td output, err := cmd.Output() t.Log(string(output)) - assert.Nil(err) + assert.Nil(t, err) } } diff --git a/agent/connect_ca_endpoint_test.go b/agent/connect_ca_endpoint_test.go index 0256151f8..27e916155 100644 --- a/agent/connect_ca_endpoint_test.go +++ b/agent/connect_ca_endpoint_test.go @@ -43,7 +43,6 @@ func TestConnectCARoots_list(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -56,16 +55,16 @@ func TestConnectCARoots_list(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/connect/ca/roots", nil) resp := httptest.NewRecorder() obj, err := a.srv.ConnectCARoots(resp, req) - assert.NoError(err) + assert.NoError(t, err) value := obj.(structs.IndexedCARoots) - assert.Equal(value.ActiveRootID, ca2.ID) - assert.Len(value.Roots, 2) + assert.Equal(t, value.ActiveRootID, ca2.ID) + assert.Len(t, value.Roots, 2) // We should never have the secret information for _, r := range value.Roots { - assert.Equal("", r.SigningCert) - assert.Equal("", r.SigningKey) + assert.Equal(t, "", r.SigningCert) + assert.Equal(t, "", r.SigningKey) } } diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index f4ca0610b..d45b1e197 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -2167,7 +2167,6 @@ func TestACL_filterHealthChecks(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -2177,66 +2176,63 @@ func TestACL_filterHealthChecks(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.HealthChecks, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.HealthChecks, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.HealthChecks) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.HealthChecks) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.HealthChecks) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.HealthChecks) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.HealthChecks) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.HealthChecks) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -2261,51 +2257,46 @@ func TestACL_filterIntentions(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.AllowAll(), list) - require.Len(list.Intentions, 2) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Intentions, 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read 1", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Intentions, 1) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, list.Intentions, 1) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Intentions) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Intentions) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } func TestACL_filterServices(t *testing.T) { t.Parallel() - require := require.New(t) - // Create some services services := structs.Services{ "service1": []string{}, @@ -2316,14 +2307,14 @@ func TestACL_filterServices(t *testing.T) { // Try permissive filtering. filt := newACLFilter(acl.AllowAll(), nil) removed := filt.filterServices(services, nil) - require.False(removed) - require.Len(services, 3) + require.False(t, removed) + require.Len(t, services, 3) // Try restrictive filtering. filt = newACLFilter(acl.DenyAll(), nil) removed = filt.filterServices(services, nil) - require.True(removed) - require.Empty(services) + require.True(t, removed) + require.Empty(t, services) } func TestACL_filterServiceNodes(t *testing.T) { @@ -2343,7 +2334,6 @@ func TestACL_filterServiceNodes(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -2353,46 +2343,44 @@ func TestACL_filterServiceNodes(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.ServiceNodes, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.ServiceNodes, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.ServiceNodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.ServiceNodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.ServiceNodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.ServiceNodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -2418,19 +2406,17 @@ func TestACL_filterNodeServices(t *testing.T) { } t.Run("nil input", func(t *testing.T) { - require := require.New(t) list := &structs.IndexedNodeServices{ NodeServices: nil, } filterACLWithAuthorizer(logger, acl.AllowAll(), list) - require.Nil(list.NodeServices) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Nil(t, list.NodeServices) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -2440,66 +2426,63 @@ func TestACL_filterNodeServices(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.NodeServices.Services, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.NodeServices.Services, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Nil(list.NodeServices) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Nil(t, list.NodeServices) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.NodeServices.Services) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.NodeServices.Services) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Nil(list.NodeServices) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Nil(t, list.NodeServices) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -2522,17 +2505,15 @@ func TestACL_filterNodeServiceList(t *testing.T) { } t.Run("empty NodeServices", func(t *testing.T) { - require := require.New(t) var list structs.IndexedNodeServiceList filterACLWithAuthorizer(logger, acl.AllowAll(), &list) - require.Empty(list) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Empty(t, list) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -2542,67 +2523,64 @@ func TestACL_filterNodeServiceList(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.NodeServices.Services, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.NodeServices.Services, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.NodeServices) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.NodeServices) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.NotEmpty(list.NodeServices.Node) - require.Empty(list.NodeServices.Services) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NotEmpty(t, list.NodeServices.Node) + require.Empty(t, list.NodeServices.Services) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.NodeServices) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.NodeServices) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -2620,33 +2598,31 @@ func TestACL_filterGatewayServices(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Services, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Services, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Services) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Services) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -2679,7 +2655,6 @@ func TestACL_filterCheckServiceNodes(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -2689,66 +2664,63 @@ func TestACL_filterCheckServiceNodes(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Nodes, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Nodes, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Nodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Nodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Nodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -2781,7 +2753,6 @@ func TestACL_filterPreparedQueryExecuteResponse(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -2791,66 +2762,63 @@ func TestACL_filterPreparedQueryExecuteResponse(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Nodes, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Nodes, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Nodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Nodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Nodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3029,43 +2997,40 @@ func TestACL_filterCoordinates(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.AllowAll(), list) - require.Len(list.Coordinates, 2) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Coordinates, 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read one node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Coordinates, 1) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, list.Coordinates, 1) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Coordinates) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Coordinates) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3084,43 +3049,40 @@ func TestACL_filterSessions(t *testing.T) { } t.Run("all allowed", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.AllowAll(), list) - require.Len(list.Sessions, 2) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Sessions, 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("just one node's sessions allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` session "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Sessions, 1) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, list.Sessions, 1) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Sessions) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Sessions) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3153,7 +3115,6 @@ func TestACL_filterNodeDump(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -3163,75 +3124,70 @@ func TestACL_filterNodeDump(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Dump, 1) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Dump, 1) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Dump) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Dump) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Dump, 1) - require.Empty(list.Dump[0].Services) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, list.Dump, 1) + require.Empty(t, list.Dump[0].Services) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Dump) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Dump) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } func TestACL_filterNodes(t *testing.T) { t.Parallel() - require := require.New(t) - // Create a nodes list. nodes := structs.Nodes{ &structs.Node{ @@ -3245,14 +3201,14 @@ func TestACL_filterNodes(t *testing.T) { // Try permissive filtering. filt := newACLFilter(acl.AllowAll(), nil) removed := filt.filterNodes(&nodes) - require.False(removed) - require.Len(nodes, 2) + require.False(t, removed) + require.Len(t, nodes, 2) // Try restrictive filtering filt = newACLFilter(acl.DenyAll(), nil) removed = filt.filterNodes(&nodes) - require.True(removed) - require.Len(nodes, 0) + require.True(t, removed) + require.Len(t, nodes, 0) } func TestACL_filterIndexedNodesWithGateways(t *testing.T) { @@ -3288,7 +3244,6 @@ func TestACL_filterIndexedNodesWithGateways(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -3301,21 +3256,20 @@ func TestACL_filterIndexedNodesWithGateways(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Nodes, 1) - require.Len(list.Gateways, 2) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Nodes, 1) + require.Len(t, list.Gateways, 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("not allowed to read the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -3325,21 +3279,20 @@ func TestACL_filterIndexedNodesWithGateways(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Nodes) - require.Len(list.Gateways, 2) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.Len(t, list.Gateways, 2) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { @@ -3349,21 +3302,20 @@ func TestACL_filterIndexedNodesWithGateways(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Nodes) - require.Len(list.Gateways, 1) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.Len(t, list.Gateways, 1) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("not allowed to read the other gatway service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service "foo" { @@ -3373,28 +3325,27 @@ func TestACL_filterIndexedNodesWithGateways(t *testing.T) { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Nodes, 1) - require.Len(list.Gateways, 1) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, list.Nodes, 1) + require.Len(t, list.Gateways, 1) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Nodes) - require.Empty(list.Gateways) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Nodes) + require.Empty(t, list.Gateways) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3430,7 +3381,6 @@ func TestACL_filterIndexedServiceDump(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { @@ -3443,20 +3393,19 @@ func TestACL_filterIndexedServiceDump(t *testing.T) { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Dump, 2) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Dump, 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("not allowed to access node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service_prefix "foo" { @@ -3466,21 +3415,20 @@ func TestACL_filterIndexedServiceDump(t *testing.T) { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.Dump, 1) - require.Equal("bar", list.Dump[0].GatewayService.Service.Name) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, list.Dump, 1) + require.Equal(t, "bar", list.Dump[0].GatewayService.Service.Name) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("not allowed to access service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { @@ -3490,20 +3438,19 @@ func TestACL_filterIndexedServiceDump(t *testing.T) { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Dump) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Dump) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("not allowed to access gateway", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node "node1" { @@ -3513,16 +3460,16 @@ func TestACL_filterIndexedServiceDump(t *testing.T) { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.Dump) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Dump) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3555,7 +3502,6 @@ func TestACL_filterDatacenterCheckServiceNodes(t *testing.T) { } t.Run("allowed", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node_prefix "" { @@ -3565,67 +3511,64 @@ func TestACL_filterDatacenterCheckServiceNodes(t *testing.T) { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Len(list.DatacenterNodes["dc1"], 2) - require.Len(list.DatacenterNodes["dc2"], 2) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.DatacenterNodes["dc1"], 2) + require.Len(t, list.DatacenterNodes["dc2"], 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("allowed to read the service, but not the node", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` service_prefix "" { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.DatacenterNodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.DatacenterNodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allowed to read the node, but not the service", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` node_prefix "" { policy = "read" } `, acl.SyntaxCurrent, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) - require.Empty(list.DatacenterNodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.DatacenterNodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("denied", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.DatacenterNodes) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.DatacenterNodes) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3745,22 +3688,20 @@ func TestACL_filterPreparedQueries(t *testing.T) { } t.Run("management token", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.ManageAll(), list) // Check we get the un-named query. - require.Len(list.Queries, 3) + require.Len(t, list.Queries, 3) // Check we get the un-redacted token. - require.Equal("root", list.Queries[2].Token) + require.Equal(t, "root", list.Queries[2].Token) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("permissive filtering", func(t *testing.T) { - require := require.New(t) list := makeList() queryWithToken := list.Queries[2] @@ -3768,52 +3709,50 @@ func TestACL_filterPreparedQueries(t *testing.T) { filterACLWithAuthorizer(logger, acl.AllowAll(), list) // Check the un-named query is filtered out. - require.Len(list.Queries, 2) + require.Len(t, list.Queries, 2) // Check the token is redacted. - require.Equal(redactedToken, list.Queries[1].Token) + require.Equal(t, redactedToken, list.Queries[1].Token) // Check the original object is unmodified. - require.Equal("root", queryWithToken.Token) + require.Equal(t, "root", queryWithToken.Token) // ResultsFilteredByACLs should not include un-named queries, which are only // readable by a management token. - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("limited access", func(t *testing.T) { - require := require.New(t) policy, err := acl.NewPolicyFromSource(` query "query-with-a-token" { policy = "read" } `, acl.SyntaxLegacy, nil, nil) - require.NoError(err) + require.NoError(t, err) authz, err := acl.NewPolicyAuthorizerWithDefaults(acl.DenyAll(), []*acl.Policy{policy}, nil) - require.NoError(err) + require.NoError(t, err) list := makeList() filterACLWithAuthorizer(logger, authz, list) // Check we only get the query we have access to. - require.Len(list.Queries, 1) + require.Len(t, list.Queries, 1) // Check the token is redacted. - require.Equal(redactedToken, list.Queries[0].Token) + require.Equal(t, redactedToken, list.Queries[0].Token) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("restrictive filtering", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.Empty(list.Queries) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Queries) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } @@ -3830,23 +3769,21 @@ func TestACL_filterServiceList(t *testing.T) { } t.Run("permissive filtering", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.AllowAll(), list) - require.False(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") - require.Len(list.Services, 2) + require.False(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, list.Services, 2) }) t.Run("restrictive filtering", func(t *testing.T) { - require := require.New(t) list := makeList() filterACLWithAuthorizer(logger, acl.DenyAll(), list) - require.True(list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") - require.Empty(list.Services) + require.True(t, list.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Empty(t, list.Services) }) } diff --git a/agent/consul/autopilot_test.go b/agent/consul/autopilot_test.go index 1935fc5e8..faf1facc4 100644 --- a/agent/consul/autopilot_test.go +++ b/agent/consul/autopilot_test.go @@ -77,7 +77,6 @@ func TestAutopilot_CleanupDeadServer(t *testing.T) { retry.Run(t, func(r *retry.R) { r.Check(wantPeers(s, 5)) }) } - require := require.New(t) testrpc.WaitForLeader(t, s1.RPC, "dc1") leaderIndex := -1 for i, s := range servers { @@ -86,7 +85,7 @@ func TestAutopilot_CleanupDeadServer(t *testing.T) { break } } - require.NotEqual(leaderIndex, -1) + require.NotEqual(t, leaderIndex, -1) // Shutdown two non-leader servers killed := make(map[string]struct{}) diff --git a/agent/consul/catalog_endpoint_test.go b/agent/consul/catalog_endpoint_test.go index 8b2e9101e..f789c77eb 100644 --- a/agent/consul/catalog_endpoint_test.go +++ b/agent/consul/catalog_endpoint_test.go @@ -388,7 +388,6 @@ func TestCatalog_Register_ConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -399,7 +398,7 @@ func TestCatalog_Register_ConnectProxy(t *testing.T) { // Register var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) // List req := structs.ServiceSpecificRequest{ @@ -407,11 +406,11 @@ func TestCatalog_Register_ConnectProxy(t *testing.T) { ServiceName: args.Service.Service, } var resp structs.IndexedServiceNodes - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - assert.Len(resp.ServiceNodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + assert.Len(t, resp.ServiceNodes, 1) v := resp.ServiceNodes[0] - assert.Equal(structs.ServiceKindConnectProxy, v.ServiceKind) - assert.Equal(args.Service.Proxy.DestinationServiceName, v.ServiceProxy.DestinationServiceName) + assert.Equal(t, structs.ServiceKindConnectProxy, v.ServiceKind) + assert.Equal(t, args.Service.Proxy.DestinationServiceName, v.ServiceProxy.DestinationServiceName) } // Test an invalid ConnectProxy. We don't need to exhaustively test because @@ -423,7 +422,6 @@ func TestCatalog_Register_ConnectProxy_invalid(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -436,8 +434,8 @@ func TestCatalog_Register_ConnectProxy_invalid(t *testing.T) { // Register var out struct{} err := msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out) - assert.NotNil(err) - assert.Contains(err.Error(), "DestinationServiceName") + assert.NotNil(t, err) + assert.Contains(t, err.Error(), "DestinationServiceName") } // Test that write is required for the proxy destination to register a proxy. @@ -448,7 +446,6 @@ func TestCatalog_Register_ConnectProxy_ACLDestinationServiceName(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -479,7 +476,7 @@ node "foo" { args.WriteRequest.Token = token var out struct{} err := msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out) - assert.True(acl.IsErrPermissionDenied(err)) + assert.True(t, acl.IsErrPermissionDenied(err)) // Register should fail with the right destination but wrong name args = structs.TestRegisterRequestProxy(t) @@ -487,14 +484,14 @@ node "foo" { args.Service.Proxy.DestinationServiceName = "foo" args.WriteRequest.Token = token err = msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out) - assert.True(acl.IsErrPermissionDenied(err)) + assert.True(t, acl.IsErrPermissionDenied(err)) // Register should work with the right destination args = structs.TestRegisterRequestProxy(t) args.Service.Service = "foo" args.Service.Proxy.DestinationServiceName = "foo" args.WriteRequest.Token = token - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) } func TestCatalog_Register_ConnectNative(t *testing.T) { @@ -504,7 +501,6 @@ func TestCatalog_Register_ConnectNative(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -516,7 +512,7 @@ func TestCatalog_Register_ConnectNative(t *testing.T) { // Register var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) // List req := structs.ServiceSpecificRequest{ @@ -524,11 +520,11 @@ func TestCatalog_Register_ConnectNative(t *testing.T) { ServiceName: args.Service.Service, } var resp structs.IndexedServiceNodes - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - assert.Len(resp.ServiceNodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + assert.Len(t, resp.ServiceNodes, 1) v := resp.ServiceNodes[0] - assert.Equal(structs.ServiceKindTypical, v.ServiceKind) - assert.True(v.ServiceConnect.Native) + assert.Equal(t, structs.ServiceKindTypical, v.ServiceKind) + assert.True(t, v.ServiceConnect.Native) } func TestCatalog_Deregister(t *testing.T) { @@ -2149,7 +2145,6 @@ func TestCatalog_ListServiceNodes_ConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2161,7 +2156,7 @@ func TestCatalog_ListServiceNodes_ConnectProxy(t *testing.T) { // Register the service args := structs.TestRegisterRequestProxy(t) var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) // List req := structs.ServiceSpecificRequest{ @@ -2170,11 +2165,11 @@ func TestCatalog_ListServiceNodes_ConnectProxy(t *testing.T) { TagFilter: false, } var resp structs.IndexedServiceNodes - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - assert.Len(resp.ServiceNodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + assert.Len(t, resp.ServiceNodes, 1) v := resp.ServiceNodes[0] - assert.Equal(structs.ServiceKindConnectProxy, v.ServiceKind) - assert.Equal(args.Service.Proxy.DestinationServiceName, v.ServiceProxy.DestinationServiceName) + assert.Equal(t, structs.ServiceKindConnectProxy, v.ServiceKind) + assert.Equal(t, args.Service.Proxy.DestinationServiceName, v.ServiceProxy.DestinationServiceName) } func TestCatalog_ServiceNodes_Gateway(t *testing.T) { @@ -2304,7 +2299,6 @@ func TestCatalog_ListServiceNodes_ConnectDestination(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2316,7 +2310,7 @@ func TestCatalog_ListServiceNodes_ConnectDestination(t *testing.T) { // Register the proxy service args := structs.TestRegisterRequestProxy(t) var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) // Register the service { @@ -2324,7 +2318,7 @@ func TestCatalog_ListServiceNodes_ConnectDestination(t *testing.T) { args := structs.TestRegisterRequest(t) args.Service.Service = dst var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) } // List @@ -2334,22 +2328,22 @@ func TestCatalog_ListServiceNodes_ConnectDestination(t *testing.T) { ServiceName: args.Service.Proxy.DestinationServiceName, } var resp structs.IndexedServiceNodes - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - assert.Len(resp.ServiceNodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + assert.Len(t, resp.ServiceNodes, 1) v := resp.ServiceNodes[0] - assert.Equal(structs.ServiceKindConnectProxy, v.ServiceKind) - assert.Equal(args.Service.Proxy.DestinationServiceName, v.ServiceProxy.DestinationServiceName) + assert.Equal(t, structs.ServiceKindConnectProxy, v.ServiceKind) + assert.Equal(t, args.Service.Proxy.DestinationServiceName, v.ServiceProxy.DestinationServiceName) // List by non-Connect req = structs.ServiceSpecificRequest{ Datacenter: "dc1", ServiceName: args.Service.Proxy.DestinationServiceName, } - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - assert.Len(resp.ServiceNodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + assert.Len(t, resp.ServiceNodes, 1) v = resp.ServiceNodes[0] - assert.Equal(args.Service.Proxy.DestinationServiceName, v.ServiceName) - assert.Equal("", v.ServiceProxy.DestinationServiceName) + assert.Equal(t, args.Service.Proxy.DestinationServiceName, v.ServiceName) + assert.Equal(t, "", v.ServiceProxy.DestinationServiceName) } // Test that calling ServiceNodes with Connect: true will return @@ -2361,7 +2355,6 @@ func TestCatalog_ListServiceNodes_ConnectDestinationNative(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2374,7 +2367,7 @@ func TestCatalog_ListServiceNodes_ConnectDestinationNative(t *testing.T) { args := structs.TestRegisterRequest(t) args.Service.Connect.Native = true var out struct{} - require.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) // List req := structs.ServiceSpecificRequest{ @@ -2383,20 +2376,20 @@ func TestCatalog_ListServiceNodes_ConnectDestinationNative(t *testing.T) { ServiceName: args.Service.Service, } var resp structs.IndexedServiceNodes - require.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - require.Len(resp.ServiceNodes, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + require.Len(t, resp.ServiceNodes, 1) v := resp.ServiceNodes[0] - require.Equal(args.Service.Service, v.ServiceName) + require.Equal(t, args.Service.Service, v.ServiceName) // List by non-Connect req = structs.ServiceSpecificRequest{ Datacenter: "dc1", ServiceName: args.Service.Service, } - require.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - require.Len(resp.ServiceNodes, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + require.Len(t, resp.ServiceNodes, 1) v = resp.ServiceNodes[0] - require.Equal(args.Service.Service, v.ServiceName) + require.Equal(t, args.Service.Service, v.ServiceName) } func TestCatalog_ListServiceNodes_ConnectProxy_ACL(t *testing.T) { @@ -2491,7 +2484,6 @@ func TestCatalog_ListServiceNodes_ConnectNative(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2504,7 +2496,7 @@ func TestCatalog_ListServiceNodes_ConnectNative(t *testing.T) { args := structs.TestRegisterRequest(t) args.Service.Connect.Native = true var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) // List req := structs.ServiceSpecificRequest{ @@ -2513,10 +2505,10 @@ func TestCatalog_ListServiceNodes_ConnectNative(t *testing.T) { TagFilter: false, } var resp structs.IndexedServiceNodes - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) - assert.Len(resp.ServiceNodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.ServiceNodes", &req, &resp)) + assert.Len(t, resp.ServiceNodes, 1) v := resp.ServiceNodes[0] - assert.Equal(args.Service.Connect.Native, v.ServiceConnect.Native) + assert.Equal(t, args.Service.Connect.Native, v.ServiceConnect.Native) } func TestCatalog_NodeServices(t *testing.T) { @@ -2581,7 +2573,6 @@ func TestCatalog_NodeServices_ConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2593,7 +2584,7 @@ func TestCatalog_NodeServices_ConnectProxy(t *testing.T) { // Register the service args := structs.TestRegisterRequestProxy(t) var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) // List req := structs.NodeSpecificRequest{ @@ -2601,12 +2592,12 @@ func TestCatalog_NodeServices_ConnectProxy(t *testing.T) { Node: args.Node, } var resp structs.IndexedNodeServices - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.NodeServices", &req, &resp)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.NodeServices", &req, &resp)) - assert.Len(resp.NodeServices.Services, 1) + assert.Len(t, resp.NodeServices.Services, 1) v := resp.NodeServices.Services[args.Service.Service] - assert.Equal(structs.ServiceKindConnectProxy, v.Kind) - assert.Equal(args.Service.Proxy.DestinationServiceName, v.Proxy.DestinationServiceName) + assert.Equal(t, structs.ServiceKindConnectProxy, v.Kind) + assert.Equal(t, args.Service.Proxy.DestinationServiceName, v.Proxy.DestinationServiceName) } func TestCatalog_NodeServices_ConnectNative(t *testing.T) { @@ -2616,7 +2607,6 @@ func TestCatalog_NodeServices_ConnectNative(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2628,7 +2618,7 @@ func TestCatalog_NodeServices_ConnectNative(t *testing.T) { // Register the service args := structs.TestRegisterRequest(t) var out struct{} - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", args, &out)) // List req := structs.NodeSpecificRequest{ @@ -2636,11 +2626,11 @@ func TestCatalog_NodeServices_ConnectNative(t *testing.T) { Node: args.Node, } var resp structs.IndexedNodeServices - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.NodeServices", &req, &resp)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.NodeServices", &req, &resp)) - assert.Len(resp.NodeServices.Services, 1) + assert.Len(t, resp.NodeServices.Services, 1) v := resp.NodeServices.Services[args.Service.Service] - assert.Equal(args.Service.Connect.Native, v.Connect.Native) + assert.Equal(t, args.Service.Connect.Native, v.Connect.Native) } // Used to check for a regression against a known bug @@ -2883,27 +2873,25 @@ func TestCatalog_NodeServices_ACL(t *testing.T) { } t.Run("deny", func(t *testing.T) { - require := require.New(t) args.Token = token("deny") var reply structs.IndexedNodeServices err := msgpackrpc.CallWithCodec(codec, "Catalog.NodeServices", &args, &reply) - require.NoError(err) - require.Nil(reply.NodeServices) - require.True(reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Nil(t, reply.NodeServices) + require.True(t, reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("allow", func(t *testing.T) { - require := require.New(t) args.Token = token("read") var reply structs.IndexedNodeServices err := msgpackrpc.CallWithCodec(codec, "Catalog.NodeServices", &args, &reply) - require.NoError(err) - require.NotNil(reply.NodeServices) - require.False(reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.NoError(t, err) + require.NotNil(t, reply.NodeServices) + require.False(t, reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) } diff --git a/agent/consul/config_endpoint_test.go b/agent/consul/config_endpoint_test.go index 1187120ac..aa10220a3 100644 --- a/agent/consul/config_endpoint_test.go +++ b/agent/consul/config_endpoint_test.go @@ -150,8 +150,6 @@ func TestConfigEntry_Apply_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -191,16 +189,16 @@ operator = "write" Name: "foo", } err = msgpackrpc.CallWithCodec(codec, "ConfigEntry.Apply", &args, &out) - require.NoError(err) + require.NoError(t, err) state := s1.fsm.State() _, entry, err := state.ConfigEntry(nil, structs.ServiceDefaults, "foo", nil) - require.NoError(err) + require.NoError(t, err) serviceConf, ok := entry.(*structs.ServiceConfigEntry) - require.True(ok) - require.Equal("foo", serviceConf.Name) - require.Equal(structs.ServiceDefaults, serviceConf.Kind) + require.True(t, ok) + require.Equal(t, "foo", serviceConf.Name) + require.Equal(t, structs.ServiceDefaults, serviceConf.Kind) // Try to update the global proxy args with the anonymous token - this should fail. proxyArgs := structs.ConfigEntryRequest{ @@ -219,7 +217,7 @@ operator = "write" // Now with the privileged token. proxyArgs.WriteRequest.Token = id err = msgpackrpc.CallWithCodec(codec, "ConfigEntry.Apply", &proxyArgs, &out) - require.NoError(err) + require.NoError(t, err) } func TestConfigEntry_Get(t *testing.T) { @@ -229,8 +227,6 @@ func TestConfigEntry_Get(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -243,7 +239,7 @@ func TestConfigEntry_Get(t *testing.T) { Name: "foo", } state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, entry)) + require.NoError(t, state.EnsureConfigEntry(1, entry)) args := structs.ConfigEntryQuery{ Kind: structs.ServiceDefaults, @@ -251,12 +247,12 @@ func TestConfigEntry_Get(t *testing.T) { Datacenter: s1.config.Datacenter, } var out structs.ConfigEntryResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.Get", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Get", &args, &out)) serviceConf, ok := out.Entry.(*structs.ServiceConfigEntry) - require.True(ok) - require.Equal("foo", serviceConf.Name) - require.Equal(structs.ServiceDefaults, serviceConf.Kind) + require.True(t, ok) + require.Equal(t, "foo", serviceConf.Name) + require.Equal(t, structs.ServiceDefaults, serviceConf.Kind) } func TestConfigEntry_Get_ACLDeny(t *testing.T) { @@ -266,8 +262,6 @@ func TestConfigEntry_Get_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -290,11 +284,11 @@ operator = "read" // Create some dummy service/proxy configs to be looked up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", })) @@ -314,12 +308,12 @@ operator = "read" // The "foo" service should work. args.Name = "foo" - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.Get", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Get", &args, &out)) serviceConf, ok := out.Entry.(*structs.ServiceConfigEntry) - require.True(ok) - require.Equal("foo", serviceConf.Name) - require.Equal(structs.ServiceDefaults, serviceConf.Kind) + require.True(t, ok) + require.Equal(t, "foo", serviceConf.Name) + require.Equal(t, structs.ServiceDefaults, serviceConf.Kind) } func TestConfigEntry_List(t *testing.T) { @@ -329,8 +323,6 @@ func TestConfigEntry_List(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -351,19 +343,19 @@ func TestConfigEntry_List(t *testing.T) { }, }, } - require.NoError(state.EnsureConfigEntry(1, expected.Entries[0])) - require.NoError(state.EnsureConfigEntry(2, expected.Entries[1])) + require.NoError(t, state.EnsureConfigEntry(1, expected.Entries[0])) + require.NoError(t, state.EnsureConfigEntry(2, expected.Entries[1])) args := structs.ConfigEntryQuery{ Kind: structs.ServiceDefaults, Datacenter: "dc1", } var out structs.IndexedConfigEntries - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.List", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.List", &args, &out)) expected.Kind = structs.ServiceDefaults expected.QueryMeta = out.QueryMeta - require.Equal(expected, out) + require.Equal(t, expected, out) } func TestConfigEntry_ListAll(t *testing.T) { @@ -466,8 +458,6 @@ func TestConfigEntry_List_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -490,15 +480,15 @@ operator = "read" // Create some dummy service/proxy configs to be looked up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", })) - require.NoError(state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "db", })) @@ -511,26 +501,26 @@ operator = "read" } var out structs.IndexedConfigEntries err := msgpackrpc.CallWithCodec(codec, "ConfigEntry.List", &args, &out) - require.NoError(err) + require.NoError(t, err) serviceConf, ok := out.Entries[0].(*structs.ServiceConfigEntry) - require.Len(out.Entries, 1) - require.True(ok) - require.Equal("foo", serviceConf.Name) - require.Equal(structs.ServiceDefaults, serviceConf.Kind) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Len(t, out.Entries, 1) + require.True(t, ok) + require.Equal(t, "foo", serviceConf.Name) + require.Equal(t, structs.ServiceDefaults, serviceConf.Kind) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // Get the global proxy config. args.Kind = structs.ProxyDefaults err = msgpackrpc.CallWithCodec(codec, "ConfigEntry.List", &args, &out) - require.NoError(err) + require.NoError(t, err) proxyConf, ok := out.Entries[0].(*structs.ProxyConfigEntry) - require.Len(out.Entries, 1) - require.True(ok) - require.Equal(structs.ProxyConfigGlobal, proxyConf.Name) - require.Equal(structs.ProxyDefaults, proxyConf.Kind) - require.False(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.Len(t, out.Entries, 1) + require.True(t, ok) + require.Equal(t, structs.ProxyConfigGlobal, proxyConf.Name) + require.Equal(t, structs.ProxyDefaults, proxyConf.Kind) + require.False(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") } func TestConfigEntry_ListAll_ACLDeny(t *testing.T) { @@ -540,8 +530,6 @@ func TestConfigEntry_ListAll_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -564,15 +552,15 @@ operator = "read" // Create some dummy service/proxy configs to be looked up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", })) - require.NoError(state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "db", })) @@ -585,8 +573,8 @@ operator = "read" } var out structs.IndexedGenericConfigEntries err := msgpackrpc.CallWithCodec(codec, "ConfigEntry.ListAll", &args, &out) - require.NoError(err) - require.Len(out.Entries, 2) + require.NoError(t, err) + require.Len(t, out.Entries, 2) svcIndex := 0 proxyIndex := 1 if out.Entries[0].GetKind() == structs.ProxyDefaults { @@ -595,15 +583,15 @@ operator = "read" } svcConf, ok := out.Entries[svcIndex].(*structs.ServiceConfigEntry) - require.True(ok) + require.True(t, ok) proxyConf, ok := out.Entries[proxyIndex].(*structs.ProxyConfigEntry) - require.True(ok) + require.True(t, ok) - require.Equal("foo", svcConf.Name) - require.Equal(structs.ServiceDefaults, svcConf.Kind) - require.Equal(structs.ProxyConfigGlobal, proxyConf.Name) - require.Equal(structs.ProxyDefaults, proxyConf.Kind) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.Equal(t, "foo", svcConf.Name) + require.Equal(t, structs.ServiceDefaults, svcConf.Kind) + require.Equal(t, structs.ProxyConfigGlobal, proxyConf.Name) + require.Equal(t, structs.ProxyDefaults, proxyConf.Kind) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") } func TestConfigEntry_Delete(t *testing.T) { @@ -686,8 +674,6 @@ func TestConfigEntry_DeleteCAS(t *testing.T) { } t.Parallel() - require := require.New(t) - dir, s := testServer(t) defer os.RemoveAll(dir) defer s.Shutdown() @@ -703,11 +689,11 @@ func TestConfigEntry_DeleteCAS(t *testing.T) { Name: "foo", } state := s.fsm.State() - require.NoError(state.EnsureConfigEntry(1, entry)) + require.NoError(t, state.EnsureConfigEntry(1, entry)) // Verify it's there. _, existing, err := state.ConfigEntry(nil, entry.Kind, entry.Name, nil) - require.NoError(err) + require.NoError(t, err) // Send a delete CAS request with an invalid index. args := structs.ConfigEntryRequest{ @@ -718,24 +704,24 @@ func TestConfigEntry_DeleteCAS(t *testing.T) { args.Entry.GetRaftIndex().ModifyIndex = existing.GetRaftIndex().ModifyIndex - 1 var rsp structs.ConfigEntryDeleteResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &rsp)) - require.False(rsp.Deleted) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &rsp)) + require.False(t, rsp.Deleted) // Verify the entry was not deleted. _, existing, err = s.fsm.State().ConfigEntry(nil, structs.ServiceDefaults, "foo", nil) - require.NoError(err) - require.NotNil(existing) + require.NoError(t, err) + require.NotNil(t, existing) // Restore the valid index and try again. args.Entry.GetRaftIndex().ModifyIndex = existing.GetRaftIndex().ModifyIndex - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &rsp)) - require.True(rsp.Deleted) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &rsp)) + require.True(t, rsp.Deleted) // Verify the entry was deleted. _, existing, err = s.fsm.State().ConfigEntry(nil, structs.ServiceDefaults, "foo", nil) - require.NoError(err) - require.Nil(existing) + require.NoError(t, err) + require.Nil(t, existing) } func TestConfigEntry_Delete_ACLDeny(t *testing.T) { @@ -745,8 +731,6 @@ func TestConfigEntry_Delete_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -769,11 +753,11 @@ operator = "write" // Create some dummy service/proxy configs to be looked up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", })) @@ -796,12 +780,12 @@ operator = "write" args.Entry = &structs.ServiceConfigEntry{ Name: "foo", } - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &out)) // Verify the entry was deleted. _, existing, err := state.ConfigEntry(nil, structs.ServiceDefaults, "foo", nil) - require.NoError(err) - require.Nil(existing) + require.NoError(t, err) + require.Nil(t, existing) // Try to delete the global proxy config without a token. args = structs.ConfigEntryRequest{ @@ -817,11 +801,11 @@ operator = "write" // Now delete with a valid token. args.WriteRequest.Token = id - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.Delete", &args, &out)) _, existing, err = state.ConfigEntry(nil, structs.ServiceDefaults, "foo", nil) - require.NoError(err) - require.Nil(existing) + require.NoError(t, err) + require.Nil(t, existing) } func TestConfigEntry_ResolveServiceConfig(t *testing.T) { @@ -831,8 +815,6 @@ func TestConfigEntry_ResolveServiceConfig(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -841,19 +823,19 @@ func TestConfigEntry_ResolveServiceConfig(t *testing.T) { // Create a dummy proxy/service config in the state store to look up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, Config: map[string]interface{}{ "foo": 1, }, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", Protocol: "http", })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "bar", Protocol: "grpc", @@ -865,7 +847,7 @@ func TestConfigEntry_ResolveServiceConfig(t *testing.T) { Upstreams: []string{"bar", "baz"}, } var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) expected := structs.ServiceConfigResponse{ ProxyConfig: map[string]interface{}{ @@ -880,14 +862,14 @@ func TestConfigEntry_ResolveServiceConfig(t *testing.T) { // Don't know what this is deterministically QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) _, entry, err := s1.fsm.State().ConfigEntry(nil, structs.ProxyDefaults, structs.ProxyConfigGlobal, nil) - require.NoError(err) - require.NotNil(entry) + require.NoError(t, err) + require.NotNil(t, entry) proxyConf, ok := entry.(*structs.ProxyConfigEntry) - require.True(ok) - require.Equal(map[string]interface{}{"foo": 1}, proxyConf.Config) + require.True(t, ok) + require.Equal(t, map[string]interface{}{"foo": 1}, proxyConf.Config) } func TestConfigEntry_ResolveServiceConfig_TransparentProxy(t *testing.T) { @@ -1426,8 +1408,6 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1443,19 +1423,19 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { // TestConfigEntry_ResolveServiceConfig_Upstreams_Blocking state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, Config: map[string]interface{}{ "global": 1, }, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", Protocol: "grpc", })) - require.NoError(state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "bar", Protocol: "http", @@ -1465,7 +1445,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { { // Verify that we get the results of proxy-defaults and service-defaults for 'foo'. var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &structs.ServiceConfigRequest{ Name: "foo", Datacenter: "dc1", @@ -1480,7 +1460,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { }, QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) index = out.Index } @@ -1490,7 +1470,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { start := time.Now() go func() { time.Sleep(100 * time.Millisecond) - require.NoError(state.DeleteConfigEntry(index+1, + require.NoError(t, state.DeleteConfigEntry(index+1, structs.ServiceDefaults, "foo", nil, @@ -1499,7 +1479,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { // Re-run the query var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &structs.ServiceConfigRequest{ Name: "foo", Datacenter: "dc1", @@ -1512,10 +1492,10 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { )) // Should block at least 100ms - require.True(time.Since(start) >= 100*time.Millisecond, "too fast") + require.True(t, time.Since(start) >= 100*time.Millisecond, "too fast") // Check the indexes - require.Equal(out.Index, index+1) + require.Equal(t, out.Index, index+1) expected := structs.ServiceConfigResponse{ ProxyConfig: map[string]interface{}{ @@ -1523,14 +1503,14 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { }, QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) index = out.Index } { // Verify that we get the results of proxy-defaults and service-defaults for 'bar'. var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &structs.ServiceConfigRequest{ Name: "bar", Datacenter: "dc1", @@ -1545,7 +1525,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { }, QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) index = out.Index } @@ -1555,7 +1535,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { start := time.Now() go func() { time.Sleep(100 * time.Millisecond) - require.NoError(state.DeleteConfigEntry(index+1, + require.NoError(t, state.DeleteConfigEntry(index+1, structs.ProxyDefaults, structs.ProxyConfigGlobal, nil, @@ -1564,7 +1544,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { // Re-run the query var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &structs.ServiceConfigRequest{ Name: "bar", Datacenter: "dc1", @@ -1577,10 +1557,10 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { )) // Should block at least 100ms - require.True(time.Since(start) >= 100*time.Millisecond, "too fast") + require.True(t, time.Since(start) >= 100*time.Millisecond, "too fast") // Check the indexes - require.Equal(out.Index, index+1) + require.Equal(t, out.Index, index+1) expected := structs.ServiceConfigResponse{ ProxyConfig: map[string]interface{}{ @@ -1588,7 +1568,7 @@ func TestConfigEntry_ResolveServiceConfig_Blocking(t *testing.T) { }, QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) } } @@ -1798,8 +1778,6 @@ func TestConfigEntry_ResolveServiceConfig_UpstreamProxyDefaultsProtocol(t *testi t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1808,26 +1786,26 @@ func TestConfigEntry_ResolveServiceConfig_UpstreamProxyDefaultsProtocol(t *testi // Create a dummy proxy/service config in the state store to look up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, Config: map[string]interface{}{ "protocol": "http", }, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "bar", })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "other", })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "alreadyprotocol", Protocol: "grpc", @@ -1839,7 +1817,7 @@ func TestConfigEntry_ResolveServiceConfig_UpstreamProxyDefaultsProtocol(t *testi Upstreams: []string{"bar", "other", "alreadyprotocol", "dne"}, } var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) expected := structs.ServiceConfigResponse{ ProxyConfig: map[string]interface{}{ @@ -1862,7 +1840,7 @@ func TestConfigEntry_ResolveServiceConfig_UpstreamProxyDefaultsProtocol(t *testi // Don't know what this is deterministically QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) } func TestConfigEntry_ResolveServiceConfig_ProxyDefaultsProtocol_UsedForAllUpstreams(t *testing.T) { @@ -1872,8 +1850,6 @@ func TestConfigEntry_ResolveServiceConfig_ProxyDefaultsProtocol_UsedForAllUpstre t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1882,7 +1858,7 @@ func TestConfigEntry_ResolveServiceConfig_ProxyDefaultsProtocol_UsedForAllUpstre // Create a dummy proxy/service config in the state store to look up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, Config: map[string]interface{}{ @@ -1896,7 +1872,7 @@ func TestConfigEntry_ResolveServiceConfig_ProxyDefaultsProtocol_UsedForAllUpstre Upstreams: []string{"bar"}, } var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) expected := structs.ServiceConfigResponse{ ProxyConfig: map[string]interface{}{ @@ -1910,7 +1886,7 @@ func TestConfigEntry_ResolveServiceConfig_ProxyDefaultsProtocol_UsedForAllUpstre // Don't know what this is deterministically QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) } func TestConfigEntry_ResolveServiceConfigNoConfig(t *testing.T) { @@ -1920,8 +1896,6 @@ func TestConfigEntry_ResolveServiceConfigNoConfig(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1936,7 +1910,7 @@ func TestConfigEntry_ResolveServiceConfigNoConfig(t *testing.T) { Upstreams: []string{"bar", "baz"}, } var out structs.ServiceConfigResponse - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) expected := structs.ServiceConfigResponse{ ProxyConfig: nil, @@ -1944,7 +1918,7 @@ func TestConfigEntry_ResolveServiceConfigNoConfig(t *testing.T) { // Don't know what this is deterministically QueryMeta: out.QueryMeta, } - require.Equal(expected, out) + require.Equal(t, expected, out) } func TestConfigEntry_ResolveServiceConfig_ACLDeny(t *testing.T) { @@ -1954,8 +1928,6 @@ func TestConfigEntry_ResolveServiceConfig_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -1978,15 +1950,15 @@ operator = "write" // Create some dummy service/proxy configs to be looked up. state := s1.fsm.State() - require.NoError(state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(1, &structs.ProxyConfigEntry{ Kind: structs.ProxyDefaults, Name: structs.ProxyConfigGlobal, })) - require.NoError(state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(2, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", })) - require.NoError(state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ + require.NoError(t, state.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "db", })) @@ -2005,7 +1977,7 @@ operator = "write" // The "foo" service should work. args.Name = "foo" - require.NoError(msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConfigEntry.ResolveServiceConfig", &args, &out)) } diff --git a/agent/consul/connect_ca_endpoint_test.go b/agent/consul/connect_ca_endpoint_test.go index 89c4b2a05..d170729db 100644 --- a/agent/consul/connect_ca_endpoint_test.go +++ b/agent/consul/connect_ca_endpoint_test.go @@ -38,8 +38,6 @@ func TestConnectCARoots(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -54,29 +52,29 @@ func TestConnectCARoots(t *testing.T) { ca2 := connect.TestCA(t, nil) ca2.Active = false idx, _, err := state.CARoots(nil) - require.NoError(err) + require.NoError(t, err) ok, err := state.CARootSetCAS(idx, idx, []*structs.CARoot{ca1, ca2}) - assert.True(ok) - require.NoError(err) + assert.True(t, ok) + require.NoError(t, err) _, caCfg, err := state.CAConfig(nil) - require.NoError(err) + require.NoError(t, err) // Request args := &structs.DCSpecificRequest{ Datacenter: "dc1", } var reply structs.IndexedCARoots - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", args, &reply)) // Verify - assert.Equal(ca1.ID, reply.ActiveRootID) - assert.Len(reply.Roots, 2) + assert.Equal(t, ca1.ID, reply.ActiveRootID) + assert.Len(t, reply.Roots, 2) for _, r := range reply.Roots { // These must never be set, for security - assert.Equal("", r.SigningCert) - assert.Equal("", r.SigningKey) + assert.Equal(t, "", r.SigningCert) + assert.Equal(t, "", r.SigningKey) } - assert.Equal(fmt.Sprintf("%s.consul", caCfg.ClusterID), reply.TrustDomain) + assert.Equal(t, fmt.Sprintf("%s.consul", caCfg.ClusterID), reply.TrustDomain) } func TestConnectCAConfig_GetSet(t *testing.T) { @@ -86,7 +84,6 @@ func TestConnectCAConfig_GetSet(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -101,14 +98,14 @@ func TestConnectCAConfig_GetSet(t *testing.T) { Datacenter: "dc1", } var reply structs.CAConfiguration - assert.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) + assert.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) actual, err := ca.ParseConsulCAConfig(reply.Config) - assert.NoError(err) + assert.NoError(t, err) expected, err := ca.ParseConsulCAConfig(s1.config.CAConfig.Config) - assert.NoError(err) - assert.Equal(reply.Provider, s1.config.CAConfig.Provider) - assert.Equal(actual, expected) + assert.NoError(t, err) + assert.Equal(t, reply.Provider, s1.config.CAConfig.Provider) + assert.Equal(t, actual, expected) } testState := map[string]string{"foo": "bar"} @@ -141,15 +138,15 @@ func TestConnectCAConfig_GetSet(t *testing.T) { Datacenter: "dc1", } var reply structs.CAConfiguration - assert.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) + assert.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) actual, err := ca.ParseConsulCAConfig(reply.Config) - assert.NoError(err) + assert.NoError(t, err) expected, err := ca.ParseConsulCAConfig(newConfig.Config) - assert.NoError(err) - assert.Equal(reply.Provider, newConfig.Provider) - assert.Equal(actual, expected) - assert.Equal(testState, reply.State) + assert.NoError(t, err) + assert.Equal(t, reply.Provider, newConfig.Provider) + assert.Equal(t, actual, expected) + assert.Equal(t, testState, reply.State) } } @@ -254,7 +251,6 @@ func TestConnectCAConfig_GetSetForceNoCrossSigning(t *testing.T) { t.Parallel() - require := require.New(t) // Setup a server with a built-in CA that as artificially disabled cross // signing. This is simpler than running tests with external CA dependencies. dir1, s1 := testServerWithConfig(t, func(c *Config) { @@ -272,8 +268,8 @@ func TestConnectCAConfig_GetSetForceNoCrossSigning(t *testing.T) { Datacenter: "dc1", } var rootList structs.IndexedCARoots - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) - require.Len(rootList.Roots, 1) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) + require.Len(t, rootList.Roots, 1) oldRoot := rootList.Roots[0] // Get the starting config @@ -282,20 +278,20 @@ func TestConnectCAConfig_GetSetForceNoCrossSigning(t *testing.T) { Datacenter: "dc1", } var reply structs.CAConfiguration - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) actual, err := ca.ParseConsulCAConfig(reply.Config) - require.NoError(err) + require.NoError(t, err) expected, err := ca.ParseConsulCAConfig(s1.config.CAConfig.Config) - require.NoError(err) - require.Equal(reply.Provider, s1.config.CAConfig.Provider) - require.Equal(actual, expected) + require.NoError(t, err) + require.Equal(t, reply.Provider, s1.config.CAConfig.Provider) + require.Equal(t, actual, expected) } // Update to a new CA with different key. This should fail since the existing // CA doesn't support cross signing so can't rotate safely. _, newKey, err := connect.GeneratePrivateKey() - require.NoError(err) + require.NoError(t, err) newConfig := &structs.CAConfiguration{ Provider: "consul", Config: map[string]interface{}{ @@ -309,7 +305,7 @@ func TestConnectCAConfig_GetSetForceNoCrossSigning(t *testing.T) { } var reply interface{} err := msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply) - require.EqualError(err, "The current CA Provider does not support cross-signing. "+ + require.EqualError(t, err, "The current CA Provider does not support cross-signing. "+ "You can try again with ForceWithoutCrossSigningSet but this may cause disruption"+ " - see documentation for more.") } @@ -323,7 +319,7 @@ func TestConnectCAConfig_GetSetForceNoCrossSigning(t *testing.T) { } var reply interface{} err := msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply) - require.NoError(err) + require.NoError(t, err) } // Make sure the new root has been added but with no cross-signed intermediate @@ -332,23 +328,23 @@ func TestConnectCAConfig_GetSetForceNoCrossSigning(t *testing.T) { Datacenter: "dc1", } var reply structs.IndexedCARoots - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", args, &reply)) - require.Len(reply.Roots, 2) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", args, &reply)) + require.Len(t, reply.Roots, 2) for _, r := range reply.Roots { if r.ID == oldRoot.ID { // The old root should no longer be marked as the active root, // and none of its other fields should have changed. - require.False(r.Active) - require.Equal(r.Name, oldRoot.Name) - require.Equal(r.RootCert, oldRoot.RootCert) - require.Equal(r.SigningCert, oldRoot.SigningCert) - require.Equal(r.IntermediateCerts, oldRoot.IntermediateCerts) + require.False(t, r.Active) + require.Equal(t, r.Name, oldRoot.Name) + require.Equal(t, r.RootCert, oldRoot.RootCert) + require.Equal(t, r.SigningCert, oldRoot.SigningCert) + require.Equal(t, r.IntermediateCerts, oldRoot.IntermediateCerts) } else { // The new root should NOT have a valid cross-signed cert from the old // root as an intermediate. - require.True(r.Active) - require.Empty(r.IntermediateCerts) + require.True(t, r.Active) + require.Empty(t, r.IntermediateCerts) } } } @@ -664,9 +660,6 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) - // Initialize primary as the primary DC dir1, s1 := testServerWithConfig(t, func(c *Config) { c.Datacenter = "primary" @@ -693,8 +686,8 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { // Capture the current root rootList, activeRoot, err := getTestRoots(s1, "primary") - require.NoError(err) - require.Len(rootList.Roots, 1) + require.NoError(t, err) + require.Len(t, rootList.Roots, 1) rootCert := activeRoot testrpc.WaitForActiveCARoot(t, s1.RPC, "primary", rootCert) @@ -702,15 +695,15 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { // Capture the current intermediate rootList, activeRoot, err = getTestRoots(s2, "secondary") - require.NoError(err) - require.Len(rootList.Roots, 1) - require.Len(activeRoot.IntermediateCerts, 1) + require.NoError(t, err) + require.Len(t, rootList.Roots, 1) + require.Len(t, activeRoot.IntermediateCerts, 1) oldIntermediatePEM := activeRoot.IntermediateCerts[0] // Update the secondary CA config to use a new private key, which should // cause a re-signing with a new intermediate. _, newKey, err := connect.GeneratePrivateKey() - assert.NoError(err) + assert.NoError(t, err) newConfig := &structs.CAConfiguration{ Provider: "consul", Config: map[string]interface{}{ @@ -725,7 +718,7 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { } var reply interface{} - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) } // Make sure the new intermediate has replaced the old one in the active root, @@ -736,12 +729,12 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { Datacenter: "secondary", } var reply structs.IndexedCARoots - require.Nil(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", args, &reply)) - require.Len(reply.Roots, 1) - require.Len(reply.Roots[0].IntermediateCerts, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", args, &reply)) + require.Len(t, reply.Roots, 1) + require.Len(t, reply.Roots[0].IntermediateCerts, 1) newIntermediatePEM = reply.Roots[0].IntermediateCerts[0] - require.NotEqual(oldIntermediatePEM, newIntermediatePEM) - require.Equal(reply.Roots[0].RootCert, rootCert.RootCert) + require.NotEqual(t, oldIntermediatePEM, newIntermediatePEM) + require.Equal(t, reply.Roots[0].RootCert, rootCert.RootCert) } // Verify the new config was set. @@ -750,14 +743,14 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { Datacenter: "secondary", } var reply structs.CAConfiguration - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply)) actual, err := ca.ParseConsulCAConfig(reply.Config) - require.NoError(err) + require.NoError(t, err) expected, err := ca.ParseConsulCAConfig(newConfig.Config) - require.NoError(err) - assert.Equal(reply.Provider, newConfig.Provider) - assert.Equal(actual, expected) + require.NoError(t, err) + assert.Equal(t, reply.Provider, newConfig.Provider) + assert.Equal(t, actual, expected) } // Verify that new leaf certs get the new intermediate bundled @@ -770,28 +763,28 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { CSR: csr, } var reply structs.IssuedCert - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply)) // Verify the leaf cert has the new intermediate. { roots := x509.NewCertPool() - assert.True(roots.AppendCertsFromPEM([]byte(rootCert.RootCert))) + assert.True(t, roots.AppendCertsFromPEM([]byte(rootCert.RootCert))) leaf, err := connect.ParseCert(reply.CertPEM) - require.NoError(err) + require.NoError(t, err) intermediates := x509.NewCertPool() - require.True(intermediates.AppendCertsFromPEM([]byte(newIntermediatePEM))) + require.True(t, intermediates.AppendCertsFromPEM([]byte(newIntermediatePEM))) _, err = leaf.Verify(x509.VerifyOptions{ Roots: roots, Intermediates: intermediates, }) - require.NoError(err) + require.NoError(t, err) } // Verify other fields - assert.Equal("web", reply.Service) - assert.Equal(spiffeId.URI().String(), reply.ServiceURI) + assert.Equal(t, "web", reply.Service) + assert.Equal(t, spiffeId.URI().String(), reply.ServiceURI) } // Update a minor field in the config that doesn't trigger an intermediate refresh. @@ -810,7 +803,7 @@ func TestConnectCAConfig_UpdateSecondary(t *testing.T) { } var reply interface{} - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) } } } @@ -840,8 +833,6 @@ func TestConnectCASign(t *testing.T) { for _, tt := range tests { t.Run(fmt.Sprintf("%s-%d", tt.caKeyType, tt.caKeyBits), func(t *testing.T) { - assert := assert.New(t) - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(cfg *Config) { cfg.PrimaryDatacenter = "dc1" cfg.CAConfig.Config["PrivateKeyType"] = tt.caKeyType @@ -864,7 +855,7 @@ func TestConnectCASign(t *testing.T) { CSR: csr, } var reply structs.IssuedCert - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply)) // Generate a second CSR and request signing spiffeId2 := connect.TestSpiffeIDService(t, "web2") @@ -875,20 +866,20 @@ func TestConnectCASign(t *testing.T) { } var reply2 structs.IssuedCert - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply2)) - require.True(reply2.ModifyIndex > reply.ModifyIndex) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", args, &reply2)) + require.True(t, reply2.ModifyIndex > reply.ModifyIndex) // Get the current CA state := s1.fsm.State() _, ca, err := state.CARootActive(nil) - require.NoError(err) + require.NoError(t, err) // Verify that the cert is signed by the CA - require.NoError(connect.ValidateLeaf(ca.RootCert, reply.CertPEM, nil)) + require.NoError(t, connect.ValidateLeaf(ca.RootCert, reply.CertPEM, nil)) // Verify other fields - assert.Equal("web", reply.Service) - assert.Equal(spiffeId.URI().String(), reply.ServiceURI) + assert.Equal(t, "web", reply.Service) + assert.Equal(t, spiffeId.URI().String(), reply.ServiceURI) }) } } @@ -931,7 +922,6 @@ func TestConnectCASign_rateLimit(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.Datacenter = "dc1" c.PrimaryDatacenter = "dc1" @@ -976,7 +966,7 @@ func TestConnectCASign_rateLimit(t *testing.T) { } else if err.Error() == ErrRateLimited.Error() { limitedCount++ } else { - require.NoError(err) + require.NoError(t, err) } } // I've only ever seen this as 1/9 however if the test runs slowly on an @@ -986,8 +976,8 @@ func TestConnectCASign_rateLimit(t *testing.T) { // check that some limiting is being applied. Note that we can't just measure // the time it took to send them all and infer how many should have succeeded // without some complex modeling of the token bucket algorithm. - require.Truef(successCount >= 1, "at least 1 CSRs should have succeeded, got %d", successCount) - require.Truef(limitedCount >= 7, "at least 7 CSRs should have been rate limited, got %d", limitedCount) + require.Truef(t, successCount >= 1, "at least 1 CSRs should have succeeded, got %d", successCount) + require.Truef(t, limitedCount >= 7, "at least 7 CSRs should have been rate limited, got %d", limitedCount) } func TestConnectCASign_concurrencyLimit(t *testing.T) { @@ -997,7 +987,6 @@ func TestConnectCASign_concurrencyLimit(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.Datacenter = "dc1" c.PrimaryDatacenter = "dc1" @@ -1057,7 +1046,7 @@ func TestConnectCASign_concurrencyLimit(t *testing.T) { } else if err.Error() == ErrRateLimited.Error() { limitedCount++ } else { - require.NoError(err) + require.NoError(t, err) } } @@ -1096,7 +1085,7 @@ func TestConnectCASign_concurrencyLimit(t *testing.T) { // requests were serialized. t.Logf("min=%s, max=%s", minTime, maxTime) //t.Fail() // Uncomment to see the time spread logged - require.Truef(successCount >= 1, "at least 1 CSRs should have succeeded, got %d", successCount) + require.Truef(t, successCount >= 1, "at least 1 CSRs should have succeeded, got %d", successCount) } func TestConnectCASignValidation(t *testing.T) { diff --git a/agent/consul/fsm/commands_oss_test.go b/agent/consul/fsm/commands_oss_test.go index 868de93bb..27a21c871 100644 --- a/agent/consul/fsm/commands_oss_test.go +++ b/agent/consul/fsm/commands_oss_test.go @@ -1101,10 +1101,9 @@ func TestFSM_Autopilot(t *testing.T) { func TestFSM_Intention_CRUD(t *testing.T) { t.Parallel() - assert := assert.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - assert.Nil(err) + assert.Nil(t, err) // Create a new intention. ixn := structs.IntentionRequest{ @@ -1118,19 +1117,19 @@ func TestFSM_Intention_CRUD(t *testing.T) { { buf, err := structs.Encode(structs.IntentionRequestType, ixn) - assert.Nil(err) - assert.Nil(fsm.Apply(makeLog(buf))) + assert.Nil(t, err) + assert.Nil(t, fsm.Apply(makeLog(buf))) } // Verify it's in the state store. { _, _, actual, err := fsm.state.IntentionGet(nil, ixn.Intention.ID) - assert.Nil(err) + assert.Nil(t, err) actual.CreateIndex, actual.ModifyIndex = 0, 0 actual.CreatedAt = ixn.Intention.CreatedAt actual.UpdatedAt = ixn.Intention.UpdatedAt - assert.Equal(ixn.Intention, actual) + assert.Equal(t, ixn.Intention, actual) } // Make an update @@ -1138,44 +1137,43 @@ func TestFSM_Intention_CRUD(t *testing.T) { ixn.Intention.SourceName = "api" { buf, err := structs.Encode(structs.IntentionRequestType, ixn) - assert.Nil(err) - assert.Nil(fsm.Apply(makeLog(buf))) + assert.Nil(t, err) + assert.Nil(t, fsm.Apply(makeLog(buf))) } // Verify the update. { _, _, actual, err := fsm.state.IntentionGet(nil, ixn.Intention.ID) - assert.Nil(err) + assert.Nil(t, err) actual.CreateIndex, actual.ModifyIndex = 0, 0 actual.CreatedAt = ixn.Intention.CreatedAt actual.UpdatedAt = ixn.Intention.UpdatedAt - assert.Equal(ixn.Intention, actual) + assert.Equal(t, ixn.Intention, actual) } // Delete ixn.Op = structs.IntentionOpDelete { buf, err := structs.Encode(structs.IntentionRequestType, ixn) - assert.Nil(err) - assert.Nil(fsm.Apply(makeLog(buf))) + assert.Nil(t, err) + assert.Nil(t, fsm.Apply(makeLog(buf))) } // Make sure it's gone. { _, _, actual, err := fsm.state.IntentionGet(nil, ixn.Intention.ID) - assert.Nil(err) - assert.Nil(actual) + assert.Nil(t, err) + assert.Nil(t, actual) } } func TestFSM_CAConfig(t *testing.T) { t.Parallel() - assert := assert.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - assert.Nil(err) + assert.Nil(t, err) // Set the autopilot config using a request. req := structs.CARequest{ @@ -1190,7 +1188,7 @@ func TestFSM_CAConfig(t *testing.T) { }, } buf, err := structs.Encode(structs.ConnectCARequestType, req) - assert.Nil(err) + assert.Nil(t, err) resp := fsm.Apply(makeLog(buf)) if _, ok := resp.(error); ok { t.Fatalf("bad: %v", resp) @@ -1231,7 +1229,7 @@ func TestFSM_CAConfig(t *testing.T) { } _, config, err = fsm.state.CAConfig(nil) - assert.Nil(err) + assert.Nil(t, err) if config.Provider != "static" { t.Fatalf("bad: %v", config.Provider) } @@ -1240,10 +1238,9 @@ func TestFSM_CAConfig(t *testing.T) { func TestFSM_CARoots(t *testing.T) { t.Parallel() - assert := assert.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - assert.Nil(err) + assert.Nil(t, err) // Roots ca1 := connect.TestCA(t, nil) @@ -1258,25 +1255,24 @@ func TestFSM_CARoots(t *testing.T) { { buf, err := structs.Encode(structs.ConnectCARequestType, req) - assert.Nil(err) - assert.True(fsm.Apply(makeLog(buf)).(bool)) + assert.Nil(t, err) + assert.True(t, fsm.Apply(makeLog(buf)).(bool)) } // Verify it's in the state store. { _, roots, err := fsm.state.CARoots(nil) - assert.Nil(err) - assert.Len(roots, 2) + assert.Nil(t, err) + assert.Len(t, roots, 2) } } func TestFSM_CABuiltinProvider(t *testing.T) { t.Parallel() - assert := assert.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - assert.Nil(err) + assert.Nil(t, err) // Provider state. expected := &structs.CAConsulProviderState{ @@ -1297,25 +1293,24 @@ func TestFSM_CABuiltinProvider(t *testing.T) { { buf, err := structs.Encode(structs.ConnectCARequestType, req) - assert.Nil(err) - assert.True(fsm.Apply(makeLog(buf)).(bool)) + assert.Nil(t, err) + assert.True(t, fsm.Apply(makeLog(buf)).(bool)) } // Verify it's in the state store. { _, state, err := fsm.state.CAProviderState("foo") - assert.Nil(err) - assert.Equal(expected, state) + assert.Nil(t, err) + assert.Equal(t, expected, state) } } func TestFSM_ConfigEntry(t *testing.T) { t.Parallel() - require := require.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - require.NoError(err) + require.NoError(t, err) // Create a simple config entry entry := &structs.ProxyConfigEntry{ @@ -1335,7 +1330,7 @@ func TestFSM_ConfigEntry(t *testing.T) { { buf, err := structs.Encode(structs.ConfigEntryRequestType, req) - require.NoError(err) + require.NoError(t, err) resp := fsm.Apply(makeLog(buf)) if _, ok := resp.(error); ok { t.Fatalf("bad: %v", resp) @@ -1345,33 +1340,31 @@ func TestFSM_ConfigEntry(t *testing.T) { // Verify it's in the state store. { _, config, err := fsm.state.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) + require.NoError(t, err) entry.RaftIndex.CreateIndex = 1 entry.RaftIndex.ModifyIndex = 1 - require.Equal(entry, config) + require.Equal(t, entry, config) } } func TestFSM_ConfigEntry_DeleteCAS(t *testing.T) { t.Parallel() - require := require.New(t) - logger := testutil.Logger(t) fsm, err := New(nil, logger) - require.NoError(err) + require.NoError(t, err) // Create a simple config entry and write it to the state store. entry := &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "global", } - require.NoError(fsm.state.EnsureConfigEntry(1, entry)) + require.NoError(t, fsm.state.EnsureConfigEntry(1, entry)) // Raft index is populated by EnsureConfigEntry, hold on to it so that we can // restore it later. raftIndex := entry.RaftIndex - require.NotZero(raftIndex.ModifyIndex) + require.NotZero(t, raftIndex.ModifyIndex) // Attempt a CAS delete with an invalid index. entry = entry.Clone() @@ -1383,24 +1376,24 @@ func TestFSM_ConfigEntry_DeleteCAS(t *testing.T) { Entry: entry, } buf, err := structs.Encode(structs.ConfigEntryRequestType, req) - require.NoError(err) + require.NoError(t, err) // Expect to get boolean false back. rsp := fsm.Apply(makeLog(buf)) didDelete, isBool := rsp.(bool) - require.True(isBool) - require.False(didDelete) + require.True(t, isBool) + require.False(t, didDelete) // Attempt a CAS delete with a valid index. entry.RaftIndex = raftIndex buf, err = structs.Encode(structs.ConfigEntryRequestType, req) - require.NoError(err) + require.NoError(t, err) // Expect to get boolean true back. rsp = fsm.Apply(makeLog(buf)) didDelete, isBool = rsp.(bool) - require.True(isBool) - require.True(didDelete) + require.True(t, isBool) + require.True(t, didDelete) } // This adapts another test by chunking the encoded data and then performing @@ -1413,12 +1406,10 @@ func TestFSM_Chunking_Lifecycle(t *testing.T) { } t.Parallel() - require := require.New(t) - assert := assert.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - require.NoError(err) + require.NoError(t, err) var logOfLogs [][]*raft.Log for i := 0; i < 10; i++ { @@ -1442,7 +1433,7 @@ func TestFSM_Chunking_Lifecycle(t *testing.T) { } buf, err := structs.Encode(structs.RegisterRequestType, req) - require.NoError(err) + require.NoError(t, err) var logs []*raft.Log @@ -1453,7 +1444,7 @@ func TestFSM_Chunking_Lifecycle(t *testing.T) { NumChunks: uint32(len(buf)), } chunkBytes, err := proto.Marshal(chunkInfo) - require.NoError(err) + require.NoError(t, err) logs = append(logs, &raft.Log{ Data: []byte{b}, @@ -1468,41 +1459,41 @@ func TestFSM_Chunking_Lifecycle(t *testing.T) { // the full set, and out of order. for _, logs := range logOfLogs { resp := fsm.chunker.Apply(logs[8]) - assert.Nil(resp) + assert.Nil(t, resp) resp = fsm.chunker.Apply(logs[0]) - assert.Nil(resp) + assert.Nil(t, resp) resp = fsm.chunker.Apply(logs[3]) - assert.Nil(resp) + assert.Nil(t, resp) } // Verify we are not registered for i := 0; i < 10; i++ { _, node, err := fsm.state.GetNode(fmt.Sprintf("foo%d", i), nil) - require.NoError(err) - assert.Nil(node) + require.NoError(t, err) + assert.Nil(t, node) } // Snapshot, restore elsewhere, apply the rest of the logs, make sure it // looks right snap, err := fsm.Snapshot() - require.NoError(err) + require.NoError(t, err) defer snap.Release() sinkBuf := bytes.NewBuffer(nil) sink := &MockSink{sinkBuf, false} err = snap.Persist(sink) - require.NoError(err) + require.NoError(t, err) fsm2, err := New(nil, logger) - require.NoError(err) + require.NoError(t, err) err = fsm2.Restore(sink) - require.NoError(err) + require.NoError(t, err) // Verify we are still not registered for i := 0; i < 10; i++ { _, node, err := fsm2.state.GetNode(fmt.Sprintf("foo%d", i), nil) - require.NoError(err) - assert.Nil(node) + require.NoError(t, err) + assert.Nil(t, node) } // Apply the rest of the logs @@ -1514,43 +1505,41 @@ func TestFSM_Chunking_Lifecycle(t *testing.T) { default: resp = fsm2.chunker.Apply(log) if i != len(logs)-1 { - assert.Nil(resp) + assert.Nil(t, resp) } } } _, ok := resp.(raftchunking.ChunkingSuccess) - assert.True(ok) + assert.True(t, ok) } // Verify we are registered for i := 0; i < 10; i++ { _, node, err := fsm2.state.GetNode(fmt.Sprintf("foo%d", i), nil) - require.NoError(err) - assert.NotNil(node) + require.NoError(t, err) + assert.NotNil(t, node) // Verify service registered _, services, err := fsm2.state.NodeServices(nil, fmt.Sprintf("foo%d", i), structs.DefaultEnterpriseMetaInDefaultPartition()) - require.NoError(err) - require.NotNil(services) + require.NoError(t, err) + require.NotNil(t, services) _, ok := services.Services["db"] - assert.True(ok) + assert.True(t, ok) // Verify check _, checks, err := fsm2.state.NodeChecks(nil, fmt.Sprintf("foo%d", i), nil) - require.NoError(err) - require.NotNil(checks) - assert.Equal(string(checks[0].CheckID), "db") + require.NoError(t, err) + require.NotNil(t, checks) + assert.Equal(t, string(checks[0].CheckID), "db") } } func TestFSM_Chunking_TermChange(t *testing.T) { t.Parallel() - assert := assert.New(t) - require := require.New(t) logger := testutil.Logger(t) fsm, err := New(nil, logger) - require.NoError(err) + require.NoError(t, err) req := structs.RegisterRequest{ Datacenter: "dc1", @@ -1571,7 +1560,7 @@ func TestFSM_Chunking_TermChange(t *testing.T) { }, } buf, err := structs.Encode(structs.RegisterRequestType, req) - require.NoError(err) + require.NoError(t, err) // Only need two chunks to test this chunks := [][]byte{ @@ -1599,7 +1588,7 @@ func TestFSM_Chunking_TermChange(t *testing.T) { // We should see nil for both for _, log := range logs { resp := fsm.chunker.Apply(log) - assert.Nil(resp) + assert.Nil(t, resp) } // Now verify the other baseline, that when the term doesn't change we see @@ -1616,10 +1605,10 @@ func TestFSM_Chunking_TermChange(t *testing.T) { for i, log := range logs { resp := fsm.chunker.Apply(log) if i == 0 { - assert.Nil(resp) + assert.Nil(t, resp) } if i == 1 { - assert.NotNil(resp) + assert.NotNil(t, resp) } } } diff --git a/agent/consul/health_endpoint_test.go b/agent/consul/health_endpoint_test.go index 0a6100052..ccee0932b 100644 --- a/agent/consul/health_endpoint_test.go +++ b/agent/consul/health_endpoint_test.go @@ -979,7 +979,6 @@ func TestHealth_ServiceNodes_ConnectProxy_ACL(t *testing.T) { t.Parallel() - assert := assert.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -1020,7 +1019,7 @@ node "foo" { Status: api.HealthPassing, ServiceID: args.Service.ID, } - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) // Register a service args = structs.TestRegisterRequestProxy(t) @@ -1032,7 +1031,7 @@ node "foo" { Status: api.HealthPassing, ServiceID: args.Service.Service, } - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) // Register a service args = structs.TestRegisterRequestProxy(t) @@ -1044,7 +1043,7 @@ node "foo" { Status: api.HealthPassing, ServiceID: args.Service.Service, } - assert.Nil(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &args, &out)) } // List w/ token. This should disallow because we don't have permission @@ -1056,8 +1055,8 @@ node "foo" { QueryOptions: structs.QueryOptions{Token: token}, } var resp structs.IndexedCheckServiceNodes - assert.Nil(msgpackrpc.CallWithCodec(codec, "Health.ServiceNodes", &req, &resp)) - assert.Len(resp.Nodes, 0) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Health.ServiceNodes", &req, &resp)) + assert.Len(t, resp.Nodes, 0) // List w/ token. This should work since we're requesting "foo", but should // also only contain the proxies with names that adhere to our ACL. @@ -1067,8 +1066,8 @@ node "foo" { ServiceName: "foo", QueryOptions: structs.QueryOptions{Token: token}, } - assert.Nil(msgpackrpc.CallWithCodec(codec, "Health.ServiceNodes", &req, &resp)) - assert.Len(resp.Nodes, 1) + assert.Nil(t, msgpackrpc.CallWithCodec(codec, "Health.ServiceNodes", &req, &resp)) + assert.Len(t, resp.Nodes, 1) } func TestHealth_ServiceNodes_Gateway(t *testing.T) { @@ -1432,8 +1431,6 @@ func TestHealth_NodeChecks_FilterACL(t *testing.T) { t.Parallel() - require := require.New(t) - dir, token, srv, codec := testACLFilterServer(t) defer os.RemoveAll(dir) defer srv.Shutdown() @@ -1446,7 +1443,7 @@ func TestHealth_NodeChecks_FilterACL(t *testing.T) { } reply := structs.IndexedHealthChecks{} err := msgpackrpc.CallWithCodec(codec, "Health.NodeChecks", &opt, &reply) - require.NoError(err) + require.NoError(t, err) found := false for _, chk := range reply.HealthChecks { @@ -1457,8 +1454,8 @@ func TestHealth_NodeChecks_FilterACL(t *testing.T) { t.Fatalf("bad: %#v", reply.HealthChecks) } } - require.True(found, "bad: %#v", reply.HealthChecks) - require.True(reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.True(t, found, "bad: %#v", reply.HealthChecks) + require.True(t, reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // We've already proven that we call the ACL filtering function so we // test node filtering down in acl.go for node cases. This also proves @@ -1474,8 +1471,6 @@ func TestHealth_ServiceChecks_FilterACL(t *testing.T) { t.Parallel() - require := require.New(t) - dir, token, srv, codec := testACLFilterServer(t) defer os.RemoveAll(dir) defer srv.Shutdown() @@ -1488,7 +1483,7 @@ func TestHealth_ServiceChecks_FilterACL(t *testing.T) { } reply := structs.IndexedHealthChecks{} err := msgpackrpc.CallWithCodec(codec, "Health.ServiceChecks", &opt, &reply) - require.NoError(err) + require.NoError(t, err) found := false for _, chk := range reply.HealthChecks { @@ -1497,14 +1492,14 @@ func TestHealth_ServiceChecks_FilterACL(t *testing.T) { break } } - require.True(found, "bad: %#v", reply.HealthChecks) + require.True(t, found, "bad: %#v", reply.HealthChecks) opt.ServiceName = "bar" reply = structs.IndexedHealthChecks{} err = msgpackrpc.CallWithCodec(codec, "Health.ServiceChecks", &opt, &reply) - require.NoError(err) - require.Empty(reply.HealthChecks) - require.True(reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, reply.HealthChecks) + require.True(t, reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // We've already proven that we call the ACL filtering function so we // test node filtering down in acl.go for node cases. This also proves @@ -1520,8 +1515,6 @@ func TestHealth_ServiceNodes_FilterACL(t *testing.T) { t.Parallel() - require := require.New(t) - dir, token, srv, codec := testACLFilterServer(t) defer os.RemoveAll(dir) defer srv.Shutdown() @@ -1534,15 +1527,15 @@ func TestHealth_ServiceNodes_FilterACL(t *testing.T) { } reply := structs.IndexedCheckServiceNodes{} err := msgpackrpc.CallWithCodec(codec, "Health.ServiceNodes", &opt, &reply) - require.NoError(err) - require.Len(reply.Nodes, 1) + require.NoError(t, err) + require.Len(t, reply.Nodes, 1) opt.ServiceName = "bar" reply = structs.IndexedCheckServiceNodes{} err = msgpackrpc.CallWithCodec(codec, "Health.ServiceNodes", &opt, &reply) - require.NoError(err) - require.Empty(reply.Nodes) - require.True(reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, reply.Nodes) + require.True(t, reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // We've already proven that we call the ACL filtering function so we // test node filtering down in acl.go for node cases. This also proves @@ -1558,8 +1551,6 @@ func TestHealth_ChecksInState_FilterACL(t *testing.T) { t.Parallel() - require := require.New(t) - dir, token, srv, codec := testACLFilterServer(t) defer os.RemoveAll(dir) defer srv.Shutdown() @@ -1572,7 +1563,7 @@ func TestHealth_ChecksInState_FilterACL(t *testing.T) { } reply := structs.IndexedHealthChecks{} err := msgpackrpc.CallWithCodec(codec, "Health.ChecksInState", &opt, &reply) - require.NoError(err) + require.NoError(t, err) found := false for _, chk := range reply.HealthChecks { @@ -1583,8 +1574,8 @@ func TestHealth_ChecksInState_FilterACL(t *testing.T) { t.Fatalf("bad service 'bar': %#v", reply.HealthChecks) } } - require.True(found, "missing service 'foo': %#v", reply.HealthChecks) - require.True(reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.True(t, found, "missing service 'foo': %#v", reply.HealthChecks) + require.True(t, reply.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // We've already proven that we call the ACL filtering function so we // test node filtering down in acl.go for node cases. This also proves diff --git a/agent/consul/intention_endpoint_test.go b/agent/consul/intention_endpoint_test.go index 028c66fef..0574984ab 100644 --- a/agent/consul/intention_endpoint_test.go +++ b/agent/consul/intention_endpoint_test.go @@ -111,7 +111,6 @@ func TestIntentionApply_defaultSourceType(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -135,8 +134,8 @@ func TestIntentionApply_defaultSourceType(t *testing.T) { var reply string // Create - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) - require.NotEmpty(reply) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.NotEmpty(t, reply) // Read ixn.Intention.ID = reply @@ -146,10 +145,10 @@ func TestIntentionApply_defaultSourceType(t *testing.T) { IntentionID: ixn.Intention.ID, } var resp structs.IndexedIntentions - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Get", req, &resp)) - require.Len(resp.Intentions, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Get", req, &resp)) + require.Len(t, resp.Intentions, 1) actual := resp.Intentions[0] - require.Equal(structs.IntentionSourceConsul, actual.SourceType) + require.Equal(t, structs.IntentionSourceConsul, actual.SourceType) } } @@ -161,7 +160,6 @@ func TestIntentionApply_createWithID(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -184,8 +182,8 @@ func TestIntentionApply_createWithID(t *testing.T) { // Create err := msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply) - require.NotNil(err) - require.Contains(err, "ID must be empty") + require.NotNil(t, err) + require.Contains(t, err, "ID must be empty") } // Test basic updating @@ -282,7 +280,6 @@ func TestIntentionApply_updateNonExist(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -304,8 +301,8 @@ func TestIntentionApply_updateNonExist(t *testing.T) { // Create err := msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply) - require.NotNil(err) - require.Contains(err, "Cannot modify non-existent intention") + require.NotNil(t, err) + require.Contains(t, err, "Cannot modify non-existent intention") } // Test basic deleting @@ -316,7 +313,6 @@ func TestIntentionApply_deleteGood(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -346,13 +342,13 @@ func TestIntentionApply_deleteGood(t *testing.T) { }, &reply), "Cannot delete non-existent intention") // Create - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) - require.NotEmpty(reply) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.NotEmpty(t, reply) // Delete ixn.Op = structs.IntentionOpDelete ixn.Intention.ID = reply - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Read ixn.Intention.ID = reply @@ -363,8 +359,8 @@ func TestIntentionApply_deleteGood(t *testing.T) { } var resp structs.IndexedIntentions err := msgpackrpc.CallWithCodec(codec, "Intention.Get", req, &resp) - require.NotNil(err) - require.Contains(err, ErrIntentionNotFound.Error()) + require.NotNil(t, err) + require.Contains(t, err, ErrIntentionNotFound.Error()) } } @@ -863,7 +859,6 @@ func TestIntentionApply_aclDeny(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -895,11 +890,11 @@ service "foobar" { // Create without a token should error since default deny var reply string err := msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply) - require.True(acl.IsErrPermissionDenied(err)) + require.True(t, acl.IsErrPermissionDenied(err)) // Now add the token and try again. ixn.WriteRequest.Token = token - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Read ixn.Intention.ID = reply @@ -910,10 +905,10 @@ service "foobar" { QueryOptions: structs.QueryOptions{Token: "root"}, } var resp structs.IndexedIntentions - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Get", req, &resp)) - require.Len(resp.Intentions, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Get", req, &resp)) + require.Len(t, resp.Intentions, 1) actual := resp.Intentions[0] - require.Equal(resp.Index, actual.ModifyIndex) + require.Equal(t, resp.Index, actual.ModifyIndex) actual.CreateIndex, actual.ModifyIndex = 0, 0 actual.CreatedAt = ixn.Intention.CreatedAt @@ -921,7 +916,7 @@ service "foobar" { actual.Hash = ixn.Intention.Hash //nolint:staticcheck ixn.Intention.UpdatePrecedence() - require.Equal(ixn.Intention, actual) + require.Equal(t, ixn.Intention, actual) } } @@ -1253,7 +1248,6 @@ func TestIntentionApply_aclDelete(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -1285,18 +1279,18 @@ service "foobar" { // Create var reply string - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Try to do a delete with no token; this should get rejected. ixn.Op = structs.IntentionOpDelete ixn.Intention.ID = reply ixn.WriteRequest.Token = "" err := msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply) - require.True(acl.IsErrPermissionDenied(err)) + require.True(t, acl.IsErrPermissionDenied(err)) // Try again with the original token. This should go through. ixn.WriteRequest.Token = token - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Verify it is gone { @@ -1306,8 +1300,8 @@ service "foobar" { } var resp structs.IndexedIntentions err := msgpackrpc.CallWithCodec(codec, "Intention.Get", req, &resp) - require.NotNil(err) - require.Contains(err.Error(), ErrIntentionNotFound.Error()) + require.NotNil(t, err) + require.Contains(t, err.Error(), ErrIntentionNotFound.Error()) } } @@ -1319,7 +1313,6 @@ func TestIntentionApply_aclUpdate(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -1351,18 +1344,18 @@ service "foobar" { // Create var reply string - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Try to do an update without a token; this should get rejected. ixn.Op = structs.IntentionOpUpdate ixn.Intention.ID = reply ixn.WriteRequest.Token = "" err := msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply) - require.True(acl.IsErrPermissionDenied(err)) + require.True(t, acl.IsErrPermissionDenied(err)) // Try again with the original token; this should go through. ixn.WriteRequest.Token = token - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) } // Test apply with a management token @@ -1373,7 +1366,6 @@ func TestIntentionApply_aclManagement(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -1398,16 +1390,16 @@ func TestIntentionApply_aclManagement(t *testing.T) { // Create var reply string - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) ixn.Intention.ID = reply // Update ixn.Op = structs.IntentionOpUpdate - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Delete ixn.Op = structs.IntentionOpDelete - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) } // Test update changing the name where an ACL won't allow it @@ -1418,7 +1410,6 @@ func TestIntentionApply_aclUpdateChange(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -1450,7 +1441,7 @@ service "foobar" { // Create var reply string - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply)) // Try to do an update without a token; this should get rejected. ixn.Op = structs.IntentionOpUpdate @@ -1458,7 +1449,7 @@ service "foobar" { ixn.Intention.DestinationName = "foo" ixn.WriteRequest.Token = token err := msgpackrpc.CallWithCodec(codec, "Intention.Apply", &ixn, &reply) - require.True(acl.IsErrPermissionDenied(err)) + require.True(t, acl.IsErrPermissionDenied(err)) } // Test reading with ACLs @@ -1570,7 +1561,6 @@ func TestIntentionList(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1585,9 +1575,9 @@ func TestIntentionList(t *testing.T) { Datacenter: "dc1", } var resp structs.IndexedIntentions - require.Nil(msgpackrpc.CallWithCodec(codec, "Intention.List", req, &resp)) - require.NotNil(resp.Intentions) - require.Len(resp.Intentions, 0) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "Intention.List", req, &resp)) + require.NotNil(t, resp.Intentions) + require.Len(t, resp.Intentions, 0) } } diff --git a/agent/consul/internal_endpoint_test.go b/agent/consul/internal_endpoint_test.go index 599b4330c..b77909911 100644 --- a/agent/consul/internal_endpoint_test.go +++ b/agent/consul/internal_endpoint_test.go @@ -853,7 +853,6 @@ func TestInternal_ServiceDump_ACL(t *testing.T) { } t.Run("can read all", func(t *testing.T) { - require := require.New(t) token := tokenWithRules(t, ` node_prefix "" { @@ -870,14 +869,13 @@ func TestInternal_ServiceDump_ACL(t *testing.T) { } var out structs.IndexedNodesWithGateways err := msgpackrpc.CallWithCodec(codec, "Internal.ServiceDump", &args, &out) - require.NoError(err) - require.NotEmpty(out.Nodes) - require.NotEmpty(out.Gateways) - require.False(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.NoError(t, err) + require.NotEmpty(t, out.Nodes) + require.NotEmpty(t, out.Gateways) + require.False(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("cannot read service node", func(t *testing.T) { - require := require.New(t) token := tokenWithRules(t, ` node "node1" { @@ -894,13 +892,12 @@ func TestInternal_ServiceDump_ACL(t *testing.T) { } var out structs.IndexedNodesWithGateways err := msgpackrpc.CallWithCodec(codec, "Internal.ServiceDump", &args, &out) - require.NoError(err) - require.Empty(out.Nodes) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, out.Nodes) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("cannot read service", func(t *testing.T) { - require := require.New(t) token := tokenWithRules(t, ` node "node1" { @@ -917,13 +914,12 @@ func TestInternal_ServiceDump_ACL(t *testing.T) { } var out structs.IndexedNodesWithGateways err := msgpackrpc.CallWithCodec(codec, "Internal.ServiceDump", &args, &out) - require.NoError(err) - require.Empty(out.Nodes) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, out.Nodes) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("cannot read gateway node", func(t *testing.T) { - require := require.New(t) token := tokenWithRules(t, ` node "node2" { @@ -940,13 +936,12 @@ func TestInternal_ServiceDump_ACL(t *testing.T) { } var out structs.IndexedNodesWithGateways err := msgpackrpc.CallWithCodec(codec, "Internal.ServiceDump", &args, &out) - require.NoError(err) - require.Empty(out.Gateways) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, out.Gateways) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("cannot read gateway", func(t *testing.T) { - require := require.New(t) token := tokenWithRules(t, ` node "node2" { @@ -963,9 +958,9 @@ func TestInternal_ServiceDump_ACL(t *testing.T) { } var out structs.IndexedNodesWithGateways err := msgpackrpc.CallWithCodec(codec, "Internal.ServiceDump", &args, &out) - require.NoError(err) - require.Empty(out.Gateways) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, out.Gateways) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) } diff --git a/agent/consul/leader_connect_test.go b/agent/consul/leader_connect_test.go index ea6e3482d..b4ad06c52 100644 --- a/agent/consul/leader_connect_test.go +++ b/agent/consul/leader_connect_test.go @@ -327,7 +327,6 @@ func TestCAManager_RenewIntermediate_Vault_Primary(t *testing.T) { // no parallel execution because we change globals patchIntermediateCertRenewInterval(t) - require := require.New(t) testVault := ca.NewTestVaultServer(t) @@ -354,15 +353,15 @@ func TestCAManager_RenewIntermediate_Vault_Primary(t *testing.T) { store := s1.caManager.delegate.State() _, activeRoot, err := store.CARootActive(nil) - require.NoError(err) + require.NoError(t, err) t.Log("original SigningKeyID", activeRoot.SigningKeyID) intermediatePEM := s1.caManager.getLeafSigningCertFromRoot(activeRoot) intermediateCert, err := connect.ParseCert(intermediatePEM) - require.NoError(err) + require.NoError(t, err) - require.Equal(connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) - require.Equal(intermediatePEM, s1.caManager.getLeafSigningCertFromRoot(activeRoot)) + require.Equal(t, connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) + require.Equal(t, intermediatePEM, s1.caManager.getLeafSigningCertFromRoot(activeRoot)) // Wait for dc1's intermediate to be refreshed. retry.Run(t, func(r *retry.R) { @@ -382,12 +381,12 @@ func TestCAManager_RenewIntermediate_Vault_Primary(t *testing.T) { codec := rpcClient(t, s1) roots := structs.IndexedCARoots{} err = msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", &structs.DCSpecificRequest{}, &roots) - require.NoError(err) - require.Len(roots.Roots, 1) + require.NoError(t, err) + require.Len(t, roots.Roots, 1) activeRoot = roots.Active() - require.Equal(connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) - require.Equal(intermediatePEM, s1.caManager.getLeafSigningCertFromRoot(activeRoot)) + require.Equal(t, connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) + require.Equal(t, intermediatePEM, s1.caManager.getLeafSigningCertFromRoot(activeRoot)) // Have the new intermediate sign a leaf cert and make sure the chain is correct. spiffeService := &connect.SpiffeIDService{ @@ -401,7 +400,7 @@ func TestCAManager_RenewIntermediate_Vault_Primary(t *testing.T) { req := structs.CASignRequest{CSR: csr} cert := structs.IssuedCert{} err = msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", &req, &cert) - require.NoError(err) + require.NoError(t, err) verifyLeafCert(t, activeRoot, cert.CertPEM) } @@ -425,7 +424,6 @@ func TestCAManager_RenewIntermediate_Secondary(t *testing.T) { // no parallel execution because we change globals patchIntermediateCertRenewInterval(t) - require := require.New(t) _, s1 := testServerWithConfig(t, func(c *Config) { c.Build = "1.6.0" @@ -469,15 +467,15 @@ func TestCAManager_RenewIntermediate_Secondary(t *testing.T) { store := s2.fsm.State() _, activeRoot, err := store.CARootActive(nil) - require.NoError(err) + require.NoError(t, err) t.Log("original SigningKeyID", activeRoot.SigningKeyID) intermediatePEM := s2.caManager.getLeafSigningCertFromRoot(activeRoot) intermediateCert, err := connect.ParseCert(intermediatePEM) - require.NoError(err) + require.NoError(t, err) - require.Equal(intermediatePEM, s2.caManager.getLeafSigningCertFromRoot(activeRoot)) - require.Equal(connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) + require.Equal(t, intermediatePEM, s2.caManager.getLeafSigningCertFromRoot(activeRoot)) + require.Equal(t, connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) // Wait for dc2's intermediate to be refreshed. retry.Run(t, func(r *retry.R) { @@ -497,13 +495,13 @@ func TestCAManager_RenewIntermediate_Secondary(t *testing.T) { codec := rpcClient(t, s2) roots := structs.IndexedCARoots{} err = msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", &structs.DCSpecificRequest{}, &roots) - require.NoError(err) - require.Len(roots.Roots, 1) + require.NoError(t, err) + require.Len(t, roots.Roots, 1) _, activeRoot, err = store.CARootActive(nil) - require.NoError(err) - require.Equal(connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) - require.Equal(intermediatePEM, s2.caManager.getLeafSigningCertFromRoot(activeRoot)) + require.NoError(t, err) + require.Equal(t, connect.HexString(intermediateCert.SubjectKeyId), activeRoot.SigningKeyID) + require.Equal(t, intermediatePEM, s2.caManager.getLeafSigningCertFromRoot(activeRoot)) // Have dc2 sign a leaf cert and make sure the chain is correct. spiffeService := &connect.SpiffeIDService{ @@ -517,7 +515,7 @@ func TestCAManager_RenewIntermediate_Secondary(t *testing.T) { req := structs.CASignRequest{CSR: csr} cert := structs.IssuedCert{} err = msgpackrpc.CallWithCodec(codec, "ConnectCA.Sign", &req, &cert) - require.NoError(err) + require.NoError(t, err) verifyLeafCert(t, activeRoot, cert.CertPEM) } @@ -528,8 +526,6 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.Build = "1.6.0" c.PrimaryDatacenter = "dc1" @@ -555,15 +551,15 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { // Get the original intermediate secondaryProvider, _ := getCAProviderWithLock(s2) oldIntermediatePEM, err := secondaryProvider.ActiveIntermediate() - require.NoError(err) - require.NotEmpty(oldIntermediatePEM) + require.NoError(t, err) + require.NotEmpty(t, oldIntermediatePEM) // Capture the current root var originalRoot *structs.CARoot { rootList, activeRoot, err := getTestRoots(s1, "dc1") - require.NoError(err) - require.Len(rootList.Roots, 1) + require.NoError(t, err) + require.Len(t, rootList.Roots, 1) originalRoot = activeRoot } @@ -574,7 +570,7 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { // Update the provider config to use a new private key, which should // cause a rotation. _, newKey, err := connect.GeneratePrivateKey() - require.NoError(err) + require.NoError(t, err) newConfig := &structs.CAConfiguration{ Provider: "consul", Config: map[string]interface{}{ @@ -590,14 +586,14 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { } var reply interface{} - require.NoError(s1.RPC("ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, s1.RPC("ConnectCA.ConfigurationSet", args, &reply)) } var updatedRoot *structs.CARoot { rootList, activeRoot, err := getTestRoots(s1, "dc1") - require.NoError(err) - require.Len(rootList.Roots, 2) + require.NoError(t, err) + require.Len(t, rootList.Roots, 2) updatedRoot = activeRoot } @@ -613,17 +609,17 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { r.Fatal("not a new intermediate") } }) - require.NoError(err) + require.NoError(t, err) // Verify the root lists have been rotated in each DC's state store. state1 := s1.fsm.State() _, primaryRoot, err := state1.CARootActive(nil) - require.NoError(err) + require.NoError(t, err) state2 := s2.fsm.State() _, roots2, err := state2.CARoots(nil) - require.NoError(err) - require.Equal(2, len(roots2)) + require.NoError(t, err) + require.Equal(t, 2, len(roots2)) newRoot := roots2[0] oldRoot := roots2[1] @@ -631,10 +627,10 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { newRoot = roots2[1] oldRoot = roots2[0] } - require.False(oldRoot.Active) - require.True(newRoot.Active) - require.Equal(primaryRoot.ID, newRoot.ID) - require.Equal(primaryRoot.RootCert, newRoot.RootCert) + require.False(t, oldRoot.Active) + require.True(t, newRoot.Active) + require.Equal(t, primaryRoot.ID, newRoot.ID) + require.Equal(t, primaryRoot.RootCert, newRoot.RootCert) // Get the new root from dc1 and validate a chain of: // dc2 leaf -> dc2 intermediate -> dc1 root @@ -650,13 +646,13 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { raw, _ := connect.TestCSR(t, spiffeService) leafCsr, err := connect.ParseCSR(raw) - require.NoError(err) + require.NoError(t, err) leafPEM, err := secondaryProvider.Sign(leafCsr) - require.NoError(err) + require.NoError(t, err) cert, err := connect.ParseCert(leafPEM) - require.NoError(err) + require.NoError(t, err) // Check that the leaf signed by the new intermediate can be verified using the // returned cert chain (signed intermediate + remote root). @@ -669,7 +665,7 @@ func TestConnectCA_ConfigurationSet_RootRotation_Secondary(t *testing.T) { Intermediates: intermediatePool, Roots: rootPool, }) - require.NoError(err) + require.NoError(t, err) } func TestCAManager_Initialize_Vault_FixesSigningKeyID_Primary(t *testing.T) { @@ -1113,7 +1109,6 @@ func TestLeader_CARootPruning(t *testing.T) { caRootPruneInterval = origPruneInterval }) - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1127,14 +1122,14 @@ func TestLeader_CARootPruning(t *testing.T) { Datacenter: "dc1", } var rootList structs.IndexedCARoots - require.Nil(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) - require.Len(rootList.Roots, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) + require.Len(t, rootList.Roots, 1) oldRoot := rootList.Roots[0] // Update the provider config to use a new private key, which should // cause a rotation. _, newKey, err := connect.GeneratePrivateKey() - require.NoError(err) + require.NoError(t, err) newConfig := &structs.CAConfiguration{ Provider: "consul", Config: map[string]interface{}{ @@ -1151,22 +1146,22 @@ func TestLeader_CARootPruning(t *testing.T) { } var reply interface{} - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) } // Should have 2 roots now. _, roots, err := s1.fsm.State().CARoots(nil) - require.NoError(err) - require.Len(roots, 2) + require.NoError(t, err) + require.Len(t, roots, 2) time.Sleep(2 * time.Second) // Now the old root should be pruned. _, roots, err = s1.fsm.State().CARoots(nil) - require.NoError(err) - require.Len(roots, 1) - require.True(roots[0].Active) - require.NotEqual(roots[0].ID, oldRoot.ID) + require.NoError(t, err) + require.Len(t, roots, 1) + require.True(t, roots[0].Active) + require.NotEqual(t, roots[0].ID, oldRoot.ID) } func TestConnectCA_ConfigurationSet_PersistsRoots(t *testing.T) { @@ -1176,7 +1171,6 @@ func TestConnectCA_ConfigurationSet_PersistsRoots(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1201,13 +1195,13 @@ func TestConnectCA_ConfigurationSet_PersistsRoots(t *testing.T) { Datacenter: "dc1", } var rootList structs.IndexedCARoots - require.Nil(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) - require.Len(rootList.Roots, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) + require.Len(t, rootList.Roots, 1) // Update the provider config to use a new private key, which should // cause a rotation. _, newKey, err := connect.GeneratePrivateKey() - require.NoError(err) + require.NoError(t, err) newConfig := &structs.CAConfiguration{ Provider: "consul", Config: map[string]interface{}{ @@ -1222,12 +1216,12 @@ func TestConnectCA_ConfigurationSet_PersistsRoots(t *testing.T) { } var reply interface{} - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) } // Get the active root before leader change. _, root := getCAProviderWithLock(s1) - require.Len(root.IntermediateCerts, 1) + require.Len(t, root.IntermediateCerts, 1) // Force a leader change and make sure the root CA values are preserved. s1.Leave() @@ -1310,17 +1304,16 @@ func TestParseCARoot(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) root, err := parseCARoot(tt.pem, "consul", "cluster") if tt.wantErr { - require.Error(err) + require.Error(t, err) return } - require.NoError(err) - require.Equal(tt.wantSerial, root.SerialNumber) - require.Equal(strings.ToLower(tt.wantSigningKeyID), root.SigningKeyID) - require.Equal(tt.wantKeyType, root.PrivateKeyType) - require.Equal(tt.wantKeyBits, root.PrivateKeyBits) + require.NoError(t, err) + require.Equal(t, tt.wantSerial, root.SerialNumber) + require.Equal(t, strings.ToLower(tt.wantSigningKeyID), root.SigningKeyID) + require.Equal(t, tt.wantKeyType, root.PrivateKeyType) + require.Equal(t, tt.wantKeyBits, root.PrivateKeyBits) }) } } @@ -1491,7 +1484,6 @@ func TestCAManager_Initialize_BadCAConfigDoesNotPreventLeaderEstablishment(t *te } func TestConnectCA_ConfigurationSet_ForceWithoutCrossSigning(t *testing.T) { - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -1505,14 +1497,14 @@ func TestConnectCA_ConfigurationSet_ForceWithoutCrossSigning(t *testing.T) { Datacenter: "dc1", } var rootList structs.IndexedCARoots - require.Nil(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) - require.Len(rootList.Roots, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) + require.Len(t, rootList.Roots, 1) oldRoot := rootList.Roots[0] // Update the provider config to use a new private key, which should // cause a rotation. _, newKey, err := connect.GeneratePrivateKey() - require.NoError(err) + require.NoError(t, err) newConfig := &structs.CAConfiguration{ Provider: "consul", Config: map[string]interface{}{ @@ -1530,18 +1522,18 @@ func TestConnectCA_ConfigurationSet_ForceWithoutCrossSigning(t *testing.T) { } var reply interface{} - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) } // Old root should no longer be active. _, roots, err := s1.fsm.State().CARoots(nil) - require.NoError(err) - require.Len(roots, 2) + require.NoError(t, err) + require.Len(t, roots, 2) for _, r := range roots { if r.ID == oldRoot.ID { - require.False(r.Active) + require.False(t, r.Active) } else { - require.True(r.Active) + require.True(t, r.Active) } } } @@ -1549,7 +1541,6 @@ func TestConnectCA_ConfigurationSet_ForceWithoutCrossSigning(t *testing.T) { func TestConnectCA_ConfigurationSet_Vault_ForceWithoutCrossSigning(t *testing.T) { ca.SkipIfVaultNotPresent(t) - require := require.New(t) testVault := ca.NewTestVaultServer(t) defer testVault.Stop() @@ -1577,8 +1568,8 @@ func TestConnectCA_ConfigurationSet_Vault_ForceWithoutCrossSigning(t *testing.T) Datacenter: "dc1", } var rootList structs.IndexedCARoots - require.Nil(msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) - require.Len(rootList.Roots, 1) + require.Nil(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.Roots", rootReq, &rootList)) + require.Len(t, rootList.Roots, 1) oldRoot := rootList.Roots[0] // Update the provider config to use a new PKI path, which should @@ -1600,18 +1591,18 @@ func TestConnectCA_ConfigurationSet_Vault_ForceWithoutCrossSigning(t *testing.T) } var reply interface{} - require.NoError(msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) } // Old root should no longer be active. _, roots, err := s1.fsm.State().CARoots(nil) - require.NoError(err) - require.Len(roots, 2) + require.NoError(t, err) + require.Len(t, roots, 2) for _, r := range roots { if r.ID == oldRoot.ID { - require.False(r.Active) + require.False(t, r.Active) } else { - require.True(r.Active) + require.True(t, r.Active) } } } diff --git a/agent/consul/leader_intentions_test.go b/agent/consul/leader_intentions_test.go index 363c2036c..e48e3aa66 100644 --- a/agent/consul/leader_intentions_test.go +++ b/agent/consul/leader_intentions_test.go @@ -217,7 +217,6 @@ func TestLeader_ReplicateIntentions(t *testing.T) { func TestLeader_batchLegacyIntentionUpdates(t *testing.T) { t.Parallel() - assert := assert.New(t) ixn1 := structs.TestIntention(t) ixn1.ID = "ixn1" ixn2 := structs.TestIntention(t) @@ -356,7 +355,7 @@ func TestLeader_batchLegacyIntentionUpdates(t *testing.T) { for _, tc := range cases { actual := batchLegacyIntentionUpdates(tc.deletes, tc.updates) - assert.Equal(tc.expected, actual) + assert.Equal(t, tc.expected, actual) } } diff --git a/agent/consul/logging_test.go b/agent/consul/logging_test.go index 493360037..8f747bb43 100644 --- a/agent/consul/logging_test.go +++ b/agent/consul/logging_test.go @@ -10,15 +10,14 @@ import ( func TestLoggerStore_Named(t *testing.T) { t.Parallel() - require := require.New(t) logger := testutil.Logger(t) store := newLoggerStore(logger) - require.NotNil(store) + require.NotNil(t, store) l1 := store.Named("test1") l2 := store.Named("test2") - require.Truef(l1 != l2, + require.Truef(t, l1 != l2, "expected %p and %p to have a different memory address", l1, l2, @@ -27,15 +26,14 @@ func TestLoggerStore_Named(t *testing.T) { func TestLoggerStore_NamedCache(t *testing.T) { t.Parallel() - require := require.New(t) logger := testutil.Logger(t) store := newLoggerStore(logger) - require.NotNil(store) + require.NotNil(t, store) l1 := store.Named("test") l2 := store.Named("test") - require.Truef(l1 == l2, + require.Truef(t, l1 == l2, "expected %p and %p to have the same memory address", l1, l2, diff --git a/agent/consul/prepared_query_endpoint_test.go b/agent/consul/prepared_query_endpoint_test.go index 2d1702f4f..8f0e7ca31 100644 --- a/agent/consul/prepared_query_endpoint_test.go +++ b/agent/consul/prepared_query_endpoint_test.go @@ -2448,7 +2448,6 @@ func TestPreparedQuery_Execute_ConnectExact(t *testing.T) { t.Parallel() - require := require.New(t) dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -2484,7 +2483,7 @@ func TestPreparedQuery_Execute_ConnectExact(t *testing.T) { } var reply struct{} - require.NoError(msgpackrpc.CallWithCodec(codec, "Catalog.Register", &req, &reply)) + require.NoError(t, msgpackrpc.CallWithCodec(codec, "Catalog.Register", &req, &reply)) } // The query, start with connect disabled @@ -2501,7 +2500,7 @@ func TestPreparedQuery_Execute_ConnectExact(t *testing.T) { }, }, } - require.NoError(msgpackrpc.CallWithCodec( + require.NoError(t, msgpackrpc.CallWithCodec( codec, "PreparedQuery.Apply", &query, &query.Query.ID)) // In the future we'll run updates @@ -2515,15 +2514,15 @@ func TestPreparedQuery_Execute_ConnectExact(t *testing.T) { } var reply structs.PreparedQueryExecuteResponse - require.NoError(msgpackrpc.CallWithCodec( + require.NoError(t, msgpackrpc.CallWithCodec( codec, "PreparedQuery.Execute", &req, &reply)) // Result should have two because it omits the proxy whose name // doesn't match the query. - require.Len(reply.Nodes, 2) - require.Equal(query.Query.Service.Service, reply.Service) - require.Equal(query.Query.DNS, reply.DNS) - require.True(reply.QueryMeta.KnownLeader, "queried leader") + require.Len(t, reply.Nodes, 2) + require.Equal(t, query.Query.Service.Service, reply.Service) + require.Equal(t, query.Query.DNS, reply.DNS) + require.True(t, reply.QueryMeta.KnownLeader, "queried leader") } // Run with the Connect setting specified on the request @@ -2535,31 +2534,31 @@ func TestPreparedQuery_Execute_ConnectExact(t *testing.T) { } var reply structs.PreparedQueryExecuteResponse - require.NoError(msgpackrpc.CallWithCodec( + require.NoError(t, msgpackrpc.CallWithCodec( codec, "PreparedQuery.Execute", &req, &reply)) // Result should have two because we should get the native AND // the proxy (since the destination matches our service name). - require.Len(reply.Nodes, 2) - require.Equal(query.Query.Service.Service, reply.Service) - require.Equal(query.Query.DNS, reply.DNS) - require.True(reply.QueryMeta.KnownLeader, "queried leader") + require.Len(t, reply.Nodes, 2) + require.Equal(t, query.Query.Service.Service, reply.Service) + require.Equal(t, query.Query.DNS, reply.DNS) + require.True(t, reply.QueryMeta.KnownLeader, "queried leader") // Make sure the native is the first one if !reply.Nodes[0].Service.Connect.Native { reply.Nodes[0], reply.Nodes[1] = reply.Nodes[1], reply.Nodes[0] } - require.True(reply.Nodes[0].Service.Connect.Native, "native") - require.Equal(reply.Service, reply.Nodes[0].Service.Service) + require.True(t, reply.Nodes[0].Service.Connect.Native, "native") + require.Equal(t, reply.Service, reply.Nodes[0].Service.Service) - require.Equal(structs.ServiceKindConnectProxy, reply.Nodes[1].Service.Kind) - require.Equal(reply.Service, reply.Nodes[1].Service.Proxy.DestinationServiceName) + require.Equal(t, structs.ServiceKindConnectProxy, reply.Nodes[1].Service.Kind) + require.Equal(t, reply.Service, reply.Nodes[1].Service.Proxy.DestinationServiceName) } // Update the query query.Query.Service.Connect = true - require.NoError(msgpackrpc.CallWithCodec( + require.NoError(t, msgpackrpc.CallWithCodec( codec, "PreparedQuery.Apply", &query, &query.Query.ID)) // Run the registered query. @@ -2570,31 +2569,31 @@ func TestPreparedQuery_Execute_ConnectExact(t *testing.T) { } var reply structs.PreparedQueryExecuteResponse - require.NoError(msgpackrpc.CallWithCodec( + require.NoError(t, msgpackrpc.CallWithCodec( codec, "PreparedQuery.Execute", &req, &reply)) // Result should have two because we should get the native AND // the proxy (since the destination matches our service name). - require.Len(reply.Nodes, 2) - require.Equal(query.Query.Service.Service, reply.Service) - require.Equal(query.Query.DNS, reply.DNS) - require.True(reply.QueryMeta.KnownLeader, "queried leader") + require.Len(t, reply.Nodes, 2) + require.Equal(t, query.Query.Service.Service, reply.Service) + require.Equal(t, query.Query.DNS, reply.DNS) + require.True(t, reply.QueryMeta.KnownLeader, "queried leader") // Make sure the native is the first one if !reply.Nodes[0].Service.Connect.Native { reply.Nodes[0], reply.Nodes[1] = reply.Nodes[1], reply.Nodes[0] } - require.True(reply.Nodes[0].Service.Connect.Native, "native") - require.Equal(reply.Service, reply.Nodes[0].Service.Service) + require.True(t, reply.Nodes[0].Service.Connect.Native, "native") + require.Equal(t, reply.Service, reply.Nodes[0].Service.Service) - require.Equal(structs.ServiceKindConnectProxy, reply.Nodes[1].Service.Kind) - require.Equal(reply.Service, reply.Nodes[1].Service.Proxy.DestinationServiceName) + require.Equal(t, structs.ServiceKindConnectProxy, reply.Nodes[1].Service.Kind) + require.Equal(t, reply.Service, reply.Nodes[1].Service.Proxy.DestinationServiceName) } // Unset the query query.Query.Service.Connect = false - require.NoError(msgpackrpc.CallWithCodec( + require.NoError(t, msgpackrpc.CallWithCodec( codec, "PreparedQuery.Apply", &query, &query.Query.ID)) } diff --git a/agent/consul/rpc_test.go b/agent/consul/rpc_test.go index bde9b4d9e..48ce26db0 100644 --- a/agent/consul/rpc_test.go +++ b/agent/consul/rpc_test.go @@ -233,9 +233,6 @@ func TestRPC_blockingQuery(t *testing.T) { defer os.RemoveAll(dir) defer s.Shutdown() - require := require.New(t) - assert := assert.New(t) - // Perform a non-blocking query. Note that it's significant that the meta has // a zero index in response - the implied opts.MinQueryIndex is also zero but // this should not block still. @@ -311,9 +308,9 @@ func TestRPC_blockingQuery(t *testing.T) { calls++ return nil } - require.NoError(s.blockingQuery(&opts, &meta, fn)) - assert.Equal(1, calls) - assert.Equal(uint64(1), meta.Index, + require.NoError(t, s.blockingQuery(&opts, &meta, fn)) + assert.Equal(t, 1, calls) + assert.Equal(t, uint64(1), meta.Index, "expect fake index of 1 to force client to block on next update") // Simulate client making next request @@ -322,12 +319,12 @@ func TestRPC_blockingQuery(t *testing.T) { // This time we should block even though the func returns index 0 still t0 := time.Now() - require.NoError(s.blockingQuery(&opts, &meta, fn)) + require.NoError(t, s.blockingQuery(&opts, &meta, fn)) t1 := time.Now() - assert.Equal(2, calls) - assert.Equal(uint64(1), meta.Index, + assert.Equal(t, 2, calls) + assert.Equal(t, uint64(1), meta.Index, "expect fake index of 1 to force client to block on next update") - assert.True(t1.Sub(t0) > 20*time.Millisecond, + assert.True(t, t1.Sub(t0) > 20*time.Millisecond, "should have actually blocked waiting for timeout") } @@ -382,13 +379,13 @@ func TestRPC_blockingQuery(t *testing.T) { } err := s.blockingQuery(&opts, &meta, fn) - require.NoError(err) - require.False(meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be reset for unauthenticated calls") + require.NoError(t, err) + require.False(t, meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be reset for unauthenticated calls") }) t.Run("ResultsFilteredByACLs is honored for authenticated calls", func(t *testing.T) { token, err := lib.GenerateUUID(nil) - require.NoError(err) + require.NoError(t, err) opts := structs.QueryOptions{ Token: token, @@ -400,8 +397,8 @@ func TestRPC_blockingQuery(t *testing.T) { } err = s.blockingQuery(&opts, &meta, fn) - require.NoError(err) - require.True(meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be honored for authenticated calls") + require.NoError(t, err) + require.True(t, meta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be honored for authenticated calls") }) } diff --git a/agent/consul/session_endpoint_test.go b/agent/consul/session_endpoint_test.go index 500bd56e3..466e314b2 100644 --- a/agent/consul/session_endpoint_test.go +++ b/agent/consul/session_endpoint_test.go @@ -420,7 +420,6 @@ func TestSession_Get_List_NodeSessions_ACLFilter(t *testing.T) { require.NoError(t, err) t.Run("Get", func(t *testing.T) { - require := require.New(t) req := &structs.SessionSpecificRequest{ Datacenter: "dc1", @@ -432,30 +431,29 @@ func TestSession_Get_List_NodeSessions_ACLFilter(t *testing.T) { var sessions structs.IndexedSessions err := msgpackrpc.CallWithCodec(codec, "Session.Get", req, &sessions) - require.NoError(err) - require.Empty(sessions.Sessions) - require.True(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, sessions.Sessions) + require.True(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // ACL-restricted results included. req.Token = allowedToken err = msgpackrpc.CallWithCodec(codec, "Session.Get", req, &sessions) - require.NoError(err) - require.Len(sessions.Sessions, 1) - require.False(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.NoError(t, err) + require.Len(t, sessions.Sessions, 1) + require.False(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") // Try to get a session that doesn't exist to make sure that's handled // correctly by the filter (it will get passed a nil slice). req.SessionID = "adf4238a-882b-9ddc-4a9d-5b6758e4159e" err = msgpackrpc.CallWithCodec(codec, "Session.Get", req, &sessions) - require.NoError(err) - require.Empty(sessions.Sessions) - require.False(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.NoError(t, err) + require.Empty(t, sessions.Sessions) + require.False(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("List", func(t *testing.T) { - require := require.New(t) req := &structs.DCSpecificRequest{ Datacenter: "dc1", @@ -466,21 +464,20 @@ func TestSession_Get_List_NodeSessions_ACLFilter(t *testing.T) { var sessions structs.IndexedSessions err := msgpackrpc.CallWithCodec(codec, "Session.List", req, &sessions) - require.NoError(err) - require.Empty(sessions.Sessions) - require.True(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, sessions.Sessions) + require.True(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // ACL-restricted results included. req.Token = allowedToken err = msgpackrpc.CallWithCodec(codec, "Session.List", req, &sessions) - require.NoError(err) - require.Len(sessions.Sessions, 1) - require.False(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.NoError(t, err) + require.Len(t, sessions.Sessions, 1) + require.False(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) t.Run("NodeSessions", func(t *testing.T) { - require := require.New(t) req := &structs.NodeSpecificRequest{ Datacenter: "dc1", @@ -492,17 +489,17 @@ func TestSession_Get_List_NodeSessions_ACLFilter(t *testing.T) { var sessions structs.IndexedSessions err := msgpackrpc.CallWithCodec(codec, "Session.NodeSessions", req, &sessions) - require.NoError(err) - require.Empty(sessions.Sessions) - require.True(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, sessions.Sessions) + require.True(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") // ACL-restricted results included. req.Token = allowedToken err = msgpackrpc.CallWithCodec(codec, "Session.NodeSessions", req, &sessions) - require.NoError(err) - require.Len(sessions.Sessions, 1) - require.False(sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") + require.NoError(t, err) + require.Len(t, sessions.Sessions, 1) + require.False(t, sessions.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be false") }) } diff --git a/agent/consul/state/catalog_test.go b/agent/consul/state/catalog_test.go index 295176a17..abbf831cf 100644 --- a/agent/consul/state/catalog_test.go +++ b/agent/consul/state/catalog_test.go @@ -1515,7 +1515,6 @@ func TestStateStore_EnsureService(t *testing.T) { } func TestStateStore_EnsureService_connectProxy(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Create the service registration. @@ -1535,21 +1534,20 @@ func TestStateStore_EnsureService_connectProxy(t *testing.T) { // Service successfully registers into the state store. testRegisterNode(t, s, 0, "node1") - assert.Nil(s.EnsureService(10, "node1", ns1)) + assert.Nil(t, s.EnsureService(10, "node1", ns1)) // Retrieve and verify _, out, err := s.NodeServices(nil, "node1", nil) - assert.Nil(err) - assert.NotNil(out) - assert.Len(out.Services, 1) + assert.Nil(t, err) + assert.NotNil(t, out) + assert.Len(t, out.Services, 1) expect1 := *ns1 expect1.CreateIndex, expect1.ModifyIndex = 10, 10 - assert.Equal(&expect1, out.Services["connect-proxy"]) + assert.Equal(t, &expect1, out.Services["connect-proxy"]) } func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) setVirtualIPFlags(t, s) @@ -1575,17 +1573,17 @@ func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { // Make sure there's a virtual IP for the foo service. vip, err := s.VirtualIPForService(structs.ServiceName{Name: "foo"}) require.NoError(t, err) - assert.Equal("240.0.0.1", vip) + assert.Equal(t, "240.0.0.1", vip) // Retrieve and verify _, out, err := s.NodeServices(nil, "node1", nil) require.NoError(t, err) - assert.NotNil(out) - assert.Len(out.Services, 1) + assert.NotNil(t, out) + assert.Len(t, out.Services, 1) taggedAddress := out.Services["foo"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns1.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns1.Port, taggedAddress.Port) // Create the service registration. ns2 := &structs.NodeService{ @@ -1606,23 +1604,23 @@ func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { // Make sure the virtual IP has been incremented for the redis service. vip, err = s.VirtualIPForService(structs.ServiceName{Name: "redis"}) require.NoError(t, err) - assert.Equal("240.0.0.2", vip) + assert.Equal(t, "240.0.0.2", vip) // Retrieve and verify _, out, err = s.NodeServices(nil, "node1", nil) - assert.Nil(err) - assert.NotNil(out) - assert.Len(out.Services, 2) + assert.Nil(t, err) + assert.NotNil(t, out) + assert.Len(t, out.Services, 2) taggedAddress = out.Services["redis-proxy"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns2.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns2.Port, taggedAddress.Port) // Delete the first service and make sure it no longer has a virtual IP assigned. require.NoError(t, s.DeleteService(12, "node1", "foo", entMeta)) vip, err = s.VirtualIPForService(structs.ServiceName{Name: "connect-proxy"}) require.NoError(t, err) - assert.Equal("", vip) + assert.Equal(t, "", vip) // Register another instance of redis-proxy and make sure the virtual IP is unchanged. ns3 := &structs.NodeService{ @@ -1643,14 +1641,14 @@ func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { // Make sure the virtual IP is unchanged for the redis service. vip, err = s.VirtualIPForService(structs.ServiceName{Name: "redis"}) require.NoError(t, err) - assert.Equal("240.0.0.2", vip) + assert.Equal(t, "240.0.0.2", vip) // Make sure the new instance has the same virtual IP. _, out, err = s.NodeServices(nil, "node1", nil) require.NoError(t, err) taggedAddress = out.Services["redis-proxy2"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns3.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns3.Port, taggedAddress.Port) // Register another service to take its virtual IP. ns4 := &structs.NodeService{ @@ -1671,18 +1669,17 @@ func TestStateStore_EnsureService_VirtualIPAssign(t *testing.T) { // Make sure the virtual IP has allocated from the previously freed service. vip, err = s.VirtualIPForService(structs.ServiceName{Name: "web"}) require.NoError(t, err) - assert.Equal("240.0.0.1", vip) + assert.Equal(t, "240.0.0.1", vip) // Retrieve and verify _, out, err = s.NodeServices(nil, "node1", nil) require.NoError(t, err) taggedAddress = out.Services["web-proxy"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns4.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns4.Port, taggedAddress.Port) } func TestStateStore_EnsureService_ReassignFreedVIPs(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) setVirtualIPFlags(t, s) @@ -1708,16 +1705,16 @@ func TestStateStore_EnsureService_ReassignFreedVIPs(t *testing.T) { // Make sure there's a virtual IP for the foo service. vip, err := s.VirtualIPForService(structs.ServiceName{Name: "foo"}) require.NoError(t, err) - assert.Equal("240.0.0.1", vip) + assert.Equal(t, "240.0.0.1", vip) // Retrieve and verify _, out, err := s.NodeServices(nil, "node1", nil) require.NoError(t, err) - assert.NotNil(out) + assert.NotNil(t, out) taggedAddress := out.Services["foo"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns1.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns1.Port, taggedAddress.Port) // Create the service registration. ns2 := &structs.NodeService{ @@ -1738,22 +1735,22 @@ func TestStateStore_EnsureService_ReassignFreedVIPs(t *testing.T) { // Make sure the virtual IP has been incremented for the redis service. vip, err = s.VirtualIPForService(structs.ServiceName{Name: "redis"}) require.NoError(t, err) - assert.Equal("240.0.0.2", vip) + assert.Equal(t, "240.0.0.2", vip) // Retrieve and verify _, out, err = s.NodeServices(nil, "node1", nil) - assert.Nil(err) - assert.NotNil(out) + assert.Nil(t, err) + assert.NotNil(t, out) taggedAddress = out.Services["redis"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns2.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns2.Port, taggedAddress.Port) // Delete the last service and make sure it no longer has a virtual IP assigned. require.NoError(t, s.DeleteService(12, "node1", "redis", entMeta)) vip, err = s.VirtualIPForService(structs.ServiceName{Name: "redis"}) require.NoError(t, err) - assert.Equal("", vip) + assert.Equal(t, "", vip) // Register a new service, should end up with the freed 240.0.0.2 address. ns3 := &structs.NodeService{ @@ -1773,16 +1770,16 @@ func TestStateStore_EnsureService_ReassignFreedVIPs(t *testing.T) { vip, err = s.VirtualIPForService(structs.ServiceName{Name: "backend"}) require.NoError(t, err) - assert.Equal("240.0.0.2", vip) + assert.Equal(t, "240.0.0.2", vip) // Retrieve and verify _, out, err = s.NodeServices(nil, "node1", nil) - assert.Nil(err) - assert.NotNil(out) + assert.Nil(t, err) + assert.NotNil(t, out) taggedAddress = out.Services["backend"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns3.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns3.Port, taggedAddress.Port) // Create a new service, no more freed VIPs so it should go back to using the counter. ns4 := &structs.NodeService{ @@ -1803,16 +1800,16 @@ func TestStateStore_EnsureService_ReassignFreedVIPs(t *testing.T) { // Make sure the virtual IP has been incremented for the frontend service. vip, err = s.VirtualIPForService(structs.ServiceName{Name: "frontend"}) require.NoError(t, err) - assert.Equal("240.0.0.3", vip) + assert.Equal(t, "240.0.0.3", vip) // Retrieve and verify _, out, err = s.NodeServices(nil, "node1", nil) - assert.Nil(err) - assert.NotNil(out) + assert.Nil(t, err) + assert.NotNil(t, out) taggedAddress = out.Services["frontend"].TaggedAddresses[structs.TaggedAddressVirtualIP] - assert.Equal(vip, taggedAddress.Address) - assert.Equal(ns4.Port, taggedAddress.Port) + assert.Equal(t, vip, taggedAddress.Address) + assert.Equal(t, ns4.Port, taggedAddress.Port) } func TestStateStore_Services(t *testing.T) { @@ -2360,82 +2357,80 @@ func TestStateStore_DeleteService(t *testing.T) { } func TestStateStore_ConnectServiceNodes(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Listing with no results returns an empty list. ws := memdb.NewWatchSet() idx, nodes, err := s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(0)) - assert.Len(nodes, 0) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(0)) + assert.Len(t, nodes, 0) // Create some nodes and services. - assert.Nil(s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) - assert.Nil(s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) - assert.Nil(s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(14, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) - assert.Nil(s.EnsureService(15, "bar", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) - assert.Nil(s.EnsureService(16, "bar", &structs.NodeService{ID: "native-db", Service: "db", Connect: structs.ServiceConnect{Native: true}})) - assert.Nil(s.EnsureService(17, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) + assert.Nil(t, s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) + assert.Nil(t, s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(14, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) + assert.Nil(t, s.EnsureService(15, "bar", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) + assert.Nil(t, s.EnsureService(16, "bar", &structs.NodeService{ID: "native-db", Service: "db", Connect: structs.ServiceConnect{Native: true}})) + assert.Nil(t, s.EnsureService(17, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) + assert.True(t, watchFired(ws)) // Read everything back. ws = memdb.NewWatchSet() idx, nodes, err = s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(17)) - assert.Len(nodes, 3) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(17)) + assert.Len(t, nodes, 3) for _, n := range nodes { - assert.True(n.ServiceKind == structs.ServiceKindConnectProxy || + assert.True(t, n.ServiceKind == structs.ServiceKindConnectProxy || n.ServiceConnect.Native, "either proxy or connect native") } // Registering some unrelated node should not fire the watch. testRegisterNode(t, s, 17, "nope") - assert.False(watchFired(ws)) + assert.False(t, watchFired(ws)) // But removing a node with the "db" service should fire the watch. - assert.Nil(s.DeleteNode(18, "bar", nil)) - assert.True(watchFired(ws)) + assert.Nil(t, s.DeleteNode(18, "bar", nil)) + assert.True(t, watchFired(ws)) } func TestStateStore_ConnectServiceNodes_Gateways(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Listing with no results returns an empty list. ws := memdb.NewWatchSet() idx, nodes, err := s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(0)) - assert.Len(nodes, 0) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(0)) + assert.Len(t, nodes, 0) // Create some nodes and services. - assert.Nil(s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) - assert.Nil(s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) + assert.Nil(t, s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) + assert.Nil(t, s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) // Typical services - assert.Nil(s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(14, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) - assert.False(watchFired(ws)) + assert.Nil(t, s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(14, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) + assert.False(t, watchFired(ws)) // Register a sidecar for db - assert.Nil(s.EnsureService(15, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureService(15, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) + assert.True(t, watchFired(ws)) // Reset WatchSet to ensure watch fires when associating db with gateway ws = memdb.NewWatchSet() _, _, err = s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) + assert.Nil(t, err) // Associate gateway with db - assert.Nil(s.EnsureService(16, "bar", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway", Service: "gateway", Port: 443})) - assert.Nil(s.EnsureConfigEntry(17, &structs.TerminatingGatewayConfigEntry{ + assert.Nil(t, s.EnsureService(16, "bar", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway", Service: "gateway", Port: 443})) + assert.Nil(t, s.EnsureConfigEntry(17, &structs.TerminatingGatewayConfigEntry{ Kind: "terminating-gateway", Name: "gateway", Services: []structs.LinkedService{ @@ -2444,71 +2439,71 @@ func TestStateStore_ConnectServiceNodes_Gateways(t *testing.T) { }, }, })) - assert.True(watchFired(ws)) + assert.True(t, watchFired(ws)) // Read everything back. ws = memdb.NewWatchSet() idx, nodes, err = s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(17)) - assert.Len(nodes, 2) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(17)) + assert.Len(t, nodes, 2) // Check sidecar - assert.Equal(structs.ServiceKindConnectProxy, nodes[0].ServiceKind) - assert.Equal("foo", nodes[0].Node) - assert.Equal("proxy", nodes[0].ServiceName) - assert.Equal("proxy", nodes[0].ServiceID) - assert.Equal("db", nodes[0].ServiceProxy.DestinationServiceName) - assert.Equal(8000, nodes[0].ServicePort) + assert.Equal(t, structs.ServiceKindConnectProxy, nodes[0].ServiceKind) + assert.Equal(t, "foo", nodes[0].Node) + assert.Equal(t, "proxy", nodes[0].ServiceName) + assert.Equal(t, "proxy", nodes[0].ServiceID) + assert.Equal(t, "db", nodes[0].ServiceProxy.DestinationServiceName) + assert.Equal(t, 8000, nodes[0].ServicePort) // Check gateway - assert.Equal(structs.ServiceKindTerminatingGateway, nodes[1].ServiceKind) - assert.Equal("bar", nodes[1].Node) - assert.Equal("gateway", nodes[1].ServiceName) - assert.Equal("gateway", nodes[1].ServiceID) - assert.Equal(443, nodes[1].ServicePort) + assert.Equal(t, structs.ServiceKindTerminatingGateway, nodes[1].ServiceKind) + assert.Equal(t, "bar", nodes[1].Node) + assert.Equal(t, "gateway", nodes[1].ServiceName) + assert.Equal(t, "gateway", nodes[1].ServiceID) + assert.Equal(t, 443, nodes[1].ServicePort) // Watch should fire when another gateway instance is registered - assert.Nil(s.EnsureService(18, "foo", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway-2", Service: "gateway", Port: 443})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureService(18, "foo", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway-2", Service: "gateway", Port: 443})) + assert.True(t, watchFired(ws)) // Reset WatchSet to ensure watch fires when deregistering gateway ws = memdb.NewWatchSet() _, _, err = s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) + assert.Nil(t, err) // Watch should fire when a gateway instance is deregistered - assert.Nil(s.DeleteService(19, "bar", "gateway", nil)) - assert.True(watchFired(ws)) + assert.Nil(t, s.DeleteService(19, "bar", "gateway", nil)) + assert.True(t, watchFired(ws)) ws = memdb.NewWatchSet() idx, nodes, err = s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(19)) - assert.Len(nodes, 2) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(19)) + assert.Len(t, nodes, 2) // Check the new gateway - assert.Equal(structs.ServiceKindTerminatingGateway, nodes[1].ServiceKind) - assert.Equal("foo", nodes[1].Node) - assert.Equal("gateway", nodes[1].ServiceName) - assert.Equal("gateway-2", nodes[1].ServiceID) - assert.Equal(443, nodes[1].ServicePort) + assert.Equal(t, structs.ServiceKindTerminatingGateway, nodes[1].ServiceKind) + assert.Equal(t, "foo", nodes[1].Node) + assert.Equal(t, "gateway", nodes[1].ServiceName) + assert.Equal(t, "gateway-2", nodes[1].ServiceID) + assert.Equal(t, 443, nodes[1].ServicePort) // Index should not slide back after deleting all instances of the gateway - assert.Nil(s.DeleteService(20, "foo", "gateway-2", nil)) - assert.True(watchFired(ws)) + assert.Nil(t, s.DeleteService(20, "foo", "gateway-2", nil)) + assert.True(t, watchFired(ws)) idx, nodes, err = s.ConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(20)) - assert.Len(nodes, 1) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(20)) + assert.Len(t, nodes, 1) // Ensure that remaining node is the proxy and not a gateway - assert.Equal(structs.ServiceKindConnectProxy, nodes[0].ServiceKind) - assert.Equal("foo", nodes[0].Node) - assert.Equal("proxy", nodes[0].ServiceName) - assert.Equal("proxy", nodes[0].ServiceID) - assert.Equal(8000, nodes[0].ServicePort) + assert.Equal(t, structs.ServiceKindConnectProxy, nodes[0].ServiceKind) + assert.Equal(t, "foo", nodes[0].Node) + assert.Equal(t, "proxy", nodes[0].ServiceName) + assert.Equal(t, "proxy", nodes[0].ServiceID) + assert.Equal(t, 8000, nodes[0].ServicePort) } func TestStateStore_Service_Snapshot(t *testing.T) { @@ -3679,14 +3674,12 @@ func TestStateStore_ConnectQueryBlocking(t *testing.T) { tt.setupFn(s) } - require := require.New(t) - // Run the query ws := memdb.NewWatchSet() _, res, err := s.CheckConnectServiceNodes(ws, tt.svc, nil) - require.NoError(err) - require.Len(res, tt.wantBeforeResLen) - require.Len(ws, tt.wantBeforeWatchSetSize) + require.NoError(t, err) + require.Len(t, res, tt.wantBeforeResLen) + require.Len(t, ws, tt.wantBeforeWatchSetSize) // Mutate the state store if tt.updateFn != nil { @@ -3695,18 +3688,18 @@ func TestStateStore_ConnectQueryBlocking(t *testing.T) { fired := watchFired(ws) if tt.shouldFire { - require.True(fired, "WatchSet should have fired") + require.True(t, fired, "WatchSet should have fired") } else { - require.False(fired, "WatchSet should not have fired") + require.False(t, fired, "WatchSet should not have fired") } // Re-query the same result. Should return the desired index and len ws = memdb.NewWatchSet() idx, res, err := s.CheckConnectServiceNodes(ws, tt.svc, nil) - require.NoError(err) - require.Len(res, tt.wantAfterResLen) - require.Equal(tt.wantAfterIndex, idx) - require.Len(ws, tt.wantAfterWatchSetSize) + require.NoError(t, err) + require.Len(t, res, tt.wantAfterResLen) + require.Equal(t, tt.wantAfterIndex, idx) + require.Len(t, ws, tt.wantAfterWatchSetSize) }) } } @@ -3828,25 +3821,24 @@ func TestStateStore_CheckServiceNodes(t *testing.T) { } func TestStateStore_CheckConnectServiceNodes(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Listing with no results returns an empty list. ws := memdb.NewWatchSet() idx, nodes, err := s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(0)) - assert.Len(nodes, 0) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(0)) + assert.Len(t, nodes, 0) // Create some nodes and services. - assert.Nil(s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) - assert.Nil(s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) - assert.Nil(s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(14, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) - assert.Nil(s.EnsureService(15, "bar", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) - assert.Nil(s.EnsureService(16, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) + assert.Nil(t, s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) + assert.Nil(t, s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(14, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) + assert.Nil(t, s.EnsureService(15, "bar", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) + assert.Nil(t, s.EnsureService(16, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) + assert.True(t, watchFired(ws)) // Register node checks testRegisterCheck(t, s, 17, "foo", "", "check1", api.HealthPassing) @@ -3859,13 +3851,13 @@ func TestStateStore_CheckConnectServiceNodes(t *testing.T) { // Read everything back. ws = memdb.NewWatchSet() idx, nodes, err = s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(20)) - assert.Len(nodes, 2) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(20)) + assert.Len(t, nodes, 2) for _, n := range nodes { - assert.Equal(structs.ServiceKindConnectProxy, n.Service.Kind) - assert.Equal("db", n.Service.Proxy.DestinationServiceName) + assert.Equal(t, structs.ServiceKindConnectProxy, n.Service.Kind) + assert.Equal(t, "db", n.Service.Proxy.DestinationServiceName) } } @@ -3874,34 +3866,33 @@ func TestStateStore_CheckConnectServiceNodes_Gateways(t *testing.T) { t.Skip("too slow for testing.Short") } - assert := assert.New(t) s := testStateStore(t) // Listing with no results returns an empty list. ws := memdb.NewWatchSet() idx, nodes, err := s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(0)) - assert.Len(nodes, 0) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(0)) + assert.Len(t, nodes, 0) // Create some nodes and services. - assert.Nil(s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) - assert.Nil(s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) + assert.Nil(t, s.EnsureNode(10, &structs.Node{Node: "foo", Address: "127.0.0.1"})) + assert.Nil(t, s.EnsureNode(11, &structs.Node{Node: "bar", Address: "127.0.0.2"})) // Typical services - assert.Nil(s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) - assert.Nil(s.EnsureService(14, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) - assert.False(watchFired(ws)) + assert.Nil(t, s.EnsureService(12, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(13, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) + assert.Nil(t, s.EnsureService(14, "bar", &structs.NodeService{ID: "db2", Service: "db", Tags: []string{"replica"}, Address: "", Port: 8001})) + assert.False(t, watchFired(ws)) // Register node and service checks testRegisterCheck(t, s, 15, "foo", "", "check1", api.HealthPassing) testRegisterCheck(t, s, 16, "bar", "", "check2", api.HealthPassing) testRegisterCheck(t, s, 17, "foo", "db", "check3", api.HealthPassing) - assert.False(watchFired(ws)) + assert.False(t, watchFired(ws)) // Watch should fire when a gateway is associated with the service, even if the gateway doesn't exist yet - assert.Nil(s.EnsureConfigEntry(18, &structs.TerminatingGatewayConfigEntry{ + assert.Nil(t, s.EnsureConfigEntry(18, &structs.TerminatingGatewayConfigEntry{ Kind: "terminating-gateway", Name: "gateway", Services: []structs.LinkedService{ @@ -3910,90 +3901,90 @@ func TestStateStore_CheckConnectServiceNodes_Gateways(t *testing.T) { }, }, })) - assert.True(watchFired(ws)) + assert.True(t, watchFired(ws)) ws = memdb.NewWatchSet() idx, nodes, err = s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(18)) - assert.Len(nodes, 0) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(18)) + assert.Len(t, nodes, 0) // Watch should fire when a gateway is added - assert.Nil(s.EnsureService(19, "bar", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway", Service: "gateway", Port: 443})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureService(19, "bar", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway", Service: "gateway", Port: 443})) + assert.True(t, watchFired(ws)) // Watch should fire when a check is added to the gateway testRegisterCheck(t, s, 20, "bar", "gateway", "check4", api.HealthPassing) - assert.True(watchFired(ws)) + assert.True(t, watchFired(ws)) // Watch should fire when a different connect service is registered for db - assert.Nil(s.EnsureService(21, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureService(21, "foo", &structs.NodeService{Kind: structs.ServiceKindConnectProxy, ID: "proxy", Service: "proxy", Proxy: structs.ConnectProxyConfig{DestinationServiceName: "db"}, Port: 8000})) + assert.True(t, watchFired(ws)) // Read everything back. ws = memdb.NewWatchSet() idx, nodes, err = s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(21)) - assert.Len(nodes, 2) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(21)) + assert.Len(t, nodes, 2) // Check sidecar - assert.Equal(structs.ServiceKindConnectProxy, nodes[0].Service.Kind) - assert.Equal("foo", nodes[0].Node.Node) - assert.Equal("proxy", nodes[0].Service.Service) - assert.Equal("proxy", nodes[0].Service.ID) - assert.Equal("db", nodes[0].Service.Proxy.DestinationServiceName) - assert.Equal(8000, nodes[0].Service.Port) + assert.Equal(t, structs.ServiceKindConnectProxy, nodes[0].Service.Kind) + assert.Equal(t, "foo", nodes[0].Node.Node) + assert.Equal(t, "proxy", nodes[0].Service.Service) + assert.Equal(t, "proxy", nodes[0].Service.ID) + assert.Equal(t, "db", nodes[0].Service.Proxy.DestinationServiceName) + assert.Equal(t, 8000, nodes[0].Service.Port) // Check gateway - assert.Equal(structs.ServiceKindTerminatingGateway, nodes[1].Service.Kind) - assert.Equal("bar", nodes[1].Node.Node) - assert.Equal("gateway", nodes[1].Service.Service) - assert.Equal("gateway", nodes[1].Service.ID) - assert.Equal(443, nodes[1].Service.Port) + assert.Equal(t, structs.ServiceKindTerminatingGateway, nodes[1].Service.Kind) + assert.Equal(t, "bar", nodes[1].Node.Node) + assert.Equal(t, "gateway", nodes[1].Service.Service) + assert.Equal(t, "gateway", nodes[1].Service.ID) + assert.Equal(t, 443, nodes[1].Service.Port) // Watch should fire when another gateway instance is registered - assert.Nil(s.EnsureService(22, "foo", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway-2", Service: "gateway", Port: 443})) - assert.True(watchFired(ws)) + assert.Nil(t, s.EnsureService(22, "foo", &structs.NodeService{Kind: structs.ServiceKindTerminatingGateway, ID: "gateway-2", Service: "gateway", Port: 443})) + assert.True(t, watchFired(ws)) ws = memdb.NewWatchSet() idx, nodes, err = s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(22)) - assert.Len(nodes, 3) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(22)) + assert.Len(t, nodes, 3) // Watch should fire when a gateway instance is deregistered - assert.Nil(s.DeleteService(23, "bar", "gateway", nil)) - assert.True(watchFired(ws)) + assert.Nil(t, s.DeleteService(23, "bar", "gateway", nil)) + assert.True(t, watchFired(ws)) ws = memdb.NewWatchSet() idx, nodes, err = s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(23)) - assert.Len(nodes, 2) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(23)) + assert.Len(t, nodes, 2) // Check new gateway - assert.Equal(structs.ServiceKindTerminatingGateway, nodes[1].Service.Kind) - assert.Equal("foo", nodes[1].Node.Node) - assert.Equal("gateway", nodes[1].Service.Service) - assert.Equal("gateway-2", nodes[1].Service.ID) - assert.Equal(443, nodes[1].Service.Port) + assert.Equal(t, structs.ServiceKindTerminatingGateway, nodes[1].Service.Kind) + assert.Equal(t, "foo", nodes[1].Node.Node) + assert.Equal(t, "gateway", nodes[1].Service.Service) + assert.Equal(t, "gateway-2", nodes[1].Service.ID) + assert.Equal(t, 443, nodes[1].Service.Port) // Index should not slide back after deleting all instances of the gateway - assert.Nil(s.DeleteService(24, "foo", "gateway-2", nil)) - assert.True(watchFired(ws)) + assert.Nil(t, s.DeleteService(24, "foo", "gateway-2", nil)) + assert.True(t, watchFired(ws)) idx, nodes, err = s.CheckConnectServiceNodes(ws, "db", nil) - assert.Nil(err) - assert.Equal(idx, uint64(24)) - assert.Len(nodes, 1) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(24)) + assert.Len(t, nodes, 1) // Ensure that remaining node is the proxy and not a gateway - assert.Equal(structs.ServiceKindConnectProxy, nodes[0].Service.Kind) - assert.Equal("foo", nodes[0].Node.Node) - assert.Equal("proxy", nodes[0].Service.Service) - assert.Equal("proxy", nodes[0].Service.ID) - assert.Equal(8000, nodes[0].Service.Port) + assert.Equal(t, structs.ServiceKindConnectProxy, nodes[0].Service.Kind) + assert.Equal(t, "foo", nodes[0].Node.Node) + assert.Equal(t, "proxy", nodes[0].Service.Service) + assert.Equal(t, "proxy", nodes[0].Service.ID) + assert.Equal(t, 8000, nodes[0].Service.Port) } func BenchmarkCheckServiceNodes(b *testing.B) { @@ -5254,14 +5245,13 @@ func TestStateStore_GatewayServices_ServiceDeletion(t *testing.T) { func TestStateStore_CheckIngressServiceNodes(t *testing.T) { s := testStateStore(t) ws := setupIngressState(t, s) - require := require.New(t) t.Run("check service1 ingress gateway", func(t *testing.T) { idx, results, err := s.CheckIngressServiceNodes(ws, "service1", nil) - require.NoError(err) - require.Equal(uint64(15), idx) + require.NoError(t, err) + require.Equal(t, uint64(15), idx) // Multiple instances of the ingress2 service - require.Len(results, 4) + require.Len(t, results, 4) ids := make(map[string]struct{}) for _, n := range results { @@ -5272,14 +5262,14 @@ func TestStateStore_CheckIngressServiceNodes(t *testing.T) { "ingress2": {}, "wildcardIngress": {}, } - require.Equal(expectedIds, ids) + require.Equal(t, expectedIds, ids) }) t.Run("check service2 ingress gateway", func(t *testing.T) { idx, results, err := s.CheckIngressServiceNodes(ws, "service2", nil) - require.NoError(err) - require.Equal(uint64(15), idx) - require.Len(results, 2) + require.NoError(t, err) + require.Equal(t, uint64(15), idx) + require.Len(t, results, 2) ids := make(map[string]struct{}) for _, n := range results { @@ -5289,38 +5279,38 @@ func TestStateStore_CheckIngressServiceNodes(t *testing.T) { "ingress1": {}, "wildcardIngress": {}, } - require.Equal(expectedIds, ids) + require.Equal(t, expectedIds, ids) }) t.Run("check service3 ingress gateway", func(t *testing.T) { ws := memdb.NewWatchSet() idx, results, err := s.CheckIngressServiceNodes(ws, "service3", nil) - require.NoError(err) - require.Equal(uint64(15), idx) - require.Len(results, 1) - require.Equal("wildcardIngress", results[0].Service.ID) + require.NoError(t, err) + require.Equal(t, uint64(15), idx) + require.Len(t, results, 1) + require.Equal(t, "wildcardIngress", results[0].Service.ID) }) t.Run("delete a wildcard entry", func(t *testing.T) { - require.Nil(s.DeleteConfigEntry(19, "ingress-gateway", "wildcardIngress", nil)) - require.True(watchFired(ws)) + require.Nil(t, s.DeleteConfigEntry(19, "ingress-gateway", "wildcardIngress", nil)) + require.True(t, watchFired(ws)) idx, results, err := s.CheckIngressServiceNodes(ws, "service1", nil) - require.NoError(err) - require.Equal(uint64(15), idx) - require.Len(results, 3) + require.NoError(t, err) + require.Equal(t, uint64(15), idx) + require.Len(t, results, 3) idx, results, err = s.CheckIngressServiceNodes(ws, "service2", nil) - require.NoError(err) - require.Equal(uint64(15), idx) - require.Len(results, 1) + require.NoError(t, err) + require.Equal(t, uint64(15), idx) + require.Len(t, results, 1) idx, results, err = s.CheckIngressServiceNodes(ws, "service3", nil) - require.NoError(err) - require.Equal(uint64(15), idx) + require.NoError(t, err) + require.Equal(t, uint64(15), idx) // TODO(ingress): index goes backward when deleting last config entry - // require.Equal(uint64(11), idx) - require.Len(results, 0) + // require.Equal(t,uint64(11), idx) + require.Len(t, results, 0) }) } @@ -5628,56 +5618,55 @@ func TestStateStore_GatewayServices_WildcardAssociation(t *testing.T) { s := testStateStore(t) setupIngressState(t, s) - require := require.New(t) ws := memdb.NewWatchSet() t.Run("base case for wildcard", func(t *testing.T) { idx, results, err := s.GatewayServices(ws, "wildcardIngress", nil) - require.NoError(err) - require.Equal(uint64(16), idx) - require.Len(results, 3) + require.NoError(t, err) + require.Equal(t, uint64(16), idx) + require.Len(t, results, 3) }) t.Run("do not associate ingress services with gateway", func(t *testing.T) { testRegisterIngressService(t, s, 17, "node1", "testIngress") - require.False(watchFired(ws)) + require.False(t, watchFired(ws)) idx, results, err := s.GatewayServices(ws, "wildcardIngress", nil) - require.NoError(err) - require.Equal(uint64(16), idx) - require.Len(results, 3) + require.NoError(t, err) + require.Equal(t, uint64(16), idx) + require.Len(t, results, 3) }) t.Run("do not associate terminating-gateway services with gateway", func(t *testing.T) { - require.Nil(s.EnsureService(18, "node1", + require.Nil(t, s.EnsureService(18, "node1", &structs.NodeService{ Kind: structs.ServiceKindTerminatingGateway, ID: "gateway", Service: "gateway", Port: 443, }, )) - require.False(watchFired(ws)) + require.False(t, watchFired(ws)) idx, results, err := s.GatewayServices(ws, "wildcardIngress", nil) - require.NoError(err) - require.Equal(uint64(16), idx) - require.Len(results, 3) + require.NoError(t, err) + require.Equal(t, uint64(16), idx) + require.Len(t, results, 3) }) t.Run("do not associate connect-proxy services with gateway", func(t *testing.T) { testRegisterSidecarProxy(t, s, 19, "node1", "web") - require.False(watchFired(ws)) + require.False(t, watchFired(ws)) idx, results, err := s.GatewayServices(ws, "wildcardIngress", nil) - require.NoError(err) - require.Equal(uint64(16), idx) - require.Len(results, 3) + require.NoError(t, err) + require.Equal(t, uint64(16), idx) + require.Len(t, results, 3) }) t.Run("do not associate consul services with gateway", func(t *testing.T) { - require.Nil(s.EnsureService(20, "node1", + require.Nil(t, s.EnsureService(20, "node1", &structs.NodeService{ID: "consul", Service: "consul", Tags: nil}, )) - require.False(watchFired(ws)) + require.False(t, watchFired(ws)) idx, results, err := s.GatewayServices(ws, "wildcardIngress", nil) - require.NoError(err) - require.Equal(uint64(16), idx) - require.Len(results, 3) + require.NoError(t, err) + require.Equal(t, uint64(16), idx) + require.Len(t, results, 3) }) } @@ -5708,15 +5697,13 @@ func TestStateStore_GatewayServices_IngressProtocolFiltering(t *testing.T) { }) t.Run("no services from default tcp protocol", func(t *testing.T) { - require := require.New(t) idx, results, err := s.GatewayServices(nil, "ingress1", nil) - require.NoError(err) - require.Equal(uint64(4), idx) - require.Len(results, 0) + require.NoError(t, err) + require.Equal(t, uint64(4), idx) + require.Len(t, results, 0) }) t.Run("service-defaults", func(t *testing.T) { - require := require.New(t) expected := structs.GatewayServices{ { Gateway: structs.NewServiceName("ingress1", nil), @@ -5739,13 +5726,12 @@ func TestStateStore_GatewayServices_IngressProtocolFiltering(t *testing.T) { } assert.NoError(t, s.EnsureConfigEntry(5, svcDefaults)) idx, results, err := s.GatewayServices(nil, "ingress1", nil) - require.NoError(err) - require.Equal(uint64(5), idx) - require.ElementsMatch(results, expected) + require.NoError(t, err) + require.Equal(t, uint64(5), idx) + require.ElementsMatch(t, results, expected) }) t.Run("proxy-defaults", func(t *testing.T) { - require := require.New(t) expected := structs.GatewayServices{ { Gateway: structs.NewServiceName("ingress1", nil), @@ -5783,13 +5769,12 @@ func TestStateStore_GatewayServices_IngressProtocolFiltering(t *testing.T) { assert.NoError(t, s.EnsureConfigEntry(6, proxyDefaults)) idx, results, err := s.GatewayServices(nil, "ingress1", nil) - require.NoError(err) - require.Equal(uint64(6), idx) - require.ElementsMatch(results, expected) + require.NoError(t, err) + require.Equal(t, uint64(6), idx) + require.ElementsMatch(t, results, expected) }) t.Run("service-defaults overrides proxy-defaults", func(t *testing.T) { - require := require.New(t) expected := structs.GatewayServices{ { Gateway: structs.NewServiceName("ingress1", nil), @@ -5813,13 +5798,12 @@ func TestStateStore_GatewayServices_IngressProtocolFiltering(t *testing.T) { assert.NoError(t, s.EnsureConfigEntry(7, svcDefaults)) idx, results, err := s.GatewayServices(nil, "ingress1", nil) - require.NoError(err) - require.Equal(uint64(7), idx) - require.ElementsMatch(results, expected) + require.NoError(t, err) + require.Equal(t, uint64(7), idx) + require.ElementsMatch(t, results, expected) }) t.Run("change listener protocol and expect different filter", func(t *testing.T) { - require := require.New(t) expected := structs.GatewayServices{ { Gateway: structs.NewServiceName("ingress1", nil), @@ -5853,9 +5837,9 @@ func TestStateStore_GatewayServices_IngressProtocolFiltering(t *testing.T) { assert.NoError(t, s.EnsureConfigEntry(8, ingress1)) idx, results, err := s.GatewayServices(nil, "ingress1", nil) - require.NoError(err) - require.Equal(uint64(8), idx) - require.ElementsMatch(results, expected) + require.NoError(t, err) + require.Equal(t, uint64(8), idx) + require.ElementsMatch(t, results, expected) }) } diff --git a/agent/consul/state/config_entry_test.go b/agent/consul/state/config_entry_test.go index daddc9bb8..ee37844fc 100644 --- a/agent/consul/state/config_entry_test.go +++ b/agent/consul/state/config_entry_test.go @@ -12,7 +12,6 @@ import ( ) func TestStore_ConfigEntry(t *testing.T) { - require := require.New(t) s := testConfigStateStore(t) expected := &structs.ProxyConfigEntry{ @@ -24,12 +23,12 @@ func TestStore_ConfigEntry(t *testing.T) { } // Create - require.NoError(s.EnsureConfigEntry(0, expected)) + require.NoError(t, s.EnsureConfigEntry(0, expected)) idx, config, err := s.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) - require.Equal(uint64(0), idx) - require.Equal(expected, config) + require.NoError(t, err) + require.Equal(t, uint64(0), idx) + require.Equal(t, expected, config) // Update updated := &structs.ProxyConfigEntry{ @@ -39,44 +38,43 @@ func TestStore_ConfigEntry(t *testing.T) { "DestinationServiceName": "bar", }, } - require.NoError(s.EnsureConfigEntry(1, updated)) + require.NoError(t, s.EnsureConfigEntry(1, updated)) idx, config, err = s.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) - require.Equal(uint64(1), idx) - require.Equal(updated, config) + require.NoError(t, err) + require.Equal(t, uint64(1), idx) + require.Equal(t, updated, config) // Delete - require.NoError(s.DeleteConfigEntry(2, structs.ProxyDefaults, "global", nil)) + require.NoError(t, s.DeleteConfigEntry(2, structs.ProxyDefaults, "global", nil)) idx, config, err = s.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) - require.Equal(uint64(2), idx) - require.Nil(config) + require.NoError(t, err) + require.Equal(t, uint64(2), idx) + require.Nil(t, config) // Set up a watch. serviceConf := &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "foo", } - require.NoError(s.EnsureConfigEntry(3, serviceConf)) + require.NoError(t, s.EnsureConfigEntry(3, serviceConf)) ws := memdb.NewWatchSet() _, _, err = s.ConfigEntry(ws, structs.ServiceDefaults, "foo", nil) - require.NoError(err) + require.NoError(t, err) // Make an unrelated modification and make sure the watch doesn't fire. - require.NoError(s.EnsureConfigEntry(4, updated)) - require.False(watchFired(ws)) + require.NoError(t, s.EnsureConfigEntry(4, updated)) + require.False(t, watchFired(ws)) // Update the watched config and make sure it fires. serviceConf.Protocol = "http" - require.NoError(s.EnsureConfigEntry(5, serviceConf)) - require.True(watchFired(ws)) + require.NoError(t, s.EnsureConfigEntry(5, serviceConf)) + require.True(t, watchFired(ws)) } func TestStore_ConfigEntryCAS(t *testing.T) { - require := require.New(t) s := testConfigStateStore(t) expected := &structs.ProxyConfigEntry{ @@ -88,12 +86,12 @@ func TestStore_ConfigEntryCAS(t *testing.T) { } // Create - require.NoError(s.EnsureConfigEntry(1, expected)) + require.NoError(t, s.EnsureConfigEntry(1, expected)) idx, config, err := s.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) - require.Equal(uint64(1), idx) - require.Equal(expected, config) + require.NoError(t, err) + require.Equal(t, uint64(1), idx) + require.Equal(t, expected, config) // Update with invalid index updated := &structs.ProxyConfigEntry{ @@ -104,29 +102,28 @@ func TestStore_ConfigEntryCAS(t *testing.T) { }, } ok, err := s.EnsureConfigEntryCAS(2, 99, updated) - require.False(ok) - require.NoError(err) + require.False(t, ok) + require.NoError(t, err) // Entry should not be changed idx, config, err = s.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) - require.Equal(uint64(1), idx) - require.Equal(expected, config) + require.NoError(t, err) + require.Equal(t, uint64(1), idx) + require.Equal(t, expected, config) // Update with a valid index ok, err = s.EnsureConfigEntryCAS(2, 1, updated) - require.True(ok) - require.NoError(err) + require.True(t, ok) + require.NoError(t, err) // Entry should be updated idx, config, err = s.ConfigEntry(nil, structs.ProxyDefaults, "global", nil) - require.NoError(err) - require.Equal(uint64(2), idx) - require.Equal(updated, config) + require.NoError(t, err) + require.Equal(t, uint64(2), idx) + require.Equal(t, updated, config) } func TestStore_ConfigEntry_DeleteCAS(t *testing.T) { - require := require.New(t) s := testConfigStateStore(t) entry := &structs.ProxyConfigEntry{ @@ -139,31 +136,31 @@ func TestStore_ConfigEntry_DeleteCAS(t *testing.T) { // Attempt to delete the entry before it exists. ok, err := s.DeleteConfigEntryCAS(1, 0, entry) - require.NoError(err) - require.False(ok) + require.NoError(t, err) + require.False(t, ok) // Create the entry. - require.NoError(s.EnsureConfigEntry(1, entry)) + require.NoError(t, s.EnsureConfigEntry(1, entry)) // Attempt to delete with an invalid index. ok, err = s.DeleteConfigEntryCAS(2, 99, entry) - require.NoError(err) - require.False(ok) + require.NoError(t, err) + require.False(t, ok) // Entry should not be deleted. _, config, err := s.ConfigEntry(nil, entry.Kind, entry.Name, nil) - require.NoError(err) - require.NotNil(config) + require.NoError(t, err) + require.NotNil(t, config) // Attempt to delete with a valid index. ok, err = s.DeleteConfigEntryCAS(2, 1, entry) - require.NoError(err) - require.True(ok) + require.NoError(t, err) + require.True(t, ok) // Entry should be deleted. _, config, err = s.ConfigEntry(nil, entry.Kind, entry.Name, nil) - require.NoError(err) - require.Nil(config) + require.NoError(t, err) + require.Nil(t, config) } func TestStore_ConfigEntry_UpdateOver(t *testing.T) { @@ -263,7 +260,6 @@ func TestStore_ConfigEntry_UpdateOver(t *testing.T) { } func TestStore_ConfigEntries(t *testing.T) { - require := require.New(t) s := testConfigStateStore(t) // Create some config entries. @@ -280,39 +276,39 @@ func TestStore_ConfigEntries(t *testing.T) { Name: "test3", } - require.NoError(s.EnsureConfigEntry(0, entry1)) - require.NoError(s.EnsureConfigEntry(1, entry2)) - require.NoError(s.EnsureConfigEntry(2, entry3)) + require.NoError(t, s.EnsureConfigEntry(0, entry1)) + require.NoError(t, s.EnsureConfigEntry(1, entry2)) + require.NoError(t, s.EnsureConfigEntry(2, entry3)) // Get all entries idx, entries, err := s.ConfigEntries(nil, nil) - require.NoError(err) - require.Equal(uint64(2), idx) - require.Equal([]structs.ConfigEntry{entry1, entry2, entry3}, entries) + require.NoError(t, err) + require.Equal(t, uint64(2), idx) + require.Equal(t, []structs.ConfigEntry{entry1, entry2, entry3}, entries) // Get all proxy entries idx, entries, err = s.ConfigEntriesByKind(nil, structs.ProxyDefaults, nil) - require.NoError(err) - require.Equal(uint64(2), idx) - require.Equal([]structs.ConfigEntry{entry1}, entries) + require.NoError(t, err) + require.Equal(t, uint64(2), idx) + require.Equal(t, []structs.ConfigEntry{entry1}, entries) // Get all service entries ws := memdb.NewWatchSet() idx, entries, err = s.ConfigEntriesByKind(ws, structs.ServiceDefaults, nil) - require.NoError(err) - require.Equal(uint64(2), idx) - require.Equal([]structs.ConfigEntry{entry2, entry3}, entries) + require.NoError(t, err) + require.Equal(t, uint64(2), idx) + require.Equal(t, []structs.ConfigEntry{entry2, entry3}, entries) // Watch should not have fired - require.False(watchFired(ws)) + require.False(t, watchFired(ws)) // Now make an update and make sure the watch fires. - require.NoError(s.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ + require.NoError(t, s.EnsureConfigEntry(3, &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "test2", Protocol: "tcp", })) - require.True(watchFired(ws)) + require.True(t, watchFired(ws)) } func TestStore_ConfigEntry_GraphValidation(t *testing.T) { diff --git a/agent/consul/state/connect_ca_test.go b/agent/consul/state/connect_ca_test.go index ba4769720..2b2349c2d 100644 --- a/agent/consul/state/connect_ca_test.go +++ b/agent/consul/state/connect_ca_test.go @@ -184,25 +184,24 @@ func TestStore_CAConfig_Snapshot_Restore_BlankConfig(t *testing.T) { } func TestStore_CARootSetList(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Call list to populate the watch set ws := memdb.NewWatchSet() _, _, err := s.CARoots(ws) - assert.Nil(err) + assert.Nil(t, err) // Build a valid value ca1 := connect.TestCA(t, nil) expected := *ca1 // Set ok, err := s.CARootSetCAS(1, 0, []*structs.CARoot{ca1}) - assert.Nil(err) - assert.True(ok) + assert.Nil(t, err) + assert.True(t, ok) // Make sure the index got updated. - assert.Equal(s.maxIndex(tableConnectCARoots), uint64(1)) - assert.True(watchFired(ws), "watch fired") + assert.Equal(t, s.maxIndex(tableConnectCARoots), uint64(1)) + assert.True(t, watchFired(ws), "watch fired") // Read it back out and verify it. @@ -212,20 +211,19 @@ func TestStore_CARootSetList(t *testing.T) { } ws = memdb.NewWatchSet() _, roots, err := s.CARoots(ws) - assert.Nil(err) - assert.Len(roots, 1) + assert.Nil(t, err) + assert.Len(t, roots, 1) actual := roots[0] assertDeepEqual(t, expected, *actual) } func TestStore_CARootSet_emptyID(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Call list to populate the watch set ws := memdb.NewWatchSet() _, _, err := s.CARoots(ws) - assert.Nil(err) + assert.Nil(t, err) // Build a valid value ca1 := connect.TestCA(t, nil) @@ -233,29 +231,28 @@ func TestStore_CARootSet_emptyID(t *testing.T) { // Set ok, err := s.CARootSetCAS(1, 0, []*structs.CARoot{ca1}) - assert.NotNil(err) - assert.Contains(err.Error(), ErrMissingCARootID.Error()) - assert.False(ok) + assert.NotNil(t, err) + assert.Contains(t, err.Error(), ErrMissingCARootID.Error()) + assert.False(t, ok) // Make sure the index got updated. - assert.Equal(s.maxIndex(tableConnectCARoots), uint64(0)) - assert.False(watchFired(ws), "watch fired") + assert.Equal(t, s.maxIndex(tableConnectCARoots), uint64(0)) + assert.False(t, watchFired(ws), "watch fired") // Read it back out and verify it. ws = memdb.NewWatchSet() _, roots, err := s.CARoots(ws) - assert.Nil(err) - assert.Len(roots, 0) + assert.Nil(t, err) + assert.Len(t, roots, 0) } func TestStore_CARootSet_noActive(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Call list to populate the watch set ws := memdb.NewWatchSet() _, _, err := s.CARoots(ws) - assert.Nil(err) + assert.Nil(t, err) // Build a valid value ca1 := connect.TestCA(t, nil) @@ -265,19 +262,18 @@ func TestStore_CARootSet_noActive(t *testing.T) { // Set ok, err := s.CARootSetCAS(1, 0, []*structs.CARoot{ca1, ca2}) - assert.NotNil(err) - assert.Contains(err.Error(), "exactly one active") - assert.False(ok) + assert.NotNil(t, err) + assert.Contains(t, err.Error(), "exactly one active") + assert.False(t, ok) } func TestStore_CARootSet_multipleActive(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Call list to populate the watch set ws := memdb.NewWatchSet() _, _, err := s.CARoots(ws) - assert.Nil(err) + assert.Nil(t, err) // Build a valid value ca1 := connect.TestCA(t, nil) @@ -285,13 +281,12 @@ func TestStore_CARootSet_multipleActive(t *testing.T) { // Set ok, err := s.CARootSetCAS(1, 0, []*structs.CARoot{ca1, ca2}) - assert.NotNil(err) - assert.Contains(err.Error(), "exactly one active") - assert.False(ok) + assert.NotNil(t, err) + assert.Contains(t, err.Error(), "exactly one active") + assert.False(t, ok) } func TestStore_CARootActive_valid(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Build a valid value @@ -303,33 +298,31 @@ func TestStore_CARootActive_valid(t *testing.T) { // Set ok, err := s.CARootSetCAS(1, 0, []*structs.CARoot{ca1, ca2, ca3}) - assert.Nil(err) - assert.True(ok) + assert.Nil(t, err) + assert.True(t, ok) // Query ws := memdb.NewWatchSet() idx, res, err := s.CARootActive(ws) - assert.Equal(idx, uint64(1)) - assert.Nil(err) - assert.NotNil(res) - assert.Equal(ca2.ID, res.ID) + assert.Equal(t, idx, uint64(1)) + assert.Nil(t, err) + assert.NotNil(t, res) + assert.Equal(t, ca2.ID, res.ID) } // Test that querying the active CA returns the correct value. func TestStore_CARootActive_none(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Querying with no results returns nil. ws := memdb.NewWatchSet() idx, res, err := s.CARootActive(ws) - assert.Equal(idx, uint64(0)) - assert.Nil(res) - assert.Nil(err) + assert.Equal(t, idx, uint64(0)) + assert.Nil(t, res) + assert.Nil(t, err) } func TestStore_CARoot_Snapshot_Restore(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Create some intentions. @@ -351,8 +344,8 @@ func TestStore_CARoot_Snapshot_Restore(t *testing.T) { // Now create ok, err := s.CARootSetCAS(1, 0, roots) - assert.Nil(err) - assert.True(ok) + assert.Nil(t, err) + assert.True(t, ok) // Snapshot the queries. snap := s.Snapshot() @@ -360,34 +353,33 @@ func TestStore_CARoot_Snapshot_Restore(t *testing.T) { // Alter the real state store. ok, err = s.CARootSetCAS(2, 1, roots[:1]) - assert.Nil(err) - assert.True(ok) + assert.Nil(t, err) + assert.True(t, ok) // Verify the snapshot. - assert.Equal(snap.LastIndex(), uint64(1)) + assert.Equal(t, snap.LastIndex(), uint64(1)) dump, err := snap.CARoots() - assert.Nil(err) - assert.Equal(roots, dump) + assert.Nil(t, err) + assert.Equal(t, roots, dump) // Restore the values into a new state store. func() { s := testStateStore(t) restore := s.Restore() for _, r := range dump { - assert.Nil(restore.CARoot(r)) + assert.Nil(t, restore.CARoot(r)) } restore.Commit() // Read the restored values back out and verify that they match. idx, actual, err := s.CARoots(nil) - assert.Nil(err) - assert.Equal(idx, uint64(2)) - assert.Equal(roots, actual) + assert.Nil(t, err) + assert.Equal(t, idx, uint64(2)) + assert.Equal(t, roots, actual) }() } func TestStore_CABuiltinProvider(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) { @@ -398,13 +390,13 @@ func TestStore_CABuiltinProvider(t *testing.T) { } ok, err := s.CASetProviderState(0, expected) - assert.NoError(err) - assert.True(ok) + assert.NoError(t, err) + assert.True(t, ok) idx, state, err := s.CAProviderState(expected.ID) - assert.NoError(err) - assert.Equal(idx, uint64(0)) - assert.Equal(expected, state) + assert.NoError(t, err) + assert.Equal(t, idx, uint64(0)) + assert.Equal(t, expected, state) } { @@ -415,13 +407,13 @@ func TestStore_CABuiltinProvider(t *testing.T) { } ok, err := s.CASetProviderState(1, expected) - assert.NoError(err) - assert.True(ok) + assert.NoError(t, err) + assert.True(t, ok) idx, state, err := s.CAProviderState(expected.ID) - assert.NoError(err) - assert.Equal(idx, uint64(1)) - assert.Equal(expected, state) + assert.NoError(t, err) + assert.Equal(t, idx, uint64(1)) + assert.Equal(t, expected, state) } { @@ -429,21 +421,20 @@ func TestStore_CABuiltinProvider(t *testing.T) { // numbers will initialize from the max index of the provider table. // That's why this first serial is 2 and not 1. sn, err := s.CAIncrementProviderSerialNumber(10) - assert.NoError(err) - assert.Equal(uint64(2), sn) + assert.NoError(t, err) + assert.Equal(t, uint64(2), sn) sn, err = s.CAIncrementProviderSerialNumber(10) - assert.NoError(err) - assert.Equal(uint64(3), sn) + assert.NoError(t, err) + assert.Equal(t, uint64(3), sn) sn, err = s.CAIncrementProviderSerialNumber(10) - assert.NoError(err) - assert.Equal(uint64(4), sn) + assert.NoError(t, err) + assert.Equal(t, uint64(4), sn) } } func TestStore_CABuiltinProvider_Snapshot_Restore(t *testing.T) { - assert := assert.New(t) s := testStateStore(t) // Create multiple state entries. @@ -462,8 +453,8 @@ func TestStore_CABuiltinProvider_Snapshot_Restore(t *testing.T) { for i, state := range before { ok, err := s.CASetProviderState(uint64(98+i), state) - assert.NoError(err) - assert.True(ok) + assert.NoError(t, err) + assert.True(t, ok) } // Take a snapshot. @@ -477,26 +468,26 @@ func TestStore_CABuiltinProvider_Snapshot_Restore(t *testing.T) { RootCert: "d", } ok, err := s.CASetProviderState(100, after) - assert.NoError(err) - assert.True(ok) + assert.NoError(t, err) + assert.True(t, ok) snapped, err := snap.CAProviderState() - assert.NoError(err) - assert.Equal(before, snapped) + assert.NoError(t, err) + assert.Equal(t, before, snapped) // Restore onto a new state store. s2 := testStateStore(t) restore := s2.Restore() for _, entry := range snapped { - assert.NoError(restore.CAProviderState(entry)) + assert.NoError(t, restore.CAProviderState(entry)) } restore.Commit() // Verify the restored values match those from before the snapshot. for _, state := range before { idx, res, err := s2.CAProviderState(state.ID) - assert.NoError(err) - assert.Equal(idx, uint64(99)) - assert.Equal(state, res) + assert.NoError(t, err) + assert.Equal(t, idx, uint64(99)) + assert.Equal(t, state, res) } } diff --git a/agent/consul/state/intention_test.go b/agent/consul/state/intention_test.go index f2a5f8786..fde26d1d9 100644 --- a/agent/consul/state/intention_test.go +++ b/agent/consul/state/intention_test.go @@ -46,14 +46,13 @@ func testBothIntentionFormats(t *testing.T, f func(t *testing.T, s *Store, legac func TestStore_IntentionGet_none(t *testing.T) { testBothIntentionFormats(t, func(t *testing.T, s *Store, legacy bool) { - assert := assert.New(t) // Querying with no results returns nil. ws := memdb.NewWatchSet() idx, _, res, err := s.IntentionGet(ws, testUUID()) - assert.Equal(uint64(1), idx) - assert.Nil(res) - assert.Nil(err) + assert.Equal(t, uint64(1), idx) + assert.Nil(t, res) + assert.Nil(t, err) }) } diff --git a/agent/consul/state/store_integration_test.go b/agent/consul/state/store_integration_test.go index 60574cb16..60709f5fd 100644 --- a/agent/consul/state/store_integration_test.go +++ b/agent/consul/state/store_integration_test.go @@ -18,7 +18,6 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { } t.Parallel() - require := require.New(t) s := testACLTokensStateStore(t) // Setup token and wait for good state @@ -37,14 +36,14 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { go publisher.Run(ctx) s.db.publisher = publisher sub, err := publisher.Subscribe(subscription) - require.NoError(err) + require.NoError(t, err) defer sub.Unsubscribe() eventCh := testRunSub(sub) // Stream should get EndOfSnapshot e := assertEvent(t, eventCh) - require.True(e.IsEndOfSnapshot()) + require.True(t, e.IsEndOfSnapshot()) // Update an unrelated token. token2 := &structs.ACLToken{ @@ -52,7 +51,7 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { SecretID: "72e81982-7a0f-491f-a60e-c9c802ac1402", } token2.SetHash(false) - require.NoError(s.ACLTokenSet(3, token2.Clone())) + require.NoError(t, s.ACLTokenSet(3, token2.Clone())) // Ensure there's no reset event. assertNoEvent(t, eventCh) @@ -64,11 +63,11 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { Description: "something else", } token3.SetHash(false) - require.NoError(s.ACLTokenSet(4, token3.Clone())) + require.NoError(t, s.ACLTokenSet(4, token3.Clone())) // Ensure the reset event was sent. err = assertErr(t, eventCh) - require.Equal(stream.ErrSubForceClosed, err) + require.Equal(t, stream.ErrSubForceClosed, err) // Register another subscription. subscription2 := &stream.SubscribeRequest{ @@ -77,27 +76,27 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { Token: token.SecretID, } sub2, err := publisher.Subscribe(subscription2) - require.NoError(err) + require.NoError(t, err) defer sub2.Unsubscribe() eventCh2 := testRunSub(sub2) // Expect initial EoS e = assertEvent(t, eventCh2) - require.True(e.IsEndOfSnapshot()) + require.True(t, e.IsEndOfSnapshot()) // Delete the unrelated token. - require.NoError(s.ACLTokenDeleteByAccessor(5, token2.AccessorID, nil)) + require.NoError(t, s.ACLTokenDeleteByAccessor(5, token2.AccessorID, nil)) // Ensure there's no reset event. assertNoEvent(t, eventCh2) // Delete the token used by the subscriber. - require.NoError(s.ACLTokenDeleteByAccessor(6, token.AccessorID, nil)) + require.NoError(t, s.ACLTokenDeleteByAccessor(6, token.AccessorID, nil)) // Ensure the reset event was sent. err = assertErr(t, eventCh2) - require.Equal(stream.ErrSubForceClosed, err) + require.Equal(t, stream.ErrSubForceClosed, err) } func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { @@ -106,7 +105,6 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { } t.Parallel() - require := require.New(t) s := testACLTokensStateStore(t) // Create token and wait for good state @@ -125,14 +123,14 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { go publisher.Run(ctx) s.db.publisher = publisher sub, err := publisher.Subscribe(subscription) - require.NoError(err) + require.NoError(t, err) defer sub.Unsubscribe() eventCh := testRunSub(sub) // Ignore the end of snapshot event e := assertEvent(t, eventCh) - require.True(e.IsEndOfSnapshot(), "event should be a EoS got %v", e) + require.True(t, e.IsEndOfSnapshot(), "event should be a EoS got %v", e) // Update an unrelated policy. policy2 := structs.ACLPolicy{ @@ -143,7 +141,7 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { Datacenters: []string{"dc1"}, } policy2.SetHash(false) - require.NoError(s.ACLPolicySet(3, &policy2)) + require.NoError(t, s.ACLPolicySet(3, &policy2)) // Ensure there's no reset event. assertNoEvent(t, eventCh) @@ -157,7 +155,7 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { Datacenters: []string{"dc1"}, } policy3.SetHash(false) - require.NoError(s.ACLPolicySet(4, &policy3)) + require.NoError(t, s.ACLPolicySet(4, &policy3)) // Ensure the reset event was sent. assertReset(t, eventCh, true) @@ -169,27 +167,27 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { Token: token.SecretID, } sub, err = publisher.Subscribe(subscription2) - require.NoError(err) + require.NoError(t, err) defer sub.Unsubscribe() eventCh = testRunSub(sub) // Ignore the end of snapshot event e = assertEvent(t, eventCh) - require.True(e.IsEndOfSnapshot(), "event should be a EoS got %v", e) + require.True(t, e.IsEndOfSnapshot(), "event should be a EoS got %v", e) // Delete the unrelated policy. - require.NoError(s.ACLPolicyDeleteByID(5, testPolicyID_C, nil)) + require.NoError(t, s.ACLPolicyDeleteByID(5, testPolicyID_C, nil)) // Ensure there's no reload event. assertNoEvent(t, eventCh) // Delete the policy used by the subscriber. - require.NoError(s.ACLPolicyDeleteByID(6, testPolicyID_A, nil)) + require.NoError(t, s.ACLPolicyDeleteByID(6, testPolicyID_A, nil)) // Ensure the reload event was sent. err = assertErr(t, eventCh) - require.Equal(stream.ErrSubForceClosed, err) + require.Equal(t, stream.ErrSubForceClosed, err) // Register another subscription. subscription3 := &stream.SubscribeRequest{ @@ -198,14 +196,14 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { Token: token.SecretID, } sub, err = publisher.Subscribe(subscription3) - require.NoError(err) + require.NoError(t, err) defer sub.Unsubscribe() eventCh = testRunSub(sub) // Ignore the end of snapshot event e = assertEvent(t, eventCh) - require.True(e.IsEndOfSnapshot(), "event should be a EoS got %v", e) + require.True(t, e.IsEndOfSnapshot(), "event should be a EoS got %v", e) // Now update the policy used in role B, but not directly in the token. policy4 := structs.ACLPolicy{ @@ -216,7 +214,7 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { Datacenters: []string{"dc1"}, } policy4.SetHash(false) - require.NoError(s.ACLPolicySet(7, &policy4)) + require.NoError(t, s.ACLPolicySet(7, &policy4)) // Ensure the reset event was sent. assertReset(t, eventCh, true) @@ -228,7 +226,6 @@ func TestStore_IntegrationWithEventPublisher_ACLRoleUpdate(t *testing.T) { } t.Parallel() - require := require.New(t) s := testACLTokensStateStore(t) // Create token and wait for good state @@ -247,13 +244,13 @@ func TestStore_IntegrationWithEventPublisher_ACLRoleUpdate(t *testing.T) { go publisher.Run(ctx) s.db.publisher = publisher sub, err := publisher.Subscribe(subscription) - require.NoError(err) + require.NoError(t, err) eventCh := testRunSub(sub) // Stream should get EndOfSnapshot e := assertEvent(t, eventCh) - require.True(e.IsEndOfSnapshot()) + require.True(t, e.IsEndOfSnapshot()) // Update an unrelated role (the token has role testRoleID_B). role := structs.ACLRole{ @@ -262,7 +259,7 @@ func TestStore_IntegrationWithEventPublisher_ACLRoleUpdate(t *testing.T) { Description: "test", } role.SetHash(false) - require.NoError(s.ACLRoleSet(3, &role)) + require.NoError(t, s.ACLRoleSet(3, &role)) // Ensure there's no reload event. assertNoEvent(t, eventCh) @@ -274,7 +271,7 @@ func TestStore_IntegrationWithEventPublisher_ACLRoleUpdate(t *testing.T) { Description: "changed", } role2.SetHash(false) - require.NoError(s.ACLRoleSet(4, &role2)) + require.NoError(t, s.ACLRoleSet(4, &role2)) // Ensure the reload event was sent. assertReset(t, eventCh, false) @@ -286,22 +283,22 @@ func TestStore_IntegrationWithEventPublisher_ACLRoleUpdate(t *testing.T) { Token: token.SecretID, } sub, err = publisher.Subscribe(subscription2) - require.NoError(err) + require.NoError(t, err) eventCh = testRunSub(sub) // Ignore the end of snapshot event e = assertEvent(t, eventCh) - require.True(e.IsEndOfSnapshot(), "event should be a EoS got %v", e) + require.True(t, e.IsEndOfSnapshot(), "event should be a EoS got %v", e) // Delete the unrelated policy. - require.NoError(s.ACLRoleDeleteByID(5, testRoleID_A, nil)) + require.NoError(t, s.ACLRoleDeleteByID(5, testRoleID_A, nil)) // Ensure there's no reload event. assertNoEvent(t, eventCh) // Delete the policy used by the subscriber. - require.NoError(s.ACLRoleDeleteByID(6, testRoleID_B, nil)) + require.NoError(t, s.ACLRoleDeleteByID(6, testRoleID_B, nil)) // Ensure the reload event was sent. assertReset(t, eventCh, false) diff --git a/agent/consul/txn_endpoint_test.go b/agent/consul/txn_endpoint_test.go index 9619dc881..106f8f679 100644 --- a/agent/consul/txn_endpoint_test.go +++ b/agent/consul/txn_endpoint_test.go @@ -314,8 +314,6 @@ func TestTxn_Apply_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -333,16 +331,16 @@ func TestTxn_Apply_ACLDeny(t *testing.T) { Key: "nope", Value: []byte("hello"), } - require.NoError(state.KVSSet(1, d)) + require.NoError(t, state.KVSSet(1, d)) node := &structs.Node{ ID: types.NodeID(testNodeID), Node: "nope", } - require.NoError(state.EnsureNode(2, node)) + require.NoError(t, state.EnsureNode(2, node)) svc := structs.NodeService{ID: "nope", Service: "nope", Address: "127.0.0.1"} - require.NoError(state.EnsureService(3, "nope", &svc)) + require.NoError(t, state.EnsureService(3, "nope", &svc)) check := structs.HealthCheck{Node: "nope", CheckID: types.CheckID("nope")} state.EnsureCheck(4, &check) @@ -606,7 +604,7 @@ func TestTxn_Apply_ACLDeny(t *testing.T) { } } - require.Equal(expected, out) + require.Equal(t, expected, out) } func TestTxn_Apply_LockDelay(t *testing.T) { @@ -707,8 +705,6 @@ func TestTxn_Read(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServer(t) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -732,7 +728,7 @@ func TestTxn_Read(t *testing.T) { ID: types.NodeID(testNodeID), Node: "foo", } - require.NoError(state.EnsureNode(2, node)) + require.NoError(t, state.EnsureNode(2, node)) svc := structs.NodeService{ ID: "svc-foo", @@ -740,7 +736,7 @@ func TestTxn_Read(t *testing.T) { Address: "127.0.0.1", EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - require.NoError(state.EnsureService(3, "foo", &svc)) + require.NoError(t, state.EnsureService(3, "foo", &svc)) check := structs.HealthCheck{ Node: "foo", @@ -823,7 +819,7 @@ func TestTxn_Read(t *testing.T) { KnownLeader: true, }, } - require.Equal(expected, out) + require.Equal(t, expected, out) } func TestTxn_Read_ACLDeny(t *testing.T) { @@ -833,8 +829,6 @@ func TestTxn_Read_ACLDeny(t *testing.T) { t.Parallel() - require := require.New(t) - dir1, s1 := testServerWithConfig(t, func(c *Config) { c.PrimaryDatacenter = "dc1" c.ACLsEnabled = true @@ -863,10 +857,10 @@ func TestTxn_Read_ACLDeny(t *testing.T) { ID: types.NodeID(testNodeID), Node: "nope", } - require.NoError(state.EnsureNode(2, node)) + require.NoError(t, state.EnsureNode(2, node)) svc := structs.NodeService{ID: "nope", Service: "nope", Address: "127.0.0.1"} - require.NoError(state.EnsureService(3, "nope", &svc)) + require.NoError(t, state.EnsureService(3, "nope", &svc)) check := structs.HealthCheck{Node: "nope", CheckID: types.CheckID("nope")} state.EnsureCheck(4, &check) @@ -899,10 +893,10 @@ func TestTxn_Read_ACLDeny(t *testing.T) { var out structs.TxnReadResponse err := msgpackrpc.CallWithCodec(codec, "Txn.Read", &arg, &out) - require.NoError(err) - require.Empty(out.Results) - require.Empty(out.Errors) - require.True(out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") + require.NoError(t, err) + require.Empty(t, out.Results) + require.Empty(t, out.Errors) + require.True(t, out.QueryMeta.ResultsFilteredByACLs, "ResultsFilteredByACLs should be true") }) t.Run("complex operations (return permission denied errors)", func(t *testing.T) { @@ -931,11 +925,11 @@ func TestTxn_Read_ACLDeny(t *testing.T) { var out structs.TxnReadResponse err := msgpackrpc.CallWithCodec(codec, "Txn.Read", &arg, &out) - require.NoError(err) - require.Equal(structs.TxnErrors{ + require.NoError(t, err) + require.Equal(t, structs.TxnErrors{ {OpIndex: 0, What: acl.ErrPermissionDenied.Error()}, {OpIndex: 1, What: acl.ErrPermissionDenied.Error()}, }, out.Errors) - require.Empty(out.Results) + require.Empty(t, out.Results) }) } diff --git a/agent/debug/host_test.go b/agent/debug/host_test.go index 0a26094e5..1678fcda8 100644 --- a/agent/debug/host_test.go +++ b/agent/debug/host_test.go @@ -7,14 +7,13 @@ import ( ) func TestCollectHostInfo(t *testing.T) { - assert := assert.New(t) host := CollectHostInfo() - assert.Nil(host.Errors) + assert.Nil(t, host.Errors) - assert.NotNil(host.CollectionTime) - assert.NotNil(host.Host) - assert.NotNil(host.Disk) - assert.NotNil(host.Memory) + assert.NotNil(t, host.CollectionTime) + assert.NotNil(t, host.Host) + assert.NotNil(t, host.Disk) + assert.NotNil(t, host.Memory) } diff --git a/agent/health_endpoint_test.go b/agent/health_endpoint_test.go index 075849eb8..5bd5444ed 100644 --- a/agent/health_endpoint_test.go +++ b/agent/health_endpoint_test.go @@ -611,9 +611,6 @@ func TestHealthServiceNodes(t *testing.T) { defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") - assert := assert.New(t) - require := require.New(t) - req, _ := http.NewRequest("GET", "/v1/health/service/consul?dc=dc1", nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthServiceNodes(resp, req) @@ -680,12 +677,12 @@ func TestHealthServiceNodes(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/health/service/test?cached", nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthServiceNodes(resp, req) - require.NoError(err) + require.NoError(t, err) nodes := obj.(structs.CheckServiceNodes) - assert.Len(nodes, 1) + assert.Len(t, nodes, 1) // Should be a cache miss - assert.Equal("MISS", resp.Header().Get("X-Cache")) + assert.Equal(t, "MISS", resp.Header().Get("X-Cache")) } { @@ -693,12 +690,12 @@ func TestHealthServiceNodes(t *testing.T) { req, _ := http.NewRequest("GET", "/v1/health/service/test?cached", nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthServiceNodes(resp, req) - require.NoError(err) + require.NoError(t, err) nodes := obj.(structs.CheckServiceNodes) - assert.Len(nodes, 1) + assert.Len(t, nodes, 1) // Should be a cache HIT now! - assert.Equal("HIT", resp.Header().Get("X-Cache")) + assert.Equal(t, "HIT", resp.Header().Get("X-Cache")) } // Ensure background refresh works @@ -707,7 +704,7 @@ func TestHealthServiceNodes(t *testing.T) { args2 := args args2.Node = "baz" args2.Address = "127.0.0.2" - require.NoError(a.RPC("Catalog.Register", args, &out)) + require.NoError(t, a.RPC("Catalog.Register", args, &out)) retry.Run(t, func(r *retry.R) { // List it again @@ -1414,27 +1411,26 @@ func TestHealthConnectServiceNodes(t *testing.T) { t.Parallel() - assert := assert.New(t) a := NewTestAgent(t, "") defer a.Shutdown() // Register args := structs.TestRegisterRequestProxy(t) var out struct{} - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) // Request req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/health/connect/%s?dc=dc1", args.Service.Proxy.DestinationServiceName), nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthConnectServiceNodes(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) // Should be a non-nil empty list for checks nodes := obj.(structs.CheckServiceNodes) - assert.Len(nodes, 1) - assert.Len(nodes[0].Checks, 0) + assert.Len(t, nodes, 1) + assert.Len(t, nodes[0].Checks, 0) } func TestHealthIngressServiceNodes(t *testing.T) { @@ -1616,58 +1612,54 @@ func TestHealthConnectServiceNodes_PassingFilter(t *testing.T) { assert.Nil(t, a.RPC("Catalog.Register", args, &out)) t.Run("bc_no_query_value", func(t *testing.T) { - assert := assert.New(t) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/health/connect/%s?passing", args.Service.Proxy.DestinationServiceName), nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthConnectServiceNodes(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) // Should be 0 health check for consul nodes := obj.(structs.CheckServiceNodes) - assert.Len(nodes, 0) + assert.Len(t, nodes, 0) }) t.Run("passing_true", func(t *testing.T) { - assert := assert.New(t) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/health/connect/%s?passing=true", args.Service.Proxy.DestinationServiceName), nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthConnectServiceNodes(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) // Should be 0 health check for consul nodes := obj.(structs.CheckServiceNodes) - assert.Len(nodes, 0) + assert.Len(t, nodes, 0) }) t.Run("passing_false", func(t *testing.T) { - assert := assert.New(t) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/health/connect/%s?passing=false", args.Service.Proxy.DestinationServiceName), nil) resp := httptest.NewRecorder() obj, err := a.srv.HealthConnectServiceNodes(resp, req) - assert.Nil(err) + assert.Nil(t, err) assertIndex(t, resp) // Should be 1 nodes := obj.(structs.CheckServiceNodes) - assert.Len(nodes, 1) + assert.Len(t, nodes, 1) }) t.Run("passing_bad", func(t *testing.T) { - assert := assert.New(t) req, _ := http.NewRequest("GET", fmt.Sprintf( "/v1/health/connect/%s?passing=nope-nope", args.Service.Proxy.DestinationServiceName), nil) resp := httptest.NewRecorder() a.srv.HealthConnectServiceNodes(resp, req) - assert.Equal(400, resp.Code) + assert.Equal(t, 400, resp.Code) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(err) - assert.True(bytes.Contains(body, []byte("Invalid value for ?passing"))) + assert.Nil(t, err) + assert.True(t, bytes.Contains(body, []byte("Invalid value for ?passing"))) }) } diff --git a/agent/http_test.go b/agent/http_test.go index b6ead02f0..ebeb18b73 100644 --- a/agent/http_test.go +++ b/agent/http_test.go @@ -907,7 +907,6 @@ func TestParseCacheControl(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) r, _ := http.NewRequest("GET", "/foo/bar", nil) if tt.headerVal != "" { @@ -919,13 +918,13 @@ func TestParseCacheControl(t *testing.T) { failed := parseCacheControl(rr, r, &got) if tt.wantErr { - require.True(failed) - require.Equal(http.StatusBadRequest, rr.Code) + require.True(t, failed) + require.Equal(t, http.StatusBadRequest, rr.Code) } else { - require.False(failed) + require.False(t, failed) } - require.Equal(tt.want, got) + require.Equal(t, tt.want, got) }) } } @@ -990,7 +989,6 @@ func TestHTTPServer_PProfHandlers_ACLs(t *testing.T) { } t.Parallel() - assert := assert.New(t) dc1 := "dc1" a := NewTestAgent(t, ` @@ -1062,7 +1060,7 @@ func TestHTTPServer_PProfHandlers_ACLs(t *testing.T) { req, _ := http.NewRequest("GET", fmt.Sprintf("%s?token=%s", c.endpoint, c.token), nil) resp := httptest.NewRecorder() a.srv.handler(true).ServeHTTP(resp, req) - assert.Equal(c.code, resp.Code) + assert.Equal(t, c.code, resp.Code) }) } } diff --git a/agent/local/state_test.go b/agent/local/state_test.go index 0ec473505..036e156fc 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -261,7 +261,6 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, "") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -289,7 +288,7 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { } a.State.AddService(srv1, "") args.Service = srv1 - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) // Exists both, different (update) srv2 := &structs.NodeService{ @@ -310,7 +309,7 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { *srv2_mod = *srv2 srv2_mod.Port = 9000 args.Service = srv2_mod - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) // Exists local (create) srv3 := &structs.NodeService{ @@ -341,7 +340,7 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } args.Service = srv4 - assert.Nil(a.RPC("Catalog.Register", args, &out)) + assert.Nil(t, a.RPC("Catalog.Register", args, &out)) // Exists local, in sync, remote missing (create) srv5 := &structs.NodeService{ @@ -361,28 +360,28 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { InSync: true, }) - assert.Nil(a.State.SyncFull()) + assert.Nil(t, a.State.SyncFull()) var services structs.IndexedNodeServices req := structs.NodeSpecificRequest{ Datacenter: "dc1", Node: a.Config.NodeName, } - assert.Nil(a.RPC("Catalog.NodeServices", &req, &services)) + assert.Nil(t, a.RPC("Catalog.NodeServices", &req, &services)) // We should have 5 services (consul included) - assert.Len(services.NodeServices.Services, 5) + assert.Len(t, services.NodeServices.Services, 5) // Check that virtual IPs have been set vips := make(map[string]struct{}) for _, serv := range services.NodeServices.Services { if serv.TaggedAddresses != nil { serviceVIP := serv.TaggedAddresses[structs.TaggedAddressVirtualIP].Address - assert.NotEmpty(serviceVIP) + assert.NotEmpty(t, serviceVIP) vips[serviceVIP] = struct{}{} } } - assert.Len(vips, 4) + assert.Len(t, vips, 4) // All the services should match // Retry to mitigate data races between local and remote state @@ -407,26 +406,26 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { } }) - assert.NoError(servicesInSync(a.State, 4, structs.DefaultEnterpriseMetaInDefaultPartition())) + assert.NoError(t, servicesInSync(a.State, 4, structs.DefaultEnterpriseMetaInDefaultPartition())) // Remove one of the services a.State.RemoveService(structs.NewServiceID("cache-proxy", nil)) - assert.Nil(a.State.SyncFull()) - assert.Nil(a.RPC("Catalog.NodeServices", &req, &services)) + assert.Nil(t, a.State.SyncFull()) + assert.Nil(t, a.RPC("Catalog.NodeServices", &req, &services)) // We should have 4 services (consul included) - assert.Len(services.NodeServices.Services, 4) + assert.Len(t, services.NodeServices.Services, 4) // All the services should match for id, serv := range services.NodeServices.Services { serv.CreateIndex, serv.ModifyIndex = 0, 0 switch id { case "mysql-proxy": - assert.Equal(srv1, serv) + assert.Equal(t, srv1, serv) case "redis-proxy": - assert.Equal(srv2, serv) + assert.Equal(t, srv2, serv) case "web-proxy": - assert.Equal(srv3, serv) + assert.Equal(t, srv3, serv) case structs.ConsulServiceID: // ignore default: @@ -434,7 +433,7 @@ func TestAgentAntiEntropy_Services_ConnectProxy(t *testing.T) { } } - assert.Nil(servicesInSync(a.State, 3, structs.DefaultEnterpriseMetaInDefaultPartition())) + assert.Nil(t, servicesInSync(a.State, 3, structs.DefaultEnterpriseMetaInDefaultPartition())) } func TestAgent_ServiceWatchCh(t *testing.T) { @@ -447,8 +446,6 @@ func TestAgent_ServiceWatchCh(t *testing.T) { defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") - require := require.New(t) - // register a local service srv1 := &structs.NodeService{ ID: "svc_id1", @@ -456,11 +453,11 @@ func TestAgent_ServiceWatchCh(t *testing.T) { Tags: []string{"tag1"}, Port: 6100, } - require.NoError(a.State.AddService(srv1, "")) + require.NoError(t, a.State.AddService(srv1, "")) verifyState := func(ss *local.ServiceState) { - require.NotNil(ss) - require.NotNil(ss.WatchCh) + require.NotNil(t, ss) + require.NotNil(t, ss.WatchCh) // Sanity check WatchCh blocks select { @@ -478,7 +475,7 @@ func TestAgent_ServiceWatchCh(t *testing.T) { go func() { srv2 := srv1 srv2.Port = 6200 - require.NoError(a.State.AddService(srv2, "")) + require.NoError(t, a.State.AddService(srv2, "")) }() // We should observe WatchCh close @@ -513,7 +510,7 @@ func TestAgent_ServiceWatchCh(t *testing.T) { verifyState(ss) go func() { - require.NoError(a.State.RemoveService(srv1.CompoundServiceID())) + require.NoError(t, a.State.RemoveService(srv1.CompoundServiceID())) }() // We should observe WatchCh close @@ -1966,20 +1963,19 @@ func TestAgent_AddCheckFailure(t *testing.T) { func TestAgent_AliasCheck(t *testing.T) { t.Parallel() - require := require.New(t) cfg := loadRuntimeConfig(t, `bind_addr = "127.0.0.1" data_dir = "dummy" node_name = "dummy"`) l := local.NewState(agent.LocalConfig(cfg), nil, new(token.Store)) l.TriggerSyncChanges = func() {} // Add checks - require.NoError(l.AddService(&structs.NodeService{Service: "s1"}, "")) - require.NoError(l.AddService(&structs.NodeService{Service: "s2"}, "")) - require.NoError(l.AddCheck(&structs.HealthCheck{CheckID: types.CheckID("c1"), ServiceID: "s1"}, "")) - require.NoError(l.AddCheck(&structs.HealthCheck{CheckID: types.CheckID("c2"), ServiceID: "s2"}, "")) + require.NoError(t, l.AddService(&structs.NodeService{Service: "s1"}, "")) + require.NoError(t, l.AddService(&structs.NodeService{Service: "s2"}, "")) + require.NoError(t, l.AddCheck(&structs.HealthCheck{CheckID: types.CheckID("c1"), ServiceID: "s1"}, "")) + require.NoError(t, l.AddCheck(&structs.HealthCheck{CheckID: types.CheckID("c2"), ServiceID: "s2"}, "")) // Add an alias notifyCh := make(chan struct{}, 1) - require.NoError(l.AddAliasCheck(structs.NewCheckID(types.CheckID("a1"), nil), structs.NewServiceID("s1", nil), notifyCh)) + require.NoError(t, l.AddAliasCheck(structs.NewCheckID(types.CheckID("a1"), nil), structs.NewServiceID("s1", nil), notifyCh)) // Update and verify we get notified l.UpdateCheck(structs.NewCheckID(types.CheckID("c1"), nil), api.HealthCritical, "") @@ -2017,17 +2013,16 @@ func TestAgent_AliasCheck(t *testing.T) { func TestAgent_AliasCheck_ServiceNotification(t *testing.T) { t.Parallel() - require := require.New(t) cfg := loadRuntimeConfig(t, `bind_addr = "127.0.0.1" data_dir = "dummy" node_name = "dummy"`) l := local.NewState(agent.LocalConfig(cfg), nil, new(token.Store)) l.TriggerSyncChanges = func() {} // Add an alias check for service s1 notifyCh := make(chan struct{}, 1) - require.NoError(l.AddAliasCheck(structs.NewCheckID(types.CheckID("a1"), nil), structs.NewServiceID("s1", nil), notifyCh)) + require.NoError(t, l.AddAliasCheck(structs.NewCheckID(types.CheckID("a1"), nil), structs.NewServiceID("s1", nil), notifyCh)) // Add aliased service, s1, and verify we get notified - require.NoError(l.AddService(&structs.NodeService{Service: "s1"}, "")) + require.NoError(t, l.AddService(&structs.NodeService{Service: "s1"}, "")) select { case <-notifyCh: default: @@ -2035,7 +2030,7 @@ func TestAgent_AliasCheck_ServiceNotification(t *testing.T) { } // Re-adding same service should not lead to a notification - require.NoError(l.AddService(&structs.NodeService{Service: "s1"}, "")) + require.NoError(t, l.AddService(&structs.NodeService{Service: "s1"}, "")) select { case <-notifyCh: t.Fatal("notify received") @@ -2043,7 +2038,7 @@ func TestAgent_AliasCheck_ServiceNotification(t *testing.T) { } // Add different service and verify we do not get notified - require.NoError(l.AddService(&structs.NodeService{Service: "s2"}, "")) + require.NoError(t, l.AddService(&structs.NodeService{Service: "s2"}, "")) select { case <-notifyCh: t.Fatal("notify received") @@ -2051,7 +2046,7 @@ func TestAgent_AliasCheck_ServiceNotification(t *testing.T) { } // Delete service and verify we get notified - require.NoError(l.RemoveService(structs.NewServiceID("s1", nil))) + require.NoError(t, l.RemoveService(structs.NewServiceID("s1", nil))) select { case <-notifyCh: default: @@ -2059,7 +2054,7 @@ func TestAgent_AliasCheck_ServiceNotification(t *testing.T) { } // Delete different service and verify we do not get notified - require.NoError(l.RemoveService(structs.NewServiceID("s2", nil))) + require.NoError(t, l.RemoveService(structs.NewServiceID("s2", nil))) select { case <-notifyCh: t.Fatal("notify received") @@ -2144,28 +2139,26 @@ func TestState_RemoveServiceErrorMessages(t *testing.T) { // Stub state syncing state.TriggerSyncChanges = func() {} - require := require.New(t) - // Add 1 service err := state.AddService(&structs.NodeService{ ID: "web-id", Service: "web-name", }, "") - require.NoError(err) + require.NoError(t, err) // Attempt to remove service that doesn't exist sid := structs.NewServiceID("db", nil) err = state.RemoveService(sid) - require.Contains(err.Error(), fmt.Sprintf(`Unknown service ID %q`, sid)) + require.Contains(t, err.Error(), fmt.Sprintf(`Unknown service ID %q`, sid)) // Attempt to remove service by name (which isn't valid) sid2 := structs.NewServiceID("web-name", nil) err = state.RemoveService(sid2) - require.Contains(err.Error(), fmt.Sprintf(`Unknown service ID %q`, sid2)) + require.Contains(t, err.Error(), fmt.Sprintf(`Unknown service ID %q`, sid2)) // Attempt to remove service by id (valid) err = state.RemoveService(structs.NewServiceID("web-id", nil)) - require.NoError(err) + require.NoError(t, err) } func TestState_Notify(t *testing.T) { @@ -2180,24 +2173,21 @@ func TestState_Notify(t *testing.T) { // Stub state syncing state.TriggerSyncChanges = func() {} - require := require.New(t) - assert := assert.New(t) - // Register a notifier notifyCh := make(chan struct{}, 1) state.Notify(notifyCh) defer state.StopNotify(notifyCh) - assert.Empty(notifyCh) + assert.Empty(t, notifyCh) drainCh(notifyCh) // Add a service err := state.AddService(&structs.NodeService{ Service: "web", }, "fake-token-web") - require.NoError(err) + require.NoError(t, err) // Should have a notification - assert.NotEmpty(notifyCh) + assert.NotEmpty(t, notifyCh) drainCh(notifyCh) // Re-Add same service @@ -2205,17 +2195,17 @@ func TestState_Notify(t *testing.T) { Service: "web", Port: 4444, }, "fake-token-web") - require.NoError(err) + require.NoError(t, err) // Should have a notification - assert.NotEmpty(notifyCh) + assert.NotEmpty(t, notifyCh) drainCh(notifyCh) // Remove service - require.NoError(state.RemoveService(structs.NewServiceID("web", nil))) + require.NoError(t, state.RemoveService(structs.NewServiceID("web", nil))) // Should have a notification - assert.NotEmpty(notifyCh) + assert.NotEmpty(t, notifyCh) drainCh(notifyCh) // Stopping should... stop @@ -2225,10 +2215,10 @@ func TestState_Notify(t *testing.T) { err = state.AddService(&structs.NodeService{ Service: "web", }, "fake-token-web") - require.NoError(err) + require.NoError(t, err) // Should NOT have a notification - assert.Empty(notifyCh) + assert.Empty(t, notifyCh) drainCh(notifyCh) } diff --git a/agent/prepared_query_endpoint_test.go b/agent/prepared_query_endpoint_test.go index 19e6935bc..79658f8c1 100644 --- a/agent/prepared_query_endpoint_test.go +++ b/agent/prepared_query_endpoint_test.go @@ -663,15 +663,14 @@ func TestPreparedQuery_ExecuteCached(t *testing.T) { resp := httptest.NewRecorder() obj, err := a.srv.PreparedQuerySpecific(resp, req) - require := require.New(t) - require.NoError(err) - require.Equal(200, resp.Code) + require.NoError(t, err) + require.Equal(t, 200, resp.Code) r, ok := obj.(structs.PreparedQueryExecuteResponse) - require.True(ok) - require.Equal(expectFailovers, r.Failovers) + require.True(t, ok) + require.Equal(t, expectFailovers, r.Failovers) - require.Equal(expectCache, resp.Header().Get("X-Cache")) + require.Equal(t, expectCache, resp.Header().Get("X-Cache")) } // Should be a miss at first @@ -770,22 +769,21 @@ func TestPreparedQuery_Explain(t *testing.T) { t.Run("", func(t *testing.T) { a := NewTestAgent(t, "") defer a.Shutdown() - require := require.New(t) m := MockPreparedQuery{ executeFn: func(args *structs.PreparedQueryExecuteRequest, reply *structs.PreparedQueryExecuteResponse) error { - require.True(args.Connect) + require.True(t, args.Connect) return nil }, } - require.NoError(a.registerEndpoint("PreparedQuery", &m)) + require.NoError(t, a.registerEndpoint("PreparedQuery", &m)) body := bytes.NewBuffer(nil) req, _ := http.NewRequest("GET", "/v1/query/my-id/execute?connect=true", body) resp := httptest.NewRecorder() _, err := a.srv.PreparedQuerySpecific(resp, req) - require.NoError(err) - require.Equal(200, resp.Code) + require.NoError(t, err) + require.Equal(t, 200, resp.Code) }) } diff --git a/agent/proxycfg/manager_test.go b/agent/proxycfg/manager_test.go index 9b7fe0060..8ee2a62c3 100644 --- a/agent/proxycfg/manager_test.go +++ b/agent/proxycfg/manager_test.go @@ -354,7 +354,6 @@ func testManager_BasicLifecycle( ) { c := TestCacheWithTypes(t, types) - require := require.New(t) logger := testutil.Logger(t) state := local.NewState(agentConfig, logger, &token.Store{}) source := &structs.QuerySource{Datacenter: "dc1"} @@ -370,12 +369,12 @@ func testManager_BasicLifecycle( Source: source, Logger: logger, }) - require.NoError(err) + require.NoError(t, err) // And run it go func() { err := m.Run() - require.NoError(err) + require.NoError(t, err) }() // BEFORE we register, we should be able to get a watch channel @@ -385,19 +384,19 @@ func testManager_BasicLifecycle( // And it should block with nothing sent on it yet assertWatchChanBlocks(t, wCh) - require.NoError(state.AddService(webProxy, "my-token")) + require.NoError(t, state.AddService(webProxy, "my-token")) // We should see the initial config delivered but not until after the // coalesce timeout start := time.Now() assertWatchChanRecvs(t, wCh, expectSnap) - require.True(time.Since(start) >= coalesceTimeout) + require.True(t, time.Since(start) >= coalesceTimeout) assertLastReqArgs(t, types, "my-token", source) // Update NodeConfig webProxy.Port = 7777 - require.NoError(state.AddService(webProxy, "my-token")) + require.NoError(t, state.AddService(webProxy, "my-token")) expectSnap.Port = 7777 assertWatchChanRecvs(t, wCh, expectSnap) @@ -410,7 +409,7 @@ func testManager_BasicLifecycle( assertWatchChanRecvs(t, wCh2, expectSnap) // Change token - require.NoError(state.AddService(webProxy, "other-token")) + require.NoError(t, state.AddService(webProxy, "other-token")) assertWatchChanRecvs(t, wCh, expectSnap) assertWatchChanRecvs(t, wCh2, expectSnap) @@ -445,7 +444,7 @@ func testManager_BasicLifecycle( // Re-add the proxy with another new port webProxy.Port = 3333 - require.NoError(state.AddService(webProxy, "other-token")) + require.NoError(t, state.AddService(webProxy, "other-token")) // Same watch chan should be notified again expectSnap.Port = 3333 @@ -460,13 +459,13 @@ func testManager_BasicLifecycle( // We specifically don't remove the proxy or cancel the second watcher to // ensure both are cleaned up by close. - require.NoError(m.Close()) + require.NoError(t, m.Close()) // Sanity check the state is clean m.mu.Lock() defer m.mu.Unlock() - require.Len(m.proxies, 0) - require.Len(m.watchers, 0) + require.Len(t, m.proxies, 0) + require.Len(t, m.watchers, 0) } func assertWatchChanBlocks(t *testing.T, ch <-chan *ConfigSnapshot) { @@ -505,10 +504,9 @@ func TestManager_deliverLatest(t *testing.T) { }, Logger: logger, } - require := require.New(t) m, err := NewManager(cfg) - require.NoError(err) + require.NoError(t, err) snap1 := &ConfigSnapshot{ ProxyID: structs.NewServiceID("test-proxy", nil), @@ -526,14 +524,14 @@ func TestManager_deliverLatest(t *testing.T) { m.deliverLatest(snap1, ch1) // Check it was delivered - require.Equal(snap1, <-ch1) + require.Equal(t, snap1, <-ch1) // Now send both without reading simulating a slow client m.deliverLatest(snap1, ch1) m.deliverLatest(snap2, ch1) // Check we got the _second_ one - require.Equal(snap2, <-ch1) + require.Equal(t, snap2, <-ch1) // Same again for 5-buffered chan ch5 := make(chan *ConfigSnapshot, 5) @@ -542,7 +540,7 @@ func TestManager_deliverLatest(t *testing.T) { m.deliverLatest(snap1, ch5) // Check it was delivered - require.Equal(snap1, <-ch5) + require.Equal(t, snap1, <-ch5) // Now send enough to fill the chan simulating a slow client for i := 0; i < 5; i++ { @@ -551,7 +549,7 @@ func TestManager_deliverLatest(t *testing.T) { m.deliverLatest(snap2, ch5) // Check we got the _second_ one - require.Equal(snap2, <-ch5) + require.Equal(t, snap2, <-ch5) } func testGenCacheKey(req cache.Request) string { diff --git a/agent/proxycfg/state_test.go b/agent/proxycfg/state_test.go index e43fc6481..2ef27310f 100644 --- a/agent/proxycfg/state_test.go +++ b/agent/proxycfg/state_test.go @@ -115,11 +115,10 @@ func TestStateChanged(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) state, err := newState(tt.ns, tt.token, stateConfig{logger: hclog.New(nil)}) - require.NoError(err) + require.NoError(t, err) otherNS, otherToken := tt.mutate(*tt.ns, tt.token) - require.Equal(tt.want, state.Changed(otherNS, otherToken)) + require.Equal(t, tt.want, state.Changed(otherNS, otherToken)) }) } } diff --git a/agent/service_manager_test.go b/agent/service_manager_test.go index e0d214b86..b21597773 100644 --- a/agent/service_manager_test.go +++ b/agent/service_manager_test.go @@ -23,8 +23,6 @@ func TestServiceManager_RegisterService(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - a := NewTestAgent(t, "") defer a.Shutdown() @@ -51,12 +49,12 @@ func TestServiceManager_RegisterService(t *testing.T) { Port: 8000, EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - require.NoError(a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) // Verify both the service and sidecar. redisService := a.State.Service(structs.NewServiceID("redis", nil)) - require.NotNil(redisService) - require.Equal(&structs.NodeService{ + require.NotNil(t, redisService) + require.Equal(t, &structs.NodeService{ ID: "redis", Service: "redis", Port: 8000, @@ -74,8 +72,6 @@ func TestServiceManager_RegisterSidecar(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - a := NewTestAgent(t, "") defer a.Shutdown() @@ -124,12 +120,12 @@ func TestServiceManager_RegisterSidecar(t *testing.T) { }, EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - require.NoError(a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) // Verify sidecar got global config loaded sidecarService := a.State.Service(structs.NewServiceID("web-sidecar-proxy", nil)) - require.NotNil(sidecarService) - require.Equal(&structs.NodeService{ + require.NotNil(t, sidecarService) + require.Equal(t, &structs.NodeService{ Kind: structs.ServiceKindConnectProxy, ID: "web-sidecar-proxy", Service: "web-sidecar-proxy", @@ -169,8 +165,6 @@ func TestServiceManager_RegisterMeshGateway(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - a := NewTestAgent(t, "") defer a.Shutdown() @@ -199,12 +193,12 @@ func TestServiceManager_RegisterMeshGateway(t *testing.T) { EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - require.NoError(a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) // Verify gateway got global config loaded gateway := a.State.Service(structs.NewServiceID("mesh-gateway", nil)) - require.NotNil(gateway) - require.Equal(&structs.NodeService{ + require.NotNil(t, gateway) + require.Equal(t, &structs.NodeService{ Kind: structs.ServiceKindMeshGateway, ID: "mesh-gateway", Service: "mesh-gateway", @@ -229,8 +223,6 @@ func TestServiceManager_RegisterTerminatingGateway(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - a := NewTestAgent(t, "") defer a.Shutdown() @@ -259,12 +251,12 @@ func TestServiceManager_RegisterTerminatingGateway(t *testing.T) { EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - require.NoError(a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) // Verify gateway got global config loaded gateway := a.State.Service(structs.NewServiceID("terminating-gateway", nil)) - require.NotNil(gateway) - require.Equal(&structs.NodeService{ + require.NotNil(t, gateway) + require.Equal(t, &structs.NodeService{ Kind: structs.ServiceKindTerminatingGateway, ID: "terminating-gateway", Service: "terminating-gateway", @@ -293,8 +285,6 @@ func TestServiceManager_PersistService_API(t *testing.T) { // TestAgent_PurgeService. t.Parallel() - require := require.New(t) - // Launch a server to manage the config entries. serverAgent := NewTestAgent(t, "") defer serverAgent.Shutdown() @@ -331,7 +321,7 @@ func TestServiceManager_PersistService_API(t *testing.T) { _, err := a.JoinLAN([]string{ fmt.Sprintf("127.0.0.1:%d", serverAgent.Config.SerfPortLAN), }, nil) - require.NoError(err) + require.NoError(t, err) testrpc.WaitForLeader(t, a.RPC, "dc1") @@ -401,7 +391,7 @@ func TestServiceManager_PersistService_API(t *testing.T) { // Service is not persisted unless requested, but we always persist service configs. err = a.AddService(AddServiceRequest{Service: svc, Source: ConfigSourceRemote}) - require.NoError(err) + require.NoError(t, err) requireFileIsAbsent(t, svcFile) requireFileIsPresent(t, configFile) @@ -412,7 +402,7 @@ func TestServiceManager_PersistService_API(t *testing.T) { token: "mytoken", Source: ConfigSourceRemote, }) - require.NoError(err) + require.NoError(t, err) requireFileIsPresent(t, svcFile) requireFileIsPresent(t, configFile) @@ -447,8 +437,8 @@ func TestServiceManager_PersistService_API(t *testing.T) { // Verify in memory state. { sidecarService := a.State.Service(structs.NewServiceID("web-sidecar-proxy", nil)) - require.NotNil(sidecarService) - require.Equal(expectState, sidecarService) + require.NotNil(t, sidecarService) + require.Equal(t, expectState, sidecarService) } // Updates service definition on disk @@ -460,7 +450,7 @@ func TestServiceManager_PersistService_API(t *testing.T) { token: "mytoken", Source: ConfigSourceRemote, }) - require.NoError(err) + require.NoError(t, err) requireFileIsPresent(t, svcFile) requireFileIsPresent(t, configFile) @@ -496,8 +486,8 @@ func TestServiceManager_PersistService_API(t *testing.T) { expectState.Proxy.LocalServicePort = 8001 { sidecarService := a.State.Service(structs.NewServiceID("web-sidecar-proxy", nil)) - require.NotNil(sidecarService) - require.Equal(expectState, sidecarService) + require.NotNil(t, sidecarService) + require.Equal(t, expectState, sidecarService) } // Kill the agent to restart it. @@ -512,12 +502,12 @@ func TestServiceManager_PersistService_API(t *testing.T) { { restored := a.State.Service(structs.NewServiceID("web-sidecar-proxy", nil)) - require.NotNil(restored) - require.Equal(expectState, restored) + require.NotNil(t, restored) + require.Equal(t, expectState, restored) } // Now remove it. - require.NoError(a2.RemoveService(structs.NewServiceID("web-sidecar-proxy", nil))) + require.NoError(t, a2.RemoveService(structs.NewServiceID("web-sidecar-proxy", nil))) requireFileIsAbsent(t, svcFile) requireFileIsAbsent(t, configFile) } @@ -704,8 +694,6 @@ func TestServiceManager_Disabled(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - a := NewTestAgent(t, "enable_central_service_config = false") defer a.Shutdown() @@ -752,12 +740,12 @@ func TestServiceManager_Disabled(t *testing.T) { }, EnterpriseMeta: *structs.DefaultEnterpriseMetaInDefaultPartition(), } - require.NoError(a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) + require.NoError(t, a.addServiceFromSource(svc, nil, false, "", ConfigSourceLocal)) // Verify sidecar got global config loaded sidecarService := a.State.Service(structs.NewServiceID("web-sidecar-proxy", nil)) - require.NotNil(sidecarService) - require.Equal(&structs.NodeService{ + require.NotNil(t, sidecarService) + require.Equal(t, &structs.NodeService{ Kind: structs.ServiceKindConnectProxy, ID: "web-sidecar-proxy", Service: "web-sidecar-proxy", diff --git a/agent/sidecar_service_test.go b/agent/sidecar_service_test.go index e6d1666f3..a2ffe9af4 100644 --- a/agent/sidecar_service_test.go +++ b/agent/sidecar_service_test.go @@ -330,30 +330,29 @@ func TestAgent_sidecarServiceFromNodeService(t *testing.T) { ` } - require := require.New(t) a := StartTestAgent(t, TestAgent{Name: "jones", HCL: hcl}) defer a.Shutdown() if tt.preRegister != nil { err := a.addServiceFromSource(tt.preRegister.NodeService(), nil, false, "", ConfigSourceLocal) - require.NoError(err) + require.NoError(t, err) } ns := tt.sd.NodeService() err := ns.Validate() - require.NoError(err, "Invalid test case - NodeService must validate") + require.NoError(t, err, "Invalid test case - NodeService must validate") gotNS, gotChecks, gotToken, err := a.sidecarServiceFromNodeService(ns, tt.token) if tt.wantErr != "" { - require.Error(err) - require.Contains(err.Error(), tt.wantErr) + require.Error(t, err) + require.Contains(t, err.Error(), tt.wantErr) return } - require.NoError(err) - require.Equal(tt.wantNS, gotNS) - require.Equal(tt.wantChecks, gotChecks) - require.Equal(tt.wantToken, gotToken) + require.NoError(t, err) + require.Equal(t, tt.wantNS, gotNS) + require.Equal(t, tt.wantChecks, gotChecks) + require.Equal(t, tt.wantToken, gotToken) }) } } diff --git a/agent/structs/connect_proxy_config_test.go b/agent/structs/connect_proxy_config_test.go index f47e268a6..21d355416 100644 --- a/agent/structs/connect_proxy_config_test.go +++ b/agent/structs/connect_proxy_config_test.go @@ -197,14 +197,13 @@ func TestConnectProxyConfig_MarshalJSON(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) got, err := tt.in.MarshalJSON() if tt.wantErr { - require.Error(err) + require.Error(t, err) return } - require.NoError(err) - require.JSONEq(tt.want, string(got)) + require.NoError(t, err) + require.JSONEq(t, tt.want, string(got)) }) } } @@ -255,14 +254,13 @@ func TestUpstream_MarshalJSON(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) got, err := json.Marshal(tt.in) if tt.wantErr { - require.Error(err) + require.Error(t, err) return } - require.NoError(err) - require.JSONEq(tt.want, string(got)) + require.NoError(t, err) + require.JSONEq(t, tt.want, string(got)) }) } } diff --git a/agent/structs/intention_test.go b/agent/structs/intention_test.go index 9b733e7f7..247bbe284 100644 --- a/agent/structs/intention_test.go +++ b/agent/structs/intention_test.go @@ -227,17 +227,16 @@ func TestIntentionValidate(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - assert := assert.New(t) ixn := TestIntention(t) tc.Modify(ixn) err := ixn.Validate() - assert.Equal(err != nil, tc.Err != "", err) + assert.Equal(t, err != nil, tc.Err != "", err) if err == nil { return } - assert.Contains(strings.ToLower(err.Error()), strings.ToLower(tc.Err)) + assert.Contains(t, strings.ToLower(err.Error()), strings.ToLower(tc.Err)) }) } } @@ -301,7 +300,6 @@ func TestIntentionPrecedenceSorter(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - assert := assert.New(t) var input Intentions for _, v := range tc.Input { @@ -331,7 +329,7 @@ func TestIntentionPrecedenceSorter(t *testing.T) { v.DestinationName, }) } - assert.Equal(tc.Expected, actual) + assert.Equal(t, tc.Expected, actual) }) } } diff --git a/agent/structs/service_definition_test.go b/agent/structs/service_definition_test.go index ca5d91fb6..d5a68f667 100644 --- a/agent/structs/service_definition_test.go +++ b/agent/structs/service_definition_test.go @@ -71,16 +71,15 @@ func TestServiceDefinitionValidate(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - require := require.New(t) service := TestServiceDefinition(t) tc.Modify(service) err := service.Validate() if tc.Err == "" { - require.NoError(err) + require.NoError(t, err) } else { - require.Error(err) - require.Contains(strings.ToLower(err.Error()), strings.ToLower(tc.Err)) + require.Error(t, err) + require.Contains(t, strings.ToLower(err.Error()), strings.ToLower(tc.Err)) } }) } diff --git a/agent/structs/structs_test.go b/agent/structs/structs_test.go index 72616fc02..b4ea8e50c 100644 --- a/agent/structs/structs_test.go +++ b/agent/structs/structs_test.go @@ -941,17 +941,16 @@ func TestStructs_NodeService_ValidateConnectProxy(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - assert := assert.New(t) ns := TestNodeServiceProxy(t) tc.Modify(ns) err := ns.Validate() - assert.Equal(err != nil, tc.Err != "", err) + assert.Equal(t, err != nil, tc.Err != "", err) if err == nil { return } - assert.Contains(strings.ToLower(err.Error()), strings.ToLower(tc.Err)) + assert.Contains(t, strings.ToLower(err.Error()), strings.ToLower(tc.Err)) }) } } @@ -1000,17 +999,16 @@ func TestStructs_NodeService_ValidateConnectProxy_In_Partition(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - assert := assert.New(t) ns := TestNodeServiceProxyInPartition(t, "bar") tc.Modify(ns) err := ns.Validate() - assert.Equal(err != nil, tc.Err != "", err) + assert.Equal(t, err != nil, tc.Err != "", err) if err == nil { return } - assert.Contains(strings.ToLower(err.Error()), strings.ToLower(tc.Err)) + assert.Contains(t, strings.ToLower(err.Error()), strings.ToLower(tc.Err)) }) } } @@ -1046,17 +1044,16 @@ func TestStructs_NodeService_ValidateSidecarService(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - assert := assert.New(t) ns := TestNodeServiceSidecar(t) tc.Modify(ns) err := ns.Validate() - assert.Equal(err != nil, tc.Err != "", err) + assert.Equal(t, err != nil, tc.Err != "", err) if err == nil { return } - assert.Contains(strings.ToLower(err.Error()), strings.ToLower(tc.Err)) + assert.Contains(t, strings.ToLower(err.Error()), strings.ToLower(tc.Err)) }) } } diff --git a/api/agent_test.go b/api/agent_test.go index 16fc066ff..6b5c97e76 100644 --- a/api/agent_test.go +++ b/api/agent_test.go @@ -762,8 +762,6 @@ func TestAPI_AgentService(t *testing.T) { agent := c.Agent() - require := require.New(t) - reg := &AgentServiceRegistration{ Name: "foo", Tags: []string{"bar", "baz"}, @@ -777,10 +775,10 @@ func TestAPI_AgentService(t *testing.T) { }, }, } - require.NoError(agent.ServiceRegister(reg)) + require.NoError(t, agent.ServiceRegister(reg)) got, qm, err := agent.Service("foo", nil) - require.NoError(err) + require.NoError(t, err) expect := &AgentService{ ID: "foo", @@ -797,8 +795,8 @@ func TestAPI_AgentService(t *testing.T) { Partition: defaultPartition, Datacenter: "dc1", } - require.Equal(expect, got) - require.Equal(expect.ContentHash, qm.LastContentHash) + require.Equal(t, expect, got) + require.Equal(t, expect.ContentHash, qm.LastContentHash) // Sanity check blocking behavior - this is more thoroughly tested in the // agent endpoint tests but this ensures that the API package is at least @@ -810,8 +808,8 @@ func TestAPI_AgentService(t *testing.T) { start := time.Now() _, _, err = agent.Service("foo", &opts) elapsed := time.Since(start) - require.NoError(err) - require.True(elapsed >= opts.WaitTime) + require.NoError(t, err) + require.True(t, elapsed >= opts.WaitTime) } func TestAPI_AgentSetTTLStatus(t *testing.T) { @@ -1616,7 +1614,6 @@ func TestAPI_AgentUpdateToken(t *testing.T) { func TestAPI_AgentConnectCARoots_empty(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClientWithConfig(t, nil, func(c *testutil.TestServerConfig) { c.Connect = nil // disable connect to prevent CA being bootstrapped }) @@ -1624,29 +1621,27 @@ func TestAPI_AgentConnectCARoots_empty(t *testing.T) { agent := c.Agent() _, _, err := agent.ConnectCARoots(nil) - require.Error(err) - require.Contains(err.Error(), "Connect must be enabled") + require.Error(t, err) + require.Contains(t, err.Error(), "Connect must be enabled") } func TestAPI_AgentConnectCARoots_list(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClient(t) defer s.Stop() agent := c.Agent() s.WaitForSerfCheck(t) list, meta, err := agent.ConnectCARoots(nil) - require.NoError(err) - require.True(meta.LastIndex > 0) - require.Len(list.Roots, 1) + require.NoError(t, err) + require.True(t, meta.LastIndex > 0) + require.Len(t, list.Roots, 1) } func TestAPI_AgentConnectCALeaf(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClient(t) defer s.Stop() @@ -1660,26 +1655,25 @@ func TestAPI_AgentConnectCALeaf(t *testing.T) { Tags: []string{"bar", "baz"}, Port: 8000, } - require.NoError(agent.ServiceRegister(reg)) + require.NoError(t, agent.ServiceRegister(reg)) leaf, meta, err := agent.ConnectCALeaf("foo", nil) - require.NoError(err) - require.True(meta.LastIndex > 0) + require.NoError(t, err) + require.True(t, meta.LastIndex > 0) // Sanity checks here as we have actual certificate validation checks at many // other levels. - require.NotEmpty(leaf.SerialNumber) - require.NotEmpty(leaf.CertPEM) - require.NotEmpty(leaf.PrivateKeyPEM) - require.Equal("foo", leaf.Service) - require.True(strings.HasSuffix(leaf.ServiceURI, "/svc/foo")) - require.True(leaf.ModifyIndex > 0) - require.True(leaf.ValidAfter.Before(time.Now())) - require.True(leaf.ValidBefore.After(time.Now())) + require.NotEmpty(t, leaf.SerialNumber) + require.NotEmpty(t, leaf.CertPEM) + require.NotEmpty(t, leaf.PrivateKeyPEM) + require.Equal(t, "foo", leaf.Service) + require.True(t, strings.HasSuffix(leaf.ServiceURI, "/svc/foo")) + require.True(t, leaf.ModifyIndex > 0) + require.True(t, leaf.ValidAfter.Before(time.Now())) + require.True(t, leaf.ValidBefore.After(time.Now())) } func TestAPI_AgentConnectAuthorize(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClient(t) defer s.Stop() @@ -1692,9 +1686,9 @@ func TestAPI_AgentConnectAuthorize(t *testing.T) { ClientCertURI: "spiffe://11111111-2222-3333-4444-555555555555.consul/ns/default/dc/ny1/svc/web", } auth, err := agent.ConnectAuthorize(params) - require.Nil(err) - require.True(auth.Authorized) - require.Equal(auth.Reason, "Default behavior configured by ACLs") + require.Nil(t, err) + require.True(t, auth.Authorized) + require.Equal(t, auth.Reason, "Default behavior configured by ACLs") } func TestAPI_AgentHealthServiceOpts(t *testing.T) { diff --git a/api/api_test.go b/api/api_test.go index 6558efbd1..8af27f026 100644 --- a/api/api_test.go +++ b/api/api_test.go @@ -738,8 +738,6 @@ func TestAPI_SetQueryOptions(t *testing.T) { c, s := makeClient(t) defer s.Stop() - assert := assert.New(t) - r := c.newRequest("GET", "/v1/kv/foo") q := &QueryOptions{ Namespace: "operator", @@ -785,7 +783,7 @@ func TestAPI_SetQueryOptions(t *testing.T) { if r.params.Get("local-only") != "true" { t.Fatalf("bad: %v", r.params) } - assert.Equal("", r.header.Get("Cache-Control")) + assert.Equal(t, "", r.header.Get("Cache-Control")) r = c.newRequest("GET", "/v1/kv/foo") q = &QueryOptions{ @@ -796,8 +794,8 @@ func TestAPI_SetQueryOptions(t *testing.T) { r.setQueryOptions(q) _, ok := r.params["cached"] - assert.True(ok) - assert.Equal("max-age=30, stale-if-error=346", r.header.Get("Cache-Control")) + assert.True(t, ok) + assert.Equal(t, "max-age=30, stale-if-error=346", r.header.Get("Cache-Control")) } func TestAPI_SetWriteOptions(t *testing.T) { diff --git a/api/catalog_test.go b/api/catalog_test.go index c1b7f0593..c24d7ccf5 100644 --- a/api/catalog_test.go +++ b/api/catalog_test.go @@ -318,13 +318,11 @@ func TestAPI_CatalogServiceCached(t *testing.T) { } }) - require := require.New(t) - // Got success, next hit must be cache hit _, meta, err := catalog.Service("consul", "", q) - require.NoError(err) - require.True(meta.CacheHit) - require.Equal(time.Duration(0), meta.CacheAge) + require.NoError(t, err) + require.True(t, meta.CacheHit) + require.Equal(t, time.Duration(0), meta.CacheAge) } func TestAPI_CatalogService_SingleTag(t *testing.T) { diff --git a/api/config_entry_test.go b/api/config_entry_test.go index e029889f1..f072bea91 100644 --- a/api/config_entry_test.go +++ b/api/config_entry_test.go @@ -250,7 +250,6 @@ func TestAPI_ConfigEntries(t *testing.T) { }) t.Run("CAS deletion", func(t *testing.T) { - require := require.New(t) entry := &ProxyConfigEntry{ Kind: ProxyDefaults, @@ -262,23 +261,23 @@ func TestAPI_ConfigEntries(t *testing.T) { // Create a config entry. created, _, err := config_entries.Set(entry, nil) - require.NoError(err) - require.True(created, "entry should have been created") + require.NoError(t, err) + require.True(t, created, "entry should have been created") // Read it back to get the ModifyIndex. result, _, err := config_entries.Get(entry.Kind, entry.Name, nil) - require.NoError(err) - require.NotNil(entry) + require.NoError(t, err) + require.NotNil(t, entry) // Attempt a deletion with an invalid index. deleted, _, err := config_entries.DeleteCAS(entry.Kind, entry.Name, result.GetModifyIndex()-1, nil) - require.NoError(err) - require.False(deleted, "entry should not have been deleted") + require.NoError(t, err) + require.False(t, deleted, "entry should not have been deleted") // Attempt a deletion with a valid index. deleted, _, err = config_entries.DeleteCAS(entry.Kind, entry.Name, result.GetModifyIndex(), nil) - require.NoError(err) - require.True(deleted, "entry should have been deleted") + require.NoError(t, err) + require.True(t, deleted, "entry should have been deleted") }) } diff --git a/api/connect_ca_test.go b/api/connect_ca_test.go index 67d986ef9..64b0b2a05 100644 --- a/api/connect_ca_test.go +++ b/api/connect_ca_test.go @@ -13,7 +13,6 @@ import ( func TestAPI_ConnectCARoots_empty(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClientWithConfig(t, nil, func(c *testutil.TestServerConfig) { // Don't bootstrap CA c.Connect = nil @@ -25,8 +24,8 @@ func TestAPI_ConnectCARoots_empty(t *testing.T) { connect := c.Connect() _, _, err := connect.CARoots(nil) - require.Error(err) - require.Contains(err.Error(), "Connect must be enabled") + require.Error(t, err) + require.Contains(t, err.Error(), "Connect must be enabled") } func TestAPI_ConnectCARoots_list(t *testing.T) { diff --git a/api/status_test.go b/api/status_test.go index 8802cc561..91bcfaafd 100644 --- a/api/status_test.go +++ b/api/status_test.go @@ -83,7 +83,6 @@ func TestAPI_StatusPeersWithQueryOptions(t *testing.T) { func TestAPI_StatusLeader_WrongDC(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClient(t) defer s.Stop() @@ -96,13 +95,12 @@ func TestAPI_StatusLeader_WrongDC(t *testing.T) { } _, err := status.LeaderWithQueryOptions(&opts) - require.Error(err) - require.Contains(err.Error(), "No path to datacenter") + require.Error(t, err) + require.Contains(t, err.Error(), "No path to datacenter") } func TestAPI_StatusPeers_WrongDC(t *testing.T) { t.Parallel() - require := require.New(t) c, s := makeClient(t) defer s.Stop() @@ -114,6 +112,6 @@ func TestAPI_StatusPeers_WrongDC(t *testing.T) { Datacenter: "wrong_dc1", } _, err := status.PeersWithQueryOptions(&opts) - require.Error(err) - require.Contains(err.Error(), "No path to datacenter") + require.Error(t, err) + require.Contains(t, err.Error(), "No path to datacenter") } diff --git a/command/acl/agenttokens/agent_tokens_test.go b/command/acl/agenttokens/agent_tokens_test.go index 5e6430a9b..08a154df5 100644 --- a/command/acl/agenttokens/agent_tokens_test.go +++ b/command/acl/agenttokens/agent_tokens_test.go @@ -25,7 +25,6 @@ func TestAgentTokensCommand(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -50,7 +49,7 @@ func TestAgentTokensCommand(t *testing.T) { &api.ACLToken{Description: "test"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) // default token { @@ -61,8 +60,8 @@ func TestAgentTokensCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) } // agent token @@ -74,8 +73,8 @@ func TestAgentTokensCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) } // recovery token @@ -87,8 +86,8 @@ func TestAgentTokensCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) } // replication token @@ -100,7 +99,7 @@ func TestAgentTokensCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) } } diff --git a/command/acl/bootstrap/bootstrap_test.go b/command/acl/bootstrap/bootstrap_test.go index d82fd067d..8b6c7d497 100644 --- a/command/acl/bootstrap/bootstrap_test.go +++ b/command/acl/bootstrap/bootstrap_test.go @@ -27,7 +27,6 @@ func TestBootstrapCommand_Pretty(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -46,11 +45,11 @@ func TestBootstrapCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, "Bootstrap Token") - assert.Contains(output, structs.ACLPolicyGlobalManagementID) + assert.Contains(t, output, "Bootstrap Token") + assert.Contains(t, output, structs.ACLPolicyGlobalManagementID) } func TestBootstrapCommand_JSON(t *testing.T) { @@ -59,7 +58,6 @@ func TestBootstrapCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -79,11 +77,11 @@ func TestBootstrapCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, "Bootstrap Token") - assert.Contains(output, structs.ACLPolicyGlobalManagementID) + assert.Contains(t, output, "Bootstrap Token") + assert.Contains(t, output, structs.ACLPolicyGlobalManagementID) var jsonOutput json.RawMessage err := json.Unmarshal([]byte(output), &jsonOutput) diff --git a/command/acl/policy/create/policy_create_test.go b/command/acl/policy/create/policy_create_test.go index 8632ca228..4466ad2d5 100644 --- a/command/acl/policy/create/policy_create_test.go +++ b/command/acl/policy/create/policy_create_test.go @@ -28,7 +28,6 @@ func TestPolicyCreateCommand(t *testing.T) { } t.Parallel() - require := require.New(t) testDir := testutil.TempDir(t, "acl") @@ -49,7 +48,7 @@ func TestPolicyCreateCommand(t *testing.T) { rules := []byte("service \"\" { policy = \"write\" }") err := ioutil.WriteFile(testDir+"/rules.hcl", rules, 0644) - require.NoError(err) + require.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -59,8 +58,8 @@ func TestPolicyCreateCommand(t *testing.T) { } code := cmd.Run(args) - require.Equal(code, 0) - require.Empty(ui.ErrorWriter.String()) + require.Equal(t, code, 0) + require.Empty(t, ui.ErrorWriter.String()) } func TestPolicyCreateCommand_JSON(t *testing.T) { @@ -69,7 +68,6 @@ func TestPolicyCreateCommand_JSON(t *testing.T) { } t.Parallel() - require := require.New(t) testDir := testutil.TempDir(t, "acl") @@ -90,7 +88,7 @@ func TestPolicyCreateCommand_JSON(t *testing.T) { rules := []byte("service \"\" { policy = \"write\" }") err := ioutil.WriteFile(testDir+"/rules.hcl", rules, 0644) - require.NoError(err) + require.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -101,8 +99,8 @@ func TestPolicyCreateCommand_JSON(t *testing.T) { } code := cmd.Run(args) - require.Equal(code, 0) - require.Empty(ui.ErrorWriter.String()) + require.Equal(t, code, 0) + require.Empty(t, ui.ErrorWriter.String()) var jsonOutput json.RawMessage err = json.Unmarshal([]byte(ui.OutputWriter.String()), &jsonOutput) diff --git a/command/acl/policy/delete/policy_delete_test.go b/command/acl/policy/delete/policy_delete_test.go index 3057d8000..3a7660dbc 100644 --- a/command/acl/policy/delete/policy_delete_test.go +++ b/command/acl/policy/delete/policy_delete_test.go @@ -26,7 +26,6 @@ func TestPolicyDeleteCommand(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -50,7 +49,7 @@ func TestPolicyDeleteCommand(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -59,16 +58,16 @@ func TestPolicyDeleteCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, fmt.Sprintf("deleted successfully")) - assert.Contains(output, policy.ID) + assert.Contains(t, output, fmt.Sprintf("deleted successfully")) + assert.Contains(t, output, policy.ID) _, _, err = client.ACL().PolicyRead( policy.ID, &api.QueryOptions{Token: "root"}, ) - assert.EqualError(err, "Unexpected response code: 403 (ACL not found)") + assert.EqualError(t, err, "Unexpected response code: 403 (ACL not found)") } diff --git a/command/acl/policy/list/policy_list_test.go b/command/acl/policy/list/policy_list_test.go index 208c7a82e..6a40f2c82 100644 --- a/command/acl/policy/list/policy_list_test.go +++ b/command/acl/policy/list/policy_list_test.go @@ -27,7 +27,6 @@ func TestPolicyListCommand(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -57,7 +56,7 @@ func TestPolicyListCommand(t *testing.T) { ) policyIDs = append(policyIDs, policy.ID) - assert.NoError(err) + assert.NoError(t, err) } args := []string{ @@ -66,13 +65,13 @@ func TestPolicyListCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() for i, v := range policyIDs { - assert.Contains(output, fmt.Sprintf("test-policy-%d", i)) - assert.Contains(output, v) + assert.Contains(t, output, fmt.Sprintf("test-policy-%d", i)) + assert.Contains(t, output, v) } } @@ -82,7 +81,6 @@ func TestPolicyListCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -112,7 +110,7 @@ func TestPolicyListCommand_JSON(t *testing.T) { ) policyIDs = append(policyIDs, policy.ID) - assert.NoError(err) + assert.NoError(t, err) } args := []string{ @@ -122,16 +120,16 @@ func TestPolicyListCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() for i, v := range policyIDs { - assert.Contains(output, fmt.Sprintf("test-policy-%d", i)) - assert.Contains(output, v) + assert.Contains(t, output, fmt.Sprintf("test-policy-%d", i)) + assert.Contains(t, output, v) } var jsonOutput json.RawMessage err := json.Unmarshal([]byte(output), &jsonOutput) - assert.NoError(err) + assert.NoError(t, err) } diff --git a/command/acl/policy/read/policy_read_test.go b/command/acl/policy/read/policy_read_test.go index 34d35e177..af5bf1c84 100644 --- a/command/acl/policy/read/policy_read_test.go +++ b/command/acl/policy/read/policy_read_test.go @@ -27,7 +27,6 @@ func TestPolicyReadCommand(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -51,7 +50,7 @@ func TestPolicyReadCommand(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) // Test querying by id field args := []string{ @@ -61,12 +60,12 @@ func TestPolicyReadCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, fmt.Sprintf("test-policy")) - assert.Contains(output, policy.ID) + assert.Contains(t, output, fmt.Sprintf("test-policy")) + assert.Contains(t, output, policy.ID) // Test querying by name field argsName := []string{ @@ -77,12 +76,12 @@ func TestPolicyReadCommand(t *testing.T) { cmd = New(ui) code = cmd.Run(argsName) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output = ui.OutputWriter.String() - assert.Contains(output, fmt.Sprintf("test-policy")) - assert.Contains(output, policy.ID) + assert.Contains(t, output, fmt.Sprintf("test-policy")) + assert.Contains(t, output, policy.ID) } func TestPolicyReadCommand_JSON(t *testing.T) { @@ -91,7 +90,6 @@ func TestPolicyReadCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -115,7 +113,7 @@ func TestPolicyReadCommand_JSON(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -125,14 +123,14 @@ func TestPolicyReadCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, fmt.Sprintf("test-policy")) - assert.Contains(output, policy.ID) + assert.Contains(t, output, fmt.Sprintf("test-policy")) + assert.Contains(t, output, policy.ID) var jsonOutput json.RawMessage err = json.Unmarshal([]byte(output), &jsonOutput) - assert.NoError(err) + assert.NoError(t, err) } diff --git a/command/acl/policy/update/policy_update_test.go b/command/acl/policy/update/policy_update_test.go index 164eba699..c11d2b76e 100644 --- a/command/acl/policy/update/policy_update_test.go +++ b/command/acl/policy/update/policy_update_test.go @@ -28,7 +28,6 @@ func TestPolicyUpdateCommand(t *testing.T) { } t.Parallel() - assert := assert.New(t) testDir := testutil.TempDir(t, "acl") @@ -49,7 +48,7 @@ func TestPolicyUpdateCommand(t *testing.T) { rules := []byte("service \"\" { policy = \"write\" }") err := ioutil.WriteFile(testDir+"/rules.hcl", rules, 0644) - assert.NoError(err) + assert.NoError(t, err) // Create a policy client := a.Client() @@ -58,7 +57,7 @@ func TestPolicyUpdateCommand(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -69,8 +68,8 @@ func TestPolicyUpdateCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) } func TestPolicyUpdateCommand_JSON(t *testing.T) { @@ -79,7 +78,6 @@ func TestPolicyUpdateCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) testDir := testutil.TempDir(t, "acl") @@ -100,7 +98,7 @@ func TestPolicyUpdateCommand_JSON(t *testing.T) { rules := []byte("service \"\" { policy = \"write\" }") err := ioutil.WriteFile(testDir+"/rules.hcl", rules, 0644) - assert.NoError(err) + assert.NoError(t, err) // Create a policy client := a.Client() @@ -109,7 +107,7 @@ func TestPolicyUpdateCommand_JSON(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -121,10 +119,10 @@ func TestPolicyUpdateCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) var jsonOutput json.RawMessage err = json.Unmarshal([]byte(ui.OutputWriter.String()), &jsonOutput) - assert.NoError(err) + assert.NoError(t, err) } diff --git a/command/acl/role/list/role_list_test.go b/command/acl/role/list/role_list_test.go index 60803c8da..d331fefb6 100644 --- a/command/acl/role/list/role_list_test.go +++ b/command/acl/role/list/role_list_test.go @@ -28,7 +28,6 @@ func TestRoleListCommand(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -61,7 +60,7 @@ func TestRoleListCommand(t *testing.T) { ) roleIDs = append(roleIDs, role.ID) - require.NoError(err) + require.NoError(t, err) } args := []string{ @@ -70,13 +69,13 @@ func TestRoleListCommand(t *testing.T) { } code := cmd.Run(args) - require.Equal(code, 0) - require.Empty(ui.ErrorWriter.String()) + require.Equal(t, code, 0) + require.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() for i, v := range roleIDs { - require.Contains(output, fmt.Sprintf("test-role-%d", i)) - require.Contains(output, v) + require.Contains(t, output, fmt.Sprintf("test-role-%d", i)) + require.Contains(t, output, v) } } @@ -86,7 +85,6 @@ func TestRoleListCommand_JSON(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -119,7 +117,7 @@ func TestRoleListCommand_JSON(t *testing.T) { ) roleIDs = append(roleIDs, role.ID) - require.NoError(err) + require.NoError(t, err) } args := []string{ @@ -129,13 +127,13 @@ func TestRoleListCommand_JSON(t *testing.T) { } code := cmd.Run(args) - require.Equal(code, 0) - require.Empty(ui.ErrorWriter.String()) + require.Equal(t, code, 0) + require.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() for i, v := range roleIDs { - require.Contains(output, fmt.Sprintf("test-role-%d", i)) - require.Contains(output, v) + require.Contains(t, output, fmt.Sprintf("test-role-%d", i)) + require.Contains(t, output, v) } var jsonOutput json.RawMessage diff --git a/command/acl/token/clone/token_clone_test.go b/command/acl/token/clone/token_clone_test.go index 0c6b56c20..582319ad4 100644 --- a/command/acl/token/clone/token_clone_test.go +++ b/command/acl/token/clone/token_clone_test.go @@ -65,7 +65,6 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -86,14 +85,14 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - require.NoError(err) + require.NoError(t, err) // create a token token, _, err := client.ACL().TokenCreate( &api.ACLToken{Description: "test", Policies: []*api.ACLTokenPolicyLink{{Name: "test-policy"}}}, &api.WriteOptions{Token: "root"}, ) - require.NoError(err) + require.NoError(t, err) // clone with description t.Run("Description", func(t *testing.T) { @@ -108,27 +107,27 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - require.Empty(ui.ErrorWriter.String()) - require.Equal(code, 0) + require.Empty(t, ui.ErrorWriter.String()) + require.Equal(t, code, 0) cloned := parseCloneOutput(t, ui.OutputWriter.String()) - require.Equal("test cloned", cloned.Description) - require.Len(cloned.Policies, 1) + require.Equal(t, "test cloned", cloned.Description) + require.Len(t, cloned.Policies, 1) apiToken, _, err := client.ACL().TokenRead( cloned.AccessorID, &api.QueryOptions{Token: "root"}, ) - require.NoError(err) - require.NotNil(apiToken) + require.NoError(t, err) + require.NotNil(t, apiToken) - require.Equal(cloned.AccessorID, apiToken.AccessorID) - require.Equal(cloned.SecretID, apiToken.SecretID) - require.Equal(cloned.Description, apiToken.Description) - require.Equal(cloned.Local, apiToken.Local) - require.Equal(cloned.Policies, apiToken.Policies) + require.Equal(t, cloned.AccessorID, apiToken.AccessorID) + require.Equal(t, cloned.SecretID, apiToken.SecretID) + require.Equal(t, cloned.Description, apiToken.Description) + require.Equal(t, cloned.Local, apiToken.Local) + require.Equal(t, cloned.Policies, apiToken.Policies) }) // clone without description @@ -143,27 +142,27 @@ func TestTokenCloneCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - require.Equal(code, 0) - require.Empty(ui.ErrorWriter.String()) + require.Equal(t, code, 0) + require.Empty(t, ui.ErrorWriter.String()) cloned := parseCloneOutput(t, ui.OutputWriter.String()) - require.Equal("test", cloned.Description) - require.Len(cloned.Policies, 1) + require.Equal(t, "test", cloned.Description) + require.Len(t, cloned.Policies, 1) apiToken, _, err := client.ACL().TokenRead( cloned.AccessorID, &api.QueryOptions{Token: "root"}, ) - require.NoError(err) - require.NotNil(apiToken) + require.NoError(t, err) + require.NotNil(t, apiToken) - require.Equal(cloned.AccessorID, apiToken.AccessorID) - require.Equal(cloned.SecretID, apiToken.SecretID) - require.Equal(cloned.Description, apiToken.Description) - require.Equal(cloned.Local, apiToken.Local) - require.Equal(cloned.Policies, apiToken.Policies) + require.Equal(t, cloned.AccessorID, apiToken.AccessorID) + require.Equal(t, cloned.SecretID, apiToken.SecretID) + require.Equal(t, cloned.Description, apiToken.Description) + require.Equal(t, cloned.Local, apiToken.Local) + require.Equal(t, cloned.Policies, apiToken.Policies) }) } @@ -173,7 +172,6 @@ func TestTokenCloneCommand_JSON(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -194,14 +192,14 @@ func TestTokenCloneCommand_JSON(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - require.NoError(err) + require.NoError(t, err) // create a token token, _, err := client.ACL().TokenCreate( &api.ACLToken{Description: "test", Policies: []*api.ACLTokenPolicyLink{{Name: "test-policy"}}}, &api.WriteOptions{Token: "root"}, ) - require.NoError(err) + require.NoError(t, err) // clone with description t.Run("Description", func(t *testing.T) { @@ -217,8 +215,8 @@ func TestTokenCloneCommand_JSON(t *testing.T) { } code := cmd.Run(args) - require.Empty(ui.ErrorWriter.String()) - require.Equal(code, 0) + require.Empty(t, ui.ErrorWriter.String()) + require.Equal(t, code, 0) output := ui.OutputWriter.String() var jsonOutput json.RawMessage @@ -239,8 +237,8 @@ func TestTokenCloneCommand_JSON(t *testing.T) { } code := cmd.Run(args) - require.Empty(ui.ErrorWriter.String()) - require.Equal(code, 0) + require.Empty(t, ui.ErrorWriter.String()) + require.Equal(t, code, 0) output := ui.OutputWriter.String() var jsonOutput json.RawMessage diff --git a/command/acl/token/create/token_create_test.go b/command/acl/token/create/token_create_test.go index f3174988f..3a4864ec8 100644 --- a/command/acl/token/create/token_create_test.go +++ b/command/acl/token/create/token_create_test.go @@ -124,7 +124,6 @@ func TestTokenCreateCommand_JSON(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -148,7 +147,7 @@ func TestTokenCreateCommand_JSON(t *testing.T) { &api.ACLPolicy{Name: "test-policy"}, &api.WriteOptions{Token: "root"}, ) - require.NoError(err) + require.NoError(t, err) // create with policy by name { @@ -161,11 +160,11 @@ func TestTokenCreateCommand_JSON(t *testing.T) { } code := cmd.Run(args) - require.Equal(code, 0) - require.Empty(ui.ErrorWriter.String()) + require.Equal(t, code, 0) + require.Empty(t, ui.ErrorWriter.String()) var jsonOutput json.RawMessage err = json.Unmarshal([]byte(ui.OutputWriter.String()), &jsonOutput) - require.NoError(err, "token unmarshalling error") + require.NoError(t, err, "token unmarshalling error") } } diff --git a/command/acl/token/delete/token_delete_test.go b/command/acl/token/delete/token_delete_test.go index 36a1d521c..5ce7117cb 100644 --- a/command/acl/token/delete/token_delete_test.go +++ b/command/acl/token/delete/token_delete_test.go @@ -26,7 +26,6 @@ func TestTokenDeleteCommand(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -50,7 +49,7 @@ func TestTokenDeleteCommand(t *testing.T) { &api.ACLToken{Description: "test"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -59,16 +58,16 @@ func TestTokenDeleteCommand(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, fmt.Sprintf("deleted successfully")) - assert.Contains(output, token.AccessorID) + assert.Contains(t, output, fmt.Sprintf("deleted successfully")) + assert.Contains(t, output, token.AccessorID) _, _, err = client.ACL().TokenRead( token.AccessorID, &api.QueryOptions{Token: "root"}, ) - assert.EqualError(err, "Unexpected response code: 403 (ACL not found)") + assert.EqualError(t, err, "Unexpected response code: 403 (ACL not found)") } diff --git a/command/acl/token/list/token_list_test.go b/command/acl/token/list/token_list_test.go index ba6d3949c..4e1a518bf 100644 --- a/command/acl/token/list/token_list_test.go +++ b/command/acl/token/list/token_list_test.go @@ -28,7 +28,6 @@ func TestTokenListCommand_Pretty(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -58,7 +57,7 @@ func TestTokenListCommand_Pretty(t *testing.T) { ) tokenIds = append(tokenIds, token.AccessorID) - assert.NoError(err) + assert.NoError(t, err) } args := []string{ @@ -67,13 +66,13 @@ func TestTokenListCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() for i, v := range tokenIds { - assert.Contains(output, fmt.Sprintf("test token %d", i)) - assert.Contains(output, v) + assert.Contains(t, output, fmt.Sprintf("test token %d", i)) + assert.Contains(t, output, v) } } @@ -83,7 +82,6 @@ func TestTokenListCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -113,7 +111,7 @@ func TestTokenListCommand_JSON(t *testing.T) { ) tokenIds = append(tokenIds, token.AccessorID) - assert.NoError(err) + assert.NoError(t, err) } args := []string{ @@ -123,8 +121,8 @@ func TestTokenListCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) var jsonOutput []api.ACLTokenListEntry err := json.Unmarshal([]byte(ui.OutputWriter.String()), &jsonOutput) diff --git a/command/acl/token/read/token_read_test.go b/command/acl/token/read/token_read_test.go index c74c5eec9..f8c657298 100644 --- a/command/acl/token/read/token_read_test.go +++ b/command/acl/token/read/token_read_test.go @@ -28,7 +28,6 @@ func TestTokenReadCommand_Pretty(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -52,7 +51,7 @@ func TestTokenReadCommand_Pretty(t *testing.T) { &api.ACLToken{Description: "test"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -61,13 +60,13 @@ func TestTokenReadCommand_Pretty(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) output := ui.OutputWriter.String() - assert.Contains(output, fmt.Sprintf("test")) - assert.Contains(output, token.AccessorID) - assert.Contains(output, token.SecretID) + assert.Contains(t, output, fmt.Sprintf("test")) + assert.Contains(t, output, token.AccessorID) + assert.Contains(t, output, token.SecretID) } func TestTokenReadCommand_JSON(t *testing.T) { @@ -76,7 +75,6 @@ func TestTokenReadCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -100,7 +98,7 @@ func TestTokenReadCommand_JSON(t *testing.T) { &api.ACLToken{Description: "test"}, &api.WriteOptions{Token: "root"}, ) - assert.NoError(err) + assert.NoError(t, err) args := []string{ "-http-addr=" + a.HTTPAddr(), @@ -110,8 +108,8 @@ func TestTokenReadCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) var jsonOutput json.RawMessage err = json.Unmarshal([]byte(ui.OutputWriter.String()), &jsonOutput) diff --git a/command/acl/token/update/token_update_test.go b/command/acl/token/update/token_update_test.go index 17fca2e81..2f5d68ab6 100644 --- a/command/acl/token/update/token_update_test.go +++ b/command/acl/token/update/token_update_test.go @@ -157,7 +157,6 @@ func TestTokenUpdateCommand_JSON(t *testing.T) { } t.Parallel() - assert := assert.New(t) a := agent.NewTestAgent(t, ` primary_datacenter = "dc1" @@ -201,8 +200,8 @@ func TestTokenUpdateCommand_JSON(t *testing.T) { } code := cmd.Run(args) - assert.Equal(code, 0) - assert.Empty(ui.ErrorWriter.String()) + assert.Equal(t, code, 0) + assert.Empty(t, ui.ErrorWriter.String()) var jsonOutput json.RawMessage err := json.Unmarshal([]byte(ui.OutputWriter.String()), &jsonOutput) diff --git a/command/connect/ca/set/connect_ca_set_test.go b/command/connect/ca/set/connect_ca_set_test.go index 42c4f179a..a1c1576b7 100644 --- a/command/connect/ca/set/connect_ca_set_test.go +++ b/command/connect/ca/set/connect_ca_set_test.go @@ -28,7 +28,6 @@ func TestConnectCASetConfigCommand(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() @@ -49,10 +48,10 @@ func TestConnectCASetConfigCommand(t *testing.T) { Datacenter: "dc1", } var reply structs.CAConfiguration - require.NoError(a.RPC("ConnectCA.ConfigurationGet", &req, &reply)) - require.Equal("consul", reply.Provider) + require.NoError(t, a.RPC("ConnectCA.ConfigurationGet", &req, &reply)) + require.Equal(t, "consul", reply.Provider) parsed, err := ca.ParseConsulCAConfig(reply.Config) - require.NoError(err) - require.Equal(288*time.Hour, parsed.IntermediateCertTTL) + require.NoError(t, err) + require.Equal(t, 288*time.Hour, parsed.IntermediateCertTTL) } diff --git a/command/connect/envoy/envoy_test.go b/command/connect/envoy/envoy_test.go index 6ef7f2636..a419569df 100644 --- a/command/connect/envoy/envoy_test.go +++ b/command/connect/envoy/envoy_test.go @@ -850,14 +850,13 @@ func TestGenerateConfig(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - require := require.New(t) testDir := testutil.TempDir(t, "envoytest") if len(tc.Files) > 0 { for fn, fv := range tc.Files { fullname := filepath.Join(testDir, fn) - require.NoError(ioutil.WriteFile(fullname, []byte(fv), 0600)) + require.NoError(t, ioutil.WriteFile(fullname, []byte(fv), 0600)) } } @@ -876,7 +875,7 @@ func TestGenerateConfig(t *testing.T) { defer testSetAndResetEnv(t, myEnv)() client, err := api.NewClient(&api.Config{Address: srv.URL, TLSConfig: api.TLSConfig{InsecureSkipVerify: true}}) - require.NoError(err) + require.NoError(t, err) ui := cli.NewMockUi() c := New(ui) @@ -887,21 +886,21 @@ func TestGenerateConfig(t *testing.T) { myFlags := copyAndReplaceAll(tc.Flags, "@@TEMPDIR@@", testDirPrefix) args := append([]string{"-bootstrap"}, myFlags...) - require.NoError(c.flags.Parse(args)) + require.NoError(t, c.flags.Parse(args)) code := c.run(c.flags.Args()) if tc.WantErr == "" { - require.Equal(0, code, ui.ErrorWriter.String()) + require.Equal(t, 0, code, ui.ErrorWriter.String()) } else { - require.Equal(1, code, ui.ErrorWriter.String()) - require.Contains(ui.ErrorWriter.String(), tc.WantErr) + require.Equal(t, 1, code, ui.ErrorWriter.String()) + require.Contains(t, ui.ErrorWriter.String(), tc.WantErr) return } // Verify we handled the env and flags right first to get correct template // args. got, err := c.templateArgs() - require.NoError(err) // Error cases should have returned above - require.Equal(&tc.WantArgs, got) + require.NoError(t, err) // Error cases should have returned above + require.Equal(t, &tc.WantArgs, got) actual := ui.OutputWriter.Bytes() @@ -912,8 +911,8 @@ func TestGenerateConfig(t *testing.T) { } expected, err := ioutil.ReadFile(golden) - require.NoError(err) - require.Equal(string(expected), string(actual)) + require.NoError(t, err) + require.Equal(t, string(expected), string(actual)) }) } } diff --git a/command/connect/envoy/exec_test.go b/command/connect/envoy/exec_test.go index e381a488b..9c7fc276b 100644 --- a/command/connect/envoy/exec_test.go +++ b/command/connect/envoy/exec_test.go @@ -105,7 +105,6 @@ func TestExecEnvoy(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - require := require.New(t) args := append([]string{"exec-fake-envoy"}, tc.Args...) cmd, destroy := helperProcess(args...) @@ -113,10 +112,10 @@ func TestExecEnvoy(t *testing.T) { cmd.Stderr = os.Stderr outBytes, err := cmd.Output() - require.NoError(err) + require.NoError(t, err) var got FakeEnvoyExecData - require.NoError(json.Unmarshal(outBytes, &got)) + require.NoError(t, json.Unmarshal(outBytes, &got)) expectConfigData := fakeEnvoyTestData @@ -126,11 +125,11 @@ func TestExecEnvoy(t *testing.T) { "{{ got.ConfigPath }}", got.ConfigPath, 1) } - require.Equal(tc.WantArgs, got.Args) - require.Equal(expectConfigData, got.ConfigData) + require.Equal(t, tc.WantArgs, got.Args) + require.Equal(t, expectConfigData, got.ConfigData) // Sanity check the config path in a non-brittle way since we used it to // generate expectation for the args. - require.Regexp(`-bootstrap.json$`, got.ConfigPath) + require.Regexp(t, `-bootstrap.json$`, got.ConfigPath) }) } } diff --git a/command/connect/expose/expose_test.go b/command/connect/expose/expose_test.go index a30b52d66..fa9c38de8 100644 --- a/command/connect/expose/expose_test.go +++ b/command/connect/expose/expose_test.go @@ -16,7 +16,6 @@ func TestConnectExpose(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) client := a.Client() defer a.Shutdown() @@ -41,7 +40,7 @@ func TestConnectExpose(t *testing.T) { // Make sure the config entry and intention have been created. entry, _, err := client.ConfigEntries().Get(api.IngressGateway, "ingress", nil) - require.NoError(err) + require.NoError(t, err) ns := entry.(*api.IngressGatewayConfigEntry).Namespace ap := entry.(*api.IngressGatewayConfigEntry).Partition expected := &api.IngressGatewayConfigEntry{ @@ -64,13 +63,13 @@ func TestConnectExpose(t *testing.T) { } expected.CreateIndex = entry.GetCreateIndex() expected.ModifyIndex = entry.GetModifyIndex() - require.Equal(expected, entry) + require.Equal(t, expected, entry) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("ingress", ixns[0].SourceName) - require.Equal("foo", ixns[0].DestinationName) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "ingress", ixns[0].SourceName) + require.Equal(t, "foo", ixns[0].DestinationName) // Run the command again with a different port, make sure the config entry // is updated while intentions are unmodified. @@ -104,15 +103,15 @@ func TestConnectExpose(t *testing.T) { // Make sure the config entry/intention weren't affected. entry, _, err = client.ConfigEntries().Get(api.IngressGateway, "ingress", nil) - require.NoError(err) + require.NoError(t, err) expected.ModifyIndex = entry.GetModifyIndex() - require.Equal(expected, entry) + require.Equal(t, expected, entry) ixns, _, err = client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("ingress", ixns[0].SourceName) - require.Equal("foo", ixns[0].DestinationName) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "ingress", ixns[0].SourceName) + require.Equal(t, "foo", ixns[0].DestinationName) } // Run the command again with a conflicting protocol, should exit with an error and @@ -132,18 +131,18 @@ func TestConnectExpose(t *testing.T) { if code != 1 { t.Fatalf("bad: %d. %#v", code, ui.ErrorWriter.String()) } - require.Contains(ui.ErrorWriter.String(), `conflicting protocol "tcp"`) + require.Contains(t, ui.ErrorWriter.String(), `conflicting protocol "tcp"`) // Make sure the config entry/intention weren't affected. entry, _, err = client.ConfigEntries().Get(api.IngressGateway, "ingress", nil) - require.NoError(err) - require.Equal(expected, entry) + require.NoError(t, err) + require.Equal(t, expected, entry) ixns, _, err = client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("ingress", ixns[0].SourceName) - require.Equal("foo", ixns[0].DestinationName) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "ingress", ixns[0].SourceName) + require.Equal(t, "foo", ixns[0].DestinationName) } } @@ -153,7 +152,6 @@ func TestConnectExpose_invalidFlags(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() @@ -169,7 +167,7 @@ func TestConnectExpose_invalidFlags(t *testing.T) { if code != 1 { t.Fatalf("bad: %d. %#v", code, ui.ErrorWriter.String()) } - require.Contains(ui.ErrorWriter.String(), "A service name must be given") + require.Contains(t, ui.ErrorWriter.String(), "A service name must be given") }) t.Run("missing gateway", func(t *testing.T) { ui := cli.NewMockUi() @@ -183,7 +181,7 @@ func TestConnectExpose_invalidFlags(t *testing.T) { if code != 1 { t.Fatalf("bad: %d. %#v", code, ui.ErrorWriter.String()) } - require.Contains(ui.ErrorWriter.String(), "An ingress gateway service must be given") + require.Contains(t, ui.ErrorWriter.String(), "An ingress gateway service must be given") }) t.Run("missing port", func(t *testing.T) { ui := cli.NewMockUi() @@ -198,7 +196,7 @@ func TestConnectExpose_invalidFlags(t *testing.T) { if code != 1 { t.Fatalf("bad: %d. %#v", code, ui.ErrorWriter.String()) } - require.Contains(ui.ErrorWriter.String(), "A port must be provided") + require.Contains(t, ui.ErrorWriter.String(), "A port must be provided") }) } @@ -208,7 +206,6 @@ func TestConnectExpose_existingConfig(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) client := a.Client() defer a.Shutdown() @@ -220,7 +217,7 @@ func TestConnectExpose_existingConfig(t *testing.T) { Name: service, Protocol: "http", }, nil) - require.NoError(err) + require.NoError(t, err) } // Create an existing ingress config entry with some services. @@ -249,7 +246,7 @@ func TestConnectExpose_existingConfig(t *testing.T) { }, } _, _, err := client.ConfigEntries().Set(ingressConf, nil) - require.NoError(err) + require.NoError(t, err) // Add a service on a new port. testrpc.WaitForTestAgent(t, a.RPC, "dc1") @@ -271,7 +268,7 @@ func TestConnectExpose_existingConfig(t *testing.T) { // Make sure the ingress config was updated and existing services preserved. entry, _, err := client.ConfigEntries().Get(api.IngressGateway, "ingress", nil) - require.NoError(err) + require.NoError(t, err) entryConf := entry.(*api.IngressGatewayConfigEntry) ingressConf.Listeners = append(ingressConf.Listeners, api.IngressListener{ @@ -290,7 +287,7 @@ func TestConnectExpose_existingConfig(t *testing.T) { } ingressConf.CreateIndex = entry.GetCreateIndex() ingressConf.ModifyIndex = entry.GetModifyIndex() - require.Equal(ingressConf, entry) + require.Equal(t, ingressConf, entry) } // Add an service on a port shared with an existing listener. @@ -315,7 +312,7 @@ func TestConnectExpose_existingConfig(t *testing.T) { // Make sure the ingress config was updated and existing services preserved. entry, _, err := client.ConfigEntries().Get(api.IngressGateway, "ingress", nil) - require.NoError(err) + require.NoError(t, err) entryConf := entry.(*api.IngressGatewayConfigEntry) ingressConf.Listeners[1].Services = append(ingressConf.Listeners[1].Services, api.IngressService{ @@ -326,7 +323,7 @@ func TestConnectExpose_existingConfig(t *testing.T) { }) ingressConf.CreateIndex = entry.GetCreateIndex() ingressConf.ModifyIndex = entry.GetModifyIndex() - require.Equal(ingressConf, entry) + require.Equal(t, ingressConf, entry) } // Update the bar service and add a custom host. @@ -350,11 +347,11 @@ func TestConnectExpose_existingConfig(t *testing.T) { // Make sure the ingress config was updated and existing services preserved. entry, _, err := client.ConfigEntries().Get(api.IngressGateway, "ingress", nil) - require.NoError(err) + require.NoError(t, err) ingressConf.Listeners[1].Services[0].Hosts = []string{"bar.com"} ingressConf.CreateIndex = entry.GetCreateIndex() ingressConf.ModifyIndex = entry.GetModifyIndex() - require.Equal(ingressConf, entry) + require.Equal(t, ingressConf, entry) } } diff --git a/command/connect/proxy/flag_upstreams_test.go b/command/connect/proxy/flag_upstreams_test.go index 03100cc51..7a4eff276 100644 --- a/command/connect/proxy/flag_upstreams_test.go +++ b/command/connect/proxy/flag_upstreams_test.go @@ -103,7 +103,6 @@ func TestFlagUpstreams(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - require := require.New(t) var actual map[string]proxy.UpstreamConfig f := (*FlagUpstreams)(&actual) @@ -115,12 +114,12 @@ func TestFlagUpstreams(t *testing.T) { // test failures confusing but it shouldn't be too bad. } if tc.Error != "" { - require.Error(err) - require.Contains(err.Error(), tc.Error) + require.Error(t, err) + require.Contains(t, err.Error(), tc.Error) return } - require.Equal(tc.Expected, actual) + require.Equal(t, tc.Expected, actual) }) } } diff --git a/command/connect/proxy/proxy_test.go b/command/connect/proxy/proxy_test.go index f6185f627..ae7b1cdfb 100644 --- a/command/connect/proxy/proxy_test.go +++ b/command/connect/proxy/proxy_test.go @@ -114,7 +114,6 @@ func TestCommandConfigWatcher(t *testing.T) { for _, tc := range cases { t.Run(tc.Name, func(t *testing.T) { - require := require.New(t) // Register a few services with 0, 1 and 2 sidecars a := agent.NewTestAgent(t, ` @@ -160,16 +159,16 @@ func TestCommandConfigWatcher(t *testing.T) { "-http-addr=" + a.HTTPAddr(), }, tc.Flags...)) if tc.WantErr == "" { - require.Equal(0, code, ui.ErrorWriter.String()) + require.Equal(t, 0, code, ui.ErrorWriter.String()) } else { - require.Equal(1, code, ui.ErrorWriter.String()) - require.Contains(ui.ErrorWriter.String(), tc.WantErr) + require.Equal(t, 1, code, ui.ErrorWriter.String()) + require.Contains(t, ui.ErrorWriter.String(), tc.WantErr) return } // Get the configuration watcher cw, err := c.configWatcher(client) - require.NoError(err) + require.NoError(t, err) if tc.Test != nil { tc.Test(t, testConfig(t, cw)) } diff --git a/command/connect/proxy/register_test.go b/command/connect/proxy/register_test.go index 7a671bb0e..159bafc9b 100644 --- a/command/connect/proxy/register_test.go +++ b/command/connect/proxy/register_test.go @@ -18,7 +18,6 @@ func TestRegisterMonitor_good(t *testing.T) { } t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() @@ -28,16 +27,16 @@ func TestRegisterMonitor_good(t *testing.T) { defer m.Close() // Verify the settings - require.Equal(api.ServiceKindConnectProxy, service.Kind) - require.Equal("foo", service.Proxy.DestinationServiceName) - require.Equal("127.0.0.1", service.Address) - require.Equal(1234, service.Port) + require.Equal(t, api.ServiceKindConnectProxy, service.Kind) + require.Equal(t, "foo", service.Proxy.DestinationServiceName) + require.Equal(t, "127.0.0.1", service.Address) + require.Equal(t, 1234, service.Port) // Stop should deregister the service - require.NoError(m.Close()) + require.NoError(t, m.Close()) services, err := client.Agent().Services() - require.NoError(err) - require.NotContains(services, m.serviceID()) + require.NoError(t, err) + require.NotContains(t, services, m.serviceID()) } func TestRegisterMonitor_heartbeat(t *testing.T) { diff --git a/command/flags/http_test.go b/command/flags/http_test.go index 867ce2a35..a144ebabd 100644 --- a/command/flags/http_test.go +++ b/command/flags/http_test.go @@ -8,8 +8,7 @@ import ( func TestHTTPFlagsSetToken(t *testing.T) { var f HTTPFlags - require := require.New(t) - require.Empty(f.Token()) - require.NoError(f.SetToken("foo")) - require.Equal("foo", f.Token()) + require.Empty(t, f.Token()) + require.NoError(t, f.SetToken("foo")) + require.Equal(t, "foo", f.Token()) } diff --git a/command/intention/check/check_test.go b/command/intention/check/check_test.go index bbef2e241..729e91354 100644 --- a/command/intention/check/check_test.go +++ b/command/intention/check/check_test.go @@ -46,7 +46,6 @@ func TestIntentionCheck_Validation(t *testing.T) { for name, tc := range cases { t.Run(name, func(t *testing.T) { - require := require.New(t) c.init() @@ -58,9 +57,9 @@ func TestIntentionCheck_Validation(t *testing.T) { ui.OutputWriter.Reset() } - require.Equal(2, c.Run(tc.args)) + require.Equal(t, 2, c.Run(tc.args)) output := ui.ErrorWriter.String() - require.Contains(output, tc.output) + require.Contains(t, output, tc.output) }) } } @@ -72,7 +71,6 @@ func TestIntentionCheck(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -87,7 +85,7 @@ func TestIntentionCheck(t *testing.T) { DestinationName: "db", Action: api.IntentionActionDeny, }, nil) - require.NoError(err) + require.NoError(t, err) } // Get it @@ -99,8 +97,8 @@ func TestIntentionCheck(t *testing.T) { "-http-addr=" + a.HTTPAddr(), "foo", "db", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.OutputWriter.String(), "Allow") + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.OutputWriter.String(), "Allow") } { @@ -111,7 +109,7 @@ func TestIntentionCheck(t *testing.T) { "-http-addr=" + a.HTTPAddr(), "web", "db", } - require.Equal(1, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.OutputWriter.String(), "Denied") + require.Equal(t, 1, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.OutputWriter.String(), "Denied") } } diff --git a/command/intention/create/create_test.go b/command/intention/create/create_test.go index 056f4d269..932dcbd88 100644 --- a/command/intention/create/create_test.go +++ b/command/intention/create/create_test.go @@ -37,7 +37,6 @@ func TestIntentionCreate_Validation(t *testing.T) { for name, tc := range cases { t.Run(name, func(t *testing.T) { - require := require.New(t) c.init() @@ -49,9 +48,9 @@ func TestIntentionCreate_Validation(t *testing.T) { ui.OutputWriter.Reset() } - require.Equal(1, c.Run(tc.args)) + require.Equal(t, 1, c.Run(tc.args)) output := ui.ErrorWriter.String() - require.Contains(output, tc.output) + require.Contains(t, output, tc.output) }) } } @@ -63,7 +62,6 @@ func TestIntentionCreate(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -77,14 +75,14 @@ func TestIntentionCreate(t *testing.T) { "-http-addr=" + a.HTTPAddr(), "foo", "bar", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("foo", ixns[0].SourceName) - require.Equal("bar", ixns[0].DestinationName) - require.Equal(api.IntentionActionAllow, ixns[0].Action) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "foo", ixns[0].SourceName) + require.Equal(t, "bar", ixns[0].DestinationName) + require.Equal(t, api.IntentionActionAllow, ixns[0].Action) } func TestIntentionCreate_deny(t *testing.T) { @@ -94,7 +92,6 @@ func TestIntentionCreate_deny(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -109,14 +106,14 @@ func TestIntentionCreate_deny(t *testing.T) { "-deny", "foo", "bar", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("foo", ixns[0].SourceName) - require.Equal("bar", ixns[0].DestinationName) - require.Equal(api.IntentionActionDeny, ixns[0].Action) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "foo", ixns[0].SourceName) + require.Equal(t, "bar", ixns[0].DestinationName) + require.Equal(t, api.IntentionActionDeny, ixns[0].Action) } func TestIntentionCreate_meta(t *testing.T) { @@ -126,7 +123,6 @@ func TestIntentionCreate_meta(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -141,14 +137,14 @@ func TestIntentionCreate_meta(t *testing.T) { "-meta", "hello=world", "foo", "bar", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("foo", ixns[0].SourceName) - require.Equal("bar", ixns[0].DestinationName) - require.Equal(map[string]string{"hello": "world"}, ixns[0].Meta) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "foo", ixns[0].SourceName) + require.Equal(t, "bar", ixns[0].DestinationName) + require.Equal(t, map[string]string{"hello": "world"}, ixns[0].Meta) } func TestIntentionCreate_File(t *testing.T) { @@ -158,7 +154,6 @@ func TestIntentionCreate_File(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -180,14 +175,14 @@ func TestIntentionCreate_File(t *testing.T) { f.Name(), } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("foo", ixns[0].SourceName) - require.Equal("bar", ixns[0].DestinationName) - require.Equal(api.IntentionActionAllow, ixns[0].Action) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "foo", ixns[0].SourceName) + require.Equal(t, "bar", ixns[0].DestinationName) + require.Equal(t, api.IntentionActionAllow, ixns[0].Action) } func TestIntentionCreate_File_L7_fails(t *testing.T) { @@ -197,7 +192,6 @@ func TestIntentionCreate_File_L7_fails(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() @@ -231,8 +225,8 @@ func TestIntentionCreate_File_L7_fails(t *testing.T) { f.Name(), } - require.Equal(1, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.ErrorWriter.String(), "cannot create L7 intention from file") + require.Equal(t, 1, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.ErrorWriter.String(), "cannot create L7 intention from file") } func TestIntentionCreate_FileNoExist(t *testing.T) { @@ -242,7 +236,6 @@ func TestIntentionCreate_FileNoExist(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() @@ -257,8 +250,8 @@ func TestIntentionCreate_FileNoExist(t *testing.T) { "shouldnotexist.txt", } - require.Equal(1, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.ErrorWriter.String(), "no such file") + require.Equal(t, 1, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.ErrorWriter.String(), "no such file") } func TestIntentionCreate_replace(t *testing.T) { @@ -268,7 +261,6 @@ func TestIntentionCreate_replace(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -284,14 +276,14 @@ func TestIntentionCreate_replace(t *testing.T) { "-http-addr=" + a.HTTPAddr(), "foo", "bar", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("foo", ixns[0].SourceName) - require.Equal("bar", ixns[0].DestinationName) - require.Equal(api.IntentionActionAllow, ixns[0].Action) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "foo", ixns[0].SourceName) + require.Equal(t, "bar", ixns[0].DestinationName) + require.Equal(t, api.IntentionActionAllow, ixns[0].Action) } // Don't replace, should be an error @@ -304,8 +296,8 @@ func TestIntentionCreate_replace(t *testing.T) { "-deny", "foo", "bar", } - require.Equal(1, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.ErrorWriter.String(), "more than once") + require.Equal(t, 1, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.ErrorWriter.String(), "more than once") } // Replace it @@ -319,13 +311,13 @@ func TestIntentionCreate_replace(t *testing.T) { "-deny", "foo", "bar", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) ixns, _, err := client.Connect().Intentions(nil) - require.NoError(err) - require.Len(ixns, 1) - require.Equal("foo", ixns[0].SourceName) - require.Equal("bar", ixns[0].DestinationName) - require.Equal(api.IntentionActionDeny, ixns[0].Action) + require.NoError(t, err) + require.Len(t, ixns, 1) + require.Equal(t, "foo", ixns[0].SourceName) + require.Equal(t, "bar", ixns[0].DestinationName) + require.Equal(t, api.IntentionActionDeny, ixns[0].Action) } } diff --git a/command/intention/get/get_test.go b/command/intention/get/get_test.go index 851bb51aa..2b06855f7 100644 --- a/command/intention/get/get_test.go +++ b/command/intention/get/get_test.go @@ -43,7 +43,6 @@ func TestIntentionGet_Validation(t *testing.T) { for name, tc := range cases { t.Run(name, func(t *testing.T) { - require := require.New(t) c.init() @@ -55,9 +54,9 @@ func TestIntentionGet_Validation(t *testing.T) { ui.OutputWriter.Reset() } - require.Equal(1, c.Run(tc.args)) + require.Equal(t, 1, c.Run(tc.args)) output := ui.ErrorWriter.String() - require.Contains(output, tc.output) + require.Contains(t, output, tc.output) }) } } @@ -69,7 +68,6 @@ func TestIntentionGet_id(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -86,7 +84,7 @@ func TestIntentionGet_id(t *testing.T) { DestinationName: "db", Action: api.IntentionActionAllow, }, nil) - require.NoError(err) + require.NoError(t, err) } // Get it @@ -97,8 +95,8 @@ func TestIntentionGet_id(t *testing.T) { "-http-addr=" + a.HTTPAddr(), id, } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.OutputWriter.String(), id) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.OutputWriter.String(), id) } func TestIntentionGet_srcDst(t *testing.T) { @@ -108,7 +106,6 @@ func TestIntentionGet_srcDst(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -125,7 +122,7 @@ func TestIntentionGet_srcDst(t *testing.T) { DestinationName: "db", Action: api.IntentionActionAllow, }, nil) - require.NoError(err) + require.NoError(t, err) } // Get it @@ -136,8 +133,8 @@ func TestIntentionGet_srcDst(t *testing.T) { "-http-addr=" + a.HTTPAddr(), "web", "db", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.OutputWriter.String(), id) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.OutputWriter.String(), id) } func TestIntentionGet_verticalBar(t *testing.T) { @@ -147,7 +144,6 @@ func TestIntentionGet_verticalBar(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -166,7 +162,7 @@ func TestIntentionGet_verticalBar(t *testing.T) { DestinationName: "db", Action: api.IntentionActionAllow, }, nil) - require.NoError(err) + require.NoError(t, err) } // Get it @@ -177,9 +173,9 @@ func TestIntentionGet_verticalBar(t *testing.T) { "-http-addr=" + a.HTTPAddr(), id, } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) // Check for sourceName presense because it should not be parsed by // columnize - require.Contains(ui.OutputWriter.String(), sourceName) + require.Contains(t, ui.OutputWriter.String(), sourceName) } diff --git a/command/intention/match/match_test.go b/command/intention/match/match_test.go index 684923059..1c91bfd33 100644 --- a/command/intention/match/match_test.go +++ b/command/intention/match/match_test.go @@ -46,7 +46,6 @@ func TestIntentionMatch_Validation(t *testing.T) { for name, tc := range cases { t.Run(name, func(t *testing.T) { - require := require.New(t) c.init() @@ -58,9 +57,9 @@ func TestIntentionMatch_Validation(t *testing.T) { ui.OutputWriter.Reset() } - require.Equal(1, c.Run(tc.args)) + require.Equal(t, 1, c.Run(tc.args)) output := ui.ErrorWriter.String() - require.Contains(output, tc.output) + require.Contains(t, output, tc.output) }) } } @@ -72,7 +71,6 @@ func TestIntentionMatch_matchDst(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -94,8 +92,8 @@ func TestIntentionMatch_matchDst(t *testing.T) { DestinationName: v[1], Action: api.IntentionActionDeny, }, nil) - require.NoError(err) - require.NotEmpty(id) + require.NoError(t, err) + require.NotEmpty(t, id) } } @@ -108,10 +106,10 @@ func TestIntentionMatch_matchDst(t *testing.T) { "-http-addr=" + a.HTTPAddr(), "db", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.OutputWriter.String(), "web") - require.Contains(ui.OutputWriter.String(), "db") - require.Contains(ui.OutputWriter.String(), "*") + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.OutputWriter.String(), "web") + require.Contains(t, ui.OutputWriter.String(), "db") + require.Contains(t, ui.OutputWriter.String(), "*") } } @@ -122,7 +120,6 @@ func TestIntentionMatch_matchSource(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -144,8 +141,8 @@ func TestIntentionMatch_matchSource(t *testing.T) { DestinationName: v[1], Action: api.IntentionActionDeny, }, nil) - require.NoError(err) - require.NotEmpty(id) + require.NoError(t, err) + require.NotEmpty(t, id) } } @@ -159,8 +156,8 @@ func TestIntentionMatch_matchSource(t *testing.T) { "-source", "foo", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) - require.Contains(ui.OutputWriter.String(), "db") - require.NotContains(ui.OutputWriter.String(), "web") + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) + require.Contains(t, ui.OutputWriter.String(), "db") + require.NotContains(t, ui.OutputWriter.String(), "web") } } diff --git a/command/services/config_test.go b/command/services/config_test.go index daf05c6cb..010df6679 100644 --- a/command/services/config_test.go +++ b/command/services/config_test.go @@ -176,10 +176,9 @@ func TestStructsToAgentService(t *testing.T) { tc := tt t.Run(tc.Name, func(t *testing.T) { t.Parallel() - require := require.New(t) actual, err := serviceToAgentService(tc.Input) - require.NoError(err) - require.Equal(tc.Output, actual) + require.NoError(t, err) + require.Equal(t, tc.Output, actual) }) } } diff --git a/command/services/deregister/deregister_test.go b/command/services/deregister/deregister_test.go index 09c61fc8b..b2b7cf577 100644 --- a/command/services/deregister/deregister_test.go +++ b/command/services/deregister/deregister_test.go @@ -41,7 +41,6 @@ func TestCommand_Validation(t *testing.T) { for name, tc := range cases { t.Run(name, func(t *testing.T) { - require := require.New(t) c.init() @@ -53,9 +52,9 @@ func TestCommand_Validation(t *testing.T) { ui.OutputWriter.Reset() } - require.Equal(1, c.Run(tc.args)) + require.Equal(t, 1, c.Run(tc.args)) output := ui.ErrorWriter.String() - require.Contains(output, tc.output) + require.Contains(t, output, tc.output) }) } } @@ -67,15 +66,14 @@ func TestCommand_File_id(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() // Register a service - require.NoError(client.Agent().ServiceRegister(&api.AgentServiceRegistration{ + require.NoError(t, client.Agent().ServiceRegister(&api.AgentServiceRegistration{ Name: "web"})) - require.NoError(client.Agent().ServiceRegister(&api.AgentServiceRegistration{ + require.NoError(t, client.Agent().ServiceRegister(&api.AgentServiceRegistration{ Name: "db"})) ui := cli.NewMockUi() @@ -93,12 +91,12 @@ func TestCommand_File_id(t *testing.T) { f.Name(), } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) - require.NotNil(svcs["db"]) + require.NoError(t, err) + require.Len(t, svcs, 1) + require.NotNil(t, svcs["db"]) } func TestCommand_File_nameOnly(t *testing.T) { @@ -108,15 +106,14 @@ func TestCommand_File_nameOnly(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() // Register a service - require.NoError(client.Agent().ServiceRegister(&api.AgentServiceRegistration{ + require.NoError(t, client.Agent().ServiceRegister(&api.AgentServiceRegistration{ Name: "web"})) - require.NoError(client.Agent().ServiceRegister(&api.AgentServiceRegistration{ + require.NoError(t, client.Agent().ServiceRegister(&api.AgentServiceRegistration{ Name: "db"})) ui := cli.NewMockUi() @@ -134,12 +131,12 @@ func TestCommand_File_nameOnly(t *testing.T) { f.Name(), } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) - require.NotNil(svcs["db"]) + require.NoError(t, err) + require.Len(t, svcs, 1) + require.NotNil(t, svcs["db"]) } func TestCommand_Flag(t *testing.T) { @@ -149,15 +146,14 @@ func TestCommand_Flag(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() // Register a service - require.NoError(client.Agent().ServiceRegister(&api.AgentServiceRegistration{ + require.NoError(t, client.Agent().ServiceRegister(&api.AgentServiceRegistration{ Name: "web"})) - require.NoError(client.Agent().ServiceRegister(&api.AgentServiceRegistration{ + require.NoError(t, client.Agent().ServiceRegister(&api.AgentServiceRegistration{ Name: "db"})) ui := cli.NewMockUi() @@ -168,12 +164,12 @@ func TestCommand_Flag(t *testing.T) { "-id", "web", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) - require.NotNil(svcs["db"]) + require.NoError(t, err) + require.Len(t, svcs, 1) + require.NotNil(t, svcs["db"]) } func testFile(t *testing.T, suffix string) *os.File { diff --git a/command/services/register/register_test.go b/command/services/register/register_test.go index c3c3b5ec3..80badaaad 100644 --- a/command/services/register/register_test.go +++ b/command/services/register/register_test.go @@ -40,7 +40,6 @@ func TestCommand_Validation(t *testing.T) { for name, tc := range cases { t.Run(name, func(t *testing.T) { - require := require.New(t) c.init() @@ -52,9 +51,9 @@ func TestCommand_Validation(t *testing.T) { ui.OutputWriter.Reset() } - require.Equal(1, c.Run(tc.args)) + require.Equal(t, 1, c.Run(tc.args)) output := ui.ErrorWriter.String() - require.Contains(output, tc.output) + require.Contains(t, output, tc.output) }) } } @@ -66,7 +65,6 @@ func TestCommand_File(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -86,14 +84,14 @@ func TestCommand_File(t *testing.T) { f.Name(), } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) + require.NoError(t, err) + require.Len(t, svcs, 1) svc := svcs["web"] - require.NotNil(svc) + require.NotNil(t, svc) } func TestCommand_Flags(t *testing.T) { @@ -103,7 +101,6 @@ func TestCommand_Flags(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -116,14 +113,14 @@ func TestCommand_Flags(t *testing.T) { "-name", "web", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) + require.NoError(t, err) + require.Len(t, svcs, 1) svc := svcs["web"] - require.NotNil(svc) + require.NotNil(t, svc) } func TestCommand_Flags_TaggedAddresses(t *testing.T) { @@ -133,7 +130,6 @@ func TestCommand_Flags_TaggedAddresses(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -148,21 +144,21 @@ func TestCommand_Flags_TaggedAddresses(t *testing.T) { "-tagged-address", "v6=[2001:db8::12]:1234", } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) + require.NoError(t, err) + require.Len(t, svcs, 1) svc := svcs["web"] - require.NotNil(svc) - require.Len(svc.TaggedAddresses, 2) - require.Contains(svc.TaggedAddresses, "lan") - require.Contains(svc.TaggedAddresses, "v6") - require.Equal(svc.TaggedAddresses["lan"].Address, "127.0.0.1") - require.Equal(svc.TaggedAddresses["lan"].Port, 1234) - require.Equal(svc.TaggedAddresses["v6"].Address, "2001:db8::12") - require.Equal(svc.TaggedAddresses["v6"].Port, 1234) + require.NotNil(t, svc) + require.Len(t, svc.TaggedAddresses, 2) + require.Contains(t, svc.TaggedAddresses, "lan") + require.Contains(t, svc.TaggedAddresses, "v6") + require.Equal(t, svc.TaggedAddresses["lan"].Address, "127.0.0.1") + require.Equal(t, svc.TaggedAddresses["lan"].Port, 1234) + require.Equal(t, svc.TaggedAddresses["v6"].Address, "2001:db8::12") + require.Equal(t, svc.TaggedAddresses["v6"].Port, 1234) } func TestCommand_FileWithUnnamedCheck(t *testing.T) { @@ -172,7 +168,6 @@ func TestCommand_FileWithUnnamedCheck(t *testing.T) { t.Parallel() - require := require.New(t) a := agent.NewTestAgent(t, ``) defer a.Shutdown() client := a.Client() @@ -192,18 +187,18 @@ func TestCommand_FileWithUnnamedCheck(t *testing.T) { f.Name(), } - require.Equal(0, c.Run(args), ui.ErrorWriter.String()) + require.Equal(t, 0, c.Run(args), ui.ErrorWriter.String()) svcs, err := client.Agent().Services() - require.NoError(err) - require.Len(svcs, 1) + require.NoError(t, err) + require.Len(t, svcs, 1) svc := svcs["web"] - require.NotNil(svc) + require.NotNil(t, svc) checks, err := client.Agent().Checks() - require.NoError(err) - require.Len(checks, 1) + require.NoError(t, err) + require.Len(t, checks, 1) } func testFile(t *testing.T, suffix string) *os.File { diff --git a/connect/resolver_test.go b/connect/resolver_test.go index 7057bf082..ba082c96b 100644 --- a/connect/resolver_test.go +++ b/connect/resolver_test.go @@ -32,10 +32,9 @@ func TestStaticResolver_Resolve(t *testing.T) { CertURI: tt.fields.CertURI, } addr, certURI, err := sr.Resolve(context.Background()) - require := require.New(t) - require.Nil(err) - require.Equal(sr.Addr, addr) - require.Equal(sr.CertURI, certURI) + require.Nil(t, err) + require.Equal(t, sr.Addr, addr) + require.Equal(t, sr.CertURI, certURI) }) } } @@ -201,7 +200,6 @@ func TestConsulResolver_Resolve(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) cr := &ConsulResolver{ Client: client, Namespace: tt.fields.Namespace, @@ -218,14 +216,14 @@ func TestConsulResolver_Resolve(t *testing.T) { defer cancel() gotAddr, gotCertURI, err := cr.Resolve(ctx) if tt.wantErr { - require.NotNil(err) + require.NotNil(t, err) return } - require.Nil(err) - require.Equal(tt.wantCertURI, gotCertURI) + require.Nil(t, err) + require.Equal(t, tt.wantCertURI, gotCertURI) if len(tt.addrs) > 0 { - require.Contains(tt.addrs, gotAddr) + require.Contains(t, tt.addrs, gotAddr) } }) } @@ -323,16 +321,15 @@ func TestConsulResolverFromAddrFunc(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) fn := ConsulResolverFromAddrFunc(client) got, gotErr := fn(tt.addr) if tt.wantErr != "" { - require.Error(gotErr) - require.Contains(gotErr.Error(), tt.wantErr) + require.Error(t, gotErr) + require.Contains(t, gotErr.Error(), tt.wantErr) } else { - require.NoError(gotErr) - require.Equal(tt.want, got) + require.NoError(t, gotErr) + require.Equal(t, tt.want, got) } }) } diff --git a/connect/service_test.go b/connect/service_test.go index 9fe2b37e0..1897a9097 100644 --- a/connect/service_test.go +++ b/connect/service_test.go @@ -77,7 +77,6 @@ func TestService_Dial(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) s := TestService(t, "web", ca) @@ -91,7 +90,7 @@ func TestService_Dial(t *testing.T) { if tt.accept { go func() { err := testSvr.Serve() - require.NoError(err) + require.NoError(t, err) }() <-testSvr.Listening defer testSvr.Close() @@ -114,11 +113,11 @@ func TestService_Dial(t *testing.T) { testTimer.Stop() if tt.wantErr == "" { - require.NoError(err) - require.IsType(&tls.Conn{}, conn) + require.NoError(t, err) + require.IsType(t, &tls.Conn{}, conn) } else { - require.Error(err) - require.Contains(err.Error(), tt.wantErr) + require.Error(t, err) + require.Contains(t, err.Error(), tt.wantErr) } if err == nil { @@ -133,8 +132,6 @@ func TestService_ServerTLSConfig(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - a := agent.StartTestAgent(t, agent.TestAgent{Name: "007", Overrides: ` connect { test_ca_leaf_root_change_spread = "1ns" @@ -153,12 +150,12 @@ func TestService_ServerTLSConfig(t *testing.T) { Port: 8080, } err := agent.ServiceRegister(reg) - require.NoError(err) + require.NoError(t, err) // Now we should be able to create a service that will eventually get it's TLS // all by itself! service, err := NewService("web", client) - require.NoError(err) + require.NoError(t, err) // Wait for it to be ready select { @@ -172,17 +169,17 @@ func TestService_ServerTLSConfig(t *testing.T) { // Sanity check it has a leaf with the right ServiceID and that validates with // the given roots. - require.NotNil(tlsCfg.GetCertificate) + require.NotNil(t, tlsCfg.GetCertificate) leaf, err := tlsCfg.GetCertificate(&tls.ClientHelloInfo{}) - require.NoError(err) + require.NoError(t, err) cert, err := x509.ParseCertificate(leaf.Certificate[0]) - require.NoError(err) - require.Len(cert.URIs, 1) - require.True(strings.HasSuffix(cert.URIs[0].String(), "/svc/web")) + require.NoError(t, err) + require.Len(t, cert.URIs, 1) + require.True(t, strings.HasSuffix(cert.URIs[0].String(), "/svc/web")) // Verify it as a client would err = clientSideVerifier(tlsCfg, leaf.Certificate) - require.NoError(err) + require.NoError(t, err) // Now test that rotating the root updates { @@ -242,7 +239,7 @@ func TestService_HTTPClient(t *testing.T) { // Hook the service resolver to avoid needing full agent setup. s.httpResolverFromAddr = func(addr string) (Resolver, error) { // Require in this goroutine seems to block causing a timeout on the Get. - //require.Equal("https://backend.service.consul:443", addr) + //require.Equal(t,"https://backend.service.consul:443", addr) return &StaticResolver{ Addr: testSvr.Addr, CertURI: connect.TestSpiffeIDService(t, "backend"), diff --git a/connect/tls_test.go b/connect/tls_test.go index fe35229d8..46d20a466 100644 --- a/connect/tls_test.go +++ b/connect/tls_test.go @@ -123,13 +123,12 @@ func TestClientSideVerifier(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - require := require.New(t) err := clientSideVerifier(tt.tlsCfg, tt.rawCerts) if tt.wantErr == "" { - require.Nil(err) + require.Nil(t, err) } else { - require.NotNil(err) - require.Contains(err.Error(), tt.wantErr) + require.NotNil(t, err) + require.Contains(t, err.Error(), tt.wantErr) } }) } @@ -265,33 +264,32 @@ func TestServerSideVerifier(t *testing.T) { // cmp.Diff fail on tls.Config due to unexported fields in each. expectLeaf // allows expecting a leaf cert different from the one in expect func requireEqualTLSConfig(t *testing.T, expect, got *tls.Config) { - require := require.New(t) - require.Equal(expect.RootCAs, got.RootCAs) + require.Equal(t, expect.RootCAs, got.RootCAs) assertDeepEqual(t, expect.ClientCAs, got.ClientCAs, cmpCertPool) - require.Equal(expect.InsecureSkipVerify, got.InsecureSkipVerify) - require.Equal(expect.MinVersion, got.MinVersion) - require.Equal(expect.CipherSuites, got.CipherSuites) - require.NotNil(got.GetCertificate) - require.NotNil(got.GetClientCertificate) - require.NotNil(got.GetConfigForClient) - require.Contains(got.NextProtos, "h2") + require.Equal(t, expect.InsecureSkipVerify, got.InsecureSkipVerify) + require.Equal(t, expect.MinVersion, got.MinVersion) + require.Equal(t, expect.CipherSuites, got.CipherSuites) + require.NotNil(t, got.GetCertificate) + require.NotNil(t, got.GetClientCertificate) + require.NotNil(t, got.GetConfigForClient) + require.Contains(t, got.NextProtos, "h2") var expectLeaf *tls.Certificate var err error if expect.GetCertificate != nil { expectLeaf, err = expect.GetCertificate(nil) - require.Nil(err) + require.Nil(t, err) } else if len(expect.Certificates) > 0 { expectLeaf = &expect.Certificates[0] } gotLeaf, err := got.GetCertificate(nil) - require.Nil(err) - require.Equal(expectLeaf, gotLeaf) + require.Nil(t, err) + require.Equal(t, expectLeaf, gotLeaf) gotLeaf, err = got.GetClientCertificate(nil) - require.Nil(err) - require.Equal(expectLeaf, gotLeaf) + require.Nil(t, err) + require.Equal(t, expectLeaf, gotLeaf) } // cmpCertPool is a custom comparison for x509.CertPool, because CertPool.lazyCerts @@ -324,7 +322,6 @@ func requireCorrectVerifier(t *testing.T, expect, got *tls.Config, } func TestDynamicTLSConfig(t *testing.T) { - require := require.New(t) ca1 := connect.TestCA(t, nil) ca2 := connect.TestCA(t, nil) @@ -334,8 +331,8 @@ func TestDynamicTLSConfig(t *testing.T) { c := newDynamicTLSConfig(baseCfg, nil) // Should set them from the base config - require.Equal(c.Leaf(), &baseCfg.Certificates[0]) - require.Equal(c.Roots(), baseCfg.RootCAs) + require.Equal(t, c.Leaf(), &baseCfg.Certificates[0]) + require.Equal(t, c.Roots(), baseCfg.RootCAs) // Create verifiers we can assert are set and run correctly. v1Ch := make(chan *tls.Config, 1) @@ -361,7 +358,7 @@ func TestDynamicTLSConfig(t *testing.T) { // Now change the roots as if we just loaded new roots from Consul err := c.SetRoots(newCfg.RootCAs) - require.Nil(err) + require.Nil(t, err) // The dynamic config should have the new roots, but old leaf gotAfter := c.Get(verify2) @@ -378,7 +375,7 @@ func TestDynamicTLSConfig(t *testing.T) { // Now change the leaf err = c.SetLeaf(&newCfg.Certificates[0]) - require.Nil(err) + require.Nil(t, err) // The dynamic config should have the new roots, AND new leaf gotAfterLeaf := c.Get(verify3) @@ -392,7 +389,6 @@ func TestDynamicTLSConfig(t *testing.T) { } func TestDynamicTLSConfig_Ready(t *testing.T) { - require := require.New(t) ca1 := connect.TestCA(t, nil) baseCfg := TestTLSConfig(t, "web", ca1) @@ -400,28 +396,28 @@ func TestDynamicTLSConfig_Ready(t *testing.T) { c := newDynamicTLSConfig(defaultTLSConfig(), nil) readyCh := c.ReadyWait() assertBlocked(t, readyCh) - require.False(c.Ready(), "no roots or leaf, should not be ready") + require.False(t, c.Ready(), "no roots or leaf, should not be ready") err := c.SetLeaf(&baseCfg.Certificates[0]) - require.NoError(err) + require.NoError(t, err) assertBlocked(t, readyCh) - require.False(c.Ready(), "no roots, should not be ready") + require.False(t, c.Ready(), "no roots, should not be ready") err = c.SetRoots(baseCfg.RootCAs) - require.NoError(err) + require.NoError(t, err) assertNotBlocked(t, readyCh) - require.True(c.Ready(), "should be ready") + require.True(t, c.Ready(), "should be ready") ca2 := connect.TestCA(t, nil) ca2cfg := TestTLSConfig(t, "web", ca2) - require.NoError(c.SetRoots(ca2cfg.RootCAs)) + require.NoError(t, c.SetRoots(ca2cfg.RootCAs)) assertNotBlocked(t, readyCh) - require.False(c.Ready(), "invalid leaf, should not be ready") + require.False(t, c.Ready(), "invalid leaf, should not be ready") - require.NoError(c.SetRoots(baseCfg.RootCAs)) + require.NoError(t, c.SetRoots(baseCfg.RootCAs)) assertNotBlocked(t, readyCh) - require.True(c.Ready(), "should be ready") + require.True(t, c.Ready(), "should be ready") } func assertBlocked(t *testing.T, ch <-chan struct{}) { diff --git a/lib/file/atomic_test.go b/lib/file/atomic_test.go index 5be41f245..8645b2d45 100644 --- a/lib/file/atomic_test.go +++ b/lib/file/atomic_test.go @@ -13,9 +13,8 @@ import ( // tests that it just writes the file properly. I would love to test this // better but I'm not sure how. -mitchellh func TestWriteAtomic(t *testing.T) { - require := require.New(t) td, err := ioutil.TempDir("", "lib-file") - require.NoError(err) + require.NoError(t, err) defer os.RemoveAll(td) // Create a subdir that doesn't exist to test that it is created @@ -23,10 +22,10 @@ func TestWriteAtomic(t *testing.T) { // Write expected := []byte("hello") - require.NoError(WriteAtomic(path, expected)) + require.NoError(t, WriteAtomic(path, expected)) // Read and verify actual, err := ioutil.ReadFile(path) - require.NoError(err) - require.Equal(expected, actual) + require.NoError(t, err) + require.Equal(t, expected, actual) } diff --git a/logging/logger_test.go b/logging/logger_test.go index babff2a1a..bfd026465 100644 --- a/logging/logger_test.go +++ b/logging/logger_test.go @@ -12,12 +12,11 @@ import ( ) func TestLogger_SetupBasic(t *testing.T) { - require := require.New(t) cfg := Config{LogLevel: "INFO"} logger, err := Setup(cfg, nil) - require.NoError(err) - require.NotNil(logger) + require.NoError(t, err) + require.NotNil(t, logger) } func TestLogger_SetupInvalidLogLevel(t *testing.T) { @@ -52,44 +51,41 @@ func TestLogger_SetupLoggerErrorLevel(t *testing.T) { var cfg Config c.before(&cfg) - require := require.New(t) var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.NoError(err) - require.NotNil(logger) + require.NoError(t, err) + require.NotNil(t, logger) logger.Error("test error msg") logger.Info("test info msg") output := buf.String() - require.Contains(output, "[ERROR] test error msg") - require.NotContains(output, "[INFO] test info msg") + require.Contains(t, output, "[ERROR] test error msg") + require.NotContains(t, output, "[INFO] test info msg") }) } } func TestLogger_SetupLoggerDebugLevel(t *testing.T) { - require := require.New(t) cfg := Config{LogLevel: "DEBUG"} var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.NoError(err) - require.NotNil(logger) + require.NoError(t, err) + require.NotNil(t, logger) logger.Info("test info msg") logger.Debug("test debug msg") output := buf.String() - require.Contains(output, "[INFO] test info msg") - require.Contains(output, "[DEBUG] test debug msg") + require.Contains(t, output, "[INFO] test info msg") + require.Contains(t, output, "[DEBUG] test debug msg") } func TestLogger_SetupLoggerWithName(t *testing.T) { - require := require.New(t) cfg := Config{ LogLevel: "DEBUG", Name: "test-system", @@ -97,16 +93,15 @@ func TestLogger_SetupLoggerWithName(t *testing.T) { var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.NoError(err) - require.NotNil(logger) + require.NoError(t, err) + require.NotNil(t, logger) logger.Warn("test warn msg") - require.Contains(buf.String(), "[WARN] test-system: test warn msg") + require.Contains(t, buf.String(), "[WARN] test-system: test warn msg") } func TestLogger_SetupLoggerWithJSON(t *testing.T) { - require := require.New(t) cfg := Config{ LogLevel: "DEBUG", LogJSON: true, @@ -115,22 +110,21 @@ func TestLogger_SetupLoggerWithJSON(t *testing.T) { var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.NoError(err) - require.NotNil(logger) + require.NoError(t, err) + require.NotNil(t, logger) logger.Warn("test warn msg") var jsonOutput map[string]string err = json.Unmarshal(buf.Bytes(), &jsonOutput) - require.NoError(err) - require.Contains(jsonOutput, "@level") - require.Equal(jsonOutput["@level"], "warn") - require.Contains(jsonOutput, "@message") - require.Equal(jsonOutput["@message"], "test warn msg") + require.NoError(t, err) + require.Contains(t, jsonOutput, "@level") + require.Equal(t, jsonOutput["@level"], "warn") + require.Contains(t, jsonOutput, "@message") + require.Equal(t, jsonOutput["@message"], "test warn msg") } func TestLogger_SetupLoggerWithValidLogPath(t *testing.T) { - require := require.New(t) tmpDir := testutil.TempDir(t, t.Name()) @@ -141,12 +135,11 @@ func TestLogger_SetupLoggerWithValidLogPath(t *testing.T) { var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.NoError(err) - require.NotNil(logger) + require.NoError(t, err) + require.NotNil(t, logger) } func TestLogger_SetupLoggerWithInValidLogPath(t *testing.T) { - require := require.New(t) cfg := Config{ LogLevel: "INFO", @@ -155,13 +148,12 @@ func TestLogger_SetupLoggerWithInValidLogPath(t *testing.T) { var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.Error(err) - require.True(errors.Is(err, os.ErrNotExist)) - require.Nil(logger) + require.Error(t, err) + require.True(t, errors.Is(err, os.ErrNotExist)) + require.Nil(t, logger) } func TestLogger_SetupLoggerWithInValidLogPathPermission(t *testing.T) { - require := require.New(t) tmpDir := "/tmp/" + t.Name() @@ -175,7 +167,7 @@ func TestLogger_SetupLoggerWithInValidLogPathPermission(t *testing.T) { var buf bytes.Buffer logger, err := Setup(cfg, &buf) - require.Error(err) - require.True(errors.Is(err, os.ErrPermission)) - require.Nil(logger) + require.Error(t, err) + require.True(t, errors.Is(err, os.ErrPermission)) + require.Nil(t, logger) } diff --git a/logging/monitor/monitor_test.go b/logging/monitor/monitor_test.go index c12518f22..a8b02aed1 100644 --- a/logging/monitor/monitor_test.go +++ b/logging/monitor/monitor_test.go @@ -10,7 +10,6 @@ import ( ) func TestMonitor_Start(t *testing.T) { - require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ Level: log.Error, @@ -31,7 +30,7 @@ func TestMonitor_Start(t *testing.T) { for { select { case log := <-logCh: - require.Contains(string(log), "[DEBUG] test log") + require.Contains(t, string(log), "[DEBUG] test log") return case <-time.After(3 * time.Second): t.Fatal("Expected to receive from log channel") @@ -44,8 +43,6 @@ func TestMonitor_Stop(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - logger := log.NewInterceptLogger(&log.LoggerOptions{ Level: log.Error, }) @@ -60,7 +57,7 @@ func TestMonitor_Stop(t *testing.T) { logCh := m.Start() logger.Debug("test log") - require.Eventually(func() bool { + require.Eventually(t, func() bool { return len(logCh) == 1 }, 3*time.Second, 100*time.Millisecond, "expected logCh to have 1 log in it") @@ -73,7 +70,7 @@ func TestMonitor_Stop(t *testing.T) { select { case log := <-logCh: if string(log) != "" { - require.Contains(string(log), "[DEBUG] test log") + require.Contains(t, string(log), "[DEBUG] test log") } else { return } @@ -88,8 +85,6 @@ func TestMonitor_DroppedMessages(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - logger := log.NewInterceptLogger(&log.LoggerOptions{ Level: log.Warn, }) @@ -118,7 +113,7 @@ func TestMonitor_DroppedMessages(t *testing.T) { } // Make sure we do not stop before the goroutines have time to process. - require.Eventually(func() bool { + require.Eventually(t, func() bool { return len(logCh) == mcfg.BufferSize }, 3*time.Second, 100*time.Millisecond, "expected logCh to have a full log buffer") @@ -126,7 +121,7 @@ func TestMonitor_DroppedMessages(t *testing.T) { // The number of dropped messages is non-deterministic, so we only assert // that we dropped at least 1. - require.GreaterOrEqual(dropped, 1) + require.GreaterOrEqual(t, dropped, 1) } func TestMonitor_ZeroBufSizeDefault(t *testing.T) { @@ -134,8 +129,6 @@ func TestMonitor_ZeroBufSizeDefault(t *testing.T) { t.Skip("too slow for testing.Short") } - require := require.New(t) - logger := log.NewInterceptLogger(&log.LoggerOptions{ Level: log.Error, }) @@ -154,14 +147,14 @@ func TestMonitor_ZeroBufSizeDefault(t *testing.T) { // If we do not default the buffer size, the monitor will be unable to buffer // a log line. - require.Eventually(func() bool { + require.Eventually(t, func() bool { return len(logCh) == 1 }, 3*time.Second, 100*time.Millisecond, "expected logCh to have 1 log buffered") for { select { case log := <-logCh: - require.Contains(string(log), "[DEBUG] test log") + require.Contains(t, string(log), "[DEBUG] test log") return case <-time.After(3 * time.Second): t.Fatal("Expected to receive from log channel") @@ -170,7 +163,6 @@ func TestMonitor_ZeroBufSizeDefault(t *testing.T) { } func TestMonitor_WriteStopped(t *testing.T) { - require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ Level: log.Error, @@ -183,6 +175,6 @@ func TestMonitor_WriteStopped(t *testing.T) { mwriter.Stop() n, err := mwriter.Write([]byte("write after close")) - require.Equal(n, 0) - require.EqualError(err, "monitor stopped") + require.Equal(t, n, 0) + require.EqualError(t, err, "monitor stopped") } From d81889bb41bc096ee4f4118d944b1be5727736aa Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 15:36:16 -0800 Subject: [PATCH 283/404] docs: Avoid redirects by pointing links to new URLs Avoid HTTP redirects for internal site links by updating old URLs to point to the new location for the target content. --- website/components/footer/index.jsx | 2 +- website/content/api-docs/acl/auth-methods.mdx | 6 +-- website/content/api-docs/acl/index.mdx | 10 ++-- website/content/api-docs/acl/legacy.mdx | 4 +- website/content/api-docs/acl/policies.mdx | 4 +- website/content/api-docs/acl/roles.mdx | 8 +-- website/content/api-docs/acl/tokens.mdx | 8 +-- website/content/api-docs/agent/check.mdx | 2 +- website/content/api-docs/agent/index.mdx | 2 +- website/content/api-docs/agent/service.mdx | 22 ++++---- website/content/api-docs/catalog.mdx | 8 +-- website/content/api-docs/coordinate.mdx | 2 +- website/content/api-docs/discovery-chain.mdx | 8 +-- website/content/api-docs/event.mdx | 4 +- website/content/api-docs/health.mdx | 2 +- website/content/api-docs/index.mdx | 2 +- website/content/api-docs/operator/area.mdx | 2 +- website/content/api-docs/operator/index.mdx | 2 +- website/content/api-docs/operator/keyring.mdx | 2 +- website/content/api-docs/operator/raft.mdx | 2 +- website/content/api-docs/query.mdx | 6 +-- website/content/api-docs/snapshot.mdx | 2 +- website/content/commands/acl/index.mdx | 2 +- website/content/commands/agent.mdx | 2 +- website/content/commands/connect/expose.mdx | 2 +- website/content/commands/event.mdx | 6 +-- website/content/commands/exec.mdx | 2 +- website/content/commands/index.mdx | 2 +- website/content/commands/info.mdx | 6 +-- website/content/commands/keygen.mdx | 2 +- website/content/commands/keyring.mdx | 2 +- website/content/commands/operator/area.mdx | 2 +- website/content/commands/rtt.mdx | 2 +- .../content/commands/services/deregister.mdx | 2 +- website/content/commands/services/index.mdx | 2 +- .../content/commands/services/register.mdx | 4 +- website/content/commands/watch.mdx | 4 +- website/content/docs/agent/index.mdx | 4 +- website/content/docs/agent/options.mdx | 18 +++---- website/content/docs/agent/sentinel.mdx | 2 +- .../docs/architecture/anti-entropy.mdx | 8 +-- website/content/docs/architecture/index.mdx | 10 ++-- .../config-entries/ingress-gateway.mdx | 2 +- .../connect/config-entries/proxy-defaults.mdx | 2 +- .../config-entries/service-defaults.mdx | 22 ++++---- .../config-entries/service-resolver.mdx | 2 +- .../connect/config-entries/service-router.mdx | 2 +- .../config-entries/service-splitter.mdx | 2 +- .../config-entries/terminating-gateway.mdx | 2 +- .../content/docs/connect/configuration.mdx | 4 +- .../docs/connect/connectivity-tasks.mdx | 4 +- .../content/docs/connect/gateways/index.mdx | 2 +- ...service-to-service-traffic-datacenters.mdx | 10 ++-- .../service-to-service-traffic-partitions.mdx | 4 +- .../wan-federation-via-mesh-gateways.mdx | 4 +- .../connect/gateways/terminating-gateway.mdx | 6 +-- .../connect/l7-traffic/discovery-chain.mdx | 2 +- website/content/docs/connect/native/index.mdx | 2 +- .../docs/connect/observability/index.mdx | 2 +- .../content/docs/connect/proxies/envoy.mdx | 6 +-- .../docs/connect/proxies/integrate.mdx | 2 +- .../connect/proxies/managed-deprecated.mdx | 8 +-- .../docs/connect/registration/index.mdx | 2 +- .../registration/service-registration.mdx | 8 +-- .../connect/registration/sidecar-service.mdx | 6 +-- website/content/docs/connect/security.mdx | 8 +-- website/content/docs/discovery/checks.mdx | 2 +- website/content/docs/discovery/dns.mdx | 4 +- website/content/docs/discovery/services.mdx | 10 ++-- .../content/docs/dynamic-app-config/kv.mdx | 10 ++-- .../docs/dynamic-app-config/sessions.mdx | 2 +- website/content/docs/enterprise/index.mdx | 2 +- .../content/docs/enterprise/license/faq.mdx | 2 +- .../docs/enterprise/network-segments.mdx | 2 +- .../content/docs/install/bootstrapping.mdx | 6 +-- website/content/docs/install/glossary.mdx | 4 +- website/content/docs/install/index.mdx | 2 +- .../content/docs/install/manual-bootstrap.mdx | 6 +-- website/content/docs/install/performance.mdx | 2 +- website/content/docs/internals/acl.mdx | 2 +- website/content/docs/internals/index.mdx | 18 +++---- website/content/docs/intro/index.mdx | 6 +-- website/content/docs/intro/vs/eureka.mdx | 4 +- website/content/docs/intro/vs/nagios.mdx | 4 +- website/content/docs/intro/vs/serf.mdx | 4 +- website/content/docs/intro/vs/smartstack.mdx | 2 +- .../docs/k8s/connect/ingress-gateways.mdx | 4 +- .../docs/k8s/connect/terminating-gateways.mdx | 2 +- website/content/docs/k8s/index.mdx | 2 +- .../clients-outside-kubernetes.mdx | 2 +- .../servers-outside-kubernetes.mdx | 8 +-- .../content/docs/k8s/installation/install.mdx | 4 +- .../k8s/installation/multi-cluster/index.mdx | 2 +- .../installation/multi-cluster/kubernetes.mdx | 4 +- .../multi-cluster/vms-and-kubernetes.mdx | 4 +- .../operations/tls-on-existing-cluster.mdx | 6 +-- website/content/docs/k8s/service-sync.mdx | 4 +- website/content/docs/k8s/upgrade/index.mdx | 2 +- website/content/docs/nia/api/tasks.mdx | 2 +- website/content/docs/nia/cli/task.mdx | 6 +-- website/content/docs/nia/installation/run.mdx | 2 +- .../content/docs/security/acl/acl-legacy.mdx | 52 +++++++++---------- .../content/docs/security/acl/acl-rules.mdx | 20 +++---- .../content/docs/security/acl/acl-system.mdx | 48 ++++++++--------- .../docs/security/acl/auth-methods/index.mdx | 18 +++---- .../docs/security/acl/auth-methods/jwt.mdx | 6 +-- .../security/acl/auth-methods/kubernetes.mdx | 6 +-- .../docs/security/acl/auth-methods/oidc.mdx | 6 +-- website/content/docs/security/acl/index.mdx | 10 ++-- website/content/docs/security/encryption.mdx | 2 +- .../docs/security/security-models/core.mdx | 2 +- website/content/docs/troubleshoot/faq.mdx | 6 +-- .../content/docs/upgrading/compatibility.mdx | 2 +- website/content/docs/upgrading/index.mdx | 6 +-- .../instructions/general-process.mdx | 6 +-- .../instructions/upgrade-to-1-10-x.mdx | 10 ++-- .../instructions/upgrade-to-1-6-x.mdx | 2 +- .../docs/upgrading/upgrade-specific.mdx | 20 +++---- 118 files changed, 339 insertions(+), 339 deletions(-) diff --git a/website/components/footer/index.jsx b/website/components/footer/index.jsx index d62a9b895..86d72cb19 100644 --- a/website/components/footer/index.jsx +++ b/website/components/footer/index.jsx @@ -8,7 +8,7 @@ export default function Footer({ openConsentManager }) {
      Intro - + Guides diff --git a/website/content/api-docs/acl/auth-methods.mdx b/website/content/api-docs/acl/auth-methods.mdx index 1cd27be61..2e662213b 100644 --- a/website/content/api-docs/acl/auth-methods.mdx +++ b/website/content/api-docs/acl/auth-methods.mdx @@ -44,7 +44,7 @@ The corresponding CLI command is [`consul acl auth-method create`](/commands/acl - `Type` `(string: )` - The type of auth method being configured. This field is immutable. For allowed values see the [auth method - documentation](/docs/acl/auth-methods). + documentation](/docs/security/acl/auth-methods). - `Description` `(string: "")` - Free form human readable description of the auth method. @@ -69,7 +69,7 @@ The corresponding CLI command is [`consul acl auth-method create`](/commands/acl - `Config` `(map[string]string: )` - The raw configuration to use for the chosen auth method. Contents will vary depending upon the type chosen. For more information on configuring specific auth method types, see the [auth - method documentation](/docs/acl/auth-methods). + method documentation](/docs/security/acl/auth-methods). - `Namespace` `(string: "")` - Specifies the namespace to create the auth method within. If not provided in the JSON body, the value of @@ -252,7 +252,7 @@ The corresponding CLI command is [`consul acl auth-method update`](/commands/acl - `Config` `(map[string]string: )` - The raw configuration to use for the chosen auth method. Contents will vary depending upon the type chosen. For more information on configuring specific auth method types, see the [auth - method documentation](/docs/acl/auth-methods). + method documentation](/docs/security/acl/auth-methods). - `Namespace` `(string: "")` - Specifies the namespace of the auth method to update. If not provided in the JSON body, the value of diff --git a/website/content/api-docs/acl/index.mdx b/website/content/api-docs/acl/index.mdx index f6df49bc7..3445d233d 100644 --- a/website/content/api-docs/acl/index.mdx +++ b/website/content/api-docs/acl/index.mdx @@ -276,7 +276,7 @@ agent_prefix "" { ## Login to Auth Method This endpoint was added in Consul 1.5.0 and is used to exchange an [auth -method](/docs/acl/auth-methods) bearer token for a newly-created +method](/docs/security/acl/auth-methods) bearer token for a newly-created Consul ACL token. | Method | Path | Produces | @@ -407,7 +407,7 @@ $ curl \ This endpoint was added in Consul 1.8.0 and is used to obtain an authorization -URL from Consul to start an [OIDC login flow](/docs/acl/auth-methods/oidc). +URL from Consul to start an [OIDC login flow](/docs/security/acl/auth-methods/oidc). | Method | Path | Produces | | ------ | -------------------- | ------------------ | @@ -433,10 +433,10 @@ replication enabled. ### Parameters - `AuthMethod` `(string: )` - The name of the auth method to use for - login. This must be of type [`oidc`](/docs/acl/auth-methods/oidc). + login. This must be of type [`oidc`](/docs/security/acl/auth-methods/oidc). - `RedirectURI` `(string: )` - See [Redirect - URIs](/docs/acl/auth-methods/oidc#redirect-uris) for more information. + URIs](/docs/security/acl/auth-methods/oidc#redirect-uris) for more information. - `ClientNonce` `(string: "")` - Optional client-provided nonce that must match during callback, if present. @@ -513,7 +513,7 @@ replication enabled. ### Parameters - `AuthMethod` `(string: )` - The name of the auth method to use for - login. This must be of type [`oidc`](/docs/acl/auth-methods/oidc). + login. This must be of type [`oidc`](/docs/security/acl/auth-methods/oidc). - `State` `(string: )` - Opaque state ID that is part of the Authorization URL and will be included in the the redirect following diff --git a/website/content/api-docs/acl/legacy.mdx b/website/content/api-docs/acl/legacy.mdx index 27d54d38b..ab3bbb70f 100644 --- a/website/content/api-docs/acl/legacy.mdx +++ b/website/content/api-docs/acl/legacy.mdx @@ -45,7 +45,7 @@ The table below shows this endpoint's support for are: `client` and `management`. - `Rules` `(string: "")` - Specifies rules for this ACL token. The format of the - `Rules` property is detailed in the [ACL Rule documentation](/docs/acl/acl-rules). + `Rules` property is detailed in the [ACL Rule documentation](/docs/security/acl/acl-rules). ### Sample Payload @@ -296,4 +296,4 @@ $ curl \ ## Check ACL Replication -The check ACL replication endpoint has not changed between the legacy system and the new system. Review the [latest documentation](/api/acl/acl#check-acl-replication) to learn more about this endpoint. +The check ACL replication endpoint has not changed between the legacy system and the new system. Review the [latest documentation](/api-docs/acl#check-acl-replication) to learn more about this endpoint. diff --git a/website/content/api-docs/acl/policies.mdx b/website/content/api-docs/acl/policies.mdx index a33bd2ea8..f5ef0a38d 100644 --- a/website/content/api-docs/acl/policies.mdx +++ b/website/content/api-docs/acl/policies.mdx @@ -44,7 +44,7 @@ The corresponding CLI command is [`consul acl policy create`](/commands/acl/poli - `Description` `(string: "")` - Free form human readable description of the policy. - `Rules` `(string: "")` - Specifies rules for the ACL policy. The format of the - `Rules` property is detailed in the [ACL Rules documentation](/docs/acl/acl-rules). + `Rules` property is detailed in the [ACL Rules documentation](/docs/security/acl/acl-rules). - `Datacenters` `(array)` - Specifies the datacenters the policy is valid within. When no datacenters are provided the policy is valid in all datacenters including @@ -227,7 +227,7 @@ The corresponding CLI command is [`consul acl policy update`](/commands/acl/poli - `Description` `(string: "")` - Free form human readable description of this policy. - `Rules` `(string: "")` - Specifies rules for this ACL policy. The format of the - `Rules` property is detailed in the [ACL Rules documentation](/docs/acl/acl-rules). + `Rules` property is detailed in the [ACL Rules documentation](/docs/security/acl/acl-rules). - `Datacenters` `(array)` - Specifies the datacenters this policy is valid within. When no datacenters are provided the policy is valid in all datacenters including diff --git a/website/content/api-docs/acl/roles.mdx b/website/content/api-docs/acl/roles.mdx index e6496bd64..5b73c7325 100644 --- a/website/content/api-docs/acl/roles.mdx +++ b/website/content/api-docs/acl/roles.mdx @@ -50,7 +50,7 @@ The corresponding CLI command is [`consul acl role create`](/commands/acl/role/c breaking tokens. - `ServiceIdentities` `(array)` - The list of [service - identities](/docs/acl/acl-system#acl-service-identities) that should be + identities](/docs/security/acl/acl-system#acl-service-identities) that should be applied to the role. Added in Consul 1.5.0. - `ServiceName` `(string: )` - The name of the service. The name @@ -64,7 +64,7 @@ The corresponding CLI command is [`consul acl role create`](/commands/acl/role/c but may in the future. - `NodeIdentities` `(array)` - The list of [node - identities](/docs/acl/acl-system#acl-node-identities) that should be + identities](/docs/security/acl/acl-system#acl-node-identities) that should be applied to the role. Added in Consul 1.8.1. - `NodeName` `(string: )` - The name of the node. The name @@ -339,11 +339,11 @@ The corresponding CLI command is [`consul acl role update`](/commands/acl/role/u breaking tokens. - `ServiceIdentities` `(array)` - The list of [service - identities](/docs/acl/acl-system#acl-service-identities) that should be + identities](/docs/security/acl/acl-system#acl-service-identities) that should be applied to the role. Added in Consul 1.5.0. - `NodeIdentities` `(array)` - The list of [node - identities](/docs/acl/acl-system#acl-node-identities) that should be + identities](/docs/security/acl/acl-system#acl-node-identities) that should be applied to the role. Added in Consul 1.8.1. - `Namespace` `(string: "")` - Specifies the namespace of diff --git a/website/content/api-docs/acl/tokens.mdx b/website/content/api-docs/acl/tokens.mdx index 2f352af9a..31456965d 100644 --- a/website/content/api-docs/acl/tokens.mdx +++ b/website/content/api-docs/acl/tokens.mdx @@ -62,7 +62,7 @@ The corresponding CLI command is [`consul acl token create`](/commands/acl/token enables role renaming without breaking tokens. Added in Consul 1.5.0. - `ServiceIdentities` `(array)` - The list of [service - identities](/docs/acl/acl-system#acl-service-identities) that should be + identities](/docs/security/acl/acl-system#acl-service-identities) that should be applied to the token. Added in Consul 1.5.0. - `ServiceName` `(string: )` - The name of the service. The name @@ -76,7 +76,7 @@ The corresponding CLI command is [`consul acl token create`](/commands/acl/token but may in the future. - `NodeIdentities` `(array)` - The list of [node - identities](/docs/acl/acl-system#acl-node-identities) that should be + identities](/docs/security/acl/acl-system#acl-node-identities) that should be applied to the token. Added in Consul 1.8.1. - `NodeName` `(string: )` - The name of the node. The name @@ -329,7 +329,7 @@ The corresponding CLI command is [`consul acl token update`](/commands/acl/token enables role renaming without breaking tokens. - `ServiceIdentities` `(array)` - The list of [service - identities](/docs/acl/acl-system#acl-service-identities) that should be + identities](/docs/security/acl/acl-system#acl-service-identities) that should be applied to the token. Added in Consul 1.5.0. - `ServiceName` `(string: )` - The name of the service. The name @@ -343,7 +343,7 @@ The corresponding CLI command is [`consul acl token update`](/commands/acl/token but may in the future. - `NodeIdentities` `(array)` - The list of [node - identities](/docs/acl/acl-system#acl-node-identities) that should be + identities](/docs/security/acl/acl-system#acl-node-identities) that should be applied to the token. Added in Consul 1.8.1. - `NodeName` `(string: )` - The name of the node. The name diff --git a/website/content/api-docs/agent/check.mdx b/website/content/api-docs/agent/check.mdx index ec97e31d1..05fc3f43e 100644 --- a/website/content/api-docs/agent/check.mdx +++ b/website/content/api-docs/agent/check.mdx @@ -18,7 +18,7 @@ using the HTTP API. It is important to note that the checks known by the agent may be different from those reported by the catalog. This is usually due to changes being made while there is no leader elected. The agent performs active -[anti-entropy](/docs/internals/anti-entropy), so in most situations +[anti-entropy](/docs/architecture/anti-entropy), so in most situations everything will be in sync within a few seconds. | Method | Path | Produces | diff --git a/website/content/api-docs/agent/index.mdx b/website/content/api-docs/agent/index.mdx index 899949f37..853e07119 100644 --- a/website/content/api-docs/agent/index.mdx +++ b/website/content/api-docs/agent/index.mdx @@ -12,7 +12,7 @@ The `/agent` endpoints are used to interact with the local Consul agent. Usually, services and checks are registered with an agent which then takes on the burden of keeping that data synchronized with the cluster. For example, the agent registers services and checks with the Catalog and performs -[anti-entropy](/docs/internals/anti-entropy) to recover from outages. +[anti-entropy](/docs/architecture/anti-entropy) to recover from outages. In addition to these endpoints, additional endpoints are grouped in the navigation for `Checks` and `Services`. diff --git a/website/content/api-docs/agent/service.mdx b/website/content/api-docs/agent/service.mdx index dfd0c9059..09223a9db 100644 --- a/website/content/api-docs/agent/service.mdx +++ b/website/content/api-docs/agent/service.mdx @@ -20,7 +20,7 @@ or added dynamically using the HTTP API. It is important to note that the services known by the agent may be different from those reported by the catalog. This is usually due to changes being made while there is no leader elected. The agent performs active -[anti-entropy](/docs/internals/anti-entropy), so in most situations +[anti-entropy](/docs/architecture/anti-entropy), so in most situations everything will be in sync within a few seconds. | Method | Path | Produces | @@ -137,7 +137,7 @@ configuration that was registered with the instance. It is important to note that the services known by the agent may be different from those reported by the catalog. This is usually due to changes being made while there is no leader elected. The agent performs active -[anti-entropy](/docs/internals/anti-entropy), so in most situations +[anti-entropy](/docs/architecture/anti-entropy), so in most situations everything will be in sync within a few seconds. | Method | Path | Produces | @@ -231,7 +231,7 @@ $ curl \ ``` The response has the same structure as the [service -definition](/docs/agent/services) with one extra field `ContentHash` which +definition](/docs/discovery/services) with one extra field `ContentHash` which contains the [hash-based blocking query](/api/features/blocking#hash-based-blocking-queries) hash for the result. The same hash is also present in `X-Consul-ContentHash`. @@ -601,13 +601,13 @@ The corresponding CLI command is [`consul services register`](/commands/services ### Parameters -Note that this endpoint, unlike most also [supports `snake_case`](/docs/agent/services#service-definition-parameter-case) +Note that this endpoint, unlike most also [supports `snake_case`](/docs/discovery/services#service-definition-parameter-case) service definition keys for compatibility with the config file format. - `Name` `(string: )` - Specifies the logical name of the service. Many service instances may share the same logical service name. We recommend using [valid DNS labels](https://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_hostnames) - for [compatibility with external DNS](/docs/agent/services#service-and-tag-names-with-dns). + for [compatibility with external DNS](/docs/discovery/services#service-and-tag-names-with-dns). - `ID` `(string: "")` - Specifies a unique ID for this service. This must be unique per _agent_. This defaults to the `Name` parameter if not provided. @@ -615,7 +615,7 @@ service definition keys for compatibility with the config file format. - `Tags` `(array: nil)` - Specifies a list of tags to assign to the service. These tags can be used for later filtering and are exposed via the APIs. We recommend using [valid DNS labels](https://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_hostnames) - for [compatibility with external DNS](/docs/agent/services#service-and-tag-names-with-dns) + for [compatibility with external DNS](/docs/discovery/services#service-and-tag-names-with-dns) - `Address` `(string: "")` - Specifies the address of the service. If not provided, the agent's address is used as the address for the service during @@ -639,9 +639,9 @@ service definition keys for compatibility with the config file format. - `Kind` `(string: "")` - The kind of service. Defaults to "" which is a typical Consul service. This value may also be "connect-proxy" for [Connect](/docs/connect) proxies representing another service, - "mesh-gateway" for instances of a [mesh gateway](/docs/connect/mesh-gateway), - "terminating-gateway" for instances of a [terminating gateway](/docs/connect/terminating-gateway), - or "ingress-gateway" for instances of a [ingress gateway](/docs/connect/ingress-gateway). + "mesh-gateway" for instances of a [mesh gateway](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters), + "terminating-gateway" for instances of a [terminating gateway](/docs/connect/gateways/terminating-gateway), + or "ingress-gateway" for instances of a [ingress gateway](/docs/connect/gateways/ingress-gateway). - `Proxy` `(Proxy: nil)` - From 1.2.3 on, specifies the configuration for a Connect service proxy instance. This is only valid if `Kind` defines a proxy or gateway. @@ -681,7 +681,7 @@ service definition keys for compatibility with the config file format. modifications would be lost. - `Weights` `(Weights: nil)` - Specifies weights for the service. Please see the - [service documentation](/docs/agent/services) for more information about + [service documentation](/docs/discovery/services) for more information about weights. If this field is not provided weights will default to `{"Passing": 1, "Warning": 1}`. @@ -691,7 +691,7 @@ service definition keys for compatibility with the config file format. are independent of one another. Updating the tags for the service registered on one node is independent of the same service (by name) registered on another node. If `EnableTagOverride` is not specified the default value is - `false`. See [anti-entropy syncs](/docs/internals/anti-entropy) for + `false`. See [anti-entropy syncs](/docs/architecture/anti-entropy) for more info. #### Connect Structure diff --git a/website/content/api-docs/catalog.mdx b/website/content/api-docs/catalog.mdx index c269ed0f8..f24b2e9c0 100644 --- a/website/content/api-docs/catalog.mdx +++ b/website/content/api-docs/catalog.mdx @@ -17,7 +17,7 @@ API methods look similar. This endpoint is a low-level mechanism for registering or updating entries in the catalog. It is usually preferable to instead use the [agent endpoints](/api/agent) for registration as they are simpler and -perform [anti-entropy](/docs/internals/anti-entropy). +perform [anti-entropy](/docs/architecture/anti-entropy). | Method | Path | Produces | | ------ | ------------------- | ------------------ | @@ -54,7 +54,7 @@ The table below shows this endpoint's support for provided, it will be defaulted to the value of the `Service.Service` property. Only one service with a given `ID` may be present per node. We recommend using [valid DNS labels](https://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_hostnames) - for service definition names for [compatibility with external DNS](/docs/agent/services#service-and-tag-names-with-dns). + for service definition names for [compatibility with external DNS](/docs/discovery/services#service-and-tag-names-with-dns). The service `Tags`, `Address`, `Meta`, and `Port` fields are all optional. For more information about these fields and the implications of setting them, see the [Service - Agent API](/api/agent/service) page @@ -74,7 +74,7 @@ The table below shows this endpoint's support for check. The `Status` must be one of `passing`, `warning`, or `critical`. The `Definition` field can be provided with details for a TCP or HTTP health - check. For more information, see the [Health Checks](/docs/agent/checks) page. + check. For more information, see the [Health Checks](/docs/discovery/checks) page. Multiple checks can be provided by replacing `Check` with `Checks` and sending an array of `Check` objects. @@ -168,7 +168,7 @@ $ curl \ This endpoint is a low-level mechanism for directly removing entries from the Catalog. It is usually preferable to instead use the [agent endpoints](/api/agent) for deregistration as they are simpler and -perform [anti-entropy](/docs/internals/anti-entropy). +perform [anti-entropy](/docs/architecture/anti-entropy). | Method | Path | Produces | | ------ | --------------------- | ------------------ | diff --git a/website/content/api-docs/coordinate.mdx b/website/content/api-docs/coordinate.mdx index f3328d551..52d6c1ffe 100644 --- a/website/content/api-docs/coordinate.mdx +++ b/website/content/api-docs/coordinate.mdx @@ -13,7 +13,7 @@ The `/coordinate` endpoints query for the network coordinates for nodes in the local datacenter as well as Consul servers in the local datacenter and remote datacenters. -Please see the [Network Coordinates](/docs/internals/coordinates) internals +Please see the [Network Coordinates](/docs/architecture/coordinates) internals guide for more information on how these coordinates are computed, and for details on how to perform calculations with them. diff --git a/website/content/api-docs/discovery-chain.mdx b/website/content/api-docs/discovery-chain.mdx index 8115271d6..e7e2de6e5 100644 --- a/website/content/api-docs/discovery-chain.mdx +++ b/website/content/api-docs/discovery-chain.mdx @@ -13,13 +13,13 @@ description: The /discovery-chain endpoints are for interacting with the discove high-level proxy integration APIs may obviate the need for this API over time. The `/discovery-chain` endpoint returns the compiled [discovery -chain](/docs/internals/discovery-chain) for a service. +chain](/docs/connect/l7-traffic/discovery-chain) for a service. This will fetch all related [configuration entries](/docs/agent/config-entries) and render them into a form suitable for use by a [connect proxy](/docs/connect/proxies) implementation. This is a key component of [L7 Traffic -Management](/docs/connect/l7-traffic-management). +Management](/docs/connect/l7-traffic). ## Read Compiled Discovery Chain @@ -95,7 +95,7 @@ The table below shows this endpoint's support for parameter. - `OverrideMeshGateway` `(MeshGatewayConfig: )` - Overrides the final - [mesh gateway configuration](/docs/connect/mesh-gateway#connect-proxy-configuration) + [mesh gateway configuration](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#connect-proxy-configuration) for this any service resolved in the compiled chain. This value comes from either the [proxy @@ -111,7 +111,7 @@ The table below shows this endpoint's support for ### Sample Compilations Full documentation for the output fields is found on the [discovery chain -internals](/docs/internals/discovery-chain#compileddiscoverychain) +internals](/docs/connect/l7-traffic/discovery-chain#compileddiscoverychain) page. #### Multi-Datacenter Failover diff --git a/website/content/api-docs/event.mdx b/website/content/api-docs/event.mdx index 47ec7345d..f322c7b42 100644 --- a/website/content/api-docs/event.mdx +++ b/website/content/api-docs/event.mdx @@ -90,7 +90,7 @@ $ curl \ This endpoint returns the most recent events (up to 256) known by the agent. As a consequence of how the [event command](/commands/event) works, each agent may have a different view of the events. Events are broadcast using the -[gossip protocol](/docs/internals/gossip), so they have no global ordering +[gossip protocol](/docs/architecture/gossip), so they have no global ordering nor do they make a promise of delivery. | Method | Path | Produces | @@ -150,7 +150,7 @@ $ curl \ The semantics of this endpoint's blocking queries are slightly different. Most blocking queries provide a monotonic index and block until a newer index is available. This can be supported as a consequence of the total ordering of the -[consensus protocol](/docs/internals/consensus). With gossip, there is no +[consensus protocol](/docs/architecture/consensus). With gossip, there is no ordering, and instead `X-Consul-Index` maps to the newest event that matches the query. diff --git a/website/content/api-docs/health.mdx b/website/content/api-docs/health.mdx index 82e42b4f3..cc4fc72ba 100644 --- a/website/content/api-docs/health.mdx +++ b/website/content/api-docs/health.mdx @@ -421,7 +421,7 @@ Parameters and response format are the same as -> **1.8.0+:** This API is available in Consul versions 1.8.0 and later. This endpoint returns the service instances providing an [ingress -gateway](/docs/connect/ingress-gateway) for a service in a given datacenter. +gateway](/docs/connect/gateways/ingress-gateway) for a service in a given datacenter. | Method | Path | Produces | | ------ | -------------------------- | ------------------ | diff --git a/website/content/api-docs/index.mdx b/website/content/api-docs/index.mdx index d57d86b18..768e3865a 100644 --- a/website/content/api-docs/index.mdx +++ b/website/content/api-docs/index.mdx @@ -40,7 +40,7 @@ Previously this was provided via a `?token=` query parameter. This functionality exists on many endpoints for backwards compatibility, but its use is **highly discouraged**, since it can show up in access logs as part of the URL. -To learn more about the ACL system read the [documentation](/docs/acl/acl-system). +To learn more about the ACL system read the [documentation](/docs/security/acl/acl-system). ## Version Prefix diff --git a/website/content/api-docs/operator/area.mdx b/website/content/api-docs/operator/area.mdx index d4333503d..505057666 100644 --- a/website/content/api-docs/operator/area.mdx +++ b/website/content/api-docs/operator/area.mdx @@ -425,4 +425,4 @@ $ curl \ - `RTT` is an estimated network round trip time from the server answering the query to the given server, in nanoseconds. This is computed using [network - coordinates](/docs/internals/coordinates). + coordinates](/docs/architecture/coordinates). diff --git a/website/content/api-docs/operator/index.mdx b/website/content/api-docs/operator/index.mdx index 84efd335c..6bfaf034d 100644 --- a/website/content/api-docs/operator/index.mdx +++ b/website/content/api-docs/operator/index.mdx @@ -14,7 +14,7 @@ operations manually, please check the documentation for the [`consul operator`](/commands/operator) command. If ACLs are enabled then a token with operator privileges may be required in -order to use this interface. Check the [ACL Rules documentation](/docs/acl/acl-rules#operator-rules) +order to use this interface. Check the [ACL Rules documentation](/docs/security/acl/acl-rules#operator-rules) for more information. Check the [Outage Recovery](https://learn.hashicorp.com/tutorials/consul/recovery-outage) tutorial for some examples of diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index f493ad336..2994db35c 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -9,7 +9,7 @@ description: |- # Keyring Operator HTTP API The `/operator/keyring` endpoints allow for management of the gossip encryption -keyring. Please see the [Gossip Protocol Guide](/docs/internals/gossip) for +keyring. Please see the [Gossip Protocol Guide](/docs/architecture/gossip) for more details on the gossip protocol and its use. ## List Gossip Encryption Keys diff --git a/website/content/api-docs/operator/raft.mdx b/website/content/api-docs/operator/raft.mdx index 6eee9365b..5225208a3 100644 --- a/website/content/api-docs/operator/raft.mdx +++ b/website/content/api-docs/operator/raft.mdx @@ -11,7 +11,7 @@ description: |- The `/operator/raft` endpoints provide tools for management of Raft the consensus subsystem and cluster quorum. -Please see the [Consensus Protocol Guide](/docs/internals/consensus) for +Please see the [Consensus Protocol Guide](/docs/architecture/consensus) for more information about Raft consensus protocol and its use. ## Read Configuration diff --git a/website/content/api-docs/query.mdx b/website/content/api-docs/query.mdx index d16ed07e8..b5e608b6e 100644 --- a/website/content/api-docs/query.mdx +++ b/website/content/api-docs/query.mdx @@ -17,7 +17,7 @@ would be possible given the limited entry points exposed by DNS. Check the [Geo Failover tutorial](https://learn.hashicorp.com/tutorials/consul/automate-geo-failover) for details and examples for using prepared queries to implement geo failover for services. -Check the [prepared query rules](/docs/agent/acl-rules#prepared-query-rules) +Check the [prepared query rules](/docs/security/acl/acl-rules#prepared-query-rules) section of the agent ACL documentation for more details about how prepared queries work with Consul's ACL system. @@ -187,7 +187,7 @@ The table below shows this endpoint's support for - `NearestN` `(int: 0)` - Specifies that the query will be forwarded to up to `NearestN` other datacenters based on their estimated network round - trip time using [Network Coordinates](/docs/internals/coordinates) + trip time using [Network Coordinates](/docs/architecture/coordinates) from the WAN gossip pool. The median round trip time from the server handling the query to the servers in the remote datacenter is used to determine the priority. @@ -214,7 +214,7 @@ The table below shows this endpoint's support for true, only nodes with checks in the passing state will be returned. - `Near` `(string: "")` - Specifies a node to sort near based on distance - sorting using [Network Coordinates](/docs/internals/coordinates). The + sorting using [Network Coordinates](/docs/architecture/coordinates). The nearest instance to the specified node will be returned first, and subsequent nodes in the response will be sorted in ascending order of estimated round-trip times. If the node given does not exist, the nodes in the response diff --git a/website/content/api-docs/snapshot.mdx b/website/content/api-docs/snapshot.mdx index af990ae10..885cdd0a3 100644 --- a/website/content/api-docs/snapshot.mdx +++ b/website/content/api-docs/snapshot.mdx @@ -10,7 +10,7 @@ description: |- The `/snapshot` endpoints save and restore the state of the Consul servers for disaster recovery. Snapshots include all state managed by Consul's -Raft [consensus protocol](/docs/internals/consensus). +Raft [consensus protocol](/docs/architecture/consensus). ## Generate Snapshot diff --git a/website/content/commands/acl/index.mdx b/website/content/commands/acl/index.mdx index 94dd015de..93547bc34 100644 --- a/website/content/commands/acl/index.mdx +++ b/website/content/commands/acl/index.mdx @@ -12,7 +12,7 @@ line. It exposes top-level commands for bootstrapping the ACL system, managing tokens and policies, translating legacy rules, and setting the tokens for use by an agent. -ACLs are also accessible via the [HTTP API](/api/acl/acl). +ACLs are also accessible via the [HTTP API](/api-docs/acl). Bootstrap Consul's ACLs: diff --git a/website/content/commands/agent.mdx b/website/content/commands/agent.mdx index 771954e4a..cfdbdc47b 100644 --- a/website/content/commands/agent.mdx +++ b/website/content/commands/agent.mdx @@ -14,6 +14,6 @@ performs the important task of maintaining membership information, running checks, announcing services, handling queries, etc. Due to the power and flexibility of this command, the Consul agent -is documented in its own section. See the [Consul Agent](/docs/agent/basics) +is documented in its own section. See the [Consul Agent](/docs/agent) section for more information on how to use this command and the options it has. diff --git a/website/content/commands/connect/expose.mdx b/website/content/commands/connect/expose.mdx index dc802355e..9657ebec0 100644 --- a/website/content/commands/connect/expose.mdx +++ b/website/content/commands/connect/expose.mdx @@ -14,7 +14,7 @@ Command: `consul connect expose` The connect expose subcommand is used to expose a Connect-enabled service through an Ingress gateway by modifying the gateway's configuration and adding an intention to allow traffic from the gateway to the service. See the -[Ingress gateway documentation](/docs/connect/ingress-gateway) for more information +[Ingress gateway documentation](/docs/connect/gateways/ingress-gateway) for more information about Ingress gateways. ```text diff --git a/website/content/commands/event.mdx b/website/content/commands/event.mdx index 2ca668049..96edc4d34 100644 --- a/website/content/commands/event.mdx +++ b/website/content/commands/event.mdx @@ -19,14 +19,14 @@ The `event` command provides a mechanism to fire a custom user event to an entire datacenter. These events are opaque to Consul, but they can be used to build scripting infrastructure to do automated deploys, restart services, or perform any other orchestration action. Events can be handled by -[using a watch](/docs/agent/watches). +[using a watch](/docs/dynamic-app-config/watches). -Under the hood, events are propagated using the [gossip protocol](/docs/internals/gossip). +Under the hood, events are propagated using the [gossip protocol](/docs/architecture/gossip). While the details are not important for using events, an understanding of the semantics is useful. The gossip layer will make a best-effort to deliver the event, but there is **no guaranteed delivery**. Unlike most Consul data, which is -replicated using [consensus](/docs/internals/consensus), event data +replicated using [consensus](/docs/architecture/consensus), event data is purely peer-to-peer over gossip. This means it is not persisted and does not have a total ordering. In practice, this means you cannot rely on the order of message delivery. An advantage however is that events can still diff --git a/website/content/commands/exec.mdx b/website/content/commands/exec.mdx index 2244a7d6e..8f91b6c91 100644 --- a/website/content/commands/exec.mdx +++ b/website/content/commands/exec.mdx @@ -17,7 +17,7 @@ the `web` service. Remote execution works by specifying a job, which is stored in the KV store. Agents are informed about the new job using the [event system](/commands/event), -which propagates messages via the [gossip protocol](/docs/internals/gossip). +which propagates messages via the [gossip protocol](/docs/architecture/gossip). As a result, delivery is best-effort, and there is **no guarantee** of execution. While events are purely gossip driven, remote execution relies on the KV store diff --git a/website/content/commands/index.mdx b/website/content/commands/index.mdx index c8144530a..75e2a19e1 100644 --- a/website/content/commands/index.mdx +++ b/website/content/commands/index.mdx @@ -239,7 +239,7 @@ CONSUL_GRPC_ADDR=unix://var/run/consul_grpc.sock ``` If the agent is [configured with TLS -certificates](/docs/agent/encryption#rpc-encryption-with-tls), then the +certificates](/docs/security/encryption#rpc-encryption-with-tls), then the gRPC listener will require TLS and present the same certificate as the https listener. As with `CONSUL_HTTP_ADDR`, if TLS is enabled either the `https://` scheme should be used, or `CONSUL_HTTP_SSL` set. diff --git a/website/content/commands/info.mdx b/website/content/commands/info.mdx index bc8e78f66..3ffb69556 100644 --- a/website/content/commands/info.mdx +++ b/website/content/commands/info.mdx @@ -19,9 +19,9 @@ There are currently the top-level keys for: - agent: Provides information about the agent - consul: Information about the consul library (client or server) -- raft: Provides info about the Raft [consensus library](/docs/internals/consensus) -- serf_lan: Provides info about the LAN [gossip pool](/docs/internals/gossip) -- serf_wan: Provides info about the WAN [gossip pool](/docs/internals/gossip) +- raft: Provides info about the Raft [consensus library](/docs/architecture/consensus) +- serf_lan: Provides info about the LAN [gossip pool](/docs/architecture/gossip) +- serf_wan: Provides info about the WAN [gossip pool](/docs/architecture/gossip) Here is an example output: diff --git a/website/content/commands/keygen.mdx b/website/content/commands/keygen.mdx index 531efb136..15ba9418d 100644 --- a/website/content/commands/keygen.mdx +++ b/website/content/commands/keygen.mdx @@ -12,6 +12,6 @@ description: >- Command: `consul keygen` The `keygen` command generates an encryption key that can be used for -[Consul agent traffic encryption](/docs/agent/encryption). +[Consul agent traffic encryption](/docs/security/encryption). The keygen command uses a cryptographically strong pseudo-random number generator to generate the key. diff --git a/website/content/commands/keyring.mdx b/website/content/commands/keyring.mdx index 0d50260f9..0dbcb98b4 100644 --- a/website/content/commands/keyring.mdx +++ b/website/content/commands/keyring.mdx @@ -10,7 +10,7 @@ Command: `consul keyring` Corresponding HTTP API Endpoints: [\[VARIES\] /v1/operator/keyring](/api-docs/operator/keyring) The `keyring` command is used to examine and modify the encryption keys used in -Consul's [Gossip Pools](/docs/internals/gossip). It is capable of +Consul's [Gossip Pools](/docs/architecture/gossip). It is capable of distributing new encryption keys to the cluster, retiring old encryption keys, and changing the keys used by the cluster to encrypt messages. diff --git a/website/content/commands/operator/area.mdx b/website/content/commands/operator/area.mdx index 0bd927e24..17f2881f5 100644 --- a/website/content/commands/operator/area.mdx +++ b/website/content/commands/operator/area.mdx @@ -269,7 +269,7 @@ spoken by the node. `RTT` is an estimated network round trip time from the server answering the query to the given server, in a human-readable format. This is computed using -[network coordinates](/docs/internals/coordinates). +[network coordinates](/docs/architecture/coordinates). The return code will indicate success or failure. diff --git a/website/content/commands/rtt.mdx b/website/content/commands/rtt.mdx index 9eed062c9..4f7fd6e3a 100644 --- a/website/content/commands/rtt.mdx +++ b/website/content/commands/rtt.mdx @@ -14,7 +14,7 @@ Corresponding HTTP API Endpoints: [\[GET\] /v1/coordinate/datacenters](/api-docs The `rtt` command estimates the network round trip time between two nodes using Consul's network coordinate model of the cluster. -See the [Network Coordinates](/docs/internals/coordinates) internals guide +See the [Network Coordinates](/docs/architecture/coordinates) internals guide for more information on how these coordinates are computed. The table below shows this command's [required ACLs](/api#authentication). Configuration of diff --git a/website/content/commands/services/deregister.mdx b/website/content/commands/services/deregister.mdx index d3442d8d3..7b3afb066 100644 --- a/website/content/commands/services/deregister.mdx +++ b/website/content/commands/services/deregister.mdx @@ -17,7 +17,7 @@ be paired with `services register`. This is just one method for service deregistration. If the service was registered with a configuration file, then deleting that file and [reloading](/commands/reload) Consul is the correct method to -deregister. See [Service Definition](/docs/agent/services) for more +deregister. See [Service Definition](/docs/discovery/services) for more information about registering services generally. The table below shows this command's [required ACLs](/api#authentication). Configuration of diff --git a/website/content/commands/services/index.mdx b/website/content/commands/services/index.mdx index 5998e36ac..95c3f868e 100644 --- a/website/content/commands/services/index.mdx +++ b/website/content/commands/services/index.mdx @@ -8,7 +8,7 @@ page_title: 'Commands: Services' Command: `consul services` The `services` command has subcommands for interacting with Consul services -registered with the [local agent](/docs/agent/basics). These provide +registered with the [local agent](/docs/agent). These provide useful commands such as `register` and `deregister` for easily registering services in scripts, dev mode, etc. To view all services in the catalog, instead of only agent-local services, diff --git a/website/content/commands/services/register.mdx b/website/content/commands/services/register.mdx index 27b7494df..22a960325 100644 --- a/website/content/commands/services/register.mdx +++ b/website/content/commands/services/register.mdx @@ -15,7 +15,7 @@ service deregistration. This command simplifies service registration from scripts, in dev mode, etc. This is just one method of service registration. Services can also be -registered by placing a [service definition](/docs/agent/services) +registered by placing a [service definition](/docs/discovery/services) in the Consul agent configuration directory and issuing a [reload](/commands/reload). This approach is easiest for configuration management systems that other systems that have access to @@ -74,7 +74,7 @@ arguments are given, the flags below can be used to register a single service. Note that the behavior of each of the fields below is exactly the same -as when constructing a standard [service definition](/docs/agent/services). +as when constructing a standard [service definition](/docs/discovery/services). Please refer to that documentation for full details. - `-id` - The ID of the service. This will default to `-name` if not set. diff --git a/website/content/commands/watch.mdx b/website/content/commands/watch.mdx index 0aa884517..3be6bfd2d 100644 --- a/website/content/commands/watch.mdx +++ b/website/content/commands/watch.mdx @@ -19,7 +19,7 @@ a process with the latest values of the view. If no process is specified, the current values are dumped to STDOUT which can be a useful way to inspect data in Consul. -There is more [documentation on watches here](/docs/agent/watches). +There is more [documentation on watches here](/docs/dynamic-app-config/watches). ## Usage @@ -28,7 +28,7 @@ Usage: `consul watch [options] [child...]` The only required option is `-type` which specifies the particular data view. Depending on the type, various options may be required or optionally provided. There is more documentation on watch -[specifications here](/docs/agent/watches). +[specifications here](/docs/dynamic-app-config/watches). #### API Options diff --git a/website/content/docs/agent/index.mdx b/website/content/docs/agent/index.mdx index c54c1b093..6d3896951 100644 --- a/website/content/docs/agent/index.mdx +++ b/website/content/docs/agent/index.mdx @@ -17,7 +17,7 @@ Agents run in either client or server mode. Client nodes are lightweight process They interface with the server nodes for most operations and maintain very little state of their own. Clients run on every node where services are running. -In addition to the core agent operations, server nodes participate in the [consensus quorum](/docs/internals/consensus). +In addition to the core agent operations, server nodes participate in the [consensus quorum](/docs/architecture/consensus). The quorum is based on the Raft protocol, which provides strong consistency and availability in the case of failure. Server nodes should run on dedicated instances because they are more resource intensive than client nodes. @@ -46,7 +46,7 @@ As a result, agent crashes are handled in the same manner is network failures. Once a node is marked as failed, this information is updated in the service catalog. --> **Note:** Updating the catalog is only possible if the servers can still [form a quorum](/docs/internals/consensus). +-> **Note:** Updating the catalog is only possible if the servers can still [form a quorum](/docs/architecture/consensus). Once the network recovers or a crashed agent restarts, the cluster will repair itself and unmark a node as failed. The health check in the catalog will also be updated to reflect the current state. diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index c0d4efc5e..69d622d74 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -49,7 +49,7 @@ Environment variables **cannot** be used to configure the Consul client. They _can_ be used when running other `consul` CLI commands that connect with a running agent, e.g. `CONSUL_HTTP_ADDR=192.168.0.1:8500 consul members`. -See [Consul Commands](/docs/commands#environment-variables) for more +See [Consul Commands](/commands#environment-variables) for more information. ## Command-line Options ((#commandline_options)) @@ -260,7 +260,7 @@ The options below are all specified on the command-line. PTR query responses will always use `-domain`, since the desired domain cannot be included in the query. - `-enable-script-checks` ((#\_enable_script_checks)) This controls whether - [health checks that execute scripts](/docs/agent/checks) are enabled on this + [health checks that execute scripts](/docs/discovery/checks) are enabled on this agent, and defaults to `false` so operators must opt-in to allowing these. This was added in Consul 0.9.0. @@ -414,7 +414,7 @@ The options below are all specified on the command-line. As of Consul 0.9.1, `retry-join` accepts a unified interface using the [go-discover](https://github.com/hashicorp/go-discover) library for doing automatic cluster joining using cloud metadata. For more information, see - the [Cloud Auto-join page](/docs/agent/cloud-auto-join). + the [Cloud Auto-join page](/docs/install/cloud-auto-join). @@ -506,7 +506,7 @@ The options below are all specified on the command-line. - `-raft-protocol` ((#\_raft_protocol)) - This controls the internal version of the Raft consensus protocol used for server communications. This must be set - to 3 in order to gain access to Autopilot features, with the exception of [`cleanup_dead_servers`](#cleanup_dead_servers). Defaults to 3 in Consul 1.0.0 and later (defaulted to 2 previously). See [Raft Protocol Version Compatibility](/docs/upgrade-specific#raft-protocol-version-compatibility) for more details. + to 3 in order to gain access to Autopilot features, with the exception of [`cleanup_dead_servers`](#cleanup_dead_servers). Defaults to 3 in Consul 1.0.0 and later (defaulted to 2 previously). See [Raft Protocol Version Compatibility](/docs/upgrading/upgrade-specific#raft-protocol-version-compatibility) for more details. - `-recursor` ((#\_recursor)) - Specifies the address of an upstream DNS server. This option may be provided multiple times, and is functionally equivalent @@ -710,7 +710,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." secondary Consul datacenters will perform replication of only ACL policies and 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. + [auth methods](/docs/security/acl/auth-methods) in connected secondary datacenters. ~> **Warning:** When enabling ACL token replication on the secondary datacenter, global tokens already present in the secondary datacenter will be lost. For @@ -1102,7 +1102,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `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). + Auth Method](/docs/security/acl/auth-methods/jwt). - `jwt_validation_pub_keys` (Defaults to `[]`) A list of PEM-encoded public keys to use to authenticate signatures locally. @@ -1634,13 +1634,13 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `encrypt_verify_incoming` - This is an optional parameter that can be used to disable enforcing encryption for incoming gossip in order to upshift from unencrypted to encrypted gossip on a running cluster. - See [this section](/docs/agent/encryption#configuring-gossip-encryption-on-an-existing-cluster) + See [this section](/docs/security/encryption#configuring-gossip-encryption-on-an-existing-cluster) for more information. Defaults to true. - `encrypt_verify_outgoing` - This is an optional parameter that can be used to disable enforcing encryption for outgoing gossip in order to upshift from unencrypted to encrypted gossip on a running cluster. - See [this section](/docs/agent/encryption#configuring-gossip-encryption-on-an-existing-cluster) + See [this section](/docs/security/encryption#configuring-gossip-encryption-on-an-existing-cluster) for more information. Defaults to true. - `disable_keyring_file` - Equivalent to the @@ -2423,7 +2423,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `watches` - Watches is a list of watch specifications which allow an external process to be automatically invoked when a particular data view - is updated. See the [watch documentation](/docs/agent/watches) for more detail. + is updated. See the [watch documentation](/docs/dynamic-app-config/watches) for more detail. Watches can be modified when the configuration is reloaded. ## TLS Configuration Reference diff --git a/website/content/docs/agent/sentinel.mdx b/website/content/docs/agent/sentinel.mdx index 8344ee995..b86e12942 100644 --- a/website/content/docs/agent/sentinel.mdx +++ b/website/content/docs/agent/sentinel.mdx @@ -19,7 +19,7 @@ policies to support full conditional logic and integration with external systems Sentinel policies are applied during writes to the KV Store. -An optional `sentinel` field specifying code and enforcement level can be added to [ACL policy definitions](/docs/agent/acl-rules#sentinel-integration) for Consul KV. The following policy ensures that the value written during a KV update must end with "dc1". +An optional `sentinel` field specifying code and enforcement level can be added to [ACL policy definitions](/docs/security/acl/acl-rules#sentinel-integration) for Consul KV. The following policy ensures that the value written during a KV update must end with "dc1". diff --git a/website/content/docs/architecture/anti-entropy.mdx b/website/content/docs/architecture/anti-entropy.mdx index ca9c1c501..7530fae7a 100644 --- a/website/content/docs/architecture/anti-entropy.mdx +++ b/website/content/docs/architecture/anti-entropy.mdx @@ -26,7 +26,7 @@ health checks and updating their local state. Services and checks within the context of an agent have a rich set of configuration options available. This is because the agent is responsible for generating information about its services and their health through the use of -[health checks](/docs/agent/checks). +[health checks](/docs/discovery/checks). #### Catalog @@ -43,7 +43,7 @@ responsible for recording and returning information _about_ services, nodes, and health. The catalog is maintained only by server nodes. This is because the catalog is -replicated via the [Raft log](/docs/internals/consensus) to provide a +replicated via the [Raft log](/docs/architecture/consensus) to provide a consolidated and consistent view of the cluster. ### Anti-Entropy @@ -118,7 +118,7 @@ database and its monitoring service Redis Sentinel have this kind of relationship. Redis instances are responsible for much of their configuration, but Sentinels determine whether the Redis instance is a primary or a secondary. Using the Consul service configuration item -[enable_tag_override](/docs/agent/services) you can instruct the +[enable_tag_override](/docs/discovery/services) you can instruct the Consul agent on which the Redis database is running to NOT update the tags during anti-entropy synchronization. For more information see -[Services](/docs/agent/services#enable-tag-override-and-anti-entropy) page. +[Services](/docs/discovery/services#enable-tag-override-and-anti-entropy) page. diff --git a/website/content/docs/architecture/index.mdx b/website/content/docs/architecture/index.mdx index f722a40b9..61decaba2 100644 --- a/website/content/docs/architecture/index.mdx +++ b/website/content/docs/architecture/index.mdx @@ -14,7 +14,7 @@ users and developers of Consul form a mental model of how it works, this page documents the system architecture. -> Before describing the architecture, we recommend reading the -[glossary](/docs/glossary) of terms to help +[glossary](/docs/install/glossary) of terms to help clarify what is being discussed. The architecture concepts in this document can be used with the [Reference Architecture guide](https://learn.hashicorp.com/tutorials/consul/reference-architecture?utm_source=consul.io&utm_medium=docs) when deploying Consul in production. @@ -36,7 +36,7 @@ availability in the case of failure and performance, as consensus gets progressi slower as more machines are added. However, there is no limit to the number of clients, and they can easily scale into the thousands or tens of thousands. -All the agents that are in a datacenter participate in a [gossip protocol](/docs/internals/gossip). +All the agents that are in a datacenter participate in a [gossip protocol](/docs/architecture/gossip). This means there is a gossip pool that contains all the agents for a given datacenter. This serves a few purposes: first, there is no need to configure clients with the addresses of servers; discovery is done automatically. Second, the work of detecting agent failures @@ -47,7 +47,7 @@ when important events such as leader election take place. The servers in each datacenter are all part of a single Raft peer set. This means that they work together to elect a single leader, a selected server which has extra duties. The leader is responsible for processing all queries and transactions. Transactions must also be replicated to -all peers as part of the [consensus protocol](/docs/internals/consensus). Because of this +all peers as part of the [consensus protocol](/docs/architecture/consensus). Because of this requirement, when a non-leader server receives an RPC request, it forwards it to the cluster leader. The server agents also operate as part of a WAN gossip pool. This pool is different from the LAN pool @@ -82,8 +82,8 @@ disrupted or the servers are temporarily unavailable. ## Getting in depth At this point we've covered the high level architecture of Consul, but there are many -more details for each of the subsystems. The [consensus protocol](/docs/internals/consensus) is -documented in detail as is the [gossip protocol](/docs/internals/gossip). The [documentation](/docs/internals/security) +more details for each of the subsystems. The [consensus protocol](/docs/architecture/consensus) is +documented in detail as is the [gossip protocol](/docs/architecture/gossip). The [documentation](/docs/security) for the security model and protocols used are also available. For other details, either consult the code, ask in IRC, or reach out to the mailing list. diff --git a/website/content/docs/connect/config-entries/ingress-gateway.mdx b/website/content/docs/connect/config-entries/ingress-gateway.mdx index fdd1f7375..e539001d1 100644 --- a/website/content/docs/connect/config-entries/ingress-gateway.mdx +++ b/website/content/docs/connect/config-entries/ingress-gateway.mdx @@ -1038,7 +1038,7 @@ You can specify the following parameters to configure ingress gateway configurat type: 'string: ""', description: `The name of the service that should be exposed through this listener. This can be either a service registered in the - catalog, or a service defined only by [other config entries](/docs/connect/l7-traffic-management). If the wildcard specifier, + catalog, or a service defined only by [other config entries](/docs/connect/l7-traffic). If the wildcard specifier, \`*\`, is provided, then ALL services will be exposed through the listener. This is not supported for listeners with protocol \`tcp\`.`, }, diff --git a/website/content/docs/connect/config-entries/proxy-defaults.mdx b/website/content/docs/connect/config-entries/proxy-defaults.mdx index d00dd21a4..cd87af7fc 100644 --- a/website/content/docs/connect/config-entries/proxy-defaults.mdx +++ b/website/content/docs/connect/config-entries/proxy-defaults.mdx @@ -285,7 +285,7 @@ spec: name: 'MeshGateway', type: 'MeshGatewayConfig: ', description: `Controls the default - [mesh gateway configuration](/docs/connect/mesh-gateway#connect-proxy-configuration) + [mesh gateway configuration](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#connect-proxy-configuration) for all proxies. Added in v1.6.0.`, children: [ { diff --git a/website/content/docs/connect/config-entries/service-defaults.mdx b/website/content/docs/connect/config-entries/service-defaults.mdx index 621259d34..86ce364b6 100644 --- a/website/content/docs/connect/config-entries/service-defaults.mdx +++ b/website/content/docs/connect/config-entries/service-defaults.mdx @@ -359,7 +359,7 @@ spec: [\`service-defaults\`](/docs/connect/config-entries/service-defaults) config entry for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, }, @@ -374,7 +374,7 @@ spec: [\`service-resolver\`](/docs/connect/config-entries/service-resolver) config entry for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, yaml: `The number of milliseconds to allow when making upstream connections before timing out.

      @@ -384,7 +384,7 @@ spec: [\`ServiceResolver\`](/docs/connect/config-entries/service-resolver) CRD for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, }, @@ -393,8 +393,8 @@ spec: name: 'MeshGateway', type: 'MeshGatewayConfig: ', description: `Controls the default - [mesh gateway configuration](/docs/connect/mesh-gateway#connect-proxy-configuration) - for this upstream.`, + [mesh gateway configuration](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#connect-proxy-configuration) + for this upstream.`, children: [ { name: 'Mode', @@ -480,7 +480,7 @@ spec: [\`service-defaults\`](/docs/connect/config-entries/service-defaults) config entry for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, yaml: `The protocol for the upstream listener.

      @@ -490,7 +490,7 @@ spec: [\`ServiceDefaults\`](/docs/connect/config-entries/service-defaults) CRD for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, }, @@ -506,7 +506,7 @@ spec: [\`service-resolver\`](/docs/connect/config-entries/service-resolver) config entry for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, yaml: `The number of milliseconds to allow when making upstream connections before timing out.

      @@ -516,7 +516,7 @@ spec: [\`ServiceResolver\`](/docs/connect/config-entries/service-resolver) CRD for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some - [L7 features](/docs/connect/l7-traffic-management). + [L7 features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. `, }, @@ -525,7 +525,7 @@ spec: name: 'MeshGateway', type: 'MeshGatewayConfig: ', description: `Controls the default - [mesh gateway configuration](/docs/connect/mesh-gateway#connect-proxy-configuration) + [mesh gateway configuration](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#connect-proxy-configuration) for this upstream.`, children: [ { @@ -629,7 +629,7 @@ spec: name: 'MeshGateway', type: 'MeshGatewayConfig: ', description: `Controls the default - [mesh gateway configuration](/docs/connect/mesh-gateway#connect-proxy-configuration) + [mesh gateway configuration](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#connect-proxy-configuration) for this service. Added in v1.6.0.`, children: [ { diff --git a/website/content/docs/connect/config-entries/service-resolver.mdx b/website/content/docs/connect/config-entries/service-resolver.mdx index 93ac1e8d3..da4f24e0c 100644 --- a/website/content/docs/connect/config-entries/service-resolver.mdx +++ b/website/content/docs/connect/config-entries/service-resolver.mdx @@ -21,7 +21,7 @@ and discovery terminates. ## Interaction with other Config Entries - Service resolver config entries are a component of [L7 Traffic - Management](/docs/connect/l7-traffic-management). + Management](/docs/connect/l7-traffic). ## UI diff --git a/website/content/docs/connect/config-entries/service-router.mdx b/website/content/docs/connect/config-entries/service-router.mdx index aef3ecede..581417304 100644 --- a/website/content/docs/connect/config-entries/service-router.mdx +++ b/website/content/docs/connect/config-entries/service-router.mdx @@ -21,7 +21,7 @@ service of the same name. ## Interaction with other Config Entries - Service router config entries are a component of [L7 Traffic - Management](/docs/connect/l7-traffic-management). + Management](/docs/connect/l7-traffic). - Service router config entries are restricted to only services that define their protocol as HTTP-based via a corresponding diff --git a/website/content/docs/connect/config-entries/service-splitter.mdx b/website/content/docs/connect/config-entries/service-splitter.mdx index ac1e13555..cf279dbf2 100644 --- a/website/content/docs/connect/config-entries/service-splitter.mdx +++ b/website/content/docs/connect/config-entries/service-splitter.mdx @@ -25,7 +25,7 @@ resolution stage. ## Interaction with other Config Entries - Service splitter config entries are a component of [L7 Traffic - Management](/docs/connect/l7-traffic-management). + Management](/docs/connect/l7-traffic). - Service splitter config entries are restricted to only services that define their protocol as http-based via a corresponding diff --git a/website/content/docs/connect/config-entries/terminating-gateway.mdx b/website/content/docs/connect/config-entries/terminating-gateway.mdx index b89fcc1c6..c5efc511a 100644 --- a/website/content/docs/connect/config-entries/terminating-gateway.mdx +++ b/website/content/docs/connect/config-entries/terminating-gateway.mdx @@ -20,7 +20,7 @@ and will apply to all instances of the gateway with that name. across all federated Consul datacenters. If terminating gateways in different Consul datacenters need to route to different sets of services within their datacenter then the terminating gateways **must** be registered with different names. -See [Terminating Gateway](/docs/connect/terminating-gateway) for more information. +See [Terminating Gateway](/docs/connect/gateways/terminating-gateway) for more information. ## TLS Origination diff --git a/website/content/docs/connect/configuration.mdx b/website/content/docs/connect/configuration.mdx index a60ddf78f..ba6a60740 100644 --- a/website/content/docs/connect/configuration.mdx +++ b/website/content/docs/connect/configuration.mdx @@ -76,7 +76,7 @@ You can override centralized configurations for individual proxy instances in their [sidecar service definitions](/docs/connect/registration/sidecar-service), and the default protocols for service instances in their [service -registrations](/docs/agent/services). +registrations](/docs/discovery/services). ## Schedulers @@ -92,7 +92,7 @@ Connect can be used with Nomad to provide secure service-to-service communication between Nomad jobs and task groups. The ability to use the dynamic port feature of Nomad makes Connect particularly easy to use. Learn about how to configure Connect on Nomad by reading the -[integration documentation](/docs/connect/platform/nomad) +[integration documentation](/docs/connect/nomad) ### Kubernetes diff --git a/website/content/docs/connect/connectivity-tasks.mdx b/website/content/docs/connect/connectivity-tasks.mdx index aa9318e6e..dbf77d582 100644 --- a/website/content/docs/connect/connectivity-tasks.mdx +++ b/website/content/docs/connect/connectivity-tasks.mdx @@ -23,9 +23,9 @@ appropriate destination based on the server name requested. The data within the the Gateway. As of Consul 1.8.0, mesh gateways can also forward gossip and RPC traffic between Consul servers. -This is enabled by [WAN federation via mesh gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways). +This is enabled by [WAN federation via mesh gateways](/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways). -For more information about mesh gateways, review the [complete documentation](/docs/connect/gateways/mesh-gateway) +For more information about mesh gateways, review the [complete documentation](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) and the [mesh gateway tutorial](https://learn.hashicorp.com/tutorials/consul/service-mesh-gateways). ![Mesh Gateway Architecture](/img/mesh-gateways.png) diff --git a/website/content/docs/connect/gateways/index.mdx b/website/content/docs/connect/gateways/index.mdx index eed33af64..c7afa6089 100644 --- a/website/content/docs/connect/gateways/index.mdx +++ b/website/content/docs/connect/gateways/index.mdx @@ -27,7 +27,7 @@ They operate by sniffing and extracting the server name indication (SNI) header Mesh gateways enable the following scenarios: -- **Federate multiple datacenters across a WAN**. Since Consul 1.8.0, mesh gateways can forward gossip and RPC traffic between Consul servers. See [WAN federation via mesh gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways) for additional information. +* **Federate multiple datacenters across a WAN**. Since Consul 1.8.0, mesh gateways can forward gossip and RPC traffic between Consul servers. See [WAN federation via mesh gateways](/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways) for additional information. - **Service-to-service communication across datacenters**. Refer to [Enabling Service-to-service Traffic Across Datacenters](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) for additional information. - **Service-to-service communication across admin partitions**. Since Consul 1.11.0, you can create administrative boundaries for single Consul deployments called "admin partitions". You can use mesh gateways to facilitate cross-partition communication. Refer to [Enabling Service-to-service Traffic Across Admin Partitions](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions) for additional information. diff --git a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters.mdx b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters.mdx index 6add2cee0..ad0405231 100644 --- a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters.mdx +++ b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters.mdx @@ -26,7 +26,7 @@ The following diagram describes the architecture for using mesh gateways for cro Ensure that your Consul environment meets the following requirements. -### Consul +### Consul * Consul version 1.6.0 or newer. * A local Consul agent is required to manage its configuration. @@ -35,18 +35,18 @@ Ensure that your Consul environment meets the following requirements. * Each datacenters must be [WAN joined](https://learn.hashicorp.com/tutorials/consul/federarion-gossip-wan). * The [primary datacenter](/docs/agent/options#primary_datacenter) must be set to the same value in both datacenters. This specifies which datacenter is the authority for Connect certificates and is required for services in all datacenters to establish mutual TLS with each other. * [gRPC](/docs/agent/options#grpc_port) must be enabled. -* If you want to [enable gateways globally](/docs/connect/mesh-gateway#enabling-gateways-globally) you must enable [centralized configuration](/docs/agent/options#enable_central_service_config). +* If you want to [enable gateways globally](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#enabling-gateways-globally) you must enable [centralized configuration](/docs/agent/options#enable_central_service_config). ### Network * General network connectivity to all services within its local Consul datacenter. * General network connectivity to all mesh gateways within remote Consul datacenters. -### Proxy +### Proxy Envoy is the only proxy with mesh gateway capabilities in Consul. -Mesh gateway proxies receive their configuration through Consul, which automatically generates it based on the proxy's registration. +Mesh gateway proxies receive their configuration through Consul, which automatically generates it based on the proxy's registration. Consul can only translate mesh gateway registration information into Envoy configuration. Sidecar proxies that send traffic to an upstream service through a gateway need to know the location of that gateway. They discover the gateway based on their sidecar proxy registrations. Consul can only translate the gateway registration information into Envoy configuration. @@ -264,4 +264,4 @@ service: mesh_gateway: - mode: none ``` - \ No newline at end of file + diff --git a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx index 39b10675d..93df03b71 100644 --- a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx +++ b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx @@ -26,9 +26,9 @@ Ensure that your Consul environment meets the following requirements. * A local Consul agent is required to manage its configuration. * Consul service mesh must be enabled in all partitions. Refer to the [`connect` documentation](/docs/agent/options#connect) for details. * Each partition must have a unique name. Refer to the [admin partitions documentation](/docs/enteprise/admin-partitions) for details. -* If you want to [enable gateways globally](/docs/connect/mesh-gateway#enabling-gateways-globally) you must enable [centralized configuration](/docs/agent/options#enable_central_service_config). +* If you want to [enable gateways globally](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#enabling-gateways-globally) you must enable [centralized configuration](/docs/agent/options#enable_central_service_config). -### Proxy +### Proxy Envoy is the only proxy with mesh gateway capabilities in Consul. diff --git a/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx b/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx index 8c5aa2c4b..425c73b56 100644 --- a/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx +++ b/website/content/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx @@ -9,7 +9,7 @@ description: |- -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and higher -~> This topic requires familiarity with [mesh gateways](/docs/connect/gateways/mesh-gateway). +~> This topic requires familiarity with [mesh gateways](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters). WAN federation via mesh gateways allows for Consul servers in different datacenters to be federated exclusively through mesh gateways. @@ -38,7 +38,7 @@ Sometimes this prerequisite is difficult or undesirable to meet: Operators looking to simplify their WAN deployment and minimize the exposed security surface area can elect to join these datacenters together using [mesh -gateways](/docs/connect/gateways/mesh-gateway) to do so. +gateways](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) to do so. [![WAN federation with mesh gateways](/img/wan-federation-connectivity-mesh-gateways.png)](/img/wan-federation-connectivity-mesh-gateways.png) diff --git a/website/content/docs/connect/gateways/terminating-gateway.mdx b/website/content/docs/connect/gateways/terminating-gateway.mdx index 650af5f7f..31aeddc41 100644 --- a/website/content/docs/connect/gateways/terminating-gateway.mdx +++ b/website/content/docs/connect/gateways/terminating-gateway.mdx @@ -22,14 +22,14 @@ For additional use cases and usage patterns, review the tutorial for [understanding terminating gateways](https://learn.hashicorp.com/tutorials/consul/service-mesh-terminating-gateways). ~> **Known limitations:** Terminating gateways currently do not support targeting service subsets with -[L7 configuration](/docs/connect/l7-traffic-management). They route to all instances of a service with no capabilities +[L7 configuration](/docs/connect/l7-traffic). They route to all instances of a service with no capabilities for filtering by instance. ## Security Considerations ~> We recommend that terminating gateways are not exposed to the WAN or open internet. This is because terminating gateways hold certificates to decrypt Consul Connect traffic directed at them and may be configured with credentials to connect -to linked services. Connections over the WAN or open internet should flow through [mesh gateways](/docs/connect/mesh-gateway) +to linked services. Connections over the WAN or open internet should flow through [mesh gateways](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) whenever possible since they are not capable of decrypting traffic or connecting directly to services. By specifying a path to a [CA file](/docs/connect/config-entries/terminating-gateway#cafile) connections @@ -120,7 +120,7 @@ All services registered in the Consul catalog must be associated with a node, ev 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#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. +Consul's [anti-entropy sync](/docs/architecture/anti-entropy) will delete the services registered via the `/catalog/register` HTTP API endpoint. For a complete example of how to register external services review the [external services tutorial](https://learn.hashicorp.com/tutorials/consul/service-registration-external-services). diff --git a/website/content/docs/connect/l7-traffic/discovery-chain.mdx b/website/content/docs/connect/l7-traffic/discovery-chain.mdx index a8402850d..807c92b98 100644 --- a/website/content/docs/connect/l7-traffic/discovery-chain.mdx +++ b/website/content/docs/connect/l7-traffic/discovery-chain.mdx @@ -224,7 +224,7 @@ A single node in the compiled discovery chain. be considered healthy. - `MeshGateway` `(MeshGatewayConfig)` - The [mesh gateway - configuration](/docs/connect/mesh-gateway#connect-proxy-configuration) + configuration](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#connect-proxy-configuration) to use when connecting to this target's service instances. - `Mode` `(string: "")` - One of `none`, `local`, or `remote`. diff --git a/website/content/docs/connect/native/index.mdx b/website/content/docs/connect/native/index.mdx index 62db53496..e90d833b9 100644 --- a/website/content/docs/connect/native/index.mdx +++ b/website/content/docs/connect/native/index.mdx @@ -138,7 +138,7 @@ natively. This enables the service to be returned as part of service discovery for Connect-capable services, used by other Connect-native applications and client [proxies](/docs/connect/proxies). -This can be specified directly in the [service definition](/docs/agent/services): +This can be specified directly in the [service definition](/docs/discovery/services): ```json { diff --git a/website/content/docs/connect/observability/index.mdx b/website/content/docs/connect/observability/index.mdx index dda5e782e..8b5073c5e 100644 --- a/website/content/docs/connect/observability/index.mdx +++ b/website/content/docs/connect/observability/index.mdx @@ -46,7 +46,7 @@ Find other possible metrics syncs in the [Connect Envoy documentation](/docs/con You can specify the [service protocol](/docs/connect/config-entries/service-defaults#protocol) in the `service-defaults` configuration entry. You can override it in the -[service registration](/docs/agent/services). By default, proxies only give +[service registration](/docs/discovery/services). By default, proxies only give you L4 metrics. This protocol allows proxies to handle requests at the right L7 protocol and emit richer L7 metrics. It also allows proxies to make per-request load balancing and routing decisions. diff --git a/website/content/docs/connect/proxies/envoy.mdx b/website/content/docs/connect/proxies/envoy.mdx index 52c1f1471..f2eddc6c9 100644 --- a/website/content/docs/connect/proxies/envoy.mdx +++ b/website/content/docs/connect/proxies/envoy.mdx @@ -23,7 +23,7 @@ Consul can configure Envoy sidecars to proxy traffic over the following protocol On Consul 1.5.0 and older, Envoy proxies can only proxy TCP traffic at L4. -Some [L7 features](/docs/connect/l7-traffic-management) can be configured using [configuration entries](/docs/agent/config-entries). You can add [custom Envoy configurations](#advanced-configuration) to the [proxy service definition](/docs/connect/registration/service-registration) to use Envoy features that are not currently exposed through configuration entries. Adding custom Envoy configurations to the service definition is an interim solution that enables you to use the more powerful features of Envoy. +Some [L7 features](/docs/connect/l7-traffic) can be configured using [configuration entries](/docs/agent/config-entries). You can add [custom Envoy configurations](#advanced-configuration) to the [proxy service definition](/docs/connect/registration/service-registration) to use Envoy features that are not currently exposed through configuration entries. Adding custom Envoy configurations to the service definition is an interim solution that enables you to use the more powerful features of Envoy. ~> **Note:** When using Envoy with Consul and not using the [`consul connect envoy` command](/commands/connect/envoy) Envoy must be run with the `--max-obj-name-len` option set to `256` or greater for Envoy versions prior to 1.11.0. @@ -240,7 +240,7 @@ defaults that are inherited by all services. [`service-defaults`](/docs/connect/config-entries/service-defaults) config entry for the service. Configuring it in a proxy config will not fully enable some [L7 - features](/docs/connect/l7-traffic-management). + features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. - `bind_address` - Override the address Envoy's public listener binds to. By @@ -274,7 +274,7 @@ definition](/docs/connect/registration/service-registration) or [`service-defaults`](/docs/connect/config-entries/service-defaults) config entry for the upstream destination service. Configuring it in a proxy upstream config will not fully enable some [L7 - features](/docs/connect/l7-traffic-management). + features](/docs/connect/l7-traffic). It is supported here for backwards compatibility with Consul versions prior to 1.6.0. - `connect_timeout_ms` - The number of milliseconds to allow when making upstream diff --git a/website/content/docs/connect/proxies/integrate.mdx b/website/content/docs/connect/proxies/integrate.mdx index f57cc2234..bdf59a1af 100644 --- a/website/content/docs/connect/proxies/integrate.mdx +++ b/website/content/docs/connect/proxies/integrate.mdx @@ -127,7 +127,7 @@ If you are only implementing L4 support in your proxy, set the fetching the discovery chain so that L7 features, such as HTTP routing rules, are not returned. -For each [target](/docs/internals/discovery-chain#targets) in the resulting +For each [target](/docs/connect/l7-traffic/discovery-chain#targets) in the resulting discovery chain, a list of healthy, Connect-capable endpoints may be fetched from the [`/v1/health/connect/:service_id`] API endpoint as described in the [Service Discovery](#service-discovery) section. diff --git a/website/content/docs/connect/proxies/managed-deprecated.mdx b/website/content/docs/connect/proxies/managed-deprecated.mdx index 1fd49ff02..a1d918772 100644 --- a/website/content/docs/connect/proxies/managed-deprecated.mdx +++ b/website/content/docs/connect/proxies/managed-deprecated.mdx @@ -18,7 +18,7 @@ definition. !> **Consul 1.6.0 removes Managed Proxies completely.** This documentation is provided for prior versions only. You may consider using [sidecar service -registrations](/docs/connect/proxies/sidecar-service) instead. +registrations](/docs/connect/registration/sidecar-service) instead. Managed proxies have been deprecated since Consul 1.3 and have been fully removed in Consul 1.6. Anyone using Managed Proxies should aim to change their workflow @@ -42,7 +42,7 @@ with other workloads. So the high implementation cost of building robust process supervision didn't actually benefit most real use-cases. Instead of this Connect 1.3.0 introduces the concept of [sidecar service -registrations](/docs/connect/proxies/sidecar-service) which +registrations](/docs/connect/registration/sidecar-service) which have almost all of the benefits of simpler configuration but without any of the additional process management complexity. As a result they can be used to simplify configuration in both container-based and realistic production @@ -55,7 +55,7 @@ page will document how they work in the interim. -> **Deprecation Note:** It's _strongly_ recommended you do not build anything using Managed proxies and consider using [sidecar service -registrations](/docs/connect/proxies/sidecar-service) instead. +registrations](/docs/connect/registration/sidecar-service) instead. Managed proxies are given a unique proxy-specific ACL token that allows read-only access to Connect @@ -103,7 +103,7 @@ to re-adopt them on restart. ### Minimal Configuration Managed proxies are configured within a -[service definition](/docs/agent/services). The simplest possible +[service definition](/docs/discovery/services). The simplest possible managed proxy configuration is an empty configuration. This enables the default managed proxy and starts a listener for that service: diff --git a/website/content/docs/connect/registration/index.mdx b/website/content/docs/connect/registration/index.mdx index 58cf1666b..0ca1f65ee 100644 --- a/website/content/docs/connect/registration/index.mdx +++ b/website/content/docs/connect/registration/index.mdx @@ -10,7 +10,7 @@ description: >- # Proxy Registration To make Connect aware of proxies you will need to register them in a [service -definition](/docs/agent/services), just like you would register any other service with Consul. This section outlines your options for registering Connect proxies, either using independent registrations, or in nested sidecar registrations. +definition](/docs/discovery/services), just like you would register any other service with Consul. This section outlines your options for registering Connect proxies, either using independent registrations, or in nested sidecar registrations. ## Proxy Service Registration diff --git a/website/content/docs/connect/registration/service-registration.mdx b/website/content/docs/connect/registration/service-registration.mdx index 32ced2d3a..d579b9867 100644 --- a/website/content/docs/connect/registration/service-registration.mdx +++ b/website/content/docs/connect/registration/service-registration.mdx @@ -193,7 +193,7 @@ You can configure the service mesh proxy to create listeners for upstream servic Upstreams support multiple destination types. The following examples include information about each implementation. --> **Snake case**: The examples in this topic use `snake_case` because the syntax is supported in configuration files and API registrations. See [Service Definition Parameter Case](/docs/agent/services#service-definition-parameter-case) for additional information. +-> **Snake case**: The examples in this topic use `snake_case` because the syntax is supported in configuration files and API registrations. See [Service Definition Parameter Case](/docs/discovery/services#service-definition-parameter-case) for additional information. @@ -306,7 +306,7 @@ The following examples show additional configuration for transparent proxies. Added in v1.10.0. -> Note that `snake_case` is used here as it works in both [config file and API -registrations](/docs/agent/services#service-definition-parameter-case). +registrations](/docs/discovery/services#service-definition-parameter-case). #### Configure a proxy listener for outbound traffic on port 22500 @@ -332,7 +332,7 @@ registrations](/docs/agent/services#service-definition-parameter-case). The following examples show all possible mesh gateway configurations. -> Note that `snake_case` is used here as it works in both [config file and API -registrations](/docs/agent/services#service-definition-parameter-case). +registrations](/docs/discovery/services#service-definition-parameter-case). #### Using a Local/Egress Gateway in the Local Datacenter @@ -390,7 +390,7 @@ non-Connect-enabled applications to contact an HTTP endpoint. Some examples include: exposing a `/metrics` path for Prometheus or `/healthz` for kubelet liveness checks. -> Note that `snake_case` is used here as it works in both [config file and API -registrations](/docs/agent/services#service-definition-parameter-case). +registrations](/docs/discovery/services#service-definition-parameter-case). #### Expose listeners in Envoy for HTTP and GRPC checks registered with the local Consul agent diff --git a/website/content/docs/connect/registration/sidecar-service.mdx b/website/content/docs/connect/registration/sidecar-service.mdx index 88bf58d62..850d954b3 100644 --- a/website/content/docs/connect/registration/sidecar-service.mdx +++ b/website/content/docs/connect/registration/sidecar-service.mdx @@ -14,7 +14,7 @@ the same VM or running as a separate container in the same network namespace. To simplify the configuration experience when deploying a sidecar for a service instance, Consul 1.3 introduced a new field in the Connect block of the [service -definition](/docs/agent/services). +definition](/docs/discovery/services). To deploy a service and sidecar proxy locally, complete the [Getting Started guide](https://learn.hashicorp.com/tutorials/consul/get-started-service-networking?utm_source=consul.io&utm_medium=docs). @@ -136,7 +136,7 @@ proxy. - `kind` - Defaults to `connect-proxy`. This can't be overridden currently. - `check`, `checks` - By default we add a TCP check on the local address and port for the proxy, and a [service alias - check](/docs/agent/checks#alias) for the parent service. If either + check](/docs/discovery/checks#alias) for the parent service. If either `check` or `checks` fields are set, only the provided checks are registered. - `proxy.destination_service_name` - Defaults to the parent service name. - `proxy.destination_service_id` - Defaults to the parent service ID. @@ -145,7 +145,7 @@ proxy. ## Limitations -Almost all fields in a [service definition](/docs/agent/services) may be +Almost all fields in a [service definition](/docs/discovery/services) may be set on the `connect.sidecar_service` except for the following: - `id` - Sidecar services get an ID assigned and it is an error to override diff --git a/website/content/docs/connect/security.mdx b/website/content/docs/connect/security.mdx index 1c9385811..7c6e8d009 100644 --- a/website/content/docs/connect/security.mdx +++ b/website/content/docs/connect/security.mdx @@ -13,7 +13,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) page. When +see the dedicated [Consul security model](/docs/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 @@ -22,7 +22,7 @@ built for. The checklist below can be incrementally adopted towards full security if you prefer to operate in less secure models initially. ~> **Warning**: The checklist below should not be considered exhaustive. Please -read and understand the [Consul security model](/docs/internals/security) +read and understand the [Consul security model](/docs/security) in depth to assess whether your deployment satisfies the security requirements of Consul. @@ -54,7 +54,7 @@ to verify server authenticity with each server having a unique TLS certificate. affect Connect since requests must also always contain a valid ACL token. Clients calling Consul APIs should be forced over encrypted connections. -See the [Consul agent encryption page](/docs/agent/encryption) to +See the [Consul agent encryption page](/docs/security/encryption) to learn more about configuring agent encryption. **If encryption is not enabled**, a malicious actor can sniff network @@ -68,7 +68,7 @@ clients and servers should be protected from unauthorized access. This protection must be done outside of Consul via access control systems provided by your target operating system. -The [full Consul security model](/docs/internals/security) explains the +The [full Consul security model](/docs/security) explains the risk of unauthorized access for both client agents and server agents. In general, the blast radius of unauthorized access for client agent directories is much smaller than servers. However, both must be protected against diff --git a/website/content/docs/discovery/checks.mdx b/website/content/docs/discovery/checks.mdx index defed5d4e..bd1617795 100644 --- a/website/content/docs/discovery/checks.mdx +++ b/website/content/docs/discovery/checks.mdx @@ -420,7 +420,7 @@ updating a TTL check via the HTTP interface can set the `notes` value. Checks may also contain a `token` field to provide an ACL token. This token is used for any interaction with the catalog for the check, including -[anti-entropy syncs](/docs/internals/anti-entropy) and deregistration. +[anti-entropy syncs](/docs/architecture/anti-entropy) and deregistration. For Alias checks, this token is used if a remote blocking query is necessary to watch the state of the aliased node or service. diff --git a/website/content/docs/discovery/dns.mdx b/website/content/docs/discovery/dns.mdx index 9670ebdf6..47807e62f 100644 --- a/website/content/docs/discovery/dns.mdx +++ b/website/content/docs/discovery/dns.mdx @@ -102,7 +102,7 @@ A service lookup is used to query for service providers. Service queries support two lookup methods: standard and strict [RFC 2782](https://tools.ietf.org/html/rfc2782). By default, SRV weights are all set at 1, but changing weights is supported using the -`Weights` attribute of the [service definition](/docs/agent/services). +`Weights` attribute of the [service definition](/docs/discovery/services). Note that DNS is limited in size per request, even when performing DNS TCP queries. @@ -394,7 +394,7 @@ To find ingress-enabled services: .ingress. ``` -This will find all [ingress gateway](/docs/connect/ingress-gateway) +This will find all [ingress gateway](/docs/connect/gateways/ingress-gateway) endpoints for the given `service`. This endpoint currently only finds services within the same datacenter diff --git a/website/content/docs/discovery/services.mdx b/website/content/docs/discovery/services.mdx index 213a38229..bb0068b1a 100644 --- a/website/content/docs/discovery/services.mdx +++ b/website/content/docs/discovery/services.mdx @@ -212,7 +212,7 @@ This is the root-level parameter that defines the service. You can specify the p | `tagged_addresses` | Tagged addresses are additional addresses that may be defined for a node or service. See [Tagged Addresses](#tagged-addresses) for details. | None | Optional | | `port` | Integer value that specifies a service-specific port number. The port number should be specified when the `address` parameter is defined to improve service discoverability. | Optional | | `socket_path` | String value that specifies the path to the service socket.
      Specify this parameter to expose the service to the mesh if the service listens on a Unix Domain socket. | None | Optional | -| `enable_tag_override` | Boolean value that determines if the anti-entropy feature for the service is enabled.
      If set to `true`, then external agents can update this service in the catalog and modify the tags.
      Subsequent local sync operations by this agent will ignore the updated tags.
      This parameter only applies to the locally-registered service. If multiple nodes register the same service, the `enable_tag_override` configuration, and all other service configuration items, operate independently.
      Updating the tags for services registered on one node is independent from the same service (by name) registered on another node.
      See [anti-entropy syncs](/docs/internals/anti-entropy) for additional information.
      | False | Optional | +| `enable_tag_override` | Boolean value that determines if the anti-entropy feature for the service is enabled.
      If set to `true`, then external agents can update this service in the catalog and modify the tags.
      Subsequent local sync operations by this agent will ignore the updated tags.
      This parameter only applies to the locally-registered service. If multiple nodes register the same service, the `enable_tag_override` configuration, and all other service configuration items, operate independently.
      Updating the tags for services registered on one node is independent from the same service (by name) registered on another node.
      See [anti-entropy syncs](/docs/architecture/anti-entropy) for additional information.
      | False | Optional | | `checks` | Array of objects that define health checks for the service. See [Health Checks](#health-checks) for details. | None | Optional | | `kind` | String value that identifies the service as a Connect proxy. See [Connect](#connect) for details. | None | Optional | | `proxy_destination` | String value that specifies the _name_ of the destination service that the service currently being configured proxies to.
      This parameter is deprecated. Use `proxy.destination_service` instead.
      See [Connect](#connect) for additional information. | None | Optional | @@ -233,7 +233,7 @@ You can add semantic meta data to the service using the `meta` parameter. This p ### Security Configurations If the ACL system is enabled, specify a value for the `token` parameter 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. +used for any interaction with the catalog for the service, including [anti-entropy syncs](/docs/architecture/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 @@ -252,7 +252,7 @@ The health check name is automatically generated as `service:`. If t registered, the ID will be generated as `service::` where `` is an incrementing number starting from `1`. -Consul includes several check types with different options. Refer to the [health checks documentation](/docs/agent/checks) for details. +Consul includes several check types with different options. Refer to the [health checks documentation](/docs/discovery/checks) for details. ### Proxy @@ -319,7 +319,7 @@ is present in the agent DNS configuration or the `passing` query parameter is us 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. +[anti-entropy syncs](/docs/architecture/anti-entropy) and deregistration. You can optionally disable the anti-entropy feature for this service using the `enable_tag_override` flag. External agents can modify tags on services in the @@ -336,7 +336,7 @@ configuration items are independent of one another. Updating the tags for the service registered on one node is independent of the same service (by name) registered on another node. If `enable_tag_override` is not specified the default value is false. See [anti-entropy -syncs](/docs/internals/anti-entropy) for more info. +syncs](/docs/architecture/anti-entropy) for more info. For Consul 0.9.3 and earlier you need to use `enableTagOverride`. Consul 1.0 supports both `enable_tag_override` and `enableTagOverride` but the latter is diff --git a/website/content/docs/dynamic-app-config/kv.mdx b/website/content/docs/dynamic-app-config/kv.mdx index 6ec4f2456..2e9a7b94c 100644 --- a/website/content/docs/dynamic-app-config/kv.mdx +++ b/website/content/docs/dynamic-app-config/kv.mdx @@ -15,7 +15,7 @@ similarities to one. The Consul KV datastore is located on the servers, but can be accessed by any agent (client or server). The natively integrated [RPC -functionality](/docs/internals/architecture) allows clients to forward +functionality](/docs/architecture) allows clients to forward requests to servers, including key/value reads and writes. Part of Consul’s core design allows data to be replicated automatically across all the servers. Having a quorum of servers will decrease the risk of data loss if an outage @@ -32,7 +32,7 @@ subcommands](/commands/kv), [HTTP API](/api/kv), and Consul UI. To restrict access, enable and configure [ACLs](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production). Once the ACL system has been bootstrapped, users and services, will need a -valid token with KV [privileges](/docs/agent/acl-rules#key-value-rules) to +valid token with KV [privileges](/docs/security/acl/acl-rules#key-value-rules) to access the the data store, this includes even reads. We recommend creating a token with limited privileges, for example, you could create a token with write privileges on one key for developers to update the value related to their @@ -75,9 +75,9 @@ to be initiated on value changes to a Consul key. ### Watches Consul KV can also be extended with the use of watches. -[Watches](/docs/agent/watches) are a way to monitor data for updates. When +[Watches](/docs/dynamic-app-config/watches) are a way to monitor data for updates. When an update is detected, an external handler is invoked. To use watches with the -KV store the [key](/docs/agent/watches#key) watch type should be used. +KV store the [key](/docs/dynamic-app-config/watches#key) watch type should be used. ### Consul Sessions @@ -87,7 +87,7 @@ API supports an `acquire` and `release` operation. The `acquire` operation acts like a Check-And-Set operation. On success, there is a key update and an increment to the `LockIndex` and the session value is updated to reflect the session holding the lock. Review the session documentation for more information -on the [integration](/docs/internals/sessions#k-v-integration). +on the [integration](/docs/dynamic-app-config/sessions#k-v-integration). Review the following tutorials to learn how to use Consul sessions for [application leader election](https://learn.hashicorp.com/tutorials/consul/application-leader-elections) and to [build distributed semaphores](https://learn.hashicorp.com/tutorials/consul/distributed-semaphore). diff --git a/website/content/docs/dynamic-app-config/sessions.mdx b/website/content/docs/dynamic-app-config/sessions.mdx index b7715289e..05251d388 100644 --- a/website/content/docs/dynamic-app-config/sessions.mdx +++ b/website/content/docs/dynamic-app-config/sessions.mdx @@ -51,7 +51,7 @@ deleted by Consul. While this is a simple design, it enables a multitude of usage patterns. By default, the -[gossip based failure detector](/docs/internals/gossip) +[gossip based failure detector](/docs/architecture/gossip) is used as the associated health check. This failure detector allows Consul to detect when a node that is holding a lock has failed and to automatically release the lock. This ability provides **liveness** to diff --git a/website/content/docs/enterprise/index.mdx b/website/content/docs/enterprise/index.mdx index ed876c4b3..e46583300 100644 --- a/website/content/docs/enterprise/index.mdx +++ b/website/content/docs/enterprise/index.mdx @@ -23,7 +23,7 @@ Features include: - [Namespaces](/docs/enterprise/namespaces) - [NIA with Terraform Enterprise](/docs/nia/enterprise) - [Sentinel](/docs/enterprise/sentinel) -- [OIDC Auth Method](/docs/acl/auth-methods/oidc) +- [OIDC Auth Method](/docs/security/acl/auth-methods/oidc) These features are part of [Consul Enterprise](https://www.hashicorp.com/consul). diff --git a/website/content/docs/enterprise/license/faq.mdx b/website/content/docs/enterprise/license/faq.mdx index 360d8ed8a..f7657a913 100644 --- a/website/content/docs/enterprise/license/faq.mdx +++ b/website/content/docs/enterprise/license/faq.mdx @@ -37,7 +37,7 @@ The list below is a great starting point for learning more about the license cha - [Consul Enterprise Upgrade Documentation](https://www.consul.io/docs/enterprise/upgrades) -- [Consul License Documentation](/docs/enterprise/license) +- [Consul License Documentation](/docs/enterprise/license/overview) - [License configuration values documentation](/docs/enterprise/license/overview#binaries-without-built-in-licenses) diff --git a/website/content/docs/enterprise/network-segments.mdx b/website/content/docs/enterprise/network-segments.mdx index 001cb6f7e..e769a60a3 100644 --- a/website/content/docs/enterprise/network-segments.mdx +++ b/website/content/docs/enterprise/network-segments.mdx @@ -142,7 +142,7 @@ segments are: Each client agent can only be a member of one segment at a time. This will be the `` segment unless otherwise specified in the agent's -[`segment`](/docs/agent/options.html#_segment) agent configuration option. +[`segment`](/docs/agent/options#_segment) agent configuration option. ### Join a Client to a Segment ((#join_a_client_to_a_segment)) diff --git a/website/content/docs/install/bootstrapping.mdx b/website/content/docs/install/bootstrapping.mdx index 7f9c35576..107d2be0a 100644 --- a/website/content/docs/install/bootstrapping.mdx +++ b/website/content/docs/install/bootstrapping.mdx @@ -12,18 +12,18 @@ description: >- # Bootstrapping a Datacenter An agent can run in either client or server mode. Server nodes are responsible for running the -[consensus protocol](/docs/internals/consensus) and storing the cluster state. +[consensus protocol](/docs/architecture/consensus) and storing the cluster state. The client nodes are mostly stateless and rely heavily on the server nodes. Before a Consul cluster can begin to service requests, a server node must be elected leader. Bootstrapping is the process of joining these initial server nodes into a cluster. Read the -[architecture documentation](/docs/internals/architecture) to learn more about +[architecture documentation](/docs/architecture) to learn more about the internals of Consul. It is recommended to have three or five total servers per datacenter. A single server deployment is _highly_ discouraged as data loss is inevitable in a failure scenario. Please refer to the -[deployment table](/docs/internals/consensus#deployment-table) for more detail. +[deployment table](/docs/architecture/consensus#deployment-table) for more detail. ~> **Note**: In versions of Consul prior to 0.4, bootstrapping was a manual process. For details on using the `-bootstrap` flag directly, see the [manual bootstrapping documentation](/docs/install/bootstrapping#manually-join-the-servers). diff --git a/website/content/docs/install/glossary.mdx b/website/content/docs/install/glossary.mdx index 2ad344f40..a71f3b4fe 100644 --- a/website/content/docs/install/glossary.mdx +++ b/website/content/docs/install/glossary.mdx @@ -48,14 +48,14 @@ transactions are applied to a [finite-state machine](https://en.wikipedia.org/wiki/Finite-state_machine), our definition of consensus implies the consistency of a replicated state machine. Consensus is described in more detail on [Wikipedia](), -and our implementation is described [here](/docs/internals/consensus). +and our implementation is described [here](/docs/architecture/consensus). ## Gossip Consul is built on top of [Serf](https://www.serf.io/) which provides a full [gossip protocol](https://en.wikipedia.org/wiki/Gossip_protocol) that is used for multiple purposes. Serf provides membership, failure detection, and event broadcast. Our use of these -is described more in the [gossip documentation](/docs/internals/gossip). It is enough to know +is described more in the [gossip documentation](/docs/architecture/gossip). It is enough to know that gossip involves random node-to-node communication, primarily over UDP. ## LAN Gossip diff --git a/website/content/docs/install/index.mdx b/website/content/docs/install/index.mdx index 7be522fb6..f85405f96 100644 --- a/website/content/docs/install/index.mdx +++ b/website/content/docs/install/index.mdx @@ -79,4 +79,4 @@ $ consul version Consul currently supports all 'evergreen' browsers, as they are generally on up-to-date versions. For more information on supported browsers, please see our -[FAQ](/docs/faq) +[FAQ](/docs/troubleshoot/faq) diff --git a/website/content/docs/install/manual-bootstrap.mdx b/website/content/docs/install/manual-bootstrap.mdx index 63c238456..1bb179786 100644 --- a/website/content/docs/install/manual-bootstrap.mdx +++ b/website/content/docs/install/manual-bootstrap.mdx @@ -12,13 +12,13 @@ description: >- When deploying Consul to a datacenter for the first time, there is an initial bootstrapping that must be done. As of Consul 0.4, an -[automatic bootstrapping](/docs/guides/bootstrapping) is available and is +[automatic bootstrapping](/docs/install/bootstrapping) is available and is the recommended approach. However, older versions only support a manual bootstrap that is documented here. Generally, the first nodes that are started are the server nodes. Remember that an agent can run in both client and server mode. Server nodes are responsible -for running the [consensus protocol](/docs/internals/consensus), and +for running the [consensus protocol](/docs/architecture/consensus), and storing the cluster state. The client nodes are mostly stateless and rely on the server nodes, so they can be started easily. @@ -35,7 +35,7 @@ something like the following will be logged: ``` Once `Node A` is running, we can start the next set of servers. There is a -[deployment table](/docs/internals/consensus#toc_4) that covers various +[deployment table](/docs/architecture/consensus#deployment_table) that covers various options, but it is recommended to have 3 or 5 total servers per datacenter. A single server deployment is _**highly**_ discouraged as data loss is inevitable in a failure scenario. We start the next servers **without** specifying diff --git a/website/content/docs/install/performance.mdx b/website/content/docs/install/performance.mdx index 85fa3161c..a2d30e369 100644 --- a/website/content/docs/install/performance.mdx +++ b/website/content/docs/install/performance.mdx @@ -9,7 +9,7 @@ description: >- # Server Performance -Since Consul servers run a [consensus protocol](/docs/internals/consensus) to +Since Consul servers run a [consensus protocol](/docs/architecture/consensus) to process all write operations and are contacted on nearly all read operations, server performance is critical for overall throughput and health of a Consul cluster. Servers are generally I/O bound for writes because the underlying Raft log store performs a sync diff --git a/website/content/docs/internals/acl.mdx b/website/content/docs/internals/acl.mdx index 9f85926dd..391ee4503 100644 --- a/website/content/docs/internals/acl.mdx +++ b/website/content/docs/internals/acl.mdx @@ -12,5 +12,5 @@ description: >- 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 +See [Complete ACL Coverage in Consul 0.8](/docs/security/acl/acl-legacy) for details about ACL changes in Consul 0.8 and later. diff --git a/website/content/docs/internals/index.mdx b/website/content/docs/internals/index.mdx index 32fe3ce47..ca353c2e6 100644 --- a/website/content/docs/internals/index.mdx +++ b/website/content/docs/internals/index.mdx @@ -13,14 +13,14 @@ use it in production. Please review the following documentation to understand how Consul works. -- [Architecture](/docs/internals/architecture) -- [Consensus Protocol](/docs/internals/consensus) -- [Gossip Protocol](/docs/internals/gossip) -- [Network Coordinates](/docs/internals/coordinates) -- [Sessions](/docs/internals/sessions) -- [Anti-Entropy](/docs/internals/anti-entropy) -- [Security Model](/docs/internals/security) -- [Discovery Chain](/docs/internals/discovery-chain) +- [Architecture](/docs/architecture) +- [Consensus Protocol](/docs/architecture/consensus) +- [Gossip Protocol](/docs/architecture/gossip) +- [Network Coordinates](/docs/architecture/coordinates) +- [Sessions](/docs/security/acl/auth-methods/oidc) +- [Anti-Entropy](/docs/architecture/anti-entropy) +- [Security Model](/docs/security) +- [Discovery Chain](/docs/connect/l7-traffic/discovery-chain) -You should also be familiar with [Jepsen testing](/docs/internals/jepsen), before deploying +You should also be familiar with [Jepsen testing](/docs/architecture/jepsen), before deploying a production datacenter. diff --git a/website/content/docs/intro/index.mdx b/website/content/docs/intro/index.mdx index febb4e095..fe1fe65a1 100644 --- a/website/content/docs/intro/index.mdx +++ b/website/content/docs/intro/index.mdx @@ -86,7 +86,7 @@ application developers, making it perfect for modern, elastic infrastructures. Consul is a distributed, highly available system. This section will cover the basics, purposely omitting some unnecessary detail, so you can get a quick understanding of how Consul works. For more detail, please refer to the -[in-depth architecture overview](/docs/internals/architecture). +[in-depth architecture overview](/docs/architecture). Every node that provides services to Consul runs a _Consul agent_. Running an agent is not required for discovering other services or getting/setting @@ -103,7 +103,7 @@ The servers maintain a _catalog_, which is formed by aggregating information submitted by the agents. The catalog maintains the high-level view of the cluster, including which services are available, which nodes run those services, health information, and more. How agents and the catalog interact can be found -[here](/docs/internals/anti-entropy#catalog). +[here](/docs/architecture/anti-entropy#catalog). Components of your infrastructure that need to discover other services or nodes can query any of the Consul servers _or_ any of the Consul agents. @@ -115,7 +115,7 @@ forward the request to the remote datacenter and return the result. ## Next Steps -- See [how Consul compares to other software](/intro/vs) to assess how it fits into your +- See [how Consul compares to other software](/docs/intro/vs) to assess how it fits into your existing infrastructure. - Continue onwards with [HashiCorp Learn](https://learn.hashicorp.com/tutorials/consul/get-started-install) to learn more about Consul and how to get Consul up and running. diff --git a/website/content/docs/intro/vs/eureka.mdx b/website/content/docs/intro/vs/eureka.mdx index 7fe29af68..f64b4c4e7 100644 --- a/website/content/docs/intro/vs/eureka.mdx +++ b/website/content/docs/intro/vs/eureka.mdx @@ -32,9 +32,9 @@ most applications to be Consul unaware, performing the service registration via files and discovery via DNS or load balancer sidecars. Consul provides a strong consistency guarantee, since servers replicate state using the -[Raft protocol](/docs/internals/consensus). Consul supports a rich set of health checks +[Raft protocol](/docs/architecture/consensus). Consul supports a rich set of health checks including TCP, HTTP, Nagios/Sensu compatible scripts, or TTL based like Eureka. Client nodes -participate in a [gossip based health check](/docs/internals/gossip), which distributes +participate in a [gossip based health check](/docs/architecture/gossip), which distributes the work of health checking, unlike centralized heartbeating which becomes a scalability challenge. Discovery requests are routed to the elected Consul leader which allows them to be strongly consistent by default. Clients that allow for stale reads enable any server to process their request allowing diff --git a/website/content/docs/intro/vs/nagios.mdx b/website/content/docs/intro/vs/nagios.mdx index c075466c7..c1f9aee8d 100644 --- a/website/content/docs/intro/vs/nagios.mdx +++ b/website/content/docs/intro/vs/nagios.mdx @@ -36,8 +36,8 @@ allowing the system to be much more scalable. An astute reader may notice that if a Consul agent dies, then no edge triggered updates will occur. From the perspective of other nodes, all checks will appear to be in a steady state. However, Consul guards against this as well. The -[gossip protocol](/docs/internals/gossip) used between clients and servers +[gossip protocol](/docs/architecture/gossip) used between clients and servers integrates a distributed failure detector. This means that if a Consul agent fails, the failure will be detected, and thus all checks being run by that node can be assumed failed. This failure detector distributes the work among the entire cluster -while, most importantly, enabling the edge triggered architecture to work. \ No newline at end of file +while, most importantly, enabling the edge triggered architecture to work. diff --git a/website/content/docs/intro/vs/serf.mdx b/website/content/docs/intro/vs/serf.mdx index dc7af98ed..437b76e10 100644 --- a/website/content/docs/intro/vs/serf.mdx +++ b/website/content/docs/intro/vs/serf.mdx @@ -21,7 +21,7 @@ Serf does not provide any high-level features such as service discovery, health checking or key/value storage. Consul is a complete system providing all of those features. -The internal [gossip protocol](/docs/internals/gossip) used within Consul is in +The internal [gossip protocol](/docs/architecture/gossip) used within Consul is in fact powered by the Serf library: Consul leverages the membership and failure detection features and builds upon them to add service discovery. By contrast, the discovery feature of Serf is at a node level, while Consul provides a service and node level @@ -42,7 +42,7 @@ catalog while Serf is only eventually-consistent. In addition to the service level abstraction and improved health checking, Consul provides a key/value store and support for multiple datacenters. Serf can run across the WAN but with degraded performance. Consul makes use -of [multiple gossip pools](/docs/internals/architecture) so that +of [multiple gossip pools](/docs/architecture) so that the performance of Serf over a LAN can be retained while still using it over a WAN for linking together multiple datacenters. diff --git a/website/content/docs/intro/vs/smartstack.mdx b/website/content/docs/intro/vs/smartstack.mdx index dbac8f2e0..668841e61 100644 --- a/website/content/docs/intro/vs/smartstack.mdx +++ b/website/content/docs/intro/vs/smartstack.mdx @@ -25,7 +25,7 @@ and dynamically configures HAProxy. Finally, clients speak to HAProxy, which doe health checking and load balancing across service providers. Consul is a much simpler and more contained system as it does not rely on any external -components. Consul uses an integrated [gossip protocol](/docs/internals/gossip) +components. Consul uses an integrated [gossip protocol](/docs/architecture/gossip) to track all nodes and perform server discovery. This means that server addresses do not need to be hardcoded and updated fleet-wide on changes, unlike SmartStack. diff --git a/website/content/docs/k8s/connect/ingress-gateways.mdx b/website/content/docs/k8s/connect/ingress-gateways.mdx index 17bf2e67b..8095c6384 100644 --- a/website/content/docs/k8s/connect/ingress-gateways.mdx +++ b/website/content/docs/k8s/connect/ingress-gateways.mdx @@ -8,10 +8,10 @@ description: Configuring Ingress Gateways on Kubernetes -> 1.9.0+: This feature is available in Consul versions 1.9.0 and higher -~> This topic requires familiarity with [Ingress Gateways](/docs/connect/ingress-gateway). +~> This topic requires familiarity with [Ingress Gateways](/docs/connect/gateways/ingress-gateway). This page describes how to enable external access to Connect Service Mesh services running inside Kubernetes using Consul ingress gateways. -See [Ingress Gateways](/docs/connect/ingress-gateway) for more information on use-cases and how it works. +See [Ingress Gateways](/docs/connect/gateways/ingress-gateway) for more information on use-cases and how it works. Adding an ingress gateway is a multi-step process that consists of the following steps: diff --git a/website/content/docs/k8s/connect/terminating-gateways.mdx b/website/content/docs/k8s/connect/terminating-gateways.mdx index 9326b695e..c4a90a923 100644 --- a/website/content/docs/k8s/connect/terminating-gateways.mdx +++ b/website/content/docs/k8s/connect/terminating-gateways.mdx @@ -8,7 +8,7 @@ description: Configuring Terminating Gateways on Kubernetes -> 1.9.0+: This feature is available in Consul versions 1.9.0 and higher -~> This topic requires familiarity with [Terminating Gateways](/docs/connect/terminating-gateway). +~> This topic requires familiarity with [Terminating Gateways](/docs/connect/gateways/terminating-gateway). Adding a terminating gateway is a multi-step process: diff --git a/website/content/docs/k8s/index.mdx b/website/content/docs/k8s/index.mdx index e3efa8d0d..69817d21b 100644 --- a/website/content/docs/k8s/index.mdx +++ b/website/content/docs/k8s/index.mdx @@ -48,7 +48,7 @@ Kubernetes can choose to leverage Consul. ## Architecture Consul runs on Kubernetes with the same -[architecture](/docs/internals/architecture) +[architecture](/docs/architecture) as other platforms. There are some benefits Kubernetes can provide that eases operating a Consul cluster and we document those below. The standard [production deployment guide](https://learn.hashicorp.com/consul/datacenter-deploy/deployment-guide) is still an diff --git a/website/content/docs/k8s/installation/deployment-configurations/clients-outside-kubernetes.mdx b/website/content/docs/k8s/installation/deployment-configurations/clients-outside-kubernetes.mdx index 6bb8ad43b..d35b818a8 100644 --- a/website/content/docs/k8s/installation/deployment-configurations/clients-outside-kubernetes.mdx +++ b/website/content/docs/k8s/installation/deployment-configurations/clients-outside-kubernetes.mdx @@ -26,7 +26,7 @@ with the server pod or host IP addresses. ## Auto-join The recommended way to join a cluster running within Kubernetes is to -use the ["k8s" cloud auto-join provider](/docs/agent/cloud-auto-join#kubernetes-k8s). +use the ["k8s" cloud auto-join provider](/docs/install/cloud-auto-join#kubernetes-k8s). The auto-join provider dynamically discovers IP addresses to join using the Kubernetes API. It authenticates with Kubernetes using a standard diff --git a/website/content/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx b/website/content/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx index dd3031d0f..2e5c75801 100644 --- a/website/content/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx +++ b/website/content/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx @@ -23,7 +23,7 @@ their pod IPs (`false`). Finally, `client.join` is set to an array of valid [`-retry-join` values](/docs/agent/options#retry-join). In the -example above, a fake [cloud auto-join](/docs/agent/cloud-auto-join) +example above, a fake [cloud auto-join](/docs/install/cloud-auto-join) value is specified. This should be set to resolve to the proper addresses of your existing Consul cluster. @@ -57,7 +57,7 @@ You may also consider adopting Consul Enterprise for -> **Note:** Consul on Kubernetes currently does not support external servers that require mutual authentication for the HTTPS clients of the Consul servers, that is when servers have either `verify_incoming` or `verify_incoming_https` set to `true`. -As noted in the [Security Model](/docs/internals/security#secure-configuration), +As noted in the [Security Model](/docs/security#secure-configuration), that setting isn't strictly necessary to support Consul's threat model as it is recommended that all requests contain a valid ACL token. @@ -94,7 +94,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#bootstrap-acls) yourself or if your cluster has already been bootstrapped with ACLs, +If you would like to call the [ACL bootstrapping API](/api-docs/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. @@ -128,7 +128,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](/docs/acl/auth-methods/kubernetes) +so that the Consul servers can validate a Kubernetes service account token when using the [Kubernetes auth method](/docs/security/acl/auth-methods/kubernetes) with `consul login`. diff --git a/website/content/docs/k8s/installation/install.mdx b/website/content/docs/k8s/installation/install.mdx index 170a8212d..9d0543519 100644 --- a/website/content/docs/k8s/installation/install.mdx +++ b/website/content/docs/k8s/installation/install.mdx @@ -98,7 +98,7 @@ cluster with default configurations. We strongly recommend [learning about the c of Consul. This provides a less complicated out-of-box experience for new users, but is not appropriate for a production setup. We strongly recommend using a properly-secured Kubernetes cluster or making sure that you understand and enable -the [recommended security features](/docs/internals/security). Currently, +the [recommended security features](/docs/security). Currently, some of these features are not supported in the Helm chart and require additional manual configuration. @@ -180,7 +180,7 @@ NAME: consul ``` If you've already installed Consul and want to make changes, you'll need to run -`helm upgrade`. See [Upgrading](/docs/k8s/operations/upgrading) for more details. +`helm upgrade`. See [Upgrading](/docs/k8s/upgrade) for more details. ## Viewing the Consul UI diff --git a/website/content/docs/k8s/installation/multi-cluster/index.mdx b/website/content/docs/k8s/installation/multi-cluster/index.mdx index 85bf6d801..1daa074fe 100644 --- a/website/content/docs/k8s/installation/multi-cluster/index.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/index.mdx @@ -13,7 +13,7 @@ with one another. This enables the following features: - Services on all clusters can make calls to each other through Consul Service Mesh. - [Intentions](/docs/connect/intentions) can be used to enforce rules about which services can communicate across all clusters. -- [L7 Routing Rules](/docs/connect/l7-traffic-management) can enable multi-cluster failover +- [L7 Routing Rules](/docs/connect/l7-traffic) can enable multi-cluster failover and traffic splitting. - The Consul UI has a drop-down menu that lets you navigate between datacenters. diff --git a/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx b/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx index bbb652007..6c9054903 100644 --- a/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/kubernetes.mdx @@ -9,7 +9,7 @@ description: >- -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and higher -~> This topic requires familiarity with [Mesh Gateways](/docs/connect/mesh-gateway) and [WAN Federation Via Mesh Gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways). +~> This topic requires familiarity with [Mesh Gateways](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) and [WAN Federation Via Mesh Gateways](/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways). -> Looking for a step-by-step guide? Please follow our Learn tutorial: [Secure and Route Service Mesh Communication Across Kubernetes](https://learn.hashicorp.com/tutorials/consul/kubernetes-mesh-gateways). @@ -163,7 +163,7 @@ If you've set `enableAutoEncrypt: true`, this is also supported. creates a Kubernetes Load Balancer service. If you wish to customize the mesh gateway, see the [Helm reference](/docs/k8s/helm#v-meshgateway) for that setting. -With the above settings added to your existing config, follow the [Upgrading](/docs/k8s/operations/upgrading) +With the above settings added to your existing config, follow the [Upgrading](/docs/k8s/upgrade) guide to upgrade your cluster and then come back to the [Federation Secret](#federation-secret) section. -> **NOTE:** You must be using consul-helm 0.21.0+. diff --git a/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx b/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx index f003ceefc..dc238649c 100644 --- a/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx @@ -9,7 +9,7 @@ description: >- -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and higher -~> This topic requires familiarity with [Mesh Gateways](/docs/connect/mesh-gateway) and [WAN Federation Via Mesh Gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways). +~> This topic requires familiarity with [Mesh Gateways](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters) and [WAN Federation Via Mesh Gateways](/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways). Consul datacenters running on non-kubernetes platforms like VMs or bare metal can be federated with Kubernetes datacenters. Just like with Kubernetes, one datacenter @@ -202,7 +202,7 @@ construct the [Federation Secret](/docs/k8s/installation/multi-cluster/kubernete Kubernetes clusters as secondaries. -> Your VM cluster must be running mesh gateways, and have mesh gateway WAN -federation enabled. See [WAN Federation via Mesh Gateways](/docs/connect/gateways/wan-federation-via-mesh-gateways). +federation enabled. See [WAN Federation via Mesh Gateways](/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways). You'll need: diff --git a/website/content/docs/k8s/operations/tls-on-existing-cluster.mdx b/website/content/docs/k8s/operations/tls-on-existing-cluster.mdx index daa3522ef..2b69be538 100644 --- a/website/content/docs/k8s/operations/tls-on-existing-cluster.mdx +++ b/website/content/docs/k8s/operations/tls-on-existing-cluster.mdx @@ -34,7 +34,7 @@ This upgrade will trigger a rolling update of the clients, as well as any other `consul-k8s` components, such as sync catalog or client snapshot deployments. 1. Perform a rolling upgrade of the servers, as described in - [Upgrade Consul Servers](/docs/k8s/operations/upgrading#upgrading-consul-servers). + [Upgrade Consul Servers](/docs/k8s/upgrade#upgrading-consul-servers). 1. Repeat steps 1 and 2, turning on TLS verification by setting `global.tls.verify` to `true`. @@ -71,7 +71,7 @@ applications to it. ``` In this configuration, we're setting `server.updatePartition` to the number of - server replicas as described in [Upgrade Consul Servers](/docs/k8s/operations/upgrading#upgrading-consul-servers) + server replicas as described in [Upgrade Consul Servers](/docs/k8s/upgrade#upgrading-consul-servers) and `client.updateStrategy` to `OnDelete` to manually trigger an upgrade of the clients. 1. Run `helm upgrade` with the above config file. The upgrade will trigger an update of all @@ -94,7 +94,7 @@ applications to it. the sidecar proxy. Also, Kubernetes should schedule these applications on the new node pool. 1. Perform a rolling upgrade of the servers described in - [Upgrade Consul Servers](/docs/k8s/operations/upgrading#upgrading-consul-servers). + [Upgrade Consul Servers](/docs/k8s/upgrade#upgrading-consul-servers). 1. If everything is healthy, delete the old node pool. diff --git a/website/content/docs/k8s/service-sync.mdx b/website/content/docs/k8s/service-sync.mdx index 182de64c4..686b50e06 100644 --- a/website/content/docs/k8s/service-sync.mdx +++ b/website/content/docs/k8s/service-sync.mdx @@ -92,9 +92,9 @@ then the sync program should work. For Consul, if ACLs are configured on the cluster, a Consul [ACL token](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production) -will need to be provided. Review the [ACL rules](/docs/agent/acl-rules) +will need to be provided. Review the [ACL rules](/docs/security/acl/acl-rules) when creating this token so that it only allows the necessary privileges. The catalog -sync process accepts this token by using the [`CONSUL_HTTP_TOKEN`](/docs/commands#consul_http_token) +sync process accepts this token by using the [`CONSUL_HTTP_TOKEN`](/commands#consul_http_token) environment variable. This token should be set as a [Kubernetes secret](https://kubernetes.io/docs/concepts/configuration/secret/#creating-your-own-secrets) and referenced in the Helm chart. diff --git a/website/content/docs/k8s/upgrade/index.mdx b/website/content/docs/k8s/upgrade/index.mdx index 6909b4da9..2a2eeb67e 100644 --- a/website/content/docs/k8s/upgrade/index.mdx +++ b/website/content/docs/k8s/upgrade/index.mdx @@ -323,4 +323,4 @@ Consul clients. If you already have a Consul cluster deployed on Kubernetes and would like to turn on TLS for internal Consul communication, please see -[Configuring TLS on an Existing Cluster](/docs/k8s/tls-on-existing-cluster). +[Configuring TLS on an Existing Cluster](/docs/k8s/operations/tls-on-existing-cluster). diff --git a/website/content/docs/nia/api/tasks.mdx b/website/content/docs/nia/api/tasks.mdx index 342e72ead..9dbcb7050 100644 --- a/website/content/docs/nia/api/tasks.mdx +++ b/website/content/docs/nia/api/tasks.mdx @@ -24,7 +24,7 @@ This endpoint allows patch updates to specifically supported fields for existing #### Response Fields -* `inspect` - Information on how resources would be changed given a proposed task update, similar to [inspect-mode](/docs/nia/cli/cli-overview#inspect-mode). This is only returned when passed the `run=inspect` request parameter +* `inspect` - Information on how resources would be changed given a proposed task update, similar to [inspect-mode](/docs/nia/cli#inspect-mode). This is only returned when passed the `run=inspect` request parameter * `changes_present` - (bool) Whether or not changes were detected for running the proposed task update * `plan` - (string) The Terraform plan generated for the proposed task update . Note: a non-empty string does not necessarily indicate changes were detected. diff --git a/website/content/docs/nia/cli/task.mdx b/website/content/docs/nia/cli/task.mdx index fdc46bc72..4e6caa958 100644 --- a/website/content/docs/nia/cli/task.mdx +++ b/website/content/docs/nia/cli/task.mdx @@ -8,7 +8,7 @@ description: >- ## task enable -`task enable` command enables an existing task so that it will run and update task resources. If the task is already enabled, it will return a success. The command generates and outputs a Terraform plan, similar to [inspect-mode](/docs/nia/cli/cli-overview#inspect-mode), of how resources will be modified if task becomes enabled. If resources changes are detected, the command will ask for user approval before enabling the task. If no resources are detected, the command will go ahead and enable the task. +`task enable` command enables an existing task so that it will run and update task resources. If the task is already enabled, it will return a success. The command generates and outputs a Terraform plan, similar to [inspect-mode](/docs/nia/cli#inspect-mode), of how resources will be modified if task becomes enabled. If resources changes are detected, the command will ask for user approval before enabling the task. If no resources are detected, the command will go ahead and enable the task. ### Usage `consul-terraform-sync task enable [options] ` @@ -16,7 +16,7 @@ description: >- **Arguments:** - `task_name` - (string: required) The name of the task to enable -**Options:** Currently only supporting [general options](/docs/nia/cli/cli-overview#general-options) +**Options:** Currently only supporting [general options](/docs/nia/cli#general-options) ### Example @@ -62,7 +62,7 @@ Enter a value: yes **Arguments:** - `task_name` - (string: required) The name of the task to disable -**Options:** Currently only supporting [general options](/docs/nia/cli/cli-overview#general-options) +**Options:** Currently only supporting [general options](/docs/nia/cli#general-options) ### Example diff --git a/website/content/docs/nia/installation/run.mdx b/website/content/docs/nia/installation/run.mdx index 7deed8e4f..f6e3049f4 100644 --- a/website/content/docs/nia/installation/run.mdx +++ b/website/content/docs/nia/installation/run.mdx @@ -13,7 +13,7 @@ description: >- $ mv ~/Downloads/consul-terraform-sync /usr/local/bin/consul-terraform-sync ``` -2. Create the config.hcl file, all the options are available [here](/docs/nia/installation/configuration). +2. Create the config.hcl file, all the options are available [here](/docs/nia/configuration). 3. Run consul-terraform-sync. diff --git a/website/content/docs/security/acl/acl-legacy.mdx b/website/content/docs/security/acl/acl-legacy.mdx index b556ee2b0..629fa0b1e 100644 --- a/website/content/docs/security/acl/acl-legacy.mdx +++ b/website/content/docs/security/acl/acl-legacy.mdx @@ -10,24 +10,24 @@ description: >- # ACL System in Legacy Mode --> **1.3.0 and earlier:** This document only applies in Consul versions 1.3.0 and before. If you are using version 1.4.0 or later please use the updated documentation [here](/docs/acl/acl-system). +-> **1.3.0 and earlier:** This document only applies in Consul versions 1.3.0 and before. If you are using version 1.4.0 or later please use the updated documentation [here](/docs/security/acl/acl-system). ~> **Alert: Deprecation Notice** The ACL system described here was Consul's original ACL implementation. The legacy ACL system was deprecated in Consul 1.4.0 and removed in Consul 1.11.0. -The documentation for the new ACL system can be found [here](/docs/acl/acl-system). For information on how to migrate to the new ACL System, please read the [Migrate Legacy ACL Tokens](https://learn.hashicorp.com/tutorials/consul/access-control-token-migration) tutorial. +The documentation for the new ACL system can be found [here](/docs/security/acl/acl-system). For information on how to migrate to the new ACL System, please read the [Migrate Legacy ACL Tokens](https://learn.hashicorp.com/tutorials/consul/access-control-token-migration) tutorial. The legacy documentation has two sections. - The [New ACL System Differences](#new-acl-system-differences) section - details the differences between ACLs in Consul 1.4.0 and older versions. You should read this section before upgrading to Consul 1.4.0 and [migrating](/docs/acl/acl-migrate-tokens) tokens. + details the differences between ACLs in Consul 1.4.0 and older versions. You should read this section before upgrading to Consul 1.4.0 and [migrating](/docs/security/acl/acl-migrate-tokens) tokens. - The [Legacy ACL System documentation](#legacy-acl-system) section details the ACL system in Consul 1.3.0 and older. # New ACL System Differences -The [ACL System documentation](/docs/acl/acl-system) and [legacy ACL -documentation](/docs/acl/acl-legacy) describes the new and old systems in +The [ACL System documentation](/docs/security/acl/acl-system) and [legacy ACL +documentation](/docs/security/acl/acl-legacy) describes the new and old systems in detail. Below is a summary of the changes that need to be considered when migrating legacy tokens to the new system. @@ -82,7 +82,7 @@ advantage of the new ACL system improvements. They are documented fully under - [`GET /acl/list` - List Legacy Tokens](/api/acl/legacy#list-acls) The new ACL system includes new API endpoints to manage -the [ACL System](/api/acl/acl), [Tokens](/api/acl/tokens) +the [ACL System](/api-docs/acl), [Tokens](/api/acl/tokens) and [Policies](/api/acl/policies). # Legacy ACL System @@ -105,7 +105,7 @@ all while providing administrative insight. #### ACL Tokens The ACL system is based on tokens, which are managed by Consul operators via Consul's -[ACL API](/api/acl/acl), or systems like +[ACL API](/api-docs/acl), or systems like [HashiCorp's Vault](https://www.vaultproject.io/docs/secrets/consul). Every token has an ID, name, type, and rule set. The ID is a randomly generated @@ -117,12 +117,12 @@ The token ID is passed along with each RPC request to the servers. Consul's [HTTP endpoints](/api) can accept tokens via the `token` query string parameter, or the `X-Consul-Token` request header, or Authorization Bearer token [RFC6750](https://tools.ietf.org/html/rfc6750). Consul's -[CLI commands](/docs/commands) can accept tokens via the +[CLI commands](/commands) can accept tokens via the `token` argument, or the `CONSUL_HTTP_TOKEN` environment variable. If no token is provided, the rules associated with a special, configurable anonymous token are automatically applied. The anonymous token is managed using the -[ACL API](/api/acl/acl) like any other ACL token, but using `anonymous` for the ID. +[ACL API](/api-docs/acl) like any other ACL token, but using `anonymous` for the ID. #### ACL Rules and Scope @@ -171,7 +171,7 @@ Constructing rules from these policies is covered in detail in the All nodes (clients and servers) must be configured with a [`acl_datacenter`](/docs/agent/options#acl_datacenter) which enables ACL enforcement but also specifies the authoritative datacenter. Consul relies on -[RPC forwarding](/docs/internals/architecture) to support multi-datacenter +[RPC forwarding](/docs/architecture) to support multi-datacenter configurations. However, because requests can be made across datacenter boundaries, ACL tokens must be valid globally. To avoid consistency issues, a single datacenter is considered authoritative and stores the canonical set of tokens. @@ -241,7 +241,7 @@ In Consul 0.9.1 and later, the agent ACL tokens can be introduced or updated via The [`acl_agent_token`](/docs/agent/options#acl_agent_token) is a special token that is used for an agent's internal operations. It isn't used directly for any user-initiated operations like the [`acl_token`](/docs/agent/options#acl_token), though if the `acl_agent_token` isn't configured the `acl_token` will be used. The ACL agent token is used for the following operations by the agent: 1. Updating the agent's node entry using the [Catalog API](/api/catalog), including updating its node metadata, tagged addresses, and network coordinates -2. Performing [anti-entropy](/docs/internals/anti-entropy) syncing, in particular reading the node metadata and services registered with the catalog +2. Performing [anti-entropy](/docs/architecture/anti-entropy) syncing, in particular reading the node metadata and services registered with the catalog 3. Reading and writing the special `_rexec` section of the KV store when executing [`consul exec`](/commands/exec) commands Here's an example policy sufficient to accomplish the above for a node called `mynode`: @@ -274,7 +274,7 @@ The first step for bootstrapping ACLs is to enable ACLs on the Consul servers in datacenter. In this example, we are configuring the following: 1. An ACL datacenter of "dc1", which is where these servers are -2. An ACL master token of "b1gs33cr3t"; see below for an alternative using the [/v1/acl/bootstrap API](/api/acl/acl#bootstrap-acls) +2. An ACL master token of "b1gs33cr3t"; see below for an alternative using the [/v1/acl/bootstrap API](/api-docs/acl#bootstrap-acls) 3. A default policy of "deny" which means we are in allowlist mode 4. A down policy of "extend-cache" which means that we will ignore token TTLs during an outage @@ -302,7 +302,7 @@ a server acquires cluster leadership. If you would like to install or change the [`acl_master_token`](/docs/agent/options#acl_master_token) in the configuration for all servers. Once this is done, restart the current leader to force a leader election. -In Consul 0.9.1 and later, you can use the [/v1/acl/bootstrap API](/api/acl/acl#bootstrap-acls) +In Consul 0.9.1 and later, you can use the [/v1/acl/bootstrap API](/api-docs/acl#bootstrap-acls) to make the initial master token, so a token never needs to be placed into a configuration file. To use this approach, omit `acl_master_token` from the above config and then call the API: @@ -319,7 +319,7 @@ It's only possible to bootstrap one time, and bootstrapping will be disabled if token was configured and created. Once the ACL system is bootstrapped, ACL tokens can be managed through the -[ACL API](/api/acl/acl). +[ACL API](/api-docs/acl). #### Create an Agent Token @@ -334,7 +334,7 @@ servers related to permission denied errors: These errors are because the agent doesn't yet have a properly configured [`acl_agent_token`](/docs/agent/options#acl_agent_token) that it can use for its own internal operations like updating its node information in the catalog and performing -[anti-entropy](/docs/internals/anti-entropy) syncing. We can create a token using the +[anti-entropy](/docs/architecture/anti-entropy) syncing. We can create a token using the ACL API, and the ACL master token we set in the previous step: ```shell-session @@ -418,7 +418,7 @@ environment it is recommended that each client get an ACL agent token with `node privileges for just its own node name prefix, and `service` read privileges for just the service prefixes expected to be registered on that client. -[Anti-entropy](/docs/internals/anti-entropy) syncing requires the ACL agent token +[Anti-entropy](/docs/architecture/anti-entropy) syncing requires the ACL agent token to have `service` read privileges for all services that may be registered with the agent, so generally an empty `service` prefix can be used, as shown in the example. @@ -591,7 +591,7 @@ The token can then be set on the "settings" page of the UI. #### Next Steps The examples above configure a basic ACL environment with the ability to see all nodes -by default, and limited access to just the "consul" service. The [ACL API](/api/acl/acl) +by default, and limited access to just the "consul" service. The [ACL API](/api-docs/acl) can be used to create tokens for applications specific to their intended use, and to create more specific ACL agent tokens for each agent's expected role. @@ -658,7 +658,7 @@ This is equivalent to the following JSON input: } ``` -The [ACL API](/api/acl/acl) allows either HCL or JSON to be used to define the content +The [ACL API](/api-docs/acl) allows either HCL or JSON to be used to define the content of the rules section. Here's a sample request using the HCL form: @@ -876,7 +876,7 @@ to a given service name, but only on an allowed subset of node names. Node rules come into play when using the [Agent API](/api/agent) to register node-level checks. The agent will check tokens locally as a check is registered, and Consul also performs -periodic [anti-entropy](/docs/internals/anti-entropy) syncs, which may require an +periodic [anti-entropy](/docs/architecture/anti-entropy) syncs, which may require an ACL token to complete. To accommodate this, Consul provides two methods of configuring ACL tokens to use for registration events: @@ -886,8 +886,8 @@ to use for registration events: 2. Providing an ACL token with service and check definitions at registration time. This allows for greater flexibility and enables the use of multiple tokens on the same agent. Examples of what this looks like are - available for both [services](/docs/agent/services) and - [checks](/docs/agent/checks). Tokens may also be passed to the + available for both [services](/docs/discovery/services) and + [checks](/docs/discovery/checks). Tokens may also be passed to the [HTTP API](/api) for operations that require them. In addition to ACLs, in Consul 0.9.0 and later, the agent must be configured with @@ -1033,7 +1033,7 @@ used to filter the results of the query. Service rules come into play when using the [Agent API](/api/agent) to register services or checks. The agent will check tokens locally as a service or check is registered, and Consul also -performs periodic [anti-entropy](/docs/internals/anti-entropy) syncs, which may require an +performs periodic [anti-entropy](/docs/architecture/anti-entropy) syncs, which may require an ACL token to complete. To accommodate this, Consul provides two methods of configuring ACL tokens to use for registration events: @@ -1043,8 +1043,8 @@ to use for registration events: 2. Providing an ACL token with service and check definitions at registration time. This allows for greater flexibility and enables the use of multiple tokens on the same agent. Examples of what this looks like are available for - both [services](/docs/agent/services) and - [checks](/docs/agent/checks). Tokens may also be passed to the [HTTP + both [services](/docs/discovery/services) and + [checks](/docs/discovery/checks). Tokens may also be passed to the [HTTP API](/api) for operations that require them. **Note:** all tokens passed to an agent are persisted on local disk to allow recovery from restarts. See [`-data-dir` flag @@ -1115,7 +1115,7 @@ a large set of ACLs. If there's a partition or other outage affecting the authoritative datacenter, and the [`acl_down_policy`](/docs/agent/options#acl_down_policy) is set to "extend-cache", tokens will be resolved during the outage using the -replicated set of ACLs. An [ACL replication status](/api/acl/acl#check-acl-replication) +replicated set of ACLs. An [ACL replication status](/api-docs/acl#check-acl-replication) endpoint is available to monitor the health of the replication process. Also note that in recent versions of Consul (greater than 1.2.0), using `acl_down_policy = "async-cache"` refreshes token asynchronously when an ACL is @@ -1133,7 +1133,7 @@ using a process like this: 1. Enable ACL replication in all datacenters to allow continuation of service during the migration, and to populate the target datacenter. Verify replication is healthy and caught up to the current ACL index in the target datacenter - using the [ACL replication status](/api/acl/acl#check-acl-replication) + using the [ACL replication status](/api-docs/acl#check-acl-replication) endpoint. 2. Turn down the old authoritative datacenter servers. 3. Rolling restart the agents in the target datacenter and change the diff --git a/website/content/docs/security/acl/acl-rules.mdx b/website/content/docs/security/acl/acl-rules.mdx index 1571f754b..f104458e6 100644 --- a/website/content/docs/security/acl/acl-rules.mdx +++ b/website/content/docs/security/acl/acl-rules.mdx @@ -10,9 +10,9 @@ description: >- # ACL Rules -This topic describes how to configure rules for Consul's access control list (ACL) system. The ACL system enables you to control access to data and APIs. Refer to the [ACL system documentation](/docs/acl/acl-system) to learn more about ACLs. +This topic describes how to configure rules for Consul's access control list (ACL) system. The ACL system enables you to control access to data and APIs. Refer to the [ACL system documentation](/docs/security/acl/acl-system) to learn more about ACLs. --> **1.4.0 and later:** This topic applies to Consul versions 1.4.0 and later. Refer to the [legacy ACL system documentation](/docs/acl/acl-legacy) for older versions of Consul. +-> **1.4.0 and later:** This topic applies to Consul versions 1.4.0 and later. Refer to the [legacy ACL system documentation](/docs/security/acl/acl-legacy) for older versions of Consul. ## Rule Specification @@ -269,7 +269,7 @@ operator = "read" ## Defining Rules with the ACL API -You can configure ACLs remotely by calling the ACL HTTP API endpoint and including rules in the payload. The endpoint takes data formatted in HCL or JSON. Refer to the [ACL HTTP API endpoint documentation](/api/acl/acl) for details about the API. +You can configure ACLs remotely by calling the ACL HTTP API endpoint and including rules in the payload. The endpoint takes data formatted in HCL or JSON. Refer to the [ACL HTTP API endpoint documentation](/api-docs/acl) for details about the API. The following example adds a set of rules that apply to the `key` resource (Consul K/V) within the `my-app-policy` policy. The rules are formatted in HCL, but they are wrapped in JSON so that the data can be sent using cURL: @@ -318,7 +318,7 @@ The following table provides an overview of the resources you can use to create | Resource | Description | Labels | |-------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|----------| -| `acl` | Controls access to ACL operations in the [ACL API](/api/acl/acl).
      See [ACL Resource Rules](#acl-resource-rules) for details. | No | +| `acl` | Controls access to ACL operations in the [ACL API](/api-docs/acl).
      See [ACL Resource Rules](#acl-resource-rules) for details. | No | | `partition`
      `partition_prefix` | Controls access to one or more admin partitions.
      See [Admin Partition Rules](#admin-partition-rules) for details. | Yes | | `agent`
      `agent_prefix` | Controls access to the utility operations in the [Agent API](/api/agent), such as `join` and `leave`.
      See [Agent Rules](#agent-rules) for details. | Yes | | `event`
      `event_prefix` | Controls access to event operations in the [Event API](/api/event), such as firing and listing events.
      See [Event Rules](#event-rules) for details. | Yes | @@ -336,7 +336,7 @@ The following topics provide additional details about the available resources. ### ACL Resource Rules -The `acl` resource controls access to ACL operations in the [ACL API](/api/acl/acl). Only one `acl` rule is allowed per policy. The value is set to one of the [policy dispositions](#policy-dispositions). +The `acl` resource controls access to ACL operations in the [ACL API](/api-docs/acl). Only one `acl` rule is allowed per policy. The value is set to one of the [policy dispositions](#policy-dispositions). The `acl = "write"` rule is also required to create snapshots. This is because all token secrets are contained within the snapshot. @@ -875,14 +875,14 @@ The [`acl.token.default`](/docs/agent/options#acl_tokens_default) used by the ag Node rules are used to filter query results when reading from the catalog or retrieving information from the health endpoints. This allows for configurations where a token has access to a given service name, but only on an allowed subset of node names. -Consul agents check tokens locally when health checks are registered and when Consul performs periodic [anti-entropy](/docs/internals/anti-entropy) syncs. +Consul agents check tokens locally when health checks are registered and when Consul performs periodic [anti-entropy](/docs/architecture/anti-entropy) syncs. These actions may required an ACL token to complete. Use the following methods to configure ACL tokens for registration events: * Configure a global token in the [acl.tokens.default](/docs/agent/options#acl_tokens_default) parameter. This allows a single token to be used during all check registration operations. * Provide an ACL token with service and check definitions at registration time. This allows for greater flexibility and enables the use of multiple tokens on the same agent. -Refer to the [services](/docs/agent/services) and [checks](/docs/agent/checks) documentation for examples. +Refer to the [services](/docs/discovery/services) and [checks](/docs/discovery/checks) documentation for examples. Tokens may also be passed to the [HTTP API](/api) for operations that require them. ### Operator Rules @@ -1068,7 +1068,7 @@ used to filter the results of the query. Service rules come into play when using the [Agent API](/api/agent) to register services or checks. The agent will check tokens locally as a service or check is registered, and Consul also -performs periodic [anti-entropy](/docs/internals/anti-entropy) syncs, which may require an +performs periodic [anti-entropy](/docs/architecture/anti-entropy) syncs, which may require an ACL token to complete. To accommodate this, Consul provides two methods of configuring ACL tokens to use for registration events: @@ -1078,8 +1078,8 @@ to use for registration events: 2. Providing an ACL token with service and check definitions at registration time. This allows for greater flexibility and enables the use of multiple tokens on the same agent. Examples of what this looks like are available for - both [services](/docs/agent/services) and - [checks](/docs/agent/checks). Tokens may also be passed to the [HTTP + both [services](/docs/discovery/services) and + [checks](/docs/discovery/checks). Tokens may also be passed to the [HTTP API](/api) for operations that require them. **Note:** all tokens passed to an agent are persisted on local disk to allow recovery from restarts. See [`-data-dir` flag diff --git a/website/content/docs/security/acl/acl-system.mdx b/website/content/docs/security/acl/acl-system.mdx index 8f951d004..820629c9f 100644 --- a/website/content/docs/security/acl/acl-system.mdx +++ b/website/content/docs/security/acl/acl-system.mdx @@ -10,7 +10,7 @@ description: >- # ACL System --> **1.4.0 and later:** This guide only applies in Consul versions 1.4.0 and later. The documentation for the legacy ACL system is [here](/docs/acl/acl-legacy). +-> **1.4.0 and later:** This guide only applies in Consul versions 1.4.0 and later. The documentation for the legacy ACL system is [here](/docs/security/acl/acl-legacy). Consul provides an optional Access Control List (ACL) system which can be used to control access to data and APIs. The ACL is [Capability-based](https://en.wikipedia.org/wiki/Capability-based_security), relying on tokens which @@ -57,10 +57,10 @@ may benefit from additional components in the ACL system: independently configured. (Added in Consul 1.8.1) - **ACL Auth Methods and Binding Rules** - To learn more about these topics, - see the [auth methods documentation page](/docs/acl/auth-methods). + see the [auth methods documentation page](/docs/security/acl/auth-methods). ACL tokens, policies, roles, auth methods, and binding rules are managed by -Consul operators via Consul's [ACL API](/api/acl/acl), +Consul operators via Consul's [ACL API](/api-docs/acl), [ACL CLI](/commands/acl), or systems like [HashiCorp's Vault](https://www.vaultproject.io/docs/secrets/consul). @@ -78,12 +78,12 @@ ACL policies can have the following attributes: | `ID` | The policy's auto-generated public identifier. | N/A | N/A | | `name` | Unique name for the policy. | Required | none | | `description` | Human readable description of the policy. | Optional | none | -| `rules` | Set of rules granting or denying permissions. See the [Rule Specification](/docs/acl/acl-rules#rule-specification) documentation for more details. | Optional | none | -| `datacenter` | Datacenter in which the policy is valid. More than one datacenter can be specified. | Optional | none | +| `rules` | Set of rules granting or denying permissions. See the [Rule Specification](/docs/security/acl/acl-rules#rule-specification) documentation for more details. | Optional | none | +| `datacenter` | Datacenter in which the policy is valid. More than one datacenter can be specified. | Optional | none | | `namespace` | Namespace in which the policy is valid. Added in Consul Enterprise 1.7.0. | Optional | `default` | | `partition` | Admin partition in which the policy is valid. Added in Consul Enterprise 1.11.0 | Optional | `default` | --> **Non-default Namespaces and Partitions** - Rules defined in a policy tied to an namespace or admin partition other than `default` can only grant a subset of privileges that affect the namespace or partition. See [Namespace Rules](/docs/acl/acl-rules#namespace-rules) and [Admin Partition Rules](/docs/acl/acl-rules#admin-partition-rules) for additional information. +-> **Non-default Namespaces and Partitions** - Rules defined in a policy tied to an namespace or admin partition other than `default` can only grant a subset of privileges that affect the namespace or partition. See [Namespace Rules](/docs/security/acl/acl-rules#namespace-rules) and [Admin Partition Rules](/docs/security/acl/acl-rules#admin-partition-rules) for additional information. You can view the current ACL policies on the command line or through the API. The following example demonstrates the command line usage: @@ -130,7 +130,7 @@ Note that the `Hash`, `CreateIndex`, and `ModifyIndex` attributes are also print -> Added in Consul 1.5.0 -An ACL service identity is an [ACL policy](/docs/acl/acl-system#acl-policies) template for expressing a link to a policy +An ACL service identity is an [ACL policy](/docs/security/acl/acl-system#acl-policies) template for expressing a link to a policy suitable for use in [Consul Connect](/docs/connect). They are usable on both tokens and roles and are composed of the following elements: @@ -144,7 +144,7 @@ template to aid in avoiding boilerplate policy creation. During the authorization process, the configured service identity is automatically applied as a policy with the following preconfigured [ACL -rules](/docs/acl/acl-system#acl-rules-and-scope): +rules](/docs/security/acl/acl-system#acl-rules-and-scope): ```hcl # Allow the service and its sidecar proxy to register into the catalog. @@ -173,7 +173,7 @@ examples of using a service identity. -> Added in Consul 1.8.1 -An ACL node identity is an [ACL policy](/docs/acl/acl-system#acl-policies) template for expressing a link to a policy +An ACL node identity is an [ACL policy](/docs/security/acl/acl-system#acl-policies) template for expressing a link to a policy suitable for use as an [Consul `agent` token](/docs/agent/options#acl_tokens_agent). They are usable on both tokens and roles and are composed of the following elements: @@ -182,7 +182,7 @@ on both tokens and roles and are composed of the following elements: During the authorization process, the configured node identity is automatically applied as a policy with the following preconfigured [ACL -rules](/docs/acl/acl-system#acl-rules-and-scope): +rules](/docs/security/acl/acl-system#acl-rules-and-scope): ```hcl # Allow the agent to register its own node in the Catalog and update its network coordinates @@ -296,7 +296,7 @@ The token Secret ID is passed along with each RPC request to the servers. Consul [HTTP endpoints](/api) can accept tokens via the `token` query string parameter, the `X-Consul-Token` request header, or an [RFC6750](https://tools.ietf.org/html/rfc6750) authorization bearer token. Consul's -[CLI commands](/docs/commands) can accept tokens via the +[CLI commands](/commands) can accept tokens via the `token` argument, or the `CONSUL_HTTP_TOKEN` environment variable. The CLI commands can also accept token values stored in files with the `token-file` argument, or the `CONSUL_HTTP_TOKEN_FILE` environment variable. @@ -319,16 +319,16 @@ rules: | Resource | Scope | | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`acl`](/docs/acl/acl-rules#acl-resource-rules) | Operations for managing the ACL system [ACL API](/api/acl/acl) | -| [`agent`](/docs/acl/acl-rules#agent-rules) | Utility operations in the [Agent API](/api/agent), other than service and check registration | -| [`event`](/docs/acl/acl-rules#event-rules) | Listing and firing events in the [Event API](/api/event) | -| [`key`](/docs/acl/acl-rules#key-value-rules) | Key/value store operations in the [KV Store API](/api/kv) | -| [`keyring`](/docs/acl/acl-rules#keyring-rules) | Keyring operations in the [Keyring API](/api/operator/keyring) | -| [`node`](/docs/acl/acl-rules#node-rules) | Node-level catalog operations in the [Catalog API](/api/catalog), [Health API](/api/health), [Prepared Query API](/api/query), [Network Coordinate API](/api/coordinate), and [Agent API](/api/agent) | -| [`operator`](/docs/acl/acl-rules#operator-rules) | Cluster-level operations in the [Operator API](/api/operator), other than the [Keyring API](/api/operator/keyring) | -| [`query`](/docs/acl/acl-rules#prepared-query-rules) | Prepared query operations in the [Prepared Query API](/api/query) | -| [`service`](/docs/acl/acl-rules#service-rules) | Service-level catalog operations in the [Catalog API](/api/catalog), [Health API](/api/health), [Intentions API](/api/connect/intentions), [Prepared Query API](/api/query), and [Agent API](/api/agent) | -| [`session`](/docs/acl/acl-rules#session-rules) | Session operations in the [Session API](/api/session) | +| [`acl`](/docs/security/acl/acl-rules#acl-resource-rules) | Operations for managing the ACL system [ACL API](/api-docs/acl) | +| [`agent`](/docs/security/acl/acl-rules#agent-rules) | Utility operations in the [Agent API](/api/agent), other than service and check registration | +| [`event`](/docs/security/acl/acl-rules#event-rules) | Listing and firing events in the [Event API](/api/event) | +| [`key`](/docs/security/acl/acl-rules#key-value-rules) | Key/value store operations in the [KV Store API](/api/kv) | +| [`keyring`](/docs/security/acl/acl-rules#keyring-rules) | Keyring operations in the [Keyring API](/api/operator/keyring) | +| [`node`](/docs/security/acl/acl-rules#node-rules) | Node-level catalog operations in the [Catalog API](/api/catalog), [Health API](/api/health), [Prepared Query API](/api/query), [Network Coordinate API](/api/coordinate), and [Agent API](/api/agent) | +| [`operator`](/docs/security/acl/acl-rules#operator-rules) | Cluster-level operations in the [Operator API](/api/operator), other than the [Keyring API](/api/operator/keyring) | +| [`query`](/docs/security/acl/acl-rules#prepared-query-rules) | Prepared query operations in the [Prepared Query API](/api/query) | +| [`service`](/docs/security/acl/acl-rules#service-rules) | Service-level catalog operations in the [Catalog API](/api/catalog), [Health API](/api/health), [Intentions API](/api/connect/intentions), [Prepared Query API](/api/query), and [Agent API](/api/agent) | +| [`session`](/docs/security/acl/acl-rules#session-rules) | Session operations in the [Session API](/api/session) | Since Consul snapshots actually contain ACL tokens, the [Snapshot API](/api/snapshot) requires a token with "write" privileges for the ACL system. @@ -346,7 +346,7 @@ The following resources are not covered by ACL policies: 3. The [connect CA roots endpoint](/api/connect/ca#list-ca-root-certificates) exposes just the public TLS certificate which other systems can use to verify the TLS connection with Consul. Constructing rules from these policies is covered in detail on the -[ACL Rules](/docs/acl/acl-rules) page. +[ACL Rules](/docs/security/acl/acl-rules) page. -> **Consul Enterprise Namespacing** - In addition to directly linked policies, roles and service identities, Consul Enterprise will include the ACL policies and roles defined in the [Namespaces definition](/docs/enterprise/namespaces#namespace-definition). (Added in Consul Enterprise 1.7.0) @@ -404,7 +404,7 @@ node_prefix "" { The [`acl.tokens.agent`](/docs/agent/options#acl_tokens_agent) is a special token that is used for an agent's internal operations. It isn't used directly for any user-initiated operations like the [`acl.tokens.default`](/docs/agent/options#acl_tokens_default), though if the `acl.tokens.agent` isn't configured the `acl.tokens.default` will be used. The ACL agent token is used for the following operations by the agent: 1. Updating the agent's node entry using the [Catalog API](/api/catalog), including updating its node metadata, tagged addresses, and network coordinates -2. Performing [anti-entropy](/docs/internals/anti-entropy) syncing, in particular reading the node metadata and services registered with the catalog +2. Performing [anti-entropy](/docs/architecture/anti-entropy) syncing, in particular reading the node metadata and services registered with the catalog 3. Reading and writing the special `_rexec` section of the KV store when executing [`consul exec`](/commands/exec) commands Here's an example policy sufficient to accomplish the above for a node called `mynode`: @@ -426,4 +426,4 @@ The `service_prefix` policy needs read access for any services that can be regis ## Next Steps Setup ACLs with the [Bootstrapping the ACL System tutorial](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production?utm_source=consul.io&utm_medium=docs) or continue reading about -[ACL rules](/docs/acl/acl-rules). +[ACL rules](/docs/security/acl/acl-rules). diff --git a/website/content/docs/security/acl/auth-methods/index.mdx b/website/content/docs/security/acl/auth-methods/index.mdx index 102e15604..6f3385a03 100644 --- a/website/content/docs/security/acl/auth-methods/index.mdx +++ b/website/content/docs/security/acl/auth-methods/index.mdx @@ -36,9 +36,9 @@ service mesh with minimal operator intervention. | Types | Consul Version | | ------------------------------------------------- | --------------------------------- | -| [`kubernetes`](/docs/acl/auth-methods/kubernetes) | 1.5.0+ | -| [`jwt`](/docs/acl/auth-methods/jwt) | 1.8.0+ | -| [`oidc`](/docs/acl/auth-methods/oidc) | 1.8.0+ | +| [`kubernetes`](/docs/security/acl/auth-methods/kubernetes) | 1.5.0+ | +| [`jwt`](/docs/security/acl/auth-methods/jwt) | 1.8.0+ | +| [`oidc`](/docs/security/acl/auth-methods/oidc) | 1.8.0+ | ## Operator Configuration @@ -68,8 +68,8 @@ token replication enabled. ## Binding Rules Binding rules allow an operator to express a systematic way of automatically -linking [roles](/docs/acl/acl-system#acl-roles) and [service -identities](/docs/acl/acl-system#acl-service-identities) to newly created +linking [roles](/docs/security/acl/acl-system#acl-roles) and [service +identities](/docs/security/acl/acl-system#acl-service-identities) to newly created tokens without operator intervention. Successful authentication with an auth method returns a set of trusted @@ -87,8 +87,8 @@ Each binding rule is composed of two portions: `"serviceaccount.namespace==default and serviceaccount.name!=vault"` - **Bind Type and Name** - A binding rule can bind a token to a - [role](/docs/acl/acl-system#acl-roles) or to a [service - identity](/docs/acl/acl-system#acl-service-identities) by name. The name + [role](/docs/security/acl/acl-system#acl-roles) or to a [service + identity](/docs/security/acl/acl-system#acl-service-identities) by name. The name can be specified with a plain string or the bind name can be lightly templated using [HIL syntax](https://github.com/hashicorp/hil) to interpolate the same values that are usable by the `Selector` syntax. For example: @@ -105,7 +105,7 @@ bearer token for a Consul ACL token by using the login process: ![diagram of auth method login](/img/auth-methods.svg) 1. Applications use the `consul login` subcommand or the [login API - endpoint](/api/acl/acl#login-to-auth-method) to authenticate to a + endpoint](/api-docs/acl#login-to-auth-method) to authenticate to a specific auth method using their local Consul client. Applications provide both the name of the auth method and a secret bearer token during login. @@ -131,7 +131,7 @@ bearer token for a Consul ACL token by using the login process: 8. The Consul client returns the token details back to the application. 9. (later) Applications SHOULD use the `consul logout` subcommand or the - [logout API endpoint](/api/acl/acl#logout-from-auth-method) to destroy + [logout API endpoint](/api-docs/acl#logout-from-auth-method) to destroy their token when it is no longer required. For more details about specific auth methods and how to configure them, click diff --git a/website/content/docs/security/acl/auth-methods/jwt.mdx b/website/content/docs/security/acl/auth-methods/jwt.mdx index 4c518677e..d3d8130c6 100644 --- a/website/content/docs/security/acl/auth-methods/jwt.mdx +++ b/website/content/docs/security/acl/auth-methods/jwt.mdx @@ -18,10 +18,10 @@ cryptographically verified using locally-provided keys, or, if configured, an OIDC Discovery service can be used to fetch the appropriate keys. This page assumes general knowledge of JWTs and the concepts described in the -main [auth method documentation](/docs/acl/auth-methods). +main [auth method documentation](/docs/security/acl/auth-methods). -Both the [`jwt`](/docs/acl/auth-methods/jwt) and the -[`oidc`](/docs/acl/auth-methods/oidc) auth method types allow additional +Both the [`jwt`](/docs/security/acl/auth-methods/jwt) and the +[`oidc`](/docs/security/acl/auth-methods/oidc) auth method types allow additional processing of the claims data in the JWT. @include 'jwt_or_oidc.mdx' diff --git a/website/content/docs/security/acl/auth-methods/kubernetes.mdx b/website/content/docs/security/acl/auth-methods/kubernetes.mdx index 107f3a2f7..e1490ba8e 100644 --- a/website/content/docs/security/acl/auth-methods/kubernetes.mdx +++ b/website/content/docs/security/acl/auth-methods/kubernetes.mdx @@ -17,7 +17,7 @@ easy to introduce a Consul token into a Kubernetes pod. This page assumes general knowledge of [Kubernetes](https://kubernetes.io/) and the concepts described in the main [auth method -documentation](/docs/acl/auth-methods). +documentation](/docs/security/acl/auth-methods). ## Config Parameters @@ -75,7 +75,7 @@ parameters are required to properly configure an auth method of type ## RBAC The Kubernetes service account corresponding to the configured -[`ServiceAccountJWT`](/docs/acl/auth-methods/kubernetes#serviceaccountjwt) +[`ServiceAccountJWT`](/docs/security/acl/auth-methods/kubernetes#serviceaccountjwt) needs to have access to two Kubernetes APIs: - [**TokenReview**](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#create-tokenreview-v1-authentication-k8s-io) @@ -136,7 +136,7 @@ roleRef: ## Kubernetes Authentication Details Initially the -[`ServiceAccountJWT`](/docs/acl/auth-methods/kubernetes#serviceaccountjwt) +[`ServiceAccountJWT`](/docs/security/acl/auth-methods/kubernetes#serviceaccountjwt) given to the Consul leader uses the TokenReview API to validate the provided JWT. The trusted attributes of `serviceaccount.namespace`, `serviceaccount.name`, and `serviceaccount.uid` are populated directly from the diff --git a/website/content/docs/security/acl/auth-methods/oidc.mdx b/website/content/docs/security/acl/auth-methods/oidc.mdx index 67d0b37a4..5c9605831 100644 --- a/website/content/docs/security/acl/auth-methods/oidc.mdx +++ b/website/content/docs/security/acl/auth-methods/oidc.mdx @@ -24,10 +24,10 @@ This method may be initiated from the Consul UI or the command line. This page assumes general knowledge of [OIDC concepts](https://developer.okta.com/blog/2017/07/25/oidc-primer-part-1) and the concepts described in the main [auth method -documentation](/docs/acl/auth-methods). +documentation](/docs/security/acl/auth-methods). -Both the [`jwt`](/docs/acl/auth-methods/jwt) and the -[`oidc`](/docs/acl/auth-methods/oidc) auth method types allow additional +Both the [`jwt`](/docs/security/acl/auth-methods/jwt) and the +[`oidc`](/docs/security/acl/auth-methods/oidc) auth method types allow additional processing of the claims data in the JWT. @include 'jwt_or_oidc.mdx' diff --git a/website/content/docs/security/acl/index.mdx b/website/content/docs/security/acl/index.mdx index 08d6488ba..44b977657 100644 --- a/website/content/docs/security/acl/index.mdx +++ b/website/content/docs/security/acl/index.mdx @@ -23,32 +23,32 @@ ACLs. Consul provides an optional Access Control List (ACL) system which can be used to control access to data and APIs. The ACL system is a Capability-based system that relies on tokens which can have fine grained rules applied to them. The -[ACL System documentation](/docs/acl/acl-system) details the functionality +[ACL System documentation](/docs/security/acl/acl-system) details the functionality of Consul ACLs. ### ACL Rules A core part of the ACL system is the rule language, which is used to describe the policy that must be enforced. Read the ACL rules -[documentation](/docs/acl/acl-rules) to learn about rule specifications. +[documentation](/docs/security/acl/acl-rules) to learn about rule specifications. ### ACL Auth Methods An auth method is a component in Consul that performs authentication against a trusted external party to authorize the creation of an ACL tokens usable within the local datacenter. Read the ACL auth method -[documentation](/docs/acl/auth-methods) to learn more about how they +[documentation](/docs/security/acl/auth-methods) to learn more about how they work and why you may want to use them. ### ACL Legacy System The ACL system in Consul 1.3.1 and older is now called legacy. For information on bootstrapping the legacy system, ACL rules, and a general ACL system -overview, read the legacy [documentation](/docs/acl/acl-legacy). +overview, read the legacy [documentation](/docs/security/acl/acl-legacy). ### ACL Migration -[The migration documentation](/docs/acl/acl-migrate-tokens) details how to +[The migration documentation](/docs/security/acl/acl-migrate-tokens) details how to upgrade existing legacy tokens after upgrading to 1.4.0. It will briefly describe what changed, and then walk through the high-level migration process options, finally giving some specific examples of migration strategies. The new diff --git a/website/content/docs/security/encryption.mdx b/website/content/docs/security/encryption.mdx index 2956d19ee..0d71e8654 100644 --- a/website/content/docs/security/encryption.mdx +++ b/website/content/docs/security/encryption.mdx @@ -10,7 +10,7 @@ description: >- # Encryption The Consul agent supports encrypting all of its network traffic. The exact -method of encryption is described on the [encryption internals page](/docs/internals/security). +method of encryption is described on the [encryption internals page](/docs/security). There are two separate encryption systems, one for gossip traffic and one for RPC. To configure the encryption systems on a new cluster, review this following tutorials to diff --git a/website/content/docs/security/security-models/core.mdx b/website/content/docs/security/security-models/core.mdx index 83ac5ade6..3f1198367 100644 --- a/website/content/docs/security/security-models/core.mdx +++ b/website/content/docs/security/security-models/core.mdx @@ -154,7 +154,7 @@ environment and adapt these configurations accordingly. capabilities tied to an individual human, or machine operator identity. To ultimately secure the ACL system, administrators should configure the [`default_policy`](/docs/agent/options#acl_default_policy) to "deny". - The [system](/docs/acl/acl-system) is comprised of five major components: + The [system](/docs/security/acl/acl-system) is comprised of five major components: - **🗝 Token** - API key associated with policies, roles, or service identities. diff --git a/website/content/docs/troubleshoot/faq.mdx b/website/content/docs/troubleshoot/faq.mdx index 4bc63d5c8..9734c3880 100644 --- a/website/content/docs/troubleshoot/faq.mdx +++ b/website/content/docs/troubleshoot/faq.mdx @@ -78,9 +78,9 @@ Consul has two important subsystems, the service catalog and the gossip protocol. The service catalog stores all the nodes, service instances, health check data, ACLs, and KV information. It is strongly consistent, and replicated -using the [consensus protocol](/docs/internals/consensus). +using the [consensus protocol](/docs/architecture/consensus). -The [gossip protocol](/docs/internals/gossip) is used to track which +The [gossip protocol](/docs/architecture/gossip) is used to track which nodes are part of the cluster and to detect a node or agent failure. This information is eventually consistent by nature. When the servers detects a change in membership, or receive a health update, they update the service @@ -174,7 +174,7 @@ We recommend taking any precautions or remediation steps that you would normally do for individual processes, based on your operating system. Please see our -[Security Model](/docs/internals/security) for more information. +[Security Model](/docs/security) for more information. ### Q: Are the Consul Docker Images OCI Compliant? diff --git a/website/content/docs/upgrading/compatibility.mdx b/website/content/docs/upgrading/compatibility.mdx index e43d11247..a60b8ab83 100644 --- a/website/content/docs/upgrading/compatibility.mdx +++ b/website/content/docs/upgrading/compatibility.mdx @@ -40,4 +40,4 @@ For more details on the specifics of upgrading, see the [upgrading page](/docs/u | 0.6 | 1, 2, 3 | | >= 0.7 | 2, 3. Will automatically use protocol > 2 when speaking to compatible agents | --> **Note:** Raft Protocol is versioned separately, but maintains compatibility with at least one prior version. See [here](/docs/upgrade-specific#raft-protocol-version-compatibility) for details. +-> **Note:** Raft Protocol is versioned separately, but maintains compatibility with at least one prior version. See [here](/docs/upgrading/upgrade-specific#raft-protocol-version-compatibility) for details. diff --git a/website/content/docs/upgrading/index.mdx b/website/content/docs/upgrading/index.mdx index aee42b487..3087c7d1a 100644 --- a/website/content/docs/upgrading/index.mdx +++ b/website/content/docs/upgrading/index.mdx @@ -30,7 +30,7 @@ Visit the [General Upgrade Process](https://www.consul.io/docs/upgrading/instruc For most upgrades, the process is simple. Assuming the current version of Consul is A, and version B is released. -1. Check the [version's upgrade notes](/docs/upgrade-specific) to ensure +1. Check the [version's upgrade notes](/docs/upgrading/upgrade-specific) to ensure there are no compatibility issues that will affect your workload. If there are plan accordingly before continuing. @@ -81,7 +81,7 @@ version B comes out. You can verify this is the case by running `consul members` to make sure all members are speaking the same, latest protocol version. -The key to making this work is the [protocol compatibility](/docs/compatibility) +The key to making this work is the [protocol compatibility](/docs/upgrading/compatibility) of Consul. The protocol version system is discussed below. ## Protocol Versions @@ -124,7 +124,7 @@ your cluster so that you can run the latest protocol version. ## Upgrading on Kubernetes -See the dedicated [Upgrading Consul on Kubernetes](/docs/platform/k8s/upgrading) page. +See the dedicated [Upgrading Consul on Kubernetes](/docs/k8s/upgrade) page. ## Upgrading federated datacenters diff --git a/website/content/docs/upgrading/instructions/general-process.mdx b/website/content/docs/upgrading/instructions/general-process.mdx index c18e361f1..2a515ec83 100644 --- a/website/content/docs/upgrading/instructions/general-process.mdx +++ b/website/content/docs/upgrading/instructions/general-process.mdx @@ -39,7 +39,7 @@ Docker containers are available at these locations: If you are using Kubernetes, then please review our documentation for -[Upgrading Consul on Kubernetes](/docs/k8s/operations/upgrading). +[Upgrading Consul on Kubernetes](/docs/k8s/upgrade). @@ -74,7 +74,7 @@ this snapshot somewhere safe. More documentation on snapshot usage is available - https://www.consul.io/commands/snapshot - https://learn.hashicorp.com/tutorials/consul/backup-and-restore -**2.** Temporarily modify your Consul configuration so that its [log_level](/docs/agent/options.html#_log_level) +**2.** Temporarily modify your Consul configuration so that its [log_level](/docs/agent/options#_log_level) is set to `debug`. After doing this, issue the following command on your servers to reload the configuration: @@ -183,7 +183,7 @@ then the following options for further assistance are available: When contacting Hashicorp Support, please include the following information in your ticket: - Consul version you were upgrading FROM and TO. -- [Debug level logs](/docs/agent/options.html#_log_level) from all servers in the cluster +- [Debug level logs](/docs/agent/options#_log_level) from all servers in the cluster that you are having trouble with. These should include logs from prior to the upgrade attempt up through the current time. If your logs were not set at debug level prior to the upgrade, please include those logs as well. Also, update your config to use debug logs, diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx index 78a602b03..b4fd85c45 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-10-x.mdx @@ -115,7 +115,7 @@ are operating Consul within Kubernetes. **5.** Upgrade all client agents to the latest 1.8.x or 1.9.x release. -**6.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to the latest 1.8.x or 1.9.x release. +**6.** Upgrade all [snapshot agents](/commands/snapshot/agent) to the latest 1.8.x or 1.9.x release. **7.** Take a snapshot of the upgraded cluster by running the following command: @@ -124,7 +124,7 @@ consul snapshot save intermediate.snap ``` Note that you can run the command from anywhere Consul is already running or from a location that has network access to the cluster. -If run elsewhere, [additional command line options](/docs/commands/snapshot/save#api-options) may be needed to direct the request to the right Consul API. +If run elsewhere, [additional command line options](/commands/snapshot/save#api-options) may be needed to direct the request to the right Consul API. Note that you will need to ensure there is enough disk space in the current directory to store the snapshot. In the worst case, the snapshot size could be close to the amount @@ -145,7 +145,7 @@ You can also refer to the [Apply Enterprise License](https://learn.hashicorp.com **10.** Upgrade all client agents to v1.10.0. -**11.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to v1.10.0. +**11.** Upgrade all [snapshot agents](/commands/snapshot/agent) to v1.10.0. @@ -173,7 +173,7 @@ to promptly proceed with the upgrade and not leave agents in the intermediate st **7.** Pre-configure the snapshot agents with a license. This is the same process that was executed for the servers in step 5. -**8.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to the latest 1.8.x or 1.9.x release. +**8.** Upgrade all [snapshot agents](/commands/snapshot/agent) to the latest 1.8.x or 1.9.x release. **9.** Take a snapshot of the upgraded cluster by running the following command: @@ -198,7 +198,7 @@ was executed for the servers in step 5. **12.** Upgrade all client agents to v1.10.0. -**13.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to v1.10.0. +**13.** Upgrade all [snapshot agents](/commands/snapshot/agent) to v1.10.0. diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx index 5fae87dd8..460fe4b18 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx @@ -51,7 +51,7 @@ Looking through these changes prior to upgrading is highly recommended. Two very notable items are: - 1.6.2 introduced more strict JSON decoding. Invalid JSON that was previously ignored might result in errors now (e.g., `Connect: null` in service definitions). See [[GH#6680](https://github.com/hashicorp/consul/pull/6680)]. -- 1.6.3 introduced the [http_max_conns_per_client](https://www.consul.io/docs/agent/options.html#http_max_conns_per_client) limit. This defaults to 200. Prior to this, connections per client were unbounded. [[GH#7159](https://github.com/hashicorp/consul/issues/7159)] +- 1.6.3 introduced the [http_max_conns_per_client](https://www.consul.io/docs/agent/options#http_max_conns_per_client) limit. This defaults to 200. Prior to this, connections per client were unbounded. [[GH#7159](https://github.com/hashicorp/consul/issues/7159)] ## Procedure diff --git a/website/content/docs/upgrading/upgrade-specific.mdx b/website/content/docs/upgrading/upgrade-specific.mdx index 91a0a7c2c..096ecba58 100644 --- a/website/content/docs/upgrading/upgrade-specific.mdx +++ b/website/content/docs/upgrading/upgrade-specific.mdx @@ -420,7 +420,7 @@ as soon as possible after upgrade, as well as updating any integrations to work with the the new ACL [Token](/api/acl/tokens) and [Policy](/api/acl/policies) APIs. -More complete details on how to upgrade "legacy" tokens is available [here](/docs/acl/acl-migrate-tokens). +More complete details on how to upgrade "legacy" tokens is available [here](/docs/security/acl/acl-migrate-tokens). ### Connect Multi-datacenter @@ -480,7 +480,7 @@ The following previously deprecated fields and config options have been removed: - `CheckID` has been removed from config file check definitions (use `id` instead). - `script` has been removed from config file check definitions (use `args` instead). - `enableTagOverride` is no longer valid in service definitions (use `enable_tag_override` instead). -- The [deprecated set of metric names](/docs/upgrade-specific#metric-names-updated) (beginning with `consul.consul.`) has been removed +- The [deprecated set of metric names](/docs/upgrading/upgrade-specific#metric-names-updated) (beginning with `consul.consul.`) has been removed along with the `enable_deprecated_names` option from the metrics configuration. #### New defaults for Raft Snapshot Creation @@ -550,7 +550,7 @@ Raft protocol version 3 requires Consul running 0.8.0 or newer on all servers in order to work, so if you are upgrading with older servers in a cluster then you will need to set this back to 2 in order to upgrade. See [Raft Protocol Version -Compatibility](/docs/upgrade-specific#raft-protocol-version-compatibility) +Compatibility](/docs/upgrading/upgrade-specific#raft-protocol-version-compatibility) for more details. Also the format of `peers.json` used for outage recovery is different when running with the latest Raft protocol. Review [Manual Recovery Using @@ -558,7 +558,7 @@ peers.json](https://learn.hashicorp.com/tutorials/consul/recovery-outage#manual- for a description of the required format. Please note that the Raft protocol is different from Consul's internal protocol -as described on the [Protocol Compatibility Promise](/docs/compatibility) +as described on the [Protocol Compatibility Promise](/docs/upgrading/compatibility) page, and as is shown in commands like `consul members` and `consul version`. To see the version of the Raft protocol in use on each server, use the `consul operator raft list-peers` command. @@ -592,7 +592,7 @@ file directly. All config file formats now require snake_case fields, so all CamelCased parameter names should be changed before upgrading. -See [Service Definition Parameter Case](/docs/agent/services#service-definition-parameter-case) documentation for details. +See [Service Definition Parameter Case](/docs/discovery/services#service-definition-parameter-case) documentation for details. #### Deprecated Options Have Been Removed @@ -626,10 +626,10 @@ upgrading. Here's the complete list of removed options and their equivalents: | `statsite_addr` | [`telemetry.statsite_address`](https://github.com/hashicorp/consul/blob/main/website/pages/docs/agent/options.mdx#telemetry-statsite_address) | | `statsite_prefix` | [`telemetry.metrics_prefix`](/docs/agent/options#telemetry-metrics_prefix) | | `telemetry.statsite_prefix` | [`telemetry.metrics_prefix`](/docs/agent/options#telemetry-metrics_prefix) | -| (service definitions) `serviceid` | [`service_id`](/docs/agent/services) | -| (service definitions) `dockercontainerid` | [`docker_container_id`](/docs/agent/services) | -| (service definitions) `tlsskipverify` | [`tls_skip_verify`](/docs/agent/services) | -| (service definitions) `deregistercriticalserviceafter` | [`deregister_critical_service_after`](/docs/agent/services) | +| (service definitions) `serviceid` | [`service_id`](/docs/discovery/services) | +| (service definitions) `dockercontainerid` | [`docker_container_id`](/docs/discovery/services) | +| (service definitions) `tlsskipverify` | [`tls_skip_verify`](/docs/discovery/services) | +| (service definitions) `deregistercriticalserviceafter` | [`deregister_critical_service_after`](/docs/discovery/services) | #### `statsite_prefix` Renamed to `metrics_prefix` @@ -996,7 +996,7 @@ require any ACL to manage them, and prepared queries with a `Name` defined are now governed by a new `query` ACL policy that will need to be configured after the upgrade. -See the [ACL rules documentation](/docs/acl/acl-rules#prepared-query-rules) for more details +See the [ACL rules documentation](/docs/security/acl/acl-rules#prepared-query-rules) for more details about the new behavior and how it compares to previous versions of Consul. ## Consul 0.6 From 54b37823bc6c8bd53240abeac3d75cfb1421c019 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 15:42:51 -0800 Subject: [PATCH 284/404] Convert absolute URLs to relative URLs for consul.io --- website/content/docs/connect/transparent-proxy.mdx | 2 +- website/content/docs/enterprise/audit-logging.mdx | 2 +- website/content/docs/enterprise/license/faq.mdx | 4 ++-- website/content/docs/install/glossary.mdx | 6 +++--- website/content/docs/integrate/partnerships.mdx | 2 +- .../content/docs/k8s/installation/compatibility.mdx | 2 +- .../single-dc-multi-k8s.mdx | 6 +++--- .../multi-cluster/vms-and-kubernetes.mdx | 2 +- .../content/docs/k8s/installation/vault/index.mdx | 2 +- .../operations/gossip-encryption-key-rotation.mdx | 2 +- website/content/docs/nia/configuration.mdx | 2 +- .../content/docs/nia/installation/requirements.mdx | 2 +- website/content/docs/release-notes/1-10-0.mdx | 2 +- website/content/docs/release-notes/1-9-0.mdx | 2 +- .../docs/security/acl/acl-federated-datacenters.mdx | 2 +- website/content/docs/security/acl/acl-system.mdx | 6 +++--- .../content/docs/security/security-models/core.mdx | 4 ++-- website/content/docs/upgrading/index.mdx | 2 +- .../docs/upgrading/instructions/general-process.mdx | 4 ++-- .../docs/upgrading/instructions/upgrade-to-1-2-x.mdx | 2 +- .../docs/upgrading/instructions/upgrade-to-1-6-x.mdx | 12 ++++++------ 21 files changed, 35 insertions(+), 35 deletions(-) diff --git a/website/content/docs/connect/transparent-proxy.mdx b/website/content/docs/connect/transparent-proxy.mdx index 17b00310a..ee8aa1211 100644 --- a/website/content/docs/connect/transparent-proxy.mdx +++ b/website/content/docs/connect/transparent-proxy.mdx @@ -136,7 +136,7 @@ transparent proxy's datacenter. Services can also dial explicit upstreams in oth [annotation](/docs/k8s/connect#consul-hashicorp-com-connect-service-upstreams) such as `"consul.hashicorp.com/connect-service-upstreams": "my-service:1234:dc2"` to reach an upstream service called `my-service` in the datacenter `dc2`. -* In the deployment configuration where a [single Consul datacenter spans multiple Kubernetes clusters](https://www.consul.io/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s), services in one Kubernetes cluster must explicitly dial a service in another Kubernetes cluster using the [consul.hashicorp.com/connect-service-upstreams](/docs/k8s/connect#consul-hashicorp-com-connect-service-upstreams) annotation. An example would be +* In the deployment configuration where a [single Consul datacenter spans multiple Kubernetes clusters](/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s), services in one Kubernetes cluster must explicitly dial a service in another Kubernetes cluster using the [consul.hashicorp.com/connect-service-upstreams](/docs/k8s/connect#consul-hashicorp-com-connect-service-upstreams) annotation. An example would be `"consul.hashicorp.com/connect-service-upstreams": "my-service:1234"`, where `my-service` is the service that exists in another Kubernetes cluster and is exposed on port `1234`. Although Transparent Proxy is enabled, KubeDNS is not utilized when communicating between services existing on separate Kubernetes clusters. * When dialing headless services the request will be proxied using a plain TCP proxy with a 5s connection timeout. Currently the upstream's protocol and connection timeout are not considered. diff --git a/website/content/docs/enterprise/audit-logging.mdx b/website/content/docs/enterprise/audit-logging.mdx index aec2723d8..24e1ee26b 100644 --- a/website/content/docs/enterprise/audit-logging.mdx +++ b/website/content/docs/enterprise/audit-logging.mdx @@ -25,7 +25,7 @@ For more experience leveraging Consul's audit logging functionality, explore our HashiCorp Learn tutorial [Capture Consul Events with Audit Logging](https://learn.hashicorp.com/tutorials/consul/audit-logging). For detailed configuration information on configuring the Consul Enterprise's audit -logging, review the Consul [Audit Log](https://www.consul.io/docs/agent/options#audit) +logging, review the Consul [Audit Log](/docs/agent/options#audit) documentation. ## Example Configuration diff --git a/website/content/docs/enterprise/license/faq.mdx b/website/content/docs/enterprise/license/faq.mdx index f7657a913..e7717046e 100644 --- a/website/content/docs/enterprise/license/faq.mdx +++ b/website/content/docs/enterprise/license/faq.mdx @@ -35,7 +35,7 @@ Please visit the [Enterprise License Tutorial](https://learn.hashicorp.com/tutor The list below is a great starting point for learning more about the license changes introduced in Consul Enterprise 1.10.0+ent. -- [Consul Enterprise Upgrade Documentation](https://www.consul.io/docs/enterprise/upgrades) +- [Consul Enterprise Upgrade Documentation](/docs/enterprise/upgrades) - [Consul License Documentation](/docs/enterprise/license/overview) @@ -90,7 +90,7 @@ Consul snapshot agents will attempt to retrieve the license from servers if cert ## Q: Where can users get a trial license for Consul Enterprise? -Visit https://www.consul.io/trial for a free 30-day trial license. +Visit [consul.io/trial](/trial) for a free 30-day trial license. ## Q: Are the license files locked to a specific cluster? diff --git a/website/content/docs/install/glossary.mdx b/website/content/docs/install/glossary.mdx index a71f3b4fe..703761450 100644 --- a/website/content/docs/install/glossary.mdx +++ b/website/content/docs/install/glossary.mdx @@ -83,9 +83,9 @@ An Access Control List (ACL) is a list of user permissions for a file, folder, o other object. It defines what users and groups can access the object and what operations they can perform. -Consul uses Access Control Lists (ACLs) to secure the UI, API, CLI, service -communications, and agent communications. -Visit [Consul ACL Documentation and Guides](https://www.consul.io/docs/acl) +Consul uses Access Control Lists (ACLs) to secure the UI, API, CLI, service +communications, and agent communications. +Visit [Consul ACL Documentation and Guides](/docs/security/acl) ## API Gateway An Application Programming Interface (API) is a common software interface that diff --git a/website/content/docs/integrate/partnerships.mdx b/website/content/docs/integrate/partnerships.mdx index 2c5d23580..d461b2f1e 100644 --- a/website/content/docs/integrate/partnerships.mdx +++ b/website/content/docs/integrate/partnerships.mdx @@ -33,7 +33,7 @@ By leveraging Consul’s RESTful HTTP API system, prospective partners are able **Infrastructure**: There are two integration options in this category: natively through a direct integration with Consul or via Consul-Terraform-Sync (CTS). By leveraging Consul’s powerful **Network Infrastructure Automation (NIA)*** capabilities through CTS, changes in an infrastructure are seamlessly automated when Consul detects a change in its service catalog. For example, these integrations could be used to automate IP updates of load balancers or firewall security policies by leveraging Consul service discovery. --> **Network Infrastructure Automation (NIA)***: These integrations leverage Consul’s service catalog to seamlessly integrate with Consul-Terraform-Sync (CTS) to automate changes in network infrastructure via a publisher-subscriber method. More details can be found [here](https://www.consul.io/docs/integrate/nia-integration). +-> **Network Infrastructure Automation (NIA)***: These integrations leverage Consul’s service catalog to seamlessly integrate with Consul-Terraform-Sync (CTS) to automate changes in network infrastructure via a publisher-subscriber method. More details can be found [here](/docs/integrate/nia-integration). ## Development Process diff --git a/website/content/docs/k8s/installation/compatibility.mdx b/website/content/docs/k8s/installation/compatibility.mdx index b46eef6fb..1c174baea 100644 --- a/website/content/docs/k8s/installation/compatibility.mdx +++ b/website/content/docs/k8s/installation/compatibility.mdx @@ -33,7 +33,7 @@ Prior to Consul Kubernetes 0.33.0, a separately versioned Consul Helm chart was ## Supported Envoy versions -Supported versions of Envoy for Consul versions are also found in [Envoy - Supported Versions](https://www.consul.io/docs/connect/proxies/envoy#supported-versions). The recommended best practice is to use the default version of Envoy that is provided in the Helm values.yml file, as that is the version that has been tested with the default Consul and Consul Kubernetes binaries for a given Helm chart. +Supported versions of Envoy for Consul versions are also found in [Envoy - Supported Versions](/docs/connect/proxies/envoy#supported-versions). The recommended best practice is to use the default version of Envoy that is provided in the Helm values.yml file, as that is the version that has been tested with the default Consul and Consul Kubernetes binaries for a given Helm chart. ## Red Hat OpenShift compatability diff --git a/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx b/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx index 01c8b30d9..baa36174d 100644 --- a/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx +++ b/website/content/docs/k8s/installation/deployment-configurations/single-dc-multi-k8s.mdx @@ -169,7 +169,7 @@ the value of `cluster.server` for the second cluster. Lastly, we need to set up the clients so that they can discover the servers in the first cluster. For this, we will use Consul's cloud auto-join feature -for the [Kubernetes provider](https://www.consul.io/docs/install/cloud-auto-join#kubernetes-k8s). +for the [Kubernetes provider](/docs/install/cloud-auto-join#kubernetes-k8s). To use it we need to provide a way for the Consul clients to reach the first Kubernetes cluster. To do that, we need to save the `kubeconfig` for the first cluster as a Kubernetes secret in the second cluster and reference it in the `clients.join` value. Note that we're making that secret available to the client pods @@ -177,7 +177,7 @@ by setting it in `client.extraVolumes`. ~> **Note:** The kubeconfig you're providing to the client should have minimal permissions. The cloud auto-join provider will only need permission to read pods. -Please see [Kubernetes Cloud auto-join](https://www.consul.io/docs/install/cloud-auto-join#kubernetes-k8s) +Please see [Kubernetes Cloud auto-join](/docs/install/cloud-auto-join#kubernetes-k8s) for more details. Now we're ready to install! @@ -188,7 +188,7 @@ $ helm install cluster2 --values cluster2-config.yaml hashicorp/consul ## Verifying the Consul Service Mesh works -~> When Transparent proxy is enabled, services in one Kubernetes cluster that need to communicate with a service in another Kubernetes cluster must have a explicit upstream configured through the ["consul.hashicorp.com/connect-service-upstreams"](https://www.consul.io/docs/k8s/connect#consul-hashicorp-com-connect-service-upstreams) annotation. +~> When Transparent proxy is enabled, services in one Kubernetes cluster that need to communicate with a service in another Kubernetes cluster must have a explicit upstream configured through the ["consul.hashicorp.com/connect-service-upstreams"](/docs/k8s/connect#consul-hashicorp-com-connect-service-upstreams) annotation. Now that we have our Consul cluster in multiple k8s clusters up and running, we will deploy two services and verify that they can connect to each other. diff --git a/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx b/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx index dc238649c..e88be62b8 100644 --- a/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx +++ b/website/content/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx @@ -63,7 +63,7 @@ The following sections detail how to export this data. ==> Saved vm-dc-server-consul-0-key.pem ``` - -> Note the `-node` option in the above command. This should be same as the node name of the [Consul Agent](https://www.consul.io/docs/agent#running-an-agent). This is a [requirement](https://www.consul.io/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways#tls) for Consul Federation to work. Alternatively, if you plan to use the same certificate and key pair on all your Consul server nodes, or you don't know the nodename in advance, use `-node "*"` instead. + -> Note the `-node` option in the above command. This should be same as the node name of the [Consul Agent](/docs/agent#running-an-agent). This is a [requirement](/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways#tls) for Consul Federation to work. Alternatively, if you plan to use the same certificate and key pair on all your Consul server nodes, or you don't know the nodename in advance, use `-node "*"` instead. Not satisfying this requirement would result in the following error in the Consul Server logs: `[ERROR] agent.server.rpc: TLS handshake failed: conn=from= error="remote error: tls: bad certificate"` diff --git a/website/content/docs/k8s/installation/vault/index.mdx b/website/content/docs/k8s/installation/vault/index.mdx index b76ee4b5d..a59bbb6c5 100644 --- a/website/content/docs/k8s/installation/vault/index.mdx +++ b/website/content/docs/k8s/installation/vault/index.mdx @@ -60,7 +60,7 @@ $ vault secrets enable -path=consul kv-v2 ### Vault PKI Engine -The Vault PKI Engine must be enabled in order to leverage Vault for issuiing Consul Server TLS certificates. More details for configuring the PKI Engine is found in [Bootstrapping the PKI Engine](https://www.consul.io/docs/k8s/installation/vault/server-tls#bootstrapping-the-pki-engine) under the Server TLS section. +The Vault PKI Engine must be enabled in order to leverage Vault for issuiing Consul Server TLS certificates. More details for configuring the PKI Engine is found in [Bootstrapping the PKI Engine](/docs/k8s/installation/vault/server-tls#bootstrapping-the-pki-engine) under the Server TLS section. ```shell-session $ vault secrets enable pki diff --git a/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx b/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx index 9a6b06759..c77348d85 100644 --- a/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx +++ b/website/content/docs/k8s/operations/gossip-encryption-key-rotation.mdx @@ -8,7 +8,7 @@ description: Rotate the Gossip Encryption Key on Kubernetes Cluster safely The following instructions provides a step-by-step manual process for rotating [gossip encryption](/docs/security/encryption#gossip-encryption) keys on Consul clusters that are deployed onto a Kubernetes cluster with Consul on Kubernetes. -The following steps should only be performed in the *primary datacenter* if your Consul clusters are [federated](https://www.consul.io/docs/k8s/installation/multi-cluster/kubernetes). Rotating the gossip encryption in the primary datacenter will automatically rotate the gossip encryption in the secondary datacenters. +The following steps should only be performed in the *primary datacenter* if your Consul clusters are [federated](/docs/k8s/installation/multi-cluster/kubernetes). Rotating the gossip encryption in the primary datacenter will automatically rotate the gossip encryption in the secondary datacenters. -> **Note:** Careful precaution should be taken to prohibit new clients from joining during the gossip encryption rotation process, otherwise the new clients will join the gossip pool without knowledge of the new primary gossip encryption key. In addition, deletion of a gossip encryption key from the keyring should occur only after clients have safely migrated to utilizing the new gossip encryption key for communication. diff --git a/website/content/docs/nia/configuration.mdx b/website/content/docs/nia/configuration.mdx index 455f01e77..741f5a745 100644 --- a/website/content/docs/nia/configuration.mdx +++ b/website/content/docs/nia/configuration.mdx @@ -98,7 +98,7 @@ consul { - `max_idle_conns` - (int: 0) The maximum number of total idle connections across all hosts. The limit is disabled by default. - `max_idle_conns_per_host` - (int: 100) The maximum number of idle connections per remote host. The majority of connections are established with one host, the Consul agent. - To achieve the shortest latency between a Consul service update to a task execution, configure `max_idle_conns_per_host` equal to or greater than the number of services in automation across all tasks. - - This value should be lower than the configured [`http_max_conns_per_client`](https://www.consul.io/docs/agent/options#http_max_conns_per_client) for the Consul agent. If `max_idle_conns_per_host` and the number of services in automation is greater than the Consul agent limit, Consul-Terraform-Sync may error due to connection limits (status code 429). You may increase the agent limit with caution. _Note: requests to the Consul agent made by Terraform subprocesses or any other process on the same host as Consul-Terraform-Sync will contribute to the Consul agent connection limit._ + - This value should be lower than the configured [`http_max_conns_per_client`](/docs/agent/options#http_max_conns_per_client) for the Consul agent. If `max_idle_conns_per_host` and the number of services in automation is greater than the Consul agent limit, Consul-Terraform-Sync may error due to connection limits (status code 429). You may increase the agent limit with caution. _Note: requests to the Consul agent made by Terraform subprocesses or any other process on the same host as Consul-Terraform-Sync will contribute to the Consul agent connection limit._ - `tls_handshake_timeout` - (string: "10s") amount of time to wait to complete the TLS handshake. ## Service diff --git a/website/content/docs/nia/installation/requirements.mdx b/website/content/docs/nia/installation/requirements.mdx index 10bf027bf..de15c22de 100644 --- a/website/content/docs/nia/installation/requirements.mdx +++ b/website/content/docs/nia/installation/requirements.mdx @@ -56,7 +56,7 @@ $ curl --request PUT --data @payload.json http://localhost:8500/v1/agent/service The above example registers a service named "web" with your Consul agent. This represents a non-existent web service running at 10.10.10.10:8000. Your web service is now available for Consul-Terraform-Sync to consume. In Consul-Terraform-Sync, you can optionally configure the web service with a [service block](/docs/nia/configuration#service) if it has any non-default values. You can also have Consul-Terraform-Sync monitor the web service to execute a task and update network device(s) by configuring "web" in [`task.services`](/docs/nia/configuration#services) of a task block. -For more details on registering a service by HTTP API request, refer to the [register service API docs](https://www.consul.io/api-docs/agent/service#register-service). +For more details on registering a service by HTTP API request, refer to the [register service API docs](/api-docs/agent/service#register-service). For more details on registering a service by loading a service definition, refer to the [Getting Started: Register a Service with Consul Service Discovery Tutorial](https://learn.hashicorp.com/tutorials/consul/get-started-service-discovery?in=consul/getting-started). diff --git a/website/content/docs/release-notes/1-10-0.mdx b/website/content/docs/release-notes/1-10-0.mdx index a0feac10a..074d60967 100644 --- a/website/content/docs/release-notes/1-10-0.mdx +++ b/website/content/docs/release-notes/1-10-0.mdx @@ -22,4 +22,4 @@ page_title: 1.10.0 - Drops support for Envoy version 1.13.x. - (Enterprise Only) Consul Enterprise has removed support for temporary licensing. All server agents must have a valid license at startup and client agents must have a license at startup or be able to retrieve one from the servers. -For more detailed information, please refer to the [upgrade details page](https://www.consul.io/docs/upgrading/upgrade-specific#consul-1-10-0) and the [1.10.0 changelog](https://github.com/hashicorp/consul/releases/tag/v1.10.0). +For more detailed information, please refer to the [upgrade details page](/docs/upgrading/upgrade-specific#consul-1-10-0) and the [1.10.0 changelog](https://github.com/hashicorp/consul/releases/tag/v1.10.0). diff --git a/website/content/docs/release-notes/1-9-0.mdx b/website/content/docs/release-notes/1-9-0.mdx index da06931df..ee22d4ecc 100644 --- a/website/content/docs/release-notes/1-9-0.mdx +++ b/website/content/docs/release-notes/1-9-0.mdx @@ -21,7 +21,7 @@ page_title: 1.9.0 - **Active Health Checks for Consul on Kubernetes:** Consul service mesh now integrates with Kubernetes Readiness probes. This provides the ability to natively detect health status from Kubernetes via Readiness probe, and is then used for directing service mesh traffic. - **Streaming:** This feature introduces a major architectural enhancement in how update notifications for blocking queries are delivered within the cluster. Streaming results in very significant reduction of CPU and network bandwidth usage on Consul servers in large-scale deployments. Streaming is particularly helpful in scaling blocking queries in Consul clusters that have rapid changes in service state. - - Streaming is now available for the service health HTTP endpoint, and can be enabled through the [`use_streaming_backend`](https://www.consul.io/docs/agent/options#use_streaming_backend) client configuration option, and [`rpc.enable_streaming`](https://www.consul.io/docs/agent/options#rpc_enable_streaming) option on the servers. We will continue to enable streaming in more endpoints in subsequent releases. + - Streaming is now available for the service health HTTP endpoint, and can be enabled through the [`use_streaming_backend`](/docs/agent/options#use_streaming_backend) client configuration option, and [`rpc.enable_streaming`](/docs/agent/options#rpc_enable_streaming) option on the servers. We will continue to enable streaming in more endpoints in subsequent releases. ## What's Changed diff --git a/website/content/docs/security/acl/acl-federated-datacenters.mdx b/website/content/docs/security/acl/acl-federated-datacenters.mdx index 1c5b63792..e13627d17 100644 --- a/website/content/docs/security/acl/acl-federated-datacenters.mdx +++ b/website/content/docs/security/acl/acl-federated-datacenters.mdx @@ -164,7 +164,7 @@ production environments, consider configuring ACL replication in your initial datacenter bootstrapping process. ~> **Warning:** If you are using [Consul Enterprise](/docs/enterprise) and -the [Admin Partitions](https://www.consul.io/docs/enterprise/admin-partitions) +the [Admin Partitions](/docs/enterprise/admin-partitions) feature, only ACL tokens in the default partition are replicated to other datacenters. ## WAN Join Servers diff --git a/website/content/docs/security/acl/acl-system.mdx b/website/content/docs/security/acl/acl-system.mdx index 820629c9f..e61e7804c 100644 --- a/website/content/docs/security/acl/acl-system.mdx +++ b/website/content/docs/security/acl/acl-system.mdx @@ -69,7 +69,7 @@ If the ACL system becomes inoperable, you can follow the ### ACL Policies -An ACL policy (not to be confused with [policy dispositions](/docs/security/acl/acl-rules#policy-dispositions)) is a named set of rules and several attributes that define the policy domain. The ID is generated when the policy is created, but you can specify the attributes when creating the policy. Refer to the [ACL policy command line](https://www.consul.io/commands/acl/policy) documentation or [ACL policy API](/api-docs/acl/policies) documentation for additional information on how to create policies. +An ACL policy (not to be confused with [policy dispositions](/docs/security/acl/acl-rules#policy-dispositions)) is a named set of rules and several attributes that define the policy domain. The ID is generated when the policy is created, but you can specify the attributes when creating the policy. Refer to the [ACL policy command line](/commands/acl/policy) documentation or [ACL policy API](/api-docs/acl/policies) documentation for additional information on how to create policies. ACL policies can have the following attributes: @@ -215,11 +215,11 @@ of the following elements: - **Service Identity Set** - The list of service identities that are applicable for the role. - **Namespace** - The namespace this policy resides within. (Added in Consul Enterprise 1.7.0) --> **Linking Roles to Policies in Consul Enterprise** - Roles can only be linked to policies that are defined in the same namespace and admin partition. +-> **Linking Roles to Policies in Consul Enterprise** - Roles can only be linked to policies that are defined in the same namespace and admin partition. ### ACL Tokens -Consul uses ACL tokens to determine if the caller is authorized to perform an action. An ACL token is composed of several attributes that you can specify when creating the token. Refer to the [ACL token command line](https://www.consul.io/commands/acl/token) documentation or [ACL token API](/api-docs/acl/tokens) documentation for additional information on how to create tokens.: +Consul uses ACL tokens to determine if the caller is authorized to perform an action. An ACL token is composed of several attributes that you can specify when creating the token. Refer to the [ACL token command line](/commands/acl/token) documentation or [ACL token API](/api-docs/acl/tokens) documentation for additional information on how to create tokens.: - **Accessor ID** - The token's public identifier. - **Secret ID** -The bearer token used when making requests to Consul. diff --git a/website/content/docs/security/security-models/core.mdx b/website/content/docs/security/security-models/core.mdx index 3f1198367..72714c239 100644 --- a/website/content/docs/security/security-models/core.mdx +++ b/website/content/docs/security/security-models/core.mdx @@ -235,7 +235,7 @@ environment and adapt these configurations accordingly. - **Customize HTTP Response Headers** - Additional security headers, such as [`X-XSS-Protection`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection), can be - [configured](https://www.consul.io/docs/agent/options#response_headers) for HTTP API responses. + [configured](/docs/agent/options#response_headers) for HTTP API responses. ```hcl http_config { @@ -411,6 +411,6 @@ The following are not part of the threat model for client agents: - **Gateways** - Consul supports a variety of [gateways](/docs/connect/gateways) to allow traffic in-and-out of the service mesh to support a variety of workloads. When using an internet-exposed gateway, you should be sure to harden your Consul agent and host configurations. In most configurations, ACLS, gossip encryption, and mTLS should be - enforced. If an [escape hatch override](https://www.consul.io/docs/connect/proxies/envoy#escape-hatch-overrides) is + enforced. If an [escape hatch override](/docs/connect/proxies/envoy#escape-hatch-overrides) is required, the proxy configuration should be audited to ensure security configurations remain intact, and do not violate Consul’s security model. diff --git a/website/content/docs/upgrading/index.mdx b/website/content/docs/upgrading/index.mdx index 3087c7d1a..08a79a8a0 100644 --- a/website/content/docs/upgrading/index.mdx +++ b/website/content/docs/upgrading/index.mdx @@ -25,7 +25,7 @@ For upgrades we strive to ensure backwards compatibility. To support this, nodes gossip their protocol version and builds. This enables clients and servers to intelligently enable new features when available, or to gracefully fallback to a backward compatible mode of operation otherwise. -Visit the [General Upgrade Process](https://www.consul.io/docs/upgrading/instructions/general-process) for a detailed upgrade guide. +Visit the [General Upgrade Process](/docs/upgrading/instructions/general-process) for a detailed upgrade guide. For most upgrades, the process is simple. Assuming the current version of Consul is A, and version B is released. diff --git a/website/content/docs/upgrading/instructions/general-process.mdx b/website/content/docs/upgrading/instructions/general-process.mdx index 2a515ec83..51d8a3006 100644 --- a/website/content/docs/upgrading/instructions/general-process.mdx +++ b/website/content/docs/upgrading/instructions/general-process.mdx @@ -71,8 +71,8 @@ Version 1 This will ensure you have a safe fallback option in case something goes wrong. Store this snapshot somewhere safe. More documentation on snapshot usage is available here: -- https://www.consul.io/commands/snapshot -- https://learn.hashicorp.com/tutorials/consul/backup-and-restore +- [consul.io/commands/snapshot](/commands/snapshot) +- **2.** Temporarily modify your Consul configuration so that its [log_level](/docs/agent/options#_log_level) is set to `debug`. After doing this, issue the following command on your servers to diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx index 9f0cdee73..e1935fddb 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-2-x.mdx @@ -120,7 +120,7 @@ moving to newer versions. The full list of changes is available here: -- https://www.consul.io/docs/upgrading/upgrade-specific#deprecated-options-have-been-removed +- [Upgrade Specific Versions: Consul 1.0 - Deprecated Options](/docs/upgrading/upgrade-specific#deprecated-options-have-been-removed) You can make sure your config changes are valid by copying your existing configuration files, making the changes, and then verifying them by using `consul validate $CONFIG_FILE1_PATH $CONFIG_FILE2_PATH ...`. diff --git a/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx b/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx index 460fe4b18..5b1d19fde 100644 --- a/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx +++ b/website/content/docs/upgrading/instructions/upgrade-to-1-6-x.mdx @@ -18,9 +18,9 @@ as part of this upgrade. The 1.6.x series is the last series that had support fo ACL tokens, so this migration _must_ happen before upgrading past the 1.6.x release series. Here is some documentation that may prove useful for reference during this upgrade process: -- [ACL System in Legacy Mode](https://www.consul.io/docs/acl/acl-legacy) - You can find +- [ACL System in Legacy Mode](/docs/security/acl/acl-legacy) - You can find information about legacy configuration options and differences between modes here. -- [Configuration](https://www.consul.io/docs/agent/options) - You can find more details +- [Configuration](/docs/agent/options) - You can find more details around legacy ACL and new ACL configuration options here. Legacy ACL config options will be listed as deprecates as of 1.4.0. @@ -51,7 +51,7 @@ Looking through these changes prior to upgrading is highly recommended. Two very notable items are: - 1.6.2 introduced more strict JSON decoding. Invalid JSON that was previously ignored might result in errors now (e.g., `Connect: null` in service definitions). See [[GH#6680](https://github.com/hashicorp/consul/pull/6680)]. -- 1.6.3 introduced the [http_max_conns_per_client](https://www.consul.io/docs/agent/options#http_max_conns_per_client) limit. This defaults to 200. Prior to this, connections per client were unbounded. [[GH#7159](https://github.com/hashicorp/consul/issues/7159)] +- 1.6.3 introduced the [http_max_conns_per_client](/docs/agent/options#http_max_conns_per_client) limit. This defaults to 200. Prior to this, connections per client were unbounded. [[GH#7159](https://github.com/hashicorp/consul/issues/7159)] ## Procedure @@ -189,7 +189,7 @@ You should receive output similar to this: } ``` -**6.** Migrate your legacy ACL tokens to the new ACL system by following the instructions in our [ACL Token Migration guide](https://www.consul.io/docs/acl/acl-migrate-tokens). +**6.** Migrate your legacy ACL tokens to the new ACL system by following the instructions in our [ACL Token Migration guide](/docs/security/acl/acl-migrate-tokens). ~> This step _must_ be completed before upgrading to a version higher than 1.6.x. @@ -202,8 +202,8 @@ update those now to avoid issues when moving to newer versions. These are the changes you will need to make: -- `acl_datacenter` is now named `primary_datacenter` (review our [docs](https://www.consul.io/docs/agent/options#primary_datacenter) for more info) -- `acl_default_policy`, `acl_down_policy`, `acl_ttl`, `acl_*_token` and `enable_acl_replication` options are now specified like this (review our [docs](https://www.consul.io/docs/agent/options#acl) for more info): +- `acl_datacenter` is now named `primary_datacenter` (review our [docs](/docs/agent/options#primary_datacenter) for more info) +- `acl_default_policy`, `acl_down_policy`, `acl_ttl`, `acl_*_token` and `enable_acl_replication` options are now specified like this (review our [docs](/docs/agent/options#acl) for more info): ```hcl acl { enabled = true/false From 03b57c9e6cb6a0ede32e87c54e468f6cb84a4303 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 17:05:39 -0800 Subject: [PATCH 285/404] Remove duplicate redirects --- website/redirects.next.js | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/website/redirects.next.js b/website/redirects.next.js index 525ab5077..51c242ef7 100644 --- a/website/redirects.next.js +++ b/website/redirects.next.js @@ -119,7 +119,7 @@ module.exports = [ permanent: true, }, { - source: '/docs/connect/gateways/mesh-gateway', + source: '/docs/connect/gateways/mesh-gateway(s?)', destination: '/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters', permanent: true, @@ -265,11 +265,6 @@ module.exports = [ destination: '/docs/install/glossary', permanent: true, }, - { - source: '/docs/connect/gateways/mesh-gateways', - destination: '/docs/connect/gateways/mesh-gateway', - permanent: true, - }, { source: '/docs/faq', destination: '/docs/troubleshoot/faq', @@ -1234,26 +1229,11 @@ module.exports = [ destination: '/docs/download-tools', permanent: true, }, - { - source: '/docs/k8s/ambassador', - destination: '/docs/k8s/connect/ambassador', - permanent: true, - }, { source: '/docs/agent/config-entries/:path', destination: '/docs/connect/config-entries/:path*', permanent: true, }, - { - source: '/docs/partnerships', - destination: '/docs/integrate/partnerships', - permanent: true, - }, - { - source: '/docs/k8s/installation/overview', - destination: '/docs/k8s/installation/install', - permanent: true, - }, { source: '/docs/k8s/installation/multi-cluster/overview', destination: '/docs/k8s/installation/multi-cluster', From bb2242a9a2add01f28d7cfce38e77638534b1951 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 17:08:06 -0800 Subject: [PATCH 286/404] Consolidate /download-tools redirects --- website/redirects.next.js | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/website/redirects.next.js b/website/redirects.next.js index 51c242ef7..999d5758c 100644 --- a/website/redirects.next.js +++ b/website/redirects.next.js @@ -322,26 +322,6 @@ module.exports = [ destination: '/docs/intro/vs/custom', permanent: true, }, - { - source: '/download-tools', - destination: '/docs/download-tools', - permanent: true, - }, - { - source: '/downloads_tools', - destination: '/docs/download-tools', - permanent: true, - }, - { - source: '/download_tools', - destination: '/docs/download-tools', - permanent: true, - }, - { - source: '/downloads_tools', - destination: '/docs/download-tools', - permanent: true, - }, { source: '/docs/k8s/ambassador', destination: '/docs/k8s/connect/ambassador', @@ -1225,7 +1205,7 @@ module.exports = [ permanent: true, }, { - source: '/(/downloads?[-_]tools)', + source: '/download(s?[-_])tools', destination: '/docs/download-tools', permanent: true, }, From f3efb4af89466a4baa4cca297d1c1b9b3c03f4ac Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 17:08:59 -0800 Subject: [PATCH 287/404] Redirect old K8s uninstall URLs to new location --- website/redirects.next.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/redirects.next.js b/website/redirects.next.js index 999d5758c..c5deeeced 100644 --- a/website/redirects.next.js +++ b/website/redirects.next.js @@ -207,7 +207,7 @@ module.exports = [ }, { source: '/docs/k8s/operations/uninstalling', - destination: '/docs/k8s/uninstall', + destination: '/docs/k8s/operations/uninstall', permanent: true, }, { @@ -1176,7 +1176,7 @@ module.exports = [ }, { source: '/docs/platform/k8s/uninstalling', - destination: '/docs/k8s/operations/upgrading', + destination: '/docs/k8s/operations/uninstall', permanent: true, }, { From ad8d3ab315f253bf1f63f3314068e2719b188acb Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 10 Jan 2022 17:09:38 -0800 Subject: [PATCH 288/404] Redirect /platform/k8s/upgrading to new URL --- website/redirects.next.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/redirects.next.js b/website/redirects.next.js index c5deeeced..55575e531 100644 --- a/website/redirects.next.js +++ b/website/redirects.next.js @@ -1166,7 +1166,7 @@ module.exports = [ }, { source: '/docs/platform/k8s/upgrading', - destination: '/docs/k8s/operations/upgrading', + destination: '/docs/k8s/upgrade', permanent: true, }, { From 0c2c46807e51493993532871ab81fee49088f7c1 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Wed, 19 Jan 2022 01:01:06 -0800 Subject: [PATCH 289/404] Redirect Ambassador tutorial to Learn --- website/redirects.next.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/website/redirects.next.js b/website/redirects.next.js index 55575e531..00c51dab3 100644 --- a/website/redirects.next.js +++ b/website/redirects.next.js @@ -324,7 +324,14 @@ module.exports = [ }, { source: '/docs/k8s/ambassador', - destination: '/docs/k8s/connect/ambassador', + destination: + 'https://learn.hashicorp.com/tutorials/consul/service-mesh-gateway-ambassador', + permanent: true, + }, + { + source: '/docs/k8s/connect/ambassador', + destination: + 'https://learn.hashicorp.com/tutorials/consul/service-mesh-gateway-ambassador', permanent: true, }, { From f46bbb72052918447dddc00e86c44dba0556c7b4 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Thu, 20 Jan 2022 08:54:23 -0800 Subject: [PATCH 290/404] Fix spelling errors --- website/content/api-docs/operator/keyring.mdx | 2 +- website/content/commands/kv/put.mdx | 2 +- website/content/docs/agent/options.mdx | 4 ++-- .../docs/connect/config-entries/mesh.mdx | 2 +- .../service-to-service-traffic-partitions.mdx | 2 +- .../docs/k8s/installation/compatibility.mdx | 20 +++++++++---------- .../docs/k8s/installation/vault/index.mdx | 2 +- .../content/docs/k8s/operations/uninstall.mdx | 2 +- .../content/docs/nia/installation/install.mdx | 7 ++++--- website/content/docs/nia/tasks.mdx | 2 +- .../docs/security/security-models/core.mdx | 2 +- 11 files changed, 24 insertions(+), 23 deletions(-) diff --git a/website/content/api-docs/operator/keyring.mdx b/website/content/api-docs/operator/keyring.mdx index 2994db35c..3b3690101 100644 --- a/website/content/api-docs/operator/keyring.mdx +++ b/website/content/api-docs/operator/keyring.mdx @@ -122,7 +122,7 @@ The table below shows this endpoint's support for | ---------------- | ----------------- | ------------- | --------------- | | `NO` | `none` | `none` | `keyring:write` | -The corresponding CLI command is [`consul keyring -intstall`](/commands/keyring#install). +The corresponding CLI command is [`consul keyring -install`](/commands/keyring#install). ### Parameters diff --git a/website/content/commands/kv/put.mdx b/website/content/commands/kv/put.mdx index 5fcf13586..8769d726f 100644 --- a/website/content/commands/kv/put.mdx +++ b/website/content/commands/kv/put.mdx @@ -133,7 +133,7 @@ Success! Data written to: leaderboard/scores ~> **Warning**: For secret and sensitive values, you should consider using a secret management solution like **[HashiCorp's Vault](https://learn.hashicorp.com/tutorials/vault/static-secrets?in=vault/secrets-management)**. -While it is possible to encrpyt data before writing it to Consul's KV store, +While it is possible to encrypt data before writing it to Consul's KV store, Consul provides no built-in support for encryption at-rest. ### Atomic Check-And-Set (CAS) diff --git a/website/content/docs/agent/options.mdx b/website/content/docs/agent/options.mdx index 69d622d74..d1102ea90 100644 --- a/website/content/docs/agent/options.mdx +++ b/website/content/docs/agent/options.mdx @@ -686,7 +686,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." leader node, the down policy is applied. In "allow" mode, all actions are permitted, "deny" restricts all operations, and "extend-cache" allows any cached objects to be used, ignoring the expiry time of the cached entry. If the request uses an - ACL that is not in the cache, "extend-cache" falls back to the behaviour of + ACL that is not in the cache, "extend-cache" falls back to the behavior of `default_policy`. The value "async-cache" acts the same way as "extend-cache" but performs updates asynchronously when ACL is present but its TTL is expired, @@ -2068,7 +2068,7 @@ bind_addr = "{{ GetPrivateInterfaces | include \"network\" \"10.0.0.0/8\" | attr - `read_replica` - Equivalent to the [`-read-replica` command-line flag](#_read_replica). -- `session_ttl_min` The minimum allowed session TTL. This ensures sessions are not created with TTL's +- `session_ttl_min` The minimum allowed session TTL. This ensures sessions are not created with TTLs shorter than the specified limit. It is recommended to keep this limit at or above the default to encourage clients to send infrequent heartbeats. Defaults to 10s. diff --git a/website/content/docs/connect/config-entries/mesh.mdx b/website/content/docs/connect/config-entries/mesh.mdx index fd3fae5e6..7a633e056 100644 --- a/website/content/docs/connect/config-entries/mesh.mdx +++ b/website/content/docs/connect/config-entries/mesh.mdx @@ -98,7 +98,7 @@ spec: -Note that the Kuberetes example does not include a `partition` field. Configuration entries are applied on Kubernetes using [custom resource definitions (CRD)](/docs/k8s/crds), which can only be scoped to their own partition. +Note that the Kubernetes example does not include a `partition` field. Configuration entries are applied on Kubernetes using [custom resource definitions (CRD)](/docs/k8s/crds), which can only be scoped to their own partition. ## Available Fields diff --git a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx index 93df03b71..cebb531f7 100644 --- a/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx +++ b/website/content/docs/connect/gateways/mesh-gateway/service-to-service-traffic-partitions.mdx @@ -25,7 +25,7 @@ Ensure that your Consul environment meets the following requirements. * Consul Enterprise version 1.11.0 or newer. * A local Consul agent is required to manage its configuration. * Consul service mesh must be enabled in all partitions. Refer to the [`connect` documentation](/docs/agent/options#connect) for details. -* Each partition must have a unique name. Refer to the [admin partitions documentation](/docs/enteprise/admin-partitions) for details. +* Each partition must have a unique name. Refer to the [admin partitions documentation](/docs/enterprise/admin-partitions) for details. * If you want to [enable gateways globally](/docs/connect/gateways/mesh-gateway/service-to-service-traffic-datacenters#enabling-gateways-globally) you must enable [centralized configuration](/docs/agent/options#enable_central_service_config). ### Proxy diff --git a/website/content/docs/k8s/installation/compatibility.mdx b/website/content/docs/k8s/installation/compatibility.mdx index 1c174baea..701025b4e 100644 --- a/website/content/docs/k8s/installation/compatibility.mdx +++ b/website/content/docs/k8s/installation/compatibility.mdx @@ -4,15 +4,15 @@ page_title: Compatibility Matrix description: Compatibility Matrix for Consul Kubernetes --- -# Compatibility Matrix for Consul on Kubernetes +# Compatibility Matrix for Consul on Kubernetes -For every release of Consul on Kubernetes, a Helm chart, `consul-k8s-control-plane` binary and a `consul-k8s` CLI binary is built and distributed through a single version. When deploying via Helm, the recommended best path for upgrading Consul on Kubernetes, is to upgrade using the same `consul-k8s-control-plane` version as the Helm Chart, as the Helm Chart and Control Plane binary are tightly coupled. +For every release of Consul on Kubernetes, a Helm chart, `consul-k8s-control-plane` binary and a `consul-k8s` CLI binary is built and distributed through a single version. When deploying via Helm, the recommended best path for upgrading Consul on Kubernetes, is to upgrade using the same `consul-k8s-control-plane` version as the Helm Chart, as the Helm Chart and Control Plane binary are tightly coupled. ## Supported Consul versions ### Version 0.33.0 and above -Starting with Consul Kubernetes 0.33.0, Consul Kubernetes versions all of its components (`consul-k8s` CLI, `consul-k8s-control-plane`, and Helm chart) with a single semantic version. +Starting with Consul Kubernetes 0.33.0, Consul Kubernetes versions all of its components (`consul-k8s` CLI, `consul-k8s-control-plane`, and Helm chart) with a single semantic version. | Consul Version | Compatible consul-k8s Versions | | -------------- | ------------------------------- | @@ -21,7 +21,7 @@ Starting with Consul Kubernetes 0.33.0, Consul Kubernetes versions all of its co ### Prior to version 0.33.0 -Prior to Consul Kubernetes 0.33.0, a separately versioned Consul Helm chart was distributed to deploy the Consul on Kubernetes binary. The default version of the `consul-k8s` binary specified by the Helm chart should be used to ensure proper compatibility, since the Helm chart is designed and tested with the default `consul-k8s` version. To find the default version for the appropriate Helm chart version, navigate to the corresponding tag (i.e. 0.32.1) in [`values.yaml`](https://github.com/hashicorp/consul-helm/blob/v0.32.1/values.yaml) and retrieve the `imageK8S` global value. +Prior to Consul Kubernetes 0.33.0, a separately versioned Consul Helm chart was distributed to deploy the Consul on Kubernetes binary. The default version of the `consul-k8s` binary specified by the Helm chart should be used to ensure proper compatibility, since the Helm chart is designed and tested with the default `consul-k8s` version. To find the default version for the appropriate Helm chart version, navigate to the corresponding tag (i.e. 0.32.1) in [`values.yaml`](https://github.com/hashicorp/consul-helm/blob/v0.32.1/values.yaml) and retrieve the `imageK8S` global value. | Consul Version | Compatible Consul Helm Versions (default `consul-k8s` image) | | -------------- | -----------------------------------------------------------| @@ -35,18 +35,18 @@ Prior to Consul Kubernetes 0.33.0, a separately versioned Consul Helm chart was Supported versions of Envoy for Consul versions are also found in [Envoy - Supported Versions](/docs/connect/proxies/envoy#supported-versions). The recommended best practice is to use the default version of Envoy that is provided in the Helm values.yml file, as that is the version that has been tested with the default Consul and Consul Kubernetes binaries for a given Helm chart. -## Red Hat OpenShift compatability +## Red Hat OpenShift compatibility -Consul Kubernetes delivered Red Hat OpenShift support starting with Consul Helm chart version 0.25.0 for Consul 1.8.4. Please note the following details regarding OpenShift support. +Consul Kubernetes delivered Red Hat OpenShift support starting with Consul Helm chart version 0.25.0 for Consul 1.8.4. Please note the following details regarding OpenShift support. -- Red Hat OpenShift is only supported for OpenShift 4.4.x and above. -- Only the default CNI Plugin, [OpenShift SDN CNI Plugin](https://docs.openshift.com/container-platform/4.9/networking/openshift_sdn/about-openshift-sdn.html) is currently supported. +- Red Hat OpenShift is only supported for OpenShift 4.4.x and above. +- Only the default CNI Plugin, [OpenShift SDN CNI Plugin](https://docs.openshift.com/container-platform/4.9/networking/openshift_sdn/about-openshift-sdn.html) is currently supported. ## Vault as a Secrets Backend compatibility -Starting with Consul K8s 0.39.0 and Consul 1.11.x, Consul Kubernetes supports the ability to utilize Vault as the secrets backend for all the secrets utilized by Consul on Kubernetes. +Starting with Consul K8s 0.39.0 and Consul 1.11.x, Consul Kubernetes supports the ability to utilize Vault as the secrets backend for all the secrets utilized by Consul on Kubernetes. -| `consul-k8s` Versions | Compatible Vault Versions | Compatible `vault-k8s` Versions | +| `consul-k8s` Versions | Compatible Vault Versions | Compatible `vault-k8s` Versions | | ------------------------ | --------------------------| ----------------------------- | | 0.39.0 - latest | 1.9.0 - latest | 0.14.0 - latest | diff --git a/website/content/docs/k8s/installation/vault/index.mdx b/website/content/docs/k8s/installation/vault/index.mdx index a59bbb6c5..4c978eed7 100644 --- a/website/content/docs/k8s/installation/vault/index.mdx +++ b/website/content/docs/k8s/installation/vault/index.mdx @@ -60,7 +60,7 @@ $ vault secrets enable -path=consul kv-v2 ### Vault PKI Engine -The Vault PKI Engine must be enabled in order to leverage Vault for issuiing Consul Server TLS certificates. More details for configuring the PKI Engine is found in [Bootstrapping the PKI Engine](/docs/k8s/installation/vault/server-tls#bootstrapping-the-pki-engine) under the Server TLS section. +The Vault PKI Engine must be enabled in order to leverage Vault for issuing Consul Server TLS certificates. More details for configuring the PKI Engine is found in [Bootstrapping the PKI Engine](/docs/k8s/installation/vault/server-tls#bootstrapping-the-pki-engine) under the Server TLS section. ```shell-session $ vault secrets enable pki diff --git a/website/content/docs/k8s/operations/uninstall.mdx b/website/content/docs/k8s/operations/uninstall.mdx index b57ff2e6e..9e0a4e318 100644 --- a/website/content/docs/k8s/operations/uninstall.mdx +++ b/website/content/docs/k8s/operations/uninstall.mdx @@ -28,7 +28,7 @@ Refer to the [Consul K8s CLI reference](/docs/k8s/k8s-cli#uninstall) topic for d Run the `helm uninstall` **and** manually remove resources that Helm does not delete. -1. Although the Helm chart automates the deletion of CRDs upon uninstallation, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. +1. Although the Helm chart automates the deletion of CRDs upon uninstall, sometimes the finalizers tied to those CRDs may not complete because the deletion of the CRDs rely on the Consul K8s controller running. Ensure that previously created CRDs for Consul on Kubernetes are deleted, so subsequent installs of Consul on Kubernetes on the same Kubernetes cluster do not get blocked. ```shell-session $ kubectl delete crd --selector app=consul diff --git a/website/content/docs/nia/installation/install.mdx b/website/content/docs/nia/installation/install.mdx index 3dada0fc6..0627eea10 100644 --- a/website/content/docs/nia/installation/install.mdx +++ b/website/content/docs/nia/installation/install.mdx @@ -14,18 +14,19 @@ Refer to the [introduction](https://learn.hashicorp.com/tutorials/consul/consul- -To install Consul-Terraform-Sync, find the [appropriate package](https://releases.hashicorp.com/consul-terraform-sync/) for your system and download it as a zip archive. For the CTS Enterprise binary, download a zip archive with the `+ent` metadata. [CTS Enterprise requires a Consul Enterpise license](/docs/nia/enterprise/license) to run. +To install Consul-Terraform-Sync, find the [appropriate package](https://releases.hashicorp.com/consul-terraform-sync/) for your system and download it as a zip archive. For the CTS Enterprise binary, download a zip archive with the `+ent` metadata. [CTS Enterprise requires a Consul Enterprise license](/docs/nia/enterprise/license) to run. Unzip the package to extract the binary named `consul-terraform-sync`. Move the `consul-terraform-sync` binary to a location available on your `PATH`. Example: + ```shell-session $ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin $ mv ./consul-terraform-sync /usr/local/bin/consul-terraform-sync ``` -Once installed, verify the installation works by prompting the `-version` or `-help` option. The version outputed for the CTS Enterpise binary includes the `+ent` metadata. +Once installed, verify the installation works by prompting the `-version` or `-help` option. The version outputted for the CTS Enterprise binary includes the `+ent` metadata. ```shell-session $ consul-terraform-sync -version @@ -42,7 +43,7 @@ For the CTS Enterprise, use the Docker image [`hashicorp/consul-terraform-sync-e $ docker pull hashicorp/consul-terraform-sync ``` -Once installed, verify the installation works by prompting the `-version` or `-help` option. The version outputed for the CTS Enterpise image includes the `+ent` metadata. +Once installed, verify the installation works by prompting the `-version` or `-help` option. The version outputted for the CTS Enterprise image includes the `+ent` metadata. ```shell-session $ docker run --rm hashicorp/consul-terraform-sync -version diff --git a/website/content/docs/nia/tasks.mdx b/website/content/docs/nia/tasks.mdx index 6866f4206..d91023941 100644 --- a/website/content/docs/nia/tasks.mdx +++ b/website/content/docs/nia/tasks.mdx @@ -36,7 +36,7 @@ A task can also monitor, but not execute on, other variables that provide additi A source input can be specified that implicitly includes variables to be provided to the task’s module. For example, a task can specify a Consul KV source input. The specified KV keys or key paths would be monitored for changes. Any changes detected would be included as input information for the modules. The module determines the details of what values are monitored and what values can execute the task. -~> **The source input block is currently only supported when using a schedule condition.** Adding a source input block alongside any other type of condition will result in an error. To accomplish a similar behaviour with other condition blocks, use the `source_includes_var` field. +~> **The source input block is currently only supported when using a schedule condition.** Adding a source input block alongside any other type of condition will result in an error. To accomplish a similar behavior with other condition blocks, use the `source_includes_var` field. Below are details on the types of execution conditions that Consul-Terraform-Sync supports. diff --git a/website/content/docs/security/security-models/core.mdx b/website/content/docs/security/security-models/core.mdx index 72714c239..75080942d 100644 --- a/website/content/docs/security/security-models/core.mdx +++ b/website/content/docs/security/security-models/core.mdx @@ -207,7 +207,7 @@ environment and adapt these configurations accordingly. - **Rotate Credentials** - Using short-lived credentials and rotating them frequently is highly recommended for production environments to limit the blast radius from potentially compromised secrets, and enabling basic auditing. - - **ACL Tokens** - Consul API’s require an ACL token to authorize actions within a cluster. + - **ACL Tokens** - Consul APIs require an ACL token to authorize actions within a cluster. - **X.509 Certificates** - Rotate certificates used by the Consul agent; e.g. integrate with Vault's PKI secret engine to automatically generate and renew dynamic, unique X.509 certificates for each Consul node with a short TTL. Client From eae3df60d54011bc097070ff5ebbae3d42d84d57 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" <4903+rboyer@users.noreply.github.com> Date: Thu, 20 Jan 2022 11:36:29 -0600 Subject: [PATCH 291/404] lint: forbid require.New and assert.New (#12139) See #12137 --- .golangci.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.golangci.yml b/.golangci.yml index 0a81fc30c..775e4c915 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -7,6 +7,7 @@ linters: - staticcheck - ineffassign - unparam + - forbidigo issues: # Disable the default exclude list so that all excludes are explicitly @@ -57,6 +58,14 @@ issues: linters-settings: gofmt: simplify: true + forbidigo: + # Forbid the following identifiers (list of regexp). + forbid: + - '\brequire\.New\b' + - '\bassert\.New\b' + # Exclude godoc examples from forbidigo checks. + # Default: true + exclude_godoc_examples: false run: timeout: 10m From 26c15ebe4625dd00b239453ea00f167ef02120fc Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Thu, 20 Jan 2022 13:07:10 -0500 Subject: [PATCH 292/404] ci: Add explanation in forbidigo (#12140) --- .golangci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.golangci.yml b/.golangci.yml index 775e4c915..1663c9670 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -61,8 +61,8 @@ linters-settings: forbidigo: # Forbid the following identifiers (list of regexp). forbid: - - '\brequire\.New\b' - - '\bassert\.New\b' + - '\brequire\.New\b(# Use package-level functions with explicit TestingT)?' + - '\bassert\.New\b(# Use package-level functions with explicit TestingT)?' # Exclude godoc examples from forbidigo checks. # Default: true exclude_godoc_examples: false From acef0e816e1053e0e9d99b2ad64cfd76ecf5c7cf Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" <4903+rboyer@users.noreply.github.com> Date: Thu, 20 Jan 2022 15:35:27 -0600 Subject: [PATCH 293/404] docs: update config entry docs for proxy-defaults to follow new template (#12011) --- .../connect/config-entries/proxy-defaults.mdx | 460 ++++++++++++++---- 1 file changed, 366 insertions(+), 94 deletions(-) diff --git a/website/content/docs/connect/config-entries/proxy-defaults.mdx b/website/content/docs/connect/config-entries/proxy-defaults.mdx index cd87af7fc..699c2d133 100644 --- a/website/content/docs/connect/config-entries/proxy-defaults.mdx +++ b/website/content/docs/connect/config-entries/proxy-defaults.mdx @@ -9,54 +9,141 @@ description: >- # Proxy Defaults --> **v1.8.4+:** On Kubernetes, the `ProxyDefaults` custom resource is supported in Consul versions 1.8.4+.
      -**v1.5.0+:** On other platforms, this config entry is supported in Consul versions 1.5.0+. -The `proxy-defaults` config entry kind (`ProxyDefaults` on Kubernetes) allows for configuring global config -defaults across all services for Connect proxy configuration. Currently, only -one global entry is supported. +The `proxy-defaults` configuration entry (`ProxyDefaults` on Kubernetes) allows you +to configure global defaults across all services for Connect proxy +configurations. Only one global entry is supported. -## Sample Config Entries +## Introduction -### Default protocol +You can customize some service registration settings for service mesh sidecar +proxies centrally using the `proxy-defaults` configuration entry in the `kind` +field. -Set the default protocol for all sidecar proxies: +You can still override this centralized configuration for specific services +with the [`service-defaults`](/docs/connect/config-entries/service-defaults) +configuration entry `kind` or for individual proxy instances in their [sidecar +service definitions](/docs/connect/registration/sidecar-service). + +## Requirements + +The following Consul binaries are supported: +* Consul 1.8.4+ on Kubernetes. +* Consul 1.5.0+ on other platforms. + +## Usage + +1. Verify that your datacenter meets the conditions specified in the [Requirements](#requirements). +1. Determine the settings you want to implement (see [Configuration](#configuration)). You can create a file containing the configuration or pass them to the state store directly to apply the configuration. +1. Apply the configuration using one of the following methods: + - Kubernetes CRD: Refer to the [Custom Resource Definitions](/docs/k8s/crds) documentation for details. + - Issue the `consul config write` command: Refer to the [Consul Config Write](/commands/config/write) documentation for details. + +## Configuration + +Configure the following parameters to define a `proxy-defaults` configuration entry: -Set the default protocol for all sidecar proxies: - - + + ```hcl Kind = "proxy-defaults" Name = "global" +Meta { + = "" +} Config { - protocol = "http" + = +} +Mode = "" +TransparentProxy { + OutboundListenerPort = + DialedDirectly = +} +MeshGateway { + Mode = "" +} +Expose { + Checks = + + Paths = [ + { + Path = "" + LocalPathPort = + ListenerPort = + Protocol = "" + } + ] } ``` + + + ```yaml apiVersion: consul.hashicorp.com/v1alpha1 kind: ProxyDefaults metadata: name: global spec: + meta: + : config: - protocol: http + : + mode: + transparentProxy: + outboundListenerPort: + dialedDirectly: + meshGateway: + mode: + expose: + checks: + paths: + - path: + localPathPort: + listenerPort: + protocol:= ``` + + + ```json { "Kind": "proxy-defaults", "Name": "global", + "Meta": { + "": "" + }, "Config": { - "protocol": "http" + "": + }, + "Mode": "", + "TransparentProxy": { + "OutboundListenerPort": , + "DialedDirectly": + }, + "MeshGateway": { + "Mode": = "" + }, + "Expose": { + "Checks": , + "Paths": [ + { + "Path": "", + "LocalPathPort": , + "ListenerPort": , + "Protocol": "" + } + ] } } ``` + @@ -65,17 +152,44 @@ spec: -> **NOTE:** The `proxy-defaults` config entry can only be created in the `default` namespace and it will configure proxies in **all** namespaces. - + + ```hcl Kind = "proxy-defaults" Name = "global" Namespace = "default" # Can only be set to "default". +Meta { + = "" +} Config { - protocol = "http" + = +} +Mode = "" +TransparentProxy { + OutboundListenerPort = + DialedDirectly = +} +MeshGateway { + Mode = "" +} +Expose { + Checks = + + Paths = [ + { + Path = "" + LocalPathPort = + ListenerPort = + Protocol = "" + } + ] } ``` + + + ```yaml apiVersion: consul.hashicorp.com/v1alpha1 kind: ProxyDefaults @@ -83,102 +197,68 @@ metadata: name: global namespace: default spec: + meta: + : config: - protocol: http + : + mode: + transparentProxy: + outboundListenerPort: + dialedDirectly: + meshGateway: + mode: + expose: + checks: + paths: + - path: + localPathPort: + listenerPort: + protocol:= ``` + + + ```json { "Kind": "proxy-defaults", "Name": "global", "Namespace": "default", + "Meta": { + "": "" + }, "Config": { - "protocol": "http" + "": + }, + "Mode": "", + "TransparentProxy": { + "OutboundListenerPort": , + "DialedDirectly": + }, + "MeshGateway": { + "Mode": = "" + }, + "Expose": { + "Checks": , + "Paths": [ + { + "Path": "", + "LocalPathPort": , + "ListenerPort": , + "Protocol": "" + } + ] } } ``` +
      -### Prometheus - -Expose prometheus metrics: - - - -```hcl -Kind = "proxy-defaults" -Name = "global" -Config { - envoy_prometheus_bind_addr = "0.0.0.0:9102" -} -``` - -```yaml -apiVersion: consul.hashicorp.com/v1alpha1 -kind: ProxyDefaults -metadata: - name: global -spec: - config: - envoy_prometheus_bind_addr: '0.0.0.0:9102' -``` - -```json -{ - "Kind": "proxy-defaults", - "Name": "global", - "Config": { - "envoy_prometheus_bind_addr": "0.0.0.0:9102" - } -} -``` - - - -### Proxy-specific defaults - -Set proxy-specific defaults: - - - -```hcl -Kind = "proxy-defaults" -Name = "global" -Config { - local_connect_timeout_ms = 1000 - handshake_timeout_ms = 10000 -} -``` - -```yaml -apiVersion: consul.hashicorp.com/v1alpha1 -kind: ProxyDefaults -metadata: - name: global -spec: - config: - local_connect_timeout_ms: 1000 - handshake_timeout_ms: 10000 -``` - -```json -{ - "Kind": "proxy-defaults", - "Name": "global", - "Config": { - "local_connect_timeout_ms": 1000, - "handshake_timeout_ms": 10000 - } -} -``` - - - -## Available Fields +### Configuration Parameters +## Examples + +### Default protocol + +The following example configures the default protocol for all sidecar proxies. + + + + + + + +```hcl +Kind = "proxy-defaults" +Name = "global" +Config { + protocol = "http" +} +``` + + + + +```yaml +apiVersion: consul.hashicorp.com/v1alpha1 +kind: ProxyDefaults +metadata: + name: global +spec: + config: + protocol: http +``` + + + + +```json +{ + "Kind": "proxy-defaults", + "Name": "global", + "Config": { + "protocol": "http" + } +} +``` + + + + + + + +-> **NOTE:** The `proxy-defaults` config entry can only be created in the `default` +namespace and it will configure proxies in **all** namespaces. + + + + +```hcl +Kind = "proxy-defaults" +Name = "global" +Namespace = "default" # Can only be set to "default". +Config { + protocol = "http" +} +``` + + + + +```yaml +apiVersion: consul.hashicorp.com/v1alpha1 +kind: ProxyDefaults +metadata: + name: global + namespace: default +spec: + config: + protocol: http +``` + + + + +```json +{ + "Kind": "proxy-defaults", + "Name": "global", + "Namespace": "default", + "Config": { + "protocol": "http" + } +} +``` + + + + + + + +### Prometheus + +The following example configures all sidecar proxies to expose Prometheus metrics. + + + + +```hcl +Kind = "proxy-defaults" +Name = "global" +Config { + envoy_prometheus_bind_addr = "0.0.0.0:9102" +} +``` + + + + +```yaml +apiVersion: consul.hashicorp.com/v1alpha1 +kind: ProxyDefaults +metadata: + name: global +spec: + config: + envoy_prometheus_bind_addr: '0.0.0.0:9102' +``` + + + + +```json +{ + "Kind": "proxy-defaults", + "Name": "global", + "Config": { + "envoy_prometheus_bind_addr": "0.0.0.0:9102" + } +} +``` + + + + +### Proxy-specific defaults + +The following example configures some custom default values for all sidecar proxies. + + + + +```hcl +Kind = "proxy-defaults" +Name = "global" +Config { + local_connect_timeout_ms = 1000 + handshake_timeout_ms = 10000 +} +``` + + + + +```yaml +apiVersion: consul.hashicorp.com/v1alpha1 +kind: ProxyDefaults +metadata: + name: global +spec: + config: + local_connect_timeout_ms: 1000 + handshake_timeout_ms: 10000 +``` + + + + +```json +{ + "Kind": "proxy-defaults", + "Name": "global", + "Config": { + "local_connect_timeout_ms": 1000, + "handshake_timeout_ms": 10000 + } +} +``` + + + + ## ACLs Configuration entries may be protected by [ACLs](/docs/security/acl). From fb04a28140373968bbe39aa44c0cea6de03e5b58 Mon Sep 17 00:00:00 2001 From: Ashwin Venkatesh Date: Thu, 20 Jan 2022 16:49:36 -0500 Subject: [PATCH 294/404] Add support for 'Partition' and 'RetryJoin' (#12126) - Adding a 'Partition' and 'RetryJoin' command allows test cases where one would like to spin up a Consul Agent in a non-default partition to test use-cases that are common when enabling Admin Partition on Kubernetes. --- .changelog/12126.txt | 3 +++ sdk/testutil/server.go | 2 ++ 2 files changed, 5 insertions(+) create mode 100644 .changelog/12126.txt diff --git a/.changelog/12126.txt b/.changelog/12126.txt new file mode 100644 index 000000000..5b0fd078a --- /dev/null +++ b/.changelog/12126.txt @@ -0,0 +1,3 @@ +```release-note:improvement +sdk: Add support for `Partition` and `RetryJoin` to the TestServerConfig struct. +``` diff --git a/sdk/testutil/server.go b/sdk/testutil/server.go index f017506d2..5f43bd998 100644 --- a/sdk/testutil/server.go +++ b/sdk/testutil/server.go @@ -77,6 +77,8 @@ type TestServerConfig struct { Performance *TestPerformanceConfig `json:"performance,omitempty"` Bootstrap bool `json:"bootstrap,omitempty"` Server bool `json:"server,omitempty"` + Partition string `json:"partition,omitempty"` + RetryJoin []string `json:"retry_join,omitempty"` DataDir string `json:"data_dir,omitempty"` Datacenter string `json:"datacenter,omitempty"` Segments []TestNetworkSegment `json:"segments"` From 28f49dc7bd0fdd1bd29216313d6acf152da3b79b Mon Sep 17 00:00:00 2001 From: Evan Culver Date: Thu, 20 Jan 2022 18:34:01 -0800 Subject: [PATCH 295/404] Provide an 'escape-hatch' for website-checker workflow (#11882) --- .github/workflows/website-checker.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/website-checker.yml b/.github/workflows/website-checker.yml index 505e7626b..8e4360b96 100644 --- a/.github/workflows/website-checker.yml +++ b/.github/workflows/website-checker.yml @@ -21,8 +21,10 @@ on: jobs: # checks that a 'type/docs-cherrypick' label is attached to PRs with website/ changes website-check: - # If there's a `type/docs-cherrypick` label we ignore this check - if: "!contains(github.event.pull_request.labels.*.name, 'type/docs-cherrypick')" + # If there's already a `type/docs-cherrypick` label or an explicit `pr/no-docs` label, we ignore this check + if: >- + !contains(github.event.pull_request.labels.*.name, 'type/docs-cherrypick') || + !contains(github.event.pull_request.labels.*.name, 'pr/no-docs') runs-on: ubuntu-latest steps: @@ -40,7 +42,7 @@ jobs: # post PR comment to GitHub to check if a 'type/docs-cherrypick' label needs to be applied to the PR echo "website-check: Did not find a 'type/docs-cherrypick' label, posting a reminder in the PR" github_message="🤔 This PR has changes in the \`website/\` directory but does not have a \`type/docs-cherrypick\` label. If the changes are for the next version, this can be ignored. If they are updates to current docs, attach the label to auto cherrypick to the \`stable-website\` branch after merging." - curl -f -s -H "Authorization: token ${{ secrets.PR_COMMENT_TOKEN }}" \ + curl -s -H "Authorization: token ${{ secrets.PR_COMMENT_TOKEN }}" \ -X POST \ -d "{ \"body\": \"${github_message}\"}" \ "https://api.github.com/repos/${GITHUB_REPOSITORY}/issues/${{ github.event.pull_request.number }}/comments" From 0446074ad7181acde9ab7d737d32c53d3f8a3734 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 21 Jan 2022 11:42:48 +0000 Subject: [PATCH 296/404] ui: Tweak some code related meta information (#12117) * ui: Correct some meta info * Encoder doesn't take an argument whereas decoder does * Math.trunc looks like the closest to parseInt but using the correct type * use a dynamic string when setting things on window --- ui/packages/consul-ui/app/utils/btoa.js | 4 ++-- ui/packages/consul-ui/app/utils/get-environment.js | 8 +++++--- ui/packages/consul-ui/app/utils/keyToArray.js | 6 +++--- ui/packages/consul-ui/app/utils/maybe-call.js | 2 +- ui/packages/consul-ui/app/utils/merge-checks.js | 8 ++++---- ui/packages/consul-ui/app/utils/routing/walk.js | 2 +- ui/packages/consul-ui/app/utils/tomography.js | 6 +++--- 7 files changed, 19 insertions(+), 17 deletions(-) diff --git a/ui/packages/consul-ui/app/utils/btoa.js b/ui/packages/consul-ui/app/utils/btoa.js index 76a384460..5da689afd 100644 --- a/ui/packages/consul-ui/app/utils/btoa.js +++ b/ui/packages/consul-ui/app/utils/btoa.js @@ -1,6 +1,6 @@ import base64js from 'base64-js'; -export default function(str, encoding = 'utf-8') { +export default function(str) { // encode - const bytes = new TextEncoder(encoding).encode(str); + const bytes = new TextEncoder().encode(str); return base64js.fromByteArray(bytes); } diff --git a/ui/packages/consul-ui/app/utils/get-environment.js b/ui/packages/consul-ui/app/utils/get-environment.js index 3967395b1..d350ca6ec 100644 --- a/ui/packages/consul-ui/app/utils/get-environment.js +++ b/ui/packages/consul-ui/app/utils/get-environment.js @@ -23,7 +23,7 @@ export default function(config = {}, win = window, doc = document) { .startsWith('CONSUL_') ); }; - win.Scenario = function(str = '') { + win['Scenario'] = function(str = '') { if (str.length > 0) { cookies(str).forEach(item => (doc.cookie = `${item};Path=/`)); win.location.hash = ''; @@ -41,7 +41,7 @@ export default function(config = {}, win = window, doc = document) { typeof win.location.hash === 'string' && win.location.hash.length > 0 ) { - win.Scenario(win.location.hash.substr(1)); + win['Scenario'](win.location.hash.substr(1)); } }); const dev = function(str = doc.cookie) { @@ -107,7 +107,9 @@ export default function(config = {}, win = window, doc = document) { case 'CONSUL_DATACENTER_PRIMARY': return operatorConfig.PrimaryDatacenter; case 'CONSUL_UI_CONFIG': - dashboards = {}; + dashboards = { + service: undefined + }; provider = env('CONSUL_METRICS_PROVIDER'); proxy = env('CONSUL_METRICS_PROXY_ENABLED'); dashboards.service = env('CONSUL_SERVICE_DASHBOARD_URL'); diff --git a/ui/packages/consul-ui/app/utils/keyToArray.js b/ui/packages/consul-ui/app/utils/keyToArray.js index f5fb26944..47ac07449 100644 --- a/ui/packages/consul-ui/app/utils/keyToArray.js +++ b/ui/packages/consul-ui/app/utils/keyToArray.js @@ -3,9 +3,9 @@ * an array. If the key name is simply the separator (for example '/') * then the array should contain a single empty string value * - * @param {string} key - The separated path/key - * @param {string} [separator=/] - The separator - * @returns {string[]} + * @param {String} key - The separated path/key + * @param {String} separator - The separator + * @returns {String[]} */ export default function(key, separator = '/') { return (key === separator ? '' : key).split(separator); diff --git a/ui/packages/consul-ui/app/utils/maybe-call.js b/ui/packages/consul-ui/app/utils/maybe-call.js index 33f73bc22..de501b6d5 100644 --- a/ui/packages/consul-ui/app/utils/maybe-call.js +++ b/ui/packages/consul-ui/app/utils/maybe-call.js @@ -2,7 +2,7 @@ * Promise aware conditional function call * * @param {function} cb - The function to possibily call - * @param {function} [what] - A function returning a boolean resolving promise + * @param {Promise} [what] - A boolean resolving promise * @returns {function} - function when called returns a Promise that resolves the argument it is called with */ export default function(cb, what) { diff --git a/ui/packages/consul-ui/app/utils/merge-checks.js b/ui/packages/consul-ui/app/utils/merge-checks.js index 0551ffbb5..99b33feb4 100644 --- a/ui/packages/consul-ui/app/utils/merge-checks.js +++ b/ui/packages/consul-ui/app/utils/merge-checks.js @@ -8,10 +8,10 @@ import MultiMap from 'mnemonist/multi-map'; * proxy is likely to be on the same node, without adding something extra here * the node check will likely end up in the list twice. * - * @param {array} checks - Multiple lists of healthchecks to merge each one of the items in this array should be a further array of healthchecks - * @param {boolean} exposed - Whether the checks should be marked as exposed via the proxy or not - * @param {class} MMap - A MultiMap class. This is only exposed to allow for an easier interface but still allow an innjectable MultiMap if we choose to do that during testing - * @returns {array} - The final array of all of the healthchecks with any duplicate node checks removed, and also marked as exposed if required + * @param {Array} checks - Multiple lists of healthchecks to merge each one of the items in this array should be a further array of healthchecks + * @param {Boolean} exposed - Whether the checks should be marked as exposed via the proxy or not + * @param {Object} MMap - A MultiMap class. This is only exposed to allow for an easier interface but still allow an injectable MultiMap if we choose to do that during testing + * @returns {Array} - The final array of all of the healthchecks with any duplicate node checks removed, and also marked as exposed if required */ export default (checks = [], exposed = false, MMap = MultiMap) => { const ids = new MMap(); diff --git a/ui/packages/consul-ui/app/utils/routing/walk.js b/ui/packages/consul-ui/app/utils/routing/walk.js index 82bccb506..0eef8a71c 100644 --- a/ui/packages/consul-ui/app/utils/routing/walk.js +++ b/ui/packages/consul-ui/app/utils/routing/walk.js @@ -37,7 +37,7 @@ export default function(routes) { }; } -export let dump = () => {}; +export let dump = (routes) => {}; runInDebug(() => { const indent = function(num) { diff --git a/ui/packages/consul-ui/app/utils/tomography.js b/ui/packages/consul-ui/app/utils/tomography.js index 4f9611086..137bc1dcb 100644 --- a/ui/packages/consul-ui/app/utils/tomography.js +++ b/ui/packages/consul-ui/app/utils/tomography.js @@ -44,9 +44,9 @@ export default function(distance) { } return { distances: distances, - min: parseInt(min * 100) / 100, - median: parseInt(median * 100) / 100, - max: parseInt(max * 100) / 100, + min: Math.trunc(min * 100) / 100, + median: Math.trunc(median * 100) / 100, + max: Math.trunc(max * 100) / 100, }; }; } From 8990d383e87ab9af7e0604fa92eb4e26f2a1d665 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Fri, 21 Jan 2022 12:19:03 +0000 Subject: [PATCH 297/404] ui: Enable theming (#12134) plus Themeable icons (#12135) --- .../consul-ui/app/components/pill/index.scss | 2 +- .../app/components/popover-select/index.scss | 2 +- ui/packages/consul-ui/app/styles/app.scss | 2 ++ .../app/styles/base/color/base-variables.scss | 26 +++++++++++----- .../base/color/lemon/frame-placeholders.scss | 0 .../app/styles/base/color/lemon/index.scss | 5 ++++ .../lemon/themes/dark-high-contrast.scss | 17 +++++++++++ .../styles/base/color/lemon/themes/dark.scss | 17 +++++++++++ .../lemon/themes/light-high-contrast.scss | 17 +++++++++++ .../styles/base/color/lemon/themes/light.scss | 17 +++++++++++ .../base/color/vault/frame-placeholders.scss | 0 .../app/styles/base/color/vault/index.scss | 6 ++++ .../vault/themes/dark-high-contrast.scss | 3 ++ .../styles/base/color/vault/themes/dark.scss | 3 ++ .../vault/themes/light-high-contrast.scss | 3 ++ .../styles/base/color/vault/themes/light.scss | 3 ++ .../app/styles/base/icons/base-variables.scss | 2 +- ui/packages/consul-ui/app/styles/icons.scss | 4 +++ ui/packages/consul-ui/app/styles/themes.scss | 8 ++++- .../consul-ui/app/utils/get-environment.js | 30 ++++++++++++++++--- ui/packages/consul-ui/docs/bookmarklets.mdx | 3 +- 21 files changed, 154 insertions(+), 16 deletions(-) create mode 100644 ui/packages/consul-ui/app/styles/base/color/lemon/frame-placeholders.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/lemon/index.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark-high-contrast.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/lemon/themes/light-high-contrast.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/lemon/themes/light.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/vault/frame-placeholders.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/vault/index.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/vault/themes/dark-high-contrast.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/vault/themes/dark.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/vault/themes/light-high-contrast.scss create mode 100644 ui/packages/consul-ui/app/styles/base/color/vault/themes/light.scss create mode 100644 ui/packages/consul-ui/app/styles/icons.scss diff --git a/ui/packages/consul-ui/app/components/pill/index.scss b/ui/packages/consul-ui/app/components/pill/index.scss index ee870d1c1..1ad95dfe8 100644 --- a/ui/packages/consul-ui/app/components/pill/index.scss +++ b/ui/packages/consul-ui/app/components/pill/index.scss @@ -34,7 +34,7 @@ span.policy-service-identity::before { @extend %with-logo-consul-color-icon, %as-pseudo; } %pill.vault::before { - @extend %with-logo-vault-color-icon, %as-pseudo; + @extend %with-vault-300; } %pill.aws::before { @extend %with-logo-aws-color-icon, %as-pseudo; diff --git a/ui/packages/consul-ui/app/components/popover-select/index.scss b/ui/packages/consul-ui/app/components/popover-select/index.scss index 235fc643d..a4fc7df8e 100644 --- a/ui/packages/consul-ui/app/components/popover-select/index.scss +++ b/ui/packages/consul-ui/app/components/popover-select/index.scss @@ -69,7 +69,7 @@ @extend %with-logo-nomad-color-icon, %as-pseudo; } %popover-select .vault button::before { - @extend %with-logo-vault-color-icon, %as-pseudo; + @extend %with-vault-300; } %popover-select .terraform button::before { @extend %with-logo-terraform-color-icon, %as-pseudo; diff --git a/ui/packages/consul-ui/app/styles/app.scss b/ui/packages/consul-ui/app/styles/app.scss index 30d5235ff..3834601dc 100644 --- a/ui/packages/consul-ui/app/styles/app.scss +++ b/ui/packages/consul-ui/app/styles/app.scss @@ -11,5 +11,7 @@ @import 'layout'; /* pinpoint individual overwrites for those 'just on this page' problems */ @import 'routes'; +/* more semantically (for our project) named icons */ +@import 'icons'; /* global control of themeable components */ @import 'themes'; diff --git a/ui/packages/consul-ui/app/styles/base/color/base-variables.scss b/ui/packages/consul-ui/app/styles/base/color/base-variables.scss index 1de2f5c5c..e88817cda 100644 --- a/ui/packages/consul-ui/app/styles/base/color/base-variables.scss +++ b/ui/packages/consul-ui/app/styles/base/color/base-variables.scss @@ -11,6 +11,18 @@ --steel-800: 66 73 77; --steel-900: 40 44 46; + /* vault refresh */ + --lemon-050: 255 216 20; + --lemon-100: 255 216 20; + --lemon-200: 255 216 20; + --lemon-300: 255 216 20; + --lemon-400: 255 216 20; + --lemon-500: 255 216 20; + --lemon-600: 255 216 20; + --lemon-700: 255 216 20; + --lemon-800: 255 216 20; + --lemon-900: 255 216 20; + /* consul */ --magenta-050: 249 235 242; --magenta-100: 239 196 216; @@ -61,8 +73,8 @@ --indigo-900: 26 22 63; /* nomad */ - --teal-050: 235 248 243;/*#c3ecdc*/; - --teal-100: 195 236 220;/*#e1e4e7*/; + --teal-050: 235 248 243; /*#c3ecdc*/ + --teal-100: 195 236 220; /*#e1e4e7*/ --teal-200: 155 223 197; --teal-300: 116 211 174; --teal-400: 76 198 151; @@ -84,9 +96,9 @@ --cyan-800: 0 85 116; --cyan-900: 0 51 70; -/* ui */ + /* ui */ -/* removed to prevent confusion + /* removed to prevent confusion --gray-1: #191a1c; --gray-2: #323538; --gray-3: #4c4f54; @@ -114,7 +126,7 @@ --gray-900: 31 33 36; --gray-950: 21 23 28; -/* status */ + /* status */ --green-050: 236 247 237; --green-100: 198 233 201; --green-200: 160 219 165; @@ -150,7 +162,7 @@ --red-800: 91 24 32; --red-900: 55 15 19; - --orange-050: 254 244 236;/*#fa8f37*/; + --orange-050: 254 244 236; /*#fa8f37*/ --orange-100: 253 224 200; --orange-200: 252 204 164; --orange-300: 251 183 127; @@ -161,7 +173,7 @@ --orange-800: 114 65 25; --orange-900: 69 39 15; - --yellow-050: 255 251 237;/*#fa8f37;*/ + --yellow-050: 255 251 237; /*#fa8f37;*/ --yellow-100: 253 238 186; --yellow-200: 252 228 140; --yellow-300: 251 217 94; diff --git a/ui/packages/consul-ui/app/styles/base/color/lemon/frame-placeholders.scss b/ui/packages/consul-ui/app/styles/base/color/lemon/frame-placeholders.scss new file mode 100644 index 000000000..e69de29bb diff --git a/ui/packages/consul-ui/app/styles/base/color/lemon/index.scss b/ui/packages/consul-ui/app/styles/base/color/lemon/index.scss new file mode 100644 index 000000000..e62440c7c --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/lemon/index.scss @@ -0,0 +1,5 @@ +@import './themes/light'; +@import './themes/dark'; +@import './themes/light-high-contrast'; +@import './themes/dark-high-contrast'; +@import './frame-placeholders'; diff --git a/ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark-high-contrast.scss b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark-high-contrast.scss new file mode 100644 index 000000000..d57568f4a --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark-high-contrast.scss @@ -0,0 +1,17 @@ +%theme-dark-high-contrast { + --tone-lemon-000: var(--white); + --tone-lemon-050: var(--lemon-050); + --tone-lemon-100: var(--lemon-100); + --tone-lemon-150: var(--lemon-150); + --tone-lemon-200: var(--lemon-200); + --tone-lemon-300: var(--lemon-300); + --tone-lemon-400: var(--lemon-400); + --tone-lemon-500: var(--lemon-500); + --tone-lemon-600: var(--lemon-600); + --tone-lemon-700: var(--lemon-700); + --tone-lemon-800: var(--lemon-800); + --tone-lemon-850: var(--lemon-850); + --tone-lemon-900: var(--lemon-900); + --tone-lemon-950: var(--lemon-950); + --tone-lemon-999: var(--black); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark.scss b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark.scss new file mode 100644 index 000000000..be9f8551e --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/dark.scss @@ -0,0 +1,17 @@ +%theme-dark { + --tone-lemon-000: var(--white); + --tone-lemon-050: var(--lemon-050); + --tone-lemon-100: var(--lemon-100); + --tone-lemon-150: var(--lemon-150); + --tone-lemon-200: var(--lemon-200); + --tone-lemon-300: var(--lemon-300); + --tone-lemon-400: var(--lemon-400); + --tone-lemon-500: var(--lemon-500); + --tone-lemon-600: var(--lemon-600); + --tone-lemon-700: var(--lemon-700); + --tone-lemon-800: var(--lemon-800); + --tone-lemon-850: var(--lemon-850); + --tone-lemon-900: var(--lemon-900); + --tone-lemon-950: var(--lemon-950); + --tone-lemon-999: var(--black); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/lemon/themes/light-high-contrast.scss b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/light-high-contrast.scss new file mode 100644 index 000000000..5a7fac0f0 --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/light-high-contrast.scss @@ -0,0 +1,17 @@ +%theme-light-high-contrast { + --tone-lemon-000: var(--white); + --tone-lemon-050: var(--lemon-050); + --tone-lemon-100: var(--lemon-100); + --tone-lemon-150: var(--lemon-150); + --tone-lemon-200: var(--lemon-200); + --tone-lemon-300: var(--lemon-300); + --tone-lemon-400: var(--lemon-400); + --tone-lemon-500: var(--lemon-500); + --tone-lemon-600: var(--lemon-600); + --tone-lemon-700: var(--lemon-700); + --tone-lemon-800: var(--lemon-800); + --tone-lemon-850: var(--lemon-850); + --tone-lemon-900: var(--lemon-900); + --tone-lemon-950: var(--lemon-950); + --tone-lemon-999: var(--black); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/lemon/themes/light.scss b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/light.scss new file mode 100644 index 000000000..4e937d5cf --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/lemon/themes/light.scss @@ -0,0 +1,17 @@ +%theme-light { + --tone-lemon-000: var(--white); + --tone-lemon-050: var(--lemon-050); + --tone-lemon-100: var(--lemon-100); + --tone-lemon-150: var(--lemon-150); + --tone-lemon-200: var(--lemon-200); + --tone-lemon-300: var(--lemon-300); + --tone-lemon-400: var(--lemon-400); + --tone-lemon-500: var(--lemon-500); + --tone-lemon-600: var(--lemon-600); + --tone-lemon-700: var(--lemon-700); + --tone-lemon-800: var(--lemon-800); + --tone-lemon-850: var(--lemon-850); + --tone-lemon-900: var(--lemon-900); + --tone-lemon-950: var(--lemon-950); + --tone-lemon-999: var(--black); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/vault/frame-placeholders.scss b/ui/packages/consul-ui/app/styles/base/color/vault/frame-placeholders.scss new file mode 100644 index 000000000..e69de29bb diff --git a/ui/packages/consul-ui/app/styles/base/color/vault/index.scss b/ui/packages/consul-ui/app/styles/base/color/vault/index.scss new file mode 100644 index 000000000..74aa4c7b1 --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/vault/index.scss @@ -0,0 +1,6 @@ +@import '../lemon'; +@import './themes/light'; +@import './themes/dark'; +@import './themes/light-high-contrast'; +@import './themes/dark-high-contrast'; +@import './frame-placeholders'; diff --git a/ui/packages/consul-ui/app/styles/base/color/vault/themes/dark-high-contrast.scss b/ui/packages/consul-ui/app/styles/base/color/vault/themes/dark-high-contrast.scss new file mode 100644 index 000000000..00bcce3c6 --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/vault/themes/dark-high-contrast.scss @@ -0,0 +1,3 @@ +%theme-dark-high-contrast { + --tone-vault-500: var(--lemon-500); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/vault/themes/dark.scss b/ui/packages/consul-ui/app/styles/base/color/vault/themes/dark.scss new file mode 100644 index 000000000..d873db159 --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/vault/themes/dark.scss @@ -0,0 +1,3 @@ +%theme-dark { + --tone-vault-500: var(--lemon-500); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/vault/themes/light-high-contrast.scss b/ui/packages/consul-ui/app/styles/base/color/vault/themes/light-high-contrast.scss new file mode 100644 index 000000000..cac38c06a --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/vault/themes/light-high-contrast.scss @@ -0,0 +1,3 @@ +%theme-light-high-contrast { + --tone-vault-500: var(--black); +} diff --git a/ui/packages/consul-ui/app/styles/base/color/vault/themes/light.scss b/ui/packages/consul-ui/app/styles/base/color/vault/themes/light.scss new file mode 100644 index 000000000..669ed33f7 --- /dev/null +++ b/ui/packages/consul-ui/app/styles/base/color/vault/themes/light.scss @@ -0,0 +1,3 @@ +%theme-light { + --tone-vault-500: var(--black); +} diff --git a/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss index 673e9d8a8..70a4e386e 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss @@ -3891,7 +3891,7 @@ } %vault-16-svg-prop { - --vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %vault-24-svg-prop { diff --git a/ui/packages/consul-ui/app/styles/icons.scss b/ui/packages/consul-ui/app/styles/icons.scss new file mode 100644 index 000000000..96eac426b --- /dev/null +++ b/ui/packages/consul-ui/app/styles/icons.scss @@ -0,0 +1,4 @@ +%with-vault-300 { + @extend %with-vault-16-mask, %as-pseudo; + color: rgb(var(--tone-vault-500)); +} diff --git a/ui/packages/consul-ui/app/styles/themes.scss b/ui/packages/consul-ui/app/styles/themes.scss index 058347ed4..69282b79e 100644 --- a/ui/packages/consul-ui/app/styles/themes.scss +++ b/ui/packages/consul-ui/app/styles/themes.scss @@ -1,9 +1,15 @@ @import './base/color/ui/index'; @import './base/color/magenta/index'; @import './base/color/strawberry/index'; -:root { +@import './base/color/vault/index'; + +:root:not(.prefers-color-scheme-dark) { @extend %theme-light; } +:root.prefers-color-scheme-dark { + @extend %theme-dark; +} + %main-header-horizontal, %main-nav-vertical, %main-nav-horizontal { diff --git a/ui/packages/consul-ui/app/utils/get-environment.js b/ui/packages/consul-ui/app/utils/get-environment.js index d350ca6ec..157eef2f8 100644 --- a/ui/packages/consul-ui/app/utils/get-environment.js +++ b/ui/packages/consul-ui/app/utils/get-environment.js @@ -25,7 +25,31 @@ export default function(config = {}, win = window, doc = document) { }; win['Scenario'] = function(str = '') { if (str.length > 0) { - cookies(str).forEach(item => (doc.cookie = `${item};Path=/`)); + cookies(str).forEach(item => { + // this current outlier is the only one that + // 1. Toggles + // 2. Uses localStorage + // Once we have a user facing widget to do this, it can all go + if (item.startsWith('CONSUL_COLOR_SCHEME=')) { + const [, value] = item.split('='); + let current; + try { + current = JSON.parse(win.localStorage.getItem('consul:theme')); + } catch (e) { + current = { + 'color-scheme': 'light', + }; + } + win.localStorage.setItem( + 'consul:theme', + `{"color-scheme": "${ + value === '!' ? (current['color-scheme'] === 'light' ? 'dark' : 'light') : value + }"}` + ); + } else { + doc.cookie = `${item};Path=/`; + } + }); win.location.hash = ''; location.reload(); } else { @@ -70,9 +94,7 @@ export default function(config = {}, win = window, doc = document) { }; const operatorConfig = { ...config.operatorConfig, - ...JSON.parse( - doc.querySelector(`[data-${config.modulePrefix}-config]`).textContent - ) + ...JSON.parse(doc.querySelector(`[data-${config.modulePrefix}-config]`).textContent), }; const ui_config = operatorConfig.UIConfig || {}; const scripts = doc.getElementsByTagName('script'); diff --git a/ui/packages/consul-ui/docs/bookmarklets.mdx b/ui/packages/consul-ui/docs/bookmarklets.mdx index fe33e1005..cc19f7217 100644 --- a/ui/packages/consul-ui/docs/bookmarklets.mdx +++ b/ui/packages/consul-ui/docs/bookmarklets.mdx @@ -7,7 +7,8 @@ Below is a list of the most commonly used functions as bookmarklets followed by | Link/Bookmarklet | Description | | ---- | ----------- | | [Print Routing DSL](javascript:Routes()) | Print out Ember's Route DSL for the application | -| [Save Current Scenario](javascript:Scenario()) | Opens a tab with links to allow you to create a bookmarklet or share a URL of your current scenario (your Consul UI relarted development/debug cookies) | +| [Save Current Scenario](javascript:Scenario()) | Opens a tab with links to allow you to create a bookmarklet or share a URL of your current scenario (your Consul UI related development/debug cookies) | +| [Toggle Color Scheme](javascript:Scenario('CONSUL_COLOR_SCHEME=!')) | Toggle Color Scheme from light to dark or vice versa | | [Enable ACLs](javascript:Scenario('CONSUL_ACLS_ENABLE=1')) | Enable ACLs | | [Enable TProxy](javascript:Scenario('CONSUL_TPROXY_ENABLE=1')) | Enable TProxy | | [Enable Nspaces](javascript:Scenario('CONSUL_NSPACES_ENABLE=1')) | Enable Namespace Support | From adf030a6347f4cdca773701e8adcb56506ac5835 Mon Sep 17 00:00:00 2001 From: David Yu Date: Fri, 21 Jan 2022 11:01:48 -0800 Subject: [PATCH 298/404] docs: Formatting Consul K8s Vault docs (#12148) * Update index.mdx * Update gossip.mdx * Update install-cli.mdx * Update gossip.mdx * Update website/content/docs/k8s/installation/vault/gossip.mdx Co-authored-by: Bryce Kalow * fix MDX formatting * local changes * adding formatting changes * Update website/content/docs/k8s/installation/vault/connect-ca.mdx Co-authored-by: mrspanishviking * adding shell-session to service mesh certs Co-authored-by: Bryce Kalow Co-authored-by: mrspanishviking --- .../docs/k8s/installation/install-cli.mdx | 2 +- .../k8s/installation/vault/connect-ca.mdx | 18 +++++-- .../docs/k8s/installation/vault/gossip.mdx | 44 ++++++++++----- .../docs/k8s/installation/vault/index.mdx | 6 ++- .../k8s/installation/vault/server-tls.mdx | 53 +++++++++++++------ 5 files changed, 87 insertions(+), 36 deletions(-) diff --git a/website/content/docs/k8s/installation/install-cli.mdx b/website/content/docs/k8s/installation/install-cli.mdx index 5a4016776..295940445 100644 --- a/website/content/docs/k8s/installation/install-cli.mdx +++ b/website/content/docs/k8s/installation/install-cli.mdx @@ -17,7 +17,7 @@ These instructions describe how to install the latest version of the CLI dependi -The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. The Homebrew formulae will always install the latest version of a binary. If you are looking to install a specific version of the CLI please follow [Install a specific version of Consul K8s CLI](#install-a-specific-version-of-consul-k8s-cli). +The [Homebrew](https://brew.sh) package manager is required to complete the following installation instructions. The Homebrew formulae will always install the latest version of a binary. If you are looking to install a specific version of the CLI please follow [Install a specific version of Consul K8s CLI](#install-a-specific-version-of-the-cli). 1. Install the HashiCorp `tap`, which is a repository of all Homebrew packages for HashiCorp: ```shell-session diff --git a/website/content/docs/k8s/installation/vault/connect-ca.mdx b/website/content/docs/k8s/installation/vault/connect-ca.mdx index 97d4e0db7..7a96e9b08 100644 --- a/website/content/docs/k8s/installation/vault/connect-ca.mdx +++ b/website/content/docs/k8s/installation/vault/connect-ca.mdx @@ -21,7 +21,7 @@ documentation. Once you have a policy, you will need to link that policy to the Consul server service account. ```shell-session -vault write auth/kubernetes/role/consul-server \ +$ vault write auth/kubernetes/role/consul-server \ bound_service_account_names= \ bound_service_account_namespaces= \ policies= \ @@ -32,10 +32,14 @@ To find out the service account name of the Consul server, you can run: ```shell-session -$ helm template --release-name --show-only templates/server-serviceaccount.yaml hashicorp/consul +$ helm template --release-name ${RELEASE_NAME} --show-only templates/server-serviceaccount.yaml hashicorp/consul ``` -Now we can configure the Consul Helm chart to use Vault as the Connect CA provider: +Now you can configure the Consul Helm chart to use Vault as the Connect CA provider: + + + + ```yaml global: @@ -53,6 +57,10 @@ global: secretName: ``` + + + + The `address` you provide to the `connectCA` configuration can be a Kubernetes DNS address if the Vault cluster is running the same Kubernetes cluster. The `rootPKIPath` and `intermediatePKIPath` should be the same as the ones @@ -62,8 +70,8 @@ generate a new Vault token. The `vaultCASecret` is the Kubernetes secret that stores the CA Certificate that is used for Vault communication. To provide a CA, you first need to create a Kubernetes secret containing the CA. For example, you may create a secret with the Vault CA like so: -``` -kubectl create secret generic vault-ca --from-file vault.ca=/path/to/your/vault/ca +```shell-session +$ kubectl create secret generic vault-ca --from-file vault.ca=/path/to/your/vault/ca ``` ### Secondary Datacenters diff --git a/website/content/docs/k8s/installation/vault/gossip.mdx b/website/content/docs/k8s/installation/vault/gossip.mdx index 4e1422d58..aff1a4d8c 100644 --- a/website/content/docs/k8s/installation/vault/gossip.mdx +++ b/website/content/docs/k8s/installation/vault/gossip.mdx @@ -18,20 +18,28 @@ To use a gossip encryption key stored in Vault we need the following: First, generate and store the gossip key in Vault: ```shell-session -vault kv put secret/consul/gossip key="$(consul keygen)" +$ vault kv put secret/consul/gossip key="$(consul keygen)" ``` Next, we will need to create a policy that allows read access to this secret: -```shell-session -# gossip-policy.hcl + + + + + +```HCL path "secret/data/consul/gossip" { capabilities = ["read"] } ``` + + + + ```shell-session -vault policy write gossip-policy gossip-policy.hcl +$ vault policy write gossip-policy gossip-policy.hcl ``` Prior to creating Vault auth roles for the Consul servers and clients, ensure that the Vault Kubernetes auth method is enabled as described in [Vault Kubernetes Auth Method](/docs/k8s/installation/vault#vault-kubernetes-auth-method). @@ -39,7 +47,7 @@ Prior to creating Vault auth roles for the Consul servers and clients, ensure th Next, we will create Kubernetes auth roles for the Consul server and client: ```shell-session -vault write auth/kubernetes/role/consul-server \ +$ vault write auth/kubernetes/role/consul-server \ bound_service_account_names= \ bound_service_account_namespaces= \ policies=gossip-policy \ @@ -47,7 +55,7 @@ vault write auth/kubernetes/role/consul-server \ ``` ```shell-session -vault write auth/kubernetes/role/consul-client \ +$ vault write auth/kubernetes/role/consul-client \ bound_service_account_names= \ bound_service_account_namespaces= \ policies=gossip-policy \ @@ -57,18 +65,25 @@ vault write auth/kubernetes/role/consul-client \ To find out the service account names of the Consul server and client, you can run the following `helm template` commands with your Consul on Kubernetes values file: -``` -# Generate Consul server service account name -helm template --release-name -s templates/server-serviceaccount.yaml hashicorp/consul -# Generate Consul client service account name -helm template --release-name -s templates/client-serviceaccount.yaml hashicorp/consul -``` +- Generate Consul server service account name + ```shell-session + $ helm template --release-name ${RELEASE_NAME} -s templates/server-serviceaccount.yaml hashicorp/consul + ``` + +- Generate Consul client service account name + ```shell-session + $ helm template --release-name ${RELEASE_NAME} -s templates/client-serviceaccount.yaml hashicorp/consul + ``` ## Deploying the Consul Helm chart Now that we've configured Vault, you can configure the Consul Helm chart to use the gossip key in Vault: + + + + ```yaml global: secretsBackend: @@ -81,8 +96,11 @@ global: secretKey: key ``` + + + + Note that `global.gossipEncryption.secretName` is the path of the secret in Vault. This should be the same path as the one you'd include in your Vault policy. `global.gossipEncryption.secretKey` is the key inside the secret data. This should be the same as the key we passed when we created the gossip secret in Vault. - diff --git a/website/content/docs/k8s/installation/vault/index.mdx b/website/content/docs/k8s/installation/vault/index.mdx index 4c978eed7..1d9dd1caf 100644 --- a/website/content/docs/k8s/installation/vault/index.mdx +++ b/website/content/docs/k8s/installation/vault/index.mdx @@ -27,7 +27,9 @@ At a high level, there are two points of integration with Vault: ### Vault Helm Config -A minimal valid installation of Vault must include the Agent Injector: +A minimal valid installation of Vault Kubernetes must include the Agent Injector which is utilized for accessing secrets from Vault. Vault servers could be deployed +external to Vault on Kubernetes as described via the [`externalvaultaddr`](https://www.vaultproject.io/docs/platform/k8s/helm/configuration#externalvaultaddr) value in the Vault Helm Configuration + ```yaml injector: enabled: "true" @@ -83,7 +85,7 @@ which bootstrap Vault Auth roles and Policies for Consul to use. For the support guides and ensure to, when combining the secrets, append the Vault Policies to your Vault Kube Auth Roles via a comma separated value (i.e. `policies=gossip-policy,consul-ca,consul-server,custom-policy`). Ex: ```shell-session -vault write auth/kubernetes/role/consul-server \ +$ vault write auth/kubernetes/role/consul-server \ bound_service_account_names= \ bound_service_account_namespaces= \ policies=gossip-policy,consul-ca,consul-server \ diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 7ace8c2e2..4f07f7b26 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -48,13 +48,20 @@ Next we will create a policy that allows `["create", "update"]` access to the [certificate issuing URL](https://www.vaultproject.io/api/secret/pki#generate-certificate) so the Consul servers can fetch a new certificate/key pair. -```shell-session -# consul-server-policy.hcl + + + + +```HCL path "pki/issue/consul-server" { capabilities = ["create", "update"] } ``` + + + + ```shell-session $ vault policy write consul-server consul-server-policy.hcl ``` @@ -66,13 +73,21 @@ $ vault policy write consul-server consul-server-policy.hcl Next, we will create a policy that allows `["read"]` access to the [CA URL](https://www.vaultproject.io/api/secret/pki#read-certificate), this is required for the Consul components to communicate with the Consul servers in order to fetch their auto-encryption certificates. -```shell-session -# ca-policy.hcl + + + + + +```HCL path "pki/cert/ca" { capabilities = ["read"] } ``` + + + + ```shell-session $ vault policy write ca-policy ca-policy.hcl ``` @@ -84,13 +99,13 @@ $ vault policy write ca-policy ca-policy.hcl Next, a Vault role for the PKI engine will set the default certificate issuance parameters: ```shell-session -vault write pki/roles/consul-server \ - allowed_domains="" \ - allow_subdomains=true \ - allow_bare_domains=true \ - allow_localhost=true \ - generate_lease=true \ - max_ttl="720h" +$ vault write pki/roles/consul-server \ + allowed_domains="" \ + allow_subdomains=true \ + allow_bare_domains=true \ + allow_localhost=true \ + generate_lease=true \ + max_ttl="720h" ``` To generate the `` use the following script as a template: @@ -125,7 +140,7 @@ To find out the service account name of the Consul server, you can run: ```shell-session - $ helm template --release-name --show-only templates/server-serviceaccount.yaml hashicorp/consul + $ helm template --release-name ${RELEASE_NAME} --show-only templates/server-serviceaccount.yaml hashicorp/consul ``` -> **Note:** Should you enable other supported features such as gossip-encryption be sure to append additional policies to @@ -143,7 +158,7 @@ $ vault write auth/kubernetes/role/consul-client \ To find out the service account name of the Consul client, use the command below. ```shell-session - $ helm template --release-name --show-only templates/client-serviceaccount.yaml hashicorp/consul + $ helm template --release-name ${RELEASE_NAME} --show-only templates/client-serviceaccount.yaml hashicorp/consul ``` -> **Note:** Should you enable other supported features such as gossip-encryption, ensure you append additional policies to @@ -166,6 +181,10 @@ The above Vault Roles will now be your Helm values for `global.secretsBackend.va Now that we've configured Vault, you can configure the Consul Helm chart to use the Server TLS certificates from Vault: + + + + ```yaml global: secretsBackend: @@ -188,8 +207,12 @@ server: load: "false" ``` + + + + The `vaultCASecret` is the Kubernetes secret that stores the CA Certificate that is used for Vault communication. To provide a CA, you first need to create a Kubernetes secret containing the CA. For example, you may create a secret with the Vault CA like so: -``` -kubectl create secret generic vault-ca --from-file vault.ca=/path/to/your/vault/ +```shell-session +$ kubectl create secret generic vault-ca --from-file vault.ca=/path/to/your/vault/ ``` From 0013727d8011a04f77156764bad8e8a88b918589 Mon Sep 17 00:00:00 2001 From: David Yu Date: Fri, 21 Jan 2022 11:28:38 -0800 Subject: [PATCH 299/404] docs: Vault Secrets Backend K8s, remove code tabs (#12156) * Update connect-ca.mdx * Update gossip.mdx * Update index.mdx * Update server-tls.mdx --- .../k8s/installation/vault/connect-ca.mdx | 4 -- .../docs/k8s/installation/vault/gossip.mdx | 8 ---- .../docs/k8s/installation/vault/index.mdx | 4 ++ .../k8s/installation/vault/server-tls.mdx | 37 ++++++------------- 4 files changed, 16 insertions(+), 37 deletions(-) diff --git a/website/content/docs/k8s/installation/vault/connect-ca.mdx b/website/content/docs/k8s/installation/vault/connect-ca.mdx index 7a96e9b08..bf0c707cf 100644 --- a/website/content/docs/k8s/installation/vault/connect-ca.mdx +++ b/website/content/docs/k8s/installation/vault/connect-ca.mdx @@ -37,8 +37,6 @@ $ helm template --release-name ${RELEASE_NAME} --show-only templates/server-serv Now you can configure the Consul Helm chart to use Vault as the Connect CA provider: - - ```yaml @@ -59,8 +57,6 @@ global: - - The `address` you provide to the `connectCA` configuration can be a Kubernetes DNS address if the Vault cluster is running the same Kubernetes cluster. The `rootPKIPath` and `intermediatePKIPath` should be the same as the ones diff --git a/website/content/docs/k8s/installation/vault/gossip.mdx b/website/content/docs/k8s/installation/vault/gossip.mdx index aff1a4d8c..184bb2d2e 100644 --- a/website/content/docs/k8s/installation/vault/gossip.mdx +++ b/website/content/docs/k8s/installation/vault/gossip.mdx @@ -24,8 +24,6 @@ $ vault kv put secret/consul/gossip key="$(consul keygen)" Next, we will need to create a policy that allows read access to this secret: - - ```HCL @@ -36,8 +34,6 @@ path "secret/data/consul/gossip" { - - ```shell-session $ vault policy write gossip-policy gossip-policy.hcl ``` @@ -80,8 +76,6 @@ you can run the following `helm template` commands with your Consul on Kubernete Now that we've configured Vault, you can configure the Consul Helm chart to use the gossip key in Vault: - - ```yaml @@ -98,8 +92,6 @@ global: - - Note that `global.gossipEncryption.secretName` is the path of the secret in Vault. This should be the same path as the one you'd include in your Vault policy. `global.gossipEncryption.secretKey` is the key inside the secret data. This should be the same diff --git a/website/content/docs/k8s/installation/vault/index.mdx b/website/content/docs/k8s/installation/vault/index.mdx index 1d9dd1caf..f759ce6d3 100644 --- a/website/content/docs/k8s/installation/vault/index.mdx +++ b/website/content/docs/k8s/installation/vault/index.mdx @@ -30,11 +30,15 @@ At a high level, there are two points of integration with Vault: A minimal valid installation of Vault Kubernetes must include the Agent Injector which is utilized for accessing secrets from Vault. Vault servers could be deployed external to Vault on Kubernetes as described via the [`externalvaultaddr`](https://www.vaultproject.io/docs/platform/k8s/helm/configuration#externalvaultaddr) value in the Vault Helm Configuration + + ```yaml injector: enabled: "true" ``` + + ### Vault Kubernetes Auth Method Prior to creating Vault auth roles for the Consul servers and clients, ensure that the Vault Kubernetes auth method is enabled: diff --git a/website/content/docs/k8s/installation/vault/server-tls.mdx b/website/content/docs/k8s/installation/vault/server-tls.mdx index 4f07f7b26..d669d97b9 100644 --- a/website/content/docs/k8s/installation/vault/server-tls.mdx +++ b/website/content/docs/k8s/installation/vault/server-tls.mdx @@ -22,25 +22,25 @@ which also uses an intermediate signing authority. * Enable the PKI Secrets Engine: -```shell-session -$ vault secrets enable pki -``` + ```shell-session + $ vault secrets enable pki + ``` * Tune the engine to enable longer TTL: -```shell-session -$ vault secrets tune -max-lease-ttl=87600h pki -``` + ```shell-session + $ vault secrets tune -max-lease-ttl=87600h pki + ``` * Generate the root CA -```shell-session -$ vault write -field=certificate pki/root/generate/internal \ - common_name="dc1.consul" \ - ttl=87600h -``` + ```shell-session + $ vault write -field=certificate pki/root/generate/internal \ + common_name="dc1.consul" \ + ttl=87600h + ``` --> **Note:** Where `common_name` is comprised of combining `global.datacenter` dot `global.domain`. + -> **Note:** Where `common_name` is comprised of combining `global.datacenter` dot `global.domain`. ### Create Vault Policies for the Server TLS Certificates @@ -48,8 +48,6 @@ Next we will create a policy that allows `["create", "update"]` access to the [certificate issuing URL](https://www.vaultproject.io/api/secret/pki#generate-certificate) so the Consul servers can fetch a new certificate/key pair. - - ```HCL @@ -60,8 +58,6 @@ path "pki/issue/consul-server" { - - ```shell-session $ vault policy write consul-server consul-server-policy.hcl ``` @@ -73,9 +69,6 @@ $ vault policy write consul-server consul-server-policy.hcl Next, we will create a policy that allows `["read"]` access to the [CA URL](https://www.vaultproject.io/api/secret/pki#read-certificate), this is required for the Consul components to communicate with the Consul servers in order to fetch their auto-encryption certificates. - - - ```HCL @@ -86,8 +79,6 @@ path "pki/cert/ca" { - - ```shell-session $ vault policy write ca-policy ca-policy.hcl ``` @@ -181,8 +172,6 @@ The above Vault Roles will now be your Helm values for `global.secretsBackend.va Now that we've configured Vault, you can configure the Consul Helm chart to use the Server TLS certificates from Vault: - - ```yaml @@ -209,8 +198,6 @@ server: - - The `vaultCASecret` is the Kubernetes secret that stores the CA Certificate that is used for Vault communication. To provide a CA, you first need to create a Kubernetes secret containing the CA. For example, you may create a secret with the Vault CA like so: ```shell-session From 6472dcc1c06eff566b90a504e42bade6156672f5 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" <4903+rboyer@users.noreply.github.com> Date: Fri, 21 Jan 2022 15:03:11 -0600 Subject: [PATCH 300/404] update main to reflect it is v1.12.0-dev (#12157) --- version/version.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version/version.go b/version/version.go index e0e15e8f6..962d07301 100644 --- a/version/version.go +++ b/version/version.go @@ -13,7 +13,7 @@ var ( // // Version must conform to the format expected by github.com/hashicorp/go-version // for tests to work. - Version = "1.11.2" + Version = "1.12.0" // A pre-release marker for the version. If this is "" (empty string) // then it means that it is a final release. Otherwise, this is a pre-release From 9ef448deddff7e9c4bca7fd6f84eb6fefc89fa57 Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Fri, 21 Jan 2022 16:06:44 -0500 Subject: [PATCH 301/404] Generate bindata_assetfs.go (#12146) --- agent/uiserver/bindata_assetfs.go | 387 +++++++++++++++++++++++++----- 1 file changed, 325 insertions(+), 62 deletions(-) diff --git a/agent/uiserver/bindata_assetfs.go b/agent/uiserver/bindata_assetfs.go index d3df1151e..9094fdfce 100644 --- a/agent/uiserver/bindata_assetfs.go +++ b/agent/uiserver/bindata_assetfs.go @@ -3,9 +3,20 @@ // pkg/web_ui/assets/apple-touch-icon-01cd4680782fbb5bc02301347df9903d.png // pkg/web_ui/assets/codemirror/mode/javascript/javascript-77218cd1268ea6df75775114ae086566.js // pkg/web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js +// pkg/web_ui/assets/codemirror/mode/xml/xml-10ec8b8cc61ef0fbd25b27a599fdcd60.js // pkg/web_ui/assets/codemirror/mode/yaml/yaml-3f129a000349e3075be0f65719884b61.js -// pkg/web_ui/assets/consul-ui-51d90776c9d9526f1bc127d33ec88b1e.css -// pkg/web_ui/assets/consul-ui-eff804c118e6bc3a3c4f9cb07c266b25.js +// pkg/web_ui/assets/consul-acls/routes-75a2ac7d38caf09cfee2a4e2bc49dcf7.js +// pkg/web_ui/assets/consul-acls/services-8b6b2b2bea3add7709b8075a5ed5652b.js +// pkg/web_ui/assets/consul-nspaces/routes-f939ed42e9b83f9d1bbc5256be68e77c.js +// pkg/web_ui/assets/consul-nspaces/services-8b6b2b2bea3add7709b8075a5ed5652b.js +// pkg/web_ui/assets/consul-partitions/routes-cba490481425519435d142c743bbc3d3.js +// pkg/web_ui/assets/consul-partitions/services-85621f245f195fe1ce177064bfb04504.js +// pkg/web_ui/assets/consul-ui/routes-7726cc49168b83dcd93c923c97ebe93d.js +// pkg/web_ui/assets/consul-ui/routes-debug-8f884a3e3f7105d43b7b4024db9b4c99.js +// pkg/web_ui/assets/consul-ui/services-a17470cdfbd4a4096117ac0103802226.js +// pkg/web_ui/assets/consul-ui/services-debug-5a3f1d2e3954a05aa8383f02db31b8e6.js +// pkg/web_ui/assets/consul-ui-0211f3a94fa457c0e5017b752330823c.css +// pkg/web_ui/assets/consul-ui-7e65bd2d836bd4fb61149d78e6516029.js // pkg/web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js // pkg/web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js // pkg/web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js @@ -15,8 +26,8 @@ // pkg/web_ui/assets/loading-cylon-pink.svg // pkg/web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js // pkg/web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js -// pkg/web_ui/assets/vendor-11065761200f308590a78bf8e141bc49.js // pkg/web_ui/assets/vendor-69ef69e98b7d14d1513f8056b6c6b48d.css +// pkg/web_ui/assets/vendor-a399e58c4944c43ad173eca58b0156b9.js // pkg/web_ui/index.html // pkg/web_ui/oidc/callback // pkg/web_ui/robots.txt @@ -104,7 +115,7 @@ func web_uiAssetsAppleTouchIcon01cd4680782fbb5bc02301347df9903dPng() (*asset, er return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-01cd4680782fbb5bc02301347df9903d.png", size: 7243, mode: os.FileMode(420), modTime: time.Unix(1632315832, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-01cd4680782fbb5bc02301347df9903d.png", size: 7243, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -124,7 +135,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(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/javascript/javascript-77218cd1268ea6df75775114ae086566.js", size: 21467, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -144,7 +155,27 @@ 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(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js", size: 5269, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x38\xdb\x6e\xdb\x38\xda\xf7\x79\x0a\x8b\xff\x0f\x0d\xd9\xd0\xb2\x3d\xb3\xbb\x17\x4a\x58\xa3\xc8\xb4\x8b\x02\xdb\x03\xd0\x0c\x16\x0b\xcb\x1d\xd0\x12\x6d\x73\x23\x93\x2e\x45\x25\x4e\x2d\xbd\xfb\x82\x1f\x75\xb2\x9d\x76\x6e\x44\x8a\xfc\xce\x67\x09\xaf\x4b\x95\x5a\xa9\x15\xb6\xe4\x88\xf4\xea\xbf\x22\xb5\x88\x31\xfb\xbc\x17\x7a\x3d\x12\x87\xbd\x36\xb6\x08\xc3\x8b\x9b\x9d\xce\xca\x5c\xcc\x2d\x36\xe2\x5b\x29\x8d\xc0\x28\x8a\x26\x51\x34\xc9\xe5\x6a\x92\xea\x4c\xec\xa4\x31\xda\x20\x42\x62\xd4\x72\xe8\x91\x33\xb1\x96\x4a\x84\xa1\x5f\x23\xbe\xcb\xe6\x7e\x8b\x17\x2f\x93\x59\x52\x4b\x62\x8b\xef\x74\x26\x3e\xc0\x09\xa9\x09\x3e\x15\xbd\x2c\xc4\xa8\xb0\x46\xa6\x16\x5d\x3d\x72\x33\x12\xec\xc8\x4b\xab\xbf\x88\x7c\x7d\x97\xeb\x42\x98\x22\x3e\x72\x23\x78\x1c\x4c\xe9\x8a\x17\x02\x56\xe3\x9e\xa9\xce\xfd\xb2\xdb\x71\x95\xb9\xad\xd8\xad\x04\x6c\xd6\x86\xef\x00\x72\x0b\x90\x72\xb7\x81\x45\xed\x4b\xeb\x36\x0f\xe2\x79\x23\x94\xdb\xe5\x52\x3d\xb8\x75\x27\x2c\x70\xd8\x73\xc3\x77\x6e\x53\xe8\xd2\xa4\x40\xc2\x1a\x9e\x02\xcc\x93\x67\xbb\x13\xaa\x94\x56\x38\xa8\x9a\xca\xdd\x3e\x97\xa9\xb4\xf9\x33\x08\x9b\xc5\xc7\x2c\xf3\x74\xdd\x53\xef\xed\xc6\xe8\x72\xdf\xec\xa5\x06\x9e\xf0\x6a\xfc\x13\xc4\xb1\x2b\x9d\x3d\xc3\x06\x70\xed\x5a\x6b\x7f\xbe\xf5\xfc\x81\x53\xaa\x95\x15\x07\xfb\x4f\xc3\x57\x2b\x30\x4a\xd6\x31\xcb\x2c\x40\x64\xf6\xec\x20\x97\xf1\x11\x04\xa9\x5b\xee\xc7\x5e\x8a\x81\x6c\x75\xff\x72\x3c\x39\xde\xc7\x47\x9e\x65\x46\x14\x85\xc3\xe0\xc6\xca\x34\x07\x9b\xf0\x42\x66\xde\x13\xb9\x4e\x1f\xbe\x95\xda\xc2\x5b\x26\x8d\x5f\x1e\x61\x01\xf7\xac\xa5\xc8\xb3\x42\x80\x42\x4e\x31\x61\xfc\xce\x80\x99\xb7\x33\x78\xfe\x0a\xcf\xdf\xe0\xf9\x37\x78\xfe\x1d\x9e\xff\x80\xa7\xe0\x99\xc7\xda\x76\xd6\xdc\x76\xae\x70\xab\xe2\xc0\xd0\xc7\x03\xdc\xef\x0d\x08\x54\x88\xb4\xd5\xd7\xf2\x95\x97\xbd\xcc\x41\x37\xb3\x8f\x8f\x03\x27\xd4\x6e\x39\x3d\xf0\x6e\x39\xf6\xde\x69\xfc\x52\x3b\x3f\x1d\x1b\x5f\x6d\xfd\x01\x5c\x75\xa0\xb5\x3b\x3f\x83\x70\x5a\xbc\x4c\xcc\xc4\x47\xef\xe3\x9a\x66\xfa\xa3\xb6\xef\x55\x26\x94\x8d\x8f\x5e\x87\x9a\xf2\x3c\xd7\x4f\x7f\x28\xb0\x32\x90\x84\x83\x0f\xb2\x28\xa4\x82\xb8\x4e\x79\x21\xde\xe9\x3c\x03\x68\xf5\x42\xfe\xbc\x14\xa7\x2f\x44\xd4\x19\xff\x0b\xce\xb3\x33\xce\xb3\x01\xe7\x59\x7d\x65\x23\x5f\x0c\x3e\xe8\x4c\x60\x74\xd8\xe5\x88\xf6\xa9\x6e\xa8\x26\x47\x97\xdf\x9c\x4a\x9a\x33\x13\x49\xe0\xf2\x87\x92\x96\x96\xcc\xb1\x66\x3a\xda\xda\x5d\xee\xb0\xe7\x22\x56\x57\x6b\x6d\xb0\x43\x48\x47\x52\x8d\x32\x52\x2e\xd2\x25\xcb\x16\xe9\xf2\xf4\x42\xfb\x0b\x0d\x17\x0d\xb3\x51\x81\x2d\x15\xe4\xd8\xbd\x2b\xac\xc8\xd1\x08\x5b\x1a\x35\x12\x91\xd5\x0f\x42\xc9\xef\x82\x29\xaa\x00\xb0\x76\xd4\x0c\xb3\x91\x12\x07\x8b\xc9\x95\x87\x44\xb7\x88\x31\x33\xb7\x91\xe0\x16\xa3\x00\x91\x76\xbb\x80\xed\x8e\xdb\x74\x8b\xd1\xdd\xef\x6f\xee\xdf\xb8\x13\x85\x77\x18\x71\xab\x77\x88\xa2\xe5\xf2\xb5\xab\xa0\xaa\xcc\xf3\xb8\x83\x1c\x8f\x5b\x28\x57\xb1\x84\xb2\x88\xa2\xf1\x38\x39\xfc\x26\x1c\x6c\x07\xf6\xfb\xa7\xbb\xfb\xff\x7c\x7e\x8b\x68\x30\xa5\xc1\x94\xcc\x31\x70\xfd\xf7\x56\xe6\x02\x4f\x16\xc9\x53\x12\xfd\x99\x8c\x97\x13\x42\x55\x67\xdc\x91\xc5\xa2\xd3\xaf\xb3\xb8\xa2\x86\x1c\x5b\x5b\xe9\x1b\x27\x4c\xc0\xb0\x66\xaa\x51\x93\xdc\x90\xa3\x5c\x63\x50\x53\x93\x06\xdb\xf4\xd6\xb1\x58\x5c\xcf\x08\xed\x4f\x80\xe2\x95\x43\x79\x0d\x28\x0e\x7b\xc6\x98\x63\xdd\x63\x15\x57\x2b\x23\xf8\x43\xfd\x22\xbd\xf1\x25\xbd\xba\x81\x44\xae\x02\xa3\xba\xc6\x33\xd2\x5b\x0e\xcc\x3d\x47\x3f\x31\xc2\xc0\x9b\x3b\xec\x69\x50\x34\x7f\x8d\x08\xf5\x2f\x24\xc6\x9c\x35\x84\x26\x88\xcc\x51\xea\xc2\xff\x9e\x6f\x50\x8c\xf4\x5e\x28\xb7\x1b\x12\x59\x53\x64\xf9\x66\xb4\x72\x35\x5f\x58\x44\x62\x14\x42\x14\xe0\x86\xc6\xff\xf5\x61\x70\x68\xb7\xad\x58\x7c\xbc\x7e\x33\x7e\x97\x64\xcb\x09\x09\xc3\x06\xe8\x06\x91\xf8\x54\xf6\xbf\xb8\x7e\x4a\xa2\x64\x1c\x9f\xc1\x90\xb9\x8f\xac\x18\x09\x68\xab\xf1\xa9\x3d\xbe\x86\xb7\x10\x10\x65\x9e\x93\xba\x0b\x8a\xb5\x4f\x02\xe7\x7d\x45\x0d\xd5\x7d\x7c\x77\x2e\xac\x2a\x34\x71\x6b\xc7\xcb\x85\xed\x65\x9e\x14\x94\x33\x8f\x30\x47\x42\x65\xde\x7a\x85\xc8\xd7\x9d\x31\x4f\xad\x06\x0c\xd8\x30\xac\x38\x43\xe2\x5b\xc9\xf3\x02\x81\x94\x57\x7d\xdc\x1d\x4f\xf8\x88\xa8\xb0\xdc\x0a\x76\x70\x3e\xe1\x9b\x8f\x7c\x27\x18\xec\xbe\x58\x6e\x2c\x03\x5c\xa7\x90\x64\x3d\x1a\xa8\xd9\xe4\xec\x48\xce\xe5\x35\x1a\x39\x61\x1a\x4b\xa1\x7e\xdf\x44\xda\x64\x91\xfc\x92\xa0\xe5\x24\xb2\xa2\xb0\x58\x93\x39\x1e\x88\x80\x15\xd3\x14\x1b\xd6\x8f\x28\x50\x48\xb4\xc1\x37\x81\x8d\x84\xce\x31\xb9\x21\x72\x8d\x5b\x5b\x32\xa6\x4e\x54\x58\x9f\x84\x3f\x72\x83\x8d\xda\xa0\x9a\x44\xb2\x78\xaf\xde\x58\x6b\xe4\xaa\xb4\x82\xb9\x26\x43\x40\x5b\x77\x0f\xca\xdd\xe9\x9c\xd9\x28\xd5\x79\xb9\x53\x78\x18\xd8\x20\x02\x71\x2e\xf7\x15\x62\xf2\x75\xf1\x35\x29\x92\x72\x3a\xe5\x53\x76\xfb\x3a\x41\xc9\x2f\xcb\x57\x17\x47\xc9\xc4\x85\x04\x7a\xd2\x26\x43\x83\xa0\xd8\x79\x85\x7e\x58\x2b\x6e\x02\xd5\x6a\xe9\xd2\x5b\x35\x3c\x05\x79\x31\xc9\xdb\x52\xd2\x66\xbb\xad\x7b\x4e\x1b\xc7\x89\x2a\x72\xb4\x5b\x59\x44\x7b\x23\x1e\x41\x3d\x68\x39\x14\xce\x3a\x07\xfb\x57\xdf\x10\x98\x6d\x36\x22\xf3\xc7\x85\x33\xce\xa7\xf5\xbf\xa4\x72\x05\x1b\x97\xd1\xa0\x47\x45\x5b\x5e\x7c\x7a\x52\x9f\x8d\xde\x0b\x63\x9f\xb1\x20\x55\xd5\x31\x71\x41\xdd\x6c\x23\xa5\x3d\x02\x09\x43\x0c\x54\xdb\x03\x16\x4c\x07\xd6\xd9\xbb\x89\x74\x40\x00\x77\xfb\x5e\x76\x50\x65\x80\xb3\xed\x43\x04\x52\xed\xc6\x5b\x2e\xe8\x10\x9a\x1c\x70\x31\xaf\x06\x64\x1a\xed\x69\x50\x46\x67\x8d\xf8\x5c\x2b\x45\xaa\xea\x12\x6a\xa1\x96\x97\xea\xb7\xbc\x9c\x22\x03\x5f\x1c\x5a\x5f\x34\x61\xd9\x56\x3e\xc6\xec\x1c\xab\x3e\xbf\x44\x1f\x7f\x2b\x12\xf7\xb5\xd2\xc1\x3d\xc4\x87\x9e\xe0\xea\x8c\x20\x84\x59\x4f\xad\xc9\xdb\xb4\x34\x46\x28\x8b\x09\x95\xcc\xe5\x21\xa2\xcf\x24\xc6\x92\x35\x55\x8c\xae\x06\x66\x7c\x68\x29\xba\xd2\xd0\x92\xf3\xd5\xcb\x0c\x49\xb5\x89\xae\x7a\x2f\xa9\x73\x9b\x06\xcc\x84\x61\x19\x9d\xcf\x3c\x17\x76\x3d\xc7\x23\x61\xb8\xc7\x8a\xd0\x9f\xd1\x66\xcc\x54\x55\x30\x63\x8c\x95\x3e\x37\x1c\x6d\xa9\x36\x73\xdc\xea\xf8\xe4\x75\xec\xeb\x0e\x7d\xec\x12\xa4\xd7\xfd\xb1\x57\xfd\xe9\xcc\x98\x4d\x89\x0d\x9c\x39\x7b\x04\x47\x16\xa4\x3b\x0c\xac\xf6\x78\x8a\x3a\xa0\xef\x88\x4e\xa9\x1a\xc0\x3e\xbf\x68\xe1\x1e\x91\xb7\xd5\x09\xd1\xef\x50\xa0\x1b\x39\x18\xb3\x55\x75\x5a\xee\x07\xae\xe9\xfc\x4d\x35\xeb\x23\xa9\xf7\x52\x6b\x36\x75\x5a\xc5\xe9\x05\xc1\xaa\x2a\xa3\xb3\xc1\xf5\xdc\x61\x86\xcc\xb7\x50\xaa\x62\xec\xd7\xde\x53\x4c\x89\xa7\xd1\x06\xfb\x46\xc7\x54\x57\x43\x08\xa1\x87\x4b\xe3\x3f\xf7\x56\xf9\x7e\x6e\x7c\xdf\xa6\x5c\x2c\x7f\x8c\x71\x19\x0d\x27\xde\xaa\xea\xfd\x41\xe8\x73\x63\xe1\x81\x89\x3f\x9e\x11\x6b\xca\xbf\x23\x76\x1f\x77\x36\x77\xb1\x79\x32\x59\x83\x9b\x1b\xd8\xb3\x14\x79\x81\xc9\xfd\xcf\x98\xb4\xf0\xad\xce\x05\x34\x9e\x7b\x67\xa1\x60\x4a\x8f\x50\x4c\xbf\xb8\x16\x1b\x0f\x3f\xc2\x9b\xef\xee\xb6\xbe\xc7\x05\x85\x36\x1c\x1f\x68\x6b\xc7\xd8\x56\x95\xfb\x86\x02\x67\xc2\x78\x46\x5b\x7f\xfa\xb7\xc6\x0f\xf0\x52\x77\xee\x87\x99\xd3\x15\x52\x11\xb9\x6f\xf7\xa6\xe6\x5a\x42\x45\x4d\x81\x5b\x7c\xda\x68\x5d\xe1\xec\x3a\xbf\x2b\xe0\x85\xeb\x45\x80\xdf\x4a\xd2\x35\x08\x0e\x68\x84\x50\x98\x5d\xbe\xec\x79\x2a\x70\x37\xbd\xc0\xa4\xc0\xfb\x81\x41\xfd\x60\x60\xc0\xaa\xaa\x38\x09\xc3\x6e\x26\x0f\x98\x0a\x43\x2c\x7d\x90\xb6\xe3\x48\xb3\x62\x5e\x55\x8a\x3a\x6c\x2a\xc3\x10\xab\xd6\x4b\x8c\xc9\xb9\xba\x46\xed\xc8\x21\x09\xa1\xaa\x6e\x4c\xd7\x2b\x28\x28\x74\x59\x98\xc6\xa1\xd2\x82\xc1\x5c\xa6\xf5\xa2\x9d\x8e\x09\x83\x51\xac\xcd\x1d\xd6\x1b\x62\x7e\x3e\x3e\x5c\xcf\xe2\xfe\xf6\x1a\x86\x2c\x1d\x86\xba\x6f\x7e\x6d\x97\x8e\x3e\xf3\xa2\x38\x65\x1c\xb0\x75\x18\x0e\x5f\x8b\xee\x8b\x60\x6e\xba\xc1\x03\x27\xc5\x2b\x32\x21\x8b\xe9\x32\xca\x85\xda\xd8\x6d\x3c\x6d\xc8\x34\x05\xd4\xe3\x04\xb3\x00\xca\x63\x99\x5b\x99\x4b\xe5\x32\xdc\x4b\xf0\x99\x17\xf6\x9e\x6f\xe6\xbd\x42\xd7\x1d\x6e\x43\xf1\xfa\xd7\x78\x70\x9b\xbf\xc2\x2f\xd1\x79\xc7\x53\xab\x4d\x55\xcd\x60\x96\x75\xd9\x24\x37\x0a\xbe\xc4\xc2\x70\x72\x1b\x24\x0b\xd8\x27\x8b\x66\xc6\x53\x5d\x58\x4c\x21\x18\xb8\xf3\xf1\xe4\xeb\x2d\x4e\x26\x64\x8e\x17\xc9\xd3\x9f\x71\x12\x8d\x97\xaf\xc8\x24\x12\x07\x91\x62\x05\x64\x79\x18\xf2\xc5\x6c\x49\x60\x2c\xd2\xbe\xab\xeb\xbe\x0d\xf0\xc5\xaf\x4b\x72\xd4\x4c\xc3\x40\xd0\x0c\x44\x2e\x7e\xff\xba\xf1\x74\x54\x08\x01\xb4\xab\x96\x4a\x2d\xf2\x42\x8c\x1c\xef\x9e\xab\x1f\x77\x2f\xdb\x7f\x47\x64\xe9\x84\x0d\x64\x55\x05\xf2\x9c\x11\xc8\x78\xce\xc3\x53\x76\x81\xe1\x5e\xc3\x30\xd0\xc3\x19\xeb\x86\x74\x2a\x35\x36\xd3\x73\xdd\x44\xd5\x75\x1e\x0f\xf3\xb8\xaa\xa6\x35\x15\xb9\x48\xad\x91\xe9\x7b\xf8\xb7\x36\xb9\x4d\x26\x8b\xa4\x48\x9e\xe2\xe5\xf5\xeb\xff\x9f\xf8\xdf\x43\x77\x3e\xb5\x7c\xb1\x40\xc9\xe1\xb7\x34\x18\x8f\xd1\xc9\xdd\x5b\x95\xc5\xed\xc7\xb0\x2b\x25\x6b\xb9\x29\x0d\x24\x78\x5c\xf6\x7f\x05\x90\xdb\xa1\xd8\xff\x5a\xd8\x8a\x7c\x2f\xcc\xfd\xf3\x5e\xfc\x10\xa4\x78\x90\xfb\x2e\x99\x4e\x0a\x9e\x6d\x12\x9b\x7d\x84\x21\xcf\xbf\x3c\x93\xba\xae\xa1\x9e\x34\xff\x31\xde\x7f\x78\x8b\x91\x33\xfa\x04\xc8\x01\xd1\xf3\x6b\xbe\x77\xbe\x06\x51\xcf\xa0\x76\x72\x07\xbf\x42\x2e\xda\x98\x27\x09\x82\xc2\xbc\x7a\xc1\x0d\xae\xe8\x51\xb9\x52\xdb\x28\xdb\xe8\x17\x07\xd3\x9a\xd4\x84\x5c\xfd\x2f\x00\x00\xff\xff\xc4\xe8\x95\x55\xff\x15\x00\x00") + +func web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60Js, + "web_ui/assets/codemirror/mode/xml/xml-10ec8b8cc61ef0fbd25b27a599fdcd60.js", + ) +} + +func web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60Js() (*asset, error) { + bytes, err := web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/xml/xml-10ec8b8cc61ef0fbd25b27a599fdcd60.js", size: 5631, mode: os.FileMode(420), modTime: time.Unix(1642782761, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -164,47 +195,247 @@ func web_uiAssetsCodemirrorModeYamlYaml3f129a000349e3075be0f65719884b61Js() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/yaml/yaml-3f129a000349e3075be0f65719884b61.js", size: 41079, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/yaml/yaml-3f129a000349e3075be0f65719884b61.js", size: 41079, mode: os.FileMode(420), modTime: time.Unix(1642782761, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\x7b\x6f\x23\xb9\xb5\x38\xf8\x55\x08\x07\xc1\xcd\x24\xe2\x19\x1e\xbe\xe9\x4e\x37\x7e\x89\xf7\x06\xbd\x40\xcf\x2e\xb0\xf9\xdd\xfe\x23\xc1\xec\xa2\x2c\x95\x2d\x65\xca\x92\xae\x24\xbb\xbb\xdd\xf0\xfd\xec\x8b\x73\x58\x92\xaa\xa4\xd2\xd3\x9e\xcc\x74\x62\x74\x4b\x2e\xf1\x71\xc8\x22\xcf\x9b\xe4\xe1\xff\xea\x0f\x8b\xd9\xbc\x5c\x88\x8b\xff\xfa\xdf\x7f\x91\xf1\xe2\xcd\x6f\xaa\xc9\xed\x68\x2c\x17\x93\xdb\xdb\xaa\xfc\xc3\x60\xf4\x20\x6e\x26\x93\x45\x39\x13\xd7\xf7\x8b\xc5\x64\xdc\x83\xfe\x64\x3c\xbf\xaf\xe4\x68\xbc\x28\xc7\x8b\xd1\x64\x2c\x6f\x46\x65\x35\x98\x97\x8b\xb9\x80\x69\x39\xbb\x1b\xcd\xe7\xa3\xc9\x78\xfe\x6e\x59\xbe\xbc\x9b\x2e\xbe\xc8\xf9\xa2\x58\x94\xef\xee\xab\x77\xd5\xe8\xdd\xef\xbb\x12\x2f\x8b\xfe\x62\xf4\x50\x76\x65\x55\xc5\x75\x59\xed\x81\xd7\xcc\x5f\x81\xb9\x9b\x0c\x8a\x4a\x0e\x46\x45\x35\xb9\x15\x7f\x9f\x4d\xaa\xf2\xed\x60\xd2\xbf\xbf\x2b\xc7\x8b\x1f\xc5\x60\x20\x8a\x03\x45\xa6\x54\x62\x5e\x16\xb3\xfe\x50\x5e\x17\x33\x6e\xf0\x7e\x2e\x60\x56\xde\x4d\x1e\x4a\x59\x54\xd5\x72\x44\x8a\x1e\x77\x00\x16\x5f\xa6\x65\x0d\x6d\x3b\x65\xd9\xaf\xbb\x62\x34\xce\xcd\xaf\x9e\x5a\x59\xc3\xb2\x18\x94\x33\x31\x2e\x1e\x2e\x6f\x46\xb3\xf9\x42\xf6\x87\xa3\x6a\x20\x26\x95\xa8\x46\xcb\x4a\xd3\xc6\x43\x5d\xf9\xeb\xa2\xfc\xbc\x90\x83\xb2\x3f\x99\x15\x34\x29\x97\xe3\xc9\xb8\x7c\x5a\xce\x4c\x6f\x38\xfb\x7a\x3d\x99\x0d\xca\x59\x4e\xdf\xff\xe6\x8b\xe2\xba\x2a\x45\xbf\x98\x12\xa0\x03\xa3\x94\xcb\x2e\xa8\xd7\x62\x31\xcc\xbd\x6a\xd7\x6f\x24\xad\x8a\xd5\x3f\x07\xcb\x87\x61\x8f\x9e\x87\xf9\x25\x8a\x6a\x74\x3b\xbe\xac\xca\x9b\xc5\x53\x31\x5b\x8c\xfa\x55\xd9\x2b\xe6\xa3\x41\xd9\xbb\x19\xdd\xde\xcf\xca\x5e\x46\xc7\x5e\x1e\xa8\xde\xf0\x76\x36\xb9\x9f\xf6\x86\xb3\xde\xbc\xec\x53\x83\x5f\x07\xa3\xf9\xb4\x2a\xbe\x5c\x5e\x57\x93\xfe\x4f\x4f\xfc\xfd\xdf\xf7\x93\x45\xd9\xbb\x9e\x0c\xbe\xf4\x06\x83\xde\xa0\xea\x0d\x16\xbd\xd5\xd8\xd4\x60\x87\xd8\x1b\xea\xde\xd0\xf4\x86\xb6\x37\x74\xbd\xa1\x27\x98\xc3\xc5\x5d\xd5\x1b\xdd\xcc\x8a\xbb\xb2\x57\x95\xb7\xe5\x78\xd0\xab\x46\xbd\x49\xd5\x9b\xf6\xa6\xb3\xb2\x47\xfd\x2d\x66\x65\xd1\xbb\xaf\xbe\xde\x15\xb3\xdb\xd1\xf8\x52\xbd\x99\x16\x83\xc1\x68\x7c\x7b\xa9\x9e\xb6\x40\x7e\xbd\x99\x8c\x17\x72\x3e\x7a\x2c\x2f\x51\xa9\xdf\xbe\xe1\x9f\x9f\xca\xd1\xed\x70\x71\x69\x95\x7a\xba\xaf\xbe\x56\xa3\xf9\x42\xce\x17\x5f\xaa\x32\x4f\x15\x8f\x50\x3d\x79\xb2\x3f\xa9\xaa\x62\x3a\x2f\x2f\x97\x0f\x6f\xea\x8c\xf9\xb4\xe8\xe7\x36\xb7\x86\xf6\xeb\xba\x3f\xc5\xfd\x60\x34\xe9\x95\x77\xd7\xe5\xa0\x37\xba\xbb\xed\x4d\xae\xff\x51\xf6\x17\xbd\x87\xd1\xa0\x9c\x7c\x1d\xe6\x6e\x14\xf7\x8b\xc9\x9b\xbb\xe2\xb3\xfc\x34\x1a\x2c\x86\xdc\xcd\x27\x28\xa6\x53\xf9\x30\x2a\x3f\xbd\xcb\xec\x60\x76\x57\xa3\xfe\xdf\x09\xc1\xdf\xe6\xe7\x1f\x6b\x6c\x2f\xab\x72\x51\x12\x97\xe0\x1e\x8e\xae\xab\x52\x8e\x27\x8b\x51\xbf\x9c\xef\xe6\x20\x05\xcf\x9c\xfc\x54\xcc\xc6\x92\xd1\xad\x2e\x0a\x83\x62\x7c\x5b\xce\x26\xf7\x73\xaa\x34\xfd\x22\x73\xb2\xe8\x60\x05\x62\x30\x7a\x58\xb1\x88\xd1\x98\x3a\x59\x0e\x6a\xc0\x6b\xb6\x73\x57\x8e\xef\xe5\xb4\x18\x97\x55\x8d\xc9\x94\x30\x5a\x94\x77\x3f\x12\x9e\xcf\x4a\x39\x9d\x4c\x27\x0f\xe5\x4c\x52\xfa\xbb\xfc\x7a\xfd\x61\xd9\xff\xe9\x7a\xf2\xf9\xc7\x3f\x30\x51\x33\x4b\xdc\xaa\x3c\x19\x0d\xfa\x72\x5e\x56\x65\x7f\xb1\xea\xdd\xb9\xb0\x96\xf5\x6a\x70\x99\xbb\xfd\xbe\x97\xc7\x77\x3e\x99\x2d\x76\x96\xf8\x34\x5a\x0c\x65\x7f\x32\xbe\x19\xcd\xee\x98\x0d\x88\xd6\xa4\x14\xf9\x57\x7f\x56\x16\x44\x0e\x79\x88\x73\x52\x31\xee\x97\x55\x2b\x69\x7e\x7f\x7d\x37\x5a\xf4\x9a\x13\x3d\x2b\xe7\xe5\xe2\xc7\x56\x52\x2e\xf5\x63\x4d\x8d\x02\xf2\x80\xcf\xbb\xf0\xe3\x72\x3c\x59\xfc\xae\x9e\xc6\xc5\xf8\xbb\xcc\x22\xc5\x7c\x5a\x8c\x33\xae\xc2\xb0\x98\xcb\x65\xfd\xc5\xec\xdd\x12\xd6\x09\x43\x97\xe1\xf0\x28\x0c\xca\x45\x31\xaa\xce\x04\xf4\x55\x7e\x2a\xaf\x7f\x1a\x2d\xe4\x62\x72\xdf\x1f\xca\x7e\x51\x55\x93\xfb\x05\x13\xe4\x9b\x65\xd6\xfd\x7c\x35\x01\x75\xc6\xdd\xe4\xb1\x2b\x75\xbe\x9d\xb8\x99\xf0\x94\x87\x7c\x56\x3e\x94\x45\x25\x46\xe3\xe9\xfd\xe2\x92\xbb\x59\x0e\xfe\xa7\xbc\xdb\xd1\x9b\x41\x79\x53\xdc\x57\x8b\xce\x0e\x11\x63\xda\xee\x50\x9d\x3a\xdf\x4e\xdc\x4c\x78\x2a\xbe\xf6\x27\xd5\x64\x76\xf9\x1b\x74\xde\xdc\xdc\x3c\xf1\x34\xcd\x17\xb3\xc9\xf8\xb6\xe6\xd5\x39\x7f\x34\x1e\x96\xb3\xd1\xe2\x89\x78\x6b\x9d\xf4\x50\xcc\x7e\x27\xe5\xed\xac\xf8\x22\x93\x52\xdf\x3d\x11\x0f\xfd\x7a\x5d\xf4\x7f\x22\x4e\x3d\x1e\xc8\x1a\xf0\xcd\xcd\xcd\x9b\x06\x3b\xf4\xd3\xcf\x6f\x98\xfd\xcf\xca\xf1\xa0\x9c\x11\xc3\x9a\x4c\x17\xa3\xbb\xd1\x63\xf9\xa1\xbc\x1d\x5d\x8f\xaa\xd1\xe2\x4b\x2e\x41\x15\x64\x31\xf8\xc7\xfd\x7c\x91\xd9\x28\xbf\xe8\x64\xfe\x59\x66\x78\x77\x93\xc9\x62\x48\x00\xa8\x0f\xf3\x7e\x51\xad\x27\x6d\xa3\x40\x31\x5e\x8c\x8a\x6a\x54\xcc\xcb\xc1\x1b\x22\xa8\x9b\x6a\xf2\x49\x7e\xbe\x1c\x8e\x06\x83\x72\xbc\x4e\xf9\x72\x39\xef\xcf\x26\x55\xf5\xe6\x7a\xf2\x99\x5a\xa7\xaa\x35\xe3\xbd\x9e\x7c\x7e\x73\x37\x1a\xd7\xdc\xd2\x28\x35\xfd\xfc\x04\xfd\x3b\x39\x97\xc3\x62\x3e\x1c\xc1\xd5\x64\x50\xfe\x30\x9a\xcd\x26\xb3\x5e\x7f\x32\x28\x49\x6a\x7c\xdd\xd5\x19\xe2\xbc\x9c\x76\x53\xdc\x8d\xaa\x2f\x97\x77\x93\xf1\x84\x18\x7b\xf9\x44\xe2\x7b\x6b\x00\xfd\x4d\xf0\x51\xbf\xa9\xf9\x36\x4e\x3f\xbf\xa9\x45\x10\x82\x9b\x95\x77\x42\xbd\xd9\xaa\xd3\x98\x1a\x4d\x53\x93\x29\x73\x1b\xf6\x62\x56\x8c\xe7\xd3\x62\x56\x8e\xf3\xcc\xd6\x24\xdf\x63\xcc\xec\x65\x3c\x59\x09\xbf\xaf\xcd\x3e\xff\xb9\x1a\x8d\x7f\xfa\xa1\xe8\xff\xf5\xcb\x7c\x51\xde\xfd\x65\x32\x5e\xf4\x64\x31\x9d\x56\xa5\x9c\x73\x4a\xef\xe2\xaf\xe5\xed\xa4\x14\xff\xf5\x7f\x5e\xf4\xfe\x9f\xc9\xf5\x64\x31\xe9\xfd\xdf\x9f\xbf\xdc\x96\xe3\xde\x7f\x5d\xdf\x8f\x17\xf7\xbd\xab\x62\x4c\x50\xab\xaa\x77\xf1\x97\xd1\xac\x10\x7f\x2d\xc6\xf3\x8b\xde\xc5\xff\x31\x9b\x8c\x06\xcb\x1f\xef\xcb\xea\xa1\x5c\x8c\xfa\x85\xf8\xbf\xca\xfb\xf2\xa2\xb7\xfa\xdd\xfb\xd3\x6c\x54\x54\xbd\x79\x31\x9e\xcb\x79\x39\x1b\xdd\x3c\x65\x94\xad\xe5\x2e\x4b\xd5\x1a\x63\x5b\xb2\x37\x28\xf5\xb4\x9e\x9e\x1d\xd8\x44\xf3\xf3\xd4\x9c\xbf\x15\x7e\x64\xec\xa0\x32\x4c\xa1\x4d\x54\xe2\x49\xfd\x34\x1c\x2d\x4a\x96\xd1\xe5\xe5\x74\x56\xbe\xf9\x34\x99\x0d\xe4\xa7\x59\x31\xbd\x1c\x4f\x66\x77\x45\xf5\xf4\xfb\xde\xe5\x65\x71\x43\x5a\xcd\xe5\xe5\x75\x79\x33\x99\x91\xc4\x5f\xa1\xda\x92\xc6\x96\x1a\xcb\xd7\x86\x68\x2e\xf2\x9c\x6c\x70\xb6\x66\xe2\xac\x18\x8c\x26\x3f\x7e\xed\xdf\xcf\xe6\x93\xd9\xe5\x74\x42\x52\x77\xf6\x74\x64\xad\x87\x92\x34\xb0\xa2\xaa\x95\xb2\xeb\x62\x5e\x56\x23\xd2\x4a\x98\x05\x6c\xe4\x2e\x26\xd3\xa7\xbd\x88\xb2\x54\x91\x9e\xb2\x46\xb5\x54\x49\xd5\xd3\x52\x23\x28\x3f\x4f\x27\xf3\x72\x20\xa7\xc5\x62\x28\x49\x13\xaa\x25\x37\x64\x6e\x2e\x06\x15\x0b\x91\xbf\xf7\xab\x62\x3e\xff\xf1\x3b\x31\x58\xb4\x7e\xaf\x34\x0b\xd2\xf9\xe4\xbc\x64\x43\x84\xe1\x08\x86\xc3\x85\x9b\x6a\xf5\x77\x27\x43\xbe\x9f\xce\x17\xb3\xb2\xb8\x93\xa3\xf1\x7c\x41\x42\x33\x83\x3f\x58\x9d\xd5\x3a\xd2\x89\xca\x86\x46\xf2\x9c\xfe\xcc\x26\xf7\x8b\x52\x2e\x46\x8b\xaa\xec\xc1\xa2\xb8\xe5\x7e\xec\xaf\xb3\x18\x50\xc1\xf9\xde\x42\x5f\xa7\x93\xf9\x88\x0d\x88\xe2\x7a\x3e\xa9\xee\x17\xe5\x0a\x9b\x97\x6c\xb1\x5f\x8d\xa6\x97\xb3\xb2\xbf\xf8\x9d\x12\xfc\xef\xbb\x37\x35\x42\x4e\x3f\x77\x70\x23\x49\xcf\x2b\x1d\xf4\xcd\x19\x73\x2e\x06\x8b\xba\x7b\xbd\xe3\x2b\xd5\x35\xc4\x60\xf1\x2c\xac\xe8\x68\xfb\x1c\x30\x1d\xbd\xd9\x89\x49\x1d\x4d\xee\x2c\xdb\x84\x7b\x3a\x8a\x35\x5b\x3a\xbd\x76\xb3\xed\x25\x02\x36\x20\xd6\x7f\x9b\x59\x4b\x0c\x6c\x94\x5a\x0c\x1a\xe5\x28\x63\x8d\x80\xa4\xd6\x8f\xfa\x19\xdd\xee\xc7\xf3\x72\x51\xa3\x19\xb3\xd4\xb6\xb5\xb2\x65\x79\xfd\x7e\x69\x31\xe5\x2a\xea\x09\x8a\xf1\xe8\xae\xc8\xfa\xe1\xa2\xb8\x96\xe3\xe2\x41\xdc\x57\x4b\xae\x7b\x8e\x81\x73\x72\x95\xcb\x21\x51\x52\x1e\xd2\xc1\x68\x4e\x5d\x19\x7c\x97\x7f\x66\x1b\x7e\xcd\x65\x8a\xfb\xc5\x50\xde\x95\x8b\xe1\x64\x20\x09\x42\x03\xef\x17\xe5\x6c\x5c\x54\x72\x3e\xb9\x9f\xf5\xcb\xb3\x4d\xa9\x93\x2b\xad\x7a\x7c\x5e\xed\x9b\x49\xff\xdc\x86\xf3\xa8\x2d\xbd\x3a\xe7\x43\x38\x66\xdc\xd7\x60\x19\x63\x17\x03\xc8\x29\x52\xd4\xaa\xef\x76\xc1\xb5\xc7\x4b\x36\x90\xa0\x65\x42\x9d\x53\x69\xdf\x78\x1f\x51\x9b\xc7\x7b\xe3\x95\xcf\x83\xd4\x35\x78\x1d\x90\xd6\x8e\x32\x01\x0f\x45\x75\x5f\xca\x6c\xd9\x2d\x4b\xfe\x34\x1a\xaf\x5f\x65\x03\x79\x1b\xda\xa6\x9c\xce\x26\x9f\xbf\xf4\x60\x30\x9a\xf7\xa9\xe1\x2f\xb2\x3f\x2c\x46\x63\x51\x8b\xbb\x7e\x31\x1b\xbc\xab\x4d\xcd\xfb\x4a\x54\xa3\xdd\x2e\x80\xee\xf4\xc6\xb0\xee\x28\x50\x63\xea\x8e\xdc\x36\x32\xee\x2d\xb4\x17\xdf\x6e\xaa\x62\x4e\x14\x3e\x9f\x17\xb7\xa5\x98\x42\xc9\x16\xc2\x76\xf2\xe7\xd1\x7c\x31\xdf\x4e\x9f\xdf\xf7\xfb\xe5\xbc\x23\x83\xc8\x60\x44\x78\xda\xe1\x01\x59\x53\xc4\xbb\xdf\x1f\x2a\xb0\x1c\x86\x03\xa5\xf8\x4d\x7b\x50\x65\x57\x5c\xc3\xbb\x92\xc5\xc7\x16\x40\x1e\x85\xc1\xe8\xe1\xbb\xfd\x65\xd7\x03\x78\xb8\x6c\xa3\xd4\x1e\x3f\xe5\xbb\xda\x69\xb8\xbf\xd0\x70\xf9\x1e\xc7\x7b\x82\x8e\x78\xd1\xe7\x00\xdb\x1a\x89\xe7\x00\x5b\x83\xe9\xf2\x56\x6d\xa7\xad\xf0\xbc\x23\xab\xc6\x8f\x8e\x9c\x23\xb0\xff\xa5\x86\xf6\xa5\x46\xf5\xf9\x03\xba\x54\x29\x20\x8f\x45\xc9\xcb\x0b\x8b\xc9\x74\x52\x4d\x6e\xbf\x90\x24\x9f\x8d\xfa\xf3\x9a\xef\xd5\x12\xfd\x80\xaf\xee\x40\xfe\x06\x27\x3a\xaa\xf0\xbe\x39\x69\xbb\x06\x5b\xbf\xd6\x3c\xb3\x9d\x9c\x51\xa0\x9d\xd6\xea\x55\x57\xd6\xbe\x3e\x1c\x70\x48\xe6\xa4\x25\xf0\x8e\x9c\xdc\xa1\x8e\x8c\xd3\x9a\x6e\x39\x3e\xbb\x65\xf2\x2e\x89\xdb\x95\xd1\x1a\x92\x23\x05\x6c\x57\xe7\x76\xba\x60\x73\x52\xbb\x85\x56\x4e\xb3\x6b\xad\x8c\xd3\x9a\x5e\xba\x7a\x3b\xd2\x36\x47\xa6\x9d\xb9\xdd\xfe\x32\xa7\x63\x6c\xba\x0a\xec\xeb\xe1\x31\x8e\xe7\x83\x50\x36\x5d\xd3\x67\x78\xb3\x87\x8b\xbb\xea\xef\x83\x62\x51\x48\x56\x55\xfe\xdf\xb7\x17\x83\x3e\x14\xfd\x6a\x0e\xa3\xf1\xa0\xfc\x7c\xf1\xa3\xc8\x0b\x61\x83\xa5\x2a\x49\xea\x11\x4c\x27\xd5\xa8\xff\x45\x8e\x27\x83\x52\x8e\x06\xa4\x4b\x2d\xbe\xb4\x72\xe6\xe5\xec\x61\xd4\x6f\x64\x9e\xe9\x2a\x3f\xc8\x4c\x5f\x0c\xee\x06\x73\x7d\x31\xb8\x1b\x10\x4f\x77\xf2\x1f\x39\x04\x2f\x01\xb8\x73\x0c\x5e\x02\xf0\x12\xe4\xd2\xbc\xcd\x2e\xcd\xf9\xa4\x1a\x0d\x9e\x5e\x5a\x4c\xff\x1c\x1c\xf6\xa5\xf8\xd2\x31\x04\xba\x9e\xdd\x13\x29\xfb\x54\x76\xb1\x63\x71\x63\xbd\x66\x4b\x29\x4e\xbb\xe0\xf1\x4d\xfd\xcb\x04\x53\x58\xdd\x35\x65\xbb\xa5\x60\x4b\x00\x9c\xce\xa1\xba\x7a\x19\x6e\xe2\x4d\xb1\xd1\xd1\xeb\xa2\x8f\xfd\xfe\x66\x47\xcf\x75\x4c\x9c\x68\xf7\x2d\x2d\x89\xbd\xaa\xd3\x79\x9c\xb3\xe3\xfd\xcb\xeb\xb2\xbc\xd1\x1b\xef\x5f\x2f\xab\xb4\x7e\xed\xdf\x30\x71\x8a\x71\x71\xde\x2c\xe0\x8d\x46\x6d\x9f\x9e\xe1\xa6\xd8\x69\x9f\x1f\x6d\x69\x9f\x2a\xe0\x8e\x1d\xef\xee\x37\xdd\x61\xd8\x76\x93\xda\x75\x39\xd8\x00\x7a\x53\xf4\xad\xd2\xdb\x60\x6a\xc3\xb9\xab\x6f\xfd\x9b\xb0\x05\x46\x97\xd7\xca\xa4\x37\xad\x5f\x1d\xb3\x70\x82\x3b\xe7\x38\x5e\x71\x9d\xf4\xcd\xcd\x9b\xd6\xaf\x43\x1e\xcc\xb3\x1c\x53\x1d\x66\xcb\x51\x1d\xcc\x8b\xc2\x6f\xda\x4b\xc4\xbf\x42\x47\x55\xd7\xcb\xa8\x1b\x77\xe0\x7d\x54\xa1\x07\xc1\x3e\x1d\x74\x21\xed\xb0\x92\x0e\x1b\x0e\xdd\xba\x73\x47\x67\x63\x71\x8d\x5b\x9d\x8d\x65\xf2\x85\x79\xd3\x7a\x9f\x9d\x9d\x3d\xc6\x9d\x75\xb4\x5d\xb8\xc7\xe4\x3b\xcd\xb8\x3a\x64\x2d\x9d\x68\x92\x1c\xb4\x30\xf6\xc0\xeb\x18\x75\x13\x43\xb1\x35\xea\x19\x29\xde\xac\x49\x62\xd7\x90\xef\xd9\x65\xd3\xb1\xa5\xa6\xee\x67\x47\x2f\x6a\x9c\x3c\xb3\x17\x87\x2d\xf1\x43\x16\xe9\x41\xab\xac\xde\x78\xb8\xdd\x73\x55\x5a\x55\x98\xc3\x3d\x3f\x6b\x57\xd9\x19\xcb\x1d\x07\x7d\xa1\xc7\xfa\x17\x5f\xc4\xf7\xf6\x7c\x08\x07\x3c\x47\xbf\x66\x8b\x6b\x6d\xbf\xec\xd9\x72\xb2\x81\x39\xfd\x60\xac\x75\x6f\x5a\xbf\xb6\x25\xfb\x5e\x0f\x7a\x97\x1c\x48\x65\xbf\x2c\xf7\x36\xe5\xae\x31\x6a\x75\x06\x9e\x3e\x73\xb1\x6c\x5d\xfb\x80\x5b\x6f\x8f\xe4\x28\x5d\xa1\x8b\x4d\xa5\x72\x43\x72\x9c\x45\x83\x4b\x89\xf2\x73\x2e\x7f\xfe\x73\x97\x16\xf7\xf6\xe8\x25\x97\x49\x7e\xb6\xe5\x91\x5f\xed\x72\xc5\xaf\xcd\xd1\x7f\x80\x9e\xea\xd9\x7c\xb6\x33\xfd\xdb\xf4\xd1\x7d\x43\x1e\xb5\x0e\x86\x57\xb3\xee\x4d\x43\x8a\x38\xf8\x33\x19\xde\x4b\x6d\x40\x38\x69\xad\x66\xa7\x72\x15\x6e\xb4\xd6\xfd\x83\xef\x79\x39\x9b\x4c\x16\xbd\xec\x83\xb8\x2e\xc6\xe3\x72\xf6\x63\xe3\x4c\xc9\xe4\x86\x3d\x29\x02\xc6\xbc\x29\x71\x2e\x9a\xfc\x66\x30\x7a\xf8\x5a\x6f\x12\x55\x4a\x65\xf3\x6f\xf9\xdb\xa9\x95\xbf\xa2\x4e\x42\x2a\x52\x1b\xf6\xcb\x24\xb7\x95\xa4\xa9\xd4\xa0\x5f\xaa\xd2\x2f\x93\x0c\x25\xd5\xc6\x7f\x9d\x64\x29\xa9\x16\x52\x75\x92\xa3\xa4\xda\x25\x53\x27\x79\x4e\xd2\x3e\x86\x55\xa9\x40\x49\xb5\x87\xad\x4e\x8a\x94\x94\xbd\x57\xab\x24\xea\x97\xee\xeb\xd2\xac\x2a\x26\x2a\x95\x7d\x0e\xab\x24\x2a\x85\x0e\x03\xae\xfa\x95\x52\xba\xfc\x8d\x52\xea\x8d\x94\xd7\xd5\x7d\x99\x3b\x55\xeb\xe7\xb2\xe9\xc6\x6a\x6d\x9c\x6d\x0d\xfe\xa1\xa9\xe8\xc8\xaf\x8a\x75\x76\x6b\x42\x72\x4f\xd6\x13\xd2\xee\x2c\x6e\xbf\x12\x6e\xbf\xb8\xde\x1e\x1e\xb3\x3d\x88\x76\x7b\xa8\x77\x4d\x48\x7b\xda\xc2\xf6\xe4\xc6\x6d\x14\x88\xdb\x88\x92\xb6\xd1\x29\x6d\x23\x1d\x4f\xc8\xcd\xde\xd1\x3f\xe0\x2e\x59\x26\x55\x23\x51\x7c\xe5\x7a\xbc\xe9\x4c\x0e\xee\xeb\xf3\x53\x80\x6e\xfe\xa6\x91\xb1\x18\xdd\x8d\xc6\xb7\xf2\xe6\x7e\xcc\xf4\x7e\x59\x16\xf3\x52\x4e\xee\x17\x4f\xa4\x62\x2e\x46\xe3\xdb\xb6\xea\xd9\x84\x39\x9d\x4d\xa6\xe5\x6c\xf1\xe5\x72\x32\x2d\xfa\xbc\x8b\xbd\xb3\xbd\xbd\xcd\x55\xa3\x71\x59\xcc\xde\xd4\x10\x2e\xd5\x9b\x7a\x23\xaf\x2c\x1f\xca\xf1\x62\x9e\x4f\x11\x1c\xc2\xb1\xe1\xe2\xae\x12\xd7\x93\xc1\x97\x77\x70\x3d\x2b\xc6\x03\x59\x4d\xd8\xdd\x7a\x57\x8c\xc6\x5f\xf7\x34\xde\xbf\xbf\x1e\xf5\xe5\x75\xf9\x38\x2a\x67\xbf\x03\xec\xd1\x7f\xed\x7a\x90\xbe\xdb\xf5\x2a\x4f\x6b\x6f\x21\x5b\xa6\xb5\x33\xba\xbc\xbb\x2e\x67\xdc\xea\x68\x7c\xfb\x5d\x47\x57\xbe\xe6\x59\x3b\xb1\x13\xeb\x4a\xad\xe1\x5c\x27\x8f\x8b\xbb\xf2\xb2\x3e\xb8\x77\x33\x9b\xdc\xc9\x9b\x6a\xf2\xa9\x91\x7f\x33\xaa\x2a\x62\xde\xa4\x02\xcc\x3e\x15\xb3\xc1\xfc\xe9\x7f\xfd\x54\x7e\xe1\x5d\xca\x73\xb1\x59\xf1\x2b\x2a\xf5\xdb\xaf\x0f\xa3\x79\x7d\x2a\x61\xf3\xbc\xc0\xee\x8d\xb2\x4f\x4f\x9b\xaa\x62\x7d\xde\xef\xdd\xef\x1b\x47\xc3\xba\x76\xa8\x2f\xd3\x08\x0f\xe4\xb0\x9d\xb6\xbd\xb9\xbd\x43\xcc\xe5\x09\xb8\x19\x55\x84\x34\xd7\xc5\xec\xbb\xda\x41\xcd\x1b\xbd\xf9\x0c\xdd\x8f\xf9\x1c\x91\xc8\x92\x70\x5a\xcc\xe7\x9f\x26\xb3\xc1\x8f\x1d\xaa\xfe\xa9\xb0\x16\xe5\xe7\xc5\xf3\xe0\xac\x0e\xda\xed\x3f\x8d\x98\x05\xe9\xb2\xeb\xdb\x6f\x72\x7a\xe5\xba\xeb\xa7\x54\x3c\xa9\xaf\xf5\xda\xcf\x39\x3d\x6d\x55\x3d\xbe\x9f\x75\xb5\x93\x7a\x49\x85\xcf\xea\x63\xa3\xe2\xf1\x3d\xe4\x4a\x47\xf6\xef\x68\x24\x7e\x06\x94\x63\x7a\x7e\x18\x71\x9b\x4b\x7d\x3b\xfa\xb8\xab\x48\xdd\x81\xed\xec\x35\xf4\x3c\x70\x7c\x66\x7b\x1b\xee\x76\x66\x0d\xb1\x99\xb1\x82\xc5\x07\x7e\x78\x2d\xe7\x00\x39\xed\x2e\x93\xc1\x77\xe5\xaf\x5a\x69\x64\xee\xa0\x81\x5d\x25\xb6\x80\x6f\x62\x74\x23\xab\x13\x71\xbb\xf3\xb7\xc0\xb6\xd0\xb0\xc1\x9e\x21\x06\x37\x2b\xef\xde\xfc\x8a\x8f\x3d\xb5\xc4\x04\x82\x7b\x8e\x3c\x78\x97\xd7\x09\x57\x00\x96\x2b\xcf\x7c\xf4\xe4\x5d\xf3\x70\x40\xe7\xf6\xf5\xeb\xd1\x98\x84\x7d\x5e\xa9\x1c\xea\xce\x32\x04\x57\xd4\xc7\xb7\x9b\x65\x86\x65\x51\x91\xad\x44\x06\x62\x06\x00\xad\xa4\xc9\xfd\x62\x7a\xbf\x68\x1e\xaa\x38\xb2\xc6\x52\xe8\xee\xda\xf8\x0d\xf9\xc4\x32\x14\x55\x35\xf9\x74\x74\xe9\x41\x39\xfe\x72\x74\xe1\x46\xa4\x84\x83\x75\x16\x03\x18\x94\xf3\xc5\x68\x5c\xe4\x13\xf9\x3b\x4b\xed\x3c\x15\xb0\xb9\x7e\xd6\x18\xe4\xd6\x71\x96\x55\xe6\xa0\xbc\x19\x8d\x6b\x6d\x90\x0f\x92\xd3\x20\x37\x97\x1a\x6a\x34\x68\xcf\x3f\x9f\x79\xec\x4f\x66\x53\x99\x81\x8b\x2d\x8d\x54\xc0\xa0\x3f\x7f\xd7\x76\xe8\xb4\xc3\x3b\x74\x2b\x48\x67\x9f\xe9\x3e\x5a\x6e\xd7\x78\x7e\xb4\x04\x3d\xbe\x3c\xf1\x90\x63\x4a\xef\x27\xc0\xbd\x55\x57\xf3\xf6\xd2\x81\x1d\x56\xdb\xd5\x8e\x2b\xdd\x46\x87\xa3\x22\x47\x1c\xb5\x6d\x82\xe7\xf9\x39\xe7\xf3\x6b\xaa\xe3\x55\x82\x06\xbd\xd5\xc9\xc3\xd1\xed\xb0\x22\x66\xb9\x9d\x45\x68\xb7\x9d\x5a\xef\x31\xb9\x2b\xc6\xc5\x6d\x49\x1d\xdd\x2e\x52\x6f\x35\xd8\xce\xa8\xb7\x32\x34\x32\xb6\x04\x7b\x3d\xe5\xe7\xbe\x2c\xa3\x10\x6f\xe1\x58\x51\x4f\x6d\xef\xb6\x45\x7e\xe3\x04\x7e\x33\x3d\xb7\xbe\xdf\x21\xb1\x3c\x6f\xb7\x9b\x90\x8f\xaa\x5f\x1c\x57\xec\x14\x90\xdc\xf9\xe5\x51\xd9\xe5\x96\xfe\xce\xcd\x2b\xf5\x0e\xa1\x39\x2c\x4f\xd5\xc1\x5d\xb9\x28\xa8\xd4\x05\x91\x6e\x71\x2d\x97\x32\xa9\x21\x9b\x3a\x94\x9a\xdc\xe4\x96\x42\xb2\x95\xbc\xe6\x03\x9c\xb8\xa4\xd9\x83\x61\x5f\xde\xfd\xfe\x50\x5c\x95\x15\x95\xb6\x12\x5b\xc4\xd8\x0a\xc3\xf2\xeb\x0b\xb8\xd0\x56\x58\x74\x53\x63\xd9\xad\x70\x7c\xdd\x38\xc3\xdd\x8c\x27\x00\x71\x56\xde\xbd\x80\xde\xf3\xcb\xa8\x34\xaf\x0a\xca\xb7\xa7\xa0\xbc\xea\x1a\xcf\xd5\x35\x8e\xd7\x1e\xde\x6d\x49\xd5\x6f\x4b\xb2\x77\x49\xe8\x57\x01\xfc\x4b\x0a\xe0\x3d\xc2\x75\xa7\xc8\xf1\x6a\x1d\xc6\xe0\x04\x5b\xf5\xe5\x2d\x99\xb3\x94\xf5\xe1\x33\x55\xea\x73\xeb\x1d\x52\x45\x4f\xd4\x87\xba\x95\x9f\x5f\xa1\x8a\xd3\xc4\x1c\xd7\xc0\x9c\x97\x52\x2d\x9e\x21\x4c\x0f\xca\xcd\xe7\x0b\x84\x35\xc7\x6e\xd2\x5e\x33\x20\x1e\x18\xd6\xd8\xfe\x45\x14\xa5\x5f\xb3\x58\x7a\x31\x66\xdc\x9c\xbe\x17\x55\xb7\x9f\xab\x5f\x76\x6a\x87\xaf\xde\xa9\x5f\x48\x63\x7c\x09\x5d\xf0\x85\x62\x33\xfe\x13\xdd\x2b\xff\x82\x5a\xdc\xcb\xe9\x5e\xcf\xf4\x77\xb4\xb0\xe3\xd7\x29\xe9\x9b\x6b\x45\xe7\x68\x89\x3f\x8b\xc2\xb7\x4f\xe5\xda\xab\x4e\xb5\xde\x09\xb5\x6b\x71\x7b\x31\x44\x86\x03\x3f\x8d\xc6\x83\xe5\x51\xbe\x97\x08\xa9\x74\xbc\xf4\x28\xef\x9e\x55\x7d\x29\x7c\x0e\xc6\xac\xdd\xa5\x88\x1d\x3c\x08\x79\xec\xcc\x57\xef\x06\xe7\x6d\x1b\x3f\x3d\x30\xf7\x11\x1a\xd3\x71\x6a\x55\x1d\x20\xfc\x48\x25\x6c\x7a\x8c\xf6\x75\x94\x86\x76\x6c\xbb\x5c\xf8\x60\xb3\x8d\x21\x3a\x45\xe5\x3b\xb6\x13\xcd\x3a\x5d\x7d\x69\x28\xed\x99\x39\x36\xe2\xda\x89\x4e\x9c\x68\xd4\xe8\x2e\xba\xe3\xf0\xed\x76\x1c\xe5\xed\x43\xa0\xe5\x7c\x52\x3d\x94\xb3\x79\xc3\xd1\xd2\x7d\x52\x74\x6f\x89\xf9\xb4\x1a\x2d\x16\x6d\x30\xc7\x04\x6c\x5a\xda\x20\x63\x26\x8f\x51\x35\xf8\x9d\xfe\xae\x5d\x62\x7a\x74\x5c\xf9\xb6\xfe\xb6\x71\x3e\x84\x95\x42\xc9\x4a\xfa\xbb\x25\x2b\xdd\x54\xf1\xa6\x1d\x4a\xdc\xbc\x9c\x16\xb3\x62\x31\x99\xfd\xd8\xca\x1c\x54\xbd\x8d\x9d\xb4\xa7\x29\x79\xc4\xc5\x7e\x4e\xa5\xf0\x48\xf8\x67\xa9\x90\x47\xc2\x7e\xae\xba\x79\xb0\x99\xe7\x7a\x36\x33\xa6\xfc\xe1\x60\x3b\xd3\x23\x45\xf4\xb1\x92\x7c\x7a\x8e\x96\xdb\xc2\xc3\x13\x6a\x33\xa2\x9e\x70\xd2\x83\x31\xb9\x69\xd2\x6e\x18\xb8\x6b\x26\xd8\x4a\x9e\x6e\x1b\xbc\x1d\x26\xf0\x56\xe5\x75\xd6\xb4\x65\x16\xb7\x6d\xe4\xad\x6a\x9c\x3a\xdd\x6d\x32\xef\x31\xa6\xb7\x60\x6d\x17\x99\x6e\x1a\xda\x5b\x86\xf7\x16\x90\x65\xc6\x74\xd3\x14\xdf\x32\xcd\xb7\xaa\x2e\x33\xa6\x87\x83\x75\xad\xe9\xe2\x45\x0c\x9d\x26\x4a\x9d\x80\x4d\xa7\x20\xd2\xce\x00\xf7\x0d\x27\xc3\xb4\x07\x8b\xd1\x94\x44\xd5\xe4\x73\xf6\x55\x2c\x86\xe5\x5d\xf9\x3f\x6f\x17\x93\x49\xb5\x18\x4d\x89\x9f\x70\x7e\x7f\xc2\x02\xb1\xd7\xba\x7e\xe3\x88\x58\xf9\x4d\x4b\x8d\x06\x6f\xcb\x72\x3b\x74\xce\xf2\xd0\xe1\x8a\xad\xe1\x3c\x50\x61\x8f\x2d\xd7\x55\x8e\x5f\xe4\x57\x16\xd2\xbf\xcb\x3e\x2c\xef\x4e\x31\x1b\xdb\xa5\xf7\xd9\x92\xed\x92\x5d\xae\xfd\x35\x27\xcf\x97\xa5\xb4\xcd\x9c\x0d\xa3\x87\x2f\xf4\x10\x1c\x04\x9c\x4d\x99\x3c\xbc\xcf\x33\x2d\x1b\x73\x7f\x2e\xa0\xc1\xd9\x7d\x60\x52\x7b\xa6\x49\xbb\xf5\x02\x67\x40\x5a\xbd\xc1\x19\xc7\xc0\x06\xa3\x87\xaf\xbb\x77\xbc\x37\xf6\xca\x77\x3a\xd3\x4f\xb2\xcf\x9e\x6f\x05\xbd\x9c\x5d\xf3\x73\x99\x2a\xd3\xfd\x96\xc1\x96\x6e\xbc\x47\xe0\x1f\x27\xd9\xf7\x89\xef\xf3\x04\xf5\x61\x29\x7c\x58\xd8\x4e\x37\x25\xcd\xcf\xc1\x98\x97\xdc\xa4\xcb\x19\x74\x9a\xdf\xe4\x4c\x17\xfa\x33\x1d\x0e\xa7\xfa\x0e\x5e\xd2\x7c\x3d\xcb\xb2\xdb\x6f\xb6\x3d\xd7\x32\xfb\xf6\xdd\xef\x3f\x9b\x25\x72\x96\x2d\xf1\x4c\x55\xf5\x54\x8d\x73\x5b\x37\x6c\x6a\x7a\x2f\xe7\xd6\xde\xa9\x5c\xbc\x80\x4e\xf1\x4b\xa9\x02\xcf\x15\xe0\xfb\x3c\xc7\xff\x3c\xe7\xf0\xcf\x70\x1f\xd9\xcb\x39\x46\x4f\xf2\x66\xee\x72\x3e\xfe\x8b\xb8\xf5\xb6\x1d\x72\xfb\xbd\x6f\x2f\xef\x5e\x3b\xcd\x59\x76\x9c\xf3\xeb\x6c\x77\xd6\xe9\x3e\xa9\xe7\xf8\x90\xf6\x3b\x75\xf6\xb8\x6c\xba\x3d\x32\x47\x38\x5a\x76\x3a\x4f\xb6\x5d\x23\xc7\x3b\x42\x9e\xed\xf0\xd8\x72\x16\x9c\xe1\x8a\x38\xc9\xfb\xf0\xd2\xbe\x86\x6f\xcd\x2f\xd0\x69\xfe\xb7\xec\xfc\x6e\x93\xfe\x85\x0d\xf4\x17\xb0\x94\x9b\xf2\xae\xd6\xf7\xb7\x79\xe0\xea\x9a\x2f\x29\x8b\xaa\x9c\x2d\x64\x7f\x34\xeb\x57\x1c\x50\x80\xed\xdd\xf9\xc3\xed\xe5\xfd\xac\xfa\xdd\x7f\x10\xba\x5d\x8e\xee\x8a\xdb\xf2\xfb\xf9\xc3\xed\x1f\x3e\xdf\x55\x6f\xea\x0b\x7b\xdf\xf2\x7d\xbd\xbd\x3f\xce\x1f\x6e\x05\xc9\xc5\x3f\x4f\x3e\xbf\xbd\x50\x42\x09\x6d\x85\xb6\x17\xe2\x66\x54\x55\x6f\x2f\xc6\x93\x71\x79\x21\x3e\xdf\x55\xe3\xf9\xdb\x8b\xe1\x62\x31\xbd\xfc\xfe\xfb\x4f\x9f\x3e\xc1\x27\x03\x93\xd9\xed\xf7\x5a\x29\x45\x80\x2f\xde\xfd\x71\x5a\x2c\x86\x5c\x49\xce\xee\xab\xf2\xed\x45\xf9\x50\x8e\x27\x83\xc1\x85\xe8\x57\xa3\xe9\x66\xda\xe0\xed\xc5\x0f\x88\x02\xdd\x50\x3f\xe8\xa1\xd4\x0f\x52\x3f\xde\x29\x19\x87\xfa\xc1\x0f\xa5\xfe\x18\x1e\xef\x20\x25\xe9\xae\x3c\xd8\x20\xb4\xd0\xc2\x83\x8d\x42\x0b\xd4\x73\x4b\x49\xa8\x44\x82\x94\x04\xaa\x2b\x0c\xe0\xb4\xd0\xfc\x7f\xf5\x8c\xfa\xaf\xf5\xb3\x40\xa4\x82\xfa\xf1\x07\xd4\x42\xab\xbe\xb4\x60\xb5\x50\x32\x4a\x03\x2e\xca\x28\xe3\x3c\x3f\x08\xfe\x08\xfa\x21\xe8\x47\x7e\xa0\xb4\xc7\xe5\x68\xfc\x56\x1b\xa5\xd4\xc5\xf7\xef\xfe\x48\x2f\xfd\xee\x3f\xbe\x5b\x5d\x0c\x78\x57\xcc\x7f\x92\x3c\xce\xf5\x25\x79\xbb\xa6\xe5\xbb\x37\xc7\x17\x3d\x10\x36\xb6\x26\xa4\xcc\x52\x0a\xc4\x2f\x75\x41\x39\x1c\x0d\xca\x1f\xbb\x2e\x1f\xae\x6f\x64\x6a\xdc\x41\xfc\xdd\x32\x9e\xf3\x1a\xa1\x32\x81\xcb\x69\x55\x8c\xc6\xdf\x06\x22\x25\xc2\x0e\xfc\x40\x13\x9e\x84\x13\xa8\x05\x2a\x7a\xa4\x54\xe1\x84\xcb\x0f\x39\x0d\x35\x95\x08\xab\x6c\xe4\x24\x34\xfc\xcc\xc9\x98\xff\xe7\xe7\x9c\xae\x45\xdd\xc6\x6e\x4c\x78\xda\xa3\x21\x42\xf9\x79\x5a\x8c\x07\xcb\x31\xde\xbe\x2c\xab\x2e\xd6\xaf\x26\xf3\x72\xb0\x8a\x31\x72\xa4\x28\x7e\xb7\xaa\x70\x42\xd9\x33\xf8\xde\x46\xdd\x36\xab\x1b\x5c\x4e\xc6\xd5\x97\xac\x95\x91\x86\x9d\x8d\xeb\xd5\x1b\x77\x56\x39\xa2\xcc\xb1\x7d\x22\xb4\x1d\x96\x0f\xb3\xc9\x58\x0e\x26\x9f\xbe\x11\xb4\xf5\x84\x61\x11\x5c\xfa\x90\x31\x10\x83\x08\x84\x6e\x91\x91\x53\xa0\xaa\xbc\xf0\xc2\x4b\x2f\x11\x2c\xf2\xd7\x7e\xfc\xdb\xed\x82\xc9\x21\x9b\xc9\x4c\x78\x97\x37\x6b\xf1\x44\xad\x11\xf2\x50\x60\x68\x36\x30\xb2\x3e\xbd\xa7\xd2\x86\x47\x46\x34\x6b\xef\xa9\xb6\x1d\x5b\x3a\x37\x37\x2d\x9a\x6c\x89\xd2\x72\xbc\xaa\x67\xcd\x2e\x7a\xfa\x7f\xdc\x94\xde\xb6\x90\xa0\x63\x6e\x1b\xb3\xce\x53\xa2\xa3\xbe\xd2\xff\x99\xa7\x37\x42\x48\xc2\x56\x12\x82\x09\x10\xf0\x03\xa2\x08\xe0\x9c\x7f\x6f\x3e\x46\x70\x61\x18\x2b\xa9\x21\x91\x74\x83\x68\x2d\x04\xe3\x21\x20\x7e\x40\x23\x22\x28\xaf\x1f\x69\x6e\x67\xa4\xf3\xd1\xb0\xff\x54\x32\xfc\x2b\x0e\x52\x76\x51\x27\xe5\xcb\xe9\xde\x5e\x20\xb8\x0b\xf1\xf9\xed\x05\x04\x77\x21\xbe\xd4\x7f\x97\x79\x96\x32\xb3\xfb\x7b\xf9\x6b\xf6\xf9\xed\x45\x00\xed\xa8\x05\xee\x3f\x75\xd7\x80\x23\xd1\x57\x25\x91\x2e\x8e\x6c\xb2\x4e\x22\x71\xd5\x2f\xa6\x6f\x2f\xe6\xff\x7d\x5f\xcc\x4a\xc6\xc9\xdb\x35\x5e\xfe\x66\x19\x82\x9d\xb4\xdb\x62\x34\x26\xd5\xaf\x1a\x8d\x7f\x12\xb0\xcc\xa0\x5f\x2b\xf4\x28\xfe\x3e\x2b\xab\xdf\xbf\x5d\xba\xd9\x7f\x5c\x13\x78\xf9\x79\xb4\xf8\x26\x08\xdb\x09\x4c\x1f\xdd\xd0\x41\xb2\xf6\xa3\x79\xef\x0a\xd2\x42\x38\x80\x8f\xd4\x42\x3f\xa0\x5d\x27\x90\x6a\x33\x44\xdb\x47\x40\xfa\x21\x21\x09\x4d\xda\x90\x83\x14\x49\x0f\xc2\xf4\xde\x3d\xde\x25\x89\xfe\x41\x0f\x0d\xb8\x54\xc9\x04\xd1\x08\xfe\x42\x96\x4d\x2c\xf9\xb2\x74\xfa\x88\x6a\xa8\x3f\x9a\xa1\x0c\x7b\xf8\xc4\x6f\x88\x41\xd6\xd7\x41\xae\xa7\x64\x30\x6a\x6f\xa4\x6c\x12\xdf\xe1\x43\x8c\x7c\x15\x24\xeb\xdc\x7f\x18\x1c\x51\x97\x7d\xd7\x47\xd4\x39\x7c\x4b\x27\x5c\x97\xc3\xe2\x61\x34\x99\x89\xc1\x62\xab\xfa\x39\x17\x6d\xee\x05\xb8\xe3\x1a\xcd\x23\x7a\x74\xd0\x93\x52\x0f\x40\x2d\xc8\xf7\xfb\x54\x0e\x94\xdd\xf4\xae\xb4\x8b\x9f\x7e\x4f\x67\xf7\x1b\xed\xf5\x23\xd4\x44\x3c\x2c\xab\xe9\x8f\x0d\x75\xe6\x88\x2d\xa6\xed\xce\x6e\x5f\xe3\xc0\x7a\x6c\xf6\xef\x6c\xe0\xcc\xae\xb2\x39\x30\x58\xbb\x30\x1b\x7f\x5d\x9d\x6c\xed\x59\x6d\xf6\xe5\xab\x94\xa3\xf1\xcd\xe4\x9b\xb4\xb3\xb4\xd0\x7d\x07\x0e\x2d\x89\x3f\x25\x2c\xd8\x48\xda\x85\x40\x35\x97\xcb\x1f\x92\x7f\xff\x35\x5b\x50\xd6\xb0\xa5\xc5\x36\x97\xcf\x8f\x64\x9e\x09\x84\x18\x7d\xbf\xae\xa3\x64\x04\xb4\x46\x18\xf0\x3a\xd6\xcf\x11\x90\x5b\xc9\x25\x0c\x78\x17\xc4\x2a\x67\xf5\x5d\xd7\xcf\xbf\xa4\x01\xbf\xcc\xa9\xa1\x28\x69\xc1\x49\xae\x4d\x29\x3a\xc9\x55\xae\x4e\x0f\xa0\xd0\x3d\xde\x21\x58\x4d\xca\x13\xea\x58\x20\x38\xe7\x44\xfe\xce\x6c\x16\xac\x35\x12\x52\x74\x7d\x09\x3a\x7a\x09\x3a\x68\x09\x5e\x52\x25\x4a\xf7\x5c\x62\x28\x19\x4a\x5f\x82\x89\x0e\x94\x8e\x12\x7c\x74\x80\xd1\x71\x5d\x2a\x52\x20\x58\xe7\x45\xfe\x5e\xc3\xa6\xec\x21\x55\x8e\x1f\xd1\x83\xe9\x83\xd2\x09\x4c\xf4\x80\x2e\x42\x40\x5b\x97\xf1\xd4\x38\xe8\xe8\xc0\xaf\x52\xa8\xdd\xdc\x2c\xb5\x2a\x94\xa0\x36\x25\x57\x4c\xf4\x40\xe5\x96\x5d\xce\xdd\xf5\xcb\xb7\xf1\xef\xc9\x1c\x31\x1f\x51\xd3\x20\xd8\x47\xb2\xa0\x23\x04\xea\xa4\xb1\x34\x00\xf4\xcd\x3a\x8e\x04\x2b\xb1\x4f\x7d\xe5\xe1\x83\x60\x0d\xa5\x08\xd0\x01\x25\x68\x17\x79\x2c\xb8\xdc\x9c\x33\x51\x47\x81\x02\x6c\x1f\xb4\x0b\x54\x0a\x2c\xb5\x2b\x70\x2e\x09\x02\x04\xab\xb9\x02\x8d\x87\x61\xc9\x63\x4c\xdd\x14\x55\xd3\xb1\x4f\xd9\x8a\x5b\xa2\x97\x09\x92\x60\xeb\x3d\x96\xf3\x13\x4c\x67\x93\xdb\x59\x39\xcf\xf7\x7f\x2c\x48\x75\x1c\x17\x8b\x7a\xf7\xc4\x7e\x62\x5e\xd3\x64\x1d\x0a\xf0\x54\x3a\x3c\x4c\x67\xb9\xc8\xe5\x67\xd2\x4d\xba\x0a\x62\x4a\xe9\x7b\xce\x5d\xa9\x5a\x44\xcc\x4b\x45\x8b\x9e\xf9\x5e\xe2\xb7\x17\xf3\xc5\xec\xbe\xbf\xb8\x9f\x95\x72\xd4\x27\x39\x94\x7b\x7c\xf1\xee\x8f\x1c\x71\xef\x1d\x74\xe7\xcb\xeb\x62\x5e\x7e\x5d\x86\x6b\x04\x7c\xda\x55\x6e\x39\x8a\xeb\xc8\x87\x97\x3b\x4a\xde\x14\xe3\xfe\x17\x39\x9f\x8e\xc6\xc2\xcc\xc5\x68\xcc\x27\x9c\x4a\xb1\x11\x19\x12\xb4\x7b\x53\x2b\x76\x83\x62\x3e\x2c\x66\xb3\xe2\xcb\xa5\x12\xd6\x36\x53\x27\x37\x37\xf3\x72\x71\xa9\xde\xb4\x55\xc0\x4b\x8e\x34\x9b\x63\x3a\xde\x4c\x66\x77\x72\x32\x1b\xdd\x8e\xc6\x97\x4e\xfd\x56\x38\xf5\xdb\x66\x4c\xc4\x83\x7d\xfc\xaa\x7e\xfb\xf5\xe8\x7e\x3c\x69\xd7\x51\x9a\x10\x15\x3b\x8a\x4b\xab\x9e\xdc\x09\xe0\x25\xa2\x7a\x0a\x27\xb5\x80\x4e\x3d\x2d\x26\xc7\xb7\xa0\xb5\x7a\x3a\x62\x78\xe6\xa3\x3b\x8e\x09\x56\x8f\xcf\x6a\xa0\x2f\x67\x93\x45\xb1\x28\x7f\xa7\x06\xe5\xed\x77\xd4\xf0\x56\x8e\xf1\x39\xef\xe9\x8f\xdf\x67\xbc\xfb\xe3\xa0\xbc\x99\xd7\xd2\xa4\xa1\xee\x13\x91\x6e\xe8\xfa\xa6\x2d\xa3\x46\x83\xb7\x17\xc5\x4a\xb2\xb8\xca\x0b\xf3\x10\x2b\xe9\x85\x91\x5e\x9a\x8f\x91\x0d\x97\xef\x33\xf4\xfb\x79\x29\x98\x48\x2e\x87\xb3\xf2\x86\x1b\x28\x0e\x10\x06\x23\x3e\x81\x38\xa7\xee\x92\x18\xda\x76\x71\x39\x5b\x8c\x6e\x46\xfd\x62\x51\x2e\xfd\x31\xc3\xd1\xa0\x6c\x68\x0e\x5f\xa6\xa5\x9c\x95\x0f\x65\x51\x89\xd1\x78\x7a\xbf\xb8\x64\x2f\x43\x39\xf8\xc3\x86\x09\xba\x0e\xd9\xc9\x2e\xb6\x6f\x45\xfa\x87\xbe\x86\x40\xe2\xcb\x09\x0d\xda\xb2\x47\x8c\xe4\x0e\x89\x1d\xe2\xe5\xda\x4b\x30\x24\xe4\xa2\xa9\x34\x24\x2d\xe8\xab\x8f\xe0\x50\x52\xa6\xd0\x10\xa4\x86\x98\x04\x49\x1f\x69\x21\x38\x89\x10\xe8\xc9\x24\xe9\x65\x00\x27\x11\xf3\x1f\x16\x02\x1a\x82\x05\x4d\x12\x3c\x45\x08\x95\x06\x24\x18\xe8\xaf\x50\x41\xb0\x22\x70\xab\x08\xc6\x89\x40\xaa\x45\x78\xfc\x41\x0b\x0b\x9a\x4a\x06\x4b\xad\xd9\x3f\x21\x42\x54\x56\xd4\x7f\xb2\xa9\x84\x02\xa9\x57\x81\x14\x08\x93\x84\x27\x73\x5a\x64\xab\x9a\x85\xbf\x50\xc2\x80\x32\x12\xb8\x40\x94\x10\x6d\x05\x96\x84\xe8\x07\x4c\x54\x4d\x6b\xa1\x51\x68\x45\xcf\x06\x74\x10\xa4\xe6\x50\xc3\x8f\x3f\x04\x70\x6c\x54\x55\x0c\x88\xbe\xfa\x12\x94\x03\x8d\x12\x54\xa4\xd7\xa6\x3f\x9e\xda\x40\xf0\x9e\x65\xad\x30\xfc\x0f\x34\xd9\x72\x60\xad\x04\x65\x78\x50\x55\x1b\x8c\x0f\x60\x0c\x7b\x6f\xc0\x19\xa9\x41\xe7\x3f\x34\x23\xd2\xd1\x6f\x2b\x9d\x74\x2c\x3c\x13\x68\x49\xa5\xea\x82\x8f\x77\x16\x0c\x4a\x08\xb1\x32\x80\x64\x9f\x23\xe9\x29\x12\xd0\xf7\x95\xa4\x8e\x48\xea\x88\x34\xf4\xaf\x92\x80\x01\xd4\x7e\x17\xd1\x36\x29\xcc\x87\x93\x4f\xdd\xa4\xb0\x1b\xf9\xa9\xce\xb7\x82\xfc\x16\xdc\x55\xa0\x6f\x42\x2c\x23\x02\x78\xdc\x87\x49\xf3\x04\x3a\x48\x03\x88\x22\xe3\x74\x7f\x07\xae\xf3\x72\x02\x86\xfe\xf6\x4c\xce\xf3\x83\xa0\x49\x5d\x53\x9c\xcc\x0f\x94\xc6\x2b\x1d\x7d\x9e\x3f\xa1\xa4\x11\x79\x0e\x85\x99\x37\xb0\xca\xc8\xfc\x43\x9a\xc6\x14\xef\x9b\xda\xe2\xd3\x7c\xd7\x25\x7b\xeb\xe9\x6d\x14\xda\xd8\xc7\xd8\x59\xe6\xa7\x51\xd3\x69\xdd\xc8\xd8\x53\x67\xeb\x52\xbe\x76\xa9\xaa\xb5\x7c\x95\xd3\xf6\x5d\xd6\xd7\xb0\xc1\x0f\xb1\xf1\x83\xc8\x7d\xe2\xc6\xb6\x81\x28\xef\xa8\x7f\xcf\x03\x90\xeb\x3c\x0f\xc6\x3f\x3e\x6d\xfb\x22\x4e\x02\xf0\xd3\xfd\x75\x39\x1b\x97\x8b\xf2\x99\x2f\x33\x9e\xdc\x15\xdb\x5e\xe3\x93\x40\x4c\x46\x83\xfe\xf3\x20\x2c\xca\xd9\xac\x60\xdd\xe6\x59\x60\x1e\x8a\xfb\x6a\x7b\x58\x5f\xd4\x7b\x5e\x7b\xcc\x3b\x91\x68\x67\xe1\x1d\x08\xb3\xb3\x7c\x17\x72\xec\x2c\xbc\x07\x11\x76\xd6\xe9\x9e\xf4\x9d\xc5\x3b\x27\x78\x67\xe9\xdd\x93\xb9\xb3\xca\xa1\x89\xdb\x5c\x85\x38\x6a\x12\x76\x54\x3a\x38\x19\x3b\xea\xed\x9f\x94\x1d\x95\x8e\x9a\x9c\x1d\x75\x0f\x4d\xd2\x8e\x6a\x07\x26\x6b\x47\xad\x63\x26\x6d\x47\xd5\x43\x93\xd7\x58\x0b\xaa\x46\x35\x1b\xcf\x7b\x9c\xf7\xcf\xdf\xee\x7a\x07\xa7\x70\x77\xd5\xfd\xb3\xb8\xbb\xde\x51\x13\xb9\xbb\xfa\xa1\xb9\xdc\x5d\xf3\xc0\x74\xee\xae\x78\xcc\x8c\xee\xae\xdd\x39\xa9\x87\xb5\x91\x76\xb9\x9d\x0a\x49\xbb\x58\x5b\x27\x69\xe7\xed\xaf\xb9\x47\x33\xa9\x0b\x6e\x2a\x27\x75\xf2\x71\xfa\xc9\x4e\x17\x7f\x8e\xf4\x31\xa8\xe0\xa6\x18\x55\x54\x82\xc3\x33\x1c\x2e\x3e\x2b\x07\x23\x5e\x00\xdc\x5b\xfc\x94\x05\x84\xed\x5b\x79\xdb\x54\x75\x74\xad\x4d\x9a\x3a\xba\x62\x8b\xa2\x8e\xae\xd5\x45\x4f\x47\x57\xde\xa0\xa6\xa3\xeb\xb5\x69\xe9\xe8\x6a\x1d\x94\x74\x74\xdd\x0d\x3a\xfa\x19\x57\x81\xfe\xf1\x69\x71\x98\x3e\x1b\x85\x76\x12\x67\xa3\x4c\x9b\x32\x1b\x19\x7b\xea\xec\xa1\x49\x2a\xb5\x49\x90\x94\x76\x1c\x35\xae\x51\xe6\xf0\x7b\x6e\x97\xdd\xf9\xba\xdb\x45\xdb\x6f\xbd\x9d\x7f\x18\xc2\x9e\x31\x68\x14\xee\x0e\x1c\xd5\x59\x74\x73\xd4\x1a\x59\xc7\x0d\xde\xcb\xae\xed\x1d\xdc\xa7\xc6\x14\x7a\x78\x9a\x5a\xc5\x76\xce\x50\xab\x54\x7b\x72\x5a\x59\x7b\xeb\xed\x99\x92\x5c\x6e\x73\x88\x73\xea\x71\xa3\x5b\xef\x4f\xee\xcf\x1a\x5d\x6b\x6e\x43\x06\x1a\x02\x25\x39\x69\x3a\x9b\x3c\x8c\x5a\x2d\xb5\x4a\xde\x4e\x26\xb7\x55\x79\x54\xd1\xbb\x51\x7f\x36\x99\x4f\x6e\x16\x47\x95\x9e\xfc\xb4\x28\xf6\x15\x3c\x3c\x5b\xcd\x52\x3b\x27\xab\x59\xa8\x3d\x57\xcd\x9c\x7d\xb5\xf6\xcc\x14\x17\xdb\x9c\x28\x4e\x3c\x6e\x9e\x36\xb6\x5e\x93\xa8\xdc\xd8\x2c\xb9\x5d\xa6\x0e\x0c\x77\xa8\xd8\x3f\x3e\x2d\x0e\x96\x59\x53\xed\xc1\xa2\x8c\x7d\x07\x4b\xd1\xab\x1f\x2c\xb4\x12\x5f\x5b\x25\xbb\x76\x93\xb2\xfa\xb0\xb9\xa3\xf4\x40\x95\x5a\x77\x38\xb1\x16\x29\x0e\x27\x56\x69\x68\x0d\x27\xd6\xcc\x2a\xc3\x89\x95\x58\x5f\x38\xb1\xce\x5a\x59\x38\xb1\x62\xd6\x14\x76\x57\x5a\x01\x3e\x4c\xa8\x5b\x45\x77\x52\xeb\x56\xc9\x36\xc9\x6e\x65\x1f\xac\xbf\x87\x78\xd7\x65\x37\x29\x78\x9d\x73\x1c\x19\xf3\x50\x1d\x1e\x86\x56\xb1\x9d\x43\xd0\x2a\xd5\x7e\xfd\x56\xd6\xde\x7a\x7b\x5e\x3b\x97\xdb\x7c\xe5\x9c\x7a\xd4\xeb\xfe\xfd\x66\x32\xe3\x73\x25\x84\x2f\xf9\x7c\xc8\xc1\xc0\x11\x02\x46\x73\x59\x4d\xfa\xb5\xcf\x9f\x89\xba\x19\xd1\x6f\x0d\xfc\x34\x38\x35\xa5\xbf\x04\x28\x22\xff\x97\x80\xd3\xe0\x09\x2f\x01\x2e\x33\x8a\x97\x80\xc4\xdc\xe3\x25\x00\xad\x59\xca\x4b\x40\xcb\x7c\xa6\x13\xd2\x8e\x8d\x9a\xdd\xc1\x61\x8b\x7e\x95\xf7\x79\x7c\xbe\xf8\x51\xe4\x4d\x56\x9d\xde\xd1\x93\x2b\x6f\x58\xa2\x27\xd7\x6f\x1a\xa4\x27\x57\xee\xb0\x4b\x4f\x86\xd1\x36\x4f\x4f\xae\xde\xb2\x52\x4f\xae\xbd\x6d\xac\x9e\x0c\xa2\x6d\xb3\xee\xdc\x58\xb7\x64\x2c\xcb\x23\x7d\xe3\xc9\xa0\x94\xa3\x41\x39\x5e\x8c\x16\x6b\xfe\xb7\x59\xaa\x8e\x29\xbc\xa3\x60\xed\x9e\x39\x0c\xb1\x5d\x70\x3f\x50\x32\x31\x0f\x43\x6c\x94\xda\x0f\xae\x61\x7b\x1d\x86\xba\x5d\x78\x3f\xf0\x6c\x75\x1c\x86\xdb\x2a\xb7\x1f\x24\xeb\xc7\x87\x21\x36\x8b\xed\x07\xb8\x16\xd7\x87\xa1\x6e\x95\x3d\x00\xfa\x98\x4d\x62\xbd\x35\x1f\x3b\xa2\x07\xad\x72\x3b\x5b\xff\x79\x0e\xc0\x34\x2f\xeb\x9e\x95\xd3\xb2\x20\x05\xaf\x7e\x7a\xd3\xc8\x9b\x4e\xf2\x85\xb9\x97\xfd\x72\xbc\x28\x67\x3b\x36\x74\x6f\x8f\x4e\xf6\x2b\x8e\x1e\x04\xf4\x67\xa3\xc5\xa8\x5f\xac\x7b\x77\x3a\x08\x3e\x92\xf8\x8c\xfa\x79\x5d\xae\xb9\xa3\xf8\x74\x18\xf9\xf2\xf1\xe7\xc1\x98\x16\xf3\xf9\xa8\x71\xa8\xe5\x74\x08\xf5\x39\xe3\x03\x10\xf6\xee\xaf\xff\x4d\x35\xb9\x1d\x8d\x6b\x75\xed\x0f\x39\x3e\x01\x1f\x5a\x5e\xda\x60\x19\x93\x77\x9f\xa4\xe0\x83\xbf\xb7\xed\x83\x14\x27\x9e\xbb\xd8\x2e\x9e\x6f\x92\x17\x40\xaa\xea\x4f\xbc\xdb\xf9\xa7\xf2\xcb\x46\xa5\xd5\x8e\xf8\x73\x11\xef\x44\x00\x1b\x68\x77\x62\xed\x0e\xa4\x3b\x11\x42\x07\xca\x9d\x08\x61\x0b\xe1\x4e\xac\xbf\x89\x6e\xfb\x8e\x1d\xd6\x59\xe5\x51\x85\x37\xcf\x28\xbe\xf0\x99\x8f\xfa\xfc\x85\x00\xd6\x2e\x9b\xdc\xf4\x39\x27\x44\x76\xde\x6b\xf1\x02\xa7\x4b\xb6\xa3\x0f\x9c\x0b\xe2\xf4\x7a\xa4\xa5\x9f\x5c\x6b\x50\x41\x31\x18\xcc\xca\xf9\xbc\xeb\xf0\xca\x33\x0f\xd3\x1c\x51\x9d\x37\x59\x9c\xdb\xf6\x92\x35\x9c\x59\x9d\x54\xd6\x2c\x0f\xcf\x04\xc0\x9c\xe5\xcc\xba\x7c\xd0\x68\x50\x56\xc5\xb9\x00\xee\xca\xf9\xf0\xcc\xaa\xa4\xcc\x9c\x5b\x75\x8b\x99\x9d\x50\xb9\xe6\x63\x67\xd7\x5e\x9c\xfb\xc2\xd3\xc9\x6c\x71\x6e\xd5\xd9\x64\x31\xe9\x4f\xce\xc5\xb1\xf9\xa4\xff\x53\x79\x6e\xdb\x8b\xc5\xb9\xcd\x2e\x03\x99\x9c\x52\x7b\x19\x63\x63\x4d\x55\xdb\x9c\xfd\x60\xe5\x9a\x24\xce\xa8\xb9\x42\x8e\x73\xea\x6e\xc5\x7c\x39\x07\xca\x6a\xd0\x4e\xaf\x4b\xd6\xeb\xdb\xbb\xf2\xc7\xae\xba\x1d\x3b\xcc\x96\x43\xdc\xb5\xd5\xec\x98\xfa\xf5\x58\x9d\x5b\xbd\x7e\xd1\xa3\xaa\xef\xd9\xdc\x76\xe4\xc6\xb6\xad\x7a\x1c\xa7\xea\x94\x5d\x71\xad\x00\x57\xc7\x16\x3e\x70\x80\x7c\x57\x78\xab\x43\x55\xd6\xe7\xdb\x0f\x9f\x6d\xdf\xa8\x90\xe3\x73\x9d\x5a\xeb\x79\xc7\xe8\x0f\x0d\xd9\x8b\x1d\xbf\xef\xd6\x97\xf6\xd5\xa8\x87\xe3\xd4\x6a\x5b\xe7\xfc\x7b\xfb\xb6\xf9\x9c\x71\xa0\xf7\x08\x1d\xee\x6c\xa0\x2f\x01\xa9\x53\xcf\x3b\xeb\xdc\xf2\x1e\xcd\xef\xc5\xcf\x41\x9f\x05\x70\xb7\x76\x78\x1e\xb8\x3d\xfa\xe2\x59\x00\xf7\x6b\x90\x67\x81\xdc\xa9\x53\x9e\x05\x6d\xbf\x96\x79\x16\xc8\x5d\x7a\xe7\x59\xc0\x76\x69\xa2\xe7\x01\xdb\xa9\x9b\x9e\x05\x6e\x8f\xb6\x7a\x26\xbc\x6e\xfd\xf5\x3c\x60\x3b\x34\xda\xf3\x80\xed\xd1\x71\xcf\x02\xb8\x5b\xeb\x3d\x0b\xdc\x0e\x3d\xf8\x2c\x58\x7b\x34\xe3\x13\xe0\x1d\xa3\x2b\x9f\x01\x6e\xa7\xf6\x7c\x06\xac\x3d\xfa\xf4\x39\xd0\x8e\xd1\xb0\xcf\x80\xbb\x47\xe7\x3e\x1d\xda\x3e\x2d\x7c\x47\x1c\x8e\x83\x4c\x7c\x77\xbd\xdd\xec\xe6\x70\xcc\x8f\x23\x74\x8c\xa3\x81\x9c\x53\xb3\x53\x87\x38\x2a\x54\xc9\x1e\x9d\xe1\xfc\x50\x27\xa7\x00\xd8\xad\x13\x1c\x57\x7d\x8f\x0e\x70\x14\x80\xb3\xd0\xe5\x48\xbf\xd1\x51\xb5\xf7\xcb\xf4\xa3\x40\xec\x92\xe1\x47\x55\xde\x25\xb3\x8f\xab\xfc\x0c\xa2\xd9\x2f\x93\x8f\xac\xdf\x2d\x83\x8f\xab\xbc\x43\xe6\x1e\x57\x79\x8f\x8c\x3d\x0a\xc0\x6e\x99\x7a\x54\xf5\x1d\x32\xf4\xa8\xba\x7b\x64\xe6\x9e\xfa\xc7\xc8\xc8\x23\xaa\xef\x94\x89\x47\xd4\xdd\x23\x03\x8f\xa9\x7d\x8c\xcc\x3b\x02\xce\x1e\x19\x77\xb8\xf6\x0e\x99\xb6\x19\x78\x7b\x9d\xb7\x0a\x17\x7e\x70\xfb\x77\x33\x44\x2c\x5c\x17\xec\x1e\x1a\xff\xb4\x0e\x0d\xd9\xca\x1f\x4c\xea\xd5\xbf\x1d\xf9\x55\x59\xcc\xc6\x7b\x0a\x6c\x36\xbe\x71\xf1\x47\x1d\xfe\x79\xd3\xcf\xb1\x55\xea\xf3\x68\xbe\x98\x1f\x2c\xb6\x0c\xf0\x7c\xa8\xdc\x72\x66\xb6\xca\xcd\xca\x72\x51\x7e\x5e\xc8\x1c\xe9\xfd\xff\xab\xd7\xdc\xeb\xd7\xda\x8c\x16\xbe\xae\xb7\x75\xdb\xf3\x7a\xd8\x44\xd1\xac\xbf\x51\xea\xa6\x2c\x07\xab\x09\xd8\x5b\x72\x3d\xcc\x8d\x62\x34\xd1\x07\x67\x7b\x73\x83\xe0\x71\xf1\x44\xbb\x4b\x9d\x1d\x19\x6c\x9f\xde\x73\x26\xac\x67\x00\x68\x6b\x41\x67\x44\x39\xeb\x52\x86\x5e\x2a\x58\xda\x19\x70\x3a\x54\xa3\x73\xa0\x74\x69\x48\x67\xc0\xd9\xa1\x28\x9d\x01\x69\x5b\x5f\x3a\x03\xc8\x0e\xb5\xe9\x0c\x48\x5b\xda\xd3\x19\x30\xb6\x94\xa8\x73\x60\x6c\xeb\x52\x67\x40\xe9\x52\xa9\xce\x02\xb3\x78\xf6\xa0\x6c\x29\x58\xe7\xc0\xe8\xd2\xb3\xce\x80\xd3\xa1\x6e\x9d\x01\x65\x53\xeb\x3a\x03\x44\x97\xf2\x75\x34\x98\xbd\x3a\xd8\xc9\x50\xb6\x55\xb1\x93\x41\x74\x69\x64\xa7\x03\xd9\xab\x98\x9d\x0c\xae\x4b\x3f\x3b\x15\x48\xa7\x9a\xd6\xb8\x44\x04\x46\x39\x6a\xf6\x43\xf9\xee\xa4\xe0\x96\x03\xb8\x99\x54\x2d\xb9\x7d\x46\x48\xcc\xad\xa0\xe0\xe2\x94\xb0\xdf\x27\x5d\xef\xd1\xfd\x9e\x27\xc6\x24\x3f\x58\x61\x15\x6c\x6b\xa3\x62\xf3\x2a\x91\xf5\x88\x6d\xde\x24\xb2\x95\x43\xaa\xd3\x56\xe2\x1e\x4d\xa5\x7d\x8d\xc8\x56\xfa\xd6\x76\xab\x67\x8c\xdd\x4b\x85\x72\xdf\x35\x62\x9b\x67\xb9\xf2\x1a\xdb\x8a\x5d\x1c\x3a\xfa\x95\x8b\x67\xbe\x70\x5c\xd9\x25\x03\x38\xae\xf4\x92\x34\x8f\x39\x58\x76\xe8\x9a\x82\x5e\x7b\x57\xa2\x18\x9a\x46\x4e\xde\x05\x6c\x95\xd9\x6b\xb4\xac\x8a\xd9\xbd\xc5\x16\xc5\x72\xbf\x5b\x03\x69\xb6\xf6\xe7\xd5\x6f\x9c\x2f\x62\xaa\x6f\x73\x29\x66\xb3\xc9\xa7\xdd\xa1\x6c\x9b\x55\xde\x6d\xbe\xdd\xce\xd2\x55\x38\x11\x7c\x15\x8e\x07\x3e\x9e\x2c\xe4\xa0\xbc\x19\x8d\xcb\xc1\x89\xad\x34\x6a\x1e\x6e\xee\x85\x82\xf8\x1e\x19\xb7\x6f\x77\x50\xb3\x83\xf7\xec\xac\x0b\x2e\x77\x59\x1c\x32\xcc\x96\xe5\x5a\x8c\x7d\xa3\xd0\xc1\x23\x38\x59\x17\x9c\x8b\x8d\x0b\x07\xbb\x01\x6c\xec\x33\xe7\x03\x18\xb5\x1c\x5b\x83\xce\x7b\x8e\x27\x15\x51\x56\x33\xa5\x68\xd7\xdb\x25\xa7\x76\x46\x45\xde\x7f\x8d\xc4\x49\x92\xe9\xdc\x8b\x78\x3a\x18\xed\xf3\xef\xb6\x38\xb2\xee\x0e\x46\xbc\xff\x22\x8b\x33\x46\xe5\x8c\x5b\x85\x76\x0e\xcb\x79\xf7\x6b\x9c\x58\x79\xd7\xc0\x0c\x88\x9d\x36\x8d\xda\xaf\x7c\x19\xce\xd6\x69\x07\x4e\xdd\x38\xe7\xd0\x3c\x02\xc1\xd7\x40\x5c\xf6\xef\x67\xb3\x72\xbc\xb8\xa2\x1f\x1d\xd7\x5f\x74\xdf\x28\xda\xe5\xf8\xdc\xbd\x85\xe6\xa8\x18\xee\xf5\xee\xec\xce\x28\x2d\xab\x48\x1f\xab\x9d\xc9\xf5\x95\x77\xab\x11\xe0\xeb\x9e\x3e\xe5\xfb\x89\xad\x52\xdb\xaf\xf9\x9b\xf2\xba\x2c\x6f\xf4\x9b\x75\x00\xc6\x4b\x7e\xac\xca\x37\xd3\x62\x30\x20\xed\x44\x09\x3b\xfd\xfc\x7a\x10\xe4\xf5\x20\xc8\xeb\x41\x90\x7f\xdf\x83\x20\x39\x00\x38\xf3\xe9\x45\x71\x2d\xc7\xc5\x83\xb8\x5f\x3b\xba\xf9\xa4\x04\x29\x2f\xef\xa6\x59\xb9\x66\xf5\xab\x11\x32\xe0\x35\x80\xe8\x11\x01\x44\x5f\x8f\xda\xbc\x1e\xb5\x79\x3d\x6a\xf3\x7a\xd4\xe6\xe4\xaa\xaf\x47\x6d\x5e\x8f\xda\xbc\x1e\xb5\x79\xe6\x51\x9b\xd7\x30\xdd\xaf\x61\xba\x4f\x01\xb1\xc7\xd0\xff\x45\x0e\x40\x3d\x3b\xa4\xf8\xaf\xeb\xf0\xd4\x6b\x78\xf3\x83\xa5\x7f\x86\xf0\xe6\xd5\xeb\xc9\xb5\xd7\x48\xef\xa7\x57\xfb\x35\x47\x7a\xff\xf5\x1c\x3b\x7c\x0d\x44\xff\xaf\x17\x88\xfe\xf5\x2c\xe9\xeb\x59\xd2\xd7\xb3\xa4\xaf\x67\x49\x5f\xcf\x92\xbe\x9e\x25\x7d\x3d\x4b\xfa\x7a\x96\xb4\x0d\xed\xf5\x2c\xe9\xeb\x59\xd2\xd7\xb3\xa4\xaf\x67\x49\x5f\xcf\x92\x9e\x5e\xf7\xf5\x2c\xe9\xaf\xee\x2c\xe9\xf8\xdf\xf0\xe6\xb5\x97\x39\x41\xfb\x72\x37\xac\xed\x83\xf9\x7a\x0d\xdb\x89\xf5\xfe\x45\xae\x61\x3b\x84\x18\xfb\xaf\x6b\x6b\x1e\x50\xa8\x46\x7f\xe7\x4b\xf0\x7f\xff\x96\xb7\xe0\xfd\xb8\x3e\xff\xb1\x71\x22\xfa\xdf\xe2\x24\xf4\xeb\x45\x76\xaf\x17\xd9\xed\x1e\xbc\xe3\xce\xc9\xbf\x9e\x80\x7f\x3d\x01\xff\x7a\x02\xfe\x39\x30\x5e\x4f\xc0\xbf\x9e\x80\x7f\x3d\x01\x7f\x2e\x90\x7f\x91\x13\xf0\xeb\xec\x7c\x40\x91\x12\x46\x8b\xf2\xee\xc7\xa3\xce\xc8\x9f\x7c\xad\xec\xbf\xe1\xa9\x7a\xae\xbf\x73\x70\x4f\x3c\x98\xff\xef\x79\xeb\xee\xaf\x2d\x9c\xc0\xeb\xc5\xbf\xbf\xde\x8b\x7f\x7f\x96\x10\x0f\xfb\x68\xf8\x9c\x00\x11\xaf\xb7\x13\x77\x96\xfc\x86\x63\x5f\xbc\x5e\xaa\xfc\x2b\xbd\x54\xf9\xa5\x03\x95\x74\x87\x16\x79\xbd\xb9\x79\x55\x7e\x32\xa9\x16\xa3\x69\xad\x54\x0e\x06\xad\x20\x18\xaf\x31\x58\x7e\x75\x31\x58\xce\x8c\xad\xf2\xef\x75\x41\xf7\xcb\x86\x92\xa9\x57\x02\xea\x19\xfa\x71\x5f\x24\xa3\xd7\x4b\xc0\x5f\x2f\x01\x3f\x0f\xda\x9e\x4b\xc0\x7f\xd6\x58\x46\xaf\x37\x8c\xbf\xde\x30\x7e\xfc\x0d\xe3\xff\xe4\xc8\x57\xaf\x17\x9a\xbf\x5e\x68\xfe\x2f\x76\xa1\xf9\xb7\x1f\xc6\x6d\x8f\x73\xe5\xf9\x41\xe1\x5e\xfa\xbe\xf7\x7f\xa5\x38\x71\x07\x07\xfe\xdc\xb0\x73\xdb\x11\xe3\x06\xa3\xf9\xb4\x2a\xbe\x5c\x8e\xc6\x6c\x54\x5f\x57\x93\xfe\x4f\x6f\xfa\x13\x3e\x1d\x76\x79\x71\xd1\x15\x26\xad\x11\x52\x6d\x3e\x7a\x2c\x2f\xeb\x00\x4b\x6f\x3e\x8d\x06\x8b\xe1\x25\x82\x2e\xef\xde\x0c\x73\x04\xb6\xfc\xe3\xa1\x9c\xb1\xdf\x48\x16\xd5\xe8\x76\x7c\xc9\x9b\x66\x16\x93\xe9\x53\xc7\xd6\x15\x92\x5c\x72\x5e\x4e\x8b\x59\xb1\xa8\x4d\xa9\xaf\xd7\x93\xcf\xd4\xd0\x68\x7c\x7b\x79\x3d\x99\x0d\xca\x99\xbc\x9e\x7c\x5e\xb6\xa6\xa7\x9f\x57\x8d\xe9\xe9\xe7\x23\x61\xee\xd9\x3c\xd3\x59\xba\x1e\xac\xc6\xb8\x2c\xc7\x2d\x0f\x58\xdd\x19\xa5\x7e\xbb\xea\x0c\x3d\xd7\xdd\x9d\x15\x83\xd1\xfd\x9c\x93\x8e\xee\x5f\xdd\x62\x86\x70\x89\xd3\xcf\x62\x3e\xa9\x46\x03\xd1\x8c\xd2\xf7\x66\x32\x2d\xfa\x34\x33\xe0\x9e\xa0\xbc\xbb\x2e\x67\x72\x3a\xf9\xb4\x32\x0d\xe5\x62\x36\xba\xbd\xcd\x1b\x9e\x76\xe5\xc9\x1a\x5d\xf7\x95\xb9\xbc\x99\xf4\xef\xe7\x75\x57\x68\xe2\x1a\xdd\xf9\x4d\x51\x14\x6f\x56\xb3\xb2\x58\x4c\xee\x76\x64\xce\xf2\xa8\x74\xe6\x55\xe5\xcd\x66\xd6\x69\xf3\xf8\x75\x15\xdc\xb0\xb8\x9e\x4f\xaa\xfb\x45\xf9\x86\xba\x49\xb8\xc1\xb0\xe9\x21\x4f\x51\xbf\xa8\xfa\xbf\xa3\x89\x10\x52\xd8\xe9\xe7\xef\x96\xd3\xb5\x95\xbe\x3f\x3c\xe2\x0b\x84\xb3\x7b\xfe\x45\xf5\xb5\xe9\xfe\xb3\x86\x61\xd9\xb3\xa9\xf6\x99\xb7\xe7\xfe\x0a\x8e\x15\x9d\xb7\x63\xf8\xa5\x36\x6c\x77\xb5\x7e\xfc\xfe\xda\x63\xef\x6b\xf9\xa5\x36\x15\x74\xbd\xdd\xa1\x20\xe0\xc7\x39\xf9\xff\xc9\xbe\xbe\x17\x74\x30\x7d\x95\xb2\xa8\xca\x19\x33\xd6\x62\x7c\x5b\x95\x72\xfe\x70\x7b\x79\x3f\xab\x7e\xf7\x1f\x64\xc1\x5d\x8e\xee\x8a\xdb\xf2\xfb\xf9\xc3\xed\x1f\x3e\xdf\x55\x6f\xfa\xc3\x62\x36\x2f\x17\x6f\xff\xeb\x7f\xff\x45\xc6\xde\x1f\xe7\x0f\xb7\xe2\x61\x54\x7e\xfa\xf3\xe4\xf3\xdb\x0b\x25\x94\xd0\x56\x68\x7b\x21\x6e\x46\x55\xf5\xf6\x62\x3c\x19\x97\x17\xe2\xf3\x5d\x35\x9e\xbf\xbd\x18\x2e\x16\xd3\xcb\xef\xbf\xff\xf4\xe9\x13\x7c\x32\x30\x99\xdd\x7e\xaf\x95\x52\x04\xf8\xe2\xdd\x1f\x79\x2f\x0e\x55\x92\xb3\xfb\xaa\x7c\x7b\x51\x3e\x94\xe3\xc9\x60\x70\x21\xfa\xd5\x68\xba\x99\x36\x78\x7b\xf1\x03\x26\x70\x06\x85\xc6\x3e\x82\xb3\xd4\x30\x38\x65\x24\x82\xf7\x49\x20\x04\x83\xd2\x80\x52\xfa\x03\x1a\xfa\x21\x2c\xa4\xd4\x97\x10\x82\x44\x30\x46\x6a\xf0\x09\xf3\xa3\x01\xeb\xb5\x50\x1f\x34\x04\x13\x05\x06\x48\x29\x5e\x21\x24\xef\x05\x26\x30\x46\x68\x48\x3a\x0a\x4d\x30\xac\xa7\x87\x21\x3a\x50\xde\x3c\xfe\x80\x46\x60\x1c\x4a\xfd\x20\xf5\x50\x3f\xe8\xc7\x3b\x25\x2d\xff\xb4\x43\xfd\x60\x1f\x97\xc3\xf0\x5b\x6d\x94\x52\x17\xdf\xbf\xfb\x23\xbd\xed\xbb\xff\xf8\xee\x8d\xfc\x54\x5e\xff\x34\x5a\x48\x8e\x81\xcb\x03\x7c\xf9\x50\xcc\x7e\xd7\x35\x13\xdf\xbd\x39\xa6\x50\x47\x68\xdc\xe7\x5f\xe3\x7d\x72\x3c\x91\x73\x43\x83\x1c\x13\xf4\x81\xd0\x94\xe8\x26\xcb\xec\x6f\x02\x47\x8d\x40\x33\x44\x0b\x18\x2a\x69\xc0\x45\x61\xc0\xa5\x0f\xe8\x04\xc6\xca\xcb\xfc\x0f\xc1\xa2\xa0\xaf\x0f\x18\x00\x83\x40\x7c\x6f\x1e\xf4\x59\xa8\xd3\x1e\x9d\x2e\xbc\xd9\x28\xf1\xb4\x77\x17\xcd\x72\x93\x7a\xf6\xe3\x14\x88\x5f\xea\x82\x72\x38\x1a\x94\x3f\x7e\x6d\xe8\x22\xcd\x46\xfa\x24\x57\x2a\x39\xad\x8a\xd1\xb8\x6e\xe5\x9c\x35\xb5\xaf\x3b\xdf\x73\xab\x81\xed\x17\xdd\xee\xc3\x4b\x84\x4d\x7e\x6e\xf8\xdb\x13\x94\xa3\xb3\xa2\x37\x1e\x73\xe6\xaa\x43\x3d\x5a\x16\x3f\x31\xb8\xd6\xe1\xf0\x53\xbf\x64\x98\x86\x67\x9e\x3f\x7b\xf6\x91\xd1\xbd\xed\xbf\xe8\x55\x7a\xbb\x8f\x74\xfc\xd3\x37\x52\xef\x7d\xe9\xee\xbd\x59\x27\x6e\xe9\xf8\x99\xd7\x83\xbf\xae\x58\xc7\xfc\xbf\xef\x8b\x59\x29\x99\xdb\x7f\x0b\xa2\xc6\x09\x92\x34\x7d\x04\xa4\x46\x05\x24\xa1\x85\x7e\x40\xdb\x57\x02\x01\x25\xfd\x96\x5a\xe8\xf7\xae\x2f\xb9\x8c\xd4\x12\x92\xd4\x52\x7f\x74\x7d\x45\x49\xf4\x8b\xca\x3c\xde\xa1\x02\x97\x04\xda\x0f\x24\x8d\x1c\x3f\x1b\x16\x52\x5a\x60\x10\x91\x1f\x39\x39\x70\x12\x97\xe6\xd4\x20\x96\xd9\x19\x82\x16\x4b\x00\x39\x35\x97\x37\x6b\x00\x18\xce\x91\x73\xdd\x33\xb4\x5b\x0a\x6c\x16\x3c\x43\x16\x3c\x37\x8c\xf7\x66\xfd\x13\x24\xc1\x39\x71\x61\x5f\x20\x6c\xe8\x89\x41\x3b\xeb\x96\x9e\x23\x42\xba\x75\xc4\x5f\x30\x78\xcb\xcf\x12\x4b\xe3\x8c\x28\x15\x2f\x71\x08\xfe\x45\xce\x44\x77\xf6\xfd\xd8\x9b\x5c\xff\xd9\xc7\x3c\x5e\x72\xf7\x7e\xe7\x8b\xef\xda\x04\x7c\xca\x4e\x42\x92\x37\x4c\x2a\xfd\xd1\xac\x5f\x7d\x43\xe2\x06\xb5\xd0\x57\x1e\x6c\x24\x31\x23\xea\x07\xd4\x73\x4b\x4f\xa8\x56\xff\x65\x9d\x20\x51\xfd\x15\x03\x38\xcd\xc5\x84\x7e\xbc\x93\x5a\xa0\xab\xa4\x93\x8e\xad\x1f\x99\x4d\x20\x25\xb2\xb9\x14\xc0\x25\x19\xd8\x5a\x4a\x22\x56\x32\x89\x74\x96\xa8\xe8\x1a\xdc\x2e\x49\xd1\x59\xee\xe9\xf0\x7d\x80\xcf\x3b\x11\x70\x7e\xd5\x17\x5f\x81\x7b\x91\x55\xa5\x15\x3a\xaf\x0c\xaf\x5f\x3d\x22\x27\x81\x1e\x30\x7c\xb0\x10\x8d\x40\x5d\x11\x1e\xea\x6c\x8f\x27\x81\x49\x68\x14\x81\x13\x6b\x0c\xad\xcb\x9f\x8f\x8c\x7b\xcd\xd6\x8d\x12\x4f\x3f\xcf\x9a\xe4\x4e\xcb\x7d\x58\x3e\xcc\x26\x63\x49\xea\xd1\xca\xa9\x74\xf4\xfd\x16\xdd\xc7\x6e\x37\xaf\xa7\x3e\xf9\x04\xcb\xcf\xbb\x2c\xfd\x22\xf7\x66\xed\x71\x55\x6c\x8e\x68\xe7\x9c\x6f\x0e\xfa\x81\x6b\xde\xcf\xdc\x03\xf3\x75\xdd\x56\x55\xde\x7c\x1b\x0e\x34\x74\x10\x94\x23\x92\x8b\xd1\x55\xd2\x82\x8b\xf4\x95\xc4\xea\x69\x4d\x9a\xd2\x8b\xfc\x6f\x95\x72\x26\x91\xb6\x86\x68\xcf\x8c\xad\x8a\x3c\x1d\x77\xa3\x53\x63\x02\xbe\x1d\x17\x66\x04\x9d\x9c\x08\x34\x0d\x15\x0d\xba\xe0\x41\x5f\x3d\x89\x95\xfb\x52\x6c\x39\x34\x9f\x33\xfc\xfb\xbc\x98\xdb\x65\xf6\xf2\xa9\xed\x4b\x7b\x0e\x04\x08\x38\xfb\x32\xdb\x33\xea\xfc\xfc\x37\x11\x1e\x07\xa4\x81\x9b\xf7\xd3\x6f\x02\x31\x03\xa3\x99\xff\x80\x5a\x60\x96\xd9\x9e\xf1\xd1\x0b\x8c\xa4\x44\xba\x54\x65\x84\x14\xfe\x43\x5d\xf6\x39\x08\x99\x47\x65\x0f\x36\xd6\x05\x9e\x0e\xde\x20\x58\xc1\x4d\x31\xaa\xf8\xb2\xb5\xc1\x82\xc6\xbd\x9a\xdc\x0f\x64\x7f\x36\x99\xcf\x9f\x37\xf0\x46\x68\x75\xc2\x60\xd7\x6a\x3c\x1a\x70\xd1\x57\x46\x9a\x0f\xe8\xc1\xa2\x65\x2d\xc8\x08\xfe\xc7\x6b\x15\x89\x52\x2b\x69\xe8\x9f\x30\x1f\x02\x95\x17\x18\xa9\x8a\xd4\x10\x1c\x7f\x31\xc5\x5b\x26\x7e\x2b\x38\x81\xbe\x1e\x7f\x40\x03\x49\x39\x88\xce\xf7\x35\x04\xe5\xc1\xa6\xcc\x39\xa8\x80\xb3\x56\x58\x88\xe8\x85\x03\x6f\x2b\xd0\xc6\x82\xf2\x54\xd2\x7a\x08\xce\x0a\x03\x31\x32\xb8\x24\x0c\x38\xe1\x40\x19\x2f\xc1\x5a\xae\x9c\xb4\xd4\xa0\xa2\x11\x16\x4c\x40\xe9\x20\x06\x9f\x9f\x1f\xa4\xee\x3b\x50\xbc\x2c\x68\x21\xfa\x28\x1d\x41\xd4\x46\x7a\x40\xa7\x41\x5b\xaa\xaa\x79\x2d\x50\x07\x12\x24\x5e\x47\x69\x40\xfb\x20\x2d\xa4\xe4\x24\x42\x88\x49\xe6\xd5\xc1\xe0\x02\x38\x6f\x89\xe9\x05\x2d\x34\xa0\xa7\xf7\xf4\x3a\x49\x08\x3a\x48\x0d\x5e\x39\x09\xc6\x3a\x69\xc0\x5a\x0d\xc6\x6b\x09\xd1\x78\x7a\x5d\x09\x4e\x07\xaa\x93\xac\x04\xad\xa9\xdf\x51\x1b\x89\xa0\x62\x82\x84\xd4\x50\x52\x28\x34\x28\xa4\xc1\x44\x32\x90\x20\xc5\x20\x01\x15\x82\x49\x4e\x82\x4a\xc4\x4e\x15\xd2\xcb\x20\x68\xd4\x60\x75\xe4\x15\x49\x4a\x25\x71\x47\x6f\x6d\x95\xa1\xa7\x07\xdd\x97\x16\x10\x83\x50\xd2\x81\x0f\x5a\x42\xf2\xd2\x83\xb5\x51\x6a\x88\xc1\x4a\xf0\x4e\x53\xf7\x11\xd0\x04\xea\xb1\x0b\x02\x21\x46\x2d\x1d\x20\x46\x49\x93\x42\xaf\x4f\x53\x81\x34\x26\x89\xf2\x4d\x42\x69\x69\x7c\x0a\x0b\x91\xc4\x6f\x4c\x42\x09\x85\x06\x3c\x8d\x53\x08\x57\x09\xb4\x26\xc5\x59\x7b\xa2\x47\xaf\x0c\x58\x83\x62\x35\xfd\xae\x49\x7c\xfe\x2f\xc1\x47\x7d\xd1\xa4\xf7\xf1\x64\xfc\x58\xce\x26\x4d\x9a\xdc\xa5\xa5\xb6\xe9\x85\x99\xff\xae\xd0\x60\x44\x5e\x94\x99\x79\xe1\x37\xc1\xd7\xd0\x40\xd4\xc2\x5c\xa1\x01\x4b\x13\x43\xf4\x08\x46\xa0\x40\x14\xd8\x97\x08\x46\x28\xa9\xc1\x42\xb4\x34\xa3\x5a\xe8\xf7\x76\xe5\xd3\x15\xd9\x8b\xfb\x80\x3e\xfb\x7d\xb3\x1b\x58\xe8\x86\x6b\xb8\x76\x05\x3f\xc8\x04\xca\x48\x48\x6e\xe5\x01\xae\x1d\xc2\x52\x0f\x09\x85\xe2\x23\xd9\x46\xe6\xbd\x7f\xd0\x43\xf3\x20\xc9\x62\x37\xc2\x0f\xdd\x83\xd4\x94\xf6\xf8\x83\x17\xe9\x41\x0f\xfd\xc7\xf4\xde\x3f\xde\x39\xe9\xfb\xe0\x1c\xa1\xa8\x00\xeb\xa8\xbb\x73\xc9\x0f\x12\xe9\x43\xcf\x92\x9e\xf9\x2f\xa5\x3c\xfe\x60\x85\xc6\x8f\x6e\xa8\x1f\x10\x94\x0a\x43\x54\xfc\xc3\x41\x4a\x7a\xa8\x41\x29\xf3\x11\xc3\x7b\x8c\x0f\xf6\xbd\x7d\xbc\x43\x84\x94\xa4\x79\x90\xe6\xbd\xa6\xee\x0c\x65\x00\x85\x0f\xc4\xb5\xb4\x40\x5b\x19\x48\x49\x9c\xb5\xe2\xbe\x81\x20\x5d\x2c\x7e\xa3\xc4\xd3\x09\xee\xdb\x9f\x21\x06\xf7\x0b\x84\x00\x7d\xb9\xc0\x32\x9d\x90\xbe\xca\x9c\xf4\x6d\x10\x9c\x16\x18\x21\xb8\x2b\x32\x36\x74\x48\xf9\xd7\xf2\xbb\x9d\xa6\xdf\x6b\xbc\xd2\xa4\x4b\x40\x0a\xca\xaf\xfe\x6a\x5e\x1d\xd1\x78\x15\x40\xe9\x64\x09\xb3\x85\x59\xe5\x1a\x81\xfa\xca\x88\x65\xde\xf2\x2f\x25\x0b\xf3\xd1\x81\x76\x57\x11\x74\xd0\x2a\x0a\xfa\x91\xbf\x5a\x29\xa8\xaf\xf2\xdf\xba\x3b\xcb\xcc\x65\xb7\xf2\xc3\xdf\x7e\xd0\x0a\x82\x33\x5a\x24\x88\x29\xa2\xfd\x80\x11\x9c\x77\x02\x15\x58\x8d\xe1\x0a\x23\xd8\xa8\x79\xcd\x46\x05\x47\x42\x1c\x4c\xd0\x41\x24\x08\x26\x25\x43\xbf\xb5\x89\xf4\xdb\xa2\x8f\xf6\x83\x56\x60\x30\xa0\x88\xe0\x9c\x4d\xe1\x4a\x2b\xb0\xc9\xd3\xef\x14\x7d\xf0\x42\x2b\xf0\x56\x3b\x2a\x6f\x9c\x43\xb1\xd1\xfc\xdf\x7e\xc0\x04\x3e\xd8\x24\x02\x89\x11\xa5\x3f\x60\x20\x69\xea\x45\x04\x1b\xac\x35\x57\x18\x48\xa6\x12\x40\x0c\xda\x38\x81\x01\x8c\x37\x34\x54\x31\x3a\xcf\x9b\x71\xd0\x18\x2f\x02\x78\x0c\x0a\xe9\x7d\xa2\x35\x51\x90\x18\xb7\xc9\x5f\x61\x02\xb4\xc9\x09\x0f\x0e\x75\x56\x55\x74\xf0\xc2\x43\x4c\x96\x04\x64\xbb\xf9\xbf\xfd\x80\x01\xa2\x75\x28\x1c\xa0\xf3\xda\x92\xc6\x63\xa2\xa1\xf2\xde\xdb\x70\x85\x1e\x10\xad\x15\x1e\xbc\xf1\x34\xeb\x0e\xa2\x0e\x41\x78\x02\x9b\x22\xaf\x5a\x69\x47\xf0\xb5\xd5\x36\x50\xf5\xa0\x58\xff\xd0\x0e\xf9\x6d\x50\x65\xc3\x28\x68\xcb\x6f\x63\xb3\x4e\x12\x1d\xa5\x6f\xb4\xfe\x37\x32\x6f\x2d\x25\x90\x14\xd5\x29\x7e\x20\xb5\x35\x1a\x2d\x1c\x04\x8f\xc6\x5f\x21\x89\x5c\x45\x15\xbc\xe6\xbd\x49\x06\x12\x01\x76\xe0\x30\xc4\xc0\xba\x5b\x88\x56\x38\x1a\x7f\x15\xa8\x3e\x2a\x24\x5d\x49\x5b\x1f\x0d\xd5\x77\xde\x3a\x61\xc0\xb8\xe0\x78\xd5\x4d\xa1\x31\xa4\x4b\x29\x93\xb4\xd8\x68\x9f\x3b\xa4\xbc\x4a\xa4\x3f\x2b\xa4\x17\xcc\xaa\x1d\xe9\x34\xf6\x63\x04\xed\xde\x23\x82\x76\x1f\x39\xfd\x23\x1a\x40\xe3\x3f\x20\x52\x2b\x2c\xeb\x8d\x57\x86\x7b\x11\x13\xb7\xa6\x8d\x23\x1d\xb2\x05\xf4\x6f\xdb\x8a\xc0\x31\x6c\x7a\xc5\x50\x3a\x18\xf4\x3a\xef\x98\x6d\x50\xbb\xee\xe3\xda\xe5\x16\xa3\xf2\x79\xb7\xed\xae\x26\xaa\x97\xbc\x46\xe9\xc0\x75\x48\x47\x5c\x74\xb3\xdb\x1f\xb5\xf1\x2a\x5d\x23\xb9\xf1\xae\xf5\xe1\x14\xab\xcc\x9e\x63\xa7\xc4\xef\x47\x73\x32\x43\x07\xdf\x0a\xcb\x7f\xe6\xea\x85\x12\x18\x49\xd3\xb6\x5a\x28\x19\x79\x73\x97\x8c\x32\x0a\x52\xa4\xa2\x03\x4f\x76\x83\x23\xa3\xc8\x27\xb2\x28\x88\x53\xb0\x10\x31\xf8\xa7\x00\x49\x69\x91\xbf\x15\x2b\x4c\x04\x52\x3d\xde\x79\xe0\x3d\x8b\xf8\x21\x00\x93\x7c\xea\x2e\x6a\xfb\xb9\x59\xc1\xdb\xc9\xa2\xa0\x7f\xa4\xec\x45\x27\xc1\x33\x6d\x93\x55\xe1\x49\x49\x3f\x6b\xcd\xa4\x39\x93\x5d\x18\xd2\xcc\x7e\x3a\xed\x92\xf2\xb6\x67\x73\x15\x5f\xf4\xdd\x9e\x73\x0f\xdb\x41\x48\x09\xd9\x28\xf1\x97\x42\x34\x46\xa0\x28\x10\x87\xfa\x21\x81\xeb\x2b\x01\x21\x7a\x09\x81\x4c\x67\xa0\xb1\xa7\x79\x77\x43\x89\xb6\x2f\x29\x8b\x91\xc2\x71\x01\x59\x17\x78\x90\x18\xae\x0c\x19\xb6\x48\x46\x2e\x7d\x6b\x12\x1b\x42\xbf\x47\xf3\xa0\xdf\xbb\x07\xf4\x43\x34\x0f\x32\x3d\xfe\x10\x04\xc6\x61\x22\xb5\x3b\xe4\x1d\xa6\x66\xcf\x2f\xfb\x91\x54\x74\xfd\x3e\x3c\xde\x21\x59\x80\xee\x23\x0e\xfd\x83\x1f\x52\xa3\x1f\x0d\x58\x9d\x3e\x60\xe4\x15\x0d\x49\x6c\x9f\x4c\x56\xf7\xfe\xbc\xe5\x8c\xe5\x24\x74\xe1\xc8\x32\xeb\x69\xc7\xe9\xde\x5d\xac\xb6\xfc\x3c\x5a\x1c\x42\xac\xae\xfb\xec\x77\x73\xbc\x15\xc4\xed\x5e\xae\x1b\x3b\x56\x9f\x7f\xc1\x7b\x9c\xce\xbf\xbd\xe1\xd9\x21\x44\xdb\x00\xbe\x4a\x79\x33\xfa\xa6\x96\x9e\xad\xb0\x95\x15\xf6\x01\xf5\x7b\xff\xd1\x0e\xe3\xe3\x1d\x29\xe2\x1f\x03\x2f\x26\xbf\xf7\x64\x0c\x6b\x97\xad\xe1\xe0\x9a\xe6\xb0\x76\xec\x97\xca\x06\xb1\xee\xe7\x62\x64\x11\x53\x2a\x5b\xb8\x56\xea\xf7\x91\xac\xcb\x58\x13\xd7\xae\x5f\x3f\x44\x11\x87\xf6\xa3\x7f\x1f\xcf\xdb\xab\xdb\x1a\xf2\x0e\xdc\x6c\xe7\x9f\xb1\x63\x69\x3b\xd0\xe6\xa9\x7b\x96\x9e\x75\x9b\xf5\x0b\xdf\xc6\x74\xf2\xc5\x11\x2f\x16\x6a\xb4\x03\xca\x59\xf1\x0a\xf7\x1d\x40\x27\x12\xe4\x04\x39\xb9\x5f\xf0\x79\xc7\x5f\x52\xb6\x69\x25\xfc\x50\xc6\x4a\x6a\xd9\x70\x2d\x21\xa4\x04\x89\xff\x08\xfd\x81\x0c\xce\x4d\x0f\x93\xdf\xf0\x30\x7d\x8c\x1b\x6e\x25\xd6\x9a\xf4\x7b\xfb\x31\x0e\xd1\x3f\xa0\x3a\x8b\x6e\xb6\xc6\xa9\x8b\x78\xb6\x0b\x3d\x75\x45\x8b\xf9\x2a\xe5\x6d\xb1\x28\x3f\x7d\x23\x8e\x0a\x8d\xa0\xc8\x8c\x4a\xa0\x22\x99\xe2\x81\x2c\x2a\x93\x4f\xa9\x68\xcc\xfe\x04\x50\x64\xee\x91\x66\xaa\x3c\x69\xa3\x1e\x8c\xf2\x64\xdf\xb9\x28\x03\x38\x13\xc9\x94\x8e\x76\xa8\x01\x11\xfb\x60\xd9\x05\x6e\x51\x0b\x04\x15\xf8\x54\x0c\xbb\xf2\xa3\xf2\x92\x2a\x69\x48\x29\x1f\x98\x11\x9a\x2c\x6d\xa9\x41\x69\x4d\xf0\x74\xfd\x88\x60\x83\xe6\xd3\x37\x5e\x5b\xf0\x29\x67\xb2\x47\x9b\x73\x15\x29\x45\x26\xb2\x8f\x59\x05\xb6\x44\xb5\xd0\x60\x2c\x59\xad\x0e\x1c\x03\xd6\x40\x46\xb3\xf6\x0e\x92\xf1\xc2\x41\x4c\x11\x14\x15\x95\xc4\xb3\x3d\x29\xb6\x4a\x83\x77\xef\x1d\x04\xeb\x8b\xfc\x2b\xeb\xc4\xc8\x79\x12\xbc\xeb\x83\xe2\xbe\xa2\x27\x50\xd4\x3f\x17\x23\x38\x8b\x34\x18\x21\xbc\x37\xe0\xad\x2e\xac\x05\x24\xdd\x38\xff\x51\x42\x29\x09\xce\xa3\xb0\x10\xb4\xef\x4b\x1a\x05\x42\x6b\x95\xd8\xb5\x0a\x0a\x05\x42\x32\xfc\x34\xc4\xbc\x3a\x81\x34\x76\xfc\xca\x4a\x59\xc9\xfe\x7b\x2a\xc3\x23\x82\x8f\x77\x32\x02\x3a\x2d\x49\x81\x77\xef\xcd\x47\x44\x08\x38\x4c\x10\x5d\xf8\x40\xdf\x49\x44\x08\xca\x54\x08\x18\xa9\xb7\x51\x38\x50\xec\xf4\x51\xda\x4a\xfe\xce\x29\x9c\x89\xf9\x5b\xd0\x44\x44\x3e\xd0\xd4\x5a\xc5\xc2\xbf\x68\xd4\xf6\x28\xca\x69\x60\x7a\x07\xc9\x34\x73\x4f\x71\x6f\xbe\xec\x15\x7e\xcf\xba\x5b\xe8\x25\xa2\x53\xb7\x61\x10\x7f\x18\x11\x8c\xbb\xbb\xd1\xb7\xb1\x5a\xcf\xbe\x70\x48\x01\x8b\xbc\x34\x40\x5f\x6c\x38\xf2\x52\x41\xe2\xef\xf8\xa7\x8d\x3c\x32\x2a\x13\x18\xb4\x9b\x95\xf8\x31\xe5\xef\xae\x4a\xdc\xd4\xe3\x9d\x85\xe4\x0d\xaf\x3a\xd9\x2b\x76\xa8\x59\x11\xc1\x5b\xcf\xec\xa9\xde\x25\x1e\xe6\xd2\x72\x0e\x52\x8e\xe4\x2a\xc2\x10\x51\xbc\x37\x0f\x1a\x5c\xd0\x43\x0b\xca\x84\xab\x00\x1e\xbd\x40\x07\xde\x8a\x04\x1e\x05\x06\xd0\xd1\xe7\xcd\xe7\xf4\x34\x67\x38\x92\xe1\x88\xdc\x74\x86\xa3\xf1\x41\x66\x48\x92\x41\x9d\x23\x5e\xda\xd3\xdd\x45\x27\xed\x02\xa7\x90\xca\x4b\x5f\x67\xfa\xcc\x9b\xd0\x5e\x26\xee\xfe\x26\x94\xaf\x72\xb9\x3b\xfc\x97\x54\x61\x12\x38\x11\xc1\x55\xec\xf9\x76\x6c\xe7\xfa\xa1\xe5\x55\x23\x57\x11\x92\x90\xad\xfd\x81\x4a\x39\xe1\x05\xe2\x7b\xfd\xa0\x87\xae\xd2\xe0\xa4\x05\x77\x0e\xe2\xac\x5f\xba\x03\x69\x1a\x99\x67\x68\xf2\xb9\xf6\x73\x34\xf9\x6d\x08\x6b\xb7\x9e\xdd\xef\xd6\x1b\x96\xd5\x74\xb9\x2f\xf6\x97\x56\x4e\x4f\x62\x84\x28\x30\x0e\xf9\x5c\xae\xe4\x83\xb9\x28\xd1\xbf\x90\xcb\x0f\x97\x2e\xbf\x24\xa3\x8c\xf3\xfc\x20\x22\x7d\xf8\x80\xa7\xa0\x1f\xf9\x81\xd2\xc8\x72\x44\xdb\x97\x1a\x34\xd5\x24\x16\x18\x92\xb4\xc2\x0e\x75\xfb\xe4\xcd\x7c\x79\x6c\xa7\x4f\x4a\x34\xa9\x21\xc1\x49\x23\x1c\x97\xd3\x64\xac\x1a\xc6\x5d\x23\xd9\xba\x05\x4d\xca\x01\x81\xa2\x7f\xe7\x21\x6d\xe7\xe4\x76\x62\x70\x77\xc9\x53\xf8\xdf\x4b\xde\xe3\xfa\x9c\xfb\xec\x5e\xe0\x7e\x83\x36\x08\x22\x93\xd1\x7c\x31\x99\x7d\x1b\x66\x04\x1a\x61\x8a\x24\x58\xf9\x15\x4a\x26\x91\xde\x63\x65\x20\x26\x92\xc7\x09\x54\x00\xb4\x1f\x12\x59\x6a\xbe\xaf\x48\xb6\x92\xd6\x8e\x46\x06\x11\x64\x98\xe7\x1f\x82\x7e\xe4\x07\x4a\x27\x23\x31\x19\x41\xa5\x7d\x94\x8c\x93\x90\x2c\xe9\xc3\x7e\xbd\xa1\x5a\xff\x29\x42\x72\xa4\x1b\x24\xde\x98\xc3\x6a\x84\x11\x1a\xd7\x9d\x21\x3b\x33\x3e\xde\x49\x14\xee\xc1\x55\x16\x74\xe4\x4d\x42\x10\xb4\x44\x42\x77\x62\xe4\x1a\x54\xfc\x18\xdf\xe3\x59\x6e\x97\xc6\x3c\x75\x61\x79\x23\xb7\xc3\x01\x79\x39\xe4\x4d\x5b\xed\x58\xbf\x1b\x0e\xee\xfd\x47\x9c\xd6\x4b\x3e\x8d\xf3\x22\x47\xdd\x80\xd5\x19\xa8\x7e\x67\xd0\xe1\xe7\x06\x6c\xfc\x2a\x25\xb5\xf4\x4d\x9e\x4a\xe9\x3b\x70\x79\xaf\x94\x12\xc4\xcb\x7d\xe6\xeb\x73\xb9\xfc\x21\xf9\xf7\x5f\x59\x9f\x74\xd6\x64\xfe\xee\x39\x73\xc9\xea\x09\x5b\x13\xaf\x92\xa3\x2d\x10\x1c\xaf\xe4\x38\xde\xde\x42\x38\x0a\xd6\x1a\x09\x29\xba\xbe\x24\x8d\x54\x82\x0e\x64\x81\x4a\xaa\x45\xe9\xbc\x45\xcd\x0c\x19\xf3\x53\x5f\x82\x89\x64\xd0\x45\x09\x3e\x3a\xc0\xe8\xb8\x2e\x15\x29\x10\xac\xe3\x0d\xcb\xce\x37\x60\x53\xf6\x90\x2a\xc7\x8f\xa4\x4f\xf7\x41\xe9\x04\x26\x7a\x40\x17\x21\xa0\xad\xcb\x78\x6a\x1c\x74\x74\xe0\x57\x29\xd4\x6e\x6e\x96\x5a\x15\x4a\x50\x9b\x92\x2b\x26\x7a\xa0\x72\xcb\x2e\xe7\xee\xfa\xe5\xdb\xf8\xf7\x68\xc0\x9a\x8f\xa8\x1f\xe8\xbd\x1f\x49\x86\x06\x08\xd4\x49\x63\x69\x00\xe8\x3b\x1b\x13\x60\x25\xf6\xa9\xaf\x80\xbc\x0b\xce\x1a\x4a\x11\xa0\x03\x92\xc5\x1e\x79\x2c\xb8\xdc\x9c\x33\x51\x47\xde\x17\xd4\x07\xed\x02\x95\x02\x4b\xed\xf2\x1e\x21\xd4\x09\x82\xd5\x5c\x81\xc6\xc3\x90\xe0\xa3\xef\xdc\x14\x55\xd3\xb1\x4f\xd9\x8a\x5b\xa2\x97\x09\xbc\xa1\x48\xc7\x73\x58\x40\x17\x62\x77\xf0\x82\xce\x62\x7b\x36\x77\x9e\x72\x7f\xe4\x89\xb7\x0a\x76\x17\x3f\xf9\x9e\x95\x5d\x31\x35\x77\xad\xc5\x34\x47\xa0\x2d\xf3\xa7\xb3\xc9\xed\xac\x9c\xe7\x58\x9e\x0b\xe2\x69\xe3\x62\x71\x4a\x74\xc3\x5d\x4d\x52\xa1\xd1\xf8\x76\x9f\xa6\x4c\x5c\xaa\x79\xbc\xa1\x1d\x8e\xba\x23\xbe\xf4\xf5\x68\xcc\x30\x6b\xb7\xb0\x18\x2c\x38\x68\xf5\x1f\x06\x47\xd4\x25\x26\x76\x4c\x9d\x23\xb4\x9f\x7d\x37\x5f\x9f\xa5\x02\x3d\xfb\x2a\xed\x97\xba\xc1\xad\x13\xce\x19\xb7\xf3\xfc\x5c\xd1\xcb\x77\x46\x77\xdd\xbd\x68\xb8\x0b\xf5\xf7\xb3\x89\x4e\xc5\x78\xcf\x3e\x94\xf3\x22\xf1\x1c\xde\x58\xb2\xbd\x43\xe4\xd0\xe8\xbd\x5c\xcc\xfb\xaf\x52\x56\xc5\x97\x72\xf6\xcb\x2d\xcf\x9f\xa6\x2f\x40\xe4\x68\x3c\xe0\x4d\xa8\xf2\x9e\x6b\xc5\x22\x1b\x7d\x02\x45\xc2\x86\x77\xa4\x5b\x09\x0e\xe9\xef\x7b\xd4\x80\xca\x54\x12\x54\x92\xa0\x54\x28\x10\x02\x5b\x74\xb6\x76\x46\x1b\xa4\x0c\x67\xa9\x88\x47\x09\x94\x86\xde\x50\x1a\x49\x31\x54\x51\x32\x60\x03\xd1\xe4\x68\x55\x41\x7a\xf0\xbc\x8b\x3e\xa9\xc0\xde\x09\x3e\x56\x63\x74\x2c\xc0\x6a\x92\xd2\xba\xf6\x53\x63\xb4\x80\x36\x81\xd1\xfc\xa9\x53\x95\xb5\xa0\x9d\x27\xa1\xdd\x07\x85\x08\xca\x6a\x50\x06\x54\x04\xe5\x1c\x20\x06\x50\xca\x83\xa2\xdf\xf4\x17\x23\x28\x34\xa0\xb4\xaf\xe8\x0d\xe8\xd3\xcf\xa9\x7a\x59\x37\x82\xf2\x1e\x94\xf3\xa0\xb4\xab\xd3\x69\x3c\x10\x54\x20\xa8\x54\x89\x3a\x05\x4a\x39\x50\xca\xd6\x70\x1c\x09\x7a\x50\x2e\x89\x04\x5e\x27\x61\x41\x2b\x27\x12\xf0\x16\x38\x52\x0b\x68\x78\xa9\x86\xce\x95\x0c\x8f\x20\x38\xe5\xe9\xc3\xaf\x03\x86\xf7\xa8\xe9\x0a\x94\xa6\x41\x53\xb1\xcf\xdb\x94\xa9\xa6\xd7\xf4\xd7\xe5\xa1\x37\x55\xe2\xb1\xb6\x34\x8e\xd4\x7f\x27\xf3\xeb\x71\x35\x4c\xf9\xa4\x80\xd2\xbe\x00\xeb\x91\x3e\x19\x3e\x6a\x52\x87\xd0\xf5\x09\xb6\xcc\xe3\xc5\x70\xe9\xfd\xa9\x06\x77\x2a\x37\xa8\x18\x82\xa1\xfe\x50\x86\x2d\xc0\xf8\x48\x9f\x0c\x4a\x91\xee\x83\x8e\xa6\xca\xd0\x67\x39\x1f\x48\x3d\x08\x1a\x8c\x35\xf4\x59\x26\x73\x2a\x2f\x31\x30\x5c\x44\xb9\x6a\x61\x59\xc9\x58\xb9\xec\x96\x5c\x76\xab\xae\xc9\xd8\x60\x79\xbf\xde\x12\x1b\xa8\x34\x2a\x86\x88\x5c\x31\xac\x80\x71\x2d\xfe\x69\x09\xa3\x6c\x48\x7c\xe4\x40\x4b\xcf\xba\x98\x01\x0c\x91\x94\x2d\x3e\x34\x40\xdf\x35\xf2\x6a\x04\xd4\x5d\xe7\x64\xce\x23\x2d\x8e\x1c\x12\x43\xa6\x17\xd6\x81\x0b\xa2\x1f\x2b\xf2\x77\x6e\xd4\x19\x9a\xdb\x30\xe4\xb5\x17\x26\x42\x9f\x27\x5e\xc2\x72\x88\x34\x0d\x85\x0e\x44\x8d\xf4\xe4\x09\x9e\xf3\x35\x71\x59\x9a\x79\x57\xf0\x06\x4d\xfe\x62\xb0\x44\x53\x96\x69\x2a\x31\x4d\x91\x96\x6d\x0c\x51\x94\xa1\x4f\x8b\xa2\x22\x18\x03\xc6\xb4\xe8\x29\x34\xe9\x09\x19\x2d\x42\xaa\x09\xca\x6f\x10\x54\x58\x12\x14\x91\x45\x4d\x0f\xae\xfe\x84\xfc\x69\x91\x57\xaa\xc9\x2b\xd4\xe4\xb5\x41\x5d\x2b\xba\x74\xfd\x4c\x50\xbe\x41\x4f\x7e\x45\x4f\x3e\xe3\xa8\xc9\xe4\x94\x49\x5e\xf9\x0d\x72\x42\xc3\xc3\x5e\x81\x32\x94\x8d\x05\x38\x4b\x26\xb5\xae\xb3\x19\x47\xfc\x26\x8d\xd9\x6d\x1a\xd3\x2b\x1a\x8b\x5b\x34\x16\x0a\xb0\x31\xd1\xa7\x45\x63\x76\x45\x63\xba\x46\xe6\xb4\x49\x63\xdb\x44\xe6\x88\xc8\xf8\x0c\x4d\x8b\xc8\xc0\x20\xd2\x67\x8b\xc6\x78\xe6\x76\xd2\x98\xde\x4b\x63\xdd\x44\x86\x9a\x17\x44\x5b\x44\x16\xba\x88\x2c\x6c\x12\x59\x6c\x10\x59\x5a\x13\x99\x67\xf7\x87\xd7\x2b\x09\x11\x00\x75\x97\xc3\xee\x1c\x22\x53\xbc\x40\xa3\xac\xeb\x2f\x5f\x84\xdf\xcd\xd4\xd4\xa1\x1c\x77\xd5\xfd\x09\x88\x77\x64\xd6\x81\x08\x21\x09\x4d\xfc\x04\xac\x5d\x51\x02\x41\xe9\xd7\x8c\xcf\xd5\x73\xc2\x0f\xf9\x24\x10\x20\x25\x78\x2b\x23\x44\x67\x84\x85\x18\x64\x02\x63\xa2\x70\x80\x16\x0b\xb2\xd9\x96\x76\xdb\x92\xb2\x5c\x00\x43\xff\x9b\x94\x15\x4c\x93\xb2\x5c\x96\x54\x2e\x53\x96\xb6\x35\x45\xd5\xac\xbc\xa6\xab\xb4\x24\x08\xbf\x14\x54\x36\x53\x12\x91\x0c\x51\xd2\x52\x4e\x2d\x29\xc9\x66\x4a\xf2\x85\xb3\x8e\xac\x4f\x14\xab\x07\xea\x09\x51\x10\x91\x90\xd3\xb1\xee\x07\x91\xac\xae\xff\x1a\xcc\x62\xc9\x46\x4d\x9f\x23\xc5\x92\xaf\x49\x66\x49\x33\x0e\xd0\x6c\x91\x8c\x5e\x52\x4c\x22\xa9\x64\xe9\xd3\xa4\x18\xad\xb7\xa4\xd2\x8a\x62\xf4\x1e\x92\xf9\x13\x58\xc3\x5b\xc0\x19\x98\xd6\xc2\x93\x2a\x51\x90\xc1\xbe\x34\xda\xd7\x34\xe3\xc1\xf8\x40\x9f\x26\xcd\x44\xec\xa2\x19\xbb\xa2\x19\xb7\xa2\x19\x53\xd3\x8c\xae\x6b\x12\x4b\x75\x81\x4f\x91\x35\x29\x06\xcd\x9a\x62\xe2\x92\x62\xf4\x8a\x60\x7c\x25\x13\xef\x87\xb4\xe0\xd4\x59\x07\x85\xd7\x5a\x66\x87\x56\xde\xc8\xdc\x38\x4d\xbf\xbe\x83\x7e\xdf\xa6\xd3\x8e\x9b\xea\x49\xb1\xe5\xd4\x5f\x74\xdb\xa9\x06\xab\x92\x70\x44\x45\x55\x84\x84\x4e\x18\x48\x2e\xf6\xf9\x74\xa3\xb2\xe0\x83\x07\x1f\x91\xfe\xf2\x2e\x06\x12\x86\x60\x49\x72\x6a\x24\xa4\xb0\x72\x9d\x55\x49\xc3\x1b\x19\x10\x4c\xc4\x07\x03\xc1\x87\xbe\x12\x4b\x79\x0a\x3a\x24\x9e\x4c\x30\xd9\x81\x14\x78\x3b\x86\x35\x16\xbc\x31\xd9\xe7\x13\x5d\x94\x60\x42\x00\x1d\xac\x84\xe8\x1c\x38\xa5\x25\x82\x49\xe0\x79\x89\x56\x05\x03\xc6\x93\x6a\x6b\xbd\x06\x17\xa2\x34\x90\x3c\x1f\x5a\xe0\x6d\xb2\x4a\x6a\x88\x89\x3a\x67\x38\x47\x4b\xce\x02\x47\x54\x82\x91\x60\x31\x0e\xf1\x79\x7e\x93\x24\x83\x05\x83\x7c\x94\x52\x82\x8b\x5e\x82\x53\xec\x81\xe2\x0e\xc4\x02\x3c\x29\xf3\x18\x97\x8e\x2a\xa4\xbe\x9a\xe8\x1e\x78\xe9\xdb\x56\x59\x9e\x24\xeb\x3e\x38\xe0\x83\x0d\x8e\xfd\x73\xe0\x08\x5e\xe4\xa3\x8e\xd6\x78\x6a\x57\x1b\xa1\xa9\x23\x05\xa9\x44\xc4\xc1\x51\x2f\x97\xbe\x89\x14\x05\x42\x42\x2d\xb2\x86\xb7\xd2\xf3\xa8\x49\x92\xef\x11\xcd\x90\xc4\x49\x9f\x75\x64\x5b\x8b\xe9\x98\xf9\x44\xb0\x59\x8d\x75\xc4\xae\x00\x89\xc6\x43\x00\x4c\x39\x0b\x9d\x07\x8c\x3e\x4b\x36\x1d\xc0\xa6\x00\x06\x8c\x03\xaf\x23\x38\x63\x20\xd1\xf7\x07\xc7\x27\x42\xb5\xa2\xee\x5b\xcf\xbe\x31\x62\x14\x9a\x0f\x77\xd2\x98\x05\x52\x90\x5c\x34\xe0\x14\x4f\x85\xe5\x14\x04\x13\xf8\xa9\x92\x60\x79\xf7\x4a\x0c\xfd\xcc\xa1\x21\x10\x41\x6b\xef\x21\x99\x28\x21\x92\xa9\x43\xcc\x40\x7b\xde\x87\x02\x8e\x71\x2c\x48\x88\xcc\x6f\xc9\xac\x71\x79\x7a\x8c\xd1\xb5\x3c\xb4\x29\x8f\x17\x0a\x5c\x72\x5b\x1a\x2f\xa3\x79\xe7\x58\xf0\x7d\x66\x0f\x08\x18\x0c\x38\xcd\x3b\x66\x2c\x42\xe2\xe3\xb8\xde\xc7\x4a\x22\x69\x8d\xd4\x44\xbc\xd2\x84\xb3\x02\x11\x74\x76\xd2\x2a\xe6\xda\xfc\x60\x2c\x7b\x1f\x75\xa0\x22\x92\xf0\x9a\xd0\x5a\x66\xb4\x66\xba\x90\x35\x5d\x68\xc2\x29\xd2\xd8\x1c\x0d\x07\x3d\x44\x42\x8e\x07\xe2\x4b\xf8\x78\x47\x08\x4d\x93\x18\xac\xab\xa4\xe3\xd5\x3e\x08\x36\xe5\x33\x85\xa0\x75\xa8\x22\x04\x47\x68\x1b\x63\xfc\x90\xfd\xc4\xae\x92\x9c\xc8\xcb\x25\xa4\xc9\x22\x24\x13\x3e\x20\x1f\x93\xaa\x20\x85\x00\x0e\x23\x6f\x8b\x48\x56\x58\x52\x65\x38\x72\x85\xe7\xfd\x44\xda\x15\xac\xb5\x89\xfc\x5d\xe3\x0c\x77\xea\x43\xe0\xed\x46\x06\x4c\xc0\x8a\x79\x2d\x58\x9d\x1e\x34\x90\x52\x67\x90\xc3\x1d\xaf\x10\x90\x44\x0a\xd9\x6d\x24\xf3\x42\x22\x15\x05\xb4\xb6\x60\x5c\x04\x4b\xcf\xd6\x92\xfa\x01\x1e\x0c\xab\xbe\xca\x25\x70\xa8\x21\x61\x00\x83\xbc\xe9\xca\x53\x3f\xe9\xe5\x1d\xd1\x26\xea\xb9\x06\x4f\xb4\x9f\x93\x0c\x99\xbc\x9a\x18\x8b\x64\x94\x8c\x79\xa2\x2d\xc3\x8a\x9c\x09\xda\x11\x85\x45\xd2\xc0\x3c\x19\x0f\x91\x9a\x27\xbc\x0a\x44\x87\xe0\x1b\xdd\x4d\xac\x27\x56\x3c\xec\x92\x68\xe1\xf1\x07\x0c\x44\x60\x5d\xfb\xd3\x41\x3b\xe1\xf9\xe0\x51\x10\xbe\x7a\xde\x2e\xf5\x15\xd3\xee\x12\x13\xab\xbc\xa7\xa3\xaf\xe8\x25\x39\x30\xb9\x9d\xc8\x5c\x64\x75\x52\xe6\x97\x13\x09\x09\xa2\xe2\xdd\x0e\x9e\x8f\xd7\xa5\x68\x84\x19\x4a\xc7\x01\x53\x10\xa2\x16\x8e\xb2\x86\x94\x10\x1e\x59\x63\x4c\x51\x98\xf7\x1e\x34\xda\x0f\x16\x4c\xf2\xb9\x32\x97\x70\x1f\x96\x05\x1e\x7f\x68\xe4\x15\x91\x91\x35\x2e\x51\x56\x29\x61\x21\x05\x6a\x56\x39\x53\x7f\xb3\xee\x41\xb4\x2c\x48\x99\x72\x1f\x12\x09\x0d\x0e\x26\x60\x21\x78\x49\xca\x61\x7c\xbc\x43\x07\x96\x8c\x13\x3e\x15\x66\x22\xe5\x23\xa3\xbf\x5b\x36\xb4\x05\xd0\x4b\x02\x68\xfb\xe0\xd8\x61\x42\xc4\x4c\xe2\x82\x50\x5d\x29\x23\xa9\x27\x9e\xac\x47\x65\x1e\xef\x24\x89\x48\x6f\x05\x91\x30\xa0\xd0\x58\xad\x1b\x97\x1b\x8f\x22\x77\xa9\x81\x54\xff\xf9\x67\x67\xdb\xdb\xe9\x76\x3a\xaa\xb7\x51\xe0\xbb\x27\xbe\x03\xea\xe0\x15\x87\x8d\x42\x3b\x2f\x38\x6c\x94\x69\x5f\x6f\xd8\xc8\xd8\x53\x67\xcf\xd5\x86\x54\x6a\xf3\x62\x43\x4a\x3b\xee\x5a\xc3\xdd\x01\x20\x3b\x02\x3f\x8a\xc1\x40\x94\x77\xad\x7b\xd9\x76\x7a\x37\xbb\x2e\x71\x3b\x7c\x64\xee\xa8\x4a\x0d\x77\x68\x35\xaa\xe3\x03\xac\x6f\x3f\x5c\xdf\x71\xd0\xb9\x54\xc3\xbb\x68\x96\xeb\x2f\xf7\xd5\xf2\xe2\xde\x9d\xc1\xfe\xba\x2e\x68\x3e\xfd\xfa\xdf\x97\xba\xc5\xf1\x59\x77\xe8\xbd\xec\xdd\x67\x2b\xbe\xf9\x69\xfe\x0b\x73\xcd\x93\x0c\xec\x00\x21\x1f\x80\x25\x8b\x06\x0c\xd9\x86\x11\x7c\x70\xa4\xb6\x91\x28\xd4\xac\xbf\x99\xac\x40\x79\x4b\x62\xce\x06\x48\x36\x48\x20\x05\x82\xd4\x55\xb2\x6e\xc9\x0a\xd7\xca\x41\x20\x1d\xda\x04\x7a\x26\xfd\x09\x8c\x27\xa9\x4a\x32\x3b\x9a\xac\xad\x21\x59\x58\x5a\x3b\xc0\xa0\x25\x25\xe7\x87\xc0\xbb\xb9\x39\xc8\x08\xa8\x44\x9a\x30\xe9\x33\x86\x35\x38\x56\xef\xd5\x72\x19\xda\x91\x96\x9e\xb5\x6f\xca\xf0\x86\x54\x3d\x8e\x3e\x92\x22\x29\x8b\x2c\xb3\xa9\x11\x97\xa8\x0a\xa9\x7a\x81\x74\x62\xe3\x6d\x01\x5e\x93\x9e\xb9\x5a\xe6\xc5\x44\xe2\x3c\x90\xb2\xa5\x83\xce\x9e\x39\xb2\x5b\x0d\x92\x3e\x98\xea\xd7\xd0\x9e\x6f\x5e\x00\x8c\x24\x42\xf2\x5f\x1b\x48\xf8\x43\x4c\x0e\x54\x24\x05\x84\xea\x6b\x17\xa9\x69\x62\xee\x80\x29\xd1\x50\x6a\x52\x82\x23\x9f\x1b\xe0\x5d\xd3\x6c\x32\xf0\x83\x46\xf3\x40\xba\x7e\x41\x1a\x0c\x6b\x31\xf5\x02\x79\x76\x08\x82\x0b\xfc\x59\xa6\x72\x57\xd1\x73\x1c\x1a\x1b\xeb\xef\x3a\x4f\x93\x4d\x81\x9a\x1d\x15\xf9\xab\xce\x30\x9c\xa1\xc8\x06\x40\x93\x6a\x1f\x23\x97\x66\xbf\x89\x65\x83\xd9\x14\xa4\x88\xf3\x21\x6a\xdd\xd8\x01\x60\xb3\xe7\x8c\xc6\x15\x29\xc5\x05\xb2\xfe\x25\x44\x43\x3a\xbd\x2e\x58\xfc\x00\x2e\x2b\xf8\x98\xea\x65\xf4\xc0\x5b\xe2\x83\x5a\xf5\xc2\x06\xde\x88\x40\x9d\xe0\x9d\xfc\xa4\xb1\x86\x44\x26\x75\x7e\x08\x6c\xd8\x83\x21\x95\x0e\x0d\x78\x4f\x08\xa7\x21\x91\x08\x8f\x34\xad\xe0\x82\x07\xa7\x59\xa7\xe4\xb5\x84\x8a\x33\x53\xec\x83\xd1\x96\xa6\x0d\x9c\x03\x8d\x89\x74\x6c\xf6\x0a\x10\x42\xb3\x5e\x4f\x6f\x4b\x7f\xac\x27\x79\x9b\x31\x88\x44\x28\xdb\x59\x96\x0f\xb2\x66\x6c\x24\xc4\x63\x20\x51\x42\xf2\x21\x3f\x68\xef\xf8\xd5\xb3\x75\xef\x25\x04\x9a\x7f\x15\x0b\x03\x3e\x1f\x3b\xc8\x7e\x48\xc2\x25\x46\x32\x6d\x58\xb3\xf5\xec\x04\x20\x74\x54\x3c\xec\xa4\xc4\xab\x60\x6a\x97\x42\x62\x07\x56\x2c\xc0\x04\x4f\x9f\xd5\x14\xb3\xdf\xa1\xcf\x04\xc0\xbf\x09\x77\xbc\xcf\x0f\x5a\xb9\x07\x30\x26\x5b\x5c\x9e\x7d\x98\xf4\x86\x64\x60\xf1\xee\x0b\xf6\x12\xb1\x77\x9b\x09\x91\x2c\x2c\x0c\xa4\xeb\x24\xb0\x86\xcb\x04\xaf\xe9\x85\x1e\x7f\x08\x10\x74\x24\x33\x23\xd1\x2c\x92\xca\xa3\x9b\xba\xba\x62\x2a\x4b\x43\xf6\x6f\x7c\xa4\xd1\x73\x7d\x36\xbf\x32\xea\x73\x48\x21\x94\xf5\x29\x5c\xa6\xac\x40\x64\x17\x24\xab\x32\x6c\xdb\x72\x78\x9d\xda\xcc\x35\x79\x0c\x83\x4a\x90\x0d\x35\x63\xa8\x97\xa4\x4f\x13\xed\x48\x0e\xa5\x83\x84\x93\xd1\x38\x9a\xd4\x82\xac\x2c\xfa\xac\xc6\x25\x3a\x42\x5f\x1e\x4d\x03\x8a\x1a\x21\x26\xc4\x40\xe8\x41\x1b\xfd\x40\x88\x90\xad\xfb\x9c\x44\x43\xc0\xcb\x33\x34\x34\xbc\x92\xe3\x52\x5e\x40\xc1\xec\xfc\x2b\x10\x88\xc1\x2d\x37\x66\x11\x10\x9a\x59\xdf\xaf\x9f\x92\x06\x66\x72\xde\x41\x40\xc7\x48\x32\xcf\x68\xa3\xa2\x87\xc0\x33\x4a\xa5\x5d\xe6\x03\x3e\x00\x47\x31\x0a\x09\x8c\x72\xdc\x30\x7d\x0c\x22\x59\x66\xec\xd9\x25\xe4\x7d\x20\x8e\x57\x44\x48\x89\x94\x40\xfa\xae\xdf\x31\x78\x76\xf5\x7b\xe1\xc8\xb4\xa9\xbf\x97\x79\xec\x58\x72\x44\x40\x3e\x6a\x3e\xab\x44\xb8\x8e\xbc\x6b\xcc\x6b\x03\x8e\x4d\x53\x65\x89\x84\xf2\x51\x92\x58\x9f\x1b\x11\x48\x7c\x8f\x7a\x48\x2c\xc9\x3b\x48\xce\x82\x4d\xcc\xaf\x90\x89\xc7\x60\x24\xe6\x4b\x44\x2a\x72\x0a\x91\x6b\x60\xbf\x20\x32\x87\x30\x4c\xcf\xcc\xf2\x13\x0d\x2f\x33\x30\xc3\xc3\x1b\x62\x7e\xcb\xc4\x2b\x1c\x4c\x88\x48\x56\x34\xd9\x4e\x26\xf1\xdb\xd7\xfe\x4b\x34\x84\x8b\x35\x5b\x4c\xa6\xd6\x7f\xb3\x01\x4e\x42\x26\xe4\x75\x0f\xb0\x98\x39\x54\x9f\x46\x57\x72\x6d\x9e\x67\xaa\x9f\x1f\x12\x0b\x0a\x65\x43\xed\xad\xc3\xfa\x07\x3a\x62\x64\xce\x06\x91\xbf\x6b\x6c\x66\x76\x63\x83\x7f\xbc\x93\xd9\x92\xcc\x62\x42\x9b\x48\xbf\x32\xbb\x47\x64\xd7\x8b\xce\x0f\x46\x65\xa2\x67\x4f\x1e\xe1\x67\xa2\xe9\xb7\x2c\xd0\xa8\x03\xc4\x9e\x09\x07\x4d\xc2\xfa\x29\x28\xcd\xdc\xd6\x60\x16\x21\x24\xe7\x8c\x76\x32\x93\x1c\xc1\x24\x36\xe7\x2c\xbb\x1f\x5c\x0e\x7f\x45\x0f\x5a\x31\xe3\xb3\xc8\xb6\xb0\x67\xf7\x2e\x0f\x1e\x91\xb3\xc5\xc0\xaf\xef\x91\xb8\xe2\x03\x0f\x0a\xe1\xa9\x66\xf4\x0d\x79\xa4\x68\xd4\x5d\x60\x3a\x00\x24\x0c\x67\x0e\x4b\x0c\x86\x98\x9a\xd5\x36\x37\xcd\xc2\x83\x26\x84\xf1\x43\x27\xca\x21\x03\xde\x1b\x4f\xfc\xbc\xcf\xd2\x83\x85\x4c\xca\x6e\x4c\xcd\xa2\x8a\x5e\x37\x3b\xd8\x2d\x8f\x33\x3b\x9b\x58\x90\x68\xc7\xbe\x0c\xe7\xbc\x24\x66\x5b\x20\x70\xa0\x2e\x5c\x71\x43\x16\x62\x9e\x19\x07\x61\x05\x43\x21\xfc\x43\x1e\x41\x37\x04\x6f\x63\x9f\x66\x94\x69\x8f\x5f\x39\xaf\xa0\xf2\xc2\x11\x51\x79\x46\x17\x9a\x76\x63\xb8\x3d\x1a\x07\xb2\xbd\xf2\x29\x0b\x65\x6c\x3e\x71\xd1\xcf\x62\x89\x11\x2c\xb0\x5c\x8d\xd9\xdd\xac\x1d\xb1\x12\xe7\x57\x9b\xcf\x50\x50\x97\xf8\xbd\x86\xe0\xcc\x56\xf3\xde\x35\x9b\xc7\x25\xce\xd5\x8d\x2b\x3e\x8e\x61\x0d\x91\x09\xb2\xcd\x66\x4d\xe8\xe7\xa1\xa1\xb6\x79\xd3\x19\xb5\x6d\xf4\xb2\x6d\xa3\xd9\xfd\xb2\x6c\x9b\x39\x10\xb5\xed\xd1\xf7\x89\x0f\x31\x05\x50\xab\x35\x71\xa2\x77\x05\x31\x4d\xfa\xac\x06\x12\x41\x25\xf6\x2b\x18\x92\x23\x05\x24\x9b\xe8\xb3\xca\x27\x4e\xe8\x79\x1b\xaa\x4b\xc4\x3e\x90\x25\x88\x05\x34\x98\x79\x15\x4b\x32\x34\x09\xb4\x0b\x05\xcd\x3c\x7d\x56\xe4\xe1\x96\x8b\x93\x2e\x30\x1a\xb0\xab\x4d\x63\xed\x02\xaf\xc7\x2b\xac\xf0\xc0\xd7\x88\xc0\x62\x94\xe7\xd8\x56\xac\x8a\xd1\x80\x68\xe6\x48\x4a\xe7\xb3\x6e\x35\xbf\xe6\xb2\xc4\x34\x72\x3f\x68\x3c\x19\xa8\xab\x59\x39\x31\x0c\xc6\xb4\x7a\xfc\xb9\x2b\x4d\xa3\x55\x3b\xfd\x17\xf3\x9f\xe7\xad\x1f\x45\x62\x8b\x7c\x4e\xc7\x60\x9f\x64\x10\x0f\x89\xd0\xf5\x4e\xbe\x40\x2a\x8c\x73\x79\x98\x42\xcc\xca\xa3\xe1\xd3\x82\x91\xc4\x9d\x0b\x54\xb6\xe6\xfa\x44\x45\x2c\x17\x98\xed\x05\x92\xb5\x8e\x71\xde\x4b\x48\xac\x91\x05\xf6\xfc\xb0\x36\x68\x34\x59\xf0\x44\x7f\x9a\xe9\x25\xa1\xd4\xa0\x23\x29\x19\xbc\x39\xc2\x19\xea\x12\x51\x9c\x66\x6f\x26\xba\x94\x05\xa2\x33\x44\xbf\x8f\x77\xd2\xf3\x34\x19\x62\x26\x7d\x0d\x81\x9d\xb3\xa4\x7f\x92\xa0\xe4\x5d\xc6\x34\x68\x3a\xab\xab\x2e\xd6\xc3\x47\x8c\xd0\xfb\xc8\x8b\x70\x92\xb4\xd6\x82\x95\x22\x8e\x1c\x44\x7f\xf2\xac\x07\x92\x18\x02\x09\xcd\xfa\x1c\xda\xc3\x08\x25\x43\x9e\x8e\x14\xbd\x4c\xd4\x82\xd4\xe0\x71\xc5\xf9\x28\x8b\xf4\x08\xc5\xa2\x90\x94\x2f\x8e\x50\xe8\xf9\xa8\xa3\x13\x9e\xe8\x51\x18\x08\xce\x8b\x04\xd1\xc6\xfc\xdc\x9c\xc6\xbf\x24\x75\xb4\xe3\xa1\x69\x43\xad\xb7\x1a\x9d\x64\x95\x6f\x5c\x78\x7e\xd0\x30\x3f\x58\x7e\x87\x6d\x7e\xb0\xde\x6e\xf3\xbc\xbb\xea\x61\x07\x4b\xbb\xdc\x4e\x1f\x4b\xbb\x58\xdb\xcd\xd2\xce\xdb\x5f\x73\x8f\xb3\xa5\x2e\xb8\xe9\x6f\xa9\x93\x8f\x73\xb9\x1c\xed\x97\xd8\x1c\xae\x4d\xd7\x44\xbd\xb8\x75\x94\x77\xa2\x86\xf5\x52\x0e\x8a\x1a\xdc\xcb\xf8\x28\x36\xde\xf3\xe7\xb8\x53\x7d\xe9\xac\xa8\x67\xf8\xf9\xfe\x0a\x8c\x02\xe3\xa9\x9e\x5d\x5e\x1f\xb7\xde\xb9\x1e\x12\xf7\x4a\xa8\x93\x16\x57\x09\x42\xf4\xd1\x38\xdb\x53\x90\x8c\x51\xc6\xa7\xc4\x17\xec\x78\x97\x9c\xf2\x9a\x92\x51\x1b\x1f\x93\xb3\x22\x00\xa6\xe0\x74\x48\x0c\x43\xb9\xa0\x48\x7b\xbb\x72\x90\x74\x52\xc1\xba\xd8\x43\xb0\x29\x29\x13\x42\x10\x16\x82\x43\x93\x4c\xf4\x3d\x52\x46\x83\x53\x21\x91\xd9\x1b\xbc\xf7\xc9\x1b\xdb\xd3\x24\x58\x31\xa0\x13\x57\x1a\x42\xc4\x14\x93\xd7\x3d\x03\x51\xa9\x68\x9c\xf2\xbc\xbe\xa1\x14\x46\xf4\x3d\x0b\x31\xa4\xe4\x1c\xeb\x3d\xce\xfa\x84\xd4\x37\x4f\x02\x22\x12\x40\x71\xc5\xcb\x83\x51\x05\x15\x7b\x81\x94\xca\xe0\x03\xa9\xa5\x90\x94\x89\x3e\x6a\x4c\xbd\x48\x1c\x36\xa2\xe7\x03\xd6\xca\x61\xb4\x2e\xb8\x5e\x82\xc4\x40\x62\x24\x18\x98\x52\xd4\x86\x5e\x84\x5e\x50\x07\xc7\xa2\xc6\x7b\xd4\xd6\x07\xec\x91\x2d\x6b\x95\x0b\x81\x18\x71\xf2\xca\x1b\xd4\x3d\x24\x93\xc0\xe9\x14\x51\x5c\x91\x00\x56\x31\x24\x67\x7a\x1c\x34\x58\x29\x4c\x46\x90\xce\xeb\x63\x70\x34\xf6\x0e\xa8\xf7\xde\x1b\xb2\x3a\x7c\xb4\xc9\x2a\xd7\xe3\x75\x3c\x6f\xb5\xd3\xe2\x8a\x24\x91\x42\xd4\x8e\x93\x7d\x34\x3e\x5a\xde\x3a\xaf\xb4\x33\xc6\xf4\x78\x03\x9e\x0a\x3a\x5a\x91\x40\x29\x6b\x6d\xe8\x61\x10\x57\x34\xc1\x88\xda\x84\x98\x8b\x68\x65\x73\xb4\xcf\x64\x9d\xf2\xb9\x11\x6d\x83\x45\xc5\x47\x69\xad\x56\x8a\x6a\x5a\x88\xd1\x7b\x9b\x82\xf8\x80\x1a\x9c\x8e\x26\x68\x7a\xcf\xa4\x92\xd1\xd1\x31\xdc\x10\x8c\xf1\x34\x28\x86\x5f\x29\x04\x43\xf6\x6c\x34\x01\x9d\x26\x08\xca\x04\x1d\x12\x07\xea\x33\x06\x5d\x48\x89\x52\x31\xf9\x88\xd6\x8a\xab\x08\x51\x27\xf4\x96\x12\x8d\xf3\x26\x72\x14\xaa\xa8\x94\xd5\x81\x7a\x6b\x41\x6b\x34\x41\x5b\xe1\x21\x06\xf4\xa8\x15\xb7\x15\x55\xd4\x68\x91\x11\xcc\xea\xe0\x9d\xe7\x64\x93\x9c\xd2\x75\xdc\x3b\xe3\xb5\x89\x86\xfa\x1b\x34\x1a\x9a\x02\x1a\xf5\x14\x55\x32\x81\xe6\x30\xfa\x18\x93\x77\xe2\x8a\x0c\x55\x97\x08\xe1\x7a\x3c\x50\x34\xd8\x9e\xc5\x26\x6a\x63\xa8\xc3\x0a\x94\x46\x6f\x55\x6a\xa6\xd2\x08\x3b\x65\x94\xd6\x34\xb7\xab\xe4\x00\x29\x46\xeb\x94\xa6\xb9\x5d\x01\xf6\x64\x62\x7a\xef\x5c\xb3\x13\x64\xa3\x21\x7a\x93\xf8\x3d\x56\x3d\x76\xa0\x69\xdc\xb5\xa1\xf7\x58\xbd\x9d\x25\x14\x55\xc6\x19\xdd\x1c\x0a\xb2\xac\x31\x86\xa0\x8c\xb8\x6a\x8c\x9b\x81\x10\x63\x50\xca\x68\xb1\x1a\x61\x03\xde\x99\x80\xaa\x3d\x19\x06\x22\x1a\x6d\x13\x5a\x71\xb5\x9e\x38\x03\x29\xe8\x10\x03\xe9\xd8\xeb\x39\xce\x98\x81\xbc\x96\xb2\x44\x07\x07\xa8\x54\xf0\xda\x6b\xf1\x61\x8d\x3a\x06\x10\x5d\xf4\x91\x80\xf2\xa5\xa7\xd6\x87\xd0\x23\x5b\xd4\x44\xb4\x3a\x70\xa0\x3f\x65\x55\x72\xa1\x47\xea\x72\x0c\x31\x59\x27\xba\x19\xd1\xdf\xc4\x0f\xbc\x2d\xcb\xc6\x48\xa8\x8a\x40\x2f\xa6\x1c\x11\xb6\x03\x8c\x21\x3a\xcb\xa9\xda\x39\x9f\xf8\x1e\x30\x15\x10\x2d\x26\x4e\x8d\x21\xd9\x80\xf9\x04\x79\x72\x81\x88\x12\x89\x63\x38\x0c\x49\x5c\x31\x8e\x87\xe4\x13\xa3\x44\x0a\x88\x98\x58\x4d\x8d\xda\xb9\xa4\x19\x7d\x54\x0c\x91\xd7\xe1\x2d\x0d\xb0\xd1\x91\x89\x40\xa3\x8d\xae\x06\x11\x82\x53\xde\x32\x0f\x30\x16\x63\xb4\x0c\x22\xc4\xa8\x30\x3a\xe6\x0c\xc1\xb8\xe0\x39\x5a\x78\x34\xc1\x25\x4e\x74\xc9\x68\xe3\x56\x9d\x20\x76\xc7\xd8\x4a\x2f\xed\x7c\x7d\xbc\x5e\xa5\xe8\x7b\x79\xf7\xb0\x56\x39\x30\xa4\x0a\x31\xa2\xe7\xae\x51\x35\x6f\x53\x3d\x12\xde\x29\xc3\xc9\xc9\x25\xc4\xc4\x51\x25\x0d\x1a\x34\x2a\x70\x2a\x31\x68\xed\x73\x2c\x46\xed\xad\x69\xa5\x12\x08\x8f\xde\x78\xc4\x8d\xc2\x21\xea\xa4\xb9\x13\x49\x47\x67\x1d\x47\x73\x4c\xca\x05\xeb\x13\x77\x42\xb9\xa0\xad\x11\x57\xc4\xaa\x74\x74\x9e\x08\x57\x73\xa0\x47\xd2\x45\x79\xc3\x52\x70\xc1\x71\x61\x87\xde\xa8\x10\x37\x52\x8d\xd5\x5e\x23\x66\x10\xeb\x64\x4d\x5d\x0f\x19\x84\x4b\x68\xb5\xcb\xf3\xe1\x6d\x54\x3c\x14\x29\x06\x8c\xc1\xe5\xb9\x8b\xc1\x1b\xe4\xf7\x48\xe8\xb4\xd1\x36\xcf\x34\xaa\xe0\x39\x44\x64\x44\x9d\x6c\xd4\x35\x56\x20\x46\xc3\xa7\xff\x89\x97\x65\xd2\x0f\x26\xd0\x9b\x30\x08\x17\x0c\x91\x2e\x25\x7b\x96\x2f\x29\x8f\x1b\x26\x13\x3c\xa7\x06\xa7\x30\xf7\xa2\x03\x35\x09\x67\xc9\x9a\x8a\x2a\x38\x12\x24\xd6\xab\x84\xc9\xe5\xde\x59\x54\xc4\x13\x12\xd8\xe8\x35\x72\xf8\x50\x07\x51\x5b\x63\x42\x2f\x81\xb3\xd1\xe5\x0e\x07\xa3\x83\xf7\xba\x97\xc0\x5b\x85\x5e\xdb\x98\x67\x89\x98\x86\xa5\xa2\xc1\x60\xf0\x26\xf1\x2c\xb9\x10\x89\x60\x7b\xac\xf4\x5b\xeb\x68\xe4\x1d\x38\x67\x68\x28\x48\x94\x05\xe7\x94\xae\x71\xc5\xe9\xa8\x1d\xbd\xb4\x02\x54\xda\xe9\xc8\x6f\xe7\x2c\x6a\x34\x8e\x52\xb5\xb1\x5a\x63\x06\x91\x54\x60\x1e\x68\x9c\xa1\xd7\xac\xfb\xa0\x8c\xf7\x9e\x92\x09\xb7\x4d\xaa\x23\xc6\x5a\xcd\xdc\x55\x81\x0b\x2e\x6a\xc3\xd4\x18\x0d\x09\x2d\x4b\xa9\xde\x86\xa8\x96\xc3\x60\x92\x4f\x91\x93\x03\xa6\xe0\x2d\xdf\xbe\xa1\xbc\x37\xda\x31\x88\x40\x12\x39\x70\xb8\x7d\x4c\x2e\x9a\xd8\x4a\xe5\x00\x10\x3e\x19\x4b\x14\x4d\xc9\xc1\x26\x64\xbc\x72\xc6\x39\x16\x75\x0a\x7c\x8c\x3a\x25\x8e\x9e\xeb\x5d\xd4\xca\x71\x59\xe7\x9d\x37\x3a\x63\x5b\x88\x2a\x06\x9d\x5f\x84\x3a\xcf\xe1\xfb\x21\x3a\xa5\x92\xcb\x23\x11\x3c\xe1\x45\x9d\x1a\x82\x4a\x79\xd4\x8c\xf6\x2e\x30\x88\x65\x32\x8d\xb1\x09\x5a\x2b\x46\xd8\xc8\xaa\x91\xe6\xf9\x08\x2a\x59\xcf\x20\x82\x55\x26\x6a\xc7\x73\x97\xac\x0a\x24\x7f\xa8\x73\x3e\x5a\x1d\x2c\xcd\xb4\xc1\xa0\x95\xe7\x2e\x3b\xef\xd1\xf2\xe4\x39\x1b\x82\xe7\xe0\x14\x1e\xac\xf5\x36\x5a\x4a\xb5\x29\x62\xf4\xa6\x1e\x0b\xed\x43\xb2\x04\xc2\xda\xe8\xad\xb2\xb1\x1e\x38\x34\x9a\x70\xc5\x1a\xe7\x9d\xcb\xb7\x17\x6c\xe3\xe5\xdf\xc4\x0f\x09\x3c\x06\x52\x67\x90\xb4\xa4\x94\x10\x63\x40\xd2\x02\x8d\x52\x29\x3a\x43\xc9\xd4\x06\x71\x54\x3e\x5a\xab\x9d\x09\xd6\x52\x2a\x8b\x07\x76\xa4\x32\x07\x89\x9e\xf5\x2c\xd2\xa3\x30\x91\x8c\xd7\x51\x61\x4a\x81\x93\x69\x34\x83\x75\x22\x10\x77\xb3\x48\x5a\x52\x00\x67\xb4\x35\x11\x3d\xe9\x32\x3a\x29\xe7\x12\xa9\x6a\x21\x58\x52\x97\x48\xb2\xd9\xe8\xbd\x8f\xe8\x7a\x11\x14\x31\x4a\xcd\xd1\x8d\x8d\x46\x6f\x22\x9a\x5e\x24\x93\x9d\xb8\x78\x10\x01\xb4\xb3\xc1\x46\x0c\xa4\xd5\x79\x8d\x8a\xd4\x8f\xab\xc0\x92\x22\xc6\xa4\x7b\x11\x48\x93\x0b\x3e\x50\x73\x5a\x6b\xad\x62\xa0\x11\x32\xd6\x07\x6d\x3d\x29\x20\xc6\x19\x13\x12\xcf\x87\x37\x56\xa9\x65\x27\xac\x73\x4a\x31\x35\x91\x44\xf0\xd6\xb0\xf2\xe5\x3d\xf5\x94\x91\xc5\xa9\x60\x3c\x75\x22\x25\xf4\x21\xd3\x92\xb5\x48\xb2\x9d\x07\x22\x78\x6f\x62\x46\x7a\x4f\x12\x98\x37\x54\x78\x44\xd2\xe0\x32\x7a\x1b\xa3\x51\x61\x3e\xbb\x6c\x03\x9a\xd4\x4c\xbd\xe2\x1b\x12\x14\x29\xcc\xcd\x64\x76\x13\x44\x8f\xc8\x78\xec\x48\x39\xe7\xab\x31\x31\xa4\x18\x3d\x53\x82\xd6\xce\x6b\x8f\x2c\xe4\x9d\xb2\x91\xc6\x87\xf4\x5b\xd2\x53\x31\x08\xa6\x95\x60\x83\x62\x54\x71\x89\x34\x98\xd4\x4e\x55\x4a\xd1\x60\x66\x10\xcb\xe4\x08\xde\x05\x1b\xb4\xe3\xc2\x2e\xba\x48\x13\x4a\xd3\xa1\xad\x8a\x91\xc3\x62\x98\xe4\x4c\x34\x9e\xa6\xce\x04\x8b\x3a\x6a\x06\xa1\x95\x4d\xde\x07\x9a\x67\xa7\x2d\xfa\x90\x44\x82\x64\xac\x61\x51\x4a\x38\xa1\x74\x4c\xc6\x88\x6e\xc4\x24\x0e\x6b\xc1\x26\x1f\x92\x8a\xd4\x69\xad\x89\x1d\x3a\x16\xa7\x26\x04\x34\x48\xc9\x26\x18\x74\x4e\xb3\x02\xa0\xad\xb3\x26\x11\x8b\x34\x9e\xcc\x07\xea\x1e\xe9\xdf\xd1\xa2\x26\xf2\x35\xd1\x59\x6f\x93\x61\xa5\x25\x25\x34\xce\xf1\x70\xa0\x22\xa4\xc4\x7c\xc4\xc0\xfa\x60\x09\x84\x0d\x06\x15\x61\x00\x92\xb2\x65\x48\xeb\x26\x42\xf5\x34\x2c\xa4\xd0\xa1\x01\x9f\xd0\x29\x4d\x8c\xde\x3b\xaf\xeb\x30\xca\x5e\x27\xb2\x18\x88\x03\x04\x9d\x92\x0a\x39\x95\xd8\x02\x2b\x95\x49\x29\x85\x81\x94\xca\x1c\x73\xd9\xb1\x76\x4d\x1a\x68\x50\x81\x14\x0b\x52\xb4\xd1\x39\xc5\xa9\xe8\x62\x30\x9e\xef\xd6\x20\xb1\x40\x3c\x84\x79\x56\xb4\x9a\x35\x0b\xea\x84\xf2\xc1\x30\xdf\x33\x29\xaa\x68\xf9\xa8\x44\x08\xd6\x1b\xe6\xff\x4e\x91\x61\xc7\x10\x62\xd4\x34\x68\xcc\xbd\x49\x7e\xea\x7a\x20\x94\x32\x19\x39\xbd\xb5\x3a\x24\x93\x47\x8d\x18\x75\x46\xe4\xa8\x03\x6a\x9f\x47\x98\xa6\x0a\x9b\xa9\x34\x1d\x16\x53\xf4\x3a\x6e\x14\x76\xd1\x5b\x57\xd3\x02\x9a\xa0\x2c\x4f\x47\x50\x89\xda\x60\xc2\x49\x2a\x46\x93\x41\x90\x10\xf1\x89\x0b\x1b\x1f\x95\xd7\xac\x8f\x25\x85\x2a\x84\xcc\xa7\x15\xda\x14\xe2\x46\xaa\x22\x75\x58\x59\x06\xb1\x4c\xe6\x98\xe1\xda\x87\x1c\x37\x28\x7a\x7a\x4c\x3c\x1f\xa4\xe3\x2b\x06\x11\x92\x0a\xc8\xf3\xe1\x3d\xe1\xaf\x8a\x59\xd1\xc3\x18\xbc\xe5\x89\x76\x5e\x93\xdc\xa3\xc2\x1e\xbd\xb5\x5c\xd8\x06\x6d\x54\xd4\x9c\xda\x81\x9a\x6d\x9c\x25\x66\x98\xa2\x31\xba\x8d\xb3\xc4\xd6\x94\x76\x3e\xb4\x70\x96\x18\x6a\x30\x8a\x43\x97\xaf\x71\x36\x00\x55\xf7\xde\xb6\x71\x96\x18\x18\xe1\xa4\x6b\xe1\x6c\x20\xed\x5c\x2b\x9e\xc0\x35\xce\x06\x70\x88\x51\x25\xdb\xc6\xd9\x40\x28\x69\x88\x6f\x37\x91\x96\xd8\xb3\x52\x49\xeb\x16\xd2\x06\x12\x71\x44\x95\x6d\xa4\x25\x0e\x6f\x31\xb8\x3a\x7c\x78\x8d\xb4\x91\x23\x97\x1b\x92\x7c\x0d\xa4\x8d\xc4\xa0\x9c\x0e\xa6\x8d\xb4\xbc\x86\x8c\x71\x49\x66\x19\x69\x23\x58\x4b\xdc\x87\x84\xe4\x0a\x69\x23\x38\x4c\x56\xbb\x80\x2d\xa4\x8d\xd4\x2e\xd9\xfe\xa1\x89\xb4\x91\x5e\x28\x92\xfd\xd8\xc0\xd9\x75\x62\x13\x65\x5b\x45\x97\x18\x1b\xc1\x79\x15\x15\xbb\x0b\xd6\x18\x1b\xc1\x9a\x90\xa2\x43\xdd\xc2\xd8\x08\x06\x1d\x19\x95\xa6\x89\x9b\x11\xc8\x7e\xf0\xd1\xdb\x66\x2a\x0f\x59\x8c\x98\x74\x0b\x63\x39\x9a\xbb\xf1\x31\xb5\x30\x36\x30\x3a\x5a\x74\x2d\x8c\x0d\x24\x4e\x94\x36\xb1\x8d\xb1\x01\xc8\x38\x20\x18\x4d\x8c\x0d\xf4\x9e\x56\xa5\xd0\xc2\xd8\x06\x62\xb6\xf5\x58\x92\xad\x3e\x91\xe8\x6c\x29\xb2\x01\x74\x24\x39\x6a\x5d\x43\x91\x0d\x60\x2c\x59\xbf\x31\x34\x55\xd9\x00\xd6\x78\x0c\xca\xbb\x96\x2a\x1b\xc0\xe9\x10\xc8\x4e\x6f\xaa\xb2\x81\x18\x8e\x75\x26\xc7\x93\x5f\xaa\xb2\xa4\x17\xa0\x43\xe5\x7d\x4b\x95\x0d\x44\xd5\x64\xe0\xea\xa6\x2a\x4b\x32\x47\x69\x5d\xab\xef\x59\x95\xa5\xa1\x4f\x31\xd2\xd0\x37\x55\xd9\x08\xda\x27\x22\x9b\xd0\x54\x65\x23\x98\x80\xd1\x60\x8e\x32\xbf\x54\x65\x09\x05\x4d\xc4\xe0\xdb\xaa\x2c\x21\xa1\x0b\x41\x07\x6c\xaa\xb2\x7c\xa7\x01\x06\x97\x6d\xa1\xa5\x2a\xdb\x48\x6d\xaa\xb2\x91\xdf\xd3\x28\x9f\x9a\xaa\x6c\x24\xdd\x83\x6c\x21\xdd\x54\x65\x23\x18\x9a\x48\x55\x6b\x80\x4b\x55\x96\xaf\x56\x48\x96\x2f\xc9\x59\xab\xb2\x11\x54\xd0\x81\xef\xe0\x59\xab\xac\x34\x68\x49\x07\x13\x7d\x4b\x93\x0d\x10\x7c\x22\x6e\xd3\x54\x64\x69\x36\x0c\x1a\xe3\x74\x53\x91\x25\x39\xed\x08\x07\x75\x4b\x91\x25\x5e\x13\x82\x8e\xd1\x34\x15\x59\xc2\x09\x62\x73\xca\x34\x15\xd9\x00\x9a\x7a\xeb\x48\x57\x6c\x28\xb2\xbc\xb5\xd8\xdb\x98\x15\xe7\xa5\x22\x4b\xda\x26\x51\x31\x5f\xc0\xd5\x85\x98\xb5\xb7\xc0\xe9\xe0\xd1\xf4\x78\xf3\x7b\x0c\xd6\xe6\x89\xd2\xda\x05\x63\x63\x8f\x8d\x68\x34\xd1\x31\xbe\xa1\x4a\x4a\xeb\xd0\x73\x80\x56\x39\x74\xc9\xe6\xfb\x0b\x82\xd5\xa8\x7b\x0e\xb4\xd1\x88\x81\x79\xac\x85\xa4\x5d\x74\xca\xf5\x1c\x18\x4d\xa8\x91\x30\xd3\xa4\xb1\x81\x9a\xb3\x56\x59\xa5\xb2\x04\x88\x26\x6a\x95\x7a\x0e\x9c\x0f\x96\x68\x36\xf3\x05\x32\x43\x2d\x25\xfb\x64\x6d\x34\x99\x22\xa3\x76\x34\x15\x3d\xa2\x1f\xe2\x47\x26\xfb\x1b\x82\xb3\xc1\x51\x7f\x93\x75\x91\x06\x7a\xd9\x07\xe5\xb4\xe9\xd1\x00\x38\x9b\x6c\x26\x3c\xa5\x62\x22\xa5\xd5\x03\xfa\x10\x42\xf4\x6c\x57\x12\xcf\xf3\x9e\x52\xb5\x49\xc1\x98\x60\xea\x91\xb0\x26\x5a\xec\xf1\x8e\x88\x80\xc9\x66\x4b\xd6\xa1\x42\x74\x94\xea\x14\x6a\x32\xc9\xc9\xea\x8d\x8a\x14\xee\x66\x2a\x13\x8e\xb3\x1a\x51\x6f\x14\x8e\x9a\x38\x63\xa4\xf6\x22\x22\xf2\xc1\x4f\xea\xbe\xf1\x3a\xb0\xcb\xcb\x45\x9d\x0c\x66\xac\x57\xde\x5b\x1b\xa9\x3d\x65\x9c\x0d\x5a\xe7\xb9\x36\x8e\xd4\x17\x1a\x0b\x1f\x13\x69\xd4\xed\x54\x9f\x9c\xd6\xca\x67\x8f\xc3\x3a\x99\xcc\xba\xe0\xd3\xd2\xb7\xa0\xb4\xe1\x09\x31\x89\x14\x4d\x4e\xd4\x4e\x11\x26\x3b\x30\x06\x8d\xaf\x9d\x1e\xc9\x19\x44\xc3\xf3\xac\x0d\xb1\x45\x7e\x0b\x47\x62\xbc\xc7\xdb\x5d\x02\x86\x58\xdb\xe3\x88\x86\xe7\x48\x25\x85\x16\x75\xa8\xbd\x26\x68\xa3\xe2\x64\xab\x48\x01\xe4\x37\xb6\x6c\x29\x11\x52\x29\x42\x45\x65\xbc\xe8\xc6\xcb\xe6\x2d\x15\xff\xa9\x4c\x0c\xae\xf3\xba\x2a\x71\xe4\x92\xdd\xe6\x4a\xc2\x77\x4f\x1d\xc7\x8e\x6e\xca\x72\xb0\xba\xee\xb3\x75\xf2\x88\x40\xdc\x8e\x16\xc3\xfb\x6b\x79\x37\x19\x4f\xfa\xc3\xd9\xe4\xee\x1b\x09\xc4\x56\x5f\xb5\x10\x96\x81\xd7\x5c\xe2\x30\x3b\xa0\x9d\xe9\x2b\x61\x73\x04\x58\x62\x27\xc4\xd3\xd9\xa1\x6c\x12\x5f\x48\x03\x34\xa1\x16\x7c\xe4\x2d\x68\x26\x3f\xd8\xc4\x71\x60\x34\x6f\xbf\x43\x89\x34\x61\xf9\xa0\x19\x42\x52\x49\x6a\x08\x51\x83\xe7\xd5\x65\x9f\x96\x51\xa3\x56\x8f\x60\x5d\x8e\xab\xca\xdf\x58\x87\xe3\xaf\x1f\x20\xa9\xbc\x61\x92\x18\x98\xe4\x9d\x43\xcb\x07\x51\x1f\x5c\x27\x4e\x0f\x8e\x43\xd4\x28\x3e\x57\xb1\x7a\x86\x98\x38\xcf\x47\x5e\xf2\x15\x04\xd5\x09\x0d\x09\x21\x3a\xc3\x87\x03\xbd\xe7\x90\xb6\x9c\x03\x9e\x9f\x4c\xe0\x75\x6f\xea\x19\xef\x10\x70\x7c\x44\x07\x4d\xaa\x9f\x1d\x28\x1f\x78\x47\x13\x6a\x30\x1c\x7e\x37\x1f\xc1\xc8\x37\xef\x69\x09\xc8\x87\x76\x5c\x92\xc4\xb8\x09\xa2\xe2\xb5\x1b\x99\xaf\x16\xe0\xad\x5b\xd1\x4a\xd0\xf5\x85\x7c\xf5\x4a\xca\x9f\xc8\xd8\x22\x1b\xce\x78\xb3\x8e\xe7\xe9\xf3\x99\x99\xc8\x67\xfa\x79\x8f\xa2\x27\x9d\x56\x68\x70\xca\xd5\xbb\x17\x69\x90\x91\xa4\x01\x9f\x94\xe1\x13\xaf\xae\xf1\xc8\x57\xfa\x21\x58\x5e\x8d\x41\xa1\xc1\x3a\xcb\x07\x0a\xa8\x3f\xa4\x58\x92\xea\xc3\x1b\x67\x93\x40\xf0\x46\xd7\xcf\xfc\x36\x42\x09\xc3\x87\x8f\x78\x04\x2d\x44\xc5\xf1\x18\xbd\x17\x8e\x0f\xb0\x18\x17\x79\x3f\x96\x0f\x11\x92\xd5\xf4\x57\x20\x29\x18\xbc\x17\xcb\xf0\x1e\x29\xc2\x37\xb0\xc1\x2f\x1f\x23\x8f\x02\xe8\x60\x00\x49\xed\x24\x3c\x0a\x60\x39\x4e\x71\x0a\x7c\xae\xcc\x05\xc6\x3a\x23\x1d\xe8\xfa\x29\x41\xd0\xf1\x4a\xd7\xf8\xca\x71\x00\xcd\x32\x3a\xd4\x39\x87\x50\x76\xd2\x6f\xd7\xa9\x94\xdd\x85\x37\x8e\xa9\xdc\x4e\x26\xb7\x55\xb9\xff\x9c\x4a\x5d\xe6\x97\x3f\xa8\x42\xc6\x3e\x12\x12\xf4\x15\x91\x14\xd1\x2f\xef\x95\x64\x24\xe6\x7b\x7c\xa3\xf7\x43\x19\xc1\xfb\x07\x03\xce\xf8\xa1\x85\xe4\x0b\x0b\xda\x71\xf4\x88\x65\x3c\x28\x20\xdb\x53\x43\x48\x0f\x9a\x34\x94\x21\xfb\xd5\xfb\xec\x26\x96\x08\x9c\x65\x3c\x9f\x26\xac\x1f\xf9\x26\xc9\xe6\xac\x59\x1d\xdd\x5f\xec\x6a\xc3\x4c\x7d\xb0\x92\xa3\x2c\x93\x25\x6c\xfa\x9a\x77\xfb\x31\x73\xf2\x4e\x42\x44\x23\x3c\x6f\x60\xe2\x23\x69\x95\xa4\x26\x09\x49\x75\xb2\x7d\x09\x51\x1b\x60\xb2\x8d\xd1\x43\x0c\x1c\x17\x4f\x5b\x7e\xe2\x35\x47\xc1\x31\x25\xb5\xcf\x67\x57\xa4\x03\x74\x4e\x92\xa5\x97\xde\x13\x0a\x86\x07\x0d\xc6\xbb\x22\x01\x46\xa2\x48\xfa\xce\x7b\x2e\x23\x68\xc5\xb1\xa0\xdb\xfb\x7d\x8c\xfd\x53\x74\xa6\xd5\xfd\x90\xb7\xd5\x18\xd0\x1e\x0b\xc7\x17\x65\xd6\xe3\xc5\x31\xf9\x1c\xba\x8f\x01\x4c\xc4\xa1\x34\xa0\xb8\x29\x62\xb1\xb8\x8a\xba\x47\x4d\x59\x57\x51\xa6\xe4\xde\xb4\x36\xa6\xfc\xf9\xcf\x57\xaa\x73\xb8\x78\xbb\x64\x61\xf9\xe6\x3d\xfa\xca\x2d\x9a\x7a\x2b\xb2\x09\xbe\xd2\x39\x50\x38\x1f\xec\x89\xda\x8a\xfc\x9d\xf7\x6d\x7a\x40\x6b\x78\x88\xf8\xad\xf3\x57\xce\x5a\xbd\xb9\x47\xee\x94\xe0\x4e\xf5\x21\x68\xea\x1f\xf2\xae\x23\x3e\xca\x13\x12\xef\xea\x76\x36\x3f\xb7\xce\xf2\xfc\xc9\x1a\xe3\x8e\xdd\x52\xb3\x49\x26\x67\xee\xaa\xf9\xc7\xa7\xed\x60\x4c\x3b\xb7\xd4\xec\x2f\xbc\x63\x3f\xcd\xfe\x4a\xbb\x37\xd3\xb4\xea\x1d\xbd\xa7\xa4\x55\xeb\x1f\x9f\x16\x87\x37\xdf\x34\x0a\xed\xdc\x79\xd3\x28\xd3\xde\x76\xd3\xc8\xd8\x53\x67\xcf\x86\x1b\x2a\xb5\xb9\xdb\x86\xd2\x8e\xdb\x6a\xb3\xb9\x63\xe6\x1f\x9f\x16\xc7\x6d\x97\xa1\x61\x7a\xa9\xbd\x32\x04\xeb\x65\x36\xca\x34\x27\x6f\x09\xfa\x88\x2d\x32\x8d\x52\x87\xf6\xc7\xfc\xe3\xd3\xe2\x3c\xc9\xf2\x69\x34\x58\x0c\xdf\x5e\xa0\xfe\xff\xd9\xfb\xd7\x1d\xb9\x71\x65\x51\x10\x7e\x15\x7d\xee\xbd\x80\x2e\xbb\xc4\xcd\xab\x2e\x55\xe8\xc2\xee\x55\x7b\x37\xfc\x01\xf6\xfc\xd9\x80\x31\xe8\x86\x67\xa0\x4a\x29\x5d\x9a\x56\x5e\x4e\xa6\xaa\x5c\x76\xa1\xd6\x63\xcc\xef\x79\xb6\x79\x92\x01\x83\x94\x44\x4a\xd4\x35\xb3\xba\x57\x9f\xb3\xd0\x6d\x3b\x25\x91\xc1\x20\x19\x0c\x06\x83\x71\x79\xe3\xdd\x67\xf9\x97\xfb\xf2\xa7\x37\x84\xfd\x01\xd2\x68\x20\x8f\x84\x1e\x93\x92\xc5\x27\x14\x04\xe1\xbd\x4f\x50\x28\x1e\x19\x22\x2c\x2a\xe4\xb9\xce\x03\x2b\x12\xf9\xcb\x87\x5f\xdf\x3f\xca\xb3\x1a\xf0\xe5\x58\x97\xbb\x97\x55\x3e\xc1\x8b\xc2\x6f\x4a\xfa\x4d\x75\x93\x0d\xad\xd7\xeb\x45\xa6\x99\x0a\x53\xd5\x0a\x41\x11\xe7\x10\x09\x95\x7d\x20\x18\x11\x30\xe6\x08\x21\x09\xa4\x14\x9b\x89\x72\x9c\xe6\x60\xc9\x1d\x04\x8f\x04\xf1\x98\x55\x88\x43\x5f\x3f\x30\x44\x43\xc8\xcd\x0b\xa6\x9b\x1c\xac\x61\x24\x58\x01\x89\x94\x41\x0a\x93\x22\x1b\x0f\x82\x4f\x50\xc1\x16\x72\x7e\xa1\xff\x15\x2c\xea\x04\x03\xd3\x6f\x50\xba\x7d\x40\x21\x44\x2b\x88\x02\x26\x0f\xc2\x72\x87\x62\xb4\xa0\x10\xb4\x32\x0e\xc0\x3c\x54\xca\x04\x52\x3e\xaf\xc6\x94\xb0\xef\x1f\x43\xc4\x41\x2c\x15\xf5\xec\x80\xf3\x72\x1c\x85\x28\x0e\xe0\x56\x16\x62\x68\xc5\x1f\xe4\xce\x22\xb7\x69\xe1\xd5\x55\xec\x4e\xfc\x3d\xfe\x85\x2c\xea\x44\x0d\xb9\xd0\x99\x99\xe3\x00\xb2\x24\xeb\x96\xfd\x1a\x9b\x0f\xaa\x65\xcc\xe5\x8c\x41\x9c\x21\x21\xbe\x7f\x04\x6f\x00\xa8\xee\xd7\xbd\x95\xb5\xc1\x4a\x29\xf6\x6a\x98\x71\xd3\xed\x0f\x75\x1d\xb3\x0b\xff\x19\xb0\x9f\x7f\xf9\xe5\x84\x79\x00\x4a\xf9\xa0\xe6\x5f\x12\x90\xc2\x12\x4e\x13\x20\x47\xc3\x6e\x2c\x38\xfb\x04\xa6\x4b\x8a\xa4\x80\x26\xbe\x7f\x54\xa4\xa6\x26\x52\x51\x20\x45\x0c\x12\x59\x54\x64\x65\xac\x2c\x45\x80\x45\x43\x91\xb6\x34\x81\x89\xf8\xfb\xd4\x6d\xd9\x62\x30\x0b\xf7\xe4\xdf\x1f\xee\xb2\xc3\x36\x2b\xb3\x19\x6e\xa8\x93\xea\xf4\xec\xd0\x93\xea\xf6\x6f\xd4\xae\xea\x93\xf7\x6b\x57\xe5\xe6\xdd\xf8\xee\xdd\x2d\xdb\xbb\x89\x77\x8b\xda\x7b\x79\xf7\xfb\x38\x84\x81\x9d\xdd\x28\x3c\x16\x2b\xd9\x28\xda\x96\x05\x8c\x4f\xd3\x44\x02\x1d\x77\x79\x75\x48\xfb\xc5\x84\x06\xe8\x34\x69\xc1\x98\xa4\x73\x09\x0d\x06\xc8\xf3\xc8\x0e\x0e\x42\x6a\x35\x34\x41\x92\xe8\x16\x1e\x13\x28\x9a\x1a\x7f\x21\x27\xe1\x10\x61\x42\x3c\x4a\x94\xb7\x0d\xc3\x01\x62\x71\x88\x42\x11\xab\x54\x26\xe0\x4b\x15\x90\xa0\x08\x91\x50\x31\x94\xf8\x0a\xf1\x50\x1e\x97\x20\x6b\x10\xa2\xa0\x43\x02\x4f\x5c\x59\x8c\xa3\x40\xc4\xbe\x3c\x5b\xc5\x09\xe4\xf1\x84\xbf\xb4\x1b\x1e\xc3\xa0\xe4\x89\xc3\x02\x76\x1f\xee\x87\x88\x33\x28\x07\x5e\x19\x01\xa9\x1d\x62\xa3\x40\xa9\x9a\x0a\x79\x00\x86\x13\x31\xfb\x99\x54\x8e\x0d\x24\xac\x02\xb0\x6b\x07\xc7\x95\x8f\x28\x68\xd6\x38\x44\x8d\xf4\x51\x10\x53\x44\x02\xfe\x81\x23\x11\xca\xf3\x24\x87\x18\xcc\x1c\x42\xf1\xa9\xae\x85\xd0\x86\xa7\xda\x00\x64\xe4\xd6\xcb\x20\x6e\x1f\x55\x8a\x3a\x88\xfd\x82\x21\xf4\x5e\x1c\xa9\x8e\xc1\xa1\x31\xfe\xbe\x91\x47\x48\xc1\xfd\x08\x11\x2e\xee\xd5\x98\x50\xc1\x10\x0e\x11\xc7\x11\xa2\xb1\x80\x7f\x79\xc0\x13\xc4\x43\x2e\xff\xd4\xb1\xa7\x05\x38\x33\x42\x18\x4d\x70\x75\x0b\xc1\x35\x0b\x22\x53\x41\xc0\xa9\xe6\x2f\x1a\x55\xbf\x38\x6d\x3e\x40\x25\xf8\x84\xeb\x4f\x2a\xb6\x96\xa8\xde\xd1\xb8\x7a\x07\x3e\xc0\x10\xe7\x93\x09\xf0\x00\x14\x8d\xeb\x1c\xb8\xfc\xc4\xe0\x78\x49\x49\x5d\xa1\x8a\x85\x83\x03\x56\xb5\x43\x75\x20\x50\x05\x0d\x9e\x02\x85\x9f\xf2\x22\x95\xa3\x0f\x4e\x44\x71\xec\x23\x81\x21\xf8\x11\xf3\x51\x08\xd4\x41\xc8\xbd\x0e\x4d\x47\x05\x97\x7f\x6a\xbf\x4f\x08\x81\x06\x41\x55\x38\xc2\x14\x22\x6e\x61\xe5\xfd\xa7\x62\x9a\xe9\x70\x99\x80\x16\xc4\xdc\x53\x01\xec\xaa\xde\x42\xd8\xce\x02\x62\x9d\x56\xee\xb8\x84\x43\xf8\x23\xc4\x58\x84\xa2\x10\x9c\xc4\x09\x6c\xf0\x61\x22\x10\x17\xcc\x53\x7f\xd7\xaa\x18\x01\x82\x03\x09\x0a\x48\x1b\x10\xc4\x2a\xde\x51\xd5\x1e\xd1\xcd\xa9\x30\x60\x0c\xa2\x75\x18\x08\xa8\x4f\x85\xf2\xe1\xe2\x2c\x41\x8c\x20\x56\x3b\x4c\x63\x70\xdd\xa5\x2b\xf0\xe1\xa3\x10\x1e\x89\xc5\x31\x62\x1c\x05\x14\xe2\xb0\x49\x49\x0b\x22\x95\x27\x28\x8c\x02\x95\x68\x55\x2d\x12\x88\x0d\x27\x20\x58\x1c\xd7\x01\xe3\x22\x84\x99\xa8\x3e\xa8\xd0\x8b\x21\x78\x53\x13\x4e\x10\x11\x02\x9c\x76\x54\x71\xae\x8a\xc3\xe0\x32\xa0\x2e\x4f\x23\xcd\x54\x64\xba\x50\x8f\x1d\x33\x42\x9f\x86\xcd\x7b\x11\x68\x27\xf7\x00\x51\x05\x8b\x09\x9a\x20\x4e\x55\xd6\x5e\xed\x75\x49\x80\xdc\x59\x28\xe4\x9f\xda\xdf\x3e\x84\x36\x79\x18\x81\xc2\xbc\x22\x78\x0a\x9e\x66\xd1\xd1\x45\xe0\x45\x15\x57\x4d\xac\xcc\xd8\xa1\x40\xca\x40\x68\xb4\x0a\xab\x18\xa3\xd8\xf4\x3e\x24\x40\x38\xa0\x87\x03\xff\x2d\x88\xac\x4e\xc3\x47\xbf\x9a\x14\x70\xea\x0e\x68\xc2\x21\xec\x8f\xfa\xbb\x76\xa8\xa7\x3e\x0a\xb8\x24\x0c\x44\x0d\x3f\x64\x05\xa2\x46\x44\x07\x7f\xac\xff\x02\xa5\x2c\x04\x03\x55\x41\xe6\xc0\x01\x0f\x82\x8b\x41\x24\x7d\xae\x9e\x64\xef\x89\x64\x41\x21\xa3\x72\xa0\x12\x79\x90\xf1\xe0\xaf\x8a\xee\x28\xe5\x72\xe2\x3c\x4b\xd5\x05\x11\xa6\x88\x8f\x58\x00\xf1\x41\x63\x50\xa5\xad\x74\xf8\xbd\x3a\xaa\x1e\x21\x7a\x55\x68\x44\x74\x54\xcc\x80\x46\xf2\x4f\x13\xc3\x4b\xc5\xf5\xa4\x31\xa2\x71\xb3\xde\x24\xc9\x80\x9b\x3e\x45\x24\xe4\xb2\xc7\xe0\xdc\x4d\x03\x8a\x02\x0c\x53\xc1\x18\xc2\x31\xf8\x9b\x6a\x2f\x6e\x08\x4c\xa8\xc2\xeb\x41\xcc\x2f\x0e\xe1\x2f\x09\x2c\x00\x11\x23\x12\x4a\xba\xc7\x60\x47\x52\x53\xbe\x24\xbd\xf0\xe8\x57\xf4\xe8\x57\x44\x69\xc5\xf6\x54\x94\xc1\x24\x61\x74\xc8\x08\x16\x34\x44\x14\x00\x12\x00\x7f\xd7\x58\xc0\xd0\xe8\x69\x0a\xb0\xd0\x6b\x05\x28\x05\x1a\x02\x92\x89\x6a\xca\xd2\xbc\x4b\x2e\x17\xe0\x69\x61\x81\x30\x07\xe2\x61\x2b\x79\x64\x80\x90\xc6\xca\xa7\x94\xc8\x4d\x80\x43\xa0\xe3\x42\x97\x16\x81\x5c\x96\x60\xd0\x62\x2c\x4b\xf8\xf0\xa8\xf7\x40\x98\x64\xca\x11\x8d\xa8\xe2\xea\x12\xbb\x20\xa0\x89\x3d\xec\x80\x06\xa5\xe0\x2b\xab\x19\x07\xf7\x2b\xe6\x52\x07\x19\x6c\xfe\x0a\xad\xbf\x08\x2f\x14\x81\x93\x88\x25\x02\x85\x38\xf0\xd4\xdf\x7a\xac\x02\x2c\x49\x0e\x82\xea\x09\x75\x2c\x0d\xc2\x86\xbf\x71\x70\xf3\xe3\x92\xa0\x48\x1c\x56\x31\x0b\xd4\x8e\xa3\x30\x60\x56\x60\x50\x85\x01\x6b\x61\xe0\x6b\x46\xab\x6a\x40\x78\xd2\x7a\x77\x8a\x85\xde\x0c\x08\xc4\x3f\x08\xf8\x7d\xc5\x8b\x81\x23\xc9\x32\x3c\x10\x6a\x7b\xd3\x0b\xa2\xde\x33\x20\xf8\x97\xde\xa5\x74\xf0\xcf\x80\x57\x5b\x8e\xde\x70\x68\xb5\xdf\x30\xfd\x21\x12\x7a\xad\x0b\x81\x64\x5d\xd8\x75\xe3\x38\x81\x98\x6c\x24\x64\x0d\x15\x42\x94\xd6\x55\xb5\x53\x30\x4d\x14\x7a\x93\x53\xa3\xe0\x19\xf4\x59\x93\x8d\xde\x70\xf5\x0f\xcd\xff\x81\x25\xca\x1f\x14\x72\xf3\xca\xdd\x1d\x98\x85\x9c\x79\x5f\x6e\xe8\x09\xc4\x08\xd4\x61\x52\x41\x70\x90\xe4\x20\x20\xee\x6c\xb5\x93\xa9\xfd\x5c\x54\x9b\xac\x90\x48\x87\xf2\x8f\x4d\x62\x92\xb5\x1b\x9d\x21\x5e\xbd\x8d\x17\x3a\x00\x27\x16\x20\x32\x79\x66\x90\x32\x0a\x0e\xc1\x54\x12\x37\xaf\xa3\xe0\xc6\xea\x87\xee\xa4\x14\x54\xc4\x4a\xad\x25\xd9\x55\x01\x01\x5f\x44\x80\xc2\x00\x3a\x93\x40\xc4\x3e\x46\x6b\x7c\x80\xc4\x89\xe0\x8a\x76\xa3\x8a\x5e\x88\xb9\x05\x33\xbf\xda\x47\xaa\x32\x4a\x16\x29\xd4\x4a\x95\x2b\x49\x40\x20\x52\x51\x85\x23\x95\xd8\x86\x51\xe4\x33\x14\x92\x00\x51\x08\xc0\x18\x36\x5d\x85\x60\x1a\x11\x8a\xc0\x79\xbd\xd9\x14\xc1\x31\x9e\x09\x49\xca\x1c\xc2\xb9\xc2\x42\xa4\xd1\xaa\x91\xa1\x60\x79\x87\xda\xbf\x99\x40\xe8\x3c\x1e\x49\xb6\xc1\x24\xcf\xd7\x99\x36\xb9\xda\x39\x54\xcc\x3f\x10\x7e\x60\xb8\x34\x71\xe9\xc8\xcc\x30\xb3\x38\x4c\x28\x82\x5b\x38\xd2\xec\x7c\x2c\x86\x86\x5a\x01\x75\x45\x1d\x86\x57\x68\x61\x87\xb0\x48\xfe\xa9\xc9\x51\x7f\x30\xd7\x1f\xa9\x79\x41\x6b\x01\xd6\x61\x47\x0d\xb1\x2e\x84\x25\xec\x43\xc8\x63\x40\x42\x85\xd2\x91\x42\x37\x93\xc4\x87\x78\x13\xad\x90\xab\x3d\x09\x1c\xea\x55\x4c\x01\x20\x68\x06\xa1\x06\x94\x3c\x10\xab\x0b\x61\x29\x3f\xc3\x1f\x29\x02\xa9\x18\xb1\x2b\x1d\x11\x3a\x50\xbb\x01\xc8\x12\xa1\x0a\xaa\x4e\x9a\x60\xd0\xe0\x53\xaf\xa5\x13\x25\x8c\x50\xfd\x27\x62\x9a\xd7\xc4\xb0\x8a\x85\x0e\x93\x1b\x12\x84\x83\xb8\x80\xd8\x06\x98\xad\xa0\x8c\x14\x23\x58\x84\x58\xcc\x91\x08\x18\x92\x62\x06\xa5\xa1\xfc\x53\x13\x20\x05\x91\x62\xa5\xe4\x5e\xaf\x96\x7b\xeb\x95\x62\x2f\x21\x63\xa9\xdc\xab\xb8\xd1\xb0\x0a\x22\x49\x81\x54\x72\x4e\x4e\x83\xe6\x9a\x47\xa9\xc0\x22\x89\x14\x51\x1c\xb6\x62\x3e\x51\xb5\xdb\x07\x2a\x02\x00\x66\xa1\x16\x33\x22\xb8\x9d\x86\xe8\x83\x20\x9a\x10\x15\xd7\x28\xac\x02\xce\x8a\x98\x24\x84\x43\xf0\x3f\xf8\xbb\x76\xf3\x8f\x61\x5f\x7b\xac\x79\x9f\x0a\x51\x5b\x85\x39\x86\x85\xa8\x02\xdc\x26\x88\x93\x48\xfe\xa9\x49\x07\x08\x20\x44\x11\x89\x54\xa0\xc5\x2a\x32\x80\x12\xab\x3e\x71\x14\x51\x08\xc4\x00\x63\x45\x61\x4f\x02\xfa\x55\x5c\x49\x50\xf9\xa7\x26\x0e\x88\x43\xb2\x92\x24\x04\xb1\x29\x58\x80\x28\xc4\x0c\x95\x67\x95\xc7\x4a\xfc\x51\xa3\x06\x07\x09\xbd\x8a\x39\x03\x29\x1a\x09\xcc\xe4\x1f\x63\x73\x93\xab\xe1\xb1\x12\xba\x24\x4d\x09\xd8\x21\xe4\x3c\x42\x7c\x09\x79\x94\x52\x23\x18\xca\x79\x53\xae\x4f\x20\xc2\x4a\x96\x1a\x87\xa0\xff\x55\xf4\xa6\x78\x64\xc5\x85\xf5\x96\x17\x50\x29\x28\x05\x75\x34\x4e\x15\xa3\x8f\x80\xb8\x0e\x54\x44\x82\x18\x48\x48\x0a\xfd\x22\x04\xd3\xb1\x42\xc9\x10\xa4\x0a\x63\x5a\x83\x04\x71\x40\xfe\x1b\x71\x25\x7a\x77\xe9\x0d\x46\x76\x55\x4b\x83\x8a\x8f\xd3\x38\xd0\x41\x25\x21\x30\x71\xc0\x6a\xcb\x03\x49\x94\x2a\xba\x49\x84\x04\x91\x67\xd3\x26\x6c\x24\x00\x93\xc4\x0b\xc1\xde\x43\x15\x0e\x45\x2f\x12\x08\x75\x22\xd9\x44\x20\xff\xd4\xa0\x2a\x36\xa1\xc5\xe0\x4a\x08\xae\x3f\x14\x35\x89\x26\x48\x50\x75\x57\x69\x4e\x2d\x61\x2d\x56\xa0\x39\x01\x57\xe4\x1d\x83\xa3\xad\x12\x2f\x03\xa6\x96\x94\xe2\x34\xa2\x92\x72\x99\xa6\x7d\x5c\x31\xf7\x2a\x62\x33\xa9\x8b\x84\xba\x08\xab\x16\x8c\x62\x10\x09\x64\x65\xf6\xa8\xce\x2f\xac\xf8\x25\xe8\xcb\x57\x7a\x47\x67\xd5\x96\xce\xf5\x96\x0e\xd1\xcc\x29\x71\x6c\xf6\xc0\xe9\x21\x6e\xb4\x3a\xdc\xeb\x18\x05\x5c\x92\xbc\x0a\x82\xc3\x89\x9c\x0a\x02\x36\x15\x35\x3d\x4a\xa6\xf2\x08\x31\xb7\xe1\x34\x28\xe9\x19\xb1\x40\x00\x7f\x09\x40\x51\x41\x22\x8a\x42\x95\xd0\x99\xf3\x44\x20\x01\x52\x53\xc3\x3f\x62\x88\x1b\x14\xf1\x42\x8d\x98\x08\x57\x43\x07\x28\xd6\x3e\x40\x25\x88\x86\x5c\xfe\x31\xf6\x50\x35\x07\xc0\x86\x43\x88\xe8\x20\xe7\x21\x84\xd0\x37\x5a\x77\x50\xd3\x65\x1c\xeb\x0d\x5b\x3d\x86\x2a\x88\x08\x8f\x60\xd7\xa5\x0c\x02\xfb\x16\x8a\x1f\xa9\x70\xe2\x15\x5b\x54\xb8\x28\xc1\x26\x81\xd8\xa9\x44\x1f\xc1\x40\xae\x50\xc2\x90\x12\x78\xec\x83\x22\xe1\xdf\x37\xbe\xe4\xdd\xcc\x97\xcb\xa8\x40\x72\xdf\x94\xf4\x2e\x79\x62\x20\x1f\xe0\x00\x27\x98\xb8\xf7\x51\x20\xc7\x95\x53\x2a\x1f\xa1\x67\x81\x3c\x3b\x50\x59\xfe\xfb\x86\x23\x1a\x33\x9f\x20\x88\x93\x2b\x09\x31\x8c\xe1\x7c\x1a\xcb\xe3\x2a\x0c\x2b\xa7\xb4\xf0\x95\xe6\x04\x49\x41\x99\x45\x54\xfe\x69\x88\x25\x54\x92\x34\x83\x3f\xf5\x94\x44\x6a\x43\x2b\x20\xec\x98\x4f\x90\x60\x8a\x83\xc1\xb2\x97\xd8\x44\x9c\x23\xb0\x84\x45\x8c\x85\xdf\x37\x60\x26\xc0\x7d\x48\xdd\xa0\xa4\x60\x82\x18\x8e\x7f\x86\x10\x26\x9e\xfa\xbb\xd6\x1f\x89\x18\x72\x8a\x17\x92\x56\x3c\x65\x14\xd1\xb0\x0a\xaa\x23\xbe\x85\xb2\xfd\xc4\x3a\xa8\x48\xee\x19\x33\x89\xdc\x77\xe5\xeb\x0e\x6e\x3b\xa2\xd0\x21\x7c\x38\xad\x7f\xa8\xb8\x2b\x14\x51\x01\x5d\x16\x3a\xb5\x19\x74\x59\x6e\x7f\x41\x60\xf7\x58\x6d\xf2\x98\xd3\x0f\x11\x8a\x79\xe0\x45\x28\xc6\xf2\x1c\x4b\x21\x1e\x2f\x8d\x79\xcd\x09\x25\x93\x96\xe7\x7f\x39\x85\x44\x05\x3e\x45\x3c\xfe\x10\x21\x1a\x7a\x31\x0a\x79\x9c\x70\xb8\x1e\x53\x7f\x57\xa1\xdc\x18\x07\x7b\xa5\xb8\xa0\x10\xa4\x5a\x09\x10\x34\x42\xb4\xa6\x17\xd9\xbe\x3c\x25\x5a\xfd\xd5\x87\x6c\x41\xc9\xf7\x8f\x21\x8a\xc0\x84\x5f\x04\xac\xa0\x4a\xf7\x07\x11\xcf\x22\xa4\x45\x1e\xc9\x7c\x62\x0e\x74\xc4\x31\x91\x7f\x9a\xad\x90\xcb\x91\x29\x7c\x48\x26\x2e\x8f\x8a\x89\x8a\xbb\xa3\xfe\xae\xce\x2e\xa1\x32\x57\x91\x54\x45\x20\xae\x71\x2c\xd7\x09\x03\xf0\x8a\x2c\xe5\x10\x43\xb2\x3a\x89\xa9\x0a\x63\x2f\x25\x35\xd8\x6c\x74\x9e\x3a\xb0\x79\x0b\xd5\x07\x30\xb4\x93\x4d\xc3\x39\x85\x41\x58\x1b\x88\x33\x18\x0b\xb9\xaf\xc5\xb1\xfc\x53\x9f\x95\x61\xfb\x10\x10\x3a\x49\xca\xc0\x20\x19\x32\x16\x69\xdd\x9a\x14\x68\x62\xb8\xb5\x24\x44\x25\x57\x67\x2b\xc4\x05\x91\xeb\x36\x66\x70\x46\x00\x62\x97\xbf\xbe\x6f\x18\x82\xd4\xf4\x38\x90\xd3\xc1\x03\xe8\xa9\x71\x4a\x63\x90\x9c\x2e\x80\x11\x89\x22\xb9\x3c\x28\x90\x5a\x2c\xff\x54\x83\x09\xb2\x1f\x6c\xd3\x3c\x96\x7f\xac\xf7\x98\xc3\x2c\x08\x86\x80\x09\x47\x60\x92\x58\x07\x7c\xe3\x18\xf2\xb6\x5b\x36\x38\x34\xf8\x4f\x75\x27\x3a\xe5\x16\xcb\xa5\xd5\x6e\xdb\x72\x6d\xf2\xd5\x61\x77\xdc\xad\xcb\x61\x73\xae\xa6\xd8\x9f\x6f\xd1\xc5\x3c\x76\x2f\x25\x06\xf2\x08\x7f\xbf\x67\x9f\x98\x75\xd3\xc7\x04\xa3\xa2\x6d\x37\xc4\x69\xec\xb1\xf7\x54\xd7\xb9\xf7\xe1\x1f\xbb\x62\x44\xfe\x7e\x8b\x03\xab\x22\xf3\x54\x55\xd5\xde\x27\x4a\xde\xb3\x47\x55\xd5\xba\xe4\x15\x3f\x07\xbf\x60\x57\x8b\xea\x9f\xf7\x54\x56\xd5\x6d\x3a\xea\xff\xf2\xcb\xdf\x7f\xc6\xd1\xd4\x59\x75\x4c\xc5\xc2\x1b\xca\xed\x6e\x93\x4c\xc8\x00\x56\xdd\xcd\x8c\x15\xef\xb9\x97\x1c\xab\xd6\x7f\x25\xd9\xaa\x39\xf9\x36\xb2\x55\x0f\x1e\xc7\xef\x20\xad\x62\xbd\xd7\x8f\x56\x29\xfb\xe6\xd1\xfa\x34\x58\x6f\xe0\xbe\x51\x95\x6b\xdf\x1f\xaa\xb7\xcb\xac\x89\xa0\xee\xb4\x1b\x42\x35\x70\xe7\xba\x1c\x54\xd0\xce\x73\x2f\x68\x4f\x69\x03\x7e\xc2\x6d\xa0\x55\x6e\xec\x22\x10\x0a\x9f\x23\xf0\x4e\x30\x39\xf0\xce\x17\xa7\x7d\xbf\xc1\x1d\x8d\xab\x41\x60\x17\xe4\x97\x38\x0e\xc2\x2a\xdf\x38\x12\x41\xac\x62\x80\x3c\x52\x14\x07\x60\xee\x81\x03\x30\x04\x8f\xa9\x4f\x54\x96\xd5\x28\xe6\x8f\x21\x0a\x79\x01\x57\x36\x10\x55\x25\x8c\x7c\x8e\x78\xf8\x89\x23\x1e\xdd\x43\x3a\xab\xef\x96\x8d\x87\x8e\xf1\xf6\xf7\x9f\x23\x52\x5d\x37\xc6\x71\xe8\xe1\x0f\x88\x72\x48\x70\x4b\x0a\x01\x57\x88\x52\xca\x02\xdb\xf0\xc0\x47\x01\x07\xc3\x1e\x95\xce\x02\x92\x5f\xc4\x51\x41\xe1\xe8\x42\x64\x95\x47\x30\x3b\x29\x38\x62\x84\x83\x09\x26\x81\x83\x35\x19\x6d\x1a\x53\x2f\x46\x82\xcb\xfa\x21\x58\xc2\x32\x0e\x8d\x44\xd1\xa7\x08\x61\x51\x40\x3a\x0f\xc1\xa3\x0f\x88\x46\xb0\x4f\x47\x15\x9a\x8f\x11\x8a\x69\x50\x84\x28\xa2\x44\x6d\xe0\x8f\xbe\x1c\x0a\x68\xf2\xdf\xbf\x4c\xe3\xb9\x2d\xb2\x58\xc8\x6f\xe5\x0e\x3b\x9d\xdd\x8e\x94\xee\xe1\xb6\x23\xb5\xfa\x99\xad\x5d\x71\x32\xaf\xb5\xab\xc9\xa7\x71\x4e\x6b\x96\xea\x65\xb4\x66\x21\x9b\xcf\x9a\x5f\x86\x6a\x0d\x70\x59\x28\xd6\x66\xb2\xf0\x72\x19\x8f\x95\x55\xa7\xb1\x58\x18\xaf\x73\x71\x58\x00\x76\x1e\x06\x6b\xcd\x63\x0d\x7c\x02\x7b\x35\x8b\x8d\x71\x57\x10\x31\x17\x33\xd7\xbb\x33\xa6\x33\x8a\x18\x03\xc7\x1f\x29\xbc\xab\x20\x90\x01\x64\xe2\xe1\x01\x12\x70\x7a\x80\x88\xd2\x3c\x86\x98\xc9\x11\x7c\xf0\x29\x88\xf9\x10\x48\x13\xce\x1a\x42\xc0\xfd\x42\xe8\x13\x44\x41\x2f\x24\x4f\x5f\x21\x03\xb7\x19\x8e\x70\x14\xd6\xff\xca\xf6\x10\x13\x3e\x47\x31\xdc\x5c\xc7\x82\xeb\xdf\x0c\x45\xca\x8b\x24\x06\xe1\x9f\x40\xd2\xfb\x80\x04\x1e\x38\xad\x7a\x0c\xc5\x38\x7a\x04\xd7\x9c\x68\xe5\x53\x15\x78\x1d\x62\x58\x86\x01\x30\x77\xfd\x8b\xa2\x50\xb9\xeb\x50\x08\xc2\xca\x38\x01\x7b\x7a\x06\xc9\xe0\xc0\x3b\x89\xe8\x63\x85\x0a\x1d\x4c\xe5\x21\x34\x00\x35\x49\x84\x02\xb8\x8e\x56\x71\x62\x43\x75\xaa\x09\x18\x47\x01\x07\x5b\x3c\x82\x63\x14\x40\xf0\x5e\x24\x22\xcb\x9f\x21\xfe\x2f\xf9\x9f\x25\xf6\x06\x28\xc4\x11\x1c\x62\xd8\x23\x78\xe1\xc7\xf2\xec\xaf\x4c\x2b\x3f\xc9\x7e\xc3\xd9\x2b\x14\xf2\xb9\x2f\x11\xdd\x29\x70\x7e\xf9\x25\x8e\xf0\xe4\x78\x96\x36\x39\xb6\x4f\x46\xbb\xdf\xcb\x64\xf8\x50\x04\x25\xfe\x7c\x72\x66\x08\x83\x5f\x85\xa0\x51\xa2\x7e\xab\xbf\xb1\x47\x30\x86\x10\xa0\xa1\x67\xbf\xc7\x18\xfb\xf0\xfe\xfb\x47\xc2\x11\x09\x02\x2f\x44\x62\x25\x05\x06\xb8\x76\x08\xe4\x79\x98\xc3\xbf\x94\x45\x85\x4e\x1b\x24\xa8\xca\xd3\x25\x22\xc8\x0e\x49\x43\x06\x39\xe0\x69\xc8\xee\xe5\x31\x78\x85\x88\xba\x99\xa3\x34\x40\x04\x53\x15\x8e\x34\x12\x8f\x28\x16\x01\x54\x84\x70\xb7\x91\x04\xeb\x23\xca\x42\xf9\xe3\x1e\x8e\xd1\x86\x12\x03\xfb\xf0\x3b\x7e\x94\x4d\x33\xd0\x7b\xd1\x50\x2b\x35\x45\x65\xce\x11\x91\x84\xc0\x75\x34\xa9\x13\x4e\x82\x1f\x0e\x58\x13\x23\xca\xa9\xfc\x23\x5f\x13\x00\x46\x68\x01\x29\xc9\xe0\x16\xde\xb2\x66\x81\x84\x5e\x88\x86\x72\x1d\x62\xaa\xfe\x82\xd7\x0c\x74\x67\x10\xdb\xee\x53\x88\x42\x06\xce\x43\xa0\x10\x04\xbb\x29\xd9\x40\x04\x3f\xee\xc1\xe0\xe5\xfb\x06\xfc\x5f\x21\x0e\x61\xb4\x82\x95\x2b\x97\x1a\xe6\xb1\x1c\x48\x25\xa7\x20\x16\xf3\x47\x5f\x0e\x5d\x0d\x8b\x41\x34\xe4\x40\x25\x8b\xa2\x22\x00\x60\x81\x31\x0f\x14\x11\x08\x0e\x4f\xe5\xd7\x02\x04\x37\x70\x58\xd3\x99\x0c\x21\x8e\x38\x11\x60\x98\x8d\xb8\x10\x28\x8e\x84\xfe\xa5\x12\x1b\x84\x02\x11\xf8\x9b\x3e\x12\x29\xa5\xad\xc0\x92\x8b\x80\x9c\x86\x68\xe4\xa3\x30\x08\xd5\xbf\x55\xf6\x3d\xc9\x03\xe0\xd6\x9e\x49\xee\x22\xa8\x8f\x42\x2a\xda\x54\x05\x26\x0f\x81\x2f\x10\x23\xf4\xfb\xc7\x08\x61\x88\x92\x03\xf7\x56\xa0\xf6\x54\x01\xa3\x05\xfc\x0b\xb9\xcf\xb0\xe4\x64\x9c\xc2\x7c\x52\x2e\x10\x68\xe1\xa5\x28\x86\x48\xc4\x0a\x82\x02\xac\x62\xd3\xaf\xd4\x7d\x0b\x5c\x4e\x35\xe1\xe4\x41\x47\x9f\x20\x4e\x23\xf9\x47\xcd\x2b\xf0\x5a\x4c\xee\x15\x99\x20\x0a\x17\x25\x88\x49\x92\x0b\x63\xb8\x19\xa1\xc0\xbd\x20\xbc\x05\x02\x5b\x29\x1a\x33\x95\x40\x02\xc2\x3f\xab\x3b\xeb\x90\x85\x05\x64\x2a\x26\x90\x76\x8d\x0a\x08\x9c\x4b\xe8\x4a\xbd\xe4\x0c\xf2\x84\x71\x88\xa8\x8c\xc1\x9b\x0a\x28\x36\x20\x09\x12\x98\xca\x3f\x9a\x8c\x94\x15\x18\x84\x78\x86\xfb\x74\xb0\x7e\x89\xe0\x96\x96\x54\xd9\x97\x4d\x03\x01\x22\x07\x07\x1c\x1a\xa5\x1c\x8c\x25\xbb\xc6\x31\x4f\x20\x0d\x1a\x0d\x02\xbd\x14\xb8\x90\x23\x14\x3c\x4a\x56\x47\x60\x0d\x81\x82\x4f\x2e\x2e\xf0\xbe\x8c\x10\x65\xf7\x90\xac\x0e\xac\x43\xe0\x82\x5b\x45\xdf\x8f\xd4\x0f\x4a\xc1\xaa\x9a\xc4\x2a\xe0\x37\x53\xfa\x30\x4a\x62\xf5\x95\xc4\x92\xe4\xc8\xf7\x8d\x0f\x97\xf3\x92\xc9\xb3\x50\xae\x2d\x02\xc6\x7a\x30\xd7\x58\x2d\x0b\xf3\x25\x26\x58\xe5\xd2\xda\x90\x00\x45\x72\x0c\xec\x3a\x18\x6b\x5a\xb1\x2a\x61\x5d\xc9\x62\xfb\xe1\x7f\xde\x92\xc9\xec\xda\x62\xb7\x0b\x65\xf0\x32\x3b\x1c\x92\xf5\xee\xb0\x99\x2e\x88\x4f\xa9\xd2\x23\x8d\x4f\xa9\xda\x2f\x92\x3b\x6a\x4f\x96\xcb\x1d\x75\xdb\x42\x6b\x5d\x64\x9a\xe4\xda\x40\xec\x15\x5f\x9b\x32\xe3\x87\x80\x4e\xd1\xde\x93\x40\xa7\xa4\x7d\x1c\xe8\x7c\x1e\xad\x3f\x70\x30\x68\xca\xb6\x4f\x07\xcd\x97\x49\x47\x84\x99\x92\x7c\x33\xb8\xe7\x11\xe7\xbb\xd3\x6f\x37\x33\x41\xb0\xef\x94\x1d\x93\xee\xeb\x0a\x7f\x86\xfe\xa4\x92\x9c\x1c\x06\xd4\x6d\xcd\x82\xb8\xe5\xff\xf5\x5f\x42\x69\x16\x84\x64\x4e\x0c\x11\x51\x40\x78\x5b\x29\x72\x52\xf2\x28\x50\xc0\xf9\x07\x81\x04\x8e\xbd\x48\x39\x78\x76\xf4\x13\x1c\x73\xfc\x77\xaa\xb5\x30\x18\xc5\x2a\x3e\x6b\xa8\x2b\x03\xb8\x08\x92\x7f\xb2\x4f\x12\xbe\x03\x82\x89\x07\x84\xbf\xc7\x50\x97\x42\xdd\xd0\x53\x75\xe5\xdf\xdf\x15\x9a\x60\xc7\xc7\x0c\x44\xd9\xa3\xaf\x1a\xf3\xa1\x06\xb4\x36\x4b\xad\xe1\x98\xb1\x85\x6c\xf5\x31\x79\x28\x66\xb8\xa0\x8e\x15\xef\x61\xa7\x63\xd5\xfa\x59\x69\xab\xe6\x64\x36\xda\xaa\xe7\x64\x8c\xaa\x4c\x3f\x53\x84\xef\xe3\x0c\xd1\x2a\xd6\xcb\x0c\xad\x52\x36\x23\xb4\x3e\x0d\xd6\x1b\x60\x80\xaa\x5c\x9b\xf9\xa9\xb7\xaf\xc1\xf8\xd4\xe0\x9d\x87\xe9\xd9\x93\xd5\x80\x9f\xc0\xec\xac\x72\x63\x8c\x0e\x0a\x9f\xe4\x80\xca\x70\xe3\x80\x2a\x7f\x5b\xbc\x8f\xc9\xff\xff\x00\xff\x11\xec\xe1\x0f\x84\xa3\x98\x0b\xe6\x31\xfc\x81\x61\x0f\xbf\xc7\xbf\x7e\x24\x01\x52\x11\xb6\x31\xc5\x11\x7b\xaf\x92\x74\x09\x29\x46\x06\x98\xd3\xf7\xea\xf3\x27\xfd\xf9\x57\xd0\x40\x53\x0c\x41\xa0\xe3\x30\x08\xde\x43\x34\x00\xcc\x3f\x81\xd9\x43\xf8\x5e\x7f\xfe\xa4\x3f\xff\xfa\x51\x7f\x87\x50\x90\x21\xe5\x75\x81\x08\x05\x0c\xd3\xa6\xba\xfa\xdc\xc0\x97\xed\x47\x94\xd5\x05\x6a\xfc\x74\x7d\xfd\xfd\xd7\x8f\x44\xa0\x28\xe0\x2a\x0a\x6e\x2c\x31\xe0\x88\x30\x4c\x3f\x11\x86\x22\x1e\xb0\xf7\xf0\x3d\x8e\x3e\xb4\xca\xfd\xfa\x51\x17\x84\x9e\x44\x71\xf0\x5e\x17\xf8\xa0\x2b\x78\x55\x8f\x2a\x78\xaa\x98\xd1\x20\x86\x98\x91\x75\x81\xaa\x47\xed\xf6\x54\xb1\xa6\xbd\x10\x85\x11\xa1\xa2\xd3\x5e\xdd\x43\x0d\x4f\x97\x53\x33\x44\xa2\xd0\x8b\x50\x20\x08\x16\xf5\x14\x41\x50\x47\x1c\xa8\x29\x62\xf1\x87\x56\x39\x55\x91\xc9\x03\x29\xf4\xe4\x13\x61\x1f\x64\x55\x08\x24\xa7\xa6\xa7\x9e\x35\x55\xb0\x0e\x46\x74\x57\x24\xab\xdf\xa7\xca\xe9\xad\xe5\x71\xf1\x62\xb1\x84\x9b\x22\xb9\xcb\x0a\x63\x49\x6d\xb2\xed\xc3\x5f\xc2\xdf\x8a\x7b\x24\xba\x27\xc1\xa3\x4f\xdf\xf3\x47\xfa\x7d\x83\x7d\x61\x3f\x86\x8f\xf4\x9e\x04\x9f\x82\xf7\x7c\x49\xb0\x96\x6a\x1c\x1c\xa1\x59\xea\x4f\x2f\xcd\xfe\xb0\xdf\x1d\xb3\xd4\x97\x9d\x80\x2d\xf2\xe6\xa1\xb8\x29\xf2\x1b\x94\x66\x65\x92\x17\x5e\x5a\xa0\x4d\x76\xbc\xf7\xd2\xee\x76\x59\xec\x56\xbf\xfb\xc7\xcc\xd8\x5d\xa1\x2a\x6c\x60\x9a\x57\xaf\xee\xf3\x22\xbd\x98\x02\xec\x61\x7f\x2c\x0f\x59\xb2\xf1\xf3\xed\xb1\x4c\xb6\xab\x4c\x41\x1c\xc1\x44\x96\x91\x04\x22\xcf\x21\xf9\x6e\x7b\x33\x1f\x01\xa0\x9b\xe3\xfd\x3f\x15\xdd\x28\xc5\xa5\xf0\x28\x7e\x94\x87\xf3\xc2\x47\x10\x62\xe6\xe7\x18\xf1\x48\x78\xea\x6f\x79\x78\xa6\x90\x01\x7e\x85\xc1\x79\x8d\x41\x9a\xfc\xca\xf4\x84\x84\xa1\xcf\x91\x88\x58\xa1\x8e\xfa\x94\xf0\x0f\x0c\x85\x5e\x80\xe2\x28\x91\xf5\xa8\xf2\x3a\x91\x4c\x30\x92\xb5\xa2\x02\x9c\x52\x70\x2c\x64\x59\xd0\x41\xcb\xf6\x04\xb4\x27\x54\x59\xb0\x84\x16\x2b\x82\x70\x2c\x7b\x8d\x08\x58\xd9\x80\x6e\x18\x47\x48\xd0\x02\x51\x0e\xf6\x50\xe0\xb5\x41\x78\xbb\xa5\x08\xcc\x8e\xc0\x19\x01\xf2\x45\xf1\x10\x94\x80\x14\x53\x68\x2a\xf4\xd4\xdf\xd0\x35\x02\x7d\x4b\x62\x04\xaf\xf5\x5b\x1f\x11\x08\xbb\x24\x02\xf0\x55\xe1\x11\x38\x5a\x30\xb0\x13\x35\x9b\xf2\x29\x22\xb1\x07\xb1\x4f\xe5\xe0\x81\x21\x50\x28\x7c\x44\x31\x93\xbd\x4b\x62\x48\xef\x19\xeb\x24\x9f\x18\x12\x26\x85\xe0\xca\x0e\xa6\xe1\xa0\x93\x03\x6b\x6e\x48\xda\x15\x45\x3f\x9b\xc0\xd5\xcc\xa8\xf4\xeb\x84\xa8\xd4\xfe\x51\x4c\x0a\x30\xbf\x04\x6d\x0a\x81\x2c\xa5\x3f\x53\xc4\x23\x95\x5e\x2a\x50\xc3\x17\xca\x3e\x05\x90\x8c\x34\xe0\x60\x56\x2c\x48\x84\x08\x09\x20\xd9\x7d\xa1\x5c\x50\x20\xd7\x13\x83\x24\xaa\x38\xf6\x19\x82\xfb\x4d\x1c\x33\x1f\x71\x01\xc9\xeb\x20\x93\x16\xe2\x20\xa6\x87\x98\x79\xca\x0b\x82\x88\x18\x51\xb0\xa8\x8e\x10\x0d\x56\x60\x53\xc6\x19\xc4\x16\x45\x71\x2c\xe4\xbf\x1e\x41\x01\x8e\x1e\x91\xb8\x47\x22\x89\xc0\x23\x31\xaa\xfc\x12\xb1\x40\x70\x79\xc1\x62\xf2\x7d\xe3\x47\xb2\xaa\x8f\x44\xc0\x0b\x50\xb0\x29\x7f\x04\xc8\xe8\x08\x7a\xc3\xd0\x17\x88\xc8\xb6\x24\x56\xbe\x1c\x66\xd9\x6d\x38\x3c\x30\x49\x4c\x42\x27\xf2\xd7\x3a\xc0\x20\x50\xe9\x37\xb5\xd1\x39\xa4\x61\x47\x24\xe2\x08\x47\x11\x62\x21\x64\xa7\x94\xb8\xb0\x38\x02\xc3\x7f\x06\x09\xd9\x11\xe6\xf1\x4a\x1b\x3a\x0a\x20\x18\x0c\x6e\x3a\x72\x66\xc0\xda\x2d\xe4\x21\x62\x18\x06\x1e\x32\x57\x42\x3a\xbf\x40\x8e\x20\xc4\x19\xa3\x7e\x65\xea\x2a\xa7\x1e\xf2\x65\x81\xc9\x7f\x90\x50\x15\xcd\xad\x72\x51\x23\x10\x21\x4d\x8e\x37\x29\x7c\xc4\x41\xab\x0c\x7e\x8b\xb2\xfa\xcf\x11\x50\x49\x54\xd1\x0a\x66\x8a\x30\xe5\x76\x07\xaf\x23\xf5\x5a\xd2\x8e\x17\x20\x8e\xe5\x90\x85\x21\x62\x34\x46\x8c\xc1\xd8\xac\x10\x01\xe2\x43\x2c\xa2\xf2\x05\x43\x01\xa1\x72\xee\xbf\x7f\x24\xb1\x36\x1b\xa4\xbc\x80\x18\x67\x3e\xe2\xe0\xcf\x23\xb7\xcf\x00\x30\xb5\x48\x08\xf2\x41\x46\x88\x45\x72\x0d\x31\xb0\x08\x66\x60\x8c\x0e\x39\x01\x09\x0a\xe5\x62\x84\x84\x5e\x14\xec\x80\x25\x26\x90\xf9\x95\x43\x12\x50\x1a\x22\x1a\x06\x60\xd6\x4a\xe5\x9c\xa9\x75\x23\xd9\x09\xad\x99\x8a\x52\x25\x22\x4e\x68\x81\x38\x63\xda\xa5\x43\x65\x93\x5d\x21\xcc\x21\xaf\xaa\x4a\x4e\x86\x42\xac\x12\x98\x12\xf0\xb3\x53\x49\x58\xab\x54\xac\x18\x6e\xaf\x44\x08\x99\xca\x21\xdd\x19\x86\xd4\x8d\x34\x8a\x0b\xc4\x03\x70\x33\x56\x61\xdf\xc0\x14\x57\xc4\xf2\x90\x1b\xc7\xa1\x72\x4c\x63\x2a\xf7\x1c\xb8\xa6\x49\x14\xe5\xe2\x54\x36\x6f\x72\xb6\x20\x79\x19\x0b\x60\xc9\x40\x82\xdf\x40\xfe\xa5\xcc\xb5\x7f\x8e\xe4\x11\x37\xaa\x74\x85\x84\x7a\x0c\x89\x95\x4f\x10\xe5\x81\x87\x7d\x8a\xc0\x90\x5d\xf2\x3c\x1e\x47\x28\x14\x6a\xce\xc1\x08\x9e\x82\xfb\x0e\x34\x07\x41\xd8\x62\xad\xfb\xc7\x01\x68\xe4\x65\x49\x22\x88\x9a\x5e\x06\xa1\x85\x3d\xae\x50\x8b\x63\xf6\xfd\x0d\x9c\x1e\x7e\xcf\x66\xee\xd5\x6a\xef\x71\xee\xd5\xfa\xd3\xcb\x0f\xe9\xee\xeb\x56\x6f\x8f\xab\xdd\xb6\x4c\xf2\x6d\x76\xf0\xba\xa7\x28\x79\xea\xf4\xd2\xfc\xd1\x43\xd9\x66\x6f\x1c\x4c\x7e\xa8\x37\xd7\x25\xb5\x67\x48\x0a\x50\xd1\xb5\xbb\xf7\xd6\xd5\x67\xe4\xaa\x66\xd7\xbc\x6b\x91\x90\xd1\x8b\xc7\x0c\x68\xa3\x98\x4d\x92\x58\x7a\x31\x19\xa8\xdd\xdf\xf2\x02\x71\xa7\x8b\xc0\x64\x20\xfd\x78\xb4\x15\xc0\x8f\x49\xf1\x90\xf9\xaa\x9c\xad\x02\x96\xe2\x55\xbe\x7d\x38\xfa\xc7\xff\xf1\x90\x1c\x32\x1f\xc4\x9d\x7f\x26\x59\xab\x37\xec\x67\xec\xb1\xf7\xc0\x37\x88\xe4\x1a\x1e\x8a\x7d\xea\xd1\x47\xc2\x57\x58\x8a\x57\x28\x86\x68\xa0\xf4\x9e\xf0\x15\x14\xf1\xa8\x2f\xdf\xf9\xf4\x93\x00\x81\x8c\xf8\xb2\x86\xfc\xef\xfb\xc6\xa7\x1e\xc1\xef\xc3\x47\x9f\xde\x13\xfc\xb8\x28\x00\xa3\x73\x10\x5d\x4c\xc3\x59\xee\x05\x6d\x76\x87\xcc\xaf\xa6\x4d\x9e\x02\x3c\x64\x3e\xdd\xfc\x56\x7e\xdb\x67\x3f\x81\x3e\xee\x6e\xf7\xf4\xf9\x1d\x9c\xad\x6e\x74\x00\xd7\xcb\x32\xb9\x2b\x32\x74\x9f\x1c\x75\xc4\x92\xa3\x57\x1e\x6e\x50\xf5\x7b\x3e\xa4\xaf\x79\x79\xef\x2b\x1a\x5d\x0c\x4a\x52\x96\xec\xd4\xfd\xee\x90\x7f\x97\x6c\xed\xaf\x41\x57\xf2\xd8\xde\xa6\xaa\x63\x45\x4d\x35\x11\x19\xc4\x43\xa8\x37\xaf\x82\x1f\xcc\xab\xb0\x84\x1a\xbb\x03\xef\xa2\x45\x47\xa9\x39\xe7\x4e\x65\x97\x70\xa6\x73\x67\x1f\xb0\x49\x5c\xbc\x53\x79\x01\x23\x6e\xc1\x78\xf6\x55\xd7\xff\x0a\x34\x4b\x22\x14\x09\x06\x19\xf4\xc2\x20\x16\xb7\xf2\xf4\x13\x43\xa6\x1c\x81\x63\x4e\x3d\x2a\x25\x5f\x16\x60\x1e\xc8\x9f\xe2\x96\x12\x8f\x21\xc6\x19\x51\x69\x69\x45\x00\x11\x93\x23\x8f\x42\x1c\x76\xce\x88\x7c\x14\x4d\x19\xe1\x89\x5b\x22\x3c\x29\x0f\x62\x06\x71\xb2\xc3\x40\x40\x1e\x1e\xaa\xd3\x26\x51\xd9\x58\x18\xd2\x00\x74\x51\x90\xf7\x1c\x23\x4c\x03\xaa\xc2\xe4\x13\x50\x86\x11\x80\x85\x18\xe4\x62\xc7\x88\x53\xc1\x54\xb0\xf3\x40\x25\x0f\x8c\xc8\x87\x08\xc5\xa1\xa8\x92\xe3\xb0\xdb\x08\x85\x11\x87\xa4\x41\x90\xcc\x41\x76\x88\x0a\xc2\xbc\x40\xfe\x77\xcb\x35\x7e\x81\x27\x25\x74\xf5\x9b\x79\xf1\x2d\x40\x63\x38\x90\x92\x65\xc4\xe4\x01\x00\x8e\x81\xa1\xf0\x20\xd5\x5c\x44\x63\xf6\x89\x04\x88\x84\x38\xbc\xad\x4b\x04\x48\x44\x52\x12\xf7\x48\x88\x82\x98\x45\xf2\x97\x04\x45\xb1\x1a\xa0\xaa\x31\x4a\xbd\xc0\xa3\xf4\x36\x94\xaf\x23\x78\x8e\xeb\x42\xb1\xac\x13\xd7\x20\x22\x79\x3e\x25\x71\x0d\x1c\x62\xf0\xcb\x66\x3f\x69\x34\x6e\x21\xd5\x41\x10\x4b\xb4\x02\x4c\xe4\x19\x8b\x44\x11\x05\xbd\x1d\x11\xb1\x1c\x07\xc1\x85\x4a\xea\x23\xa2\x28\xfa\xa0\xc2\x28\xc8\x03\x0e\x0a\x62\x1a\xdd\x82\x97\x9b\x00\xe7\x85\x50\xb6\x48\x20\xbd\x63\x14\xcb\x11\xe5\x1e\x61\xb7\x04\xf2\x4c\x00\x72\x72\xe8\xe5\xdc\xca\xc9\x90\x98\xdc\x92\x48\x7f\x08\x3c\x8a\xeb\x62\xf2\x27\xbb\x95\x7f\x13\x79\xdc\x96\x5d\x42\x1c\x52\x1b\x60\x14\x43\xa2\xbd\x48\x9e\xef\x61\x86\x39\xa7\x1f\x5a\xc4\xf7\xeb\x47\x12\x79\x00\x5b\x08\x2a\x67\x8a\x40\xe4\x03\x41\x69\x04\x3f\x6f\xe1\xe0\xcf\x39\xe4\x34\xd0\x85\xb8\x24\x3e\x7e\x4b\x42\x78\x2f\x1f\xc3\xa6\x4c\x28\xeb\x84\x0d\x0c\x5d\x28\x90\x75\x82\x5f\x3f\x86\x5e\x7c\x0b\x1a\x08\xf8\x1a\x54\xa5\xb0\x2c\x80\x6f\x45\x05\x05\x7b\xa2\x2e\x24\xbc\xf8\x56\x0e\xad\xfa\x54\x15\x89\xbc\xc0\x8b\x6e\x2b\x00\x91\x17\xd6\x25\x42\x2f\xfe\x75\x01\x13\xae\xd8\x87\x83\xf3\xd6\x9f\x66\xb1\xdb\xdd\xa1\x3c\x1f\xbb\xed\x01\x36\x8d\xdd\xb6\x2b\x2f\x61\xb7\x36\x0c\xc9\x6e\x77\x87\xf2\x2f\xc1\x6e\x23\xc4\x24\x73\xc4\x18\x63\x72\x0b\x0f\x14\xe1\x28\x0a\x21\xfb\x6a\x14\x85\x10\x9b\x58\x60\x2c\x97\x4c\xf5\xf3\x3d\xe1\x90\xc1\x81\x10\xe3\xab\x40\x41\x53\x57\x3d\x69\xb0\x9f\x42\x0d\x5e\xbd\x0d\x65\x45\xaa\x92\x1c\x49\x08\x72\xe1\x02\x04\x5e\xfd\x7c\x4f\x28\x12\x11\xe3\xb7\xea\xdf\x40\xbe\x0f\xb0\x5c\xb5\xcd\x73\x48\x78\xa8\x9f\x01\x44\x44\x69\x0c\x19\x5e\x19\x85\x34\x5e\xe1\x07\xaa\x7c\xdd\x30\x0a\x6f\x29\x41\xa1\x4a\x05\x16\x4a\x1e\x27\x17\x7f\x4c\xe0\x97\x2c\x73\xab\x7e\xc8\x12\x55\x41\xea\xe9\xda\xf4\x3d\x09\x25\xbf\x0b\xe4\x82\x86\xa4\x1a\x14\x61\x2e\x19\x46\x88\xe0\xfe\x01\xc7\x11\xaf\x1f\x88\xf8\x04\x39\x60\xdf\x93\xf8\x96\xc4\x7a\x80\x38\x0c\xaa\x64\xaa\x70\x17\x0e\x97\xe4\xea\x29\xf8\x44\xf1\xad\xfa\x4d\xb1\x2e\xad\x6b\x51\x02\x25\x62\xf5\xe3\x3d\x11\xc0\x1d\xa1\xae\xfa\xc2\x34\x54\x55\x4b\x3f\x7d\x92\x8c\x10\x7e\x57\x2d\x55\xb5\x14\x16\x44\x78\x1a\xbf\x00\xb1\x4f\x80\x30\xec\x92\x4d\x47\x02\x15\x81\xac\xea\x64\x80\x18\x91\xd3\x49\xdf\xab\xd0\x0d\xb7\x92\x8f\xaa\xef\x04\x06\x2d\x86\xc0\xfe\xf2\x31\x0c\x60\x3f\xe2\x71\xa4\x9e\x03\x28\x1c\x69\x86\x8e\x89\x50\x11\xcd\x03\xaa\xa2\xa8\xc5\x50\x3c\xa4\x70\x73\xf5\x5e\x8d\x31\xb9\x95\x63\xcc\x34\x04\x89\x80\x39\xc8\xed\x31\x8e\x6f\x61\xac\x68\xdd\x39\x6b\x88\x89\x31\xc4\xc4\x1a\xe2\xaa\x96\x1a\xc8\x6a\x84\xc5\x2d\xd7\xf4\xae\xde\x5b\xe3\x6b\x0c\xaf\x35\xba\x55\x15\x85\x40\x35\xb8\xcd\xd8\x9a\x43\x0b\x23\xab\xee\xe9\xa0\x6b\x30\xb4\x52\x00\xa1\xef\x29\x0a\xc4\x2d\x45\x34\x26\x58\x45\xcd\xaf\xc9\xb1\x22\xd0\x9a\x64\xa1\x10\xd1\x94\x0c\x3d\x94\xa4\x0e\xf7\x5f\xd4\x78\x88\x60\xc3\xd6\x8b\x09\xdf\x56\x4b\xb9\x5a\x6a\xb0\xce\xab\x75\xa8\x1f\xd4\x52\xd5\x4b\xf6\xd7\x8f\x04\x03\x7c\xb9\x6c\x63\x14\xe1\x20\xac\x1e\xbd\x58\x2d\x74\xf9\x4e\x3f\xb4\xd7\x79\xac\x96\x39\x89\x19\x83\xbc\x7e\x18\xb2\x09\xd6\x5c\x24\xb4\xb8\x88\x2c\xd5\x7c\xe5\x0a\x19\x55\xb5\x7a\xb2\x50\xbb\xd5\x0b\x4a\x23\x50\x41\xa0\x0d\x17\xa1\x75\xc7\x7f\xfd\x28\x14\x2b\xba\xe5\x0a\x0b\xc5\x81\xb8\x26\x14\x78\xc5\x1b\x3a\xe1\x9a\x4c\x00\xa0\xae\x41\xb1\x9a\x5a\xf8\x17\x68\x4e\x35\x07\xaf\x63\x4d\x24\x44\xa5\xf8\xab\x89\x24\xd6\x44\x02\x10\x74\x0d\xd5\x74\xac\xfe\x7d\x2f\xe0\x22\x15\x5a\xbe\x25\x16\x3e\xc4\x42\x95\xe8\x0e\x68\x8e\x62\x40\x22\x56\x23\xfa\x49\x91\xbb\x85\x16\xb1\x30\x26\xb1\xee\x89\xe2\x28\x46\x17\x89\xd5\xfb\xea\xe9\x13\x09\x4c\x71\x21\xf8\x25\x0c\x22\x3a\x4d\x62\xd0\x3b\xa0\x4b\x62\xa8\x3e\xcd\x92\x18\x0e\xbb\x72\xb7\xda\x15\xe7\x93\x1a\x06\x00\x4e\x93\x1c\x5c\x00\x96\x48\x0f\x5d\x38\x52\x82\xd0\x6f\xff\x12\x52\x84\xdc\x41\x29\xec\xa3\xf2\x54\xa3\x24\x5b\xf8\x97\x2a\x86\xa6\x92\xda\x84\xea\xc8\xd1\x94\x52\xb5\xbc\xea\x5b\x5d\x06\xea\xdc\x36\xa5\x68\x53\x06\x00\x82\x7d\x45\x44\x30\x87\xfd\x32\x0e\x23\xd8\x97\x68\x00\xf2\x7d\x44\x85\xda\x40\x02\x06\xcf\x01\xe4\x06\xa5\x88\xca\x1d\x4b\x2e\x8d\x90\x82\x60\x41\xe4\xc9\x2d\x42\x11\x1c\x23\x28\x8a\x20\x17\x0b\x9c\x72\x20\xd7\x1f\xe4\xb0\x27\xa0\x7c\x87\xf2\x71\x14\xc2\x61\x88\x41\x00\x52\xc9\x7e\xd4\xc6\xcf\x80\x1f\x53\x14\xd0\x10\xba\x4d\xe3\x28\x04\x74\x04\x0b\xe0\x59\x04\xc0\xc6\xa9\xc4\x5e\x3e\xc3\xfe\x86\x91\x88\x69\xac\xbf\x33\xc8\x5a\x1e\x48\xf4\x23\x44\x18\x83\x93\x1d\x25\x81\x3c\x64\x20\xcc\x25\x1e\x72\x4f\x12\xba\xbb\x14\xe0\x87\x58\x75\x37\x8e\x39\x1c\xb9\x42\xb8\x74\x93\xcf\x81\xda\x89\x8d\xe1\xf9\xf5\x63\x8c\xa2\x18\xb8\x44\x48\x71\x78\x2b\x0f\x0f\x11\x87\x33\x4b\x8c\xa3\xd8\x8b\x55\x76\x5b\x68\x9e\xc4\x92\xaf\x61\x21\xe4\xf0\x48\xbe\xcc\x6f\x23\x24\x18\x8b\xe0\x91\xcb\xe2\x11\xc2\x24\x8e\x61\x74\x78\x14\x12\x79\x92\x25\x90\xd0\x27\x84\x0c\x89\xb7\x21\x64\x99\x8a\x3c\xa2\xf2\xb5\x79\x2a\x89\x62\xa4\x0e\x5b\x42\x6e\x43\x54\x60\x85\x2d\x0e\xa2\x58\x9e\x8c\x83\x08\x90\x65\x5c\xca\x9d\x8c\xc4\x21\xcc\x95\x08\x58\xe4\x59\xa8\xff\xfa\x51\x20\x2e\xe0\x74\x28\x8f\xe6\x61\x28\x4f\x45\xaa\xab\xf2\x19\x43\x94\x43\x4c\x43\x95\xb2\x2d\xa6\x10\xf1\x90\x72\x95\x97\x59\x44\x72\x23\xe0\x01\xa4\x28\x62\x88\x45\xc0\xe6\x03\xca\x54\x88\xef\x80\x0b\xee\x09\x44\xe5\xa1\x56\x1e\x56\x31\xa5\xfc\x56\x20\x1c\x53\x0e\x27\xac\x20\x64\x91\x07\x09\xcd\x03\x38\x4f\x31\x2a\x88\xdc\x26\x04\x8f\x03\xb8\x50\x0c\xc3\x50\x9e\xe3\xb1\x3c\xdd\xc7\x88\x47\x98\x7b\x60\x31\x14\x62\x4e\xe5\x2f\x7a\x0b\xa9\x4f\x43\x22\x02\x8f\x23\xc1\xb1\xca\x2b\x06\x39\x2e\x5b\xdd\x92\xfd\x0c\x62\x46\xe4\xe0\xe2\x30\x0c\xe9\xad\x7c\x0e\x08\x87\xe7\x48\x04\x9e\x7c\x8e\x49\x04\xcf\x31\x8b\x21\x4e\x1f\xa5\x50\x3e\xc2\x94\xdd\x42\xdc\x3e\xca\xe0\x3b\x56\xdf\x09\xa6\xb0\x9d\x06\x18\xea\x87\x90\xc5\x3e\x44\x58\xe0\x30\x80\xf2\xf2\x7c\x88\xb0\x88\x43\x06\xe0\x30\x51\xc5\x23\x38\x59\x5a\xe8\xfc\xfa\x31\x42\x71\x10\x41\x88\x10\x11\x73\x12\xde\x46\x28\x66\x84\xca\xf3\x70\xc0\x38\x97\x03\x14\x85\x6a\xaf\x8d\x79\x28\xa5\x8c\x08\x47\x44\x8e\x77\x18\x72\x21\x6e\xa5\x48\x4f\xb8\xfc\x1e\x73\x11\xc8\xef\x5c\x50\xc8\x4f\x42\xb1\x80\x9b\x3d\x4a\x42\xce\xc1\xa3\x2c\x96\x82\x61\x14\x63\x65\xde\x15\x10\x45\x71\x4c\x10\x2f\x90\x50\x40\x97\x42\xc2\x30\x94\x9d\xe5\x1c\x2b\x85\x46\x24\x29\x2c\x44\x82\x47\x20\xe3\x50\x12\x0b\x90\x21\x79\x1c\xc9\xd9\x0a\x23\x16\x4b\x38\x21\x8b\x42\xf1\x21\x42\x61\x1c\xf1\x08\x42\xb3\x30\x2a\x37\x70\x12\x11\x2e\x8f\xe0\x94\xc9\xd9\x8d\x51\x88\x45\x14\x43\x92\x15\x11\x87\x2a\x2f\x31\x87\xf8\x28\x38\xa6\xe2\x36\x46\xa1\x88\xc1\x53\x97\xe1\x80\x28\xc1\x20\xe0\x01\x04\x19\x11\x0c\x52\x4d\x9b\x83\xf5\xeb\x47\xc9\x9f\x04\x97\xe4\x24\x65\x1a\xc5\xbf\x80\xba\x48\x48\x05\xa8\x4c\x22\x8c\xe5\xe8\xb0\x28\xa4\x4a\xa5\x22\x40\xd9\x10\x70\x1a\xc2\xfa\xa7\x52\x30\x15\x88\x63\xc8\xf6\x8a\x51\x10\xf2\xd0\x0b\x24\x5b\x03\xfd\x14\x8d\xb8\xec\x5e\xcc\x84\x64\x17\x92\xb8\x81\x76\xe2\x90\x4a\x62\x07\xff\x1f\x39\x2c\x18\x83\xa0\x05\xf9\xa0\xa8\x7c\xa6\x01\x8f\x25\xbb\x23\x94\x48\xa2\xc7\x21\x0b\x95\x1a\x26\x02\x4d\x16\x8e\xa2\x00\x16\x4f\xc0\xe0\x1c\x86\x03\xc9\x4f\xe4\x62\x02\xe5\x15\x0a\x63\x48\x81\x4b\x51\x14\x62\x08\x84\x0c\x87\x28\x44\x71\x40\xa1\xaf\x52\xc8\x07\xd9\x58\xc4\xf0\x4c\x14\x33\x25\x58\x70\x35\x16\x42\x49\xc8\xc6\xd8\x80\xa9\x1a\x06\x3d\x5b\x8c\x38\x16\xa0\x28\x12\xb1\xe2\x86\x22\xe2\x2a\x95\x2f\xc7\x81\xe2\x11\x42\xe5\x64\x95\xcd\xab\xcd\x80\x29\xc5\x52\x08\xdc\x94\x12\xaa\xc4\xf4\x50\x80\xf2\x87\xb3\x40\x89\x3e\x71\xac\x36\x2d\x1c\x47\x2a\xb5\x60\x08\x8f\x91\x92\xb7\x42\x26\xd4\x29\x2f\x88\x60\x89\x52\x12\x02\x33\x0f\x03\x12\xaa\x1c\x80\x11\x70\x53\x60\xa2\x02\xc5\x14\x03\x33\xa5\x5c\xa5\xdc\x0c\x23\x1a\x40\x6b\x02\xc7\x90\xef\x93\x87\xb0\xf7\x84\x31\xe7\x4a\x8b\xa8\xb9\xa1\xe0\x2a\x99\x63\x4c\x80\xb7\x53\x2a\x84\x2c\x4f\x20\x65\x6e\x2c\x39\x05\x64\x06\x95\x4b\x12\x9e\x03\xa1\x0e\x23\xc6\xe8\xfc\xfa\x51\x35\x04\x78\x86\x8c\x8a\x5b\xd0\x79\x71\x90\x28\xb9\x5c\xe2\xa0\x14\x43\x21\xf8\x2a\x62\xd8\x81\xb1\xa7\x13\x71\xc3\x10\x4a\xee\x10\x23\xc1\x04\x85\x46\xe5\x4a\x00\x93\x04\x2c\x37\x4e\xc9\xb2\xa9\x9c\x79\x41\xe1\xe8\x07\xb9\xc5\x24\x25\x89\x00\xa6\x22\x42\x91\xe4\x42\x11\x0a\x08\x67\x91\x2c\x2f\x18\x03\x02\xe6\x31\x80\xa3\x21\x06\x02\x8a\x85\x80\x1d\x21\x08\x42\xb0\x66\x8c\x22\x39\xf2\x11\x12\xa1\xd2\x60\x92\x30\x80\xef\x5c\x36\x4f\x02\xc4\x05\x58\xd7\x23\x16\xc6\xa0\x7a\x0c\x09\x83\xf2\x1c\x33\x95\x95\x1e\x26\x80\x53\x95\x5e\x34\x84\xe4\x1d\xf6\x40\x00\x21\x85\x72\x4a\xb8\xe4\x55\x72\x2a\x02\x44\x03\x16\x7a\x02\x45\x41\x08\x50\x83\x80\xc8\x55\x14\x4a\xe6\x24\x9f\x63\xc5\x42\x03\xca\x09\x9c\x94\x43\x1e\x83\x4d\x67\xac\x4c\x30\xc3\x20\x88\x40\x59\x28\x22\x98\x08\xc2\x61\xb7\xe3\x51\x00\x54\x1a\x45\x20\xb9\x84\x21\x8d\xb9\x4a\x4e\xcb\x20\x95\x07\x68\x49\xe5\x10\x40\xbe\x0f\xca\x62\xa6\x88\x3a\x62\xc0\x42\xe2\x30\x86\x69\x26\x51\x40\x80\x9f\x92\x48\xb5\x66\xe0\xfe\xeb\xc7\x00\x05\x21\x83\xc3\x5c\x14\x08\x16\xdf\x42\x0e\x7b\xd8\x9d\xe3\x28\x86\xf0\xe2\x11\x0b\x43\xc8\x14\x85\x03\x60\xc8\x3c\x94\x3b\x56\x8c\x28\x8e\xb0\xdc\x75\x49\x40\x88\x52\xcf\x02\x18\xc2\xb0\x5a\x3c\x8c\x0b\x30\xbf\x8c\xe4\xbe\x05\x53\x13\x48\x21\x80\xe0\x2a\x11\xa6\x00\xde\x22\x18\x51\x43\x8f\x39\x98\xa3\xc4\x41\x4c\xab\xa9\xbb\x15\x28\x0e\x43\xac\xd2\x6c\x11\x11\x7b\x01\x22\x9c\x2b\x45\x6b\xc8\x21\xf6\x83\x85\xbd\x94\x50\x62\x01\x9c\x96\xe3\x18\x8e\x90\x01\x53\x7a\x19\x12\x82\x1d\x5a\xc0\x48\x08\xa9\xa0\x19\x11\x00\x86\xc4\x38\x52\x73\xa0\x04\x2e\xcc\x75\x96\x5e\xa6\xe4\x9f\x38\xa2\x7a\xd0\x40\xfc\x0b\x21\x97\xac\x3c\x2e\x11\x60\x58\x98\x46\x55\xae\x4f\x98\x0c\xc6\x54\xe2\xde\x88\x0b\xcd\xe0\x14\xf8\x28\x64\x31\x70\x10\xe8\x0d\x44\xd9\xa6\xc0\x41\x30\x89\x34\xab\x02\xb4\x62\xca\x38\x68\x65\x89\xa0\x1a\xbe\x1c\x7b\x11\xcb\x7f\x25\x8b\x63\x11\x7c\x0f\xc3\x30\x56\xf2\x20\xcc\x8d\xa0\x4c\x10\x90\xff\x18\x01\xa9\x21\x16\x2c\x52\x19\xe7\x09\x05\x1b\xb5\x00\x96\xa3\x31\x38\x60\x11\x1b\x63\x95\x67\x94\x49\x01\x0a\x6e\x3a\x04\x10\x2c\x15\xfa\x52\x03\x62\xd7\xcb\x51\x57\xea\x38\xc2\x94\xee\x1e\x8b\x80\x03\x0b\x8a\x74\x3e\x79\xa6\x46\x29\x0e\x84\x52\xcc\x28\x5d\x1e\xa7\xa0\x29\xe1\x6a\x3b\x08\x10\x8e\x84\xc4\x16\x76\x76\xc8\x9c\xcb\x25\xb2\x94\x42\x92\xfe\x50\xee\x52\xf2\x19\x07\x4c\xce\x45\xa4\xf5\xf8\x04\x05\x9a\x6f\x86\x42\xe5\xe0\x0e\x21\x57\xb4\xa4\x54\xc5\xb8\x38\x67\x42\xca\xf9\x84\xe9\x8c\xc5\xc0\x1c\x42\x84\x41\x58\x0f\xa4\xa8\x03\x58\x9b\xbd\x5d\x7a\x1e\x35\xce\x53\xae\x33\xa9\xf9\xf9\xc5\xe5\xf7\xa0\xcf\x95\x1e\x02\x3f\x80\x7c\x99\xd1\x4a\x92\xa6\x87\xec\x78\x3c\xdb\x21\x76\x00\xde\xa4\x33\xac\xab\xfe\x82\x23\x6c\x17\x8c\x3c\xc1\x3e\xdc\x15\xf9\xca\x4f\xb3\x35\x98\x56\xff\x15\xce\xb1\x55\xfe\xd5\x2a\xfd\x2a\x57\x67\xd4\x23\x97\xbf\x08\xae\xff\xf7\xf5\x0b\x9f\xe0\xff\x86\x63\x6a\x95\xee\x72\xe3\xc3\x7a\x88\xd9\xca\x97\xfc\xdd\x47\x3c\xf6\x43\x9f\xa1\x48\xf8\xa1\x2f\xdf\x43\x48\x3c\x8a\x70\x04\xc9\x8b\x10\x85\xe0\x73\xf1\x07\xb9\x66\x1f\x89\x6d\xee\xf1\x28\x65\xc2\xef\x9b\x00\xc5\x90\x69\x68\xa5\x6c\xd4\x22\xe2\x43\x18\xb7\xd8\x27\x08\x92\x8b\xc6\xf7\x3e\x79\xf4\xc1\xd7\x5b\x08\x08\xd4\x0b\x25\xde\x47\x8f\x3e\xbd\xa7\x2b\x04\xf6\xb4\x90\x09\xc2\x23\x3e\xf9\x14\xde\xd3\x96\x11\xc9\xa3\x8f\x38\x59\x51\x04\x4e\xc7\x24\xf6\xa4\xd8\x89\x03\x0f\x72\x43\x41\x39\x89\x2d\x8a\x20\x05\xa8\x4f\x91\x3c\xab\xb0\x78\xc9\x4d\x7e\x97\x20\x5c\x0b\xb1\x5b\xe8\xc5\xe1\xf9\x94\x1d\x77\xc5\x63\x76\xd0\x86\x64\x05\x3a\x64\x69\x7e\xc8\x56\xa5\x97\x96\xcf\xbe\x5f\x3d\x2d\x74\x74\x91\xb4\x56\x39\xba\xc8\xdf\x2e\x5a\x9c\x97\xce\x13\x64\x51\xc6\x6e\xa9\x8e\x64\xc8\x88\x3c\x5c\x84\xc0\xe2\x95\x3a\x9f\x07\x52\xaa\x8a\xd8\x27\xfe\x41\xdf\x47\x84\x85\x1f\x41\x9c\xc9\x10\x05\x61\xf0\xe8\x73\x14\x71\xb9\x6d\x83\xac\xc1\xe1\xac\xcc\x11\xdc\x37\x07\x48\x29\x8b\xa1\x8d\xef\x83\xfc\xb1\xc7\x05\xc2\x1c\xb0\x8b\x97\xdf\xd6\xbb\xc3\x4f\xe5\x6e\x57\xdc\x25\x07\xbf\xdc\x7d\xf9\x52\x64\x9f\x9f\xfd\xca\x51\xed\x6c\xb1\xf4\xe6\x85\x3f\x11\x48\x76\xfb\xde\x47\x61\x0c\x76\xd6\x3e\xa2\xe1\xcf\x01\x98\xca\x06\x95\xc1\xac\xf2\xc1\x8c\x91\x80\xdc\x66\x01\x18\x51\xcb\x0f\xb1\x32\x86\xd6\x01\xcc\x55\x82\x61\x38\x81\x50\xe6\x13\x24\xc2\x02\xac\x55\xa3\x47\x09\x1b\xce\xa4\xf1\x07\x8a\x11\x97\x42\x78\xe1\xcb\x47\x5f\x28\x5b\x97\xdb\x10\x29\x25\x33\xe8\x68\xe2\x58\xdd\xc4\xfe\x37\xbc\x85\x9f\x70\x0b\xe0\x55\xa5\xa0\x5d\x28\x57\x3d\x58\x4e\x16\x44\x04\x4c\x65\xbc\x1b\x99\x9e\xf6\xc8\x5f\xbc\xa0\xf5\x21\xcb\xca\xec\xa9\xf4\xd7\x79\x51\x66\x87\xff\x53\x3b\xa8\x54\xe6\x4a\xba\xc6\x9f\x19\xf1\xb0\x7f\xc6\x60\xc2\xfe\x82\xf3\x35\x95\xd1\x35\x83\xef\x60\x70\xc6\xc7\x39\xfa\xef\xe3\x6e\xf5\x7b\x76\xbe\x3b\xf3\x7e\x70\x93\xe4\x06\x47\xf5\x05\x62\x43\x07\x8a\x24\x5c\x78\xf7\x97\x91\x16\xb0\x94\x8e\x39\x89\x98\x3c\x4b\xcb\x83\x74\xf3\xa4\x4e\xd6\x21\x12\x11\x51\x87\x52\xf8\xc0\xa5\xa0\xc0\x6f\xab\xd7\xdc\xe3\x5e\xf3\x5b\xa9\x08\x75\xc9\xea\x35\x80\xf2\x28\xfe\xf5\xa3\x52\xa5\x1b\xba\x75\x43\xe3\x5e\xab\xe0\x2b\x4d\xb9\xa9\x64\xf7\x0c\x05\xbc\x47\x2d\x45\xfb\x6d\x03\xc2\xd2\xb1\x7b\x94\xfe\xfa\x31\xf4\x08\xb9\x0d\x95\x75\x4c\x18\x7a\x61\x63\x81\x22\xa5\x9f\xf7\x04\xee\x56\xc1\xec\x45\x8a\x45\xa4\x2e\x28\x7f\x92\x4f\x84\xdd\x12\x38\x1b\xe9\x12\xfa\x5f\x0e\x85\xf9\xfb\xe8\xb6\x86\xc7\xbd\xb0\x2e\x27\x7f\x7d\x22\xf2\x94\x23\x0b\xca\xa3\x94\x02\x89\x3d\x95\xca\x53\x3d\xb1\xaa\x01\xd6\x34\x50\x95\xe4\xea\xff\xf7\x24\x90\x93\x53\x37\xda\x34\x41\x74\x1b\xb7\xa4\xe9\x5b\x5d\x52\xb9\xf1\xe3\xf7\x84\x2f\x31\x94\x69\xc8\xd7\xb5\xf4\x9b\x8f\x2f\xa8\xfc\xb6\xcf\xfc\xe3\xee\x50\xb6\x2d\x9c\x2b\xcb\x53\x63\x49\xfc\x45\x8c\x49\xf0\x25\xc1\x08\x47\x01\xa8\x43\x3e\x04\xad\xa7\x08\x71\x2c\x02\x46\x71\xe0\x7d\xc0\xad\x27\xb3\xa4\xf5\xf4\xab\xf7\x91\x5d\x12\xaa\x0b\x13\xef\x03\xbb\x04\x9b\x86\xa6\xac\xfd\x64\x97\x6c\x9e\x7e\xf5\x3e\xc2\x29\x18\x13\x16\x86\x97\xd8\xfb\x60\x3c\x11\x14\x44\x84\xd0\x80\x13\x00\x61\x3d\xd9\x25\x31\xc0\x61\x28\x0a\x62\x1a\xd3\xf8\x12\x6e\x0f\x70\x2c\x85\xb0\x0f\xc6\x6b\x42\x50\xc4\x22\x1e\x53\xea\x7d\x20\x01\xd2\xe0\x2e\x23\x14\xc5\x11\xa6\x54\x44\xde\x07\x12\x59\x7d\x56\x0a\x83\x90\xc6\xe1\x25\x04\x4c\x88\x40\x7d\xf0\x21\x42\x58\x84\x70\x31\x60\x95\x8e\x11\xe5\x01\x89\x05\x0d\x6c\x98\x14\x91\x28\x22\x41\x20\x14\x06\x31\x63\xd4\x7e\xdd\x83\xaf\xf1\x5a\xf6\xaf\x6e\xe9\x92\x23\x8a\x69\x44\x02\x2c\xcb\x37\xaf\x05\x8a\x22\x16\x73\xca\xb9\x1c\x22\xfb\xa9\xa7\x8a\xf1\x7a\xd9\xb2\xea\xbd\x4d\x3e\xce\xbe\x4d\xae\x3c\xe6\x37\xc9\x36\xf9\x92\x6d\xb2\xed\x02\x1f\x92\x0e\x88\xf3\xf8\x93\x4c\x40\x6d\x81\x5b\xc9\x24\x64\xc7\xf7\xfd\x09\xc8\x4d\xf0\x34\x19\x46\x66\xae\x14\x31\x84\xd3\x6c\xe7\x93\x61\xd4\x74\x76\xd3\xfb\xfc\xcb\x7d\x21\xcf\x86\x9d\x2f\xbd\xa8\x48\x1e\x5e\x26\x87\xbf\x90\x43\x0a\x08\x05\x34\xfc\x40\x22\x44\x22\x8f\xaa\x9c\x95\xdc\x0f\x11\x66\xf2\x78\x1a\x83\x0f\x61\x88\x48\xec\xa3\x80\x7c\x00\x9b\xa5\x18\x91\xd8\x8b\x50\xc0\x3c\xfd\x5d\x20\xb8\x01\x0b\xd9\x07\x81\x22\x30\xdc\xae\xc0\x2e\x92\xa9\xcd\x01\x74\xb1\x01\xeb\xfb\x4b\x2b\x18\x48\x35\x03\xbb\x87\xb2\xc8\xb7\xd9\x5f\x62\x12\xda\xe3\x4c\x67\x8f\xb3\x67\x4d\x1f\xb3\xa6\xef\x3b\x4c\xb2\x40\xbc\x80\x68\x9c\xe0\xb0\xe9\x11\x9f\x2b\x17\x6d\x46\x21\x70\x28\x5c\x40\xfa\x88\x45\xb2\xe9\x00\x91\x82\xa0\x90\x78\x1c\x61\x48\x71\x18\xc9\x8f\xb2\xac\x07\x65\xe5\x07\x0a\x25\x25\xd8\xc5\x73\x6c\x4c\x51\xdf\x34\x9b\x45\x5e\x50\x99\x7c\x51\x5c\xc6\x38\x8d\x94\xa9\x7c\xdd\x52\x48\xca\x82\x7f\x85\x89\x27\x04\x31\xcc\x3d\xa6\xd2\xd9\x63\x04\xbe\x05\xf0\x8f\x1f\x21\xcc\x88\x27\xff\x86\x2c\xf5\xa0\x64\xa7\x34\x2c\x08\x64\x8a\x08\x75\x94\x6c\x8c\x29\x44\x7c\x8d\xbf\x7f\x24\x28\x02\xb3\xc9\x80\x27\x92\x78\x94\x4f\xab\x08\xb8\x0f\xd9\x4d\xa0\x5e\x04\xf5\xd8\xcf\xd5\x77\x2e\x0f\xc3\x14\x51\x2e\x0a\xf8\xa0\x40\xd5\xd5\x65\x45\x81\x44\x20\x3e\x50\x8a\xd4\xdd\x0a\x66\x0d\x74\x0c\x41\x9e\xa2\x02\x50\x05\x4c\x49\xd3\xb2\x4a\x14\xf1\xa1\x41\xea\xfb\xc7\x48\x9e\xb2\x21\x14\x9f\x47\xd4\xf9\x1f\x63\x1f\x22\x77\xea\x67\x8c\xb1\xc7\x96\x50\x93\x9e\x6e\x07\x11\x55\x5f\xe6\x9c\xbf\x25\xbd\xac\xb2\x6d\x99\x1d\xce\x76\x06\x1f\x06\xd9\xb3\x95\xf6\xd7\x5b\x70\x00\x77\x42\x7a\xf6\xfd\x87\x63\x76\xf0\x77\x87\x2f\xc9\x36\xff\x9e\xa8\x20\x55\x7f\x85\x75\x43\xbd\xf0\x13\x7b\x4f\x1f\x49\x74\x4f\xf1\xa7\xf0\x3d\xa1\xdf\x3f\x06\x1e\x89\xdf\x73\xd0\x85\xab\x78\x27\xbc\xfd\xf4\x29\x36\x1f\x84\x7a\x00\xa3\xe7\xc8\x2a\xd8\x7a\x32\xab\x45\x55\x35\x79\x7a\xa4\xf7\xbe\x2e\xea\xd3\x7b\x9f\x1a\x3f\x3f\xc5\xf7\xd1\x23\xc1\xdf\x37\x3e\xf5\x23\xf9\x49\x7d\xf9\xbe\xc1\x1e\x37\x1e\x17\xd0\xba\x73\xc2\x1c\x94\xef\x2e\x37\x5d\x72\x3e\xec\x8a\xec\x1c\x62\xae\x13\xce\x04\x09\xd4\xae\x37\x5b\x58\x34\xab\x57\x64\xbe\x2f\x92\xfc\x2f\x43\xdf\x84\xae\x28\x82\xe4\x74\xc0\xc1\x63\x8f\xfb\xfc\x08\xbf\x7c\xae\xfe\xf3\xd4\x83\xa7\x7e\x80\x7e\x89\x4b\x02\xa3\x2b\x9f\xa2\x20\xf4\xb0\x1f\x41\xac\x6d\x3f\xf2\x38\x44\xfe\x79\xf4\xe9\x0a\xcb\x6f\x10\x1b\x97\xf9\xdc\x8f\xfc\x45\xbb\xb7\x3d\x9a\x7d\xc4\xd7\x14\x78\x41\xab\xec\x50\xe6\xeb\x7c\x95\x94\x99\x76\xe5\x46\xf7\x79\xda\xcc\x50\x8f\x36\xfc\x31\x3f\xe6\x77\x79\x91\x97\xdf\x7c\x59\xdc\xd4\xa7\x1c\xb2\xc7\x2c\x29\xbc\x7c\xbb\x7f\x28\xaf\xc0\x99\x37\x4b\xdf\x1d\xf7\x89\xe1\x23\xde\x87\xbe\x0b\x6a\xb7\x0f\xee\xb6\x1d\x1d\x39\xde\xef\xbe\xce\xe8\x88\x2c\xee\xe8\xc8\x6c\xd4\x6b\x38\x83\xa8\x1b\xad\x35\xe9\x96\x50\xbe\x5d\xef\x0e\x9b\x2c\xd5\x8e\xd7\xde\x7d\x4b\x84\xee\x36\x2f\x89\xfd\xba\xfd\x6c\x74\x16\x2e\x2c\xae\x8c\xc0\x7d\xff\xbf\x7c\xb3\xdf\x1d\xca\x64\x5b\xbe\x5c\x1d\x76\xbb\xf2\xd9\xf7\x57\xf7\x87\xdd\x26\xf3\xe1\xea\xed\x8a\x61\xbc\x7f\xba\xae\x5f\xaa\x4b\xb8\xab\x80\xc3\xcb\xaf\xf7\x79\x99\x5d\xfd\xb0\x5e\xaf\xaf\x7d\x3f\xcd\x56\xbb\x83\x7f\xb7\x3b\xa4\xd9\xc1\x27\x18\x5f\x91\xfd\x93\x77\xdc\x15\x79\x5a\x7f\x3c\x24\x69\xfe\x70\xf4\x29\xc6\x57\x0a\xc0\x97\x43\xf2\xcd\x17\x18\x5f\xfd\x10\xac\xc3\x20\xa2\x75\xc9\xac\xc8\x1e\x15\x3b\x0c\x30\xbe\x92\x3c\x7c\xff\xe4\x89\xfd\x93\xe7\x87\xfb\x27\xef\xf0\xe5\x2e\xf9\x11\x5f\x7a\xfa\x7f\x84\xa3\x8b\x4b\xec\x11\xd9\x20\xc1\xb2\x10\x73\x14\x22\x17\xd7\xbe\x7f\x77\x48\xb6\xa9\x8f\x05\xbe\xfa\x61\x1d\x67\x77\x6b\x5a\xbf\x93\x18\xff\xb0\x8e\xd2\x38\x0b\xeb\x77\xb2\xed\x1f\x32\xcc\xa2\x50\xd4\xef\x22\xf9\x4e\x24\x84\x33\x7e\xed\xfb\xe5\xb7\xfd\x4e\xcf\x8e\xea\x87\xba\x41\x6a\xfa\x71\x38\xec\x0e\xea\xcb\x2a\x64\x9c\x8b\xaa\xce\x6a\xb7\x2d\x0f\xc9\xb1\xf4\xe3\x38\xbe\xfa\x01\x63\x5c\x7d\x68\x30\x54\x44\x52\x3f\x5f\xd8\x25\x24\x6e\x66\x89\x00\x43\x09\x3d\x0b\x43\x45\x8e\x5f\x93\x72\x75\x3f\xa3\x4c\xd4\x2a\x13\xa9\x32\x86\x73\xf7\xef\x8f\xb0\x33\xf8\xc7\x6c\x9f\x1c\x92\x72\x77\xd0\xd4\x43\x22\x98\x66\x47\xc9\xdf\xb3\x6f\x4d\xe9\xab\x37\x57\x6f\xfa\x8b\x7d\x3d\x24\xfb\x7d\x06\xa1\x32\x0f\xe5\xd5\x9b\x1f\x27\x14\xcd\xb6\xe9\xd5\x9b\x0b\x59\x70\x75\x6c\xa3\x76\xf5\xe6\xf2\xcd\x0b\xca\x36\x77\xd9\xc1\xbf\x4b\x8e\xf9\xca\x4f\x0f\xbb\x7d\xba\xfb\xba\x7d\xde\xef\x8e\xb9\x9c\xca\xab\x43\x56\x24\x65\xfe\x98\xb9\xcb\x5d\x3a\xdf\xc2\x94\x66\xdb\x72\xf8\xab\xf7\xf6\xf9\x6e\xf7\xe4\x1f\xf3\xef\xf9\xf6\xcb\x95\x5e\x2d\x77\xbb\x27\x77\x4b\x55\xad\x06\xb3\xe4\xee\xb8\x2b\x1e\xca\xec\x5a\x0d\x70\xf2\x50\xee\xae\xbf\xfb\x10\xc9\xf2\x8a\x48\x32\xea\x2c\x76\xb9\x3c\x87\xa1\xfb\x7e\x91\xad\xcb\x67\xf9\xd7\x15\x1e\x2b\x7a\x90\x0c\xe0\x19\xfe\xee\x2d\xbc\x7b\xcc\x0e\x45\xf2\xad\xc1\x7a\x9d\x3f\x65\xa9\x81\xda\x95\x5e\x9c\xf2\x3f\x24\x2e\x74\x67\x08\xc6\x7f\xbb\xd6\x1c\x06\x7e\x37\x1d\xbb\x2e\x77\xfb\x2b\x7c\xad\x50\xbc\xde\xef\x72\x29\x22\xfb\x72\x33\x2e\x8f\xc0\xe4\x46\xd0\xfe\xba\x3b\x6c\xee\x77\x45\xe6\xef\x0e\xf9\x97\x7c\xfb\x9c\xe6\xc7\x7d\x91\x7c\xbb\xca\xb7\xf2\xdc\x5a\x55\xde\xef\xbe\xd6\x5a\xff\x1a\xc6\xd8\x8c\x59\x95\xca\x43\xfe\xe5\x4b\x76\xe8\x52\xd2\xb5\xae\xa8\x58\x20\xb0\x3f\xe7\x4c\x5d\xc3\x39\xba\x1a\x04\x14\x8a\x6b\x39\x98\xeb\x62\xf7\xd5\x7f\xba\xba\xcf\xd3\x34\xdb\x5e\xc3\x2d\x73\xf5\xfa\x2a\x2b\x8a\x7c\x7f\xcc\x8f\xd7\x9b\x7c\x6b\x56\xcc\x36\xd7\xb0\xbf\x2b\xcc\xd4\x4e\x50\xed\x18\x9d\x0f\x0a\x81\x7c\x7b\x9f\x1d\xf2\x72\xa8\x67\xfa\x3e\x5b\x8f\xeb\xd5\x9b\x37\xd7\xd5\x50\x42\x70\x8f\xeb\x55\x91\x25\x87\xab\xbb\x5d\x79\x3f\x04\xc5\x07\x9e\xf9\x98\x5d\x0e\xb5\xb4\xde\xad\x1e\x8e\x6a\xec\xef\x93\x74\xf7\x75\x68\x9e\x6b\xb8\x77\x59\xb1\xfb\x3a\x00\xf5\xb7\xe4\x90\x27\x52\xac\x4e\xb6\x69\x96\xfe\x54\x1e\x1e\xb2\xcf\x3d\x2b\xb6\x86\x99\x6f\xa5\x90\xb4\xca\x66\x82\x7d\xae\x69\xa5\x2c\x77\x1b\x58\x63\xd5\xf4\xe3\x6b\xfb\x1b\x2c\xa7\xfa\xe3\x58\x1f\x93\xbb\xdd\xe3\x52\x64\xca\xdd\xde\x8d\x89\xfc\xe0\x46\xc3\x6a\x02\x06\xe2\x7e\x57\xa4\x40\x04\x40\xb5\x71\x1c\xd7\x44\x70\x27\x8f\x1e\x0e\x92\x05\x49\xc1\x3f\xee\x93\x95\x94\x49\x24\x9b\xee\xa1\x62\x67\xa3\x2a\x48\xb2\x9f\xaf\x76\x5b\x07\x27\xb4\xd7\xb2\xaf\x50\x50\x1c\x05\x57\xec\xa4\x62\x20\x6a\xbc\xaf\xf0\xf5\x26\x39\x7c\xc9\xb7\x8a\x7f\xea\x11\x38\x96\xdf\x8a\xec\x4a\x49\x2c\xfa\x95\x82\x22\x45\x0e\xbe\x7f\xf2\xea\xb1\xd2\x1d\x4f\x92\xc4\x33\x44\x29\xf3\xf7\xb5\x62\x90\x62\xdf\xc7\xd8\x07\xa6\xca\x1b\x1b\x02\x68\x07\xa2\xb2\x1f\x76\x65\x52\x66\x3f\x92\x08\xa7\x99\x94\x1d\x1d\x15\x61\x41\xfa\x77\xa5\x6b\xe4\x56\x0f\x87\xe3\xee\x70\xa5\xd9\xa9\xc6\x99\x1a\x48\x3b\xd7\xee\xe6\xa1\x28\xf3\x7d\x91\xf9\x20\xd4\x3f\xaf\x77\xdb\xd2\x5f\x27\x9b\xbc\xf8\x56\x31\x90\x6b\x78\x77\xcc\xbf\x67\xf5\x1b\x35\x72\x8a\xd9\x38\x27\xcc\xe4\x7b\x55\xa5\x8a\x5d\xc9\x4d\x3d\x39\xc8\x03\xa8\x02\xa0\xd5\x8d\x72\x27\x48\xd2\x54\xb2\x65\x7c\xbd\x2e\x76\x49\x79\x25\x49\x7b\x50\xde\x55\x64\x27\xb7\x95\x6d\x79\x45\x67\xf5\xf4\x2a\xcd\x8f\x92\xc7\xa5\xcf\x5d\xce\x9d\x65\xee\x4d\xa4\x07\xd2\x95\xb9\x8c\x76\xfb\x64\x95\x97\xdf\xae\xc8\x75\xb3\xa0\x66\x01\xab\x86\x09\x1e\xfd\xf3\x82\xde\xec\xbe\x9f\x1b\xe2\x71\x32\xa2\x6a\x93\xe8\x18\x1b\xfe\x96\xa7\x6f\x7f\x7a\x73\xf5\xe6\x73\x37\x02\xbb\x3c\xc2\x3b\x37\x95\x1a\x0d\x1d\x5b\xfd\xae\xdc\x2a\xbd\xc4\xbd\xac\x7e\x51\x23\x80\x84\xb3\x37\x75\xf5\xdd\x1e\x62\x55\x3d\x37\x84\xa7\x39\x89\x9b\x5d\xb6\xea\x69\x2e\xdc\x1c\x8d\x3c\x79\x02\x72\xc8\x06\x7a\x14\x18\x63\x0e\x31\x21\xe3\xf2\xbf\x86\xf6\x25\x73\x1a\x5f\x54\x04\x71\x61\xae\x12\x8d\xb7\x3c\x58\x61\x4f\xfe\xcd\x7a\x56\x83\x63\xe8\x9e\x6d\xce\xe1\x66\xda\x60\x56\x55\x0f\x14\xef\x81\xae\xad\xaf\x14\x2f\xe9\x0c\x8f\xe4\xb1\xad\xe1\xc1\xa6\xb4\xd8\x65\x34\x2e\x3e\xd2\x8c\x54\x1f\x6f\x33\xb1\xa8\x05\x0f\x37\x2e\x4e\x71\xc4\x29\x39\x56\x7b\x2e\x48\xad\x3d\x7d\x52\x53\x63\x7f\xeb\x88\x80\x0e\xd9\xd1\x46\xa3\xde\x71\xab\xfd\x76\x5c\x9e\xab\x90\x1c\x11\xf7\x41\xd6\x30\x84\x87\x9e\x7e\xe8\x7d\x55\xa9\x1b\x4e\x14\x7b\x96\xa0\x09\x62\x9f\x73\xe1\x4f\x04\x50\xc9\x78\x66\x57\xbb\xbd\xe9\xe9\xfd\xa9\x42\xd5\x5c\x1c\x9b\x05\xe0\x04\x57\xf1\x28\x75\xee\x05\xa9\x46\xeb\x85\x14\xa7\x32\x76\xcd\xc9\x27\x84\x31\x61\xd0\x39\xf6\xea\x9f\x2c\xf5\xf3\x32\xdb\x5c\x26\xbf\x1d\xb2\xe2\xed\x4f\x55\x4e\x8a\xcf\x95\x6d\xac\x42\x4b\xad\x92\xa8\x67\x7d\xea\x2e\xa9\x10\xf0\xb2\x5f\x77\xbb\xa7\xcf\xcf\xb5\x9c\xf9\x4d\x09\x72\x15\xf2\xf5\xfb\xe3\xea\xb0\x2b\x0a\xd9\xd5\x72\xf7\xb0\xba\xbf\xde\x24\x4f\xf5\xc2\xa2\x88\x8a\x6c\x33\xd0\x5a\x8b\xc9\x19\x5c\xa4\x0f\x4b\xc9\xa6\xf7\x4a\xa4\xab\x64\x05\x2d\x7d\x1b\xa2\xb2\x86\xba\xdd\x95\x7e\x52\x14\xbb\xaf\x59\x3a\x0f\x96\x53\x3c\x54\x18\x3b\x27\x41\x7d\x1a\xc3\xca\x71\xa4\x9e\x8a\xa9\xd9\x40\x35\xe3\xd5\xa1\xa3\xb3\x77\xa5\xe9\x38\x90\xd5\xc3\x41\x8a\x6a\xbd\x30\x44\x14\x87\xeb\xbb\xeb\xae\x7a\xa3\x3b\x80\xfe\x36\xd9\x64\xd5\x44\x6a\x17\x06\xb5\x69\x7c\x55\x64\x10\x62\xf7\x92\xb4\xe4\xf3\xd6\xb0\xcd\x16\xff\x1a\x69\xc1\x23\x01\xec\xb7\xee\x46\x01\x65\xe7\xfc\x8e\x7c\x51\xdd\xd4\xad\xa8\x95\x44\xfb\x36\xdc\x25\x8d\xe8\x05\x61\x35\xc0\xf1\xec\x06\x5c\x60\x96\xe2\xe9\xe8\x72\xdf\xb2\xac\xe6\x32\xcd\x0f\x3f\x1d\xca\xe2\xb3\x31\x1d\xca\xe0\x7d\x62\x3d\x27\x32\x63\x3c\x70\x12\x10\x8b\x51\x56\x0c\x51\xc9\x06\x53\x3b\xe5\x84\xdb\x12\x3f\x97\x23\xd8\x77\xf6\x03\x71\x12\x10\x5d\x8e\xa4\x79\xb4\x85\x79\x14\xfb\x27\x7d\x16\xcd\xb7\x79\x99\x27\xc5\x72\xd8\xcd\xe9\x57\x11\xdb\x34\xd0\xd5\xd6\x3b\x0c\xfb\x4c\xab\x55\x9f\xba\xfb\x96\xc1\xeb\xe1\xd2\x5a\x8d\x0a\x8f\xde\x55\x7d\x2a\x1e\xce\xd6\x5e\xb7\xd7\xae\x71\x96\xcb\xe9\x87\x62\x27\xd7\x97\xf2\xa3\x7a\x97\xe6\x8f\xde\x7a\xb7\x2b\xb3\x43\x15\xbd\x1a\xe4\xff\xcb\xb1\x52\x70\x70\x74\x64\x0f\x5b\xe7\x59\x91\x1e\xb3\xf2\xe8\xa1\x26\xff\xd8\xf1\xc6\x82\x3d\xb7\x96\x6e\x0b\x62\x6c\xc3\x7a\xc9\xb4\x1d\x40\x05\xcf\xf1\xa5\xb7\x8e\x32\x67\xb7\xf1\x19\x29\xa5\x61\x6d\x76\x69\x52\xf8\x69\x9e\x14\xbb\x2f\x9e\x92\xc5\xd2\xdd\xea\x61\x93\x6d\xcb\xcf\x5e\x9a\x7a\x49\x05\x6e\xbc\xe0\x14\x88\xfb\x89\x00\xf7\x0d\xbc\x6e\x66\x35\x23\x99\x9a\x3d\xbf\xd3\xca\x2a\xb8\x30\x18\xea\x1e\x58\xe1\xa0\x61\x74\xdf\xab\xf2\x90\x51\xcc\x18\x90\xe6\xd9\xf8\xbe\xb7\x3f\xd7\xbd\x78\x06\x15\x15\x5c\xe4\xc1\x15\xe8\xd5\xc3\x36\xcd\x0e\x70\x4f\x31\x42\x93\x73\xe9\xca\x35\xef\x6f\x9d\xc4\xd4\xa8\xeb\xcf\x4d\x81\xa3\xb4\xd7\xdf\xf4\x2b\x12\xf2\x38\xc5\x4d\xa3\x9f\x2e\x85\x38\x68\x46\xf7\x70\x31\x91\x19\xe4\xa5\x41\x4d\xa5\xbf\x86\xf2\xcc\x8a\xbd\x84\xa9\xa5\x5d\x75\xc7\xfd\xa7\x11\xa3\x4d\x3d\x7f\xe6\x54\xb6\x66\x60\xef\x25\xed\x33\xe3\x90\x2a\x7a\x74\x1f\xaa\x28\x7f\xe6\x66\x31\xb0\x56\x27\xae\xa5\xaa\xd8\x38\x1b\x9f\x54\xd2\xa0\xaf\x69\x4c\xb7\x77\x41\x74\xc8\xbb\x4d\xb6\xea\xf9\xb9\xbe\x20\x78\x19\xc6\x0c\x5a\xf0\xb4\x62\xe2\x3e\x2b\xf6\x9f\x15\xa8\xee\xfb\x8a\xf6\xa3\x2c\x0e\x12\x36\x02\xd6\xac\x58\xe5\x3e\x00\xb8\x8e\x0f\x8d\xe6\x99\x8f\x40\xbd\xa7\x15\xa1\xc9\x5f\xf5\x62\x5c\x53\x42\xa7\x54\xed\xc3\xc9\xfd\xed\xb9\xd1\xac\xa2\x40\x64\x1b\xad\x3c\x02\xbd\x18\xa2\xcd\x33\x88\xd5\xf2\xc5\x0b\x2a\x93\x3b\xff\xa8\x0d\xff\xf6\x57\xbb\x6d\xf1\x4d\x99\xfb\x79\x0e\xe8\xd5\xfd\xb1\x52\x2d\x41\x54\x8f\xf5\xee\xb0\xb9\xd9\xab\x04\xa8\x60\x36\x73\xa1\x36\xc2\xe6\xb6\xeb\x61\xbf\xcf\x0e\xab\xe4\x98\xa9\x4b\x9c\xa4\xc8\xbf\x6c\xaf\x94\xb5\xec\xb5\xc3\x74\xa3\x07\x2a\x98\x70\x39\xce\xf0\xeb\xf5\xda\xad\x44\xaf\x4e\x8b\xa0\x3b\xae\x81\x6a\x25\x1c\xa3\x78\xff\x54\x69\xd6\xc0\xf8\x88\xda\xe5\x3c\x28\xac\x47\x4b\x6b\x11\x91\xc8\x36\x86\xe1\x95\x51\x78\xf0\xb2\xf0\xd2\x28\xa8\x56\x8a\xa5\x09\x34\xa0\xec\x0f\xbb\x2f\x87\xec\x78\x7c\xae\x54\x7e\x5e\xf2\x50\xee\x7a\x87\xa4\x31\x8b\x73\xea\x79\xd3\x55\x86\xb3\xc0\x54\xbb\x77\xaf\x12\xb5\x65\x86\xac\x29\x0c\xcb\x0d\x9f\x8c\x72\xb9\x0e\xbd\x11\x6a\xb6\x50\x1b\x50\x48\xd0\x3e\xd9\x3f\xa9\xa6\x7c\x36\x20\xc8\x9b\xfd\x68\xb4\x9d\x30\x3b\x9c\xca\x29\xc2\x2e\xf3\x8b\x41\xd6\x7c\x63\xfc\xa9\x8f\x14\xd5\x6d\xf2\x8b\x5a\x48\xca\x69\xa9\xc9\x55\xab\xa8\x7f\x57\x78\x45\xde\xac\x57\x65\xe8\x36\xa5\x86\x6b\xd3\xbd\xee\x97\x0d\xa7\x40\xac\xe6\xb9\x0d\x05\x96\xe1\x30\x80\x9b\x22\x37\x14\xca\x2a\xc5\xae\xeb\x36\x77\x5d\x64\x4f\xe3\xb8\x58\x6f\x12\x97\x59\xa6\x35\x5c\xd7\x96\x4a\xa4\xef\xba\x6b\x42\xb3\x1d\x53\x64\x2f\xb1\xf4\xcf\xc1\x7e\x0a\xf2\x0e\x28\x75\x17\x6a\xcb\x98\x7f\x7f\x73\x3d\xd0\x87\xa8\xaf\x0f\x68\xb5\x4b\x33\x3f\x4b\xf3\x72\x77\xa8\xf8\x34\x5a\xed\xf6\xdf\x7c\x9d\x88\x5a\x2f\x1b\x9d\xa6\xab\x63\x8e\xd3\x59\x9a\x43\xfd\x71\xd8\x04\xc0\xda\x87\x8b\xf1\x64\xbf\xf7\x1f\xf3\xec\xeb\x8d\x5a\x58\x35\xd3\x51\x89\x79\xd4\xef\xcf\x7a\x7b\xce\x8a\xac\x04\x49\xa5\x28\x92\xfd\x31\xbf\x2b\x32\x5f\xf9\xe0\x1d\xfb\xa5\x41\x6d\x36\xf9\x35\x39\x6c\x7d\xd8\xbd\x2a\x4b\xdd\x34\xd9\x7e\xc9\x0e\x3b\x75\x4e\x6e\x77\xdc\x12\x5e\x3c\xb9\x22\xab\xf7\x2d\x6b\xd9\x46\x84\x84\xbc\xa7\xfb\x64\x9b\x15\x7a\x63\x94\x2f\xf2\x32\xdb\x7c\xbe\xec\xa6\x46\x72\xe7\x1d\x02\xe6\xd2\xa9\xbc\xcb\xd3\x55\xe5\x24\x5e\x61\xb1\x14\x96\xd3\xe7\xfc\xed\xe5\x98\x57\xfa\xdb\x4b\x95\x4f\x69\xb5\xdb\xae\xf3\xc3\x06\x96\xb3\x67\x4d\x4a\xa2\x9e\x56\x87\x2c\x29\xb3\x4b\x3d\xc4\xea\x55\xb2\x5d\x65\x85\xf5\xea\xf8\x70\xb7\xc9\xcb\x4b\x73\xa2\x0f\xd9\x31\x2b\x3f\x5b\xaf\x54\xa9\xcf\x97\x95\x9b\x66\x95\xc0\xc9\x41\x1f\x6a\x9b\x51\xd3\x58\x6e\x2f\x86\x93\x49\xcd\x18\xaf\xe1\x54\x52\xd3\x01\xb5\x05\xf6\x3e\x43\xa5\x36\xb3\x9c\xbf\x3a\x6a\xf3\x91\xa1\x65\x62\x15\x9a\xbd\x5e\xac\xda\x1d\x8e\xd1\x7c\x74\xaf\x20\xa3\x80\x7b\x29\x19\x05\xfa\x97\x94\x59\x68\xf9\xda\x32\xa0\x74\x17\x99\xf1\xf1\x64\xe8\xee\x50\x0f\xcd\xf7\xe1\xc5\xd5\x14\xb4\x56\x59\xf3\xba\xbb\xdc\xdc\xdf\xd4\x8a\x6a\x7f\x33\x17\xa0\xfb\x9b\x5e\x89\xcd\xc7\x29\x4b\xb2\x2a\xfc\x4a\x6b\xb3\x41\xe6\x5c\x8b\xb4\xb1\xbc\x6a\xdd\xe4\x75\xac\x31\x2a\x60\x5a\x35\x0c\x10\x27\x10\xe2\x3f\x74\xc1\x09\x65\xee\xcb\x4d\xf1\x5b\x9a\x94\x89\x7f\xd8\x3d\x94\xd9\xff\xf1\xd3\x9b\x74\x85\x92\x55\x71\x44\x20\xf1\xbe\xf9\xec\x21\x15\x00\x4a\x9e\x71\x75\x47\x0e\x49\x9a\xef\x00\x23\x7d\xe4\x9c\x37\xd4\xff\x30\xeb\x4c\x1d\x4d\x55\xa9\x63\xa8\xb3\x68\x53\x5f\xb0\x71\xf7\x6d\xd2\xae\x2d\xf3\xaf\xb4\x81\x3d\x5b\x96\xa1\x04\x4c\x71\x4c\xe3\x1c\x6a\x1b\xe7\x80\xc5\x91\x27\xcf\x52\x3e\x6d\x7c\x52\xc0\xec\x9d\xd0\xd1\x38\x7a\x95\x52\x73\xa4\x94\x56\x6a\x76\x4b\x49\x02\x1d\x01\xd4\x14\xe9\x83\x72\xdc\x17\x79\x59\x8e\x61\x64\x97\xd2\xb0\x80\xee\xe1\xcd\x25\x2a\xf3\xbd\x1c\xc2\xdd\xd3\xb3\x35\x3c\xc1\xfe\xc9\x8b\x5c\xc3\x83\xc5\xc5\x25\x58\x5a\x80\xe9\xad\xcf\xdb\xa3\x77\xf1\x32\xb8\x33\x8c\x33\x5e\x37\x73\x3d\x81\x7f\xd6\x27\x3c\x1a\x44\x21\x73\xa2\xa7\xd5\x55\x0e\xe4\xac\x2f\x16\x6a\xfa\xcb\x14\xc4\x54\xd1\x0e\xc5\x76\x8d\x30\xd4\x81\xbe\x32\x32\x0c\x59\xc2\x69\xcb\xb6\x59\x50\x11\x06\xe4\xe5\x4f\x10\xaa\x17\xd6\xfb\xe7\x13\x2c\x61\x20\x95\xdf\x14\xf8\xb9\xc5\x18\x5f\x74\xb5\x0e\x46\x01\x8c\xf1\x45\xdf\x88\x57\x0b\xaf\xe7\x6b\x75\xaf\xd1\x2f\x96\x55\x17\x69\xfd\x25\xea\xbb\x91\xe5\x52\x5b\x7d\x5b\xb7\x1c\x84\xc6\xe2\x34\x04\x4e\x6a\xfb\x5c\x62\x90\xc2\xe5\x5c\xd0\x4c\xdc\xce\x20\x51\x99\xc8\x9d\x01\x9c\x52\x55\x0d\x12\xb7\xc0\x33\x62\xac\xb9\xd5\x7f\x7c\xff\x54\x69\x21\x83\xfd\x53\xed\x2a\x06\xf6\x3b\xa3\x90\x95\xa6\x04\x54\x82\x96\xee\xf5\x2f\xa6\xe5\x18\xd2\x39\xfc\xcf\xad\x3b\x70\xb9\x67\xce\x9e\xbd\x46\x37\x0e\xf2\x7a\x99\x1d\x36\xf9\x36\x19\x9e\xd5\xa1\x3a\xb3\x67\x7b\x08\x58\x9b\x0a\xfa\xcb\xba\xa9\xa3\xbf\x7c\x97\x6a\xfa\xcb\xba\x69\xa5\xbf\xfc\x30\x0d\xf5\xd6\xb3\x68\xab\xb7\x54\x97\xe6\x26\x15\x55\x54\x36\x52\xd4\xa4\xd1\x49\x45\x35\xed\xf6\x96\x9d\x4f\xd3\x7d\xa0\x7a\x14\xb3\x02\xff\x4d\x5d\x7f\xc8\x1f\xa6\xde\xda\x27\xb4\xbe\x86\xf2\xd5\x4d\xc9\x32\x1d\x6e\x2d\xdc\x36\x98\xbd\x7b\x3b\x49\x63\xd5\xae\xb0\x5c\x7b\xd5\x86\xd4\xab\xc9\xb2\x0b\x8e\x68\xb5\xec\xc2\x03\x67\x07\xbb\xe0\xb0\x82\xc8\x2e\x3b\x51\x59\x64\x55\x72\x2b\x8e\xac\x22\x03\x67\x99\xde\x72\x2d\x85\x92\xa3\x9c\xf3\xfc\xd3\x5b\xae\xad\x68\xb2\x0a\x9e\x70\x68\x32\xe1\x3c\x37\x01\x31\xb4\x1f\xcb\x12\x02\x06\x32\x18\xa4\xd8\xba\xc4\x7c\x12\xad\xab\xba\xef\x63\x7a\x89\x50\x7f\x75\x50\x9d\xfe\xe2\x26\x33\xfd\x71\x84\xae\x54\x29\x9b\x90\xd4\x3b\x07\xe5\x74\x3f\x68\x52\x31\x3f\x58\xb4\xd1\xfd\x50\x11\x83\xfa\x32\x65\xf6\xd5\x6d\x55\x7b\x3f\xb7\x2c\x33\x0d\xa9\xec\xda\x32\xeb\x26\xd1\xfe\xc9\xf8\x66\x5d\xa3\x89\x65\x4c\x4e\x5f\x9e\x35\xe1\x8e\x86\x69\xa5\x13\x18\x69\x3e\xcd\x98\x20\xfa\xee\xf2\xaa\x12\x43\x34\xd4\x94\xea\xa3\xa5\xa6\xc4\x00\x4d\x35\x85\xa6\xd0\x56\x5d\xda\x41\x63\xf5\xb7\x3e\x5a\x73\x16\x30\x69\xae\x55\xa0\x4b\x7b\xce\x02\x16\x0d\xd6\x25\x96\xd2\x62\x7d\xf0\xa8\x7c\xf5\x96\x50\x15\x5c\x0b\x03\xf4\x8b\x41\x9a\x6a\x95\x9b\x4f\x51\x2d\x00\x1d\x7a\xb2\xbe\xf7\x50\x93\x55\xc6\x41\x4b\xd6\x77\x37\x25\x59\x45\x46\xe8\xc8\x2c\x6b\x53\x91\xf9\xc5\x41\x43\x7d\x9f\x35\x05\x75\x3f\x5b\xf4\xd3\xf7\xb9\xa2\x1e\xf3\xfb\x54\xe9\x4d\x97\x6f\x73\x33\x87\x1d\x84\xc3\x4e\xe9\xff\x7a\x38\x96\xf9\xfa\x5b\xe5\xd4\x57\xbd\x86\x32\xe0\xfd\x71\xac\x2d\x9a\xb4\xd9\xca\x2a\x29\x56\x3f\x22\x91\x6d\x3c\xdf\x23\xfb\xa7\x0b\x0f\x5e\x50\x44\xeb\x37\x10\xf9\xa3\xb6\xce\x39\x81\x76\x8b\xa4\xb6\x68\x18\x27\xe0\x56\xe1\x85\x54\xdc\x82\xe2\x26\x65\xab\xd0\x10\x3d\x5b\x05\xfb\x88\xda\x2a\x34\x40\xd9\x56\xb9\x29\xe4\x6d\x56\x70\xd0\xb8\xf9\xb9\x8f\xd0\xfb\xca\x98\xd4\xde\x2d\xd3\x25\xf9\xbe\x32\x16\xdd\x9b\x85\x26\x13\xbf\x51\xa9\xbd\x02\xba\x7e\x4b\x35\x1d\xb6\xc1\x27\x97\xfd\xdf\x54\x73\xb5\x74\x20\x4f\x33\x6a\x0d\xf0\x9a\xe2\x1d\xa2\x82\xb6\xc5\xea\x2f\xf9\x2f\x5d\xf6\x72\x5d\x76\xc5\x8b\x50\x9c\x6d\x3c\x92\x6d\x1c\x8c\xcd\x69\x3a\xd9\x13\x38\x69\x4c\x2f\xf5\xac\x35\x7b\x4c\x98\x92\xdf\xd8\x6d\xd9\xe0\xf5\xd6\xd8\x95\x55\xc7\xdd\xdf\x75\xaf\xd7\x56\x6f\xc2\x85\x14\x15\xe2\xb2\xfa\x83\xe2\x8b\x56\x28\x1c\x87\xce\x6a\xb8\x17\x37\xda\x84\x76\xec\xd6\x4f\x51\xef\x60\x9f\x87\x40\x35\x85\xfa\xe0\x58\xc3\x33\x00\xca\x2e\x07\xd0\x9c\x76\xa4\x4b\xa6\xef\x95\x06\xe6\x8f\x1a\xb5\xd7\x19\x55\xeb\x12\x6f\x94\x9c\x14\x77\x1d\xee\x4c\x6f\x19\x1b\x0b\x55\xec\xd9\xb4\xa7\xfd\x5f\x82\x9a\x0d\x03\x70\x6f\x4a\xa7\xbd\x87\x62\x10\x49\xf7\x77\xab\x65\xef\xa1\x70\x5b\xdb\x76\x63\x38\xb8\x8d\x5e\xec\xcd\x58\x62\xed\x30\x6d\xeb\x54\x05\xd3\x78\x27\x27\x37\x95\x8d\x00\xad\x91\x39\x05\x0c\xc9\xed\x2e\xcd\x3e\xe6\x87\xc3\xee\xf0\xbc\x49\x9e\x2a\x71\x94\x88\xaa\x6c\xc5\xd2\x21\x9e\xa8\x7e\x80\xa0\x0d\xad\x0d\x9c\xb6\xa0\xe9\x18\x0e\xcf\x9d\x98\x62\xe6\xc6\x60\x14\x2f\xf2\x6d\xe9\x97\xbb\x5d\x51\xe6\x7b\x97\x95\x7f\xbc\x8e\xd7\x55\xe0\x0e\x2b\x9c\x07\x97\xff\x75\x62\xcd\xe8\x6a\x94\xc8\xff\xae\xcd\x58\x57\x9b\xdd\x76\x07\x83\x69\x04\xa1\x21\x6c\xff\x54\xcf\x4c\xa8\x4d\x1b\x62\xd9\xa1\xd5\xc6\x3f\xfa\xf7\xc9\xf1\x3e\x37\x47\xca\x30\xa9\xef\xa2\x8a\xb1\xa9\x12\xd1\x2f\x57\xeb\x94\xa6\xc4\x78\x6f\x06\xd6\x6a\x85\xfb\x31\x5b\xf5\xcc\x31\xfa\xf2\x20\x09\xed\x58\x19\x2c\x84\x51\x44\x63\x57\xe4\x48\x9a\xd0\x35\x0b\xcc\x26\x7a\x41\x2a\x3b\x23\x2b\xe2\x8d\x1a\xd8\xf2\x3e\xdf\x7a\x3f\xac\xa3\x75\xb4\xc6\xbd\xb5\x25\xe2\xdb\x87\xcd\x5d\x63\xee\x1e\xa4\x51\x12\x45\x3d\xe3\xe6\xc3\xed\x65\x96\x4a\xf9\xdf\x22\x15\xed\x46\x6f\xcc\xbb\x9c\x3a\x4e\x23\x36\xd8\xf4\xd5\x95\xaa\x09\x2c\x61\xa0\xdc\x8d\x8a\xfe\x3b\xa3\x70\xbb\xc6\x7c\xcc\x20\x02\xd7\x2c\xf4\xe6\xd6\x70\x56\x7b\x6e\x07\xeb\xb4\xc4\x1c\x72\x61\x61\x2d\x01\xc8\xe7\xd5\x6e\xb3\xc9\xb6\xe5\x73\x1d\xeb\x23\x63\x59\xe8\x2c\x79\x2c\x0f\xf9\xf6\xcb\x65\xff\x27\x9f\xd6\x8e\x0f\x69\x7a\x97\x30\x27\x14\x9b\x64\xd2\x94\x67\x22\x72\x16\x7c\x4c\x0e\xb9\x94\x85\x9d\x0d\x56\x1f\x9b\x26\xe3\x2c\xe2\x2b\xe1\x84\x94\x66\xeb\x09\x88\xed\xf6\x19\xc4\x9a\xad\x8a\x66\x4c\xfe\xe7\x2c\xfa\x7b\xf6\xed\xeb\xee\x90\x56\x25\xd7\xc9\x8a\x63\xea\x2c\x99\x94\xbb\xcd\x84\xbe\x6e\xb2\x32\x71\xf6\xb3\x4c\xbe\x4c\x40\x3d\x29\xcb\x43\x7e\xf7\x50\xba\xc7\xea\x7f\x3c\x24\x45\xbe\xce\x8d\xe0\x8f\xeb\x55\x22\x02\x27\xa4\xfd\x41\x0e\x43\xf9\x6d\xc2\xa8\xde\x3d\xe4\x45\x99\x6f\x87\xa7\x87\x0d\xb4\x69\x12\xb6\xb2\x82\x52\x7b\x57\x4d\xc4\xd6\xc2\x23\x98\x50\xd2\xbf\xf0\x36\x49\xb9\xba\xcf\xb7\x5f\xee\x0e\xc9\xea\xf7\xac\xec\xf7\xc7\x36\x42\xd0\x98\xbb\xd1\x21\x4b\x52\xe5\xfe\xb6\x4b\xb3\x0d\xc0\x74\xf0\xca\x63\xbd\xd1\x2a\xc6\xea\xac\xd5\x1a\x8f\xf6\xca\x9a\x52\xc7\x5c\x6e\xf3\xca\x37\x0b\x22\x4b\xe4\x7f\xd3\xdb\xb3\x17\x66\xc2\x92\xd5\xdd\x6a\x7a\xed\x36\xe1\x40\x84\x9f\xa9\x95\xbb\xab\x39\x58\x85\x77\x11\xb1\x1c\x6b\x9e\xed\x43\x5a\x25\x0d\x48\xd1\xa4\x1d\x49\xcd\x71\x80\x33\x00\x0d\x05\x4b\xd1\xbb\x3b\x05\x89\xc7\x88\x94\xd2\x84\x35\x36\x2f\x6c\x1b\x53\xd2\x2b\xd7\x56\x8c\x31\x36\xa8\xed\xda\x19\x59\xae\x2d\xbc\xb8\x7c\x89\x9e\xeb\x08\xa8\xdd\x98\xcb\x10\x1d\xc5\xdd\xb4\x35\x5e\x16\xdc\x9b\xfd\x21\x6b\x51\xf2\x70\xee\x8a\xf9\x59\x2a\xc6\xf3\x51\x4c\xce\x3c\x51\x63\xfa\xe5\x90\xa7\xd7\xf2\x2f\xbf\xcc\x36\xfb\x22\x91\xa2\xf9\xae\x78\xd8\x6c\x8f\x57\x64\x7d\x00\x77\xc9\xd6\xe7\xc3\xee\xeb\xf1\x4a\xe0\xbf\x79\x02\xff\xad\xf5\x29\x39\x64\xc9\xf1\xea\x8d\x56\x64\x69\xf5\xca\x1b\xef\x8d\xce\x72\x51\xbd\x78\x99\xdd\xf3\xe7\x11\x0c\xed\x1b\x34\x75\xe5\x3f\x2d\x61\xde\xf2\xec\x75\xd3\x53\xcb\xcd\x4e\xf8\xa6\xba\x2b\x47\xf3\x4a\xbd\xd0\x7a\xf1\x63\x56\xac\xaf\x20\xfc\xfb\xd4\xc4\x28\xcb\x53\xa1\x4c\x4f\x7e\x32\x3b\xdd\x89\xd1\x3d\xf5\xc2\xec\x5e\xb6\x4d\x27\x67\x7d\x79\x7b\x42\xa6\x97\xb7\x33\xb2\xbb\xbc\x9d\x9f\xd1\xe5\xed\xf3\xba\xc8\x9e\x20\x10\xbf\x3e\x64\x9a\x3b\xe3\x58\xff\xf4\x4a\x59\xd2\xbd\x76\xd5\x81\xde\xd5\x45\x27\x77\x4e\xd7\x30\x26\x50\xbf\x71\x7a\xbf\xce\xc6\xde\x4b\x95\xfa\xff\xb7\x55\x91\x1c\x8f\x9f\x2f\xbc\xb4\xac\xfb\xb1\x85\x33\xa6\x31\x4a\xae\xea\x4d\x71\x9d\xf2\x50\x17\x77\x3b\xab\xea\xd6\x8c\x64\x53\x16\x88\xc3\xae\x98\xde\xde\x31\x3b\x3c\xe6\xab\xac\x35\xca\x48\xce\xf8\xf4\x62\x9d\xfb\xf5\x72\xf7\x7b\xb6\x1d\xc3\x61\xd6\xae\x53\xb1\x98\xab\xad\x7c\x5d\xdf\x61\xfc\x48\x2f\x96\x73\xc2\x01\x58\xa3\xbc\xd1\x55\x77\x26\xb7\xec\x82\x50\xf4\xa9\x76\x09\x9d\x2e\x43\xf3\x51\xf3\x43\xb6\x4d\x2b\xf2\x9d\xca\x71\x8c\x5b\x9f\xe5\xac\xc7\x05\x64\x94\x07\x59\x95\x66\x32\x23\xa3\xae\x63\x64\x34\x0b\x1e\x1b\x99\x53\x16\xf1\xbb\x34\x9d\xb9\x8e\xcd\x1a\xcb\x97\xb2\x09\x65\xca\x6a\x36\xcb\x4f\x5a\x7a\xef\xd2\xd4\x72\x9b\xc7\x0e\x26\x6f\xa0\xdf\xc9\x6c\xd7\xe1\x0b\xd5\xac\xa7\xb9\xe5\x9f\x7e\x93\x16\x96\xfb\x7d\xd3\xac\x16\x99\x1d\x57\xdd\x6a\x40\x1a\x1f\xbc\x8b\x3e\x27\xbc\x9b\x6c\x33\x9e\x5e\xb8\x4a\x54\x66\x5c\x4d\x9f\x92\x66\xcd\x05\x66\x42\x96\x35\xab\xda\xec\x24\x6b\x56\xed\xc1\x38\x31\xea\x66\x6e\x9f\x1c\x8f\x5f\x77\x87\x14\x06\x68\x42\x79\x75\xec\x99\x5a\x5a\x9e\xa6\xc7\xcb\x0e\xcd\xd9\x60\x45\xc3\xda\xe1\x9d\x2c\x6c\x5a\x01\x34\x20\x14\x26\x10\xdd\x43\x3e\x43\x88\x84\x6e\xe7\x8d\xd7\x4d\x1f\x8d\x97\x55\x57\xe0\x95\xdd\xb0\x49\xa7\xa6\x58\xde\xb3\x11\xb6\x64\x4f\x6b\x59\x54\xd2\xa3\xa1\x01\x07\x43\xc9\x22\x73\xac\xba\xc6\x02\xa3\x89\x0c\x55\x11\xf4\x60\x78\x97\x31\x0c\x61\xab\x36\x49\xc9\xbe\x61\xc0\x63\x5b\xc9\x89\x4b\x68\xe6\xd2\x59\xb6\x64\xec\xfe\x0d\x89\x76\xa3\xe9\xc8\x4f\xe4\x17\x43\x60\x26\xa4\xf4\x5e\xc6\x2f\x1c\xb5\x2d\x2e\xcf\xc7\x8f\x97\x9e\xd3\x97\xe5\xa4\xc9\x6e\x43\x99\x36\xe7\xde\x29\x53\xdf\x32\x41\xb1\x4c\x53\xab\x0b\xb8\x39\xc7\x1a\xc7\xc0\x2e\x1e\x9b\x49\xd0\xe6\x91\xc8\xdc\xb1\x1a\x02\xb2\x4c\x28\x07\xf7\xb1\xf3\x8e\xcf\x04\x98\xe3\x42\xfa\x00\x8c\xb9\xc2\x7a\x2f\xa8\xe7\x8e\x6e\x6d\xee\x02\x6b\x85\xa2\x3d\x69\x99\xb5\x60\xcd\x5a\x6c\x55\xdd\x13\x96\x5c\x9f\x23\xa1\x3b\x63\xe5\x44\xe9\xed\xa6\x29\xa7\x52\x0f\xf8\xc7\xdd\xc3\x61\x95\x99\xd8\x4c\x95\x04\x6b\x58\xbf\xe7\xdb\xd4\x09\x60\xb6\x54\x38\x0b\xbd\xe5\xd0\x7b\x11\x1e\x95\x3f\x67\x21\x38\x1d\x5a\x17\xa1\x99\x92\xed\x34\xbc\x96\x02\x6d\xa3\x67\x6d\x85\xbe\x98\xa2\x6a\xad\x04\x70\x7d\x14\xda\x24\xdb\xe4\x4b\x26\xc5\xd4\x8e\xc2\x63\x22\x88\xf9\xf5\xce\x95\x1f\x7a\xbc\x0b\x8b\x81\xfe\x99\xe9\xab\xc7\xbb\x35\x19\xc8\x9f\x90\x3d\x7b\x00\xfb\x85\xb0\xce\x95\xca\xdb\x3a\x1b\xb0\x3f\x68\xad\x54\x52\x49\x07\x84\x97\xa6\xff\x74\x6b\x60\x16\xb2\xaf\x4d\xc9\xd3\x90\xf9\x53\xe8\x73\x0a\x6a\x7d\x81\x07\x9a\x94\xc6\x2f\x60\x0a\x0d\xf6\x42\x1d\x4b\x7e\xa4\x1f\xf2\xed\x17\x77\x58\xd8\x17\x67\x35\x6f\x6f\xc7\x04\xb6\x1d\xd3\xc0\x1f\xd7\x76\x63\x33\x3c\x74\xab\x4b\x58\x43\x96\x71\xb6\x61\x26\xd8\xa8\xaf\x1a\xc0\xb3\xa4\xeb\x30\xa2\xbb\x58\xa6\x37\xa3\xbd\xec\x3a\x17\x57\x87\xf8\xff\xd8\x64\x69\x9e\x78\x3f\x36\x26\x7c\x9c\xe2\xfd\xd3\xc5\xf3\x10\x7a\x86\x61\xa2\xd2\x2d\x64\x9b\xd6\x85\x71\xdf\x00\xda\xc3\x41\xb2\xcd\xcb\x8b\x4b\x42\xb6\xe6\xb4\x78\xc8\x7c\x31\x10\x4a\xc5\x10\x15\x2f\xac\x9c\xb8\xa1\x62\x43\x1d\x91\x73\x84\x88\xaa\x1c\xe5\x17\xee\xca\xfa\x56\x7d\x34\xf2\x85\xa3\x6e\x9d\x0b\xc2\x2d\x05\xab\xd5\x50\xf9\xcd\x2a\x6f\x0b\x1d\xe2\xe7\x62\xde\x90\x0c\xa3\xa1\x1a\xab\x56\xa6\xd2\xa7\xdd\x25\xdb\x6d\x76\xf8\x6c\xc4\x0b\xdd\xad\xc1\x0a\xd5\x33\x9d\x25\xaa\x30\xf1\xf3\xea\x0c\xc6\x0a\xa9\xfb\xe2\x44\x55\x87\xf7\x1e\xea\x26\xed\xab\x0b\x7e\x43\x03\x47\xfa\x4a\x91\x55\x07\x1a\xee\x87\x52\xcd\xba\x79\xd6\x55\xd5\xa8\x19\x9f\xf8\xba\x32\x00\x69\x2c\x5e\x29\x1d\x84\xab\xa7\xc2\x86\x5e\x9f\x0b\x87\xfd\x46\x1d\x31\x53\x6a\x43\x13\x67\x6d\xd3\x97\xcd\xb9\x6f\x83\xbe\x27\xcd\xd6\x90\x2a\x67\xb7\xf5\x81\xc1\xdc\xa4\xc5\x24\x23\x0a\x8e\xf7\x4f\x86\x19\xc5\x97\x64\x7f\x05\x6e\x39\xca\xbe\xb7\x0d\xd5\x4b\xd3\x9b\xb7\x4e\xcb\xe3\x97\x71\x0f\x9c\x29\x01\xfe\xd4\xad\x40\xb2\xcd\x25\xef\xd9\x7e\x51\xab\x09\xf4\xc1\x17\xc3\x6e\x3a\x23\x41\x01\x87\xe0\xce\x72\xe3\x99\x19\x12\x70\xbc\xdd\xa9\x6e\x3f\x73\xe3\x0a\x0e\xb4\xdc\x52\xfe\x8c\xce\xca\x15\xfc\xca\xd2\x7f\x4c\x9e\x0d\x67\x8d\x59\x23\x37\x00\x61\xea\x10\xb8\x40\xb4\x56\xab\x02\x98\xee\x36\xfe\x21\x5b\x7d\x5b\x15\xd6\xae\x5b\x5b\x92\x39\x4a\xc9\x76\xdf\x3e\xb7\x8c\xd0\xdc\x05\xef\x76\xe9\xb7\x41\xb3\x78\x57\xad\x34\xed\x18\x68\xf4\x94\xbb\x79\xdb\xda\x9e\x21\x67\x5d\xed\x7b\x69\x27\x91\x48\xf3\xc7\x67\x4b\x3e\x81\x46\xd2\xfc\xa0\xc4\xbb\x2b\xc5\x16\x2c\x00\x55\x48\x6a\x3b\x1e\xb5\x33\xad\xae\xd1\xa8\x91\x64\xc0\xbc\x62\xb1\xd4\xb1\x46\x85\x76\xa8\x76\x8a\xa2\x6c\xd3\x8a\xcb\xed\x90\xf9\xee\xd6\x77\xeb\x95\x05\xe8\xe6\x6d\x15\xf0\x3f\x34\x02\xfe\x57\x71\xf5\xcd\x6e\x59\x8a\x73\x5d\xa2\x65\x26\x32\x3e\x0e\xf6\xc8\xc3\x66\xd2\xcd\xb4\xea\x02\x63\xdd\x8f\x42\x67\xbb\xa9\x07\x5e\x5a\xf9\x3f\xec\x99\x6b\x7b\x28\xab\x7b\xeb\xbb\xac\xfc\x9a\x65\xdb\x96\x98\xd7\x86\x34\x29\x67\x8b\xd3\x53\xda\x21\xcf\xb6\x09\xcc\x48\x29\xd1\xb8\xe4\x60\x48\xa7\x08\x96\x9b\x1d\x9f\x44\xd7\xf8\xd4\x3b\x5d\xe3\xb4\x41\x51\x90\x6d\xfa\x12\x0e\xb0\xda\x76\xd3\x48\x9a\x6c\x78\xd5\xb8\x46\xc0\x19\xc9\xc1\x95\x67\xa5\xb5\xeb\xd6\x19\x0e\xac\x56\xe4\x8c\x19\x2e\x26\x28\x6e\x0d\xbb\x57\xe4\xca\xe4\xe0\xed\x4f\x7e\x91\x6f\x7f\xff\x7c\xe3\x4a\xac\x2a\xf6\x4f\x2f\x27\x86\xae\x75\x64\x44\xbe\x4b\x56\x64\xb5\xea\xba\x4a\x9e\xda\x94\x07\xe9\x05\xb5\x5b\xb3\x7c\x5d\xf3\xdc\x77\x6f\x4f\x8e\xc0\xdb\x85\x0d\x52\xec\xab\x40\x06\x81\xee\xdd\xdb\xe7\xc9\x21\x61\x5d\xdc\x68\xbd\x6e\xce\x65\xb5\xd7\x55\x1c\x07\xf2\x5c\x76\xea\x9c\x9a\x4b\xff\xe4\x59\x53\x9e\x67\xc0\xfa\xbf\x1c\x76\x5f\xaf\xc8\xcb\xf9\x09\xa1\x25\x63\x2c\x37\xff\xb8\x3c\xa1\xae\x27\x79\x4d\x72\xc8\x92\x53\x80\x80\x21\xc2\x09\xd5\x8f\xfb\x64\x9e\x3d\xc7\xac\xc2\x46\x17\x5f\xc1\x64\xa4\x2e\x3f\xb9\x13\xca\x00\x63\x46\xd1\x79\x1d\x98\x67\xc3\xa2\x4b\x4f\x46\x5e\xa2\x32\xb9\xe0\x3c\xc4\xa7\x99\xd3\x18\x65\x27\x20\xdd\xbb\x62\x96\xd4\x9a\xda\x9d\xc5\x16\x3f\x27\xac\x8f\x51\x63\x21\xc7\x2b\xa3\x3f\x6e\xdb\xa2\xee\x5b\x85\x89\x61\x73\x64\x3d\x18\x00\x5b\x66\x49\xd6\x33\x00\x39\x4f\xf4\xf9\xb3\x40\x01\x8f\x1b\x97\xe5\x94\xeb\x5d\xd3\xc7\x71\x53\x2b\x9b\x37\x74\x6c\xb0\xba\x6f\x9c\xc0\x9d\x06\x5b\xe6\xba\x6d\xd9\x71\xb5\x9f\x9d\x40\x2d\x83\xaf\xf6\x9a\x72\x58\x81\x5d\x82\x57\x92\xda\x16\xed\x03\xe2\x89\x53\xf0\x4f\x47\x08\x55\xc8\x0e\x48\x45\x76\x46\xb0\x96\xef\x3d\x3f\xcd\xe0\xd3\x53\x72\x44\x45\x5f\x9f\x4f\x92\x00\x14\x2c\x39\xfb\xa7\xc1\x59\xb4\xcd\x76\x7b\x32\xbf\xb2\x46\xfd\xd5\x44\x02\xbd\x36\x97\x60\x6a\x55\x9d\x8e\xe7\x92\x7d\x1f\x96\xfa\x12\x1c\x8d\x8a\xd3\x31\x9c\xb3\xbd\x4f\x26\xe2\x13\xa0\x4c\xc1\x7c\x9c\x70\xbb\x5b\x64\x07\xc7\xbe\x22\x1a\x81\xa1\x4d\xd6\xdc\x29\x3b\x70\xbb\x1f\x35\x44\xe7\xfe\xea\xda\x98\xda\x20\xfb\xcb\x28\xc8\x53\x37\xb7\x1e\xf2\xef\x2b\xd1\x01\x3e\xb0\xb5\x39\x69\xd6\xfd\xbd\x03\xd6\xa2\xc0\x67\xf0\xf9\x4f\xf6\xfb\x2c\x39\x24\xdb\x95\x0e\x31\xe2\x7f\xcd\xee\x7e\xcf\xcb\xce\x7b\xe3\x0c\x9b\x6f\x8f\x59\xe9\x61\x8f\xed\x9f\xbc\x4e\xe2\x8e\xe0\xc2\x99\x13\xa5\x15\x5e\xc9\x48\xd1\x7a\x3e\x8e\x6e\x24\x6e\x3a\x23\xd0\x43\x96\xa4\xfe\x6e\x5b\x7c\x3b\xd7\x86\x71\x4e\x34\x15\xc0\xf3\xa0\x58\xd1\xc5\x79\xf0\xab\xa1\x19\xc8\x9d\xb0\xc7\x59\x89\xc5\x96\x43\x39\x09\x99\xf6\xec\x2d\x85\xb0\x10\x09\xc7\xfc\x2c\xaa\x3e\xaf\x79\x37\x27\x9b\x87\x43\x0f\x8c\x13\x10\x59\x30\x15\x8e\xfa\x8b\x10\x58\x36\x0d\xed\xca\xf3\x9a\x76\xf1\xfc\x79\xed\x3b\x21\x2c\x46\x62\xc1\xf0\x77\x6a\x2f\x68\x7c\xd9\xd0\xdb\x55\xa7\x36\x3b\x7f\xcf\x39\x0b\xb8\xf3\xa0\x37\x6b\x7e\x66\xee\x30\x27\x89\x8b\xa7\xe2\xe4\x9a\xc6\x51\x01\xb4\x27\x9d\xe4\xe8\x04\x0c\x8a\xad\x13\x80\x76\x86\xae\x5f\xd0\x1d\x84\xe6\xea\xf4\x80\x5c\x6c\xc0\x1a\x2a\x35\x08\xac\xdd\xc5\xbe\x12\x3d\x40\x1c\xdd\x72\x7e\x6e\xaa\x4f\x10\xce\x1b\x60\x53\x0a\x4f\x01\xdd\xea\xe5\x58\xc1\x61\x90\xdd\x3e\x0f\x96\x72\x02\x1b\xdb\x6c\xc7\x8b\x8e\x83\xed\xef\xf4\xe0\x0e\xd9\x7f\x38\x19\x82\x35\xdc\xdd\xe1\x6d\x6d\xac\xe0\x18\xc8\xfe\x8e\x0e\xec\x45\x7d\x87\xa5\x7e\x38\x8e\x2e\x76\x2a\xbd\x33\xc3\xfe\xe9\xa4\x9c\xdb\x5d\xe9\x27\x45\xb1\xfb\x9a\xa5\x67\x3d\x04\x5d\xed\x8b\x64\x95\xdd\xef\x0a\x88\xc1\x72\xa6\x13\xc6\xd9\x80\xd6\x43\x73\x2e\x88\x73\xef\x9c\x46\xc6\x6b\xa9\x4c\xbf\x1c\x4a\xcf\x88\xbc\x9a\xa7\xf6\xe9\x03\xe0\xe0\x13\x4b\x61\x2c\xef\xfc\x7c\xb7\xf3\xd3\x3b\xde\xe1\x1b\xcb\x20\x2c\xef\xf4\x49\xde\xf3\xa7\xf4\x7f\x3e\x8f\x38\x4d\xbc\x3b\x1d\xd6\xfc\x58\x01\xe3\x85\xd7\x79\x56\xa4\xc7\xac\xbc\xd9\x4f\x91\x24\xed\x3e\x0c\x0b\x89\x63\x65\x7b\x06\x66\x34\xbc\xc1\x08\x52\x7d\x62\x5d\x7f\xa9\x1e\x44\xca\xd1\x88\x0a\xc3\x98\x8c\x89\x5e\xa3\x85\xdd\x78\x4d\x8d\xec\x30\x19\xb9\x31\xd6\x37\x20\x01\x0d\x97\x73\xdc\x2b\x4e\x46\x6a\x98\x2d\xf5\xca\x2b\x43\xa5\x7a\xe2\x5a\x18\xef\x9a\xb5\x60\x3b\xc2\xbc\x80\x29\x6e\x26\x25\x9d\x1b\x30\xdf\xb9\x34\x5e\xd4\xaa\x67\x2b\x98\xb9\xb2\xdf\x87\x10\x9b\xaa\x9c\x2f\x30\xbe\xfc\x61\x15\x32\xce\xc5\xc5\x60\xba\xce\x7f\xdd\xfe\xfd\xeb\xf6\xcf\xb5\xda\xfe\x75\xfb\xf7\xaf\xdb\xbf\x7f\xdd\xfe\x0d\xde\xfe\xb5\xcc\xe0\xad\xec\x12\xca\xb2\xf7\xac\xc7\x52\x1d\x1d\xe2\x4c\xe7\xd1\xd3\xa1\xd5\xdb\x60\x9d\xf8\x7c\xf9\x11\x72\x31\x08\xab\x33\x8b\x0e\x8d\xd3\xeb\xf6\x48\x3a\x0b\x01\xcc\xc5\xbc\x2d\x0d\x4d\xaf\xe9\x14\x85\x16\x55\x9f\x8b\xb3\x2d\x2e\x4d\xa9\x37\x73\x31\x9c\x7c\xe4\x3a\x05\x4e\xbb\x63\xe3\x07\x9a\x91\x82\x16\x4a\x03\x47\x18\x5d\x62\xe8\x94\xd2\x5b\xc4\x6a\xc3\x79\x2e\x51\xdf\xa6\x1c\x40\xc6\x4a\x9a\x6d\x0d\x1e\x39\x3a\x45\x06\x97\xda\xf0\x69\xa2\xaf\x4c\x7f\x63\x03\xeb\x63\xe8\x8c\xe0\x2e\x61\x37\xd3\xca\x39\xa4\xb6\x8a\xb3\xee\x0a\xda\x09\xfa\x4c\xbb\xc2\xe9\xd0\xea\xfe\x6b\x50\xa7\xec\x0a\x8b\x41\x58\x9d\x59\xb4\x2b\x4c\xaf\xdb\x43\xaa\x0b\x01\xcc\xc5\xbc\x4d\xdc\xd3\x6b\x3a\xa9\x7e\x51\xf5\xb9\x38\xdb\xeb\x64\x4a\xbd\x99\x8b\xe1\xe4\x5d\xe1\x14\x38\xed\x8e\x8d\xef\x0a\x23\x05\x2d\x94\x06\x76\x05\x5d\x62\x68\x57\xe8\x2d\x62\xb5\xe1\xdc\x15\xd4\xb7\x29\xbb\xc2\x58\x49\xb3\xad\xc1\x5d\xa1\x53\x64\x70\xa9\x0d\xef\x0a\x7d\x65\xfa\x1b\x1b\x58\x1f\x43\xbb\x82\xbb\x84\xdd\x8c\x4b\x79\x53\x7e\xdb\xef\xaa\xac\xaf\xa0\xbc\x21\x22\x60\xeb\xf5\xc5\x49\x9b\xc5\x4c\xbd\xc8\x2c\xd5\xc4\x0c\x0d\xc1\xd2\xc3\xba\xf3\x74\xdc\x3a\xd4\xba\xcf\xa5\xae\xc3\x64\xf7\x14\x98\x3c\xb7\xfd\x8a\xff\x19\xd5\x63\xff\xb4\x9a\xad\x3f\x5e\x47\xf5\x47\xe9\x9b\xfe\x40\xed\xd1\xe9\xea\x9f\x45\x2a\x9e\x33\x2b\x73\x4e\xd5\xd7\xcc\x55\xca\x38\x7d\xe0\xdb\x9e\xf7\xe0\x48\x0b\xc1\xea\xaf\x8d\x94\x8a\x18\xff\xcd\x91\xbb\xa7\x49\x08\x49\xc2\xfd\x93\x47\xd8\x89\xae\x32\xcb\x14\xd3\x4b\x54\xc4\xf3\x15\xb6\x27\xaa\x50\x87\x54\x97\x6e\xc5\xe3\xa0\x0a\x71\x40\xfd\xd7\xab\xbe\xab\x55\x70\x87\x0c\x9c\xfa\x1f\xb3\x43\x99\xaf\x92\xa2\x3d\xcf\x56\x62\xf7\xbf\x99\xd1\xac\x20\x0a\x45\x35\xe5\xc1\x49\x33\x7e\x0a\xa7\xbf\x6c\x65\x10\x3d\xbf\x3f\xf2\x0c\xbf\xdf\x72\xdc\xcb\xd6\xd1\xf9\x57\xf0\x84\x85\xeb\xb1\x74\x52\xa9\x52\xa5\x25\x74\x38\x9e\x1a\x04\x38\xe6\x65\xd9\x75\x8c\x2c\x6b\x8f\xc6\x0a\x97\xe6\x01\x9a\x6c\x87\x5e\x43\x3c\xdb\x9c\x94\x4c\x61\xb6\x37\xfa\x5c\xd7\xef\x79\xde\xd6\x27\xb8\x39\xeb\xaa\x13\xdc\x78\x3b\x8e\xa4\x76\xdf\xa6\x39\x9e\xaa\x97\x86\xa3\x68\x47\xaa\x96\xfb\xc1\x21\x39\x96\x7e\x1c\xc7\x97\xf9\xf6\x3e\x3b\xe4\xe5\x45\x3b\xae\x0b\x93\xf3\xb7\x2e\x92\xe3\xbd\xbf\xc9\x8e\xc7\xe4\x4b\xe6\xed\xd1\xf1\x61\xb5\xca\x8e\x47\xef\x58\x1e\x76\xdb\x2f\x4d\x5c\x92\x56\xda\x75\xf4\x98\x14\x0f\x0a\xfb\x7c\xfb\xa5\x1d\x17\xaf\x4a\x06\x9b\xdd\x61\x16\x9f\x4c\x23\xe3\x86\x16\x8e\xa1\x9c\x5a\xc9\x18\xe6\xa9\x55\xea\x29\x18\xaf\x30\xda\x2d\x37\xc9\xbc\x73\x79\x72\xbf\x1b\xf0\x79\x7e\xd7\xeb\xb4\xfc\xae\xc7\xf7\xd8\x76\x35\x6e\xa5\x9f\xf0\x21\x82\x8c\x23\x0c\x10\x14\x56\x90\x54\x8f\x2b\xc3\xc4\xfd\x2e\x87\x9c\xfe\x46\xf4\xc9\x17\xb3\x07\xef\x5a\x5c\xdf\x0e\x60\xe3\x22\xc4\xaf\xc9\x61\x2b\x49\xcb\x26\xc4\x26\xe9\x69\xb4\x66\x61\xb7\x16\x98\x02\x74\x88\xb7\x53\xea\x29\x3f\x96\x6d\x1a\xaf\x40\x2b\x13\x82\x16\x68\x3b\xe0\x51\x7f\xdc\xbc\xa0\x23\x92\xa9\xc0\x42\x4d\xf8\x27\x22\xfe\xd6\x41\xbb\x3a\x1d\xeb\x8d\xbb\x09\xdd\x64\xb8\xc3\xc1\x48\xf1\x60\x6f\xb4\x5e\xc7\xe2\xac\x76\xf5\x58\xee\xea\x13\xe2\x4c\x5f\x0e\xe6\xfe\x50\x61\x8f\x26\x17\xff\x67\xc9\xd3\xe8\x4c\x7e\xde\x71\x22\xb4\xf4\x10\x46\xe0\x4f\xcf\xfc\xad\x13\x9c\xd4\xd1\x58\x21\x76\x95\x21\x3e\xd5\x7b\x20\x76\x85\x6c\xad\x47\x3f\x79\x28\xe5\x24\x97\xf7\xbb\xd4\x4c\x8f\xa4\x42\x52\x0e\x0c\x46\x4f\x3d\x50\xa4\xcc\xaf\x66\x44\x06\x75\x56\xeb\xa1\x11\x54\xe4\xdb\xdf\xe5\xbe\xaf\xf1\x9d\x5e\xbe\x0e\x52\x3a\xad\xb8\x9d\x3e\xa0\x97\xc4\xd4\x9e\x51\xe5\x74\xbd\xb0\xc6\x72\x69\x6d\x1b\xd3\x99\x95\x27\xa5\x50\x68\x8f\xe2\xc0\x3c\x8c\x42\x18\x9b\xff\x51\x00\x63\x94\xb0\xdd\xa5\xd9\x2c\x42\x6d\x57\x18\xc3\xb0\x5d\x7e\x0c\x21\x3b\x9f\xd9\x24\x94\xba\x55\xc6\x90\xea\xd6\x18\x43\xeb\xd0\x4a\x90\x36\x8a\x54\xbb\xc2\x18\x4a\xed\xf2\x63\x08\x39\x13\x30\x4d\x45\x6e\xa8\xf2\x18\xa2\x43\x75\xc7\x90\xee\xa4\x8d\x1b\xc5\xb4\x53\x63\x0c\xbd\x4e\x85\x31\x9c\x7a\xb7\xa1\x5e\x6e\x38\xa1\x86\xcd\x65\x26\x54\x18\x4a\x8a\x32\x85\xa1\x8c\x54\xec\x1d\xb5\x91\x7a\x3d\x83\xf7\xdc\xbb\xa5\xea\x6d\xb4\xde\x4e\xad\x90\x76\x74\xff\xe4\xf1\x76\x34\xbb\x8b\x6b\x5b\x9e\xfc\x6b\xe7\x26\x6e\xb2\x61\x4f\x4e\xf8\xb4\x28\x4f\x6f\xa7\xee\x78\xdc\xfe\x39\x79\x7a\xab\x2a\xba\x3f\xfa\x38\xf9\xd7\xce\xab\xdc\xb2\x4e\x98\x98\x6a\x22\x39\x21\x17\x44\x32\x23\x35\x43\x32\x3f\x73\x42\xb2\x6c\x76\xbc\x64\x69\x2a\xa8\x5e\x08\x13\xba\x37\x33\xed\x53\xbb\x62\x35\x7b\xea\xbe\x50\x45\x71\x05\x4b\x70\x48\x12\x70\xf5\xb0\x4d\xb3\x83\xba\xdc\x9a\x49\xa2\x23\xab\xb3\x95\x5b\xf4\x0c\x94\x3d\x7b\x91\xf7\xa1\x30\x61\x89\x4c\xe5\x0d\x9d\x26\x66\xce\xd2\x6c\xce\xd2\x6a\xd0\x8e\x28\x1f\x4c\x4f\x50\x6f\x66\x89\x9d\xcf\x3d\x8d\xca\xe3\xec\x53\x16\x9e\xcb\x3f\x17\xa6\x9f\x3e\x31\x13\x4d\x3f\x90\x09\xbd\x5c\x92\xc9\xa5\x53\xf7\xb9\x1d\x89\xf8\xbc\x8b\xf2\xcf\x58\x85\xaf\xb1\xec\x5e\x7f\x9d\x39\xc2\xad\x1b\x31\xdd\xaf\x3b\x71\xe1\x27\xef\x21\x6f\x27\x27\x5a\x5a\x24\xde\x74\x5a\x79\x25\xd1\xa8\xd3\xce\x79\xc5\xa8\x06\xfc\x7c\xc9\xeb\xeb\x7d\x5e\x66\x3e\xc4\x55\xaf\xa6\xab\x13\x93\x7f\x6a\x3a\x42\x75\x27\xb1\x38\x39\xa0\x55\x7d\x3c\x75\x9f\x2a\x3e\x37\xa3\x1e\x04\x72\xb4\x23\xa7\x47\xc6\x46\x70\x5e\xb5\xe5\xb3\xa9\xe6\x33\xb3\xbc\xb4\xb4\x7d\xae\x04\xae\xd3\x30\xe9\x64\x6b\x1e\xc1\xa8\x4e\xe0\x0c\x89\x50\x0e\xbb\xaf\x56\x6a\x7e\x03\xc3\xfa\x7b\xb6\x4d\x75\x7a\x7a\xe3\xab\x8a\x90\x7f\xcc\x8a\xb5\xd6\x42\x77\xfb\x06\x51\x32\xf1\xec\xee\x0c\x25\xdc\x78\x57\x5d\xf3\x4e\xec\xea\x38\xac\x26\xc7\xc3\x2b\x20\xfa\x2e\xcd\x1f\x75\x82\x92\xbb\xdd\x63\x76\x71\x4e\xc4\xdb\xb0\x9f\x25\x85\x31\xc8\x01\xd0\xf8\x37\xaa\x5b\x08\xbd\x4b\x96\xdf\x0a\xb9\xc2\x0f\x9b\xa4\x50\x11\xfc\xbf\xaa\xcb\x7b\x8e\xf1\xb5\x75\x3f\xe1\xb8\x83\xb0\x14\xd1\xd4\xd9\x8a\x63\x4f\x26\x7c\xff\xd4\x07\xba\xbe\x60\x90\x78\x0b\xfc\x37\x95\xa8\x08\x9b\x29\x1d\x7c\x58\x97\x9d\xbc\x2d\x93\x48\x64\x30\x0b\xcb\x0c\x08\x7d\x59\x58\x66\xd1\x56\xb8\xb8\x1f\x37\x6f\x4f\xef\x49\x0d\xe3\x94\xbe\xdc\xbc\x1d\x4c\x83\xeb\xb8\x54\xd2\x09\x4a\x8c\x74\x53\xf0\xbb\xa1\x0e\xbc\x74\x4c\x74\x46\x89\x33\x8c\x8c\x0d\xe9\xa4\xf1\xe9\xcd\xbd\xf6\x03\x59\x53\x42\x79\x65\x25\x15\x34\xe3\x41\xdc\x37\x6e\xd6\x82\x90\x3f\x5a\x4b\xe2\xda\x4a\xfd\xba\x7c\x8d\xdc\x54\xfa\xc6\x33\x8c\xa3\x05\xe9\xb4\x71\xec\xcb\xaa\xf6\x43\x76\x97\x65\x6b\xba\xb8\xb3\xb5\x15\xfa\xa2\xda\x5a\xab\x00\xd7\xed\xfe\x2a\x39\xa4\x37\xd6\x41\xf6\x0c\x43\xa8\xf0\x3b\x03\x20\x85\xea\x39\xa6\xc2\x44\xe9\x34\x48\x3d\x59\xf6\x7e\x58\x87\xeb\x68\x9d\xbc\x58\xb6\x0a\x2a\x7f\xcc\xbf\xfd\xe4\xc3\xcb\xfd\x61\xf7\x98\xa7\xd9\xe1\x73\xbd\xbf\xe8\x3c\x76\xd4\xce\x63\x07\x42\xeb\x15\xf6\x74\x8a\x23\x47\x6a\x1c\xb3\x0d\x94\x6d\xee\xb2\x83\xbf\xdf\x7d\xad\xed\x4e\xfc\xf2\x90\x7f\xf9\xd2\xf1\x15\xcb\x1d\x69\x21\x51\xbe\x5d\xef\x0e\x9b\x2c\xd5\x93\xe4\x55\xc7\xac\x86\x3c\x5a\x09\x90\xac\x7c\x47\x13\x11\x79\x6e\x6c\xed\x5e\x0c\xc8\x8e\xc4\x37\xb5\x0e\xbc\xcd\x83\x6d\x9f\x5a\xa7\x3d\xc5\x76\xb7\xcd\x7a\xb3\x0f\x1a\x1f\xcc\x03\x9e\x43\x58\x35\x2f\x88\xb7\x2a\x49\x13\x88\xeb\x90\x17\xcc\x2b\x0f\x2d\x45\x9e\x59\xfc\x31\xcf\xbe\x7a\x3a\x8b\x96\xa7\xd3\x86\xda\xb5\x14\x05\xea\xaa\x9b\xac\x4c\x20\x9a\xbb\x03\xbe\x99\xd9\x46\x2b\x42\x54\xa2\x9e\xee\xf8\xf9\x96\xa2\xcf\x55\xd0\x5a\xe1\x2e\xda\xc5\x6b\x21\x6b\x76\x27\xdd\xa1\x9c\x6f\x24\xbe\x2a\x50\xc5\xd1\xb3\xda\x2a\x92\x76\xda\x31\xc5\xe0\x79\xb8\x77\x18\x85\x2c\x81\xdb\x4d\xcd\x58\x6f\x39\xca\xbe\x80\x5b\xdb\x33\x39\x48\x5a\xed\x1b\x8e\xda\xbe\x57\xee\xe9\x56\x06\xc6\x6e\xee\xac\xda\x6e\xc5\x4e\xa8\x35\xdc\x7b\xfb\x54\x66\xd2\x8b\xe4\x30\x97\x3d\xc9\xd6\xeb\xf7\xf7\x59\x52\x94\xf7\x3e\xcc\xaa\xa2\x14\x64\xbd\xda\x3d\x94\xfb\x87\xd2\x4b\x53\x2f\xdb\x38\xc4\x72\x45\x5b\xa9\x36\xe3\x19\x97\xdb\xfb\x0b\x1e\xb3\xe4\xb0\xba\x87\xd4\x02\x45\xae\x8d\xd9\x3c\xeb\xa0\xfb\x7b\xbe\x6d\x94\xad\xad\x6e\x18\x22\x96\xe4\x84\x4f\xdf\x2e\x51\x9a\x1f\x57\x92\xd6\xbf\xf9\xab\x7b\x30\xbe\x82\xac\x06\x6a\x1c\xf5\xa1\xfe\xa1\x50\xd6\x2d\x9a\x2b\x35\x28\x40\x8e\xae\x87\xa3\xa7\x0f\xc8\xe8\x90\x6d\x76\x8f\x99\x9f\x14\xc5\xc5\x25\x2a\x77\xfb\x5d\xb1\xfb\xf2\x4d\x8e\xf3\x21\x5f\x1d\x35\x2e\x6a\xbc\x95\xb5\xd9\x40\x52\xd5\xfc\x28\x0f\xfc\x89\x4a\x94\xa0\xe6\x53\x7f\x9b\x90\xd7\x01\xac\xc8\x9a\xe1\x06\xe3\x31\x7d\x77\x0e\xf7\xfa\x79\x2a\x47\xb3\xfc\x66\x7d\xa9\x2f\x88\xf5\xc7\xe7\x2e\xff\x73\xd9\xb5\x77\x0f\x37\x0e\x8a\xed\x2a\x45\x7a\x49\xd1\x91\x11\xdc\xce\xff\xdf\xfe\x3e\x87\x34\x3b\x95\xfb\x48\x74\xa0\xa0\x9b\x54\x07\x2a\xf4\x92\x6c\xa7\x8e\x24\xdd\xce\xcb\x9e\x6e\x77\x48\xb9\x29\x31\x95\xa4\x0d\x95\xb1\x95\x3e\x6f\x22\x89\x37\xc5\x87\x48\x7d\x7a\xee\xe1\x7e\x92\xaf\x61\xcc\x25\xfd\xba\x62\xef\x12\x70\x96\x68\x2f\x85\xde\x0c\xba\x66\xea\xbe\xc8\x50\x98\xcf\xe6\xaf\x33\x99\xd6\x3f\x0b\x2b\x5a\xc8\x59\x6a\x25\x91\x37\xaa\x2a\xb4\x76\x83\xc9\xbc\x7a\x2e\x9d\x34\xbb\xe4\xfe\xc9\x13\x4e\x9c\x46\xb7\xb0\xde\x65\x5e\x03\xe7\xfb\x27\xe8\xf0\x99\x88\x51\xc9\xb3\x20\x9e\x1b\xea\x43\xe5\x52\xd4\xd0\x65\x75\xcb\x3c\xda\xe8\x73\x65\x06\xfb\xe6\x7f\xdb\xa5\x99\xf7\xff\xaf\x3e\x7b\x6f\x5e\x26\xa1\x53\x57\xff\x6f\x55\xc2\x82\x30\x9e\x2e\xb8\x56\xae\x9c\x41\x8d\xb3\x50\x71\xd3\xab\xaa\x69\x5b\xba\x4c\xed\x4c\xa5\x0f\x39\x9b\x16\xe6\x24\xbd\xcb\x88\xa6\x65\x4c\xa1\xd2\xc8\xca\x9d\xee\xdb\x1d\x1c\xee\xc2\x08\x92\x8e\x44\xca\x53\x87\x7b\xca\x30\x2f\x19\xde\x45\xc3\xda\x4e\xf0\x3e\xb1\x0f\xef\xd2\xfc\x71\x4a\x3f\xa0\xdc\x82\xbe\x18\xf5\xe6\xf5\x47\x56\xac\x48\x24\x06\xcb\xe9\x96\x9b\x89\xea\xb5\x99\x28\xcc\x59\xe2\xe6\xad\xcd\xfd\x8d\x23\xb1\x51\xd7\x78\x3b\x98\xb1\xd8\x3c\x69\xd7\xde\x74\x92\x23\x9a\x47\x6a\x27\x1a\xae\x34\xba\x81\xa3\x5b\xee\x64\xbe\xa6\x1e\xc4\xed\x6e\x53\xf9\x44\xb8\xdd\x6d\x2a\x9f\x08\x77\xdd\xd5\x21\x07\x87\xc1\x9e\xca\x95\xd7\x83\xbb\x32\x24\x0f\xee\xa9\x59\x85\x70\x54\x9e\x27\x20\x03\x74\x46\xa7\xda\xba\x9e\xc1\x56\x07\x64\x0f\xf0\x03\x5a\x25\xfb\xbc\x4c\x8a\xfc\x7b\x36\x52\x1f\x25\x5f\x8f\x3d\x30\x1e\xf6\xfb\xec\xb0\x4a\x8e\xd9\x0b\xda\x1f\x76\x5f\x0e\xd9\x51\x6d\xc8\xa5\xdc\xef\xb7\x49\x69\xa9\x29\x6b\x46\xa0\xcf\x10\xc6\xa7\x43\xb6\xcf\x40\xd7\xa2\x7f\x75\xf3\xea\x9a\xba\xf4\x4a\xab\xc5\x6b\x2d\x3a\x5d\x9c\x6b\x6e\xae\x13\x51\x3b\xd9\x7b\xcb\x05\xe1\x34\x3f\xde\x65\x1e\x4d\xcf\x4d\xc6\xeb\xd7\xf6\x09\x1c\xaa\xfa\x6c\xf8\x1f\x59\x2a\x78\x72\x9a\xaf\xa2\xba\xaa\x6e\x14\x20\x17\xcb\x70\xec\x80\xb1\x97\x3e\x15\xa7\x4e\xdd\x9f\x32\xf2\xa7\xcc\x97\xad\x7a\xb5\x6e\xd8\x81\x1f\x1c\xb2\xc7\x2c\x29\xda\x5e\x66\x8e\xed\xdc\x28\xad\x32\x40\xb7\x8c\xad\x3a\xdf\xff\x91\x6d\x9e\x1f\xf3\x63\x7e\x97\x17\x52\x9c\xd4\x2b\xa9\x73\x0b\xeb\xa8\x59\x25\x16\x6f\x41\x80\x9f\x45\x56\x69\x70\x55\x9a\x7f\x57\xb3\x35\x03\xb5\x35\x1f\xd7\x2e\x58\x95\xf8\xfb\xff\xfe\xdf\xff\x8f\x37\xe3\xcf\x9b\x61\xb4\x8d\x43\xb6\xe1\xb3\x3e\x36\x6c\x30\x61\xdd\x21\xeb\x68\x2a\xed\x5a\x8d\x67\xa1\xba\x97\x86\x6d\xbe\x0d\xb6\x1e\x92\xae\x06\xb7\x32\xd1\x35\x31\x55\x9e\xf7\x80\x4f\x5b\x8a\x76\x17\xab\x2f\xfe\x2c\xed\x93\x12\x28\xfa\x6a\x54\x18\x59\x55\xc2\xfd\x53\x75\x09\xde\x70\xfd\x5a\xc8\xa0\xcd\xc5\x1f\x5c\x04\x8a\xba\xaf\xdb\xec\x0b\x10\xaa\xd9\x5a\x75\x49\x80\x47\xb1\x76\x25\x78\xb7\x1a\x62\xf5\x2e\x14\x35\xe8\x44\x83\xad\xeb\x76\x60\xd2\xdf\xd9\x8a\xa3\x9e\x52\x75\x42\xfd\x91\x19\xab\xb4\xf5\x93\x9a\x76\x02\x75\xa1\x30\xd2\x68\x15\x7d\xb4\x53\xd1\x25\xfb\xf7\xd1\x92\x75\x17\xdc\xd2\x4b\x82\xc8\x6d\xef\xb4\x8c\xd7\x23\xdc\x37\x77\xa3\x3d\xe9\xea\xf9\x2d\x19\xbf\xe1\x00\x6f\xaa\x3b\xe7\x79\x73\xda\x8b\x85\x6b\xf4\x15\xb9\xd5\x17\x0d\xcb\xa6\x70\xa4\xdf\x46\x1b\x54\x5d\x8b\x0f\xec\x1d\xfa\xa6\x69\x2c\xee\x83\x2e\x76\xaf\x3c\x9d\xeb\x4a\xe6\xd3\x7d\xb5\x90\xab\x2b\xc2\xea\x66\x6e\x1a\x06\xf7\x6e\x60\x16\xf1\xd5\x36\x55\x28\xc8\x36\x1e\x9e\xda\x35\x0b\xe7\x16\x60\x7d\x69\x68\x5f\x11\xea\xe5\x2d\xf0\xfe\xe9\xba\x0a\x03\xe2\x83\xb2\xe6\x6a\x93\xa7\x69\x91\x4d\x6c\xb9\xd6\x3a\x2d\x18\xdb\xaa\xae\x3d\x2a\x15\x9e\x34\x88\x42\xd6\xaf\xee\x42\x69\x76\x2c\xa5\x68\x9e\xef\xb6\xfd\x4a\x73\x54\x69\x2c\x27\xa0\x37\x16\xd8\xa5\x42\xdb\xb2\x07\x30\x70\x4f\xec\xde\x59\xb7\x68\x16\x57\x98\x32\xb4\x06\x2c\xe3\x7a\xd8\xf0\x3c\x2e\x92\xfd\x31\xbb\xaa\x7e\xbc\xa8\x93\x73\xba\xdb\xf8\x87\x6c\xf5\x6d\x55\xc8\x13\x5e\x69\x5b\xeb\xf6\x94\xb9\x79\xfb\x0c\x37\xea\xc4\x23\xea\x46\xdd\x75\x97\xd2\xbd\x39\x99\x48\xf2\xb5\xf5\x80\x0a\xc9\x6f\x4d\xb5\xfd\xad\x25\x34\xcc\x82\xee\x86\xab\x0e\x79\x8a\xa8\x75\x34\x81\x69\x34\xdd\x9a\x49\x23\xe0\x59\xad\x33\x99\x00\x06\x6d\xab\xc8\x74\xc7\x7f\x38\x11\x75\x96\x58\x30\x0c\xa9\x36\x0f\x54\x00\x2e\x6e\xae\x76\xdb\xe2\x5b\x97\x3e\x87\xca\x75\x4e\x83\x30\x74\xf5\xcb\xac\x28\xf2\xfd\x31\x3f\x2e\xc3\xe7\xed\x20\x16\x2e\xc3\xe4\x49\xed\xac\x92\x3d\x2c\x7e\x03\xb8\x7e\xd5\x36\xc6\x80\x0b\x90\xa9\x53\xbf\xa4\x8b\x13\xd9\x5f\xab\x52\x8b\xc8\x86\x46\xc9\x26\x70\xfb\x5b\x6d\x46\xa0\x0e\x80\xca\x3f\x62\x0a\x3e\xca\xa2\x02\x2e\xc6\x4d\xf0\xcd\x6b\x9b\xec\xbb\xe7\x9a\x3e\xeb\x52\x2d\x6e\x9f\xa4\x6d\x55\x4c\x2f\xc0\x96\x22\xae\x26\x48\x7d\xb6\x19\x6e\xe2\x9c\x4a\xd3\xae\x88\xa5\x46\x5b\x4a\xe7\x13\xac\x56\xaa\x23\x46\x9a\xad\x93\x87\x62\x22\x23\xba\xb7\x84\x40\x8b\x02\x2c\x39\xc8\xde\xd9\xcd\x83\x12\x9f\x2a\x1c\x69\x34\x1d\x74\x70\x70\xdc\x31\x9c\xb0\x49\xb6\xf6\x45\xc3\x28\x7b\x06\x9a\x66\x0c\x69\xd7\x97\x67\xcb\x49\x58\xec\x9f\x3c\x29\xa9\xf9\xed\x94\xe1\x84\x5e\x4c\x65\xe5\x6b\x48\x56\x53\x1f\x2d\x6c\x2e\x6e\x7f\xec\x3d\x57\x98\x87\x2d\xd2\x1c\xf2\x1a\x3a\xfa\x8f\x4d\x96\xe6\x89\xf7\x63\x13\x8d\x8d\x53\xbc\x7f\xba\x78\xee\x13\x6f\x0e\x37\x57\xdb\xf2\xde\x6f\x74\x41\x3f\xd2\x89\xac\xc8\x58\x87\x66\x5f\x8c\xf5\x67\x6d\x43\x2f\xae\x35\x93\x1a\xfb\xc7\x4d\x9a\x3f\xde\xf4\x2f\xaf\x54\x7d\x73\x18\x6e\xb4\x94\x32\x8d\xae\x1c\x6c\x88\x8d\xc8\x73\x0c\xf7\x98\x79\x0c\x98\x21\xd9\xe1\x73\x66\x74\x62\xc0\x20\xb2\xa7\x42\xbf\x2d\x66\x3a\x0e\xd2\x84\xd1\x6f\x3b\x39\x03\x9b\x01\x2b\xdd\xd4\x2a\xd2\x6f\x7d\xeb\x14\x16\xe5\x2a\x03\xff\x03\x1a\x5b\x7c\xd9\x30\x60\x74\xd5\xd3\xdb\xf2\x3f\x9a\xfa\x22\x34\xeb\xbf\xd4\xe4\xd7\xa5\xe7\xae\xf5\xed\x78\xb9\x7f\xbc\xd5\xdb\xc7\x2a\x29\x56\x3f\x4a\xb4\xbc\x7f\xf7\xe8\x45\x7f\x33\x6c\x62\x33\x6c\xbc\x19\x36\xd0\x0c\x9f\xd8\x0c\x1f\x6f\x86\x0f\x34\x23\x26\x36\x23\xc6\x9b\x11\x17\xee\x2d\x76\xca\x3c\xcd\xab\xe3\x68\xde\xf7\xe4\xf6\x3f\x11\x03\xd7\x14\xce\xab\x63\x63\x20\x00\x01\x36\x1d\x01\xd7\xe4\xce\xab\x63\x23\xc0\x98\x44\x80\x4e\x47\xc0\x35\xed\xf3\xea\xd8\x08\x50\x21\x11\x20\x42\x22\xd0\x6f\xb6\x02\xc6\x17\x79\x76\x7c\x53\x29\xe9\xd5\xc6\x63\xec\x34\x20\xad\x9a\xd7\x1e\x93\x80\x2d\xa9\x2e\xdb\x3f\x0f\x22\x15\xa4\x66\x73\x44\x4d\x1c\x18\x17\xac\xea\x90\x0e\x2e\x53\x33\x3b\xd8\x80\x39\xa1\x6f\xb3\x80\xf4\x77\xcb\xb0\xcf\xed\x2e\x47\xca\x25\x35\xb6\xf9\xf6\xc0\x96\xd4\x12\x7b\xaf\x6b\x65\xf5\x94\xbd\xac\x96\xb6\x26\x6d\x7c\x7d\xe6\x03\xee\x1d\xd2\xad\x0e\x9f\xb3\xc5\x56\xd2\x5e\x73\x87\x7c\xd8\x95\x49\x99\xfd\x48\x22\x9c\x66\x5f\x2e\x66\x75\xd1\x40\xc7\xd0\xd7\xd5\x4a\x5b\xfb\x18\x56\x5d\x14\x38\x7d\x8a\xf4\x91\xd7\x97\x74\xa8\xad\xbd\x71\xad\xd7\xb7\xe6\xd2\x60\x2c\x33\x4c\x5e\xce\x24\x08\x6a\x79\xcf\xcf\x1e\xb3\x6d\x79\x54\xa6\x62\x6e\x07\xa9\xa8\x3e\x60\x4d\x69\x54\x19\x5c\x0f\xb4\xac\x94\xf4\x96\x70\x3b\x84\xa7\xbe\x53\xed\xc1\xe1\x00\xec\x54\x71\x52\xd9\x93\x0b\xaf\x4c\x2b\x43\x13\xbb\x4b\xb5\x09\x72\xd5\x32\x80\xf3\x57\x59\x51\x4c\x86\x7c\xf3\x76\x02\xde\x6e\x6a\xd7\x56\x21\x64\x46\x3f\x6e\x6c\xb5\xfc\xdb\x96\x0a\x6c\x74\xe5\xb7\x8f\xea\x5d\x19\x71\x18\x73\x87\xf7\x8b\x3e\x46\x75\x0f\x11\xd6\x71\x8f\x50\x65\x29\xe9\xf9\x61\xeb\xbc\x87\xa3\x8b\x4b\xec\xc9\x51\xf0\xe4\xa2\xf0\x7c\xd6\x0d\x1d\x65\x6b\x8e\x60\x15\x75\x27\x51\x39\xe4\xc1\xc2\x52\x23\xeb\x3b\x17\xd9\x3b\xb5\xc8\xec\xdb\x3c\xb5\x6c\x2d\xea\x87\x20\x93\xa6\x9f\xc5\x44\xde\x51\x9d\xfe\x7b\xf8\xc4\xaa\xc8\x92\xc3\xd5\xdd\xae\xbc\x9f\x46\x2a\x72\xd0\x5d\xeb\xd2\x40\x9f\x05\x3d\xae\x1a\x77\xf9\x56\x5d\x69\xc9\x7d\x24\x2d\xfa\xdd\x7f\x86\xbe\x55\xae\x41\x69\xd1\x17\x65\xa2\xd7\x3e\xbf\xd5\xbe\x97\xa6\xce\x66\x3a\xc5\xca\x21\x4c\xfb\xa0\xd4\x9f\xcb\xc6\x3a\x57\x12\x1d\xae\x03\xb4\x56\x34\xaa\x8f\xfa\x8a\x80\x47\x9c\xa9\xe6\xe2\x56\x56\xfe\x71\xf8\x6f\x96\x1e\x2e\x34\x9c\x91\x16\x0c\x51\xd3\x77\xeb\xca\x1d\x28\x41\xdf\x0e\xe3\xbf\x59\x4e\x62\x13\x5b\xbb\xd1\xce\x2a\x83\x6d\xaa\x42\xcf\x8b\xc1\x1b\xc6\x31\xda\x12\xdc\x1d\xda\xb4\xdd\xa2\xa3\xde\x73\x3b\x4e\x6b\x5f\x54\xd6\x2e\x2e\x1e\x5a\xed\xf6\xdf\x7c\x6d\x69\xad\xfe\x19\x41\xc3\x55\xa5\xd1\x8e\x75\xfc\xf6\xae\x30\xc4\xbd\xc3\x9e\x2b\x9e\xc4\x30\x55\x29\x07\xb8\x77\xa3\xb4\x5d\x97\xb3\x42\x5b\x90\x89\x1c\xe0\x26\x4d\x6d\x83\xfc\x49\x75\xca\xf1\x3a\x1a\xc1\x49\xf0\xeb\xb2\x53\xe1\x36\x1c\x68\x3a\x7c\xb3\x8e\xdd\x4e\xdf\x6d\xb1\x31\x9b\x8e\x8c\x46\x5f\x0e\xc9\x37\x9f\x61\x7c\x31\x77\x66\xff\x20\x96\x37\x0d\xe5\xeb\xc6\x35\x72\x76\x3f\x5c\x6b\xa1\xe3\x65\x34\x7d\x19\x0d\x28\x66\xf1\x54\x5e\x59\x82\x29\xc2\xbb\x34\x75\xbb\x47\xf5\xac\x20\x57\x9d\xe7\x96\x7e\xbe\x6b\x21\x6a\x8c\xa9\xc0\xf8\xe2\x05\x95\xbb\x5d\x51\xe6\x7b\x7f\x9f\x6c\x33\x98\x82\x8e\xbd\x92\x5d\xc0\x3e\x5a\x54\x07\xd3\x96\x89\x91\x79\xe2\x58\xaf\xd7\xce\x1d\xab\x23\x72\x55\x07\x8f\xd6\xe7\xce\x19\xc8\xe7\x42\x9e\x81\x1c\x22\xbd\x3a\x92\x04\x55\x2c\x72\x08\x98\x61\xa1\x7f\xd9\xed\x6e\x57\x18\x48\xf3\x83\x5a\x75\x57\xab\x5d\xf1\xb0\xd9\xba\x87\x00\x6d\xb2\xed\x83\x7a\x03\x4a\x47\xd8\xc3\x3a\x57\x48\x9d\xaa\x96\x94\x3d\x10\xa6\x9d\x74\x43\x7b\xdb\xd2\xa3\xaf\xcc\xb0\x2d\xf8\x4a\xc9\x6b\xb6\xa2\xaf\x94\x5d\x1d\xa8\x76\x78\x81\x2d\x9b\x4e\xed\x50\x84\xca\xbc\x2c\x7a\x99\x8c\xb5\x45\x4f\xf3\x7c\x1c\xe8\xab\x68\xc7\x31\x42\x74\xa2\x31\x6c\xe5\xad\xdc\xc2\x93\x36\xa6\x33\xed\x7e\xdd\x93\x9b\x6c\xf3\xdc\x59\x0b\x01\xac\x85\x76\xe1\x34\xbd\x49\xba\x65\xe3\x38\x6e\x67\x80\x03\x09\x57\xb2\xf5\x6e\x69\x6e\x43\x1e\xef\xcb\xe5\xc8\x5c\x74\x5a\xa0\x4e\xdc\x3b\x77\x2d\x9d\xa9\xb2\x52\x31\xb5\x84\x31\x43\x2c\x8f\xfb\xc9\xe3\x66\xc4\x5c\x38\x72\x56\xad\xee\x42\x47\x2a\x2b\x91\x68\x0e\x11\xb4\xa9\x88\x75\x52\x44\x48\xba\xfa\x6d\xbd\x3b\xfc\x24\x17\xc4\x5d\x72\xd0\xe6\x5f\x9f\x9d\x06\xf8\x20\x05\xb9\x8d\xec\xf4\xd2\x31\x9c\x86\xe0\x77\xeb\xbe\xc9\xb6\x36\xfc\xc1\x6e\xd3\x3e\x6e\x77\x6f\xe7\x22\x1e\xc3\xed\x5c\xef\xbc\xb6\xa6\xa8\x01\x51\xdf\x72\xc5\x71\x20\x41\x38\x3b\x6c\xdf\xc0\x75\x9b\x8f\x63\xe1\x6c\xfe\x9e\xb4\xd3\x7c\x29\x16\xd3\x52\x0b\xfe\x1b\xa8\x05\xb5\xd3\xdc\x11\x55\xc1\xd7\xd0\xf1\x7e\xf7\xf5\xcd\x67\x13\x8a\xaa\xde\x1a\x9c\x77\x2d\x6d\x44\xeb\xb3\x43\x71\x00\xc2\xfc\x0b\xba\x3b\x24\xdb\xd4\x2f\x76\x10\x40\xa1\x3f\x28\x8e\x79\x68\x86\x99\xab\xa2\xe4\x00\xc1\x79\xe8\xf8\x7b\xbe\xf7\x8b\x7c\xfb\xfb\xf1\x79\xf7\x50\xca\x6e\xc2\x3e\xa6\x77\x26\xd2\xc4\xc4\x80\xcd\xad\xc7\xbe\xf4\x7a\x7c\x6b\x71\xec\x61\xf5\x06\x80\x9b\xd0\x3d\x95\xa8\x0e\x1a\x03\x95\x90\x04\xc3\xcf\x7a\x6b\x84\x5f\x45\x52\x66\xff\xfb\x8f\xbe\xc0\x7f\xbb\xe8\xf4\xc3\x4b\x2e\x3b\xaf\xf4\x41\xa0\x15\x96\x77\x72\xc5\xee\x7b\xb9\xab\xd8\x6a\x02\xc3\xba\xcc\xb0\x97\xaa\x5c\x5b\x76\x4f\xfe\x31\xff\x2e\x7b\x56\xf3\xef\xa7\x0e\x02\xea\x6e\xd3\xff\x9a\x97\xf7\xf9\x16\xb6\x5a\xfc\xd2\x75\xde\xb5\x44\xe3\x36\x3b\x83\x30\x63\xf7\xf9\x6a\x77\xd8\xfb\x4a\xa8\xf2\x3a\x10\x3c\x94\xae\x8e\x00\x1e\x34\x59\x53\x6b\xdc\xd8\x5e\x6b\xca\x71\x40\x0f\xac\x56\x32\x01\x05\x8f\xb8\x1b\x2b\x4d\x6f\xae\xdc\x80\x0f\xbb\x7d\x76\x28\xbf\x81\xaf\x8a\x41\x0f\x2f\x9b\x24\xdf\x9a\xcb\x5e\xed\x01\xab\xfb\xc3\x6e\x93\xe9\x9b\xec\xcb\x80\xef\x9f\x2e\xae\x5d\xd0\x8c\x41\x71\xf1\x0a\x8c\xab\xf5\xae\x94\x73\xbf\xe5\xe9\xe7\x77\x55\xf8\xdb\xfc\xf1\xa6\x8b\xb2\xb2\x32\x7f\xb1\xab\xd4\x4b\x73\xbc\x2a\xe8\xb2\xac\x3e\x00\x2a\x97\x0c\x50\xf1\xde\x7a\x3e\xb9\x68\x41\xff\xc7\x7a\xb7\x03\xdb\x5d\xfb\xad\x39\x30\x00\xba\x17\x6a\x0f\xb6\x6e\xb8\xf5\xd7\x0e\x7c\xec\x62\x99\x51\x1c\x77\x87\x70\xc6\x78\xb4\x87\xf2\xcf\x1d\x42\xfc\x62\xd3\x6c\xff\x41\xc7\x10\x45\x30\xc6\x17\xe6\xdd\x42\x3f\x7b\xf3\x89\xed\xa5\x40\x30\x7e\xfc\x6a\xb7\xd8\x93\xd1\x68\x9d\x3f\x65\x69\x23\x3b\xe2\x0a\x4e\xe3\x5f\x49\x85\xf3\x52\x42\x80\xbe\xd4\x61\x6c\x6a\xb5\x7a\xe9\xee\xb5\xde\xe6\x1d\x4b\xee\xc2\xae\x7f\xd3\xb2\xe7\xbc\x86\x4d\xb2\xce\x68\x69\x05\xae\x3b\x9d\xc7\xdc\x24\x8e\x40\x06\x26\x2f\xac\x42\xab\x9e\x0c\x21\x99\x5a\x70\x1e\x58\x79\x7a\xbd\xe9\x84\x86\xb7\x68\xd3\x16\x05\xec\xc1\xb6\xaf\xcb\x8c\xb0\x43\xf2\x08\xd1\x96\xc7\x86\x28\x37\x02\x21\xfa\xf4\x09\xb9\x9c\x04\x23\x57\xf7\xe6\x8f\x19\x40\xab\xdc\xf4\x87\x07\xcc\x0e\x91\xe6\xb5\x2c\x09\x6b\x3e\x33\x0d\xd8\x28\x59\x4c\x24\x8a\x39\x24\x31\x9d\x20\x7a\xce\x67\xa3\xf5\xed\x16\x6e\x4c\x71\x04\xe4\x43\x07\xed\xf4\x1f\x8f\xb4\x90\x62\xb8\x67\x1b\x2c\x86\x1c\xb2\x8d\x07\xd6\x7f\x2f\xdd\x36\x07\x7d\xb7\x95\x20\xf8\xe5\xb0\xfb\x7a\x45\x46\x7a\xe4\x35\x2e\xe8\x15\xbb\xe3\xb8\xe6\x77\x87\xe6\x26\x10\x8c\xa6\x2c\xaf\xf2\xb3\x90\xf2\x5f\x9a\x84\xec\x8b\x3c\xde\x3d\x9d\xd9\x5c\xda\x8c\x36\x0c\x2a\x2c\x87\xdd\xf8\x9c\xf5\x79\x63\xc5\x6e\x35\xec\x30\xe7\x03\x69\x62\x07\x34\x11\x78\x8c\x99\x5e\x00\xb0\x52\x5d\xaa\x3b\x3e\xa0\x9e\x51\xcc\xac\xe5\x69\xdb\x1b\x8f\xc8\xb6\x83\x1b\x88\xab\xa4\x42\xb2\xb5\x29\x38\x62\xbb\x4c\x6c\x57\x1b\x47\x4e\x2d\xad\x8c\x2d\x67\x60\x3a\x0b\xbe\x69\x8c\x39\x90\x16\xa4\x4c\xee\x7c\xb9\x44\x8b\xdc\x9b\x38\x6a\xcd\x9e\x52\xf5\x58\xe9\x57\xd4\xbb\x8b\x05\x40\x8c\x6c\x4a\x1a\x48\x07\xe3\x49\x47\x9b\x41\x81\x51\x80\xc0\xd8\x7a\x1b\x4a\x31\xb2\x47\xbd\x8b\xaf\xfb\x8e\x3e\x3c\x94\xf2\x9d\x92\xfb\x7a\x65\xe2\x8a\x9f\x57\x82\xe1\xe3\xbd\xe7\x7b\xbd\xd0\x3c\xdf\x63\x42\xd6\x32\x95\xb1\xf2\x4d\xa3\xe9\x85\xf3\xe5\x58\x30\x29\x7d\x07\xa8\x8a\x1d\xb3\x7d\x72\x48\xca\xdd\xe1\xf3\x45\xcf\x6e\xc7\xdc\xbb\x9d\x0d\xb3\x0d\xac\x37\xea\x84\x75\x81\x2b\x6a\x47\x8a\xf1\xdd\xd5\xb9\x3e\xe6\xd0\x79\xdb\x2b\xde\xd2\xf4\xf3\xd1\x8c\x97\x5d\x44\xa3\xc9\x88\x9a\x94\x3c\x79\xe9\xff\xb3\x32\x0a\xb7\x0a\x7a\xf6\x38\x0c\xae\x44\x22\x57\x62\x9f\x8a\x79\x4a\x7b\xf6\x4e\xf3\x5b\x72\xc8\x13\x1f\x3a\xf1\xb9\x13\x2b\x2b\x29\xcb\xc3\x8f\x4d\x81\x8b\xd6\x5e\x6c\xe7\xf9\x3d\x38\x12\xfd\x1e\xb2\xcd\x38\x3a\xfd\x01\xdc\xba\x03\x0a\x07\xd7\xd1\xcb\xb2\xd1\x26\x55\xcc\xda\xa3\x67\x5c\x0e\x29\x73\xa3\xd9\x2c\x50\x8e\x78\xcb\x97\x3b\x70\xee\xd1\xd3\x30\x68\x87\xc4\xd1\x1a\x4a\xf3\xc0\x44\x9c\x63\x0a\xda\xf6\x7c\x0b\x3a\x60\x29\x71\x5c\xb4\x98\x7b\x27\xda\xc2\x04\x5e\x28\xe5\xce\xd1\xf8\x7b\x45\x5e\xf5\x65\x4a\xd1\x7d\x72\x28\x73\x4b\x2f\x5e\x69\xfc\x45\x93\x00\xf7\x0a\x7b\x74\xca\x20\xaa\xef\x72\x00\xe5\x49\xe0\x73\x47\x9e\x6f\x2e\x4e\x06\xc5\xb0\x41\xa0\x9e\x19\x5c\x04\xe6\x77\x1a\x55\xb7\xb9\xfe\x84\xc1\x19\xd8\x7a\xa6\xf2\xba\x59\x4c\xdf\x2d\x58\x87\xfb\x27\x50\xcc\xcc\xdf\xd7\x0c\x76\x80\x42\xc9\x0d\xda\x59\x4f\xc6\x49\xae\x3e\x47\x35\x0a\x4f\xca\xa3\x19\x6a\x5e\x57\x18\x95\x1e\x8d\x54\xa5\xb8\x07\x15\xfd\x3c\xa6\x69\x75\x75\x1a\x93\xb3\x63\xd0\xb7\xee\xa4\x99\xe5\x08\x63\xdc\xc2\x03\xc5\x55\x67\x23\xd3\xa0\x4c\xed\xcd\xcd\x97\xa6\x53\xe3\xa3\x3c\xae\x09\xef\x49\x72\xdd\x62\xb3\x3d\xcc\xb0\xc7\xca\xd8\x44\xd1\xbc\x63\x00\xe5\xb9\x15\x5f\xba\x63\xda\x79\x42\x8f\xaa\xb3\x93\x95\x4d\x7e\x22\x2d\x4d\xd8\x28\x6d\x37\xed\x11\xb8\x89\x77\x7c\xfc\xf2\xbc\xce\x8b\x42\x8f\x99\xba\x04\x0b\xdc\x1a\x2d\xb0\xd5\xf7\xeb\xe5\x65\xc5\x15\xd1\xd9\x55\xdc\x71\x45\x3a\xd7\xf7\xfa\xdc\x68\x5d\x1e\xab\x80\x19\x35\x15\x3a\x12\x25\xfc\x15\x03\x00\xf6\x91\xaf\xa1\x5c\x38\x9f\x95\xb0\x39\x7e\x55\x9a\xa8\x19\xa3\x58\x55\x99\x55\x7a\xe1\x88\x5a\xb5\xe7\x8f\xab\x4e\x6e\x55\x38\xd2\xe2\x9b\x83\x00\x56\x65\x33\x46\x00\xca\x4f\x2f\xba\xb0\xef\x4d\xd5\xf9\x1d\xf7\xd2\xf2\xb9\x63\x55\x6b\x74\xb8\xbd\x05\xba\x52\x21\xdb\xf2\xdd\xbb\x87\x79\x6b\x6d\x5a\x13\x33\xa8\xae\xc2\xe1\x8c\xcd\xcf\x6b\x79\xe9\x34\x4e\xc0\x64\xe9\xea\xb0\x30\x5b\x40\x25\x93\x51\x5b\xb0\xf4\x14\x6e\xcf\x2e\xc3\xbc\x41\xbb\xd1\xff\x69\xb9\xbb\xbb\xbb\x83\x67\x42\xec\x56\x53\x75\xa2\x9d\xd4\x97\xf1\x57\x8d\xcb\xb9\x47\x04\xde\x1c\x2f\x37\xc9\x93\xf5\xc2\x74\x4a\xb7\x79\x42\x9a\x5e\x9e\xc4\x13\xd3\xd7\xe3\xa1\xe9\x1f\xc2\x6e\x47\xd2\x23\xbd\x16\xa7\x4e\x4f\xe2\xf2\x3d\xf7\x8c\x03\xbc\xbe\x35\xcb\x5e\x15\xf5\x72\x39\x6b\x9f\x3b\xf1\xba\xc9\xc5\xad\xcd\x6c\xe8\x5c\x8c\xfb\x04\xf2\xe8\x77\xec\x3b\x05\x93\x45\x14\xe3\x0d\xdc\x7f\x5a\x64\x63\xc3\x98\x49\x21\xed\xca\x0b\xeb\x2d\x9e\x3a\x27\x9c\x25\x23\x6f\x7f\x69\x87\xb7\xaa\x87\x4b\xa9\xb1\x56\xbb\xed\x3a\x3f\x6c\xe0\xea\xe2\xa2\x5d\xf7\x1f\x6f\x67\x8d\xe1\x44\x88\xe7\x04\xb6\x70\xb4\xe7\x00\x9f\x3f\x05\x93\xa0\x1b\xd6\x6d\x57\xf5\x05\x85\xda\xf0\x5e\xac\xba\x5d\xc6\x28\x5f\xcc\xa3\x6e\x0b\xa0\x0d\xe5\x54\x00\x0b\x67\x60\x0c\xe0\xfc\x51\xef\x85\xf8\x6c\xc8\x0f\x14\x63\xdb\x24\xc0\x39\xb8\xa0\x8d\x5c\xb2\xc1\x18\x95\x17\xd6\x3b\x8d\xf3\xb7\xe1\x2c\x66\xdc\x8d\xa2\xd7\xb2\x05\x19\xb4\xe2\x18\x1a\xcc\x2a\xbe\xe8\x09\x43\x3a\x3d\x81\xc6\x40\xed\x33\x0d\xef\x09\x49\x36\xfa\xc1\xd9\x4a\x62\x53\x47\xd9\x1b\x09\xdf\x03\x2d\x9b\x9b\x9e\xb5\xfe\x39\xcd\x1f\x97\x72\x8d\x1e\x08\xa7\x54\x3e\x49\xa9\xe2\x06\xb6\x54\xc7\xd2\x82\xd6\x63\x19\xaf\x15\xd7\xa6\x8f\x39\x01\x15\x6b\xdf\xb6\xaa\x81\xc3\x1e\x60\xb7\x30\x53\x7b\x30\x04\xe7\x0c\x20\xca\x7c\xbf\xff\xe6\xdf\xed\x9e\x4e\x9c\x13\x27\xf4\x13\x67\xc6\x05\xd3\x99\x0d\xa6\x57\xf6\xab\xcd\x94\xe7\x49\x30\x43\x60\x4e\x86\x70\x26\xc9\xb0\x03\xf1\x74\x19\xb1\x01\xf9\xec\x74\x9f\x00\xea\xf7\xf5\x0d\x03\x90\xff\x85\x79\x28\x27\x9c\x81\xca\xfb\xc9\x7a\x61\x4f\x4f\x9e\xfe\xdb\x4f\x6f\xfc\x37\x9f\x4d\x55\x4d\xdd\xec\x43\xa1\xae\xa3\x7e\x5b\xef\x0e\xaa\x98\xf7\xb6\x25\xeb\x4c\x07\x25\x09\x68\x29\xc7\x3b\x1d\xcf\x33\xb6\xd5\xe9\xc8\x1f\xd4\x87\x57\x42\x7f\x31\xf9\x9f\xd6\x9d\xd7\x6a\xd6\xdd\xbd\x25\x6b\xf1\x1c\xfd\x7b\x85\x76\x5b\x1d\xec\x44\x64\x36\x34\x32\x33\xf5\xec\xe9\x74\x9d\x78\xba\x5c\x89\x9d\x9e\xa0\x65\x4e\x6b\x2b\x55\x88\xee\xeb\x41\x22\x9a\xf6\xd1\x59\x0a\x06\xf3\xf6\x74\xab\xde\xfc\x2a\x27\x1d\x76\x4d\x10\x4b\x8f\xb4\x00\x43\xc7\x36\xd2\x82\x91\x72\x25\x93\x3f\x97\x2a\xc1\xa1\xf2\xe4\x73\x28\x14\x5e\x7a\xe6\x34\x2a\x2f\x38\x5f\xca\xda\xb5\x57\x52\x9b\x18\x92\xbb\xdd\x63\xb6\x84\x1a\xaa\x8a\x0b\xea\x9c\x44\x0f\x16\x8c\xa5\x04\xa1\x80\x3c\x57\xb6\xf6\x2f\xea\xc5\x62\x4a\x80\xda\x93\x49\x41\x95\x5e\x4a\x0b\x66\xed\x05\xc4\x00\xd5\x9f\xb5\xb5\x0d\x6f\x5d\xf1\xdf\xcc\xbc\x79\xbc\x99\x7e\x4b\x78\xb3\xfc\x5a\xef\xe6\x84\x7b\xb7\x9b\x87\xe2\xb9\x8e\xb5\x64\x26\x31\xc5\xdd\x7e\x77\x6f\xea\xdb\x87\xa3\x79\x42\xf9\x82\xd1\x5c\x66\x20\x30\x2d\xe3\xe8\xfc\x09\x9b\x6d\x7b\xb0\x2c\xa9\xe9\xe9\xe4\x71\xb2\xd9\xc3\xc2\xbc\xaa\x67\xa0\xce\xd3\x6d\x2e\x6e\xde\x1a\x79\x3f\x1c\x27\xfa\xd9\x44\x3b\x97\xa2\x4e\x9d\xf8\x93\xc7\x5f\x0d\x42\xcb\x5e\x6c\x50\x59\xba\xf4\x42\x6d\xf1\x05\xd9\xd9\x2e\xb8\xce\x77\x3f\xb5\xdc\xe7\xc0\x74\xa0\x40\x4c\xd8\x32\xe6\xb9\xad\x51\xce\x68\x5e\xf2\x8a\xf6\x21\xaf\x69\xdf\x31\x01\xb6\x65\x6c\x3a\x71\x46\x20\xcb\xea\x59\xe6\xa2\x82\x74\x0e\x20\xe7\x1d\x7f\x0b\xe8\xd9\x46\x5e\x41\x7d\xb6\xf3\xa0\x1a\xb6\xcc\x3a\xe6\x4d\xd7\xba\x19\xb5\xce\x63\x10\x8b\x78\xae\x69\xd6\x1c\x63\xaa\x53\xcc\x9d\x4e\xb2\x47\x7a\xb6\xac\x75\x6d\xff\x4b\x48\x08\xd3\x84\x5a\x58\xe7\x65\x75\x2f\x63\x51\x6d\xe3\xed\x32\x8f\x46\xcd\x7a\xf3\xab\x2c\xa5\xbf\x0e\x88\x05\xd4\xd6\xc0\xe8\x2a\x8d\x7b\xb6\x33\xc3\x25\xe8\x6a\xc9\x5d\x95\xab\xfe\xf2\xaa\xa7\x0f\xde\x49\x79\xe0\x7b\x60\x4d\x8c\x1d\x14\xd5\x41\x7a\x55\x34\xb6\x8d\xd3\xe9\x66\xf6\x72\x6d\x2a\x2e\xa8\x73\xc2\xf2\x1d\x0c\x8a\x3e\x17\x88\x63\x08\x15\xd7\x13\x3a\x88\x91\xbe\x67\xda\x3f\x79\xef\x3c\xc9\xe5\x2e\x5e\xfe\xe3\xf8\xb0\x97\x14\x7b\xf4\xb6\xbb\xd2\x0c\xad\x62\xac\xf7\x8b\xe7\xff\x35\x98\x61\xd3\x79\xb8\xc7\x7f\x69\x2d\xe1\xad\x94\xb7\xb2\x54\x63\x35\x77\x01\xb7\x6b\x2f\xad\xb8\x7c\xf1\x3a\x01\x2d\x5a\xba\x36\xa4\x3a\x65\xad\x23\x30\x68\xf6\xb4\xdf\x1d\xb3\xd4\xdf\x27\xe5\x3d\x44\xdf\xac\x42\x18\xa8\x26\x55\x5c\xcd\xdf\x56\x45\x72\x3c\xfe\xf4\xe6\xcd\xe7\x9a\xb9\xe9\xea\xc5\x6e\xf5\xbb\x7f\xcc\x8e\xc7\x3a\x47\x12\x54\xef\x4a\x56\x53\x01\x3e\xec\x8f\xe5\x21\x4b\x36\x7e\x15\x1e\xcd\x08\x09\xea\xa8\x05\x76\xf2\xab\x5d\x51\xa8\x10\x62\x37\x4b\x5b\x2f\x93\x2a\xf6\xa8\xe3\x6b\x99\xca\xef\x47\xd7\xb7\x76\x36\xe8\xca\x30\x42\x99\xa9\xdd\xef\x0e\xf9\xf7\xdd\xb6\x4c\x0a\xff\xf7\x47\x80\xef\xff\x9e\x7d\x6b\x1c\x4d\x2e\x66\x4c\xc3\x49\x43\x3e\x3e\xbc\x63\x25\x5a\xb8\xcc\x1f\xf7\x66\x8c\xab\xf1\x6c\x07\xcd\x6b\x85\x1e\xaf\x12\x13\x4e\x1e\x21\x25\x4f\x9e\x34\x4e\x2d\x10\xbd\xa3\x55\x95\x9b\x3f\x0c\x55\xcd\x6a\x30\xf4\xb3\x1e\x12\xf5\xd4\x32\xd9\x9b\x3c\x00\x37\x6f\x6f\xde\x9e\xd4\x7d\x0b\x40\x6f\xe7\xa7\x94\x72\xe0\x35\x7f\xac\x54\xbd\x6a\xa4\xe0\x49\x8f\x93\xfc\xed\x8e\xb9\x68\x44\xc1\xbc\x34\x7e\x57\x9b\x62\x93\xa8\xcd\x5c\xf3\x69\xb3\xc4\x53\x77\x28\xf4\x29\x83\x7f\xe2\xd0\x4f\x19\xf8\x99\xc3\xbe\x6c\xd0\xcd\x21\x6f\x06\xdc\x99\x34\x74\xfa\xe8\x18\x61\xae\x17\x0d\x8f\x51\xbf\x7f\x7c\xc6\x0b\x75\x91\x5a\x30\x42\xb2\x5a\x3d\x44\x0d\xf1\xdc\xa4\xe9\x73\x4f\xe6\x84\x19\xbb\xec\xe7\xcb\xe9\x95\x74\x0d\x33\xc4\xf8\x49\x1b\xf2\xe7\x93\xc0\x38\xb0\x19\xdf\xcd\x3f\x8f\x97\x35\xe1\x9e\xb0\xdf\x7f\x5e\x52\xdb\x6c\xbb\x23\x23\x7c\xbe\xd4\xff\x9a\x9f\x3a\xd2\xc2\xe7\xcb\x32\x35\xca\xc9\x0f\x86\xcb\x35\x89\xcc\xc0\x29\x3a\x5c\xc0\x54\x0a\x38\x65\xb6\xde\xa5\x85\xf9\xbd\x93\xbc\xe1\x35\xdb\x56\xde\xf7\x6a\x4c\x2e\xbc\x34\x7d\x97\x96\xd6\x2b\x33\x57\xc2\x54\x3c\x7a\xc9\xe7\xe4\x8e\xce\xa7\x9a\x3f\xa1\xc9\xb3\x0e\x69\x45\xce\xa7\xf6\x23\x9d\x30\x3d\xe7\x44\x3c\x35\x70\x3f\x33\x5c\x00\x30\xa7\x42\x25\xd1\x9d\x15\x8d\x77\x76\xf7\x96\xcf\xcb\xe9\x33\xfb\xce\xec\xe0\x72\x30\xf6\xf8\x4c\xd8\x37\x4e\x1c\xc1\x56\x7b\x86\x0c\x78\x4e\xb8\xe7\x85\xd6\x08\xa7\xa7\x40\xd5\x50\xc6\x66\xbe\xcb\xcf\x5f\x81\x01\x9e\xa5\x91\x39\x43\x3e\x7f\x97\x3a\xdf\x5a\x7a\xcd\xb6\xff\x98\x31\x58\xbc\xb7\x9e\xbd\xc9\x3f\x68\xe0\xa7\xb4\xfe\xca\x43\x3f\x75\x0f\x5e\x24\xf0\x9f\x75\x57\x5e\x86\xc1\x92\x7d\x7a\xd9\xe1\xc6\xda\xb9\x17\x81\x58\xb0\x97\x2f\x12\xc9\xa7\xed\xee\xaf\x21\xed\x2f\x82\x39\x45\x02\x38\xfd\x78\x70\xaa\x4c\x70\x06\x0c\x26\x4a\x09\xaf\x7d\x14\x3a\x1d\xfe\x34\x49\x62\x7e\x3b\x13\x65\x8b\x9e\x29\x9c\x23\x86\xcf\x1a\xb0\x93\xdb\x7b\xf5\x0e\xb5\x7a\x33\x46\xcb\x23\xed\x2d\xe3\x8f\xe7\x1c\xd2\xd7\xe0\x4d\xaf\xd0\xe4\x9f\x3d\xec\xe7\x24\xb2\x13\x5b\x3f\xc7\xe4\x2f\xd1\xca\xfd\x49\x0d\x2f\x1d\xec\x93\x8f\x27\x4b\x69\x6c\x6e\xc3\x67\x21\xad\x93\x1a\x3d\xc7\xc4\x36\x3b\xee\x79\xc1\xbd\x1a\xa2\x4b\x47\xba\x47\x0c\x5e\x4a\x2d\x6e\x70\x0e\x55\xd6\x5c\xc8\xe9\x6b\x9d\x4a\xc7\xdb\x7b\x6d\xb1\x6a\x1c\x83\x73\x1f\x07\x07\x5a\x7c\x5d\x35\xc8\x40\xc3\x4b\xce\x63\x23\x22\xf9\x84\x72\xaf\x30\x84\x0b\x0e\x6b\xfd\xfa\x8d\x69\x27\xb2\xc5\xfa\x91\xfe\x8a\x53\xce\x56\x13\x4f\xef\x73\xb5\xdc\xf3\x87\xc9\xdd\xde\xf2\xd3\xfa\xb9\x30\x98\xb2\x6e\xcf\xd4\xe2\x12\x11\xe8\x2c\x0d\x4f\x3c\x9b\x9e\x45\xd3\x33\x11\xc8\x2b\x8c\xef\xb4\x83\xeb\xf8\x7c\xff\x09\xe7\x94\x3f\xe1\xce\x74\x02\x26\x7f\x98\xe4\xfc\xc7\x5d\x6b\x4e\x40\xe0\x44\x69\xed\x0c\x57\x8d\xd3\x59\xd2\xcc\x2a\x67\x1e\xaa\xb3\x6e\xa4\x4b\xee\x30\xcf\x71\x01\x30\x09\xc6\x09\x3b\xed\x19\x6e\x16\xff\x20\xd1\xf2\x15\x94\x4e\x27\x5f\x58\x8e\xc3\x3d\x4d\xad\x58\x63\x71\x8e\x01\xac\x80\x9d\x7b\x62\xce\xd2\xc5\xf3\x4c\xa8\x13\xd8\xa4\xbd\x7c\x2e\x5f\x3f\x83\x02\xf6\xf5\x9a\x9c\x34\xa9\x4b\x9b\x9f\x7f\x52\x38\x73\x4b\xaf\x3b\xba\x67\xe3\x66\xb3\x11\x18\xdd\xd9\x17\x08\xe8\xe7\x91\x9d\x97\x34\x3c\x4b\xb2\x58\x7a\xf4\x58\x54\x73\x8e\x50\xb0\x40\xc6\x1c\x91\x0d\xce\x28\xb5\x2e\x00\x35\x28\x29\x9c\x2a\xdb\x2e\xbe\xe6\x3c\xb9\xe1\x31\x49\xe5\x95\xa4\xf6\x53\xc1\x8e\x08\x19\x73\xc1\x8f\x6d\xc4\xf5\x28\x9d\x79\x27\xe9\xc0\x7d\xb5\xc3\x61\xa7\xa5\xd3\xf8\xda\x54\x70\xa7\x0c\xc9\x2b\x91\x9e\x4d\xf1\xc6\xf3\x1c\xee\x56\xef\x38\x23\x3c\xab\x2e\x37\xc8\x3e\xdc\x1c\xff\x74\xd5\xdd\x30\xdc\x73\xaa\xe8\x86\x5b\x9a\xcd\xd6\x16\x81\x3b\x65\x48\xce\xa7\xc1\x9b\xb5\x7b\xbb\x0b\x0f\x33\xb7\xea\xeb\x79\x59\x51\x1b\xea\x6b\x31\xa2\x76\x3b\x27\xb1\xa1\x89\xc0\x96\x0f\xc6\xeb\xb0\xa0\x1a\xfc\x1c\x5a\xb1\x88\xa2\x7a\x1a\x61\x3f\x55\xa9\x21\xe6\xe3\xe4\x7a\x27\xb3\x9e\x41\xa8\x67\x64\x3c\x83\xed\xcc\x65\x3b\x4b\x80\x2d\x1f\x8c\xb3\xb1\x1c\x37\xf8\x11\xc1\x6e\xfa\x66\x67\xe5\xe4\xec\x75\x6d\xae\xdd\x9a\x95\x6b\xd3\x1c\xe7\xe6\xc6\x59\x6a\x9e\x9d\xbc\xae\xe4\xa5\xe5\xe9\x66\xa2\x2e\x0c\x4e\x73\x83\x9b\x78\x55\xea\x6a\x78\x82\x33\xdc\xe2\xb3\x9f\xd5\xde\x7c\x00\x2d\x0c\xba\x5e\x71\xf2\xb5\xfe\x69\x7e\xb5\x38\x98\x59\xb6\xe3\x1e\xd7\xa6\x38\xbe\x7f\x7a\x31\x89\x59\xc5\x07\x57\xd9\x8b\x15\x7a\x1d\x4f\xfd\xfe\x32\xc3\x1e\xfb\xab\x63\x9b\x98\x2f\xaa\xe0\x26\x2a\xa6\x09\x62\xd9\xc6\x44\xa6\x6c\xe2\x83\xd4\x7d\x6b\x25\x16\xae\x92\xf5\xbb\xf3\x27\x4f\x27\xf6\x9b\xb4\x3c\xd5\xc9\xd8\x82\x30\xcd\x45\xb6\x5c\xe8\x46\x2c\x2b\x2e\x75\x64\x47\xfb\xe4\x78\xcc\xb7\x5f\xcc\xe1\x1d\xad\x7d\x9f\x25\x69\x76\xf0\x9a\xba\x69\xa7\xee\x92\x31\x1b\xc2\x65\x06\xbc\x09\xd8\x4d\x99\x8f\x21\x6c\x06\xea\x0f\xb5\x3e\x7f\x6e\x9d\x48\x4c\x06\xd3\x8f\x4b\x95\x72\x95\x66\x77\x98\xc5\x73\xe8\xe5\x6b\x72\xd8\x2e\xa5\x97\xba\xee\x99\xe8\x65\x00\x97\x05\xf4\x32\x80\xdd\x24\x7a\x19\xc0\x66\x02\xbd\xb8\x5a\x5f\x40\x2f\x2e\x24\x66\xd3\x4b\x17\x97\x8a\x5e\xd6\x49\xb4\x66\xe1\x1c\x7a\x59\x1d\xf2\x32\x5f\x25\xc5\x22\x82\x69\x2a\x9f\x89\x62\x86\xb0\x59\x40\x32\x43\xf8\x4d\xa2\x99\x21\x7c\x26\x10\x8d\xb3\xfd\x05\x54\xe3\x44\x63\x36\xd9\x38\xb0\xb1\x53\x3b\xcf\xa1\x1b\x08\xcf\xb2\x88\x68\x74\xcd\x33\x51\x4c\x2f\x1e\x0b\xc8\xa5\x17\xb3\x49\xb4\xd2\x8b\xc9\x04\x42\xe9\xb6\xbc\x80\x4a\xba\x08\xcc\x26\x91\x36\x1e\x15\x7d\x04\xeb\x30\x88\xe8\x38\x7d\x68\x38\xbf\x1d\xb2\xe2\xa7\x4d\xf6\xf9\xc4\x59\x9e\x00\x6d\x7c\x6c\x9d\xb5\xe7\x0e\x8c\x03\x48\x35\x34\x44\x04\x6c\xbd\x7e\x41\xc9\x7e\xef\x3f\xe6\xd9\xd7\x9b\x34\x7f\xf4\x20\xdc\xad\x04\x67\x04\xde\xb9\xd0\xb1\x3f\x0f\x49\x9a\xef\xbe\x1c\x76\x0f\xfb\xcf\x2a\xa1\xc5\x4d\xb6\xb9\x59\xed\xd2\xcc\x8e\xca\xa3\x4b\xa7\xbb\xd5\xc3\x26\xdb\x96\x9f\x3d\x54\x7e\xdb\x67\xbe\x94\x15\xbe\xee\x0e\xe9\xac\x4a\xc7\x4c\x76\x74\x56\x95\x32\x7b\x9a\x5a\xe1\xb4\x6e\x41\xb2\x3f\x95\x36\xff\xdd\xb4\x1a\x7b\x4f\x15\xda\xe5\xe9\x4a\x77\xad\xdd\xa2\xea\xc2\xee\xcb\x97\x22\xab\x5f\x6e\x92\x7c\xdb\x37\x88\xc6\xb7\xd6\x58\x19\x5f\xac\x21\x81\xf7\x2e\xdc\xe1\x83\x42\xb1\x9b\x19\xde\x3c\xf8\xd4\x79\xf8\x2f\xf5\xb1\x68\x24\x9d\xb0\xc0\x17\xbd\xb9\x97\x29\xc6\x17\x3d\x89\xf9\x75\xd4\x54\xec\xc9\xb3\xe3\x6f\x69\x52\x26\xbe\x4a\x78\x75\xd8\xed\xca\xcf\x46\x20\xc1\x2a\xb1\xd7\xe3\xd7\x2a\xb5\xd1\x4b\x93\x1a\xeb\x79\xf7\x50\x4a\xa8\x57\xd8\x48\x58\xec\xef\x0f\xbb\x7d\x76\x28\xbf\x35\x69\x1b\x2f\x1f\xf3\x63\x7e\x97\x17\x79\xf9\xed\x72\xb7\x4f\x56\x79\xf9\xad\xdb\xab\x1f\xd6\xeb\x75\x2b\x49\x3e\xad\x91\x4b\xb6\xb9\x4a\x5c\xf8\xd3\x3a\x49\xb3\xcf\xea\xe5\xb1\x4c\xca\xec\xff\xe3\xee\xdb\x7a\x1b\xd7\x91\x06\xff\x0a\x91\xfe\x1a\x68\xa7\x2d\x8d\x2c\xdb\xb9\xd8\xe8\x60\x1e\xf6\x61\x5e\x16\xd8\x7d\x3e\xc8\x2c\x64\x89\x8e\x35\x2d\x5b\x1a\x49\xce\x65\x8c\xec\x6f\x5f\xb0\x48\x4a\xc5\xab\x24\xa7\xf7\xe5\xc3\xc1\x49\x27\x22\x59\x2c\x16\xc9\x62\xb1\x58\x97\x5f\x3c\x26\xcc\x33\xc6\x8a\x77\xb1\x89\x44\xe3\xfc\x44\xeb\x36\x4f\x94\x56\x80\x51\x41\x71\x33\x34\x84\x36\x3f\xe6\xa7\x97\x60\x7f\x3e\x01\x27\xd8\xa4\xe7\x5d\x9e\x06\x3b\xfa\x9f\x9c\xd6\x3f\xc2\xf5\x6a\xbe\x08\xd7\xf3\x70\xf9\x30\x5f\x84\x8b\x05\xa6\x08\x11\xbf\x26\x75\x5d\xbe\x5d\x82\xa0\xc9\xff\x43\x37\x6b\xb8\x9f\x5b\xab\x20\xbe\xc1\xaf\xd9\x37\x37\x66\x76\x68\x31\x8c\xaa\x48\x52\xca\x16\xfb\x3f\x7f\xb5\x65\x85\x30\x7f\x52\x3a\x15\x31\x80\xa3\x49\xad\x3a\x3c\x78\xfe\x8e\xad\x00\x02\xb3\x1f\x55\xef\x24\x20\x7c\x5d\xb1\xf1\xcc\x66\xdb\x6e\x66\x83\xb2\xce\x5f\xf2\x2e\xdd\x5e\x5b\x56\x66\xb7\x1c\x96\x13\x5f\xc8\x22\x37\xb5\x95\x8e\x6f\x17\x1b\x74\x02\xb2\xbc\x07\xb3\x67\x06\xd2\x89\xad\x48\xee\x32\xad\x55\x87\x2d\x6f\x3d\x15\x51\x06\xda\xec\x10\x60\x39\xf1\x14\x79\x58\xa6\xb5\x52\xa9\x3a\x15\x4d\x00\x2d\x99\xc9\x81\x1e\xe9\xff\xfd\xd5\xfc\xfb\x9c\xd4\x34\x60\xb2\xc8\xb3\x75\x6b\x40\x78\x27\xbd\xb7\x1f\xa8\xbb\xbf\x91\x78\x36\x43\x71\x39\xc7\x81\xef\x06\x62\xe7\x32\x98\xb5\x41\x28\x59\x65\x7c\x22\x49\x9b\xab\x58\x67\xdf\xe4\xdb\x2e\x49\x17\x69\x3a\x1a\x35\x57\xb0\x60\x1e\xe9\xb6\xe7\xc7\x26\x20\xeb\x8e\x96\x1b\x3e\x80\x70\xc2\xd3\xda\xba\x42\xa1\x8a\x40\xe2\xa0\x5e\x94\xcc\x38\x1a\x33\x0b\x8e\x5e\xac\x53\xe3\xec\x69\x55\xbd\x6f\xd5\x52\x58\x5a\x96\x62\xe0\x1d\x7f\x0a\x2f\x3e\x2f\x7e\xce\x37\xa1\x07\xc1\xc0\x80\xbf\x4d\x9d\x1b\xd1\xd6\x39\x3d\x6d\x59\xfd\x81\xb9\xe9\x7a\xf1\x4c\x8f\xde\x93\x4a\x7c\xe7\xc4\xc8\x43\xe8\x0f\xe2\xc5\xa7\xc7\xc3\xe8\xd1\x19\xab\xf4\xd5\x96\x65\xd1\xe6\xfd\x74\x8b\xa3\xb6\x0f\x1d\x1f\x8b\xec\x8c\x22\x74\x72\xcc\xc6\x61\x04\x46\xdf\xfe\x27\xc8\x4f\x19\x7d\xdf\x2c\x86\xfa\xb1\x30\x9d\x75\xbc\xbe\xbf\x5b\x6c\x7b\x16\x34\x16\x57\x5d\x8e\xd8\xaa\x00\x11\x23\x43\x94\x20\xb7\x24\x56\xd9\x98\x5e\x38\xa9\x7b\x7d\x49\x70\x14\xe0\x14\xa8\x92\x9a\x9e\x5a\x39\xe9\x4d\xfb\x51\xd0\x0d\x30\xc5\xa1\x0e\xac\xfb\xd1\x7e\x16\x09\xe0\x7c\xa8\x78\x20\xf8\xf7\x08\x2f\x4a\xf9\xac\x90\xb7\x79\x52\x4c\xc6\x44\xac\xbe\x11\xc8\x44\xc4\x81\x8e\xc6\xbd\xbe\x86\x0f\x08\x16\x13\x49\x33\x88\x19\x6c\xe9\xaf\xe1\xc5\x25\x89\x2f\xcc\x99\x75\xfe\x38\x43\xd1\x30\x13\xd7\xfa\x1c\xf6\x6d\x1f\x12\xeb\x54\xb6\x79\x4a\xc3\xa4\x28\xca\xb7\xf9\x40\xa5\x8c\x9e\x3e\x86\xea\x54\xb4\x3e\xe6\xa0\x82\x68\xe6\xf2\x1b\xad\xeb\xb2\xee\xfe\x3a\xe4\x2f\x87\x82\x61\xd8\x7d\x61\x0c\xba\xfb\xa3\x2a\x8b\x3c\xfd\x08\x8e\xc9\x29\x79\x01\x2a\x75\x25\xcd\x39\x4d\x69\xd3\x83\x15\xca\xda\x8b\x71\xdf\x31\xc4\x0b\xb9\xe3\xa3\x28\x1a\x45\x08\xb2\x2f\x4b\x26\x8d\xdd\x8e\xa1\xc8\xe8\xca\x88\x34\xa8\x0d\xa6\x91\xf9\xb9\x23\x96\x59\xc4\xa8\x66\x7e\x35\xc8\x67\x56\x11\x74\x34\x0b\xa4\xf6\x5b\x16\x5c\x70\x32\xa1\xfb\x91\xb4\xd3\xbb\xb1\x70\x72\x9a\xee\xef\x69\xa6\x5e\xb9\xf5\x07\x99\x09\xcb\x8b\x11\x42\xe5\xab\xdf\x76\xfb\x6c\xc5\x6e\xc2\xa6\xe4\xba\xdb\xef\xf6\xe9\xa7\x7b\x2d\x1a\xf4\xb3\x89\xbf\xf7\xfb\x87\x7d\xa2\xe1\x2f\x04\xd8\x09\x6b\x40\x68\xc0\xb4\x19\x95\x5f\x2f\xca\x29\xf5\xe9\x58\xf4\x12\xa3\x8c\xd2\x5d\x62\xd7\x07\xec\x68\xa6\xb7\x36\x3a\xb9\x8f\xd7\x49\xb4\xe8\x90\x3f\xd0\xa4\x68\x0f\x01\xc4\xfd\x17\xf8\x8b\x97\xb4\x50\x29\x2a\xcf\x6d\x75\x36\xd5\xb2\xbe\xe5\xd1\x57\x56\x97\xc9\xc0\xfb\x9c\x97\x23\xe1\x2d\x64\x9b\xae\x47\x9a\x52\xaa\x4d\x97\xa6\x97\x1f\x9e\x2e\x03\x71\x36\x5b\x2e\x95\xa5\xbe\xbc\x8c\xc6\xc6\x32\x33\xdf\x9b\xd2\x55\x14\xeb\x13\x37\xf0\x2a\xe5\xa1\x92\x81\x01\x50\x6b\xe0\xb5\xc2\xcb\x23\xf9\x1a\x1a\xc5\x21\xc7\x55\x35\xf7\x86\xc6\x1d\xb5\x8f\x3d\x6f\xd4\x0a\xd0\x3e\xf2\xf0\x45\xad\x82\xe4\x8a\xda\x67\x75\xc7\x48\x93\x91\x2e\x47\x54\x4d\x8f\x53\xa8\xf5\x34\xee\x44\x19\x5b\xd9\xa4\xd8\x93\x7e\xa2\x18\x9f\x75\xaa\x3d\x59\xf9\xcf\x93\xef\x44\x31\xaa\xa8\xb4\x7b\x32\x4f\x14\x59\xa0\xd1\x6f\xe4\x69\x5c\x8d\x22\xda\x60\x2d\x4c\xad\x4a\x23\x53\x65\xa1\x4f\xa5\x12\xa6\xf2\x50\xa4\x32\x48\x51\x19\x34\xa8\xf4\xc5\xb3\xac\xe9\x71\x0b\x0a\x65\x99\xd2\x3e\x5c\xfd\x77\x96\xd3\xcc\xeb\x60\x97\xff\xfa\xa1\x46\x09\xd8\x7a\x55\x16\x7c\x27\x3f\xc9\x22\x5c\xd5\xf4\x28\xad\xa4\x36\x0b\x7a\x24\xe3\x96\xce\xd8\xa3\x49\xe5\x90\xd7\x9f\x09\x0a\x53\x35\x29\xe9\x3d\x43\x86\xcf\x06\xd7\x99\xa9\x53\xda\x93\x09\x0a\x92\x0e\x02\xb5\x81\xca\xe1\x1d\xfb\x15\xc4\x3c\xae\x4a\x04\x7e\x26\xa0\xa5\x75\xff\x24\x17\xbc\xd1\xdd\xef\xbc\x0d\x8e\x49\xf3\x3b\xc8\x8f\xc9\x0b\x05\x7b\xab\xad\xfe\xb7\x71\xfa\xa2\x2b\xee\xa7\xc4\x4f\x7d\x84\x12\x9c\xd5\x25\xbb\x68\xe7\x36\x3f\x17\xb7\x9a\xdc\xe2\x01\xcc\x8d\xf4\xe0\x15\x6b\x76\x51\x47\xaa\x24\xcb\xbc\x63\xf2\xad\x07\x8e\xfd\x80\xde\xee\x8b\x32\x69\x21\x89\x29\x4e\x50\xc6\xb5\x21\xc8\xa4\x6f\x09\x59\xca\x10\x54\xc8\xd8\x85\x5e\x44\xcd\xf1\xd7\x2f\xbb\xe4\x47\xbc\x5e\xcf\xe5\xff\xe1\xe3\xec\xd3\xfb\x7e\x77\xd9\x95\xef\x41\x73\x48\xb2\xf2\x6d\x13\x91\xc5\x5d\xf5\x4e\xd8\xff\xa0\x38\x23\x00\x2e\x9a\xb3\xff\xc2\xe8\x6e\x36\x17\x15\xe0\x47\xb0\xd2\x2a\xc4\x03\x2f\x66\x60\x54\xe8\x43\xe5\x89\xdf\x21\xfc\xef\x8d\x4f\xf2\xac\xc5\x95\x82\x5d\x99\x7d\x5c\x5c\xcf\x71\x4b\xa3\x67\xa5\x3e\xd2\x9e\x28\xb7\x74\x91\x07\xa1\xd7\xad\xf1\x2b\x72\xf7\xf9\xcf\x0d\x46\xbd\xb6\x23\xd0\x45\xf2\x41\xeb\x8b\xe0\xf4\x91\xbf\x43\x02\x69\xb9\x64\xe5\xc5\x3a\xaa\xde\x95\x9c\x82\xde\xa6\x40\x8f\x63\xf2\xde\x9d\x2a\x51\x64\x0c\x90\xc3\x3f\xe6\xa7\xae\xd2\xea\x51\xaf\x34\xf7\xaf\xd7\x8e\xb7\xec\xf3\x77\x9a\x01\x63\x89\xb6\x32\x6d\xbf\x3c\xdf\xb7\x5d\x2a\x7b\x04\xea\x22\xb5\x80\xeb\x28\xda\x42\x12\xe0\x20\x6f\xe9\xb1\x11\x6f\x20\xdb\x7f\x9d\x9b\x36\xdf\x77\x3a\x46\xf9\xb9\x1f\xce\xf7\xcf\xbf\x92\x3a\x4f\x02\xfe\x6a\xf9\xab\xad\xcf\xf4\x59\xed\x41\xb5\x09\xf5\xee\x19\x71\xa6\x24\xe7\xb6\xec\xd4\x93\x31\x52\x65\x3e\xac\xd7\x36\x55\xe6\xc0\x8a\xb9\xd5\x32\x8e\x02\x0c\x35\xe5\xe8\x7a\x70\xd9\x65\xf9\xeb\x45\xa6\xed\x08\x3e\x38\x8a\x68\x62\x1f\xa2\xd7\x43\x77\x84\xc6\x6c\x8f\xc7\x06\x9b\xf9\xd2\x52\xc6\xb9\x83\x41\xc1\xab\xa5\x48\x5d\x98\x0b\xcb\x05\x69\x22\xf9\xa4\x71\x08\x7f\xb7\x5e\x2c\x3e\xe4\x66\x3f\xe4\x19\x7d\xbe\xa4\xe7\xba\x29\xeb\x4d\x55\xe6\xb0\x32\x0c\x75\xcf\xd5\xaf\xfd\x8c\xbd\x98\xef\xe7\x82\xc9\xc3\xbc\x6d\x21\xf3\x32\x5b\x26\xa7\x76\x13\x3c\x46\x11\xe4\x4c\xe5\x4a\xef\x55\xf5\x2e\x57\x29\xfc\x8e\x33\x56\xc2\xcc\x98\xc6\x31\xe8\x89\x00\xe3\xef\x31\x46\x30\xa1\x70\x33\x09\x83\x28\x43\x34\x50\x2c\x26\x8a\x33\x05\x53\xf1\x6d\x9f\x9e\xbc\x5b\x5a\x7c\xa5\x6a\xbd\x06\x4d\x5a\x97\x45\x11\xbc\xe6\x75\x7b\x4e\x5c\xd9\xda\x6c\x13\xef\x07\x24\x99\xde\x9a\x73\x2d\x7f\x65\x46\xc0\x6e\x83\xbc\x8b\xcc\x36\x98\x53\xf6\x36\x42\x36\xf9\x02\x74\x41\xda\x6b\x8b\x63\x12\xbe\x65\x29\x8d\xe8\x5d\x47\x13\x76\x60\x3e\x30\x04\xfb\x1e\x88\xf8\xbd\x21\xde\xb4\x8e\x1b\xf8\x8d\x66\x3c\x97\xa2\xb0\x71\x99\x2b\x70\x9a\xb2\x6e\xaf\x00\xa2\x2a\x21\x2c\xca\x20\xba\xa3\x74\x1f\x7f\x1a\x7d\x29\x8e\x10\x8c\xcb\xa8\x55\x24\x22\xdc\x7e\xc7\x22\xc6\x4b\xb6\xb9\xb4\xb7\x73\x27\xb7\x94\x88\xab\xbc\x32\x5c\xd7\xf4\xd8\xcf\xa2\xce\x37\xb5\x62\x77\x9f\x82\xab\xb0\x5f\xd9\xf9\xf2\x7c\xd1\x0f\x16\x9e\xde\x18\x81\xfa\xfb\x91\x66\x79\x82\x13\xa0\x2e\x96\xf7\x8f\xd5\xfb\xec\xe2\x49\xf9\x66\xe4\xe3\x52\xc8\x4b\x93\x3a\x3d\x78\x68\xb6\xc2\x3b\xce\x72\x41\xfc\xb4\x20\xf5\xf8\xb8\xd6\x70\xea\xd6\x9e\xb9\x90\xd4\xb3\xf0\xf3\xd0\x1e\x0b\xce\x56\xeb\xf2\xdc\xd2\x7f\xfe\xba\xc9\xd2\x30\x49\x8b\x26\x04\x7c\x6e\x9e\x09\xde\x34\x8a\x73\xc9\x67\xb8\xaf\x29\x05\xfe\xc7\xab\x18\x56\x58\x44\x6e\x13\x8b\x4a\xde\x6a\x44\x20\x7e\x7d\xa0\x8f\x77\xc9\xd2\x80\xbf\x39\xb0\xb9\x9c\xdb\x3f\x93\x5b\x4d\x07\xea\x00\x42\x6e\x0d\x00\xff\x27\x3f\x81\xda\x12\x1e\x62\x0e\x65\xc1\x4e\x28\xc1\x3d\x55\x3f\x1a\xf9\x97\xd2\x91\x8b\x1a\x1c\x6a\x77\x53\x4a\xaa\x8a\x26\x75\x72\x4a\xe5\xcd\x88\xd3\x8a\x4b\x24\x7a\x53\xd8\x0d\xc3\x29\x90\x61\x7f\xb0\x5f\xc4\x9a\xb9\xeb\x0f\x1c\xf8\x1d\xef\x63\xc8\x91\xac\xe5\x4c\x36\x89\xa3\x6c\x18\xb7\xaa\x5b\xfc\xb5\xbc\x5f\x26\xab\x18\x4b\xd6\x2e\x7e\xe9\x22\xd2\x35\x6c\xcd\xc4\x8a\xaf\x32\x73\x3d\x06\x52\x34\x8a\xc3\x98\xdd\xef\x70\x9a\x45\xcb\x6b\xb4\xa8\x2c\x9c\x0d\xe1\x0f\x7c\x00\x1a\xf0\x9f\x00\x2d\xc7\x72\xe2\x6c\xe0\xa5\x2e\xdf\x36\x0b\xc7\xda\x30\x5b\x02\xc0\x0b\x96\x6c\x1d\xc0\xe5\xb9\xf3\xc0\xae\x6c\x11\x12\xc5\xb0\xbb\xa4\x18\x01\x4a\xfc\x16\x87\xf7\x8c\x0e\x9e\x31\x09\x14\x7a\xe3\x42\x71\x8a\x9a\x16\x74\xfd\xe3\xfd\x16\xbf\x49\x8a\x5e\x3f\x5d\x66\x16\x86\x5d\x83\x69\xf5\xe3\x60\x0e\x68\x1c\x8f\x20\x0c\x68\x3d\x00\xf3\xbd\xd2\xc4\x42\x6c\xf7\x8c\xee\x93\x73\xd1\xf6\xa2\x0e\xe8\x3f\xb4\x7e\x48\x75\xc1\xef\x87\x3a\x16\xdc\x40\x7b\xb3\x2f\xd3\x73\x33\x77\x95\x02\xcb\xb2\x3d\x85\x89\x23\x99\x35\x33\xfa\x15\xc2\xb3\xec\x9c\xae\x22\xc6\xdf\x3c\x55\x3d\x26\x5b\x42\x28\x50\x94\x12\x6b\x49\x54\x3b\x65\x6d\x02\x53\xba\xdf\x7f\x86\x59\x72\x7a\xa1\x75\x79\x6e\x06\x30\xbe\xdf\xc7\x71\x9c\x0e\xd7\xf7\xa0\x2d\x1f\x24\x9c\x20\x5c\xa8\x66\xfb\x64\xbf\xeb\x15\x3a\x7e\x44\x93\x68\x9d\xc6\xcb\xa1\xda\x3e\x83\x38\xae\x0c\x32\xa9\xeb\x80\xe8\xc2\x5a\xbc\xd6\x59\x16\x91\x48\xc9\xfd\x74\xab\x3f\x35\xc9\x4b\x13\x58\xf6\x1a\x9b\xb0\xdf\x43\xf1\xbd\x6d\x0f\xe9\x43\x33\xd5\x59\xda\x52\x51\xd1\xba\x70\x3f\x56\xd0\xba\xc0\x29\xa7\x70\x5c\x71\xb5\x8e\xb0\xd4\xec\xd8\x3f\x17\x8e\xe4\x9a\x71\x28\xfb\x16\xba\xbd\x60\x2e\xd6\x26\xbb\xe0\x94\xbc\x12\x05\x05\x08\x35\xa0\xe2\x81\xd3\x3e\x5b\x54\x0d\x6e\x95\x74\xd4\x61\xdf\x77\xc6\x59\xa5\x7a\xcf\xea\x4a\x2f\x8e\x7b\xc4\x67\xc8\xed\xae\x21\xd1\x7a\x8f\x36\xca\x0a\x2e\x80\xe7\x24\xd1\x60\x2c\x7b\x18\x5a\x27\x76\x33\xf5\xb4\xa0\x49\xbd\xd9\x95\xed\xa1\xcf\xf6\x09\x4a\x83\x82\xb6\x4c\xa2\x6b\xaa\x24\x05\x75\x7b\x24\x1c\x8c\x51\xcf\x66\xe6\x5d\xab\x39\xba\xbe\x66\xe7\x18\x21\xdb\xbd\x15\xe9\x7f\x67\x76\xef\x64\xbf\x75\x3d\x57\x52\x2e\xb9\x77\xb6\xc4\x97\x3b\x80\xf0\xfb\x08\xcd\x66\x24\xd9\xb0\xa5\xf2\x4a\xe7\xde\x3a\x82\x43\xfb\xaa\x38\xd8\x34\xc2\x78\x01\x57\xf0\x3f\xd3\x8d\x57\xc7\x69\x59\x35\x1d\x8c\x7e\xa5\xb8\x48\x8d\xef\x47\xbe\xf5\x67\x11\x36\x3b\xdd\x9d\xd4\x55\x2a\x86\xa2\x16\x73\x39\x81\x14\xe7\x33\xf3\x68\x46\x6e\xc9\xa2\x7a\x47\x36\xce\xfc\x11\xa0\x48\x5a\xfa\xc3\xd6\x8e\x71\x9b\xbe\xd9\x3c\x9a\x0d\x38\x42\x40\x3f\x7c\x0e\x1a\xa1\x6c\x00\x21\x89\x0b\x93\xe0\x2d\xf3\x3c\xf7\x17\xff\xd4\xdd\xc6\xbd\xb5\x3b\xb1\xb4\x6f\x25\x12\x81\xf3\xeb\x1d\xbb\x2a\x81\x4b\xc4\xb9\x71\x71\x01\xab\x35\x9b\xae\x54\x80\x9b\x2d\x89\x08\xff\x17\x7e\x5a\xba\xe8\x56\x54\x4d\x8f\xe5\x2b\x0d\x92\xa2\x98\x09\x51\xd9\x70\x2e\x8b\xef\x1e\xee\x97\xf8\x16\xb0\xd0\x1f\x26\x40\x50\xb6\xf5\x92\xb5\x72\x89\x74\x6e\x15\x9b\x1b\xed\x2e\xce\x6f\xa8\x66\xe3\x27\xf0\xcd\x47\x87\x89\xbd\x03\x6b\xba\x6f\xdb\x78\x6d\x59\xfc\x3d\x94\xc1\x11\x19\x2e\x5a\x64\x05\x26\x0e\xdb\xae\xd9\xe3\xe8\xec\xbe\xf1\xaa\x14\xef\x7d\x83\x9c\xf4\xb5\xcd\x62\x56\x68\x99\xe1\xa7\x4c\xbe\xae\x00\xec\x70\xf8\x0c\x53\x5a\xb7\xf9\x3e\x4f\x93\x96\xea\xa9\xe7\xfb\x12\x01\x26\xec\xaf\x02\xf2\x62\xb2\xcf\x5b\xa9\x33\xd9\x62\x9d\xf0\x4a\x5f\x4c\x48\xb2\xee\x8e\x47\xdc\x03\x77\xdd\x1a\x52\x4c\x76\x1a\x3d\xd0\xa9\xec\x6a\x9a\xfc\x0e\xde\xca\x3a\x43\x4a\x79\x26\xd6\x68\x18\x6d\x22\xb2\x88\x2b\x6d\x48\x87\x4e\x47\xc1\xce\xd2\x2c\x69\x0e\x34\x23\x86\xbe\xd7\xe3\xdf\x00\x6f\x2f\x52\x14\x78\xac\xde\x09\x3b\x4f\x09\xd7\x91\x75\x6e\x97\xa0\xab\x4e\xf3\x3a\x2d\xe8\x65\x9f\x17\x85\xe2\x86\xc6\x0e\x8c\x6d\xe7\x7a\xb5\xe1\xb5\x7b\x5f\x2c\xb2\x08\xd7\x0d\xc9\x4f\xfb\xfc\x94\xb7\x94\xd0\xa4\xa1\x41\x7e\x0a\xca\x73\x6b\xfa\x88\xac\xa3\xef\x04\x24\x24\xb5\xe7\x97\xcd\xa9\x3d\x04\xfd\x9a\xff\x11\xcf\x24\x36\x5d\x37\x41\x46\xd9\xa4\x87\x71\x33\xd8\x7a\xe9\x6e\xbd\x1c\x6e\xbd\x72\xb7\x5e\x0d\xb7\x5e\xbb\x5b\xaf\x9b\xcf\xbf\xff\xa6\x1f\xfb\x3a\x39\xd2\x86\xe8\x64\xbc\x44\xdf\xe7\x4c\x32\xbc\xf4\x87\x4e\x93\x26\x05\x5d\xfe\x8f\x1f\x8b\xf9\x62\xbe\x98\x7d\x2e\x97\xb6\xc2\x68\x1e\xb1\x42\x0d\x31\x65\x93\x5c\xf7\x44\x65\xb9\x3f\x23\x45\x1f\x3f\x4a\x11\x5f\xc6\x46\xfe\x61\x5b\x1e\xcb\x97\x3a\xa9\x0e\x1f\x01\xfc\x43\xc2\x7e\x89\xf2\x05\x26\xf4\x32\xb6\xaa\xc9\x7b\xde\xf0\x4a\x20\x08\x37\x6d\x5d\xfe\xa6\xd2\x3c\x51\xfc\x19\xb0\x9d\x90\xd4\x75\xf2\xb1\x59\x91\x95\xb5\x43\xd8\x35\x4e\x38\xb6\x26\xb0\xe3\x2f\xb2\x1e\xd7\xc6\x6d\x39\xb6\x8f\x34\x5e\xac\x1f\x6d\x8d\x18\x3b\x6f\x48\x4d\xd3\xf6\x82\xab\xca\xee\xb0\x81\xbc\x40\x5d\x5c\x14\x40\x20\xf4\x80\x13\x32\x16\x07\x2a\x06\x2f\xa6\x67\x59\xbd\x6f\x3f\x36\xc1\xc2\x0e\xa2\xcd\xd3\xdf\x84\xc1\xb9\x0c\x0f\x19\xea\xb6\xf4\xbd\x45\x86\x05\xe1\xc3\x3d\x3b\xb8\xf9\x3b\x51\x72\x4a\x0f\x65\xbd\x69\xda\xa4\x96\x3a\xc5\x6f\x8b\x7d\xbc\x88\x57\x9f\x61\x96\x37\x29\xc3\xf1\x23\x48\x0f\xe0\x0a\x5b\xd3\xa6\x2c\x5e\x99\x50\x97\xd4\xd9\xdc\x52\x5e\x9e\x5b\xea\x2a\x6c\xaa\x22\x07\x21\xdf\x5e\x5e\x25\xed\x01\x3b\x67\x66\xe7\x9a\xf3\xa3\x70\xd1\x6c\x3d\x4e\x9b\x8c\x10\x49\x6d\x30\xf5\x21\xf0\x9d\xd4\xc6\x69\xb8\x35\xd7\x91\x58\x1f\xca\xa4\xc6\xdb\x57\x9a\xb6\x65\x1d\xd0\xfd\x9e\x4d\xe1\x09\x1e\x7c\x92\x82\x61\xc4\x2b\x5e\x43\x35\x5c\x4e\x92\xa9\x74\xed\x0b\xad\x6d\x07\xc8\xae\x96\x93\xe4\xa2\xac\x01\xbc\xe7\x6d\x14\x95\x57\x09\x6b\x19\x5f\xdf\x92\x9c\x83\x8b\xca\x02\x86\x8f\xcd\x56\x20\xb1\x6e\x46\xd8\xd6\xf7\x3a\x7f\x87\x72\x6b\x2b\x56\x4d\x40\x5f\xe9\xa9\x6d\x84\xc0\x7d\xf5\x3c\x36\xf2\x71\xb8\xa9\x92\xd3\x55\xb3\x39\x04\x61\xec\x9c\x2a\x70\x2e\xda\x28\x93\xa2\xf0\xcd\xc6\x53\x6f\x2a\xe9\x47\xd2\x5a\x43\xc7\xe0\xe9\xf6\x02\xec\xa6\x3f\xdf\xce\x55\x45\xeb\x34\x69\x7c\x94\x56\xf0\xef\xf4\x11\x23\x68\xe6\xae\x6b\x25\x8d\xbc\x47\x88\xf3\x2f\x8c\xe9\xb1\x3b\x29\xe1\x0f\xe9\x6b\x1e\xde\xfd\x7f\xe5\x8a\x56\x06\x25\xfa\x26\xfa\xea\x25\x8a\x62\xc3\x75\x52\xeb\x1d\xfe\x95\x67\xb7\xbf\x6e\x36\x37\xcf\x20\xa4\xb3\x7d\x3a\x13\x1b\x55\x8e\x71\xe1\x77\xda\xd7\xa2\x82\xf8\xd8\x91\xd0\xdc\x71\xe5\xc2\xa1\xac\xdb\x19\xc9\xb2\xee\x39\x5c\xaa\xf1\x6d\x7a\x1d\xb6\x54\xba\x7a\xb4\x28\xf2\xaa\xc9\x1b\x7f\x67\xe2\x6e\xdc\x1b\xf2\x1a\x0f\x06\xfe\xf6\xe1\x31\x69\xd3\x43\xc0\x9b\x77\xae\x0f\xa6\xe7\xfe\x3f\x6e\x46\xc1\xf9\xf7\x99\xd6\x1f\x55\x52\x27\xc7\xce\xe8\xd8\x84\xf5\xbf\x2d\xb0\x84\x74\xa9\x1d\x3b\x56\xa1\x05\x3c\x0c\xb5\xf6\x96\x87\x5c\x45\x54\xd4\xe5\x42\xa0\x7b\xb0\xa3\xed\x1b\xb5\x51\xa8\x79\x7d\x31\x15\x30\x7f\x9e\x89\x77\xba\xb4\xa8\x7a\x27\x0b\xf9\x7a\xb8\x8c\xbf\x8f\x60\x0e\x43\x0c\x61\x04\x13\xe8\xde\xb7\xe0\x05\xf2\x6b\x8c\x7d\x2c\xef\xd6\x79\xb3\xd3\x11\x55\x79\x33\x8d\xfd\x08\x0a\x83\x02\x1e\x8a\xc5\x89\xe1\x50\xad\x0e\x45\xa5\xa2\x17\x47\x65\x8d\xc1\x3b\x63\x96\xd7\x54\x84\xd5\x28\x8b\xf3\xf1\xe4\x58\x79\x09\xf0\x19\xc5\x74\x6e\x48\x42\xca\x0a\xbf\x14\x64\x2d\x57\xc5\x9c\xac\xb8\x74\xaa\x7f\xae\x03\xba\xf6\xcc\x1f\xcf\xdb\x55\x9d\x4e\x1c\xd9\x67\x52\xe7\x9e\x9c\x71\x9a\x7a\x97\xf1\x2d\x4d\x2d\x19\xb9\xb1\x6a\xb4\xbd\x40\xe5\x6a\x3d\x17\x17\x6c\x6b\x86\x9f\xef\x1d\x6b\xd3\x02\x82\x14\xb9\x62\xd1\xb3\x1e\xa2\x85\x60\xee\x13\x68\xa0\x1e\x07\xaa\x56\x54\xde\x73\x1f\x75\xed\xd0\x62\xe5\xdd\x5e\x52\x44\xd6\x54\xac\x83\xcb\xf5\x62\xee\x8e\xce\x18\x07\x53\xd0\x41\x06\x15\x1a\xbe\xc9\x45\xf8\xa8\x86\x2f\x0f\xd1\x77\xf2\xd0\xdb\xe9\xf0\x61\xdd\xa9\x76\x16\x8b\xde\x1e\x70\x89\xec\x01\x1d\x0b\x52\xe9\xbd\xf4\x8f\xc5\xf6\xd0\x35\x02\xa6\x4d\x2b\x6a\x8f\x53\x2b\x9e\x5e\xba\x95\x3c\xbf\xd1\x75\xc5\xbd\xf2\x94\xdb\x98\xf0\x48\xb5\x5f\xd9\xb7\x16\x03\x41\x0f\xb8\xde\xe3\xc1\x0f\x76\x20\x76\x89\x7a\xab\x01\x8d\x8c\xb8\xd6\xc4\xfd\xb5\x46\x08\x03\x3e\x3b\x08\x4e\x96\x60\x5d\xbd\x77\x26\x3a\x78\xcb\xae\xbb\xa5\x00\x26\x1b\x1d\x17\xf6\x2f\x85\xfc\x54\xd0\xd6\x77\xa0\x8b\x1a\x17\x1b\xe8\xe8\x3b\x8e\xb1\x30\x08\xa2\x33\x28\xc2\xb3\x0a\x6f\x34\xf0\x23\x58\xc6\xdf\xc9\xdf\x48\x3c\x23\x3f\xc9\xe2\x3b\x09\xc8\x12\x62\x57\x0d\xe1\x8e\x43\xf4\x30\x08\x01\x6f\x7c\x0f\x8d\x87\x82\x4f\x87\x45\x99\x26\x45\xb0\xcb\x4f\x59\x70\x2c\x33\xda\xed\x49\xec\xa7\xe1\xf6\x53\xf5\xf8\xa7\xe2\xc7\x70\xd0\xea\xf6\xe6\xef\x71\x64\x30\x2b\xc6\x2e\x4c\xd3\xbb\xbb\x75\x04\xa6\x77\x5f\x45\x00\x62\xf6\x60\xfb\xfb\x07\x1d\x01\x26\x2c\x4d\x1c\x28\xc9\x32\x42\x8f\x4e\x2b\x13\xdd\xe8\x85\x73\x3a\xf1\x76\x5f\x1f\x93\x42\x3f\x6f\x94\x55\x11\xae\x91\xab\xa3\x05\x1f\x69\xe9\xe0\x1b\xbf\xdd\x6b\xd5\x02\x4c\x06\xd4\x1c\x03\x4d\xf3\x59\x1d\x47\xaa\xf9\x44\xca\x56\x7d\x40\x06\x14\x57\x6d\xf2\xf4\xa8\x59\x11\x2e\x9a\xe5\xe2\x15\x28\x0d\x18\xec\xf1\xe7\xa8\x89\x90\x0d\x17\x16\x22\xff\x5f\xf5\xc1\x53\xb8\xc2\xc9\x6e\x24\x6d\x71\xc6\x51\x2d\xf1\x14\x9f\x85\x15\xfb\x11\x09\x57\xa4\x2b\x5d\xd0\x2f\x66\x48\x0e\xdd\x83\x7c\xda\x92\xb5\x01\x94\x2e\xd9\xd7\x2d\x5b\x1b\xc4\xab\x96\xae\xf3\x89\x53\xca\xbe\xab\x2b\x56\x66\xc1\x01\x8a\x85\x39\x75\x77\x08\x31\x10\x1b\xe8\x5c\x05\x40\x7b\x98\x7d\xf4\x73\x1c\x0b\xa0\xce\x1e\x7b\xb3\x20\x0b\x78\xa6\xdb\xaa\x21\x18\xd9\x39\x14\xdf\x55\xef\x33\xcb\x9d\xaa\x97\xb4\x06\xae\xf1\x53\x69\x8b\xf9\x3e\x3f\xfd\xa7\x42\x78\xba\xb5\xca\xd8\x30\xc0\x4e\x40\x69\xda\xa4\xcd\x53\xd5\x32\x74\xea\x59\xc9\x4e\x5b\x97\x8f\xf6\x68\x2e\x67\x13\xea\x26\xaf\xc7\xee\x65\x50\xac\xc9\x1f\xf1\x0c\x1b\x89\x7d\x69\x7d\x5f\xb0\xbc\x6e\x18\x04\x4c\x1f\xb1\x0a\xdd\xa4\x21\x17\x93\xa7\xb3\x77\x1c\x5d\x8b\xac\x80\x47\xc6\xe2\x87\xa2\xd8\xab\x6a\x0a\xab\xd7\xe6\xa6\x36\xb9\x57\xfe\x4a\xff\x56\xd6\x99\xfe\x00\x3f\x15\x58\x98\x96\xd5\x47\x20\x7d\x3c\x0c\x39\x5a\x5c\x2a\xd6\xf4\xc8\xdd\x92\xef\xe9\xf1\xf3\x5b\x56\xbe\x9d\x84\x64\x08\x8f\x79\xf3\x6f\x47\xda\xd6\x79\xda\xc0\x66\x4c\xf2\x13\xad\x49\x96\xbf\x32\x51\x36\xa9\x7f\xc3\xad\x85\x61\x59\xd1\x7a\xfe\xad\x93\x29\x79\x4b\x89\x6d\x72\x6e\x0f\xc1\x91\xb6\x87\x32\x83\x38\xc2\xf2\xf6\x0a\x01\x65\x2d\x6b\xf5\x0f\x49\x7d\x17\xec\x3f\x45\xd8\x75\x98\xf0\xdf\xa6\xf3\xe7\x5e\x80\xd4\x25\xc4\x3f\xb9\xaf\xae\x61\xdc\x32\x93\x21\x86\xa8\xd9\xdc\x44\x9f\xde\xe8\xd6\x56\x0f\x38\xd2\x99\xf8\xdb\x7d\xf1\xdb\x2c\xe4\x5f\x02\xd2\xb4\x75\xd9\xbb\xbc\xbb\x9c\xf7\xfb\x06\x3c\xa4\xc4\xd4\x56\x10\x61\x62\xb0\x51\x1f\x1a\x40\x90\x0c\xf7\x79\x45\xbb\x81\xb0\x04\xbd\x75\x10\x09\x5f\x93\xe2\x4c\x03\xf1\xde\x32\xa1\x85\x20\xc7\xd4\x66\x9c\x1e\xa8\xd5\x45\x37\x17\x46\x51\x05\x94\x83\x7c\x68\x26\xa7\xcd\xe0\xa4\x99\x9b\x3a\x63\x13\x67\x6a\xfc\x0c\x4d\x9c\x99\x69\x33\x62\x57\xea\xe0\x2b\xf4\x2a\x8a\xb6\x86\xc1\xc2\xf0\x04\x0d\xd0\x7d\x2a\x29\x7d\x23\xee\x8d\xdc\xd7\xd1\xc2\x16\xd7\x2a\xbd\xa3\x8f\xa9\x33\x3c\xd4\x57\x67\x7f\xf4\x6c\xf6\x44\x97\xd1\xba\x76\x8b\x87\x38\xb2\xbd\x85\xef\xd3\x7b\x77\x78\xb0\x36\xc3\x61\x45\x74\x13\x7f\x57\x9b\xce\x57\xf6\x11\x9d\x04\x7a\xad\xfa\x09\x58\x3e\xb7\xaf\x5a\x48\x5e\xcf\x75\x33\x20\x0e\xaf\x23\xac\x97\xf1\x36\xef\x8f\x8a\x38\x1a\xdb\xe5\xf2\x6b\x5d\xae\x94\xe6\x2b\x2e\xc0\xaf\xc6\xb7\x5f\x77\x28\xdf\x0d\xa0\xdc\xdf\xa8\x44\x0b\x5f\x83\xf0\x48\x4f\xe7\xa0\x4a\x4e\xb4\x60\x35\xf6\x79\x2d\xec\xd0\xa4\x7e\x29\xb2\xaa\x8f\x1e\x56\x8f\x58\x90\xb0\x61\x0e\xcf\xb9\xe5\xb9\x4e\xe9\x8c\xff\x91\xd1\xa6\xcd\x4f\x00\x5d\x7c\xe1\xcd\x66\x9a\x67\xa7\x09\x94\xfb\x4f\x04\xec\x9a\x1b\x80\xbb\x3d\x51\x23\x67\xbc\xe5\xa7\xac\x7c\x43\x81\xea\x57\x6b\xfb\x90\x87\x00\xed\xca\xec\x83\x54\xa6\x11\x94\x05\xd4\x3e\xa7\x45\xd6\xd0\xb6\x51\x36\x3d\xa6\xfe\xe8\x48\x70\x3d\x28\x23\x4f\x42\xff\x0c\x2e\x62\xd4\x23\x77\x62\x49\xb5\x97\x3a\xcf\xb6\xec\x47\xf0\x92\x88\xf8\x06\xf0\x57\x4b\x8f\x55\x91\xb4\x34\xe0\x2f\x6b\xcd\xa6\xa6\x15\x4d\xda\x1f\xec\xb2\x15\xec\xf3\x76\x7e\xcc\x4f\xc7\xe4\xfd\x07\x38\xd4\xcc\xd9\xd7\x99\x6d\x2d\xa2\x81\x02\x62\xf8\xf1\x08\x5d\xe7\x38\x93\xf6\xb7\x47\xac\x41\x3a\xfb\xa3\x57\x22\x4b\x5b\xc4\xd7\xf8\x74\x89\xf8\x0a\x30\x5b\xcf\x36\x71\xcf\xcd\x13\xb3\x22\xc4\xe0\x40\x8c\xd6\x12\xd0\x89\xe7\x82\xff\x79\x33\x19\x1c\x13\x04\xad\xb0\xfe\xd7\x00\x2c\x4e\x47\x23\x3f\xde\xd4\xfe\xc5\x9b\x99\x0d\x83\x7f\x8c\x19\x8d\xc8\x11\x03\x6a\x07\x45\xa1\x30\x89\xc4\xfc\x7c\x72\x0b\xf7\xd6\x96\x90\x21\xe3\x10\x3b\xc4\x67\xe1\xee\xa7\x44\xf0\x08\x57\xfd\x55\x17\x2e\x5c\xb1\x69\x0b\x7f\x67\xdd\xb4\x7a\xb7\x63\xa6\x86\x55\x54\xee\xd9\x76\xd6\x72\x2d\x68\x22\xf7\x07\xa3\xbd\x7f\xde\x95\xea\xca\x69\xa6\xcc\x5b\xcf\x0f\xc6\x72\x00\x38\x52\xe6\x8b\x7d\x3d\x9b\xa9\x8c\x64\xc4\x38\x9d\xf8\x70\x2f\x33\x7c\x1a\x01\x68\x8e\xca\x86\xc9\x1a\x24\x1e\x43\x47\x7a\xdc\x81\x13\x7f\x93\xa7\x41\x56\x97\x15\xbb\x58\x07\x6d\x9d\xbf\xbc\xf4\x91\x5d\xf8\x9b\xe8\x88\x39\x11\x0e\xda\x01\x70\xd7\x8b\xd5\x02\x61\xf4\x7e\xc5\xb1\x89\xe0\x9c\x54\x9d\xd5\x3e\xdd\xe9\x8c\x38\x1e\x0d\xc9\x32\x9b\x43\x88\xae\xc4\x73\xe8\xc1\x7c\x60\xdd\x09\x3d\xdd\x6f\xa2\x4b\xe4\x67\xae\x31\x73\xa5\x2b\x6d\xbf\x4a\x65\xed\xa8\x70\x23\xdd\xf6\xb4\xec\x58\xfc\x2c\x83\x35\x1d\xbb\xfc\xc4\x87\xcf\x86\x78\x88\x07\xb5\x21\x0c\x37\x3d\xbe\x0f\x5e\xca\xb8\x9d\x48\x2e\x45\xf8\x5b\x5d\xde\x7e\xd8\x6f\x81\x2b\x47\x73\xd6\xad\xa6\x21\x5b\xba\xba\xc2\x28\xa2\x83\x6b\xab\xc5\x45\x1a\x6c\xcb\x43\x5e\x91\x96\x2d\x44\x26\x3a\xdb\x5d\x11\xb5\x87\x46\xe5\x96\xb4\x88\x15\x91\x66\xa8\x23\x90\x89\xda\xcc\x62\x19\x6e\x09\x46\x3d\x0e\x58\x17\xa5\x42\xbc\xe0\x0d\xcf\xbb\x1e\x73\x72\xa5\x06\x12\x1b\x6a\x3e\xce\x5f\xc7\x70\xc0\x31\xa1\x9e\xb8\x06\x9d\x4b\xb9\xde\x29\x40\x82\x9a\x36\x19\x7a\x89\x32\x2d\x03\xa3\x52\xfa\xbf\x7a\x66\x2c\x50\xcc\x29\x61\x92\x96\xf0\x6d\x2c\x6b\xf2\xd7\x29\x39\xd2\x5f\x37\xec\xe3\x5f\x90\x34\xe9\xf9\xe6\x79\x3e\xa2\x8e\xe1\xa0\x38\xdc\xc4\xed\xa5\x98\x96\x45\x91\x54\x20\x07\x07\x3c\xb6\x63\x33\xe6\xd4\x03\x57\xa7\xc5\xdd\x83\x21\x18\xd7\xe5\x9b\x28\x85\xd8\x68\x6a\x61\x52\xd3\xa4\xd9\xdc\x88\x7e\x88\xf8\xf7\x86\xdc\x84\x84\xa7\x0d\x13\x0a\xe1\x1b\x2b\x5e\xf2\x1b\xcd\x48\x65\x64\xf6\x35\x6a\xcb\x98\x9c\x0d\x3f\x23\x59\xd7\x1b\xf1\xc5\x5f\x9f\xe0\xf3\xd5\xa2\xfd\x37\x5b\x5a\x43\x2c\x61\x5b\xad\x1e\x03\x65\x98\x5b\xef\x53\x43\xac\xa9\xbc\x7b\x1d\x77\xd8\x96\x55\x59\x94\x2f\x1f\x41\xa7\xff\x4e\xea\xcc\x38\x9f\x90\xd2\x9b\x4f\x1b\xc1\x1f\x04\x30\x7f\xab\x89\x3d\x6a\xe4\x7a\xe0\x5e\x34\xa2\x65\x07\x4d\x8d\x5e\xae\xde\xb9\xb0\xb1\x0a\xf6\xad\xe2\x5e\x32\xf6\xb5\x18\xef\x6b\xb2\xd8\xd7\x04\xfd\x6b\x5b\x94\x6b\x78\x23\xd9\xd7\xa0\x61\xb0\x2f\x4c\x90\x83\xd8\xc8\x1a\x02\xbf\x72\x97\xa1\x90\x9c\x2b\xf1\xeb\xb9\xe2\xc5\x37\xc4\x51\x57\x90\x67\x42\x0b\x1b\x74\xfb\xbc\x5b\x9e\x3b\x6c\x93\x35\x21\xf2\x92\xab\x1f\x1b\x50\xa7\x07\x07\x7a\x87\x72\xac\x57\x2d\x3c\xa4\xaa\x1b\x36\x01\x73\x03\xf7\xad\x9e\x81\xdd\xfe\xd8\xe3\x8f\x93\x0a\x16\x5d\x4a\x1e\x1a\x14\x6a\x09\xc7\xb6\xbd\x93\x4a\x69\x94\xd1\xc0\xd2\x61\x58\xe4\xa7\xdf\x23\x68\xf1\x60\xc7\x17\x9a\xf7\x9e\x3e\x22\x7c\xbf\xbb\xa2\xf0\x0f\x50\x55\x7e\xc6\x33\x18\x69\x5e\x5f\xc0\xef\x47\x7f\xe5\xea\x0a\xb8\xab\x1b\x0e\xb7\x6b\x07\xc2\x2d\xe0\xad\x60\xb0\x0b\x2b\x98\xbf\xdb\x21\xf0\xd0\xca\x3c\x5b\x89\x15\x0e\xae\xa0\x7a\xe0\x09\xbb\x7b\x56\xf5\x5f\x65\x7e\xda\x00\x81\x47\x75\xe3\xab\x92\x95\xad\xa3\x82\x93\x62\x63\xc7\x00\xa0\x5d\x14\xb7\xfb\x56\x0a\x0d\xa0\x67\x0e\x45\x1a\x98\xee\x76\xf4\xeb\x54\xb6\x41\x46\xf7\xf9\x89\x66\xcf\xce\xee\xbc\xad\x2e\xa6\x63\xe7\x14\x04\x32\x7a\xfa\x98\xd0\x33\x54\xef\x86\x2f\xac\x58\x1c\x53\xc4\xea\x3a\xc9\xd8\x95\x6a\xc0\xc6\xd1\x92\xb7\xf6\xcc\x61\x5f\x2e\x96\xa1\x02\x5d\xef\xcc\xb3\x2a\x7b\x1e\xd9\x1f\xf3\x3d\xab\x37\xd1\xd3\xab\xc1\x47\xd5\x74\x16\x34\xe8\x1a\xd6\xa8\x99\x3c\x30\xd4\xdb\xa6\xde\x8a\x1f\x8f\x6a\x33\x13\x25\x37\x33\xb5\xc5\x55\x30\x59\x15\x82\x2f\xca\x7c\xfc\x6c\x2c\xd3\xef\xef\x88\x53\x24\xa0\x09\xa2\x8b\x66\x32\xa3\x4a\x24\xba\x9f\xd4\xc8\x54\xaa\x4e\xf7\xc7\x49\x83\x20\xd5\x84\x61\x90\x4a\xb5\x03\x81\x1f\xd1\xd6\x1f\xca\x5c\x37\x69\x41\xf7\xa3\x69\x88\xf2\xc4\xd5\x93\xd0\xe5\x4d\x14\xa4\xaf\xed\x3e\xcb\x5f\xa7\x74\x8d\xd5\x79\xca\x92\x9e\xd8\x27\xc9\x8a\x89\xdd\x62\x3f\x04\xac\x93\x32\x74\xba\xd3\x51\x99\xb2\xe4\x45\x0b\x5d\xf8\x98\xda\x27\x3c\x3a\x4f\xec\x15\x5e\x41\xff\xc0\x70\x7b\x65\xfe\x55\x68\xf7\xad\x27\x12\xad\xbd\xb6\xa5\xdb\x0a\x62\x2a\x6f\xe3\x86\x4d\xdc\xcc\xe6\x4b\x84\x08\xb9\xa6\xe2\x0b\x83\xb2\x61\x31\x11\x82\x81\xc3\x45\x4b\x90\xe0\x3a\x20\xae\xa0\x99\x30\x0d\xbe\x1a\x57\xad\xbd\xe5\xec\x12\xaf\x90\xd3\x51\xd3\x72\x72\x4c\x46\x4d\xcf\xe9\x61\x0b\x3e\x08\xe6\xf4\xd3\x51\x93\xe6\xca\x57\xe3\xa6\x03\x70\x07\x70\x9c\x8e\x1c\x1c\x22\x57\x63\xa6\xb4\xbe\x7c\x61\x79\x89\x17\xbe\x66\x0a\x06\xb2\xcd\x45\xd5\x8c\x0a\xf5\xa8\xd1\x86\xbf\xf6\x63\xc3\xd4\xcd\x1d\x3b\xe2\x21\x79\x07\x5c\x68\xe5\xc9\x02\xda\x60\x0b\x04\x11\x53\xf7\xc9\x69\x6a\x69\x0b\xc5\x16\xac\xa3\xef\x73\xf6\xc3\x15\x01\xa9\x3b\xc0\xad\x58\xab\x7d\xca\x5b\xac\x1e\x1b\x71\xa0\x55\x96\x37\x6c\x48\xd9\xdc\x1a\x96\xfa\x54\x66\xb4\x09\x9b\x43\xf9\x16\x1e\x69\x9b\xb0\xe2\x9b\x67\xa9\x12\x37\x35\xaf\x43\x9d\x75\x31\x02\x07\xea\x41\xd4\x8d\x3e\x2d\xbf\x1b\x30\xcf\x3b\x35\x14\x52\x53\x0b\x34\xe7\x87\x65\x66\xeb\x75\xe3\x0b\x4d\x9e\xb4\xc8\x6f\xee\x10\xaa\x4e\x30\xc5\xfd\xc4\x7e\x8b\xfb\xe1\x5e\xfb\xa0\x39\x0e\x20\xe8\xf6\x3a\xb1\x7b\xd4\x52\xc7\x43\xf5\xd4\xb0\x5d\x52\x0c\xb3\x61\xfd\x3a\x2f\xf3\xd2\x8e\x6c\x1d\x8a\xdc\xae\x68\xaf\x47\x3c\x42\xb3\xfa\xbc\x60\xa4\xfa\x5a\x6b\x42\xfb\x2a\x8a\xc6\x04\x48\x76\xdf\x4b\xde\x59\x67\x0c\x83\xee\x85\x51\x7c\x95\x09\x81\x44\xce\x02\x35\x13\xd0\x7a\x36\xe7\x25\x7a\x0a\xa0\xc5\x6c\x22\x05\x70\x59\x9b\x1f\xa9\x19\xb3\x5a\x53\xbe\xe1\x2b\x0c\xf2\x2c\x8a\x3a\x42\x18\x51\x14\x3b\x2d\xa7\xf1\xaa\x25\xc2\x2d\x15\xf9\x8b\x4c\xa5\xff\x15\xec\xdb\xa0\xa0\x2f\xf4\x94\xd9\x8c\xcf\xc7\xc3\x68\xce\x47\xa9\xa7\xed\x43\xe0\x2e\x05\x31\xc8\xd4\x05\xe6\x04\x6e\xb7\x9c\xc6\xef\x0e\xab\x3e\x5e\x78\x37\x19\x5f\xed\x9f\x13\x88\xef\xf6\xce\x28\x10\x79\xa2\xc6\x28\xd7\x52\xbf\x4a\x65\x58\x00\xb2\x86\x03\x2e\x42\x41\x0a\xff\x04\x36\x60\x51\xf6\xe5\x49\xe3\x60\x14\x13\xab\x71\x20\xb3\xfc\x55\x42\x35\xcc\x89\xfa\xa0\x00\x22\xbe\xad\x2b\x3c\x9c\x4e\xc4\x3e\x7f\x90\x58\xed\xc1\xbd\x37\x94\x3a\x8e\xd5\x8a\x03\xf5\x47\x06\x13\xe9\x85\x82\xba\x6c\x99\x44\xb0\x5a\x67\xf4\x65\xf6\x89\x46\xf6\x9b\x7e\x90\xc3\x52\x13\xe0\xc1\x68\x61\x29\x26\x50\xdd\xc3\x66\x5b\x35\xe2\x95\xa6\x8e\xd7\xab\xab\x7f\x4a\xf7\x2b\x76\x05\xd6\x4a\x40\x45\xaf\xc5\xca\x31\x6b\xd8\x55\xeb\xc6\x54\x8a\x7c\x12\x36\x00\xda\xc0\x17\xf6\x81\xc7\xce\x97\x0b\xab\x9b\xca\xd8\x9a\xec\x64\xea\xbf\x62\xe3\x87\x83\xe4\xa1\x68\x63\xa3\x80\xd5\xe3\x7b\xe8\x4e\xaf\x49\xf1\xff\xbb\xfc\x5e\xf7\x0f\x7d\xb0\x83\xc5\xfd\x14\x2a\xf8\xb8\x89\x35\x7a\xc6\xa4\x31\x69\x82\x03\xcf\x6b\xf9\x15\x08\x22\x2c\xa4\x62\x4e\xb7\x1e\xbb\x7e\x3b\xb7\x35\xcd\xe9\x5c\x24\x66\x1b\xb7\x05\x0a\x35\x8a\x4f\x44\xa2\xb1\x2d\x0d\xf7\xf9\x8e\xd3\xac\xbb\xd4\x56\x22\x46\xef\xb8\xcd\xd8\x05\x77\x21\xf2\x5e\xb3\x34\x69\xc1\xb7\xa8\xb9\xac\x5c\xe1\x4d\x18\x08\xcd\x03\xdf\xbe\xad\xdc\xbb\x15\xf7\x26\xcc\x7e\x6d\xb7\xad\x36\x69\x1b\xab\x46\xd5\xf4\x08\x05\x05\x71\x5d\xbe\x91\x61\xaf\x50\xed\x25\xbb\xa6\x6d\x7a\xc0\x11\x3f\xad\x67\xb5\x91\xda\xcb\x8e\xad\x11\xe4\xc4\x6a\xa7\xe5\x6a\xdb\x9a\xae\x39\x86\x24\xaa\x46\x1f\xb5\xc3\xc9\x54\x77\xf5\x11\x4d\x78\xec\xa5\xd1\xb8\x9e\xe5\x4e\x75\x16\x8b\x6d\x38\xe8\xcb\xb2\x55\x1f\x1c\x0c\xd9\xb0\x97\x43\x92\x73\x5b\x5a\x6c\xc3\x85\xe1\x8c\x17\x4d\xcd\x69\xca\x8f\xf3\xb8\xf7\xf0\xcf\x30\xa9\x2a\x30\x00\x03\x4b\x50\x38\x9b\xc1\xe2\xbf\x4f\xc9\x34\x33\x8d\xdd\x89\x48\x4b\xe3\x4d\x0b\xe9\x68\x75\x51\x97\x42\xbc\xb6\xa0\x20\x6c\x5f\x78\x44\x74\xfe\xfb\x73\xc8\xfe\x08\x32\x5a\xd0\x96\xce\xbf\x80\xf5\x93\xf4\x6f\x72\x59\xdc\x58\x4c\x7b\x4d\x6f\x04\x11\xb9\xba\x4b\x12\x32\xc7\x9e\xa7\x1d\x20\xd0\x09\xc1\xb4\x50\xc6\xf9\x9f\xe4\x77\x2f\xdd\xf8\x40\xab\xa4\x69\xde\xca\x3a\x13\xe8\x8e\x68\xc1\x4d\xb5\xc6\xd7\x67\x6b\x74\x4c\x6d\x3f\x1d\xcb\x3c\x4b\x45\xd7\xdd\xb0\xf1\x37\x5c\x57\x4d\xeb\x26\x8a\x6e\xe7\x02\xfd\xb2\x6e\xfd\x35\xb8\x95\x93\x80\xf5\x96\xb7\x87\x00\xfb\xc1\x10\x65\x81\x24\xfc\xaf\xb4\xa6\x49\x4b\xe7\x62\xb6\xf8\xa7\xe4\x94\xd2\x42\xf9\xd4\x9c\x77\xc7\xbc\x9d\xe3\x45\x57\xd3\x86\xb6\xcf\xca\x27\x5e\xeb\x79\x2e\x2c\xf8\x45\x7a\x94\xc6\xb6\x56\xf9\x62\xe4\x2b\xa2\x3d\xcd\xc0\xed\xd7\x3a\xaf\xa8\x00\x4f\x1f\xfa\xdc\xcf\x12\xfb\x11\xf2\x2d\x64\x44\xa7\x99\x1c\xb5\xd1\x1f\x71\x4d\xda\x82\x66\xed\x50\xd8\x23\x19\x70\x4f\xb7\x72\xe9\x36\x28\x39\x2c\x08\x3d\x7e\x6d\xc3\xaa\xce\x74\xd8\x3e\x52\x09\x1d\x41\xdf\x5b\x5a\x9f\x92\x42\xa8\x37\xa7\x86\x94\x80\x50\x36\x6e\xef\xce\x61\xf7\x4f\xe4\x36\xe5\x85\x24\x9c\xad\xec\x75\xec\x9e\x1a\x7e\xd7\xc0\x22\x17\x8b\x50\xf5\xdd\xfc\x9d\x9f\xb2\xee\x0f\x8d\x26\xc8\x6a\x27\xa8\xea\xf2\xfd\xc3\xbf\x20\x3a\xaf\x15\x6f\x35\x25\x20\x9c\xca\xfd\x64\xf8\x4d\xec\x7b\x30\x0f\x0b\x99\x8d\xb9\x73\x6d\x23\x59\x4b\x46\x73\xb0\x7e\x2f\x09\x22\x4d\xe0\x92\xe3\x5b\xf0\x1d\x38\xa6\xfe\xd0\x02\xf6\x36\xe6\x09\xe8\x92\xbf\x6a\x5a\xdc\xfe\x3a\xd0\xa2\x7a\x1e\x68\x20\xb4\xd2\x99\x62\x04\xc7\xd6\xd4\xb1\xac\x69\x30\x9c\x0a\xf3\x27\x7f\x84\x24\x26\x1f\x57\xb1\x9e\x0a\x69\x54\x06\x09\x9b\xf4\xd2\x3f\x4a\x68\x0c\x9f\x23\xc2\xc7\xbf\x4b\x4e\x27\x5a\x3f\x93\x53\xf2\xaa\x86\x36\x22\x61\xce\x44\x9f\x34\x29\xb8\xe4\xa3\x44\x97\x19\xce\x41\x09\x2c\xb7\xdf\xe5\x56\x8e\x6d\x14\xa9\x8b\xc9\xe0\xda\xe8\xb3\x65\x76\x79\x8f\x8e\x49\x04\x66\x2f\xd2\xf2\x9f\xca\x8c\x06\x79\xc6\xf6\x7d\xfb\xa1\x94\x34\xb4\x7e\xcd\x53\x54\xc8\x73\xee\x1c\x92\x26\x90\xa7\x53\x5b\xcb\x44\x5e\xcd\x88\xc9\xe3\xed\xe1\x6c\x15\x2f\x4a\xd3\x00\xe8\x82\xf2\x1f\x3d\x07\xbc\x3c\xf5\x1a\xe6\x3b\x85\xc5\x8c\xac\x2f\x56\xc4\xc8\xda\xb0\x4c\x06\xeb\xfa\xe8\xe1\x6d\x88\x44\xe9\x9f\x83\x95\x9d\xec\xc4\xe4\x0c\xec\x2b\xde\xa0\xf4\x68\xdd\x2f\xea\xe7\x9e\x32\xfa\x3e\x91\x9f\x34\x74\x7d\xfb\xe3\x62\x44\x92\xf3\x46\xfc\x78\x2a\xf2\xa7\x50\x46\x0f\x76\x7a\x65\x41\x3d\x6e\x7d\x8e\x7a\x9b\x19\x2d\x1d\x81\x04\x71\x1f\xd6\xd4\xd4\x6e\xd0\xc8\x31\x64\x11\x72\xf7\x12\xe5\xe9\x62\x8d\xdc\x43\x06\xc6\x47\xa0\x17\x4e\xc5\xd9\xf5\x83\xb5\x83\x19\x1c\xb9\xd6\x6c\x22\x19\x94\xd6\x88\x26\x32\x29\x2e\x26\x49\x97\xee\x55\x65\x30\x17\xd5\x48\xcd\xe2\x10\xbf\x8a\xa3\xea\x7d\x46\x92\x53\x46\x7e\xc8\xcc\xb9\xc7\xfc\x14\x64\x14\x58\x69\x95\xbf\xd3\x22\x80\x54\x15\x9b\x68\x76\x11\x89\x56\x15\x1d\x32\xd2\x43\x7c\x7e\x13\x1a\xbc\x0b\x7a\x0d\x13\xda\x9a\x60\x57\xbe\x77\xe5\x22\x0b\x3e\xbb\xcb\xe0\x5d\xf8\x74\x0b\xcb\xfc\xe9\xf6\x62\x7d\x4d\xd3\x73\x27\xff\xd7\x2f\x7e\xa1\xe1\xc7\x95\x7e\xaa\xfd\xd7\x2f\x9a\xe5\x2d\x2f\x43\x2e\xf6\x8b\x18\xc2\x0a\x48\xf7\x4f\x35\x06\xb4\x2f\x26\x99\xe6\x74\x59\x97\x6f\x9f\x61\x79\x6e\x0b\xda\xf2\x4e\x41\xb2\xfb\x55\x94\x49\x96\x9f\x5e\x9e\x01\x1b\xe1\x03\x2a\xbe\x91\x90\x4d\x8c\xd0\x47\x40\x39\x67\xf6\xec\x7c\xe2\xb6\x3a\xcd\x8c\xfc\x95\x16\x49\xd3\xdc\xfe\x12\xae\x4e\xcf\x68\x54\xbc\x83\x3c\x2b\xe8\xb3\x02\x4a\x7d\xe0\xc6\xe3\xe9\x9c\x5c\x51\xe0\x2e\x6b\x39\x5e\x84\x5d\x10\x21\xc5\x7f\x13\x02\x74\x7a\xf3\x0e\xc3\x57\xa9\x47\xf1\xf4\xa2\x46\x2a\x52\xf3\x99\xf1\xa8\x16\x72\x0d\x63\x7b\xa5\xb5\x37\x9e\x43\x4f\x4c\x38\xac\x77\x35\x4d\xb2\xb4\x3e\x1f\x77\xcd\x8c\x58\xc1\x81\x33\x34\xac\x27\xb2\x2b\xb3\x8f\xa7\x90\xe7\x8a\x12\x04\xf5\xa7\xbf\x13\x99\x04\xac\x36\x1d\xd1\x3c\x9a\x75\xe9\x14\x16\x9f\xda\xe4\x89\x9b\xb0\xb2\x2a\x66\x36\x04\x24\x84\xa8\x1f\x72\x17\xc1\xee\x31\x8a\xe4\x90\x31\x68\xe7\x38\xdc\x09\x00\xd3\x43\x5d\x1e\xc5\x7b\xfb\xec\x6f\x24\x9e\xcd\xa3\x99\x91\xa0\xbc\xdf\x64\xbd\xb0\xc2\xf9\x13\x93\x74\x9e\x30\xe7\x72\xed\xc0\xc1\x86\xca\xcc\x84\x0f\xf4\xa8\x29\xc1\xc2\xde\x6d\x46\x2b\x40\x69\x03\x89\xf3\x82\xeb\x69\xf4\x84\xe4\xf3\x9f\x95\xaf\x22\xc6\xd7\x10\xd2\xe0\x03\x1c\xce\x33\x75\x2c\x31\xf6\x0e\x36\x8e\x9d\x81\x93\xe4\xe2\xca\x7a\xe1\xf6\x08\xf6\x1e\x71\x5d\x21\x88\xd0\xc6\x47\xe4\x5c\x89\x3e\x0b\xd9\x5a\xff\x0c\xee\x90\xfa\xc7\x4e\x00\x57\xce\x43\x54\xa1\x2d\x7f\xd3\x1e\x1d\x6d\xb9\xc0\x2d\x44\x80\x40\xd9\xf0\x35\xd8\xa2\x31\xce\x3b\x2d\x0c\x46\x30\x85\xb8\x0e\xf3\xa7\xb5\x5f\xb3\xe9\x42\x35\x90\x96\x87\x98\xca\x00\xd7\x28\xe9\xb7\xe0\x56\x6b\x64\x1a\xc6\xad\x8d\x95\xc7\xa5\xd7\x83\x3d\x57\xc0\x27\x1c\x49\x3c\x4a\xe6\x67\xc7\xba\x94\x8d\x03\xa3\x7f\x9e\xd9\x0a\x38\x69\x9b\xe7\x99\x3c\xd9\x74\x7f\x46\x77\xd4\x1b\x55\x47\xd7\x69\xe4\x2e\x4a\xcc\xec\x3b\xfc\xa6\xf9\xf9\xe9\x17\x93\x2b\xd3\xb5\x11\x04\x55\xf3\xbb\x86\xe8\x82\xed\x8b\x41\x71\xfd\x27\xb7\xc0\xd4\x95\x9b\x23\x04\x7d\x63\x8b\xf6\x42\xb5\x0b\x68\x57\xc1\x68\x3b\x8a\xc8\x5c\x92\xba\xf4\xb2\x3b\x56\x9d\xda\xb2\x0a\x88\xe8\x7c\x58\x7e\xb2\x5e\xcc\xd1\x96\xe0\x73\x7f\x63\xb2\x54\x92\x15\x96\xd4\xd1\xc0\x83\x50\x1a\x00\x89\xff\x52\x7f\xea\x83\xd3\xf5\x0b\x9d\xb7\x86\xc6\x73\x3c\x30\x2d\xb3\xb2\xf2\x40\x37\x11\x8c\x3c\x09\xc4\xbf\xe6\x1a\x74\x25\x87\xd5\xde\xc8\x20\x82\xef\xe4\x11\xd8\xd5\x2a\x5f\x46\xd6\x9a\x6a\x7a\x24\x76\xd8\x6c\xd3\xd6\x29\x39\xc4\x9d\x4d\xc9\x0a\x5e\xb5\xe1\x79\xd0\x0a\xfc\xf7\xeb\x4d\x77\x51\x87\x8b\xae\x6d\x4d\x5b\xdc\x5d\xa6\x2a\x9b\xd4\xd7\xd2\xa5\x55\xec\x13\x7b\xcd\x0d\x9a\xcb\x2c\x12\xb6\xf6\x46\xe1\xd1\x7f\x31\x81\xc5\xd1\xea\xd2\x67\x52\x99\x90\x73\x68\x6b\xb2\xbd\x2b\xb1\x16\x2c\x6b\x4f\x69\xb6\x4b\xd2\xdf\xd7\x0d\x42\x03\xe2\x0c\x0a\xeb\xd8\xc0\xa3\xb1\x54\x18\xeb\x57\x30\x55\x62\xbb\x61\x79\xc8\xc1\x2c\x3b\x0d\x57\x07\x3c\x04\x53\x55\x91\x5d\x91\x89\x68\x96\x93\xe8\xff\x05\x00\x00\xff\xff\xb1\x89\x04\xcf\x54\xcc\x04\x00") +var _web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x34\xca\xb1\x8a\x02\x31\x10\x80\xe1\xfe\x9e\x62\x2f\x55\x02\x47\x1e\x20\x90\xb3\xb7\xd0\x62\x4b\x11\x89\xc9\xac\x0c\xee\x66\x42\x66\x02\x2e\x61\xdf\x5d\x16\xf1\xaf\xbe\xe2\xd7\x1a\xfe\xc4\x6b\xd5\x72\x82\x09\x33\x24\xf5\xeb\x65\x2d\x40\xd3\x90\x28\xb6\x05\xb2\x1c\xbe\xb0\xb1\xd5\x0a\x59\xc6\x58\xb1\x88\x4d\x41\x02\x83\xb8\x85\x52\x9b\xc1\xc2\xab\x50\x15\x36\xc6\xff\x77\xb1\x95\x9a\x00\xfb\xe3\x78\x3e\x59\x96\x8a\xf9\x81\xd3\xaa\xc1\x6c\x46\xf7\x14\x5d\x0f\x71\x66\xd7\x85\x9e\x90\xd9\xf5\x1b\x15\x41\xda\x15\xee\x38\xa3\x20\xb0\xbb\xa8\x0a\x21\x0d\x9f\x45\x5d\xb7\x3d\xf3\xf3\x0e\x00\x00\xff\xff\x79\xde\x72\x20\xb0\x00\x00\x00") -func web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCssBytes() ([]byte, error) { +func web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7JsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCss, - "web_ui/assets/consul-ui-51d90776c9d9526f1bc127d33ec88b1e.css", + _web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7Js, + "web_ui/assets/consul-acls/routes-75a2ac7d38caf09cfee2a4e2bc49dcf7.js", ) } -func web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCss() (*asset, error) { - bytes, err := web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCssBytes() +func web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7Js() (*asset, error) { + bytes, err := web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7JsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-ui-51d90776c9d9526f1bc127d33ec88b1e.css", size: 314452, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-acls/routes-75a2ac7d38caf09cfee2a4e2bc49dcf7.js", size: 176, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\xfb\x7b\xdb\xc8\xb1\x27\x8c\xff\xee\xbf\x82\xc6\xce\xfa\x90\xdf\x40\xed\xbe\x5f\x78\x96\xf1\x38\x1a\x27\xc7\xfb\xf5\x5c\xd6\xf6\x9c\x6c\xa2\xd5\x3b\x07\x22\x21\x09\x6b\x08\x60\x00\xd0\x1e\x45\xe6\xff\xfe\x3e\xd5\xdd\x00\x01\x10\xa4\x48\xdb\x33\xe3\xc9\xeb\x3c\x4f\xc6\x62\x01\xe8\x4b\x75\x75\xd5\xa7\xaa\xab\xbb\x83\x55\x19\x8f\xca\xaa\x48\xe6\x55\xf0\x60\x11\x5f\x26\x59\x3c\x0e\xe6\x79\x56\xae\xd2\x93\x55\xf2\x38\xba\x48\xd2\xa4\x4a\xe2\xf2\x71\x34\x4f\x83\xf0\x2c\x88\x7f\x5e\xe6\x45\x55\x06\xe1\xe0\x4b\x17\x51\x19\x07\xe7\xe1\xf8\x72\x95\xcd\xab\x24\xcf\xc6\x71\x58\x4d\xee\xde\x46\xc5\x28\x0b\x8b\x30\x7a\x50\xd3\x47\x29\x3c\x09\xb3\xc9\x5d\x11\x57\xab\x22\x1b\x55\xa3\x24\x1b\xc5\x4f\xbe\xbf\xf8\xbf\xf1\xbc\x42\xae\x1d\x3f\x14\xf9\x32\x2e\xaa\x5b\xfb\xea\xdd\xdb\x28\x5d\xc5\xd3\x2c\x8c\xb3\xd5\x4d\x5c\x44\x17\x69\x3c\x7d\x88\xc3\x79\x9e\x5d\x26\x57\xab\xe6\xf7\xbb\x22\xa9\xfc\xdf\xeb\xc9\x34\x3e\xab\xce\x67\x59\x18\xaf\x77\x95\x1b\xfc\xf4\x53\x5c\x7e\x9b\x2f\x56\x69\x1c\xd4\x55\xc0\x97\x61\x0c\xef\x46\xab\xb4\x9a\xbd\xcd\x93\xc5\x08\x3f\x48\xe3\x6a\x54\xce\xc6\xd9\xec\xd9\xcd\x45\x5c\xa0\x24\xb3\x05\x96\x71\xf1\x36\x99\xc7\xe3\x20\xce\xde\x06\x93\xb0\x98\xcd\xd3\xa8\x2c\x47\xf1\xcf\x55\x9c\x2d\xca\x51\x55\x97\x72\x07\xcc\xaa\x8a\xd5\xbc\xca\x8b\xb1\x63\x88\xed\x7f\x58\x3c\x28\x57\xcb\xb8\x18\x23\x84\xa2\xe2\x6a\x75\x13\x67\x55\x39\x09\xe3\x59\x75\x9d\x94\x61\x35\xb3\xe5\x86\x85\xfb\x39\xce\x66\xd1\xe4\xd1\xa3\x3d\x3c\x6a\xf1\x26\x43\x9b\x1f\x5d\x2e\x65\xa8\xfd\x73\xc3\xb1\x0c\xd5\x7f\x86\x9e\xd7\x28\xc9\x92\x2a\x89\xd2\xe4\x9f\x71\xf1\xa4\xf3\x0b\xcd\xa3\x34\x1d\x17\x93\xa9\xe3\xce\x7a\x12\xa6\x63\xdb\xc6\xa0\x88\xcb\x7c\x55\xcc\xe3\x20\x0c\x40\x62\x36\x0f\xca\xf8\x0a\x7a\x17\x2f\x82\xf0\x21\x99\xac\xaf\xe2\x6a\x34\x8f\xb2\xa7\xf3\x79\x5c\x96\xe3\x5a\x0e\x1e\xc2\xbb\x28\xce\xde\xa2\xb7\x51\x31\x0e\x4e\xbf\xff\xee\xd5\x8f\x2f\x7e\x7a\x7a\xfa\xe2\xd5\x4f\xcf\xbe\x7b\xfa\xa7\x17\xcf\xbe\x09\x26\xef\xdf\xdb\x97\xe6\x51\xf6\x32\x8e\x16\x75\x41\xf0\xf7\x78\x23\x4e\xf7\x17\xf3\xe8\x91\xe5\x7c\xbf\x9c\x6f\x56\xcb\x34\x99\x47\x55\xfc\xa1\x85\xfd\xb5\x48\xaa\xb8\x29\x2d\x4e\xe3\xa3\x8b\x0a\xa2\x2c\xcf\x6e\x6f\xf2\x55\x19\x3c\x9c\xd9\xa1\x47\x49\x15\xdf\xa0\xe7\xdf\xec\xaa\xe6\xc7\xf2\xb8\x3a\xd6\xeb\x30\x99\x15\x68\x59\xe4\x55\x5e\xdd\x2e\xe3\x30\xf7\x92\xb6\x9a\x9d\x65\xe7\xe1\x7c\x76\xd7\x9f\x57\xdd\x59\xd7\x9a\x65\x61\x4b\x2a\xa6\xd9\x2a\x4d\xd7\xe1\xcd\xec\x6e\x1d\x7a\x29\x7d\x13\xdf\x96\xe3\xf9\x04\x5d\xe6\xc5\xb3\x68\x7e\x3d\x6e\x69\x86\xc9\xdd\xcd\x59\x7c\x3e\x9b\x9f\xc5\xe7\xeb\xc9\x24\xbc\x69\x09\xec\xec\xe1\xc3\xf6\xcf\xf0\xa6\x23\xb2\xf6\x69\x47\x86\xc7\x81\x95\xd8\x20\xc9\x46\x37\xef\xdf\xdf\xb4\x25\x75\xf2\xe8\xd1\xf8\xa6\x91\xec\xd9\x43\x3c\x09\x6f\x66\x2b\x54\xa6\x30\x6d\x27\xa8\x88\xdf\xc6\x45\xe9\xfe\x5a\xac\xe6\xf1\xb8\xa7\xba\x6a\x9e\x8e\x93\x30\x0f\xe3\xc9\xfb\xf7\xf1\x7a\x12\xde\x4c\xc2\xc5\xa3\x47\x4e\xf4\x1f\xce\x66\x9d\xfa\x6c\x75\xb6\x35\x5d\xfa\x93\x9b\xed\xf9\xb3\xa8\xe7\x4f\xd8\x79\xe8\x55\xce\x24\x74\xff\xce\xb6\x6b\x18\x56\x01\xd0\xc4\x1b\xe8\x1e\x0c\xc3\x24\x8c\x66\x37\x61\x31\x79\x00\xba\x06\x9e\xac\xc2\x79\xb8\x08\x6f\x1e\x6c\x34\x5b\x09\x6c\xdf\xab\xf2\x57\xd5\xf5\xc9\x4d\x5c\x5d\xe7\x8b\x2f\xaa\xff\x8b\xea\xff\xc4\xaa\xff\x53\x69\xec\xd3\x22\xfe\x08\x75\xed\xbe\xfe\x28\x7d\xdd\x94\xe5\xbe\xfe\xa2\x5c\xbf\x28\xd7\x03\x95\x6b\x9c\x55\x16\x6b\x7c\xbc\x76\xfd\x34\x5a\x2e\xfd\xa2\xe5\x76\x69\xb9\x5a\x43\x1c\x8b\xb3\xca\x8e\x2a\x48\x7c\x87\x73\xab\x0a\x56\x1f\xa7\x0a\x16\x7d\x55\xb0\xda\xa1\x0a\x16\xa0\x0a\x56\x5e\x15\x2c\xba\xaa\xa0\xfd\x33\x5c\xf4\x55\xc1\x62\xa7\x2a\x58\xbc\x7f\xbf\xe8\xab\x82\x45\x57\x15\x2c\x66\xf9\xf1\xaa\xa0\x0c\x93\x46\x15\x2c\x26\xe1\xbc\xa5\x0a\x16\xbd\x89\xba\xf0\xaa\xa0\x43\x7f\xb2\xd8\x1e\xc6\x79\xa3\x0a\x16\xfb\x55\x41\xbf\x86\x61\x49\x84\x26\x2e\xa0\x7b\xb5\x2a\x58\xd4\xaa\x00\x9e\x78\x65\xd0\x52\x05\xe9\x7d\xaa\xc0\x4e\xee\x8e\x0a\x88\x61\x0e\x9e\xcc\xa3\xec\x5f\x0c\x51\xc5\xe8\xe9\xe9\xe9\xb3\x57\xaf\x7e\x7a\xf1\xfc\xd5\xeb\xcd\xaf\xbf\xbe\x7c\xfe\xfa\xd9\xe6\xe7\xcb\x67\x4f\xbf\xa9\xd5\x52\x97\x18\x14\x71\xb4\x08\x1e\xf4\x3e\x0c\xa0\xa1\x71\x8b\x6c\x4b\x0f\xd2\xa4\xac\x82\xfb\xd0\x5b\x11\x2f\xf3\x32\xa9\xf2\xe2\xf6\xf1\x32\x2e\x6e\x92\xb2\x4c\xf2\x6c\x50\xd3\x3d\xb5\xe3\x75\xfb\xc1\x9a\x6e\x53\x7c\xf9\xbb\xd0\x78\x43\xb8\x6e\x07\xa8\xc3\xa0\x1e\xb3\xb8\x00\x1c\x16\x77\x15\x64\xab\xd7\xa8\x79\xc7\x3e\xa9\x8b\x0d\xe3\xcd\xd7\x7f\xce\x8b\x57\xae\xdc\x7e\x39\x4d\x75\x4f\xce\x0e\x2d\xd7\x09\x4b\x18\x4f\xc2\x83\xbf\x70\x82\x14\xc6\x93\xf3\xe9\xd9\x79\x0f\xa8\x26\x97\xe3\x46\x15\x35\x4e\xf9\xc4\x89\xc3\x28\x9e\x8d\x9d\x7c\x5d\xc5\x95\x67\x90\xf5\xd9\x5f\xfa\xa2\xcb\x60\xf2\xfe\xfd\xd9\xf9\x04\x5d\x26\xd9\x62\x1c\xcf\xfe\xe8\x1a\x37\x9b\x81\xd4\xdb\x18\xc8\xe4\x41\x72\x39\x8e\x27\xbe\xcf\x31\x7a\x9a\xa6\xf9\xbb\xf5\x2e\x56\x5e\x47\xa5\x6b\x7b\xd3\x13\x57\xe0\xa4\x31\x54\x2f\x92\xb2\xfa\xf4\xad\xb6\x73\xea\x53\xb6\xda\x16\xb8\x69\xb5\x0d\x6b\x7c\xfa\x66\xbb\x71\xfd\x94\xed\x76\x25\x6e\x1a\x3e\xe8\x85\x1c\x14\x0e\xda\x0a\xe6\x2c\x17\x7b\x4a\x1a\x70\x2e\x3a\x8a\xe5\x8b\x93\xf1\xc5\xc9\xd8\x20\x8b\x24\xab\xc0\xc7\xc8\xb3\x0f\xf5\x30\x3e\xde\xaf\x70\x66\x34\x3b\xdc\x65\x18\x34\xa3\xd9\x2c\x68\xf5\x65\x5c\xcd\x36\x56\x69\x92\x64\x63\x67\x65\x27\xbf\x0c\xe4\xe9\xeb\x26\x2f\x51\xdd\x50\xec\xa3\x47\xe3\x66\xb0\x1b\x85\xe5\x43\xd5\x2e\x7a\x5b\x3e\x5b\xb8\xb2\x27\xeb\xf5\x86\x4b\xd9\x7d\x43\xf8\xe6\xed\xbf\xc0\xd8\xbd\x89\x6f\x7f\x83\x51\x1b\xc2\x14\x00\x07\xb3\x99\x1b\xbb\xc1\x37\x1e\x34\x36\x01\xba\xfc\xd7\xa4\xba\x1e\x07\x8f\x03\x50\x42\xd9\xcc\xe2\xac\x79\xe4\x8c\xce\x21\x80\xa2\x6a\x23\xd2\x30\x9e\x4c\x26\x61\x76\xd4\xe8\x67\xf9\xe2\x83\xa3\x03\x9f\xd1\xf8\xbb\x6e\xfc\xca\x02\x70\x14\x9f\xcb\x65\x34\xff\x04\x71\x98\xdf\xa1\x4f\xf6\x25\xca\xfd\xa1\xde\x10\xb4\x2c\xaa\xf2\xe2\xde\x50\xf7\xb7\x51\x16\x5d\x0d\x40\xba\xbd\xc1\xe7\xc0\xb3\xb6\xbb\x08\xf8\x5d\x74\x13\x6f\x87\x9c\x6b\x10\x7a\x9d\xe7\x5b\x4b\x81\x6e\x7d\xf0\xf0\xa5\xc2\xef\x5e\xfd\xf0\xf4\xf4\xd9\x97\xd5\xc2\x2f\x58\xf3\x38\xac\xb9\x8c\x8a\x2a\xf9\x18\xac\xf9\x45\x8b\x7e\xd1\xa2\xff\x32\x5a\xf4\x87\xa7\x2f\x5f\x3f\x7f\xfd\xfc\xfb\xef\xbe\x28\xd2\x2f\x8a\xf4\x48\x45\xba\x89\x43\x7f\x86\xc8\x7f\xf7\xea\x7d\xdb\x1f\x6a\xff\x9d\xc6\xd9\x55\x75\xfd\x47\x7c\x14\x20\x5f\xe6\x69\x32\xbf\x3d\x90\x01\xed\x47\xd7\x71\xba\x8c\x8b\xba\x80\xc7\x30\xcf\xf2\xcb\x3e\x8b\xc0\xa4\xc0\x08\x15\x61\x14\xa6\x1b\x73\x53\xfe\x1e\xcd\x4d\x32\x1b\x17\x7b\xcd\x4d\xf4\x4b\x9b\x9b\xf4\xb3\x35\x37\xe5\xae\xd4\x94\xf2\x57\x49\x4d\xe9\x45\x8c\x0e\x2a\x68\x30\x8c\x14\x38\x69\x3e\xb9\xb1\x26\x10\x5a\x0c\xf6\x6c\x8c\xc3\x0c\x81\x80\x7f\x7f\x39\x19\x9f\x35\xaf\x9f\x4f\x76\xe6\x23\xfe\xe6\xb9\x32\x9f\xba\x77\x4d\xca\x4d\x3e\x8b\x5a\x86\x75\xe5\x65\x74\x3e\x3b\x2b\xce\xc3\xc5\xc7\x19\xd6\x65\xdf\xb0\x2e\x76\x18\xd6\x25\x18\xd6\x85\x37\xac\xcb\xae\x61\x6d\xff\x0c\x97\x7d\xc3\xba\xdc\x69\x58\x97\xef\xdf\x2f\xfb\x86\x75\xd9\x35\xac\xcb\xd9\xfc\x78\xc3\x0a\x96\xa9\x36\xac\xcb\x49\x78\xd3\x32\xac\xcb\x9e\xd9\x5b\x7a\xc3\xda\xa1\x3f\x59\x6e\xcf\xbc\x9b\xc6\xb0\x2e\xf7\x1b\xd6\x7e\x0d\xc3\xca\x03\x9a\xb8\x84\xee\x39\xc3\x9a\xce\x96\x61\xe4\x0c\x6b\x63\x56\xc3\x65\xcb\xb0\x26\xf7\xd9\x94\x22\x4f\xbf\x84\x78\xbe\x38\x27\x5f\x12\x19\xbf\x24\x32\x7e\x71\x57\x3e\x99\xbb\xe2\xf5\xc7\x49\x92\x95\x55\x94\x7d\x78\x10\xfd\x33\x5a\xae\xf0\x5d\xfa\xac\x57\x2c\x9a\x36\x7e\xe1\xf6\xaf\xc2\xed\xcf\xd6\x21\x3f\x9a\xdb\xbe\x27\x9f\x31\xb7\xab\xfc\x4d\x7c\x28\xaf\x87\x7c\x7f\xfb\xfd\xe3\xa4\x3c\x49\xe3\xab\x68\x7e\xbb\xff\x9d\xcd\x6e\xab\xad\x20\x41\x58\x38\x86\x46\x61\x1a\x96\x1b\xe0\x97\xfc\x1e\x81\x5f\x3e\x1b\x47\x7b\x81\x5f\xfa\x4b\x03\xbf\xf2\xb3\x05\x7e\xc9\x2e\xe0\x97\xfc\x7f\x03\xf8\x3d\x1c\xe3\xb0\x40\x49\xf9\xb4\x9e\x0a\x5d\x87\xfb\xd1\xa3\x4d\xe4\xdc\xa5\xcf\xe5\xc5\xf3\x6f\xea\x80\xba\x9d\x48\x2d\xfa\xce\xb8\xfa\x87\x6e\xad\x7c\x68\x23\x01\x49\xf9\xc2\x4e\xe6\x7e\xd3\x7a\x81\x8e\x75\xb8\x9a\xa5\x2d\xcc\x3a\xf7\x62\xb8\x98\x9d\x45\xe7\x00\x3a\x3f\x06\xb3\x5e\xf6\x31\xeb\xcd\x0e\xcc\x7a\x09\x98\xf5\xc6\x63\xd6\xcb\x2e\x66\x6d\xff\x0c\x2f\xfb\x98\xf5\x72\x27\x66\xbd\x7c\xff\xfe\xb2\x8f\x59\x2f\xbb\x98\xf5\x72\xb6\x38\x1e\xb3\x02\xe4\xab\x31\xeb\xe5\x24\x5c\xb6\x30\xeb\x65\x0f\x51\x5e\x7a\xcc\xda\xa1\x3f\xb9\xdc\x9e\x5c\xcb\x06\xb3\x5e\xee\xc7\xac\xfd\x1a\x86\xf5\x03\x34\xf1\x12\xba\xe7\x30\x6b\x39\xbb\x0c\x53\x87\x59\x9b\x38\x40\x78\xd9\xc2\xac\xf9\x0e\x03\xb3\x88\x96\x15\xe8\xfe\x93\xff\x5b\xe6\xd9\x49\xb4\x4c\xba\x36\xe6\x6b\x97\x76\xbf\x88\xaa\xa8\x7e\xf7\x71\xf3\xe6\xc7\xdb\xf4\x9d\x1f\xd4\x4b\x54\x1d\x1d\xf8\x10\x87\x57\x71\x35\x6d\xea\xdc\x8c\x58\xdd\xcd\xf5\x7a\x72\x4f\x3f\xf7\xed\xd9\x6f\xde\x59\xba\x59\x69\x31\x41\xeb\x85\x9b\x7c\x11\xa7\xbe\x88\x6d\xf2\x62\x3e\x6c\x2d\x3f\x15\xd0\x89\x06\xcc\x50\x11\xff\x63\x15\x97\xd5\x9f\xf3\xe2\x7f\xad\xe2\xe2\xd6\x8d\x42\x1a\x57\x77\x8b\xf9\x34\x0b\x93\x6c\x11\xff\x3c\x2d\xd6\xb3\xaa\xc9\xe0\xfa\xaf\x07\x23\xfb\xbf\xbf\x3c\x7b\x3d\x7a\xfc\x96\x40\x5f\x1e\xa7\x49\x59\x3d\xf9\xea\xce\x7e\xb3\x5e\x3f\xf0\x6f\x7c\x75\x77\x57\x7f\xbf\xb6\xa4\xff\x5a\xf7\x6a\x7b\x19\xcf\xf3\x62\x31\x5c\x67\x98\x2c\xa6\x11\x54\xdc\x64\x2d\xcf\x66\xb3\x68\x52\x5d\x17\xf9\xbb\x51\x16\xbf\x1b\x3d\x2b\x8a\xbc\x18\x07\x7f\xcb\x57\xa3\x9b\x55\x59\x8d\xca\x65\x3c\x4f\x2e\x6f\x47\x51\x36\x4a\x16\xc1\x64\x6f\x83\x93\xec\x32\x7f\xfc\xd5\x5d\xb4\x3e\xb2\xd5\xce\x2c\x34\xcd\xce\xc2\xa8\x91\xa0\xa6\x9e\x1f\x7e\xdc\xd4\x33\xb7\xef\x43\x25\x67\x15\xfa\xe6\xe9\xeb\xa7\xa7\xcf\xbe\x7b\xfd\xec\xe5\x4f\xff\xeb\xc7\x67\x2f\xff\xf6\xd3\x0f\x4f\x5f\x3e\xfd\xf6\x7c\x1a\x9d\x15\xe8\xcf\xdf\xbf\x7c\xf6\xfc\x2f\xdf\xfd\xf4\xff\x7f\xf6\xb7\xf3\x76\x5b\xb2\xed\x36\xb8\x54\xe6\xc3\xdb\xb0\xb2\xef\x7f\xda\x36\x38\x1b\xd4\xb4\x21\x0a\xd3\xfd\x6d\x58\xc4\x65\x55\xe4\xb7\x8f\xbf\xba\x4b\xcf\x32\xf4\xea\xc5\x8f\x7f\x71\xb5\xdc\xd3\xaa\x74\xbb\x55\x5b\x23\x92\xe6\xd9\x11\x0d\x99\xc3\xeb\x9f\xac\x19\xb6\xb4\xcd\x3c\x6d\xdb\xdf\x62\x39\x1f\x0f\x4c\xe5\x26\x0f\x72\xb8\x07\xee\xad\xf5\x64\x48\x0b\xb4\x3e\x2d\x97\x79\xb6\xe8\x8b\x63\xf3\x6d\x11\x56\xc8\x6a\x94\xef\xa2\x9b\x6e\x5e\x6c\x74\x9f\x6a\x6b\xab\xad\x7b\x54\xdc\x75\x55\x2d\xf7\x44\x74\x07\xc1\x3d\x74\x23\xfb\x4c\xf1\xea\xba\x69\x6c\x5e\x37\x16\x66\x16\x74\x28\x9d\xdd\xad\x6b\x75\xd2\x06\x2a\xc5\x0e\xa0\x92\x02\x50\x29\x3c\x50\x49\xbb\x40\xa5\xfd\x33\x4c\xfb\x40\x25\xdd\x09\x54\xd2\xf7\xef\xd3\x3e\x50\x49\xbb\x40\x25\x9d\x65\x87\x00\x95\xb6\x30\x15\xde\xe9\x7a\xff\x3e\x5b\x4f\xc2\x74\x12\x46\x2d\xa0\x92\xf6\x60\x44\xea\x81\x4a\x87\xfe\x24\xdd\xe6\x6a\xd4\x00\x95\x74\x3f\x50\xe9\xd7\xb0\x5b\x30\xec\x52\x85\x5f\xb2\xf8\xb8\xbd\x72\x2e\x13\xaf\x3d\xc1\x67\xf1\x8e\x99\xbf\xd9\x2e\xb7\xe3\x79\xb0\x98\x07\x0f\x06\x8b\x0c\xb2\xd2\xed\x92\x5b\xed\x5e\x1a\x98\xa7\x49\x9c\x55\x6e\x22\x4d\xc2\x4f\xb3\xdc\x3c\xe4\x3b\xd6\xfe\x96\xab\x2f\x08\x53\xbb\x75\x6b\x43\xb7\x50\xbe\x74\xc4\xf5\x65\x5e\xdc\x44\xd5\x77\x36\x73\x17\x64\x39\xb9\x1c\x1f\x96\xd0\xe8\xb7\xfd\x04\xc1\xc3\xd9\x2c\x7e\x72\x97\x95\xd3\x78\x5d\x4f\x2e\x57\xe8\x37\x51\x15\xcd\xc1\xe1\x2b\x36\xfb\xd0\xc0\xf8\xc6\xeb\xf5\x3a\x4c\x67\xf9\xb8\xbd\xd8\xd8\xb4\xf6\x2c\x3b\x0f\x3f\xc6\xbf\x00\x64\xdb\x2b\xda\x76\xf8\xac\xf8\xd8\x72\xa3\x49\x0b\x1d\xaf\xee\x53\xad\x07\x1c\xfb\x31\xa4\x86\x7f\xd5\xa8\xd7\x7e\x30\x98\x95\xd3\x22\x6c\x12\x12\xa7\x91\x47\x6a\x29\x20\xb5\xf2\x3e\x88\xd8\xea\x7f\x39\x08\xba\x76\x95\x7e\x14\x76\xbc\xb7\x89\x6d\x30\x59\x7e\x22\x30\xd9\xea\xda\xe3\xaf\xee\xca\x61\x4c\x79\x6f\xf7\x0e\x08\xe5\xd5\xf2\x71\x91\x64\x8b\x24\xbb\x3a\x29\x56\x7b\x96\x5e\x7f\x6f\xc2\x04\x5c\x74\x4c\x84\xe1\xb2\xcc\xb9\x57\xa8\xda\x8c\x68\xa4\xaa\x53\xd2\x21\x63\x50\x7e\xc8\x18\xcc\xf3\xbc\x58\x24\xd9\xbe\x73\x26\x3e\xf3\x11\xd8\x30\xa2\xf0\x8c\x88\xc2\x55\x91\x4c\xd3\x7d\x5c\xdf\x74\xdb\xee\xa2\x69\x4f\x65\xf7\xe2\xff\x3e\x79\xe9\x6a\x3d\x79\xfe\xcd\x74\xf4\xd5\x5d\xda\x1e\x80\x81\x2a\x3f\x84\xf7\x8b\xf9\xef\x88\xe7\xdb\xfe\x48\xc3\xcb\xa8\x8a\xd2\xfc\xea\xf1\xa2\xb1\x8b\xe5\x07\xf0\x22\x29\xe7\xf9\xdb\xb8\xb8\x3d\x99\x5f\x47\xc9\xfd\xb0\xfd\x73\x61\xcc\xf1\xea\xdb\x0a\x67\xf2\x4b\x28\xf1\x1e\x0f\xfb\x4a\x7c\x58\xb0\x93\x5f\x4a\xbb\x5b\x3c\x78\x5f\x08\x6d\x47\x60\x2d\x06\x0e\xec\xcf\xcb\xfc\x04\x63\x6c\xf7\x8b\x97\xb3\x7e\x1d\x00\x77\x8b\x59\x03\x3c\xeb\x14\x55\xd6\x72\x29\x9a\x87\x67\xec\xfc\x49\xfb\xc7\x74\xe3\x61\xc5\x7d\xdf\x79\x72\x77\x99\x17\x63\xe8\x41\xb5\x55\x7a\x58\xcc\x60\xe4\x9f\x16\x45\x74\x3b\xae\xfe\x48\x9e\x54\x27\x64\x8a\x01\x2f\x93\x7f\x8f\xfe\x47\xf5\xef\xd1\x1f\xfe\x30\x29\xce\xa2\x13\x72\xde\xaa\x3b\x3a\x6f\xea\x3a\x0b\x36\x72\x19\xfc\x21\x3b\x07\xe8\xdc\x77\xc0\x7f\xe9\xfa\x6b\x6f\xbe\x53\x7f\x11\x56\x93\x75\x98\xcc\xf6\xc5\x01\xbe\xb0\xc9\xb1\xa9\x5e\x8a\xdb\xe5\x42\x75\x1d\xad\x4f\x9f\xb9\x5b\xbb\x2a\xbf\x83\xe4\xdd\x35\x08\x4d\x23\x4a\x6e\x26\x47\x6e\xc9\xc9\xf5\x22\x4c\xdd\xaf\xb2\xca\x8b\x38\x2c\xed\x0f\x97\x11\x1d\xe6\x7e\xe6\xaf\x66\x29\xf0\xd6\x57\xf1\xe7\xbc\x18\x17\x93\x70\x3e\x4b\x5d\xd0\xc9\xfd\xf6\x23\x17\xd4\xe2\x11\xcc\x66\x2e\x69\x7c\x94\xa1\xa8\xaa\x8a\xe4\x62\x55\xc5\xe5\x93\x71\x32\x6b\xff\x1e\x4f\xc2\x7c\xb6\xda\x14\x3e\xce\xc2\xbb\xf5\x64\x32\x85\xd7\xc2\x7c\x96\x4c\xc2\xa8\x0e\x9c\xb5\x24\x7f\xb3\xee\x12\x8f\xcb\xb0\x0a\xf3\x30\x09\xe7\x93\xf5\x64\x82\xe6\x51\xd5\x8f\xcd\xd4\xfb\xcc\x91\x55\x95\xe3\xd8\xbe\x57\x5d\xc7\xd9\xe0\x6b\xd5\x78\x15\xc6\x9b\x02\xd7\xf5\x47\xe0\x16\xc7\xa3\x3a\x39\x27\xbf\x1c\xbd\xbe\x5d\xc6\xd6\xfc\x78\x73\x14\x7b\x5e\x55\xb3\xb3\xbb\xb2\x8a\xaa\x55\x39\x0d\x82\x3f\xc4\xc8\xfd\x7d\x9a\x2f\xe2\xb0\x4a\xaa\x34\x9e\x06\xaf\xaf\xe3\xd1\x45\x34\x7f\x13\x67\x8b\x91\x17\xf2\x78\x31\x7a\x97\x54\xd7\x60\xb7\x9c\x42\x0f\x17\x71\x15\x25\xe9\x34\x46\x37\x71\x59\x46\x57\xf1\xfa\xdc\x8e\x49\xf1\xa0\x2a\x6e\xef\xca\x77\x09\x74\xb3\x5d\xf8\xe4\x6e\x1e\x95\xf1\x08\x4f\xdd\xbc\xcb\xd0\xd3\x8b\xbc\xa8\x6c\x03\xc3\xc2\x75\xbd\x3c\xc3\xe7\xfe\x8b\x59\x80\x83\x07\x17\x45\x1c\xbd\x79\x60\x3f\xe3\x98\x34\x1f\xfe\x98\x01\x9c\xce\x8b\xe4\x9f\xf1\xc2\xd9\xd7\x2a\x0c\x82\x49\xf7\x75\xd6\xbc\xfe\xe7\xbc\xb8\x48\x16\x8b\x38\xdb\xf9\x2e\x6f\xde\xfd\x2e\xaf\xfe\x9c\xaf\xb2\xdd\xc5\xea\xe6\xd5\xd7\xc9\x4d\x9c\xaf\x5c\x07\xba\xef\x98\xe6\x9d\xd3\x3c\xbb\x4c\x93\x79\xb5\xab\x38\x4a\x9b\x57\x9f\x67\x6f\xa3\x34\xa9\x2b\xae\x5f\xf3\x6a\x60\x5a\xcc\xda\xac\xfc\xe3\x4c\x60\xfc\xc4\x7d\xf7\x2a\x2e\xde\xc6\x45\xab\x82\xa9\xa3\xfb\x2f\x1d\x6d\xbd\x76\x62\x17\x4d\xee\x8a\x59\xb4\x76\xf2\x50\xac\xff\x51\x43\xf0\x56\x8e\x83\x4f\x98\x6f\x85\x6b\xc3\xc0\xa2\xa3\x20\xcc\x26\xee\x8b\x0d\x4e\x3a\xe4\x3b\xf7\xb6\xfd\xfa\x32\xc9\x16\x4f\xd3\xb4\xb3\x2e\x39\xf4\xdd\x9f\xdd\x7b\xc1\x64\x3d\xef\x2e\x6e\xb4\x2b\x4c\x06\x3e\x6c\x07\x9f\x6d\x8d\xab\xee\xc2\xc4\x7d\xdf\xb7\xd7\x31\xec\xf7\x8b\xee\xa2\xc2\x7d\xdf\xb7\xd7\x20\xec\xf7\xeb\x70\xd5\xc9\x57\x9f\x6f\x34\xf3\xc2\xa6\xac\x7f\x59\xa8\xfe\x57\x58\xa8\x4e\x67\x97\x75\xca\xfa\x87\x2d\x54\xdf\x7f\x7e\xcb\xe7\xe6\x2c\x0d\xb9\x49\x97\x49\x5a\xc5\x45\xcb\x47\x02\xf7\x68\x6f\xc4\x64\x9e\x67\x59\x3c\xaf\x36\xfd\xbf\xdf\x7b\x2f\xd7\x5f\xdd\x6d\xc0\xfb\x93\xe0\xff\x64\xcd\x7b\x51\x76\x15\x4f\x47\xc1\x1f\xa2\x69\x10\x0c\xfb\xf8\x41\x00\x2d\x0d\xfe\x7f\x41\xd3\xc4\xba\xcd\xbf\xc9\x7a\xb0\x35\xc8\x67\x69\x68\xcf\x13\x3c\x9f\x45\xa8\x5c\xa6\x49\x35\x0e\xa6\xc1\x04\xdd\x44\xcb\xf1\x22\x9e\xe7\x8b\xf8\xc7\x97\xcf\x4f\xf3\x9b\x65\x9e\xc5\x59\xb5\xdb\x63\xdc\x66\xe5\xe3\xf8\xe7\x68\x6e\x17\xc1\x5d\xb6\xd3\xf4\xbf\xbe\xba\x4b\xd7\xd6\x95\xfc\xaf\x70\x11\x97\x55\x92\x59\x39\x02\x7a\x02\xf4\x1c\xe8\x6d\xde\x9f\x46\xf3\xeb\xf8\xe4\x34\xcf\xaa\x22\x4f\xa7\xa3\x2c\x3f\xb1\x18\xec\x43\xd6\xa5\xad\xea\x74\x00\xa4\x98\xdd\xbd\xb2\x0d\xfa\xee\xd5\xb4\x42\xf5\x9f\xe1\x37\x9b\x16\xd9\x07\x9d\xdf\xa1\x7f\x2d\xba\x89\x37\xdf\x80\xce\x6d\xbf\xe5\x1e\xf6\x28\xfe\x4b\x40\x43\xcd\x97\xf0\x23\xfc\x36\xae\xa2\x69\x85\xe0\x1f\x28\x65\x5e\x24\x4b\xcb\x0d\x5b\x42\xfd\xab\x71\x01\x5b\x07\x91\x85\xc1\x53\x3b\xe7\xbc\x23\x11\x4c\x9e\x14\xc8\x51\x66\x95\xff\x63\x5a\xa1\x1f\x36\x3b\x23\x1f\x3d\x1a\x17\xed\xdf\xb3\xce\xd3\x49\xb8\xb5\x2c\x7c\xd8\x58\x66\x0d\xef\x60\xf0\xb2\x16\x57\xb6\xc7\x37\xeb\xb2\xd3\x7d\xd0\xe3\x94\x1f\x7d\xb4\x59\x14\x69\x87\x2a\x8b\x7b\x97\xfd\xdb\xd6\xd1\x19\xce\x51\x7f\x14\x07\xc9\x30\x48\xfe\x38\x9d\x41\xe1\xe9\xf8\x38\xbb\x57\xfc\xdb\xd5\x37\x1c\xfd\xe6\xd9\x8b\x67\xaf\x9f\x7d\x6e\x4c\x3d\x3a\x00\xb3\xe7\x70\xa8\xfb\xf2\x7b\x56\x55\x92\x96\x8f\x93\xf2\xcf\x79\xba\xb0\x41\x9a\xfe\xa3\x37\xf1\xed\xeb\xdc\xba\xc1\x43\x09\x40\x6f\xde\x0e\x25\x00\x85\xd1\xa7\x33\x36\xe9\x80\xb1\x89\xca\xdb\x6c\x3e\xba\xd7\xe4\x44\xad\x00\x57\x13\xa1\x07\xad\x9c\x84\x65\xbc\x8c\xec\x71\x03\xd3\xbc\xaf\xa1\x93\x63\x35\xf4\x68\x35\x8b\xde\x45\x49\x35\xde\x52\xba\x6f\xde\x3e\xfe\xea\xce\x26\x55\xfa\x96\x4f\xc6\xc9\xc4\x06\xea\x00\x8d\x59\x90\x66\x87\xbf\xd3\x9c\x5e\x94\x6e\xb0\x13\xb5\x90\x34\xfa\xde\x36\x60\xb4\x1a\xc7\xb3\x3f\xfa\x49\x14\x9f\x05\x3f\x9f\xf8\xf1\xb2\x5f\x05\xe7\x93\x70\xb5\x1e\x64\xdd\xae\xd0\xe6\x6e\x06\x7e\x0c\xd3\x76\x99\xa8\xdd\xdc\x1a\x5a\x9b\xda\xcb\x97\x83\x0c\x4d\x3a\xbb\xeb\xcd\x3d\xe8\x73\x66\x4f\x85\xb0\xab\xc9\xad\x1a\x32\xf4\x43\xfd\xf7\x7a\xab\x03\xb5\x5e\x1e\xe8\x40\x76\x16\x6d\xb2\x76\x6c\x67\xd2\xc6\x7a\xe6\x56\xd3\x9c\x58\xd3\x33\xaa\xe2\x9f\xab\xc7\xcb\x34\x4a\xb2\x7f\x1f\xcd\xaf\xa3\xa2\x8c\xab\xd9\xaa\xba\x3c\xd1\x9b\x5e\x57\x87\xa9\xd8\x8f\xea\x5c\x78\x99\x46\x57\xf0\xde\x9f\xe1\xdf\xcf\xa9\xab\x5b\xea\x3c\x75\xf1\xdb\xf2\xdf\x6d\x5e\x70\xd3\x8c\xb4\xd3\x8c\x47\x8f\xc6\xa5\x43\xe1\x7e\xae\x26\x96\x2f\x69\x8f\x2f\xe9\x20\x5f\xd2\x16\x5f\x8a\x78\xbe\x2a\xca\x78\x3a\xc0\x93\x96\x11\x19\x60\x4b\xba\xc5\x96\x64\x40\xc3\xef\x3a\x1c\xba\x56\xdf\x7b\x0f\x80\xfb\x3d\x80\xff\xfb\xd7\x48\x76\xa9\x05\x30\xc8\x45\x16\xa5\x8f\x57\xc9\x81\x2b\x78\xc7\x2d\x74\x7c\xc6\xcb\x3c\xfd\xae\xff\x12\xeb\x3c\xbd\xee\xbf\x88\xa3\x45\x5c\xf4\xba\x0f\x1d\xdc\x9b\x52\xeb\x82\x4f\x8f\x53\xfb\xf1\xbd\x0d\x2c\xea\x07\x2f\xe3\xcb\x22\x2e\xaf\xa7\x23\x86\x7d\x6b\xfe\xd1\x6d\xc3\xc7\x64\x29\xb6\xbb\x73\x64\x96\xe2\xe0\xa7\xbb\x93\x14\xef\x83\x67\xf7\x9c\x2a\x78\x60\x0a\xb6\x2f\x65\x60\xa9\xec\x53\x4d\xed\xe2\xd7\x59\x91\xcf\x6a\x55\xfb\x09\xd7\xe2\x0f\x99\xc4\x43\x8d\x4d\x16\xae\xad\xed\x99\x9b\x1e\x36\x73\xa1\x1b\x7b\xe6\x6e\xd3\xcb\xc7\xd0\x8d\x41\x14\x73\x58\x87\xb6\x00\x4c\xb1\x3b\x61\xb8\x5d\x69\xb1\x95\x30\xbc\x98\x4f\x8b\xb6\xe1\x6b\xd5\xdf\x82\x37\xed\x16\x7a\x9f\xb9\x76\xa5\x87\x9d\xe0\xf0\xe9\xe9\x8b\x72\x7a\xf7\x83\x3d\xbd\xe3\x1b\x27\x37\xe5\xb4\x42\x40\x46\x5d\xaa\x0d\x5b\xc4\xb3\x3f\x8e\xef\x9e\x7f\x33\x8d\xd1\xf3\x6f\x60\xe6\xbc\xcc\xd3\xb8\xff\x59\x9b\x36\xf4\xd1\x7a\x80\x51\x5b\x60\xe8\x57\x64\xd4\x67\xcf\x9c\x2d\xf8\x34\xc0\x9c\x16\x90\xf9\x34\xfc\xd9\x82\x39\xc5\x3d\x9a\x32\x4f\x16\xf3\x93\x65\x91\xbf\x4d\xac\x33\xfa\x31\x78\xe7\xcb\xa5\x38\xbf\xe2\x12\xed\x87\xe1\xbf\x7b\xe3\xbf\x6d\xfc\x63\x45\x63\x47\x4e\xe6\xb0\xf1\x28\x7f\x05\x18\xf8\xe1\xe6\x63\x10\xf8\xfd\xf0\xfd\xab\x4d\xae\x20\xf4\xd8\xa5\x6a\xae\x8a\xb4\xc9\x15\xec\xb7\xe1\x88\x68\xec\xd3\x55\x75\xfd\x6d\x9d\xb0\xf8\x32\x5e\x24\x45\x3c\xaf\x7e\x7c\xf9\x7c\x3a\x98\x2f\xfd\xa7\xa7\xaf\x9e\xfd\xf4\xe3\xf3\x9f\x7e\x7c\xf9\x22\x98\xfc\x21\x70\xcd\x81\xa1\xbf\x88\xe6\x6f\x82\x01\xbe\x3d\xad\x97\x5d\x0f\xe1\x5a\x38\xcf\x17\xf1\xb4\x0c\x01\x39\xc6\xdb\xe8\xf9\x18\x26\x7e\x00\xea\x86\xca\x7b\x5f\x1e\x18\xc1\xb0\xed\x3d\x68\xe4\x6a\x56\x7d\xf2\x91\x3b\x75\x9c\x7b\xe5\x39\xb7\x3d\x10\x2f\xf2\xab\x7c\x55\x6d\x46\x21\x59\x4c\xb3\x3e\x83\xb3\x4f\x25\xa5\xa9\xad\xec\x9e\x9e\xd4\x13\xf4\xd4\x29\xf1\xd7\xf9\x9b\x38\x9b\xb6\x37\x6a\x45\x6d\xd9\xf9\x18\xd4\xbf\x11\xc2\x23\x31\xff\xc0\x87\x3d\xc4\x9f\x36\x6c\xfd\x98\x06\xfa\xc1\x19\x68\x5d\xb3\xc3\x60\x3d\xe0\x6d\x7c\xb9\x41\xec\xcb\x0d\x62\xe9\x7a\x32\x19\xba\x9c\xbb\xc6\x43\xf7\x1f\xbd\xfc\x9b\x47\x8a\xee\x89\xdc\x67\xe5\x34\x0b\x01\x5d\x36\xfe\xd0\xac\x7a\x50\x07\x34\x77\x04\xd9\x9b\x5e\xd7\x88\xa0\x18\xd8\x1a\x1b\xed\x88\x98\xa7\xf7\x45\xcc\xd3\xc3\x22\xe6\x5b\x0d\xff\x68\x68\x50\xe7\xac\xde\xd7\xeb\xb6\x7b\x79\x4c\xcf\xcb\xfb\x7a\x5e\x1e\x13\xe2\x38\xe0\xb0\xda\x23\x51\x7b\xf7\x7c\x3d\xff\x64\xd6\xd6\x52\xb1\x35\xe0\x9e\x72\x15\x57\xdf\xbf\xcb\x6a\x69\x7d\x75\x7b\x73\x91\xa7\xa5\xcf\x22\x9e\xed\x7b\x07\x8a\xa9\x1e\x3d\x1a\x17\xb3\x02\xb9\xd5\xfe\xc1\x44\xbd\xc1\x22\x6a\x3f\x2f\x77\x01\xb3\x96\x06\x5c\xdb\x3b\x3e\xd0\x72\x55\x5e\x23\xe8\xf0\xad\xdd\xc4\x58\xdf\x2c\x95\xad\xdb\x67\xcd\xb6\xd3\x50\xc9\xbf\x57\xff\xa3\x9f\x8a\xfa\xef\xd5\x1f\xfe\x50\xf7\x1f\x34\xc5\xc3\x56\xc6\x69\xd5\x4e\x4a\xae\x6c\x52\x72\xf5\xdf\xe9\x93\xd4\xb3\x65\x9c\x4d\xc2\x87\x78\x48\x9b\x57\x93\x3b\xbf\xc5\xf5\xac\x3a\x9f\xac\x27\x93\xe9\x3d\x3d\x2c\x07\x0f\xb6\x49\xe2\x72\x1c\x87\xf7\x7d\x3a\xce\x26\x93\x69\xab\x4d\x3b\x1a\xb4\xdb\xb9\xb9\x8f\xfb\x59\x58\x4d\x6c\xba\x63\x6d\x70\xd7\xbf\xfb\x53\x7a\xbe\x38\x9b\xf7\x3a\x9b\x07\x3b\x1c\xf5\x81\x3e\xe5\x34\x9d\x9d\x9d\x7b\x15\xdd\x5e\x74\x38\x6c\xc3\xe8\xa3\x47\xe3\x74\x96\xd6\x11\x97\x72\x5c\x8e\xef\xd6\x61\x3c\x09\xef\xd6\xe1\x5d\xb3\x7e\x34\x2d\xec\xdc\x3f\xf8\x34\xf8\x7d\x85\xfe\xd0\x72\x16\xa0\xd0\x6d\x04\xde\x78\xc8\xf5\xb6\x3e\xcb\x8f\xa1\x68\x63\xfa\xab\x43\xed\x16\x18\xdb\x41\x87\x19\x3b\x00\x75\x57\x1d\xa8\xdb\x3a\xba\x27\xfb\x92\x11\xf9\xaf\x91\x11\x19\xcd\x2e\x6b\xa8\xfb\x61\x19\x91\xf7\x9c\x0b\x7f\xe0\x92\x8a\x2f\x65\x60\x49\xa5\x31\x1f\xc5\xbf\x34\xfa\x88\x7e\x11\xf4\x51\x1c\x82\x3e\xd2\x5f\x17\x7d\x14\xbf\x0d\xfa\xf8\xdd\x1d\x0e\xed\x60\xc5\x10\xb0\xf8\x05\xb7\xda\xdb\x79\x98\xc4\xff\x6a\xdb\xec\xfd\xdd\x13\x1f\xbe\xc3\x7e\x7f\x16\xd3\xbe\x53\x83\x5c\xd5\x4f\xbe\xba\x8b\xc6\x11\x00\x0a\x6b\xda\xb7\x0e\xb5\x68\xa7\x07\x4d\x1c\xe4\x38\x28\x03\x6a\x72\xfc\x1a\xe1\xcb\x55\x1a\x97\xd3\x0a\xd9\x7f\xc3\x4d\xb5\x40\x6b\xfd\x3a\x70\x59\xaf\x09\x09\xec\xeb\x5d\x31\xd8\xbb\x62\xb0\x77\xed\x75\xab\x81\x80\xe7\x16\x67\x87\x96\xc5\xd2\x5f\x93\x2b\x43\xeb\x79\xbf\x32\x57\x5a\xcb\x85\xf7\x32\x66\x6b\x25\x70\xd7\x79\xd2\x8d\x81\x2f\xf2\x9f\x8f\xb3\xef\xbf\xbf\x8c\xa7\x4f\xad\x73\xea\xed\xf9\x75\x2a\xf3\xa1\xd9\x42\xcd\x03\xb7\x43\xe2\xd8\x95\xb3\x23\xc2\x44\x7b\xaf\x5e\x38\x10\xb4\xd9\x32\xbe\x40\xb6\x2f\x90\xed\x0b\x64\xfb\x0d\x21\x1b\xcc\xc2\x7f\x35\xbc\x06\x7d\xfa\x4d\xd0\x1a\x54\xfc\x19\x61\xb5\x1f\x3c\x1c\x9f\x56\xa8\xfe\x33\x7c\xe5\xe2\x8f\xcf\x17\x71\x56\xd9\x63\xd7\xa7\x15\xda\xa2\x85\xdf\xe5\x8b\xee\x2b\x5d\xc2\xe7\x8f\xee\xbc\x08\x7c\x0a\x6c\xf7\x6b\x72\xf1\xf3\x43\x83\x7b\x18\x79\x34\x16\x3c\xf8\x6a\x91\x2f\xb0\x70\x48\xb5\x5d\xc7\x51\x5a\x5d\xd7\x5c\xfc\xb5\x50\xe1\xb0\x96\xef\xc5\x9a\x7b\xec\xea\x6e\xe5\x3b\x02\x57\xde\x77\x0b\xca\xef\x55\x30\xae\xa2\x2a\x7e\x17\xdd\x0e\x6c\x93\x68\x22\xbc\xe5\x93\x66\xc0\x87\x13\xe7\x7c\x19\x27\x9e\x47\xe5\x89\xdd\x44\x31\x2c\x06\xfd\xf1\x6e\x51\x77\x6c\x31\x38\x44\x18\x46\xa3\xff\x9a\xde\xd3\xc8\xba\x71\xc3\x2d\xfa\x88\xba\x3f\xeb\xfd\x1d\x1f\x38\x33\x7f\x19\xdf\xec\xbe\xbb\x6d\x0e\x74\xcf\xea\x62\x3e\xab\x7d\x0a\xbf\xd1\xf8\x7a\x5e\xfc\x5a\x7b\x77\x3e\x0f\x24\x5d\x77\xda\x9f\x58\xff\xf1\x68\x7a\x37\xb8\x89\x66\x5b\xa9\xe8\x07\xa1\x97\x9d\x10\xb0\x6e\xfb\xe6\xf4\xf7\x2d\x00\x13\x7d\x40\x5a\xfb\xfe\x8b\x8c\x0e\x9c\x58\xae\x90\x23\x6e\x30\xfe\x97\x0d\x81\x24\xbf\x48\x08\xa4\x3c\x24\x04\x92\xff\xba\x21\x90\xf2\xb7\x09\x81\xe4\xbf\xb7\x10\x88\x3f\xb7\x7c\xd7\x71\x7a\x36\x09\xf9\x17\x39\x48\xcf\x95\xfc\xfb\x38\x47\xef\xc3\x2c\x24\x38\x72\xd3\x32\x74\xd1\xfd\xfd\x3b\x75\xc1\xef\xb3\x5a\xca\xc2\xb8\xde\x87\xe1\xf1\x26\xe0\xa8\xb3\x0a\x7e\x19\x23\x57\x6f\x1a\xdf\x91\x85\xd9\xf4\x78\xd8\xba\xdf\x9f\xd8\x7f\x1f\x0f\x1a\x33\x9b\xdc\x97\xae\x99\x7c\x44\xfc\xc9\x76\xe1\xc9\x57\x77\xc9\x38\xf9\x85\x03\x50\xc7\x85\x4b\x5e\xe6\x7e\x79\x0c\xfe\xfd\x34\xc1\x93\xf0\x45\x3e\x8f\xd2\x69\x85\xec\xbf\x07\x06\xa4\x1a\xe9\x79\x38\x9b\x15\x6e\xb1\x6e\xd2\xe7\xe7\x8e\x2b\x6c\x0e\x08\xbb\x74\xfc\x99\xaa\x71\x99\x1e\xd4\x18\x67\xef\xa8\xfc\x32\x61\xb0\x5a\xa6\x87\xd0\xcf\xef\x69\x30\x7f\x05\xe8\xd8\x8b\x7b\xed\xe3\x5c\xbf\x75\xaf\xe2\xf4\xb2\x75\x14\xf1\x5d\x27\x7f\xbc\x8c\xe7\x45\x5c\x4d\xd3\xf5\x2c\xbb\x5f\xe1\x3e\x2e\xe3\xf4\xb2\x95\x04\x5e\x3b\x17\xfd\xfd\x36\xe9\xb1\x47\x77\x0d\x6e\x48\xee\x5c\x60\xd4\xe1\x69\xa7\xd7\x9f\xec\x1e\xac\x21\xc9\x8c\xd6\xee\x66\xa4\xa1\xed\xa8\x07\x0d\x64\xdd\xaf\xb2\x19\x84\x0f\xcf\x84\xb4\x03\x79\xe4\x7e\xa3\xee\x37\xbd\x1c\xc8\x5f\xf0\x9a\xa6\xfa\x8b\xd9\x1f\x3f\xd5\x4c\xe8\x1f\x9c\xd0\x54\x19\x4d\xd6\xdb\xc9\x9d\xf3\xce\x89\x97\x8b\x06\x42\xdd\xd8\x03\x2f\x97\x1f\x97\xde\x79\xd1\x4f\xef\x5c\xee\x48\xef\xbc\x38\x8b\xcf\x67\x4b\x9f\xde\x79\xd1\x4d\xef\x6c\xff\x0c\x2f\xfa\xe9\x9d\x17\x3b\xd3\x3b\x2f\xde\xbf\xbf\xe8\xa7\x77\x5e\x74\xd3\x3b\x2f\x66\x37\xc7\xa7\x77\xce\xc3\x45\x93\xde\x79\x31\x09\x2f\x5b\xe9\x9d\x17\xbd\xe4\xcb\x0b\x9f\xde\xd9\xa1\x3f\xb9\xd8\x06\x86\x97\x4d\x7a\xe7\xc5\xfe\xf4\xce\x7e\x0d\xc3\xd8\x16\x9a\x78\x01\xdd\xab\x0f\xbc\xbc\xa8\x0f\xbc\x6c\x92\x3b\xc3\x8b\x23\xee\x9e\xa9\xf2\x65\x9e\xe6\x57\xbf\x9f\x04\x90\xc3\x50\xe9\x9b\x24\x5b\xf4\x4f\x22\x5b\x15\xc9\xc7\x9d\x41\x76\xc8\xe6\xe9\x7a\x05\xa5\xe6\xeb\xe3\xaf\xee\x92\x06\xae\xfa\x66\xed\x8c\x49\xe5\x9f\xfa\x46\x92\x65\xef\xb6\x00\x77\x2d\x40\x11\x97\x79\xfa\xd6\x9e\x41\xe7\x08\x69\x1e\x2d\x4e\x5a\xd2\xd7\x15\x01\x37\x0b\x1f\xc7\xd9\xdb\xa4\xc8\x33\x70\xcc\x86\xaf\xa2\x6c\x27\x4e\xfc\xbe\x9c\xda\xfe\xf9\x77\xce\xb7\x7d\xba\x91\xf8\x03\x6e\xd2\x8a\xfc\x8d\x59\x37\xb6\xc2\x1f\x8a\xf8\x32\xf9\x39\xd8\x1c\x4f\x85\xda\xf4\xcd\xdb\xcb\x7c\xf1\xed\x8e\x0f\x7a\x8f\x36\xdf\xbc\x6c\x86\xaf\x99\x24\x9d\x25\x9c\x34\xec\x9d\xd3\xb5\xab\x15\xc3\x42\x33\xaf\x8f\x38\x3d\xb9\x89\xb2\xe8\x0a\xe6\xfe\x55\x9a\xdc\xdc\xf4\x8f\x89\xf8\xda\x53\x37\x1f\x3c\x3e\x59\x16\xc9\xdb\xa8\x8a\x1f\x3b\xb1\xda\x2a\xe9\xf7\x74\xa7\x6b\xd3\xf8\xf2\xf1\xc9\xe2\x36\x8b\x6e\x92\xf9\x49\x9c\xc6\x30\xda\x27\x11\xd4\xb3\xe1\xc5\x79\xf7\xaa\x83\x8f\x97\x47\x17\x6d\x73\x52\xd8\x9c\x38\x8b\x9c\x74\x8e\xdb\x37\x8b\x55\x47\xb7\xfd\xf7\xd2\xee\xc8\x36\xeb\xb1\x73\xba\x7f\xc9\x36\xd7\x67\xf1\xbb\x56\xff\xc7\xeb\x6f\x5f\xfc\x29\x2a\x4a\x54\xc5\x37\xcb\x34\xaa\xe2\xf1\x5d\xb2\x98\x06\x7f\xf9\xf1\x7f\x3e\x35\x8c\x91\x20\xbc\x48\xf3\xf9\x9b\xe9\xbf\xdd\x05\xa5\x0b\xd0\x06\xd3\xb3\xe0\xeb\x2a\xba\xf0\x0d\x0d\x1e\x45\x55\x65\xf5\xe7\xd7\x79\x36\x4f\x93\xf9\x1b\xa0\x35\xb2\x19\x7c\x7d\x5d\xc4\x97\xf6\x82\x96\x9f\x9d\xcd\x80\xbf\x2f\xed\xbd\x2c\x81\x3d\xf0\xc0\x6a\x93\x60\x7a\x76\x26\xc3\x33\xa6\x42\x7a\x1e\x9e\x9d\x31\x1a\xaa\xf3\xf3\xd0\x1e\x62\x79\x76\xb6\x91\xf4\x20\x4e\xcb\x38\x38\x0f\xcf\xee\x7a\xdf\x12\x12\x06\x69\x74\x11\xa7\xf0\x90\xc8\x30\x80\x1a\xc2\xba\x9c\x33\xe2\xca\x25\xf6\x3f\x3a\xe4\xb6\x64\xf8\x9b\x9d\x9f\x87\xc1\x32\x2a\xa2\x9b\x18\x6c\x7e\x30\x3d\x3b\x5f\x87\xfd\xc2\xbb\x0d\x13\x47\x35\xac\xfb\xad\x3c\xba\x53\x91\xef\x90\x0c\xeb\xba\xcf\x28\x0f\x83\x2a\x2a\xae\x62\xf8\xf6\xa7\x8b\x34\xca\xde\x04\x9e\x5c\xc4\xc0\xde\x2c\xcf\x97\x71\x16\x17\xa3\x2c\x2f\xe2\xcb\xb8\x28\xac\x1e\xfa\x48\x26\xec\x68\xcc\x51\x85\x9e\x9f\x1f\x5a\xd3\xc5\xaa\xaa\x2c\xec\xb2\x83\xb9\x91\x36\xa8\x97\xb4\xea\xa5\x3c\xe4\xed\xb7\x79\x78\xc6\x74\x48\xce\xc3\xb3\xc0\xcb\xe2\x19\xc3\xe1\x19\x93\x21\xf6\x43\xc0\xfc\x10\xd4\xff\x7c\x54\xdb\x1d\xf1\x3a\x2a\x9f\xbd\x8d\xd2\x60\x7a\x19\xa5\x65\x1c\x06\xab\xe5\xdb\xc8\xbe\x10\xe4\x36\x64\x61\x65\xde\x2e\xbc\x24\x97\xc1\xf9\xfa\xdf\xc2\x9b\xb8\x8a\xa6\x77\xce\x32\xd9\x84\x9f\xfb\x35\x02\xba\xbe\x28\x83\xf5\xda\x01\xdf\x7a\xff\xe6\x4f\x65\x5c\x35\x5a\xe7\x75\x3d\x7f\xab\xd0\x3f\xad\x67\xf4\xf7\x59\x7a\xdb\xbc\x36\x9e\xb4\xd5\xd2\x0e\x18\xd5\x6e\x44\x7d\x61\xff\xe7\xa2\x99\x7e\x54\x3f\x7f\x77\xfd\x6d\x16\x0f\x6b\xa6\x46\xf3\x6c\xa9\x17\xa2\x43\x52\x8f\xfc\xee\x21\x3b\x66\x78\xba\x9c\xf9\x80\x11\xda\xb2\x18\x77\x55\x74\xe5\x6a\x0c\xd6\xc7\x8e\xd3\x72\x79\x62\xaf\x32\xf9\x5c\xc6\x69\xf1\xb7\xff\x8c\xfe\x79\x2b\x8a\x1d\x16\xc4\xdf\xe5\x12\x7c\x9d\xe6\x57\x49\xb6\x3d\x5c\x3a\x0c\xa0\x4b\x6f\x93\xf8\x5d\x10\x9e\xc1\xe4\x3d\x0f\xcf\x60\xe6\x6f\x34\xe7\x80\xca\xa4\x61\xf0\x7f\xfe\x4f\x36\x1a\xc1\x33\x1d\x06\xb6\xe6\x93\x32\xcd\x2b\x5f\x46\xf0\xb5\x3d\x5a\x0f\xf4\xc3\xb5\x3d\x83\x31\x38\xb8\x48\x57\x28\xc1\x61\x70\x4d\x82\x5a\x6d\x6c\x1e\x8e\x9c\x33\xe5\x5e\x72\x7a\x2a\x3c\x0b\xdc\xe1\x95\xc1\xf9\x79\xe7\xdd\xc0\x29\x99\xb0\xd5\xdc\x41\xdd\x12\x1e\xd3\x9f\xb9\x3b\x08\xf7\xd8\x0e\xe9\x30\xb0\x43\x71\xe2\x4e\x1f\xaa\x8b\xdd\x1a\x9e\x33\xa7\x7a\x1b\x7d\x4a\x2c\xa9\xab\x5b\x3b\x3d\x0e\x03\x8e\x59\xd0\x68\x59\x46\x43\xda\xa8\xde\x86\x7a\x20\x03\x0e\x79\xbc\x5b\x0b\xc7\xff\x38\x5e\xf5\x76\x67\xd3\x6f\xa7\x7d\xfd\x14\xd8\x9e\xd4\x6d\x61\x28\x7f\x91\xf8\x84\x9d\xe4\xd9\xfe\x49\x9e\xbd\x78\xfc\xe6\xfb\xd3\x7f\xfc\x30\x3c\xc9\x2f\xd3\xa8\xbc\xb6\x9e\xb5\xef\x50\x10\x36\x34\x2f\x27\x61\x50\xdd\x2e\xe3\x2e\x64\xf4\x88\x72\x5b\x83\x93\x30\x58\x24\x6f\x3d\xd8\xc1\x2d\x05\xe1\x00\x81\xea\xcf\xca\xc0\x19\x76\xb9\x2d\x6d\x7e\x22\x7b\x15\xd0\xf9\x0c\x7e\x3a\xd4\x46\x64\x4b\xc6\x89\xd8\xfe\x21\x42\xc2\xc3\xb3\xe0\x1f\xab\x78\x15\x07\xe7\x3d\x60\xb1\x8d\xf4\x86\xe7\xa2\x53\x1e\x7e\x2a\x5a\xee\x9c\xf8\x7b\xad\x9a\xc9\xe8\x78\xd6\xcc\xc1\x03\x67\xf8\xa6\x23\xbc\xc6\x3e\xe1\x59\xb0\xc8\x6f\x9a\xa6\x1e\x06\x43\x9b\x36\xd6\xed\xa4\x61\xbf\xb0\x3d\xd3\x74\x07\x9a\xb6\xea\xaf\x61\x67\x8d\x8f\x69\xe8\x85\xe6\x35\x08\x45\x4b\x4f\xf4\x5f\x84\xca\x1d\x3c\xea\xf3\xfd\x60\xe5\xd7\xee\x11\x08\xc3\xd2\xfe\xc1\xc3\x60\x11\x55\xd1\x49\x96\x57\xc9\xe5\x26\x63\xa6\x7e\xe6\x36\x19\x05\x51\x1a\x17\xb6\x78\x22\x42\xdc\xb4\x4e\xfb\xc6\xf1\xf3\x30\x18\xb5\x0b\x38\x09\xc2\xb6\xe7\x70\x3e\x64\x3d\xfa\xcd\x29\xab\x22\xcf\xae\x06\x0d\x4d\xef\xe5\xa6\x7e\xd3\xd4\xbf\xa9\x87\x86\xc1\xc3\xe1\x3a\xd8\x90\xc4\x93\x0d\x13\xad\x61\xf1\xc3\x59\x5a\x0b\xd3\xe5\x49\x33\x26\x78\xd3\x6d\xd7\xcb\x46\x3c\x92\x2a\xbe\xb1\xf6\xc8\xff\xf6\x17\x72\xb6\xcc\xc0\xf1\x02\xd8\xea\xc1\xd6\xcc\xee\x4b\xbc\x6b\xa0\x6a\x1c\xb7\x30\x70\xe7\xac\x05\x3b\x25\xe6\x3e\x47\x6e\xa8\x5c\x18\xee\x72\x35\x9f\xc7\x65\xf9\x21\x05\x0f\xf4\x0e\xfe\xf7\xb7\x7c\x35\x8a\x8a\x78\x94\xe5\xef\x46\x69\x7e\x75\x15\x2f\x46\xf9\xaa\x42\x87\xce\xb2\x1d\xa5\xbe\xbe\x8e\x8b\x78\xf4\x2e\x2a\x9b\xeb\xf4\x6c\xe1\x49\x76\xb5\xaf\xf4\xc3\xfc\xb6\xfd\x9c\x6f\x8e\x06\xd9\xcd\xa3\xcf\x93\xeb\x49\xf6\xe9\x99\x1e\x8e\x96\x69\x1c\x95\xf1\x68\x7e\x1d\xcf\xdf\x8c\x6e\xf3\x55\x31\x7a\x65\x17\x65\x9f\x7f\xf3\xd8\xae\xa8\xde\x03\x7a\xb6\xe7\xc3\x51\x1e\xeb\xc7\x0d\xe5\x97\x49\xf4\x65\x12\x7d\x99\x44\x87\x94\xba\x65\x68\xfb\x9f\xf1\x50\x1c\x54\xdc\xf6\x97\x34\x64\xf7\xb8\x48\x64\xbb\x10\x07\x2d\x3c\x86\x1e\xc4\x15\xbb\xdf\xe9\x1b\x57\xd1\xf8\x73\x87\x62\xdc\x7e\x1d\x59\xf4\xb6\xc6\x55\x51\x91\x44\x27\x2e\x80\x1b\x06\x7f\x2a\xe2\x68\x31\x2f\x56\x37\x17\xf7\xc0\x9f\x06\x36\xdf\x26\x71\xba\xd8\xe1\x17\x5f\x34\xa5\x95\xc7\xf8\xc6\x43\x35\x6d\xa0\x96\xdc\xf4\xdc\x2e\xa5\xd9\x9a\xde\x25\xd5\xf5\x49\xb7\xba\xf3\x3d\x6d\xdf\xed\x9f\x1c\x28\x98\x7b\x00\xe4\x3e\x99\xdb\x35\x01\xfa\x43\x6f\x5d\x2c\x7b\x2f\xef\x01\x28\xf4\x9e\x41\x38\x3e\xd8\xf2\x61\xbc\x3a\x8a\x53\x3b\xba\xec\xfc\x8a\xf2\x17\x13\xff\x83\x99\xd6\x34\xe4\xc3\xb9\xd6\xd4\xb3\xcc\x8b\x2a\x4a\x4f\xea\x75\x83\xad\xaa\xbc\x27\x7d\xd2\xaa\xf3\x1e\xa1\x3c\x7c\x50\x0e\x18\x98\xe3\xd4\x74\x2f\x7a\x76\xd4\xc3\x7b\x78\x6e\x75\xd2\x87\xf1\xfb\x10\x66\x1c\x2c\x9f\x83\xfd\xd8\xe9\xb7\x7d\xa8\x48\x1e\xc0\x90\x2a\xcf\xd3\x8b\xe8\xe8\xa9\x5b\xcf\xac\x24\x5b\xae\x2a\x3f\xb7\x48\x58\x97\x76\x52\xe5\x57\x57\x5e\xaf\xd8\x15\x1c\x6b\xc2\x2f\xf2\x9f\x9b\x49\x37\x30\x86\xfb\xf8\xfb\x51\xe2\x35\x10\x8e\x3d\xd4\x08\x3a\x6b\xc0\xea\x68\x90\xda\x1d\x8b\x38\x08\x45\xd5\x01\xd9\x9b\x65\x75\xdb\x09\xc8\x1e\x13\xfb\xee\x15\xf6\x69\x63\xe0\xfd\xf1\xbd\xa6\x6d\x0e\xfd\x35\x4e\xe7\xf9\x4d\x3c\xaa\xf2\xd1\xd3\xd3\x17\xe5\xce\xc9\x78\xd4\x34\xb8\xa7\x0f\x17\xf9\xe2\xf6\x63\x7a\xb0\xdc\x6b\xdd\xa0\x1b\x1e\xcc\x56\xa3\x38\x8b\x2e\x52\x8b\x66\x6d\xbe\xe4\xc8\xa5\xc0\x8e\xe6\xe9\xaa\xac\xe2\x02\x8d\xfe\x1a\x8f\x5c\xd8\x26\xbd\x1d\xc5\xd9\x3c\x5f\x15\xd1\x55\x3c\xaa\xae\xe3\xd1\xaa\x8c\x47\xf9\xa5\x2b\x2d\xc9\x46\xcb\x22\x5f\xac\x5c\xea\x50\x2b\xc9\xa8\x1c\x5d\xe6\x85\x7d\xfd\x22\x2e\xab\x51\x19\xcf\x57\x45\x52\xdd\x8e\x96\x05\x68\xe5\x79\x5c\xa2\xa1\x2e\xfc\xd2\xfc\xfd\x08\x2b\x54\xb3\x38\x4d\x36\xd6\x75\x91\xcf\xcb\x93\x34\x71\x6b\xd6\xf7\x46\xc1\x22\x1f\x64\x83\x39\x47\x36\x13\x4e\x40\xc3\xfc\xc1\xa7\xdf\x7c\x7f\xfa\xca\x5e\x24\x51\x5b\xac\xc0\x26\xf3\xfa\xb8\x7d\x75\x93\xba\x08\x25\xb9\x77\x79\x7c\x78\x59\xbd\x6e\xe2\xcb\x38\x5a\xd8\xb1\x59\xe4\x73\x9b\x01\x55\x27\x06\xee\x32\x37\xf7\x3d\xea\xf1\x25\x8d\xa3\x22\xfb\xf4\x8c\x79\xf1\xec\xe9\xcb\xef\x7a\xec\x71\x2b\x0d\x8f\x6b\xf9\x3a\xc9\xe2\xea\x5d\x5e\xbc\x49\xb2\xab\xc7\x1b\xc1\x3c\x89\xe6\x69\xf9\x69\x58\xf7\xe7\x3c\x4d\xf3\x77\x96\x79\x57\xab\x64\x11\x7f\x08\xd3\x0e\x94\xe8\x0f\xb0\x03\x07\xb8\xe0\xac\x67\x5e\x3f\x56\xbd\x1f\xb8\xde\xd6\x2c\xae\xd5\x95\xd5\x6b\x6b\xe1\x99\x5b\x5b\xb3\xa1\x55\xee\x56\x04\x7a\x81\xd0\xe3\x1c\xed\x03\x70\xc0\xc1\xcb\x8b\x1b\x13\x7d\xc0\x88\x1d\xe3\x72\x0f\x5b\xeb\x21\x77\x67\xf7\x52\xe0\xb5\x5b\x7c\x72\x4c\x6e\xc5\x53\x16\x56\xb8\x2b\xb7\x4e\x18\xba\x43\x81\x83\x7a\xa6\x9f\xd4\x19\x4e\x76\x21\x71\x9e\x67\xf3\x08\xde\x9c\x47\xcb\xa4\xb2\xe9\xa3\xcd\x62\x9c\x0f\x96\x77\x39\x19\xa4\xf9\xbb\xb8\x98\x47\x25\xbc\x97\xc6\xcd\x22\xd8\xb7\x6e\x95\x07\x5e\x3f\xa9\x8a\x68\xfe\xe6\x24\xf2\x57\x21\xc7\xd1\xfc\xda\xb6\xc2\x9a\x9b\x63\xd7\x2d\x37\xeb\x85\x9d\x65\xcb\x62\xef\xb2\x65\xb6\x2b\x25\xa1\xc9\x1b\x0c\x5b\xc9\x09\xe1\x86\x71\x2e\x8d\xde\x36\xd4\x2e\x24\xb6\xd7\x37\x77\xec\x5d\xee\xb6\x77\x68\x69\x73\x3b\xd3\x72\xcf\x71\xfe\xa1\xbd\xc5\xfe\x41\x7f\x87\xa9\xbb\x2a\x1a\xde\x4a\x67\x77\xcd\x8e\x82\x76\x02\x7f\xb1\x23\x81\x3f\x3d\x8b\xcf\x67\x85\x4f\xe0\x4f\xbb\x09\xfc\xed\x9f\x61\xda\x4f\xe0\x4f\x77\x26\xf0\xa7\xef\xdf\xa7\xfd\x04\xfe\xb4\x9b\xc0\x9f\xce\xb2\x43\x12\xf8\xdb\x5b\x32\xfc\x45\x96\x93\xf7\xef\xb3\xf5\x24\x4c\x27\x61\xd4\x4a\xe0\x4f\x7b\xe9\xf5\xa9\x4f\xe0\xef\xd0\x9f\xa4\xdb\x09\xfc\x51\x93\xc0\x9f\xee\x4f\xe0\xef\xd7\xb0\x3b\xdf\xd9\x26\xee\xfb\x04\xfe\x4f\x91\xbe\xec\xef\xc6\xde\xbb\x36\x7d\xf1\xf4\xdd\xfc\xdb\xff\xf8\xcb\x72\x78\x6d\xda\x09\x9b\x9d\xf8\x4d\x06\xe3\xee\xe4\x21\x67\x13\x4c\x4b\x2d\xb7\x22\x40\x37\x51\x57\x63\x13\x6f\x2e\xd8\x79\x18\x9c\xf8\x87\x7e\xc1\xeb\x98\x45\x4a\xab\xd9\x06\x96\xbc\x83\x5e\xda\x9d\x7b\x7b\xe3\xb8\xf4\x3f\x29\xdf\x24\x4b\x0b\x2c\xac\xe5\x70\x19\x72\xb8\x93\x21\x47\x43\x1c\x9e\x05\x97\xf9\xdc\xa7\xaa\xb4\x13\xe3\xb6\xb2\x45\xf6\x44\x12\xc2\xe0\xeb\x9b\x55\x95\x2c\xd3\x4d\x50\xe1\x22\xbe\xcc\x8b\xf8\xa4\xd5\x86\xb0\x2a\x56\xf1\x7d\x56\xe4\x5e\xd3\x31\x84\x83\x36\xdc\x0f\xfe\x5b\xd0\xa4\xe0\xb8\x01\xe8\x2f\xbd\x6e\x42\x79\xd4\x59\xb7\x5a\x25\xa1\x68\xb9\x44\xd0\xdc\x9f\xaa\xfc\xa7\xc6\xe8\x6d\x3e\xee\x5a\x1e\x6f\x43\x3f\x88\x35\xd1\x65\x15\x17\x9f\x9a\x33\x3d\x73\xd8\x4e\x1e\xba\xc9\x17\x51\x7a\x92\x46\xb7\x36\xaf\x7d\xe3\x55\x76\x90\x43\xc7\xff\xdd\x38\xef\x22\x24\xe1\x4e\xf1\x3e\xc9\xa2\xb7\x1b\x8f\xbe\xe1\xd4\x01\x8e\x7d\xb0\x9d\x88\xb1\x59\x64\xbf\x88\xb2\x6c\x2b\x3b\xa3\x19\xfb\x76\xc2\xaf\xcb\x88\x6d\x32\x92\x71\xd0\x4d\x02\x3e\xae\xd9\xb2\x1b\x8d\xde\x27\x26\xee\xe3\x9f\x6e\xe2\x6c\xd5\x2a\xa1\x35\xc3\xde\xc4\xb7\xcb\x22\x2e\xcb\xcd\x24\xab\x29\xa7\x76\xee\xb5\x26\x5b\xeb\xab\x9b\x7c\x55\xc6\xab\xe5\xe6\xa3\x55\x36\x3c\x37\x87\x03\x44\x3a\x64\x1b\x5d\xc4\xad\x9b\x9f\xdf\xc4\x27\x2e\xda\xbe\xc9\xc6\x22\x03\x60\x6c\x5f\xd8\xa3\x07\x17\x61\x00\xea\x00\xfe\x11\x2c\xeb\xa8\x43\xfb\xe9\x26\x7f\x42\xf8\x55\x29\xec\xe2\x70\xcf\xb3\xff\x4c\xe2\x77\x30\xa7\x2c\xa8\x4b\x32\x8b\x6c\xdc\xef\x1e\xb3\xf5\x46\xad\xe6\xd9\xb3\xac\xb2\x3b\x7d\xf2\xec\xd9\xcf\x09\xa0\xad\xfa\xb3\xd7\x79\x1a\x17\xf6\x90\xb7\x81\xa5\x30\x7c\x1e\xf6\x2a\x75\xd3\xb1\x97\x81\xb2\xe7\x75\x0b\x36\xfb\xef\xb7\xcc\x44\x95\x2f\x41\xaa\xf3\xaa\xca\x6f\x2c\x12\xbc\x84\xc6\x15\xc9\xd5\xb5\x9d\x63\x27\x04\x87\xad\xff\x9f\x3b\x6b\xb1\x67\x95\x66\x7b\x9c\x6b\xa9\xbe\x67\x9c\x07\x31\x74\x7f\x78\x5b\xeb\x33\xe2\xf0\xe1\x85\x9f\x6e\xdb\x45\x54\xdc\x06\xf7\xa4\xbb\xec\xe8\x45\xa7\x8c\x0f\xe9\xce\xae\x78\xe9\x9e\x48\x5f\x6d\xc2\xf7\x2b\xba\xdd\x1d\xda\x33\x20\x7b\x5a\xbf\xb3\x39\x97\x79\x5e\x6d\xe9\x43\x6f\x8c\x92\xec\x32\xdf\xa5\x14\x87\x98\x69\x3f\x3a\xf1\x5f\x1d\xd8\x92\x6d\x86\xee\x5a\x5e\xdc\x9f\xfe\x9e\xb5\xfd\x25\xf8\x3f\xf8\xff\xe0\xef\x80\x4d\x5c\x9c\x38\xa7\x29\xc9\xde\xe6\x4d\xa2\x95\x75\xbf\xbc\x97\x56\x5a\x5f\xa9\x3d\xef\x9d\xff\x74\x9c\x3f\xd4\x73\x85\xd2\xb8\x1a\xcd\x77\x5f\x81\xb4\xc8\x6f\xec\x15\x48\xde\x57\x72\xc1\xaf\x30\xea\xfd\x4e\x7b\xbf\xcb\x83\x0e\x7f\xe9\xbb\x2d\x83\xe7\xbf\x64\xee\xb8\x97\x62\x66\x9b\x12\xa6\xfe\xf4\x97\x68\x96\xec\x3c\xfd\x05\x8a\x6b\xef\x01\x8b\x76\x9e\xfe\x12\xed\x38\xfd\x25\xea\x9f\xfe\x12\x75\x7c\x84\x68\xdb\x47\x48\x37\xa7\xbf\xb8\xd3\x23\x60\x64\x6d\x5b\xd1\x22\xbf\xb1\xbf\xec\xe6\xbd\xc9\xba\x63\xf1\xc0\xbd\x8a\x91\x03\x48\x68\x91\x94\xcb\xa8\x9a\x5f\x3f\x7b\x1b\x67\xd5\x38\x8b\xdf\x8d\xbe\x05\xcb\xe7\x7e\x7a\x74\x3a\x99\xac\xad\xed\x83\x0f\xeb\xb4\xf3\xa6\x80\xab\xb8\x7a\x5a\x55\x45\x72\xb1\xaa\xe2\x71\x60\x37\x1a\x4d\x1e\x54\xa8\xac\xa2\xa2\x2a\xff\x9a\x54\xd7\xe3\xe0\xbf\xd9\x5b\x90\x62\xb4\x04\x8f\x2a\xab\xfc\xd5\xd6\x63\xdf\x68\x68\xaa\x2b\xbe\x9a\x4c\xd6\xde\xcc\x76\xda\x78\x91\xae\x8a\xf1\x64\xbd\x0e\x93\x59\x3e\x2e\x5b\xbb\xcb\xdd\xf0\x9c\x65\xe7\xe1\xc7\xec\x2a\x9f\x84\xbd\x52\xbb\xf8\x20\x3c\x2b\xce\xef\x3d\x6c\x69\xcf\xf7\x93\xb0\xf5\x70\xab\x2e\x07\x2a\xc2\xb3\xe8\xc8\x3a\xdc\x77\xfb\xcb\xae\x21\x4b\x78\x96\x1e\x59\x7a\xfd\x65\xaf\xfc\xb2\x1d\x58\x98\x87\xfb\x62\x19\xab\x70\x7e\xff\x16\x47\x6b\xd1\x00\xb9\x7d\x2e\xfb\x25\x9e\x7f\xff\xd7\x65\x92\x3f\xdf\x91\x4a\x7d\xcf\xbe\x96\xb3\x2d\x0c\x75\x0e\xd8\x3b\xca\xae\xe2\xa0\x0f\x49\xda\xaf\x34\x00\xf5\x90\x97\x3c\x66\xed\xbd\xc9\x37\x08\xc7\x02\x84\x34\x5e\xfc\xe9\xd6\x9b\xab\x02\x5a\x1f\x02\x63\xa3\x6c\x11\x2f\x82\x5e\x4c\x75\x83\x1e\x4e\x9a\xe1\x38\xa9\x8a\xe4\xea\x2a\x2e\x6c\xce\x6c\x2b\xe4\x1a\xde\xfb\xa1\xfd\xcf\xae\xaf\x6a\x5b\x0e\xfd\x01\x5c\x17\x84\x67\xd4\x9c\xb7\xfc\xf2\x7b\xb6\x10\xd4\x3d\xf0\x16\xca\xdb\xb1\xc6\xb6\x79\x8b\x55\xa7\x24\x1f\x61\xa0\xba\x62\x58\x9b\xa9\x30\x9b\x11\x16\x16\x33\x46\xc3\x68\xc6\x74\x98\xce\x38\x0e\xcb\xd9\xdd\xdb\xb8\xa8\x92\x79\x94\x4e\xef\xce\xd2\xf3\x69\x27\x68\x15\x83\x84\xf5\xcf\xaa\xfb\x23\x69\x05\x84\x36\x27\xd3\x91\xf6\x31\x75\xe4\x7c\x7a\x42\x7c\x7c\x6c\x5c\xfd\x81\x4c\xfe\x7b\xec\xbf\x5e\x83\x6e\xf8\x74\xb5\xe0\x3a\x08\x87\x67\xb3\x59\xf5\xa4\xae\xe5\x84\x4c\xab\x13\xb2\x0e\x99\x1c\xd8\xb6\x8c\xd7\x21\x13\x9d\x26\x34\x47\x83\xd4\x5f\xaf\xd7\xa1\x8d\x45\xe6\x59\x05\x8c\x59\xaf\x6d\xb8\x33\xf9\xe8\x1d\x58\xe1\x22\xbf\x99\xee\x43\x09\x20\x04\xf0\x5e\x2d\x1c\xd3\x87\x24\xcc\x8b\xa4\x5e\x1b\x9a\x06\xf5\x68\x05\xe1\x9b\xf8\xf6\x22\x8f\x8a\xc5\x53\x9b\x6b\x57\x9b\x82\x76\x7f\xad\x3d\xfa\x69\x08\x11\xb8\x26\x94\x71\xe5\x77\xc3\x3b\xd9\x1b\x30\xb5\xde\xa8\xfd\x94\x26\x65\x15\x67\x71\x51\x6e\xec\x71\x43\xaa\x2d\xdf\x4f\x45\xbe\xaa\xe2\xfd\x6f\xae\xc3\x45\xb2\x78\x9e\x95\x71\x51\x3d\x73\x80\x7c\xab\xc1\x5f\x81\xe8\x6e\x3e\xf6\x5b\xae\xc7\xc1\x7f\xdb\x3d\x41\xff\xd0\xc0\x85\xfa\x08\x34\x77\xe4\x9d\x2b\xab\x67\xd3\x37\x7e\x47\x1a\x2f\x2e\x6e\xc1\xbc\xdb\x57\xbd\x92\x18\xaa\x39\xf8\x43\x3c\x59\x87\xef\x92\x34\xfd\xc6\x9d\xb4\xb9\xab\xed\x83\xcc\xee\x71\x10\x15\xf1\x4d\xfe\x36\xde\xc1\xb5\xe6\xe9\x3a\xf4\xab\xa4\xd3\xbb\x8e\xb2\xec\x08\xee\xb1\xb8\x27\xac\x8b\xea\x94\x92\x5c\x8e\x1f\x9e\x79\x00\x79\x8e\x92\x6c\x9e\xae\x16\x71\x39\x8e\xd1\x9b\xf8\xf6\x34\x5f\xc4\x13\x7f\x7a\xd8\x83\x18\x95\x55\xbe\x04\x7b\x15\x5d\x45\xae\xdf\x8d\x21\x3a\x43\x08\xf5\x59\x57\x8e\xff\xed\x0c\x3c\x8d\xff\x67\x16\xc0\x40\xb8\xdc\xfd\x7f\x0b\x37\x43\x33\xb1\xa7\x2e\x35\x15\xcd\x66\xb3\xec\xfd\xfb\xf6\xcf\xc2\xe9\x07\x3f\x9c\xf5\xac\x78\xe2\x34\xc3\xb4\x3a\xc3\xe7\x0f\x9c\x2c\x17\xab\x0c\x65\xf1\xcf\xd5\x78\x3c\x99\xfd\xf1\xae\xff\x7e\x3c\xed\x8c\x71\xd8\x68\x96\xf8\xd1\xa3\xd8\xc3\xb5\xc9\x7a\xb2\xee\x9c\xbb\x77\x66\xbf\x69\xcd\xbe\xf3\xb3\xa6\x69\xe7\x1b\x96\xf4\x61\x60\x73\x08\xdf\x96\x20\x0d\x30\x63\x6a\xeb\xee\xb0\xc4\xdd\xa8\xfa\x20\x79\xf4\x68\x9c\xcf\x2a\x74\x99\x64\x8b\xe7\xa0\xc7\xbb\x0b\x0a\xb5\xca\x9a\xcd\x66\xc9\x7a\x32\x99\x3c\xa8\xce\xf6\x37\x78\x5c\x85\xf9\xe4\xbc\xe9\x6b\xe8\x2c\xf9\xb0\x34\xd9\x08\x5b\xbc\x78\x62\xcb\xf3\x62\x88\xf2\x65\x9c\xf9\x83\x4e\xad\xd2\x38\x8b\xcf\x27\xd3\xce\x1b\xf3\x34\x2f\xe3\xfe\x2b\xeb\xd0\x92\xb7\xa7\xca\xc0\x84\xe8\xab\xa5\x8d\x89\x7c\x48\xea\xa7\xdd\x81\xee\x0c\xab\x2f\xa8\x35\xd7\x9b\x08\x1e\x0c\x6e\x08\x3d\x68\xb7\x63\x4f\x75\x78\xf2\x00\x64\xe0\x03\x85\xda\xdb\x91\x47\x8f\xb6\x45\xc0\xc6\x3f\xcf\x00\x7f\xce\x5a\x81\xcc\xf6\xe7\x68\x19\x15\x71\x56\xab\xc7\xc9\x81\x53\x3b\xec\x72\xa2\xec\xa8\xbc\x56\x20\xf3\x84\x04\xdb\x1a\x29\x5a\x38\x75\x6f\x9b\x5a\x2f\x51\x8e\x27\x21\x68\x9e\x45\xfe\x2e\x9b\xc6\xb3\x3f\xde\x51\x35\x9b\xcd\x1a\x79\xf2\x7d\x6b\x2a\xf4\x72\x15\x9a\x87\x9d\x97\xa8\x6a\xff\x76\x02\xd5\x35\x5c\xbe\xa0\x5a\x86\x6a\x05\x35\x2c\x69\x4d\x75\x07\xea\xbb\xf5\x64\xbd\xee\xae\x1f\x26\xf7\xa3\xf8\x55\x75\x7d\xb2\x48\xdc\xd5\x54\xd7\x51\x51\xa1\x9f\xeb\x75\xf5\x5f\x0e\xce\x6f\x08\x16\xb8\xb7\xda\x10\xd4\x1e\xde\x34\x48\x16\x50\x4e\x9e\x4d\xef\x4e\xff\xe3\xe9\x77\x7f\x79\x36\x3d\xbb\x73\x13\x76\xda\x59\x75\x9e\xe7\xd9\x62\x0a\xf0\xf1\xb5\x3b\xc7\xb9\xb6\x23\x67\x7e\x8d\xfa\x7c\x1d\x36\xdf\xad\xb2\xf6\x97\x9d\x37\xed\x7e\x8c\xf5\xf9\x3a\xb4\xbd\x2f\xa7\x77\x50\xfd\xf4\xee\xd8\xea\x77\x55\xb6\x3e\x5f\xaf\xc3\x36\x65\x7a\xb7\x0e\x3b\xbf\xec\xd0\x1d\x3e\x56\xf7\x6c\x67\x0d\x8f\x1c\xed\x5f\xe6\x40\x78\x6b\x1a\x8a\xfd\x5e\x9b\x8a\x6e\x7e\x20\xd7\x05\x1d\xf6\xda\x5e\x39\x59\x0c\xfe\xb2\x8a\x0a\xf0\x17\x9e\xce\x7d\x98\xab\x9e\x12\x7e\x23\x2c\xbc\x53\x26\xd9\x1b\x70\x21\x96\x49\x7b\xc7\xec\xfe\x65\x49\xed\x09\x27\x96\x1b\xcd\x8a\x53\x59\xcc\x9d\xab\xc5\x0f\xdf\x2d\xda\x5a\x29\x72\x7b\xb5\xfb\xcb\x57\x20\x2a\x2e\x69\xb0\x11\xd6\x76\x24\xb8\x76\x16\x9b\xa7\x7b\xf6\x7a\xd7\x95\xb0\xad\x4a\xe2\x9f\x63\xdb\xf4\x3a\x43\x63\xa8\x86\x3a\x43\xe6\x23\x8b\x87\x29\xb3\xab\xfc\xf6\xf6\xa6\xad\xd4\x9a\x56\x1e\x8a\xf6\xbb\x45\xdd\x15\xe0\x1d\xfe\xbb\xf3\x70\x6a\x0f\xfc\x2c\x28\xe3\xaa\x4a\xb2\xab\x72\xfa\xd8\xe7\x5f\x4d\xab\x2e\x13\xdb\x9b\x8d\x5b\xcd\x69\x47\x73\xc1\x81\x6d\x6f\x22\x3d\xf3\xf9\x05\x50\x3e\xb4\xc3\x67\x04\x0d\x94\xe1\xb6\xfa\x38\x55\xb0\xe5\xc1\xef\xa9\x8d\xdd\x53\xdb\x51\x4c\xb2\x02\x5e\xb3\xc8\x27\xba\xed\xe4\xcb\xb1\xe7\x32\xe8\xd0\xec\xda\x0c\xea\x77\x0d\xfb\x40\x40\x6b\x8b\x6b\x9d\x06\x54\x4b\x43\x50\x9f\x83\x3f\x3c\x10\x34\x94\xe1\x59\x00\xc0\x64\x60\x6b\xf2\xee\x37\xfd\x8b\xf5\xeb\x76\x08\x5b\xe3\xd4\x6e\xd0\xd3\x55\x75\xfd\x43\x91\x5f\x26\x36\xe0\x0f\xbf\xfe\x9c\x17\x37\x9d\xdc\x02\xbb\x42\x68\x15\xe1\xd2\xbf\x68\x19\xe5\x90\x4d\x23\x22\xed\xf2\x37\x5f\x5c\xd6\x85\x05\x8b\xb9\xdb\xda\xeb\x8e\xda\x0b\xc2\x20\xb3\xc7\x71\xda\x55\xb3\x72\x75\x71\x93\x54\x75\x61\xc6\xb5\x59\xbb\x7f\xd4\x21\x1d\xde\x25\x2b\xe7\xc7\x24\x40\xb4\x13\xd3\xea\xa3\x27\x9c\xe8\xdc\x80\xe2\x8c\x5d\x1a\x5c\xcb\x46\x1d\xbd\x2b\x1e\xf7\xf6\x3a\x7f\x40\x79\x5b\x6b\x59\xa6\x3e\xbc\xca\xb6\x59\x1f\xb5\xc3\xe1\x9e\xdc\xc5\xce\xaa\xd6\x3e\x9e\x74\x2c\xf7\x27\xe1\xca\xd1\x25\xfe\x9a\x7c\xd9\x7e\xac\x42\xdd\x4d\x18\xec\xbf\x20\xef\xdb\x39\x17\xd2\x90\x85\xf5\xde\xbc\x03\x53\x0b\x3b\x29\x7f\xde\x1e\xd7\x01\xc1\x30\x00\xc7\x33\xc9\x57\xb5\xe5\x0c\x6e\x5a\xfa\x26\xf4\x27\x48\xb4\x66\x61\x7b\x6a\xda\xb9\xda\x3e\x42\xa3\x4e\x62\x3c\x72\x29\xac\x0f\xbf\x3a\xd9\x81\xd1\xde\x70\x59\x71\x5c\x76\x60\x11\x2f\xf3\x1d\x91\x33\x78\x54\x26\x55\x5e\xdc\x3e\xce\x93\xc5\x1c\x94\xd8\xdb\x64\x11\x17\xc1\xe4\x88\x88\x98\x7d\x62\x59\x3c\x6b\x4e\x7d\x6c\x85\x60\x6a\x08\x32\x10\x4e\x6c\x62\x09\xb6\x08\xcb\x7e\xe4\x5c\x9b\xbc\x78\xfe\xcd\x3a\xb4\x16\xa1\xfd\x9d\x0b\x68\xb8\xbe\x5c\x35\xce\x67\x67\x34\x5b\x05\x80\xbb\xb6\xf5\x72\xbf\x96\x60\xf2\x00\x66\xd8\xcc\x06\x34\xc6\xf7\x15\x5e\xef\x68\x05\xb7\xd1\x7f\x56\x3d\x7a\x34\xde\x55\x4d\xeb\x75\x1b\x9b\xc8\x66\xad\x4d\xc3\x0f\x3a\xa1\x94\x87\xae\xa4\x6c\x16\xac\xca\xb8\x76\x34\x6b\xcc\x32\xbe\x03\xb5\x3d\x1d\xac\x04\xde\xbd\x5d\xc6\xd3\x0c\xfc\x74\x67\x3b\xdb\x2c\x6b\x2a\xb9\x87\x6b\xab\xea\xfa\xdb\xb8\xba\xce\x17\xc1\xc4\xfb\x95\x20\x1c\xc8\x15\x38\x3e\x9c\x2b\xf6\xd3\xce\x63\x9b\x69\x38\xd8\x1f\xf7\x00\x1a\x5f\x1b\xfd\x6d\xaf\x33\x3a\xcc\x93\x01\x63\xfa\xdb\xfa\x9c\xd6\x9c\x0f\x79\x9c\x2f\x9f\xbd\x7a\xf6\xba\xe5\xf1\xd9\x27\xdb\xde\x61\x9c\x55\xc5\xed\xf4\x2c\x98\xa7\x71\x54\x3c\x73\x67\x73\xd8\xef\x5f\xfd\xf8\xa7\x6f\x9f\xb7\x0b\x48\xf3\x68\x91\x64\x57\x2d\x7f\xf1\x3f\xad\x79\x6f\xf9\x8b\x2e\x81\xdd\x3a\x8a\xfe\x6d\xe7\x7e\x3e\x7b\xf9\xf2\xfb\x97\xad\xa2\x5a\xef\xd9\x3f\xa7\x77\xf1\xcf\x49\x35\xd4\x8a\xd7\x7f\xfb\xe1\xf9\x77\x7f\xd9\xee\x46\xf8\x71\xcd\x3b\xd4\x53\xb5\xe3\x3b\xe0\xa7\x1e\x23\x11\xbf\xd5\xb1\x4c\x3f\x3c\xfb\xdb\xed\xe9\x5f\xbf\xc9\x3e\xde\x2b\xcd\xf2\xca\x5e\x7e\x78\xc8\xf9\x4c\x07\x78\xa3\xf2\x50\x77\xb4\x41\x0e\xaa\x93\xd0\x52\x43\x93\x22\x76\xc9\x21\x3e\x2f\x6e\xf3\x8e\xde\xf6\x7a\xec\x6c\xd8\x72\x7a\x5a\x2f\x36\xa5\x6c\x16\x03\x87\xdc\xc9\xfd\x2e\xb1\x93\xb8\xc1\xe2\x9b\xa7\x87\x79\x4b\xf7\xb8\xae\xad\x79\xd2\x3b\xf9\x67\x80\x03\xed\xa4\x35\x01\xae\xc0\xa6\x6a\xb3\xe5\xc2\xec\xfb\x52\x0d\x7d\xb9\xd7\x07\xdf\x4e\x5d\x6e\xbb\x20\x44\xd9\xea\x06\x53\x8c\x77\x43\xdb\xfa\x00\xa1\x23\x31\xad\x77\x00\x81\x01\xdd\x33\xf9\x8e\xdb\xbe\xed\x9d\xd9\x7a\x4a\x9c\xb9\x23\x57\x3b\x27\x42\xb9\x26\xdb\x23\xcd\x8e\x6e\x6f\x17\x34\xeb\xc6\xab\xfa\x53\xbd\xc1\xf1\x43\x37\x82\xee\xde\xeb\x38\xc4\x22\x1e\x9e\x05\xdf\x59\xe4\xff\x01\x47\xbb\x74\x5d\x6d\x31\xc8\xf6\xce\xc1\x80\x1f\x7d\xdc\x48\xb0\xf3\xbc\x2c\xbf\x3b\xd3\x42\xba\xd1\x65\x94\xa4\x2e\x01\xc1\xe6\xb5\xc1\x17\x17\xc5\x70\x52\x72\xff\x7f\x7f\x8d\x47\x45\x3c\x8f\x93\xb7\xf1\x62\x14\x8d\x2c\x02\x1a\x5d\x16\xf9\x8d\x3b\x71\xe4\xfb\xe7\xdf\x9c\x8e\x6a\x14\x3b\xba\x58\x55\xa3\x79\xbe\x4a\x17\x76\xbf\x68\x9a\x5f\xd9\xbd\xa2\x79\xbd\x53\xf4\x5d\x52\x5d\x8f\x92\xc3\x0f\xa0\x39\x8e\xa9\xe4\x57\x61\xea\x76\xe7\x1a\x0c\xff\x21\xdc\x7d\x7d\x1d\xf7\x78\x78\x1d\x95\xa3\x22\x06\x3b\x19\x2f\xdc\x3e\xdb\xc8\x62\x67\xc7\x7a\x34\xfa\xc1\x9d\xfa\x72\x1d\xbd\x8d\x47\x51\x36\x8a\x16\x37\x49\x96\x94\x55\x11\x55\x79\xd1\x3e\x0b\x06\xf4\xcd\xe8\xc6\x22\xcc\x51\x93\xa2\x05\x96\xee\x97\x61\xbf\x31\xbf\x02\xfb\x5f\xbd\xfa\xbe\x66\xfc\xbb\x24\x5b\xe4\xef\x46\x76\xc1\xee\xc3\x04\x7b\x9b\xf5\xbe\xcc\x77\x51\xe9\xcb\x6d\xb8\x5d\x15\xb7\xa3\xe8\x2a\xfa\xd8\x73\x7c\x76\xf7\xac\x46\x7e\xc7\x77\x23\xf0\xdb\x39\xfc\x98\x2c\xe2\x2a\x4a\xd2\xfe\x91\xab\xdd\x0f\x3e\xf2\x9c\x9f\x4f\x3e\x73\x7f\x0d\x75\xf8\x3c\x7b\x1b\xa5\xc9\x62\xd4\xc4\x38\x3f\x48\x5e\x9c\xfa\xb3\x57\xf9\xc4\x8b\xd1\x22\x8f\x4b\xb7\x33\xfe\xe7\xa4\xac\x1a\x61\xb1\x8f\x47\xd1\xa8\x55\x21\xe8\x09\x27\xb8\xbf\x43\x01\xfa\x80\x5d\xaa\xbd\xd2\x3f\xe9\x96\xe6\xfb\xc2\x57\xdd\x76\x1c\x50\xcd\x26\xed\xdc\x83\x33\xd1\x8a\x03\x0f\xc3\x43\x07\xad\x9d\x27\xb6\x2f\xcf\xbf\x29\x3a\x89\xd3\x05\x60\xf6\xe1\xcd\x00\xf5\x6b\x9b\x33\xfc\xdb\x07\x6b\x52\x1b\xc2\x06\x54\x75\xb2\x8c\xca\xf2\x5d\x0e\x6e\x4b\xef\x4c\x50\xff\xa3\x8d\x84\xfd\x19\xa3\xee\xe8\x34\x0f\xc5\xfa\x69\x81\x7a\x0f\x32\x6c\x70\x6d\x00\x36\xe9\xa4\xde\xa2\x1d\xf4\xcf\x79\xdd\x7f\x92\x56\xb9\x8c\xb2\x76\xaf\x5f\xd4\xea\xbb\xba\xae\xe1\xc4\x1e\x11\x71\x38\x7a\xb3\x11\x4b\x5a\x2f\xcd\xed\x0b\x0e\x07\x3b\x5a\x3b\xc3\xad\x33\x40\x79\xc8\x1c\xfc\x3e\xab\xe3\x26\xe7\x1e\x96\x07\xcb\x34\x9a\xc7\xd7\x79\xba\xb0\x5b\x66\x9a\xb0\x8a\xab\x8a\xba\xed\xe5\xaa\xde\x17\x95\x67\xae\x21\x47\xfb\x1d\x6a\xc7\x32\x92\x4f\x61\xf1\x84\xf3\xc3\x5c\x11\xfe\x51\x85\x39\xc1\x75\xb1\x85\x81\x91\x94\x21\xb7\x9d\xa6\x64\xb3\xbb\x88\xb6\x57\x07\xeb\xa1\xd8\xbb\x0f\x6b\xf4\x8b\xfb\x32\x87\x8b\xef\x87\x9e\xce\xd6\xd2\xb0\x43\x07\xdf\xee\x3e\x0e\xac\x63\x04\x2c\x12\x73\xf7\x0d\x7e\x9a\x93\xca\x0e\xd6\x9a\xf7\x9f\x9f\xd4\xed\x6f\xeb\xca\x09\xf1\x01\x93\xcc\x6d\x77\xdc\xac\x9d\x0d\x30\xc8\xcd\xfc\xc3\x5a\xe3\x56\xf3\x5a\xae\x4c\x15\xcd\x2b\x8f\x6b\x3b\x80\xf7\xd2\x9d\x3e\x99\x64\xa3\x79\x11\xdb\xdb\x2b\xa3\xb4\x44\x03\x65\x6f\x71\x7b\x50\xa2\x28\x6b\x9d\x20\xf2\xea\xd5\xf7\x3f\x3d\xfb\xee\xe9\x9f\x5e\x3c\xfb\xe6\xa8\x03\x27\xbb\xbb\x62\x0f\x59\x21\xb7\x7f\xb7\xce\xc0\xa8\xb9\xdb\x3d\xd8\xe4\xf1\x57\x77\xcd\xc2\xc8\xfa\xf1\x57\x77\x6e\xb9\x04\xfe\x5a\xcc\xd7\x76\x3d\xe1\x71\x0d\x65\xcb\x60\x28\x41\x7d\x70\xc5\x73\x31\x0f\x36\x1b\xbd\xba\xab\x9b\x02\xe6\x6e\x10\xb4\x17\x6f\xf1\x66\x11\xf3\xfc\x58\x3d\x28\x0f\x5b\x4d\xff\xf0\xb0\x4e\xaf\x5c\xcb\x50\x64\xff\x5b\xa2\xcb\xa4\x28\x2b\x17\x7f\x6c\xd7\x15\xa4\xd1\x3f\x6f\xb7\x8e\x7b\xdb\xb3\x78\xee\x7a\x12\x9e\x05\x2e\x6f\x0e\x3e\xc5\x1f\x28\x1c\xbb\x8f\x5f\xda\x65\x3c\x5b\x08\x6f\x8f\x64\xdf\x77\x7c\x88\x0e\x03\xbb\xf8\x54\xc6\x29\x70\xa3\x16\xca\xa4\x8a\xed\xe1\x1d\x5f\x6f\x26\xff\xb0\x88\xfa\x68\xa6\x3c\x3f\x48\x39\x1c\x3d\x9c\x7c\xeb\x8a\x9a\xc3\x11\xd8\xaf\x27\x40\xfb\x5a\x65\x83\xfe\x7d\xeb\x7a\xc0\x19\x35\xf7\x9c\xc9\xb6\xcf\x9c\x36\x4c\x3f\xdc\xa0\x76\xd5\x94\x45\x62\x7d\x3d\x65\xd7\x5e\xbf\x6e\x54\xc5\xd7\x6d\x05\xf2\xb5\xbf\xb9\xe0\x6b\xc7\xaf\xfd\xb2\x82\x07\x54\x4b\x1d\x69\x73\xa5\x9f\x3b\xfd\x42\x76\x64\x96\xf8\xf7\x9b\x3b\x52\x2d\xfb\x36\xdd\xcc\x86\xce\xc9\xef\x46\xf3\x9c\xd0\xdb\x7d\x95\x60\x8e\x0f\xfc\x68\x07\xe1\x70\x51\x3b\x30\x08\x6f\xb7\xed\xec\x94\xfc\xcf\x59\x90\x3f\x20\x43\xa1\x9b\x60\xb0\x37\xad\xc0\x8e\xd8\x26\x3b\xa7\xe8\x25\x07\xf8\x5c\x80\x55\x91\xd8\x24\x83\xc6\xf8\xf9\x04\x83\x26\xff\xa0\xce\x30\xa8\x6d\xec\x55\x73\xd6\x91\x5b\xb2\xa9\xa7\x52\x18\xd4\xd2\xec\x0e\x3b\xf2\x79\x0c\x5e\x64\xea\x43\x92\xa2\xac\xb3\xfb\xc9\x62\xe2\xd7\x6e\x36\xb8\xdb\xde\xdc\x01\x4a\x9b\x5c\xa2\x23\xd3\x14\x36\x6b\x6f\x9f\xe2\x08\xa3\x76\x6a\x42\xdd\xa4\xf6\x82\xf5\x3a\xac\x27\x6e\x97\xda\x74\xcb\x2f\x83\x43\x2b\x57\x55\xbc\x68\x25\xf7\x37\x89\x05\xee\x8d\x2a\x2e\xab\x24\xbb\x7a\x12\x54\xf1\xcf\x55\x30\x0d\x1a\x6f\x75\x3d\xf9\xc0\xfc\x86\x6a\x38\xbf\xc1\xae\x27\x6d\xe7\x37\x04\x41\x9d\xda\x60\x47\xb1\xb5\x2b\x6b\x43\x5c\x87\x76\xb9\x6b\xab\x25\xb6\xb7\xcd\x96\x83\xf5\xd1\x27\x39\xb5\x52\xd2\x3e\x97\x2d\x95\x97\xcb\xf9\xeb\x9b\x57\xff\x7b\xf8\x0a\xaa\xed\x8d\x94\x38\x0c\x16\xe9\x00\x1c\xa9\xc1\xc8\x62\x18\xd8\xef\xc2\x2a\xdf\xde\x8e\x9e\x9e\xbe\x18\xbd\x3e\x2a\xde\xb6\x49\x13\xd9\x75\x57\x54\xab\x3d\x8b\xdd\xed\xd9\xde\xf8\x18\x9e\x05\xad\x1c\x94\xf3\xf3\xf0\x44\xb7\x42\x04\xfb\xdc\x04\x77\x1f\xde\x6e\x15\x65\x73\x0f\xad\xef\x53\x56\xc5\xd1\x73\xbd\x23\x33\xbf\xf1\x25\x6a\x17\x51\x99\xcc\x4f\x16\x45\xbe\x5c\xe4\xef\xb2\x93\xfa\xf8\x9f\x81\x1b\x85\xbb\x6f\x1e\x50\xc6\xef\xf3\x22\xd8\x5e\x67\xea\xfb\x0c\x4f\xaa\xe8\xea\xa3\xb8\xd2\x29\xe8\x5f\x82\x35\x7e\xb3\xcb\x47\x71\xa5\x2e\xe3\x5f\x81\x21\x1f\xc3\x88\xdf\x2b\x03\xda\xa7\xe8\x0e\xef\x6c\xd9\xf1\xfa\xe7\xda\xdf\x07\xfb\xfb\x5b\x44\xd9\xc2\x5e\xa5\x1e\x17\x8f\x6d\xb8\x6f\x59\x24\xe5\x2f\x9b\x07\x77\x90\xdd\x67\xff\xf1\xe2\x6d\x25\x5f\xa5\x87\xdb\xfd\x65\x54\x5d\xd7\xa1\x4e\x1b\xaf\xda\x74\xe7\x24\xcd\xaf\xf2\xd6\x15\x60\x80\x7c\xbf\x65\x94\x22\x6c\x4c\x48\x34\xc2\x9c\x0b\x8c\xc9\xe8\x94\x11\x83\x28\x15\x96\x46\x29\x03\x1a\x23\x12\x71\xaa\x80\x64\x24\x36\x8e\xc4\x11\xe1\x3a\xa4\x18\x29\x42\x28\x90\x5e\x00\x0d\x13\x09\x34\x4d\x94\xf1\x34\x86\xa4\x86\x2f\x05\x93\xda\x93\x30\x62\xe0\x00\x0f\xd0\x04\x43\xd8\xfe\xcf\x17\xc7\x08\x0d\x05\x45\x9c\x31\xdd\xa1\x71\x8a\x18\x91\xbc\xa1\x71\x26\xda\xb4\x53\x68\xb1\xc2\x96\xa6\xa4\xf1\x9d\x30\x08\xc3\xa7\x0c\x1a\x69\xfb\xca\x28\x41\x8c\x2a\x4b\x12\xdc\xb8\x2f\xa9\x44\x42\xf0\x36\x8d\x51\x83\xb0\xd1\x21\xc7\x48\x60\xda\x21\x31\x81\x28\x67\xbe\xfb\x9e\x46\x05\x62\x1a\x53\x5f\x9a\x41\x58\x31\x60\x09\x17\xd2\x7f\x2a\x91\xc6\x1d\x9e\x0f\x0c\xc3\xdf\x47\xdf\x52\xc9\x91\x51\x24\x24\x04\x19\x45\x5d\x1d\x54\x62\x64\x0c\x09\x09\x45\x82\x4b\xd9\xa5\x69\x24\xa8\x76\x3c\xa1\x02\xfa\xaf\x07\x69\x94\x20\x4d\x70\xf7\xdb\x21\x1a\x53\x48\x6a\xcd\x5a\x34\xc6\x39\x50\x0d\x93\x42\x51\x33\x3a\xa5\x92\x20\x2c\xa5\xe2\x3c\xe4\x04\x49\x42\x29\x16\x72\x44\x25\x45\xca\x28\x01\x2c\x24\x84\x72\xcc\xd8\x88\x4a\x89\x0c\xe9\x90\x4e\xa9\xd4\x48\x18\xe2\x68\xca\x8e\x39\x55\x18\x51\x61\x87\x4d\x33\x23\x1d\x89\xc0\xdf\x40\xa2\x86\x08\xd7\x1a\x45\x10\x93\x2c\x64\x06\x11\x0d\x9f\x5a\x1a\x46\xda\x48\x4a\x0d\x90\x19\x96\x52\x72\x5b\x89\x41\x1a\x33\x6c\x38\x90\x85\xc6\x52\x11\x33\x82\xaa\xa5\xa6\x5a\x09\xa0\x2a\xe6\xca\xa5\x52\x21\x21\x1c\x49\x48\xdb\xa0\x53\x2a\x05\x12\x54\x4a\xda\x21\x03\x15\x6b\x22\xb8\x0a\x19\xcc\x09\xc5\x09\xd5\x23\x3b\x60\x86\x18\x6d\x79\xa7\xb0\x90\x82\x53\xe0\x1d\x8c\xa3\xe2\x0c\xa8\x9c\x28\x89\xa9\xaa\xa9\x44\x18\xa0\x12\xc2\x15\xa7\xba\xa1\xba\xf1\xd0\xba\xe9\x2d\x37\x7c\x8b\xa6\x99\x9f\x42\xf5\xb0\x79\x71\x19\xa2\x6d\x44\x08\x04\x4b\x33\x24\x84\xb4\xe2\xa6\x94\xef\xa7\x52\x76\x62\xb5\x68\x54\xc1\x14\xb7\xf5\x62\xed\x64\xa8\x21\x29\x84\x99\xf2\x62\xe5\x69\x8c\x23\x86\x95\xf0\xa5\x39\x1a\xc7\x88\x11\xee\x4b\x53\x88\x48\x5e\x4b\x80\x36\x7c\x04\xed\x90\x42\xb4\x49\xa7\x54\x4b\xe0\xb7\xa3\x19\xdb\x62\xaa\x0d\x62\x1a\x04\x40\x4a\xea\xca\x32\x14\x11\x2c\x41\xe8\x94\xd0\xc4\x35\xc3\x10\x24\xb4\x81\xf1\x90\x44\x38\x2d\x00\x5f\x12\x22\x9d\x40\x30\xf7\x29\x94\x2f\x2d\x49\x2a\xa7\xa3\xa0\x19\xc6\x18\x2f\x09\xfe\x4b\x65\x90\xd2\x42\x73\xd6\x26\x53\xa5\x91\xc0\x58\x63\x06\xd5\x70\xa5\xa8\xe4\xda\x52\x29\x26\x8c\x52\x50\x07\x5a\x62\x8d\x61\x24\x95\x46\x44\x0a\xc5\x38\x50\xb9\x96\x5a\x6a\xe5\xc9\x20\x04\x0a\xc8\xd8\x08\xa2\x89\xad\x4f\x23\xc2\xb4\x04\x81\x14\x08\x53\xcd\x89\xa2\x23\x47\x95\x98\x18\xe0\x2e\xa8\x5e\x42\x88\xa7\x32\xa5\x2c\xcf\xb5\xa1\x52\x12\xee\x4b\xa6\x02\x33\x05\x64\x90\x27\x6a\x6a\x2a\x0f\x19\x45\xd8\x4a\xaf\x65\x15\x45\x42\xd3\x41\x1a\x55\x88\x60\x46\x1c\x13\x6a\x1a\x41\x18\x3b\xc5\x0a\x1c\x95\xac\x23\x3a\x03\xd2\xf4\xf7\xd1\xb7\x4c\x73\x24\x19\x71\x54\xa7\xe4\x4f\x99\xd2\x88\x7b\x19\xe3\x4e\x2a\x98\x12\x88\xba\x1a\x84\x1b\xb4\x9a\xa2\x10\xa6\xd8\x2b\x7d\x47\x62\x1c\x51\x83\xbd\x96\x76\x24\x8e\x11\x35\xca\xa9\x77\x18\x05\xd0\x13\x0c\xb8\x2a\x8c\xd6\x23\x68\x83\x62\x6d\xca\x29\xd3\x0a\x09\x63\xdf\x22\x98\xb9\x0f\x0d\xe8\x66\x2b\x5e\xdc\xcd\x6e\x66\x18\x22\xf0\x21\x41\x8a\x7b\x95\xc3\x0c\x88\x9f\x80\x71\x87\x92\x5c\x23\x0c\x46\x44\x6b\x90\x10\xaa\xdd\x7b\x50\xbe\x64\x56\x57\x48\xe1\x2d\xa5\x16\xa0\x24\x2d\xc9\x38\x75\x7a\xca\x34\x46\x1a\x14\x33\x6b\x93\x99\x32\x48\x48\x55\x8b\x17\xe7\x94\x09\x63\xa9\x54\xea\x5a\xbc\xa8\xd2\x18\x86\xdb\x92\x19\xad\xe5\x4b\x30\x2d\xb9\xf1\x64\xac\x6b\xf9\x92\x94\x28\x98\x56\x8e\x2c\xac\x7c\x81\x92\x12\x9c\x08\xed\x8a\xc6\xac\x96\x2f\xaa\x0c\x36\xbe\x42\x8c\x6b\xf9\x12\x46\x4a\xec\x2b\x84\x19\xe9\xe5\x8b\x13\x4a\xb5\xa9\xc9\xc4\x0b\x93\xb7\xc8\x06\x26\xb6\x1a\xa4\x59\x01\xa3\x7e\x14\x6b\x9a\x15\x30\x5a\x8f\x86\xaa\xf5\x90\x93\x9b\x01\x51\x02\x01\x93\x40\xe5\x5e\x98\x9c\xc0\x32\xc9\x90\xd6\x84\x78\xf4\xe2\xc9\x40\x25\x5a\xd5\x52\x4b\xa8\x26\x6c\xc4\x24\x58\x50\x23\xad\xd1\x25\x54\x19\xcd\xa0\x8f\x92\x02\x38\x50\x4e\xb5\x12\xcd\xb4\x34\x62\x74\xca\x84\x42\x86\x6b\x2d\x2c\x04\x92\xca\x10\x06\xe5\x0a\x89\x18\xe8\x6a\x8c\x04\x13\x4c\x49\xbd\x21\x71\xc4\x65\x2d\xbd\x8e\x26\x40\xa8\x39\x52\x44\x08\x4c\x58\x4d\x96\x84\x0b\x00\x0c\x14\x0b\x0a\x46\xd1\x91\xb5\x14\x54\x01\x59\x4a\xc3\x25\x77\x54\x8e\x99\x16\x34\xa4\x12\x11\x6c\xa8\xe2\x12\xda\x05\x64\xc5\x34\xb7\x64\x8d\x85\x61\xc6\x36\x82\x03\x13\x2c\x95\x0a\x6c\x98\x50\x9e\x2a\xb8\xd6\x40\x65\x14\x33\x0a\x6a\xca\x92\xb9\xe0\x82\x00\x59\x51\xc1\x08\xaf\x2b\xd4\x82\x11\xe3\x06\x4c\x33\x28\xc3\x56\xa8\x84\x94\x40\x36\x88\x71\x2a\xa8\x66\x23\x60\x8f\xa4\x52\x73\x11\x32\x8c\x38\x67\x8a\x11\x33\x62\x12\x23\xca\x95\x06\x0b\x47\x10\x53\x82\x61\x09\xec\x90\x18\x29\x4c\x08\x08\x39\x41\x82\x1a\x22\x19\x8c\x1c\x46\x4a\x19\x4e\x88\xa5\x0a\x2e\x8c\x21\xb6\x08\x2d\x0c\xa1\x96\xa8\x8c\xe1\xd0\x11\x80\x22\x1c\x53\x61\x0b\x90\x58\x50\xca\x28\x94\x4b\x60\xca\x30\x47\x56\x42\x52\x2a\xa5\x23\x1b\xcd\x34\x93\x40\x36\x58\x0a\x29\xfd\x40\x83\x4a\x30\x56\x46\x85\xa2\x8c\x01\x33\x24\x43\x1c\xa0\x03\x03\x32\x55\x94\x53\x09\x22\x2e\x41\xde\x31\x11\x96\x2c\xa8\x31\x84\x7a\xb2\xd6\x9c\x49\x5b\x88\x14\x58\x1a\x65\x3b\x28\x40\x4f\x71\x4b\x55\x52\x19\x43\xa9\xa3\x4a\x89\x29\xb1\x65\x68\xcd\x88\xc4\xca\x91\x8d\x11\xd4\x52\x8d\x51\x42\x0a\x2b\xc7\x0a\xa6\x3c\x11\x21\x63\x88\x0b\xc1\x95\x95\x58\x85\x14\xd7\x9a\x28\xa0\x1a\xaa\x14\xc7\xd2\x52\x0d\x15\x94\xd8\x59\x09\xf0\x46\x83\x14\x01\x55\x32\x2a\x89\xd5\x02\x4c\x50\x2e\xa8\x2b\xd7\x28\x8e\x89\x55\x0e\x84\x70\xa6\x04\x77\x45\x68\x6a\x40\x19\x09\x44\x8c\x14\x42\xf9\x82\x0d\x66\xd4\x16\x41\x35\xc5\x44\xdb\x06\x6b\x04\x16\xd0\x58\x6d\x24\xb8\xe6\x52\x52\x4f\x26\x9a\x02\x2f\x04\xd2\x4c\x18\x81\x6b\x32\x74\x4e\x22\x86\x1d\x9e\x3b\x6d\xd3\xa4\x66\x9c\xd1\x91\x23\x51\x09\x1a\x07\x3c\x0d\x49\xa4\x54\x9e\x4a\xec\x20\x81\x34\x32\xac\x89\xa9\xab\x62\x8c\xd9\x22\x34\x61\x4a\x0a\xe1\x8b\x05\x9c\xa2\x80\x6c\x28\xe6\x94\x70\x57\x06\xa6\x52\x49\x80\x59\x98\x32\x61\x55\xaa\xed\x1b\x17\x52\x5b\xf0\x45\x01\xc0\x9b\x9a\x6b\x9c\x28\xe5\x90\x1a\x31\x4c\x33\xc7\x35\xa5\xb8\x20\x56\x2d\x6b\x41\x28\x95\x8e\x6b\x58\x68\x49\xad\x66\xe7\x9a\x29\xa9\x40\x62\x39\xd2\xa0\xf2\xb8\x33\x01\x04\xf0\xa6\x97\x20\x06\x2e\x94\xc3\x1d\x8a\x39\x61\x33\x82\x1b\xe5\x5e\x35\x8c\x51\xce\x9c\x0e\x53\x5a\x4b\xed\xa8\x52\x31\xad\xac\x0a\x93\x44\x28\x55\xdb\x0b\x5e\x2b\x36\xce\x64\x9b\x74\x0a\xf2\x4e\x5c\x9b\xa4\x74\x4e\x13\x13\x1a\xb0\x22\x80\x20\xa6\x9d\x95\x12\x12\x49\x4c\xa0\x3b\x8a\x61\xda\xa8\x29\x2c\x88\x35\x7a\xa6\xa5\xba\x24\x31\x5c\x6a\x20\x1b\x45\xb0\xd4\x60\x4c\x84\x46\x06\x78\xed\x41\x19\x17\x8a\xc2\x20\x12\x44\x15\x36\xd4\x59\x5c\x2a\x0d\xb1\xc2\x05\x2a\x5e\x5b\x12\x97\xde\xfa\x49\x83\x84\x61\x0e\xf9\xd5\x54\x06\x28\x17\x0c\x83\xb5\xbb\x4c\x52\xa1\xa5\xa3\x6a\x42\x2d\x4c\x06\x8d\x8e\x05\xb7\x32\x00\x64\xc1\x31\x71\x5e\x0a\xa7\x44\x28\xe0\x9d\x25\x1b\x03\x76\x5a\x21\xa1\xb8\xf0\x05\x6b\x40\xe2\xf6\x5d\x01\x26\x51\x08\x47\x55\x98\x63\x4b\x05\x95\x85\x09\xf5\x05\x1b\xae\xa8\x2d\x01\x13\x49\x15\x11\x8e\x6c\x30\x98\x42\x10\x2e\xa1\xc1\x81\x94\xae\x3e\x43\x88\xd0\x56\xe6\x38\xa3\x54\x4b\x3a\x72\x54\x2b\x9d\x54\x13\x6d\x40\x94\x37\x24\x02\xb6\xcf\xa1\x1a\xa0\x71\xee\x26\xa3\x60\x44\x31\x4a\x7d\x99\x98\x08\x18\x31\x86\x38\xd5\x86\x69\x63\x0b\x90\xca\x5a\x54\x2a\xb9\xa1\x02\xfa\x85\xc1\xcd\xb2\xca\x55\x9a\x1a\x61\x61\x84\x05\xc3\xf0\x26\x46\x12\x53\xaa\x18\xb1\x93\x40\x69\x65\xb8\xa5\x62\x6e\xb8\xb2\xa2\x2a\x81\x03\xd8\x48\xd0\xe5\x5c\x73\x4c\x38\x74\x55\x4a\x04\x7a\x0f\x1c\x45\x80\xcd\x5c\x49\x62\xc7\x4c\x22\xc2\x40\xda\xa8\x41\x54\x71\x05\x9a\x11\x88\x18\x5e\x16\x96\xca\xb9\x30\x76\xce\x09\x64\x08\x65\x98\x5b\x2a\xe1\x8c\x5a\x83\x07\x7a\x91\xd8\x52\x31\xc3\x9a\x62\xaf\x42\x29\x91\x04\xd3\x90\x6a\xa4\x94\xe6\x8c\xd6\x7a\xd8\x08\x70\xa4\x28\xe0\x2d\x86\xed\x20\x48\x86\xb0\xd4\xd6\x62\x02\xfa\x66\x8c\x4a\xe1\x54\xb9\x54\x46\x2b\xa0\x32\x21\x88\xa4\xdc\xcd\x03\xd0\x58\xd0\x34\x85\x34\xe5\x0a\x14\x23\xd8\x0e\x81\x09\x16\x12\xa8\xd4\x68\x09\xda\x0b\xa8\x8c\x63\x6b\xa1\x25\xa2\xd8\x70\x2c\xbc\xa5\x62\x04\x73\x6c\x4d\xb1\x11\x4a\x73\x29\x9c\xa9\x62\x58\x52\x49\x2d\x99\x70\x6a\xb4\x2f\x03\x53\x70\x5d\x28\x38\x01\xe0\x07\x3a\x5b\x05\xe6\xc2\x11\x29\x97\x9a\x32\x57\x30\x05\x75\x66\x80\x2c\x38\x55\xc4\xd4\x64\xc5\x0c\x58\x73\x81\x28\xd3\x4a\x28\xdf\x0c\x2a\x8d\x01\x44\xc0\x41\xdc\xb8\x15\x54\xfb\x32\xa6\xd4\x82\x0d\xa6\xb5\x60\x46\xd7\x45\x63\xe9\x5e\xc6\x92\x09\xa9\x8d\x6f\xb3\x94\x0a\xc8\xd4\xbe\x0d\x90\xce\x5a\x52\x70\xdf\x2d\x02\x93\x4c\x61\xad\x8c\x9d\xb1\x94\x6b\xec\xa8\x1c\x66\xb7\xe0\x8e\xfb\xd2\x08\xa5\x6c\x00\x81\x33\x6d\xa8\xf1\x23\x48\x34\x07\xff\x18\xc8\x54\x32\xde\x58\x4c\x4f\xe2\x5e\x36\xa5\x44\x52\x73\x57\xa8\x53\x30\x20\x98\x96\x39\x04\x49\x2d\x4c\xad\x06\x08\xb1\xcd\xc4\x46\xc9\x66\xa6\x30\x63\xe1\x9b\xb6\x18\xdd\xd2\x30\xe8\x2e\x23\x2c\x2e\x54\x58\x58\x6c\x60\xad\x80\x62\xd8\xb9\xc1\x54\x08\xc6\x8c\x93\x74\xa9\x1d\xfc\x63\x8c\x50\xec\xf4\x74\x0f\x3d\x02\xa6\x14\x04\x31\x5c\xbb\xd0\x2e\xf2\xc1\xb8\x42\x60\x04\x87\x68\xa0\xfd\x9a\xe0\x97\xff\x76\x88\xd6\xfa\x16\x6a\xc1\x0a\x31\xe6\x20\x2a\xe8\x63\xfb\x26\x96\x08\xe6\xa2\x05\x98\x4c\x32\x6d\x18\xf4\x06\x73\xf0\x36\x14\xa0\x54\x83\x18\x91\x86\x1a\x3d\x62\x18\xaa\xc0\xd8\x38\xe8\x89\x19\x61\x60\x8f\x30\x20\x28\x1b\x39\x30\x18\x7b\xa7\x05\x63\x24\x29\xb3\xcc\xa4\x4c\x36\x34\xe6\x60\x6f\xd3\x1f\x6a\x24\x32\x8c\x0c\xd2\x3a\xfd\xc1\x18\x99\x41\x12\xcc\x04\xcc\xbd\xd5\xc0\x04\x49\x4e\x34\xb5\xc8\x96\x81\xb2\xa2\xa0\x9c\x31\x43\x12\x73\x0f\x8f\x31\xa7\x4a\x80\x6e\xc2\x02\x49\xc1\xad\xb0\x50\x98\x22\xd8\x9a\x7e\x0c\x26\xd7\x4a\x9a\xe2\xf5\x88\x6f\xb3\x0d\x98\xc9\x39\x62\x44\x77\x99\xc9\x19\x92\x9a\x81\xbe\xeb\x70\x93\x13\x24\x34\x11\x46\x74\xb8\xc9\xc0\x18\xd1\x3e\x37\x99\x42\x4a\xb0\x2e\x37\xc1\xd4\x60\xd9\xe5\x26\x53\x88\x89\x9e\x74\x00\x3c\xe3\x72\x90\xd6\x61\x1d\x03\xe8\x36\x4c\xeb\xf0\x13\x68\x52\xf5\x68\xda\xa2\x68\xa7\x84\x18\xc0\x50\xab\xa5\x39\x06\x9f\xc1\x48\x66\x79\x4c\x95\xa1\x9a\x8f\x18\xa7\x48\x51\x09\x4e\x3a\xa5\x48\x19\x23\x29\x65\x23\xe0\x1c\x80\x73\xe0\x31\x21\xbe\xd8\x6d\x6e\xfe\x7d\xf4\x2d\x65\x18\x81\x8f\x61\x90\xa4\x40\xc4\x62\xf4\x82\x12\x02\x7e\xc8\x20\xad\xdd\x21\xf8\x96\x4b\x39\x48\x63\x1a\x19\x61\x7c\xf8\x8e\x08\x44\xf8\x30\x8d\x2a\xc4\x95\x8b\xfc\xbc\xa0\x60\x52\x0c\x1b\xa6\x31\x50\xbc\xba\xfb\xed\x00\x8d\x30\x44\xa5\x0f\x32\xd7\x7d\x1b\xa2\xb5\xfa\x06\x5c\xe0\x1a\x29\xc9\x3a\x0e\x27\xe5\x02\xe9\x26\x70\x6b\x69\x14\x00\x14\x96\x56\xc4\x98\x0b\x9f\x53\x66\x90\x55\xa7\x18\x49\x42\x7d\xd4\x0c\x3a\x4a\xb9\xa5\x35\xed\x63\x1a\x81\x11\x72\x41\xdb\x9a\x57\x02\xb1\x1d\x34\x4e\x91\x00\x08\xe3\x68\x60\xac\x87\x69\x94\x23\xaa\xb5\xd8\xd0\x60\xd4\x37\xb4\x53\x68\xb2\x01\x97\x8e\xda\x50\xa6\xeb\x05\xb8\x2b\x2e\x0e\x49\x9d\xcf\x4d\xb9\x42\x82\xf2\x36\xe9\x94\x72\x83\x88\x14\xdd\xd7\x0c\x32\xda\xce\x66\xa1\x98\xe8\x90\x38\x22\xca\x4f\x9c\x9a\x06\xed\xd5\x7e\x11\x80\x0a\x86\x00\xbb\x0d\xd1\xe0\x5b\x00\x0a\xb6\x56\xa0\x31\x0a\xbc\xc3\x00\x71\xa1\x0a\x41\x91\xf7\xfa\x85\x67\xfa\xf6\x70\x81\xba\xa0\x04\x51\x6a\x85\x5e\x88\x7a\xad\x80\x32\x1b\x72\x6c\xd1\x18\x15\x08\x43\xf7\x29\xa2\xd8\xe9\x9f\x86\x04\x2a\xcd\x87\x57\x2d\xcd\xd8\x00\x0c\x55\x3e\x60\xdc\xd0\x34\x62\x84\xba\x00\x04\x08\xa1\x76\xd8\x1f\xeb\x66\xe5\x01\x8b\x0e\xe9\x94\x81\x7d\x23\x36\x4c\x2d\x58\xb3\xee\x22\x14\xf5\xf1\x4b\xf7\x21\xe1\x56\x7d\x83\x27\x22\xc9\x66\x51\x84\x6a\x35\x48\xb3\x91\x08\xb3\x59\x14\x21\x46\x5b\x25\xc0\x88\x6b\x1a\xd1\x48\x72\xa7\x04\x30\x55\x75\xd3\x7a\x2c\xaa\x63\xc6\xda\x0a\x04\xa3\xb2\x0e\xaf\x2a\xc4\x14\x6d\xd3\xa8\xd6\x48\x09\x5b\x85\xd6\x42\x74\x48\x60\xe1\x88\x9f\x61\x35\x4d\x23\x65\x58\x1d\x47\xd6\x88\x40\x53\x86\x68\x9b\x6f\x4f\x1b\x1a\x05\xc7\xde\x45\x70\x95\x41\xca\x74\xdb\xb1\xd5\xdc\x3a\x28\xc9\xb5\xa7\xfa\x15\x1a\xad\x11\x67\xa4\x4d\x63\xda\x20\xcd\xb8\xef\x44\x97\x64\xcd\xb4\x67\x71\x4d\xb3\x0d\xf6\xfa\x5b\x19\x44\xe9\x0e\xda\xe6\xdb\xd3\x86\x66\x3b\xe1\xf8\xae\x31\xf8\x29\xdd\x86\x6c\xb5\xb7\x85\x52\x34\x92\x8c\x52\xa7\x7a\x6b\x44\x32\x44\x23\x80\xc5\x8c\xe9\x22\x92\x01\x5a\xeb\xdb\xbf\xd7\xab\x84\x97\x49\x9a\x9e\x14\x76\x3d\x33\xc8\xf2\xec\x9f\x71\x91\x0f\x25\xfd\xdc\x7b\xac\xd0\x11\xd9\x34\x3b\x96\x63\x3f\x20\xa5\xe6\xa7\x7a\x39\xf5\xfb\x2c\xbd\x6d\x5e\x1b\x1f\x9b\x4c\xd3\x6e\xcf\xe7\x92\x11\xf6\x5a\xfc\xe9\x1f\xf1\x73\x3d\x7c\x30\xc6\xd7\xef\x92\x45\x75\xed\x4e\x76\x48\xdd\x56\x84\x72\x75\xe1\xae\xc0\xdf\x77\x0c\xe3\xd6\x15\xf2\xed\xae\xfb\x1d\x25\xc2\x5d\xd4\x1a\xdc\x44\xc5\x55\x92\x9d\xa4\xf1\x65\x35\x1d\xcd\xa3\x74\x3e\x3e\x09\xea\xb4\xe6\x60\xf9\xf3\xe8\xf1\x88\x4e\x82\xfe\xcd\x3f\x4d\x8a\xd9\xdb\xab\x7a\x83\x8a\x6f\xaa\xbf\xfd\xd5\xdd\xe7\xe2\x65\xef\x3a\xb6\x77\x0a\x85\x81\x60\xb5\x38\xfe\x7c\x93\x66\x65\x10\x06\xd7\x55\xb5\x9c\x3e\x7e\xfc\xee\xdd\x3b\xf4\x8e\xa1\xbc\xb8\x7a\x0c\x72\xfb\x18\xca\xdd\xf9\xd0\x7e\xfb\xb8\xae\x17\x04\xbb\x55\x2d\xdd\x71\x4b\x51\x93\xde\xdf\x5e\x58\x77\x2b\xe7\x48\x51\xbb\x86\x11\xc2\xb4\x95\x94\x09\x70\x1a\x4f\xa9\x06\xc4\x0d\x13\x2b\x3c\xc1\xe0\xef\x12\xa6\x0c\x37\x23\x70\xd2\xa8\xd5\x60\x96\xae\x05\x97\xc2\xd2\x31\x22\xda\xf8\x72\xa4\x75\xc7\x6d\x39\x44\x22\xec\x16\x8c\x43\x02\x30\x04\x2c\x8e\x18\x11\x8a\x28\xb5\x70\x34\x64\x48\x28\x6b\xea\xc4\xc8\xae\x6b\x2b\x89\x89\x08\x25\x62\xdc\x48\x3b\x87\x4f\x05\xd2\x18\xe6\x38\x11\xa1\x41\x84\x32\x40\x55\x62\xc4\x00\x3a\x80\x12\x12\x21\xa1\x48\x32\xb7\x38\x4e\x90\xd2\x60\x5e\x81\x2a\x91\x30\x0e\xf2\x9e\x62\x44\x39\xe6\x8c\xf9\x95\x7e\xc1\x89\x35\x7c\x27\xe0\x18\x33\x22\x94\x0d\x48\x73\xa4\xb1\x5b\xa9\xc3\x88\x48\xad\x0d\xb5\xaf\x1b\x84\x5d\x45\x50\x8c\x14\xd8\x70\x5b\x0c\x63\x88\x32\xaf\xa4\x11\x11\x1c\x2b\xa8\x94\xd9\x80\xa7\xd5\x83\x1c\x09\xae\x5c\x03\x39\x46\x4a\x3a\x30\x78\x2a\x91\xe1\x44\x30\x4b\xe6\xe0\xfa\x5a\x32\xc1\x88\x08\x6b\x19\x43\xae\x10\x61\xce\x56\x13\x86\x6c\x0f\x80\x6a\x10\x21\xbe\x19\x44\x21\x29\xec\xca\x7f\x28\x08\xc2\xc6\x19\x14\xc0\x2e\xcc\x02\x84\x50\x50\xe0\x93\x83\x31\x12\x61\x65\x75\xbf\xa3\x12\xce\x31\x38\xd2\x00\x63\xa9\x68\xc8\x6e\xf1\x11\xb0\x9c\xb3\xf5\x50\x5f\x8d\xe7\x38\x43\xca\xad\x6b\x87\x1c\xfc\x79\x55\xc7\x7d\x90\x10\x5c\x61\x1f\x7f\x33\xc2\xf5\xcf\xad\x06\xda\x0a\x39\xb1\x01\x4e\x67\x8c\x11\xe6\x76\x05\x05\x50\x11\xb7\x46\x10\xac\x1b\x52\xca\x7a\x02\x40\x35\xda\x47\x7f\xa8\x40\x02\x73\x57\x04\x43\xc2\x07\x5c\x29\xb0\x99\x61\x4f\xc5\xbe\x71\x04\x44\xc2\xae\x9c\xd9\x88\x9f\x13\x59\x2b\x76\x20\x04\x96\x8c\x11\xf3\x2b\xa4\x84\x21\xc1\xac\xe5\x82\x26\x13\xed\xa0\x08\x81\xef\xa4\xeb\x88\x40\xdc\xaf\x10\x9e\x1a\x64\x28\x40\x69\x18\x55\x8a\x24\x75\xe0\x43\x23\x63\xe7\x05\xb1\xa1\x22\xa6\xdd\x12\x5a\x9b\x0a\x0c\x57\x0e\xe0\xb5\xc9\x14\x29\xe9\x80\x44\xab\x60\x62\x00\x8a\x9a\x5e\x2b\x88\x44\xca\x89\xce\xe8\xb4\xd5\x64\x90\x86\x5a\x5c\x36\xdd\x83\xef\x94\xf3\xce\x5a\xbc\x20\x18\x71\x86\x3d\xbc\xd9\x30\xce\x20\xac\x39\xe7\x30\x7f\x5a\x4c\x06\xe8\x04\x03\x09\xd4\xcd\x88\x00\x22\xb6\x80\x53\x58\x71\xa9\x87\xcf\x20\xa9\x39\x38\x40\x62\xd4\x1a\x6a\xf0\x98\x38\xf1\x4b\xa1\x8d\x5c\x10\x86\x98\xd0\x0e\x63\xb6\xa4\x48\xda\xc5\x5e\x3b\xe5\x4f\x39\x46\xc2\xc5\x47\x42\x8e\x30\x31\xd4\xea\x07\x26\xc1\x85\x26\x4e\x6b\x18\x81\xa5\x6d\xc6\x0e\x5d\xf5\xf7\xd1\xb7\x5c\x82\xcd\xb7\x4f\xec\x52\x9f\x72\x98\x88\x4b\xd0\x5c\xd4\x93\x0d\x33\x96\xff\xe0\xeb\x38\xb8\x6d\xd7\x09\xb8\x83\x8b\x5c\x20\x61\x55\x8b\x93\x02\xdf\x99\x53\x90\x78\x4e\x98\x27\x2b\xe6\xa4\x80\x0b\x40\xec\xb6\x7d\x4c\x22\x42\x7c\xc1\x1c\x19\x21\xb4\xa7\x0a\xe6\xc0\xdf\x29\xf8\xa7\xce\x83\xb0\x11\x7d\xee\x1a\x07\x2f\x13\xe1\xea\x03\xf8\xe9\x60\x11\x14\xac\x14\xf5\x54\x25\xe5\xa6\x15\x4c\xd7\x73\x8d\x08\x17\x63\x82\x26\xfb\xe9\xca\x34\xe2\xda\x90\xba\x7b\xd2\x0d\x37\xcc\x4b\xea\x84\xdc\xf1\x82\xd5\xb2\x6f\x84\x9b\x11\xc0\x38\x3b\x14\x16\xaf\x63\xed\x92\x0b\xb8\x42\x98\x7b\xbe\x6d\xa8\xa7\x5c\x21\x49\xdc\xa8\xb4\x5f\x86\x06\xc9\xba\x6d\x5a\xb8\x35\x60\xae\x01\x75\xd7\xd5\x71\xa1\xfd\x88\x40\xd5\xce\x1c\x30\xf0\x71\x9c\xde\xe1\x4d\xfe\x8b\x0d\x6d\xfb\xb4\x87\x36\x15\xf8\xe6\xd7\x5d\xba\x64\x41\x5d\x70\x8d\x1b\xb0\x33\xa2\x19\x11\x07\x77\xb9\x46\x9a\x7a\x0e\x09\xa4\x24\x67\x75\x2b\x84\x56\xcd\x58\x13\xc7\x22\xae\x11\x15\x5c\x34\x72\x81\x6b\x5e\x68\xe9\xd5\x1c\x47\x46\x69\x59\xf3\x82\xfb\x89\x02\x12\x47\xdc\x8c\xb7\x8c\x13\xc6\x53\xfd\x4c\x1a\x0d\x4b\x27\x88\x2d\x70\xd1\x26\x2e\x84\x54\x21\x21\x69\xc3\x24\xa9\xac\xff\x03\x64\xe9\x03\x47\xd0\x3c\x43\xea\x97\x35\x57\xca\xd7\x68\x8c\xd5\xb1\x80\xd5\x09\xf7\xae\x25\x0c\x95\xb1\x8a\xc5\xc6\x98\x7d\x32\x16\x34\xda\x38\xd6\x51\x6d\xe3\xb8\x35\x15\x5b\xb9\xb6\x71\x6e\xbf\xb6\x72\x6a\x51\xb7\xed\x16\x90\xa5\x77\x47\x81\xea\x12\xd1\x6c\x0c\x5e\x93\x9a\xda\x28\x56\x8c\xb8\x22\xad\x56\xd0\xfa\x65\xed\x53\xee\xa0\xc9\xd2\x4b\x3e\x41\xc4\x38\xa7\x96\x83\x9f\x69\xfd\x51\xa0\x72\x5a\xf3\x59\x23\xe9\x7c\x79\xbb\x4a\x2a\xbd\xcc\x19\x84\x95\x31\x9e\xaa\x74\x23\x46\x02\x3b\xbe\xb5\xa8\xa7\x02\x23\x2c\x9d\xe6\xb1\x64\x37\x79\x04\x06\x8f\xb5\x2e\x58\x48\x87\x14\xc0\x9e\x62\x5d\xbf\x4b\x7c\x8b\x4f\x05\x41\x1c\x3b\x2d\xc5\xc0\x96\xbb\x00\x90\x20\x48\x32\x46\x3c\x95\x12\x67\x91\x2c\x55\xb0\x86\x6f\x5c\xd5\x45\xb4\xc8\x94\x39\xad\x23\x08\x12\xc4\xae\x5c\xb9\x11\xc1\x75\xc1\x54\x89\x7a\x9c\x1a\xbf\x17\x1a\xe7\x75\x11\x8c\x35\x71\x2c\x12\x18\x29\xec\x74\x91\x95\x0b\x41\x3c\x95\x11\xcd\x6a\x19\xd2\xac\x99\x3c\xc6\xe5\xd1\x59\x89\xa3\x4e\xe2\xb8\x41\xdc\x58\x1d\xe6\xe2\x51\xce\xa1\x1a\x96\x4e\xeb\x43\x23\xac\xa8\x93\x4f\x0c\x35\x2a\xef\xd0\x42\xf3\xa8\x27\x73\xe2\xe4\xc8\x46\xfb\x24\xf1\x54\x66\x47\x82\x00\x8c\xd4\xc4\xc1\x48\xc0\x63\xd4\xe7\x6c\x52\x30\x12\x6e\xfe\x50\x8c\x14\xf7\x21\x10\x8a\x40\x0e\x2d\x95\x20\xa8\xd8\xe3\x1d\xe3\x31\x24\xa5\x80\x07\x7c\x11\x04\x11\x86\x8d\x27\xdb\xc1\x86\x97\xc1\xcc\xf8\x69\xc2\xc0\x3d\xad\xa9\xcc\xe5\x75\xd8\x25\x09\x1f\x37\x3b\x05\x2c\x2b\xdc\x68\x83\x35\x17\x8e\xa3\xd4\x2e\x5f\xd4\xac\x23\xc6\x0d\x15\xc5\x76\x71\xd3\x8f\x09\xa5\x44\x37\xad\xf0\xa6\x0a\x46\x5b\x38\x53\x00\x10\x8d\x37\x62\x44\x98\x2f\x98\x82\x05\xc7\xb5\x70\x89\x3a\xe9\x8b\x21\x85\x39\xf3\xa2\xc8\x9c\x3c\x00\xe3\x94\x11\x8d\x8c\x63\x1f\xac\xb2\x2b\x55\xbc\x47\x85\x11\xe1\x0e\x3d\x75\x5e\xd6\x30\x66\xa2\x96\x71\x52\xe7\xa2\x21\x53\x57\x67\x17\xdf\xfc\x1a\x27\x46\xc6\x5b\x13\xaa\x91\x31\x3e\x88\x44\x90\x10\xaa\xd6\x50\x42\x38\xc4\xdb\xa6\x4a\x84\x25\xa9\xc3\x35\x1b\x32\x47\x86\xfb\x64\x54\x82\xa8\xc7\x3b\x30\x22\x9e\x43\x76\xb5\xcf\xd9\x23\x4a\x91\xa1\xc2\x8f\x88\x41\x46\xcb\x5a\x02\x8c\x8f\x5b\x51\x83\x88\x6f\x32\xc8\x85\xaa\x33\xe3\x86\xa4\x13\xb4\x2d\x43\xc6\xeb\x01\x6a\x97\x4a\x1d\x93\x00\x62\x7a\x93\x4b\x15\xa2\x1e\x4b\x71\x86\x88\x37\x81\x40\x65\x5e\x49\x51\xa4\x18\xaf\x65\xa0\xc9\xd2\xe5\x14\xb1\x5a\x14\x15\x62\xc6\x3b\x00\x04\x19\x8e\xeb\x97\x25\x26\xc6\x53\x25\xa7\x75\x2b\x0c\xc6\xde\x24\x11\xc4\x38\xab\xe5\x88\x18\x37\xb7\x39\xc0\x2a\x5f\xb0\x46\x42\x39\xb4\x09\xb8\x5a\xf8\x19\x0f\x63\x42\xfd\xdc\xc6\xc8\x28\x27\x1a\xd4\x00\x8e\x15\xf5\xcb\x44\xd7\x6a\x5c\x33\x6f\x5b\x09\x22\xca\xd4\x92\x48\xa9\x68\xb5\x82\xd4\xa2\x28\x89\x13\x50\x9b\x13\xeb\x0d\x23\x46\x86\x7b\x0b\x4f\x40\x8d\xd7\xf2\x49\xb4\x53\x68\xa7\x2e\x7b\x99\xd6\x7a\xbc\x36\x8c\x00\xdd\x74\x2d\x89\xc2\x4f\x6c\x60\xb2\xc0\x7d\xea\xa9\x85\x8a\x92\xf7\x5f\xe6\x88\x0a\x43\xea\xf9\x40\x54\x8d\xb9\xa4\x30\xb4\x6e\x1b\x51\xbc\x06\x4c\x78\x43\x16\xc4\xe5\xd6\x01\x8c\xd2\xcd\xac\x34\x8a\xab\x6d\x2a\xc7\x3e\x2b\xae\x4d\xd6\x20\x7e\x35\xe6\x22\x42\x9b\x66\x44\x38\xaf\xc1\x9c\xd3\x61\x4e\x0b\xd4\xda\x96\x23\x69\x70\xa3\x9a\x95\x47\x9a\x1c\x31\x0f\x8d\xa8\xcd\xe2\xab\x79\x31\x20\x9d\x3d\xb1\x05\xf5\x80\xd9\x96\xd8\x62\x24\xbc\x23\xd2\x16\x5b\xdc\xa4\x56\xb7\xc5\x16\x23\x49\xb5\xd9\x12\xdb\x4d\xfa\x7b\x5b\x6c\xb1\x5d\xd9\xef\x8b\x2d\x41\xb4\x76\x45\xdb\x62\x0b\xa6\x8c\x90\xbe\xd8\x12\xa4\x0d\x61\x7d\xb1\xa5\x88\x61\x41\xb6\xc4\x16\x14\xbd\x53\xd8\x6d\xb1\x85\x3e\x29\xd3\x13\x5b\x0a\x8e\x91\xd2\x7d\xb1\xa5\x36\xa5\x48\xf6\xc4\x96\x72\x44\xfd\x5a\x6d\x4b\x6c\x29\x47\xdc\xf9\x2f\x1d\xb1\x05\x15\x4b\x8d\xec\x89\x2d\x58\x2c\xc1\x75\x4f\x6c\x5b\xd4\xb6\xd8\xb6\x5f\xde\x88\x2d\xe5\xc8\xaa\xd2\xae\xd8\x42\xdb\xa8\x31\x7d\xb1\x05\xa5\x48\xbd\x03\xde\x92\x44\x86\xa8\x56\xa4\x4f\x85\x66\x12\xb6\x25\xb6\x14\x51\xd3\x38\x2c\x8d\xd8\x12\xa4\x6b\x61\x6e\x89\x2d\x41\x82\xd5\xde\x46\x4b\x6c\x61\x66\x0b\xda\x17\x5b\x90\x0b\xa2\xfb\x62\xbb\x91\xce\x1e\xb6\xc5\x88\x69\x2a\xb6\xb0\x2d\x46\x5c\x3a\x63\xd0\xc6\xb6\x18\x49\xa9\x49\x1f\xdb\xda\x15\x7e\xbe\x85\x6d\x09\xa2\xd2\xf3\xb9\x85\x6d\x41\x56\xb9\xe9\x63\x5b\x0a\xe2\xa7\xb7\xb0\x2d\x45\x5c\x51\xd9\xc3\xb6\x60\x7c\x30\x91\x3d\x6c\x0b\xdc\x37\x84\xf7\xb1\x2d\x65\x48\x6e\x80\x70\x8d\x6d\x29\xf8\xb3\x7e\xf2\x6c\xb0\x2d\x8c\x36\xaf\xe7\xdf\x06\xdb\x82\x28\x6a\x67\x72\x5b\xd8\x16\x04\xc6\x61\xd4\x36\xb6\x6d\x51\xdb\xd8\xd6\x92\x9d\xf1\x6a\x61\x5b\x9b\x54\x81\x75\x0f\xdb\xc2\x2c\xd1\x6e\xba\xb7\xb1\x2d\xb5\x8b\x0d\xa2\x87\x6d\x29\x43\x98\xbb\x80\x4d\x1b\xc4\x02\xdf\xbc\x79\xee\x92\xb1\x0b\x36\x74\xb0\x2d\x8c\x88\xdb\x96\xd1\xc6\xb6\x00\xe6\x8c\xda\xc2\xb6\x18\x19\xa6\x4d\x1f\xdb\x82\x5c\x38\xe3\xd5\xc6\xb6\x18\x09\xcc\xf1\x16\xb6\xc5\x36\xa9\xb3\x8f\x6d\x01\x7f\x62\xda\xc7\xb6\x1b\xe9\x74\x91\x04\x8f\xc0\xec\x52\x2a\xae\x6d\xab\x04\x0d\x23\x6b\xb2\xe6\xb5\x31\x30\x0e\xe5\x00\x95\xd7\x6e\x88\xa8\xfd\x14\xa0\x2a\x2d\x45\x3d\x31\x99\x77\x24\x09\x47\x78\x53\x04\x91\x3e\x92\xc3\x11\xf7\xc0\xd4\x86\x01\x9c\x1e\x20\x1c\x69\x55\x8b\x2d\x07\xec\xe3\x82\xa9\x02\x51\xd3\x44\x2e\x30\x73\x1a\x86\x08\x50\x04\x8d\x55\xc3\x4e\x49\x11\x70\x88\x49\xab\x15\xce\x23\x26\x12\x44\xaa\x36\x8c\x92\x39\x48\x48\x24\xd2\x8c\xd7\x81\x12\xa3\x1d\x18\x23\x0a\x61\x59\x8b\xad\x44\x8c\x39\xcb\x43\x14\x62\xd8\x21\x37\x60\x1c\x77\xf1\x13\xa2\xc0\x7f\xab\x3d\x4e\xa2\x3c\xdf\x36\x54\x98\x3c\xca\xed\xbb\xe8\xbc\xac\x01\xdc\x13\x4f\xa5\xd8\xad\x27\xc1\x2c\x71\xdb\x90\x6c\xdb\xf0\xc6\x93\xc1\x1a\x33\x4f\xe6\x7e\x59\x91\x1b\x30\x2c\xd8\xf3\xa2\xf1\x38\x3b\x54\x6a\x6a\xcb\xd3\x22\xdb\x18\x4d\x13\x8c\xf0\xf3\xcf\x8e\x08\xae\xbd\x6f\xe3\x41\x33\xe1\x88\x60\x1f\xaa\xe4\x1a\xec\x26\xa9\xc7\xda\xa9\x58\x3b\xdf\x5d\xc8\xd1\xc9\x85\xa8\x79\x61\x33\xee\x7d\x60\x8c\xf2\x26\xaa\x22\x8c\x33\xd9\x84\x21\x22\x69\xc3\x38\x69\x1a\x2a\x75\x7a\x75\x58\x3a\x8f\x5d\xe5\xba\x67\x49\x40\x83\x65\xb5\x23\x12\x1a\x84\x29\x38\xbb\x9a\x8f\x4e\x95\xa8\x67\x4f\x9b\xac\x08\x52\x5e\x9f\x13\x6a\x13\x9e\xa1\x45\x6d\xaa\x46\x92\xf8\xdc\xcc\x16\x99\x31\x24\xa8\x33\xdf\x8e\xcc\xb9\x4d\xf7\x64\x48\x03\x6f\xe5\xe8\x54\x81\x9d\xe2\x94\x12\xb7\x0b\xc1\x50\x6d\x34\x19\x29\x81\xb8\x24\x94\x10\xbf\xdf\x0a\x30\x02\x1b\xb5\x9a\xdc\xa2\x9e\x6a\x9b\xe3\x48\x1b\xb2\x1b\x60\x6d\xa0\x45\x76\x74\xc0\xbe\x7b\x8c\x64\x28\x12\x2e\x29\x0b\xa8\x98\xfa\x64\x19\x43\x90\x96\xaa\x8e\xf4\x49\xec\x66\xed\x0b\x03\xa0\x45\x62\xa1\x6c\x4e\xaf\x92\xcc\x6d\x7f\xd1\x1a\x09\x03\x93\xdc\xae\x04\x10\x09\x06\x9c\x8d\xb4\x44\x44\x1b\x43\xa9\xdd\x75\xc6\x34\xe7\x94\xda\x36\x2b\xe5\x23\x56\x30\x07\xbc\xdb\xa7\x0c\xe2\xc4\x59\xac\x16\x59\x69\x84\x19\x75\x48\x59\x20\xe3\xa2\x49\x1d\x2a\x45\xbc\xce\x7e\x69\x91\x89\x41\x8a\xba\x98\x90\x23\x73\x49\xb5\x25\x73\xa3\xb5\xd2\x50\xa1\x46\xd8\x08\x69\x33\x7d\x24\x22\x8c\x69\xaa\x47\xca\x00\x78\xa4\x58\x2a\x10\x77\xe5\x96\x0a\xda\x4d\x6e\x51\x81\xcd\xdc\x5b\x6f\x20\x7b\x6f\x50\x1b\x64\x23\x22\x6e\xd2\x61\xe6\x56\x91\x5b\xfc\x24\x02\x09\x67\x62\x46\x2f\x5a\xdc\x27\x18\x11\x0f\xee\x2d\xf7\x29\x97\xd8\xd0\xd0\x20\xc3\x19\x17\x52\xd1\xd1\x29\x14\x8d\x85\xc2\x0a\x44\x91\x31\xaa\x09\x11\x12\xd8\xcc\xa8\x54\x54\x38\x01\x15\x18\x53\x6a\x46\xc3\xd2\xfc\xf7\xd1\xb7\x44\x51\xbb\xfe\x4e\x34\xe2\x5e\x32\x5e\x10\x29\x6d\xd2\xc3\x36\x4d\x68\x6d\x13\x61\x29\xd7\x84\xd2\xd1\x29\x50\x89\xe0\x46\xd8\xd5\x1d\x66\x94\xa0\x42\x8c\x88\x54\x48\x12\x56\xef\x19\x74\x9a\x98\x28\x70\x80\xdb\x94\x53\xa2\xb8\xcd\x54\xe1\x14\x19\x51\xbf\xa5\x6d\x5a\x29\x08\x9f\xd3\x12\x23\xa2\x09\xa2\x8c\xd9\xfd\x9a\x3e\x3e\xfc\x02\x68\x9a\xd1\x4e\x1e\x12\x81\x01\xe0\x6c\x90\xd6\xe9\x89\x06\x53\xa7\x07\x69\x36\x63\xde\x07\xac\xa1\x29\xc4\xf5\x97\x31\xb7\xa0\x42\x60\xde\xb9\xfd\x80\x94\x3a\xff\x0f\xfa\x80\xb5\x6c\x93\x4e\x81\xa7\xd2\xf4\x5e\x73\x6c\xf6\xf9\xc6\x1d\x12\xe8\x62\x2f\xb3\x03\xa3\x01\x63\x84\x41\xd8\x0d\x98\x03\x43\xbc\x83\x69\x34\xa2\x8a\x18\xae\x48\x9b\x6c\x04\x52\x1a\xc4\xc3\x01\x5c\x41\x8c\xe0\x0c\xa8\x5c\x10\x69\xb8\xcd\x88\x65\x4c\x68\x2c\xe9\xe8\x05\x90\xa9\x50\x86\xbb\xcd\x22\x4a\x73\xa5\xf8\xe8\xd4\x92\xa9\x30\xc6\x26\x6a\x68\x41\x05\xd6\xda\x96\x41\x8c\xb1\x59\x18\x12\x19\x2a\xa5\x90\xd2\x51\x95\x16\xc2\xa6\x70\x61\x8c\x0d\x16\xc6\x95\x4c\x9a\x20\x2d\xe7\xb5\x1c\x6f\xc8\xa0\xf8\xb4\x73\xb7\x5f\xf8\x42\x18\xb3\x81\x61\xcc\x88\xc6\xc2\xb5\x43\x08\x62\xb8\xb0\x69\x64\x4a\x13\xad\xa1\x46\x05\xb8\x5d\x6a\x97\x6d\xae\x5d\x10\xd9\x31\x88\xb4\x49\xa7\x84\x58\x47\x44\x1a\xd5\x79\x13\x26\xb7\xd0\xd4\xc5\xee\xb9\x54\x92\x53\x4b\xe4\x8c\x12\x18\x46\x0e\x78\x4e\x61\x2e\x47\x2f\x2c\x59\x50\xcc\x3b\xcd\x72\x54\xc9\x95\xcd\xe8\xd6\x9a\x31\x29\x98\x2b\x42\x68\x25\xec\x92\x28\xb8\x99\x86\x78\xa2\xe9\x74\xb6\xa6\xb5\xf9\xe2\x68\x8a\x0b\x9b\xdd\x4c\x29\x25\x4c\xe8\xba\x26\xc6\x88\x72\x2c\x07\x65\x2c\x5c\xa1\x1c\x2b\x23\x81\x2a\x29\x93\x9c\xfb\xaa\x88\xc1\x4c\xb8\xfd\x40\x4a\x73\xc9\x5c\xc9\x4c\x19\x26\x6c\xbe\xa1\xd6\x92\x52\x2a\xa0\x64\x81\x0c\xd1\x6e\x17\xaa\x90\x82\x10\x6a\x46\xc4\xae\x53\x09\x42\x3b\x12\x35\x20\x7b\x20\x91\x82\x23\xc6\x05\x50\xb5\x56\x52\x10\x28\x14\xbc\x0c\xc1\xda\x34\x02\x38\x8b\x18\x9b\xda\x45\x9d\xc7\xd0\x90\x38\xbc\xe5\x79\xe2\x68\xd2\xd8\x54\x69\xc2\x38\x33\x46\x79\x32\x15\x0a\x33\xbb\x79\x8a\x60\x65\x34\xf3\x64\x40\xc6\x6e\x95\x51\x72\xa2\x18\xd4\x2e\x00\x9b\x2a\xc5\xec\xe6\x29\xa6\xb4\xe4\xbe\x36\xce\x8d\x71\xb9\xe0\x04\x4b\x46\xb8\xa7\x6a\xe1\x36\x4f\x51\x4d\xb9\xa1\x75\x7d\x8a\x6b\xed\x33\x94\xa8\xa1\x46\xf8\x92\x35\xc6\x46\xb8\x69\x42\x28\x53\xbe\x6b\x5a\x28\xea\x66\x89\xdd\xec\xe9\x88\x86\x68\x62\xc7\xc6\x60\x41\x85\x91\xae\x60\xce\x98\x6d\x85\x42\xd4\x80\xd8\x11\x57\xb0\x22\x9c\x68\x16\x52\xf0\x6b\x34\x65\x8c\x8d\x08\x97\xa0\x3c\x29\x93\x36\x0e\x4a\xb1\x24\x14\xa8\x2e\x5a\x4e\xdc\x36\x29\xc3\xb0\xd4\x50\xb0\xdd\x2b\xa2\xa9\x00\xaa\x16\x4a\x48\x09\x2d\x16\x96\xdf\x58\xb9\x5d\x52\x52\x68\xc1\xd5\x08\xa8\x4c\x4a\xe9\x77\x8a\x12\x01\xb3\x1d\x88\x8a\x29\xe2\x6c\x27\xb1\x56\xcb\x8c\x5e\x10\x41\x10\x23\x44\x31\x4b\x66\x8c\x30\x4d\x40\xdd\x83\x33\x83\x8d\xe4\xd2\x92\x35\x35\x42\x40\x19\x04\xfa\x61\x8d\x2f\xe3\x8c\x70\x66\x49\x86\xda\x25\x63\xae\xfd\x9e\x54\x22\x28\xa2\x58\x08\x61\xcb\x14\x82\xbb\x1d\x64\x40\x56\xe0\x00\xd9\x32\xa5\x36\x86\x09\xe0\x99\x00\x64\xc7\xed\xae\x7c\x8a\x34\x65\x8a\x11\xe2\xc8\x92\x31\xca\x2c\xd9\x08\xc9\x40\xfa\x4f\x89\x00\x2b\x4a\xa9\x53\x2c\x8a\xc1\x54\x1c\x11\x21\x11\x06\xa8\xa2\x61\x02\xdb\x0d\x19\x5c\x5b\x2a\x21\x54\x62\xb7\x37\x57\x30\x30\x2a\x50\x30\x48\x0d\xe6\x9a\xba\x53\x00\xa4\xa4\x1b\xb2\x11\x58\xb9\xf5\x50\x6d\x88\xf2\x54\x6e\xdf\x94\x92\x78\x13\x62\xdf\x54\x94\xdb\x37\x8d\x16\x46\x69\xe9\xc9\x94\x50\xe3\x0c\xa7\x66\xda\x48\x03\x0d\xf6\x7b\x2d\x98\x5b\xeb\x03\xe4\x07\x9c\x14\x48\x70\xcc\x61\x8c\x34\xc2\x44\x51\xc2\xcd\x08\xfa\xac\x38\x91\xd4\xa6\x21\x12\xac\x18\x37\xc2\xb1\x82\x61\xaa\xb8\x7d\x99\x50\x82\x41\xb6\x2d\x19\xbb\xad\xad\x84\x7a\x63\x01\xa3\x2c\x99\x5b\x6c\xf4\x61\x59\x02\x6e\x86\x5b\x5e\x75\x91\x32\x2b\xbc\x5a\xda\x0d\xec\x58\xbb\x05\x76\x2b\xb9\x98\x1b\x7b\x1e\x80\xf1\x87\x16\x00\x4d\x2a\xca\x8d\xdd\xb1\xad\xb5\xe2\x80\x8b\xa1\x3c\x02\x9d\xe0\xd6\x00\x33\x23\x99\x70\xd2\x25\x4d\xbd\x89\x88\x33\x49\x19\xb1\xfd\x61\x8d\x02\x27\xbe\x85\x06\x49\xaa\xb4\x56\x6d\x32\x91\x04\x09\xcd\xb8\x34\x60\xfd\x0d\x80\x20\x43\x47\x44\x52\x84\x19\xa6\xda\xb6\x95\x0b\xae\x05\x86\x8e\x03\x59\x71\xe1\x37\x87\x71\x70\x54\x00\xa1\x50\xab\xfc\xdd\xb6\x33\x43\xa8\xdd\xbe\x62\xa9\x00\xcb\xec\x16\x35\xa5\x18\x31\xca\x58\x2a\xc1\xd2\xee\xd6\xb2\x8b\x95\x84\x12\x5f\x30\xb1\xdb\x30\xec\x10\x62\x86\xa5\xa9\xc9\xcc\x60\xe1\x57\x55\xa9\xb0\x5b\xea\x2c\x99\x13\xb7\x0b\xc8\x21\x98\xd3\x16\x8d\x0b\x29\x89\x26\xae\x2e\x8e\x35\xb5\xa0\x83\x29\xc9\xa8\x31\x35\x15\xe6\x17\xa0\x02\x45\x08\x93\x75\x4d\xe0\xfd\x80\x20\x4b\x42\x05\x51\x75\x03\x88\xb2\x80\x9a\x23\x62\xb7\x99\x12\xcf\x07\x23\x24\xb7\x86\x47\x69\x26\x99\xd2\x9e\x2c\x05\x83\xb7\x19\xe2\x98\x2a\x63\x7c\xd9\xd8\xee\x2a\x05\x32\xe6\xd4\x48\xab\x0b\x25\x41\x46\x31\x65\xdc\xbe\x47\xcc\xb0\xb2\x5a\x56\x12\x24\x85\x21\x6e\x6f\x28\x18\x62\x6e\xf4\x88\x48\x8c\x94\xc1\x04\xdb\x7d\xa4\xc6\x0e\x23\xe8\x00\x0d\x9e\x35\xe7\x36\xa0\x8c\x39\xd6\x84\x58\xd5\xa2\x11\x30\x50\xdb\xb4\x4a\xad\x31\xe1\xd8\x4a\xb3\x42\x12\x0b\xec\xc8\x8a\x18\x63\x8c\x95\x0b\x9b\xa6\x6c\xb7\x95\x68\xd0\x7b\xd4\x58\x55\x06\xd6\x93\x31\x6e\x73\x4e\x25\x60\x11\xed\xa8\x4c\x62\x6b\xec\x34\x88\xa0\x82\x22\xec\x0c\xd4\x5c\x10\xaa\xdc\x46\x23\xcd\x35\x17\x8e\x4c\x01\x5d\xd8\xfd\x47\x8c\x08\x6c\x37\xc6\xc0\x14\x54\x58\x09\x57\x21\xe1\x5a\x50\xea\xa8\x30\x56\xd4\xe2\x1c\xa3\x94\x52\x16\x21\x08\x00\x06\x42\x12\x7b\x86\x82\xc2\x94\x30\xe3\x75\x17\xa7\x4c\x2a\xbb\x3f\x5a\x30\x2a\x28\xf5\x64\xac\x88\x24\xd6\x0c\x70\x2a\x41\xa1\x43\x17\xed\x11\x26\x5c\x39\x50\x80\xb5\x26\x06\xb8\x47\xed\x92\x93\xdb\xc4\xcf\x0c\x11\x54\x7a\x2a\x08\x85\x4d\xa3\x67\x8a\x33\xec\x94\x0c\x45\x92\x62\x4d\x1c\x80\x50\x44\x70\xaa\x9d\xba\x96\x8a\x70\x97\xae\x6b\x08\xe5\x5a\x58\xd5\xcc\x89\x10\xce\x9c\x09\x2e\x25\x27\xd2\x52\x19\xd7\xca\xa5\x44\x2b\xc1\x99\xb6\xb6\x16\xc8\x8c\x33\x65\x4d\xb0\x20\x12\x4b\xae\x3d\x99\x2a\x29\xec\xf1\x28\x54\x50\x60\x7b\x43\x66\xc2\x85\x7e\x29\xb7\x3b\xf6\x6c\x33\x98\x10\x1a\x06\x80\x21\xce\x0c\xe6\xca\xb5\x43\x0b\xc2\x88\xdd\xd0\xa2\x95\x8b\xc5\x02\x47\x39\xee\x90\xac\xae\x94\xcc\xee\x76\x30\x3e\x38\x0b\x42\xa4\xa5\x0b\x8a\xbb\xf8\x80\xd5\x15\x58\xd8\x2a\xea\xf5\x08\x2b\xc5\xc2\xf8\x3d\x45\x3e\x65\x1e\x84\x15\xe0\x89\xdb\x9c\x23\x04\x21\xc2\x7a\x32\x42\x83\x19\x52\x36\x37\x9f\x60\x8e\x25\x76\xb6\x42\x70\x17\x88\xd1\x9a\x48\x67\x31\xb7\xa0\x0f\x00\x22\xa3\x90\x22\x21\xfc\x87\x09\x97\xb0\x4b\x0c\xcc\x15\x1e\x6a\x24\x98\x5d\x06\x68\xd1\x9c\x8f\xe2\xed\xa2\xfb\x74\x80\xd4\x2a\x0d\xaa\xb0\xda\xc3\x56\x6c\xa8\x4f\x2d\x20\x60\xca\xfd\x5e\x28\xed\x16\x88\x08\x4c\x1f\xe7\xde\x18\x97\x84\x31\x22\x30\xa4\x8a\xfa\x63\x6b\x7c\x15\x80\xb4\x74\xed\x69\x78\xd6\x50\x70\xb1\x86\x48\xae\x71\x35\x09\x60\xa7\x18\xa4\x01\xc8\xc4\xae\x86\x53\x68\x88\x66\x76\xeb\x8a\x94\xce\xf9\x26\x76\x21\xcb\xc0\x18\x29\xe5\x1d\x3e\x66\x47\xb5\x4d\x3a\x25\x8c\xdb\x1d\x11\x9d\xd7\x38\x82\xc1\xa1\xdc\xba\x21\x1d\x12\x4c\x58\xbf\x97\xa2\xa6\x75\xda\x06\xa6\x83\x98\x41\x9a\xdd\x05\xe0\x13\x24\x1a\x1a\x46\x36\x55\xd0\x56\x61\xc0\x1d\x68\xb3\x7c\x60\x14\x1a\x0f\xcd\x05\x89\x95\x8f\x68\x11\x6c\x10\x11\xb2\x4d\x23\x04\x9c\x64\xbb\xfd\x41\x08\x2f\xb6\x35\x49\x21\x2a\xfc\x91\x3d\x35\x0d\xd4\x37\x37\xbc\x45\xa3\x84\x59\xf5\x6d\x14\xc7\xc6\x62\x48\x20\xc3\x87\x76\xcf\xaa\x90\x98\x4b\x50\xc8\xd8\x40\x9d\xc4\xd8\x00\x8c\x21\x2e\xc2\x54\x37\xb2\x45\x3a\x25\x18\x5c\x55\xdd\x7d\x8d\x38\xaf\x45\x82\xaf\xdb\x25\xb5\x1b\xe4\x69\x9d\x86\x03\x4d\x12\xad\xdd\x99\x32\x54\x68\x2d\xc0\x6a\x60\x7b\x34\x00\xf3\xe3\xc7\x0c\x98\x82\x11\x54\xad\xb4\xd2\xb8\xcb\xa2\x6d\x4e\x7e\x44\x60\xcf\x5f\x5b\x37\xf4\x48\x87\xbc\x7f\x62\xee\x8e\x03\x9e\x7f\x8d\xcc\xf8\x0f\x3d\x67\xf2\xd3\x24\xc5\xcf\xe3\xa2\x4a\x2e\x93\x79\x54\x0d\x9c\x92\x1a\x06\x5f\x5f\xa5\xc9\xcd\x4d\x5c\x6c\x3e\xd9\x3e\x1b\xce\x36\x39\x2c\xc2\x28\x4c\x1f\xd4\x4f\x46\x25\x3c\x0b\x2d\xd9\xbd\x91\xce\xee\xd6\x0f\xfc\xa9\x6e\x3e\xb9\xfe\x4d\x7c\x5b\x8e\x8b\x09\xba\xcc\x8b\x67\xd1\xfc\x7a\xdc\x49\xc0\x4f\xcf\xe2\xf3\x59\x71\x16\x9f\x43\x17\x52\xb4\x39\x2c\x6e\xf6\xf0\x61\xfb\x67\x98\xa2\xe6\x32\xad\xfa\x69\x9b\x10\x8e\xfd\x09\xc2\x49\x36\x4a\xdf\xbf\x4f\x91\xbf\x9f\x34\xf9\x67\x5c\x4c\x1e\x3d\x1a\xa7\xe8\x5d\x91\x54\xee\x53\x3c\x09\xd3\x59\x86\xca\x34\x99\xc7\xe3\x09\x2a\xe2\xb7\x71\x51\xba\xbf\x16\xab\x79\xdc\x6a\x60\x16\x16\xcd\x19\x75\x85\xeb\xea\xe4\xfd\xfb\x6c\x3d\x09\xd3\x49\x18\xb5\xce\xb9\xed\xd4\x67\xab\xb3\xad\xe9\xd2\x9f\x74\x7e\xa1\x79\x94\xa6\xe3\x68\x32\x75\x85\x84\x9d\x87\x7e\x77\xc1\x24\x74\xff\xce\xb6\x6b\xd8\xb5\x73\xa1\x82\xa6\xa5\xf6\x2a\xda\x49\x98\xae\x3f\xd5\x06\x87\x64\xff\x06\x87\x3f\x3f\x5d\x3c\x9b\xff\x53\x7e\xbf\x63\x83\x83\x3f\xaa\xf5\x6b\x7f\xb5\xf7\x7d\xfb\x18\x5a\xd2\xba\x75\xd4\xac\x3f\x36\x7d\x9e\x2f\x6f\x4f\xfc\xdd\x19\xf5\xa9\xe9\xcd\x81\xe8\xf5\x0d\xe2\xf5\xb1\xed\x7e\xc3\xc0\xae\xeb\x22\x5b\x57\x70\xc8\xd6\xf5\x3f\xf0\x65\xf0\x36\x29\x93\x8b\x24\x4d\xaa\xdb\xcd\xcd\x0e\xb8\x3e\xb0\x3b\x3c\x0b\xca\xeb\xfc\x9d\x55\x18\xa3\xeb\x64\x01\x95\x8f\x1c\xa5\x7f\xc3\x0b\xb5\xf7\x74\x6c\x6a\xf2\x57\xbc\xb8\x9b\x35\x93\xf9\x1b\xb7\x19\xc3\x96\x18\x57\xff\xb9\xa9\xb4\xd5\xec\x2d\x36\x0c\x5e\xab\x31\xd0\xb8\xa3\x6f\xf7\xaa\x97\x4c\xe6\xf9\x62\x33\x00\xc4\x6f\x17\xb9\xff\xd6\x83\xe1\x2b\xb5\xea\x42\xaf\x07\x8f\x21\xde\x79\x96\xf9\xbd\xa7\x00\x5f\xb6\x8f\x04\x07\xe6\x1e\xae\xa0\xb7\xb4\x62\xa3\x9f\xd3\xb8\x1a\xe5\xb3\x71\xa3\xa2\xab\x22\x9a\xbf\x89\x17\x61\x73\x14\xb8\x3b\x15\x3b\x8c\x66\xf3\x34\x2a\xcb\x91\x3b\x03\xb8\xdc\x1c\x64\x79\x67\xa7\x4d\xb1\x9a\x57\x79\x31\x76\xaa\xd1\x6b\xca\x07\x43\x47\x6f\xc7\xf6\xa4\xec\xb0\x9a\xb9\x31\x0b\x0b\xf7\x7b\x9c\xcd\xd2\xc9\xa3\x47\xbb\xe7\x7a\xfb\x74\xcd\xac\xad\x2e\xdb\xba\x71\x9a\x75\x55\x65\xad\x09\xa7\x59\xa3\x14\x43\xa7\x01\xb2\x8e\xba\xca\xb6\xd5\x55\x51\xab\xab\xf5\x64\xdd\x11\xd4\xfa\x38\x6f\x68\xfe\xec\x61\xf3\xe7\x7a\x1d\xa6\xb3\x72\x1c\xa1\x65\x91\x57\x79\x75\xbb\x8c\x43\xdf\xc3\xb3\xec\x3c\xbc\xeb\xb4\xf2\x21\x0e\xbb\x67\x85\x36\xed\x7c\x88\xc3\x56\x4b\xb6\xcf\x0f\x7d\x48\xd6\xeb\x49\xd8\xaf\xa6\x33\x8f\xc2\xb3\xe2\xbc\x3e\xad\xf4\x2a\xae\xbe\x7f\x97\xd5\x7c\xfc\x26\x2e\xe7\x45\xb2\x84\x71\xda\xf3\xfd\x24\x6c\x3d\x9c\x84\x51\xdb\xfc\xe6\xe1\x3e\x43\x9e\x84\xf9\xfd\x67\xb8\xce\xaf\x93\x74\xe1\x2f\x06\xc9\x07\xb6\xad\xd5\x47\xd9\x82\xa0\xaf\x8a\x22\xce\xe6\xb7\xdd\x13\x5e\xfb\xf6\x3a\xcc\x3e\xdd\xe6\xb6\x62\xbf\xee\xcf\x57\xd9\x8f\x44\xff\xe3\x7f\x0e\xeb\xfe\x79\x9e\x42\xa7\xdc\x75\x00\xde\x0e\x1c\x70\xa9\x73\xeb\x1a\x5f\xaf\x94\x09\xa8\xca\x0e\x9b\x46\x41\xe8\xef\xb8\x08\x4e\xba\x4f\xfc\x4e\x36\x15\xf2\x81\x0d\x6d\x3a\x64\x3b\x6f\x9d\x21\xdb\x97\xba\x89\x90\xe8\xe3\xaf\xb6\xf2\x66\xea\x36\x89\xa1\x59\xee\x6c\xde\xd6\xcd\xca\x56\xef\x17\xb1\x35\x70\xf7\xdd\x1c\xb2\x69\xf0\x3d\x57\x50\x6d\xdf\x66\x67\xad\xa9\xbd\xc0\xce\xde\x0c\xb0\xfb\x8c\xf9\xce\x21\xf2\xf7\xb4\xdb\x17\xff\xd1\xcd\x1e\xbe\x15\x8a\xf4\xef\xd4\x38\xf4\x22\xb1\x23\xae\x7d\x6a\x0d\xb2\xbc\xff\x82\xa7\xaf\xee\x80\x83\xeb\x8d\xfd\x17\xf7\xdf\xec\xe4\xb8\x5e\x5f\xf0\xc4\xdd\x3d\x23\xcc\x5f\x37\x72\xbe\x7d\x4a\xfe\x79\xeb\x16\xf0\xc1\x3b\x48\x3a\xf7\x8e\xd4\xd7\xaf\xed\xba\xdf\xae\xb9\xd8\xe9\xa8\xbb\x6f\xba\x2c\x6c\xcf\xdb\xb3\xd6\xfd\xd2\x61\xf0\x75\x99\xdb\xcb\x39\xbe\xbe\x4c\xd2\xca\xdd\xfa\xe1\xef\x30\xda\x5c\x3a\x63\xaf\x6d\x99\x46\xe5\x7c\x90\x6b\x65\x1c\x15\xf3\xeb\xa5\xd3\x48\x49\xdc\xb9\x49\xdd\x4a\xa0\xbf\xf5\xa5\xe1\x89\xbb\x10\x90\x1d\x7e\x8b\x7b\xab\x37\xcb\xfc\x5d\x5c\xf4\xef\x5c\x72\x2d\x78\x96\x35\xf7\x2d\x39\x82\x95\x12\x7b\x46\x7c\xd9\xba\x10\xec\xdb\xb8\x2c\x23\x77\xbd\x8e\x7b\x6d\x8b\xf0\x43\xe7\x3a\xc3\xaf\xf3\xec\xfb\x65\x9c\xb9\xbf\x4e\xd3\xbc\xf4\x37\xf3\x9c\x36\xd2\x57\x15\xab\x78\x78\x80\x69\x48\xc2\x9a\x41\xc1\xb6\x30\x10\x5e\x73\xa7\x66\xae\xb0\x7c\xa9\x6f\xd5\x7a\xe1\x5a\x8c\x10\x0a\xc2\xe0\xbb\x7c\xb4\xcc\xcb\x32\xb9\x48\xe3\x51\xd3\x2b\xcb\x49\x71\x90\x78\xb5\xee\x6d\x87\x06\x1f\x21\x98\xad\x2f\x2d\x60\xdb\xf3\x69\xd0\xdc\x5d\x64\x65\xe8\xec\xdc\x77\x4a\xb6\xee\xbd\x39\xe6\xde\xf1\x7b\x14\xaf\xbb\x4c\x29\x72\xc2\x1a\x38\xae\xb4\x2e\xdb\x53\xe7\xcd\xfe\xe2\x03\x6b\x3f\x58\x3b\x0f\xdf\x22\x48\x07\x6e\x45\xdd\xba\xb6\x67\x48\xcf\x1f\x00\x9d\x07\x6c\x1a\xc5\xf5\x08\x1d\x7a\x95\xda\x01\xae\xc2\x3d\xf6\xc2\x5e\xbf\xfa\x89\xd8\x78\xa8\xbb\xf1\x31\x1e\x85\x57\x73\xcb\x74\x55\x58\xc0\x59\x6b\xf4\x46\xbf\xef\xbc\x08\x29\x4a\xd3\xef\x1b\xed\xd1\xbb\x09\x29\x29\xbd\x4e\xb0\x0e\x4b\x54\x14\x11\x20\xb8\x8d\xb2\x01\xa5\x7a\x72\x71\x1b\xf4\xef\x46\xad\x6f\x87\x73\x58\xcf\xcb\x6e\xfb\xa2\x48\x7f\x37\xd2\xd5\x51\xd7\x1d\x0d\xe1\xcd\x4e\x70\x2a\xda\x1b\x9c\x2a\x76\x5d\x82\x92\xd5\x08\x32\xbc\x1b\xbe\xdc\xa8\x75\x27\x92\xbd\x13\xaa\xf7\xf4\x76\x69\x1f\x2d\xf2\x1b\x7f\xf9\x51\x92\x59\x0c\x5b\xc6\xc5\xdb\x64\x1e\x8f\x83\x45\x7e\x13\x4c\xc2\xcb\xbc\xb8\xb1\x97\x53\x26\x59\x5c\xec\x78\xd3\xde\x2a\x3c\x09\x81\x7f\xbd\x8b\x94\x50\x94\x26\x51\xe9\xde\x40\xd6\x56\x4e\x42\xc7\x8a\x78\xe1\xc7\x6f\xc7\x17\x6e\x30\x8e\xbe\x53\xe9\xa7\x34\x29\xab\x38\x8b\x8b\xd2\x5d\x88\xb4\xc8\x6f\x50\x43\x1a\xfb\x97\xa0\x35\xb3\xe6\xaf\xa6\x77\xf6\xd7\xd8\xd2\x9d\xeb\xd1\xbc\x82\xe6\x69\x1c\x15\xe3\xbb\x6f\xa2\x2a\x9a\xdb\x83\x37\xa6\xae\xf4\x79\xd8\x5c\xef\xe6\x28\x1e\xcf\x4c\xd6\xe1\xbb\x24\x4d\xbf\x89\xcb\xaa\xc8\x6f\x9f\xa5\x76\xc6\x7c\x50\x37\x50\x11\xdf\xe4\x6f\xe3\xf1\x64\x1d\xe6\x83\x0c\x1b\x07\x3d\x86\x22\x50\xec\xad\x09\x62\x7f\xb7\x2f\xb4\x02\x8f\xdb\x79\xc1\x68\xf3\xd6\xfb\xf7\x67\xe7\xcd\x09\x1b\xce\xa9\xec\x16\x6b\x5f\xe8\xdc\x85\x75\x15\x57\xe3\x2a\xac\x55\xdb\xe4\x8f\xf8\xd1\xa3\x71\x3c\x8b\x91\x03\x2b\xe3\x78\xf6\xc7\x87\x15\xba\x4c\xb2\xc5\x9f\x6e\xc7\xc1\xf3\x6f\x82\x70\xf3\x59\x1c\x02\x61\x32\x99\x4c\xc2\x18\x3c\xb6\x32\x7a\x1b\x4f\xc7\xf8\xff\x65\xef\xdd\xd7\xdb\xb6\xb1\xc5\xd1\xff\xf3\x14\x0c\xf7\x6c\x8f\x34\x85\x14\x49\xbe\x7b\x7e\x6a\x93\xda\xe9\x34\xd3\x34\xc9\x8e\xd3\xe9\xcc\xcf\x5b\x5f\x4a\x93\x90\xc4\x9a\x22\x55\x10\xb2\xe3\x71\x74\x9e\xe5\x3c\xcb\x79\xb2\xf3\xe1\x4a\x80\x04\xaf\xa2\x6c\xb7\x93\xee\xfd\x4d\x2c\x12\xc4\x65\x61\x61\x61\xdd\x17\xc0\x7d\xec\xc4\x57\xdd\x44\x2f\xf8\x17\xa6\x11\x25\x53\x0e\xc7\x12\x4a\x7d\x36\xe6\xd7\x23\x45\x2f\x28\x5f\x5e\x8c\x26\xdf\xa8\x3f\x34\xbc\x97\x72\x16\x5d\x22\x82\xcb\xe8\x09\x46\xb7\x77\x70\x4c\xc9\xaa\x85\xfa\x4b\x88\x62\x3f\xc6\x1d\xb1\xfd\xbc\x26\x57\x9f\x9d\xb0\xbe\xb3\x5c\x06\xb7\x14\x47\xc0\xc5\x1d\xab\x47\x7c\x72\x17\xd2\x63\x26\x2f\x55\x26\xe6\xe1\xf5\x1a\x60\x00\x27\x5d\x10\x76\xba\x6b\xd7\xc1\xee\xbc\xe3\xf0\x8d\xa7\xe7\xb1\x73\xc7\x8e\xa5\xb3\xee\xae\x09\x0c\x64\xf5\x2f\x04\x63\x98\x45\x96\xa6\x78\xc8\xf0\xe7\x44\xd7\x30\x33\x28\x84\x09\x14\xc8\xae\x9c\x07\xab\xd9\x0f\xf0\xb6\xd3\x95\xba\x17\xb6\x55\x61\x17\x38\x63\xb6\x93\xaf\x08\xf5\xd2\xd5\xca\x19\x94\x20\x1f\x8c\xc7\xb4\xa0\xd8\x13\x7f\xda\xe9\x0d\xc9\xe6\x74\x65\xf9\x11\x36\x9f\x17\xb8\xe3\x80\x61\xf7\x09\x9d\x80\xa0\x5f\x1d\x01\x51\xf2\x94\xcc\x3d\x4d\xd6\xb8\xb4\xad\xed\x21\x39\xe1\x61\x84\x16\xf4\x02\x79\x79\x0d\x43\x9c\x3a\x50\xce\x18\x3f\x89\x6f\x7c\x02\x7f\xd4\xe7\x25\xa4\xc9\x8e\x75\xef\x5c\x27\x86\x72\xdb\xf8\xb1\x8a\x21\xee\x84\xc0\x3e\xa5\x12\xe3\x07\x9f\xf0\x31\x9d\x10\xde\x58\x67\x0e\x86\x5d\xb2\x3e\xf2\xac\xd3\xa5\x4a\x8a\x55\x3c\x67\x82\x7f\x27\xe4\xd8\x92\xb7\x92\x74\xb5\x35\xa7\x5c\x4d\x11\x79\xb0\x07\x3d\xdf\xa8\xa3\x48\xa5\xd6\x91\x36\x02\xac\xd8\x0f\xc6\xaa\x4d\x00\xd2\xad\x30\x2a\x65\xce\x99\x02\x81\x7d\x85\xc6\x45\x6d\x48\x37\x78\x67\xa7\x83\xc6\x48\x1c\xf2\x64\x1e\x58\xa2\x42\x99\xee\x87\xcc\x51\x51\xa0\xad\x09\x15\x08\x29\x34\xf9\xf1\x0a\x01\xea\xae\x79\x67\xe1\x5a\xae\x8e\xad\x35\x42\x1d\xb6\xbe\xe1\x5f\xc3\xff\x93\xa6\x08\x7f\x0d\xbf\xfa\x8a\xad\xc4\xa1\x7a\xf9\xa7\x0a\x59\x08\x55\xb2\x10\x4e\x4e\xee\xd6\x4f\xc2\xff\x1e\x7d\x83\x39\x58\x3a\x4e\x17\x3c\x1d\x98\x6c\x27\x64\x65\x14\xf5\x9c\x0b\x3c\xe9\xae\xbb\xdd\x93\x92\x15\xc6\xdf\x98\xf4\x41\x3e\x8c\x3b\xb0\x4c\x31\x16\x77\x9c\x6e\xf7\x44\x99\x53\xce\x84\xf2\xf5\x94\xa5\x9a\x37\x80\xbb\x64\x11\x02\xc0\x30\x01\xb0\xb0\xbb\xc8\x5a\x41\x96\x1f\x5a\xd0\xb8\x18\xae\x13\xe5\xba\xcc\x94\x36\x31\xad\x6b\x54\xb4\x8b\xeb\xee\x09\xbc\xc0\x93\x71\x08\x60\x6b\x06\x13\xa7\x58\x69\x76\xf0\x3f\x1f\xe0\x4f\x6f\x7e\x30\xd7\x0a\xb2\x17\x91\x57\x9c\xfa\xe9\x08\xd8\xfe\xf5\x6d\x8f\x9c\xc7\x85\xcf\x6a\x6b\x1a\x8d\x20\xc0\x7e\x4e\x15\xd4\x29\xc1\x96\x36\xfa\x69\xe9\x39\x18\x7a\x42\x6a\xdf\x65\x52\xf6\x1e\xfb\x67\x9f\xfd\xa3\xd4\x1a\x1e\xe8\x45\x53\x0f\xf3\x0b\xec\xf2\x78\x0b\xa4\xd8\x0e\x32\xc6\x84\x23\x30\x92\x76\x8d\xdd\x4a\x25\xc2\x35\x39\xe6\x38\x2b\x68\xa6\x5f\xa5\x94\x76\xf5\x75\x77\x46\xc5\x81\x94\xe2\xa9\xec\xcf\x78\x91\x44\x0f\xa0\x28\x14\x04\xb4\x95\x49\x0f\xb2\x52\x6f\x32\xf9\x3d\x30\xe4\xc2\x32\xfd\x31\xaa\x23\xf7\x26\x96\xf0\x21\xb8\xb0\x99\xe0\x35\x29\x2c\x14\x3b\x2c\x95\xaa\xca\x0a\xc4\x4a\xc1\x86\xe3\x2a\xf9\x47\xad\xe3\xca\xd1\x4f\x60\x5f\x82\x7c\x51\x78\x05\x6f\x57\x4b\x22\xf2\xdc\x86\xd8\xf9\x24\x25\x18\x04\x1d\x2f\x0a\x83\x5b\x59\xe8\xd5\x9f\xd6\x12\x69\xd2\x77\x93\x90\x67\x40\x30\xbe\xc3\xce\xe5\xb9\xff\x6f\x78\x32\x02\x81\x1f\xc2\x37\x2b\x72\x34\x63\x42\x05\xf0\x1c\x92\x1e\x89\x18\xe7\xdb\x20\x9e\x47\x37\xa7\x2b\x14\x47\xe8\xe7\x39\x0c\xcf\xe9\xfe\xfa\xe1\x8c\x16\x2e\x5b\x61\x02\x9b\x93\x0b\xfb\x34\xf2\xe0\x8f\xf4\xd0\xf5\x02\x3f\xc4\xbd\x85\x83\xae\x20\xd5\x61\x93\x9f\x84\x28\x50\x09\x2a\x2e\x94\xa0\x9c\xdc\x32\x92\x31\xc4\x64\xcc\x38\x47\xac\x11\xaf\xed\x6e\xa9\x94\x34\x87\xc1\x32\x57\x3c\xa2\xe0\x62\xb4\xe3\x19\x99\x37\x44\x76\x17\xd0\xdd\xa2\x4c\x1b\xd5\xdc\x4b\x80\xda\x13\x20\x76\xe7\xe4\xe9\x10\xb0\x8d\x63\x75\x6d\xe9\x66\xa6\xcb\xda\xd2\xa2\xae\xe9\xaa\xb6\x55\x45\xa6\x84\xe5\xa1\x1c\xad\xc0\x2c\xfa\x01\x5b\x52\x9f\x3e\xea\x74\xbb\x6b\xe0\xf9\xde\x7b\xe8\x42\x9f\x30\x6f\x18\x65\xcb\xcb\x9a\x46\xe0\x14\x9a\x4b\x1b\x6c\x85\x4f\xe0\xce\x0e\x24\x83\x32\xc1\xa2\x43\xb1\xf1\x2d\xc5\x46\xce\x8e\xb2\xe5\x77\xd7\x20\x86\xf8\xc7\xc8\x53\x19\xc0\xee\x5d\x7a\xce\x12\xdd\xc3\x4e\xd8\xb9\x5b\x83\xa0\x0b\xee\xd6\x80\x20\x31\x3c\x81\xfd\x85\xbf\x80\x40\x0c\x70\xa2\xf5\x4f\x38\x32\x4d\xe0\xe1\xd3\xc3\xea\xdc\xd8\x91\x63\xfd\x74\x35\xc0\x90\x9d\xec\x60\xf2\x2a\xf2\xa0\x19\x94\x36\x80\x9b\x0a\x82\xd1\x25\x41\x23\x88\x76\x76\xb4\x9f\x7d\xcf\x8f\xdd\x28\x0c\x09\x8f\xc0\xb6\xe6\x55\x18\x43\x84\xeb\x0c\xa0\xef\x0d\x61\xa3\x21\xfb\xba\x43\x8b\x1b\x3b\x08\x3a\xd6\xff\x63\x2d\x11\xb4\xe8\x7d\xc2\xe6\xc3\x9b\x10\x5e\x96\x16\xd9\x3e\x9d\xfb\x81\xb7\xb3\xd3\xd1\x66\x37\x26\x0c\xf3\x8f\x2b\xec\x90\x29\xbc\xe5\x0f\x89\x3c\x48\xe4\x38\x72\xfb\x43\xc1\xf7\x53\xec\xed\xa4\x61\xc7\x09\x1b\x16\xdc\xfa\xcd\x3c\x0a\xe0\x07\xf8\x89\x32\x2e\x3a\x5c\xc4\x1f\x1d\x08\xee\x1c\x8c\x91\x7f\xb9\xc2\x30\xa6\x27\x67\x75\x89\x11\x64\xfc\x08\x99\xe4\x6b\x3f\xc6\xe4\xb9\x3b\x77\x90\xe3\x62\x88\x88\x10\xc5\xf8\x8a\x9c\xf1\xd5\x25\xaa\x73\xc8\xb4\xe7\x27\x57\x43\x8f\x19\xc4\x2f\xe9\xe3\x8e\x06\x37\x3e\x7d\x41\x5a\xb8\x78\x4c\x24\xaf\x8e\x46\x05\xba\x7d\x3c\x87\x21\x85\x99\x86\xa3\xf4\x38\x02\x2e\xb8\x31\xe2\xf0\x24\xa4\x72\x37\x13\xd0\x8c\xb2\x19\xa4\xf2\x4e\x1f\x47\xaf\xc9\x3d\x7b\xea\xc4\xb0\xd3\x1d\x8f\x43\xfd\x01\x65\xc3\xe1\x18\x7e\xfe\x8c\x2f\x06\x13\x39\x4d\x72\xfe\x3a\xb0\xbb\x66\x58\xf6\x62\xb9\x84\x0e\xca\xa0\x17\x9b\x74\x1f\xc1\x29\x82\xf1\x9c\x60\xa4\x14\x66\x33\x22\x9c\xb0\x5e\x0b\x08\x08\x81\xfb\x4e\x5b\xff\x09\x5c\x77\x33\x73\x48\x09\x51\x71\x05\x21\x2a\x08\x9c\x25\x55\xcb\xf7\xc2\x08\xfb\x2e\x8c\x9b\xfa\x64\xb5\xc5\xac\x86\xc5\xcc\xea\xb3\x5f\xe1\xec\xa5\xf3\xcc\x37\x33\xab\xd5\x12\x94\xee\x27\x46\xdc\xec\xfa\xad\x44\x05\xbf\xab\xf8\xaf\xf0\x96\x84\x47\x25\x2c\x53\xf2\x4b\x31\x0c\x65\xbd\x62\xd2\xde\x44\x7c\x8c\x3c\xeb\xe7\x11\x18\x1a\x1d\x83\x4c\x0c\x69\xde\xe4\x9a\x79\xd8\x68\xae\x47\x23\x3a\x57\xf8\x69\x49\x78\x9f\x5c\x87\xa1\xa1\xe6\x30\x64\x60\x2b\xe5\xa4\x34\xc3\x8b\xee\x43\x94\x54\xe9\x66\xfe\x47\x12\x35\x89\xa4\xdb\x37\x6c\x4f\x5f\x4e\x4b\x58\x1b\x9b\x7b\x00\x19\x16\x2d\x26\xdd\xca\xb2\x15\x4b\xd5\xa6\xab\x56\xe6\x55\x71\xdd\x59\xbb\x76\x21\x0f\x1d\x43\xee\xb3\x04\x6c\xdc\x80\xdf\xcd\x21\x23\x52\x8f\xcf\x5c\x93\x90\xc1\x39\x69\xad\x94\xd8\x2f\x74\x5e\xa1\x4a\x8f\x72\x82\x16\x4e\x7d\xb4\xa0\x17\x6b\xcf\x09\x20\xc2\x8f\x25\xef\xf2\xbb\xf9\xee\xe9\x8b\xef\x06\xa1\x99\x70\x7d\xfc\xe8\xa0\xd9\xc0\x06\xec\x8f\xa1\x0d\xec\x17\xae\x14\x91\xa3\x90\xe3\x9b\xea\xad\x22\x84\xea\x5c\xaf\x95\x23\xb0\x9f\x95\x86\x89\xb0\x1e\x4e\x23\xb4\x80\x5e\x4f\x88\x4d\x17\x12\xf7\xd3\xb0\xb3\x6e\x1c\x14\xfa\x21\xcb\xb8\x7c\x48\xe5\x6c\x61\x4e\xf3\xbe\x25\xab\x88\x5f\x85\xd3\x28\xe5\xc3\x20\xc8\xcf\x1c\x3a\xcc\x6c\x74\x19\x79\xb7\xd2\xfc\x44\x69\xdf\x00\x0c\x58\xb6\xe6\x32\xb9\x92\x91\xba\x7d\x65\x80\xbd\xc4\x97\x52\x8c\xd0\xcc\x5e\xa8\xd0\xdd\x12\xa3\xa1\x18\xa6\x82\xdd\x70\xbf\xa2\x73\x4c\x05\x32\x55\xbc\x74\x0a\xd3\x6d\x2f\x9c\x0d\xf2\x98\x96\x9d\xe0\x50\x75\x3d\x8a\x7e\x5d\x8e\x2a\x2b\x5f\x34\x38\x51\xd7\x7e\x70\xc1\x4f\x25\x03\x0a\x3b\x35\x1e\x61\xdf\x50\xb4\x8a\xd9\xc3\x09\xb8\x68\xe2\x19\x52\xcd\x47\x80\x9f\x50\x5b\xbb\x3e\x34\x1f\x61\x7e\xa6\x69\x0f\x09\xd9\xc0\xce\x25\xa3\x82\x66\x0d\x10\xf9\x67\x2f\x71\xdc\xe8\x0d\xed\xc4\x5f\xa7\x81\xcb\x43\x96\xf2\xe4\x79\x1c\x54\x70\x38\x30\x34\xc9\xd9\x8f\x0d\xa0\xef\xe8\xce\x45\x53\xaa\x65\xa0\xd0\x39\xa8\x0b\x80\x53\x27\x74\x61\xd0\xea\x9a\xb3\x0d\x76\x85\x4e\xcc\xa8\x28\x6b\xf8\x70\x08\x46\x35\x54\x6d\x89\x24\x90\xf1\x07\x08\x28\x2b\xd1\xf3\xe3\x1e\xbd\x28\x7a\xec\xb5\x1f\x5e\x47\xae\x23\x3c\x10\xa6\xc2\x5f\xa1\x16\x97\x61\xbe\xdb\x1b\x44\xb2\x64\x55\x5d\x89\x33\xc0\xba\x6e\x3c\x8b\x3a\x2d\xcf\x77\x82\x68\x66\x92\xa1\x0a\x1c\x64\xef\x4d\x78\x9a\xbf\x3e\x73\xbf\xfa\xd9\xc7\x25\xc2\x53\x1d\x57\x58\x85\x8d\xbd\xf1\xf1\xbc\xa7\x42\xc3\x36\x38\x17\x02\xdb\xe2\x4d\x08\x5f\x01\xec\x6c\x78\xc2\xf0\x90\x76\x97\x75\x95\x1d\x1a\xd9\x99\x6a\x94\x53\x9e\x70\xed\x52\x49\x89\x79\x13\xc9\x03\xd9\x69\x4d\xbe\xd6\x86\x1e\xf1\xf4\xc4\xab\x91\x09\xc5\xa0\xa0\xcc\xe0\x90\x83\x47\x31\x71\xec\x67\xdc\x31\xeb\x9a\x0e\xf2\x64\xca\x7c\x0d\x7b\x91\xaf\x53\x0d\x58\xb3\x33\x50\x0e\x6b\xf8\x09\xba\x2b\x0c\x6b\xc0\x9a\x5a\x7b\x8e\xd9\x3f\x47\x1b\x42\x3e\x01\xed\x43\x00\xb3\xcc\xf1\x4b\x3b\x23\x7a\x5c\x89\x24\xc1\x29\xb2\xcb\x2c\x17\x4b\x88\x16\x0e\xa7\xcb\xb4\x7e\x0b\x6b\xfe\x86\x6d\xd3\x82\x7b\x8b\x36\xa5\xba\x2a\x79\xd3\xc8\x2e\x2a\x24\xbb\x61\x1e\xd9\xc5\x89\x8f\x96\xe2\x8d\xc5\x67\x79\x62\xbf\x40\xd0\xba\x8d\x56\x56\xbc\x42\xf0\x1b\x1b\x24\x40\x39\x79\x3a\x04\x72\xa5\xe4\x47\xa2\x4e\xa3\x08\xa3\x2a\xe0\xd2\xca\x48\x15\xb4\x4f\x87\xdd\x35\xe0\x78\x58\xe3\x1b\xa1\x78\x0b\x3d\xc6\x7f\x74\x34\x28\xf7\xfb\x7d\xe6\x19\x23\x35\xc9\x6b\x31\x75\x75\x0c\x4a\xb1\x2f\x20\x6d\x3e\x49\xcc\xf0\x4f\xd2\x63\xab\x5d\x1b\xf4\xe8\xf2\x43\x1b\xe0\xec\x5b\x6d\xe2\x83\x8c\x86\x10\x55\xb9\xdd\xe2\x55\xf0\xcc\x71\x83\x67\xc2\xcf\xef\xb1\x48\xd4\x7f\xfb\x3b\xfa\x75\x2f\x1a\x7e\x32\xde\x66\x26\x33\xb5\xb3\x5c\xf6\xae\x7d\x78\x63\xd7\x67\x16\x39\x01\x4c\x2e\xf1\xe6\x62\x62\x36\xe2\x61\x3e\x34\x28\x04\x2d\xeb\x43\x74\x05\xc3\x38\x3f\x58\xb8\x42\x08\x46\xc9\x94\xdd\x28\xc4\x54\x99\x5b\x6f\xce\x47\xc0\x86\x8b\x25\xbe\xed\xd1\x46\x0d\xa0\xa9\x74\xd4\x2e\x44\x35\xa8\x8e\x54\xa8\xfe\x0c\x03\x37\x5a\x40\x0b\x47\xd6\x8b\xd3\xd7\x71\x06\x9c\x15\x99\xf5\x4a\xf3\xae\x26\x37\x9b\x67\xbd\x34\xa2\x02\xf9\x8f\x4c\xdb\x72\x10\xb4\xc2\x08\x5b\x90\x59\xf7\x2d\x3f\xb4\xc8\x41\xb7\x4e\xe9\x31\xb5\xdc\x60\x15\x63\x88\xfa\xd6\xcf\xd0\x8a\x31\x8a\xc2\x59\x70\x6b\xc1\xd0\x8d\x56\xc8\x99\x41\x0b\xcf\xa1\xb5\x8a\xa1\x15\x4d\x59\x6f\x7e\x68\x2d\x51\xe4\xad\x98\x77\x0b\x0c\xaf\x7d\x14\x85\x74\x82\xd6\x34\x42\xb4\xf9\x25\x8c\xb1\x15\x43\x77\x85\x7c\x7c\x6b\x2d\x11\xa1\x46\x2e\x8c\xfb\xe9\xa9\x6f\x0b\x96\x52\xe2\x6f\x06\xce\xc0\x4f\x94\xef\x5e\xe4\xc6\xbd\xc0\x0f\xaf\x72\x41\x2c\xbe\x72\xb8\x99\xe0\x40\x54\xf9\x4a\x44\x66\xfb\xf4\xed\x9b\xf3\x9f\x5e\x7f\x3c\x7b\x7b\x7a\xfe\xf1\xa7\xf7\xaf\x25\x6b\x62\x53\x1a\xc9\x6f\x46\xbc\x08\x6c\x59\x8c\x0c\xc1\x80\x5e\xcf\xd1\x12\x86\x10\x59\x61\x84\xe0\x14\x22\xc4\xeb\xa2\xed\x11\xf1\x1c\xcd\xa8\xcc\xf4\xf1\x32\x70\xf4\xe9\xbd\x87\x8e\x47\xf7\xc1\x8b\x5c\x4a\xe6\x1d\x21\xdf\x67\x20\x9e\xb3\x11\x66\x58\x04\xd0\x41\x61\xbb\xc0\x78\xfd\xf2\xc5\xfb\x37\x29\x90\xf0\xdb\x43\xe0\x4f\x2f\x84\xf8\x26\x42\x57\x7e\x38\x7b\x96\x20\x5e\xcf\x71\x83\xb8\x1d\x70\x7d\x17\x05\x41\x74\x43\x01\x36\x5b\xf9\xdc\xc9\xa7\x22\xa0\xb6\x23\xaa\x57\x71\x6e\xa9\x9c\xf0\xc1\x86\xe1\x75\x4d\xde\xcd\x7c\x79\x3f\x5c\xf2\x87\x64\x46\x81\x1f\x3f\x1a\xe5\xfc\xe1\xaf\xcf\xde\x2c\xfc\x9f\x72\x8a\x22\xf2\x50\x51\x3e\x57\xf9\xaf\x8c\x16\x72\xe7\xd0\xbd\xa2\xae\x56\x52\x41\x67\x13\xe6\xd0\x06\xf6\x15\xbc\x5d\x22\x18\xc7\xa7\x5c\x13\xf7\x3c\x0a\x3d\x18\x40\x0c\x85\x5e\x3f\x0a\xf9\x9f\xab\x58\xd1\xe6\x2b\x61\x6c\xf9\x12\xb8\xd4\xda\x13\x30\x3b\x6e\xd0\x23\x10\xe5\xaa\xfa\xe1\x28\x27\x59\x01\x76\x2e\x57\x81\x83\x4c\x31\x75\x4a\xe0\xdc\xa8\x66\x84\xdb\x96\x2e\x73\x41\x82\x78\xb6\x64\xbe\x1c\x1e\x90\x97\x9f\x5e\x59\x6f\xfe\x81\x47\x3f\xa6\x9a\x57\x56\x35\x16\xae\x0a\xb1\x94\x0b\x0d\x96\xe4\xe5\x10\x5e\x13\xd9\x4d\xe4\x68\xdb\x73\xfb\x84\x5c\x52\x8f\x02\x5b\xfa\xd9\xbd\x3a\x4b\x02\xf4\x52\x49\x12\x64\x04\xe3\x24\x17\x64\xb9\x70\x4c\xcf\x31\x91\xa1\x0f\x14\x99\x7e\x5f\xa0\x0c\xb8\xe0\xc0\x9e\x00\x7b\xe1\x84\xce\x8c\x82\xa0\xa1\x99\x22\x7b\x11\x31\x86\xc6\xce\xae\x8f\x0f\xda\xd4\x16\x9c\x19\x47\x0d\x40\x6e\x30\x8a\x1a\xc6\x6a\x84\x70\x3b\xa8\xd7\x88\x33\xb2\x85\x3f\xe9\x32\xba\x86\xa8\xb7\x80\xe1\x4a\xf6\xcc\x2c\xeb\xdc\x65\x34\x94\xd4\xed\xf9\x15\xbc\xbd\x8c\x1c\xe4\xbd\x70\x5d\xc8\xdc\x77\xe3\xd5\x25\xf9\x32\x4e\x59\xfe\x32\x18\xb1\x3f\x91\x39\x91\x92\xd8\x4d\x73\x18\xe6\x30\x6d\x8e\x48\x7d\x29\xdc\x51\x13\x85\x99\x1d\x44\xb3\x88\x06\xb6\x31\xd2\xc9\xe9\xea\x46\xa1\x9a\x45\xf0\xc6\xc8\x9f\xcd\xea\x8b\x23\x96\xf5\x63\x84\xa0\x36\x54\x05\xce\xb8\xd2\x8c\xe8\xee\xd5\x9e\x8e\x81\x21\xb4\x51\x24\xf2\x5c\x65\xb3\xdc\x98\xbe\x74\x52\x1f\x92\x99\xd0\x5b\x52\xb2\x68\x97\xe2\x96\xec\x0d\x37\x25\x64\x45\xb4\xe7\x88\x2a\x9e\x91\x8f\xa1\xe5\xb8\x01\xb3\x7b\x89\x89\xc8\x9a\xc0\x8d\x29\x8f\x65\xbd\xf4\x7c\xdc\x88\x98\x58\xd6\x3f\x7c\x78\x53\x89\x42\x14\x72\xa5\xc6\x57\xe5\x74\x98\xc2\x91\xa9\x4b\xc1\x85\x7d\x0e\x5d\x04\xb1\x0e\xdb\xc6\x20\xd9\x1c\x7b\x92\xa4\x10\xfb\xc0\x9e\xd2\x80\x81\x94\x51\xf2\x60\x02\xc4\xf1\x56\x90\xa1\x1e\xbe\x31\xef\x6e\xca\x7d\x31\xfc\x3a\x52\x31\xea\x1c\x47\x4b\x6b\x15\x0b\xe7\x06\x33\xd8\x4d\x5e\x5c\xea\x14\x0a\x57\x9b\xe3\x02\x56\xe2\x65\x91\xdf\x5b\xb6\xbf\xa2\xb6\x8a\x1e\x04\xca\x1a\xdc\xc5\x1f\x58\xd6\x29\x9b\x9b\xc5\x40\x5f\xd4\x6f\x1e\xbc\xf4\xa1\xf3\x95\x19\xea\x7f\xaa\x96\x97\xfe\x71\xe3\x84\xd8\xc2\x91\x15\xcb\x3d\x62\x4a\x8e\x17\xa7\xaf\x2d\x1c\x5d\xc1\xf0\x1b\xeb\x03\xf9\x7d\xe3\x07\x01\x99\x2b\xfd\x28\x5a\xe1\x7e\xd3\x19\x57\x6b\x30\x00\xf6\x2a\xa8\x01\x78\x4d\xf7\x90\x78\x09\x54\x80\x88\xe8\x41\xc9\x06\x96\x8f\xe4\x29\x5f\xb4\xd4\x45\x7a\x98\x9c\x24\x99\x34\x4b\x39\x50\x9a\x83\x9b\x98\xd7\x6b\x71\xf2\x2a\xed\x73\x35\x54\xe0\xc0\xa8\xba\xf2\xa6\x24\x82\xf7\x7f\x2a\xcc\x46\x1b\xaf\xa0\xa4\x41\x39\xf1\xa8\x48\xd0\xeb\xdf\x2f\xf7\x45\x87\x57\xba\xd7\x61\x9b\x44\xf8\xa7\x38\x4f\x43\xa3\x4f\xf4\x3f\x8b\xfa\xae\x62\xf8\xe0\xa4\x77\x15\xc3\x34\xcd\xfd\x43\x11\xd7\xb4\xeb\x6f\x16\x79\xcd\xde\xbf\xbb\x06\xef\xdf\x91\xe0\xbb\x78\x7e\xc7\xe1\xc4\xe8\xf4\x5b\x34\x27\xcb\xfa\x29\x77\xd3\xab\x6f\xfb\x03\x52\xe2\x14\x91\xf8\x03\x91\x61\x25\x7d\x4d\x46\xf0\xf0\x56\xcb\x80\xa6\x6c\xac\x25\x7c\x6c\x93\xc5\xce\x43\x6f\x03\xc9\xae\x81\xf5\x29\x9e\x62\x38\x48\x21\x7a\x32\xa1\x33\x01\x91\x2d\x02\x9d\xca\xf9\xf7\x0e\xf1\x1a\x94\xa6\xde\xd1\x49\xe9\x2d\x5a\xbe\x62\xcf\x44\xef\x5f\x6e\x59\xf6\x9f\xb8\x65\x19\x60\x1e\xfc\xa2\xe5\xd8\x4c\xef\xda\x3f\xe0\x3d\x5b\x41\x88\x49\x12\x43\x7a\x09\xae\x56\x90\x6c\x8e\x33\xb7\x6d\xae\x40\x53\xe1\x10\x54\x84\xe1\x96\xaf\xd1\x2c\x2d\xf8\xa3\xdd\xa4\x0a\xdd\xcd\xb6\x39\x00\x87\xe0\xa8\x52\xae\xba\x0a\xa6\xd9\x5d\xb0\x07\xf6\x4b\xed\xb3\xc2\xeb\x39\xe5\x9c\xa7\xad\xa3\xd0\x4d\x2f\xe5\x94\x37\x0d\x45\x18\xd5\x1c\xc1\x69\x0f\x47\x36\xb0\xe1\x6f\xe9\x5c\x6b\xae\x43\x03\xad\xc8\x79\x6f\x68\xcf\x4d\xac\xa7\x8f\xc1\x96\x1b\x46\x3c\x79\xb5\x1f\x85\x86\x08\xd2\x87\x31\xea\x9e\x1d\x7f\x7b\x74\xf5\xfd\x4f\xff\xca\x49\x04\x4f\xf8\x81\x15\x35\x67\xf0\xfc\xa8\xc6\xb8\x91\xa1\x21\x64\x62\x34\x01\x32\x63\x6e\x7d\x75\x6a\x7e\xbf\x43\x32\x87\x15\xb3\xb2\x34\xd7\xd3\xfe\x2b\x5a\xa1\x44\x6c\xb3\xe6\x4e\x6c\x5d\x42\x18\x5a\x8e\xe7\x41\xaf\x5f\x53\xd9\xf0\x61\x0e\x11\xb4\x6e\x9c\xd8\x72\x42\x8b\xa6\xe3\x22\xfd\xf8\x21\xd5\xb9\x29\xc3\xe4\xf5\x6b\xf4\x85\xcd\x09\xfa\xc9\x03\xf5\x8a\x26\x87\xf9\x3d\x81\x3a\x76\xae\x5b\x01\x75\xec\x5c\xdf\x2f\xa8\xd3\xf7\xcf\xa3\x05\x35\x01\x13\x9b\x6c\x1b\x70\xa6\x3d\xdd\x33\x52\xc7\x8f\x12\xcc\x6f\xa2\x1b\xae\x71\x0f\xe1\x4d\x39\x24\x6a\xc0\x58\xe8\xf1\x1d\x7c\x3f\x00\x66\xae\x35\xf5\x03\x05\xef\x15\x85\xe9\x24\xdb\xc0\x60\xd2\xd1\x86\x08\xbc\xbd\x87\x05\xfe\x6c\xbf\x35\x88\x35\x2f\xe2\x3a\x1e\x03\x33\xc4\xf2\x6f\xf5\x2e\x9d\xf2\xc4\x84\xf7\xc4\x09\xfd\xf6\xdb\x4f\x47\xff\x3c\x9b\x0d\xab\xc6\x9e\xcb\x0c\xe4\xc9\x02\x6d\x60\xbf\x5d\xe2\x19\x8a\x68\xba\xac\xb7\x3c\x59\x35\x4f\xad\xea\x5c\x52\x75\x41\x8d\xcf\x98\xe3\x78\x8d\x2f\x96\x28\x5a\xaa\x1f\x5c\xc1\x5b\x25\xc3\x57\x2a\x0f\x3c\xf3\x60\x49\xf2\xa8\xcb\xbf\xf2\xe2\xda\x8e\x44\xcf\x64\xd7\xb4\x88\x78\xe1\x5b\xa7\xbc\x9e\xb0\x18\xb5\x7d\x1e\x0d\x9f\x0c\x69\x8c\x8b\x1f\x81\xd1\x48\x4f\x9a\x2e\x53\xcf\x0b\x06\x54\x4e\x4f\x76\x45\x97\x43\xc6\x01\xf4\xff\xaa\x87\xca\x1f\x65\xa2\xca\x38\xf5\x62\x63\x35\xbe\x71\x0e\x9a\x84\x4f\xe7\x7a\x2a\x0c\xd4\xb0\xe5\x41\x2a\x05\x06\x03\x7a\xdf\x71\x83\x7e\x02\xf4\x3e\xb7\x5e\x1e\x01\x05\x6e\x04\x07\x26\x5a\xdd\x01\x65\x4a\xa6\xe8\x33\x39\xd6\x22\x0a\x79\xe7\xe5\x1d\x03\xe3\xd7\x7c\x96\x15\xa6\xa5\x14\x0e\x68\x75\xf5\xbc\xc6\xc2\x36\xd6\x9f\xea\xba\x36\x04\x2a\x7d\x4f\x4b\xd2\x55\x5b\x99\x5e\x8f\xa2\x5e\x15\x0e\xd9\xfd\x7b\x9a\x57\xf7\x3b\x76\xc4\x28\xb8\x86\x07\x44\x22\xf7\x9d\x1e\x53\xce\x68\x1b\x24\x66\xb9\xf2\x79\x42\xde\xb4\xb2\x59\x59\x11\x1d\xe2\x78\x02\x6c\x8b\xad\x66\xa4\xd5\xd0\x68\x12\x1c\xa3\xe8\x41\xf3\x95\x75\xb2\x49\x52\x4d\x85\x7b\x2b\x1e\x1b\x7d\x3d\xb5\x6f\xbc\xd4\x37\x74\xce\x6d\xf9\xca\x1b\xd4\x2c\xc7\x64\x84\x0a\xf5\x05\x8e\xea\x71\x7f\xb9\xf4\x8e\x57\xad\xb8\x57\x7a\x97\x41\xbb\x5d\xea\x7b\xc5\xeb\x67\x24\x69\x3b\x93\x8b\x49\xde\x5f\x6a\xa2\x7d\x73\xb8\x2c\x9d\xcd\xae\x72\xa4\x46\x60\xb4\x37\x31\xe2\x2c\x3f\xd9\x29\x18\xd4\x0d\x93\x3d\x92\xd7\x17\x48\x95\x49\xb9\x35\xa6\x99\x2a\x36\xb2\x64\xa0\x42\x53\x99\x2a\x79\x34\xa8\x06\x98\x93\x3c\xb5\x1c\x0b\x03\xda\x32\x8a\x45\x99\x03\xcd\x37\x75\xb1\x0a\xb0\xbf\xa4\xdc\xc7\x73\x04\x7f\x5b\xf9\x88\x65\x91\xb5\x91\x3f\x9b\x63\x43\x2a\x2f\x0e\x39\xc3\x9a\x92\x44\xa8\xba\xbb\x2a\xcd\xe2\x54\xd7\xc9\xd2\x2e\xf7\xde\x94\x29\x5b\x37\xf0\xe0\xd4\x5c\x95\x73\x35\xb6\xe5\x48\x92\x6c\xac\xbc\x4c\x4a\x55\xbc\xea\x8b\x4a\x1e\xad\x95\xa0\x22\x73\xd5\xd6\x45\x57\x71\x62\x87\x7b\xe0\x22\xe1\x20\x27\xdc\x48\xc0\x1f\xb2\x5c\x21\x75\xa4\xc1\xdc\xb4\xbf\xc3\x61\xc1\xf9\x00\x49\xcf\x1b\xc4\xef\xa7\x01\x47\x57\x72\x30\xc9\xa4\x57\x4e\x30\x89\x83\xe0\x30\x5b\xde\x86\x3d\xcb\x9b\x6d\xfa\xc6\xad\x8f\x91\x66\x64\x2b\x63\x1c\xf8\xdb\xdd\x64\x92\x26\x68\x99\xd1\xb1\xc9\x2d\x74\x68\xce\x7c\x42\x6b\xfc\x18\xbc\x72\x2b\xbb\x6a\x67\x7a\xdc\xab\x1c\xf7\x55\x79\x24\xc3\x28\x79\x79\x60\x6a\x5e\x96\x5c\xec\x78\xd8\xcb\xf2\xa8\xe0\x56\xe0\xc2\x4b\xc5\xab\x80\xc6\x06\xc0\x69\x09\xf5\xbf\xf2\x69\x80\x96\x91\xe6\xb7\x1f\x3c\xd0\x9c\xd8\x57\x24\xf5\x66\x42\x5f\x2c\x55\x10\x10\xf4\x43\xb5\xbc\x59\x0e\xc3\x68\xe2\x0a\xdb\x0a\x62\xd8\x98\xe0\x1f\x1b\xe8\xfd\xf1\xb6\xc8\xbd\x12\xc0\xa0\x44\x38\x01\xdb\x0d\xfc\x4c\xa8\x53\x73\x92\xaf\x90\xfb\x21\x17\x54\x44\xc6\x52\x4a\xa9\x7b\x5c\x6a\x1a\x49\xc5\x40\xc1\x65\x30\x32\x5c\x06\x23\xf5\x32\xc8\x13\xbb\x1a\xb2\x25\xd5\xe4\x5c\x13\x2a\x72\x54\xe8\x27\xab\x6b\x45\xb4\x1d\x99\x04\xc9\xba\x4c\x8c\x81\xfa\x8e\xcc\x97\xc9\x80\x6c\x5a\x05\x63\x77\x25\x3b\xf7\x71\x85\x6b\xa0\x2d\x91\x89\xe9\x9c\xea\xea\xcb\x5b\x21\xfe\x45\x22\x01\x9d\xd6\x76\xa4\x00\x56\xc7\x35\x75\x01\x30\x25\xf5\xef\xe8\x1a\x30\xeb\xd8\xb2\x29\x14\x15\xda\x95\x2d\x89\xa9\x1d\x9f\x08\xe1\xbe\x13\x2c\xe7\x4e\x9f\xb4\x49\x7b\xb3\x66\x3a\xf2\x60\x85\x9e\x68\xa3\x02\xfa\xb8\x01\x67\x3c\xcc\xb8\xe2\x1e\x2a\x1b\x9c\xd5\x93\xe5\x9d\xe8\x43\x33\x0f\xf8\xd8\x2f\x40\x93\xc0\x53\x5f\xde\xc9\xb9\x80\xf6\xa5\xb8\x21\x3d\x98\x4c\x1b\xcd\x19\x0c\x8d\x99\x68\x76\x7f\xb0\x61\x4b\xa4\x1c\x03\x02\x0f\xd3\x8f\x73\xb6\xbf\x6c\x56\x39\xd2\xb2\xf9\x48\x54\x94\x7b\x6b\xaf\x4c\x3f\x51\xc3\xcc\xf3\x6d\xad\x4d\x3b\xa4\x95\x85\xfa\x9a\x17\xe7\x3e\x30\x08\x5b\x0d\xef\xc7\xbd\x2a\x8e\x60\xf7\x66\xf0\xcc\x3a\x93\x15\x57\xf7\x14\xbe\x61\x2c\x9d\x89\xf4\x21\x13\x5e\x62\x53\x14\x2d\x7a\x30\xc4\xc8\x87\x75\xf2\x6a\xba\xac\x5e\x63\xac\x26\x8d\xeb\x61\xe4\xb8\x57\x3d\xd1\x33\x74\xa8\xfe\x31\x88\x6e\x20\xa2\x45\xde\x1a\x65\xe3\xcc\x33\x78\x3e\xb8\x11\x76\x85\xe7\xbd\x05\xc4\xf3\xc8\x7b\x76\xe9\x87\x9e\x1f\xce\x7a\x8f\x29\xdb\xc8\xf1\xa7\xe5\xfc\xf2\x7f\x5e\xfe\x98\xe3\x98\xc6\x6d\x0c\x05\x05\x0c\x34\xe3\x64\xb2\xd8\x9e\xba\xd8\x8c\xac\x28\x38\x08\x25\x2f\x56\x92\xdc\xe0\x5b\x3f\xf4\x72\xd2\x44\x14\x5a\x22\x52\x36\x08\xc9\xb6\x69\x43\x28\x24\x67\x11\x79\x30\x88\xfb\x62\xa2\x68\x15\xc0\x3e\x19\x9b\x27\xe9\x08\xb3\xb9\xed\x2d\xb3\xd5\x22\xcd\x47\xea\x4b\x49\x72\x35\x64\xda\x95\xf1\x50\xe9\x94\xca\x86\x6e\x81\xcd\x4b\x17\x6d\x98\xda\x82\x33\x07\x38\x8a\x08\xfb\xda\x30\x8f\x9a\x59\xee\x32\x09\xff\x09\xa2\xf4\x55\x44\xa1\x3f\x7a\x64\xd3\xfa\x99\x65\xd5\x63\x7a\x6a\x24\xf8\xae\x04\xe5\x90\x95\x69\xfb\x43\x81\x58\x5f\xd3\xc3\xc2\x97\x46\x79\x34\xe4\xbe\x5b\x03\x6c\x6b\x90\xd5\x57\xd3\x94\x5d\xdf\x90\x23\x00\x17\xc5\x89\x5f\xf2\x49\x1b\xae\x43\x32\xcf\x79\xb5\xec\x5a\x24\x33\x5b\xf9\x50\xd2\xcc\xa4\x3f\xd9\x55\x2b\xf3\x14\x65\x35\x59\xce\xba\x1a\x53\x95\x33\xd3\x7a\x30\xdf\x4d\xbb\x69\xe7\xfd\x6a\x4c\x57\x33\xb7\xb3\x42\xd6\xe2\x31\x31\x3e\x8f\x89\xe1\xf9\xe7\xa7\xcb\xeb\xc3\x60\xf9\x55\x61\x7a\xb5\xbc\x8c\x67\x47\xc0\x26\x6b\xd1\x33\x96\xa5\x1c\xb4\x14\x1e\x88\xf1\x3e\x93\x6c\x46\xb3\x1a\x65\x2c\x2b\x48\xed\xf5\xd2\x99\x95\xb3\x17\x67\x7e\xbc\x0c\x9c\x5b\xce\x83\xa5\xf3\xa2\xd7\xba\xf7\xc4\x79\xca\x66\x10\x1b\xa8\x89\x77\x14\xa0\xc5\xfd\x78\x1e\xdd\xd8\xd9\x84\x61\x86\x3c\x3c\x26\x96\x4b\x9f\x7c\x11\xc9\xab\xe3\xe6\x7a\xff\xeb\x68\xb8\x80\x84\xee\xb7\x91\x94\xd7\x83\xd8\xf1\x83\x5a\x79\xbd\x78\xaf\x06\x2a\x40\x79\x71\x35\xc1\x9f\x34\x0b\x4c\x4c\xc5\x72\xdb\xc2\xd1\x72\xe4\xcc\x49\xb2\x66\x94\x41\x4a\x22\x84\x47\x06\x87\x19\x9a\xb0\x2d\xba\x82\xe1\xeb\xc8\x75\x02\x9f\xba\xac\x00\x7b\x16\x44\x97\x4e\xd0\xca\xb4\x59\x16\x55\xd9\x79\x82\x5a\x2c\x30\x28\xb6\xd8\x58\xcc\x0f\x3b\x9d\x6e\xb8\xd2\x82\xd8\x22\x7e\x74\x3e\xd1\x75\x7c\xf8\xf0\xba\xa6\x26\x2f\x25\xb7\x31\xd1\x0c\x9b\xdd\xc9\x0c\xb7\xbb\x51\x8f\xb9\x39\xbb\xf7\xa3\xf3\xc9\x5f\xac\x16\xd6\x07\x9f\x25\x63\x7e\xed\x5f\xc3\x13\x9a\xb0\x75\xc1\xdf\x04\xfe\x94\x66\x28\x76\xc2\x5b\xee\x29\xcf\x40\xea\x59\x97\xb7\x2c\x4e\x96\x20\xb8\xc5\x10\xbc\x2e\x8b\x67\xd4\xe6\x16\x32\x20\xe9\x0d\x28\xe1\xe9\x36\xa2\x0f\x06\x23\x53\x1d\x7d\x52\x12\x71\x18\x46\xb8\x97\x44\x1d\xc2\xdf\x36\xe4\x74\x1e\x27\x87\x13\xc6\x4b\xc7\x85\x8f\x4a\xb3\xf3\xf2\xd7\xe3\xd7\x87\xff\x70\xfe\xa7\x11\xa3\x53\x45\xc3\xa3\xac\x39\x57\xc1\xc3\xdc\xf1\xf3\x75\x35\x98\xf0\x2e\x85\x64\x00\xe7\x85\xd2\xcb\x06\x5e\x89\x14\xa0\xca\x6b\xe5\xc2\x4a\xe3\xae\x85\xda\x8a\x42\xa5\xa8\xff\x7a\xc2\x18\xe6\xe5\xd5\xaa\x6a\x88\xf4\xab\x32\x63\x6f\xae\xed\xb5\xdc\x64\x0f\x72\x05\xb9\x1a\x5f\xa7\xc0\x59\x05\x92\x85\x24\xcb\x08\x66\xb3\xcc\x26\x7e\x56\xd3\x9a\x9b\xd4\xd9\x9b\x91\xb8\x0c\x31\x79\x4c\x94\xee\xf1\x45\x14\xfd\x70\xfa\xed\x77\x3f\x87\x7f\xfb\xed\xd1\x44\x14\x45\xcb\x74\x61\xb2\xfc\x01\x7e\x17\x31\x47\x0a\xd1\xcf\xc6\x1e\x1d\x55\x8e\x3d\xda\x57\xa2\x2f\xf6\xbf\xc4\x1e\x55\x8c\xbe\x51\xae\x98\x4c\x14\x0e\xb5\xbc\xa6\x82\x7d\x80\x9d\xf6\xa3\xdb\xc0\x61\xc9\x34\x40\xf5\x48\x9c\x82\xaf\x9b\xc6\x22\x35\x80\x86\xee\xca\xa5\x37\x6a\x35\x70\xa9\xb0\xeb\xda\xe0\xaa\x1d\xb8\x54\xb2\xb2\x4d\x03\x97\x68\xf7\xdb\x0d\x5c\x1a\x8d\x94\xc0\xa5\xdd\x87\x0d\x5c\x1a\x8d\x1a\x04\x2e\xed\x6e\x35\x70\x69\x44\x47\x28\x77\x32\x18\x0d\xff\x48\x81\x4b\x07\x6d\x07\x2e\x1d\xe8\x81\x4b\x87\xed\x07\x2e\xe9\x9a\x0a\x65\x15\x0f\x1b\x68\xb4\xff\x25\xd0\xe8\x8f\x1a\x68\x74\x68\x0a\x34\x3a\xdc\x62\xa0\x91\x11\x97\xb6\x16\x68\x74\x5c\x1e\x68\x34\x1a\x64\x7d\xcb\x47\x85\x98\xff\xc0\x81\x46\x7b\xc9\x24\xb7\x1a\x68\xc4\x63\x5d\xb3\xd1\xad\x04\xac\xad\x06\x1a\x1d\xb6\x95\x2e\x8d\x47\x40\xfd\xe1\x83\x89\x68\xdc\x4f\x7b\xa1\x44\xfb\xff\xa9\xa1\x44\x66\xa1\xe0\x8f\x11\x52\x44\x43\x94\x33\xa4\x7d\xb7\x2d\x9f\xea\xe1\x7e\x82\x93\x57\xab\x4b\x88\x42\x88\x13\x0e\xc4\xec\x16\xac\xb4\xd3\x48\x6e\xea\x85\x8e\x91\x0d\xa8\xed\x0f\xda\x7c\x6a\x5c\xb6\xe9\x85\xfd\x7a\x83\x8b\x57\x44\x1a\xe8\x4b\xe1\x4f\x36\x5e\xc3\xdf\x7f\xfe\x50\x4a\xb1\x81\x81\x8c\x51\xa4\x14\x35\x0d\xcf\xcf\xdf\x7e\x7c\xf9\xe6\xc5\xb7\xaf\x5f\x9e\x35\xf5\x91\xca\x03\x4d\xe4\x7b\x6e\x31\x6c\x68\x0b\x1d\x38\xe2\xd1\xc6\xd0\x79\xfb\xea\xec\xb4\x81\xa3\x99\xe9\x3a\xdb\x23\xcb\x6a\xcb\x95\x7b\x98\x15\xb3\x2a\x92\xf4\x40\xb1\xf1\xb6\x48\xd6\xe3\x68\x85\x5c\xf8\x85\xb0\x53\xc2\x2e\x60\xfc\xfb\x27\xee\x0f\x15\x2f\x4a\x21\x68\x9b\x9d\x10\xb6\x11\x2a\xda\x4e\x84\x28\x39\x08\xe4\x90\xc5\xf7\x15\x18\x5a\x11\x0d\xf3\x63\x45\xf3\x31\xf3\x4b\x80\xe7\x7f\x5a\x80\xe7\xde\x7f\x6a\x80\xe7\x8f\xf4\xe4\xb4\x16\xe6\xa9\x74\xd7\x34\xd8\x53\xef\x50\xb8\xd4\x94\x75\xe7\xad\x10\x8d\x6d\x2a\x9d\xa1\xec\xb0\x78\xb9\xb2\xbf\x07\x09\x47\xdd\xfb\x12\x8e\xba\x51\xea\xa8\x8a\xc1\xa8\x2b\x7f\xb3\x40\x54\xbb\x72\xb0\x66\xde\x31\x1b\x9a\x5f\xe6\xa0\x40\xd9\xfc\xb6\x11\x92\xda\x68\x8d\x86\xb0\x54\xc3\xdb\x6d\xad\xb2\x7e\x70\x6a\xad\x53\x51\x0f\xc1\x16\xce\x27\xe6\x4c\xb9\x6d\x14\xcb\xa1\x94\x43\xe3\xbb\xf6\x41\x6f\x24\xc0\xad\xe3\x98\x99\x7a\x0f\x4d\xaf\xb6\xb8\xc4\xd6\x11\xec\x4b\xec\xf3\xe3\x8d\x7d\x86\xe1\x75\x4b\x11\xd0\x05\x8e\x5a\x8f\xc9\x89\x8c\x30\xdb\x8f\xc5\x7d\xcc\xbf\xfa\xf7\x60\xf8\x43\xf0\xa6\x76\x04\xb4\xe4\x8e\xf7\x65\x46\x24\x83\xc3\x14\x59\xaa\x65\x67\x2a\xb7\x67\x22\x40\x74\x6e\x2d\x9d\xf9\xdd\x98\xa8\x56\x2d\x04\x6f\x14\x38\x6d\x83\x7f\x64\x85\x02\x32\x78\x43\xcc\x4b\x76\xf7\x31\xe1\xdc\xb5\x0f\x6f\x1e\x0b\xce\x5d\x5f\xbe\x5c\x39\xde\x7b\xc7\x8c\x73\x84\xd4\x50\xea\xc0\xff\x8d\xdd\x68\x49\x88\xc2\x65\x44\xf5\xac\x2b\xe4\x2b\xae\x7f\xfc\xa1\xf8\x29\xef\x34\x33\xde\x72\xcf\x7f\x73\x9d\xb4\x34\xea\x12\x88\xe5\x8a\x7f\xc6\xc0\x9c\x41\x82\x92\xba\x39\x61\xe3\x00\xb2\x1c\x17\x9e\x1c\xf7\x9d\x44\xe1\x60\xf2\xd4\x2e\x0e\xf0\x37\xfa\xf7\xd4\x8d\x68\x1a\x28\x7e\x5b\x69\x8f\xe2\x32\x01\x7a\x3f\xa3\x92\x52\xe3\x3e\x40\x2a\x96\x08\x68\xa1\x50\xc0\x36\x86\xb9\xd6\x16\x26\x0b\xa2\x99\x64\xc9\xb3\x8d\x5c\xca\x73\x37\x4c\x33\x34\x18\x36\xcf\x36\x8d\x5e\x75\x1b\x87\x19\xed\x8c\x61\x39\x15\x42\x68\xf2\x34\x67\xa9\x98\x29\x72\x1c\x68\x8d\xbf\x99\x0d\xec\xef\xa3\x18\xd7\x96\x38\x1b\xe1\x37\x1b\xb2\xcf\x06\xac\x05\x1f\xa3\x84\xee\x46\xcb\xdb\x1e\x2f\x64\x97\x61\x9d\x85\xac\x9e\xbb\xde\x46\xb3\x4d\x85\x03\x16\xea\xa5\x78\xc8\x80\x19\xd6\x0d\x62\x06\x2a\x6c\xe5\xe9\x8b\x53\x88\xee\x77\x33\xc5\x90\x2d\x6c\x27\x44\xbc\x54\x49\x8a\x76\x15\xee\xa6\x5c\x72\xc3\x09\x1b\x77\xb4\x8d\xbd\x38\x67\x79\x42\x5e\xb8\x6e\xb4\x0a\x31\x33\xb7\xde\xdf\xb6\x18\x46\x7f\xb0\x03\x67\x82\xc4\xe6\xeb\xa8\x73\x14\x8d\x7a\x64\xc3\xf1\x34\xef\x59\x35\x9f\xd9\x5a\xa5\x1d\x2b\x34\x2f\x8b\xf8\x8e\x79\x9c\xbf\x64\x94\x08\x5f\x5c\xcc\x8b\xe4\x79\x1b\x1b\x10\x6d\x04\x38\xbf\x54\x18\x20\xf5\x85\x11\x29\x60\x44\x8e\x9a\x6a\xc9\x5b\x62\x45\x8e\x2a\xb0\x22\x35\x99\x91\xa3\x8d\x98\x91\xa3\x1c\xf7\x92\x72\x8e\x9d\xfa\xc9\x34\x75\x96\x33\x93\xe7\xbf\xff\xfc\xc3\xf9\x4f\xef\xeb\xc6\x8b\x6f\x4a\x96\xe5\xa8\x35\xb7\x24\xc7\x77\xb7\x21\x41\x4e\xd6\xde\x74\xde\x39\xc4\xb7\x06\x27\xa4\xc2\xbf\x72\x64\xc2\xe6\xc0\x2f\x67\x57\x6a\xc1\xbf\x11\xcb\xa2\xce\xa3\xd6\x0e\x54\x61\x5d\xda\x61\x5e\xfe\xfe\xf3\x87\x7f\x38\x81\xef\x51\xbd\xe1\xbb\xd5\xe5\x0f\xf0\x36\xbe\xf7\xa3\x62\x9a\xc2\xc3\xee\x9b\x11\x28\xad\x2c\x68\x8b\x7b\xf9\xf6\xd5\xd9\xe9\x99\x1f\xbb\xd1\x35\x44\xb7\xf7\x4f\xf2\xb2\xc3\x3f\x28\xed\x33\x40\x63\xe3\x95\x6c\x4e\x0d\x8d\x7b\x54\x81\x2c\x36\x3d\xdc\xe7\xab\xe5\x32\x42\x18\x7a\x2f\x82\xd9\x03\x1c\xec\xd4\xf0\x8d\xf9\x93\x23\x32\x12\x10\x5a\xec\x6a\x8b\xac\xc6\xbb\x14\x43\xf0\xdb\x68\x15\x7a\x2f\x56\x9e\x0f\x43\x17\x36\x81\xdf\x66\x10\x4c\x0f\x5f\x04\xbf\x4a\x47\x2a\x69\xb4\x4a\xcb\x08\x55\xb9\xf1\x8a\x20\x6a\xc1\x73\x64\x00\xec\xc0\x2f\x58\x4a\xc9\xc1\x3b\xcc\x05\x54\xa5\xf3\x65\x74\x38\x29\x0c\xc7\xaa\x83\x6e\xd5\x25\x1e\x0a\xdf\x57\x71\xbc\xa2\xf1\xe8\x2f\x3f\x2d\x7d\x66\xa0\x7d\x0d\xe1\x0d\x35\xe1\xbd\x89\xf0\xb7\x70\x1a\x21\x28\x9f\x9c\x06\x91\x7b\x75\x7e\x05\x6f\xf8\x93\xed\x08\x3f\x09\x12\x70\xbf\x96\x83\xcd\x1c\x37\x37\x92\x84\xf8\x81\xb1\x4d\x13\xa9\x1b\x46\x5b\x67\xa1\x0d\xa4\xa3\x9a\xa1\x45\xe5\x42\x13\xf3\xa0\x6f\xb8\xab\x5f\x98\x88\x2f\x4c\x44\x75\x84\x68\xa8\x77\x6e\x11\x27\x1e\x83\x5c\x67\x06\x49\x1b\xcb\xd9\xb2\x74\x70\x4a\x0b\x33\xbd\x3a\xbb\x77\x46\x46\x1f\xbc\x11\x55\x2e\x5d\x4f\x8b\x10\x3a\x87\x2e\x82\x4d\xd0\xbc\x2d\x28\x89\x09\xb4\x0c\x29\x65\x5d\x1b\x43\xeb\x45\x10\x44\x37\xd0\x7b\x0f\x3d\x1f\x41\x17\xff\xf4\xfe\xd5\xfd\xf3\xc7\xc6\x39\x3c\x46\x26\xb9\x08\x58\xf7\xc8\x29\xd7\xb9\x08\xf7\x27\xc0\x16\xf3\xb5\x7e\x7a\xff\xca\xce\xbf\xb8\x4a\xaf\xaf\xfd\xcd\x58\x71\x43\x58\x9d\xe1\xbb\x1a\x1d\x7e\x91\xfc\xfe\xd0\x92\xdf\xde\x66\xe8\xb6\xf7\x00\xe8\x46\x68\xf4\xb9\x1b\x2d\x1f\x00\xd5\xd4\xa1\x1f\x23\x9a\x19\x40\xf3\xf0\x28\x96\x97\x67\xa9\x22\x46\xec\x3e\x00\x8a\x7d\xd1\x06\x6e\x0a\xc1\x7f\x40\x74\x19\xc5\x90\x20\xe4\xeb\x68\x36\xf3\xc3\xd9\xe6\x30\x64\xae\x8f\x73\xe8\x5e\xd5\x07\xa9\x69\x3e\x75\x81\x3a\x00\xb6\x1f\x2e\x57\x62\x32\xb6\xe7\xc7\xce\x65\x00\x3d\x5b\xf9\x73\x42\x5d\x8c\xd9\x2c\xc9\x9b\xca\x90\x21\x3d\xee\xf1\x0f\x2f\xa3\x4f\xc9\xa8\xbb\x15\x77\xa3\xac\x24\xf4\xe6\x65\x47\xd4\xa7\x03\x60\xcf\x91\x3e\x49\x63\xa3\x8c\x47\x86\x1b\x38\xfe\xa2\xb7\x70\x96\x4b\x3f\x9c\xc5\x46\xaa\x22\x07\x18\xa9\xaf\x4f\xc9\x87\xd6\x8f\xea\x87\xbb\xb9\x86\xf3\x8c\x47\x14\xf9\x38\xf9\xb6\x89\x73\x6b\x32\xaf\xa5\x3a\xad\x9f\x62\xc8\x92\x8b\xfb\x53\x9a\x8d\x9c\xae\xcf\xba\x8d\x56\x96\x83\xa0\xe5\x3a\x4b\xbc\x42\x7e\x38\xb3\xfc\xd8\x8a\xfd\x70\xb6\x0a\x1c\xd4\xb7\x7e\x9e\xc3\xd0\x22\x30\x80\x1e\xa0\x5f\x51\xb6\x32\xb6\x5c\x27\xb4\x2e\x21\xcd\x60\x1e\x4d\x2d\xc7\x0a\x57\x8b\x4b\x88\x80\x15\x63\xd2\x07\xb0\x22\x64\x5d\x46\x51\x00\x9d\xd0\x72\x42\xcf\xba\xf1\x83\xc0\x72\x82\x80\x7c\xc3\x9a\xf8\x53\x1f\x7a\xd6\x0d\xe9\x1e\x41\xbc\x42\x21\xf4\xfa\x46\x4a\x29\xd6\x92\x97\xf3\x59\x6b\x93\x9b\xf7\x59\x6b\x95\x97\x77\x58\x6b\xa4\xf5\xf3\x03\xbc\xcd\x25\xe3\x79\xdf\xfc\x83\xc5\xef\x54\x23\xfe\x55\x1e\x97\xa6\x6d\xae\xa2\x7f\xde\xab\x81\x75\xad\x84\xee\x37\x81\x78\x56\x61\x3b\x9a\x80\x41\x09\x23\x53\xbd\xa7\x61\x15\x96\xa8\x88\x90\x8d\x4c\x11\x4e\xcd\xfc\xca\xf2\x1c\xc5\xa4\x6c\x07\x17\x4b\x7c\x4b\x0b\xc4\xc3\xc6\x45\x09\xec\xb6\xab\xbd\x64\x61\xae\x93\xc0\x37\x11\x27\x2f\x0b\x33\x15\x4c\xbe\x6e\x2b\xa8\x97\x1d\x8c\xa6\xb3\xff\x23\x10\xca\x36\xa1\xc9\x82\xd5\x6a\x55\x68\xd1\x01\xca\xd9\x70\x7a\x91\x7a\x91\x1b\xf7\x02\x3f\xbc\xca\x25\x5c\x5b\xf3\x21\x33\xb1\xe2\xa9\x7a\x3b\xc3\x54\x48\x14\x4f\x8e\x74\xf6\xf6\xf4\xfc\xa3\xa2\xe1\x07\xf6\xb3\x18\xba\x2b\xe4\xe3\x5b\x5a\x11\x54\xad\xc9\xf3\xec\xd7\x1b\xfc\x5f\x14\x4b\x16\x2a\x09\xa5\xac\x17\x82\x01\xad\x56\x11\x2d\x61\x08\x91\x15\x46\x08\x4e\x21\x42\x2c\x97\x28\x69\x80\x1d\xc4\x02\x04\x3f\x5e\x06\x8e\x0e\xa3\xf7\xd0\xf1\x28\x2e\x79\x91\xbb\x22\x6b\x72\x24\x87\xd2\x94\xa8\x6c\x17\x0e\x91\xef\xb9\x8f\x0a\x10\xed\x66\x17\x68\x96\x53\x2a\xcf\x6d\xb8\x15\x26\x95\xd5\x0d\x6b\xca\xa9\xbe\xf6\x63\x6c\x6d\xc4\xae\x92\x1e\x1e\x05\xcb\x4a\x01\x11\xf8\x57\xd0\xea\xc4\x2b\x77\x6e\x39\xb1\x45\xf3\x33\xc4\xdd\xc7\x40\x9b\xbf\x30\xb1\xf7\xc0\xc4\xe6\xe3\xe2\x23\x62\x64\x87\xad\x31\xb2\xc3\x16\x18\x59\x63\x96\xa7\x2f\x8c\xac\xc6\xc8\x12\xca\xf2\x9f\xc1\xcd\x3e\x6e\x1a\xfa\x85\xbf\x7d\x50\xfe\x96\x20\xc7\x63\x62\xed\x1e\x94\xc7\x7d\x6c\xc0\x78\xcc\x7c\x6e\x71\x73\xde\xb8\x30\x85\x04\x4b\x64\x92\x54\xfb\x63\xe0\x4b\x52\xa7\x98\xd3\x9f\x90\x36\xbf\x46\x7e\xa8\x26\x4a\x61\x4d\x36\xcb\x43\x91\x64\x7c\x78\xe8\x3c\x14\x9e\x70\x38\xea\xb9\x73\xc7\x0f\xb3\x69\x28\x40\xad\xcf\x57\x98\x16\x65\x55\x53\x57\x00\xdc\x5e\xf2\x8a\xb0\x38\x79\x45\x74\xfd\xf2\xa7\xeb\xef\xc3\x7f\x15\x16\x16\xf4\x60\x4c\xb6\x91\xff\x32\x3e\xe4\xbf\xe2\x65\xe0\x63\x5e\xee\x09\xb9\xca\x37\x0c\x46\xb4\xd9\x7b\xe8\xe2\xcc\xf7\xac\x75\xee\x6b\xf5\x1f\x73\xfe\x16\x7c\x9b\x61\xf1\xd3\xdc\xed\x3e\x18\x1e\x83\x0b\x5a\xfd\xbf\xae\xc5\xce\xe6\xbc\x60\xa6\x0b\xda\xe0\x4e\x9e\xe1\x68\xe9\xb8\x3e\xbe\x3d\xb1\x86\xd6\x53\x7f\x41\xd0\xc1\x09\xf1\x5f\x13\x89\xd2\xb2\x2e\x1d\xf7\x8a\x5c\xef\xa1\xd7\x73\xa3\x20\x42\x27\xd6\xb5\x83\x3a\xbd\xde\xcd\xdc\xc7\xb0\xfb\xd7\xa4\x5d\x84\x3c\x28\xdf\x7a\xd0\x8d\x50\x8f\x3d\xeb\x0d\x07\x83\x4c\xc3\x1e\x72\x3c\x7f\x15\xeb\xed\xd9\xb3\xde\xc8\xd4\x5e\x1b\x7c\x86\x9c\xdb\xde\x7e\xaa\xd9\xa7\x5e\x3c\x77\xbc\xe8\x46\xef\x13\x06\xf0\x9a\xd2\xc7\xde\x81\xd2\x7e\x5d\xd5\x4d\x9b\x03\x10\x7a\xb3\x4d\xf7\x20\xe9\x22\x77\x0f\x2a\xcd\x2e\x1b\x48\x9b\x49\xa7\x82\xa2\x15\x4b\x7c\x62\xae\x8b\x29\x78\xdf\xdc\xc2\x98\x3a\x73\xab\xb3\xf7\x74\x41\xa3\x01\x4d\x63\x4a\x03\xa9\xb5\x5a\xd1\xd6\x7b\x32\x34\xd2\x3f\x19\x26\x66\xf4\x3d\x70\xb1\x7b\xc4\x92\xea\x52\x96\x93\xce\x14\xc5\x16\x8e\x2c\x3f\xc4\x10\xb9\x70\x89\x2d\x8c\x9c\xe9\xd4\x77\xad\x55\x4c\x38\xce\xd7\xce\x2d\x44\xd6\xa1\xe5\x22\x1f\x43\xe4\x3b\x96\x60\x3a\x97\x0e\x9e\x5b\x4b\x04\xa7\xfe\x27\x18\x13\x0e\x72\x8e\xf1\xd2\x62\x8b\x8b\xfb\x76\x12\x79\x6c\x5c\x47\xa1\x65\x30\xef\x81\x06\x68\x1b\x45\x34\x11\x2b\x4f\xf0\x98\x73\x94\xb3\x49\x68\xd5\xbf\xf7\xc1\x68\xb8\x91\xd8\x69\x6b\x61\xd9\x69\x5a\x4d\xc1\xdb\x73\x1d\xe4\xd9\xe0\x42\x00\x5f\xcb\xf4\xae\x4e\x69\x28\x33\xdc\x0e\x26\x84\x43\x71\xb1\x56\xc7\x6d\x8a\x22\x19\xda\x3d\x50\x11\x5a\xb5\xb3\x2b\x4e\xb4\x51\xe8\x06\x3e\xb3\x6d\xa7\x6b\xa4\x0c\x85\xbb\x07\x19\x48\xb4\x32\xba\xc1\xe6\x96\x14\xd1\x19\x03\x15\xee\x15\x0e\x88\x20\xfb\xed\x9f\x91\x73\xd1\x73\xa5\x23\x20\x5b\x33\x29\x8b\xaa\x28\x56\x08\x7a\xe4\x3c\xd0\x39\x5a\x7e\xe8\x46\x0b\x72\x0c\x10\xfc\x6d\x05\x63\x1c\x5b\x8e\x8b\xa2\x38\xb6\x3c\x7f\x3a\x85\x08\x86\xd8\x8a\xd9\x39\xa4\x47\x20\x5e\x5d\xc6\x10\xc7\x4c\xc8\x22\xc7\x27\x80\xe2\xfd\xef\xe4\x44\xf0\x84\xb1\xb4\x02\x01\x0b\xe6\xa7\xa7\xc4\x5c\x4b\xb6\xd5\xc3\x22\x90\xa2\xfe\x79\x19\x1e\x6f\xe1\xbc\xd0\xba\x43\x2d\x9c\x17\xbd\xd0\x4e\xb3\xf3\x82\x60\x1c\x05\xd7\xdb\x38\x2f\xef\x45\xcf\x95\xce\x8b\x6c\x4d\xcf\xcb\x2a\x66\x27\x85\xf1\x9c\xd6\xcd\xdc\x77\xe7\x96\x1f\xc6\xd8\x09\xe9\x71\xa0\x67\x80\x21\xbf\x15\xcf\xa3\x55\xe0\x59\xb1\x83\xfd\x78\x7a\x6b\xc9\xbd\x97\xe7\xea\xf7\x7d\x3c\xf6\xb6\x7f\x3c\x04\x0e\x34\x38\x1e\x47\x6d\x1c\x0f\xf6\xde\x70\x4e\x8e\x58\x64\x96\xda\x47\x3b\x07\xe7\xa8\xfe\xc1\x01\x17\xbb\x7b\x60\xb4\x3f\xc9\xbc\x20\x08\x7d\x3d\x23\x7f\xb2\x8c\xef\x7c\xa6\xf4\xa7\x7d\xe3\x7b\x98\xc8\xa2\xc3\xc1\xe0\xbf\xc5\xb3\x39\x64\x19\xdd\xb5\x87\x4b\x04\x09\x42\xc3\x17\xf1\x12\xba\xf8\x3d\xe1\x6b\xa9\x16\x21\x84\xc9\x49\x19\x1d\x98\xf6\x80\xac\x5f\x8c\xa9\x62\xc8\xbd\x72\x2d\xa9\xe2\x42\x7b\xe0\x82\xa3\x45\x9d\xcf\xf7\x0c\x9f\x03\xf9\xe0\x0d\xfc\x84\x5f\x31\x8c\x69\xda\x35\x87\xdc\xae\x7a\xde\x92\x4e\x88\x54\x78\x2b\x71\xef\x00\x90\x27\x2a\xc2\xa9\x6f\x6e\xd5\x37\x03\xf5\x0d\xdf\xdd\xc9\x44\x74\x9d\xe4\xef\x35\xd4\xa0\x20\x0b\x53\x22\x77\xea\x9e\xee\x14\x25\x26\x7c\x33\xd7\x76\x0d\x0b\xc6\x02\xf6\xd7\xb6\x0e\xd7\x37\x91\xa7\x27\x6c\x1f\xee\x03\xdb\xb3\xf5\xe2\xb0\xa5\x20\x3b\xcc\x80\x6c\x4f\x7d\x45\x61\x36\x48\xa0\x41\x89\x00\x91\xb6\xab\xf4\xbd\x2f\x2b\x21\x98\xb6\x64\x3f\x77\x4b\xf6\x4b\xb6\x44\x49\x99\x9a\x3e\xf4\x39\x85\xe8\x32\x8f\xf7\x41\x6e\x61\x39\x63\x45\xa1\x0a\x65\x9a\x8c\x07\xb3\x51\xd1\x7d\xfd\x60\x1e\x6d\x74\x2e\x9b\x7d\x5d\xbc\x2e\x5e\xf5\x88\x30\x68\x0d\x3d\xc1\x53\xb4\x63\x70\xff\xa4\x62\x94\x4b\x2a\x46\xb9\x78\x39\xaa\x4b\x2a\x8e\x92\xd3\xdb\xb3\x45\x35\x9c\x8d\xa8\x46\xc2\x90\x49\xba\x71\x90\xa2\x1b\x52\x9c\x3a\xb1\x65\x85\x2a\xae\x15\x48\x88\xc8\x20\x8f\x88\x8c\x12\x89\x8c\xf7\x5e\x9f\xa6\xec\x26\xb0\xe5\xbf\x6e\xed\x49\x5d\xea\x71\x5c\x44\x3c\x8e\xf3\xf6\xe8\xb8\x12\xe9\x50\x98\x58\x7d\xcb\xf8\x28\x6a\xca\x65\x2d\xfa\xfc\x67\xd9\xf5\x40\xe5\x8a\x3c\xe8\xfa\x0b\x27\x60\x1c\x04\x25\x1f\xff\xad\x31\x57\xb2\x78\x85\x71\xd9\xd3\x28\x08\xa2\x9b\xd3\x15\x8a\x23\xca\xb2\xb3\x12\x30\x75\x88\x9c\x39\x9d\x7a\x69\xa1\x20\x73\xea\xd2\x86\x89\xc5\xcc\x72\x0b\xe7\xb2\x74\xb9\xa5\xe7\x87\x01\xc4\xb1\xe0\xc3\x33\xbc\xd5\x03\xf1\x40\x7a\xe8\xcb\x81\x7e\x42\x92\xd9\x9f\x34\x88\xf0\xdf\x33\x20\xd4\x81\x91\xe8\x01\x03\x82\xdc\xda\x12\x48\x13\x70\x31\x00\x83\xc9\x64\xd3\x44\x77\xae\x8f\x5c\xae\xf1\x26\x92\x90\x0d\xec\x51\x7f\x5f\xfc\x74\xc9\x41\xdc\xe7\x4c\x89\xed\xde\xda\x99\xf3\x77\x98\x77\xfe\x0e\x0b\xcf\x5f\x16\x9f\xf3\xb2\x7d\xd4\xc8\xdf\x70\x1f\x77\x71\xd9\x7d\xb8\xdb\xe2\x7d\xa8\x63\x89\x99\x8b\xde\x32\x96\xb4\x86\x27\xb9\x3c\x5e\x31\x8b\x57\x05\x4f\xf6\x8d\x28\xb1\x67\x7c\xba\x5b\xa8\xac\xd7\x68\x94\x54\x3b\xfd\x1e\x68\xd4\x30\x4d\xa3\x92\xab\xbf\x1d\xec\x1b\xfe\x8e\x69\x54\x2e\x1f\x57\xcc\xc6\x55\xc1\x3d\xf3\xc5\x6a\xbe\x6d\xb3\xa8\x57\x52\x7b\xc1\xf3\xaf\x6d\x60\x3b\x9e\x27\x6a\x7f\x00\x3b\x42\xb2\xd6\x08\xf3\xbf\xe9\xc5\xd8\x41\x38\xee\xdd\xf8\x54\x53\x41\x0d\xec\x66\x83\xba\xb4\xa2\xc7\xd7\xb3\x9e\xbb\x42\xd7\xd0\xa6\x16\x29\x5a\x29\x00\x47\x51\x80\xfd\x25\xf9\xeb\x06\xc2\xb0\x87\x23\xd2\x70\x75\xa9\x56\x3e\x89\xe9\xb0\x5e\xb4\xe8\x29\x55\xf0\xa2\xb0\x87\x60\xec\xff\x1b\xd2\x06\xbc\x62\x0e\xad\x48\x4a\x4d\xf7\xdc\xe2\xa5\x6a\xf6\x59\x9d\xbf\xde\xe5\xad\xad\xea\x2f\x01\xb7\x85\x02\xdb\xf3\xbd\x9e\x1f\xc6\x34\x05\x47\x6d\x4b\xbf\xd1\xa6\xae\x19\xfa\x51\xa1\xa1\x3f\xe4\x86\x7e\xf9\xa6\x0f\x3f\x61\x18\x7a\x9d\x3b\x2f\x5a\x9c\xb0\x77\x7e\x48\x2d\xea\x5c\x83\xd9\x21\x10\xb1\xbb\x00\xfb\xee\x15\x44\x39\x4d\xd8\x4b\xbb\x0b\x3c\x07\x3b\xe7\x18\xad\x5c\x1c\xe7\xf5\xe6\x60\xa7\x17\xb3\x26\x76\x17\xb8\x81\x13\xc7\x64\xdd\x31\x45\x08\x6d\x75\xf6\x24\x79\xfd\xad\x1f\x7a\x7e\x38\x23\xad\xc8\x86\x5d\x93\xd3\x22\xf6\xe3\x95\x77\x62\xdb\xc0\x0f\x7d\x7c\x22\x7d\x03\xba\x77\x78\xee\xc7\xfd\x8f\xf1\x6a\x09\x51\xa7\xdf\xef\x3b\x68\x46\x7d\x56\xe2\x2e\x60\x6f\x02\x3f\xc6\x30\x84\x28\x1e\xd3\xdf\x5e\xb4\xe8\xcb\x47\x9d\xee\x1a\x78\xbe\xf7\x8a\x6e\xd3\xcb\x80\x1e\xde\x6c\xdf\xb2\x79\xdf\xf1\xbc\x8e\xec\x45\x78\xc7\x74\xba\xe0\x8e\xaa\xfe\x4e\xe0\xf8\xeb\x3b\xf9\xda\x0d\xa2\x18\xc6\xb8\xf3\xe7\x0b\xba\xb8\x3f\x8d\x6d\xa6\xd9\x9c\xfc\x19\xc0\x3e\xf3\xbe\xe9\x7e\xfe\xdc\x61\xd0\x8b\x21\xa6\x1d\x03\xb1\x6a\xf0\x74\xd8\x05\xe9\x77\x09\x20\x6c\x60\xdb\xdd\xee\x7a\xdd\x5d\x83\x1b\x3f\x08\xce\x60\x8c\x51\x74\x9b\xbb\x82\x0a\xd0\xe9\x23\xb8\x88\xae\x61\x87\xbf\x60\x3b\xdd\xf7\x58\xc7\x74\xfc\xee\x1a\x48\xec\xe7\x9b\x4e\x10\x77\x85\xa1\xd7\x61\x07\xa5\xff\x86\xe1\x7e\x47\x99\x00\xf3\xa6\xeb\x0c\x00\xee\xcf\x20\x96\x06\xa9\x2e\x5f\xf8\x4c\x2e\x4e\xed\xa1\xdb\x5d\x77\xbb\x80\x1d\xba\xea\x43\x31\x07\x0f\x38\x16\x83\x51\x5b\x71\xd9\x48\x40\x6e\xd8\x6c\xe5\x7b\xdd\x27\xfe\xb4\xf3\x14\xf6\xa7\x7e\xe8\x75\xe0\xf8\x6b\xfb\x99\x3d\x1e\x8f\x93\x0e\x20\xb0\xcf\xe0\x94\xa0\xa0\x1f\x85\xfd\x1f\x1d\xec\xce\xfb\xdf\x7f\xf8\xf0\xae\xff\xce\xc1\xf3\x77\xd4\x56\x6c\x77\xbb\x3b\x3b\x4a\x17\xcc\xfb\x64\x3c\x1e\xc3\x7e\xf2\x69\xb7\x7b\x17\x40\x6c\x85\xdc\x29\x05\x8d\x7f\x91\xcc\xf8\x9f\xd8\x9e\xb1\x49\x2a\x36\xf0\x75\x5f\x7b\x43\xcf\xd2\xd2\x71\xd3\xcf\xcf\x1c\xec\xb8\x30\xc4\x10\xad\x7f\x01\xce\xf8\x17\x79\x81\xd6\xee\xf7\x17\x02\x0b\x36\xfb\xa7\xe3\xb1\xda\x84\x40\xee\xc2\x99\x7c\x13\x8e\x9d\x93\xfc\x06\x68\xb2\xb3\xd3\x09\xc7\xa8\x0b\x64\x9b\x50\x6c\x12\x1a\xdf\x9d\xb1\xab\xf3\xe4\xe9\x00\xbc\x3a\x3b\x61\x14\xf6\xc4\xfe\xca\x3c\x49\x40\x49\x66\xce\xbb\x04\xac\x27\x77\x74\x4b\x4e\xee\xc8\x9e\x9c\xdc\x25\x9b\x72\x62\x3f\xb3\xd7\xeb\x35\x10\xbc\xc5\x49\xb8\x7e\x02\xfb\xcb\x55\x3c\xef\x50\x6c\x71\x11\x74\x30\xa4\x08\xd3\xed\x20\x90\x33\x90\x8e\x2a\xdd\xf5\x9a\x21\xb7\x05\x09\xb6\x52\xba\x9f\x41\x56\xe3\xc5\xa1\x5c\x17\x2a\xfe\x12\x8c\x80\x0c\x8e\xb2\x45\x1f\x41\x6f\xe5\xc2\x0e\x75\x82\x1a\x7f\xdd\x81\x17\x8a\xd8\xf6\x15\xee\xbf\x3a\x9b\x8c\x31\xc0\xfd\xd3\xb9\x1f\x78\x08\x86\xd5\xda\xc3\x2e\xff\xff\xbb\x75\xf7\x89\x58\x04\x1b\x59\xce\x33\xdb\x53\xea\x6b\x3e\x53\xba\xc0\xb2\xc6\xdc\x7b\x8b\x3b\xcb\x75\x60\xb7\x3f\x8d\xd0\x4b\xc7\x9d\x77\xf0\xf8\x6b\xb2\xf0\x8b\x10\xa0\xc9\x18\x3f\x91\xa8\x82\xfa\x62\xaf\x76\x76\x3a\xec\x07\xe1\xd9\xc6\xf0\x22\x79\x33\x51\x50\x0b\xf5\x99\xb8\xb2\xb3\x23\xfe\xd2\x86\x48\xd0\x54\xed\x17\xab\xfd\x62\xa5\xdf\x75\x77\xdd\x05\xb6\x4d\xa9\x90\xd8\x8a\x1c\x42\x74\x47\xb1\x1d\x7c\xa0\x14\x3d\x5e\x17\x51\x3f\x69\x5e\xec\x76\x8c\x27\x16\x98\xce\x21\x30\x93\x2f\x3e\x9e\xdd\xcd\x79\xaf\x12\xd2\x19\x72\x96\xf3\xcc\xf4\x35\x8c\x64\xbb\x78\x31\x31\x53\x54\x86\xf8\xc9\x9d\xdf\xa7\x3d\x76\x24\xee\xa4\x30\x47\x05\x3c\x4e\xef\x46\x38\xfe\xfa\x0e\x92\x9b\xf4\xb5\x1f\x5e\x75\x08\x9a\x80\x50\x42\x9e\x01\x5e\x45\x2c\xb5\xaf\xd4\x67\x58\xfd\x0c\xd0\x43\x28\x6e\xc8\xec\x62\xd5\xab\x93\xce\x5e\x5f\xa9\x3f\xed\xd8\x84\xd4\xb3\x95\xc8\xc6\x9f\x3f\x3f\x95\x87\x1e\xb2\xdb\xb5\x63\xff\x17\xa7\x52\x49\xb3\x6e\x97\x01\xe2\x6e\xfd\x44\x03\x59\xd2\x02\xe0\x31\x64\x10\xea\xd8\x27\x76\xb7\x1f\xcf\xfd\x29\xe1\x1c\xc2\xf1\x05\x9c\x00\x34\xbe\x98\x68\xb0\xa4\x33\x14\x6b\x27\x2b\x86\x1e\x59\x67\x07\x82\x0e\x04\x4e\x77\xfc\xf5\x5d\xc8\xa8\x17\xec\xfb\x5e\x17\x20\xf6\xe3\x97\x3f\xdd\x39\xfd\x29\x8a\x16\xaf\xbc\xf5\xd7\xe4\x6f\x1c\xbd\xf2\xd6\xbf\x70\x80\xe6\xf6\xd9\xf7\x3d\xd9\x2d\x9b\x7e\x30\x26\x0f\x0d\xf3\x7d\x82\x9f\x8e\xc7\xc1\xce\x4e\xe2\xd8\x48\x8e\x54\xea\x77\x40\xe8\x7e\x8d\xe9\xb1\x4d\xbf\x63\x04\x34\xec\x2f\x9c\x25\xbd\x7a\xff\xcb\xfe\xea\xf4\xfc\xbc\x0f\x63\xd7\x59\xc2\x0e\xec\x76\x01\x35\x30\x9e\xa0\xfc\x16\x6b\x82\x03\xdc\xab\xfe\x84\x33\x65\x6a\x05\x34\x51\xbf\x0c\xf6\xdd\x15\x42\x84\x61\xa6\xa7\x88\x1c\x9e\x17\x18\x23\xff\x72\x85\x61\xc7\xf6\x3d\xbb\xfb\x04\x67\x91\xe1\x9b\x8d\x98\xb5\x93\xfc\xaf\x07\xc5\x5f\x63\xb2\xb0\xb5\xe6\x9c\x8b\x9a\x3a\xe7\x6a\x56\xf6\xc7\x52\x31\x6e\xef\x78\xf1\xe2\xd6\xf9\xe7\xd4\xec\x74\xeb\x92\xab\xcd\x56\x3c\xd6\xe5\x1f\x69\xcf\x16\xd5\x8a\xcf\xdf\xed\x38\x18\x53\xb7\x12\x83\x8f\xac\xd1\x05\x85\x33\xe9\x26\x37\x94\xa1\xe6\x86\xc2\x94\x23\xc3\x03\x22\x3b\xf2\xe1\xd3\xda\x8c\x7d\x55\x06\x57\xad\x1a\xd4\xed\x3f\xb9\x97\x81\x50\x34\xea\x46\xd8\x3c\x57\x17\x87\xcf\x7a\x17\xd8\x46\x9f\x17\xe9\x12\xb3\x2b\x5f\x0f\xe5\x10\x89\x3b\xa5\x31\xbe\x72\x4f\x51\x7b\x7e\xe7\xf8\x01\xc1\x9d\xe6\x45\x87\x82\x04\xbe\x53\xd9\x59\x7e\xd8\xe1\x50\xa4\xae\xe1\xe6\x8c\x89\x1e\x28\x91\x99\x17\x48\x22\x57\x2c\xa5\xff\x5c\xff\x83\x94\x36\xd0\xa8\xeb\xad\xd8\x79\xbd\x58\xc3\x92\x6c\xa1\xa4\x49\x94\x9f\xd3\x2a\x65\xfe\x4b\xfd\x9d\x9d\x36\xe7\x0c\xda\xc8\x68\x25\x66\x57\x92\xcf\x4a\x2a\x1e\xeb\x25\x4c\xcb\xf8\xbc\x54\x4a\x97\x56\x04\xeb\x06\x11\x83\x05\x31\x23\x46\xaf\x9c\xac\x6e\xf1\x58\xd9\x07\xc1\x87\x53\xf5\x56\x38\xc3\x73\xdd\xb4\x56\xd3\xbb\xbb\x38\xd7\x59\x15\xbc\x90\xf3\xd9\x0c\x1b\xc4\xf1\xe4\x78\xd0\x1a\xd1\x1b\x66\x89\x1e\x3b\xfb\x79\x8a\x67\xe9\xdc\x53\xe6\xf2\x75\xa0\x38\x7a\x15\x06\x3a\xe7\x53\xd3\x2c\x55\x1c\x52\x1f\x41\x96\xb8\xb2\x69\x88\x79\x1e\x81\x44\xb2\xdf\xe2\xd0\x5e\x03\x91\x54\xe6\x54\x48\xf5\x2c\xea\x10\xc9\x9a\x16\x1f\x45\xd3\xe1\x2e\x4c\xcd\x97\x90\x54\xae\x63\x57\xbd\xf6\xab\x8e\x55\x72\xda\x58\xcf\x8d\x6f\xa5\x7c\xd0\x97\xdc\x4d\xc5\xc0\xcf\x38\x55\xb4\x73\x43\xe9\x40\x6d\x3c\x44\xfe\x52\x0a\x13\x0c\x96\x6f\x77\x2b\x37\x57\x7a\x21\x2d\xde\x5c\xfa\x1c\x4b\xf3\x31\x5a\xc5\xb7\x58\x71\x4e\x46\x23\xee\x56\xcc\xcb\x58\x6d\x3f\x1a\xde\x9f\xf5\xca\x01\x54\x3e\x65\x75\xa8\x5c\x05\x8a\xd0\xf0\x48\x3e\xc0\x81\xdc\xc6\x71\x6c\x89\xf2\x3e\xea\x83\x58\xe3\x18\x16\x1c\xc2\x51\xc9\x21\x2c\x3d\x0e\x86\x84\x69\x75\xcf\x58\x8d\xd1\xca\x82\xc3\xcb\x8f\x47\xc3\xcc\x94\x4d\x79\xe1\x61\xb3\x00\xea\xea\x86\xe0\xa4\x08\xbf\x34\xd3\x9a\x6d\xbc\xd4\xfc\xcb\x7c\xcc\x9c\xa0\x8a\xc9\x76\xd6\x86\x91\xd5\xa0\x1b\x79\x6c\xb1\xd5\x49\xc0\x9d\x29\xcc\xfa\xf9\x2c\xf0\x17\x0b\x88\x92\x8e\x1e\x2c\x8e\x7a\x31\x18\x2d\xf7\xbc\x37\xdf\x15\xc6\x51\xeb\xff\x64\x02\x95\x0a\xb4\x37\x43\xce\xb7\x8f\x92\x78\xd4\x44\x71\xa3\x4b\x27\x22\x45\x3c\x13\x45\x98\xff\x91\x2c\xeb\xc0\xbc\x50\xca\x22\x8e\xf6\xc1\x00\x14\x25\x00\x1a\x80\x0b\xe6\xbd\x0a\x6c\x96\xef\x9e\x1c\x83\x67\x49\x1e\x87\x78\x1e\xe9\x75\x45\x4c\x24\x7a\xdf\x20\xe5\x90\xb9\x26\xd6\x2d\x1b\xd8\xd4\xbc\x65\x03\xfb\xfb\x0f\x1f\xde\x91\x9f\x2c\x1b\x44\xdb\xc2\x26\x2b\x05\x4c\x86\x12\xf9\x26\x1a\x5f\x2c\x55\x57\xb0\xe9\x4d\x63\xb8\x61\xcc\x9c\x5b\x29\x63\xd6\x44\x65\x90\x5f\x18\x59\xbe\xce\x93\xeb\x92\x5b\x40\xc1\x22\xcc\x58\x88\xf2\x30\xb1\x0a\x3c\x82\x71\x00\x81\xa6\x9b\x07\xa2\x6d\x86\xc0\xdf\xb3\x43\xb6\x19\xfe\x4a\x96\x21\x53\xcd\x9a\xa2\x30\x8f\xd8\x36\x80\x47\x70\x90\xc9\x51\x57\x64\xea\xef\xc5\xc3\xc2\xa8\x3d\x42\x28\xf6\xd4\xae\xbf\x57\x46\x2b\x81\x64\x01\xf2\xb4\x77\xc0\xc4\x32\x36\x57\xff\x54\xc3\xe2\x51\x2e\xab\xbf\x19\xfa\xa6\x3c\xde\x26\x66\x96\xba\x2e\x0b\x58\x8e\xdd\x85\x39\x1c\x9a\xa0\xfc\xff\xac\x20\xba\x7d\x47\xba\xdc\x2e\xda\xff\x46\xc6\xa1\x53\xaf\x8d\xfa\x74\x8a\xd6\x3b\xf1\x6d\xbd\x03\x90\xfa\xf8\x71\x9c\x02\x05\xe8\xf7\x76\x12\xf2\x85\xde\x36\x4f\xc2\xb0\xe9\x49\x28\xe6\xf6\xb7\xc1\xfe\x33\x36\x6d\xc1\x77\xa6\x4c\x06\x50\x12\x2d\xb5\xc2\xdc\xa7\x38\x67\xc9\xd9\x53\xef\x3c\x0b\x59\xcc\x41\x32\xb6\xb0\xe0\x77\xef\x66\x10\xd3\x24\x20\xd2\x8f\xc3\x4a\xb9\xb1\xe8\x9e\x17\x7d\x07\xcd\xe2\x3e\x61\x62\x73\x9c\xc4\xec\xee\xe7\xcf\x77\xeb\xae\xf4\x95\xd1\x19\x73\xc5\x09\x86\x8f\x16\xf6\x71\xf4\x3a\xba\x81\xe8\xd4\x89\x61\xa7\xdb\x67\x2e\xb2\x3f\xfb\x78\xde\x61\xf7\x78\xf7\x9b\x3b\xc2\x29\x9c\x84\x7d\x04\x97\x81\xe3\xc2\x8e\xfd\x8e\xdd\xef\x76\x17\x30\x16\x1e\xad\x4f\xe0\xba\x0b\x58\x3b\x9b\x7b\xa8\xf1\x77\xf6\x33\x7b\xdd\x5d\xaf\x15\xab\x32\x28\xf6\x29\x45\xdd\xa6\x72\x8b\x96\xfb\xe0\xb1\x98\x9d\xa7\x7f\xc3\x87\xdf\xe3\xe3\x1f\xcd\x32\x0a\x97\x3d\x0c\x72\x49\xa1\x31\xd9\x64\x35\x66\x26\x86\x43\x4a\x5c\xa5\x1c\x32\x52\xe4\x90\x91\xee\xa9\x9f\x23\xc9\xe8\x07\x7f\xb7\xdc\x50\x9c\x9b\x34\xa1\xc0\x46\x3c\xca\xb3\x11\x57\x65\x06\xab\xd3\x03\x29\xe0\x6f\x7e\xba\x0d\xf8\xf5\xd8\x44\x77\x96\xd7\x2c\x1f\xe9\xc5\xdf\x16\x66\xf4\x80\x4d\x9b\x1f\x85\x2b\x78\x1b\x77\x20\xf5\x4e\xe5\x4f\x66\x10\xbf\xbd\x09\xc5\xe1\x38\x67\x78\xcb\xbe\x42\xe3\xa2\x36\xa4\x1b\xbc\xb3\xd3\x41\x63\xd4\x9f\xfa\x01\x86\x48\xa1\x44\x38\x4d\xea\xf4\x2e\xce\x60\xec\x22\x7f\x89\x23\x44\xe7\xd8\x87\xe1\x6a\x01\x91\x73\x19\xc0\x75\xb7\xdb\x05\xcc\xe9\xa7\xef\x2c\x97\xc1\x2d\x23\x17\x82\x92\xad\xe5\xea\xd8\x5a\x23\xd4\x61\xeb\x1b\xfe\x35\xfc\x3f\xd2\x29\xb9\xcf\xd8\xa1\xbf\x86\x5f\x7d\xc5\x56\xe2\x8c\x09\x86\x3f\x1d\xcb\x16\x17\xe1\xe4\x1b\xf5\xc7\xc9\xdd\xfa\x49\xf8\xdf\xa3\x6f\x30\x07\x4b\xc7\xe9\x82\xa7\x83\xc4\xbb\x50\x5f\x19\x99\x34\x70\x2e\xf0\x84\xd0\xb1\x93\x92\x15\xc6\xdf\x98\xc8\x10\xf5\x5e\x04\x65\x9f\x76\x9c\x6e\xf7\x44\x99\x53\xce\x84\xf2\xe8\x1c\x2e\x1b\xa0\xe3\x50\xa7\xa0\x6e\x37\xf1\x40\x95\x00\x66\xab\x0c\xe5\x46\x62\xcb\x0f\x2d\x68\x5c\x0c\x1b\x8b\x13\xd2\x10\x24\xbb\x79\xf2\x74\x00\x44\xb6\x20\xf1\xfb\x06\xf9\x98\xff\xbd\xee\x9e\xc0\x0b\x3c\x19\x87\x00\xae\x1b\xd0\x6a\xc5\xd9\x76\x0c\x35\xbf\x48\xfe\x93\x7a\xfe\xb1\xbf\xa5\xc3\x38\xfb\xf9\x82\xe0\x6b\xe8\x60\xc8\xdd\x72\x63\x9d\xe0\x3b\xe3\x8c\x3b\x6d\x1a\xb9\xbe\x1e\xec\xec\x48\x67\xd0\x04\x95\x06\x2a\x5e\x0d\x08\x5e\x01\x9c\xfd\x76\xa8\x34\x1a\x4e\xb8\xef\xf3\x13\xfd\xc4\xb0\x8c\xb4\xd4\xc5\x95\x9d\x2e\x38\xfe\x1a\xf6\x3f\xdc\x2e\xe1\x78\x3c\xc6\xdd\x35\x08\xc6\x99\x8b\xdf\x0a\xb3\x63\x8d\x8c\xf3\x1c\xa9\xf3\x1c\x4d\x4e\x12\x9b\x0c\xca\x76\xb1\xab\xb4\xdd\x4d\x4f\x37\xf1\x4b\xbf\xc0\x93\x9d\x9d\x0e\xdd\xd1\xbb\x57\x67\x27\xbf\xfc\xe9\x0e\xaf\xfb\x7f\xba\x0b\xc9\xff\xa0\xf5\x2f\xdc\xf7\x1a\x08\x57\x02\xc2\xf9\x75\x01\x69\xbe\x06\xb1\x69\x2d\xd2\xa9\x1d\x52\x4f\xbd\x4e\xc6\x03\xef\x02\x01\x67\x32\xbe\xc0\x00\x4e\x84\x2f\x9f\x74\x8e\xec\xdb\x84\x41\x22\xc8\x00\x3b\xdd\x2e\x08\xc6\x17\x76\xe2\x20\x6b\x03\x5b\xfa\xc5\xda\x40\x64\x88\x23\x7f\xd1\xbc\x54\xb6\x74\xa2\x74\x98\xfb\x7d\x8a\xc5\x12\x48\x02\x9f\x8e\xc7\xe8\x02\x27\xad\xa9\xa3\x7a\x40\x08\x03\x70\xd6\xf4\x60\xf1\x57\x77\x1f\x28\x7f\x25\xbc\x7b\x4f\xd0\x7a\xfd\x24\x07\x11\xe3\x27\x29\x84\x55\x97\x2d\x06\x22\x07\x43\xba\x4a\x76\x73\xc0\x43\x1d\x14\xc9\x3a\x15\x98\x48\xef\xd0\x04\x38\x00\x4b\x2f\x52\xf5\x69\xd8\x09\x3b\x77\x6b\xe6\xdc\x0d\xc8\x7e\x2a\x31\x74\x5f\xb1\x7e\xf9\x8e\xf6\x7f\x8d\xfc\x90\xf6\xbe\xa6\xb4\xe4\x89\x7a\xfa\x74\xc8\xa9\xf3\x67\x39\xf5\x6c\x23\x1f\x9b\x90\x1d\xd8\x67\xda\xfe\x4e\xd8\x67\x3d\x66\x17\xcb\x5b\xfa\xe4\x3b\x36\x2f\x4c\xe6\xd1\x5d\x77\xc1\xc5\x44\x4e\x47\xd2\x06\xf5\x53\x82\x67\xa6\xf3\x69\x3c\x33\xc3\x89\x7e\x6c\x93\x33\xd3\xf8\xd8\xdd\xad\x8d\xe7\xcd\xf8\xed\xee\x44\x3f\x86\xd2\x49\xd8\x19\xdf\xad\xcd\xc4\x03\xa9\xc4\x43\xfa\xcc\xd8\x34\x88\x84\x60\xa4\xe9\x3e\x51\x62\x2b\xc2\x0c\xf6\x10\x78\xf9\x4f\x90\x32\xd1\x8e\x3f\x46\x02\x7f\xba\x00\x29\x08\x24\x1f\x6b\x7f\xc9\xf7\x7c\xf2\xd1\x18\x25\xf8\x03\x56\xe3\xa0\xe3\x80\x08\x60\x00\xd9\x60\xae\x16\x3c\x12\xf6\xc5\x36\xf6\x85\x95\x71\x67\xa7\xe3\x8e\xe3\x8e\xe1\x8d\x70\x6d\xe7\x48\xd1\xed\x02\x3f\xf1\x44\xbf\x63\x27\x9d\x47\x8d\x84\x0a\x3a\xfb\xeb\x24\x78\xc0\x25\xf4\x4c\x76\x38\x76\xbb\x60\x95\x44\x48\x30\xc7\xe4\xee\x1a\x06\x31\xb4\xb4\x4f\x56\xea\x27\x84\xcf\xd3\x77\x25\xec\x6a\x4e\xec\xea\x02\x91\x16\x66\x11\xf6\x5f\x9d\x4d\xc4\x9c\xfd\x71\xdc\xb9\xa0\x4f\xc0\x2f\x22\x55\x1e\xa7\xb0\x70\xfd\x0b\x65\xe9\x24\x21\x7b\x3a\x1e\xfb\x6c\x83\xef\x04\x94\x09\x5c\x65\x14\x0a\x85\x2f\x58\x8d\xef\x84\x17\x8f\x84\xc3\xab\x33\x06\x85\xf0\x82\x75\x30\x51\xa0\x61\x98\x9c\x71\x3f\x94\xe5\xc7\x9d\x4a\x1f\x29\x5b\xf5\xea\xac\xdb\x05\x51\x0a\xca\x2b\xea\xb8\x9c\x02\xa3\xd3\x15\x07\xc0\xd7\xa8\x0c\x40\x92\x24\xe8\x34\x4c\x44\x0a\xd1\x00\x2a\xf2\xd7\xe7\xcf\xc6\xa0\x2a\x26\x6a\x13\x78\xfc\xc2\xa2\x89\x08\x98\x7b\x7f\x22\x7c\x9f\x1a\x7a\xb5\xfe\x65\x4d\x89\x8b\xca\x86\xf8\x55\xb9\x7a\xc2\xbc\xc7\xd0\xeb\x11\xf9\xfb\x59\xe0\xc7\xf8\xb1\x08\xb3\x7f\x7f\x35\xf8\xf5\xab\xe5\xe5\xdf\xcd\xc2\x2c\x57\xfb\xbb\xd1\xe2\xd2\x0f\xa1\xf7\xc2\xf3\x10\x8c\xa9\x70\xeb\xc8\x3f\x75\x81\x37\xc7\xea\xc6\xc5\x5c\x26\xb0\x72\x40\xa9\x30\xe9\x11\x98\x70\x71\x77\x2f\xcf\xb4\x56\xe0\xd3\x98\x8d\xd9\xd6\xe3\xb7\xf7\x37\xd0\xde\x95\x78\x21\x48\x05\x9c\xea\x16\x6e\x14\xa1\x93\xe9\x9a\xfc\x4d\x76\x27\xc0\x56\xdc\x1b\x5f\xf3\x08\xcb\x77\x11\x4a\x52\x89\x81\x0b\xa6\xa9\xd9\x38\xa4\x7c\x99\x4c\x55\x6c\x6e\x4f\x6c\x69\x9e\xab\x85\xd1\xc5\x22\xc7\xf3\x21\x71\xbc\x28\xf1\x7f\xd0\x5f\xd4\xa9\x06\x3e\x9a\x00\x5b\x20\x64\x3a\x6b\x5e\xce\x60\x15\x5c\x3b\x8a\x75\xac\xea\x16\x7b\x10\x3b\x7e\x3e\x46\xaa\x2e\x32\xef\x50\x84\x23\x37\x0a\x36\xa9\xcd\xaa\x98\x58\x97\xb2\xbb\x92\x9d\xca\xd5\x36\x2b\xf0\x96\xfa\xd4\x86\x45\x4d\xc4\x7f\x62\x8d\x99\x51\x2a\x55\xbd\x28\x73\x98\xa9\x54\xe2\x19\x18\xe1\x5d\x75\xa4\x7a\x26\x1c\x75\x7b\x53\x47\xb5\x95\x2d\x66\x96\xff\xc7\xb2\xbd\x62\x85\x16\x59\xe2\xc3\xec\x30\x8b\x38\xf7\xc3\x99\x15\x85\xd6\x89\xbe\xdf\x99\x0d\xb8\x87\x3d\x8f\x5c\x27\xa0\x81\xc2\x7f\xdc\x4d\x27\x4b\xb4\xc8\x1a\x1f\x72\xdb\xe9\x24\x08\x64\x32\x9b\x9e\xd9\x81\xed\xef\xba\x76\xf9\x6e\xb8\xd9\x22\x6d\xdd\xe3\xd8\x6c\xb2\xb2\x47\x41\xba\x05\x84\xdb\xde\xcc\x1a\x05\xb8\x4b\x8c\x9e\x1b\x19\x2f\xa4\x2f\x23\xcb\x62\x93\x9b\xb0\xa6\xbe\x6d\x23\x47\xc4\x78\x68\x7b\x06\xfc\x44\x35\x5e\x41\x2f\x8e\x56\xc8\x85\x8f\x45\xee\x39\x3c\x0d\xf6\xce\x06\xaf\x72\x62\x47\xc5\xa4\xcf\xe9\x9c\x09\xe7\x19\x38\x97\xb4\x34\x52\xca\xbc\x97\x11\x76\x54\xbf\x03\x16\xc5\x56\x39\xef\x94\xc9\x45\x70\xaf\x41\x82\xac\xdd\x94\x89\xbf\x6e\xb0\x96\xe4\xef\x0f\xa8\xff\x22\x39\x95\x52\x62\xd3\xf6\xd2\xe2\xd2\xca\x44\x38\x45\xee\x16\xfb\x61\x24\xfe\x37\x1b\x45\x05\x8c\x8a\x8b\x39\xe5\x44\x29\x64\x5d\x41\x58\x34\x98\x73\x13\xb7\x50\xbb\xec\x3d\x9c\x11\x1e\x04\x41\xcf\xba\xf6\x9d\x94\xcf\xc5\x30\xd7\xe7\xa2\x49\x69\xb0\xc2\xa1\xf2\xdd\x3b\x1a\x3a\x85\x57\x23\xaf\x66\x7a\x99\xd7\xb4\x80\x3a\x3a\x4b\x1f\x3b\x01\x73\xce\x5e\x2d\x97\x10\xb9\x4e\x0c\x35\xaf\x0e\xae\x0b\x4b\xd3\x15\x4e\x51\x9b\x90\x4d\x03\x7d\x7a\x68\xa2\x39\x87\x4e\x80\xe7\x3d\x77\x0e\xdd\xab\x47\xa5\x2e\x7a\xf5\xfe\x5f\xff\xfe\xf5\x5d\xec\x15\xfa\x67\x37\xd6\x08\xa9\xcb\x56\x35\x42\xa3\x06\x1a\xa1\xe2\x4a\xac\x9a\x1f\xc4\xa6\x1a\x21\xd5\xcf\x7b\xc8\xab\x78\x26\xeb\x88\x56\x78\xb9\xc2\x56\xa2\xd9\x39\xc7\x0e\x5e\xc5\x45\x11\xfb\x59\x8d\x43\x7e\x1c\x6a\x81\xb3\x86\xd6\x6c\x94\x72\xd8\x18\x16\x39\x6c\x94\xf1\x5b\x75\xbd\xee\xd8\x70\x3f\xf8\xa1\x47\x09\x48\x48\xd3\x34\x6e\x48\x74\xcd\x3c\xf2\x9b\xc8\xe3\xa5\x9f\xaa\xf3\xa4\x0a\x40\x44\x16\xe8\x16\x42\x74\x32\x53\xd3\x0a\x53\x35\x99\x5d\xa6\xb2\x55\xcd\xba\x8a\x75\x77\xb4\x6c\x41\xa7\x04\xbf\x5f\x9d\xd5\x5d\x4c\xaa\x0a\x32\x8d\x36\xe7\x1d\xd1\xfc\xe0\xca\xb1\xd8\x1c\x2b\xcb\xd6\xc0\xa2\xee\xaa\x2d\x60\x0f\xb0\xf4\x84\xda\xf1\xa6\x3e\xf7\x39\x19\x35\x94\x5e\xe4\x26\x7e\x48\xf9\xe8\x67\x99\x24\xd2\xea\x25\x63\xe6\x37\x09\x56\x1e\x02\x9b\x32\xa8\xdc\x43\x97\x86\xd1\xb3\x6e\xfb\x74\xe6\xb1\xe5\xc7\x56\x0c\xb1\x85\x23\x0b\xa3\x15\x04\x56\x1c\xd1\xe2\xb6\x28\x61\x30\xbe\xff\xf0\xe1\x1d\xad\x7c\x3b\x7b\xff\xee\xd4\xa2\x9f\x51\xd7\x46\x56\xe8\x86\x4b\x1c\x16\x9e\xa3\x68\x35\x9b\x5b\x2f\xc3\xeb\xe8\xd6\x9a\x46\x88\x56\x01\x3d\xa5\x34\xdd\x72\x66\x30\xc4\x86\x2a\x36\x72\x85\x6d\x96\x07\x6d\x17\x37\xde\x44\xa2\x5c\xdd\x46\xd8\xcd\xbb\xb9\x7f\xdc\x7e\x4b\x6f\x9e\xcd\xa4\x73\xc5\x64\x80\x92\xc2\x90\x34\x2b\x2d\x23\xe2\x69\x22\x25\x06\x95\x6b\x2c\x8c\x50\xae\xa3\xf0\xd7\x7a\x07\x76\x24\xff\x34\xaa\xfe\xeb\x61\xc9\xc3\x2a\x05\x12\x9f\x66\xa9\x1e\x48\x18\x5e\x9a\xf3\xb6\x1d\x15\x41\x0e\x5b\xf9\xa8\xb8\xdd\x18\x3a\xc8\x9d\xf7\x2e\x1d\xf4\x58\x78\xde\xef\xce\xff\xe5\xff\xf3\xdb\x5f\x4f\xcd\x3c\xef\xc7\x8f\x0e\x9a\x0d\x6c\xc0\xfe\x18\x52\x09\x85\xac\x80\x99\x4d\xf9\x4a\x6d\x60\xbf\x5d\x62\x56\x60\x8b\xfe\x29\x52\x0a\x07\xd0\xa5\xde\x71\xb5\x3e\xe3\x6c\x76\x6b\xed\x78\x55\xfb\x1a\x33\x58\xa2\x68\xa9\x7e\x70\x05\x6f\x65\x74\x18\xb0\x9f\xc7\x11\x22\x38\xfc\x9c\x39\xa3\x30\x1f\x68\xd9\xf6\xb9\xfc\x2b\x2f\x4c\xf3\x48\xf4\x4c\xb0\xc0\x06\x17\x26\x21\x81\x5d\xbe\x4a\x33\xae\x81\xd8\xe5\xe5\xb9\x92\xa1\x09\x09\xf1\xbe\x25\x3b\x17\xbf\x0a\xa7\x91\xa0\x26\xbb\x03\xbd\xd4\x8f\xb8\x65\x63\xc6\x9d\x2b\x8b\x93\x5d\xc5\x42\x3f\x0f\xe8\xff\xc9\x42\x1e\x0d\xb2\xe6\x33\xdd\x03\x1f\xab\x01\x27\xac\x57\xc6\x31\xa9\x55\x72\xf5\xbe\xb9\x52\x92\x5a\xd2\x84\xd6\x37\x51\xf0\xa0\xcf\x80\xdf\x57\x8f\x6a\x3f\x81\x7e\x9f\x49\x37\xa3\x03\xa0\x00\x90\x20\x05\xa1\x7b\x7d\x4e\xc4\xd5\x32\x21\x72\x8e\xfa\x85\x99\x1a\x7c\x11\x85\x7c\x90\x82\x01\x24\xfd\x37\x7d\xcd\xa7\x5d\xfa\x75\x52\x18\x05\x6c\x1d\x1c\xbc\x08\x8a\xb1\x51\x12\x60\xd9\x3a\xb4\x52\x5d\xd7\x86\x57\x66\x6a\xa1\x2c\x85\x55\x57\xcb\x78\x94\x74\xff\x9e\xa6\x8f\xfe\x8e\x1d\x31\xba\xde\xe1\x01\xb0\x1d\xe4\x3b\x3d\xae\x72\xd5\xf2\x40\xf1\x69\xae\x7c\x9e\x77\x9a\x02\x45\xd4\xb3\xbe\x48\x55\xe7\x19\x81\xd1\xe1\x04\xd8\x5c\xf4\x1e\x1d\x69\xe5\x6f\x1a\xd9\x4a\x9a\xb1\x62\x5c\x6d\x79\x98\x9b\x87\x22\x57\xea\xa3\x73\xae\xc1\xc4\xd4\xac\x7c\x3f\x3a\x24\x23\xa4\x8d\x3a\x86\x76\x79\x25\xc2\x72\x74\xad\xb9\xf4\x8e\x91\xd4\xfb\xa5\x77\x19\xb4\x63\xa2\x34\x9b\xc9\x44\x70\x9c\xea\x05\x25\xef\x31\x1a\x1c\x35\x8f\x02\xae\x60\x49\x3b\x15\x0d\x98\x57\xce\xee\x50\x39\x53\x23\xb0\x3b\x9a\x18\x71\x96\x1f\xcd\x14\x0c\xaa\xe1\x9f\x9d\xaa\xac\x41\xae\x2f\x72\x36\x69\x5f\x4b\xce\xf9\x34\x34\x4c\x6a\x50\x09\x44\x61\x0b\x7e\xe7\x12\xe9\x56\xdc\xb2\x4b\x19\xca\x60\xf3\x4b\x56\xc9\xaa\xf1\x3c\x0a\xdd\xb9\x13\xce\x28\xdc\x16\x2b\xc2\xce\x52\xae\xe6\x39\x82\xbf\xad\x7c\xc4\x04\x3d\x5e\xc7\x0a\xe4\x01\xd2\xb0\x26\x9a\x97\x98\x74\x9b\x10\x2e\x2a\xac\xb2\xda\x50\x35\x0d\x9d\x5c\xe2\xa0\x6c\x5c\x2f\x0e\x22\x2c\x05\x0e\x21\x67\x24\x45\x1c\x1a\x58\x51\xc5\x31\x2e\x71\x90\x32\x85\x64\x1a\x91\x24\xd9\xd8\x26\x79\x80\x6a\x99\x6f\x4b\xa0\x22\xeb\x76\xd5\x45\x57\x79\x62\x47\x44\x78\x13\x9c\x24\x77\x67\x13\x0f\x69\x14\x72\x1d\x0b\x97\x56\xb0\x4c\x2b\x52\x36\x1c\x16\x9c\x0f\x90\xf4\xdc\x4a\x82\x22\xe5\xf4\xec\x4d\x32\xa2\x6b\x82\x49\x1c\x04\xfb\xd9\xba\x78\xec\x59\xde\x6c\xd3\x37\x6e\x33\xc7\xac\x2c\xb2\x95\xdd\xfc\x5a\xf9\xc0\x11\xab\x1b\x9b\x85\x56\x7e\x96\xb8\xba\xb7\x90\xb9\x82\xd1\x68\x97\x80\xd5\xa8\xfd\xa9\x84\xd8\x86\x81\x46\x25\x33\xc9\x1a\xbf\x4a\x47\x32\x8c\x92\x67\xfc\xaa\x79\x59\x72\xb1\xe3\x61\x2f\xcb\xa3\x82\x5b\x41\x98\x31\xaa\x5d\x05\x04\xd5\x02\x38\x2d\xa3\xfe\x82\xdb\x34\x52\xfd\x06\xdc\xda\xd6\xc8\x7d\x45\x62\x9f\x4f\xea\xf9\x81\x4b\xcb\x80\xd5\xd5\x58\x15\x4f\xc1\xf6\x89\x3b\x2d\x90\x9b\x26\xee\xe2\x61\xfb\xc4\x3d\x11\x81\xec\xa5\x13\xc7\x7e\x38\xb3\x81\x7d\xe3\xa0\x90\xfd\xe5\x22\x1f\xfb\x2e\xcd\xff\x05\x17\x4b\xf5\xf6\xdc\x8c\xe2\x27\x87\x82\x96\xc0\x57\xdd\x23\x28\xa1\xe6\x85\x4d\x47\x03\xa9\x17\x28\xb8\x0b\x06\x86\xbb\xc0\x78\x0e\x36\xbf\x03\xea\xd3\x7f\xb6\x88\x56\x24\xd0\x81\x49\x5c\xac\xcb\xaa\x18\x68\xec\xc0\xec\x76\x70\x44\xf6\xc6\x60\xf7\xaa\x70\x54\x72\x4b\x26\x67\x0d\x35\x1a\x0f\x7e\xc5\x8c\x9a\x4d\x85\xe0\x02\x02\xcb\x7b\x6e\x93\xbc\xd2\x2e\xff\xe8\xc4\xb5\xa2\x8e\x86\xc0\x22\xad\x9a\xfa\x1d\xd2\xde\x5d\x13\xed\xdd\xbd\x07\xda\x1b\xcb\x28\xda\xac\x39\xbf\x15\x2a\xbb\x5f\xce\x53\x0f\x0f\x0c\x65\xe9\x0f\xb2\x08\x7f\x2f\x54\xb4\x0e\xde\xe9\x3a\xc0\xe1\x41\x3b\xe4\x56\xed\xa7\x4d\x72\x9b\x53\x22\x7e\xb8\x47\x36\xa9\x35\x72\xbb\x5b\x9b\x3b\xaf\x40\x44\x29\xf8\x5b\xa6\xa2\xac\xcf\x2f\x64\x94\xa2\x33\x7b\xf0\xbb\xa7\xa3\xc7\x06\x32\x7a\x7c\x0f\x54\xd4\x09\x7c\x87\x96\xfd\x8c\x68\x89\x4c\x60\xcf\xd0\xd2\xb5\x81\x3d\xc7\x98\x5a\xd8\x68\xe6\x0e\xe6\xf6\x38\xb5\x81\x8d\x5d\x5a\xa4\x14\x07\x5b\xa0\xb7\xc3\x0a\xf4\x76\x64\xa0\xb7\x23\xc3\xd1\x78\x4c\x04\x97\x3d\x48\x51\xdc\x51\x4b\x14\x37\x53\x4b\xbb\x25\x8a\x5b\x56\xb2\xbe\x0d\x8a\x7b\x5c\x41\x9b\x71\xd4\x92\xe6\x5f\xcb\x64\x5b\xf9\x24\xb5\xa2\xc3\xd8\x2d\xd0\x61\x88\xe0\xda\xf6\x95\xd9\xa3\x63\x7a\x1c\x52\x37\x04\x73\xfd\xf8\x1d\xdd\x13\x66\x53\x71\x36\x54\x41\x21\x69\xd4\x0f\xc5\x89\x5d\xb3\xe9\x8e\x80\xbc\xef\x04\xcb\xb9\xd3\x27\x6d\xf4\xd3\x03\xb2\x1d\x79\xb0\x42\x4f\xb4\x51\x51\x57\xcc\xe7\xb6\x64\x56\x4c\xe8\x2e\x9d\x16\xef\xab\x64\x62\xbc\xb3\xd2\x99\xfd\xe0\x87\x9e\x79\x5e\x15\xc9\x1b\x1d\x8d\x32\x95\x65\x13\xa7\x43\x99\xa7\x5d\x7b\x2c\xc3\xba\xda\x52\xa9\x0f\x41\xa6\x22\x91\x72\xa4\xb2\x16\xf2\x3c\x1a\x7a\x58\xcb\x75\xf0\xd1\x70\x22\x7b\x06\x4e\x64\xaf\x36\x27\x62\x34\xf2\x25\x12\x15\xb3\xad\xa7\x9c\x3f\x8a\x35\x93\xcd\xae\x70\x36\xf0\x41\x31\x6b\x61\x3c\x9e\xc3\xec\x8b\x1c\x14\x28\x9b\x59\x8e\xa9\x2d\xe7\xc8\x57\xb4\x9a\x35\x58\x9e\x7e\xf4\x86\x86\x37\x5b\x5b\xa0\x76\x5c\x1b\x9a\x4f\x0a\x4e\x44\x45\xe4\xaa\x43\x65\xc8\x81\xd2\xc5\x8a\x6d\x22\x60\xf6\xce\x1a\xa6\x1f\xb7\xbf\x37\xd9\x5b\x70\x0b\xb8\x67\xb8\x44\x87\x99\xe7\xdb\x5a\xdb\xef\x0f\xed\xb2\x5a\xc1\x66\x4e\x06\x55\xb6\x26\x7b\xf5\x0f\xd3\x8f\xc9\xc6\xd4\x11\xa2\x78\x88\x88\x85\x23\x8b\xc7\xb2\xd4\xf1\x01\xa8\x3c\x69\x03\x3e\x69\xcf\xeb\x4e\x9b\xcc\x95\xcc\x59\x24\xb4\x6a\x05\x57\xb2\xaf\xf7\xc1\x41\x6b\xc2\xd3\x5e\x05\xe1\x69\xb7\x30\x0c\xb2\xcd\x87\x43\x30\x2a\x8f\xae\x94\x7e\xe5\xac\x0c\x2e\x2b\x78\x4c\xfe\xe0\x5e\xe5\x53\x14\x2d\x7a\x3c\x49\xb5\x8c\x50\xef\xf9\x71\x8f\xba\xd0\xf6\x18\xd7\xe3\x87\xd7\x91\xeb\x08\x0f\xe3\x29\xf3\x59\xc7\x8e\x1f\xc6\xaa\xfb\xba\x39\x37\x77\x10\xdd\xc8\x88\xce\xb9\x13\x6f\xec\xc2\x9e\xf6\x15\x7f\x68\x47\x76\x3f\x8c\xb1\x13\xba\x5c\xeb\x18\x3f\xf2\x5a\x3b\x2f\xff\xf1\x7f\xdf\xbf\xfa\xf1\xe6\xdf\x66\xbf\xf6\xe7\x3c\xb0\x29\x2f\x86\x53\x4d\x8e\xa1\x87\x39\x0f\x64\x04\xe4\xa9\x54\x94\x72\x25\xac\xc9\x22\x5b\x2b\xf4\xcf\xd6\x1d\x30\x59\xe4\x65\xd1\x90\x85\xc1\x95\x45\xc9\xf8\x5b\xc9\xac\x61\x52\x62\x65\x82\xb3\x2d\x3a\xe7\xb8\xee\x25\x68\x94\x64\x6c\x63\x4c\xcf\x9b\x48\x0d\x42\x13\xc3\x32\x24\x35\x74\x63\x37\x88\x7f\xac\x85\x0e\xd1\x2a\x94\x39\xcd\x46\x54\xe5\xce\xcb\x59\x7c\x41\x8c\xfb\x45\x8c\x17\x41\x90\x8f\x19\xca\x9b\x2c\x18\xe3\x24\x88\xb9\x0d\xf4\xf9\xb2\x8b\x4d\x77\x31\x6f\x83\xc4\x21\x63\x3d\x3c\x4b\xf6\x32\x75\xe0\xe8\x14\x1f\x02\x07\x36\x4f\x10\x21\x62\xe4\xea\x73\x11\xc6\x8b\xba\x62\x69\x0f\x05\x06\x32\x5b\xf8\x00\xe0\xf1\x00\x84\xe3\xc1\x93\xf8\xc6\xc7\xee\x3c\x55\xd8\x23\x96\x09\x60\xd1\xf8\xeb\x3b\xde\x04\xf5\x99\xf0\xdf\xbd\xa3\x1c\x91\x74\x5b\x3a\x81\x5f\x8d\x87\x4f\x2e\x11\x74\xae\x9e\xd0\x37\xc2\xb5\xe9\x04\xa7\x5e\x08\xef\xa7\x93\xf0\xab\xf1\x70\xbd\xa6\x29\xec\x69\x67\x34\x7d\x2b\x3c\xe1\xb9\xa8\xe9\x1a\x4f\x14\xbf\x28\xb6\x6f\x27\xb4\x58\x2a\xf5\x99\xa2\xb8\x72\x02\xd7\x4f\xe4\xc7\x38\xf5\xb1\x74\xaf\x12\xdf\xde\xf8\x78\x6e\xc9\xa7\xac\x03\xac\x74\x10\xa6\x3a\x90\x9e\x5a\xa2\x03\xf9\x80\x7d\x1b\xae\x9f\x70\x20\xa7\x3e\x64\x1c\xc3\x7a\xbd\x9d\x82\x23\x7e\x88\x61\x48\x38\xaf\x67\xd3\x08\x2d\x9e\x4d\x7d\x18\x78\x31\xc4\x06\xd6\xed\x61\x62\x0f\xdf\x2d\x2e\xfd\xbf\xe3\x69\x4e\x9a\xa2\x45\xe4\x51\x3f\xb7\x25\x44\x0b\x3f\x8e\xfd\x28\xfc\x2e\x42\x0b\x1b\xd8\x1f\x25\x6f\x8f\x1c\xcf\x8f\x6c\x60\x87\x22\xf9\xb9\xe2\xb6\x91\x7d\x54\x54\x38\x51\xa4\xa2\x38\xa4\x96\x3f\x2d\x24\x4f\x42\xb1\x27\x01\x98\x21\xbd\x82\x74\x89\x16\x9c\xc0\xdb\x9e\x1f\x3b\x97\x01\xf4\x88\xd8\xb8\x07\x86\xc7\x06\x92\x2e\xa9\x9e\x4c\xbf\x69\xa3\x88\x1a\x64\xb8\x92\xb4\xe0\x12\xd0\x86\x2b\xc8\xa2\x31\x52\x1b\xf0\xb4\x4f\xc5\xe1\xd8\x52\xdd\xc0\xaf\xa9\x21\xb8\x10\xe1\x12\xd4\xd6\x94\x32\x94\xee\xd3\xf8\x65\x88\x10\x8d\xe7\x65\x23\xf0\x4c\x0e\xc0\xb6\xe6\x4e\xdc\x63\xef\xd4\x48\xb4\x5a\x69\x58\x59\x97\x89\x08\x5d\x9c\x66\x75\x49\x44\x31\x3e\xd5\x1e\x39\xcc\x3d\x96\xd7\x58\x2a\xb4\x93\x7d\xb1\x9f\x0b\x9d\xb6\x0c\xde\xfc\x8e\x40\x55\x53\x0d\xc8\x57\xef\x94\x98\x19\x60\x3f\xbf\x5c\xf9\x81\x77\xbe\x9a\xcd\x60\x2c\x8c\x6b\xf1\x3c\xba\x39\xa5\x83\xfd\x3c\x87\xdc\xdc\x76\xca\x07\xa7\x7f\x73\xa3\x99\xc2\x4a\xee\x0b\x10\xee\x29\x96\x8d\x3d\xea\x32\xc9\x92\x98\xb0\x9f\xc3\x09\x4b\xe8\x60\x71\x8c\xb6\x42\xfe\x2e\x63\xa1\xb3\xd9\x6a\xdf\xc0\x9b\xd7\x3c\xb1\xd7\x4f\x31\xb4\x1c\x91\xb4\x40\xa8\x51\x5c\x27\x08\xa0\x67\xfd\xef\x9f\xef\xee\x30\x44\x8b\xf5\xfa\x7f\xff\x6c\xa7\x4d\x2b\x6a\xaf\x7e\xfc\x53\xe8\xff\xb6\xa2\x63\xee\x2b\xde\x8f\x66\x23\xe1\x3e\xf5\xb1\xd7\x70\xa1\x51\xf3\xda\xa6\x86\x63\x15\xb6\xc2\xc8\x72\x94\x24\x84\x01\xf6\x5f\x5a\xc8\x89\x25\xfe\xfb\x8b\xd5\x21\x7c\xa6\xa8\x78\xd0\x6d\x98\xf7\x2a\xcd\x74\x69\x33\xae\x9d\x40\xc2\x6c\xe7\xce\x5a\x3d\x8f\xd3\x98\x57\xd7\xb9\x82\x1c\x55\x16\x9d\x98\xe4\x81\x21\xe7\x84\xe6\xc9\x70\x42\x0b\x7e\xf2\x63\xec\x87\x33\x81\xb3\xc0\x8a\x90\x45\xab\x56\x58\x4e\x78\x2b\x31\x91\xaa\xc3\xab\x71\x55\x20\x6d\xfc\x31\x96\xdd\x3c\x4e\x2b\x4a\x4f\xdf\xbe\x39\xff\xe9\xf5\xc7\x37\xe7\xef\x5e\x9c\xbe\x3c\xff\xf8\xf2\xcd\x8b\x6f\x5f\xbf\x3c\xab\x65\xb4\x37\x15\x56\x6d\x81\x4a\x9e\xb7\x4d\x23\x93\x62\x20\x5b\xa3\x92\x0f\x49\x16\x99\x07\xe4\x1e\x18\x1e\x09\x7a\x18\x8a\x05\x37\xa6\x88\x12\x64\x1b\xd2\xc4\xc4\x45\xb1\x0a\x91\x3b\xaf\x43\x11\xcf\xdb\xa5\x87\x87\xdb\xa1\x87\x9c\x1a\x4a\x78\x6e\x48\x0f\x13\x6a\x78\xd8\x22\x35\xcc\xf3\x7c\xbf\x3f\x6a\x28\x31\x36\x45\x0f\xdf\x68\x98\xdc\x0a\x45\x6c\x90\x30\x76\x43\xfe\xf2\x8c\x9c\xfa\xd0\x91\xe5\x57\xb7\xc4\x64\x2a\xc3\xb4\xca\x69\x2a\xfd\xfe\x47\xb3\x9b\xa3\xdf\x25\xbb\x99\xc1\x8a\xe6\xdf\xb4\x43\x68\x0f\x7e\x77\x8c\xe7\x41\x8b\xa4\xf6\xe0\xc1\x49\xed\x17\xc6\xb3\x90\x72\xb6\xc7\x7d\xaa\x74\xf3\x1e\x58\xd0\x47\x44\x39\x09\x47\xaa\x50\xce\xe1\x61\x0b\x8c\xe9\x74\x85\x57\x08\x3e\x10\x7f\x9a\x42\x90\xa6\x5f\xb4\x43\x40\xf7\xb7\x4c\x40\xdb\xe2\x55\x55\x12\xba\xdf\x22\x09\xdd\xbf\x3f\x12\xfa\x1d\x4f\x6e\xe9\x25\xbb\x09\xac\xdb\x68\x65\x2d\x9c\x5b\xcb\x9d\x47\x11\x41\xcd\xf0\x56\xc1\x6b\x42\x6d\x6f\xe6\xbe\x3b\xa7\xcd\xe6\xce\x35\xb4\x1c\xd7\x85\x71\xfc\x50\xbc\x6b\xe6\x51\x05\x56\xb6\x94\xa8\x62\xf8\xa9\x9c\xa4\xd2\x58\x16\xe6\xc3\x5a\x9d\xa0\x16\x10\x53\xd1\x9f\xd5\x79\xcb\x4b\x42\x77\x0b\x79\x75\x3f\x14\xe9\x30\xf7\xc0\x6e\x6a\x46\x74\x49\x23\x46\x9d\xc0\x45\x6a\xb6\x5c\xe9\xbc\xd4\x28\x66\xc1\x04\xf6\x69\xfd\x6d\x1e\x41\x90\x4f\x14\x12\x33\xe1\x70\x0f\xec\x01\x9b\x02\x51\xda\xf5\xea\x95\xd0\xb6\x0c\x7a\xf2\x52\x50\x52\x1d\x7e\xb2\xa7\x82\x4d\x98\x47\xab\xc0\xb3\xf0\xdc\x8f\x2d\x9e\xe8\xdf\x8d\xc2\x10\xba\x2c\x55\xac\x8e\xfd\xdf\x14\xdb\x29\x33\x1a\x7b\x6a\x8f\x48\xd4\xf6\x6a\xea\x6c\x13\xd6\xbc\x70\x8b\x10\x26\xaf\xf4\x96\x1a\xaa\x30\xda\xcf\xfd\xa1\x46\x2e\x8c\x76\x13\x12\xc1\xcc\x19\xb6\xcc\xad\x0d\xec\xcb\xc8\xbb\xb5\x59\xb8\x56\x10\xdd\xd8\xd4\x70\x4e\xff\xfd\x30\x87\x02\x46\x42\x08\xb8\xf1\x83\xc0\xba\x84\x16\x6d\x0a\x3d\x02\xb3\x7c\xf0\xf5\x19\x76\xd5\x9b\x84\x07\xc3\x5b\x8a\x80\xf4\x9f\xbc\x29\x84\x11\xde\xee\x34\x08\x18\x96\xcb\xc0\x67\xde\x60\xd6\x8b\x1b\x07\x41\xf3\x7c\x08\x71\x8c\x10\xfd\x87\xcc\x2a\x7f\x1e\xf2\x8b\x6b\xdf\xb1\x56\xf4\x5a\xb6\x12\xe3\x56\x6c\x5d\x3a\x31\xf4\xac\x28\xb4\x5e\x3b\xb7\x10\x59\x87\x96\x8b\x7c\x0c\x91\xef\x9c\xd0\xb4\xc4\xc0\x62\xb3\xa4\xac\xec\x02\xe2\x79\xe4\xd1\x95\xb5\x1a\x2b\xc7\x50\x98\x15\xdb\x4f\xd2\x40\xa8\x81\x62\x6a\x3a\x88\x5d\x20\x61\x98\xf2\xab\x4d\xfc\x2b\xa9\xa5\x93\x33\x70\x4a\xe0\x91\x9a\xfb\x56\xeb\x26\x75\x62\x34\x6e\x40\x8b\x33\x64\x67\x49\x39\x43\x0a\xa7\x62\x9e\x1a\xf7\xac\xa0\xbe\x9e\x65\x3c\x8d\xfc\x24\x19\xa0\x69\xc6\xac\x92\x24\xf6\x3a\xeb\xb0\xcb\x1c\x11\xe8\x07\xf9\xde\xd1\x39\x69\x87\xc5\x88\x66\xab\xa1\x79\x30\x86\xf1\x35\x87\x2a\xf3\x18\xcd\xf3\x16\x6d\x72\x79\x97\x89\x59\xf5\x70\xc3\xae\x2f\x7a\x19\x59\x08\x56\xe6\x2a\x39\xbd\x79\x7c\xc5\x10\xd8\x3c\xfd\x33\xb3\x2b\xef\xa9\xbf\x59\xf2\xf2\x43\xea\xc9\x1d\xf8\xee\x95\x9d\x09\x0e\x1a\x80\xc4\x10\x1e\x2d\x61\x98\x49\xee\x65\xd8\xe7\x17\x9e\xa7\xd0\x95\x3c\xd8\xe6\xa9\xef\xde\xa5\xd6\x54\x06\xfe\x23\x05\xe0\xea\xb7\x20\xf1\xc3\x21\xc7\x6a\x13\xd7\xb7\x23\x61\x8b\x57\x3c\x1a\xc2\x08\xfb\x2e\x7c\xa6\xee\x80\xea\xea\xc4\x61\xa3\x2f\xd6\xd4\x4f\xd2\x01\xcd\x19\x2d\x05\x4f\xe6\x18\xca\x88\x16\xdb\x1a\xf2\xa7\x07\x03\x88\x39\xdd\xda\xcb\x2c\x59\x21\x5e\xea\x25\xad\x11\x17\x35\xc4\x70\x3f\x5d\x01\x29\x87\x20\xd5\x44\x89\x22\x79\x90\x2f\x40\xdf\x66\x46\xf3\x14\x02\xae\x41\xaf\xae\x8b\xdb\x11\x77\x84\xed\xf1\xcc\xcb\x8d\x1c\xd0\xec\xf2\x58\x34\x49\x25\x1b\x25\x39\x9d\xef\xe6\xd2\xc8\x37\x91\x76\x2d\xdf\x42\xbc\x61\x6e\xd2\xca\x4b\xe2\xb4\xb8\xd1\x82\xf2\x69\xbe\xb2\xd5\x16\x41\x7c\xe4\xc2\x25\xb6\x9c\xd0\x7a\x25\x4e\xc1\xff\xfe\x39\xb6\x30\x72\xa6\x53\xdf\xb5\x56\xb1\x1f\xce\x32\x2c\x08\xb0\xe2\x95\x3b\xb7\x9c\x98\xb2\x22\xd6\x12\xc1\xa9\xff\x09\xc6\xb4\x7c\xc2\x1c\xe3\x25\xe7\x4d\xe2\xfe\x7d\x81\x8a\xf9\x00\x55\x8e\x44\x4c\x43\x8b\x17\xb7\x61\xb5\x6e\x23\x37\xee\x05\x7e\x78\x95\x0b\x41\xf1\x95\xc3\xd9\xfa\x03\x26\x1d\x9a\x14\x7d\x67\x6f\x4f\xcf\x3f\xfe\xf4\xfe\x75\x72\xe1\x3c\x73\xa3\xc5\xc2\x09\xbd\x38\xa1\x3a\x89\xd4\x85\xa8\xce\x27\x8c\xc8\x41\x86\xc8\x0a\x23\x04\xa7\x10\x21\xce\x2e\x10\xb1\x89\x16\x13\xb7\x81\xfd\xf1\x32\x70\xf4\x29\x9e\x45\x2e\x2d\xa0\x5f\x6a\x6a\x29\xb0\xc0\x28\x60\x08\xa0\x83\xc2\x76\xe1\xf0\xfa\xe5\x8b\xf7\x6f\x32\xd0\xa0\x14\x78\x06\x31\xf6\xc3\x19\x21\x12\x08\x43\xef\x19\x67\x9b\xdb\x81\xcc\x7b\xe8\x78\x94\xfb\x9e\xad\x7c\xaf\xd0\xd5\xa9\x01\x7a\xd6\x0e\xcc\x29\xac\xa4\x50\x32\x1c\x3f\x09\x94\xde\xf7\x3c\xdf\x09\xa2\x59\x26\x67\x7c\xe2\xa0\x96\x90\xad\x1e\xbb\x21\x38\x33\x4e\xee\xb0\x88\x06\xa6\x3c\x77\x90\xef\xd8\x35\x2f\x27\x70\x91\x04\x3c\x19\xe5\x28\x29\x65\xdb\x2f\x3d\x1f\x2b\x04\xc7\xae\x92\x46\x3e\x73\x49\x23\x38\x95\x07\x5e\xee\x32\x3b\xfa\x32\x81\xb1\x72\xa7\xf1\xcb\x90\x3b\xf8\xe6\xdf\xfd\x6d\x5f\x26\xe6\xab\x24\x03\x01\x03\xdf\x55\x01\xc7\xb6\x70\x57\x54\x60\x81\xa6\xd4\xc3\x52\x61\x81\x78\x79\x83\xd5\xe5\xc2\xc7\x82\xed\xd9\x33\xb3\x16\x8e\xe7\x95\xf1\x15\x0d\x72\x42\xd4\xc4\x85\xb4\xb3\x28\xcf\xaf\x61\x40\x0a\xd3\x3e\x8c\xea\x1e\xf6\x6d\x5e\x56\x02\xbd\x12\x71\x61\xa8\xe4\xf6\x90\x3b\x92\x76\x33\x35\x08\xcf\xfb\x0a\xe7\x98\xf1\xa6\xf5\xe3\x33\x5f\xcd\xaf\x3d\x51\xba\x53\x54\x51\x4c\xeb\xa7\x0b\x29\xb9\x4c\x6e\xce\x50\x62\xd2\xc5\xdc\x2e\xab\x85\xc3\x08\x56\x96\xb5\xe5\xda\x44\x05\x28\xd9\x8b\xea\xdc\xb9\x86\xd5\x42\x0d\x8c\xb0\x75\x9d\xd0\x95\x8a\xe0\xcd\x57\x8d\x20\x95\x19\xb7\xbd\xe8\x53\x3a\xeb\xa2\x65\x57\xb8\x6c\x0a\xaa\x00\x25\xc5\x35\xa8\x76\xa4\x20\x8c\x01\x86\xd7\x49\x7d\x96\x88\xeb\x8e\xd5\x90\xcc\x04\x44\x36\xb0\x17\x2b\x72\xa2\x7f\x5b\x41\xaa\x2e\xa2\x8f\x66\x58\x89\xbe\x64\x21\x97\x54\x5f\x4a\x43\x22\x14\x25\x92\xb0\x15\xda\x21\x39\x74\xdc\xe5\x3b\xce\x58\x38\x15\x1f\x2a\xf5\xa8\x08\xcf\xf0\x58\xf7\x58\xce\xfa\x03\xf0\x70\xce\x24\x94\xb4\x9d\x7a\x45\xc5\xde\xf9\x0d\xa2\x3d\xe5\x9b\x3e\x8b\xed\xe8\xdc\x61\x67\xc6\xe6\x61\x83\x98\xea\xbd\xcf\xe7\xd1\xcd\x3b\x0d\x41\x4f\x9e\x0e\x01\x27\x4f\x27\x77\xba\x31\xf2\x44\x0f\xdc\x64\x91\x0b\x16\xec\x23\x48\x6d\x05\x9d\x67\xc2\x06\xf9\x6c\x06\x70\x77\x0d\x84\xad\xd1\xf8\xdd\x53\xd8\x9f\xfa\xa1\xf7\xed\x6d\x87\x9b\x4a\xc9\x17\x8e\xe7\x69\x8d\x41\xd8\xbd\x7b\xda\xc1\xfd\x19\xc4\x1d\xd8\xfd\xfc\xf9\x62\xd2\xed\xfb\xa1\x1b\xac\x3c\x18\x77\xc2\xee\xce\x4e\xd8\xf7\xe3\x37\xf0\x66\x67\xa7\x83\xfb\xcb\x55\x3c\x67\x81\x0a\x1d\x08\xc2\x2e\xc0\xfd\x6b\x27\xf0\x3d\x02\x91\x6e\x77\x0d\x98\xa4\x9b\xe9\xbe\xa8\xf7\x0e\xe6\x85\x37\xf2\xbb\x5d\xaf\x9b\x06\xcf\x6a\x9b\xdd\x30\x76\x96\xe2\x02\x40\xc0\x01\x01\x88\x81\x0f\x22\xb0\x02\x2e\xf0\xc0\x02\x2c\xc1\x14\x5c\x82\x39\xb8\x06\x33\x70\x0b\xde\x82\x8f\xe0\x1d\xb8\x02\x37\xe0\x25\xf8\xf4\x44\xf4\x61\xfd\xca\x80\x00\x50\xf7\x2e\xdc\xd9\xc9\x0b\xf2\xc0\xe0\x0e\x86\xab\x05\x44\xe4\x9c\x9c\x84\xfd\xe4\x07\x70\xa3\x70\xea\xcf\x56\xe2\x8d\xfa\x13\xdc\x20\x1f\xf3\xe7\xe2\x4f\xc0\x22\x44\xc2\xbe\x1f\xfa\xd8\xa7\x81\x4d\xe8\x1b\xed\x57\xdf\x75\x82\xa0\x83\xba\x27\x2c\x6c\x64\xdd\x5d\xcb\xc9\x9e\x8a\xc9\x02\x87\x2d\x3c\x18\xdf\xad\x9f\x70\x24\xe4\x73\xbf\x82\xb7\x71\x07\x75\x65\x00\x92\x16\xc4\x12\x5c\xc0\xc9\x18\x5d\xc0\x09\xd9\xa3\x40\x59\xc6\xf8\xe9\x53\xf5\x27\x08\xb4\x85\xd0\xb7\xda\xca\x3a\x3c\x75\x84\x1f\x5a\xc1\xe7\xcf\x81\x3a\x7f\x82\x34\x81\x5c\xef\xf8\xe9\xa0\x0b\x82\x71\xd8\x8f\x03\xdf\x85\x9d\x6e\x1f\xc1\x6b\x88\x62\xf6\x97\xb7\x72\xa1\x32\x41\xba\x0b\x7c\x35\x88\x23\xe7\xe7\xcf\xe1\xba\x0b\x82\x2e\x70\x76\x76\x18\x40\x9e\x8e\xc7\xda\x78\x74\x38\x3a\x1b\xfd\xf9\x37\x41\x16\xaa\x8e\x80\x2a\xd0\x5e\xf2\x08\x9d\x2e\x60\xff\x8e\xb3\x23\xe4\x23\x46\x40\x97\xb7\x0a\xc8\xbf\xeb\xb6\x82\x84\xde\x14\x07\x09\xfd\xf8\x6e\xf6\xd5\xe2\x6f\x2f\x8f\xcc\x41\x42\xce\xd2\x4f\xee\x1a\xa6\x13\x24\x14\xf9\x13\x74\x57\xf4\x66\xe0\x77\x39\xb0\x17\x30\x8e\x1d\x76\x6b\x90\xbd\xa5\x37\x73\x08\x6f\x5e\x88\x3b\x49\x68\xd4\x84\xa0\xf4\x26\xc2\xfe\xd4\x97\xb9\x00\x9e\x7b\x2e\xad\x99\xe2\x20\x2c\xf2\xa8\x25\x85\x80\x65\xac\xd1\x73\x67\x85\xa3\xa9\x1f\x04\xb2\x84\x3a\xb0\x9f\xc7\xc8\xad\x5e\x24\x58\x51\x11\xd0\x68\xa4\xe1\x5e\xd6\x0e\x78\xc4\x2b\x75\x6a\xcc\xba\x08\x68\x67\xf3\x4c\x66\xa4\xce\x38\x77\x7a\x29\xdb\x8c\xca\xf0\xdb\xc9\x8c\x80\x9a\x10\x71\xb8\x2f\xb2\xf1\x4e\x80\x9a\x98\x76\xc8\xd3\x59\x0d\x8f\x12\x4e\xe7\x30\xcb\x25\x65\x72\xc7\x15\xb4\x4d\xa6\x53\x53\x94\xa8\xce\xa0\x73\xcb\x6b\x7d\x69\x4a\xcb\x2d\xd9\xbc\xe4\xd2\x52\x28\x35\xe8\xc6\x86\x3a\xee\xa5\x8c\xcc\x4e\x00\x91\x62\x83\xa0\x53\xb7\xd4\x4f\x7a\xab\x25\xb9\xae\xec\x3c\x0b\xb2\x96\xb3\x53\xa6\x5a\x56\xec\xd2\x1e\xc4\x8e\x4f\x95\x07\xb6\xb7\x62\x36\x50\x68\x49\x3c\xb0\xa6\xd1\x2a\xf4\x4e\x5a\x2b\x71\x1c\x63\x14\x85\x33\x75\xb6\x52\x2f\xc9\xdc\xf8\xf2\xab\x94\xbe\x08\x95\x69\x39\x01\x82\x8e\x77\xcb\xbf\xe1\x95\x5a\xfd\xd8\x62\xbc\x5d\x4f\xf5\x4f\x5b\x3a\x3e\xea\x5b\xef\x02\xe8\xc4\x50\x78\x05\x5a\x9e\x3f\x9d\x42\x04\x43\x6c\xb9\xd1\xe2\x52\x34\x8d\xa6\xd2\xc5\x92\x1a\x5e\x99\x7b\x19\x55\x2e\xc9\xa1\x63\x0b\x47\x16\x24\x72\xbf\xea\x79\x28\x5f\xf7\x37\x2a\xb3\x9c\x05\xcf\x4b\xb2\x4d\x4f\x73\x81\xf2\x61\x0e\x11\xb4\x6e\x9c\x98\xce\x86\x62\x47\xec\x5c\x93\x19\xdd\x46\x2b\x94\x9e\x96\x11\x29\x76\x0d\x48\xa1\x54\xc4\xc8\x43\x97\x8d\x6c\xcf\x54\x1c\x4b\xac\xa4\xac\xba\x6a\x66\x2c\x35\x2a\x7b\x04\xec\x13\x35\xb8\xdb\x3c\xa5\x62\x4d\x5b\xc3\xba\xd2\x8d\xd4\x84\xc3\x8c\x34\x55\x91\x3a\x51\x42\x5f\xdb\x9b\x4e\x56\x0b\x22\x80\x21\x74\xa5\x66\x9e\xdf\xb4\x89\xd5\x26\x6c\x8e\x82\xf5\x54\xed\xa2\x54\xa7\x63\x8a\x96\xba\xf4\xc0\x34\x65\xc5\xdd\x80\x75\x9b\x58\xe1\x9b\x60\x58\x3d\x1d\x2a\x13\x86\x7a\x37\x0e\xe2\x4a\x54\x19\x08\xce\x95\xa9\x69\x0d\xea\xbe\x41\x0f\xaa\x1a\x47\xed\x73\x88\x15\x32\x85\x23\x5e\xb2\x2f\x53\xb1\x6f\xdb\xba\x31\x45\x4f\x7a\x9c\xa3\x12\xdb\xa2\xe1\x2d\x37\x1c\x39\x03\x1d\x79\xa2\x8f\xf8\x61\x31\xbb\x61\x55\xb4\x25\x6d\xcd\xf0\x56\xcd\xdd\xe2\xe7\x39\x0c\xa9\x73\x24\xe3\x78\xd8\x95\xf4\xaa\x78\xbd\xcc\xe9\x92\xfa\x39\x31\x79\x94\x56\x2e\x27\x57\x8e\x30\xcb\x2d\xa3\xc0\x77\x6f\x35\x33\xa5\xbb\x42\xe4\xf2\x0a\x6e\x09\xb5\x67\x2e\x51\xfa\x58\x7d\xeb\x05\x82\xb4\xe7\x78\xc5\xff\xb8\x71\x42\xea\xa8\x14\x93\x3d\xc0\x39\xc0\xcf\x2e\x79\x9b\x3b\xd1\xd0\xae\x97\xe3\x6d\x31\x20\x1c\x55\x38\x83\x28\xa2\xb9\x3e\x73\x1c\x30\x76\x35\x07\x0c\x46\x30\xb3\xba\xca\x9c\x0d\x3e\x87\x1a\xe0\xf4\xf4\xe1\x47\x05\xe5\xc4\x72\x2f\xf0\x66\xca\xc9\x11\x21\x98\xd5\x54\x85\x16\x35\x72\x83\xb4\xca\xb0\xd6\xfe\x0e\x07\x0d\xb2\x70\x97\x45\x26\x6b\x58\x42\x59\x61\xe6\x6b\x27\xd1\x24\x2d\xac\x28\xa4\x96\x30\xb2\xf6\xb3\x3f\xdd\x49\x81\x67\xfd\xec\x2f\xcf\xfe\x74\xe7\xb9\xeb\x67\x89\xa2\xcf\x40\xb3\x55\x01\xc9\x73\x05\xbd\x94\x62\x8d\x72\xa7\x15\x0b\x34\x54\x75\x26\x58\x45\x99\xff\x29\xcf\xa9\x22\x9f\xf7\xa2\x57\xed\x2a\x86\x96\x50\x67\x6e\x10\x2a\xd2\x2a\x14\xa5\xd7\xf7\x3d\xc0\xf1\x8d\x58\x7b\x09\x18\x4b\x6d\xb1\xa5\xec\xad\x1f\xf3\xa0\x8f\x49\x32\x07\x3f\xfe\xd1\x09\x9d\x19\xf4\xbe\xbd\x3d\x7d\x7f\x16\x37\xe7\x6c\xf3\x2c\x6e\xdc\x79\xc9\x5d\xc5\x38\x5a\xf4\x10\x4c\xed\x0f\x95\xe5\x29\xc7\x95\x70\x1e\x95\x97\xad\x53\x43\xc6\x3a\x6a\x84\x8e\x53\x36\xa3\x5f\x91\xa4\x7a\x1c\xec\xb9\xe4\xb0\x88\x2a\xe6\xad\x5a\x57\x73\x27\xa4\x5f\xaa\xed\x9f\x2b\x1a\xf9\xe7\x9a\x4a\xfe\xb9\xa2\xc1\x7f\x9e\xd5\xcf\x3f\x4f\x2b\xfc\xa5\x76\x43\x8d\x1f\x72\x95\xe8\x1e\x15\xf3\xd9\xd2\x43\x1d\xe5\x06\x49\x11\x20\xed\x99\x9e\xdb\x24\xf5\xf4\x5c\x7d\x66\x08\x50\x35\xbd\x3a\x37\x40\x3b\x31\xc0\x25\xcf\xd2\x88\x3a\xd4\xb4\x28\x05\xdc\x5c\x91\xd3\x7c\xce\x75\x63\x34\x29\x0e\xf7\x04\x3f\x4e\x67\xf3\x2a\xa4\x7a\x71\x75\x3a\xca\xb4\xd3\xa6\x2b\xc5\x5e\x99\x73\x8d\xaa\x36\xbb\xf2\xeb\x51\xbb\xe8\x87\x07\xfa\x7c\x0d\xb3\xe1\x37\x3f\xb7\xc5\x99\x2f\xfe\xec\x71\x88\x42\x71\xdd\xa6\xe9\x50\x09\x53\x50\x7e\xb3\xe6\x90\xa6\x7d\x33\x69\xaa\x43\x7f\xb2\xbd\xaa\x1b\xf7\xea\x8c\x12\x0f\x27\x8c\xc2\xdb\x45\x54\x54\x9f\xbf\xa2\xc3\x38\x57\xa7\x32\xcd\x93\x94\xae\xd8\xd1\x16\x4a\x57\x02\xe6\x5c\xe6\x93\x19\x6a\x52\xcc\xea\x37\x4d\x1d\xae\x2b\xb1\x97\x4d\x3a\xcf\xe7\x30\x29\x5f\x96\x78\x86\x56\xc7\xc6\x62\x3e\xd4\x58\x25\x80\x76\xc5\x87\xaa\x8a\x8c\xe4\xbf\x33\xfa\x8d\x79\x49\x79\xbe\xe4\xc5\x79\x13\x6a\x02\x9e\x63\x46\x63\xc0\x1f\x09\xdf\xd5\x9e\x8a\x70\x19\x4c\x03\xf6\xf3\x44\xf9\xff\x3c\x61\x96\x2f\x78\xf2\xe7\xdd\x11\x73\x5f\x19\x81\xfd\x5c\xa2\x69\x5e\xfd\x1e\xd0\x12\x2c\x97\xb8\xc3\x57\x71\x09\x6b\xac\x7b\x6a\x9a\xc0\x74\xa8\xd2\x01\x8d\xc7\x69\x58\xe3\x51\x5a\x5c\xa4\x36\x05\xc9\xa2\x8e\x26\x26\xa6\xbe\x8e\x43\x44\x29\x7c\x9f\xe8\x1c\x9a\x69\xda\x2b\x79\xfe\x5a\x8a\x64\x7e\x4a\x99\x33\xeb\x3d\x67\xce\x5a\x97\x82\xc5\xca\xbe\x15\xaa\x87\x4d\xd7\x55\xa4\x85\xf8\xa0\x6b\x1d\xfc\xd8\xba\xf6\xe1\x8d\x15\x85\xc1\xad\x75\x09\x5d\x87\xc8\x1b\x3e\x26\xcf\x17\x0c\x2b\x2c\x3c\x47\xd1\x6a\x36\xd7\xdc\x84\xd3\x30\xb1\xfc\x90\xe9\x94\x7f\x58\x5d\x42\x14\x42\x0c\x63\xcb\x0d\x56\x31\x86\xa8\xbf\x35\x78\x7d\x17\x45\xb8\x25\x4c\x28\x82\x98\xbd\x91\xcb\xef\xd5\x51\xfc\xcc\x45\x5e\x9c\xb8\xb3\x9a\xbc\x55\x4b\xbd\x5c\xf9\xd4\x5e\x43\x07\x85\xd6\x22\x42\xd0\x72\x2e\xa3\x15\xb6\x98\x54\x52\xc4\x1f\x35\x04\x76\x61\xdc\x4e\x05\xc1\x23\x8f\xf5\x27\xd8\xa6\xfb\x15\x2a\x2a\xe3\x4a\xb2\x4d\x99\xab\x5e\x6d\x12\x3c\xcc\x48\x8a\x69\xa2\x5a\xea\xe1\x34\xb5\x81\x3d\x0d\x85\xd7\x52\x18\xe1\x1e\xf5\x50\xe2\xde\x42\x2b\xe4\xab\x4e\x4f\xd2\x95\x49\xcb\xf2\xca\x38\xf8\x18\xe2\x1e\xc3\x0e\x96\x96\xde\x75\x68\xe6\x7a\x5a\xdd\x93\xda\x33\x98\x83\x53\x8c\x91\x74\x99\x8e\x69\xba\x84\xcd\xdd\x8e\x74\x67\xa3\x00\x62\xeb\x7c\xdc\x91\xfe\x46\xd4\xd1\x09\x7a\x00\xa5\x1f\x38\xe9\x07\x41\xfa\x41\x9c\x7e\xe0\xa7\x1f\x44\xe9\x07\x2b\xfe\xc0\x0f\xa9\x67\x01\x17\xbf\x3a\x36\x82\xb4\x7c\x59\x84\x6e\x15\x17\xfa\x2e\x70\xc5\xf7\x0c\xc6\xc0\x4b\xfd\x5e\xa4\x7e\x2f\x53\xbf\xa7\xa9\xdf\x97\xa9\xdf\xf3\xd4\xef\xeb\xd4\xef\xd9\x98\xe5\xd2\xcd\x66\xd2\xa5\x8e\x0d\x68\xe5\xe2\x08\xa5\x1c\x77\x9e\xc4\xab\x25\x44\x9d\x7e\xbf\xef\xa0\x19\xf5\xde\x8f\xbb\xe0\x57\x9a\x51\x57\x75\x48\xbb\x05\xe4\x49\xf2\x46\x15\x86\xdf\xa6\xde\x65\xc4\xe1\x8f\xa9\x06\x52\xc0\x7e\x67\xee\xf5\xdc\x06\x57\x05\x7d\x9e\xdb\xe0\x26\xf5\x3a\xad\x20\x01\x2f\x79\x03\x87\x7a\x87\x80\x0e\x1a\x73\x6b\x43\xd7\x0f\x3b\xe1\x98\xbe\xfc\xc6\xec\x30\x42\xc0\xc2\xbd\x44\x1c\xa0\x38\x1e\x3d\x1d\xe8\xee\x46\x4f\x07\x89\x8b\xd1\xd3\xc1\xba\x7b\x12\x5e\xa0\xc9\xd8\x91\x73\x22\x48\x62\x83\x4f\x7c\x22\x34\x45\x31\xb3\x83\x9f\xbe\x3f\x63\xb3\x5d\xd0\xda\x07\x6b\x11\xc5\xd5\xe9\xde\x25\x89\x8c\xc5\xc3\x6f\xb2\x8f\xf4\xcd\x3a\xa1\x0d\x84\x4b\x82\xfe\x6e\x2d\xe4\xc5\x54\xd7\xec\xe1\x37\xd9\x47\xb5\xba\xe6\x8f\xf5\xae\xd9\xc3\x9d\x9d\xec\xb3\xd4\xf7\x46\x58\xb0\xae\x52\xbb\x49\x77\xab\x4f\xc0\x99\x7e\xd3\xe9\xae\x79\xdf\xdc\x99\x2e\xec\x2f\x11\xbc\x86\x21\x3e\x63\x88\xdf\x11\x5e\x45\x4f\xc7\x63\xd8\x67\xb4\xad\xcf\x4c\x77\xc2\xa3\x69\x4c\xde\x78\x0e\x76\xf8\x73\x06\x15\x8a\x2c\x7d\x72\x09\x76\xba\x27\x64\x93\x74\x75\x2a\x3b\x44\x84\x38\x85\x63\xcc\xbe\x5e\x85\xfe\x6f\xd2\x99\xb0\xdb\xc7\xd1\x0b\x84\x9c\xdb\x4e\xb7\x3f\xf5\x03\x0c\x51\x07\x8e\xbf\x7e\x7a\x61\xf3\xa8\x92\xde\x12\x45\x9f\x6e\x99\x17\xd0\xbc\x37\x73\x30\xbc\xa1\x9e\x9b\x18\xa2\x05\x45\xf3\x70\x26\x9f\x4e\x12\x9f\x40\xd8\xff\xc1\x0f\xbd\x6e\x97\x16\xcf\xe9\xd0\x49\x8c\xbf\x86\x7d\x32\x64\x3f\x88\x5c\x27\x80\xa7\xd1\x62\xe9\x20\xd8\xc1\xf4\x61\xb7\xfb\x24\x1c\x5f\xdc\x31\x1a\xfc\x17\x7b\x3d\xe9\x33\xa2\xdf\x09\x19\x65\x45\xe3\x30\xe5\x04\x09\xfb\xc9\xc9\xee\x3e\x41\x9f\x3f\x77\xd0\x98\x7d\xaf\xbe\x59\x83\x70\x7c\x81\x94\xde\x58\x77\x8e\xa1\xbb\x14\x31\xe8\x3e\x71\x3e\x7f\xee\x38\xb2\xcf\xd4\x6b\xda\xb1\xa3\x76\xcc\x0e\x8e\x20\x44\xe3\x90\xfd\x4e\xa6\x32\x46\xec\x49\xaa\xa3\xb1\xb3\xd6\x14\xb7\x86\x0d\x4b\x76\x68\xfb\xd0\x3c\xcf\x81\xe5\x79\x43\x48\x9e\x17\xc1\xf1\x3c\x0f\x8a\x9c\xee\xa6\x80\x78\x6e\x02\xe1\x39\x01\x20\x3d\x2e\xe2\x68\x31\xdf\x38\x34\x86\x7d\xc6\x39\xb2\x79\x82\xe0\x89\x4c\xb0\x4e\x44\x6b\x9e\x5e\x5d\xb9\x1e\x4e\xe8\x83\xf4\x9d\x70\xa2\x36\x3b\x37\x34\x3a\xb7\x4f\x78\xc7\xce\x38\x18\x23\xe6\x63\x28\x38\x0e\xfb\xe9\x98\x48\x73\xd1\xd4\x72\x76\x76\x3a\x8e\x78\xcd\x76\x09\xf0\x5f\x63\x07\xd4\x9c\x13\xa1\x05\x1a\xba\xf1\xb3\x9b\xec\x82\xd3\xed\xb3\x20\xe2\x9d\x9d\x4e\xc0\x81\xef\xac\x53\x38\x7a\x11\x48\xd0\xeb\xbd\x49\x8c\xeb\x76\xd5\xc4\xf2\xc5\x50\x90\x93\xe2\xbb\x57\x6b\x4e\x62\xc7\xd3\x53\x12\x7d\x29\x33\x5a\x93\x17\x17\x0c\x62\x93\x71\xb0\xc6\xfd\xb9\x13\x7a\x01\x7c\x49\xc8\x69\x07\x76\xd7\x6b\x70\x3b\x3e\xed\xcc\xfa\x4b\x14\xe1\x88\x80\x5f\xe5\x0f\x2e\xc2\x09\xb8\x4b\x5f\x8f\xfa\xe5\xa9\x5c\x96\x40\xf1\xef\x3c\x21\x17\xf4\xba\x0b\xde\xa6\x3b\x57\x59\x8c\x0b\xb4\x69\xf7\x1f\xd3\xdd\x67\xb8\x94\x0b\x67\xd3\x31\xde\xa5\xc7\x90\x8c\xce\x45\xb0\x69\xdf\x57\x39\xe0\x39\xb7\xc1\x45\xbc\x69\xe7\x37\x45\xc0\x21\x23\xf8\x9b\x8e\xf0\x32\x3d\x42\x86\x63\xbb\x88\x36\x1d\xe3\x53\x7a\x0c\xc6\x81\x5d\xac\x36\xed\x38\xd5\xad\x8c\xba\x07\x17\xee\x04\x70\x26\x72\x06\xf1\xdb\x9b\x50\x30\x91\x22\x5b\x51\x84\x72\x3e\xed\x02\xe5\xb9\x61\x04\xe1\x26\x7c\xe1\xd5\x1e\x81\x7f\x5a\x36\x82\xb4\xba\x2d\x6a\x8f\xc0\x3f\x2d\x1e\xc1\xc0\xdf\xd9\xe0\x62\x59\x73\x30\x53\x2f\xc5\xe3\xca\x75\x4d\x6b\x0e\x55\x69\x55\x29\xab\x3a\xb8\xb8\xac\x39\x4a\xaa\x83\x2a\xa3\xbd\x91\x54\x64\xde\x68\x30\xf1\x7d\xc9\x58\x22\x81\xd6\x75\xdd\x41\xd8\x87\xa9\xde\x67\x6a\x54\xca\x79\x61\x05\x91\x37\xe0\xbc\xbb\xee\x76\x9f\xd4\x0b\x5b\x09\xfc\x18\x3f\x63\x85\xe9\x1e\x49\xf5\x90\xc3\x57\x1f\xfe\xf1\xfe\xdf\xfb\x39\x81\x01\xd8\xc7\x01\x33\x24\x73\x53\x70\x5e\xf5\x8f\xbc\xd2\xee\xd9\x60\xbf\x83\x4c\x8e\x2c\x43\x26\xa1\x03\x3d\x87\x95\x9f\xd7\xc4\x06\xb6\x70\xe6\x7a\xbf\x0a\xd2\x6e\x1e\xb5\x0c\x7e\x6a\xfd\x12\x35\x5f\xd3\x1e\xab\x10\x9a\xf2\x6f\x24\x1b\xc9\x2a\x03\x59\x32\x64\xc2\xca\x26\x72\x1b\xe9\xf9\x73\xf4\x4c\x37\xe9\xe8\xc4\x43\xfa\x99\xb1\x22\x8a\x51\xdb\xae\x3b\x4b\x49\x9b\x67\x36\x36\x72\x64\xce\xe2\x93\x75\xaa\xca\x28\x3d\xf3\x74\xbc\x66\xbb\xeb\xc0\x3c\x1e\xdb\xec\xe6\x8e\xee\xff\x82\x31\x90\x8b\xa5\x19\xf8\x74\xff\x01\xae\x38\xf5\xe3\x9c\x44\x66\x89\x37\xde\xc8\xe8\x50\xc0\xbf\xf7\x56\x50\xa4\x1b\x9b\xfb\xb3\x39\x8c\xb1\xb5\x44\xd0\x85\x1e\x0c\x5d\xd5\x71\xff\x12\x06\xd1\xcd\x49\x13\x9b\x51\x21\x94\x28\xb6\x37\x07\xd2\x9b\x08\xa4\x16\x9a\x03\xa3\x30\xc2\x8f\x11\x4e\x6a\x75\xb7\xc2\x25\xa4\x12\xc5\x99\xd3\xd7\xd1\xd2\x53\x15\xd7\x23\x6c\x34\x3e\x8e\xa5\x67\x28\x22\xc4\xa4\x5f\xa4\x12\xaf\x95\x9e\xa2\xc4\xd4\x38\x2c\x2f\x6a\x26\xea\x98\x25\x11\xc1\x48\xd5\x86\xf3\x6a\xad\xf9\x45\x5a\x37\xd1\x70\xa7\x2f\xad\x87\x2f\xa1\xaa\xcd\xac\x9d\x28\xd0\x24\xbe\x33\xfa\x3d\xc5\x77\xae\xbe\xc4\x77\xfe\x67\xc4\x77\xba\xc5\x6c\x5c\xb8\x0c\x06\xa3\x17\xe7\xa1\x99\x8d\x4b\x82\x2c\x65\x42\x36\x99\xc2\x6c\x27\xe1\x89\xea\x46\x57\x52\x2e\xc8\xe6\x21\x96\xd2\xff\x66\xa0\xb8\x7e\x99\x24\xa1\xb4\x17\x58\x86\xb1\x18\x1e\x81\x3d\x2d\x39\x84\xb8\x0c\x3f\x10\xf4\xb1\x81\x4d\x0b\x2b\xbe\x11\x61\xaa\xcc\x9c\x2e\xac\xe9\xfc\xb1\xea\x0d\x96\x30\x70\x69\xd2\x41\xf1\xd1\xe6\x86\x6f\x0e\x0f\x51\xcb\x98\xe5\xd4\x54\xdc\x59\xd9\xf3\x89\x96\x05\x55\x59\x2a\x4f\x8a\xf9\x8a\x9a\x65\x27\xa0\xc2\xe8\xbc\x40\x69\x3a\xfe\x27\xdb\xd9\x24\x95\x97\x33\x3b\x78\xd6\xd7\xb6\x64\x02\x39\xbe\xb3\xd9\xfc\x8e\x93\xac\x79\xb7\xf0\xa2\xf2\x7c\x4f\x44\x4e\x82\xa4\xb0\xbe\xb8\xbc\x1a\x56\xf4\x36\x51\x7c\xcd\xda\xea\x25\xd6\xd6\x8a\x66\xcf\x7c\x5b\x2c\xb7\x4b\x06\xd5\xed\x92\x26\x6b\x64\xa4\x19\xd4\x62\x6e\x50\x8b\xf2\x4c\x7f\x7e\x99\xc5\x0d\xb3\x2a\xa1\xdd\xf5\x8c\x46\x99\xc0\x45\xdc\x91\x94\x31\x55\x49\xf4\xf3\xe7\x8b\x09\x6d\xa6\x60\x51\xd2\x78\x28\x54\xb3\xac\xea\xa8\xd0\xc2\x26\x7d\xd0\xaf\xf8\x03\xda\xe6\x62\x30\x51\x6d\x17\xfc\xf3\xa4\xed\x37\x5a\x53\xa6\x7f\x6a\xc9\x50\xb6\x06\xf1\x78\xd5\x09\x0c\xfa\xb1\x8d\x55\xb7\x7e\xba\xe3\xac\x72\x6f\x63\xfd\x6d\x6a\x04\xb3\x76\xc9\x29\x57\x5d\x94\xf6\x42\xae\x6e\x45\x8f\x11\xa8\x7c\x95\x57\xa8\xc7\x70\x81\xd7\xa0\x12\x6a\x42\x3d\x1f\x8b\x1e\xe3\xea\xdd\xd1\x1b\x78\xf9\x37\xc7\x7c\x01\x72\xa6\x99\xcf\x55\xfe\x9b\xe4\xc0\x91\xe9\x95\x93\xbc\x06\x31\xa4\x9e\x23\x57\xf0\x76\x89\x60\x1c\x9f\xf2\xfc\xa5\xf2\x9b\x8f\x1f\x1d\x34\x1b\x88\x3f\x86\x32\x13\x79\x5c\xf2\xee\x39\x8a\x56\x58\xba\xe4\x27\xf7\x70\xea\x8e\xce\x5c\xc7\x47\xc0\xc6\xce\xe5\x2a\x70\x50\xcf\x8d\x82\x00\x72\x97\x98\xdc\x10\x4c\xaa\xa2\x90\x37\x1c\xb9\xa2\x8f\x26\x13\x3d\x2b\x2b\x8a\x6e\xbe\x87\xfe\x6c\x8e\x65\xa0\xc9\xf1\x04\xec\x1f\xd7\xcf\x35\xb7\xbd\x0c\xa3\x78\x9e\x84\x6e\xc5\x49\xcd\xd5\x3a\x55\x58\xd5\x2e\x44\x32\xeb\xa4\x8b\xff\xef\xff\xad\xf1\xb9\x97\xaa\xca\x55\xbb\x58\x97\xda\x59\x71\xde\x63\xf6\x9f\x92\x08\xce\xe8\x7c\x97\x2e\x79\x60\x76\x29\x6e\x54\xc6\xfc\x5e\x13\x9e\x56\x74\x62\x2c\x4e\xc5\x59\x0d\xec\x84\xf5\x28\x45\x80\x76\x32\xd6\xa1\xe8\xa6\x31\xde\x7b\x45\x78\x5f\x9a\x4f\x34\xe1\xfd\x32\xa5\xe7\x0f\x26\xc0\xf6\xdc\x7e\x92\x77\xa1\x0f\x3d\x1a\x54\x92\xa4\x7d\x1f\x8a\x10\x87\x92\x2a\x0a\x6a\xa9\x04\x2d\x50\x3e\x55\xbb\xb8\x9d\x82\x33\x6a\xa1\x2e\xab\xf3\x97\xe6\x85\x66\x6c\x2d\xdb\x81\x41\xc9\x54\xb9\xd0\x4c\x02\x7c\x5e\x03\x46\x2d\x56\xc1\x82\x10\x99\x39\xb5\x97\xe8\x86\x07\x59\x38\x9d\x73\x0d\xa0\xc0\x91\xb4\x66\x78\xa4\x69\x7a\xab\x77\x50\xd3\xb5\xb5\xf8\x08\x79\xca\x02\x87\x32\xa5\x0d\x57\xf8\x29\xeb\xd3\x02\x03\xa5\x82\xb3\x7a\x45\x2c\x3d\x53\xc7\x30\x1d\x39\x95\x85\x81\xa2\x44\x7d\xb1\x5c\x5a\x0e\x2d\x32\x91\x05\x62\xd3\x15\x17\x11\xfe\xaa\x34\xb9\xc2\x91\x31\x55\x62\x7c\xd4\xe7\x26\x4f\xa1\x7a\x6f\x87\x27\x5b\x81\xad\xc9\x09\xaa\xd0\xcb\x16\x8e\x51\x09\x03\x90\x83\x2f\x6a\x5c\x5b\xfd\x2a\x01\xe5\xb8\x62\xc4\xe0\x21\xc8\xe4\x12\x29\x1a\xdf\xd6\xb2\xf6\x1a\x20\xd8\xa0\x88\x55\x11\x10\xd3\xd7\xb9\x01\x7a\xfc\x42\xdb\x2c\x56\xc7\xca\x38\xe6\xc3\x4f\x18\xa2\xd0\x09\xd2\x81\xe1\x22\x6a\x56\xc9\x63\x42\xcd\x72\x36\x1f\xdf\xba\xbc\xb5\xd8\x0c\xea\xc6\x23\x37\x4b\x48\xba\xdd\xe4\xba\xb4\xfe\xe0\x32\xba\x86\xa8\xb7\x80\xe1\x4a\xf6\x0c\x3f\x2d\x9d\xd0\xcb\x96\xac\xb9\x82\xb7\x97\x91\x83\xbc\x17\xb4\xc2\x99\xad\xa7\x80\xc9\x92\x46\x9e\x20\x2d\x29\x25\x83\xd1\x0a\x02\xaa\x76\xca\x55\x88\x69\x11\x6a\xc9\x97\xec\xa3\x46\x39\x62\x8a\x20\x87\x91\x3f\x9b\x35\xc9\xe4\xf2\x63\x84\xe0\x56\xb2\x7f\xd0\x7d\xa8\x9d\xe9\x68\x3f\x9d\xd0\xac\x3c\x55\xd1\xb0\x41\xaa\x22\x13\xbd\x91\x09\xf4\x45\x76\xb6\x30\x0a\xf3\xf9\x5d\x2b\xc3\xf3\x26\x1f\x92\xa5\x8b\x19\xb2\x80\xa1\x4b\x21\xec\xf7\x86\x15\xf8\xe3\x7d\x70\xbc\x11\x7b\xfc\xd2\xe3\xf1\xd9\x05\xa5\x85\x8a\xab\x0e\xe5\xc3\x22\x9b\x88\xa5\x14\x3c\x6a\x31\x3e\x7b\x1a\x21\x16\x49\x7b\x30\xa9\x0f\x34\x3b\x0a\x85\x26\x24\x49\xbc\xa4\x08\xc0\x32\x6e\xd7\xbc\xba\x6c\x10\xbd\x3e\x7c\xe1\x6a\x24\xd2\xfb\xe1\x34\x42\x0b\xe8\xf5\x9c\x94\xf2\x23\x95\x5c\x8a\x9c\x04\xef\x5b\x72\x42\xe2\x57\xe1\x34\xb2\x75\xf7\x13\x81\xae\x7a\xb9\x32\x90\x90\x40\x70\x31\x00\x03\x81\xdc\x55\xc2\xc4\xf7\x0d\x61\xe2\xb4\xa2\xa7\x2c\x5a\xd5\x84\x8b\x33\xc0\x81\xfc\x77\xca\x34\x54\x79\xc1\xc8\x79\xa4\x24\xc7\x33\x21\x77\xea\xbc\x86\x5b\x8b\x13\xb7\x2b\x04\x0c\x26\xff\x55\x8a\x74\x97\xa7\xf4\x9b\xa2\x31\xf3\x50\xb2\x2d\x50\x25\x88\x53\x37\xbf\x80\x14\x95\xaa\x97\x1f\x2d\x58\x28\x4f\xa4\xb9\xaf\xc9\x44\x17\xd9\x0c\x4e\x4d\x23\x3e\xb3\xe3\xd9\xe9\x83\x98\x8a\xe2\x1f\x99\xa8\x09\x33\x13\x1e\x19\xc2\xf4\x55\x9f\xb1\xd4\x6d\x6e\x28\x9d\xa1\x37\x90\x29\x53\xf3\x4a\xf9\x6d\xbe\xe6\xdc\x04\x00\x45\xc8\x94\x13\xec\xbf\xd1\x27\x79\x5b\xbd\x8d\x8d\x65\x14\x75\x4a\x4b\x6a\xf2\x04\x00\x1b\x02\xd1\x90\xd6\xe3\xbe\x81\x68\xf0\xc1\xd9\xcf\x77\xeb\x69\xfe\x70\xb8\x4b\x8e\x76\xfe\x5c\xaa\xb3\x0a\x4d\x24\xf6\xcd\xd9\xab\xad\x5c\xd6\xe4\x85\x75\x25\x83\xdd\x1f\xd5\xa5\x3d\xd8\xd2\xa5\xad\x8b\x7e\x5b\xb9\x89\x06\x8f\xe0\xd2\xfe\xa0\x5d\xca\x96\x1f\x5b\x97\xd0\x0f\x67\xad\xe5\x43\xb0\x5e\x61\x3d\xed\x82\x1f\x52\x47\xc4\x9f\x5e\xf5\x1f\x8a\x01\x18\xb4\xc3\x00\x0c\x5b\x64\x00\x46\xdb\xbf\x15\xcc\x37\x3b\x3b\xdf\x5a\x76\xa0\xe7\x73\x04\xa7\x76\xca\x1d\xa7\x15\x9b\xc4\x66\x97\xd0\x3f\x7c\x78\xf3\x78\xee\xf1\x7b\xd8\xb1\x89\xac\x61\xe6\x73\xaf\xa3\x12\x46\xeb\x0f\x79\xcb\x8f\xb6\x72\xcb\x0f\x40\x2a\x2b\x75\x76\x2b\x9a\xdf\xf2\x59\x15\x60\xba\xcd\x01\x38\x04\x47\xe0\xb8\x52\x26\x92\x0a\x19\xb6\x77\xc1\x1e\xd8\x2f\xcb\xfb\x01\x46\xd9\x16\xf9\x5e\x61\xd4\x5b\x99\x50\x82\x1e\x8e\xd4\x74\x1e\x2c\x51\x47\xcf\x8f\x7b\xf4\xf6\xef\x31\xad\x96\x1f\x5e\x47\x32\x6f\x7f\xe2\x37\x96\xaa\x6f\xa4\xba\x51\x2c\x83\x15\x12\xc9\x40\xa8\xab\xb4\xf4\x8c\x8e\x83\xd5\xcc\x9f\xde\xa6\x33\x86\xcc\x44\x82\x90\x8d\x9d\xd1\x14\x2f\x98\xc7\xe3\x18\x6d\x76\xef\x7b\x2c\xbe\x3a\xfb\x83\xef\x9e\xfd\xf8\xfa\xdb\x77\x66\x5f\x1d\x59\x7f\x24\xf1\x88\xe1\x59\xb0\xb2\x0e\x31\x99\xcc\x59\x69\x27\x18\xd6\xa0\x97\x02\x84\x45\x33\x6c\x51\xa7\x98\x51\x2a\xd1\x56\xfa\x6a\x22\xf2\xbd\xcf\xd8\xd1\x7a\x54\x51\xa1\xee\x9b\x66\xde\x12\x3c\x58\x4e\xce\xad\xb2\x6c\x5b\x19\xf2\x53\xa1\x84\x99\x3a\xf7\x0d\x72\x6b\x15\x73\x8f\xe7\xd1\x02\x5a\xd1\x34\x55\x51\x21\xb6\x1c\x04\xdb\xe6\x1b\x3f\xcc\xa3\x18\xca\xee\x94\xb1\x68\x7e\xf0\x4b\x68\x64\x29\xad\x17\xe1\xad\xda\x96\x45\x26\x7a\x49\x0b\xf6\xf5\x4d\x84\xae\xac\xcb\x15\x66\xbf\x78\x50\x4a\x7c\x1b\xba\x22\x7f\x38\xcc\x4c\xf5\x8c\x9c\x30\x9a\xe7\xd7\xea\x9c\xbe\x3f\xeb\x5a\x9e\x83\x9d\x18\x47\x08\xf6\x5b\xda\xb4\x8d\x12\x7c\x15\x6f\x9b\x6d\xf0\x37\x19\xa6\xfc\xad\x1f\x5b\x52\xaf\xba\xe0\x6c\x14\xa4\xc3\xca\xeb\x85\xd7\x1b\x5d\x2a\x45\xa4\xfb\xd1\x5d\x30\x8a\x05\xfb\xb1\x5c\x2e\xdf\x47\x67\xff\x74\xc3\xdb\x1c\x47\xd0\x50\x84\x07\x14\xdc\x25\xfa\x85\xc0\xa9\x7f\x33\xb2\xbf\x35\xd2\x69\x67\xfc\x19\x12\x67\xfb\xb8\xcf\xb6\x2b\x11\xa7\xfa\x6c\x6d\x7d\x65\xbb\xfa\xba\xaa\x60\x83\xa3\xf2\xbb\xa1\x3c\x3c\x38\x30\xc1\xe2\x96\x68\x50\xda\x41\x61\xa3\x6d\x99\x72\xe8\x19\x0b\x1e\x6c\x91\xb0\x89\xf7\xe5\xbc\x3c\x6e\x8f\xc8\x65\xc8\xc7\xe3\x21\x70\xa9\x72\xce\x8f\x85\xba\xfd\x1a\xfc\x38\xba\x3d\x3a\xfe\xbb\x99\xba\xcd\x50\xb4\x5a\xda\x42\x83\xc9\x2b\xe7\xb2\x1f\xaf\xfd\x18\x53\xf5\x2d\x9e\x47\x1e\xd5\x04\x6a\xff\xf3\x81\x15\xbe\xe3\xee\xd1\x0a\xef\x5d\x29\x3c\x6c\x78\xc8\x7c\x83\xca\x0b\xaa\x8b\x4c\xfa\xd9\x62\x7c\xe4\x4d\x8f\x2f\x20\xe5\xd0\x70\xb1\xbb\x47\x2d\x64\xd5\xc8\x48\x12\xb8\x7e\x04\x86\x43\xdd\xa7\x41\x68\xd8\x44\xbe\x0d\x9e\xca\x3c\xa9\xdf\xac\xe4\x92\x54\xa5\x01\xb5\x42\x77\x92\xf9\x7f\x1f\x0c\x8a\xea\x11\x8b\xce\xcd\x0d\x87\xa2\x40\x3c\x8b\xdf\xfa\x07\x4f\x03\x9f\x34\xa3\x1f\x4d\xd2\xa5\xae\x04\x09\x14\x15\x00\x0c\x84\xc8\xa0\xbc\xa7\xf5\x2b\x96\x1c\x2b\x13\x01\xbc\x88\xc6\x4a\x1f\x30\xba\xa7\x89\x23\x81\xa1\x50\x34\x2d\x8a\xcb\x0c\xb2\xc9\x56\xb3\xb0\x6c\xca\xfd\x0a\xa1\x2b\x09\x35\x27\x4f\x15\x97\xca\x6f\x8a\x28\x5c\x91\x35\x02\x39\x9e\x1f\x31\xa4\x49\x3b\x10\x8e\x14\xf0\x8a\x82\x66\x8a\xa7\xa8\x35\x77\xe2\x1e\x2f\x58\x58\xec\xe4\x7c\x90\xe3\xa2\x24\xf6\x6f\x78\xd8\x24\xdd\x84\xb1\x72\x5b\x11\x94\x8d\x7b\x93\xf2\xcf\x13\xaa\xbc\xe3\x62\xbf\x57\xb5\x2b\x3f\x5c\xae\x44\x1d\xc4\x5d\xa5\x42\x18\x01\xe6\x48\x2a\x04\xa9\x07\x88\x0c\x92\xd1\x41\xac\x39\x6c\x31\x78\x2b\xaa\x4c\xcd\x74\x2b\xbb\x50\xa6\xb7\xaf\x16\xa3\x36\x56\xf5\xd6\xdc\x8a\xf7\xe9\xc9\x4a\x17\x32\xbb\xb8\xb0\x65\xa1\x2e\x7e\x97\xf7\xf9\x03\x71\xc5\xef\x71\x6c\x49\xe0\x56\xc1\xa9\xb3\xb0\x14\x4f\x9d\x3b\x59\x7b\x50\xf7\x20\x4b\x83\x54\xfe\x69\xd5\xab\x81\xbd\x73\x78\xc0\x43\xc9\xbc\xb2\x47\x2b\xaf\x0e\x89\x60\xee\x5e\x06\x49\x10\xaf\x42\xa4\x81\xc2\x2f\x93\xc1\xf9\x75\x12\xc3\x00\xba\xb8\x59\x15\x2a\x36\xe6\x21\xb8\xb0\x5f\xb3\x53\xb1\x91\x5e\x9c\x4c\xca\x22\x53\x4c\x8d\x53\x23\xea\x84\x3a\x3a\xde\x40\xd4\xe3\xab\x92\x2a\xf5\xa5\x8c\xec\x62\x6f\x84\xcf\xe3\xa9\x52\x1d\x65\x8f\x97\x72\xdd\x03\x47\xe6\xbb\x42\x3a\x48\x7e\xff\xe1\xc3\xbb\x7e\x02\x43\xed\xf2\x68\xa4\x92\xb7\x4d\x3e\xbc\xd4\xcf\xad\xbc\xb6\x56\x95\x42\x53\xa6\x76\x87\xa6\x8a\xf7\x8c\x9c\x0a\xba\x3c\x3c\x6e\x58\x08\xa8\x1c\x15\x05\x59\x67\xb8\x98\x76\x2f\x61\x14\x84\xb6\xe9\x4b\x60\xd7\x56\xef\x65\xe7\x74\xd0\x12\xaa\x16\xed\xd7\x7e\xcd\xfd\x2a\x44\x67\x31\xe9\x0f\xf0\x13\x3f\xa3\xc3\x03\x42\x8c\xd9\x95\x50\x11\x4b\x8d\x18\xaa\x56\x4d\xcc\x82\xde\x04\xf4\x9c\x12\x12\xfc\xdc\x51\x90\x25\x85\xb7\x30\x2f\x40\xb4\x70\xb0\x3b\x87\x32\x58\x9f\xac\x85\xbd\x9b\x88\x0d\x6e\x5e\xff\x44\x74\xf8\x52\x76\x53\x6f\x47\xd3\x08\xaf\xdd\x92\x15\x60\x02\xec\xf7\x70\x06\x3f\xb5\x12\x00\xc2\xc9\x1f\xed\xd0\x8a\x19\xb7\xc6\xd5\x94\x54\xda\x6d\x1c\x10\xc2\x3b\xe6\x5d\x5e\xc2\x99\x1f\xb2\xd4\x3b\x8e\xf5\xbf\x7f\x7e\xf6\xbf\x7f\xae\x15\x0a\x52\x19\x77\x2b\xba\x49\x67\xac\x64\x95\x73\xf0\x6f\xeb\x1a\xd7\xee\xe8\x1f\xa9\x24\x96\xab\xab\xd4\xd8\x5d\xe1\x58\x87\xa3\xd9\x2c\x30\x7b\xee\x18\x59\xc3\x11\xcd\xb0\x66\x31\xa1\x8f\xe9\xd5\x9d\xe5\x32\xf0\x99\x23\x0a\xc7\x24\x6b\x15\x06\x30\x8e\xad\x78\x09\x5d\x7f\xca\x52\xad\x99\x79\xf0\x52\xda\xcb\x53\xbb\xc9\xa5\x35\xf1\xb5\xa7\x4e\xff\xe0\x82\x25\xf9\xb8\x8c\x3e\x25\x94\x29\x87\xff\xdc\x07\xa3\x81\x99\xb5\x3c\x28\x61\x2d\x13\x72\xa6\x4c\xda\x40\xcf\xd8\xa9\xcf\x2d\x0d\x96\xcc\x79\x73\xf2\x4f\xb6\x8b\xcf\xa4\x6e\x68\x40\xb6\xd1\x7e\x19\x4a\x1b\x2f\xe6\x51\x75\x57\x94\x5c\x6c\x75\xf9\xe6\xf5\x12\xd9\x2c\x11\xda\x92\x67\x4d\xc4\xad\xbd\x0d\xa5\xad\xac\xac\xa5\x94\x05\x95\x38\x57\x12\xe2\x97\x92\x9a\xb8\x56\x45\x95\x9a\xf6\xaa\x49\x4d\x1c\x19\xf7\xb8\xc0\x0f\x2e\xe8\x4d\x60\x2b\xe4\x61\x23\xe1\x29\xc1\x70\xa1\xf8\xd1\xb1\x5b\x48\x46\x99\x85\x17\x96\x54\xcd\x88\x9f\x62\xb9\xa5\xd1\x70\x86\x82\x50\xd9\xd2\x27\x95\xfd\x21\x5a\xa5\xc7\xcc\x42\x9b\xa6\xc7\xca\x27\xa6\x8a\x2c\x8a\x96\x90\x09\x69\xd4\x27\x40\x8b\x04\x8b\x99\x30\x90\xf8\x44\xe7\x5e\xff\xdf\x6b\x7e\x87\xc6\xed\x94\xd9\x22\xd4\x0f\x1a\xc9\x08\xf9\xde\x1f\x05\xe5\xd5\x2b\xac\x9f\x2a\xf8\x12\x6f\xa3\xa4\x62\xa1\x69\x39\x8e\xe7\xb5\xb1\x16\x8d\x57\xac\x59\xce\x5b\x55\x95\x9a\x4b\xe9\x98\xc1\x34\xca\x03\x53\x6e\xcd\x61\xa5\x78\xa3\xb1\x32\xa4\x4a\x17\x46\x6a\x72\x27\x4d\x9b\x2b\x14\x95\x0a\x5d\x48\x8a\xe2\xa5\x09\x83\xee\x5d\xbf\xab\x3b\x7a\x65\xba\xce\x56\x27\x2d\x2f\x83\xfc\xc2\xf3\xcc\x9c\xee\x68\x57\x25\x73\x83\x1a\x78\x2f\x63\x49\xf9\xef\xda\x01\xad\x4e\x18\xe1\x39\xb3\x40\xe5\xd2\x0e\xb6\xf0\x72\xbd\x48\xbd\xea\xd1\xd5\xe0\xcc\xcb\x67\xd6\x01\xb3\xe6\x4c\x97\x4b\xf6\x8a\xcd\x40\xc6\x52\x4d\x85\x96\x9e\x44\x15\x4e\x8f\x3e\x76\x7c\xaa\xe6\xa0\x1e\x59\xd2\x85\x6b\x21\xf8\x26\xbb\x47\x53\x69\xf5\x44\x16\x4a\xe8\xb8\x73\x43\x6d\xa6\x65\xa2\x1e\x22\x7f\x52\x96\x29\x96\x29\x2c\x99\xf3\x96\xb9\xb6\x13\x9b\x08\x3f\xc9\xac\xac\x13\xf7\x0b\x63\x04\x29\x56\x7a\x27\x7f\x33\xb1\xe4\x7c\x1e\xdd\x10\x29\xe5\x3b\x72\x21\xa4\x58\x3d\xa5\x49\xf2\x8c\x55\x89\x9a\x6d\x96\x33\xd3\x68\x3e\x12\xd6\x2d\x10\x8e\x6d\x93\x75\xc4\xa6\x66\x2f\x54\xc9\xec\x25\xdf\xf4\x59\x82\xb2\xce\x1d\x76\x66\x6c\x86\x36\x20\x30\x3a\x09\x41\xec\xce\xe1\xc2\x39\x31\xe7\x45\x63\x2f\xed\x2e\x60\x00\xce\x69\x25\xf3\x64\x23\xb8\x8c\x72\xda\x28\x19\xd6\xec\xaf\xc2\x2e\x10\x54\xff\x44\xda\xc7\xba\x77\x6b\x10\x85\x14\xef\xf5\x87\x7c\xe3\x78\xc7\x04\xa0\x2b\x0c\xbd\xbe\x13\xf8\x4e\xdc\xf9\x85\x4d\xb1\xff\xa7\xbb\x70\xcd\xeb\xdc\xf4\x79\xae\xd7\x7f\x10\x32\x1e\xff\xd2\x05\x1c\xfb\xca\x3b\xe8\xcd\x31\x5e\xf6\xf9\x2e\x67\xba\x21\x68\xf3\x0e\x45\xcb\xca\x1d\x09\x05\x9d\xb1\x27\x8a\x80\xa9\x9e\x3a\xb6\x1c\xc3\x56\x2c\x87\x22\x2d\xdb\x85\xfd\x26\x62\xe2\xbf\x56\xf2\x42\x7e\x43\x73\x74\x25\xe7\x25\xdd\x79\xb6\xc3\x3b\xd6\xdf\x89\xfd\x26\xb2\x98\x9e\x86\xfc\xef\xcb\x4f\x8e\x8b\x4f\x6c\xfa\x0f\x7b\xf2\x8e\xa6\xe4\x39\xb1\xd9\xbf\x54\x30\x64\x2f\xa8\xb6\xe0\xc4\x7e\x0f\x67\xab\xc0\x41\xd6\xcb\x4f\x34\xf6\x93\x60\xe9\x5a\xcc\xe5\x15\xe1\x82\x2b\x4f\x28\x3d\xbe\x32\x2d\x39\x09\x07\xcf\x2d\xf6\x43\x9b\x84\x50\x5f\x18\x67\x22\x09\x44\x06\xe2\x2c\x10\x5f\x9d\x0a\xb3\xb1\x42\x96\x73\x8e\x57\x56\x92\xdf\x7f\x17\xa1\x0e\xaf\x32\x43\xbe\xfc\xfc\x39\xc9\x4c\xc7\x3c\xbf\x3a\xdd\xae\x48\xad\x0a\xfb\x7e\xfc\x06\xde\xec\xec\xc0\x3e\x2d\xe0\x4c\xdf\x02\x28\x20\x43\x30\x20\x33\x1d\x39\x50\xff\x23\xff\xb3\x9f\x52\xf6\x26\xe4\xab\x3f\xf5\x51\x8c\x99\x51\xd9\x84\x2f\x96\xb2\x02\xd2\xa3\xd6\x11\x9f\xb9\xb1\x33\x32\xc3\x30\x7a\x67\x9e\x63\x1f\xfe\xb6\x72\x82\x8e\x4a\xa3\x39\x5a\x76\x81\x81\x9a\xa6\xbf\x0e\x23\xdc\xb1\x93\xce\xed\x2e\x48\x88\xed\xc9\xd3\x21\xc8\x50\x5b\x63\x07\x0a\x81\xee\x02\xcf\xf7\xde\x43\x17\xfa\xd7\xf0\x05\xc6\x28\x56\xa9\x07\xfb\x76\x06\xb1\xc8\xa9\x88\xe1\x82\xc1\x41\x9c\x72\xce\x48\x74\x3f\x7f\x66\x6d\x63\xd9\x56\xbd\x04\x9e\x0e\xba\x6b\xc0\x23\x38\x4e\xee\x38\x35\x54\x73\x05\xab\x85\x84\x64\xc2\xd9\x64\xf4\x10\xe8\x16\xa7\xee\x37\x61\x5f\x7d\x70\x12\x8a\x6a\x43\xa2\xa8\x8f\x32\xfa\x49\x6a\x66\x10\xc8\x8f\xb9\xb8\xa7\x55\xdd\xe1\x52\xdc\x49\xba\x11\xaf\x8a\xc6\x16\xd1\x77\x3c\xaf\xef\x2c\x97\xc1\x2d\xeb\x93\xc9\x94\x7d\xb9\x60\x0c\xd0\x84\x97\x49\x13\x5f\x30\xb9\xa2\xf4\x23\x3e\x15\xce\x7f\x9d\x60\x3a\x6f\x08\x50\x77\x8d\x95\x63\xb0\x06\x8e\xe7\x65\x20\x88\xfb\xcb\x55\x3c\x67\x48\xd8\x81\x20\xec\x02\xfd\x1b\x36\x05\xc3\x67\x08\x2e\xa2\x6b\x98\xff\x61\xfa\xb2\x81\xdd\xbb\x4c\xf9\xb4\x98\x16\xa6\xea\xc0\xf1\xd7\x77\x01\xc4\x77\x57\xf0\xf6\x04\x8b\xbc\xcb\xeb\x31\xe4\xa7\x3a\x65\x7b\x19\x8f\xc7\xf8\xf3\x67\x45\x35\x4b\x1e\xac\xbb\x3b\x3b\x29\xda\x2c\x13\x2b\xe3\xf1\xd7\x77\x90\xc2\x84\x7d\x64\x7f\x85\x79\xfe\xe0\xee\xba\x2b\x8f\x12\x9d\x96\x36\x12\xa1\x22\xea\x57\xa9\xd7\x40\xf9\x2d\xaa\x62\x25\x28\xa4\x7f\x2c\xf7\x8b\xe5\x1f\xe6\xb1\xd2\x30\x87\xe2\x14\xbd\x07\x09\xf5\x5b\x42\x14\xfb\x31\xee\x40\x3e\xb8\x2c\x8e\xc7\x6a\xd0\x75\xd7\x20\x75\xb5\xc3\xee\x1d\xec\xa3\x28\x08\x2e\x1d\xf7\xaa\x23\xbf\xa2\xad\xe4\x47\x84\x78\x2b\x3e\x3a\x68\x23\x1f\x1d\x45\xfa\x7c\x2c\xae\x3a\xfe\x3b\xfc\xf6\xe5\xb7\xaf\x0f\x8a\x5d\x75\xcc\x7e\x38\xb5\xdd\x6f\x0e\x2a\x79\xdf\x30\x28\x99\x9c\x70\xa4\xf8\x5c\xe2\x86\x73\x58\x5b\xbf\x40\xfd\x70\x0e\x13\xf1\xef\xb8\xb9\x17\xce\x41\x65\x2f\x9c\x83\xaa\x5e\x38\x47\x46\x27\x1c\x90\x3c\x4a\x4b\xdb\x79\x7e\x39\x95\x34\x4f\x5b\xb1\xb7\x33\xf1\xb9\x35\x8b\xfb\x5e\x53\x3d\x36\x9b\x87\xc5\xe6\x75\x8f\x76\xf5\x01\xb3\xab\x8f\xcc\xbb\x9f\x58\x2c\x15\x30\xb5\x6d\x54\xdf\xe3\x58\xb4\x2b\x8b\xe2\xd7\xb0\xd1\x66\xb5\xf4\xe6\x76\x7b\x69\x8d\x53\x03\xa4\x49\x2c\xe3\xbc\x7c\x9c\xa6\x87\x56\x2d\xe3\x2c\xa5\xdb\xc6\x46\xf1\xdd\x0d\xb1\x29\x14\xa9\xf0\xea\x99\xb5\x77\xcb\xcd\xda\x46\x24\x11\x50\xa9\x60\xd1\x56\x41\x96\x02\x56\x1b\xc6\xec\xdd\xb6\x8d\xd9\xbb\x1b\x18\xb3\x8b\x70\xdf\x8c\x3a\x82\x43\xd3\xbd\xb4\x4c\xf3\xdb\xb6\xd9\x37\xa3\xcf\x4e\xf4\x95\x43\xe9\x8b\x52\xcf\xe4\xd5\xec\xc4\x51\x15\x41\xd1\x91\xfb\x07\x47\xb1\x4d\xcf\xdc\x68\xc3\x33\xa7\xef\x6f\x36\xe8\x9d\xd3\xb9\xfd\xa4\x84\x43\x32\xe7\x9a\xe7\x74\xd4\xf0\x9c\x4a\x58\xd6\x3c\xa8\x69\x10\xb7\x71\x52\x47\x6d\x9f\xd4\xd1\xbd\x9d\x54\x0a\x8e\xc7\x73\x54\x0d\x21\xc5\xe5\x46\xef\x26\x11\x11\x1b\xaa\xc2\x53\x1a\xed\xb9\xca\x80\x71\x6f\x7b\x5d\xab\x1d\x10\xfe\x86\x0a\xf0\x8a\xe2\xdc\xa4\xc8\x4e\xba\xd2\xb5\xd3\x74\xa3\x84\x06\xdb\x9f\xb6\xa5\x9a\xce\x48\x4d\x65\x1a\x6a\xaa\xfc\xe4\x62\xc4\x7f\x9e\xb6\xba\x8e\xa6\x31\xab\xa6\xab\xa3\x68\xbc\x4b\xb8\x55\xa6\xa8\x51\x10\x23\xa5\xcd\x23\x62\xb3\xf2\xb6\x82\x2a\x3d\xe9\x3b\xa3\xbd\x56\xb1\xb7\x82\x4a\x57\x55\xe7\x06\xb7\xd6\x8f\x84\x30\xfa\xe1\xcc\x06\x46\xad\xf2\xf9\x6a\x4a\x1f\xb2\x7f\xf9\xc3\x7c\x35\x33\xe9\x24\x86\x21\x3e\xb1\x5f\xc5\xd6\x92\xfd\xcd\x34\xbe\xc9\x72\x0b\x74\xac\xdf\x67\x4f\x65\x33\xcd\xaa\xfc\x94\xef\x53\xfe\x56\x28\x13\x7b\xf9\xdb\xca\x09\x62\xb1\x02\xb3\x96\x55\xa3\x1b\xbc\xa9\xa6\x68\x4d\x4e\xbd\x51\x51\x9a\x33\x9a\xdd\xdd\xb2\x36\x33\x51\xfb\x95\x6b\xe2\xb2\x10\xcb\xe8\xca\x14\x1d\x99\x54\xac\x48\x70\x8c\xa9\xb2\x4c\xd9\x02\xc8\x2e\xad\x27\xec\x5b\xf5\x1d\xc0\x46\x7d\x57\xf2\x3e\xfb\x92\x76\x55\x43\xd1\x05\xd2\x7a\x64\x76\xee\xeb\x1c\x5f\x72\x62\x4b\xd4\x65\x5b\xd1\x8c\x99\x4b\xe5\x3d\x8c\x66\xec\x6f\x18\x2e\x5f\x1e\xef\xfd\xab\xb0\x56\x4b\x52\x30\xe5\x85\xb8\x31\x79\xe6\x4b\x47\xff\x99\x57\x8c\xd6\xc4\xb8\x0e\xc0\x45\xd3\x54\xd9\x47\xc0\x66\x45\x5f\xab\xd4\x5e\xc9\xea\xdc\x58\xa9\xb4\x94\x5b\x50\xec\x92\x5d\x27\x7f\xb9\x30\x08\xd4\x52\x2c\x7b\x94\x4b\x0b\x1d\xec\x5f\x43\x1b\xec\x8d\x6a\xc6\x1f\x17\xa6\x07\xf6\x20\x76\xfc\xa0\x96\x7b\xa6\x54\x5b\x99\xa3\x93\xe4\x6b\xb3\xd2\x4b\xce\xaa\x51\x1d\x12\x8d\xb7\xfc\x5e\xf5\xdb\xa8\xcc\x6c\xe6\x7a\xb4\xd2\x49\x7b\x05\x93\x4e\xd2\xdd\xeb\x45\x43\x4d\x9c\xb5\x96\x7b\xb2\x05\x2e\xd5\x18\x65\xdd\x76\x12\x6f\x45\xec\x68\x28\x6c\x28\x2a\x86\x49\x5e\xb6\x51\x63\xe2\x29\xcd\x4f\x66\x9f\x29\xf0\x54\x18\x36\xf1\x1e\x2e\x04\x4f\x20\x85\xe2\x5a\x38\x97\x49\xfa\xd9\x5e\xa6\x6e\x57\xa5\x68\x9b\x28\x6d\x27\xe6\x54\xc8\xcd\x23\x50\xb6\x52\xd4\x89\xfd\x27\x12\x18\x7b\xa6\x64\xaa\x35\x92\x7c\x55\x98\xe6\xa5\xc8\xbf\xd0\x4c\x74\xae\x90\xf7\xb0\x52\x9a\x62\x06\xad\x6c\x8e\x62\x23\x5d\xda\x06\x1c\x44\x55\xb3\xc6\xa0\xe0\x3e\xee\xf5\x48\x84\xc8\x0a\x5e\x63\x25\xd5\x94\xe3\x1b\xe8\x18\x4c\xd9\x58\x9b\x65\x49\xcb\x90\xe7\xba\xea\x8c\xb4\x16\x22\x2f\xd7\x5c\xbe\x56\x42\x30\x12\x34\x15\x5a\x8f\xea\xa5\x68\x76\x34\xe9\x26\x2c\x95\x0d\x33\xbc\x0d\xc5\x81\xa1\x1a\x67\xf5\xc4\x0d\x45\x3a\x81\x75\x8b\xe9\x1b\x1e\x13\xe7\xfb\xf6\xe0\xc3\xe9\xf5\xfe\xd9\x9b\x96\x38\x5f\x59\x0d\x9c\x67\xef\x37\xf2\xc1\x47\xaa\x2e\x54\x68\xbc\x8f\xdb\x66\x84\x87\x07\xb2\x30\x54\x11\x37\xcc\xdd\xe3\x35\xeb\x6b\xda\x2d\x58\x3a\x02\x5b\x08\x3a\x5e\x14\x06\xb7\x6a\x35\x5a\xa6\x8b\x95\x8c\xb3\xe4\xa5\x97\x0e\xc2\xbe\x43\xf9\x53\xc9\x37\x13\x3e\xfa\x78\x42\xed\x71\x8f\x82\x7b\xe6\x46\x5f\x93\xd3\xb0\x96\x85\x33\xad\xaf\xd5\xf2\xa0\x9a\x8b\xb2\xe9\xb7\x96\x52\x44\x4b\x2b\xaa\x34\x98\xc8\xc2\x5d\x3d\x1b\xe4\x16\xe9\xca\x66\x16\x50\x2b\x55\x99\x9a\xef\x1a\x22\x79\x0c\x88\xc7\x93\xe1\xe9\x21\x2e\x6d\x54\x2f\x4a\x09\x28\xa9\xf2\x4a\xbd\x85\x12\x6c\x57\x14\xd7\x93\x2b\xc0\x58\x6d\x0a\x31\xe4\xbf\x6c\x90\x57\xad\x5b\x3f\x97\x73\xc8\x95\x6a\xec\x8a\x11\x56\xc6\x2d\x9a\x6c\x9c\xe2\x42\x15\xa7\x0e\x8b\x6e\xbd\x43\x53\x7c\x68\xce\x72\xed\x8a\xd1\x42\x2a\x3e\x6a\xeb\x63\x2e\xb7\x6d\x63\xdb\x52\xa4\x5f\x78\x1c\xa8\xa6\xcb\xb1\xca\xca\x3f\x30\x57\x8d\x4d\xad\x3d\x75\x31\xb1\xd2\xdc\xcc\xf3\x6a\x05\x0f\x6a\xe0\xbf\x4c\xdb\xd9\x4e\xcc\x61\x0e\xbe\x14\xe4\xf7\x78\x18\x8c\xc9\x68\x59\x1e\x04\x23\x0e\x4a\xb4\x2e\x22\x05\xfb\x41\xa1\xbb\x4d\x33\x84\x39\x28\x0c\x4b\x2c\x05\x46\xfa\x12\x4c\x2e\xf1\x2a\x48\xf3\xfb\xd0\xf4\xe8\x7a\x1d\x60\x3f\x77\x83\x28\xd6\x2c\xef\xf5\x79\x1a\x5a\xdd\xed\xd1\x28\x7e\x5e\x7a\x3e\xde\x3c\x0a\x3b\x47\x1f\xd9\x48\x65\x36\xd2\x55\x66\xbb\x5f\x54\x66\x5f\x54\x66\x7f\x4c\x95\x59\x72\x3d\x7e\x51\x9b\x7d\x51\x9b\x95\x97\x60\xd8\x58\x97\x96\x5c\x64\xcc\xf1\xd8\x09\x54\xfd\x99\xa2\x53\xd3\x95\x6d\xe6\xa0\x57\x16\x43\x4a\x03\x65\x85\x82\x42\x56\x24\x48\xd7\x21\x68\x49\x25\xf7\x78\x75\x71\x31\x74\x90\x3b\xef\x5d\x3a\xe8\xb1\xa8\xe1\x76\x07\xa3\x1f\x2e\xd1\xdf\xde\x9a\xd5\x70\x1f\x3f\x3a\x68\x36\xb0\x01\xfb\x63\x48\xbd\xea\xc9\x0a\xe8\x26\x8a\x65\xda\xc0\x7e\xbb\xc4\x22\x8a\xe3\xed\x92\xe3\x09\xf3\x54\x77\x2e\x03\x58\xeb\x33\xae\xc6\xab\xfe\xc1\x12\x45\x4b\xf5\x83\x2b\x48\xb0\x8f\xb9\x6c\x00\xfb\x79\x1c\x21\x9a\xf6\x60\xea\x07\x98\x56\xcb\x7a\x1e\x85\xb2\xed\x73\xf9\x17\x0f\x33\x31\x65\xc3\x4e\x36\xad\xc0\xcc\xad\x34\x62\x61\x28\x23\xae\x6a\x53\x06\x36\x96\xf5\x1a\xb1\x0c\x07\x4a\x2a\x54\x19\x13\x82\x1d\xbc\x8a\xd5\xa5\xc9\xae\xe8\xa2\xa8\x04\x40\xff\xaf\x7a\xa5\xaf\xac\x9a\x91\xd5\x63\xe6\x63\x35\x48\xb1\xa5\x0a\x92\x23\xe9\x07\x5b\x35\x30\xc6\xac\x8a\x51\x73\x24\x1c\x97\x65\x8e\x4e\x20\xdf\xe7\x7a\xbc\x23\xa0\x00\x8f\xa0\x83\xaa\x9f\xd3\xe6\xa5\xcb\x4f\xfa\x80\x0b\xd9\x77\x79\xbf\xc0\xf4\x31\x9f\x69\x85\x49\x09\x8d\x2e\xd8\x06\x00\x64\xf2\xcf\xd6\x41\x90\xea\xb9\x2e\x10\x32\x13\x4b\x14\xdb\x75\x74\x0a\x09\x73\x41\xbb\x7f\x4f\x63\x24\xbf\x63\x27\x45\xfa\x52\x3b\xc8\x77\x7a\x8c\x83\xcf\xe4\x24\x27\xd3\x5c\xf9\x3c\xb8\x92\x82\x44\xa9\xec\x9c\xac\x88\x8e\x70\x3c\x21\xb2\x37\x13\x1d\x07\xea\x94\x9b\xf1\xcb\x76\xb1\x33\x89\x65\x56\x79\x70\x2d\xd1\xf1\xa4\x86\x76\x61\x98\xcc\xb9\x72\xa9\xfe\xfa\xf9\xd3\x8f\xc9\x08\xe5\x9c\xcf\xf0\x28\xa7\xa2\x54\x4e\xb5\xb9\x5c\xaa\xc5\x08\xe3\xfd\x52\xad\x0c\xd6\xed\x82\x0b\xfb\x9c\xcf\x44\x51\x06\x24\x97\x8c\xbc\x8b\x96\x81\xe3\xc2\x79\x14\x70\x15\x57\x4e\x96\x94\xd1\xae\xa6\x11\x18\xed\x4d\x8c\x28\xcb\x0f\x66\x0a\x06\xd5\xf0\x2f\xad\x94\x21\x97\x10\x39\x9a\xb4\x2f\x99\x1c\xbb\x99\x36\x58\x83\x4a\x12\x82\xa7\x14\xc5\xe5\x04\x8b\x8f\xe3\x27\x75\x2f\xa9\x3b\x32\xbb\xd5\xb5\x42\xf9\x8b\x55\x80\xfd\x25\x65\x24\x9e\x23\xf8\xdb\xca\x47\x2c\x35\x9f\x8d\xa8\x9b\x58\x5e\xba\x19\xd3\x9a\x64\xe4\xc4\x44\x2f\xa3\xdf\x40\xdb\x52\x49\x6e\x92\xf1\x7a\x0d\x25\x69\x53\x22\xc3\x92\xe0\x86\x5c\x24\x49\x36\xb6\x30\xb6\x21\x97\xa8\xd4\x8b\x64\x2c\x82\x8a\x08\x68\xac\x8d\xae\xe2\xc4\x0e\xf7\xc0\x45\xc2\x0d\x4e\xb8\xf2\x87\x3f\x54\x4d\x72\x95\xb8\xa2\xe1\x6e\xd6\x3e\x97\x32\xd6\x99\x71\x49\xf6\xdc\x82\x51\x48\x3b\x3d\x07\x92\x90\x24\x8c\xac\xc4\x24\x0e\x82\xc3\x89\xc1\x28\x79\x58\x84\xfa\xe9\x1b\xb7\x89\x2c\x6f\xc2\xb6\x92\x8b\x9f\xcf\x71\x2f\x99\xa3\x09\x5a\x66\x74\x6c\x72\x0b\x1d\x9a\xe5\xe2\x7d\x02\x56\xa3\x45\xad\xa1\x26\x20\x55\xcf\xb8\x3c\xbf\x6b\x23\x35\xc1\x70\xb7\x9d\xcb\x92\x0b\x0f\x0f\x7b\x59\x1e\xe5\xdf\x0a\x8e\xeb\xc2\xb8\xfa\x55\x40\x55\xb2\x70\x5a\x42\xfd\x79\xa7\x39\x54\xbf\x7d\x25\x71\x73\x72\x5f\x91\xd8\x9b\x49\x7d\x15\xd9\x80\x81\xa2\x1f\xaa\x01\xba\x35\xac\x44\x6d\x29\xad\x37\x26\xfd\xc7\x06\xca\x7f\xbc\x2d\xc2\x9f\xc8\x46\x36\x0d\x10\xa2\x34\x3f\x24\xb4\xd4\xce\xa1\x61\x4d\x0a\x5e\x70\xa2\x3f\x9c\x24\xde\x43\x0a\x41\xa5\x54\x5b\xf8\xa8\x8c\x8c\x31\x9e\x99\xeb\x41\x4b\x36\x48\x3f\x03\xb6\xb3\x5c\xf6\x9c\x1b\x07\xc1\x4c\x5e\x4d\x2d\x17\x77\xf9\x47\xe9\xb3\xb5\xf9\xb5\x62\x44\xfe\xe2\x3b\xa6\x06\xca\x73\x94\x53\xef\xa2\xe2\x35\x66\xee\xa5\x26\x0c\x91\x81\x92\x9b\x4b\xee\xa6\x6a\xe6\xd6\x3a\x72\xd9\x46\xd9\xda\xb7\xd9\x36\x6d\x89\x5f\x4c\x0b\x55\x1d\xf1\x5b\xbc\x48\x8a\xc4\x0b\x3a\xad\xed\x48\x14\xd4\xa9\x2f\x7d\x95\x30\x05\xfa\xef\xe8\x42\x31\x6b\xdd\xb2\x51\x42\x0a\xf5\x63\x9e\x6e\x27\x4e\xec\x66\x15\x28\x55\x8e\x22\xd9\x14\x71\x1e\x49\x27\xfa\x11\x03\xa6\xb1\x3c\xd8\xc6\x60\xb4\x97\xa2\xd1\xce\x69\x49\x26\xaa\xe1\xdf\x6c\x75\xac\xb6\x13\x2d\xdf\x5c\xba\x44\x65\xd0\x0d\x97\xa9\x8e\x5a\xba\xd6\xb3\xa4\xd0\x54\x0b\x0b\x56\xca\x56\x55\x5b\x75\x7a\xf8\x0d\x97\x9e\x19\xbf\x74\xfd\xef\x10\x74\xa1\x07\x43\x37\x67\xe9\x54\x64\x26\x5d\x87\xab\x05\x44\xbe\x5b\xba\x22\xa5\x43\xf3\x62\x32\x3d\x1a\xe6\xd8\x96\xec\x38\xcc\xb8\xd0\x1e\x2a\x64\x2b\xab\x07\x6e\xc7\xef\xf0\xd1\x30\x86\x26\x95\x40\x7d\x8d\x80\x51\x9b\xb5\x2f\xc5\x71\x99\x2b\x7f\x53\xba\x14\xb6\x93\x55\xa8\x44\x51\x60\xa4\xdb\xc3\xec\x8b\x1c\x1c\x29\x9b\x57\x33\x49\x24\xef\x2e\xa8\x5f\xb2\xa7\xda\xe2\xf5\x93\x39\x34\xbc\x79\xb0\xe5\x6b\xd4\xa0\xa1\x1a\xa2\xe0\xc0\xb5\x8d\xbb\xea\x65\x73\x4f\x08\x9c\x77\x3d\x0f\xcd\x2f\x5b\xdb\x49\x49\xb8\x9d\x60\x39\x77\xb6\x8b\xa7\xb9\xdc\x40\x7a\x91\xad\xe3\x6b\x6a\x95\xbf\x33\x74\xcc\x30\x00\xf7\x84\x93\x85\x6c\xd4\xb0\xa0\xc5\xef\x12\x3b\x8b\xb9\x36\xe3\x72\xbf\xe0\xa9\x86\xa7\x4b\xc9\x25\xde\x17\x86\xe6\x31\xba\x43\xf3\xcb\xf6\xf7\xc9\xc4\x40\xb7\x8e\x99\xb9\xdc\x77\x7a\x99\xdb\xc3\x47\x23\x5b\xdf\x06\x46\x1a\x3c\x19\x81\xc1\x7c\xd1\x50\x4b\x94\x75\x62\xcc\xf3\x4f\xac\xe4\x73\xb8\xe1\xc3\x21\x18\x95\x7b\x25\xca\x9a\x18\x2c\x91\x98\xf4\x47\x14\xfe\x86\x53\x14\x2d\x7a\x30\xc4\xc8\x87\x2c\x90\x8e\xb4\xea\xf9\x31\xbd\x19\xbc\x1e\x13\x3d\xfc\xf0\x3a\x72\x45\xec\x28\x75\x4a\x94\xce\x88\xb4\x2c\xb2\x52\xdb\xc3\xec\xce\xa8\xe6\x2f\xa3\x99\xca\x36\xf1\x59\x4c\xbb\x03\x3e\x9e\x9a\xef\xd7\x3e\xbc\x79\x34\x2e\x8a\xa7\x1f\x0e\xdf\xbe\xf9\xbf\xaf\x8d\x2e\x8a\xd9\x64\xd0\x99\x02\x6c\x69\x57\x3d\xb2\xb6\x94\x42\x4c\x46\xbc\x66\xbe\xa6\x8b\xa3\x2a\xc4\x1e\xf3\x65\x2c\x4c\xfa\x92\xe7\xc6\x63\x70\xe2\xa1\xde\xcd\xf2\xd6\xcc\x95\xae\x4b\xc3\x84\x84\xe0\xcf\x32\xfa\xa4\x2e\x62\x5b\x89\xf5\x4a\x17\x5b\xb3\x4f\xdf\xbe\x39\xff\xe9\xf5\xc7\x37\xe7\xef\x5e\x9c\xbe\x3c\xff\xf8\xf2\xcd\x8b\x6f\x5f\xbf\x3c\xab\xa5\xd0\x25\x84\xe8\x59\xc1\x14\xce\xed\x3c\x12\x50\xc9\x01\x29\x0f\x70\x8c\x23\x6e\x0a\x33\x7d\xba\x09\x77\xfd\x10\xc0\xe2\xa3\x37\x86\x93\x9d\xa9\x59\x38\xc8\x86\x25\x37\x88\xce\xd3\xc0\xad\x54\x42\x6f\x01\x45\x95\xc9\xd5\x0d\x45\x33\x5d\x7f\x39\x07\xcb\x45\xfe\xb2\x9d\x59\xab\x86\x00\x89\xe1\x49\xf7\x13\x60\xbf\x79\xf6\x22\xd7\xa2\x6a\x1c\x3f\xf3\x30\xf5\x20\xb7\x68\xae\x9a\xbc\xeb\x9d\x74\x78\xdf\x34\x6e\x5c\x00\x23\x55\x39\x5d\xe9\xdf\x34\x5f\x53\x11\xbc\x30\xc2\xbe\x0b\x15\x5f\xfc\x58\x0b\xbf\x4c\xe5\x98\xcd\xeb\x25\xe5\xca\x9f\xaa\x21\x38\xe1\x49\xc1\x52\x20\x98\x4c\xd2\x03\x54\x08\x4c\x4c\x63\x5b\x71\x7e\x11\xc2\x05\x84\xd7\x82\x71\xa0\xfc\xc2\x86\x41\x0b\xc9\x35\xfb\x38\x22\x15\xae\xfc\xd0\x7b\x2c\xd7\xfe\xbf\xbf\xba\x82\x3f\xbf\xfb\x34\x35\x47\x26\xb0\xf4\xe4\x76\xe0\x87\x57\xe2\x9f\xc2\xe4\x77\xfb\xd4\x62\xf8\x83\x1f\x7a\xf5\x3c\x04\x8e\x73\x1d\x04\x86\x79\xfd\xd6\x52\xe4\xeb\x73\x1c\x9a\x62\x63\x2b\x95\xb7\xb6\x0d\x71\xd5\x3c\x02\xba\xb7\x74\x42\x58\xcb\xc1\xb8\x82\x81\x5e\x65\xad\xae\xe8\xea\x2b\xf8\x27\xb2\xf8\xcc\x7a\x4e\x87\x9b\x06\x50\x1f\x01\x7b\x01\xc3\x15\x07\x82\x20\x25\xd2\x2e\x2c\xdd\x88\x36\x08\x6c\x6b\x31\xd6\x31\x21\xfb\xaa\x35\xf6\x20\x8b\x6a\xc0\xf6\xc3\x19\x82\x71\xdc\x9b\x39\x18\xde\x38\xb7\x2d\x95\x47\xb7\xac\x57\xac\x5f\x8b\xf7\x1b\x5b\x30\x24\x8c\xaf\xc5\xc7\xb3\x30\x72\xa6\x53\xdf\xb5\x88\xbc\x65\xf1\x5c\xc2\xb1\x15\xad\x70\xec\x7b\xd0\xc2\x73\x68\x9d\x52\xb4\x10\xef\xac\x05\x8c\xe7\x16\x8e\x92\xb6\x7e\x58\xd4\xb4\x5f\xb5\x06\x7b\x45\x38\x61\x72\x49\x10\x7e\x34\x9c\xb5\x0e\xab\x0f\x49\xdf\x09\xbc\xa8\xa3\x90\xe5\x46\x61\x08\x5d\xdc\x63\xd0\xf3\xd4\xd5\xe7\x01\xc8\x8d\x16\x8b\x55\xe8\xbb\x0e\x86\xac\x76\xbc\x11\xba\x8d\x60\x65\x9c\xfd\x8f\x64\xdc\xf4\x36\xa3\x68\x45\x97\x13\x4d\xc9\x34\xc9\x12\xe4\x8e\x5f\x42\x7c\x03\x61\x68\x79\xfe\x74\x0a\x11\x0c\xb1\x58\x88\xe7\x60\xc7\x85\x21\x19\xbe\x6f\x74\x18\xad\xae\x1a\x00\x26\xd3\x66\xe5\xf0\xcf\x4a\x27\x92\x90\x83\x66\xc7\x3d\x21\x3b\x81\xcf\xa9\xa0\xa8\xe4\x1d\x43\x32\x43\x1c\xa5\x73\x57\x3c\x82\x03\x4d\xfe\x7b\x71\x19\xad\x70\xe6\x68\xff\x8e\x4e\x5a\xb2\x08\xd3\x99\xdb\xe8\x18\x24\x5d\x6b\x07\xc2\xb0\xfb\x1b\xa3\x72\x81\xfc\xa6\x32\x1a\x59\x87\xab\xe4\xef\x0c\x9a\x00\x5b\x70\x6f\x1e\xbc\x86\x01\x61\xc7\x7a\x84\x36\x3c\x4b\x35\x8c\x33\x6e\x7f\xb4\x3b\xd3\xa6\xe5\x76\xb9\x0a\x3d\x88\x62\xec\x84\x5e\xcf\xf0\x5d\xce\x08\xe4\xcb\xf2\xae\x05\xbd\x4c\xf7\xd5\x86\x73\x44\xc1\xb9\x0d\xa3\x10\x26\x0c\x4d\x00\x1d\x14\xf6\x38\x37\x59\x14\xb8\x9f\xf4\xe8\x88\x0e\xb1\x73\xc9\x39\x67\xbb\x37\x4c\x8d\x42\x48\x8e\x88\x29\x1b\xee\x83\x83\xdc\x0a\xf8\x42\xcf\x70\xf6\xf6\xf4\xfc\xe3\xeb\x97\x2f\xde\xbf\xf9\xf8\xd3\xfb\xd7\x19\xb8\x0a\xf7\x45\x5e\x7d\xa4\x80\x05\x65\xb3\xa0\x05\xd5\xc2\x28\x5a\xc2\x10\x22\x2b\x8c\x10\x9c\x42\x84\x78\xa2\x9d\x3d\x91\xe7\xdc\x06\xf6\xc7\xcb\xc0\xa9\xb0\x78\xcb\x7a\x4d\x20\x65\xcd\x56\xbe\x07\xf3\x4e\x4a\x6e\x66\x02\xe3\x39\xc8\x8b\x8e\x6f\xe5\x74\x10\xcc\x4a\x9f\x87\xba\xc7\x81\xf6\x51\x40\xe2\x4a\x91\x9e\x76\xa0\x3d\x7f\x08\x14\xf7\x22\x37\x7e\x34\x18\x5e\x84\xdb\xa3\x07\xc3\xed\xb3\xc8\x5d\x11\x48\x53\x1d\x66\x0b\xc8\x5d\x79\xa7\xf2\x98\x88\xec\x04\xde\xe2\x39\x44\xe2\xaa\xa2\x85\xe6\x4c\xa7\x30\xf7\xb2\x31\x56\x32\x52\xaf\xf2\x7c\x34\xfd\x82\x98\xa3\x42\xf8\x6c\x11\x2f\xab\xb0\x27\x9b\x11\x5d\x8d\xe6\x96\x22\x49\x2d\x7e\xef\x3f\x17\x57\x4a\xc1\xb4\x45\x94\xc9\x61\x96\x1f\x1a\x73\x2a\x8b\x3a\xff\xb9\x58\x53\x08\xa2\x2d\x62\x8c\x41\x46\xdc\x12\xb6\x14\x64\x3b\x4a\x77\xb7\x41\xfe\xa7\x7a\x99\x19\x2b\xcc\xbc\x58\xa8\xdc\x44\x51\x5a\xa2\x26\x6d\x06\xd5\x61\xa1\x1b\x46\xbe\xc1\x83\xa1\x0d\xb3\x77\x48\x1f\x09\x6e\x05\x09\x23\xdc\xa3\xae\x18\xd4\x10\x42\xff\x2a\xf4\xc2\xb8\xf1\xf1\x9c\x66\xbc\x01\xf6\x7c\xb5\x70\x42\x96\xf0\x09\xfb\x38\x80\xe4\xcf\xfa\x16\x94\xc4\x4e\xf1\x48\xec\x26\xd7\x8f\xaa\xde\xf6\x3f\xcf\x2e\x77\x97\xfb\x5e\x60\x36\x9d\x38\x4b\xdf\x06\xb6\xe7\xc7\xce\x25\x2d\xa2\x07\x3f\x41\x77\x45\xf3\x79\xb9\x4e\xe8\x52\x8a\xb2\x80\x71\xec\xd0\x48\x29\x37\xaf\xb2\xd0\x11\xb0\x3d\x07\x3b\xac\x82\xb6\xd0\xb1\x79\x2e\xcd\x73\x14\x2f\x1d\x17\xca\x4c\xe4\x22\xfe\x0a\xb3\xf2\x5e\xdc\x9f\x0e\xfc\xff\xec\xbd\x7b\x77\xdb\x46\x92\x37\xfc\x7f\x3e\x05\x82\x77\x8f\x0f\xb9\xd3\x82\xd1\x8d\xbb\x9e\x87\x89\x1d\xd9\x33\xe3\x1d\xe7\xb2\x71\x92\xdd\x89\xa2\x93\x07\x22\x5a\x14\x22\x0a\x60\x00\x50\xb2\x22\xf3\xbb\xbf\xa7\x2f\xb8\x37\x40\x00\x04\x25\xd9\x66\xf6\xec\x58\x6c\x00\x7d\xa9\xae\xae\xae\xae\xae\x5f\x95\xfc\xc2\x5d\x27\xe1\x85\x9f\x07\x2f\xa7\xfe\x5d\xd1\xbc\x8a\xd5\x4a\x53\x4f\xa5\x37\x7f\x74\x0d\x90\x7f\x75\xfe\xaf\x71\x06\xe4\xab\x9b\x34\xf4\x13\x2d\x32\xf9\x23\x8b\xff\x6b\xd7\x85\x6c\x21\x8b\x66\x93\x1c\xe6\xb1\x25\x69\xa4\x95\x7e\x1e\x7b\x1d\xcc\x90\xf3\x90\x5e\x03\xf6\xbf\x19\x40\x45\xb4\x26\xa2\x1e\x69\xb7\x91\x9f\x60\xe9\x8a\xfa\xad\x14\xa3\xd7\xb0\x08\xbe\x64\x9e\xe4\xb3\xbe\x91\x75\x52\x49\x96\xa5\x48\xa7\xb1\xda\xf3\x64\xe3\x02\x52\xb1\xe6\xd2\xd9\xda\x1a\x9d\x1d\x96\x33\x84\xeb\xe0\x54\xb3\x4b\xba\x03\x2c\x1e\x05\xf9\x58\x28\xdb\xe2\xfa\x71\xb0\xc1\xea\xaa\x15\xe8\xe0\xc7\x27\x34\x29\xd9\x0e\x8e\x11\x99\x2f\x28\x0f\x26\x4f\xaa\xa5\xa0\xc3\x04\xbf\x17\xc0\x06\x33\xea\xa7\xd9\x50\x81\xfc\x2f\x1a\xfa\x09\xc8\xd2\xa5\x1b\x1f\xa5\x29\x71\x83\x2c\x00\x54\xd7\xfb\x37\xfe\xda\xbf\xf0\x9d\x14\x46\xd2\x45\x16\x53\xa6\x31\x18\x24\xfb\x9e\x65\x94\xe5\xca\x01\x5d\x7f\xe1\x9c\x06\x63\xca\xff\x66\x83\x43\xa0\x16\xfb\x28\x1f\x0b\x1f\x03\x59\x1b\x76\x59\x23\xd1\x80\xec\x7a\x9e\xcf\xa3\x06\x66\x5c\x53\x49\x64\x2b\x60\x9a\x2a\xa8\x92\x77\xb1\x18\x31\x47\x34\x5a\x1d\x10\x25\x87\xa6\xcd\x4d\x51\xc3\xed\x04\xc0\xa5\x74\xff\x3f\x85\x12\xcb\x53\x27\xb9\xbc\x56\x20\xe1\xc0\x93\x5c\xe9\x0a\xdf\xb1\x3b\x98\xf4\xc3\x79\xe8\x95\x9c\xbf\x9e\x67\xd4\xde\x39\x0a\xb7\x56\x63\x79\xc1\x7d\x73\xc7\x69\xc8\x81\xe9\xdb\xd0\xdd\xd5\x7a\xb2\x0a\x9e\x0b\xed\x52\x03\x9c\x88\x1a\x13\xfb\x8b\xde\xca\xf1\xbb\x49\xb8\x58\x34\x38\xda\x35\x2f\xc7\xad\xda\x3c\x2c\x30\x3f\xa2\x8c\xfa\x47\xcc\xdd\x83\x4c\xb2\x11\xe0\xf9\x15\xf6\xaa\x2b\xd8\x00\xd6\x59\xfe\xb0\xc0\x9a\x34\x3d\x73\xba\x45\xf5\x63\x6b\x44\x79\x96\xd6\x79\x1e\xbe\x2f\x0b\x3e\xaa\x85\x95\x05\x5a\x8b\x9a\xdd\x2c\x16\x4e\x52\x66\x6d\xfa\x78\x9b\xa8\x68\x5f\x44\x39\xd9\x75\xba\x3f\xb0\x70\x08\xc3\x65\x22\xcf\x45\xdd\x5b\x2a\xb6\x91\x20\xcd\x6f\x2d\x36\x80\xe5\xd3\xbb\xe3\xcd\x94\x9c\xfa\x30\x79\xf8\x08\x7b\x7e\x42\xc6\x53\xc9\x7b\x9e\xa5\x6e\x29\x86\x02\x0b\x83\x2b\x7c\xb7\xa6\xf1\x81\xd3\x58\x95\xbd\x76\xbd\x5a\x52\xf0\x02\x59\x7f\x69\x88\xcb\xd7\xc6\x9f\x59\x14\x87\x4c\xd1\xd9\xea\x4b\xd5\xe5\x76\x2d\x5d\x7a\x84\x15\xdc\x08\xbb\xe9\x7a\x2b\x6c\x3d\x55\xcc\xaa\x70\xa7\x3e\xcb\x56\x6d\x96\xd4\x5c\x98\x22\xbd\xdb\x12\x1c\x45\xd3\x80\x3d\xa6\xa0\xe3\x76\x20\x4a\x13\x32\x7c\x73\x11\x07\xec\x1f\xa0\x1a\x6d\x8b\x0c\x54\xdc\xbf\xb2\x78\x59\xbb\xee\x1e\xe7\xeb\x24\xe1\xf2\xd9\x00\xf9\x64\xd4\x13\x4d\xe6\x44\xf7\xe3\x1f\x22\x3f\x4e\xfc\x00\x67\x11\xc1\x8a\x0f\xdf\x04\x34\x43\x6f\xe9\x99\x60\x8e\xb9\x52\x91\x9f\x39\x32\xaf\x63\xf7\xa6\x2e\x50\xba\xbb\xa8\x96\x07\x54\xcb\x7a\x54\x39\x73\xe8\x95\x01\x94\x3a\x58\x21\x88\x60\x2c\x7c\x10\x34\xbb\x6e\x69\x63\x60\x27\xbc\x01\x56\x8e\xa7\x36\xd5\x87\xd9\x6c\x9c\x4d\x91\x5e\x39\xca\x64\xd9\xa0\x94\x73\xe0\xc8\xf3\xdd\x65\xb8\xc8\x36\xbc\xd4\x6a\x40\x01\xd6\x5d\x22\xdb\x5f\xe1\xbb\xaf\x87\x26\x2e\xe8\x90\x13\x64\x70\xcc\x45\x58\x9c\xdf\x42\x64\x19\x1e\xf8\x9c\x6f\x3e\xdb\x26\x8d\x29\x7a\x79\x45\x6c\xd7\xa9\xec\x50\x66\x81\x33\xd2\x60\xf7\xb5\x13\xed\xab\xbc\xdd\x6e\x81\x88\xcc\xe1\xa1\x19\xf9\x9c\x0e\x24\x9d\x0d\xf8\x30\x8e\x4a\xc9\x29\xaa\x1c\x02\xe4\x17\xb9\xd5\xe9\xc5\x3c\x63\xe3\x14\x78\x99\xba\x36\x20\xa0\xd7\x54\x91\xb6\x71\x6b\x40\x07\xe2\x80\xff\xbd\xd1\x76\x9d\xfc\x7a\xb6\x0a\x10\x54\xdd\x8b\xfb\x86\x8c\xaa\x3f\x6f\x36\xd9\xe6\x21\xfa\xa3\x72\xe0\xfd\x30\xc8\x2c\x7b\x39\xd3\xca\x6e\x12\x9e\xcb\xfc\x18\x44\x9b\xc5\x41\x42\x4d\xb6\x17\xc9\x51\x12\xf9\xd7\xe4\x6f\x37\x4e\x8a\xf6\x5e\xfa\x3f\xd4\xc8\x97\xd9\xf8\x8a\x26\xbe\x82\x41\x2f\x0d\xe3\x4e\xcd\x79\xb9\xd9\x48\x9e\xbb\x01\xeb\xd8\x12\x0f\x71\x9d\x2f\x19\x5a\x47\xb6\xfd\x02\x1c\x10\x35\x3e\x3a\x66\xaf\xfa\x01\xb5\xd5\x72\x77\xcb\x89\x7c\x9e\x84\xae\x3c\x05\x84\x5c\xc7\x5f\xaa\x20\x4d\x83\x90\xe7\xae\xe7\x29\xfe\xb3\x4c\xf9\x8a\xa2\xb8\xd1\x82\x7a\x12\xc4\xd3\x0d\x48\x27\xa1\xc7\x07\xac\xbc\xf8\xc1\x06\xf0\x74\x47\xc7\xf7\x4c\xaf\x2d\xa4\xce\x07\xc9\xf4\x9e\x99\x87\x83\x59\xa2\x2c\x70\xf2\xca\x4d\xdc\xc9\xf4\x8b\x24\xba\xbb\x4f\x94\x4b\x37\xf0\x96\xf8\xf5\x0d\x0e\x92\x09\x9e\x6e\xe6\x6e\x32\xbf\x9c\x44\xe9\x17\xc9\x0c\x2b\xec\xae\xe8\x8b\x25\x4e\x24\xf7\x8b\xf8\xd6\x27\x2f\x24\x14\xb0\x3c\xbd\xa7\x88\x47\xa6\x7a\x1f\xe7\x99\xff\x83\x54\xd1\x65\x79\xff\x39\xfd\x14\xbe\xb4\x27\x89\x42\xbf\x98\x4e\xbf\x38\x8f\xb0\x7b\xf5\x05\xad\xa4\x60\x1e\x3a\x76\xf9\x9c\x2d\x70\x32\x21\x35\x64\x5c\x38\x05\xa5\x46\xfe\x85\xef\x64\xf0\xff\xfe\xe3\x5e\x7e\x2e\x7f\x39\x9b\xb9\x5f\xbb\xc7\xb2\xbc\xf9\x8f\x7b\x5e\xff\xe6\xff\x95\x1a\xa0\xfc\x5c\xe8\x24\xab\x98\x71\xf9\x97\xb4\x9f\xe4\xef\xf4\x13\x2e\xe1\x8e\x93\xcb\x28\xbc\x95\xa2\x0d\xf9\x6f\xf0\x1d\xc0\x53\xca\xaf\xfa\xe6\x1f\xff\x7d\xf7\xf6\x67\xf7\xef\xad\xf9\x55\xd3\x3b\xcd\xf4\xdf\xcc\xe8\x9e\xd9\x43\xb2\x0b\x00\x20\xc7\x38\xf0\x98\x91\x7d\x15\xe1\x38\x3e\xe1\x39\x42\xea\x39\x22\xf2\xac\xad\x2f\xb2\x54\x21\x3c\xbf\x42\x25\x4d\x29\xb5\x7f\x0b\x6e\x16\x12\xf7\x7c\xbd\x74\xa3\x4a\x62\xd5\x52\xea\x85\xab\x1b\x96\x41\xf5\x8c\x66\x5b\x80\xda\x59\x0d\x23\x84\x00\xd4\x47\xb5\xd8\xf7\x4f\x5b\x94\x6a\x8b\xe5\x24\x88\xdf\xf1\x0a\x47\x4f\x7a\x1f\x85\xb7\x83\x7a\xe7\x15\xac\x37\x65\xfd\x95\x9d\x0d\xff\xce\x0d\xae\x67\x40\xbe\x48\x6d\xb1\x17\xfe\xb2\x18\x47\xb4\x05\xf4\xea\xca\xd5\x8b\x71\x58\x09\xa6\x20\x6c\xc9\x9b\x2b\x57\x37\x4a\xd6\x1e\xfb\x89\x3d\x3f\x29\x45\xa2\x24\x9f\xfd\xab\x92\xe2\xa1\x72\x3c\xaf\xfb\x0e\x16\x3f\x63\xb5\x18\xd5\x6a\x4a\x66\xd0\xaa\xda\xb5\x97\xc9\x1b\x9c\xc7\x4e\x5e\x85\xab\xf0\x86\xfa\xd1\x06\xeb\xac\x5e\xfc\x7e\xe5\x06\x1e\x5d\xc2\xa5\xdb\xb4\x2b\x7c\x77\x1e\xba\x91\xf7\x92\x87\xdb\xad\xce\x44\xc5\x4c\x9c\x69\x63\x29\x5d\x68\xb4\xf4\xb2\x9d\xb2\x72\xc4\x50\xcf\xb2\xac\x62\xa5\x2f\xd9\x47\x7d\xf4\xca\x0e\x54\x4b\x22\x7f\xb1\xe8\x9f\x4b\xec\xdb\x30\xc2\x2d\xe1\x11\x1a\x13\xd5\x8d\x06\x2c\xc8\x4f\x69\x6a\x15\x54\xd6\x76\x9b\x27\xbe\xc4\xeb\x68\xb1\x94\xb7\xba\xc9\xb4\x9b\xea\x5d\xb9\xc5\xf1\x45\xe8\x24\xf3\x78\x8b\xbe\xb1\x85\x5f\x7c\x7c\x2b\x03\xf9\x75\xa1\xce\xe6\x73\xd5\x16\xf0\xd9\x36\x7f\xa3\x3c\x8d\xe1\x56\xda\x16\x2f\x16\x99\x49\xfd\x94\xe7\xf3\xec\x4b\x71\x99\x9a\x96\xe9\x16\xcd\x2a\xb1\xcf\xba\x1f\x25\x45\xf7\x32\xc5\xc6\xb7\xde\xca\xd8\x44\x99\x20\x2a\x3a\xf6\x8e\xdc\xca\xce\x5d\x4a\x2e\xd8\x90\x0e\x29\x73\xa1\x4e\x79\x9c\x6f\xba\x80\x65\xe3\x03\xb9\x98\x04\xa7\x2a\x50\xfb\xe4\x3e\x52\x6b\xf8\x15\x44\xf6\x86\x6c\x5b\x1f\x84\x54\x11\x5e\xcb\xa4\x39\x0a\x6b\xb9\x1f\xdb\x4e\xa3\x0d\x16\xb7\xa6\x5e\xb3\xe4\x84\xe3\xf5\x39\x9d\xf7\x6d\x29\x0b\xa5\xae\x69\x0b\xff\xf5\x8b\x84\x83\x24\xba\xab\x27\x2d\x6c\x5d\x5b\xa3\x11\x28\x67\x94\x61\x68\x5c\x24\x46\xe3\xf6\x24\x69\x1a\xda\xbb\x18\xf8\xa0\x29\xcf\xe9\xd0\x1c\xc5\xa5\xd5\x57\x5d\x74\x15\xc3\x15\x12\x49\x0d\x66\x99\xa2\x01\x4d\x2b\x76\x4c\x91\x09\x31\xdb\xdf\xb7\x28\x00\x10\xd5\xd2\xf4\x57\x5c\x18\x77\x1c\xb1\x20\xb9\xea\x36\x1e\x6a\xc4\x0d\x0e\xfc\xa0\x69\x82\xc7\x9f\x4e\x26\x33\x2f\xc2\x28\xd5\x05\xcc\xfe\xf1\xc3\x8a\xff\x31\xdb\xf1\x23\x91\x4e\x60\xe8\x6a\xf7\x53\x1c\x58\xe8\x90\x35\xdc\x96\xf5\xb4\xcb\xbe\x3f\xdc\x09\xf4\xd3\x55\xb4\x10\x57\xa4\x76\x20\x61\xd5\x92\x5a\xb3\x61\x03\x0b\xd8\x1d\xc2\x94\x6d\xcd\xa2\x5a\x37\x0a\x0b\xd8\xaf\x4b\x04\x32\x6a\x4b\xbd\x8c\xf0\xc5\x51\x12\x16\x23\x90\xfd\xb9\xc6\xf4\x52\x9f\xfe\xe8\x10\x77\x8c\xc6\x0d\x2b\x1b\x5a\x69\xd8\xf9\xf4\x07\xb5\xb2\xce\xdd\x60\x98\x7d\x74\xa7\xec\xa7\xa3\x86\x13\xbb\xba\x79\x82\x09\x4f\x57\x3f\x9d\x7f\xfb\xcf\xbf\xff\xfd\xf6\x90\xf0\x74\x48\xc2\xd3\xab\x9b\xd1\x32\x9d\xea\xb9\x6e\x75\xc8\x74\x9a\xd9\x5c\x04\x71\x45\xaf\x6e\x46\xcf\x71\x0a\x05\x39\xe2\xba\x27\x39\x2d\x7d\x3d\x52\x96\xd3\xe1\x83\x1f\x90\xdf\xb4\xeb\xf0\x9b\x12\x9c\x76\x25\xc0\x47\x94\xe1\x34\xf7\x0b\x3d\xa4\x38\x6d\x55\x14\x0e\x29\x4e\x0f\x29\x4e\x0f\x29\x4e\x0f\x29\x4e\x3f\xb6\x14\xa7\x82\xd8\x75\xa5\x1f\x4f\x3d\xc5\xa9\x53\x2a\x7b\xac\x0c\xa7\x4d\x3b\x3f\x7f\xaa\xe5\x9d\x6c\xb2\x79\x89\x99\xfb\x90\xe2\xf4\x73\x48\x71\x7a\xc5\xf1\xef\x23\x26\x38\xa5\x55\x7e\x66\xe9\x4d\xcb\x67\x02\x42\x81\x43\x56\xd3\x5e\xb2\x3e\x3f\x11\xe5\xfe\x1c\xf4\xb0\x36\x4e\x3c\x22\xb9\x92\xd2\x94\xad\x00\x96\xc6\xf4\x9e\x1c\x3c\x36\x9b\x74\x15\x34\x8b\x7e\x24\x10\xfd\xa8\xce\xf8\x23\xe5\x1e\xdd\xe1\x4c\x4a\xf9\xaf\x98\x62\xb4\x94\xa5\xb5\x85\x25\x0f\xd9\x43\x0f\xd9\x43\x3f\x93\xec\xa1\xff\xc2\x77\x5b\x12\x2e\xd6\xf3\x18\x55\x6c\x2e\x59\x3d\x5b\xf2\x2c\x0a\x12\x04\x09\x6b\xf2\x03\xaf\x53\xfa\xcb\xf2\x62\xa7\x4d\xd0\x15\xbf\xb5\xab\xa4\x81\x4e\x09\x2e\x9b\x5a\x38\x64\x8a\xfc\x68\x32\x45\x16\x65\x4b\x87\xc4\x51\x85\xc3\xc3\x4e\xf9\xa0\x8a\xcd\x6e\xcb\x95\x54\x5b\x82\xb0\x52\xfa\x84\x72\x93\xf5\x1d\x97\x20\xf9\x53\xb1\xf8\xe9\x64\x21\xeb\x6d\x62\xe8\xc8\x50\x3d\x15\xe4\xbd\xf2\x59\x4d\xb0\xc2\x6a\xf1\xbe\xb2\x6d\x76\x11\xd5\xfb\xe0\xc0\xba\xa4\x87\xb5\xf2\x87\x1e\xf3\x1e\x78\xb3\xfe\xf8\xd3\xcf\x48\xd6\x11\x79\xb5\xbf\xdc\x64\x69\x36\xb2\x2c\x04\xd7\xde\xd2\x92\x09\x6e\xeb\x1f\xdb\x81\x60\x19\xba\x1e\x7e\x32\x9e\x03\xe8\x2f\xff\x1d\xfa\xa7\xd6\x90\x90\xa4\xe9\x3e\x1d\xc2\xcc\x97\xb6\x74\x93\xce\xc6\xc6\xaf\xd0\x61\xd5\x22\x92\xa9\xdf\x37\x8b\xd4\xe9\xe7\xfd\xf5\x92\x72\xc2\x65\x92\xac\x8e\x9f\x3f\xbf\xbd\xbd\x55\x6e\x35\x25\x8c\x16\xcf\x91\xaa\xaa\xcf\xc9\x9b\x8d\x0f\xe9\xb7\xcf\x4b\x35\x1d\xbf\xe7\xb9\x53\xea\x9f\x40\xc7\x71\x9e\x37\x3f\x16\xd4\x78\xeb\x7b\x09\x61\x43\x5d\x5f\xbd\x4f\xcb\x2e\x31\x3b\x0c\x95\x0a\x6f\x7c\x7c\xfb\x4d\xf8\x5e\x06\xb2\x2a\xa9\x92\xae\x4b\xba\x9e\x3d\xc2\x51\xcc\x78\x1f\x2a\x50\x68\x22\x4a\x89\xb2\xd8\x7a\x93\x38\xf7\xa3\xf9\x12\x67\x5e\x54\xa4\xce\xf4\xc7\x9c\x34\x8e\xac\xec\x27\x59\x44\x88\xff\x32\x80\x9c\x44\x6e\x10\x5f\x84\xd1\xf5\x51\x18\xf9\x0b\x3f\x38\x96\x90\xb5\x7a\x2f\x21\x3e\x84\xc6\x88\x2c\x5d\x5b\x86\x3d\x5a\x86\xa3\xb6\x5c\x19\xb3\xbe\x7d\xd0\xfa\xbe\x46\xdd\xde\x36\x1c\xb7\x6d\x54\x6a\x3a\xeb\x89\x78\xd8\xab\xf7\xb4\xf9\x7d\xb4\x8c\xb6\xb6\x8c\x46\x6b\x59\xef\x33\x68\x7d\xdc\x51\xeb\x7d\x86\xad\x8f\x3b\x6e\x4d\x2b\xf3\x59\x5b\xd3\x9a\x46\xd8\x6c\x34\x0e\x87\xdd\x5b\x86\x70\xcc\x96\xab\x63\x56\xb7\x0f\x5a\xdd\xd7\xa8\x5b\xdb\x66\xc3\x1e\xad\xed\xac\x31\xce\xe3\xb0\x95\xcf\x54\xc2\xe3\x70\xb4\xb6\x4b\x4d\x67\x33\x20\x6e\x7a\xf5\x9e\x92\x7d\x2f\xa3\xde\xd2\xb4\x3a\x6e\xdb\x7d\x08\xbe\x95\xde\x72\x63\xe1\xc0\x2d\x1e\x95\x85\x2f\xea\xbe\x20\x11\xda\x6d\x41\xb6\xb7\xdc\xba\x28\x58\xd3\x3b\x2c\x0a\xd4\x32\x45\xa8\x75\x9f\x25\x53\x84\x76\xd8\x66\x51\x1b\x63\x6e\x69\x5a\x1d\xb5\x6d\xa7\xd4\xb4\xd3\xd6\xb2\xb3\x7a\x4f\xfe\x7f\x9c\x76\x35\xa3\xbc\x18\x8d\x56\xd1\x6b\x90\xc5\x68\xec\xa9\xed\xd6\x41\xd3\xa6\x47\x1b\xb5\xd3\x63\xd0\xce\xd6\x31\xef\x5b\x0c\xd8\xa5\xde\xda\xad\x6b\xd1\x5e\xbd\x97\xec\xb1\xc8\x04\xcd\xee\x2d\x43\x73\xcc\x96\x2b\x63\xd6\xcc\xad\x83\xd6\xcc\x3d\x8d\xba\xbd\x6d\x3a\xec\xf1\xda\x2e\x0f\x1b\xb5\x52\x9c\x8c\x1a\x8d\x46\xf1\x72\xcb\xb0\x75\xd0\xa4\x65\x38\xda\x98\x35\xb3\xc7\xa0\x09\xa9\x47\x1c\x75\xa5\xed\xf6\x61\xd3\xb6\xdb\xc7\x3d\xba\x28\x30\xda\xf6\x65\xd8\x7e\x00\xa6\x87\xa2\x1d\x76\xa8\xd6\xb6\xb5\xed\x6d\x6b\xa3\xb5\x0d\x51\x8f\x9d\x19\xa2\x1d\x77\xe6\x72\xdb\x5a\x9f\xb6\xb5\x71\xdb\x86\xe5\x1d\x12\xb6\x6e\x54\x90\x6c\x91\x70\x87\xdd\xb9\x32\xdf\xe5\x4d\x12\xb5\x6e\xcf\x88\xec\x92\x68\x87\xfd\xb9\xb5\xed\xf6\x71\xd3\xb6\xc7\x1b\x77\x85\xe6\xed\xe3\xa6\x34\x6f\x1f\xf7\xe8\x22\xc1\x69\x5b\x96\xed\xec\x89\xb6\xb3\x67\xad\xbb\x95\x82\xda\xcf\xb6\x5b\x85\xfe\x26\xfc\xa2\xbd\xfc\xf1\x6d\xf7\xf3\xab\xa3\x18\xb3\x34\xee\x4f\x29\x39\xc6\x1f\x86\xbb\xfa\xfe\xfc\x36\x6e\x4b\x8e\xd1\x29\x25\x06\x8f\x92\x15\xb7\x83\xe9\x7a\x26\xc9\x48\xf3\x60\xa4\xc9\x32\xaa\xc9\x2f\x0c\x96\xd0\x82\xe7\xb7\xe0\xe9\x2d\x6c\x0a\x14\x89\x99\xf9\xbc\x1a\x35\x95\x87\x20\xdd\x4b\x0e\x0b\x96\x1b\xa2\xcf\x75\x32\x5d\x01\x8d\x57\x22\x39\xcb\x50\x92\x49\x94\x17\x28\x6d\x8e\x18\xb0\xf2\x8c\x5e\x97\x58\xe2\x75\x9f\xae\xfa\x4b\xb4\x55\x30\x14\x63\x52\xc1\xaa\xc7\x5f\x53\x9a\x26\x99\x66\xee\x8f\x02\x77\x19\x3f\xe7\xdd\x8c\x95\xcb\xe4\x7a\xf9\xff\xa5\x9d\xf6\x70\xec\x2f\x82\x2c\x66\x2b\xcf\xcf\x74\x89\x97\x2b\x69\x58\x92\xa6\xb7\xe1\xfc\x4a\x7a\xc7\xa7\x56\x2c\x9c\xdb\x8a\x45\xb8\x2b\x39\x73\x87\xd1\xcf\x6a\x71\x75\x59\x68\xb2\x81\xfe\x2f\xf5\x2c\xf2\xc2\x48\x67\xb5\x4f\xaa\x10\x2e\x51\x7f\xfa\xc7\xcf\x16\xf7\xe8\xcd\xab\x9d\xfa\x43\x3e\xdf\x8e\x49\x2b\xd3\xa0\x2d\x16\xbf\xa0\xcd\x46\xf4\x8b\x38\x94\x1a\x75\x35\xf0\xe6\x4a\x10\x7a\x38\x56\xe2\xcb\xf0\x56\xae\x11\x91\xf6\x40\x14\x2b\x49\xfc\xda\xd0\x54\xfc\xa5\x61\xbf\xc2\x4b\x9a\xb5\xac\x17\xad\x4b\x79\x2f\x4a\x9d\x23\x0b\x81\x57\x29\x0e\xaa\xbe\xad\x3f\x3f\xfd\xf4\x76\x60\x6f\x04\x89\x0b\x68\x65\x67\x40\x3e\xea\x14\x42\xaa\xd6\x97\x6f\xf0\xa5\x7b\xe3\x87\xcd\x09\x5b\xba\xb0\x62\x5e\x49\x6d\x79\xa4\x0b\x1c\x0a\x56\x38\xdf\xb3\xc6\x5b\xe3\xff\xc4\xee\x32\xb9\x94\x4e\x78\xbd\x7d\x19\xbd\x2a\x8e\xca\x9e\xb3\x26\x05\x41\x04\x8b\x84\x02\x0f\xd5\x61\xf1\x8e\x04\x6b\xa9\xe4\xff\x28\x03\x29\x0f\xb7\xb5\xcd\xe5\xb1\x4b\xde\x83\xa3\x7e\x42\xaa\x4d\xb2\x09\x1d\x6c\x1a\xa6\xbb\x04\x71\x36\xce\xb2\x90\xd2\x52\x9c\x6f\x20\x63\x65\x87\x92\x72\x57\xcd\x9d\x43\x82\xfb\x2c\x94\xbb\x9b\x46\x8e\xe2\xdd\xfd\xec\x42\x83\xc3\xb2\xbb\xb8\x21\x08\x0d\x4e\x55\x39\xb5\x1e\x21\xfc\x4d\x4e\xc2\x76\x6d\x41\xe4\x56\x25\x8e\x98\xdd\x89\x9a\xbb\x45\x0b\xdf\x1e\x6f\x4c\xce\x24\x9f\xde\x13\xcb\xd9\x79\xbe\x3a\xcd\x05\xaa\x93\x3c\x0d\xf2\x96\x91\xbe\x8d\xe8\x5b\x7a\x93\x47\x40\xef\xd4\x1b\x4d\xd0\x1b\x51\x2a\x80\xb6\x49\x47\x40\x03\x75\x9f\x3b\xf1\xbb\xbd\x31\x80\x82\x88\xa9\x83\x02\x9f\xb7\x3a\xdd\x65\x27\x9e\xdc\xdf\xee\x8f\xd0\x27\xff\x2c\xb2\xc8\xe7\xcd\xb1\xca\xf9\x41\xab\x10\x9a\x9c\xe5\xba\xcc\xe3\xfb\x78\xeb\x88\xc9\xb4\x8b\x28\xbc\x4e\xa3\xaa\x33\xd7\xbd\x61\xc1\x79\x1a\x8e\xc4\xa3\x84\x31\x1f\x18\xb4\xba\xd4\xa5\xa7\x14\xbe\x1a\xfd\x85\x2f\xaf\xbf\x33\x7f\xed\x14\xbe\xba\xef\x71\x9d\x6f\x81\x1d\xe1\x4a\x06\x05\xe2\x75\xd1\x42\x04\x82\xcf\x06\x32\x21\x6b\x5b\x24\xeb\xd2\xb1\x97\xc5\xb4\x3e\xab\xc6\xb2\xd6\xc9\xf9\x7d\xc4\x83\x7b\xbf\x50\xd6\x72\x2d\x96\x02\xd9\x94\x1a\xcf\x8a\x5b\x95\xb1\x54\xf6\x97\xc0\x45\xb9\x82\xdb\xf9\xd0\xd7\xa4\x89\x09\xeb\xaf\x59\x21\xb2\xf6\xd2\x43\x5d\x1d\x2b\x26\xcf\xc3\xd5\xdd\x11\x97\xc6\x35\x2f\xf0\x94\x9a\xa5\x7a\xf8\x19\xb1\x9e\xb3\x62\xab\xaa\x57\x14\xa3\x63\x04\x94\xf6\x70\xe2\xfa\xcb\x01\x30\x99\x4e\x93\xbc\x7d\x76\x1b\x22\xbe\x88\x4f\x11\x85\xfd\xe7\xcd\xab\x6e\xe6\xdf\xc6\x33\xf3\xf8\x73\xd7\x9d\x67\xda\x23\x85\x77\xca\xd5\x95\x93\x8e\x4a\x09\x3a\xc3\x5e\x76\x9a\x16\x92\x13\xa6\xe4\x64\xea\x82\xc9\xa7\x2b\xa8\x25\x46\x4d\x07\x43\x8f\xd2\xbd\xc9\x0c\x81\x30\x8d\x64\xa7\xb3\x79\x13\x71\x2a\xa3\x4d\x92\x16\xae\xe9\x3d\xcc\x9f\x7e\x7a\xdb\x34\xc8\x2a\xbb\x57\x82\x61\x90\x71\xa5\xa7\xfc\x81\x61\x76\xdb\xb8\xf5\xa8\x03\x63\x34\x9f\x33\x5b\xcd\x03\xac\xd7\x03\xf8\x6e\xfb\xe4\x9c\x17\xed\x16\xe3\xcc\x50\x6a\xc5\x18\xc4\x8b\x6c\xc0\x8d\x86\x90\xd6\x59\x87\xc5\xd0\xb6\x25\x8b\xd3\x77\xa1\x87\x53\x6b\x46\x7e\x04\x7b\xc7\xf2\xc0\x9c\x94\xcd\x27\xbb\x08\x46\xa6\x03\xe4\x66\x93\x71\x08\xca\x3a\x38\x50\x82\x8a\x17\x45\x8a\xda\xb6\x76\x36\xc6\x14\xe3\x2b\x8b\xa1\xc2\x0c\x8b\xba\x1b\xce\xb5\x45\xbd\xb0\xb7\x2e\x8c\xce\xe8\xf6\x42\x83\xdd\xec\x3d\x43\xb6\x07\xab\x87\x52\xd0\x20\xd1\xf4\xba\x21\xa8\x5f\x50\x6c\xde\xf6\x1e\x13\x58\x3c\x11\x0b\xd2\x1e\xad\x47\x29\x4b\x16\xd2\x06\x0a\x6d\x47\xa2\x5c\x82\x2d\x31\xb8\x4d\x9e\xa0\xbe\x12\x68\xbb\x08\x1a\xcc\xc5\x45\x61\x6b\xae\x18\x19\x1a\xcc\x2f\xb9\x51\x69\xfb\x45\x40\xb7\x1c\x74\x7b\xb4\x28\xf5\xb5\x27\x19\x3d\xe2\xc4\xec\x68\x4b\x42\xdb\xad\x37\x55\x5b\xd2\x96\x1b\xa3\xa1\x76\xa4\xe6\x10\xee\x1d\xec\x48\x5d\xd3\xed\x0d\x08\xd1\x3c\x24\x17\x9f\x10\xa2\x29\xfc\xac\xd9\x84\x14\xe1\x8b\x08\xc7\x97\x47\x51\xc8\xcc\x07\x61\x50\x98\x01\x41\x84\x67\x31\xf8\x32\x09\xc3\x65\xe2\xaf\x4a\x86\xa7\x34\xcb\x55\xd5\x88\x44\x51\xa2\xeb\xc0\x2f\xc4\x8a\x1e\xc1\x98\xb4\x53\xcc\xe7\xb6\x9c\x78\x63\x98\x95\x82\x30\xf1\x2f\x7c\x86\x6c\x8d\x9f\x8a\x7d\xe9\xc7\xab\xbf\x7f\xf3\x6b\x78\xd7\xe0\x05\xf2\x22\x0b\xe1\xca\x1c\x31\x1a\x6c\x45\xa2\x48\xeb\xe8\x0c\x64\xe6\xfa\xde\xc1\x6d\x84\xa1\xdb\x49\xe3\xeb\x34\x5b\xd3\xd0\x83\xc8\x4f\x97\xd9\xee\x2f\xdd\xba\x71\x61\xc7\xf4\x94\x9e\xe7\x8f\x9f\x2e\x71\x84\x69\x25\x6e\x20\xd1\x5c\xed\x79\x6d\x7e\xb0\x90\x92\xbc\xa9\xa6\xaa\x5b\x60\xd8\xcd\x8b\x95\x2e\x1d\xff\x62\xd7\xb5\x22\x60\xc7\xc7\xf7\x95\x5a\x84\x4f\x65\x61\xfc\xf2\xe7\xb7\xe1\x6a\xb1\x10\xe7\x0d\xac\xa3\x9b\xcb\x18\xe5\x14\x07\x9c\xbb\x7d\x66\x28\xe0\xbc\x68\x3c\x20\x33\xcf\x35\x3a\x5f\x47\x11\x0e\x92\x93\x70\x29\x38\x9a\xa6\x7a\x41\xe2\x27\xcb\x52\xee\x85\x13\x4a\xfb\xda\x4e\x97\xe9\x11\x2e\x4f\xda\xa7\x03\xd9\x93\x81\xfc\x2d\x52\x15\xd5\x51\x1d\x0d\x42\xa0\x2a\x86\x06\x6d\x64\xd8\x9a\x29\x9d\x40\x4b\x31\x2c\xcd\xb4\x54\x1b\x1c\xa9\x0a\xd4\x34\x07\x99\xaa\x8a\x24\xa8\x2b\x8e\x06\x1d\x15\x22\x5a\x6e\x19\xc8\x44\xaa\x83\x24\x88\x14\xcd\x31\x54\xc3\x70\x80\xaa\xe8\x10\xea\xaa\x09\xa1\x74\xe2\x28\xb6\x61\x43\xdd\x81\x26\x50\x15\xc7\xb1\x55\xcb\x30\x34\x5b\xb2\x14\x43\x45\x96\x6d\x59\x08\x20\x05\x3a\x86\x0a\x0d\x47\x32\x14\x43\xa3\xed\x38\x40\x53\x6c\xc7\xd6\x74\x4d\x85\xd2\x89\xa6\x18\xa6\xe6\x58\x0e\xd2\x81\xa1\x98\x2a\x34\x2d\x15\x42\x09\x29\xaa\xae\xaa\x9a\x49\x0e\x56\x8a\x65\x38\x0e\x54\x35\x24\x41\x45\x75\x34\x1b\x41\x64\x00\xa8\x2a\xd0\x36\x2c\x43\xd3\xa4\x13\x55\x81\xba\x65\x42\x1d\x9a\x10\x40\xa4\x98\x10\x1a\x9a\xee\x48\x64\x00\x0e\x42\xa6\x66\x98\x08\x40\x43\x41\x1a\x34\x35\x24\xa9\x0a\x54\x35\xd3\x81\xba\x63\x02\x68\x29\x36\xad\xc6\x26\xb5\x68\x8e\x63\xea\x16\x34\x2d\x80\x54\x45\x57\x0d\x03\x3a\x86\x04\x15\x0d\x21\xdd\xd1\x74\x04\x10\x52\x6c\x9b\x54\xee\x48\x48\xb1\x1c\x04\x91\x89\x74\x80\x0c\x45\xd5\x54\xc3\x31\x91\x74\xa2\x2b\xc8\x84\x96\xe1\xa8\x06\x40\x96\x02\x6d\x55\xd5\x6c\x43\x32\x15\xa4\x69\x96\x01\x21\x40\xb6\xe2\x68\xb6\xa6\x21\x53\xb2\x15\x43\x33\x1d\xdb\x86\x40\x53\x15\x68\x20\xdb\x50\x75\xe9\x04\xaa\x8a\xad\xab\x08\x19\x10\x68\x50\xd1\x4c\x4b\x33\x6d\x24\x41\x8d\x74\x47\x35\x4d\x13\x68\x48\x51\x55\xa8\x1b\xa6\x25\x41\x53\x51\x55\xdb\x76\x74\xa0\x21\xe9\x84\xcc\x34\x42\xba\x65\xf0\x77\x74\xd5\x31\x2d\x09\x11\x52\xab\x10\xd1\x56\x74\x47\xb7\x11\x21\xae\x49\x1a\x51\x1d\xcd\x21\xbd\xb4\x2c\x0d\x39\x8e\x26\xbd\x45\x9a\xa2\x1a\xa6\xa5\xeb\x80\x7c\x05\x6d\xd3\xb0\xa4\x13\x04\x15\x43\x37\x2d\x0d\x9a\x64\xa0\xd0\x56\xa1\xa1\x5b\x12\x74\x14\xd3\xd2\x35\x55\x07\xc8\x54\x54\x4b\x37\x0c\x5b\x97\xa0\xa5\x98\xa6\x49\xdf\x34\x15\xcd\xd1\x4c\x64\x5b\xd2\x09\x34\x14\xd3\xb0\x35\x64\x93\x52\x0b\x22\xcb\x54\x75\x32\x20\x53\x55\x6d\xc3\xa0\xef\xea\x3a\xb2\x74\xdd\x96\x20\x54\x2c\x9d\x50\x1b\x91\xb6\x4c\x68\xea\xc8\x46\x94\xc9\x6c\xc3\xd0\xa0\x66\x01\xa4\x2b\x96\xa3\xaa\x86\x8a\x24\x5b\xd1\x54\x0b\xe9\x96\x69\x90\xee\x92\x2a\x1c\x53\x93\x2c\x05\x3a\x8e\x09\x6d\x4b\x07\x08\x2a\x96\x66\x59\x8e\x06\xa5\x13\x53\x51\x1d\xe8\xd8\x8e\x8d\xc8\xd4\xaa\x1a\xb2\x0d\xa8\x11\x8e\x54\x91\x6e\x5a\x8e\x0d\xa0\xad\xa8\xba\x86\x6c\x68\x97\x4a\x4d\x45\x85\xaa\x4a\x7a\x7c\x52\x2c\xd6\x14\xc7\x32\x49\x3f\xa4\x42\xc5\x10\x2a\x8e\x6d\x69\x1a\x2c\x76\x02\xaa\x0a\xb2\x91\x86\x2c\x5b\x3a\x29\xf4\xd8\x56\x0c\x42\x76\xdd\x44\x52\x61\x74\x96\x82\x34\x55\xb5\x54\xd3\x28\x92\xc2\x54\x74\x55\xb3\x0c\x5d\x25\xcb\x36\xa7\x9b\x41\xaa\xd0\x55\xd5\xd4\xa4\x9c\xc4\x06\x69\x42\x47\xb0\x34\x1b\x86\x62\x22\x53\x77\x6c\xe4\x48\x27\xf9\xc4\x19\x8a\xa3\x1b\x86\xa5\x5b\xba\x54\x98\x63\xc6\x19\xc8\x32\xa5\x9c\x1b\x6c\x05\xa9\xd0\x40\x06\xd2\xa5\xb7\x05\xd6\xd1\xc9\x82\x22\x32\xc4\x91\x4e\x90\xae\x38\x64\x91\x18\x1a\x40\x8a\x6e\x5a\x26\xb2\x0d\x5d\x42\x48\x31\x55\x1b\x3a\x50\x07\x50\x81\x8e\x65\x58\xb6\x23\x35\x48\xa4\x5f\xa5\x6f\x91\xad\x98\xc8\xb1\x4c\x48\xa6\x8e\x8c\x0c\x42\xc2\xd7\xb6\xa2\x59\x86\xa5\xda\xac\xd8\x80\x50\x73\x74\x09\xd9\x0a\xd4\x11\xb2\x09\x0b\x43\x85\x2c\x60\x47\x47\x12\xb2\x14\xc7\x70\xa0\x8e\x34\x3a\xfb\x86\xa3\x6a\x64\x65\x53\x26\x37\x1c\xcd\xa1\x4c\xe1\xe8\x08\x69\xb6\x45\x5e\x36\x0d\x08\x6d\xdd\x20\x0b\x1b\x5a\x86\xa9\x42\x83\x96\xaa\xaa\x69\x98\x3a\x29\xd5\x91\x63\x41\x5e\x85\x61\xa8\x10\xd9\x54\x0a\x98\xb6\x66\x99\xac\x0a\xc3\x32\x89\x34\x21\xa5\x8e\x6e\x41\x43\x63\x15\x5b\x06\x74\x08\x5f\x42\x9b\x48\x14\x8b\xf7\x41\xd7\x74\x0d\x52\x76\x45\x86\x6d\x40\xd6\x61\x1d\x41\xc7\xd2\x48\xa9\xa9\xa9\x3a\x74\x2c\x3a\x38\xc3\x32\x35\x64\x91\x52\xf2\x19\x72\x6c\x4e\x09\x4d\x55\x4d\x5a\xec\x40\x1b\x69\x8e\x23\x51\xaa\x99\xc8\x84\x74\xd9\x3a\x8e\xa1\xea\x06\x24\xa5\xb6\x6d\x20\x9b\x55\x9c\x96\x9e\x20\x47\x21\xcc\x88\x10\x2a\xbd\xec\x28\x86\x69\xd8\x06\x2d\xb4\x0d\x4b\x75\x54\x9d\x14\xda\x10\xea\x0e\x39\x80\x69\x44\xa6\xea\xba\x6d\x4a\x27\x9a\xaa\xa8\x86\x05\x35\x83\x2e\x3b\xcd\x34\x6c\xd5\xb4\x25\x22\xc2\x1c\x03\x1a\x90\x76\x4d\xd5\x90\x09\x0d\xb3\x54\x4a\x88\x66\x20\x1d\x21\x5a\x45\xa1\x58\x27\xef\xea\x0e\x7d\x19\xda\xc8\xe6\xb3\x81\x1c\x93\xcc\x86\xa3\x38\x96\xae\x59\x3a\x9d\x66\xc7\x20\xfb\x11\x1b\x86\xad\xa9\xba\xa9\xdb\x74\x9e\x75\x04\x0d\x44\x87\x61\x22\xc3\x76\x4c\x9d\xf1\x84\x8e\x34\x93\x56\xa1\x11\x51\x66\x53\x9e\xd0\x2d\x03\xea\xba\x43\xab\x80\xba\x05\x1d\x9b\x56\xa1\xd1\x2d\xc6\x66\x64\xd3\x6c\xcb\xa0\x2f\x6b\x86\xaa\x22\x68\x49\x42\xc6\xfc\x55\xfa\x96\x74\x59\x33\xa1\x01\x89\xa0\x70\x10\xb4\x35\x56\xb1\x6d\x23\xd5\xb1\x59\xa9\x85\x74\x64\x9b\xb4\x6f\xba\x6d\x12\x89\x60\x29\xaa\x63\x41\x84\x48\x99\x6e\x1a\x86\x86\x68\x21\xb2\x55\x0d\x19\x6c\x8a\x88\xc4\x70\x68\xa9\x6e\x6a\x06\xb2\x1c\xf2\x2e\x34\x2c\xc3\xd2\xe9\x9e\x65\x3a\xa6\xed\xa8\x16\x2d\x55\x2d\x42\x08\x52\xea\x18\x90\x88\x24\x52\x83\x6a\x98\x06\xb4\x35\x22\xd6\x90\x6a\xa8\x06\xab\x41\xb5\x91\x8e\x2c\x52\xa8\x9b\xb6\xae\x23\x56\xad\x0d\x0d\x5b\x85\xa4\xd4\x52\x2d\xcb\x54\x1d\xde\x07\xd5\xd2\x68\xf2\x06\xc2\xd7\x2a\xab\x40\xd7\x6d\x83\xb0\x14\x24\xbd\x81\xa6\x6e\x51\xf2\x9a\x26\xd9\xb1\x2c\x52\x8a\x1c\xc3\x84\x9c\x08\x96\xa3\x39\x26\x2d\xd5\x35\xc7\x40\x0e\xa4\x53\xac\x21\xd3\x80\x06\x29\x35\xa0\xa9\x69\xba\x46\x4a\x35\x07\x9a\x16\xa1\x4d\x5e\x4a\xb8\xc4\xd2\x6c\xd3\x46\xfc\x65\xdd\x21\x62\x42\x83\x8a\x6a\x41\xa2\x66\x90\x52\xcd\x32\xc9\xbc\x91\x52\x0d\x9a\x3a\x54\x59\xd7\x34\x88\x4c\x5a\x05\x54\x0c\x13\x5a\xba\x41\x47\x67\xdb\x86\x6d\xda\xf4\x65\x4b\x55\xa1\x03\x69\xa9\x61\x68\x84\x27\x58\x29\x34\x74\x68\x33\xa2\x99\x86\x06\x75\x5a\x45\x56\x4c\xd6\xaa\xa5\xeb\x3a\x7d\xd9\x44\xba\xa5\x99\x06\x9b\x0d\x1d\xda\x8e\x46\x4a\x75\x5b\xb5\x58\xa1\x6e\xd9\x36\x34\x58\x27\x34\xcd\xb4\x0d\xdd\xa1\xb3\x6c\x6a\xba\x0e\xe9\xbb\x50\x43\xc8\x36\x39\x43\x18\x06\x32\x2c\x42\x0a\xdb\x41\x8e\x69\xeb\x94\x77\x1c\x53\xb3\x10\x5b\x73\xa6\xa1\x19\xb6\xed\x90\x62\xdb\xb1\x90\x0d\x19\xd9\x54\x64\x1a\x1a\x2d\xb4\xa0\x06\x55\xb6\x10\xab\x2c\xf9\xab\xf4\x2d\x69\x59\x33\xc8\x7e\x42\x14\x24\xcb\xb1\x91\x66\x11\x6d\xc3\x24\x1a\x97\x63\xa9\x26\x29\x36\x34\xc3\x31\x2c\x93\x6c\x27\x8e\x6a\xa8\x64\xd1\x41\x2a\xcd\x35\x68\x39\x12\x55\xa0\x90\xa5\x59\x88\xea\x58\x2a\x51\xa2\x48\x15\xba\x62\x98\xaa\xe6\x38\x06\xad\x99\x10\x53\x77\xc8\xfe\xee\x90\xcd\x9b\x28\x5e\x9a\xa2\x9a\xba\x6d\x91\x7d\x4a\x53\x74\xc3\x86\x90\x16\x1a\xba\x63\x38\x74\x4f\x43\x8a\x63\x69\x9a\x66\x6a\x00\xea\x8a\x4a\xd4\x42\x52\x03\x52\x4c\x5d\x43\x16\x2b\x35\x0d\xe8\x68\x44\x19\x43\x8a\xa1\x3a\xba\x43\x4a\x0d\x45\x43\x64\xe5\xdb\xb4\x0a\xb2\x47\x58\x96\x4d\x8a\x1d\x87\xac\x2a\xfa\xb2\x4e\xa6\xcb\x32\x08\x31\x4c\x47\xd3\x75\xa6\xc9\x5a\xaa\x69\x19\x36\x9d\x51\x0d\x99\x36\xd1\x37\x69\x2f\x4c\x07\xd2\x59\x26\x1b\x01\xa2\x83\xd0\xa1\xa6\xd1\x99\xb3\x15\x43\x85\xba\xa5\x51\xd5\xc5\xb1\x35\x4d\xb7\x18\x4f\x21\xb2\xa7\x33\x32\x18\x1a\xb2\x2c\xb6\x0c\x4c\x0d\xea\x90\x92\x0c\x69\xba\x4a\x66\x83\xac\x75\x53\x47\x2a\x64\xe4\x25\xdb\x95\x5d\x2c\x25\x73\x61\x23\x1b\x1a\x6a\xf9\x65\x4b\xb1\x54\xc7\x42\x88\x71\xb6\x0a\xc9\x90\x25\x68\x2b\x9a\xe1\x58\x96\x66\xd2\xc5\x6c\x40\x64\x10\xc1\x0a\x1d\x45\x55\x1d\xcb\xd4\x28\x07\xda\x2a\xd1\x4f\x35\x89\xae\x13\xdd\xd1\x69\x9c\x75\xc5\x81\x8e\xe9\x10\x45\xbf\x54\xaa\xaa\xaa\x8e\x08\xbf\x17\x8b\x0d\x45\x83\xba\xa3\x1b\xf4\x65\x68\x41\xd3\x44\x6c\x32\x74\xdd\x86\x96\x45\x7a\x61\x39\xaa\x65\x12\x8e\xd0\x89\x16\x68\x23\x83\xcc\xa7\xad\xe8\xaa\xe3\x68\x9a\x4e\xa7\x59\xd5\x6d\x4d\x33\xc9\x40\x6c\xd3\x36\x21\xb2\x19\x47\xa8\x86\x65\x5b\x92\x98\x2f\x89\x2e\x40\xd8\x5f\x33\x6c\x68\x51\xee\xd6\x0d\x22\x08\xa5\x13\xa2\x42\x1a\x3a\x32\xc9\xc0\x4d\xc5\xd2\x4d\x0d\x92\xad\xca\x54\x74\x47\xb5\x2d\x9b\x95\x22\x55\x57\x89\xd4\x26\x6a\x37\x91\x1f\xb4\x0a\xcb\x52\x1d\xe4\x10\xd1\x64\x28\x8e\x8d\x2c\x08\xe9\x1a\xb3\x11\xd4\x0d\x5b\x42\x86\x62\x11\x1d\xdf\xa6\xef\x3a\xba\x89\x20\x91\x8e\x86\x62\x98\x26\xd4\x49\x0d\x96\x02\x11\x21\x8b\x4d\x6b\xd0\x6c\x4d\x55\x75\xca\x2d\x1a\x44\x44\x8d\x22\x2f\x23\xc3\x26\x4a\x10\x29\x35\x74\xc3\xb1\xc9\x06\x66\x28\x88\x88\x04\xc7\x62\x53\xa2\xaa\x9a\xae\xd3\x2a\x20\xd9\x45\x21\x9d\x40\xd5\xd0\xa1\x4e\xd4\x09\xa2\x60\x6b\x50\x85\x94\xb7\x34\x68\xe9\x16\xd2\x68\x15\x36\x42\x86\x6e\x33\x79\x65\xda\x06\x4c\x7b\x01\x35\x9d\x88\x1b\x32\x11\x26\x34\x1d\xd6\x65\xdd\xa1\xeb\x8e\x30\x83\x6a\x69\x36\xad\xc1\x32\x75\x4a\x34\xb2\xeb\x91\x7d\x53\xe7\x84\x50\x55\x0b\x52\xb9\x8b\x88\x16\x6a\x1b\x8c\x6a\x1a\x22\x5b\x2b\xe1\x05\xd3\xd0\x91\x81\x18\x85\x91\x66\x20\x58\x2c\x25\xd3\x61\x6b\x8e\x85\x0c\xb3\xf4\xb2\x45\xf7\x6f\xc8\x84\x3f\x42\x96\xae\x3a\xa4\x50\x87\xb4\x09\xba\xa5\xd8\x90\xf0\x0d\x55\x8b\x4c\x53\x87\x9a\x4d\xd7\x98\xa5\x99\x84\x9a\xe4\x65\x5b\x45\xd0\x60\x82\x5b\x57\x91\xe3\x18\x56\xa5\x54\x35\x0c\xc3\x54\x99\x6a\x96\x15\x5b\x84\x10\xf4\xf0\x47\xf4\x2d\x44\xfe\xb2\xd9\x74\x68\xc8\x56\x69\xd7\xc8\x79\x55\x63\xd3\xa1\x21\xcb\x51\x4d\xd6\x0b\x5d\xb3\x0c\xc4\x4e\x84\x10\x22\xdd\x52\x6d\xf2\x32\xd2\x90\xed\x38\x9c\x29\x74\x13\x9a\xa6\x24\xe6\xcc\x0a\xcb\x12\x49\xe8\x98\xa6\x59\x61\x59\x22\xd3\x54\x03\x6a\x65\x96\x25\x27\x56\xdd\x54\xf5\x32\xcb\x22\xc5\x34\x0d\xa8\xa1\x0a\xcb\x22\xc5\x82\x84\x29\x4b\x2c\x8b\x88\x52\xae\x93\x43\x76\x91\x65\x35\x45\x45\x9a\x09\xed\x0a\xcb\x6a\x64\x77\xa3\xa7\xb0\x22\xcb\x92\x23\x94\x4a\x94\xe1\x12\xcb\x6a\x64\x73\x63\x7b\x45\x91\x65\x89\x74\xb7\x35\x03\x96\x59\x56\x57\x10\x84\xa6\x65\x94\x59\x56\x27\xf2\x49\x35\xf4\x0a\xcb\xea\x8a\xe9\xa8\x9a\x85\x4a\x2c\xab\x2b\xb6\x43\x84\x4f\x89\x65\xc9\xf1\xda\xb6\x0d\x58\x61\x59\xd2\x30\xb2\xa8\x92\x58\x60\x59\x32\x22\xc7\x24\xc7\xc6\x22\xcb\xe6\xa5\x25\x96\x2d\xbc\x5c\x60\x59\x43\x81\x08\x9a\x4c\x39\xcf\x58\x56\x57\x6c\xcb\x70\x2c\xb5\xc2\xb2\x3a\xd1\xd9\xc9\x69\xb2\xc4\x9c\xba\x42\x8e\x0d\x9a\xa5\x95\x4a\x09\xd1\x88\x70\xae\xb0\x2c\x21\xb1\x6a\x69\x56\x99\x65\x35\xc2\x90\xba\xad\x95\x59\x56\x53\x10\x42\xaa\x6e\xd9\x65\x96\xd5\x14\x55\x35\x4d\x4b\x2b\xb3\x2c\x52\x6c\xcd\xb6\xa1\x53\x66\xd9\x9c\x33\xcb\x0a\x2c\x52\x0c\xa8\x91\x83\x68\x59\x83\x45\x8a\x61\x92\x4d\xd4\x29\x6a\xb0\x44\x97\x77\xa0\xe3\x58\x25\x15\x16\x29\xb6\x85\x34\x32\x79\x25\x1d\x56\xa3\x2b\x55\xd7\xb5\x92\x0e\xab\x11\x81\x53\x55\x61\x89\x52\xa0\xa9\x88\xd7\x90\xe9\xb0\x9a\x62\x39\x16\x39\xd6\x16\x75\x58\x9d\xec\x21\xba\xe1\xa0\x92\x0e\x4b\x28\xef\x58\x96\xa5\x95\x75\x58\x5d\x31\x34\x07\x1a\xa6\x55\x52\x62\x75\x72\xc4\x36\xc9\x84\x14\x95\x58\x5d\xb1\x89\xb2\x92\x12\x22\xd5\x62\x09\x17\x42\x43\x37\xf4\x92\x16\x6b\x28\x50\xb5\x35\x43\xb5\x4a\x5a\x6c\x5e\x5a\xd2\x62\x0d\x3a\x52\x13\xea\x25\x2d\x56\x57\x1c\xb2\x2f\x1a\x7a\x49\x8b\xd5\x15\x8b\x4c\x24\xd1\x8f\x8a\x5a\xac\xae\xe8\x96\x65\xdb\xba\x5e\xd2\x62\x75\x05\xea\x86\xee\x40\xbd\xa4\xc5\x12\xb2\xd9\x86\x6e\x59\x65\x2d\x56\x23\xb4\x20\xe2\xa6\xa4\xc5\x92\xf9\x30\x91\x69\x15\x95\x58\x4d\x51\x2d\xd5\xd6\xa0\x59\x56\x62\x91\x62\x1b\x86\x6e\x58\x56\x49\x89\x25\x3c\x41\xe4\x1c\x2c\x29\xb1\x48\x31\x6c\x5b\xa7\x96\xad\xa2\x12\x8b\x14\x9d\xbc\x62\x69\x25\x2d\x96\xe8\x9a\x1a\x39\x9d\x4a\x42\xbe\x64\x16\x02\x4b\x35\x0c\x84\x0c\x60\x2b\x50\x35\x2c\xdd\xb6\x1d\x7a\x30\xd6\x0d\xa8\x9b\x8e\x49\x8a\x0d\x13\x59\x96\x6a\x90\x53\x1b\x82\xb6\xaa\x1b\xd4\x82\x61\x43\x55\x83\x36\x3d\x2e\xab\x9a\x6e\xeb\xb4\x0a\xdd\xd4\x91\xa6\xdb\x06\x5b\x91\x06\xb4\x54\xd5\x01\xb6\x62\xea\xe4\xcc\xc9\xc4\x82\x85\x4c\x47\x37\x21\x20\xba\x9e\x6a\xab\xaa\xc1\xcf\xf7\xa6\x0e\x2d\x07\x90\xc3\x86\x6e\x1b\x9a\xce\x56\x24\x39\x7e\xda\x8e\x0d\xc8\x91\xd3\x76\x4c\xcb\xb2\xb9\x95\x81\xcc\x04\x70\x14\xd3\x20\x02\x89\x28\x0b\x96\x62\x19\xaa\x63\x40\x13\x38\x8a\x4d\xf8\x46\xb5\x11\xef\x85\x0a\x55\xb2\x42\x08\x09\x54\xc7\xe6\x5d\x86\x96\x43\x35\x56\x55\xd1\x34\x83\xe9\x1b\x36\x91\x7a\x9a\x86\x68\xa9\x6e\x39\xba\x69\x19\x8c\x16\x44\xdb\xb6\x11\x29\x36\x91\xa6\x6b\xb4\x06\x4b\x45\x2a\x51\xdf\x54\xc2\x36\x48\x27\x8b\xc9\x56\x1c\x13\xaa\x3a\x99\x90\xbc\x94\x30\xbd\xa6\xda\x3a\xaa\xbc\x4c\x56\x3f\x34\xa1\x46\x2d\xaf\x86\x89\x10\x39\x83\x50\x49\x61\x21\xc3\xa0\xef\x6a\xd0\x34\x6c\x93\x1d\xdd\x20\x91\x42\x16\x24\xc5\xaa\xa5\x3a\xba\x6e\x90\x49\x45\x96\x6a\x1b\x90\x90\xcd\xd2\x2c\x9b\x9c\xbf\xcb\xa5\x9a\xa3\xea\x3a\xe4\x47\x9e\xbc\x18\x6a\x50\x33\x34\x87\x1b\x14\x74\x55\x37\xc9\x44\xdb\x96\xad\x3a\x0e\xa4\x96\x03\xd5\x50\xa1\x46\xed\x6a\xa6\x89\x2c\xa6\x9b\x38\x0a\xd9\xdc\x91\x49\xa6\x5f\xd7\x2d\x64\x3b\xac\xc7\x96\x0a\x4d\xc3\x22\xf3\x8c\x2c\x47\xd7\x0c\x93\x9f\xc4\x11\xb2\x6c\xf2\x2e\xb4\x55\x64\x23\x43\x67\x22\x04\x21\xc7\x54\x49\xb1\x4a\x0e\x2e\x8e\x6e\x52\xba\x91\x83\x12\xe5\x2b\xca\x8d\x2a\x91\xf4\x42\xd6\xfc\xb5\x68\xf4\x3f\x8a\xd6\x69\x3e\xe5\xbf\x70\x14\xe6\x4e\x3e\x35\xa8\xfd\xd8\x00\xfb\xf4\xa2\xe6\xb1\xaf\x8c\x48\xbf\x3d\x37\x71\x9f\x94\xd3\xfe\x2f\xe7\xbf\xfc\xf3\xdf\xff\x7e\x35\xef\xe0\xb4\x2f\x82\xca\x27\xee\xf9\x7a\xe9\x46\x6d\xbe\xf2\xe9\xb0\x9b\xfd\xe4\xd5\x3e\xe1\xcd\x3b\xf8\xa3\xf4\xf3\x94\xaf\x7a\xa3\xf0\x3b\x24\x7e\xe5\x44\x53\x69\xb7\xa2\xb5\xcb\xef\xff\xc2\xa2\x85\xf7\x45\xd3\x74\x1c\x59\x14\xde\x0e\x1e\x56\x33\x5c\x59\xe8\x7c\xd7\x00\x87\x2a\xc5\x2a\x50\xcb\x3e\x4c\xdd\xbd\x73\xb6\x91\xb4\x67\x5f\xcb\xbd\x82\xb5\x5e\x75\xeb\x41\x7f\xc0\x53\xbf\x88\xe3\xa9\x7f\x49\x48\x57\xf6\x91\x9b\x0c\xb8\x16\x17\xc8\x90\xa7\xe1\x3e\x12\x84\x1e\x3e\xf2\x3d\x1c\x24\x7e\x72\xf7\x3c\x95\x31\x4f\x45\xca\xfd\xa0\xbe\xfa\xfb\xfb\x9f\xbf\x6d\x88\x03\x9e\xae\xaf\x4e\xfe\x1d\x69\xa8\x89\xef\xde\xfd\xf0\xf2\xe4\xf5\xbb\xdf\x5f\x7f\xf7\xf2\x9b\xb7\xaf\x5f\x0d\xf4\xf3\x20\x2d\x53\xa8\x9b\xf4\xdb\x6f\xe9\x17\xbf\xfd\x26\x4b\xf7\x94\x27\x09\x51\xc9\x03\xb9\xc4\xd5\x8c\xdb\xd8\x3b\xbf\xfd\x96\x48\xd2\x2a\x5c\xfa\xf3\x3b\x69\x46\x5e\xbd\x8d\xfc\x04\xff\xf6\x1b\xe3\xe9\xcd\x6f\xbf\x05\xe4\xff\xb3\x56\x7e\x5f\x45\xf8\xc2\x7f\x2f\xd1\x17\xd2\x56\x62\xe6\x26\x2d\x78\x56\xab\x3d\xc2\xae\x57\xad\xbc\xab\x1f\x4a\xa7\xc1\x34\x0c\x85\xb4\xd3\xda\x4d\x71\x27\x9b\xba\xb7\xd5\x6d\x85\xc2\x0a\x07\xf9\xad\xb4\xad\x83\xc7\x56\x40\x48\xdf\x9e\x94\xf2\x71\xfd\xab\x76\xf3\x2f\x7f\xbd\xe8\x84\x18\x7c\x91\xca\xcf\x17\x4b\xbe\xbf\x0b\xf4\x91\x6d\xc0\x3d\x3a\x3d\x0d\x8a\x08\x75\xf3\x7c\x34\xc0\x9e\x54\x47\x1b\x18\x40\xcd\xb1\x0c\x3c\x07\xfe\xd9\x20\x7c\x16\x0b\xf8\x30\x0e\x46\x2b\x73\x9d\x3c\xad\x64\x5c\x23\x63\x4e\xc2\xd5\x51\x9c\xb8\x59\x3e\xb6\x1e\x10\xb6\x9a\xa0\x9d\x47\x7e\xe2\xcf\xdd\xa5\x2c\x22\xc2\xae\x41\x25\x5e\x26\xd2\x12\xbb\x71\x22\x85\x01\x96\x2e\x59\x3c\x0c\x0a\xec\x90\xc2\x80\x39\xa4\x53\x79\xe5\xc7\xd2\x85\xeb\x2f\xfd\x60\xd1\xd9\xe5\xae\x61\x34\xb7\x6e\x14\xf8\xc1\xe2\x31\x07\x73\xe9\xc6\x92\x2b\xf1\x8e\xec\x3a\x9e\x95\x1b\xc7\x7b\x1b\xcf\x72\x59\x1a\x46\x2c\xb9\x11\x96\x78\x8b\x7d\x7d\x1f\xd3\xff\x98\x0f\x24\xa9\x28\x08\xcb\xb5\x2b\x5b\x70\xf7\x3d\x13\xd3\x54\x22\x7f\x74\x4a\xad\xd3\x07\x7b\x57\x8f\x28\x84\x5a\x02\x0a\x89\x23\x09\x35\x23\x6b\xf3\x90\x42\x2d\x9d\x79\x54\xac\xab\xd0\xe3\x16\x9c\xca\x2f\x3d\x2f\xa2\x1e\xb7\x79\x76\xb8\xbc\x68\x07\xec\x57\x76\xd4\x60\xd8\x4e\x9c\x25\x81\x49\x03\x7e\xe5\x25\xfd\x61\xa3\x5b\xf1\xce\xe5\xe0\x3a\x64\x9c\xdf\xe2\xf8\x92\x43\xdb\xde\x04\x71\xe2\x06\x73\x9e\xa1\x88\xc3\xbc\x4a\xa7\xb1\x4a\x3d\x7a\x8f\x7a\x40\x0a\xa0\xa3\xdb\xa3\x7c\xeb\x27\x97\xe1\x9a\xec\xae\xeb\x80\x92\x8d\xe5\xbf\xdc\xc2\x29\xbb\x63\x8b\x9b\x28\x95\xcd\x6d\xdf\x18\x94\xa3\x82\x90\x0b\x4c\x57\xfc\xbb\x03\x1c\xb9\xc8\x9b\xbd\xa5\xc1\xbe\xcf\xaa\xa9\xe3\x76\x31\xb8\xc6\x45\x18\x5d\xbb\xc9\x51\xb0\x26\x2a\x9d\x0c\xe4\xd5\x72\x1d\xb9\x4b\xff\x2f\x3c\x50\x4d\xde\xed\x0c\x3b\xbe\x66\x5c\x4d\xa5\xf5\xf8\xfa\xb1\xff\xfd\x7f\xff\xfb\x4f\xd5\xfb\x9b\x58\x3f\xfe\xfd\x77\x37\x5a\xa8\x32\x60\x7f\x40\x19\xf0\xdc\xfa\x34\x80\x46\x3a\x42\x19\xe4\x69\x33\x41\x9a\x2d\x13\xf0\x2c\xb3\x34\x3e\x63\xaf\xcf\x12\x86\xb2\xe9\xfe\xc5\x2a\x0a\x57\xc5\x0f\xae\x70\x9e\xf3\x1f\xc8\x2f\x68\xea\x5e\x20\xbf\xe0\x69\xe0\x59\xf4\xcc\xf4\xdd\x17\xd9\x5f\x2d\xc1\x3a\xf3\x59\x13\x2b\xfb\x85\xe7\x67\x34\x12\x25\x32\xb8\xea\x9f\xb7\x49\x53\xba\x7d\x43\x48\x1c\xbf\x09\x2e\xc2\x74\x7d\xa3\x42\x42\x6b\xa8\xe7\x5b\x47\x86\x34\xc9\xfa\x97\x55\xc5\x33\x24\x9f\x42\x40\xff\x8f\x85\xe8\xea\x02\x23\x69\x4c\xb9\xcc\xb5\xaa\x07\xcd\x8f\xdf\x98\x31\xb8\x4b\xaa\x6d\x42\xf5\x62\x82\x43\xae\x8a\xd8\xa0\x40\x38\x9a\xb9\xbc\xb0\x51\x95\xfa\x24\xc2\x19\xc3\x52\x3e\x4f\x5a\xf9\xf6\x8a\x81\xf0\x6b\xde\xcd\x0e\xdd\xe2\xb1\x57\xcf\x7a\x65\x1a\xef\x32\xfc\x7a\xb6\xde\xd1\x08\x50\xa9\xba\x37\x09\x3a\x7d\x7f\x1e\xb9\x81\xd7\x6d\x64\x29\x0d\xfb\x01\xc2\xe5\x3c\x1d\x3d\xa9\xfe\x47\x7c\x1d\xde\xe0\xbf\xb3\x45\x46\xc9\x05\x4d\x20\xbb\x91\xef\x1e\xb1\xfc\xaa\xc2\xb4\xaf\x6b\x5f\x89\xe8\x87\x72\x25\x88\x5e\x35\x1e\x86\x73\x46\xf4\x24\x16\x34\x4c\x2d\xf6\x99\xbc\x70\x06\x4e\x07\x5a\xdc\x1b\x14\x9e\x06\xa5\x87\x2b\x06\xce\xf6\xb8\x94\xd5\x80\x0a\xb4\xcf\x9d\xad\xec\xfd\x35\x07\x87\xb4\xb0\x1d\x31\x0a\xc7\x4a\x32\xcf\x84\xea\xc3\x4a\xbc\x1a\xdb\xb1\x74\xf3\xac\x27\x59\x32\xd9\xe2\xde\x94\x6d\x61\xab\xa5\x3b\xc7\x97\xe1\x92\x9f\x01\x9a\x12\xc9\x17\x20\xc4\xe4\xa7\x7e\x26\x4e\x55\xcc\x56\x76\x85\x06\xfd\xf9\xaf\x34\x0a\x71\xd2\x7c\x26\xa2\x56\x4c\x79\xf1\x71\xbc\xaf\x0c\xfa\x88\x26\xb5\x27\x8d\xf1\xb6\xee\x68\x5c\xaf\x4a\x4a\x7d\x72\x98\x18\x92\x51\xbf\xd3\x51\x73\x78\x4e\xfd\xce\x97\x63\xd5\x03\x5b\xe3\xa4\x66\x44\x68\xbe\x34\x6b\x05\xb5\xf7\xca\x45\xbd\xdf\x9c\xec\x50\x94\x94\x1d\xf6\xcf\xca\xce\x8f\xf5\xa8\x1e\xd4\xa7\x12\xe1\x47\xcc\x4b\x59\xcd\xa3\xe5\xda\xe7\xab\x67\x4b\x16\x69\xfa\x8e\x95\xaf\x63\xa7\x54\xd6\xd4\xdb\xbe\xe9\xa4\x45\xac\x26\x62\xb6\x6d\x1b\x7d\x35\x32\xb2\x38\x62\x8b\x98\x1d\x87\xec\x1a\x96\x38\x02\x80\x41\xc8\x2a\x8c\xaa\xdb\x89\xb1\x05\x0d\x89\x22\x62\x76\xba\x6d\xaf\xd5\xd4\x94\xab\xba\xe7\x06\xc6\x0f\x03\x8f\xbb\x81\xd9\x2d\x92\x3f\x35\xd4\x76\x13\xf7\x67\x34\x84\xd0\xc5\x36\x09\x9f\x6a\x80\x42\xc9\x3e\x68\x07\xdb\x93\x48\x1f\xe4\xed\x20\x58\x54\xd5\x93\x59\x77\xdf\x87\x8e\x9c\xbe\x7f\x01\xee\x08\xe4\xb7\xb3\x2f\xf1\x9d\x9f\x69\xf2\xbb\x83\xfc\x56\x24\xbf\xed\x69\x10\x4b\x43\x22\x9f\x73\x39\x0e\xf9\x89\x41\x65\x99\x23\x98\x08\x3e\xe2\xc7\x17\x94\x9d\xd1\x5b\xa4\x3c\x12\x48\x79\x24\xe2\xfe\xdd\xa5\x7b\x7f\xc9\xce\x06\x31\xca\x51\x12\x89\x0e\x6e\x7d\x95\x10\x81\x64\x45\xe2\xcd\x40\x25\x73\x33\xf4\xca\xa4\xfa\x92\xd3\x41\xc4\x8f\x75\x44\x61\x56\x9e\xbe\xa1\x42\x46\x11\xec\x6d\x2a\x7d\x98\xdd\xbb\x8e\xae\xc5\x93\x75\x53\x13\xed\xcc\x6c\xfc\x11\x09\x78\xb1\x55\xab\x2d\xb8\x1d\xbd\x0f\x3b\x76\xe3\xb9\xd8\xc6\x40\x48\xae\xb8\xcb\xd5\xa5\xab\x90\x77\xca\xab\x07\xd4\x2b\xf2\x70\x87\x9a\xe8\x4b\x6d\x55\xb1\xab\xd6\x2d\xbd\x62\x32\x69\x6b\xb7\x78\x5d\x5b\x3a\xc6\x2b\x13\xf4\x6c\x2c\x9d\xbb\x9c\xdf\x81\xc5\x14\xcc\x59\xaf\x6e\x31\xeb\x14\x7e\xef\xe3\xd9\x8a\x45\x47\xa9\xfe\x27\xa9\x86\x1d\xd0\xc8\x0e\x32\xcc\x5c\x56\xf3\xb4\x68\x53\x6c\x86\x6d\x61\x76\x16\xec\xae\x65\x6f\x15\x32\x32\xac\x3f\x68\x60\x82\x6d\x3d\x6b\x38\x8d\x37\x2c\x8e\x8e\x07\xeb\x01\xc3\x2b\xaf\x2d\x28\x78\xb2\xb7\x01\x96\x16\x6c\x67\xd3\x41\x2f\x1b\x43\x7f\x06\xa3\xf7\x32\x7c\xe9\xec\x9f\xc7\xea\x02\x1c\x56\x8b\xc7\x27\x7f\x7d\x4b\xd8\x03\x7b\x09\x76\x14\x58\x2b\xdf\xd7\xd8\xf6\xc0\x59\x82\x34\x27\x40\x98\x4c\x67\x90\x7e\x58\xb7\x13\x08\xa2\x23\xf6\x74\xf5\x19\x5e\x98\xde\xc7\xb7\xde\xc2\x27\x69\xf4\x41\x96\x6b\x2e\x8b\x6d\x98\x06\x33\xbc\x88\xc2\xeb\x23\x1c\x24\x91\xcf\x3d\x37\xc8\x5b\x47\x7e\x4c\x17\x97\x77\xc4\x36\x2c\x3f\xb8\x09\x59\xe8\xb4\xf4\x4a\x7f\x1e\x06\x89\xeb\xd3\x80\x5e\xf3\x30\x98\xbb\x49\x63\x98\xc4\x65\x78\x8b\xa3\xb9\x1b\x13\xde\xbb\x74\xe3\xcb\xa1\x37\xfd\xd5\xab\xf5\x47\xbf\xef\xa7\xde\xd0\x0d\xbe\xb0\x40\x7e\xb1\x58\xfa\xd7\xd7\x38\xca\xbf\x2c\x3b\x00\x80\x64\x3c\x17\x80\xa0\xdd\x05\xe0\xd7\x64\xa1\x5f\xfe\x71\xf9\xae\xd5\x45\xf6\x25\x0f\xe3\x9b\xfe\x25\x67\xe1\x49\xdd\xf2\x4f\x76\x1a\xe0\xb1\x0e\xb3\x6b\x75\x90\xbb\xc1\x0e\xf0\xa8\xa5\xa4\xe4\x3e\xb5\x3c\xd5\x63\xd1\xb5\x16\xc8\x2f\x96\x7e\x70\x95\xa6\x82\x64\x11\x9d\x41\xd5\x7f\x8b\x1f\x33\x54\x70\x2a\xfb\xf1\xdb\xec\xfd\x01\xe7\xe8\x0e\xca\xda\xd0\x4c\x1a\x45\x27\xac\x57\x94\x86\xde\xcb\x64\xb7\x74\x1a\xe2\xd0\xb7\xb4\x72\x3f\x58\x54\x5d\xf3\xb2\x24\x1b\x08\xc8\x8a\xa2\x74\x8d\x48\xdd\x25\x2e\xbd\x20\x4d\x61\xea\x54\x48\x27\x38\x56\xb0\xe7\x27\x72\xbd\x2f\x81\x38\x41\xe1\xa0\x2c\x90\xe3\x80\xa4\x06\x3b\x16\x96\xe7\x37\x9e\x47\xfe\x30\xe5\x7b\xeb\x05\xb0\xe0\xfa\x97\xa6\x5f\x2c\x34\xd9\x9e\x20\x74\x0b\x3e\x0a\x34\x8d\xa2\xdb\x05\x71\xb7\x39\x2b\xd2\xac\x70\x9e\xe4\xf0\x98\x97\x27\x6f\x3b\x60\x63\xb6\xfb\x00\x70\x31\xf3\x3c\x09\xaf\x70\xf0\x3c\x5a\x2f\x71\x8c\x13\x2a\xb8\xb3\x89\x2f\x65\xc7\x3b\xab\x3a\xdf\x3d\x0c\xcf\xf5\x0c\xa4\x5e\xe5\xb9\xa2\x1d\xa2\x49\xbe\x0c\x76\xa1\x40\x5c\x8d\x1c\xe6\xc9\xc0\xad\x4e\x99\x2a\x7a\x19\xe1\x8b\xa2\x7e\xdf\x4b\x4c\xec\xe1\x6e\x97\x1f\x38\x76\xa1\x3b\x75\x9f\xa6\x68\x23\x89\xe7\x1d\xab\x38\x8c\xa0\xd4\x93\x6b\xb0\x47\xfb\x6b\xcf\x4f\x06\xfa\xad\xff\xe2\xe3\xdb\x1e\xc9\x29\x07\x5e\xa3\x35\xa4\x25\xa8\x91\x89\x67\x25\xe8\x49\xa7\x2e\x49\x29\x53\x36\xe3\xea\x85\xe7\x06\x0b\x1c\x85\xf9\x45\x55\x1a\x64\xbf\xe6\x8e\x56\x0e\xad\x5f\x44\x7e\x3e\x36\xbb\x15\xa7\x91\x2d\xe8\xbd\x5d\xe6\x17\xf3\x31\x0c\x75\x73\xb0\x79\x84\xf9\x6c\x0e\xd2\xdb\x99\x81\x8e\x50\x9d\x3b\x3f\x0c\xb0\x9d\xfe\x97\x46\xe2\xf7\xea\x14\xee\x45\xe5\x8e\x9d\x3d\x0f\xbd\xbb\xa1\x5d\x6d\x57\xfb\x8a\xff\x35\xe6\xcd\xe0\x0b\x90\xa1\x7a\x52\x5c\xe7\xd7\x4d\x6d\x89\x13\x5b\x8e\x4f\x94\x34\x63\xdf\x0e\x74\x29\x5b\x92\x3a\x72\xdb\xab\x2c\xcb\x6a\x8f\xd1\x74\x4d\xa6\xda\x6b\x85\x6e\x37\x37\x74\xa8\xb0\x4b\x46\x1a\xb1\xcd\x62\xb8\xba\xb3\x2d\x25\x43\x87\xb4\x9e\x99\x61\x22\x07\x0b\xcc\xdd\xcc\xdc\xc0\xd0\xb4\x41\x38\x04\xef\x5e\x3b\xa8\x67\x96\x83\xf9\xd2\x8d\x63\x29\x92\x18\x82\x3d\x96\x92\xf4\x78\x7d\x9f\x1f\x20\x27\x78\x7a\x1f\xe1\x64\x1d\x05\x5f\x62\x25\xd3\xa8\x36\x9b\xfc\x28\x1e\x81\x36\xdb\x43\x00\xa2\x69\x4f\x93\xc2\x93\xcc\x9c\xb0\x30\x3d\xfd\x9b\x9f\x9d\x48\x6c\x44\xa0\xf9\x00\xa8\x71\xb1\x9c\x41\x01\xc8\x2f\xd8\xa3\x0e\xc8\xf8\xf4\xce\x46\x3b\x03\xf2\x3c\xc2\x6e\x5b\x2a\x85\x6d\xfe\x2f\xa2\x7a\xd1\x28\x19\x15\xfe\x1d\xae\xa3\x5c\x68\x52\x3c\xe4\x39\xc6\x81\xe4\x7a\xde\x28\x39\x15\x5c\xcf\x23\xa7\xf6\xbb\x52\x33\xbd\x12\x2a\x74\x40\x5f\x16\x49\xbd\x5e\x79\x1f\x19\xa9\x63\xf7\x66\x14\x52\xc7\xee\xcd\xc3\x92\x7a\x94\x04\x21\x0f\x43\xe3\x6b\x37\xba\xc2\x9e\x74\x11\x46\x4c\x5b\x68\xc9\xea\xd1\x83\xe2\x5e\x6a\x94\xda\x81\xe6\x3d\x71\xb4\x65\xb3\x8c\x0e\xb8\xac\x8a\x29\xe2\x26\x8a\x13\x26\x3e\x7b\xfa\x29\x15\x0e\xd9\xcc\x52\x34\x30\x57\xea\x79\x0e\x02\xa5\x6a\x56\xe5\xc6\x64\x52\xbe\x94\x49\x9b\x2c\x38\xdf\x09\x20\xac\xf9\x53\xf9\x58\xaa\x5f\xdb\x57\x7a\x0d\xe4\x69\xcd\xfd\xac\x6b\x26\xa6\xed\x9b\x7a\x76\x35\xc0\x36\xf1\x3f\xf9\x05\xc3\xe0\x3d\xfc\x09\x26\x71\xe1\x3d\x7b\x7a\xc0\xbf\xbf\xfe\xf1\xfc\x9d\xef\x5f\x7f\xff\x64\x80\x7f\x8f\x0a\xe3\x63\x37\x0c\x75\x20\x9f\xda\x15\xc8\x57\xf4\xd2\x6e\x07\xf2\x95\xf0\x7b\x9f\x34\x7a\x0f\x36\xc0\xd7\x98\x50\xaf\x03\xd8\xb4\xdd\xf0\x7b\xb0\xd1\xe7\xb0\xb9\x62\x20\xfc\xba\xec\xf9\xd8\xd6\xad\x76\xfc\xde\x4e\x04\x18\x82\xe0\xeb\x48\x82\x46\x04\x5e\x47\x22\x74\xfa\xbe\x84\xe0\x6b\x1f\xd9\xce\x08\x3e\x6d\x6f\x08\xbe\x6c\x63\xd5\x73\x04\x1f\x34\x1e\x19\xc1\xa7\xf7\x47\xf0\xd1\x3e\xef\x11\xc1\xa7\x93\x16\x1e\x0e\x00\xf1\x24\x10\x7c\xf6\xc8\x00\x3e\x68\x97\x15\x31\xe7\x21\x00\x7c\x6d\x28\x8e\x07\xc2\xef\x41\xeb\x80\xdf\xfb\x44\xf1\x7b\xa3\xc2\x3f\x04\xb9\xd9\xab\x89\xda\x85\x9c\xb4\x37\xf4\x1e\xec\x80\xde\x6b\xc1\x75\x88\x7b\xbb\x77\xf4\x5e\xc3\x26\x5f\x85\xac\xd7\x80\x1a\x23\xa3\xf7\x7a\x01\x36\x76\xb8\x76\xac\x83\x36\x06\x82\xf7\x0e\xc8\x8e\xa1\xf2\xdd\xfc\x6c\x91\x1d\xee\xf5\x48\xc8\x0e\x52\xd1\x50\x64\xc7\xde\xf1\x13\x74\x82\x0f\xf8\x89\x87\xc3\x4f\x3c\x9c\x67\x7b\x8d\x81\x61\xb5\xb8\x61\xfa\xb7\xf5\xea\xd1\x3d\xdb\xeb\x2b\x0a\xd6\xca\xf7\x35\xb6\x83\x67\xfb\x47\xe6\xc4\x5e\xf4\x52\xdf\xe2\xd0\x3e\xd4\x89\x5d\x6c\x28\x7e\x6c\xfb\x35\x8b\x7a\xfd\xa4\x42\x3a\xff\xfc\x6a\x61\xbe\xd1\xfe\xf7\x7c\x2f\xfe\xea\x3b\xb8\xa9\x33\x52\x35\x87\x7e\xb6\x9e\x94\x8f\x79\x71\x23\xaf\xdc\x21\x65\x2a\x88\xcc\x87\x74\xed\x06\xee\x82\x56\x38\xcc\xcf\xb6\x66\xee\xa2\x64\x13\x55\xde\xd9\x12\x86\x80\xfc\xd3\xdd\x4a\x94\x06\xa3\xf2\x49\xb3\x1f\xb3\x24\x0e\x37\x3d\xd4\x09\xed\x1f\xcb\xf0\xdc\x5d\x4a\xdf\x66\xc3\x91\x7e\xa0\x03\x1c\xee\xef\xd3\xc5\x5e\xd7\xc5\x9d\xa7\xc9\xfd\x5e\xe7\x7e\xb5\xee\x7c\x19\x2b\x74\x36\xfc\x9a\x77\xed\x9b\x57\x65\x17\x7c\x16\x30\xbc\xa8\xe6\xef\xc6\x48\x40\xf6\x63\x21\x7f\x75\xf2\xf6\xef\x48\xd0\x0e\x8b\xa9\xa7\x47\x7f\x1b\x5f\x7b\x6e\xe2\xce\x71\x90\x94\x43\xf8\x76\x60\xe8\x11\xb9\xf3\x55\xd6\x87\x78\x57\x86\xeb\xb8\x96\xaa\x47\x04\xa2\x7f\xc9\x40\xca\xb5\x2b\xa3\xca\x15\x03\xc2\x9a\xb4\x43\x16\x8a\x73\x50\x01\x3a\x74\x9f\x84\xed\x10\x89\x1e\xc2\xa5\x33\x4c\xa2\xcf\x98\x1f\x05\x4e\x50\x64\xc9\xfd\x7b\xfc\xf7\x96\x4c\x8f\xed\x86\x2d\xde\x5d\xad\xdc\xeb\x9f\x09\xc0\xea\x25\xd3\xc1\xeb\x3f\x23\x13\x77\x3a\xee\x49\xa7\x83\xd7\xff\xc1\xeb\xff\xe0\xf5\x3f\xba\xd7\x3f\x5b\x85\x07\x97\xff\x83\xcb\x7f\x9b\xda\x31\xa6\x5b\x3f\xb7\x33\x24\x77\x2b\x1c\x66\xce\x80\x95\xec\x00\xfc\x1d\xaf\xa0\xdb\x02\xf9\x8f\xd0\x0f\x38\x18\xa0\xbf\xd1\xa5\x66\xdd\x78\x22\xe6\x96\x27\xe9\xe2\x1f\x7d\xa3\xde\xbd\xfd\xf9\xc7\xd7\x07\x17\xff\x75\x94\xa6\xac\xdb\xab\x7f\x3f\x6b\xe3\x33\x76\xee\xaf\x12\x79\x1f\x9e\xfd\xfb\x27\xf2\x53\x75\xeb\xe7\xd4\x25\x94\x61\x5d\x1c\x83\xb4\x65\x17\xfe\x01\xc4\x3d\xf8\xef\x7f\x86\xfe\xfb\xcd\xdb\xde\x13\xd9\x90\xdb\xfc\xf7\x9f\x54\x30\x9f\x1b\xc3\xfe\x71\xf5\x5f\x3f\xf8\x4f\xc6\xad\x9f\x2e\x90\x2e\x2f\x7a\xf3\xfd\xc2\x05\x56\x6e\x94\x14\xbc\x5a\x46\xc3\x0e\x70\xd3\x76\x0d\x3b\xa0\x75\xc6\x0e\x20\xf3\x90\x04\xa8\x7f\x12\x20\xbe\xb7\xd4\xbc\xe8\xcb\xd1\x92\x99\xbf\x3e\x90\xcb\x2e\x13\x5d\x7c\xe9\x1b\x43\x18\x8b\x1a\xa8\x79\xc2\x37\x06\x52\x6e\xf9\x7a\x1b\x9c\x60\x1c\x42\x70\x3f\x18\xe1\x4b\xa3\x66\x0d\x6a\xad\xba\x37\xa5\x7a\x67\x0d\xda\x32\xb2\x5d\x31\x07\xb4\xfa\xfd\x66\x0d\x42\x5a\x21\x6b\x90\xfe\xb8\x98\x03\x9a\x5c\xa6\x17\xe6\x80\x0d\xc6\x16\xdc\x0b\x8a\x19\xb3\x74\x6d\x96\xab\x33\xe2\x69\xac\xd2\x64\x8f\xd0\x06\xa4\x91\x86\x3a\x58\x43\xc4\x0e\xad\x1f\x27\xb4\x81\xba\x26\x8f\x9a\x9c\xa8\x8c\x6d\x40\x0f\x82\x6d\xe0\xa3\x78\xdc\xe4\x44\xe6\x01\xdc\xf0\x89\x82\x1b\x68\xe2\xb8\x5a\x72\x22\x7b\x8f\xc9\x89\x84\xbc\xb4\x2f\x78\x03\x52\xb7\xc3\x1b\x10\xac\xc3\x1b\x58\x59\x53\x6f\x1f\x39\x39\x91\x95\x77\x72\xaf\xf0\x06\x04\xc5\x87\xea\x72\xa6\xbb\xde\x8c\x2d\x30\xb2\xdb\xa3\x25\x27\x12\xe7\x53\xfa\xe4\x92\x13\x15\x15\x8d\x8e\x22\x7f\x7b\x82\x22\xc2\xeb\x85\x8a\x3f\xa3\x24\x45\x75\xbd\xad\x8f\x77\xcb\x93\xf1\xee\xa7\x18\xe2\x9a\x30\xd7\xf6\x25\xcc\x0d\x00\xb5\x11\xe4\x75\x41\xd7\x31\x3a\x80\xd1\xcc\xdc\x91\xae\x8e\x4a\x2b\x3f\x14\xf1\xf4\x10\x3f\xf8\x72\xc5\xbd\x51\x62\xc2\x4c\x6e\x19\x47\x90\xde\x1d\xc5\xe1\x3a\x9a\xe3\x8c\x25\xe2\x68\x4e\x23\x42\x87\xae\xc7\xd2\x3e\xe5\x4b\xba\x38\x0d\x84\x5c\xf2\xf3\xff\xb8\xcf\xcc\x42\x9b\xe7\xff\xf9\xfc\x3f\xcb\x97\x8b\x22\xa3\x4c\x6e\x46\x4a\xc5\x94\x95\x1f\x23\xcf\x80\xbc\x74\xff\xba\x6b\x10\x13\xbc\xb2\x94\xe3\x54\xea\xe3\x14\x57\x8e\xdb\x9c\xc6\x9c\xf4\x72\xb1\xee\x66\x2a\x95\xd1\xd7\xbd\x56\x57\x23\x46\xbb\x1e\xb2\x77\xab\x64\xbd\xf2\x03\x6f\x64\x99\x4a\xab\xfc\xd4\xa5\xe9\x56\x83\x0e\xa1\x42\xd5\x82\xf5\xf1\x89\xd8\xc7\xca\x05\xb7\xa0\x9e\xd9\x45\x2f\x63\x6a\xef\x0c\x3c\x37\xf2\x3e\xba\x5c\x70\x85\x45\xf1\x20\x99\xe0\xba\xf1\x66\xd9\xa8\x78\x48\x16\x77\x48\x16\xb7\xe7\x64\x71\xc6\x01\x52\xfc\x49\x43\x8a\xe9\x04\x1f\x20\xc5\x0f\x00\x29\x5e\xfb\x4f\x0c\x4e\x2c\x9c\xfa\x2e\x47\x8d\x8f\x00\x4e\xbc\x9f\xb1\x1d\xe0\xc4\xa3\x60\x8c\x4b\x63\x7f\xc2\x29\xb3\xc8\xa1\x91\xe3\x8c\x81\xbc\x8e\x7c\x19\xc8\xd7\xeb\xa4\x84\x52\x1e\xec\x82\xd3\x88\x3f\x6e\x0e\x86\xdd\x37\xd6\xf5\x17\x5d\xfc\x6e\xa2\x70\xd9\x94\x3c\xeb\x71\xbc\x5f\xff\x5c\x78\x7f\xfb\xdb\x7b\xeb\xf6\xc9\x66\xc9\x22\x14\x6b\xce\x91\xc5\x37\x1c\xfb\x51\x31\xc8\x65\x7d\xa8\x39\x1f\x14\x85\x7d\x91\xf1\x6c\x43\xa3\x3e\x7d\x88\xa8\x3c\x4e\x8a\xa1\x32\xe5\x1e\x23\xeb\x53\x4f\x40\x63\xc3\xdd\xfb\xe7\x08\x66\xec\xc7\xd5\x7b\xb8\xfe\x1d\x37\x7f\x11\x19\x81\x7c\x76\xc0\x31\xb6\x67\x2f\xea\x45\xa5\x03\x8a\xf1\x80\x62\x3c\xa0\x18\x47\x47\x31\x92\x35\x78\xc0\x30\x1e\x30\x8c\x0f\x85\x61\x14\xa4\x26\xea\x7f\x0e\xab\x1c\x7c\x1e\x1b\xff\x40\xbb\xf3\x24\xe1\x88\xab\xeb\x37\x1a\xbe\x46\xf8\x00\x47\x5c\x47\x54\xd4\xed\x17\x8c\x48\x5a\xf8\x8c\xa1\x88\x65\x02\xef\x03\x88\xb8\x6f\x02\x3f\x55\x18\x22\xa5\xec\x3e\x41\x88\xbd\x09\x7b\x80\x20\x7e\x86\x10\xc4\xa6\x8d\xee\x49\x6c\xc0\x4f\x2f\x7d\xd0\xed\x0f\x6f\xff\xeb\x9b\x7f\xc0\x9f\x9e\x0c\xce\xf0\x31\xd3\x07\x51\xd3\xeb\x21\x79\xd0\x43\x24\x0f\xa2\xc2\xbc\x53\xea\xa0\x21\x98\xbf\x8f\x26\x85\x50\x2f\x32\x54\x9c\x73\x0e\x59\x86\x86\x21\xfe\x0e\x59\x86\x6a\xdf\x1c\xb2\x0c\x1d\xb2\x0c\x75\xba\x1d\x39\x64\x19\x92\x0f\x40\xbc\x8f\xc3\xb1\xf8\x90\x65\xa8\xa7\xc1\xfe\x90\x65\xe8\x90\x65\xe8\x09\xb8\x04\x1f\xb2\x0c\x3d\xae\x4b\x70\xb9\xaa\x13\x6a\x2f\x7f\x13\x78\xf8\xfd\xd6\x1a\x17\xb8\x5f\x7d\x5b\x86\xba\xc0\x82\x81\xee\xdd\x61\xf9\x90\x03\x69\x90\xc3\x72\xfd\x7e\x73\xcf\xee\xca\xf2\x27\x9a\xfb\xa8\xe7\xb8\x3e\x9e\xcc\x47\xbd\xb8\xbf\x1f\x23\xd1\x4b\x3d\xe6\x15\xb7\x6f\x66\x6a\x96\x87\xb0\xe9\xf1\x1e\xa6\xa0\x2a\x69\x47\xe7\xad\x46\x31\x5d\x1b\xe5\xfe\x56\x50\x45\xfe\x8f\xe3\xef\xf5\x49\x7a\xc3\x3f\x39\xc7\xf7\xfd\xa7\xd9\x12\x5e\xa7\x3c\xf6\x1d\x4f\x8c\xa3\x1b\x7f\x8e\x8f\x7c\x0f\x07\x89\x9f\xdc\x3d\x4f\x2b\x7f\x2a\xb7\x3d\xce\x3f\x2f\xde\xea\xc9\xcb\x6f\xc4\xb7\x3d\x4c\xbf\x00\xf2\x0b\x96\xc3\xac\x8b\x6b\x05\x5d\xb5\x27\xdf\x7f\xf7\xee\xe7\xb7\xbf\x7f\xf7\xee\x87\x97\x27\xaf\xdf\xfd\xfe\xfa\xbb\x97\xdf\xbc\x7d\xfd\x6a\xe0\x7d\x32\xe9\x03\x6d\x5e\xfa\xed\x37\x59\xce\xe3\x96\x65\xdc\x2d\x4b\xf7\x74\x75\x71\x62\x97\x5f\x83\x95\xd7\x7e\xfb\x2d\x91\xd2\x00\xb9\x33\xf2\x2a\xf5\x7d\xfd\xed\x37\xb6\x40\x37\xdb\x2b\x3a\x8a\x7d\x0f\xcf\xdd\xe8\x68\x15\x85\xef\xef\x06\x54\xfb\xfb\x2a\xc2\x17\xfe\x7b\x89\x3e\x6c\xf8\x3a\xc2\xae\x57\xfe\x38\x08\xbd\x41\x5f\x6e\x7a\x5c\xba\x77\x25\x60\xc3\x38\x49\x53\xc3\x48\xb7\xbd\x42\xf1\xd0\xc5\x03\x27\x9f\x35\x93\xab\xf9\x9b\xe6\xbb\xeb\x66\xc9\x89\x83\x9b\xa1\xfe\x60\x5b\x64\xc3\x93\x11\x5d\x41\x9c\xb8\xc1\xfc\x69\x61\x76\xde\x58\xbf\xae\xef\xbe\xff\xdf\x86\x60\xb8\x1c\xb3\xc3\xfb\x2a\xbf\x88\xc2\x75\x42\x27\x44\x00\xc8\x21\xc2\x2d\xf4\x04\xa2\xad\x03\x30\xa7\x4a\xa2\x22\x48\x47\x17\x81\x74\x8c\xee\x8a\xe8\xe8\xde\xc3\xf9\x91\x0f\x0a\x2c\x4b\xd4\x8f\x68\xae\xf0\x11\xc5\x4a\x7c\x19\xde\xee\xe0\xff\xd3\x86\x05\xd2\xf2\x26\x53\x97\x92\x77\xac\x59\x19\x64\x7f\xd5\xc0\x40\x82\x5b\x27\xc1\xe7\x1c\x70\xd1\x86\x4d\xe9\x07\x44\xd8\x79\x18\x39\x86\x89\x70\x19\x60\xff\x14\xee\x84\xcd\x82\xfb\x4d\x65\x1c\xdd\xc8\xf3\x70\x54\xca\x95\xe2\xad\xea\x70\x07\xee\xed\x09\xba\xaa\xb2\x2f\x39\xb1\x0c\x60\x4c\xb9\x84\xda\xc2\xef\x13\x1c\x05\xee\xb2\x1a\x69\xa8\x84\xec\x28\x90\xae\x1e\xb2\xa7\x5e\x67\x26\x0c\xe6\x97\x78\x7e\x15\x67\x75\xa6\x4e\xaa\x99\x40\x48\xb7\xdb\x1c\x2e\x74\xc2\xbe\xe8\x12\x18\xa8\x99\x67\x9f\xe8\x08\x0b\x16\x3f\xde\xd6\x9b\x57\x32\x90\x45\x83\xcf\x8e\x77\xa3\xf5\x83\x4a\xf8\x52\xbe\xc2\x81\x9d\x68\x64\xfc\xba\x73\xdf\x0f\x44\xc7\x79\xc3\xbb\x38\xd0\xc7\xaf\x98\xf8\xf0\x1a\x93\x63\x91\x60\x9d\x0b\xee\xf9\x85\xe6\xc3\xdd\x93\xa1\xfe\x74\xe9\xc7\x99\x72\xbc\x8e\x71\x2c\xb9\x12\x55\xe5\xa4\x8b\x30\x92\x92\x4b\x2c\x9d\xd0\x99\xc9\xde\x21\x7d\xee\x6b\xf0\x69\x70\x28\xd8\x02\x63\xf4\x83\x52\xa3\xd2\xad\x9f\x5c\x4a\x5c\xcd\x6c\xc3\x28\x76\x13\x7a\xf5\x7d\xd3\xae\x08\xa1\x9d\xa7\x97\x2b\x21\x8f\x39\xbd\x64\x6b\x7a\x98\xd9\x6a\xdf\x55\x89\x22\x42\xc8\xc1\xb5\x90\x86\x1d\xb4\x19\x2c\x5c\x79\xad\x23\x5a\xb5\x3f\x27\x54\xb7\xd5\x1f\xd8\x15\xd8\xc0\x5d\xa9\xca\x10\xae\xe7\x45\xcc\x09\xfb\x31\x79\xe2\xcd\x0f\xd2\x4b\xd6\x11\xc9\x0d\x3c\x89\x0c\x71\xbf\x2c\x22\x56\x53\x91\x90\xe0\x2f\x53\x12\x9d\x01\x79\x27\x65\xb5\x4d\x59\xca\x1b\x61\x7d\x3c\x6e\x7a\x31\x9b\xfe\x41\x8a\x66\xbd\x0b\x9c\x8f\x47\x6d\xbf\x0a\xac\x1a\xb2\x0e\x5a\xd1\x09\x35\x85\x35\x9c\x5f\xe1\xe4\x07\x37\xb9\x1c\x61\x0b\x8c\x69\x65\xcd\x2b\x02\xa6\x2b\x42\x07\xa7\x9a\x0d\x54\xde\x1e\xdf\xc1\x05\xcb\x84\xf5\x4e\x22\xdd\x1b\x43\xa2\x89\x14\xf6\xf2\xf8\xc7\x11\x43\xed\xf3\x9a\xae\x7d\x77\x71\xd4\x1c\x87\x60\x8b\xca\xd7\xdf\x1d\x03\xa0\xed\xc6\x92\x4c\x1c\x31\xf3\x70\x10\x26\x47\xd4\xea\x9c\xc3\xeb\x98\x43\xf5\xd1\xf9\x9d\x0c\xe4\x08\xff\x81\xe7\x09\xfb\x9b\x22\xbe\xe8\xbb\x41\x38\x04\x03\xd0\x62\xcc\x78\x72\x76\x96\xa7\x07\x09\xb8\x7a\xfb\x5f\xb7\x7f\xbd\xfd\xdb\xff\x3e\x19\x48\x40\x7a\x98\xe9\x9e\xa4\x68\x8f\x70\x03\xd6\x99\x78\x64\xe4\x41\xcd\xb6\x34\x56\x1a\x22\xa3\x0d\x85\x70\x48\x43\x94\x7b\xe2\x57\x67\xe0\x90\x90\x68\x38\x49\x0e\xa9\x89\x0e\xa9\x89\x1a\x34\xa7\x16\xa0\x42\xff\xd4\x44\xbc\xcf\x87\x9c\x41\x9f\x7d\xce\xa0\x5c\xee\xdb\xd9\x2e\x58\x77\x97\xde\xc5\xad\xed\x90\x83\xe8\x00\x7d\x38\xe4\x20\x3a\xe4\x20\x2a\x67\x93\xf8\xa4\x73\x10\x0d\x89\xd5\x73\xc8\x4f\x94\xef\x0a\x79\xf0\x85\xf1\xf2\x68\x64\xda\xe6\xa7\x9d\x49\xa3\xb0\xe0\xaa\x47\x49\x71\x43\x4f\xda\xdb\xfe\x81\x73\x12\x15\x2e\x5f\x57\x6e\x1c\xb3\xec\x39\x69\x90\x3b\x20\xcf\x23\x3f\xf1\xe7\xee\x92\x2c\x90\xeb\x55\x71\xf7\xdc\x4d\xe2\xcb\xe5\x1c\x46\x8d\xa9\x33\xcc\x2e\xa9\x33\x4c\x51\x62\x23\xd1\x3a\x78\x90\xe4\x19\x75\x84\xbb\x39\x52\x66\x0c\x73\x4f\x99\x31\x4c\xf1\x96\xb1\xcf\x04\x43\x55\x1d\x9c\x8f\x3d\x95\x62\xc8\xa2\x02\x2e\x58\x50\xe3\x78\x6a\xae\x1f\x7c\x38\x6e\x13\xbc\xcc\x5e\x38\xb2\xe0\xcd\x8c\x90\x9f\xbc\xe0\x4d\x75\x6c\x4e\xc6\x8f\x58\xf0\x3e\x68\xa6\x22\x96\x42\x6c\x3c\x21\x5a\xcc\x3f\xc4\x33\x0e\x0d\x47\x0f\x97\x79\xf8\xc1\x84\x66\x29\xac\x47\x1d\x23\x3c\x82\xa0\x7b\xf8\x14\x40\xdb\xd4\xe2\x03\x16\xf8\x90\x1e\xe8\x93\xc4\x02\xbf\xa3\x3a\xd7\x96\x5e\x31\xc5\x6c\x6b\xb7\x78\x5d\x5b\x3a\xc6\x2b\x3b\x24\x2e\xfa\x74\x71\xc0\xe2\x53\xde\xb0\x0d\xa9\x1b\xb6\x51\xc4\xc6\xb0\xfe\x60\xfc\x24\x3f\x82\xa5\xb1\x87\x0c\x46\xc2\x95\x05\x05\x4f\xf6\x36\xc0\xa7\x81\x0d\xee\x71\x99\x49\x3b\x4f\x16\xd5\x21\x83\xd6\x67\x97\x41\xeb\xf3\x44\x0c\x7f\x1c\x30\xe2\x2d\xd0\xe1\x45\x52\x81\x1a\x0f\xc4\x12\x6f\xf5\xc9\x7a\x22\x4e\x63\x0d\x98\x3c\x20\xbf\x58\x2c\xfd\xeb\x6b\x1c\xe5\x9f\x96\x5d\xc7\x40\x32\xbd\xa7\x5d\x07\xd1\x17\x63\x39\x91\xb9\xed\x4e\x64\x2f\xff\x08\xdf\x5d\x86\xff\x73\xd2\x09\xb2\x37\x46\xda\xac\x74\x12\x0b\xa0\x3c\xad\x04\xca\x03\xf2\x8b\xa5\x1f\x5c\x51\xef\xb3\x54\xfb\xc9\x95\x52\xbb\x7c\xf0\x50\xc1\xa9\xec\xc7\x6f\xb3\xf7\x7b\x9f\x94\x3b\x28\x6f\xfd\xd3\x81\x54\xbc\x2b\x8c\xd4\x34\x00\x4e\xe5\x6f\x71\x7c\xf9\x2e\xbd\x70\x18\xe4\x44\xfe\x4f\xec\x2e\x47\x71\x8c\xad\x79\xa2\x17\x8e\x85\x64\xdc\x49\xb8\x3a\x8a\x13\x37\x3b\x34\xf6\x50\x5b\xd5\xea\x31\x29\xb7\x65\x37\x10\x62\x37\x2f\x71\x49\x7a\x99\x48\x4b\xec\xc6\x89\x14\x06\x58\xba\xa4\x24\x92\x28\x00\x49\x0a\x03\x5a\x96\x0a\x0d\xc9\x8f\xa5\x0b\xd7\x5f\xfa\xc1\xa2\x73\xe4\xf3\x86\x41\x65\xa6\xfa\x47\x1f\xd3\xa5\x1b\x4b\xae\xc4\xfb\xb3\xeb\xb0\xb2\xbb\x88\x7d\x0d\x6b\xb9\x2c\x8d\x26\x96\xdc\x08\x4b\xbc\xd5\xbe\xd1\xe8\xd3\xff\x58\x54\x7a\x52\x51\x10\x96\x6b\x57\xba\x18\xae\x06\x38\x74\xf7\x50\x27\xb6\x3b\x94\x8b\x16\x4e\x66\x1a\x04\xa7\x72\x8a\x58\x3b\x09\xd7\x41\xd2\x6e\x96\xdf\x32\x0f\x72\x23\xc8\xc7\xe2\x20\x9f\x12\xda\x58\x49\xb7\xb1\x6a\xce\xbf\x06\x80\xab\x7c\x26\xce\x10\x58\x94\xb7\x83\x60\xbf\x69\xbf\xc5\xb9\x8a\x46\x68\xf6\xec\x69\xe0\x68\x4b\x26\x5a\xfa\xb7\x41\x4f\x51\x25\xab\x6d\x97\x48\x1e\x7d\x4c\x8f\xc5\x46\x8b\xd0\xe7\xef\xd2\x20\x1f\xcc\xe6\x40\x7a\x32\x16\xb0\x2e\x0d\x5d\xf2\x98\x30\x2a\x49\xca\x06\xf8\x80\x08\x3b\x20\xa2\xee\x83\x82\x50\xb8\xba\x7a\xe5\x07\x5e\x8f\x7c\x98\x72\x7f\x08\x73\xad\x9e\x36\x3e\xaf\xb3\x5f\xa3\xd4\x03\xdb\xbe\xfc\x17\x19\x1a\x21\x46\x82\xa3\x6b\x3f\x70\x13\x3f\x58\x1c\x2d\xdc\x04\xdf\xba\xd9\x3d\xba\x10\xec\x9f\x7d\xe8\x07\x8b\x08\xc7\x71\xf5\xa3\xe1\xf6\xcc\xad\xd7\x7d\x62\x33\xa7\x88\x0e\x25\x33\x67\xe5\x3b\xad\x8d\x7e\xb2\x9f\x21\x9f\x49\xa7\x6f\xfd\xe4\x32\x5c\x13\x75\x9d\x3e\x07\xa7\xcc\x56\x5f\x3d\xe9\xf6\xc1\x60\x56\xb5\x89\x3e\x13\xb2\x03\x44\x73\x00\x51\xff\xc1\x1a\xa7\xe9\xfa\x16\x32\x90\x5f\xc6\x71\x38\xf7\xdd\x04\x7b\x1c\x82\xd5\x97\xda\x9d\x2b\x24\x87\xa4\xe0\x0a\x7b\x29\x36\x7a\xdc\xc9\xe8\xa8\xe6\xf5\x63\xf8\xbd\xb3\xf8\x63\xce\xc6\x7a\x15\x27\x11\x76\xaf\x87\xcf\x43\x3f\xbd\x52\x28\x02\x8b\x40\xcd\x93\x30\x08\xa8\xa1\xee\x7f\xfc\xe4\xf2\x1f\xe9\x7c\xe4\x91\x47\x4a\xcf\x69\x44\x83\x36\xc5\xfc\x10\xd0\xa0\xc3\x06\xde\xb6\x31\xed\x63\x52\x3a\x9d\x96\xb6\xea\x13\x6d\x11\x16\x28\x32\x9c\x2f\xe6\x66\xc0\x45\x6f\x09\xb2\x75\xb0\x0f\x3b\xca\xfd\x8e\x2c\x9f\xe6\x21\xf7\x6b\x43\x06\xb5\x75\xc2\x5a\x59\x7c\xa0\x4a\xd8\xf9\x64\xd4\x11\xc6\x2c\x50\x1f\xf7\x03\x5d\xa6\x86\x68\x97\x68\xb1\xf2\x45\x18\x5d\xbb\xc9\x51\xb0\xbe\x3e\xa7\x50\xc9\xd5\x72\x1d\xb9\x4b\xff\x2f\x9c\x41\x94\x99\xaa\x2d\x04\x38\x67\x36\x71\x6a\xaa\x66\xd1\xe3\xc2\x68\xb8\x89\x5a\x04\x64\x5e\xe2\x44\x5a\xce\x26\x99\x59\x9a\xb5\x09\xa2\xd9\x7c\xe9\xc6\xb1\x44\xf4\xe9\xc0\x8b\xa5\x24\x35\xe3\xde\xe7\x76\xcd\x09\x9e\xde\x47\x38\x59\x47\x81\x84\x95\x92\x52\xf7\x95\xba\xd9\x80\x78\x16\x29\xab\x28\x4c\xc2\xe4\x6e\x85\x81\x3f\x2b\x5a\x44\x41\x38\x3b\x0d\xce\xc0\x7a\xc6\xed\xc9\x0b\x9c\x7c\x7f\x1b\xa4\xf6\xe4\x34\xa9\x7c\x18\x4d\x8a\x55\x14\x2b\x98\x82\x79\xa9\x7a\x6f\x76\xbf\x01\xbc\xb2\x2b\x7c\x17\x4f\xd6\x53\xe5\x22\x8c\x5e\xbb\xf3\xcb\x49\x09\x05\xed\x9d\xe2\xb3\xd9\xfa\x14\x9f\x51\xeb\xb9\x82\x83\xf5\x35\x8e\x48\x95\xb3\x2f\xbf\x2c\xfe\x04\x9e\x42\x73\xf6\x2e\xd6\xf9\xd3\x62\x01\x98\xf0\xeb\x27\x3f\x90\xbc\x0f\x1f\x3c\xc5\x0f\xfc\xc4\xa7\x53\x1b\x4d\x9f\x3d\x9b\x78\xca\x6d\xe4\x27\xec\x53\x75\x0a\xbc\x59\xa8\xc4\x4b\x7f\x8e\x27\x53\x25\xc2\x37\x38\x8a\xd9\x5f\xde\x7a\x8e\x27\x15\x5b\x3b\xa7\x69\x32\x89\x81\x0f\xf0\xf4\xc3\x07\xbc\x99\x02\x6f\x0a\xe6\xcf\x9e\x31\x1b\xfa\x97\xb3\x59\xa9\x3d\xda\x1c\xed\x4d\xb9\xfc\xeb\xd2\x2f\x65\xee\x2e\x97\x93\xf9\xf4\x98\x55\x02\x4a\x0f\xb9\x75\x7e\x0a\xd8\xbf\xb3\x7a\x0b\x62\xcb\x3f\xe9\xa2\x47\x86\x47\x16\xd6\x14\x44\xec\x92\x83\x94\x86\x60\x0d\xe6\xc0\x2b\x5c\x58\x2c\x41\xdb\xd5\x87\x0b\x96\xd3\xbe\x37\x1a\x4f\x0f\xfd\xfe\xf3\xcd\xdb\xef\x7e\x45\x37\x2f\x3f\x62\xf4\x3b\x3b\x7f\x7f\x06\x68\xf9\x3a\x48\xde\xe8\x0a\x92\xd7\xe0\x01\x24\x3f\x18\x24\x2f\x00\x82\x5b\x2d\xe0\xf3\x9d\x10\xde\xcd\x15\x77\xc1\x77\xb7\x75\x6b\x17\x4c\xfc\x36\x0a\x8c\x8b\x72\x6f\xab\xba\x37\x15\xfa\xa3\xdc\xdb\x47\xb6\x33\xca\xdd\xda\x3f\xca\xdd\x2e\xa0\xdc\x9d\x47\x46\xb9\xdb\x03\x50\xee\xce\x7e\x51\xee\x36\x69\xa1\x03\xca\x7d\x24\xe0\xde\x93\x40\xb9\xd3\xe0\x0a\x63\xa2\xdc\x35\xad\x84\x72\xd7\xf4\x87\xc8\xc7\xc7\x47\xf1\xa8\xa8\x74\x8a\xf0\x3a\xa0\xd2\x3f\x45\x54\x3a\x12\x01\x17\xd1\xde\x80\x8b\x4d\xbc\xb4\x37\x54\xba\xd1\x01\x95\x2e\x40\x22\x22\xb3\x8d\xf3\x9f\x0a\x2a\xbd\x06\x2d\x1c\x19\x95\x2e\x86\x18\x22\x9d\x90\x75\x4c\x54\x3a\xd2\xc6\xca\xc9\x37\x56\x98\x96\xcf\x0d\x79\xce\xf8\xfc\x80\x3c\xff\xf8\x00\x90\x0f\x1c\x56\xe4\xd1\x91\xe7\x34\xce\x48\x13\xf2\x1c\xc1\x0e\xc8\xf3\xb6\x28\x24\xe5\x75\xf0\x38\xc8\xf3\x62\xb0\x91\x9d\x0e\x95\xb5\xa0\x25\x0d\x5a\xc6\x5e\x83\x95\x0c\x45\x9e\xdb\x0d\x37\x6f\x42\xd1\x38\xaa\x18\x4c\x8d\x6b\x9f\xb4\x10\xdc\x6e\xf4\xa0\x64\xf8\xa8\x25\xe3\x48\x31\x39\xda\x42\x60\xb4\x88\x9a\x7a\xb2\x04\xa7\x96\x24\xa2\xc8\x6f\xfb\x10\x36\xd5\xed\x2e\xf3\x1a\x19\x88\xce\x16\xd2\x41\xef\x05\x03\xac\x3a\x89\xf4\x9d\xdd\x3e\x3b\x54\xd5\x31\x45\xec\x43\xc4\x3c\x17\xc6\x73\xd7\xea\xcf\x2a\xf4\x1d\x4b\x00\xed\xb7\xea\x62\x69\x8c\xb3\xc7\x90\x5d\x09\xd6\x23\x1f\x08\x59\xb0\xef\x65\x6d\x03\xac\x76\xdf\x6c\xc8\x9d\x55\x1e\x82\x07\x8f\x68\x5b\xec\xf6\x38\xfd\xf5\x58\x4c\xd6\x12\x74\xe7\x91\x98\x6c\x4b\xb0\x9c\x71\x98\x4c\x80\xe7\x1b\x52\xcd\x23\xc6\xd6\xd1\xd0\xc7\x1a\x5b\x87\xa9\xd4\x87\xd8\x3a\x1f\x9f\x02\xf5\xc0\xb1\x75\xb4\x7a\xf4\x98\x1d\xb4\xb3\x51\x63\xeb\x94\x79\xf8\x10\x5b\xe7\x10\x5b\xe7\x63\x88\xad\x43\x4a\x0f\xb1\x75\x0e\xb1\x75\x1e\x21\xb6\x0e\x65\xbd\x43\x6c\x9d\x5d\x76\xb0\x8f\x3f\xba\x8e\x90\x09\xb6\xf5\xec\x63\x8a\xae\xb3\xa7\x01\xf6\x0f\x71\x32\xe8\xc4\xdc\x93\xc1\xb8\x47\xde\xd3\x8a\x9f\x33\xf6\x0c\x3c\xa5\xf8\x39\xfb\x19\xdb\x1e\x98\xeb\x10\x41\xe7\xb3\x89\xa0\xf3\xf4\x02\xe7\xd0\x43\xd9\x53\x71\x2d\xff\x87\xf7\x32\xfa\xfe\xe4\xe2\x5c\xec\x5a\xfe\x22\xb3\x09\x54\x17\x6d\x05\x49\xc7\x81\x70\x47\x2b\x37\xc0\x75\x07\x44\xb9\x0d\x4e\x57\xd3\xa3\x4b\x5e\xd5\x69\xfb\xad\x61\x10\xb6\xe2\x15\x45\x05\x4d\x80\x25\xae\x86\x5d\xe3\x60\xcd\x87\x23\x8c\x18\x43\x2d\x48\xbd\xb6\x93\x0e\xfa\x5d\xff\xf0\x3b\x75\xbd\xb6\xe9\xbe\x8c\x52\x52\x49\x5b\x10\x9e\xc8\x3b\x83\x09\xb7\x0c\x83\xd0\x6e\xd0\x20\x54\x20\x2f\x7d\xce\x04\x72\x14\x72\x54\x02\xe9\x51\x12\x46\x8d\xb6\xad\x3e\xe3\xa7\xd3\x9a\xf8\xc9\xb2\xd9\xd0\xd5\xa8\xc5\x37\x74\x30\x08\x03\x9c\x33\xae\x17\xce\xe3\xa3\xa5\x1f\x5c\xb5\x77\x37\x8b\x4a\xa2\x03\x39\x71\xcf\xd3\xa8\x53\x47\xb0\x52\x39\xe9\x6f\xea\x43\xcc\x23\x98\xc0\x32\x66\x33\x0d\x90\xf1\xea\xfb\x93\x77\xbf\xff\xfc\xe3\xdb\x0c\xf2\x2f\x13\x89\x13\xe0\x79\xf2\x7c\x69\x11\x51\x7b\x71\xe1\xcf\x79\x20\x26\x52\x3f\x61\x6c\x39\x08\xc3\x15\x0e\x70\x24\x05\x61\x84\x2f\x70\x14\x31\x77\x52\xd6\xab\x88\x6d\x01\xbf\x9f\x2f\xdd\x96\xe1\xf4\xa3\x3f\xa1\x4c\xac\x78\xe1\x7c\x4d\xf8\xc0\xe5\xcb\xa9\xb7\xc5\xb1\xbf\x8b\x71\xa7\x57\xe4\x3a\x50\xb6\xf0\xb3\xe3\xe6\x19\xdc\x0c\xd9\xad\x0a\xbb\xc2\x63\xef\x50\x49\x78\x85\x83\x86\xc0\x6e\x8f\xb3\x4b\xfd\xfd\x3c\xfe\xf9\xcf\x9f\xdf\xfd\xdc\x1a\xb9\xed\xe5\x9c\x1d\x8e\xd3\xbf\x64\x20\x53\x44\x7c\x74\xed\x96\x7f\x0e\x7a\xf0\x22\x0c\x3c\xbc\xc4\x14\x9c\xf4\x22\x0c\xd6\x31\xff\x63\x19\x2e\xc2\x75\xc2\xed\x5f\x4b\x22\x0a\x40\x21\xba\x1b\x25\xe5\xa0\xd8\x71\xf4\x4b\x1e\x39\xee\xac\x10\x32\x2e\xb5\x0f\xea\x7d\xce\x32\xa3\x6f\x3d\xb9\x65\x41\x2b\x1c\xc2\x8a\x41\x0e\x5e\xce\xe7\x38\x8e\xc3\xe8\xcd\xab\xcc\x91\xc1\xa8\x16\x0f\xb4\xe6\xc8\x55\x28\x3f\x17\x66\xd7\x62\x45\x41\xea\x06\x51\x6e\x00\xf5\xef\x1a\x28\x4e\x2a\xfd\xf7\xef\x70\x1d\x49\x74\x6a\xfb\xdd\x10\xf6\x15\x89\xdb\x6c\xd6\xf5\x7d\xa8\x18\x1d\x4b\xe7\xd1\xb1\xdc\xf9\x32\x56\x68\x6f\x63\x05\x7b\x7e\x92\x87\xc6\x12\x4f\x63\x8e\x0f\x29\x5a\x3c\x45\xfc\x70\x64\x17\x3e\xaa\xc6\xfe\xe9\x20\xc7\xc7\x8e\x49\xd5\xc0\x5a\x1d\x51\x34\x08\xc8\xef\xe6\xe1\x0a\x37\xcc\x4d\x47\xf6\xab\x6e\xa4\xc5\x08\x1f\x6f\xc3\xb9\xbb\x64\xe1\x54\x42\xe6\xac\xb8\x58\x86\xe7\xa4\x68\x94\xbd\x53\xaa\x04\x3c\x62\x3b\x40\xb4\x5e\xe2\x18\x27\xcf\x7b\x81\xdf\x77\xa4\x63\x8a\xd2\xe6\xeb\x6d\x3c\x6a\x16\x03\x1f\x95\x1a\x39\x6b\x8e\xf7\x36\x9c\xa4\xe3\x30\xb1\x3b\x1f\x68\xee\x2d\xb2\xce\xa5\x1b\xbf\xc3\xf3\x08\x27\x85\xb5\xda\xef\xfa\x5d\x9e\x87\xab\xbb\xa3\xf3\x75\x92\xd0\x7d\xaa\x62\x28\x4a\x7b\x7b\x9a\x25\x75\xcf\x1a\x2b\x1b\x8b\xea\x3a\x21\x65\x33\x25\xce\x3e\x18\x0c\x3c\x82\x03\x5b\xda\x11\xa4\x56\x4f\x3d\x97\xf9\xfc\x9e\x0d\x0d\x09\x93\xd7\xa1\x65\x46\xb9\xcb\x08\x5f\xc8\xd5\x1b\xa3\xfe\xf2\x79\xc8\x0d\xd7\x16\x0e\xe5\x76\xd8\x5d\x94\x06\x1a\x8a\xf1\x36\xf2\x13\x2c\xa5\xda\x52\x09\x37\x89\x52\x58\xf3\xa0\x80\x2b\xe4\xbf\xd7\x9e\x9f\x0c\x0c\xb5\xf9\x8b\x8f\x6f\x3b\x6e\xa7\x3b\xa0\x49\x1a\xdc\x6a\x6a\x54\xf2\xd6\xab\xa5\x3f\x77\x7b\x53\xaa\x6b\x7a\x04\xad\x80\x39\x9c\x2f\xfd\xf9\x55\xd5\xc2\x5e\xb8\xaa\xa5\x02\x8f\x1b\x5f\x9e\x06\x7b\x15\xe7\xed\x55\x4a\xa9\x21\x57\x0e\x3b\xc8\x81\x41\xaa\xb1\x41\x9d\x9b\xba\x69\xc6\x9d\xa3\x0c\xe5\x33\xca\xcf\x15\x9e\x1b\x2c\x70\x14\xe6\x18\x9c\x0e\x73\x8c\x9e\xf2\x1c\xbf\xa5\x27\xaf\xbd\x01\x15\xe7\xc5\x93\xe0\x4e\xf7\x46\x76\x3e\x09\x29\xee\xe4\x6c\xd8\xe6\xd0\xb9\xf3\xc3\x0c\x89\xe9\x7f\xfc\xd4\x2b\x2d\xeb\x14\xee\x45\xe5\x8e\x9d\x3d\x0f\xbd\xbb\xa1\x5d\x4d\x75\x41\x71\xa8\xdc\xe2\x7f\x2f\x23\x2c\xdd\x85\x6b\x29\x5e\xf3\x3f\x6e\xdd\x20\x91\x92\x50\x8a\x93\x70\x25\xad\x63\x3f\x58\x48\xc9\xa5\x1f\x4b\x2f\x4f\xde\x32\xf9\xfa\x35\x8b\xce\x76\xeb\x2f\x97\x84\x14\xf4\xa3\x70\x9d\x28\x4d\xdd\x10\xe9\xaa\xfb\xa0\x17\xe7\xcc\x5d\x48\xc6\x18\xd3\xe9\xa7\xa5\xb0\x05\xd7\x73\x34\xed\xbe\x55\x83\xc8\xd4\xe4\x70\x35\x82\x1c\x6f\xd3\x07\x06\xee\x93\xf0\x29\xcb\xd0\x9f\xe3\x41\x3b\xe4\x03\x0b\x50\xf3\x63\x15\xa0\xeb\x0a\x79\x7b\x91\xb8\x63\x4f\x1f\x59\x7a\xae\x63\x5c\x15\x9b\x9f\x8c\x7c\xb4\xfa\xc9\xc7\x9f\x63\xbc\xa3\x70\xb4\xf6\x21\x1c\xcd\x3d\x28\xb9\x5b\xce\x29\xd4\x50\x5e\x3b\xa4\x00\x39\x2f\x61\x2e\xae\x1c\x05\xb2\xf3\xa1\x65\x07\x15\x57\x7d\xca\xe2\xf9\x15\x25\xe4\x47\x20\xa1\xf5\x8f\x55\x42\x7b\x75\x0a\xf7\xa2\x72\xc7\xce\x3e\xb2\x90\x4e\x17\x24\x91\xd3\x9f\x98\x8c\x36\xfa\xc9\x68\xb6\xa2\x76\x14\xd3\xc6\x3e\xc4\x74\xdd\x6b\xac\x43\x85\x03\x3d\xd4\xea\xd1\x4b\x04\xa0\xf9\x6d\x48\x8c\xed\x21\x6b\x33\xe7\xb1\xcc\xa9\x8c\xfa\x82\xe5\xb1\x68\xe3\xf5\x79\x9c\x44\x2c\x00\x2d\x90\xe7\x6e\x90\xef\x11\xbd\x6f\xd0\xab\xb7\xd6\x4f\xe3\x16\x3d\x08\x13\xff\xc2\x67\xbe\x70\xf1\x53\xb9\x4e\xb7\xff\xfd\xc7\xaf\xea\x7f\xc1\x5f\xc4\xd7\xe9\x38\x8a\x42\x16\x28\x33\x8d\x2a\xf1\x22\xb9\x5b\x65\xf7\xda\xe4\x5f\xf6\x4a\xed\x5a\x9b\x03\xa7\x04\x66\x2f\xed\x0c\xc8\xf3\x08\xbb\x09\x1e\x1e\xa1\x46\x54\x2f\x22\x7d\x58\x53\xcb\xd9\x0e\x99\x15\x7e\xba\xe4\xca\x0a\x4d\x2e\x75\x8e\x71\x20\xb9\x9e\x87\xbd\xbe\x09\x9a\x58\x62\xa6\x5b\x37\x96\xdc\x40\xa2\x34\x22\xf5\x30\xc3\x02\x6f\xa1\xa9\xca\x3e\x78\xa1\x26\x02\xaf\x57\xde\xc7\x43\xe0\xd8\xbd\x19\x85\xc0\xb1\x7b\xf3\x60\x04\xe6\x0e\x20\x4f\x9a\xc0\x84\x38\xac\x9f\x63\x50\x97\xd6\xf4\x60\xf4\x65\xfe\x33\x4f\x9a\xbc\x19\xff\xd2\xbe\x7a\x92\x1b\x37\xdc\xda\xeb\x35\x43\xbf\xcd\x80\x6c\xdb\xb1\x45\xbd\x66\x88\xf4\xe3\xe1\x24\x4c\xdc\x32\x3d\x8f\x30\x2f\xff\x0e\xd7\x3c\x0f\xde\x6d\x66\xc1\xc5\x52\x80\x6f\x73\x6b\xc4\xee\x14\x4e\x2b\x76\x93\xbc\xd6\x5e\x44\xde\x53\x61\x7a\xfc\x4e\x83\xeb\x19\x80\xef\xdd\x31\x8d\x10\x1d\xc5\x09\x53\x27\x7a\xc2\x9e\x0b\x17\x55\xcc\x89\xa6\xa7\xd7\x40\x7a\x5c\x39\xcf\x1d\x76\xe9\xa9\xa2\xe2\x21\x3a\x91\x81\x28\xf3\x48\x21\x4c\x5c\xe5\xc0\x5e\x7e\x2a\x1f\x4b\x75\xbc\x61\xa5\xd7\x40\x9e\xd6\x6e\xfa\x3b\x4e\x5a\x07\xe5\x36\x83\x31\x50\x9d\x96\x6a\xb7\x49\xb4\x26\x65\x98\xe3\x22\x86\xea\xb0\x02\x9d\xf1\x69\x28\xb3\x45\x87\xa0\xa7\xa2\xcb\x7e\xf3\x66\xee\xba\x2f\x6f\xfe\x14\xeb\xb2\xab\x70\xe9\xcf\x19\x52\xa5\xf0\x67\x9a\xea\xd7\xc3\x41\xe2\x27\xa5\xb2\x6b\x37\x70\x17\x94\xa7\xd3\xb2\x26\x2d\xb7\x84\x81\x47\x67\x55\x08\x37\xf5\xa7\x93\x7f\x48\x1b\xe5\x17\xbd\xa4\xec\xe5\xc9\x5b\xd2\x20\x7d\x74\xf7\x8a\x0d\xb9\xc4\xf1\x69\xe8\xf7\xa1\xc0\x57\x41\x07\xed\xdc\xe6\x56\x1c\x62\xff\x5a\x8b\xc0\xe5\x74\xab\x33\x47\x08\xf4\xb1\x83\xcb\x58\xe5\x08\xfe\x6d\x36\xbc\x2e\xbe\x5b\x2d\xde\x64\xb9\x81\xb3\x14\x09\xa2\xe1\xef\x2e\x14\xde\x0d\xbe\x2c\x80\xca\xb0\x6c\xcb\x65\x39\x69\x89\xfc\x31\x11\xb0\x4a\xb9\x42\x5b\x5d\x45\xfb\x61\x9b\x87\x64\x6a\x34\x4b\x1b\x58\x23\xa7\x16\x16\xe8\x38\x9c\xaa\x3f\x2e\xa7\xbe\x29\x8e\x67\x4f\xdc\x88\x80\xfe\x90\xdc\x66\x88\xb9\xcd\xe8\xce\x6d\x0d\x81\x79\x47\xe4\x36\x5d\xa0\x2e\x95\x22\xb9\x18\xc0\x1c\x2b\x7b\x59\x5f\x96\xf8\x91\x6c\xa9\xfd\xb9\xa1\x3c\x53\x6f\xf1\xc2\x9d\xdf\x31\xcd\x34\x96\x2e\xdd\x1b\x2c\xe1\xeb\x73\xec\x79\xd8\x93\xe8\x9e\x5d\xcd\x0b\x3d\x94\xb8\x4d\xc7\x85\x7a\x2a\xe7\xfa\x62\xce\xf6\xdf\x6a\x7c\x88\xe2\x7e\xf9\x63\xb8\x14\x6e\x96\xa4\x7c\x7f\x5b\xa5\x48\x54\x8c\x11\xbd\xea\xe1\xf9\xa2\xbb\x94\xd8\x3d\x74\x51\x67\x19\xa1\x89\x65\x84\xd6\x5d\x46\x68\x7b\x97\x11\x4d\x51\xb8\x87\x9d\x0d\x28\xaf\xdf\x3d\x4f\xee\x56\x38\xbc\x68\x47\x3a\xb3\xb4\x6e\xfc\x01\x57\x42\xa9\xf9\x95\xe3\xaf\x57\x2b\x4c\x03\xdc\x31\xa0\x35\xd3\xc3\xfd\xf8\x68\x49\x97\x7c\xaa\xd6\xde\x3d\xe7\x11\x3d\x06\x9e\x38\xea\x8a\xfd\x80\x03\x47\xf6\x44\x61\xf9\xdd\x26\xf7\x89\xbb\x60\x3d\x90\x37\xbb\x1c\x3b\x9e\x5e\x42\xae\x6f\xaf\xff\xf1\xdf\xff\x7c\x85\x82\xa7\x93\x90\x2b\xd9\x7b\xda\xac\x11\x73\x65\x31\x6c\x5b\x2d\x53\x16\xea\x9c\x29\x0b\x15\x22\x9f\x41\x3d\x17\x5d\xf1\x21\x53\x56\x4b\x9e\xa8\x14\x04\x51\xc9\x12\x45\x43\xaf\xc7\xe5\x84\x54\x40\x56\x4a\x61\x53\xc0\x2e\x61\xbd\x45\x0d\x54\x95\x80\x96\x30\xae\xcd\x5f\x67\x2e\x1b\xfd\xf2\x65\xf5\xa3\x03\x8f\xb9\x24\x7c\x69\xd4\x94\x5a\xad\x55\xf7\x26\x54\xef\x94\x5a\x5b\x46\x16\xac\x77\x4b\xa9\x45\xab\xdf\x6f\x4a\x2d\xe8\x14\x52\x6a\xa9\xc5\x3e\x0f\x73\x45\x19\xa6\xbc\xf1\x98\x14\x4d\xe9\xb1\x84\xca\x1b\xcc\xfb\xbc\xbf\x94\x5a\x95\x70\xf7\x8d\x17\xff\x70\xac\xf0\x85\x4f\x21\xa5\x16\xd4\x46\x4e\xa9\x85\xca\x29\xb5\xd0\x83\xa4\xd4\x82\x6d\xe1\x18\x1f\x28\xa5\x16\x4d\xeb\x75\x48\xa9\xf5\x29\xa6\xd4\x82\xa2\xb0\x80\xb0\x7f\x5c\xc0\xce\x81\x73\xc5\xbc\x94\xd5\x3c\xda\xd1\xd4\x4e\x63\x74\xef\x14\xcc\x5e\xdc\xdb\x47\x4e\xa9\xa5\xe5\x9d\x6c\xb0\x31\x0f\xf1\xe3\x13\xec\x06\xe2\x04\x8b\xd0\x00\x83\x62\x94\x37\xbf\x06\x45\x0e\x70\x83\x82\xba\xc0\xa6\xe0\x6a\x87\x94\x5a\xad\x71\xcf\x29\x9f\x7f\x8e\xb9\x64\x6a\x07\x02\x42\x84\xea\x01\xa8\x73\x30\x80\x27\x13\xec\xf5\x41\xa3\xa1\x17\x90\xe9\x2c\x34\xc5\x51\xe9\x2a\x95\x87\xab\x48\xe3\x57\x8c\x74\x2d\x26\x8b\xa3\xa7\x57\x93\x6c\xd1\x58\xea\x67\xdb\x76\x80\x96\x68\xea\xc5\x95\xf1\x20\xb1\xd4\x3b\x31\x68\xe5\x64\x8a\x46\x3a\x86\xd6\x2c\xc3\x1d\x1d\x98\x9f\x5e\xe4\x76\xf1\x3b\x87\xe8\xec\x43\x4f\x00\xf0\x73\x8d\xce\x7e\x42\x5d\x97\x7f\xf2\x3b\x84\x56\x5f\xe0\xed\x81\xd5\x0b\xd5\x6d\x09\xf9\xbe\xc0\x82\xc8\xea\xa3\x5d\xdc\x34\xc5\x42\x47\xf0\x10\x0b\x7d\x40\x2c\x74\xb9\x6f\xa0\xea\xb5\xaf\x50\xa7\xf8\x62\x10\xc4\x61\xa7\xe6\xd3\x0e\x41\x9c\x1b\x99\x18\x36\x3c\x6d\x60\x84\x6d\x3d\x6c\x0b\xe8\x5c\x5d\x1d\xbd\x43\x80\xf7\x18\x64\x3d\x12\x77\xfd\xe1\x7e\x86\xd8\x3b\x1a\x77\xef\xcd\xf4\x10\xae\xfa\xa9\x84\xab\x1e\x21\x52\xb5\xf8\x96\xf3\xf1\x5d\x3e\xaf\xc3\x45\xe4\xae\x2e\xef\x9e\xd3\x7f\xea\x77\xaf\x40\x7e\xb1\x58\xfa\xd7\xd7\x38\xca\x3f\x2f\x5f\xc8\x82\x64\x7a\x4f\xbb\x0f\x22\xe0\x7e\x91\x96\x4b\x4b\xf2\x04\x04\xd3\xfb\x08\x27\xeb\x28\x90\x12\xc9\x0f\x24\xfc\x75\xd3\xe5\x6d\x92\xde\xd8\x06\x00\x07\xeb\x6b\x1c\xb9\xe7\x4b\x7c\xfc\xa5\x0a\x28\x88\x70\xb1\xce\x7e\xdf\x46\x7e\xc2\xff\xde\x4c\x8f\xf1\x69\x72\x36\x0b\x00\xde\x8c\x75\x29\x1c\xb7\x5f\x0a\x47\xff\x52\xff\xf5\x5a\x87\xff\xdb\x1a\xa4\xb4\xe9\xc2\x14\x42\x20\x7b\xfe\x0d\x11\x36\x5c\x99\xcb\xc8\x7f\x44\xff\x49\xef\x48\xab\x47\xdd\x4c\xd1\xb9\x59\x70\x07\x0c\xf9\xd6\xf7\x92\x4b\x26\xdd\x54\xa2\x44\xf9\x7f\xa5\x3e\x16\x06\x90\x2f\x71\xaa\xe3\xd5\x9e\x0a\x23\x6c\xab\x40\xce\x2a\x4e\x22\x37\x88\x2f\xc2\xe8\x5a\xe6\x87\x2c\x5a\x40\x29\x20\xd7\x82\x3e\x16\x2a\x27\xbd\x66\x6a\x90\x0c\xa4\xae\x6f\x4e\x1b\x7a\x55\xef\x59\xab\x21\x57\x05\xf2\xdc\x8f\xe6\xcb\x42\x88\xe6\x73\x77\x7e\x45\x76\xfd\xc0\x4b\x07\x16\xe5\xf4\xe0\x2f\x03\x59\x2d\xb4\xdf\x02\x8b\x15\x37\xe1\xbe\xf7\xe3\xb6\xca\xe1\x3e\x2b\x47\xfb\xac\x5c\xdb\xa5\xf2\xf3\x30\xe2\xb7\x2b\x4d\xd5\xeb\xdb\xaa\x6f\xb1\xa8\x17\x79\x82\x36\xb7\xf4\x03\xee\x44\x25\xd2\xfe\xad\x82\x56\x66\xd6\xfe\x66\xfd\xf2\xfc\x38\x71\x83\x39\xbd\x54\x19\xc3\x58\x41\x96\x79\x44\x8f\x6d\x80\x5e\x7d\xd6\x56\x54\x14\x26\xe9\x72\x62\x68\x06\x56\x90\xa2\x19\xce\xf8\x77\x85\x25\x4e\x5e\xba\xe3\x53\x8e\xf4\x7c\x81\xcb\x34\x94\xb8\x0e\x4e\x35\xbb\x7c\xf2\x3f\xcb\xf1\x14\x41\xe8\xb1\xaa\xa5\x23\xa9\x7e\xec\x83\x05\x02\xc8\x5c\x29\xba\x76\xdf\xfb\xd7\xeb\xeb\xbf\x47\x6c\xa7\x7d\xe5\x2f\x7c\xea\x85\x73\x4a\xd3\xd5\xc9\xd7\xb1\x5c\x3b\x54\x50\xe0\x06\x5e\x30\x77\xe8\x4a\x4c\xc8\xff\x7b\x1e\x49\xcf\xbf\x9a\xbc\x63\x8f\x8f\xa5\x7c\x48\x85\x2f\x8a\x30\x8e\x8a\x89\xbb\x70\x0c\x28\xa9\xd8\xe9\xdc\x5c\x84\xcb\x65\x78\x7b\xb2\x8e\x62\xea\x53\xe5\x92\x5f\x44\x7c\x93\xd7\x0b\x37\x55\x67\x42\xa6\x6b\xc2\x3c\x77\x3b\xe9\x88\x39\x92\x1c\x07\xaa\x2c\xd9\x6d\xed\xac\x42\x3f\x48\xf8\x4f\xb2\x74\x64\x43\xee\xbc\x0e\x0b\x3d\x48\x78\x3c\x8c\x2d\xf2\x5c\x05\x52\xbe\x3a\x79\xaf\x99\x4c\x6c\x97\xcc\xd5\x96\xc9\x12\x4c\x3b\xfd\x1e\xc9\x40\xb6\xd4\xed\xdd\x2e\x56\x90\xe0\xf7\xd9\xa8\xdf\x93\xef\x8d\xf4\xd7\x1d\xeb\x10\xfb\xe1\x91\x5f\x8a\x86\x78\xa4\xfc\x72\x1c\x62\xad\xb0\xa2\xaf\xfd\xe5\xd2\x8f\xf1\x3c\x0c\xbc\x38\x97\xf2\x5b\x18\x9b\xf5\xf3\xba\xd9\x21\xb3\x95\x0f\xf6\x31\x13\xf0\x93\x9b\x09\xf8\x91\xce\x04\xfa\xe4\x66\x02\x7d\xa4\x33\xa1\x7d\x72\x33\xa1\x3d\xc0\x4c\x08\x1f\xd4\x0a\xe5\xea\xd6\x58\xdf\x29\x9b\x0f\xe9\xf4\x5c\x0c\x2a\x88\x49\x32\xb3\x6e\x72\x14\xac\xc9\x99\x4a\x2e\x84\xdd\xa7\xe7\x20\xf1\x71\x7b\xc8\xd9\x5a\x74\x8a\x4d\xcf\xd6\xc0\x9f\x15\xbd\x87\xf9\x71\x14\x9a\xea\x7f\xe2\xcd\x17\x4b\x9c\x48\xe1\x6c\x92\x1d\xbd\x69\x7f\xb0\x07\xa2\xd9\x7c\xe9\xc6\xb1\xc4\xbc\x9c\x63\x29\x49\x4f\x8b\xf7\xf4\x98\x18\xad\xe7\x49\x18\x4d\xd8\xc1\x97\x9e\x73\x41\xf4\x45\xbc\x5e\xe1\x68\xa2\x28\x8a\x1b\x2d\x68\xe6\x93\x78\x0a\xf0\x2c\xb9\xf4\x63\x90\xcc\xc8\xec\xca\x20\x62\x3f\x27\xc1\xcc\x9d\x3e\x7b\xd6\x72\x16\x2e\x9c\x81\x03\x25\xff\x51\x3e\x0d\x53\x97\x81\xec\x67\x7e\x32\x0e\x94\xf4\x4f\xc0\xcf\xd4\x8a\x1f\xf8\x89\xef\x2e\xfd\xbf\x70\xf4\x75\xe9\x97\x32\x77\x97\xcb\x49\x34\x3d\x66\xa7\xe0\xcd\x14\x2c\x27\xb4\x8f\xec\xb4\x06\x34\xcd\xcc\x8b\x52\x0d\xfe\xd4\x9f\xc0\x29\xf0\x27\x0a\x32\xe8\x3f\xec\x7f\x2d\xfa\x0f\x9c\x9e\xe5\x1f\xa4\xcb\xf6\xd4\x9f\x1c\xf1\x97\x8f\x14\xfe\x0f\x7b\xfd\x88\xbc\xbf\x59\xe0\x44\x2a\x2e\x8b\xc9\x94\xd1\x59\xc2\x33\x5a\x13\x21\x69\xac\x64\x8a\xfa\x87\x0f\xa7\x67\x53\x25\xc2\xde\x7a\x8e\x27\xd4\x02\x31\xfb\xea\x5b\x37\xb9\x54\xae\xdd\xf7\xe4\x67\xf6\xe6\x14\xd0\xaf\xaf\xdd\xf7\xd3\x2f\xd8\xc4\x9f\x22\x03\x18\x2a\xb0\x0c\x00\x55\xf5\x4c\xb9\x76\x57\x93\x64\xf6\x55\xd9\x9a\x91\x5a\x2c\xbe\x52\xbf\x5e\xb9\x51\x8c\xdf\x04\xc9\x24\xf9\x4f\x3c\x7d\x0e\x55\xf5\x58\xdd\x4c\x12\x80\xa7\xac\xcf\x59\x8f\x26\xd3\x7b\xc2\x4a\x6c\xba\x05\xbd\xcd\x5c\xce\x71\xcf\x6e\x83\x60\x86\x15\x86\x51\xf9\xc2\xbf\x98\x04\x5f\x69\xa6\x9a\x12\x27\x99\x69\xa6\xfa\x3c\xf8\x02\xcf\xb0\xc2\xfc\x18\x26\x45\xbb\x4c\x94\x8d\x44\x9d\xcd\xa2\x0f\x1f\xa2\xd9\x2c\x38\x82\x1f\x3e\xd0\x26\x23\x37\xf0\xc2\xeb\xc9\xf4\xff\x26\x9b\xe9\x74\xc3\xdf\xc3\x94\x1e\x93\x00\x44\xd3\xd9\x57\x93\x7b\x76\x2c\x39\xd6\x4c\xf5\x3f\xa3\xe7\x69\x2f\xc0\x1d\x3a\x0e\xb2\x9e\x3e\x4f\xfe\x13\x9a\x2a\x20\x67\x8c\xe3\x40\x21\xff\x80\xf4\x51\xe1\x2d\xc0\x15\xfd\xe3\x40\xe1\x7f\x91\x46\x37\x60\x3d\x8b\x94\x55\x14\x26\x61\x72\xb7\xc2\x60\xce\x17\x89\x37\x3b\x0d\xce\xc0\xf5\xec\xbe\x6a\xfa\x29\x1b\x86\x0a\x86\x20\x50\x60\xe8\xe3\x8c\x02\xe9\xf0\x8f\x9c\xf4\xbf\xcd\x06\x5c\xcc\xee\x37\x80\x2f\xbc\x2b\x7c\x17\x4f\xae\xa7\xca\x45\x18\xbd\x76\xe7\x97\x93\x12\xca\xe0\xe2\x14\x9f\xcd\xae\x4f\xf1\xd9\x66\x3a\x05\x17\x85\x35\x38\xfb\xf2\xcb\xe2\x4f\x70\x51\x5a\x85\xf4\x69\x69\x59\x4e\xb8\xe5\xd9\x0f\xa4\x8b\x0f\x1f\x2e\x8a\x8b\x6f\xfa\xec\xd9\xe4\x22\x5b\xac\xb3\x2f\xd5\x29\xb8\x98\x79\x4a\xbc\xf4\xe7\x78\x42\x18\xfc\x06\x47\x31\xfb\x8b\xf1\x8c\x98\x4f\x27\x6b\x30\x07\x78\xfa\xe1\x03\xde\x4c\xc1\xc5\x14\xac\x9e\x3d\x63\xab\xf9\xcb\xd9\xac\xd4\x1e\x6d\x8e\xf6\xa6\x5c\xfe\xf5\x45\x5d\x24\xac\x52\x91\x00\x4a\x0f\xb9\xb5\x6c\x0a\xd8\xbf\xb3\x7a\x0b\x62\xa9\x46\xba\x78\x41\x86\x47\x4e\x6d\x53\xe0\xce\x2e\x40\xc4\xcc\x9e\xe4\x89\x07\xae\xc1\x0a\x5c\x14\x4c\x98\x21\x68\x33\x86\xc6\x20\x9c\x76\xb6\x71\x12\x8d\x62\xe5\x46\x38\x48\x8e\x56\x51\xf8\xfe\xee\xa9\x00\x4c\xfe\xa6\xc1\xb7\x3f\x2f\xc2\x5f\x85\xb6\x44\x61\x36\x3e\x61\xfa\xbc\xda\xf8\x6a\x27\xcf\xf2\x3d\x60\x93\xfb\x81\xa0\x9a\xea\xa5\x20\xd5\x07\xb6\x98\xea\x07\x6c\xdf\xe2\x09\x7a\x6c\xdb\xf8\x7a\x15\x27\x11\x76\xaf\x8f\xfc\x80\xcb\xba\xa7\x14\x12\xe1\xf6\xdd\xf2\x97\x48\x43\x66\xab\x21\x7a\x1e\x5e\x9f\xfb\x01\xf6\x5e\x7a\x5e\x84\x63\x6a\xcc\xf7\xe6\xb9\x81\x1a\xe4\xf9\xa6\xb6\x59\xaa\x53\x42\x55\x69\xc2\x93\x57\x51\xb3\xb5\xde\x64\xb6\x5e\x57\x7d\xeb\x73\xfb\x5c\x1d\x48\x5a\x06\x95\x1a\x3b\x58\xe4\xf2\x03\x80\xd0\x16\x93\x3e\xe6\xe3\x64\x6b\x2a\x4b\x9d\x28\x3a\x5b\xa4\x5f\x34\x07\x69\x4c\x57\x5a\x96\x82\x26\xf1\x03\x7a\xe7\x94\x63\x20\x3b\x79\xfd\x37\x15\x56\xbb\x9b\x86\x41\x69\xa0\xae\x5e\xb1\x78\xa6\x69\x04\xbf\x7b\xf7\xc3\xcb\x93\xd7\xef\x7e\x7f\xfd\xdd\xcb\x6f\xde\xbe\x7e\xb5\x23\xf0\xbe\x98\x01\xaa\x30\xe4\x9f\xee\x56\x3c\x06\x63\x84\xc9\xea\xf6\x7e\xff\x73\x8d\xa3\xbb\x5e\x8d\xb5\x25\x04\x53\x81\x4c\xc4\x46\x43\xe6\x50\xa9\x6b\x28\x09\x59\x94\x10\x6c\x68\x48\x53\x32\xcd\xb4\x4f\xc3\x43\x46\xee\x82\x12\xaf\x0b\xfa\x06\x56\xe4\x74\x3b\x2b\xf8\x63\xf7\xf7\x81\x1c\x02\xc1\x6d\x44\xe9\x5b\x4d\x0c\xe5\x26\xee\x1c\x07\x29\x96\xa8\x88\x34\x16\xa6\x20\x2b\xbf\x2f\x0b\x8d\xca\xbb\x31\x9d\x57\x68\xe1\xc9\x30\x5e\x3e\xec\xc7\xe5\x3c\xc1\x24\x8c\xcd\x52\xd5\x90\x58\x59\xea\xb4\x6f\xfc\xc0\x7b\x17\xce\xaf\x70\xf2\x83\x4b\x11\xfd\x03\xe3\x3c\x74\x02\x85\x75\x9c\x64\x89\xe6\x30\x99\xbb\x4b\xe9\xdc\x0f\x3c\x29\xa6\xdd\x93\x56\x6e\x72\xd9\x15\x44\xd2\x39\x40\x84\x3c\x20\x8f\x97\x98\x6e\x40\x16\x77\x59\x6e\xca\x04\x27\xe2\x81\xa6\x29\xe9\x07\xa0\xd9\xc6\x93\x85\x75\x49\x9d\x8e\x8f\x48\x9f\x8f\xae\xe9\x95\x57\xd7\x99\xa3\x5f\x17\x5f\xcf\x3e\xdf\x79\x3e\xc4\xc2\xb8\x42\x9a\x6f\xd3\x0b\xba\xa3\xa1\x30\xa3\xa1\x31\x3d\x44\x31\x31\x4a\x1d\xfc\x81\x3b\x9a\xf6\x0a\x8d\xd1\x1e\x9b\x42\x48\x88\x54\x41\x25\x5d\x87\xc8\x52\x54\x45\x55\x60\x9e\xe4\xf8\x58\xae\xb3\x15\xef\xda\x6e\x37\xb5\xcd\x2c\xe4\xa6\x3d\xda\x75\xfd\xa7\xaf\x6d\x85\xa4\x49\x12\xa7\x42\x1f\x03\xfb\xc3\x8b\x0d\x74\x06\xe4\xc2\x74\xb5\xc8\x83\xa2\x44\x40\x63\xf3\x74\x4b\x2c\x8f\xad\xfb\x47\x09\xb9\x5c\x4b\xea\xd8\xe7\x7a\x78\x27\x8b\x39\x8b\x87\x9d\xda\xcb\x99\xd7\x5a\x1e\x2e\x24\x08\x93\x23\xea\xf4\x86\x83\x1b\x19\xc8\x2e\xc5\x25\x8c\x63\x2f\x6f\x3b\xd9\x3e\xbd\x53\xf7\xd3\x8b\x0c\xf2\xf7\xff\xf5\xff\xfd\xeb\xbf\xd4\x8b\x27\x13\x19\xe4\x31\xe3\x7c\xd4\x4d\x02\xf5\x98\x1f\x6a\xd7\x98\x1f\x45\x84\x66\x7b\xcc\x8f\x52\xa8\x8f\x4f\x2d\xd0\x47\x0d\x7a\x25\xb0\xd7\xd5\xe8\x2e\x08\x76\xa1\x8d\x13\xf4\x03\x36\xc2\x88\x04\x0d\xd4\x62\x51\xc0\xc6\x58\x16\xcd\x5f\x0b\x82\x7e\xec\x85\x26\xa9\x4f\xf8\x1e\xa9\xd2\x18\xa3\xa3\x23\x5d\x3a\x7d\x5f\x8a\xf1\xd1\xf6\xf9\x08\x31\x3e\xb4\x5e\x31\x3e\x60\x8f\x18\x1f\x99\xd7\x9a\x9e\xc7\xf8\x80\xc6\x23\xc7\xf8\xd0\xfb\xc7\xf8\xa0\x7d\xde\x63\x8c\x0f\x9d\xb4\xf0\x70\x10\xe9\x27\x11\xe3\xc3\x1e\x39\xc4\x07\xb4\xcb\x31\xa5\x9d\x7a\x22\xeb\xf1\x43\x7c\xb4\xe1\xbc\x1f\x28\xc2\x07\xb4\x3e\xcb\x08\x1f\x8d\x73\xfa\x09\x45\xf8\x18\x15\x0a\x5e\xcc\xf7\x56\xc6\x85\x67\x2e\xbf\x42\x4e\xda\x5b\x7c\x0f\xd8\x21\xbe\x47\x0b\xba\x5b\xdc\xdb\x7d\xc4\xf7\x10\x2a\x2a\xe2\xf8\x1e\x6a\xde\xc9\xfd\xc6\xf7\xe8\x05\xcb\xee\x01\xe0\xec\x92\xf8\x75\x50\x78\x8f\x03\x7e\x7b\xa8\x7c\x37\x3f\x57\xfc\x76\xe5\x8a\x4b\x00\x0d\x2d\x41\x38\x97\xab\x4b\x57\x80\xbb\x06\xad\x75\x0a\x30\xb5\xf5\x4a\x05\xd0\xf0\xbd\xa3\xb9\xe9\xb4\x1f\xd0\xdc\x43\x28\x2b\x77\xc6\x1d\xb7\x72\x98\xda\xf2\x46\xc3\xfc\x74\x47\x20\x77\x60\xdf\xce\xc9\x0e\x87\x8f\x57\x10\x16\xa1\xe9\x95\x7d\x8d\xb8\x3b\xb0\xfc\x13\xc5\x53\xf7\x84\x4e\xb3\x94\x35\xfb\x84\x4e\x17\xb1\xd1\x5b\x60\xd4\x03\xa1\xd3\xdb\x4d\xc2\x4f\xc5\x68\xdd\xe0\x21\xd6\x0b\x43\xfd\xc5\x58\x46\x6c\xb7\xdd\x88\xfd\x06\x5f\xfe\xb0\x86\x78\xdd\xea\x40\xc6\x87\x22\xbb\x15\x07\xb2\x17\xdc\xf3\xa6\x83\x2b\x99\x0d\x64\x42\x95\xa3\x79\xb8\x24\xa2\x85\x32\x51\x93\x09\xb9\xe0\x4c\x66\x72\xf5\x88\xd5\x0a\xe4\x17\x4b\x3f\xb8\xa2\x86\xf1\xe2\xc6\x57\xd6\xf8\xb8\x0a\xa4\x82\x53\xd9\x8f\xdf\x66\xef\xf7\xd6\xee\x3b\x6c\x65\xfd\x12\x13\xcb\xc2\x34\xda\x76\xe1\x26\xf4\x0d\x67\xed\x93\x70\x1d\x6c\xb9\x71\xdd\xea\xc3\x50\x31\x77\xb1\x68\xfd\xac\x99\x6f\x71\x7c\xf9\x2e\x8d\x28\xd7\xea\x14\xd7\x74\xa9\xf9\x4f\xec\x2e\x0b\xce\x0b\x0d\x16\xad\x2d\x37\x8f\xb2\xc8\xf5\xa5\xa0\x0a\x13\x0a\x27\xe1\xea\x28\x4e\xdc\x4c\x51\x1e\x48\x64\x44\xf7\x91\xc8\x4f\xfc\xb9\xbb\x94\x9b\x08\x31\x94\xd4\xe9\x7f\x2f\x13\x69\x89\xdd\x38\x91\xc2\x00\x4b\x97\x94\x44\xd2\xfc\x12\xcf\xaf\xa4\x30\xa0\x65\xa9\xe8\x92\xfc\x58\xba\x70\xfd\xa5\x1f\x2c\x3a\x67\x6e\x6c\x18\x54\x9a\x83\xfb\xf1\xc7\x74\xe9\xc6\x92\x2b\xf1\xfe\xec\x3a\xac\x95\x1b\xc7\x7b\x1d\xd6\x72\x59\x1a\x4d\x4c\x93\x0b\xf2\x56\xfb\x66\xd3\x4c\xff\x63\x19\x05\x59\x96\xc2\x72\xed\xd5\xac\x2c\x3b\xe7\x03\xec\xaf\xbb\x6c\xbf\xe3\x16\x2d\x9c\xea\xb9\x4b\x5e\xc7\x58\x62\x62\xbf\x9e\xde\xa5\xe8\x8b\x55\xf2\x2f\xec\xe6\xc3\xdb\x61\xf2\x52\x99\xe2\x72\x99\x66\x96\xf5\x50\x6f\xae\xc4\x38\xba\xf1\xe7\x38\x56\xe2\xcb\xf0\x56\xce\x32\xd6\x17\x7a\x95\x02\xed\x28\xc9\x4a\x68\x72\x98\xf7\x29\xf7\x29\x15\x0d\xe8\xac\x84\x23\x17\x58\xf7\x05\x0d\xb6\xcc\x46\x3f\x5e\x1b\x44\x83\x52\x5f\x82\x62\x86\x96\xbd\xf4\xbe\x9b\xd5\xa6\xb2\x53\x89\x1d\xaa\xb7\xf7\xa8\x5b\x7f\x32\x5f\x8d\x2d\xab\xa5\xc3\xb6\xcf\xfc\xad\x07\x9c\x60\x9b\x56\x96\xb3\xdd\x2b\x7b\xac\x45\xd6\x59\x61\xd8\xe6\x5a\xbd\x55\x47\x10\x6e\xef\x43\x3c\x5b\x45\xee\xd4\x43\x85\x5e\x47\xb5\xa4\xcc\x70\xd9\xb2\xef\x2f\x53\x5b\x7d\x57\xcb\xc1\x55\x6b\xd1\x41\xd3\x2e\xfc\xc3\x4d\xf0\xad\x7b\x77\x42\xe1\x64\x72\xe6\x77\xb5\x63\xa4\x92\x2d\xd7\xa1\x9d\xa6\x57\x64\xb6\x7b\x59\x70\x99\xeb\x07\x69\xd8\xa2\x27\x76\xf6\x4d\xd3\x3a\xf8\xa6\xe5\x93\xac\x8d\x31\xad\x5a\x0f\x11\x23\x30\xcc\xf7\x3b\xcd\x5f\x46\xf8\xe2\x28\x09\xd3\xa3\x34\x8f\x8a\x56\x76\x17\x9b\xbb\x41\xe6\x2e\x96\x1d\xf7\xa9\x5b\x19\x73\x24\x1b\xd7\x85\x4c\xe4\x39\xb6\xc4\x89\xb4\x2c\x60\xaa\x59\x2f\x5a\x20\xd5\xf9\x61\xad\x00\xd0\xc6\x4a\xe9\x4c\xf4\x95\xba\xd9\x80\xb8\x84\x17\xf5\x67\xc5\x63\x1e\x08\x29\x6c\x74\x3d\xe3\xe7\xe7\x05\x4e\xbe\xbf\x0d\xd2\xf3\xf3\x2b\x1c\xcf\x23\x7f\x95\x84\xd1\xa4\x58\x45\xb1\x82\x29\x98\x97\xaa\xf7\xaa\x48\xd1\x75\x03\x52\xd4\x3b\xc5\x67\xb3\x35\x47\x8a\x7a\x65\xa4\x68\xf1\x27\xf0\xaa\x48\x51\xaf\x11\x29\xea\x7d\xf8\xe0\x55\x91\xa2\x5e\x19\x29\xea\xcd\xc2\xfe\x48\xd1\x18\xf8\x19\x52\xd4\x9b\x82\x79\x01\x29\xea\x55\x70\x9c\x1e\x47\x8a\x96\xca\xbf\xf6\xea\x48\xd1\x79\x86\x14\xf5\xda\x91\xa2\xd5\x16\xc4\x96\x0e\xd2\x45\x8f\x0c\x8f\x21\x45\x39\x4a\x94\x94\x86\x80\x62\x45\x0b\x16\x9a\x65\x2b\x4a\xd4\x05\xcb\xce\x28\xd1\x8c\xa1\x9f\x9e\xbb\xe1\x37\x61\xb2\xbe\x48\x5e\xbf\x79\x32\xee\x86\xdc\x38\xf4\x91\xf9\x27\x1e\x52\x91\x3d\x70\x2a\xb2\x94\xf2\x87\x6c\x64\x9d\x49\xb1\x8b\x3f\xe2\x21\xe7\xd8\x21\xe7\xd8\x21\xe7\xd8\x21\xe7\x58\x57\xa7\x8e\xd3\x43\xce\xb1\x43\xce\xb1\x43\xce\xb1\x43\xce\xb1\x43\xce\xb1\x8e\x4e\x89\x9f\x72\xce\xb1\x8e\xa2\xbd\x5b\x7e\xb1\xf4\x66\xf0\x73\xcb\x31\x26\x52\xf3\x33\x28\xd2\x21\xd5\x58\x1f\x59\x5e\x70\xc2\x8c\xf0\xc2\x8f\x13\x4c\xb4\x09\x66\xe7\x2c\x14\x8c\xe6\x5f\x29\x8f\xe6\x69\x5e\x5d\x01\x63\xc8\xf3\xfe\xd2\x5c\xe8\x54\x2e\xe4\xeb\x43\x8a\xaf\xcf\xcc\x45\xfc\xf3\x4d\xf1\xd5\xe0\xb5\xdb\xdf\x2f\xbc\xc9\x1d\xb6\x93\x33\x78\xb9\x2a\xe6\xda\xb2\xa5\x57\xcc\x7c\xb2\xb5\x5b\xbc\xae\x2d\x1d\xe3\x95\x3d\x86\x9b\xfa\x21\xe9\xd8\x40\x37\x75\xb9\x6f\xda\x31\xbe\x15\x54\xac\xc6\xc3\x4e\xb7\xdd\xbc\xc5\x45\x8c\x0c\xeb\x0f\xc6\xcf\xc6\x25\x58\x1c\x7b\x70\x86\x17\xae\x2d\x28\x78\xb2\xb7\x01\x0e\x4b\xaa\xd6\x3b\xfb\x5a\x4f\x06\x63\x1e\x47\x47\x25\xed\x76\x9f\x6c\xd6\x80\xed\x29\xc3\x2d\x46\x4f\xf8\xf6\x10\x70\x8b\x26\x84\x51\x05\x58\xb1\x9f\xb1\xed\x81\xb9\x3e\x51\x04\xc6\x21\xa3\xdd\x96\x1b\xf3\x47\x44\x63\x64\x7e\x42\xcf\xe7\x97\x6e\x94\x28\xef\xe9\x2a\xd8\xeb\x15\x7e\x5e\x40\x2f\xeb\x4b\xbe\x4a\xdc\xdd\xe1\x58\xf6\x3d\xea\xa1\x12\x1c\xdf\xff\xf8\xfa\xdd\xeb\x9f\x8e\x4f\xef\x13\x37\x5a\xe0\x84\x3f\xd9\x9c\x6d\x00\xed\x69\x7c\x7c\x4f\x0a\x8e\xef\xc9\xab\xef\x7e\x3e\x39\x79\xfd\xee\x5d\xe1\xe5\x78\x3d\x9f\xe3\x38\x96\x37\x67\xe0\xf5\x8f\x3f\x7e\xff\x63\xe1\x11\x8e\xa2\x30\x22\x15\x6d\x00\x7f\xeb\xf8\x7e\x03\x68\xe9\xf1\xfd\x66\xb3\xe9\x45\xbc\x6e\x08\x16\xd0\x73\x16\x2a\x88\x17\x10\x8c\xe7\x41\x11\x6d\x09\x96\xfc\xf6\xf6\x97\x9f\x6f\x5f\xff\x29\xf6\xa0\x78\xc7\x78\x44\xfe\xc7\xda\x8d\x3c\x19\xc8\x2f\xd3\xd5\xe8\xf9\xf1\xca\x4d\x58\xb8\x21\xfe\x4e\x3a\x03\x80\x13\x1c\xc8\x11\x8e\xe9\xea\x64\xfa\x63\x11\x10\x93\x4a\xf9\x67\xb9\x5c\x16\x78\x2e\x90\x82\x23\x4a\xa7\x4c\x13\x8d\xa3\x79\x6a\x68\x50\xd9\x51\x8d\x85\xba\xeb\x83\x5f\x11\x44\x70\xce\x19\x93\xf9\x3f\x50\xd3\x41\xc7\xa8\xcc\xd4\x97\x5a\xe6\x1c\x59\xf3\x4c\x2d\xbe\x43\x19\xb3\xf5\x0d\xba\x04\x86\x84\x01\x4e\xc7\x55\x18\xc5\x96\x5b\xde\xdc\x3e\x97\x0d\x5e\x49\xfc\x84\xa3\x88\xe4\xa2\xef\xa0\x93\xe6\x40\x2f\x50\x2b\x29\x91\x0a\xe9\x40\x2f\x36\xce\xd2\xae\x65\x41\x6b\x20\x9b\x9f\x2a\x87\xf0\xc7\x26\x3b\x06\x58\xac\x11\xf6\x69\x53\x72\xba\xf4\xbc\x6e\x9c\xe5\x0c\x57\x25\x68\xdb\x08\xf3\x6f\x44\x63\xec\x54\x45\xda\xf7\xa0\x43\x2a\x36\x23\x9f\xc3\x24\xf2\x17\x0b\xe6\xff\x72\x19\xde\x7e\x1f\xb0\x64\xbc\xf4\x0a\x66\x49\xb7\x9f\x30\xf8\xa7\xef\x79\x98\x41\x7c\xae\xdd\x60\xed\x16\x66\x4d\x14\x8e\x92\xd0\x80\xca\xc8\x86\x73\x2f\x61\x5f\x15\x68\xaa\xaa\x16\x6f\x4f\xed\xb2\x9f\x3e\xb4\x01\x44\xe9\xe3\x56\x77\x4e\x13\x58\xc0\x6e\x8d\xf0\x27\xd8\xf9\x81\x06\x74\x60\xf4\xdd\xff\x6f\xfd\xe4\xf2\x88\xd0\x9c\xfb\x5f\xa5\x3b\x34\x93\x08\xd7\x44\xf0\xd0\xcd\x3f\x20\x67\xd4\xd4\xe1\x93\x6e\xf3\x79\x16\x9d\x8b\x80\x6b\x07\xbd\xb6\xef\x8a\xa0\xcf\xf6\x6b\xe6\x9f\xe9\x6e\x4d\x7a\x23\x4a\x74\x43\x13\x96\x50\x49\x35\x0b\xd2\xcf\x36\x9b\x5c\x5c\xbb\xad\x9e\x7a\x11\x70\xb7\x7b\xea\x79\x6e\xe2\x16\x60\x84\x3b\xe7\xaa\x05\x4b\x50\xf0\x2a\x64\x19\x28\xc0\x39\xb8\x04\x37\x60\x01\xee\xc0\xf7\x79\x2e\xdb\xdf\x27\x3c\xc7\xcf\xf4\x3e\x78\xa2\x69\x7b\x36\x59\x67\x7f\x48\x3b\x0b\x5c\x36\xd8\xe5\xec\x7e\xc3\xb3\xdf\x48\x45\x7f\xd6\xa8\xc1\x9f\x75\x79\x8a\xcf\x66\x11\xf7\x67\x5d\x96\xfd\x59\x8b\x3f\xc1\xb2\xea\xcf\xba\x6c\xf4\x67\x5d\x7e\xf8\xb0\xac\xfa\xb3\x2e\xcb\xfe\xac\xcb\x59\xd0\xc5\x9f\x35\x28\xe4\xb5\x89\xb8\x1e\xf1\xe1\x43\xb0\x99\x82\xe5\x14\xb8\x05\x7f\xd6\x65\xc5\xdb\x74\xc9\xfd\x59\x4b\xe5\x5f\x2f\xeb\x54\x75\x33\x7f\xd6\x65\xbb\x3f\x6b\xb5\x85\x66\xc6\x58\xd2\xe1\x51\x7f\xd6\xe5\x68\xa9\x8a\xaf\xda\x95\x9e\x5f\x54\xf5\xf9\x9f\xd6\x5f\x7f\x13\x2b\x3d\x05\xb7\xca\x46\xf5\xa4\x9a\xbe\xac\x6c\xd2\x53\xc5\xb1\xf9\xd4\xfc\xb1\x9c\xe0\xe8\x3a\x8f\xe2\x2b\x17\x25\x34\x6c\xba\x9c\x90\x99\xbc\x46\x25\x0d\x24\x73\xb8\x4c\x3b\x9d\xc2\x82\x4f\x0a\xa8\x62\xf9\xf5\xf5\x8a\xba\x4d\x88\xbb\xca\x73\x10\xa7\x2e\x3b\xc5\xce\x50\xc4\x30\x83\x2f\xe7\x83\x32\x05\x17\x06\xf9\x8b\x44\xec\x06\x0b\x16\x13\x5b\x15\x1a\x63\xdd\x20\x0c\xee\xae\xc3\xdc\xfa\x56\xa2\x80\x18\x64\x37\x62\x1b\x67\x67\xdd\xb7\x23\xa6\xc1\xd2\xcd\xc4\xcd\x95\x5f\xef\x68\xbd\xf2\xd8\xf6\x5d\x54\xfa\x73\xcc\xc1\x22\x19\x70\x7a\x14\x4a\xf1\x12\x76\xe0\x36\xc7\x0e\xf8\x01\x5d\x2a\xdc\xc8\x34\x49\x6f\xce\xa7\x20\x6a\x78\x81\x5e\x9b\x4c\x81\xdb\xf4\x98\xcd\x3e\x59\x8d\x95\x84\x6f\x69\xde\x6f\xd2\xd3\x75\x82\x3d\xc5\x5d\xfa\x6e\x9c\x7e\xf1\x8e\x55\xc0\xef\x75\x89\xc8\x8a\xe5\x29\xf0\x2b\xdf\x4c\x18\xc3\x93\xad\x7c\x11\x2b\x59\x5b\x61\xfd\xb5\xbb\x55\xee\x71\xfd\x2d\x4e\x2e\x43\x2f\xf3\x1d\xa6\xb7\x9c\xb4\x02\xf6\x9b\x34\xb4\x6e\xaa\x81\x35\xc4\xc6\x3c\xaf\xbd\x44\xfe\x72\x23\x37\xa1\xe7\x14\xd6\x18\xf6\xe4\x29\xf0\x6a\x6f\xb2\x87\x3f\xb1\xde\xe7\x83\x2c\x76\x6a\x0a\xae\x9b\x7a\x31\x0f\x83\x84\xf1\x46\xa5\xdf\xab\xda\x17\xf4\x85\x7b\xca\xde\xca\xe9\x19\x60\x7f\xf0\xef\x95\xd3\xb3\x8d\x3c\x05\x17\x15\xdc\xc8\x79\xc7\x54\x7c\x22\xad\xe4\x77\x9e\x87\x2e\x75\xcb\xbe\xa4\x7a\x4a\x5e\xce\x3c\xcf\x6f\xaa\xa5\xc5\x39\x97\xc1\xa2\xf2\x98\x4d\xf2\x9d\xf0\x23\x42\xb5\x6f\xdd\x95\x0c\xbe\x67\x8f\x69\x96\x38\x42\xa6\x49\x0e\xc2\xc8\x32\xc4\x91\x72\xfa\x42\x91\x11\x44\x2f\xe6\x75\x7f\xf8\x20\xe3\xf7\xee\x3c\x91\x0b\xdf\xfd\x90\x79\xe8\x89\xbe\xe5\xb3\x51\x76\x2e\xf3\x71\x5c\xa8\x80\xcc\x7b\xe5\x53\x32\xc6\x0f\x1f\xaa\x3d\xf8\xf0\x41\x2e\x36\x4c\x11\x3b\x79\xa6\x3e\x36\x6d\x0b\x9c\x70\x8a\x34\x37\x7f\xc7\xb6\x62\x79\xfa\xe1\x43\x8f\x8f\xe4\x34\x87\x9f\x14\xe0\xdb\x89\x1c\x27\x91\x1f\x2c\xe4\xd9\x8c\x90\x31\xbc\x60\xfd\x2e\x52\xf2\xeb\x42\x09\x9f\x97\xd3\xda\x4b\x67\xc7\x22\x32\x4f\x59\xd6\xc1\x94\xf9\xc1\xfd\x05\x11\x53\x51\x7c\xcc\xf7\xee\x8b\x28\xbc\x7e\xcd\xcc\x73\xe9\xae\xcf\xad\x75\x93\x42\x0b\xa9\xd4\x58\x45\xd8\xf3\xe7\xd4\xde\x45\x69\x7b\xb7\xc2\xd3\x69\x9a\xb1\x2f\x99\x7d\x75\xbf\xc4\xc9\x69\x00\xa2\xb3\x59\x92\x8e\x30\xd3\x31\xf0\x87\x0f\x58\xf1\x83\xf9\x72\xed\xe1\x78\x12\x10\x2d\x79\xc3\xb8\x2a\x5f\xdd\xf9\xdc\x65\x9f\x15\x06\x15\x46\xc9\xd7\xa7\x7c\x98\xd4\xe0\x5b\xf8\x30\xef\xcf\xa4\xfc\x05\x6b\x82\x2e\xcf\x2c\xb5\x61\x51\x9e\xf0\x7e\xca\xa9\x5a\x56\x99\x86\xfc\xcd\x67\xcf\x26\x3c\x29\x62\x5e\x36\xe5\x67\x81\x8a\x06\x94\x2f\x49\x22\x03\x2b\xe2\x98\x14\x4f\x72\x21\x06\xf0\x94\x9f\x39\xd8\xfb\x05\xae\xc4\xf9\x12\x92\xe5\x94\x14\x39\xa3\x7f\x5d\x9a\xd9\xe3\x0a\x8f\xf0\x3f\x27\x95\x8f\x18\x39\xd2\x8f\x26\xd3\x7b\xff\x62\x22\xa0\x35\xe7\xdb\x69\x71\x25\xa5\xc2\x8d\xab\xb6\x5f\xa4\xab\xa5\xd0\x0d\x21\x83\x7c\x51\x6c\x02\x77\xa8\x32\x99\x89\x38\xb1\xd4\xaf\x94\xe7\x30\xe7\xb9\x04\x04\x67\x33\x9c\xf2\xdc\x37\x61\xb8\xc4\x6e\x40\x99\x8c\x26\x82\x14\xbe\x76\x9a\x80\x74\xe9\x7d\x99\xce\x79\xf0\x75\xa0\xf0\x23\xcb\xd9\x26\x5b\xa5\xa5\xbe\xa6\x2d\x4f\x04\x2b\x28\x99\x4e\x53\x96\xa6\x2f\x17\x64\x4a\x3e\x06\xca\x8b\x34\x95\x66\x23\xeb\x61\x25\xb5\xd8\xbd\xbe\xc1\x41\xf2\x35\x4e\x5b\x3f\xc6\x1b\x3e\xaf\xb8\x2e\xe6\x66\x98\x31\x12\x6d\x60\xb3\x01\x97\xb3\x1f\x26\xe7\x45\x8c\x60\xba\x79\x9c\x06\x67\x60\x60\x4e\x4a\xa2\x91\x6d\xa6\xe0\xa6\x5a\x35\xdb\x7f\x4e\xa3\x5d\x2b\x5e\xd4\x2a\x2e\x6f\x61\xa7\xee\xae\x2d\xdc\x55\x5b\x60\xbb\xe0\xe9\x72\x70\xc5\xb5\x3c\x9d\x32\xcd\xd6\xfb\xbd\x78\x28\xd9\xc6\x7a\x1a\xef\x3a\x14\x61\xfd\x4c\xf7\x39\xf5\xcf\xc0\x36\xfc\x68\xd3\xc7\x53\x50\x78\xd2\xd0\x0a\x53\xaa\x4e\xc3\x41\xad\x70\x94\x6a\x5b\x2b\x45\x8d\xef\x74\xdd\xb3\x95\xc2\xc7\xed\xad\xf0\xd3\xc9\xe9\xbc\x67\x03\xec\xbb\x2e\x74\x22\x12\xfe\xd4\x1b\x44\x25\xaa\xaa\xb6\xb5\x90\xab\xd9\xa7\xd7\x3d\x5b\x28\x28\xc3\xed\xb3\xc0\xf5\xe1\xd3\x55\xef\x29\x60\x5f\x76\xa1\x91\x0c\x4e\x2f\x06\x51\xa8\x5a\xfb\x79\xf1\x96\xed\xb6\xd5\x4e\x77\x05\x6e\x3b\xda\xe9\x2e\xc2\xe8\x5a\x64\xa1\xcb\x1d\x6f\xe2\xba\x69\x6e\x2c\xcb\x48\xd0\x6e\x19\x51\xcf\xa3\x57\xef\xde\xfd\x28\x4e\xbc\x2a\x13\xe9\x41\x4d\xd8\xee\xca\xdf\x76\x7b\x43\x87\xba\x0c\x69\x2c\xb0\xf4\xf6\x26\x8b\x58\x16\x47\xf3\xaa\xc7\x5e\x18\xa4\xa1\x65\x74\x50\x71\x21\x95\x9f\xff\xc7\xfd\xca\x8d\x12\xea\xe9\xb7\x79\xfe\x1f\xf7\x2c\x02\x07\xf9\xcb\x9b\x93\xff\xa5\xa7\x85\xe7\xff\x71\x1f\x47\xf3\x8d\x0c\x04\xc6\x91\xec\x6b\x39\x0b\xdf\x01\x64\x1a\xae\x2d\x3d\x6f\xa6\xf7\x4a\x06\xf3\xc7\x32\xd8\xad\x84\x41\x4d\x0f\x9a\xc1\xc2\xe5\x18\x40\xcb\xe1\x78\x67\xf5\x58\xc5\x2a\x45\x60\x25\xaf\xdc\xc4\x95\x07\xf9\x74\x77\xf0\xc0\xa2\x14\xed\xec\x2d\x58\x08\xd5\x90\x4e\x49\x3a\x87\xe9\x85\x9a\x1f\x5c\x11\xf2\x73\x3a\x70\xc7\x16\x3a\x1f\x1e\x5e\xe2\x04\x97\xe6\xe9\xac\x12\x9e\xa5\xd3\xc4\x0c\x99\x11\xc1\x5c\x94\x62\x6c\x1b\x00\x8a\x52\x20\x1a\x79\xb0\x17\x3e\x6d\xa5\xf9\xd2\xd9\x3c\xea\x0c\xca\x21\x98\x3e\x5a\xb1\xde\x3a\xc3\xf4\x15\xa3\xa7\xcb\x72\xe9\x0a\x11\x5a\x67\x42\x0b\x1e\x99\x9e\x1c\x16\x00\x64\x3f\xce\xee\x88\xd2\x1b\x55\xcf\x8f\xc9\x56\xe7\xd1\xeb\xd6\xf3\x6b\x3f\x61\xf7\x47\x38\xc9\x28\x46\x5d\xb4\x45\x8c\x99\xcd\x60\x4e\x1d\x68\xe6\x41\xa0\xf8\xad\x56\x5e\xe0\x07\x17\x4b\xea\x2b\x7b\xd6\x44\x07\xf6\xde\x0a\x47\x31\x8d\x4d\xc8\xeb\x84\x5b\xa8\xc7\xbe\x4a\x3b\x5d\xfd\xa8\x07\xda\xb5\x1c\x9b\xc4\x06\x5a\xe6\x75\x2c\xb8\xb6\x85\x9c\x3c\xea\x20\x30\x6d\xeb\x8a\xcc\x29\xd7\xdf\x33\xf8\xce\xc7\x4b\x6f\xcc\x7a\xdb\xa8\xb1\xa3\x57\x51\xe7\x04\x62\x15\x6f\xee\x56\xe2\xa5\xbb\xfa\xf8\xe4\x23\xbb\xec\x53\xa5\x5e\x4b\xda\xb6\x2d\x30\xab\x6a\x35\x43\x27\xaa\x3d\x96\x8e\x1b\xbf\xe6\x02\x87\x1a\xb3\xd3\xa0\x16\x51\x61\xc3\xa4\xa2\x3a\x13\xdc\x45\x69\xce\xaf\x63\xd7\x91\x5f\xb2\x99\x33\xe1\x46\x2b\x4d\xf7\x98\xc2\x16\x43\x94\x25\x2e\xcf\xe6\xa9\xd0\xeb\x79\x79\x5b\xd1\xad\x4a\xae\x56\x51\xab\xab\x55\xc0\x15\xbb\xec\x89\xc2\x0c\xaa\x93\xcc\x9e\x0a\xee\x13\x77\xc1\xda\x96\x81\x17\x5e\x1f\x8b\x6d\xe8\x5e\x48\xcf\x3a\x6b\x7f\xe9\xe1\xa8\xe1\x1d\xca\x97\x53\xc0\x46\x79\xfc\x25\x04\x29\x15\xea\xa7\x3e\x76\x10\x4f\x49\x53\xb6\xdf\x6e\x40\x18\xcc\xdd\x60\x8e\x97\xfd\xbf\x63\xe5\xc5\xef\x68\x6d\x74\x83\x38\x16\x47\xc7\x51\x2e\xdd\xc0\x5b\x62\x6a\x3c\x98\xe0\xe9\x06\x78\xbe\xf7\x23\x9e\x63\xff\x06\xbf\x4c\x92\x28\x2e\x56\x46\x5b\xff\x5d\x60\x73\xfe\x22\x89\xee\xd8\x53\x42\x04\x66\xc0\xe0\xc4\xa2\x25\x05\x13\xcf\x66\xee\x26\xcc\x26\xb1\xd9\x80\x5b\x7f\xb9\xfc\x11\x07\x5e\xf9\x64\xdc\xd8\x0c\x9f\xcd\x38\x33\x9c\xe6\xfc\xcc\xbe\xf1\xe3\x1f\x33\x98\xd4\x84\xcb\xd9\xe9\x94\xb5\xf3\x0a\xc7\x49\x14\xde\xbd\x5e\x52\x19\xd1\xa7\xbd\xdc\x50\x4b\x38\x51\xf1\xe3\xef\xf0\xad\x3c\x7d\xf6\x8c\x7e\x47\x8b\xa2\x70\xb9\x3c\x77\xe7\x57\x84\x62\xfe\xf9\x3a\xc1\xf1\x64\xba\x01\x6c\x89\xc4\xc7\xf7\x5c\x75\x3c\x2e\x5d\x38\xe3\x44\x4a\x72\x3b\x54\x76\x83\x9b\x51\xf1\xd9\xb3\x49\x92\xff\x52\x78\x1d\x13\x3c\x25\xfd\xa1\x7f\x4e\x8b\x1d\xa4\x71\x9d\x78\xc7\x26\x55\x3a\xa5\x2b\xef\x4b\x75\x0a\x1a\x4c\x66\xeb\x24\xbc\xf0\x97\xcb\x0f\x1f\xee\x37\x4d\x01\x95\xea\x16\xdb\xbc\x1d\x4c\x3d\x05\x00\xde\x4c\x41\x32\xad\x4f\x14\x13\x12\x09\x37\x5f\x92\x5f\x1b\x20\x64\x4b\xce\xe0\xec\x19\xeb\x9a\x17\x5e\x2b\x41\x18\x5d\x53\x83\x06\xe7\xd3\xac\x2a\x42\x9b\xfc\xaf\x02\x69\xa8\xf7\x5f\xe1\x8c\x17\x75\x3b\xc2\xb1\x73\xcd\xa3\x79\x52\x96\xce\x56\x99\x27\x25\x29\x60\x9e\x94\xdf\xff\xf0\xfa\xbb\xe3\xcc\xff\x91\x96\x6f\xb8\x5b\x64\x56\xea\xf9\xf1\x3c\x0c\x02\xe6\x63\xbd\x01\x6f\xbf\x7f\xf9\xaa\xea\x7b\x09\xe6\x61\xe0\x1d\xa7\x47\x8e\x0d\x28\xd5\xe8\x07\x8b\x92\x73\x26\x29\x3b\xbe\xdf\x00\xfe\xac\xec\xa7\x59\xf1\xe9\xac\xf6\x85\x7b\x68\x6e\x36\x80\xb9\x78\x66\xde\x99\xcc\x2d\xf4\xa7\x1f\xff\x5d\x1d\xcd\x86\x48\xa0\x7c\x00\xad\x6f\x76\xf0\xf0\x2c\x4e\xea\x96\x93\x79\x83\x6b\x67\x23\x5b\x3c\x9e\x6b\xa7\xf6\x87\x86\xe7\xd1\xaf\x6f\x77\x77\xed\xdc\x76\xdc\x87\x36\xb0\xca\x21\x05\xb9\x82\xd6\xea\xc2\xa9\x53\x20\x7d\x8f\x83\x2c\xaf\x34\xc2\x17\x59\x65\x6c\xae\x0b\x3e\xa6\xdc\xb5\xb4\x70\xf0\xc9\xc7\xc3\xbc\x2c\xeb\xd1\x0f\x73\x1c\x02\x3a\x2b\xe9\x91\x40\x7e\x41\x96\x40\xf1\xe0\x2d\x8a\xac\x2e\xfb\xf1\x5b\x7e\x2c\xcf\x4e\x85\xa5\x26\x72\xd7\xd3\xfc\x50\x54\x74\x24\x85\x45\x1f\x50\xb2\x12\x4b\xd1\x8d\x0a\xb6\x09\xb3\xe4\xba\x50\x3a\xe1\xa0\x92\x23\x0a\xaa\x1d\x2b\x0b\x47\x48\x76\x0f\x90\xbb\x60\x1a\x00\x41\x76\x10\x53\xab\x6e\xa9\x82\x28\xf2\xbc\x05\xb5\x72\xa2\x62\x7d\xcd\xa8\xcf\xda\x63\xce\x92\xb1\x72\xe1\x47\x71\xc2\xd8\x5e\x2e\xfa\x59\x56\xc2\xd3\xd7\x9c\x64\x07\x9d\x0a\x4b\xa7\xbe\xf4\xab\x3c\x4e\x2d\xb5\xce\x9c\x0d\x89\xb1\x4c\xb8\x9c\x7b\xac\xb6\x2b\xd8\x9d\x73\x8a\x17\xad\x0d\x7d\x91\x6f\x05\x58\x76\xce\xb5\x61\xf2\x2d\xf7\x8e\xac\x9a\x6a\x0a\xf3\x9f\xcb\xfd\x7e\x56\x8c\x9c\xb0\xa5\xe8\x5a\x5a\xc6\x9c\x55\x2b\x4d\x65\xa8\x2d\xa6\x01\xe3\x0c\x64\xbb\xca\xc8\xc0\x75\xb6\x5b\xc6\xe1\x3a\xa2\xd7\x3d\x8c\x50\xe1\x0a\x07\x8d\x86\xc8\x82\x77\xb2\xce\x0c\x80\x7a\x71\x70\x0d\x2b\x43\x2e\xd8\xc8\x0a\xeb\x80\xf3\x5b\x2b\xcf\x57\x9c\xc7\x8b\xfe\x57\x26\xa9\xa2\xbc\x64\x6b\xe2\x65\x7b\x36\xef\x1d\x8e\x89\xdb\xc3\x42\x97\x59\xf0\x3a\xe7\xbf\x7c\x46\xfb\xf2\x97\x68\xe1\x8a\x2b\xdb\xff\xda\xad\xda\x82\x38\xc6\xa7\x64\xda\x66\x81\xce\x7a\x4c\xca\x76\x03\xc1\x76\xea\xf6\x32\x10\xb5\xd3\x56\x54\xd5\xc3\x53\x96\xf6\xe2\x28\xd5\xa6\xd9\x80\x4b\x6b\x51\xed\xc9\xfa\x23\x50\xb9\x24\x43\x99\x56\xbc\x8b\x08\x2d\x19\xe4\x9b\xa7\xb6\xdc\xc2\xae\x33\x0c\x0a\x61\xfd\xcb\x55\xe7\x82\xb8\x94\x63\x9b\x26\x35\x08\xc2\xc4\xbf\xf0\x39\x8a\x8e\x76\xc1\xbd\x48\xca\x71\xda\x04\xa2\xac\x8c\x60\x69\x40\x61\x76\xcc\x48\xb1\xb7\x4d\x17\x71\x6d\x27\x8f\xbe\x48\xea\xd3\x55\x38\x04\x7a\x53\x62\xe1\x12\xd1\x32\x8d\x37\xf1\xe7\x57\xd4\xfb\x76\x50\x90\xb6\x6a\x32\x00\x9d\x6f\x69\xe5\xb6\xe4\xf4\x59\x14\x32\xcc\xc4\x12\xf3\x30\xab\x14\xb5\xc3\x53\x90\x48\xc5\x8f\x52\x27\xd6\xad\x91\xd9\x54\xea\xd7\x12\xd2\xbd\x39\x7b\xf5\x7f\x58\x8d\x5f\xca\x4d\xf1\xd6\xc8\x7f\x2f\x03\x89\xae\x60\xe9\xd6\x8d\x25\x66\x0e\xc0\x9e\x74\x7b\xe9\x2f\xe3\x44\xe2\x12\x9d\x9a\xab\x24\x32\x24\x20\x45\xf8\x22\xc2\xf1\xa5\x94\x84\x52\x12\xdd\x49\xee\xc2\xf5\x03\x65\xa4\x00\x6f\xbd\xf7\xb8\x4e\x75\x8a\x54\xa2\xf4\x8e\xaa\xc6\x60\xda\xf0\xc8\x56\x23\x8a\xed\xf1\x04\xf7\x1e\x44\xf7\x80\x7d\xa3\xed\x1a\xa0\xdf\x7d\xe9\x76\xfa\xec\xc2\x69\x45\xc5\xa9\xff\xfd\x80\xd9\x84\xae\x2e\x60\xac\xda\x13\xde\xf1\x13\x40\x91\x5c\xcc\x65\x9d\xe1\xa8\xa8\xad\x9f\x2b\xc6\x4c\x2f\xce\xac\xf7\x7f\xae\xf1\xba\x0d\x88\x15\xb2\x78\x4e\xb4\x7a\x16\x5f\x3f\xbd\xea\x2f\xba\xc7\x33\x33\x0a\xdf\x8b\x00\x07\x6f\x72\xe7\xfa\x92\x4f\xfd\xf5\x3a\xc9\xaf\x0c\xf8\x7d\xc2\x90\xdb\x80\xa2\x45\xa7\x74\x1f\xe0\xb6\xde\x07\x44\xfd\xee\x03\x32\xd3\x39\x9e\x7d\x85\xa9\x39\xae\x9b\xd9\x58\x88\x0b\x1b\x64\x58\x07\x65\xbb\x30\xa5\x3d\x37\x3c\x73\xeb\xb2\xc2\xba\xa8\xb8\xab\xd5\x92\xbb\x93\x9e\xe6\xef\x9e\x31\x83\xfe\x9b\x20\xc6\x51\xd2\xcb\xf4\xcd\x4c\xaf\xfc\x7c\x32\x61\xb6\x8b\xa2\x4d\x3b\xb5\x8c\x08\x2e\x29\x04\x7d\xfe\xf0\xa1\xec\x39\x1a\x47\x73\x81\x01\x78\x7a\xdf\x60\x37\x2e\x19\x85\x71\xdd\xb8\xeb\x76\xb3\x03\xc6\x7e\x70\x25\xb2\x02\xe6\x5f\xac\x13\x7f\x19\x3f\xf7\xc2\xeb\xe7\xf8\x06\x07\x49\x7a\xb8\x7c\x2c\xa7\x9d\x1f\xf5\xff\xf9\xa7\xaf\x25\xef\xc5\x86\xbe\x56\xb3\x1d\x2c\x6d\x5a\xe9\x06\x93\x0a\x01\x6e\xc0\x3c\x2d\x83\x99\xd8\x69\x97\xbe\x53\xf4\x26\x50\xfb\xe1\x6a\x52\xd3\xe2\xbc\x78\x6d\xd8\x77\x81\xe7\x53\x35\xc6\x75\x5f\x71\x51\xf3\xfb\xba\xa6\x8b\xbe\xac\x71\x5e\x24\x4f\xb7\x5e\x0b\x2e\xc3\xc5\xa2\xf1\x56\x90\x3d\x94\xa7\x82\x7b\x38\x76\x3b\xc7\x0c\xe2\xa5\x42\x4a\xc2\xe3\x2a\x8c\xa4\x10\x5e\x2f\x8b\xaf\x78\xef\xf9\x51\x72\xf7\x13\xcd\x0c\x12\xbf\x73\x6f\xfc\x60\xb1\x91\x0b\xcc\xca\xdd\xd8\x2b\x39\x17\xf2\x0b\xad\xac\xa2\xf4\x6b\x79\x0a\x82\xe6\xb7\xb2\xd6\xe4\xb2\xab\x76\x92\x42\x10\x67\xb3\x59\x30\xc5\x33\x76\x9e\xfa\x82\xe8\x2b\xf7\xf1\xad\x4f\x24\x48\x30\xbd\xa7\xa1\x37\xd8\x55\x94\x27\x1f\xe3\x59\xf2\x35\xfb\x45\x9a\x3d\x4e\xef\xa8\xbe\x38\x8f\xb0\x7b\xf5\x05\x7d\x97\x6d\x1b\xe9\xbb\xf4\x17\x7b\x97\xef\x27\xc5\x77\xd9\x55\xab\x27\x1f\x93\x5f\x5c\x04\xb1\xef\x68\xb8\x73\xf6\x1d\x8f\x7c\xbe\xc1\x33\xca\x9e\x37\x58\x91\xff\x86\x37\x4c\x6c\xdd\xf3\x4d\xef\x38\x99\x7d\x75\x04\xbf\x9c\xcd\xb0\x42\xf9\xef\xfb\x8b\x49\x32\xa5\x17\x0d\x3d\x37\x80\xdf\x97\x7e\x9c\xe0\x00\x47\xf1\x2c\xbb\xc7\xca\x8a\x26\x3b\xdc\x4a\x56\x6a\xe7\xf1\xdc\x49\x8d\x4c\x5c\x95\x24\x6a\x2a\x67\x26\x2a\x48\x88\x0c\xc5\xd3\x09\x9e\x82\x68\x86\x67\x5f\xd5\xa4\x6d\xce\x61\x1c\xf6\x99\xdf\xeb\x72\x3e\x25\xdf\xd2\xdf\x8c\xad\x15\xfc\x1e\xcf\xd7\x09\x91\xc9\xf9\xbd\x6e\xc3\xf3\x4d\xc9\x45\xbe\xd0\x7d\xd7\xf3\x26\x01\xb8\xbf\xc6\x71\xec\xb2\xbd\xf6\x9e\x34\xbb\xb5\x73\xb5\x6d\x81\x77\x21\x99\xde\x47\x74\xca\xf8\x5d\x13\x9e\x7d\x45\xfa\xbd\x99\x82\x60\xe8\x66\x58\xde\xbc\x88\x8c\x28\x30\x7c\xb6\xcb\xa5\xd8\x21\xbe\x31\x13\x39\x5a\xdf\x96\xe9\x69\x28\xfb\x84\xec\xcf\xdc\xcf\xaa\x72\x11\x9a\x6d\xa2\xf8\xeb\x66\x4a\x70\xc4\x46\x86\xb8\x59\xb9\x11\xbf\x34\x25\x22\x0c\x90\x8a\xa6\xc7\x2d\x9f\x67\x70\x12\xc2\x36\x93\xc9\x74\xf6\x55\xb9\x46\xd6\xb3\x42\x8d\xac\xe3\xbc\x82\xe9\x74\x03\x18\xef\xb5\xee\xe1\x79\x7b\x78\x4b\x7b\x9c\x91\x0b\x03\x98\x16\x55\x0e\x42\xd0\x0a\x95\xfc\x8b\x49\x92\xe5\xe4\x0c\x2f\x24\x7a\x3d\x4c\x6f\xce\x6b\xc0\x65\x5c\x9c\xb2\x69\x72\x19\x85\xb7\x52\x80\x6f\x25\x6a\x7b\x9d\xc8\xff\x0e\xd7\xd2\xf5\x3a\x4e\xa4\x78\x85\xe7\xfe\xc5\x1d\x3d\xb6\x92\xd3\x6a\xec\xde\x60\x20\x85\x91\x44\x36\x44\x52\xc0\x85\xc8\xf4\x0b\x52\xc0\xd0\x4a\x14\x73\x83\x19\xca\x26\x1d\xc4\x94\xc1\x6c\x52\x1a\x92\xee\x0e\xbc\x93\x66\xe4\x3a\x40\xff\x0f\xd0\xff\x03\xf4\xbf\x59\x57\xfe\xee\xf9\x1f\xd7\x7f\xbe\x7a\x6e\x34\x41\xff\xd9\x7d\x50\x7a\xd7\x00\xe4\x17\x05\x97\xdb\x66\x4d\x9a\x5f\xc1\x36\x40\xd6\xb3\x2a\xce\x7a\xdd\x66\xd5\x2b\x85\x85\x4a\x0b\xd7\x21\xf2\xd2\xfd\xeb\x6e\x88\x65\xa9\x12\x3c\x88\x5d\x55\xd1\x68\x3e\x2c\x74\xd0\x25\x0b\x48\x03\xe4\x24\x62\xb7\x59\x48\x07\x06\x90\x6f\x7d\x2f\xb9\x3c\x96\xd4\xff\x73\x89\xfd\xc5\x65\x42\xfe\xba\x08\xc9\x31\xc8\xff\x0b\x93\x1f\x2b\xd7\xa3\x2e\x20\x92\xfa\x7f\xae\xdd\x68\xe1\x07\xe4\xaf\x3c\x2c\x90\x5a\x18\x05\x37\x45\x17\x83\x0e\xb0\xb0\x34\xc3\x12\xc1\xca\x82\x60\xd0\x0d\x0d\x75\xbe\x42\x00\xb5\x60\x0f\xac\x46\x37\xf5\xe2\x3a\xa1\x9a\x05\xb5\x31\x31\xbb\x49\x25\x88\x43\x39\xf8\x54\xf7\xba\x32\x26\x2c\x06\x53\x6e\xae\x4f\x2f\x73\xdc\x80\x01\xf7\xe8\x5b\xbe\x2a\x4e\x79\xba\x48\x61\xa8\x0a\xbd\x74\x57\xd0\xe0\x91\xf0\x2e\x3d\x3d\xe7\xdd\x4f\xef\xe8\xf9\xef\x82\x73\x7a\x25\x7a\x45\xe9\xe5\x3c\x70\x44\xe9\xce\x97\x99\xfe\xb2\x35\x28\x0e\x88\x5c\x5c\x5a\x79\x73\xc8\x11\x64\xb7\x1a\x14\x47\xc2\xf3\xbd\x23\x9f\xaa\x94\xa5\x38\x11\x25\xb3\x17\xd1\xf4\x8f\x3c\xa6\xea\x67\x56\xb9\xa2\x01\x6d\xd8\x19\xb9\xa0\x17\xa4\xa7\x64\x70\x3b\xab\x3a\x25\x91\x13\x60\x34\xcb\xb4\x59\x85\xc5\xd7\xf8\x4a\x2b\xec\x1d\xd9\xc3\x53\xed\xec\xeb\xe2\x8f\xe3\xea\x49\xb2\x5e\x8f\x2a\xac\x47\x2d\xd6\xa3\x9e\x51\x18\x62\x0b\x88\xf5\x6b\x3c\x99\x32\xa8\x22\x17\xf6\xee\x0c\x9f\x26\x29\xec\x55\x72\xbf\x9c\xcd\x82\x67\xcf\xa2\x89\x0b\x82\x29\x20\x4f\x66\xc1\x06\xbc\x9e\x11\x0d\xf2\x7e\x03\xde\x93\xd3\x8c\xb8\xda\xe3\xd7\xe0\x8f\xd9\xa9\x8c\x5d\x16\xa1\x8b\xc9\x53\x1a\x71\xe3\xa4\x39\xe2\x46\x91\xba\xb9\x19\xa0\x29\xfc\x06\x33\x02\x34\x45\xdf\xc8\xce\xff\x8d\xd1\x37\xb2\x02\xbf\x5a\x10\x56\xa2\x42\xac\x2b\xbf\xe7\x95\xdf\x5e\xe5\xf7\x75\xe5\xf7\xaa\xf2\xfb\xa2\x53\x94\x09\xaa\x45\xb6\x05\x9a\x20\xe4\xe2\x4b\x1d\x9c\x57\x22\x44\x10\xe2\xd4\x22\x50\x70\x9a\xd4\x62\x50\xf8\xf1\x9b\x80\x08\x2e\x3c\xa7\xe7\xfc\x5a\x10\x0a\x26\x5e\xaa\x41\x28\xb8\xb4\xe1\xc1\x27\x3a\x9d\xbd\xd3\x97\xdc\xbf\xee\xde\xb6\x1f\xd2\x17\x38\xbb\xcd\xca\x0d\x9c\x7f\xe4\xc1\x09\x72\xac\x36\x7f\x6b\xfa\x75\xad\xe8\xf8\x8f\x53\xf5\x8c\xd6\x94\xca\xaa\x26\x5b\x29\xfd\x2a\x7d\x29\xb5\xf3\x16\xcb\x36\x85\xe3\x2e\x3b\xaf\xd2\xd1\x73\x45\x29\xf7\xae\x9d\x61\x76\xd0\x7c\x5f\xe8\x60\xfa\xe9\x94\x1c\x86\xf3\xf3\x7c\xb1\x1a\xcc\xfe\xfd\xf0\x01\x57\xbe\xa4\xc5\xf4\x43\xbe\xfb\x90\x0f\x5f\x46\x91\x7b\xa7\xf8\x31\xfd\x77\x82\xa7\x5f\x4f\x04\x64\xcd\xac\x13\xfc\xb8\xbe\xc2\xc1\x64\xca\xcf\x46\x95\x37\x5d\xcf\xcb\x3d\x7e\x09\x2f\xfc\xe2\xe3\x5b\x72\xd4\x99\x60\x40\xad\x02\xf4\xf0\x59\xe2\x91\x0c\xc7\x5e\x2a\xfd\xba\xd0\x14\x6b\x69\xbe\x0c\x89\x7a\xbd\x99\x4e\x37\xf9\x0e\x3a\x29\x9c\xb2\x1b\x0f\xf6\xd4\xbf\x9b\x89\xba\x67\xcf\x9a\x42\x3f\x34\x38\x81\x6f\x73\x11\x07\xc5\xbe\x35\x9a\x75\x44\xcc\x9a\xdb\x7c\xaa\x9b\x38\xf7\x2d\x4f\xe3\x17\x70\xeb\x5b\xc2\xad\x6f\x44\x8b\x39\x9e\x70\x71\x98\x0e\x91\xb3\x29\x37\x5f\x94\x49\x99\xba\xb9\x33\x62\x6e\x36\xec\x5f\x41\xa8\x82\x38\x9a\x83\x64\x76\x9b\x05\xb4\x60\xe2\x20\x1b\x3f\x93\x0f\xac\x1a\x36\x67\x39\x3f\x4c\xf3\xd9\x2d\xbc\xca\xc8\x82\x79\x48\x99\x29\x08\x66\xa9\x65\xa8\x6e\xcc\xc4\xa0\xd9\x2b\x71\xfa\xe1\xc3\xfd\xe6\x0b\x59\x47\x8e\xfc\xe5\xac\x68\xda\xcc\xd2\x8b\x66\x63\xdc\xdd\xc6\x05\xa2\x99\xc8\xbc\x55\xb0\x7a\xd4\x0d\x5d\xcd\x66\xac\xa0\x62\xc6\xba\x0f\x68\x23\xd4\xf6\x9a\x52\xfa\x77\x6e\x8e\x00\xd1\x14\x88\xd8\x93\x8c\xf5\x64\x1d\x45\x38\x48\xa8\x71\xa4\x30\x77\xd5\x47\x13\x5a\x71\x8a\x4d\xf8\x22\xb7\x40\x31\xb2\x7e\x3d\x49\x66\x72\xea\x43\x07\xea\x52\x63\x7a\x3c\xe9\x20\x91\x68\x1d\xdc\xa1\x2e\xc5\x09\x44\xeb\x40\x89\xe7\x97\x98\x28\x3d\x13\xe6\x8c\xc2\x50\x21\x32\xa0\x3b\x7c\x4a\xa5\xd3\xe4\x2c\xa7\x4f\x44\xe8\x13\x11\x72\x6c\x36\x1b\x37\xbe\x0b\xe6\x92\x1f\xdc\xb8\x4b\x9f\xe8\x5c\xa9\x35\x8f\xd1\x5c\x89\xb0\xeb\xdd\x51\xbf\xe8\x19\xca\x6e\xb6\x32\x29\xd0\xb5\x17\x3c\xb4\x07\xfd\xe8\xf4\x6c\xba\x99\x6e\xf8\xd2\xad\x88\x11\xd6\xe8\xb3\x67\x13\x31\x4b\x17\x99\x81\x6d\x59\xb5\xb9\x2c\x59\x38\xd9\xab\xe9\x71\x7c\xb3\x01\xe7\xb3\x1f\x26\x17\x45\x88\x7b\x71\x03\xde\x3d\x60\xc7\x65\xad\x7a\xb2\x87\xef\x1e\xaf\xe3\xa6\x5a\x6f\xaa\x06\xec\x1e\xa8\x63\x51\xad\xba\xaa\x49\x8c\x19\xb2\xe3\x4b\xb8\xe1\xb1\x41\x6a\x93\x30\x46\xa4\x8e\xef\xab\x15\xf3\x05\x77\xea\xef\x1e\x03\xe4\xa2\x12\x77\x81\x9e\x23\x3b\x85\xe6\x10\x7e\x39\x05\x17\xe5\x88\x0d\x65\x82\xe4\x47\xd5\x4e\x71\x39\x9a\x3e\x6e\x6f\xa5\x76\x88\xed\x14\xa2\xa3\xbd\x8a\xf6\x16\xd9\x1d\x6a\x97\x48\x1d\xf5\xcf\xda\x6b\xce\xe5\x57\xb7\x38\x1d\x4d\x1f\xb7\xb7\x42\xa5\x50\xb7\x38\x1d\x82\xef\x2a\x75\x5f\x14\xed\xd9\x27\x5b\xe2\x68\x9c\x74\x8c\xa3\xc1\x22\x19\x3c\x2e\x08\x2b\x8d\xa6\x50\x09\x67\x5f\x8f\x58\xff\xc3\xeb\x1f\xdf\xbd\x79\xf7\x53\x8e\x4e\xe2\x16\x7f\x0a\xa3\x02\x3f\xbe\xfe\xf6\xfb\x5f\x5e\xe7\x0f\xb3\xcb\xc8\xcd\x86\x5f\x9e\x34\x43\xaa\xd8\x6e\x20\x40\x78\xe5\xa8\xaa\xbc\xad\x86\x3a\xf8\x0b\xed\xb5\xf0\x86\x52\xac\xd5\xbb\xd7\x3f\x55\x71\x5d\x79\x53\xdb\x5e\x2b\xe1\xbb\x84\xaf\x74\x45\x6d\x71\x2e\xd8\x01\xb5\x25\xe2\xa3\xc7\x43\x6d\x5d\x3d\x0f\xde\xfc\xf2\xc6\x6f\x88\xc0\x32\x26\x6a\xab\x03\x3e\xcb\x7c\x02\xf8\xac\x32\xca\xa9\x94\xe0\xcf\x69\xb4\x29\xa6\x51\x29\xb2\xf0\x18\xa0\x10\xd0\x82\x39\x67\x3a\x3c\xf6\x84\x5a\xcd\x57\xcf\xba\x95\xc5\xb5\xa8\x40\x56\x2c\x71\x40\xdf\x4a\x8e\x46\x52\x7d\x43\x58\x76\x55\xe4\x34\x4d\x96\x7f\x53\x1c\xf7\x0c\x1d\x66\x14\xca\x48\x37\x8a\x32\x04\xe4\x32\x63\x17\xec\x54\x9b\xeb\x63\x27\x50\x42\xde\x8b\xee\x1e\x97\x25\x9c\x0e\x8d\x47\x53\x09\x4e\xc3\x03\x10\xbc\xe0\x93\xdc\x06\xd7\xb1\x19\x5c\x27\xe3\x8c\x66\xa2\x37\x65\x6c\xe8\x3a\xc1\x70\x27\xe4\x9b\xa0\x43\x62\xe4\x5b\x1d\xac\xb8\x3b\x72\xa4\xc0\x37\xfb\x98\xa6\x4e\xd3\x73\x98\x99\xc6\xe5\x33\x08\xf3\xa1\xb7\x81\x3e\xd2\x6a\xab\xb9\xac\x0b\x68\xbd\xee\x78\x8f\x16\x31\x56\xc0\x7e\x88\xe9\x49\x21\xac\x62\xf9\xd4\x1f\x23\x32\x32\xfc\x48\x88\xdd\x78\x20\x1a\xf4\xf7\x4e\xdf\x0d\x0e\xc2\xf3\xa0\x94\xe1\x20\x79\x24\x29\x21\x1c\xa4\x19\x0a\xf2\x8e\xd5\xd6\x0c\x05\xf9\x77\xb8\x8e\x84\xd7\x9f\x19\x16\xa7\x72\x5f\x2a\x5d\xba\xb1\x74\x8e\x71\x20\x71\x8f\x3d\xa5\x3a\xfe\x6a\x33\x3b\xb8\xe4\x8f\x2a\x54\xfb\x81\x0d\x7a\xb1\xde\xae\x51\xc8\x5a\xa4\x45\xdb\x00\x1e\x01\x51\xb2\x0f\xee\xde\x02\x76\x7a\x1c\xee\x8e\xdd\x9b\x56\xde\xde\x06\xed\x1d\x01\x69\xb2\x3f\xa0\x69\xeb\x96\x94\xda\xab\x76\xda\x90\xb6\x09\xe0\x8f\x6d\x73\xd9\x3e\x9e\x81\x49\xa2\x77\x58\x4c\x0c\xbf\xd7\x0f\x37\xd8\xbc\x98\xa8\x1f\x65\x1b\x66\xf0\xa7\x4b\x1c\x61\x0a\x17\x74\x53\xec\x60\x4c\x7d\xce\xa5\xbb\xbe\xcb\x4c\x29\xb1\x63\x3d\xfd\x35\x43\xd7\xa7\x47\xc6\x1c\xa8\x57\x7d\xe2\xe1\xc4\xf5\x97\x3d\xbd\xb7\x04\xb1\x08\x08\x45\xce\x23\xb9\xe4\xe3\x04\x6b\xad\x65\xfd\x60\x83\x38\xce\x86\xdc\xd8\xa9\x1e\x61\x00\x1e\x61\xf3\xec\x04\xd3\x1b\x10\x07\xb0\x0d\xa3\xf7\x28\xf8\xba\x0c\xca\xc2\x43\xe4\x65\x61\xee\x0a\xa8\xb8\x8b\x72\xd8\xbb\x14\x57\xc7\x4f\x50\x15\x23\x06\x83\xc1\xb5\x20\xe8\x4a\x48\xbe\xc2\xa9\x2b\x45\xd6\x35\xc1\xf5\x76\x80\xd4\x15\xcd\x6d\xfb\x84\xd4\x6d\x8b\x89\xc7\xef\x41\xeb\x31\xf1\x04\xe8\x99\x5d\x21\x79\x99\x6b\xb9\xd8\x07\x3f\x11\xdf\xf8\x2b\xab\x88\xa2\xc3\x5e\xb1\x6a\x9e\x3d\xab\x96\x4c\x9a\x02\xa0\xe1\x1a\xae\x8e\x5b\x8f\xe5\x21\x90\x36\x7c\xbe\x5e\x3c\x0f\xdc\x1b\x7f\xe1\x8a\x73\xc3\x8d\x6e\x28\x2f\xdf\xbc\x37\xd8\x39\x7f\x7d\xf5\xaf\x9f\xbf\x7d\xf5\xfc\x3b\xa1\x9d\xb3\x6a\xab\x6c\x5b\x77\x7d\x38\x58\x48\x8b\x3d\x26\xe5\xfd\x62\xcb\xd4\x10\x1e\x3f\xa2\xb7\x75\xd1\xf5\x93\x9a\x9d\x3f\x4e\x6e\xff\xf9\xf7\xff\x7d\xf5\x63\xa7\xd9\x29\x68\x18\x48\xe0\x9e\x4a\xc1\xdf\x25\xc7\x50\xad\xfc\x53\x2d\xe5\x2d\xa5\x4a\x07\x59\x44\xc5\xf3\xa8\x41\xe5\xdb\xd2\x9f\x5f\xc9\x75\x27\xd0\xfa\xe6\x0f\x2b\xf9\x48\x4b\xfd\x3a\x61\xf4\x96\x5e\xd1\xea\x7b\xf6\x89\xc5\xdc\xec\xda\x27\xad\x43\x9f\x4e\xf2\x1a\xb5\xae\xde\xa4\xdc\x39\x84\xec\x15\xcc\xad\xa4\x88\xa4\x4c\xbb\xd8\x67\x5d\x34\x30\xe2\x80\xa5\xd1\x8a\xaa\xe4\xbd\x2d\x8b\xe7\x7a\x18\xd3\x8a\x90\xdb\x9e\xde\x1a\x93\xa6\x0b\xa9\xd3\xca\x17\x41\xd5\xa7\xad\x5f\xee\x0e\xe2\x6d\xfc\x20\x3b\x7d\xdc\x97\x2f\xe4\x17\x38\x11\x6d\x74\x79\xae\xd0\xed\x17\xa2\x6c\x18\x81\x9b\xf8\x37\xf8\x28\x9e\x47\xe1\x72\xc9\x13\x6a\xf4\xa2\x43\xbd\x82\x8f\x95\x1c\xab\xe4\x8e\x85\xa3\x78\xaa\x99\x16\xfe\x76\x85\xbd\xbb\x37\xcf\x1b\x12\x6f\x3f\xcb\x4f\xaa\x3c\x6b\xb6\x18\xbd\x5d\x0b\xba\x58\x4b\x6e\x5d\x20\x85\xcc\x32\x36\xa3\xa6\xdc\xd6\xc6\x59\x1a\x75\xbf\xfb\x09\x27\x15\x96\x97\x98\x86\xc3\x6a\xaa\xda\x14\xd8\x9b\xd2\x4f\x3a\xa8\xfc\xa5\x23\x79\x6d\xd4\x0d\xba\x7e\x73\xcb\xf1\xfa\x7c\xdf\x8d\x77\xcb\x90\xbc\xb5\xa7\xe7\xa1\x77\xd7\xb9\x93\xe9\x5c\xf0\xf9\xaf\x9d\xcd\x9b\x86\x50\x9d\xff\xbe\x41\xf2\xb3\x13\x5e\xba\x05\x9d\x16\x12\x80\xcb\xd9\x0e\x59\x89\x15\xc9\x62\xa6\xf5\x37\x67\x34\x44\xf4\xab\x46\xf2\xa3\xf3\x8c\x93\xc4\x0f\x16\xf1\xf1\xf3\xe7\x4c\x4c\x1c\x27\xe1\x15\x75\xcb\xa9\x62\x66\xce\x04\x26\x05\xf1\x1d\x52\x1a\xcf\xaf\x1e\xce\xa6\x4a\x46\x04\x4e\xe5\x97\xd4\x74\x18\x46\x6f\x5e\xc9\xa2\x7b\xd8\x8e\x81\xb0\x24\xe9\x6d\xb8\x90\xfc\x40\xba\xf5\x93\x4b\xc9\x95\x3c\xff\xe2\x02\x47\x38\x48\x24\x3a\x9e\x01\x46\xd6\xbc\xce\xbd\xc6\x0f\x04\x25\xd6\xdc\x69\x25\xf0\x43\x58\xef\xc5\xb0\x5e\xf6\x58\x0b\x7d\xba\x0a\xb5\x76\x1d\x6d\x19\x2e\xfc\x80\x9e\xcb\x69\x5e\x72\xca\x77\xfc\x48\x9f\xa9\x6a\xd4\x1e\x50\x3a\xc5\x5f\xba\xf1\x3f\xb9\x68\xea\xae\xbf\xd5\xb6\xbb\xfd\x05\xbf\x1f\x21\x16\x3b\x1f\x9f\x30\x18\x3b\x17\xcb\x53\xee\x65\x5e\x79\x9a\xcb\xed\xe9\xb4\x37\x48\xba\x10\xa2\xea\xa9\x9c\xb2\x9e\x2f\x96\x61\xf8\xfa\x76\xdd\x00\x46\x4d\x39\x28\x8b\xa4\xb5\x35\xc0\x9d\xc9\xe5\x19\x1a\x25\xf0\x58\xb6\x87\xd9\x65\x35\x02\x9c\x9e\x42\x13\xa8\xa5\x43\x0f\x6f\xee\x88\xa3\x15\x8b\xed\x97\x6c\xd7\x7c\x50\xbc\x9f\xb0\x8f\x45\x5b\xde\x9e\x4e\xa4\xc7\xae\x5e\x96\x04\x44\x83\x41\xb9\x65\xb6\x06\x84\x24\x03\x4a\x0f\x5d\x84\xa2\x27\x94\xc3\xf2\x88\x76\xa9\xad\xba\x10\xb8\xb9\x62\x64\xed\x19\x48\x4e\x48\xc3\xee\x92\x6f\x0b\x9d\xfa\x29\x40\x75\x52\x69\x35\x93\x7e\xc1\x4a\x5d\xe9\x78\x6f\x42\x6c\xdf\x49\xb6\x8c\xae\xb3\xd2\x24\xa0\xbb\xc1\xd3\x13\x95\x2c\xfe\xc3\x6e\x43\x85\x46\x91\xd2\x1b\x40\xd0\x9e\xe8\xae\x7f\x18\x18\xba\x5b\x47\x68\x44\x0b\xf7\x4e\xba\x74\x6f\xb0\x74\xe3\xc7\x7e\x42\xd8\x59\xfa\xf9\xc7\xb7\x52\x72\xe9\x26\x92\x1f\x67\x71\x1a\xdd\x40\x5a\x07\x57\x41\x78\x1b\x48\x11\xe6\xd0\x04\x29\x0e\xa5\xbb\x70\x2d\xcd\xdd\x80\x46\x6c\x5c\x84\xe4\xcd\x73\x77\xfe\xff\xb3\xf7\xed\xff\x6d\xdb\x58\xbe\xbf\xe7\xaf\x60\xb8\xbd\x1e\x71\x03\xc9\x92\xfc\x8c\xe6\xaa\x89\xeb\x24\xd3\xec\xa4\x4d\x36\x4e\xdb\x99\xf1\xe8\x66\x68\x12\x96\xd8\x50\xa4\x0a\x42\x76\x5c\x47\xff\xfb\xfd\xe0\x49\x00\x04\x5f\x92\x9c\x38\x9d\xe9\xee\x67\x62\xf1\x01\x02\x07\x07\xc0\x79\x7e\xcf\x07\x8a\xe1\x38\x83\x0e\x4a\x53\xec\xa4\x88\xde\x45\xb0\xcb\x8a\x8f\x60\xe9\xd0\x39\x39\x7d\xe5\xbc\x23\xa7\xe3\xee\x19\x0c\x10\xc4\x2f\x9f\x39\x17\x66\x33\x27\xa7\xaf\xb2\xbb\x74\x92\x36\xe2\xaa\x36\x02\x48\x61\xc5\xc4\x51\x6e\x47\x22\xa3\xea\xc6\x51\xf2\xa1\x64\x4e\xc4\x3b\xbe\xf4\xcb\x51\x37\xc2\x2c\x9d\x0b\x5b\xd8\x21\x50\x53\x98\x5d\x76\x9a\x29\x3b\x0f\x6f\xf3\x2f\x29\xa5\x60\x89\xc7\xa7\xec\xa2\xd1\xdb\x30\x0d\xb2\xe6\xbd\x65\x7d\x1b\xe8\x1e\x4d\xf7\xf4\xf5\x8f\x67\x3f\xbd\x7a\xff\xec\xf5\xe9\xd9\xfb\x9f\xde\xbe\x52\xbc\xb3\xea\x00\x93\x34\x5d\xc0\x04\x22\x27\x49\x11\xbc\x84\x08\x71\x7d\x72\x1f\xb8\x32\x8c\xf4\xfd\x45\xec\xeb\x5d\x79\x0b\xfd\x90\xf2\x59\x98\x06\x54\xe8\x90\xfe\xe2\x26\x63\xde\xd4\x7f\xde\x7c\x3d\xda\xcf\x51\xa6\xa3\xf3\xb3\x93\x1e\xd3\x5f\xcf\x29\x39\x04\x14\x0e\xc7\x47\xd0\x49\x52\xec\xf8\x4b\x3c\x4b\x51\xf4\x3b\xcb\xb1\x6f\x4b\xe7\x2f\x75\x6c\x31\xd1\xe8\x6e\xba\xdb\xe6\x1c\x6a\xb6\x5d\x4b\xf8\xa1\x0b\xe8\x4c\x91\x9f\x90\xbd\x7a\x01\xd1\x3c\xca\x32\xb2\x37\x91\xbd\xf2\x2a\x82\xd7\x39\xa2\x6e\xcf\x39\xc9\x3e\xb0\x8d\xd6\x0f\xe7\x51\x12\x65\x98\x96\xb1\x75\xa2\x4b\xba\x6d\xe3\x59\x94\xd0\xfb\x4e\x36\x4b\x97\x71\xc8\x8e\x01\x9f\x6a\xad\xbd\x8d\x16\xce\xe7\xdd\x53\xef\x70\x97\x02\xee\xae\x1f\xc4\x42\xaf\xc2\x73\x7e\x4c\x7f\xd9\x7d\xcb\x4e\x85\x18\xfa\x28\xd9\x26\x19\x5e\x3d\x3f\x79\xfb\xa3\x41\x0c\x8e\x7f\x9f\xc1\x60\x89\x22\x7c\xd3\x4d\x20\xbe\x4e\xd1\x87\x28\x99\xee\x2e\x50\x1a\x2e\xe9\x94\x76\xfd\x20\xce\xb6\x43\xa8\x17\x69\x1c\xa7\xd7\x94\x54\xd3\x65\x14\xc2\x2f\xb9\xb5\xd7\x42\xec\x26\x57\x8a\xff\x3e\x48\x93\xc0\xc7\x22\x02\x80\xea\xfa\x33\x04\x2f\xbb\x38\x65\xe8\x1e\x5d\xf8\x5b\x2b\x2d\xdf\x54\x60\xef\xd0\x71\x59\xa3\x4a\x2b\xa8\xa7\xf7\x45\x97\x7e\x8c\xfe\xb1\x18\x3c\xbb\x2a\xd1\xa5\x9b\x82\xa0\x2a\x28\xdb\x2c\x91\xcd\x1e\x9c\x25\x6f\xb6\xc6\x81\x59\x1b\xef\xb4\x48\x73\x09\xe6\x92\xfc\xf1\xc1\x5c\xd4\x12\x72\x64\x84\xab\x06\x96\xad\x46\x1e\xc9\xed\xa0\xb6\x92\xa3\xb6\x12\x2a\xd6\x44\x89\xa1\xfc\xf3\x3a\xe1\xb8\x9e\xa3\x87\xfd\x22\xc4\x6b\x19\x7e\x00\x4f\xa3\x6f\x1d\xd6\xb2\x0d\xa0\x51\xbd\xdb\x26\xc4\x34\xb9\xa9\x41\x59\x4e\x6a\xe1\x2a\x2c\xbd\x5d\x13\x02\xdb\x44\xa3\xcd\x50\x90\xe3\xee\x91\xb7\x7b\x4b\x14\xb9\x9e\x0e\xee\xa0\xa0\x50\xd8\x1e\x36\x06\x58\x80\xea\x9c\x94\xe3\x4e\x52\x58\x06\x3b\xc8\x05\x83\xb7\xc0\x1c\xe0\x9a\x27\xf7\xc3\xf1\xb7\x0a\x98\xa7\x0a\x09\x52\x40\xb8\xe0\xed\x2e\x50\xfa\xf1\x46\x80\x7b\xa2\xa0\xd0\x02\xd9\x46\xe9\x34\x75\xbc\x95\xf7\x40\xc0\x39\xac\x89\x8e\x61\x43\xc6\xf8\xf4\xe9\x76\x75\x27\xe8\x18\xb8\x1e\x1d\x83\xad\x15\x3c\xfe\xf6\x16\x32\xdc\xdd\x07\x89\x89\x8e\x80\xbd\x15\x5b\x66\xea\xa4\xd4\x41\x30\x94\x82\x2f\x14\x9a\x17\xe0\x0b\xa6\x81\x5b\x4c\x37\xbf\x6f\x62\xb3\xd3\x59\xe3\xb4\xa2\x7f\x2b\xb3\xd4\xda\xa4\x7d\x19\xfb\xd9\xac\x2b\x83\x41\x2c\xbe\xfe\x38\xea\xd2\x87\xca\xdf\xfa\x3a\x1d\xfc\x97\x29\x9a\x77\xe5\xef\xfb\xea\xe3\xff\xfb\x77\x2f\x06\x7d\xfc\x62\x77\x2d\x99\x84\x5b\x73\xb6\x12\xf8\x66\x23\x97\x14\x1f\xd0\x78\xb7\x73\xfe\xff\xce\xff\x39\x99\x78\x8f\x76\xa7\x0d\x82\x39\x5b\xba\x8c\xd2\x04\xc1\x0c\xd6\xd6\x1b\x2e\xc5\x39\x27\x03\xa2\x0a\xa9\x7e\x59\x39\x73\x05\xfa\x79\xcf\x8f\x23\x3f\x63\x35\x96\xe9\x72\x76\x3d\x10\x61\x38\x6f\xf0\x58\x9d\x1c\x10\xa4\x09\xf6\xa3\xa4\xae\xac\xb3\x3c\x0d\xac\x65\x6b\x89\x38\x95\xe4\xa7\xaf\xa5\x5c\xad\x14\x85\xce\x7b\xbd\x5e\xd2\x63\x6a\x51\x8f\xe8\xcb\x3d\x1a\xbe\x7b\x42\xf1\x6d\x27\x20\x1e\xfb\xe7\x02\x70\xaa\x3b\x98\x9c\xf7\x19\x5a\x5d\xf6\x20\x1b\x77\x07\x1c\x84\x95\xa1\x92\xbb\xe7\xae\xf7\xe4\x5f\xdf\xb0\xdd\x96\xc8\x5e\xab\xf3\x6f\x6e\xe3\xd5\xe4\x5f\xa3\x58\xa9\x88\xab\x96\x77\x4e\x40\x66\xa2\x66\x8b\xec\x7c\x72\x75\xb5\x46\x10\x2a\xe5\xbf\x29\x4a\x97\x8b\x5d\xc8\x44\x8b\xdd\x60\x06\x83\x0f\x17\xe9\xc7\xfb\xa2\x3f\x84\x2f\x7e\x3d\x84\xbf\x13\x1d\xd4\xea\x8b\xd3\xd3\xd7\x65\x54\x0e\x05\x88\x0d\x25\xb0\xa3\x1a\x7e\x60\xae\xe9\x01\x70\xa3\x64\xb1\x64\x99\x15\x87\x60\x4f\xc2\x84\x92\x5f\x43\x09\xf2\x79\x3e\x38\xa2\x5e\xa7\x21\x0d\x17\x14\x54\x72\x25\x7a\xea\xc0\xa2\x91\xec\x17\x72\xcd\xd9\xb3\xd4\x31\x27\xa2\xc2\xcd\x97\x0e\x0a\x2f\x59\x91\x57\xcb\x55\x99\x74\x41\xa6\xc8\x8f\x39\x8c\xa5\x24\x42\x9a\xb4\xd1\x6b\x6a\x59\xe3\x8b\x69\xb9\x96\x9e\xd1\xdd\xe9\xbe\x70\xec\x3f\x86\x37\x7f\x7d\xfe\x53\xfa\x6b\xc9\xe9\x22\x18\xb4\xe2\x98\x19\xa8\x19\x3a\x43\x5b\x06\x10\xad\x3b\x65\x09\xeb\x3d\x06\x43\x4b\xec\x59\x53\xd6\xd9\x8c\x3d\x94\x49\xb8\x4f\xbc\xb1\x1d\xe0\xf5\x1c\x5e\x3d\xfd\x9a\xe0\xd5\x97\xff\x81\x57\xff\xf7\x80\x57\x0f\xaa\xf7\xa4\x17\x03\x74\x96\xbd\xdc\xff\xdd\xbe\x27\x51\x2b\x70\x71\x63\x52\xd0\x61\xe8\x92\x2a\x8b\x74\x51\x4b\x66\x1f\xe7\x86\x3a\x6e\xac\x70\x81\xfb\x0e\x7e\x24\xff\x9c\x8a\x43\x13\xb8\x6f\xfd\x30\x4a\x5d\xe0\xbe\xe2\xb9\x58\xcf\x95\x24\x3b\xcd\xb8\x47\x1d\xa9\xc5\x55\x4d\x1f\x71\x59\xaf\x80\x0c\x46\x93\x60\x2c\x0c\xaf\x66\x02\x6a\x5a\xd9\xc5\xa4\x63\x1c\x87\x3a\x97\x16\xf8\xa0\xd3\x44\xca\x05\x25\x85\x35\x4b\x90\xd2\xf9\x1d\xd6\xab\x92\x02\xc3\x7a\x5c\x10\x79\x1c\xa7\xcb\x60\xa6\x82\xd1\x03\x5a\x95\x52\x71\xc9\xd6\x0c\x46\x95\x49\x4a\x06\xa4\x94\x42\xfe\x1a\x46\x84\x28\x97\xfc\x61\x86\xc3\x12\x0f\x4d\x0c\x8a\xb2\xa7\xb5\xb8\x25\xa5\x92\xd7\x7a\x25\x0a\x54\x14\x7a\x9a\x07\x39\xd1\x43\x6b\x5d\x4a\x6b\xb1\xa0\x04\x2b\x75\xcd\x0b\x62\x1f\x48\x2a\x4b\x80\x37\xaf\x6c\xc0\x23\xa2\x0f\x79\xec\xf0\x82\x6f\x80\xae\x9c\x23\x72\x85\xfb\xab\x58\x68\xdb\x80\x0f\xa0\x9b\x3f\x63\x8e\xa7\x58\x9a\x81\x56\xd0\x77\x75\x8a\xd2\x6c\xff\xae\x1e\x1d\x36\xb1\x46\xe2\x6b\x91\xa9\x7b\xaa\xef\xbf\x55\x74\x6a\x65\x71\x84\x81\xc8\x4b\xfd\xb7\x21\x87\x2d\xa9\xb7\xde\x93\x27\x40\xd4\xcc\xd4\x59\xea\xc5\x13\x79\xb5\xdc\x28\x60\xd6\xb9\x34\x82\x7c\xd7\xcb\xb6\x2d\x93\x30\xa5\xc8\x4b\xf4\xfd\x30\x47\xa7\x97\x70\xf0\xc8\xbc\xe0\x1b\x78\xee\x71\x23\x3c\x77\x3b\x98\x7b\x2a\xd0\xd4\x63\x17\x64\xdc\x34\x2a\xae\x89\x7d\x0b\x44\xdc\x56\x3d\x85\xd8\x21\x4c\x52\x86\x63\x0e\xe3\x27\xfc\x5f\x6a\x85\xc9\x20\xa6\x06\x0a\x1e\xfb\x0b\xe3\xde\x14\x62\x09\x84\xdd\x61\xfc\xe6\x95\xdd\xa5\xaa\x0b\xc7\xf1\xa6\x50\xd3\xd4\xd6\x41\xba\x40\xb6\xdf\x4a\x28\x75\x4a\x65\x69\x23\xc9\x2f\x51\xbb\xcb\xea\x5c\xbd\x4e\xaf\x4c\xfe\x35\x32\xae\x90\xcf\x90\x25\x23\x3f\xe3\xba\x8f\xf4\x47\x7a\x38\x7d\x95\x5e\x43\x74\xea\x53\x09\x33\x5b\xc4\x11\xee\xb8\x3d\xd7\xeb\xfd\x9a\x46\x49\xc7\xed\xba\x8c\x5e\x94\xdf\x4c\xe8\x6c\x4e\x59\x15\xea\x9d\x2e\xa0\x07\xc5\x9a\x74\x7c\xb5\xb1\x6a\x7b\x70\xa5\x02\xb1\x73\xba\x8d\xe1\x6a\x05\xb2\xf1\xb2\x13\x6b\xf0\xb1\xf1\x36\x40\x81\x23\xb3\x59\xc9\x13\x1b\x00\x03\x97\x40\xeb\x1a\x5f\xca\x41\x64\xfd\x7a\xc4\x52\xeb\x9b\x44\xef\x50\x30\x4b\x63\x55\x23\x0c\x2b\x31\x4b\x03\x10\x36\x34\x59\x5b\x0e\xea\xfb\x62\x4e\xf8\xf1\xd9\x6e\xb8\xfb\xe8\x59\x89\xe8\xde\xd4\x9c\xb0\xf0\x13\x57\xe6\x9e\xd1\x21\xf3\xc1\x66\x5d\x3a\x5a\x27\x3f\x7d\xee\xa3\x6d\x41\x99\x91\xfb\x64\x5b\xa0\x42\xd3\x7d\x61\x94\x37\x57\x87\xff\xbb\x3c\x9d\xdb\x73\xc3\xbf\x98\xa5\x54\xca\xf0\xff\x36\x66\x52\x85\x29\xee\x13\xaf\x12\x5d\xf7\xbe\xb0\xea\xdb\x9f\xfe\xe7\xea\x0c\xfd\x6d\xb8\x29\xab\x0a\x76\xdc\x0a\xa7\x0a\x63\xc0\x9a\x8c\xca\x3e\xf8\x15\xf1\x69\xce\x10\xf7\x81\x4d\xd7\x34\xd3\x7e\x26\x8f\xf1\x9b\x17\x7f\xdd\xfb\xfe\xe5\xf1\x8b\xad\x45\xb1\x3d\x57\xec\x58\x6a\x94\x67\xb5\xa9\x4b\x1a\x28\xc4\x7f\x0d\x79\x68\x93\x62\x65\xe6\x1c\x49\x66\x61\xda\x0a\xb2\xe8\x2b\x45\xe9\xde\x90\xcb\x57\x4a\x34\x45\xa5\x04\x97\x00\xd4\x40\x82\x43\x10\x12\x66\xee\x5e\x46\x71\x09\xe6\x78\x2b\x8b\x7f\x6e\xeb\x8f\xff\x63\x3e\xff\xf7\x30\x9f\x67\xd5\xcb\x3f\xfe\xe9\xf4\xef\xa7\xd7\xf1\x61\x8d\x0c\x9e\x1f\x58\x95\xc2\xb8\x86\x03\x61\x30\x6f\xa5\x04\xde\x57\x8d\x44\x39\xf6\x4d\x06\x7d\x14\xcc\x2c\xa1\xe5\xe2\x25\x21\xfd\x0f\x6c\x5f\x7c\x9f\x37\x29\x80\x35\xf3\xf6\xcc\xd0\x6d\xd6\x5e\x7e\xb6\x5a\x1b\xcc\x6f\x53\x28\x1e\xde\xbd\x32\x20\xe7\x7e\x2e\xe4\xa9\x35\x31\xd9\xbb\x25\x87\x6a\x93\x57\x3f\xc0\x9b\x30\xbd\x4e\x2a\x5f\x16\xcf\x4c\x74\x3c\xa0\x3d\xe0\x66\xbc\xff\xaa\xb0\x70\x00\xdc\x45\xec\x07\x70\x96\xc6\x34\x51\x5a\x1a\xe5\x94\x8b\x32\xb4\xde\x5f\xe2\xf4\x32\x0d\x96\x84\x2f\xf2\xbf\x27\x02\x6f\xc8\x98\x33\x8d\xd0\x05\xca\x4b\x5b\x9b\x4d\xfd\x6a\x12\xd6\xdc\x66\xbb\xb7\x6d\xa6\x9a\x71\x2b\x52\x8c\x5b\xdc\x74\x85\x4c\x53\x56\xa7\xe3\x97\x5a\xb3\xa8\x51\x26\x27\x99\xed\x90\x50\x6e\x7f\xfa\x24\xf8\x91\xda\x61\x04\x3b\xd9\xde\x12\xf7\x3e\x7d\xea\xb0\xd2\x92\xde\xca\x28\xb7\x27\xdf\x86\xde\x8a\xcf\x3d\xb9\x37\xd8\x1b\x8f\xc7\x90\xec\xe4\xa7\x69\x48\x43\x34\x4d\x44\xb8\xd5\xca\xd3\x4c\x13\x42\x29\x49\xea\x6d\x1a\xbe\xe5\x45\x0f\xf8\x9a\x49\x43\x7f\x28\xe7\x5c\xd4\xb2\x79\xf1\xa6\xd1\xbe\xaf\x4a\x65\x51\xe5\x81\x9b\x81\xa8\xfe\xc0\x25\x22\x44\x14\xa4\x68\xd1\xe5\x49\x27\xdb\xf0\xb1\xe7\xa7\x6e\xf4\x9f\x53\xf7\xdf\xe3\xd4\x4d\xab\x4f\xdd\xa3\xc3\xbd\xc1\xf0\xd9\xef\x7b\xf6\x53\x77\xba\x8c\x42\x97\x7c\xd2\x47\xd3\x3e\xdb\x64\x67\xcf\x22\x3f\x4e\xa7\xaa\xd9\x9f\xb0\xe2\xc9\x12\xcf\x5e\xa4\x68\xce\xff\x7c\x83\xd2\xcb\x88\xc6\xd3\x68\x4f\xb1\xb2\x2c\x3f\xc0\x64\xf9\x92\xd5\x4b\x20\x7f\x9e\xc1\x85\x4f\x13\xf3\x5c\xe0\xce\xd3\x90\x6a\x61\x7e\xde\x9c\xe5\x92\xd6\x66\x45\x6b\xed\xbe\xcd\x4b\x38\x6c\xfe\x52\xfd\xe3\xaa\xfb\x3f\xa4\xd8\x3d\x49\xb6\xf0\x03\xaa\x90\x2f\x7c\x84\x23\xee\x3e\x79\x1a\x06\x59\x05\x0c\x16\x73\x41\x1e\x2b\xfa\xcd\x70\x8f\xab\x3f\x2d\xc1\x7a\x79\xbe\xa2\xbf\x58\xe4\x99\xb9\xe6\x0e\xc4\xc5\xa6\xbd\xa3\x49\x9e\xc9\x18\x7e\x47\xb8\x26\x7b\x99\x5c\xa6\xae\xee\x09\x15\x5f\x9e\xa5\x73\xd8\x4d\xfc\x2b\x32\x93\x7e\x94\xf0\x3f\x09\xbd\x98\xea\xe5\xa3\x1b\xe5\x36\x77\x2c\xc1\x04\x77\x23\xde\x66\x1f\xf0\xff\xe3\xca\x58\x03\xa7\xac\x8a\xa7\x2d\x50\x09\x87\x13\x90\xf7\x65\x3d\xaf\x6a\x21\xff\xd0\x2f\xe4\xa4\xd3\x8a\x3a\xf6\xa4\xf4\x63\x51\x87\x69\x37\x4e\xa7\x29\xcf\x07\x65\x40\x50\xc2\x68\x51\x9f\xc4\x57\xf0\x6f\x56\x0f\x58\x52\x7c\x4b\x03\x2e\x01\x14\x2a\xc9\x4b\x0d\xb2\x92\xa7\x25\xbf\x2d\xd2\x45\x7a\x05\x51\x77\x0e\x93\x25\x67\x3c\x56\x7d\x5f\xe0\x07\x3f\xf3\xb1\x1f\xc0\x04\xcb\xb4\xe7\xa7\x8b\x34\x8b\x44\xb6\xa8\x1b\xc3\xcb\x56\xb8\xc9\xc6\xe7\xab\xd2\x73\x31\x8a\x68\x82\xd3\x1a\xad\x3b\x0a\x20\xc8\xde\x1e\x38\x77\x7f\x64\x41\x10\x25\x70\xe1\xb5\xc9\xc4\x2d\x7a\x4d\x09\xd9\x1a\xfe\x43\x14\x59\x1a\x1e\x83\xf3\x7c\xf7\xe2\x68\xe0\xf2\x62\xbe\x8f\xb5\xc3\x64\x29\x0c\xa0\x09\x84\x19\x70\x9f\x72\xe8\x0d\x3a\xae\xdd\xff\xa6\xff\x17\x4a\x76\xc8\x5c\xa0\x97\xb2\xd7\xcb\xe1\x88\x30\x93\xbd\xc3\x1a\x28\x33\x51\xf0\xbc\x14\xd1\xac\x50\x75\xcb\xfe\x63\x48\xed\x93\x74\xa2\x81\xf9\xe1\xea\x40\x8e\x26\x84\x53\xeb\x14\x0c\xe9\x67\x35\x10\x22\xd5\x8e\xaa\xd5\x12\x10\x11\x29\x2a\x17\xb2\xee\x0d\x54\xb6\xe4\xd1\x09\x51\xd6\x25\xba\xc5\x15\x2c\xc4\xcf\x08\x28\x20\xfa\xda\xab\x34\xf0\x63\xca\xb6\x4e\x94\x75\x63\xf6\xcb\x52\xd3\xe5\xe9\x0c\xc1\x4b\xf5\x54\x60\x9b\x63\x8f\x19\xdb\xf2\x72\x08\x96\x43\x23\x0c\x5c\xf5\x8b\xa2\xa3\xd2\x20\xd7\x7a\x41\x36\x5c\x3e\x5c\x4d\x5f\xf7\x0b\xda\xc2\x1f\x58\x16\x7e\xce\x56\x56\x8a\xae\xcb\x1c\x8e\xcd\x0e\xc1\xb7\x5d\xde\x76\x2b\xd0\x18\xb3\xe5\xc6\x3b\x54\x83\xc7\x8b\xb7\xf7\x06\xd6\x40\x95\xe1\x63\xb0\xd7\xb7\xf7\xab\x71\x8f\x8a\x0f\x0e\x8f\xad\x8f\x1a\x04\xb2\x4c\x95\x52\x67\xcb\x0d\x66\x69\x9a\x41\x47\x4a\x6a\x59\xf9\xf9\x5a\x37\x81\xb6\x83\x53\x6b\xb7\xac\xcc\x44\xf3\x33\xf4\x24\x9c\x47\x89\xf3\x46\x8a\x95\xdb\x3c\x48\x1b\xae\xab\x8d\x0e\x53\x63\x5d\x1d\xac\xcd\x7a\x6b\x74\x7c\xc3\xf3\x74\xcf\x76\x9e\xee\x6d\xed\x3c\xd5\x86\xd1\x10\x18\x54\x72\xf2\xa1\x3c\x57\xbf\xb9\x0d\x83\xd5\xae\xc2\x75\xa0\x7a\x4b\xde\xd3\xb7\x64\x4b\xac\x65\xd9\x71\x4c\x2d\x79\x0a\x77\xaf\x8d\x33\xda\xf0\x54\xa6\xe5\x23\x5d\x06\x76\x1e\x9e\x60\xc5\x9c\x68\xed\xc4\x36\x0e\x6a\x47\x3f\xac\x0f\x0a\x87\xb5\xfd\x80\xe6\x21\xd5\xc3\xa3\x26\xe7\xf2\xc6\xe7\xab\xaa\x63\x72\xcd\x53\xb0\xec\x91\x26\x29\x58\xba\x2c\xe6\x77\x6f\x9f\xee\x1b\xc9\x14\xcf\xc8\xb3\x7d\x35\xf2\x77\x8f\x8c\x6b\xf8\x58\xad\x73\xb7\xc1\xc1\xdd\x70\xad\x6e\x7c\x78\xeb\x1b\x8d\x3e\x15\x35\x9d\x6b\xb5\xef\x34\x78\xc5\x72\x70\x1d\x69\x30\xb1\x9a\xc6\x47\x0e\x25\x66\x96\xd6\xcf\xa9\xb9\x9f\xf8\xd3\xf2\x73\x6a\x5b\x3c\x7e\x38\xb1\x28\xb3\xd5\x32\x92\xb2\x3a\xaa\x78\x39\x0c\x7a\x8c\x3d\x33\xd7\xa2\x4d\xad\x57\x16\xea\x4b\x70\xd5\x0f\x6c\x22\x8c\x93\x38\xfb\xa2\x0c\x65\x17\xba\x0e\xc8\x74\x96\x0a\x83\xad\xfa\x65\xe1\xe1\x3d\x30\xdc\x2f\x15\xd5\x1a\x8b\xa8\xcd\xa4\x33\xc1\x38\x5b\x15\xcd\xf2\x46\x37\x97\xcb\x08\x1f\xf3\xbd\xf7\xeb\x96\xc8\xf6\x37\x50\x06\x6c\xd3\xf8\xd8\x58\xfa\x5b\x51\x9d\xb7\x8e\x0a\x58\x20\x86\x05\xbb\xee\x9f\xff\xc4\xea\xff\xe7\x2f\xc8\xb9\xcf\x1c\x3c\x83\xf3\x0c\xc6\x57\x30\x93\x70\x82\x89\xb8\x1b\x52\x8c\xd1\xec\x3a\xc2\xc1\x2c\x4a\xa6\xce\x75\x14\xc7\xf4\x09\x26\xcf\x51\x60\xb0\x60\x89\x28\x1c\xfa\x55\x04\xaf\x7b\xe5\xbd\xb3\x57\x9c\x6b\x34\x47\xcd\x95\xc5\x3b\x97\xa8\x07\x36\x0b\xd5\x60\x7b\x16\x2a\x6d\x18\xed\xed\x54\x86\x70\xfd\xcd\xad\x3c\x7a\x57\x52\xce\x96\x93\x6b\x97\xb3\x55\xd1\x4c\x91\xb9\xb9\x7c\xb8\xa1\xec\x2d\x57\xd4\x67\xb2\x8a\x95\xca\xdf\x96\x8e\xdc\x81\x60\xd2\x6f\x28\x7c\xef\x73\xe1\x7b\xf8\x45\x85\xef\x2a\x59\xfb\xa0\x42\xd6\x3e\xd0\x64\xed\xe2\x48\xbe\x4a\xe1\x7b\x78\xbf\x84\xef\x61\xa9\xf0\xad\x49\xda\x5b\x3a\xb1\x0c\x36\x1e\xac\x2d\x5f\xf7\xff\xbd\xe4\xeb\xfc\x54\xbd\x87\x92\x75\x9f\x4c\xe4\x5d\x49\xd6\x83\x63\xb2\xf1\x6e\x26\x59\x97\xf1\x36\x82\x7e\xe8\x70\xb0\x9f\xed\x89\xd3\x07\x25\xbb\xb2\x10\xfe\xe4\x07\xcb\x18\xd3\xb6\x35\xd7\x48\xe5\x55\x3e\xdb\x26\x9f\xd4\xe2\xf7\x24\x3d\xec\xb2\xd5\x56\xa8\x9e\xa4\xe1\x67\x24\x39\xfb\xda\xe7\xa3\x77\xf5\xf7\x94\xc6\x7f\xe4\x64\xb8\x43\x4a\x7f\xa8\xf0\x91\x6f\x99\xcc\x1f\xae\x3e\x23\x8d\x2b\x3e\xa6\xb4\xfc\x57\x78\xb3\xfb\xb3\x90\x02\xef\x8e\xc8\x11\x8d\xec\xd8\xaa\xc3\xa4\x8e\xd8\xca\x27\x3f\x1f\xd1\x1b\x7c\x54\xf9\xc2\x4b\x95\x2a\x9b\x51\xbf\xd6\x7e\xe1\x07\x71\xd6\xcd\x72\x35\x49\x2b\x7e\xae\x5f\xb7\x8f\x9f\x15\xf5\x72\x4e\xd3\x04\xa3\x34\xce\xca\x4d\x31\xc3\x02\x0b\x2c\x33\xe8\x30\x68\xec\x8d\x65\x7d\x97\xa7\xf3\x0b\x67\x27\x4f\x27\xa2\x20\x0b\x27\xa7\xaf\x72\x4d\x9a\x2b\xc7\xf1\x8d\x03\x13\xff\x22\x86\x84\x07\x19\x42\x7c\x10\x2f\x33\x16\x0b\x5e\x95\x32\xb4\x5e\x49\xf1\x35\xf8\x94\x10\xa6\x47\x2b\x65\x7d\x4e\x46\x6d\xf2\x55\xe5\x13\xef\xd8\x93\x8d\xb9\xb4\x66\x3b\x28\x32\xc3\x1a\xf5\xe1\xd6\xa1\xf3\x22\x8d\xa3\x20\xfa\xac\x67\x5d\xb3\xef\x2a\x1f\x79\x23\x9e\x6d\x48\xed\xcd\x28\x42\x76\x80\xcf\x4e\x8e\xea\x8f\x2a\x5f\x78\x4b\x1f\xfc\x2c\x84\xf0\x97\x78\xd6\x9d\x43\x3c\x4b\xc3\xcf\x4e\x8f\x46\xdf\x56\x3e\x74\xb2\xc4\x33\xe7\x07\xfe\xfc\x06\x47\x47\x83\xa0\xc2\xbb\xdc\xce\xef\xd3\x0a\x36\xa3\x67\xfe\x00\xab\xd0\x1c\xd2\x1f\x64\x31\x99\xc3\xda\xd6\x62\xb0\xa8\xee\xe6\xb9\x6f\x69\x7e\x0b\xb1\xba\xc5\x90\xe8\xbb\x0e\xda\xcd\x0d\xdd\xf0\x62\x39\xdd\x4d\xfc\xab\x68\xea\xf3\x2a\xb6\xb5\xf6\x26\x83\x1f\xec\xd3\xe5\x5a\x5d\x61\x16\x6f\x17\x8a\xa6\xb3\x35\xdd\x5d\x0d\x6c\x4c\x1b\x3a\xbb\xbe\x87\xf1\xa2\x81\x0d\xa6\xd2\x60\x73\xd7\x7e\x91\x03\x9b\x5f\xe4\x60\xab\x7e\x91\xdc\xae\x48\x7d\x0a\x93\x35\xeb\x18\xb7\xa2\xca\x16\xac\x83\xbc\x5c\xe5\x95\x30\x2e\xf7\x0b\xe5\x7e\x7e\x7e\xfe\xf6\xec\xe5\xeb\x1f\x95\xdd\x67\x6d\x63\xe0\x56\x5e\x90\x64\xa6\xc8\x78\x43\xb3\xc8\x93\xdd\xa0\x5b\x5d\x6c\xee\x9e\xcf\xd1\x33\xb5\x0e\xd4\x3d\xa3\xbc\x5a\x58\xaa\xc4\x96\x5e\x35\x0d\xe5\x65\xa4\xbe\x9a\xd9\xf9\xde\xcf\x66\xd1\x69\x8a\x16\xce\x2b\x42\x8b\xfb\x30\x3f\x47\x6d\x5c\x22\xeb\xce\xab\x3a\x97\x6f\x9f\xbf\x79\xfd\xfe\xe5\xd9\xd9\x4f\xcf\xbf\xae\x95\xf5\x06\xa5\x57\x51\x08\x9d\x17\x10\x86\x17\x7e\xf0\xe1\x33\x4d\x9e\xc5\x43\x41\x5d\xd1\x25\xfe\x8f\x56\x49\x30\x85\x96\x0f\x9a\x39\x3e\x8c\x1b\x0d\x65\x59\x51\x47\xdf\xbd\x1b\xdd\x4f\x69\xbe\xce\x6f\x2c\x53\x04\x73\x07\x32\xe5\xe6\xc7\xdc\xff\x2b\xdc\xbc\xb9\x8b\x22\x6f\x7a\x53\x7b\x0d\x91\xe4\x61\x82\xa3\x80\x41\x07\x6f\x47\xd3\xab\x94\x19\xa9\xee\x10\xf2\x5c\x53\xbe\x30\x2a\x53\x25\xf5\x20\x67\x5b\xce\xcb\xbe\xe2\x30\xe7\x71\x08\x08\xca\xd2\x9d\x6e\x63\x27\x79\x51\xfc\xda\x07\xe7\x79\x06\x2c\xff\x9c\xb8\x26\x52\x61\xd7\x17\xbd\x1a\xec\x14\xcb\x44\x2d\x41\xba\x49\x18\x13\x15\xd7\x11\xf6\x63\xf9\x11\x5e\x9f\x90\xb2\xc1\x62\xd1\xbd\x80\x97\x29\x82\xdd\xec\x43\xb4\xa0\xbb\x67\xcb\x0a\x96\x96\xe5\x31\x00\xee\xc5\x12\xe3\x54\xa0\xe7\xed\xab\xbf\x99\x69\xf7\x88\x06\xf6\xc5\x51\xf0\xc1\xb5\xe2\x06\x8b\x24\xe1\x74\x01\x93\x42\x50\x49\xc5\xf2\x14\xff\xbd\x4a\xa7\x51\xf9\xc1\x56\x19\x3e\xb5\xe6\x41\xf6\xe5\x47\xfd\x2a\x9d\x3a\x25\x83\x6e\x30\x64\xca\x29\xb4\x03\xe6\x2a\x15\xc8\x62\x69\xc2\x2a\x05\xd2\x3f\x69\x17\x81\xfb\xd4\x47\x91\xcf\xce\x36\x42\xf1\x2e\x4e\xa7\xd3\x18\xe6\x71\x41\xbc\xb6\x60\xbe\x40\xf9\xd0\x6c\x91\x52\x12\x53\xc5\x65\x23\x71\x70\xca\x85\x7d\x77\xb3\x80\x17\x3e\x38\x22\x0d\x18\x6b\x00\x98\xb8\x69\x79\xbc\x95\x98\x0c\x2a\x66\xec\x15\x52\x17\x2a\xbe\x73\x97\x81\x89\x8e\xb2\xeb\xea\xe5\x8b\x8b\x34\xab\x99\xf2\x35\x63\x27\xee\xa0\x52\xb0\xfd\x23\xe7\x1c\x98\x7e\x73\xbd\x74\x7d\x1e\xc8\x31\x0a\x28\x1b\xec\x37\x62\x03\xab\x4c\x53\x16\x26\x7d\xd7\xb3\xb1\x56\x55\x62\xdb\x77\xda\xef\x6f\x64\xdd\x28\x5b\x40\xf3\xcd\x9b\xea\xf8\x38\x4a\x96\xd0\xb9\x8e\xf0\x2c\x5d\x62\x27\x4e\xa7\xd3\x28\x29\xdd\xdf\x9c\x26\x7b\xdc\x56\xa4\xe2\xc1\xde\x26\xc9\x92\xeb\x4c\xe0\xf6\xe4\x80\xfb\xb5\xbb\x93\xa9\x75\x7c\x27\x8c\x2e\x2f\x21\x0d\x78\xa6\x7e\xcb\x2f\xbe\xd5\x0f\xbe\x9a\xad\xbe\x8c\x80\xff\xd9\xf7\x37\x66\x08\x63\xdf\x1f\xae\xbf\xef\x0f\xbf\xfa\x7d\xbf\xaf\xee\xf3\x0c\x26\xce\x10\x61\xb5\x28\x75\xb2\x84\x8a\xbb\xfe\x44\x60\xb8\x29\x4d\x7d\xd5\xc7\xc0\xa0\x91\x6d\xeb\x6b\x53\xbd\xf6\xd8\x56\x9f\x2e\xf1\x9a\x4a\x57\xba\xc4\x9f\x55\xeb\xba\x6b\x67\x94\xf6\xa5\x3b\xcd\xbf\x6a\x40\xc0\xbb\xd8\x27\x36\x73\x53\x1d\x59\xbc\x54\x47\xeb\x3a\xa9\x0c\x20\x0d\x5a\x3d\xe8\x03\x95\x43\x58\x90\x5a\x8a\x5e\x3e\xdb\x30\x11\x48\x61\x45\x35\x90\x4e\x04\xcc\x25\x69\x02\x1b\x6e\x4d\x8e\x76\x5e\xb5\xcc\x98\x55\xba\x51\xbd\x53\x99\xdf\x19\xf4\xcb\x3f\xd4\x0e\x04\xa4\xd8\xf6\x63\xc5\x39\xe5\x27\x53\x88\xd2\xa5\xd8\x8f\x9e\x8a\x2d\x5f\xb1\x23\x1a\x9b\xbe\x75\xe7\xd8\xec\xe8\x76\x3e\x63\xc2\x01\xfb\xaf\x72\xfd\xe5\x5d\x6a\xbd\x0e\x1b\xbd\x58\xbc\xfd\x98\xcc\x77\xe5\x1c\x6e\xe1\x24\x23\x8b\x79\xab\xf0\x2f\x07\xa0\x24\xe1\xd8\x82\x14\x03\xb6\x90\x3d\x6c\x7d\xa1\xac\xe7\x6b\xe0\xad\x6d\x25\x6c\xe3\x18\xec\x0d\xad\x4e\x00\xaa\x58\xa9\xeb\x6a\xaf\xc4\x61\x75\x72\xfa\xea\xec\xfd\xf3\x1f\x4f\xbe\x7b\xf5\xfc\x99\xab\xe6\x86\xe5\x86\x43\xbb\xe2\xc5\x74\x32\xe6\x58\x98\x4c\x34\x08\x87\xad\x47\xbc\x68\x48\x7f\xad\x9c\x0a\x1a\xb9\x86\x1a\x12\x96\xfb\xcf\x8f\x7b\xc1\xc3\x6e\xd7\x71\xad\xde\xfe\xbf\xbc\x7c\xf7\xfe\xec\xfb\x93\xdc\x9f\xd3\xed\xfe\xf3\xe3\x1e\xb4\x7a\xff\xdb\x04\x08\x6d\xf9\xe2\xb0\xce\x9f\x56\x5f\xc7\x0b\x26\x0c\x6a\x31\x09\x7c\xc2\x7c\xdd\x28\xeb\x52\xcc\xc6\x2e\xdb\x1e\xa3\xe4\x2a\x0d\x78\xbc\x0f\xab\xed\xc5\xab\x75\xc9\xea\x5d\x4a\x59\x04\xfa\x3b\xa6\x6a\x50\x94\x75\xa9\xa7\x14\xb8\xe4\x9f\x2e\x4e\xc9\x47\x7c\x9a\xcd\x48\xf6\x5b\x17\xa7\x69\x8c\xa3\x05\x61\xf7\xdf\x5c\xe0\x4e\xc9\xb5\x25\x8a\x64\x71\x30\x04\x7f\x85\x01\xee\x5e\xdc\x90\x3e\xd1\x42\x5d\x5d\x51\x54\x0c\xfa\x01\xed\x40\x12\xba\xc0\xcd\x52\xc4\x9f\x5a\x26\xd1\x6f\x4b\xd8\x8d\xc2\x36\x20\xcb\x76\x00\x5d\x0d\x65\x79\x59\x8f\xb2\x5c\x2c\x20\xa6\xff\x8e\x3a\x9d\xac\x14\x85\x99\x2c\xa5\x0e\x87\x45\x16\x2a\x62\x8f\x82\x54\x77\xbc\x15\xd5\x78\x0a\x77\x69\xb9\xf8\x8e\xb7\x52\x1c\x53\x12\x59\x99\xae\xda\x1e\x7f\x0f\xa8\x98\xcc\x12\x82\x79\xf5\x01\xde\x2c\x10\xcc\xb2\x53\x72\xfe\x92\x37\xa1\x28\xa4\x1e\x46\xd9\xc2\xc7\xc1\x8c\x17\x3a\x87\xd7\xce\x0f\xe9\x32\xe3\x75\xcf\xb9\x80\xef\x99\x20\xcc\xcc\xb0\xd3\x04\x82\x39\x2b\xbc\xe6\x81\x4c\x05\x48\x8e\xf4\x47\xb8\xf5\xa8\x09\xfc\xb2\xe5\xbd\xea\xb6\x55\xaf\x5e\xa3\x9a\x58\xa5\x6f\x57\x7f\x47\x23\xb6\x0b\xce\xe3\x96\x5f\xd2\xdf\x37\xbe\x95\xa9\x80\xd2\xcb\x4a\x40\xe9\x14\x2c\xeb\x01\xa5\xc9\x2e\x8b\xc8\xea\x67\x9c\x7b\x5f\xca\xd4\xfc\xbc\x7c\x73\xf1\xc3\x9b\x47\xaf\x36\x2a\xbd\xa5\xa1\xfd\x1b\x03\xa5\xe7\x69\x05\xda\xbf\xa8\x8f\x69\x87\xf5\x17\x56\xb9\xf2\xea\x8c\x43\xe3\xfc\x95\x6f\x48\x99\xd6\x68\xd5\x82\xf7\x5f\x6c\x85\x59\xc7\x8a\x6d\x14\x5a\x70\xab\xa2\x3c\x4b\x1a\x97\xc6\x1e\x03\x3e\x60\x98\x9f\xbe\x27\x92\x76\xda\xd1\xea\x27\x69\x72\x33\x4f\x97\x3c\x5e\x01\xfb\xd3\x1f\xa5\x5c\x1d\xb9\x66\xc5\x14\x6b\x88\x41\x1d\x9c\x7e\xf9\x19\xb5\x49\x85\x15\x2b\xf7\x7f\xb1\x9a\x3c\xd1\xd5\x4d\x37\x48\x43\x38\x8f\x58\x4d\x66\x15\xd4\x5d\xbf\x57\xf1\xd6\xe6\x75\x7a\x4a\x5f\x90\x12\xeb\xad\x5e\xa6\x70\x0a\x71\xb1\x24\x61\x7e\xe0\xad\x56\xf5\xdb\xd0\xaf\xd7\x98\x63\x6a\xd8\x10\xed\xf3\x57\x96\x38\x8a\xb3\xdd\x30\x9d\xef\xd2\x2a\x01\x02\x87\xe3\x0e\x8a\x13\xa9\x93\x2f\x67\xb4\xc7\x4e\xf3\xce\x2d\x82\x8b\x74\xc4\x6e\x46\x09\xfd\x14\x4f\x13\xee\xb8\xe4\x56\x16\xe1\x14\xdd\xec\xa6\x51\x18\x74\x17\x2c\xd6\x0a\xb9\x1e\x08\xd3\x79\xc9\x4b\x61\x3a\x77\x3d\xc0\x17\xce\xc8\x75\x81\x38\xbd\x55\xc2\xae\x40\x9a\xd0\x62\x96\xfa\xc5\x28\x89\x34\xfa\x53\x11\xe0\xbd\xad\x56\x29\xbb\x13\x47\x19\x86\x09\x44\x19\x2b\xa5\x19\xa6\xf3\x9e\xbc\xd4\xf1\x56\xe0\x3a\x8a\xe3\x67\x30\xc3\x28\xbd\xe1\xb5\x92\x5a\xb4\x4e\x46\xaf\x0b\x23\xf9\xf7\x7a\x08\xce\xd3\x2b\x48\xbe\x11\x46\xe1\x4b\x5a\x4e\xab\xec\x0b\x6c\x62\x79\x7d\x4f\xf6\x43\x6f\x96\x5d\x1b\x77\xfa\x00\xf7\x2e\x51\x3a\x7f\x83\xd2\x79\x94\x41\xaf\x93\x77\xe3\x32\x4a\xc2\xd3\x34\x84\xdf\xdd\xfc\xf4\xf6\x15\xbb\x9e\xa1\xc0\x2b\xf6\xcb\x0f\xc3\x8e\xd2\x28\xb8\x9d\xc3\x2c\xf3\xa7\x70\x04\xc7\xdf\xf2\xea\x15\x52\x96\x02\x6c\x06\xf2\x3b\xf4\x37\x11\xb2\x88\x94\xd4\x6a\xbd\x93\x0e\x74\x83\x34\x8e\x61\xc9\xd9\x0b\x5c\x48\xb8\x45\x7d\x46\x79\xdd\xbc\x67\x7b\x3c\xf6\x6f\xd2\x25\xce\x76\x17\x10\x05\x30\xc1\xfe\x14\x92\xbb\xcb\x39\xad\xd0\x9b\xdb\x43\x32\x73\x05\x01\x5a\x2a\x61\x5b\x87\xbd\x5f\x7d\xd8\x5f\x1f\x7d\x5c\x44\x7f\x5f\xfc\x62\x3f\xec\x69\x5d\x07\x8a\xf8\x8f\x60\x8e\x95\xcf\x69\xe5\x06\x30\x8e\x75\xe8\xfc\x32\x58\x7c\xbd\xea\x75\x9f\x57\x70\x36\xe6\xc0\x31\x7e\x77\xb3\x00\xa5\x71\x4c\x6b\x3c\xef\x83\xe1\x11\x3f\xc7\xf6\xc0\x41\x7e\x3c\x3e\x66\xe7\x7b\x34\x9d\xe1\x91\x4b\xcb\x85\x53\x70\x6c\x76\x85\xa9\x68\x1a\xec\xfb\x21\x18\xd0\xd6\xf6\xfa\x13\x26\x84\x1c\xe9\x47\x34\x3f\x9e\x0f\x4b\x51\x76\x26\x06\xc8\x1f\xfd\xe4\xd1\x04\xb8\x57\x11\xc2\x4b\x13\x77\xb9\x45\xf6\xa4\xab\x05\xc3\x33\xf0\x6a\x04\x33\x26\x30\xe7\x36\x01\xe9\xe0\xe2\xf7\xcc\x54\x2f\xed\x9c\x3f\x16\x5c\x99\xf8\x38\xba\x82\x9c\xa0\xe4\xe8\x50\xfc\x19\x4c\x5e\x00\xee\x53\xa1\xfc\xb3\x6f\xba\x4f\x39\xf9\x29\xec\x59\xfe\x13\xa7\x8b\xfc\xd7\xa9\x84\x5c\x0a\xe2\x08\x26\xf8\x2c\xfa\x1d\x9e\xca\x98\x3f\x22\x01\xb1\xb9\x23\xf2\x06\xf9\x77\x9f\xff\x7b\x30\xb1\x8e\x49\x6b\xd4\x14\x85\xd4\x07\x2d\x5f\x6b\x6f\xaf\x74\x8b\xb1\x8f\x54\x30\x62\x33\xcd\xb1\x88\xb8\xa4\xb5\x57\xfc\x41\x71\xf9\xd6\xc8\xb4\xd3\xc2\x5c\x8b\xae\x38\x63\x98\xd4\x64\x2b\xe7\x76\x48\x79\x9f\xfe\xaf\x9b\xe1\x1b\x1e\xc3\xa8\xc7\xcb\x6a\x79\x81\x7d\x3d\x70\xd5\x84\xa2\x7a\xcc\x47\x72\x9c\x5f\x3a\xe2\x83\xd0\x3d\x47\xfc\x9b\x11\xf3\x12\x18\x7e\x25\x37\x8e\x92\x0f\x94\xab\x2a\xc3\x6f\x39\x47\xde\x44\x30\x0e\x37\xf4\xb8\xab\x5a\x02\xab\x8c\xa1\x2b\x05\x74\x09\x9f\x1b\xbd\xce\x47\xc1\x8a\x41\x30\xd2\xed\x35\x33\xc0\x36\xe8\x7c\x08\xb1\x1f\xc5\x0d\x3c\x80\x85\xde\xb3\x37\xbf\x5c\xef\x59\xe0\x2e\x8f\x73\x96\xba\x08\xa8\x48\x35\x25\x07\x42\x57\xf3\xdb\xd1\xe6\xe0\xc7\x85\x9f\x84\x30\xa4\xe6\xa9\x22\xc2\xb1\x7d\xf7\xec\x5b\xc6\xc6\x39\x0b\xa3\x25\x04\x54\x1f\xa9\xdc\x0d\x64\xb1\x5c\x6b\x2b\x93\xf5\xdd\x19\xa6\x46\xca\x11\x1b\xea\x90\xc0\xdd\x56\x93\xd8\x30\x48\xbe\x91\xa7\xc0\xb5\x33\xc5\x41\x4d\x16\x65\xbb\x34\xe4\xc3\x92\x29\xe5\xc0\x76\x07\x0c\x25\x4d\x47\x9f\x63\x56\x6e\xc6\x1f\x16\xcf\xb4\x8a\x4e\xd7\x07\x79\x1b\x07\xa0\xaf\x3c\xa4\xfc\x6a\xee\x43\xac\x57\xc7\x55\x47\xe2\x01\x99\xec\x6c\x11\xfb\x37\x23\x27\x49\x13\xf8\xe7\xb5\xce\x06\x56\x76\xf7\x73\x1e\x0d\x9f\xe5\x08\xd8\xfb\x9a\x76\xfe\x3d\x1e\xf4\xff\x15\x6c\xf3\x77\xd1\xd5\xad\xed\xe9\xb6\x8d\xbc\x6c\xf7\xdd\xbf\x2f\x7b\xae\x46\xd1\xcf\xb0\xc1\xe6\x7e\x50\x6b\xfa\x4e\xfd\x2e\x79\xc8\x2f\xf6\x35\x58\x49\xfe\xd8\x1a\x5b\x49\x71\xa7\x16\xee\xfe\x41\xe1\x0b\xda\x37\xd7\xde\x5f\xb5\x10\x33\x73\x2f\xe2\xee\xc5\x38\xcd\x60\xa8\xef\x5a\x95\xdb\x9c\xee\x52\xb5\x9f\x21\xb2\x54\x69\x83\x30\x35\x73\x46\xf2\x17\x5b\xe2\xdc\xfc\x1c\xc1\x6b\x43\x65\x1b\x94\xcc\xa0\x41\x71\x4d\x53\x73\xc8\x9a\x6b\x7a\xf8\xea\x1f\x8f\x61\x96\xd5\xfa\xd5\x6b\x9d\xf0\xc3\xe6\xee\xcf\x41\x33\x0c\xe2\x3a\x63\x32\x91\x84\x32\x17\xb8\xd9\xf2\x42\x38\x39\x99\x13\x52\xfa\x38\x93\x14\x77\xa9\x9f\x92\x39\x37\x93\x94\x6a\x9c\xf2\xa4\x01\xae\xac\x24\xb8\xc4\xd0\x30\x42\x33\xb3\x0a\xdf\xf8\xca\x9c\x99\x34\x49\x8d\xfa\x50\xa9\x27\x94\xfb\x36\xb9\xa9\x83\x79\x4c\x83\x19\x0c\x3e\x50\x39\x96\xf6\x24\x4d\xba\xd7\x51\x12\xa6\xd7\x2e\x70\xdf\x73\x3d\xf9\x8c\xa9\xc9\xef\x99\xd2\xfa\x8a\x69\xc9\xfc\xd7\x3b\xda\xe5\xf7\x01\x8c\x63\x3a\x56\x7a\x91\xfc\x41\x75\x36\xc5\x03\x4c\xcb\x39\xb6\x30\x9a\x5b\xcd\x56\xc2\x68\x4e\x4b\x71\x72\x26\xce\xfd\x56\xbd\xcb\x14\xcd\x7d\xfc\x12\xc3\xf9\x19\xf9\x3c\xb5\xae\x66\x95\xa6\x75\x1f\x48\x03\xb2\xb0\xba\x22\x71\x01\xdc\xb6\xb0\xa4\x72\xcb\xcc\x41\xbf\x0f\x08\x2d\xbe\x67\x3f\x8f\xfa\x80\xd3\x77\x44\x97\x1e\x23\xcf\x48\x9a\x50\xda\x5a\x55\xb9\x55\x6d\x7c\x3e\xe8\xf7\x27\xec\x12\xa1\x6b\x6e\x62\x25\xbf\xa8\x91\xb1\x89\xf5\xb3\xfc\x3b\xdf\xf0\xda\xf4\x79\xc3\xfc\x42\xc7\xfd\x2f\xf7\x91\xfc\xae\x97\x1b\x83\xc6\x63\xf6\x2c\x1b\x21\xb7\xa8\xf2\xb3\xac\xc7\x2c\x38\x3d\x7f\xb1\x88\x6f\x68\xef\xc0\xf9\x2d\xf3\x0c\x8f\xe4\x07\xae\x22\x78\xbd\x48\x11\xee\x78\xab\x09\xeb\xfc\x5b\x18\xc0\xe8\x0a\x9e\x60\x8c\xb2\x36\x96\x67\x42\xff\x57\xd4\x22\x49\xbb\x74\x4e\xad\x77\x5d\x66\xa3\x74\x27\xe3\x04\x5e\x3b\x92\x79\x3a\x6c\x7a\xa7\x10\xb3\x7e\xb1\x45\xdb\xe3\x7b\x98\x07\xcc\xdb\xc2\xac\x69\xb9\x23\x67\xdd\xf5\x3c\x6e\x91\x84\xb4\x03\x0f\x2c\xbd\x30\x59\x75\x2c\xc7\x87\xbd\xdb\x18\x62\x27\x19\xc7\x2a\xbd\xf2\x41\x8a\x3a\xb9\xb0\xc7\x39\x8b\x50\x7e\x67\xa7\x93\x3c\x1a\xbb\x7f\xfe\xbd\x4b\x97\xc9\xc8\x19\xb8\x1e\x48\x56\x2b\x40\x97\x21\xe7\x61\xbe\x8f\x84\x1d\x61\x34\x54\x8c\xb1\xc2\x9f\x22\xe7\xf3\xa1\x36\x9f\x4f\x6e\x57\xa3\x5b\xce\xe2\xe6\xc0\x79\x63\xde\x6a\xe5\x79\x80\xcf\xf8\xe8\x96\x4d\xf9\x48\x75\xea\xea\x2e\xd9\xbc\x01\xba\x96\x24\x83\xfd\xe9\x32\x4d\x31\x44\xe7\x28\x8d\xe1\x58\x84\xe9\xb0\x28\x9d\x3f\x79\x0f\xa2\x4b\x42\x20\xd6\x52\x32\x1e\x00\x34\xd6\xf8\x95\xb4\xfa\x5d\xba\x4c\xc2\x28\x99\x9e\x52\xcb\xd9\x5b\x18\xe0\x8e\xd7\xc3\xe9\xe2\x11\xee\x31\x63\x1a\x9b\xa5\x47\x09\xf0\xc7\x32\x40\x21\x4a\x12\x88\xd8\x8d\x2e\x7a\xc0\x46\x0e\x71\x4e\xa9\x1f\x7c\x3c\xeb\xcd\xfd\x8f\x9d\x3e\xf0\x85\x69\x7f\xb9\x08\x7d\x0c\xc9\x14\x66\x1d\xed\xd2\x19\xa5\xd9\x1b\x1e\xd6\xdb\xf1\x56\x2b\x40\x0f\x7e\x8d\x1a\x6a\x75\x6b\xc2\xff\xf4\x89\x17\x11\xca\xf0\x49\x12\xcc\x52\xd4\x81\xc0\xed\x99\x76\xe3\x6f\x9d\x65\xec\x7c\xeb\xc4\x91\xeb\xad\x80\xe9\xba\x81\x8c\x73\xf0\x58\x32\x0b\xe7\xe3\x6f\x07\x4a\xd1\x61\x79\xf3\x7c\x30\x79\xa2\xfe\x18\xdd\xae\x28\x79\x05\x49\x38\x7b\xed\xec\xc0\x87\xe3\xc2\x9c\x89\x53\xc3\xf3\x6e\xd9\xad\xac\x70\x0b\x2c\x7c\x94\xc1\x97\x09\xee\x40\x41\xb1\x6f\x50\x7a\x3d\x56\x46\x9c\x66\x30\xc3\x1d\xa2\x08\x02\xf1\x59\xe5\xc9\x1e\x65\xde\xde\xef\x2f\x09\x4b\x8f\x07\x0f\xc4\xac\xcb\x06\xb2\xe8\x22\x8e\x92\xa9\xec\x32\x93\xa4\xbd\x07\x49\x25\x1b\x24\x1a\x1b\x7c\x5b\xd8\xe1\x2a\x19\xb0\xaa\xe5\x27\xa4\x65\x3f\xcb\x5e\x45\x19\xa6\xce\x1e\xd7\xbf\x48\xaf\xa0\xeb\x8d\xd4\x1b\xdc\x3b\x25\xee\xad\x88\x00\x76\x5b\x37\xa4\xf2\xf7\x41\x29\xf9\x13\x5a\xcc\xb9\x84\x9a\xe4\xe6\x6a\x45\x96\xac\xe2\x4b\xca\x6a\x7d\x49\x73\xff\xe6\x02\x76\xa3\xa4\xcb\x89\x65\x73\x23\x99\xcf\x54\xbe\xff\x75\xfa\x91\x89\xca\xd8\x5d\xf8\x09\xb4\x56\x46\xaf\x70\x78\x6d\xcf\xd9\x95\x54\x3b\xbb\x76\xa7\xf3\xb7\x2f\x7f\x58\xbe\xb6\x3b\xbb\x58\x65\xe9\x26\xde\xac\x63\x30\x2c\x73\x10\x69\xe6\x96\xc7\xb9\x6e\x51\xd4\xa1\x0f\x8b\x3a\xb4\xa9\x3c\xd7\x19\x18\x0a\x5e\xb5\x5c\xd3\x73\x1d\x53\xa1\xca\x35\x29\x37\x9f\x29\xee\x33\x9b\x14\xb5\x18\x16\x0d\x7a\x19\x91\x03\x99\xc5\x9d\x14\x75\x50\x45\x99\xc9\x33\x53\xac\xe3\x4b\x93\x04\x06\xd8\xad\x4c\x48\x69\x60\x7b\x09\x38\xc8\x6d\x9b\x60\x71\x35\xe2\x86\xda\xe5\xb4\x4f\x36\x2c\x86\x73\xac\x80\x7e\x54\x9a\xac\x6a\x75\xc7\xea\x20\xa7\xea\xee\x36\x8a\xaa\x36\xf5\xc6\x5a\xfd\x70\x20\x6c\xa3\xc3\x3c\x8f\x42\x98\x7f\x06\x2c\x56\xd8\x62\x35\xad\x99\xa9\x36\x59\x29\xcd\x06\x5e\x63\x9c\xb1\xc7\x35\x6d\x14\xad\x1b\x65\xa7\xea\x0a\xe0\xda\xaa\x4c\x4c\x02\xae\xd0\x2b\xc9\x26\xe8\x07\x64\xf2\x7f\x4d\x69\xc5\x74\xa9\xcb\x86\x51\xd8\x8d\xa8\xba\xe1\xea\xf4\x12\x91\xbd\x44\xc7\x6d\xa1\xff\x99\x7b\xac\x16\x2f\x85\x2a\x95\xba\x04\x94\x04\xd4\xe0\x5c\xb5\x53\x54\xb7\x3a\x2d\x4f\x27\xce\xe8\xe1\x20\x97\x72\xf9\x6a\xd7\x64\x30\xd6\x14\x5a\x26\xbd\x04\x7e\xc4\x9d\x8e\x37\xfe\x56\x8a\xbe\x45\x61\x23\x8e\x46\x69\x12\xdf\x74\x83\x59\x14\x87\xce\xb7\x0e\x17\x3b\x18\x53\x8d\x2e\x89\x3c\xc8\xee\xfd\x09\x40\xef\x81\x79\xd8\x9b\xf3\x26\xa5\x3c\xec\xad\xec\x12\xa2\xe8\x89\x94\x7c\xa7\x10\x13\x0d\x2b\xba\x58\x62\xd8\x71\xa3\x90\x28\x0e\xc5\x7e\xfe\xeb\xfc\x32\x45\xe3\x3f\x7d\x73\x8b\x57\x7f\x9a\xfc\xcb\x13\x72\xb7\xa6\x19\xb2\xae\x93\x9e\x4f\x5c\x90\xf4\x16\x3e\x82\x89\xd0\x3d\x3d\xe0\x5b\x04\xbf\x9e\xba\x3d\x23\x2a\xdd\x43\x43\xfc\xf4\x6e\x11\x97\x5c\xb8\xb3\x62\xcc\xce\x57\x57\xaa\x58\xa8\x97\x5e\x5e\x66\x50\x88\xf5\xc3\x07\x3e\x7f\x61\xee\x7f\x64\xd7\xc6\xf2\x4a\x94\xf0\x2b\xf0\x91\xbb\xf8\xe8\x52\xe1\xcb\x31\x3f\x40\xb7\xbf\x62\x23\xfa\x65\xd9\x92\xdb\x77\x4d\x39\x0a\xd5\x0b\x10\x4a\x76\x7b\x9d\x08\x01\x5c\x7f\x30\xb8\x11\xa9\xf0\x85\x08\x9a\xed\x89\x14\xa8\x5a\xa4\xf8\xdf\x17\xbf\xde\x04\xe8\x77\x58\x22\x52\xa0\xc8\xb7\xca\x14\x79\x66\x7e\xad\xdd\x76\xcf\xc8\xc0\x8f\x61\x78\x71\x63\xe4\x71\x29\xee\x9a\x36\xe9\x75\x6e\x5d\x8a\x6b\x9e\x95\xd2\xf6\xb0\x2d\x64\xd0\x89\xa3\x46\x0b\x0c\xd6\xf0\x0c\xf8\x09\x44\x2b\xf2\xcd\xa2\x30\xa4\x89\x83\x18\xf1\x12\x08\xec\x20\xe2\xb0\xf2\x46\x86\x4d\x9d\x98\xc1\xde\x1a\x96\xbc\x15\x46\x59\x23\xf9\xc4\xee\x9c\x70\xb1\x7f\x21\x02\xa2\xba\x03\x71\x91\x16\x2a\x53\x38\x94\x0c\x88\x9c\xab\xba\x37\xb1\xba\x65\x83\x3e\x5d\x3e\x19\x5a\xbe\x63\x4e\xba\xc1\x81\x5e\xcc\x50\x00\x5e\x89\xe4\xba\x72\xcf\x9c\x31\x1e\xd1\x32\x07\x80\x2c\x75\xb9\xb8\xc5\x78\xec\x62\x9f\x2b\x82\xb5\xf5\x56\x14\x73\x7d\x1d\xf9\xcc\xaa\x8d\xa7\x64\xe3\x74\x14\x4a\x34\x4b\x53\x2f\xf1\x02\x6d\xd9\x5f\x69\x4b\xc9\x73\x0b\x31\xe0\x7b\x46\xb2\x97\x4c\xc6\x70\x05\x7e\x87\x8d\x71\x79\x5e\x98\xee\x42\xd7\xd6\x03\x4b\xe1\x57\xfc\x24\x83\x62\xda\x58\x2b\xf7\x57\x25\xe1\xea\x59\x98\xc7\xd0\xd7\x00\xcd\x55\xd1\x7d\x7d\x8c\x8a\x3f\x3a\xd5\x99\x81\xa6\x84\xf0\xca\xcd\xb5\x48\x5f\xe3\x4d\xde\x2f\xdb\x90\x55\x52\x6c\x92\x53\xfc\xc7\x9c\x3c\xeb\x65\xcb\xc5\xc2\xa5\xf6\x58\x9f\xf5\xda\x8e\x5d\x67\xb9\x8e\xe2\xb8\x1b\xb2\x88\xf4\x5c\x6b\x31\xdc\x6c\x79\x36\x60\x7b\x85\xa6\x20\xf3\x69\x2a\x8d\x5f\xa9\xd2\xa0\x76\x2a\x0d\x07\x48\x32\xc3\xfa\x09\x4f\xe8\xd7\x2a\x35\x19\x26\xb0\xd3\x0e\x1b\x5e\x13\xc8\x0d\x8b\xec\x66\x2f\x4d\x3a\x2e\x3b\xb7\x88\xb6\x23\x62\xd9\x69\x1c\xbd\xf0\xf3\xc0\x95\x57\x7c\x27\x9b\xa5\xd7\xda\x3b\x34\x69\x51\x7d\x65\x05\x72\x99\xa5\xe0\x03\xe2\x2d\xf1\x39\xeb\x78\x2b\x60\x0e\x50\x7d\x8c\x7c\x8c\x3c\x53\xa0\x8c\xfa\x10\x19\x45\xc7\x33\x05\x7a\xbf\xa1\x40\x1f\xfb\x37\x10\xdd\x97\xe4\xb6\xb3\xbf\xfc\x35\xfb\xe5\xec\xb7\x83\xca\xe4\xb6\xfa\x8c\x36\x65\x64\x6e\x45\x36\x9b\x14\xae\xbb\x02\xb2\xc8\xd8\x54\xe7\xcb\x18\x47\x8b\x18\x2a\xd2\x36\x0d\x7a\xb4\xd5\x79\x35\xcd\x19\xa5\x4b\xb9\xf5\xf2\x53\x66\xe8\x8b\x25\x60\x15\xa2\x8f\xee\x0b\xc7\xe0\x67\xc3\xbf\x7d\x77\xf5\xfd\x8f\x76\x8e\xc9\x47\x40\x4e\x1e\x66\x41\x5e\x23\x43\xd2\x1a\x7b\x65\x33\xbe\xb9\x15\x90\x39\x4a\xf4\xad\x56\x0e\xf9\x03\xbc\xb9\x48\x7d\x14\x32\x10\x16\x76\x34\xee\xab\xe1\x35\x43\x35\xe2\xe6\x20\x8f\x5d\xe4\xa1\xb7\xed\xd4\xbf\xbb\x80\xd9\xf9\x81\x85\xc9\x34\x3c\x73\x1b\xf4\x62\x6d\xf3\xe4\x7e\x1e\x44\xa5\xc0\xe6\xb4\xb6\x55\x16\xce\x67\x60\xa2\x0b\xb4\x58\xef\xd6\xb0\x6b\x69\x84\x6c\xb5\x1b\x58\xd7\xe0\x1a\x7b\x42\x31\x6b\x2f\x3f\x87\x57\x2d\x77\x86\x24\xc5\x91\x2d\x37\xf1\xcb\x6c\x07\xa7\xdf\xcf\xc3\xfe\xa3\xf0\x37\xfb\x76\xf0\x14\xdf\x2c\x60\xeb\x3d\x40\xc9\x89\x62\x83\x35\x80\x32\x98\x18\xca\xf2\xa8\x15\x27\x11\xdd\x21\x86\xd6\x04\xa6\x3d\x2d\x42\x5b\x08\xca\xdf\x33\xa5\x15\xb8\xdf\x11\x2d\x0a\xb8\x2f\xa4\x56\xd0\x34\xa5\x58\xaa\xbd\xba\xc7\x48\x7b\xc5\x08\xe9\xae\x69\x51\x68\x26\x46\xa2\x72\xbb\x05\x20\x23\xc2\xd6\x4d\x46\x56\x79\xec\x8b\x1d\x81\xa4\x13\x97\x11\x4b\xae\xbe\x2f\xec\xde\xdf\x4b\x82\xff\xf9\xdb\xc7\x7e\x89\xbc\x54\xce\xdd\x8a\x1d\xe0\x80\x27\xdd\xf5\x27\x56\x5e\x1d\x58\x45\x9d\xca\xf9\x6e\x1b\x36\x57\xa4\xec\x96\xf7\x34\x40\xbf\x70\x53\xe2\x31\xb9\x8c\xfd\x6c\xf6\x03\xcb\x6b\xcd\x1a\xe4\x22\xa7\x09\x2b\x3d\x85\xe1\x46\xd9\xc6\xeb\x05\xc1\xa9\x41\x5a\x55\x41\x6e\x78\x7c\x8b\xa3\x39\x4c\x97\x78\x74\x08\xf7\x00\xa3\x09\x0c\xdf\xf1\x6b\x7b\xfd\x3e\x1d\x27\xe4\x51\x44\xef\x7e\x78\xb5\xe2\x21\x44\x38\x0a\x3e\xdc\xec\xec\x74\x30\xff\x73\xfc\xb0\x4f\xd8\x53\x64\x28\xb3\xce\x33\x82\xf6\x82\x18\xfa\x48\x90\xae\xe3\x01\x57\xf4\xd4\x1d\x8f\xc9\x5e\x9b\x5e\xb2\x60\x21\xff\x12\x43\xf4\x84\x27\x22\xf7\x10\xcc\xd2\xf8\x0a\x76\xf2\x5b\x1d\xcf\xeb\x05\x3e\x0e\x66\x1d\x38\xfe\xf6\x36\xba\xec\xb8\xef\x90\x9f\x30\x4f\xde\xc9\x45\x8a\x30\x0c\xdd\x87\xe3\x31\xec\x11\x11\xc1\xc3\x33\x94\x5e\x3b\x70\xe5\xf5\xf0\x0c\x26\xcc\x5b\xa5\xf6\x8a\x26\x2d\x7b\x2b\x6f\x64\xb9\xd8\xf6\x78\xa3\x89\xea\x19\x8c\x61\x80\x77\x83\x99\x8f\x70\xef\x23\x5d\x4a\x77\xba\xf6\xf3\x0b\x74\x95\x2b\x7d\x60\xd1\x97\x91\x1f\x8f\xdc\x38\xf5\xc3\x28\x99\xba\x80\xf6\x27\x1b\xdd\x92\x0b\x30\x1c\xdd\xae\x00\xbf\x35\xba\x4d\x93\xd1\xed\xd9\x4f\xa7\xa7\xcf\xcf\xce\x46\x32\x7c\xd1\x65\x0f\xba\xab\xc9\x8a\x85\xd3\x34\xa7\x40\x25\x02\x41\x13\xaa\x7d\xa9\xd8\x92\xdf\xcf\xbe\xfb\xfe\x97\xbf\x9c\x2c\xed\x1b\xe5\x19\x9b\x51\xf7\x2f\x4b\x1f\x85\x14\x0f\x51\x1a\x5b\x18\x06\x90\xcb\x37\x50\x25\xcb\x5a\xfb\xa7\x4c\x33\x3d\xe6\x17\xba\x94\x08\x52\xd0\xcd\x50\x20\xe4\x7c\x86\x79\xde\x4c\xd0\x75\xd7\xc2\xda\xcd\xc7\x20\x73\x2e\x0c\xf7\x8f\x9b\xe3\x1f\x4e\x44\xc3\x73\xf2\x0a\xab\x7b\x28\xf8\xa5\xad\xa3\xc9\xd4\xa2\x54\x36\x66\xd2\xd1\xe3\xb2\xf8\xff\x63\x55\xe8\x39\xe0\x41\x2f\xfb\x5a\xe8\xfe\xde\xba\xa9\xdc\x45\xdb\x6c\x21\xf7\x4c\x09\x18\x2a\x2f\xea\x39\x14\xdd\x5a\x27\x01\xc4\x52\xd1\xa7\x41\xa9\x17\xa7\x14\x33\x38\x8c\x32\x5a\xae\xd9\x55\x8e\xf2\x03\x23\xe8\x88\x4c\xf0\x31\x38\x77\xff\x1a\xd1\x04\x0d\xe0\x76\x75\x14\x8e\x9a\xc4\x8f\x3d\x5d\x0d\x7d\xcc\xec\xaf\xc7\xeb\x22\x10\x6b\xd8\xc3\x46\xb2\xc6\xa1\xd2\xdb\x67\xcc\xc3\xad\x16\xa6\x39\xb6\x15\x79\x2d\x32\xce\x91\xd2\x0a\x79\x9c\x95\xc1\x21\x03\xcf\x27\xa6\xdd\x8c\x75\x44\x37\x8b\x8d\xb2\x91\x7a\x6b\xe0\xd3\x97\x42\x94\xd6\x06\xc9\x1c\x97\xe1\x40\xae\x5b\xc1\x76\x30\x28\x44\x88\x1d\xd0\x3d\x41\xcd\x56\x64\x09\xa0\xdb\xe0\x7a\xc9\xf3\x02\xba\xbe\x75\x11\xd3\xb3\xb3\xd7\xa2\x62\x17\xaa\xa5\x25\x35\xcc\x5c\x43\x24\x8f\x52\x51\x25\x49\xae\x1d\xf7\x69\x9a\xe4\xa0\x09\xec\x31\x76\x3d\x83\x3e\x0a\x66\xcf\x93\xfc\xc1\x85\x4c\x79\x33\xcc\x35\x7b\xc5\x04\xa9\xa1\x24\x65\x21\xb3\x96\x62\xdb\x32\x09\x9a\xb4\xd3\xe2\x34\xa8\xa1\x90\x6d\xf5\x1f\x35\x5b\xfd\x55\xcb\xd6\xbe\x50\x8f\xec\x0b\xf5\xa8\xdd\x42\x3d\xba\x8b\x85\x6a\x36\x7a\x27\x0b\xb5\x00\xfa\x5a\x51\x8e\xad\xd2\xaf\xdd\x74\x67\x6f\xba\x3d\x1f\xae\xb3\x3d\x5b\x0b\x1d\xd5\xee\x2a\x87\x0d\x6a\x01\xb7\x75\x95\x35\x93\x4d\x88\x14\xdc\x56\x38\x31\x1d\xe1\x0b\x94\x4e\x11\xcc\x32\x87\x88\xb8\x18\xa2\x79\x94\x30\x79\xd5\x12\x10\xd2\xde\xbf\x07\x86\x60\x0f\xec\x83\x83\x7a\x3f\x9f\xb2\x19\xc9\xa5\x59\xc8\xc1\x13\x59\x7a\x32\x51\x8d\x5a\x58\x64\x66\x1e\x0d\x84\x54\x4c\x8d\x29\x95\xb1\xbb\xf4\x49\x96\xb5\x67\xcf\xbc\xe3\x42\xaa\x1b\xb7\xf2\x11\x16\xf4\x83\x6d\x44\x3d\xde\x7e\x16\xc0\x2f\x3a\xe0\x71\x1e\x46\x5f\x95\xc1\x95\x87\x29\x92\x37\xe9\x0c\xf0\x8c\x31\x21\x60\x77\x5c\xae\x6a\xb9\xa6\x9a\x89\xc8\xcf\x6a\x25\x6b\x89\x63\x68\xd5\xaf\x9e\x4e\xe3\x68\x3e\x87\x0a\xb0\x5d\x51\x89\xa2\x56\x12\x80\x80\x0f\x62\x90\x81\x08\xa4\x60\x09\x02\x10\x82\x39\x58\x80\x4b\x70\x01\x66\xe0\x0a\x4c\xc1\x0d\x78\x0d\xde\x83\x37\x0f\xc4\xbb\xce\x87\x1c\xcf\x2a\xd9\xd9\x29\xd3\xc4\xb0\x96\x8c\x90\xf4\xf2\x1f\x80\x86\xa0\x4f\x97\xe2\x8e\xfa\x13\x5c\xa3\x08\xf3\xeb\xe2\x4f\xc0\xd4\xb8\xa4\xc7\x75\xd8\xe8\x77\x88\x9e\x68\xbf\x7a\x81\x1f\xc7\x1d\xe4\x8d\x18\xb5\x57\xde\x4a\x76\xf6\x5a\x74\x16\xf8\x6c\xc0\xf1\xf8\x76\x25\x12\xcb\x78\xdf\x3f\xc0\x9b\xac\x83\xbc\xde\x65\x8a\x9e\xfb\xc1\xac\xa3\xa9\xe5\xf1\x39\x9c\x8c\xd1\x39\x9c\x10\x8d\x37\x56\x86\x31\x7e\xf8\x50\xfd\x09\x62\x6d\x20\xf4\xae\x36\xb2\x8e\xcb\x74\xac\x28\x71\xe2\x4f\x9f\x62\xb5\xff\xde\xce\x4e\x27\x96\xe3\xa5\x96\x93\x78\x9c\xf4\x68\xf6\x6a\xc7\xeb\x21\x78\x05\x51\xc6\xfe\x0a\x97\x01\x54\x3a\x48\x67\x81\x8f\x06\xf1\x28\xc9\x4f\x9f\x92\x95\x07\x62\x0f\xf8\x4a\x2e\x94\xf6\x3d\xfa\x39\xda\x1b\xfd\xfa\x93\xb8\x48\x55\x5f\x50\x15\x68\x37\xb9\x1a\xed\xf1\x38\xdc\x71\xf1\x0b\xe5\x8c\x11\xd3\xe1\xd1\x9c\x9d\x78\xb5\x2d\x4d\xfe\x79\xb5\x26\xff\xd7\xfd\x67\x8f\xde\x3e\xef\xff\x54\x62\xe1\xe7\x6a\x70\x85\xe9\xb3\x18\x58\xc2\x52\x17\x58\x88\x61\x01\xab\xcb\xb5\xa4\x91\xb3\x77\xd4\xc8\x44\xfb\x6b\x03\xe0\x66\x50\x02\x83\x72\x2d\x98\xae\x74\xee\x57\x60\xa1\x74\xfc\x92\x88\x67\x51\xee\xa0\x94\x26\x51\xcb\xea\x9b\xe4\xa7\x14\xa8\xf2\xc7\x84\x45\x8a\x3f\x26\x4c\x15\x49\xf1\x49\x2c\xcd\x6a\x6e\xd1\xbf\x08\xce\xdd\x05\x82\x57\x51\xba\xcc\xce\xf4\x26\x00\x4b\x58\x29\x69\x5e\xcf\x32\xe9\x4f\x4c\xb0\x75\xf6\x9a\x2f\x22\xb6\x99\x84\xcd\x84\xd0\x3c\xa7\xca\x16\x13\xba\xcf\x5c\x92\xa2\xcb\x30\x09\xf3\x5e\xe4\x97\x9f\xeb\x78\x03\x45\xd0\x5a\x2d\x32\xe9\x20\x17\x22\xc5\x40\xcc\x41\x33\xaa\x2b\x5d\xe7\xb6\xab\x1c\x0f\x5e\x7f\x43\xb9\xc1\x5f\xb5\x7a\x4b\x6a\xce\xfd\xf2\xb0\x1e\x79\xcc\x5f\x26\x02\x59\xbc\xad\x07\x45\x3d\x5f\xe4\xf9\xcc\x60\xb8\x3f\x32\x9b\x32\x5a\x06\x98\xa2\x35\x72\x53\xaa\x3f\x87\x63\xb8\xe2\xa2\x96\x99\xfc\x49\xef\x8e\xc7\x70\xb5\x8a\x21\x76\x7e\xcd\x61\xc1\x0b\x90\x9f\x9c\xb7\x3d\x09\x14\x6e\x7b\x82\x42\x80\xca\x60\x22\x2a\x9b\xc0\x30\x87\x0e\x17\x17\x32\xf3\x42\x64\x5e\x48\xcd\x0b\x4b\x03\x7e\x3c\x30\x7e\x87\xc6\xef\xb9\xf1\x7b\x61\xfc\xbe\x34\x7e\x5f\x94\x62\x99\xab\x44\xf5\x6e\x6d\x22\xc8\x07\x9e\x10\x21\x68\x04\x66\x54\x2a\xd1\x6f\x10\xf1\xef\xca\xb8\x2e\x13\x19\xa7\xb6\x17\x18\x60\xe0\x8d\x71\x8b\xf3\xfa\x6b\xe3\xb2\xc1\xfa\xef\xcd\x2f\x25\xe1\x3b\x65\xc7\x78\xc3\x6e\xaf\xa6\x10\x3b\xf3\x34\x84\x71\x47\x67\x0b\x8a\xae\x4e\x6f\x7c\xfa\x74\xbb\x5a\x65\x10\x9f\x2c\x16\x6f\x49\xa7\x08\x03\xd1\x4c\x89\x0c\xfb\x08\x67\xbf\x44\x78\xd6\xe1\x05\x9a\x7b\x2e\x39\x35\xe1\x18\xf6\xb2\xe5\x45\x86\x51\x7e\x9d\xa7\x02\x7b\x1e\x90\x62\xfe\xc3\xf1\x58\x49\x08\xa1\x1f\x15\x69\xd4\xe9\x75\x02\x91\x28\x8c\xdf\x13\x01\xd2\xdc\x85\xf2\x00\x2b\xe9\xa8\x41\x9a\x60\x3f\x4a\xb2\x0e\xcf\xfe\x14\x8d\x7b\x3b\x3b\xd8\x92\xb5\x6a\x3c\x04\x70\x8f\x6c\xa5\x19\xc4\x3d\x4a\xef\x31\x04\x22\xf7\xfa\x64\xb1\xa0\x84\xec\xb8\x51\x18\x43\x22\x06\xaa\x17\xc5\xd2\x6a\xd4\x61\xf9\x0d\x3a\x71\x63\xb8\x32\xb7\x4f\x26\xf9\x65\xd7\x11\xf5\x9a\x78\xb7\x81\x9f\x41\xc9\x19\x23\xf5\x43\x63\x0c\x5c\x7f\xb1\x88\xb9\x87\x4d\xc2\x1e\xd0\xd9\x22\x2b\x79\x67\xa7\x53\x1c\x81\x32\xde\xfc\x1e\x9b\x4b\x86\x23\x4b\x99\xb3\x17\x2c\x11\x82\x09\x7e\x2b\x38\xcf\xf3\x56\x2b\x6d\x6b\x26\x7d\x2b\x73\x0b\x69\xec\xc5\xa5\x69\xed\x5a\xc7\x5b\x51\x86\x79\x95\xfa\x61\xc7\x9c\x78\xbe\x6e\x28\x98\xed\x6b\xfa\x67\x07\xf6\x70\xca\x7c\x44\x9f\x3e\x69\x63\xa6\x59\xe2\xda\xa0\x09\x15\xf8\x84\x68\x8b\x80\x43\x08\x90\x3f\x41\xfe\x27\x8d\x25\xfc\x58\xa0\x8a\xd6\x59\xbd\x57\x58\x19\x84\xcc\xfb\x61\x30\x25\xbd\x29\xd3\x85\x96\x18\x86\x14\x49\xa1\xa3\x4e\x17\xcd\xd7\x16\xf2\xd3\xcf\x44\x5c\xea\x28\x87\x5d\x37\x5c\x22\x36\x24\xef\x01\x11\xd6\x68\xc2\xfa\x8b\x38\xf5\x71\x07\x7a\x25\x24\xac\x9b\xfd\x8a\xc9\x5f\xc1\x24\x14\xc4\xcf\xa9\xd1\x13\xc7\x82\xab\x2c\x9d\x4e\x5b\x5a\xb2\x35\xe2\xd5\x32\x67\x3b\xfe\x5b\x71\x99\x4c\x68\x7f\x62\x3e\xfc\x50\x30\x89\xde\x3e\xdf\xf1\x2a\x3b\xaf\xf7\x18\xa8\xdf\x4f\x13\x7e\x84\xfd\x12\xe5\x80\xab\xe2\x4d\xc6\xb8\x25\x2f\x3c\x8b\x42\xed\x79\x4e\x69\x6f\x95\xcb\x95\xe6\x18\xd8\x8e\x64\x1d\x86\xf1\x91\xcb\xcb\xb6\xdd\x92\x6f\x94\xf6\x6b\x05\x66\xe3\xeb\xce\x85\x56\xfa\x41\x8a\xae\xc9\x04\xdc\x6a\xea\xe0\xc3\x3e\xd0\x73\xd8\xa5\x42\xf8\xb0\x0f\x14\x05\x83\x82\xcc\xac\x3c\x70\x65\x6b\x9b\x9c\x7e\xe7\x68\xd3\xa6\xa7\x66\xd3\x39\x12\x80\xbf\x69\xdb\x37\xd6\x6e\xb3\x33\xf8\x3c\xde\xb4\xf5\xd7\x66\xeb\x42\xd2\xcf\x36\x6d\xf9\xbd\xd9\xb2\x21\x09\x9c\x47\x9b\x7e\xe1\x4d\x81\xea\xba\x30\x71\x9e\x6e\xfa\x05\xa3\xfd\x82\x82\x01\xce\x97\xf5\x05\x46\xaa\x9b\xf0\xc0\x85\x5a\x63\xc4\xf8\xa2\xae\x83\x80\xf3\xa0\xe5\xe7\xf4\xf7\xab\xbf\x25\xd7\xad\x0b\xce\xc3\x96\xdf\xc9\xdf\xad\xfe\x06\x5f\xea\x2e\x38\x9f\xb7\xfc\x82\x78\xb3\xba\x7d\xa1\x2e\x83\xf3\x45\xcb\xf6\xc5\x9b\xd5\xed\x2b\x1a\x39\x38\xbf\x6c\xf9\x09\xe5\x65\xe3\x2b\x17\xaa\x2d\xef\xd7\xca\xca\x32\xcf\xc1\xaf\xf5\x50\x1c\x8b\x34\x8e\x82\x9b\xee\x65\x8a\xe6\x8d\x23\x2a\xc8\xc3\x5d\xf9\x9b\xbf\xf6\xa5\xa2\x29\x2e\xf6\x1e\xfd\xe3\xe2\xdd\x6c\x6e\xb7\xc1\x84\x81\x0b\xd8\xff\x70\xec\x72\xf1\x72\x63\xfc\x8e\x03\x4b\xcc\xd9\x00\xb8\x97\x11\x8c\xc3\x8c\x19\x4f\x98\x31\x45\xa1\xa4\xb4\xa8\x28\xfe\x12\xd5\x49\xa5\x7a\xc2\xb8\xdd\x83\xa2\x6d\x90\x3d\x06\x3a\xac\x21\x16\xff\xc8\xd0\x80\xa5\xc7\x2e\x37\x2d\xe4\x6d\x2b\x4e\x15\x96\x0e\x6c\x47\x31\xdc\xb7\xe0\x52\x48\x62\x34\x44\xa6\x68\x0e\x3d\xe8\x16\x53\x3e\x4d\x0f\xcf\x1b\x39\x4c\xd3\x87\x77\x40\x41\xed\x5d\x27\x45\x4e\x14\xc2\x04\x47\xf8\xe6\x09\x4b\xe9\x34\xa1\xeb\xad\x60\x0e\x6a\x62\x34\x6d\x6a\x8d\xb0\x0c\xd1\xff\x85\xb5\xeb\x2f\x59\xaf\x22\x98\x39\x3e\x82\x0e\x6f\x95\x4d\x1c\xb9\x48\xc3\x08\xd4\xe3\xc4\x21\x24\xcf\x7a\xce\xbb\x19\xbc\x71\x32\xff\x0a\x3a\x37\xe9\xd2\xc9\xd2\x39\x74\x70\x34\x87\x8e\x9f\x84\x0e\xbc\xbc\x4c\x11\x26\x37\xfe\xf9\x27\x04\x9d\x65\x16\x25\x53\xe7\x94\xae\x3f\xe7\x32\x45\xe4\x4f\xb2\x21\x38\x97\xd0\xc7\x4b\x04\xb3\x5e\x39\x05\x4a\x00\x44\xf2\x94\x5d\xe4\x87\x51\x3a\x45\xe9\x72\x51\xf0\xcf\x4a\x57\x3b\xd9\x07\x58\x85\x1b\xf7\xdd\xcd\x82\x5b\xde\x66\x7e\xd6\x85\xbc\x82\x8d\xc5\x47\xab\x04\xab\x0c\xca\x90\x85\xf9\x8f\x03\x30\x5c\x0b\xf9\x78\xbb\x7e\xfb\x81\xcc\x7e\x56\x0c\x94\x95\x41\x10\xb4\x48\xd5\x62\x89\x39\xe1\xf6\x2c\xc0\xac\x13\xe0\x9e\x8b\xa5\x35\xd1\x43\x59\x86\xf2\x7b\xca\xda\xe3\x6e\x54\x89\x3c\x55\xc4\x7f\x35\xd7\xaa\xad\x0d\x23\x60\x46\x62\xed\x5a\x12\x37\xf8\x25\x6d\x56\x1e\xe7\x21\x16\x4a\xbb\x26\x78\xcf\xb9\x2b\x63\xba\x5c\x0e\x34\xc1\x2f\x4c\x72\xb7\x2e\xe5\x2e\xbb\xbb\xb2\x85\x0f\x77\xbf\xd2\x5d\xdb\x06\x07\x75\xe3\x79\xdb\x07\x43\x99\x51\xbe\x0f\x5c\x0e\x39\x60\x19\x60\x9b\x9a\x93\x85\x65\x9a\xb3\xf0\x81\x0c\xf2\x27\x87\x7e\x17\xc3\x8f\xd8\x7e\x84\x0c\x0f\x2c\xab\x35\x8f\x7a\x50\xcf\x19\xf6\x4c\x94\xbd\x41\x51\x86\xa3\x04\x5a\x8a\x33\x58\x56\x77\x0d\x18\x80\x19\x03\x23\x62\xf5\xcb\x32\x58\x8d\x49\x18\xd2\x38\x82\x81\x1a\x99\x21\xe6\x66\x20\x63\x59\xdc\x73\x72\x73\xe2\x0a\x06\x73\xfd\x25\x4e\x69\x21\x46\x57\xfd\x5b\x72\x3e\xfb\x80\x8d\xf1\x4d\xf0\x2c\x31\x9f\x94\xbe\x15\xec\x2a\xba\xce\x8e\x62\xeb\x06\xf3\x83\xff\x31\x9a\x2f\xe7\xce\x60\x78\xec\x04\x33\x1f\xf9\x01\x99\xea\x9e\xf3\x83\x7f\xe3\xa4\x49\x7c\xe3\x44\x49\x10\x2f\x43\xe8\xc4\x10\x93\x3b\x4e\x67\xb9\x58\x40\x14\xf8\x19\xdd\xfc\x77\x53\xe4\xc4\xe9\x35\xbb\xe0\x89\x2b\xc9\x92\x08\x3e\xa4\x95\x65\x86\x9d\x0b\xe8\xb0\xec\xd9\x5e\x79\x5e\xb0\x79\xfc\x6d\x9f\x4b\xda\xef\xd1\x92\x57\x30\x4a\x93\xa9\xb6\xf3\x5a\x7a\x04\xc8\x06\x13\x85\x1c\x49\xac\x00\x93\xdd\x32\xa4\xc3\xb6\xb8\xa8\xb0\x96\xaf\xab\x76\x0c\xfe\x76\x19\xc3\x4c\xde\xf5\x39\xd7\x1d\x0a\x86\xe5\xf4\x3e\x54\x4a\xd6\x3e\x7b\x7d\x7a\xf6\xfe\xa7\xb7\xaf\xf2\x9a\xb5\xbb\xd3\x65\x14\xc2\x6c\xd7\x0f\xe2\xde\x0c\xcf\xe3\xff\x42\xcb\x18\x76\xb3\x05\x0c\x64\xe6\x41\xce\xec\x88\x02\x57\xcc\x60\xbc\x70\x92\x34\x5d\xc0\x04\x22\x27\x49\x11\xbc\x84\x08\xc9\x1c\x7e\x57\x86\xde\xbe\xbf\x88\xfd\xe4\x83\xda\xe3\xce\xf7\xa7\xaf\x9c\x17\x14\x2d\xd5\x93\xf4\xa9\x65\x99\xd2\xa3\xc7\xe5\xce\x92\xae\x90\xcc\xd6\x2e\x63\x94\x13\xfa\x98\xe8\x19\x21\xec\xc2\x30\xc2\xb4\xa2\x1e\x0b\xad\x41\xd0\x0f\xc9\xda\x51\x23\x8a\xb3\x9b\x04\xfb\x1f\x59\x74\x9c\xdc\x49\x68\xed\x0f\xfb\x76\x4e\xe7\x6b\x92\xd3\x7e\x16\xc4\x95\x5b\x43\xa3\x66\x9a\xc2\x13\x1c\x0b\xfd\x69\xd7\x24\xda\x6e\xae\x86\x88\x7c\x43\x16\x13\x06\xf2\xcc\x43\xba\x35\x1e\x4f\x0a\x5b\xa4\xec\xc4\xf6\x4b\x74\x94\xcf\x7a\x42\xe6\xe7\x3f\x53\xde\x62\xca\x35\x8a\x59\xe6\x5b\x9d\xe5\xbb\x98\xdd\x66\x04\xcf\x89\x4b\x7d\x4d\xc5\xe0\x7d\x4a\xf6\x0f\xf0\x86\x69\x0a\x3a\x31\x6d\xaa\x02\x25\x1b\x73\xa7\xab\x82\x44\xb3\xb9\x12\xc4\x90\x8d\x6c\x6f\xda\x4a\x40\x38\xab\x86\x70\x87\x47\x1d\xfb\xc4\x3a\x67\xdd\xba\xf2\xe5\xfa\x1b\xfe\x36\x96\xbe\x9e\x6e\xcd\xe2\x44\x58\x4d\x50\x35\x0d\x45\x4d\x46\x57\xba\x46\xf6\x40\x77\xf7\xbf\xe9\xff\x91\x57\x03\x98\xd0\x71\x9a\xac\x65\x51\x71\x84\x52\xb3\x57\xa2\xc2\x90\xe6\x5c\xd5\xac\xd2\x50\x72\x50\x32\x47\xca\x70\xbf\x4c\xc9\xe1\x99\xec\xb9\x55\x40\xae\x0a\x0a\x17\xf1\xdd\x32\xf6\xfb\x45\x04\xe3\xd0\x1e\x16\xfe\x26\xf6\x03\x38\x4b\x63\x16\xab\x99\xc7\x90\xab\x53\x4d\x6d\x4d\xdc\x2d\xa0\x12\x07\xc8\x8b\x46\xb6\x0b\xe1\x09\xb5\xff\x3c\xf9\x7f\x3f\x7f\xf1\xdd\xcd\x02\x3a\xbe\x93\x4f\x8f\x93\x68\x4d\xd9\x16\xb0\x4e\x92\x75\x11\x7f\xf2\xe8\xea\xbd\x62\x05\x96\x42\xf1\x15\x2b\x02\xc0\x86\x6a\xa5\x16\xbb\xcb\x04\xcb\x74\x3a\x8d\x61\x2b\xf6\xf8\x99\xec\x04\x8e\xce\xde\xe5\xd0\x6f\x55\xd6\x8e\x32\x6d\x57\xd5\xa8\xa2\xec\x2c\x48\x17\x30\x9c\x54\x58\x1f\x8a\xa6\xca\x03\x30\x18\xe6\x53\x2e\x5e\x68\x61\x79\x28\x53\xc0\x68\x53\x17\xe9\xc7\x26\x4a\x98\x49\xb8\x93\x38\x2e\x27\x55\x25\x38\x92\xe5\x14\xb0\xd9\x0a\xab\x8d\x84\x5f\xc5\x76\x56\x15\x6c\x2e\x68\xdf\xcd\xcd\x81\xb9\x9d\x30\xbf\xb6\xa6\x8d\xcf\xac\x03\xd6\xf6\x4c\xad\xda\x84\x0b\x5c\x53\x86\x77\x56\xb5\x12\xf2\x3d\x28\xcb\x17\x03\xb3\xd2\x0d\x4d\xbb\x44\xf5\x1a\x11\x99\x23\xca\x6b\xa0\xb8\x79\x66\x4a\x78\xe0\xe7\x5e\x42\x95\x36\x50\x63\xb4\xb5\x10\x64\x65\x15\x82\x5a\x30\x47\x29\x65\xda\x30\x4b\x59\xf9\xaa\x1c\x6e\x4e\x9e\x6a\x2c\x6f\xe3\x2b\xe7\xca\x81\xb0\x0c\xe4\x85\x87\x72\x36\xfa\x82\xfc\x33\x58\x97\x6d\xea\x4a\x48\x59\x1a\x61\xff\xdf\xce\xd8\xda\x46\xe4\x6d\x9d\xe3\xb5\x8e\x99\xa9\x54\x50\xe4\x3e\xe1\x28\x4d\x9c\xce\x6b\xfa\xaf\x1f\x7b\x15\xa6\x2d\xd2\xbe\x8f\xa0\x5f\xc6\x4b\x79\x7b\x3a\x2f\x31\x5d\x4b\xb9\x9d\x6f\x74\x2d\xad\xa8\x96\xac\xa4\x66\x76\x3b\x7d\x4e\x6b\xa0\x5b\xb8\x62\xca\xd3\xdc\x73\x10\x42\x65\x07\x01\xee\x65\x94\x84\xdd\x8b\x1b\x59\x9e\x8b\xe6\x1f\x89\x20\x4b\x17\xb8\x4b\x14\xc9\x1c\x26\x7b\xe6\x91\x90\x8d\xc8\x63\xfe\x82\xb5\x45\x3d\xc8\x1c\x3a\x86\xc7\x3f\xd3\xec\x26\x69\xb5\x61\x34\xc9\x20\xee\x66\xd4\x0e\x97\xf2\x79\x53\x3c\xce\xd4\x5c\x1d\xc7\xe9\xf5\x4b\xa1\x4b\x01\x37\xf0\x13\x13\xed\x9d\xd5\x18\x83\xc9\x55\x9b\x90\xea\x82\x17\xbf\x55\xde\x53\xa1\x84\xd7\x2d\xe1\xdb\x11\xf7\x68\xbb\x20\xa1\x1f\x16\xbf\xb4\x31\x8c\x1e\xf6\x01\xb5\x1c\xd0\xb4\xc6\xd1\xb9\xe1\x05\x17\xb4\x1c\x3d\x1c\xb4\xc8\x87\x2a\xa2\xb4\x8b\x19\xb1\x55\x9b\xea\x29\x9b\xa5\x2c\x3c\xf5\x6d\x9f\x87\x94\x49\xea\x8f\xcf\x6f\xd9\x38\xb8\xdf\x19\x88\x3b\x23\xd7\x5d\x01\x7e\xef\x8c\xd9\xe9\x9c\x7c\x8a\xf2\xa7\x0a\x86\x4f\xf9\xd6\x8f\x69\x68\x7f\x45\x57\x9d\x57\x13\x15\x2f\xb2\x08\x2d\x8f\xd1\x4d\x39\x51\x56\x0c\x92\x04\x1b\xa8\x2b\x82\x34\x0f\x78\xf0\xad\xac\x3e\x44\xe3\xf0\x58\x20\x2e\x9b\x12\x45\xe6\x1f\xc1\x27\x1d\x93\xc6\x22\xe4\x4a\x3d\x8f\x0d\x72\xd3\x44\x33\xa0\x9d\xd8\x9e\x39\x59\x96\x67\xe8\x36\xe1\x79\xa3\x4e\xfd\x93\x5a\xe0\xa3\x72\xa7\xc8\x12\xd6\xee\xb2\x0f\x55\xb0\xcf\x43\xe8\x3d\xb8\x40\xd0\xff\xf0\x80\x33\xfc\x88\xe3\x66\x52\xbb\x4c\x07\x7b\x2b\x81\xbd\x49\x67\xa7\xa3\x15\x59\x23\x2c\xbd\xf2\x0a\x45\x7f\xea\xc1\xea\xf9\x92\x60\xba\x7a\x6a\xc1\xb7\x2c\x09\xb3\xa1\x65\x0b\xcc\xd7\xbe\x54\x98\xcd\xab\xf9\xf7\x1f\xe6\x78\xf8\xce\x1e\x66\x23\x10\x48\x38\xba\x39\xfc\x08\x03\x5e\x71\xd1\x4f\x02\xea\xc1\x98\x33\x60\x1e\x57\xd6\x8a\x91\x9b\xa4\x0b\x04\x9c\xa5\xc4\xe5\x6d\x10\x99\x73\x4c\xf6\x5c\x95\x3e\x2e\x38\xa7\xe0\x9a\x83\x49\x31\x93\x1e\xc1\x45\x4a\xfe\xa5\xdb\xf8\x53\x5a\xd4\x91\x7f\x59\xb1\xbb\x73\x3c\xb6\xa7\x0b\xdd\x82\xc2\xf2\x5b\xb9\xa5\x76\x38\x64\x46\x4a\x1a\xae\xb3\xb7\xcf\x32\x9b\xf7\x99\x24\xb1\xb7\x4f\xa4\x0b\xb9\x4d\xba\x67\xd4\x1e\x43\x43\x37\xc4\x35\x9e\x35\xdd\x06\x63\x65\x70\x0c\x06\x7d\x3b\x48\x4a\x25\x6c\xa1\x00\x73\x6f\x6c\x4f\x39\x59\x2c\xe2\x1b\xc7\x4f\x1c\xf8\x91\xba\xfe\xa6\xbc\xd7\x6d\x52\xa3\x2b\x7b\x14\x20\x58\x0c\x35\x2a\xed\x92\x5b\x13\xb9\x64\xc5\x86\x6c\xe0\x7e\x28\xa1\x69\x3b\x93\x3a\x6d\x64\xa0\x48\x7b\xc3\x5c\xda\xcb\xd1\xe5\x79\x05\x02\x5a\x63\xc9\x48\x90\x1f\xec\x2b\x19\x5d\x82\xfb\x19\xe2\x74\x01\x96\xa1\x85\x77\xf2\x94\x92\xd8\x49\xe0\xb5\x12\x44\x56\x67\x19\x71\x55\xd4\x0e\x3e\x8f\x5a\xb5\x05\x70\x4e\xc6\x37\x00\x6e\x02\xaf\xbb\xa2\x5d\x6e\x99\x4c\x38\xa2\xf6\x53\x13\x4a\x7b\x30\xa9\x81\xd2\x26\x5a\x60\xa2\x56\xab\xa0\xf3\xfa\x23\xbc\x96\x81\x61\x93\xb6\xe6\x40\x77\x2d\x4c\x22\x4e\x7e\x0e\x20\x63\x31\x04\x3b\xcd\x80\x42\xd7\xc5\xf9\x17\x93\x39\x1b\xaa\x53\xa9\x12\x62\xfd\x1a\xd4\x8d\x3a\xbe\x1e\x50\xbe\x34\x58\xe7\xf2\x9e\x68\x99\xfd\x50\xf7\x56\x6d\xcb\x65\xbb\x30\x15\x23\xb9\xbc\xf5\x32\xf7\x2e\x30\x87\xd8\xa1\xdc\x4f\xd5\xed\x55\xec\xb6\x55\xd3\xb4\x2d\xa2\xc8\x32\xe2\xeb\x4e\xa7\x8e\x9c\x51\x80\xc8\x18\xaa\xd9\xbb\x99\x7f\x25\xcd\x45\x43\x0e\x9a\xa1\x98\xfd\x78\x6c\x56\x61\x61\x91\x7f\x1e\x4f\x6c\x30\x9a\x82\xb7\x11\x64\x21\xaa\x45\x63\x87\xd0\xf4\x8a\x21\xaa\x07\x85\x9c\x59\xd2\x29\x1a\x15\x72\xe6\x5f\x09\x7c\x8b\xfc\xa2\x12\x2a\xa2\x5e\x7e\x99\x50\xe7\x96\x5b\x13\xb2\x4a\x8d\x0f\xd9\xf2\x62\x1e\x99\x3a\x72\x7e\x02\x1c\x94\xf4\x62\x33\x74\xab\x35\x21\x37\xea\x62\x50\x1a\xee\xd1\x7e\x12\x3a\xb4\x3e\x6d\xc9\xf2\xae\x2b\xe3\x30\xd0\x38\xcc\x1a\x6b\x5c\x46\x36\xeb\x44\x0c\x59\xe4\x1e\xe7\x17\xad\x7a\xce\xf0\xce\x79\x51\xa1\x0e\x93\x17\x9b\x6e\x79\x8f\xad\x75\xf7\x2b\xb0\xa9\x1a\xd4\x41\xdf\x5c\xd2\x49\x85\x35\xa5\x1d\x0c\x4c\x11\xa6\xe8\xbc\x1c\xe5\xc5\x44\xf5\x69\xd0\x2d\x4a\xfe\x76\x7d\x3a\xa6\x45\x8b\x96\xb1\x8f\xba\x21\xc4\x7e\x14\x67\xb9\x53\x52\x81\x0d\x57\x64\xe4\x86\xa7\x3f\x0d\x49\xe3\x6b\xe1\x5d\x34\x87\xa3\x10\x66\x22\x4a\x7f\xe4\x93\x3f\xd9\x1e\xb8\x8e\x5f\xf0\xce\xce\x6a\x69\x70\x9b\x69\x27\x75\x59\xcc\x63\xa3\xc3\xa8\x41\x67\x51\x7a\xbd\x76\x4f\x85\x51\x38\x8f\xef\x1e\x0a\x9c\xac\xc1\xa4\x26\x84\x5b\x20\x75\x0d\xc0\xb9\xfb\xf2\x99\x75\xbf\x6d\x08\x6f\xe8\x5a\xe2\xe5\x54\x5f\x74\x18\xf4\xfc\x20\xce\x7a\x22\x80\xbe\x07\xc3\x48\x60\x50\xe8\x1f\x9f\x18\x46\xe7\x32\xa7\x45\xdb\x10\x99\x62\x1f\xf7\x6c\x1f\x58\xf3\xcb\xe6\xf9\x70\xa7\xec\x22\x16\x6a\x6b\x45\xcb\xf4\x9b\x88\x61\x6e\x68\x1a\xd7\x3a\xde\xc4\x57\x0a\xdc\xa7\x12\x49\x4b\xd9\x52\x28\x3c\xf8\xee\x37\xb7\x52\x96\x5c\xed\x7e\x73\xcb\x44\x4c\xf2\x57\x18\xac\xb8\xa5\x65\xf7\x9b\xdb\x28\x5c\xb9\x56\x4d\x43\x15\x44\xa5\x78\x4a\x05\xd2\x28\x74\x95\x31\xbf\x91\xcf\xf1\x70\xfb\x81\x89\x07\xa7\x00\x9b\xe5\x3c\x3a\xa9\x3a\x01\x0b\x68\x9d\xc3\x1a\x37\x2e\x51\x30\x7f\xa7\xa2\x79\xad\xae\xaa\xb8\x38\x1a\x4d\xe3\x36\xe3\xf9\x14\x91\xaa\x2a\x03\x43\x3e\xa4\x09\x7a\xb9\x01\x6f\x54\x2a\xf0\x28\xef\x86\x15\x1f\x50\x8f\xd1\x42\xc4\x4a\x93\x1c\x84\xd2\x1b\xeb\xef\x26\x1b\x51\x24\xdb\x22\x49\x94\xd8\x03\xa0\xd4\x0c\x38\xb2\x09\xfb\xb2\x9a\x55\x89\xde\xb0\x5d\x42\x16\x85\xe7\x35\x9c\x69\xe6\xab\xeb\xc5\x6d\x1f\x7d\x95\x71\xdb\x8d\x16\xfc\x96\xc3\xb6\x9d\xa6\x61\xa5\x32\xa2\x57\x46\x8f\xf2\xa2\x45\x77\x1d\x3a\x7d\x38\x29\x9c\xd3\x5b\x8e\x9c\xfe\x02\x1b\xed\xe7\x22\x7a\xe3\xe0\xe5\x3b\x22\xf0\x46\x83\x56\x8d\x7c\xf9\xe8\x41\x61\x9b\xd3\x03\x8d\x87\x5a\xe4\x71\x69\xe0\xf0\x1a\xf1\xb7\x25\x3b\xa1\x6d\xf9\x0e\x8f\x27\x46\xd6\xea\x06\x51\xc8\x65\x75\xe3\x0d\x9a\xe6\xf5\xaf\x73\x83\x2f\xa3\xad\xf0\xd9\x10\x3a\x9e\x20\x9e\xb3\xba\xe4\x7f\x5c\xfb\x09\x76\x70\xea\x30\x1c\x10\x8a\xa1\xc3\x8d\xce\xce\x25\x4a\xe7\xec\x02\x4e\x3f\xc0\xe4\xc9\xfa\x55\x38\x1b\x19\xe9\xd6\x6b\xde\x66\x47\x51\xcd\xf8\x30\x86\xcc\x00\x34\x34\xa0\x6a\x2d\xa6\x11\x0a\x9c\xec\x32\x4a\x68\x81\x46\xfd\xa2\x85\xe3\x2d\x7b\xaa\xfc\x60\xb7\x69\x02\x87\x15\x80\xc0\x4d\x54\x02\xee\x93\xd8\x80\x4e\xa5\xb9\xd0\x85\x27\xe9\xf8\x0f\xca\x7a\x6b\x8b\xe5\xb9\xcb\x89\xd9\xb3\xd8\x98\x18\xcb\x73\xce\xad\x9c\x89\x9a\xbe\x04\xd2\x5a\xd5\xa8\x2f\xfb\x2d\xed\x5d\x65\xdc\x90\xc3\xf7\xda\x17\xf6\x7a\xa5\x46\xeb\x65\xb3\x46\x05\xd5\xea\xea\x95\xad\x87\x5a\x5c\xbc\x5d\x1e\x27\x24\x10\x89\x65\x84\x10\xab\x19\xf1\x92\xf9\xa8\x69\x14\x4f\x0e\x4d\x2c\x85\x07\xae\x3b\xea\xd1\x44\xbf\xa6\x51\x22\x14\x44\x5e\xd0\x54\x0d\x20\x9a\x21\x78\xd9\xc5\xa9\x1e\xef\x43\x3f\xc9\x5d\x20\xaa\xba\x69\x75\x78\x00\xf7\xb7\x25\x5c\x2a\x61\x4d\x0b\x88\xf8\xbb\x8a\x03\x9b\xfb\xaf\xb5\x38\xa1\x2c\x45\x98\x05\x27\xf1\x9e\x33\x30\x33\x1e\x3b\xc4\xc2\x9f\xda\x47\x10\xe9\xd1\x06\x1b\x46\x11\x91\x6e\x97\x54\x2f\x22\xb7\x32\x72\x90\xdf\xf0\x2f\xbb\x9e\x11\x66\xa4\x87\x20\x35\x0a\x3a\x92\xa1\x00\x93\xe6\xc1\x46\x0f\xb4\x70\x1a\x66\x99\x78\x20\x80\xbe\xde\xc7\x51\x86\x89\xe8\x9e\xd1\x92\x3d\x10\xdc\x66\xfe\x15\x1c\x41\x51\xe3\x87\xfc\xea\xf1\x19\x23\xcd\x42\x8a\x94\xe7\xad\x56\xde\x0a\x50\x73\x77\xb1\x1c\x6c\xcb\x80\xa7\x87\x03\xda\xd4\x25\x82\xd9\xec\x34\x0d\xe1\x73\x2a\xfd\x8c\xf4\x10\x10\x59\x7f\x49\xce\x67\xc7\xed\x69\xc2\x12\xf6\x7a\x61\x14\x9e\x2c\x16\xd0\x47\x1d\x6f\x05\x0c\xb8\x6a\x13\xcd\x8e\x86\xe6\x24\x63\xd8\xa3\xcf\x3d\x88\x2e\x3b\x12\x90\x37\x61\xd7\x32\x5e\xf8\x28\x79\x20\xe3\x91\xc4\x9d\xf3\xfe\xe4\x41\x0c\xb1\x83\xc6\x22\xcd\xc9\x1f\xc3\x1e\xb3\x4a\x89\x30\xa5\x87\x7d\x16\x9b\x44\x9b\xf4\x7b\x94\xd9\x5e\x5f\x76\xdc\x17\x7e\x14\xc3\x90\x88\x15\x14\x4b\xce\x39\x39\x7d\xe5\x20\xda\x88\x37\xb2\x3d\xcf\x9d\x4c\x0e\xe7\x2b\xe1\xf5\xf6\x46\xd6\x8f\xb3\xd0\x9f\xaa\x76\x98\xc7\x75\xe4\x9c\xf0\xbf\x18\x92\x07\x15\x6f\x69\x9b\x2c\x92\xd8\x1f\xfb\x12\x1f\xb2\xc1\x9b\xf9\x67\x46\xae\xf7\x68\xe0\xad\xd0\xce\x0e\xc5\x80\x7b\x4e\xa3\x8e\x10\x20\x1c\x93\x47\x86\xe9\x35\x78\x05\xdf\x14\x78\xa0\x03\x01\x14\xc1\x5e\x0b\x1f\xe5\x68\x8d\x85\xea\xbb\x4d\x22\x94\xaa\x8a\xa9\xaa\xb2\x45\xf6\xc5\x02\x90\xb2\x1f\x9e\xfd\x9c\x4d\x9f\x9d\x95\x14\x57\x15\xa6\xc3\x0f\xf0\x66\x81\x20\xcd\x64\x14\x7f\x9e\x32\xcf\x2b\xab\xf6\x0d\x6c\x75\x58\x59\x6d\x54\x37\x5b\x5e\xb8\xc0\xe5\xc9\x3b\x4d\xf1\x81\x8a\x91\x24\x96\x72\x43\x96\x7a\xad\x83\xb2\x32\xc0\xa4\x9b\x7a\xb5\x56\x7b\x55\xd6\xc6\xe5\x39\xf4\x9c\x0d\x2d\x02\x5a\x01\x20\x96\x35\x4a\x01\xfd\xf3\x0c\x92\xf3\x97\x6d\xa6\x7a\xc4\xb4\x36\x98\x5d\xf2\x3f\x5d\x89\x52\xe4\x8a\x01\xda\xbe\xe0\x87\xe1\xd9\xf2\x82\xd3\x9a\x09\x5f\xf9\xef\x3c\x2a\x8c\x3a\xca\xdf\xf1\xf8\x1e\x73\x16\x95\xa6\x0f\x15\x1f\x93\xd2\xb4\x69\x80\x3d\xd4\x5c\x90\xea\x47\x6d\x09\x37\xda\xe0\xba\x2e\x10\x88\x28\x5d\xad\xd0\x3b\xc5\x7c\x16\x6c\xc2\x1c\xfb\x13\x29\x6e\xf2\xb8\x95\x1a\x92\x65\x0a\x7d\x05\xd4\x46\x8b\x7c\x87\xd2\x69\xcc\x53\xcf\x4a\x3b\xda\xf4\x4b\x45\x57\x20\x6d\xa9\xcb\xa5\x5c\xc1\x9d\x79\x1e\x82\x35\xdd\x49\x56\xcc\xca\x61\x6b\x64\x11\xda\x89\x91\x8e\x01\xcc\x5c\x9a\x81\x7d\x1e\xcd\x08\xf4\xb5\x7d\x84\x2d\x43\x85\x04\x29\xb9\xb3\xdb\x1a\x84\xe2\x16\xe3\x3f\xf6\xf9\xa2\x9e\xf9\xd9\x22\x5d\x2c\x17\x62\xc7\x91\xb1\x21\x1f\xe0\x4d\x98\x5e\x27\xac\xe1\xe1\xa4\x18\x33\x52\x36\x93\xb2\x64\x26\x23\x2c\x35\x98\xc6\x30\xfc\xee\x26\x0f\xe5\xa7\x5f\x0e\xd2\x04\xa3\x94\x7a\x6f\xf9\xa3\xf2\x8a\x82\xdb\x53\x59\x8e\x85\x53\x4c\x95\x41\xb7\x52\xb0\xd9\xd1\x82\xf2\xce\x99\xf2\x28\xea\xc5\xac\x17\xe0\x63\x51\xa7\xea\x42\x07\x74\x46\xa7\x2b\x74\xe1\x27\x30\xa6\x51\xa5\x87\x0a\x89\x0d\xba\x1d\x72\x02\x0b\xca\x5f\xdc\xb8\xe5\xb3\x21\x1e\xce\x8b\x30\x5b\x56\x04\x8f\xac\xa3\xe2\x31\x07\xeb\x27\xbb\xfd\xf1\xe7\xe0\x6f\x7e\xea\xec\x0d\xc1\x51\x05\x77\xd7\xc5\x79\xe6\x14\x5a\xcb\x67\xad\xe6\x45\x0d\xda\x6d\xce\x93\x26\xd9\x4c\x6e\x9b\x14\xb5\xc7\x5b\xca\x14\x5b\x67\x50\xc5\x9a\x76\x46\x72\x17\x8b\x16\x11\x9b\x61\xd3\xd1\xd7\x56\x6e\xab\xd5\xbe\xcd\xb8\xac\x96\x69\xb3\x0d\xf9\x68\xa3\x78\xca\x46\x9b\x09\x7b\x96\x8d\xa5\x6f\x09\x32\xb6\xf6\x60\x03\x70\xc4\x86\xb1\x89\x6b\x9b\x46\x1a\x93\xb6\x7d\x4d\xfb\xda\xfd\x9f\x05\x79\xfa\x2c\x0c\x48\x6e\x24\x5a\xb4\x73\x3b\x29\xeb\x80\xc5\x86\x50\x99\xaa\xea\x04\x5c\x0f\x37\x60\xeb\x27\xce\x1a\x96\xb1\x23\xf3\x04\x6a\x5a\xc7\xcc\xb4\xfd\x95\x16\xf9\x2a\xac\xdb\xba\xca\x1f\x9a\x85\x89\x96\xce\x56\x33\xde\xe4\xb1\xe5\x1a\x1a\x09\xb7\xa5\x49\x83\x9b\xb0\x69\xc9\x43\x8c\x85\x78\xc2\x84\x62\xb6\xd9\xd3\xee\x66\x7e\x26\x8b\xce\x67\xb4\xba\x0a\x67\x61\xce\x56\xd2\x00\xc7\xaa\x86\x29\x15\xa8\xda\x18\xb9\x4c\x3d\x77\x1b\xf5\xc1\xa4\xe1\x0b\xa8\x95\xc2\xea\x2a\x77\x0b\x6a\x8e\x1e\x0e\x80\x4e\xce\xd1\xc3\x7e\x49\x9d\x31\x41\x4f\xd2\xfe\x96\x2a\x7c\x73\x20\x76\x3e\x3b\x63\xb2\x6b\x5d\x47\x71\xfc\x16\x26\x21\xd4\x0a\x9a\x99\x36\x2a\x65\xbe\xd8\xa7\xa3\xec\x2d\x9c\x46\x19\x86\x08\x86\x1d\xb1\x77\x7a\x9e\x62\xd9\xc8\xb5\x34\xcd\xbe\x61\xb6\x9c\xb3\x8a\xd6\xb7\x1e\x63\xc4\x0e\xf4\xa8\x49\x4c\xd1\xe4\xca\x0d\x59\xf2\x5d\x61\x82\x81\xde\x9f\xbb\x83\x87\xe3\x31\x96\x75\x26\xc4\x13\xd9\x82\x16\xc6\xc2\x60\x50\xb4\xc7\x95\xf4\x88\x74\xc4\x92\xc7\x27\xcd\x32\x5c\x33\xfa\xf4\xe9\xbc\xd7\xeb\x99\x45\xd2\xb3\xce\xbf\xce\xa3\xf0\xff\x8d\xb5\xad\xf0\x9b\x5b\x39\x59\xab\xc9\xbf\xbc\x89\xbd\x7a\x18\x14\x2d\x8f\x1f\x0e\x56\x1e\x9f\x42\x99\xb4\x06\xbd\x15\x20\x0b\xa8\xc0\x1c\xe4\x22\xab\x26\x6d\xa4\x16\x6e\x66\x2f\x92\x16\x80\xfb\x6a\x39\xfa\xfd\xaf\x7f\xed\xc7\xcf\xbf\xff\xd9\x6e\x39\x22\x8b\x18\x31\xcb\x7d\x33\x83\xcf\xd0\x6e\xef\x61\xc5\x92\x87\x39\x76\x46\x92\x26\x90\xdb\x7a\xf6\xca\x42\x2c\x07\x42\x82\x3a\x68\x1f\x13\x50\x8c\x92\x39\xa0\x7e\x07\xe5\xdc\x15\xcd\xef\x31\xb1\x9c\x1a\x58\x04\x2a\x45\x5f\xaf\xc6\x29\x7a\x4d\x66\x53\x98\x73\x58\x84\xca\x85\xc8\xea\xeb\x0e\x34\x8d\x95\x9b\xd9\x88\x72\x42\xda\x37\xec\x34\x93\xa2\x16\xd9\x40\x83\x6c\x98\xb5\x96\xcf\x42\x83\x60\xed\x62\x62\xba\x15\x12\x59\x6a\xe4\xad\x3a\xad\x8b\x3d\xaa\x33\xbd\x44\xfc\x61\x01\xaf\x9a\xd7\xdd\x8f\x21\xc2\xcc\x7c\x26\x55\x7e\x37\x0f\xb1\x28\x22\x8d\xec\xab\x6e\x45\x3e\xbb\xaa\xd1\xac\x18\x85\x68\xbc\x31\x18\x16\x8b\xff\xb6\x62\x99\xe6\x82\xd7\xba\x53\xd5\xa6\x52\x34\xef\xf2\x51\xab\x35\xc4\xde\x55\xb3\x19\x8e\x65\x3b\xc0\x1d\xed\xee\xae\x0f\x02\xe1\x5b\x58\xab\xc1\x9a\x32\x32\x84\x1a\xcf\x72\x1e\xcb\xb6\x4f\x69\x40\x9b\x13\xda\xbe\x19\x87\x4a\xc4\x6c\x19\x6c\xa6\x2a\x96\x34\x60\xcd\xf6\xb4\x3d\x7c\xcd\x12\x39\xbe\xdd\x35\x6e\x24\x47\x14\xf6\xdd\x46\x62\x77\x2d\x53\x0d\x4a\xe2\x77\x0a\xac\x56\x34\xe9\xd9\x26\x57\xd8\xdb\x72\x5c\x36\x9d\xa2\x0c\xa4\x10\xa3\xa5\x01\xc0\xd2\x90\x25\x4a\x37\x81\xbe\x56\x5a\x9b\x68\x4a\xe2\xdd\x89\x66\xdf\xa6\x9c\x6c\x4d\xc0\x29\x6f\x55\x4d\x54\x63\x09\xda\x93\x52\x8e\x6c\xf2\x2d\xd3\x56\x53\x6a\x75\xbc\x0b\x5e\xba\x5b\x6e\xaa\x0a\x06\x6b\x05\x75\xa2\xe0\xfa\xb1\x28\x85\x34\x5d\xe4\x7e\x2a\xa9\x67\xd1\x58\x06\xa1\x6c\xcd\xa8\xb1\xcf\xcd\x30\x8a\x92\x69\x97\xe3\x4d\x67\x52\x61\x32\xb5\xb9\xfc\xa8\xc9\x55\x29\x9b\xca\x75\xaa\x9e\x69\xeb\xea\x5a\x86\x8c\xf8\xe5\xb4\xae\x2d\x69\x4d\xb4\x3a\xf3\x4b\x5a\x22\x93\x7b\x5d\x5b\x34\x4a\x88\xd1\xcb\x75\xa1\x8e\xfc\x12\x6b\xf6\x19\xab\xb5\xb9\x66\xbb\x9a\x62\xa4\x35\x6d\x57\xeb\x9a\x07\x25\x98\xbc\x60\x55\xfb\x34\x09\xc8\xb3\xd5\x9e\x6e\xab\x59\x48\x47\xd9\x7d\x55\x2f\xde\x9e\x3d\xfe\x9f\xcb\xa3\x4b\x68\x57\x2f\x2a\x8a\xff\x1e\x83\x81\x45\x95\xe8\x0b\x55\x42\x39\x63\x54\x67\xa1\xd5\x67\xbc\x1d\x99\x7a\xd0\x28\x7c\xb7\xb8\x07\x96\xee\x63\x1b\x6d\x17\xc6\xc4\xdf\xd9\x9e\xb1\x2e\x8b\xaa\x65\xe6\xef\x1f\x57\x26\x97\xfd\xf0\xed\xf7\x59\x52\x12\x2e\xa1\xc6\x40\xf0\x53\xe5\xf5\x02\x33\xb8\x47\xfa\x27\x3b\x60\x9a\x01\xb1\x68\xd1\x0d\x0c\x2d\x42\x89\x79\x50\xb0\x72\x8f\xc0\xa1\xd5\xbd\xa5\x62\x8c\x31\x4b\x70\x0c\x2f\x71\x6b\x50\x58\x7e\xb4\x5b\x2a\x36\xd9\x85\x7d\xa3\x8b\xbb\xa9\xa0\x00\xfd\xa0\x42\xa3\x3c\x63\x52\x11\x71\x4a\x5a\x10\x83\x72\x05\x88\xaf\x4e\x6c\x29\x97\x69\x91\xa1\x03\xd3\xf5\x6d\xf1\x79\xf3\xd7\x74\x79\x4d\xf3\xae\xcb\xf8\xf6\x5c\xf4\x92\xd0\x8e\x22\x2e\xc0\x94\xc2\xda\x65\xd1\x37\xf0\x2d\xac\xe5\x04\x6e\xb0\x8d\x49\x91\x68\x1d\xb7\x22\x61\x0a\x49\x55\xc5\xd5\x53\xe4\x79\x4e\xf1\x3d\x19\xb1\x3b\xd9\x8e\xb1\xdf\x0a\x3c\xbc\x75\x37\x4d\x03\x3a\x0a\x30\xe9\x3f\x00\x19\xad\x91\xd1\x76\x38\x49\x23\x08\xb9\x46\xfc\xe6\x9e\x06\xc5\x7d\x41\x25\x6d\x21\x85\x2f\x63\x1c\x2d\xe8\xc1\xac\xbb\x3d\x16\xd1\x02\x1a\xf2\x34\x2d\xaf\xdf\xfe\x14\x54\xcf\x96\x2f\x27\x2c\x8b\x81\x8e\x1e\x0e\x00\x82\xbf\x2d\x23\xc4\xdc\x15\x76\xe7\x84\x1f\x86\x6c\xf2\x35\x63\xb8\x0c\x1c\x65\xd2\x22\xe7\x3e\x61\x7d\x17\xbf\x69\x51\xdb\x33\x88\xb9\x24\x2b\x2e\xb3\xa8\x5b\x69\xee\xb7\x34\xaf\x3f\xce\x72\x03\xe8\x1b\x39\xd0\x1e\xd9\x37\x8d\x80\x59\x51\x80\x59\x0c\x50\xd4\x03\xe7\x5b\x0c\x8f\xfe\x15\x43\xa6\x77\x1f\x4a\x1b\xbe\xf8\xda\x84\x16\x7b\xee\xe0\xf1\xb7\xf8\xe1\x78\x0c\x77\x76\xb0\x6c\xc0\xf3\x44\x25\xf2\xd5\x0a\xc6\x19\xac\x6e\x5e\x3c\xfb\x67\xeb\x27\x62\x0c\x91\xfc\x88\x27\x1d\x02\x70\xfc\xed\x6d\xde\x24\x75\x04\xac\x78\x43\xea\xe5\xfc\x6f\xc3\x4b\x20\x95\x9a\x0c\xe2\xe7\x57\x84\x89\xa8\xc1\x88\x0b\x24\x11\xcc\x3a\x18\xdc\x8a\x77\x47\x1d\x6f\xfc\x2d\x64\x05\x7e\xa9\x64\x02\xc4\x9d\x97\x18\xce\x33\x7a\xbb\xbc\xf3\x90\xbc\x2b\x49\xd3\x9b\xfb\x0b\x76\x29\x6f\xce\xeb\xfd\x9a\x46\x49\xc7\x05\x2e\x2d\x58\x89\xd7\xf7\x48\x18\x27\x79\x51\x3a\xd3\xe4\xb1\xed\x49\x63\xb8\x5a\x1a\xc3\xcf\xe7\xfe\xdf\x93\x97\xbf\xd8\xa5\x31\x3d\xde\x12\xb8\x4f\x99\xc8\xae\x89\x5f\x4f\x35\x71\xc4\x6a\xcb\xec\xf3\x4d\x77\x1f\x98\x4d\x36\x3c\xe4\x8f\xa5\x2c\x42\x5a\x22\xff\xb4\x91\xbc\xb6\x0d\x48\xe7\xca\x64\xa2\x61\xb5\xb3\xbb\x5d\xea\x08\x3d\xc6\xf6\xea\xd2\xfa\xa4\x5d\xb0\xfc\x90\xd8\x6c\x6b\xd7\x39\x54\xdb\xe3\x93\xca\x3d\x1e\x8b\x9a\xaf\x82\xc3\x5e\x27\xf1\x8d\x7c\xac\xa3\xad\x9b\x64\x8d\x75\x13\xa5\x89\x4d\xa7\x79\x3a\x8d\xa3\xf9\x1c\xa2\x5d\xc5\xf1\x6e\xaa\x36\xb4\xf3\x00\x01\x1f\xc4\x20\x7b\x20\xee\x39\x11\xb9\x0b\xe8\x0d\xf6\x4c\x3c\xbe\x5d\x3d\xe0\x9b\x15\x5f\x80\x1f\xe0\x4d\xd6\x41\x9e\xdd\xdf\x19\x9f\xc3\xc9\x18\x9d\xc3\x09\x19\x4e\xdc\xcb\xeb\x32\x8f\x1f\x3e\x54\x7f\x82\xb8\xa7\x16\xdd\xa4\x77\xd5\x0b\xa0\xc3\x41\x16\xa2\xc4\x89\x3f\x7d\x8a\x7b\x4a\x1d\x67\x6f\x67\xa7\x13\xf7\x44\x91\xe7\xf1\xc3\xbe\x07\xe2\x71\xd2\xcb\xa8\x53\xd8\xeb\x21\x78\x05\x51\xc6\xfe\x0a\x97\x01\x54\x3a\x98\x00\xe4\xdd\xf2\xd1\x20\x36\x54\xef\xd3\xa7\x64\xe5\x81\xd8\x03\xfe\xce\x0e\xdb\x27\x1e\x8e\xc7\xda\xf7\xe8\xe7\x68\x6f\xf4\xeb\x4f\xb4\x5f\xbd\xc0\x8f\xe3\x8e\xef\x8d\x58\x23\x40\xbb\xc9\x77\x20\x0f\xc8\x33\xd6\xfc\x42\xd9\xee\x86\x49\xd7\xe2\x31\xc5\x4b\x05\xf1\x6a\x5b\x9b\x60\x5a\xa3\x92\x1e\x3e\xff\x3d\x79\x17\x7f\x28\xdf\x04\x79\xfc\x39\x57\x35\x59\x40\x31\x37\x52\xaa\xa5\x4e\xda\x6d\x8b\x42\x89\x3a\x04\xca\x47\xda\xa8\x3d\x6c\x73\x13\x5b\xe3\xf9\xe0\x50\x41\xd3\xe9\x2b\xc6\x71\x55\x43\x71\xa3\xac\x4b\x44\x90\x2b\xa8\xd7\xe7\x1d\xca\xdc\xc0\xa1\x6a\x56\xe7\xb5\x9e\x15\xc7\x9d\xfa\x90\x9a\xb7\xcc\x94\x41\xd5\xbf\xa0\xe4\x15\x1a\x6f\xef\x6f\xf4\xb6\xea\x4d\x50\xea\x51\x4f\x34\xd0\x12\xeb\x0c\x4d\x4a\x11\xc2\x44\x28\xd7\xc4\x8c\xa6\x57\x68\xd7\x1e\xa2\x6a\xab\xc7\x4e\x99\x19\xa1\xa1\x87\xa0\xe5\xe1\xd4\xe0\x9c\xd1\x75\x8c\x30\x0a\xbb\x11\x35\x3c\x53\xbb\x20\xe6\x97\x96\x8b\x90\x15\xb5\xbe\x8e\xe2\xb8\x1b\x32\x13\xf2\xc6\xfa\x87\x7a\x1c\xc8\x23\x2a\x86\xd8\x59\x8e\x3b\xf2\x94\xa2\xd1\x5c\x30\x04\x52\x35\x61\x7d\x05\xbe\xf1\x3b\x1e\xd3\x9c\x3d\x87\xa9\x24\x99\x23\x75\x12\x16\xb2\x83\x96\x01\x4e\x51\x87\x9d\x10\xfc\xc0\x78\x60\xb3\x4b\xb3\x54\x3d\x80\xc7\x0a\x1f\x23\x76\xad\x93\x8c\x33\x6f\x67\xa7\x7c\xdb\xbb\x55\x6a\xfa\x27\xea\xc9\xa1\xd5\xfe\x4f\xf4\x53\x43\x56\xfe\x4f\xe4\xf9\x00\xd8\x66\x98\x68\x3b\x77\x52\xdc\xb9\x91\xd8\xb9\x57\xde\x8a\x2f\x20\x61\x73\xa7\xd2\x2f\x1b\x41\x4f\xaa\x4e\xdc\xbb\x90\x2f\x37\xdb\xd3\xaa\x32\xc4\x5f\x58\x81\x6c\x1c\x75\x62\xad\xce\x7e\xbe\xc8\x93\x09\xb8\xd5\x06\xf8\xb0\x0f\x14\x42\x3c\xec\xe7\x43\x7c\xd8\x07\xca\x20\x46\x64\x05\xac\x3c\x60\x34\x9d\xd7\xb5\x47\xf5\x75\xed\xad\x6f\x92\x63\x5c\x29\x6a\x6f\xb4\xaf\x95\xce\xf7\x5b\x7e\x42\x2b\x9d\xaf\x7d\x25\x56\x45\xa3\x65\x65\xe9\xfc\x14\x2c\x9b\x94\xce\x47\xd8\x8f\xbb\xd2\xd3\xae\x48\x4b\x90\xb4\xdd\xcd\xc8\x2d\x1f\xc3\xf2\x97\x36\xb7\x0e\x97\xbe\x20\xcf\xc8\x5b\x7d\xaa\xa7\x50\xf3\x29\x09\xe5\x53\x10\x66\xb5\x6a\x3a\xf0\x76\x23\xfe\x6a\x87\x9a\xd7\x63\xeb\x0a\x73\x41\xf7\x3a\xc2\xb3\x2e\xc7\xb3\xb6\x50\x41\x7b\x49\x79\xb6\x5d\xc3\x7f\x20\x82\xd5\x11\xa9\xbe\x81\x3f\x10\x31\x76\x85\x85\x7c\x53\xa2\xc8\x86\xfe\x00\xc4\xd9\xf6\x8a\xfa\x83\x2d\x24\x75\xc8\xd9\x72\x3a\x85\x19\x86\x61\x57\xd4\x4f\xd8\x2e\xbd\x8a\x1f\xf8\xfa\x09\xb8\xee\x5a\xfb\x03\x0c\x7d\xf7\x02\x5e\xa6\x08\x76\x65\x11\xd1\xf5\x28\x61\x36\xf3\x07\x20\x4c\x92\x76\xe7\x3e\x0e\x66\x30\xeb\xca\xea\x24\x6b\x12\xc7\xd2\xd4\x1f\x80\x40\x9b\xb2\xcc\x1f\x88\x57\xb4\xa2\x30\x6b\x92\x43\x6d\xe3\x8f\x40\x12\xf5\xfc\xe0\xee\xdf\x75\x29\x53\x6c\xea\x0f\x40\x20\x56\x90\x79\xe3\xbd\xc5\x68\xe6\x0f\x40\x98\x0d\x05\xe0\xaf\x5c\xee\x45\x7e\x18\xa5\xdd\xc0\x47\xe1\x7d\xf1\x4e\xfe\x63\x6f\x78\xf1\xd7\xbd\x7f\xf8\x25\x11\x8c\xc2\x1a\x5f\x11\xca\xa8\xd6\x42\x1a\xb0\x8c\x0c\x6e\x26\x1f\x80\x73\x37\x1f\x71\xb1\x38\xc5\x60\x02\x5c\xc7\xac\x83\x5b\x48\x2c\x30\xd3\x76\xca\xe1\xea\xd5\xc0\xa9\x03\x06\xc3\xc0\x4a\x02\x4e\x26\x22\x62\x65\x3d\xf8\x55\x5b\x26\xff\x9e\xa8\xe8\xa5\xd4\xd4\xdc\x17\x09\x15\x4a\xb1\xe0\x7d\x5e\x1d\xd5\x5a\x9c\x75\x4f\xcf\xf3\x18\x16\x02\xe4\x29\xf9\x9a\xe5\xf2\xd7\x16\xad\xaa\x18\xc0\x3e\x18\x52\x78\xf7\x2f\xd8\x79\xb5\x0c\x47\x4d\xe2\x96\xa5\x96\xaa\x25\xa8\xbf\x10\xad\x5a\x9f\x02\xcd\xd3\xba\x72\x54\x1b\x05\x97\x5e\x5a\xe1\x99\x1b\x91\xc7\xff\x4c\x5b\x99\xd8\xcd\xe5\xbf\x86\xeb\xb7\x10\xde\x53\x1a\xcd\x5a\xef\x00\x66\xdd\xb9\x57\xc1\x12\x3f\xff\xf0\xfa\xe8\xdd\xfc\xed\x7e\x65\xa9\xc1\xf7\x1f\xe0\x0d\xf9\x47\x60\x98\x58\xd2\x75\x2e\x23\x18\x87\xbc\x9e\x4d\xe5\x6e\x92\x07\x5a\x53\x6a\xe4\x45\xcf\x19\x56\x87\xdc\xc2\xe8\x8d\xf7\x3c\xe5\xb1\xb0\x4b\x29\x59\x9d\xaa\xdb\x4e\x07\x19\x91\x09\x9f\xfd\xf5\x6b\x5d\x17\x2b\xf0\xa8\xf9\x6b\x0c\xc7\x98\x50\x87\x2e\xa6\xc7\x9a\xab\x4d\xbd\xc5\x7f\x72\x02\x96\x43\x30\x69\x4e\x34\xfb\x4b\x6d\x43\x48\x0b\x69\xab\x79\xfa\x93\x2d\x5f\xaa\x5f\x28\x90\xae\x00\x26\x15\x1e\xb7\x95\x2c\x16\xcf\xdb\x4a\x60\x89\x53\x8a\x22\xba\xd2\x79\x76\xe8\xf0\xba\x12\x8e\x49\x9d\x68\xda\x7f\x1b\xde\x53\x71\x5b\xdd\x53\xce\x05\x05\xd6\xa9\x50\x44\x7e\x50\x92\xe6\x99\xc7\xf6\xaa\x53\x38\xbc\x93\xf2\xf1\xa5\xdb\xb4\x3e\x48\x4b\xdd\xef\xbd\x89\x0d\x6d\xa9\xae\x54\x3c\xd8\xab\x2f\xfb\x6d\xdf\xbc\x1b\x86\x70\xd6\x20\x54\xf0\x5d\x5e\xec\xe3\x7a\x55\x67\x1e\xec\x89\xbb\xf4\x17\x4b\x9f\x12\xa0\xb2\x36\xf0\x8a\xd6\xbb\xff\x66\x91\x3f\x55\xdb\x7f\x01\x4a\x62\xb0\xed\x94\x28\x42\x39\x7b\x4a\x94\x0c\xb9\xe4\xab\x4d\x0b\xd4\x1c\xec\x8d\xc7\x63\xd8\xfb\x00\x6f\x4e\xd3\x10\xee\xec\x48\x90\x84\x30\xca\x16\x3e\x0e\x66\x34\x08\xb1\x93\xc0\x6b\xe7\x87\x74\x99\x41\xf6\x93\x47\xbd\x97\x00\x2d\xb4\x89\x68\xa4\xe7\x14\x9f\x6e\x38\xfe\xd6\x75\x49\x77\x9e\xb0\x63\x69\x04\xbd\x02\x08\x42\x83\x93\x13\x5e\x7e\x86\x13\x93\xb0\x85\x38\x2f\x2b\x27\x3e\x8c\xc2\xb7\x30\x80\xd1\x15\x3c\x21\xf2\x7a\x39\x74\x07\x27\x7c\x3e\x9b\xec\x2f\x16\x88\x49\x38\x31\xef\x03\xae\x27\x42\x1a\x43\xa5\xec\x78\x83\xaa\xc6\xe4\xe1\xae\xfc\xfd\x85\xab\x1a\xff\x1d\xf9\xb3\x53\xdc\xff\x9f\x9a\xdc\xad\x6a\x00\x50\x3b\x1e\x84\x2a\x7d\xb0\x84\x18\x49\x2b\x77\x52\x56\xb2\xef\xb0\x90\x0e\x93\x1f\x11\xee\x35\x8a\x30\x74\xa8\xa4\x42\xc3\x59\x24\xea\x26\x03\x9a\xaf\x29\xb4\xc8\x62\x8f\x6c\x72\xb3\x71\x18\x6b\xe7\x21\x2d\xb7\x02\x4c\xb5\xaa\x4f\xa6\x19\x21\xba\x4f\xf2\xda\x0f\xc0\x75\x66\x7e\xd6\x65\x57\x4b\xf5\xb8\x8a\xd3\xa4\xaa\x92\x9a\xfd\x94\x65\xfa\x56\x5f\x2f\xc4\xb5\x0f\xf6\x18\xa5\xcf\xc9\xc5\x89\x90\xef\xfc\x25\x4e\x2f\xd3\x80\xe2\x0f\xe5\x7f\xcb\x13\x93\x35\x5b\x90\x7d\x2a\x0e\x4c\xad\x0e\x4d\x45\x87\x79\x62\xb8\x0d\x35\xff\x07\xff\x63\x34\x5f\xce\x9d\xe1\xc1\xa1\x13\xcc\x7c\xe4\x07\xb4\x84\xbd\xf3\x83\x7f\xe3\xa4\x49\x7c\xe3\xf0\x1c\x5e\x27\x86\x98\xdc\x71\x3a\xcb\xc5\x02\x22\x8a\x5f\xec\x27\xe1\x6e\x8a\x9c\x38\xbd\x66\x17\x3c\x71\x25\x59\x12\x7e\x27\xad\x2c\x33\xec\x5c\x40\x67\x99\x44\xbf\x2d\x61\xcf\xec\x9a\x0d\x0f\xaf\x62\x7a\xd7\xaf\x42\x91\x61\x94\xb2\x4a\x5e\x52\x68\xb0\x7c\x81\xee\xcd\x51\xa8\x16\xd1\x69\x8e\x4c\x5f\xaa\x2c\xb6\x28\x20\x54\xc6\x93\x22\xcc\x24\x4a\x13\xa7\xf3\x9a\xa3\xbc\x7b\x16\x2e\x15\x0d\x90\xf6\x7d\x04\x05\x06\x84\xe0\x46\xa5\x9d\x49\x81\x7f\x95\x9b\x39\x70\x67\x4b\xae\x2c\xf0\x61\x9d\xf8\x04\x8a\x4a\x12\xad\xf2\x2c\x8a\xf0\xe5\x74\xd3\xae\xd8\x14\x29\xbd\x74\xf1\x1b\xf5\x71\x1b\x9f\x3d\x36\xb0\xf6\xf8\xe4\x32\x0c\x95\xbc\x56\xba\x8e\xca\x51\x52\x0b\xb2\xd6\x72\xc3\x4d\x03\x85\x5d\xba\xb9\xe9\xc4\xd5\x2a\x1d\x2b\xf5\xe6\x27\x85\x42\xf3\x95\x05\xe6\x0b\x55\x32\xd7\xdf\xe1\x99\x7a\xc1\xed\x4d\xf4\x9f\x83\x89\xe4\xa6\x9c\xfe\x4d\xeb\xd7\xb4\x11\xac\xb9\xfe\x1d\xf8\x09\x2f\x32\xc0\xcb\x23\x58\x2b\xeb\xe9\x42\xb7\x01\x2e\xa0\x64\xa9\xb5\x91\xa0\x75\x89\x63\xc3\x12\x05\xac\xca\x00\xd3\xfe\x59\xfd\x01\xf6\xb7\x56\x5e\x40\x39\xb8\xdb\xe6\xa5\xd0\x57\xf5\xa2\x0a\x0d\x64\xa4\x60\x16\x11\xca\x18\xaf\x29\xcf\x2e\x71\x14\x67\xbb\x61\x3a\xdf\x85\x44\xd2\x15\x15\x15\x0d\x31\x0a\x24\xdb\x13\xa4\x50\xb5\x20\xf5\xe3\xc7\xf8\x1a\xef\x07\x25\xb1\xdd\x9c\x67\xc4\x38\xe4\x78\x84\x5d\x2d\x37\xb6\xe5\x30\xe0\x1c\x03\xd0\x04\x71\x17\x31\x0f\xb2\x6a\x3e\x87\x24\xb1\xa4\x25\x5b\x8a\xd8\x0b\x29\x4c\xa9\x14\xa1\xd4\xb6\x67\x0b\x2f\x8f\x6b\x26\x0d\x57\x97\xb6\x37\x05\xa3\x83\x5c\x06\xe3\xab\xd8\x80\x57\x1a\xe6\x5b\x9f\x3c\x9c\x74\xec\x15\xc3\x50\x74\x60\x36\x45\x2b\xc3\xbf\x65\xe6\x2a\xad\x48\xbc\xcc\xe7\x6d\x99\xb4\xb3\x7e\xb9\xfc\x41\xdf\x82\x12\xdc\x20\x26\xbb\x1d\xb2\x6b\x7e\x6e\x34\x22\xd0\x1a\xc6\x7d\xfb\x31\x26\xe9\xbc\xbe\xd1\xbd\xbc\x61\x6b\x69\xff\xbb\xaf\x4c\xdd\xa6\xd4\xbf\x76\xc2\x9b\xf8\xc5\x03\x86\x4a\x4d\x3a\xef\xbe\xa7\x6f\xbf\xe7\xab\x27\xb7\x80\xa9\xcf\x9c\xd3\x67\x26\x52\x48\x1f\xca\x49\xb3\xdb\xc4\x1a\xae\x85\xa6\x16\xb0\xc1\x86\x16\x30\xb1\x54\xe4\x41\x20\x28\xcb\x6b\xf5\xf0\x83\x3f\x3f\xeb\xf3\xd3\x70\xc2\xa9\xc0\xcf\xe9\x01\x3f\xa8\x29\x80\x3f\xf9\xf7\x68\xeb\xc5\xad\xb9\x04\xd5\x66\x9a\xb5\xb6\xcb\x04\x1d\x51\xb6\xb7\xb9\x98\xb3\x0f\x06\xc7\xc6\xb0\x8f\xf4\xe1\x1f\x15\xe4\x95\xf6\x38\xbe\x77\x01\x48\xa0\xeb\x30\x36\x88\x45\xcb\x0a\x90\x84\xd7\x35\x0e\x51\x7d\xad\xae\x4a\xab\x45\xfb\x60\x05\xd2\x9d\x04\x5e\x8b\xd2\x36\x76\x6d\xd3\xaa\x05\xe5\x37\xb6\x01\x3c\xbd\xc5\xbc\x7d\x43\x63\x6a\xb0\xb7\x68\x94\x6d\xb4\xbb\x28\xe4\x6a\xb5\xbf\x2c\xb4\xe3\xf4\xb3\xef\x30\x7c\xed\x69\x7b\x8c\x38\x8a\x1b\xed\x35\x4c\xdb\x64\xcd\x4c\xb8\xfb\xf6\x71\xd5\xd6\xa3\x1d\xdf\x4d\x92\x98\x5a\x54\x66\x6c\x8c\x32\xf1\x59\x8f\x79\x05\x70\xce\x06\xb2\x37\xd0\x72\xfa\xfc\x2b\x89\x77\x77\x24\x6a\x3a\xca\x47\x8b\x9e\xb8\x1c\xd1\x65\x50\x55\x0a\xdc\xa5\xd5\xc1\x0a\xee\x28\x95\xc5\x8a\xc6\xc1\x62\x3a\xdf\x01\xdd\x3f\xa3\xec\xcc\xbf\xa2\xd5\xd2\x79\x3f\xe9\xb5\x37\x28\xca\x70\x94\x40\xfd\x2a\x2f\x57\xe5\xd6\x18\x0b\x29\xbf\x66\xcb\x8b\x79\x64\xda\x4a\xcc\x69\x2a\x74\x61\xdd\x0a\x09\xb9\x33\xb6\x0f\xdc\x05\x4a\xa7\x44\xea\x77\x88\xaa\x80\x21\x9a\x47\x09\x8b\xe4\x6e\x19\x46\xd0\x60\x6f\xf5\x93\xd0\xf1\x17\x8b\xd8\xb6\xb5\x96\x5d\xd2\xea\x41\xda\x2d\xb9\x25\xd4\xb1\x92\x9b\x15\x8f\x14\x2c\x61\xab\x1d\x79\x87\xec\x56\x53\x8b\xb2\xb5\xb8\xdb\x98\x36\xc5\x6a\xbc\x26\x23\x0f\xad\x8c\x3c\x6c\xc1\xc8\x43\x83\x91\x0b\xa4\x75\x85\xfb\x89\x68\x9c\xfe\x15\x2c\xda\x9d\x86\xf9\xf2\x51\x04\x95\xaa\xfa\xfe\x35\xca\x60\x19\xf9\xad\x8b\x6b\xf8\x9f\xc5\x55\xb1\xb8\x4c\xa6\xd9\x64\x71\xd5\xaa\xf0\xad\x97\x49\x5d\x8d\x86\x41\x5d\x6e\x70\xbf\x58\x20\x82\xd5\x6c\xd6\xcc\x43\x56\x43\x24\xaf\x18\x5a\x2d\xa9\x13\xe9\x94\xde\x56\x83\x9b\x0d\x01\x7e\xd8\x67\xc2\xc2\x70\x50\x2e\xc8\x8b\xe8\x99\x33\x1a\xa9\xea\x5c\xa6\x88\xd9\x30\x45\x70\xd9\x97\x44\x11\x39\x21\xdc\xe7\xf8\x89\x03\x3f\xd2\x6d\x64\x4a\xbb\xb6\x35\x39\x47\xa4\x18\xb5\x84\x35\x51\xe3\x25\x87\x36\x4d\x81\xa7\xff\x33\xb0\x70\x5d\x3e\x19\xaa\xc8\x01\xc2\x0a\x96\x2e\x60\x52\x00\x77\xb3\x28\x1c\x0d\x14\x0d\x54\xb4\x79\x94\x38\x59\x36\x27\x9f\x48\x30\x5a\x07\x15\xe6\xb1\xe6\xf8\x2b\xef\xd5\xe3\xf6\xdd\xa2\x7b\x45\x6b\x18\x02\xec\x5f\x2c\x63\x1f\x75\x83\x34\x26\x2b\x33\x52\x6a\xe4\xa1\xf4\x3a\xd3\x96\xd6\x41\x3e\x9d\x64\x33\xe3\xf4\x7f\x17\xcd\xe1\x28\x84\x59\xc0\xdd\x62\x23\x9f\xfc\x59\xe1\xfd\xd8\xdc\x58\xb0\x5e\x95\x25\xc1\x46\x78\xe6\xb6\xf3\xdf\xea\x2f\x68\x7e\x2f\x6b\xd8\x51\xc3\x6a\x6f\x35\x83\x44\xe9\xf5\xda\x23\x0c\x4b\x15\x77\xf1\x88\xcf\x55\x89\xc3\x7c\x4e\x0f\x68\xd5\xf5\xa0\xe7\x07\x71\xd6\x23\x0b\x2a\xeb\xc1\x30\xc2\xae\x0c\xa0\x7b\xf9\x4c\xc7\x6f\xcf\xe3\xa9\x06\xba\x3f\xbb\x84\x94\x15\x14\xae\xe9\xb0\xfc\x48\xc1\xe9\xd8\xe0\x33\xdb\x9a\x90\x96\xea\xa1\xda\xa7\x22\xde\x28\x6b\x5b\xa9\x4e\xf4\x54\x09\xd9\xb5\x16\x4f\x2d\xb5\x01\xc8\x4a\x50\x79\x49\x4a\x8c\x96\x10\x50\x2f\x58\x85\x80\xcd\x70\x54\x8c\x37\xd9\x4b\xf7\xcb\xa2\xf5\x43\x8a\xe0\x3a\xc6\xa1\x3b\xc2\xab\x34\x99\xb7\x80\x7c\x2c\x8b\xa8\x94\x59\xce\x36\xab\xba\xb0\xe9\x92\xad\xf2\x50\x0c\x89\x44\xe9\x92\x36\xac\x1e\x5d\x0e\x27\xbb\x56\x2e\x82\xfa\xdf\xf3\x30\xc2\xad\x73\x01\xd4\xff\x7e\x8e\xe0\x75\x23\x59\xdf\x20\xb9\xdd\x0a\x59\x11\x5e\xa2\x11\xe7\x48\x88\xf0\xfd\x75\x4b\x2b\x36\xe5\x1c\x2a\x5e\x85\x64\x3b\x40\xe9\xb2\x18\xc3\x50\xd2\x9c\xc5\xe2\x3b\x64\xe8\xc5\x9b\x15\xcb\x61\x15\x1d\x65\x17\xde\x52\x2c\x97\x4a\x7a\xae\x51\xb4\xa6\xee\xf5\x3e\xb0\x54\xa0\x71\xae\x7d\x94\x44\x49\xb5\xa1\xda\xde\x62\xf5\xd3\x8a\x1f\x8c\x0b\x1b\x0d\x5e\x71\x1c\x0e\x36\xef\x30\x12\x55\xb7\x5d\x4e\x3b\xbd\x03\x8b\x86\xdf\x3e\x41\xd0\xb9\x49\x97\x4e\xb6\xe4\x7f\x5c\xfb\x09\x76\x70\xea\x30\xec\x1d\x07\xcf\xa2\x8c\xae\xea\x27\x9b\xf4\xab\xe9\x23\x7d\xe0\x2e\xe3\x56\x84\x96\xab\xa1\x05\xeb\x9b\x6d\xe8\xd5\x4e\x8a\xac\xad\xa8\x2d\x14\x76\xd5\x2d\x35\xa8\xea\xe7\xe4\x91\x2c\xc4\xed\xe6\xd8\xd7\xaa\x84\x5b\x5e\x18\xa4\xd1\x6a\x69\x4c\xdb\x02\xb9\x9a\xd3\xa6\x6a\x7b\xa8\x32\x13\xac\xdd\xd7\xda\x47\x9a\x6c\x21\x8d\x77\xec\x26\x27\x81\xa5\x58\x25\x38\x02\xc7\xeb\xb8\x96\xca\x1e\xda\x03\xfb\xc0\xac\x75\x69\xb5\xa4\x18\xe8\xce\x9b\x83\x84\xd6\x46\x40\x65\x1a\xee\x33\x0f\x59\x63\x89\x03\x11\xab\xc2\xc2\xe0\xd8\xe6\x4b\x91\x3c\x40\x5e\xe0\x49\x03\xb2\x3c\x26\x44\xdc\xa7\x43\x13\x0d\x38\xea\x34\x77\xf7\xf0\x3b\xd4\x80\x23\x4d\x36\xaa\x21\x47\xba\x63\xd9\xe7\x5f\xf0\xe7\x73\x23\x10\xb7\x01\xa5\x3c\x68\x91\xa6\xb2\xd1\xf7\x10\xee\x5e\xdc\xf0\x8a\x31\x5d\x9c\x6a\xd1\x5c\x6d\x23\xb1\xf4\x20\x25\x2d\x1a\xcb\xaf\x8c\xc6\x42\x96\x68\x2c\xd2\xe3\x92\x5c\x05\x72\x2b\x8b\x70\x8a\x6e\xe8\x77\x5d\xaf\x36\xaf\x41\x0d\xe7\x52\xc3\xbc\x8a\xa1\x5d\x4a\x34\x10\x9d\x37\xf1\x24\x23\x2c\xff\x08\x19\xf8\x12\xc3\xb0\xe7\xc7\x91\x9f\x75\x14\xaa\xf7\x42\x1f\xfb\xed\x13\x29\xf2\x06\x58\x3a\x05\x99\xf0\xd3\x34\xc1\x7e\x94\x40\x44\x7f\x89\x8f\xb8\xa2\x4a\x27\x9d\x71\x8a\x95\x9d\xf4\x4e\xfd\x38\x26\x33\x4d\x53\x1d\xce\xe8\x1d\x25\x05\x83\xda\x3b\x2d\x48\xd9\x0d\x7a\xd3\x0b\x62\xe8\xa3\xce\xed\x33\x1f\xfb\x01\x4c\x30\x44\x23\x96\x5a\x11\xac\x68\x81\x1a\x66\x2f\x37\x10\xb5\x95\xfe\x19\x19\x1d\x2c\xc4\x0e\x02\x42\xa4\x11\x5e\x59\x32\x39\x44\xcd\x4e\x25\xad\x24\x49\xd1\x9c\x42\xd0\xb1\x36\x8c\xfe\x8e\x45\xf2\xc8\x83\xec\x3a\xc2\xc1\xac\x83\x69\x1e\x83\x77\x1b\xf8\x19\x64\x0e\x50\xee\x10\x1e\x15\x2a\x79\xb2\x75\x89\x79\xba\x83\x5c\xbb\xe3\xf1\x98\x5f\xe3\xe8\xdc\xa4\x17\x92\xd7\x3b\x6e\x2f\x48\x43\xd8\x25\xc2\x3c\x59\xe3\xb8\x97\xc0\x8f\xa2\xf2\xcf\x59\x74\x11\x47\xc9\xd4\xeb\x85\x51\x78\xb2\x58\x10\xda\x79\x0f\x2e\x10\xf4\x3f\x3c\xe0\xfc\x3d\x2a\xa5\xfd\xca\x4c\x3b\xf1\x1b\x44\x14\x2e\x31\xdc\xf5\x93\x24\x5d\x26\x01\xb4\xc4\x14\x7e\x99\xa4\xcd\x77\xaf\x5e\x9f\x9d\x1c\x7d\x78\x6e\x0f\x00\x7c\x9a\xa9\xf0\xd6\x38\xc2\xb1\x2d\x67\xb3\x20\x31\x0c\x99\x32\xa9\x95\xbf\x31\x91\x57\x69\x02\x79\xd7\x51\x03\xe0\x54\xd5\x83\x9a\x0b\x74\x9c\xbe\x82\x71\x68\x89\x61\x57\x12\xd4\xb5\xf8\xc4\x6b\x0e\x04\x3a\xaa\x85\x3f\x85\x5d\x3e\xb2\x36\x7b\xa8\x65\x36\xef\x10\x0d\xfa\x41\x03\xde\xda\x06\xfa\x33\x88\x40\x0a\x96\x20\xc8\x51\xa0\x43\x81\x02\xed\xdd\x26\xf7\x15\xa2\x53\x76\x76\xfe\x1f\xc8\xea\x7f\x0f\xc8\xea\x45\x4d\x7e\xd8\xf1\xcd\xc7\x85\xff\xfb\x8b\xd6\xb5\xbd\xac\x00\xd1\x36\x08\x65\x25\x1b\xc3\x5a\x71\xb1\x04\x79\x59\x79\xed\x18\x0c\x34\x77\xba\xb0\xa2\xcc\xd3\x90\x16\x11\x90\xf1\xf6\xc1\x12\x21\x98\x60\x9e\x6f\x83\xe0\x25\x82\x54\xe0\x7c\x47\x37\x2d\xe0\x9e\xe4\x5b\xa0\xe6\x60\xca\x53\xbf\xc9\x05\x91\xaa\x91\x5f\xa1\xbb\x06\xca\x3f\xf0\x96\xfc\x96\x25\x6c\x95\xe7\xf8\x17\x27\x7a\x8e\x36\x7b\x7f\x57\x1c\x0a\xba\x8d\x55\x79\x40\xd9\xa1\x95\x58\xe7\xca\x8d\x59\x03\x4b\x36\x90\x91\xd5\x2a\x2d\x54\xf2\x6e\xbd\x6b\x17\x61\x91\x2f\x73\x58\xe4\x82\xfc\x9a\x2e\x71\x0c\xb1\xeb\x49\x9c\x64\xdb\x13\x10\xb9\x5e\x0e\x9c\x2c\x90\x95\x63\x03\x49\x39\x33\x7e\x47\x0d\x91\x95\x6d\xc2\x5f\xc8\x05\x23\xd1\x3f\x90\x02\x56\x17\x5e\xbd\x41\x66\x77\x69\x5c\xe7\xec\x15\xb0\xcb\xab\x29\xc4\x0e\x63\x0d\x05\x16\x87\x96\x39\x61\x0d\xf7\xd8\xcd\x17\x29\xea\xe4\x80\xc6\x54\x6a\x33\x81\x91\xc5\x0b\x7e\x18\x52\x4e\x32\x9e\x07\x65\x10\xc9\xe2\x3d\x66\x5b\xa8\x78\x75\x05\xd2\xf1\xbc\x13\xa9\xa0\xc1\x72\xf4\x9b\x63\x25\x2f\x6d\x6d\x53\xb0\x23\xb4\x69\xd3\x81\xd9\x34\x9f\x83\x73\x7f\xd3\x96\x8d\x76\x73\xf4\xe5\xb8\x1e\x7d\xd9\xfa\xa6\x07\x22\x15\x7a\xd9\x68\x5f\x03\x78\xce\x5a\x7e\x42\x03\x78\xd6\xbe\x12\xa9\xd2\xce\x65\x25\xc0\xf3\x02\x5c\x36\x40\x6a\xca\x37\xa6\xfb\x22\x66\xff\x72\xbc\x17\x3e\xf3\x7f\x7e\x59\x22\x66\x63\xbe\x95\xeb\xf2\x36\xa2\x55\x3f\xab\xb2\x98\x0b\xc7\xd5\xc0\x2a\x79\x73\x34\x0c\x8b\x6d\xdf\x4c\x65\xe3\x60\xff\xaa\xdf\xac\x91\x7d\x9f\xbb\x27\x1b\x98\x6a\xa4\x60\x6f\x26\xaf\x94\xc8\xf4\x4d\x53\x4d\x06\x03\x69\xd7\x16\x09\x43\xa4\x2d\x71\x3c\x9d\x0f\x98\x23\x63\xb8\xcf\x4b\x3d\xc7\xd1\x15\x85\x06\xca\xc8\x31\xc3\xea\x3d\xe4\x37\x7d\x9c\xce\xa3\xc0\x95\x25\x9f\x4d\xaf\x51\x8e\x73\xa1\x21\x2a\xb9\x3f\xfa\x57\xd1\xd4\xc7\x30\x74\x70\xea\xb8\x92\x26\x96\xd3\xbf\x71\x08\x52\x8d\x0e\xa3\xa8\x2f\x0a\xf6\x05\xb5\x65\x71\x70\x8c\xd6\xe7\xa3\xb2\x70\xbe\x58\x7d\x1b\x0e\x9e\x77\xe1\x5b\x93\xef\x2c\x6a\x4d\x49\x46\x9e\xd2\x0e\xcd\xbd\xb3\xa5\xda\xd1\x0c\x44\xe0\x3f\xd8\xd6\x56\x10\x57\x6f\x05\xbf\xdf\x5c\x0f\xfa\xef\xf6\x17\xf6\xad\x80\xd5\xde\xa2\x61\xe3\xe2\xaf\x26\x70\x06\x26\xf3\xe7\xe3\x56\x78\xdf\x9a\x03\x2c\x81\x0d\xe8\x7b\xec\xa3\xf2\x3d\x7b\xae\xb5\xe6\x90\x62\x5f\xb2\xda\xe1\xb9\x98\xbb\xa7\xc3\xe4\xe4\x6f\x14\xdc\xf2\x62\xa3\x61\x01\x69\x34\x32\x4d\xd4\x20\x55\xc1\x75\xdc\x4b\x04\x21\x86\x1f\x71\x97\xd3\xc8\x56\x5d\xb3\x58\xc7\x54\x4d\xb4\xab\x0f\x67\x34\xc7\xc9\x3e\x65\x77\xc6\x94\x0c\xb4\xa4\x77\xf7\x7c\xa0\x59\x8a\x6c\x89\xf6\xe5\xd3\xc9\x9e\xbf\x9f\x63\x2c\x75\x6a\x0f\xd4\x68\xbc\x28\x7b\x41\xbf\x0d\xc3\xd6\x05\x86\x4a\xd6\x03\x59\x41\x5d\xf2\x8a\xd5\x7d\x27\x5f\xb4\x7b\x07\xe5\x6d\x05\xa9\xc2\x88\x6f\xce\x91\x05\x72\x85\xa8\x97\x7f\xba\x97\x7b\x6c\xd5\x00\x05\xe1\xf3\x26\xef\xcc\xd3\xa4\xb7\x8c\x78\xad\x3f\x18\x32\xcf\x82\x92\x7a\x6e\x0f\x23\xe2\x1d\x2b\x8b\x55\x2a\x75\x7b\x2a\x84\xef\x2b\x03\x78\x5c\xf8\x9b\x4d\x88\x5c\x6c\xeb\xa0\xad\x15\xe1\x2c\x2c\x4c\x2b\xa6\xa6\x94\x6d\x99\xcf\xf2\x85\xd8\x84\xf3\xb9\xd4\xf8\x52\x39\x5f\x98\xfe\x92\x73\xf1\xf9\xb9\x5e\x34\x58\x0d\x5e\xd2\x22\x98\xf7\x0a\x61\xf5\x43\x16\xbd\xae\xe2\xbe\x29\x89\x4d\x6a\x92\x92\xad\xe7\xb9\x3c\x65\xb9\xa9\x15\x80\x54\x9f\x11\xeb\x61\x60\x56\xc4\x02\xba\xde\xae\x62\xc4\x14\x9b\x67\xe8\x7e\x5a\xf2\xb1\x86\x5d\x67\x48\xab\x16\x48\xba\xc9\xc4\x10\x55\x2b\xb1\xc6\x4c\xc6\x53\x1d\xe8\x7c\x42\xfc\xb8\xca\x07\xcf\x6d\xcd\xc2\x27\x78\x2e\x02\xcd\x07\x5a\x04\xaf\x30\x84\x90\x06\x4f\xe2\xf8\x45\x91\x3d\xdb\xd5\x5d\x54\xff\x63\x8c\xe6\x70\x96\x2f\x74\xaf\x45\x98\x57\xd3\xa0\xc3\xb2\x93\xa0\x72\xe3\xdc\x18\x80\x42\x62\xde\xe4\x2e\xd3\x5f\xd3\x28\x71\x81\xcb\x52\xd7\xa5\x5b\x56\x15\xea\xba\x44\xff\x0f\xbb\x2c\x7a\x2d\x4a\xae\xd2\xc0\xe7\x4f\xd1\x3a\x5a\x18\x45\xc9\xb4\x8b\x51\x34\x2f\x81\x78\xe3\xbe\xd3\xe8\xb2\x8d\x18\x6c\x0a\x9f\x9a\xad\x28\x1b\x77\x8a\x15\xb3\xca\xec\x38\x53\x88\x9d\xfc\x70\x31\x3d\x66\xd4\xc0\xc1\xe6\x9d\xef\xdd\x0b\x2e\x75\x7e\xfa\x74\x2b\x7c\x50\xe7\x13\x6e\x11\x3f\x9f\x08\x4b\x76\xa7\x0f\x92\x5e\x18\x5d\x5e\x7a\x1d\x29\x82\x02\x28\x4a\xb2\x32\xdc\xdc\x6f\xfb\x9f\x3e\x71\x81\x16\x26\x18\xd1\xc2\xb0\xc6\x37\xbd\x5e\x96\xce\x21\xad\x48\x1b\x43\x7c\x8e\x41\x32\x19\x43\xfe\x09\x57\xef\x8f\xfb\x70\x3c\xc6\x8a\x7d\x39\x61\x1f\x5b\x31\xfb\x11\x67\x5d\x69\x40\xa2\xfd\xe3\x17\xbd\xe2\x67\x57\xe6\x3a\xea\x48\x35\x9c\xb6\x6a\xeb\xa9\x34\xd6\x43\x80\xbd\xf1\xb7\xb7\x19\xc4\xef\xa2\x39\x4c\x97\xb8\xc3\x6a\xdc\x72\x30\x39\x49\x8f\x4f\x9f\xce\x27\x1e\x18\xfc\x37\xf6\x56\xde\x6a\x05\xa2\xb1\xaf\xd8\x22\xd2\x71\x71\x2d\x83\xe5\xf8\x1c\x4d\x40\x30\xae\x33\x6a\xf8\x9a\x91\xc8\x6c\xc6\x03\xa1\xf6\xa9\xf9\xf8\x76\x05\x54\xcf\x43\x50\xe2\x79\x98\x9f\xc3\xc9\x38\xe0\x9e\x87\xb9\xee\x79\x50\x7f\x82\xb9\xe9\x79\x98\x97\x7a\x1e\xe6\x9f\x3e\xcd\x4d\xcf\xc3\x5c\xf7\x3c\xcc\xc7\xcb\x26\x9e\x07\xea\x29\x12\xe6\xc1\x4e\x04\x52\x00\xbd\x4f\x9f\xe0\xca\x03\x73\x0f\x84\x0a\x67\xcc\x0d\xbf\xc0\x9c\x7b\x1e\xb4\xeb\x4f\xe6\x45\xcf\x43\x28\x3d\x0f\xf3\x6a\xcf\x83\xf9\x05\xbb\xda\x46\xba\x38\x27\xc3\x63\x9e\x07\x9f\xa9\xb0\xdc\xbb\x05\x42\x30\x57\xd4\xd1\xac\xd2\xe4\x14\x83\xac\xde\xe4\x54\x26\x07\xdc\x17\xfb\xd3\x6f\x2f\x1f\xbd\x7e\xf7\xdb\xc5\xdf\x6a\xa0\xc2\x95\xb2\x90\x15\x4e\x12\x7b\xe4\x55\xe1\x24\xe5\x80\xe2\xec\x40\xed\x1b\xe7\xe9\xb0\x78\x74\xda\x30\xa0\x2d\x25\x7f\xdb\x9c\x39\x69\xb2\xe6\xbe\x6f\x99\xc4\xfb\x60\x0b\x61\x36\x8c\xad\x72\x13\xdf\xa7\xc7\x90\x9e\x28\x26\x53\xf1\xfd\x16\x2a\x35\xc1\x1f\xe2\x1e\x07\xb8\xcb\x3a\x90\x0d\x85\xbc\x88\x1f\x28\x6d\x8d\xbf\x35\xce\x1e\xe8\x29\x2d\xd0\xe3\x26\x01\xa8\xfc\xb8\x19\x8f\xc7\xc9\x13\xdc\x41\xf2\x74\x43\xe6\xe9\x36\xea\xf0\x4b\x74\xa3\x97\x97\x57\xf9\xde\x05\x41\xe2\xf1\x6f\x21\xe0\x4f\xc6\xc9\x03\x59\x67\x9d\x59\xc6\x3a\x3e\x6b\x41\x54\x36\xbf\x15\xd0\x93\xb7\x1f\xe0\xcd\x08\xf1\x63\x17\x4a\xff\x71\x92\xd7\x67\xb7\x1c\x8f\xe8\x89\x6c\x10\x9c\xc3\x89\x37\x1a\x8c\xc7\x63\xf1\x05\xd6\xbd\x27\x7e\x4f\x46\x96\x68\xcf\x02\xc2\x04\x2b\x70\x3e\x69\xb2\xd1\x04\x08\xe2\x2e\x8b\xb1\xbc\x2f\xbb\xcb\xdf\x82\x77\xc7\xaf\xcf\x4e\x0e\x5a\xbb\x5b\x4b\xb0\xfe\xc8\x41\xe4\x17\xa5\x76\x21\xe4\xe7\xc0\x13\x34\xde\x94\x42\x3d\x5c\xa4\x1f\x73\x65\xd9\x86\x29\x68\x66\xce\xbd\xcd\xbf\x61\x7b\x5c\xc1\x7f\x54\x51\xe8\xda\x81\xd2\xb7\xda\x7b\x0a\xf3\xba\x15\x88\xe1\xb6\xe8\xb8\x74\x82\xba\xc1\xcc\x47\x78\x97\x6d\xe5\xf7\x85\xc9\xae\xfe\xda\x7f\xf5\xcb\xf3\x3d\xdc\x9a\xc9\xe4\xf4\x6d\x6b\xaa\x4a\x48\xb4\x6d\x48\xe8\x30\x0a\x5f\x52\x27\x38\x0f\x58\x6b\x11\xa3\x48\x3b\xd7\xf3\xc3\xf0\x24\x90\xd5\x66\x99\x2b\x95\x6f\xe8\xf4\x02\xfc\x08\x03\xfa\xdb\x5b\x81\xeb\x28\x8e\x9f\x31\x27\x7b\xeb\xef\x70\x21\x58\xf9\x14\xf5\xeb\xb5\x46\x66\x56\x09\x3b\x5d\xde\xa3\x42\x2b\xfe\xaf\xdf\xbf\xf9\xe1\xf2\xd1\xe5\xbd\x62\x3d\x85\x42\xf7\x82\xf3\x1e\xa8\xba\xed\x03\x9d\x0d\xff\x42\xfa\xaa\x72\x61\xa1\x16\x8f\x2b\xae\xb8\xe3\x31\xe1\x9e\xf4\x92\x9d\xd3\xe1\x13\xf6\x8f\xfe\xad\x11\xbb\xb8\x32\x38\x77\xdd\x85\xc2\x18\xd8\xe8\xe4\x66\xfc\x7b\x4f\x38\x77\xf9\xf7\x5f\xff\xfe\xd7\xe9\x4d\xfb\x40\x28\x2d\x3a\x69\x28\x4c\xa6\x3c\x1b\x2e\xff\x53\x00\x9c\x82\xe2\xa3\x2a\x9b\xb2\xd7\xe8\x05\x19\xa4\x54\xfd\x1a\x57\x23\xea\xde\xb3\x42\x82\xe4\xb6\x51\xd1\xbb\x0a\x15\x41\x44\xfc\x5b\xcc\x4f\x6b\x2e\xcc\xed\x2d\x49\xda\x5e\x49\xb0\x3c\xeb\xb7\x07\x94\x65\x9b\x26\x18\xf9\x49\x46\x13\x0d\xd4\x35\xb0\x6a\x1b\xe2\xce\x0d\x5b\xd9\xf8\x76\xc5\x2f\xd0\x59\x24\xbf\x57\x55\x80\xf5\xb4\x04\x3c\x5b\xff\xd2\x20\x40\xdf\x9f\xfb\xc1\x2c\x4a\x44\x8c\x36\xff\xd5\xcb\x70\xba\xe8\x08\xcd\x5e\x3c\xca\x95\xfb\x9d\x1d\xb6\x12\x33\x14\x88\x4b\xda\x7d\xde\x53\xde\xd4\x58\x59\xcc\x51\x82\x21\x5a\x20\x81\x9a\x9f\xa1\x00\xdc\xa6\xc9\xbb\x9c\x32\xb9\xa8\x8f\x69\x4c\xfe\xe9\x32\xc3\xe9\x9c\x17\x2e\xc8\x29\xe8\x82\xdb\x10\x62\x3f\x8a\x47\x70\xe5\x3d\xe0\x35\x0b\xf2\xdb\x1d\xec\xe5\x99\x10\x6f\x10\xc5\x73\x85\xe1\xa7\x4f\xb0\xc7\x89\x27\xcd\x3c\x78\xfc\xed\xad\x65\x7b\xd3\x28\x7d\x8e\xe9\x99\x39\xe1\x14\x32\x2f\x77\xd8\xbf\x80\x6e\x7b\x18\x7e\xc4\x00\xf6\xe8\x17\xbd\x95\x07\x4a\x62\xe5\xa1\xb7\x02\x69\x42\x37\xb5\x7c\x8e\xb0\x77\x7b\x99\xa2\x0e\x63\x4a\x39\xed\x5c\x3f\x01\x88\xd2\xe3\x04\x21\xff\xa6\x93\x7c\x3b\x78\x92\x74\x07\xa3\xbe\x07\xfc\xf1\xe0\xcf\xfe\xff\x4d\xfe\xec\x3f\x7a\xe4\xa1\x73\xbf\x3b\x98\xe4\xaf\x9e\xfb\x93\x5c\xaf\xe2\x6c\x72\x8e\x27\x84\xab\x10\xd9\x41\x57\x6b\x8a\x31\x65\x09\x00\x2a\xff\x70\x56\x38\x23\xb7\x3e\x7d\x32\x58\xcb\xc7\x50\xe7\x11\x72\x0d\xe1\xce\xda\xb2\x8e\xce\xb5\x2b\x20\xa5\x2b\x5b\x4a\x85\x9c\x40\x38\x19\xe3\x15\x50\x25\x24\x2d\xbb\x83\xa5\xe0\x39\xe6\x3b\xb4\x75\x63\xea\x94\xc6\x39\x99\xd5\xb6\xcd\x87\x8d\xa6\xe5\x1b\xd5\x99\x20\x72\x8c\x64\xfb\x21\x97\x95\xd4\x94\xb2\xf7\x76\x76\x70\x6f\xc1\xf8\xff\x19\x5b\x0d\xc5\x2b\x1d\x4e\x43\xd1\x46\x07\xae\x51\xb8\x83\xce\xe9\x7d\x39\x58\xd3\x93\x24\xba\xe8\xff\x54\x92\x37\x51\x7e\xb0\x72\x27\xe8\x44\x07\x47\x6f\xec\x6d\x6e\x04\x88\x5e\x77\xe4\xb1\xb8\xb2\x28\x99\xb6\xf7\x8c\xe4\x53\xb0\x95\x03\x8e\x9f\x66\xcd\x8f\xb8\x8a\xc3\x27\xba\xec\x48\x1b\x31\xdb\xf9\xe9\x1e\xc0\x36\x27\xea\xba\x81\xe3\x87\xfd\xc2\xc1\x44\xab\xff\x3e\xe1\x27\x08\xff\xb4\xb8\xdc\xc9\xdb\x01\xea\xe3\xc2\x54\x2d\x5a\x49\x52\xfc\x03\xbb\xb3\xb3\xd3\x81\xe3\x87\x8d\xda\xca\x5f\xf2\x8a\xdb\x9d\x32\x45\x6b\x08\xa2\xd8\xbf\xe8\x26\xfe\xd5\x7d\x59\x2b\x71\xf2\xd3\x77\x3f\x67\xc3\xd7\x95\x20\xe3\x55\xa1\x4d\x89\xcf\x42\x9b\xf6\xc0\x81\x51\x1c\xeb\x80\xc5\x13\xa8\x68\x20\x6e\xb7\x2b\xec\x74\xdd\xeb\x28\xc4\xb3\x11\x83\xe2\x21\x0f\xba\x7f\x76\x81\x7a\x3f\x86\x97\x98\xdf\x7e\x5c\xbc\x3b\x83\xd1\x74\x26\xee\x1f\x17\xef\xe3\x74\xc1\x6f\x1e\x29\xe6\xeb\xc7\x13\x0d\xc4\x8c\x47\x1b\x52\x2b\x17\x70\xcf\x20\xd1\x5b\x7c\xc4\x80\xd5\x58\xa9\x4d\xb5\xef\x7c\xe6\xcc\x1a\x60\x07\x34\x5e\xc5\x75\xfc\x24\x9a\xfb\xd4\x79\x43\x83\x35\x0a\xf8\x93\x87\x14\x88\x95\xa2\xab\x4e\xec\xb5\x63\x9a\x44\x68\xa8\xd5\x6c\x06\x07\xc5\x1f\x07\x60\xb0\xbf\x4e\x60\x86\xe2\x38\x38\x50\x46\xae\xc6\xa0\x1e\x96\x44\x21\x14\x6b\xab\x15\xaa\xa4\x19\x05\xef\x74\xfd\x40\xbd\x59\x86\x07\x33\xb0\x8e\x29\x8f\xbc\xc8\xfb\x53\x0d\x26\xa2\x76\x68\x86\xe0\xa5\x35\xa6\xa8\x11\x5a\x88\x98\x2c\x15\xa9\xc8\x68\xd7\x84\x20\xca\x07\xb9\x79\xc5\x51\xd5\x34\x2b\x90\x2b\xb0\x7f\xe1\x4e\x4a\xcb\xf9\xf5\x27\x15\xb5\xfb\x4c\x3c\x82\xbe\x68\x88\xae\x10\x22\xd8\xa2\x94\x7a\x37\xca\x2a\x37\x02\xf7\x7d\xb1\x38\xde\xd6\xa7\x1d\xb8\xef\x17\x7e\x22\x89\xa8\x21\x47\x7f\xb9\x5e\xd5\xd5\x64\xf2\x5d\x83\x17\xca\x03\xb8\xd6\x2e\xd0\x53\x13\x8b\x63\x89\xb5\xab\x2b\xda\x2a\x95\xee\x2c\x5e\x4e\xa3\xcb\x1b\x11\xba\xcc\x73\xe9\xe5\x8a\x53\x0b\xfc\x89\x8b\xef\xd2\x85\xf2\xeb\x7b\xba\x57\x2b\x17\x5e\xc1\x4b\xf5\xe7\x2f\xe4\x24\x50\x2b\x06\x46\xd9\x89\xba\x99\x4e\x97\x51\xb8\xbd\x72\x81\xda\x01\xbc\x15\x49\x89\x65\xc5\x93\xd5\xa7\x89\x43\x75\x35\x02\x95\x41\x8e\x1e\x0e\xda\xda\x01\x08\x51\xec\x35\x03\x37\xb0\x4d\x7f\x93\xf8\x57\x79\xa3\x90\xbd\xdf\x71\xff\xcb\x7d\x24\xbf\x29\xf2\xe6\xe9\xdc\x75\x8a\xcf\xc6\x51\x2f\x67\x0d\xd9\xa8\x45\x8c\xd2\x27\xf9\x61\x9f\xf5\xfc\xa7\x45\xe8\xe3\xb2\x72\x7b\x68\x99\xf4\xb2\x60\x06\xc9\x0c\x77\x5c\xff\x12\x43\xf4\x96\xe7\x61\x74\x84\xe1\xbc\x75\xc7\xbc\x15\x60\xd7\x35\x0d\x0d\xee\xec\xc8\x0e\x73\xe9\x4b\xc4\xe9\x80\x5b\x8d\x71\x47\xb0\x97\x5e\x5e\x66\x10\xd3\x5f\x40\xe5\x71\x79\x8b\xfc\x00\xfa\x72\x90\xf7\xd8\x4f\xa0\x2c\x1d\x79\xeb\x5d\xba\x58\xdd\x75\x11\xc8\x75\x04\x58\x03\x92\xd1\x96\x06\xc0\x4a\xcf\x2b\xcf\x28\x2d\x98\xf7\x6c\x8f\xb3\x6a\x3c\x09\x84\x61\xd6\x45\x90\x17\x32\x83\xb6\x27\x63\xff\x26\x5d\xe2\x6c\x77\x8a\xe8\x2e\x91\x83\xa9\x59\x12\x0a\x58\xf2\xf1\x67\x4a\x26\xf8\xf9\xe6\xf0\xa7\x8b\x5f\xd3\x9f\xed\xa2\x75\x00\xe3\x58\xa9\xdb\xd3\x30\x91\x80\xad\x96\x89\x56\x0a\xbe\x38\x21\x4e\x98\xce\xbb\x08\x06\x37\x41\x1c\x25\x53\xa7\x08\xf2\xbb\xc7\x76\xfe\xae\xc0\x0c\x54\x04\x56\x4d\x56\x3d\x98\x98\xa2\xfd\x11\x03\xb8\x54\x84\xef\x43\x79\x81\x9d\x41\x1f\xf5\x0a\x89\xfb\x45\x51\x4c\x0f\x98\x76\x11\xcc\xa2\xdf\x4b\x60\xff\xf9\xbd\x82\x34\xad\xe5\xea\x5a\xc2\x50\x74\xc4\xe7\xc7\x6b\x04\x8e\x07\x7e\x8e\xa1\x39\x64\xe1\x33\x4a\x71\xad\x22\x68\xad\xdf\x10\x76\x35\xef\x6f\xc3\xa8\xcd\xea\x7a\xee\x14\xff\x13\xfa\xb6\xa0\x6f\x79\xdf\x8e\x0e\xe6\xd6\x0f\xaa\x29\x90\x69\xed\x98\xca\x26\x66\xaf\x65\xd4\x78\x3e\xe4\x3c\x2a\x41\xe2\x5e\xe6\x63\x3c\x51\x2e\x6d\x5a\xf2\xd0\xbc\x70\x2c\xb6\xa0\xc4\xc7\xd1\x15\xec\x66\x01\x4a\x19\x6a\x8c\x92\x34\x37\xe5\x09\xe1\x4f\xa9\x49\x38\xc1\x5d\xc6\xe1\xee\x53\xf6\x34\xd5\x6d\x95\x9f\x98\x8a\x4b\xfc\xd7\xa9\x84\xd9\x0c\xe2\x88\x62\xa1\xfc\x0e\x4f\x45\x60\xf9\xb9\x8b\x69\xbd\x21\xa6\x49\x72\x1c\xe9\x81\xc0\x91\x1e\xda\x9d\x2f\x5a\xbb\x55\x90\xf6\x96\x0f\xb6\x05\xc8\xb5\x30\x1d\x25\x21\x57\x5f\x35\x8d\x75\xbf\xf8\xe3\x80\xa9\xc7\x6b\xa9\xaf\xec\x93\xc3\x21\xdd\xad\xb8\x9a\x8a\x6f\x94\x02\x4a\x95\x30\x6a\xae\x48\x07\xb0\xe8\x8f\x8d\x17\x4c\x23\x50\x5c\x91\xf2\xc0\xba\xc8\xf2\x3e\x26\x4a\x5d\xf4\xcf\xb3\x82\xc2\xca\x15\x54\x04\x88\x2d\x1b\x36\x83\x42\x17\x95\x26\xe5\x81\x62\x53\xba\x78\x5d\xe2\x12\xde\x33\xd9\x73\x5d\x80\x66\x33\xb3\xc4\x4e\xe6\x35\xe1\xd4\xd6\xd9\x50\xca\xa0\xd5\x6a\x67\xba\x4e\x43\xcb\x4b\xfc\x95\x95\x83\x9c\xf9\xd9\x89\x3c\xe2\xa9\xf6\xc6\x75\x29\xb6\x30\x14\x95\x2b\x4d\xba\xd7\x51\x12\xa6\xd7\xec\xad\x53\x5f\xd4\x04\x7c\xcf\xb7\xb0\x33\xb6\x83\xbd\x67\x9b\x09\xd7\xe0\xf8\x2f\xa6\xee\xbd\x27\x22\xcd\x76\x14\x34\xab\x80\x29\x74\x35\x90\x8d\x65\xf0\x61\x1e\xcd\x4d\xd1\xbd\x7c\xfc\x12\xc3\xf9\x19\x19\x1c\x8b\x29\xae\xd4\xe8\xe2\x22\x5c\x9a\x8c\x02\x04\xb7\x2d\x54\x39\x66\xca\x1c\x0c\x0e\xfa\x00\xa5\xd7\x5c\xbe\x3f\xe8\x83\xb9\xff\x51\xfe\xe8\x03\x3e\x5d\x14\x1f\x00\xe4\x34\xde\xa2\xee\x57\x0c\xf3\x60\x72\x66\x97\xc9\xc8\xee\x84\xfa\x10\x25\xf1\x3a\x6c\x4c\x53\xa9\x92\xd1\x71\xb8\x42\x55\xcb\xaf\xcb\x41\xb9\x1e\xeb\x81\xd1\xac\x49\xfb\xb1\xea\xd3\x8c\x21\x76\x92\x71\xd6\xa3\x35\x2b\x58\x83\x4a\x60\x4a\x1e\xf7\xc9\xa8\x33\xa6\xc9\x0c\x9d\xe4\xd1\xd8\xfd\xf3\xef\x5d\x3a\xef\x23\x67\xe0\x7a\x20\x59\x6d\xa6\xd9\x72\x3d\xb0\x99\x76\x2b\xdc\xc4\x4c\xfc\x54\xbb\x7e\x7e\xcb\xd4\xab\x91\x6c\xe7\x2a\x82\xd7\x44\xeb\xe9\x78\xab\x09\xd1\x25\x09\x01\x0c\x7c\xbb\x8e\x42\x41\xe0\xbe\x17\x86\x8c\xb9\xff\xf1\x2d\x03\xb1\x97\x8c\xe2\x6a\xe1\x37\x62\x3a\x2d\xf3\x91\xb9\x2c\xe5\x05\x17\x6e\xe6\x6d\x79\x0f\xa2\x4b\x0a\x9c\x44\x67\xe0\x07\x1f\xcf\x7a\x73\xff\x63\x67\xcf\x98\xdf\x1e\xeb\xd0\xa7\x4f\xe7\x13\xe0\x32\x6f\xb3\xeb\x79\x0f\xc4\x1b\x51\x42\xc3\x75\x41\xf1\x4b\x0a\x5b\xfc\x77\xf2\x68\xf8\x78\xc5\x26\xf3\x96\xab\x07\x98\xa8\x96\xd4\xa1\xcb\x94\xf4\xf5\x9c\xcb\xea\x66\xc4\x7b\x9b\xbd\x85\xd3\x28\x63\x69\x3b\x52\xf0\xb6\x58\x18\xd4\xdd\xcf\xf6\xaa\x38\xac\x3c\x6f\x05\xde\x53\x55\xf3\xad\xd4\x34\x0b\x9d\x8d\x32\xee\x96\x86\x21\xf7\x67\xcb\x2b\x51\x32\xfd\xf4\x49\x90\x32\xfb\x0b\xcb\x7f\x1f\x76\xbc\x27\x0c\x43\x05\x32\x87\x51\xc7\x1b\xb1\xe4\x20\xb6\xf8\x58\xf2\x8d\xe7\xe9\x00\x83\xd1\xef\x50\xd3\xee\x85\x0f\x47\xe3\x61\x90\x58\xb8\x98\x30\x69\x97\xf0\x22\x9b\xf6\x44\xbc\xeb\x8f\x07\x20\x1e\xd3\x9c\x99\xef\xd2\x65\x12\x46\xc9\xf4\x94\x8a\x79\x6f\x29\xce\x0b\x88\x8a\x6d\xfd\xe9\x32\x4d\x31\x44\xe7\x28\x8d\xe1\xd8\xe5\xfb\x7f\x94\x5c\xa6\xee\xe4\x4f\x1e\x48\xc7\x71\x0f\xa7\x8b\x47\x51\x8f\x89\x8b\x8c\x05\x1e\xf9\x60\x29\x31\x04\x7b\x51\x92\x40\xc4\x6e\x74\xd3\x07\xdc\x2e\x83\x3b\x2a\x9f\x4b\x76\xec\x83\xa5\x7d\x57\x31\x36\xab\x84\x7f\x8f\x99\x59\xaa\xb6\x28\xbe\x0d\x06\xa5\xdb\x60\xf9\x7e\xc5\x57\x0b\xae\xdb\xaf\x02\x65\xbf\x82\x3b\x3b\x1d\x5c\xd8\xaf\x30\x0f\xcf\x59\x52\x83\x16\x4d\xe9\x14\x9e\x76\x76\xe9\x8c\x1e\x9d\x6f\x52\x1e\xb2\xe2\xad\x56\x80\x8a\xa0\xda\xfc\xab\xa8\x3f\x14\x3e\x91\x3c\xf1\x22\x42\x19\x3e\x49\x82\x59\x8a\x3a\xd0\x02\xfe\x28\x07\x61\x06\x91\x7c\x3b\x50\xb2\x81\xf2\x30\x91\xc1\xe4\x89\xfa\x63\x74\xbb\x22\x1c\xc4\x58\x0e\x23\x11\xed\xf3\x0d\x46\x3d\xba\xb9\xf5\x7e\x7f\x49\x86\xc9\xb3\x77\x30\x9f\xf3\x9d\x1d\xf1\x97\x20\xcd\xce\x0e\x7c\x38\x2e\x6c\x1a\x42\x68\xf1\x84\x51\x2f\x2b\xdc\x02\x0b\x1f\x65\xf0\x65\x82\x69\x0e\x83\x88\xfc\x17\xcd\x03\x34\x56\xc8\x91\x66\x30\xa3\xa1\x41\x2e\xd9\xa3\xfc\xfc\x56\xc6\x20\x24\x3b\x09\xcb\x01\xf7\x1e\xf8\x65\x4b\x80\x72\xb3\xaf\x71\xf3\xb7\xed\xd6\x44\x55\xcb\x4f\x48\xcb\x7e\x96\xbd\x8a\x32\x1a\x6e\xd9\x71\xfd\x8b\xf4\x0a\xba\xde\x48\xbd\xc1\x02\x45\xe4\x3d\x60\x90\x7a\x00\xc4\x14\x8c\xd1\x0a\xc6\x19\x74\x4a\x69\x47\x67\xc5\xb4\xea\x45\x8d\xad\x7a\x2c\xac\x2a\xb3\x99\xf4\x2a\x2c\x6b\xdb\xb3\xa9\x25\xd5\x36\xb5\xc1\xee\x87\x17\xbf\xbc\xdc\xfb\xae\xc4\x5d\x9d\x2c\x96\xf8\x65\x98\xa3\x03\x17\xac\x6b\xb6\x60\xca\x7d\x4b\x16\x53\x5f\x35\xb5\x51\x25\xe9\x3a\xc2\x33\x41\x1d\x47\xb5\x9d\x95\x79\x71\xef\x85\x59\x66\xbf\x81\x59\x66\x0b\xa6\x95\xe6\xe6\x13\xfa\x09\x56\x32\xb9\xc4\x45\x6b\x56\xe4\x73\x0d\xd6\xec\x32\xb3\xe3\xfe\x84\x28\x1a\xe9\x74\x1a\xc3\x6e\x1e\x05\xf0\xbe\xbc\x96\xa5\x85\x40\xec\x83\x47\x05\x1f\x77\x49\xf5\xb2\xb5\x80\x0e\x8c\xe9\xb6\x59\x21\xfa\x6d\xac\x10\x5b\xb6\x44\xec\x6b\x98\x06\x7b\x75\x6a\x69\x31\xab\xbf\xb9\x21\xc1\xee\xbe\xce\x7d\xb8\xa6\x93\x55\x2f\xfd\x22\xad\x49\x96\x7c\xa1\xb3\x59\x7a\xed\x70\xf6\x90\x5c\x57\x52\xb7\xb7\x59\xce\x7d\xed\x32\xb5\x10\xc0\x0d\xd2\x98\xf6\x0c\xb8\x7b\xa5\x24\x28\xe6\x49\xd9\x4a\xe9\xee\x59\xc0\x1f\x86\x34\x49\x33\xcd\x14\x20\x14\xbd\xbc\xe9\x50\x12\x4c\xd4\xf3\xdd\x07\xfb\xfc\x57\x11\x08\xd3\x46\x5f\x6b\x15\xde\x7e\xd1\x48\x03\x24\xcb\x68\xab\xa3\x51\xce\x97\x49\x88\xea\x7a\x17\x77\xc3\x2f\xdf\x47\x21\x6c\xc6\x2f\xcd\xeb\x72\x34\x58\x93\xf2\x8b\xeb\x40\x51\x48\xa3\x56\x71\xc5\x96\x75\xa8\xe1\x4a\xae\xa8\x64\x50\x72\xa3\xc9\x2a\x2a\x7e\x9e\x74\xd6\x66\xf7\x6a\x10\xa8\xd0\x30\xa5\x58\xc9\x13\x90\x91\x04\x5d\x38\x5f\xe0\x1b\x8e\xc4\x2f\xa3\x17\xaa\x62\x09\xa4\x91\x2c\x86\xad\xf2\x0c\xac\x22\x94\x16\x60\x80\x2a\xcd\x51\x49\x59\x80\x01\xce\x8d\x52\x75\x96\x28\xb1\x7c\x37\x4a\x31\x28\x0f\x2d\x90\xaa\x6a\x51\x53\x69\xa9\xa2\x30\x78\x37\x1e\xb9\xcf\x01\x22\x12\x40\xc3\x9a\x0d\xd9\x15\x35\x90\x5d\xa7\xdd\x38\xca\xee\x4d\x62\xcf\xfc\xd1\xd5\x8f\xbf\x3d\xef\xff\xc3\x2e\xa4\x62\x7f\x9a\xe5\x12\x6a\x9e\xde\x2f\x2e\xe4\x8e\x60\xba\x73\x84\xdf\x91\x36\xb2\x97\x44\xd5\x00\xd4\xb7\x64\x71\x0d\x73\xef\xca\x40\x15\x9d\x8a\x58\x4e\x43\xb2\x77\xb8\xef\x68\x0b\x45\x84\x20\xbd\xca\xa5\xf1\xe2\x51\xf5\xf3\x9b\x09\x5d\xc7\x6a\xec\x15\xb3\x3f\x4d\x26\xe4\xbc\xd9\x5c\x92\x1b\x92\x7f\xf3\xc0\xbe\xf3\xe1\x11\x60\x15\xe9\xca\xbb\xdc\x20\xfa\x8f\xef\xc4\x07\x06\xe0\x94\xe0\x43\xb7\x50\x96\x6c\xbf\x0e\x38\xc9\x12\xf2\x47\x71\x03\xd5\x6a\xa6\x4a\xeb\x83\x23\x2a\x22\x14\xf5\x8e\x81\x40\x26\x93\xc8\x0e\xf9\x5c\xd9\x35\x11\x3d\xcd\x2b\x5f\x55\x3d\xf1\xbd\x9e\x84\xe9\xd4\x66\x40\x13\xd1\x39\x66\x19\x5b\x9d\x3d\xce\xa3\x85\xda\x01\x15\x2a\x41\x01\xb5\xcc\xf4\x74\x95\xc3\x71\xd9\x43\x43\xdb\x8a\xe7\x9a\x88\x30\x90\x30\x18\x35\x27\x5a\xcb\x93\xcb\x9a\x0b\x50\x7f\x71\x50\x9f\x36\x80\xd3\x34\xc6\xd1\x42\x29\x88\x83\x4b\x4f\x37\x0d\xc3\x89\x68\xb2\x74\x97\x92\x0e\x22\x2c\x82\xf9\x96\x09\x3b\x4c\x5b\x1f\x83\xea\x6e\xfc\xc5\x90\x39\xb8\x6a\x78\xbf\xc0\x18\xde\xee\x06\xbf\x2d\xae\x7f\xfc\xa5\x06\xea\xa5\xc2\x5c\x31\x50\x55\x07\x96\xac\x32\x38\xb4\x68\x10\x79\x16\x8b\x7a\x53\x0b\x80\xe7\x51\x3e\x0a\x44\xae\x46\x33\xae\x55\x0f\xf5\x37\x2c\x0a\xc2\x7e\xa9\x17\x77\x22\x4a\x85\xab\x2a\x01\xdb\x99\x0e\x0d\xb4\x3e\xd1\x80\x18\x5c\x52\xac\xb9\x6c\x2e\x2e\xb5\xe0\x33\xe9\x99\xa6\x16\x34\x1a\x4f\x75\x57\x44\xe3\x96\xae\x18\x38\x38\x43\x0d\xf6\x51\x6c\x3f\x55\xf8\x82\x86\x9e\x6f\x02\x40\x37\xf7\xfc\xaa\x4e\x5d\x29\xf5\xe6\xa1\xbb\x14\xbd\x4d\x83\xec\x6f\x8b\xcb\x6f\x59\x47\x5b\x09\x9a\xad\x93\x64\x15\xf7\xab\x70\x9c\x3e\x1c\x94\xc8\xb7\x69\x72\x11\x2f\xd1\x9d\xc8\xbc\xdc\x71\x44\x36\x34\x98\x40\x94\xe5\xcf\xc8\x4b\x9d\x4d\x13\xdd\xf3\xd6\x85\x1d\xd8\xab\x4c\xe5\xad\xcd\x9b\xa7\xe4\x62\xde\x27\x3f\x0c\x4f\x09\xab\xbd\x5e\xe2\x2c\x0a\xe1\x2b\xfe\xa5\x8e\x37\x2a\xff\x74\xc9\x3b\xc5\x2e\x14\x5f\x2e\x0c\xc8\x0f\xc3\x3c\x16\x37\x4c\x03\xda\xd3\x8e\x27\x16\x00\x80\xe3\x6f\x73\xd5\x21\xca\xf8\x27\xd9\x2b\x74\x01\x02\xe1\x54\xf2\x94\x2a\x52\xb6\x07\x2d\xf5\xa3\xd4\x77\x3b\x3c\x43\x79\xb1\x54\x1c\x14\x96\x8b\xe3\x87\xdc\xd8\x2e\xd5\x12\xcd\xe3\x4b\x9f\x5d\x79\xe5\x33\xe7\xad\xaa\xf5\xa4\xee\x60\x3c\x1e\x77\xa4\xa7\x0c\xc1\xf8\xd3\x27\xd7\xf5\x7a\x74\x65\xbd\xbe\xec\xb8\x49\x9a\x2e\x48\x93\xae\xb7\xb3\x03\x4b\x72\x35\x8d\x1e\x17\xaf\x81\xfe\xc3\xf1\x98\x9c\x51\x44\x15\x55\x82\x82\xc9\x3a\xe9\x18\x4e\x6e\x36\x4c\xcd\xc9\x0d\x27\xd6\x9a\x62\x36\x12\x56\x73\x59\x03\x52\xae\x11\x81\x9c\x7e\x80\x49\x89\xc6\x77\x3f\xdc\x14\x3f\x7e\xbc\x3e\x5e\xce\xe6\x6f\x2b\xb3\xea\x1a\x39\x27\x4a\x63\x5b\xf7\x0a\x0a\xd4\xc1\x26\x0a\x94\x14\x61\xcb\x8a\xee\x0b\x2d\x44\xd2\x9e\x9b\xb1\x2a\xeb\xf0\x93\x43\x98\x15\x09\x4f\xd1\xcb\x67\x79\xe9\xfd\x41\xcb\xc8\x2e\x73\xd8\xed\xb2\x73\x1b\x15\xda\x6e\x1e\xc0\x4b\x0d\xab\xfd\xda\xf8\xad\xba\x82\x9f\x0d\xfa\xd4\xd4\xd1\x53\x6a\x9b\x9f\xe9\xae\x1b\x31\x11\xd5\xf6\xbe\xc2\x8b\x67\x41\xba\x28\xaf\x10\x6b\x7f\x47\xab\x84\x7f\x87\x55\xef\x1b\xf9\x39\x6a\x7c\x17\xd5\xa6\x67\x35\xc1\x2f\x97\xe3\x64\x59\x73\xba\x20\xcc\xba\xe6\x2a\xa9\x0d\x03\xbb\x2c\x99\x57\xf0\x32\xa9\x59\xa3\x26\xb2\xf8\x91\x62\x22\xd1\x1a\x07\xc7\x46\x41\x90\x56\x86\xdc\x36\xa4\x00\x05\xc5\x1b\x9c\xbb\xaf\xd2\xc0\xa7\x79\x74\x6e\x4c\xff\x02\xee\x34\x4e\x2f\xfc\xd8\x35\x43\xf5\xb7\xda\x15\xad\xea\x74\x9e\x5f\xa9\xf1\x5c\x3b\x52\xd4\xb2\x63\x7d\x85\xdc\x75\xb2\xfd\x03\x19\x66\x29\x0c\xd2\x79\x25\x59\x2a\xd9\xe7\xe5\x64\x05\xdf\x30\xdd\x1c\xa3\x25\x91\xf5\x21\x53\xd8\x5b\x89\xf3\xfa\xd9\xb9\x65\xfb\x74\x2e\xb5\xb7\x36\xe2\xd2\x8e\xb1\x72\xa7\xbb\x0c\x2d\xe6\x23\x07\x16\xb9\x43\xad\x3d\xbf\x40\xcf\x6d\xb5\x13\xae\x28\xea\x34\x72\xa3\x90\x34\x94\x26\xa3\xdb\xb7\xcf\xcf\xde\x9d\xbc\x7d\x37\x92\x61\x80\x2e\x03\x07\x74\x41\x90\x26\xe1\xc8\x8d\xb2\x33\xf6\x7b\x05\xe4\x13\x0b\x94\x5e\x45\x64\x1f\x5f\x4d\x56\xac\x18\x6e\x36\xba\x25\x4d\x8e\x6e\x57\x80\xbd\x4e\xfe\x12\x8f\x8d\x6e\xc9\x87\xce\x7e\x3a\x3d\x7d\x7e\x76\x36\x72\x7f\xbd\xc6\xee\x6a\x05\x7e\xbd\xc6\xc6\x0d\xda\x57\x72\x8b\xfe\x31\xba\x65\x75\x4f\x5b\x10\xd9\x22\x3b\xb5\x9c\x99\x82\x78\x25\x8b\x3d\xaa\xf5\x2b\xc7\x2a\xc4\x32\xa4\xd1\x69\x56\x1c\xe7\x33\x26\x21\xf1\xa2\x2f\x76\xac\x67\xfe\x0c\x69\x06\xef\xec\x74\xd0\x18\x09\xec\xd2\x8e\x1a\x73\xaa\x57\x95\x2c\x85\x8b\x26\x7d\x54\xe0\x9b\x57\x9e\xe7\x81\xa4\xb7\x58\x66\x33\x2e\x0d\x27\x80\x42\x62\x33\x88\xd1\xbc\x94\xa5\xa8\xef\x28\xc3\xb3\x9c\x28\x71\xe0\x93\x8a\x02\x9c\xbc\x70\xa6\x51\x41\xcc\xac\x2f\xa6\x54\x14\x5b\x79\x23\x78\x8e\x27\xe3\x04\xc0\xad\x15\x66\xf4\xab\x85\xd6\x47\xbf\x67\x8f\xaf\xf7\x17\xff\x6b\x17\x5a\xcf\x38\x16\x17\x05\xb3\x71\x45\x20\x88\xab\x40\x7b\xe5\x15\xba\x17\x3e\x15\x06\x8c\x53\xf8\x18\xa8\x28\x62\xf2\x28\xcf\x50\x40\xc5\x47\xb6\xd8\x98\xbd\x44\xe4\xb4\xd8\x12\x45\xf6\x54\xd4\x85\x34\x0a\x03\x99\x33\x90\xaf\x34\x20\x96\x65\xdb\x04\x02\x26\x71\x08\xff\xaa\x9e\xe6\x40\x56\x38\x95\x39\xe4\x22\x2f\x64\x39\x50\x0b\x96\xb8\x9b\x7f\xbb\x44\x84\x1f\x1c\x9b\x76\xf4\x5d\x17\x14\x64\xfa\x23\x45\x30\x00\xd6\x27\x0e\x8b\x4f\x1c\x80\xc1\xc1\x3a\x06\xf1\x7c\xfc\x03\x39\x7e\x0e\x92\xe2\xb2\x9a\x1a\x6c\x68\x6d\x24\x2e\x2e\xc5\x85\x3e\xf6\xe5\xd6\xaa\xcf\x7d\x6e\x53\x24\x7f\x43\x84\xf4\xb2\xc4\x03\xc5\x95\xc3\x76\xa3\xdd\x0c\xc6\x97\x7c\xa0\xfd\x82\xd3\x6a\x58\x95\x56\x52\x78\x44\xcd\xa2\x29\x4c\x56\x43\x51\xb5\x8e\x6c\x92\x31\xbf\x20\xe1\xc8\x52\xd9\x15\x1d\x29\xa5\xdd\xa1\x25\xf2\xa4\x6f\xc3\xf8\x50\x20\xc2\xf3\x9a\x22\xb4\xaf\xae\x09\x1e\x28\xdb\x18\xd2\xa8\x2d\x7e\x82\x15\x2c\xab\x5f\x66\x6a\xc8\xf9\xba\xce\xac\xfc\x7a\x8d\xdb\x4e\xca\x3e\xf5\xbf\x9e\x2c\xf1\xec\xa7\xb7\xaf\x54\x17\x6c\x43\xa2\x1f\xfd\x61\x88\xce\x64\x97\xcf\xbc\x18\xfa\x95\x2b\xc3\x5f\xe2\x59\x8a\xa2\xdf\xe1\xee\x37\xb7\x62\x95\xac\x76\xbf\xb9\x0d\xd2\x10\x92\x7f\x69\xcf\x56\x85\x8d\xe4\x71\xbe\xbb\x2a\xa7\x0f\x79\x49\x9e\x87\x62\xc9\xd0\x1a\x84\xa2\x7c\xef\x01\x38\x02\xe7\xae\xf8\x28\x2d\x9c\x72\x4a\x5e\x52\x66\x51\xec\xef\x85\x07\xd9\x51\x3c\x99\x68\x59\xdb\x5f\x76\x13\x2c\xde\x3e\xb4\xbb\x32\xc1\x10\xec\x81\x7d\x70\x50\xaf\x1b\x31\xfe\xb6\x79\x35\xc4\xe4\x6a\x07\xfe\x7c\x49\x9e\xf9\x6d\x09\xe9\x4b\x64\x55\x73\x55\x89\xd7\xb3\x59\xa2\xc8\x05\x1c\xae\x94\x41\x99\x0b\xe4\x12\xaa\x68\x85\x84\x85\x92\x6c\xe1\x07\x4c\x80\x41\x98\x03\x4d\xb6\x76\x7f\x16\x44\x6c\x4d\xc5\x8a\x2b\x55\x2c\xbf\xd4\x5d\xb2\x95\xc0\x1e\x3a\xfa\xb1\x54\xd7\x14\x3b\xb5\x10\x5a\x46\x45\xf0\x5f\x7e\xe4\x0b\xe4\x36\x42\x39\x6b\xca\x01\xec\x91\xb5\xd9\xc3\xe9\xff\x9c\xbd\xfe\x71\x5c\x68\xc7\x51\x9f\x15\x38\x97\x78\x3c\xf8\x33\xfe\xbf\x66\x9a\xc2\x9f\xf1\xa3\x47\x4c\x0b\xf0\x69\x92\xc1\x43\x25\x57\x01\xab\xb9\x0a\x98\xe6\x2a\xe0\xff\x33\x7c\x92\x70\x95\xa2\xe3\x7b\xe0\x61\xdf\x56\xc6\x85\x68\x05\x54\x16\xf7\xcf\x31\xc5\xf2\x1f\xd5\x68\x07\x99\x55\x9e\xa7\x05\x13\xea\x8a\xeb\x66\x1d\xdf\xf3\x46\x4a\x9f\x4a\x3a\x54\xae\x30\xd4\x16\xba\xa1\xc8\xe0\x9e\x54\x4e\xe0\xaa\x73\xab\x18\x5a\xe9\x4c\xe5\xbf\x01\x9b\x5c\x71\x43\xfc\x02\x84\x8d\x29\xcb\xb3\xeb\xf2\xe7\x0a\xdc\x92\x53\xea\x07\x88\x67\x69\x68\xe0\xe9\xe5\x37\x9e\x18\xbf\xf3\x9a\xff\x86\xd5\xbf\x08\x28\x19\x37\xd0\x54\x69\x40\xc3\x7d\x71\xdc\x3f\xc6\xcb\x37\xdf\xfd\xe3\xf7\xe3\x8d\x1c\xf7\x5a\x15\x50\x11\xb1\x91\xfb\xf1\x79\x75\xb3\xfc\x40\x49\x17\x32\x9c\x5a\x09\xc6\x15\x77\x31\x8a\xa6\x53\x88\xde\xe5\x15\x7a\x17\x3e\xad\x45\xcf\x8e\x11\x0b\x2a\x95\xf4\x56\x17\xf3\x1d\x1a\x87\x58\xf2\xdd\x54\xf6\xbe\xcd\xc6\xa8\xcc\xe8\x17\x0c\x0b\x59\xa4\x71\x3a\xbd\xe9\xce\x21\x46\x51\x90\xed\x06\x56\x2c\x7b\x6b\x1d\xdb\x2f\xe5\x4d\xba\x3c\x7c\xf5\x6a\xf7\xcd\xd9\x8f\x76\xe6\x5b\x40\x14\xc0\x04\xfb\x4c\xf0\xe1\xbe\xa5\xa7\xf4\x3c\x7b\xca\x7d\xea\x95\x9c\xa9\xa2\x9e\x16\x23\xce\x85\xc4\xe2\xfe\xb7\xd3\x39\x89\x63\xe7\x8c\xb5\x98\x79\xe5\x89\x16\xe5\x01\x74\xb9\x39\x9d\x2f\x01\x7d\x2e\xba\x01\x87\x23\xd7\xac\xed\x07\xdc\xda\xce\xc7\x92\xf5\x38\x8c\x80\x3d\x45\x42\xb7\x0f\xd3\xcf\xb0\x00\xe0\xf2\xf0\x37\x6d\xa0\xe5\xc1\x6a\x0d\x02\xba\x8a\x31\x7c\xeb\x0c\x78\x50\xf0\xec\x29\xd0\x3b\xa7\xaf\x7f\x3c\xfb\xe9\xd5\xfb\x1f\xcf\xde\x9c\x9c\x3e\x3f\x7b\xff\xfc\xc7\x93\xef\x5e\x3d\x7f\x56\x10\xed\xfa\xc6\x14\x32\xc1\x86\xe3\x1f\xec\x1b\x17\x4b\x74\x02\x19\x0b\xc3\x31\x0d\xdf\xf8\xcc\xaf\x28\xda\x7d\xe6\x63\x9f\x70\x1e\x57\x6b\x0b\x74\x3c\x77\x73\x60\x08\x45\xd3\x11\xec\xc2\x85\xad\x92\x8e\x8a\x0d\xac\x61\x5f\xe4\x57\x8b\x69\x11\x4c\x65\x58\x40\x34\x8f\xb2\x8c\xf9\x32\x8d\xe0\xd6\xa1\xfe\xc2\x80\xe1\x2a\x95\x92\x4f\xfd\x5e\x0d\xff\x6d\xcc\x70\xd5\x8b\xf3\x8c\xe9\x41\x13\x66\xfa\xfa\x78\xd3\x45\x34\xbb\x19\xf9\xdc\xed\xb6\xa6\xf9\xa7\xc0\xa7\xbb\x4c\x9c\xed\x32\xa9\x59\x68\x5d\xfc\xe3\xcc\xbc\x51\xf8\x78\xc1\xea\x55\xa2\x3f\x34\x1e\x21\x4a\x97\x38\x4a\xa6\x5d\x66\x34\xfd\x8c\xa3\x33\x3f\xdc\x74\x64\xe5\x75\x88\xd5\xd4\x13\x2b\xca\xeb\x97\xdd\x01\xda\xd2\x54\x29\x97\x4c\x87\x97\xaf\xec\x26\xe5\x93\xad\x68\x33\x32\x9e\x95\x4e\xc7\x7a\xe5\x5b\xe5\x00\x37\x84\x79\x31\x7a\x5e\x59\x5f\x19\x58\xf7\xb2\xda\xe6\x9b\x05\x0b\x57\x33\x4a\xff\x2e\x96\x4d\xa3\x6d\xa8\x78\x10\xec\xad\x13\x5e\x5f\x16\xee\xad\x6d\xd0\x8d\x73\x01\x6c\x9d\x1d\x4c\x4c\x64\xe6\x56\x81\xff\xae\x19\x2b\x6e\x17\x2f\x7e\x4c\x9d\x19\xf4\x63\x3c\x73\x68\x90\x54\x13\x18\xb2\x82\xe0\x50\x3e\xbd\x03\x2a\xe8\x67\x59\x94\x4c\xd7\x0b\xf2\x29\x1f\x89\x6c\xb6\xe0\x59\xcf\x3f\xc8\x86\xf1\x7f\x9a\x32\x6c\xf5\x38\xae\x7d\x94\xdc\xc1\x38\x64\xb3\x85\x71\xe4\x1f\xdc\xea\x38\x02\x14\xe1\x88\x07\x42\x6c\x73\x20\x79\xbb\x85\x91\x28\x9f\x6c\x35\x94\x76\x09\x07\x0d\x61\xa9\x6d\x87\x00\x5b\x02\x5f\xfc\x10\xf8\x05\x3a\x3e\x82\xce\x32\xf1\x2f\x62\xe8\xe0\xd4\x09\xc9\x70\xe6\x51\x02\x1d\x3c\x83\x62\xa1\xb2\x0a\xf2\x4e\x7a\xe9\x08\x2d\xc3\x89\x12\x07\xc1\x79\x8a\xa1\x13\xca\xed\x2d\xeb\x7d\x9e\xa3\xe4\x7b\xda\xab\x6d\x1e\x18\xb5\x22\x4a\x21\x29\xe7\x18\x1c\xd4\xdb\x09\x5a\x86\xbb\x24\x29\xee\xe6\x26\x57\xfa\x17\xa7\xf7\x2e\x9b\x88\xae\xa6\xcc\xc6\x34\xde\x25\x0f\x81\xe1\xb6\x07\x98\x5c\xb9\xc0\xf5\x93\x50\x79\x3d\x62\x78\x1c\x69\xa2\x08\xfa\x59\x3b\xeb\x44\xa9\x5d\x40\xda\x2a\x58\x25\x71\x54\x52\x4b\x5c\xa8\x25\xb9\xe5\xd4\x38\x7a\xc7\x26\x18\x0a\x2b\xa3\x4d\x34\x76\x20\x4e\x6c\xef\x09\x51\x75\x8d\x17\x47\x9a\xfa\x9b\xcd\xd2\x6b\xae\x03\xaf\x56\x4a\x84\x4d\x65\xa1\x64\x1a\xc8\xd0\xda\x36\x12\xa6\xd7\x49\x37\x8e\x12\x68\xc5\x03\x69\x62\x21\xa1\xe6\x1d\x80\x80\x0f\x62\x90\x81\xe8\x81\x0c\xa1\x48\x05\x20\xaf\x77\x9b\xec\xec\x54\x44\x4e\x28\x11\x13\x89\x5a\x6a\x5b\x8b\x9d\x48\xf4\x32\xdb\x32\x8e\x22\x91\x05\xb5\x79\xc5\xd8\x44\x2b\x75\x9d\x14\x4b\x5d\x23\x2f\x37\x63\xca\xce\x2e\x55\xf4\x60\x66\xc5\xbf\x95\xa5\x67\xd5\xe8\x16\x54\x52\x40\x3c\x3e\x87\x93\x31\xe2\x05\xc4\x63\xbd\x80\xb8\xfa\x13\xc4\x66\x01\xf1\xb8\xb4\x80\x78\xfc\xe9\x53\x6c\x16\x10\x8f\xf5\x02\xe2\xf1\x38\x69\x52\x40\x9c\xce\x02\x1f\x8d\x08\x6d\xf9\xf4\x29\x59\x79\x20\xf6\x80\xaf\x40\x06\xc5\x46\x79\xef\x98\x17\x10\xd7\xae\x3f\x89\x8b\x54\xf5\x65\x01\xf1\xb8\xba\x80\xb8\xf9\x85\x72\xc6\x88\xe9\xf0\x28\x04\x51\xbc\xb5\x08\x99\xa0\xda\x10\xf7\xf7\x28\x9d\xe2\x33\xf4\xb8\x32\xac\x9b\xac\x17\xdd\xf6\xf6\x34\x4d\x02\x04\x59\x68\xcc\x53\x0a\xd1\x05\xdc\xa7\x74\x59\xa9\x71\xd3\x56\x09\xf0\xb0\x18\xf9\x32\xa4\x88\xcb\x9b\x86\x79\x0f\x06\xc0\xcd\xae\x98\x8c\x74\x08\x5c\xd2\xab\xef\xd2\x8f\x45\xd4\x87\x03\x70\xee\x52\xcc\x4e\xd7\x61\xe1\xad\xe4\xc2\x8d\x79\x81\x01\x07\x1a\x17\x25\x28\xb4\x96\x0d\xe6\x2e\x10\x24\xa4\x81\x27\xd9\x02\x06\xf8\xad\x8f\xa3\x94\x66\xe7\x27\x54\xf4\x66\x46\xf0\xc7\x8a\xb9\x67\x0a\xf1\xcb\x20\x4d\x04\x50\x56\xa6\x16\x66\xe0\x26\xf3\x7e\xf5\xe3\x80\x79\x7a\xed\x29\x5c\xca\x71\x0c\x2f\xed\xd0\x25\xe2\x81\xb9\x8f\x3e\x40\x01\xe3\x32\x28\x02\x64\x90\xaf\x2f\x23\x5a\x13\xc5\xed\xfa\x71\x9c\x5e\x77\xc3\x14\xeb\x45\x36\xfa\xc0\x55\xef\x50\xdc\x10\x49\x7c\xb7\x3b\x74\xba\x43\x67\x70\xe0\x0c\x0e\xc4\x4d\x04\x2f\xff\xe6\x02\xf7\x50\xf9\xfd\x77\xf5\x37\xeb\x94\x28\xa1\x60\x5c\x96\x98\x83\x87\x55\x4a\x2b\x91\x34\x23\x14\x48\xb4\x23\x37\xf8\xa8\x36\x15\xdc\x68\xdf\xd7\x5a\x6b\x87\xa5\xb2\x06\x01\x7d\x44\x23\xbc\xad\x24\x14\xf7\x4c\x22\x0e\x9c\xee\xc0\x19\x0c\x9d\xc1\xd0\x20\xe2\x81\x41\xc4\x83\x75\x88\xb8\x0f\xdc\x14\x45\x2c\x7d\xd6\x5f\xe2\xb4\x4b\x6b\xd7\x75\xf9\xfe\x5a\x43\xe7\x45\x1a\xdf\x4c\x53\x21\xe2\xbb\x8b\x34\x4a\xe8\x59\xda\x77\xfa\xce\xa0\xef\x1c\xd0\x7f\x3e\x07\x75\x43\x98\xdc\x58\xb9\x53\xb9\xf1\x1f\xe6\xac\x26\x9f\x9d\x37\xb5\x5b\xff\xd6\xac\x59\x6e\xcf\x56\xcb\x4a\xe9\xa8\x15\x79\x60\xce\xda\xd0\x12\x87\x36\x0b\x12\xa0\x8e\x32\xe1\x02\x98\x4c\xd8\x3c\x6d\xc1\x18\xc4\x63\x5d\xeb\x99\x46\x74\x23\x0a\x0b\x39\x21\xa1\x19\xd4\xc9\x9e\x0c\x61\x86\x85\x2b\x25\x43\x81\xab\xdc\xa2\x3f\x85\xff\xe1\x40\xb0\x03\x9b\x6f\xfd\x10\x77\x97\x28\xee\xfc\x17\x3b\x95\xed\x5b\x80\xe7\xea\xbd\xe1\x6d\xc1\x24\x6c\xd5\x12\x65\x79\xb3\x2d\x8b\xef\xc5\x32\x19\x16\xa6\x6a\x55\x15\xeb\xeb\x9f\x0b\x29\x13\x6c\x3e\x19\xca\xd9\x78\xa7\xb3\x61\xb1\x10\x55\xe3\x61\x34\xb5\x69\xd7\x6f\x0e\x47\xdb\xd9\x1c\x54\xb8\x98\x7d\xc5\x9c\xf7\x52\x18\x13\x5c\xe0\x9e\x10\x6a\xaa\x90\x6b\xc0\xf6\xd4\xf7\x7e\xf6\x46\xb5\x3b\x6c\x80\x2e\xe3\x96\x38\xa9\x16\xe9\x22\xbd\x82\x28\x2f\x32\xc1\x22\xd8\x9e\x2e\x52\x51\x12\x39\x77\xfe\x4b\x7d\x63\x52\xc4\xc3\xa9\xed\x3a\x70\xe3\x23\x57\xdf\x1e\x35\xd7\x34\x59\x34\xb5\x8b\x6b\x60\xf3\x3a\x0d\x0a\x8e\x5a\xc9\xbe\x51\x99\x84\x2f\x90\xdd\xca\x02\x5b\xad\xd0\x6f\x0d\x3c\x74\x25\x16\x77\x1b\x16\x44\x39\x4b\x14\x20\x30\xc8\xa3\xb4\x9a\x35\x0b\xc5\x79\x83\xd2\x8f\x37\x96\x42\x72\x6a\x06\x9d\xe2\xaa\x21\x0a\x51\x74\x19\x05\x5d\x69\xcd\x2a\x14\xbe\xd9\xdc\xd9\x59\xc6\x47\x8a\xba\x5a\xc7\x52\xd4\x8e\xc7\x74\xed\xd0\xe5\xa4\xff\xca\x59\xa4\xd4\x9c\xdb\xc2\x5e\xde\x30\x82\x4a\xc6\xb3\x5e\x46\x49\xc8\x52\xfd\x64\x64\x2b\x35\x89\x32\xa0\x3a\x66\xdf\xa4\x86\x52\x56\x5a\xef\x6a\xda\x0d\x96\xe8\x0a\x9a\x80\x1e\xe4\x07\x43\x94\x2e\xc7\xb3\x6b\x19\xc1\x5a\x63\x06\x94\x06\xd1\x18\x62\x27\x1c\x77\x64\xfc\x16\xfd\x38\x0c\x81\xc8\x23\xb4\x23\x7b\x88\x34\x24\x5e\x53\x1b\xc4\x63\x66\x58\x2d\x9a\x55\xa9\x51\x06\x2d\x03\x9c\xa2\x8e\x77\x6b\x0b\x6b\x4d\x45\x31\x39\x8d\x39\x40\x06\x18\x78\x87\xb8\x4d\x3e\x0c\x22\x76\x71\x35\x85\xd8\xa1\x00\x1f\x45\x78\x6d\x05\xeb\xce\xb4\x23\x28\x70\xfc\xb9\xed\x96\x48\xf6\x00\x8f\xcf\x7b\x3d\x89\x6d\xd1\xfb\x6d\x09\xd1\xcd\x19\xad\xe6\x96\xa2\x93\x38\xee\xb8\xff\x45\x08\x98\x61\x04\xfd\x39\x23\xa3\x43\x05\x15\x6f\xc2\x90\xd1\xb5\xbe\x8f\x71\x6f\xee\x2f\x68\x5d\x7a\x11\x1b\x46\xd1\xb0\x5f\xc4\xa9\x8f\x3b\x34\x22\xf4\x5d\x8a\xfd\xf8\x15\xb5\xff\x74\x3c\x0f\x20\x06\xee\xfe\x86\xc8\xeb\x27\x98\x5f\xa7\xe8\xea\x01\x8c\xe2\x4e\xb2\xbb\xe7\x09\xd8\xf2\xdb\x28\x1c\xe1\x5e\x14\x82\x8f\x23\xfa\x00\x4a\x97\x49\xd8\x41\xbd\x8f\x5d\xd8\xfb\xe8\x81\x1b\xfd\xea\x4d\x17\xf6\x6e\x68\x9d\xf8\x15\xc8\xc6\xcb\x4e\x9c\x17\xdb\x28\x10\xfc\x3c\x99\x80\x5b\x33\x9d\x4d\x4f\x76\x53\x92\xdb\x80\x62\xe4\xa3\xe5\x30\x56\x1e\x88\xcc\x2f\xd0\x39\x3b\x47\x9b\xb6\x6b\xb4\x5a\x30\x0f\x81\x73\x7f\x52\x1b\x6e\x5b\xdd\x84\x07\x94\xfb\x1e\x88\xff\x3f\x7b\xdf\xda\xde\x36\x6e\x25\xfc\xdd\xbf\x42\xe1\x66\xfd\x10\x1b\x88\xb6\x9c\xc9\x4c\xab\x2e\x93\x66\x12\x4f\x27\xdb\xdc\x36\x4e\xda\x6d\xb5\xda\x04\x22\x21\x89\x63\x0a\x64\x41\xc8\xb6\x46\xe6\xfb\xdb\xdf\x07\x37\x12\xa4\x48\x89\x94\xec\x8c\xd4\x66\x3e\x4c\x2c\x12\x00\x71\x0e\x80\x83\x73\x3f\xa6\x47\xa2\xbf\x56\x2d\xef\x41\x7f\x0b\xb5\xfc\xdd\xe8\xe2\x61\x04\xe7\xd0\x83\x3e\x9c\xc1\x18\x8e\xe1\x08\x4e\x73\xed\xfc\xd5\x21\x69\xe7\x27\xdf\xb4\xf3\xff\x1a\xda\xf9\xc5\x7a\xed\x7c\x70\xea\xfd\x8e\x9d\x9c\x4d\xab\xb5\xf3\xf3\x58\x52\xe0\x44\x07\x7b\xe8\x2c\x2c\x8a\xc1\x31\xf8\x1f\xe9\x3b\x3b\x45\xc9\x1b\x79\xe0\xde\xe7\x51\x26\x7f\x54\x67\xf0\x67\x8a\xc7\x22\x1d\xa7\x3a\x9b\x22\x5b\xa7\x8e\x1e\x31\x99\xa5\xcd\x6e\xe0\xea\x70\x7b\x11\x61\x28\x20\x98\x76\x14\x11\x28\x1f\xfb\x5c\x3b\xde\x3b\x33\x58\x2a\x0f\x85\xde\x3c\x94\x01\x41\x55\x1a\x6e\xab\x32\x63\x4c\x66\x4b\xf8\x3d\x1c\x58\x2f\xb3\xeb\x29\xb1\xe0\x9d\x58\x16\x72\x10\xf9\x8f\xfc\xf6\xcb\x80\xcc\x81\xf9\xce\x80\x25\xab\x86\x2a\x15\x34\xa5\x5b\xd3\x2a\xa9\xfd\x9f\x34\xef\x09\xab\x40\xad\xc6\x57\xa7\x41\xce\xe7\x4c\xdf\x50\x72\xcc\xf8\xbe\x32\xe9\xc4\x8a\x6f\xc7\x3d\x3a\x3c\xbc\x23\xe1\xa2\x93\x4c\xa3\xeb\x80\x4c\x3a\x39\x1a\x92\xce\x75\xc0\xa6\x01\x11\x3e\x0f\xde\x9c\x72\xe1\xc4\xf0\x6b\xe8\x8c\x23\x6a\xf8\xaf\x3d\xe1\x62\x49\x76\x1c\xf4\x5f\x9a\xc3\xbd\x0b\x1f\x88\x5a\xcd\xe0\xfa\x5c\xfc\x6b\xd6\xf0\x0e\x25\x24\xe1\x94\x9d\x05\x7f\x67\x87\xba\xec\x51\x9f\x89\x46\xd5\x84\x82\x44\xea\xe1\x07\x8c\x12\xa9\x56\x15\x82\xc8\xa9\x36\x47\xad\xa0\x7a\x58\x90\x58\x7e\xc8\x25\x9f\x95\xa1\xb6\x4d\x9b\x54\x94\x90\x8c\x2f\xcc\x50\x40\xde\x46\xec\x15\x99\x50\x9c\x24\x85\x09\x15\xe3\x25\xbf\x83\x03\xeb\xcf\x01\x91\xaa\xa6\x40\x36\xef\x4e\x10\xc3\xd7\x68\xb1\x83\xb0\xba\xc6\x37\x97\x21\xce\xe0\xac\xac\x86\x19\xa1\xa7\x96\x06\x13\x5f\x28\xad\x6b\x96\xa9\x72\x41\x8a\x22\x6a\xd9\x2d\x16\x1a\x53\xaf\xf6\xae\xe5\x3d\xde\x67\x53\xa9\xee\x21\x5b\x15\x9d\x24\x4d\x12\x95\xcc\x67\x33\x44\x17\xdd\x71\x44\xbb\xd9\xbc\xd7\x9d\xc3\x82\x0b\xaf\xfe\x5d\xbb\x51\x5a\x38\x2b\x6f\x11\xe6\xf9\xdd\x96\x2a\xbf\x2a\xcf\xe8\x1e\xb4\xb2\xc0\x08\xf3\xa2\xd8\x40\x9d\xc5\x3d\xaa\x3b\xea\x94\x59\x75\x54\xbb\x01\x81\xdb\x44\xa3\x1e\x97\xb4\x90\x3b\x6f\x71\x4c\x03\xdc\x70\x8f\x9b\x5a\x1a\x2e\x71\x78\x51\xd8\x70\x6f\x17\x61\x6e\xb3\xcb\x9f\xc0\x5e\xaf\xd0\x79\xf3\x86\xaf\xa0\x6e\x2b\x1b\x98\x93\xf2\xf7\x1a\x86\x96\x9b\xb8\xbc\x14\xeb\x68\xd8\xbe\xd0\xa1\x3d\x5f\x2f\x6b\x3b\x32\xb4\xcb\x2a\x36\x57\xb8\xc1\x15\x4f\x53\xf3\xec\x87\x01\xb9\xb4\xd6\x73\xbd\x67\xf0\x77\x3b\xa4\x7a\x2f\x46\x71\x69\x52\x93\x7d\x56\x06\x6f\xc9\x4f\x08\xdb\x69\x96\xab\xeb\xf3\x28\x44\xaa\x91\x30\xed\x86\x42\xbd\x27\xf3\x7b\x76\x48\x44\xf1\x18\x53\x5a\x24\x57\xef\x62\x4c\x3a\xea\x13\x9d\x97\x28\x99\x8e\x22\x1d\x24\xb6\xa5\x75\xac\x0a\x06\x29\xb6\x96\x41\xe8\x95\xb2\x25\xe8\x58\x93\x97\xef\x5e\x5c\x7c\x16\x39\x2b\xb2\x24\x33\x5e\x44\x08\xf6\xd8\x49\x34\xe2\x7b\x05\x8d\x82\x30\x60\x8b\x93\x79\xd0\xbd\x0a\x92\x39\x17\x10\x91\x91\x86\x6d\x47\x94\xbc\x50\x32\x36\xce\xf0\xe2\xb7\xc0\x4b\xfb\x12\xdf\x2b\xb7\x52\x85\x24\x52\x75\x29\x55\xd1\x8d\x5c\x77\xba\x4e\xe3\xae\x9d\xc2\x14\x83\xb0\xea\x1e\x56\xd6\xc0\xe7\x33\x52\x67\x34\x3f\x79\xfc\xd5\x5f\xf8\x78\xc6\x69\x94\xe3\xbe\x0c\x66\x98\x24\xa6\x53\x94\x6e\xff\x5a\x42\x35\xac\x91\x93\xca\x99\x98\x32\xed\x7a\xaf\xb7\x4e\xa1\xbe\xf6\xfe\x2c\xc9\xa1\x7c\x26\xa6\x88\xbe\xb3\x14\x5a\x5e\x43\x3d\x78\xd7\x8b\xc2\xf9\xac\x2c\x88\x55\x4b\x20\xbf\x2f\xc5\x61\x99\x4c\x1c\x5c\x9d\xf5\xce\x71\x54\x65\xc9\xd9\x98\x73\x0b\xb9\x39\xeb\xd5\x52\x6a\x2e\xf5\x5b\x07\xe0\x06\x5a\x7b\xb6\x65\xf4\x43\x59\x9e\xde\x5c\x81\xa1\x10\x9e\xb1\x49\x78\xdc\xbd\x52\xc4\x46\x71\x51\x72\x00\x65\x9d\x52\x9e\x6c\x26\x33\x96\x95\x45\xbf\xdf\x4c\xa2\x7b\x7c\x5f\x12\xdd\x9e\xc8\x74\x8f\x5b\xcb\x74\x8f\x1b\xc9\x74\x8f\x57\x65\xba\xec\x00\x6d\xc7\x4a\x3d\xbe\x17\x89\x6e\x0b\x99\xee\xf1\xda\x4b\x73\x43\x26\xd4\xbb\x90\x02\x57\x28\x58\xd3\xdb\x76\x1e\xdf\xc3\x5d\xab\x67\xb3\x72\xd3\xce\xe3\x36\xf7\xec\x3c\x2e\xdc\xb2\x65\xca\x7a\x57\x77\x6c\xf3\x54\x1e\xc2\xac\x9c\x85\xe4\x18\xf6\xe6\xd6\xe6\x65\x1a\xcd\x63\x69\xc9\xee\xf2\x47\xdd\x80\x64\x61\x3a\x39\xe2\x23\xd2\x95\x05\xae\x75\x91\x19\x65\xf5\xde\xc5\x32\xbd\x6a\x8e\x7e\xb7\xc6\x1c\x9d\x3d\x40\xe5\x07\x61\xf9\x41\x52\x7e\x10\x94\x1f\x44\x25\x2b\xf6\xbc\xf4\xdb\xdb\xc1\xaa\x7d\xa5\x8b\xfa\x96\xb7\x13\xf4\x95\x61\xfb\x2a\x33\x6c\x2b\x66\x0f\xce\x2a\xde\xc8\x0d\x07\xe3\xd2\x2b\xb5\x6f\xe1\x78\xe5\xb9\xea\x30\x2a\xbd\x28\x53\x21\x38\x55\xa6\x74\x9f\xa2\xeb\x97\xfa\x43\x66\xbd\xf2\x81\x74\xd1\x36\xfc\x88\xdc\xe5\x8d\xcc\x32\x54\x06\xca\xb9\xe9\xfe\x00\x17\x35\xef\x16\x8f\xaa\x9f\xcb\xd8\x82\x93\xb3\xcc\xce\x87\x85\xd9\x1c\x67\x66\x73\xe6\xe2\xda\x92\xe7\x54\xcc\xc5\xb9\x79\xc4\x1c\x11\xb8\xc0\xbf\xce\xbf\xb4\x32\xea\x32\xf0\xfb\xd8\x09\x7c\x98\xfb\xc7\xf5\xc5\xb0\xcf\x19\xa3\xc1\x68\xce\xb0\xbd\xe2\x53\x07\xa0\x8f\x13\xd6\x27\x30\xa1\x5e\x9f\xa6\x29\x70\x92\x88\x32\x5b\xd4\xd0\x77\x9f\xb2\xac\xce\x03\x76\xf2\x4e\xa0\x9b\x3f\x27\xe6\x73\x89\xe1\x4f\xf1\x6e\xf8\x7d\xf4\xc4\x79\xf2\xdb\x60\xb8\xab\x30\xdc\x3d\x7b\x72\x1f\x48\xa6\x02\xc9\x64\x67\x24\x4f\x30\xeb\x64\xb4\xd8\x70\xf4\x18\x38\x8e\x53\x15\xb2\xa7\xe9\x10\xb4\x3e\x65\x14\x1c\xdc\xde\x0e\x86\x43\xc8\x2a\x63\xfc\xf2\x0e\xaa\x90\x87\xf0\x21\xb3\x00\x24\x1b\x9a\xff\x35\x08\x7d\xce\x60\xe6\xfe\x67\xda\x97\xc3\x66\xb7\xb7\x44\x96\x08\x99\x27\x53\x7b\x29\xc9\xe6\x4a\x96\x1e\x98\xf3\x28\x7d\xcb\x32\x32\x7e\x59\x16\xcc\x06\xed\x2f\x95\x4f\x5b\xff\xc1\x69\x9a\x02\x88\x05\x46\x2a\x59\xc8\x3c\xba\xb1\xcc\x2b\x3e\x70\x5d\xbb\x0a\x18\x75\x03\x38\x6a\x00\x28\xb9\x4d\x20\xaa\x9e\xa4\x99\x04\x22\x5d\x14\x82\x71\xbe\xc9\x49\xfd\xfe\x3a\xca\x9c\x6d\x26\x58\x97\x7c\xf9\x71\xf1\xca\xb7\x2d\xeb\x11\x1b\x9c\x0e\x81\x93\x14\xb6\x8f\xa8\xa5\x6e\xc1\x2f\x72\xeb\xf5\x1f\x2e\x89\xda\x85\x69\x7c\xf3\x05\xa4\xf2\x00\x68\x3b\xaa\x0d\x52\xe3\xef\xa5\x11\xa8\x99\x7c\x10\x01\xc1\x2f\x5f\xc8\xcc\x67\x25\xaa\xe8\x5a\x32\x5e\xb8\xeb\x7b\x56\x7f\x05\x3b\x3a\x7d\x5e\x15\x4a\x1c\x8e\x91\x9a\x31\xcb\xe3\xf4\x2b\x9b\x09\xbe\x5c\x79\x31\xc9\x0b\xc1\xad\x45\xd1\x8a\x32\xa3\xb6\x7c\xfd\x91\x3e\x07\xb5\x63\x95\x18\xb5\xda\x91\x20\x6b\x30\x86\x12\xcc\x65\x66\x6f\x01\x8c\xbc\xa8\x38\x2d\xc1\xce\x0d\x5c\xf4\xb1\xb3\x80\x82\x9e\xf4\xb1\xa2\xdc\x6a\x45\x59\x6d\x05\x7e\xd9\xe0\x51\xef\x34\x05\x59\xb2\xad\x16\xee\x5a\xb9\x55\xde\xa9\x4e\xde\x04\x86\x90\xba\xd5\x83\xd9\x96\x53\xb2\x4a\x00\x88\x36\x7e\xbc\x84\x8e\xfa\xef\x1e\x55\xd2\x6d\x97\xd6\xaf\x81\xde\x1f\xe2\x36\x51\x85\xac\x0a\x17\x38\x51\x8d\x14\x23\x90\x37\xd1\x37\x10\x02\x69\x0a\x7d\x77\x62\x7b\xa6\x43\xd4\x2a\x9b\xb2\xbb\x3b\xd8\xac\xfc\x91\x9c\xd3\xd9\xdd\x27\x2c\xae\x1a\x5c\xf1\x3e\x03\xb4\xf5\xe8\x2b\x39\x2f\x07\x43\x4e\x4d\xc7\xe5\xaf\x69\xfe\x6b\x10\xee\x0a\xc8\x68\x75\x68\x0d\x46\x72\xd7\x60\x4c\xcb\xdf\x5a\xe1\x0a\x07\xc1\xae\xf0\x94\xbe\x90\xeb\xa7\xe0\x20\xda\xec\xa5\x57\xd3\x17\x40\xcf\x74\xcf\x2b\x6f\xde\xcc\x7f\x06\x0e\xe6\x2d\xbf\x91\xf7\x2d\x7d\xc3\x33\x5d\x00\xdf\xad\x75\x01\x5c\xc0\x77\x5b\xb8\x00\x92\x88\x05\x55\x25\x1c\x7e\x9b\xec\x98\xbf\x7b\xfb\xb7\x8b\xbf\xbf\x7d\x5e\x53\xd6\x52\xce\x55\x09\xda\x97\xfc\x5f\x51\xa9\xd1\xfa\x63\xc0\xc9\x06\x11\x55\x63\xf2\x32\xc8\x5a\x62\xd7\xd2\x61\x45\x15\x01\x3d\xe0\xa0\xec\x43\xa5\x29\xa4\x6a\x30\x14\xa9\x35\x9f\x0c\x0d\x55\x40\x1e\x5d\xd6\xdc\xb3\xc6\xca\x93\x59\xc3\x81\xf5\x73\x5e\x93\xa9\xbd\x93\x8e\xd6\x76\x4c\x1f\xaf\xb5\x50\xaf\xe6\x01\x3c\x2d\x15\xe7\xd5\x95\x76\x4b\x90\x3b\x12\x72\x27\xf3\xca\xb7\x9c\xcc\x20\x5e\xca\x8c\x57\x6b\xe8\x6e\x54\x0c\xc7\xc4\xc8\x8f\x91\xbf\xd8\x11\x1f\x55\xd9\xf2\xee\x05\x1b\x23\x31\xd7\xbb\xc3\xc5\x6e\x5e\x01\x45\x3c\xfe\x14\x45\x6c\xe7\x9d\x55\xc6\xe4\xea\x04\xbf\xdb\xce\x10\x9a\x29\xdd\x74\xb0\x82\xd2\xb0\x4d\x29\x1e\x5b\x2b\xba\xe8\xbb\x5c\xb3\xb1\xc0\x8b\x63\xd8\x1f\x4b\xff\xb4\x75\x92\xbb\x8f\x8d\xa5\x26\xa9\xea\x92\xd5\xee\xaf\xad\xf4\xb1\xeb\x6c\xbb\x6b\x97\x05\x5a\x7f\xc4\x37\x8a\xc6\x66\xa6\x19\xc8\xe8\x1c\xef\x11\xce\xee\x01\x5d\x1b\x4c\xbe\xdb\x8c\xb7\x45\x4d\xee\x2c\xd0\xa7\x98\xc5\x28\x18\xef\xa4\xf2\x34\x6f\xfe\xfd\xc9\xa2\xcc\x67\x35\x0e\x3c\x61\xf4\xaf\x08\x50\xf8\x6d\xd8\x92\xbf\xff\x25\xfc\xef\x38\xf9\x7b\x5c\xcd\x96\xe8\x1a\x02\x7f\x94\xc9\xbf\x4c\xde\x43\xd7\x8e\x68\x9c\x58\x90\x6f\xe7\xcc\x62\xb0\x65\xe2\xc3\xca\xec\x8a\xc2\x2f\x47\xe4\x71\xdf\x21\x54\xfd\x6f\xd1\x9c\x76\xb2\x98\xc2\xce\x14\x25\x9d\x11\xc6\xa4\x83\x7c\x1f\xfb\x4e\x4b\x92\xf3\x71\x8a\x29\xee\x5c\xa3\xa4\x83\x48\x47\x20\x8a\x8f\x13\x90\x49\x67\x51\xf8\x4c\xdd\xb8\xcd\x12\xcb\xad\x47\xb5\xb2\x47\xdc\x4d\x52\xc8\xfb\xc5\x71\x82\xae\xee\x04\xc7\x09\xba\xda\x11\xc7\xf5\xbe\x55\x25\xfe\x00\xaa\xb3\x91\x88\x18\x45\x9a\x30\x79\x5c\x9b\xba\xd2\x99\x98\x96\x8c\x8d\x4c\x77\xdb\xd2\x15\x4f\x33\x34\xa3\xdc\x15\x48\x90\xf1\x62\x60\xbf\x65\x97\x4b\xde\xcb\x4f\xaa\x33\x3d\x5c\xb5\xee\x16\xdf\x5a\xfd\xce\x6a\x49\x9c\xd2\xac\xa1\x05\x56\xca\x59\xb6\xba\x25\xda\x06\x86\xe6\xd9\xf1\x5a\xd7\x1e\xd9\x4c\x96\xf7\xe7\xce\x50\x91\xc8\x7b\x9e\x7c\x9f\xfe\xf4\xc3\xab\xbf\xfd\xf7\xff\x84\xd5\x97\xc8\xe7\xcf\x88\x4e\x4e\x2d\x28\xff\xe8\x65\x75\xf1\x12\xfd\x68\x8b\x77\x2b\xee\x23\xc6\xcd\x64\x64\x12\xcb\x45\xe6\x2c\x5e\x7b\x5d\xb8\x51\xef\x7b\x78\x2a\x5d\xfc\x56\xe5\x65\xb5\x12\x2a\x77\x57\xef\x4c\xe5\xb2\xf8\x41\xda\xa2\x0d\x69\xa2\x20\x50\xfc\xae\xca\x8f\x4b\x54\xe5\xdb\x29\xb5\x8a\xe2\x67\x03\x32\x8e\xe8\x0c\xfb\x5d\x54\xaa\x40\xed\x23\x32\xc1\x34\x9a\x9b\x01\x51\x85\x2c\x11\xa7\xb9\xfd\xdc\xd2\xd1\xee\x2b\x3c\xa6\xaa\xeb\xe7\xff\xc8\x17\x35\x79\x45\xc6\x91\x55\x74\xfc\xd2\xb3\x56\xf2\x33\xb4\x84\xe8\xa8\xf9\x6c\xf1\xf1\x53\x78\x0a\x7b\xc3\x06\xbe\x3b\xab\xf8\xfa\x21\xf7\xd8\xb1\xaa\x24\xf4\xc6\xf8\x5a\x89\x32\xaa\x51\x2d\x94\x39\xf8\xb3\x86\x5c\xbb\x42\xa0\xc3\x97\x74\x45\x97\xb0\x39\xcc\xa7\xf1\x55\x5f\x87\x9c\x55\x81\x7d\x7b\xd4\xd4\xcb\xc6\xbf\xcb\xa2\x73\x56\xb3\x63\x9c\xdf\xa0\x9a\xcb\xaf\x91\xd4\x7c\x27\x88\xe7\x58\x70\x02\x3d\x95\x06\x77\xd1\x3a\x81\xf1\xee\x66\x44\x22\xd6\x7c\x4a\xab\xd5\xcf\xef\x7e\xb7\xe4\x87\x73\xbb\xbc\x30\xd5\x6e\xe2\x8d\x2a\xd3\x69\xcf\x59\x55\x17\x55\xd0\x04\x49\xb0\x90\xf1\xa4\x7d\x4c\x9f\x76\x0c\x1d\xcd\x19\x93\x1e\x6e\x67\xdf\xc1\xef\xcc\xdf\xb9\x5f\xa7\xe5\x85\x81\x77\xa9\xa8\xf8\xe3\x0d\xce\x9a\xf7\xba\xe7\xef\x64\x8f\x49\xc4\xdd\xe1\xbe\xbf\xcb\x59\xed\xb0\xf7\x6b\x13\xd1\x35\x2e\x89\x5f\xb1\xd9\xee\x70\x77\x9d\x42\xcb\x43\xc4\xc3\x61\xd3\xdd\x66\x26\xc1\x29\x66\xb8\xe1\x7b\x4b\x61\xef\x45\x44\x18\x8d\xc2\x50\x5c\xa6\xd3\xc0\xaf\xab\x3b\x51\x7d\x7b\x75\x3a\x2f\xc4\x94\xca\x73\xdf\x02\x89\xab\x4d\x7e\xdf\x52\x64\x6a\xf4\x90\x9f\xb0\xd6\x7a\xbd\x4d\x9c\x95\x99\x79\xe7\xbe\x18\x2c\x95\x24\xbf\xa3\xad\xd4\xba\x9a\xcc\xc1\x33\x5b\xdf\x1d\x0a\xb3\x65\xac\xf2\xd7\xe6\xb9\xbe\xbb\x67\x9e\xeb\xee\x11\xa4\x66\x3b\x28\x06\xc5\xe4\x5e\xbb\xe6\x35\x67\xba\x57\xf7\x7a\x85\x3a\x4e\x5f\x05\xb3\xbb\xf3\x27\x4f\x76\xe1\x4f\xbe\xbf\x2f\xfe\x24\x0b\x2e\x5b\x8d\x23\x3b\x6b\x16\x47\x66\x16\x8f\x3a\x51\x82\x6f\xa1\xa2\xd4\xbf\x15\xc3\x50\x1a\x44\x8f\xd5\x44\x9d\x55\xdd\x2d\x77\xb7\x1b\x33\xb3\x75\x9d\x31\x63\xf7\x8b\xff\xfb\x7f\xb5\x8b\x3f\x8c\x12\x7c\x2f\xf7\x7e\x75\x8d\xe2\x1d\x1f\xea\xe2\xc6\xed\xd9\xd4\x4d\x17\x73\xa0\x2e\xce\x43\xbf\x87\x7b\x87\x72\x0f\x87\x3f\x7c\xed\xeb\xb7\x77\x10\xd7\x6f\xf8\x43\xc9\x91\xe2\x2b\x60\x65\xf7\xab\xb3\x79\x54\x62\x05\xd1\x7d\xfc\x95\xae\x4e\x23\x89\x66\x45\xd1\x17\x25\xa4\x27\x0e\xf6\x03\xb6\x9a\x62\x73\x45\x94\x7f\xf5\xb2\xb2\x28\xe6\xdd\x5f\x81\xe1\x0f\x5f\xe3\xe6\x7b\xfc\xed\xe6\xbb\xa3\x9b\xef\xf1\x7d\xdc\x7c\x85\x38\xc0\xed\x32\x3c\x54\x2c\xce\x63\xf8\xa4\x68\xf2\x63\x51\xdc\x57\x3a\xae\xbc\x18\x49\x7c\xf3\x87\x10\x8f\x99\xf9\xe2\x46\xbf\x30\xb3\x60\x7f\x0f\x2d\x44\x03\xd4\x0d\xd1\x88\x33\x8f\x55\x55\x36\xeb\x6d\x19\xd0\x7a\xee\xfb\xb9\xf9\xd5\x82\xd6\x5f\x02\x7c\xdd\xa9\x48\xd7\x5b\xb3\x87\x7a\xdf\xad\x6e\x12\x9d\x55\x5c\x57\xfb\xe6\x6c\x2d\x9b\xd3\x62\xdd\x6f\xe3\x6e\x66\x53\x3c\xc3\x16\xb4\xe2\x10\x79\x62\x8f\xf3\x76\x56\xf2\x8f\x39\xa2\xb8\x2b\x4c\x96\xfc\x0a\x61\x2c\x9a\xa9\x14\xe4\x43\x33\xb8\xb0\x82\x4f\x30\x76\x69\xe6\x51\x75\x67\xbb\x9e\x13\xae\xfa\x5d\xaf\xb0\x62\x06\x6e\xf7\xbe\x97\x31\x97\x3e\x62\xb8\x80\xd9\x81\xaa\xb0\x33\x54\x39\x4e\x9e\x14\x68\x9d\x92\xe1\xaa\x4e\x93\xb5\x36\x48\x52\x5b\xb5\x9a\x99\x66\x73\x37\x1e\xfe\x4b\x2e\x99\x70\x60\x1d\x13\x11\xe2\x98\x55\x2d\xeb\x06\x49\x57\xf0\x5a\x5d\x61\x36\xec\x06\xe4\x2a\x92\x76\x58\x6d\xe0\x55\xd5\xcc\x12\xcc\xca\x21\x97\x32\x72\x52\x18\x80\xaf\x03\x36\xed\x72\xa4\x86\x22\xe0\x52\x59\x06\x3d\x44\x64\x92\x60\x3f\x48\xd0\x28\xc4\xfe\x4e\x46\xe2\x82\x1d\xb6\x41\xb1\xb3\x7b\x2e\x3a\x26\xd3\x21\x55\x59\x85\x7d\xb4\xf8\x25\xfb\xf7\x24\x0e\xe7\x93\x80\x9c\x78\x28\xc4\xc4\x47\x7c\xaf\xf9\x8f\xbb\x89\x88\xa5\x90\x58\xe6\x3f\xf9\x5b\xe3\xcf\xae\x37\xa5\xd1\x0c\xb1\xc0\x53\x0f\xa7\x28\x56\xef\x65\x4c\x6b\xc9\xca\x0c\x8d\x7c\xa9\x77\x67\x71\x8e\xd6\x5b\x9c\x3f\x7e\x37\x79\x77\x3a\x7e\x7d\x51\x6d\x71\x9e\x45\xbe\xd8\x70\x3e\x4e\x38\x10\x8a\x8e\xad\x86\xc2\x97\x32\x0e\xad\xa4\xb7\x2c\x04\xdb\x67\x15\x7b\x37\x96\x64\xfd\x7d\xc9\x8b\xb4\xb5\xb7\xab\x8c\xe5\x53\xe5\x95\xb3\x6a\xcb\xd4\x53\xd6\xed\x29\x22\x13\x65\xe9\xd6\x5e\x58\x85\x3c\x0e\xd6\xc9\xc3\x65\x36\xf5\xf4\xe4\xe1\x52\x4e\x9d\xff\xe5\x7b\xe9\x49\xb6\x89\x56\x23\xf0\x4f\x1e\x2e\xd5\x5f\xbc\xb1\xc6\x4d\x6a\x99\x35\xc6\x49\xb1\x36\xb9\xb8\xa8\x32\x2c\x09\xbc\xe5\x78\xcc\xb0\xab\x30\xf2\xfb\xa1\x4a\x02\x64\xa6\xef\xd3\x89\xb0\x0a\xd4\xa9\xc4\xdd\x72\x52\xac\xe0\x5e\xd3\xa4\x78\x53\x3d\x81\xa7\x05\xb9\x4e\xe6\x9d\x1d\x6a\xd7\x1d\x6b\xd8\x2e\x51\x80\x26\x8b\xc5\x7b\xc2\xd2\xf1\xda\x55\x33\xa6\xd8\xa7\xe8\xba\xce\x79\xb3\x34\x5a\xaf\x82\xa9\xdf\x3c\x48\xc1\x5c\xb5\xba\x09\x9f\x08\x4f\x85\xd6\xe2\xc0\x77\xaa\x33\x67\x26\xc5\xe9\x49\xb6\xf1\x4c\xea\x29\xb6\x5d\xf2\x8e\x49\x8c\xe8\x65\x18\x10\xdc\xbd\xc4\x8b\x2c\xab\x92\xbc\xdd\xce\x2a\x6e\xd0\x9e\x71\x6b\xea\x03\x1d\xc5\x98\x54\x14\xe3\x5f\x61\x0c\xff\x8c\x17\xad\x8a\x80\x6e\x5e\xf5\x72\x3e\xad\x1c\x9a\x6b\x8a\xe2\xb8\x22\x9d\x5e\x65\x37\x9d\xbd\xb4\x3a\x5d\xc3\x9a\xaf\xb0\x60\x56\x28\x4e\xf4\x31\x98\xe1\x84\xa1\x59\xbc\xc2\xef\x56\x5c\xe5\xc5\x45\xed\xb5\x4b\x3d\x63\xad\xc9\x50\x32\x37\x52\x94\xac\xd2\x56\x83\x38\xa9\x94\x9d\xdf\xf1\x23\xd9\x2a\x39\x87\x46\x8b\xae\xc3\x57\x44\x8b\x35\xac\xaa\xc3\x52\xe6\x5d\x14\x04\x62\x13\x75\xfd\x00\x85\xd1\x24\x57\x18\x15\xb6\xa5\xa5\x34\x40\x9c\xfd\x35\xa9\xaa\x41\xf6\xe4\x65\xc2\xf7\xab\x82\x97\x6f\x36\xab\x89\xb2\x67\x25\x35\x87\x70\x3f\xd7\x49\x38\xb4\x16\x56\x68\x9f\x44\x0e\x0e\x4d\xae\x34\x21\x50\x87\x40\x65\xe9\x59\xc9\x73\x91\x0d\x2b\x99\xa9\x24\xe4\xdc\xcf\x20\xd7\x68\x89\x39\x4f\xf3\xc8\x9c\x56\x02\xfe\xaa\x02\xa9\x00\x7d\x23\x65\x46\x45\xee\xc8\x0d\xb3\x1d\xe9\xa8\x99\xd6\x73\xad\x39\x45\x9c\xf2\x78\x91\x60\x88\xd7\x29\x7d\xca\x4a\xa1\x8f\xd3\x20\xe9\x5c\xe2\x45\xc7\x17\x41\x6e\x23\x9c\x88\x24\xc1\x3a\xd3\x9a\x17\x51\x8a\x93\x38\x12\xe1\xa4\x1d\x16\x89\x97\x13\x8a\xe2\x69\x47\x9d\xf7\x8e\x24\xa2\x9d\x80\x74\x66\x11\xc5\x1d\xe9\x37\xe9\x54\xca\xaa\x06\x10\xa1\x55\xe7\x98\xd0\xfb\x6e\x55\x18\xab\x24\xd7\xad\x13\x12\x15\x26\x90\x63\xa9\x97\xd5\x06\xa9\x9a\x71\xa1\x93\x6f\xb5\xcd\x50\xc5\x07\xde\x64\xff\x37\x60\x7f\xb2\xeb\xed\x54\x9c\x70\xb1\x9e\x38\x89\xba\x9c\xfb\x32\x31\xff\x36\xca\x96\x3a\x8c\x90\x8f\xfd\xf2\xc2\xdd\x99\x2b\x4f\xfb\x23\x92\xa9\xfc\xb6\x39\x25\xb9\xe8\xad\x6e\xa7\x45\x8c\xbb\xb9\x8e\xa7\xf7\x84\x8b\x6b\xa5\x6b\xb9\xc0\x6e\xa9\x3a\xeb\x61\x94\xe0\x62\x91\xb0\x92\x64\x5f\x71\xd0\x8a\x7a\x9b\xf6\xf8\xa9\x48\xb1\xb4\x39\xdc\x44\xc7\x33\x18\x42\xa9\x64\x5b\xf9\x8a\x17\x65\xce\x39\x0d\xcc\xaa\x33\xb3\x39\xcb\xca\xce\x44\xa4\x7b\x1d\x10\x5f\xa6\x16\x29\x08\xa5\xb3\x98\x95\x33\xfc\xc8\xf4\x3f\x73\x12\x0a\xdf\xf9\x1d\x44\x50\x53\xe6\xcb\x24\xd0\x4c\xe2\x74\xa4\x0c\x6a\x13\xfd\x40\x3a\x2f\xcf\xd7\x3a\x2f\x47\x4a\x34\xcd\xde\xe8\x51\x96\x1c\x21\x22\xe0\x18\x0a\x98\xfa\x0f\x7a\x50\xed\xb4\xfe\x52\x32\xa4\x66\x08\x74\x16\x03\xff\x27\x4e\xf4\x12\x1b\xa4\x50\x32\xeb\x7d\x33\xa2\x45\xb4\x4a\x30\xb3\x15\xba\xb1\xc3\xff\x75\x24\x5c\x3a\xf4\xde\x18\x44\x3e\xa1\x98\x62\xe2\x63\x6a\x8b\xb0\xfa\xec\xb5\xf9\xf9\x60\x6c\x3f\x90\xbd\x11\x43\x40\xa5\x62\x11\xd2\xa4\x04\x2f\x51\xb9\x36\xb2\x05\x7a\x70\x2a\x13\x21\xa9\x32\x35\xc9\xd5\xc4\xb5\x4f\x21\x6f\xc8\x25\x63\x20\x13\x2b\x60\x99\x80\xa1\x9c\xaf\x20\xb9\x9a\x38\x39\xff\x21\xfc\xbb\x23\x62\x5b\xb3\x68\x9e\x60\xe1\x20\x2c\xfe\x9a\x45\x57\x58\xfe\x15\xf1\x8d\x43\x44\x95\x07\xac\x3e\x20\x92\x18\xc8\xf2\x36\x0e\x15\x4d\xed\xd2\x4b\x8a\x3d\x66\xbc\x14\x93\x65\x2e\x76\x48\xe4\x63\xbb\x3e\x83\x04\x71\x75\xb6\x9e\xc8\xd5\x49\x64\xe0\xdc\xcd\x70\x73\x7b\xbb\x4c\xa1\xe7\xce\xd5\x8f\xc1\x10\xfa\xee\xdc\x91\x24\x54\xbc\x9b\xb9\x73\x67\x4e\x02\x76\x31\x1f\x8f\x83\x9b\xdb\x5b\xcb\x82\xb1\x6b\x96\x07\xf1\x81\x33\x0e\x42\x86\xa9\x8d\xdd\xa7\x96\xa8\xb2\x63\x3d\x70\x31\x38\x0a\xc6\xf6\xa9\xeb\x7a\x8e\xcc\x49\x79\x7b\x7b\xea\xba\xb1\xfa\xd1\x74\x45\xea\x5e\xf5\x24\xfc\x63\xbe\x46\x89\x93\x30\xe4\x5d\x02\x1b\xc8\xf9\xc4\xc0\x89\x28\xdf\x1d\xea\xc5\x3b\xfe\xe3\x83\x2c\x14\x02\x6c\x0f\xc0\x91\xeb\x65\x39\x79\x24\x16\x4f\x75\xb2\x9e\x38\xab\x74\x42\xdc\xa7\x4b\xf6\xc8\xc5\x03\x32\x4c\x01\x64\x22\x90\xdf\x3e\x85\xc8\x11\x0a\x11\xce\x6a\xf3\x0f\xfa\xd1\x0c\x05\xc4\xb6\x4f\x61\x20\xcf\x09\x03\xb6\x07\xb1\xfb\x14\x3b\x9c\x3b\x07\xc0\xa1\x7c\xcf\xdb\x83\x53\x48\x86\x00\x5e\x19\x43\xbc\x0e\x08\x46\xd4\x18\x64\x70\x0a\xc5\x38\x33\x74\x03\xec\x11\x18\x66\x7d\x23\x78\x3a\x04\x70\x22\x61\x45\x14\x23\xde\xe9\x86\x4f\x7f\x6a\xab\x03\xa3\x3e\xb6\xe8\xf1\xa7\x57\x36\x1e\x9c\x0e\xf9\xcf\x53\xfd\xb3\x37\x04\x00\x2e\xdc\x81\xf5\x6f\x2f\x5f\x9c\x9f\x9e\x7f\x6f\x41\xeb\xdf\x5e\xfc\xf0\xf8\xbb\xef\x9e\x58\x43\x47\x6a\xe9\xec\xd0\x49\xbc\x29\x9e\xe1\x8f\x68\x14\x62\x34\xef\x9d\x02\xf8\xce\x98\xef\x3b\xea\x07\x04\x85\xc0\x5e\x64\x33\x8e\xf9\x4e\x5f\xdd\xbf\x7c\x46\xf6\x18\x38\xbf\x44\x01\xc9\x1e\x22\xc6\xa8\x6d\x8d\x83\x30\xb4\xa0\x42\xfc\xf2\x12\x2f\xfa\x2c\x75\x71\x56\x74\xc6\x66\x20\xd5\x4d\x13\x46\xa3\x4b\xdc\xb0\xb1\x6f\xc1\x89\xdc\x12\x9f\x5d\xec\x70\xe1\x8b\xf8\xd9\x91\x91\x4d\x84\x62\xce\x82\x96\x37\xa7\x49\x44\x2d\xe0\x88\xec\x36\xb6\x75\x15\x24\x81\x4c\xc3\x2b\x8d\x0d\x3e\x26\x59\x1f\x59\x9f\x1b\xf6\xf4\x6f\x55\x9a\x1b\x46\xfa\xc1\x8d\x05\x4f\xf5\xdf\x0b\xfe\x37\x7c\xdf\x9c\x6c\x38\x5a\xf2\x03\xe0\x68\x1c\x51\x9b\x13\xe7\xcb\x4e\x34\xb6\xdf\x9b\x48\x75\x0c\x81\x8f\x75\x43\x3c\xc1\xc4\x37\x89\xc4\x9a\xc6\xc9\x7c\x66\xb6\x8c\x01\x58\x4a\x12\xf7\x3e\x43\x11\x67\x8a\xcb\x18\xaa\xfc\xe0\x11\x6e\xdb\xa7\xeb\x45\xa1\x89\xe8\x11\xf2\x2e\x27\xa2\x48\x96\x7a\x03\xdf\xd9\x97\x80\x53\x39\x3d\xb0\xe0\xba\x80\xc3\xf0\x0d\xb3\x2f\x41\xf9\xf1\xe6\x0f\x4a\xf1\x08\xa4\x1c\xc8\x6b\x77\x23\x16\x75\xfb\x23\x4d\x95\x9e\xf6\x8e\x8f\x5b\xa0\x46\xa2\xb7\x6a\xf2\x8a\x0a\xb6\x01\x21\x99\xcf\xb2\xf9\xf0\xf9\x9f\x0b\x12\x5d\xbe\x49\xac\x62\x40\xe8\xfb\xca\x4d\x2c\x7e\x84\xd8\x02\xf0\xf3\x86\xf7\xe7\x8e\x34\x18\x7c\x94\x1b\xd1\xc6\xd0\x13\x25\xad\x66\x70\x0a\xdf\xc3\x6b\xf8\x19\xa4\x00\xe4\x33\xe0\xfb\xa8\x34\x83\x96\x23\x88\x9b\xcf\x36\xee\xe9\x6a\x08\xf4\x31\xac\x01\x40\xbf\x4e\x01\x48\xe1\x75\x10\x86\x2f\x31\xa7\x16\x0b\x95\x1f\x69\x85\x0d\xf9\x5c\x99\x2c\x50\xd7\x7f\xd2\xf7\xfd\xf1\xb1\xfe\xab\xe9\xed\x9d\xc2\x02\xf0\x06\x67\x03\x89\x52\x7f\x47\x70\x0e\x7d\x38\x13\x07\x6f\x10\x0f\x25\x71\x10\xa9\x59\x31\x05\x36\x06\x47\xb3\x9c\x92\xc4\xfa\x52\x8b\x9c\x80\x5c\x61\xca\x6c\xf5\x64\xc4\xbb\x89\xbb\x61\x14\x24\x82\x78\x80\x62\x25\xae\x2c\xd5\x1c\xbf\x07\x38\xc2\x43\x3c\x66\xc0\x26\x70\x2c\x59\xbe\xe9\xd1\x5c\x23\x92\xbf\xb1\x60\xdc\x3d\x3b\x7b\x64\xc5\x37\xfc\x74\x8a\x43\x52\x3c\x21\xc1\x0c\xeb\xad\x6c\x4f\xdd\x31\xff\x76\xc6\x55\x02\x7b\x0a\x1c\x6d\x3d\xb0\x05\x3f\xb8\x4c\xd0\x0c\xbf\x44\x8b\xbe\x35\xf8\x18\xf9\x68\xd1\x41\x6c\xd8\x99\xf6\x67\xb3\x7e\x92\x74\x9e\x5b\x30\x44\x09\x93\xaf\xff\x86\x13\x86\x69\x4d\x93\xbf\x62\x7c\xd9\xb7\x06\xaf\x51\xc2\x86\x1d\xdf\xf7\xfd\x0e\x62\x66\x1b\xfe\x95\xf3\x30\xc1\x7d\xeb\xcd\x9b\x37\x9d\x97\x2f\x8b\xaf\x53\x00\x00\x9c\x57\x82\x53\x38\x5d\x12\xac\x2f\x0f\x97\x9e\x1d\x0e\x46\x43\x90\x3e\x5c\x26\xe9\x17\x00\x7d\xc1\x49\x25\xb6\x51\xec\x0c\x43\x06\x14\x8f\x40\x5c\x34\x60\xc3\xc1\x68\x38\xe8\x0d\xbb\xfa\xcf\xd3\xe1\x1f\x0a\xc4\x1e\x9b\x83\x13\x3d\x72\x0a\x60\x61\x91\xd3\x94\xd3\x7b\x5d\x85\xcd\x33\xd7\xef\x3f\x7b\xf8\xf1\xb3\xb7\x73\x59\x04\x32\x79\x45\x18\x9e\x70\xb6\x0a\x3c\xb3\xac\x47\xb8\x2f\x5f\xd8\xf8\xa9\xdb\x3b\x3d\x7d\x86\x1d\x16\xbd\xa7\xd8\x0b\x12\xbe\x09\x1e\x83\x3e\xfe\xcf\x9e\x78\xf8\x53\x70\x83\x7d\xfb\x0c\xf4\x8b\x2d\xce\x00\xe8\xf3\xae\xf8\xf1\xf1\x31\xff\xd0\xf7\xcf\x1e\xd9\xf8\xa4\x87\x1f\x83\xd2\x40\x8f\xac\x4b\x4b\xb6\xfc\x5e\xb6\xfc\xbd\x6a\xf9\xfd\x6a\xcb\x99\x6a\xf9\x7b\xd9\xb2\x77\xa6\x9a\xfe\x7e\xb5\xe9\x44\x35\xcd\xda\xf4\xce\x40\x36\xdb\x53\xf0\xc8\x62\x96\x2e\x52\x97\xdb\x7f\xe6\x5b\xd8\xc1\x84\x89\xa4\xcb\xe5\xd6\x7d\x09\xa8\x9f\x9c\x9d\x9e\xff\xcf\xe5\xa7\xff\xaa\xb6\x4c\xfd\x51\x19\x75\x2a\xa3\x10\xb5\x22\xa2\x26\x63\x8f\x01\x6c\x51\x73\xbe\x4b\xc6\x09\x63\x50\x47\xeb\x16\x61\xce\xad\x34\xf1\xc4\xb0\x76\x4e\x7b\x51\x37\x09\x7c\xc3\xd6\x1a\x4f\x1e\xb7\x48\x2e\x91\x41\xb4\x8b\x08\x5e\xde\x6e\xfb\x13\x28\x2c\xf2\x85\xdf\x51\xd5\xcb\x9c\x60\x45\x87\x54\xe3\x72\xfe\xad\xc6\xe5\xbf\x46\x8d\x4b\x6f\x3d\x05\xbe\xfa\x74\xf3\xd7\x4f\x1f\xa2\x1a\x0a\xcc\x0f\x4a\x3b\x5f\x00\x33\xbf\x7e\xbd\x5f\x40\x16\x6c\x5e\x97\x12\xa5\xd2\x15\xb9\x9d\x71\xf6\x6e\x5c\x04\x7e\x68\xee\x22\xf0\x70\xa9\x81\x4f\x37\xba\x06\xf4\x9a\xb8\x06\x18\xb8\xac\xf7\x12\xa8\x71\x0f\xc8\x2b\xff\x15\x4b\x56\x3c\x1e\x42\xcb\xf0\xca\x2a\xfb\x07\xfc\xce\x30\xa1\x09\x2a\xf9\xa9\x90\x19\xa5\xaa\x5d\xd9\x86\x7e\x2f\x7e\x04\x46\xda\x81\x1f\xc4\x97\xea\xae\x7d\x51\x09\xa2\xd6\x10\xd4\x5b\x67\xd5\xdd\x94\x4f\xe7\x89\xb1\x2d\xbe\x5b\xf9\xfb\x89\x51\x0b\x7e\xeb\xa4\x2f\x19\xac\x61\x99\x69\xd1\x29\x44\x12\xaf\xec\xde\x57\xe4\x69\xf4\x27\x45\x36\x6f\x7e\xe6\xf9\x7b\x99\xa0\x4b\x25\x61\xa8\xab\x3d\xea\xaf\xb5\xf2\x65\xf6\x0b\xb5\xa0\x0d\x7c\xb4\x2b\xad\x5c\xeb\x86\x56\xd6\xe2\x46\xee\xdf\x9b\x2a\x48\x34\x29\x5f\x55\xae\x9f\xfa\x36\xea\x68\x43\xed\xf3\x2b\x14\x84\xfc\xd2\xd9\xd6\x25\xa2\xee\xeb\x77\xe4\x20\x70\xd6\xda\x41\x60\x13\xff\xa7\xad\x3d\xca\xa2\x93\x55\x8e\xb5\x54\x71\x95\x9a\x52\x0d\xa2\xcf\x1a\xf3\x8f\xb6\x12\xbd\x16\xb6\xc0\xdd\x18\xca\x9c\x6b\x2b\x54\x68\xf0\x5b\x55\x68\x50\xd5\x14\xc2\x1d\xaa\x29\x44\x4a\xe7\xae\x30\x93\xa8\xe2\x06\xfa\x71\x0e\x2d\x0c\x54\x59\x03\x83\x94\x72\xde\x29\x18\xdb\x95\xd5\xf1\xcc\x94\xde\x9a\xf8\x03\xa9\x7b\xe1\x03\xb8\xda\x08\xc4\x7f\x1c\x71\x52\xa2\xb4\xf4\x79\x2f\x79\x99\xdc\xde\x5a\xd6\x11\xe7\x3d\x98\xd2\xdf\x1d\x1f\xdb\xcc\xcd\xc8\x90\x44\x1b\x71\xbf\x3c\x34\x93\x91\x33\x3c\x4b\x9d\x87\x4b\x26\xfe\x97\x3d\xf6\xbd\xf4\xcb\x51\xcd\x14\x06\x64\x98\x1a\xaf\xec\xfc\xef\xdb\xdb\xc1\x10\x28\x3e\xed\x14\x7e\xa7\xac\x53\x19\x62\xdc\x07\xa7\x69\x0a\x93\x72\x81\x7e\x5d\xc6\x67\xfb\x5c\xcf\x2b\x99\x86\x3b\xfc\x70\xa4\x29\x80\x41\xf9\x63\xc6\x2a\xed\x90\xff\x79\xe5\x83\x0f\x7a\xfc\x6b\x55\x80\xa9\x9b\x54\xe4\x83\xde\x94\x14\xb8\xb6\x37\x67\xb5\x8d\xb4\xc0\xa1\x29\x08\xf9\x6b\x7d\x67\x3d\xe8\x6f\xe3\x3b\x2b\xc8\xd2\xbe\xa8\x0b\xc8\xdf\xdf\xbf\xfe\xfe\xcf\x3f\x3e\xae\x51\x17\x64\x09\xf8\x56\xab\x38\x6d\x4c\xde\xf6\x9d\x49\x58\x57\x2a\x7b\xb5\x0c\x86\x5f\x75\x94\xa8\x64\x54\xe6\x49\x37\x23\xea\xd5\xfc\x4a\x85\x5f\xfc\xd9\xa6\xaa\x5a\xdb\xd4\xa3\x84\xad\x95\x10\x62\xfa\x4e\xed\x44\xda\xa7\x28\xa8\x83\x35\xaf\x81\xf0\x9b\x41\xa9\x17\xa9\x36\x36\xcd\x50\x47\xad\x2a\x9a\x5a\x7e\xac\x06\xde\x4a\xdf\xbd\x96\xc8\xcd\xb7\x75\xab\x3a\x7a\x77\x8f\xb6\x3b\x48\x31\xd8\xb4\x30\x58\x7d\x60\x6c\xf3\x43\x2a\xfc\x98\x68\xc1\x51\x6b\x2b\x84\xf0\x71\x02\x32\x31\xa3\x87\x9a\x70\x96\xf5\x3c\x5b\xc6\x60\xe5\xdc\x9a\x08\xf2\xe0\x68\xdf\x91\xd1\x9a\xef\x5d\x76\x3f\x5d\x8a\xed\x9b\xde\xee\x9b\xde\xee\x9b\xde\xee\x2f\x04\x91\x5f\xd9\xa4\x26\x8b\xa4\x0a\xeb\x12\x5e\x57\x45\xfd\x9c\x91\xef\x71\x73\xe1\xc2\x1a\xbe\xe9\x74\x58\x4a\xc7\x21\x14\x50\x5c\x80\xdf\xb5\xc6\x6e\x2f\xf7\x5d\xff\x1e\x5a\x7c\x7e\x3f\x46\x37\xab\x51\x0e\xdf\x67\xc1\x98\x9d\xbc\x0c\xe6\xa2\xfc\x40\xfa\xa8\x94\x1e\x4e\x75\x79\xda\x42\x64\xa5\x15\x53\xcc\x91\x84\x9f\x27\x31\xf6\xd8\x07\xc4\x82\x48\x88\xb0\xc4\xb0\x1e\xfd\xce\x88\xb1\x98\x60\xf6\xca\x8b\xc8\x7b\x95\x28\xb3\x50\xc9\x56\xb6\xfe\xfd\xfa\xd6\xd0\x4c\xed\xbf\x26\xc0\x01\x8f\xab\xca\x55\xe6\x0d\x66\x88\x5e\xaa\xbb\xe9\x09\x2c\x1b\x96\xd4\xd7\xe7\x81\x2c\xc6\xda\x15\x4a\xa1\xae\x1f\x99\x39\xc6\xe4\xd5\x67\xbe\x11\x89\x4e\x32\xdc\x5b\xdd\xb3\x4e\xf7\xac\xd3\x7b\xd2\xe9\x3d\xb1\xb2\x34\x29\xe3\xff\xb1\xa0\xf5\xbd\xf1\xfb\x6f\xe6\x6f\x39\xa9\xbf\x4a\x1f\xa1\xf2\x63\x5d\x80\x45\x3d\xaf\xf7\x2a\xf7\x02\xea\x29\x05\xcc\x77\xd0\xf2\x6e\xcc\xa1\xbc\x45\xe1\xfb\x85\xd1\xaa\xd5\x50\x75\xba\xa9\x2d\x10\x88\x28\x8d\xae\x6b\x50\xa8\xdf\x95\x91\xd8\xeb\x74\x7b\x9d\xde\x59\xa7\x77\x56\x42\xe2\x93\x12\x12\x9f\x6c\x83\xc4\xef\xf8\x9d\x1f\x60\xa1\x2a\x46\x73\x16\xc9\x40\xdd\xae\x22\xb4\x9b\xbc\xf7\xa3\x70\x31\xc9\x3c\x9b\x2d\xa1\x75\xe0\x44\xe0\xb4\x73\xda\xe9\x9d\x76\x9e\x88\x7f\xbe\x06\x76\x7d\x4c\x16\x95\xbb\xd3\x78\xf1\x6d\x73\xae\x47\x5f\xf5\xde\x2c\xbc\xfa\x97\xde\x9a\xf5\x81\x12\x15\x26\xa7\x92\xfd\xe9\x87\x6d\xca\x7d\xaf\x5e\x99\x3a\x28\xe0\x0c\x0e\x2c\xa3\x04\xe5\x70\xd7\x3c\xc7\x06\xda\x10\xbf\xf8\x1a\x6c\x1a\x3d\x0d\xf1\xcb\xd8\x34\x4f\xa0\xe5\x5b\x2b\xb6\xa3\x33\x69\x81\x60\xda\x02\x91\x50\xcf\x32\x5e\x89\x9f\xda\xca\xf0\x44\x6f\x07\x95\x33\xa0\x98\x89\x64\x4e\x43\xfb\xdf\xf2\x82\xf0\xab\x24\xc0\x4c\x90\x6e\x8c\x85\x89\xdf\x6a\x24\xb1\xe5\xcb\x63\x95\x6b\x7f\xc2\xca\xc5\xd8\x56\xe0\xd6\xb2\xf3\xe1\xaf\x45\xc6\x13\xec\xbe\x18\xc6\xdd\x78\xaf\xab\x51\xa1\x2f\xd8\xb6\x92\x78\x5b\xe2\xf0\xbb\xbb\x21\x0e\xab\x46\x46\x69\x1b\x33\x93\xf0\xa8\xda\xaa\x26\xcf\x59\xd1\xea\x67\x94\xbc\xcf\x50\xb8\x65\x8c\x5b\x9d\xb5\x4a\x67\x1a\x29\x57\x45\xcf\x12\xc7\x1b\x49\xe7\xcd\xd2\xe7\x55\xb5\x13\xd6\xce\x19\x5a\xe1\x0f\x56\x29\x67\x4a\x21\xa5\x50\xe0\x57\x07\x41\x9b\xa7\xaa\x57\xae\xd8\x6f\x3e\x2c\x61\x91\xf7\x0d\xea\x38\x7b\xe9\x6b\xb5\x92\xa9\xc4\x30\xb6\x0b\x03\x7b\x51\x81\xdc\xcc\x40\xb7\x45\x7c\x96\xd0\xfc\x64\x6e\x5b\xe3\x80\xf8\xb2\x64\x7a\x66\x87\x53\x01\x58\x22\x6b\xca\xd5\xa4\xeb\xcd\xe9\x15\xd6\x2a\xa2\xd6\x25\xd9\x77\xab\x1b\x51\x54\xde\x34\x36\xdf\x05\x44\x08\xd3\x4a\x7e\xb5\x2d\x3f\x9a\x89\x9a\xa7\x77\x6f\xcb\x2b\xae\xf9\x8a\x4d\x8f\x7f\x38\xb3\xe6\x4d\x30\xeb\xf0\xfd\x95\x5b\x99\x54\x25\xd4\x99\x23\x1e\x67\xad\x0a\x42\x9f\x51\x06\x3a\x37\xaf\x49\xd1\x1b\x9a\x26\x3c\xce\x99\xc1\xcd\x35\x65\x8b\x95\x72\x3b\x32\x98\x44\xd5\x70\x2d\x00\xe3\x12\x11\xd3\x43\xb2\x3a\xdb\xd4\x8d\x11\x4d\xf0\x4f\x61\x84\x98\x4d\x9c\x09\x66\xc2\x29\xff\xb5\x10\xde\x6d\xc0\xf1\x2b\x9e\xbe\xe7\xdc\xd6\x73\xa6\x9e\xbf\x41\x6c\xea\x78\x38\x08\x6d\xe7\xfb\xef\xbf\xff\x0f\x0a\x80\x51\x6e\x9b\x38\x81\x0f\x6f\xfa\xa2\x8d\x08\x64\xb0\x91\x73\xd3\xc5\xce\x0d\x80\x8b\xe2\xd3\x45\x97\x39\x0b\x90\xa6\xa0\xca\x00\x58\x5a\x84\xdd\x8b\xbe\xae\x58\xfd\xc4\x3a\xee\x5e\xef\xb5\x34\xea\x8a\x7c\xdf\xde\xc8\xb7\x32\xc4\xce\x96\xbe\xa3\x0d\xea\x55\x1a\x04\xdd\x60\xcc\x49\x4e\x57\x64\x7e\x9a\x46\xa1\x48\xd1\x68\xea\x55\x45\xab\x46\xdd\xee\xa1\x9a\x8a\xd4\x38\x67\x87\xb9\x95\xf6\x78\x11\xe0\xd0\xd7\x51\xc0\x06\x40\x79\x74\x70\x52\xd3\x7c\x77\x40\x6a\x3b\x64\x7c\xfc\xb2\xb8\xd9\x26\x98\x55\x58\xae\x33\xc0\xf9\x61\xa9\x81\x57\xe7\xc5\x4a\x4e\x50\x1c\x87\x81\xce\x07\x65\x42\x9c\x37\x9f\xb3\x20\x4c\x4e\x68\x34\x67\x01\x99\x9c\x30\x8a\x88\xdc\x6b\xca\xcd\x65\xbd\xba\x1c\x46\x70\x5e\xf0\xcd\x3f\x1c\x95\xb9\xff\x4d\x65\xfe\xcf\xae\x32\xe7\x7c\xc4\x2c\xe7\x23\xca\x6c\x03\xdf\xf3\xa2\x5a\x7a\x1d\x5f\x91\xb0\x88\x62\x83\xb3\x28\xbf\x1f\x63\xec\x8f\x90\x77\xc9\xa9\x72\x89\xf9\x48\x4a\xcc\x87\x0e\x12\xd7\x47\xb3\x01\x0f\xe2\x29\x26\x43\x4d\x53\xf3\x19\xd9\x73\x39\x3b\x18\x95\x1e\x67\x93\x82\x73\xc5\x98\x50\x8c\xe6\x6c\x1a\xd1\xe0\x57\x9c\xc5\x90\xeb\x56\x0e\xbe\xc1\xde\x9c\x61\xdb\x06\xee\x53\x15\x5e\xce\xc7\x75\x02\x72\x85\xc2\x40\xb8\x26\xe5\x15\xed\x97\xe9\x51\x30\x56\x31\xb4\x9a\x6f\x61\xca\xf9\x87\xbf\x29\xc6\x88\x49\xaf\xa3\x9c\xbf\x91\x38\x98\x60\x66\x33\x68\x70\xde\xe0\xf6\xd6\x68\xee\xf0\x17\x47\xb8\x38\x86\x78\x78\x7c\x6c\x13\xf5\xdb\xb5\xac\x47\x18\xa4\xa9\xe6\x5c\xb2\x91\xdf\x5d\x13\x4c\x25\xa7\x05\x91\x1c\x41\xa2\xcf\xf1\xe6\x94\x62\xc2\x3e\xf0\x5f\xa2\x7c\x2a\x0c\x5d\xea\x84\x51\x74\x39\x8f\xd5\x56\xe8\x5b\x8f\x90\x66\x5f\x3a\xe5\x77\x26\x25\xe5\xc7\x6d\x4c\x71\x32\xb5\x01\xbf\x8c\x67\x41\x82\x1d\x0f\xb1\x02\x81\x00\xcb\x14\x00\x87\x4d\x31\xb1\xb1\xfb\x14\x69\x78\x2a\x66\xc3\x61\xbb\xbd\xcd\x50\xa7\x61\x7c\x16\x3a\x39\x31\xfe\x18\xf1\xcd\x51\x0c\x2b\xab\x1b\x4f\x10\x60\xd0\xc7\x20\x85\xd8\x11\x6c\x44\x65\xec\x5b\x0a\xe0\x52\xf0\x5b\x81\xeb\xdb\x89\xc9\x74\xe8\x0d\xb7\x3b\xa3\x15\x95\x87\x56\x7b\xf6\x0e\x58\xad\xf2\xc8\xf9\xb6\xdf\xa1\xb2\xbe\x1a\xbc\x8c\x8f\xfc\xfc\xc8\x62\xfa\x9b\x58\xb8\xda\xde\x00\x26\x26\xf7\x96\x98\xdc\xdb\x6c\xf3\x6d\xee\x7b\x27\xc8\x0b\x93\x13\x6d\xab\xab\xbe\xd0\xab\x7a\x88\x3c\xbe\xf7\x51\xda\x4e\x10\x39\xb2\x3e\x7b\x63\x2d\x5f\x56\x33\xcf\xfb\x74\x28\xe3\x17\xbd\x76\x27\xcb\xa9\x71\x96\xb3\x63\x34\x0f\x38\xdf\xda\xaf\xa1\xf7\x11\xe5\x82\xa6\x1f\xcd\x6a\x1a\x48\x41\x94\xef\xa8\x66\x31\xb5\x92\x14\x47\x74\x26\x89\x83\xfa\xba\x78\x62\x5b\xc8\x0b\x2d\x90\xc2\x04\x33\x05\x69\x80\x93\xd5\x64\x20\x6a\x5c\x93\x61\xc1\x39\x3b\xa0\x22\x32\x93\xeb\x80\x53\x27\x06\x96\x1e\x4a\xb0\xb4\x03\xf7\xf1\x80\x0d\xdd\x6c\x06\x4e\x82\xd9\x4b\xc4\x90\xcd\x1f\x8b\xf4\x18\xe2\x17\xbf\x3d\x14\xbd\x80\x18\x80\x34\x4f\x61\xb2\x92\x9d\x84\xef\x28\x7d\x51\x64\x92\x2f\x89\xe8\x4c\x1c\xae\xf3\x2b\x4c\x98\x68\x74\x94\x7f\x73\x8a\x88\x1f\xaa\x57\x04\xa4\x5c\xf6\xcf\x57\x8c\x35\xdf\x36\x71\x14\x06\x5e\x80\xb7\x39\x19\x59\xd7\x43\x39\x22\xc5\x09\xd7\x9f\x15\xb1\xd3\xf9\x5d\x70\x74\x37\x8c\x14\x72\x6d\x56\xc7\x07\xc9\x73\x41\xda\xf1\x3c\x7c\x82\x92\x05\x47\x47\x55\x87\x43\x2a\x44\x20\x73\x2d\x75\x2e\x2c\x75\xa5\x43\x9b\xb8\x9c\x33\xde\x1f\x01\x03\x19\x02\x06\x7f\xa9\x39\x3a\xd1\xb2\xcd\x99\x17\x8b\xbb\xb0\x40\x5a\x38\xf5\x7c\x39\xe5\x78\xc5\xc7\x5f\xeb\xd0\xa7\x42\xe8\xc8\xef\xb4\xc4\x58\x92\xc0\x1d\xb0\x21\x8c\xdc\x5d\x6e\x5c\xe8\xb9\xcb\x14\x9a\xd0\x44\x35\x32\x97\xc7\x65\xae\x48\xc9\x5c\x5e\x51\xe6\xf2\x0a\x0b\x5d\x96\xb9\xbc\x5a\x99\xcb\xbb\xbd\xf5\xca\x32\x97\x57\x94\xb9\x3c\x37\x68\x22\x73\x09\x8a\xa1\xe5\x74\x9b\x0b\xc8\x18\xdc\xde\x72\x4e\xcb\x03\x70\x6e\xc8\x5c\x5e\x49\x22\xf2\x94\xcc\x55\x78\xfe\xcc\x5b\xdd\x68\xf3\x4c\xe6\xf2\xd6\xcb\x5c\xe5\x2f\x54\x9f\x15\x3e\x45\x8f\x83\x27\x65\x2e\xea\x7a\x90\x48\x9f\xbe\x4c\xba\x87\x9e\x41\x92\x51\x73\x32\x45\xa3\x70\x2b\x7a\x2c\xfb\x1d\x0a\x31\x36\x66\xfb\x8d\x12\xff\x53\x51\x62\xbe\xb2\xdf\xe8\xf0\x37\x3a\x7c\xe8\x74\x98\x45\x97\x98\x6c\x43\x88\x55\xc7\x43\xa1\xc4\xe6\x74\x7f\x43\x01\x72\x93\x6c\xd8\x48\xc0\x0c\x92\x0b\x2f\x8a\xb1\xdf\x7f\xd0\xbb\x2b\x61\x52\xa0\xe7\x9f\x52\x9c\x84\x34\xff\xea\x11\xa3\x8b\x25\x2d\x8b\x95\x52\x35\x87\x38\x84\x34\xba\xee\x10\x47\x26\x8a\x96\x5a\x40\x94\x6e\x25\x76\x4a\x1d\x5d\xcb\x73\xa5\x3b\x1d\xc0\x99\x2a\x4c\xf5\xe0\xcf\xd3\xdd\x9c\x21\x95\x92\xe1\x8e\x94\x20\x74\xb1\xac\x55\x84\xc8\x1d\x4b\xab\x77\x2c\x6d\xb8\x63\x85\x0b\x15\xf2\x51\xcc\xca\xf6\xdb\x3f\x62\x8e\x2d\x91\xa3\xf9\xc4\xc7\xa3\xf9\xe4\x90\xcc\x9b\x3e\xf6\x22\x8a\x58\xc4\xf7\x69\x21\x7f\x87\x01\xe0\x35\x5a\x8c\x11\xbd\x23\xfb\xf3\x8c\x2f\x86\x5b\x13\x8f\x41\xdc\xa2\x52\xde\x5c\x17\xec\x3e\xb5\x99\xb0\x2f\xba\x4f\x6d\xe2\x88\x29\x98\xd3\x21\x20\x73\xbd\x20\x99\xb5\x41\xed\xdd\x3e\x3f\x8f\x28\x20\x98\x5a\x40\x9a\x4c\x32\xcb\x04\x73\x9f\x22\xc9\xa7\x38\x28\x8e\xc3\x85\x4d\xe1\x00\x43\x36\x14\xf8\x42\x7c\x02\x6a\xc6\xee\x53\x22\xff\xb4\xf1\x66\x5c\x52\x2c\xec\xf6\xf7\x73\xd6\xb1\xc3\x19\x9b\xbf\x08\xde\x0a\x3b\xea\x53\xe5\x18\x5f\x75\xbb\xd8\x44\xa3\x6c\x59\xda\x22\x1a\xe3\x88\x23\x44\xc1\x2e\xa4\x90\xfc\x00\x6b\x1c\x11\xd7\x75\xf1\x33\xd6\x27\xe2\xc2\xab\xd8\x67\x88\x5f\x50\xd5\x63\xc8\xc3\xa5\x27\xc9\x8e\xcc\xc9\x57\x18\x52\x98\xcc\xe9\x87\x41\xaa\x5d\x13\x36\xbb\x24\x88\xca\x4b\xb5\x57\xc6\x38\x98\xf0\x16\x01\x8d\xc8\x4c\x7a\x48\x97\xad\xf5\x13\xcc\xba\x66\x8b\x95\x72\x42\x5b\xad\x16\x26\x57\xc5\x35\xa1\x7c\x73\x13\xc3\xe2\xa4\xff\x84\x32\x77\x37\xd4\x9e\x48\x1c\x61\xbc\x37\xad\x06\x57\xa6\x3b\x3e\x89\x29\xf6\x03\x0f\x31\x9c\x70\x96\xed\x5e\x6f\x95\xfc\xc1\xf2\x32\x20\x7e\x7f\x39\x43\x04\x4d\x64\xb6\x4b\xb5\xcf\xb0\xf3\x71\x11\x63\xd7\x75\x19\xf4\x44\x02\xe8\xd5\x17\x9c\xce\x36\x84\x67\xce\xa6\xdd\x19\x66\xd3\xc8\xff\xba\x70\x5d\xce\x47\x98\x12\xcc\x70\x52\x01\xd7\x2f\xd7\x55\xd0\x46\x81\xef\x55\xc0\x0a\x25\x21\xed\x2f\xc3\xc8\x43\xa1\xd1\x80\x73\x8e\xaf\xf9\xb3\x80\x2d\xc4\x00\x93\x30\x1a\xad\x6d\xd1\x1c\x6f\x53\x8c\x42\x36\xed\x7a\x53\x2c\x2c\x77\x5f\x05\x71\x32\x8e\xb5\xbf\x8c\x51\x92\x04\x64\x92\xc3\x71\x21\x5e\x08\x10\x55\x6d\xfa\xca\x77\x1e\x0d\x58\x50\x40\x51\xfe\x32\x85\x72\x59\x34\x15\xcf\x9a\xfc\x39\x20\xbe\xe8\x4d\x22\xbf\xe2\x71\x0a\x05\x0a\x44\xc7\x71\xc5\x9a\x49\xd3\x62\xc5\x8b\x29\x63\x71\xc5\x63\xe6\x55\x3e\x65\x61\xc5\x53\x3f\xf2\x2e\x31\xad\x78\x31\xa1\x71\xc5\x46\x81\x28\x0c\x50\xc5\x6e\x6b\xbe\xe8\x46\x61\xc3\xaf\xb3\xe2\xc8\xf3\x70\x92\xf4\x97\xc2\xdf\x3c\x9f\xb9\x2c\xf1\x29\x71\x80\xc9\xa2\xf2\x85\x85\xe2\xb8\x8b\xae\x11\xc5\x56\x1f\xbb\x4f\x33\xb9\x5e\x37\x6a\x0e\xf5\xe5\xd5\xd7\xa5\x0c\x63\xe1\x81\xd7\x17\xb9\xd5\x83\xe4\x27\xf1\x0b\x5e\xe2\x05\x7f\xf2\x20\x7f\xd4\x1c\x00\xbe\x73\xff\x29\xce\x68\x63\x88\x95\x35\xa6\x70\x53\xcf\x08\x9e\x45\x24\x48\xd8\x49\x82\xef\x45\x88\x93\x4c\x84\x5a\x44\x4b\xd2\xda\x6e\x7e\x7d\x59\x7a\x45\xff\x24\xde\xbc\xc9\x5e\xc0\x84\x21\xe2\x23\xea\x67\x0b\x5c\x6e\x91\x42\xce\x30\x4b\xdf\xe2\xbe\xe0\x3f\x0b\x1b\xfa\x65\xf6\x32\xb9\xbd\xcd\x8b\x62\x88\xd4\xcb\x89\xac\x76\x78\x11\xfc\x8a\x6d\x02\x09\xbe\xee\x5c\x60\x66\x17\xfa\x00\xf0\xf4\x34\xdd\xcc\xfa\xac\x62\x59\x57\xe1\x0f\x08\x87\xa0\xcc\xca\x7f\x2d\x7c\xdf\xe7\x8e\x53\x05\x40\xb0\xfb\x54\x62\xfa\x0d\x4e\xa6\x2f\x38\xbd\x4f\x54\x22\xa6\xec\xf2\x55\xab\x22\x5c\xa8\x9a\xad\xc0\xf9\x0d\xc3\x94\xa0\xf0\x42\x0c\x20\x53\x2c\x81\x5d\xd6\xe1\x37\xdd\xee\xe5\xcc\x31\x15\x17\xa8\xc5\x30\x9d\x05\x04\xb1\x80\x4c\xd6\xb6\x9b\xe1\x64\xba\xae\x81\xbe\xa3\xe5\x71\xe1\x8f\xa1\x15\x90\x2e\xef\xa6\x0e\xd9\x2b\xc2\x57\x4a\x44\x4c\x74\xcd\x37\x0f\xf4\xab\x14\xd6\x6e\x1b\xfe\x7a\xdd\xd6\x29\xbd\x5f\xdd\x3e\xa5\x06\xb5\x5b\x48\x78\xe9\xa7\x50\x9f\x9e\xfe\x92\xe2\x49\x90\x30\x4c\xb1\xaf\xa1\x90\x6f\x5e\x44\x73\xc2\x9e\x9e\x4a\x70\xf2\x46\x56\x3e\x68\xa1\xe5\x5e\xec\x49\xa9\xb6\xfc\xaa\xf7\x66\x1b\x92\xab\x38\x61\xb9\x25\x04\x07\x0c\x25\xf7\x2c\x3a\x88\x07\xb5\xb7\x4d\x88\x92\xe9\x49\x24\xe6\x5f\x3c\x72\x52\x39\xe3\x85\x41\x57\xb6\x29\xb4\x3c\x20\x45\xcd\x38\xa2\x33\x99\xb9\xed\xab\xac\x1e\x0b\x66\xb8\xbf\x9c\x4e\x67\x33\xce\xea\x4d\xa3\x39\xed\x5b\x02\x8e\xc0\xb3\xe0\x2c\x20\xc2\xc1\x33\x7b\x90\x60\x2f\x22\x7e\xfe\x20\x15\x97\xe3\x6e\x03\x10\x91\x6f\xbe\xbf\xf4\xa2\x59\x8c\x3c\xd6\x5f\x92\x88\x09\x87\xd1\xbe\xa5\x1e\x59\x29\x3c\xff\xf4\xa1\xbf\x14\xb5\x05\xfa\x96\xf4\xda\xe4\x1c\x86\xfe\xab\x6f\x9d\x7f\xfa\x20\xbe\x16\xcc\xe6\xb3\x9f\xa8\x54\x34\xbe\x0c\x26\x01\x4b\xfa\x67\x70\x86\x6e\xaa\x9e\xa7\xf0\xd3\xc5\xcb\xb5\xa3\x7e\xba\x78\xd9\x7e\xd4\xda\xad\x1b\xd1\xd9\x8a\x08\x6f\x2a\x29\x94\xe7\x70\x10\x11\xd5\x6c\x45\x81\xc1\x87\x38\xd1\xb6\xcb\xbb\xd1\x5e\xe8\x8d\x50\x70\xd1\x97\x95\x08\xb4\x6a\xc7\x28\x5b\x92\x99\x00\xb3\x97\x83\xde\xf0\x99\xf9\xa3\x6f\x59\x10\xad\xf6\x3d\xab\xec\x7b\x66\xf6\x3d\x1b\xf6\x73\x4d\x49\xb8\x3a\xc4\xe3\xca\x21\x1e\x9b\x43\x3c\x1e\xf6\xa9\xd6\x65\x85\x36\x81\xcb\x14\x38\x09\x66\x7f\x91\x88\x8d\x68\x62\x23\x90\xd6\x68\x69\x6a\xa2\x7c\xe4\xaa\x55\xca\x5e\x75\x6b\x67\x56\xa0\xff\xb6\x82\x5f\x77\x05\x6b\xcf\xdd\x65\xad\xea\xd0\x5c\x3a\xde\xea\xdb\x9a\xed\xcb\x9a\xe9\x64\xde\x9b\xd7\x2d\x4b\xfb\xfd\x6d\xed\xee\x7e\xed\x1c\xe4\xfb\x36\x2e\xb9\x5a\x16\x9f\x4a\xb7\x9f\xed\x56\xb9\x4a\x5d\x50\xbd\xca\xba\xe5\x61\xae\xb2\x9e\xfd\xfe\xac\xb5\xa1\x86\xe8\x2f\xd9\x22\xc6\x7d\x4b\x06\xaa\xa7\x77\x75\x82\xc5\xbe\x68\xb0\xb2\xb2\xdd\x61\xae\xab\x9c\xfb\xfe\xac\x6a\xe3\x13\xbc\xd5\x8a\xae\x88\x96\x75\x4b\xaa\x1a\x1e\xe6\x9a\x1e\xe4\x7a\xde\x01\x45\x9e\xe2\x30\xc6\x34\x39\xe9\xaa\x5a\x92\x55\x22\xb6\x7a\xd5\x95\x6d\x57\xbb\x1c\x90\xac\x9d\xcd\x7d\x8a\x92\xae\x8c\x66\x17\x79\x43\x92\x2a\xb8\x09\x9a\x61\x5f\xb6\x4a\xba\x71\x14\x2e\xc6\x41\x18\xae\x19\xe2\xa0\xf1\xb0\x0b\x02\x0e\x12\xf2\x20\x31\xe1\xeb\x06\xe4\x2a\xaa\x4a\x00\xd0\x08\x13\xf5\x63\x1d\x22\x66\xee\x0c\x2d\xff\x3c\x38\x41\xa3\x4a\x0a\x31\x43\x6c\xda\xd5\x6d\xcc\xb6\x7b\x09\x62\xfd\x98\x02\xbc\x86\xe3\xa1\x51\xb2\x19\x5d\x5e\xd4\x02\x5f\xbc\xf1\xa1\x21\x4c\x00\xd8\x14\x63\x5e\xd4\x0c\x65\xd3\x56\x38\x9b\x1e\x22\xd2\xa6\xad\xb0\x36\xdd\x8c\x36\xdf\x6f\x8e\x34\x51\x48\xe9\xb0\x50\xc6\xc1\x6b\x8a\x30\xdf\xdf\x8c\x2e\x52\x89\x2e\x46\xe7\x55\xf8\x22\x87\x87\x2f\xd2\x02\x5f\xa4\x01\xbe\xe2\xb8\x7b\x85\x69\xb2\x46\x11\x5c\xe9\x88\x98\xdb\xa6\x8c\x11\x74\x0a\x21\x3c\xc1\x37\x71\x95\x24\x94\xe5\xdc\xa1\x5a\xa0\xa1\xdb\x0a\x34\x4b\x2d\x07\x20\xc3\x18\xf9\xfc\xfd\x7b\x47\xcd\x45\x04\xc8\x85\x2e\xd5\xbf\xdf\x91\x70\x71\x7b\x4b\x9d\x69\xe0\xe3\x8b\x29\x82\x89\x4b\x9d\x64\x8a\xcc\xc7\x7f\x91\x2d\x61\x20\xa2\x6f\x32\x89\xe5\xf8\xd8\xe6\x4d\xa3\xeb\x73\xe1\x8a\x8e\xfd\xe3\x63\x3b\x70\x91\xf2\xa8\x25\xfa\x03\xfa\xed\x07\x3c\x39\xbf\x89\x01\x80\xc1\xed\x6d\x55\x3b\xfd\x1e\xc0\xa4\x34\x50\x32\x45\x79\xe7\x67\xc1\xe0\x74\xd8\x47\xdb\x24\xbf\x41\x71\xac\x40\x71\x69\xb5\x9d\x5d\xe7\xb1\xf9\x59\xec\x02\x47\x6e\x06\x9b\x82\xcd\x91\x45\xc6\xbe\xc1\xd5\x47\x4d\xa4\xcd\x4a\xf8\xde\x5c\x3d\x6f\xb2\xd3\xa1\x1d\x39\x05\x6a\xd3\x53\x27\x9a\x6f\x3e\x78\x49\x50\xc9\x71\x56\x13\x76\xde\xf8\xd0\xd0\x26\x00\x6c\x8a\xb4\x24\x20\x8d\x50\xd6\x82\x83\x10\xad\x0f\x10\x69\x2d\x38\x08\xde\xba\x01\xda\x92\x60\x52\xb9\xd7\xe4\x9b\xb2\xda\x43\xb5\x3f\x38\xcc\x49\x28\x1b\xa3\x8e\x37\xdf\x8c\x3b\x86\x5a\x9c\x52\x86\x0e\x0f\x6d\x02\xc0\xa6\x48\x63\xa8\x19\xca\xce\x5a\xe1\xec\xec\x10\x91\x76\xd6\x0a\x6b\x67\x8d\xd0\xd6\x82\xb8\x89\xd6\x07\x88\xb6\x16\xc4\x8d\xb7\x6e\x80\xb6\x68\xb4\x3e\xa1\xa5\x68\x71\x6f\xfe\x8a\x55\x7c\x94\x5d\xd2\xda\x0f\x88\x6b\x59\x43\x17\x2b\x8e\xb2\x18\x27\x46\x84\x97\xc6\x46\x8f\x38\x0d\x6f\xbd\x4a\xd7\x4c\x5d\x5a\xd9\x7a\x2f\x77\xcb\x7a\x68\x3d\x34\xc3\xa1\xcc\xb6\x56\xe9\x17\x97\x30\x1a\x90\xc9\xca\xe9\xc8\xba\xed\x25\xc8\xf5\x63\xe6\xe0\x36\x1c\x54\x77\x68\x80\xc8\xca\x6b\xcc\x43\xa4\xd0\x64\x2f\xf1\xb5\x11\x32\x0f\x87\x5d\x14\x86\xd5\xc2\x08\xd1\xbe\x6f\x55\x3d\x0e\x13\x5e\x52\xce\x5a\x5c\xb9\x98\x64\x8f\x93\x15\x57\x78\xa5\xe5\x33\x8f\x03\x86\xb6\x3a\xf4\x59\xc7\xbd\x04\x7b\xdd\xb1\xcf\x41\x6e\x7c\xf0\x75\x97\xcd\x1b\x66\x44\x2b\xb7\x4b\x25\x5f\x21\x1a\x1f\x1a\xfa\x04\x80\x4d\x11\x37\xa2\x0d\xce\x18\x0e\x2a\xa9\x49\x35\xca\x78\xe3\x43\x43\x99\x00\xb0\x29\xca\x70\x10\x6e\x46\x99\xc8\x7f\x90\x60\xd6\x9d\xe0\x6a\xea\xa4\x1b\xd4\x74\xd9\x4b\x0c\x36\x85\x39\x69\x0f\xf3\xdd\x44\xd1\x7c\xdd\x5d\xa3\x27\x7f\x81\x5b\x1c\x38\xa3\x53\x73\x8c\xae\xc5\x66\xd7\x74\xca\x59\xed\x7a\xa8\x58\x6d\x8f\xd2\x06\xf8\x9c\x93\x4a\xc7\x87\x35\x4a\x5a\xd9\xe7\xe0\x90\x28\x00\x6d\x8c\xc0\x39\xb9\xdc\x8c\xbc\x10\x25\x49\x30\x5e\xb4\xe5\x43\x74\xb7\x43\x43\x61\x06\x6e\x53\x2c\xaa\x0e\x0d\x10\xf9\xeb\xe3\xe6\x1a\x21\xd9\xfa\xe0\x90\x27\x40\x6c\x8c\xb9\x5f\x1f\x6f\xd6\x08\x79\x51\x18\xca\xb8\xba\x3a\x05\xc7\x2c\xf2\x71\x68\xc4\x6b\xd6\xbe\xca\x43\x6a\xef\xd6\x3d\xb1\x94\x24\x24\xcb\x76\xc0\x9c\x17\xd9\xe4\xa1\xb5\x32\x89\x3e\x31\xde\xa7\x2a\x5b\x15\x5a\xa6\xf2\x8f\xb0\x94\xad\x52\x2a\x57\x44\x30\xd5\x9c\x61\xb9\x1b\x84\x56\x05\x86\x43\x17\x1f\x05\x63\x9b\x68\xd3\xe1\x69\x55\x8d\x01\x02\xad\x71\x40\x13\x26\xe1\xb4\x80\xf3\x59\xc4\x2c\x12\x14\xbe\xe1\x48\x72\x04\xaa\x44\xb1\x01\x9d\x33\x06\x5f\xdb\xa7\x90\x0e\xf0\x50\xa8\x67\xf2\xa7\x1d\x94\x1a\xf9\xb3\xc2\x4d\xcb\x27\x23\xbd\x5a\x52\x5f\xd5\x6b\x2f\xf7\xff\x66\x80\xe7\xe5\x14\x68\x8d\x00\x9e\xb3\xc3\x93\xd9\x34\xb0\x4d\x8f\xbc\x6c\xdf\x00\x89\x22\xdb\x53\xa5\x73\xd1\x5a\x2c\xaa\x6e\x07\x87\x46\x0d\x6e\x63\x3c\xca\x0e\x0d\x10\xd9\xdc\x41\xeb\x00\xfd\xb3\xda\xb8\x67\x35\xf1\xce\x6a\xe5\x9c\x75\x88\xbe\x59\xad\x5c\xb3\x1a\x79\x66\xf9\x28\x99\x62\xda\x5e\x51\x95\xf7\x3b\x30\x14\x1a\x00\x37\x1d\x55\xf7\xd8\x8c\x4c\xec\xb5\x24\x79\xbc\xc7\xa1\x21\x90\x03\xd9\x78\x3c\x6f\x33\xd2\x8c\x22\x9d\xab\xb8\xa3\x98\xf8\x98\xae\xe2\x2d\xef\xb4\x97\xe8\xdb\x0c\xb2\x2e\x45\xda\x0a\x64\xd5\xe9\x20\x41\xbe\x6a\x4c\x99\x79\xdb\xbd\x04\x71\xcd\x98\x1c\xbc\xa6\xe3\x05\x57\x9b\xd1\xa5\x52\x11\x76\x11\x63\x34\xa9\x4b\x62\x33\x9b\x87\x2c\xe8\xce\xd0\x8a\x9b\xa2\x51\xd9\xf0\x0e\xb2\xf4\x4b\x69\x24\x74\xb9\xf0\xf0\x06\xc5\x30\x11\x7f\xfd\x15\xa3\xcb\x37\x28\x16\x2e\x8a\x41\x7d\x59\xba\xae\x06\x45\x54\xa6\xab\x4a\xe4\x9f\x89\x46\xd5\x49\xfc\xe9\x86\x24\xfe\xd9\xf8\x2a\x75\x32\xb4\x89\x8b\xf6\x2a\x8b\xbf\x59\xb0\xb1\x20\x00\xca\x02\x75\x0b\xe2\x4d\x69\x44\x82\x5f\xb1\xad\x72\xec\xaa\x82\xb8\xfa\x8f\x73\x19\xc1\x05\x19\x48\xaf\x83\x30\x7c\x89\x13\x46\xa3\x85\xdd\xb6\x3f\x80\x89\xe3\xe3\x10\x33\xac\x8a\xf7\x9a\x3d\x0b\xf9\x5b\x13\x99\xa3\x95\x37\xca\x0a\xc8\x65\x08\xc5\x84\xd1\x00\x17\x0a\x49\x62\xf7\xa9\x10\x66\x19\x24\x43\x17\x43\xea\x86\x3a\xc9\x6b\xe6\x03\x4b\x8f\x8f\x07\x8e\xe3\xe8\xac\x3a\xc4\x49\xe2\x30\x60\xb6\xd5\xb1\x00\x18\x8a\xda\xbd\xd8\x7d\x4a\x1d\x8a\x67\xd1\x95\xc0\x0e\xff\x38\x48\x01\x24\xc7\xc7\x76\xe2\x24\x6a\x3e\x90\x00\xc8\xc7\x29\xcd\x85\x80\xe1\xca\x64\x08\xa4\x7c\x32\x48\x4d\x86\xe8\xc9\xb8\xae\x8b\x8e\x8f\x6d\x24\x36\x71\x76\xba\xed\x0b\xcc\x00\x0c\xc5\x87\x08\x44\x40\x7e\x46\x4f\x97\x56\x4e\x77\x29\xc6\x72\xbc\x68\x4e\x98\x8d\xc1\xf1\xb1\x48\xc3\xca\x51\x29\xf2\xde\xeb\x5f\x12\xd9\xe2\xc0\xf3\x31\xc3\x6c\xd6\xc6\xa4\x99\x39\x69\x06\x91\x6b\xf1\x83\x6f\x1d\x49\x85\x96\xe5\xba\x2e\x79\x86\x5c\xd2\x27\x8e\xa8\x6e\x9f\xfc\x35\x60\x53\x5b\x96\x95\xb7\x80\x80\x46\xfc\xb0\xe4\x27\xa8\x4c\x75\x5e\x1a\x3f\x18\xdb\x3d\xd7\x75\xa9\x9a\x30\x03\x40\xa7\x3e\x47\x2a\xf5\xb9\xfc\x58\x1f\x4b\xad\xd8\xeb\x20\x61\x7a\x41\x18\x48\x69\xb6\x79\x00\x3c\x15\xe3\x24\xc1\xaf\xf8\xf8\x38\xd4\xcf\x09\x48\x71\x98\xe0\xce\xe6\x41\x91\xef\xf3\x11\x39\x4e\x60\x98\xa6\x30\x72\xa9\x51\x07\x62\x6e\x9e\x69\xcf\x1d\x90\x21\xf4\x77\x2b\x04\x11\x97\x0b\x41\xf8\x35\x85\x20\xe2\x01\x1e\xba\xbe\x2a\x04\x11\x17\x0b\x41\x98\x3f\x61\x5c\x2e\x04\x11\xd7\x16\x82\x88\x6f\x6f\xe3\x72\x21\x88\xb8\x58\x08\x22\x76\xbd\xf6\x85\x20\x22\x38\xcf\x0a\x41\xc4\x00\xce\x0c\x87\xf3\xb8\x54\xa6\x21\x56\x85\x20\x0a\xcf\x9f\xc5\xab\x94\x6a\x96\x15\x82\x88\xd7\x17\x82\x28\x7f\xa1\x9a\xd8\xf2\x29\xc6\x1c\x3c\x75\x20\xdc\x18\x52\x59\x08\x42\x94\x80\x80\x3e\x9c\xc1\xd8\x70\x1b\x0a\x36\x5d\x8a\xb3\x6e\x5e\x7c\xff\x1e\xf3\x30\xc9\x5b\x8a\x35\x55\xe1\x71\x32\xb3\x1c\xd3\x68\xd6\xa7\xa9\xcb\x8e\x82\xb1\x6d\xe9\xf9\x58\xae\xcb\xf7\x74\x34\xee\x10\xa0\x6b\x05\xc8\xa3\x2e\x2a\x8d\xaa\x44\xe8\x13\xcc\x7e\x8c\xe6\xc4\x0f\xc8\xe4\x85\x48\xde\xfb\x01\x7b\xcc\x06\x85\x1a\xa4\x34\xd7\x0a\xd2\xda\x0e\xcc\xb9\x71\x99\x2c\x4a\x0e\x99\xb3\x70\x99\xb3\xe8\x62\x67\x91\x69\xff\xc4\xa9\x4b\x37\xe6\x5a\xcf\x10\x4e\xa3\xb8\xad\x40\xc3\xbb\xec\x25\xf3\xb6\x01\xd4\x39\x15\xb6\xb8\x2e\x5f\xc7\xfd\xa8\x7e\xc4\xf0\x2c\x8e\x28\x0a\x6b\x2b\x20\x6d\x60\x9c\x36\x55\x3f\xca\xc6\x3f\x88\xf2\x47\x95\xc7\x2e\x4b\x22\xcf\xf9\x1e\x0d\x8f\xa3\xd7\xf2\x27\x1a\xcd\x44\x21\xc6\xd5\x42\x43\x39\xec\xdf\x2a\x0d\x7d\xab\x34\xa4\x89\x40\xfb\xec\x0a\x07\x9c\x5c\x41\xc2\x15\x47\xd7\x98\x76\x13\x1c\x62\x8f\x75\x83\xa4\x3b\xa1\xd1\xbc\x92\xe6\x9b\x0d\x1b\x8d\xb1\x97\x28\xa9\x1f\x53\x80\xf2\x9e\x43\x72\x21\x00\x79\x95\xfc\x49\xa2\xa2\xe1\x37\x6a\xfa\x6f\xb9\x0c\xf2\x2f\x5c\x19\x9b\xd6\x62\x25\xb2\x61\x0e\x7e\x31\x2e\x32\x84\x6c\xbd\x1e\x7a\x88\xcd\x4b\x42\x92\x39\xc5\xdd\x04\x8d\xb1\x64\x75\xc8\x0a\x51\xf8\x23\x9e\x8d\x68\x14\xf8\x98\x0a\x07\xfd\x7d\xc2\xef\xb9\x98\xfd\x05\x1a\xe3\x17\x7a\xee\x92\x51\x68\x00\xb7\x90\x4b\x5b\x72\x7c\xba\xd7\x1e\xa1\xa0\xd1\x16\xd3\xc0\x36\xdd\x4f\xb2\x7d\x03\x24\xae\xcb\x8c\xff\x15\xd9\x47\x3e\x91\x7b\xe2\x1c\x05\x8c\x87\xc9\x34\x42\xaa\xc2\x58\xb2\xb8\x6b\xce\x3a\x62\x72\xe5\x5c\x21\x6a\x93\xbc\xe4\xce\x3c\x0c\x1f\xb8\xe8\x19\xea\xd3\x2a\xfe\x51\x60\xe0\x1b\xeb\xf8\x2f\xc6\x3a\xae\xf1\xf8\xc7\xff\x68\x9e\xb1\x01\xff\x63\x8e\xf6\xea\xca\x68\x44\x2f\xc5\xa4\x1b\x53\x4b\xde\x7a\x33\xad\xbc\xa9\x64\x35\x2b\x8d\x42\x15\xc9\x18\xf6\x1e\x65\x37\x2d\xd8\xc7\x9b\x06\xac\xe2\x4d\x3c\xeb\xb5\x41\xd8\xac\x77\x80\x28\xe3\x20\x36\x47\xda\xac\xb7\x11\x6d\x32\x0f\x7f\x77\x54\xed\x03\x5b\xcf\xd8\xe4\xfd\xf6\x12\x89\x4d\x80\xde\x0a\xe2\xc3\x04\x97\xf8\xdb\xac\xb0\xec\x75\x90\x00\xdf\x60\xbf\x3b\xa1\x81\xdf\x0d\xd1\x22\x9a\xd7\xb8\x68\x6a\xff\xd4\x13\xd9\x28\x39\xe1\x3d\x7e\xc3\x40\x62\xc3\x0d\x35\x37\xbd\xe1\xc1\xe9\x10\xe2\x41\x6f\xd8\x2e\x8a\x78\x1c\x22\xc6\x30\xe9\xc6\x6a\xbe\x5f\xad\xb0\x6b\x0d\x7c\x1d\x6c\x0b\x57\x64\xce\x67\x52\x88\x86\x2e\xcb\x2d\xe7\x4e\x8c\x26\xb2\x74\x48\x96\x91\xc7\x89\xe7\xc9\xd4\x16\xd6\x3a\xf1\x12\x40\xea\x78\xd3\x20\xf4\x29\x26\xa6\xdd\x0e\xdb\x9c\xcb\x5c\x8a\x36\x7d\xe1\xae\x1b\x16\xd1\xb4\x41\x89\xaf\xd0\xd4\xf6\x68\xa8\x5e\x7b\x79\x34\xea\xc7\xcc\x80\x6d\x38\xa6\x6a\xbf\xf9\xb8\x85\x51\x54\x49\x4d\x2b\xaf\x5e\xd9\xfa\xe0\x50\x27\x40\x6c\x8c\xb8\x28\xda\xac\x51\x90\x45\x53\xba\x75\x9e\x4e\x01\x61\x61\x65\xdb\xbd\x44\x5d\x23\x50\x67\x38\x49\xd0\xa4\x31\xb4\xba\xf9\xe1\x02\x2c\xcb\xc4\x34\x85\x57\xb5\x3e\x5c\x70\x29\x0e\x11\x0b\xae\x1a\x2f\x70\xd6\xfe\x70\x41\x4e\xa6\x11\x65\x5d\x16\xcc\xee\xb7\x5e\x62\x83\x1b\x56\xe7\xdb\x13\x1a\x34\x88\xe0\x40\xc4\xce\x20\xf7\x0d\x62\x53\x49\x91\xec\xf0\xa4\x87\x1f\x73\x71\xde\x78\x86\x4e\xbe\x3f\x05\x10\xfd\xbb\xfb\xfd\x29\x24\xe6\x0b\x2a\x5e\x50\xf1\x82\x99\x2f\xc8\xc9\xd9\x77\x00\x92\x7f\x77\xcf\xbe\x53\x77\x78\xe2\x32\x18\xb8\x04\x46\x2e\x85\x73\x17\x1d\x29\x27\x97\x07\xa7\xd2\xcb\x45\xa8\x36\x92\xbe\x42\x71\xf2\xc8\xf2\xad\xa3\xec\x79\xa0\x9f\x07\x8f\xac\xa9\xf1\x3c\xd2\xcf\xa3\x47\xd6\xcc\x3a\x52\xf8\xd0\x0f\xe7\x8f\xac\xc4\x4a\xdb\x5d\xf5\x72\xc1\xca\x4b\xb5\x6e\x7f\x8a\xb6\x87\xb8\x37\x69\x34\xeb\x6e\xa7\xb0\x2e\x74\xdd\x4b\xd0\xd7\x5c\xd2\x34\x9a\x9d\xb7\xd4\x5c\x1b\x7d\x9a\xa0\x75\x5e\x9d\x11\xb1\x9a\xd1\x91\xcd\x0f\x0f\x89\xf3\x16\xb9\x10\x65\xf3\x8d\xa8\x9b\x78\xcd\xf1\xc6\xdb\x1e\x18\xd2\x04\x78\x0d\xc7\x9b\x78\x0d\xd0\x45\xa3\x79\xdc\x5e\x64\xcf\xba\xed\x25\xfa\x36\x80\x5c\x29\xa4\x57\xeb\x88\x27\x7b\xea\x53\xb0\x66\x83\x34\x1f\x6e\xd2\x04\x57\x95\x57\x58\x1d\xb2\xf6\xf4\x0e\x5b\x87\xad\xe6\x01\x48\x93\x06\x21\x97\x53\x94\x74\x09\xbe\x69\x1b\xa9\x9b\x75\x3b\x30\xf4\x4d\x51\xf2\x56\x40\xdb\x70\x4c\xd5\xbe\x11\x1a\x63\x8a\xaf\x82\x68\xde\x96\xad\x28\x74\x3d\x3c\x74\xbe\xcf\xa0\x6e\x8e\x52\xdd\x67\x33\x5a\x29\x1e\x77\x59\xb4\x3e\xc7\x21\x8d\xe6\x2c\x20\x93\x13\x46\x11\x91\x4e\xbe\x7c\x0a\x6b\x1a\x5e\x07\xa1\xef\x21\xea\x17\x9a\xf0\x97\x55\x15\x8c\x20\x95\x16\x6e\x04\x85\x7d\xef\x28\xd3\xda\x45\xfa\x3d\x44\xb2\x45\xe8\x2e\x53\xad\xa5\x33\x0d\xb3\xb4\xc6\x30\x1b\x0e\xf0\xd0\xa5\xca\x30\x1b\x16\x0d\xb3\xe6\x4f\x18\x96\x0d\xb3\x61\xad\x61\x36\xbc\xbd\x0d\xcb\x86\xd9\xb0\x68\x98\x0d\x5d\xd2\xc4\x30\x2b\x00\xd7\x41\x1c\x2a\x5b\xc2\xed\x2d\x49\x01\x0c\x01\x44\x86\x61\x36\x2c\x99\x4d\x43\x65\x98\x2d\x3c\x7f\x16\xae\x31\xb8\xc3\x70\xbd\x61\xb6\xfc\x85\x7a\x9f\x81\x50\x80\x27\x0c\xb3\xe1\x36\xc9\xc3\xb5\xbc\x84\x1d\xbe\xf3\x3e\x46\xc5\x48\xa6\x79\xa9\xe8\x12\x75\xc4\xa6\x49\x00\xf4\x8c\x5a\x55\x4a\x95\x5b\x95\xdc\xbd\x59\xc5\x29\x23\xb9\x3b\x76\xc2\x28\xba\x9c\xc7\xb6\x25\xb7\x67\x7f\x86\x02\x62\x01\x27\x54\xc5\x56\x60\x68\x34\xd1\xf9\x27\xd4\x4e\x06\xc2\xd1\x23\xc9\x56\xfb\x14\xc0\xc0\x4d\x9c\x64\x1a\x8c\x99\x0d\x64\xec\x84\xc8\x8d\x79\x7b\xbb\x4c\x8f\x2c\xc7\x72\x5d\x37\x38\x3e\xb6\x13\xb7\x98\xa3\x33\x74\x64\x12\x41\xf6\x81\x8f\x0b\x23\x88\x0b\x03\x81\x23\x46\x17\x7a\xa3\xcc\xed\x00\x88\x21\x12\x1d\xeb\x82\x75\x04\xcc\x89\x05\xe4\x33\xe2\x45\x3e\xfe\xf4\xe1\x55\xe6\x65\x04\x9c\x5f\xa2\x80\x88\x16\x00\x40\xa4\x50\x6f\x07\x30\x81\x11\x48\x3d\x91\x1f\xde\x03\x4b\x36\xa5\xd1\x75\x47\xf8\x24\x68\xe7\x13\xd7\x75\xcf\x29\x8d\xa4\x3b\x80\x52\x89\xb9\x5f\x1e\x2e\xb3\x1f\x69\xe7\xa7\x88\x76\xac\x87\x4b\x32\x38\x1d\xa6\xfd\x87\xcb\xff\xba\x78\xf7\xd6\x91\xa1\xc9\xc1\x78\x61\x6b\xdc\xf4\x00\x48\xad\x2f\x00\x7a\x69\x7a\x94\xad\xbd\x27\x10\xe8\xbb\x36\xaa\xf1\x94\xd1\x88\x86\xa1\x6a\xf0\x59\x96\x0e\x86\xc9\x7d\xc4\xab\xa9\xaf\x19\xd1\x6a\xc1\x5e\xf9\xcf\x98\xd1\x6a\xfc\xa5\x0d\x96\x02\x20\xd1\xb2\x04\x95\x70\x9e\x91\x00\x39\x11\x51\x98\xfc\x6b\x10\x86\x2f\x44\x76\x27\xcb\x68\x90\x3f\x2d\xb9\xe5\xa8\x2d\xe7\xd9\x59\xb2\x93\x77\xd7\x04\x53\x19\x7e\x06\x79\x93\xb4\x34\x00\x27\xba\x72\x60\xac\x47\xaa\x8c\x8c\xd3\x13\x1b\x8f\x9b\xce\x0c\x4a\x48\x0b\x63\xa5\x29\x0c\xdc\xc8\x4e\x0c\x07\xa0\x6c\x0d\x07\x68\x08\x77\xf1\xfe\x01\xb0\x6a\x60\x73\x9a\x83\x70\xa8\xaf\x6d\x89\x19\xbd\x37\x5e\xe2\xc4\xa3\x41\xcc\x77\xdf\xda\x11\x00\x34\x5e\x03\x98\x98\xea\x24\x7f\xc3\xad\xcd\x66\xa1\xf0\x82\x6c\x99\x1b\x20\xef\x77\x68\x6c\x10\x9b\x85\x17\x02\xde\xa6\x3c\x90\xea\xb0\x99\x01\x9a\xcf\x10\x69\x9f\x65\x21\xeb\x76\x68\x88\xcc\xc0\x6d\x8a\x48\xd5\x61\x33\x22\x17\x71\x75\xe2\xd8\x4a\x3d\x8b\x6c\x7d\x68\xc8\x93\x20\x36\xc5\x1c\x6f\xbd\x11\x6d\xc1\x6c\xde\x3c\x19\xa8\x68\x7c\x60\x48\x93\x00\x36\x1c\x90\x37\xde\x8c\x32\xd2\x36\x99\x07\xef\x71\x68\x68\x23\xcd\x93\x79\x04\xc4\xdb\x98\xf8\x58\x24\x25\x4b\x70\xeb\x8c\x61\x79\xbf\xbd\x44\xe0\xa6\x9d\x72\x15\x5d\xb6\x4d\x19\xa6\x3a\xed\x25\xb8\xeb\xf6\x8b\x04\xb5\xf1\x96\xe1\xcd\x37\x23\x30\xe9\x72\x8e\xbb\xda\xaa\x2a\x79\xad\x55\xfc\x65\x7d\x0e\x0d\x85\xc9\x73\x05\x6b\x53\x24\xaa\x0e\x8d\xd0\x28\xea\x84\x37\x56\x9c\x66\x3d\x0e\x0f\x87\x12\xd0\xe6\x28\xe4\xed\x9b\x60\x10\xcf\x62\xd6\x0e\x83\xb2\xc7\x5e\x62\x70\x33\xb4\xd2\xab\xbb\x0d\xb4\x87\xe8\xbc\x1e\x24\xe7\xad\xdc\xd7\x55\xfb\x26\x18\x9c\x52\x3c\x6e\x12\xf0\x03\x51\xae\x72\x0c\xbf\xa9\x1c\xff\x69\x55\x8e\x46\x70\x56\x52\x1f\x9c\x95\xa9\x9c\x48\x49\xe5\x74\x2f\x29\x92\x56\x55\x4e\xfb\x9b\x20\xe9\xbe\x55\x4e\x40\x65\x2a\x72\x1c\x67\x25\x83\x80\x1a\xd6\xd4\x93\xbe\x45\x33\x5c\xc8\xb9\x43\x92\x18\x79\xd8\xb1\xc0\xf1\x31\x2b\x26\xe3\xf1\xc4\x43\x9b\xb9\x59\x9b\x47\x4c\x6f\xc5\x07\xae\x0c\x34\x23\xf8\x86\x1d\x1f\x5b\x61\x84\xfc\x80\x4c\x2c\xf3\xf1\xb3\xec\x2f\x73\x58\x06\xfa\xe6\xd4\x34\x2f\x60\x4b\x00\xea\x55\x63\x7c\x1c\x17\x3b\x2c\x72\x08\x87\x80\xe2\x38\x44\x7c\xe3\x39\x01\xf1\xf1\x8d\x05\x2d\x4b\xa3\xf2\x2b\xe9\xd0\x90\x1b\xda\xb4\x52\x87\xc6\x76\xd5\xa1\x55\x0d\x5c\xd0\xa1\x91\xcd\x3a\xb4\xb5\x23\x00\x48\x4d\x1d\x5a\xa1\xc4\x68\xb2\xfe\x86\xf8\x25\xaa\xae\x90\xb9\x46\x32\x10\x5d\xf6\xf2\x82\x5d\x0f\x2a\xbf\xb1\x5a\x82\x2a\xba\xec\x25\xa8\xf5\x63\x4a\x30\x1b\x0e\xc8\x1b\x6f\x44\x5c\x88\x12\xb6\x86\x85\xc8\xd8\x06\x96\x51\x2f\x15\xc3\x5a\x72\x42\xb4\xa4\x16\x31\xcf\x39\x94\xf9\x12\x32\x27\x99\x8f\x12\x46\xed\x6e\x0f\xa4\xdb\xdc\x6e\x7c\x8a\x2e\x6b\x13\xf6\xc1\x5a\x44\x72\x84\xde\xac\xb1\x72\x8a\xb7\x3d\xb0\x1d\x23\xc0\x6b\x38\x5e\xe8\xcd\x36\xef\x17\x3c\x66\x5d\x46\x83\xd9\x7a\x7b\x7a\xde\xec\xb7\x2f\x1c\x98\x85\x5d\x4b\x40\x4b\xd5\x03\x21\x6d\x17\xf9\x13\x46\x93\x6e\xa5\xae\xa0\x7a\xc7\x88\xd6\x87\xb6\x67\xa2\xc9\x79\xf3\x4d\x13\x4d\xce\x37\xef\x9a\x68\xd2\x3b\x6d\x83\xb4\xde\xe9\x01\x22\x8d\x83\xd8\x1c\x6b\xbd\xd3\x46\x68\x6b\x1e\xa5\x2c\x5b\x1f\x20\xda\x9a\x47\x2a\x8b\xd6\x4d\xd0\xd6\xbc\x5a\x8a\x68\x7c\x78\x48\x6b\x5e\x2b\x85\x37\x6e\x80\xb2\x6b\x4c\xc5\x3d\xde\xce\x48\x98\xf7\x3b\x38\x14\x66\x00\x37\xc6\xa3\xea\xb1\x19\x99\x2d\x7c\x6d\xc3\x3d\xb5\x3a\xac\xc1\x5c\xf3\xe1\x1a\x30\xee\x61\x1b\x5f\xdb\xf0\xf0\x7c\x6d\xc3\x16\xbe\xb6\x61\x03\x5f\xdb\x19\xda\xc2\x71\x5d\x75\xda\x4b\xd4\x6d\x04\xb7\x3d\xac\x87\x09\xe8\x4d\xe3\x2b\x8b\xb7\xdd\x4b\x10\xeb\xc7\x14\xe0\x35\x1c\x6f\x86\x6e\x36\xa3\xab\x5a\xb3\x51\x8d\xae\x7d\x55\x69\xac\x41\x57\xd0\x3c\x8c\x7c\x16\x6c\x0e\x21\x9f\x6d\x99\xb1\x21\xef\xb7\x8f\x79\x1b\xda\x09\x6e\xb3\xa8\x79\x8c\x14\x6f\x7b\x68\x5b\x26\x6a\x1e\x23\x35\x8b\x36\xc7\x48\xcd\xe6\xd5\x6c\x4c\x35\xbe\xe6\x87\xc7\xc7\xcc\xda\x0c\x38\x6b\x42\xc3\xb7\x88\x81\x39\xc4\xf8\x17\xd2\x26\xf8\x85\x34\x89\x7c\x21\x51\xeb\x5c\xdf\xa2\xcb\xa1\x21\x4e\x80\xd9\x14\x71\x51\xb4\x59\xd2\x25\x11\xeb\xb6\xc9\xfe\x26\xdb\x1f\xa0\x11\x9d\x44\x4c\x58\xc5\xe5\x35\xd1\x02\x89\x66\xb7\x26\xe8\x6c\x85\xcb\x03\xc4\x62\x1b\xd4\x6d\xf4\xb8\x8b\xc4\x87\xba\xa8\x2d\xd5\xcb\xfb\x1d\x18\x02\xe5\xc4\x9f\x37\x1f\x54\x77\xd8\xb8\xf5\x22\x92\x17\x2b\xaa\x40\x66\x44\xca\xd9\xbf\xcd\x0e\x7b\x89\xc5\x8d\xf0\x5e\x07\xc4\x8f\xae\x1b\x43\xab\x9a\x1f\x24\xac\x4d\x81\x3c\x48\xe8\x62\x11\x2e\x59\xe9\xc9\xb5\x8e\x06\xe8\x6e\x7b\x09\xf2\x1a\x12\x90\x81\xdb\x94\x04\xa8\x0e\x9b\x11\x59\x99\xc9\xa8\xfa\xf2\x39\xbc\x14\x5f\x2d\xf2\x7b\x35\x48\xee\x15\xa3\x09\xee\xb2\x80\x85\x95\xda\xc3\xfc\x6d\x55\x87\x7b\x93\x64\x33\x44\x34\x17\x4a\x63\x4c\x3d\x4c\x18\x9f\x9c\x17\x85\xf3\x19\x49\xda\x09\xe8\xab\xfd\xf7\x51\x50\x17\x09\x16\x21\x1e\x9c\xb5\x14\xd9\x63\x4c\xc7\x11\xad\xb4\xcf\x7b\x11\x91\xae\x52\xde\x62\xa5\xf9\x5e\x9e\x8c\x0d\x90\x06\x31\xee\x4a\x37\xbc\x96\x74\xd4\xec\x79\xa0\x80\x6f\x01\xf1\x7e\x82\x5a\x3f\xa6\x04\xb3\xe1\x80\xbc\xf1\x66\xc4\x85\x73\x2a\x5c\xd1\xaa\xb3\x6d\x8d\x39\xa5\x88\xe8\x49\x18\x8c\x2a\xba\xec\x15\x09\x8c\xc2\xc0\x5b\x9c\xf8\x88\x21\x4e\xca\x70\xb1\xe4\xe8\x26\x7f\xa4\x0e\x5b\x0d\x91\xef\x55\x86\xc8\xf7\xcc\x10\xf9\x9e\x11\x22\xaf\x29\xdb\x04\x2b\x6a\x65\xbd\x34\xe6\x92\x65\xe5\x17\x5e\xfc\xda\x9b\xdf\x26\xe0\xf8\x98\x8f\x4f\xd4\x47\x9f\xad\x1d\xa3\x3f\x60\xce\x24\x8c\x46\x28\xbc\xbd\xb5\x9e\x87\xa1\x35\xdc\xca\xcd\x37\x1f\xf2\xfe\xfc\xa1\xd4\x72\x54\xd4\xe2\xc9\xdb\xce\x22\x1f\x87\xba\xe9\x6f\xed\xe1\x63\x38\xd2\x92\xaa\xda\x00\x3a\x95\xc2\x4a\xda\xbc\x7c\xc5\x08\xb4\x5e\xbd\xb4\x80\xeb\xba\xcc\x79\xf3\xfc\xed\xf3\x3f\x9d\xbf\x39\x7f\xfb\xf1\xf3\xab\x97\x7d\xea\x5a\x33\x44\xd0\x44\x56\x5a\x3a\x1a\x51\x8c\x2e\x45\x12\x3d\xcb\x7a\xe0\xba\x85\x11\x18\x9e\xc5\x21\x62\xd8\x02\xbc\x57\xe0\x63\xc2\x02\x16\xe0\x44\xf7\xca\x52\xec\xb9\x96\x40\x1c\x7f\xa5\x8b\xe3\xe1\x01\x1d\xca\x9c\xbc\x04\x40\x9c\x02\xb8\xcc\xbf\xda\x1f\x0c\x61\x3e\x1a\xff\xa5\xbb\xf7\x07\xc3\xb4\xe5\x85\x2a\x17\x57\xba\xe8\xdd\x6d\x46\x45\x3e\xe6\xbb\x71\xd5\xbe\x2c\x9e\x59\x79\xe6\x98\x2b\x4e\x89\x79\xf4\x98\x89\xc2\x95\xc5\xca\xbc\xea\x89\xf2\x2b\xb4\x68\x14\x62\x99\xd0\x50\x67\xad\xe8\x2a\x34\x2d\x2c\xb3\x9d\x84\xb9\xbb\xd2\x46\x76\x25\x91\xbf\xbe\x5f\xb1\x81\xec\x74\xaa\xfe\xeb\x56\xfc\x4f\xfd\xd7\xe3\x63\x15\x80\xe3\x3b\xac\x34\xb6\xb9\xb5\xb2\xed\x61\xb6\xb0\xd2\xf4\xae\x4e\x75\xa5\xa0\x5d\xa9\xcc\x8f\xf7\x55\xca\x5e\x73\xbd\x72\xf0\x9a\xde\xae\xd1\xf5\xe6\xcb\x75\xbb\x34\x4c\x87\x9a\x82\x29\x6e\x9b\x7f\x29\x6e\x9a\x7c\xe9\x1f\x73\x3c\x6f\xcb\xdf\xc9\x3e\x07\x86\x42\x05\x68\xc3\x11\x45\xeb\x8d\xc8\xa3\x88\xf8\x51\x73\xef\x64\xd5\xfc\xc0\x10\xa7\x81\x6c\x38\xa4\x6c\xde\x04\x75\xd5\x89\xb0\xd7\xec\x3b\xd9\xe7\xf0\xd0\x37\x69\xbe\xef\x44\xeb\xcd\xc8\x13\x4c\x54\x5b\xec\xc9\x4e\x7b\x89\xbe\x4d\xe0\x8e\x29\x4e\xa6\x32\xd8\x7b\x3f\xea\xa7\x19\x21\x7a\xf7\x50\x42\x4d\x47\x3f\x1d\x5c\x15\x35\xe5\xc0\x0f\xdc\xa7\x59\x3d\xea\xca\xc4\x4d\xcc\xad\x0b\xa9\x13\x11\x69\x5a\x5c\x28\x65\x46\xeb\x5b\x8f\x18\x70\xd4\x6e\xb0\x41\x5a\x55\x7b\x4d\xa3\xee\x5b\xf9\xb5\x7f\xb1\xf2\x6b\x6b\xe9\x87\xb0\x66\xb6\xf6\xca\xcc\xfb\x1d\x24\xd1\x24\x3e\xa6\xdd\x4c\x62\xfb\x3a\x64\x53\xe7\x34\x3c\x59\x2e\xed\xc1\xf3\xee\xdf\x51\xf7\x57\xe7\xb4\xfb\xfb\xcf\xdd\xe1\x23\x90\xa6\x27\x13\x41\x57\x43\xb8\x26\xf8\x59\xa6\x0e\xdc\x9a\xb4\x26\x1b\xab\x53\xca\xe1\x61\xb2\xa7\xb4\x35\xc9\x69\x2b\xb4\xf4\x32\x59\x0f\x74\xd4\x5e\x78\x7c\x6c\x87\xba\x2e\xa5\x00\xc5\xf1\x28\x46\x0c\x7f\xc0\x93\xf3\x9b\xf8\x5c\x3e\xb3\x11\x5c\x4d\xc1\x08\x1f\xf4\x40\x45\xac\xb3\xa9\x9f\x09\x45\x91\x22\x91\xd4\xce\xa4\xab\x91\x81\xb7\xb9\x20\xac\xde\x6e\x84\x75\x56\x26\xac\x5e\x0d\x61\x9d\x71\xc2\xea\x29\xc2\x3a\x2b\x12\x56\xf3\x27\x9c\x95\x09\xeb\xac\x96\xb0\xce\x6e\x6f\x67\x65\xc2\x3a\x2b\x12\xd6\x99\x3b\x6f\x4f\x58\x03\x91\x36\x53\x12\xd6\x19\x80\xbe\x41\x58\x67\x25\xb2\x37\x53\x84\xb5\xf0\xfc\xd9\x6c\x75\x37\xf8\x19\x61\x9d\xad\x27\xac\xe5\x2f\x54\x6f\x68\x3e\xc5\x19\x07\x4f\x13\xd6\x99\x26\xac\x8a\xa8\x42\x1f\xce\x9a\xc7\x2f\x53\x1c\xe3\xd6\xbe\x25\xaa\xd3\x5e\x92\xd4\x35\x6c\xbc\x02\xb5\x29\x1f\x2f\x9a\x37\x20\xd2\x62\x6f\xb5\xc6\xa0\xec\xb5\x97\x28\xdc\x00\x70\x30\x99\x36\x09\x4f\x35\xda\xfd\xb3\xc5\xa7\xd2\x28\x62\xdd\x39\xad\x74\xc7\xa8\x49\x67\x95\x75\xd9\xcb\x15\x5f\x73\x68\xa2\x88\x7d\xa2\xcd\x3d\x31\x54\xfb\xcd\xbb\xa8\x55\x1d\x92\x83\x2c\x43\xd2\xae\x0a\x49\xb3\x22\x24\x62\x77\xad\x31\x62\x9b\xef\xcb\xae\x4f\x85\xbe\x7b\x89\xcb\xf5\x9e\x90\x72\xfe\x33\xc4\xbc\xe9\x9e\x14\xaa\x1a\x30\x23\x4b\xc3\xc0\x7a\x4f\x71\x22\x7c\x0b\xad\xf3\x1b\xe4\xf1\x7f\xdf\x53\x3c\x0e\x6e\x2c\x68\x5d\xcc\xc7\xf2\x8f\x0f\x78\x82\x6f\xac\xa1\x33\x0e\x88\x6f\x63\xf7\x69\x9e\x3e\x66\x80\x87\x40\xe5\x79\xd0\x03\x29\x43\x85\xcd\x9c\x57\xe4\x0a\x53\xf6\xcc\x7a\xfb\xee\x63\xc7\xea\x5b\x16\x78\x64\xc5\xaa\x91\x34\x97\xc8\x2f\xaa\x0e\x5f\x1e\x2e\x57\xbb\xa4\x98\x37\x09\x17\x1d\x81\xc1\x80\x4c\x3a\x16\x6f\x26\x3a\xa6\xd6\x97\x23\xfd\x65\x3e\xcf\xb5\xe3\xc4\xa2\x0d\xf6\x3b\xa3\x85\x1c\x42\x76\xca\xc6\x50\xb0\xae\x1d\x23\x11\x6d\x8c\x31\x64\xa7\x6c\x0c\x89\xa6\xb5\x43\x64\x60\xb0\x29\xee\x50\xde\x5e\x8e\x24\xba\xa6\xd6\x17\x65\xf7\xb3\xac\x56\x25\xb6\xe4\x26\x93\x09\xd7\x5b\x91\x77\xa3\xdb\x5e\x9e\xad\xb5\x74\x8a\xe1\xf7\x0a\xe2\xe6\xd4\x4a\xf7\xd9\x48\xb3\x94\x5c\x78\xc2\x85\x40\x4a\x50\xd8\x4d\xa2\x39\xf5\xd6\x89\xb3\xa6\x35\x53\x55\xf6\xaf\xf0\x20\x38\x57\xe3\x5d\x88\xe1\x12\x67\x1c\xd0\x84\x49\x28\x2d\x70\x44\x6e\x6f\xed\xd5\x3e\x6f\x30\x43\x4e\x79\x22\x00\x28\xa1\x57\x33\xe5\xc2\x48\x2d\xb7\xf9\x33\xcb\xea\xeb\xbf\x8f\x82\xb1\x4d\x8e\x8f\x07\xd6\x95\x5c\x03\xeb\x72\x3e\xc2\x94\x60\x86\xf9\xfe\x60\x98\x52\x24\x5d\xa9\x2c\x12\xcd\x50\x5e\xb6\xc2\x82\x16\xba\x4e\xac\xa1\x13\x10\x2f\x9c\xfb\x38\xb1\x09\x00\xd9\xd6\xa6\xe9\xc3\x25\x49\xbf\x6c\xe3\xac\xa0\x30\x5b\x44\xc4\xfd\xb9\x2d\xe8\x85\x9c\x62\x14\xb2\x69\x37\xf7\x8b\xdb\x2b\x72\xac\x1d\x4e\x98\xf3\x62\x8a\xbd\xcb\xe4\x05\x0d\x58\xe0\xa1\xf0\x91\x7e\xf0\x1e\x25\x49\x40\x26\xd9\xef\xbf\x22\x4a\x02\x32\xd1\x02\xb4\x30\x80\xf3\x65\x5f\xc6\xb2\x61\x5f\x14\x0e\x14\xf7\xb3\x5d\x1a\xe3\x84\xfc\x47\xef\xf4\x14\xc0\x6b\x39\x44\x55\x4b\x35\xba\x6e\xe9\xa9\xd9\x54\x35\xd5\x33\x55\x6d\xdb\xd5\x06\xd4\x8b\x13\x10\x86\x89\xb8\xfe\x63\x4c\x67\x41\x92\x04\x11\x59\xe7\xed\xf3\x5b\x2e\xd0\x2b\x3d\x57\xe7\x67\x94\xbc\xcf\xa7\x0b\x69\xe1\xe5\xf3\x30\x8c\xae\xb1\x0f\x91\x6b\x25\x31\xf6\x82\x71\xe0\x75\x33\x30\x2d\x71\x58\xe5\xd6\x3f\x3e\x7e\xc0\x9c\x8f\x14\x91\x24\x46\x14\x13\xf6\x9e\x46\x37\x8b\x15\x37\x87\xcc\xfb\x00\xf1\x71\xe5\xfd\xf9\x80\x1e\x1f\x3f\xc8\x5e\xf8\x98\x28\x37\x84\x0e\x3d\x3e\x46\xfa\x31\x89\x58\x57\xe2\xc9\x5f\xf1\x25\x90\x63\xb5\x5d\xb2\x4a\xc1\x3b\xc1\xac\xcc\xba\xf1\x96\x7b\x79\xab\x6c\x00\x70\x3a\x1f\x8f\xab\xdd\x87\xd7\xc8\xc6\xba\xd7\x5e\x02\x5c\x3f\x66\x06\x6c\xc3\x31\x55\xfb\xcd\x48\x0c\x26\xcd\xe3\xb0\x45\xe3\x43\x43\x9c\x00\xb0\x29\xd6\x82\xc9\xe6\x50\xec\xa4\x45\xe4\x7a\x72\x78\x91\xeb\x49\x8b\xc8\xf5\xa4\x41\xe4\x3a\xbf\xc9\xe6\x21\xa2\xad\x1c\x5d\xcd\x4e\xfb\xe4\xea\x2a\x74\xbe\x6d\x29\x8e\xe8\xb3\x97\xbb\x60\x13\xb0\xf3\x49\x30\x5e\x6c\x95\x5c\xd0\x54\x74\x8a\xdc\xa1\x27\x9d\x93\x09\xb4\xba\x16\x70\x58\xf4\x3a\xba\xc6\xf4\x05\x4a\xb0\x0d\xb6\x62\x4c\xe5\xbc\xee\x91\x15\x8d\xe8\x16\xd6\x40\xdd\xeb\x10\x57\x3a\x0e\x83\xf6\x49\x24\x21\x71\x2d\x58\x5c\x6d\x59\xe6\x8b\x6c\xb7\xac\xbc\xef\x3d\x2e\xea\x3f\x68\xf3\x74\x08\xa2\xf1\x5e\x2e\xe4\x1a\xc2\x2d\x00\x6c\x4a\xb9\xff\x41\x1b\x6c\x0b\x86\xb4\x4e\x0c\xaf\xe3\xf2\xbf\xa2\x5f\x8d\x98\xd2\x7d\xb9\xd5\xc8\xc1\x0f\xcf\xab\x46\xd8\x21\x20\x2d\x27\xa4\x16\xe0\x38\x6a\xf9\xa4\x1d\xa2\xc2\x21\x46\x01\xfd\xcd\x1f\xe6\x9b\x3f\x4c\x7e\xee\x45\xaa\x40\x6f\x8a\x68\x4d\x6a\x00\xd5\x62\x4c\x92\xba\x4e\x87\x46\x3c\xc5\xec\x5f\x4c\x11\x6d\x91\x1b\xc0\xec\xd4\x80\x98\xe6\xf8\xf1\x22\x1f\x6f\x87\x59\xdd\xf3\x60\xd1\xfb\x22\xf2\xf1\x56\x28\x96\x1d\x1b\xa3\x99\xe3\x29\x8e\x02\x52\x97\xdc\x62\x0d\x9e\x0b\x5d\x0f\x13\xd1\x91\x8f\xdf\x73\x08\xda\x63\x3a\xef\xd9\x1c\xd5\xc4\x6b\x8f\x63\xd1\xe7\x40\x91\x2b\xe1\x6d\x89\x57\xde\xa9\x29\x4a\x39\x4b\xd3\xbd\x0e\xd8\xb4\x1d\x56\xf3\x6e\x07\x89\xd8\x73\xe2\x8b\xb2\x15\x2d\x51\xab\xbb\x35\x46\xee\x3f\xe6\x28\xac\x34\xbf\xad\xc1\xac\xec\x73\x98\x68\x55\xf0\xb6\x43\xaa\xe8\xd4\x14\xa5\x63\x1a\xcd\xf2\xfb\xa9\x1d\x6a\x4b\x7d\x0f\x12\xc5\x3f\xd1\x68\xa6\xef\xa8\x96\x88\x36\xbb\xb6\x43\x77\x76\x4d\x6d\x83\xef\xbc\xf3\xe1\x22\x5c\x5f\x55\xdb\x60\x5c\xf7\x6d\x8a\xf2\xca\x6a\xc6\x6d\xb5\x61\x52\x48\xbd\x10\x23\x66\xd5\x7f\x6d\xb6\x9d\xb6\x44\x8c\xf2\xb3\x1a\xe4\x1e\xd5\x26\x12\x7e\x6d\x5c\x6e\xb7\xd7\xb2\x5e\x07\xb9\xc9\x5e\x65\x30\xb7\xda\x5f\xba\x5b\xd3\xad\x25\x6a\x2a\x75\x8b\xd1\xdc\x4d\x50\xab\x7a\x1d\x28\x6a\x7d\x7c\xf3\x6e\xdc\x1a\xb3\xa2\x57\x53\xc4\x86\x28\x61\x5b\x62\xb7\xd8\xf5\x20\x51\xfc\x1a\x25\x6c\x3b\x34\x1b\x3d\x9b\xa2\x3a\x4b\x4b\xd9\x92\x40\x18\xfd\x0e\x12\xc9\x6f\x55\x7a\xca\xb6\x34\x22\xeb\xd7\x14\xc1\x31\xf2\x39\x7b\xdf\x0e\xbb\xba\xd3\x41\xa2\xf6\x3d\xf2\xcf\x5b\x78\xb8\x9a\x9d\x36\x3a\x7b\x1a\xf8\x11\xd5\xf2\xda\xa3\x55\x76\x3b\x54\xc4\x5e\x48\xa0\xdb\xa2\x56\x74\x6b\xba\x63\xeb\x63\x3f\xea\x31\x7b\x98\xa1\x1f\x72\xf2\x1f\xda\x05\x80\x98\x9d\x5a\xa0\x34\x44\x1e\xee\xa2\xb0\x32\x38\x60\x2d\x5e\xb3\x8e\x87\x8a\x5c\x0e\xc0\xf3\xb0\x79\xac\x40\xb9\x63\x4b\x24\x6f\x85\xe0\x83\x46\xee\x76\x98\x6d\x8a\xd6\x5a\xcf\x89\x7a\xa4\xee\xb1\xe3\xc4\x26\x94\x5e\x48\x68\x5b\x21\x54\xf4\x69\x8c\xce\xb2\xc5\xbe\x01\x3a\x45\x97\xc3\x44\xa7\x84\xb6\x1d\x3a\x79\x9f\xc6\xe8\x14\x35\x73\xb7\x50\xb9\x9a\x1d\x0f\x13\xb5\x59\xb5\xe0\xb6\xf8\xcd\x3a\x36\x46\xb2\xa8\x22\x1a\x90\x49\x4b\x14\x67\xdd\x0e\x13\xc1\x39\xd4\xed\xf0\xab\xfb\x35\x45\x2f\x8b\xba\x1e\x9a\xe1\xb0\x5b\x57\x05\xae\x1e\xc5\xc5\xae\x07\x89\xe6\x8f\xd1\x0b\x0e\xc1\x8b\x36\x05\xe1\x56\x7a\xb6\x40\xf5\x25\x1e\xa1\xd1\x76\xa8\x36\xba\x1e\x28\xaa\xff\xcc\x21\xd8\x0a\xd5\x59\xcf\x16\xa8\x16\x75\xfb\xb6\x43\xb5\xd1\xf5\x40\x51\x9d\xf9\x4a\xb6\x46\x75\xd6\xb3\x05\xaa\x63\x94\x78\x68\x4b\x0a\x62\xf6\x3d\x50\x64\xbf\x17\x20\x6c\x85\xed\xbc\x6b\x0b\x74\x27\x98\x30\x4c\x3c\xbc\x1d\xc2\x8b\xbd\x0f\x14\xe5\x17\x0a\x88\xad\x90\x6e\x76\x6e\x83\x76\x82\x2e\xb7\xc5\x79\xde\xf5\x50\x11\xce\x21\xd8\x0e\xdb\xba\x67\x0b\x54\x8b\x84\xfd\xdb\xa1\xda\xe8\x7a\xa0\xa8\xfe\xc8\x21\xd8\x0a\xd5\x59\xcf\x16\xa8\x9e\xc7\xf1\xb6\xd7\xa4\xd1\xf5\x40\x51\xfd\x89\x43\xb0\x15\xaa\xb3\x9e\x8d\x51\x4d\x83\x59\x7b\x5d\x7c\xd6\xeb\x30\x11\x4c\x83\x59\x7b\x6d\xbc\xea\xd5\x0a\xb1\x5b\xe8\xe3\x8d\x7e\x07\x8b\xdc\x6d\x34\xf2\x59\xbf\x36\x08\x6e\x8f\xda\xc3\x45\xea\x16\xf8\xdc\x8c\xca\xf9\xa8\x79\x14\xc9\x7c\x74\x70\xc8\xe3\xe0\x35\xc5\xda\x7c\xd4\x04\x5d\x09\xa3\x7b\x13\x21\x2e\xa3\x96\x4e\x8b\xb1\x12\x8e\x9c\x64\x45\xa6\xa6\x4d\x21\xd6\x57\x93\xae\x37\xa7\x57\x7b\x90\xa2\x20\x0b\x03\xc9\x63\xe0\xa9\xcb\x9c\x84\x7a\xb7\xb7\xcb\x9b\xfe\x29\x5c\xf4\x4f\x53\x88\x5c\x26\xd2\xfc\xdf\xde\x5a\xde\x7c\x14\x78\x96\x4c\xb7\xe8\x0e\x08\x5c\xde\xf4\x6d\xea\xdc\x3c\x22\xce\x0d\x38\x39\x83\x8b\x3e\x75\x16\xe9\x50\xe1\x48\xb5\x76\x5d\x17\x1d\x1f\x87\xb2\xce\xc1\xf2\xa6\x1f\x0e\x7a\x43\xe7\x06\x2e\xfa\xc4\x59\xa4\x00\x7e\x79\xb8\x4c\x5c\x0a\xbf\xfc\x2f\xe9\x74\x3a\x9d\x37\x9d\x87\xcb\xc4\xb9\x49\xc5\x3f\x8b\x94\x3f\xfc\x92\x3e\x5c\x1a\x1b\x49\x67\x80\x1d\x98\xf1\x38\xfa\x93\x5f\x1e\x2e\x57\xca\x82\x9c\x3d\xb3\x5e\x58\x7d\xeb\xbf\x2d\x3e\x28\x76\xa4\x13\xb1\x8d\x9d\x64\x1a\x8c\x99\x0d\x80\x33\x43\xb1\x8d\xdd\xa7\x0a\xe7\x02\xa9\x89\x8d\x81\xf3\x4b\x14\x10\xdb\xea\x58\x40\xff\x09\x2d\x90\x7e\x49\x6d\xc7\x71\x42\x90\x7e\x11\x28\x4e\x5a\x2d\x7d\xe5\x15\x15\x10\x16\x1a\x2d\xf6\xf2\xe8\x6f\x00\x0b\x5d\xb6\x0d\x6f\x15\x5d\x0e\x12\xd4\xe6\x61\xdc\xbc\xed\x5e\x82\x58\x3f\xa6\x00\xaf\xe1\x78\x0c\x6d\x0e\xe3\x66\x88\x54\x9a\x46\xea\xf0\x75\x70\xe6\x10\x09\x60\x73\x8c\x6d\x36\x7b\x30\x94\x5c\x36\xad\x7c\x26\xda\xee\x25\xc6\x36\xc0\xc8\x05\xd5\x9a\xd0\x7e\x2f\x0c\x34\x6b\xb9\xb2\x41\x74\xb7\xbd\x04\x79\xcd\x26\xc9\xc0\x6d\xba\x51\x54\x87\xcd\x88\x8c\x9a\xa7\xaf\x87\x08\x86\x79\x51\x9e\xc4\x96\xd1\xad\x14\x2c\xc9\x3e\x85\xab\x52\x23\x5c\x35\x9b\x6c\xa0\x27\x0b\x91\x04\x28\x74\x97\xa9\xe6\xc4\xcc\xc8\x51\x5a\x13\x39\x1a\x0e\xf0\xd0\xa5\x2a\x72\x34\x2c\x46\x8e\x9a\x3f\x61\x58\x8e\x1c\x0d\x6b\x23\x47\xc3\xdb\xdb\xb0\x1c\x39\x1a\x16\x23\x47\x43\x97\x34\x89\x1c\x15\xab\xa0\xa0\xa1\x12\x54\x70\x7b\x4b\x52\x00\x43\x00\x91\x11\x39\x1a\x96\xe2\x3a\x43\x15\x39\x5a\x78\xfe\x2c\x5c\x13\x04\x0c\xc3\xf5\x91\xa3\xe5\x2f\xd4\x6f\x8c\x50\x80\x27\x22\x47\xc3\xad\xaa\x9a\xad\x46\x70\x47\x8d\x2a\x23\xd4\x25\xf8\xbe\xb2\x44\x0c\x6b\xd3\x00\xef\xaa\xa0\xee\x44\x14\x12\x80\x79\xa5\x04\x28\x0b\x0b\xe8\xe7\xfc\x23\x30\x94\x0f\x57\x52\x5e\x97\x03\xa9\x55\x19\x02\x8a\xbd\x68\x42\x82\x5f\xb1\xfd\xe5\xe1\x52\x65\xd8\xbe\x72\xae\x10\xb5\x65\x22\xd3\x0f\xaf\x2d\x90\x3e\x5c\xb2\xf4\x0b\x10\x55\x0a\x52\xce\x70\x07\x36\x35\xe2\xad\xb3\xf9\x0c\xd8\x10\xee\x12\x6a\xcd\x97\xac\x34\xb4\x00\x69\x40\x76\x1d\x97\x9a\x5c\x70\xb4\x89\x68\x4d\x26\xe1\x96\x65\x2f\x8b\x7d\xf7\xf2\x1e\x58\xef\x44\x2a\x01\xd8\x0a\xea\xfd\x04\x77\xcd\xb5\xa7\x40\x6d\x7a\xe9\x89\xe6\x0d\xae\xbc\x4b\x4c\x4e\x82\xa4\x8b\x48\x44\x16\xb3\x52\xb5\xae\xdd\xe5\xe8\x20\x79\xae\x07\xde\x5c\xd5\x4e\x09\xba\x0d\x0a\xc3\x9d\x15\x0b\xc3\xc9\xd4\x8f\xcf\x3d\x0f\x27\x49\x44\x5f\xbd\xb4\xc0\x1d\x55\x7c\xcb\xd0\x13\xe2\x09\xf2\xd6\xa5\xe1\xd9\x0a\x37\xaf\xc5\xa8\x2e\xa9\xab\xd1\xc0\x5c\xf3\x13\xfa\x99\x01\x37\xb4\x3e\xcc\x43\x9c\x58\x40\x64\xae\x9c\x87\xe1\x03\x97\x01\x9d\x16\xf5\x81\xeb\x32\x87\xd1\x60\x66\x83\xaa\x22\x9d\xd0\x92\x9f\xcf\x8b\x73\x66\x37\x23\x39\x3e\x26\x69\xbe\x38\xc6\xd7\x89\x28\x39\xb8\xda\x41\x17\xf0\x24\x32\xef\x6d\x55\x45\x63\xbe\xc4\x29\x00\x7d\x91\x9b\x86\x2f\x0f\xad\x5c\x1e\x62\x2e\x0f\xdd\xb0\x3c\x14\x91\x24\xe0\xdf\xe9\xb2\xa8\x45\x32\xd7\x62\xbf\x43\x23\x04\xd9\xe4\x3f\x46\xcd\xc9\x81\xd1\x69\x33\x51\xa8\xd1\x51\xaf\x13\x26\x0e\x50\x49\xcd\xda\xa8\xa7\x59\x13\xc5\x34\xa3\x73\xe2\x35\x97\xd0\x45\xeb\x83\x43\x9a\x00\xb1\x31\xd6\xe6\xc4\x6b\x86\xb6\x52\xfd\x9b\x46\x7b\x4e\x75\x3b\x44\x14\x0a\x70\xdb\x60\x11\xb1\x06\xb7\xf9\x35\xc6\x65\x52\xf8\xdb\xe5\x89\x62\x81\x77\x79\x7f\xf5\xd7\xd4\xe8\xff\x34\x99\xa2\x24\x3c\x8e\x58\xc2\x8f\x51\x6d\xaa\x28\x0d\xf6\xb7\x5c\x51\xdf\x72\x45\xe9\x63\x3f\x27\x3e\xa6\x89\x17\xd1\xb6\x14\xd4\xe8\x78\x60\x34\xd4\x04\xb9\xe1\xb0\x79\x97\x8d\x74\x74\x4e\xda\xcb\xd2\xb2\xcf\x5e\xa2\x71\x23\xb0\xff\x28\x65\xda\xdc\x9c\x54\xa1\x50\x91\x4c\x91\xff\xe4\x7c\x16\xb3\x85\xcd\xc0\xb3\xc1\xb0\x2f\x9f\x3d\xb7\x09\x70\xf8\x07\x7e\x5c\x6c\x99\x63\x41\x76\xbe\xbf\xdc\x0a\x7c\xfc\x39\xee\x06\xfe\x7e\xdc\x99\x7e\x34\xbb\xaf\x0b\x53\x14\x08\x3e\xb8\xdb\xd2\xbc\x22\xfd\x68\xe6\x4c\xe6\x81\x6f\x2f\xd3\xca\xbb\x51\x40\xf8\xed\x62\xfc\x76\x31\x66\x87\x3b\x8e\x31\xad\xf3\xc6\x5c\x77\x2f\x66\xfd\xf6\x92\x9e\xaf\xb9\x16\x73\x80\x9b\xde\x8a\xba\xc7\xe6\x7b\x82\x06\x5f\xbb\x40\xe9\xff\x3e\xac\xa8\x50\xfa\xad\x40\xe9\x6f\x59\xa0\xf4\x5b\x75\xd2\x6f\xd5\x49\xef\xb0\x3a\xe9\x9c\x86\xdd\x71\x44\x5b\xe8\x6e\x75\x8f\x43\xa3\xcc\x34\xfc\x89\xc3\xd9\x94\x2c\x8b\xe6\x1b\x69\xb2\x74\xaf\x6b\x29\xa9\xa8\x4e\x07\x86\x40\x0d\x6a\xc3\x21\x65\xf3\x8d\x08\xbc\x6e\xc9\x19\x5c\x1f\x1a\xda\xae\x1b\x8f\x76\xbd\x19\x59\x41\x18\x76\x7d\x9c\x30\x1a\x55\x16\x66\x50\xe5\xcc\x57\x70\x66\x76\xdb\x4b\xf4\x6d\x02\x9b\x4d\xa3\x79\xdb\x12\xca\xba\xd7\x5e\x02\xbc\x66\xbf\x68\x60\x9b\xee\x1a\xd9\x7e\x23\x12\x6f\xaa\x89\x3c\xa3\xf3\x0a\xcb\xc8\xcd\xe1\xd1\xf7\x9b\x16\xc4\xfd\x66\x0d\x65\x37\xee\xe0\xe4\x04\xc5\x71\x97\xb3\x0e\x75\xda\xa8\x30\xe8\x1a\x4d\xcc\xbe\xdd\x31\xe2\x5c\xed\xa2\x50\xb6\x59\xb2\x33\x27\x98\x5c\x05\x34\x22\x9c\xab\x2d\x63\x19\x12\x59\x8b\x91\x42\xb4\x3b\x1f\x0f\x89\x7e\xe0\x3c\x7f\xff\xfe\xf8\xd8\xa6\x6e\xe1\x89\x70\xd0\x81\xa8\xf4\x50\x01\xa3\xa4\x3e\x77\xc9\x1b\xf5\xad\xe7\x71\xdc\xf9\x8b\xc6\x44\x0e\x67\xbf\x58\xe7\x99\x42\x04\x52\x83\xf9\x08\x1b\xe0\xd8\x8b\x08\x43\x01\xc1\xb4\xeb\xe3\xd1\x7c\xd2\x45\x3e\x8a\xa5\x7b\x50\x05\x7d\x4b\xa2\xf0\x0a\xd3\x13\xfd\x47\x72\x22\x84\x8b\xc0\xab\x1d\xe5\xde\x0a\x27\x29\xbc\xd4\xce\x3e\x87\xd1\x96\x4b\x8a\xdd\x4c\x94\x19\xf4\x86\xb7\xb7\xf9\xaf\xd3\xe1\x11\x76\x28\x9e\x04\x09\xc3\xd4\xae\x1b\xb2\x3f\x43\x01\xb1\x0c\x6c\x43\xac\xc4\xae\x4d\x5d\x2c\x3e\xd5\x24\x16\xe9\x8d\x2c\x14\xc7\x61\xe0\x21\x8e\x10\xf9\x1a\xa4\xe9\x66\x6d\x5d\x61\xc5\xe4\x62\xf8\x88\x21\xf9\xbf\xca\x15\xfb\x63\xde\xea\x44\x4c\xea\x24\xc1\x6c\x1e\xef\x27\x59\x69\x05\x74\xd5\xce\x94\xcf\x8d\x1f\x12\xda\x6e\xb6\x30\x55\x07\xfd\x6e\xb6\x22\xd5\x5b\xd1\x9c\x89\x71\x42\xb3\xd3\x9d\x6e\xf6\xeb\x28\x42\x2c\x60\xec\x1a\x1b\xa6\x3b\x09\xa3\x11\x0a\xeb\xaa\xd2\x6f\x26\x6f\x86\x2a\x9b\x68\x81\x7f\xdd\xb1\x08\xc6\xf6\x83\x9e\x70\xa3\xd1\x14\x4a\x7e\xf7\x79\x3e\xa7\x3f\x89\x29\xc9\xb1\x08\xef\x20\x4c\x13\x63\x51\x42\x32\x93\xb7\xaf\x03\xe2\x47\xd7\x80\xb8\xf2\x8f\x23\x1c\x26\xb8\x53\xd3\x56\xc2\x08\x88\x2b\xff\x10\x6d\x97\xc5\xb6\xae\x6e\x9b\xe0\x70\xac\xdc\x7d\x8e\x88\xcb\x7f\x49\xc7\x1a\x11\x64\xb4\x61\xca\x47\xd4\x55\x61\x7a\xf9\x78\xe8\x19\xea\x17\x12\x24\x4b\xf2\x36\x5e\xd8\xf9\x70\x33\xb1\x31\x64\x45\x68\x00\xc9\x80\x0e\x6f\x6f\x6d\xfe\x8f\x8b\x21\x27\x23\x51\x8c\x89\xbd\xe4\x3c\xdf\x4b\xc9\xf2\x99\x7b\x5f\xa8\x1c\x3e\x0b\xe5\x8a\xc3\x17\x76\x21\x5d\x41\x0d\x25\x8b\x8f\x43\xcc\x70\x87\x0f\x98\xa6\x00\xa4\xdb\xd8\x0c\xf2\x6d\x54\xe5\x5a\x55\xdc\xb4\xf5\x9b\xcc\xdc\xc3\x6d\xf7\xee\x38\x44\xc9\xb4\x3b\xc3\x49\x82\x26\x65\xf9\x6c\xed\x86\x35\xaf\x76\x31\xc8\xc9\x9c\x05\x61\x69\xc0\x6e\x14\x33\x51\xf4\xf5\x6e\x0e\xb5\x81\x2e\xba\xc6\x45\x8f\x1a\xe1\x62\xf5\x67\x06\x2e\xc5\x54\xdf\xc8\x99\xbe\x94\x63\x25\x7d\x9a\xe6\x3b\xf2\xf6\x76\x99\xc2\xa5\xbc\x3b\x82\x88\xfc\x24\x38\x95\x00\x27\x7d\x94\xba\xf4\xf6\x76\x30\x84\xa1\x6b\x1b\xdc\x03\xb0\x29\x38\x42\xc7\xc7\x48\x39\x99\x1d\x85\xce\x6a\xe7\x4c\xf9\xc3\xdc\xa7\xcb\xec\x66\x62\xd0\x32\xa7\xc3\xd1\xaf\x74\x84\xfd\xd2\x12\x81\x54\x3a\xa5\x21\xbd\x33\xca\x4b\x68\x6c\x07\x9a\x6e\x56\x41\x17\xb6\x43\xfe\xa3\xcb\x67\x1b\x74\x3d\x14\x86\x23\xe4\x5d\xb6\xda\x19\xa2\xeb\x09\xc5\x7e\x40\xb1\xc7\xba\x53\x44\xfc\xf0\xab\x50\xf6\xf2\x9c\x47\x78\x1c\x51\xfd\xbc\xc0\x6a\x60\xb0\x34\xb7\xc6\xf1\xb1\x5d\xdc\x2b\x20\xe7\x1f\x1c\xd1\xfb\xf8\xb8\xf4\xc0\xf1\x03\x21\x4f\x7d\x50\x60\xbe\xca\xf1\x78\x7b\x6b\x8b\x79\x62\xfa\x01\x23\x3f\x20\x38\x49\x6c\x60\x30\x99\x12\x21\xb6\x22\xb6\x8e\x87\x58\x41\x17\x08\x96\xd8\x41\xfe\x15\x22\x1e\x36\xfa\xa7\x00\x14\x39\x90\x26\xc7\x7b\x65\x3d\x13\x9c\xac\x32\xe9\x72\xbd\x46\x51\xc4\x12\x46\x51\x7c\x92\x35\x52\x6f\x32\xed\x62\x95\xf7\xf5\xbd\x2d\x63\x36\x0b\x34\xe6\x2c\xda\x36\x8b\x98\x05\xb7\x8a\x53\x3a\xc1\xec\x85\x09\x09\xb0\x85\x37\x2a\x75\xd4\x97\x2e\xe4\x81\x7b\x8b\x66\x18\x2c\x8b\xfc\x3a\x86\x95\xad\x8e\xe4\x41\xcc\x8e\xaa\xf5\xa8\xaa\xd9\x51\xce\x7f\x66\x1c\x60\x55\x3b\x2e\x13\xec\xbc\xc2\xeb\x57\x56\x35\xa9\x5c\xd7\xb6\x02\x18\xa4\x77\xb5\xf0\xa8\xb0\xf0\x2d\xcf\xa9\x58\x5a\x0d\x09\x06\x36\x2d\x1e\x53\x4e\xc3\x45\x23\x73\x35\x4d\x91\x40\x05\x52\xe9\x6f\x67\x6b\x29\x7f\x17\x8f\x5c\x13\x12\x3a\x8b\x7c\x1c\x76\xc7\x14\x4d\xc4\x1c\xeb\x98\xe0\xee\x4a\xbb\x35\x2f\x4f\xf0\x0d\xbb\xaf\x58\x71\x7d\x8b\xa8\x6f\x89\x9a\xe5\xe3\x88\xce\xb2\x73\x57\xcd\x2e\xdb\x60\x59\x40\x0d\xab\x8e\x7f\x28\xa0\x26\x0a\x7c\xaf\x1b\xd3\xe8\x2a\xf0\xcb\x52\x90\xdc\x90\xfa\x5d\x72\x12\xa1\x39\x9b\x9e\xdd\x55\x95\x97\x02\xeb\x80\xea\xec\x78\xc4\xb5\xc4\x0c\xaf\x03\x36\xed\xce\x69\x68\x89\xe2\xef\x39\x77\xca\x30\xf1\x6d\x89\x2e\x02\x47\xf3\x20\xf4\x3f\xd1\xb0\x4a\x60\xe2\xbc\xe3\x08\x25\xf8\x13\x0d\x53\xc8\xd9\xcc\x7e\x95\x77\xbc\x68\x36\xc1\xcc\x16\x62\xa7\xb0\x00\xca\x9e\x6a\x64\x1b\x14\xdc\xee\x44\xcb\x38\x8a\xe7\xb1\x05\x1c\xc1\xbb\x12\x38\xd0\x05\x19\x2d\x85\x28\x0c\x1c\x36\xc5\xa4\xca\xad\x7d\xc9\x31\x1a\xd1\xe0\x57\x71\xda\x2f\x78\xbf\x3e\x96\x65\x1f\x61\xe1\xd5\x8b\xc8\xc7\x7d\x1f\x97\xed\x69\x36\x76\xf8\x23\x00\xf5\x22\xf5\x99\xe0\x7b\xa1\x17\x46\x09\xee\x57\x84\xea\x97\xa6\xed\x50\x3c\x8b\x18\xb6\x00\x3f\x92\x42\x00\xc9\xec\x7d\x19\x5f\x8f\x1d\x31\x9a\x12\x15\xf4\x4f\x1b\xa4\x29\xc8\xf9\x3b\xc4\x81\x32\x15\x01\xf2\xbe\xc8\xe6\x65\x3d\x12\x3e\x89\x4a\x2d\x63\xb0\x43\xa8\xad\xca\x85\xd3\x86\x95\x14\xa4\x79\x5b\xf5\xfa\x44\x92\x90\xfb\xd6\xa0\x64\x93\x29\x92\x47\x13\x11\x62\x22\xfd\x11\x4a\x02\xcf\x54\x80\xb4\x56\x5c\x48\x99\x5c\x31\xf8\xd5\xa1\xef\x1e\x22\xeb\xfb\xec\xa5\xfe\xa2\x7e\xcc\x1c\x96\xc6\xc3\xe6\x5d\x9a\x69\x46\xae\x02\x7c\x2d\x84\x38\x79\x5b\x55\x27\x85\xe8\xea\x56\xeb\xfb\x7e\xc3\xae\xc0\x6e\xc2\x38\x97\xdc\xad\xd6\x93\x7e\x85\x44\x2b\x65\xe5\x66\xf9\x70\x6a\x5a\x8f\x9d\x30\x8a\x2e\xe7\xb1\x9d\xb1\x17\x79\x17\x20\xbc\x44\x88\xcb\x24\xad\x5c\xab\xa2\x14\xc2\x02\x0a\xa3\xc9\x39\x61\x5c\x98\xfc\x71\xf1\x71\x11\xe3\x6c\x54\x0b\x38\xe3\x20\xe4\xa4\x00\xbb\x4f\x05\x71\x57\x59\x97\x6d\x8b\xe2\x38\x4a\x02\x16\xd1\xc5\x09\xa7\xc0\xd6\x3c\xd0\x5b\xc9\x75\x5d\x0c\x8e\x88\x4c\xd4\x62\xb6\xcb\x06\x85\x24\x13\x5a\xb1\xfb\x34\x0b\xb0\x32\xd8\x5e\x7c\xc4\x9c\x04\x33\x9b\x40\xe6\x28\x9d\xf3\x07\x41\x95\x24\x6f\x69\x13\xc0\xc5\xd6\x32\xbf\xd0\x78\x49\x37\xeb\x14\x4d\x3e\x38\x61\x11\xc5\x5d\x3d\xfb\xfb\x26\xcb\x35\xda\x44\x56\xa5\x4d\xac\xa5\xbd\x55\x40\x4f\x29\x1e\xaf\x0f\x91\xd8\x01\x12\xec\xfc\x4c\xf1\xf8\x63\x94\x71\x40\xc2\xf7\x88\x15\x1c\x8d\x04\xb6\xc4\x25\x6e\x68\x9d\x5e\xa9\xb9\xba\x18\xca\x68\x00\x44\x27\x98\xb9\x2c\xe3\xa1\x8c\xa7\x0e\x62\x8c\x06\xa3\x39\xc3\x89\xc3\xa1\x39\x12\xef\xe6\x34\x14\x71\x7b\xd2\xf2\x9d\x2a\x61\x18\xab\x4f\x25\xd3\x68\x1e\xfa\x3f\xeb\x87\x9c\xe1\x77\x62\x8a\xaf\x30\x61\x4a\x47\x63\x03\x58\x37\xa9\xec\x94\x49\x97\x0c\x7d\x66\xc2\x48\x36\x2b\x04\x97\xd9\x7a\x32\x00\xa4\xa5\x8f\x16\x18\xb9\x20\xf9\x44\x66\x91\x1f\x8c\x03\xec\xbf\xc6\x63\xf6\x22\x0c\xbc\x4b\x31\xb3\x07\xea\xfd\xab\x09\x89\x28\xf6\x6d\x03\x72\xe3\xed\xf9\x0d\xc3\x94\xa0\xb0\xf2\xf5\x14\x25\xcf\xc5\x72\xfe\xac\x1c\x82\xab\xdb\xbc\x8c\xae\x49\x18\xa1\xba\x4f\xbc\x0e\xc8\x65\xce\xa7\x99\x6d\xd2\xba\xd9\x2b\x10\x1f\xd8\x99\xdf\x0e\x76\xae\xa7\x81\x37\x3d\x3e\xee\xe5\x3f\x6e\x6f\xb1\xe3\x31\x1a\xfe\x19\x2f\xf8\x9f\x33\xcc\xd0\x9f\xf1\x82\x8f\x9a\x41\x95\x47\xc3\x7e\x1e\x85\x88\x5c\x0a\x72\xc2\x29\xd9\x73\xbd\xf6\xb6\x25\x27\x63\xf1\x7e\x1a\x57\x39\x92\xb1\xc3\xcf\x4e\x82\x99\x43\x10\x0b\xae\x30\xdf\x97\x69\x19\x2f\x55\xcd\xc5\xc1\x93\xad\x52\x13\x47\x66\x5b\x3e\x4e\x3e\x0f\x5f\x35\x11\x33\x29\x22\x4d\xba\x88\x75\x98\xfb\xa0\x97\xed\x64\xec\x04\xbe\x08\x57\x2d\xb1\xb4\xeb\x36\x9e\xb8\xbe\xbb\x92\x23\xa3\x0b\xb5\x01\x07\x64\x78\xc4\x5c\x7c\x7c\x8c\x3b\xfa\xa8\x47\x63\xe5\xe0\x57\x98\x46\xaa\x37\x5e\x9a\xa5\x0f\xe0\x82\x80\x39\xb9\x60\x6c\xc6\xb8\x4a\x35\xf5\x04\xb3\x0f\x62\xc3\xdb\x80\x8b\x2c\xf9\xb3\x88\x09\x39\x02\x22\xf7\x54\x2c\x4b\x20\x0b\x75\xd9\x14\xc0\x30\x63\xcf\x3f\xd1\xf0\xaf\xd2\x36\xce\x3b\xd8\x00\x26\x2e\x71\x3e\xab\x34\x06\xea\xdf\x37\x81\x47\xa3\x30\x18\xdd\xde\xe6\xaf\xe4\x3f\x47\xcc\x45\xc7\xc7\x49\x9e\xef\xc0\x4c\x7d\x10\x82\x1c\xa2\x8a\x2f\x35\x47\x6b\xf5\x79\x3e\x92\x58\x11\xdb\xed\xd3\x87\xd7\x4a\x51\xbf\x9c\x60\xf6\x33\x4a\xa6\x7d\x1b\xb8\x4f\x2d\x0b\xea\xd6\xfd\x65\x8c\xd8\x54\x10\x6d\x7d\xf4\x53\x28\xc4\xb4\x0f\xaf\xfb\xd8\x51\x7f\x41\x95\x9d\xa1\x8f\x1d\xf5\x17\xc4\xe4\xaa\x8f\x1d\x4c\xae\x52\x38\x18\xe6\x11\xca\x2c\x43\xa7\xf5\x2c\x0b\x4d\xee\xf6\x64\x54\xb2\xcd\xdc\x2c\x55\xdc\x29\x24\xdd\x1e\x00\x90\xa5\xe6\x4a\x15\x88\xcc\x3a\xd8\xf5\x2d\xab\x73\x61\xa4\x85\xb5\x55\x26\xd3\x95\x8d\x20\x99\x89\x2c\xd5\x84\xce\xcd\x76\x62\x89\xd3\xed\x89\x32\xe4\x36\x56\x8a\xea\x6e\x4f\x10\xda\x47\xae\x75\x62\x01\x88\xd3\x34\xbb\x1e\x58\xf1\xb2\xcb\xee\xa4\x22\x9b\x53\x63\xf5\xf9\x09\x25\xec\xc7\x28\x62\x46\x4c\xf6\x0a\x54\x22\x8e\xc0\xf1\x23\x4f\xa8\x74\xc4\x06\x26\x19\x8f\x41\x5d\xeb\x39\x27\x28\x44\x5f\x28\x0c\x4d\xde\xa2\x19\x7e\xa6\x1f\x14\x04\x6b\x7e\x34\xa4\xc0\x98\xb0\x92\x04\x99\x30\xdb\x42\x16\x38\x1a\xf3\x6b\xcd\xc5\x4e\x8c\x28\x26\xec\x3c\xc4\xfc\xa3\x7f\xc0\xc7\xc7\xd6\x73\x89\x18\xf5\x81\x3f\x80\x95\x56\x5a\x18\xc7\xa9\xad\xbf\x2e\xd5\x87\x60\x49\xf0\x75\x87\xd9\x18\x52\xa0\x55\xbb\x84\x33\x3b\xc4\x19\x45\xfe\xc2\x41\xbe\x7f\xce\xaf\xaf\xd7\x5c\x48\x23\xc2\x70\xcd\x89\xb0\x05\x29\xa8\xb6\x43\xe5\x7b\x43\x8d\xc0\x05\xe7\x2b\x5c\x3b\x88\x61\xab\x2a\x3a\x02\x73\xc6\xb9\x99\xec\x57\xc5\x7f\x04\xbd\xdf\x55\x4a\x7e\x22\x71\x9d\x5a\xbe\xe4\x84\xff\x5a\xe5\xb1\xc4\xa6\x81\x14\xa2\x5c\x6a\x0f\x8d\x37\xae\xe9\x0f\x8b\x05\x1a\xd5\x93\x09\x66\xef\xae\x89\xe6\x65\x2e\x16\xb3\x51\x14\x26\xb2\x17\x75\xd7\xb5\xe1\xc3\x30\xe1\xba\x41\x35\x0f\x9c\xcf\x29\x77\x5d\xad\x1c\xe2\x25\x4e\x3c\x1a\xc4\x9a\xe7\x31\x7c\x6d\x53\x00\x38\xf7\xcb\x59\x63\x45\x5d\x84\x6a\x41\x2f\x4f\x6a\xe6\x55\x02\x4b\xbe\xbb\xa4\x5c\xd0\xfb\x03\xfb\xcf\x72\x46\xc2\x3f\xb0\x47\x8f\x34\xfc\x32\x03\x42\xae\xc8\x64\xc3\x67\xe6\x8f\xfe\x32\x3d\x62\xff\x7e\xf6\x2c\x54\x68\xb1\x09\x80\x0f\x4e\xab\xfc\x86\x19\x58\xaa\x2c\x49\x03\x36\x14\x59\x0b\x36\x40\x98\x3c\xab\xe2\x1a\x03\x9c\xd8\x18\x6e\xea\xca\xd9\xf8\xbe\x31\xa7\x9a\x09\xd5\x7b\x97\x6f\xc2\x3e\x81\x8c\x0b\x0a\x19\x82\xf1\x4a\x2e\xa8\x9c\x6c\x76\x02\xd2\xc1\x95\xc0\x28\x4f\x76\xe5\x81\x5e\x72\xd6\x2e\xbb\x72\x1b\xce\xdb\x29\xe8\xe3\x01\x1b\xba\x04\xe2\x5d\x32\x1b\x61\xe7\x55\xef\x77\x5a\xaf\xef\x62\x8e\xa3\x19\x62\xef\xa4\x25\x54\xee\xd6\xa2\xde\x31\x72\xe5\x53\x1b\x1c\x55\xb7\x8e\xc4\x45\x37\x77\xed\x76\x59\x90\x32\x11\xa4\x36\x7c\x80\x6e\x0c\x1f\xb8\xb2\x14\x47\x01\x6d\xe2\xa2\xbd\x0a\x1d\x28\xa4\x0c\x13\x58\x53\xc6\xd3\xa2\xaf\xba\x98\xfd\x20\x1a\xda\x0c\x40\x69\xcf\x5f\x6d\x9c\xf2\xf7\x86\xb8\x3e\xb0\x5e\xbc\x7b\x7b\xf1\xe9\xf5\xe7\x9f\xdf\xbd\x39\xff\xcc\x2f\x50\xa8\x9f\x7c\x38\x7f\xff\xee\xf3\xab\x8b\x8b\x4f\xe7\x17\xc5\x17\x2f\xdf\xbd\xa8\x7a\xf2\xfa\xfc\xf9\x87\xb7\x15\xcf\x9f\xbf\x7f\x55\x7c\xfa\xe2\xdd\xfb\xbf\x7d\x78\xf5\xa7\x9f\x3f\x8a\xc7\xc3\xcc\x03\x9f\xcf\xcf\x7d\x6a\x8b\x9d\x59\xc8\x23\xc5\x00\xc4\x00\x2e\xd3\x4c\x4d\x9c\xd8\x89\xbd\x4c\xf9\x43\x06\xd2\x14\x7a\xae\x99\xf1\xc9\x57\xab\x39\x73\x07\x64\x08\xe3\xdd\x62\x1a\x46\xe5\x98\x86\xb8\x26\xa6\x61\x34\xc0\x43\x37\x56\x31\x0d\xa3\x62\x4c\x83\xf9\x13\x8e\xca\x31\x0d\xa3\xda\x98\x86\xd1\xed\xed\xa8\x1c\xd3\x30\x2a\xc6\x34\x8c\xdc\x59\xfb\x98\x06\x0f\xfa\x59\x4c\xc3\x08\xc0\xb1\x11\xd3\x30\x2a\x45\x1c\x8c\x54\x4c\x43\xe1\xf9\xb3\xd1\xea\x1e\x1d\x67\x31\x0d\xa3\xf5\x31\x0d\xe5\x2f\x54\x1f\x33\x3e\xc5\x11\x07\x4f\xc6\x34\x20\x77\x04\xa9\x34\x42\x8a\x68\x06\x18\xc3\x31\x1c\x1d\x15\x09\xd0\x5c\xbc\x9f\x6a\x0e\x4e\xde\xea\x86\xa2\xc2\x5c\x2e\x53\x97\xac\x19\x34\x71\xc1\xc3\x79\x51\x7b\x33\x6d\xc5\x48\x5c\x2d\x84\x21\x67\x16\x50\x1a\xad\xd3\xca\x15\xc3\x77\x73\xdd\x99\xc1\x1d\x4b\x57\xcc\x2a\x46\xb2\xab\x79\x48\x41\x09\x39\x4b\xf6\x06\xc5\x1a\x8f\x58\xaa\xcb\xec\xff\xba\x78\xf7\x96\xb3\x75\x09\xb6\x89\xf3\x8f\x39\xa6\x8b\x0b\x1c\x62\x41\x17\xbf\x0c\x84\xe5\xed\xe1\x92\xa5\xdd\x71\x32\xfc\x02\x1c\x86\x6f\xd8\x8b\x88\x30\x11\x4c\x04\x8e\x5e\x44\x3e\x7e\x23\x40\x70\x66\xc2\x36\xf2\xda\x5d\xaa\x52\x8e\xfd\xe2\x96\x4a\xae\x03\xe6\x4d\x6d\x9d\xd3\x08\x2c\x45\xa0\xdb\x2f\xe8\x0a\xc9\x9b\xce\xea\xeb\xac\x7f\x82\x4b\x1f\x58\x26\x76\x2c\x3e\xb8\x05\xcd\xe6\xe6\x0f\xe7\x97\xc4\x1a\xaa\xc4\xc4\x27\x16\x00\x47\x62\x6c\x3a\x1f\x2d\x1a\x8d\x2a\x1a\xca\x7f\xaa\x47\x5a\xa0\x59\xd8\x68\x24\xd1\x50\xfe\x53\x1e\x49\x32\x9d\x55\x7a\x40\xcb\xd3\xa2\x6e\xbf\xb4\x2b\x40\xc6\x09\x67\x4a\xa3\x1f\x03\xe2\x07\x64\x92\xf4\x07\xd2\x42\x36\x4c\xb7\x0a\xcc\x36\x4c\x7f\xb5\xc1\xd9\xa6\x95\x68\x7b\x8d\x5d\x22\xf6\xd2\x8a\x7b\x45\xde\x8d\x53\xe0\xfb\xd6\x47\x1a\x93\x58\x11\xd2\x84\x19\x1c\x93\x2b\x60\xeb\x5b\xe7\xd3\xab\xcf\x2f\x5f\x5d\x3c\xff\xf1\xf5\xf9\xe7\xe7\x6f\x5f\xfc\xfc\xee\xc3\xe7\x8b\xf3\xd7\xe7\x2f\x3e\xbe\x7a\xf7\xd6\x02\xda\x63\x6f\x83\xf4\x06\x85\xbb\x74\x2e\xc1\x21\x57\xec\x1b\x25\x37\x25\x3f\x2e\x3e\x4a\xa1\xca\xb6\xa6\x6c\x16\x5a\x60\x70\x3a\x84\xa1\xbb\x6a\xa1\x94\xb2\x5e\x26\x83\x3d\x13\xcc\x42\x2e\xbd\x41\x0c\x52\x98\xb8\x25\x89\x0f\x49\xd7\x3f\x2e\x17\x39\x4a\x75\x9e\xd8\x56\x90\x48\xed\x79\x19\x06\xe6\x86\x36\x36\xa5\x37\x26\x06\x31\x94\x60\xa3\x39\x63\x11\x39\x3e\x3e\x73\xf3\x5f\x86\xa2\x22\xd3\x3e\x09\x7d\xa6\x91\x5d\xcc\xc6\xc7\xc7\x42\x07\x6e\xe8\x9b\x78\x1b\x3e\x6d\x90\xe6\x3a\x83\xc9\x6a\x0b\x70\x24\x14\x06\x85\xa1\x5d\xa9\x49\xe7\x72\xdf\x4a\x73\x19\xb4\x78\xe7\x78\xc8\xe7\x58\x80\xf1\x81\x61\x9c\x91\xfa\x96\x95\x54\xeb\xa7\xc6\x55\x69\xba\xd8\x3d\x33\x7f\xf4\x95\x4b\x69\x01\x15\x17\x7a\xb3\xda\xd2\x0a\x42\xdd\x07\xbd\x23\x46\x17\x4b\xea\x5a\x41\xf2\x22\x0a\x43\x14\x27\xd8\xe7\xd7\x3e\x39\x3e\x7e\x40\x1c\xe3\xe1\xf1\x31\x71\x58\x24\xfd\x3f\x6d\xa0\xe7\xd2\x4b\xa5\x3b\x15\x06\x4b\x2d\x45\xd0\xd4\x06\xc7\xc7\xa4\x6e\x7d\x84\xac\x4e\xeb\x64\xf5\x59\x34\x4f\xb0\x1f\x5d\x13\x0b\x26\x00\xae\x6f\x36\x8f\x2d\x18\xd4\x08\xf5\x15\x36\x2e\xba\x46\xba\xaf\xfc\x6c\x7d\x4b\xf5\xe5\xf5\x9a\x80\xed\xc9\x1a\x9b\xc7\x32\xca\x31\x59\xef\x5e\x94\x99\xa8\x6b\x1c\x8c\xf4\xd3\x59\x8c\xd8\xc9\x04\x33\x1d\x3a\xa9\xbf\xbb\xa6\x49\x18\x8c\x72\xcf\x42\xf9\xc8\x4f\xc2\xee\x8a\x63\x4c\x9e\x30\xf8\x6e\xe8\x6a\x58\x76\x4a\x33\x71\xb1\x42\x60\x1f\xd4\x39\x9a\x55\x79\x8f\xa9\x13\x29\xab\x2a\xd8\xa7\x90\x9a\x1e\x4a\x47\xa1\xc3\xef\x4b\xbe\x83\x3e\x66\x56\x0b\x2b\x87\x34\xf3\x0b\x17\xce\x6d\x28\xef\x1a\x02\x07\xcd\xd9\x14\x13\xc6\x59\x26\xec\x0b\x85\x60\x72\xf4\xa0\x98\xfb\x44\x70\xcd\x65\x17\x37\x00\x43\x27\x1a\x8f\x57\xbf\x4a\x84\x50\xde\xc8\x7b\xa2\x6a\x03\x5d\xa3\xf0\x32\x73\xcf\xa8\xdc\x42\x61\x30\x32\x22\x53\x84\x27\xf1\x6f\xec\x7d\x58\x9e\x73\x71\xa9\x25\xad\xaa\xf5\x2a\xd4\x8a\x20\xd4\x09\xf8\x31\xcf\x86\x01\xc6\xdf\xce\x14\x25\x86\x16\xc4\x46\x7a\x45\xe4\x1d\x0b\x64\x2a\xd5\x92\x63\x0b\x6a\xe4\x02\xaa\x35\xde\xc9\xc9\x38\x99\x49\x77\x26\xe9\x88\x8d\xc2\x2e\xc3\x09\xab\x63\x4f\xd6\xf4\xab\x6f\x97\x85\xb0\x9c\xf0\xa1\x75\x84\xdc\x7d\xb9\x0b\x4a\x0d\x07\xaa\xd0\x71\x24\x0c\xb1\xc0\xeb\xc8\xf4\x00\x86\x0a\x15\x5f\x0b\x15\x7b\x89\x1e\x56\x6b\x44\xaa\xf5\x21\xd4\xb5\xea\xf0\x68\x33\xd7\x0a\x66\xb1\xe4\x74\xe4\x06\x05\x01\xb1\xa5\x06\x05\x6c\xd6\x4e\xd1\xf6\xda\x29\x2a\xa9\xbc\x5e\x03\x21\xe9\x10\xe7\xb5\xfa\x29\x5f\xce\x90\x37\x0d\x08\x56\xef\x7e\xba\x78\x63\x17\xfa\xa8\x8b\xc2\x8f\x3c\x77\xa9\xd0\xf7\x97\x00\x5f\xf7\x97\xe5\x7b\xad\xaf\xb4\x0f\xcb\x26\xa3\x42\x06\x52\x58\x71\x45\x09\x3b\x4c\xcd\x08\x69\x9a\xa6\x57\x41\x12\xb0\x15\xc7\xb8\x8c\x1a\x68\xb7\xb8\xec\x41\xb5\x51\x08\x22\x17\x25\x0b\xe2\xf1\x8f\xd9\xe8\x1a\x05\x4c\x50\xd4\x04\x33\x16\x62\x1f\xd8\x00\xf2\x8f\xbe\xa7\xd1\x2c\x48\xb0\x8d\xdd\xa7\x09\x66\x1f\x83\x19\x8e\xe6\xcc\xc6\x36\x03\xf0\x14\x00\x00\x43\x17\xbb\x4f\xa5\x21\x01\x73\xb1\x04\xb0\x29\x8d\xae\x3b\xea\x97\x70\x5a\xcb\xe9\xe2\xf3\x51\x44\x99\xb0\x77\xb8\x58\xc8\xa5\x9c\x23\x29\x19\xcc\x1c\xe4\xb1\xe0\x0a\xe7\x9d\x40\xa6\xda\xdf\xd4\x52\x7a\xf2\x21\x18\x82\x23\x31\x8b\x75\x5f\x7e\xc6\x81\x3b\xe7\x73\xb4\xb1\xa3\x42\x01\x40\x1f\xeb\x64\xf9\x16\x6f\x59\x58\x2c\x47\xdb\xc2\x9e\xd9\x2a\x6b\xb9\x30\x14\xb9\x44\xff\xe5\x28\xd1\xd6\x3e\xf9\xdf\x93\x87\x27\xd0\xb2\x40\x61\x6b\x49\xc7\x41\x31\x4a\xcd\xc0\xae\xce\x7b\xae\x06\x4c\x1f\x2e\x71\xfa\x45\x0e\x92\x77\x93\x96\x3b\x1b\x40\xed\x15\xcf\x7f\x59\xd6\xa3\xac\x19\xc8\xd1\x00\xa4\xdd\xae\x60\xc4\xc7\xc6\xfb\x34\xdd\xe8\xa9\xbb\x96\xc2\xb5\x90\xd9\xcc\x8c\xc3\x07\xa2\x96\x2e\xa8\x9c\xa9\xbb\x4c\xff\xb0\x2a\x0d\xbe\x7f\xfe\xe1\xe3\x2b\x2e\xfb\x5d\x7c\x3e\x7f\xcb\x85\xc2\x97\x16\xbf\x95\xa8\x13\x23\xca\x04\xca\xdd\x93\xff\xeb\xda\x03\xd4\xfd\xf5\x79\xf7\xef\xa7\xdd\xdf\x0f\x8d\xbf\xbb\xc3\xe5\x29\xfc\xfe\x2c\x35\xde\x82\x67\xe0\xe1\x89\xf2\xbe\x2e\x7c\xe8\xed\xc5\xfb\xe7\x2f\xce\xcb\x5f\x21\x22\xf6\xd2\x3d\xf9\xbf\xff\xd7\xf6\x13\x46\x26\x1e\xbe\x5b\xc3\xca\x74\xd4\xe6\xa6\xd5\x54\x45\xee\xbf\x9f\x22\x9a\x1f\x2e\x5b\x4a\x44\x44\x1f\x99\xcf\x31\xc5\x57\x41\x34\x4f\x3e\x7d\x78\x2d\x98\x3c\xb6\xf2\xe6\x3d\xdf\xa8\x8a\x9d\x5b\x7d\x53\xfc\xf0\x3a\x62\xd6\x37\x34\x5d\x42\x23\x32\xa6\x38\x99\xda\x20\xad\x70\x95\x95\xe3\xa8\x50\x97\xe3\xe3\xc2\x4f\x5b\x93\x78\x73\xee\x2e\x81\x1b\xe6\x66\xb2\x16\xe2\xa2\xdd\xe1\x52\x15\xd7\x29\x58\x12\x55\x42\xa1\x74\x49\xc2\xd5\x1b\xd5\x02\x50\x37\x56\xa6\x78\x4b\x50\x1d\x92\x15\x67\x90\xa6\x6c\x28\x6c\xd4\xfa\x29\x9f\x76\xe9\x91\xc7\x19\xd0\x50\xda\xc1\x2f\x44\x28\x2d\x7c\xd0\xcb\x5f\xe7\xe7\x7d\x99\x82\xd2\x6a\xb8\x25\x75\x21\x06\x83\xd3\xe1\xa0\x37\x84\x79\x65\x07\x37\x74\x46\x01\x91\x9e\x38\xc6\x3d\x9a\x29\x72\xd9\xb3\x9a\x05\xae\xd0\x53\xf6\x19\xd4\x1a\xfd\x7c\x00\xba\x69\x00\x61\xec\xe9\xd3\x6c\xcb\xeb\x39\x94\xf4\x99\x02\x8b\x03\x2e\xe2\x0e\x2d\x70\x24\x0d\x8e\x2e\x3a\x3e\xb6\x73\xf7\xf4\x0f\xaf\x5d\x54\xa9\x90\x00\x29\x67\x77\x85\x8f\xb8\x8e\x85\xcc\xf8\x8d\xc2\xaf\xdb\xdb\xec\xeb\x06\x23\x61\xb0\x04\xe6\xad\x6f\xfe\xa8\xe9\x38\x0d\x12\x16\xd1\x05\xac\x7c\xb9\x2a\x75\xc7\x51\xac\x1c\xe0\xf3\x05\xd2\xb4\xa0\xf8\x3d\xe5\xe8\xce\x4a\xb7\x8e\x02\x47\x5a\x84\xf8\x23\x06\x8e\xf0\xf1\xb1\xba\xd8\x5c\x97\xa8\xeb\xb1\x78\x66\xca\x07\x89\x23\x92\xa9\xdb\xc9\x0f\x92\x58\x28\x20\x2c\x75\x81\x0a\xe9\x49\x91\x19\x1a\xcd\x4c\xf7\x24\x57\xa3\x61\xe5\xf2\x84\x85\x4b\xd9\xfc\x91\xdd\xcb\x28\xbf\x93\xf5\x62\x9a\x3f\x4a\xed\x70\xf6\x9b\x9f\x5d\x99\x3d\xcb\xfe\xf2\x7f\xea\x8a\x56\x7d\x52\xfb\x99\x7b\x72\xfb\x10\x7c\x01\xbc\xcf\xda\x1e\xfa\x52\x2f\xf4\x48\xab\xa8\x69\xc9\x9d\x4e\x1f\x3f\x77\x99\x42\x5c\xa0\xc1\x12\x39\x4e\x12\x87\x01\x13\x7a\xe4\xcc\x8e\xaf\x98\x50\x4e\x7a\xff\xf3\xb1\xe1\x0b\x55\xb4\xe9\xeb\x43\x4b\x73\x4b\x0f\x17\x3a\xdc\xa7\x22\xf9\x17\x82\xe1\xd0\xd5\x87\x26\x71\x43\x07\xdf\x60\x8f\xcb\xd9\x9a\xa4\xc9\x03\x92\x1c\x1f\xdb\x64\x80\x86\xae\xba\x44\x31\x9c\xf1\xd5\xec\x27\x83\xde\x30\x85\x4c\x58\x97\x48\x0a\x0b\xa0\x00\xf8\x40\x7b\x6e\xf1\x3b\x37\x57\x84\xa7\xba\xc5\x7b\x44\xd1\x2c\x29\x3a\xeb\xe8\x77\x22\x1a\x42\xf6\x1e\x58\xd9\x3d\x6b\x41\x4b\xde\x86\x86\x25\x90\xf3\x19\x12\x9a\x0e\x75\x2d\x6b\xa5\xb6\x01\x1e\x90\xa1\xf0\x80\xe0\x7f\x38\x62\xde\x00\x8a\x2a\x8f\x14\xb2\x94\x93\x3b\xc5\x6b\x17\x57\xa4\xc0\x4f\x15\x09\xfa\x54\x38\x01\x69\x16\xc7\x28\xa2\xe0\x7b\xc7\xc7\x3a\x00\xda\xf1\x3d\x68\xbc\x92\xd3\xe6\x68\xd4\xf7\xb9\xf5\xff\xac\x47\xfa\x07\x30\x9b\x66\xd0\x8a\xd6\x39\x8f\x61\x75\x79\x87\xec\xb7\x61\x26\x33\x2a\xec\x68\x4a\x26\x7f\x35\x92\x11\xf2\x78\x40\xb3\x52\x4f\x99\x0f\x9f\x70\xda\x82\x44\x5a\x4f\xc7\x71\x18\x5c\x0a\xba\x2a\x97\xb0\xbf\x4c\x53\xa0\x52\xa3\x3e\x38\x3d\x52\x86\x9e\x07\xa7\xca\xc4\xc3\xa5\x8d\x80\x4c\x12\xc1\x98\xf7\xf9\xa3\x4e\xd1\x0b\xdb\x8f\xbc\xc4\xb1\x40\x1f\xb9\x0f\x7a\xa9\xb9\x08\x39\x05\xa2\x90\x40\x04\xd2\x12\x97\xbb\x12\x35\x54\x71\xce\x0a\xe1\x42\x05\xe2\xc4\xaf\x25\xbb\x44\x9e\xe2\x79\x32\xb5\x20\x06\x50\xc9\x44\xda\x5e\x63\x6b\x3e\x7b\x03\x32\x4b\xce\xb4\xfa\xf0\x97\xbd\xfa\x32\xd2\x96\x60\x44\xbd\xe9\xed\xad\x65\x29\xb7\x3d\xcb\x3a\xca\xf6\x42\xb1\xe9\x14\x25\x53\xe9\x42\xb7\xf2\x38\xf3\xa9\x03\x20\xaf\xfd\x59\xcf\xc9\x55\x12\x57\x20\x44\x11\x51\x7b\x29\xcd\xf1\xae\x53\x9e\x77\x88\xfb\xc0\x5e\xad\x26\x5a\xa9\xe2\x3e\x1b\x02\x33\xa8\xfc\x4c\x24\x62\x10\xf5\x4c\xca\x72\xd5\xee\x24\x1c\xf4\xad\x93\x4c\x8c\x53\x2d\x06\xa7\xc3\xe3\x63\xe3\xb1\xfa\x80\x78\x6c\x37\x1d\x17\x12\xd3\x3f\x2f\x27\xbf\x47\xfc\xc0\x99\x46\x7e\x11\x0f\xaf\x15\xed\x62\x7d\xb4\x19\x9b\xb9\x36\xd3\x4d\x55\x21\x55\xa6\xae\x36\x93\xcc\x01\x33\x3c\xe1\xc7\x28\x0a\x31\xe2\xfb\x36\x2b\xc5\x8a\x65\xe7\xdb\x5b\x0c\x07\x43\x00\x89\x98\x8c\x87\x39\x51\x1a\xf4\xe0\xe9\x50\x17\x71\x65\x00\x40\xec\x12\x83\xd0\x16\xb7\x82\xbe\xce\xaa\x04\xd0\xd4\x9b\x22\x32\xc1\xd9\x8a\x1b\xf2\x68\xd1\x85\xbd\xc0\x38\x1c\xb1\x55\x46\x01\x0a\x27\x76\xc5\x28\x68\x70\xb3\xf3\x25\xdc\x4a\x12\x79\x24\xb4\x6f\x7b\xfe\xe9\xec\xf4\xa5\x6a\x2d\x6a\x9a\x65\x3c\x04\x06\x69\x44\x3e\xc5\x3e\x62\xc5\xa6\x8a\xe1\x77\x71\x5a\xf8\x72\xb6\xa0\xc2\xe7\xb5\xcf\xe0\x7c\x1e\xf8\x7d\xeb\x46\xfd\xd7\x15\xff\xfb\x8e\xff\x6f\xa1\x7f\xea\xff\xac\x5c\xf2\x1f\xdc\x2c\x86\x27\x13\x98\xc7\x7c\x30\xb7\xf7\xfd\x7f\xbc\x41\x6c\xea\x50\x44\xfc\x68\x66\x83\xdb\x53\x75\x0c\x6d\xeb\x46\x50\xbd\x67\xac\xff\xf8\x98\xdd\xfe\x0e\xe4\xb6\x99\xde\xf7\x20\x05\xe9\x91\x89\xd5\x01\x7e\x64\x09\xf6\xd2\x1a\xda\x04\xf2\xbb\x17\x32\x60\x30\x71\xb6\x90\x3c\x70\x9f\xa4\x20\x2d\x7a\x46\x56\x72\x86\x95\x86\x91\x4a\xe6\x30\x4d\x1b\x28\x06\x1a\xba\x28\x1c\x88\xe0\x8f\x33\xe5\xa0\x8b\x9d\x9f\x2e\xde\x68\x4d\x80\xfc\x21\xe5\xbc\x82\xe4\xa6\xc9\xe0\x0a\x11\xec\x55\x12\xc1\x9e\x69\xe7\xeb\x0d\xa5\xba\x2f\x3d\x62\x4a\xde\x52\x6b\x90\x09\x5b\xa1\x5a\x20\xcd\x45\x67\x82\x05\x4e\xf9\xa1\x90\x42\x87\xc2\xad\x68\x20\x06\xd0\xe1\x26\xab\x6a\x26\x52\x1c\x56\xef\x9c\xbc\x6b\x9a\x1d\x32\x2d\xd0\x98\xf7\x64\xfe\xcd\x92\xc1\xec\xc8\xc0\xdb\x2a\x92\xc0\x92\x19\x12\xa8\x70\x4f\x90\xc4\x5c\x43\x2d\x6e\xbb\xe2\x33\x7e\x7f\x89\x27\xe9\x9d\x0a\xda\xf9\x54\xaa\x84\x6c\xab\xa9\x8c\xbb\x25\x6f\x08\x96\x45\x56\x05\x2c\xeb\x8e\xd8\x2c\xb8\x09\x48\x72\x82\xbc\x50\xa4\x1c\x54\xc5\xfc\x6a\x73\xce\xa8\xe6\xa2\xe9\x28\x8c\xbc\xcb\x80\x4c\xb2\x3e\xf7\xe6\x44\x21\xad\x64\x6f\xf8\xb7\x55\xa6\xe1\x3c\xa3\x10\x5c\x6a\xfe\xae\x5f\xed\x86\x99\xb1\x7f\x00\xaa\x89\xf6\x97\xf3\xa4\xe8\x62\x65\x62\x57\xb7\x77\x62\x4c\x93\x20\x61\xf6\x52\x94\x71\xeb\x2f\xdf\xea\x3c\x64\xfd\x3c\x1a\x33\x2f\x1a\x27\x9c\xf0\xe0\x05\xf6\x28\x66\xaf\x5e\xf6\x0b\x95\xd2\x44\x49\xb9\x14\xa4\x30\x8c\x26\xd1\xbc\x32\xb2\xb2\xf0\x65\xc9\xc4\xdb\x96\xf8\xb0\x25\xa3\xb9\x49\xfd\x8c\xc7\x18\xfb\xfc\xbe\x11\xd2\x13\xa7\xd3\xfc\xb0\x4b\xf2\x8a\xe3\xc8\x11\x9d\x33\x9d\x6c\xf6\x4e\x24\x12\x78\x29\xbf\x54\xd8\x44\x00\x5a\xa2\x8b\x25\xe8\xf2\x66\xfb\xb4\xda\x13\x71\x14\x06\xde\xe2\x04\x25\xdd\x19\x22\x8b\xba\x0d\x24\xf3\x11\xcd\x02\x12\xcc\x82\x5f\xf1\x9b\xc8\xc7\x15\x8e\xea\x45\x45\xee\x3f\xad\x7b\x3a\x3d\x98\xdb\xaa\x94\x59\x7d\xd5\x86\xa8\xd8\x0d\x7c\x7b\x3b\x18\x4a\xce\xd1\x5e\x55\xf6\x22\x77\xc9\xf0\x2c\x0e\xc5\x4d\x00\xf9\x71\xea\x73\xa1\x38\xad\x90\x99\x29\xe7\x95\x91\x48\x0b\x36\xa0\x43\x00\x91\x48\x6a\x50\xe5\x9f\x54\xfb\x4d\x35\x68\x81\x4f\x68\x18\x0a\x80\x9a\x86\x02\x10\xed\x76\x8f\xd6\x84\x02\xc8\x65\x46\x5f\x23\x14\x00\x01\xd0\x37\xe6\x74\xe7\xa1\x00\x68\x25\x14\xc0\xce\x97\xd4\xb2\x52\x28\x6a\x34\x16\x1d\xc2\x8a\x5b\xa4\x83\x57\x4f\x5a\xbe\x58\x05\xaa\xa9\x07\xb6\x00\x67\xe5\x53\x50\xbb\xaf\x98\xbb\x1c\x90\x61\x91\xe4\xbe\x15\xd9\x3b\x56\xb7\x96\xd9\x48\xb8\x5b\x30\xbe\xc9\x8a\x4f\x01\x64\x02\x8a\xa0\x62\xbb\xad\x9d\xbf\x55\xaa\x2b\x6a\xc2\xc0\x47\x14\xd7\x59\x54\x75\x9d\x2d\x29\x4e\xe2\x88\xf8\x3f\x45\xf4\xbf\xe7\x98\x2e\x3e\x60\x2f\xa2\x7e\xbf\xda\x29\xda\xf0\x27\xaa\x22\x57\xc2\x3d\x9d\x00\xf7\xa9\x4d\x9c\xf7\x9c\x28\x07\x38\x71\x43\xe3\x07\xd0\x22\x1b\xb2\x89\xa3\x7c\x5f\x5e\xf9\x98\xb0\x80\xef\xb3\x2c\xd9\x4e\x37\x90\xcf\x16\x16\xb4\x0c\x0f\x19\x0b\x5a\x2f\x11\x43\x1e\x26\x0c\xd3\xc4\x02\x85\xd1\xde\x46\x7e\x61\x28\x12\xf9\x85\x71\xf8\xfb\x95\x41\xb8\xb8\xcb\xc4\x9c\xf9\xe6\x52\x16\xeb\x02\x3a\xb6\x46\x84\xd1\x8f\x98\xa5\x44\x21\xa9\x25\x18\xd8\x44\x1a\xae\x42\x1a\xbe\x53\xa4\xe1\xed\x91\x26\xae\x9a\x34\x43\x5a\x82\xe9\x8a\xfb\x78\xae\x47\xd0\x31\xa8\x15\xce\x14\x47\x99\xef\xdb\x0a\x60\x6e\x62\xd3\x0c\x07\x6d\xa1\x84\xb4\x04\x5b\x69\xb4\x86\x80\xc2\xbc\x8f\x5b\x74\x8f\x0a\x8c\xe1\x00\x80\xb4\xc8\xaf\xd4\x94\xbe\x56\xfc\x0a\x8d\x42\x7c\x27\xdc\xca\x3d\x72\xb9\xf7\x45\x16\x3e\x44\x21\x4e\x72\xeb\x96\x7a\x70\x7b\xcb\xaf\xbd\xfc\xf7\xb3\xc1\xb0\xaf\xfe\xdc\xab\xf3\x59\x9a\x3d\x2e\xcd\x1e\xe7\xb3\x57\x7f\xde\xc3\x41\x91\x73\x28\xe5\x8f\x96\x4f\x57\xf6\xe1\x7a\xbe\x39\x09\xa3\x72\x42\x32\x21\x59\x75\xc5\x8b\x62\xab\xbd\x4c\x30\xb3\x16\xba\x6a\x49\xf1\xfe\x73\xc0\x54\x1d\xa6\xcf\x5a\x50\xaa\x91\x14\xf5\x6b\x0b\xc0\xe6\x32\x65\x40\x02\x56\x93\xa3\xb6\xb4\x77\x0a\x1a\xf8\x6c\x2e\xca\xfa\x79\x24\x3f\x94\x60\xad\x36\xc8\x26\x03\x97\x4a\xac\xcb\xbf\xa2\x7c\x69\xb3\x03\xa1\xe5\x3e\xf1\x1c\x4a\x57\x73\x1a\x85\x21\xa6\x52\xec\x14\xa2\xde\x0b\x81\x85\x5a\x21\x52\xb4\x91\xba\xcc\x92\x4e\x01\x1a\xaf\x6a\x33\x8a\x09\x45\x1e\xa7\xdd\x5a\x57\xed\xe4\x85\xc1\xb1\x13\x47\xb1\x4e\x10\x52\x34\xa1\x28\x6d\xb1\x63\x01\xfd\x1d\x29\x91\xb6\xfb\x8e\xb2\xf8\xa8\xef\x28\xb3\x8f\xc8\x03\x90\x05\xcd\x28\x71\x58\xb9\x6e\x1c\xa9\x3d\xd3\xaf\x55\xab\x14\x66\x96\x42\xe1\x69\x56\x8f\x41\xac\x5a\x94\x91\xb4\xda\xa2\x0c\x5e\xa1\x45\xa6\x9f\x90\xde\x12\x75\x7a\x82\x35\x4b\xe5\xad\x5f\xe4\x0d\x9a\x02\xad\xf1\xa8\xd6\x15\x48\xf0\x57\x75\x05\xe2\xb1\x05\x95\x41\x58\xfa\x4e\xe4\xe8\x12\x8f\x41\x0a\xe7\xb5\xa8\xd9\x7d\x66\x55\xb8\x00\xd0\x92\x9f\xac\x98\x99\x6a\xaf\x66\xe6\xd7\x2e\x49\x93\x99\x49\x2d\x77\x3b\xf5\x8a\xfc\x62\xc5\xc4\x54\x7b\x8d\xb2\x35\x5a\x2a\xf1\xed\x71\x40\xfc\x1f\x17\x17\xe1\x7c\x62\x2f\x7d\xaf\x28\x00\x15\x18\x28\x92\xac\x4a\x47\xd2\x90\x0d\x60\x66\xd1\x2d\x36\x79\x9f\x19\xbd\x01\x0c\xfc\xe2\xbb\x5c\xeb\xc5\xe5\x1a\x09\x38\x56\x70\xd4\xaa\xcf\x0c\x55\x59\xed\x60\x35\xfa\x33\xfd\xd4\x02\x30\x57\xc2\xd5\x02\xf4\x7e\x23\x40\x32\x45\xe2\xdd\x29\xe3\x84\xe9\xf4\x68\x6b\x95\x1c\x76\x9f\xda\x4c\xeb\xd2\xeb\xf7\xcd\x4a\x16\xc9\x7c\xc2\x69\xbd\xd2\xae\x26\xa5\x97\xc8\x65\x2a\xf4\xbe\xf5\x85\x0f\x66\xd5\xfc\x6e\x96\x46\x02\x1a\x55\x15\xf3\x48\x57\x38\x85\x57\x70\x92\xa7\x98\x58\xe4\x2a\x00\xb2\xb7\x91\xea\x7a\xb2\xef\xcc\x58\x15\x15\x69\x92\x96\x5c\x5a\x84\x02\x92\xd6\xc4\x56\x87\x03\x3c\x74\xa9\x8a\xad\x0e\x8b\xb1\xd5\xe6\x4f\x18\x96\x63\xab\xc3\xda\xd8\xea\xf0\xf6\x36\x2c\xc7\x56\x87\xc5\xd8\xea\xd0\x25\x4d\x62\xab\x4d\x45\x8c\xd6\x3e\xde\xde\x92\x14\xc0\x10\x40\x64\x18\x92\xc2\x52\xe4\x73\xa8\x62\xab\x0b\xcf\x9f\x85\x6b\x2a\xb1\xc2\x70\x7d\x6c\x75\xf9\x0b\xf5\x1b\x23\x14\xe0\x89\xd8\xea\x70\x37\x93\xdb\xc5\xeb\x4f\x7f\xfa\xfc\xe7\xf3\xbf\xb9\xd8\x79\xff\xe1\xd5\x9b\xe7\x1f\xfe\x26\x7e\x65\xa6\x37\xf3\xa1\x35\x0f\x7c\xeb\xc8\xe8\x63\xbd\x7a\x29\x9d\x24\x3e\xbb\x36\x91\x9c\x3f\x62\x8c\x02\x5b\xd7\x41\x00\x90\x56\x3f\x46\xd5\x8f\xc3\xaa\xc7\x30\xf3\xfd\x17\x20\xc8\x6c\x49\x29\x80\x49\xf5\x18\x41\xf5\xe3\xa8\xf0\x98\xcc\xf9\x99\xb6\x00\x9c\x57\x3f\xf6\x1a\xa6\xa8\xa8\x0a\xc3\x50\x25\x18\x04\xb6\xa0\x0f\xa5\x03\xa6\x7e\xf8\xea\xa5\x05\x67\xa5\x67\xc6\xbd\x04\xe3\xd2\x3b\x29\xfb\x8f\x4b\x4f\x3f\x2e\x62\x6c\xc1\x51\xe9\xe9\x87\x79\x88\x13\x0b\x4e\x4b\x8f\x25\xd3\xf1\x4a\xf0\x7e\xf0\xaa\xf4\xf2\x4d\xe4\x07\xe3\x85\x7a\x39\x91\x2f\xd3\x14\xfa\xee\x3b\xdb\x33\xb2\x32\x48\x60\x06\x64\x08\x77\xc9\xc7\x00\xe0\xac\x3c\x2e\xc7\xc7\x80\xee\x3a\x6c\x5c\x1e\xd6\x44\xe9\x00\xed\x3a\xfc\xb8\x3c\xbc\x5c\x95\x41\xb8\xeb\xc0\xa3\xf2\xc0\x72\x61\x07\xc9\xae\x03\x4f\xcb\x03\xab\xbd\x31\x08\x76\x1d\xf9\xaa\x3c\x72\x61\x7b\x0d\xa2\x5d\xc7\x9f\x94\xc7\x2f\xec\xd0\xc1\x7c\xd7\xf1\x3d\x93\x13\xf8\xbc\x9e\x13\x98\xb3\x69\x77\x86\xd9\x34\xf2\x37\x71\x04\xd0\x12\xc9\x1a\xba\xfe\x9a\xf0\x3f\x55\x48\x66\x1d\x8b\x00\x17\xf0\x1d\xfc\x0c\xdf\xc3\x4b\x78\x0d\xcf\xe1\x0d\xfc\x05\xbe\x80\x6f\xe1\x05\xfc\x15\xbe\x81\x2f\xe1\x6b\xf8\x11\x3e\x87\x1f\xe0\xab\x9c\x95\xf8\xf1\x90\x58\x89\x4f\xdf\x58\x89\x6f\xac\x44\x0d\x2b\x21\x48\xaa\x60\x26\x7e\x76\xed\x3b\xe0\x1a\x76\xe3\x0f\x36\xb0\x1e\xf3\x36\x8d\xbd\xa6\x8d\xc3\xc8\x43\x21\xef\xe1\x57\x4f\x71\x66\x3e\xe6\x97\x9e\x14\xe6\x54\xf5\x68\xdf\x89\xa8\x6d\xbd\x0c\x92\x38\x44\x0b\x65\x32\x90\x26\x3f\x38\x2e\x76\x1c\x55\x0f\x3f\xad\x66\x85\xae\xaa\x1f\x4f\x8a\x63\x2e\x8a\x3f\xdf\x95\xe6\x66\x5b\x6f\xd0\xcd\x47\x2e\x2e\x7e\xfc\xf8\xda\x02\xf0\xf3\x0e\xfc\xd5\x8f\x26\x7f\xf5\x5e\xf1\x33\x3f\x16\xf8\xa5\xcb\xd2\x53\x93\x1d\xb8\xae\xe8\xa1\x6a\xe9\x9d\x97\x5e\xe5\xf2\x31\xbc\x29\x8f\xa8\x2c\xc0\xe2\xe5\x2f\xe5\x97\xe6\x22\xbc\x28\xbd\x14\x58\x78\xcd\x97\x5a\x58\x78\xde\x96\x5f\x0b\x0e\xe0\xa2\x6e\x92\xea\x1e\xff\xb5\xf4\xfe\x8d\xb8\xa5\xe4\x07\xdf\x94\xde\xbd\x50\x59\xdc\x5f\x96\xfb\x18\x2b\x02\x5f\x97\x3b\x99\xb7\xfa\xc7\x72\x4f\xf3\x4a\x7e\x5e\x8b\xeb\xc4\x82\x1f\x4a\x2f\x67\x98\x21\x0b\xbe\x52\x7c\xe6\x04\xb3\x8e\x9e\x42\x26\xba\x17\x0b\x55\x09\x05\x80\x31\x53\xce\x9c\xbe\x77\x3f\xd9\x9f\x57\x99\xd3\x9d\xb9\xc8\xcb\xf2\xb8\x8a\xcd\xdb\x99\x7f\xbc\x2e\x0f\x5c\x60\x4f\x77\xe6\x22\xcf\xab\xe6\xad\xb6\xf4\xee\xac\xe4\x4d\x79\x74\xe3\x54\xec\xce\x4e\xfe\xb2\x82\x1a\xf3\x60\xed\xce\x4e\xbe\x58\x19\xdf\x3c\x9b\xbb\xb3\x93\x6f\xcb\xe3\x97\x8e\xf7\xc0\xdb\xf5\x0b\x17\x2b\x5f\x90\x32\x82\xbf\xeb\xc0\xbf\xd6\x6e\x1b\x2d\x2c\xcc\x76\xfd\xc4\x9b\xf2\x27\x4c\x3a\x35\x88\x77\x1d\xfe\x65\x79\x78\x4d\xea\x06\xe3\x5d\x87\x7e\xbd\x32\x73\x93\x5a\x0e\x46\xbb\x8e\xff\x71\x65\xea\x05\x31\x6a\xba\xeb\xf8\xcf\x57\xe6\x5f\x10\xa3\xae\x76\x1d\xff\x43\x3d\x49\xe3\x3b\x67\xb2\xeb\xf8\xaf\xca\xe3\xcb\x9b\x63\xb0\xd8\x75\xe0\xaa\xe3\x2a\xd7\xf4\xdd\x70\xa3\xb3\x57\x75\x57\x00\x8d\xe7\x00\x7e\x36\x25\xcc\x9f\xd7\x4a\x98\x23\x99\x39\xae\x4b\x05\x63\x7d\x1f\x4a\xe7\xb2\x44\x99\x4b\x8e\xbf\x1c\x92\xe4\xf8\xe2\x9b\xe4\xf8\x4d\x72\xdc\xa0\x84\x7e\x7b\x9f\x4a\xe8\x76\xe2\x64\x9d\x28\x58\x29\x64\xde\x85\x38\xd9\x4c\x66\xcc\xa5\xb7\xb8\xfa\xf1\x78\x07\xb1\xec\x17\x53\x2c\xd3\xaa\xe9\x5f\x0c\xb5\xf7\xb4\xf4\xcc\x64\x82\xaf\x4a\xef\x0c\x0e\x76\x52\x7a\x65\xb0\x9f\x8b\xf2\x88\x26\xef\xf8\xae\xf4\xf2\xf9\x9c\x4d\xdf\x28\x65\xde\xe7\xd2\x3b\x9d\x8c\x20\x97\x27\xf5\x9b\x1f\x03\xe2\x4b\x86\xeb\xb2\xe2\x8d\x64\x64\xae\x4b\x6f\x0a\x57\xf9\x79\xe9\x65\xe1\x1e\xbe\xc9\x14\xee\x23\xf7\x85\x3d\xbe\x07\x85\xfb\xb4\x3c\xee\xdd\x28\xdc\xaf\xca\xc3\xde\xad\xc2\x7d\x52\x1e\xde\x94\x68\x76\x96\x97\x16\xe5\xd1\x4d\x89\x66\x67\x79\xe9\xdd\x0a\x6a\x0a\x12\xcd\xce\x12\xd3\xe7\xf2\xf8\xe6\xc6\xde\x5d\x60\x7a\x5f\x1e\x3e\x3f\x1b\xbb\x4b\x4b\x97\xe5\xc1\xf3\xe3\xb5\xbb\xa0\x74\x5d\x35\xb8\x12\x35\x76\x16\x96\xce\xcb\x83\x17\xf9\xf5\x9d\x25\xa5\x9b\xf2\xf8\x45\x7e\x7d\x67\x51\x69\x6c\x32\xa5\x6f\xd7\x32\xa5\x5e\x14\x51\x3f\x20\xc2\x4f\xe8\xae\x59\xd2\x9c\xfd\xbc\x3a\x24\xf6\x73\xf2\x8d\xfd\xfc\xc6\x7e\xd6\x19\x2e\x22\x5f\x19\x2e\x16\x3b\x31\xa0\xf7\x62\xc7\x30\xfc\x1c\xb6\xe7\xec\xae\x4c\xce\xce\x53\xfc\x8c\x7e\x28\xc0\xcf\xdc\x1c\xae\x32\x9d\x73\x44\xfd\xdc\xd3\xe1\x2a\xe3\xb3\x26\xb2\xf4\x7e\x5c\x7a\x61\xb2\x0f\xe3\xd2\x3b\xe3\x76\x1e\x95\xc7\x5b\x10\xef\x63\xc0\x29\xfc\x34\xe3\xa4\x3c\x77\x62\xcf\xef\x81\x93\xf2\xcb\xe3\x4a\xc8\x77\xe7\xa5\x66\xe5\x81\x15\xf2\x76\x67\xa3\xe2\xf2\xc8\x19\xfe\x77\x67\xa2\xc6\xe5\xb1\x0b\x1c\xe0\xce\x5c\xd4\xa8\x3c\xfc\x9d\x6a\x9d\xa7\xff\x9f\xbd\x77\xef\x6e\xdb\xc6\x1e\x45\xff\xf7\xa7\x48\x78\x7b\xbc\x88\x29\xcc\x24\xf3\x9b\x7b\xd7\xbd\xea\x30\x3e\x8e\xed\x34\x6e\x1d\xdb\xb5\x9d\x76\x3a\xba\x5a\x2e\x44\x42\x12\x23\x8a\x54\x41\xc8\xb6\x22\xf1\xbb\x9f\x85\x17\x09\x82\xa4\x1e\xa6\x9c\xc6\xae\x66\xd6\x6a\x2c\x00\xdc\x78\x6f\xec\xf7\x2e\x2d\x4c\x76\x90\x9a\x53\x50\x13\xfd\xa9\x9d\x2e\x7c\x6a\x7d\x6f\x33\x4f\x6c\xfe\xac\xfa\x4f\xe9\x59\x1d\x6d\x9f\xd5\xbf\xc7\xb3\xfa\xfe\xfc\xf2\xf8\xe4\xc7\xb3\x75\x1f\x59\xfd\x33\x1d\xbf\xd4\x18\x0e\x8c\x9b\x09\x80\xba\x22\xd0\x4f\x49\x02\xa4\xca\x2b\x04\x32\x7c\xce\x49\x83\xa7\xd5\xd7\x9f\xd6\x40\xbe\x6e\x7e\x41\x97\x1d\x1b\xa5\x5c\xb7\x64\xc1\x89\x51\xfc\x11\x27\x83\xe3\x88\x1d\xd1\xfc\x91\xe6\xf9\x17\x46\x76\xf2\x08\xaf\x61\x6c\xc2\x95\x8c\x56\xe3\xd7\x70\x62\x02\x96\xf3\x6d\xfe\x1a\x7a\x26\xe4\xc2\x92\x35\x7f\x11\x13\x1d\xef\x8f\x17\xe3\xfd\x20\xf1\xe2\x5b\x4c\xa6\x7b\xde\x00\x05\xd1\xe6\xf8\xac\xfc\x21\x18\x3f\xa5\x87\xa0\xb7\x7d\x08\xfe\x1e\x0f\xc1\x03\xf8\x2b\xdd\x99\x9a\xa3\xf9\xee\x63\xc8\xf9\x0d\x36\x8b\xb1\x57\x0f\xc7\xea\x63\x1d\xab\x2b\xfc\x3d\xce\x78\x20\xcd\x39\x7c\x62\x54\xea\x44\xb4\x67\xd4\x1d\x0a\x54\xe1\x1b\xc5\x42\x31\x3a\xca\x30\x7e\xec\xf6\xec\xe0\x11\x30\xfe\xc4\x84\x5b\x98\x48\x73\xc4\xef\x99\xf0\x37\x2b\x52\xf6\x4d\xf0\x72\x39\x9b\xe3\xfd\x91\x09\x59\xaa\xaa\x1b\xf3\x40\x81\xfe\xa0\x74\x17\x3e\x28\x7d\x44\xf1\x1d\x9a\xee\x79\xca\x00\xa2\x94\x0d\x97\x27\x8d\xe3\xad\xf7\x7a\x04\x71\x36\x30\x79\xa5\xfe\x5a\xdc\x2a\xcf\x8e\xbf\xca\xeb\x24\xde\x1c\x1e\x33\x46\xbd\x4e\xf9\xab\x34\x79\x4a\xaf\x92\xb7\x7d\x95\x9e\xed\xab\x24\x1f\x1f\xf6\x9e\xf8\xae\x8d\x44\x5a\xa3\xa2\xd0\xac\x82\xde\x67\x30\x42\x91\x4e\x07\x11\x82\xa6\x0b\xb5\xb5\xed\x4e\x43\xe6\x60\xa2\x34\x97\x49\x12\x7b\x01\xa2\xd8\x97\x28\xf7\x30\x9e\xb0\x3b\xab\xf8\x85\xac\x9d\xef\x13\x9c\x24\xec\x9a\xc6\x1a\x03\xe0\x15\xa9\xde\x3a\x68\xcd\x51\x6c\x5c\xea\x2a\x1f\xd0\x86\xc9\x6b\x7f\x21\x36\x1c\x60\x14\xd2\xc1\x9e\x37\xc0\xde\xf0\xeb\xe2\x42\x3d\x52\x8a\x8f\xbd\x98\x20\x1a\x93\xe4\x95\x0a\x8f\x5a\x93\x01\x8c\xe3\x96\x87\x7a\x85\xe4\xc8\xf5\xf4\x29\x21\xd7\xeb\x2d\x72\x7d\xb6\xc8\x15\x3b\x89\x37\xc0\x23\x94\x93\xf8\xf2\xf7\xec\x8a\x22\x3a\x49\x5a\x33\x14\x86\xf1\x1d\xf6\x39\xb2\x4c\x5a\x6d\x6b\x8c\x92\x44\x24\xe4\xbb\x43\x24\x12\x7f\x79\x24\xa0\x01\xe3\xfd\x3b\x29\xbc\x9e\x8e\x71\xf9\xab\x04\x93\x9e\x05\xad\x2c\xfb\xec\x80\xd2\xb1\x05\x2d\xea\xf1\xff\x52\x76\x1d\xfd\xd8\x1b\x32\x5c\x6e\xf5\xc9\xd8\xb3\xa0\x85\xc2\x00\x25\x56\x27\x4d\x39\xea\x3f\x70\xed\xb0\x80\xfa\x8b\x4a\x97\x72\x71\x20\x92\xd8\xc9\xfb\x0c\x6c\xcb\x82\x62\x14\x52\xf1\x52\xfe\x62\x52\x5d\xec\x55\x17\xfb\xd5\xc5\xa3\xea\xe2\x71\x75\x71\xaf\xba\xb8\x2b\xc6\xce\xf6\x97\xaf\x20\xb0\xdb\x1d\xe9\xf5\x51\x7a\xce\xa4\xdb\x07\xc9\xd8\xa1\x7e\x01\x66\x2e\x2a\x9b\x96\x1c\x3d\x54\xbc\xac\x23\xab\xca\x0d\x84\x2b\xfb\x9b\xf9\x7f\x9c\x16\xc4\x63\xca\x60\xe7\x34\xe3\x92\xb0\x37\x3c\x39\xca\xed\x75\x4e\x0b\x8e\x15\x77\x46\xa9\x38\x90\xb9\x99\x4e\x06\x3c\xe6\x28\xfe\xde\x28\x3e\x9f\xd0\xf1\x84\xe6\x1e\x1f\xa7\x55\x4c\xdd\x61\x75\x25\x1b\xd4\x59\xa9\x1b\x5f\xf3\xf6\x30\x3e\xb8\x46\x7d\xcd\xd5\xe3\x34\x33\x72\xea\xf1\xfb\x1c\x47\xb9\xab\x87\xaa\x3b\xbe\x1f\xc7\x09\xf6\x33\x5f\x0f\xee\x61\xf1\x73\x10\xf9\x76\x21\x1e\x1f\x77\xaa\xc8\x46\xb5\xcf\x83\x8e\x59\x2d\x15\xc9\xcc\xe2\x5f\x71\x50\x0c\xeb\x65\x9f\xb6\xd5\xfd\xe2\x57\xa9\xe3\x04\x91\x17\x4e\x7c\x9c\x08\x1f\x0d\xb6\xbc\xc2\x39\xe3\xba\xd2\x89\xa2\xf1\xfb\x3f\x34\x01\x67\x3b\xdd\x9c\xd3\xba\x33\x61\x4b\x9b\x94\x00\x36\xd6\x06\x1d\x9b\xa0\xd5\x89\x6b\x6e\x4d\x73\x5f\x5a\x6a\x71\x68\x9b\x9b\xd2\x7c\x36\x21\xab\x73\xdf\xdc\x90\xe6\xb0\xb4\x1e\x05\x31\x42\x63\x43\x9a\xb3\x1a\xf8\xfc\xa0\x34\x36\xa3\xb9\x2a\x2f\x39\x57\x02\x37\xf6\x37\xf8\x52\x33\x6c\x81\x03\xda\x5d\xd8\xd8\x23\xe0\xa3\xd9\x83\x8e\x48\x9a\x3b\x04\x1c\x99\xe0\x33\x5c\xd4\xdc\x19\xc0\x80\xcc\x10\x9a\x70\x05\x58\xcb\x5e\x9f\x7f\x66\xd8\xea\x57\x8d\x99\x0d\xe4\x01\xee\x00\xf9\xb7\x8b\xfc\x01\x0e\x16\x32\x2e\x01\x4f\xe2\x1f\xc4\xd1\xde\x18\x93\x51\xc0\x33\xf1\xee\x31\xac\xbb\x37\xc0\xc8\xe7\x82\xb0\xb5\x99\x99\x15\x04\x36\x2b\xf9\xa6\x6f\xc3\xd7\x6c\xf9\x8c\x6f\x9c\xcf\x10\x61\xf1\x6e\x5c\x1e\x97\xbe\x35\x23\xf8\xcf\x49\x40\xb0\xcf\x3e\x83\x1f\xf8\x05\xaa\xe6\x23\x8e\xef\x91\xc7\xae\xca\x05\xc1\xbd\xe0\xde\x82\xd6\xd5\xa4\x27\xfe\xb8\xc4\x7d\x7c\x2f\x6a\x12\x76\x9d\x3a\x3c\x25\x82\xec\xf5\x86\xf3\x10\x17\xd2\x5d\x3d\xaa\xd6\x3b\x94\x8b\xc3\xea\xe2\xa4\xba\x38\xa8\x2e\x8e\xf5\x62\xc6\x65\x94\x7d\xc1\x1d\xc7\xb9\x71\xf2\x69\x3b\x85\x59\x33\x0e\xc4\xa0\xcd\x97\xb4\xf7\x37\x10\x12\x47\x3c\xf2\x66\xfc\x1b\xb9\xfc\x66\xe8\x1b\xb5\x1b\x66\xf0\x1b\xb5\x39\xa5\xf0\x37\x62\xaf\xcc\xf0\x37\x6a\xeb\x4a\xa1\x6f\xf8\xc4\xf2\xa0\x37\x8c\xe8\xcd\x67\x9f\x47\x12\xab\x5f\x13\x1e\x6c\xce\xc6\xee\xdb\x42\x7a\xa8\x36\xee\x30\x3a\x78\xe4\x9e\xdb\xfe\x63\x28\xc8\xc7\x26\x60\xb9\x7c\x9b\x09\x73\x53\x80\xac\x76\x60\x33\x81\x6e\x0a\xa0\xd5\x26\x6e\x26\xd4\x4d\x01\xb4\x3c\x07\x9b\x09\x75\x63\xae\x87\x38\x4a\x9b\x09\x73\x53\x80\x2d\x4f\x63\x73\xae\xc0\x80\x9b\x1f\x5e\xc1\x18\x2c\xa3\x69\xea\x3e\x06\xd0\xd7\x89\x1a\x5f\x27\x6a\x2e\x1e\x46\xd4\x7c\x6b\x6a\xaa\x32\xd5\xb3\x53\xb6\x00\x7f\x0a\x34\xcf\x74\x4b\xf3\xfc\xcd\x68\x9e\x73\x77\x76\x81\xe8\xa0\x9a\xbc\x61\x35\x19\x69\xc3\x7e\x64\xf4\x0e\xa2\x03\x81\x2d\x3b\x29\x14\x2e\x44\x15\xb2\xd9\x1f\x8f\xaf\x2d\x68\x7d\x38\x3e\x38\x62\x9f\x9c\x5f\xb1\x5f\x17\x9f\xd8\x7f\x8f\x8e\x4f\x8f\xaf\x8f\x2d\x68\x1d\x9e\x9f\x9d\x1d\x1f\xb2\xa2\xf3\x0b\x9e\x96\xdb\x82\xd6\xf5\xe5\xc1\x21\xab\xbb\x38\xb8\x3e\xfc\x50\x24\x9c\xce\x55\xd0\x40\x54\x2d\xa9\x7c\x80\x4c\x36\x72\x14\x22\x38\x90\x92\xcc\xa5\xbc\x54\x4e\x44\x99\xb2\xcf\x1a\x6a\xea\xdc\x51\x6b\xbc\x0a\x2d\x55\xdf\xba\x09\x25\xd5\xcf\x8c\xe2\xb3\x6d\x54\xe4\x94\x5e\xa5\xb6\x7b\x5c\x51\x27\xdf\xc7\x9e\x51\xf5\x41\x72\x98\x5d\xa3\x5c\x9e\x8b\x9c\xb0\xd2\x61\x65\x54\x15\x27\x9f\xd4\x84\x73\xe2\xa9\x6e\x11\x32\xd2\x49\x2d\x7a\x21\x5d\x78\x46\x42\x4d\x8d\xf7\x37\x9f\xf4\x26\x8c\xe3\x2b\xa0\x6f\x8e\xe2\xe9\x55\x81\x57\xa4\xc9\x06\xcc\xe3\xa7\x55\x2f\xf5\x66\x6c\xe3\x0d\xd0\xd9\x01\x68\x4e\xf5\xdc\x56\x2d\xca\x26\x88\x9e\x0a\xb0\x0f\x24\x79\xb2\x4f\x17\x11\x3c\x37\x29\xe0\x01\xd3\x57\x27\x78\xbe\x35\x5a\x67\x6b\x92\xb3\xa5\x6c\x9e\x04\x65\xe3\xbb\xb3\x03\xbe\x38\xad\xa2\x85\x8d\xc5\xdf\x13\x0b\x9a\xd4\x8a\x2c\xb6\x7c\x1c\x4d\x8b\x54\x87\xcf\xa9\x8e\x51\x0d\xd5\x51\x61\xc0\xe3\x3b\xa2\x67\x47\xaf\xc9\x2d\x80\xd4\x6d\x5c\x44\x6b\x58\x1b\xb2\x00\xf2\x84\x98\xde\xb4\xf8\xf9\x70\x7d\x7d\xb1\xd8\xd8\x47\x7e\xf8\x08\xc6\x3d\xa2\xef\x0d\xdb\xf5\x8c\x56\xe3\x24\x97\x87\x63\x5d\x15\x77\xae\x6b\xae\xb3\x94\x65\x5c\x3d\x88\x2b\x7c\x07\x3f\xc1\x0f\xf0\x3b\xf8\x33\xfc\x13\xbe\x87\xbf\xc3\xdf\xe0\x8f\xf0\xd7\x1c\x31\xff\xf2\x94\x10\xf3\x7f\xb7\x88\xf9\x19\x23\xe6\xcd\x04\xe8\xf9\x49\xa2\xde\xbf\x3a\x82\xab\xca\xeb\xb4\x4e\x20\xd7\x7f\xac\x15\xc9\x55\xeb\xa1\x32\x2e\x4f\x6d\x0f\x2b\x85\xeb\x59\x00\x44\xa0\x33\x2b\xcd\x8c\x80\x34\x6b\x1f\x75\x92\x56\x0a\xff\x5a\xb4\x03\x5a\xd9\x17\xae\x5f\x3d\xfe\x42\x74\x58\x8b\xa7\xa0\x01\xf0\xbc\xaa\xf0\xa6\x1a\xc0\x45\x75\xf1\xb0\xe8\xb3\x71\xa7\xff\xac\x31\xc8\x3d\x5e\x5d\x5a\x60\x01\x78\x5f\x8e\x63\x8b\x29\xb2\x00\xfc\x5c\xaa\x38\x49\x3e\xa2\x08\xf5\xb1\xff\x6e\x7a\x78\x79\x64\x01\x78\xd8\xe0\xe1\xff\x45\xf7\x20\x51\x46\x43\xbf\x68\xc1\x94\xae\x8c\x32\xdd\x59\xe2\x8b\x59\xa7\x07\xa0\xf9\x68\x54\x5e\xc5\x13\xe2\xe1\xb3\xab\x3c\x3e\xac\x51\xc3\xd5\x16\xa7\x65\x90\x34\x88\x78\xa8\x73\xf6\xe9\xf5\x82\x6a\xfe\xfd\x81\xd1\xe0\x82\x60\x0f\xfb\x38\xf2\x70\x1e\x23\xb6\xd8\xaf\x60\xdf\x4e\x8c\x3a\x45\xcf\xbc\x33\xca\x4f\x71\x1f\x79\x53\xb6\x30\x9f\x2a\x6b\x2c\xf8\xc1\xec\x25\xf3\xf8\xfe\xce\xa8\x11\x91\x5d\xfc\x03\x6a\xc1\x9f\x8d\x2a\x91\x25\x89\x57\xfd\x59\xf9\x95\x8c\xd7\xf2\xde\xa8\x2c\x04\x73\xf9\xdd\xac\xe4\xee\x22\xbf\x19\xa5\x97\x38\xe1\xeb\x90\x58\xf0\x47\x73\xf1\xb2\x13\x9a\x58\xf0\x57\x4d\xfe\x52\x3c\x82\xb9\x14\x26\x7b\x9d\x8c\x94\xea\xdc\x70\x8b\x75\x3f\x9f\xcf\x52\x90\xc9\x64\x66\x21\xa6\x6d\x0a\xa3\x8e\x8b\xe5\x0b\x6e\xb1\x33\x4c\x22\x14\xee\x89\x41\x71\x23\xb2\xdd\x5d\x6b\x38\xe9\x62\x12\x61\x46\x4a\xb9\xae\x1b\xa5\x6a\x18\xc7\xbe\x78\x62\xb3\x21\xbc\xe4\x5d\x15\xc7\x97\xa6\xf0\xcc\xfd\xaf\x7d\x58\xf6\x55\x6a\x4c\xac\x5e\x99\x70\xb9\xf5\x4f\x63\x52\xf5\x8b\x09\x76\xb3\x31\x0f\x3e\x96\xc0\x6f\x36\x72\xd4\x91\x09\x3f\xbf\xfb\xcd\x45\x3b\xa7\x35\xc0\x37\x14\x67\xf7\xba\x62\x6d\x74\x0c\xd4\xdc\xe6\xed\x60\x51\x0f\x1b\x8a\x22\x75\x69\xf6\xa1\xe3\xc1\xe6\xb6\x6f\x27\xd5\x7b\x20\x25\x61\x8d\x8d\xdf\xde\x99\xe0\x33\xee\xb2\x07\x1b\x07\xc4\xfd\x64\x02\xcf\x51\x7a\xf3\x68\xb8\x1f\xaa\x81\x6f\xc2\xee\xed\xbb\xd2\x9a\xe7\xa1\x44\x1a\x1b\xbe\xfd\x6c\x02\xd7\xde\xa6\xe6\xa1\x70\xff\x34\xa1\x6b\xcf\x5b\xfb\xbc\x29\xf4\xf7\xd5\x63\x57\x11\xcd\x6e\x9a\xc2\xff\xdd\x84\x5f\x8c\x98\x76\xd1\x14\xfe\x6f\x25\xf8\xc2\xad\x73\xd8\x14\xf0\x8f\x26\x60\xed\xa9\x6f\xdf\x35\x85\xfe\x6b\x09\xc5\xe8\xd4\x42\xfb\xb8\x29\x7c\xf3\x61\x2d\x52\xbd\xb0\x7d\xbf\x5c\xde\xbe\x08\x00\x80\x87\xba\xd4\xbd\xd4\x9b\xa2\x2c\x2c\xd8\xfe\xbc\x76\x4f\xd9\xc7\x46\x2f\x87\xba\x08\xea\xa7\x85\x22\xa8\xe1\xed\x72\xd9\x93\x99\x2c\x3b\x48\xde\xc7\x21\xd7\xce\x7c\x5d\x71\x53\x2e\x4a\xfa\xf8\x94\x44\x49\x47\x5b\x51\xd2\x56\x94\x54\x23\x4a\xfa\x19\x4f\x85\x2c\xe9\xf4\x2f\x90\x25\x2d\xc8\x16\x58\x59\xec\xd7\x8a\x60\x46\xd5\xe0\x6b\xa3\x32\x57\x16\xaf\x22\xc7\xa9\x11\x82\xdc\x96\xa4\x17\x19\x8e\x02\xb0\x5f\xaa\x64\xab\x0e\xe0\xb4\x81\x3c\xe3\xa3\x2e\xcf\x50\x91\x99\x55\x21\x03\x9f\x85\x64\xfe\x58\x21\xd0\xb8\x30\xea\xb4\x68\xc0\x43\xa3\x4a\x0b\x13\x77\x67\x54\x9d\xc6\xde\xd0\x08\xca\xac\xaa\xde\x87\xdc\xcd\xe2\xde\x28\x96\x36\x79\x9f\x8d\xe2\x02\x21\x73\x68\x54\x16\xa8\x90\x33\xa3\xf2\x0a\x4b\x65\xf0\x95\x51\xa1\x91\x00\x5f\xea\x5c\xb7\x44\x1a\x5d\xb5\x51\xfb\x56\x4f\x6c\x58\xcb\x1a\xe2\xa9\xf0\xd9\x52\x75\x8b\x72\xe9\xfc\x8c\xa7\xf3\xb9\x65\x81\x34\x85\xe7\xee\x91\x3d\x7d\x04\xee\xfb\xc6\x84\xcb\x37\xb8\x39\xfb\x7d\x61\xc2\xdd\x2c\xfb\x3d\x34\xc1\xeb\x41\xa7\x1b\x33\xdf\x77\x26\x74\x3d\xa0\xe1\x06\xbc\xcc\x0c\xe8\xda\x61\xdf\x84\xa3\x99\x01\x5d\xde\x97\x4d\x38\x9a\x19\x90\x95\x19\xac\x0f\x1b\x73\xc3\x87\x26\xec\x22\x03\xd2\x98\x1d\x3e\x33\xe1\x17\x19\x90\xc6\x2e\x61\x57\x26\xfc\x0c\x7b\x34\x4f\x3f\xf3\xc5\x84\xad\xf3\x20\x8d\xd9\x6d\xf3\xfa\x0b\x7f\xad\xdb\xe5\xf4\x7a\xf9\x33\x00\xa7\x3a\xa5\x6e\x40\xce\x29\x6b\xc6\x6b\xaf\x05\x5d\x7b\xf0\x0a\x3d\x4c\x75\x5e\xe0\x74\x21\x2f\x10\x09\xdf\xbf\x8d\x68\xa2\x1f\x37\x5f\x28\x7c\xb7\x53\x4e\xc2\xf9\x14\x78\x81\x0f\x5b\x5e\x60\xcb\x0b\x2c\x51\x2b\x7f\xf7\xed\xe4\x0b\x7d\x10\x87\x50\x2e\x2e\x25\xfa\x2c\xfc\x5c\x94\xcd\xb3\x86\xde\x97\x3c\xc1\x00\x25\x1f\x51\xc4\x4d\x9d\x85\x77\xf1\x5e\x10\x25\x14\x45\x1e\x56\x8a\xde\xb2\x62\xb4\x10\x4b\xa7\xcc\x1c\x38\xbd\x20\xa4\x98\x64\x61\x1f\x12\x0b\x62\xa1\x87\x8e\xb0\x47\xf7\xc6\x24\xbe\x9f\x5a\x2f\x5d\xb6\xd9\xa2\x81\xc3\xd0\x7a\x55\xdc\x08\xee\xce\x9f\x38\xed\x8e\x25\x5d\xfb\x93\x43\x15\x00\x44\x15\x5c\x64\x51\x42\xc4\xef\xdf\x64\xac\x90\xaa\x40\x13\x39\x38\x46\x90\x2e\xaa\xbd\x58\x58\x3b\x6c\xc0\xf5\x7c\xd2\xb9\x1e\xc5\x8e\x7c\xd2\xb4\xb8\xc7\x46\x99\x4e\xd0\xde\x1b\x75\x1a\xbd\xf8\xd9\xa8\x92\x71\x96\x72\x66\xe4\x53\x21\xbc\xc4\x99\x51\x9a\x4b\xa8\xaf\x8c\x9a\x02\x85\xf4\xc5\xa8\x2c\x90\x37\x1f\x8d\x4a\x11\xf3\xee\xc8\xfc\x84\x97\x9e\x1a\xa5\xd7\xa8\xdf\xc7\xbe\x16\x1c\xea\xda\x68\xa0\x11\x23\x07\xe6\xd8\xb3\x63\x76\x69\x8e\x9d\x6f\x5a\xae\x32\xfe\xa4\x05\xc6\x55\x31\x00\xe4\x69\x4f\x32\x05\x32\x67\x9b\x44\x44\x06\xb6\x87\x77\x01\xf5\x06\xf6\xcb\xd7\x60\xe6\xa1\x04\x67\x2e\x7d\x4e\xf1\x3c\xb6\xa4\x52\x34\x0b\x50\xb3\x53\xd5\x5a\x1e\x4e\xd5\x58\xc5\xb5\xa9\x6c\x2b\x0f\xb6\x6a\xab\xa2\xe1\xec\xc8\xa3\xa6\xca\xf1\x68\x4c\xa7\x56\xca\x07\x5d\x1c\x92\xc1\x24\xca\x03\x2c\xef\x26\xbf\x90\x6a\xac\x2e\xbf\x8b\x7c\xc6\xc0\x09\x71\xd4\xa7\x03\x0d\x9e\x1c\xc8\x52\x70\x6a\x84\x8b\xa1\xc9\x25\x58\x0a\x4d\xad\x4d\x15\xb4\x14\xde\xb9\x1f\xec\x61\x99\x4d\x6d\xec\x48\x79\x6c\xc2\xe5\xba\xa6\xc6\xdc\xef\xbd\x09\x76\xb3\xc9\x5e\x3f\x9b\xe0\x37\x9a\xbc\xe8\xd0\x84\x9e\xa1\x96\xe6\x1c\xf0\x99\x09\x5b\xc6\xce\x68\xcc\xfc\x5e\x99\x80\x35\x15\x5c\x63\xde\xf7\x8b\x09\xbc\xc8\x45\x36\xe6\x80\x3f\x9a\xf0\x8b\x5c\x64\x63\x95\xf3\x91\x09\x5f\x46\x27\x6d\xcc\x5e\x9f\x96\x06\x2e\x00\x37\xe6\xab\xaf\x4d\xc0\xa5\xf7\xa2\x39\x6f\x7d\x60\xf6\xa1\xf3\xbf\x8d\xb9\xeb\xcb\xd2\x81\xcc\x5e\xad\xe6\xcc\xf5\x49\xe9\x40\xca\x87\xaf\xb9\x2e\xfb\x5d\x79\x4b\xab\xde\xce\xe6\x7a\x6d\x73\x79\x54\x48\xa4\x15\x42\xba\x54\x7d\x08\xe0\x50\x67\xe1\x2b\xd7\x27\x27\x26\x57\x89\xec\xb2\x08\xc0\x2a\xbd\x65\x94\x6a\xfb\xe6\x41\x9d\xa9\xef\x57\xe9\x4b\x51\xc1\x5c\xe7\xfd\x80\xbe\x72\x2a\xba\xd0\xd7\x50\x17\x84\x7c\xb7\x58\x10\xa2\xa4\xa4\x8f\x98\xc0\x36\x17\x60\x0c\x9f\x92\x00\xe3\x6e\x2b\xc0\x78\xc6\x02\x8c\xb3\xab\x8b\x83\xc3\x63\x29\xc2\x68\x98\x46\x8c\xc7\xb7\x2f\x80\xd4\x14\x10\x5c\xd0\x71\xfc\x0d\x24\xb8\xcd\x64\x14\x2b\x5b\xdb\x97\xcc\xec\x6b\x64\x14\xab\xe4\xb5\x2d\x7f\x6a\xcf\x2e\xe2\x30\xf0\xa6\x47\xa2\x22\x69\xb5\x3b\xf0\x32\x0e\xb1\xf6\x3b\x05\xdc\xb0\xfe\xe1\x6c\xfc\x50\x67\xe3\x95\x47\xf5\xb0\x10\xd2\xa6\x67\x94\xea\x34\x7f\xd7\xa8\xd3\x08\xf6\x41\x05\x30\x89\x4b\x6f\x8d\xaa\x9c\xa6\xed\x9b\x7d\xe9\x56\xa2\x53\xa3\x52\xa3\x6b\xce\x4b\xdf\x85\x58\x5a\x7b\xdd\x18\x55\x07\x87\xa7\x49\xa6\x76\x4d\x53\x38\x76\xef\xec\xd1\x23\xe4\x14\xe8\x99\x70\x37\x15\x24\xa7\x6b\x02\xde\x6c\x32\x81\x81\x09\x5e\x67\xc2\x1a\xb3\x78\xb7\x55\xab\xa2\x9e\xd8\xc6\x2c\x5e\xdf\x84\xae\x71\x4b\x8d\x79\xbc\x69\x69\xdd\x0b\x26\xcc\x8d\x59\xbd\x73\x13\xbe\x4e\xb7\x37\xe6\xf5\x6e\xca\xa3\xcf\xae\x48\x73\x4e\xef\xc2\x84\x2e\x6e\x59\x73\x16\x6f\xa4\x53\x6a\xc7\x0b\x29\xb5\x38\xf0\xbd\xbd\x31\x89\x6f\x83\x52\x34\xc1\x4d\x12\x6c\x39\xb1\x76\xf3\x94\x88\xb5\x8b\x2d\xb1\xf6\x8c\x89\xb5\x4d\xd0\x67\x8c\x0c\x1b\x7e\x03\x64\xd8\x7a\x6a\xa8\x62\xd4\xf1\x5c\x75\xd4\x24\x10\xcd\x8d\x4e\x14\xa9\x10\x34\x37\x05\xa2\x68\x6c\x94\x56\x25\x79\xbd\x29\x53\x3e\x5d\xa3\xaa\x82\x5e\x52\x55\xc2\xb2\xe0\xd6\x28\x3d\x98\xd0\xc1\xa7\xcb\xd3\x9c\x52\xca\x06\x10\x24\xe3\x10\x4d\xc5\xe8\xa6\x46\xa5\x90\x8b\x9d\x67\x34\xcf\xc8\xbd\x28\x46\x06\xd9\x10\xcd\x33\x36\xe1\x6e\x8a\xe6\xe9\x99\x80\x37\x4b\xf3\x74\xab\xc6\xbd\xb1\x9c\xfc\x03\x13\xfa\x46\xc5\xda\xb7\x26\x74\x69\x92\xd2\x98\xde\xe9\x9b\x80\xb3\xb3\xd7\x9c\xd6\x99\x96\xf6\x53\x3f\xbe\x1b\x08\x14\x68\xc2\x97\x92\xe1\xc6\x84\x4e\x21\x54\xce\x70\x21\x3d\x32\xd6\x76\xb9\x32\x3e\x4e\x85\x19\x0d\x37\x9b\x79\xb0\xc1\xcc\x4e\x39\x32\xf0\x53\x20\x4d\x6e\xb6\xa4\xc9\x33\x26\x4d\x2e\x0e\x2e\xaf\x4f\xae\x4f\xce\xcf\x36\x2a\x4a\x2a\x42\xd5\x30\xaa\x11\xb7\x38\x33\x10\x2e\x85\x2e\xae\xa8\x09\x6b\x6b\x92\xda\x9a\xa0\xb6\x26\xae\xad\x99\x98\x35\x45\x5b\x1a\xad\xa6\x19\x1d\x73\x5e\x45\xc7\x9c\x57\xd2\x31\xe7\x55\x02\x97\x9e\x59\x59\x21\xf9\x39\x2f\x13\x39\x03\xa3\x4a\x7b\xee\x6e\x8d\xaa\xb2\xe4\xe7\xbc\x40\xb2\x4c\x35\x92\xe5\xa6\x8a\x64\xd9\x40\xc8\xe1\x9b\x4a\x92\x65\x03\x11\x87\x0d\xc0\x45\x71\xc1\x06\xc2\x0e\x9b\xf0\x37\x6a\x31\x3e\xa8\x5a\x97\x8d\x59\x8c\xdf\x9a\xd0\x37\x6a\x31\xde\x37\xa1\x6f\x52\x69\x3e\x35\x81\x3f\x0a\x69\xb1\x38\xec\x70\x5d\xec\xbd\x6d\x8e\xfd\x2d\xe1\xf0\x4c\x08\x07\x2d\x89\x65\xc3\xdc\xf7\x35\x42\x89\x3c\xcf\xd7\x26\x92\xdc\x2b\x59\x6d\x39\xd3\xfd\x15\x96\x31\x2f\xcd\x64\xf7\x07\x9e\xc7\xad\x8f\xcc\x6c\xf7\x07\x22\xca\xdf\x82\x3c\xf7\x79\x67\x8f\x90\xec\x3e\x1b\xef\x23\xe4\xbb\x57\x53\x7e\x84\x84\xf7\x72\xd5\xbe\x6a\xaa\xfb\x31\x57\xcf\x3d\xae\x6d\xc0\x36\x31\xe6\x16\x61\x3f\x09\x84\x5d\xcb\xd9\x61\xe7\xe3\xc1\xd9\xc1\x8f\xc7\x1f\x8f\xcf\xae\x6f\x4e\x8e\x72\x4e\xaf\x58\x6c\xbd\x96\xff\xdb\xab\xf8\x8f\xfc\xdf\x1b\x6b\x65\xcf\x89\x83\x6f\x47\x92\x5d\x67\x39\xf0\x70\x33\x83\x65\x8d\x1b\xb8\x64\xd4\x04\xe6\x5b\xec\x9a\xb1\x6c\x3c\x83\xaa\x1e\x2a\x1a\xdb\x11\xbe\x7b\x71\x84\x28\x06\x4e\x1f\x53\x46\xb1\xdb\xa0\xd2\xa5\x9b\x67\xe0\xec\x6f\x20\xd1\x26\xe7\x22\xa7\x46\xaa\xc9\x93\xa3\xdc\xa2\xe0\xb4\x82\xf7\xbd\x31\x33\x5d\xe6\xac\x91\x99\xb2\x53\xe3\x6b\xcc\xa4\x9d\x82\xd1\x34\x93\x76\x16\xb8\x44\x33\x73\xe7\xe5\x24\xac\xca\xdc\x99\xb3\x37\x66\xee\xce\x4a\x77\xee\xd3\x45\xee\xdc\xe5\xf9\x26\xe5\x24\x9e\x82\xe5\x31\xb3\x77\x52\x3c\x1a\x87\x88\xe2\x72\xee\x4e\x31\x0c\x31\x44\x3d\x7d\x67\x90\xfc\x18\xc6\x5d\x14\x8a\x30\x29\x6c\x6b\xf2\x64\x9e\x2b\xa1\x03\x95\xf0\xf3\xe4\x28\x4d\xe1\xd4\xbd\xb6\xfb\x8f\xa0\xd5\x38\x37\xe1\x72\x63\xfa\xc6\xd4\xd1\x8d\x09\x76\xb3\x3a\x8d\x0b\x13\xfc\x46\x75\x1a\x43\x13\xfa\x46\x75\x1a\x77\x55\x63\xdf\x84\xdc\xe1\xb8\xb4\xe6\x9b\xb5\xe1\xb8\x37\xe1\xcb\x1b\xdb\x5c\xec\xf0\xd9\x84\xac\xc9\x34\x1a\x8b\x1e\x0e\x4d\xe0\x45\x47\x80\xc6\x56\x1c\x67\x26\xfc\xa2\x23\x40\x63\x7b\xfd\xab\xfa\xab\x94\x6c\xc2\x6c\xff\x8b\x09\x5f\xca\x7c\x1a\xdb\xea\x7f\x34\x01\xe7\x38\xb4\xb9\xa9\xfe\x51\xf5\xae\xca\x43\xd3\xd8\x58\xdf\x00\x5e\xc6\xe5\xab\xf9\xc5\x2f\x03\x02\x60\x5f\x37\xdd\xee\xaf\x9e\x71\x54\x38\x68\xae\x11\xd2\x4a\x7e\x57\x72\x20\x6d\xe2\xc0\xbe\x53\xb6\xc0\x79\x0a\x9c\xda\x70\xcb\xa9\xfd\xfd\x38\xb5\x55\x75\x70\xb1\x8f\x61\x9e\x7a\x9a\xb3\x5b\x77\xdf\xae\xa3\x7a\xb5\x85\x50\x0d\x57\x54\xb6\xa6\x8e\xd6\xe0\x2a\x2e\xaa\xac\xa9\x2f\x34\xae\xa2\x67\x94\x55\x69\xd4\x2e\xea\x35\x6a\x17\x55\x29\xf9\x6f\xab\x2b\x59\x77\x7d\x13\x64\xec\xe3\xa2\x85\xd0\x45\x89\x85\x38\xaf\x06\x77\x21\x90\xe9\x8d\x66\x37\x3d\xac\xb2\x9b\xde\x80\xa9\x8f\x01\x77\x33\xae\xab\x5d\x13\xec\x66\x5d\x57\x07\x26\xf8\x8d\xda\x35\xdf\x9a\xd0\x8b\x89\xe5\x37\x60\xea\x53\x0d\x9f\x2f\xfd\x06\x8c\x7d\xcc\xb5\xc9\x8e\xe1\x26\x2c\x7d\xcc\xa1\x6f\x90\x2e\xbe\xa9\x59\x17\x79\x19\x36\x6c\xde\x7c\xb7\x90\x9a\x21\x71\xf8\xc8\x6e\x68\x75\x91\x76\x76\xca\xf2\xdb\xa7\x40\xc2\x1c\x6c\x49\x98\x2d\x09\xb3\x44\x4a\x7c\xf9\x9c\xa5\xc4\xab\x38\xa3\xd5\xb4\x59\xe2\x99\xc6\xdb\xac\x94\xcf\x65\xbd\x40\x9f\x59\xf1\xa0\x48\x93\xdd\x56\xaf\x63\x13\x01\xf0\x75\x95\x00\xf8\xba\x42\x00\x7c\xbd\x40\x00\x7c\x5d\x2f\x00\xbe\xae\x17\x00\x5f\x57\x0a\x80\xaf\x17\x09\x80\x33\x68\x71\x18\x78\x81\x2e\x03\xbe\x36\xa8\x3e\x1f\x47\xac\x3f\xd6\xe4\xb3\xd9\x5f\xec\x17\xea\x0f\x4d\x10\xd9\xcb\x79\x66\xd4\x14\xc4\x41\x57\x46\x65\x41\x96\xf3\xa5\xf2\x4b\x01\xf5\x63\xed\x8a\x26\x79\x78\x1d\x55\xf9\x01\x25\x83\x2c\xbc\x0e\x17\xee\x1e\x3c\x92\x70\xf7\xe0\x71\x84\xbb\x07\x8f\x2b\xdc\x3d\x78\x54\xe1\xee\xc1\xa3\x0a\x77\x2b\xc6\xbe\x19\xe1\xae\xb9\xe6\x9b\x16\xee\x9a\xcb\x92\xdd\xc6\x4d\xc8\x77\x0d\xe0\x15\x17\x7a\x13\x82\x5e\x73\xed\x0d\x9c\xb0\x09\x59\xaf\x39\x91\x9c\x20\xdf\x80\xa0\xf7\x60\x91\xa0\x7a\x03\x82\xde\x83\x45\x82\xea\x0d\xc8\x7b\x2b\xc7\x2f\x97\x67\x03\x12\xdf\x5a\xac\xb3\x91\xf8\x2c\xa7\x26\x7c\x81\xa5\x9b\x47\x67\x29\x48\x75\x2f\x17\xf2\x41\x25\xe9\xec\x23\xe4\xcb\x14\xb9\x0d\x46\x98\xf4\xb1\x88\x0e\x58\x11\xc4\xf4\x2b\xe4\xcb\x84\xbf\xc0\xff\xc2\x9f\xe0\x7f\x20\xc6\x90\x62\x18\x61\x48\x30\x44\x18\x86\x38\x67\xc9\x12\xfc\x94\x78\xb2\x00\x6f\x99\xb2\x67\xcc\x94\x1d\xc6\x61\x88\xf9\x4a\x6c\x44\xc8\xec\xe8\x92\x66\x87\xf1\x6c\x22\x6f\x72\x8c\x5d\x1b\x49\x9b\x90\x1b\x4a\x90\x37\xc4\x3e\x4c\xdc\x00\xdb\x76\x28\x58\x82\x02\x03\x80\xc1\x2c\xc1\x92\xac\x0c\x28\x1e\x25\x16\x4c\x24\xb5\xc9\x8d\x07\x78\x99\x8b\xb9\x45\xc2\xb1\x4c\x06\x27\xb2\x4b\x25\x36\x10\x90\x5e\x60\x37\x6f\x5a\xde\x76\x2e\x6b\x91\xdb\x8e\xd9\x31\xf3\x10\xb5\xa9\x63\x00\x9b\xcf\xdb\x1d\x90\x02\xd8\xee\x00\x79\xe2\xdb\x8e\xe3\x44\xf8\xee\xc5\x15\xa6\x36\x06\x1d\x15\x37\xf0\x9d\x30\x4d\x05\x4e\x12\x13\x6a\x83\x34\x05\x05\x1d\x99\x98\x42\x73\x22\x32\x64\x48\x57\xdb\xb2\x18\x73\x9e\x78\x82\x5d\xfb\x41\xf2\xf6\x2e\x0e\xe3\xa8\x9f\x5c\xc7\xc0\xb6\x84\x84\xac\xc2\x2b\xd7\x90\xb5\x97\x83\xc1\x2e\x0d\xd3\xba\x0a\x27\xf9\xb0\x54\x11\x0e\x0a\x03\x94\x64\xf1\x5e\x55\x58\xd7\xaa\xd0\xb0\x71\x1e\x16\xd6\x99\x9d\x1c\xa9\x43\x9a\x5a\xe5\xf0\xaf\x85\xb6\x59\xcc\x41\x71\xc0\xf3\x1e\xce\xab\x97\xd6\x0c\xef\x6a\x0e\xf1\x1a\xf5\x93\x8a\x38\xaf\x66\x33\x99\xd9\x73\xb8\xa4\x59\xce\x45\x18\x09\x47\xf3\x01\x1d\xd7\x05\xc9\x95\xa1\x2f\xff\x37\x46\xde\xc0\x11\x3e\xa8\xd8\x7d\xab\xa2\xf1\x8a\xf8\x97\x22\x3e\xae\x99\x78\x74\x19\x08\x1e\x8b\x5c\xfb\xbe\x9c\x9f\x54\x8f\xaf\xcb\x4f\x9e\x8a\xe8\xe6\xcc\xb2\x2a\xa8\xcb\x6e\x9d\xe3\xfb\x71\x9c\x60\x19\xaf\x33\xe5\x19\x4d\x4d\xa0\xc6\xda\x9d\xd5\x36\x90\xc1\xdc\xaf\x96\x35\xf8\x52\x91\x57\xf5\x9c\x04\xfd\x20\xb2\x18\x65\x58\x3d\xa9\xba\xb8\xc0\x15\xa1\xdb\x8e\x16\x06\xfb\x3d\x5d\x58\x7b\xbd\xb0\xf6\x60\x85\x88\xc6\x79\x58\xb7\xcb\x15\x5a\xe7\x81\xd9\x4e\xd6\x89\x96\x0c\xe0\xbb\x06\x32\x9f\xec\x15\xe0\xb2\x03\x95\x4d\x35\x2b\xd5\x59\xf4\x0f\x66\x65\xe1\x58\xe5\x89\x55\x8b\xf5\x79\x56\xd5\xac\x5c\x04\x02\xfd\xd3\x2c\x56\x17\x3f\x4b\xa7\x9a\xd5\xa8\x90\x87\xbf\x97\x3e\xc9\xf8\xa8\xdf\xcc\x2a\x61\x8e\xf2\xa3\x59\xac\x05\x90\xf9\xb5\x34\x2e\xce\x74\xff\x62\x16\x9f\x1c\x59\xf0\xbf\x66\x61\x86\xb4\x7e\x2a\x8d\x29\xf6\x86\x98\x5e\x20\x3a\xb0\xe0\x7f\xcc\x4a\x8e\x9b\x38\xed\x5a\x2c\x17\xc1\x34\x69\xa9\x5c\x93\x61\x44\xa5\x4a\x4d\x04\x41\x4a\x95\x72\x35\xd5\xd2\xa1\x32\xe8\xd8\xcf\x6a\x43\xac\x59\x20\x7e\xc4\xc9\x40\x54\xe8\x89\x65\x48\xee\x81\xd9\x16\xa7\xb3\x8f\x69\x71\x7f\x00\x34\x2b\x8a\x88\x47\x35\xeb\x2c\x69\x57\x8f\x95\x2c\x00\x96\x90\x24\x55\x29\x6f\x75\xac\xa5\x52\xdf\xaa\x60\xc4\x2b\x26\xbf\x4d\x81\x33\x42\xe3\xea\x0f\x5e\x44\x69\x0d\xf1\x22\xd3\xe3\xf2\x89\x64\x6b\xd9\x36\xa2\xa5\xb3\xa3\x9a\x0c\xf6\xfa\x88\xe2\x3b\xc4\x7e\x06\x51\x9f\x1d\x2d\xad\x84\x62\x32\xe2\xa9\x49\xa3\x7e\x56\xda\x71\x82\xc8\x0b\x27\xbe\x39\x49\xfe\x1e\xc8\x8e\x05\x26\xcd\xb3\xf2\x2e\xe9\x7a\x15\x90\xec\x70\x18\x60\x45\x98\x67\xd5\xdb\xee\xee\xcb\xf6\x03\x07\xbc\x6e\x60\x6e\x19\x33\x7a\xad\xf8\xdc\xc6\x37\xab\x84\xe9\x36\x3e\x59\x3d\x5a\x77\x93\xe8\xda\x1b\x0a\xab\xbd\xb1\xd8\xe1\x1c\xd0\x05\x26\xec\x31\x40\x7d\xbc\x7c\x82\xc5\xc5\x7b\xa5\xf7\x25\x8a\xfe\xf1\xe6\xf5\xeb\x4a\xa8\x8b\xe6\x5b\xdc\xc5\x75\xa0\x2e\x9c\xbe\x71\xa2\xea\xe0\xa6\xf0\x13\xe3\xa8\xde\x95\x65\xee\x8d\x05\xb5\x1f\x4a\x80\x0b\xd2\xf1\xc6\x82\xda\xef\x4a\xf0\x8d\xd7\xbb\xb9\xb8\xf6\xe7\xea\x2e\x36\x21\xa3\xfd\xb3\x04\x5a\x06\x13\x6f\x2c\x9a\x7d\x5f\x82\x9c\x91\x21\xcd\x45\xb3\xbf\x97\x80\x67\xc1\x9b\x1b\x8b\x65\x7f\x2b\x0f\x3c\x17\x2a\x37\x16\xca\xfe\x58\x82\x2e\xcd\x7b\x1b\xcb\x63\x7f\x2d\x41\xde\x68\x2e\xaa\x5f\xca\x27\x45\xa8\x52\x1a\xcb\x63\xff\x5b\x82\xcc\xd5\x62\x8d\x83\x63\xff\x54\x82\x9b\x07\xe1\x6f\x9c\xf3\xf9\x3f\xe5\x53\xa2\x91\xa7\xcd\xb3\x3e\x63\x5c\xea\x40\x90\xb8\xcd\x13\x3e\xd3\x32\x68\x19\x72\xbe\x71\xae\xe7\xa8\x0c\x5a\x57\x16\x36\x4e\xf9\x4c\xca\xf0\x75\x75\x61\xe3\xa4\xcf\xa8\x0c\xdf\x20\xf7\x9b\x27\x7e\x0e\x2b\xd6\x48\xe3\x18\xda\xf7\x4d\x3b\x28\x6f\xae\x62\x3b\x56\x4b\xf6\x5c\xf7\x31\x80\xef\x74\xe3\x78\xb3\x1b\x83\x75\xb0\x60\xfb\x70\xcd\xbe\x4c\x08\x4b\x3a\x94\xf4\xbf\x05\xdb\x67\x6b\x76\xa4\xbe\x5c\xda\x81\x94\x98\xc0\xf6\xd5\xda\x3d\x64\xc2\x96\x25\x5d\xe4\x74\xbf\x05\xdb\x5f\xd6\xee\x46\xfb\x7c\x49\x57\x59\x72\x80\x8f\x6b\x76\x92\x25\x07\x58\x08\xde\x8c\xd7\x7f\xb4\x66\x2f\xa6\x60\x67\x85\xce\xf2\x80\xfd\xa7\x0f\xea\x2c\x97\x0b\xad\xd0\x99\x96\xf7\xe0\xfa\x41\xbd\xe9\x72\xa5\x45\xdd\xd5\xf0\x02\x16\x6c\x1f\xac\xd9\x6f\x1d\xa4\x35\x07\x90\x2f\xf3\x65\xc3\x01\xac\xb8\xe0\x75\x1c\x86\x05\xdb\x27\x0d\x47\x50\xb7\x09\xef\x74\x9d\xf0\x04\xaf\xa2\x14\x7e\x0c\x5d\xf0\x57\x48\x66\xdf\x4c\x17\x0c\x13\x0c\x03\x0c\x63\x0c\x27\x9a\x5e\xd8\x7b\x52\x7a\x61\x7f\xab\x17\xde\xea\x85\xd7\x08\x00\x28\x24\xa0\xa3\x6a\x3d\xb0\x5f\xaf\x07\xf6\xb6\x7a\xe0\xe5\x7a\xe0\x91\xd0\x03\x8f\x1f\xaa\x07\x5e\xec\x77\x55\x9d\xfd\x22\x2f\x1e\x55\x17\x6f\xde\xac\x38\x2f\xbe\xad\x09\x0c\xd5\xaf\x29\x9f\xae\xa0\x5b\x3e\xaf\xee\xea\xa6\xba\xf8\xa2\xba\x78\xe8\x72\x65\x04\xdb\x27\x0e\x1e\xd8\xed\x8e\xa1\x99\xad\xe9\xfe\xb8\xa8\x0d\xbf\x2f\xfe\xfc\x5c\x54\xb4\x03\xdb\x92\x82\xeb\x3d\x71\x90\xb8\x3e\xb4\xaa\xeb\xb3\x22\x9c\xab\xe2\xcf\x2f\xc5\x9f\x8f\xa2\xd2\xcc\x99\x9f\x1c\x4c\x5e\x96\x83\xca\xcb\x34\x70\x15\x3a\x50\xa1\x23\xc0\xfe\x6f\x01\x1d\x48\xde\xa5\x58\xf8\xa3\x14\xe9\x57\xe9\x48\x59\x27\xc7\x11\xbb\x5a\xbe\x95\x25\xf5\x2e\x2b\x4b\x1b\x8d\xb9\x4e\x9b\x9a\x83\x12\xba\x23\x93\x9e\xac\xd3\xab\xe6\xdd\xe9\xdf\x69\x64\x60\xcd\x77\x5a\xc6\x5a\xfd\x43\x6d\xa4\x9f\x1a\xa8\x66\xbd\x82\x6a\x56\x69\x5f\xbd\xa2\xb6\xf2\x3b\xb3\x58\x17\x1b\xff\x5c\xf5\x8d\x94\x72\xfc\x69\xd6\x69\x12\x8a\xf7\x66\x9d\x30\x3c\xf8\xdd\x2c\x36\x56\xfd\xb7\xea\xfa\x7c\x95\x7e\xac\x6e\x90\x2d\xff\xaf\x66\xbd\x12\x4f\x1f\xc6\x93\x88\xe6\xaa\xd9\xfc\xfb\xaa\x53\x99\x29\x6b\xab\x9b\xc9\x13\xfd\x93\xd9\x48\x13\x43\xfe\xc7\xac\xcb\x45\xab\x99\xea\x36\x07\xae\x9b\xdb\xd2\x52\x75\xc1\x5a\x36\x2a\x55\x0b\x69\x19\x29\x95\x9f\xc5\x3e\xd6\xd5\xb6\x9e\xa1\x54\x0f\x4b\x15\x72\xfa\x87\x02\x5b\x31\x0a\xd8\x68\x50\x92\x7c\x04\xe5\xc1\x72\x01\x5b\x5c\x2a\x17\xc2\xdf\x89\xae\x25\x16\x5b\x77\x1d\xd3\x1a\x95\x8a\x3c\x15\xdf\x97\x95\x37\xdf\x57\x28\x5e\x0c\xc5\x73\x15\xd8\x12\xc6\xf8\xde\x28\x2e\x80\x2f\xe3\x8d\xac\x0b\x89\x9d\xcc\x51\x97\xce\xc8\x7c\x5e\xae\x90\x8b\x2c\x94\xa1\x11\x83\x56\x31\x4a\xd9\xc1\x7c\x2e\x14\x9d\xec\xf2\xcc\xe7\x96\xa5\x72\xdc\xbe\x7d\x9d\x0d\x65\xb9\xc6\xb3\x3c\x8f\x65\xea\xce\xd2\x82\x2c\xd1\x75\x96\xd6\x75\x1d\x45\x67\xe9\x63\x1b\xcc\x18\xa1\x84\xdd\xd7\x8a\x53\xc9\xe8\x78\xde\x1b\x5f\xd9\xdd\x5d\x1b\x6b\x3f\x8b\x27\x46\x52\x9e\xc5\xad\xc6\x46\x6f\xb9\x8e\xf0\xa1\xbd\x49\x08\x85\xde\xd4\x09\x32\x7b\xd3\x74\x87\x0f\xed\x4e\x81\x28\xf4\xa7\x0a\xbf\xc7\x69\x0a\x3f\x30\x22\xfd\xd3\x23\xa8\x16\xbf\x2b\x01\x96\x2a\x91\xc6\x4a\xc5\x9f\x4b\x90\x0b\x4a\xcb\xc6\x1a\xc5\x3f\x2b\x47\xae\xc4\xf4\x8d\xb5\x8a\xef\x4b\xe0\x75\x29\x7d\x63\xd5\xe2\xef\x25\xf0\x32\x0d\x45\x63\xbd\xe2\x6f\x25\xc8\xa6\x0c\xae\xb1\x7a\xf1\xc7\x9a\x2e\x34\x21\x57\x63\x25\xe3\xaf\x35\x7d\xe4\x92\xbc\xc6\xda\xc6\x5f\x4a\x5d\x18\x24\x45\x73\x8d\xe3\x7f\xcb\xb3\xa8\xa4\x4a\x9a\x6b\x20\x7f\x5a\xdc\x93\x52\x33\x34\xd6\x48\xfe\xa7\xd4\x8f\xae\xa2\x6d\xac\x93\xc4\xb8\x04\x5f\x53\x5d\x37\x56\x49\xd2\x32\xf8\xa2\x47\x54\x63\xcd\x64\x54\xee\xa1\xe8\x13\xd5\x58\x41\x49\xca\x3d\x48\xb5\xea\x10\x6e\x42\x7b\x58\x42\xab\x82\xda\xdc\x88\xd6\xb0\x84\x53\xe5\xb1\x6c\xac\x30\x4c\xca\xb0\x0d\x9a\xb7\xfd\xb9\xb9\x52\xb2\xd4\x47\x85\xc2\x10\x9e\x35\x0e\x31\x5d\x71\x84\x84\x72\xfb\xaa\x71\x84\xe9\x32\x68\x69\xbb\xf1\xa5\x71\x38\xfe\x4a\x74\xcd\x89\xf5\xd5\x14\x76\xb5\x5f\x03\xf8\x49\xd7\x73\x94\xd7\xa6\xc0\x19\xac\xa6\xb7\x5b\x08\x61\x85\x0e\x33\x29\xc6\x2a\x7a\xbb\xda\xaf\x97\x74\x24\x98\x88\xd5\xb4\x75\x55\x1f\xae\x30\x8f\x4c\xa3\xba\x82\x62\xae\xee\xe3\x95\xf7\x27\x27\x41\x56\xd0\xc2\x2d\x81\xb1\x72\xa7\x39\xc1\xb0\x82\xe2\x6d\x09\x8c\x95\x3b\xd5\x28\xa1\x77\x0f\xee\x55\x17\x15\xe9\xdd\x7e\x2a\x44\x5c\x5f\xa6\xe8\x5b\x29\xed\xc5\xba\x0a\xbc\x35\x02\xfa\x2d\x57\xe0\xe5\x4a\xb8\x77\x4f\x49\x07\xf7\x69\xab\x82\x7b\xc6\x2a\xb8\xcd\xc4\xcb\xf9\xf0\xe4\xc2\xfc\xad\xa7\x6e\x7a\x84\x28\x36\x91\xa9\x43\xb9\x5d\x41\x7d\xd3\xaf\xfc\x72\x6d\xbd\x53\x4d\x1b\xd3\xa9\xd0\x2e\x58\xbb\x19\xe6\x75\x00\x5e\x34\x90\xeb\xbf\xd3\xc5\xfa\x2a\x00\xce\x3b\xcd\xd9\xe8\xce\x28\x13\xe2\x9a\x63\xa3\x54\x17\xb5\xdc\x57\x7c\x21\xc5\x24\x9f\x8d\x2a\x4d\xc4\x71\x68\x7e\xc5\x6d\xaa\xcf\x8c\xd2\x77\x78\x80\x6e\x83\x98\xe4\x51\x6e\x54\xcd\xf5\xf5\x69\x1e\xdd\x46\x15\x9e\xc6\xde\xf0\x08\x87\x8c\xe3\xfd\x68\x54\xe5\x5c\xde\x91\x51\x53\x60\xd0\x4e\x8d\xca\x02\x6f\x75\x5d\x31\x66\xb5\x4b\x07\x66\x7f\x45\x9b\xc8\x4b\xa3\x5a\x63\x6a\x4f\x34\xc1\xb6\x57\x74\x7d\x6a\x3b\x8e\xc3\x45\x76\x79\x4f\x50\x15\x15\x3a\xd0\x1d\x84\x66\x27\x47\x2d\x9a\xe6\x1e\x42\x34\x05\x9d\x34\x85\x43\xf7\x93\x7d\x51\x96\xf0\x35\x8e\xac\x73\x67\xc2\xdd\x4c\x7c\xc8\x63\x13\xac\x94\x1b\x36\x0e\xa6\x73\x6f\x02\xde\x6c\x9e\xb6\xcf\x55\xe3\xde\x58\x9e\xb6\x43\x13\xfa\x46\xf3\xb4\x9d\x95\xc6\x2e\x1c\x1d\x1a\xcb\x52\xaf\x4c\xc0\xf9\xbd\x6e\x2e\x49\xfd\x62\x02\xe7\xa8\xa1\xb9\x08\xf5\xa3\x09\x57\xc3\x2e\xcd\xc5\xa8\x47\x26\x74\x4d\x0c\xd5\x58\x80\x7a\x6a\x02\x2f\x0a\xa1\x1a\x0b\x4f\xaf\x4d\xf8\x45\x11\x54\x63\xc9\xe9\x41\xd5\x41\xcc\xec\xb3\x07\xb0\xb1\x34\xf3\xb2\xb4\xfa\x86\x09\x7b\x1f\x36\x16\x35\x9e\x98\x7d\xe8\x82\xcc\xc6\x92\x46\x03\xb6\xa7\x06\x7e\xb3\x9c\x1d\xac\xfa\x10\xc0\x0b\x9d\x05\xbc\xd0\x59\xc0\x0f\x0b\x39\x40\x1a\x0f\xf1\x5a\xfc\x5f\x31\x59\xd7\xe3\xb2\x7e\xd5\xb6\x9b\x39\x43\xf8\xcb\x53\x62\x08\xff\xbb\x65\x08\xb7\x0c\x61\x0d\x43\x28\x32\xf9\xc5\x44\x31\x86\x3f\x3d\x39\xc6\x30\x37\xe7\xf3\x6b\xca\x2b\x2d\x11\xeb\x22\xaf\x2e\xca\x96\x55\xc3\x86\x75\x57\x68\xb3\x5a\x18\x9b\x15\x19\xca\x6c\x2e\x3e\xa2\xd8\xb4\x63\xcc\xd7\xa9\x89\xe9\x62\x06\x64\xb8\xce\xe2\xad\x18\x6b\xc6\xce\x22\x2e\x8a\xb0\x24\x66\x20\x19\xdb\xba\xc2\x1e\xc1\x94\x67\x07\xfb\xdc\x80\x6b\xfd\x45\xe7\x5a\x15\xe7\xf8\x4b\x21\x6f\x27\x3f\xfa\x19\xff\xf8\x4b\x05\x9f\x7a\x65\xd4\x69\x84\xf9\x17\xa3\x4a\xa3\xaa\x3f\x1a\x55\x27\x47\x17\x82\x13\x39\x32\x2a\xb2\xa9\x66\x3c\xa4\xaa\x39\xc5\x7d\xe4\x4d\x73\xf6\xf1\x97\x9c\x5b\x45\x61\xce\x39\xfe\x52\x15\x70\xf6\xd2\xa8\x14\xda\x94\x13\x73\xbc\x59\xe0\xcb\x77\x46\xcd\x65\xcc\xf3\x1d\x7d\x2a\x0d\xb6\x14\xcc\xf2\x83\xb9\x3c\x46\x24\xca\xef\x8c\x7a\x3d\x52\xe2\xcf\x46\x9d\x08\x43\xf8\x67\xe5\x17\x92\x48\x7c\x6f\x54\x16\x28\xc8\xdf\x8d\xca\xeb\xe9\x58\x0b\xb3\xf2\x4b\x41\x34\xf1\xa3\x39\x63\x91\xe1\xe9\xd7\xd5\xd2\x9a\x09\x2b\x29\xb5\x7e\xdc\x12\xdc\xe9\x05\x91\xcf\x98\x69\xec\x9c\x1c\xb9\xae\x1b\x15\x13\x23\x0a\x90\x03\x94\xa8\x0d\xcf\x53\xa4\x59\xca\x16\x47\x55\xed\xee\x5a\xff\x1e\x04\xbe\x8f\xa3\xb7\xa5\xba\x34\x85\x87\xee\x7f\xed\xcf\x8f\xc0\x92\x9f\x99\x70\xf5\x2b\xd2\x9c\x35\xbf\x32\xc1\x6f\x36\x75\xc3\x17\x13\xfc\x46\x53\x37\x7c\x34\xa1\xeb\x1c\x74\x63\xfe\xfc\xc8\x84\x9e\xa1\x8b\xe6\xdc\xf9\xa9\x09\x3b\xc7\x38\xcd\x39\xf4\x6b\x13\xb8\x42\x5a\xcd\xf9\xf3\x83\x12\x68\x81\xf7\x9a\x73\xe8\x97\xa5\x83\x58\x08\x30\xdc\x98\x47\x3f\x31\xe1\x4b\x5d\x76\x63\xfe\xfc\x5d\xe9\x10\xe6\x91\x8b\x1b\x33\xe7\x9f\x4c\xe0\xf2\x0d\x68\xce\x96\x7f\x28\x9f\xc0\x72\x4c\xe4\xc6\x36\x4d\xdf\x95\xee\xbf\x19\x13\xb9\x31\xfb\xff\xb3\xd9\x45\x21\xec\x6f\x63\x1b\xa6\x3f\x4d\xf0\x32\x2c\x6f\x63\x91\xc2\xfb\xea\x71\x2b\xb9\x4b\x63\xa1\xc2\xef\x26\xfc\xa2\x5c\xa7\xb1\xf1\xd2\x6f\x26\x7c\xf1\xb0\x37\xb7\x59\xfa\xb1\xea\xcd\xd8\x44\x34\x85\x5f\x4b\x97\x49\x26\x90\x6c\x6c\x09\x65\xc0\xad\x4c\xd7\x77\xbc\x5c\x98\xb3\x0c\x08\x80\x9f\x75\xc1\x8e\xd1\xab\x46\xc6\x08\x2b\xa9\xb5\xba\xd3\xbf\x36\xfa\xf9\xac\x0b\x90\x7e\x5a\x22\x40\x1a\xc7\x61\xdc\xff\xca\x79\xdb\x73\x19\xd0\x97\xa7\x24\x03\xfa\xb8\x95\x01\x6d\x65\x40\x35\x32\x20\x3d\x09\x19\x17\x02\x1d\x7d\x3b\xd9\x74\x4c\xd9\x50\x2e\xd5\x99\xd4\x94\x37\x92\x0e\x2d\xcf\x96\x6e\x4a\x2a\x8e\xe2\xbb\x28\xa1\x04\xa3\x51\xc2\x2d\x05\xcc\xfa\xf7\xdc\x05\x18\xfb\xef\xa6\x07\x87\xa7\x16\x23\x35\xf9\xa6\x1d\x84\x61\x7c\x67\x41\xeb\xb7\x20\xf4\x3d\x44\xfc\x93\x88\x32\x42\x85\xd1\x9f\x56\x14\xd3\x23\x7e\x0c\xb4\x52\x00\x6f\x1b\xc8\x41\xbe\xe8\x72\x10\x95\x4c\xf0\x4b\x55\x12\xc2\xa9\x51\xa9\xb3\x68\xe7\x46\x9d\xc6\x5f\xdd\x18\x55\x1a\x73\x74\x61\x56\x31\x64\xef\xc5\x61\x6e\x46\xa0\x6a\x0a\x4b\x95\xe4\x26\x05\xaa\xfe\x9a\xa0\x28\x19\x23\x82\x23\x2a\xed\x73\x8f\xcd\xd1\x16\x16\xf7\xde\xa8\xad\x58\xeb\xcf\x46\x93\x4f\x63\xb5\x97\x99\xb8\x28\x83\xad\x6d\x74\x26\x2f\xfa\x52\x10\xaf\x5c\x69\xb2\x83\x8a\x4d\xcc\x3c\x71\x5e\xbe\x51\x98\x17\xbb\x99\x1f\x8e\x06\x5f\x0f\x6c\x98\x8c\xb1\x17\xf4\x02\x6f\x2f\xc8\x46\x2d\x42\x1c\x72\x95\xd0\xee\xee\x4b\xec\x98\xeb\xb2\xbb\x8b\x9d\xac\x53\x87\x2f\x06\xf6\x95\x23\x17\x14\x7e\x42\x5e\x1c\x86\x68\x9c\x04\xdd\x10\xe7\xa1\x36\x5f\x0a\xa9\x86\xbe\x8a\xbb\xbb\xbc\xa8\xb8\x35\xb2\xb0\x62\x8a\x60\x3e\x57\x50\x4a\xab\xbd\x2e\xa8\x34\x85\x7d\xf7\xa3\x7d\x5b\x16\x74\x34\x4e\x16\x34\x35\xe1\x16\xf3\x30\x36\x16\xa4\x9c\x9b\xf0\x37\x9b\x35\xe8\xc6\x04\xbf\xd1\xac\x41\x17\x26\xf4\x8d\x66\x0d\x1a\x96\xa0\x67\xf8\xa0\xb9\x18\xe5\xce\x04\x6e\xa2\x94\xe6\xd2\x94\x63\xb3\x8b\x32\x56\x6a\x2e\x55\xb9\x2f\x9d\x9f\x02\x62\x6b\x2e\x5b\xf9\x6c\x76\x50\x81\x1b\x9b\xcb\x59\x0e\xcd\x5e\x34\xf4\xda\x5c\xca\x72\x56\x5a\x24\x1d\x43\x37\x17\xb6\x5c\x99\xf0\x37\x96\x2c\xbe\x08\xb6\xea\xb9\xe7\x42\x97\x65\x3c\xd5\x52\x28\x00\xde\xea\xbc\x95\xd1\xaf\xf6\x04\x08\xf1\xcb\x5a\xfd\xe9\x5f\x1b\xfd\xdc\xea\x3c\xdc\x51\x2d\x0f\x17\xf4\x02\x4c\x92\x57\x7e\xe0\xef\x05\x51\x82\x09\xad\x62\xe4\x5e\x11\x1c\xf9\x98\xec\xe5\xed\x2b\xbf\x2c\xf1\x78\x6b\x93\xd3\xb5\x1f\xc8\x89\x58\x05\x3e\xee\xe5\x6b\xd8\xc7\xb4\x95\xf5\x99\xfb\x53\xab\x89\xa7\x29\x58\x65\xe6\x93\x31\xd7\xe1\x3d\x60\xe6\xf2\xcb\x27\x3a\xf3\x04\x49\x37\x15\x6d\xde\x82\x73\x57\xad\x36\x30\xb3\xfc\x14\x4a\x4e\x88\x73\xfe\x82\xa2\x57\xdd\x00\x33\xec\x4f\x88\x69\x3b\x72\x5f\xbe\xee\xb8\x74\x27\xe8\xd9\x6d\x2b\x88\xc6\x13\xca\x03\x9a\xdf\x53\x44\x30\xb2\xa0\x95\xe0\x10\x7b\xac\xac\x3b\xa1\x34\x8e\xf4\x30\xe1\xd8\x89\x64\x56\x64\x87\xc6\xa7\xf1\x1d\x26\x87\x88\xf1\xac\x00\x44\xfb\xd8\x51\x13\x77\xa3\x16\x76\x7c\x44\x51\x82\x69\x5e\xf8\xf2\xcd\x0e\x0e\x13\xfc\xa2\x17\x13\x5b\x84\x29\x22\x2f\xe2\xde\x0b\xec\xfc\x39\xc1\x64\x7a\xc5\x3b\x8d\xc9\x41\x18\xda\x62\x50\x30\x1b\x12\x00\x56\x0f\x85\x09\xb6\x5e\xba\x2e\x29\x01\xde\xdd\xb5\x89\xd6\x35\xdb\x1e\xed\x86\x46\xcb\x76\x2b\x88\xf6\x6e\x03\x7c\xc7\xb6\xa9\x6a\xc3\xb4\xea\x9a\x8f\x9e\xe4\x19\x8d\xa3\x3d\x82\x93\xe0\x0b\xae\x9a\x73\x56\x99\x1d\xd7\xca\x2f\x9f\xe4\xc4\x09\xee\x55\x4d\x99\xe0\x5e\xd5\x64\x59\xeb\x27\x39\xcd\x84\x4e\xcd\x44\xdc\x62\xa2\xbc\xa2\x6a\xaa\xe2\x8b\x27\x39\x59\x1a\xc7\x21\x0d\xc6\x0b\xf1\x2d\xb4\x68\x30\x1e\x4f\x9d\xcf\x15\x49\xf2\xc0\x2c\x93\x24\x12\x4d\x88\xea\xea\x92\x43\x0c\x18\xbe\xac\x24\x22\xae\xa6\xa3\x6e\x1c\x26\xd2\x44\xcf\x5d\xd4\x86\x81\xa1\x0c\x61\xb9\x44\xb1\xc1\xf9\x58\xf2\xa8\x6c\xcb\x68\x15\x36\x46\x4d\x2a\x99\x02\x00\x60\xe4\x8c\x27\xc9\xc0\x41\xe3\x71\x38\xe5\x12\xc3\x34\xcb\x85\x91\xcd\x0e\xd9\x18\xcc\x18\xfe\x65\x23\xa5\xee\x9b\x1f\xe8\xbf\x33\x39\x8a\xe4\xa0\x7f\xa0\xdf\x7f\xaf\xe6\xcf\x28\xba\x97\x6e\xd6\xa2\x4d\x3b\xfb\xfa\x8f\xd6\x2c\xdd\xa1\xff\xeb\x9f\xfb\x44\x2e\x8b\x1d\x01\xf8\xf2\x75\x95\x84\x95\x3d\x3c\x62\xa9\xdb\xb4\xc3\xb6\xb3\xb5\x64\x86\xc9\x7e\xd5\x31\x0a\xd8\x0b\xb4\x8c\x90\x4b\xec\x08\x80\x96\x36\xa6\x9a\x01\xd5\x4b\x2e\x97\xad\x7e\x04\x29\x60\x93\x50\x0b\x8c\xf3\x05\x0e\xd5\x81\x52\xa7\xf8\x45\x10\xbd\xc0\x95\x93\x91\xe2\x73\x29\xf6\x36\x68\x6c\x93\x02\xd7\x68\xee\x14\xb4\x70\x9b\x76\xdc\x08\xe2\x26\x62\x55\x8d\x66\x48\x56\xa0\x19\x48\xc7\xa5\x30\x74\xcd\xd3\xf2\xf6\x9f\x9a\xf4\x39\x3f\x1b\xff\xd4\x0f\xca\x3f\xf9\x41\x11\x2f\x7e\xe2\x86\x4e\xcc\x35\xd1\xc9\x7c\x3e\x4b\xb9\x3c\x36\x80\xb1\x8b\xd9\xe5\x52\x52\x51\xd7\x65\x94\x76\xdc\x7b\x91\x38\x94\x04\xfd\x3e\x26\xd7\x88\xf4\x31\xcd\xa3\x1b\xc6\x3b\x32\x3a\x4f\xb9\x05\x4a\xb0\x25\xf8\x55\x6e\xa6\xdf\x8a\xdd\xd8\xc9\x7f\xef\x74\x09\x46\xc3\x2c\x7c\x0e\xab\x2c\x51\x1f\x26\xcc\x94\xb8\xb1\xe3\x85\x71\x84\x19\x04\xfb\xe5\x6b\xb6\x8c\x04\x8f\xe2\x5b\x6c\x03\x98\xcd\xa7\xf8\x95\x5c\xdf\x34\xe8\xd9\x99\xec\x9c\xf0\x8b\x1f\x3b\x41\x14\x61\xf2\xe1\xfa\xe3\x29\xd4\xfe\x76\x2d\x0b\x40\x6b\x84\xa2\x89\x48\xf3\x91\xc1\xcb\x67\x9d\x38\x3e\x0e\xd1\x74\x3e\x6f\x77\x76\xb2\x45\xc7\xed\x37\x1d\x2e\xe9\x57\xc3\x88\xa3\xab\x41\x7c\x17\xb9\xd4\x7d\x3b\xf3\x42\x8c\x08\xe3\x98\xc8\x2d\x0a\xed\x00\xc0\xc0\x4d\x30\xbd\x0e\x46\x38\x9e\x50\xdb\x06\xee\xdb\x19\x75\x06\x81\x8f\x6d\x90\x42\x06\x09\xa4\x20\xe5\xd9\xf5\xdc\x18\x7a\x8c\x62\x9b\x38\x03\x94\x1c\xa8\x98\xb3\xb6\x45\x51\x37\xe0\x7a\x4f\x30\x9f\xdb\x9e\xfb\xf2\x35\x9c\x38\x09\xa6\x55\x2d\xa0\xf5\xda\x02\x40\x6e\xbc\x2f\x5c\xc5\xb2\x84\x45\x31\x44\xf6\x8c\x0e\xf0\x08\xb7\xac\x0c\x7d\x17\x56\xb0\x35\x61\xb7\x80\x31\x7b\xdc\x02\x8f\xc0\x71\x38\xe9\x07\x51\xd2\x6a\x67\x73\x4f\x9c\x5e\x1c\x86\xf1\xdd\xe1\x84\x24\x31\xd9\x8f\x0a\x3f\xa5\x42\xa3\xa3\x89\x1b\x65\xa4\x4a\x1b\x03\x90\xe6\x1b\x07\x54\x7c\x4b\xbe\x1e\xde\xee\xee\x44\xee\x6e\xe5\xb4\x61\x69\x4d\x7d\xc7\xc7\x09\x25\xf1\x94\xc7\xbe\xd4\x69\xcf\x64\xd9\xc3\x75\x17\x84\xe1\x9e\xfc\x7a\x5d\x2e\xa9\xf0\xed\x93\x7c\xb6\xef\x02\x3a\xd8\xf3\xe2\xf1\x14\x75\xab\x69\x95\x7a\x66\x29\x53\x72\xee\x14\x51\xef\xb3\x7d\xb9\x93\xa7\xf6\xb0\x88\x6b\x1f\xb8\x72\xdc\xee\x5b\x89\xd3\xa9\xeb\xba\x78\x9f\xb6\x22\x8e\xfb\x63\xd7\x8e\xa4\x52\x29\x88\x78\x97\x32\x46\xb6\x6d\x79\x61\x30\xee\xc6\x88\xf8\xaf\xe2\x84\xeb\xe6\x56\x53\x10\xb1\x9d\x94\xca\xe0\x9d\x2a\x65\x91\x08\x04\x06\xa9\x9b\x77\x60\x41\x22\x0a\xed\xc8\x45\xe0\x1b\x55\x76\xc3\x44\x2a\x63\x06\xdc\x6a\x46\x28\x56\x55\x99\x4c\x8b\x26\x4a\x53\x99\x51\x4c\x63\xf8\x3b\x2e\xde\x89\xdc\x20\xb7\x70\x8e\x44\xcc\x33\x1c\x72\x73\x08\xf1\x0a\x5d\xe3\x7b\xaa\xd0\x35\x71\x67\xc9\x84\x9b\x47\xb6\xb0\xfb\x36\xb0\x2d\x75\x10\x2d\x48\x1d\x59\x03\x39\xbe\x4c\x81\x8d\x01\xc4\x84\xc4\xa4\xa2\x29\x2f\xd7\x1a\xa6\x3b\xbc\x5f\x31\x5e\xa1\x19\xca\xb6\xc1\xc1\xf7\xd8\x63\xd8\x56\x1f\x1a\xd4\xb5\xf4\x1b\xa7\x5c\xc3\x55\x28\xd7\xe4\xeb\x52\xae\xe1\x57\xa5\x5c\xed\x19\xc5\xf7\xe2\x85\x8d\x52\x48\xf2\x37\xd1\x89\x23\xdb\x92\x3b\x6d\x41\xa2\x36\x5d\x94\xf3\x6d\x65\xa5\xfc\x0f\x19\x40\x8f\x1d\x4c\x97\xa4\x7e\x90\xa8\x03\x08\x66\xda\x6e\x4b\x5d\x18\x6b\xb5\xbb\x6b\x6b\x15\x4e\xdc\xeb\x69\x5d\x65\xad\xb4\x2e\x59\x03\xd9\x67\x5e\xad\xf7\x2d\x21\x65\x0f\xb1\x36\x22\x76\x14\xf4\x46\xc2\x26\x21\xf5\x03\xff\x12\x7b\x38\xb8\xc5\x07\xea\x60\xa8\xf1\xea\x33\x10\x5f\xaa\x9f\xfc\x07\x22\xfd\xc4\x19\xc7\x09\x57\x1a\x21\x09\x9b\x17\x46\x68\x84\x7d\x90\xb2\x97\xf9\x52\xd2\x87\x65\x88\x69\x0a\x27\x2e\xd1\x84\xcd\x5e\x01\x15\xf9\x6e\x3b\xea\xc0\x91\xdb\x44\x08\x0f\x7b\xee\x2c\x85\xfa\x1b\x38\xaa\xb1\x7b\xe9\xb5\x71\xc7\x1d\x49\xbb\x97\x5e\xd1\xee\x45\xff\x09\x7b\xa6\xdd\x4b\xaf\xd6\xee\xa5\x37\x9f\xf7\x4c\xbb\x97\x5e\xd1\xee\xa5\xe7\xfa\xab\xd8\xbd\xe8\x81\xca\xa9\x3d\x81\x1e\xc4\x60\x3e\xc7\x29\x80\x3d\x00\xc7\x1a\xe7\xd1\x33\xac\x52\x7a\xd2\xee\xa5\x50\xbe\xdf\x2b\x23\xd8\x71\x66\xf7\xd2\x5b\x6c\xf7\x62\xf6\x50\x7d\x07\xd9\x10\x7b\x6c\x7a\x02\x3d\x23\xb7\x07\x09\xe0\x3c\x96\x66\x83\xa5\x11\x88\xf1\x4a\x24\x52\x7c\x8b\x89\xf0\xaf\xdd\x8a\x37\xb6\xe2\x8d\xad\x78\x63\x2b\xde\x78\xa2\xe2\x8d\xd0\x11\xe7\x26\xd9\xdd\xcd\x87\xe1\x2a\xa1\x47\x13\xf1\xc7\xe6\xc4\x1e\x72\x27\xbd\x4a\x79\xc5\x42\xf9\x44\xc0\x3a\x44\x1e\x0d\x6e\xf9\x99\xde\xb0\xb8\x22\x17\x53\xbc\xd0\x96\x31\xfb\xd3\xf6\x80\x20\xb3\x4b\x73\xf7\xd6\x15\x4f\x90\x78\x22\x2c\x79\xb4\xd7\x26\xaf\xc5\xd1\x6d\xe1\xf7\x84\x06\x61\xc2\xbf\x09\xa2\xfe\xab\x3b\x14\x0e\x97\x3f\x40\x4f\x02\x83\x60\x87\x2f\x44\x52\x64\x68\x91\x3b\xf3\xbd\xd6\xec\x46\xde\x8a\xd6\x6c\x8c\xe8\xa0\x65\xbd\x6a\xf9\x9e\x95\x42\xc9\xbc\x26\x15\x0d\x54\x15\x6b\x35\x88\xef\xaa\x40\x30\xf2\xd1\x4a\x61\x20\xc3\xe1\x56\x41\xc9\xea\xac\x34\x85\x99\xcd\x5c\x75\x4b\x55\x69\xa5\x10\xfb\x01\xad\xea\x31\x6b\x74\x13\xf8\x0c\xa2\xc7\x1d\x27\x2a\x5a\x8a\x0a\x2b\x4d\x53\xa8\x0c\xd3\x2b\x5a\x65\x36\xeb\xe9\x8a\x4b\x91\xc2\x89\xb2\x99\xa9\x68\x97\xd5\xb1\x86\xf2\x84\x55\x34\x93\x35\xac\x11\x45\xfd\x2a\x40\xac\x98\x8f\x5d\x2d\x5f\xdd\xea\xe7\xeb\xfb\xaa\x15\xc5\x3e\x7e\xd5\x62\xeb\x02\x07\x18\x85\x74\x20\x62\x42\x54\x7c\x2a\xaa\xf7\x64\xcc\x88\x75\x26\x85\x79\x26\x75\x9f\x55\x55\xb5\x95\xd5\x7b\xbc\x9e\xb5\x47\x22\x0d\x69\xe5\xaa\x66\x75\xac\xe1\x08\x53\xe4\x23\x8a\x2a\xda\xa9\x2a\xbe\x20\x51\x4c\x7b\xf1\x24\xf2\x6b\x17\x44\x5b\x06\xde\xdc\xaf\xec\x9b\x97\x2f\x3f\xd9\xeb\xae\xe3\xf2\x33\xb4\x57\xb8\x10\x84\x56\x9d\x72\xc2\x26\xb8\x47\x49\x30\xde\xa3\x01\x1b\x07\x03\xcc\xe3\x33\x56\x01\x0e\x63\x6f\xb8\xa7\xea\xd7\x58\xca\x8d\x5f\x47\x88\xba\x41\xc8\x7d\xbb\x5a\x6d\x8b\x60\xe4\xbf\xd0\x60\x74\x56\xb8\xac\x05\x00\xa2\xcc\x00\x91\xc2\xe1\x6d\xc5\xf7\xc3\x5b\x2b\x85\xbd\x38\xf4\x31\xa9\xa8\xfd\xc7\x10\xf3\x0b\x5e\x33\x09\x56\xfd\x8a\xd5\x2d\xc4\x27\xbc\xd5\x82\x71\x0e\x6f\xc5\x1c\x2d\x12\xc7\x74\x4f\x36\x5c\x6f\xaa\x12\x44\x0a\x91\x17\x56\xde\x17\x2f\x4c\x8a\x1f\x22\x2e\x6e\x78\xc1\x2b\x3a\xf5\xbb\x84\xbc\x70\x15\x5c\x59\x35\x26\x09\x3a\x85\x63\xe9\xd9\x58\xf1\xf9\x38\x73\x7a\x2c\x1d\x80\xac\x6a\xc1\xe8\x56\x43\xe4\x55\x83\xd3\xa0\x73\x7c\x1b\x56\x0e\x8f\x08\xb7\xc9\xd2\xd8\x44\xf9\xa3\x0c\x4c\x81\xe6\x8f\xcf\x10\x57\xde\x2f\x51\xa1\x7f\xce\x89\x7e\x1c\xdd\x02\xdb\x3a\x3c\x3f\xbb\xfa\x74\x7a\x73\x70\x78\x7a\x75\x73\x7c\x76\xf0\xee\xf4\xf8\xc8\x02\xfb\x72\xe0\xf2\xcb\xce\xea\x07\xe0\xe1\x33\x51\x7d\xb1\xa9\x58\x68\x42\x07\x7b\x23\x4c\x07\xb1\x9f\x54\x9d\xed\x42\x7d\x79\xc1\x0b\xd5\x9d\x7a\xdc\xcb\x5f\x30\xbd\xb3\x25\x7d\xb1\xb9\x59\xdd\x20\xf2\x83\xa8\xbf\x47\xb8\x5f\x5f\xc5\x07\xc5\x06\xec\x93\x88\x9b\x68\xd7\x7f\x51\xa8\x4f\x39\xc6\xb4\xe4\xd3\xad\xf2\x79\xd5\x3f\xee\xb2\x85\x7a\x49\x38\xb6\xf5\xf1\x7d\xc5\x07\x02\xbd\x53\xf6\x51\xf5\xbb\x41\x15\xb1\xb0\xe0\xed\xfb\x87\xaa\x63\x5d\xed\x64\x94\x20\x82\xe5\x43\x75\x76\x75\x71\x70\x78\xac\x9d\xab\xdd\x5d\x1b\x39\xbe\xe7\x88\xf9\x26\x6e\xc5\x4a\x28\x7b\xf6\xaa\x6d\x95\x9f\x2d\x3a\x7f\x72\x0d\x1e\x74\x02\x73\xf0\x69\x0a\x76\x84\x4a\x25\xcc\x94\x2a\x42\x13\x73\xc9\x19\x80\x15\x1c\x6f\x88\x54\x3f\x84\xb1\x87\x84\xc4\x5f\x5b\x1f\x55\xc8\x9d\x59\x41\xde\x98\x61\xf4\x4f\x97\xa7\x85\xb6\xaa\x0c\x80\x34\xcd\x29\xf0\x10\x86\x3c\x82\x63\x91\x13\x43\xa0\x46\xb1\x28\x36\xe9\x15\x1a\x8f\xc3\x40\x8d\xa7\x9a\x87\x51\xdc\x0a\xff\xa2\x18\x85\x2b\xb8\x0f\x22\x29\x76\xeb\x32\x52\x80\x9d\x3d\xe4\xc9\x17\xb3\x36\x28\xd7\x4e\x73\x49\x05\x63\x3f\x43\xd7\x26\x2a\x51\xa4\xe8\x14\xa2\xa2\xda\xcb\xce\xd4\x5e\x8e\x28\xb1\xf3\x95\x01\x33\x2e\x11\xcf\x84\x1a\x2f\x22\x77\x96\xf0\x58\xe1\x2d\xec\x78\xb1\x8f\xe7\x73\xec\x88\x82\x43\xfe\xcb\xb2\xe0\x08\x27\x09\xea\xe3\x16\x76\xe4\x5f\xac\x8d\x8f\x29\x0a\xc2\xf9\xdc\x3a\xe6\x22\xf7\xcc\x91\x12\x0b\x91\x7b\xb2\xbb\xab\xfe\x6a\xbf\x66\xcc\x77\xe4\x6a\xbf\x61\xa4\x40\xb9\x51\x0e\x34\x72\x68\x40\x43\xfe\x87\x01\x1d\x40\xcb\xe2\xe1\x44\xc4\xc8\x18\xb8\x0c\x40\xd6\x44\x09\xe1\x29\x89\xc3\x10\x93\xf7\x31\xb1\x2d\x7d\x9f\x81\x93\x60\xaa\x49\xd1\xc4\x4a\xb4\xa2\x14\xc0\x97\xaf\x19\x42\x70\x91\x26\x70\x0f\x5c\xa5\x4c\x88\xdd\x36\xe9\xc0\x49\xb5\x4c\x53\x13\x89\xe9\x5f\xcb\x6f\x01\xf4\x0a\x40\x7d\x53\xe4\x3e\xa9\x11\xb9\xfb\x6d\xdc\x71\x27\x52\xe4\xee\x17\x45\xee\xfa\x4f\xe8\x9b\x22\x77\xbf\x56\xe4\xee\xcf\xe7\xbe\x29\x72\xf7\x8b\x22\x77\xdf\x8d\xd7\x17\xb9\x27\x30\xc8\x44\xee\x3e\x80\x9e\x26\x0d\xf3\x0d\x81\xb8\x2f\x45\xee\x85\xf2\x7d\xbf\x2c\x72\xf7\x32\x91\xbb\xbf\x58\xe4\x6e\xf6\x50\x7d\xc7\xd8\x10\x7d\x36\x3d\x29\x72\x17\xe2\x76\xcd\xf1\x59\x13\x78\x84\x0b\x11\x87\xef\xad\x86\x2f\x16\x18\x23\x6c\x0c\x0d\xd4\x29\xc5\x09\xe6\x8a\xa7\x98\x4c\x5f\x8d\x31\x19\x05\x22\xcc\xfc\x63\x68\xc7\x73\xf0\xc9\x25\x1e\xc7\x4f\x42\x47\x9e\xa2\x64\x1a\x79\x2f\xb8\x63\x3c\xcf\xa3\xcb\x45\x36\xd4\x45\x77\x28\xa0\x22\x19\x9c\x31\x2d\x1e\xd5\xe8\x20\x0c\xed\x99\xef\xb5\xb0\xe3\x7b\x30\x4a\x5a\xbc\xa1\x78\x53\x51\x78\x81\x08\x1a\x25\x36\x90\xef\x39\x1c\x2b\x77\xb1\x9a\x66\x59\x7d\x9a\xc9\xeb\xd6\xc6\x5e\xda\x20\x5b\x34\x05\xd0\x28\xe0\x08\x8d\x14\x11\x5a\x69\xbb\x62\xae\x47\x9c\x34\xd3\x23\x6e\x91\xda\xb7\x81\xd4\x5c\x5f\xe9\x11\xeb\x11\xdb\xce\x02\xc4\x26\x99\xdd\xc7\xa6\x86\x36\x60\x35\xc4\xb1\x18\x59\x8d\xdc\xd1\x48\x45\xb2\x04\xb3\xf3\x05\x28\x70\x54\xaf\xa4\x91\xe2\x83\x30\xfe\xa6\x26\x1a\xad\x8e\xb0\x2b\xd1\x35\xa3\xf0\x62\x42\xdf\x4d\x5b\x56\xc2\xfd\x57\x84\x89\x43\x2b\x33\x08\x1a\x06\x91\xdf\xb2\x86\x3c\xc9\x5d\x82\x11\xf1\x06\x63\x39\xda\xd6\x0c\x25\x2d\xab\x58\x66\x41\x9e\x48\xb2\xd5\x6e\xcb\x48\x31\xd6\x51\x90\x8c\x43\x34\xe5\xbf\x3a\x8c\xc9\xe4\xed\xc5\xb7\x42\x51\x61\x41\x99\xae\xa4\xc5\x29\x2d\x9b\xba\x16\x57\x39\x09\x84\x68\x81\x20\x92\xb9\x17\xc1\xe3\x08\xf9\x75\x86\xa1\xc6\xd7\x67\xd1\x29\x60\x5c\xf3\x3a\x47\xa1\x5e\xf5\x41\xb0\x1f\x10\xec\xd1\x3d\x1a\x7f\x95\xbb\xb1\xf4\xc8\x2c\x7b\xe1\xd5\x80\x2d\x11\xf7\x42\x63\xb1\x0a\xd2\x02\x00\x57\xd5\xd1\x90\xf5\xb7\x8f\xa4\x6b\x5f\x62\xc5\xdc\x3e\x10\x99\x21\x2f\x14\x08\x6d\x39\x57\x07\xc3\x0d\x11\x74\x49\xce\xd7\x2d\x20\xe8\x90\x17\xf2\x60\x23\x6b\x30\x7c\xb5\xc4\x1d\x44\x30\x81\x41\x0d\xce\xb0\xd4\x52\x72\x31\x2d\xbf\xb2\x14\x8f\xc6\x21\xa2\x22\x44\xc0\xa3\xdf\x59\x45\x4b\x22\x97\xcf\xdf\x82\x81\xa4\x2d\x13\x37\xac\xa5\x2d\xd9\x9c\x74\xda\x32\xa9\xa5\x2d\x93\x1a\xda\x32\x31\x69\xcb\xa4\xf0\xac\x27\xe5\x67\x3d\xd0\x68\xcb\x2e\xee\xc5\x04\x7f\xe4\xb4\xa5\x34\xeb\x62\x83\x77\x82\xe8\x16\x85\x81\x8f\x28\xb6\x41\x9a\x91\x9e\x3a\xe9\x17\x50\x3c\x72\xf3\x0f\xc4\x01\xb6\x67\x79\xd4\x04\x41\x4a\xf2\x6f\x39\x71\xe8\x7b\x16\x70\x7c\xcf\x61\xbb\x91\x02\x28\xa5\x32\x57\xbf\x5e\x70\x8b\x36\x7b\x26\x05\x3f\x8c\x64\xa3\x78\xd4\xca\x3a\x81\x8c\x1a\x4c\x5a\x6d\x6b\xa4\x85\xcb\xb2\xbc\x30\x60\x7f\x74\x52\x90\x26\x98\x4e\xc6\x87\x19\x25\x2a\x1e\x33\x7e\x48\x1c\xb3\xca\xc0\x1a\x06\x89\x4a\x41\xea\x63\xae\xeb\xe6\xf3\x9e\x89\x21\xf6\xb1\x34\x91\xe3\x83\xb1\x82\xe4\x0c\xdf\x59\x40\x1a\xfe\xb1\x32\xa5\x8a\xbe\xc4\x5e\x4c\x7c\x6e\x0b\x17\x14\xb8\xe8\x58\x9d\x88\x09\xe7\xcc\xbd\x66\xe4\xeb\xc8\x24\x5f\xbd\x1a\xf2\x75\xc4\xc8\x57\x4f\x92\xaf\xa3\x22\xf9\xaa\xff\x84\x23\x93\x7c\x1d\xd5\x92\xaf\xa3\xf9\x7c\x64\x92\xaf\xa3\x22\xf9\x3a\x72\x27\xeb\x93\xaf\x8c\xfe\x53\xe4\xeb\x08\x40\x5f\x23\x5f\x47\x06\x71\x39\x92\xe4\x6b\xa1\x7c\x7f\x54\x3e\xe7\x7e\x46\xbe\x8e\x16\x93\xaf\x66\x0f\xd5\x57\x95\x0d\x71\xc4\xa6\x27\xc3\x3f\xb9\x23\xc5\x97\x6b\xe1\xc8\x56\x34\x44\xc8\x11\xbf\xc0\x56\x5f\x03\xed\x73\xdc\x99\x99\x2c\xc4\x4f\x29\x12\xda\x64\x1b\x09\xed\xd9\x46\x42\xd3\x28\x0a\x6f\x2d\x8a\xa2\xba\xa1\xd2\x92\xf0\x50\x66\x0f\x26\x3a\xaa\x48\x8c\x58\x89\xfa\x39\x2a\x4f\x64\x34\x29\x55\x9a\xf5\x0b\x03\x19\x51\xca\x7c\x35\x4b\x0f\x5e\xfe\xcc\x11\x25\xb4\x79\x37\xbd\x0a\x27\x7d\x2e\xb7\x59\xf0\x7a\xc2\xc0\x6f\x61\x27\xf0\x53\xf0\x55\xdf\xc6\x14\x26\xee\xc4\x0e\x75\xa9\xb1\x58\x8b\xe6\xc1\x97\x02\x13\x70\xbe\x9c\xcd\x43\x2f\x85\xba\x79\x98\xb7\x12\x56\x7e\x20\xef\xb4\x45\xcb\x5b\xb4\xbc\x45\xcb\x8f\x87\x96\x17\xcb\x8d\xd6\x44\xd0\x65\x39\x53\x59\xae\xf4\x4d\xc9\x84\x84\x1e\x40\xe7\xd8\xaa\xb5\x01\x6a\xa6\xfa\x8b\x62\x89\xd4\x4d\xdc\x91\x81\x9d\x0e\xd7\x75\x35\xee\xa6\x90\x35\x00\xcc\xe7\xea\x51\x62\xb3\xfd\x2d\xa0\x03\xf6\xfc\x38\x0c\x31\x3a\xd2\xd6\xa3\x56\x29\x51\x7c\xce\x0e\xc2\xf0\xdd\x34\xe7\x08\x97\xbd\x6b\x29\xdb\x93\xe5\x53\x10\x57\x92\x3f\x9f\x49\x4b\xce\x5b\xd8\xd0\xc8\x5f\x51\xba\x7d\xf7\x1e\xf6\xee\x29\x6b\xa9\x15\xe4\x51\x55\x5f\x71\x66\xe6\x1b\x96\x2b\x5b\xd5\x23\xfe\x0b\x84\x45\xeb\x0b\x78\x8d\x21\x7f\x25\x1b\x90\xaf\x2c\x2d\x94\x89\xe2\x36\x25\x30\x5c\x2a\x2b\x2e\xaa\x80\xeb\xc5\x74\x7f\x35\xc9\xb5\x95\x28\x6d\x25\x4a\xab\x4a\x94\x32\x44\xd1\x8c\x89\xf9\x7b\x61\x8a\x05\xaa\x85\x27\x88\x2f\x60\x60\x92\xb6\x7e\x2e\x96\xe7\x24\x2d\x77\xec\x69\xac\x47\xd5\x52\xf0\xac\xa6\x47\x4d\xca\x34\x33\x5a\xf8\xcc\xb2\x6d\x91\x27\x26\x58\xeb\x99\x45\xed\xa4\xe3\x06\x5b\xc4\xb9\x45\x9c\x2b\x23\x4e\x6e\x91\xbf\x1e\xe5\x2b\x3e\x79\x32\x64\xaf\x36\xdc\x27\x41\xf3\xea\xe3\x7d\x9e\xcf\x18\x9b\xe1\x96\xdc\xdd\x92\xbb\x5b\xac\xdd\x0c\x6b\x3f\x6b\x5a\x77\xa3\x48\xe2\xb9\x53\xba\x4d\x09\x59\x99\xa0\x71\xba\xa5\x68\xb7\xb8\xf1\xa9\xe3\x46\x21\xad\x5f\x8f\xa4\x95\xdf\x3c\x19\x9a\x56\x1f\xef\x93\x20\x6a\x0b\x03\xfe\x6a\x0f\xd6\x56\xcd\xbc\x55\x33\x3f\x07\x35\xb3\x54\x02\x3e\x01\xfb\x9f\x82\x86\x34\x7f\x8f\x66\xba\xa6\x72\xa9\xb2\x33\xfd\x3b\x69\x1f\x25\x66\x7c\xd6\xb4\x7c\x7e\x7e\xb7\xc4\xfc\x72\x62\xfe\xc1\x12\x6a\xcd\x9e\xc1\x24\xef\x2f\x19\x37\xb5\xa5\xf2\xb7\x54\xfe\x33\xa0\xf2\xb7\x3e\x5e\x86\x8f\x57\x16\x85\xed\x1b\x72\xf0\xca\xc3\x53\xad\xe5\xe6\xf5\x8d\x33\x5f\xda\xac\x9e\x04\xef\xa5\x8d\xf7\x59\x3a\xc9\x8a\x30\x4f\x2d\x19\xee\x69\xcd\xe7\x52\x64\x26\xce\xa5\x61\x34\x88\xb8\x17\xff\x73\x71\x91\x1d\xde\x3e\xa7\xab\x37\xbc\x7d\x1a\x57\x6e\x78\xfb\x4a\x04\xdc\x5b\x2e\x7a\x1a\xde\xca\x5b\xf9\xed\x2f\xbd\xc4\x1e\x7f\xc1\xda\x1b\xa6\xbf\xc2\x9c\x55\x2f\x2c\x8c\x78\xa7\x60\x93\x3b\xe6\xd7\x52\x9a\xdc\x3a\xc3\x5b\x47\xee\x0c\x8f\x90\x6e\xbd\xb2\x5c\xd7\xe5\xb4\xe0\x7c\x2e\xcc\x83\xf9\x0f\xa0\x3b\x7c\x52\x82\x22\x91\x1e\xe0\x3a\x56\x40\x64\xfa\xa0\x75\x4f\x45\x23\xb2\x25\x48\xde\x8b\xa1\x7f\x03\x91\xab\x36\x85\xbc\xbf\x71\xcb\xf3\xa2\x97\xb0\x0a\x5d\x6d\x9c\x2b\x61\xfa\xcd\x36\x8d\x5d\x07\x20\x0e\x93\xf5\xca\x62\x07\xec\x65\x91\x4c\xc3\xa0\x70\xb2\x74\x4b\xf3\x22\x14\x88\xbf\xb7\x5e\x59\x20\x95\x31\xc0\xb2\xac\xf7\x2a\x34\xd7\x7c\xfe\x52\x8b\xd2\x35\x9f\x5b\xff\x7a\xfd\x2f\xeb\xa5\x1e\xb9\x4b\x46\xe0\x92\x36\xed\x0b\xcf\xf0\x36\xa0\xd6\xdf\x27\xf6\x4c\x93\x80\x5a\x0c\x83\xe9\x11\x5c\x57\x79\xdc\x64\xd3\xaf\xfa\xba\xad\x83\x94\x79\xac\xe3\xe7\x49\x18\xcb\x68\x81\x96\xf8\x77\x5d\x05\x71\xec\xb3\x37\xe8\x40\x84\xa1\xb6\xa0\xf5\x11\x53\xf4\x1c\x28\x62\xb1\xe1\x3c\x50\x8c\x1e\xc0\xfa\xb9\x6f\xbe\xfe\xd0\xf2\x19\xb7\x2c\xfe\xcf\xc3\xec\x06\xae\x84\xb4\xc1\x82\xd6\x21\x03\xc2\x85\x8d\x67\x31\xc5\x6c\xed\xce\x27\x54\xe4\x20\x97\x8d\xae\x51\x3f\x79\x66\x07\x27\x13\xb6\x3c\xf3\x43\x63\xc6\x9f\x7a\xc8\x51\xe1\xdb\x0f\x2d\x7e\x44\x72\x6c\x72\xc1\xfb\x53\x47\xc4\x79\x86\xc8\x25\x0b\x3a\xff\x75\x55\xdd\x30\xde\x29\xeb\x8f\x9f\x82\xb2\xdb\xdb\x2a\xbb\xff\x0e\xca\x6e\x7f\x25\x65\xa1\xbc\x3c\x0b\xd4\xdd\x3d\x8c\xfd\x2e\xf2\x86\x5c\xdd\x5d\x64\x55\x93\xcd\xaa\xbf\x27\x99\xa2\x9b\x8f\x49\xc4\xe3\x54\xae\xd4\xaa\x32\x1b\x0e\x8c\xa5\x16\x3c\x0f\x24\x75\x25\x3e\x34\xbd\x85\x0b\xf1\x44\xd5\xf7\x59\xd6\x4c\x1b\xb8\x6f\xa5\x92\x3c\xeb\x56\xe5\x71\xc2\xc0\xa1\x03\x1c\xa9\xd4\x47\x04\xf7\x08\x4e\x06\x36\x48\x01\xb4\x7c\x1c\x62\x8a\x2d\x61\x4a\xec\xd9\x49\x51\xcb\xad\xcd\xa0\xb9\x16\x3d\x36\xe1\xe7\x8b\xd0\x5c\x8b\x6e\x80\x2e\xad\xa6\x05\xdb\x61\x67\x69\xf2\xb3\x25\x30\x00\xd4\x1a\x00\x98\xe8\x9a\x7b\x7f\x29\xae\x17\xb1\xd7\x57\x36\x32\x53\xed\x9f\x82\x81\x59\x61\xac\xdf\xba\xb4\xb5\x38\xd8\xe7\x69\x3d\x21\xe6\xb8\x75\x98\xd8\x3a\x4c\x6c\xcd\x05\x1e\x60\x2e\xa0\x50\xc4\xb3\xb6\xb0\xda\x30\x8e\x78\xee\x26\x56\xcd\xfd\x25\xb6\x06\x55\x5b\x0c\xf9\x5c\x30\xa4\x12\x69\xfd\x4d\x44\xe1\x1b\x0e\xac\xfe\x84\x64\x9c\x0b\x13\x0b\x68\xa7\x40\x24\x62\xfc\x5b\xc9\xc8\x9b\xcb\xc5\xa5\xd6\xe4\xef\x23\x14\x2f\x1f\x98\xad\x65\xa6\x61\x99\x59\xb8\x41\xdf\x90\x75\x66\x79\xeb\xf2\x64\xb6\xcf\xed\xa2\x2f\xbe\x64\xeb\x5d\x75\xd3\x4a\x10\x5a\xa7\xb1\x87\xc2\x77\x41\xe4\xe7\xfa\x8d\xac\x88\x2b\x3a\x3a\x9d\xa7\x73\x91\xb3\x5c\x89\xdf\xde\x19\x50\x97\x4c\xf4\x54\x19\xab\x51\x4d\xc3\x51\x87\xda\x82\xd8\x89\xb8\x41\x8d\x13\xc5\x3e\xfb\x27\xf0\xd7\x33\xdb\xca\x56\x46\x26\x17\x51\x19\x8a\xbf\xbd\xf5\x79\xc2\xba\x3f\xf1\x74\x3e\x1b\x3d\xa0\x79\x66\x9e\xa3\x1d\x7c\xed\x1c\x9f\x84\xd0\xb8\x76\xf4\xcf\x92\xff\xd9\xda\xc8\xaf\x7c\x14\x9e\xab\x6d\x87\x7a\xb8\x5a\x56\xfe\x34\x3e\x73\x56\x77\x8d\x5d\xa7\xf1\x38\x0e\xe3\xfe\xb4\x69\xce\x50\x65\x84\x01\x27\x3b\x45\xcb\x06\xd9\xc6\xd5\x65\x65\x98\xdb\xa0\x57\xea\x30\xaf\xa6\xa3\x6e\x1c\x26\x52\x94\x5c\x6d\x80\x2b\xdb\x30\x30\x74\x77\xd7\x26\x2e\x71\xc4\x3e\x68\x82\xad\x5c\xac\xb5\x4c\x55\xca\xc6\xa8\xc9\xe1\x52\x00\x00\x8c\x9c\xf1\x24\x19\x38\x68\x3c\x0e\xa7\xdc\x82\x21\x95\xc0\xa2\xdc\x6e\xc3\xb7\x31\x98\xf5\x62\x62\xb3\x91\x52\xf7\xcd\x0f\xf4\xdf\xd9\x31\x74\x42\x1c\xf5\xe9\xe0\x07\xfa\xfd\xf7\x6a\xfe\xd1\x24\x0c\x5f\xba\x59\x8b\x36\xed\xec\xeb\x3f\x5a\xb3\x74\x87\xfe\xaf\x7f\xee\x7b\x72\x59\xec\x08\xc0\x97\xaf\xab\x64\x8a\x14\xcc\xc6\x82\x1f\x6c\xd3\x0e\x48\x01\x68\x2d\x99\x61\x52\x79\xe8\x02\x9c\xd8\x78\x99\x1e\x39\xb1\x23\x00\x5a\xda\x98\x6a\x06\x54\x7f\xaa\x97\xad\x7e\x04\x29\x4f\x84\xad\x16\x18\xe7\x0b\x3c\x7a\x4a\x56\x3c\x63\xc5\xa2\x2b\x61\xea\x8a\xdc\xee\x83\xf2\x8e\x69\x8b\xd4\xdb\x5a\x0f\xfd\x1d\xac\x87\xba\xf5\xb9\x94\x7d\x44\xd1\x9e\x60\x56\x14\x6e\xe7\x99\x94\x97\xaa\xcd\x32\xda\x6f\x23\xd6\x46\xb5\xcf\x75\xd5\x23\x3d\x92\xd6\x43\x6c\xec\xb9\x4d\xd1\xa8\x10\x6f\x23\x36\x4a\x73\x23\x9b\x49\x21\xde\x86\xe0\x2c\x4e\xd4\x64\xf4\xbc\xf1\x45\x0b\xa3\x28\xa6\x41\x4f\x26\x2b\xb6\x2d\xc9\x90\x80\x1d\x4a\xa6\xbc\x39\x71\x6d\x2d\x44\x47\x4e\x18\x03\x1e\xa5\xc3\x8e\xdc\xb7\x91\x93\x67\x36\x70\x5d\x17\x6b\x3f\x77\x77\x23\x27\x27\x17\x79\x25\xfb\x43\x2b\xbe\xca\x0a\xb9\xb6\x92\xd5\x18\x24\x25\x77\xc8\x52\x5f\xe9\x75\x57\x59\x0d\xff\x14\xec\x64\x67\x92\xec\x93\xc5\x19\xf9\xf4\x31\xc2\x7c\x80\x2d\x31\x12\x55\x72\xd5\xd2\x46\x36\x9f\x5b\x72\x23\x2d\x68\x8c\xb0\x25\x46\x51\x28\xbe\x6a\xd1\xca\x6f\x53\xd0\x5a\xbc\x01\x93\xb1\xcf\x37\x40\xe6\x05\x4c\x30\xb5\x09\xb4\x0e\x3c\xa9\x63\x44\x61\x18\xdf\xb1\x93\x99\xef\x09\x9f\xe4\x18\x93\x24\x48\xa8\x4d\xd8\x2b\x9d\x4c\x38\x5d\x6f\x13\x90\x7a\x88\x7a\x03\x9b\xbd\x15\xc2\x15\x88\x95\xc9\xaf\x94\x95\x18\xea\x51\x4c\x3e\xe6\xe1\x59\x84\x51\x5a\xe4\xfa\x36\xfb\xff\x2c\x85\x95\xa9\xb0\x65\xda\xfe\x82\x3b\x9d\x55\x59\x9a\x0b\x61\x18\x69\x65\x01\xb0\x63\x1c\x25\xb1\x1e\xec\xd0\x3b\xe2\xc2\xda\xd8\x7d\x8b\xff\x78\xf5\xdd\x2c\xd2\x12\x6e\xf3\x9f\x42\xa7\x2d\xfe\xf6\xbd\x54\x67\xd4\x7a\x31\xd9\x93\x3d\x89\xa6\x68\x84\xd3\x3f\xd4\x75\xd0\xf2\x19\x62\x30\xab\x3b\xd2\x32\x81\xa1\x4c\x5d\xd8\x2b\xda\x8b\x89\x5b\xd9\x8e\x9a\xdb\xc9\x19\x80\x37\x15\xc6\x66\x62\x02\xde\xa4\x01\x9e\x01\xda\x40\x2f\x0f\x30\xbf\x33\x21\x2c\x32\xbe\xeb\xae\x47\xbd\x3f\x5b\xc1\xf5\x96\x69\xd3\xb6\x5d\x0b\xd2\xb4\x01\x1e\x6d\x1b\x13\x6e\x4b\xe8\x7e\xbb\x84\xae\x57\x4f\xe8\x8a\x24\x87\xaf\x06\x94\x8e\x17\x10\xb8\x5a\x38\x38\x64\x50\xac\x61\x03\x8a\x55\x45\x7d\x93\x99\x16\x4b\xd1\xe0\x88\x6e\x1d\x9f\x7a\x03\x14\xf5\xb1\xcc\x41\x75\x17\x30\xca\x04\x83\x99\x87\x12\xac\x00\xb4\xa8\xa3\x0c\xea\xdc\x97\xf9\xdf\x30\xff\x53\x3a\x30\x8b\xf6\x0e\xea\xc6\x84\xda\x19\x49\xa3\x11\x42\xb3\x36\xee\xb4\x68\x5a\x99\xb5\x4a\x8d\xb6\xf9\x5b\x5e\x8a\x1c\xb7\xb1\xb7\xdc\x18\x31\x5f\x39\xf1\x8e\x2f\x7b\x65\xab\x3e\x64\x57\x5b\x7b\x5c\x57\x8d\x49\xa7\xe9\xe6\xab\x71\xac\x50\xd3\xb3\xb3\xf7\x4a\xfa\x88\x9b\x78\x9a\x2c\x50\xeb\xdf\x05\xa1\xef\x21\xe2\x97\x75\xfa\xec\xda\x33\x6c\xa6\x09\xd0\x84\x0d\x13\x1c\xc3\x5e\x8e\xaa\xbb\xcf\x5a\x94\x36\x78\x14\x51\x5a\x77\x15\x51\x5a\xff\xeb\x8a\xd2\xba\x7f\x8d\x28\xed\xf6\x29\xbd\xf4\xfd\xbf\x48\x94\x36\xdd\x52\x18\xcf\x9d\xc2\x10\x1c\xff\xb9\x6b\xbf\x86\x24\xb7\x54\x8a\x44\xf8\x91\x04\x70\x0a\xe4\xc6\xb5\xeb\xa4\x61\x5e\x1c\x51\x14\x44\x98\x68\xe2\x30\xb3\x0d\x8e\x6e\x19\x87\xb7\x42\x3e\x2b\x4c\x46\x81\x72\xc7\x0a\xea\xda\x8b\x97\x85\xf1\xd2\x45\x5a\x66\x62\xfc\xf6\x0c\xda\x46\xe6\x9e\x66\x9f\xaf\x40\xdd\xdc\x2a\xea\x26\x9b\x20\xf4\x25\x81\xa3\xaa\xd8\xbc\xe0\xc8\x28\xcc\xe7\x90\x58\x70\x6c\x54\xaa\x57\xb1\x57\x10\xd7\x2d\x88\x2c\x93\x05\x81\x71\x92\x71\x18\x50\xdb\x72\x2c\xa0\x9e\x23\xec\xbe\xb5\x84\x86\xfa\xa5\xeb\x62\xe0\x7c\x8e\x83\x88\x37\xc8\x08\xc1\x3e\xa6\xd9\x4e\x42\xfc\xbd\xe5\xdc\x08\x49\x4e\xe2\xa0\x6e\x10\x06\x0c\x4b\x5b\x60\x3e\x6f\x77\xd8\x83\x49\xe4\xb3\xf2\xf6\xf5\xee\xee\x4b\xe2\xb0\x5b\x33\x65\x7d\x08\xa1\x4e\x3e\x2b\xc7\x43\xec\x6a\x03\x40\x07\x24\xbe\x7b\x11\xe1\xbb\x9c\x6a\xb4\xad\x7f\xbd\xfe\x1f\x0b\xa4\x09\x26\xe2\x28\xff\x92\xb1\x8f\x0a\x83\x05\x3d\x3b\xbb\x56\x38\x17\x38\x69\x89\x58\xd9\x4a\xfd\xa1\xf1\x9d\xce\x77\x33\x9a\x3a\x9c\x8d\xfd\x83\x3f\xed\xd9\xa5\x89\x80\x65\xb9\xae\x8b\x77\x77\x6d\xac\xae\xd4\x0e\x0e\x13\x9c\x39\x57\x46\xed\xd7\x9d\x1d\x21\xca\xc4\x3b\x07\x84\xa0\xa9\x13\x24\xfc\x5f\x9b\xe3\x0d\xf6\xba\xcb\x95\x85\x16\x00\x3b\xaf\xb9\x5c\x31\x5f\xe0\x97\xec\xfc\x79\xe1\xc4\x67\xef\x19\x00\x72\x89\xf4\xfe\xd2\xfc\x6d\x19\x19\x3b\x98\xa3\xca\x6c\xc6\x7c\x31\xb5\xb9\x69\x38\xc6\xac\x72\x8a\x8c\x3c\xeb\x53\x16\xe5\x6f\xec\xb2\x8f\xc4\xaa\xb5\x5f\x77\x00\xc4\xd5\xe9\x60\x33\x49\x63\xe1\xe1\x1e\xd8\x03\x2e\xfc\x03\x70\x96\xc2\x59\x76\x08\x5b\xc5\x33\xc9\x70\xfa\x0a\xe9\x64\x53\x53\x7c\x38\xd3\xbd\x5d\xb3\xfb\xc5\x37\xdf\x0a\x63\x21\x0c\x6d\x59\xdf\xf3\x6a\x1c\xdd\x3a\xb7\x88\xe4\x15\xd7\xd3\x31\xb6\x00\x28\xc9\x24\xd3\x5c\xee\xa8\x39\xd7\x8a\xe1\xe5\x55\xc5\xe0\x60\xea\x21\x33\xc3\x36\xed\xeb\x4f\x1b\xad\xf4\x11\xc8\xdf\xe2\x7c\x03\xdb\x51\x67\x1f\xb7\xa3\x8e\xeb\x63\x2f\xf6\xf1\xa7\xcb\x93\xc3\x78\x34\x8e\x23\x1c\x51\x9b\x55\xb2\x17\x36\xea\xf0\x76\x10\xa7\x6c\x6d\x41\x8b\x4a\x1c\xa0\x1b\xaf\xf1\x8d\x11\x52\xca\x0b\x12\x8f\x82\x04\x3b\x04\x27\x71\x78\x8b\x6d\x81\x8f\x23\xb7\xdd\x91\x83\xb7\x12\x4a\x82\xa8\x6f\xb9\x2e\xa3\xee\xe3\xde\x0b\x46\xb3\x46\x2e\x23\xde\xf2\xc7\x85\xce\xe7\xc5\xb3\x4f\xc1\x7c\x5e\xfe\x72\x3e\xb7\x33\x4a\x9a\x3f\x19\x6c\xf2\x6a\x8b\x8b\x03\x74\x1c\x27\x52\xe8\xab\x10\x4f\xea\x9b\x1c\xbb\x31\x42\x31\xf8\x14\xfa\xee\xd4\xf6\x0a\x0c\x53\x8e\xeb\x9b\x0b\x4d\x47\x26\x74\xfe\x5c\xb4\xc3\xa6\x70\xc7\x26\xdc\xc2\x8b\xd3\x4e\x1a\x0b\x7b\x4d\xf8\xea\xd1\x6a\x07\x4d\x41\x9b\x80\xf3\x23\x65\xc1\x76\xbc\x9c\xbb\xad\xfd\x1a\x40\x4f\x67\x71\x8d\x7e\xf4\xed\xb7\x60\x7b\xb2\x66\x47\x85\xcf\x8d\x9e\x3c\x9d\x99\xbe\x59\xcc\x4c\x27\x41\xd4\x0f\x1f\x6a\xef\x97\x91\xe4\xd1\xb3\x66\x7b\xc9\x3a\x6c\x2f\x59\x95\xed\x8d\x14\x8b\x49\x16\xb0\xbd\x88\x53\x28\xe4\x6b\xb0\xbd\x04\x80\x96\x36\xa6\x8d\xb3\xbd\xa4\x9e\xed\x45\x5f\x97\x93\x6c\xce\x9f\x08\xae\xb3\xe4\xb6\x3a\x0b\x92\x43\xae\x44\x6a\x55\x39\xee\x29\x55\x36\xa7\xe6\x28\x22\x7d\x4c\x4d\x22\x7a\x1c\x8f\x6d\x90\x42\x4e\xb3\x19\x30\x14\x4d\x9a\x09\x16\xa1\x70\xcb\xac\xc9\xd8\x0f\x43\xb7\x52\x4b\x2a\x15\x96\x30\xa9\xa9\xce\xd4\x9b\x30\x10\x2d\xd4\x94\xaa\xa9\x14\xc9\xbe\x5c\xfd\x7a\xe1\x0c\x50\x32\xb0\x89\x3d\xf3\xbd\x16\x82\x19\x98\x56\x02\x45\x8f\xad\x10\x8a\xf9\xb7\x82\x14\x46\x32\xf8\xa3\x3d\x0b\x28\x1e\xb5\x82\x7d\x0d\x8e\xf9\x42\x47\x55\xfa\x72\x04\x33\x5d\x76\x2b\x84\x17\x79\x6f\xec\x96\x44\x7a\xbe\x8e\x59\x71\x28\xad\x10\xf2\x01\x06\x7e\x0b\x3b\x81\x9f\xb2\x13\x09\xd2\x14\x2c\x8f\x32\x28\x88\xd8\x57\x63\x82\xfd\xc0\x43\x14\x27\xaf\x90\x17\xea\x88\xb3\x80\x1e\x37\xa1\xb3\xcb\x0b\x66\x27\x47\x2d\xec\xbe\xc5\xce\xc9\x11\x14\x76\x01\xec\x07\x27\x77\x57\x1e\xec\x84\x0e\xf6\x46\x98\x0e\x62\xff\x6b\x0d\xba\x38\x52\x78\x14\x24\xe3\x10\x4d\xf3\x52\xad\x60\xe5\x69\x08\x67\xa5\x3d\xe9\x02\xf7\x88\xf3\x10\xb8\xde\x9c\xc3\x59\xec\xab\x9f\xb1\x8f\xa1\x74\x11\x10\x25\xf2\x07\x6f\x27\x1d\xec\x44\x85\xfc\x31\x9f\x5b\x16\x54\x65\xca\xb9\x40\x16\x73\x37\x3c\x05\x98\x31\xc6\xc2\x1f\x4f\x94\x88\xbf\xa1\xe6\x99\xc7\xca\x33\x64\xe9\x66\xd0\x58\x15\x34\x09\xd3\x7d\xda\xa2\x0e\x8d\xc5\x4f\xe1\x82\x4b\xd3\x54\xdb\x27\xba\xea\xda\x07\x9a\x72\xfd\xd1\x17\x5e\x37\x82\x71\xdf\xb6\xb1\x66\xb6\x03\xad\x7f\x70\x0e\x5b\x2b\xda\xb7\x0e\xc2\xf0\x85\x5c\x86\xe4\x85\xfd\x0f\x60\x49\x19\x57\x47\x51\x0c\xef\xe2\x38\xc4\x28\x02\x25\x63\x19\x01\xde\x28\xcd\xfa\x30\xca\xd7\xe8\xe8\x41\x6b\x3c\xbc\x5d\xac\xd9\x20\x41\x7f\x40\xf7\x28\x09\x46\x8f\x61\x25\x20\x08\xb8\xd9\xcf\x78\xca\x56\xc5\x7e\x0d\x69\x2e\x7d\xc3\xce\xcf\x78\xea\xd0\xf8\x34\xbe\xc3\xe4\x10\x25\xd8\x06\x40\xbd\x5d\xaf\x0a\x02\x20\xb9\x00\x5c\x36\x21\x5e\xb4\x9d\xa5\x2a\xf4\xf2\x4a\x44\xdc\x55\xf5\x2b\xdc\xf0\xe2\x95\x96\x6e\x40\xa2\x44\xfe\x80\x1f\x31\x45\xac\x44\x76\x8a\x23\x4a\x38\x55\xc5\xfd\x81\xe6\xf3\x59\x9a\xb3\xe3\x6c\x27\xd8\xa7\x5e\x1c\x79\x88\xda\x14\xc0\x76\xe7\x61\x47\x41\x86\xcb\xf8\x8b\x90\x75\x1e\x48\x42\x22\xeb\xbc\x00\x5e\xc6\x21\x6f\x6b\xdb\xd8\x39\x38\x3c\x4d\xc4\x0a\xb0\xd2\x23\x01\x2e\x99\xcf\xdb\x1d\xe0\x8c\xd0\xd8\xce\x40\x02\x28\xe2\x50\x94\x3f\x14\xe5\x8b\x3e\x5d\xf9\x79\x18\x8b\x50\x17\xdf\xde\x9a\xad\x3c\x03\x9e\x52\xf6\xdb\x1b\xbf\xbe\x79\x58\xec\x58\x80\x2b\xf7\x4a\x9d\x7c\x3b\x7b\x96\x4e\x7c\xf6\x6c\xd0\x72\x7b\xed\xc5\x04\xfa\x77\xec\x22\xd6\x7e\xc4\x2a\xc5\x17\x2b\xaf\xa9\x14\xd3\xef\xe5\x36\x4a\x5f\x9d\x70\x50\xaf\x76\xfe\xf2\xb3\x12\x36\xb5\x3a\x92\xa0\x0a\x11\xf1\x8a\x8b\x98\x50\xb9\x0f\xea\x13\x56\xc4\xea\x80\x43\xe3\x2b\x2e\x85\xb2\x81\xe1\xc0\x58\x89\xbe\xf4\x16\x2b\xa0\x31\xdd\x09\xb2\x12\x5e\x56\xfd\x58\x38\x51\x19\x4e\xff\x35\x17\x24\xdf\x44\xb5\x79\x2b\x1f\x41\x91\x5d\xee\x1b\xbc\xd7\x79\x3e\x36\x79\xd2\xb2\xdf\x39\x9a\xc7\x1c\xb7\x2f\x45\xea\x4f\x0e\x2f\x28\xb3\xcc\xaf\x83\x18\xb4\x0d\xaa\x20\x41\xcb\x14\xa8\xe9\xb5\x2f\x5a\x99\xa5\xb0\xe0\xc9\x6f\xb4\x61\x45\x1a\x4a\xa8\x5d\x18\xa9\x18\x23\xc9\xab\xbd\xcc\xa6\x5c\xa7\x42\xff\x37\x66\xfc\xf9\x9e\x8f\x28\xd2\x5a\xbf\xfa\x9c\xc4\xd1\x06\xc8\xd0\xda\x0f\xb2\xb1\xcc\x8a\x72\x9e\x3e\xa6\xb9\x74\x24\x97\x1a\xa9\xf5\x4d\x39\x57\xbf\x6c\xa2\x6c\xf0\x7b\x68\x1c\xac\x3c\x53\xde\xf8\xa9\xce\x96\xe0\x64\xb5\x3d\xe5\x0d\x9f\xe8\x2c\x0d\x81\x0c\xac\x6b\x36\x1e\x87\xd2\xbd\xa1\x18\x45\x2f\xf6\x71\x28\xa0\x54\xc4\x74\xd1\xc5\xc1\x4f\x4b\x5a\x29\x2c\x0e\xd0\x83\xec\x29\x89\xb2\x20\x20\xc1\x08\x91\xe9\xcf\x78\x6a\xc1\xc8\xb9\xb8\x3c\xf9\x78\x70\xf9\xfb\xcd\xcf\xc7\xbf\xe7\x4d\x92\x70\xd2\x97\xf5\x57\xa7\x9f\x7e\xe4\x95\x29\xc1\xc9\x38\x8e\xfc\xf7\x31\xe1\x5a\xf7\x4b\xec\xc5\xc4\x2f\x84\x33\x53\x9a\xbc\xaa\x76\xd4\x7d\xcb\xc9\x87\x08\xb8\x6f\x29\xfb\xb7\xfd\xba\x03\x00\xa4\x85\x00\x19\xa8\x3a\x68\x54\xed\x8e\x2f\x3f\x20\xdc\x74\xb5\xc6\xaa\x50\x14\xd6\xd5\x0e\x30\xf2\x31\x49\xaa\x8e\x95\xef\x55\x95\x2a\x26\xaf\x5c\x93\xc9\x2d\x2b\xfa\x12\x12\xd1\xbd\x5e\x10\xf5\x31\x19\x93\x20\xa2\x55\x59\x97\x72\x5b\x72\xed\xf4\xc6\x4f\xee\xf4\x72\xc1\xf7\xc4\xad\x12\x87\x93\x1a\xcb\x2f\x5c\xa3\xbd\x20\x6d\x5a\x94\x60\x74\x5c\x36\x52\x86\x59\x68\x3b\x72\x3e\x1c\x1f\x1c\x1d\x5f\x5e\xdd\x5c\xfd\xfe\xf1\xdd\xf9\x69\xc7\x25\x90\xa6\xf2\xf6\x78\x8d\xac\x91\x11\xa5\xc8\x1b\x7c\x50\x87\x63\x92\xd7\x68\x5b\x68\x41\xfb\x35\x0c\x72\x81\x0b\x72\xde\x9f\x5f\x1e\x9f\xfc\x78\xc6\x6e\x12\x0c\x9d\xb3\xab\x8b\x83\xc3\x63\xfe\x23\x71\x2e\x0e\x2e\xaf\x4f\xae\x4f\xce\x79\x25\x28\xdd\xb3\xc2\x0d\xe3\x57\x88\x80\x5c\x64\x38\xb1\x31\xb4\x91\x4b\x94\x92\x40\x1b\x84\xb0\x3a\xc8\x6f\xbb\x70\x9f\x92\x57\x1b\x52\xc7\xf7\x20\xd6\x56\xea\xec\xe0\xe3\x31\x1f\x56\xa7\x50\x9c\x8d\xae\x03\x0c\x79\x24\x02\xfb\x88\xd3\x6c\x21\x68\xb5\x51\x47\xfe\xc9\x8d\x41\xa8\x10\x4e\x22\x18\xa6\xab\xe0\x8d\x6c\x56\xdc\xe3\xe0\xb1\xa7\x61\x13\xc0\xf5\x57\xf9\xb8\x84\x5a\x24\x1f\x18\x24\xea\x54\xca\x55\x55\xbd\x49\x55\x4b\x3e\x98\x1d\x7d\x06\x8c\x33\xb2\x5f\x72\xa3\x82\xdd\x5d\x9b\xba\x04\x94\x27\x93\xc0\x10\x92\x76\xe1\x3c\x74\xea\xc6\x4f\x9c\x4c\x1b\x02\x6c\x0a\x0a\x43\xfe\xc4\x5d\xf9\xbe\xb9\x21\xd7\x2d\xb9\x31\xfa\x23\x1e\x39\xbe\x6a\xf4\x41\x71\xf4\x71\xfd\xe8\x19\x9b\x32\x6b\xc7\x9d\x56\x69\xc0\x31\x0c\x1a\x0f\x78\xd6\x0e\x3a\x2d\xd2\x0e\x3a\xb0\xad\x5f\x57\x56\x56\xf8\x0d\xdb\xc6\x05\x66\x2d\xcc\xa2\x14\xb4\x63\x86\x99\xd2\x28\x26\x23\xfe\x32\x5d\xf2\xa5\x48\xb0\x6e\xff\x5a\xd8\xbe\xac\xe5\x05\x9a\x86\x31\xf2\x6d\xd1\x48\x6d\x67\x56\xcd\x38\x74\x61\xb6\xc9\xeb\x77\x84\x43\x95\xf5\xd2\x75\x11\xb7\x23\x1d\x61\x8a\xdc\x2c\x4f\x61\x20\x0d\x96\xaa\xc7\x31\x63\x8d\x5b\x09\x6c\x53\xa1\x89\x64\xac\x4b\xa7\x15\xa6\x02\x72\xc1\x1c\xc9\x75\xdd\x60\x3f\x6a\x05\x29\x0d\x46\x38\xa1\x68\x34\xce\x08\x3d\x3b\xc2\x77\x2f\x8e\x10\xc5\xc0\xe9\x63\x7a\x1d\x8c\xb0\xad\x4d\x3c\x1b\x2f\x7f\xce\xf2\x5d\x47\x65\x9c\x3d\x9f\xcf\xd2\x1d\x91\x63\xe0\x45\x45\xb5\x9c\x52\xec\xce\x3c\xe4\x0d\xb0\xb4\x0e\x6b\x05\x6d\xe2\x1c\x1e\x1c\x7e\x38\xbe\x39\x3c\x3f\xbb\xbe\x3c\x3f\x35\x5e\x09\xe8\x4d\x48\x12\x93\x56\xa0\x41\x3c\x39\x3b\x3a\xfe\x8f\xd9\xce\xf7\x0a\x6d\x8e\x0e\xae\x0f\x0e\x8f\xcf\xae\x8f\x2f\xcd\x86\x52\x29\x1a\x54\x1d\x30\xb3\x6d\xae\xc1\x0c\xaa\x0e\x9e\xd1\xbc\x6c\xdf\x17\xb4\xad\xfb\x3d\xc2\xdd\x2e\x3a\xbb\xbb\x76\xec\xf0\xbf\x0b\xc5\xca\xb6\x89\xb5\x56\x9e\xb8\xbc\x29\x27\x2d\x6e\x51\xe8\xbe\xc1\xff\xf3\x8f\xac\x0a\x40\x79\x64\x5c\xd7\x4d\x78\x3b\x86\x58\xc4\x29\xd3\x36\x17\xa2\x6a\x03\xec\xdc\x93\x18\x43\xeb\x6a\x1a\x79\x6c\xc3\x2d\x28\xa0\x70\x8d\x2c\x8c\xd3\xd2\x61\x2e\xd2\x2d\x58\x27\x01\x6b\x3c\x46\x0a\x24\x60\xb5\xfe\xf3\xa1\x3c\x82\x06\x6d\xcb\x2b\x6c\x88\x57\x30\x68\xfa\x25\x1b\xda\x0d\x22\x3f\x88\xfa\x7b\x64\x52\x6f\xbf\xb4\xc6\x8e\x16\xc0\x6d\xb7\xf4\x2f\xd9\x52\x2f\x8e\x89\x1f\x44\x0b\x02\xd0\xad\xb1\xa1\x1a\xb0\xed\x76\xfe\x25\xdb\xc9\x38\xde\xf5\xb6\xb1\xde\x27\x7a\x73\x89\x83\xeb\xdc\x56\x85\x43\x08\x59\x37\x8d\x30\x24\xd2\x5d\x7b\x71\xfc\x5d\x6e\x67\x9b\xa7\x21\x40\xdf\x70\x1a\x02\xe9\x93\x6f\x27\xae\x7e\x4e\x40\x10\xd9\xe1\x42\x3f\xfb\xf0\xa1\x89\x00\x42\x91\x08\x60\x09\x0b\x5b\x1d\x0b\xbf\x40\x20\x1b\x94\x82\xf4\xe8\x8d\xa4\x47\xaf\xa0\x58\x5a\x0a\xa2\xd2\x1c\xd8\x33\x2e\x2e\x6f\x15\x2d\xfb\x0f\xcf\xcf\xae\x3e\x9d\x6a\x04\xdc\xcd\xe9\xf9\xe1\xc1\xa9\x05\x5c\xd7\xc5\xb0\x6d\x30\x18\x9d\x16\x2e\x58\x36\xa6\x30\x71\x89\x91\xb1\x98\x1d\x80\xd8\x6d\x47\x1d\x38\x69\x96\xd2\x60\x9b\xa9\xf8\xdb\xc8\x54\xec\xfa\x90\x3c\x20\x5b\x71\x01\x43\x06\x89\x17\xdf\x62\x32\xdd\xf3\x06\x28\x58\x49\x36\xb9\xe4\xd5\x33\x21\x2e\x7d\xfa\x9e\xad\xd5\x36\x7a\x14\x67\x65\xb2\x8a\xb3\x72\xf8\x75\x9d\x95\xc9\x5f\xe3\xac\x1c\x3e\x4d\xca\xe9\x61\x71\x25\xc2\xe5\x94\x53\xf8\x78\x7a\x90\xaa\x7b\x53\xc4\xa5\x44\xc3\xa5\x18\x22\x1b\xd9\xb3\x14\x12\xe1\x2a\xd7\xce\x07\xd2\x69\x11\xe7\x90\x21\x06\xbd\x2c\x15\x3b\x6c\xea\x55\x6a\x52\xb2\x94\x15\x25\x5f\x4f\xab\xb8\x46\x58\x23\xee\x20\xd3\x8b\xc9\xe8\x1d\x0e\xe3\xa8\x9f\x5c\xc7\xa6\xf8\x2c\xf7\xb2\x4e\xb3\xc6\x1f\x50\xf2\x11\x45\xd3\x05\x4d\x97\x0a\xda\x29\x70\xdf\xd2\x95\x05\xd8\xa5\xd6\xef\x83\xc8\x3f\x08\xc3\x15\x5a\x9a\x02\xe8\x25\xcd\x4d\xe1\xef\x92\xe6\xa6\xb4\xb5\xb2\xf9\xf2\xd0\x48\xfa\x69\xa9\xb4\x1f\x7e\xe0\x3b\x97\xc3\x5a\x98\xde\x2c\x43\x56\xc9\x53\x43\x56\x8c\x5b\x09\xea\xd3\xaa\xe1\xc8\x8b\x7d\xee\x71\x8e\xd6\xe4\x58\x18\x33\xb5\x8c\x57\x11\xb0\xa5\x87\x09\xb4\xc9\x1a\x69\xd3\x48\x2d\xbf\x42\x6a\xf8\x15\x62\xf2\x2b\xa4\x40\xd8\x91\x05\x01\x0c\x52\x00\x93\xe5\x88\x39\x59\x84\x98\x19\x70\x85\xf3\x79\x4f\xc6\xb2\x70\x4a\x7f\x42\xa4\x8a\x41\x2e\x0d\x2b\xb8\x46\x7d\x1b\xa4\x38\x4a\x26\x04\x9f\x1c\x31\x62\xa3\xe0\x13\xd3\x17\xd2\xcd\x93\x23\x49\x6b\x58\x60\xdf\xc6\xce\x29\xee\x23\x6f\xea\x32\x8a\x5f\xfe\x7d\x72\xe4\x62\xe7\xe4\x08\xb4\xf2\xca\x37\x90\x95\xb8\xaa\xe7\x3f\xbe\x9b\x65\xa6\xee\x57\x69\x4b\xfb\x85\x46\x58\xfc\x2e\x04\x7a\x2c\x17\xf1\xc0\x83\x10\x2f\xc4\x5d\x95\xcf\x4f\x59\x01\xaf\xb8\x26\xb9\x1a\xd9\xe4\x81\x50\xcb\x6f\x4e\xdd\x6f\x47\x6e\xb1\x8f\x08\x40\x3e\x82\x52\x4f\x25\x45\x5c\x94\xab\x87\x0b\x7a\x21\xb4\x50\xab\x15\xb2\x4e\xed\xd0\x8d\x80\xb1\xf8\xb4\xb0\xf8\xd4\x58\x7c\x5a\x5e\x7c\x5a\xb1\xf8\x25\x7d\x13\x82\x04\x86\x5a\xd4\x4f\x60\x87\x4b\x94\x75\x8d\xa7\x95\x1d\xb8\xd0\x39\x39\x82\x21\x9f\x26\xfb\x6b\xd5\xb1\xa5\x30\x2e\x64\xea\x9b\x68\xa8\xc2\xe3\xc9\xfa\xfc\x66\x9c\xed\xd8\xe4\x6c\xfd\x1a\xce\x76\xcc\x38\x5b\x5f\x72\xb6\xe3\x22\x67\xab\xff\x84\x63\x93\xb3\x1d\xd7\x72\xb6\xe3\xf9\x7c\x6c\x72\xb6\xe3\x22\x67\x3b\x76\xbd\xf5\x39\x5b\xc6\x18\x2a\xce\x76\x0c\xe0\x48\xe3\x6c\xc7\x06\xdf\x39\x96\x9c\x6d\xa1\x7c\x7f\x5c\x46\x80\xa3\x8c\xb3\x1d\x2f\xe6\x6c\xcd\x1e\xaa\x71\x38\x1b\xe2\x98\x4d\x4f\x25\xeb\x1b\xab\x64\x7d\x5a\x98\x2b\x8d\xb3\x0d\x96\xbf\xf5\xf5\x7e\x2c\x6b\x3c\xf2\xc3\xdb\xbf\xe9\xeb\x8e\x68\xdc\x7d\x94\xa7\x5d\x04\x81\xf8\x9b\x3c\xed\xd9\x49\x2b\x7a\xd0\x62\x07\x51\x4a\x6c\xeb\x57\x7e\xf3\x41\x5d\xdc\x87\x68\x5f\x44\x01\x16\x2b\x96\xe5\xbd\x8f\x80\x40\x56\x8f\x65\xd8\xb6\xc1\x37\xda\x9e\xb5\xf5\x87\x42\x08\x29\xa5\xf9\x5c\x19\x95\x67\x47\x63\x8b\xca\xb7\xa8\x5c\x47\xd2\xa6\x23\xde\x6a\xc8\x7c\x91\x20\xa0\xca\x0e\x92\x75\x52\x19\x75\xf1\xe9\x46\x09\x50\xb6\x39\xfa\x71\x97\xc8\x86\xfb\x96\xb6\x49\x2e\x83\xd9\xdd\xb5\x0b\xbf\x5d\xe1\xd0\x00\x20\x4e\x4d\xb9\x55\x55\xba\x6c\xf6\x8c\xf8\x3e\xf6\x05\x7a\x49\x3e\x06\xf7\x41\x54\xca\x9d\x5d\xf5\x34\xa0\x0a\x1c\x4b\x8a\x38\x16\x99\x38\x36\x1f\x66\x5e\xc9\x50\x6a\x62\xc1\x99\xf2\x8c\x6d\xcd\xb0\x1c\x52\xcb\x42\xe1\x1d\x9a\x26\x56\x9a\x82\x25\x82\x16\x91\x0f\x80\x40\xe4\xce\xd2\x1d\xa9\xbd\xe1\xe8\x43\x6a\x70\x14\x70\xa5\xc4\xb1\x23\xe1\x5b\x2d\x5d\x41\xb4\x10\x64\x3c\xfa\x58\xe6\x67\x72\x94\xe3\x1e\xec\xbe\x9d\x65\x57\x0a\xb5\xb5\x36\x6c\x0b\x8a\x05\x6e\xbb\x03\x60\xb1\x88\xcb\x9d\x6d\x0c\x52\x00\x15\x15\x4e\x63\x82\x9d\xfc\x84\xbf\x8f\x89\x4d\x1d\x11\x88\x25\x52\x5f\x26\x6e\xfe\xa7\xc2\xce\x32\x02\x50\xc5\x62\xbc\x27\xf1\x88\x6d\xbe\x1d\x41\x0c\x11\x00\x30\x4a\x0b\x0f\x40\xed\x22\x16\x23\x5c\x55\xbc\x24\xe2\x46\x89\x73\x89\xdc\x75\x9e\x93\x50\x3c\x1c\x8a\xb5\x20\x0e\x46\xde\xe0\x12\x87\xfc\xba\x27\x83\x60\xac\xa4\x42\x33\xa4\xaf\x35\x5b\xa2\xf6\x1f\xd9\x80\xbf\x93\xa6\x3f\xc2\x21\xc5\xe1\x07\x3b\xe8\x4d\xd9\x26\x07\x91\x0f\x52\x35\x93\x3f\x3a\x76\xbe\xb8\x90\x8a\x65\x48\x01\x44\xf5\xcf\xee\x0a\x53\xab\x79\x7b\x43\x3b\x5a\x79\x72\x1b\x9a\x0f\xaa\x9c\xcc\x29\xb7\x0f\x2e\x0b\xdb\xd8\x40\x33\xd6\x2f\x52\x3e\xd7\x2d\x4e\x20\x12\xe1\x61\x0d\x43\x97\xc8\x58\x7b\xad\x8c\xa4\x11\xb1\xcc\x0a\xb6\xc7\x36\x86\x33\xe5\x4e\x14\x0a\x4f\x42\x94\x32\x82\x60\x5d\xc9\x6f\xd9\x39\xf9\x81\x34\xbe\x04\xb4\x35\xd1\x78\x1c\x87\x8b\x92\x04\xbb\xfa\xd2\x47\xf2\x4e\x10\xe0\xbe\xe5\xea\x04\x7e\xe9\xed\xf2\xcb\xf5\x42\xcb\x40\x22\xf3\xa4\x40\x3d\x79\x89\xcb\x6d\xab\x0b\x22\xb0\x83\xc3\xd3\xc4\xf0\xf1\xb6\x00\x8f\x1c\x58\x51\xe3\x56\x96\x2e\x18\x8d\x4a\xe1\xe8\x5a\x16\x14\xca\xc1\xb6\x65\x74\x06\x2d\xdd\x35\xdd\xea\x54\xeb\xc8\xb2\x57\x41\x8c\x20\x1b\x20\x7f\x05\x8c\xca\x36\xed\x64\xf5\xec\xd8\xb4\xb9\xa2\x0f\xe6\xf4\xf5\x02\x34\xb5\xc6\x4e\xd8\xa4\xb4\xb2\x44\x5b\x7e\xf1\x37\x14\xea\x1f\xd6\x2f\x8c\x96\xc9\xc5\x6a\xba\x2e\x34\xdd\xdc\x08\xaa\x44\x58\x8b\xb5\x08\x2b\x58\x15\xc5\x81\xef\xed\x8d\x49\x7c\x1b\x70\x6e\xa5\x31\x02\x2a\xc2\xfb\x5b\xeb\xcb\x9f\x22\x96\x0d\x1f\x84\x65\xab\xc8\xde\x68\x09\xd9\x5b\x8d\x65\x0f\x26\x74\x10\x13\x29\x64\xa8\x3c\xe0\x55\x8f\x30\x6b\xd9\x54\x5a\xae\xee\x69\x28\x71\xb6\x8e\x1e\xff\x1a\xbb\x07\xf4\x9c\xed\x1e\xec\x99\x4c\xad\x15\xf8\x5a\xf0\x31\xea\x44\x49\x0a\x43\x50\xf2\x4a\x5c\xc1\xfa\x47\xf3\xf0\x6b\x8c\xc5\x72\x58\x5b\x4a\xea\x2f\xa5\xa4\xca\xec\x53\xe6\x8f\x95\xb1\x7e\x36\xce\x0b\x73\x22\x2a\x7f\x56\x19\x29\x03\xca\x47\x6a\x85\xc7\x51\x0b\x56\xde\xd4\xf4\xf6\x31\x8d\x33\xd6\xb3\x1b\x28\x07\xf5\x79\xe8\x25\x11\x80\xb6\x37\xe4\x2f\x31\x07\x1f\x93\xf8\x7e\x23\xbb\xc8\xe1\x6c\x37\x71\x33\x9b\x98\x55\x2a\x09\x9e\x8a\xa3\xd2\xe2\xc1\x7e\xac\x74\xdd\x6d\x36\x03\x58\x3d\x70\x97\x05\x18\xbd\x3c\xb8\x0f\x22\x75\x87\x5f\xa1\x64\x6f\x84\xa2\x8a\x63\xf0\xc4\x45\xc6\x45\x9a\xb6\x2c\xea\xcd\xd3\x61\x3c\x54\xba\xbb\x0e\x99\xbb\x1e\x3d\xb3\x28\xcc\xd6\x03\x4f\x41\x09\xe4\xdf\x9a\x3f\xdb\xda\x33\x6f\xed\x99\xbf\x0d\x7b\xe6\xac\x72\x80\x92\x81\x05\x7f\xba\x3a\x3f\x73\x84\x02\x3d\xe8\x4d\x41\x8a\xef\x29\x41\x1e\xfd\x14\xf8\x9a\xac\x8e\x33\xc2\x3c\x4a\x74\x5b\xa3\x7f\xf5\x34\xc6\x35\xd9\x8d\x0b\xc9\x91\x65\x90\x39\x1e\xab\x53\x8f\x99\xd7\xa9\x57\x2e\x65\xfa\x14\xc3\x8a\x2a\x6a\x53\xf6\x21\x0f\xc2\x17\xba\xca\x66\xda\x88\x5a\x37\xcb\xf4\x50\x57\x3c\x64\xb5\x54\x45\x8d\x51\x92\x04\x51\xdf\x6a\xc9\xf0\xbe\xc9\x85\x28\x10\x0a\x22\x0a\x76\xba\x04\xa3\xe1\x0e\x6f\x7b\x87\x48\x54\x68\xfb\x9b\x28\xa8\x6a\xeb\x91\x80\x06\x1e\x0a\xf3\xc6\x87\xb2\x44\xb5\xce\x4f\x2e\x9c\x15\xba\x6e\xb5\x3b\xb0\x00\x3f\x2f\x50\x30\x5a\x6d\xae\x66\x9f\xa5\x99\xa2\xae\x45\x65\x93\x16\x11\xc1\x8d\x6b\xb3\x52\xe7\x3c\xaf\xb6\x4d\x5a\xe8\x6d\x6d\x4f\x79\x48\x43\x1e\xab\x9a\xc7\x56\x35\x02\xab\x66\x51\x55\xaf\x51\xbf\x8f\x55\x1c\x33\xcc\x6a\x8c\x12\x19\x77\x95\x47\x14\x4c\xd3\x4c\xad\x11\x3a\x93\xc0\x97\xd6\x81\xf9\x41\xe3\xa9\xa7\xd6\xb7\x9e\xd0\xa5\x9d\xb3\xa0\x67\xf3\x74\xdd\x12\x9f\xe6\x59\x73\x22\x7c\xf7\xe2\x98\x90\x98\xec\x88\x04\x43\x58\x24\xaf\x4e\xdc\xf6\x4c\x44\x32\x6f\x59\xff\x7a\xfd\x2f\x0b\xd2\x80\x86\x9c\x72\xa2\x2f\x7a\xf1\x24\xf2\xad\xb4\xc3\xed\x2e\xa5\x5e\x49\xd7\x42\x96\xa5\xe6\x3a\x0b\x48\x9d\x28\x29\xde\x81\x9c\x63\xa4\x79\x94\xf6\x62\x93\xaa\x65\xe1\xba\x4a\x21\xa0\x4d\x37\x60\xa2\x69\x2e\xd7\x5f\x37\xa7\x4c\x24\x2f\x1f\xe4\xc8\xaf\xd3\x57\x28\x7c\xc1\x03\xef\x47\xb1\x8f\x77\x77\x75\xcc\xc1\x8b\x13\x15\x92\x90\x8b\xf0\x37\xbd\xef\xba\xc4\x5c\x75\x9c\xdf\x21\x2d\x64\x8b\x56\x9f\xdf\x26\x7d\xf7\xd6\xd3\xd2\x55\x84\xcb\x6c\x46\x88\x6d\xd9\xae\x47\x94\x2e\xad\x21\x59\xaa\x88\x7f\x15\x95\x89\xd2\xdc\xde\xc4\x8b\xa3\x08\x7b\x74\x4f\xf0\xce\xdc\x38\xe2\xe7\x20\x62\x87\xbd\x70\x7f\x49\x5b\x9c\xcb\x8e\x8b\x19\xd6\x58\x1d\xa2\x5b\x07\x11\x3b\x17\xac\xc1\xfb\x98\xb0\x4b\xa7\xfe\xce\x9a\xd0\xcc\x1c\xe3\xa5\xeb\x12\xa1\x56\x63\xff\x88\x96\x2e\xbb\xe8\xa9\xb2\xfb\xde\x34\xfa\x62\x07\xb8\x52\xa6\x9b\x6b\x2f\x09\xb4\x7a\x01\x49\xa8\x3c\x6a\xa5\xab\x6b\x01\xfe\xc4\x25\x2d\x92\x3e\x44\x5a\x97\xe0\x07\x89\xea\x2a\xaf\xa7\x80\xb4\xbd\x9e\x4f\x2b\x6e\xe1\x92\x03\x52\x8a\x1a\xfc\xc0\xe3\x21\xe1\x2c\x95\xa6\x54\xb4\x20\x71\x88\x17\x49\x5b\x20\xd2\x8e\xd8\x53\x67\xa1\x16\xc8\x5b\x20\x5a\x4b\xf2\xd2\xd4\x5f\xd4\xb0\x5d\x16\x49\xea\x54\x5e\x43\x55\x55\x99\x92\x47\x30\xfe\x6e\xe4\x5c\x4e\x42\x9c\xf0\xe4\x75\xb3\x93\xa3\x56\xe4\x5c\x61\x8f\x60\xaa\x32\xc8\x44\x85\x28\xd0\xd7\xd3\x31\x2b\x62\xff\x40\xfe\x5d\x4b\x7e\xcf\x9e\x81\xdd\x5d\x19\x50\x4b\x83\x11\x69\x37\xe4\x0a\x87\xbd\xa2\xa5\xac\xc8\x51\x54\x77\x83\x56\xb3\x10\x30\xef\x57\xa1\x69\xe1\x2d\xd4\xb3\x77\x46\x59\x0c\xea\xdd\xdd\x6c\x25\xf2\xb0\xd4\x76\xfe\x43\xb3\xeb\xe0\x8d\x4e\x8e\x8c\x34\xa7\xc2\xb2\x6f\x8c\xf1\xf0\x20\x0c\x6d\x4b\xdc\x21\x20\x73\x0b\xd9\x96\x5a\x0a\xb6\x6f\x27\x47\x60\x07\xb3\xa5\xce\x16\x88\x03\x84\x91\x16\x4e\xdb\x2d\x1a\xc5\x64\xe5\x56\x2e\x8c\xc8\xdf\x39\xf6\xcf\x7a\xa4\x1e\x8d\xc7\x71\x18\xf7\x37\x21\x60\xcf\x40\xad\xe1\x7c\xf1\x6c\xc5\x6e\xc1\xa3\x88\xdd\x92\x55\xc4\x6e\xf1\xd7\x15\xbb\x25\x7f\x8d\xd8\xed\xc9\x05\xa4\x65\xb8\x78\x52\xef\xbb\xc3\xd1\xc6\xa3\x38\xef\x08\xc8\x4f\xc2\x75\x27\x5e\xfe\xfc\xc5\x0f\x24\xbf\x8a\x3e\x90\x15\xd6\xd7\x56\xee\x1b\x9e\x3d\x8a\xab\x05\x57\x40\x35\xc1\x15\xc2\xac\x3c\x74\x8e\xe2\xbb\x48\x64\x0d\x48\x0c\x46\xe7\x44\x75\xab\x79\x88\xe6\xda\xfd\x52\xed\x95\xab\xcb\x00\xf4\x06\x86\xf7\xa8\xcb\xd9\x93\xba\x06\x57\x25\xb1\x0a\xd1\xfc\x72\xf3\x8f\xd8\xb3\x12\x3a\x9f\xc6\x6b\x8c\xbd\xd4\x6f\x36\xf2\xb2\x24\xa7\x7e\xf4\x15\x2b\x50\x1c\x7f\x51\x14\x52\x37\x76\x64\x63\x18\xd8\x81\x3d\x4b\x61\x58\x11\xd6\x82\xf2\x64\x7e\x5a\x1c\x0b\xe8\x15\x1c\x9c\xfc\xec\xfa\x8c\xb8\x7b\xd3\xb8\x99\x7b\x53\xd7\x74\x6f\x1a\xd7\xb8\x37\x75\xdb\xb8\xe3\x8e\xa5\x7b\x53\xb7\xe8\xde\xa4\xff\x84\x5d\xd3\xbd\xa9\x5b\xeb\xde\xd4\x9d\xcf\xbb\xa6\x7b\x53\xb7\xe8\xde\xd4\x75\x47\xeb\xbb\x37\x79\xd0\xcf\xdc\x9b\xba\x00\xf6\x34\xf7\xa6\xae\xe1\x7c\xd4\x95\xee\x4d\x85\xf2\xfd\x6e\x19\x29\xf4\x32\xf7\xa6\xee\x62\xf7\x26\xb3\x87\x6a\xbc\xc6\x86\xd8\x65\xd3\x53\xee\x4d\x5d\xe5\xde\x24\x5d\x9b\x60\x0f\x76\x35\xf7\xa6\x49\x2d\xe1\xc4\x7d\x31\x5e\xed\x89\xe3\xb6\x47\x70\x3f\x48\x28\x26\xd8\x2f\x87\x33\x21\x71\xe0\x63\xc2\x23\xaf\xe7\x1f\x96\xbf\x7b\x5a\x39\x13\xe4\xf4\xd9\x3c\x91\x91\x34\x41\x38\x6e\x25\x14\x91\x3e\xa2\xb8\xdc\xf8\x29\x4e\x94\x3b\xd4\x2e\x4c\xac\xc7\x5b\x7c\x05\x23\x28\xe9\x30\x22\x06\x36\x53\x5e\xa5\x59\x1c\xe4\x42\xca\xbd\xa2\x3f\xcf\x4a\x46\x53\x62\xba\x5d\x1a\xa3\xc5\xd3\xe5\x2d\x9e\xcb\x74\x3d\x14\x55\x1d\x61\x0f\x45\xc5\x36\x4f\xf1\xe4\x7a\x03\x1e\xa1\xb9\x6a\x7a\xbc\x26\xc1\x74\xef\x16\x85\x81\x2f\x9c\x95\xca\xb5\x15\x9b\xdf\x8b\xc9\xe8\x55\x75\x03\x0d\x54\x1e\x63\x67\x4f\x37\x2b\x5c\xa3\xf1\xde\x80\xd2\xf1\x9e\xc8\x89\x51\x97\x9e\x42\x10\xc0\x3c\x82\xde\x06\x62\x7c\xaa\x64\x11\x33\xab\x72\xf0\xad\x4c\x88\x03\x2b\x1b\x14\x06\xdc\x0a\xb3\x5d\xe2\x34\xbf\xe7\xda\x49\x1d\xcd\xef\x0d\xf0\x08\x59\x00\x06\x06\xd1\x5f\x3c\xfe\xb5\x21\x44\x97\x11\xfe\x02\xbc\x16\x3f\x34\xfe\x56\xe3\x87\xae\x16\x4f\xe7\x46\x9e\x9c\x98\x24\x5c\xc5\xf6\x11\x8d\xd3\xbb\x20\x0c\x19\x61\x48\xe2\xa9\x0d\x66\xe5\x66\x8c\xee\xca\xce\xec\x7b\xce\xd1\x23\x21\x18\x0b\x5d\x93\x23\x7f\xfb\x4f\x8d\x76\xc9\xf9\xef\x7f\xea\xcc\xf8\x3f\x39\x33\x2e\x0e\x8c\x0c\x90\x9f\x75\x27\xc0\x87\x40\xc4\x69\xd8\x09\x7a\x76\x22\xba\xc2\x6e\xb2\x63\xa9\x63\x6c\xbd\x54\xb1\x02\xb8\xb7\x90\x5b\xc4\x66\x09\x60\xc7\xc1\x7e\x0d\x23\xe7\x50\x0d\x1b\xd8\x08\x62\x98\xc0\x59\x36\x91\x56\x26\x60\x4c\x41\x8a\xc3\x04\xbf\xa8\xf8\x26\x63\x63\x82\xb4\x38\x44\x30\x0b\x7a\xf6\x4b\x73\xad\x9c\x01\x4a\x6c\x9c\x69\x31\x29\x8f\x01\xca\xa7\x12\xed\x64\xab\x42\xb9\x64\x50\x26\xca\x10\x07\x0c\x94\x77\x47\x06\x69\x8f\x72\x11\x95\xd9\x80\xcb\xb3\x18\xbd\xed\xbb\x81\x46\x6f\x8f\xf2\x53\x3b\x76\xdb\x49\x07\xf6\x9a\x11\xdc\x03\x93\xe0\xee\xd5\x10\xdc\x03\x46\x70\xf7\x24\xc1\x3d\x28\x12\xdc\xfa\x4f\x38\x30\x09\xee\x41\x2d\xc1\x3d\x98\xcf\x07\x26\xc1\x3d\x28\x12\xdc\x03\x77\xbc\x3e\xc1\xcd\x28\x56\x45\x70\x0f\x00\xec\x6a\x87\x76\x60\x90\xc3\x03\x49\x70\x17\xca\xf7\x07\xe5\xbb\xd8\xcd\x08\xee\xc1\x62\x82\xdb\xec\xa1\x1a\x9d\xb0\x21\x0e\xd8\xf4\x04\xc1\x1d\xbb\x03\x18\x08\x82\x3b\x23\xb7\xe1\x60\x67\x95\x48\xfc\xf2\x39\x0b\x03\x1c\xd1\x57\x52\x7b\x28\x5e\xac\xda\x9c\x7b\x5c\xe4\xa6\xe7\x31\xda\x31\xa5\x46\x90\x80\x59\xf4\xad\xa2\xc2\x6c\xb0\x13\x5d\x59\xc2\x26\x15\xd6\xe4\x2d\x22\x35\x87\x3a\x64\x87\x9a\xc8\x43\x1d\x16\x0f\xb5\xfe\x13\x86\xe6\xa1\x0e\x6b\x0f\x75\x38\x9f\x87\xe6\xa1\x0e\x8b\x87\x3a\x74\xa3\x55\x0e\x75\x21\x40\xa2\x94\xe6\xcd\xe7\x51\x0a\x18\xa7\x8e\xb4\x43\x1d\x1a\x47\x2e\x94\x87\xba\x50\xbe\x1f\x2e\x10\x2d\xc1\x70\xf1\xa1\x36\x7b\xa8\x3f\x18\x9c\x7b\x94\x5c\xe4\x86\x84\x82\x9e\x6b\xd3\x1a\x02\xc1\x8f\x47\x16\x80\xcb\x42\x8f\xd7\x7c\x8b\x28\xda\x4b\xb8\xe8\x25\x33\xc3\x28\x8b\x17\x17\x51\x1a\x8b\x52\x53\xb1\x91\xc1\x90\x23\xfe\xbc\x90\x07\xab\x4e\x8c\x42\x36\x0e\x0b\x06\xa2\x74\xc5\x77\x3e\x64\xdc\x71\x84\x89\x7c\x60\xfd\x78\xe4\x64\x45\xb6\x6c\xa4\xe1\x02\x4e\x0c\x5c\x61\x2a\x2a\x90\xef\xff\x1a\x24\x41\x37\x08\x03\x3a\x15\xef\xa1\x0d\x2a\xe9\x84\x0c\xa6\x43\xf0\x28\xbe\xc5\x0a\xf4\x78\x42\xd8\x37\x50\x8c\x52\xff\xb2\xc8\x6b\x54\xf6\x54\x82\x8d\x7c\xdf\xce\xa6\xe1\xc7\x1e\xff\xda\x06\x70\x76\x9b\x7d\x2b\xde\xf5\x96\x10\xaa\x31\x0e\x1a\x53\x67\x10\xf8\x3e\x8e\x76\x77\xb5\x11\xed\xbd\x01\x8c\xf2\xbf\x1b\xe0\xe8\xe0\x16\x05\x21\xbb\x71\xec\x9e\xab\x07\xbb\xa2\x97\xcc\xa7\x5f\xc2\xdb\x67\x4b\x75\x41\xe2\x51\x90\x60\x3b\xd2\x2c\x42\x2a\x47\x5d\x31\x46\x9d\x2b\xb1\xb9\x89\x18\x1f\x13\x68\x49\xa0\x0e\xc1\x49\x1c\xde\xb2\x71\xa5\x72\x1d\x25\x09\x54\xa2\xb6\x5e\x57\x52\x5b\xaf\x75\x6a\xeb\x75\xa7\xf5\xfa\x87\xb6\xe3\x38\xe6\x96\xd7\x78\x63\x53\x07\x75\x63\xc2\x49\x0b\x50\x7f\x4e\x52\xe4\xfd\x39\x09\x08\x96\x94\x90\xd9\xcc\x49\x82\x2f\xf8\xad\x5b\x19\xd9\xfd\xc3\xf5\xf5\xc5\xcd\xc7\x83\xff\xdc\x1c\x9e\x9f\x9d\x1d\x1f\x5e\x9f\x9c\x9f\x5d\x59\xc0\xdc\x02\x44\x91\xe3\x85\x71\x82\x7d\x5b\x10\x83\x91\x5b\x33\x89\x20\xf2\x6d\xec\xbe\x7d\xf9\x12\x3b\x32\x09\xa0\x0d\x78\x82\x1d\xfc\xe7\x04\x27\x74\x2f\xf0\xad\xce\xee\x2e\x75\x82\xc8\x0b\x27\x3e\xcf\x96\x5c\xdb\x0e\x80\x9d\x0c\xa3\x45\xbb\xbb\x16\xc5\xf7\xf4\x15\xbe\xc5\x11\xdd\x13\xe2\x5b\x61\x6f\xa3\x7d\xef\xc5\x9c\x9b\xd9\x63\xb4\x17\x4f\xf2\x23\xa3\x27\xea\x8b\xc1\xd1\x57\x62\x03\x27\xc2\xf7\xd4\x06\xe2\xb7\xae\x02\xdd\xdd\xb5\xa5\xe6\x36\xc4\x88\x9d\x2a\x00\x23\xb9\x0d\xff\xfa\xe7\xff\x07\x40\x5a\x02\xc9\xce\x16\x66\xb4\xa1\xf8\x00\xcb\x3b\xa3\x37\x11\xaa\x63\x41\x22\x86\xee\xc4\xd6\x85\xb2\x02\xf9\xb4\x69\x07\x36\xa1\x0d\x01\x4c\x4c\xb8\x1c\x7f\xb5\xa3\xa6\x70\x83\xd2\x78\x39\x0a\x6c\x93\xa6\x80\x11\x58\x9f\x64\x2a\xc7\x5a\x36\xd9\xfa\xda\x0c\x94\x2b\xa7\xaf\x94\x79\x25\x27\x64\x59\x8b\x65\xbd\x88\x56\x3c\xe3\xc2\xde\x18\x11\x34\x4a\x56\xe0\xff\xf3\x00\x55\x92\xac\xcc\x08\xa8\xdb\xa7\x44\xed\xf5\xb7\xd4\xde\xb7\x4d\xed\x65\x3b\x35\x7d\xd6\x96\x0b\xe7\x8f\x62\xb9\x30\x5d\xc5\x72\xe1\xe6\xeb\x5a\x2e\x4c\xff\x1a\xcb\x85\x9b\x27\x63\xb9\xc0\x89\x39\x8a\x08\xfd\x4d\xa7\x38\xf3\xc4\xf4\x95\xb5\x15\xc6\xf4\xfa\x92\x06\x3d\xdb\xda\x7b\xc3\x28\x91\xdc\xb0\x89\x42\x4b\xd8\xc7\x3b\xba\xd9\xac\xb0\x94\xb7\x00\xc8\x4c\xf2\x8b\x84\x2f\x05\xd2\xba\x9e\xa6\x4a\x20\x77\xe1\xce\x32\x77\xa2\x96\xcd\x10\x41\x26\x57\x13\x21\x87\x3f\x5d\x9e\x1c\xc6\xa3\x71\x1c\xe1\x88\x82\x14\x0e\x5d\xfb\xb5\x66\xa1\x67\x03\x78\xe7\xb6\x69\x31\xa7\x23\xb4\xfe\xb3\x77\x29\xa9\xac\x93\x23\x8b\xff\x14\xb2\x75\xeb\x52\xa4\x35\xb4\x84\x94\xec\xb8\x5e\xd0\x2b\xf8\xb8\x60\x21\x1f\x17\xd7\xd4\x56\x88\x3e\x00\x9c\x2c\x6e\xcc\x5d\x9a\xf8\x7b\xff\xea\x7e\x40\x2c\x00\xbd\x3a\x09\x34\xa6\x34\x88\xfa\x0c\xa4\xdf\x90\x33\xbc\xd5\x39\xc3\x91\x64\x02\x6f\x75\xce\x70\x6c\x14\x16\xa4\x39\x3d\xa3\x32\x9b\x82\x05\xbb\x46\x55\x36\x68\x38\xd8\x38\x57\x39\x46\x24\xc1\x9f\x2e\x4f\xd9\xc1\x20\x8b\x4e\x0f\xc4\xee\xdb\x8b\xdc\x79\x4d\x0a\x44\x11\x7b\x58\xbe\x60\x1e\xd9\x3c\xd5\x7e\x15\x4c\x1c\x4d\x9e\x42\xa4\x78\xbd\xba\x39\x3e\x3b\x78\x77\x7a\x7c\x64\x01\xed\x35\xc4\x4e\x94\x9b\x24\x8a\x1f\x32\x4a\x61\x94\xcc\xe7\xd2\xc0\x92\xfd\x80\x95\xa0\xb3\x6c\x9f\x75\xd0\x33\xf7\x19\xad\x13\xad\x4c\xf6\xa5\x39\xd9\x64\x5d\x66\x65\x10\xaf\xca\x5c\x2f\xe3\xa7\x27\x24\xb4\x8b\x4b\xa5\xb6\xc3\x68\xd8\x8d\x7d\xd6\x91\xb2\xbb\x2c\x50\x41\x98\xb1\x61\x99\x88\x3e\xe2\x48\xac\x2c\x4e\xcd\xf1\xef\xde\x9b\x97\xae\x6b\x53\x97\xaa\x08\x79\xff\x7f\x64\x01\x15\x72\x03\x3b\x94\x04\x23\x1b\x00\x19\x25\x8f\xd5\x01\x27\x88\x7c\x7c\x7f\xde\x63\x3f\x59\xc1\x7e\xd4\xc2\x29\x80\x7b\x6f\xc0\x8e\x7a\x37\x49\x89\xdb\x85\x88\x73\x9f\x22\x9d\x35\x79\xfb\x66\x9f\xec\xbd\x69\x71\xf2\xe9\xcd\x0f\xe1\xbf\xc9\x0f\xe1\xf7\xdf\x03\xd4\x0e\xf7\xde\x74\xb4\xc7\x34\xec\xec\x68\x83\xe4\x9c\x96\x8b\xf8\x38\x3d\xc6\x67\xd5\xce\x4c\x3a\x1f\xbe\x7c\x2d\xdc\x0e\x5f\x14\x93\x69\x53\xa0\xb2\x99\x49\x4e\xd1\xc6\xdc\xaa\x15\x33\x32\xd0\x43\x94\x61\x56\xee\x55\x28\x63\x1b\x67\xfa\x0a\xaa\xbe\x3b\xb7\xcf\xed\x59\x0a\x31\x0f\x7f\x28\x2f\x49\x2b\xcb\xad\xc6\x4d\x69\x00\x6c\x53\xc8\x76\xad\x93\x56\x1b\x1c\x1b\x17\x86\xe7\xf2\xc6\xa9\xe4\x67\x2f\x38\xf1\xaf\x53\x22\x51\x79\x45\x89\xb6\xa2\xd1\xdb\x37\xfb\x91\x58\x51\xe4\xbe\xf9\x01\xfd\x3b\xfa\x01\x7d\xff\x3d\x20\x6d\x54\x5c\x51\x24\x73\xf9\xb6\x43\x36\xb8\xa4\x23\x50\x01\x3f\x4f\x45\x94\xd1\x0e\x58\x83\xb8\xa3\x42\xfa\x87\x36\xe6\x5f\x00\x75\x4c\x5e\x58\x00\xb6\x27\xac\xcc\xeb\xb8\xb1\x3c\x1f\x2f\x2c\xa0\x1f\x23\xe8\xbb\xb3\x09\x09\x5b\x13\x79\x8c\xa0\xc8\xfd\xda\x0a\xd4\x6f\xc9\x10\xb5\xce\xed\x19\x7b\x77\xce\xcf\xae\x8f\xcf\xae\x6f\xae\x7f\xbf\x38\xee\xb4\x2c\xcd\xde\xf6\xd5\xe7\x24\x8e\x7e\x78\xe1\x0d\xd8\x7d\xa0\xee\x84\xf6\xf6\xfe\x5f\x2b\x85\x43\xdb\x03\x00\xb2\xd1\x73\x16\x11\x32\x46\xb3\x15\xa6\x8c\x0a\xf5\x1d\xf1\x16\xc8\xe0\x51\xee\xdd\x62\xad\x82\x96\x36\x4d\x8e\x49\x06\xab\x2b\xa7\xbe\xd7\x5b\x40\x89\x0e\xf4\x32\x1e\xd0\x0e\xce\x52\x4d\x46\x10\x02\xf6\xec\xff\x78\x7c\x6d\xf1\x1e\xc4\x2a\x00\x7e\xa8\xb5\x2f\x8b\xf3\xcf\x6f\x19\x9b\xbb\x05\xf6\x7d\xbe\x4d\x6e\xd1\x69\xd8\xf6\xb9\xb4\x05\xb4\xec\x52\x24\x6e\x51\xb3\xbb\x2b\xfe\xcd\x84\x4e\xf3\xb9\x4e\xb2\xcb\xcf\xb3\x5a\x91\x98\x8e\x77\x24\xab\x76\x70\x98\xe0\x0c\xd5\x5c\x94\xbb\xde\xc1\x9a\x40\xcb\x96\x93\x9a\x90\x30\x9f\xc0\x3e\x1f\xfd\x84\x84\xee\x1f\xdf\xcd\xf8\x1f\xe9\xee\x77\x33\x9c\xfe\xd1\x32\x4a\xf7\x79\x69\x46\x34\xd6\xae\x8d\xbb\xf4\x6c\x40\x3f\xed\x61\xea\x0d\x7e\x0b\xe8\xe0\x3a\x1e\xe2\xa8\x6c\x69\xaf\x9e\x51\x69\x9a\x7e\x15\x4e\xfa\xb9\xb9\x3a\x1d\xe0\xc8\x8e\xdc\xb7\x1c\x88\x6d\x59\xdf\x63\x28\x2f\x3d\x15\x66\x74\xda\xc9\xb5\xfe\xb3\x77\x28\xd8\x79\xde\x93\xd5\xca\xa5\x50\x99\x61\xfb\xbe\x65\x69\xbe\x04\x29\xa4\x6a\x6a\x3c\x6f\xb3\xba\xf6\xa6\x30\x73\xa7\xca\xae\x32\xc7\x09\x9b\xc3\xb2\x99\x3e\xd7\x29\x22\xa0\x6a\xcc\xb5\xc2\xd2\x61\x4d\xb4\x2a\x17\x2e\x29\x2d\x9c\x96\x96\xfb\xfa\xfc\xe7\xe3\xb3\x4e\x4b\x0b\x18\xa9\xaf\x1c\xd6\x56\x2e\xd1\x56\x0e\x22\x97\x3a\x19\xa5\xa4\xc6\x6e\x93\xdc\xab\x43\x93\xf6\xda\x84\xc7\x7c\xcb\x93\xdf\x9b\xe2\x5e\x04\x67\xf1\x18\x47\x5c\x0c\x4d\x9d\x4c\x46\x2a\x05\xd2\x20\x85\x23\x9c\x24\xa8\x8f\x5b\x34\x83\x82\xf8\xe4\xf8\xf4\xe4\xad\xc2\x11\x25\x8c\x07\xa3\xe2\xd6\xa9\xb1\xd6\x60\x9f\x10\xd3\x76\x04\x49\xc7\xa5\x6a\xc4\x77\xb9\xa8\x33\x02\xf3\xb9\x8d\xdb\x51\xc7\x25\x19\x4e\x01\x30\x29\x22\xb6\xcc\xa8\xb3\x9c\x3c\xbd\xd3\x92\xa2\x58\xdf\x83\x95\x19\xf9\x55\x3d\x23\xa5\x6a\x82\x08\x54\xa6\xec\x57\xdf\x69\x64\x51\x75\x68\x82\x94\x9d\xbc\x2a\xef\x62\x1b\x41\xb9\x40\x44\x46\x1b\x00\xe9\x8e\xa0\xb8\xc9\x24\x12\xa2\x56\x1b\xb8\x6f\x89\x1d\x02\x90\x42\xce\x1d\xf1\x7d\xa9\x68\x13\xda\xd2\xbd\x98\xb5\xe4\x52\x67\xb9\x83\x99\x7c\x55\xed\x20\x0c\x6c\x90\xa6\x60\x07\x39\xe2\x5a\x73\x37\x49\xc6\xa4\x96\x34\x0a\x3a\x9e\xd0\xc5\xb2\x66\xc3\x54\xc8\x79\xeb\x3f\x10\x2a\x00\x43\x6d\x22\x4f\x56\xfd\x57\xaa\x85\x19\x99\x5a\xcc\xa7\xfe\x3b\xd5\xc2\x30\x09\x83\x23\xb7\x6f\xfb\x65\x09\x72\xd2\x54\x20\x3b\x36\xe1\x0a\x09\x72\xd0\x14\x6e\xcf\x84\x5b\x54\x7c\xc7\x4d\xe1\x77\x4d\xf8\x1a\xb7\xd5\x9e\x34\x85\x3e\x30\xa1\xe7\x0c\x5b\xdb\x6b\x0a\xdc\xd7\x65\xe0\xc7\x29\xe0\xf4\xe7\x12\x19\xb8\xc1\x0e\x2f\x97\x86\xaf\x26\xae\xe6\xb0\xaa\xab\x24\x26\xae\xab\xe6\xd7\x75\x35\xb7\xc8\x67\x2b\x67\x4c\x1e\x45\xce\x18\xae\x22\x67\x0c\xbe\xae\x9c\x31\xfc\x6b\xe4\x8c\xc1\x93\x91\x33\x16\xac\x30\x63\x61\xc8\x96\x89\x5e\x8a\xe6\x71\x00\x48\x5b\xe1\x49\x8d\xa0\xea\x7e\x40\xb4\x07\x2c\x16\x7a\xc6\x12\x71\xc9\xe8\xa2\x4c\xbc\x63\x63\xc9\x91\x40\xcc\xa8\x70\x38\x2b\xea\x55\x5b\xb8\x48\x71\x98\x6a\x57\xc1\x7f\x61\xfe\x9c\xcf\xe7\x33\xc6\xfe\x46\x6e\x62\x27\x92\x43\x66\xe4\x49\x17\xf7\x62\x82\xaf\x70\xe4\xb7\x74\x6a\x80\x3a\x8c\xde\x62\x43\x64\x8b\x7c\x8b\x09\x65\x84\xe1\x8c\x2b\x6e\x5f\x70\xae\xa7\xd8\x9c\x4c\xd5\xbc\x38\x13\xc4\x85\x23\xec\x6b\x0f\xf1\x50\x43\x39\x79\x91\xa6\x29\x4c\x26\xdc\x57\x54\x83\xa0\x10\x0c\x55\x1e\x4d\x76\x46\x8c\x62\xa8\xe8\x90\x56\x04\x65\x88\x12\x22\xff\xb8\xc6\xf7\xb4\x85\xd2\x8c\x0c\x31\x00\x86\x50\x1a\x39\x06\x3b\x81\x9b\xbc\x50\x21\xd7\xe2\x9e\x88\x80\xb2\x9f\xb4\xd8\x62\x67\x42\x56\x9b\xc0\x08\x40\x2a\x28\x16\x3b\xe0\x53\x1f\x8d\x19\x13\xa9\x9b\x16\x50\xa1\x3e\x17\xe4\x4a\x46\x76\x73\xaa\xc5\x65\x34\x8f\x10\xb7\xb1\xbd\x66\xc0\x00\xa4\xba\xdd\xf7\x32\xef\x0d\x2f\x0c\xc6\xdd\x18\x11\xff\x55\x18\x7b\x28\xdc\x4b\x68\x4c\x90\x69\x2c\x9d\x35\x2a\x9b\x7f\x73\x84\xc4\x1d\xef\x36\x1e\xb9\xaf\xc6\xdd\x4f\x89\x75\xb8\xd8\x15\xf3\x09\x73\x19\x9b\xd7\x75\xa3\x34\x8e\x0e\xc3\xc0\x1b\x66\x6a\xf4\x1b\xaf\x2b\x96\x87\x1d\x23\x1b\x73\x55\x7a\x1f\x51\x7c\xcd\x89\x40\x46\xaa\x7a\x13\x42\x70\x44\x45\x81\xb2\x93\xc0\xa3\x80\xda\x96\x3c\x35\x16\xa3\xb5\xd3\x94\x6d\x6b\xe2\xda\x75\x06\x48\x7b\xca\xce\x84\x9b\x21\x3d\xc8\x84\x59\x1a\xe8\x2d\x49\x3f\x16\x7b\xba\x15\x33\xfa\x56\xad\x98\x61\xe0\x6a\xe7\x06\xda\x89\x6b\x0d\xf1\xd4\x02\x41\x64\x87\x7c\xf4\xa0\x06\xfb\xb2\x45\x90\xc7\x24\x58\x0b\xfb\x86\xed\xa4\xe3\x06\xa9\x72\x90\xd0\x79\x7c\x76\xeb\x44\x60\x05\x2c\x33\x90\x38\x7e\xec\xa9\xe3\xf5\x6b\x80\xef\x1c\x7e\xfc\xaf\xc4\xe9\x67\x3c\xed\x09\xc5\x23\x71\x74\x86\x78\x0a\x79\x14\x95\x14\x06\x2e\xd1\x68\xb9\x58\xee\xc6\xc4\x6d\x47\x1d\xe8\x35\xb3\xce\x1d\x99\xd6\xb9\x5e\x8d\x6a\x7b\xd4\xc6\x1d\xd7\x93\xaa\xed\x51\x51\xb5\xad\xff\x84\x23\x53\xb5\x3d\xaa\x55\x6d\x8f\xe6\xf3\x91\xa9\xda\x1e\x15\x55\xdb\x23\x77\xb2\xbe\x75\x6e\x00\xe3\xcc\x3a\x77\x04\xa0\xaf\x89\xdb\x47\x86\xe2\x79\x24\x55\xdb\x85\xf2\xfd\x51\xf9\x8c\xf9\x99\x6a\x7b\xb4\x58\xb5\x6d\xf6\x50\x7d\xdc\xd8\x10\x47\x6c\x7a\x42\xb5\x8d\xdc\x11\x24\xc2\x3a\x57\x33\xa7\xd8\x59\x25\x8e\x80\x89\x50\xe3\x64\x65\x2c\xfa\xb5\x9d\x86\xf8\x85\xc8\xd0\x6b\x03\xaf\xa1\xd8\xc7\x7b\xa3\x80\x53\xf0\x85\xb9\x06\xb7\xd3\x3d\x56\x29\xea\xaa\x3f\x78\x92\xae\x44\xf9\xf8\x5f\x85\x41\x44\xeb\xd3\x67\x08\x0e\x07\xfb\x01\x95\x4d\x1f\xf9\xed\x94\x89\xd2\xda\xb3\x88\x07\x1e\x66\x44\x91\x05\x47\x01\xfb\xdb\x94\x8f\x5a\x70\x14\xfb\xb8\x65\x7d\x46\xb7\x48\x10\xcf\x16\x64\x74\x4d\x5b\x48\x97\xa1\x35\x42\x63\xab\x03\x51\x18\xa0\x44\x16\xfe\xdf\x56\x27\x85\x12\xf4\x87\xc3\x53\x05\x99\x5b\xd5\xdd\xef\x91\x49\x77\xaa\x80\x8a\xbf\x05\x38\xd2\xd5\xc1\x88\x1a\x6b\x84\x3c\xf9\x17\x41\x43\xcc\xfe\xe9\xf2\xff\xdc\x6b\x5d\xfc\x7e\xf0\xd1\xec\x63\x8a\x46\xa1\xea\x43\xfc\x2d\xfa\x10\x7f\x5b\xd3\x51\xa8\xf5\xc5\x7f\xa5\x42\x15\xbd\xe0\xcd\x16\xaa\xe8\x07\xbe\xd6\x4b\xdf\xe9\xd1\x93\x78\xa7\x53\xb6\xa4\x49\x7e\x19\xc2\x94\x1d\xd6\x95\xdc\x0b\xfb\x98\x1e\xf3\xf3\x6d\x4a\xc9\xfc\x78\xe4\xe0\x10\x73\xab\x5b\xbe\x7f\x88\x60\xf4\xe2\xfb\x17\x7e\x70\x6b\x41\x0c\x9c\xc3\xd8\xc7\x1f\xf9\x25\xaa\x7e\x53\x47\xdb\x37\x75\xfb\xa6\x16\xb0\x6e\x44\x51\x10\x15\x91\xad\xe1\xe8\xb2\xa9\x27\x94\xae\x80\x07\x70\xb5\xd5\x87\xe0\x38\xe2\xbb\x08\x13\x17\xcb\x5f\x77\x23\xce\x5f\xff\x86\xd1\xf0\x23\x1a\xa7\xc2\x17\x8c\x2a\xee\xe4\x6e\xc4\xbd\xc3\x28\xa3\x2f\x87\x78\xfa\x3e\x26\x87\x6c\x10\xe6\x7d\x62\xed\xa4\x93\x98\xf8\x67\x56\x4c\xb8\x9b\x29\xa5\x31\xd7\x5f\x2b\xaa\x55\x03\x27\x07\x17\xc6\xf1\x70\x32\x66\x70\xb2\xbf\x8a\x1d\xf1\xc1\x6b\xcd\xa4\x01\xfb\x25\xf7\xd1\x27\xc8\x10\xdd\xeb\xdf\x54\xb7\xcc\x6f\xb6\x4e\x56\xd0\x25\xfb\x2d\xdc\x35\x82\x68\xf8\x8a\x7f\xee\xc5\x52\x56\xb8\x8e\x9f\x13\x3b\x68\xb9\xf5\xab\xf7\x94\xac\x5f\xfd\xad\xf5\xeb\xb7\x6d\xfd\xba\x19\x5f\xa7\x51\xbd\xaf\x93\x66\x8a\x56\x47\xbb\x10\x3c\x8e\x13\xf6\xf8\x4e\x5f\x69\xc1\x7a\x6a\x3d\xa0\xb4\xe6\xc3\x5b\xee\xfb\xb4\xb4\x9d\x0a\x88\xc9\x66\xde\xcc\x1c\xce\x2b\x19\xab\x29\xc7\x28\x55\x93\x4f\x41\x79\x47\x65\x55\xc3\x5b\x0b\xc6\x46\x59\x16\xf5\x73\x22\x8d\xde\xc6\x04\x8f\x11\x31\x13\x88\x89\x71\x26\x98\x6a\x72\xea\x08\x52\x90\x8e\x31\x49\x82\x84\x6a\xd1\x90\xda\x10\x42\x18\x75\x5c\xac\x4c\x56\x5e\x15\x73\x80\xb6\xa3\x8e\xa3\xbe\xe2\xe1\xf7\xb8\x19\xd7\x7a\xdf\xcb\x8f\x78\x68\x9d\xc4\xf5\xed\xb0\x46\x2f\xd4\xd8\x99\x23\x30\x81\x6b\xcb\xdb\xdc\xa5\x23\x36\xa1\xb3\x1d\x6a\xee\xd0\x31\x29\xaf\x88\x0a\xed\x8a\x9a\xc2\x0e\x75\x45\xd9\xe8\x01\xaf\x4f\xad\x70\xb4\xee\x19\xda\x00\x4b\xc7\x70\x04\x5a\x11\x47\x3c\x84\x83\x59\x1a\x2b\x2d\x3b\x91\x28\x63\x63\xc8\x37\xc5\xc6\x68\xe1\xd2\x74\x0c\xa0\x62\x7d\x3e\x3c\xa4\x81\x16\x07\xd4\x75\x5d\x3a\x9f\xf3\x6c\xe3\x74\x3f\x6a\xad\x81\x52\xb8\xbd\x65\x9e\x69\x58\x64\x19\xde\xa9\xb4\x3a\x52\x1f\xcf\xda\x51\xa7\x45\xd3\x0a\xfc\xb2\x06\x30\xe9\x2e\x16\x09\x77\xb1\x48\xbb\x52\x89\xbe\xa9\x81\xcb\x10\x4d\xdc\x8c\xc3\xf2\x4c\x0e\x2b\xae\x21\x49\x18\x73\xe5\xc6\x92\x24\xf1\x8a\x24\x89\x57\x38\x2a\x26\x49\xe2\xd5\x92\x24\xde\x7c\xee\x99\x24\x89\x57\x24\x49\x3c\x37\x58\x9f\xc3\x62\xf4\xa3\xe2\xb0\x3c\x00\x27\xda\xa9\xf1\x0c\x82\xc1\x93\x24\x49\xa1\x7c\xdf\x2b\x1f\xd5\x49\x46\x92\x78\x8b\x49\x12\xb3\x87\x7a\x21\xb9\xc7\xa6\x27\x48\x12\xe2\x7a\x30\x12\x1c\x56\x46\xfc\x42\x6f\x67\x95\x40\xc9\x26\xce\xab\x88\x77\xbf\x88\xd4\x36\x62\x98\x3e\x15\x12\x3b\xd8\x92\xd8\xcf\x9d\xc4\x56\x1a\xf4\xb2\xc9\xd9\xde\x1b\x6e\x54\x98\x99\xa4\xb6\x5e\xbd\x12\xd9\xb4\x5d\x79\x35\x58\xc1\xf7\x98\xc1\x54\x18\x97\xb5\x48\x55\xd8\xd2\xda\x08\x05\x75\x6c\x6b\x3d\x15\xbf\x9c\xd6\x58\x4f\x3e\x59\xf5\xa2\x27\xb9\x8b\x09\xf7\x5b\x45\x92\x98\x4e\x4a\x54\x79\x58\x4d\x4d\x0b\x02\x97\x40\xd4\x71\x63\x1b\x17\xc9\x5a\xd2\x71\x54\x6b\x24\x62\x2e\x57\xd0\xd6\xdc\xaa\xb1\xf4\xa9\x46\x51\x13\x58\x49\x53\xd7\x7e\x27\x9b\x12\x11\xa6\x12\xb9\x81\x4d\x0c\x0b\x31\x3e\xd3\xe6\x94\x74\x68\x82\xd6\xc8\xf4\xc6\x84\x34\x01\x6b\x84\x59\xd4\x43\x58\xd4\x4b\x45\x74\x0d\x84\x8f\xbd\x98\xf0\x08\x43\xfa\xc7\x59\x74\xb3\x20\xea\x85\x98\x1d\x9b\x85\x31\xaa\x61\xa5\x5b\x31\xbc\x85\x7d\x38\x85\xe7\xf0\x06\x5e\xc0\x21\xbc\x83\xc7\xf0\x1e\x7e\x86\x87\xf0\x0c\x5e\xc1\x2f\xf0\x23\x3c\xca\xdf\x85\xd3\xa7\xf4\x2e\x5c\x6f\xdf\x85\xe7\xfe\x2e\x30\x24\x7e\x50\x1f\x7b\x5a\x13\x80\xf8\xde\x6a\x82\x12\xde\x2e\x5c\x51\xf0\x52\xe7\x16\x69\xb6\xab\x73\x90\xd4\xda\x45\xb1\x8f\x17\x38\x4b\x16\x44\x39\x2a\xe6\x4d\x9d\xb3\x64\xb9\x71\x9e\x30\xb2\xde\x65\x52\xfb\x4a\x24\xb1\x01\xd0\x5f\x61\xdc\x2a\xf1\xcb\x68\x8d\xb6\xe3\xe5\x6d\x47\x98\x92\xc0\x63\x0c\x71\x6f\x79\xe3\x38\xf0\xbd\xbd\x31\x89\x6f\x03\x1f\x13\x0b\xc0\x6e\xcd\x27\x93\x60\x4f\xdc\x4b\x0b\xc0\xc1\x0a\x6d\x6e\x57\x08\x41\x54\xc4\xdf\xaf\xba\x61\xec\x0d\x83\x88\x7d\xdd\x6f\xf8\xd6\x9f\x6a\x81\x86\x44\x0e\xb1\xc4\x82\x53\xf9\xe0\x97\x2b\x2d\x78\x6e\xd4\x0d\x6f\x13\x0b\xde\x94\x0a\x2d\x78\x61\x94\x85\x22\xc2\x23\x1c\x1a\xe5\x7d\x44\xf1\x1d\x9a\x26\x16\xbc\x33\x6a\xf8\x09\xd9\x2b\x67\x38\x3d\xae\x6c\x97\xd7\xdf\x1b\xf5\x91\xf2\x4d\x48\x2c\xf8\xb9\xae\xce\x82\x87\x46\x95\x3a\x1d\xf0\xcc\xa8\x60\x27\xc1\x82\x57\x46\x69\xbe\xa7\xf0\x8b\xd9\x49\x4c\x45\x86\x32\xf8\xd1\xa8\xe1\xb1\x63\xe0\x91\x24\xa3\xc4\x6e\xf3\x54\x49\x9a\x90\x10\x15\x85\x84\x19\xe2\x10\x66\xad\x58\xa4\xd4\x61\x78\x82\xab\x5e\x47\x88\x7a\x03\x60\x63\x86\x10\x12\xc7\xeb\xda\xdc\x0f\x14\x8d\x12\xc8\x43\xc9\x71\x82\x08\x75\xd8\x03\x21\x95\x36\x96\x5c\xe0\x96\x76\xd6\xad\xef\xb9\x19\x69\x12\x44\xfd\x49\x88\x48\xf0\x05\x03\x1b\x01\x45\x55\xe5\xc1\x18\x33\x77\xb1\xd8\x21\xd8\x8b\x23\x2f\x08\xf1\xee\xae\x4d\x1c\x61\x03\x7e\x7c\x8b\x23\xea\x6a\xf6\x13\x8d\x62\x19\x65\x6e\xa9\xd4\x9d\xb1\x6e\x5b\x96\x74\xa9\xb1\x84\xeb\x1e\x4e\x33\xaa\x59\xfa\xc5\x73\x1f\x91\x11\xa6\xc8\x02\xf3\x79\xfe\x2c\x6b\x1e\x56\x04\x45\x7d\xbc\xbb\xab\x0d\x9f\xdb\x44\xa6\x52\xfd\xc5\xba\x71\xe4\xae\x04\x90\x30\xda\x71\xea\x5e\xdb\x7d\x33\x3e\x4d\x76\x73\x9a\x4b\x35\xcf\xeb\xe1\x6f\x42\xb0\x79\x63\x82\xe7\xf7\xb7\x1d\x36\x85\x7b\x51\x86\xbb\x09\x1f\x91\xa1\x09\x56\x61\x91\xe6\x6e\x22\x77\x26\xe8\x1c\x11\x35\xf7\x11\x39\x36\x81\xd7\xe1\xb2\xe6\x0e\x23\xf7\xd5\x5d\x69\x5d\x34\x76\x1b\xf9\x6c\x76\xa1\x63\xd4\xb6\xdf\x14\xfc\x61\x2d\x78\x0b\xb6\x47\x4d\xa1\x9f\x99\xd0\x33\xbc\xde\x1e\x37\x85\x7d\x65\xc2\x16\x4f\x43\xbb\xd7\x14\xf0\x17\x13\xb0\xf6\xba\xb4\xbb\x4d\xa1\x7f\x2c\x2d\x78\xf6\x40\xb5\x07\x4d\x81\x1f\x99\xc0\xc5\x1b\xd7\xbe\x6d\x0a\xb8\xaf\x73\xbf\x07\x0f\xe6\x7e\x73\xea\x69\xa1\x21\x9e\x1f\x8f\x54\xf8\x37\xc5\x06\x57\x74\x93\x73\xf7\x4b\xa3\x88\x95\x7a\x18\xa1\x69\x17\xef\x31\x26\xa8\xce\x99\xa9\x20\x9e\xdd\xda\x26\x6c\x19\xe4\x6f\x97\x41\x1e\xb9\x76\x1d\x43\xab\xdf\x82\x7a\x76\x56\xd3\x4e\xae\x13\xd0\x7d\x91\xf5\x80\xe8\xb8\xca\x18\x40\x5d\xda\x89\x49\x78\x87\x86\xc1\xf3\x3b\x89\x2b\x38\x25\x2b\x52\xf1\xd8\x36\xd5\x5d\xc1\x13\x37\x14\xee\x36\x4e\x37\x88\x7c\x3b\x54\x44\x72\x31\x36\x92\x0d\xdc\xb7\xd4\xf1\x26\x24\x89\xd5\xce\x41\x4e\x62\x07\xbd\xb3\x98\xaa\x5e\x80\x5d\x50\xcc\x01\x60\x4b\x87\x78\xf6\x39\xb6\xa9\xfa\x55\x00\x9d\xac\x02\x48\x7d\xf9\x08\xb4\x78\x21\xc5\xde\x02\x62\x5b\x4d\x5f\xc1\xe7\x45\xdc\x22\xfa\x16\x85\xbb\xbb\x89\xcd\xdd\xd4\x81\x23\xfc\xb1\x78\x04\xa1\xaa\x10\x59\x72\x6a\x62\x6f\x01\x00\x29\x0c\x19\x59\x1e\xbb\xbe\x1d\x14\x44\xba\x72\xf3\x9b\x93\xb6\x13\x13\xb4\x26\xd2\x6d\x4c\xe0\x06\xeb\x1b\x1a\x54\x3e\x6a\x63\x11\xa7\x60\xcd\x37\xed\xab\xfb\x15\x64\x17\x2d\x2a\xd8\x0b\xc7\x91\x87\x81\x88\x79\xbf\x86\x33\x41\xf5\x72\x2c\x72\x4b\x5b\x7b\x3d\x36\x69\x71\x2f\xd2\x26\xd4\xda\x96\x6b\x08\xf0\x71\x0c\xcc\x19\x7f\xff\x34\x2c\xcc\xf5\x53\xa2\xe2\x80\xd4\x1b\x33\x08\x4c\x2d\x3d\xb1\x0a\x88\x9a\x21\x5d\x11\x5c\x77\x1c\xeb\xd1\x46\x08\x80\xb3\x21\x9e\xb6\x30\x9c\x90\xa0\x15\x39\x13\x12\xa4\xc2\xc6\x4a\x57\xdd\x04\x6a\xc9\x62\x6e\x5a\x3e\x69\x66\xf8\xe0\x9b\x86\x0f\x93\x1a\x7a\xc7\x67\xf4\xce\x44\xd2\x3b\x7e\x91\xde\xd1\x7f\x42\xdf\xa4\x77\xfc\x5a\x7a\xc7\x9f\xcf\x7d\x93\xde\xf1\x8b\xf4\x8e\xef\xc6\xeb\x1b\x3e\x30\xd2\x54\x19\x3e\xf8\x00\x7a\xda\xdb\xe1\x1b\xd4\x88\x2f\xe9\x9d\x42\xf9\xbe\x5f\x3e\x08\x5e\x46\xef\xf8\x8b\xe9\x1d\xb3\x87\xea\xb3\xcc\x86\xe8\xb3\xe9\x29\xd3\x72\x5f\x99\x96\x6b\x8a\x2a\x0d\x07\x87\x6b\x20\x9d\x25\xa9\xfe\x6b\x19\x89\x51\x84\x47\x71\x14\x24\xf4\xd5\x68\x12\xd2\x60\x4f\xb8\xcf\xac\xa6\x53\xcb\xd9\x80\xd1\x53\x62\x03\xc6\x5b\x36\xe0\xef\xc0\x06\xf4\x38\x3c\x99\x2b\x50\x66\x30\x81\xb7\xf5\xca\x33\xe1\x50\x55\xa7\x32\x13\x81\x23\xc9\x02\x65\xd9\x02\x25\x77\x3d\xab\xb1\x0a\xdd\xd0\x9c\x0b\x19\xe9\x21\x3d\x15\x0b\x32\xca\x42\x7a\x8a\x99\x29\x0e\x24\xab\x50\x96\x08\x9e\x51\x9e\xd3\x9c\xfe\x8a\x61\x3b\x7b\x2a\xcb\x13\xdb\x0d\xf9\xd7\x80\xff\x95\xc5\x87\xb0\xaf\x30\x5d\x2d\xbe\x67\x4a\x70\x82\xe9\x21\xf2\x06\xd8\x06\xb3\x5e\x4d\x02\xa9\x3c\xbe\x52\xe2\x0d\x30\x3b\x32\xb6\x85\x7a\x14\x93\x4b\x1c\xf1\xd9\xb2\x17\xb9\x3e\xc2\x65\xb7\xfa\xe6\xe3\x2c\x9c\x01\xe0\xb3\xd2\x0f\x98\xe3\x85\x18\x11\x5b\x25\xcb\xa9\xa3\x1d\x6c\x19\xdf\x93\x2f\x3a\x7b\xee\xaf\x51\xdf\x06\xd5\x81\xbe\x64\x82\x73\x15\xa2\x6b\x96\x42\xe1\x7e\x2e\xc2\x4d\x30\x7c\xfc\xf2\x35\xd8\xd1\x90\x0a\x1b\xa7\x43\x70\xcf\x45\xc5\xcc\x56\x46\x80\xb0\x10\xce\x54\x08\xb0\xc8\x7d\x3b\xe3\xfc\x8e\x88\xcf\xc1\x05\xb6\xc0\x8e\x64\xa4\x29\x18\x89\xd0\x78\x85\xd0\x55\x79\xe6\x0e\xbe\x16\x21\x44\x3c\x7d\x84\x8c\x5d\x95\xa6\x60\x47\x43\x31\x7d\x4c\x0f\x45\x94\x02\x4e\x0e\xd9\x60\x77\x37\x74\xfc\x20\x19\x33\xd6\x4a\x14\x55\x34\x02\x29\x48\x27\xd1\x1d\x41\x63\xd3\x8c\xf4\x46\x2c\xaa\x5a\xae\x01\xf7\x41\x8a\x20\x05\x70\xa0\x76\x2f\x82\x51\x79\x45\x00\xcc\x92\xd8\x97\xea\x60\x94\x8a\xf8\x1d\x99\xf9\x2d\x2c\x47\xa4\xab\x35\xc0\xdd\xdd\xd5\x7f\xed\x04\x3d\xbb\xec\xda\x04\x74\x63\x57\x6d\x62\x3f\xac\x6a\xce\xc5\x30\x5a\x1b\xc1\x50\xd3\xbf\xf1\xa6\x85\x6d\x6e\x23\xde\x7d\x57\x25\x00\x8b\xdc\xae\x74\xbd\x82\xdd\x3c\x11\x03\xec\x66\x59\xbd\x44\x48\xc4\x2c\xd2\x6a\x4f\x7e\xc8\xc3\x93\xf6\xe4\xa7\x00\x52\x76\x4a\x5d\x0c\x23\x37\x51\x0a\xa8\x10\x52\xd5\x75\x75\xc6\x91\x08\xce\x44\x04\xb3\x3c\xc4\x5c\xe4\x52\x75\xaa\x90\x1b\x95\xf7\x9c\xbf\x6f\xc5\xbd\x11\x5c\x7a\x7e\x9c\x0a\xaf\xd7\xee\x6e\x4f\x4e\x64\xe6\x69\x80\x5a\x08\x8a\xcf\x5a\x3c\x84\x15\x9f\x12\x7b\x00\xf5\x15\x20\x22\x1e\x49\xd7\x4c\x6f\x66\xbf\xcc\xdb\xb3\x93\x81\xfc\xe9\x15\x45\x14\xbf\x7d\x33\x9f\xb3\x17\x39\x12\x17\x8f\x81\xcd\x8e\x5d\x94\x8a\x6b\xc0\x0f\x0f\xe6\xa9\xba\x34\x63\x30\x39\x00\xcc\x23\xe0\x29\xe4\x01\xff\xc9\x37\x3d\x87\xbf\xbb\x9b\x8f\xce\x58\x82\x09\x09\x00\x00\xa9\x4a\x42\x22\x1f\xf6\xb6\xe3\x38\xdd\x2c\x44\x1f\xe8\xa8\xb8\x4f\xec\x7a\xb2\x93\x42\xb9\x3b\x47\x86\x53\x0a\x53\x49\xf3\xa0\xb8\xed\xd7\x1d\x21\xb0\x18\x17\xa5\x0a\x22\xaa\xda\x06\xbc\x22\x0c\xb8\xd9\x53\xd3\x5c\x79\xe8\x99\xb0\x33\xbb\xb9\xc6\x42\x16\xdf\x04\xfd\x68\x42\x96\xdb\x95\x08\x7c\xfe\xb6\x1b\xf1\x18\xa2\x3e\x41\xe3\x81\xc3\xff\xfb\xf5\x45\x27\xbc\xdb\x1a\x37\xeb\xf5\xc4\x26\xfc\xa0\x2d\xe1\x58\xfe\x4c\xd0\x5e\x0f\x31\xf2\x66\x5a\xd3\x22\x09\xba\x21\xd7\xa2\x54\xd6\xf2\xbb\x53\x19\xc3\x8d\xd5\x06\xc9\x5e\x3c\xa1\x49\xe0\xe3\x9a\x06\x7d\x4c\xf7\x3c\x15\x2d\x7c\xc9\x40\xa2\x98\x8c\xf8\x7e\xef\x71\x36\xab\x6e\x40\x22\x2a\x5d\x86\x31\x6b\xc7\x1d\x78\xc3\x3d\x1e\x49\x7f\x0f\x45\xde\xa0\x2e\xd2\x9c\x62\xca\x04\x33\x53\xcd\x99\x3d\xb5\xe0\x61\x63\x23\x9b\xa6\xc8\xbe\xd4\x83\x5d\x59\x3f\x60\xf5\x71\x5e\x9f\x87\x78\xe7\x0d\x6f\x5d\xbb\xce\x58\x4c\x8f\x75\xe4\xad\x4c\x57\x67\xae\x03\xc2\x39\xa1\xd2\x83\x5a\x48\xb3\x54\x60\x1d\x4f\x0a\xb7\x26\xae\x5f\x2b\xdc\x62\xe0\x74\x96\x78\x52\xcb\x12\x4f\x6a\x58\xe2\x89\xc9\x12\x4f\x0a\xcc\xdb\x64\x81\x4c\x23\xd5\x28\x7d\x76\xd2\xde\xb3\x83\x76\x20\xce\x19\x1c\xe8\x95\xf2\xfa\xe4\x6b\x9c\xb3\x02\xea\xe2\x45\xe5\xba\x20\x39\x57\xf7\x0a\x95\x6b\xb3\x9b\x72\x2c\x2e\x4a\x52\x6e\xa2\xdd\x8f\x20\xaf\xed\xea\x3e\xe9\xb0\xe7\x1a\xd9\x21\xcc\x04\x71\x4b\x42\xd5\x2b\xea\x5d\xd0\xf2\x69\x9e\x6f\xcd\x88\x09\xe1\xa5\xb7\x01\xbe\x1b\x97\x63\xa4\x1a\xa1\x98\xd2\xfe\x24\xf0\x35\x2f\x73\xa9\x91\x98\x04\xbe\x48\xd8\x9a\xf6\x62\x6f\x92\xc8\x7c\x65\xa5\x48\xd7\x9a\x0b\xbc\x0a\x41\xc1\x08\xb0\x3c\xcc\xbf\x0a\x8b\x8f\x19\xf9\x74\x40\x29\x09\xba\x13\x8a\x6d\x8b\xa2\x2e\x27\x21\x2d\xf6\xba\x24\xd5\x55\xd0\x7a\x6d\xb1\xfb\x26\x46\x00\xa0\x72\x10\xdb\xc7\x92\x60\xa9\x84\xd7\xaa\x87\x47\x41\x9a\x26\x58\x50\x5d\x22\x04\x59\x01\x91\x14\x04\xa6\x82\xf0\x33\x98\x9c\x7b\xd6\x70\x56\x88\x6b\x83\x44\x18\x3a\x69\xdc\x25\xbe\xb2\x5c\xd7\x0d\xf7\xf3\x6f\x48\xf9\x9b\x3c\x02\x88\x70\x75\xcb\x42\xe5\xb6\x69\x07\xb4\x48\x3b\xec\xa4\x29\x68\x5d\x62\x6e\x35\xce\x09\x5b\x23\x6c\x10\xa8\x9e\x89\x08\x0e\x59\x60\x40\x56\x9d\x89\xcc\x6e\x55\x9a\x09\xd2\x66\x12\x95\xbf\x29\x07\x72\xa7\x6d\xd4\xd9\x67\xff\xc9\xe3\xff\xb6\xa2\x36\x5a\x3e\x23\x12\xc7\x95\xa7\x55\x9e\xf1\x63\x71\xc2\x52\x79\xd2\xde\x4d\x4f\xfc\x72\x2c\x14\x8f\x81\x3e\x2e\xb4\x50\x1f\x24\xef\xa6\xd7\xa8\x7f\x86\x46\x85\x70\x65\xb6\x42\xe4\x7c\x23\x14\x94\x16\x05\x1a\x20\xfd\xcb\x1c\x5c\x41\x9e\x2b\xd8\xa3\x34\xbb\x05\x79\x95\xf5\x7f\x89\xec\x77\xc9\xa4\x9b\x50\x62\xbf\x86\x6f\xc0\xbe\x7e\x63\xc4\x28\x55\xf5\x1b\x00\x5a\x8c\x58\x16\xf0\x3a\xed\xd7\x9d\x34\x7b\xcb\x0b\x1d\x56\x71\x6d\xfb\xb8\x55\xbc\x8b\x3c\x46\x67\xf6\x7d\x61\xc4\x59\x5a\xc0\xc2\x74\x3a\x9c\xd4\xb6\xab\x52\xe9\x88\xd4\x86\xe5\x80\xad\x79\x13\x11\x29\x15\xa7\x00\xa4\x41\x72\x12\xfd\xaa\x10\x50\x73\x2f\xd1\xd7\x19\xeb\x23\xdf\x4b\x91\x81\xe1\x84\x5b\x0e\x8a\xf0\xc4\xe7\x5d\xf6\x62\x4a\x96\x02\x2b\x8e\x21\x8b\xbb\x29\x19\x4b\x75\x20\x77\x2a\xec\x30\xe9\xee\x2e\x6b\xc1\x86\xae\xc0\x46\x7d\xc6\xd8\xc3\x19\x3b\x99\x1f\x11\xe9\x07\x51\xcb\x7a\x3d\x66\xa8\x64\x40\x70\x32\x88\x43\xbf\x15\xe5\x71\x22\x89\x13\x8b\x41\x30\x96\x8d\x8b\x6b\x88\x33\x89\xb4\xb2\xae\xce\x37\x01\xf6\x3e\x05\x89\x0c\xb0\x6c\x03\x48\x04\x4a\x4f\x53\xd8\x77\x3d\x8d\x9c\x9f\xca\x07\xfa\xdc\x6d\x4f\x3a\xf0\xa6\x99\x2a\x65\x68\xaa\x52\x6e\x6a\x64\xc6\xc3\x36\xee\xb8\x37\x52\x66\x3c\x2c\xca\x8c\xf5\x9f\x70\x68\xca\x8c\x87\xb5\x32\xe3\xe1\x7c\x3e\x34\x65\xc6\xc3\xa2\xcc\x78\xe8\x9e\xaf\xaf\x4a\xe9\xc3\x69\xa6\x4a\x19\x02\x78\xa1\x9d\xa9\xa1\x21\xd1\x1d\x4a\x99\x71\xa1\x7c\x7f\x58\x26\x3b\x2e\x32\x99\xf1\x70\xb1\xcc\xd8\xec\xa1\x9a\x72\x62\x43\x1c\xb2\xe9\x09\x99\xb1\xef\x0e\xa1\x27\x54\x29\x9a\x6f\xcf\x1a\x9c\x56\xce\x99\x2e\x60\x46\x10\x8d\xbb\x15\xc5\x5d\x1a\xa3\x2a\x9d\x49\x46\x83\x93\x27\x47\x83\x73\xaa\x18\x3d\x58\xde\x4c\x94\x1d\x3a\x09\xb2\x3c\x4b\x16\xac\xc8\xdc\x95\xb5\xfc\x1c\x8b\x10\x49\x76\x39\x05\x50\x09\xc7\xbd\xa9\xc4\x71\x6f\x74\x1c\xf7\xa6\xd3\xb2\x2c\xf8\x60\xfc\x68\x59\xca\x72\x86\xbd\xc8\xee\x5b\x1b\xcd\xe7\x32\x15\x85\x04\xc4\x11\x77\x68\x53\x90\x5f\x26\xca\x1f\x7c\xf7\xed\x1f\xdf\xcd\x68\xfa\xdd\x0c\xa5\xdf\xcd\xb0\xcd\x48\x8f\xf9\x3c\x02\xe9\x1f\xd0\xb2\x78\x7c\x67\xc1\xfc\x5d\xe2\xfe\xf1\xfd\xf8\x58\x9c\xba\xe2\x43\xb4\xa9\x05\xc0\xee\xdb\x4c\x02\x64\xd8\xda\x54\x2c\xcc\x6a\xb6\x36\x96\x55\x25\x19\x5d\x6d\x3c\x99\x8e\x8d\xe7\xa2\x8a\xf6\x23\x87\xe0\x71\x88\xb8\x80\xdc\x94\x74\xe7\x86\x3c\x04\x46\xb9\x07\x25\xdb\x07\xbe\x8c\x2d\xcb\x4a\x53\x41\x22\xb0\x4b\xb9\x52\xc4\x37\x76\x4d\xf5\x86\x51\x5d\xc3\x09\x09\x7e\x8a\x83\xc8\x20\x9d\xc4\x09\x15\xd2\x7b\xfd\x5c\x43\xeb\x95\xc5\xf6\xb6\x0c\x84\x0b\xf6\x0b\x30\x28\xea\x67\x00\x58\x17\xc2\x4e\x8b\xeb\x50\x40\xca\x2a\xab\x53\xed\x6d\x3e\x75\x52\x96\xbe\x42\x78\xa1\xa6\xab\x3b\xdb\x8b\xc4\x08\x95\x48\x92\x55\x7d\xfd\xe8\xa0\xd1\xad\x49\xb5\xde\x22\xce\x69\x89\x7f\xf4\x83\x81\xa3\x5b\xce\x21\xae\x21\xa0\xea\x61\xec\x77\x91\x37\x5c\xfc\x30\xb0\x17\x8e\x21\x62\x99\x7f\xb9\xd6\x72\x87\x31\x37\x3b\x45\x3f\xfe\x67\x9b\x16\x20\x7e\x94\xb4\x00\xc1\x2a\x69\x01\xbc\xaf\x9b\x16\x20\xf8\x6b\xd2\x02\x4c\x9e\x92\xcd\x85\xf7\x75\x49\xa0\xad\xc9\xf7\xdf\xc7\xd6\x43\xd0\x0c\xa3\xca\xf4\x4c\x22\xec\xc5\xb8\xde\xd2\xb1\x17\xa2\x64\xf0\x51\xe8\xc2\x93\x05\x21\xe8\xc2\xb8\xdf\xe7\xd6\x1f\xa8\xa1\x29\xc6\x24\xf7\xc3\x0c\x7a\xd3\x2c\x6c\x45\x56\x2e\x3b\x52\x41\xe6\x52\xde\x4e\x06\x40\xce\x67\x36\x53\x49\x21\xa8\x34\x2b\x94\xbf\x79\x34\x4e\xa9\xaa\x57\x55\x22\x41\x03\x0f\xd3\x99\xaa\x66\xdc\x24\x41\x30\xfe\x0f\x24\x91\x47\x3b\x8a\x56\x2b\xd2\x5c\x11\xdb\xdc\x62\x11\x01\x3b\x2f\xdf\xbc\x74\x5d\xbc\xbb\x2b\xa8\x1f\x31\x77\x61\x2f\xa1\xd6\x5e\xd9\x14\xc8\x3a\xe4\xfb\x76\x6c\xc7\xf6\x2c\x85\x33\x1a\x8c\x70\x3c\xa1\xad\xff\x07\xff\x0f\x14\xcb\x8e\xfd\x6b\x59\xf6\x3f\xaf\x5f\xa7\x22\x35\x07\x77\xc3\x0c\xf3\xc4\x07\x00\x22\x7e\x1c\x5a\xc8\x06\x30\xa0\x78\xd4\xe2\x6f\x57\x2a\x96\xe3\x6b\x2f\xc0\xd2\x79\x8b\x7d\x77\xb2\x04\x00\x00\x5a\xd7\x04\x45\xff\x87\xbd\x3f\xef\x6e\xdb\xc8\xd6\xc5\xe1\xff\xfd\x29\x10\xdc\x5e\x6e\xf2\x34\x48\x89\x9a\x2c\xeb\x77\x98\x58\xb1\xdd\x1d\x77\x3c\xb5\xed\x24\x37\x47\xcd\x95\x5b\x02\x8a\x24\x5a\x20\xc0\x00\x45\xc9\x3c\x32\xdf\xcf\xfe\xae\x1a\x51\x05\x14\x80\xc2\x40\x0d\xb6\xd2\x6b\xb5\x45\x0c\x85\x9a\x6b\x0f\xcf\x7e\x76\x42\x32\x91\x9d\x9e\x47\x31\x82\x1e\x35\x7c\x85\x60\x01\x7f\xd8\x5e\x5f\xe1\x13\xb3\x9b\xd2\x69\x72\x24\x3c\x21\xa5\x91\x60\x30\x12\x7c\xa4\x81\x64\x1d\xba\x96\x94\xf2\x40\x8c\xc9\x23\x92\x21\x65\x0c\xae\x80\x8f\x2c\xc8\xbb\x88\x4f\xde\x98\x72\xb5\x50\x70\x3e\x60\x74\xb4\x74\x58\x19\x8d\x0b\x21\x0f\xf3\x7a\x20\x13\x57\x46\x16\x5c\x7b\xea\x93\x24\x5b\x34\x5f\xb3\xed\x3d\xe6\x40\xf6\x0e\x2f\xab\x64\x53\x22\xd4\x95\x4b\xa6\xfc\x19\xe9\x06\xbd\xb4\xb3\x8c\xa1\x87\xf7\x15\x98\xec\x00\x37\xa8\x78\x42\xa0\x4b\x4d\x9e\x92\xe2\x3d\x4b\x1f\x9f\x43\x10\xa0\xf9\xc0\x9d\x43\x2c\x5f\x97\x3e\x4a\xd8\x22\xca\x1f\xb9\xb8\xac\x78\x40\xe2\x91\x2c\x7d\x8e\xa6\x7f\x2c\x7f\x66\x19\x05\xbe\xbb\xae\xea\xd6\x15\x9a\x0f\x68\x42\xa2\x72\xc7\x2d\x45\xd3\x76\xa2\x2b\xb1\xb3\xf0\x1a\xb8\xc1\x09\xd9\x84\x40\xe8\xbd\x8b\xfb\x3d\xc9\x3f\xc7\x63\xec\xe5\xdb\x92\x6b\xcf\xce\x8d\xa2\xf2\xa4\xe4\xca\xb3\x95\x01\x54\x9e\x0a\xa4\xa7\xe4\x6e\x50\x1e\xf2\xd2\x87\xf0\xf8\x2a\xf7\x24\x77\xe0\xc5\xa5\x72\x47\x72\x05\x8a\x11\x55\x1e\x48\xbd\xc2\x0e\x19\x4a\xe5\xe6\x2a\xbd\x49\xc7\x50\xb9\x2b\x5c\x79\xfd\x0d\x53\x3b\x97\x05\x07\xbd\x18\x66\x49\xda\x58\x60\x29\x71\x53\x63\xfd\x62\xd9\x63\xb0\xe0\xc2\x87\xb2\x8e\x29\xcd\x91\x1b\xf8\x03\xf2\x54\xe1\x4b\xf7\x31\x0f\xc5\x34\x8a\x2b\x50\x1f\xf8\x89\x9d\xf3\x95\x1f\x78\xd9\xbd\x2b\x8a\x17\xf9\xa5\x4e\x2e\xe6\x36\x31\x72\x55\xb3\x98\xc9\x75\xdd\x02\x26\x37\xe2\x28\x80\x9a\xcb\x05\x9b\x07\xb9\xc7\x68\x5e\x4c\xb1\x19\xce\xc2\x59\xa6\x46\x80\xe9\x7d\xd2\xe2\xce\x1f\xb4\xa9\x6f\x43\x9b\x9a\x67\xe1\x37\xce\xe5\xf8\xfa\xe2\xf2\x44\x1c\x23\x0e\x3e\x60\xc4\xa9\xc1\x36\x5a\x71\x36\xf0\xbd\x55\x1c\x03\x0e\x5e\x56\x27\x62\x53\x97\x76\x6e\xb1\x9d\x3b\x74\x19\x9d\x88\xed\x9b\xea\x6e\xb3\x62\x24\x8f\x44\x12\x43\x56\xad\x19\xd5\x13\x5d\xf8\x7d\xc7\x6b\x12\xd8\xa6\x05\xfe\x4c\x99\xea\x46\xb7\x8e\x05\x53\xe8\xf8\x55\xbe\xd3\x2c\xd9\xf5\x70\x7c\x36\x71\x7a\x68\x6c\x93\xcd\x83\xe4\x14\x83\xa5\x39\xc5\x5a\x5a\x43\x36\x64\x1f\x55\x5c\x0c\xf3\x8c\xad\x1a\xd7\x24\x75\x37\x10\x71\x9a\x54\xee\x0c\x12\x3c\x71\xea\xcf\x27\xc0\x60\xe5\xfe\xf8\xf2\x0c\x4e\x18\xeb\x0f\xed\x00\xac\xa3\x7c\xf9\xc2\x9b\x8d\x7f\xf5\x53\xf8\x04\x41\x29\xc3\xc9\x23\xc4\xc0\xf2\x5a\xb7\x37\x63\xec\xa1\x0e\x72\x07\x0d\x93\xd5\xf9\xc2\x47\x05\xcf\x0a\xc6\x46\xd9\x4a\x86\x48\xaa\xe0\x73\x35\x79\x2d\x1d\x9e\xf6\x24\x27\xcb\x6c\xc1\x7c\x84\x3b\xce\x89\x3b\xab\x38\x46\xfd\x70\xc0\x31\x49\x3a\xd9\x41\xba\xad\x7f\xe7\x3e\x8a\x0e\x7e\x88\x02\x7d\x63\x51\x90\x79\xea\x3e\x36\x4f\x28\x92\xb7\x95\x28\x26\x35\x3f\x5c\xd7\xc9\x79\xb2\x04\x33\x38\x40\x3e\x0a\x28\xa8\x55\x37\x42\xe9\x23\xc5\xaf\xdd\xc7\x21\x4b\xdb\x50\xbf\xd5\xf7\xb3\xc1\xd1\x72\x95\xa1\x6d\x45\x51\xec\xe7\x9e\xb8\x8f\x6d\x4b\xe5\x04\xb5\x81\x97\x20\xf0\x3d\x80\xa0\x37\x70\xe7\x20\x9c\xc1\x04\x56\x64\x04\x97\x6f\x82\x73\x3f\xf0\x91\x0f\x93\x9d\x73\x90\x68\xd5\x04\x2a\x60\x08\x5d\xe1\xd1\xbd\x76\xf1\x3c\x28\x07\x5f\xaf\x72\x80\x05\x44\x6f\xdc\x2b\x8a\x91\x4d\x50\x14\x43\x33\x3a\xd9\x25\x8c\x17\x3e\x4f\xd1\x93\x74\xe4\x53\xa1\xdf\x17\x49\x78\xf8\xe5\xf4\x5b\x89\x88\x7e\xdd\xcc\x20\x7a\x13\x79\x30\x20\x28\xd4\xfe\xf5\x86\x60\x7e\xfd\x05\x88\xd7\x3f\xc3\x35\xbb\xf0\x31\x58\xcd\xd8\x2f\x6a\xab\x06\x2b\x34\x8f\x62\xff\x7f\x21\x23\x6f\x50\x7d\x9a\x21\xc9\x23\xb6\x8a\x5d\x98\x30\xd3\x35\x11\x95\xa5\xcf\xcb\xc4\x0f\x21\x35\x6a\xab\xf5\x60\x96\x6e\xbe\xdf\xbc\x4f\x5f\x65\xdf\xca\x57\x24\xff\x4c\x8d\xfa\x88\x72\x08\xd5\xa4\xd1\xa7\x8b\x1e\x88\x09\xa4\x3d\x4e\xbf\x29\x90\x45\x5c\xfc\x87\x63\xf9\x2e\xee\x0a\x12\x84\x36\x3c\x25\x66\x7d\xac\x5f\x10\xdc\x03\x7c\xfc\xf8\x3b\x1a\x15\x79\x1a\x04\xd1\x55\xfa\xb6\x1a\x2f\x7c\xb0\xbb\xdf\x7f\x84\xe6\x71\x74\x65\xb1\xd0\xd3\x64\x7c\x76\xcd\x52\x9e\xdb\x07\xbb\xfb\xf6\x66\xe2\xc0\xcd\x86\x7b\x69\x84\x33\xe1\x91\x0a\xcd\x87\xa8\x07\x1c\xfb\x03\xaf\x97\xdd\x7f\xfc\x58\xe4\x49\x51\xef\x38\x52\xf5\xfb\x0e\xd8\xa4\x3c\x9d\xed\x19\x8c\x84\x9a\xf5\x1d\x6e\x38\xee\xdf\x34\xc7\x3d\xc1\x4b\xc1\x21\xd5\x8f\x9d\x90\xff\x5e\x82\x18\x11\xef\x10\x75\x2e\x91\xc9\x3f\x5c\x42\x78\x71\x1a\x04\x3d\xdd\xdc\x12\xbb\x6e\x3c\xfe\x1e\x8f\x95\x0c\xb2\xb2\x5f\xa4\xd4\x9e\x7d\xd2\xf9\x9e\x4b\x06\x14\xa5\xf5\x50\x9e\x7f\x2b\x78\x11\xfb\x4a\xe5\xd1\xe3\xc7\x48\xaa\x2e\x0b\x7c\xdd\xf8\xd3\x5e\x58\x50\xd2\x7b\xde\x0e\x5a\x92\xbd\x0a\xe9\x0e\xe5\xa5\x48\x6c\xda\xd4\x28\xe4\x65\x8b\xa6\xf3\xe2\x75\xb8\x31\xfb\xe3\x3a\x74\x3f\xf9\x0b\x5c\xc3\x78\xe8\x27\x2f\x08\x50\xd8\xfb\xf2\x45\xec\xa3\xe0\xcb\x17\xc0\xbb\xfb\xcb\x17\xa9\x17\x57\x61\x10\x01\xef\x03\x74\xa3\xd8\xeb\x91\x90\xe6\xcd\x06\xf7\xec\xbb\x10\x66\xc1\x46\x69\xb7\xb3\xc7\x35\x3d\xef\xc0\xfe\x06\x4f\xf7\xd3\x20\xf8\x71\x9d\x76\x74\xb6\x28\xf6\x48\x56\x39\x67\x57\x5b\xcf\x31\xa7\x31\x92\x30\xcb\xa0\xf5\x9d\xcc\xa0\xd5\x63\xd1\xcb\xe2\x92\x03\x49\xbc\x30\x89\x1a\xe6\x9e\x3b\xd2\x49\x7f\xae\x60\xbc\x2e\xea\x1f\xba\xb9\x48\xfb\x63\x5b\xf8\xa3\x04\x37\xa4\x21\xd6\x1e\x75\x9a\x32\xe3\xc2\x75\x3a\x0e\x27\x78\xb2\x3b\x62\x42\x9f\xe0\xb9\xeb\x88\x59\x79\x22\x4d\xb7\x4d\xff\xa4\xd7\xb0\x0b\xb2\x47\x87\x20\x04\x92\xfa\xa6\x74\x06\x39\xf1\xf0\xf4\xf9\xf3\x97\x1f\x3f\xfe\xf1\xe1\xe5\xe9\x0b\x07\x0a\x28\xa9\x7e\x46\x72\x98\x69\xd9\x9c\x4c\x6d\x27\x32\x4a\xce\x4f\x9e\x73\x21\xb7\x4f\x83\xc1\xa1\x70\x4b\xf7\x1d\x48\xd7\x0b\x20\x09\x46\xc0\x25\xec\xa5\xb9\x2f\x44\x70\x52\x8e\x6f\x0d\x0b\x12\x24\xf8\x8a\xd6\x87\x98\x91\x48\x08\x13\x25\xc0\xb0\xfb\x7d\xc7\x8e\x88\x74\x82\xc7\x8a\x2e\x62\xbc\xf4\xdf\xe1\xfd\x27\x35\x3a\x19\xad\x35\x74\xc6\xaf\xca\xe7\xf9\x84\x58\x92\x94\x5a\x70\x42\x3b\xa8\x0c\x84\xb2\xf4\x71\x27\xfb\x21\x3f\xf1\x7a\xcc\xd5\x2c\x3f\x58\xb4\xd7\x92\xdc\xc0\x6e\x2f\x51\xc2\x88\xa9\x78\xd2\x3e\xf6\x39\xca\x96\xac\x48\x38\xed\x03\xa0\x13\xd9\x0c\xe5\x19\xeb\x4c\xd4\x05\xa3\xf7\xeb\x68\x55\x2c\xe9\xfe\x02\xf7\x1d\x75\xe2\x68\x90\xf4\x5d\x99\x3d\x62\x21\x62\x0a\xa5\xf0\x3a\x23\x08\xb2\x3d\x03\x57\x24\x27\x13\x0a\xb9\xea\xfd\x87\x57\x6f\x4e\x3f\xfc\xfe\xc7\xcf\x2f\x7f\xdf\xb8\x41\x54\x74\x2a\xd0\x5b\xba\x49\x2a\x13\x15\xea\xa6\x6b\x5f\x01\xa9\xc6\x9b\x7e\xff\x91\xe1\x10\x48\xce\xd6\x86\x43\xc1\x62\x1d\xdc\x20\x19\x50\x69\xaa\x48\xd5\x05\x6e\xb0\xe3\x27\x03\xb2\x3c\x06\x34\x5a\x68\x90\x57\x7f\xf9\xc8\xca\x15\xab\x4e\xf4\x52\xe0\x4c\xa3\x8a\x65\x91\x96\xfc\xa0\x78\x7e\xad\x8a\x27\x95\xef\xdc\x31\xa1\xe2\x94\xbc\x52\xde\x58\x05\xf2\xbb\x0e\xe3\xce\xe9\x73\x26\xd8\x24\x13\x20\x6c\xef\x9c\x88\xe3\x7c\xe7\x24\x4c\x76\x4e\x3c\x57\x9e\x9c\x94\xf4\xb5\xde\x3b\x3b\x27\xbe\x67\x63\x7d\xb3\x17\x65\x34\xd9\xca\x6d\x46\x5a\x15\x45\xdb\x0d\x50\xb6\x1b\x45\x2d\x15\x4f\x7c\x7c\xfd\xcb\x3f\xc8\xed\x54\x8c\xca\x0a\x9b\xe2\x69\x1a\x11\xad\x7b\x44\x15\x3c\x73\x12\x99\xa6\x04\x76\x47\x7d\x91\xee\x1a\xd2\x96\x48\xa2\x46\x37\x7d\xf9\xc4\xd2\x7c\x9e\xb2\x6b\x54\x01\xa2\xa3\xaa\x52\xfa\x8e\xf4\x08\x1e\x94\xdc\x1b\xb4\xd2\x94\xb7\xbf\xf6\xe7\xd8\xcb\x99\xaf\x44\x75\xa8\x53\xa5\xed\xfa\xdc\x0f\x3d\x3f\x9c\x0d\xe2\x55\xd6\x7e\x7c\xdb\xfb\xb5\x5a\xb3\xf6\x1b\x76\x07\xa4\xa5\x2e\x4b\x8a\x97\xdd\x04\x56\x99\x4d\x20\x52\x37\x01\xd7\x70\x13\x90\x5b\x4c\x20\x28\x03\x65\x89\xe3\x1f\x6c\xa5\xe6\x09\xd9\xaa\xd6\xb9\xd2\x9b\xdb\x58\xe8\xa7\x2b\x34\x7f\x43\x6a\x57\xb0\xd0\xab\xd6\xe8\x8a\xac\x51\xc7\x1b\xcb\xcc\x37\x8b\xb1\xad\xf9\x82\xed\x2c\xc7\x78\xa9\x4e\xf5\xe1\x27\xd2\xea\xf1\xb5\x8b\x55\x2a\xa9\xef\x9c\x2b\x1f\x9c\x67\xc3\x69\xa7\x05\x47\xf6\x1c\x1f\xd9\x53\x76\x64\xcf\xd5\x23\x5b\xfe\xe9\xcc\xb3\x47\xf6\xbc\xf0\xc8\x9e\x7f\xf9\x32\xcf\x1e\xd9\x73\xf5\xc8\x9e\x8f\x97\xf5\xc3\x69\x3d\x67\x21\xc2\x69\xe7\x24\x6a\x59\x1c\xd9\xf3\xcc\x81\x3a\x67\x47\xb6\x72\xfd\x87\x79\xfe\xc8\x3e\x17\x47\xf6\xbc\xfc\xc8\xce\x7e\x41\xbf\x0c\x71\x15\xe7\x9c\xb9\x8e\x90\x14\xe1\x65\x2b\x25\xcd\x93\xb6\x37\xd7\x7c\x7b\x73\xa3\x28\xf6\xfc\x10\xa0\xc6\x9b\x5b\x61\x1e\xc0\xec\x0e\x87\xa2\x45\x44\x68\x89\xb4\xd4\x3c\x3e\x83\x32\x56\x25\x37\x78\x24\x87\x2f\x3d\x08\x95\xdf\x82\x50\xb9\xca\x9c\x27\x40\x65\x12\x72\xc7\xbd\x20\x73\xbe\x68\x4f\x8f\x74\xaa\x27\x36\x4b\x80\x55\xe3\x15\x72\xdc\x84\x91\x07\x99\x28\x19\xf5\x7a\x75\x8f\x18\x69\xad\x95\x48\x81\x9d\x59\xd5\x6e\xc4\x14\x48\x6a\xff\x36\xf2\x32\xc9\xc4\x25\x67\x86\xb6\x8d\x29\xab\x85\x94\x0e\x5d\x6a\x67\x2f\x1e\xaf\x70\x5d\x3d\x27\xec\xf7\x9d\x98\xa4\xe5\x1a\x87\xe4\x1f\x27\x36\x12\x54\x83\x6a\xc9\x51\x7f\xf6\x29\x82\xaa\xaf\x88\x90\x05\x6f\xbc\x25\xd0\x77\x13\xd1\xb8\xe4\xfd\xcc\xb7\x14\x12\xba\x1a\xfb\x39\x49\x28\xd4\xe5\x3e\x5e\xc6\x34\xad\xc9\xce\xfd\xb0\x17\x7f\xad\x7b\x31\x5e\xae\xfe\xb8\x17\x9b\xec\x9b\x72\x96\xbb\xbe\x03\xea\xbd\xb2\x73\x12\x82\x05\x5e\x10\x49\xaf\x17\xd4\xdc\x62\x3d\x37\xb3\xb5\x9a\xc9\xda\x3a\xd7\x06\xf7\x84\x69\x5c\x77\xf8\x33\x7d\xa6\x5d\xf7\x88\x9f\xcd\x76\x68\xd4\x57\x5f\x45\x63\xaa\x9e\x51\x6a\x52\x7c\x49\xc2\xa0\xec\xf7\x60\x06\xad\x30\x42\x16\x4d\xa5\x95\x3a\x4a\xa9\xdc\x3f\xb6\x0f\x76\x0f\x6c\xe7\x9a\xba\x4d\x4f\x48\xdc\x42\x0a\x9d\xd4\xed\x7f\x34\xb8\xa9\x6a\x07\x0a\x74\x6f\xe2\x15\x27\xed\x3d\x49\xfe\x29\xa1\x90\x83\x06\x9f\x10\x0a\xb9\xf2\x95\x40\xde\xe1\xfc\x1a\x3b\x9c\x9f\xb8\xd1\x25\x8c\xd7\x03\x77\x0e\xfc\xf0\x06\xb7\xbb\x1c\x33\xc0\xc3\x86\xf7\xb5\x6f\x78\x51\x9d\x4c\xce\x26\xbb\x9c\x3a\x79\x99\x2c\x59\xbc\xcb\x35\xcd\xde\xe2\xb9\x89\x9c\xbc\x25\xb9\xb3\xc9\x5b\x0a\xb6\xf1\xcc\x1a\xdf\x94\x6c\xcd\x9e\x9b\x0c\x85\xe7\x7f\xe8\xb9\x29\x4f\x3b\x63\x4f\xfc\xf2\x45\x49\xf3\xfa\x06\x26\xf3\x97\x21\xae\xaf\x67\xf7\x7f\x28\x37\x94\xb2\xf4\x52\x50\x62\xc8\x56\x12\x58\xd1\xdd\x79\x48\x08\x60\x59\xff\x32\x03\x5f\xdf\x89\xc7\xbd\xaa\x67\x3d\x88\x80\x1f\xd8\x7d\x42\x99\x33\x44\xb1\xbf\xe8\xf5\x1f\x25\x57\x3e\xfe\x66\xd8\xbf\x76\x41\x02\xed\xc3\xdd\x5d\xfb\x44\x12\xe8\x7b\x94\x86\x63\x8c\x1e\x3f\x8e\x87\x78\xb6\xfc\xe6\xa3\x79\xcf\x7e\x4e\x49\xd5\xac\xc5\x2a\x41\xd6\x39\xb4\x20\x6d\xa1\xe5\x87\x56\x14\x7b\x30\xb6\x50\x64\xad\x12\x48\x44\x72\x0b\x86\xde\x32\xf2\x43\xa4\x22\x69\x32\x7d\xe3\x7c\x37\xa2\x3e\x2d\x3c\x11\x4f\xd8\xe9\xb4\xd9\xf4\x4f\x98\xe9\x8e\x20\x6d\x02\xe2\x5e\xde\x38\xc9\xd8\x57\xf7\x7d\x32\x01\xdb\x47\xdb\xfa\x37\x7f\x14\x45\xe6\x47\x91\x88\x91\x19\xa4\xee\xdd\xc1\x1c\xa1\xe5\x60\xce\x13\xcf\x1a\x9f\x4d\x37\x40\xcb\x53\x25\x3c\x55\x36\x87\xc3\x19\xda\x83\xa9\x8a\xd0\x10\x7f\x8f\xc1\x8c\x10\x39\x9a\xe2\x21\x2c\x09\xf9\x50\x87\x35\xa8\x62\x14\x5b\x8d\x9c\x10\x12\xc2\xaf\x9a\x3e\x28\xae\x43\x1f\x14\x9b\xd2\x07\x85\x9c\xaa\x27\x2e\xa1\x0f\x02\x14\xcf\x78\x13\xf4\x41\x71\xbf\x7f\x22\xd5\xa9\x73\xfa\xa0\xb8\x98\x3e\x08\xdc\x4f\x52\xc2\xa0\xd5\x86\x73\xdb\x9b\x4c\xdc\x8b\x7b\xd7\x1b\x07\x52\xa2\x8c\x9f\x3e\x7d\x7a\x7f\x52\x5c\x40\xf1\x96\x89\x15\x42\xfc\xf2\x97\x2f\xd7\x24\xa6\xc1\x7c\xe7\xaa\x4a\x29\xa6\xdb\xb9\x5a\x62\x7a\xf4\xa1\xd3\xe6\x6e\xc4\x4c\x74\x44\x2e\xfb\xf0\x57\xbb\x05\x7a\xb7\xc4\x99\xb5\x78\xd0\x3e\xbf\x05\xed\x73\x59\x1c\xc8\x01\xc3\x4b\x9b\xd1\x18\xc5\x15\x3a\xa7\x58\xdd\xc2\xed\x61\xfc\x06\xd3\x4f\xfd\x7a\x9f\x21\xae\x12\x56\x53\xee\x2d\xe9\x5c\xc3\x25\x2c\x97\xa9\x86\xbb\xba\xab\x1a\xae\xe3\xb1\x18\x97\x05\x08\xc1\x0c\x7a\x3f\xae\x9f\x7f\x78\x91\x10\xed\xaa\x40\xf9\x4d\x77\x63\x43\x78\x63\x16\x63\xcc\xd2\x68\xc1\xa1\x00\x4c\x3b\x54\xcd\x65\x4f\xca\x1b\x41\xe7\xf4\x8f\xae\x09\xfd\xa3\x77\xb3\xf4\x8f\xee\x8d\xd2\x3f\xf6\xae\x4f\x29\x99\x96\x0d\x82\x20\xba\xb2\x37\x04\x09\xee\x27\x6f\xe4\x09\x90\xa1\x9d\x55\x26\xc7\x97\x2f\xbd\xfc\x45\x9d\x1d\x5a\x1b\x42\x82\x22\xca\x35\xdb\x1f\x26\xd1\x02\xd2\xf8\x9d\x57\xca\xc7\x79\x0c\x93\x52\x7e\x79\xfc\x14\x59\xa5\x67\x4e\xec\x38\x60\x32\x0e\x87\xbe\x27\xe5\xd7\xe5\x19\xef\x94\xa8\x25\x12\x51\xb9\xfe\x7b\x14\x6b\x2b\xf9\x48\x13\xff\x14\x0c\x67\x30\x84\x31\x16\xaf\xa2\xf8\x23\xa4\x02\x56\xdc\xc7\x6b\xd2\x05\x34\x05\x5d\xee\x36\xe8\xe7\xb1\xfb\x85\x61\x51\x92\x04\xc6\x0d\x48\xd4\x4d\x49\x17\x07\xbf\xad\x6c\x38\xf9\x48\x24\xe4\xd8\x74\x78\xd9\x12\xc9\xd9\x50\xde\x2b\x48\xef\x49\xdf\x41\x5d\x79\x24\x88\x5b\x98\x04\xe0\xf0\x78\x09\x95\xb6\x61\x08\xc3\x4b\x42\xad\x6b\x3f\x7f\xf7\xf6\xe3\x2f\xaf\xff\x78\xfb\xf1\xfd\xe9\xf3\x97\x1f\xff\x78\xf9\xf6\xf4\xc7\xd7\x2f\x5f\xd8\xfd\x1f\xec\xff\xb2\x4f\x44\x70\xee\x23\x24\xfb\x69\x79\xd4\x05\x4d\x87\xfc\xf6\xe3\x09\x0f\x10\xfa\xf2\x25\x74\x5e\xc0\x04\xf9\x21\xa1\x38\xcc\xde\xc9\x04\x69\x14\x44\x65\x6c\x60\x90\x40\x0b\x8d\xcb\xed\x6d\x42\x64\x57\xdb\xcf\x0e\xbd\x0e\x3c\xe3\xbc\xbb\xae\x3d\x97\x56\x37\x4c\x03\x4a\xc8\x46\x49\x85\xc8\x93\xff\xc7\x7a\x01\x2c\xa0\x35\x1e\x5b\xf6\x5f\xae\x71\x77\x6f\x6c\x2b\x8a\x2d\xb9\x2f\x74\xf7\x33\xaf\xfe\x57\xe1\x4b\xff\x65\xff\xbf\x52\x5f\x7d\x98\xf5\xd5\x87\xb5\x7d\xf5\x61\x7f\xb3\x71\x56\xe3\x85\x8a\x92\xa4\x0c\xd1\xad\x83\x1c\x16\x5a\xa8\xa7\x99\xef\x5d\xfb\x66\x06\xb2\xa9\x29\x5f\x18\xff\x9a\xe0\x50\xf5\xc0\x50\xfd\x57\x44\xae\xe6\x86\x08\x54\xf6\x7e\x19\x08\xb5\x8a\x7c\x4c\x52\xf4\x2e\x0a\x19\xbd\xcd\xa0\xa7\x7e\xf2\xf7\x28\xc7\xd4\xc5\x94\xbf\x0c\x55\x57\x26\x16\xfe\x21\x10\xe0\x41\x71\xa9\xaf\xb8\x98\x02\x7a\x2f\x2e\x65\x0d\xa3\xfa\xe9\xa4\x39\x8e\xff\xe2\xb2\x50\x9c\x8e\x15\x71\xba\xf4\xe4\x55\x5d\x7c\xe4\x08\x4e\xcf\xe0\x7f\x7e\x7c\xf7\x76\x48\x53\x14\xf9\xd3\x75\xef\x4c\x3a\x00\x1d\x12\xb1\x48\x4e\x1c\xfc\xd2\xa4\xff\xa8\x4e\xc0\x5c\xd8\x77\x10\x16\x0a\x75\xc7\xf5\xcf\x70\x7d\x42\x80\x52\xcd\xa2\x25\xc5\xc1\x2c\x8b\x42\xd5\xc7\xb3\xc0\x2e\x75\x1c\x08\xba\xc3\x25\x1b\x0a\x55\xf3\xc6\xb6\x5d\x10\x9d\x49\x86\x89\xa4\x1c\x22\xe9\x32\x48\x52\xb5\x25\x20\xdb\xd3\xd8\xde\xb1\x1d\x13\xf0\x5b\x9f\xb0\xd8\x2a\x68\x35\x03\xf0\x1b\xf5\x09\xd2\x60\x7a\x82\xd2\x10\x01\x91\x2c\xaa\xb9\xc4\x2b\x98\x8a\x9e\x75\x26\x8b\x13\xd6\x89\xae\xec\x3f\x0a\x1f\x3f\x0e\xd5\x30\xc9\xfe\x86\x3a\xf0\x62\x61\xc4\xe2\xe6\x32\x84\xf5\x03\xdf\xfb\x4e\x6e\x03\x72\xec\x9f\xe1\xda\xee\xf7\x37\x0e\xe0\x21\xad\xaf\x5f\x7d\xfc\xe4\x68\x83\x44\xb6\x70\x26\x6b\x42\x42\xc4\x6c\x6b\x78\x26\xa7\xef\x97\x9d\xc9\x35\x90\x76\x0b\x88\x62\xdf\x4d\x6e\x14\x7f\x92\x52\xd1\x3a\x8b\xf4\x50\x5d\xde\x27\x0e\x9a\xe9\x83\x04\xf0\x2d\x48\x00\xe7\xc5\xc0\x99\x95\x3f\xa0\xe3\x40\x40\x33\xe5\xe6\x4d\xfd\x5d\x37\xf0\x61\x88\x48\xc8\x94\x29\x92\x9b\xad\xd6\x9d\x64\xb5\xc0\xe7\xff\x40\x31\x51\x26\xc1\x6a\xb6\x73\x42\xf6\x04\x37\x0a\xb8\x38\x62\x5a\xe4\x6a\x99\xa0\x18\x82\xc5\xc0\xac\xec\xa8\x4e\xd9\x5e\x74\x15\xd6\x2a\x7d\x55\xd7\xd0\xaa\x35\xb3\x2e\x79\x62\x59\x3a\x4e\x8e\xcb\xf8\x7a\xf8\x75\xa2\x40\x7a\x99\x8b\x74\x54\x52\x7a\x4d\x6a\x32\x24\x44\x9a\x34\x86\x6d\xfb\x44\x9a\x7a\xd1\x8f\xef\xd4\x1b\xbc\x1e\x44\xc2\x59\xf2\x43\x15\x6f\x38\x58\x93\x0a\x58\xe4\x83\xf8\x84\xf9\x48\x24\x0d\x07\x8d\xe1\x90\x15\xf5\xc7\x32\x8e\x2e\x7d\x0f\xc6\x7f\x44\x4b\x62\xf2\xfe\xf2\xe5\x7a\xf3\x08\xc9\xb7\x3f\xaf\xff\x60\x18\x1c\xf5\xb5\xf4\xfa\xa3\x34\x63\x69\xb6\xd8\x2f\x5f\xec\x65\x1c\x2d\x20\x9a\xc3\x55\x62\x3f\x42\xc3\x29\x44\xee\x7c\x4c\xfc\x54\x8c\x0b\x81\xf6\x36\xbd\xf1\x9b\x8f\xe6\x9f\xa2\x0b\x18\xf6\xec\x9d\xcb\x11\xb1\xc4\xc7\x21\x08\x76\xb0\x92\x47\x4b\x1e\x90\x2f\xdb\x7f\x23\xc0\x7b\x2c\xf4\x50\x8b\x1d\xfb\xdc\xf8\xca\x0f\xbd\xe8\x6a\x48\x4f\x27\x22\x50\xd0\xd7\xde\xb3\x07\x88\x95\x33\x15\x7c\x52\x3a\x7f\x8a\x6b\xa5\x88\x56\xf6\x29\x8b\x97\x4a\xd0\xad\xe9\x16\xe4\x9d\x58\xf6\xdf\xe2\x3e\x1e\xc8\x24\x0a\x20\x4f\x7a\x21\x8a\xea\x6f\x88\x54\xc9\x34\xe7\x8f\x74\xb6\xb3\x34\xbc\xd2\x53\x6c\x6f\x4d\x41\x48\xc4\xb0\x2b\x3d\xf0\x88\x4b\x58\x67\x4a\x1b\xf9\xee\xf1\x01\x62\x21\x99\x15\xff\x11\x92\xec\xfc\x70\x88\xd7\x11\x97\xb8\x88\xec\xc5\x97\x94\x73\xbd\x61\x02\x68\x79\x41\x08\xa0\xca\x72\x44\x52\x2f\x5e\x79\x40\xf2\xd3\x09\x8e\x8b\xde\xf5\x02\x22\x70\x72\x4d\xc6\xef\x12\x04\x27\x5a\xa3\xde\x9b\x97\x9f\x3e\xbc\x7a\xfe\xf1\x8f\xf7\xef\x5e\xbf\xfe\xe3\xd5\xdb\x4f\x2f\x3f\xfc\x7a\xfa\xda\xee\x7f\xf9\x32\x82\x07\x1b\x27\x21\x2d\x3a\x81\x67\xbb\x13\x07\x0b\x9d\xf8\xcf\xd1\x84\xc8\x9f\x09\x96\xf6\x71\x17\xff\xc2\x36\x2c\xa9\x8f\x65\x5b\x34\xe9\xc6\x1f\x8a\x3b\xf8\x44\xed\x0e\xbe\xfd\x99\xf4\xc7\xf5\x46\x6a\x2d\xa4\x51\x1d\xad\x9a\x0b\x59\x93\x5e\x88\x7d\xb2\x9b\x46\xa5\xfb\xee\xad\x35\x6b\xe3\xb8\xe3\x69\x6f\x25\xcb\xb1\x7c\x3b\x6e\x8f\xab\xf3\xb2\x45\x77\x65\x12\xcc\x55\x99\x1d\x0a\xed\x29\x4f\x32\x05\xe7\xf7\x0a\x33\x0d\xa4\xaa\x90\xbe\xb3\x92\xb5\x03\xcd\x57\x33\xcb\xc7\x4c\x1f\xa9\x2c\xa5\xfa\xbb\xb9\x39\x6e\x3b\x67\x51\x83\x2f\xe7\xcb\xc9\x7c\x7b\x25\x6b\x44\xe7\xe6\x1a\x11\x4d\x01\xf2\x00\xc7\x7f\xd0\x2a\xb6\x0a\xc7\x37\x10\x9f\xf1\x4c\x34\x8e\x3c\x92\x82\x3a\x8d\xe2\x48\x03\x0a\x86\xed\x3b\x7e\xaf\x97\xe5\xc5\xac\xb2\x42\x92\x25\x72\x27\x28\x40\xf0\x8d\xd7\xa4\x25\xdb\x89\x38\x8d\xe1\x34\x86\xc9\x9c\x58\xdd\x4a\xbc\x56\xac\x0a\x05\xa6\x36\x93\x40\x4f\x83\xa0\xa7\xa4\x3a\xd0\x33\x51\x82\x2f\xf3\x6f\xd4\x41\x9d\x17\xbd\x5c\xfd\x95\xd7\x1c\x36\x6e\xe0\x41\x2b\x7a\x39\xf3\x95\xa4\x21\xb6\x9d\xa5\x4c\x69\x07\x2c\xe4\x85\x74\x83\x2a\xe4\xa9\x59\x28\xdf\x81\x73\xe9\xcc\xd2\x03\x60\x7d\x9f\x6c\x60\xef\x1e\x4e\xab\x6f\xe1\xb4\xfa\xa3\x18\xbe\x17\x47\x2b\xba\xef\x14\x9a\xb8\xa2\x10\x01\x92\x70\xbd\xef\x24\xa5\x46\x32\xbf\x28\x6f\x66\x14\x2f\x88\xb9\xa9\x80\x09\x1a\x22\xe4\x87\xb3\x84\xd8\x8c\xea\x91\x41\x67\x49\xbe\xf4\xa7\x2a\x77\x3f\x25\x36\x23\x01\x33\x7e\x83\x1d\xc6\x0b\x43\x53\x96\xce\x80\xb5\x16\x09\x5f\x48\x3f\x8b\xd4\x2e\xeb\xd4\xb0\xc5\xba\xd7\x99\x66\x6e\x11\x4d\xe8\x3c\x73\x91\x26\xc4\x9a\x67\xae\x8a\x3e\x74\x2e\x33\x77\x14\xba\xc7\x59\x4a\x68\x5d\x8d\xe6\xd3\x91\x0a\x85\x29\xa9\x50\x81\x58\x41\xf7\xd9\x22\xa0\x51\x0e\x9e\xe5\x82\xb0\x67\xaf\x12\x68\x85\x7c\x88\x7e\x28\x01\x23\xb1\x28\xb8\x5e\x7f\xfc\xfd\xd9\xa4\x7f\x72\x36\x29\xf1\x91\xf2\x2f\x8e\x53\x4e\x57\x8d\xd3\xd2\x08\x34\xe4\x9c\x3e\x7f\x9d\x9c\x5c\xbf\x27\xb9\x5b\x5e\xd0\xa1\x4f\x4e\xce\x26\xce\x87\x28\x80\xd2\xef\xcd\xa6\x7f\x62\xe2\xbd\x74\x44\x5a\x1c\xf2\x7f\x7a\xf4\x5c\x02\x11\xae\x5c\x0f\xf5\xf1\x2d\xf2\xa7\x4c\x9f\x9a\x0f\x29\x00\x1e\x58\x22\x18\xff\x3d\x8a\x7b\x7c\x18\xfa\xc3\x78\xe9\xf6\xc4\x81\x34\xfe\x1e\x0e\x63\xf8\xe7\x0a\x26\xe8\xef\x51\x4c\x39\x8e\xb9\xff\x8e\x3c\xe0\xe0\x9e\x85\x0e\x74\x44\x01\x9b\x94\xf5\x5b\x21\x2a\xd2\x59\x12\x4e\x9f\xbf\x96\x11\x5e\x72\xd5\x44\x21\x3a\xf1\x8a\x40\xa0\x9c\x30\x39\x41\x1b\x31\xc2\xb9\xd4\x0c\x67\xf8\x84\xc9\x45\xfc\x9d\x5d\x73\xca\xed\x13\x1b\xef\x8d\xf8\x38\xb7\x1d\x4a\x12\x7e\x62\xe3\x23\x03\xda\x0e\xa1\x06\xc7\xbb\xe3\x84\x4b\xa9\x33\x88\x4e\x5d\xe4\x5f\xb6\x8e\xed\xb0\xed\x47\xdc\x28\x58\x3e\xab\x99\xb5\xf0\x1a\x37\x39\xc5\xbd\x6d\x1e\x95\xc5\xf6\x8b\x41\x14\x40\x4a\xfc\x31\xca\x91\x4b\x6b\xd9\xbf\x86\xe3\x9e\xec\x33\x66\xdb\x80\x3c\xf3\x6c\x9a\xd6\xae\xdf\x4f\x41\xb8\x5f\xbe\xa4\x35\x60\x03\x3a\x1a\x63\x51\x99\x96\xfa\x03\xc2\x4d\x53\x23\xc9\x88\x6b\x7b\x0c\x29\x13\xbb\x2e\xbb\x12\xc5\xf8\x92\x52\xf0\x1f\x9b\x14\x5a\x29\x8e\xc0\xf0\xf1\xe3\x5e\x59\x19\xa2\x52\xa4\x85\xac\x14\x27\xfb\xfa\xd9\xee\xa4\xdf\x77\xc2\x4d\x0f\x39\xb4\x37\xe1\xa6\xbf\xd9\x38\xcb\xf1\xbb\xde\x42\x4d\xe1\x44\x37\xdc\xf6\xa6\xa4\x69\xb6\x68\x69\xcf\x6e\x6f\x4d\x3a\xcf\x96\x4e\x0d\x60\x49\xdb\x72\xe7\xd9\x72\x59\x2a\x45\xbf\x6d\xc1\x97\xd9\x82\xd3\xc3\xe7\x2c\x6a\x5b\xf8\x2c\x5b\xb8\x4a\x57\xdc\x3a\x21\x57\xb6\x4f\x04\x52\xd0\xad\xd6\x73\xb4\x6f\xf6\x9d\x85\xac\xe4\x68\xca\x17\x0a\x9b\xd7\xe0\x13\x42\x61\x53\xbe\xb2\x90\x55\xa9\x3f\xcc\x55\xa9\xc8\xf7\xdc\x01\x37\x2d\xdf\x0a\x5e\xe0\x51\x3e\xdb\xfe\x7d\xd0\x93\x1e\xc2\x9c\xbe\x09\x3d\x69\x59\x8c\x15\x20\x79\xab\x4a\x70\x02\x92\x16\x63\x64\xbb\xc3\x4b\x71\x87\x2f\x45\x63\x1a\x38\xe5\x2d\x19\xb1\x68\xf4\xa2\x10\xc3\xf0\x9b\x3b\x27\x2e\x31\x37\x26\x08\x20\x58\x23\x30\x4a\xa7\xe4\xa8\x91\x45\xb1\xed\xac\x98\x16\xe2\xe5\xf4\x13\xe6\xc0\xaf\xf2\x80\xab\x9e\xce\x14\x11\xf6\xee\x2a\x64\x46\xba\xfe\x30\x88\xa2\x8b\xd5\x92\x0d\x8d\xd8\xd6\x4e\xc8\x26\x77\xe5\xa3\xf9\x60\x15\x07\x76\x51\x6c\x93\xba\x15\x6e\xd5\x10\x9a\x0b\xf3\xa8\x94\xd5\x88\x13\xbf\xc8\x7a\x7a\x1d\x26\x04\x48\xf9\xe5\x0b\xd2\x8a\x74\x0e\x8f\x28\xf0\x3d\x82\xc7\xdc\x28\x42\xbc\x56\x73\x28\x15\xcf\x61\x7f\x13\x44\xb3\x68\x85\xe4\x3d\x90\x36\x28\x18\x5f\xe3\x8f\xe8\x02\x9c\xd9\x2b\xba\x02\x83\xfe\xc6\x0d\xa2\x44\xe4\x48\x60\xb3\x66\x48\x2f\xda\xd9\xf1\xc3\x4d\x7f\x1e\x79\xf0\xc7\xf5\x2f\x1f\x5e\x4b\x0d\x90\x62\x5d\xe4\xb9\xe2\xd8\xe7\x20\x81\xbf\xc4\x81\xed\x40\x25\xbc\x28\x1e\x46\x4b\x18\x66\xcb\x27\x2e\xd3\x94\x5c\x85\xea\x8e\x8c\xf9\xe4\xbb\x5d\x4a\x7d\x62\xc1\x21\x4b\xa2\x3d\x4c\x10\x88\x11\x63\x3a\xc1\xca\x18\x82\xd6\x15\x48\x2c\x52\x75\xcf\xee\x9f\x20\x19\x87\xf0\x21\xff\x80\xc3\x11\x98\xb8\x45\xe3\x83\xa7\x4f\x1f\x9d\xc7\x10\x5c\xa4\xec\x26\xd2\xfb\xe2\xab\x99\xb7\x0e\x77\x77\x37\x7a\xbd\x4f\xab\x48\x32\x78\x43\x7f\xa3\x8d\xc0\x10\x4b\xb6\xbd\x2b\xd7\xcd\x96\x2d\x09\x86\x5b\x0a\xf1\xa8\x4f\xb5\x58\x97\x13\xfc\x56\x42\x3f\xc4\x82\x6c\x00\x31\x4d\xdf\xed\x28\xe4\x43\x1c\x26\x2d\x4d\xf0\x52\x39\x5d\x59\xe1\x1f\xa4\xc9\x07\x69\xf2\x4e\x4b\x93\x46\xd2\x62\xdd\x04\x88\x06\x16\x6c\x71\x25\xd1\x07\xcd\x67\x1f\xab\x19\x1c\x5f\x26\x03\xa6\x9b\x7e\x56\x08\x54\x54\x79\x57\x9f\x5b\x91\x49\x67\xe9\x5e\xd1\x89\xad\xba\xb6\x35\x5a\xee\xbf\x96\x06\x69\x53\x37\x78\xf7\x96\xc9\x32\xdb\x62\xda\xc1\x9d\x99\x17\x85\xe9\xfc\x6b\x34\x2f\xe6\xe4\xa6\x2e\x65\x9b\x9c\xe0\xd4\x71\x8e\xae\xc2\xf0\xd8\x86\x39\x54\xea\xc8\x48\x5b\xca\x9b\x52\x47\x7e\x69\xc4\xa5\xb6\x2d\x8b\xd7\x57\xcb\x40\xb4\xd8\x0a\x89\x87\x67\x42\xe2\x31\xbd\x59\x12\x0f\xef\x46\x49\x3c\xee\x75\x70\xd5\x8d\xf3\x51\x9d\x3f\x88\xd6\x5f\xbb\x68\x4d\xc5\x9a\xf9\xd8\xc4\xf7\xbb\x71\x4a\x1f\x8a\x21\xf0\xd4\x67\x12\x4e\xb7\x50\xfc\x08\x05\x17\x97\x15\xc1\x0e\x9b\x1a\x8f\x68\x6a\x7b\x01\xd7\x65\x45\x28\xb7\x35\xaf\x4b\x4c\x7a\xc5\x85\x68\x1e\xd2\x14\x45\x52\x75\x16\x17\xa2\xdc\x66\xaf\x4f\x88\x02\x74\x59\x6c\x4e\xa7\x88\xa1\x22\xf5\xc8\x05\xa1\xa4\x19\xfd\x81\x62\xe0\x5e\x40\xaf\xd2\x44\x4e\x21\x3b\x58\xaf\x91\xe4\xa7\xb2\x04\x5c\xd5\x5a\x8d\x12\x67\x16\x65\xe2\xcc\xfe\xc0\xf5\x14\x6a\xce\xb2\x81\x9a\x23\x91\x4d\xce\x41\x22\x5b\x8a\x33\xf2\x41\x91\xc6\x42\x98\x95\xc2\xf1\xf7\x68\x88\x37\x8d\x75\x0f\x8d\xbf\xc7\xe7\x20\x16\x71\xf1\x71\xf8\xf8\xf1\x77\x44\xb6\x65\xe9\xd1\x37\x58\xc1\xc9\x98\x80\x71\x23\x86\xf4\xfa\x46\x22\x4b\xd2\x3d\xa5\xdc\xde\x70\x16\x24\x85\x99\xc9\x8a\xc7\xe9\xd4\x80\x7c\x5a\xa0\x3c\x2e\x17\x8b\xdb\xf1\x90\xd1\x27\x8d\xc3\xbe\x13\x67\x79\x9f\x94\x88\xab\x52\xa8\x09\xd7\x1f\xce\x26\x45\x61\xf4\x69\xa1\x72\x9f\xa7\x31\xf4\xa8\x7f\x9d\x8a\x34\x42\xe5\x48\x13\xd0\x2f\xc0\xb2\x07\xc7\xdf\x2f\x7a\x0b\x89\x92\x53\xe0\x4a\xfa\x3a\xa3\xbf\x50\x6b\x58\x9d\xb4\xdd\x28\x62\xd9\x80\x84\x73\xe1\x1d\x19\xea\x88\xa6\xe0\xd0\xf7\x86\x28\xfa\x48\xe2\xf5\x25\x02\x2b\x3c\xcc\x31\xd7\xb0\xce\x26\x27\x3d\xa9\xfa\xe3\x38\xc3\x5c\x40\x92\x15\xcb\x55\x56\xa8\xaa\xd4\x91\x97\x5f\xca\x28\xd2\xb2\x7a\x96\x7e\x6c\xee\x64\x67\x69\x36\x09\x4f\xf6\x7b\xb9\x17\x36\x1b\x27\x1a\x9f\xab\x49\x6a\x28\x2c\xa2\xb5\x91\x7a\x95\x2d\x97\x2e\xe2\x2e\x94\xb8\x4c\xc1\x5d\x29\x71\x3a\x28\xd4\xa6\xef\x9c\x6b\x73\xf8\x34\xcf\xfe\x53\x9a\xf7\xe7\xb2\x86\xba\x45\x50\x72\x77\x2b\x41\x25\xaf\x53\x17\x14\x42\x05\x76\xe7\x07\x79\xf3\xeb\x96\x37\x17\xb9\x54\xa2\xcb\x8c\x34\xb2\x50\x53\x89\x4e\xc7\xbd\x22\xb8\x34\x03\x44\x1b\x51\x0d\x91\xa9\xeb\x13\xec\x72\x64\xfc\xfc\x9a\xb3\x13\x75\x4e\x76\x4a\x41\x64\x29\xdb\xa9\x7b\x57\xd9\x4e\x8b\x24\x2e\xba\x13\xdc\xf9\xfc\xc9\x5b\x81\x31\xab\x44\x4c\x5b\x07\x2b\xe7\xf2\xc6\x2e\x7b\x6a\xe2\x04\xe6\x66\x57\x92\x93\x20\xb8\x58\x06\x04\x91\xc2\xd2\x8e\x88\x9c\x23\x70\x98\x00\x92\xe4\x23\x17\x78\x4f\xb1\xc0\xb0\xbf\x41\x31\x08\x93\x40\xe5\xa0\x95\xa4\xc0\xf4\x36\x9f\x07\x4a\x72\x7d\xfb\xc3\x2a\x20\x58\x5d\x12\xf1\xec\x65\xe2\x55\x29\x7a\xb2\x35\x2c\x33\x5b\xac\xd6\x8f\xdd\x24\x8c\x37\xef\xc7\x56\x42\x69\x35\xdf\x15\x36\xda\x26\xb1\xbb\xc2\x46\x5b\x1c\xb0\x3b\xad\x21\x34\x10\x52\x88\x96\xfe\x65\x5a\x46\x5b\xdf\xf2\x43\x28\xef\x37\x74\xb6\xb3\x50\x5e\x60\xe4\x53\x8d\xa3\xcf\x3e\xd4\x71\x8a\x1b\x91\x9f\x93\xe9\x39\xf0\x43\x9a\x5d\x78\xe7\x84\x15\xf1\xca\xdb\x39\x91\xe2\x7e\x1b\x44\xf2\xd2\x79\x6f\xe6\x27\xdd\x12\x5b\xde\xf6\x12\xbc\xca\x6c\x16\x7c\x8d\xa5\x49\xb0\x18\x79\xdd\x12\xe0\x29\x0e\x87\x2b\xdf\xeb\x3f\x42\xc3\x65\xb4\xec\xf5\x1d\x44\x7c\x16\x3d\x38\x64\xb4\x0a\xef\x71\x37\x0d\x25\xf6\x5b\x76\xfd\xd5\x8b\xfe\x23\x85\xbb\x38\xc7\x6d\xc7\x8d\x82\x62\xf0\x6c\x27\xc3\x99\x87\xfa\x84\xea\x2e\x45\xa4\x85\x8e\x4d\xbe\xf7\x4a\xbc\x01\xfb\x78\xfe\x31\x92\x10\x7e\x59\xb6\x15\xc8\xc7\x55\x66\x98\x1c\x4e\xcd\xa2\x38\x19\xa8\xcd\xe3\x7a\xf3\xc8\x9f\xf6\x14\xc6\x3c\x4e\x07\xfd\xfd\x2e\x7d\x28\x1e\x23\xe6\x10\xfa\x71\xdd\xb3\x2b\xbb\xc3\x76\xe0\x50\x4c\x4e\x29\xb9\x64\xe4\x41\x91\x60\x32\xf2\x60\xff\x51\xfc\x43\x38\x8e\x4f\x7a\xb4\x78\xfa\x50\x45\xe1\xfc\x7d\xdf\xeb\x3b\x84\x57\x78\x1c\xa7\xae\x0e\xa5\xf7\x16\x10\x01\xf9\x74\x46\xec\x12\xf1\xcd\xf6\x0b\xe3\xb1\x5b\x84\x46\xcb\xb4\x7c\x55\xd1\xd1\xea\xf8\x35\x8c\x92\xce\x14\xd2\x51\xb4\x74\x1c\x05\x8d\x63\xa5\xb7\xa3\x7c\xd3\x1a\x3d\xa8\xde\x0f\xc7\xf3\x3d\x53\xbd\xf1\xc4\x35\xd6\xbb\xf1\xc3\x0f\x5a\x77\x81\xd6\x4d\xb6\x80\xee\x75\xee\xb6\x09\x0c\xbe\x3a\xdd\xfa\xc6\xf5\xd6\xe6\xba\xea\xfd\xd2\x4f\xf3\x12\x60\xb3\x13\xb6\x13\x4e\xfb\xaa\x24\x67\x0f\x67\xe2\xd7\x7c\x26\xe2\xad\xcb\x2b\xe1\xf3\xc8\x1a\x55\x0c\xd5\xd3\xec\x0c\xd7\xe9\xb9\x46\xd0\xe3\x6c\x41\x85\x9a\xae\xb9\xd2\x6c\x5a\x64\xf7\xb9\xbd\xc8\xf7\x3f\xc0\x65\x74\x2f\x32\x7c\x15\x9c\xbe\xb9\xcd\x6b\x5b\x39\x6d\xda\x19\x03\x0a\x79\xf5\x0d\x4d\x05\x4e\xc8\x19\xe2\x3f\xbc\x3c\x7d\xe1\xc0\x92\x93\xff\xee\xb7\xb1\x84\x56\xbf\xbc\xa5\x44\xf5\x2e\x0d\x3c\x2c\xcc\xa9\x40\x0d\x0a\x05\x36\x10\x66\x5d\x45\xd4\xc8\xc2\x1c\xd1\xb6\xc8\x4e\x43\xcc\x03\x36\x53\xd2\x27\x8a\xa9\x46\xd6\xeb\xa1\x83\xce\xe0\xa4\xbf\xe9\x3b\x67\xf6\xf3\x39\x74\x2f\x92\xcc\xc3\x21\x79\x10\xd2\x74\x55\x67\x30\xbd\x89\xc6\xdf\x5f\xa7\x9d\xfe\xf8\x71\x88\x6f\x02\xcf\x4b\x53\xa8\x0e\xdd\x68\xb9\xee\xf5\xfb\x1b\x5c\x3c\xca\x64\x1d\x70\x42\x02\xe2\x76\x33\x38\xeb\x74\x79\x77\x00\x00\x28\x4f\xdf\xd3\x24\x36\xad\x30\x7d\x8f\xfe\x5b\x5d\x47\xa5\x69\xbe\x22\x4d\xaf\x86\xe0\x6e\xb9\x84\x32\x84\xb7\x57\x5b\x3a\xbb\x41\x78\x77\x2a\x71\x25\x0f\x12\xd7\xb7\x20\x71\xf9\x86\x7c\x9f\x7c\xae\x99\x52\x7e\xce\x00\x82\x57\x60\x9d\x91\xb6\xd8\x55\x2c\x72\xf5\x7a\x41\x4d\x7f\x00\x5f\x0d\xb5\xfd\xd3\x1a\x5e\xce\x7f\xd0\x8a\xdc\x95\xe3\xd3\x20\x27\x4e\x47\x44\x9d\x41\xb5\x7b\x35\x50\xcc\xb5\xf9\x37\x94\xbe\x33\x33\x4a\x57\x94\x91\xf9\x66\x20\x6f\x97\x7e\x9d\xed\xf2\x36\xa2\x61\xd2\x2d\x33\x7a\xd8\x32\xbf\x85\x2d\x73\x55\x8c\xfe\x26\xeb\xd8\x74\x8b\x64\xd3\x95\x6e\x91\x75\x29\x92\x95\x97\x2f\xe0\x5a\x68\xb2\x5d\x6b\x8a\xb4\x49\x92\x96\xe8\xdf\x3b\x2d\x91\x01\xd1\xa9\x3c\x88\xe5\xf9\x7b\xb1\xe1\xd3\xea\xfe\x0c\x73\x89\x16\x0a\x23\x6d\x37\x8e\x3f\x8e\x54\x7f\x1c\x1b\xbd\xf6\xf0\xe2\x48\xc7\xb9\x4c\x75\xa3\x86\x84\xcd\xe4\xe5\x8c\x73\x50\xfb\x95\x9f\xe1\xba\xa1\x27\x92\xbe\x5b\xe6\x80\x5c\x99\x9f\x2e\x34\x1e\xb8\x1d\x94\x87\x95\xb1\x3d\xd7\x64\x2b\x17\x24\xe5\x7e\x7e\xf4\x90\x48\xec\xdb\x39\xcf\xa8\x19\xe5\x1c\x9f\x38\x40\x76\x44\xce\x33\x46\xcc\x73\xd5\x11\x79\xd9\x8d\x23\x92\x2c\x07\x63\x4f\x24\x79\x5a\xb8\x22\x8d\x5f\x48\x60\x30\xdd\x39\x49\xa0\x1b\x43\xc4\xa9\x95\xcd\x2a\x46\xce\x56\x8e\x3b\x66\xc0\x4a\xc6\xb4\x5c\xa3\x00\xea\x40\x25\x9e\x42\x73\xc6\xe5\xe6\x2e\xd4\xe5\x3d\x3b\x9e\xe9\x96\xd8\x09\x1b\x46\xce\x77\x38\xcf\x87\xf6\x7c\xc3\x9e\x55\x18\x4c\xf5\xf0\x61\x72\x47\x4b\x60\x4c\x57\xcd\x09\x7e\x04\xff\xc1\x19\xd8\x04\xb3\x18\x1a\x7f\x7f\xde\x43\xfd\x1f\xae\x69\x3c\x5c\x14\xbf\x7a\x41\x04\x06\xe7\x23\x79\xfe\xd5\x0b\xf1\xea\xe6\x24\x9b\x19\xaa\x4f\xd8\xd2\xc2\x02\x48\x33\xbd\xa5\xab\x94\x8c\x6c\x56\xa6\x47\x9f\xcb\x4c\x94\xcf\x5a\x27\x36\xe9\x8d\x01\x3f\xae\x3f\x44\x01\xec\x99\x3c\xbe\x71\x96\xe3\xa9\x96\x7e\xb6\xb5\x23\x3a\x5b\x6c\x1d\x47\xb4\x09\x83\xab\xa6\xfc\x3a\x8e\x68\x43\x06\xd7\x69\x96\x42\x37\x98\x52\x7a\xdb\x5a\xe5\x93\xd7\x4c\xea\xff\x9e\x07\x65\x35\xa1\xb9\x15\xaf\x9b\x7c\xe9\x03\xc5\x9f\x35\xe3\xba\xfd\xc0\x76\xff\x42\xae\xdb\x1a\x71\x68\x28\x5a\x46\x41\x34\x6b\x8c\x2a\x7f\xc8\x03\xf5\x20\x14\x1a\xe6\x81\xaa\xf4\xc4\x7b\xae\xa9\xb1\x83\xcf\x5a\xca\xd0\x7a\xe1\x87\xd4\xd2\xd1\xb5\x34\xe4\xb9\x89\x2c\x0c\x25\xf7\x4e\x18\x62\x6b\x7b\xd3\xad\x73\x57\xc1\x81\x7b\x6e\x42\x3c\xa0\xef\xf0\xd9\x3b\xf4\x5c\x11\x6a\x8d\x67\xd0\x78\x3c\x0e\xbf\x7c\x49\xcf\xd8\xd0\xb1\xdf\xc0\x64\xfe\x92\x26\x54\xb5\xfb\x3f\xf4\xda\x5b\x3c\x4a\x7d\xc0\x12\x67\x29\xf7\xf1\x2a\xb1\x4c\x25\xa9\xdf\x9d\x78\xdc\xab\x7a\xd6\x83\x08\xf8\x81\xdd\xff\xf2\xc5\xb6\xfb\x43\x14\xfb\x8b\x5e\x9f\xd3\xa2\x22\x16\x99\x75\xb8\xbb\x2b\x82\xb3\x70\x6b\x7b\x94\xd3\x67\x1c\x3e\x7e\x1c\x0f\xf1\x44\xa5\x34\xa9\xcf\xa3\x30\x84\x2e\xb2\x16\x2b\xac\x42\x41\x8b\x25\x9d\xb5\xfc\xd0\x8a\x62\x0f\xc6\x16\x8a\xac\x55\x02\x89\x38\x61\xc1\xd0\x5b\x46\x7e\x88\xec\x7e\x06\x4e\x2f\xf7\xae\xf3\xdd\xa8\xdf\x4f\x29\x53\x49\x3e\x79\xb8\xd1\xe5\x87\xc0\x92\x48\x32\xf6\x55\xc3\x3a\x99\xfc\xed\x4d\x3d\x7e\xde\x5c\xdf\xca\xd6\x6f\x60\xe4\xaf\xc6\x81\x27\xfe\xff\xc2\x41\x74\x4e\x0d\x1f\xea\xd1\x07\x71\x77\x0e\x32\x8f\x08\x9f\x53\x61\x19\x99\x03\xaf\x98\xdc\xa8\x70\xe3\x2c\x7c\x41\x30\x16\x5f\xab\x1d\x3f\x83\x28\x1f\xf5\x9e\xee\x7a\x9b\x4d\xbf\xaa\x1f\xa2\x15\x0a\x20\x92\xdb\xaf\x34\x83\x6e\x95\xc2\xbe\xa3\x71\x4f\x7c\xb5\x34\x5d\xab\xad\xd0\x74\x45\x26\x34\x5d\xde\xcd\xd2\x74\x45\xb7\x43\xd3\xe5\xde\x27\x9a\x2e\xef\x96\x68\xba\x1e\x18\x70\xbf\x7a\xe9\x98\x4a\x25\x4b\xc2\x67\x4e\xc4\xd7\x8c\xb0\xca\x98\xd9\xe9\x03\x6f\xc0\x92\x89\x3f\x51\x8c\xa0\x37\x3e\x9b\x6c\xf0\x5f\xfc\x31\x7e\x75\x38\x1c\xf2\xd7\xe8\xf4\xe8\x4f\xe4\xd7\xc8\x3f\x3d\x96\x9b\xfe\xda\x9f\xf6\x6c\xbc\x15\xfa\x2e\x09\x41\x23\x86\x28\x9e\xb4\x7d\xf4\x48\x73\x17\xb1\xbb\x83\x91\x94\x10\x3f\x59\x06\x3e\xea\xd9\x43\xbb\xcf\x76\x47\x2c\x36\xe7\xaf\xe6\x28\xe3\xc3\xef\xe3\x93\xb4\x38\x72\xe5\xbf\xf9\x15\x6b\x24\x84\x17\xce\xde\x83\xcf\x34\x8a\x7c\x43\x69\xd7\x0c\xf9\x95\xb4\x91\x3d\x22\x12\x67\x6d\x36\xf8\x59\x7a\x79\xe3\x91\xac\x5e\xf8\x01\x71\x47\x5c\x52\x8a\xa1\xfd\xa7\x9a\x94\x48\x2f\x6e\x36\x3c\x88\x06\x19\xa4\x04\x0c\x4b\x09\xbe\x0a\x75\x23\x9e\x75\x10\x64\x54\x1b\xfa\x38\x43\xbd\x19\xf0\x73\xb9\xf9\x34\x7a\x01\xe3\xe3\x72\x65\xea\xae\x24\x73\x91\x67\x87\xf2\x19\x3f\x57\x0c\x81\xb7\xce\x74\xc7\x1f\x84\x2f\x80\xe8\x67\x9b\xf4\x4f\x4e\xcc\xfb\xa8\xe0\x51\x32\x9f\x99\x1c\x4a\x50\x8b\x70\x8c\xf0\xfa\x20\xaa\xca\x3b\x22\x97\xa4\xc3\x87\x67\xb4\x98\xca\x94\xb9\x16\x8d\xbf\x1f\x8c\xbe\x23\x46\x53\xac\x2b\xbc\x9b\x12\x13\x20\xf0\xc4\xbb\x78\x86\xa4\x53\x83\xa5\x84\x4b\x0b\x96\xc6\x7b\x43\xdc\x69\x8c\xcd\x8b\x6b\x09\x7c\xa6\xe4\x3d\xb3\x8f\x1f\xa3\x21\x79\xe3\xcb\x97\xeb\xcd\x66\x09\x62\xb0\x48\xd8\xcb\x54\xb1\x92\x34\x24\x51\x8a\x4c\xe8\x95\xfe\x8d\x87\x28\x19\xd2\x22\x1e\x3f\xee\x21\xf5\x0a\x75\x8e\x50\xf5\x73\x48\x47\x02\x2b\x44\x31\x0c\xd1\x07\xfc\xeb\x11\xd3\xb0\x62\x22\x26\x51\x93\x31\x1f\x5f\x91\xf5\x83\xbc\x77\x22\x2f\xe1\x3e\x2d\x17\x38\xc1\x38\x76\x92\xf1\xaa\x77\xbd\xc1\xb2\x34\xfb\x24\x96\x79\xfe\x3f\x30\x26\x17\x60\x88\xfe\xbf\x3e\x7e\x82\x3c\x03\xf8\x33\x4e\x82\xb7\x40\xc0\x7b\x06\xdf\x26\x0f\x64\x6a\x80\x5b\x6e\x07\x11\xfd\xea\x89\xfd\x37\x95\xa1\x8c\xdf\xf8\xb4\x5e\x42\xbb\xdf\x1f\x46\x4b\xfc\x0b\x04\xef\xc9\x37\x7a\x7d\xf2\x15\x44\x46\x94\x34\x96\x0e\x28\xef\x57\x65\x42\x38\xf1\x38\x14\xb3\x00\xf6\xff\x36\x72\x00\xeb\xf8\xf0\x2c\x9e\x48\x7d\x0f\x70\x1f\xd3\xb1\x1b\x03\xfa\x2f\xb3\xff\xc6\xab\x70\x98\xb8\x73\x88\x37\xec\x9e\x0d\xa6\x08\xc6\x1f\x60\x48\xb2\x3f\xf5\xf0\x26\x09\x68\xff\x13\x72\x65\x44\xc7\x28\xa4\xcc\xc8\x6c\x62\x49\x75\xdc\x6c\x9c\x60\xbc\xe8\x81\xa2\x54\x68\xa8\xad\x46\x95\x64\x4b\xa7\x9c\x5f\x61\x6b\x4d\x2d\x5b\xae\xc8\x0d\xd7\x5a\x09\x04\x75\x02\x8a\xf0\x40\x2c\x40\x91\x41\x92\xf9\xbe\x05\x27\xe3\x40\x66\xaa\x33\x7b\x6e\x30\x47\x68\x59\xeb\xe1\xc1\x9c\xe6\x6a\xd6\x86\x19\x09\x71\x0d\xdc\xac\x98\xd8\x81\xf0\x41\x0e\x95\xa0\xf1\xb1\x02\xd8\x31\xa1\x1f\x0c\x34\xa4\x23\x59\xfe\x1c\x1b\x8c\xd0\xfc\x61\x3e\x18\x4e\xcc\xdf\xd9\x6c\xd2\xa6\x05\x55\xb3\x0b\x82\xd8\x9d\x17\xcd\x2e\x0a\x91\xa0\xcf\xec\xc0\xcf\xc0\x45\x19\x6b\x38\xb9\xb1\x8c\xa1\x87\xb7\x53\x28\x4d\x99\x8a\xe7\x56\xcb\x04\xc5\x10\x2c\xa4\xd8\xb8\xd2\xe7\xf3\xa1\x74\xa5\x8f\xcf\x21\x08\xd0\x7c\xe0\xce\xa1\x7b\x51\xf1\x28\x21\x22\x35\xf9\x76\xc5\x53\x94\xe0\xb5\xf4\x91\x8b\xcb\x8a\x07\xf2\x08\x96\xfc\x33\xb9\xc0\xf8\xfc\x23\x1a\xe2\x3a\x4d\xbb\x57\x68\x3e\x58\x40\x34\x8f\xbc\xaa\x96\xd1\x8c\xa2\x05\x30\x97\x7c\x76\xf3\x06\xc6\x9e\x42\xe8\xc4\xb5\x98\x50\x27\xc2\x08\xee\xb0\x01\x39\xf1\xc5\x95\x7c\xb4\xd2\x09\x48\x6f\xe6\x27\xdb\x49\x9c\xde\x55\xe6\xca\x49\x90\xde\x90\x7b\xe8\x64\x29\xae\xe3\x81\x3e\x89\xc4\xcf\x8b\xcb\x93\x95\xf8\x01\xdc\xe0\x24\x11\xbf\xc8\x70\x9e\xb8\xe2\x37\x1e\xba\x13\x4f\xfc\xa4\xc3\x74\xb2\x48\x4b\xa6\x0e\xeb\xa9\x30\x59\xb1\x1d\x69\x6e\xb4\x23\x51\x3b\x7e\x85\x15\x3f\x1c\xdb\x74\x80\xf1\x06\x4a\xac\xf9\xd7\x64\x59\x9f\xa4\x76\x32\x27\x2c\xdf\xa7\x43\x3e\x72\x71\xcd\x7d\x3a\x9c\x8c\xe3\x8d\x98\x57\x92\x36\x72\x8e\x35\x72\x69\xcf\x9a\x57\xee\x59\x22\x8b\x42\xd9\xae\x85\xa2\x18\xcc\xe0\x0e\x16\xad\x82\x01\xfb\xd5\x81\x61\x32\xad\x27\x1c\xfa\xd3\xb7\x11\xfa\x31\x88\xdc\x0b\x3f\x9c\xa9\x73\x37\x1c\xf7\x76\x1d\x24\x39\x6e\x68\xfd\x6c\x7c\xf4\xab\xaf\x69\x13\x57\xc8\xc9\x32\xdc\xc0\x87\x21\xb2\x73\x74\x2e\xe9\xf3\x42\xa6\x83\xc3\x73\x56\xec\xe3\xc7\xdf\xa5\x3f\xb0\x64\xc6\x26\x53\x5c\x63\x32\xa1\x82\xc9\x14\x8f\x43\xa7\xc7\xe0\xab\xb8\x53\xfb\x7e\xd8\xa3\x13\xac\x5f\x7d\xbc\xd7\x9d\x36\x08\x4f\x9b\x3c\x79\x6c\xd6\x68\x2f\xfc\x20\x60\x06\x87\x20\x08\x7a\x02\xb1\xc0\xfd\x3c\x26\x2f\xce\x20\xfa\x15\xd7\x92\x70\xdd\x4a\xa4\x73\xb9\xac\x28\x60\x06\x75\x96\x27\x98\x5a\x9e\xc2\xf1\xf7\xd7\x58\x79\x65\x05\x86\x0e\x5e\x01\xfd\x4d\xdf\xd1\x50\xd0\xa5\xfa\x37\x49\xaa\x32\xf4\x13\x9a\x5c\x05\xf6\xbf\x7c\xe9\xc1\xf1\x19\x9c\xf4\xf3\x89\x59\xc0\x0c\x3a\xe1\x18\xe6\x0d\x49\x50\x16\xba\x86\x54\x22\x67\x95\xc0\x2a\x65\xdf\xb9\xde\x08\x45\x2e\x5b\x99\x50\x91\x1e\xe2\xaa\x95\x18\xc5\xa8\xd0\x55\x1e\xc5\x68\xc7\x8d\x16\x58\x4d\x22\x0e\x71\xed\x39\x5a\xf0\x50\xc1\x41\x9f\x7d\xba\x42\x8c\xc8\x3e\x9e\x3b\xeb\xb3\x0f\x64\x4f\xe8\xec\xfd\x62\xb9\x22\xfb\x64\x81\x20\x94\x7d\x4c\x73\xe2\x67\x1f\xc9\x1f\xf8\xd9\x27\x74\xe7\x7d\xae\xe9\x45\xc7\x7d\xf6\x41\x76\xda\x97\x3f\x83\x65\x1d\x43\x79\xa0\xe5\x0e\xbb\x14\x16\x7c\x75\x7b\x9d\x8e\x21\x4d\x4c\x4f\xe7\x3e\xb5\xde\x41\xac\x6f\xbb\x00\xf5\xce\xd0\xdf\xec\x13\x90\xb8\xb6\x83\xff\xf0\x60\xe2\xda\x93\x3e\x09\x0f\x3d\x1f\x4b\x3e\xa2\x56\xb9\x92\xce\x26\x29\x60\xed\x7b\xa1\x8a\x4f\x53\x23\xc9\x59\x48\x6d\x33\xb8\xa2\xc4\x50\xf8\xe5\x4b\x78\xb6\x3b\x99\x6c\x36\x8f\x94\x76\x9d\x8b\xe4\x04\xd7\xe9\xd5\x93\x73\xc7\xf3\x63\x48\x6a\xea\x4f\xd7\x27\xd3\x8d\x73\x39\xbe\xe6\x92\x8f\x7a\xb4\xcc\xfb\x3a\x01\x48\xc5\x0d\xe0\x67\x34\x72\x90\x0a\x44\xc5\x0f\xa9\xe2\x50\x6f\xd7\x49\xd4\xfb\x8a\x54\xd4\xdb\x75\x3c\xe5\x36\x16\x80\x54\xb8\xeb\xbc\x8f\x45\x24\x15\xd5\x39\xef\x3b\xa9\x5c\xd7\xdb\x75\x7c\xe5\x16\x15\x9b\x7a\xbb\x4e\xa4\x5c\x26\xd2\x53\x6f\xd7\x59\x29\x57\x99\x10\xd5\xdb\x75\x5c\xe5\x3a\x93\xa5\x7a\xbb\xce\x42\xbd\x8e\xa5\xb7\xde\xae\xb3\x94\xaf\xf2\xb3\x71\x56\x78\x36\xf2\xb9\x2f\x9f\xb9\x19\xa9\x65\x56\xb5\x57\x92\x94\xb9\xca\x66\x39\x0d\x00\x56\xa8\x9e\x7d\x26\xf7\x76\xa6\xc9\xa2\x3c\x7e\xb4\x1b\xf4\x49\x52\x8c\x3e\x09\xa2\xd9\xac\xb6\x85\xd5\x1c\x40\xc2\x8a\x97\x30\x24\xc1\x9d\xc5\x90\x04\x11\xa3\xd8\xdb\x00\xcf\xfb\xc7\x0a\xc4\x5e\x92\xa7\xdc\x9b\xb1\xeb\x3a\x7f\x53\x48\xf6\x97\xb3\xd8\x01\x93\x71\xf8\x28\x85\x25\x40\x27\x96\xc6\x98\x97\xf7\xdd\x77\x68\x18\x85\xe4\x3b\x3d\xe0\xa8\xb8\x48\xe2\x34\x74\xce\xa0\x83\x26\x9b\x05\x70\xe7\x7e\xd8\x61\x90\x0d\xd9\x26\x28\xb6\xf6\x0d\x2d\xbb\xdf\xe3\x1e\x13\xb5\xe5\x7d\x2c\xbc\x2f\x41\x0c\x9f\xcf\x41\x8c\x74\xd2\x67\x0f\xca\xd4\x8a\x19\xba\x43\xd8\xef\xf7\x87\x51\xea\xdd\x24\x63\x92\xf4\x48\x76\x5c\x04\x93\x02\x6f\xab\x70\x49\xe1\xee\xf9\x01\xff\xdf\x18\x0e\xa3\xf0\x44\x11\xba\x86\x51\x58\x30\x02\xca\xeb\x67\xe1\x84\x98\x3c\xc9\x5f\xa4\x18\x2a\x91\x91\xee\x85\x9b\x05\x40\xee\x1c\xb2\x51\xf6\xa7\x3d\xf1\x2e\x77\x00\x7d\x37\xe2\x7d\xa6\x4a\x69\xa8\xff\x03\x3a\x39\x43\x93\x3e\x4d\xac\x81\xf0\x41\xc4\x0b\xc3\xdd\x46\x1a\x98\xf6\xd7\x35\xbb\x77\x02\x37\x1b\xbc\x0d\xc6\xcb\x98\x5b\xe8\xe9\x52\x19\x66\xfa\xf9\x11\xcf\xed\x40\xc6\x4a\xbc\xd2\xef\x31\x67\x0d\x9b\x11\x78\x88\xf8\x91\x14\x0f\x93\xd5\x79\xe2\xc6\xfe\x39\x49\xf4\x71\x1d\x0e\xdd\x39\x08\x67\xd0\xc3\x1d\x80\xdf\xa2\xd3\x3b\xec\x3b\xb8\x3b\x3e\xa5\x7e\x8a\x10\xf7\x86\x13\x6f\xc4\xcc\xce\x40\x0b\x60\x88\x62\x1f\x26\x3d\xf5\x04\x82\xfd\x3e\x87\x25\xb0\x7c\xc8\x58\x6c\x4f\xbd\x1d\x12\xb0\x07\x2f\x56\xcf\xa6\x79\x85\xfd\xb1\x6c\x60\x8d\xd2\x0d\x62\x35\x3e\x8b\x27\x8e\x3b\x6e\x63\x66\x75\x16\xe3\xeb\x8d\x23\xcf\x13\xb7\xc0\x2d\xbc\x38\x83\x93\xb1\xcb\xdc\xc2\x0b\xd5\x2d\x2c\xff\x74\x16\x59\xb7\xf0\xa2\xd0\x2d\xbc\xf8\xf2\x65\x91\x75\x0b\x2f\x54\xb7\xf0\x62\xbc\x32\x71\x0b\x2b\x9b\x4e\x0f\xcb\x56\x58\x2b\xc0\x62\xfc\xa2\xef\x78\xd2\x62\x5f\x64\x9c\xb6\x0b\xe6\x16\x56\xae\xff\xb0\xc8\x6f\x7b\x9e\x70\x0b\x2f\xca\xdd\xc2\xd9\x2f\xe8\x77\x6e\x5c\xc5\x05\x6e\x1e\x73\x0b\x8f\x17\x0e\xe8\x3f\xc2\xa7\x84\x24\x18\x4a\x06\xf0\x64\x43\x71\x59\xc5\x07\x27\x0d\xb3\x93\x0e\xce\x67\x14\x96\xe4\x01\x04\xd8\xed\x9c\x5e\x4f\x90\x28\x4e\x31\xc2\xf6\x3e\x00\x2d\x1e\x62\x9e\xbf\x7a\xc0\x03\x8b\x79\x2e\x72\x88\x4b\x20\x72\xa1\x3f\x17\x3b\xc8\xa9\xa1\x88\x84\x34\x6a\x64\xb8\x3a\x19\xac\x7c\xe6\x75\xc0\xdf\xff\x48\x31\xec\xc2\x45\xce\xef\x31\xb3\x14\xf7\x92\x6f\xfc\x90\xc4\x4f\xe2\xb3\x8e\xe1\x08\xe8\x13\x43\x70\x1e\xc5\xa8\x77\xb0\x3b\x62\x58\x82\xb4\xd0\x61\x0c\x13\x88\x9e\x03\x77\x0e\x7b\xec\x26\x1e\x87\x5e\x7f\xe3\x06\x10\x08\xc0\x87\x54\xf2\xae\x08\x6c\xc9\xca\x62\x52\x46\x7b\xd8\x97\x42\x5c\x9c\xeb\x05\xc7\xc0\x9e\xc0\x8d\x83\xe8\x67\xfe\x20\xc7\x68\x08\x82\x37\xcc\xdb\xfd\x8a\x26\xda\x64\xa2\xd0\xc7\x10\x2c\x93\x79\x84\x7a\xd7\x58\x3c\xa0\xd1\x3d\xb2\xc7\x35\xff\x45\x26\xd4\xe2\xc1\x60\xd3\x88\x5d\x07\x63\xa5\x02\x02\x0f\x9c\x46\x06\x39\xc0\x41\x3c\x08\x08\xa5\xe4\xd5\xf1\x30\x8c\xe2\x05\x29\xeb\x03\x4c\x96\x51\x98\x40\xfe\x38\x9e\x88\x2c\x8e\xa3\xbf\x21\xb0\xdf\xd7\xc4\x09\xd4\x7d\x25\xe5\xc2\xd9\xc7\x49\x0c\x12\x52\x48\xb6\x17\x10\x81\xb1\x54\xdf\x37\x10\x81\xb4\xae\xe4\x05\x3b\xa0\x6e\x2a\xca\x67\xad\xe4\xeb\xea\x14\x80\xdd\xb2\xbd\x69\xc5\x0a\x5a\x5b\x3a\x2a\x6c\xb3\x91\xd3\xe9\x13\x4d\x22\x5a\xa1\x2e\x1b\xaa\xad\xbb\x66\x11\xb0\x2f\x53\xcb\xbf\x83\x86\xbe\xe7\xa0\x3e\x71\xc8\x47\xaa\x6b\x5b\x5e\xe6\xed\x3d\xe7\x49\xb6\x78\xbe\x53\x74\xec\x39\xaf\x8a\x2f\x47\x70\xb1\x8c\x62\x10\xa8\xb2\x03\x16\x9d\xd1\x7a\xb0\x48\x3a\xf5\x05\x28\x2e\xe4\xb0\x40\x6f\xf6\x56\x31\x41\x79\xfc\x3d\x8e\x16\x52\x2a\x13\x0e\xff\xb2\xc3\x15\x7e\xdc\x1e\x8f\x71\xb7\x45\x53\x0b\x9e\x48\x79\xda\xe0\x0f\xf6\xae\x9d\xb1\xfc\xc0\x9d\x11\x3c\x72\xae\xa7\x78\x46\xa2\x8f\xab\xf3\x37\x7e\x10\xf8\x09\xc4\x22\x76\x42\x6a\xc8\x31\x67\x96\xdd\x1f\xfe\x27\xf2\xc3\x9e\x6d\x4b\xf0\x53\xc9\x7a\x11\x56\xf6\xe5\x67\x34\x58\x40\x90\xac\x62\x3d\x44\x5c\x79\xa0\xe8\xbd\xfb\x08\x0b\x47\xbe\x7b\x91\x6d\x72\xd6\xd7\xc4\x9e\xc9\x35\x8f\xa6\xf2\xeb\x6a\x5a\x15\xb9\x6e\xe8\x91\x49\xcf\x71\x7a\x7e\x6a\xa2\x5a\xc9\x49\xdb\xeb\x6f\xd0\x15\x84\xe1\xa7\x88\x6f\x47\x71\xd3\xed\xc8\xb6\x1d\x90\x7f\x77\x4f\x7a\x68\x6f\x22\x84\xaf\xfc\x83\xfb\xd2\x83\xfb\xfc\x41\xb6\xc1\x25\xe3\x38\xdd\x90\xe7\x20\xe9\x25\xfd\x1f\x7a\x34\xb3\x21\xea\x25\x7d\x27\xb6\xb8\x01\x33\x9a\x5a\x68\xf8\x09\xb7\x88\x61\xe3\x13\x14\x2d\x7b\x24\x30\xf7\x13\x88\xf1\xe3\x04\xe0\x8e\x5b\x9e\x38\xec\xc9\x21\x8a\x7a\xb1\x03\x09\x45\x43\xdf\x89\xfb\x27\x3d\xfe\x00\x24\xd4\x20\x1e\x4c\x50\x1c\xe5\x22\x5c\x59\xff\x89\x52\xf8\x63\x78\x39\x91\x3b\xd7\x21\x07\xa5\xd6\xf1\xa0\x20\x7f\x01\xa3\x55\xa1\x13\x85\x4e\xaf\x25\x75\xd2\x78\x9f\xd8\xc3\xdb\xd8\xb8\xb4\x4e\x4b\xc1\x4b\x50\x3e\x01\xe1\x67\xe8\x0a\xc0\x17\x1f\x39\x0a\x34\xc4\x2b\x43\x8a\x27\x97\x50\x8e\x8a\xa2\x92\xe2\xce\x42\xf8\x99\x40\x52\xfb\xb5\x1c\x51\x28\x8a\x7d\x7f\xa0\xe5\xa8\x22\xb7\x8a\x9e\xbc\x97\x1b\x12\x6e\x41\x75\x1b\xef\x65\xdb\x56\xfe\x80\xca\x07\x45\x0b\xc2\x2c\xc0\x36\xa3\xfe\x3f\xf0\x88\x3d\xe8\xd4\x79\x90\x79\x06\x9f\x51\x94\x16\x5a\x4c\x49\xfc\x00\x9a\xf3\x98\x5c\x93\x57\xc3\x08\x4d\xa3\x55\xe8\x89\x37\x83\xda\x1f\xd5\xd0\x8e\x75\xe3\x8b\x21\x28\xd9\xfb\x40\x3c\xa6\x64\x1c\x06\x68\x2e\x1d\xcc\x52\xa6\x1f\x16\xee\xda\xc3\xd3\x01\x77\x36\x7f\x8f\xb8\x22\x32\xaf\xd1\x27\xb8\x68\xbc\x63\xf7\x33\x6e\xe4\xac\x5c\x6e\x91\x28\xd8\x18\x31\x0b\xf6\xff\xcf\xee\x13\x52\x11\x3c\x58\x63\x44\x0c\xed\x28\xee\x8d\xfa\x8f\xce\x63\x08\x2e\x1e\x69\xde\x18\x90\x37\xc4\x48\x17\xbd\x94\x3a\x1c\x86\x8c\x0b\x64\x8c\x52\x61\xdd\xb9\x16\x9d\x41\x1a\xaa\x48\x27\xd9\x54\xd7\xbf\xbc\xfa\xe3\xf9\xbb\xb7\x7f\x7f\xf5\x0f\x9b\x84\x7e\x7c\x24\x84\xd1\xc6\x6f\x68\xb8\xce\x3a\x02\x55\x6b\x39\xc8\xf0\xf0\x98\x11\x6c\x16\xbd\x5c\xce\x74\x26\xe6\x40\x03\x3a\xb5\xf4\xdd\xf2\x6f\xcc\x48\xe0\x68\x5d\x1e\xb5\x19\x61\x4d\xaa\xcf\xa0\xa6\x05\xb6\x14\x86\xad\xb6\xdf\x51\x25\x44\x06\x75\xef\xc8\x48\x05\xb4\x49\x3d\x3d\x5d\x81\x2b\x6c\x62\xdc\x00\x89\x6b\x0b\xf3\x46\xef\x8c\x5c\xb4\x27\x7d\x92\xb4\xc4\xb4\x67\x64\xdc\xcb\x57\xd5\x43\x6f\x48\xa3\xb4\xfd\x94\xde\xb2\x1d\xfb\x53\x74\x01\xc3\x4f\x9f\x5e\xd7\xec\x38\x15\xea\xf4\x55\xf5\xdc\x47\x42\x69\xa0\xf4\x1a\x54\xf6\x6b\xf6\x80\xdd\xff\x21\x75\x45\x3b\x21\x33\xac\x9e\x39\xf1\x24\x0d\xf1\x3b\xb1\x45\xfc\xd0\x23\x1b\x97\x38\x1e\x8f\xe3\x1f\x7a\x60\x8c\xb0\x48\xd3\x3f\xe9\x05\x63\xe4\x80\x71\xd8\x17\xba\x2d\x18\xd2\xe2\x1d\x7f\x1c\xb0\x3f\x79\x1c\x60\xc2\xec\x40\x4b\x90\x24\x7e\x38\xe3\x3c\x09\xe2\xf7\x78\x3c\xf6\x7f\xd8\x3d\xa1\xa1\x81\xb6\x1b\xfb\xc8\x77\x41\x20\x1e\x13\x17\xd8\x73\x2c\x86\xd0\xbe\x02\x71\x48\x8a\x63\x9f\xf1\xf5\x9f\x19\x14\x94\xab\x0d\x3c\x14\x7f\x9d\x88\x85\xe9\xd8\x3f\xfb\xa1\x57\x73\x9a\x49\x38\xb9\x1b\x99\x63\xbd\xfe\xf8\x7b\x38\xfe\x9e\x89\xef\x06\x15\xbc\xb8\xbc\x1b\xb3\x1f\x8e\xbf\xc7\x3d\x4d\xf8\x3a\x95\x8e\x36\x6b\x06\x0d\x4f\xb8\x0b\x0d\xd9\xde\x11\xd1\xc9\x22\x66\x6b\x44\x5a\xcb\x7c\x05\x9f\x88\x55\xed\x08\xc9\x10\x0c\x69\x42\x8a\xe7\x6c\xcd\x7c\x1f\x64\x2e\xa4\x6b\x48\xfb\xfc\x7f\x17\x3c\x3f\x48\xd7\x5c\x56\x18\xe5\x45\xfc\x46\x57\xb5\xf8\x22\xfb\x5d\xf0\x41\x76\xf7\xbf\xf5\x4f\x1b\x7c\xee\x3d\xdd\x2c\x44\x01\xec\x77\xc1\xe7\xd8\xdd\xef\xf5\x4f\x0f\x46\xd2\x06\xc2\x76\x10\x02\x29\xad\xb5\x75\x70\xa4\xea\x5d\x98\xd4\x6c\x75\xca\x02\x8a\x59\x23\x38\x76\xf7\x2e\x34\xe2\xce\x09\x6f\xd9\xb4\xa4\x5f\x75\xd7\x38\xf6\x73\xe2\x7a\x7e\x15\x7a\xf0\x73\xcd\x8e\x2a\xcb\x34\x77\xab\x8b\xe2\xda\x9f\xf6\x0a\xb6\x65\xb1\x13\x23\x75\x27\x76\xc2\xf1\x99\xfd\x1e\xc6\x2e\x0c\x11\x98\x41\x65\xff\xb0\x9d\xdc\x1d\xb6\x91\x69\xee\xf0\x2d\xd5\xe6\x40\x6d\xbe\xa7\xa3\xc7\x8f\xc3\xd4\x86\xe6\xa8\x86\xc3\x69\x14\xf7\x88\x63\xc4\xf2\x43\x8b\x62\x38\x2d\x30\x0e\xcf\xe2\xc9\x23\xdc\x96\x33\x30\xf9\x6e\x3c\x46\x67\x60\xc2\x59\x21\xf0\xa5\xef\xf1\x85\x1f\x06\xa3\x93\xd1\x46\xec\x6c\x0d\xe7\xbc\x26\x2d\xcd\x57\x30\xed\xb7\x25\x72\xd7\x3d\xad\xdf\xc0\x64\x9e\x3b\xb1\xf3\x17\x73\xa7\x5a\xfe\x91\xff\x2e\x79\xaf\xf4\x38\x4d\xdf\x4a\x4f\xf0\xdc\xb5\x92\x0a\xa4\x27\x79\xd1\x5b\x86\x9f\x4f\x4f\xf4\xdc\xb5\x92\xcf\xa7\x27\x7b\xd1\x5b\xba\xd3\xbd\xfe\x3a\xc8\x31\xc2\xdf\xfa\xe1\x4e\xb7\xe7\x4f\x7e\xdd\x23\x5e\x13\xa4\x74\x17\x5a\xd5\xd9\xda\x96\x32\xb6\x6b\x4f\xb7\xcc\xfd\xf2\x79\x80\xe0\x62\x19\xd0\x00\x65\x89\xa4\x63\x9b\x1d\x46\x29\xcd\xa8\x29\xf9\xa7\x4f\x6f\x5e\xff\x08\xe2\x64\xc8\xab\xd1\xbb\xf6\xbd\x13\xfb\xf7\xc5\xab\xf7\x4f\xe7\x9f\x5f\xd9\x0e\x09\xa8\x3c\xf9\xeb\xb5\x9d\x50\x5e\x36\xfb\xe4\x8c\xf2\x42\xd8\x8e\xed\xb9\x36\xb1\x17\x52\x23\xaf\xed\xd8\x22\x94\x8a\x70\x07\x8a\xff\x17\xfe\x2c\xdb\xb1\x23\xdb\xb1\x99\x0b\xcb\x61\xee\x20\xc7\xbe\x80\x6b\x7b\xe2\xd8\x04\x36\x4e\xba\xd9\x3e\x39\x3b\x3b\x76\xf8\x87\xce\x26\xce\xd9\x99\xfd\x2c\x24\x7d\xe9\x9c\x9d\xed\x1f\x38\x7b\xfb\x93\x09\xb9\xca\x1d\x73\x13\xe7\xec\x3a\x53\xc0\x9e\x63\xff\xfb\xdf\xe1\xbf\xff\x1d\xe2\x9b\xc7\xce\xd9\xfe\x9e\x33\x72\xce\xec\xd3\x30\x8c\x56\xa1\x0b\x63\x1b\x97\x40\x8b\x46\x3e\x0a\x48\xd9\xf6\x73\x5a\xd1\xc9\x84\xe0\xa0\x26\x0e\x2b\x05\xdf\x3b\x72\xce\xf6\x9f\x38\x47\xa4\x06\xbb\xce\xd9\xfe\x91\x33\x3a\xc4\xaf\xac\xf0\x86\xe1\x06\x78\xa4\xc8\x3b\xf4\x9f\xea\xca\x59\x16\xbe\x31\x72\x78\x69\x7b\xbb\xe9\x9b\xc4\x01\x42\x2a\x34\x07\xc9\x80\x96\x4e\x5a\xcc\xab\x33\x21\x3d\x0f\x16\x10\xc1\x18\x17\x38\xd9\x90\xdb\x65\x75\xa4\xa3\xb3\xc5\x6a\x8a\x0f\xb4\xad\xa9\x98\x53\x5b\xac\xac\xfc\x0d\x93\xfa\xa6\xf3\xe0\xd8\x91\x51\xaa\x62\x7a\x26\xb1\x4b\x0a\xe7\xc1\xda\x27\x3b\x3b\x74\xd6\x9f\xa0\x39\xc4\x33\xd7\x6c\xbe\xa6\x33\x6d\xef\x50\xea\x9c\xbd\x03\xf2\x63\xcf\x19\xed\x3a\x67\xe4\xfb\xb8\xda\x35\x3a\x27\xdf\xdf\xc7\xbc\xc4\xd1\x24\xed\xaf\x3d\x7e\x71\x4f\xba\x88\x1f\xb0\xdd\x28\x88\xe2\x01\x61\xdc\x60\xd1\x92\x28\x06\x09\x52\x47\xa8\x56\x95\xc8\x78\x19\x8d\x98\x98\x22\x4f\x71\x4d\x96\x31\x9c\xc2\x38\x19\xd8\x0e\xaf\xa9\xcd\xff\x1e\x89\x0a\x54\x8f\x69\xf6\xe2\x68\x84\xcb\xd2\xde\xd9\x55\x26\xc1\x36\xf6\x83\x92\x49\xe5\xd8\xcf\xa2\x90\x46\xb3\x14\x4d\x30\x26\x3a\xb0\x6a\x1c\xb2\x31\xdc\x4d\x87\x70\x44\xc7\xf5\xd0\xd9\x4d\x47\xe8\xec\x8c\x6d\xc0\x13\x69\x46\xe5\x37\xbe\xca\xf5\xa0\xe9\x87\x7d\x3e\x8b\xf0\xbc\xa1\x94\x55\xf4\x24\x9c\x38\xb6\x4f\xd5\xbd\xa2\xbe\x71\x6c\x18\x24\xd0\x70\x79\x8f\x8e\xe5\xaf\x3e\xc1\x0d\x89\xe1\x32\x00\x2e\xc4\x42\x36\x39\x7c\xb8\x1b\x3c\xa1\x14\x51\x69\x2f\x8d\xa4\x6f\xbb\xca\x24\x3b\x22\x07\x01\xf5\x12\xbe\x38\xfd\x74\xfa\xfc\xe5\xdb\x4f\x2f\x3f\xfc\xf1\xfa\xdd\xf3\xd3\xd7\xb6\x3c\xbf\xd4\x19\x5f\xd2\x63\x4e\xf5\x6a\x2c\xed\x33\xee\x57\x6f\xb6\x1d\x9a\xcf\x2d\x5e\x19\xd2\x93\x3b\xff\x45\xfe\x27\x7c\xfa\x7f\xb9\x5e\x02\x34\xdf\x68\x7b\x90\xb8\xfb\xa5\x06\x50\xaa\x30\x5b\xae\xb9\x32\xb9\x0c\x66\xaa\xb4\x96\x3b\x9e\xaa\x4f\xe5\x6e\x3f\x10\x9f\x73\xe8\x44\x98\x38\xb9\x46\xf0\xcb\x75\xe6\x47\xa6\xa5\xa6\x07\x9d\x93\xa9\x58\xa6\x26\xa9\xb4\x45\x2a\xc4\xaa\x9d\xbb\x8a\xcf\x88\xf7\xf2\x45\x69\x9e\xd0\xcf\xe4\x2e\x94\x57\x34\x23\x3b\x54\xd4\x92\x13\xe8\x48\x55\x54\x2f\xe1\xfa\x89\x84\x25\x46\xf5\x33\x9d\xf1\xc5\x7b\xd2\x2e\xab\xe9\x9e\x73\x66\x53\x79\x1f\x7f\x78\xb7\x59\xf9\xd2\xd1\x55\x2e\x0e\xe8\x56\x94\x27\x12\xba\xa4\x67\x44\x2d\x61\x56\x9e\xc6\x7b\xce\x61\x56\x20\x68\x2c\x09\x1c\xd1\xb9\x7f\x40\xff\xd9\xaf\x7b\x98\xb7\xeb\x1b\xbc\xbd\xb0\x19\xbb\xd9\xf9\xaf\x9d\xbf\x5c\x7b\xee\x46\xea\xaa\x9d\xbf\x5c\x13\xca\xbd\xa2\x0d\x3c\xa3\x89\x08\x5d\x61\xcf\xd9\xe3\xcd\x71\xe8\x2f\x69\xeb\xae\x2b\x92\x1d\xb1\x22\x9f\xd4\xec\x72\xd6\x25\xa2\x53\xe6\x20\x99\xfb\x6e\x14\x2f\x07\x5c\x31\x3a\x3b\xdb\x3b\x70\x46\x8e\x7d\x15\x83\xe5\x92\xe9\x26\x67\xf6\x33\xaa\x42\x3d\x23\xed\x7b\x26\x37\xf0\x99\xd0\xb5\x9e\xad\x12\x18\xe7\x37\x72\x31\x9a\x52\x5d\xe5\x7e\x38\x98\xe8\x3a\x92\x4a\x12\xa9\xac\x30\xd1\xee\xd5\x76\x0c\xd3\x80\x8f\x16\x33\xf8\x88\x7d\xe8\xa0\xbe\x1c\xa0\x74\x27\x58\x2e\x79\xf6\x3a\x36\xc3\x78\x2e\xbb\x67\x41\x34\xf3\x43\xae\x35\xb2\x89\x7d\x8c\x77\x00\x72\xdd\xb1\xa3\x25\x6e\xaf\xd1\x59\x92\x3b\xc4\xf3\x15\x11\x84\xea\x92\xc6\xea\xd8\xcf\x48\xf4\x0a\x39\xbb\x54\x1d\x3f\xdf\xff\x60\xb9\xb4\x1d\x9b\x8d\x28\x19\x75\x3c\x03\x58\xcf\x1f\x9b\x0f\x59\x7e\xd8\x8f\xd8\x01\x6c\x32\x48\x96\x25\xb7\x2b\x15\xb7\xf6\x65\x85\x84\xd5\x40\x2b\x03\xa5\xaf\x67\xbb\xf1\xa9\x4e\x92\xce\x77\x24\x5d\x16\x3b\x41\x44\x99\xfe\xc8\xea\xd8\x75\xec\x4b\x1f\x5e\x0d\xd8\x45\xd2\x16\xac\xc1\xd7\x13\x03\x8a\x2a\x76\x9c\x11\x16\x8a\x0b\xd1\xbf\xff\xc4\xe4\xfd\xec\xc5\xa3\xaa\x52\x0f\x9b\x94\xba\xe7\xec\x3b\x07\xda\x3b\x7a\xed\x26\xff\x8d\x39\x48\x5e\x5e\x82\xc0\x3e\x99\x82\x20\x81\x8e\xbd\x5a\x5e\x02\xf2\xac\xcd\xf9\x7b\xf0\x0e\x66\x3b\xf6\x80\xcf\x78\xdb\x8d\x16\xcb\x28\x24\x51\x4f\x36\x5f\x7d\xc0\x65\xbb\x95\x3f\xc5\xb3\x3a\xf6\xf1\xb5\xd0\xb3\x1d\x9b\xbe\x33\x43\xb2\x84\xe8\xd8\x8b\x15\x79\xfb\x4f\xbc\x2e\x49\x26\x4a\x80\x5f\x26\x48\x3c\x6a\x0b\x1a\x88\x12\x3d\xdf\x1b\xf8\x61\x02\x63\x46\xd0\xe8\x12\x62\x11\x2f\x72\x89\x9d\x6e\x00\x10\x8a\xf1\xce\x09\xe2\x18\x30\xa2\x20\x04\xfc\x30\xe1\x05\x31\x07\xd4\x00\x02\x77\x3e\x20\x1b\x01\xfe\xcb\x9e\x6c\xfe\xea\x2c\x20\x02\x27\xd7\x0b\x62\x49\x23\xe6\xbd\x2a\x63\xdd\x70\x7e\x9e\xd8\x9b\x8d\x0c\x63\x43\x55\xb6\x3e\xd1\x5b\xc9\xce\x39\x48\x7c\x77\xe0\xc5\xd1\xd2\x8b\xae\x42\x7c\x20\x20\x1a\x3b\x96\x8b\x38\x52\x9f\xac\x55\xda\x3d\x82\xc6\x9b\x34\x8b\xb3\x05\x0f\x10\x98\x75\xd4\x53\x4a\x91\x5f\x59\x77\xa1\xd8\xa7\x34\x13\x9d\xf4\x14\x2f\xed\xeb\xea\xa4\x6e\x3a\xe7\x7e\x76\x0a\x16\x34\x6e\xd7\xe1\xf0\x1f\x0f\xed\x1d\x1c\xfc\xbe\x28\x77\x38\x44\x35\xbd\x04\xbb\xe6\x02\x8f\xa1\x00\x47\x4b\x15\x16\x02\x76\xbd\x8e\x5c\x95\xb1\x76\xca\x1a\x6a\xb9\x44\x95\x3f\xfc\xf7\x2a\x84\x83\x5a\x07\xbb\x72\x2c\x6a\x4e\x75\xf3\xa3\xd1\x73\x9b\x9c\x88\x9e\x4b\xf2\x56\xdf\xf6\x44\xfc\x14\x7d\x7c\x7f\x18\xfc\xb9\xff\x30\x11\xbf\x86\x89\x48\xa6\x54\x8b\xd9\xb8\x33\x60\xf9\x58\x6f\x75\x4e\x9e\xfb\x47\xc1\xbf\xde\x1f\xbe\xd3\xcf\x49\x16\x8b\x4a\xc5\x65\x17\x06\x58\x8e\x86\x49\x02\x66\xcc\x4b\x33\xf5\x71\x0b\x6c\xb4\x5e\xc2\xfc\xac\x1d\xed\xb2\x94\xb3\x78\x32\xec\x29\x4a\x12\xb9\x84\x6f\xfb\x30\xf0\x12\x48\x66\xd3\xe8\x10\x4b\xde\x09\xcb\x2f\xa7\x53\x0b\x65\x83\x3c\x56\xb7\xed\xab\xd8\x47\xc4\x1f\x42\x66\xad\xed\x23\xb8\xe0\xca\xea\x48\x36\xe2\xa6\xe5\xa6\x33\x2e\x53\x23\xb9\x56\x01\x38\xa7\x0b\x61\x44\xac\x89\xfb\x78\x11\xe0\x26\x92\xb0\xfc\x6c\xd5\x0e\xc9\x1a\xe1\x5a\x89\xb0\xaa\x5b\x73\x90\x30\xbb\x41\x6a\xd5\xd7\x7e\x55\xfe\x72\xb2\x04\xa1\xdc\x5d\x6f\xd9\x3a\x27\x06\x7c\xfd\x6b\xc7\x8e\xed\x87\xcb\x55\xba\x9c\xb9\xe3\x5b\xac\x6b\xb0\x42\xd1\x34\x72\x57\x09\x5f\xdb\x23\xe7\x2c\xad\x28\x7b\x4a\x7a\x28\xa3\xf3\x2a\x75\xcc\xd7\x83\x57\xdd\xf3\x2f\xc9\x9f\x07\x78\xaf\x22\x24\xab\x31\xf0\xfc\x68\x16\x47\xab\xa5\xd4\x97\xc5\x5d\x47\xb2\x75\x14\x74\x9d\xd2\x71\xa9\x8d\x87\x78\x17\x33\x46\x58\xe5\xc7\xa1\xf3\xb4\x85\xf3\x50\x37\x42\xe9\xdc\xd0\x8f\x64\xe9\x88\xa6\x5b\xe2\x13\x6e\x5f\x95\xf6\xc0\x82\x41\xce\x96\x48\x47\x9b\x76\xf5\x3e\xef\x36\xd2\xbf\x7b\x74\xae\xb2\x72\x27\x6c\x4d\x91\xa0\x93\xa2\x25\x75\x28\x0d\x04\x1f\x00\xa5\x5e\xe9\xfb\x52\x45\x0f\x1d\x5b\x18\x04\x33\xbb\x3c\xb5\xe1\x09\x63\xa1\x78\xe5\xc0\x39\x60\x33\x22\xed\x8d\xe2\xf6\x66\xe6\x5a\xa9\xed\xc2\x70\x7e\xa6\x03\x47\xac\x3d\xe9\x7a\xae\xbf\x2a\x69\x2e\x66\x71\x1b\xb0\xee\x3f\xe2\xdd\x2f\x39\x9b\x84\x2b\xe7\xdd\xf3\x8f\x7f\xfc\xf2\xe1\x75\xea\x83\xd8\x99\xad\x7c\x8f\xa6\x4c\x18\xce\xd1\x22\xf8\x3f\xf1\x2a\x80\x83\x64\x09\x5d\x7f\xca\xad\x78\x93\x09\x5f\x51\x64\xeb\x9d\xc3\x60\x69\x85\x51\xb4\x84\x21\x8c\xad\x30\x22\xae\x6a\xca\x04\x42\x9e\x42\x84\xa5\xc1\x76\xec\x3f\xce\x03\x10\x5e\xc8\x55\xee\xfd\xf4\xfc\xb5\xf5\x77\xc2\x6c\xd2\x17\x1d\x55\xbe\xab\xb8\x91\x07\x07\xd0\xf3\x91\x64\xfa\xa4\x4e\x73\x69\x6f\x11\x9b\x4d\xb2\x0e\x11\xf8\x4c\x4d\xc5\x17\x70\x4d\xd7\x7c\xd9\x72\xff\xb0\x0a\x08\x9c\x83\x5b\x74\x44\xc7\xd0\x1b\x0e\xdf\xa8\xd2\xe7\xe6\x24\x2e\xaf\x78\xb6\x89\x32\x85\xd1\xd8\x64\x1f\x4b\x77\x13\x51\xcb\xfd\xda\xbb\xc4\x16\x26\xd9\xab\x17\xcd\x36\x7e\x69\x8f\xc7\x45\x14\x76\x83\xfc\x6d\xa8\x9c\xd1\xbf\xc1\x7f\xff\x35\x08\xac\x19\x9e\x65\x00\x9f\xaf\xd6\x2f\xbf\xbc\x7a\x61\xf9\x53\x9a\x1f\x96\x9c\xd9\x96\x9f\x58\x01\x9c\x22\x0b\x2e\x96\x68\x3d\x2c\x5b\x7b\x65\xcb\x38\x6b\xa2\xcc\x95\x92\x3d\x5d\x74\xa7\xc0\xbe\xd6\xe5\xba\x9f\x1a\xb4\x89\xac\x40\xa9\xc8\x34\xe0\x89\x36\xfe\x81\xd1\xc8\xb1\xcf\x57\x08\x45\x74\xe8\x8e\xaa\x24\x98\x23\x69\x21\xf8\xc9\xfb\xd8\x4f\x90\x1f\xa6\xce\x4c\x72\xf5\x15\xe5\x67\xb3\x73\xee\x91\x43\xf5\xe0\xce\x7a\x83\x75\x42\xce\x1e\xd9\x76\x93\xd5\xf9\xc2\x27\x73\xf0\xc0\x39\xdb\x3f\x56\xd7\x0e\xe9\x16\xdb\x61\x32\x13\x9f\x2b\xbc\xa3\x3f\x82\xcb\xac\x00\x52\x03\x83\xb0\xdf\x4c\x60\xab\xb9\xee\x8c\xc7\x40\xd3\xc3\xcd\x3a\x6d\xb5\xf4\x3a\xe8\xb4\x22\x1b\x7a\xfe\x54\x53\x5a\x48\xab\x47\x78\x72\x0a\x86\x94\x89\xea\x05\xb5\x7b\x4e\x6f\x97\xef\x82\xca\x6a\x92\xa5\x6f\x69\x7b\xcc\x2c\x30\x9a\x76\xa1\x5a\x1a\x6f\x32\xc6\xc7\x42\xdb\x20\x07\xe3\xc0\xf3\x41\x10\xcd\xc4\xce\xc7\x75\x12\x5c\x8d\xd3\x18\x5a\xeb\x68\x65\x25\x2b\xf6\xc7\x15\x08\x91\x85\x22\x8b\xd5\x8f\xec\x61\xa7\xcf\x5f\x5b\xc4\xdb\xf0\x83\x29\x74\x4e\xb3\xfb\x12\x85\x69\x90\x04\x11\xca\xe9\xe5\xdc\x3b\xd1\xa0\xf0\xc2\x41\xe7\xe7\x09\x6d\x47\x3a\x13\xd2\x87\x72\x53\x81\xf9\x62\xd9\xd0\xf0\x19\xe1\x28\x58\xad\x74\x62\xbc\x10\x05\x17\x9e\x3a\xd9\xf9\x7a\xa0\x71\x7f\x19\xf7\x11\x1b\xc4\xe6\x03\x40\x9b\x35\x90\x67\x46\x6e\x4a\x38\xf6\xb3\x54\x89\x7d\xe6\x8a\xb9\x2f\x79\xab\x47\xa9\xf3\xbe\xec\xa8\xcc\x19\x1e\x1c\x5c\x82\xae\xfd\x95\x60\xa1\x5a\xc7\x60\xe6\x67\xb5\x91\x83\x66\x57\xb4\x1d\xba\x02\xb3\x9e\x32\xe6\xf7\x92\xfc\x60\x4b\x1f\x11\x5e\x09\xea\x2f\x63\xea\x3c\x96\xf2\x06\x28\x06\xee\xc5\x80\xfb\xb9\x88\x17\x8b\xbb\xcc\xf8\xb9\x41\x7c\x6e\xb5\xcd\x26\xd4\xf6\xd1\xc6\x78\x22\x51\x11\x24\x3b\x1c\x7d\x77\xab\x96\x94\xf5\xef\xc1\xff\xfe\xed\xf5\xb2\xc2\xcc\xcc\xbd\xce\x36\xcd\xf6\x62\x53\xa2\xef\x84\x8d\x16\xa5\x67\x0a\x02\xc8\xb6\x8f\x5a\x86\xc0\xa3\x1a\x38\x09\x15\x42\x23\x5c\xe1\x5a\x08\xcd\x71\x1e\x42\xf3\x97\x6b\x0a\x11\xd9\x30\x28\x8d\x3c\x1a\xb6\xac\xe4\xa6\x18\x3e\x2d\x92\xdf\x36\xc0\xa1\x95\xe0\xbf\x74\x50\xba\xda\x08\x1c\x49\xd2\xac\xd8\xb0\x98\xa2\x52\x17\xd8\x23\x1f\xa2\x4f\x25\xa0\x18\xd7\x84\x12\x12\xad\x45\x16\xf5\xc1\xee\xa8\x31\x7a\xd5\xca\x21\x1c\x80\x1b\xec\x48\xb2\x50\x0d\x4c\x43\x31\x1c\xc5\xae\x83\x8a\x91\xdb\x39\xc9\x1a\x94\x1d\x06\x48\x69\x80\x96\x29\xc7\x35\x64\x51\x20\x86\xa3\x4b\x16\x81\x57\x7f\x78\x15\x9c\xb0\x34\xe5\xb9\x6a\x9c\x47\xc0\x8e\x9e\x70\xb1\xe8\x68\xe2\x64\xa9\x47\xb2\xb2\xd5\x9e\x06\xc6\x9a\xbe\xae\x47\xb1\x52\x43\xc0\x30\x81\x78\x23\x81\x02\x1f\xab\xa9\xe4\x85\x4f\xc0\x11\x22\x6a\x86\xe6\xb3\x63\x41\x4e\x6b\xbb\x6e\xcb\x84\xf6\x75\xa8\x03\xdd\x1e\x4e\x1c\xdb\x49\x1b\xb8\xf7\x34\x27\x48\x96\x35\xf6\xd0\xac\xb1\xaf\xc8\x36\x5a\xdc\x62\x83\xca\x1f\xe8\x2a\x7f\xd0\xaa\xf2\x07\x5b\xa9\xbc\x8c\x64\xcd\x34\x43\x01\x7e\x1f\x52\x4b\xa9\xa6\xce\x32\x22\x5a\x69\x1f\xbe\xb4\x5b\xab\x89\x45\x90\xea\xa2\x26\x8a\x6f\x4c\x04\xae\x6c\xaf\x3e\xf4\x31\xb7\xc4\xf1\xce\x74\xe9\xc3\x2b\xb1\xc0\x95\xfd\xc8\x64\xfb\x31\x97\x46\x0d\x76\x15\x9e\xdc\xb7\x9e\x90\xcb\xcd\x1e\xf3\x51\xa1\xe5\xc8\x56\x02\xcf\x3e\xd1\x20\x33\x4d\xd0\xd9\xe9\x0a\xcd\xad\x37\xec\x68\xae\x65\xdb\x37\x04\xbb\x55\x76\x01\x8a\xa2\xe0\x1c\xb4\x3c\x38\x79\x04\xc3\x61\x2b\x84\x75\x5e\xa7\x24\xe7\x64\x2a\xbd\xb0\x8c\xad\x03\x5c\x5f\x21\x0e\xb1\xac\xbe\xf6\xb3\x28\x4c\xff\x66\xf2\xdb\x33\x2a\xc0\xd9\xb2\xdb\xb4\x72\xad\x14\x05\xca\xb0\xa5\xc2\x2e\x64\x31\xb5\x75\x4f\xc6\xee\x46\x50\x20\xbd\xea\xcf\x62\x2e\x62\x4a\x52\xad\x98\xa3\xeb\x25\xcc\xf7\x24\x31\x2f\xa7\xdd\x4c\xa5\x62\xa2\x52\x2b\xe4\x63\xb8\x63\x1c\xd1\x77\x12\xec\x58\xb8\xae\x0f\x9b\x21\x52\xe9\x9a\x3a\x22\xe1\x9a\xa9\x20\x3e\x91\xc5\xa7\x86\xea\xaa\x66\xb6\x05\x7e\x92\x76\xb7\x68\x2a\xaf\x80\x2f\x4e\x83\x22\xbd\xd4\x68\x80\xf3\x2d\x7b\xb9\x58\xe2\xc3\xbd\x8b\x46\x11\xfb\xef\x80\xa7\x63\xdb\xfa\x8e\x5b\xc3\xbc\xd0\x6c\xe7\xcd\xed\xc0\x7b\x85\x76\xe7\x36\xdb\x93\x91\x85\x59\xfe\xef\x6d\x64\xe1\x89\x63\x31\x25\xcb\x22\xb0\xd6\x06\x60\x72\xf9\xbf\xdf\x60\xe0\x46\x0b\x68\xa1\xc8\x92\x4f\x09\xa3\xad\x25\xd3\x53\x45\xae\x3c\xe3\x09\x6a\x38\xa8\xe7\x91\xb7\x6e\x3b\xa4\xcb\xbb\x39\xa2\x57\x73\x18\x43\x3a\xae\x16\x49\x6a\xe6\x87\x33\x0b\xcd\x01\xb2\xe8\x6e\xe8\x58\x51\x4c\x0c\x9a\x0b\xb0\xb6\xc2\x08\x59\x73\x70\x09\x2d\xe0\xba\x30\x49\xf0\x10\x62\xa1\xc7\x42\x73\xa8\x96\x8a\x5f\x00\x31\x64\x65\xe0\x22\xa7\x51\x3c\x6c\x39\x71\x3e\x91\xaa\x7a\x51\xf8\xef\xbf\xe2\xda\xc1\x05\xfe\xfe\x39\xb4\x40\xb8\x56\xbe\x6e\x54\x65\xb5\xba\x10\x15\x55\xee\x4e\xcc\x3f\x6a\x4b\x4b\xda\x4e\xc1\xc0\xb7\x85\x93\xd0\x8b\xdc\x64\x10\xf8\xaa\xbf\x56\x8b\x01\xb0\xcb\x1d\xce\x87\xe5\xfe\xe6\x04\xba\xab\xd8\x47\x6b\x62\x16\x50\x0c\x36\x19\x37\x73\x33\x0f\xf3\x0b\x06\x8f\x07\x94\x18\x3c\x54\xc6\xb5\x74\x8c\x2a\x86\x50\xdf\x6b\x01\x04\x71\xb8\x9d\x6e\x3b\x7d\xff\x2a\xd3\x75\xd9\x1e\x23\x0e\xfb\x6e\xba\xed\x03\x04\x1e\x59\xb5\xa7\xef\x5f\x59\x2f\x22\xb7\x55\x57\xd5\x98\xed\x35\x24\x07\xa3\x07\xf3\x8f\x1d\x19\x85\xc6\xe4\x1e\xaa\x6d\x3c\xdf\x77\x0e\x9c\xc3\x5a\x36\xa1\xad\xc3\x0c\x85\xf8\x4a\x83\x4e\x84\x01\x9e\xc4\xa4\x10\x2b\xbc\x14\x77\xc2\xe0\x88\x2c\xe8\x85\x06\xb2\x10\xf3\x3c\x2d\xe5\xbd\x20\x9c\xc9\x9b\x67\x1c\x9b\xb0\x38\x51\xc3\xfd\x80\xbe\xc4\x2d\x39\xc2\xb2\x13\xa3\x1f\xd7\xdc\xd8\x1f\xc0\x06\x18\x47\x8d\xad\xbd\xc0\x72\xaf\x49\x3c\x58\x51\x5a\x32\x8f\xae\x6e\xdb\x70\x1f\xfc\xe7\xfd\xcf\x3f\xc3\xf5\x6f\x86\x86\x7b\xe6\x55\xa9\x0b\xd3\x7d\x52\x1b\xa6\x6b\x60\x9a\x27\x30\x37\x73\xdb\x7c\x3e\xce\x75\xaf\xda\x44\xaf\x06\xbc\x76\x68\xa9\xcf\x5f\xf6\xbd\x3b\x6f\xc0\x67\x90\xc3\xad\x59\xf0\x6f\xc2\x86\xff\x60\xc5\xd7\x58\xf1\xf7\xa4\xb6\xd6\x0e\xbf\xd6\xdb\x1e\xeb\x2a\xd6\x26\xfa\x4f\x0c\x81\xe7\xc6\xab\xc5\x79\x03\x19\x94\x0b\x42\x51\x39\x80\x35\x23\x6e\xed\x69\xc4\x27\xba\x16\xc8\xe6\xe3\xb9\x43\x02\x84\x57\x25\xca\x1c\x6e\xf7\x34\x08\x2c\xd5\x14\x59\x06\x42\xdc\xaa\x3d\xf2\xb6\x4d\xb2\xdc\x76\xc5\x90\x5c\x0d\xf0\xd6\x7a\x63\x12\xb5\xa7\x49\xc6\x24\xf1\xb1\x82\x6f\x74\xd5\xa1\x21\xb8\x6c\x68\x1a\x44\xe0\x7c\x80\xdf\xd6\x98\xc0\xf2\x8c\x21\x0a\x65\x55\xba\x36\x29\xe6\xd2\xb1\xe7\x31\x9c\x12\x11\x89\x3b\xbd\x9c\x33\xfb\x1f\x04\xc3\x18\x58\x7e\x38\x8d\xec\xea\x79\x3b\xc4\xe2\x88\x7c\x25\xcf\x49\x52\xfb\x55\xd9\x93\x93\xb5\x2f\x94\xd2\x9f\x18\x36\x51\x50\x9d\x58\x31\x07\xce\x1a\xb5\x92\x7e\x76\x10\xcb\x90\x59\xd3\x66\xea\xde\x9d\xc8\x98\xc4\xba\x8d\xf8\xd1\x0f\x3d\x3f\x9c\xd5\x6c\xc2\x39\x7d\xab\x59\x1b\xb4\x2f\xe7\x99\x97\xb6\xba\x70\xda\xd9\xd5\x4d\xc2\xb8\x9e\x68\x87\x22\xbb\x39\xb4\xe5\x6e\x78\xaa\xa2\x45\x9a\x70\x37\xe8\x90\x64\x0d\xd4\xb8\x2a\x5d\xf1\x86\xf4\xc4\x52\xed\x10\x2f\x80\x01\x8a\xb0\xbc\x9b\x0c\xd8\x6a\x60\xda\x1f\x05\x67\x11\x0d\x31\x65\x17\x58\x2c\x81\x8b\xb2\xe4\x02\x5a\x6e\x04\x49\x79\xec\x40\xd3\x23\xcb\xa4\x2b\x88\x16\x2e\xec\xc6\xf2\xc7\x18\x28\x7d\x3f\xbe\xfa\xf3\x9f\x1f\x7f\xdd\x39\x2a\x53\xfa\xaa\x15\xbc\x74\x48\x26\x8d\x82\x31\xd5\xc0\xa9\x5d\x7a\x20\x26\x02\xfd\xa5\x0b\x9b\xd3\x9f\xfd\x8a\xc7\x5b\x5e\xde\xb2\xa4\x4e\xaf\x6b\xf6\x34\xbb\x0a\xac\xdc\x30\xc8\xb2\x83\x09\x28\x5f\xe9\x76\x32\xaa\x07\xc0\x2d\x4f\xc7\xe3\x9d\xa7\x4f\x67\xff\x3a\xde\xad\x61\x83\x48\xc4\x88\xd6\x9f\xa6\xc6\xbe\xd1\x9a\xf6\x08\x0d\xdb\x56\xd6\x1c\xa1\x74\xfb\xce\x34\x8a\x07\xa5\x06\x8a\xa3\x07\x03\x85\x91\xd2\x78\x73\xaa\xfc\x9d\x50\xd7\x8f\x9b\x6b\xeb\x4d\x36\xdf\x72\x17\xe1\x7e\x57\x2e\xc2\x22\x0f\x25\x1d\x69\x45\x48\xb6\x40\x10\x44\x57\x16\x08\x2d\xbc\x21\x01\x14\xc5\x16\x8a\x2c\xf8\x79\x19\xc3\x24\xb1\x80\x95\xac\x13\x04\x17\x00\xf9\xae\x75\x05\xd6\x56\x34\xb5\xc0\x0a\x45\xe4\x02\x08\x82\xb5\x15\xf8\xe1\x05\x29\x2c\x22\x85\x85\x9e\xc5\xb8\x4c\x2d\xdf\x83\x21\x5e\x34\x90\xb8\xe8\x42\x78\x15\xac\x2d\x8a\xf6\xf6\x68\xcc\x44\x62\x5d\xf9\x68\x1e\xad\x50\xfa\x69\x3f\x44\x30\xbe\xa4\xb9\xa7\x86\x72\xe8\x96\x3e\x9a\x4b\xdf\xbe\x8f\x2b\xe2\x18\x9c\xae\x02\xe2\x3b\xc2\xa5\xd1\x38\x48\xf2\x3d\xdc\x54\xc9\xa5\x64\x51\x2a\x12\xd2\x54\x88\x70\xfb\x50\xbc\x4a\x70\x1d\x59\xfd\xd7\x16\x40\x28\xf6\xcf\x57\x08\x26\x96\x1b\xc5\x31\x4c\x96\x11\xed\x40\x14\x09\x3f\x29\xfb\x88\xf4\xda\xd0\xfa\x34\x8f\x12\x28\xbf\x0d\x62\x48\x3d\xb2\xd0\xb3\xc0\x0c\xf8\x61\x82\x70\xf7\x5b\x3c\x79\x23\xf4\xac\x73\x65\x6c\xa6\x78\x34\xe6\x00\x29\x15\x26\x21\x28\x08\xc6\x0b\x3f\x84\xd6\x15\xbe\xbb\x8c\xfd\x4b\x3f\x80\x33\xda\xd3\xb3\x98\x04\xaa\xcc\xa1\x45\x79\xc2\xd3\x20\x15\xcb\x47\xd6\x95\x1f\x04\xd6\x2a\x40\xfe\x02\x20\x28\x46\xc4\xa0\xaf\xe7\xb1\xad\x09\xb8\x4d\x27\x74\x86\x9c\x21\xf3\x77\x8e\xa9\xb1\x19\x27\xa1\x46\x62\xe1\xe7\x40\x0e\x02\xc3\x77\xaa\x3c\xe0\x29\x63\x88\x29\x68\x98\x5e\xb3\x30\xb7\x8f\xda\x45\xc0\x96\x2d\x98\xf3\x5a\x9a\xa2\x14\x6c\xca\xdb\x48\x9d\x85\x5b\xb5\xa1\x35\xc1\x61\x94\xaf\xfe\x7b\xb8\xc3\x6d\xdd\x52\xd9\x10\x6d\xa0\xf3\x97\x57\xa3\x0c\x2a\xdc\xe4\xbb\x66\x6e\xf2\x8c\x59\xa5\x53\x17\xb9\x27\x43\x0c\x4a\xcc\xa3\x4d\xc6\xa3\x55\xcc\x56\xa5\xfe\x94\x8f\x13\xbb\x6d\x17\x35\x75\x40\xeb\x23\xbc\x52\x37\x75\xa1\x83\xba\x23\xf3\x82\x3a\x5d\xba\xd5\xef\x14\x23\xe5\x2d\xab\x77\xc9\xd5\x71\xf4\xf3\xdb\x5f\xfe\x51\xae\xde\x35\xd5\xe6\x8c\xf3\x95\x64\xc5\x58\xbd\x79\xa0\x96\xd7\xab\x91\x10\x9d\x97\x39\xa8\x24\x2f\x6c\xd9\x8c\x03\xe2\x26\xa4\xea\x53\x2e\x3f\xd2\x43\x87\x88\x6d\x2e\x08\x2d\x92\x83\x22\x0a\xac\xab\xb9\xef\xce\xad\x50\x58\xd9\xd9\x01\xc1\xcf\x8b\x4b\x1f\xd0\x90\x62\x59\xd4\x23\xc2\xda\x39\x14\x0f\xe1\xd3\xc4\x0f\x87\xd6\x2f\x61\xe0\x5f\x40\xf5\x98\x76\xc8\xd6\x36\xf5\xe3\x04\xa5\xb0\xbf\x50\x31\xea\x5b\x57\x7e\x98\x54\x88\x7a\x7a\x21\x8b\xad\x81\x62\x98\xb1\xa6\xd7\xdb\x11\x16\xdf\x63\xe9\x29\xcc\x78\x52\xee\x9f\xfc\x74\xdf\xe6\xf2\x83\x00\x55\x8e\x33\xfc\x3f\xa2\xef\x1e\xc4\xa9\xbc\x24\xd4\x81\xfc\xa3\x97\x74\xba\x12\x6e\x64\x09\xa4\x8d\x6c\x03\x3d\x1f\xdd\xb6\x04\xf3\xd3\xef\xef\xdf\xad\xdf\xbe\xf8\xb3\x5c\x82\x31\xe4\x0b\x64\x78\x29\x46\x1c\x28\x20\x75\x9c\x08\xca\x08\x56\xe7\x28\x88\x8a\x03\x39\xe7\x00\x0f\x7a\x3c\x9c\x38\xf6\x5b\x78\x65\x9d\x3e\x7f\x6d\x3b\xf6\x4b\xcf\x47\xe4\xcf\x7a\xc6\xdb\x6e\xc0\x3d\x06\x7b\x55\x18\x21\x99\xf9\xab\xfe\x51\x29\x21\xc6\xe4\xb2\x92\xd4\x58\xcf\xbb\x5d\x84\x5e\xf1\x1e\x57\x72\x3a\xd0\x7f\x9e\x1a\x1a\x7e\x8f\x9c\x27\xce\xb1\xf3\xb4\xe1\x31\x78\x97\xe0\x4c\x47\x12\x60\xa0\x00\xc1\xf4\x89\x1c\x98\xf6\x7d\xc3\x2e\x95\xa0\x97\xec\x1c\xfd\xd9\xae\x04\x4d\x6a\x13\xe5\x62\x33\x88\x40\xa6\xc4\x86\x88\x45\xfa\x1f\x5e\xcd\x44\x68\x31\x8e\x11\xb9\x4b\xe2\x45\xb6\xaf\x65\x2a\xc8\x43\x99\x0a\xb2\x2e\x45\xa5\xd8\x00\x96\xeb\x01\xa3\x03\xd2\xb3\x81\x72\x2f\x35\x27\x87\x73\x68\xce\x05\x8b\xfe\xa8\x1f\xd1\xf2\x3c\x5a\xae\x2d\x5e\x44\x9d\xb0\x01\x7d\x57\x10\xc6\x44\x6f\x45\xb3\x1f\x14\x50\x49\xed\x36\xe1\x09\xb3\x0a\x79\xb4\xb2\xec\x49\x5c\x1d\x25\x44\x5a\x41\x14\x32\xd6\x24\x0d\x5d\xd2\x73\x7c\xd7\x12\x19\x52\x0a\xf7\x82\x2e\xb8\xab\x56\x49\x27\xc4\x55\x35\x26\x75\xd3\x08\xa7\x46\x3d\x4d\xc3\x75\x49\x6e\x9a\xc2\xee\xfe\x25\xa9\xea\x6c\xfd\xb4\x3b\x6c\x17\xf0\xd5\x9c\xa4\x4a\xea\x8d\x52\xa5\x2d\xf7\x34\x0f\xf7\xae\x88\x68\x2a\x63\x8b\xd5\x8e\x81\x29\x81\x58\x66\x60\xf6\x34\x53\x9f\xce\x67\xeb\x97\xa4\x8c\x2e\xcc\xa0\x2a\x29\x1f\x97\x51\x55\xf6\x0d\xd9\xec\xaa\xe6\x44\x9a\xc4\xa6\x76\xbc\x53\xc1\xed\x3b\x1e\x89\xcf\x86\xe1\xa9\x63\x73\x9d\x82\x71\x8f\x8f\xb6\x8f\xb9\xcb\x23\xe2\x50\xbc\x52\x74\xb1\x2c\x4f\x99\x84\x82\x93\xd5\x32\x41\x39\x96\x02\xe8\xc2\xa8\x89\xa6\x86\xf5\xa9\x36\xfa\xd8\x9d\xa0\x1b\x7b\xfa\xaf\x1f\xe1\xef\x6f\xc2\x7f\x95\x2b\x64\x26\x2c\x63\xdb\xd1\xc7\x9e\x4e\x1c\xfb\xf4\xf9\xeb\x06\xc2\xd1\x28\x9b\xba\xd4\x80\x51\x49\x30\xa4\x1e\x4c\x28\x6b\x7a\x6d\x2e\x25\x43\x86\x9e\x2c\x39\x8f\x5c\x3f\x12\x72\x57\xbb\xee\x82\x13\x76\x64\x40\xcb\x53\x93\x76\xa8\x2e\x27\x8f\x68\x9c\xc4\xfe\x53\x57\xc7\xdd\x7e\x10\x4c\x73\x4d\xf9\x46\x75\xe5\xce\xb5\xe5\xad\x05\xae\x58\x44\xae\xa4\xca\xad\x78\x5e\x22\x85\x1e\x65\x22\x18\xf6\x9c\x03\x19\xf2\xa4\xa0\xbc\x2d\x14\x21\x50\x74\x20\x97\x5d\xce\xd0\x67\xdb\x53\x82\x5e\x63\xe4\x41\x03\x14\xcd\x66\x74\x73\xd1\x73\xc7\xdf\xba\x4a\x97\x8d\x54\x29\x26\x9c\xae\x47\x53\x54\x62\x51\xde\x97\x23\x1c\xd8\xe9\x28\x47\x9d\x48\x24\xe4\xe2\x6e\x2a\x38\xa5\x57\xcc\x19\xba\xbb\xeb\xe7\xc6\xa4\x50\x47\x39\xd5\x39\x33\x1b\x1b\x93\x42\xe9\x36\x87\xbb\x47\x07\x25\x32\xce\x7e\xeb\x74\x50\x34\x1b\x00\x75\x61\x2a\x34\x50\xfb\x0a\x0d\xd4\x41\x1b\x1a\xa8\xc3\x2d\xd2\x40\xb9\x81\x8e\xfe\x89\x4c\x2b\xce\xd7\x8c\xff\x26\x3a\x31\x49\xc0\x4b\xac\x11\x93\x94\x95\x86\xd3\x43\x39\x0a\x51\xab\xd0\xee\x54\x29\xe1\x98\x85\x9b\xe9\x6f\xf0\xb2\xeb\x19\xc6\x8d\x95\xa6\x46\x0f\xca\x63\xf0\x40\x58\xd5\x05\x61\x55\x9b\xad\xb3\x09\xbd\x11\x16\xff\x3b\x27\xaa\x7a\xfe\xfa\x1b\x26\xa8\xba\x95\x11\xec\x8c\x98\x8a\x94\x76\xe3\x84\x54\xf4\xab\x10\x19\x55\x93\x3f\x7c\x5b\x24\x54\xdb\xa7\xe5\xd1\xd9\x43\xdb\x3b\xf4\xf5\x6e\xfa\xc2\x5c\xd1\x9d\xb0\xe9\xa4\x66\xa0\x29\x49\x6c\x34\x08\x57\x8b\x73\x18\xab\x06\xa4\x19\xca\xe7\x77\x96\x8d\x4a\xfc\xd4\xe5\x74\x39\x8c\x4f\x87\x81\x1d\xbb\x60\xcf\x29\x23\xcc\x31\x32\x37\x2d\xa3\xc0\x77\x7d\x78\x47\x12\x06\xee\x1f\x7e\xfa\x74\xb4\x77\x58\x00\x04\x28\x07\x00\x04\x51\x22\x03\x01\xcc\x33\x06\xb2\x8d\x97\xf4\xc4\x9a\x77\x03\xdd\x79\xe9\x0f\xfb\x99\x1c\x1d\xf6\x4c\x84\x87\x49\x11\x05\x07\x8c\x95\xfa\x80\x5a\x57\xf0\xbf\x23\xfa\x6f\x2d\xfc\xa4\x8a\x73\x2b\x55\x71\x58\xbf\xd9\xba\x80\x4b\x43\xef\x98\xcc\x79\x20\xd3\x86\x37\x50\x71\x64\xf1\x9b\xb3\x44\x49\x51\x7c\x54\xc6\xcc\x5b\xd6\xf6\xab\x43\xfa\x28\x8c\x8c\xc4\xf2\xd1\x11\xda\xf9\xcb\xb5\xef\x49\x41\x7c\x23\x93\x20\x3e\xdf\xe3\x2e\x3e\x3a\x3e\xdc\x22\x76\x48\x59\x8e\x32\x59\x68\x9e\xca\x19\x90\x26\x39\xa3\xd8\xae\x46\xdb\xe2\xfc\xde\x7b\x05\xea\x16\x8f\x23\xcb\x2b\x56\xba\xd1\x10\xa5\x75\xa0\x7b\xb2\xa1\x21\xfd\xa8\x82\x35\x5d\xb0\xe4\x73\x3a\x55\x7d\x4e\x97\xcb\xc0\x27\xb1\x0a\x14\x6f\x17\x05\x41\x74\x45\x03\x9b\xf0\x40\x9c\xd0\xe4\x69\xf9\x7c\x26\x8d\x7c\x17\xf6\xa4\x3a\x03\x97\x32\x4b\x8f\xd3\x59\xaa\x42\x2b\x98\x41\x04\x71\x0c\x45\x79\x54\x51\xa7\x39\xb8\xe4\x0a\xf2\xfa\xed\x6b\x73\x70\xed\x17\xe5\xe0\x7a\x22\xbd\xd6\x41\x0e\xae\x5d\xd9\xcf\x2c\xe5\xe0\xd2\xb8\xb8\xda\xe5\xe0\x3a\xcc\x98\x9a\x59\x0e\x2e\xba\x50\xed\x9c\x7b\x7d\x7f\x9b\x69\xb8\x0e\x95\xae\x6f\x94\x86\x4b\xee\x37\x39\x0d\x57\xf3\x7e\xeb\x32\x0d\x97\x32\xaa\x52\x1a\x2e\x53\xc7\x65\xe9\x92\x2a\x3c\x05\x32\x08\x26\x9a\xe7\xca\x60\x80\xef\x44\x2a\x2e\x9a\x4c\xf3\x2b\xcc\xc3\xb5\x9b\xc7\x37\xc8\x79\xb8\x34\x53\xa2\x41\x02\xae\x62\x74\x83\x41\xe7\xd4\xc3\x36\x74\x73\x0c\xd6\x04\x90\x1d\x3b\xf6\x22\xf2\x40\x90\x9d\x66\xc4\x1c\x46\x2d\x63\x20\xf6\x81\x2c\xb1\xec\x16\xc2\x17\xf2\xd2\x88\x70\x38\xf0\x9c\xae\x7e\x48\x41\x0d\x0d\xad\x3c\x86\x1d\xdf\xce\xd2\x23\xcd\xcd\x9c\xbd\x27\xd3\x8c\x4a\x6c\x46\x0d\xe3\x87\x61\xdb\xda\x18\x40\xac\xda\x80\x99\x4f\xe9\x16\x62\xf9\x89\xe5\xae\xe2\x18\x86\x28\x20\x3d\xb0\x4a\xe0\xd0\x7a\x35\x25\x3b\x8f\x3b\x8f\x22\x02\x20\xd2\xec\x3d\x8e\x88\xaf\x3e\x87\x56\x0c\x17\xd1\x25\xf4\xac\x69\x1c\x2d\x32\xd2\x15\xaf\x59\x82\xe2\x28\x9c\x29\xce\xb1\xcc\xfc\x67\x67\x47\x06\x2d\xba\xe7\xd8\x27\x65\x8d\xae\x4e\xff\xac\x97\x11\x85\xe1\x98\x81\xfe\x99\xb6\xb3\x37\x49\xd1\xff\x85\x09\x04\x5a\xf5\x3b\xdd\x5c\x2d\x17\x84\x61\x84\x70\xe7\xad\x42\x2f\x0a\xe1\x50\x82\x31\xed\x97\xcd\x26\x23\x20\x53\xf7\x33\xb4\x25\x87\xb7\xd5\xf1\xc1\xa0\x49\xd1\xf9\x3b\x4c\x1c\xab\xf2\x34\x30\xaa\x4c\x15\xc2\x2a\x53\x99\x83\x46\x08\x2b\xfd\x48\x15\x27\x87\x6c\x84\xb2\x32\xb1\x05\xda\x37\x93\x18\xd2\xd4\x32\xa8\x01\x43\xdd\x4e\xd2\xc8\x0a\x0b\x5b\x6a\x52\xa3\x66\x2f\x85\x5e\x48\x8e\x92\xc9\x26\x8f\xf4\x3d\x41\xc1\xc3\x75\x79\x59\xc1\xa7\xb1\xc2\xd4\x6c\xc7\xec\x34\x02\xc4\x45\x53\x4d\x36\xcb\x1e\xa9\x5a\xc4\x3a\xb1\xad\xdd\x85\x18\x9b\x68\x3f\x0a\x92\xbf\xad\x9e\x1a\x92\x40\x91\x7e\xd7\xda\x53\xd8\xb8\x89\xbe\x16\xaf\x84\x11\xf2\x69\x9e\xb7\x0e\x10\x5f\xdc\xaa\x56\xc3\xc3\x6a\x1b\x33\x49\x1d\x55\x9b\x9d\xf4\xb6\xa6\xc3\x3a\xb6\xa6\xae\xe9\xa2\x54\x90\x4c\x9e\x3a\x4a\x67\xb3\x32\xec\x3c\xf3\x40\xa2\x86\x2c\xd7\xc7\x59\xab\xdf\x03\xcb\xf5\xd7\xc7\x72\x7d\xa8\x9b\x9a\x05\x64\x67\x75\x56\x83\xc4\xc3\xa5\xfe\x76\x6c\x3f\x79\x0b\xaf\x3a\x60\xd3\xbe\xed\x4c\x7e\xdd\xa1\x0e\xd9\xc6\xa5\x07\x1e\x0a\x18\x8c\x00\x20\xb2\xbd\x59\x05\x20\x8e\x98\x70\x32\xe2\x52\x24\xc3\x05\x8d\xcc\xc9\x9e\x47\xbb\xce\x68\xe4\x8c\xc8\x3b\xf7\x3f\x7a\x6f\xa4\x90\x05\xf3\x73\xbd\x20\x8e\xef\x7d\x7a\xfb\x2b\x8c\xe4\xe3\xe4\x78\x4f\xda\xd8\x5f\x6c\xc3\xfc\x92\x6f\xe1\x15\xd3\xa3\x73\x6a\x66\x0d\x2b\xb5\x7c\xf8\x3c\xad\xb2\x52\xef\x91\x54\xd7\x37\xd1\x38\x12\x33\xdc\xa6\x75\x0d\xbf\xfb\xab\x5f\xaf\x57\x8d\x6c\xd8\x5b\x9e\xd0\x35\x51\x81\x05\x82\xc7\x28\x33\x77\x1b\x63\x66\x15\x52\x1a\x22\xb7\x93\xb3\x6c\x80\xb0\x90\x51\xb2\xe5\x88\xf7\xcd\xf6\x25\x0f\x69\xcc\x6f\xaf\x5e\x94\xaa\xcb\xe2\x5d\xaf\xc2\xd6\x62\x9b\xc6\x75\x3a\xf6\xb3\x65\x94\xf8\x9c\xc8\x81\xe7\x79\x64\x31\x9e\x69\xad\x1c\x1b\x45\xcb\x41\x82\x40\x8c\xd4\x79\x25\x99\x6c\xc4\x8b\x65\xb5\x2f\xb2\x4f\x9b\xa0\xbe\x0b\x27\x5c\xa1\x1c\xaa\x04\x45\x90\xd5\xcf\xfd\x6d\x0c\x11\xb0\x00\x21\x98\x91\xe9\xd0\x42\x2c\x65\xbd\xcd\x75\xa4\x33\x66\x46\xd1\x7c\x42\x3a\xa9\xa9\x64\xc0\xfc\x87\x35\xc5\x0d\x12\x3a\xe0\x9c\xd9\x3f\xa5\x47\x41\x33\x78\xa3\x38\x13\xf6\xe5\x09\xf5\x46\xee\x94\x56\xeb\x9e\x57\xf4\x47\x6e\xdb\x6d\x57\xcd\x62\x13\x23\x31\x2b\xce\x82\xe8\x1c\x04\x52\x87\x73\x16\xcc\xc4\x3a\x5f\xf9\x01\xb2\xfc\x10\x45\x8c\x24\xf3\xdf\x7f\x4d\xd8\x21\xc1\xf8\x00\x87\xd6\xef\xd1\x8a\x90\xde\x80\xe5\x32\x58\x53\x3b\x6f\xb2\x84\xae\x0f\x02\xfe\x24\x8a\x38\xf3\xcd\x34\x8a\xad\xe9\x2a\x08\x18\x0c\x6c\x48\x2b\xb0\x14\xf6\xe4\x30\x42\x16\xf4\x7c\xb2\x67\x58\x51\xcc\xac\xc3\xf8\x97\x63\x9d\xaf\x28\xb9\xce\x39\xb4\xfc\x59\x18\x11\x16\x50\x0a\x2c\x23\x5f\xf6\xc3\x99\xe5\x13\x6f\x17\x08\x59\x8c\x74\x32\xb4\x5e\x43\x10\x87\xd6\x22\x8a\xa1\xe5\x87\x56\xb4\x8a\x6b\xb3\xc6\xa8\x8c\x31\xb3\x95\xef\xc1\x04\xeb\x4f\x24\x27\xdd\xff\x21\x1d\xe4\x87\x83\x54\xfe\x61\x81\x00\x5a\x46\x98\x4a\x26\x19\x36\x46\x85\x4c\x31\x5d\x10\xf9\xe4\x1f\xc9\x87\xc7\x34\xdf\xd4\x2b\xb7\x73\xfd\x46\xce\xe9\xd5\x4a\x82\x55\xa4\xdd\x3b\xdd\x38\x53\x9a\x83\xb2\x37\x95\x4f\xfd\x0a\x02\xdf\xb3\x5e\x00\x04\x5c\x18\x92\x1e\xa8\xf5\x5d\x29\x72\xde\xb1\x6c\x27\x4b\xab\x76\x94\xa3\x6f\x35\xaf\xd9\x0b\x98\xb8\xb1\xbf\xac\xa2\x07\x2a\xea\x0b\xe5\x75\xed\x87\x35\xa5\x16\x5c\x2a\x01\x2e\xd5\x33\x1a\x55\x62\x95\x6a\xda\x8f\x0e\x84\x77\x57\x18\x8e\x55\xc7\xe8\x7e\x1b\xa3\x8f\x5e\x48\xe2\xc8\xdf\xe3\x54\xc9\xbe\x83\x08\x24\xa9\x7e\x5d\x58\x4a\x8e\x5b\x39\x08\xc8\xb4\x92\xc2\x9f\x85\xdd\x97\xc7\x41\x3b\x04\xac\xea\xe0\xfd\xf7\x89\xb9\xd5\x7d\x1b\xf1\xd2\x69\x35\x6e\x3e\x57\x49\x36\x32\x9b\xb2\x64\xb1\x85\xe2\x49\x5b\x94\x63\xff\x27\x22\xc6\x16\xe2\x01\x20\xc6\x34\x85\x1f\x34\xeb\x32\x50\x43\xb6\x45\x91\x58\x84\x8a\xa6\xdc\xa5\xd0\x9e\x83\x4b\x31\xe7\x77\xe2\x17\xb8\x13\xb1\xde\xff\x09\x2e\x9f\xfe\xf9\x64\xf9\xd9\xd0\x31\x70\x73\x41\xdf\xcc\x05\x70\xbc\x0d\x0f\x80\x49\x6e\x4b\x21\xe6\xc8\xa9\x88\xaa\xb6\xef\xee\x2d\xff\x77\xcf\x98\x7f\xa8\xd3\xa9\xb7\x64\xcc\xdf\xbe\x29\xff\xc1\x90\x9f\x1d\xdf\xbd\x5d\xd5\x60\x66\x40\x91\xf0\x94\xe3\x06\x8f\x9b\x52\x24\x1c\x37\xa3\x48\x78\x9a\x61\x48\xa0\xab\x9f\x9e\x24\xf9\x9c\xc6\x75\xdb\x25\x98\x1f\x9e\x68\xa0\xde\xf8\x62\x0b\xfa\x84\x27\xf5\xe9\x13\x74\xad\x36\xa8\xfc\x91\xae\xf2\x47\xad\x2a\x7f\xb4\x95\xca\x3b\xf2\x2c\xd5\xc1\xab\x53\x2a\x8e\x7d\x7d\x9d\xd3\xf6\xed\xab\xed\xa3\xc8\xff\x3a\x4d\xdc\xaf\xd9\x44\xf1\x0d\xde\xda\x86\xe9\x5e\x1f\x5c\x54\x26\x2e\xaa\xe3\x0c\x47\x06\xf7\x57\x99\xfa\xa7\x08\x53\x06\x7e\xe1\x6e\x91\x65\x98\xda\xf0\x53\x1f\x53\x01\xfa\x6e\xab\xd6\xf8\xc6\x20\xb7\x0a\x7b\xd4\xbe\xce\xcb\xd6\x0d\xf9\x44\xb7\x1d\xd0\x98\x60\x22\x8f\x6e\xa6\x31\xe8\xed\x09\x26\xb4\x4b\x4c\xc3\x30\xa1\x84\xb2\x99\xd3\x4d\x94\x8b\xb4\x5b\x21\xa3\xd8\x97\x38\x16\xbe\x65\x32\x0a\xe6\xa7\x74\x78\x36\x30\x85\x8f\xe2\x40\xe1\xa3\x30\x4e\xbd\xa7\xdb\x71\x8e\xb6\xc7\x47\xc1\xa6\x63\x05\x25\x85\xe4\x5c\xca\xd1\x4f\x1c\xe5\xe9\x27\x8a\x81\xc7\x0d\x88\x20\x8e\x1e\x88\x20\x3a\x22\x82\x68\xb3\xc5\x35\xa1\x11\xe0\xe7\x44\xd7\x64\x10\xfc\x88\xfd\x76\x09\x21\x6e\x6d\x24\x3b\x23\x85\x10\x25\xde\x38\x31\x04\xff\xb2\x51\x55\xd3\x6a\xde\x1e\x39\xc4\x4d\x44\x37\xd8\x93\x26\xa9\x2f\xb2\x6f\x17\x08\x8f\x4f\xca\x9d\x99\x6e\xb4\x58\x80\xd0\x23\xee\xcc\x1d\x0e\xfd\x99\x18\x39\x2a\xcb\x53\x5e\xbc\x90\xfd\x97\x56\x14\x5a\xcb\x2c\xfe\xab\xa4\x33\x2a\x6e\x67\xfa\x2a\x80\x20\x0e\x3b\xef\xac\xd7\x2f\x4f\x3f\xbc\xcd\xf5\x16\x39\xb7\x13\xe8\xae\x62\x1f\xad\x07\x21\x44\x57\x51\x7c\xe1\x87\xb3\x1d\xe2\x3a\xf7\xc3\xd9\x00\xb8\x81\xc6\x15\xdc\x49\xf6\x10\xe2\x79\x6e\xd3\x7f\x77\x8a\x15\xe5\xe8\xe6\x58\x51\x88\x7f\xe7\x2e\xe4\xa1\xaf\xe6\x55\xc9\xa4\x47\x49\x19\x54\xa8\x5f\xa8\x30\x3b\x1c\xf1\xe6\xd0\xe2\x99\x4b\x84\xd8\xe8\xb3\xa6\xbe\x94\x6e\x25\x8c\xd0\x80\xbc\xa4\x58\x06\x39\x27\x4b\x07\x24\x2c\xaa\x3f\xa7\x8d\x67\x88\xa4\x93\xbc\x1b\x54\x2c\x3f\xce\x7e\x79\xf7\xcf\x37\xa3\x17\x1d\x50\xb1\x08\xef\x51\x6d\x4e\x16\xdc\x1f\x7a\x46\x16\x6e\x14\x22\x1e\x73\x89\x92\x45\x52\x4c\x45\x04\x09\xe3\x61\xa1\xb4\x2c\xbb\x2a\x3d\xcb\x48\x17\x80\xa5\x75\x74\x08\x2a\xdd\x06\xb9\x14\xcc\x51\x06\x35\x29\x51\x70\x07\xdd\x1a\x21\x4a\x27\xd6\x8f\xa3\xae\x70\x06\x7a\xd5\xe4\x37\x22\xa3\xf9\x09\xc5\x6a\xe1\xee\xb2\x56\x09\xf4\x7e\xd0\x9c\x1e\x45\x02\x31\xdd\xb0\x7f\x83\xff\xfe\x6b\x0c\xad\x28\x0c\xd6\x16\x41\x6c\xa1\xc8\x4a\xe6\xd1\x95\xe5\x87\x94\x21\x0a\x9f\xfe\x34\x37\x33\xb4\x96\xb1\xbf\x00\xf1\xda\x4a\x77\x1c\x92\x23\x16\xdf\x62\x51\xc4\xd2\x2d\x06\x0c\xc3\xca\xb1\x90\x12\x49\xc9\xf0\x12\xc6\x6b\xcb\x05\x09\x64\x12\x71\xda\x06\x3f\x21\x40\x30\x1f\x7a\xd5\xa9\xfb\x4c\x71\x17\x2c\xa2\xd8\x51\x46\xa5\xae\xfb\xaa\xea\xf4\x33\x0a\x35\xac\xc3\x08\xf3\x24\x5d\x96\x5a\x46\x18\xb2\xa5\x3e\x10\xc2\xdc\x2e\x21\x0c\x1e\x04\xb2\xdf\x3c\xd0\xc1\xdc\x75\x3a\x98\x27\xe5\x67\x9e\x96\x0e\xa6\x72\x78\xef\x04\x19\xcc\x87\x28\x80\x0f\x54\x30\x0f\x54\x30\xb7\x4a\x05\xf3\x81\x9c\xde\xf7\x9c\x08\x46\x69\xc4\xb7\x41\x03\xf3\x81\x49\x5d\x35\x49\x60\xf0\x6b\x0f\x14\x30\x0d\xfb\xfc\x81\x02\xe6\x81\x02\xa6\x64\xa4\xca\x28\x60\x1a\x40\xa3\x1f\x48\x60\xee\x2d\x09\x4c\x97\xf4\x2f\x92\x09\xae\xbd\x25\xef\x2e\x10\xbf\x84\x2b\xf0\xe3\xce\xff\x84\xff\xd3\x39\xf1\x4b\x87\x18\x6f\x63\x92\xe4\x3a\x18\x6f\x83\x80\x1d\x9d\xf9\xec\x81\xe3\xa5\x21\x2c\x7c\x34\xc9\x47\x11\x3d\x50\xbc\x7c\x55\xc8\xf0\x63\xdd\xc4\x7c\x60\x78\xb9\x59\xf8\x2c\xd9\xb4\x5a\x81\x67\x19\x5c\xf6\x38\xc3\xf2\x32\x32\x46\xcf\x52\xec\x2c\x7e\xe3\xfe\x73\xbb\x28\xd4\x2e\x19\x6b\xb1\xc2\xeb\xf2\x81\xdd\xfb\x0a\x49\x5d\xb2\xc4\x18\xad\x2c\x29\x66\xb4\x2e\x1f\xa2\x20\x9f\xbc\xa0\x99\x54\x6e\xfa\x59\x42\xb8\x62\xfc\xdd\xfb\xc2\x70\x22\x1f\xbb\x7b\x93\xfb\x4c\x70\x42\x6c\x2c\x77\x8c\xde\x84\xd7\xe9\x6e\x93\x9b\x94\x04\x23\x53\x45\xa4\x3c\x12\xd9\x70\x26\xdf\xeb\x68\xe3\x14\x78\x42\xf4\x4c\xaa\x22\xca\x20\x93\x7c\x9c\x31\xd1\x42\x9b\x41\x42\x52\xf5\xaf\xbd\x12\x79\x27\xa2\x84\x7f\xff\xf1\xef\x2f\xff\xe7\x5f\xff\x3a\xbc\x73\x51\xc2\xd9\xd4\xd0\xc7\x6c\xd1\xd6\x90\x2c\xcc\x55\x4a\x93\xb0\x61\x2a\x42\x3c\xc4\x0c\x3f\xc4\x0c\x7f\x4b\x9a\xe1\x28\x43\xb2\x67\x10\x33\x2c\xe5\x1a\x69\x18\x33\x6c\x18\x85\x5a\x12\x80\xda\x24\x3e\xf8\x21\x4a\x35\x03\x30\x7a\xd0\xb4\x1f\xc2\x54\xf5\x1a\x97\x38\x88\xef\x4d\x8c\xaa\x5d\x23\x42\x95\x9c\xf4\x0f\xe1\xa9\x0d\xc2\x53\xc9\xc2\xba\x7b\xe9\xcf\x1f\x22\x4e\x29\x12\x94\xe0\xb9\xee\x73\xbc\x29\x99\x5f\x0f\xd1\xa6\x0f\xd1\xa6\x9d\xc7\x28\x92\x3d\xbf\xeb\x50\x53\x72\x4c\xde\xe5\xb8\xbf\xaf\x2b\xce\x94\x8e\x61\x67\x41\xa6\xb4\xb8\x1b\x8f\x30\x25\x9f\x35\xaa\x24\xab\xe0\x43\x6c\xe9\x8d\xc4\x96\x52\x30\xf4\x56\x22\x4b\x63\xc5\x03\x75\xc7\xc3\x4a\x49\x3f\x9d\xbe\x7f\x95\xe9\x2b\xde\x45\x09\xe1\x14\xee\x38\x6e\xf4\xf4\xfd\x2b\xeb\x45\xe4\xb6\xea\xa3\x6f\x20\x74\xd4\x20\x6e\xf4\x21\x6a\x94\x47\x8d\x76\x11\x21\x2a\x19\xf2\xdb\xf8\x03\x58\xe0\xdf\x60\xea\xc3\xc0\x4b\x20\x4a\x06\x01\x9c\x01\xc2\x0d\x73\xab\xce\x81\xd3\x9f\xc2\x5d\x70\xfc\xb7\x2b\xbd\x73\x80\x51\xd9\x97\x47\xed\xf1\x26\xb1\x7d\x45\x13\xd0\xb3\xaf\x1a\xe7\x94\x08\x2b\x16\x66\x44\xfa\x87\xc8\xbc\x4a\x20\xca\xae\x9c\x77\x5d\x17\xfe\x53\xc2\xdc\x2d\x90\xfb\xa3\x43\x67\x97\x6e\x76\x54\xb1\x47\xf0\x33\xca\x56\x8e\x3c\x22\x2c\xda\x22\x6e\xcb\x9a\x83\x64\xc0\xcd\x42\x92\x95\xa0\xdc\x85\x9a\x2c\x41\x28\x6f\x72\x25\xac\xe1\x56\x7a\xc2\xfa\xe1\x72\x85\x8a\x3d\x9d\x60\x85\xa2\x69\xe4\xae\x12\xa1\x45\xe7\xb8\xb4\x1d\x9b\x3d\x2c\x3d\x6b\x66\xc0\x49\x25\x3a\x7c\x8d\x2c\xee\xf6\xfe\x67\xa6\x8c\xda\x31\xf0\xfc\x68\x16\x47\xab\xa5\x34\x1a\xc5\x9d\xff\x89\x4c\x3a\x7d\xe7\x17\x88\xa1\x4f\x32\xd8\x41\xdd\xdf\x58\x54\xb5\xa5\x6c\x0d\x8e\xed\x06\x7e\x2e\x33\x44\x53\xef\x7b\xf1\xe4\x2b\xc7\xcb\x6b\xa7\xcc\x28\x47\xd7\x3e\x2a\xe7\x69\xd7\x95\x48\xa7\x13\x1d\x89\x7d\xde\xab\xa4\xfb\xf7\xf8\xc9\x4f\xca\x9d\xb0\x65\xeb\xce\xa1\x7b\x51\xb4\x6a\xf7\xa4\x71\xe2\xe3\xa3\x22\xd4\xc5\xfb\x52\x45\x0f\x1d\x3b\x0a\xb9\xe9\x3d\xab\x26\x90\xe0\x37\xee\x5a\x10\xaf\xd0\x70\x39\x3c\x61\xd2\xde\x30\x96\x06\x8a\x0e\xae\xbc\x97\xbd\x81\x63\x5e\x19\xd4\xd4\x4a\x48\x36\x93\xfa\x5b\xc2\x87\x15\x16\xec\x2b\x64\xb2\x51\xcd\x2c\x0f\xf1\x2a\x80\x03\x92\xd4\x42\x32\xa2\x2b\x42\xda\x1c\x06\x4b\xab\x99\xa4\xd6\xfb\xe9\xf9\x6b\xeb\xef\x24\x5e\xba\x6f\x97\x42\xa9\x24\x93\x8e\x07\x07\xd0\xf3\x91\xe4\x66\x73\x03\x90\x24\xf2\xbe\x96\xac\x43\x04\x3e\xe3\xbf\xc4\x96\x17\x85\x17\x70\x4d\x77\x8b\xb2\x8d\x82\xf4\x21\x19\x3f\x65\x93\xe0\x37\x1c\x7b\xee\x92\xc0\x4a\xba\x55\x8a\xa7\x4b\x26\xa2\x28\xb3\xdc\x70\x54\xba\x79\xb2\x80\xfc\xa6\xdb\x67\x87\x73\xac\x14\x8f\x53\x72\xe8\x48\xe7\x0b\xc5\xc4\x94\xc4\x08\xf1\x6f\x43\x85\x08\xe2\x37\xf8\xef\xbf\x06\x81\x35\xc3\xb3\x0c\x20\x68\x01\xeb\x97\x5f\x5e\xbd\xb0\xfc\x29\x0d\xad\x22\x12\x83\xe5\x27\x56\x00\xa7\xc8\x22\x26\xb0\x61\x41\x55\x6b\xae\xd6\xcc\xe3\xd5\xd1\x0d\x1c\x19\x0f\x96\x3e\x02\x81\xff\xbf\x90\x0b\x9c\x44\x50\x15\x22\x2a\x88\x63\x80\x05\xc9\x01\x8a\x81\x7b\x31\xe0\x3f\x21\x20\x22\x2f\x8d\x7c\xa0\xb8\x14\x2a\xcc\x72\xdf\x41\x6d\x71\xb3\x48\x4e\xec\x54\xf6\xbc\x6d\xa1\x73\xf9\x2a\x78\xb1\xfe\x38\xfa\xa7\x56\xe8\xd4\x33\x8d\x54\xca\x98\xa3\x02\x8f\xee\x41\xa5\x8c\xb9\x5f\x43\xc6\xb4\x33\xd8\xbd\x43\x91\x48\xc5\x14\xde\x9c\x83\xe8\xd1\x15\x1e\xcd\x66\x5a\x74\x5e\xb5\x3c\x51\x70\xde\xbf\x8e\x5c\xc0\xa5\xdf\xfc\xd9\x9e\xfa\x58\xcc\x0f\xee\xbd\xea\x83\x9b\x14\x75\x1e\x7d\x2e\x3e\xbb\x0b\xcf\x43\x98\xa0\xd8\x77\x11\xdd\x20\x68\x62\x27\x14\x59\xc0\x0a\x70\x3b\x24\xca\x8d\x42\xfa\x0f\x3d\x23\x88\xba\x2f\x91\x4e\xe1\x49\x9e\x66\x10\x59\x09\x44\x96\x1f\x12\x03\xc4\x07\x30\x45\x56\x82\xa2\x18\x5a\xd1\x94\x5c\xa1\x9f\x7e\xf1\x9c\x10\x80\x78\x11\xcd\xfa\x74\x09\x63\xf2\x26\x8a\x41\x98\x2c\x7c\x84\xd2\x74\x27\x9c\x3a\xe4\xc5\x73\x9a\x13\x6a\x19\xe0\x53\x98\xde\x07\xe1\xda\x8a\xd0\x1c\xc6\xd6\x8b\xe7\xf9\xbd\xae\xd6\x2e\x57\x75\x52\x58\x84\x2f\x01\x20\x38\x88\x88\x62\x00\x74\xf3\xa6\x68\x1c\x24\x85\xc2\xea\xbd\x63\xef\xf7\x4b\x3a\x18\x7f\x11\xc4\x10\xa4\x33\x2f\x9b\x1e\x88\x4c\x26\x7e\xce\x18\xcd\xa5\x34\x76\x76\xbf\x32\x5f\x90\xe6\x2c\xce\xfe\xcc\xee\x1f\x07\xce\x88\xea\x26\x49\xae\x63\xf4\x6e\x8b\x0f\x5a\xe3\x9d\x2d\x11\x1d\x51\xb0\x86\x24\xe6\xa4\x1b\x14\x27\x3a\x52\xd8\x7b\x53\xd6\x23\xe1\xba\xeb\x60\xf3\xc2\xa7\xf6\x13\xfa\xcf\x31\xfd\xe7\x29\x63\x50\x92\x1c\xfa\x3a\xce\x24\xa3\x1e\x53\xc8\xf1\xaa\x3b\x2d\x97\x4b\x35\xd3\x6f\x2c\x7f\xde\x3d\xe8\x39\x89\xb1\xbb\xb2\xf3\x4a\x85\x0d\xba\x27\x67\x65\x0b\x21\x82\xa4\x42\x84\x08\xd4\x2b\x0a\xe9\xeb\x40\xb0\xe8\x44\xa2\xb8\x03\x6c\x67\x97\x7f\xee\xfe\xcf\xcf\xf0\x97\x5f\x9b\xb0\x9d\x31\x96\x33\x53\x72\xb3\xf4\xf4\xdf\x9b\x64\x03\xe6\x54\xae\x8b\xdd\x4a\x73\x42\x85\xf7\x8b\x7c\x59\xc2\x82\x73\xe2\x30\x49\x84\x6b\x12\x11\x5d\x55\x6c\x6a\x95\xac\x19\x5d\x5c\xc1\xfb\xb4\x97\x5b\xa6\x87\x74\xa1\x49\xd8\x1c\xc6\xfa\x84\x38\x35\xc2\x0d\xd2\x3e\xed\x95\xd8\x8c\x0a\x87\xd6\xe1\xfa\xa8\x42\x0e\x95\xbf\x99\x12\x18\xd5\x67\x7f\x1a\x4d\xf4\xec\x4f\xbb\x5d\xb3\x3f\xed\x65\x74\x6d\x63\xb3\x6c\xf7\xf4\x4f\xb2\xad\xa9\x21\xfd\x93\xdc\x6d\x32\xfd\x53\xf3\x6e\x2b\xa5\x7f\xca\xea\xab\xd5\x0c\x50\xca\xb8\x4a\x0c\x50\x9a\x0a\x56\x30\x40\xe5\x57\x96\x4a\x43\x76\x9c\xc3\xa4\xee\x4b\xf4\x4f\xd9\xf1\x65\x2c\x22\xe9\x38\x3b\x94\x43\xf0\x6e\xd1\x41\x11\xf6\x94\xaf\x90\x0f\x6a\x34\xc9\x30\x6e\xa8\x7c\x50\x9a\xc9\xd1\x80\x0f\xaa\x98\x7b\xc3\xa0\x73\xea\xf1\x41\xe5\xbb\xe6\x06\xf8\x37\xca\x5b\x7f\x27\x38\x36\xb2\x01\x4e\x6c\xe9\xa5\x12\x61\x4a\xa7\x41\x96\xe3\x8e\x9f\x1e\xcc\x84\x1b\x83\x79\x34\x33\xc2\x22\x5b\xba\xcd\x45\xc3\x96\xc4\x19\xac\x9c\xbb\xc0\x9c\xf1\xe9\xfc\xc7\xc5\xa7\x8f\xbf\x7b\x9d\x33\x67\xf0\x2c\xe0\x66\x82\x65\xa7\x4c\x1b\x14\x7b\xde\x79\x5c\x94\x29\x6b\x6d\x8e\xab\x76\xef\xf6\xd9\x36\x44\x38\xd2\xfd\xa2\xdb\x90\x93\xf4\x8d\xb8\x1b\xe2\x81\x6f\xe3\xeb\x8a\xaa\x3a\xd4\x4d\xcd\x07\xc2\x8d\x9b\x0d\x03\xa2\x3b\x57\xab\x38\xa0\x11\x4b\xe5\x3d\xe2\x82\x07\xcb\xe9\x3d\x3a\x32\x0e\x05\x1a\xed\x3b\xa3\x03\x67\x44\xc2\xde\xee\x3f\xeb\xc6\x53\x39\x90\x26\xab\xad\x2b\xb4\x1b\x19\x96\xc3\xaf\x8a\x77\x83\xb3\xe3\xdd\x20\xef\xc6\x27\x2a\xdf\xdd\x3c\xf1\x86\xf9\x87\x6f\x98\x79\xa3\x26\xf0\xb8\xe0\x04\x9e\x34\x61\xde\xc8\x97\xf3\x44\x0a\x4b\x39\x25\x30\xee\x28\xa6\x54\x14\xc4\x4f\x98\xbd\x7a\xcb\xfa\xf4\x2a\x61\xca\xf4\xe9\xf3\xd7\xd4\x0c\xd0\x40\xa1\xde\xb2\x3a\x5d\x64\x4c\xc9\xea\xcd\x87\xaa\xde\x8c\xd7\xab\xbd\x4a\x58\x1c\xd4\x51\x5e\x6b\x2e\x23\xbf\xd5\xec\xde\x7b\xa5\x41\x41\x5b\xd2\x97\xf9\x16\x54\x45\xba\x6a\x4f\x38\x87\x09\x01\x9d\x14\x95\x54\xc2\x5d\xd2\xd4\x5a\x91\xe9\xf5\xa7\x1a\xd3\x15\x9d\xa4\x15\x64\xc3\xa5\x95\xa8\x22\x29\xcd\x0e\xbd\xa9\x01\xad\x6c\xc0\x8b\x09\xb2\x9a\x5b\x09\xf2\xdb\x05\x01\xbf\x7a\x2b\xe6\x24\xd6\x5b\x5a\xc9\xec\xed\xc2\xd2\x5a\xd9\x79\xb6\x1b\x44\x61\xf1\x8a\x79\xc1\xeb\xd9\xd6\x54\xda\xed\xfe\xdf\x98\x79\x69\x37\x87\x6d\x94\x9a\xdd\x04\xfb\xc9\x2a\xcb\xcd\x03\xb2\x88\x89\x2b\xea\x87\xd3\xa8\x8d\xd5\x8c\x04\xa4\x3b\x67\xf6\x4f\xa9\x40\x33\x69\x1c\x7a\x68\x15\xc6\xe7\xfd\x42\x6d\xe5\xc5\x6b\xb5\x51\xec\x10\xaf\xfc\x8f\x3c\x14\xad\x9b\xaa\x57\xd3\x51\xff\x06\x69\x50\xd5\x6a\x39\x8b\xb1\x16\x67\x45\xab\x98\x9c\x77\xc9\x3a\x41\x70\x61\x9d\xaf\x2d\xc0\x29\xbc\xf1\xd9\x88\x22\x8b\xa7\x1e\x81\x2b\xa2\x22\xcb\x89\x0d\x7d\x77\x4e\xe9\xc2\x01\x01\x8c\x84\x24\x8d\xcb\x9a\x80\x3f\x88\x9c\x3b\xb4\x5e\xd0\x68\xaf\xab\x28\x8e\xd7\x8e\x05\x2f\x21\x7e\x30\x5a\xcd\xe6\x32\xaa\xe5\x0a\x24\xd6\x55\xec\x23\x04\x43\x0e\x3d\x89\x02\xcf\x4a\xd0\x9a\xf1\x8d\xfb\x89\x95\x20\x3f\x08\x28\x8e\x63\x68\xfd\x14\x5d\xc1\x4b\x18\x3b\xd6\x15\xb4\xbc\xc8\x8a\xa1\x1b\x2d\x16\x30\xf4\x58\xb3\x58\xe5\x63\x52\x0a\x83\xb6\x30\x40\x4a\x08\xaf\x68\xb9\x43\xeb\x35\x04\x71\x68\xd1\xa4\x37\xa4\x1b\xec\x72\xe8\xe9\x81\x29\xf2\x74\xb0\xf0\x67\x31\x40\x70\xc0\x3a\x41\x0d\x0d\xd2\xe1\x49\x2b\x23\x86\xd8\x90\x7a\x72\x0c\x95\x3c\x27\x87\x37\x1a\x17\x74\xdc\x74\x83\x6f\x26\x57\xde\x15\x46\x37\x59\x56\xbd\x0b\xa4\x6e\xaa\x44\x2d\xff\x34\xe5\x77\xcb\x48\xdf\xc5\xcd\xa9\x6c\xab\xd2\x51\x9f\xf8\xc1\x7d\xfb\x7d\xf4\x11\xba\x31\x44\xac\x87\x68\xbd\xca\x3b\xe7\xd8\xb1\x13\xf2\x8e\xfa\x39\x93\xbd\x39\xed\x57\xe9\xab\x75\xcf\x06\xad\x47\x73\x37\x07\xfb\xce\x23\x3c\x0b\xce\xec\x2c\x89\x44\x6e\xf1\x35\x8c\xeb\xd0\x8f\xfc\x47\x37\x5a\x56\x1d\x96\x35\x46\x7e\xe4\x64\xf3\x93\xe0\xde\x65\x38\xce\x89\x63\x07\x0c\x3d\x34\x0b\xa2\x73\x82\xe9\x13\x3e\x70\x93\xde\x35\x25\xa5\xef\x8a\xcc\xb0\x18\x6b\xf2\xcd\xf3\x19\x4a\x2c\x86\x45\xee\x3d\x8a\x22\x17\x0e\x41\xc4\xd6\xb2\x88\x6c\xa4\xce\xc1\x34\xb6\x72\x6b\x6c\x88\x92\x4f\xaf\x03\xd7\xe0\x9d\xe0\x43\x44\xe8\xd3\xab\xbd\xff\xfb\xe3\xa8\x53\x3e\x44\xe1\x17\xbc\xfb\x0e\xbf\x3d\xd3\x34\x95\xb6\xe2\x67\x7b\xa0\x42\x7c\xa2\x60\xc3\x46\xfb\xdb\x75\xdc\xd9\x0f\x54\x88\x37\xee\xb4\xdb\x93\x65\x0c\x79\xd2\x17\x73\x21\xee\xed\x32\xac\xd4\xe8\xe9\x84\x33\x84\x7d\xf2\x17\xf0\xc4\x83\x1a\x4a\xc4\xfd\x49\x8e\xee\x6a\x2f\x7d\xbf\x11\x25\xa2\x5c\x4d\x9e\x19\xb9\x90\x1a\xd1\xac\x4d\x22\x77\xa0\x04\xd1\x1c\xc9\x17\x65\xe2\x43\x0d\x49\x62\x59\x2b\x8f\x6b\xb2\x1e\x16\x35\xd5\x84\xd9\x51\x59\xae\x4a\xb6\x51\x1d\xb3\xa3\x94\x31\x31\xc7\xec\x78\x50\xab\x8d\x87\x8d\x98\x1d\x0f\x1e\x98\x1d\x6f\xc8\xa5\x7b\xdb\x49\x14\x6e\x9d\xdc\x91\x3b\x66\xef\x01\xbb\xa3\xfe\xf0\x3d\xac\x00\x8c\xd7\x51\xf0\x4c\x2c\x61\xaa\xbb\xbb\x1b\xe2\xc8\x6a\x2d\xaa\xab\x2e\x6f\x4c\x2a\x79\xa4\x71\x6f\x6e\x83\x54\x92\xae\xe9\x96\xac\x92\x23\xb3\xcd\xf9\xeb\x66\x95\xd4\x8f\x1d\x4f\xfe\xd3\x20\xff\xbd\x52\xd1\x6e\xdd\x1b\xe9\x6e\xf5\xa4\x2b\xd7\x46\x23\xb7\x46\x0d\x2e\x28\xb9\xc2\x1d\xb8\x33\xb4\xae\x8c\x42\xaf\xc5\x47\xea\xb5\x40\x11\xf5\x5a\xd0\x9c\xf4\x78\x67\x21\x1c\x63\x53\x8d\xd3\x82\x70\xe2\xb9\x20\x24\xc4\x73\x34\xe9\xbc\xec\xaf\x20\xe4\x5b\x8b\x28\x86\x16\x38\x8f\x56\x88\x16\x48\xe4\xa9\x84\xc4\xbc\xce\xf1\x47\x22\x5e\x11\x8b\xda\x28\xb8\x8f\xc1\xcc\x8f\x60\xcc\x60\x71\x1b\x7e\x84\xb6\x33\x22\xff\xd8\x93\x5a\x98\x71\x69\x65\x75\x44\xff\xca\x0c\x45\x65\xfc\xaf\xa3\xbb\xcd\xff\x4a\x8f\x82\x82\x2c\xb6\xcc\x0c\xf6\x2c\x0a\x57\x09\x54\x28\x61\xc9\xdf\x41\x34\x8b\x08\xfb\x18\x4d\xfe\x1c\x16\x31\xc5\xaa\xf2\xef\x2a\x21\x76\x1e\xc4\x41\x4e\x0a\xce\x6d\x95\xc0\x9c\x12\xf7\x34\x4f\x31\xab\xde\x63\xf5\xd0\xde\xe3\xf5\x7a\x60\xa6\xbd\xbb\xcc\xb4\x6d\xc4\x9e\x26\xac\xa6\x6c\x47\xed\x98\x9a\x16\x1f\x19\x54\xd0\xbf\xcb\xdc\xa1\xdb\xe5\xa7\xbd\xa5\x91\xec\x8c\xa0\x96\x95\x77\xe3\x0c\xb5\xf4\xbb\x66\xd5\x64\x55\xbc\x3d\x8e\xda\x1a\x7b\xe5\x7d\xe3\xf2\xdc\xa2\x87\x4a\x1f\x9a\x96\xe3\x2c\xa0\x9e\xa8\x6a\x76\x4f\xea\x91\x22\xae\xad\x99\xde\xb3\x95\x61\xfd\xdc\x02\xdf\x27\x37\x7f\x76\x40\xfb\x29\x3b\xac\x1a\x3a\xbe\x7c\xa2\xb8\xf9\xd1\x1d\x09\x89\xf3\x7f\xfb\xe7\x4f\xff\xf8\xbf\xaf\x12\x43\xb7\x17\x03\x21\xd6\xf1\x57\x1d\x6c\xc3\x5d\x65\x90\x0a\x5a\x74\x74\x36\x44\xed\x0e\x44\xa8\x69\xa3\x80\x44\x85\xff\xb8\xa3\xa1\x6a\x99\xf3\xfb\xe6\x3c\x44\x06\x3b\xde\xf6\xbd\x40\x72\x06\xec\x9a\x36\xf8\x22\xf3\x7b\x5d\x49\xdc\x44\x70\xda\x7a\x4c\x90\x6d\x1a\x11\x34\x62\x26\xd2\x74\xc7\x2b\x08\x08\x7a\x25\x3f\xf0\x15\x07\x05\x61\xdd\xfb\x55\xf2\xd2\xf3\x19\x44\xaf\x96\x74\xa9\x29\xea\x45\xcd\x22\xb4\xe0\x64\xc3\x60\x1f\x31\x46\x9d\x44\x1a\x99\x7e\xfa\x2d\xbc\xaa\xf9\x65\x2d\xda\xac\xab\xea\xfc\xea\x37\xa9\xcf\x4d\x86\x3e\xb5\xcb\x36\xc4\x8c\x2d\xe9\xc9\xc9\x50\x59\xa9\xc1\x25\xa5\xdf\x4a\x19\xb7\x14\x22\x2e\x5c\x02\x67\x5d\x91\x79\x19\x0c\xc2\x5d\x4b\x4e\xcf\xcc\xb1\x2b\x31\x96\x10\xc2\x3d\x72\xeb\x53\x44\x8a\x96\xb6\x9b\x21\x07\x16\xe5\x0f\xfe\x02\x64\x4a\x1e\x60\x62\xe4\xf8\x6b\x0d\x43\xab\x41\xd4\xdf\x05\xf4\x2c\xcf\x77\x3a\x55\xa4\x76\x26\x78\x97\x88\xe6\xe4\x98\xa7\x82\x79\x6d\x49\x3a\x23\x01\xb7\x97\xa3\xef\x04\x7e\x6c\xff\xea\x9f\xaf\x3f\x82\x39\x2a\x17\xa4\xc1\xd2\x2f\x03\x8f\x11\x7a\xa5\x38\x8b\x22\x23\x66\xcf\x9a\x20\xb1\xbd\x6d\x48\xdd\x4f\x6b\x48\xdd\x12\x4e\xec\xf8\x5b\x86\x89\x7d\xcb\x22\xf3\x5e\x26\xb2\xad\x1a\x63\x34\x7a\x2a\xe3\x89\x4e\xc9\x0a\xa8\x9d\x45\xd6\x10\x4c\x94\xc5\x11\x49\x15\xa4\xc6\xac\x52\xcc\x94\x51\x73\x04\x78\xe8\x89\x54\xcd\x43\xe9\x62\x05\x64\xaa\xac\x95\x4f\x5a\x40\xa6\x8a\x2b\x5f\x8d\x98\x12\x6d\x3a\x28\x40\x4c\x1d\x4a\x0f\x64\x11\x53\xfb\xb5\x9a\x78\xd0\x08\x31\xb5\xbf\x4d\xc4\xd4\x16\x54\xb6\xce\x35\x8f\x26\xa2\xad\xac\x83\xe5\xa3\x65\x54\xca\xe4\x51\x8e\x2c\x5f\x31\x9e\x2b\x21\x08\x16\x8a\x10\x28\x0b\xb3\x2d\xbb\x91\xa1\x33\xb6\xa7\x11\x75\xc9\x11\xdc\x4a\x96\x1d\xfb\xfe\x40\x93\x74\x0a\x71\xc7\xf0\xa4\xfd\x9c\xee\xfd\x95\xa3\x93\x6e\x05\xa0\x94\x2a\x4a\x5f\x49\xea\xdb\x3b\xa6\x8f\x12\x91\x94\xcb\xc4\xbc\x5b\xfd\xf0\x82\x78\xfd\x19\x04\x42\x4d\xff\x5a\x22\xa7\x62\xe9\x34\x95\x56\xd3\xa1\xbb\x33\x72\xaa\x64\x01\xa6\xf9\x49\xea\x44\x7a\x64\x7a\x6e\x0b\x63\x92\x1d\x97\xf6\xb0\x14\xa5\xb9\xdb\x48\x4d\x6c\xe5\xd0\x59\x9d\xc1\x53\xca\x36\x03\x3d\x4c\x45\xcd\x52\xfc\x24\x8b\x3d\x39\x92\xd0\x23\xcd\x5a\x9a\x6d\xef\x31\x6e\xef\x2a\x41\xd1\xe2\x03\x4c\xa2\x55\xec\xc2\xb7\x14\xa8\xa7\xb6\xbc\x90\x26\x53\x5f\xe2\x27\x66\xbb\x34\x2e\xa2\x2a\x76\xba\xea\x69\x23\x22\x81\x27\x1d\xa1\x5c\xac\x5b\x47\xba\x58\x37\x81\x76\xb1\xee\x20\xe2\xc5\xa2\x58\x89\x54\x62\xe9\x04\xf9\x62\xa9\xe8\x97\x54\xcc\xad\x89\x4a\xb0\xaa\x90\x09\x56\xdd\xc9\x6b\x38\xd0\x6d\x90\x30\xd6\xdd\x43\xc3\xe4\x47\xb9\x33\x54\x8c\x54\xe6\x56\x90\x31\x56\x05\x3a\x26\xfd\xbe\x51\x95\xe5\xea\xd6\x47\xc9\xdc\xda\x7c\x6c\x99\xd5\xd9\xca\x7b\x10\x6b\x66\x76\xb6\xaa\xb5\x1f\x42\x00\x6b\x92\xde\xd9\x97\x7c\x39\x46\xe0\xe1\x9a\xf9\x9d\xfd\xbc\x67\xb3\xa2\x5b\xcc\xb2\x38\x36\x4c\xf6\xdc\xa8\xeb\x5e\xbf\x3c\xfd\xf0\x36\xd7\x81\x44\xe4\x99\x41\x84\xfc\x70\x46\x89\x24\xa0\x87\x2f\x87\xd0\x45\x1d\xe7\x80\x26\x68\xf0\x2e\xfa\xaf\xe6\x72\xa8\x29\x8a\xb4\x00\xa6\x3d\xb9\x1f\xc8\xb4\x5b\x07\xa7\xb5\x4c\x35\x3d\x25\x69\x2a\x07\xe1\x6a\x71\x4e\x9d\x2c\x19\x70\x9a\x82\x37\x8b\xe1\x34\x86\xc9\x7c\xc0\x3d\x37\xf9\x74\xd4\x8d\xc0\x68\xa9\x65\xb9\x1d\x1c\x2d\xeb\xfe\x6a\xe8\x45\xbb\xb8\xbc\x13\x28\xb4\x78\xfe\xf3\x8f\xbf\xfc\x1a\xff\x56\xee\x3c\x4b\x20\x9e\x13\x24\x2b\x14\x9e\x1d\x30\x44\x3f\xc3\x75\x2d\xc2\x76\xc1\xc7\x80\x1f\xc2\xa3\x90\xc2\x65\x08\x00\xcb\x83\x9f\x6b\x3a\xda\xf6\x8c\xe1\x6d\x2a\x0f\x34\xe1\xf9\xdb\xb1\x6b\xd8\xa4\x33\x2f\x0b\x7b\x91\x62\x9c\xe7\xd6\xa3\x3d\xc9\x7a\x84\xf5\xe7\x5d\x67\x20\xa5\x0f\x7e\xa2\x33\x63\x5c\xc0\x35\xd7\x45\xf7\xb4\xf4\x38\xda\x7b\x9d\xfb\x18\x0f\xaa\x7d\x8c\x17\x97\x3b\x7f\xb9\xbe\x80\xeb\x8d\x92\x95\xb8\x1a\xd3\x47\x5a\xb8\x3d\x50\x9f\x3c\x10\x7b\xdc\x09\xb2\x77\x90\xe6\xe8\x91\xbb\x51\x87\x8b\xa0\x23\x70\x27\x41\x7f\x35\xfd\x97\x07\x5f\x87\xff\x72\x74\x5c\x08\x12\x69\xc7\xd6\x7e\xd0\xd0\x2b\xd5\x85\x4f\xca\x44\xe7\x6c\x0a\x22\xb4\xab\x01\x84\x76\x1e\x3e\x58\x8c\x31\xd4\x80\x0a\xb9\x67\xe3\xe2\x72\xc8\xf7\xeb\x2c\xa6\xf0\x67\xb8\xb6\x76\xac\x5f\xf1\x91\x54\x2c\x77\xe7\x1c\x1b\x5a\x36\x97\xa7\x2a\x8c\xa9\xc9\xe6\x57\xb0\x6f\x8b\x4d\xb8\x9b\xa2\x95\x5a\x1f\xe6\x7f\xc8\x24\xb8\x75\x3e\xa4\xe9\x13\xee\xf4\x1b\x8d\x3a\x71\xa9\x74\x3a\x25\xa6\x51\x40\xcf\x16\x95\xd6\xc8\xce\xe6\x06\x51\x8e\x46\xd9\x6d\xc0\x99\xa2\x47\xf2\x66\x2d\xf1\x07\xdb\xda\x14\x74\x93\x4a\x26\xc5\x66\x5c\xcc\x66\xde\xb7\x9c\xb0\x3c\x72\x18\x3b\x75\xee\xce\x6e\xcd\x48\x54\x4d\xcd\x8c\xf4\x88\x9b\x26\xbb\xd0\x2f\xdf\x3d\x0e\x97\x3d\x76\xce\xf0\xae\x20\x9f\xd6\x62\x69\x2b\xf7\xf0\x72\xac\x5a\x25\x86\x36\x2f\xdb\xc0\xf3\xee\xd8\xcf\x62\x18\x7a\x54\x1f\xa6\x40\x5b\x69\xf3\xb2\x1d\xa2\xe4\x94\x85\x83\xca\xce\xf8\xe3\xca\x06\x35\x46\xec\xd6\x6f\xcb\x5b\x78\xa5\x36\x05\xc5\xab\x5c\x4b\x4c\x0c\x5e\x5b\x9b\x81\x2d\x29\x14\x68\x3f\x7f\x84\x49\xc2\xcd\x47\x75\xb6\x3d\xbb\x9c\x39\xe1\x0a\xc4\xa1\x1f\xd6\x66\x88\x4f\x87\xe9\x69\x17\x4c\x04\x45\xa6\x63\xdd\xb6\x9c\xa0\x38\xc2\x15\x96\x08\x0b\x68\x1b\x94\x70\x7a\xeb\xd3\xdc\x4f\xac\x9f\x7f\xb5\xe6\x20\xa1\x59\xbc\x2f\xac\x84\x76\xe1\xd0\xfa\x9d\xb1\x28\x43\xb2\x0c\x7e\xfd\xf7\x5f\x13\xeb\xca\x47\x73\xe5\xa9\xc4\xb1\xce\x57\xc8\xba\x82\x12\xe1\xb1\x17\xf9\xe1\xcc\x4a\x22\xfa\xb4\x0b\x62\x48\xec\xaf\x61\x84\xd2\x5b\x00\x59\x20\x08\x86\xd6\x2b\x44\x6d\xb2\x70\x06\x90\x7f\x09\x83\xb5\xe5\x2f\x96\xc0\xa5\x24\x07\xc0\xc5\xd7\xac\x30\xf2\xa0\xe5\x23\xfc\x7d\x90\x24\x91\xeb\x93\x6c\xdd\xb8\xf0\xa1\xf5\x11\x42\xeb\x1c\x06\xd1\x95\x35\x8d\x62\x4a\x92\xe0\x41\x04\xfc\x20\xb1\x22\xca\xda\xfc\x1a\xd7\x96\x4d\x0b\x42\x97\x90\x40\x58\x65\x74\x7b\x52\x6e\xae\xc4\xba\x7e\x1c\x82\x20\xd9\xe1\xbd\xd0\x21\x0f\x42\xb4\x8a\xad\x42\x2e\x84\xb4\x95\x7e\x48\xad\x27\x78\xa4\x4c\x10\x3c\x0d\x51\x06\x4f\x1b\x9c\x4f\xa9\x0b\xf6\xe2\xb2\x0d\x62\x9d\xde\x20\x5b\x02\x5b\xe0\xdb\xc3\xae\x2b\xa7\xd4\x5e\x81\x24\x98\x62\x42\x46\x05\x42\xaf\xf6\x89\x54\x06\xca\x9f\x66\xfc\x62\x66\x23\x36\x3b\x41\xd3\xcd\x2e\xfd\x2e\x91\xbd\xb0\xba\x20\x56\x68\x65\x8e\x5e\x83\x7d\x91\xd8\x09\xa8\xcf\x5a\xb1\x13\x50\x0e\x87\x1c\xcc\xd2\xc0\x66\xc0\x6b\x87\x27\xc8\xe0\x02\xae\xb3\x41\x81\x46\x06\x84\x6d\x05\x05\xe6\xce\x92\x89\x09\x4c\xf2\xb0\x02\x16\xc4\x15\xcc\xfc\xa9\xab\x8e\x74\x5a\x42\xcd\x51\x62\xab\x8e\x9e\xb1\xb4\xf2\xad\x23\x46\x04\xdc\x63\x1b\xab\x4e\x8f\xad\x22\x2d\xcf\x61\x70\x6b\xc2\xa6\xda\x5b\xd7\x1b\x44\x7e\x10\xea\x62\xe7\xb8\xb5\xf5\xfd\xc0\x28\x3e\x45\x6f\xb3\x6f\x64\xa9\xa7\x13\x9d\x9e\x4d\x8a\xad\x5e\xb6\xc0\x53\x3b\x3e\x31\xcf\x53\xe3\x7b\x00\xa7\x68\x80\x62\x9f\x64\x45\xf5\x48\x4c\x77\x40\xcd\xb9\x60\xb9\x84\x24\xc8\xfb\x3f\x91\xaf\xda\xfc\x89\x61\x7f\x80\x62\xe0\x5e\x0c\x40\x1c\x83\x35\x2e\x0d\x10\x3f\x01\xb7\xcd\x07\x50\xb5\xd0\x93\x82\xd2\xb8\x22\x5a\x8e\xc4\xaf\xac\xf8\x00\x50\xec\x87\xb3\x01\x0c\xbd\x64\x80\x25\x04\x9a\xe5\xd3\x05\x35\xad\xf9\xcc\x0c\xdf\xdc\x88\x7f\x27\x42\x60\xbc\xfd\xbd\x45\xb0\x7b\xf0\xb2\x29\x85\x32\x3b\x7d\xab\xc2\x61\xda\xdb\xec\xf7\x9b\x05\xc7\x98\x1f\x48\xe4\xd8\xac\xb4\x62\x27\x39\x33\x36\x56\x4a\x6f\xdd\x8e\xbd\x77\x50\xe2\x1e\x10\x3e\x0b\xdd\x21\x75\x98\xdf\x5f\x79\x7e\xfc\xbd\x22\xf6\xd3\xa2\x53\xaa\x8e\xcf\xc0\xac\xbb\xbf\x92\xde\xbe\x87\xee\x80\xaf\x25\x9c\xe9\x38\x63\x1a\xae\x0e\x00\xda\x13\xf3\xff\xc9\xc4\xb1\x7f\xf6\x43\x4f\x1b\xcd\x54\xb6\x70\x0c\xe3\x7c\x72\xac\xc8\x52\xfd\x08\x03\x4a\xfd\xba\xf3\x1a\x1c\x65\xf5\x16\x7a\xad\x22\x76\xa9\xac\x4d\x47\xf5\x63\x97\x34\x01\x3d\x8e\xb2\xb1\x98\x09\xaf\x6d\x3d\x28\xd2\x6c\x90\x3b\x54\x82\xcd\xfd\x9c\x5b\xba\x4d\x64\xeb\x2d\x71\x3c\x34\x73\xd0\xe8\xed\xee\xbb\x42\xe5\x34\xf5\xc1\x68\xfd\x2d\xaa\xb7\xe2\xa0\xf0\xc7\x88\xba\xb1\xf7\x32\x73\xb1\xb4\xd3\x5b\xa7\x79\x69\xd0\x19\x79\x1f\xc4\x7e\xd6\x07\xb1\x97\x6f\x97\xe2\x92\x60\x3e\x07\xd9\x09\x61\xde\xe4\x2a\x17\xc5\x48\xe4\x65\xd4\x0c\x8a\x2e\xe9\xa1\x91\x4d\xb6\x81\xf6\x52\x60\xcb\xb9\x25\x92\x0e\x65\x4c\x0c\xfa\xb9\x21\x0a\xd6\xc4\x92\x3e\xa1\x5f\x15\xb6\xf3\x2e\x18\x37\x8c\xbf\x2c\x3b\xc3\x54\xdf\x42\xfa\xeb\xc9\x24\x1b\x1b\x5a\x6b\x15\x36\xf0\x02\xdc\x8f\x48\xc1\xc6\x8c\xda\x7b\x3a\xc7\xf0\xd1\x16\x22\xd6\x2e\x2e\xdb\x86\xaa\xed\x1b\x9d\xf0\xfb\xf7\x8c\x4f\xbb\x71\x8c\xa7\x32\x72\xc7\x52\x90\xe7\xc5\x65\xbd\xe8\xce\xd6\x42\x45\x0d\xb7\x64\x15\x33\x33\x3d\xc7\x18\x6a\xc9\x51\xeb\xd0\x7d\xfc\x68\xb5\xeb\xd1\xac\xbe\x71\x14\xa1\xc1\x36\xa3\x5c\xef\x28\xb9\x7b\x66\xa5\x9b\x04\x4d\xd2\xbd\xb2\x20\x7a\xd2\x50\x9b\xae\xa7\x47\x77\xaf\x41\xcb\x81\x93\x17\x97\x4c\x67\x26\x01\x83\x7b\xa3\xaf\x3b\x6e\x12\xb7\xb6\x2c\x60\x92\xed\xa7\x47\x6d\x03\x26\x8f\xb7\x1b\x30\x79\x71\x59\x10\x29\x29\xec\x80\x99\x98\xc9\xe3\x6c\xcc\xe4\xe1\x44\x04\xff\xc9\xa1\x93\x25\xe1\x88\x0d\xc3\x0b\x8f\x1f\xc2\x0b\xb7\x10\x5e\xd8\x4a\xea\x69\x1a\x79\xf6\xf3\xce\xaf\xd6\x12\xf8\xf1\x56\xc2\x0b\x7f\x86\xeb\x1d\x22\xb3\xdf\x97\x68\xae\xed\x47\x17\xde\xf2\x20\x77\x16\x5d\x98\x16\xb9\xb5\xe0\xc2\xdf\xa3\x15\x0f\x2d\xa4\xb5\x08\xd7\xe9\x67\x8d\x2a\x2a\x55\xf2\x21\xa4\xb0\xd3\x90\x42\x02\xd2\x28\xc1\xe8\x80\x19\x0c\xd1\xce\xc5\xe5\x96\x02\x09\x7f\xde\xf9\xb5\x72\x68\xee\x48\x04\x61\xbe\xa7\x6a\x44\x10\x76\xd5\x81\xdf\x50\xf0\x60\x11\x9b\x42\xe3\xe0\x41\x5d\x34\x62\x7b\x78\x43\x41\xe4\xa0\x73\x74\x17\x62\x07\x53\xbc\x80\x80\x01\x10\xdc\x41\x51\x4c\x21\x87\x0e\xc4\xf0\x12\xc6\x24\xe7\x8c\x17\x13\x24\x03\x02\x17\xb0\x12\x9d\xa0\x87\x23\x90\xaf\x12\xb8\x02\x4b\xe3\x5c\x2f\x1a\x31\x8a\x25\xc7\x79\x96\xf2\xbe\x76\x78\x21\x87\x14\x34\x44\x24\x84\x91\x07\xef\x08\x2f\xe7\xef\xef\xff\x7c\x3d\x8a\xfe\xf9\x7b\x05\x28\x01\x32\x50\x42\x05\x41\xa7\x78\x4e\xd2\xe2\xea\x81\x0f\x8c\xb5\x32\x13\xf8\xc1\x44\xe1\x23\xac\x52\xda\x79\xe5\x25\x33\xee\x6d\xaa\xed\x8d\x1c\xd9\x06\x68\x00\x83\x9e\x20\xf3\xf3\x7e\x77\xc4\xed\x7a\xf4\xf7\xbf\x0e\x8f\xfe\x28\xc3\x7d\x52\xed\x14\x57\xd9\x2d\x3f\x92\x8c\xb2\xb5\x09\x4a\x0d\x79\x2d\xb3\x2e\x7d\xa9\x82\x22\x95\x6d\x31\x41\xa9\x51\x73\x44\x6b\x24\xb3\xfe\x68\x24\x5d\x6c\x41\x50\x5a\xe1\x03\x28\x25\x28\x2d\xae\xbc\x96\xa0\x54\x71\x21\x8b\x9c\x9e\xbb\xfa\x3a\xa7\xed\xdb\xcd\x11\x94\xd6\x6b\x61\x05\x21\x9f\x9e\x9f\xf4\xa9\x8c\x66\xd8\x57\xd0\x0c\x0d\x93\x4b\x74\x13\x17\x7a\x1b\x61\x5b\xaa\xfc\x6d\x94\x11\x80\xec\xdc\x35\x28\x4a\xf7\x75\x26\x07\x25\x22\xaa\x94\xa2\xb4\xec\xf2\x3d\x77\x3a\xca\x8b\xe6\xa0\x53\x9f\x63\xd6\xd2\x8b\x8f\xdb\x3b\x48\x91\x79\x20\x11\x0b\xde\x92\xdf\xb1\x03\x57\x4f\x7b\x7f\x02\x1e\x1e\x5b\xc4\xa5\x2b\x1e\x85\x43\x85\x82\xb1\x81\x47\x61\x4b\xde\x04\xcd\xfc\xd2\xfb\x12\x98\xcc\x5b\xe4\x41\x78\x52\xe2\x2f\x30\xd6\xca\xbb\xf7\x13\x14\xfa\x08\x9a\xba\x1d\xb6\x6c\x0a\x2e\x32\x03\x67\x9f\x2b\x27\x50\x8b\xe1\xcc\x4f\x10\x8c\xa1\x47\x62\xf0\xcc\x4c\x9e\xe4\x49\x6e\xee\xd4\xd6\xeb\x5e\xe4\x12\xd4\x59\x71\xb6\x61\x74\x21\x26\x17\xe7\x49\x4d\xa3\x8b\xee\x91\xfd\x9a\x86\x19\xdd\x13\x2d\x68\x9d\xb2\x64\x4e\x33\x11\x2c\x52\x98\x42\xb0\x11\x61\x53\x2a\x69\xb7\x23\x6c\x92\x4c\x22\xad\x8c\x2a\xc9\x3c\xba\xba\x6d\x9b\xca\xd1\xbf\xfe\xf1\xf3\x4f\xfb\x8b\x59\xb9\x4d\x05\x45\x8b\x68\x16\x83\xe5\x7c\x9d\xcb\x20\x98\xb9\x19\xc9\xfd\xcc\x0e\xaf\xb7\x11\xf2\xa7\xbe\x0b\xea\x98\x58\x1c\x05\xc7\x76\x40\xb0\x69\xfb\x07\x94\xa8\x02\x0b\x8e\x75\x9c\xa6\xe6\x96\x17\xc6\x31\x51\x6a\x70\x70\xa3\x28\xf6\xfc\x90\x0c\xe5\x34\x8a\x07\xe4\xc4\xfa\xcb\x35\xae\x75\xdd\xcc\x84\xa9\x31\xa9\xfb\x30\x44\xf5\x0d\xf2\xa1\xfa\x76\x8a\x3a\xb6\x1a\x93\xbe\xfb\x9a\xfb\xea\xc1\xa6\x53\xd8\x60\xcf\x4f\x18\x9f\x64\x13\xcb\xce\xfe\x24\x43\xf3\xa2\xb6\x50\xec\x37\xb8\xb6\x07\xbb\x07\x2d\x61\x75\xa9\x04\xf8\x54\xe8\xac\x09\xf2\xdd\x0b\x62\x91\x61\xd4\x17\x6d\xc8\x17\x0e\xd8\x6a\x0a\xe5\x5d\x91\x20\xbd\xa9\xab\x2c\x22\x04\x1c\x20\x80\x31\x4a\xfd\x7a\x8c\x45\xc2\x92\x5f\x1a\xac\x96\x5e\x06\x02\x57\x97\xd1\xe1\xbb\x12\xa9\x8a\xf0\x3b\x10\x02\x85\x30\xb2\x82\x28\x9c\xc1\xd8\x82\x9f\xfd\x04\x25\x96\x4f\xf9\x11\x5c\x80\x40\x10\xcd\xba\x20\x11\x30\xf2\xb7\x37\x99\x0e\xfb\x5f\xe5\x74\x20\x4d\xed\x6c\x32\xbc\xc4\xa5\x95\x4d\x85\xdf\xa3\x95\x34\x09\x32\xa2\x3b\xe2\xf3\xe4\xa6\xa6\xc1\x9d\x1f\x9d\x5b\x58\xac\xa7\xa1\x45\xe7\xc4\x15\x48\xac\x18\xa2\x55\x1c\x42\xcf\xba\x9a\xfb\x41\x82\x2c\x7c\x6e\x53\xac\x8c\x9f\x58\xb8\x39\x8e\xc5\x9c\x90\x64\xfc\xe2\xb5\x05\x66\xc0\xdf\x2a\x19\x88\x01\xe8\x56\x13\xb1\x72\xd3\x2e\x84\x7d\x69\x37\xe9\xc0\x94\xdb\x95\x31\xd7\xb0\xd9\xca\x1c\x6d\x6d\x88\x51\xa8\x20\xe4\xa2\x93\xbc\x6d\x8a\x6d\xb8\x0a\xd5\x4a\x3d\x73\x8c\x42\x7d\x50\xb7\xe1\xad\x12\x25\x5b\x66\xa1\x74\xd9\x47\x8d\xa3\xc8\xa8\x7f\x32\x1f\x55\x77\x1a\x04\x16\xb3\x80\x97\x25\x4a\x2e\x59\x8a\xb5\xcd\x5a\x5b\x83\x89\x1a\x38\x05\xe4\x7a\x18\x04\x2e\x51\xfb\x65\xaa\xe8\x95\xe2\x80\xab\xba\xae\x9d\x71\xbf\xeb\x8e\x0e\xc1\x65\xf3\x5e\x3e\x76\x6c\x04\xce\x07\xb8\x0c\xd5\x3e\x5a\xe0\x41\x93\xc3\x2e\x25\x35\x8b\x07\x0d\xcc\x63\x48\xb1\x31\xdc\x4b\xe9\x9c\xd9\x3f\x41\x10\xa0\xb9\xf5\x7c\x0e\xdd\x0b\xc9\xb1\xae\xcc\xe7\x61\x32\x8f\xae\x86\x73\xf2\xa4\x4b\x1f\xcc\xb9\xe6\xcc\x9e\x97\x3d\x85\x86\x15\xfc\x08\xe3\x4b\xdf\x85\xd6\xab\x30\x41\x20\x74\x61\x79\x25\x13\xfa\xb4\x51\x05\xb3\xcf\xca\x95\xe3\x67\xc3\x21\xd5\x67\xd8\x97\xeb\xd7\xfe\x03\xc1\xaf\x7e\x8a\xfd\xa5\xf5\xc9\x5f\xc0\xd2\xba\xc7\x08\x99\x54\x5b\x7a\x8c\x1c\xb2\x3a\x07\xb6\x49\xd5\x64\xbe\xb3\xaa\x4e\x55\x09\xa2\xca\x3b\x35\x43\x26\x55\xbf\xcf\xde\x40\x04\xc8\xf9\x5b\x56\xa7\x05\x7f\xc8\xa0\x4e\xd9\x67\x25\x65\x5f\x1f\xd8\xb8\x9d\xad\xa0\x05\x5a\x56\x1c\xd6\xcb\xf5\xe0\x7c\x85\x90\xe4\x32\xe2\x5e\xf6\x67\xb2\xc9\x04\x6f\xa7\xa7\x9e\x17\xc3\x84\x6a\x46\xd2\xdf\xe5\x9f\x1e\x39\xf9\xd7\x3b\x36\xa1\xdf\x50\xc8\x4e\xb4\x42\x84\x1f\x28\x63\x66\xa4\x66\x11\xd9\xcc\x98\x8f\x8c\x95\xe6\x69\xde\xe8\xc9\x7b\x38\x75\x41\x66\x6d\x2e\xf5\xcd\x6e\xb9\x33\x2c\xc3\x6c\x2b\xe0\x51\x29\xe3\x95\xe2\x08\xaf\x74\x7a\xe8\xd2\x4a\x18\x0f\x59\x13\x57\x45\x6b\x6c\x68\x5d\x27\x45\x91\x8b\x42\xb9\x6f\x82\x23\xf5\x93\x01\xdb\x94\x98\x0b\x82\xb8\x26\x38\xe4\xd3\x8d\x08\xeb\x64\xc6\x59\x01\x92\xc4\x9f\x11\x80\x28\x9f\x75\xe4\xc1\x28\xa4\xd1\x50\x14\x96\x4a\x67\x52\xc3\xd4\xeb\xa9\x0b\xa1\xb5\x0f\x62\x47\x39\x98\x6f\xd9\x21\xf1\xb7\x3f\x7f\x7f\x7a\xf8\xb7\xe5\x7f\x2a\xf2\x47\x14\xa1\x3a\x15\x7a\xa9\x04\xc6\xd3\x34\x55\x44\xcd\xb4\xeb\xc6\x19\x1b\x53\x05\xf2\x69\x06\x5d\x66\x40\xcc\xb2\xcb\x01\x48\x4f\xcb\x31\x68\x47\x79\xa0\xc4\x61\xfa\x6a\x33\x5a\x99\x43\x0d\x08\x8d\xc1\x8d\xc9\x5c\x28\xc5\xa4\x99\xb5\x6f\x9f\xd7\xf1\x78\xa2\x92\x68\x88\xc4\xe0\xe5\xa0\xb4\xb2\x66\x1b\xe6\x06\xd7\x82\xd2\x6a\xd6\xfe\x89\xae\xf6\xd5\x39\xbf\xcb\x6a\xdf\x26\xe7\x77\xcd\xda\x1f\xe9\x6a\x5f\xcd\xfa\x53\x56\xfb\x06\xac\x3f\x26\xb5\xd7\x22\x02\x15\x83\x2f\x67\x25\xa0\x4a\xa6\x06\x11\xb8\x2f\x3d\x90\x4d\x59\x3e\xaa\xd5\xc6\xbd\x46\x29\xcb\x47\x32\x26\x50\x76\xbb\xb0\xed\x9e\xe9\x55\x4d\x2c\x49\x58\x91\xf5\xfc\xcb\xd4\xd0\x88\x55\xc1\x44\x40\xd7\xf5\x41\x7b\x72\xef\x3d\x91\x84\xc1\x2e\xa0\x61\x69\xb5\xfc\x70\xb9\xe2\x16\xd0\x91\x56\xb7\x3e\x70\x0e\xd8\xb6\x72\x1e\x7d\x2e\xd7\xb6\xb3\xa6\x28\x7a\x3c\x0d\xc8\xcb\x6d\xb1\x67\x07\x46\x63\x5f\x81\xea\x55\xb1\x67\x7b\x45\x54\xbc\x85\x42\x4e\xfe\xb4\x20\x40\xf7\x4f\xd4\x9e\x46\x4f\x2d\x46\xa3\x51\x9b\x76\x62\x7f\x92\xa5\xfd\xda\x93\xa5\xda\x91\x84\x0e\xfc\x98\x3a\x4a\xdc\xd8\x47\xbe\x4b\xa0\x93\xed\x58\x96\xa4\xd1\xeb\x98\x11\x5d\x2d\x9d\x07\x8b\xff\x94\x9a\xad\xda\x80\xaa\xac\xb2\x30\xe7\xfc\xa3\x59\xa1\x9c\xa8\xa3\x44\x96\x48\x86\xc5\x36\x8f\x21\xef\xe5\x01\x1e\xe2\x01\xed\x9f\x21\x37\xbc\x95\x88\xef\xd2\x27\x8b\xe3\xda\x6a\x47\xb5\xc9\xdd\xd8\x9a\x60\xbe\xfb\x7e\xa1\x20\x36\x5c\x8d\x39\x5a\x04\x1f\xc1\x14\xa6\x3e\x9d\xb2\x66\xb5\x0a\xd6\x7b\x62\x42\x74\x55\xa2\x4b\x65\xfb\xb7\x2b\x5c\xa7\xbc\x05\xda\xc2\x27\xa1\xe0\x3b\xf7\x29\x42\xe6\x40\x62\xe0\x69\xa6\x28\x73\x2b\x57\x87\x7c\x11\x25\xfb\xb9\x06\xeb\x29\x59\xda\x7c\x21\x40\x14\x9b\x80\x6b\x81\xff\xe4\x06\x76\x43\x03\x61\x77\x0d\xf0\xdc\x3a\xc4\xb3\xf1\x3a\x85\xb4\xc3\xb8\x19\x04\xcf\x56\x79\x6d\xe6\x45\x8b\x2d\xaf\xd6\x6d\xc5\xe1\x1e\x16\x20\xc0\x4b\x79\x85\xf6\x9c\x7d\xe7\xa0\x29\x8f\xb6\x30\x0a\x50\xca\xea\xd2\x88\xd5\x19\xd5\x7c\x43\x6f\x70\xbe\x16\x9c\xd7\xad\xb3\x59\x32\xdb\x06\x57\xfc\x78\xd8\xa9\x0e\x32\xd9\xd0\x4e\xa1\x98\x19\xda\x1b\x2d\xee\x44\x48\xea\x62\xb4\xf7\xe7\x14\xfc\x19\x96\x59\x2b\x6a\x32\x5a\xd7\x37\x3b\x1c\xe4\x94\xa5\x32\xcd\xc3\xe9\x82\xae\x43\xdd\x3e\xe4\x44\x5c\x74\x2b\x81\xcb\x00\xb8\xf0\x37\x4a\xa3\x5e\xe1\x64\xc9\x08\x3e\xe6\x18\x90\x16\x95\xd0\xba\xa2\x0c\x2a\x52\xb8\xba\x0d\xad\x8a\x64\xdc\x07\x62\x29\x7b\xbe\x37\xf0\xc3\x04\xc6\xd9\x25\xcc\xe3\xd6\x9b\x2e\xb5\x6e\xc0\xc9\x3b\x8b\xd4\xf1\x72\xab\xcb\x0c\xa2\xc5\x87\x83\x17\x3f\x9d\x76\xb7\xcc\x6a\xf0\x8a\x35\x56\xbd\xf7\x8a\xd7\xe2\x1b\x58\x80\x26\xa9\x04\xa5\xa9\xa2\x14\x1f\xa0\x42\x31\x2a\x5d\x0f\x26\x35\x31\x52\x61\x8b\x00\x59\x9d\x09\x42\x5b\x12\x7f\xec\xca\xc8\x96\x14\xf2\x38\x07\xf8\x0f\x8b\x77\xef\xb0\x2a\x8c\x70\x1b\xf1\x1d\xb2\x56\x51\x29\x7d\xd4\xda\x85\x60\x88\x62\x2a\x17\xc8\x7b\x4e\x8b\xed\x46\xf4\x53\xeb\x1d\x27\x46\xb7\x9e\xc1\xfa\xfd\x71\xfc\x2a\x08\x3e\x27\xc6\x21\x11\xf5\x76\x9e\xc3\xfa\x07\xfc\x91\x66\xf9\xca\xdf\xaf\x63\x1f\xd2\x09\x0b\x7b\x19\x4c\x43\x37\x52\x41\x96\x00\xb5\xec\x40\xee\x48\x18\x30\xdf\xa5\xad\x22\x9b\x2a\x99\x5b\x2c\x5b\x0c\x38\x0f\xf4\x88\x4d\xf1\x66\x35\xf7\xba\x87\x4a\xad\x49\x6f\xfc\xd0\x5f\xac\x16\x26\xd0\x4b\xa9\x4c\xaf\xb4\xcc\xbc\x6e\xc7\x07\x79\xe1\xd3\xfc\x86\x67\x67\xf6\x02\x7c\xc6\x1f\xfe\x7b\x4c\x85\x91\x17\xfe\xcc\x27\xeb\xed\x6c\x4f\x28\x6c\x8b\xa4\x66\xb5\x2a\x9a\x0a\x3d\x1f\x84\x37\xd5\x52\xf2\xb1\x5b\x6c\x2c\xfd\xe2\x4d\xb5\x16\x7c\xee\xb8\xa9\x9a\x8b\x05\x97\x52\x61\x24\xdd\x92\x76\xc8\x3f\x62\xfb\x93\xf6\x96\x82\x0d\x27\x67\xde\xa9\x3c\xf0\x6a\xe7\xb1\x32\x3c\x1b\xb3\xc1\x88\x65\x12\x7b\x18\x69\x23\x15\x5b\xf8\xf2\xf1\xf9\xd7\xfe\x10\x15\x2a\xd6\x2d\x9f\xa4\x6b\xf4\xe2\xd5\xe9\x11\x3e\xd1\xdb\xfa\xf2\xb7\xef\xbb\x1f\x3d\xcd\xb8\x19\x0d\x08\x64\x8e\x65\x57\x70\x89\xf3\xfe\x20\xef\x69\xda\xaf\xe9\x07\xce\x39\x51\x0f\x74\x0c\x32\x2c\xb8\xb1\xcc\x6d\x6f\xd4\xb2\x27\x3a\xd7\xf1\x9e\xb9\xeb\xb8\xac\xc1\xad\x5c\xc7\xf5\x6a\x7f\xa8\xab\xfd\x61\xab\xda\x17\xe5\xbe\x6a\x59\x7b\xad\xe3\x5b\x46\xa0\xa5\x7e\xed\x51\x81\xe3\x7b\x4f\x7a\x20\xe3\xf8\x3e\xac\xd5\xc4\x51\x13\xbf\xf7\x61\x85\xdb\xfb\x0d\x4c\xe6\x0c\xb8\x9b\xe2\x76\xeb\x38\xc1\x1b\x6b\xe1\xba\x0c\x17\x5d\x38\xc0\x3b\x77\x7d\xab\x87\x29\xdb\xc3\xf1\x61\x43\x7a\x4b\xeb\xf8\x26\xeb\x3d\xe3\x34\x52\x7c\xe0\xf2\x3e\xe0\xb3\x27\x35\x7e\x71\xbd\x05\x4d\x71\x41\x3b\xf6\xcb\xcf\x34\x77\xf1\x47\xf6\xd5\x74\x4e\x1d\x50\x1f\x78\xe5\xd4\xaa\x40\x54\xc8\x6e\xf5\x03\xce\x08\x5e\xdf\xbb\xae\xcd\x40\xdb\xde\x05\x97\x1d\x90\x72\x37\xdc\x5e\x43\x37\xdc\x56\x5c\x70\x15\x33\x4b\xb1\x1d\x51\x06\x19\xfb\x99\x2c\xd0\xa4\x1c\x2c\xc2\x62\x4a\xce\xd9\xe3\x09\x51\xe3\xb8\xb8\x31\x64\x84\x06\x19\xdf\x1d\xe9\x8f\xa7\x85\x2e\x3c\x63\x9e\x8d\x6e\x5d\x77\x1d\xbb\xed\xb6\xea\xb2\xab\xb6\x5c\xd1\xff\x72\xf6\x2b\x36\x32\x96\x1f\x4a\x02\xf8\xd6\xb6\x45\x1d\x29\x77\xd9\xe8\xe6\x69\x5e\x0a\x35\xa4\x5a\x58\xf2\x86\xbc\x2d\x46\x40\xe7\xac\x6b\x70\xbb\x6e\x41\x05\xcd\x4a\x09\x92\x0b\x79\x6c\xf3\x4e\xbf\x94\x47\x85\x1d\xc2\x1c\xe1\xab\xf1\x16\x1a\xb8\x06\x53\xe9\xb2\x53\x1e\x15\x45\x63\xe9\x42\xf7\x11\xf1\x2b\xb7\xaa\xfb\x9c\xbe\x79\xf7\xf9\xea\x3f\x68\x59\xae\xfb\x30\x8e\xda\x34\x44\x66\x2b\x96\x44\xab\x06\x8d\xc7\x93\x9a\x09\xd8\x39\xa5\x47\xe4\xc9\x94\x1e\x47\x46\x94\x1e\x91\xf7\x40\xe9\xf1\x8d\x25\x5e\x3d\x96\x2d\x40\x75\x43\xaa\x1b\xeb\x00\x3a\xa3\xf7\x7e\x77\x89\x2b\xec\xe2\xc8\x69\x3d\x95\x5d\x14\xbe\x0a\x2f\x41\xe0\x73\x4a\x00\x21\x38\x6a\x58\x11\x0f\xb1\x5c\x6e\xfb\xe2\x79\x16\xa0\x67\x77\xe0\xb1\x2b\x91\x82\xb6\x9c\xc1\xc6\x60\x86\xb5\x4e\x10\x59\x0e\xe3\x94\x52\xbd\x28\x71\x8f\x9d\x91\x20\x6c\x51\x26\x34\x91\x07\x9f\x93\xc9\x68\x2d\xe3\xe8\xd2\xf7\x60\x62\x01\x8b\x4d\x49\x6b\x01\xdd\x39\x08\xfd\x64\x61\x5d\xcd\x7d\x77\x6e\xb9\x20\xb4\xce\xa1\xb5\x4a\xa0\x47\x18\xfc\x56\x7e\xe0\x59\x9e\x9f\xa0\xd8\x3f\x5f\x21\xe8\x59\xb8\xfe\xc9\x50\xf4\x90\x05\x5c\x64\x01\x5c\xe2\xb9\x1f\x12\x62\x89\x00\xac\x61\x6c\x9d\x43\x74\x05\x61\xc8\x09\xff\x28\xc4\xc2\xa2\x32\x87\x63\x81\xd0\xb3\x2e\xe0\x7a\x87\x1c\xab\x84\x85\x62\xc8\x18\x04\x41\x0c\x2d\x77\x15\xc7\x30\x44\xc1\x9a\xf2\x8c\xb8\x17\xbc\xb6\x89\xb5\x8c\x61\x02\x43\xa4\x67\x10\x5c\xc2\x78\xe1\xd3\x66\x71\x16\x41\xe5\xed\xee\x38\x2d\xb6\x1b\xd0\x69\x4f\x9a\x25\x3d\xb1\x35\xfc\x03\xd9\x94\x7a\xc5\x99\x4e\xfc\x90\x6a\xf4\x89\x38\xd2\x87\x73\xb4\x08\xb6\x94\xf8\x44\x92\x72\x4a\xdc\x20\xa5\x79\x41\xeb\x66\x3a\xa9\xdb\x3d\xba\xf4\x26\x68\x85\xa2\xd8\xc7\x9d\xc4\xf6\x77\x69\x69\x0c\x12\xb8\x00\xcb\x79\x14\xc3\x1b\xcd\x75\xd2\x66\x1e\x6f\x17\x86\xb0\xaf\x3e\x5d\xf3\x53\x9d\x06\x70\xd2\xbc\x1a\x09\x4d\xd7\xa1\x82\x27\xcb\xb9\x25\xdb\xe9\x31\x7c\x1d\x35\xd3\x63\x88\x68\x9b\xec\x0c\xa6\x51\xbc\xb8\x6d\x0d\xe6\xa7\xfd\x77\x2f\xd0\x9f\xeb\xd7\x7a\x0d\x06\x7e\x86\x2e\xd5\x61\x5c\x10\xba\x64\xce\x2f\x60\x92\x00\x62\xcc\x76\xa3\x70\xea\xc7\x8b\xbc\x3e\x83\x17\x23\x69\x5b\x76\xcd\xf2\x95\x3a\xf5\x61\xe0\x25\x10\xb1\x05\x6b\x7b\x7e\x02\xce\x03\xe8\xd9\x8e\x2e\x1c\x4c\xe6\xfc\x3f\x20\xb1\x25\xb1\x8f\xa0\xc5\x35\x04\x11\xaf\xcd\x4d\xdb\x4a\xa6\x49\x51\x74\x9e\x9c\x45\x13\x41\x95\x12\xca\xd7\x35\x10\xa7\xdc\x23\x87\xce\x2e\xdd\x80\x68\x0a\x53\x04\x3f\xa3\x6c\xbb\x0e\x89\xa8\xc5\x55\x80\xb7\x54\x71\x71\x6c\x6b\x0e\x12\xa6\x26\xc8\x34\x0a\xa5\xc8\x83\x64\x09\x14\x89\xf8\x2d\x3b\xa5\x4a\xb7\x58\xd9\x9a\x6d\x83\x15\x8a\xa6\x91\x4b\x74\xfd\xf4\x6f\xda\x92\x3d\xca\xc7\xe9\x9c\xf1\x4a\xd2\x77\xf6\xa5\xef\x1c\x3a\x76\x14\xd2\x02\x75\xa2\x6d\xea\xb9\x11\xdd\x7f\xe0\xd8\x04\x22\x32\x67\x79\xd7\xd3\xb2\x88\x0d\x9d\x74\x58\x05\x51\x4b\x8e\x3f\x3e\x7f\x2a\xbc\x59\x25\x88\x10\x15\x5b\x44\xa6\xb6\x5e\xbc\xfd\x68\xcd\xa3\x04\xe1\x63\x7c\x48\xef\xba\x51\x88\x80\x1f\x5a\xa3\xc1\xd1\x81\xe5\xce\x41\x0c\x5c\xbc\x07\x59\x3d\xea\x17\x4e\x1c\x2b\x80\x08\x91\x3f\xb0\x60\x33\x5f\x2f\xe7\x30\x4c\xfa\xf4\xd7\x82\x96\x3f\xf3\x43\xeb\xca\x47\x73\x0b\xb0\x87\x87\xd6\xbb\xd0\x85\x16\xcd\x5c\xeb\x39\x94\x8f\xcb\x05\x21\x96\x66\xce\xa1\x45\xbb\xc3\x2b\x15\x59\xf2\xb3\x52\x33\x5d\xda\x04\xf2\x65\xd8\xc7\x46\x8e\xf6\x1b\x8e\xcd\xb4\x11\xaa\xa3\x1b\xf9\xea\x33\x86\xf9\x1a\x2f\xe4\x17\x52\x9a\x06\x18\x4f\x09\x8b\xab\x46\x83\x68\x89\x6b\x04\xf4\xa8\x9c\xa2\x75\xf1\x02\x26\x6e\xec\x93\x37\xad\xde\x3b\x56\x42\x5f\xbb\x52\x78\x11\xf8\xab\x20\x86\xc0\x16\x93\x5e\x2a\xa4\xe1\xdc\x57\xbb\x5b\x29\x6f\x62\x00\xc6\xa8\x98\x28\x12\x5f\x22\x97\x78\x4e\x9f\xbf\xfe\xf8\xc7\xcb\xb7\xa7\x3f\xbe\x7e\xf9\xa2\x56\x7e\x6b\x45\x17\x57\x36\x6c\xe2\x01\x8b\xa3\x80\xb1\x5a\xe9\xe1\x56\xaa\x62\xf6\x41\x3c\xad\x69\x60\x69\x3a\xca\xfd\xc6\x9b\x7f\x4d\xf5\xfe\xc7\xb5\x05\x3c\xa2\xe8\x90\xa6\xa5\xa4\x87\x60\x01\xe9\x81\xed\x10\xcd\xe4\xca\x0f\x02\x0b\x2c\x97\xc1\x1a\xcb\x70\x84\x0e\x1d\x04\x81\x85\xa2\x0b\x18\x26\x7c\xd9\x93\x2d\x81\x10\x68\xca\x25\xd4\xcf\x39\xf9\x69\x0e\xad\x69\x14\x04\xd1\x55\x5a\x31\xac\x49\xe1\xef\xfb\x54\x93\x6b\xfb\xf1\xdc\x1a\xd4\x82\x7f\xf0\xa7\x07\xd4\x29\x2c\x19\xb1\xd2\x73\xdb\x7e\x46\x8c\x7d\xcf\x84\xed\xef\x99\x6c\x11\xcc\x63\x95\xdb\x9c\xe9\xf8\x48\x7a\x32\x49\x9d\xe9\x0e\xf3\x52\xf1\xa3\xea\xf4\xf9\x6b\x7c\x96\xe1\x39\xf7\x82\x3e\x62\x84\x3e\x2a\x9b\xed\xcb\x28\xf0\x5d\xbf\xc6\x84\x7f\x2f\xbf\x70\x0f\xe6\x3c\x6f\xe0\x5d\x9c\xf6\xa2\x6e\xb7\x32\xf3\xc9\xd7\xd7\x2d\xe6\x3e\xc0\xed\x78\xe5\xc1\x10\xf9\xc4\xf3\x72\x33\x8b\x81\x6a\x4a\x99\x25\x41\x66\xe5\xba\xce\xa2\x30\xd0\x14\x25\x53\x6d\xd5\x64\x16\x99\x9c\x9e\xaa\x48\x02\x9b\x8e\x1f\x6b\x71\x3e\x56\xa7\xa1\xb5\x76\x34\x72\x6c\x46\x9b\x85\x7f\x1d\x55\x29\x1a\x87\x92\xb4\xe5\x27\xef\x63\x3f\x41\x7e\xc8\x7c\x10\xfc\x2a\x33\xe9\xda\xe5\x2a\xc6\x1e\x91\x64\x93\xd5\xf9\xc2\x27\xbb\xc8\x81\x73\xb6\x7f\xac\x8a\x06\xa4\xc5\x36\x33\xfd\x8a\x61\xe0\x5d\xf8\x11\x5c\x66\xc5\xf8\x86\xec\xc9\xcd\x37\x90\xee\xba\x37\xdf\x79\x0d\x7b\x8d\xf1\xeb\xb6\xec\xb5\x4a\x96\x5a\x5d\xfb\x68\xe5\x62\xc8\xce\x05\xcd\x88\x32\x0d\xb9\xa0\x6e\xcf\xe9\x6d\x23\x01\x6e\x94\xdb\x1c\x74\x99\xce\xc8\xc8\xd2\x3c\xfa\x46\x7b\x45\xfd\x11\x3e\x16\x4a\x3e\xa5\x37\xf6\x7c\x10\x44\x33\xb1\x05\x72\x53\x00\xae\xc7\x69\x0c\xc9\x39\x91\xac\xd8\x1f\x57\x20\x44\x78\x97\x66\x15\x24\x5b\xf2\x5b\xbe\x25\xff\xd0\xcc\x78\x6a\x64\x98\x6d\x81\xbe\xc8\x0e\x38\xd7\x3f\x68\x1b\xd2\x59\x90\x3e\x94\x9b\x06\x8c\x24\x8e\x8d\x0b\x9f\x0d\x8e\x92\xeb\x4a\xd6\x4a\x78\xc1\x86\x8c\xa4\x07\xcd\xb9\xf5\xd8\xe0\x35\x87\xbd\xd0\x26\x0d\xe4\x19\x91\x9b\x0a\x8e\xfd\x2c\xb5\x19\x3d\x73\xc5\x9c\x17\xbe\xaf\x3d\xda\x1b\x7b\x34\x04\xd6\x98\x7e\x71\xe4\xe0\xf7\xb7\x6d\xe8\x54\x7e\x56\x1b\x1f\x97\x20\xa6\x4c\x6f\x0c\x79\x21\xec\x8f\xc4\xf4\x48\xb3\x02\x13\x75\x9a\x42\xc8\x89\x94\x20\x8b\x06\xfc\x0c\x60\x56\x4c\x10\x7a\x35\x4d\x92\xb2\x21\xb1\xc0\x18\xf9\xc8\xd0\x18\x09\x3d\xff\xd6\x63\xb2\xe6\xc9\xfb\x83\xe5\xf2\x7d\x45\x4c\x96\xc8\x4c\x93\xeb\x4f\x21\x80\x71\x24\x0c\xef\xdf\x6c\xae\x1a\x76\x9f\x9b\xda\xea\xc0\x31\xf6\xb7\x01\xc7\x38\x32\x48\xaa\xc2\xb7\xce\x9d\xbf\x5c\xfb\x9e\x04\xc2\x38\x34\x01\x61\xf8\x9e\xbd\x15\x08\x86\x0a\x06\xd5\xc1\x31\x52\xa2\xda\x07\x60\xc6\xed\x03\x33\x9e\xe8\x46\xaa\x00\x4f\x53\x67\x72\xec\x15\x71\xe9\x3b\xb6\x9f\xbc\x85\x57\xb5\x01\x20\x6d\xf9\xf4\x0d\xfa\xb0\x39\x93\xbe\xad\x26\x33\xa4\xcb\xd2\x88\x3d\xdf\xe1\xf3\x8b\x8d\xc3\x53\xda\x5d\x8c\x4d\x9f\xd0\xca\x99\xcc\x9a\x63\xe7\xa9\x33\xda\xc5\xcf\xe7\xe3\x8f\xb7\x47\xa4\xcf\xb5\xbd\x12\x02\x7d\x7b\x52\x97\x38\x3f\xab\xf1\xa9\xd4\xf9\xc2\x08\x21\xce\x66\xb3\x18\x36\x83\x38\xed\xad\x40\x53\x84\x31\xa8\x88\x23\xdf\x36\xe5\xc6\x57\x8d\xc9\x58\xc3\x7f\x0b\xaf\xd2\x0e\xb1\x55\xe2\xeb\x97\x9e\x8f\x2c\x0a\xca\x3e\x92\x9d\x35\x61\x25\xdb\xf5\xd6\xba\xaf\x01\x4a\xa2\x9b\x0f\x37\xe2\x90\x26\xdd\xf0\x14\xef\x85\x42\x22\x62\xde\x59\x22\x79\x3a\x3c\x0d\x63\xbd\x8e\xaa\x2d\x9d\xa6\x1f\x6a\x4b\xa4\xdc\xc6\xcb\x8e\xe2\x55\x01\x4b\xb2\x1b\x85\x2e\xd0\x3a\xd7\xc9\x99\xd9\xd2\xc3\x2e\x89\xa2\x2d\x5d\xeb\x77\x82\x36\xe8\xe7\xd1\xe9\xeb\x5f\x67\xd3\x9f\x0d\xc5\x59\x43\xb6\xe3\xee\x44\xd9\xe3\x6d\x88\xb2\xd4\xf9\x64\x28\xcb\x4a\xf9\x07\x9e\x56\x8b\xb1\xdd\x4b\xb0\x0f\x22\xe9\xed\x8b\xa4\x23\x39\x46\xe5\xa9\x51\x44\x2e\x37\x89\x91\x28\x4f\xb2\xa5\xe8\xe2\x71\x4b\xb2\x8e\x9b\x06\x78\x66\x63\x3b\xa5\xea\x15\x07\xdf\x16\xb7\x41\x1b\xff\x29\x27\x72\xe9\x9a\xf8\xb8\xac\x0b\x3a\x20\x3e\x6e\x00\xef\x56\xe7\x53\xcb\x94\x59\x5b\x15\xf2\xbb\x14\xf3\x45\xb6\x2c\xba\x4e\x77\x0b\x65\x31\x4d\xc6\x2c\x22\xea\x37\x4b\x56\xdf\x0c\x5c\x5d\x29\xc3\x1a\x4b\xb1\xb6\x2c\xbf\x17\x06\x06\x36\x23\x5a\xba\x19\xa4\x6e\x01\xa4\x74\x5f\xd5\x5e\x86\xcc\xd0\xa4\x80\xb6\x52\xeb\xb1\xb8\x9b\xfa\x02\xd2\x2b\xdb\x6a\x3a\x8b\x50\xae\xbf\x1f\xe7\x13\x4b\xd1\x60\xcc\xf6\x54\xe2\xda\xf5\xd4\x92\xe9\x7b\xd7\x68\xb3\xdb\xad\xc3\xf4\xbd\x2f\x05\xf5\xd6\x8e\x45\xee\x66\xf0\x1a\xa6\xc1\xb1\x3b\x0d\x85\x0e\x85\xa2\x49\xc3\x68\x94\x00\xe8\x03\xea\x79\xde\x4d\xd3\xe1\x34\x72\xe7\x70\x85\xb5\x33\x16\x62\xed\x1c\x2b\x0a\xcf\x49\xdd\x3a\xbc\x1e\x52\x34\xb3\x64\x99\x15\xcf\x95\xe8\xd1\xc6\xc3\x9f\x6f\x7c\x17\x0c\xc5\xf6\x2d\x85\xf8\x6c\xf9\x2c\xca\x9d\x49\xd9\x70\x9f\x6e\xf6\x2d\xa3\x24\xc1\xf2\x7f\x6f\x23\x09\x20\x63\x4d\xa3\x55\xe8\x35\x48\x6c\x2b\xff\x27\x45\x2a\xa5\xa7\xa6\xd1\xa6\x93\xe9\xa5\xe2\x24\x89\xb5\x88\x95\xb7\xca\x4d\x6d\x57\x42\xa0\x6e\x71\x34\xaf\x48\xbc\x12\x19\x53\x6d\xb0\xbb\x3e\x46\x29\x4d\x95\x4c\xe2\x93\xd0\x1c\xca\x65\xe2\xc7\x41\x0c\x59\x09\xb8\xc0\x69\x14\xd7\xc7\x45\xa9\xff\xd1\xc0\x2a\x2f\x0a\xff\xfd\x57\x5c\x37\x0a\xca\x3a\x87\x16\x08\xd7\x0a\x7c\xcb\xa0\xba\x72\x55\x21\x32\x01\x4c\xdd\xda\xbc\x6b\x91\x4e\xcf\x6a\x11\x83\xa5\xbe\x5d\x20\x17\x3e\x29\x8f\xc4\x72\xa3\xc5\x02\x84\x5e\x92\x1a\x40\xb6\x14\x84\x15\xe6\xed\xe6\x25\xbd\x51\x71\xbb\x49\x48\x56\xb3\xde\xd2\x05\x66\xf1\x93\x5c\xb4\x68\x27\x81\xee\x2a\x86\x03\xb9\x8d\x37\x18\x95\xd5\xed\x8c\xdf\x3e\xdf\x85\x2e\x05\xa0\x91\x9d\xbd\x89\xe5\xfa\x86\xac\xd6\xa5\xa0\x8c\x22\xea\x8c\xd4\x88\x9d\x89\x0e\x4b\x69\xff\x28\x0c\xa3\x30\x64\xac\x11\xe3\x7e\x5b\xf6\x0c\xd9\xa0\xdd\xd0\x28\x8e\x1b\xe4\x87\x33\x0a\xdc\x99\xdd\xb6\x55\x7c\x11\xbf\x39\x0f\x5f\xfe\xee\x1a\x5a\xc5\x19\x98\x6d\x2b\xe4\xfa\x35\x4d\xdb\x07\xd5\x96\x6d\xcf\x4f\xdc\xe8\x12\xc6\xeb\x81\x3b\x07\x7e\x88\xef\x83\x85\x4c\x99\xb1\x6f\x44\x99\x21\xa5\x74\x7d\xa0\xcc\xf8\x36\xcc\xe0\x87\x93\x66\x94\x19\xed\xac\xa8\x26\x72\x7e\x33\xb8\x80\x5d\x05\x16\xb0\xeb\x42\x05\xf2\x29\x25\x14\xac\xc0\xc7\xf4\xb6\x16\x29\x90\x3b\xb2\x0d\x8e\xa7\x2d\x68\xb5\x15\xd6\x55\x43\xcb\x2a\xb7\xc9\x3c\xc7\xbb\x8c\xed\xf0\x6c\xe9\xdc\xef\xaf\x9d\xe0\x15\xbc\xbe\x9c\xf8\x49\x61\x1d\xc4\xab\xed\xca\x47\xf3\x57\xe1\x34\x52\x5c\x30\x6a\x2a\x21\xf5\x84\x19\xb2\x77\x79\x2d\x68\x7e\xa0\x7c\xa0\x41\xfb\xee\x6f\x60\x27\xb3\x27\x1a\x76\x19\x16\x08\xca\xe4\x44\xfd\x98\xd8\x29\x31\x80\xbc\xc5\x8b\x4a\xd1\x5f\xb9\xb1\xf9\xff\xb3\xf7\xae\xfb\x6d\xdb\xd8\x1e\xe8\x77\x3f\x05\xcd\xdd\xad\x92\x0d\x44\x4b\x8e\x93\x26\x4a\x19\xd7\x71\xdc\x49\xa6\x89\xed\x1d\x3b\x33\x9d\xd1\xe8\xb8\xb0\x04\xd9\x6c\x28\x50\x05\xa1\x38\xae\xcc\x77\x39\xcf\x72\x9e\xec\xfc\x70\x23\xc1\x3b\x75\x8b\xd3\x69\xfa\xa1\xb1\x48\x00\xc4\x75\x61\x5d\xff\xab\xe1\x6a\xac\xe0\xc7\x5a\x1f\xa2\xff\xd9\x1d\x08\x2a\xf2\x2c\x67\x73\xa0\xac\xe6\x32\x90\xd9\x78\xcb\xf1\x47\x8a\xb0\x7c\x19\x5e\x03\xf4\x8d\x3f\xbd\x3e\x3f\x09\x1a\x41\x8a\xdd\x23\xa8\xf2\xa2\x7e\x01\xbb\x4d\x20\xc7\x62\x44\x6b\x2d\x12\xe2\xab\x5b\xc0\x5f\x87\x1f\x4a\x67\xd6\xc9\xc6\xc4\xd4\xbb\x06\xec\x2a\x7c\xe4\xdd\xee\xd2\x60\xdd\xbb\x0d\xa1\x91\x73\xc0\xcf\xdd\x02\xb0\x6e\x95\x61\xad\x01\x66\x77\xa3\x01\x2a\xd4\xeb\x5d\xdd\xca\xf5\x58\x7b\xb8\x3c\xea\xf5\x6e\x8d\x95\xac\x1a\xf5\x7a\xa1\xde\x77\x9f\x16\xf4\x9e\x27\x47\x5f\x1e\xb3\xbb\x61\x7e\xf4\x75\xf4\xfe\x49\x51\xef\xeb\xd3\x9c\x57\xf5\x7e\xa5\x34\xe7\xe5\xbd\xaf\x47\x1c\x4f\xc1\xa8\x17\x79\x9c\xa4\x9c\x6d\x32\x1e\x27\x7b\x1b\x45\x55\x8f\xbf\x91\x19\x2e\xb7\xbe\xff\x2c\x53\xd8\x07\x18\xa3\x21\x6d\x4f\x49\xf0\xe9\xd6\x2c\xf6\x4a\x59\xcc\x39\xc5\xfc\x3c\xde\xe7\xf7\xee\x9b\x91\xc8\x4b\x3a\xf9\x2f\xc2\x56\xe9\x66\x32\x67\x67\x2c\x31\x5a\xfc\x26\x30\x0d\x1a\x50\x98\x8d\x72\xac\xd1\x9a\x9a\x05\xc8\x1f\xe6\x98\x5f\x6d\x05\x38\xeb\x05\xa8\x30\xeb\xf1\x1b\x5e\xda\x63\xa2\x08\x64\x79\x13\x1e\x13\x92\x3d\x5a\x0e\x23\x7e\x21\x3c\xf8\x47\xf7\x84\x07\xbf\x82\xf3\xc5\x3d\xfb\x8e\xaf\x1d\x81\xbe\xda\xef\x62\x77\x49\xbf\x0b\x73\x13\x5e\x17\xc5\xbb\xb4\x3c\xe5\xf3\xe3\x74\xca\xe7\x45\x3f\xb6\x3e\xe0\xef\xaf\x8e\x18\x9b\x70\xc4\xc8\x93\xc3\x47\xe0\xc9\x06\x4d\xf7\x4a\x6a\x5c\xb7\x1b\x86\xba\x20\xbf\x64\x63\xf8\x66\x9d\x30\xee\x6d\x25\xd7\xe6\x82\x11\xb7\xf8\xd9\x1d\x30\x08\xba\xf2\x42\x8a\x08\x1a\xc5\x9d\x68\xd4\xeb\xa4\xc7\x5f\xfd\x30\x96\xf6\x2c\x78\xda\xd0\x0f\x23\x31\x29\x6c\xc4\x0d\x23\xcc\x9a\x24\xbe\x40\x27\x8c\xdc\x54\x55\x38\x61\x5c\x21\xca\xb5\xad\x21\x85\x84\xa2\xd1\x9a\xa7\xef\x2f\xe3\x80\xd1\x44\xb7\x56\x5f\xa6\xd6\x05\x63\xf9\x20\xc5\xb5\xaa\xfe\x17\xc8\x6e\x92\xcd\xca\x98\x38\x6a\x24\x9a\xe1\x3a\x27\x0d\x82\x7e\x43\x43\xda\xbe\xbc\x5d\xde\x61\x43\xaa\xea\x94\xea\x6e\x4d\x79\x50\xd2\x56\x86\xd5\x4d\x15\x71\x7e\xaa\xfb\x4d\xfe\xf8\xe8\xe4\xdd\xcf\x3f\x5d\x3d\x5c\xc4\x9b\x03\x98\x01\x5b\xf5\xd1\x88\xa0\x30\xe4\x88\xc2\x1c\x28\xe0\x38\x15\xaa\xb3\x98\xd5\x62\x23\xa8\x1c\xdd\xc6\x16\x8b\x24\xcb\x16\x07\xe7\x50\x99\x52\xf2\xee\x1f\x9d\x86\x60\x1d\x32\x6d\xca\x67\x74\x05\x11\xa8\x5c\xf9\x86\x78\xf6\x96\xaf\xae\x23\x9f\xc3\x54\xc2\x2d\xcb\x5c\x9d\xb9\xbc\x03\x89\xae\xe1\xd5\x07\x18\xd3\x31\xd6\xd9\xbd\xce\x5e\x39\x14\x6c\x23\xc6\x3d\x91\x9b\xbf\x8f\x55\x8b\x21\xf5\x86\x1f\xb8\x49\x43\x1a\xfc\x57\x49\x77\xb1\x27\x4f\x68\x2a\x7e\x8f\x63\xc9\x08\x3e\x23\xf0\xb9\x15\xd4\x47\x84\x26\x5c\xd1\x0d\x24\x98\xb1\xf6\x7a\xa5\xb6\x84\x8c\x2b\x67\x93\xd4\x87\x33\xa0\xc8\xbb\xc0\xfc\xa7\x68\x6f\xbb\x82\xd9\xe0\xc9\xd8\x54\x02\xb6\x6b\x18\x1a\x97\x08\x61\x63\x84\x34\xf6\x1f\xe2\x91\xc8\x77\x81\xaf\x10\x31\xd0\x27\x2f\xa4\xa1\xc1\x41\x2a\x91\x31\x84\x14\xfa\xc1\xd5\x3a\x12\x58\x34\x12\x64\x96\xd8\x2a\x0f\xff\x2b\xb7\x0a\x1f\xea\xda\x36\xca\x11\x6b\xad\x6a\x9b\xfc\x2b\x98\x69\x7b\x20\x23\xf7\x51\x6d\x0f\x7d\xae\x8d\xf0\xc5\x2f\xd0\x3d\x9c\xe5\x03\x6c\x88\x6d\x71\x03\x43\x83\x20\x3a\x23\x18\x8d\x8c\x9b\x6b\xcf\x0f\xa9\xc1\x58\x05\xa1\x85\xf0\x42\x9e\xd8\x06\x18\x04\x8d\x09\x0a\xaf\xf9\x12\x92\x5b\x03\x5e\x41\x0f\xaf\x2f\x15\x4d\x49\xa1\x45\xb5\xe0\xdf\x7f\x66\x3f\xc6\xa7\x4b\xfa\x31\xa6\xbd\x20\x1f\x82\xbe\xf9\x3a\x3c\x21\xde\x95\x70\xa1\x5a\xce\x6e\xc2\x77\x5d\xd6\xaf\x6d\x61\x1e\x8f\x9b\x16\xbf\x72\x78\x8d\x39\xbc\x2c\x4b\x22\x74\xeb\x12\x0d\x4c\x65\x87\x7e\xb9\x42\x06\x83\x8a\x95\xe5\x56\xaf\x02\xc4\x88\xa6\xab\xfc\xa7\xe6\xe7\x4b\xa6\x39\xfb\xee\x38\x18\x29\x47\xd1\x92\x6a\xc7\xd9\x95\x5f\xc5\xcc\xa7\x88\xc0\xe2\xd1\xd4\xf5\xda\x94\x26\x11\xd9\xeb\x00\x9a\x68\x48\x33\x97\x46\x56\xcb\x5e\x5f\x15\x08\x6b\xd9\xa2\xb5\xee\xd3\x8f\xd7\xe3\x3e\xbd\xa6\xaf\x8b\xec\xd1\xf9\x2e\xc8\xcf\x1b\x96\x29\x1d\x0e\xc4\x1d\x70\xa6\x8c\xa1\xf1\x5f\x6a\x79\xed\xfa\x8e\x96\x5e\xf5\x0b\xc6\x69\x6f\xc8\x9c\x66\xd6\xfb\x72\x18\x8b\x7b\x84\x27\x33\x26\x68\x6c\x69\xb0\x7a\xa5\x0e\xd5\x4c\x99\x74\x91\xf4\x01\xc8\x52\xdc\x04\x68\xba\x28\x75\x7b\x79\x7b\x42\xb3\xa6\x37\x92\x73\x33\xe7\x9e\x00\x45\x8e\xe3\x55\x02\x2f\xcf\x57\xa4\x66\xe0\x54\x78\x04\x99\x6f\xe5\xfd\x66\x52\x02\x19\x19\xe5\x90\xbd\x4b\xfa\x63\x14\x0d\x46\x6b\x36\xf6\x42\x4a\x68\xcc\xc2\x24\x6f\xbd\xbb\x13\xc3\x8f\xab\x6c\xcd\x51\x35\x1d\x8a\x8b\x51\xb3\xe0\x28\x57\x66\xa2\x4a\x55\x1f\x95\x12\x91\x6e\x06\x23\xb7\x38\x0f\x7d\x39\xa5\xc0\xe9\x24\x5a\xb5\x84\xa5\x8a\xa0\xd4\x1c\x97\xa5\xe7\x8b\xdd\xc7\x9b\x9a\x2c\x9e\xb4\x2e\x33\x53\xc7\x82\x13\x39\x16\xe7\xa2\x62\x8e\xb2\x05\x97\x9b\x9d\x75\x6e\xe7\x05\x6d\x8e\x59\xa9\x44\xcc\xcd\x93\x42\x6a\x79\x20\xd5\xd1\xca\x0f\x29\x19\x7f\xf2\x66\x3d\x54\x63\x7a\xdb\x96\xf8\xf1\x6a\x7c\xca\x69\xf3\x47\x9d\x3b\x7c\x34\x48\x77\xaa\xf2\x6b\xdd\xc4\x1d\x68\x21\xcd\xc0\xa3\x4d\x13\xa0\x25\x91\x6c\x52\xed\x53\x78\xd9\x66\x84\xac\xc0\x99\x48\x8b\x2d\x28\x4c\x9e\xa0\xf1\xe7\xc2\xbb\x50\xc4\x01\x73\x43\x90\xf2\xe2\x06\x7d\xf3\x95\xc8\x62\x7b\x28\x33\xe7\x97\x92\x1c\x25\x16\x38\x22\xed\xad\xcc\xb4\x9f\x73\x99\xcd\x46\xac\x55\xd7\xd3\x7d\x5b\x8b\x34\x73\xe9\x7d\xca\xfd\x5e\xd9\x02\x4d\x50\x78\xdd\xbe\x82\x14\xdd\xc0\xdb\x5c\x17\x1a\x8e\x5b\xee\x2f\xd4\x68\xcc\x30\x2e\xbc\xc0\x80\x73\x95\x06\x3a\x24\x38\xc8\x66\x5e\xd9\x5d\x78\x08\xef\xa7\x21\x25\x88\x8b\x42\xf5\x43\x98\xc5\x85\x17\x18\x42\xae\x52\x81\x5c\xb4\x7c\xff\x8f\x3e\x4d\x83\x10\x8d\x8c\x53\x48\xaf\x1b\x8d\x01\x89\x0a\x53\x5e\x7e\x81\x61\x14\xd5\x2b\x18\x49\xc3\x6e\x9f\xc3\xab\xd0\x68\x19\x6f\xb9\xe9\xae\xbe\xd3\x13\x44\xa1\x10\x04\x9b\x77\x38\x5b\x27\x9b\xc8\xa4\x09\xc3\x19\xcc\xa8\x8f\x32\x64\x09\x98\x3f\x0a\x1b\x4f\x62\x3c\x04\x19\x00\xc6\xbc\x70\x2f\x99\x49\x3d\xb5\xca\xae\xf2\x58\x1d\xe4\xac\x47\x8b\xaa\x4c\x0a\xae\xfa\xac\x03\xbe\xfc\xa1\xd0\xfe\x53\xf3\xd0\xcc\xb1\xa1\x3c\x75\xc8\x26\x12\x0a\x7f\xae\x00\xc4\xea\xb0\x43\xdd\x33\x40\xad\x61\xc6\xe9\x80\xfb\x17\x24\xf1\x89\xdc\x07\x20\xb6\xf0\x03\xd3\x0b\xdb\x72\xff\x43\x42\xe0\x2d\x0f\x39\x98\x4c\xe1\x30\x1b\xc7\x08\xc3\xd0\xbb\x62\xed\xb5\xd5\x9e\xe3\x05\x03\xcc\x6f\xbf\x25\x1d\x05\xd4\xad\xb1\x1e\x5f\x81\x1d\xa8\x91\xfb\x7b\xf5\x1a\xf8\xe3\xc1\xa7\xbd\x7f\x9d\x32\x21\xb0\xca\x6b\x40\x4a\x86\x14\x5e\x5d\xa1\xd1\x41\xec\x2e\x20\xa3\x34\x63\x07\x82\xc5\x5c\x05\x1e\x2f\xae\xc6\xfc\xbe\xc0\x65\x57\x10\x82\x25\x32\x69\xa6\xe2\x8e\x19\x67\x13\xc6\x71\x9a\x55\xf9\xd3\x76\x75\xd1\xd6\x04\x8c\xfe\x26\x93\x82\xc2\xc2\xae\x34\xcc\x92\x26\x38\xac\x99\x0f\x49\xda\x7b\x5d\x26\x40\x92\xbb\x4b\xac\x42\x5b\xbb\xcf\x4b\x98\xb1\xbd\x85\xfa\xbb\x8c\x03\xf8\x67\xd0\xc9\xd0\x6b\x7d\x3d\xce\xe1\x55\x03\xe1\x2f\x5d\x27\x66\xdd\x3f\x83\x58\x44\x82\x9b\xd5\xfc\x05\x3a\x89\xdc\xb7\x8a\x90\x13\xcf\xc4\xa8\x5e\x0c\x4e\xc1\x3b\x74\xb2\xdf\x2e\x48\x8a\xb6\x9b\x8b\x59\x11\x51\x36\x19\xc1\x6d\x37\xf5\x28\xc7\x6e\x68\x15\x4f\x03\x42\xf5\x5a\xf2\x77\x86\xc7\x68\x38\x0d\xff\xdf\xff\x6b\xe6\x03\xa7\x76\x81\x69\xc9\x6a\x4a\x5d\xb9\x80\x63\x62\xfd\x86\x6b\x36\xcd\xd9\x69\x12\xc5\x7b\xe9\xd7\xf1\xe0\xeb\xbb\xb2\x4e\x29\xb2\xd0\x89\x71\x05\x6b\xb6\x59\xe2\xd3\xae\x3a\x25\x3c\xb6\x21\x41\x06\x0e\x78\xea\x53\x91\x07\xda\x88\xc9\x9a\x93\xf2\x25\x5a\x2c\x11\x66\x55\xe1\xdd\x42\xe3\xed\x42\x8e\x94\x01\xbf\x99\xdb\x3c\xfd\x02\xe7\x52\x20\xf7\x4f\xe4\xfc\x0b\xc2\x94\x08\x07\xc7\x1b\x8f\x5e\x67\x58\x93\x55\x5c\x15\xb3\x9c\xc3\xda\x78\x91\x94\x38\x72\xcf\xec\xc8\xc1\xdf\xae\x7f\x79\x43\x9f\x5c\x56\xb3\x23\x82\x7f\x5c\x8c\xdb\xd8\x5b\xde\x68\xaa\x73\x1b\xf2\xd3\x9f\x8f\xdd\x48\x23\x2a\xa7\xaf\x72\xa5\x58\x17\x92\x2b\x7b\x20\xd6\x70\x3d\x61\x21\xd5\x27\x38\x9d\x18\xd8\xf7\x42\x6a\x84\xd7\xc1\x4d\x68\x78\x78\xe4\x7d\xf4\x46\x33\xe8\x1b\xaf\xce\xcf\x4f\x0d\xbe\xaf\x0c\xb9\xc9\x0c\x7a\x4d\x82\xd9\xd5\xb5\x71\x84\x3f\x06\xb7\xc6\x38\x20\x86\x32\x69\x24\xf1\x16\xbe\xf7\x01\x19\xa7\x24\x98\x20\x7a\x8d\x66\xa1\x63\x70\x7f\xf4\x49\xc0\xe8\xc5\x65\x30\xa3\xc2\xf3\xc3\xc3\x46\x30\x23\xc6\x48\x77\xf5\x77\x9a\x42\xec\xc8\xee\xb4\x59\xe7\x4a\x40\x89\x13\xa6\xb6\xf9\xcc\x17\xdf\x7c\x0d\x6c\x0f\x65\x74\xd4\x2c\x8b\x61\xdb\x00\x40\xff\x32\x11\x4c\x75\x54\x3e\x43\xe7\x3f\xf3\xde\x90\x83\x86\xe9\x28\x50\x29\x44\xfe\xa8\x1a\x37\x73\xec\x8c\x86\x76\x55\x15\xba\xc2\x1d\x44\x77\x84\x7f\x21\xe1\xfb\x2f\xf6\x42\xd6\x1f\xfe\x8f\x18\x1f\xdf\x6b\xa1\xc4\xc7\x99\x89\x57\x6d\x1e\x94\x81\x70\x1e\xa2\xa9\x76\x11\x52\xfb\xbe\xea\x4a\x74\xea\xc2\xbe\x1b\xc5\xeb\xae\x33\xb7\xe7\x22\x37\x72\xe5\x3d\x2c\x02\x10\xe2\x4c\x48\x57\x85\xe9\x90\xd6\x70\xe7\xea\x37\xe4\xda\xae\xdd\x94\x02\xfa\xbe\xd3\x7d\xbe\xa2\xff\x9a\xa1\x57\xbf\x54\x5f\xbb\x0d\xd3\x22\x21\x32\x16\x51\x1c\xdc\x96\xb7\x21\xcc\xa3\x62\x83\x52\xf7\x51\x13\xf4\x90\xee\xd3\x81\x86\x14\x52\x01\x4d\xf3\x38\xef\x63\xf3\x68\xb0\x18\x4c\x48\x0e\x21\xe4\x51\x01\x34\x0d\xdf\x04\xd5\x90\x34\x8d\x06\x16\xe3\x7b\x7c\x5f\x94\xa7\xe6\xfb\x5a\x58\x94\xaa\xf1\x7e\xbf\x0a\x2c\xca\x62\xbd\x7f\x5c\xd4\xfb\xc7\x2b\xf5\xfe\xf1\x66\x7a\x5f\x08\xea\x92\xc2\x4a\x5a\x73\x1a\xa1\xaa\x31\xae\x21\x8d\x50\x4e\xaf\x06\xcc\xb7\x28\xbc\x96\xd6\xb8\x0d\x72\xbd\xa5\x8c\xaf\xd2\xf8\xed\xad\x0d\xc5\x83\xf5\xca\xc3\xd3\x99\xf2\x70\xee\x16\x62\x9b\xf0\xe4\xe2\xfc\x5c\x5e\x06\x9f\x12\x3b\x7f\x31\x64\x4a\xc2\x57\x0a\xa2\xde\xe6\x15\x57\x4d\xa8\xb2\xd7\x68\xd9\xf7\x16\xc1\xf4\xd0\x0c\x25\xcd\xfd\x61\x2a\xcd\xf7\xe6\xb9\xc0\xd4\x10\x54\x5f\x02\x86\x2c\xb0\x38\xe5\xa2\xce\xe3\xbc\xae\xe8\x31\xe3\xc1\x93\x88\x88\x21\xf1\xa8\x37\xe4\x0c\xdc\x32\x8a\xa2\x9c\x62\x4f\x5e\x59\x29\xb4\x10\x36\x44\xe9\x00\xbf\xac\x16\x53\x7a\xf4\x0b\xe3\xb6\xd2\x86\x2e\xeb\xfb\x68\x54\x21\x3f\x18\x46\xb1\xde\x49\xe3\x67\x13\xa4\xd0\x6a\x93\xb8\xa3\x26\xb7\xcd\x56\xb6\x2d\xa6\xc6\x51\xea\xdc\x0a\x6b\x57\x8d\xbe\x6c\x21\xad\x5b\x32\x73\x2f\x94\x6c\xb2\xf2\xbc\xad\x73\x3a\x84\xc4\xc4\x7a\x72\x4d\x27\xfe\x19\x1c\xf3\xfd\x22\x38\xf8\xb5\x07\x39\x7f\xdf\x84\xe5\xae\x70\xd2\x4d\x6d\xf5\x35\x21\xe4\xe8\xe4\x2e\x81\xfc\x4a\xc1\xe4\x3c\x14\x30\x39\x7b\x1a\x9a\xd0\x72\x30\x39\x8f\x36\x05\x93\x93\xa2\xd9\xe5\x58\x39\x8f\xd2\x58\x39\x85\xf6\xee\x85\xb1\x6e\x1e\xad\x05\xeb\x66\x6d\x5a\x82\x54\x73\x9b\x41\x3b\x59\xe5\x10\x22\x31\x53\xec\xab\x4a\xf4\xd0\x0f\x5e\x9e\x4f\xd8\xd0\x51\x5c\x37\x30\xc1\xa3\x22\xd4\x81\x3a\xa1\x19\x28\xfd\xfc\x4a\xaa\xec\x22\x15\x76\x19\x28\xc0\x95\x90\xfe\xf0\x48\xc4\xf4\x0b\xd3\xba\x2e\x6a\x2f\x15\xe5\x2f\x3d\x03\x62\x19\xa8\x28\xc8\x7f\x45\xf9\x3d\xb5\x89\xd6\x25\xbf\xc7\x4e\x31\xf7\x2c\xbb\xff\x7e\xde\x99\x9d\x04\xbf\x9d\x34\xb0\xe0\x2f\x26\x8c\x37\x8e\xe4\x4f\xb8\xc3\xbd\x7b\xb0\xcf\x6b\x64\xa5\xc3\xf6\x5b\x52\x46\x56\xbc\x0a\x4b\xd8\xa4\x62\x3e\xea\x5c\x55\x78\x58\xc0\xfe\x16\x99\x3e\x77\xa5\x13\xd6\xba\xf4\xee\x86\xee\x0d\x70\xd5\xce\xdd\x48\xb1\x46\x7a\x25\xcd\xf2\xda\xef\x8d\x0d\xde\x1a\xf5\x5a\x66\x23\xab\x69\x66\xcb\xee\xac\xd9\x31\x7a\x25\x2d\x68\x69\x07\x4a\x77\xae\xe6\x75\xd7\x7c\xf7\x72\x37\xc0\xea\xdd\x2b\x76\xac\x28\xb8\xe2\xfe\x94\x1c\x94\xea\x69\x29\xf7\x94\xc6\xb4\xcc\x7d\xfe\xeb\x46\xce\x6c\x64\x6e\xc2\x10\xf7\x0c\x87\x32\xc0\x81\xa1\xe6\xf8\xcb\xdf\xd4\x2b\xe9\xfb\x1b\xb2\x2d\x89\x95\x7d\x63\x4a\xff\x78\xc2\xd7\xc5\x30\xcc\x34\xff\xe8\x7b\xe5\x18\x4e\xce\xc2\xdf\x47\xa7\x7b\xe7\x0b\x6a\xfb\x45\x42\x24\x15\x4f\xab\xfb\xe1\xe6\x6c\x00\x1b\x56\xfe\xaf\x60\x54\x4f\xe5\xb8\xef\xee\x35\x32\x17\xa4\x70\xb7\x5f\xa2\x90\x7a\x98\x5b\xdd\x4a\xf3\xdd\x3f\xca\xab\xeb\xf6\x06\x8b\x41\x6f\xe7\x94\xd0\x5a\x57\x2b\xcc\x04\xe5\x03\x2a\x54\x55\x3f\xd1\xeb\xc6\x9a\xe8\x6e\x89\xaa\x7a\x57\x2b\x90\x51\x55\x3f\x2e\xf1\xc3\x2f\x9e\x83\x86\xb0\xfe\x69\x4d\xf5\xe3\xac\xa2\xba\x36\xa5\x56\x2e\x52\x3b\xeb\xc4\x51\xf2\x02\x14\x18\xfa\x93\xe0\x86\x85\x50\x14\x9e\x14\xa8\xb2\xbf\xff\x73\xa8\xb2\x15\xb9\x4a\x22\xf0\x9b\xeb\xb3\xf5\x0d\xea\x49\x30\xec\x42\x1d\xf7\xc3\x46\x1b\xe6\x61\x73\x1d\xf7\x9e\xd0\x1b\x2f\xa3\xea\xce\xaf\xd8\x53\x5d\xef\xbc\xa9\x58\xd6\xcd\x28\x9f\x13\x15\xd3\xd3\xf5\x28\x9e\x63\x76\xf3\xa1\x39\xc8\xa1\xd1\xd7\xaa\x71\xe2\xbb\xcf\xa1\x02\xde\x81\x9d\xb8\xbc\x3a\x79\x59\x84\x96\xec\x78\x57\x56\x17\x37\x60\xd4\x16\x54\x64\x15\xcf\x80\xd4\x20\x97\xa9\xd3\x4b\x98\xbb\xa5\xe6\xe4\xa7\x20\xa0\x6b\xda\x03\x55\xec\xab\xb9\xb0\xcf\x4d\x56\xa6\x6e\xe0\x73\x93\x8f\xf4\x5e\xd4\x7d\x66\x55\xbd\x64\xf1\x72\x8e\xe5\x1c\x2f\x14\x0d\x54\xe1\x6d\xbe\x3e\xc4\xa2\xa7\xcb\xa1\x75\xac\xc9\x4e\x90\xbb\x4b\xaa\x8d\x05\x32\xf5\xc0\xf7\xcb\x1b\x0b\x9e\x6c\xca\x58\x90\xbf\x15\x8b\xbd\x07\x39\xb3\xfc\xa3\x62\x41\xc4\x35\xf2\x44\xb3\x20\x24\x29\x04\x64\xb0\xf0\x7a\xec\x09\x4f\xfe\x9a\xf6\x84\x5a\x91\xba\x00\x1e\x10\x07\x86\x1e\x4f\xba\x39\x86\xad\x08\x36\xbd\xa9\xc3\x5e\x25\x29\x58\x90\x9c\xac\x2f\x5b\x43\xbe\xd0\x93\x1a\xf2\xc2\xad\x15\xe0\x11\x60\x93\xba\x88\x6b\x60\x03\x27\x40\x1a\x23\x11\xc7\x8e\x80\x65\x06\x8c\x02\xfb\x44\xa2\x3e\xe0\xc6\x88\xbc\x35\xa3\x81\xe9\x62\x7d\x70\xc4\x59\x4d\xc1\xaa\xba\x07\x09\x37\x71\xaf\xda\x86\xe1\x64\x76\x36\xfc\xfd\xb7\xd9\x02\xb8\xc4\x61\xe2\x7e\xc4\xe9\x28\x85\x97\xa1\xc4\x2a\x56\x99\xb3\x13\x3b\x91\xbc\x8a\x64\x79\x05\x9c\xb9\x02\x84\xf1\x62\x79\x17\xd3\x57\xe5\xda\x32\x2f\xc6\xf7\x4b\xb8\x33\x0e\x88\x42\x43\xcb\xc3\x9e\x35\xc8\xca\xf8\xe7\xc9\x62\xdd\xe8\xaa\x58\x02\x8c\xd8\xd0\xc1\xc7\x3e\x1f\x1c\x71\x2d\x35\x5d\x64\xd8\xab\x41\x12\xeb\xd7\xda\x6e\x27\x37\xca\x35\x63\x12\xeb\x1c\x09\x27\xef\xf2\x34\xac\x06\x65\x9a\xbd\xeb\x3f\x23\x98\xa9\xb1\x1a\x9c\xe9\x66\xc0\x89\x97\xd7\xfd\x37\x32\xaf\x2c\xb3\x71\x56\x45\x28\xfe\x82\x37\xce\x32\x30\xc5\x55\xdb\xa6\x16\xa8\x78\x59\xa8\xe2\x0d\x6f\x8b\x3f\xc7\x6a\xdd\xd3\x31\x5f\x3f\x6e\xf1\xc6\x0c\x7c\xf5\x0a\x80\x1c\x2f\xfe\x70\xe9\xcb\x6b\x59\x08\xe3\x5d\xdd\x62\x2d\xe1\x4b\xd3\x99\x45\x81\x39\xf6\x48\x48\x05\x27\x5b\x74\x5b\x8b\x34\xd2\x0d\x65\xb5\x82\x3b\x53\xb8\x94\x2d\x8d\x80\x6c\x2e\x87\x92\xdb\x80\x51\x9c\x92\xe0\x93\xf7\x27\x67\x0f\x41\x26\xf9\x6d\x4a\xfb\xaf\x27\xf4\x5d\x14\xd0\xb6\x88\xef\x49\x62\x31\x56\x80\x56\xd8\xdc\x7a\x72\x06\xef\x23\x22\xb7\xed\xe1\x35\xf4\xf0\x7f\xeb\x5a\x96\xd9\x72\x16\x04\x27\xae\xb4\xe1\xec\x66\x54\xca\x6a\xda\x68\x30\x0d\xfc\xe0\xea\x36\x9d\xc6\x48\xb3\xcb\x9b\xb1\xd4\xc5\xff\xa6\x08\x0b\x94\x43\x21\x2e\x7a\xf8\xca\x4c\x1c\xca\x32\xd1\x64\xc2\x97\xf7\x2d\x0a\xaf\x8f\x30\xbc\xf4\x51\x0c\xf1\x2d\xc8\x07\x7b\x11\x93\x90\x54\x68\x51\xc2\x5e\x75\xe3\xfd\x5e\xa8\x70\x02\x39\x3e\x6c\xaf\x18\x8f\xce\xc3\x57\x04\x85\x61\x16\x92\x2e\xfd\x4f\xe3\xd6\x28\x22\x13\x6e\xf0\xc6\x57\xa5\x20\x77\x4b\xf6\x88\x6b\xeb\x41\x06\x2e\x70\xa5\x8e\x34\x5b\x8c\x0c\x2d\xcf\x81\x8e\x95\x74\x21\x8b\x7e\xb6\x98\xb1\xf6\xb3\x61\x5f\xa7\x18\xa5\xe5\xd5\xb5\xea\xb0\xb4\x27\x88\x12\x6f\x18\xee\xe8\xed\x86\x79\x4b\x80\xd2\xc7\x48\x91\x5a\xd1\xa0\x8e\x98\xf8\xa7\x92\x84\xe4\x9d\x16\xab\x18\x9a\xa7\xa0\xdb\x01\xdd\x2e\xab\xb6\x34\x24\xcf\x8a\x50\xe0\x8a\x23\xac\x05\x02\x57\x05\x6b\x81\xb8\xbf\x5f\x2f\x0c\xf8\xaa\xfc\x61\xa3\x49\x5c\x25\x55\xad\x9a\x98\x1a\x74\xed\x94\x34\x51\x87\xaf\xbd\x57\x06\x1c\x5c\x01\x44\x58\xa9\x47\xcf\x03\x44\xd4\x03\x6d\xeb\x9d\x68\xf2\xe9\x05\x61\xb7\xd3\xcd\x17\x42\x70\x6f\x66\xb1\x17\x80\xaa\x2e\xe1\xb4\x6a\x28\x79\x11\x60\xea\x32\x28\x57\x46\x73\x5c\xda\x4e\xce\xad\x23\x0d\x41\xfc\x18\x68\xec\xc1\x60\x50\xc4\x74\x55\x82\x70\xc6\x9c\x45\xd9\x29\xe7\xd0\xcf\x4e\xf2\x89\x82\xc0\xde\xfa\xe2\x83\x42\xc8\x56\x7d\x0c\x5a\x22\xd0\x45\xc7\xf0\xc6\xc3\x1f\xd0\x28\xa1\x3b\x35\x43\xc9\x92\xaf\x9a\xa1\xe4\xa8\x5d\xed\x50\x34\xeb\xdc\xc2\x63\x29\xc0\xa2\x2d\x1e\x45\x39\x0e\x6d\xf1\x30\x8a\x20\x68\x6b\xc6\x91\xf0\x94\x8b\x8f\xe3\x75\xc2\x8f\x56\x8f\x43\xfb\x48\xa3\x71\xe4\xca\x37\x19\x47\xcc\x0f\x2f\x33\x90\x84\x99\xae\x1b\x49\xf2\x99\x86\x43\xc9\x56\xa8\x1f\x8b\x62\xe7\x17\x1f\xc8\x3b\x25\x08\x54\x8f\x22\xfe\x40\xa3\x21\x64\x4a\xd7\xf7\x5f\x08\x21\x8b\x93\x29\x1e\xa6\x52\x43\xa2\x84\x7c\xd3\x88\x3c\x69\x45\x53\x7d\xce\xfc\xb3\x40\xb0\xf9\x66\x6e\xb4\x15\x32\x64\xd7\x08\xfc\x0b\x0a\xf9\x33\xaf\xad\x2c\x98\x0b\x88\xf5\xeb\x97\xe7\x57\x48\x25\xf5\x44\xf3\x66\x91\x2a\xb8\x11\x0c\xaf\x2f\x03\x48\x46\x17\x33\xe2\x5f\xc4\xa6\xe8\x44\xcc\x5e\x32\xc5\x54\xc2\x3b\xe6\xb9\xe8\x47\xcb\x75\xa3\x68\xda\x5f\x42\x0a\x87\x08\x53\x6e\x7f\x8e\x39\xae\x44\x8e\x4c\x52\x34\xe5\xaa\x1e\x6b\xea\x96\x72\x9e\x34\x05\x98\x5d\x9a\x7c\xbb\x36\x69\x77\x39\xe7\x7c\x32\x45\xd8\x78\xa9\x86\x5f\xc7\xf7\x36\x3b\x7f\xf5\x6e\x1e\x9b\x39\xab\x0b\xe6\x29\x28\xe1\x40\x1f\xe5\x15\x7f\x15\xd2\xff\x6a\x3a\x41\x63\x11\x8c\x73\x4d\x29\x56\xa2\xa5\x52\x1e\x10\xdc\xeb\x41\xf6\x5c\x7a\xc4\x3d\xde\x30\xc2\xb9\x8e\xb9\xfe\x50\xf6\x08\x2f\x8e\x6f\xde\x08\xaa\x60\x39\x72\xbf\xb0\x09\xeb\x71\xa1\xba\x30\x93\xa0\xbd\x71\x17\xca\x82\x99\x56\xf2\x60\x2a\xc8\xa0\x5e\x89\x61\xce\xe8\x04\x1e\x21\xd2\x56\x24\x2e\x05\x8e\x9e\x00\xa8\x7b\xc5\x58\xe9\xb1\xfb\x92\x00\x63\xe7\xda\x66\xf1\x58\xb9\x30\x65\xdc\xa6\xa4\xa5\x21\x0e\x12\xe7\x95\xb9\xe3\xd4\xf2\xbe\x4e\x9c\x7f\x58\x83\x77\xd3\x8e\xc4\x20\xbf\x5f\x1f\x27\x78\x73\xf0\xc7\x4f\xbf\x75\x2a\x7d\x9c\x36\x1e\x7c\xbd\x3b\xc8\x07\x5f\x4b\xcf\x29\x4d\xb2\x5d\xd8\x32\x9f\xa6\x10\x39\x80\x44\x82\xa6\x3e\x1c\xa2\x7f\x0a\xb0\xdb\x7a\x09\x36\x43\x48\x16\x70\x45\xa8\x18\xdf\xac\x32\x3a\x67\xa3\x03\xcc\x0b\x84\x1b\x19\xa1\x26\xd7\x7f\xe6\x01\xe6\xd5\x94\x4b\x8c\x6f\x0d\xfd\xc8\x4b\xac\x0d\x3a\x52\x66\x29\x6a\xf4\x70\xa1\x88\x54\x7e\x94\xdb\x31\xcd\x1c\x79\xa3\xb6\x87\x43\x44\x0a\xc2\x53\x97\xa7\x98\x82\xda\xad\x89\x6e\x26\x9a\x85\x7b\xa5\x9d\x0f\xfe\xfd\x7f\xbf\xfd\x8d\x8e\xff\x58\x1d\x7b\x72\x31\x0a\xdb\x38\xba\xc0\x5c\x4f\xac\xe9\xee\xe2\xb1\xa6\x15\xd0\x94\x15\xe9\x5f\x97\x0e\x31\xd5\x7a\xa8\xa1\xb0\x08\x91\xb7\x2a\xe8\xb4\xd1\xc8\xe2\x81\xed\x65\x52\x0e\xa9\x87\x35\xe8\x8e\x55\x03\xae\xc1\xc0\xab\x46\x77\x5c\xac\xf7\x0f\x8b\x7a\xff\x70\xa5\xde\xd7\x44\x37\x2e\xdb\xfb\xc2\x80\xdf\xc7\x79\x2d\xfd\x23\xae\x0f\x2f\x8a\xf7\xed\x24\xef\x33\xe1\xbe\x4f\x16\x19\xe0\xd3\x65\xa2\x7d\x9f\x54\xc1\x52\x2e\x18\x84\xab\x0f\xfa\xd1\xa0\x08\x27\x6a\x99\x20\x5c\x73\xbd\x01\xb8\x69\x03\x51\x2e\xfb\x75\x51\xec\x2d\x3f\x9a\x99\x98\xab\x3a\x58\xc9\xe2\xbb\x37\x85\xdb\x08\xcc\x23\x69\xfc\x3a\x93\x5f\x48\x16\x7b\x4f\xcf\xab\xb6\x44\x0a\xea\xf5\xa1\x52\x66\x75\x73\xab\x07\xa9\x65\xe7\xbc\x3a\x46\x6d\x77\x29\x40\x3b\x73\xfd\x70\x76\x35\x1b\x27\x15\x9e\xa6\x4b\x9a\xda\xc8\x8b\x22\x1c\x4d\xd0\x0c\xf4\xae\x61\xc0\xd0\x3a\x01\xef\xcc\xff\x32\xb4\x97\x14\x40\x7e\xc2\xe4\x6e\x8e\x7a\xad\x1a\x91\xb6\xaa\xcb\xc1\x92\x41\x66\x0d\xb4\x31\x8f\x9a\xc4\xa1\xc9\x32\x0d\x02\xcf\x1a\xf2\xfe\x29\xec\x13\xa1\xd7\xad\xc4\xd0\xcb\xc1\xd5\xac\x02\x9c\x97\x70\x68\x45\xc8\x79\xab\xea\x68\x12\x39\x61\x4d\x52\x87\x66\x06\xbc\x57\xb1\xe3\xef\x68\xf4\xcb\xcb\xdf\xce\xc3\x6a\xb1\x23\xd8\x54\xec\xd8\xe2\x3a\xe3\x8c\xce\xb7\x39\x39\x4a\x8b\xdd\x45\x4a\xe7\x12\x15\xef\xb2\xca\xce\x45\x24\x66\x79\x00\xd6\x97\xaa\x31\xb3\xcd\xd6\xbc\x6b\x77\xd0\x88\x1d\xc2\xfb\xdd\xba\x93\xef\xff\xf5\x8b\xdf\x7d\x3c\x5e\x9f\xb6\x71\xf1\x6d\x2b\xd9\x8d\x78\x66\x76\xc6\x01\x99\x24\x6d\x2b\xe3\xa5\x8c\x83\xd7\x0d\x9b\xca\x4f\x1a\xce\x68\x30\xf6\x7c\x5f\x72\xad\xb3\xcb\x89\xc7\x3f\x6c\x7e\x67\x36\x76\x42\xae\x36\x82\xc6\x9d\xbb\xf0\x46\x65\xa6\xbf\x34\x9a\x53\xa1\xa5\x35\xf1\x74\x4e\x1d\xa2\x2a\x47\x04\x47\x68\xa5\x1b\xdb\xbf\x97\x3e\x37\xf2\x0e\xe0\x78\x18\x7c\x22\xda\x34\x58\xcf\xc1\xe1\x3b\x7d\xdd\xa7\xe7\x8b\x50\xd6\x87\x3f\x7f\xf0\x3a\x7f\xff\x79\x5a\x4d\xf9\xe1\xd4\xab\x52\x3b\xdd\x10\x4f\xd8\x8b\x53\x77\x3f\x67\xb6\x37\x8b\x7a\xd6\x2c\xd2\xf8\x49\xbd\x2b\x82\xb6\x2c\xe9\x10\x92\xd0\x9f\x5d\x45\x29\x2f\x91\xfa\xb0\x03\x56\x67\x03\x6e\x0a\xeb\x8b\x30\x6e\xc8\xea\x2f\x11\x5c\xac\xa4\x11\x56\x33\x25\x8d\x64\x3c\xa1\xf5\x98\xe2\x22\x51\xaa\x11\xbf\xbb\xb1\x48\xab\x6e\x06\xf8\xa2\x81\xaa\xf2\x7b\xa5\xc0\x7a\x3c\x00\xe6\x01\x3f\x02\x85\xaa\xca\xdd\xbc\x9a\xa0\x9b\x54\x5d\x4a\x55\xa9\x75\x50\x44\x44\x56\x2a\x28\x1b\x0d\xe7\x91\xa6\x78\xcd\x43\xe2\x3d\xaa\xd5\xf0\x55\x8d\xb2\xa1\x42\xb6\x50\xc3\x57\xde\xf9\x42\x05\x5f\x81\xdf\xc3\xda\x92\xcf\x54\x0d\x71\x0d\xc9\x67\xb4\x18\xbf\x65\xf4\x70\x0b\xab\xe7\xf5\xa9\xda\xe3\x9e\x27\x04\x41\x8a\x8c\x02\x7f\xc2\xe5\xc2\x3d\xd8\x15\x07\xfd\x44\x1d\x25\x7c\x7e\xb8\x3f\x9a\x0c\x04\x69\x2f\xed\x98\x56\xee\x18\xf5\xb0\x8e\x37\x11\xc3\x34\x53\x0e\x49\x1d\x81\xa3\xd1\x8e\xdf\xc5\x53\x76\x98\x3c\x59\x18\x8c\xaa\xf4\x75\x7e\x01\x1e\x6b\xfe\x56\xeb\x01\x47\x2c\x62\x52\x57\xcc\xc8\x93\xf3\xdd\x29\x3c\x0b\x9d\x45\x74\x9f\x0f\x35\x35\xe2\xc2\x4e\x92\x3a\x3f\xa0\x18\x12\x35\x2c\x0f\x7f\x60\x03\x50\x3a\xd0\x00\x8f\x90\x8f\x28\xaa\x65\x12\x18\x6b\x90\xb0\x0a\xc9\xd4\x2d\xc4\x10\xac\x9f\x13\xd0\xee\xcc\x84\xaf\x37\xb9\x26\xf6\xe9\xe2\x9e\x4f\xeb\x77\x43\xcb\xaa\xc7\xd6\xa7\x96\x4e\x8d\x76\x17\x3c\xcc\xea\xa3\xf7\x84\x3e\xba\xa3\x61\x89\x2d\xe7\x06\x96\x64\xdb\x59\x13\x72\x5a\xf5\x59\x2c\xc6\x4d\x53\x69\x20\x7e\xd4\xb7\xab\xe8\x95\x06\x9d\x16\x0f\xf7\x31\xa3\x75\xb2\xe4\x72\x23\x37\xf2\xb8\x71\xb3\x90\x06\x93\x77\x48\x28\xd6\x8e\x25\x94\x71\x6a\x1e\x2a\x02\x7d\x0a\xda\x63\x43\x5a\xbd\x99\x73\x78\x99\x8a\x87\xd2\xfc\x09\x6a\x08\x3e\xd7\x59\xd4\x7d\xae\xb9\xb3\x67\x03\xc2\x5f\xb5\xb9\x56\x87\xa7\x4b\xed\xab\x75\x81\xd4\xa5\x1a\xdd\x0c\x54\x5d\xf2\x89\x26\x80\x75\xea\xbf\x8c\x7d\x40\xad\x6a\x46\xad\xd7\xfc\x2e\x05\xe6\x38\x98\xe1\x91\x91\x46\xa9\xe4\xe9\x76\x75\x4c\x91\x3c\x0a\x9d\xd6\xfd\xb2\x18\xba\x85\xb7\xc6\xc2\x3b\x69\x81\xfc\x61\xd5\x5e\xa9\x0b\x37\x5a\xe6\x5a\x9a\x15\xd0\x2a\xcd\x0a\x05\x7e\xa7\xb5\x9f\xdf\xb0\x1a\xb6\xcc\x52\x91\xf8\x91\x0e\x21\x56\x46\x0b\x6e\xbe\x90\x4a\x27\xe1\x3e\x2a\x21\x4c\xda\x4a\x6f\xb2\xb2\x59\x23\x11\xe8\xd6\x6b\xc6\x48\x2b\xa1\xd6\xa2\xd9\x8a\x41\x01\xee\x57\xa1\x75\x74\x38\xf9\xc7\xdf\x76\x1e\x9d\x36\x42\xd8\xdb\xb4\x62\xb8\x81\x72\xea\x2f\x00\x86\xd1\x70\xd6\x3e\x87\x62\xea\xf3\x62\xde\xd5\x50\xb3\x4d\x29\xb2\xd2\x57\xeb\x42\x99\xa3\xb2\x1c\x6a\x66\xeb\xc5\x3d\x13\xbf\xb4\xc9\x92\x51\x47\x87\xe2\x79\xa9\x7b\x44\x81\xa7\xcf\xfd\x12\xfc\x02\xfb\x01\x23\xe5\x2b\x10\x57\x49\x07\xd7\x42\x53\x13\x60\x96\xfb\x25\xaa\x6f\xe8\xcb\x33\xcf\x1b\x4e\x1a\xc2\x96\xde\xa3\x7f\xea\x22\xa4\xf7\x69\x3d\xe9\x95\x71\xf9\x35\xc0\x52\x4f\xbe\xd2\xdf\xaf\xf4\x77\xfd\x19\x79\x9e\xac\xd5\x49\x7a\x0d\x3a\xf9\xac\x3a\x5e\xeb\x60\xe2\x29\x57\x61\x7b\x68\x34\xa0\x58\x4f\xbf\x37\x28\xc8\xb6\x53\xef\x1b\x5d\x35\xce\x55\x7c\xa3\xcb\x3b\x5f\x68\x7b\xd0\xa3\x07\x57\xca\x26\xd4\xed\x2c\x34\xc4\xa5\xd2\x09\x71\xbb\xeb\xd2\xb6\x07\x3d\xdd\xa5\xee\xf9\xba\x1e\x05\xb6\xb9\xee\xdc\x3e\x66\x61\x0e\x83\xff\x2e\x75\x78\x9d\x5e\xe5\xfc\x1a\x19\xe3\xc0\xf7\x83\x1b\x0f\x5f\x29\x2d\x47\x68\x4c\xe0\xad\x41\xd0\x10\x79\x1f\x91\x41\x09\x1c\x8f\xbd\xa1\x31\x26\xc1\xc4\x50\x08\x40\x49\x51\x7a\x4d\x82\xd9\xd5\xb5\x50\x93\xc8\x6b\xd2\x31\xde\x20\x48\xb0\x31\x09\x08\x32\xe0\x65\x30\xa3\x86\x08\xf0\x9f\x11\xf6\x19\x75\x99\x1a\x1e\x36\x82\x19\xc9\x30\x9d\x59\x03\x4e\x37\x6d\xc7\x6b\x92\x08\xa5\x08\x13\x6d\xb0\x86\x20\xf3\x90\xa2\x69\xfb\xf2\xb6\xcd\xfe\x35\xae\x66\xde\x28\x65\x02\x72\xaa\xf8\xdb\x0d\xf9\x65\x6f\x46\xfd\x9d\xe8\x26\x1f\x6f\x2a\x65\x88\xe2\xa1\x52\x0a\xef\xc4\x43\x4a\xc3\x2a\x8a\x93\x57\x3d\x4e\xbb\x5d\x2f\xfa\xf5\xf5\x39\xe1\x66\x27\xe8\x6b\x6e\x91\x22\x1d\x66\x4a\x45\xeb\x0b\x18\x25\x2d\x6c\x72\x73\xb7\xc5\x5f\x21\xb5\xc8\xe3\x1a\xd9\x37\xa7\x52\xfd\x02\x45\xee\x7a\x6f\x70\x91\xc1\x24\xa6\x0a\x25\x32\xfa\x92\x2a\x55\x9d\x53\x5d\xa7\x52\x35\xb6\x38\xad\x43\xf0\xa7\x02\x9b\xe8\x5e\x85\xfe\x7f\x8e\x1f\xfa\xef\x6f\x7e\xfb\xa9\x5a\xe8\x97\xb0\x47\x1b\x09\xe7\x5f\x41\x90\xca\x07\x8a\x68\xbe\x2d\x0a\xf9\xa9\x2a\x98\x6e\x21\x04\x94\xea\x7c\xe8\x9f\x31\x11\x7a\x1c\xc5\xa6\xda\x3f\x8f\x01\x7a\x45\x8e\xf4\x46\xbc\xe4\x5f\x29\xbb\xf4\x17\x99\x26\xbd\x82\xfe\x36\xb0\xab\x2d\x44\x8d\x25\x41\x2d\x0e\xc5\x99\x40\xc6\xf7\x9a\xc0\x1c\xfb\x90\x52\x84\x57\xa7\x92\x7c\x8e\xd7\x42\x21\x13\x90\xc9\x7b\xa5\x92\x4f\xbf\xff\xfd\xdf\x6f\x7e\x79\xf4\xa2\xa1\x6a\x34\xad\x13\x8c\xd1\x8d\x12\x2c\x6e\x89\x88\xf6\x25\xf8\x4d\x7f\x5f\xaf\x1f\x55\x1d\x57\x3a\xd1\x9d\x6f\xe6\x1f\x3c\x3c\xd2\x74\xa3\x9d\xc6\xba\x51\x60\x72\x24\xd8\xcf\xa8\x22\xcd\xa3\x6d\xe7\xef\x83\x74\x4e\x05\x50\x84\xe0\xaa\xa1\xfe\x7d\xd5\xb8\xde\x8b\xc6\x55\x53\xa0\xee\x16\xed\x9f\xf2\xec\xd7\xe9\x0d\x92\x65\x05\x96\x77\xc5\x5d\x0b\xe3\x52\x86\xcd\xab\x01\xba\x56\x41\xe3\xeb\x55\x5e\x06\x37\xb8\x51\xa5\x5d\xbd\x92\x18\xe4\x81\xef\x07\x37\x05\x00\xf1\x7a\xd1\x7f\x7a\xfe\x68\x08\xc9\x28\x86\x36\x6d\xc0\x48\x35\xe0\x79\xd6\xc8\x6d\x34\xd8\x74\xcb\x02\x7b\xab\xc5\xbe\xde\xad\x60\x36\x8e\x03\x63\x84\xa6\x08\x8f\x10\x1e\x7a\x28\xcc\x37\xb0\x62\x6a\xe3\x0d\x70\x51\x4d\x78\xa8\x7c\x2a\x51\xe4\xd1\x6b\x44\x8c\x51\xb2\xe3\x0c\x1c\x90\x24\xbf\x28\x30\x6e\xae\xbd\xe1\xb5\x31\x41\x10\x87\x42\x58\xc7\x41\xa2\x58\x64\xcc\x98\xd2\x1a\xa2\x91\x41\x03\x43\xea\xf7\x8c\x1b\x8f\x5e\x1b\x1e\x75\x8c\x83\xd1\x28\x69\x8e\xe7\x0a\xd3\x5c\xc1\x68\x60\x20\x1c\xce\x08\x4a\x79\x70\x19\x5e\x68\xc4\x29\xe3\x44\x4b\xf4\x1a\x19\x04\x85\xd4\x08\xc6\xc6\x6d\x30\x23\x71\xd1\x09\x0a\xaf\x9d\xcf\xbb\x3e\x2b\xbb\xbe\x4b\xa0\x7d\x4e\x66\x46\xc1\x30\x6c\xfb\x9e\x54\x72\x96\x67\xa6\x5e\x5d\xe3\x2a\x32\xb6\x11\x28\xfd\xc9\x05\xda\x82\xfe\xf0\x7f\x86\xc1\x64\xea\x23\x8a\xda\x6a\x49\x45\xf6\x29\xf4\x09\xb2\xe7\x89\x7a\xb6\x5a\x0f\x5b\xa2\xbf\x95\x43\x7b\x19\x0c\x67\x6c\x82\x78\xd3\x46\x80\xd3\xa9\x6c\x4b\xb8\xf7\x75\xe6\x93\x5e\x36\x9f\xdc\x63\x8d\x80\x0e\x03\xdf\x87\xd3\xd0\xbb\xf4\x8b\x01\x62\x9b\x13\x4b\xad\xa5\xb6\x48\xa4\x1f\x2e\x4c\x34\xb3\xf7\x91\xe8\xe3\x4f\x5c\x37\x8d\x46\x2f\x6e\x0f\x0e\xdf\x34\xc6\x9d\x29\x4a\x19\x54\x98\x4f\x23\x9b\xf1\x1f\x98\x3f\x8e\x05\xa7\x02\xe3\x3b\xd3\xf4\xf0\x38\xe0\xc1\x85\x13\x8f\xa2\x51\x5b\x39\xc8\x71\xb9\xa6\xb1\x9d\x24\x3f\xb4\xc2\xab\x6e\xf3\x03\x63\x74\x8b\xa7\x80\x4f\x0f\x52\x66\x6c\x4b\x2c\x8b\x6d\xc8\x3b\x26\x72\xc4\x14\x25\x3f\x58\x60\xa8\xe5\x57\xf5\x17\x30\xde\x1b\xd9\xb9\xb6\xe6\xe9\xbf\x8e\x41\xe3\x80\xbe\xe4\x72\xe0\xbd\x0c\xdb\x97\x01\x28\xb5\xc3\xc7\x01\x6d\x0b\x79\x35\x35\x03\x9b\xa1\xcd\xa9\x9c\x02\x42\x31\xb0\xd0\x2c\x37\xc5\x8a\x5d\x92\x22\x7e\xa5\x36\x5f\xa9\xcd\x57\x6a\xf3\x95\xda\xd4\x64\xe8\x4c\xeb\x14\x1a\xa4\x26\x68\xa0\xd6\x2a\xc8\x4c\xd0\x40\x8f\xb5\x7e\xcd\xd5\x0a\x99\x09\xd4\x76\xfc\x7e\xb9\x40\xe2\xd2\xbd\x57\x0a\x6b\x12\x7b\x26\x98\x3f\x6a\xea\xcc\x1f\x65\xb5\x57\x02\x8f\xfb\x47\x2f\x7c\x87\x26\x01\x45\x2f\x0f\xd9\xaf\x6b\x18\xbe\x15\xef\x4f\x49\xf0\xd1\x13\x2a\xd2\x1f\x03\x9c\x44\xde\xea\x7e\x30\xa9\xec\x03\xc2\x5c\x5c\x90\xef\xf4\x71\xd6\xeb\x46\x9b\x83\x05\xd3\x22\x68\x6b\x5e\x95\x16\xa1\xbe\x63\x05\x89\x21\x77\xb5\xca\x6f\x82\x21\xf4\x0b\x14\x2c\x0f\xf3\xfd\x97\xd3\x79\x31\x4d\xe6\xab\x42\x99\xa3\x45\x72\x6b\x84\xa8\x29\x10\x4b\x5d\x68\xce\xf7\x59\xdd\x5e\x75\x13\xb5\x76\x0b\x6e\xbc\x06\x8f\xbf\xac\x88\x20\x69\x1f\xc9\x83\xcc\x0b\x88\x78\x6e\x37\xc9\xc0\x1d\x0b\xf3\x35\x37\xa6\x08\x3b\xb5\x08\xe5\xe1\x70\xf1\xba\x75\x65\x1d\x56\x67\x75\xd4\xd6\x62\x53\xd1\x92\x7f\xde\x73\x10\xcf\xef\x47\xff\x37\xfb\xf9\xf5\xfb\x65\xfd\xcd\x8b\xad\x2c\x4b\x7b\x9f\x3f\xbe\x27\x54\x9a\x66\xde\xe7\x8d\x30\x69\xbe\x7a\x9f\xff\x55\x6c\x21\xab\x78\x9f\x3f\x1e\x2c\x8a\x7b\xf3\x48\x77\xcc\x5e\xd2\xfb\xbc\xa1\x57\x76\x05\x18\x4c\x23\xef\xf3\x46\x03\xd2\xd2\x62\x67\xad\x83\x8d\xb0\xad\xab\xc6\xb9\x0a\xb6\xf5\x82\xc8\x37\x29\xef\xf3\xd8\xb9\xbc\x53\xe2\x7d\xde\xd5\x0a\x64\xbc\xcf\x17\x1b\x61\x8d\x7b\x73\xb1\xf3\xf9\xd3\x2c\xba\xf5\x62\xd4\x67\x7d\xde\xea\xdf\x7f\xf5\x56\xbf\x4f\xf0\x96\x74\xfc\xbe\xb8\x8e\x43\xa7\x3c\xc7\x88\xe3\x61\x4a\x44\x82\x58\xf3\x9a\x4e\xfc\x33\x38\xe6\xdd\x13\x52\x65\xa9\x19\xe6\x1e\x1c\xb1\x17\x88\x5e\x4b\x77\x36\x46\xcd\x58\x17\x06\x49\xc9\x6e\x2a\x86\x1f\x11\x72\x9d\x3a\x84\x20\xce\x30\x97\xb2\x8e\x3f\x5e\x01\x6a\x65\xdd\x4e\xb5\xd9\x69\x5b\x07\xba\xc6\x1a\x2d\xd0\xa9\x06\x37\x85\xaa\xd1\xc4\x66\x2b\xfe\x4b\xf9\xbe\xa5\x4c\x66\x1b\x23\x91\xab\xbb\x68\xd7\x60\x6e\xac\x84\x89\xb1\x6e\x8f\xee\x27\x4d\x9c\xb5\x01\xbb\xdb\xff\xec\x0e\xdb\xf4\x4f\xe3\xa5\x9d\xdc\x1e\x4b\x08\xcc\x4a\x76\xb8\x57\xd9\xf8\xe7\x5f\xbe\xff\xfb\x9b\x9f\x77\xce\x0b\x65\xe3\x9c\x5c\x2b\x19\xfb\xcc\x85\x5e\x73\x54\x2b\x44\xa5\x81\x06\x85\xd1\x50\x6f\x5b\xbe\xb1\x94\xf4\xe5\x8d\x17\x58\x52\x5e\x69\x99\xd5\xbb\x46\x70\x74\xdf\x8b\xf7\xd3\xe9\x6f\x1f\x7c\x7a\xf8\xcf\x66\x8b\xc7\xe8\x78\x9c\xe9\x5f\xb0\x87\x9c\x63\xee\x30\x1e\x4c\x3c\x1f\x14\x28\xd5\xca\x27\x5c\x02\xa6\x37\x9e\x6b\x36\x65\xcb\x4c\xf5\x17\x01\x6d\x7c\x32\x24\xfe\x3f\xe8\xe1\xdf\xbf\x82\xda\xff\xf9\x41\xed\x97\x86\x29\xf2\x03\x38\xfa\x02\x50\x89\x82\x87\x4f\x8e\x7e\x1a\xc3\xb3\x46\xe7\xbe\x6a\x4e\x9b\x4f\x99\x1c\xf9\x32\x93\x86\x03\xca\x61\xd1\xee\x7b\xd6\xde\xff\xe6\xc3\x17\x2f\x2f\x7f\xb9\x4f\x6c\xff\xfc\x45\xa8\x54\x7f\x69\x44\xeb\x5a\x15\x61\x11\x5a\x53\x9c\xa5\x64\x82\xc2\x10\x0a\x4d\xd4\x5e\x67\x0f\x98\xef\x31\xbc\xf4\x91\x41\x03\x63\xec\xe1\x91\x60\x97\xa7\xbc\x40\x93\x08\x9e\x6e\xa1\x61\x66\x01\x10\x9c\xe6\xbb\x4c\x6d\x95\xa5\xb6\x99\xd4\x50\xdf\xef\x26\x3b\xff\xf8\xcb\x38\x38\xfb\x77\x0d\x60\xd8\xd7\x6b\xe2\xcf\x70\x4d\x88\x1d\xb5\xcc\x5e\x0c\x11\xa5\x1e\xbe\xff\xa0\x4b\xfc\x77\xfc\xcf\x93\x9f\x8f\x6b\x32\xf1\xc4\x96\x2f\x1e\xf9\xc7\xc5\x26\x61\x8f\x5e\x64\x8b\x2e\x90\xad\xad\xb9\x55\xeb\x91\xd0\x8d\x89\xc9\xec\xed\xec\x88\xb9\xee\x0d\x7d\x8f\xaf\xe4\x57\x93\xd0\xfd\x86\xc7\x64\x12\x1b\xf4\x33\x0a\x74\xa0\xa1\xa6\xaa\x3b\x8a\x77\x83\xb1\x50\xba\x6a\x75\x41\xcd\xb8\x36\xd9\x1f\x3d\x74\xb3\x94\x06\xad\xc1\xac\x2c\x13\xbf\xa1\xf4\x65\xd7\xdd\x12\x85\x59\xa2\x52\x64\x4b\x7e\x2e\xc5\xae\x58\x6b\xac\xc4\x33\xf3\x4c\x51\x90\xf5\x61\xdf\x35\x1a\xf4\x52\xd8\xdc\xb2\xdd\x22\x3f\xb2\xd8\xed\x71\xa9\xf8\x1a\xe5\xd2\xf2\x2a\x59\x8a\x65\x95\xa5\x66\x61\x54\x0d\xf7\x95\x31\xce\x68\x40\x24\xbf\xb4\x6a\x5c\x86\xea\xf1\x0b\xa5\x74\x5d\xb5\xbf\xd5\xd1\x32\x28\x44\x86\xa2\x8f\x5c\xf9\xea\x4d\x26\x68\xe4\x41\x8a\xfc\x5b\x23\x84\x1f\x45\xc8\x8b\xcf\x47\x19\x8a\x51\xf2\x08\x97\x29\x22\xa1\x17\x52\xf6\x5a\x22\xef\x5c\x92\xe0\x26\x44\xc4\x98\x31\xce\x71\x7d\xf1\x2a\xf9\x42\x7b\x25\x49\x2c\xd9\x60\x79\xa6\xab\x32\x7b\x72\x27\xa7\x41\xd6\x30\x4f\xa5\x4f\xe1\xfb\xd7\x17\x2f\x5f\x9f\x1d\xbc\x78\x73\x74\xf1\xee\xe8\xe0\xcd\xf9\xeb\xb7\x47\xb9\x9c\xe6\x8b\xe7\x3b\xe0\x5d\xf3\x90\x3f\x0a\x45\x92\x89\xc2\xe5\x28\xde\x60\x2f\x24\xbd\x33\xfe\x6f\x86\x88\x87\x6a\x62\x48\xb2\xeb\xfd\x33\x42\x53\x63\x08\x29\xf4\x83\x2b\x83\x1d\x23\x63\x36\x6d\xd3\xa0\x3d\x82\x14\xf1\xb0\xa3\x60\x46\x0d\x09\x13\x2c\x14\xe1\x88\x33\xf6\x8e\x71\x80\x6f\x0d\x61\xd2\x0d\x8d\x09\x1c\x71\xe6\x5f\xe9\x2e\x81\x81\x83\x11\xca\x85\x3a\xdd\x04\x33\x7f\x64\x5c\x22\xd6\xa0\xb0\xac\x1a\x1e\x36\x08\x82\xbe\x41\xbd\x09\x72\x6a\xbb\x9e\xf6\x10\xb8\x9d\x22\xdd\x40\x59\x1d\x38\xe4\xc3\x4b\xc1\x97\x96\xda\x18\x8a\x4c\xa1\x0f\x81\x29\x58\x81\xbe\xba\x56\x06\xa6\x08\x40\x12\xa6\x50\x34\x4a\x79\x5c\xf6\x95\x71\x2d\xb9\x84\x06\x49\x49\x2d\x69\xc7\x23\x60\x06\x58\x19\xc4\x75\x33\x66\x62\x25\x97\x2c\x88\xca\xae\x9b\xd4\x6d\x68\x88\xcd\x0e\x2b\x9c\x42\x9c\xd2\xcb\xd5\xf4\xfa\x84\xf1\x06\x27\xe3\xb1\xde\xed\x32\xac\x99\x45\xa3\x96\x6a\x1c\xeb\x0a\xd1\xc1\x56\xb6\x31\xd4\x59\x37\xd2\x56\x8d\x05\x6b\xaf\x55\xc0\x48\x70\x0d\xb2\x4e\x7a\xc2\x89\x4f\x17\x40\x84\xcd\x42\x1a\x30\x96\xb0\x38\x28\xda\xbe\x80\x10\x42\x20\x0e\x19\x1d\x0d\x77\x20\x21\x30\x85\x68\x00\x4c\xc4\xa4\x85\x36\xe7\xbc\x39\xbb\xd9\x1e\x13\x78\xc5\xc9\x5e\xbe\x62\x4a\x60\x01\x74\x5d\x22\x0b\x76\xa9\x7a\xac\x8d\x06\xd7\x8e\xe6\x32\x08\x7c\x04\x71\x7a\x3c\x3f\x26\x03\xda\x09\x11\xf1\xa0\xef\xfd\x81\xc8\x4e\x7b\x4a\xbc\x8f\xc2\xe7\x77\xd5\x31\x94\x56\x88\x43\xe9\xe6\x08\xcf\x26\x88\xc0\x4b\x9f\x55\x01\x57\x88\xf6\xe2\x6f\xda\x73\x82\xe8\x8c\x60\x83\x3a\x2f\x44\xff\xcf\xd5\x88\xa2\xc8\x8e\x6c\x7b\xab\x72\xcc\x23\x61\x20\xfe\x73\x0e\xf8\x25\xa4\x28\x33\xda\xea\x15\x56\x7b\xb1\xbd\xf4\xc6\xcd\xb4\xf0\x85\xed\x60\xd5\xbb\x55\x46\xf6\xa5\x8d\x09\xcf\x58\xf7\xff\xb4\x7b\xf4\x98\x77\x7f\xa1\x5d\x1a\x52\x92\x31\x01\xfc\xa9\x46\x7c\xc6\xbb\x5f\x3f\xe2\x19\xf5\xfc\x70\x07\x0e\xfd\xb0\xad\xf4\xca\x9b\xd0\x65\xe9\xcd\xf8\x88\x1a\xd4\x85\xe4\x8a\xc7\x5f\x87\x8e\x70\x0d\x79\xde\x6d\xb5\xc4\x46\xdd\x76\x93\x97\xfd\xee\x60\x5f\xff\xd1\x3b\x25\xc1\xc4\x0b\xd1\x96\x1c\x68\xdc\x2e\xb6\xe7\x6c\x50\xd4\x20\xae\xec\xe6\x07\x74\x1b\x5a\xd8\xee\x77\x06\x00\xba\xb8\x4f\x06\x5b\xec\xc3\x3e\x08\x65\xdd\xb9\x17\x1e\xcc\xe8\x75\x40\xbc\x3f\xd0\xa8\x87\xd1\x8d\x41\xad\xd4\x70\xfd\xa4\xd7\xd4\x9e\x23\x8b\xda\x11\x9b\x43\x2f\x3c\xe2\x7a\xf6\xc2\x3a\x61\x71\x9d\x3e\x19\xf4\xa0\x33\x84\x74\x78\xad\x95\xc7\xf6\xdc\x1b\x5b\xd8\xe1\x2a\xa2\xb0\xd5\x52\x7f\xf5\x3b\x03\x7b\x1e\xde\x78\xac\xb4\xf6\xcc\x11\x0b\x64\xcf\x87\x30\x44\xe6\xa3\x4e\xc7\xec\x79\x63\x6b\x1b\x59\xd8\xb6\xe5\x74\x84\xd6\x76\xd7\x06\x3e\xff\x3f\x75\x08\x62\x13\x61\x61\x7b\x2b\xb4\xb6\x3b\xf2\xf9\xd6\x25\x41\xf0\xc3\x16\x6f\x63\xaf\xf3\xd0\xec\x95\xbe\xeb\xf2\x77\xdd\xf4\x3b\xb9\xa0\x3d\x26\x4f\xde\xa4\xbe\x87\x23\xd1\x89\xfe\x20\x2a\x7a\x69\xdb\x0e\xbd\x46\x38\x3d\x5d\x49\xb7\x45\x17\x3a\x36\x40\x91\x6d\x47\x51\x54\xb9\x5b\xc3\x21\xda\x94\x9d\x29\x7d\x7e\xc5\x96\xc2\x2e\x72\xb8\xaf\x89\x65\xee\x98\xb6\xda\x7a\x58\x6d\x5c\xba\x8f\x9d\xd0\xf7\x86\xc8\xea\x80\x36\xb5\x9d\x61\x80\x87\x90\x5a\xa6\x69\x3b\xbf\x05\x1e\xe6\x95\x7a\xa6\x59\x3d\x24\x1a\x5c\xa6\x69\xcd\x25\x0c\xd1\xe3\xbd\xf6\x6f\xe1\x5a\xaf\x82\xec\x39\xc4\xcb\x9e\x43\x73\x46\xc7\xed\x27\xe6\x96\x3a\x74\xf1\xb5\xe2\xd0\xe0\xc5\x2d\x45\x07\xec\x66\xb6\x50\x32\x5b\xe8\xc6\x38\x47\x9f\xe8\x4b\x34\x0c\x46\x88\x58\xd8\x76\x46\xfc\x4f\x8b\xd8\x95\x33\x73\x49\x03\xf8\xa7\x9e\x19\x35\xf2\x23\x1c\x8f\x1c\xf1\x3f\xb5\xd9\x49\x66\x6f\x4c\x82\x49\x32\x7f\x35\x73\x33\x84\xfe\x70\xc6\x24\x88\xf6\x34\x08\x65\x08\x47\x9e\xe7\xb8\x84\xa1\x37\x6c\x8f\x48\x30\x1d\x05\x37\xb8\xbc\xea\x17\x74\x7b\xc9\xf2\x35\xb7\xd6\x10\xfa\x3e\x6b\xa9\x2d\xbc\x70\x37\x7d\x6f\x89\xde\x99\xea\x91\xb9\xed\xb2\xef\x06\x63\x03\xed\xe7\xc7\x80\xa2\x1e\xaa\x5e\x3b\x1e\x60\xd7\x1e\x7b\xf8\x0a\x91\x29\xf1\x44\x94\xe0\xa6\x49\x1a\xc0\x62\x77\x93\xfc\xee\x7e\x58\xb8\xbb\x1f\xea\xbb\xfb\xe1\xa0\xf7\xf7\xb3\x93\x63\x47\xf0\x46\xde\xf8\x36\x77\x0d\x43\xe0\x83\x10\x78\x20\x10\x57\xdb\xcc\xf7\x5d\x37\xbc\xbb\x53\x1f\xf9\xa1\x6b\x8b\xbb\x81\x1d\x8a\x23\x76\xb1\x59\x9a\xd5\x5a\x66\x8f\xd5\xa6\x04\x18\x13\x2f\x0c\x3d\x7c\x65\x8c\x03\x82\xbc\x2b\xfc\x33\xba\x35\x84\xcf\xb4\x9d\xfb\xf6\x4c\xd1\xeb\xa1\xeb\x2b\x7a\x0d\x4c\xdb\x99\xc0\x69\xfa\xd6\x89\x7b\x26\x8c\x6a\x57\x88\x5a\x33\x80\xec\xbb\xbb\xf4\xef\x95\xfb\xcc\x53\x7a\xc7\xfd\x4c\x37\xce\x64\x42\xf9\x42\xcc\xba\xeb\xba\xb3\x3e\x1d\xb4\x5a\x96\xf9\x9d\xe9\xba\xae\xd7\x6a\x59\x9e\x1b\x9f\x1c\x1b\xb0\xb7\xae\x67\x03\xad\x38\x4e\x8a\x07\xad\x96\x15\xa4\x8b\xe3\x81\x1b\xa4\x8a\x23\x56\x9c\xfd\xe3\x86\xa9\xe7\x50\x3c\x87\x03\x97\x58\x7d\x56\x8f\x7f\x0b\x84\x03\x75\x95\x0d\x6d\xdb\x06\xb3\x9a\x5b\x79\xe4\x29\xe7\xcb\xcd\xdf\xcb\xc8\x45\xce\x61\x10\x90\x11\xa0\x2e\x15\x7f\x6d\x09\xa2\xdd\xd9\x1a\x07\xc4\x62\x7f\x87\x6e\xe7\x59\xf8\x03\x72\xfe\x81\x86\x72\x25\x9f\x85\x0f\x1e\xd8\x73\x26\x06\x11\x97\x3f\xef\x87\x83\x36\x95\x7f\x6c\xe1\x07\x2e\xf9\x8e\x44\xac\x2a\x74\xdf\x42\x7a\xed\x84\xbf\x13\xc6\x3d\x3d\x40\xce\x2b\xe4\x5d\x5d\xd3\x07\x54\xfe\x21\x69\xbb\xef\xc2\x07\xc8\x39\x18\xfd\x36\x0b\x29\x3b\x20\x0f\xa8\xf6\x63\xcb\x7f\xde\x69\xb5\x2c\xe8\xfa\xf1\x42\xf3\x46\x49\x30\xc3\x23\xab\x8b\x1e\x7d\x07\xed\x9d\x6e\xa7\x53\x3d\xa7\xc1\x64\x67\xe8\x7b\xc3\x0f\x6d\x1e\x1a\xdc\x86\x78\x78\xbd\x29\x67\xd2\xb5\x5d\x80\x34\x77\x32\x69\x29\xd1\x69\x78\xa5\x52\xa2\xee\x53\xe8\x52\x47\x46\x92\xe0\x60\xc4\x55\x6a\x0e\x0d\xde\x04\x37\x88\x1c\xc2\x10\x59\xf6\x96\x64\x9c\xa1\xe4\x93\x85\x22\xb9\xc7\xff\x16\xea\x67\xf1\x37\x94\xff\x5e\xce\x28\x0d\xb0\xd9\x13\x7d\x8e\xd4\xca\x22\x8b\x00\xf5\x25\xdb\xf9\x7d\x86\xc8\xed\x19\x0f\x44\x62\xc7\x1f\x9a\xf6\x96\xdf\x6a\x61\xcb\xb7\xa3\x48\x76\x2c\x3d\x81\x7d\x73\x12\xcc\x42\xc4\x2e\x5c\x13\x88\xbf\x67\x53\xa1\x4f\x1e\x7e\x30\x07\x79\x9a\xa4\xb1\x49\x6f\x59\xe9\xa3\x8f\x08\x53\x0b\x81\xf9\xe5\xec\xf2\xd2\x47\x21\xbb\x2d\x87\xec\x78\xf9\xea\xee\xfc\xe8\xa1\x9b\xde\x8d\x87\x47\xc1\x0d\xbf\x26\x9d\x71\x40\x8e\x60\x4a\xc0\x60\x27\xc5\x19\x79\xe1\x94\x09\x1e\xa2\x45\x6a\x73\xfe\xba\x76\xcf\x05\x21\x0a\xe9\xe7\x38\xca\x94\xdc\x26\xf7\xbe\xfc\xae\x85\xec\x48\x08\x4b\x58\xcd\x4c\x0d\xed\x61\x7d\x16\x17\xaa\xef\x85\x14\x61\x1e\x83\xb3\xd1\xce\x8b\x2d\x8d\xf2\x5b\xba\x53\xb8\xa5\x3b\xfa\x96\xee\x0c\x7a\xfd\x81\xce\x19\xf3\x11\x6f\x0d\x7d\x18\x86\x06\x15\xb7\x18\x99\xf1\xbd\xb6\xfa\x67\xe8\xb5\x17\x3a\xf1\xac\xb8\x28\x82\xa3\x91\x85\x00\x06\x44\xb4\x0d\xb7\xbc\xb1\x95\x70\x35\x6e\xcc\xd5\xd8\xd0\x45\x5b\xc8\x0f\x91\xe1\x8d\x2d\x64\x28\xe7\xfa\x60\x6c\x50\xf6\xca\x21\x68\x12\x7c\x44\xce\xa5\x87\x47\x8c\x95\x65\x25\xa5\x6c\x6f\xc2\xd1\x88\x6f\xb7\x37\xf2\xb3\x26\xf0\x5d\x53\x94\x4f\x3f\xdf\x8a\xaf\x21\x24\x2e\x3f\xea\x9a\x8c\x8b\xf5\x5d\x33\x18\x8f\xd9\x31\xe3\x94\x1c\x6f\x99\x52\x1f\x13\x77\x2f\x6c\xb5\xac\xd0\x9d\xf7\xf1\xa0\x47\x22\x5b\x1e\x42\x2f\x25\xfc\x87\xd9\xbb\x3f\xde\x4d\x9a\xde\x80\x4d\x83\xe2\xd9\xfa\x74\xc0\x1f\x80\x02\x7e\xae\xef\xcb\x77\x24\x8a\x2c\x0c\xc2\x3e\x1e\xf0\x4b\x1c\xba\x96\xed\x3e\xf7\xf8\x97\x90\xfb\x1c\x59\xb6\x1d\xa9\xfd\x9c\x9a\x79\x67\x3a\x0b\x19\x59\x02\xac\xbc\xe4\x54\x90\x9b\x29\x33\xf6\xf0\xe8\x35\x1e\xa1\x4f\x85\xd4\x01\xb9\xae\x0b\x35\xce\x21\x53\x99\xf1\x3c\x43\x64\x21\xd0\xb5\xfb\x9d\x81\x65\x47\x91\x98\x72\xcb\x2e\xfb\x9c\xd6\xe9\xea\x36\x3b\x20\xf3\x5c\xec\x42\x26\xae\xd7\x1e\x4c\xc4\x56\x5c\xc2\xab\xec\xc4\xd6\xad\xf2\xd3\xa9\xfe\x66\xa7\x82\x51\x88\x98\x5d\x43\x52\xcd\x31\x8f\x84\x2e\x13\x10\x00\x33\xd4\xa4\xba\xec\x3c\x02\x7e\x6a\x87\x20\x9b\xb3\x0b\xc4\xed\x3c\x23\x3f\xf8\x8a\x4d\x20\x0f\x1e\xd8\xd8\xf5\xfb\x64\x00\xa8\xc3\x9d\x88\x4f\xc6\x16\xb6\x9f\xbb\x9d\xbb\x3b\x0b\x32\xbe\x0a\xb1\xd5\x57\x33\x06\x23\xfe\x6d\x76\x8c\x64\xdb\x57\x88\x9e\xdc\x60\x45\x58\xce\x84\x2b\x96\xe0\x3c\xe2\xef\x17\x96\x59\xa2\x43\xb2\xb9\x29\x09\x68\xc0\x8e\x86\xa3\x02\x64\x5e\x87\x47\xb1\xac\xe5\x30\x51\x89\x1d\x7a\x9b\xb1\x24\xf1\x08\xa2\x78\x04\x6b\xe4\x1b\xc2\x65\x6f\x79\x6c\x25\xc7\x58\x3f\xb2\xac\x51\x6f\xd9\x46\xe7\xf2\x7e\x9e\x0f\x67\x84\x20\x4c\x39\xf9\xe9\x05\x91\xeb\x81\x99\x4b\x2d\x0f\xf4\x4d\xfd\x8d\x39\xb0\xb7\x90\x03\xa7\x53\xff\xd6\x62\x3b\x1e\xf4\x91\x3a\xac\x73\x71\xc1\x88\x06\xbc\xc8\x45\x20\x70\xd9\x0e\x55\x58\x29\x71\xfd\x58\x3f\xa4\x37\x13\xf0\x03\x34\xb0\xa5\x12\x30\x94\xda\x30\xea\x3e\x67\x7b\x96\xea\xd4\x95\xcb\x18\x4a\xa3\x47\x25\x5f\x5b\x44\xa1\xbd\x7d\xaf\xe7\xdb\x16\x05\xc8\xde\xc2\x0e\x7b\x78\x77\x67\x61\x77\xce\xfe\xea\xc5\xde\xc1\x60\x04\x29\xec\xe1\x98\x46\x86\x9a\xd8\x83\x1d\xf6\xf2\xee\x6e\x1e\x71\x90\x18\xc6\xd7\x30\xba\x8a\x9c\xe1\x8c\x84\x01\x71\x89\x15\xca\x3f\x81\x7a\xc6\x96\x7e\x08\x87\xd7\xe8\x30\xc0\x94\x04\xbe\x1b\xa6\x7e\x02\xc4\xf3\xa6\x93\x8f\x90\xbd\x51\x7f\xda\xa0\xdd\x75\x5d\xd7\x4a\x57\xbd\xbb\x33\x4d\x3b\xde\xcf\x26\x0e\xda\x21\x0d\x08\x32\xd9\x26\xe5\xe4\x46\x5f\x19\x17\xdb\x82\x06\xa5\xf9\x19\xac\x86\x15\xb8\x90\xdf\x6a\xbc\xcc\x94\xa0\x8f\x5e\x30\x0b\x79\x99\x34\x69\x4b\xbd\x72\x73\x9f\x01\x01\x67\x91\x22\x30\x1b\x28\x19\x69\x5b\x48\x57\xf9\x1e\x05\xb2\x47\xd9\xdb\xce\x12\xde\x7c\x20\xde\x3a\x06\x75\x91\xe2\x5a\xaf\x10\x3d\xd4\x1a\xb1\xec\xad\xf8\x2b\xb4\xd5\x2a\x18\x21\xef\x8e\x1a\x82\x97\x1c\x74\x45\x48\x60\x18\x7a\x57\x58\x91\x1e\xb1\x17\x2d\x94\x94\x03\x3a\x3f\xd1\x93\x67\x18\x81\x18\x5a\x55\xb2\x93\x37\xc4\xa3\xf2\xef\x28\xb2\xc1\x3c\xd3\xcf\x22\x35\x4d\x76\x42\x22\x70\x85\xe8\xa9\x3e\xbf\x65\xb5\x52\x8b\xc0\x3e\xe7\x45\x00\x39\x1f\xa1\xef\x8d\x20\x45\x87\x62\xf3\x21\x39\x18\x7e\x1e\x5e\xc0\xe1\x87\x60\x3c\x56\xb6\x2c\xa5\x98\x5d\x17\x3b\xf6\x10\x3d\x04\xab\xda\x24\x40\x81\xc4\xb4\x5b\xd8\xc0\xae\xde\xc0\xee\xa0\x17\x22\x7a\xee\x4d\x50\x30\xcb\x8b\x4e\x8a\x49\xd3\x0e\x2d\x01\xc2\xa9\x94\x71\x0b\x31\x5e\x94\x34\x0e\x98\x29\x2d\x06\x01\x32\x58\xe0\x30\x18\x21\x93\xdf\x50\x49\x6f\x6c\x25\x28\xb9\xd0\xa1\x81\xb0\x17\x59\x36\xd8\xee\x08\xc1\x89\x33\x65\x30\x39\x9d\x8f\xd8\xb1\x7c\xc8\x9f\x89\xb1\xb5\x5a\xdc\x06\xc1\x9a\x12\x92\x54\xc7\x64\x6f\x7b\x29\xb6\x36\x25\x8b\xe8\xca\x7f\x7b\x4e\x2d\x62\xb3\x8b\x84\x0b\x24\x42\xc3\x42\xa2\x68\xab\x70\xd5\x71\xac\x4d\x5d\x9b\x21\x49\xb8\xae\xbb\x53\x48\x42\xf4\x9a\x89\x5a\x7c\x7a\xb6\xbd\xf0\x18\x1e\x6b\x16\x15\x56\x4c\x1c\x4d\xfc\x03\x6d\xb5\x2c\xec\x76\x6c\xc0\x05\xf9\x09\xfc\x64\x61\xd0\xb5\x59\x97\x33\x3b\x97\xc4\xc2\x6a\x01\x13\xa7\xcf\x88\x36\x57\x72\x13\xa5\xb9\xd5\x64\x63\xa4\xa6\x0e\x73\xa2\xa0\x91\xda\xbb\xbb\x5d\xf4\x50\x48\x76\xc0\x2f\xf8\x68\xe1\x95\xb0\x28\xeb\xc6\x49\xf7\xe7\x10\x09\x4b\xb4\x0f\xcd\xce\x52\x99\x81\x90\xe4\x17\x00\x02\x5f\x71\xc6\xa1\xeb\x33\x8e\x30\x75\x42\x48\x3f\x1c\xb4\x5a\xbe\x13\x3b\xe7\x20\x61\xf7\xb3\xb3\x7a\x3b\x56\xd0\x49\x41\x55\xb7\x5a\x56\xfe\xa1\x3b\x8f\x6c\x90\x7f\x1c\xb7\xef\x26\x9f\x02\x88\xd7\xb7\xb7\xe6\x8a\x21\xf2\xe5\xfd\x4e\x41\xc0\xbf\xc7\xcd\x0a\x1e\x1f\x82\x1a\x2a\xb2\x02\x3b\x67\x63\x4c\xf6\xdd\x08\xf9\x88\x22\x83\x55\x06\x58\xd9\x06\xf9\xe9\x2b\x37\xcc\x25\xd2\x59\xa6\xcf\x82\x17\x10\xac\x02\x93\xd9\x2d\xb6\x8f\xe2\xf6\x13\x2b\xde\x82\x1b\x4c\xe8\xf3\x3f\x8f\x7e\x0b\xae\x4a\xee\xfd\x65\xb7\x28\x05\x05\x3c\x72\x33\xf5\x3b\xce\x73\xc8\xe5\x07\xa6\x31\x87\x2c\xe5\x03\x76\x35\x4b\x96\x86\x20\x38\xba\x3d\xa3\x90\x22\x77\x57\x3c\x11\x6b\xe4\x16\x98\x3f\x68\x81\xf9\x43\xf0\x06\x72\x67\x40\x87\xa0\x30\xf0\x99\x20\x1a\xf5\x68\xee\x03\x1d\xbd\x80\xdc\x8b\xb6\xe0\x8b\xb7\xad\x4c\xe1\xe7\xdd\x98\x32\x67\x9b\xe9\x16\xb1\x87\x92\xf0\x71\x7e\x2c\xb2\x81\x18\x23\xd7\x7d\x44\xea\xac\x30\x2e\xad\xa0\x26\x93\xc5\x4a\x27\xa3\xf0\x23\x7c\xb8\x66\xc4\x5a\x4e\x06\x91\x6b\x60\x03\xcc\x9c\x57\xcb\xcc\xf1\xae\xe9\xcc\x98\xbc\xfb\x33\xbd\x53\x37\x3f\xbf\xcf\x8d\xdd\x5e\xae\xf3\x39\x27\x80\xf4\xfb\x87\xba\xe6\x23\x66\xeb\x64\xe9\x77\x33\x8c\x11\x49\x33\x70\xc9\xa9\x34\x90\x45\x85\x4e\x8a\x2d\x3b\xb1\x68\xb2\xce\x72\xeb\x09\x45\x13\xb5\x2d\x0c\x68\x8e\x64\x25\x2a\x12\xd9\x4c\x64\xdb\x5b\xb4\x66\x9d\xb6\xb2\x7d\xa3\x79\xbe\x32\xad\x9a\xe5\x4c\x89\x68\x4c\xe1\x10\xcc\xf9\xbf\x3d\x04\xe4\xe5\xda\x43\x8e\xfc\x8b\x49\x11\x69\x86\x45\xce\x3a\xca\x4f\xf9\xae\x98\xf2\x87\x92\x7b\xda\xee\xc8\x99\xdc\xee\x2e\x46\x42\x73\x31\xf4\xa0\xa1\xae\xb4\xa2\x69\x21\xb8\xec\x90\xf0\xe3\xb4\xb2\x5c\x9a\x4d\xa8\x2f\x38\x25\xc1\xa7\xdb\x26\x05\x25\x71\x20\xcd\xbe\xae\xee\x90\xfa\xb2\x8c\x2a\x34\x2d\x9b\xe8\xad\xea\xcb\xca\x08\x8c\xd8\x00\x3f\x0c\xb0\x10\x93\x86\xe9\xe1\x22\xfc\x31\x6b\x74\x07\x5c\x51\xa5\x8c\xa8\x60\x06\x86\x60\x24\xe8\xfb\x44\x19\x36\x96\xb8\x02\x03\x3c\x44\x4c\x02\x0d\xe4\xd5\xe5\x22\xee\x67\x90\xfc\xe2\x6b\xe6\x22\x45\xe4\x91\xa2\xc7\x2e\x27\x3d\x9f\x6e\x5d\xe4\xc8\xe0\x19\xbe\xf9\xcf\x54\x31\x15\xf6\x90\x7e\x7a\x22\xe7\x35\xfd\xf4\x50\xae\x8c\xfe\x54\x10\x03\x60\x75\xc0\xc8\x41\xf8\xa3\x6d\x69\x01\x1e\x2a\xb0\xe3\xe2\xdd\xfb\xe3\xe3\xa3\x77\xa6\x2d\x0d\x3a\x68\x68\xf6\x26\x39\xa3\x76\xca\xc8\x2a\xa7\x08\x7d\xa2\x08\x8f\xac\x39\x85\xe1\x87\x9e\xd5\x01\x43\x87\xfd\x65\x27\x64\xe3\x3b\xcb\x9e\x8f\x03\x62\x3d\xdb\x66\xc7\xf3\x99\x7d\xeb\x21\x7f\x64\xa0\x14\xc1\x41\xb6\xb4\x99\xd8\x8a\x1c\xdb\x5c\xb6\x32\x59\x5b\xa6\xed\x4c\x11\x19\x07\x64\x62\xd9\x91\xee\x3d\x75\xc5\x8e\x15\xa4\x01\x61\x7d\x85\xe1\x2d\x1e\x1a\xd9\x1e\x67\x25\x9a\xe6\x9d\xe1\x2a\x21\x08\x7c\x97\x58\xb6\x83\xd1\x27\x6a\x09\xad\xe1\xb3\x6d\xdf\x19\x05\x18\x3d\xb3\xa1\x0b\x6f\xa0\x47\x0d\x5f\xc0\xad\xa5\x8b\xc6\x4a\x3f\xbd\xc3\xbc\x8f\xe5\x9d\xe5\xe6\xbb\x2d\xbd\x7b\x44\x7e\xa2\xa0\x83\xea\x0b\x24\x92\xe6\xb4\xa9\x6b\x75\x40\xa8\x88\xad\x6d\x61\xf5\x27\x50\xbc\xd4\xc4\xde\x2a\xde\x21\x53\x49\x92\xc7\xac\x09\x2f\x69\x62\xca\x2a\x14\x6d\xb4\xb1\xac\x70\xc9\x2a\x04\x49\x85\x31\xab\x50\xb4\x5f\x2f\x65\x85\x6b\x56\x61\x56\xd1\x49\xd6\x40\xc1\x29\xb8\x96\xf5\x3f\xb2\xfa\x30\xa9\xaf\x6f\xc5\x53\x76\x88\x80\x78\xc2\x3d\x7b\xc4\x83\xd8\xd1\x85\x35\x2d\x0e\xda\x47\xd9\xda\x15\x6b\xcd\x4f\x5a\xd3\xfa\xa0\xce\xe6\x95\x2c\x7a\x5b\x74\x5b\x5d\x59\x88\x1d\xab\xe4\x0b\x56\x9e\xcf\x4f\x04\xd0\x8f\x5c\xf0\x62\xbb\x7c\x2b\x26\x02\xb7\xb2\xf9\x13\xd6\x13\x92\xb4\x73\x0b\x2e\xf5\x19\x11\xa4\xe3\x64\x2b\x4d\x52\x4a\xee\xcf\x69\xea\xca\x56\x3c\x40\x9e\xa5\x92\x77\x3d\xe7\x47\xb1\x9b\x30\x52\x92\xa3\x8c\x39\x28\x54\x20\xba\x60\xcb\x06\xf1\x5d\x9f\x95\x78\xb9\xb8\x53\x20\x23\x89\x4a\x6b\xba\xf5\x19\xe7\x18\xd9\x6a\x3a\x13\xaa\xbb\x46\x29\x37\x19\xd8\xd2\x9e\x3c\x72\x28\x5b\x95\x3a\x88\x94\x88\xac\x4f\x0f\xb4\x10\xd7\x1d\xdb\x11\xf0\xd2\xa2\x95\x85\x84\xcb\x2a\x1f\x7c\x4e\x35\x8a\x41\xc8\x6e\xa4\xdc\x73\x02\x3c\xb6\x02\xfa\xf6\x28\xb2\x49\x8a\x1d\xd0\x6a\x25\x62\xa7\xb2\x43\x16\x7e\xa6\xe8\x15\xfb\x52\xb2\x3a\xfc\x6a\x5c\xe3\xc2\x8c\xf5\xf9\x4c\x1d\x36\xed\x96\xe2\x4c\x6a\x91\xd8\x8d\x8b\x39\xd6\xdc\x2e\x06\x38\x3e\x0a\x25\xfb\xb9\xb8\x21\xb9\x7b\xe5\xe6\xcd\xb4\x13\xd9\x80\xd6\xbb\x06\x94\x70\x50\x5f\xb2\xad\x5d\xa3\xd6\x79\x67\x8d\x15\xd5\x88\x5c\x7a\xd6\x0c\x3d\xf1\x4b\x29\x3b\xa6\x35\x40\x34\x4a\x3c\x3e\xd7\x23\xfb\xd1\x5a\xd9\x8f\xad\x51\x63\xd1\xef\x61\x4e\xa6\xeb\x6a\x5c\x82\xb1\xdb\x4b\x1b\xc7\x34\xcd\x40\xc1\x70\x07\x76\x56\x1e\xa4\x8b\x6d\x2f\x29\x21\x6c\x58\xe3\xa8\xbb\x00\x24\x84\x4f\xec\x8b\x02\x1d\x4f\xb3\x7d\xd1\x1f\x80\xd0\x45\xc0\x73\xcd\x40\xe4\x73\x90\x0b\xaf\xfc\x18\x62\xed\x89\xaf\x35\x97\x68\xee\xfd\x38\x43\x83\xcd\xfd\x1c\x30\x6b\x49\xc6\x4b\xf9\xae\xef\x08\x9c\xd9\x22\x9d\xdd\x76\xd2\x08\x02\xa6\x17\xbe\x44\x21\x25\xc1\x2d\x1a\xb1\x96\xf2\x2f\x7d\x44\xc5\xab\xcc\x9b\x37\x02\x2b\x82\xd1\x05\xcd\x57\x90\xf6\x3d\xee\xa4\xd1\xf7\x06\x6e\x18\xf3\xd7\x1e\xf6\x52\x96\x9e\x8c\xc7\x09\xb1\xec\xac\xf7\x00\x1c\x89\xdb\xdd\xb9\x90\x9b\x27\x21\x71\xc8\x7d\x2e\xba\x12\x22\x2a\x76\x59\x0c\x56\x00\xe4\x95\x23\x9b\xbb\x08\x67\x53\x44\x2c\xc7\x71\x92\x43\x17\x81\xec\xcd\xd2\xcb\xb8\x1b\xd5\x74\x84\xf3\x41\xa0\xa1\xf1\x4b\x56\xca\xd9\xf4\x32\x5d\x2a\xb8\x85\xea\x5a\x2c\xba\xb8\x32\xad\xa6\x08\x7c\x5d\x7b\xe9\xdb\x20\xd3\x52\x4e\x3b\x54\xd4\x82\xb8\x27\x32\x35\xb3\xb4\xa5\xa8\x22\x2b\x93\xad\x77\xe3\xf9\xbe\xdc\x98\xb9\x8d\x53\xb4\xac\x20\xa5\x4f\xcc\xac\xa1\x72\x72\xe1\xb4\x85\x6d\x4d\x45\x3b\xe7\x72\xe3\xf4\x7c\x20\x3b\xd3\x83\x20\x45\xa1\x7a\x30\x4d\xb1\x22\xdd\x9f\x6f\xbe\x18\xb1\x4a\xb4\x14\x5f\xf2\x5d\x58\x66\x1e\xd1\xa4\xbc\xac\x9f\x7b\xcc\x7d\xe5\x8c\xd7\xad\x96\x45\xdc\x02\x93\xb6\x0d\x84\xd9\x8c\xec\xc7\xd2\x8a\x45\xc4\xd9\x2d\xb7\x35\x50\xb1\x53\x84\xed\x80\xc7\x56\xe9\x8c\x28\x62\x44\x1a\x8b\xf3\x0a\x14\x1f\x93\x61\x79\xd4\x46\x00\xb1\xb1\x5d\xed\x18\x92\x30\xa5\xac\x73\xaa\x99\x98\xe8\xa4\xcd\x94\x5a\x43\x16\x95\x5c\xae\x60\x18\x17\xdb\x11\xb1\x1e\xe8\x4f\x11\x51\x57\xa4\xfa\xf4\xc6\x96\x95\xd8\x80\xee\xee\x90\xf3\x01\xdd\xb2\x7b\x20\x77\xd7\xb3\x17\x76\xab\xd5\x55\x2f\x53\x9c\x85\xee\x7c\x26\xe6\xc6\xca\xb7\x60\x6f\xd1\x78\xb3\x20\xb9\x4f\x62\xdd\x7c\x91\xf5\xe9\xc1\x03\x79\x0f\xa4\x9c\x32\x4a\x58\xe6\x0a\xbd\x7d\x81\x8c\x18\xc5\x7c\x9a\xf0\xc9\x14\x37\x5d\x68\xa0\x94\x6f\x26\xbf\x50\x4a\xa9\x55\xde\x6a\x20\x36\x65\xec\xc0\x7c\x77\x27\xbc\x77\xc5\x4b\x0c\x27\xc8\x35\xe3\x2d\xa3\xdb\x5c\x24\x6f\x75\x0d\xf1\xc8\x47\xc4\xc5\xba\x74\x5c\xc4\x64\x16\x3c\x54\x0e\x3d\xd2\x48\x22\x4e\x5a\x94\x9e\x0e\xbe\xdc\x45\x0b\xa8\xa2\xf4\xd8\x48\x2b\x6f\x12\x79\xdc\xe6\xda\x68\x0b\x6f\xb2\x78\xc0\xa9\x81\x15\xcc\x5b\x94\x23\x2d\xe9\x2b\x26\xe5\x7d\x22\x06\x95\xde\x6d\x49\x63\x5b\x79\x7b\x51\x77\xdb\x75\x91\xf2\xec\x91\xdd\xcd\x09\xa6\x95\x7d\x95\xbf\xac\xda\x90\xc5\x9c\x36\x5d\xff\xd1\x0e\xaf\x3d\xf9\x7a\xbd\xb4\xe2\x86\xc0\xa9\x38\x15\x69\x26\x28\x11\x51\x2d\xdd\xfe\xa2\xb9\x4f\xd2\xbb\x3b\xea\xba\x6e\xd6\xb9\x50\x6d\x05\x7f\x4b\xf8\xf3\x63\xce\x30\x52\x7b\x4b\xd4\x22\xfc\x42\x28\x0e\xa1\xd4\xdd\x2e\x85\xb3\x24\xa3\x29\x2a\x88\x52\x35\x8c\xb6\xe2\x0e\x11\x71\x27\x69\xb6\x49\xae\x8a\x8c\x48\x5e\x72\x6a\x28\x2b\x91\x1a\x59\x29\x0e\x1d\x81\x6e\xe7\x19\xfc\x41\xf5\xed\xd9\x83\x07\x50\x8d\xc3\x77\x71\x1f\x0e\xb8\xa7\x88\xe5\x1b\x1e\x36\xb4\x6f\xda\xc9\xde\x2b\xb8\x3c\x0b\xdd\x3e\x5f\xa2\x70\x48\xbc\x29\x23\x26\x14\xf8\xb6\xd0\xd6\x6e\x15\xaf\xb4\x36\x6e\xe0\x03\xb4\xef\x59\xbe\xdd\x0b\x2d\xdf\xe6\x7e\xbe\x52\xe1\x6a\x21\xcd\x07\xf5\x54\x95\x3f\x19\x5b\x94\xf1\x46\xec\xea\xe3\x6c\x35\x20\xb6\xa6\xa5\x2d\xaf\x62\x0b\xbd\x20\x40\x8e\x17\x9e\xd1\x60\x3a\x45\xa3\x22\xd5\x1e\x61\x04\x3b\x86\xa4\x92\x05\x59\xad\x10\x89\xb3\x79\x7a\x0d\x73\xfa\x2f\x5e\x09\x25\x6f\xa9\xac\x20\xcf\xfb\xb9\x20\x96\x05\x75\x86\xa9\x02\xaa\xda\x29\x13\x9f\x3f\x22\x75\x6e\x8b\x2a\x4e\x33\x45\x68\xc2\xeb\x31\x76\xe3\x9f\x08\x7e\x78\x0b\xa7\x00\xeb\xbf\xf4\xfd\x88\x92\xdd\x4c\x85\xa4\x14\x4f\x22\x7b\x1e\xf8\x88\xc9\xf0\x88\x50\x4b\xb0\x3f\x18\x98\xdf\xb2\x7d\xfb\xad\xe1\xb1\x2b\x64\x2a\xc0\x96\x20\x36\xf8\x9c\x18\x42\x30\x04\xc6\xe5\x8c\x1a\x57\x01\x13\x6f\x6c\x80\xa3\xf8\x7b\x90\x33\x35\xc2\x99\x39\xdb\xf5\x7d\x24\x66\xce\x49\x42\x42\x84\x2f\x06\xff\x89\x46\xee\x76\x07\x14\xaa\xcf\x44\xad\x29\xe1\xff\xca\x84\xb2\xad\x56\xf1\x73\xcb\xb6\x7b\xe6\x0c\xcb\x5c\x9f\x89\xc4\x2a\xc7\xda\x6a\x15\x7c\x41\xcd\x03\x67\xb6\x5a\xad\xd4\x4f\x3d\x6c\x2e\xfd\x25\xc3\xc3\xa1\x37\x42\x86\x1c\xa5\xc1\xdf\x19\x8a\xc3\x37\x3c\xfc\x31\x18\x8a\x6b\x8c\xc9\x80\x99\xb9\xb0\x93\x29\x13\x2e\xce\x73\x9a\xc8\x8e\x73\xde\x94\xd8\x2a\x3d\x04\xf8\xaf\x1e\x06\xc9\xb6\xeb\xed\x82\xd4\x7e\xea\x21\xa0\x26\xb1\xb7\xdd\x05\xa1\xd8\xcb\xec\xcf\xec\xfe\x66\xcf\x32\x5d\x11\x4e\x65\xd4\x9b\xa0\x33\x0a\x27\xd3\x1e\x76\xe2\xbf\xef\xee\x5e\x42\x8a\x1c\x1c\xdc\x58\x76\x69\xa4\xac\x10\x77\xbd\xf0\x9c\xcc\x42\x26\x96\xc7\xe4\xbc\x0b\x52\x71\xb3\xb1\x2f\x6f\x16\xec\x20\xa6\x60\xd4\xed\x3c\xa3\x3f\x90\x84\x82\xd1\x84\x38\x91\x3e\x1d\x6c\x21\x46\xbc\xd8\xf7\x62\x0f\xf2\xa2\xbe\x20\xc0\xdd\x20\xa2\x64\x8a\x43\xcd\xa9\x8c\x1d\x01\x8d\x06\x70\x86\x44\xec\xa4\x3e\x1a\x44\x80\x2f\x02\x3b\x7a\xe9\x17\xec\xc4\x66\xe9\x70\x7a\x74\xc9\xd7\x3c\xed\x6b\x7c\x2a\x34\xab\x41\xaa\xdd\x58\xad\xd6\x47\x03\xa5\xa1\x02\x29\x19\xb7\xfa\x8b\xbe\x76\xa9\xb0\x71\x19\xec\xaf\x92\xc1\x71\x4f\x2c\xae\x23\x30\xc4\xfd\x5d\x52\x4e\x6c\x28\x51\x30\xb5\xc7\xf2\xe5\x53\xaf\x59\x67\x27\xd3\x20\x44\xa3\x53\x48\xaf\x35\x8e\xa6\xb0\xf4\x96\xe6\xa8\xe8\xba\x68\xbf\x3f\xe8\xf1\xd9\x67\x5f\x3d\x3e\x39\x3e\x4a\x3e\xd6\x11\x0f\x0f\x0f\x4e\xcf\xdf\xbf\x7b\x7d\xfc\xb7\x8b\xd3\x57\x07\x67\xda\xfb\xae\x78\x7f\x70\x7e\x71\x7e\xf0\xee\x6f\x47\xe7\xc9\x9b\x5d\xf1\xe6\xc5\xfb\x17\x2f\xde\x14\x54\x7c\x28\x5e\x27\x87\xaa\x64\x42\xf8\xbb\x88\x9f\x29\xb6\xcd\xe0\x15\x4c\x19\x82\xe2\x01\x6e\x21\x47\x9e\xbb\x1a\x3a\x96\x69\x29\x21\x64\xb9\x4f\x88\xaf\xbe\x56\x47\x78\x81\xcf\xa3\xdc\xc5\xd6\xa0\x53\x45\x1f\x4a\xf7\xae\xb8\x2b\x62\x22\x65\xc8\x5f\x32\x8b\x12\x53\xca\x4a\x6f\x43\x59\x4c\x56\x4a\x6e\x82\xba\x7a\x49\x49\x3b\x02\x59\x92\x3f\x87\xaa\xb4\x6c\x57\xca\x9b\xa7\xa2\x1c\x1a\x15\x6c\x5e\x49\x2f\x65\x3f\xe4\xde\xad\xed\x85\x2c\x27\x3f\x13\x13\xca\x7c\xfb\xf1\x2b\x51\x32\x24\xc3\x23\x9f\x63\x38\x36\x39\x77\xbc\x6f\x2f\xf8\x4c\xe5\x8b\x87\x8a\x53\x09\xb3\x45\x85\xec\xbb\xad\x18\xde\xad\x0c\xd1\xd9\xa2\xa9\x1d\xaa\x30\xcb\x34\x4d\x89\x3e\xd5\xa2\x4d\x26\x68\x14\x3c\x76\xb7\x3b\x72\x0a\xc4\xa7\xfe\x21\xc9\x9c\xd4\xe6\xe6\x27\x39\xcc\x14\x45\xf6\x1c\xdd\xdd\xe9\xcb\xe6\x61\x2f\x16\x97\xa2\xa8\xe4\xae\xd1\x28\x9e\xf0\x49\x91\xcc\x72\x7c\xe9\xf8\x95\xdc\xb2\x0d\x8a\x58\x03\x21\xd0\x6a\x6a\x07\xf1\xc0\x51\xda\x22\xe5\xab\x9e\x66\x34\xf5\xae\xe8\x15\x34\xd6\x5a\x32\xae\xc5\x6f\x81\x6f\x57\xe2\x44\x94\xb8\x32\xd5\x39\x49\x35\x92\xd7\x36\x80\xd3\x55\x10\xdb\x10\x6d\xe1\x86\xf6\xa2\xac\xc4\x56\x28\x08\xe1\x5a\xa3\x51\x89\x72\x59\xe3\x80\xb9\x73\x41\x2c\x60\xda\x92\x5f\xb0\x9f\xf1\xe7\x59\x36\xde\xb6\x30\x57\x09\x26\x7c\x0b\xe2\xb7\x28\x80\x2e\x16\xb0\x4c\x05\xfa\x2c\xe4\x5c\x4c\x85\x6e\xea\x10\xfa\xfe\x25\x1c\x7e\x08\xe3\x6b\xfe\xee\xce\x2a\x2c\xc0\x7d\xac\x69\x24\x8e\x42\x9f\x70\x49\xcd\x97\x2a\xd3\x0c\x73\x14\x47\xd7\xd1\x07\x0f\x6c\xe4\xfa\x7d\x3a\x00\x48\x53\xad\x58\xd0\x8e\x9a\x99\x13\xe4\x8f\x1a\x45\x7f\x1c\xed\x2c\xea\x8c\xc7\xa2\x52\x1c\xe7\x1c\xb1\x89\x17\xa6\x8f\x77\x67\xff\x38\x15\x9b\x5c\x4c\x9f\x33\xf1\x3e\x79\xd8\xd2\xf6\x80\xbd\x25\x60\x0c\xb0\x86\xe2\x46\xea\xce\x00\xdb\xba\x31\x40\x7e\x7b\x0c\xd9\x96\xd8\xb8\x79\x6d\x45\xed\xa4\xc9\xb1\xbf\xdb\x04\x5d\x79\x21\x25\xb7\xbd\x09\xf4\xb0\xb9\x95\xe0\x32\xf9\x41\xf0\x61\x36\xd5\x9c\x8e\xf2\x7b\x95\x6d\x94\x2b\x44\x0f\x28\x25\xde\xe5\x8c\x22\xcb\xf4\x46\x22\x18\x86\xc6\x51\x1e\x7d\x3a\xa8\x57\xe0\x78\x61\x3b\x98\x51\x26\xa9\x7c\xf1\x51\x10\xa3\x60\xc8\x7f\xb0\x51\xa2\xc4\xd7\x6c\x9b\xde\xdd\x6d\x63\x67\x18\x60\x0a\x3d\x1c\x5a\xd4\x06\xd0\x45\x2e\xd7\xf7\x20\xfd\xf1\x96\xba\x7e\x5a\xad\x6d\xd8\xdc\x17\x15\x07\x64\x02\x7d\xef\x0f\xd4\xae\xd3\x66\x65\x83\x7c\x05\x38\x61\x26\x36\xb7\x51\x44\x2d\xa9\x8d\xa8\x15\x76\x0a\x92\x37\x9a\x26\xaa\xb0\x3a\xed\x0c\xeb\xa3\x93\xc8\x0c\xdc\x2a\x8a\x79\x44\xb7\x94\x36\xb8\xcf\xb1\xda\x4d\x89\x00\x23\xc6\x1a\x10\x4b\x8c\xaf\xfb\x0c\xff\x90\x5d\xd1\x67\x58\xa1\x92\x40\x57\xe8\x0d\x92\x95\xc4\xfa\xb2\x62\xee\x6d\x80\xff\x77\x77\x9f\xca\x69\xb1\x20\x8f\xd7\x2a\x46\x7e\xe0\x9d\x06\xb0\x4f\x79\x9c\x7a\xaf\x66\x84\xe1\x7e\xd1\xc6\xf5\x50\x68\x21\x50\x57\xd5\x82\xb6\xdd\xd3\xfa\x54\xd2\xa1\xb2\x93\x41\xeb\x3e\x60\x41\x40\x85\xfd\x25\x06\x57\xd2\xb5\x32\x29\x07\x50\xca\x95\x72\x85\x83\x11\xdf\x8a\xaf\xc0\x34\x12\x55\x25\xaf\xd3\x43\x7d\x3a\x70\x31\x40\xeb\x89\x93\x06\xe5\x78\x28\xcd\x4e\xf7\x3c\x4a\x05\x2a\x29\x73\x57\xa2\x44\x55\x51\x5f\x42\xa5\x81\x2d\x6c\xcd\x23\x40\x6c\xc0\xb3\xc0\xf7\x10\x90\xbe\x23\x51\x03\x8b\xd6\xef\x21\xfc\x4c\x57\xc5\x8a\x96\xcd\x98\xe4\x95\xa0\xcf\x2c\x1d\x20\x83\x92\x88\xee\x14\x0e\xcc\x81\xef\x73\x7c\xc7\x62\x78\xdf\x64\x06\x43\xef\xd2\xdf\x58\x36\xb1\xa2\x3b\x43\x70\x3a\xcf\xb0\x8b\xb9\xcb\xef\x99\xf8\xfe\x33\x5b\x9a\x77\x30\x47\xce\x39\xbf\x9d\xa2\x56\x0b\x97\xa0\xe8\xb0\x2b\x21\xbe\x1c\x2b\xf7\x08\x1a\x79\x34\x20\x3b\xbe\xb7\x6e\xe3\x45\xf1\x08\x85\x47\xb2\xee\x26\xc8\x2f\x77\x29\x35\x39\x94\x78\x13\xcb\x8e\x23\x54\x91\x72\xcf\x7e\xe3\x31\x69\x88\x91\x10\xa0\x02\x4c\xb9\x87\x4b\x69\x3c\xca\xba\x76\x23\xeb\x9c\x14\x57\xc3\x17\xb7\xe7\xf0\x8a\xcf\x35\xe7\x32\x55\x11\x7b\xf9\xc8\xe3\xc3\x60\x84\xde\x7a\x84\x04\x24\xf1\x2b\x13\xac\x12\x22\xaf\x90\x3f\x45\xc4\x32\xc5\xca\x98\x64\x76\x79\x6b\x82\x7c\xc4\x4c\x7f\xc0\x56\x37\x09\x3a\x05\x04\xc4\xbe\x4f\x7d\xc7\x71\x90\x65\x0a\x3a\x6c\xda\x83\xad\x24\x58\x72\xcc\x46\x50\x60\xc6\x6f\x73\xa3\x9a\x13\x92\x61\x1c\x3a\xfc\xeb\xce\x30\x18\xa1\x09\xef\xe6\xce\x24\x18\xa1\x9d\x6f\xe6\x24\xe2\xff\x73\x7e\x0b\x7f\x95\xa1\x3a\x70\xc6\x36\x20\x1c\xbd\x0d\x46\x48\x00\xad\x84\xfb\xd0\xb2\x7b\x56\xbe\x1b\x80\x32\x96\xdb\xef\x77\x06\x22\xa9\x51\x7a\x58\x90\xaf\xb3\xad\x85\x12\xcb\x95\x4e\xa2\x7b\xc4\x56\x28\xdd\xd2\x82\x4f\x28\x8a\xa5\x99\x60\x34\x09\xb0\x17\xd2\x1d\x91\x22\x62\x75\xd9\x0f\xe2\xd1\x49\xbc\x09\xd5\xcf\x04\x38\xa0\x30\x12\x49\x85\x37\x60\x4a\xf8\x05\x6d\x3b\x04\x8d\x66\x43\x64\xf1\x5e\xb8\xcf\xd9\xea\xf5\x31\x20\x03\x37\x26\x86\xa8\x8f\x07\x45\xb1\x7b\x64\x1f\xa3\x1b\xe3\x0c\xa9\xdb\x5b\xb0\x5e\xc4\xb6\x85\x2a\x1b\x45\x60\x2e\x1c\x9a\x63\x6b\x91\xfb\x3c\x6d\xe2\xc3\xd9\x6e\x49\x55\x74\xdc\x27\xb6\x9f\xe2\xf1\xf8\xae\x06\xf8\x03\x07\xfb\xfd\x41\x8f\xfd\xab\x5a\xf7\xb5\x43\x26\x8d\x28\xdc\xe0\xb6\x4f\xfa\x70\xc0\xf7\x41\x82\x94\xc9\x63\x9f\x43\x24\xb7\x6d\x1f\x0e\x80\x1a\x8a\x6f\xdb\x83\x5e\x5c\x23\x79\x3a\xb0\x01\x91\x03\x22\x00\xb3\x63\xf7\xbc\x24\x8c\x24\x33\xc3\x94\x6b\x96\xc8\x2d\x87\xeb\x60\x93\x4b\x00\x1c\xb8\x14\xf8\x02\x57\xb8\xd4\x61\xc6\xdf\xf7\x2d\x04\xa0\xdd\x83\x4e\x18\x4c\x10\xab\xce\xc4\x4c\xbe\x4c\x36\xeb\x06\x05\x04\xa0\x1a\x3c\x2e\x46\xbe\x76\x2e\x67\x9e\x3f\xca\x02\x70\xcb\xe8\x22\x91\xfe\x43\xa6\x3f\x2b\xa8\xab\x17\xc8\x54\x69\xcb\xc0\x75\x2f\xc0\x45\x5a\x10\x26\x30\xb2\x26\xda\x8c\x6d\x68\xc7\x99\x97\x0b\x63\x96\xbe\x08\x1e\xc0\x5f\x9e\x94\xc6\x91\x1b\x39\xfe\xa1\x94\x7d\x68\xd6\x27\xb3\xd0\x47\x7f\x31\xf4\x1a\x03\xba\xf3\x48\x2a\x4a\xd8\xb1\x88\x09\xf1\x5c\x80\xbb\x70\x2c\x03\xc6\xda\x61\x70\x85\x28\xcf\x33\x51\xe2\x95\xc7\x4a\x71\x1d\xe2\x4b\x56\xb1\x40\x12\xf2\x5b\xad\x6d\x1e\xa2\xe2\x78\xa1\x00\xa1\xa5\x1c\x8f\xc5\x45\xdc\x44\xad\x54\x14\x89\x77\x26\xcf\x02\x06\xa8\xf0\x88\xe0\x9a\xcc\x74\xd3\xe9\xef\xb3\xd2\x5c\xab\xd2\x2b\x20\x6c\xb0\xcf\x2f\x73\xd6\x7f\xcb\x1e\x48\xbf\x97\x08\x08\x2f\x8b\xac\x2a\x2a\x89\xa1\x82\x31\x07\x0c\x7c\x97\x5a\xf8\xee\x0e\xf2\x71\xda\x20\x74\xf9\x2d\xe1\xb9\x7e\xbf\x2b\xf0\xbf\x03\x97\x30\xde\x39\xdc\x96\x6e\x2e\xf1\xe7\xb8\xc2\x57\x3a\x75\x84\x56\x98\x0e\x33\xe6\x11\x5e\xa1\xed\x68\x3d\x61\x34\x31\x70\x83\x7e\x38\x90\x41\x4e\xb3\xb8\x41\x36\x7e\xcb\x06\xc3\x22\x37\x80\x99\x43\x83\xbf\x9f\x9d\x1c\xef\xab\x3f\x2c\xbb\xa7\x23\x83\x8a\xe9\xb4\xe3\x97\xdc\xd5\x40\xa7\xac\x43\xdb\xf1\xf0\xd0\x9f\x8d\x50\x68\x79\x9a\xcb\x41\x82\x4e\xea\x3d\x30\x0d\x75\x56\x8d\x51\x80\x42\xfc\x2d\x35\xd0\x27\x2f\xa4\xa6\xbd\x25\x80\x36\xd4\x7c\xb9\x10\x20\x8e\x78\x39\x4a\x61\xa1\x7a\xfc\xb3\xe9\x5d\x30\xb2\xef\xee\x12\x3c\x1c\xee\x07\x9c\xc3\x64\x63\x8f\xb9\x5e\xaf\xd5\x92\xce\xca\xae\x28\xcb\x1f\xa6\x39\x4c\x65\xdb\x1e\xb5\x5a\xd6\xc8\xed\x0f\xec\xad\x51\x1f\x3a\x32\x4b\xcf\xbe\xc9\x44\x6b\x31\x6c\xb3\x27\x91\xe3\xe4\xcf\x81\x05\x85\x9f\x84\xbe\x15\x67\xc0\x03\x23\x3b\xe2\x68\x75\xf1\x0d\x13\x37\x77\x77\x67\xf2\x4b\xcf\x95\x35\xd3\x3d\x69\xb5\x38\xd6\x5c\xd9\xeb\xfd\xf4\x57\xd4\xc7\x7b\xd9\xc7\xf2\x5b\x69\xb4\x21\x05\x0c\x62\x71\xed\x60\x58\x04\x77\x5c\xe4\x68\x99\xda\x48\x0e\x09\x84\x76\x33\xd6\x60\x85\x12\x28\xa8\xaa\x88\xa5\x0e\xe4\xd0\x47\x30\xe5\x6f\xbc\x12\x85\x9d\x47\xe5\xd7\x1d\xda\x97\x6e\xba\x08\x12\x44\x5c\x24\x62\x09\x24\xad\xb1\xf4\x77\x16\xb2\xed\xa4\xf7\x11\x08\x67\x97\x93\xb4\x0f\xf9\xaa\x9d\x2c\xc3\x34\xd4\x17\x47\x7c\x95\xb2\xae\x6e\xa5\x1f\x58\xe9\xe9\xb5\x39\xc5\xfc\x87\x58\xcb\x80\x84\x45\xb4\xcb\x8f\xc9\x95\x5a\xf3\x5e\x2e\xd4\x0d\x65\x48\x44\xc5\x54\xc6\x3b\x87\x09\x31\xc9\x2e\x92\x9f\x80\xa3\x11\x3f\xeb\x0d\x3e\x51\xd8\xb8\xaa\xcf\x1a\x57\x7f\x67\x7d\xb4\x19\xcd\x2b\x1a\xa8\x32\x34\xb3\xef\xf4\x20\xb7\x35\x5f\xc3\xc2\x29\x49\x56\x8a\x95\x8a\x5d\x2a\xd5\x3c\xbb\xea\x0f\x21\x0e\x85\x36\x08\x1d\x7e\x46\x5c\xf9\x6f\xf2\x3c\xf6\xca\xd6\xed\x04\x8c\xe7\x10\x4d\x72\x9b\xc3\xa1\x62\x6a\x6c\x11\xfa\xa8\x85\x2c\x42\x1b\x40\x30\x8f\xb9\x9e\x5e\x1c\xda\x19\x35\x60\xbd\x34\xf6\xa9\x8a\xf9\xda\x84\x21\x88\xfb\x9e\xe2\xd8\xfb\x94\x3a\x9c\xe6\xc4\x03\x9d\x27\x44\x52\x13\xff\x13\x48\xcd\x84\xa4\x8b\x9b\xfa\x42\xf6\xd6\x31\x1f\x20\x7b\xdf\xc2\xb9\x02\xec\xee\xe1\x2f\x01\x76\xf1\x3e\x76\x68\x20\x68\xbf\xdd\xeb\x0f\xec\x1e\x8e\xb7\x16\x13\x39\x64\xc6\x03\xa5\x06\xb5\x24\x03\xc0\x09\xa2\x69\x3e\x40\xdc\x55\x4f\xa3\xdb\xeb\xef\x61\xdc\x0a\x66\x62\x84\xd6\xdb\xb2\xae\x26\x90\xfc\xb1\x6c\x4a\xed\x67\x5c\x62\x25\xad\x16\x56\x58\x97\x04\x74\x0b\xc6\x12\xd5\xa6\xcb\x49\x78\x66\x84\x3f\x7a\x24\xc0\x93\xb5\x3b\x74\xae\x9b\x5f\x9e\x47\xcb\x33\xcc\xd2\x79\x79\x75\x13\x45\x0e\xda\x6b\xc5\x41\x61\x67\x18\x04\x1f\x3c\x94\x04\x09\x4b\x30\xf8\x67\xa6\xad\x6c\x00\xc8\x7d\x6e\xb2\x1b\x1f\xd9\x0a\x03\x55\xd0\xcf\x3e\x05\x4c\x64\x1c\x30\x8e\x52\xa8\x92\x64\x5d\x37\x06\x72\xef\x53\x80\x65\x62\x0f\xd7\xb4\x07\x91\x1d\x81\x34\xce\x57\xe2\x23\xc8\x13\x72\xca\x90\x71\xb6\x19\x5f\x53\x34\xd1\x73\x62\x70\x4a\xea\xe2\x7d\x31\xa8\x1e\xce\x82\x77\xa5\xb0\x91\xa5\x26\x0b\x62\x11\x70\x74\x24\x64\xd3\x17\xb7\xe7\xb7\x53\x64\x99\x04\x09\x67\x71\x3e\x44\x3c\x62\xa2\xa6\x52\x98\xb8\xae\xcb\xa4\x65\x8f\x7a\xec\xf2\x12\x7a\x3f\x6e\xf3\x11\x4c\xf2\xdd\xdd\x3c\xca\xa2\x2d\xcf\xa3\x28\x02\xa1\xcb\xc1\xfe\x39\x42\x9a\x95\xd1\x7d\x5a\xbf\xf6\x79\x2a\xab\x6f\xe6\xc8\x11\xc9\xed\x4e\x09\x1a\x7b\x9f\xa2\xb6\x50\xa4\x0f\x7e\xb5\x1d\x8a\x3e\xd1\x43\x11\x81\x63\x03\xcf\x0d\x9d\xf7\xaf\x0f\xf9\x4b\x8e\x37\x19\x08\xe7\xe1\x9c\x6e\x2c\xd1\xf3\x80\x99\x1b\xf4\x03\xb9\xf6\xed\xee\xc0\x09\xc9\x90\xf3\xf0\x43\xb9\x65\x46\x45\xda\x4f\x8e\x9f\x11\x28\xb0\x0c\x19\xd7\xa8\x60\x25\x8e\xcf\x4e\x0f\x0e\x8f\xce\x2e\x8e\x8e\x0f\x5e\xbc\x39\x7a\xa9\x50\xbf\x93\x9b\x2a\x74\x58\x1f\x78\x42\x70\x95\xe6\xa7\xd5\x2a\x78\xb8\xa5\xb7\x7a\x76\x76\x52\xd5\xe2\xd9\xd9\x89\xd6\x54\xf2\x2b\xd5\xc6\xc1\xe1\x9b\xca\x6e\x1d\x1c\xbe\xd1\x3b\xa4\xfd\x4c\x35\x73\x7a\xf0\xee\xfc\xf5\xf9\xeb\x93\xe3\xca\xc6\x4e\x21\xa1\x3c\xe7\x87\xde\x64\xee\x61\xaa\xe1\x97\x07\xe7\x07\x87\x47\xc7\xe7\x47\xef\x2e\xde\x9c\x1c\x1e\xbc\x89\x9b\x0d\x1d\x9e\x5c\x97\x71\x1b\x43\x84\x29\x22\xa9\x6a\xef\x5f\x5f\x1c\x9e\x1c\xff\xf4\xfa\x6f\x71\x79\xe2\xce\xd9\x81\xa1\x31\xd4\xc7\xdb\xa3\xf3\x77\xaf\x0f\xcf\x2e\x4e\xdf\x9d\xfc\xe3\xf5\xcb\xa3\x77\xa6\xcd\x81\x55\x0b\x5e\xff\xf2\xaf\x78\x50\x36\x60\xac\x37\xcf\x73\xaa\x95\x3d\x3b\x7a\xf7\x8f\xd7\x87\x47\x17\x2f\x0f\xce\x5e\xbd\x38\x39\x78\xf7\xf2\xe2\xfd\xbb\x37\xa6\x0d\x60\xab\x65\x79\xce\x04\x51\xe2\x0d\xc3\x8b\x29\x09\x3e\x7a\x23\x44\x5c\x68\x83\x20\xfb\xe6\xd3\xed\x85\x84\x79\x73\x03\xed\x23\xbc\xd8\x08\x86\xd7\x97\x01\x24\xa3\x8b\x19\xf1\x2f\xe2\xec\x8d\x2e\xb1\x81\x97\x1a\xf5\x8b\x83\xb3\x23\x36\x74\xf6\x75\x35\xee\x99\x96\x42\x28\x49\x17\xb4\xab\xe5\x08\x4a\x35\xf1\xea\xfc\xfc\x94\x8d\xf9\xfc\xe4\xf0\xe4\x4d\x66\x0d\x5d\xd7\x1d\xb6\x5a\xd6\xd0\xf5\xad\x99\x6d\x83\x21\xd7\xf2\xbf\xe2\x1e\x6f\x34\x18\x72\x5c\xd5\x6b\x4a\xa7\x3b\x5d\xa7\x6b\xe6\x1b\x7d\x7b\xf0\x0b\x5b\x93\xe3\xa3\x43\xbe\x4f\xcc\x9e\xca\x34\xa5\x4d\x64\xfa\xeb\x19\x50\xc8\xe4\xf6\x34\xaf\x77\x4d\xbb\x57\xf8\xe2\xf7\x92\x17\xe1\x74\x74\x6b\xda\x72\x3c\x31\x90\x94\x1c\xde\x23\x46\x76\x26\x79\x68\xb3\xf8\x34\x3b\xda\xcd\x2a\x4f\xf6\x08\x7d\x44\x7e\x30\xe5\x77\xad\xc0\xa1\x0c\x29\xbc\x62\x62\xa9\xf8\x35\x0c\x3e\x22\x1e\x52\x23\x7e\x52\x14\x52\x9e\x37\x0b\x73\x48\x14\xa5\xa4\xcc\x11\x12\xa5\x3f\x55\x93\x93\xa6\x23\xaf\x8f\xcf\xdf\x88\x73\x70\x64\xf6\x90\x93\x7f\xea\x4a\x3c\x4d\x62\x67\xb2\x13\x68\x90\x2b\x7a\xad\x97\x47\x2f\xde\xff\x2d\xdb\x14\x7f\xe8\x6e\x6f\x6b\x64\xb8\xa4\xd9\xa2\x76\x35\x8a\xa2\x35\xac\xd3\x99\xa5\x9b\x4e\x93\x51\xad\xf5\x0c\x7d\x5d\xfa\x03\x09\x45\xd5\x1a\xd7\xc8\xec\xd2\x0d\xe7\xe8\xa3\xd6\x7e\x9e\x76\x2e\xfd\x99\x22\xa2\xa5\x7d\xa9\x90\xa6\x2d\xfd\x31\x8d\xc6\xc6\x5f\x88\x9f\xe9\x77\x38\xc9\x26\x71\xe3\x56\x01\x92\x58\xd5\x6d\x30\x8f\x34\xd4\x63\xdc\xa7\x83\x94\x87\x4c\x6c\x4c\xa0\x83\x28\xab\x26\x15\x01\x44\x0a\x5c\x20\x7d\x5c\x8a\xd2\x75\xf7\x4a\x0a\x1c\x1c\x1f\xbe\x3a\x79\x77\x71\x76\xf4\x46\x10\x28\x45\xfb\x8a\x66\x07\x5a\xd4\xbe\xbb\xeb\x64\xe7\xe8\xee\x6e\x62\x51\x3b\x3b\x47\x59\x3c\x29\x45\x74\x44\x23\x45\x35\xd4\xac\x56\xdf\x83\xe5\xb7\x78\x25\xe7\x51\xca\x40\xd4\x5d\xe7\x25\xfb\x4c\xdc\x9d\x65\x6f\xb5\x5d\x98\xfa\x70\xe1\x85\xd9\x2b\xbd\xcb\x2a\x6e\xa8\xfa\x7b\x46\xce\xf7\x84\xcf\xf7\x48\xc0\x96\x67\x2e\x80\x89\x30\xa8\xd7\xc9\x57\x05\x36\x89\x8d\x7b\xb1\x79\x63\x4b\xda\x36\xe3\xbb\xac\x6f\xc6\x5a\x62\xe4\x4c\x38\x07\xbd\x63\x39\xdf\xd9\xff\xe9\xf3\xff\x0f\x76\xd4\x45\xdf\x8d\x65\x07\xd3\x04\x68\x50\x39\xbe\x6b\x6e\xb6\x15\xc9\xcd\xda\xde\xf8\xb3\xe6\x36\x2b\xc2\x26\x4e\x2c\xc3\x2b\x26\xf1\x99\x27\xd8\x27\x42\x0d\x85\xfb\x9d\x01\x9b\xd0\x7d\xf6\x47\x8f\x5a\xec\x1f\x40\xea\xd6\x9f\x73\x36\x70\xe8\xef\x78\xa1\xb0\x5e\xb5\x19\x8b\x86\x48\x5b\xc6\x84\x7f\xc9\xe2\xb6\x49\xa6\x43\x83\xf7\xd3\x98\xc0\x0f\x1e\xbe\x32\xd8\x2a\xf7\x0c\x32\x1d\xf6\x8c\x21\xc4\xdf\x52\x83\x09\x6f\xc6\x04\xd1\xeb\x60\x64\x1c\x1c\xbe\x31\x8b\xbc\x59\x14\x41\xb4\x68\xab\x45\xe3\xec\xa1\x34\xc9\x14\x9a\xfa\xe1\x8c\x10\x85\x9e\x6f\xb7\x5a\x7c\xff\xe6\xdf\xc4\x1b\x1a\xd5\xb8\x03\xf1\xa9\x17\x0f\xd7\x3b\xcf\xaf\x8e\x0e\x5e\x1e\xbd\x3b\xbb\x38\xfb\xd7\xdb\x17\x27\x6f\xdc\xe4\xc1\xcb\xd7\x7f\x3b\x3a\x3b\xd7\x1e\x9c\x9f\xfc\x7c\x74\xac\xfd\x7e\x7d\xfc\xf2\xe8\x17\xbd\x42\x4c\x9e\xb5\x87\xc7\x07\x6f\x8f\x38\xf9\xd5\x9e\xc5\x94\x35\xb1\xbd\xe7\x5f\x99\xbf\xb4\x0f\xc5\x1c\xc4\xc2\x91\xb9\x55\xd4\x6e\x52\x30\x96\x14\xf5\x82\x5a\xaf\x92\x92\x89\xc4\xa4\x17\x15\x03\x4a\x4a\xf1\x64\x30\x7a\x01\x31\x03\x49\x81\xf3\xe0\x03\x4a\xf5\x4a\xce\x59\x52\x42\xca\xe0\xaf\x60\x78\xad\x97\x93\x93\x6d\x5e\x5c\x88\x25\xbd\x98\x79\x17\x6c\x85\x2f\xae\x11\x1c\x21\x12\x5e\x5c\x98\xf5\x9b\x41\xe0\x88\xca\x1a\x1b\x3f\x7c\x05\x2e\xbe\x31\xfd\x2d\xe6\xe4\x85\x52\x07\x03\xc7\x71\x18\x3b\xaf\x64\xb0\x5e\x92\x96\x8f\xe8\x2e\x07\xa8\x8f\xa5\xde\x67\xe0\x12\x29\x99\xf5\x4c\xe5\x56\xc4\xa1\x29\xb8\xff\x40\x83\x63\x22\x66\x86\x2b\x4d\xda\x53\x48\xe0\xe4\x0b\x4f\x48\x25\x72\x92\xbe\x7f\xf7\xfa\x50\x79\x88\xe7\x38\x3c\x9a\xca\x96\x94\xf1\x91\xc0\x05\xc2\x14\x96\xae\x44\x7d\x1f\x84\x03\x17\x26\x4e\x8b\xae\xeb\x86\x31\x67\xb9\x25\x12\xbc\x20\xcb\xcf\xa4\x44\x14\x7a\x59\xcb\x73\x7f\xfd\x66\x4e\xa2\xfe\x37\x73\x2f\x1a\xfc\x2a\xb0\x45\x58\x03\xfb\x58\xe5\x27\xf4\xec\x9e\x82\x59\x4a\xf2\x43\x25\xaf\xa9\x15\x02\xcf\xb6\x7b\xf1\x83\x5f\x59\x53\xee\x37\x73\x64\x85\x76\xf4\xab\x1d\xd9\xa0\x3f\x50\x82\x78\xcb\x5c\x60\x79\x67\x64\xcd\x94\xb0\xd8\xe9\xad\xe0\x2a\x56\x3e\xc5\xf9\xeb\x18\x40\x6e\x0b\x96\x09\x64\x9f\x77\xf7\x49\xbb\xdb\xeb\xd8\xc0\x77\xbb\xcf\xfc\x1f\xc8\x33\xff\xc1\x03\x1b\xf6\xfd\x76\x77\xa0\xed\x06\x7f\x20\x33\x6d\x75\x13\x67\xc7\x4c\xee\x2c\xb6\xf4\x1c\xed\x9e\x67\x41\x10\xe7\xe4\x8c\x42\xc2\xf1\x5e\xf8\xd5\xa2\x89\xf9\xfb\xa6\x04\x03\x11\x69\xba\x76\xf3\x25\xfe\x83\xff\x83\x25\xb8\xd5\x5e\xd1\x5b\xf6\x6e\x6f\x5b\x35\xf0\xd0\x96\xde\x0f\x9a\x4d\x89\x0c\xf6\xd9\xff\x7a\xa6\xa9\xa4\x74\x99\x1b\xdb\xe8\x2a\x9d\x86\xd2\x5b\xe4\x2c\xd5\x7e\xcf\x17\x1b\x4e\x03\x37\x4b\xdb\xbb\x7d\xbb\xe7\xbb\x7e\x66\x12\xe2\xb5\x30\xcd\x07\x48\x24\x61\x48\xa5\x79\x8e\x52\x58\x69\x4b\x74\x22\xb7\x8d\x59\x19\x6a\xf9\xa9\x96\xf7\xe2\x1c\x1b\x8a\x9e\x89\xc9\xec\x77\x94\x88\xf6\xeb\x37\x73\x1c\x7d\x33\xf7\xa3\x5f\x23\x5b\x75\x2f\x26\x63\x0d\xb6\xf7\x06\x79\xa9\x94\x6d\x8b\xc6\xb6\x2d\x6e\x82\x2c\x43\x57\x89\x6d\x4b\x71\x32\x13\x17\xe9\x06\x19\x5a\x3b\xa0\x8d\xdc\x50\x87\x27\xc7\xe7\x47\xc7\xe7\x17\xe7\xff\x3a\x65\xac\xc5\xe1\xc1\xe1\xab\x23\x26\xf2\x9c\xbf\x3b\x79\x93\xb0\x15\xe9\xc7\xe6\x21\x1c\x5e\xa3\xb6\xcc\x80\xc4\xee\xe3\x54\x2b\xa6\xbc\xac\xdb\xe7\x8c\xed\xaf\x1d\x96\x60\x14\xd7\x3b\xaa\xd3\x13\xce\x71\xbd\x3c\x7a\x73\x74\xce\x86\x75\xfa\xfe\x3c\x19\x0c\xfb\x61\x9e\xbe\x3f\x67\x1d\x97\x25\x4c\xf1\x2f\x7b\xc2\xab\x9a\xec\xff\xf5\x5d\x27\xe8\xf7\x59\x26\xc5\x64\x53\x10\xf2\x9c\xa9\x55\x0f\xb7\xf8\x2f\x0e\x26\x21\x7a\x30\x09\x75\xbb\xcf\x68\x3e\x98\x84\x26\x29\x6e\xb3\xc1\x24\x54\xbf\xf1\x29\x17\xc8\xe8\xff\xee\xee\xab\x08\x42\x8b\x54\x04\x93\x40\xee\xe8\x47\x3e\x47\x30\x09\x77\x3e\x4d\xfa\xb4\xf6\x60\x12\x52\x1e\x4c\x02\xff\x34\xc1\x24\x29\x2a\xea\x6b\x1e\x02\xb2\x40\x96\x92\xb2\x41\x09\x5a\xaa\xc0\x13\x67\xc4\x57\x48\x51\x17\x82\x8c\x28\x9c\x29\x25\x00\xb8\x38\xf3\x9b\x58\xc4\x9a\x47\x00\x33\x1e\x18\xcc\x15\x2c\xa3\xd0\x50\xf4\x4c\xb6\x75\x3d\x01\xd3\xb1\xf3\x5b\x18\xf0\x7c\x1b\x49\x6a\x33\xbd\x21\xe7\x32\x18\xdd\x8a\xbb\x5e\xa1\x2f\xa9\x57\xfd\x74\xab\x03\xd7\xa4\xe8\x93\x8a\xbe\x0d\x29\x41\x70\x62\xda\x91\x2c\x9c\x45\x83\x92\x8f\x05\x10\x14\x52\x70\x82\x9f\xae\x89\x1a\x59\x55\x6e\x90\x88\xa0\x70\x1a\x70\x08\xf3\xa2\x74\x20\xa5\x58\x61\x02\xda\x04\x09\xde\x08\x69\x57\x94\xc6\x75\x67\x2e\x2f\x0e\xd5\xa2\xdd\x65\x99\xd7\x85\x79\xee\x4a\x00\x7c\xd3\x90\x5b\xd5\xe9\x2e\x86\x01\xc6\xa8\xc8\x27\x93\x4d\x51\x04\x2f\x03\xc6\xca\xad\x26\x44\x74\xb8\xdf\x55\x7e\xc9\x14\xa8\x58\xbc\x70\xd9\x75\x96\x03\xd0\x2f\xf8\xad\x14\x3c\xb8\xde\x79\x1e\xba\xa9\x03\x94\x29\xad\x73\x69\x2a\x93\x6e\x8f\x3a\x72\x80\x51\xa4\x73\x0e\x7e\xed\x3d\x25\xf3\xaa\xad\xf5\x8a\x7d\x7d\x7c\x7e\xf4\xee\xf8\x40\xe8\x5f\x8f\xde\x5d\x1c\xbd\x7b\x77\xf2\xce\x45\xce\x4f\x27\xef\x5e\xbc\x7e\xf9\x92\x6b\x38\xde\x1f\x1f\xbc\x3f\x7f\x75\xf2\xee\xf5\xbf\x8f\x5e\xba\xc8\x39\xf9\x39\xb9\x84\x4f\x7e\x76\x77\x3b\xec\x8f\x54\x99\xbd\x4e\x77\x4b\x6f\x62\xaf\xf3\x70\xab\xec\x53\x8f\x3a\x9d\xda\x81\x7f\xba\xae\xe2\x00\xbf\xc6\x6f\x7e\x8d\xdf\xfc\x2b\xc7\x6f\x66\x45\x72\x92\x38\xa3\x63\x74\x63\xd1\xbb\xbb\x5f\xde\xbe\x79\x45\xe9\xf4\x9d\xe0\x73\xed\x2d\xe8\x04\x98\xd3\x27\x46\x51\x90\x70\x74\xd3\xb5\x37\xde\xd8\xda\x2b\x47\xcf\xe4\xfe\xf7\xd2\xa7\xed\xc0\xf7\xdf\xf1\xcb\x2a\x44\xaf\x14\x41\x4d\x24\x41\xd3\x16\x04\x32\xa1\xa7\xcf\x19\xb9\x90\x2e\xc3\xe2\xc9\x0f\x7b\x9d\x8e\x86\x7b\xc3\xa8\xeb\x47\x44\x28\xbf\x80\x19\xf5\x36\xf8\x05\x3e\x50\x20\xe1\xe2\x5b\xf6\x16\x71\xc2\xd9\x70\x88\xc2\xd0\xa2\x00\xe9\x22\x99\xfe\xf7\x39\xfa\x44\xa5\x27\x36\x91\xc0\x5f\x71\xce\x2f\xd1\x10\x2b\x51\x55\x5b\xfc\x16\x78\xad\x5b\x84\x23\xc5\xf8\x88\x22\x7d\x48\x76\xa4\xc2\x21\x88\x33\x23\xfe\x96\xef\x30\xfe\xe7\x9f\x1e\xbd\x96\xba\x07\x8b\x09\xef\xe1\xec\x32\xa4\x84\x27\xd2\x50\x5e\x44\xb6\x0d\xa0\x80\xbf\x24\x8e\x60\x7b\x80\xcf\xce\x60\x82\x71\x4d\xd4\x2d\xc5\xa8\x8e\xfa\xdb\x9d\x6b\xf9\x73\x55\x3c\xad\x7a\x29\xf9\xa1\x5f\xda\x72\xad\xd1\xa8\xcd\x7a\x62\xf6\xcc\xf4\x1e\x30\xa3\x58\xc1\x95\x51\x9e\x85\xc9\x91\x43\x32\xc4\x88\x02\x3c\x70\x63\x1f\x36\xe8\x84\x88\xca\x66\xc4\x9a\x73\x74\xc4\xc8\x06\xc4\xb9\x44\xe3\x80\xa0\x33\x84\x47\xdc\xd1\xd5\x09\xd9\x5f\x84\x33\x59\x36\x80\xd5\xd2\xbe\x87\xa9\xbf\x33\xf1\xc2\xd0\xc3\x57\xed\x98\xb9\xd9\xb4\xb5\x29\xc1\x65\x90\xbb\xd6\x31\x6d\x67\x1a\x4c\x93\x6d\xdc\x8e\xb5\x2a\x46\xac\xaa\xfd\xf5\x9b\x39\x4d\x96\xb4\x6b\x3b\x34\x78\x3f\x9d\x2a\xab\x6f\xa4\xbd\xed\xda\xd1\xaf\xd5\xc3\x0e\x7f\x0a\xb2\xf1\x54\x5f\x9e\x4a\xd6\x8c\x41\xe3\x77\x4c\xc1\x5c\x72\x6b\x62\xbb\x5b\xed\xb5\xfc\x01\xdd\x9e\x0b\x57\xd8\x2f\x1d\xdb\x63\x47\x0d\xd0\xe2\xfe\x88\xfb\xa6\xd9\x43\x6a\x0b\xd4\xa4\xa2\xf0\xd1\x98\xb6\x29\xf1\x26\x5f\xfa\x12\x2e\xef\x60\x1b\x2f\xbf\xcc\xc0\x99\xf8\x2c\xef\x23\xb5\xd3\xa9\xc2\x4f\xed\xa1\xca\xe9\x9a\xc0\xdb\x4b\xd4\x1e\x42\xff\xbe\xf4\xd5\xb1\x1b\x6b\x69\x0e\x22\xda\x6a\x21\xcb\x06\xb8\x16\x67\x7b\x82\xc8\x15\x6a\xf3\x70\x9b\xb0\x2c\x3c\x77\x32\xf3\xa9\xd7\x9e\xc0\x02\x65\xd1\xea\x52\xf7\xfa\xb7\x49\x7f\x50\xe4\x47\x5d\xb6\x4d\x5a\x2d\xfd\x57\x51\x74\x61\xc3\x3c\xa4\x71\xc8\xa3\xc6\xba\x18\x04\xf8\x8c\xd4\x5c\x7b\x63\x6a\xf1\x08\x3a\xe5\x21\x6d\x99\x82\x0a\x9d\x09\x97\xc8\x63\x38\x41\xad\x16\xbf\x98\x2c\xe4\x1c\x07\x23\x04\x90\x73\xc8\x56\xe5\xf5\x4b\x1b\x20\xdb\x56\xd6\x16\x94\x09\x4f\x4e\xb2\x49\xec\xa3\x1e\x8a\x8d\x34\xd9\x20\x66\x26\x49\x0a\xdf\x65\xed\x83\x02\x92\x1c\x8a\x88\x00\xfe\x51\xfb\xee\xae\x3f\xd0\x62\xe2\x68\xdc\x87\x04\x0e\x43\x74\x52\x94\x07\x49\x81\x98\x1d\x8d\x23\x18\x50\x04\xfa\x03\x9b\x9b\x83\x12\x2f\xed\x56\x2b\xd4\xdc\xc6\x53\x79\x32\x8e\x3e\x4d\x83\x90\x27\xc0\xb1\xd3\x37\x78\x12\x1c\xa6\x4a\xa1\x91\x29\x2e\xec\xb0\x7a\x73\x7b\xd8\x9b\x78\x7f\xa0\xb7\xc1\x08\x6d\xfc\xac\xf2\xd9\x4c\x9b\x3d\x90\xe6\xd2\xd2\x3c\xc9\xc8\x31\xba\xe1\xa9\x42\x32\xe6\x92\x04\xbc\xf3\xf5\xcb\x5e\xaa\xca\xeb\x97\xa6\x0d\x78\x9c\x6a\xea\x31\x7b\x62\x72\xc2\x5f\x39\x49\x38\xc0\x6d\x34\x99\xd2\xdb\x76\x26\x2c\xe7\x73\x3b\xc7\xc4\x60\xd9\x62\xa7\xee\xcf\xa3\xde\xbc\x8f\x06\x3d\x5a\xe3\xc4\x22\x61\xcb\x46\x32\xb9\xf7\x97\x7d\x87\xa9\x1c\x7d\x4b\x5f\x64\x15\xe9\xed\x57\x75\x2a\xd2\xc6\x18\xe9\x99\xb7\x10\x3f\x85\xc4\x4a\x67\x14\x43\x16\x3f\x81\x98\x07\xdf\x57\x2e\x10\xf1\xae\xae\xff\x02\xfc\x85\x86\xa3\x26\xe4\x23\xc5\x4f\x30\x09\x12\x3f\x77\x3b\x09\x31\xf0\x61\x48\x5f\xc7\x1c\x08\x0f\x5b\x41\x09\x37\x8e\xed\x04\x26\xa7\x9a\x13\x21\xc1\x8c\x7a\xf8\x6a\x87\xa0\x91\x47\xd0\x90\xb6\x69\x70\x2f\x27\x38\x8e\xd2\xe1\x92\x69\x30\xa3\x02\x05\x47\x13\x48\x62\x27\xfd\xae\x92\x45\x1c\x1e\x40\xcd\x25\xd9\xa9\x0f\x87\x88\xcb\x9b\xdc\xd6\xea\x7c\x33\x47\xd1\xaf\xa0\x0e\x0e\x48\x0d\x9e\x12\x88\x43\xee\x4f\xf4\xf9\xf2\x9d\xaf\xe0\xb8\x07\x0a\x72\xa5\xef\xa6\x79\x09\xc9\x1a\x49\xdf\x0c\xae\xe2\x76\xa1\x42\xe7\x33\xf9\xfc\xf6\x34\x0b\x81\x69\x4b\x83\x3e\x60\xe2\x34\x02\xc4\x06\x9e\xc2\x2d\xf2\x5d\xcf\x99\x42\x82\x30\x7d\x66\x87\x6e\xa8\x18\x04\x6c\xf9\x80\xd8\xac\x9c\x9f\x44\x92\x12\xf4\x11\x11\x91\x14\xc8\x42\x3c\x9e\xe9\xee\x4e\xb7\x44\x98\x20\x04\xc4\x8e\xf2\xf0\x3e\x1a\x9f\xda\x47\xc0\x71\x1c\x3a\x88\x00\x5e\x9f\x6c\x13\x93\x23\x0b\x39\xdc\xfd\x87\x3b\x86\x09\x5e\x25\xe3\x58\x91\x8f\x97\xa5\x7d\x3c\xd8\x67\xff\xeb\xc9\xca\x61\x1f\x0f\xd8\xf5\x1a\x0f\xb7\xd1\x11\xbb\x81\xfe\x87\xcf\x7f\xb6\xec\x39\x4d\xe5\x88\x43\x03\x3b\xe2\x69\xc0\x67\x93\xa9\x8b\x1c\xd6\xa9\xaa\x24\xe0\x71\xbf\x64\xa6\x88\x98\xad\xc2\x92\x27\xbc\x08\xa6\x02\xaf\x84\xd1\xa0\x34\x3e\x2f\xe1\x33\xe7\xa8\x12\x22\x4f\xee\x56\xaa\xbd\x3e\x1e\xd8\xda\x4a\x5a\x50\x27\xc5\x99\xe4\x76\x7d\x3c\x18\xf0\xac\x88\x31\x89\x90\xf0\x48\x91\x9e\x12\x2d\x31\x64\x89\xbf\xdc\xb9\xfa\x7e\x6f\x3e\x85\xf4\xba\x67\x9a\x91\x48\x36\xce\x87\x4e\xb7\xe4\x54\xf0\xac\xa6\xcd\xd6\xd1\xf3\x47\x43\x48\xd6\x6c\xe7\x6f\x48\x27\x05\xf6\xc9\x76\x77\x8b\x92\xdb\x39\x76\xb9\xa3\x8e\xce\xb3\x51\x3b\x9e\x6f\x87\x0d\x37\xf1\xe1\xf9\xce\x54\xe8\xa6\xc4\x9e\x27\xba\xf5\xca\x21\x87\x08\x92\xe1\xf5\x0e\xfa\x04\x87\x35\xae\x01\xb2\xe4\x94\xdd\x23\x43\x48\xd1\xe7\x09\xc0\x56\xe6\xd5\xf8\xb3\xba\x0f\xa2\x9b\x41\x8e\x00\x99\x5b\xbe\x80\x98\x2c\xa8\x08\x92\x1e\xbc\x34\x90\x01\x10\x99\xc8\x87\xb4\x27\x6f\xc3\x80\x65\x39\x91\xe3\xd9\x1f\x7f\xdc\xa6\xa7\x7c\x3c\x0b\x91\xf3\x5b\xb8\x59\x11\x9a\xcf\x71\xc6\x5c\x8d\xa5\x39\x90\x75\x80\xcb\xa4\xf1\xc4\x5b\x08\xcc\xa5\xa8\xf7\x96\x6d\x2d\x14\xf6\xb6\x3b\x20\xbc\x0e\x66\xfe\xe8\x2c\x20\xb4\xb7\xdd\x05\xf4\x9a\xa0\xf0\x3a\xf0\x47\x3d\x67\x0f\xb0\x53\xdf\x4b\x21\x53\xf1\xf8\x58\x44\x42\x2e\x38\x82\x2b\x44\x7f\xc2\x3d\x29\x73\x26\x2f\xfb\xb4\xdf\x19\x0c\x2c\x25\x5d\x26\x13\x1e\xd9\x91\x98\x30\x3d\x73\x99\xea\xab\x13\xbf\x52\x32\x33\x72\x3c\x8a\x26\x35\xcc\x66\x6e\x2b\x6f\xd2\xf1\xaa\x7a\xe6\x15\xa4\x31\xeb\x75\xa8\xcc\xe6\xf2\x78\xbb\x54\x1b\x7a\xca\x38\xab\x9f\x86\x14\xfc\x09\x6f\x46\x13\x9e\xb3\xb8\x5a\x5a\xeb\xf1\xb2\x08\xa8\x2c\xac\x23\x6d\xe1\x18\xfd\x01\x6a\x5f\xc8\xfa\xeb\xed\xfb\x12\x65\xcb\xee\x71\x8f\xb9\x3a\x3d\x92\x9c\x76\x82\xae\xd0\xa7\x1a\x38\xf0\x2f\x88\xd8\x70\x42\xc2\x89\xb1\xc8\x5a\xf3\x0e\x5d\x1d\x7d\x9a\x72\x31\xdc\xb4\xb3\x71\xdc\xec\x8e\xd9\xee\xc6\x7a\x0e\xf7\x39\x75\x28\x0a\x29\xa7\x0f\x4d\xc9\x83\x08\x5f\xdf\xe1\xb1\xec\xed\xcf\x93\xd2\xee\x1e\x85\x22\x89\x30\xaf\x47\xee\x2f\x0f\x71\xc0\x23\xd6\x84\xd7\xa7\x37\xbe\x5d\x3e\x55\x77\x12\xf9\x56\xc4\x89\xef\x15\xb6\xb1\xa7\xb7\xb1\x37\x48\xe1\xb3\xc8\x41\xa6\xdd\x45\x38\x4e\x9e\x96\xde\xde\x4a\x92\xd1\xcd\x3f\xa0\xdb\x1e\xe2\x19\xb3\xd5\x41\x44\x0f\xcc\x9e\xba\x95\xe6\x0a\x80\xb3\x97\x65\x9f\x65\xa2\x24\x8e\x7b\xf0\xeb\x37\x73\x3f\xe2\x62\x92\xbd\x95\xcb\x82\x8b\xb9\x53\xf1\xb7\xa6\xf9\xad\x2d\x19\x0d\xc2\x64\x75\xb1\x9d\xa1\x3d\xc7\xae\x69\x26\x2c\x84\x44\xe3\x49\x7d\x10\x10\x2d\x7d\x99\x4b\x52\x40\x3f\x02\x87\x44\xa5\x4b\xe0\x1f\x20\x2e\xb6\x88\xfa\x80\x67\xcf\x09\xff\x78\xa4\x4c\x7c\x1c\xc2\x3e\xd3\x6d\x40\x62\xd2\x03\xf5\xd1\x80\x50\x21\xbf\xe7\x27\x21\xc1\x82\x10\x25\x72\x33\x51\xd8\x20\x8e\x00\xf4\xfd\x02\x08\xb5\x0c\x6b\x9c\xd7\x98\x6a\x1c\x29\x63\xc1\xcc\x07\xbe\xad\x77\x42\xca\xeb\xca\x1c\x6a\x6f\xf1\x08\x50\x65\x57\x16\x13\x84\x35\x33\xbd\x0c\x76\xa8\xa2\x0f\x32\x0c\xde\xfb\xe3\x0b\x27\x0a\xfd\xc1\x96\x16\xab\xc7\x2f\x67\x53\x85\xf0\xb7\xcd\x07\xa8\x5a\xa4\xa2\xde\xf0\x43\x31\x24\xe8\x92\x2e\xab\x4b\xcc\xc8\xf9\x0d\x42\xd8\x45\xce\x39\xef\x4b\x36\x5b\x44\x3a\x51\x65\xb1\x23\xe0\x8a\x53\xd8\x45\x0f\x77\x1e\x77\xb6\x52\x7e\x84\x21\xa2\xef\xc4\xcd\x14\xb1\x39\xaa\xf4\x44\x63\x05\x4c\x20\x41\xa9\x39\x90\x15\x63\xa6\x54\xfd\x39\xc7\x06\x7b\x8d\x29\x22\x1f\xa1\x2f\xdd\x02\x3d\xf9\x53\x79\x2d\xaa\xdf\x2e\x3b\x9e\xaa\x28\xbb\xe5\x44\x0e\x47\xde\x03\x80\xec\x68\x24\x92\x0b\x5b\x35\xad\x46\x11\x20\xa5\x33\x17\x52\x48\xbd\xa1\x91\x34\x95\x44\xa5\xa8\x32\x62\x29\xfe\x46\x82\xd9\x94\x7b\x0b\xe4\x1f\x3b\x71\x75\x30\xe2\xc9\xb6\x8d\xa2\x52\x76\x94\x62\xc3\x32\xbe\x9a\x5c\x7f\x3a\xfc\x00\x45\x62\x9a\xd4\x3c\x5f\x50\xf9\x42\x8e\x3d\x4a\x97\xcd\x14\x72\x91\x26\xb7\xa6\xab\x5f\x21\xd9\x9f\xd8\x23\x33\xff\xca\x55\x13\x2d\xfb\xc5\x4a\x64\xdb\x61\x7f\x24\x49\x34\x92\x17\x76\x74\xa5\xf5\x2c\xe3\x7f\xa8\x0a\x45\x5e\x78\xe0\x7b\x1f\x73\xef\xe5\xe3\x28\x14\xe1\x26\xf3\xd4\x53\x77\xbb\x03\x14\x05\xd3\xa6\xd4\xb2\xf3\xb9\x3c\xd5\x0e\x54\x9d\xaf\xf2\xb4\xe4\xdf\xca\xed\x56\x1a\x4c\xf3\xdf\xef\x96\x7c\xbf\x28\xf5\xe9\x62\x5d\x08\xa6\xd9\x1e\xc0\x21\xf5\x3e\xa2\xc3\x60\x96\x4b\x86\x9a\x1f\xbe\x5e\x54\x6d\x0c\xf5\x3a\xde\x1b\x57\xec\xa7\x8b\xa2\x6c\xf5\x79\x16\x72\x44\x2b\xde\x6a\x59\x9a\xbb\x4c\xe3\xb3\xc0\xf9\xd5\xf8\x28\x8b\x0f\x17\x9e\x06\xbd\x04\xc7\x71\x96\xfb\x8f\x24\x68\xa8\x08\x86\xe8\x64\x96\xc2\x03\xa5\xa9\x4c\xfe\x68\xc7\x25\x00\x7f\x67\xb5\xdb\xe8\x3b\xf4\x1d\x7a\xd0\xb5\x1f\xd0\x28\x02\xbe\x8b\x41\x98\x39\xf2\x79\x41\x48\x4d\x8e\xcc\xb4\x36\x26\x70\x82\x54\xee\x5c\x4e\x79\x86\x44\x64\xa0\xea\xda\x6c\xcf\x52\x19\x07\x55\x98\x9c\x96\x57\xfe\xc1\xed\xf2\x82\x47\x78\x54\x55\xec\xb9\x3a\x4e\x01\x85\x3e\x7f\x12\x46\xb9\x5d\x5c\xb2\xec\x45\x1b\x3e\x0d\xe9\x57\xb4\x1f\xcb\x1b\xab\x4f\x41\x2f\x4f\x43\xaa\x81\x80\x06\x07\x78\x74\xc6\xde\xe4\x87\x67\x47\x53\x1f\xde\x16\x57\x39\x65\x6f\x8a\xaa\x84\x05\x73\x5b\x57\x47\xef\x06\x2a\x5c\xcc\x8c\x7b\xb1\x36\xf0\x04\x49\x3d\xa6\x46\xad\x96\xc8\xf7\xa5\xf0\x17\xf5\xcf\xaf\xa1\xf9\xbb\x3b\xd6\x3c\x1f\xa5\x6c\x3f\x29\x5e\x72\x0c\x69\x9e\x56\x23\x22\xcc\xf7\x32\x0d\x18\xd0\xdf\xb0\xd3\xff\x13\xdf\x4e\x59\xb5\x85\xbe\xd5\x14\x82\x65\x6a\x87\x67\xcb\x7b\xea\x8d\x2a\x1d\xe5\x2f\x4a\x92\xdc\x7a\x91\x7c\x49\x83\xdc\x09\x2d\xd1\xf3\xa6\x34\xe3\xb4\x8f\x07\x6d\x17\x09\xf5\x37\x07\xf8\x0e\xe3\x76\x1c\xb1\x99\xa2\x9c\x06\x63\xa5\xcc\x39\xdd\xdd\xe5\xe5\x34\xe8\x48\xb2\x94\xe3\x91\xde\x72\x57\x43\x8b\x24\x4f\x18\xcf\x17\xea\xa8\x89\x32\x37\x24\x4a\x9e\xc8\x15\xc3\xb9\xeb\x76\x1c\x90\x1b\x48\x46\x61\x74\x31\x25\x01\xf7\xc7\xcc\x68\xcd\xf9\x4a\x4d\xd9\x17\xd2\x6e\x09\xa9\x4d\x29\xc3\x3e\x0a\x0e\x50\xcc\x6c\x79\xd4\x83\x3e\xf7\x57\xed\xa3\x01\xd0\x9a\x4d\x7e\x6a\xfb\xc7\xde\x4a\x63\x43\x3b\x17\x12\x95\x99\x27\xba\xb2\x23\xd5\xed\x42\xf2\xfa\x43\x9e\xf4\xed\x27\x03\x11\x83\x04\xf9\x6a\x0f\xdc\xcc\xb6\xb4\x7b\x05\x03\xca\xb7\x0d\x72\xf4\x4e\x1c\x70\x3b\xba\x84\xc3\x0f\xe5\xdd\x6c\x67\xbf\x57\xd0\xa7\xe7\x6e\x67\x3f\xd3\x73\xd9\x29\x32\xc3\xe9\x15\x2c\xa8\xed\x66\xd9\x09\xad\x6f\x3a\xe1\x29\x23\x0d\xfa\xaa\xc5\x04\x42\x7f\xe8\xce\xe3\x9c\x80\xd5\xbb\xa5\x70\x17\xb8\xfa\xca\xf6\x11\x3f\x97\x22\x33\xbc\xde\xb9\xcc\x45\xa1\xed\xee\xb9\x5e\x5f\xf2\x1d\xf1\xbb\x34\x65\x12\x79\x1c\xe3\xb3\x92\x7d\xcf\x7b\xac\xd1\x2c\x79\xc6\xe2\x4f\xa8\xa8\x26\xc1\x41\x70\xe1\x29\xac\x96\xf1\xa8\x8f\x32\x72\x6c\x8c\xf3\xea\x7b\x6d\xa1\xb3\x68\x2b\x80\x96\x4c\xa5\xd5\x25\xbc\xd2\x0a\x92\x43\x32\xc1\x3c\xed\xf3\x7e\x55\x04\x27\x9d\x08\x30\x51\x54\x99\xe5\x82\x06\x93\xe0\x8a\xc0\xe9\xf5\x67\x70\x13\xcd\xd9\x95\x00\x56\xc1\x1f\x4f\xd5\x7f\x00\xba\xed\xe4\x87\xef\xf6\x07\x5b\xb8\xe0\x52\x08\x05\x50\x3b\x87\x6a\x0c\x46\x48\x34\xe3\xb9\xa1\x73\x86\xae\x38\x9c\x68\x51\x25\x91\xda\x5e\xd4\xd8\x76\x85\x23\x18\xbb\xd4\x65\x1d\xd7\xf5\x54\x04\x0b\xb2\x42\x40\xed\x2d\x5f\xb8\x84\xcd\x71\x30\x42\x3d\xe9\x38\x36\xf2\x42\x0a\xf1\x10\xf5\x30\x08\x45\xbd\x9e\x17\xd9\x00\xff\x20\xd2\xde\x63\x1b\xe0\xe7\x90\x9b\x14\xb1\x50\x26\xf8\x4e\x18\x10\x9a\x85\xa4\x88\xb5\x10\xaa\xbd\x36\x8d\xff\x94\x8e\x4f\x3c\xb9\x5f\x08\x3c\x57\x29\x6a\x40\xe0\xbe\x85\xf4\xda\x19\xfb\x41\x40\x2c\x6f\x67\x37\x66\x23\xbc\xe7\x9d\xfd\xd0\xf5\xfe\x77\x77\xdf\xef\x07\x83\xb8\xa1\x9e\xe5\xf7\x83\x76\x37\x79\xf0\x20\xf5\xda\xde\xd9\xed\x59\xa1\xdb\x01\xc4\xed\x00\xe8\x76\x44\xc6\x47\xfe\x2a\xec\xf9\x60\xe2\xe1\x1e\x57\x37\xbe\x66\x2c\x6e\xa7\xf3\x1d\xb1\x77\xba\x9d\x0e\xe0\x29\x6b\x33\xaf\x42\xf9\x0a\x7e\x4a\x3f\x87\xfc\x79\x8d\xf2\x68\x36\x1c\x7b\x24\xfc\x6c\x2e\x5c\xbf\x7e\x33\x47\x95\x1e\xe4\xa8\xb1\x07\xf9\x6c\x3a\x82\x14\xb5\x39\xca\x7d\x5b\x06\xed\x6f\xdc\xb3\x56\xb2\x4f\x09\xf2\x31\xd9\xd7\x00\x92\x01\xb6\x7b\x89\x84\x84\xb8\x41\x85\x7b\xec\x14\x79\xe4\x19\xba\x0d\x17\xdb\xac\xad\xc8\x96\x60\xc8\x6c\x13\xf3\x9c\xec\x7c\x43\x04\x63\x59\x56\x0c\xe2\x94\x04\x9f\x6e\x5b\x2d\xed\xa6\x07\x2a\x96\xcf\x04\xc8\x11\x53\x71\xc0\xc3\x88\x00\x52\x8e\x32\x16\x04\x5d\xd0\xa7\x9a\x57\x25\x2d\x99\x5d\x2d\x21\xc9\x0e\x1c\xfa\x95\x98\xdb\x7a\xf6\x12\x55\x31\x20\x1b\xb1\x57\x0a\xe2\x30\xe7\x1e\x8b\x7d\x0e\x37\xae\x30\xd9\x4f\x09\x0a\x11\x3b\x52\xd6\x76\xc7\x06\xa9\x57\x6f\x84\x92\xd5\x9a\xb3\xf3\xd4\x8d\xec\x01\x38\x67\x72\x7d\x79\xf5\x68\xab\xd6\x28\xa3\x0f\xd9\xe3\xb3\xee\x05\xb8\x3d\x45\x84\x07\x71\x04\xb8\x7d\x4d\xe9\x54\x02\xf2\x2c\x35\x79\xf9\x82\xc3\x00\x8f\x84\xaf\x92\x5f\x52\x69\x27\x0c\x26\x88\x7a\x13\x94\x9b\x7b\x46\xe7\xd7\x69\xb3\xb4\x6c\xf7\xb9\x55\xbb\x0c\x03\x20\x34\xf1\x56\x07\xe0\x04\x05\xbe\xb2\x42\x3e\x31\x96\x29\x4a\x50\x53\x4b\x15\x62\x99\x22\xf8\x86\xa3\x33\x70\x0b\x63\xc9\x15\x5b\xb7\x4c\xff\x85\x4b\x83\xd8\xca\x98\xdf\x99\xcb\xce\x7a\x36\x7f\x81\x65\xbe\x3a\x3f\x3f\x75\x04\x57\x17\x9a\xc2\x5c\x4f\xb3\xaf\xc5\x7a\xc8\xb7\x38\xfb\xf6\x14\xd2\x6b\xb1\x56\x77\x77\xe6\x71\xc0\x7e\x9a\x80\x14\x95\xe2\x25\x94\x41\x6b\xbb\x2f\xd2\x2a\xca\xcb\x97\xbb\x64\xa9\x1f\xaa\x99\x6d\xd7\xc5\xad\x16\x07\x11\x27\x83\xc4\xfd\x9c\x9d\x62\xdb\x06\x07\x7c\x54\x99\x3d\xfa\x9a\x15\x62\xab\x6f\x5b\x73\x0f\xf7\x50\xdf\x2c\xdc\x1a\x03\x47\xd4\x76\xa0\xef\x07\x37\x68\xc4\xf7\x72\xc8\xc8\x07\xeb\x6d\x6f\xce\x3e\x5f\x39\xc9\x3f\x05\x64\x02\xa9\x6d\xcd\xb9\x69\xbb\xb7\xf3\xff\xfc\x67\x67\x27\x6a\x36\xdb\xc9\x84\xe5\xa0\x98\x50\xab\xa5\x8d\x5d\xb2\x2a\x0b\xec\xfe\xff\x9a\x2d\x2f\xf8\xd6\xf5\x6e\x75\xb1\xe2\x62\x13\xa6\x36\xf9\x69\xbc\x2f\xe4\x11\x50\x21\x61\xa6\x70\xb3\x14\x06\x3f\xb1\x37\xd9\x62\x9c\x71\x14\xf8\x55\xef\xa9\x97\x28\xa4\x1e\xe6\x33\xbb\x6a\x53\xda\x00\x78\x33\xa5\xf3\x95\xaf\x9a\xa7\xc9\xdb\xf9\x19\x8b\x6c\x7b\x10\xd5\x67\xc1\xd6\xb7\xca\x87\x8f\x5f\x18\x5b\xf1\x33\xba\x5d\x61\x8a\x17\xe4\x1a\xb0\x80\x27\xfc\xb2\x66\x80\xef\xb2\x6a\x22\xd6\x87\xed\x3f\x0e\xda\xff\xee\xb4\x9f\x0e\xac\xe4\xef\xf6\x60\xde\x01\x8f\x77\x23\xed\xad\xbd\xff\xcd\x4e\xb4\x28\x2f\x35\x0d\x7c\x6f\x78\xfb\x27\x9c\x95\x83\xf6\xbf\x61\xfb\x8f\x4e\xfb\xe9\x7f\xda\x17\x83\x79\x17\x74\x77\x9f\x44\x4b\x8c\x9f\x04\xfe\x9f\x71\x4f\x64\x47\xbf\xfb\xe8\xf1\x32\xa3\xa7\x1c\x44\xf3\xf3\xb8\xdd\x95\xf9\xfc\x0a\x04\x83\x9d\x74\xee\x98\x34\x11\xa4\xe4\x96\xab\x29\x90\x5b\x53\x8f\xba\x71\xfe\xd9\x74\xda\x8e\x6f\x27\x88\xc2\x3e\x86\x13\xe4\x9a\xdf\x3e\x40\x0f\xbe\x35\x07\xdf\xda\x99\xec\xf8\x4a\x9a\xb3\x01\x76\xe7\x0a\xa0\x59\x03\xdf\x1e\xa1\x2c\x52\xa4\x45\x6d\x3b\xca\x84\xb6\x67\xe6\x0a\x97\xcf\x15\x4e\xbc\x84\x45\x76\xba\x24\x95\xdd\xb7\x87\xc1\xcc\x1f\x19\x38\xa0\x06\x41\x70\x64\x88\xb1\x1a\x63\x12\x4c\x0c\x36\x12\x83\xc2\x2b\xe3\xc6\xa3\xd7\x06\x1b\x92\x21\x87\xe4\x7c\x2b\xf4\x2f\x64\x86\xb1\x87\xaf\xce\x51\x48\xc3\xbb\x3b\x82\x7e\x9f\x79\x24\x35\xe5\x70\x3a\x35\x6d\xb5\x30\x32\x59\xac\x25\x72\x64\x27\xa5\x4c\xf0\x11\x11\x76\x7f\xf5\xcc\x5d\x67\xd7\xe9\x3c\x78\x3a\xec\xec\x3e\x7c\x38\x1c\x9b\x91\xbd\xf5\xff\x07\x00\x00\xff\xff\x04\x5e\xd9\x0d\xfc\x32\x15\x00") +var _web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x34\xc6\x31\x0a\xc2\x30\x14\x06\xe0\xdd\x53\x68\xa7\x04\x24\x07\x10\xa2\xbb\x83\x0e\x3d\x41\x49\xfe\x4a\xc0\xbe\x84\xf7\xfe\x88\xa5\xf4\xee\x4e\x6e\x9f\x73\x38\x33\xba\xa1\x4b\xc6\x5c\x04\x79\x38\x45\xae\x0d\x75\x3e\xe6\x9a\xfa\x02\xe1\xed\x8f\x90\xba\x2a\x84\x63\xd2\xd2\x18\xf2\xc4\xc9\xc0\xcb\x52\x73\x7f\x23\xe0\xdb\xaa\xd2\xbc\x8f\xd7\x8d\xc1\xa0\x9f\x92\x60\xf1\x3e\x3e\x1f\xc1\xa8\x45\x5e\x65\x5e\x1d\xfc\xee\xdd\xb6\xfb\xc3\x2f\x00\x00\xff\xff\x04\xfb\x62\x34\x79\x00\x00\x00") -func web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25JsBytes() ([]byte, error) { +func web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25Js, - "web_ui/assets/consul-ui-eff804c118e6bc3a3c4f9cb07c266b25.js", + _web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJs, + "web_ui/assets/consul-acls/services-8b6b2b2bea3add7709b8075a5ed5652b.js", ) } -func web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25Js() (*asset, error) { - bytes, err := web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25JsBytes() +func web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJs() (*asset, error) { + bytes, err := web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-ui-eff804c118e6bc3a3c4f9cb07c266b25.js", size: 1389308, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-acls/services-8b6b2b2bea3add7709b8075a5ed5652b.js", size: 121, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x90\xc1\x8a\xdb\x30\x10\x86\xef\x7d\x8a\x64\x4e\x36\x08\xa7\x67\x81\x5b\x28\x3d\xf5\x90\x86\xcd\x31\x84\x45\x2b\xfd\xde\x08\x6c\x49\x3b\x1a\x43\x8c\xd1\xbb\x2f\x5e\x67\x21\x81\xe8\x22\xf1\x69\xbe\x61\xe6\xaf\x2a\x28\x69\x2b\x1a\x83\x43\xe7\x03\x1c\x6d\x5b\x99\x12\x62\xb7\x71\xd1\x8e\x03\x82\xfc\xfe\x7e\x34\x76\x64\x46\x90\xa3\x65\x9f\xa4\x71\x46\x4c\x86\xe8\x21\xba\xb1\x47\x83\x6b\x8a\x2c\xb9\xae\xdb\x5f\xb3\x34\x1c\x47\x41\x6e\xff\x1d\xff\xef\x9b\x2c\xec\xc3\xbb\xef\xa6\x0a\x75\xa9\xab\xd9\x59\x3d\x87\x9c\x8c\x45\xd6\xf3\x6b\x4c\xe2\x63\xc8\x7a\x4e\x46\x2e\x9a\x76\xc1\x0c\x58\x3f\x49\x99\x37\xdf\x7b\xf1\xc8\xfa\x44\x0c\xe3\x36\x37\x8d\xce\x45\xf9\xe0\x70\x7d\xe2\x93\xfa\x18\xc1\xd3\xc1\xb0\x19\xb2\x9e\x73\x64\xf9\x33\x69\x5a\x6e\x52\x19\x86\xed\x25\x71\x4c\x60\x99\xf4\x6c\xb2\xa6\x47\x46\x0a\x43\x92\x49\x9f\x4e\xb4\x37\x03\x48\xd1\x5f\xe4\xaf\x85\x7d\x0c\xa4\xe8\x25\xf6\x0b\x3c\xc4\xde\xdb\x89\xce\xe7\x72\xeb\xb9\xf6\xea\x7c\x2f\x60\x52\x8c\xd4\x1b\x0b\xbd\xfd\x59\x4a\x29\x0a\xce\xcb\x93\x51\xf5\xb2\x2b\x95\xa2\x2c\xc3\x08\xee\x2b\x04\x43\xea\x17\x46\x4d\xb3\x5b\x74\x52\x37\x69\xad\x7d\xcc\x66\x65\x77\xe9\x2c\xa7\xfe\xf1\x19\x00\x00\xff\xff\x08\x5a\x9e\xe0\xdd\x01\x00\x00") + +func web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJs, + "web_ui/assets/consul-nspaces/routes-f939ed42e9b83f9d1bbc5256be68e77c.js", + ) +} + +func web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJs() (*asset, error) { + bytes, err := web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-nspaces/routes-f939ed42e9b83f9d1bbc5256be68e77c.js", size: 477, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x34\xc6\x31\x0a\xc2\x30\x14\x06\xe0\xdd\x53\x68\xa7\x04\x24\x07\x10\xa2\xbb\x83\x0e\x3d\x41\x49\xfe\x4a\xc0\xbe\x84\xf7\xfe\x88\xa5\xf4\xee\x4e\x6e\x9f\x73\x38\x33\xba\xa1\x4b\xc6\x5c\x04\x79\x38\x45\xae\x0d\x75\x3e\xe6\x9a\xfa\x02\xe1\xed\x8f\x90\xba\x2a\x84\x63\xd2\xd2\x18\xf2\xc4\xc9\xc0\xcb\x52\x73\x7f\x23\xe0\xdb\xaa\xd2\xbc\x8f\xd7\x8d\xc1\xa0\x9f\x92\x60\xf1\x3e\x3e\x1f\xc1\xa8\x45\x5e\x65\x5e\x1d\xfc\xee\xdd\xb6\xfb\xc3\x2f\x00\x00\xff\xff\x04\xfb\x62\x34\x79\x00\x00\x00") + +func web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJs, + "web_ui/assets/consul-nspaces/services-8b6b2b2bea3add7709b8075a5ed5652b.js", + ) +} + +func web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJs() (*asset, error) { + bytes, err := web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-nspaces/services-8b6b2b2bea3add7709b8075a5ed5652b.js", size: 121, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x50\xbd\x6a\xf3\x30\x14\xdd\xbf\xa7\x48\xee\x64\x83\x70\xbe\x59\xe0\x16\x4a\xa7\x0e\x69\x21\x63\x08\x45\x95\x8e\x1b\x81\x2d\xa9\x57\xd7\x10\x63\xf4\xee\xc5\x4d\x4a\x13\x88\x16\x1d\xce\x1f\xd2\xa9\x2a\x51\x68\x2b\x1a\x83\x43\xe7\x03\x1c\xad\x5b\x99\x12\x62\xb7\x72\xd1\x8e\x03\x82\x3c\xfe\x82\xc6\x8e\xcc\x08\xb2\xb3\xec\x93\x34\xce\x88\xc9\x10\x3d\x44\x37\xf6\x68\x70\x4a\x91\x25\xd7\x75\xfb\x30\xa3\xe1\x38\x0a\x72\xfb\xb2\x7b\xdd\x36\x59\xd8\x87\x4f\xdf\x4d\x95\xd4\xa5\xae\x66\x67\xf5\x9c\x0c\x8b\x17\x1f\x43\xd6\xf3\x7b\x4c\x17\x94\x8c\x1c\x35\x6d\xfe\x44\x52\xe6\xc3\xf7\x5e\x3c\xb2\xde\x13\xc3\xb8\xd5\x95\x78\x28\xca\x07\x87\xd3\x9d\x0a\x52\x5f\x23\x78\x7a\x33\x6c\x86\xac\xe7\x1c\x59\x9e\x26\x4d\xcb\x4d\x2a\xc3\xb0\x3d\x26\x8e\x09\x2c\x93\x9e\x4d\xd6\x74\xcb\x91\xc2\x90\x64\xd2\xfb\x3d\x6d\xcd\x00\x52\xf4\x8c\xfc\xf3\x6d\x1f\x03\x1d\x0e\xe5\xd2\x71\xce\x76\xbe\x17\x30\x29\x46\xea\x8d\x85\x5e\xff\x2f\xa5\x14\x05\xe7\xe5\xce\xd3\x74\x58\x1a\x4b\x51\x96\x61\x04\xd7\x0e\xc1\x90\xfa\x85\xa3\xa6\xd9\x2c\x71\x52\x97\xd0\xd9\x7b\x3b\xc7\x99\xbb\x1d\x64\x39\xf5\xbf\xef\x00\x00\x00\xff\xff\x83\x8b\x62\x16\xd6\x01\x00\x00") + +func web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3Js, + "web_ui/assets/consul-partitions/routes-cba490481425519435d142c743bbc3d3.js", + ) +} + +func web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3Js() (*asset, error) { + bytes, err := web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-partitions/routes-cba490481425519435d142c743bbc3d3.js", size: 470, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\xcb\x31\x4e\xc6\x30\x0c\x40\xe1\x9d\x53\x40\xa6\x44\x82\x74\xaf\x14\xd8\x19\x60\xf8\x4f\x10\x39\x2e\xb2\x94\xda\x91\xed\x20\xaa\xaa\x77\x67\x40\xb0\xb1\xbd\xe1\x7d\x31\xe2\xa3\x97\x18\x26\x37\xdc\x88\xb1\x85\x87\xe2\xc7\x40\xd9\xee\x9b\xc0\xdc\x91\xfd\xe5\x37\x32\x4c\x55\x64\xbf\x81\xd2\xf0\xdc\xaa\x57\x43\x5f\x77\x69\xb3\x63\xc6\xaf\x21\xea\x96\x52\x79\x3e\x3d\x1b\xea\x27\x01\x5a\x79\xbd\xbd\xbf\x65\x73\x25\xfe\xa0\xed\x88\x98\xae\x14\xcf\x00\xb2\x0f\x61\x64\x5f\x41\xd8\x66\x5f\x46\x55\x27\x27\xe1\xc5\xb0\x23\xb8\x68\x58\x4f\xe8\xd5\x6c\x0d\x3f\xcb\xd3\xa4\xe5\x8f\xd9\xf2\xbf\xbb\xae\x74\xf7\x1d\x00\x00\xff\xff\xda\xe8\x51\xaf\xd7\x00\x00\x00") + +func web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504Js, + "web_ui/assets/consul-partitions/services-85621f245f195fe1ce177064bfb04504.js", + ) +} + +func web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504Js() (*asset, error) { + bytes, err := web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-partitions/services-85621f245f195fe1ce177064bfb04504.js", size: 215, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x57\x4b\x8f\xe3\x36\x0c\xbe\xf7\x57\xcc\xf2\x34\x59\xd8\x49\xcf\x02\xa6\x45\xb7\x7b\x69\xd1\xce\x2e\x30\xbd\x0d\x82\x85\x56\x62\x12\x21\x8e\xe4\x4a\xf4\x74\x82\xc0\xff\xbd\xa0\x64\xe7\xb1\xa3\x38\xc9\x3c\xfa\xb8\xc4\x8e\x3e\x92\x22\x29\xf2\x13\x7d\x7d\x4d\x05\xde\x5c\x43\x63\x35\xce\x8c\x45\x0d\xef\x6e\x68\x5d\xa3\x9b\x5d\x69\xa7\x9a\x15\x5a\xfa\xb1\x7f\x19\xab\xc6\x7b\xb4\x74\xa7\xbc\xa9\x69\xac\x25\xc9\x80\x24\x56\x4e\x37\x15\x8e\xf1\xb1\x76\x9e\xc2\x68\x74\xf3\xc3\x06\xc7\xde\x35\x84\xe1\xe6\xd7\xbb\x4f\xb7\xe3\x40\xde\xd8\xb9\x99\xad\xaf\x69\xd4\x8e\xae\x37\x5a\x89\xcd\x17\x57\x93\x71\x36\x88\x4d\x2d\x69\x21\x60\x22\xb4\x82\xb6\x30\x56\xe3\x63\x06\x85\xc2\xa3\x36\x1e\x15\x09\x18\x8f\x27\x01\xfd\x83\x51\x18\xa0\x6d\x8b\xfe\x3d\xa3\xb5\x13\x1b\x30\xfc\x67\x83\x7e\xfd\x59\x7a\xb9\x0a\x62\x13\x9c\xa7\x0f\x6b\x01\xfc\x84\x22\x90\xa4\x26\x08\x48\x4f\x28\x82\x6b\xbc\x42\x46\xf9\x09\xc5\xd2\x58\x2d\x80\x7f\xa1\x08\x28\xbd\x5a\xd4\xde\xd5\xe8\x69\x2d\x36\x92\xf5\x0e\xd6\xa0\xc0\x55\x4d\x6b\x71\x7f\x0f\xb7\x72\x85\x50\xc0\x1f\x72\x1e\x60\x3a\x6d\x3b\xe5\xa4\x34\x33\x15\xa1\xe7\x80\xeb\x4a\x2a\x14\xef\xbe\x6f\x5b\x0e\x73\xe1\xfe\xca\xa5\xcd\xb2\x29\x8e\x2f\x90\xb4\xf9\x34\x6c\xb1\x17\x05\xfb\x9c\x00\x6f\x9d\xde\xc6\x59\xc0\x2f\x1f\xa1\x80\x9f\xb4\xf6\x18\xf8\xef\xe7\xb8\x2d\xdc\xa5\x43\x1a\xff\x8e\x24\x3b\x95\xf4\x7e\x66\x62\x8c\x25\xb4\x5d\xc0\x99\xd0\x7b\xf0\x78\x0d\x0c\x66\x45\x2a\x85\x21\x08\x48\xcf\x0b\xb3\x70\x17\x53\xd7\xe5\xe2\x23\x06\x32\x56\xf2\xd6\x71\xe5\xcc\xf0\x50\x1b\xca\x9d\xfb\x36\xb2\x2f\x46\x73\x1b\x28\x8f\x92\x70\x5f\x92\x70\x55\x57\xbc\xc6\x1d\xc3\x66\xa0\xe8\x94\x93\x2c\xb0\x79\x72\xb5\xab\xdc\x7c\x9d\xd9\xa2\x87\xce\x6d\xb2\xa1\x34\xf6\x25\x28\xa0\x7f\x7b\xfb\x8e\x69\xea\x40\x1e\xa3\x33\x4f\x9c\xde\x62\xff\x39\xaf\x99\x38\x8d\x9d\x67\x7c\xee\x10\x3e\x0e\x92\xf3\x5c\x54\xbc\x0c\xa9\x27\x3a\xc7\x8f\x10\xc6\x8e\x12\x26\xc2\x3a\x8d\x13\x61\xf4\x01\xc5\x4e\x16\x28\x2b\x5a\xa8\x05\xaa\x25\xb7\xce\xfe\xdf\x8c\xd1\x04\x97\x9d\xf8\x25\x2c\x13\x55\x04\xc4\xc7\x8b\x38\xe6\x67\xb6\x10\x19\xe6\xd6\x11\x57\x23\x7c\x6a\xa8\x6e\xf6\x18\xe6\x9f\xad\x9d\x13\x9b\x5c\x16\xea\xb7\xdc\x51\xc0\x6f\x4e\xc9\xea\x83\xb1\x7a\xc7\xa7\xdb\xa5\x48\xac\xd3\x69\xa2\x8f\xc7\xda\x05\xd4\xec\x7a\x2e\x96\x0e\x2e\x23\xce\x95\x25\x93\xb9\x6c\xa7\x6f\x31\x16\x5c\x21\x49\x9e\x00\x32\x72\x3d\x14\x4b\xd1\x3a\x9a\xb9\xc6\xea\xa3\xa5\xb8\x2b\xc0\x24\xae\xb3\x7b\xc7\xf5\x67\x72\xf8\x93\x9b\xed\xa2\x2a\x4b\xe5\xb5\x4b\xf3\x25\x77\xd3\x89\x4b\xfb\xcd\xba\x6a\x7f\x30\x79\x79\x87\x75\xfd\xf3\xea\x4d\x76\xfa\x52\x29\xff\xbd\xd1\xe5\xfc\x99\xe5\x5c\x62\xa7\xdc\x3d\xee\xb9\x37\x4a\xf2\xa6\x2e\xc9\x70\x51\xb0\xad\x10\x8e\x8c\x33\x95\x53\xcb\xb2\xc7\x2f\xe8\xc2\x57\x98\x92\x86\x27\xe5\xff\xc7\x98\x54\xc8\xaf\xa6\x32\x64\x30\x88\x7b\xf0\x28\xf5\xd5\x5e\xe4\xd3\xe7\x0d\x51\x07\x36\xd3\xda\x37\x56\xdb\x62\xf9\x90\x71\x6d\xf9\xf0\xdc\x64\x3f\xfd\xec\x18\x4c\xcd\xcc\x55\x1a\xfd\xd1\xa0\xa2\x0b\xdb\xa8\xde\x2f\x31\x0e\x7c\x47\xf2\xc9\x70\x4a\xc3\x85\xd9\x8a\x8a\x03\x29\x5b\x3e\xa4\x13\x00\xef\x1c\x95\x9d\xe0\x8b\x0f\xa2\xb3\xda\x16\x52\x55\xd9\x1b\x4d\x55\xe1\x50\x31\x15\xf0\x55\x04\xa6\x6d\x51\xbb\xca\x28\x93\xa5\xa8\x1e\xca\x54\xd5\x16\x9a\x0e\x14\xe6\x91\xa9\xfd\x74\x50\x7b\xd6\xe3\xbc\x58\x65\xdd\x8b\xeb\x19\xdf\xd2\xfa\x9b\x38\xd6\x9b\x8e\x9f\x15\x4b\xcc\x52\x4d\x02\x06\x73\xfe\xfa\x8e\x75\x9b\x46\xcf\x40\x36\xb4\x28\x57\x48\x0b\xa7\x03\xe4\x6a\x62\x1f\x7f\x9a\xbf\x03\x78\x7a\xfc\x8a\x67\x6f\x0f\x36\x3b\xb1\x17\xc7\x06\x5f\x8d\xd5\xc6\xce\x4b\xdf\x70\x26\x33\x0a\x87\x02\xac\x62\x43\x2d\x15\x1e\xd7\x38\xc0\xdb\x48\x08\xd0\x7d\x49\x94\xca\xd9\x99\x99\xe7\xb4\x0e\x25\xfa\x81\xa5\x1d\x20\xac\x78\x71\x11\x2b\xe5\xef\x73\xea\xbf\x5d\x06\x06\xc2\xf7\x3d\xc6\x5b\x8d\xbe\xfb\x3b\x00\x00\xff\xff\x32\x1b\x83\x1f\x9c\x12\x00\x00") + +func web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJs, + "web_ui/assets/consul-ui/routes-7726cc49168b83dcd93c923c97ebe93d.js", + ) +} + +func web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJs() (*asset, error) { + bytes, err := web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-ui/routes-7726cc49168b83dcd93c923c97ebe93d.js", size: 4764, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x8f\xb1\x4a\x35\x31\x14\x84\xfb\xff\x29\x7e\x53\x25\xb0\x37\xf6\x81\xd5\xde\x42\x85\xfb\x00\x4b\x4c\x66\xef\x0d\xb8\x39\xf1\xe4\x44\x5c\x42\xde\x5d\x56\x10\x6e\x61\x35\xf3\xcd\x4c\x33\x5a\x63\xe2\x59\xab\x96\x23\xd6\x94\x11\xd5\xdd\x2c\x7b\x01\xad\xff\x23\x85\xb6\x21\xcb\xe3\xaf\xb1\xa1\x31\x23\xcb\x39\x70\x2a\x62\xa3\x17\x5f\x21\x6e\xa3\xd8\xde\x61\xf1\x55\x88\xa5\x1a\x33\x3f\x74\xb6\x4c\x4d\x50\xe7\xa7\xf3\xcb\xb3\xad\xc2\x29\x5f\xd2\xba\x6b\x98\x61\x74\x57\xe4\x9b\x5c\x4f\x85\xe9\x33\x45\xf0\x29\xe2\xad\x5d\x94\xeb\x0b\x15\x49\x94\xab\xeb\xc5\xcb\xd5\xa9\xfb\x3f\x77\xd3\x47\x03\xef\xaf\x9e\xfd\x56\x5d\x67\xc4\xc4\x08\xb2\x34\x4e\x4e\xdd\x92\x9a\x18\xb5\x50\xae\x58\x8e\x43\x47\x79\x83\x6a\xaa\x81\x8e\xf4\x47\xd4\x18\x63\x98\x7f\xdf\x01\x00\x00\xff\xff\x40\xb4\x4e\x1f\x0d\x01\x00\x00") + +func web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99Js, + "web_ui/assets/consul-ui/routes-debug-8f884a3e3f7105d43b7b4024db9b4c99.js", + ) +} + +func web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99Js() (*asset, error) { + bytes, err := web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-ui/routes-debug-8f884a3e3f7105d43b7b4024db9b4c99.js", size: 269, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x8d\xc1\x4e\xeb\x30\x10\x45\xf7\xef\x2b\x1e\x5e\x25\x52\x93\x08\x56\xc8\x52\x80\x35\x0b\x58\xf4\x0b\x8c\x3d\x6d\x47\x4a\x66\xac\x99\x71\xa1\xaa\xf2\xef\x28\x2d\x0d\x20\xa1\xae\xec\xd1\xbd\xe7\x9e\xaa\x82\x95\xf6\x95\x2b\x94\x60\x83\x04\xc9\xdd\xf4\x76\xc8\xc0\x9b\xff\x89\x63\x19\x81\xec\xf1\xf2\x69\x63\x11\x01\xb2\x75\x14\xcc\xd6\xa6\x60\x41\xc1\xfc\xc8\xa9\x0c\xd0\xc2\x47\x66\x31\xad\xeb\xfe\xe1\xa8\xad\x82\xec\x31\x82\xf6\xcf\xeb\xd7\x97\x56\x4d\x90\xb6\xb8\x39\x54\x50\x4f\x75\x75\x74\xc2\xc5\xc0\xbf\x05\xc5\xe8\xfc\x31\x0e\x41\xd5\xbb\xc8\xa4\x65\x68\x0a\x76\x73\x8c\xb4\x3d\xbd\xe0\xa6\x95\xfb\x9a\xf3\x48\x36\xfc\x05\x5c\x74\x1d\xde\xde\xd3\x4f\x40\x2d\x18\x5c\x25\x4e\x8d\xe6\x1d\x6d\xd7\xc4\x5d\x10\xd3\x19\x0f\xc5\x76\x4d\x16\xde\x63\x02\xf1\x8c\x29\x9e\x1b\x45\xae\xeb\x7f\x71\xda\xf1\x7c\xdf\x35\x91\x13\x2c\xfc\x12\xcf\x9e\xc8\x63\x66\x02\x32\x7f\x1e\xeb\x72\x10\x43\x43\xa6\x4e\x61\x80\x68\x2c\xdf\xbe\xa7\xed\x80\xe3\x08\xd2\x2d\x94\x9b\xa6\xfa\xdf\x67\x00\x00\x00\xff\xff\x07\x44\x38\x12\xc3\x01\x00\x00") + +func web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226Js, + "web_ui/assets/consul-ui/services-a17470cdfbd4a4096117ac0103802226.js", + ) +} + +func web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226Js() (*asset, error) { + bytes, err := web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-ui/services-a17470cdfbd4a4096117ac0103802226.js", size: 451, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x8e\xb1\x4a\x04\x31\x10\x86\x7b\x9f\x42\x53\x25\x70\x97\xc5\x4e\x02\xd1\xde\x42\x8b\x7b\x82\x98\xcc\x2e\x03\xb9\x49\xc8\xcc\x88\xcb\xb2\xef\x2e\x82\x2b\x16\xd7\xfd\xc5\xf7\xf1\x7f\xd6\xc2\x09\xa3\x35\x4a\x05\x66\x24\x28\xe6\x21\xca\xda\xa1\xcd\xf7\xa5\x65\xbd\x02\xc9\xcb\x31\x7c\xd6\x31\x80\xe4\x92\x07\x76\xf1\x25\x49\x62\x90\x70\x6d\x45\x2b\x78\xf8\xea\x6d\x08\x3b\x17\x9f\x37\xf4\x0c\xe3\x13\x33\x70\x7c\xbd\xbc\xbf\x79\x96\x81\xb4\xe0\xbc\x5a\x70\xbb\xb3\x9b\x19\x4d\x05\x42\xea\xbd\x62\x4e\x82\x8d\x4c\xd8\x72\x4d\xcc\xc1\xe4\x46\xac\xf5\xac\x38\xfd\x40\x48\xcb\xf4\x0f\x3b\x17\xf8\xd0\xc5\xec\x27\xf3\x7b\x10\x90\xa4\xde\x92\x8f\x80\x09\x1f\x9f\xfe\xb4\xdd\xdd\x7d\x07\x00\x00\xff\xff\xed\x8b\xd6\xb0\xf1\x00\x00\x00") + +func web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6Js, + "web_ui/assets/consul-ui/services-debug-5a3f1d2e3954a05aa8383f02db31b8e6.js", + ) +} + +func web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6Js() (*asset, error) { + bytes, err := web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-ui/services-debug-5a3f1d2e3954a05aa8383f02db31b8e6.js", size: 241, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\xfd\x73\xdb\x3a\xd2\x20\x8c\xfe\x2b\x28\x9f\x9a\x7a\x4e\x66\x04\x1c\x7c\x7f\x38\x93\xd4\xce\x93\xbb\x53\xb9\x55\x39\xf7\x56\xbd\xb3\x4f\x7e\x98\xa9\xbc\x6f\xd1\x12\x6d\x71\x42\x89\x5a\x8a\xb6\x13\x67\xbd\x7f\xfb\x5b\xdd\x20\x25\x52\xa2\x28\x4a\x76\xe6\x9c\xcc\xba\x12\xc9\x54\xa3\xbb\xf1\xd5\x8d\x6e\x80\x40\xe3\xbf\x4d\xe7\x49\xb9\x4e\x2b\x72\xf1\x5f\xff\xe3\xaf\xd4\x5f\xbc\xfe\x29\x2f\x6e\xb2\x25\xad\x8a\x9b\x9b\x3c\xfd\xd3\x2c\xbb\x23\xd7\x45\x51\xa5\x25\xb9\xba\xad\xaa\x62\x39\x61\xd3\x62\xb9\xbe\xcd\x69\xb6\xac\xd2\x65\x95\x15\x4b\x7a\x9d\xa5\xf9\x6c\x9d\x56\x6b\xc2\x56\x69\xb9\xc8\xd6\xeb\xac\x58\xae\xdf\x36\xf8\xe9\x62\x55\x7d\xa5\xeb\x2a\xa9\xd2\xb7\xb7\xf9\xdb\x3c\x7b\xfb\xc7\x3e\xe0\x65\x32\xad\xb2\xbb\xb4\x2f\x29\x4f\xae\xd2\x7c\x80\x5f\x3b\x7d\xc3\x66\x51\xcc\x92\x9c\xce\xb2\x24\x2f\x6e\xc8\x3f\xca\x22\x4f\xdf\xcc\x8a\xe9\xed\x22\x5d\x56\x9f\xc8\x6c\x46\x92\x23\x28\x2b\xc0\x28\xb2\xd9\x94\xae\xd3\x3c\x9d\x56\x75\xfd\x59\x99\xae\xd3\x6a\xc2\xd6\x69\x52\x4e\xe7\xf4\x2a\x29\xb1\x28\xb7\x6b\xc2\xca\x74\x51\xdc\xa5\x34\xc9\xf3\xa6\xad\x92\x09\x16\x8d\x55\x5f\x57\x69\x9d\xcf\x3e\xa4\x29\xf1\x22\xc9\x96\xb1\x60\x9b\xa7\x4e\xd2\xaa\x49\x59\x6d\x12\xbe\x55\xe9\x97\x8a\xce\xd2\x69\x51\x26\xd0\x15\x97\xcb\x62\x99\x3e\x36\xfd\x31\x99\x97\xdf\xae\x8a\x72\x96\x96\x11\x9e\x94\x55\x36\xcd\xd3\x49\xb2\xce\x66\xe9\xe4\x3a\xbb\xb9\x2d\xd3\x49\xec\xdc\xc9\x3c\x4d\x66\xf0\xe7\xa6\x2c\x6e\x57\x93\x79\x39\x59\xa7\x53\xe0\xf8\x6d\x96\xad\x57\x79\xf2\xf5\xf2\x2a\x2f\xa6\x9f\x1f\xf1\xfb\x7f\xde\x16\x55\x3a\xb9\x2a\x66\x5f\x27\xb3\xd9\x64\x96\x4f\x66\xd5\x64\x93\x67\xcd\x76\x2e\x26\x73\x39\x99\xab\xc9\x5c\x4f\xe6\x66\x32\xb7\xc0\x73\x5e\x2d\xf2\x49\x76\x5d\x26\x8b\x74\x92\xa7\x37\xe9\x72\x36\xc9\xb3\x49\x91\x4f\x56\x93\x55\x99\x4e\xa0\x32\x49\x99\x26\x93\xdb\xfc\xdb\x22\x29\x6f\xb2\xe5\x25\x7f\xbd\x4a\x66\xb3\x6c\x79\x73\xc9\x1f\xf7\x58\x7e\xbb\x2e\x96\x15\x5d\x67\x0f\xe9\xa5\xe0\xfc\x0f\xaf\xf1\xe7\x7d\x9a\xdd\xcc\xab\x4b\xcd\xf9\xe3\x6d\xfe\x2d\xcf\xd6\x15\x5d\x57\x5f\xf3\x34\x36\x41\x95\x5c\xe5\x69\xdd\x28\x74\x5a\xe4\x79\xb2\x5a\xa7\x97\xcd\xc3\xeb\x3a\x61\xbd\x4a\xa6\x31\x4f\xc4\x27\xd5\x6c\x52\x3f\xcc\xbf\x6d\xca\xf3\x1a\xdb\x3e\xc9\xb3\x9b\xe5\x65\x9e\x5e\x57\x8f\xc9\xed\x2c\x2b\x26\xe9\xe2\x2a\x9d\x4d\xb2\xc5\xcd\xa4\xb8\xfa\x67\x3a\xad\x26\x77\xd9\x2c\x2d\xbe\xcd\x63\xb1\x92\xdb\xaa\x78\xbd\x48\xbe\xd0\xfb\x6c\x56\xcd\xb1\xd8\x8f\x2c\x59\xad\xe8\x5d\x96\xde\xbf\x8d\xca\x56\x2e\x6a\xf1\xf9\x07\x08\xc9\x9b\xf8\xfc\xa9\x96\x98\x34\x4f\xab\x14\x74\x10\x4b\x9c\x5d\xe5\x29\x5d\x16\x55\x36\x4d\xd7\x87\xf5\x33\xc1\x9e\xa4\xf7\x49\xb9\xa4\x28\xf2\x8d\x28\xcf\x92\xe5\x4d\x5a\x16\xb7\x6b\x20\x5a\x7d\xa5\x11\x4c\x7a\x14\x8d\xcc\xb2\xbb\x8d\x02\x66\x4b\x28\x64\x3a\xab\x19\x6f\x95\x7a\x91\x2e\x6f\xe9\x2a\x59\xa6\x79\xad\x4d\x00\xc8\xaa\x74\xf1\x69\x47\xd7\xba\x95\x59\x14\x65\x4a\x57\xc5\xaa\xb8\x4b\x4b\x0a\x24\x6f\x63\xcd\xa7\xf3\x74\xfa\xf9\xaa\xf8\xf2\xe9\x4f\xa8\x33\x38\x16\xed\xf1\xdd\xd7\xd0\xcb\x65\x51\xfd\x1c\xd5\xf4\xd5\x84\x9d\xcb\xb7\xa1\xab\x59\xc7\x21\xe6\x8f\x93\x58\xf2\x75\x51\x56\x07\x31\xee\xb3\x6a\x4e\xa7\xc5\xf2\x3a\x2b\x17\xa8\x95\xdd\xea\x26\xf1\xd7\xb4\x4c\x13\xd0\xa2\xd8\x13\x11\x94\x2c\xa7\x69\xde\x01\xad\x6f\xaf\x16\x59\x35\x69\xcb\x03\x56\xec\x53\x07\x14\xb1\x3e\xd5\x4a\x4c\x58\xec\x97\x75\x9f\x18\xc5\xc6\x89\xbd\x5d\x2d\x5f\xc5\xd1\x88\xac\x57\xc9\x32\x8a\x38\x9b\x27\x6b\xda\xd0\x57\xe5\xdb\x86\xd7\x09\x4d\x17\xf9\x60\x2b\xcc\xd2\x2a\xc9\xf2\x33\x19\x7d\xa3\xf7\xe9\xd5\xe7\xac\xa2\x55\x71\x3b\x9d\xd3\x69\x92\xe7\xc5\x6d\x85\x7a\xfc\xba\x49\xba\x5d\x6f\x3a\xa0\x4e\x58\x14\x0f\x7d\xd0\xf5\x3e\x70\x17\xf0\x18\x9b\xbc\x4c\xef\xd2\x24\x27\xd9\x72\x75\x5b\x5d\x62\x31\xd3\xd9\xff\x4e\x17\x07\x4a\x33\x4b\xaf\x93\xdb\xbc\xea\x2d\x10\x0c\x10\xfb\x05\xaa\xa1\xeb\x7d\xe0\x2e\xe0\x31\xf9\x36\x2d\xf2\xa2\xbc\x2c\x6f\xae\x7e\xbe\x4b\xca\x9f\x29\xc5\xdf\x75\xff\xbc\x7a\xf5\x88\xfd\xb6\xae\xca\x62\x79\x33\x81\x41\x6a\x5e\x13\x64\xcb\x79\x5a\x66\xd5\x23\x8c\xd1\x7b\x3c\xaa\x62\x99\xd2\x9b\x32\xf9\x4a\x03\xe7\xaf\x5e\x3d\xc2\xa8\xfc\xed\x2a\x99\x7e\x86\xb1\x7f\x39\xa3\x87\xf1\x39\xe0\xbf\xde\x8e\xba\x75\xfa\xd7\x55\x81\xbf\x31\x3d\x0e\x8b\x65\xba\x9c\xa5\x25\x8c\x93\xc5\xaa\xca\x16\xd9\x43\xfa\x21\xbd\xc9\xae\xb2\x3c\xab\xbe\x46\x0c\x24\x48\x66\xff\xbc\x5d\x57\x71\xf4\xc6\x86\x2a\xd6\x5f\x68\xe4\xbf\x28\x8a\x6a\x0e\x0c\x20\xe7\xf5\x34\xc9\xb7\x9d\xbe\x83\x90\x2c\xab\x2c\xc9\xb3\x64\x9d\xce\x5e\x83\x42\x5e\xe7\xc5\x3d\xfd\x72\x39\xcf\x66\xb3\x74\xb9\x85\x7c\xbd\x5c\x4f\xcb\x22\xcf\x5f\x5f\x15\x5f\x20\x77\x20\xad\xc7\xfb\xab\xe2\xcb\xeb\x45\xb6\xac\x07\x65\xc5\xf9\xea\xcb\x23\xd8\xce\x31\x6d\x22\xb1\x4d\xea\xe1\x5d\xac\xbe\xbc\xae\x2d\x97\x60\xa6\x4c\x17\x84\x3f\x46\xc5\xdb\x67\x56\x33\x2a\x93\xe5\x7a\x95\x94\xe9\xb2\x7a\x85\xdd\x55\x2b\xf6\x04\xe5\x6f\x12\xa5\x61\x63\x19\xa3\xc5\xbb\x4e\x16\x59\xfe\xb5\xdd\xfa\x11\x42\xd7\xc9\x72\xfd\xea\x91\xbd\x2b\x66\xe9\xaf\x59\x59\x16\x25\xcd\xb3\x25\x48\x6c\x91\x57\xd9\x6a\xc2\xa6\x0b\xba\xa6\xf3\x64\x3d\xcf\x5a\x38\x93\x69\x31\x4b\xc1\xfe\x1e\x61\xbe\x28\x96\xc5\xab\xc7\x28\x6c\xb5\xe5\x45\xbb\x5a\xcb\x5a\xc7\xfa\xb6\xa8\x23\x84\x5e\x15\xf9\xec\xd5\xe3\x26\xab\x43\x9d\x8d\xf6\xf1\x50\x3f\xdf\x56\xc5\x23\x12\xd7\xe9\x9b\xae\x8d\x1d\x0b\x38\xa8\x9c\x6d\x29\x40\x86\xf7\xf3\xac\x4a\xd1\xaa\xa7\x97\xab\x32\x7d\x7d\x5f\x94\x33\x7a\x5f\x26\xab\xcb\x65\x51\x2e\x92\xfc\xf1\x8f\x93\xcb\xcb\xe4\x1a\xfc\xa0\xcb\xcb\xab\xf4\xba\x28\xc1\x47\xd8\x48\x49\xa3\x4d\x8d\x8f\xf3\xad\x65\xbc\x93\xd8\x51\x3b\x83\x5a\x1b\x58\x26\xb3\xac\xf8\xf4\x6d\x7a\x5b\xae\x8b\xf2\x72\x55\x80\x5d\x2e\x1f\x47\x52\xdd\xa5\xe0\xb3\x25\x79\xed\x67\x5c\x25\xeb\x34\xcf\xc0\x8f\x41\x65\xdf\xf1\x40\x5e\xef\x60\x57\xc5\xea\x71\x50\x9a\x1a\x27\xeb\x31\xfa\x64\x8d\xb3\xc8\x1f\x2f\xcb\xa2\xa8\xbe\xd1\xe8\x59\x52\x28\xcb\xed\x1a\xb4\xfb\x92\xbf\xde\x01\x0a\xce\x2f\xe5\xea\xcb\x2e\x58\x72\x7e\xa9\xf7\xc1\x8a\xf3\x4b\xb7\x0f\xbe\xbe\xcd\xf3\x7a\x10\xa8\x13\x6a\xc5\x84\x2c\xe3\x00\xde\x85\x43\xae\x62\xf5\x85\xac\x8b\x3c\x9b\xed\x26\xca\x58\xa4\xfe\x44\x28\x81\x3a\x94\xa8\x63\xa9\x77\x12\xd3\x3c\xbd\x43\x3b\x8e\xd9\x72\x02\xe4\xc0\x7f\x3b\x1a\x5c\xe5\xc9\xf4\xf3\x2b\xf2\x0b\xb1\x7f\x78\xd5\x43\x26\x91\x0c\x48\x74\x3f\x99\xe0\xbd\x74\x0a\xe9\xcc\xea\x0b\x81\xba\xd2\x03\x79\x0a\xd9\x4b\xac\x91\xd8\xae\xbe\x10\x3f\x40\x6c\xfe\xf0\x6a\xc2\x11\x03\x8a\x46\x4f\x2b\x9f\xc5\x2c\x04\xb0\x86\x42\x52\xd7\x4f\xed\x31\x0f\x01\x75\x10\x1c\xf0\xd4\x49\xb9\xf8\x98\x0b\xd4\x04\x3e\x14\x79\xf4\xb7\xfd\xa4\xc6\xc3\xaf\x43\x95\x91\x31\x9b\x75\x95\xa6\x39\xe5\x86\x5f\x4a\x6d\x88\xd4\x96\x48\xed\x36\x70\x14\x6b\x69\x88\x94\x9e\x48\x25\x36\x70\x94\x2d\x6e\x88\x14\x82\x48\x61\x36\x70\xe8\x2a\xe1\x0d\x11\x41\x11\x11\xc2\x06\x0e\xbd\x20\xac\x21\xc2\x59\x22\xbc\xda\xc0\x0d\xc0\xb5\x21\xc2\x04\x22\xac\xdf\xc0\xa1\x49\x85\x08\x44\x28\x41\x84\xda\xc2\x1d\xe7\x97\xc0\x9a\x4b\x22\xf8\xb6\x98\xd0\x36\xd6\x12\xa7\x88\xdb\x02\x03\x48\x31\x27\x5a\x13\x6d\x5f\x53\x9a\xa7\x8b\x62\x19\x2b\x6a\xa0\xe0\x96\x48\xbe\x01\x63\x3d\xf7\xc1\xb2\x1f\xac\xfa\xc1\xba\x1f\x6c\xfa\xc1\xb6\x1f\xec\xfa\xc1\xbe\x1f\x1c\x76\xc1\x8b\xe4\x26\x5d\x56\x49\xdd\xa1\x81\x48\x05\x9d\x2a\x5b\x29\x58\x55\x15\x88\x08\x16\xc8\x5a\x29\x58\x5b\x19\x88\x30\x9e\x88\xd0\xe6\x86\x15\x16\x9e\x60\x97\x58\xdd\x4a\xc1\x3a\x73\x4f\x3c\xaf\xfb\xa9\x49\xc0\x9e\x0d\x9e\x68\x49\x84\x50\xad\x04\xec\x5a\xe3\x89\x52\xc4\x87\x16\x1c\x2a\x2e\x40\xd4\x2c\x71\xa2\x05\x87\x9a\x07\x4e\x24\x27\xa6\x5d\x0d\xa8\xb9\xd1\x44\x48\x52\x8b\x65\x99\xdc\x5f\xa5\x65\xf9\x95\x72\x51\xb7\x89\x96\x44\x6a\xbf\x93\x68\x06\x12\xb1\x69\xb4\x27\x52\xb8\x8d\xb4\x6f\x12\xe5\x50\x22\x36\x90\x84\xe2\x58\x22\x9c\xec\x26\xea\xa1\x44\x94\x0e\x2e\xa1\x39\x62\x3b\xb5\xd2\xb0\xa9\xa0\x01\x03\x71\xba\x9b\xe4\x0e\x27\x41\x83\x09\x0e\x7a\x13\x5b\xac\x95\x14\x76\x92\xa6\xc5\x55\x92\x57\xb5\xb0\x70\x82\x23\x80\x31\xdb\x04\xb4\x2f\x01\x54\x5c\x76\x13\xa0\x31\x84\xf2\x44\x38\xd7\x4d\x80\x86\x08\x82\x08\x18\x47\xda\x70\x68\x03\x63\x89\x90\x3b\x8c\xb0\xfa\x82\x84\xd0\x05\x47\x21\x21\x2e\x10\xc9\xc3\x16\x1c\x6b\x4d\xac\x26\xc2\xaa\x2d\x38\xd6\x98\xc0\x38\x82\x02\x5d\x83\xa1\xb6\x96\x48\x47\x1c\xc8\x72\xb6\x9c\x65\x37\x45\xac\xab\x82\xd1\x0c\x4a\x2e\xb7\x09\xd8\xf9\x42\x11\x29\x78\x3d\x04\xd6\x09\x58\x57\x07\x59\xba\x5a\x95\xea\x04\x1c\xec\xb4\xc0\x41\x4a\xaa\x16\x05\x8e\x76\xc2\x11\xc1\x35\x91\xaa\x45\x01\xb5\x0d\x92\x38\x4f\xa4\x0c\x5b\x30\xd4\xd6\x59\xac\x96\xf7\x5b\x30\xd4\xd6\x04\x62\x38\x34\xe7\x16\x0c\xb5\xd5\x92\x28\x4b\x04\x37\x5b\x30\x0e\x05\x96\x48\x49\xb0\x69\xaa\x34\xa9\x87\x75\x1c\x01\x3c\x91\x7a\x03\x8e\xdd\x6a\x88\x54\x80\xcf\x1b\x30\x56\x14\x74\x43\xc2\xe0\xed\x1a\x30\x56\x13\xc6\x17\x21\x88\x40\x61\x43\xb0\x8e\x85\x06\x1d\x17\x46\x34\x50\xa8\xa1\x72\x44\x78\xe8\xeb\xd0\x40\xa1\x82\x30\x92\x1b\x18\xba\x6d\x03\xc5\xa1\x4e\xe3\xa0\xe2\x37\x65\xc3\xbe\x74\xc4\x1b\x62\x36\xe4\x28\xb6\x82\x18\x41\x14\x76\xef\xd7\xa4\x1e\xc8\xa1\xe1\xa1\x6a\x51\x74\x00\x2c\x6a\x03\x84\x55\xdb\x82\xa3\xbc\x06\x02\x6a\xd8\x02\xab\xd8\x1f\x68\xc5\xb6\x50\x74\x7f\xa0\x66\xa1\x0d\x35\xd1\xfe\x7a\xd7\x06\xd6\xa6\xdf\x04\x18\x16\x1a\xa0\x8b\x40\x1c\x2b\x55\x03\x8c\xe6\xdb\x6f\x44\x14\x60\x21\x3a\x36\x22\x0a\x68\x9c\x5a\xe2\xe0\x05\xc5\x11\xb5\x78\x46\x30\x6a\xa8\xab\x6b\xbb\xc1\x8e\x63\x39\xd4\xd6\xd7\xa2\x19\xc1\xa6\x17\x1c\xc7\x77\x1e\x1b\x41\x6d\x98\x44\x9b\x6d\xd1\x66\x4b\xae\x1b\xb0\x6e\x46\x18\x90\x3f\xac\x07\x82\x71\x5c\x07\x49\x00\x73\xb0\x65\x02\x0d\x01\x92\xc0\xa1\x3f\x4d\x03\x85\x96\xf0\x92\x78\x47\x50\x9c\x10\x06\x0d\x61\x0c\x31\x9e\x58\xbb\x81\x19\x7e\x89\x76\x9a\xa0\x24\x35\x93\x72\x90\x19\xa5\x62\xa7\x47\x98\xc1\xd1\x42\x2a\x22\x3d\xc2\xd2\xb4\x91\x04\xf4\x5b\x6a\x35\x8c\x70\x51\x5b\x20\xa9\xa0\x5e\x62\x03\x47\x59\xb0\x9c\x48\xec\x20\xb3\x81\x63\x3b\xc0\xf8\x04\x75\x40\xd9\x8d\x70\x68\x08\xaf\xc1\x22\x92\xa0\x36\x50\x53\x0b\x89\xb3\xc4\x6c\xf3\x44\x41\xf7\x04\x5c\x1a\xbd\x85\x42\x33\x28\x90\x08\x45\x5a\xe5\xf3\x71\xe8\xf3\x9c\x48\xbb\x01\xa2\xa8\x2b\xa2\x3d\x41\x31\xb9\xca\x6f\xd3\x96\x4c\x34\x83\x67\x04\xef\x8d\xda\x08\xde\x1f\xb3\x11\xbc\x3f\x62\x23\x78\x6f\xbc\x46\xe8\xde\x68\x8d\xd0\xdd\xb1\x1a\x81\xbb\x23\x35\x02\x77\xc7\x69\x04\xee\x8e\xd2\x08\xec\x8e\xd1\x65\x3a\xab\x6b\xab\x40\xcc\x41\x0b\x1a\xe8\xc6\x9f\xb1\x20\xd6\x35\x74\xeb\xcb\x84\x5a\x74\x01\xba\xf1\x63\xac\x24\x62\xc3\x37\xfa\x30\x81\x80\x8f\x21\x50\xa4\x00\x1a\xfd\x97\x40\x3c\xc8\xae\xac\x81\xd1\x77\x09\xc4\x48\x62\x43\x0d\xc3\x7a\x5a\x45\xb4\x8a\xfd\x0d\xb0\xe8\xb2\x38\xa2\x34\xd1\x4d\xe6\x3e\x36\xa8\xd4\x44\x35\xec\x42\x94\x78\x01\x6e\xf1\x6b\x4a\x8b\x32\x59\xde\xd4\xdd\x67\x34\x91\x1a\xb4\xd1\x6e\x13\xa2\x2f\xaa\xa2\x9a\x72\xbe\x4d\x88\xde\x68\x2d\xa0\xe8\x85\xd5\x09\xd1\x1f\x15\xe0\x59\x13\x21\xdd\x36\x21\x7a\xa4\xa8\xbf\x24\x88\x2d\xdc\x34\x70\xa8\x8d\xd9\xc2\x6d\xed\xd6\x83\x72\xeb\x56\x91\x5c\xad\x32\x41\x12\xd5\x42\xc7\x1e\x85\x7e\x06\x01\xdc\x82\xb1\x4f\x03\x81\x7e\x01\xe8\xd7\x34\xcf\x8b\xfb\xad\xe7\x65\x1a\x6b\x59\x27\x6c\xea\x0b\xd2\xe9\xed\x36\x61\x53\x5f\x09\x1a\xc5\xb7\x09\x4d\x7d\xc1\x15\x0b\x7a\x0b\x6f\xaa\x2b\xb9\x25\xe8\xdb\xd5\xf0\x4d\x75\xc1\xe5\xdd\x82\x37\xb5\xb5\xa2\x0d\x6e\x2a\x8b\xce\xe8\x16\xdc\x54\x36\x70\x22\xb6\xd0\xba\xae\xe0\x89\xbe\xee\xac\x62\x5d\xb6\x9e\x5f\x53\x8a\x4b\x2f\x75\xfd\xb7\xea\x9a\x4c\x3f\x5f\x72\xc2\x09\x7f\xdd\x2c\x69\xae\xca\x6c\x91\x94\x9b\x75\xa7\x62\x99\x6e\x74\xef\xd5\x06\x69\xf3\xbe\xa2\x8d\x56\x0b\xee\xab\x5d\x56\x74\x96\xad\x93\xab\x3c\x9d\x0d\xf3\x5c\xa6\xb7\x55\x99\xe4\x97\xbb\xeb\x7a\x1d\xa4\xb8\xe0\x3a\xcc\x28\x5b\x5e\x17\xc3\x18\xeb\xdb\xe9\x34\x5d\xaf\xbb\x59\xd5\x63\xea\x16\xeb\x3a\xc9\xf2\xdb\x32\x1d\xac\x62\x6c\x88\x41\x94\xfb\xa4\x5c\x66\xcb\x9b\x36\xce\x56\x2a\x5a\x35\xcb\xd3\xb2\x6a\x23\x6d\x35\x05\x90\x76\x57\x17\x2f\xff\x33\xcf\x96\x9f\x7f\x4d\xa6\x7f\xfb\xba\xae\xd2\xc5\x5f\x8b\x65\x35\xa1\xc9\x6a\x95\xa7\x74\x8d\x90\xc9\xc5\xdf\xd2\x9b\x22\x25\xff\xf5\xff\xbd\x98\x5c\xfc\x5f\xc5\x55\x51\x15\x17\x93\x8b\xff\xff\x97\xaf\x37\xe9\xf2\x62\x72\xf1\x5f\x57\xb7\xcb\xea\xf6\x62\x72\xf1\x2e\x59\x56\x49\x99\xe6\xf9\xc5\xe4\xe2\xaf\x59\x99\x90\xbf\x25\xcb\xf5\xc5\xe4\xe2\xff\x53\x16\xd9\xac\xf9\xf1\x3e\xcd\xef\xd2\x2a\x9b\x26\xe4\xff\x97\xde\xa6\x6d\xc0\xc5\xe4\xe2\x2f\x65\x96\xe4\x17\x13\x28\x15\x5d\xa7\x65\x76\xfd\x7a\x7f\xbd\xf2\x12\xbe\x70\xdd\xef\xf5\xce\x3a\xf5\xa5\xb0\xb8\x0e\xb5\x05\x82\x3a\x2a\x5c\xb4\xed\x80\xd1\x7e\x30\xbf\x0b\x46\xa3\xc9\xd4\x2e\x18\x9d\x07\x26\xf7\xc0\x06\xc0\x42\xee\x71\xc7\x11\x77\x17\x88\xce\x15\xf3\x6e\x0f\xdb\xc5\x84\x1e\x3e\xe8\x65\xb1\x0e\x45\xbd\xf0\x9a\xe3\x82\xac\xc2\xf1\xb4\x0d\x8f\x2b\x9f\x97\x7a\x2f\x61\x91\xce\xb2\xdb\xc5\xa5\xd9\x4b\x58\xa7\x8b\xec\xaa\xc8\x67\x97\x76\x2f\x09\xc1\x6e\x0b\xce\xd3\x64\xb6\x59\x2f\x6c\x41\xa0\x19\x3a\x10\x11\xdb\xab\x03\x8b\x2d\x8e\x03\xeb\x16\x18\xdb\x1b\xbd\x9f\x2d\xd0\xc4\x4e\x50\x1d\x20\x1a\x2c\xa6\x3b\x30\x1c\xda\x58\x97\x23\x8e\x6b\x0c\x9d\xd7\x79\x59\x2c\xd2\xf6\xea\xff\x16\x58\x2f\xec\xdb\xb8\x98\x19\x15\xbb\x4c\x96\xb1\x2e\x2d\xb5\x69\xad\x3f\xbc\xea\x22\x42\x15\x5b\x88\xdd\x69\xf7\x0e\xae\xad\x67\xcc\xe0\x83\xa0\x5f\xdd\x4a\xf3\xbc\x37\x43\xdf\x52\xd4\xfa\x45\x2f\x34\xcb\xce\xab\x8a\xcd\x60\xd4\x5a\x61\xc3\x17\x04\x3d\xb8\xcd\x50\xb2\x61\x3b\x2d\x96\x55\x99\xac\x2b\x1a\x42\xe8\x7f\x8f\x14\xc2\x16\x7b\xdb\x3c\xbb\x65\x68\x12\x76\x71\x6d\x4f\x79\x9b\x84\x56\x81\x47\x22\xaf\xef\x93\x6a\x3a\x3f\x0b\xdb\x1f\xc2\xf6\x0d\xf6\xd7\x65\x95\x7c\x89\x3a\x05\x63\xf7\xd7\xcb\x9f\x66\xb3\x54\xa5\x6e\x3f\x2d\xf9\x7a\xf9\x53\xa2\xe1\x5f\x1f\x1d\x76\xc8\xe5\x4f\x76\xea\xae\xbc\xd8\x22\xcc\x92\xf2\x73\xcd\xd7\x79\x2f\x71\x2d\xaa\x4e\xba\x4e\x66\xe9\xac\xe6\x9b\x26\xf0\x6f\x9b\x96\x54\x79\xb2\xbe\xfc\x49\x48\x97\x5e\x5f\x6f\xc1\x77\xc9\x4d\x99\x2c\xab\xcb\x9f\xe4\xb5\xf7\xd7\xad\x32\xc6\x1d\x02\x97\x3f\xd9\xa0\x43\x68\xf1\xa9\xd2\xb2\x4c\xae\x8b\x72\x71\xf9\x93\x97\xf2\xba\x4d\xb2\x4e\xcb\x6b\xa8\xac\x4e\x8d\xdf\x42\x57\xc9\xf4\x73\x5a\x5e\xfe\x24\x66\xb3\xab\x44\x6d\xe1\x58\x4c\xac\x6d\xba\xfc\xf9\x27\xce\xf9\x84\xf8\xf0\x87\x56\x0b\x96\xe9\xec\xf2\xa7\xeb\x6b\x35\x53\xb3\x36\x55\x9a\x2e\x2f\x7f\x52\xe1\xca\xe8\x64\xaf\x51\xa0\xe2\x46\x99\x6b\xd7\xce\xe7\xb6\xaa\xd2\xb2\x6e\x31\x99\xc8\x6b\xf4\x27\xeb\xc4\x68\xee\x76\x3b\xb4\x65\x04\xa1\x3c\xf3\xa2\xcc\x1e\x8a\x65\x95\xe4\xf4\xf3\x1d\x8d\xdb\x45\xd2\x55\x52\x26\x15\xd8\xd0\xf8\x9e\xc7\xa3\xee\xf7\x60\x7e\x4e\xbf\x6e\xb1\x2f\x2f\x2e\x2f\x0e\xa3\xdd\x97\xc9\x6a\x95\xe2\x5e\xa1\xb2\xba\xbc\xf8\x79\x04\x6a\xba\x9c\x5d\x5e\xbc\x02\xc4\xe9\x7a\xb7\x68\x97\x17\x93\x8b\xc7\x66\xa7\xc7\xd5\xed\xf4\x73\x5a\x21\x06\x61\xeb\xb4\xbc\xcb\xa6\xe9\xa4\x27\x11\xdf\xfd\xff\x63\x9a\x27\xeb\xf5\xa7\x57\x64\xd6\xfd\xbd\x21\x48\xbf\xac\x8a\x75\x3a\xa3\xab\xa4\x9a\x23\x59\xbd\xbf\x83\xc5\x97\xf9\x64\x96\x8f\xe3\x93\x17\xd3\xcf\x74\x9d\xe2\x66\xb0\x58\xb6\xb1\x94\xb7\xab\x75\x55\xa6\xc9\x82\x66\xcb\x75\x95\x2c\xa7\x69\x43\xce\xf2\x62\x9a\xe4\xf4\x2a\x5b\xce\x68\x32\x9b\x95\xe9\x7a\x4d\x66\xd5\x69\x74\xeb\x02\xdb\x03\x6a\x37\x8a\xf6\x48\x91\xb1\x5b\xa6\x45\x9e\xa7\xad\xbd\x30\x88\x73\x79\x9d\x95\x90\x36\xcf\xf2\xd9\xab\xf1\xad\x57\x16\xb7\x55\x4a\xab\xac\xca\xd3\x09\xab\x92\x9b\x11\x3d\x57\xcd\x00\x71\x3d\x88\xf4\x6d\x55\xac\x33\x74\x62\x93\xab\x75\x91\xdf\x56\xe9\xe6\x2d\x69\xf3\xa6\x7c\x9a\x67\xab\xcb\x32\x9d\x56\x3f\xa3\x6b\x4e\xf8\xab\xd7\xb5\x02\xac\xbe\xf4\xbc\xe0\xa6\xf0\xbc\xdd\x0d\xb5\x79\x77\x78\x4e\x6f\x2c\x8a\x59\x4a\x66\xd5\xb6\x90\xeb\x2a\xa9\xb2\x69\x2c\xd2\xed\x72\x9d\x56\x75\x51\xf0\x75\x6e\x77\x2f\xd5\xde\x3e\x31\x96\x2c\xb3\x45\x12\x77\xa1\x54\xc9\x15\x5d\x26\x77\xe4\x36\x6f\x5e\xf0\x9e\xb3\xdb\xea\x64\x92\xcb\x39\x34\x6e\x14\x83\x66\x1a\xf2\x2a\xfe\x8c\x1b\xf7\xb6\xc2\x9e\xdc\x56\x73\xba\x48\xab\x79\x31\x03\x9b\x98\xb6\xf4\xb0\x4a\xcb\x65\x92\xd3\x75\x71\x5b\xb6\x14\xfa\xd4\x7d\x5d\x27\x13\x6d\x4a\x7c\x1e\xf5\x75\x31\x3d\x37\xe3\xd8\x6a\xcd\x06\xce\xf3\x39\x8c\x69\xf7\x2d\x5b\x14\xcb\x6a\xc6\x22\x84\x92\x7a\x3f\xcd\x3e\xe2\x76\x73\x2b\x6d\x09\x41\x67\xa3\xd6\x39\x44\x43\xed\x3d\x82\x1a\xdb\x7b\xa7\xca\xe7\x71\xea\x6b\xbc\x1e\x4e\xdb\x9d\xaf\x84\xdd\x25\xe0\x58\xc6\xfd\x63\x0d\xe6\xe7\x6c\xb9\xad\xca\x8e\xf0\xb6\x16\x07\xe8\xaa\x2c\xbe\x7c\x9d\xb0\x59\xb6\x9e\x42\xc6\x5f\xe9\x74\x9e\x64\x4b\x52\x8f\x80\xd3\xa4\x9c\xbd\xad\x37\xb4\xdd\xe6\x24\xcf\x0e\xef\x47\xec\x87\xb7\x9a\xf5\x00\x42\x2d\xa9\x07\x52\xbb\xc2\x38\x88\x34\x28\x6f\x3d\xbb\x25\xb7\x02\xfb\xf6\x8f\xc7\x10\x9a\x52\x1e\xc1\xc2\x82\x4c\x58\x1e\xb7\xf1\xb6\x76\x62\x46\x8b\xb4\xc7\x10\x0b\x39\xcb\xee\x5e\x0d\xe3\x6e\xeb\x77\x1c\xb7\x85\x35\xb4\xd7\xf3\x40\xd2\x4e\x7b\x1f\xc3\x1b\x6c\xf2\xa1\x7d\xdd\x6f\xeb\x0d\xcf\xc3\x48\xf3\xa6\x1d\xc7\x6f\x4d\x1d\xd1\xd0\x4f\x61\xb6\xd7\x13\x4f\x61\xb6\x65\xd3\xb3\x7d\x76\xb3\x6e\xd6\xd9\x47\xdb\x83\xb8\xad\xdf\x10\x56\xbb\x5f\x47\x22\x0f\x74\xee\x51\x0e\x67\x6c\xfe\x3d\xde\x73\xcf\xd5\x69\x4f\xef\xaf\xc6\xa1\x61\xb1\xd6\xe9\x0c\xf7\x24\x17\xab\x22\x2f\x6e\xbe\x82\x1f\x51\x66\xd3\x75\x3d\xea\xd6\xfe\xc4\x91\xfd\xc8\x47\xd2\x77\xf4\x72\x14\xf2\x90\x72\x76\xb7\x3f\x77\x7e\x6d\x47\xec\x2e\x38\x8e\x80\x5d\x58\xa7\x54\x7d\x49\x43\x65\x38\xb2\xe9\x3a\x82\x1a\xe6\x3d\x29\xb1\x40\x3d\x09\xa7\x65\xdd\xd9\xdc\xdd\xef\x11\x1c\xb2\xf7\x7d\x09\x9d\x26\x19\x69\xde\xfb\x0a\x77\x70\x9b\x79\x04\x75\x73\xe8\xa4\xb4\x8b\xd6\x49\x38\x2d\xeb\x66\x3b\x7b\x0f\x6c\xb7\x65\xba\x89\xfb\xf9\x37\x29\x3d\x6d\xd3\x87\x30\x54\xc2\x31\x9b\xeb\x47\x0e\x5f\xdb\xed\xf7\x67\xec\xd8\x9f\x57\x8b\xfc\x1f\xb3\xa4\x4a\x28\x3a\x4a\xff\xf7\x9b\x8b\xd9\x94\x25\xd3\x7c\xcd\xb2\xe5\x2c\xfd\x72\xf1\x89\xe0\x21\xa1\x6a\xd6\x38\xb2\xe0\x9c\xb1\x55\x91\x67\xd3\xaf\x74\x59\xcc\x52\x9a\xcd\xc0\x93\xab\xbe\x76\x52\xea\x75\x83\x6d\xe2\x99\xc7\x01\x8e\x0e\xa6\xcf\xc6\x77\x67\x70\x7d\x36\xbe\x3b\x1c\x4f\x3f\xc8\x30\xb2\x09\x9e\x83\x71\x6f\x1b\x3c\x07\xe3\x86\x65\x73\x56\x2a\xee\xf5\xc6\x8d\xb1\x23\x26\xd8\x84\x2d\x8b\x2a\xbb\xce\xa6\x49\xec\x09\x9c\x41\xb7\x41\x5b\x43\x96\x67\x6f\xff\xf8\x0d\xa7\x05\x38\xf3\xa7\xb3\xdb\xfa\x28\x1b\x13\x66\xfd\xba\x95\x50\x65\x8b\x6c\x79\x43\xaf\x6f\x97\xf1\x65\x5c\x9a\xac\x53\x5a\xdc\x56\x8f\xd1\x77\xbb\x4a\x96\xcb\xb4\xfc\x44\x96\xc9\x5d\xbd\xf2\x52\x5c\x47\x03\x18\xd3\xa7\x45\x9c\xc0\x2c\xaf\x8b\x4f\xa8\x43\xe4\xaa\x98\x7d\x7d\xcb\xe2\x02\x6f\x5e\xa0\xbf\x07\x9a\xf3\x6d\x20\xcf\xe9\xed\x55\x36\xa5\x57\xe9\x43\x96\x96\x3f\x33\x31\x81\xff\xd2\x4c\x58\x78\xf5\xba\xbf\x0a\xeb\xc7\xad\xba\xe2\xe4\xa1\x56\xe7\x74\x71\x95\x96\x98\x6b\xb6\xbc\x79\xd5\x53\x94\x6f\xb1\x8d\x4f\x2c\xc4\x96\xa8\x5d\x86\x16\x78\x99\x2c\xd2\xcb\xfa\x9c\xe2\x75\x59\x2c\xe8\x75\x5e\xdc\xb7\xd2\xaf\xb3\x3c\xc7\xd5\x98\xcb\xeb\xa2\xbc\x4f\xca\xd9\xfa\xf1\xbf\x7d\x4e\xbf\xe2\xf6\xf0\x35\xd9\x25\xfc\x26\x38\xff\xc3\xb7\xbb\x6c\x5d\x9f\xec\xd8\x3d\x73\x71\x78\x65\xe9\xf1\x71\x77\x42\x43\xe2\x50\xf8\xf6\x8f\xad\x53\x7d\x7d\x47\x0b\x1a\x58\x9e\x2d\x37\x6f\x67\x3a\x78\x9d\x53\x09\x3d\x87\xeb\x62\x07\x5c\x67\x79\x95\x96\x30\x89\x7d\x55\x3b\xff\xb8\xe3\x1e\x8f\x3f\x7e\x8a\x67\xb9\x48\x54\x97\x55\xb2\x5e\xdf\x17\xe5\xec\x53\xcf\x3a\xd0\xa9\xbc\xaa\xf4\x4b\xf5\x34\x3e\x9b\x33\x92\xc3\x87\x57\xa3\xe1\x6f\x8a\xbe\x5f\x93\xd3\x89\xeb\xa2\x9f\x42\x78\x52\x59\x6b\x2f\xfe\x9c\x92\x76\x48\xc7\x97\xb3\x26\x3b\xa9\x94\x80\x7c\x56\x19\x5b\x84\xe3\x4b\x88\x44\x23\xcb\x37\x5a\x88\x9f\xc0\x65\x4c\xc9\x8f\x0b\x6e\x7b\xd2\x76\xa0\x8c\x87\x50\xea\x02\xec\x27\x6f\xb9\xc7\x86\xc3\xc3\xeb\xfb\x7c\xf7\x13\x6b\x8e\xed\x84\x0d\x2f\x3c\x8e\x85\xce\xd4\x11\x75\x3a\x8c\x13\xd9\xf7\xa5\x6f\x72\x69\x25\x1e\xd0\x81\x43\x18\x7b\xcc\x77\x25\xba\x95\xd4\x2b\xb8\xfd\xe9\x7b\x6c\x3b\x62\xf8\xed\xf0\xf1\x3f\xcb\x79\x7d\x3a\x70\xf8\x84\x5a\x67\xec\x6e\xe1\x34\xaf\xea\x5f\x3d\x65\xd4\x7e\x1b\xd7\x22\x37\x0c\x1a\x0f\x1b\xdf\xa8\xbc\x6d\xbf\x94\xe9\x5d\x82\xbf\xca\x96\x60\x92\xe3\xa2\xf0\x5c\xf6\xe2\x00\x5f\x52\x9f\x8f\x6f\xe3\xcc\xd3\x24\x87\xd9\x31\xf8\x57\xf5\xdb\xb8\x0e\xa8\xb8\xad\x56\xb7\x55\xfb\xad\xd3\x48\x8a\xc6\x34\x1e\x5a\xbc\x66\xf1\x08\x38\x4b\xf2\xbc\xb8\x1f\x8d\x3d\x4b\x97\x5f\x47\x23\xb7\x02\x3b\x1c\xa5\xa9\x66\x6c\x96\xae\xab\x6c\x59\xbb\x7a\x07\xb1\x0e\xbe\xd9\xd8\x5d\xac\x86\x46\x9e\xa5\xd7\xd9\xb2\x76\xcb\xf0\x30\x3e\xb4\x63\x7b\x59\xb6\xee\xe9\x6e\x17\xe3\x69\xc7\x69\x51\xae\xea\x97\xde\x64\xcf\x5b\x24\x6c\x36\x5d\xbf\xed\x2e\xcd\x74\x03\x4e\xf4\x7b\x2a\xcf\x71\x0e\x7e\xd8\x80\xd6\xa2\x3c\xda\x94\x8d\xc7\x07\x65\x1e\x83\x3d\xac\x63\x83\xa4\x9b\x7e\x1b\xc4\x8a\x3d\x39\x4d\x56\x51\x52\x46\xe0\x6e\xe7\xb5\xe3\xb0\xbb\xe2\x30\x86\x64\x3e\x6a\x6d\x18\xfb\xf9\x29\x81\x0b\x6a\xc5\xc2\x6d\x38\x2d\x95\xaa\xc1\xf3\xec\x66\x8e\x1b\x28\xf6\x93\x40\xec\xf6\xa1\xf5\x34\x7e\x91\x2c\x93\x9b\x14\x0a\xba\x8f\x52\xef\x3f\xdc\x4f\xa8\xf7\x0a\xb6\x12\xf6\x2c\x6c\xdd\xe5\xe7\x56\x16\x45\x08\xdf\xe9\x6c\xb4\xa7\x9e\x00\x76\x6d\x6f\x2b\x1c\x41\x1b\x1e\x73\xdf\x9f\xe8\xe5\xc9\x76\x9e\xd7\x6c\x53\x38\xac\xc8\xa3\xe8\x93\x71\x68\xa7\xb0\xc4\xc2\x37\x87\x87\x9b\x57\x0b\xbd\xcb\x38\x9f\xef\x58\x3a\xcb\xaa\x8b\x4f\xa0\x39\xbd\x18\xf5\x32\xcd\x9a\x35\x6f\xd5\xd9\x22\xad\x12\xc0\xba\x00\xe5\x4e\xae\x68\x63\x98\x5a\x06\xaa\xc7\xff\x88\x85\xda\xf3\x1d\xf6\xc0\xdb\x91\x02\x81\x8d\x56\xe3\x8f\x7a\xc0\xdd\xce\xb8\x51\xc9\x48\x91\xe3\xa4\x3e\xe2\x74\x15\xbc\x05\xda\xea\x71\x07\xd8\x51\xd7\x76\xca\xfc\xf7\x17\x9f\x62\xc8\x8d\x91\x5d\x37\xe6\xb0\x17\xf2\x6d\xc4\xb9\xf9\x81\x90\x0b\xf2\x79\xdc\xa5\xdf\xc6\x13\x7a\xf1\x6b\x7e\x97\x7e\xcd\x8b\x8b\xf2\x54\x17\x65\xbc\xd3\xf1\x76\xcf\x18\xff\x58\x0e\x41\x9f\x61\x7f\xb1\xdb\xbf\x6f\xbb\x3d\x60\x93\x4f\xb0\x4c\xcd\x71\x80\x57\x8f\x67\xcc\x7f\x9f\x7f\xea\x74\xd6\xec\x60\xfe\x44\x1f\xfe\x5c\xba\x63\xbe\xef\x89\xee\x55\xbf\x2f\xf5\x3b\xf4\x98\x86\x25\x2a\x9e\x3c\xd9\xca\xd3\x73\x79\x23\xc3\xf6\xf7\xa8\xa9\x7d\xba\x0d\xd9\x0e\xf2\xc7\x47\x8f\xb6\xba\x0e\xac\xb5\x29\xf4\xfb\xfe\x4d\xdc\xad\xdf\xb3\xe5\x7b\xb6\xd1\x7c\xa0\x33\xcd\xb3\x3a\xf1\x4f\xf5\x5a\x7b\x1d\xd2\x97\x75\xb4\xdf\xc8\x49\x7d\x0e\xf7\xf3\x99\xc2\x6b\xfe\x0b\x17\x82\xfe\x0d\x1d\xc7\xe7\x73\xe6\x9e\xb8\xee\xd2\x91\x8e\xdf\xa7\x8b\x70\xf0\xf5\xd2\x39\xbe\xe6\x77\x71\x1b\x87\x1c\xb7\x41\xa7\x6c\xa0\x82\xdd\x57\x5f\x64\x2e\x90\x27\xfb\x9c\x2d\x67\xcd\x66\xf9\xe7\x38\xbc\x32\xde\xac\xa4\x8b\x27\x91\xd7\x6f\xe2\xc0\x43\xc3\xa2\x22\x3b\xf8\xb5\x2a\x8b\xeb\x2c\x1f\x17\xc6\xf8\x90\x83\x77\xf4\x9c\xcc\x58\x09\xc9\xdf\xce\xce\x3b\xe9\x72\x7a\x24\xf4\x11\x6e\xd7\x38\xdf\xac\x8e\xc8\x3e\xd2\x93\x5b\x8d\x71\xe1\x46\xb9\x79\x63\xf3\x45\xe4\xa3\xd9\xb6\x9a\xe8\x14\xbf\x71\x6c\x21\xda\x34\x7d\x65\x69\x4d\x06\xe2\x88\xda\x3a\xed\x48\x7a\x65\xa2\x45\xd1\x8f\x7a\xe0\xe8\xcb\x7e\x68\xed\xfd\x43\x2f\xe9\xba\xc8\xef\xd2\x72\xdd\x5a\x10\xea\x3f\x19\x33\x88\xb1\x5e\xe5\x59\x55\x75\xd9\x8c\x39\x36\xd3\x4c\x7c\x96\xa8\x1e\x59\x3e\xfb\x59\xbe\xea\x62\xac\x46\x07\xf2\xef\x3a\x7d\x60\x5a\xd0\xb1\x7f\xdb\x8c\xb0\xbb\x6e\xe0\xaa\xc7\xd1\xdb\x1c\x74\xfd\xd4\x39\x73\x32\xcb\xee\xc6\x9f\x2e\x39\xe2\x14\xc2\x68\xf4\x3d\x9d\xc8\x91\xfc\xcf\x72\x39\x47\xf2\x7e\xaa\x7b\x7a\x34\x9b\xa7\x2e\xbe\x46\x21\xf9\xd3\xd1\x7c\x56\x23\xad\xf8\x58\x63\xbf\x3a\xc7\x2b\xee\xc8\xe4\x09\xa7\x6f\x50\x68\xdb\x53\xdc\x9d\x09\xef\x76\x3c\xeb\x80\x57\xfb\x13\xe0\x9e\x29\xf1\x1e\xf1\x36\x69\xd5\x99\x26\x77\xe7\xcc\x7b\x64\x08\x5d\x1d\x9e\x42\x0f\x4c\xae\xf7\x78\xed\xa3\xac\x76\x27\xde\x7b\x13\xf1\x3d\x26\x4d\xc2\x6a\x77\x6a\xbe\x37\x55\xdf\x23\x6d\x12\x56\x43\xf7\x77\x1c\x3b\x3a\xb4\x3f\xf1\x01\x29\x7d\x96\xe9\x50\x5b\x90\x4e\x91\xa1\x83\x57\x12\x64\x2b\xb0\x30\xc5\x97\xb8\x4e\x51\xcd\xd3\x45\xfa\xbf\xdf\xd4\x51\xbf\x61\x2c\xc0\xf4\x7a\x03\xf4\xa4\x73\x19\xc9\x88\xeb\x0c\xda\xb3\x32\x68\x82\xbd\x59\xda\xb1\x03\x46\x47\xf6\x67\xef\x37\xca\x11\x82\x81\x79\x5b\x1f\x1e\x56\xa4\x6f\x13\xf8\xef\xeb\x22\x86\xbe\xe9\x61\xba\x38\x65\xd6\xd8\xc5\x1e\x9a\x4a\x76\x31\xfb\x5e\x15\x6c\x07\xe6\x78\xe3\x4c\x77\x62\xb3\x33\xcd\xc1\xdb\x5b\x08\xc6\x76\xc7\x09\x4b\x6c\xf1\xa7\xcd\x2c\x5b\xe2\x70\xee\xc1\x0e\xd0\x99\x27\x4e\x4b\xf7\x4a\x71\xc6\xd1\x8a\x59\x76\xf7\xed\xf0\x66\xf5\xd6\x36\xf7\xde\x75\xef\x93\xa6\x3c\x4f\x9f\x58\x3c\xdf\x54\xe1\x7b\x79\xff\xab\x61\x67\x7b\xc0\xce\x8e\x33\xa8\x43\x56\xf3\x3c\xfb\x78\xdc\xf8\x1d\xb7\x71\xab\x09\xab\x8a\x45\x71\x53\x26\xab\xf9\x57\x8a\x7f\x60\x5c\x9f\x7e\xc6\x7d\xb9\xdf\x65\xc4\x6c\x74\xfa\xe8\x8a\xcc\x69\x0b\x16\x67\x2d\x1f\xb4\x16\x0c\x9e\x63\x6e\x7f\xea\x34\xfd\x39\x67\x8a\x67\x4d\xa2\x06\xa7\x4c\x3d\xb3\xa2\x7f\xfb\xf5\xf0\xef\xe5\xea\xc7\xb6\x7c\x9a\x97\x17\x79\xec\x7b\x59\xfb\x2b\xdb\x1d\x77\xe4\xf9\xd6\x87\x0f\x9a\xe9\xa7\x5b\xe7\x27\x19\x55\x34\x85\x63\x97\x3f\xff\x85\x2b\x9c\x9d\x05\xca\xef\x70\xb3\xda\xf3\xad\xe7\x9d\xb4\x08\x77\x68\xcd\xec\xdf\x64\x35\x6a\x7f\x61\x69\x78\x15\xe9\x5f\xba\x6a\x74\xda\x1a\xd0\xb8\x35\x9d\xb3\x57\x69\x4e\x5f\x6a\x79\xca\xd2\xc8\xf0\xda\xc6\xc0\xca\x45\xff\xc2\xc4\x88\xf5\x86\x83\x6b\x08\xfb\x2b\x04\xcf\xbd\x1e\xf0\xe4\x79\xff\x73\xcc\xe5\x4f\x9a\xbe\x7f\x9f\xc9\xfa\x0f\x3d\xb1\xee\x9d\x3f\x77\x26\xca\xfd\x73\xe2\x67\x9e\xe1\x3e\xc3\x2c\x75\xc0\xba\x7a\xb4\xae\xfb\xa3\xec\xe6\xc2\x33\x1a\x63\x41\xd3\x69\x56\x4e\x73\x3c\x59\x8f\xb3\xd6\xf5\xdd\xcd\xe5\x6d\x99\xff\xfc\x1f\x20\x8f\x97\xd9\x22\xb9\x49\x7f\x59\xdf\xdd\xfc\xe9\xcb\x22\x7f\x5d\x5f\x1d\xfc\x06\x6f\x0e\x9e\xfc\x79\x7d\x77\x43\xc0\x0e\xff\x67\xf1\xe5\xcd\x05\x27\x9c\x48\x4d\xa4\xbe\x20\xd7\x59\x9e\xbf\xb9\x58\x16\xcb\xf4\x82\x7c\x59\xe4\xcb\xf5\x9b\x8b\x79\x55\xad\x2e\x7f\xf9\xe5\xfe\xfe\x9e\xdd\x2b\x56\x94\x37\xbf\x48\xce\x39\x30\xbe\x78\xfb\x67\x8c\xcd\x88\x27\xd1\xcb\xdb\x3c\x7d\x73\x91\xde\xa5\xcb\x62\x36\xbb\x20\xd3\x3c\x5b\xed\xc2\x66\x6f\x2e\x7e\x15\x82\x08\x33\x97\x77\x72\x4e\xe5\x1d\x95\x0f\x0b\x4e\xfd\x5c\xde\xd9\x39\x95\x1f\xdd\xc3\x82\x85\x40\xcd\x3b\xcb\xb4\x23\x92\x48\x62\x99\xf6\x44\x12\x21\xd7\x1a\x40\x82\x93\xc0\x42\x20\x82\xbf\x13\x8e\x61\xd8\x75\xf8\xbf\x79\x16\xf2\x6f\xf5\x33\x11\x02\x10\xe5\xc3\xaf\x42\x12\xc9\xa7\x54\x33\x2d\x09\xa7\x9e\x2a\x66\x3c\xf5\xd4\xaf\xe3\x03\xc1\x0f\x81\x1f\x04\x7e\xc4\x07\x80\x3d\x34\xad\xf1\x07\xa9\x38\xe7\x17\xbf\xbc\xfd\x33\x54\xfa\xed\x7f\xbc\xda\xdc\x7a\xb7\x48\xd6\x9f\x29\xb6\x73\xdd\x87\x87\xba\xe5\xd5\xeb\xf1\xa8\x8f\x63\xf6\xa7\x91\x38\xe6\x24\x42\x7c\xad\x11\xe9\x3c\x9b\xa5\x9f\xfa\x2e\x3b\xae\x83\x5c\xb6\xee\x3c\x7e\xd5\x0c\x9b\x5b\x81\x8a\xea\x4e\x57\x79\x92\x2d\x7f\x0c\x41\x0a\x20\x1d\xe2\x03\x74\x78\x20\x86\x08\x49\x04\x87\x47\x80\x12\x43\x4c\x7c\x88\x30\x21\x01\xc3\x6d\x92\xf1\x8e\x05\x22\x14\x3e\x23\x58\xc4\xff\xf1\x39\xc2\xf1\xe6\x22\x40\x3f\x2c\x09\x8f\x03\x3e\x28\x4b\xbf\xac\x92\xe5\xac\x69\xe3\xfd\xf8\xa3\x35\xda\x34\x2f\xd6\xe9\x6c\x13\x92\x63\xa4\x45\x7f\xbb\x21\x38\x01\xf7\x8c\x51\x70\x87\xb6\x3b\xf0\xcd\x2e\x8b\x65\xfe\x35\xfa\x7d\xe0\xd1\xc7\xa9\xf0\xa6\xc6\xbd\x24\x23\x70\xc6\x96\x09\xc4\x76\x9e\xde\x95\xc5\x92\xce\x8a\xfb\x1f\x44\x6c\x2d\x48\x98\x67\x26\x7c\x88\x12\x28\x1c\x71\x20\x6e\x1e\x85\x93\x08\x9e\x5b\x62\x89\xa5\x96\x0a\xa6\x05\x7e\x0d\xcb\xdf\xe1\x05\x93\x18\xf1\x11\x26\x22\x6f\xe3\xd6\x27\xec\xa8\xad\x40\x1e\x0b\xaf\x89\x53\x98\xe8\xb1\x0f\x10\xed\xac\x9f\x90\x36\xf5\x00\xd9\x7e\x68\xca\x98\xdd\x2a\x69\x0f\x4b\x00\x6b\xae\x64\x78\x42\xef\x0a\x0b\xff\xc7\x75\xe9\x4d\x47\x08\x7a\xfa\xb6\xd5\xeb\xd8\x25\xd2\xcb\x77\xf2\xbf\xc7\xee\xf5\xcc\x05\xa2\x73\xca\x9c\x72\xcc\x89\x0f\x42\x10\xc7\x8c\xb1\xef\xd5\x47\xcf\x8c\x9b\xfb\x9c\x4a\x16\xc0\xba\x31\xaf\x35\x73\xca\x32\x27\xc4\x07\xa1\x88\x67\xdc\xca\x07\xe8\xdb\x12\x9c\x42\x68\xf6\xcf\x29\xf2\x7f\xe7\x94\xd6\xe6\xa2\x06\xc5\x48\xd7\x6f\x2e\x04\x33\x17\xe4\xcb\x9b\x0b\xe6\xcc\x05\xf9\x5a\xff\x6d\xd2\x34\x24\xc6\x45\xec\xe6\x57\xf9\xe5\xcd\x85\x63\xd2\x40\x0e\x31\xa2\xf2\x9b\x8b\x5f\x15\x33\x60\xfa\xf2\x40\xc2\xc5\xc8\x2c\x6b\x10\x98\xab\x69\xb2\x7a\x73\xb1\xfe\x9f\xb7\x49\x99\xa2\x4c\xde\x6c\xe5\xf2\xa7\x26\xbc\x1d\x78\x9b\x49\xb6\x04\x47\x30\xcf\x96\x9f\x09\x6b\x12\xe0\xd7\x46\x3c\x92\x7f\x94\x69\xfe\xc7\x37\xcd\x62\xf9\xa7\xad\x82\xa7\x5f\xb2\xea\x87\x50\x6c\x43\x44\xf8\x68\xe6\x86\x05\xad\x3f\xaa\xf7\x26\x01\x2f\x04\x23\xe8\x50\x49\xe4\x9d\xd0\x5b\x00\xb8\x36\x73\xa1\xa7\x82\x09\xf8\x41\x59\x20\x12\xbc\x21\xc3\x82\x07\x3f\x48\x84\xf7\xe6\x61\x11\xa8\xb0\x77\x72\xae\x98\x09\x39\x0d\xcc\x2b\x82\x5f\x02\x6d\x13\x5a\xbe\x68\x9d\x3e\x0a\x3e\x97\x1f\xd5\x9c\xba\x81\x71\xe2\x27\x18\x20\xeb\x20\xcf\x9b\x2e\x81\x21\xbb\xb3\x2d\xb1\xad\x7c\xc7\x0f\x1a\xce\x72\x32\xab\xd0\x03\xff\xd3\x6c\x04\x2d\xae\x3b\x8f\xa0\x39\x1e\xd4\x9c\x5d\xa5\xf3\xe4\x2e\x2b\x4a\x32\xab\xf6\xc8\xf7\x63\x99\x1f\x8f\xf3\x3d\xc8\xf0\x40\x70\xec\x11\x25\x3a\xba\x56\x53\x37\x40\x6d\xc8\x87\x57\x6d\x8e\xe0\xee\xae\xdf\x74\xd1\x4f\x0f\x7d\xde\x5f\xa3\xc1\xe5\x88\x5a\x89\xe7\x69\xbe\xfa\xd4\x72\x67\x46\xec\xd1\xec\x16\x76\x3f\x44\x26\xfa\xb1\x71\x05\x69\x47\x66\x0e\xe1\xc6\xc8\x5c\x5d\x64\x9c\x0a\xf6\x15\xb2\xb3\xe9\xb3\x5d\x96\x6f\x14\xaf\x0a\xfa\x21\xe7\x59\x92\xc8\xa9\x61\x46\x68\x30\x7f\x9c\x68\xa6\x3d\x78\x17\x44\xf0\x35\x6d\x7e\x50\xfc\xfd\xb7\x38\x83\xd2\x0a\x67\x5a\x38\xe7\xb2\xf1\x11\xa6\x67\x44\x30\xef\xed\xb4\xa6\xe1\xd4\x33\xa1\x15\x51\xcc\x4a\x5f\x3f\x7b\x26\x30\x97\x88\xa1\x98\x35\x8e\x6c\x52\x36\xdf\x35\x7d\xfc\x45\x15\xb3\x4d\x4a\xcd\x85\x53\xcd\x0c\x45\x6a\x80\xc8\x40\x37\xa9\x32\xdc\x31\x2e\xcc\xc3\x42\x30\x2d\xc1\x79\x12\xd2\x27\x82\x19\x63\x48\xfc\x8e\xc3\x2c\xd3\x5a\x51\x16\xbc\x99\x52\x26\xbd\xa5\x4c\x3a\x49\x99\xa5\x40\x04\x70\x8b\x18\x73\x8a\x5c\xa6\x94\x29\x6f\x18\x97\x9e\x32\xeb\x0d\x13\xde\x20\x2d\xa0\x24\x82\x69\x63\x49\xfc\xde\xf2\x86\xe4\x39\x10\xfb\x8f\xc2\x32\x35\x65\x5c\x06\xa6\xbc\x65\xc2\x78\xe6\x84\xae\x71\x2c\x64\xce\xa4\x37\xcc\x6e\x20\x90\x6f\xcc\x16\x72\x25\x9c\x40\x9e\x14\x09\x03\x3c\x00\x5e\x53\xe4\x58\x5c\xdb\xd4\xc6\xbe\x87\xe9\x88\xfa\x28\x24\x34\x82\x7e\x80\x19\xb4\x67\x0e\x0a\xa9\x34\x34\x00\x7c\xa3\x8f\x43\x99\xa6\x62\x0a\x65\xc5\xe6\x63\x4e\x2b\x80\x10\x26\x9d\xa0\x4c\x1a\x8f\x6d\x81\x78\x6b\x4c\x14\xd2\x13\x41\x98\x9e\x32\x69\x1c\x60\x31\x0d\xf9\x12\xb1\xa6\xc0\x81\x39\x2d\x91\x00\xda\x43\xa1\xe5\x51\xaa\xce\x0a\xc8\xa4\x9f\x42\x32\xc7\x9c\xa0\x32\x8e\x02\x6f\x39\x30\x73\x7e\x64\xab\xb2\xb8\x29\xd3\x75\x8c\x80\x59\x81\xeb\xb8\x4c\xaa\x7a\x33\xc2\xb0\x32\x6f\x75\xb2\x8e\xc5\x77\xaa\x1e\x1e\xd7\xb3\x88\x72\xf9\x05\x7c\x93\x3e\x44\x11\x42\xf8\x05\x53\x41\xf1\x92\xf5\xfa\xcd\xc5\xba\x2a\x6f\xa7\xd5\x6d\x99\xd2\x6c\x0a\x06\x27\x16\xed\xe2\xed\x9f\x31\xb6\xdd\x5b\xd6\x9f\x4e\xaf\x92\x75\xfa\xad\x58\x25\xd3\xac\xfa\x7a\xc9\xc4\xe3\x21\xbc\xa6\xb9\xb6\x31\x06\x2f\x0f\x60\x5e\x27\xcb\xe9\x57\xba\x5e\x65\x4b\xa2\xd6\x24\x5b\xe2\xc1\xa0\x94\xc0\x80\x95\x94\xaf\x37\x59\x49\xf3\xba\xf6\xe0\x66\xc9\x7a\x9e\x94\x65\xf2\xf5\x92\x13\xad\xdb\xd0\xe2\xfa\x7a\x9d\x56\x97\xfc\x75\xd7\xd7\xbb\x2c\x8b\xdb\xe5\x2c\x46\x4f\xbc\x2e\xca\x05\x2d\xca\xec\x26\x5b\x5e\x1a\xfe\x07\x62\xf8\x1f\xda\xd1\x07\x8f\x96\xf1\x1b\xff\xc3\xb7\xd1\xe5\x78\x94\xa6\x07\x1b\x6f\x23\xee\x41\xa7\x9a\x3f\x9a\x13\xd8\x53\x21\xf8\xa3\x3b\x29\x07\x61\xf8\x63\x55\x8c\xcf\x41\x4a\xfe\x38\xa2\x79\xd6\xd9\x02\x6f\x67\xab\xdb\x67\xd3\xd0\x97\x65\x51\x25\x55\xfa\x33\x9f\xa5\x37\xaf\x20\xe3\xbd\x14\x65\x63\xda\xe3\x9f\x7f\x89\x72\xf7\xe7\x59\x7a\xbd\xae\xcd\x46\xcb\xaf\x07\x6d\xdc\x71\xea\x55\xd7\x18\x65\xb3\x37\x17\xc9\xc6\x84\x98\xdc\x12\x75\xe7\x73\x6a\x89\xa2\x96\xaa\x8f\x1e\x67\x28\xbf\x44\xee\xb7\xeb\x94\xa0\x36\x5c\xce\xcb\xf4\x1a\x33\x48\x8e\x28\x06\x0a\x3e\xb0\x38\x87\xb6\x51\x86\xee\x04\x38\x2d\xeb\x58\xa5\x69\xb3\xf0\x32\xcf\x66\x69\xcb\x45\xf8\xba\x4a\x69\x99\xde\xa5\x49\x4e\xb2\xe5\xea\xb6\xba\xc4\xe5\x84\x74\xf6\xa7\x9d\xb9\xe6\x36\x38\x26\xae\xa5\xfd\x28\x66\xde\x4d\x25\x73\x60\xa7\x0c\x91\x4c\x6a\x5c\xfa\x02\x03\x03\xf6\x05\x06\x6d\x69\x29\x53\x60\xcd\xbc\xca\x25\x0b\x92\xc0\xd7\x54\x30\x23\x28\x24\x12\xc9\x1c\x95\xcc\x07\x02\x66\x86\x6a\xe6\x0c\x15\xcc\xc1\x93\x0a\xd4\x52\xc7\x0c\x15\x22\xfe\xc1\xd1\x5e\x32\xa7\x99\x04\x53\x1d\x3c\x73\xb9\x64\x02\x78\x08\xfb\x4e\x70\xe6\x34\x71\x98\xab\x60\xca\x10\x07\x3e\x84\x7b\xf8\x55\x12\xcd\x24\x60\x3a\x0d\xb9\xe9\xbf\x08\xc1\x3c\xde\xc2\x8b\x7f\xe2\x9c\x48\x10\x01\xa5\x72\xe0\x29\xa8\x40\x2c\xcc\x9b\x49\x9c\x3e\xa3\x95\x27\x9c\x28\xc6\x15\x65\x88\xe0\x29\xf3\x3a\x67\x1a\xac\xe5\x07\x11\x80\x4c\x4a\x22\x05\x91\x1c\x9e\x15\x93\x8e\x80\x3f\x03\x19\x3f\xfc\xea\x98\xc1\xd9\x53\x8e\x8c\xe0\x6b\x4a\x19\x37\x4c\x0a\xca\xb8\x87\x6a\xc3\x1f\x0b\x79\x08\x66\x2d\x1a\x55\xa2\xf0\x1f\x93\x30\x69\x63\x5a\x53\xc6\x15\x36\x2a\xef\xb2\xb1\x8e\x29\x85\xcb\x34\xcc\x28\x2a\x99\x8c\x7f\xa0\x47\xa8\x81\xdf\x9a\x1a\x6a\xd0\x4a\x06\x26\x29\x60\xd5\x88\x0f\x0b\xcd\x94\xa0\xcc\xf9\x5c\x31\x01\x13\x71\x01\x0e\x09\x65\xc2\x4e\x39\x85\x82\x50\x28\x08\x55\xf0\x2f\xa7\x4c\x38\xc6\x87\xd7\x82\xf6\x55\x61\x3d\x2f\xee\xfb\x55\xe1\xb0\xf0\x03\xcd\x8f\x22\xfc\x9a\x99\x77\x0e\xbe\x41\xb0\x14\x71\xcc\x8a\x21\x49\x5a\x07\x26\x1d\x55\x0c\x2f\x87\x06\x99\x9e\x1e\x90\x75\x7c\x6f\x20\xdc\x74\xbf\x27\xd7\xf1\x81\x40\xa7\x6e\x35\x8e\xc6\x07\x80\xe1\x2b\x8d\x29\xf6\x1f\xe1\x54\x91\xd8\x87\x44\xad\x5b\x52\xa5\x68\xfc\x41\x55\xab\x8b\x87\xba\x36\xb9\x5f\x1f\xba\x85\x68\xdb\xbd\x2d\xa4\x9d\x6d\x87\xbd\x38\x9f\xb3\xf6\xea\x74\x2b\x61\x80\x66\xef\x52\x98\x2e\x56\xde\x79\x4f\x15\x61\x43\x37\x1e\xb4\x26\xdb\xc7\x86\xf1\xa3\xc2\xdd\x34\xcf\x2a\xa3\x37\x49\x95\xde\x27\x5f\x8f\xb7\xd8\x61\x9a\x83\x0d\x78\x98\xa4\xdb\x9e\x87\xf1\xc6\x73\x1c\x68\xed\x1e\xa2\xdd\xc6\xef\x41\x19\xd9\x17\xa7\xed\xdc\x9b\x91\x74\x01\x3d\xfd\x34\x06\xfb\xa5\x7d\x0e\x7e\x4f\xe3\xf1\xcf\xfb\xfd\xe5\xa0\x93\x18\x7c\xbe\xbd\x4a\xcb\x65\x5a\xa5\x4f\x6c\x9c\x65\xb1\x48\xf6\x65\xeb\x24\x16\x45\x36\x9b\x3e\x8d\xc3\xf6\xca\xc9\xc3\xab\xfa\xcf\xf0\xf6\xa1\x7e\xe3\xd0\x2b\x51\x07\x91\x47\x48\xcf\x11\xda\xf1\xf8\x7d\x52\x71\x10\x79\x40\x02\x0e\xd2\xf4\xf7\xf6\x41\xf4\xde\x9e\x3d\x88\x3d\xa6\x17\x77\x5f\xe9\x8c\xea\x91\x03\x44\x27\xf5\xcc\x20\x8f\xd3\xe9\x86\x7b\xea\x00\xd1\xa8\x1e\x3b\x40\x7b\xac\xe7\x0e\x90\x1d\xe9\xc1\x03\x54\x63\x7a\xb2\xf5\x96\x2d\xcf\x6a\xbb\x19\x77\x7e\x0f\x77\xe6\x61\xba\x93\xfa\xf3\x18\x9b\xb3\x48\x87\x7b\xf5\x30\xdd\xa8\x8e\x3d\x4c\x7e\xac\x6f\x0f\x53\x1e\xe9\xde\xc3\x84\x07\x7b\x78\xac\x67\x33\xd2\x9b\x19\xf2\x60\x86\xbd\x96\xd1\x9e\xca\x01\xef\x64\xa4\x47\x72\xf0\x4d\x4a\x0c\x4f\x32\xcb\xd9\x75\x92\xe5\x80\x81\x61\x24\x8e\xa3\x97\xe9\x2c\xc3\xf7\xac\x83\xe8\xa7\xbc\xa7\xd9\xbf\x05\xb1\xab\x62\xa3\xa9\x86\x14\xec\x44\x26\x67\x10\x76\x94\x6b\x34\x55\x9f\x6a\x8d\x26\xde\x51\xac\xd1\x74\x5d\xb5\x1a\x4d\xd6\xa3\x54\xdf\xf1\xcd\xdb\x3f\xef\xab\xe3\xca\xda\x42\x3a\xa8\xa9\x2d\x9c\xae\x9a\xb6\x12\x06\x68\x06\x14\x14\xb0\x76\xb5\x13\x60\xe3\x54\x73\xdb\xf5\xc7\xeb\xb9\x8f\x7b\xb0\xba\xfb\xa8\xdd\x5a\xef\xa7\x1f\xe7\x30\xd0\x06\x2d\xe4\xfe\xd0\x57\xbd\xa8\xbb\xad\xd6\x4a\x1a\xd7\x78\xcf\xfb\x3e\xf5\xe8\xde\x40\xd4\xb4\xe3\xdd\xd4\x41\x3b\xd8\x43\x1d\xac\x6e\xe7\x74\x92\x06\xe9\x06\xba\x24\xe2\xed\x36\x71\x84\x8e\x6b\xdd\x7a\x6b\xf9\xb4\x6c\x15\xad\xbd\x37\x1c\x8f\x93\x70\x8a\xa0\x55\x59\xdc\x65\x9d\x9c\x3a\x98\x37\x45\x71\x93\xa7\xa3\x50\x17\xd9\xb4\x2c\xd6\xc5\x75\x35\x0a\xbb\xf8\x5c\x25\x43\x88\xc7\x7b\xab\x8d\x75\xb0\xb3\xda\x48\xdd\xbe\x6a\xa7\x0c\x51\x0d\xf4\x14\xa2\xed\x76\x14\x02\xc7\xf5\xd3\xce\x7e\x78\xb0\x9b\x3b\x1b\x54\xf7\x71\x62\xa9\x46\xa2\xb5\x8d\xe9\x51\x92\x7f\xde\x57\x47\x71\xb6\x8a\x7e\x14\x15\x05\xf6\x28\x16\xb4\xd6\x51\xa4\x8d\xe5\xda\xc3\xec\xdb\xf4\x8b\xee\xc7\xee\xc6\xdf\x23\x24\x3d\xbe\xc7\x59\x1c\x4e\xa5\x02\xaf\xe3\x44\x92\x96\xcb\x71\x22\x65\xf4\x37\x4e\x24\x42\x67\xe3\x44\x9a\xad\xa7\x71\x98\x70\x83\x73\x5c\xd1\xf7\x50\x0f\x6a\xfb\x1e\x66\x57\xe5\xf7\x92\x8f\xd2\x0f\x28\xff\x16\x77\x77\x04\xd8\xa6\x8c\x1a\x06\xfe\x71\x5d\x94\x78\x7a\x06\x1a\x31\x9e\x82\x39\x1a\x5f\x82\xb0\x6c\x4d\xf3\x62\x5a\xbf\xcf\xe8\x78\xdc\x27\x92\x0e\xb8\xdd\x67\x71\x3a\x97\xba\xed\x80\x9f\x48\xda\xe3\x85\x9f\xc8\xa1\xeb\x8a\x9f\x48\xdc\xf1\xc7\x4f\xa4\xdd\x77\xca\xc7\x30\x58\x95\xd9\x22\x29\xbf\x9e\xd7\xf7\x1d\xe2\x27\xf6\x7e\x0f\xaf\xf3\xe9\x4f\x95\x80\x0e\xf1\x99\x32\xd0\xe1\x71\xba\x14\x74\xc8\x4f\x96\x83\x0e\xf5\xbe\x24\x1c\xd8\x1c\x7c\xf2\xed\xba\x1d\x09\x39\x99\x78\x40\x42\xce\xe4\x75\x3e\x7d\x5b\x42\x4e\x26\xee\x91\x90\x93\x79\x74\x25\xe4\x64\xf2\x8e\x84\x9c\x4c\xbd\x2f\x21\x07\x77\x76\x36\x03\x43\xef\x9d\xca\x1b\xf2\x5d\xac\xdd\xfb\x95\xbb\x88\x3d\xaf\xd5\x8e\x73\x3f\x4c\x34\x26\xb3\xd1\x19\x8c\x63\x0a\x93\xfb\xe3\x1c\x5b\x58\xc3\xec\x5a\xb3\xde\xe3\x5c\xf7\x91\x87\x99\xc7\xf9\xde\x71\xbe\x1d\xbc\x61\x96\x38\x33\x39\xce\xb1\x8d\x36\xcc\x70\xeb\xe8\x1c\xe7\xba\x87\x7b\x84\xf5\x98\x2d\x91\xdf\xe9\x6c\xd6\xb7\xab\x64\xfa\xf9\x06\x37\xfd\xd1\x32\x5d\xa5\x09\xf8\xe8\xf5\xd3\xeb\x56\xda\xaa\x88\x97\x29\x5f\x4e\xd3\x65\x95\x96\xfd\x67\x0d\xc8\x7e\x55\x70\x2d\x96\x35\xb9\x33\x3c\x28\xdf\xdd\xb1\x7d\x12\xa7\x59\x76\x47\xd8\xb4\xcc\xaa\x6c\x9a\xe4\x4f\x60\x81\xe7\x6e\x9f\x40\x1f\x5f\xa0\xb6\xb7\xcd\x9f\xce\x03\x9c\xed\x69\xfa\x34\x1e\xab\xa4\xac\xb0\x5f\x9e\xca\x66\xbd\xce\x5a\x07\xc0\x4e\xe7\x50\x1f\xed\x1f\xe6\x30\x7c\x16\xe5\xa7\xbc\xb8\xc9\x96\xf5\xac\xe0\x4f\x31\x76\x08\xc6\x09\x68\x26\xc2\x51\x0f\x0e\x9f\x3a\xc2\x53\xf4\x37\xdd\x43\x47\x27\x9e\x51\xda\x47\x8f\x57\xba\x13\x06\x33\xa3\xcf\x78\x32\xe0\x73\xfa\x75\x87\x68\x73\x7a\xe4\x89\x9a\x30\x9e\xcf\x01\x3d\x38\x91\xc1\x8e\x16\x9c\x48\xdd\xa3\x03\x27\x72\xe8\xd1\x80\x13\x39\xf4\xcb\xff\xc9\x4c\x76\xa4\xff\x44\xfa\x5d\xd9\x1f\x3a\x2f\x5c\x27\xa5\xa3\x90\x77\x0f\x17\x3f\xf3\x61\xad\xfa\xe0\x14\x61\x38\x47\x6b\x9b\xa5\xa7\x1c\xed\x3a\x78\x03\xcc\x08\xda\xab\xdb\xe9\xe7\xb4\x6a\xc2\xe6\xa0\x74\x0c\xe3\x6c\xfa\x7f\x0f\xed\xd8\x09\xb3\xfd\x40\x26\xe7\xb2\x38\x9d\x0e\xa6\x4b\x27\x53\xcd\x72\x96\xcc\x66\x65\xba\x5e\xf7\x1d\x60\x7b\xe2\x81\xba\x11\xe4\xb8\x59\xe8\xdc\xbc\x9b\xa1\xea\x4c\x72\x98\x39\x44\xc7\xe3\x4c\x06\x38\xd2\x9d\x49\x8b\x87\x0d\x67\x69\x9e\x9c\xcb\x60\x91\xae\xe7\x67\x92\x82\x93\x79\x2e\xe9\xde\xe0\x7a\x02\x71\x3d\x24\x9e\x4d\x5d\x9d\x5b\xe1\x55\x51\x56\xe7\x92\x96\x45\x55\x4c\x8b\x73\x65\x6c\x5d\xc0\xb8\x72\x26\x71\x55\x9d\x9b\x6d\x13\x13\xe9\x14\xea\x26\xea\xce\x56\xab\xf6\x8d\xc4\x51\xe2\x5a\x25\xce\xa0\xdc\x08\xc7\x39\xb4\x7b\xe1\xa3\xce\xe1\xb2\x69\xb4\xd3\x69\xff\x51\xa6\xf9\x9b\x45\xfa\xa9\x8f\xb6\x67\xa7\x64\xd3\xc4\x7d\x5b\x26\xc7\xd0\x1f\xde\x69\x79\x97\xdc\xe6\xa3\x58\xd4\xcd\x7d\x6e\x09\xea\xb6\x1a\x45\x3e\xb0\xc7\x73\xe4\xfe\xce\x3d\x3a\x0c\xa8\x77\xca\xe6\xd0\x4e\x24\xbe\xb1\xc8\x47\xe2\x50\x1c\x8a\xc3\x77\x8c\x04\x9c\x94\x7f\xe0\x79\xa5\xff\xf5\x26\x8e\xa7\x9f\x4e\x21\xd9\x78\x27\x47\xa9\xb6\x0b\x5f\xfd\x62\x71\x30\x7c\xc7\xf1\xd0\x1d\x3b\x04\x31\xc0\xe1\xa9\x54\x4f\x8b\x12\x72\xac\x2b\xcf\x8c\x2e\x72\x60\xcb\xe4\xb1\x16\xdc\x0f\x4a\xd2\xef\x8c\x0e\x51\xd4\xad\x78\x2a\xd9\x5e\xf4\x93\x93\x76\x0a\xf6\x57\xac\xf7\x44\xc2\xe9\x01\x12\x46\xf8\xc3\x67\x33\x7d\x0e\x4e\xbd\x3e\xf3\x59\x71\x20\x06\xbc\xe8\x67\x8f\x2b\x71\x16\xc3\xc3\x9e\xf6\x79\xec\x06\x7c\xef\xb3\x18\x0e\x7b\xe3\x67\xb1\x3c\xe8\x9f\x9f\xc5\x6d\xd8\x63\x3f\x8b\xe5\x21\x1f\xfe\x2c\x66\x87\xbc\xfa\xf3\x98\x1d\xf4\xf3\xcf\x62\x37\xe0\xf9\x9f\xc9\xaf\x7f\x2e\x70\x1e\xb3\x03\xb3\x83\xf3\x98\x0d\xcc\x17\xce\x62\x78\x78\x06\x71\x16\xbb\x03\x73\x8a\xb3\x78\x0d\xcc\x32\x4e\xe0\x37\x66\xde\x71\x06\xbb\x83\x33\x91\x33\x78\x0d\xcc\x4d\xce\xe1\x36\x66\xb6\x72\x06\xdf\x81\xf9\xcb\xe9\xdc\x86\x66\x34\x07\xe2\x1a\x1d\x1d\xc4\x0f\xd3\x1d\x1e\x6e\x0e\xd3\xf4\xae\xd2\x1e\x21\x3b\x6d\xa9\x6e\x34\x93\x73\x28\x7b\x5d\x8f\x51\x11\xa3\x06\x5c\x8d\xf3\x23\x4e\x9d\xc2\xe0\xb0\x2b\x31\x8e\x7c\xc0\x75\x18\xc5\xe0\x2c\x29\x1b\xb9\x74\x37\x8a\x7a\xd8\x15\x18\xc5\xe2\x90\xe9\x1f\x45\x7c\xc8\xd4\x8f\x23\x3e\x55\xd7\x46\x2f\xe2\x8d\xa4\xef\x37\xdd\xe3\x88\x0f\x98\xea\x71\xc4\x03\xa6\x79\x14\x83\xc3\xa6\x78\x14\xf9\x01\xd3\x3b\x8a\x76\xc0\xd4\x0e\xd0\x8f\x31\xad\x23\xc8\x0f\x9a\xd2\x11\xb4\x03\xa6\x73\x0c\xf5\x18\x53\x39\x82\xcf\x80\x69\x3c\x4e\x3d\xca\x14\x1e\xb3\x4a\xbb\xf7\x31\x6c\xd3\x36\xb7\x48\x1c\x3d\x3f\x32\xfa\xa0\xd2\xce\x9c\xbe\x1d\x0f\x9c\x5d\x25\xb8\x88\xb7\xfc\xbc\x8d\x03\xdc\x49\x9f\x15\xf5\xeb\xeb\x03\xe9\x79\x9a\x94\xcb\x01\x84\xdd\x42\x5f\x97\x69\x5a\xa5\x5f\x2a\x1a\x6f\xea\xf8\x7f\xea\x8d\x22\x35\xe5\xee\xfd\x0e\x5b\xba\xbd\xbb\xe8\xb7\x25\x23\x49\x9b\x7e\x07\xeb\x3a\x4d\x67\x9b\x3a\x0e\x62\x6e\x6b\xd2\x42\x83\x3e\x38\xda\x11\xbb\xfb\x95\x77\x83\x24\xf6\xc7\x67\xee\xc7\x3a\x3b\xd2\xe2\x90\x03\x73\x26\xaf\x27\x30\xe8\xba\x33\xa7\x92\x1f\xf0\x6a\xce\x60\xd3\xeb\xdc\x9c\xc1\xa7\xc7\xc7\x39\x87\x4b\x9f\xab\x73\x06\x9f\x03\x1e\xcf\x19\x9c\xf6\x1d\x9f\x33\x98\x1c\xf0\x7f\xce\xe0\xb4\xe7\x06\x9d\xc1\x63\xcf\x1b\x3a\x87\xc7\xbe\x53\x74\x06\x97\x3e\xdf\xe8\x2c\x36\xd5\x93\x1b\x65\xcf\x53\x3a\x87\x47\x9f\xc3\x74\x06\x9f\x1e\xbf\xe9\x0c\x2e\xbb\xee\xd3\x19\x2c\xfa\xbc\xa8\xd1\x6c\x06\x9d\xa9\x93\xb9\xec\xfb\x54\x27\xb3\xe8\x73\xad\x4e\x67\x32\xe8\x61\x9d\xcc\xae\xcf\xd1\x3a\x95\x49\xaf\xbf\xd5\xba\xf6\x89\x65\xf1\x16\x82\xbb\xf4\xed\x49\xc1\x82\x67\xec\xba\xc8\x3b\x76\xfb\x8c\x10\xc3\x7b\x97\x2c\x90\x53\xae\x51\x38\xe9\xd6\xa5\xfe\x7a\x9e\x78\xc7\xc3\x51\x82\x4d\x4c\xc3\x1d\xc2\xf6\x0d\x4f\xdb\x16\xdb\xbd\xe0\x69\x2f\x05\x5c\xa7\x3d\xe0\x80\xa7\xd2\xbd\xdd\x69\x0f\xbe\xb7\x0b\xee\x09\x6d\xf7\x5c\x57\x63\x1c\x6a\xb1\xdd\x43\x97\xf1\xed\xdc\x66\xb8\x38\x76\x46\x33\xa2\xc7\x71\x61\x1c\x6e\x33\x00\x8c\xc3\x6e\x54\xf3\x38\xf6\x6d\xbe\x7f\x8e\xb5\xf7\x98\x62\x9c\x67\x9c\x76\xb6\xf1\xd8\x8d\x32\x93\xee\xa6\x58\x32\x57\xad\x94\xb8\x85\x5d\x73\x35\x38\xe5\xd8\xa0\xe9\x41\xb4\x2a\x69\x76\x38\xb6\xe4\x71\x6f\x47\x66\xdd\x3c\xf1\x56\xbe\xfa\x66\xae\xa4\x2c\x8b\xfb\xc3\x51\xc7\xdb\x24\x6f\x77\x6b\x77\x10\x3b\x77\x27\xb2\xcf\xdd\x78\xe6\xcb\xa2\xa2\xb3\xf4\x3a\x5b\xa6\xb3\x13\x73\x69\x51\x1e\xcf\xee\x99\xe2\xad\x8f\x8c\xbc\x7a\x38\x2c\xe5\xd1\x3b\xd3\xf6\x10\x6f\x4b\x1c\xa7\xba\xa8\x59\x6b\x3a\xbf\x5b\x77\x94\xfd\xe3\x47\x6f\x3b\x68\x07\x8f\xdd\x76\xb0\xba\xef\xde\x3b\x49\x83\x74\x03\x47\x6d\x23\xde\xee\xb4\x35\x42\xc7\x9d\xb4\x6f\x36\xfc\x1c\x9b\x1a\x37\x78\x1d\xd3\xba\x83\x74\xe2\x09\xcf\xee\x6a\xc6\xc9\xc7\x02\x4f\x24\x8f\x33\x81\x35\xd9\xb9\x7b\xb7\x9f\xc1\xce\xd1\x98\x93\x0f\xa4\x75\xcb\x86\x89\xb5\x13\xb4\x2d\x59\x3c\xd4\x50\xe4\x30\x76\xb6\x21\x49\x97\xee\x90\x93\x73\xf0\x8a\x82\xc9\xb6\x75\x46\x9c\x3e\xea\xe0\x1d\x3c\x79\x34\x78\x4d\xd4\x49\x9e\xd2\xb9\xd7\xee\xf5\x18\xfe\xa7\xdf\x5d\x35\x92\xf6\x80\x63\x30\x7c\x51\xd5\x19\xad\x72\xc6\x1d\x82\x07\x9b\xe5\xbc\xfb\xb3\x4e\x24\x3e\xd4\x30\x33\xb0\xc1\xed\x45\x96\x6f\x9d\xfb\xf1\xf6\x8e\x8e\x75\x52\x77\x0e\x8f\xbd\xee\x27\xe9\x45\x6d\x1d\x41\xc3\x1b\xa2\x2e\xa7\xb7\x25\x0c\x9b\xef\xe0\x47\xcf\xcd\x58\xfd\x57\x83\xf7\x2d\xc6\x1f\xde\x47\x36\xea\x7a\x97\xfa\xfc\x47\x6f\x64\xb1\xcd\x5a\xef\xe6\xec\x43\x7d\xdf\xee\xa6\xf1\xf0\x5e\xc8\x7b\xbc\xbb\xa9\x7d\x33\x64\x84\xd0\x65\x51\x2e\x92\xfc\xd5\x7e\xe5\xcb\x9b\xab\x9f\x6b\xf4\x62\x99\xd2\x9b\x32\xf9\x4a\x05\xe7\xaf\x5e\xbd\xde\x86\x76\xbe\xc4\xc7\x3c\x7d\xbd\x4a\x66\x33\x70\xc8\x39\xd1\xab\x2f\x2f\x07\xf6\x5e\x0e\xec\xbd\x1c\xd8\x6b\x88\x5e\x0e\xec\x9d\xc7\xe1\xdf\xf5\xc0\x5e\xbc\x78\x05\x0d\x65\x95\x5c\xd1\x65\x72\x47\x6e\xb7\x6f\xbe\x5e\xe2\xb2\x8f\x88\xcb\xfe\x7d\x4f\x3c\xbe\xc4\x7b\x3f\x8c\x72\x52\xbc\xf7\x97\xb3\xa3\x2f\x67\x47\xcf\xa0\x7e\x39\x3b\xfa\x72\x76\x74\x2c\xf1\xcb\xd9\xd1\xd3\x88\x5f\xce\x8e\x8e\xa5\xfd\xc1\xce\x8e\xbe\x5c\xa4\xf2\x72\x91\x4a\xcf\xc5\x0d\xdf\xe7\x94\xf0\x0f\x70\xbc\xf7\xc9\xf7\xc6\xfc\x9e\x8e\x06\xa7\x8b\x63\x07\x39\xf3\x97\xab\x6e\x7e\x27\x57\xdd\xe4\x2f\x47\xac\x9f\xf7\x88\xf5\xcb\x25\x41\x3f\xdc\x25\x41\xff\xa7\x1d\x96\x7f\xb9\xfa\xe8\x44\xf2\xdf\xd3\xd5\x47\x2f\xe1\x10\x5e\xc2\x21\xbc\x84\x43\x78\x09\x87\xf0\x12\x0e\xe1\x25\x1c\xc2\x4b\x38\x84\x27\xf0\x7a\x09\x87\xd0\xe1\xf6\x12\x0e\xe1\x25\x1c\xc2\x4b\x38\x84\x97\x70\x08\x67\xd2\xbf\x84\x43\x38\x9d\xf6\x25\x1c\xc2\x0f\x1e\x0e\x61\xf9\x7f\xe0\x55\xc4\xdf\x2b\x08\xc4\xb9\x57\x0e\x0f\xf1\x7c\xb9\x97\xf8\xdf\xf1\x5e\xe2\xe3\xa1\x42\x9e\xe5\x3e\xe3\x63\xd2\x35\x7c\xef\x71\xfb\xc8\x5e\x9e\xc5\xa8\xb7\x7f\x7c\x83\x7b\x6d\x3f\x6d\x0f\x5b\xfe\x3b\x86\x15\x79\xb9\xf1\xf9\xe5\xc6\xe7\xc3\x8d\x37\x2e\xe8\xcc\x4b\x38\x99\x97\x70\x32\x2f\xe1\x64\x9e\xc2\xe3\x25\x9c\xcc\x4b\x38\x99\x97\x70\x32\xe7\x32\xf9\x37\x09\x27\xb3\x4d\x8e\xe7\xbd\x01\x90\x55\xe9\xe2\xd3\xa8\x80\x33\x7d\x17\x8a\xbe\x84\xa8\xe9\xa1\x3f\xd8\xb8\x27\x46\xb9\x89\x77\x78\x1e\xf5\x29\x3b\x68\x07\xdd\xc9\x0e\x56\xd7\x93\xec\x24\x0d\xd2\x0d\xf8\x8f\x11\x6f\xd7\x9d\x8b\xd0\x71\xae\xe0\xef\x34\x36\x0f\x4c\x5f\x37\x61\x64\xa0\x17\x38\x45\xd0\xaa\x2c\xee\xb2\x4e\x65\x3b\x98\x37\x45\x71\x93\xa7\xa3\x50\x17\xd9\xb4\x2c\xd6\xc5\x75\x35\x0a\xbb\xf8\x5c\x25\x43\x88\xc7\x05\xa6\x8d\x75\x50\x5e\xda\x48\x5d\x71\x69\xa7\x0c\x51\x0d\x08\x0b\xa2\xed\xca\x0a\x02\xc7\x89\xca\x77\x8d\x97\x34\xa4\xc3\xe7\x44\x5b\xda\xc8\xce\xfd\xfa\x68\x98\xa2\x7a\xba\x3d\x0e\xad\xbd\xf6\x74\x94\xe4\x9f\xf7\xfb\xe1\x8f\x76\x71\xb6\xb3\xb7\xa3\xa8\xa8\xd8\x47\xb1\xa0\x4b\x8f\x22\x6d\x16\x7a\x46\x86\x7c\xfa\x77\x8e\x3d\x95\xdc\xaf\x4f\x8c\x3c\xd5\xb7\x0e\x79\x16\x87\x53\xa9\xfe\x79\x7f\x6a\x90\xac\xf6\xf2\xe3\x89\x94\x71\xed\xf1\x44\x22\x5c\x78\x3c\x91\x66\xbb\xea\x78\x22\xe1\xbf\x3a\x6a\x58\x7f\x9c\xaf\xcd\x6d\xda\x47\x8d\xc0\x1e\xea\x41\x4b\xb0\x87\xd9\x35\x07\x7b\xc9\x47\xe9\x07\x0c\xc3\x16\x77\xd7\x3a\x6c\x53\xc6\x99\x88\xaa\x28\xf2\x2a\x5b\xd5\xfe\xee\x6c\xd6\x09\x77\xf4\x12\x10\xed\x77\x17\x10\xed\x25\xd0\xd9\x0f\x13\xe8\xac\x7e\x79\x51\xf7\xec\xa7\xa1\x70\x84\x27\x06\x45\x6b\xbf\x89\x3b\x91\x74\xe0\x75\xdc\x59\x9c\xce\xa5\x6e\xbf\x98\x3b\x91\xb4\xe7\xed\xdc\x89\x1c\xba\xaf\xe8\x4e\x24\xee\xbc\xa7\x3b\x91\x76\xff\x65\xdd\xbf\x36\x1c\xde\xa9\x82\xd3\x21\x7e\xa2\xe8\xf4\xf0\x3a\x9f\xfe\x54\xf1\xe9\x10\x9f\x29\x40\x1d\x1e\xa7\x8b\x50\x87\xfc\x64\x21\xea\x50\x9f\x27\x46\xbf\x55\x60\xc4\x7a\x41\xac\x31\x0b\x9b\x45\xb1\x93\x03\x26\xb6\xa5\xf7\x64\xe2\x01\xe9\x3d\x93\xd7\xf9\xf4\x6d\xe9\x3d\x99\xb8\x47\x7a\x4f\xe6\xd1\x95\xde\x93\xc9\x3b\xd2\x7b\x32\xf5\xbe\xf4\x3e\x47\xe8\xcc\xbe\x65\xd7\xdf\x22\xa6\x66\x72\xbf\x1e\x11\x51\xb3\x85\x75\x30\x9e\xe6\x81\x41\x77\x04\xf7\xc3\x44\x63\x32\x1b\x9d\xc1\x38\xa6\xff\xbc\x1f\x13\x62\xb4\x85\x35\xcc\xae\xf5\xea\xfc\x38\xd7\x7d\xe4\x61\xe6\x71\x1d\xf6\x38\xdf\x0e\xde\x30\x4b\x5c\xae\x3b\xce\xb1\x8d\x36\xcc\x70\x3b\xc3\x3b\xce\x75\x0f\xf7\x08\xeb\xc1\x59\xc9\x4b\xe8\xd8\x71\xac\xfa\xd7\x44\x9f\x1e\x88\xb6\x1b\x70\x75\x76\x59\x2c\xf3\xaf\x71\xe8\x02\x53\xbc\x63\x74\x7b\x49\x46\xe0\xfc\xa0\xb1\x69\x8f\x36\xfc\xb9\xa1\x6e\xf7\xa3\xd4\xce\xb2\xf5\x2a\x4f\xbe\x5e\x66\x4b\x5c\x70\xba\xca\x8b\xe9\xe7\xd7\xd3\x02\x8f\x97\x5e\x5e\x5c\xf4\xc5\x4d\x6d\x45\x5d\x5d\x67\x0f\xe9\x65\x1d\x53\xf0\xf5\x7d\x36\xab\xe6\x97\x82\xc9\x74\xf1\x7a\x1e\x43\xb7\xc6\x1f\x77\x69\x89\x6b\xb7\x34\xc9\xb3\x9b\xe5\x25\xee\x75\xab\x8a\xd5\x63\xcf\x8e\x33\x30\x93\x74\x9d\xae\x92\x32\xa9\xea\x65\x86\x6f\x57\xc5\x17\xc8\x28\x5b\xde\x5c\x5e\x15\xe5\x2c\x2d\xe9\x55\xf1\xa5\xc9\x4d\xae\xbe\x6c\x32\x93\xab\x2f\x23\x79\x0e\xec\x79\xeb\xc5\xae\x1b\xab\xd5\x2e\x4d\xbb\xc5\x06\xab\x0b\xc3\xf9\x1f\x36\x85\x81\xe7\xba\xb8\x65\x32\xcb\x6e\xd7\x08\x1a\x5d\xbe\x3a\xc7\xc8\xe1\x52\xac\xbe\x90\x75\x91\x67\x33\xd2\x0e\xef\xfb\xba\x58\x25\x53\xe8\x19\x66\x1e\x59\xba\xb8\x4a\x4b\xba\x2a\xee\x37\x6b\x21\xb4\x2a\xb3\x9b\x9b\xb8\x0f\xf1\x50\x1a\xad\xc5\x75\x08\xe7\xf2\xba\x98\xde\xae\xeb\xa2\x40\xc7\xb5\x8a\xf3\x53\x92\x24\xaf\x37\xbd\x52\x55\xc5\xe2\x40\x62\x19\x5b\xa5\x37\x2d\x4f\xaf\x77\x93\x4e\xeb\xc7\x6f\x9b\xa8\xc8\xc9\xd5\xba\xc8\x6f\xab\xf4\x35\x14\x13\x64\x03\x79\xc3\x43\xec\xa2\x69\x92\x4f\x7f\x86\x8e\x20\x94\xe8\xd5\x97\x57\x4d\x77\xed\xc1\x87\xe3\x2a\x3f\x43\x38\xd9\xa7\x86\xe4\xdc\x2c\x4f\x7d\xd7\x28\x58\x03\xdb\xeb\x7b\x62\xec\x34\x0b\x49\x63\x62\xed\xfc\x0e\xce\x25\x9e\x77\x76\xe0\xb9\x8e\x6e\xf4\xe5\x3e\x7e\xef\xfc\x6f\xb5\xc7\xa7\xaf\xd4\xc7\x2e\xb8\x19\xf7\x02\xed\x5f\xbc\xbe\xfd\x8c\x8b\xa3\xdf\x28\x4d\xf2\xb4\xc4\x01\x33\x59\xde\xe4\x29\x5d\xdf\xdd\x5c\xde\x96\xf9\xcf\xff\x01\xd3\xc0\xcb\x6c\x91\xdc\xa4\xbf\xac\xef\x6e\xfe\xf4\x65\x91\xbf\x9e\xce\x93\x72\x9d\x56\x6f\xfe\xeb\x7f\xfc\x95\xfa\xc9\x9f\xd7\x77\x37\xe4\x2e\x4b\xef\xff\xb3\xf8\xf2\xe6\x82\x13\x4e\xa4\x26\x52\x5f\x90\xeb\x2c\xcf\xdf\x5c\x2c\x8b\x65\x7a\x41\xbe\x2c\xf2\xe5\xfa\xcd\xc5\xbc\xaa\x56\x97\xbf\xfc\x72\x7f\x7f\xcf\xee\x15\x2b\xca\x9b\x5f\x24\xe7\x1c\x18\x5f\xbc\xfd\x33\x6e\x8d\x03\x22\x5a\xde\xe6\xe9\x9b\x8b\xf4\x2e\x5d\x16\xb3\xd9\x05\x99\xe6\xd9\x6a\x17\x36\x7b\x73\xf1\xab\x08\xcc\x28\x41\xa4\x98\x0a\x66\x34\x64\xcc\x0c\x57\x54\x30\x6b\x03\x11\xcc\x29\x41\x15\xe3\x5c\x7e\x10\x0a\x7e\x10\xcd\x42\x98\x52\xe6\x1c\x15\x4c\x29\x2a\x99\x0d\x22\x3e\x2a\xa6\xad\x24\xfc\x83\x64\x4e\x79\x22\x1c\x0b\xc1\xbf\x13\x2c\x58\x4b\x44\x60\x4a\x11\xc9\x82\xf4\x44\x02\x0f\x6d\xe1\x61\x2e\x0c\xe3\x56\x3d\xfc\x2a\x14\x11\x7e\x4e\xe5\x1d\x95\x73\x79\x27\x1f\x16\x9c\x6a\xfc\xa9\xe7\xf2\x4e\x3f\x34\xcd\xf0\x07\xa9\x38\xe7\x17\xbf\xbc\xfd\x33\xd4\xf6\xed\x7f\xbc\xea\xc6\xcf\xc7\x06\xae\xe3\xc4\xef\xf7\xc4\xab\xd7\x63\x90\x7a\x62\xe5\x3f\x29\x98\xd7\x79\x31\x8f\xce\x0d\x5f\x34\x26\xa8\x0c\x88\x29\xe8\x4d\xb4\xc5\x3f\x84\x8c\x2a\x22\xd4\x5c\x68\x26\x5c\x4e\x15\x33\x9e\x28\x66\xc2\x07\x61\x88\xf0\xb9\xa5\xf1\x9f\x60\x5a\x10\xf8\xfa\x20\x1c\x13\x8e\x08\xf1\x5e\xdd\xc9\xb3\x44\xa7\xdb\x3a\x7d\x72\xb3\x83\xf1\x38\xb8\xa9\xad\x39\x13\x12\x17\x83\x12\x21\xbe\xd6\x88\x74\x9e\xcd\xd2\x4f\xdf\x5a\x3e\x46\x3b\x93\x29\xd8\x8b\x9c\xae\xf2\x24\x5b\xd6\xb9\x9c\xf3\x1e\xf9\xdb\xc1\x7a\xee\x65\xb0\x5f\xd1\xfd\x32\x3c\xc7\xad\x06\x4f\x0d\x07\x7f\x82\xd3\x73\x56\x50\xdc\x31\xa7\x2a\x7b\xdc\x9e\x06\xfd\xc4\x18\x83\xc7\xa3\xf0\xfd\x96\xf1\x5b\x9e\x78\xc2\xf4\xc9\x87\xc2\x07\xf3\x3f\x7c\x28\xea\x5f\x7e\x14\x61\xb0\x9c\xfd\xbb\x1b\x4f\xdc\xe1\xf4\x9d\xb7\x2d\x7c\xdb\x68\xfb\xfa\x7f\xde\x26\x65\x4a\x71\x80\xfe\x11\xac\x83\x21\x60\x1c\xa6\x82\x09\xc8\x94\xb0\x40\x24\x91\x77\x42\x4f\x39\x11\x4c\x50\xf8\x4d\x25\x91\xef\xcd\x94\x22\x0e\x95\x94\x05\x2a\xa9\xfc\x68\xa6\x1c\x40\xf0\x0b\x70\x1e\x16\x82\x33\x13\x88\xd0\x1f\xc0\x80\x18\x7c\x56\x68\x57\x24\x11\x8e\x78\x7c\x44\xb0\x43\x10\x62\x23\xd4\x91\x26\x39\x72\x90\xa4\x61\x10\xa1\x11\x5f\x6d\x19\x08\x77\x8e\x69\xea\xef\xa1\xc3\x03\xf7\x2e\xe2\x19\xc3\xf7\x53\x2f\x91\xd8\xa5\x3f\x61\xf0\x3e\x27\x42\xf6\x33\x04\x50\x3e\x31\x7c\x71\x9d\xd3\x53\x46\xfd\x7e\xb7\xee\x37\x0c\xc4\xf4\x5d\xe2\xe2\x9c\x11\x71\xe6\x39\x22\x53\x3c\x4b\xa0\x82\xde\xb2\xff\xab\x0f\x40\x3d\xe7\xb9\x96\xde\x0a\x1d\xda\x1e\x7f\xca\x86\x59\xb0\x23\xa8\x02\xd3\xac\x9c\xe6\x3f\x90\x19\x11\x92\xc8\x77\x96\x69\x0f\xe6\x83\xd4\x0f\x42\xae\x35\x3c\x09\xbe\xf9\x4f\x6b\x00\x15\xfc\x6f\xc2\x31\x23\x11\x8d\xc8\x87\x05\x95\x44\x98\x9c\x1a\x6a\x70\x22\x42\xe3\x6c\x84\x93\x38\x73\x71\xcc\x04\xea\x70\xe2\x12\x88\xcf\x69\x20\xe1\x2c\x13\xd0\xd7\xb8\x7d\x16\xa0\x17\xef\xf1\xf8\xb5\xd3\x4f\x3b\x2b\x73\x3e\xe9\xb3\xbf\xe4\x7a\x96\x17\x37\x1b\x71\xde\xcc\x81\x7e\xf7\x82\x1c\x88\xb0\x4c\xb8\x0f\x9a\x79\x45\x84\xcc\x41\x0e\x65\x9c\x1a\x07\x22\x02\x91\x82\x38\x04\xd6\x12\x5a\xe3\x9f\x2f\x8c\x83\x33\xc8\x1d\x8c\xc7\xef\xf3\xda\xef\xe0\x24\x7a\x9e\xde\x95\xc5\x92\x82\xdb\xb3\x59\xdf\x19\x7d\xad\x52\xff\x81\x74\x36\xcd\xc1\x7f\x38\xff\x06\xf3\xef\xfb\xe6\xf7\x59\xae\xc3\x1c\x58\x35\xd8\x6d\xd1\xde\x3e\xdf\x6d\xf4\xf6\x36\x51\xb6\x89\x3a\xf1\xf6\x89\x7b\x5a\xbe\x6d\xf3\xca\xd3\xeb\x1f\x63\x2d\x4b\x18\xe6\xb8\x01\x95\xf3\xde\xe4\x54\x33\xe3\xe1\x2b\x90\xcd\xd3\x56\x35\xa9\x25\xf1\xdf\x06\x72\xa6\x92\x76\x9a\x68\xa0\xc7\x36\x28\x8f\xe3\x2e\x2d\x6c\x75\xc0\x8f\xb3\x9a\xe8\x99\x0c\x86\x38\xe8\x86\x1c\x1a\x9d\x60\xa3\x6f\x9e\xc8\x66\x25\x91\xec\xad\x2d\x3e\xa5\xf9\x87\x16\x14\xf7\x71\x06\xc7\xa9\xfd\xbb\xe2\x8e\x84\xce\x38\x3a\x44\x1d\xb8\xcf\x76\x70\xa8\x1a\xbc\x1c\xf8\x7b\x5e\x30\x3c\x8e\x49\x4b\x36\x6f\x57\x3f\x84\x60\x3a\x14\x33\xfb\x41\x48\x22\xa2\xcd\xb6\x28\x8f\x96\x08\x0f\x4e\xa4\x09\x79\x14\x48\x62\x3f\xd4\xb8\x4f\x11\xc8\xd8\x2a\x03\xd2\x58\x23\x3c\x1e\xbd\xdd\x37\x67\xd7\x49\x96\xe3\x7d\xa2\xb3\x0a\xda\x3d\x2f\x6e\x67\x74\x5a\x16\xeb\xf5\xd3\x1a\x5e\x11\xc9\x4f\x68\xec\xda\x8d\x17\x8a\x19\x6f\x73\x45\xd5\x07\x61\x99\x16\x1a\xbd\x20\x45\xf0\x1f\xbe\x36\x08\x00\xcd\xa9\x82\x7f\x44\x7d\x70\x80\x4f\x84\x07\x12\x2a\x99\x33\xf8\x85\x1a\xaf\x51\xf9\x35\x41\x00\x7c\x3d\xfc\x2a\x14\x0b\xdc\x30\x6f\xec\x54\x32\xc7\x2d\xd3\x21\x8e\x1c\x80\x60\xb4\x26\x9a\x79\x61\x89\x61\x56\xe7\x4c\x2a\xcd\xb8\x05\x4c\x6d\x99\x33\x9a\x28\xe6\x3d\xb2\x0b\x44\x31\x43\x0c\xe3\xca\x52\xa6\x35\x12\x07\x49\x25\xe3\x5e\x11\xcd\x94\x13\xd4\x30\xef\x6c\x7c\xbe\xa3\x72\x6a\x18\xc7\x37\x74\x9a\x79\xeb\xa9\x01\x8e\x52\x51\xcb\x84\x91\x4c\x6a\x20\x95\xf8\x5a\x4e\x3a\x30\x24\x56\x7a\xaa\x98\xb4\x8e\x6a\x16\x82\xa1\x82\x39\x1f\x68\x7c\x51\xe7\x8c\x63\xc6\x6a\x18\xf4\x9c\x24\x92\x09\x0b\xf5\xb4\x32\x50\xe6\xa4\xa3\x92\x59\x6e\x28\x53\xda\x50\xc5\xb4\x96\x4c\x59\x49\x99\x57\x16\xaa\x4b\x99\x91\x0e\x68\x82\xa6\x4c\x4a\x28\xb7\x97\x8a\x0a\xc6\x7d\x60\x41\x40\x46\x81\x0b\x22\x19\x17\xd0\x98\x02\x26\x48\x2c\x78\x47\x99\xe0\x82\xa9\x60\x28\xe3\x01\x86\x53\x2e\xa0\x32\x82\x49\x21\x99\x96\x1e\x5f\x0e\x02\x14\xcc\x1d\xd4\x5a\x73\x05\x4f\x77\x72\x4a\x35\x13\xc2\x11\x4e\x0d\xb3\x4e\x52\x16\x2c\xb5\x4c\x6b\x4f\x25\xf3\x4e\x53\x66\x8d\x84\xe2\x0b\x26\x94\x83\x12\x1b\x47\x04\xf3\x5e\x52\xc3\x84\xf0\x14\x3a\x05\xaa\x0f\x5d\x21\xa0\x4d\x02\xa4\xab\x20\xa8\x86\xf6\x49\x34\xf3\x60\x7e\x7d\x20\x9c\x70\xa1\x98\x85\x76\x72\xee\x5d\x60\x52\x82\xe3\x2c\x2d\xe8\xa3\xe5\x8a\x69\x25\xc8\xa6\xfb\x4d\x5b\xf9\xec\x5f\x9d\xf5\xf2\xa2\xad\xef\xcb\x62\xf9\x90\x96\x45\x5b\x27\x0f\x79\xa9\x5d\x7d\xc1\xc1\xff\x50\x64\x3d\x50\x2f\x48\x8c\x63\xe1\x0f\x31\xae\x09\xc5\xbc\x24\xea\x9d\x50\x4c\x43\xc7\x80\x3e\x32\x45\x04\x11\x82\x88\x29\x15\x4c\x11\x4e\x25\xd3\xcc\x6b\xe8\x51\x49\xe4\x7b\xbd\x59\xab\x25\x71\x75\xf6\x4e\xd8\xb8\x9e\x1b\x97\x77\x89\x6c\x2d\xf9\xd6\x4b\xbc\x77\x34\x30\xae\x28\x0b\x66\xb3\xb2\x5b\x2f\xf4\x52\x39\x07\x11\xf2\x0f\x30\x37\x52\xef\xed\x9d\x9c\xab\x3b\x0a\x33\x76\x45\xec\xdc\xdc\x51\x09\xb0\x87\x5f\x2d\x09\x77\x72\x6e\x3f\x86\xf7\xf6\x61\x61\xa8\x9d\x32\x63\x40\x44\x09\xd3\x06\x8a\xbb\xa6\xf8\x40\x05\x7c\xe0\x99\xc2\x33\xfe\x05\xc8\xc3\xaf\x9a\x48\xf1\xd1\xcc\xe5\x9d\x60\x9c\xbb\xb9\xe0\xf8\xc3\xb0\x10\xe4\x5c\x32\xce\xd5\x47\xe1\xde\x0b\x7f\xa7\xdf\xeb\x87\x85\x10\x2c\x04\xaa\xee\xa8\x7a\x2f\xa1\x38\x73\xea\x18\x17\x77\x30\x6a\x49\x22\x74\xae\x58\x08\xe4\xac\x97\xdf\x3b\x02\xd2\x37\xc4\xef\x60\x3c\x9e\xb0\x2c\xfb\x1d\xe2\xe4\x3f\x43\xbc\xdd\xe7\x0b\xb9\xd4\xcb\xe9\x1b\x8d\xa0\x1f\x43\xe1\x24\x11\x9e\x39\xf3\x0e\x26\x1b\xd2\x85\xf8\xab\xf9\xee\xc2\xe4\x7b\x29\xde\x49\xf0\x25\x58\x70\xdc\x6e\xfe\x4a\x7c\xeb\x21\xc5\x3b\xc7\xb8\x0c\x1a\x24\x9b\xa8\x4d\xaa\x22\x42\xbe\x53\xa4\x49\x6b\xfe\x02\x98\xa8\x8f\x86\x49\xf3\xce\x33\xe9\x24\xf7\x04\x7e\xc4\xaf\x0e\x44\xc8\x77\xf1\x6f\x5d\x9c\x26\xb1\x29\x56\x7c\xf8\xfb\xaf\x92\x33\x67\x94\x24\x81\xf9\xe0\x85\xfe\x20\x3c\x33\xd6\x10\xc1\x99\x96\xc2\xbd\x13\x9e\x69\x2f\xf1\x5d\x0c\x77\x06\x8c\x38\x53\x4e\x3a\x12\x98\x53\x21\x28\xf8\x2d\x95\x87\xdf\x5a\x58\xaf\x3f\x48\xce\x94\x70\x82\x78\x66\x8c\x0e\xee\x9d\xe4\x4c\x07\x0b\xbf\x83\xb7\xce\x12\xc9\x99\xd5\xd2\x00\xbe\x32\x46\x90\x9d\xec\xff\xfe\xab\x08\xcc\x3a\x1d\x88\x03\x33\xc2\xe5\x07\xe1\xc0\x9a\x5a\xe2\x99\x76\x5a\xab\x77\xc2\x81\x4d\x05\x86\xc2\x49\x65\x88\x70\x4c\x59\x05\x4d\xe5\xbd\xb1\xb8\x2f\x46\x28\x65\x89\x63\x56\x38\x2e\xa0\x3e\x5e\x2b\x4f\xc0\x8c\xeb\x60\xdf\x89\xc0\x84\x0e\x86\x58\x66\x84\x8c\xae\x8a\x74\x96\x58\xe6\x83\x06\x03\xd9\xcd\xfe\xef\xbf\x0a\xc7\xbc\x36\x82\x18\x26\x8c\x95\x1a\x3c\x1e\xe5\x15\xe0\x5b\xab\xdd\x3b\x61\x99\x10\x5a\x13\xcb\xac\xb2\xd0\xeb\x86\x79\xe9\x1c\xb1\xc0\x36\x78\x7c\x1b\x25\x0d\xf0\x97\x5a\x6a\x07\xe4\x8e\xa3\xff\x21\x8d\xc0\xda\x08\x1e\x27\x46\x4e\x6a\xac\x8d\x8e\x3e\x89\x37\x00\xdf\xc9\xfd\xef\x30\xbd\xd5\x00\x00\x2b\x2a\x83\xff\x00\x6e\xab\x57\x92\x18\xe6\xac\x50\xf6\x9d\x00\x93\xcb\x81\xc0\x4a\xdc\x26\xa4\x58\x00\xc6\x86\x19\xe1\xbc\x43\xdf\xcd\x79\x4d\x0c\xb4\x3f\x77\x40\x2f\xb8\x00\x5f\x49\x6a\xeb\x15\xd0\x1b\xab\x0d\x51\x4c\x19\x67\xf0\x6d\x1a\x17\x4a\x81\x2f\xc5\x55\x90\x64\x27\x7f\x2c\x10\xb7\x3c\x80\xff\xcc\x05\x54\x30\xba\x76\xe0\xd3\xe8\x8f\x9e\x49\xf3\x5e\x08\x26\xcd\x47\x84\x7f\x14\x8a\x09\x65\x3f\x08\x01\xb9\xa0\xad\x57\x96\x2b\x2c\x85\x0f\x98\x9b\x54\x06\x7c\xc8\x0e\xd3\xbf\xef\x3b\x02\x63\x86\xe9\xcd\x80\xd2\x33\x40\x6f\xd3\xc6\xec\x48\x3a\x74\x43\xe0\xa1\x65\x31\xc0\x8f\x1b\x5a\x0f\x65\x91\x3f\xe7\xad\x6b\x47\x6e\x4f\x1b\x71\xa7\xd5\xe1\xf5\xa8\x9d\xaa\xf4\xb5\xe4\x4e\x5d\xeb\xf3\x1f\x9a\xab\x81\xd3\xcb\x30\xde\x67\x6b\x98\x86\xce\x7e\x94\x21\xff\x89\x6f\x2f\x38\x11\x1e\x3c\x6d\x2d\x09\xa7\x1e\xf7\x59\x51\x4f\x3d\x01\x47\xca\x1b\x66\x61\xde\x60\x60\x52\x64\x03\xcc\x28\x60\xa4\x40\x23\xa2\xc4\x5f\x1c\x0b\x5c\x92\xf8\xcd\xd1\x61\x02\x96\xfc\x61\x61\x19\x6e\x1f\x14\x1f\x1c\x43\x95\x0f\xfd\xa8\x7a\x1a\xb3\x25\xb8\xb3\xcb\x13\xf8\x07\xce\x9e\x37\x94\x59\xd4\x6d\x98\x55\x58\x70\xd2\xcf\x7a\x67\xd2\xee\xc9\x3e\x09\x69\x27\x3f\xfe\xb4\x79\x87\xbd\x7d\xbf\x8d\xb1\x6f\x41\x70\xaf\xb3\x1b\x5c\xb9\xdc\x4a\x73\x67\x65\x73\x13\x79\xf7\xed\xc0\xd1\x82\xfd\xf0\xbc\x20\x6c\x00\xfc\xad\x04\x0d\x05\xc8\x13\x21\xe6\xf2\x2e\x30\x33\xe5\x84\x39\x6f\x29\x73\x30\x75\x66\xd0\xf6\xd0\xef\x66\x4e\x85\x9e\x52\x48\x42\xa1\x30\x88\x40\x6b\x84\x3b\x2a\xdc\x3b\x05\x13\x5b\x01\x93\x5c\xf8\x96\x60\x36\x88\x7c\x2f\xd4\x9d\x7c\x6f\xee\x84\x9d\x0b\x75\x47\xc3\xc3\xaf\x8e\x08\x3f\x0f\xe0\x76\xbb\xb8\xd9\x53\x0d\xfc\xd2\x1f\xc1\x45\x97\xef\xdd\xc3\x42\xc0\x0c\xd0\x7c\x14\x73\x7b\x67\xe7\x90\xe9\x47\xc5\xb4\x0c\x1f\x84\xc7\x37\x1a\x14\x86\x7d\x98\xb2\x9a\xf7\xe7\xbd\xce\x68\x3a\xa1\x4f\x46\x9a\xa4\xc7\x03\x27\x7f\x0f\x0d\xb5\xe9\x97\xac\x3a\x26\x58\x4d\x42\x5b\xb2\x0e\x8f\x78\x1b\x8e\xfb\xa5\xdc\x66\x36\xd6\x9f\x7f\xc6\xbb\xd6\xce\xbf\x2a\xe5\xc9\xc1\x75\xbb\x0c\xbe\x51\x7a\x9d\xfd\x50\xaf\x9e\x35\xd1\xb9\x26\xfa\x4e\xc8\xf7\xf6\xa3\x9e\xfb\x87\x05\x38\xe2\x1f\x1d\xbe\x4c\x7e\x6f\x61\x32\x2c\x4d\x9c\x0d\x3b\xd3\x9e\x0e\x4b\x83\xeb\x52\x71\x42\x2c\xa7\x11\x0d\x66\xc4\x00\xc5\x19\xae\xa6\xf2\xbd\x87\xd9\xa5\xaf\x95\xeb\xd0\xaf\x5f\x3d\xf1\x73\xfd\xd1\xbe\xf7\xe7\x6d\x9b\xed\x34\x79\x8f\x6c\x76\xd3\xcf\xd8\x89\xb4\x1f\x82\xf6\xd4\xbd\x48\x87\x6f\x46\xb9\xba\x9d\x7e\x4e\xab\x66\x57\x0e\xa2\x9d\xb3\x63\xe9\x70\x06\x3b\x9e\x15\xf8\x36\x31\x96\xca\xff\x7a\x13\x89\x3e\x3d\xcf\x4c\xfa\x9c\x8b\x96\x9e\x27\xb6\x6f\x0f\x97\xb3\x02\x84\x0e\x9d\x53\x07\xcd\x46\x00\x2d\x6e\x2b\x3c\xa9\xf8\x5b\x9a\x4c\xc9\x89\x9d\x53\x9f\x53\x49\x5b\x2b\x56\x82\x85\xc0\x02\xfe\x21\xf2\x03\xcc\x63\x77\x17\xae\xec\xce\xc2\xd5\x47\xbf\xb3\x5a\x85\xce\x98\x7c\xaf\x3f\xfa\xb9\xb0\x77\x82\x9f\xa5\x8e\x7b\xed\xd4\xa7\x93\xfb\x48\x8f\x7d\xb1\x8c\xbe\xd1\xe6\xcc\xfd\x0f\x31\x9e\x4a\xc1\x38\xcc\xce\x02\xe3\x1e\x66\xf8\x0e\x26\x6a\x2a\x9e\x43\x91\x22\x2e\x53\x30\x0e\xb3\x48\x70\x78\xb9\x05\x27\xd7\x32\xc5\x2d\x4c\x1b\x8d\xa7\x8e\x19\xe5\x61\x86\xee\xf5\x5c\x32\x21\xc4\x94\x69\x5c\x59\xd7\x42\x12\xc1\xb8\xc3\x73\x2f\xf8\x86\xc0\x73\x4b\x81\x48\xb2\x10\xe2\x91\x18\x22\x61\x02\x4f\x25\xe3\x52\x02\x3f\x59\x3f\x0a\xa6\x9d\xc4\xf3\x35\x56\x6a\x66\x43\x4c\xc4\x85\x72\x4c\xe5\xe0\x6b\x29\x8f\x4b\xd7\xdc\xe1\x04\x57\x12\xc9\x94\x86\xc9\xb0\x61\x06\x19\x4b\x06\x73\x71\x69\x0d\x0b\xca\x12\xc3\x7c\xf0\x8c\x03\x2a\x05\x53\x60\xc1\x5f\xe6\x92\x59\xf3\xde\x30\xa7\x6d\x12\x7f\x45\x57\x5b\x60\x1a\x65\xd6\x4c\x19\xc7\xb2\x0a\x0b\xac\xa0\x7c\xc6\x7b\x66\xb4\x80\xc6\x70\xee\xbd\x62\x56\xcb\x44\x6b\x26\xc0\xe5\x8e\x7f\x38\xe1\x9c\x32\x63\x05\xd1\xcc\x49\x3b\xa5\xd0\x0a\x20\xd6\x3c\xe0\x8a\x2d\xe3\x82\x08\x16\x14\x3e\xcd\x45\x7c\xe9\x21\xa0\xed\xb0\xca\x9c\x6b\x8a\xaf\x05\x00\x07\x5b\x44\x3c\x2c\xa8\x67\xc2\x48\x0a\xf3\x02\xf3\x5e\x7d\x14\x82\x39\x31\x0f\xcc\x1b\xf7\x01\xbe\x03\xf1\xcc\x71\x95\x0b\x26\x3c\x94\xd6\x13\xc3\x38\xae\x25\x71\xa9\x29\x7e\x47\x08\x26\x8a\xf8\x4d\xa0\x23\x3c\x1e\x59\xea\xbc\x1c\x13\x7f\x95\x42\xea\x51\x9a\xd3\x92\xf4\x1e\x95\x69\xa7\x9e\xb2\x6a\xfa\xbc\xb7\x77\x3e\xe9\x7e\xb0\xe7\x08\x07\xdf\xe5\x01\xe3\x43\x06\x3c\x16\x8b\xec\xc7\xd8\x04\x80\x4b\xec\x2c\x38\x91\xc4\x37\x0e\xf0\x85\xf3\x51\x7c\x03\x11\xf0\xdb\xff\x65\x27\x0d\xe6\xaa\x81\x29\xa1\x77\x89\xf0\x31\xc4\xef\x3e\x22\xcc\xea\x61\xa1\x59\xb0\x0a\x5f\x66\xe9\x77\xb8\x4e\xa7\x89\x67\x56\x5b\x1c\x9e\xea\x4d\xe5\x6e\x4d\x35\xa6\x08\x48\xa1\x48\x42\x14\x28\xc5\x7b\x75\x27\x99\x71\x72\xae\x19\x57\xee\x9d\x63\x56\x58\x22\x0c\xb3\x9a\x04\x66\x05\x11\x8e\x49\x6f\xe3\x5e\x75\x78\x5a\x23\x1f\x8a\x7c\x48\xcc\x3a\xf2\x91\xe2\x8e\x46\x4e\x14\x59\x9d\x63\x5e\xba\xdd\xdd\xa7\x27\x5d\x84\x53\x54\xe5\xb9\x6f\x32\x7e\xe2\x6d\x86\xcf\x73\xd1\xc5\x2e\x97\x6f\xb4\xd9\x4c\xfe\x5b\xba\x30\x81\x19\xe2\x99\xc9\x71\x41\xdd\xe0\xf4\xd9\xce\x35\xbe\x8c\x32\x39\x08\x09\x4c\xe1\x3f\x00\x96\x21\x96\x08\xf1\x5e\xde\xc9\xb9\xc9\x25\x33\x54\x33\x73\x8e\xe0\x6c\x2b\xdd\x23\x34\xad\xc4\x33\x26\x08\x91\xfa\x29\x13\x84\x7d\x0e\xdb\xd5\x42\x3d\xbc\x5a\x38\x4f\xf3\x55\xb3\xdd\xf6\xb7\x76\x4e\x4f\x1a\x08\x05\x11\x7e\x8e\x27\x6f\x29\x1e\xbd\x15\x54\xd8\x67\x5a\x49\x14\xcd\x4a\x62\xa0\x9e\xfa\x75\x7c\x20\x1e\x3e\x78\x84\x93\xc0\x8f\xf8\x00\x30\x98\x90\x0a\x3d\xa5\x92\x49\xa0\x84\x21\xd0\x05\xaa\x89\x9e\xcb\xee\x41\x9d\x75\x73\xca\x67\x0a\x4e\x34\xb8\x21\xce\x50\x45\x0c\xe2\x49\x98\x03\x2b\x94\x5d\x45\x71\xd2\xcc\x24\x38\x07\xc0\x0a\xfe\x9d\x27\xb4\xbd\x9d\xdb\x2b\xc1\xfd\x98\xa7\x8c\x7f\xcf\x79\x85\xf3\x53\xee\xa4\x7c\x86\x0b\x45\xba\x2c\x40\x4d\xb2\x75\x55\x94\x3f\xc6\x34\x42\x28\xa2\x92\x40\xd0\xf9\x25\x9c\x06\x12\xde\x8b\x5c\x31\x1f\xc0\x1e\x07\xc6\x1d\x13\xfa\x43\x80\x99\x9a\x9d\x72\xb0\xad\xe0\xb5\x0b\x45\x1d\x71\xd4\xad\xe3\x0f\x02\x3f\xe2\x03\xc0\x61\x92\x18\x14\x01\x6c\xeb\x29\xca\x24\x0b\x1a\xfc\x61\xbb\xdd\xa7\x2d\xff\xe2\x59\x30\xe0\x1b\x04\xdc\xef\x83\x6e\x84\x22\x52\x6c\x0b\x03\xf3\x4c\xff\xb0\xa0\x82\x98\x3b\x93\x6b\x26\x3d\xee\x3d\x62\x4e\x52\x01\xe2\x0e\x03\xb9\x64\xdc\x7f\xf4\xef\xc5\x59\xab\x39\xad\x7e\xea\x93\xf2\x56\x6a\xcf\xba\xe6\xe5\x1c\xf7\x82\x75\x23\x58\xef\xac\x9b\x0f\x9f\x88\xda\xbe\x49\x6a\x1d\x43\x19\x75\xe5\x5c\xef\xcd\x10\x07\x43\x69\x3f\x35\x46\xe4\x37\x4a\x21\xa7\x1f\xf2\xb0\xcb\xd4\x30\x13\xb7\x60\x71\x02\x63\xb9\x8d\xe3\xfa\x9a\x36\x3f\x28\xfe\xfe\x1b\xfa\x93\x46\xab\x38\xbe\x5b\x4c\x6c\x86\x7a\x90\xd6\x80\x2f\xdf\x85\x4e\x04\x33\xf8\x82\xc8\xe0\xae\x19\x90\x51\xa6\xb5\xa2\x2c\x78\x33\xa5\xe0\x91\x52\x26\x1d\xcc\x40\x29\x50\x01\x1c\x77\xbe\xa9\x39\x4a\x7e\x98\x52\xa6\x3c\x4c\xe8\x3c\x65\xd6\x1b\x26\xbc\x41\x5a\x40\x49\x04\xd3\x06\xf7\x41\x1b\xdb\xe2\x0d\xc9\x73\x20\xf6\x1f\xc1\x9f\x9e\x32\x2e\x03\x53\xde\x32\x61\x3c\x73\x42\xd7\x38\x16\x32\x67\xd2\x1b\x66\x37\x10\xc8\x37\x66\x0b\xb9\x12\x4e\x20\x4f\x8a\x84\x01\x1e\x00\xaf\x29\x72\x2c\xae\x6d\x6a\x63\xdf\x0b\xc5\xb4\xfa\x28\xe4\x1d\xd4\xfb\x01\x6c\xa8\x63\x0e\x0a\xa9\x34\x34\x00\x7c\xc7\xc9\x04\xd3\x54\x4c\xa1\xac\x4c\xe0\xe6\x3a\xad\x00\x42\x98\x74\x02\x66\xec\x1e\xdb\x02\xf1\xd6\x98\x28\xa4\xc7\xed\x46\x53\x26\x8d\x03\x2c\xa6\x21\x5f\xdc\x7a\x24\x64\x60\x4e\x4b\x24\x80\xf6\x50\x60\xf8\xe0\x3b\x66\x05\x64\xd2\x4f\x21\x99\x63\x4e\x50\x19\x87\xfb\x94\xa4\x3f\x67\x08\xe8\x13\xec\x9e\xb1\xa0\x17\x6d\x60\xcf\xe8\x29\xb7\xba\x9e\x78\x4d\x67\x3f\xfa\xc9\x17\x1b\x1d\x0a\xbd\x79\xe8\x15\x4f\xbb\x05\xba\x36\x7f\x55\x16\x37\x65\xba\x8e\x21\x3f\x2b\x18\xd3\x96\x49\x75\x4a\x5c\xc2\x43\x59\x02\x52\xb6\xbc\x19\xf0\x94\x71\x94\x6a\x9f\x9a\xe8\x06\x59\xef\x89\x7e\x7e\x95\x2d\x91\x67\xbd\x2c\x4c\x66\x15\x46\x58\xff\xd3\x6c\x04\x2d\x0c\x62\x63\x68\x46\x78\x3f\x43\xb7\xd7\x9f\xe5\x02\x3d\xf9\x3a\xfc\xe7\xba\x32\xb1\x97\xcf\x19\xd7\x61\x7d\xaf\x98\xfc\x07\x83\xc0\x1e\x7e\x17\x79\x48\xf4\x87\x87\x89\x5e\xc7\x78\x60\x7b\xcb\x79\xb1\x76\x8e\xef\x57\xd9\xdf\x78\x72\xac\xf5\x9e\xef\x26\x87\x6f\x94\xe6\xc9\xd7\xb4\xfc\xed\xde\xfa\x9f\xe6\x2f\x30\x8f\xf1\x76\x98\x55\x2e\x8f\x5b\xb9\x39\x9a\x6c\x61\x03\xe3\x60\x6c\x70\xa3\xbb\xa6\xcc\x08\xf8\xfb\x5e\x48\x26\xb8\xca\x29\xe3\x81\x32\xce\x5d\x22\x98\xc3\x19\x9d\xae\x17\xa3\x95\x80\x04\xa3\x01\xc5\x0a\xca\x00\x26\xac\x02\x18\x58\x31\xc1\x3d\x45\xc6\x8a\x79\x15\xe3\x51\x39\x6a\x99\xc5\xcd\xf9\x81\x3b\x5c\x9d\xc0\xd3\x3a\x4a\xfa\x84\x69\x09\x56\x5a\xd6\xeb\xd4\xc2\x6b\x26\x74\x60\x4a\xe2\xa7\x86\x72\xad\x99\x34\x16\x8c\xf6\x94\x71\x21\x18\xd7\x92\x71\xc5\xb8\x67\xdc\x18\x26\x84\x63\x9c\x5b\xc6\xe1\x37\xfc\x15\x9e\x71\xa1\x18\x97\x36\x87\x1a\xc0\x67\x1a\xa1\xb2\xa1\xf5\x8c\x5b\xcb\xb8\xb1\x8c\x4b\x53\xc3\xa1\x3d\x04\xe3\x0e\xb8\x02\x11\x14\x8a\x71\x6e\x18\xe7\xba\xe6\x63\xc0\xd0\x33\x6e\x02\x09\xcc\xca\x40\x34\x93\xdc\x90\xc0\x70\x67\x1d\xb8\x05\xd0\xbc\x40\x21\x23\x91\xc2\x16\x64\x86\x5b\xf8\x60\x75\x98\xc2\xad\x6f\x32\x67\x5c\x42\xa3\x71\x3f\xc5\xdd\xcf\x40\x69\x25\xfc\x35\xb1\xe9\x55\x1e\xb0\xad\x35\xb4\x23\x94\xdf\xd0\x58\x3d\x24\x13\x21\x1e\x40\xe0\xd2\x26\x4c\x5b\x01\x9f\xc8\x5f\x48\x70\x87\x84\x99\x02\x6f\x1a\xdb\x0b\xf9\x42\xfd\x81\x02\x0b\x15\x33\xe4\xc8\x41\x41\x79\x20\x41\x27\x4c\x59\x0f\x9f\xc8\x8a\x83\xef\x23\x0c\x74\x95\x82\x4f\xd3\x1f\x02\x4a\xe0\x24\x53\x5a\xc1\xa7\x01\x23\x14\x5f\x31\x20\x5f\x21\xe8\x26\x87\x86\x48\x69\xda\x14\x8b\x36\xc5\xaa\x29\x51\x1a\x34\x6e\x03\x6c\xa4\x01\xb0\x05\x47\x8e\x02\x09\xdd\x86\x19\x52\xe1\x4f\x0d\x12\xa5\x5d\xc0\x93\x0c\x92\x5a\xf4\xc5\x14\x13\xce\x83\xb3\x85\x67\x11\xe0\xbb\x16\x5e\x29\x98\x90\x7d\xc7\x6f\xce\x53\x2d\x0c\x34\xe2\x5d\xd4\x17\xf4\x81\x13\xd0\x1f\x4d\xe2\x77\xcc\xd4\x28\xe8\x5b\x37\xc7\x77\x2f\xa8\x84\x36\x76\x3c\x65\x4d\x13\x49\x68\x0a\xe9\x40\x1b\xe1\xc9\x02\x3f\x63\x6b\xe5\xd2\xd0\xf3\x26\xc1\x7d\x9f\xf8\x85\x6c\x41\xa7\x34\xea\x54\x40\x9d\x02\x2f\x5b\x29\xd0\x28\x05\x9f\x8e\x46\x79\xa6\x14\x53\xaa\xa3\x4f\xae\xad\x4f\x02\xc5\xc2\x85\x5a\xa1\xec\x8e\x42\xb9\x46\xa1\x40\x2d\x6a\x7d\x30\xf5\xc7\xc5\x4f\x47\xbd\x42\xad\x5e\xae\x56\xaf\x1d\xed\xda\xe8\xa5\x99\x46\x85\xb2\x2d\x7d\xb2\x1b\x7d\xb2\x51\x46\x55\x54\xa7\xa8\xf2\xdc\xee\xa8\x93\x50\xd8\xec\x39\xe3\x0a\x92\x45\xc2\x8c\x86\x29\xb5\xac\x93\x51\x46\xec\xae\x8e\xe9\x7d\x1d\x93\x1b\x1d\xf3\x7b\x3a\xe6\x12\xa6\x7d\x80\x4f\x47\xc7\xf4\x46\xc7\x64\x2d\xcc\x61\x57\xc7\xf6\x95\xcc\x80\x92\xe1\xd1\x9c\x8e\x92\x31\x25\x04\x7c\xf6\x74\x0c\x7b\xee\xa0\x8e\xc9\x41\x1d\xeb\x57\x32\x21\xf1\x85\x68\x47\xc9\x5c\x9f\x92\xb9\x5d\x25\xf3\x2d\x25\x0b\x5b\x25\xb3\xb8\xfc\x61\xe5\xc6\x42\x38\x26\x64\xdf\x82\xdd\x39\x4a\xc6\xf1\x05\x0d\xd7\x66\xda\x54\x04\xeb\xa6\x6a\xed\xe0\x06\x8b\x6a\xfe\xc2\x60\xec\x88\x43\x87\x10\xcc\x05\x22\x61\x3c\x61\x5a\x6f\x34\x01\xb8\x4c\xeb\x81\xcf\xd4\x7d\x82\x0f\xf1\x80\x11\x13\x00\xb0\x9a\x7a\xe6\x8d\x22\x9a\x79\x47\x03\x53\xca\x13\xc3\x84\x16\x09\xcc\xd9\x9a\x79\x5b\xa3\x59\xc6\x31\x05\xff\xdb\x9a\xe5\x54\x5b\xb3\x4c\xb4\x54\x26\x6a\x96\xd4\xb5\x46\xd5\x43\x79\xad\x57\xa1\x51\x08\xdb\x18\x2a\x1d\x35\x09\x54\x06\x34\xa9\xb1\x53\x8d\x26\xe9\xa8\x49\x36\x31\xda\xc0\xec\x53\x90\xcd\x03\x94\x04\x34\x08\x54\xc8\x48\x5f\x97\x03\x54\x56\xd6\x7f\x95\x88\x66\x49\x7b\x09\x9f\x91\x66\xc9\xd6\x2a\xd3\xe8\x8c\x61\x42\xed\xa9\x8c\x6c\x34\x26\x80\x55\xd2\xf0\x69\x6b\x8c\x94\x7b\x56\x69\xa3\x31\x72\x40\x65\xfe\xc2\xb4\xc2\x9d\xe5\xc8\x4c\x4a\x62\xc1\x95\x48\x60\xc2\xde\x4c\xda\xb7\x3a\x63\x99\xb2\x0e\x3e\x6d\x9d\xf1\xa2\x4f\x67\xf4\x46\x67\xcc\x46\x67\x54\xad\x33\xb2\xa6\x84\x21\xd5\x38\x3c\x9c\xd6\xd6\x18\xa1\xb6\x1a\xe3\x1b\x8d\x91\x1b\x85\xb1\x39\x0d\xb8\xcd\x52\x33\xc3\xcf\x3a\x7f\xbc\xf5\x32\x7b\xbc\xf2\x56\xe2\xce\x21\xfd\x3c\x4d\xca\xe5\xd1\xbd\xac\x5b\xac\xf6\x66\xd6\x08\xfd\x4d\x77\xb3\x4a\xa6\x79\x20\x06\xb4\x28\xf7\x2c\x08\x43\x14\x0b\xc6\x4f\xf1\xd0\x24\xd7\xcc\x3a\xcb\xac\x17\xf0\x17\x77\x31\x80\x31\x64\x1a\x2c\xa7\x14\x20\x14\x9a\x6e\x93\x72\xaa\x70\x23\x83\x60\xca\x8b\x3b\xc5\x9c\x75\x53\x4e\x1a\x7b\xca\xa4\x0b\xd8\x99\x4c\xc5\x05\x24\x87\xdb\x31\xb4\xd2\xcc\x2a\x15\xd7\x7c\xbc\xf1\x94\x29\xe7\x98\x74\x9a\x32\x6f\x0c\x33\x5c\x52\xc1\x54\x60\x16\x5f\xd1\x72\xa7\x98\xb2\xe0\xda\x6a\x2b\x99\x71\x9e\x2a\x16\x2c\x9e\x85\xc0\xdd\xb7\x9c\x4a\xe6\x03\x14\x4e\x61\x8a\xa4\x98\xc4\x0c\x68\x89\xf0\xc0\x0b\x65\x08\xc3\x04\xa8\x40\x91\x2d\x53\x02\x4f\x68\x52\x66\xbc\xa5\xcc\x70\x5c\x81\xc2\x02\xf8\x84\x59\x70\xe6\x85\x6f\x16\xaa\x04\x94\x55\x79\x73\x87\xaf\xbe\x75\x1e\xed\x49\xd0\xe6\x83\x61\x78\x5e\xc2\xe0\xfa\x1c\x33\xc0\xcf\xe3\x09\x4a\xad\x2c\xe4\x2b\x15\x91\x50\x90\x04\x5c\x22\x18\xc1\x85\x6c\x5e\x7d\x83\x2a\x12\xc1\x82\x90\x24\x7a\x78\x1b\x3f\x0f\xb2\x04\xfb\xee\x85\x9a\x83\x39\x99\xa2\x8f\xac\x6b\x33\xed\xe3\x38\xe1\x74\x74\x63\x0d\x0c\x57\x4c\x80\x8e\x3b\xc7\x44\x88\x49\xc2\x58\x26\xbc\x8d\x96\x4d\x3a\xa6\x83\x63\x8a\x29\xc3\xac\xf4\xcc\x28\xc5\x02\x7c\x7f\x30\x78\xd0\x54\x72\x28\xbe\xb6\xb8\x36\x06\x03\x85\xc4\x33\xa3\xd0\x66\x0e\x1c\x24\xe3\x15\x33\x1c\xbb\x42\x23\x44\x30\xe5\xf0\x29\xa7\x4c\xe3\xee\x15\xef\xa6\x71\x84\x66\x0e\x14\x5a\x5a\xcb\x82\xf2\x94\x79\x98\xea\xc0\x60\x20\x2d\xee\x43\x61\x06\x65\xcc\x51\xe6\x71\xbc\x85\x69\x8d\x89\xdd\xa3\x94\xac\xed\xa1\x0e\xb1\xbd\x04\x11\xcd\x68\x0b\xed\xa5\x24\xee\x1c\x73\x76\x8a\xc3\x83\x60\xc2\x29\x66\x24\xee\x98\xd1\x82\x05\x3c\xe5\x6b\xad\xcf\xa9\x00\xaf\x11\xb2\xf0\xef\x24\xc8\x2c\x11\x82\xc9\xb8\x48\xcb\x71\xd4\xc6\x07\xa5\x71\xf5\x51\x3a\x40\xa1\x20\xd7\x20\xd6\x34\x8a\x35\xea\x05\xad\xf5\x42\x82\x4c\x81\xc7\x66\xa0\x39\xe0\xc1\x83\x70\xdc\xc1\xb8\x24\x1e\x16\x20\xd0\xd0\x89\x4e\x9b\x9c\x1a\x7c\xdb\xc7\x9c\x0e\xf1\xa8\x22\x93\xd2\xe5\x9e\x39\x03\x62\xeb\xbd\xff\x10\xd7\x89\x4d\x4e\x11\x88\xaf\x4b\xc0\x93\x15\x2c\x28\xf7\x41\xe0\xe9\xab\x9c\x05\xe7\x98\x11\x1e\xb7\x45\x04\x4d\x34\xb8\x32\x18\x10\xc3\xe2\x7e\x22\x69\x12\xf4\xda\x48\xfc\xae\x65\x06\x0b\xf5\xc1\xe1\x76\x23\xc5\x94\x13\x39\x8e\xb5\x4c\xcb\x70\x27\x19\x38\x75\x4a\x60\x40\xe3\x8d\x00\x82\x49\x81\x79\x1b\xd8\x3c\x17\xc0\x45\x61\x52\x6a\xa6\x8c\x67\x1a\x9e\xb5\x06\xf7\x83\x59\xa6\xd0\xf5\xe5\x26\x30\x23\x24\x0b\xc2\x31\x25\x70\xd3\x95\x85\x72\x42\xe5\x0d\xe8\xa6\x90\x6b\xc9\x2c\xe8\x7e\x04\x29\x98\xf2\x4a\x18\x58\x28\x8a\xa4\x8f\x1d\xad\x91\x97\xc7\x44\x26\x0d\x68\x98\x07\x0f\xcc\xc2\xe4\xc1\x43\xf6\x20\x57\x0e\xf4\x90\xd9\x56\x71\x03\xfa\x89\x39\x36\x3b\x05\x5d\x78\xf8\x55\x38\x50\xb0\xbe\x6d\xef\x4c\x1a\x62\xf1\x3c\x93\x23\x36\x7f\xda\xe6\xf7\xcd\xa0\xdd\x67\x26\x36\x69\x8f\xa3\xef\xc4\x06\x3b\x50\xdc\x14\x34\xa2\x6c\x0e\xe0\xfc\x76\x26\x21\x30\xcf\x71\xb7\x83\xc5\x53\x7b\xc1\x2b\xa2\xe6\xd4\x60\x1c\x16\xc1\xbc\x24\x06\x92\xe6\x00\x70\x0f\xe8\x31\x06\x4f\xd4\x7b\xcb\xa4\xd0\x1f\x34\x53\xc1\x46\x62\xc4\x30\x1f\x1a\x84\x87\x5f\x5b\x69\x89\x47\x61\xf5\x8d\xc8\x72\x4e\x34\x0b\x0e\xb2\xe5\x46\xd5\xdf\xe8\x7b\x80\x2e\x13\x70\xa6\xcc\x87\x00\x46\x03\x63\x14\x68\xe6\x2c\x05\xe7\xd0\x3f\x2c\x84\x61\x1a\x26\x27\x78\xd8\x4c\x79\x48\x17\x28\xfe\xa6\xc9\x68\x8f\xa1\xa5\xc0\x50\x4f\x99\xc1\x05\x13\x50\x66\x30\x17\x20\xea\x9c\x2b\x0a\x25\xb1\x30\x7b\xe4\xea\x61\x41\xc1\x44\x5a\x4d\x40\x85\x99\x20\x52\xe4\xdb\xcc\xe9\xce\x23\x89\x45\x6a\x09\xd5\x7f\xff\x4f\xa3\xbb\xdb\xe9\x0e\x2e\x54\xef\x8b\xc0\xab\x47\xbc\x2a\xea\xe8\x05\x9c\x2d\xa4\x83\xd7\x6f\xb6\x70\xba\x97\x6f\xb6\x12\x06\x68\x06\x2e\xde\x04\xac\xdd\x6b\x37\x01\x36\xee\xd2\xcd\xc3\xf1\x22\x7b\xe2\x44\x92\xd9\x8c\xa4\x8b\xce\x55\x70\x07\x57\x37\xfb\xee\x8d\x3b\x7e\x12\x6f\x14\x51\x6b\x39\x34\xcf\xea\xb0\x03\xfb\x57\x2c\x1e\x78\x55\x83\xbb\x68\x9a\xf7\x2f\xb7\x79\x73\xa1\xf5\xc1\x18\x82\x7d\x37\xa2\x9f\x7e\x2d\xf6\x77\xbe\x63\xf4\xe0\x3d\x93\x4f\xba\xe6\xef\x79\xaf\x54\xdb\x8c\xb3\xf7\xeb\xdf\x78\x94\x3d\x69\x42\xee\x98\x8b\xe7\x70\x61\x06\xc4\x14\xcc\x25\x3d\xb3\xce\x80\x9b\x07\xa6\x53\xa2\xbf\xa7\xa2\xc3\x65\x35\x98\x45\xed\x58\xd0\x8e\x32\x70\x38\xc0\xbd\x85\xd9\x30\xcc\xda\x25\x37\xcc\x81\xcf\xad\x1c\x3c\x83\xbf\xc5\x94\x05\x2b\x0c\x36\xde\xab\xe8\xdd\x09\x98\x91\x49\x69\x98\x70\x92\x02\x38\x3e\x38\xdc\xfd\x8d\xb1\x4e\x18\x0f\xe0\x39\x83\xff\xa3\xd0\xe3\xc3\xe9\x00\x6f\x5e\x5b\x1b\xf0\xea\xa3\xb7\x0e\x09\x56\x81\x6b\x88\x41\x50\x82\x07\xe7\x12\x6d\x3c\x64\x62\x02\x90\x80\x6b\xe8\xc0\x87\x56\x56\x27\xcc\x4a\xf0\x4b\x37\xaf\x85\x45\x00\xf3\xef\xc0\x39\x93\x4e\xc6\x95\x3c\x98\xe7\x2a\x01\xfe\x63\xa8\xab\x21\x2d\xde\xc5\xc0\x84\x07\x93\x13\xff\x6a\x07\xce\x02\xf3\xc1\x30\xee\xc1\x61\x01\x7a\x69\x3c\x64\x0d\xc6\x80\x89\x10\xa0\x29\x25\x38\xcd\x1e\xcf\x19\xe0\x2e\x6b\x9c\x62\xe0\x83\x14\xea\x0e\xe6\x06\x09\x78\x3c\xe8\xf5\xd4\x2f\xd4\xe3\x02\x22\x33\x0e\x3f\x0d\x14\x8b\x2a\x2c\x86\xc3\xd1\xbe\xfe\xae\xd3\x24\xcc\x41\x84\xc4\x85\x8d\xf8\x55\x27\x28\x4c\xe0\x30\x67\x10\x2a\xd4\x6b\x92\x88\x8d\xeb\x2c\x1a\x27\xd8\x2a\x01\xc7\x1d\xcf\x72\xcb\xd6\x8e\x01\x1d\x57\xda\xa0\x5d\x05\x40\x8c\x63\x1c\x26\x27\x5e\xc1\x1c\x40\x26\x68\xae\x98\x68\x08\xac\x0f\xf5\x6b\x77\x87\x5b\xe8\x1d\xdf\x94\x42\x3b\xdc\xb8\x00\x85\xc0\x9d\xff\xe0\xe1\xba\x00\x53\xf0\xf8\xe0\x70\x21\x80\x29\x70\x01\x85\x62\xd6\x82\xc0\x49\x16\xc0\xe4\x7b\xe8\x56\x66\x9c\x65\x46\xa2\x0f\x8a\xef\x1e\x72\x4c\x0c\x7e\xca\x94\xd4\xd0\x6d\xcc\x18\x26\x45\x00\x9f\x1c\x57\x11\x40\xa0\x71\x1e\x00\xb5\x85\x3f\xda\x82\x7d\x8e\x12\x04\x26\x17\xe7\x65\x1a\xcf\xd3\x46\x69\x04\xc1\x43\x26\x9e\xb2\x60\x5d\x7c\x90\xd6\x60\xd5\xe3\x6a\x80\xa5\xcc\x41\xff\x73\x9f\x28\x66\xe3\x31\x85\xb8\x6e\x09\xb2\x84\x42\x26\x15\x7a\xc2\x16\x17\x0d\x40\x1c\x39\x36\x3b\x38\xfd\xdc\xa9\x7a\x09\x22\xe0\x82\x97\x4f\x98\x72\x16\x3e\x9b\x2e\xc6\x75\x8a\x29\x2a\x00\xfe\x06\xd9\xb1\x36\x3e\x48\x6e\xee\x98\x52\x71\x86\x66\x71\xcd\x13\x6a\x08\x13\x32\xdc\xad\x81\xab\x4a\xb8\x1a\x8e\x8a\x08\x33\x32\xe1\xc0\x37\x0a\x4c\x2b\xc4\x71\x56\x42\x85\x1e\x7e\x75\xcc\x49\x0f\xd3\x92\x00\xbd\x08\x2e\x92\x6c\xfb\xf6\x1c\xb5\x2c\xcc\x71\x3d\xe4\x23\xb4\x9e\x99\xe2\x74\x2d\x8a\x3e\x46\x36\x12\xb4\x3e\x0c\x8c\x9a\xe5\x40\xed\x1c\x45\xd7\x07\xe7\xc2\x18\xe5\xa7\x9e\x16\xab\xd8\x86\x8e\x07\x16\x27\x76\x4a\x41\x29\xc1\xff\x06\xdd\xa1\x18\xd1\x47\x80\x4c\x7a\x65\xa0\x53\x13\x98\x95\xc1\x67\xd3\x2e\xde\x80\xf8\x62\x6b\x2a\xc6\x21\x13\x18\x84\x90\x09\x3c\x48\x25\xef\x40\x10\xe2\x6a\x40\x04\x41\x13\xe0\xeb\x1c\x68\x1a\x7c\xf3\x63\x42\x7c\xe1\x22\xe2\x62\x61\x22\x18\x0c\x70\xcd\x46\x2e\x60\x02\x3d\x6b\xa7\xf5\x53\x90\x0c\x07\x39\x6b\x98\x13\x06\x85\x64\x1d\xc5\x86\x7b\xcb\x1c\xf6\x28\x60\x9b\x38\x0e\x58\xc7\x30\x98\x92\x0b\x4c\x71\x83\x19\xc3\x47\x09\x01\x33\x39\x5c\x09\x06\xe1\xbd\x83\x11\x2f\xf1\x2c\x04\x70\x1a\xe1\xbb\xae\xa3\xb3\xf8\x6a\xc0\x12\x03\x53\xa1\xfa\xbb\x49\xc3\x85\x28\x03\x0a\x64\xbd\xc4\xb3\x4d\x20\xeb\x02\x77\x99\x59\xa9\x98\xc1\xa9\x2c\xd7\xa0\x42\xf1\xe8\x89\xaf\xcf\x99\x10\x01\xe3\x1e\x94\x10\x86\x24\x6b\x58\x30\x9a\xe9\x80\xe3\x95\x40\xe5\x51\xc2\xc3\xe0\x0b\x4a\x4a\x22\x04\xd4\xd5\xe1\x3a\xa2\xc0\x11\x42\xa1\x3e\xe3\x90\x1f\xa0\x79\x71\x00\x53\xd8\xbc\xce\xc7\x5a\x06\x7c\x23\x82\x8a\x28\x60\xd6\x0d\x73\x2d\x15\xb0\xf6\xf5\x7a\xa7\x50\x20\x8b\xf5\xb0\x18\x54\xed\x2f\xc7\x09\x3b\x18\x19\x17\xdf\x93\x30\x2d\xe2\x08\x35\x85\xd6\xa5\x48\x8d\xfd\x0c\xf4\xf1\x21\xa0\xa1\xe0\xda\xd5\xab\x7b\xa2\xfe\x21\x0c\x0c\x64\x46\x3b\x12\xbf\x6b\x69\xc6\xe1\x46\x3b\xfb\xb0\xa0\x71\xe6\x19\xcd\x84\x54\x1e\x7e\xc5\xe1\x5e\x08\x5c\xaa\x91\xf1\x41\xf1\xa8\xf4\xb8\xf2\x07\xf2\x19\xa0\xfb\x35\x1a\x34\x28\x00\x0c\xcf\x20\x83\x2a\x88\xfa\xc9\x71\x89\xa3\xad\x12\xd1\x84\x80\x9d\x53\xd2\xd0\xa8\x72\xc0\x13\x86\x39\xa3\x71\xb9\xc2\xc4\x28\x5c\xf0\x20\x39\x0e\x7c\x5a\xe0\xdc\xd9\xe2\x72\x30\x36\x1e\xa8\xb3\x16\x0e\xab\x6f\x05\x8c\x8a\x77\xd8\x28\x20\xa7\x12\xc5\xd7\xc5\x96\x82\x56\x37\x0e\xf5\x80\x09\x90\x70\x1c\x61\x61\x80\x81\x41\x4d\x4b\x1d\xb3\x46\xe3\x01\x1d\x82\xf2\x21\x03\xa4\xc0\x84\xdf\x2a\x0b\xe3\xf9\x14\xad\x07\x1a\x99\x10\x97\x3d\x25\x9a\x2a\xa8\x6e\x5c\x90\xd7\xd8\xce\xb8\x38\x85\x86\x44\x1a\x5c\xfb\x30\xc6\x52\x18\x6c\x13\xc1\x30\x5e\x98\xd8\x8c\x86\x68\xc4\x2c\x0e\x1c\x20\x15\xc8\x05\xe4\x4f\x60\x0b\x9a\x39\xb3\xda\x4f\xa1\x47\x51\xf7\xb0\xca\xf1\x8d\x2b\xbe\x68\x02\x2d\x8f\xe2\x02\xdd\xae\x14\xe6\x07\xed\x00\x73\xb5\x78\x2a\x83\x2b\x1d\x4f\x68\x4c\xa3\x59\x42\x01\x73\x68\x57\x7d\x5c\x9e\x96\x06\x86\x12\x63\x37\x9b\xd5\x04\x81\x22\x61\xbd\xe6\xcc\xa8\xbd\xec\xad\x69\x67\x2f\x1a\x99\xab\x33\xe7\x78\x7c\x43\x2b\x50\x13\x81\x73\x3c\xad\xdc\x34\x36\x0d\xe4\x8d\x9b\xd4\x20\x6f\x25\x9b\xbc\x95\xc4\xe5\x9a\x26\x6f\x1c\x81\x20\x6f\x2b\xec\x14\xc6\x21\xd4\x00\xc8\xb5\x56\x4e\x61\x4d\x02\x83\x26\x7c\x36\x0d\x29\x18\x0f\xb8\x0e\xa1\xc0\x8e\x24\x2c\xe8\x00\x9f\x4d\x3a\x8c\x84\x16\xb7\xad\x9a\x00\xc3\x87\x40\x0b\xa2\x99\x50\x22\x8e\x55\x68\xc9\x84\x0a\x4c\x1a\x97\x40\xcf\xc3\x67\xa3\x1e\xa6\x79\x99\x69\x1c\x8a\x01\x2e\xcd\x49\x51\x2f\x99\xd7\xed\xe5\x36\x72\x60\x6b\x41\x40\x33\x8a\x7d\xac\x73\x74\xc5\xa0\x41\x24\x8e\x48\x5c\xc6\xb3\x71\xf5\x78\x8d\xb8\x30\x68\xc4\x72\x40\x7b\x22\x53\x53\x0f\xe5\x30\x60\xa0\xa4\xd5\xed\x8f\x45\x69\x4f\x72\xa5\x91\x7f\x55\xff\xfd\xbc\xf7\x4d\x1e\x86\x45\x3c\xd7\xa3\xc4\x14\x6c\x10\x36\x09\x91\xf5\xce\x3f\x07\x2e\x8c\x31\xb1\x99\x9c\x8f\xce\xa3\xc2\xd3\x85\x1e\xcc\x9d\x71\x80\x5b\x8f\xfa\xa0\x45\x68\x17\x70\xd8\x73\x60\x6b\x0d\xca\xbc\xa5\x2c\xa0\x47\xe6\x70\xa5\x08\xbd\x41\x25\x61\xc6\x0f\xfa\x27\x51\x5f\x82\xa0\x92\x49\x0f\x4e\x06\x6e\xa6\x30\x0a\x8a\x04\x1a\x27\x71\xf5\x53\x98\x10\x0d\xa2\x51\xa0\xbf\x0f\x0b\x6a\xb1\x9b\x14\x0c\x26\x53\xc9\x1c\x2e\xe6\x82\xff\x09\x86\x12\x77\x25\x43\xa3\xc9\xe8\xae\x1a\x5f\x37\x1f\x0c\x84\xd6\x7a\x7c\x69\x47\xc1\x6b\x4d\xd0\x29\xc2\x00\x46\xf0\x27\xf6\xba\x03\x8b\x41\x04\x88\xd9\x14\x23\x8c\x28\xc2\xa9\x8b\xdd\x11\xbc\xa5\x01\x72\xa0\x92\x59\xb1\x19\xf9\x20\x09\xfc\x08\x8e\xa6\x10\x9c\x2f\x0c\x94\x68\xf1\x68\xa4\x21\x16\xf4\x91\x28\xe6\x8c\x25\x81\x79\xed\xe3\x73\xbb\x1b\xff\x1a\xf8\xe8\x85\x8a\xf6\x1c\x6a\xbb\x35\xa9\x7d\xe7\xf4\xd1\x55\x8b\xc3\x34\x07\x17\x31\x0e\x93\x74\xd7\x34\x0e\xe3\x8d\xe7\x38\xb0\xe2\xd1\x43\xb4\xbb\x00\xd2\x83\xf2\xfd\xd6\x43\x06\x6e\xb7\x7f\x02\xbf\xf1\x4b\x2c\x23\xf2\x3f\x42\x7b\xfa\x0a\xcd\x49\x79\x0e\xf2\x38\x6b\xa1\xe7\xa4\xec\x8f\xb1\xd9\x25\x1d\xab\x3b\x23\xf5\x65\x48\x47\x86\xf5\x62\xb4\x2e\x1c\x90\xff\x91\x32\x3f\x7a\xa1\x6c\xa8\xd5\x4f\x64\x72\x78\xc1\xad\x7e\x65\xbb\xbb\xe6\xd6\x8f\xd6\x2e\xcb\xb8\x65\xba\x9e\x3a\x1c\x5c\xb5\x1b\xe2\xf0\x6c\x6b\x7d\x03\x8d\x7a\x16\xa7\xf3\x17\x0e\x9f\x58\x92\x1e\x5e\xe7\xaf\x43\x0e\x94\xe5\x4c\x5e\xdd\x05\xcb\x1e\x03\x71\x7c\x95\xf3\x30\xd1\xf0\xd5\xfe\xb5\x36\x8e\xcd\x60\xec\x4a\x6a\x5d\x9c\xa7\x2f\xa6\x0a\x4f\x84\x3f\xf5\x35\x15\x6e\xf6\xd1\xd6\x98\x89\x00\xd7\x2a\x08\x19\x24\x79\x17\x98\xf3\xd6\x2b\xa3\x27\x9c\x05\xa5\xb8\xb2\x21\xe0\xe5\x62\xd6\x04\xc3\xad\x04\xb0\x90\xca\xfa\x60\x34\x71\x4c\x04\x67\xa4\x0b\xc8\x83\x1b\xc7\x61\x6a\xf9\xce\xb0\x20\x03\x77\xda\xf8\x89\x60\x3a\x04\xae\x9c\x73\x44\x33\x67\x84\x0a\xca\xdb\x09\xcc\x94\x9d\xe1\x2e\x18\xf0\xa2\xac\xb5\xc1\x2a\x3d\x91\xe0\xf5\x0b\x27\x0c\x79\x27\x99\xf3\x22\xf8\x60\xe5\x44\x31\xcf\xb9\x57\x86\x5b\x7c\x59\xcb\xb9\xf0\xc2\x4e\x34\xf3\x2e\x04\x63\x70\x52\x66\xb4\x0d\x02\xca\x66\xc1\x7b\xf5\xc0\x90\xbc\xc3\xbd\x0e\x9e\x3b\xee\x27\x0e\x66\xbc\xce\x3a\x98\x33\xb3\xc0\x95\xb7\x5e\x8a\x30\xf1\xe0\xfe\x79\x61\x31\x5a\x04\x37\xc2\x6b\xe3\xcc\x24\xb0\x80\x4c\xbc\x07\x1e\x22\x04\x2f\x15\x54\x04\x2a\x28\x9d\x41\x3f\xd8\x5a\x21\xb5\x75\x62\x22\x24\xd3\x9a\x1b\xe7\xc0\x4b\x0c\x96\x5b\x25\xe4\x44\x28\x66\x84\x91\xc1\x0b\xf2\x0e\x66\x07\xdc\xbb\x60\xd4\x04\x03\xab\x73\x2e\x82\x22\x30\x21\xb7\xde\x19\x68\x7b\xc3\xa0\xf4\xd6\x2a\x62\x98\xb4\x5e\x07\xcd\xcd\x04\x37\x25\x58\x2d\x8d\x24\xef\xc0\x4d\xe6\x42\x48\x83\x60\xeb\x95\xf5\x1a\xcf\x01\x71\x69\x94\x52\x13\xdc\x4d\xcc\x9d\xf4\x9a\x04\xc6\xb9\xd6\xda\x4d\x84\x23\xef\xa0\x83\x85\x90\xca\xf9\x88\x22\xb9\x8e\x11\x91\x83\x36\xdc\xc6\x4c\xa4\x76\x5a\x70\x8c\x0b\xa0\x25\xe7\x40\xa9\x99\xf7\xd6\xea\xe0\xc8\x07\x21\x99\x91\x5e\x39\x09\xf5\x0c\x3c\x28\xe9\x0d\xf2\x75\x4e\x29\x0b\x8d\xa2\xb0\x4a\xce\x29\x22\x38\xf3\xca\x09\x23\x81\x03\x57\x4e\xba\x80\xc1\x4c\x95\x12\xc6\x85\x00\x50\x11\xac\x17\x5a\x93\x77\x9e\x79\x19\x84\xd5\x00\x54\xc6\x2a\x8f\x91\xfa\x3c\xe7\x5a\x3a\x28\xad\x66\x52\x0a\xe5\xa4\x26\x96\x79\x27\xac\x90\x1c\xf3\xf2\xdc\x4b\xa1\x05\x0a\x98\x96\xce\x1a\x8b\x60\x15\x0c\x97\x75\x6c\x50\x65\xa5\xf2\x0a\xca\xeb\xa4\x50\xd0\x05\xd0\xea\xc1\xf3\xa0\x1c\xf4\xa1\xb7\xde\x07\x6b\xc8\x3b\x0d\xd2\x1f\x40\xe0\x26\xd8\x50\xd0\xd8\x16\x7d\x7a\x21\x95\x82\x02\x73\xc6\xa5\xb0\x9a\x87\x36\x14\x5a\xd8\x70\xc5\xa5\x84\xbe\xdd\x80\x1d\x0b\xde\x6b\xc3\x25\xf4\xed\x86\xb1\x65\x21\x28\x6b\x8d\x69\x17\xc2\x32\xa1\x85\xb0\x2a\x60\x3d\x36\x25\x36\x4c\x42\xbb\x4b\x05\xf5\xd8\xd4\x4e\x83\x88\x72\x65\x94\x6c\x37\x85\x66\x92\x0b\xef\x1c\x57\xe4\x5d\xab\xdd\x14\x73\xde\x3b\xce\x95\x24\x9b\x16\x56\xcc\x1a\xe5\x04\xef\x76\x86\x62\x5e\x28\xa9\x83\xd0\xe4\xdd\xb6\xe3\x14\x0b\x4e\x3a\xef\x94\x23\xad\x3e\x8e\x92\x21\xf0\xc5\x70\x23\x0e\x86\x09\xce\x9d\x95\x56\x92\x0f\x5b\xd1\x51\x4c\x08\xe3\xad\x07\xa6\x78\x47\xb3\xb6\xce\x4d\x24\x93\x4a\x79\xa1\xa5\xc3\x60\xa8\x5c\xf3\x60\xdc\x04\xe6\xf2\xde\xf9\xa0\x0d\xe9\x1f\x88\xfe\x4e\x7e\xc5\x3d\xa6\xda\x7b\x10\x55\xc1\xa0\x62\xdc\x80\x62\x1b\x26\xbc\xf3\x46\x23\x54\x1a\x63\x03\xde\x81\xc8\x9d\x10\x5a\x04\x84\x7a\x17\xb4\x13\x31\x1c\x46\x30\x0e\x94\x52\xc0\x88\x61\x84\x0b\xe4\x1d\xca\xb8\x0b\x36\xa0\x48\x04\x27\x84\x08\x38\x87\xf6\xd2\x98\x20\x51\x7c\xb8\x77\x1e\x37\x15\x69\x68\x60\x25\x3d\x2a\x81\x14\xda\x9b\x9a\x85\x73\x86\x5b\x8d\x63\x80\xd2\xc2\x7b\x8d\x2c\x9c\xf7\x5c\x78\x83\x23\x83\x53\xc6\x59\xbc\x51\xc1\x2b\x67\x02\x02\x4d\x50\x52\x99\x4d\x21\x60\xb8\x43\x69\x85\x4a\x1b\x5b\xc7\x0a\xe1\xc1\xdb\x49\x3c\x0a\x21\x79\x0c\x9e\xcb\x9d\xf7\xc2\x62\xd1\x80\xcc\xea\x50\xb7\x84\x35\x5c\x21\x38\x98\x20\x44\xc0\xc8\xbb\x4a\x28\xa1\xb8\x43\x28\x0c\xd0\xd2\xc6\x78\xb5\xd2\x6a\xd5\x81\x02\x0b\x2b\xac\xb2\x42\xec\x20\x3b\x2f\x83\xc4\x42\x04\xe9\x8d\x36\x18\xf1\x36\x70\xe3\xb4\x0d\x58\x08\x6e\x9c\xd4\x8a\xbc\x83\xa1\x4a\x7a\x63\x41\x71\x25\x06\xc3\x85\x89\x32\xee\xbe\x74\xc6\x19\x44\x36\xc2\x2a\xee\xfc\x0e\x54\x69\x69\xa5\x10\x91\xc5\x16\x2c\xa1\xe8\x2e\xb2\x30\x41\x68\x69\x62\x7f\x58\xed\x39\x36\x45\xf0\x4e\x78\x67\x62\xdf\x79\x67\x95\xc0\x7a\x04\x61\xa4\x92\x3a\xf6\xb4\xe0\xce\x62\x18\x5d\x2f\x64\xd0\x5e\xd6\x52\x21\x84\x57\x18\xca\x04\xc6\xb2\xa8\xfa\x4e\x39\xa8\x09\xb2\x30\x4e\x81\xea\x02\xd8\xa2\x7d\x09\xb1\xdd\x44\x50\xce\x22\xd4\x19\x2e\x62\x29\x7a\x44\x13\x64\xd6\x32\x6e\x3d\x77\x06\x0c\x89\xb6\x3c\x88\x60\x62\xe9\xb4\xe0\x30\x26\x04\xa6\xbd\x95\x02\x43\x2c\x1b\xe6\xa5\x56\xca\x4d\x02\x33\xda\x9b\x58\x60\xa7\xa4\xb3\x56\x4e\x02\xb3\x9a\x0b\x2b\xb5\x8f\xbd\x04\x83\x86\x06\x54\xa7\x84\xb3\x2a\x60\x2f\x19\xe7\x41\x61\x27\xb8\x22\xa1\xb5\x81\x96\x37\xcc\x18\x05\x4d\x01\xa6\xcc\x19\xc3\x65\x2d\x2b\x46\x7a\x69\xa0\xd2\x9c\x09\x2e\x8d\xf4\x58\x3b\xa3\x85\x14\xca\x00\x54\x2a\x2d\xa5\x88\x2c\x02\x77\x38\x06\x2a\xa3\xa0\x9a\x75\x19\xb8\xb2\xd6\x02\x18\x64\x5b\x85\x3a\xaa\xb6\x96\x38\xba\x72\x66\x9c\xf1\x52\xa1\x36\x7a\x05\x46\x4b\x03\xd4\x6a\xe7\x79\xd3\x0c\x2a\xd8\xe0\x11\xec\x44\x70\x56\xe3\x0d\x45\xdc\x5a\x25\x0d\xb2\x70\x60\x91\x1d\x5e\x49\x22\x82\xf1\xca\x77\xa0\x18\xcd\xc6\x06\xa5\x41\xa3\x01\xec\x74\x10\x28\x57\x46\x19\x83\xa6\x8e\x33\xeb\xbd\x0c\x01\x23\x8c\x5b\xe3\x25\x37\x88\x6b\xac\xb1\x4a\x46\x69\x73\x9e\x7b\x27\x63\x45\xa0\xf0\x78\xc5\x09\xf3\x86\xf3\x60\x62\x4b\x38\x0b\x72\x51\x43\x9d\xe3\x21\xb6\x9a\x92\xd6\x38\x64\xd1\x80\xa1\x8d\x95\x93\x92\xa3\xc0\x7a\x74\x8d\x24\xf6\x87\xe3\x41\x5b\x64\xe1\x34\x57\x5e\x1a\xec\xbb\xa0\xb9\x03\xfb\x03\x85\xb3\x5e\x4b\xa7\xa1\xa7\x95\x70\x92\x5b\x2c\xb2\xb1\x56\x68\xec\x3c\xa3\x9d\xb3\x18\x69\xc7\x32\xad\xad\xf6\x1a\xa0\x3a\x78\xe1\xad\xaa\xdb\x42\x5a\x17\x34\xb0\xd0\xda\x5b\xcd\xb5\xaf\x1b\x4e\x28\x09\xb2\xa2\x95\xb1\xc6\xc4\x1b\x5e\xf6\xe5\xf2\xef\xe4\xd7\xc0\xac\x70\xe0\xce\x08\xf0\x92\x42\x10\xc2\x3b\x01\x5e\xa0\xe2\x3c\x78\xa3\x00\x0c\x79\xc0\x88\x8a\x71\x02\xa4\x51\x4e\x6b\x80\xa2\x79\xc0\xb7\x3c\x38\x82\x78\x8b\x7e\x16\xf8\x51\x22\x80\x8d\x97\x9e\x8b\x10\x1c\x82\xa1\x35\x9d\x36\xc4\xc1\xe8\xa6\x05\x78\x49\x8e\x19\x25\xb5\xf2\xc2\x82\x2f\x23\x03\x37\x26\x80\xab\xe6\x9c\x06\x77\x09\x2c\x9b\xf6\xd6\x5a\x2f\xcc\xc4\x33\x0e\x03\xa5\xc4\x08\xf0\x4a\x0a\xab\xbc\x50\x13\xcf\x94\x34\x30\x8a\x3b\xe2\x98\x34\xda\x69\x2f\x1c\x78\x75\x56\x0a\x0e\xee\xc7\x3b\x87\x96\xc2\xfb\x20\x27\x9e\x81\x27\xe7\xac\x83\xec\xa4\x94\x92\x7b\x07\x2d\xa4\xb4\x75\x52\x5b\x70\x40\x94\x51\xca\x05\xec\x0f\xab\x34\xe7\x4d\x21\xb4\x31\x9c\xa3\x36\x81\x45\xb0\x5a\xa1\xf3\x65\x2d\x94\x14\x85\xc5\x70\xa7\x2c\x14\x22\x04\x61\x5d\xd4\x25\xad\x05\xd8\x76\x6c\x08\x67\xad\xf2\x51\xe8\x2d\x58\x60\xdc\x1d\x66\x85\x00\x0f\x2e\x8a\xb7\x52\x52\x70\x11\x03\x31\x68\x27\x54\x68\x43\xdf\xe1\x2d\x32\x1c\x1c\xe6\x36\x18\xd7\x30\xbd\x15\x02\xe5\xd8\x80\x73\x8e\xd7\x02\x0b\x17\xbc\xb7\xa8\x09\x52\x1a\x2b\xad\x40\x23\x6f\xb8\xf6\xd0\x3e\xe0\xdf\x82\x9f\x2a\x1c\x41\x5d\x71\xda\x71\x14\x15\x13\xc0\x83\x09\x5d\x28\xe7\x1c\x1a\x33\xb2\x68\xc0\x9e\x59\xe3\xb4\x93\x06\x91\x8d\x37\x1e\x3a\x14\xba\x43\x6a\xee\x3d\xc6\xf8\x51\xc1\x28\xaf\x2c\x74\x9d\x72\x5a\x48\x2f\x91\x85\xe4\x3a\x58\xeb\xa0\x9f\x8d\xd4\xc2\xba\x40\x02\x0b\x4a\x2b\x34\xa5\x20\x13\x5c\xfa\xa0\x14\xe9\x17\x4c\x18\x61\x35\xd3\xc1\xba\xc0\x3d\x14\x5a\x4a\x18\x0e\x0d\x9a\x53\xe5\x9c\x50\x02\xc0\xca\x29\x61\x8c\x44\x07\x40\x6a\xa3\x55\x80\x21\x52\x59\x98\x3e\x40\xf1\xc0\xff\xf6\x5a\x48\x50\x5f\xe5\x8d\xb6\x3a\x28\x74\x5a\x42\x10\xca\x18\x6c\x0e\xc1\x41\x28\x45\x3c\x2f\xa5\xad\xd3\xc0\x42\xbb\xff\x97\xbd\xb7\xdd\x8d\x23\x47\x16\x05\x5f\x25\xb7\xe7\x0e\x30\x76\x2b\x79\xf8\xfd\x21\x63\x84\xdb\xa3\x7b\x06\x5e\xc0\xde\x3f\x07\x30\x16\x3d\x68\x2c\x52\x55\x29\xab\x4e\xa7\xaa\xea\x56\x95\x64\xd9\x5a\xcf\x63\xec\xef\x7d\xb6\x7d\x92\x45\x04\x99\x1f\xcc\xef\x2c\xa9\x67\xa6\x71\x0f\xba\x55\xae\xca\x24\x83\x41\x32\x18\x8c\x08\x06\x23\x04\xa3\x40\x01\x0c\x84\x2d\x01\x52\x37\x2c\x54\x0d\xc3\x02\x02\x1d\x13\x44\x3b\xa6\x28\x07\x46\xaf\x95\xe6\x21\xd4\xbc\xe6\x0e\x34\x06\xe0\x00\x86\x3b\x47\x8d\x7f\x0a\x6c\x01\x85\x4a\x47\x29\x65\x06\x84\x4a\x1f\x97\x5e\xa1\x74\x0d\x12\xa8\xa1\x06\x04\x0b\x10\xb4\x99\x52\x14\x9f\x32\x65\x8d\xd0\x98\x7f\x08\xb6\x05\xe0\x21\xc8\xb3\xac\xe4\x28\x59\x00\x12\x54\x1b\x81\x7c\x4f\x38\x4b\xad\xc4\x7b\x5f\xc6\x48\x2d\x90\xff\x2b\x0a\x8a\x1d\x42\xb0\x96\xc3\xa0\x21\xf7\x86\xfd\x93\x87\x81\xa0\x54\x78\xe2\xd4\x52\x72\xe3\x84\x1f\x35\x60\xd4\x9e\x90\x2d\x37\x8c\x6b\x3f\xc2\x30\x55\xac\xf9\x14\xa6\x43\x32\x67\x35\xb7\xad\xc2\xca\x6a\xa9\xc2\x5a\x60\xc2\x50\x89\xd3\x61\xa8\x83\x36\x70\xe1\x38\x6a\xad\xf0\x20\x60\x13\xd1\x0e\x0b\x0b\x6d\xa9\xe6\x28\x8f\x39\xca\xa8\x31\x9e\x4f\x53\x26\x9d\xb1\xad\xa7\x14\xc4\x61\x2a\x11\x44\xf9\x18\xf3\x2a\x70\x6d\x7c\x10\x34\xab\xe1\xab\xc3\xf9\x00\x19\x9f\x22\x08\xe3\xa8\x61\x38\x1f\x5a\x03\xfd\x52\xeb\x05\x3d\x66\x8d\x96\x38\xd1\x4a\x73\xd8\xf7\xa0\xb0\x66\x5a\x4a\x2c\x2c\x0d\x17\xd4\x72\x7c\xda\x43\x9a\x31\xcd\x02\x33\x74\x56\x08\x1e\xd3\x2c\xb0\x35\xca\x95\x36\x11\xcd\x02\x43\x35\x82\x62\x7a\x87\x9a\x66\x0d\x81\xea\x5a\xcb\x98\x66\x81\x81\x01\x4d\xaa\x88\x66\x0d\x48\xe7\x9c\xe2\x04\xd6\x34\x6b\x88\x62\xcc\x52\x27\x63\x9a\x35\x40\x92\x02\xf8\x76\x93\x68\x81\x3d\x53\xea\x38\x8f\x88\xd6\xc0\x16\x07\xab\x32\x26\x5a\xe0\xf0\x92\x19\x15\x52\x2c\x04\xa2\xb5\x98\xdd\x41\xc0\xce\xd7\x20\x5a\x0b\x0c\x4a\x71\x23\x62\xa2\x45\x07\x17\x66\xcb\x65\xe6\x89\xd6\x12\x29\x81\xfb\xc0\x26\x59\x11\xad\x25\x8a\x39\xc9\x95\x61\x11\xd1\x5a\x68\x17\x74\x7f\xd3\x24\x5a\x0b\x1d\xb2\xa0\x3f\x36\x68\xb6\x7e\xd8\x24\xd9\xa8\x68\x49\xb1\x96\x28\x4d\x2d\x45\x73\x41\x4d\xb1\x96\x48\x61\x9c\x55\x8c\x47\x14\x6b\x89\x60\x0a\x94\x4a\xd1\xa4\x4d\x4b\x40\x7f\xd0\x56\xcb\xe6\x53\x1c\x32\x6b\x99\xe3\x11\xc5\x62\xc6\x0b\xa1\xad\x8b\x28\xd6\x20\x39\x4a\xa6\x22\x8a\x35\xb0\x9d\x50\x2e\x6c\x4c\xb1\x86\x80\x72\x00\x30\x9a\x14\x6b\xa0\x9f\x92\x3a\x13\x51\x6c\x83\x30\x63\x39\x16\xf6\x56\xed\x60\xeb\x8c\x04\x59\x43\xb8\x85\x7d\x54\xaa\x86\x20\x6b\x88\x90\xa0\xfd\x5a\xd3\x14\x65\x0d\x91\x42\x33\x43\xb5\x8a\x44\x59\x43\x14\x37\x06\xf4\xf4\xa6\x28\x6b\x80\xe1\x48\x25\x7c\xce\x8d\x52\x94\x05\xb9\x80\x29\x46\xb5\x8e\x44\x59\x03\xab\x1a\x14\x5c\xde\x14\x65\x61\xcf\xa1\x9c\x07\xf1\xdd\x8b\xb2\x30\xf4\xce\x5a\x18\xfa\xa6\x28\x6b\x09\xd7\x0e\x96\x8d\x69\x8a\xb2\x96\x08\xc3\xac\x60\x3e\x13\x47\x29\xca\x02\x09\x0a\xcb\x8c\x8e\x45\x59\x20\x42\x65\x0c\x37\xac\x29\xca\x62\xde\x17\x66\x94\xd7\x85\x4a\x51\xb6\xf1\xb4\x29\xca\x5a\xec\xa7\xa0\xda\x35\x45\x59\x0b\xb2\x07\xe8\x42\xbc\x29\xca\x5a\x22\x60\x22\x69\x90\x00\x4b\x51\x16\xd3\xcf\x38\x89\x89\xc4\x6a\x51\xd6\x12\x6a\xb8\xc1\x3c\x65\xb5\xc8\x0a\x83\xe6\xb8\x11\x56\x47\x92\xac\x21\x46\x3b\xe0\x36\x4d\x41\x16\x66\x43\x30\x21\x14\x6f\x0a\xb2\xb0\x4f\x2b\xa0\x41\x1e\x09\xb2\xc0\x6b\x8c\xe1\xd6\x8a\xa6\x20\x0b\x34\x01\x6c\x8e\x8a\xa6\x20\x6b\x08\x07\x6c\x15\xc8\x8a\x0d\x41\x16\xef\x49\x68\x69\xbd\xe0\x5c\x0a\xb2\x20\x6d\xc2\x2a\xc6\x24\x85\x7d\x84\x19\xac\x05\x8a\x1b\xcd\xc4\x05\xde\xe4\xb1\x46\x4a\x3f\x51\x9c\x2b\x23\xa4\xbd\x40\x25\x9a\x09\xab\x90\xde\x18\x75\x94\x73\x73\xa1\x08\x93\x54\x31\xe5\xa4\xcf\xf1\x62\x24\x67\xfc\x42\x11\x2e\x38\x63\x06\x79\xac\x24\x8e\x2b\xab\xa8\xba\x50\x44\x70\x20\x0d\xc7\xfc\x9a\x14\xd2\x40\x73\x52\x52\x49\xa9\xdf\x01\xac\xb0\x9c\xba\x0b\x45\x94\x36\x12\xd6\xac\xe7\x0b\xa0\x86\x4a\x78\xac\x9d\x94\x56\xf8\x15\x69\xb9\x82\xa9\xb8\x80\xf5\x03\xfc\x48\x78\x7b\x83\x51\xd2\x28\xc0\xd7\x49\x65\x61\xa0\x4b\x1c\xa8\xe2\xe2\x02\x06\x40\x49\x27\xfd\xc2\xa3\xd4\x3a\x10\x5a\x35\x61\xda\x18\x63\x35\xea\x95\xc0\xf3\xb4\x86\xa7\x5c\x38\x23\x84\x11\x61\x24\xa4\xb0\x92\x5d\xa0\xbb\x96\x61\x4e\x7a\x4d\x56\x31\xca\x98\x82\xa7\x8a\x32\x0e\x2a\x39\x68\xbd\x96\x82\xc0\xdd\x7c\x8a\x0b\x47\x49\xce\x18\x6f\x15\xb6\x1c\x38\xa3\x85\xf6\x2c\x63\x0c\x6f\xb1\x03\xfa\x42\x73\x83\x26\x2f\x65\xb9\x13\xcc\x53\x3d\xd5\x5a\x4a\x0b\xed\x51\xa1\xa4\xe1\xdc\xcf\xb5\x50\x20\xbe\xc0\x58\x68\xeb\x40\xa2\x8e\x9f\x6a\xa7\x38\xa7\xda\x5b\x1c\xea\xc7\xa0\xd6\x19\xed\x4a\xdb\x02\xe5\x02\x27\x44\x38\x10\x34\xf1\x21\x57\x14\x28\x59\x11\x21\x98\xd0\xc1\xe8\xe1\x94\x60\x4c\xe0\x3c\x73\x01\x6c\x11\x7b\xa1\x60\x1b\xbf\x40\x5f\x3c\xc3\x8c\x0d\xfa\x38\x63\x02\xe7\x88\x3a\xca\x24\xe3\x26\x58\x4d\x98\xb4\x14\x1f\x4b\x0a\x02\x20\xf6\x58\xa2\xa6\x04\x44\x45\x81\x14\xa9\xd0\x49\x3f\x5d\x36\x33\xf9\xfc\x3b\x15\xd6\xa8\xde\x94\x7e\xc9\x4c\x7f\x82\xf6\x49\xc2\x9b\xef\x3d\x77\x28\x6f\xf3\x7c\x5d\xa5\x44\x8e\xae\x51\x02\x88\xcf\x9b\xd3\xdd\xc3\x4d\x7a\xbf\xdb\xee\x56\x77\x87\xdd\xfd\xef\x24\xaa\x64\x48\x47\x63\xca\x28\x92\xca\x61\xcc\x30\xc2\x95\x58\xd1\x44\xfa\x70\xd6\xc0\x4e\x80\xa7\xa3\x41\x59\x38\x4c\xda\x45\x60\x42\x25\xd1\x16\xfd\x63\x85\xff\x22\x1d\x06\xb5\xe2\xe8\x1b\xcc\x52\x06\x13\xe6\x6f\xcd\x32\xe2\xa8\x4b\x39\x31\x96\x13\x8d\xae\x2f\xda\x95\x21\xf0\xaa\xaf\x44\x2a\x1f\x24\x1a\x3f\x59\x48\x59\x12\xbe\x10\x47\xbd\x37\x37\x30\xb0\x14\xdd\x1a\xcb\x2f\x49\x88\xc2\x01\x9c\x9e\x28\x8c\xb7\x45\xf1\x92\x58\xf5\x9d\x58\x87\xef\xb4\x45\x7f\x94\x04\xa0\xaa\x84\x13\xc7\x88\x55\x02\x6f\x3a\x6b\x8d\xf1\xb9\xf1\x0d\xd1\xf8\x4d\x18\x74\xca\x01\xcc\xd0\x7d\x49\xe1\x7d\x43\x26\x5c\xf8\xae\x08\xd5\x06\xdd\x2d\x19\x27\x02\x63\x89\xfb\xfb\x64\x3e\x3b\x29\x4f\x09\xc3\x1b\x88\xca\xa5\xc0\xb8\x01\x22\xc5\xb3\x9b\xd4\xa7\x5f\x41\xbf\x52\x2b\x53\xc2\x43\xd2\xd2\x70\x92\xf2\x13\x28\x5b\xa0\xc3\x09\x2d\xea\xe0\xc4\xda\x5f\x00\xb4\x18\xa0\x04\x1d\xa8\x35\xc8\xb4\x09\x27\x8a\xaa\xe0\x5a\x0d\x83\xcc\x60\x37\xc0\x6b\x7f\x78\x7d\x5f\x35\xbe\x62\xda\x53\x46\x24\x9e\xc6\xb0\x84\x13\xa9\x24\xde\x8e\x02\x7c\x40\xb0\x04\xd1\x07\xbd\xfa\x5d\xc2\x88\x16\x3c\x7c\xc7\xde\x24\x34\x11\x78\x93\x12\x47\x50\x12\x4b\x31\xb8\xac\xd6\x89\xc2\xdb\x78\x42\x59\x74\x16\xd5\xc6\x12\x27\x39\xfc\x9b\x30\x10\x30\xd0\x51\x54\xa0\x03\x27\xd0\x1b\x91\x46\x97\x5f\x2d\x8e\x02\xe1\x46\x10\x06\x62\x27\xd0\x91\x21\x12\x83\xae\x3b\x83\x97\x64\x95\x41\xaa\x13\xa9\x22\x3c\x7c\x73\xc4\x70\x7b\xcd\x03\xbd\x62\x50\x53\x51\x86\xba\x3b\xe7\x46\xdd\xe0\xfa\xed\xbb\x62\x37\x5c\xb8\x75\xe7\xee\xf3\x6e\xf7\xb9\xc8\xc7\x2f\xdd\x85\x32\xff\xfc\x5b\x77\xa0\xec\x33\x20\x82\x15\x85\x25\x05\xeb\x17\x1d\xb9\x91\x88\x31\xd7\xb9\xd5\xfa\x2e\xb5\x44\xeb\x47\x41\x94\xd0\x77\x92\x38\x9d\x49\xc2\x15\x86\xc2\x29\x83\xdb\x11\xd0\x3d\x39\x31\xee\x91\x83\x84\x72\x87\x76\xf5\x15\x9a\x89\x53\x46\xf0\x95\xd0\x78\x35\x3a\x7c\xc5\x6c\xbb\xcd\x59\x93\xdc\xaa\xbf\xca\xca\x9b\x2f\xdc\x12\xc7\x90\xf1\xa0\x09\x8b\x15\x47\x57\x64\x64\x4e\x5a\xa5\xc4\x32\x91\x68\xf4\xae\xc4\xfb\xb5\x45\x0a\x4d\x02\x91\x72\x27\x57\x29\xb1\x5c\x10\x5c\xb6\xd6\x6a\x62\x0d\x06\xf9\xe4\x12\xbf\xe1\x99\x63\x82\x01\x72\xb9\xf6\x17\xf1\x52\x45\x98\x52\x29\x68\x7a\xee\x3d\x90\xa0\x79\xe4\x44\x68\x95\x39\xc2\x2c\xac\x48\xf8\xf4\x0e\xe1\x96\x70\x8a\x81\xed\x63\x67\x44\x21\x7f\xb2\x4a\x44\xe8\x1b\xef\xf3\x27\x08\xd7\x2c\x53\x98\x4c\x38\x8c\x17\x06\x18\x55\x4c\x7d\x32\x44\x58\x76\x97\x0a\x42\xb1\x29\x60\xb1\xac\x0a\x21\x0a\x4d\x49\x55\xc0\xcb\x14\xb1\x89\xbc\xe6\xfe\xf2\x97\x6b\xda\x3b\x5c\xe8\xcb\x9d\x49\xcc\x4e\x0a\x1f\xbe\x45\x11\xee\x49\x08\xa3\x0b\xee\xb3\x1e\xe0\x2d\x45\xcb\x65\xe2\x3f\xbd\x53\xb9\x26\x4c\x0a\x1c\x22\xec\xb5\xff\xf0\xaf\xaa\x9e\x6b\x86\x48\x25\x88\xd4\x8a\x18\x0e\xf8\x31\x74\x89\xc4\x7b\x89\xc6\xe1\x95\x13\x25\xfd\xf7\xe8\x62\xe2\x4f\x52\x08\x35\xd7\xdf\xaf\xbd\x4c\x6a\x97\xbf\x45\x8e\x65\xff\xf9\x65\x32\xe1\x4b\xed\x35\x31\x5e\x78\xc0\xa5\x6b\xbc\xd2\xb0\x23\x56\x54\x6f\xb6\x2b\x51\x54\xeb\x3f\xbf\x9c\xa6\x1d\xb7\x1a\x85\x06\xbd\xb6\x1a\x65\x62\x97\xad\xc6\x8b\x91\x3a\x23\xce\x5a\x50\xaa\xed\xa9\x05\xcf\xe6\xb9\x69\xb5\x3d\xa0\xfe\xf3\xcb\x69\x9e\xcb\x13\x0c\xd3\x6b\x79\x2b\x35\x87\x7c\xb1\x53\x50\xb3\xf2\x62\x2f\x9e\x66\xe5\x12\xda\x0c\x97\x9a\x46\xa9\x29\x7f\x9a\xff\xfc\x72\x3a\x6f\x27\xfa\xb2\x59\x9f\xee\xfe\xfc\x03\xe3\x3f\x24\x77\xf9\xe6\xf3\xdd\xe9\xcf\x3f\x30\xf1\x0f\x90\x5e\x35\xa8\x90\x89\x00\x49\xe4\x13\xd1\xda\xdc\xa5\x8c\x18\xf5\x28\x08\x13\xb6\x00\x3d\x30\x41\xaf\x13\xf8\x96\xe2\xb7\x6f\x1f\x41\xb7\x43\x3e\xee\x42\xb9\x3b\xa8\xf2\x09\x1f\x14\x69\x5d\x32\xad\xab\x37\xd9\xd6\xed\xed\xed\x59\x7e\xe6\x1e\x53\xdf\x0a\x23\x56\x4a\x0c\x03\x2d\x3e\x30\x4a\x18\x3a\x7f\x18\x4c\xac\x0b\x62\x36\xf3\x51\x23\x24\x5e\x4b\xd1\xfa\x91\x11\xe9\x44\x89\x38\xf6\xf5\x83\x20\xdc\x60\xbe\x73\xf4\x43\x97\xe8\x3d\x03\x60\x15\x26\xa7\x47\xa9\x0d\x44\x3c\xa9\xf5\x27\xac\x10\x0b\x45\x7f\xe5\xff\xae\xcf\xea\x84\xc0\x7b\x2c\x68\xa4\xfb\x40\x0c\x86\x6a\xb1\x5a\x80\xe2\x0c\x3b\x9a\xe0\x05\xc7\x88\xbd\x4e\xa3\xaf\x3b\xc8\x10\x20\xcf\x97\x63\xca\xc4\xb7\x8f\x86\x48\x14\x63\x55\x35\x3b\x18\xb9\xc1\x59\x43\x9c\xc6\x53\x5c\x0c\x20\xe8\x3e\xc0\x4e\x04\xdb\xba\x4a\xaa\x2a\x71\x27\xfe\xe2\xfe\xca\xce\xea\x44\x05\xb9\x08\xd9\xee\x9d\xc6\xcc\xf3\xa1\xe5\xb4\xc2\xe6\x83\x6f\x99\x4a\x98\x31\x0c\xb2\xa6\xd4\xb7\x8f\x78\xb5\x09\xab\xa7\x55\x6f\xa1\x36\x7a\x35\xb9\xa4\x82\xe9\xea\x6e\x7f\xa8\xea\x34\xbb\xf0\x3f\xb4\xf8\xe9\xaf\x7f\x7d\xc1\x3c\x20\xa5\x7c\xf0\xf3\x0f\x04\xe4\xb1\x44\xed\x03\xe5\x6e\xdc\xbd\x95\x14\x9f\xd0\xd5\xc9\x93\x14\xd2\xc4\xb7\x8f\x9e\xd4\xfc\x44\x7a\x0a\xe4\x44\x60\x16\x9f\x92\xac\x1a\x2b\xcb\x13\x60\x51\x53\x64\x2c\x7d\x50\xa6\xfe\x32\x77\x1b\x8f\x18\xcc\x99\x7b\xf8\xaf\x0f\x37\xf9\x61\x9b\x9f\xf2\x05\x77\xf0\x67\xd5\x19\xd8\xd1\x67\xd5\x1d\xde\xd8\xfb\xaa\xcf\xde\xdf\xfb\x2a\xd7\xcf\xa6\x77\xfb\x6e\xd9\xc1\x4d\xbf\x5b\x34\xde\xfb\xbb\xef\xa7\x21\x8c\x48\x02\x8d\xc2\x53\x81\xe2\x1b\x45\xdb\xb2\x43\xe3\xd5\x3c\x11\x22\x04\x9d\x5f\x1d\xd6\xc3\x62\x45\x0d\x74\x9e\x74\xd1\x98\xa4\xd7\x12\x32\x7a\xe6\x7d\xb1\xac\xd1\x03\x63\xb1\xc8\xd1\x03\xa3\x05\x7b\x86\x00\xd2\x2d\x3c\x25\x87\xd4\x35\x7e\x47\x81\x12\x0c\xa1\x8c\x25\x9c\xf9\x1b\x87\x82\x6a\x22\x9c\x21\x46\x39\x9f\xfe\x09\xef\x93\x6a\xa6\x0b\x43\x94\x8f\x3b\x27\x57\x44\x1a\xd0\xca\x30\xd3\x1a\xe1\x68\xaa\xc2\x68\x04\x50\x4c\x12\xad\x5c\x0a\x2a\x9c\xcb\x30\xa5\x32\x7e\x84\xab\xc8\x82\xa2\x2d\xc9\x99\x02\x37\x2d\x99\x1a\x22\x05\x96\xc3\x9b\x69\x9a\x55\x41\x01\xac\xf6\x16\xad\x02\xf4\x6c\x54\xbc\xc5\x4f\xac\xbc\xdc\xc5\x4c\x99\xb4\x22\x5c\xf2\x5e\xa5\x84\xa3\x01\x4f\x62\xa4\xdd\x94\x68\xc7\x09\xd3\xf2\x83\x24\xca\x80\xda\x2a\x31\x6e\xbd\xc4\xf0\xa5\xbe\x6b\x06\xdb\x48\x7c\x1b\x88\x0c\xec\xd8\x02\x63\x9d\x72\x6f\x0f\xc4\x78\x59\x14\xc3\x95\x3a\xeb\x3b\x86\xba\xa9\xfb\x76\x0f\x9a\xaa\x92\xa9\x25\x4c\xaa\x3b\x3f\x26\x5c\x09\x42\x0d\x91\xd4\x12\xee\x14\xfe\x2b\xb5\xcc\x88\x34\x12\xfe\xaa\x78\xfd\x0a\x2f\x74\x63\xe8\x61\xbc\xee\x6b\xf0\x7a\x2a\x46\xf3\xc3\x20\x7d\xf5\x07\xb7\xe5\x37\xc9\xeb\x17\x58\x09\x5f\xd1\xea\x95\x8f\x47\xa8\xca\x67\xdc\x95\xcf\x30\x0e\x02\xc6\x46\x16\x0a\x6f\x41\xab\xfa\xfa\x30\x5e\x7b\x74\x78\xf9\x9c\xb3\xaa\x42\x19\x3f\x8c\x6a\x51\xb6\xc3\x43\xf0\x64\x0f\x0d\x7f\x69\x8f\x9f\xbf\x49\x0f\xa3\x8f\x17\x29\x9d\x4b\x89\xa2\x18\x30\x4e\xa4\xc4\x20\x75\x30\x76\x17\xc2\x79\x72\x25\xe1\xaf\xba\xfb\x8e\x61\x23\x31\x10\x95\x24\x94\x63\x94\x42\xea\x6f\x40\xfb\x38\x90\x21\xc4\x30\xa2\x85\x71\x4a\x7d\xd0\xcf\xb2\xb7\x18\xea\xb8\xc0\xf8\xd0\x65\x48\x02\x26\x31\x64\x1c\x11\xc2\x12\x6b\x30\x50\x06\x43\xb9\xc0\x64\x8a\x48\x25\x12\xff\x59\x59\x7c\x14\xca\x1b\x4c\x17\x98\x6a\x45\x3b\x1f\x23\xae\x6c\x8f\x85\xe6\x7c\xe8\x44\x81\x11\x8e\x1a\x08\xf8\x57\x85\xbf\xc7\x2a\x45\x46\x04\x23\xa2\x0a\x1a\x41\x31\x7c\x01\x5f\xe1\x3d\x66\x8e\x21\xe5\x84\x73\x44\x48\xa2\x39\xc6\xae\x04\x01\x0d\xb3\x3b\x64\xc4\x58\xed\x73\x5e\xfb\x45\x82\xf1\x34\x15\x06\xd8\x94\x21\xc8\xa6\x25\x54\xa8\xf2\x85\x0f\x57\x6b\x30\xa2\x04\x93\x8c\x30\xa5\xf0\xe2\xa2\x2f\x2e\x7d\x71\x1c\x5c\x81\xd4\x95\x04\xa4\x85\x8f\xe6\x69\xc2\xd8\x89\x46\xb8\x68\x53\x3f\x57\x3a\x04\xfa\xd0\x84\x7b\x58\x42\xf1\x8c\x48\xee\x13\xa8\x87\x9b\xe7\x0c\xc9\x5d\x18\x05\x7f\x55\xcc\x11\x83\x6d\x4a\x63\xd1\x2e\x5f\x12\x3c\xc7\xdb\xb6\xf6\xd8\x47\xe0\x45\x19\x8b\x52\xad\x9a\xf1\x96\x91\x94\x91\xd0\x78\x19\x8a\xd6\x11\xd7\xbc\x81\xcd\x90\x70\xd0\xdc\x87\x77\x58\x31\x1b\x05\x37\x8f\x69\x39\x29\x18\xd8\x42\xf3\x4c\x62\xa8\x34\xff\x59\x05\x15\xe1\x29\xd1\x12\x08\x83\xf0\x46\x2c\x06\x0f\xa2\x42\x24\x04\xcc\xad\x3e\xd0\xf6\x8b\x01\x94\x7d\x60\x4e\xbc\x84\x8c\x01\x19\x31\xfb\x88\xf4\xbf\xa0\xf7\x0c\x58\x90\x11\x1c\x06\x2a\x03\xfd\x27\xc1\x8f\x92\xee\x38\x97\x30\x71\x49\x64\x51\xc3\xa8\x7c\x2c\x25\x42\x63\x4c\x65\x87\x16\xbb\x55\x08\x59\x5a\x45\x22\x65\x2c\xac\x8a\x80\x48\x88\x24\xac\xb9\x85\xbf\x3a\xee\xa1\x8f\x85\xcc\x1d\xe1\xae\x5e\x6f\x40\x32\x18\xaa\x84\x13\x66\x24\xf4\x18\x03\x5c\x70\xcd\x89\xa6\x38\x15\x42\x10\xea\xf0\xce\x7d\x88\x64\x81\xc1\x5c\x7d\x48\x52\x8c\x93\x28\x31\x64\x30\xc3\x05\xa0\x1c\x61\x06\xe8\x9e\xa2\xbb\x4a\x45\xf9\x40\x7a\xe6\x98\x96\xf4\x98\x96\x44\x19\xc5\x43\xf6\x94\x21\x80\x30\x3a\x64\x84\x0b\x1a\xa3\xaa\x20\x09\xe0\x9d\x7f\xa7\x70\x68\xc2\x34\x69\xaa\xc2\x5a\x41\x4a\xc1\x86\x90\x64\x6c\x45\x59\x81\x77\xc1\x72\x41\x9e\x66\x0a\x42\x25\x12\x8f\x58\x81\xa6\x81\x61\xe0\xfd\xbd\x7a\x06\x9b\x80\xc4\xe0\xf0\x45\x28\xad\x34\x2c\x4b\xf4\x9b\x69\x2c\x4b\x7c\xf1\x18\xf6\x40\x9c\x64\x2e\x09\xb7\xdc\x73\x75\xc0\x4e\x6b\x9e\xc5\xc3\x8e\x68\x70\x8e\xf1\x02\x02\xe3\x90\x69\xc9\x5c\xaa\xc0\xac\xf5\x87\x89\x3e\x98\x2c\x3c\x81\x33\x2b\x32\x45\x0c\xd5\x89\xff\x0c\x63\xa5\x29\x90\x1c\x06\x22\x55\x5e\x9b\xd5\xa6\xe6\x6f\x12\xaf\x3a\x4b\x20\x28\xe6\x4c\x19\xb7\xc5\xef\x38\x1e\x03\x11\x05\x53\xf6\x18\x88\x16\x06\x69\x60\xb4\xbe\x06\x86\x74\xae\x76\x27\xa7\xc2\x66\xc0\x30\x06\x8c\x96\x77\x25\x2f\x46\x8e\x04\x65\xa4\x56\x7e\x7b\x0b\x0b\xa2\xda\x33\x30\x60\x62\xd8\xa5\x42\xc0\x64\x2d\xcb\x2d\x27\x6c\x38\xbc\xdc\x6f\x44\x78\x61\x55\x58\xeb\x4a\x11\xa8\x8b\xbb\xae\x73\x19\xc6\xb1\x64\x46\xd4\x54\x88\x91\xad\x57\xe5\x4e\x21\x02\x51\x84\x4d\xce\x8f\x42\xd2\xa0\xcf\x8a\x6c\xc2\x86\x1b\xbe\x04\xfe\x8f\x2c\x11\xbe\x70\x4c\x93\x0e\xbb\x3b\x32\x0b\x98\xf9\x14\x36\xf4\x0c\xe3\xaa\x86\xd0\xd2\x28\x38\x00\x39\x28\x8c\xd5\x5d\xee\x64\x7e\x3f\x57\xe5\x26\xab\x00\x69\x03\x7f\x31\x89\x01\x6b\x6f\x74\x86\x25\xd5\x36\x5e\x84\xa0\xc5\x54\xa1\xc8\x94\x34\x03\x3b\x72\x0c\x8a\xc0\x81\xb8\x65\x15\x39\xdc\xf9\x2f\xa1\x93\x20\xa8\xa8\x95\x5f\x4b\xd0\x55\x85\x41\xaf\x94\x26\x46\x63\x67\x32\x8c\x72\x2a\x78\x85\x0f\x92\x38\x53\xd2\xd3\xae\x2d\xe9\x85\x35\xb7\x60\x91\x96\xfb\x48\x59\xc6\xcb\x22\x85\x5f\xa9\xb0\x92\x14\x06\x6f\x56\x65\x08\x67\xc0\xd6\x58\x9b\x0a\x62\x98\x26\x1c\x83\xd6\x9a\xba\xab\x18\x50\xc8\x12\x8b\x01\x3c\xea\x4d\x11\x83\x83\x08\x05\xa4\x2c\x31\x04\x36\x2e\x44\x6e\x57\xb5\x0c\x85\xcb\xdb\x84\x18\x0f\x0c\xc3\x8d\x4a\x0b\x6c\x43\x00\xcf\x0f\xd9\x89\xa5\xdf\x39\x7c\x9c\x54\x14\x7e\x70\xb8\x02\x71\x85\x68\xf6\x38\xb3\xd4\x64\x9c\xe0\x61\x1f\xab\x77\x3e\xe1\xb0\xa1\x56\x10\x72\x55\x85\x2e\x57\x41\xd8\x61\xc2\xc2\x5f\x45\x8e\xe1\x45\x73\xfd\xb1\x8a\x17\xb4\x16\x60\x15\xaa\xb9\x21\xd6\x19\x5c\xc2\x29\x86\x89\x47\x24\x7c\x38\x31\x10\xba\x05\x10\x1f\x91\x75\x84\x57\xe9\xf7\x24\x0c\x2a\xe2\xe3\xaa\x20\x41\x0b\x0c\xb7\xe2\xe5\x01\xe7\xcf\x9d\x41\x7e\xc6\x3f\x10\x81\x7c\x5c\xed\x55\x88\xa2\xaf\xfd\x6e\x80\xb2\x84\xf1\x89\x28\x58\x1d\x40\x1f\xe3\x8a\x04\xe9\xc4\x0b\x23\x3c\xfc\x59\x11\x78\x8d\xc3\x55\xac\x42\x68\x71\xc3\x08\xd5\xae\xc0\xf8\x2e\x54\xac\xb0\x0c\x88\x11\xc2\x12\xe1\x24\x51\x5a\x10\x10\x33\x38\x37\xf0\x57\x11\x20\x47\x91\x62\xe5\xe5\xde\xa4\x92\x7b\xab\x95\x12\x2f\xa1\xc6\x52\xb9\xf3\xb1\xf6\x71\x15\x58\xa0\x40\x0e\x9c\x53\x72\x5d\x9f\x26\x79\xcb\x99\x05\xa4\x98\xe7\xb0\x25\xf3\xb1\xe5\x6e\xaf\x7d\x14\x14\x2a\x4c\x10\x33\x2c\x1e\x82\x63\xc4\x56\x14\x4d\x98\x8f\xed\x66\xca\x20\xdd\xca\xb1\x8c\x49\x0c\x98\x8a\x9f\x55\xa8\x13\x87\xfb\xda\x63\xc5\xfb\x7c\x58\xef\x32\x34\x3c\x2e\x44\x1f\x14\x3c\x23\x92\x59\xf8\xab\x48\x07\x09\xc0\x10\xcb\xac\x0f\x4e\x5b\x46\x47\xf1\x62\xd5\x27\x49\x2c\xc7\x60\x34\x38\x56\x1c\xf7\x24\xa4\x5f\xcf\x95\x14\x87\xbf\x8a\x38\x30\x16\xd3\x0a\x48\x08\xe3\xf3\x08\x4d\x38\xc6\x59\x06\x5d\xe5\xb1\x14\x7f\xfc\xa8\xa1\x22\x11\x56\xb1\x14\x28\x45\x13\x45\x05\xfc\x35\x36\x37\x58\x0d\x8f\xa5\xd0\x05\x34\xa5\x70\x87\x80\x79\xc4\x18\x3b\xa0\x4a\xf9\x11\x34\x30\x6f\xfe\x86\x15\x8a\xb0\xc0\x52\x9d\x41\xb3\xb1\xa7\x37\xcf\x23\x4b\x2e\x1c\xb6\x3c\xcd\x41\x50\xd2\x55\x04\x63\x1f\xd7\x94\xa1\xb8\x8e\x54\xc4\xb4\x43\x12\x02\xa1\x5f\x19\xf4\x50\x2b\xbc\x0c\xc1\xca\xd0\xcf\x15\x48\x14\x07\xe0\x5f\x2b\xbd\xe8\xdd\xa5\x37\x1c\xd9\x55\x25\x0d\x7a\x3e\xce\x9d\x0e\x81\x78\x31\x98\xbb\x16\x95\x83\x03\x10\xa5\x8f\xf0\x64\x89\x62\xa0\x9b\xd6\xa1\x76\x11\x18\x10\x2f\x26\xc8\x30\x3e\x24\x54\x58\x24\x18\xee\x09\xd8\x84\x86\xbf\x0a\x54\xc9\x26\x82\x18\x5c\x0a\xc1\xd5\x8b\xa2\x22\xd1\x8c\x28\xee\x8f\x44\x9b\x53\xcb\x44\x8b\x15\x04\x4e\x20\x3d\x79\x3b\xbc\xcf\xeb\xc5\x4b\x2d\xfc\x92\xf2\x9c\x46\x95\x52\xae\x08\xb4\x4f\x4b\xe6\x5e\x46\xb9\x67\x55\x11\x13\x8a\x88\x72\xc1\x78\x06\x91\x61\x26\xfb\x84\x87\x9c\xec\x9e\x5f\xa2\x99\x7d\x15\x76\x74\x51\x6e\xe9\x32\x6c\xe9\x98\x01\x82\xb3\x9e\xcd\x1e\x39\x3d\xc6\xda\xf7\xca\x7d\x88\xd3\x22\x81\xe4\x7d\x20\x30\xc9\x60\x2a\x18\xba\x6e\x54\xf4\x08\x4c\xe5\x11\xf3\x14\xa0\x36\x08\xf4\x4c\x84\x56\xc8\x5f\x34\x1a\x2a\x98\xe5\xc4\xf8\x24\xf8\x52\x66\x8a\x28\x94\x9a\x6a\xfe\xe1\x30\x76\x9a\x95\x85\x1f\x31\x65\x56\x63\x0a\x94\x68\x2b\x50\x19\xe1\x46\xc2\x5f\x63\x0f\xf5\x73\x80\x6c\xd8\x60\x54\x1b\x98\x07\x83\xe1\xbf\x82\xed\xa0\xa2\x4b\xe7\xc2\x86\xed\x7f\x1a\x1f\x48\x49\x5a\xdc\x75\xb9\xc0\x60\xe8\x85\xe7\x47\x3e\x05\x43\xc9\x16\x3d\x2e\x5e\xb0\xc9\x30\xde\x34\x0b\x2a\x18\xca\x15\x5e\x18\xf2\x02\x4f\xac\x28\x32\xf9\xed\x3e\x05\xde\x2d\x52\x58\x46\x05\x81\x7d\x13\xe8\x1d\x78\xa2\x86\x1f\xa8\xc0\x29\xa1\xee\x52\xa2\x61\x5c\x25\xe7\xf0\x13\x7b\xa6\x41\x77\xe0\x50\xfe\xdb\xbd\x24\xdc\x89\x94\x11\x8c\x2d\x0e\x84\x68\x1c\xea\xa7\x0e\xd4\x55\x1c\x56\xc9\x79\x91\x7a\xcb\x09\x01\x41\x59\x58\x0e\x7f\x35\xb1\x18\x2f\x49\x0b\xfc\xab\xa6\xc4\xfa\x0d\xad\xc0\xd0\x8b\x29\x23\x4a\x78\x0e\x86\xcb\x1e\xb0\xb1\x52\x12\x74\xb8\x25\x42\x98\x6f\xf7\xe8\x8d\x20\x53\x4c\x77\xe3\xa5\x60\x46\x04\x75\x3f\x61\x18\xa7\xc4\x7f\x56\xf6\x23\xe5\x12\x43\x80\x05\x31\x6e\x12\xef\x7b\x51\xb3\x0a\x1e\xa2\x5e\x1a\x68\x3f\x8b\x14\x15\xe0\x9e\x4e\x00\x72\xdf\xfc\x95\x7a\xbc\x1d\xa4\x8a\x10\xc6\x4c\xf2\xea\x8b\x8f\x3d\xc5\x09\x57\xd8\x65\x15\xd2\x41\x62\x97\x61\xfb\xd3\x3a\xee\xb1\xdf\xe4\xa9\xe4\x1f\x2c\x71\x52\x27\x96\x38\x0a\x7a\x2c\xc7\x18\xe6\xdc\xc9\x8a\x13\x02\x93\x06\xfd\x1f\xa6\x90\xf9\x60\xd1\x44\xba\x0f\x96\x70\x93\x38\x62\xa4\xcb\x24\x9e\xaa\xf9\xcf\x32\x9c\xa5\x90\xe8\x16\xe5\x0a\x8e\x81\xfd\xbd\x00\xc1\x2d\xe1\x15\xbd\x40\xfb\xa0\x25\x46\xfd\x0d\x4a\xb6\xe2\xec\xdb\x47\x43\x2c\xde\x14\x50\x5a\x14\xdc\xdb\xfe\x30\xea\xa3\x25\x41\xe4\x01\xe6\xe3\x24\xd2\x91\xa4\x0c\xfe\xea\xad\x50\xc2\xc8\x14\x29\xb1\x0a\xf3\xa5\x98\xcc\xc7\x1e\xf3\x9f\xa5\xee\x62\xbc\x57\x0c\x50\x15\xc3\x58\xf0\x0e\xd6\x89\x40\xf0\x9e\x2c\x61\x88\x31\xc1\x27\x60\xea\x53\x7f\x80\xa4\x86\x9b\x4d\xc8\xed\x89\xae\x75\xc6\xbf\x40\x7f\x3e\x68\x1a\xf5\x14\x81\xa1\xbd\x30\xd6\xaa\x53\xb0\xaf\x39\x07\x7f\x95\xae\x8c\xdb\x87\xc2\xf0\x71\x20\x03\xa3\x64\x28\x84\x0d\xb6\x35\x10\x68\x1c\x1e\x76\x32\x3c\x82\xa2\x4c\xac\x88\x54\x0c\xd6\xad\x13\xa8\x23\x20\xb1\xc3\xb7\x6f\xf7\x82\x18\x81\x09\x78\x61\x3a\xa4\xc6\x9e\x36\xb4\x34\x81\x09\x3d\x35\x8e\x88\xb5\xb0\x3c\x38\x92\x9a\x83\xbf\x72\x30\x51\xf6\xc3\x6d\x5a\x3a\xf8\x8b\x9e\x53\x89\xb3\xa0\x04\x41\x26\x6c\xd1\xf3\xb1\x0a\x7a\x29\xa9\x83\xa1\x8e\x5c\x7d\xb8\xfe\x1f\xfe\x28\x75\xce\xe1\x57\x9f\x55\xbb\xed\x32\x76\xbf\x59\x1d\x76\xc7\xdd\xed\x69\xdc\x6b\xac\x2e\xf6\xcf\x77\x1c\x13\x89\xb8\x03\x89\x81\x3d\xe2\xe7\x7b\xf1\x49\x44\x07\x84\x42\x09\xae\xda\xee\x49\x92\xbb\x44\xbc\xe7\xa1\xce\x5d\x8a\xff\xc4\x15\x2d\xfb\xcb\x35\xd5\x51\x45\x91\xf8\xaa\xbe\xbd\x4f\x9c\xbd\x17\x8f\xbe\x6a\x74\x36\xac\x7e\xd2\x7f\xa5\x7d\x2d\xfa\x7f\xde\x73\xa8\x1a\xda\xec\xa9\xff\xd7\xbf\xfe\xe5\x27\x6a\xe7\xce\x6a\xcf\x54\x9c\x79\xb0\xb9\xdd\xdd\x67\x33\xb2\x26\x96\x67\x33\x53\xc5\x07\x8e\x33\xa7\xaa\x0d\x9f\x64\xb6\x6a\xce\x3e\xc4\x6c\xd5\xc3\x9f\xd3\x47\x97\x51\xb1\xc1\x53\xcb\xa8\x54\x7c\x60\x19\xbd\x1a\xad\x37\x72\x4c\xe9\xcb\xb5\x8f\x1d\xfd\xd3\xf3\x9c\x96\xb0\xee\xbc\x83\x45\x3f\x70\xaf\x75\xa6\x18\x4f\xc3\xe2\xe3\xc4\xb8\xfa\xe2\x93\xc4\xb8\x7a\x0d\x71\xc6\xf9\x61\x54\x6e\xea\xe8\x10\x0b\xbf\x46\x44\x20\x3d\x3b\x22\xd0\xe7\xde\x8b\x07\x0d\x7e\xda\x38\x4c\x44\x06\xc3\xfe\xea\x9c\x36\x3f\x94\x51\x84\x94\x76\x3e\x38\xc9\x23\x27\x4e\xa3\x5f\x09\xd5\xe8\xa1\xee\x78\xca\x7c\x2e\x6b\xeb\xe4\xa3\x21\x46\x16\x78\xc8\x83\xe1\x5e\x8c\x4d\x25\x91\xe6\x93\x24\xd2\xde\x61\xd2\xc0\x6f\x91\x33\x49\x88\x8c\xf9\x97\x9f\x2c\x2b\x0f\x28\x9d\x33\x09\xfd\x40\xb8\xc4\x34\xe2\xac\x50\x78\xe8\x08\x72\x19\x3a\xad\xeb\x94\x68\x89\x1e\x44\x3e\x69\x10\xa6\x18\x72\xb6\xe0\xa8\xec\x30\xa8\xf2\x88\xfe\x2d\x85\x24\x82\x49\xf4\x0d\x65\xa8\x8a\xb3\xc9\xa6\x29\x4f\x1c\x51\x12\xea\x1b\x74\xd1\x15\x12\x1b\xb1\xf6\x93\x25\x54\x15\x98\x34\x49\x49\xfb\x81\x70\x8b\x3b\xbb\x2d\xd1\x7c\xb4\xc4\x71\x5d\x18\x62\x39\xf3\x5b\xfe\x63\x0a\x43\x81\x4d\xfe\xdb\xe7\x79\x5c\xba\x45\x16\x67\x72\x68\xd8\x93\xe7\x33\xe8\x89\xd2\x03\xfc\x79\xa2\xd6\x30\x7b\x8e\x2b\xce\xe6\xce\x71\x35\xf8\x35\xcd\x9b\x9b\xa5\x06\x59\x73\xb3\x50\xcc\x99\x9b\x6f\xc6\x6a\x8d\xf0\x65\x2c\xd6\x66\xcb\xf8\xf0\x3c\xae\x0c\x55\xe7\x31\x65\x1c\xaf\xd7\xe2\xc9\xd1\xe0\x2f\x66\xc9\x51\xed\xc5\x1c\x39\xaa\x5d\xc1\x9b\xc1\x8f\x9b\xc5\xa6\xd8\x31\x4a\xb1\x67\x73\xe3\x9b\x57\xcc\x32\x67\x85\xc0\x2b\x4c\xa0\x1f\xf8\x58\xbb\x1a\x13\xa4\x49\x4d\x14\x2a\x28\x18\xb8\x5f\x3a\x0c\x4d\x6f\xf1\x45\xca\x51\x93\xc0\x78\xc5\xa8\xce\x28\x85\x47\x18\x26\x65\x84\xa3\xe9\x09\x14\x3c\x23\xf0\x02\x90\x24\xd4\x9a\xea\x5f\x68\x8f\x08\x95\x4a\xe2\xf0\x70\xdc\x29\x19\xbe\x0b\x62\xfd\x7d\x18\x87\xfa\x05\xb3\x26\x11\xe8\x21\x82\xd7\x6f\x13\x41\x1c\xb5\x8f\x78\xc9\xc8\xae\x52\xee\xf3\x5b\x60\xa8\x60\xa3\x71\x37\x08\xdf\x38\x31\xfe\xe2\x11\xc7\x58\xd7\x42\x32\xbc\x19\x20\x30\x47\x27\xde\xb3\x62\x41\x73\xf1\x11\xda\x39\xe8\xb9\x1a\x2d\x31\x96\x68\x3c\xf1\xf6\xe1\xb8\x8d\x57\x9c\xb4\x90\x44\x4b\xf4\x12\x64\xd4\x11\x8d\x31\xd2\x89\xb2\xd1\xcd\x0c\xf7\xef\xf0\x5f\x24\x59\x6b\x62\xa8\x45\x3d\x49\x3c\x62\x3c\x01\x57\x30\x62\xbc\xd3\xe7\x27\xe8\x37\xaa\x77\x46\xc1\xef\xa1\xfc\xa0\x2f\x81\xf3\xd7\xbf\x3a\x4b\x67\x87\x0d\x8e\xc9\xb1\xad\x7c\xed\x7e\x3d\x65\xe3\x7a\x17\x96\xf8\xe7\x93\xb3\x20\x14\x6f\x88\x28\x6e\x33\xff\xdd\x7f\xd2\x84\x51\x8a\x91\x96\x4d\x12\x3f\xa7\x94\xa6\xf8\xfc\xdb\x47\x26\x09\xd3\x3a\x31\x44\xad\x40\xc2\xc0\x93\x0d\x0d\x2a\xb7\xc4\x7f\xb9\xb0\x45\xc8\xe6\xa6\xb8\x4f\x9f\xa8\x2c\x26\xed\xe5\x46\x10\x6e\x31\x53\xe3\x1d\x68\xda\x2b\xc2\xfc\xe1\x1f\xe7\x9a\x30\xca\x7d\xd4\x67\xab\x1e\x89\x53\x1a\x2b\x62\x54\x71\x0b\x60\x53\xc2\x85\x81\x2f\x77\xa8\xa9\x37\xec\x24\x34\xc5\xef\xee\x11\x9a\x16\x68\x5a\xe3\x26\xd8\x4d\x55\xe9\x31\x62\x59\xc6\xf0\xc4\x9b\x55\x79\x80\xf1\x46\x11\xfa\x39\x13\x2e\x39\xfc\xc1\x63\x86\xc0\x18\x2f\x30\x53\x24\x1e\xf4\x47\x0e\x33\x98\x67\x91\x70\x03\xeb\x90\x72\xff\x81\x8f\x05\x9a\xe7\x30\x4a\xdf\x27\x43\x8c\xc0\x6b\x50\x68\x73\x44\xd7\x2c\x68\xc0\xe2\x97\x3b\xf4\xa9\xf9\x76\x8f\x37\x79\x31\xa2\xa2\x5d\xe1\xca\x85\xa5\x46\xa5\x83\x81\xf4\x82\x0d\x11\x4e\x3e\xa6\x30\x74\x15\x2c\x81\x41\xe7\xb5\xcf\xe1\xc7\x95\x46\x60\xba\x31\x0f\x9c\x30\xcc\xc1\xc1\xe1\x6d\x81\x92\x1e\x5e\xbd\x0b\x09\x66\x31\x5d\x03\x53\xe8\x32\x4e\xa4\x52\xc4\x59\x15\xbe\xf9\xfc\x31\x46\x11\x86\x9f\xfc\x91\x81\x58\xb7\x42\x67\x31\x86\x82\x1d\xe1\x36\x25\x46\x1b\xff\x6f\x99\x14\x15\x78\x00\x3a\x06\x08\xe0\x2e\x8a\xa7\xc4\x70\xd5\xa6\x2a\xf4\xaa\xd0\xa9\x22\x82\xf1\x6f\x1f\x2d\xa1\x18\xef\x07\x8f\xc6\xd0\xb2\xea\xe3\xf2\x2b\xfc\x17\x53\x52\x52\xe0\x64\x92\xe3\x7c\x72\xa9\x08\x1a\xfa\x41\x76\x23\xcc\x8a\x82\x11\x4d\x7d\x0a\x90\x95\x3f\xd2\xc1\xf3\xaf\x3a\x6b\x07\x1e\x03\x64\x44\x72\x0b\x7f\x7e\x5e\x91\xd7\x52\x76\xe7\xc9\x84\x70\x3c\x8b\x21\x02\x48\xce\x38\x3c\x7c\xe1\xc8\xbd\x30\x50\x07\x41\x77\x2c\xee\x84\xcf\xd3\x83\x51\xf6\xfd\xb1\xb8\x11\xa6\xc0\x04\xf2\x0c\xb3\x61\x72\x85\xf1\xc9\x19\x5f\xf9\x87\x52\x60\xfa\x46\x89\x81\xeb\x29\xde\x0b\x43\x8a\xd5\x2c\x23\x8a\x72\xf8\x0b\x64\xe4\x1d\xcd\x30\x92\x3e\x1e\xd9\xa3\x83\x8d\xc5\x83\x60\x56\x26\xc5\x6f\xfa\x20\x30\x18\x1c\xbc\x9a\x09\x82\x33\x05\x76\x4d\x9d\xcc\x30\x3b\x25\xd7\x3a\x2c\x05\xa9\x60\x84\xf4\x23\xb0\x3a\x86\x6b\x08\x6d\x88\xb0\xb8\xf0\x1e\xa9\x25\x5c\xdc\x61\x0e\x51\x74\x40\xc1\x33\x74\x9f\xe4\xc4\xfa\x2f\x9c\xa3\xbf\x37\x73\x3e\xaf\x82\xf0\x26\x37\xce\x9c\x7f\xcb\x1c\x90\x1c\xfb\x76\x9f\xe2\xf9\x3f\x30\x79\x61\x60\x6d\x31\xf4\x07\xc4\xb9\xa6\x7e\x59\x34\x1f\x52\x46\x7d\x8a\xc3\x7b\xa6\x89\x85\x31\x88\xeb\x50\x1a\x68\x25\xaa\x44\x43\xa5\x88\xed\x9b\xff\x71\xcd\x66\xb3\xeb\x88\xdd\x9e\x29\xb4\x9f\xf2\xc3\x21\xbb\xdd\x1d\xee\xe7\x4b\xee\x73\xaa\x0c\x88\xef\x73\xaa\x0e\xcb\xf0\x3d\xb5\x67\x0b\xf2\x3d\x75\xdb\x52\x6e\x55\x64\x9e\xa8\x5b\x43\x1c\x0e\x10\x5d\x95\x99\xd6\x1a\x3a\x45\x07\x55\x87\x4e\xc9\x58\x7f\xe8\xbc\x9e\xac\x3f\xa2\x49\xd4\x65\xdb\xea\x44\xfd\x66\x96\x4e\xb1\x50\xf4\xef\x4e\xd7\x62\xf9\xbf\x0b\x62\xb1\x12\xd0\x05\x11\x43\x9e\xa1\x0e\x74\xca\x4e\xe9\x04\x55\x85\x7f\x86\x99\xa6\x94\xb7\x7a\x3c\xbb\xdb\x06\x0c\x75\x2d\xff\xfd\xdf\x95\x37\x60\x28\x60\x69\x82\x30\x55\x60\x78\x5f\x10\x54\x39\x7b\x54\x44\x4b\xf9\x41\x11\x45\x5d\x62\xfd\x05\xd7\x8e\x19\x44\x52\x49\xff\xc2\x83\xb1\x87\x12\xe7\xe3\xd3\x9a\x50\x19\xc1\x59\xcc\xe4\x2c\x3e\x01\xfc\x1e\x08\x4d\x3c\x30\x37\x09\xc5\xba\x1c\xeb\x9a\xc4\xd7\x85\xcf\x6f\x1e\x4d\x74\x30\x14\x0d\x44\xc5\x63\xea\x1b\x4b\xb1\x06\xb6\xb6\xc8\x7a\xd2\x33\x63\x6f\xbe\x47\xe4\x7a\x55\x64\x37\x79\xd1\x98\xe9\xfb\x7c\xfb\xf0\xbb\x70\xdb\x97\x09\xb3\x77\x4c\x3f\xa6\xfc\xbd\x7c\xe4\xdf\xee\x69\xaa\xe2\x9f\xe6\x91\xdf\x31\xfd\x49\xbf\x97\xe7\x84\x16\x28\xc7\xa1\x27\x90\x40\xf5\xea\x7b\xcd\x10\xf7\xbb\x63\xbe\x4e\xa1\x13\xb8\xab\x5c\x3d\x14\x57\xc5\xe6\x8a\xac\xf3\x53\xb6\x29\x92\x75\x41\xee\xf3\xe3\x5d\xb2\xee\xde\x31\x2e\x76\xab\x5f\xd3\x63\xde\xd8\x90\xb0\x2a\x72\xee\xc0\x47\x56\x77\x9b\x62\xfd\x66\x0e\xb0\x87\xfd\xf1\x74\xc8\xb3\xfb\x74\xb3\x3d\x9e\xb2\xed\x2a\xf7\x10\x27\x30\x81\x32\x40\x20\xb0\xd7\x6c\x76\xdb\xab\xe5\x08\x20\xdd\x1c\xef\xfe\xa5\xe8\xc6\x2b\xa7\x2a\xe1\xf4\x11\x04\xb0\x22\x25\x18\x10\xe1\x27\x47\xa4\x55\x89\xff\x04\x01\x89\x63\xf2\xf5\x15\xc5\x3b\x10\x02\x33\xd4\x97\x27\x98\xcc\x98\x54\x12\x65\x45\xe1\xc5\x39\xce\xe4\x07\x41\x4c\xa2\x89\xb3\x19\xd4\xe3\xde\x79\x99\x81\x7e\x05\xb5\x6c\x81\xbe\xcd\xd4\x29\x28\x8b\x76\x06\x68\x4f\x61\x7b\xca\x97\x45\x87\x3a\xb5\x62\x84\x82\x84\xce\x41\xb7\xc0\xd8\x04\x02\x64\x4f\xa2\x78\x41\xb8\xc4\x63\x75\x74\xfe\x65\xb2\xdd\x92\xc5\xd3\x6b\xf4\x69\xc5\xd4\x4b\x20\x78\x83\x78\x49\x39\x36\x65\x12\xff\x89\x5d\x63\xd8\xb7\xcc\x11\x7c\x1c\x9e\x82\x66\xe3\x7c\x48\x15\xbc\x7b\x60\xd1\x5f\x57\xa0\xbb\x51\xb3\xa9\x94\x13\xe6\x12\x8c\xd4\x07\x83\x87\xe7\xc9\xa0\xd8\x73\x2a\xa0\x77\x99\xc3\x4c\x99\x2e\xe4\xcb\xa4\x98\x7b\xc8\xe0\x45\x4a\xf4\x30\x44\xbd\x0b\x9d\x02\x31\xff\x95\xb5\x3f\x35\x81\xfb\x99\xf1\x99\xcf\x19\xf3\x59\xf5\xad\x63\x05\x7a\xf1\xa0\xc4\xcc\x30\xe1\xe7\x4f\x9c\x48\xeb\x33\x35\x69\x3f\x7c\x06\xfa\xa4\x31\xaf\xa7\x96\xe8\x9d\xa6\x98\x25\x8c\x69\xcc\x33\x5f\x78\x4f\x66\x4c\x9b\x24\x30\x1f\x29\x75\xa9\x20\x68\xf4\xa6\x4e\x80\xa0\x8e\x79\xe0\x30\x29\x15\x91\xc8\x54\x0d\x15\x89\x77\xa6\x65\xca\x11\x8e\x8e\x79\xa0\xfc\xae\xd0\x35\x41\x0a\x8c\x84\x47\x9c\x53\xf0\x6f\x02\x3a\x90\x7d\x24\xea\x8e\xa8\xcc\xe2\xc5\x16\x5b\x5e\x6f\xa1\x8a\xa0\x81\x4a\x38\x10\xd4\x2d\x54\x4d\x89\xd2\xb2\x40\x25\xca\xbb\xb5\x62\x72\x44\xd4\x0d\x4d\xaa\x08\x83\xb6\x00\xab\x14\x86\x19\xba\x8d\xac\x5e\x00\x31\xa9\x90\x43\x3f\xe8\x79\x5a\xfb\x4c\x96\xc1\x77\x11\x33\xa0\x13\x66\x25\xa1\xa0\xb1\x1a\x4c\xf4\x08\xb8\x08\x67\xd1\x7f\x54\x60\x2e\x74\xd0\x6c\x57\xc1\x5f\x46\x21\xc1\x50\xf4\xf6\x86\x99\x41\xa7\x09\x23\x0d\x28\x9a\x30\xf0\x98\x04\x12\x33\xe3\x69\x18\x41\x8c\x8a\xc3\xd3\xd2\x63\x0a\xa6\x1e\x53\x4f\xa1\xe7\xa8\xce\xb8\x8f\x3d\x54\xde\x74\x60\x18\xcf\x07\xc6\x9b\x15\x29\x91\x68\x39\xc0\xeb\x2f\x50\xfd\x27\x8b\x54\x62\x4b\x5a\xa1\xc2\x13\xa6\x25\xd2\xe2\x63\xeb\x1f\x03\xed\x24\x9a\x48\x0a\x43\x66\x0c\x11\xdc\x11\x21\x70\x6c\x56\xa0\x1d\xa7\x04\xfd\x65\xe0\x81\x20\x1a\xf4\x4d\xc5\xbe\x7d\x64\x2e\x78\x9f\x70\x59\x60\x44\x9e\x94\x48\x74\x0b\x67\x0c\x86\x2d\x6b\x93\x10\xa6\x56\xb4\x44\x58\x58\x43\x02\x1d\xcb\x04\xfa\x34\x62\x7a\x3d\xd0\x6e\x13\xe1\x73\x63\x71\x74\x27\x03\x4c\x30\x89\xaa\xc4\x7c\x9a\xdc\x10\x6e\x34\x7a\x47\x71\x98\x33\xbf\x6e\x80\x9d\xf0\x8a\xa9\x78\x75\x91\x48\xc6\x0b\x22\x85\x08\x9e\xc1\x3e\x31\xeb\x8a\x50\x89\x29\x4a\x7d\x9e\x2f\x62\xa8\xcf\x05\xca\xf0\xba\x86\xcf\x67\x5a\x66\x35\xa5\x68\xa1\x54\x06\x93\x84\x63\xe6\x30\x8a\x59\x10\xb9\x75\x05\x91\x1a\x6f\xab\xf9\x20\x45\xe8\xd1\xa5\x1c\x88\x24\xce\x19\x7f\xbf\x41\xf8\x34\x6e\x78\xc3\x01\x50\x84\xc5\xe9\x5d\x27\x60\xb6\x30\x0f\x98\xd0\xb8\x64\x30\x57\xae\x86\x0f\xef\xf5\xf7\x93\x05\x81\xc4\x96\xfa\xa0\xcf\xcd\xbf\x02\x5d\x58\xea\x84\xa6\xa0\x96\xa3\x23\x9a\x20\xd2\x59\x50\x79\x71\xce\xd1\x97\x92\xa3\x17\x38\x36\x87\x21\x83\x5c\xb0\xef\x50\x8d\x56\x17\x28\xc9\x14\xf3\xd3\x2b\x30\x10\x66\x22\x3d\x6a\xce\x89\x6f\x3f\xa0\x80\xfb\x6b\xbe\x70\xaf\xf6\x7b\x4f\xef\x5e\x1d\x5e\x7d\xff\xc3\x7a\xf7\x65\x1b\xb6\xc7\xd5\x6e\x7b\xca\x36\xdb\xfc\x90\x74\x55\x04\x50\xd0\x92\xf5\xe6\x31\x21\xf9\xfd\xbe\x21\x33\xff\xa1\xda\x5c\xcf\xa9\xbd\x40\x52\xc0\x8a\x7d\xbb\xfb\x60\xdd\xa0\x4e\x96\x35\xbb\x5e\x02\x67\x09\x19\x83\x78\x2c\x80\x36\x89\xd9\x2c\x89\x65\x10\x93\x91\xda\xc3\x2d\x9f\x21\xee\x74\x11\x98\x0d\x64\x18\x8f\xb6\x92\xff\x98\x15\x0f\x79\xea\xcb\xc5\x6a\x3e\x88\x57\x9b\xed\xc3\x31\x3d\xfe\xcf\x87\xec\x90\xa7\x28\xee\xfc\x2b\xc9\x5a\x83\x41\xea\x5c\x22\xde\x23\xdf\x60\xc0\x35\x12\xe2\x52\x9e\xf0\x47\x26\x57\x14\xc4\x2b\xe2\x30\x76\x1d\xbf\x63\x72\x85\x45\x12\x9e\xc2\xb3\x94\x7f\x52\x28\x90\xb1\x14\x6a\xc0\x7f\xdf\xee\x53\x9e\x30\xfa\xde\x3c\xa6\xfc\x8e\xd1\xc7\xb3\xc2\x85\xf5\x0e\x62\x1f\xd3\xe8\x2d\xf7\x9d\xdc\xef\x0e\x79\x5a\x4e\x1b\x68\x01\x09\x69\xfe\xba\xfa\x1b\xa8\xfb\x7f\x46\x53\xd6\xcd\xee\xe9\x97\x1f\x51\xb7\xba\x0a\xe1\x06\x2f\x4e\xd9\x4d\x91\x93\xbb\xec\x18\xee\xcb\x1f\x93\xd3\xe1\x8a\x94\xdf\x97\x43\xfa\xb2\x39\xdd\xa5\x9e\x46\xcf\x06\x05\x94\x05\x9d\xba\xdb\x1d\x36\xdf\x80\xad\xfd\x3e\xe8\x4a\x27\x8c\xb6\xa9\xea\x58\x52\x53\x45\x44\x0d\xe2\x61\x3c\x59\x56\x21\xd5\xcb\x2a\x9c\x43\x8d\xdd\x81\xef\xa3\xc5\x9e\x52\x4b\xf4\x4e\x7f\xf6\xf4\x4a\x7a\xe7\x10\xb0\x59\x5c\xbc\x53\xf9\x0c\x46\xdc\x82\xf1\x9c\xfa\xae\xff\x1e\x68\x96\x59\x62\x95\xc0\x7c\x4f\x46\x3b\x75\x0d\xda\x8f\xc3\xbc\x0e\x8a\x3a\xc9\x13\x0e\x92\xaf\xd0\x54\x6a\xf8\xaa\xae\x39\x4b\x04\x11\x52\x30\x9f\xe1\x55\x69\x8c\xef\x69\x13\x8e\x51\x83\xa5\x60\xf0\x53\xd5\x65\x54\xa2\xae\x99\x4a\x40\x1e\xa4\x02\xa3\xba\x1a\xad\x30\x6b\x04\x0f\x49\x3e\x38\x34\x66\x0c\xd7\xee\x03\xd3\x3e\x85\x38\x25\x94\x6b\xee\x83\x3a\x33\x8d\x49\x14\x10\x16\x11\x98\xd6\x9c\x12\xc9\x95\xf0\xa1\x79\xb5\x4f\x75\x65\xd9\x07\x4b\x9c\x51\x65\x2a\x07\x71\x6d\x89\xb1\x12\x53\x5c\x60\xe8\x71\xe8\x10\x57\x4c\x24\x1a\xfe\xbb\x96\x01\x3f\x9d\x80\x84\xee\xbf\x8b\xc4\x5d\x23\x34\x41\x35\x48\x96\x56\x80\x02\x80\x6a\xa0\x51\x09\x26\x46\xb2\xdc\x89\x4f\x4c\x13\x66\xa8\xb9\xae\x4a\x68\xa2\x2c\x48\xe2\x09\x33\x44\x3b\x61\xe1\x1b\x80\xe2\xd4\x0f\x50\xd9\x18\xe7\x89\x4e\x38\xbf\x36\xf0\xd8\xe2\x6f\x57\x15\x72\x50\xc7\x55\x20\x2c\xe8\xa7\xcc\x55\xc0\x31\x62\x34\x34\xfb\x29\xa0\x71\x8d\x81\xb9\xb5\x03\xb4\x34\x65\xa0\x63\x31\x6b\xb9\x84\xdf\x4c\x39\x18\x07\x25\x95\x4f\x41\xa1\xac\xb5\x1f\xfc\x6d\x5c\x50\x70\x88\x76\xdc\x5e\xe3\x65\x09\x85\x3e\xb0\x06\x5a\x64\x98\x8c\xcc\x3a\x18\x51\x99\x30\x71\xcd\x30\x2a\x3a\x22\x07\x43\x0f\x73\x0b\x93\x01\x98\x5c\x33\x1b\x5e\xe8\x84\xd3\xaa\x18\x7c\x15\xd7\xf0\xc9\x40\xdd\x86\x2e\x11\x89\x81\xb8\x29\x71\x98\x16\xca\x82\x7e\x8f\x33\x2c\x25\xff\xd0\x22\xbe\x9f\x3f\x32\x9b\x20\x6c\xa5\x38\xcc\x14\xc3\x0b\xb4\x8a\x73\x8b\x5f\xaf\x51\xf1\x97\x12\x23\x70\x87\x42\x12\x88\x4f\x5e\x33\x83\xcf\xe1\xa7\xa9\xcb\x18\xa8\x63\x6a\x18\xa1\x90\x86\x3a\xfa\xe7\x8f\x26\x71\xd7\x68\x81\xc0\xb7\xba\x2c\x45\xa1\x00\xbd\x56\x25\x14\x9a\xa8\xaa\x90\x4a\xdc\x35\x0c\xad\x7f\x55\x16\xb1\x89\x4e\xec\x75\x09\xc0\x26\xa6\x2a\x61\x12\xf7\xf3\x19\x4c\xb8\x64\x1f\x3d\x9c\xb7\x7a\xb5\x88\xdd\xee\x0e\xa7\xd7\x63\xb7\x03\xc0\xe6\xb1\xdb\x76\xe5\x73\xd8\x6d\x0c\x03\xd8\xed\xee\x70\xfa\x5d\xb0\x5b\x4b\x04\x30\x47\x4a\x29\x65\xd7\xf8\x83\x13\x6a\xad\xc1\x5c\x81\xd6\x1a\x8c\xa4\xa9\x28\x85\x25\x53\x7e\x7d\xcf\x24\xc6\x1b\x67\xac\xf1\x56\x11\x5d\xd7\xf5\xbf\x02\xd8\x4f\x26\x80\xf7\x4f\x0d\x54\xe4\x3e\x25\x07\x40\x80\x85\x8b\x10\x64\xf9\xf5\x3d\xe3\x44\x59\x21\xaf\xfd\xbf\x1a\x9e\x6b\x0a\xab\xb6\xfe\x6d\x98\x34\xe1\x37\x82\xb0\x9c\x3b\xcc\x47\x28\x38\x26\x9d\x31\x1f\xb8\xbf\x32\x41\x89\xb9\xe6\x8c\x18\x9f\xb8\xc6\x00\x8f\x83\xc5\xef\x18\x7e\x83\x32\xd7\xfe\x0b\x94\x28\x0b\xf2\x24\xd4\xe6\xef\x99\x01\x7e\xa7\x61\x41\x63\x08\x78\x4e\xa8\x04\x86\x61\x88\xc6\x1f\xce\xca\xea\x07\x53\x9f\x30\x63\xe1\x7b\xe6\xae\x99\x0b\x03\x24\x71\x50\x81\xa9\xe2\xc9\x05\x1e\x69\xf8\x5f\xfa\x13\xa7\xd7\xfe\x3b\xa7\xa1\x74\xa8\xc5\x19\x96\x70\xfe\xcb\x7b\xa6\x90\x3b\x62\x5d\xff\x46\x04\xa8\xbe\x56\xf8\xf5\x09\x18\x21\x7e\x2f\x5b\x2a\x6b\x79\x2c\x98\x4a\x02\x7e\x9a\x88\x4f\x88\x30\xee\x92\x75\x47\xb4\x0f\x64\x53\x76\x52\x13\xc1\x60\x3a\xf9\x7b\x7f\x03\xf8\x1a\xf8\xa8\x7f\xcf\x70\xd0\x1c\x86\xa1\x86\x9f\x46\xe3\x7e\x24\x9d\xf5\xbf\x35\x16\xb6\x81\xa1\x53\xa6\x7c\xfc\x5d\xcd\x7d\x30\x1e\x87\xc5\x0d\x87\xdd\x95\xbf\xf7\x63\xcc\xae\x61\x8c\x45\x80\x00\x08\x34\x07\xb9\x3d\xc6\xee\x1a\xc7\x8a\x57\x9d\x8b\x86\x98\x35\x86\x98\x45\x43\x5c\xd6\xf2\x03\x59\x8e\xb0\xba\x96\x81\xde\xfd\xf3\x68\x7c\x1b\xc3\x1b\x8d\x6e\x59\xc5\x23\x50\x0e\x6e\x3d\xb6\xcd\xa1\xc5\x91\xa5\xbc\xea\x1a\x0e\x2d\x08\x20\xfc\x3d\x27\x5a\x5d\x73\xc2\x1d\xa3\x3e\xc6\x73\x45\x8e\x25\x81\x56\x24\x8b\x85\x58\xa0\x64\xec\x21\x90\x3a\xde\xf9\xe3\x8d\x1f\x16\x37\xec\xb0\x98\xe8\x75\xb9\x94\xcb\xa5\x86\xeb\xbc\x5c\x87\xe1\x87\x5f\xaa\x61\xc9\xfe\xfc\x91\x51\x84\x0f\xcb\xd6\x11\x4b\xb5\x29\x7f\x26\xce\x2f\x74\x78\x16\x7e\xb4\xd7\xb9\xf3\xcb\x9c\x39\x21\x30\x0b\x15\xc5\xdc\x57\x15\x17\x31\x11\x17\x81\x52\xf5\x5b\xe9\x91\xf1\x55\xcb\x5f\x11\x6a\xd7\x61\x41\x05\x04\x4a\x08\xbc\xe6\x22\xbc\xea\xf8\xcf\x1f\x95\x67\x45\xd7\xd2\x63\xe1\x39\x90\x0c\x84\x82\x8f\x64\x4d\x27\x32\x90\x09\x02\x0c\x35\x38\xf5\x53\x8b\xff\x22\xcd\xf9\xe6\xf0\xb1\x0b\x44\xc2\x7c\x42\xaa\x8a\x48\x5c\x20\x12\x84\x10\x6a\xf8\xa6\x9d\xff\xf7\x3d\x88\x16\xa1\xe5\x6b\x16\xe1\xc3\x22\x54\x59\xe8\x40\xe0\x28\x0d\x48\x2c\x6a\x24\xfc\xf2\xe4\x1e\xa1\xc5\x22\x8c\x99\x0b\x3d\xf1\x1c\xa5\xd1\x45\x16\xf5\xbe\xfc\xf5\x89\xe9\xa6\xb8\xa0\xff\x6a\xb4\xe5\xf3\x24\x86\xb0\x03\xf6\x49\x0c\xe5\xab\x45\x12\xc3\x61\x77\xda\xad\x76\xc5\xeb\x49\x0d\x23\x00\xe7\x49\x0e\x7d\x00\xce\x91\x1e\xba\x70\x40\x82\x08\x4f\x7f\x17\x52\x04\xec\xa0\x1c\xf7\x51\xd0\x6a\xbc\x64\x8b\xff\x72\xcf\xd0\x7c\x0a\x06\xe3\x55\x8e\xba\x94\xaf\x95\x94\xef\xaa\x32\x58\xe7\xba\x2e\xc5\xeb\x32\x08\xf0\xe7\x8f\xb0\xb5\x30\x2a\x71\xbf\x74\xc6\xe2\xbe\xc4\x35\xca\xf7\x96\x2b\xbf\x81\x68\x81\xbf\x35\x66\xb2\xe3\x84\xc3\x8e\x05\x4b\xc3\x70\x14\x2c\x18\x68\x6e\x96\x58\x54\x23\x38\xb1\x98\x39\x00\xb5\x1c\xcc\x4c\x85\x19\x97\x19\x1a\xdf\xb1\xbc\xb3\x06\x95\x21\x81\x71\xec\x80\xfd\xf8\x8d\x5f\x20\x3f\xe6\x44\x73\x83\xdd\xe6\xce\x1a\x44\x47\x09\x8d\xbf\x95\x46\x36\xce\x01\x7b\xf8\x8d\xfb\x1b\x25\xca\x71\x17\xde\x0b\xcc\xb1\xab\x01\x7d\x4b\x98\x10\xa8\xd9\x71\xa6\x41\xc9\x20\x54\x02\x1e\xb0\x27\xa9\xd0\x5d\x8e\xf0\x0d\xf5\xdd\x75\x4e\xa2\xca\x65\xf0\xd0\x0d\x7e\x6b\xbf\x13\x37\x86\xe7\xe7\x8f\x8e\x58\x87\x5c\xc2\x70\x6a\xae\x41\x79\xb0\x12\x75\x16\x47\xad\x4b\x9c\xcf\xc5\x88\xcd\x33\x07\x7c\x8d\x2a\x05\xc3\x03\x7c\x59\x5e\x5b\xa2\x84\xb0\xf8\x53\x42\x71\x4b\x28\x73\x0e\x47\x47\x5a\xc3\x40\x93\x65\x98\x7e\xc2\x60\x3e\xaf\x6b\x83\x39\x51\x6c\xc2\x7c\x76\xa1\xc4\xa7\xfc\xb2\x5e\xd9\x52\xb0\x0d\x71\x45\x3d\xb6\x54\x5b\x07\x9a\xb1\xb6\x88\xac\x90\x20\x77\x0a\xe6\x0c\xce\x95\xd2\xc2\x26\x11\xea\x3f\x7f\x54\x44\x2a\xd4\x0e\x41\x35\x37\x06\xb4\x22\xdf\x55\xf8\x4d\x31\x58\x16\xe5\xc6\x27\x18\x72\x1c\x03\x67\x71\xe9\xb3\x88\x2a\x0b\x1b\x81\xd4\x98\x50\x43\x10\x61\x91\xcd\x6b\x2e\x7c\x80\x59\x2d\x95\x4c\x14\xe1\xa0\xd4\x82\xb2\x4a\x39\x97\xd7\x8a\x50\xc7\x25\x6a\x58\xda\x08\x9b\x60\xfa\x5d\x8d\xfa\x94\xe0\x8a\xc1\x36\xa1\xa4\xd3\x78\xa0\x68\x8c\x01\x3d\x9e\x82\x76\xef\x88\xb4\x54\x82\xfa\x47\x89\xa1\x92\xc3\x37\x7e\x8d\x89\xfa\x0c\x53\x3a\x91\x44\x49\xea\xb3\xe0\x60\x46\xb6\x56\xb7\xa0\x9f\xda\x09\x06\x83\x4b\x8d\x31\xfc\x1a\x7e\x6b\x26\xf1\xb7\x55\x3a\x81\xdf\x8e\x59\xfc\xed\x84\xc3\x70\x4f\x9c\x63\x79\x4b\xb9\xb8\xc6\xf0\x4f\x5c\xe0\x7b\xea\xdf\x33\xca\x71\x3b\xd5\x14\xeb\x1b\xcc\xb9\x6c\x08\x55\xd4\x68\x2c\x0f\xfa\x21\xa1\xca\x19\x81\xe0\x28\xf3\xc5\x2d\x6a\x96\x11\x3a\x3f\x7f\xb4\xc4\x69\x8b\x37\xcd\x95\x93\xcc\x5c\x5b\xe2\x04\xe3\xa0\x0f\x6b\x21\x25\x0c\x90\x35\x7e\xaf\x75\xd2\x80\x94\x61\xa9\x65\x30\xde\xc6\x48\xa5\xae\x41\xa4\x67\x12\xde\x3b\xa9\x34\xbc\x97\x8a\x63\x34\x7d\x4e\x15\x9e\xec\x71\x66\xa4\xc4\x5b\x03\x0e\x04\x43\xeb\x28\x46\x2b\xe6\x9a\x79\x8a\x13\x8a\x25\x1a\xa0\xa0\x2d\x85\x19\x63\xa0\xb3\x52\x52\x6f\xd0\xb0\x40\x61\x86\x28\x69\x51\xc6\xe1\xcc\xe7\xa3\xd7\xd2\x59\x98\x2d\x63\x85\xc3\x24\xe9\xc2\x1a\xf5\xc1\x12\xe3\xac\xb4\x78\xc3\x5f\x70\xd8\xc0\x99\x65\x12\x54\x70\x2e\x60\x76\x1d\x31\x54\x59\x87\x29\x01\x94\x33\x3e\x8b\xa6\xc4\x6b\xf6\xd4\x71\x75\xed\x88\x51\x0e\xaf\x6f\x09\xaa\x99\x17\x0c\xb4\xd4\x78\x57\x5d\x09\x4c\x8c\xda\x1c\xac\x9f\x3f\x02\x7f\x52\x12\xc8\x09\x64\x1a\xcf\xbf\x90\xba\x98\xe1\x0a\x4d\x26\x96\x52\x18\x1d\x61\x0d\xf7\x26\x15\x85\xc6\x06\x2d\xb9\xc1\xf5\xcf\x41\x30\x55\x44\x52\xcc\x4d\x48\x09\x66\xaf\xd7\xc0\xd6\xd0\x3e\xc5\x7d\x0e\x78\x27\x14\xb0\x0b\x20\x6e\xa4\x1d\x67\xb8\xc4\xec\xdd\x94\x4a\x18\x16\x4a\x51\xd0\xc2\xec\x25\x1c\x7e\x73\x2d\x1d\xb0\x3b\xc6\x19\x10\x3d\x35\xc2\x78\x33\x8c\x45\x4b\x16\xb5\x56\xe3\xe2\xd1\x02\xf5\x30\xaa\x81\x9f\xc0\x62\x42\xe3\x15\x31\x0e\x13\x36\x72\x62\x0d\xc5\x78\x9a\xa8\x44\x11\x4e\x35\xc7\xbe\x82\x90\x8f\xb2\xb1\x72\xf8\x9b\x79\x66\xca\xa8\x92\x7e\x2c\x94\x97\x90\x1b\x63\xf3\xf3\x47\x10\xb7\xd1\xce\xe6\x88\xa4\x0a\x0d\x45\xca\x79\x6e\xa8\xac\xf4\x89\x27\x25\xd5\x9e\x47\x28\x9f\x41\x10\x9a\xf7\x9b\x81\xf0\x86\x25\x83\xdc\x94\x33\xee\xc5\x74\xa3\xd0\xf8\x23\x85\xf6\xa2\x8f\x73\x7e\xd3\xa2\xce\xfa\x44\x58\x06\x7f\x5a\x2f\x6f\x19\xa1\xbc\x96\xa7\x2d\x2e\x51\xce\x0c\x32\x73\xa3\x99\xf1\x19\xab\x2c\x72\x53\x64\xa2\x8a\x38\x4e\x91\x99\x72\xe9\x13\xc4\x19\xcb\x35\xb6\xa6\xa8\xc3\xec\x74\x98\x7b\x1c\x88\x4e\x4a\x6f\x45\x0c\xdc\x50\x49\x9f\x7a\xcc\x31\xe4\xed\x9c\x2b\x85\x49\xbc\x31\xc1\xa3\x03\x4e\x81\x79\xec\x60\x49\xe2\x6f\xad\xbc\x32\xd2\x18\x9d\x9f\x3f\xfa\x86\x10\x4f\x23\xb8\xba\x46\x9b\x97\x44\x89\x52\xc2\x12\x47\xa3\x18\x31\x78\x1f\x85\xe2\x0e\x4c\x93\x90\x36\x16\x87\x10\xb8\x83\x23\x4a\x28\x8e\x8d\xc2\x4a\x40\x97\x04\x0a\x1b\x27\xb0\x6c\x0e\x33\xaf\x38\xaa\x7e\x98\x09\x07\x28\x49\x69\x9c\x0a\x4b\x2c\x70\x21\x4b\x34\x93\xc2\x42\x79\x25\x04\x12\xb0\x74\x08\x8e\x1b\x8a\x04\xe4\x94\xc2\x1d\x41\x6b\x83\x39\xb0\xac\x85\x91\xb7\x44\x19\x6f\xc1\x64\x98\x19\x1d\x7d\x1e\x90\xb9\x4b\x85\xbe\x90\x44\x18\x87\xa6\x47\xc3\x04\x96\x97\x54\xf8\x1c\xca\x38\x01\x92\xfb\x64\x78\x06\x43\xc7\xc7\x03\x81\x84\x64\x60\x4a\x24\xf0\x2a\x98\x0a\x4d\xb8\x16\x26\x51\xc4\x6a\x83\x50\xb5\x66\xb0\x8a\x0c\x30\x27\xf8\xed\x3c\x0b\xd5\x5c\x32\xd4\x94\x8d\x74\x09\xe6\xc1\x93\x3e\x09\xba\xd6\x16\x8d\x85\xca\xe2\x44\x30\x89\xbb\x9d\xb4\xda\xfa\xfc\xed\x28\xb9\x18\xc3\x7d\xfa\x78\xe9\x04\x06\x92\x47\x2b\x29\x0c\x01\x46\x9b\xe7\xc2\x09\x4f\xd4\x56\x20\x0b\x71\xc6\xe1\x34\x33\xab\x19\xf2\x53\x66\x7d\x6b\x0d\xdc\x7f\xfe\xa8\x89\x36\x02\x95\x39\xab\x95\x70\xd7\x98\x71\x19\x77\x67\x67\x1d\x46\xa9\xb5\xc2\x18\xcc\x6b\x42\x35\x32\x64\x69\x60\xc7\x72\x84\x53\x4b\x61\xd7\x65\x9a\x31\x6f\x9e\x45\x30\x4c\x50\xbf\x78\x84\x54\x06\x6d\x2a\xb0\x6f\xe1\xd4\x68\x10\x02\x18\x2d\xd3\xb6\x29\xe4\x2d\x4a\x30\x3f\xf4\x54\xa2\x3b\x8a\xd3\x8e\x97\x53\x77\xad\x88\x33\x86\xfa\xa4\x30\x4c\xb9\x44\x13\x26\xa5\x37\xb4\x1a\x89\x17\x82\x23\xec\x41\x42\x71\x0a\x39\xad\xa4\x0e\x55\x48\x2d\xbc\x5d\x86\x19\xf4\x43\xd3\x82\x19\x4c\x5c\x2a\x98\x42\x30\xcc\xf9\x3c\xeb\x46\x7b\x81\x8b\xca\x90\x53\x52\x78\xf9\xc7\x59\x1e\x06\x0d\xc5\x3f\x83\x99\x0f\x41\x5d\x62\xc8\xb0\x28\xb7\x65\x66\x3a\x9c\x0c\x21\x7c\x9a\x49\x2b\x55\x60\x70\x1e\xbc\x35\xc2\x21\x07\xc1\xde\x60\xb0\x56\x8e\x1c\x84\x32\x1b\x58\x15\xa2\xe5\xb8\x90\x68\x95\x65\x8a\x07\xf8\x30\xf6\xca\xc1\xbf\xc0\xe2\x84\xc5\xf7\xc6\x18\xe7\xe5\x41\x9c\x1b\xc5\x85\x62\x28\xff\x09\x86\x52\x83\x53\xc2\xfa\xfc\xc8\x8c\xa3\x8f\x9a\xc6\xe5\xd8\x18\x9c\x9f\x3f\x02\x61\x52\x9f\x15\x4f\x80\x00\x85\x27\x1d\x0a\x09\x96\xab\x70\xa8\x81\x21\x90\x61\xd4\xbd\x39\x8e\x09\x6f\xbb\xa7\x4a\x4b\x64\x41\x36\x64\x3f\x16\x7e\x94\x9c\x56\xde\x30\xe3\x6d\x79\x92\xa3\xa5\x44\xfa\xed\x40\x13\x6a\x15\x60\x8b\x3b\x3b\xe6\x79\x94\x80\x2c\xe7\x98\x52\xda\xc0\x2e\x05\xbf\xa9\x16\x30\x17\x36\xd8\xf1\x19\xd1\x81\x6f\x1a\xe5\x33\xc6\x1a\xcc\x6c\x0a\x94\xea\x19\x97\x94\x42\x81\x9c\xcf\x44\xc8\xaf\x89\xcc\xc1\x10\x8a\xc2\xba\x06\x51\x07\xb1\x6e\xf6\xf6\x5c\x7d\xb4\xa1\x4f\xf5\xe9\xa4\xcd\xd7\xdf\xfb\x9c\xfd\x83\x5e\x99\x10\x74\x72\xdf\x9c\xe7\xb4\x92\xad\xd7\x87\xfc\x78\x7c\x35\x25\x76\x04\xde\x2c\x1d\xb6\xaf\xfe\x19\x2a\x6c\x17\x0c\x68\xb0\x0f\x37\xc5\x66\x95\xae\xf3\xdb\xec\xa1\xf8\x7d\x58\xc3\xcb\x6c\x81\x65\xb2\x40\xe9\x75\xd4\xa3\x84\x6f\x8c\x56\xff\xa7\xe1\x41\xca\xe8\x7f\xa0\x9a\x5a\x26\x67\xbb\x4f\x71\x3d\x38\xb1\x4a\x81\xbf\xa7\x44\xba\xd4\xa4\x82\x58\x95\x9a\x14\x9e\x63\x64\x25\x4e\xa8\xc5\xd4\x19\x84\x63\x0c\x23\xf7\x01\xd6\xec\x23\x8b\xdd\x3d\x1e\x41\x26\xfc\x76\xaf\x89\xc3\x3c\x17\x2b\xef\xa3\x66\x59\x8a\xd1\x80\x5c\xca\x08\xa6\xc2\x73\x77\x29\x7b\x4c\xf1\x3e\x9f\x52\x18\xef\x11\x4b\xbc\xb7\x8f\x29\xbf\xe3\x2b\x82\xfe\xb4\x18\x50\x3c\x61\x29\xfb\x64\xee\x78\xcb\x89\xe4\x31\x25\x92\xad\x38\xc1\x8b\x65\xcc\x25\x20\x76\x52\x9d\x60\x66\x12\x2c\x07\xd8\x12\x8b\x09\xeb\x52\x4e\x40\x57\x11\xee\x9c\x93\xfc\x2e\x41\xf4\x2d\xc4\x6e\xa1\xef\x3d\x97\x84\xf2\xe3\xae\x78\xcc\x0f\xc1\x91\xac\x20\x87\x7c\xbd\x39\xe4\xab\x53\xb2\x3e\x3d\xa7\x69\xf9\xeb\x35\x88\x6e\x59\x96\x39\x14\x3a\x85\xb8\xe6\x21\xf2\x95\x60\xa0\x45\x18\xe4\xe5\xde\x6e\x2f\x35\x88\x4f\x56\x7c\x92\x1f\xc2\xc1\x83\x29\x52\x8b\x71\xc9\x0c\xd1\x46\x3f\xa6\x92\x58\x09\xfb\xb3\xf2\xa9\xe8\x05\x2a\x1a\x78\xb0\xac\x89\xb7\x0a\x63\x1b\xdf\x46\x19\xe1\xc0\x7d\x87\xe6\xc8\xbc\xf9\xfe\xb7\xdb\xdd\xe1\xcf\xa7\xdd\xae\xb8\xc9\x0e\xe9\x69\xf7\xf9\x73\x91\xff\xf2\x9c\x96\x17\xb8\x5e\x2d\xf6\xd2\xb2\xbb\xec\x8a\x40\xb7\xef\x52\x62\x1c\x3a\x54\xa7\x84\x9b\x9f\x34\xfa\xc4\xea\xd2\x33\xd6\x5f\x8d\x71\x44\x61\x0a\x1d\x8d\xde\xd2\xf0\xc2\x79\xaf\xe7\x10\xf0\xd6\xe7\xbd\x44\x55\x83\x8b\x94\x11\x65\x0a\x74\x4b\xb5\x8f\x00\x1b\x95\x4f\xf7\x81\x53\x22\x41\xda\x2e\x52\xf8\x99\x2a\xef\xd4\x72\x6d\x88\xb7\x26\xa3\x31\xc6\x39\x7f\xe4\xfa\x1f\xf8\x14\xbf\xa2\xb9\x3f\x29\x4b\x61\xbb\x58\xae\xfc\x11\xdd\xa6\x60\x4a\x0b\x9f\x58\x69\x62\x7a\xda\x23\xff\xe6\x3b\xb9\x3d\xe4\xf9\x29\x7f\x3a\xa5\xb7\x9b\xe2\x94\x1f\xfe\xaf\x70\x13\xa5\xf4\x4b\x0a\x35\xfe\x99\x11\xb2\x86\x67\x0c\x27\xec\x77\x38\x5f\x73\x39\x5a\x3d\xf8\x3d\x9c\xac\xf1\x72\x89\xa1\xfb\xb8\x5b\xfd\x9a\xbf\xde\xe1\xf8\x30\xb8\x59\x02\x42\x4f\xf5\x33\xe4\x83\x0e\x14\x20\x5c\x7c\xf6\xbb\x11\x0b\x28\x88\xc1\x92\x59\x01\x4a\x33\x68\xcc\xf5\x2f\xaf\x42\x1b\xa2\x2c\xf3\xda\x27\xbe\x90\x20\x11\xc8\xeb\xf2\xb1\x4c\x64\x52\x7f\xf7\xb6\xc0\x50\xb2\x7c\x8c\xa0\x12\x4e\x7f\xfe\xe8\x6d\xe6\x0d\x23\x7a\xc3\xb4\x5e\xd9\xda\x4b\x93\x78\xd3\x9a\x9e\x34\x2c\xed\x09\x8f\x2c\xea\xd7\x35\x88\xc8\x98\x9e\x70\xfe\xf3\x47\x93\x30\x76\x6d\xbc\x1b\x8c\x31\x89\xa9\x5d\x4d\x40\xcc\x79\xcf\xf0\x10\x15\xfd\x5b\x40\xfe\x61\x55\x41\xf8\xca\x3e\x31\x71\xcd\x50\x09\x0a\x25\xc2\xbf\x12\x0b\xcb\xf7\xf6\xba\x82\x27\x13\x53\x95\x83\x6f\x9f\x18\xa8\x33\x50\x10\x74\x26\x0f\x92\x26\x3e\x63\x9c\xff\x25\xca\x06\x44\xdd\x40\x59\x52\xfa\xff\xdf\x33\x0d\x93\x53\x35\x5a\x37\xc1\x42\x1b\xd7\xac\xee\x5b\x55\xd2\xdf\xae\xa4\xef\x99\x3c\xc7\x23\xa6\x26\xdf\xbe\xa5\x5f\xbf\xfc\x4e\x4e\x5f\xf7\x79\x7a\xdc\x1d\x4e\x6d\x57\xe6\xd2\xc5\xb4\xb1\x24\x7e\x27\x5e\x23\xf4\x82\x51\x42\xad\x46\xbb\xc7\x07\xdd\xfa\x65\x89\xa4\x4a\x0b\x4e\x75\xf2\x81\xb6\x7e\x35\x4b\x46\xbf\x7e\x4e\x3e\x8a\x0b\xc6\x43\x61\x96\x7c\x10\x17\xe8\xbc\x50\x97\x8d\x7f\xc5\x25\xeb\x5f\x3e\xd3\x3f\x13\x94\x09\x63\x2e\x68\xf2\xa1\xf1\x8b\x11\x6d\x19\xe3\x5a\x32\x04\x11\xfd\x8a\x4b\x52\x84\x23\x88\xd5\x8e\x3b\xee\x2e\xf0\x98\x80\x3a\x10\xc2\x3e\x34\x1e\x33\x46\xac\xb0\xd2\x71\x9e\x7c\x60\x9a\x04\x70\x17\x96\x58\x67\x29\xe7\xca\x26\x1f\x98\x8d\xfa\xec\x2d\x03\x86\x3b\x73\x81\xf7\x58\x2d\xda\x09\x3e\x58\x42\x95\xc1\x13\x80\xa8\xb4\x23\x5c\x6a\xe6\x14\xd7\x31\x4c\x4e\x98\xb5\x4c\x6b\xe5\x31\x70\x42\xf0\xf8\xf1\x00\xbe\x8d\xc7\xd0\xbf\xaa\xa5\x0b\x49\x38\xe5\x96\x69\x0a\xe5\xeb\xc7\x8a\x58\x2b\x9c\xe4\x52\xc2\x10\xc5\xbf\x06\xaa\x34\x1e\x9f\xb7\xac\x06\x8f\x8d\x8f\x8b\x8f\x8d\xcb\x1b\xdb\xf7\xd9\x36\xfb\x9c\xdf\xe7\xdb\x33\x2e\x8b\x74\x40\xbc\xce\xc5\x91\x19\xa8\x9d\x71\x7f\x64\x16\xb2\xd3\xfb\xfe\x0c\xe4\x66\x5c\x29\x19\x47\x66\xa9\x14\x31\x86\xd3\xe2\x5b\x26\xe3\xa8\x85\x24\x7a\x77\x9b\xcf\x77\xc5\xe6\xf3\xdd\xa9\xf3\x66\x10\x15\xe0\xe1\xa7\xec\xf0\x3b\xba\x79\x82\x42\x01\x37\x1f\x98\x25\xcc\x26\xdc\xe7\x38\x93\xa9\x21\x54\x80\x7a\xea\xf0\xb2\xa0\x21\xcc\xa5\x44\xb3\x0f\xe8\x9c\x84\x99\xbb\x2d\xd1\x22\x09\xef\x15\xc1\xa3\x2e\x23\x3e\x28\x62\xd1\x43\xbb\x04\x7b\x96\x4c\xdd\x1c\xc0\x3e\x36\x10\xbd\xff\xde\x0a\x6b\x51\xce\xc0\xee\xe1\x54\x6c\xb6\xf9\xef\x62\x12\xda\xe3\xcc\x17\x8f\x73\x12\x4d\x9f\x88\xa6\xef\x1b\x4e\xb2\x22\xb2\xc0\xd0\x6a\x78\x33\x33\x61\xa9\xf4\x77\xb1\x05\xc7\x28\x70\x78\xd2\x98\x12\x61\xa1\x69\x4d\x58\xc1\x88\x61\x89\x24\x14\x53\x62\x59\x78\x09\x65\x13\x2c\x0b\x2f\x38\x96\x04\xb0\x67\xcf\x71\x63\x8a\x86\xa6\xb9\x59\xe4\x3b\x39\x65\x9f\x3d\x97\x69\x68\x23\xa7\x35\x3c\x6e\x59\x1e\xa1\xe0\xef\x61\xe2\x19\x23\x82\xca\x44\xf8\xac\xc9\x94\xe0\x25\x02\xfc\x27\xb5\x84\x0a\x96\xc0\x27\x26\x43\x46\x6b\x3a\xe7\xa6\x60\x18\x59\xdc\x84\x18\xa9\x94\x72\x0c\xdf\xe7\xbe\x7d\x64\xc4\xa2\x7f\xa4\x96\x19\x10\x8f\xbf\xbc\xaa\xb4\x4c\x31\x1a\x3e\xd6\xb3\x58\x4f\xfc\x54\xbe\x97\xa0\x0c\x73\x4c\xbd\x8f\x2f\x3c\xa8\xaa\x3a\x54\x54\x44\x69\xf5\x81\x73\xe2\x0f\x51\xa8\xa8\xa1\x53\x8c\xbd\x61\x0b\x44\x15\x31\x65\x75\xcb\x3e\xb0\xf8\x87\x1a\xa9\x6f\x1f\x2d\x68\xd9\x18\x57\x29\x61\x5e\xff\xa7\x34\xc5\x30\x6c\xe1\x37\xa5\x34\x11\xe7\x50\x53\x98\xee\x1e\x22\x2a\xdf\x2c\xbb\xd5\x4a\xca\xdb\x62\xe4\xf3\x61\xf7\xb0\xc7\x60\x34\xe7\xdc\x6f\x1d\x83\xf3\x9c\xa6\x0f\x5b\x0c\x96\xb4\x8c\x4e\xa7\xe9\x30\x22\xdb\x4e\x30\x19\x7d\x96\xb8\x9f\xd0\x4f\xee\x13\xa8\x4a\xef\xdd\x27\xf7\x9e\x7d\x60\x09\x7d\x4f\xcf\x3c\x88\xa9\xba\xdd\x33\x5f\xf5\xbb\x25\x16\x13\x18\xb9\x55\xbe\x3d\xe5\x87\x57\xb3\x9a\x8c\x83\x1c\x10\x7e\x86\xeb\x9d\x61\x32\xe9\x85\x04\x54\x73\xcc\x0f\xe9\xee\xf0\x39\xdb\x6e\xbe\x65\xa7\x33\x28\xe8\x9f\x25\x67\x98\x4f\xe2\x3d\x7f\x64\xf6\x8e\xd3\x4f\xe6\x3d\xe3\xdf\x3e\xea\x84\xb9\xf7\x12\x8f\x29\x7c\x28\x1a\xd9\xfe\xf5\xc9\x35\x7f\x28\xff\x03\xfd\xd1\x6d\x54\xb0\xf5\xab\x59\xcd\x96\xd5\x40\xdf\xe7\x77\x69\x28\x9a\xf2\xbb\x94\x37\xbe\x7e\x72\x77\xf6\x91\xd1\x6f\xf7\x29\x4f\x2d\xbc\xf2\x6f\xbe\xdd\xd3\x44\x36\x7e\x9e\xc1\x9d\x7a\x27\xac\x8f\xf6\x7b\xcb\xcd\xd7\x75\x0e\xbb\x22\x7f\x0d\xc5\xa4\x17\xce\x0c\x9d\x21\xae\xb7\x58\xbc\x6f\x56\x2f\xc9\x7c\x5f\x64\x9b\xdf\x0d\x7d\x33\xbe\xe2\x04\xd3\x4f\xe1\x9e\xeb\x12\x99\xca\x23\x7e\x4b\xa5\xff\x2f\xf1\x3f\x12\xff\x05\x2d\x82\x12\x08\x8c\xaf\x52\x4e\xb4\x49\x68\x6a\x31\xd4\x6d\x6a\x13\x89\x41\x99\x1e\x53\xbe\xa2\xf0\x0e\x43\x53\x8a\x54\xa6\x36\x3d\x4b\xde\x8a\x47\x73\x88\xf8\xea\x02\x67\x44\x81\xd8\x67\x87\xd3\x06\xf3\x9b\x37\x18\xdf\xd2\x60\x10\xbd\x40\x4a\x1a\xbc\x79\x40\xa3\x9a\x8f\x87\x58\x95\x9c\x8a\x7a\x08\x9b\xee\xdf\x56\x45\x76\x3c\xfe\xdf\x7f\xae\x2a\xfd\xb2\x80\xa5\x8f\xe2\x54\x55\x1b\x2f\x1d\x4c\x80\x0f\x07\x54\x1e\x63\x23\xe0\xa6\x51\xa7\x13\xcf\x00\xe7\xe5\x04\x0d\xfc\x2e\x56\x81\xf6\x41\xa2\x98\x4f\xef\xc3\x89\x74\x29\xf3\xa9\x11\x25\x1e\x62\xff\x07\x33\xa0\x40\x78\x23\x6c\x62\x9a\x71\x94\xf0\x3f\xf5\xed\xa3\x4b\x18\x5b\x31\x82\x11\x43\x39\x71\x78\xc4\x2d\xfd\x37\xf1\x1f\x8c\xc2\x0b\x95\xb8\x44\x5d\x1b\x78\xae\x12\x9d\x68\xf8\xa2\x13\x7b\xc4\x92\x02\xfe\xfb\x76\x6f\x88\x4a\xc4\x2a\x65\x28\x87\xa6\x8a\x28\xe2\x38\xfc\x83\x21\x85\x3e\x31\x77\xc7\xd8\x63\xca\x09\xf7\x01\x14\x30\x92\x90\xc6\x20\x47\x0a\x4a\xe1\x17\xc4\x45\x60\x90\x6a\x80\x61\x30\xd2\x55\x8a\x81\xa3\x01\x80\xa9\xea\x13\x8b\xab\x93\x7b\x44\x85\x49\x05\x91\xe8\x74\x89\xe7\xbd\x78\x49\x46\x27\x4c\x24\x00\xee\xec\xd5\x5b\x12\xc1\xd0\xe2\xad\xde\x9f\x17\x45\xf4\x31\x7b\x28\xba\xe4\x3d\x18\x41\x74\xaa\xf8\x40\xf4\xd0\xa9\x6a\xc3\x91\x43\x5b\x35\x67\x47\x0d\x6d\xd5\xeb\x06\x13\x79\x28\x4e\xf3\xa2\x85\x7a\x48\xc3\x91\x42\xf1\xfd\x74\x94\xd0\xa8\xd8\x60\x84\xd0\xa8\x54\x1c\x1d\x34\x7a\x35\x5a\x6f\x24\x2a\xa8\x2f\xd7\x8e\x08\xea\x9f\xfe\x16\xd1\x40\xe3\x69\x58\x1c\x09\x34\xae\xbe\x38\x0a\x68\x5c\xbd\x86\x38\x23\xfa\x67\x54\x6e\x24\xf2\x27\x96\x4b\x99\xfe\x0d\xf4\xb9\x2f\x9b\xf5\xe9\xee\xcf\x3f\x30\xfd\x43\x72\x97\x6f\x3e\xdf\x9d\xfc\xf7\xf9\x6a\x5e\xc5\x6c\x4a\x65\xae\x30\xc4\x19\xf4\xf3\x53\x4c\x7f\x60\x1a\xb4\xb9\x6f\xf7\xe8\x25\x9b\x68\xc2\x30\x24\x34\x37\x9f\x24\xb1\xee\x0e\xbe\x3d\xc2\x07\x88\xd3\x8c\x38\x5a\xbe\xe5\xc4\x59\x55\xbd\xd6\xee\xdb\x3d\xbc\x95\x89\x20\x96\xf9\x22\x8f\xf8\xd9\x85\xa0\x46\xe1\xab\x11\xf8\xd6\x81\xec\xe4\xa8\x7a\xef\x08\xd7\x6d\x00\x1f\xe1\x61\x82\xb1\xd0\x3b\xb5\xb1\xc2\xb7\x59\xec\xb6\x39\x95\x3d\xdc\x36\x7a\xfd\x9d\xac\xf2\xc3\x69\x73\xbb\x59\x65\xa7\x3c\xf0\x11\x72\xb7\x59\xd7\xa2\xec\x80\xa3\xc7\xe3\xe6\xb8\xb9\xd9\x14\x9b\xd3\xd7\x14\x8a\x37\x8f\x0a\x0f\xf9\x63\x9e\x15\xc9\x66\xbb\x7f\x38\x5d\x22\xab\xce\xd7\x3f\xc6\xb6\x83\x41\xd4\x7b\xa0\xf6\xf4\xa0\xb7\xed\x9e\x8e\x1c\xef\x76\x5f\x16\x74\x04\x8a\xf7\x74\x64\x31\xea\x15\x9c\x51\xd4\x1b\xad\xd5\x99\xe7\xc8\x66\x7b\xbb\x3b\xdc\xe7\xeb\x10\x3c\x28\xb9\x6b\x59\x87\xbb\xcd\xc3\x0a\x7a\xd7\xfe\xdd\xe8\x2c\xfa\xe2\x94\xf6\xa4\x9a\xa3\xbe\xf9\xdf\x36\xf7\xfb\xdd\xe1\x94\x6d\x4f\xdf\x49\x7e\x7f\x93\x1f\xd2\x9b\xec\xb8\x59\xa5\xeb\xc3\x6e\x0f\xd2\xf3\xf3\x7e\x77\xf4\x12\xea\x21\x2f\xb2\xd3\xe6\x31\xef\x2f\x77\xd1\xfb\x14\x05\xe6\x7c\x7b\x1a\x7f\x9b\xbc\x7d\xbe\xd9\x3d\xa5\xc7\xcd\xb7\xcd\xf6\xf3\xe5\xcd\xee\xb0\x86\xa2\xbb\xa7\xfe\x96\xca\x5a\x35\x66\xd9\xcd\x71\x57\x3c\x9c\xf2\x77\xc8\x63\x2e\xb3\x87\xd3\xee\xdd\xb7\x14\xb9\xe8\x25\xa3\x94\x76\xc7\xe1\x0f\xb7\xb7\xb7\xe3\xd0\xd3\xb4\xc8\x6f\x4f\xcf\xf0\x71\x49\xa7\x8a\x1e\x80\x9f\x3d\xe3\xe7\x60\x61\xd8\xb0\x8b\xec\x6b\x8d\xf5\xed\xe6\x29\x5f\x37\x50\xbb\x3c\x7c\xbe\xc9\xfe\x44\x2f\xe0\x3f\xa2\xde\x84\xce\x30\x4a\xff\xf8\xce\x33\x4c\xff\xbd\xee\xd8\xbb\xd3\x6e\x7f\x49\xdf\x79\x14\xdf\xed\x77\x20\x80\x1c\x52\x10\x65\x4f\x47\x9c\xff\x09\xb4\xbf\xec\x0e\xf7\x77\xbb\x22\x4f\x77\x87\xcd\xe7\xcd\xf6\x79\xbd\x39\xee\x8b\xec\xeb\xe5\x66\x5b\x6c\xea\xca\xfb\xdd\x97\x4a\xd2\xa8\x60\x4c\xcd\x58\x54\xe9\x74\xd8\x7c\xfe\x9c\x1f\xba\x94\xf4\x2e\x54\x3c\x64\xeb\xcd\xc3\xf1\x52\xee\x9f\xfa\x67\xea\x1d\x5a\xcf\xcb\x41\x20\x46\xbd\x83\xc1\xbc\x2d\x76\x5f\xd2\xa7\xcb\xbb\xcd\x7a\x9d\x6f\xdf\xa1\x6f\x59\xf9\xf8\x32\x2f\x8a\xcd\xfe\xb8\x39\xbe\xbb\xdf\x6c\x9b\x15\xf3\xfb\x77\x28\x66\x7a\xcc\xfc\x22\x29\x17\x53\xe7\x85\x47\x60\xb3\xbd\xcb\x0f\x9b\xd3\x58\xcf\x82\x17\x5b\x18\xd7\xcb\x1f\x7e\x78\x57\x0e\x25\xc6\xee\x7a\xb7\x2a\xf2\xec\x70\x79\xb3\x3b\xdd\x8d\x41\x49\x71\xb1\x3f\xe6\x17\x63\x2d\xdd\xee\x56\x0f\x47\x3f\xf6\x77\xd9\x7a\xf7\x65\x6c\x9e\x2b\xb8\x37\x79\xb1\xfb\x32\x02\xf5\x6f\xd9\x61\x93\xa5\xf9\xd3\x3e\xdb\xae\xf3\xf5\x9f\x4f\x87\x87\xfc\x97\x81\x15\x5b\xc1\xdc\x6c\x41\xd1\x5e\xe5\x0b\xc1\x3e\x57\xb4\x72\x3a\xed\xee\x71\x8d\x95\xd3\x4f\xdf\xc5\xef\x70\x39\x55\x2f\xa7\xfa\x98\xdd\xec\x1e\xcf\x45\xe6\xb4\xdb\xf7\x63\x02\x2f\xfa\xd1\x88\x9a\xc0\x81\xb8\xdb\x15\x6b\x24\x02\xa4\x5a\xe7\x5c\x45\x04\x37\xc5\x6e\xf5\x6b\x0f\xc9\x7e\xb9\xdb\x9c\xf2\xf4\xb8\xcf\x56\xc0\xae\xbf\x1c\xb2\xfd\x00\x15\xf7\x36\xea\x45\xfa\x74\xb3\xda\x6d\x7b\x38\x61\xbc\x96\x53\x8f\x82\xe7\x28\xb4\x64\x27\x25\x03\xf1\xe3\x7d\x49\xdf\xdd\x67\x87\xcf\x9b\xad\xe7\x9f\x61\x04\x8e\xa7\xaf\x45\x7e\x79\xdc\x15\x9b\x75\xf9\xc8\x43\x31\xfb\xa7\x44\xee\x9f\x92\x6a\xac\x42\xc7\xb3\x2c\x4b\x1a\xfb\x4b\xf3\xfb\x3b\xcf\x20\xd5\x7e\x88\xb1\x8f\x4c\x55\x32\x35\x04\xd8\x0e\x86\xc8\x3f\xec\x4e\xd9\x29\xff\x13\xb3\x74\x9d\xc3\xb6\xda\x53\x11\x17\x64\x7a\x73\xea\x1b\xb9\xd5\xc3\xe1\xb8\x3b\x5c\x06\x76\x1a\x70\xe6\x0d\xa4\x7b\xd7\xee\xfd\x43\x71\xda\xec\x8b\x3c\x45\x79\xe7\xf9\x76\xb7\x3d\xa5\xb7\xd9\xfd\xa6\xf8\x5a\x32\x90\x77\xf8\xec\xb8\xf9\x96\x57\x4f\xfc\xc8\x79\x66\xd3\x3b\x61\x4d\xbe\x57\x56\x2a\xd9\x55\xb6\xdf\xe7\xd9\x21\xdb\xae\xc2\x5e\x1f\x0e\x19\x61\x27\xc8\xd6\x6b\x60\xcb\xf4\xdd\x6d\xb1\xcb\x4e\x97\x40\xda\x5d\xc6\xda\x9c\x18\x24\x3b\xd8\x56\xb6\xa7\x4b\xbe\xa8\xa7\x97\xeb\xcd\x11\x78\xdc\xfa\xb9\xcb\xb9\xf3\xbc\x7f\x13\x19\x80\x74\xd9\x5c\x46\xbb\x7d\xb6\x02\xd5\x84\xbd\xab\x17\xd4\x22\x60\xe5\x30\xe1\xcf\xf4\x75\x41\xdf\xef\xbe\xbd\x36\xc4\xe3\x6c\x44\xfd\x26\xd1\x31\x1d\xfc\x6d\xb3\x7e\xfb\xe7\x1f\x2e\x7f\xf8\xa5\x6b\x55\x00\x0d\xaa\x77\x53\xa9\xd0\x08\x96\x80\x9b\xd3\xd6\xdb\xb6\xef\xa0\xfa\x9b\x0a\x01\xa2\x7a\x7b\x53\x55\xdf\xed\x31\x14\xe5\x73\x4d\x78\x81\x93\xf4\xb3\xcb\x56\xbd\xc0\x85\x2f\xd9\xfe\x29\x41\x46\x93\x7c\x3e\x64\x5f\x7b\x64\x83\x30\x0a\x42\x88\x1e\x31\x21\x97\xf0\x5f\x4d\xfb\xc0\x9c\xa6\x17\x15\x23\x52\x35\x57\x49\xc0\x9b\x03\x63\x4b\xe0\x53\x0c\xac\x86\x9e\xa1\x7b\x8e\x39\x47\x3f\xd3\x46\x93\x4c\x35\x50\x72\x00\x7a\xb0\xdc\x78\x5e\xd2\x19\x1e\xe0\xb1\xad\xe1\xa1\x4d\x69\xb1\xcb\x68\xfa\xf8\x48\x3d\x52\x43\xbc\xad\x89\x45\x25\x78\xf4\xe3\xd2\x2b\x8e\xf4\x4a\x8e\xe5\x9e\x8b\x52\xeb\x40\x9f\xfc\xd4\xc4\xef\x3a\x22\x60\x8f\xec\x18\xa3\x51\xed\xb8\xe5\x7e\x3b\x2d\xcf\x95\x48\x4e\x88\xfb\x28\x6b\x34\x84\x87\x81\x7e\x84\x7d\xd5\x6b\x62\x2f\x14\x7b\xce\x41\x13\xc5\xbe\xde\x85\x3f\x13\x40\x29\xe3\x35\xbb\xda\xed\xcd\x40\xef\x5f\x2a\x54\x2d\xc5\xb1\x5e\x00\xbd\xe0\x4a\x1e\x85\x27\x7a\x5e\xaa\x09\x2a\xb3\xe7\x54\x8d\x5d\x73\xb6\x86\x30\x25\x0c\xf6\x8e\xbd\xff\x27\x5f\xa7\x9b\x53\x7e\x7f\x91\xfd\xed\x90\x17\x6f\xff\x5c\x5a\x50\x7f\x29\x6f\xc4\x78\xb4\xfc\x2a\xb1\x03\xeb\x33\x74\xc9\x9b\x21\xa1\x5f\x37\xbb\xa7\x5f\x9e\x2b\x39\xf3\xab\x17\xe4\x4a\xe4\xab\xe7\xc7\xd5\x61\x57\x14\xd0\xd5\xd3\xee\x61\x75\xf7\xee\x3e\x7b\xaa\x16\x16\x27\x5c\xe5\xf7\x23\xad\xb5\x98\x5c\x83\x8b\x0c\x61\x89\x4e\x23\x5e\xa4\x2b\x65\x85\x20\x7d\x37\x44\xe5\x00\x75\xbb\x3b\xa5\x59\x51\xec\xbe\xe4\xeb\x65\xb0\x7a\xc5\x43\x8f\x71\xef\x24\xf8\x57\x53\x58\xf5\xa8\xd4\x73\x31\x6d\x36\x50\xce\x78\xa9\x74\x74\xf6\xae\xf5\x7a\x1a\xc8\xea\xe1\x00\xa2\xda\x20\x0c\x65\x9d\xb9\xbd\x79\xd7\x35\x6f\x74\x07\x30\xdd\x66\xf7\x79\x39\x91\xe1\x86\xa2\xdf\x34\xbe\x78\x32\x30\xb4\x7f\x49\x46\xf2\x79\x6b\xd8\x16\x8b\x7f\xb5\xb4\x90\x30\x8d\xfb\x6d\x7f\xa3\xde\xe9\xe8\x8c\x37\xbe\x9b\xa1\x15\xbf\x92\xf8\xd0\x86\x7b\x4e\x23\x61\x41\x44\x0d\x48\xba\xb8\x81\x3e\x30\xe7\xe2\xd9\xd3\xe5\xa1\x65\x59\xce\xe5\x7a\x73\xf8\xf3\xe1\x54\xfc\xd2\x98\x0e\x6f\x7d\x9f\x59\xaf\x17\x99\x29\x1e\x38\x0b\x48\xc4\x28\x4b\x86\xe8\x65\x83\xb9\x9d\xea\x85\xdb\x12\x3f\xcf\x47\x70\x48\xf7\x43\x71\x12\x11\x3d\x1f\xc9\xa6\x6a\x8b\xf3\xa8\xf6\x4f\x41\x17\xdd\x6c\x37\xa7\x4d\x56\x9c\x0f\xbb\xd6\x7e\x3d\xb1\xcd\x03\x5d\x6e\xbd\xe3\xb0\x5f\x69\xb5\x06\xad\x7b\x68\x19\xfc\x76\xb8\xb4\x56\xa3\xc7\x63\x70\x55\xbf\x14\x8f\xde\xd6\x7e\xdb\x5e\xf7\x8d\x33\x2c\xa7\x3f\x14\x3b\x58\x5f\xfe\xf6\xf4\x8f\xeb\xcd\x63\x72\xbb\xdb\x9d\xf2\x43\x79\xaa\x8c\xf2\xff\xc5\x54\x29\x54\x1c\x7b\x4e\xc4\x6f\x37\x79\xb1\x3e\xe6\xa7\x63\x42\xea\x33\xf5\xe3\x55\x04\x7b\x69\xad\xd0\x16\xa6\xd0\xc0\xf5\x92\x07\x5f\xb2\x12\x5e\xcf\x9b\xc1\x3a\xfe\x12\x5b\x8c\xcf\x44\xa9\x00\xeb\x7e\xb7\xce\x8a\x74\xbd\xc9\x8a\xdd\xe7\xc4\xcb\x62\xeb\xdd\xea\xe1\x3e\xdf\x9e\x7e\x49\xd6\xeb\x24\x2b\xc1\x4d\x17\x9c\x03\x71\x3f\x13\xe0\xbe\x86\xd7\xcc\x9e\x1d\x8e\xc4\x0e\xf9\x31\x3f\x95\x70\x06\xdf\x87\xfa\x5d\x3f\x82\x86\xeb\x40\x4c\x1f\xf3\xca\x7a\xb8\x38\x98\xfe\x88\xcd\xf7\x21\xc0\xe8\x3e\xf7\xe5\xf1\x34\xbc\x31\xa0\xf5\xef\xc6\xfb\x7d\xfc\xba\x1a\x85\x67\x34\x71\xad\xf3\xd5\xee\x80\x5e\x89\x97\x0f\xdb\x75\x7e\xc0\x73\x8e\x09\x9a\x5e\x4a\x97\x7d\x74\xf3\xb6\x97\x18\x6b\x73\xff\x6b\x53\xf0\x24\xed\x0e\x37\xfd\x1b\x2e\x84\x69\x8a\x1d\xa6\xc5\x79\x94\xd5\xa5\x9d\x1e\x6a\x0a\x7d\x3f\x9b\xfc\x1a\x84\x17\x40\xcd\xa5\xcc\x9a\x26\x9b\x15\x07\x49\xd6\xcb\xd1\x87\xcf\x37\x7f\xf2\xc7\xb6\x3e\x9c\x82\x3f\x11\x7e\xf3\xe6\x9f\x46\xb7\x31\xa1\xfd\x6b\xce\x7a\x6b\xb2\xf6\x49\xd6\x56\x5c\x67\x1c\x8d\x4f\xee\x89\xe5\x2a\x5a\xb8\x71\x8d\xac\xfb\x99\xeb\xb2\x2c\x36\xbd\xa5\xcc\x2a\xd9\xa0\xc8\xe1\xcd\xa0\x2c\x30\x8b\xc3\x0f\xae\xb1\xce\x8a\x69\xaf\x04\xff\xfb\xb9\x3a\xcd\xf8\x3e\x8e\x3a\xb6\x90\x04\x2b\xca\x5d\x5e\xec\x7f\xf1\xa0\xba\xcf\x3b\xcb\xe9\xb4\xdb\xe6\xe9\xe7\x43\xf6\x35\x95\x94\xbe\x79\x33\xd1\x50\x13\x54\x99\x99\x09\x5b\xea\x79\x51\x1b\xce\xe5\x04\xd4\x3b\x5e\x92\x28\x7c\x1b\x41\xd1\xcd\x40\x11\x40\x0c\x61\xd9\xff\xee\xb9\x36\x15\x13\xad\xf2\xfb\x60\x0d\x43\x43\x1f\xe1\xf5\x6f\xd4\x13\xe0\xc1\x77\x72\xca\x6e\xd2\x63\xf0\x86\xdf\x5f\xee\xb6\xc5\x57\xef\x03\x9f\xf4\x40\x2f\x0f\xc4\xbd\xad\x0c\x9d\x09\x6f\x77\x87\xfb\x60\xaa\x13\x9c\xee\x9f\x4a\xfb\x5b\x0a\x3f\x12\x50\x45\x12\xda\x28\x9a\xe4\xf7\x23\x83\xa2\x60\x50\x82\xb9\x3b\x58\xf4\x0e\xf7\x59\xd1\x6f\xf6\x6f\x74\x8d\x41\x47\xea\x36\x9a\x34\x7f\xd1\x78\x8e\xb8\x96\x92\x72\x4f\x3d\x7c\x1f\xc0\x96\x67\xa8\x4d\x77\x9a\x46\x0b\x63\xc7\x9d\xcd\x26\xc3\xf2\x09\xee\x99\xc7\xfc\xf4\x26\xb2\x6b\x36\x20\xee\x0f\xbb\xcf\x87\xfc\x78\x7c\x2e\x0d\x98\x49\xf6\x70\xda\x4d\xb2\xac\xce\xbc\x33\x4e\xff\xf8\xae\xeb\x99\x01\xdd\x4d\xd9\xfe\xc9\x7b\x97\xa4\x62\x44\x43\x68\x5a\x87\x6b\x33\x2a\x83\xf9\x94\x1c\x26\x95\xf6\xf9\x75\xcc\x61\xb7\x57\x8d\xbf\x6a\x22\xca\x91\x0e\xa3\xb1\x3f\xec\x6e\x37\x45\xa5\xd1\x5c\x12\x97\xdf\x27\xf5\x44\x85\xd7\xc9\xda\xbb\xd0\x3f\x37\xcd\x5c\x01\x85\xaf\xfb\x5d\x78\x92\x7a\xfa\x79\xd3\xa9\x3b\x51\xed\x66\x57\xac\x3b\x95\xd6\x17\x1d\x28\xc3\x94\x6c\xfd\xf2\xee\x45\x79\xb8\x96\xc6\x5a\x7e\x7d\x7b\x6f\xe1\xda\x09\xd5\x2f\xca\x5d\x91\x14\x9b\x51\xc6\xe2\xd7\x50\x5b\x3a\xc6\x15\x3b\x03\xf0\x80\xa4\x82\xe0\x6f\x8a\x87\x7c\x00\x7c\x2d\x7c\xcf\x69\xa3\xf4\x7a\x3b\x03\xc9\xab\x62\xd3\xb0\xf8\x7b\xdf\xdf\xbe\xe3\xf6\xdb\x22\x7f\x9a\xc6\x25\x7a\x92\xf5\xb9\x14\x4e\x8d\x73\x64\xc5\x1a\x3a\xa1\x9c\x81\x48\xe7\x06\x52\x92\x45\x47\x06\x7a\x3f\xa7\x3b\x3d\x50\xaa\x4e\x55\xce\x4c\xff\xf6\xc3\xbb\x45\xbd\xb2\x67\xf4\xaa\xc7\x0d\x03\xf9\x2d\xfa\x22\x64\xfb\x7d\xfa\xb8\xc9\xbf\x5c\x79\x96\x53\x71\x49\x9f\xea\xd0\x7f\xff\x25\x08\x19\x79\x91\x9f\x50\x20\x2b\x8a\x6c\x7f\xdc\xdc\x14\x79\xea\x83\x1d\x1c\x87\xa5\x62\x2f\x50\xa7\x5f\xb2\xc3\x36\xc5\xfd\xb5\x94\x7b\xd6\xd9\xf6\x73\x7e\xd8\x79\xd3\xc4\xfe\x6b\x1a\x1c\xf9\x7b\xc4\xe5\x04\x98\x54\xf9\xbc\xe5\xbb\x59\x8b\xd2\x98\x49\x7e\x9f\x6d\xf3\x22\x6c\xdd\xf0\x60\x73\xca\xef\x7f\x69\xc9\x67\x71\x67\x3a\x79\x28\xfb\x93\x3c\x22\x47\xee\xc0\xed\x8a\x73\xcd\xcd\xe5\x62\x46\xf2\xc8\x7e\xb8\xbd\x31\x80\xde\x5e\x4c\x45\x09\x7a\x7b\xe1\x13\x59\xae\x76\xdb\xdb\xcd\xe1\x1e\xd7\x71\xdc\xdd\xcc\xff\x5a\x1d\xf2\xec\x94\x5f\x84\x99\xf0\x8f\xb2\xed\x2a\x2f\xa2\x47\xc7\x87\x9b\xfb\xcd\xe9\xa2\x49\x0f\xd8\xb1\x5f\xa2\x47\xbe\xd4\x2f\x17\x65\xd8\x8c\x32\x73\x66\x0f\x19\xf9\xc1\xf1\xb3\x7d\xda\xbe\x19\xcf\xe2\xb9\x60\xbc\xc6\x73\x78\xce\x07\xd4\xd6\x62\x86\x5c\xc8\xda\x5c\x72\xf9\x22\xaa\x1c\x7b\xc6\x56\x53\x54\x68\xf1\xb2\x8a\x6a\xb7\xd7\x57\xe3\x65\xff\x42\x6b\x14\xe8\x5f\x71\x8d\x02\xc3\x2b\xaf\x59\x68\x68\x09\x46\x65\xce\x5e\x8b\x0d\x28\x3d\x8b\xb2\x7c\xf9\x1a\xab\xb3\xd1\x52\x7f\xa8\xae\xfa\xfd\xf8\x62\xac\x0b\x46\xab\xb2\x7e\xdc\x5d\x9e\xfd\xef\xfc\x0a\x6c\xbf\x6b\x2e\xd8\xfe\x77\x61\xe5\xd6\x2f\xe7\x2c\xe1\x78\x28\x5f\x7d\x2d\xd7\xc8\xbc\xd6\xa2\xae\x7d\xe8\x5a\x67\xb2\x1d\xbf\x9a\x12\x58\x30\xf2\x23\xc4\x19\x44\xf9\xf7\x50\x70\x46\x99\xe9\x4b\x49\xc4\x07\xf0\xc4\xdb\x6d\xbe\x23\x87\x6c\xbd\xd9\x21\x46\x41\x1f\x5f\x36\xd4\x7f\x6f\xd6\x99\x3b\x9a\xbe\x52\xc7\xe5\xea\x2c\x59\xe1\x0c\x79\x60\x68\xef\x1f\xd9\xc6\xa7\x76\xe2\xdf\xd3\xbe\xf8\x1c\xb9\x02\x33\xf4\xbd\x6a\x7a\x63\x79\x31\x11\x37\xa1\xf0\x28\x65\x94\xbe\x69\x12\x74\xb3\x48\x5e\xe4\x8f\x3e\x56\x80\xa0\x74\x32\x4e\x72\x69\x95\x9e\x28\x15\xac\xd2\x23\x57\x2c\x87\x01\xd5\x45\x86\xa0\x1c\xf7\xc5\xe6\x74\x9a\xc2\x28\x2e\x15\x60\xe1\x72\xc1\x27\x17\xe4\xb4\xd9\xc3\x90\xee\x9e\x9e\x27\x87\x46\xc2\xd0\x4c\x33\xdc\x7e\xa6\xfa\x02\xbe\x39\xa9\x7f\x9e\x2b\xf0\xbe\x40\xaa\x3d\xb3\xde\xbf\x9e\x34\x37\x6e\xef\xeb\x5a\x4d\xfa\x8a\xd2\xb1\x59\x28\x49\x73\xe0\x6d\x79\x74\x33\x2c\x1f\x95\x67\x8d\xc3\x25\xaa\xe3\x9f\xf3\x45\xa3\xea\x40\xf3\x7c\x10\x01\x8b\x97\x21\xf0\xa2\xb6\x5f\x4b\xbe\xf0\xb8\xbc\x16\xb4\x26\x6e\xaf\x20\xaa\x34\x91\x7b\x05\x70\xde\x7c\x34\x8f\xcc\x15\x92\xf9\xdc\x30\xb4\xfd\x26\x4d\xb9\x7f\x2a\x3d\xa5\xf5\xfe\xa9\xba\x57\x87\xce\x4e\x93\x90\xbd\xe9\x14\xcd\x9c\x91\x99\xf7\x77\x66\x9f\x78\x81\x8c\xf2\xbf\x86\xd6\xdf\x77\xe5\x75\xf1\x24\xd7\x16\x7a\x94\x9c\x4f\xf9\xe1\x7e\xb3\xcd\xc6\x27\x7f\xac\xce\x62\xa2\x18\x03\xd6\x26\x96\xe1\xb2\xfd\x44\x34\x5c\x7e\x90\xb8\x86\xab\x8c\x13\xdd\x70\xbd\x7e\x52\x1b\x2e\x3f\x4e\x82\x83\xf5\x22\xd2\x1c\x2c\xd5\x25\xd9\x59\x45\x3d\x91\x4e\x14\x6d\x92\xf8\xac\xa2\x81\xf4\x07\xcb\x2e\x5f\x12\x43\xa0\x06\x0c\xb7\x8a\xfe\xd1\x1f\x1c\xc1\x97\xa6\x5d\x3a\x65\xbc\x3a\xf3\x4b\xfd\x19\xd3\x79\x36\xde\x4a\x5a\xad\x31\xfb\xf1\xed\x2c\x53\x55\xbb\xc2\xf9\x66\xab\x36\xa4\x41\x13\x56\x5c\x70\xc2\x9c\x15\x17\x9e\x36\x4a\xc5\xe5\x67\x9a\x96\xe2\x4a\xe3\x56\xa2\xb8\xec\x4c\x8b\x51\x54\xa9\xdf\x7a\x14\x15\x19\x51\x6c\x06\xcb\xb5\xac\x4a\x3d\xe5\x7a\x95\xa1\xc1\x72\x6d\x6b\x53\x54\xf0\x05\x1a\x54\x13\xce\x73\x1d\xfa\x21\x5c\x4b\x3a\x87\xf8\x91\x84\x46\xa9\xbd\x2a\xb1\x9c\xbc\xab\xaa\x1d\x7a\x0e\x6f\x06\x08\x38\xbc\x1d\xa6\xd8\x50\xa0\x87\x44\xf1\xcd\x0c\x51\xa3\x04\x31\x41\x84\xbe\x54\x4c\x75\xfe\x59\x0f\x99\x75\x5f\x04\xba\x6a\xbe\x88\x08\xa9\xfb\xa2\xa4\x1c\xff\x66\x0e\xa9\x34\x7a\xdc\x90\x3b\x22\xaf\xdc\x86\x90\xf9\x2e\x72\xe9\x67\x76\xff\xd4\x78\x17\x9d\xbe\xa9\xf3\xb8\xa9\x47\xa7\x11\xd1\x6a\x9c\xb0\x46\x62\x5f\xcd\x25\xb0\x26\x88\x7e\x42\xab\x4b\x8c\x11\x5c\x5d\x6a\x82\xf0\xea\x82\x73\x08\x70\x30\xd6\x56\x93\x10\xeb\x42\x73\x08\xb2\x2a\xdd\x43\x98\xd5\xbb\x21\x02\xed\x2d\xd0\x24\xd4\x56\x81\x2e\xc1\xf6\x16\x88\x08\xb7\x8e\x4c\x75\x26\x01\x57\xca\x57\x79\xb9\xf3\x1c\x52\xc4\x43\x69\x84\xfe\x66\x94\x10\x5b\xe5\x96\x93\x61\x0b\x40\x87\x08\xa3\xf7\x03\x24\x18\x95\x19\x26\xc0\xa8\xd8\x80\xbc\x1b\xde\xcf\xe1\x82\x11\xb8\x09\xd2\x6b\x96\x8d\x09\xaf\xf9\xa6\x87\xec\x86\x5e\x07\xa2\xeb\xbe\x8e\x48\x6e\xe8\x75\x49\x70\xcd\xf7\x73\xc5\xd1\x68\x84\x6a\xae\xd9\xe3\xca\xe1\x0f\x41\xb3\x62\xf3\x79\x7b\xe9\xa3\x0f\xbf\xfb\xcf\x87\xe3\x69\x73\xfb\xb5\xbc\x38\x5a\x3e\xc6\x32\x78\xc3\xe8\x58\x3e\x2a\x3d\x89\x56\x59\xb1\xfa\x13\x51\xf9\x7d\x92\x26\x6c\xff\xf4\x26\xc1\x07\x9c\xf0\xea\x09\x46\x97\xa9\xfc\xb3\x5e\x40\xee\x45\x56\xb9\x60\x4c\xd3\x7c\xab\xf0\x99\x84\xdf\x82\xd2\x4f\xfd\x51\xa1\xb1\x25\x10\x15\x9c\x58\x07\x51\xd9\xa1\xc5\xd0\x28\x34\x7b\x45\x44\x80\xe7\x2c\x8b\x66\x85\x9e\xb5\xd1\x7c\x3d\xb4\x40\x86\xca\x34\x57\x49\xb7\x4c\x77\xa9\x0c\x95\x89\xd6\x4b\xb3\xd0\xec\x45\xd3\x19\xc9\x7a\xe5\x74\xef\xd4\x55\xf4\xdb\x06\x9f\x5d\x0c\xbf\xf3\xcd\x45\x9e\x92\x7e\xed\xc8\x6a\xa5\xf4\x88\x32\xc1\x8f\x6f\xb8\xe4\x7f\x1d\x2c\x9c\x7f\xb0\xd0\xf6\x86\xec\x61\x88\xbd\x4e\xb2\x03\x41\xbd\xa6\xec\x7b\xcf\xc1\x90\x2a\x54\x53\x32\x9d\x3a\xc8\x1b\x3d\x79\x9b\x3a\x4d\x2b\x43\x51\x34\x0f\xcb\x02\xca\xe1\xa8\x71\xd6\x81\xe4\xdc\x03\x96\xe4\xdf\x1c\xfd\xe3\x9b\x56\x48\xa7\x1e\x3b\xe1\x78\x8f\xaf\x82\xe7\xf4\xd4\xe1\xa5\xa7\xf4\xf1\xf8\xb0\x23\xa0\xea\x42\x43\x70\xa2\xa1\x1c\x01\x15\x97\x43\x68\x4d\x77\xdf\x81\xc1\x3f\x67\xe2\x7f\xa3\x61\xfa\x47\x8d\xe1\x6f\x33\xc6\xc3\x34\xc9\xfd\xa1\xdf\xc4\xf8\x78\x4e\x3d\x27\xce\xf0\x24\x5e\xbe\xd8\x73\xd3\xbd\xfb\x7f\x09\x6a\x2f\x3b\xac\xf6\x4f\xc9\x9c\x4e\x27\x0f\xc5\x28\x92\xfd\xef\xa3\x96\x93\x87\xa2\xdf\x69\xb9\x1b\xab\xa4\xdf\x25\x28\xde\xd8\x01\xeb\x1e\x47\xc1\x4e\x55\x74\x36\x1f\xbb\x3a\xe1\xb5\x3a\xbc\xb4\x51\xc9\xbd\x0a\x87\xe4\x7a\xb7\xce\x3f\x6e\x0e\x87\xdd\xe1\xf9\x3e\x7b\x2a\x45\x62\xae\xcb\xb2\xe5\xf6\x00\x42\x72\x79\xe8\x86\xc1\x49\x5a\xc2\x00\x6f\x41\x0b\xb1\x4a\x9e\x3b\xb1\xf3\x9a\x9b\x4c\xa3\x78\xb1\xd9\x9e\xd2\xd3\x6e\x57\x9c\x36\xfb\x9e\x88\x14\xb7\xee\xd6\xdd\x96\x01\x6a\x1a\x61\x6b\x42\xaa\xa6\xaf\xdb\x53\xf6\x94\x62\xae\x34\x5c\x64\xed\x4d\x84\x96\xd1\x35\x38\x83\xff\x1a\x71\x96\x98\xd8\x3f\x55\x93\x62\xf6\x4f\x89\xdd\x3f\x25\x0e\xfa\xb2\xba\x4f\x8f\xe9\x5d\x76\xbc\xdb\x34\x07\xa9\x11\xac\x69\xd6\x0e\xe4\x9c\x7b\xd3\x94\xa1\x02\x1e\xab\xdb\x35\x5f\xb3\xc6\xf3\x66\x40\xb9\x32\xee\x8b\xc7\xf2\x7e\xb7\x3b\xdd\x01\x76\x38\xec\xad\x10\x58\x4d\x34\x93\xe6\x78\x7e\x7e\x00\xa2\x3c\x3e\x37\xaf\x6c\x84\x61\x5a\x67\x87\x5f\xd3\xcf\x87\xfc\x6b\xcf\x26\x1a\x15\xf4\x30\xca\xa2\x35\x82\x83\x8d\x7a\x9f\xae\x28\x4e\x94\x9f\x26\xe8\x40\xf2\x87\x5b\x7b\x6b\x6f\xe9\x60\x6d\xe8\xda\xf6\xe1\xfe\xa6\x0e\xc5\xa8\xd7\x36\xb3\x76\x60\x2a\x52\x3c\xd0\xce\x31\x71\x43\x44\x78\x21\xf8\x44\x83\x8a\x60\xde\x25\xb7\x62\xb4\xe9\xcb\x4b\x5f\x13\x19\xcc\x48\xb9\x2b\x1f\x4e\x78\x41\xe1\x76\x8d\xe5\x98\x61\xdc\xba\x45\xe8\x2d\xad\xd1\x5b\xed\x39\x0e\x71\x3b\x20\x5e\x31\xfa\xc7\x37\x11\xfe\x18\xb7\x7c\x75\x9f\xae\x76\xf7\xf7\xf9\xf6\xd4\x47\x83\xe5\x52\xcd\xbf\xf6\x57\x3d\x9e\x0e\x9b\xed\xe7\x8b\xe1\x57\x29\xef\x03\xbb\xcf\x56\xbf\xe6\x87\x7e\x90\x11\x69\x45\xb5\x8e\xf9\xe1\xb6\xbf\xce\x63\x76\xd8\x80\x60\xdf\x8b\x48\xf9\xb2\x42\xe5\x0f\x2e\xb7\x72\xa5\x7a\x21\xad\xf3\xdb\xa5\x08\xef\xf6\xf9\x21\x3b\xed\x7a\x51\x46\x26\xd7\x5b\xeb\xd7\xfc\xeb\x97\xdd\x61\xdd\x57\xe9\x6b\x5e\x14\xbb\x2f\xfd\xd5\xb2\xd3\xee\x7e\xd9\xd8\xdc\xe7\xa7\xac\x77\x5c\x4e\xd9\xe7\xa5\x5d\xcd\x91\xb7\xf6\x54\x3a\xe4\xeb\x21\x7c\x4f\x87\xcd\xcd\xc3\xa9\x7f\x6a\xfe\xe7\x43\x56\x6c\x6e\x37\x8d\xa0\xae\xb7\xab\x4c\xe9\x5e\x48\xfb\x03\x0c\xf4\xe9\xeb\x8c\x49\xbc\x79\xd8\x14\xa7\xcd\x76\x9c\x1a\xc4\x48\x9b\xcd\xa5\xe7\xaf\xcb\xfa\xbd\xba\x5a\x66\x11\x6b\x60\x94\x71\x36\xcc\x1a\xee\xb3\xd3\x0a\x36\x86\x9b\x03\x8c\xec\x69\x38\x4e\xc2\xc8\x2d\x20\xf4\x40\x6b\x6e\xc9\x87\x3c\x5b\xfb\xab\xa1\xbb\x75\x7e\x8f\x0d\xf5\xb0\xf8\x63\x25\x6d\xf8\xfd\xa0\xb7\x56\x6b\x90\x26\xd9\xc0\x1c\x20\x4d\xde\xb0\xac\x7c\x3f\xc3\xb8\xcd\xd6\xf9\xba\x5c\x4d\x73\x01\xc6\x9b\x54\x26\xb2\xd5\xcd\x6a\x7e\xed\x16\xbd\x8d\xf8\x05\xce\x85\xd8\x61\x44\x03\x63\x8c\xf7\xfa\x30\x3d\xcb\x3a\x4f\xf3\xf5\xe6\xb4\xc3\x64\x48\xbb\xe2\x26\x3b\xd4\xf9\x91\x26\x99\xbe\x8a\xfd\x1b\x2f\x81\xc4\x32\x10\x13\xb2\xf5\x26\xdf\x9e\x42\xf8\xde\x8b\xc1\xba\x89\xa2\x7f\xec\x7d\xcb\xf0\x2d\xc8\x56\x6f\x3a\x92\x5e\x2b\xd4\xe2\x84\x67\x6b\x33\x60\xe1\xe4\xe5\xf1\xf1\xe1\xa8\x1e\x25\xe4\xb4\x39\x15\xf9\xa4\xe7\x67\x43\xb6\x94\xfb\xa7\x76\x74\xb6\x76\xd8\xbd\xf9\x8d\x87\x77\xc7\x7c\x9f\xf9\x6d\x61\x20\xe6\x66\x1f\x66\x62\x5e\x4f\x47\x42\xbe\xcd\xf7\x67\x1d\xe1\x36\x28\x0c\xcf\x76\x38\x9f\x63\x24\x1a\x6e\xcb\x74\xba\x5c\xde\xaa\xef\x4b\x91\x73\xb3\xd9\xfa\x53\x5a\x9f\x45\x2b\x59\xaf\x93\x3e\xd3\x7a\xfb\xf0\xb4\x09\xe2\x71\x93\x7f\x99\xae\x3a\x6f\x20\x71\xa0\x22\xe4\x9f\x63\xfb\x55\xb9\x3c\x40\x2b\x6b\x07\x4b\xed\xfa\x4f\x36\xa3\xd8\x77\x07\xa4\xc7\x13\xa8\x8a\x2b\xde\xcd\x64\x80\x31\xc7\x7a\xe2\xe5\xfb\x9b\xa2\x4d\xf0\x57\xfb\x43\xde\xda\x27\xc6\x09\xf0\x62\xee\x6a\x78\xee\x39\xfb\x69\x9f\x12\xa1\xc2\x9c\xde\xe4\xa7\x2f\x79\xbe\xad\xb0\xc4\xdb\xc2\x53\x0c\xb0\x3b\x80\x0d\xb7\x27\x59\xeb\xc1\x52\x2e\x58\xc1\xcf\xd0\xf4\x25\xeb\x57\xe7\xcf\x67\x02\xa5\x7e\x5e\x3b\x67\x85\x00\xca\x21\x62\xfc\x42\xe0\xf5\xc6\x8e\x87\x71\xf0\x91\xae\x37\x07\xaf\x0e\x5c\x1e\x76\x5f\xea\x46\x90\xf6\xba\x13\xb1\xb4\xc1\x68\xb1\x3c\xb7\xed\x15\x73\x79\x56\x7f\x7c\x86\x3a\xc2\x82\xad\xbd\x87\x79\xc3\x92\x81\xc3\x16\xf5\xb8\x87\xb2\xba\x83\x30\x95\x13\x73\x79\xf6\xcb\xe9\x3c\x97\xb3\x33\x5a\x56\x33\xf8\xf9\xb0\x59\xbf\x83\x8f\xf4\x94\xdf\xef\x8b\xec\x94\x43\xed\x87\xfb\xed\xf1\x92\xdd\x1e\x30\xe8\x44\xeb\xf5\x61\xf7\xe5\x78\xa9\xe8\x1f\x61\x87\x6e\xbd\xca\x0e\x79\x76\xbc\xfc\x21\x1c\x20\x85\x63\x8d\x1f\x92\x1f\x42\xf6\xcc\xf2\xc1\x74\xb6\xd0\xd2\x68\xb9\x3c\x3f\x68\xab\xe6\x48\x46\xd0\xb2\xe4\xc2\xb4\xfc\xcf\xd8\x65\xe8\xe9\xa5\x7f\x10\xa8\xe1\x98\x17\xb7\x97\xc7\x53\x76\x38\xcd\x4d\x86\x7a\x7e\xfa\xd3\xf9\x09\x4f\x17\xa7\x38\x6d\x74\xcf\x3f\x68\x76\x2f\xdf\xae\x67\x67\x7a\x7d\xfb\x82\xec\xae\x6f\x17\x64\x74\x7d\xbb\x3c\x8b\xeb\x5b\x64\xb3\x29\xb0\xd5\xc0\x5d\x9b\xca\xcd\x54\xff\x02\x15\x9f\xd3\xbd\x76\xd5\x91\xde\x55\x45\x67\x77\x2e\xd4\x68\x4c\x60\x78\xd2\x1b\x0c\xa3\x44\x61\xeb\xb7\xc0\xba\x83\x3d\x51\x23\xd6\xa7\x0a\xe3\x90\x62\x2e\x14\xef\x0f\x32\xb1\xf6\x67\xe7\x8d\xdc\xd0\x11\x88\xc3\xae\x98\xdf\x5e\x95\xcb\x2e\x1a\x20\x02\x93\x35\xbf\x58\x47\x22\x3b\xed\x7e\xcd\xb7\x53\x38\x74\xa4\x92\x39\x2c\xeb\x72\x0b\x8f\xab\x23\xf9\x3f\xf1\x37\xe7\x33\xb1\x11\x58\x93\x6c\xad\xaf\xee\x42\x46\xd7\x05\xe1\x49\xcb\x6f\x0f\x29\xb2\xba\x92\x05\x36\x5f\xe4\xdb\x75\x49\x79\x73\x99\x45\xc3\x89\xe1\x7c\xae\xd1\x07\x64\x92\x7d\x44\x95\x16\xf2\x91\x46\xdd\x9e\x91\x09\xdc\x73\x6a\x64\xe6\xad\xbf\x1f\xd7\xeb\x57\x58\x82\x4d\x28\x73\x56\x61\xb3\xfc\xac\x25\xf3\xe3\x7a\x1d\x09\x67\xb4\x87\xaf\x36\xd0\xef\x24\x90\xef\xac\xe7\x72\xb6\xd6\x9b\x28\x9e\xcc\xd5\xba\x88\xc2\xdd\xd4\xcd\x86\x6c\x0d\x3d\x9e\x5a\x7e\x40\xea\xcb\xed\x6f\x86\x6e\xb7\x5f\xe5\xf7\x17\xb3\xd3\x99\x37\xc4\xd2\x97\x64\x33\xef\x03\x33\x23\x99\x79\x54\x6d\x71\x2e\xf3\xa8\xf6\x68\xe4\x39\xef\x20\xb2\xcf\x8e\xc7\x2f\xbb\xc3\x1a\x07\x68\x46\x79\x6f\x1c\x98\x5b\xfa\x94\x3f\xcd\x28\x3b\x36\x67\xa3\x15\x1b\xce\x7a\x3f\x42\xe1\xa6\x63\x5a\x0d\xc2\x63\x82\x01\xca\xe0\x37\x86\x34\xea\x76\xbe\xf1\xb8\xee\x63\xe3\x61\xd9\x15\x7c\x14\x37\xdc\xa4\x53\xbe\xaf\xb7\xe1\x81\x0d\xac\x25\xee\x45\xcb\xa2\x14\xd8\x1a\x87\xa7\x78\xf9\xa0\xc8\x7b\x56\xdd\x60\xce\xe3\xab\x87\xa2\x3f\xd3\xc9\x88\x57\xc2\x8c\x4d\xb7\x4f\x5f\xab\xf2\x27\x8e\x2f\xae\x17\x2e\xaa\x85\x8b\xe9\xbc\x45\x14\xf7\x6f\x4c\xbe\x9a\x90\x17\x5e\xcc\x41\xc6\xc0\x4c\x4a\x09\xe7\x72\x90\x9e\xda\x11\xdf\x97\xfb\xc9\x01\xe8\x33\x7f\xbd\x70\xb2\xdb\x50\xe6\xcd\x79\xf2\x92\xa9\x6f\xf9\x46\x46\x77\x3a\x4a\xb3\xc2\x12\xdd\xa2\x67\x60\xcf\x1e\x9b\x59\xd0\x96\x91\xc8\xd2\xb1\x1a\x03\x72\x9e\x78\x8d\x17\xca\x5f\x77\x7c\x66\xc0\x9c\x16\xb7\x47\x60\x2c\x15\xbb\x07\x41\x3d\x77\xac\xa8\x4b\x17\x58\x2b\x7e\xff\x8b\x96\x59\x0b\xd6\xa2\xc5\x56\xd6\x7d\xc1\x92\x1b\x0a\x2d\xd0\x88\x38\xba\x64\xe1\xf9\xbd\xf4\x6a\x28\xe3\x7d\x03\x9b\xb9\xb2\xe1\x55\x94\x17\xbf\x0f\xc0\x62\x39\x71\x11\x7a\xe7\x43\x1f\x44\x78\x52\x22\x5d\x84\xe0\x7c\x68\x5d\x84\x16\xca\xba\xf3\xf0\x3a\x17\x68\x1b\xbd\x68\x2b\x4c\xd5\xf4\x5e\x58\x8b\xe4\x41\x39\xba\xcf\xb6\xd9\xe7\x1c\x04\xd7\x8e\xe9\x62\x26\x88\xe5\xf5\x40\x5e\xee\xd4\x3a\x43\x95\x99\xee\xc2\xd9\x40\x5f\x03\x52\x6f\x37\x67\xa8\x5a\xd3\xdd\x9a\x0d\xe4\x9c\x9a\x31\xda\x8b\x55\xbd\x11\xec\xcf\x84\xf5\x02\x00\xcd\xbe\xc4\xba\x81\xf8\x07\xad\x95\x52\x2a\xe9\x80\x48\xd6\xeb\x7f\xb9\x35\xb0\x08\xd9\xdf\x9a\x92\xe7\x21\xf3\x4f\xa1\xcf\x39\xa8\x4d\x1e\xac\xdf\x1c\xb2\xed\x3a\x04\x3e\xc3\xdb\x3a\xe8\x38\xda\xb9\x6c\x46\xc2\x8f\xcd\xf6\xf3\x02\xa7\x87\xef\xbd\xb0\x92\xfd\x54\xea\x82\xf8\x0a\x38\x86\xd8\x88\x2f\x8c\x37\x82\x6e\xf4\x04\xaa\xef\x6d\xb5\x99\xc6\x6c\xea\x70\x33\x8c\xc4\x69\x7d\x35\x39\x18\x5d\x2f\x81\x52\xeb\xff\xef\xf7\xf9\x7a\x93\x25\x7f\xaa\x1d\xc8\x25\xa7\xfb\xa7\x37\xcf\x63\xe8\x35\xdc\xe2\xcb\x08\xfd\x2d\x5f\x82\xa1\x21\x8d\x87\x83\xe5\xf7\xdf\xbf\xf7\x89\xd4\x53\x91\xcd\x67\xc4\xb5\x6f\x7a\xc0\x33\xe3\x39\xd8\xcb\x1c\x3b\x54\x69\x66\xe9\x82\xf1\xbe\x18\x4b\x02\x6a\xf5\x40\xa9\xf2\x71\xf5\x0b\xd5\x7e\x71\x95\xc1\x2e\xfc\xad\xc2\x90\xb7\x63\x20\x5a\xe0\xd8\x80\x2d\x43\xcd\x23\x30\x7b\xb5\x56\xed\xf6\x02\x0b\xb9\x46\x66\xa1\xc4\x07\xa1\xe0\xbd\xd8\x11\x0d\xbf\xb4\x6b\x55\x39\x15\x86\xa1\xb4\x13\x67\x34\x3c\x63\x90\xd2\xfb\xa3\xed\xa4\xbc\x99\xa7\x21\x78\x28\x34\x1d\x14\x38\x1f\x6d\x34\x8c\xa9\x6f\xba\xa3\x43\x8e\x07\x67\xe8\x71\x73\xf9\x86\x99\xe4\x9f\x2e\x59\x6f\xed\xe6\x45\xee\xde\x3d\xbe\x69\x1b\xba\x79\x58\xfd\x9a\x9f\x82\xdd\xb0\xcf\x82\x35\x25\x04\xac\x67\x9b\xe0\xe7\x97\x9c\xda\xac\x86\x20\x0d\xec\x9a\x9d\xe2\x4b\x37\xc7\x0e\x80\x53\xf6\xb9\x67\xc8\x4e\x6b\x78\xd1\xef\x29\xd3\x89\x69\x37\x3c\xfe\xa7\x73\x06\xff\x34\x6f\xe4\x47\x8b\xcd\x1f\x86\xd3\x82\x31\x3f\xbd\x68\xc0\x4f\x3d\xa3\x7d\xea\x0c\xf5\x69\xdb\x0d\x1a\x38\x36\xc0\x03\x31\x56\x96\x0c\xf7\x00\x88\xf1\xc1\x1f\xa8\x34\x63\x0c\xdb\x35\x5f\x32\xa2\x6d\x58\xdd\xf1\x6d\x95\xe8\x8c\x76\x8b\x43\x75\x4f\x1a\xd7\xf9\x2d\x66\x3a\xdd\x6d\x53\x94\x5c\xae\xd6\xc5\x2c\x7f\x27\x49\xf7\x4f\x0d\x8f\xa7\xcf\xd9\xfe\x12\x6f\xae\x37\x12\x19\x55\x02\x05\xbc\xe8\x6d\xe9\x6a\xbd\xf6\xf1\x0a\xd6\x45\x27\x76\x45\x60\xba\x93\x57\xd8\xe7\xc4\xfc\xf6\xe7\x99\xd9\x76\x03\x22\xcf\xf6\xb3\xdf\xa6\xf1\x24\x6b\x22\xb0\xfc\x44\x9c\xf0\x31\xb8\x8b\xee\xc1\x2f\x8c\x12\x3e\xdd\xee\xdc\x7b\xf3\x4b\x43\x8d\x8f\xb4\xdc\x32\x52\x4f\xce\xca\x25\x7e\xcb\xd7\x7f\x9f\x3d\x1b\xbd\x35\x16\x8d\xdc\x08\x84\xb9\x43\xd0\x07\xa2\x25\x29\x78\x80\xeb\xdd\x7d\x7a\xc8\x57\x5f\x57\x45\x24\xec\x57\xf7\xe3\x7b\x4a\x41\xbb\x6f\x9f\x5b\xee\xc7\xdf\xdb\x2c\x24\xdc\x04\x4d\x1f\x37\x87\xd3\x43\x56\x5c\x3d\x94\x01\xe3\x5b\xb0\x6e\x76\xeb\xaf\xa3\xd7\x45\xfb\x6a\xad\xd7\x1d\x87\xaf\x81\x72\x57\x6f\xdb\x09\xbf\xbe\x37\xe3\xa2\xc4\x89\xfb\xd6\x9b\xc7\x51\x47\x58\xcf\x57\x22\x00\x65\x7e\x9c\x38\x39\x4e\x29\x5a\x56\x47\x46\x51\x9d\x81\x4d\xbc\x73\xb7\x96\xd8\xfc\x7e\x32\x95\xcf\x3c\xf1\x9c\xa1\x2c\xdc\xec\xeb\xdb\x32\xa9\x9b\xa1\x4d\x1f\x62\xcc\x49\x16\x75\x30\x12\x3c\x42\x89\x96\x03\xda\xf4\x88\xc4\x73\x80\x52\x6f\x74\xb3\x23\x2c\xc7\x2e\x98\xc8\x0d\x04\x07\x24\x06\x45\x14\x70\xed\x38\xfb\x62\x3c\x87\xe3\x1e\xe2\xed\x24\x73\x67\xa4\xd4\xec\x8d\x67\xd4\xe7\x21\xdd\x22\xb5\x46\x2e\xbe\xfa\xd2\x3a\xc5\xc4\xfa\xe8\x64\xdd\x89\x00\xd2\x37\x3e\xd5\xa6\x59\xdf\x3f\xe1\x44\xe7\xf7\x43\x19\xe2\x60\xe4\xbd\x26\x0e\xbb\xec\xbb\xce\xbd\xf3\xbe\x11\xe8\x8d\xeb\xd6\x97\xe5\xb2\xa5\x1e\x54\x29\xe9\xa2\x56\x60\xc6\x1a\xb7\x65\x88\x6b\x0d\x7b\x52\x6c\xfe\xb6\x2a\xb2\xe3\xf1\xed\x9f\xd3\x62\xb3\xfd\xf5\x97\x2a\x90\x73\xd3\x0a\xaf\xf6\x4f\xdf\x5f\x98\xfa\x62\x66\x40\x92\xe1\x55\x25\x9a\x77\x8e\xc6\xef\xb5\xbc\x14\xd7\x04\x33\xd5\x87\x28\x44\xf0\xb8\xe2\xf0\x3f\xbe\x7d\x71\x0a\x90\x2e\x6c\xb4\x27\xfc\x26\x90\x51\x75\xfd\xf1\xed\x74\xf6\x04\xb1\x28\xda\xcb\x9b\xda\x1a\x55\x45\x3a\x70\x4e\xef\x9f\xde\x3c\xbf\x94\x4a\xa2\x3b\x24\xaf\x92\x6d\xc5\xef\x5d\x9f\x0f\xbb\x2f\x97\xec\xfb\xeb\x53\x46\x4b\xc4\x39\xdf\x6f\xee\xe2\x05\x75\x13\xe0\x5e\xd9\x21\xcf\x5e\x02\x04\x3d\xb8\x5e\x50\xfd\xb8\xcf\x96\x39\xc2\x2d\x2a\xdc\xe8\xe2\x6f\xe0\x6b\x57\x95\x9f\xdd\x89\x32\x1f\xea\xec\xa2\xcb\x3a\xb0\xcc\xf9\x2f\x94\x9e\x8d\x3c\xa0\x32\xbb\xe0\x32\xc4\xe7\xf9\x21\x36\xca\xce\x40\x7a\x70\xc5\x9c\x53\x6b\x6e\x77\xce\x76\x95\x7c\xc1\xfa\x98\xf4\xb2\xec\x79\xd4\xe8\x4f\xbf\x53\x66\xf7\xa9\xc7\xa4\xe1\xac\x19\xfd\x68\x00\x6c\xf9\x73\x46\xbf\x11\xc8\xeb\xe4\xc3\x7a\x15\x28\x78\x53\xbb\xcf\xe5\xb4\xef\x59\xdd\xc7\x69\x1f\xd5\x98\x37\x74\x9c\x57\xbb\x4f\x7a\x81\xf7\x7a\xba\x36\xd7\x6d\xcb\x01\xb6\xfd\xbb\x17\x68\xe4\x29\xdb\x5e\x53\x3d\xee\xb3\x17\x78\x9b\xdd\x6f\x8b\xb1\x7e\xfa\xc2\x29\xf8\x97\x23\x84\xf2\xce\x26\x26\x86\x7e\x45\xb0\x51\xbc\x2b\xf9\x32\x4f\xf9\xc4\xcb\x11\x25\x7d\xfd\xf2\x22\x09\xc0\xc3\x82\xd9\x7f\x19\x9c\xb3\xb6\xd9\x6e\x4f\x96\x57\x0e\xa8\xff\x66\x22\x41\x58\x9b\xe7\x60\x1a\x55\x9d\x8f\xe7\x39\xfb\x3e\x2e\xf5\x73\x70\x6c\x54\x9c\x8f\xe1\x92\xed\x7d\x36\x11\xbf\x00\xca\x1c\xcc\xa7\x09\xb7\xbb\x45\x76\x70\x1c\x2a\x12\x10\x18\xdb\x64\x9b\x3b\x65\x07\x6e\xf7\x65\x80\xd8\xbb\xbf\xf6\x6d\x4c\x6d\x90\xc3\x65\x3c\xe4\xb9\x9b\xdb\x00\xf9\x0f\x95\xe8\x00\x1f\xd9\xda\x7a\x69\xb6\xff\x7d\x07\x6c\x44\x81\xcf\x18\x19\x2b\xdb\xef\xf3\xec\x90\x6d\x57\x79\x1c\xa9\xad\xfd\xbc\xa1\xd4\x6e\xb6\xc7\xfc\x94\xf4\xab\xb6\x4b\xc2\x9d\x8e\x9b\x28\x76\x0f\x27\x8c\x14\x46\x5f\x93\xe9\x37\xb2\xcd\xbe\x22\xd0\x43\x9e\xad\xd3\xdd\xb6\xf8\xfa\x5a\x7b\xca\x6b\xa2\xe9\x01\xbe\x0e\x8a\x25\xe9\xbc\x0e\x7e\x15\xb4\x06\x72\x2f\xd8\x06\x87\xb2\x27\x2f\x84\xf2\x22\x64\xda\xb3\x77\x2e\x84\x33\x91\xe8\x99\x9f\xb3\xaa\x2f\x6b\xbe\x9f\xd9\x2d\xc3\x61\x00\xc6\x0b\x10\x39\x63\x2a\x7a\xea\x9f\x85\xc0\x79\xd3\xd0\xae\xbc\xac\xe9\xbe\x6d\x61\x59\xfb\xbd\x10\xce\x46\xe2\x8c\xe1\xef\xd4\x3e\xa3\xf1\xf3\x86\x3e\xae\x3a\xb7\xd9\xe5\x7b\xce\xab\x80\x7b\x1d\xf4\x16\xcd\xcf\xc2\x1d\xe6\x45\x12\xe5\x4b\x71\xea\x9b\xc6\x49\x19\x75\x20\x1f\xfe\xe4\x04\x8c\x4a\xb6\x33\x80\x76\x86\x6e\x58\x16\x1e\x85\xd6\xd7\xe9\x11\xd1\xb9\x01\x6b\xac\xd4\x28\xb0\x76\x17\x87\x4a\x0c\x00\xe9\xe9\x56\xef\xeb\xba\xfa\x0c\xf9\xbd\x06\x36\xa7\xf0\x1c\xd0\xad\x5e\x4e\x15\x1c\x07\xd9\xed\xf3\x68\xa9\x5e\x60\x53\x9b\xed\x74\xd1\x69\xb0\xc3\x9d\x1e\xdd\x21\x87\xf5\x97\x31\x58\xe3\xdd\x1d\xdf\xd6\xa6\x0a\x4e\x81\x1c\xee\xe8\xc8\x5e\x34\xa4\x4f\x0d\xc3\xe9\xe9\x62\xa7\xd2\x8f\xcd\x90\xdc\x3e\x24\x29\x48\xd2\x69\x56\x14\xbb\x2f\xf9\xfa\x55\x95\xa0\xcb\x7d\x91\xad\xf2\xbb\x5d\x81\x21\xa5\x5e\x49\xc3\x78\x35\xa0\xd5\xd0\xbc\x16\xc4\xa5\xc7\x52\x13\xe3\x75\xae\x4c\x7f\x3e\x94\x81\x11\xf9\xcd\xa2\x60\xbc\x7c\x00\x7a\xf8\xc4\xb9\x30\xce\xef\xfc\xf2\x90\x1e\x2f\xef\x78\x87\x6f\x9c\x07\xe1\xfc\x4e\xbf\x28\x32\xc9\x4b\xfa\xbf\x9c\x47\xbc\x4c\xbc\x7b\x39\xac\xe5\x71\x58\xa6\x0b\xdf\x6e\xf2\x62\x7d\xcc\x4f\x57\xfb\x39\x92\x64\xdc\x87\x71\x21\x71\xaa\xec\xc0\xc0\x4c\x86\x8e\x99\x40\x6a\x48\xac\x1b\x2e\x35\x80\xc8\x69\x32\x5a\xcd\x38\x26\x53\xa2\xd7\x64\xe1\x7e\xbc\xe6\x46\xcd\x99\x8d\xdc\x14\xeb\x1b\x91\x80\xc6\xcb\xf5\x1c\x3d\xce\x46\x6a\x9c\x2d\x0d\xca\x2b\x63\xa5\x06\x62\x06\x35\x9e\xd5\x6b\x61\xea\xce\xe0\x77\x74\x1f\xc6\x90\xf9\x57\xe8\xf3\x73\xd1\x78\x50\xd9\xab\x23\xa7\xb5\xc8\xfc\x8c\x71\xdc\x15\xa5\xed\x18\xdc\x87\x7c\xed\x5d\x49\xa3\x80\xf0\xff\x75\x86\xf8\x5f\x67\x88\xff\x75\x86\xf8\x5f\x67\x88\xff\x75\x86\xf8\xf2\x33\xc4\x49\x17\xfe\x59\x8e\xc6\xaf\xaa\xdd\x86\x70\x3d\xaf\xa4\xd6\xbe\x1c\x5a\xb5\x9b\x06\x50\x2f\xd1\x44\xcf\x06\x11\x75\xe6\x2c\xdd\x73\x7e\xdd\x01\x81\xe9\x4c\x00\x4b\x31\x6f\x0b\x55\xf3\x6b\xf6\x4a\x54\x67\x55\x5f\x8a\x73\x2c\x75\xcd\xa9\xb7\x70\x31\xbc\x58\x73\x7b\x09\x9c\x76\xc7\xa6\xf5\xa2\x89\x82\x11\x4a\x23\x9a\x50\x28\x31\xa6\xec\x0c\x16\x89\xda\xe8\x55\x6f\xfc\xbb\x39\x7a\xcc\x54\xc9\x66\x5b\xa3\x9a\x4b\xa7\xc8\xe8\x52\x1b\x57\x4a\x86\xca\x0c\x37\x36\xb2\x3e\xc6\x54\x8d\xfe\x12\x71\x33\xd3\x39\x46\xd5\xab\xef\x13\x21\xb0\xc4\x2b\xed\x13\x2f\x87\x56\x8d\x48\x00\xf5\x92\x7d\xe2\x6c\x10\x51\x67\xce\xda\x27\xe6\xd7\x1d\x20\xde\x33\x01\x2c\xc5\xbc\x4d\xee\xf3\x6b\xf6\xae\x83\xb3\xaa\x2f\xc5\x39\x5e\x39\x73\xea\x2d\x5c\x0c\x2f\xde\x27\x5e\x02\xa7\xdd\xb1\xe9\x7d\x62\xa2\x60\x84\xd2\xc8\x3e\x11\x4a\x8c\xed\x13\x83\x45\xa2\x36\x7a\xf7\x09\xff\x6e\xce\x3e\x31\x55\xb2\xd9\xd6\xe8\x3e\xd1\x29\x32\xba\xd4\xc6\xf7\x89\xa1\x32\xc3\x8d\x8d\xac\x8f\xb1\x7d\xa2\xbf\x44\xdc\x4c\x9f\x0d\xe8\xf4\x75\xbf\x0b\x57\xcf\xfb\x6c\x40\x75\xd8\x9d\x97\x6d\x1f\x0b\xed\x2b\x8b\x4c\x1c\x0b\x2c\x0d\xe7\x2a\xfd\xbd\x5a\x76\x4b\x39\xee\xd7\x6f\xfb\x94\xd2\xae\x36\x99\x3d\xb7\xef\x4d\xff\x2b\x9a\xd9\xfe\x65\x2d\x64\xff\x78\x5b\xd7\x3f\xca\x6e\xf5\x0f\xb4\x42\xbd\xdc\x8c\x74\x96\xa9\xe8\x95\x8d\x42\x2f\xb5\xfb\x2c\x35\xee\xf4\xde\xf1\x6f\x47\x16\xc0\x6b\xbd\x98\x2b\xe4\x5d\x23\xa9\x3a\xa5\x7f\xec\xc9\xa7\x57\x67\x84\x64\x66\xff\x94\x30\xf1\xc2\x8b\x3b\xe7\x19\xb8\xcf\x31\x35\x2f\x37\xfc\xbe\xd0\x14\x3b\x66\x02\xed\x37\x60\x8e\x9a\x22\x47\xcc\x88\x83\x66\xc0\xca\x94\x77\xc8\x31\x68\xc1\x63\x7e\x38\x6d\x56\x59\xd1\x9e\xe7\xfa\xf2\x79\xf5\xf3\xae\xcc\x01\xda\x48\x38\xaf\x5f\x34\xe3\x2f\xe1\xf4\x17\xa4\x0c\x11\x93\xe2\xe3\xd7\xbf\x1d\xbd\xe0\x16\xf2\x69\xfa\xce\x6f\x4f\xe7\x7f\x83\x7b\xb9\x78\x12\x77\xf2\x19\xbf\x7b\x2e\xb8\x36\x48\x6b\xea\x36\x67\xf7\x02\xe6\xa9\xba\x39\x59\xb7\xd2\x8e\x65\xe9\x43\x4f\xfd\x23\x2f\xba\x2f\xbd\x55\xbe\xec\x22\xf7\x0b\x6e\x50\x87\xaa\x33\x6e\x08\x77\xee\xa8\xc6\x7d\x9b\x77\xa7\xd5\x3f\x6c\xdc\x41\xed\x08\xcd\xc0\xdc\x0f\xd9\xf1\x94\x3a\xe7\x2e\x36\xdb\xbb\xfc\xb0\x39\xbd\x69\x07\xa1\x11\xaf\x30\x7f\xd3\xce\x13\x3d\xdd\x9c\x5b\xa9\x31\x04\x73\xab\x54\xc3\x33\x5d\x61\xb2\x5b\xfd\xd3\xf9\x63\xdf\x05\xee\x1f\x47\xae\x3a\xff\x38\x78\x57\xf9\xc7\x81\x2b\xc7\xf1\x0d\xe3\x56\xba\x9e\x14\x43\xd1\xf4\xc4\x13\xc2\xc2\x1e\x92\xef\x71\xe9\x6c\xb8\xdf\x6d\x42\x6e\xd0\x2a\xd4\xee\xf7\x66\x0f\x7e\x6c\xb1\xd7\x38\x12\x0e\x10\xc9\xcc\x0c\xa2\xbd\xd9\x7d\x7c\xc4\x9f\xd9\xc5\xff\x55\x12\x93\x62\xb9\xe3\xe9\x6b\x91\xc3\x8a\xaa\xae\xca\xcd\x89\xbd\x53\x27\xf2\xee\x89\xd2\x3b\x37\x35\x38\x8f\xc2\xf4\x60\x5a\xf4\x29\x98\x45\x7e\x3b\x52\x28\x4d\xef\x76\x87\xcd\xb7\xdd\xf6\x94\x15\x69\x25\xc6\xf1\xfd\xd3\xbb\x34\x2d\x25\x83\xfa\x79\x73\xe3\xf7\xc0\xda\x65\xde\x24\x34\x0e\xff\xec\x8b\x75\x1b\xa9\x33\x35\x35\x33\x50\x37\x52\xb8\xf9\xf8\xb8\x23\xd3\x39\x50\x0f\xed\x06\xcb\xab\x35\x82\x0b\xf7\x56\x1b\xa0\x72\x52\x6c\xb6\xbf\xc2\x3e\x18\xf0\x9d\x5f\xbe\x8a\x73\x3c\xaf\x78\x9c\xd0\x64\x70\x91\x78\x3e\x5d\xa6\xdd\x7f\x13\x8d\xe5\xb9\xb5\x63\x4c\x17\x56\x9e\x95\xd4\xa5\x3d\x8a\x23\xf3\x30\x09\x61\x6a\xfe\x27\x01\x4c\x51\xc2\x76\xb7\xce\x17\x11\x6a\xbb\xc2\x14\x86\xed\xf2\x53\x08\xc5\x39\x17\x67\xa1\xd4\xad\x32\x85\x54\xb7\xc6\x14\x5a\x87\x56\x12\xc7\x49\xa4\xda\x15\xa6\x50\x6a\x97\x9f\x42\xa8\x37\x25\xdc\x5c\xe4\xc6\x2a\x4f\x21\x3a\x56\x77\x0a\xe9\x4e\x6a\xcb\x49\x4c\x3b\x35\xa6\xd0\xeb\x54\x98\xc2\x69\x70\x23\x1d\xe4\x86\x33\x6a\xc4\x5c\x66\x46\x85\xb1\x34\x4d\x73\x18\xca\x44\xc5\xc1\x51\x9b\xa8\x37\x30\x78\xd3\x27\x9e\xe5\xde\x5e\xdd\xbb\xa7\x09\xdf\x3f\x25\x72\xff\xd4\x48\x77\x78\x53\x64\xab\x5f\xdf\x24\xff\xc6\xe8\x1f\xe7\x49\x16\xb1\xb4\xf7\xfb\x4e\x6e\x3e\x3c\x76\xce\xb9\x46\xee\xc7\xa9\xd4\x2a\x67\x65\xff\xee\xd4\x9d\x4e\x44\xb2\x24\xfb\x77\x59\x25\x74\x32\x68\x67\xbf\xef\x6c\xed\x33\x92\x48\xcc\x0a\x2e\x9e\xbd\x20\x32\x7b\xb6\x20\xfb\x4c\xb6\x3c\x78\x78\x76\xde\x7c\x25\xd9\xb9\xd9\xee\x06\x21\xcc\xe8\xde\xc2\xcc\x76\xed\x8a\x9d\xf9\xc4\xdf\xe1\x28\xee\xcd\x1b\x1f\xe4\x15\xf5\x1f\x8c\x0d\x72\xf9\xb0\x5d\xe7\x07\x7f\x36\xb4\x90\x8a\x27\x16\x70\x2b\xc3\xf2\x2b\x10\xff\x62\x3e\x30\x84\xc2\x8c\x55\x34\x97\x7d\x74\x9a\x58\x38\x6d\x8b\x99\x4f\xab\xc1\x38\x33\x86\x9e\x93\xfd\x2a\x30\xb1\x46\xae\xec\xe5\x0c\xb6\x51\x79\x9a\xc3\x42\xe1\xa5\x2c\xf6\xcc\xe4\xf9\x2f\xcc\xbe\x35\x0c\x64\x46\x2f\xcf\xc9\x5e\xd5\xa9\xfb\xdc\x0e\x54\xfc\xba\x8b\xf2\x9f\xb1\x0a\x7f\x8b\x65\xf7\xdb\xaf\xb3\x9e\xb8\xec\x8d\xe0\xef\xef\x3a\x01\xe4\x67\x6f\x2a\x6f\x67\x27\x97\x3b\x4b\x02\xea\xb4\xf2\x1b\x49\x4f\x9d\x76\x5e\x57\xd2\xaa\xc1\x2f\x17\xce\xbe\xdc\x6d\x4e\x79\x8a\x61\xd7\xcb\xe9\xea\x04\xef\x9f\x9b\x82\xd5\x9f\x02\x9c\x9d\x10\x35\xaa\x3e\x9d\xae\xd4\x17\x5f\x38\x48\x58\x2b\xde\x07\x98\x6d\x6c\x04\xaf\x6b\xda\x2d\xc3\x3f\x4e\x25\x13\xe8\xcb\x65\x33\x0f\x93\x4e\xce\xfa\x09\x8c\xaa\x34\xf6\x98\x72\xe5\xb0\xfb\xe2\x8f\xc4\x2f\x3d\xe0\x06\x86\xd5\xfb\x7c\xbb\xbe\xf4\x75\x1a\x6f\x7d\x00\xfd\x63\x5e\xdc\x86\xe8\xf7\xdd\xbe\x61\xc8\x4b\xba\xb8\x3b\x63\xc9\x3b\x7e\x2c\x4f\x49\x67\x76\x75\x1a\x56\x9d\x0c\xe2\x37\x40\xf4\xc7\xf5\xe6\x31\x24\x3b\xb9\xd9\x3d\xe6\x6f\x5e\x13\xf1\x36\x6c\x4c\x89\x24\x30\x45\x40\x7d\xef\xf0\x78\x3a\xec\xb6\x9f\xc3\x2e\x79\xfa\x5a\xc0\x0a\x3f\xdc\x67\x85\x0f\xf0\xff\xc5\x9f\x7d\x4b\x4a\xdf\x45\x12\x7f\x27\xa9\x85\x17\x8a\x6f\xb3\x4d\xf1\x70\xc8\xdf\xbc\xe9\x49\x5e\x10\xd9\xc7\x79\x2f\x16\x3d\x7b\x36\x93\xfb\xa7\xfe\x0c\x1a\xd5\xad\xc7\x81\x14\x6d\x8a\xfe\xd1\x67\x68\xa3\xcd\x14\x11\x29\x2e\xe4\x4e\xd2\x98\x59\x34\x35\x9a\x02\x66\x01\x84\xa1\x14\x30\x8b\x88\xd1\x9c\xdd\x8f\xab\xb7\x2f\xef\x49\x05\xe3\x25\x7d\xb9\x7a\xdb\xcd\x03\x38\x7c\xa2\x33\x11\x67\x31\xe4\x42\x69\xa4\xe0\xc3\xef\x35\x25\xd1\x73\x87\x2b\x24\xaf\x78\x85\x41\x8b\x21\xbd\x68\xe8\x16\xa5\x9d\x74\xb8\x4c\x82\x5b\x8b\xae\x47\x08\xbf\x4f\xac\x1e\xf8\xd2\x5a\x3f\xef\xa2\x64\xda\xe7\x2f\xa8\xab\xd2\x5e\xfa\x0a\x23\x1b\x41\x7a\xd9\xc8\x2e\x49\x51\xc9\xbc\x45\xe7\xcc\xee\x57\x6e\xe4\x67\xd5\x0e\x66\x0d\x3c\xb4\x4f\x57\xd9\x61\x7d\x15\x29\xce\xaf\x30\xa8\x1e\xbf\x57\x00\xe4\x51\x7d\x8d\xc9\x69\xa2\xf4\x32\x48\xe1\x46\xce\x82\xdc\xa8\x4d\x1f\x08\x9f\xe0\xe6\xbf\xfd\x39\xc5\x87\xfb\xc3\xee\x71\xb3\xce\x0f\xbf\x54\x3b\x58\xc8\x08\xca\xe3\x8c\xa0\x28\x36\x5f\xd2\x24\xe4\x60\xea\xc9\xdd\xd3\x6c\x83\xe4\xf7\x37\xf9\x21\xdd\xef\xbe\xe4\x87\xf0\x2c\x3d\x1d\x36\x9f\x3f\x77\x2e\x84\x6d\x7a\x72\xeb\x92\xcd\xf6\x76\x77\xb8\xcf\xd7\x61\xda\x92\x52\xd1\xab\x09\xa6\x95\xa1\x29\x4a\xc8\x34\x13\x91\xe7\xda\x59\x2e\xae\xe3\x43\x25\x90\x43\x7e\xcc\x4f\xcf\x91\xb7\x45\xdd\xfe\xcc\xfc\x3d\xb3\x22\xec\x4e\x1e\x31\x4c\xdd\xe1\xed\x75\x10\xd9\xee\xb6\xf9\x60\x76\xd9\xc6\x8b\xa6\x6e\xdb\x23\xa7\x37\x4f\xdf\xb7\x3e\x7d\x15\x6a\x2a\x98\x3b\x2d\x39\x1d\x5a\x46\xcd\x66\xf1\xc7\x4d\xfe\x25\x39\x7a\xc5\x25\x09\x49\x9f\xe3\x5a\x7e\x31\x84\xaa\xf7\xf9\x29\xc3\xa8\xf4\x3d\xf0\x9b\x29\x7b\x82\x0d\xc8\x67\x20\xea\x4e\xc9\x8c\xdc\xbe\x9d\xaa\x11\xfb\x99\x97\x27\x38\x2c\xac\x2e\x45\xce\x3d\xf3\xa8\xa5\xe4\x32\x0c\xc7\x31\x89\x50\x2a\xb2\x76\x4e\x37\xbf\x6d\x49\xd3\xdc\xfa\xaa\x64\x79\x67\xc0\xed\xa6\xe5\xad\x36\x52\x9f\x09\x5c\x46\x62\x08\x3b\xc0\xea\x1a\x1a\xb5\xc8\xe7\x24\xca\x8f\xd9\x4d\x47\x56\x79\x2f\xc7\x39\xca\xc6\x7b\x1f\x6b\xb2\x4d\x42\x03\x2e\xd9\xb0\xa4\x9c\xf2\xc3\x36\x2b\xd2\xe3\xee\xe1\xb0\xaa\x9f\xdf\xe5\x59\x71\xba\x4b\x71\xf2\x43\x8a\xd0\xe8\xd1\xee\xe1\xb4\x7f\x38\x25\xeb\x75\x92\xdf\xf7\xa8\x32\x9e\x28\xd7\x89\x17\xf7\xa7\x75\x9d\xe1\x82\xc7\x3c\x3b\xac\xee\x30\xb7\x42\xb1\x09\xcc\x26\x89\x8c\x03\xbf\x6e\xb6\xb5\x81\xba\xd5\x8d\x86\x7c\x09\xbc\xfb\xe9\xeb\x05\x59\x6f\x8e\x2b\x58\x24\x5f\xd3\xd5\x1d\xba\xa1\x61\x5a\x07\x3f\x8e\xc1\x10\xf2\x50\x78\xaf\xa9\xc0\x47\x6b\x14\x30\xed\xd9\xc3\x31\x09\x46\x05\x72\xc8\xef\x77\x8f\x79\x9a\x15\xc5\x9b\x0b\x72\xda\xed\x77\xc5\xee\xf3\x57\x18\xe7\xc3\x66\x75\x0c\xb8\xf8\xf1\xf6\x7e\x77\x37\xd9\x76\x9b\x1f\x7e\x49\xb6\xd9\x63\xa0\x86\xdd\x2d\xbe\x4f\xc8\xe6\x98\x16\xbb\x55\x16\x32\x91\xcc\x29\xbe\x3f\x6c\xee\xb3\xc3\xd7\x64\x66\x2e\x15\xf4\xb9\xab\xa7\x04\x5d\xed\x82\xd7\x03\x7a\x64\x6c\xd6\x30\xe2\xa7\xaf\xd1\x9b\xea\x68\x3f\xbc\x7c\x9e\xc7\xa9\xfb\x5c\xf0\xbb\x8a\x62\x0f\xa5\x77\x0d\x50\x83\x24\xdc\x93\xc3\x37\x22\xe5\xce\xfb\x25\x24\xdd\xa9\x3c\x44\xda\x23\x05\xfb\x49\x7c\xa4\xc2\x20\xa9\x77\xea\x00\xc9\x77\x1e\x0e\x74\xbb\xb3\x04\xea\x12\x73\x97\x42\xc3\x3c\x1f\x65\x32\x9c\xb9\x34\x1a\xf9\x86\x47\x96\x48\x55\x6a\xd9\x52\x59\x54\xad\xb9\x64\xaa\x8a\x4b\x97\x4e\x55\x71\x70\x09\xf5\x96\x68\x2f\xa5\xc1\x0c\xed\xcd\x8c\x8b\xb6\x71\x90\xb1\x98\x87\x2f\x64\x8c\xbf\x27\x76\x77\x26\xf7\xaa\x0c\x7c\xc9\xa4\x99\x37\xda\x95\x66\xef\x19\x4b\x69\xa9\xde\xad\xf7\x4f\x89\xea\xc5\x69\x72\x2b\x1d\x64\x1b\x15\x70\xb9\x7f\xc2\x0e\xbf\x12\xc1\x7a\x4d\x00\x15\x9b\x86\xe9\xd7\xdf\xa6\xaa\x69\xb7\x74\x19\x98\x6c\xf4\xb9\xbc\x94\xf5\xc3\xff\xb1\x5b\xe7\xc9\xff\x5e\xbe\x4e\x7e\xf8\x3e\x0b\x9d\xaa\xfa\x7f\xf8\x12\x11\x84\xe9\xb4\xd1\x95\x9d\xeb\x15\x2c\x6a\x67\xda\xd0\x06\xad\x66\x6d\xef\xa6\xb9\x9d\x29\xed\x4f\xaf\x66\xf5\x7a\x91\x9d\x6b\xc2\xb2\x35\x65\xae\xaa\x65\xf6\x4e\xf7\xe3\x0e\x8e\x77\x61\x02\xc9\x9e\x84\xda\x73\x87\x7b\xce\x30\x9f\x33\xbc\x67\x0d\x6b\x2b\x35\xdb\xdc\x3e\xfc\xb8\xde\x3c\xce\xe9\x07\x96\x3b\xa3\x2f\x8d\x7a\xcb\xfa\x03\x15\x9f\x1b\x97\xf5\x1c\x07\x2e\x59\x22\xda\xbc\xa8\x12\x65\x6d\xeb\x2d\x71\xf5\x36\xde\x01\x1a\x7a\x7d\xa3\x6e\xe3\xe9\x68\x42\xea\xa6\xb9\xa0\xc2\x0f\xb8\x62\xd3\x2e\xd0\x8b\x46\x5f\x96\x64\xdd\xd3\xad\xfe\x5c\xcd\x4d\x2b\x52\xab\x02\x79\xcc\x40\xdb\xde\x67\xc7\xe3\x66\xfb\xb9\x5d\x7f\x40\xd7\xce\xf3\x6d\xa9\xeb\xf7\x83\xfb\x92\x1d\xb6\x73\xc1\xed\x0e\xd9\xf6\x73\x3e\x0e\x6f\x75\xd8\xe0\xa5\x8a\x59\x00\xab\xd3\x9f\x21\x68\x98\x8f\x7a\x66\x57\xeb\x00\x9d\xfe\x56\x12\x4a\x2c\x9d\x39\x0a\xd2\xce\x3e\x3b\x9c\x90\x23\xbc\x29\x13\xab\xa3\x07\x18\x4a\x4e\x78\x67\x6c\x95\xed\x37\xa7\xac\xd8\x7c\xcb\x27\xe0\x91\xec\xcb\x71\x00\xc6\xc3\x7e\x9f\x1f\x56\xd9\x71\x12\x44\x85\xcd\xfc\xae\x96\xc3\x76\xd8\x7d\x3e\xe4\x47\x2f\x82\x9c\x40\xc2\xd9\x66\xa7\xc8\xec\x5d\xb1\xbe\xa0\x85\x35\x5e\x1d\xf2\x7d\x8e\xe6\xb1\xf0\xad\x9b\xe7\xb9\x21\x49\x56\x16\x50\x90\x62\x83\x61\xf4\xec\x34\x87\x4b\x2f\xb2\x3d\x97\x8e\x25\xc1\xad\x24\x3e\x87\x64\x2f\xbb\xb4\x7d\xde\xad\xba\xe7\x3a\x7d\xfb\x6f\x7d\x67\x74\xac\x6a\xd3\x2a\x1b\x1d\xe9\xb0\x97\xdd\x85\xf4\x8e\x15\xb5\xe9\xe9\xcd\x79\x38\x76\xc0\xc4\x8c\x8e\xab\x97\x4e\xdd\x3f\x65\xe4\x5f\x32\x5f\xb1\x99\x3e\xf2\x07\x41\x26\x71\xc8\x1f\xf3\xac\x68\xdf\x74\xec\x11\x60\x1a\xa5\x7d\xf2\xf1\x96\x6b\x60\xe7\xfd\xdf\xf3\xfb\xe7\xc7\xcd\x71\x73\xb3\x29\x40\x80\x0e\x2b\xa9\xe3\x33\xd0\x53\xb3\x4c\x72\xdf\x82\x80\x5f\x8b\xbc\x34\xba\xc3\xf6\xd8\xdf\x6c\xc5\xcf\x62\xdb\xd1\xbb\x3e\x58\xa5\xc0\xff\xff\xfd\x3f\xff\x6f\xb2\xe0\xef\x87\x71\xb4\x1b\x66\x8a\x46\x80\x82\xa9\x61\x1b\xd0\x5f\x91\xc2\x36\x5b\xa4\x3b\x98\xbc\x37\xb1\x46\xdb\x1d\xe4\x2e\xd4\xae\x9d\x39\x2e\x53\xdf\x90\xf5\x9e\x16\x28\x18\xb5\x81\x54\xc3\x3a\xeb\xfc\x4b\x35\x36\xc7\xd0\x7f\x1f\xbc\x01\xf1\x69\x6b\x23\xfd\xc5\xaa\x03\xeb\x29\x4b\xe1\xed\x43\x51\x0c\x36\x56\xe3\x1d\x81\x31\xfb\xa7\xd2\xd7\xa3\xde\x5f\x2a\xe1\x8d\xd7\x47\xd6\x78\x84\xad\xaa\x11\xd9\xe6\x9f\x71\x49\x34\x5b\x2b\x0f\xa5\x9a\x19\x19\x83\x32\x4f\x4e\x9b\x53\x91\x4f\x2c\xe1\x70\x46\x33\x15\x6b\x21\x14\xbb\xf3\x97\x9e\xab\x4a\xcd\x5f\x77\xcf\xd1\x05\xd9\xa1\x63\xb2\xc9\x11\x9f\x75\xc4\x89\x67\x60\xcd\x51\x12\xd5\x66\x6d\xeb\xb1\xb4\xa3\x43\x17\x1a\xc7\xb5\xf1\x63\x6c\xa1\x1c\x28\x55\xae\xb3\x1f\x17\x11\x65\xf3\x1c\x6a\x16\x32\xbd\xcd\xf4\x21\xb5\x7c\x6d\x88\x81\xb5\xd1\xa7\x38\x0e\x2d\xa0\x09\xc7\x8d\x96\xd9\x1c\x35\xb8\x58\x8c\x11\xb2\x9a\x97\x21\x32\x98\xec\x6d\xf7\xf8\x2a\x52\x19\x6b\xf6\xfa\x43\xe9\x20\xb2\x8c\x12\x06\xb1\xe8\x9b\x21\x4f\xb9\xd5\xf9\xd9\x79\xd3\x3c\xd1\xef\x46\x1b\xdc\xfb\xb0\x2c\x5d\xae\x77\xd3\xd7\xdb\x84\xf7\x50\x0b\xea\x25\xd1\xf9\x7d\x42\xe7\x35\x15\xf3\x82\xf1\x83\xd9\x05\xc7\xdc\x61\x21\x2b\xba\x7f\x7a\x57\x5d\x63\x47\x7b\xdd\xe5\xfd\x66\xbd\x2e\xf2\x99\xd8\x55\x86\xc7\x33\xb8\x5c\x59\x37\x1e\xcb\x61\xcc\x75\x74\x6f\xaa\x63\x03\x25\xeb\xfc\x78\x02\xed\x65\xb3\xdb\x0e\x9f\xcc\x90\xd2\xd4\x3d\x03\xe1\xa9\x40\x47\x65\x47\x22\x87\x9b\x46\x6f\xb2\xb8\xbf\xd1\x11\xef\xc4\x6a\x9f\x33\xfc\x0d\xe8\x0d\xff\x8b\x86\x23\x44\x91\xed\x8f\xf9\x65\xf9\xe5\xbb\x37\xb0\xac\x77\xf7\xe9\x21\x5f\x7d\x5d\x15\xa0\xb5\x9f\x62\x87\xfc\x81\x32\x57\x6f\x9f\xd1\x65\x85\x25\xcc\xbb\xac\xf4\x1d\xe1\x75\x0f\xec\x66\xd1\xd0\x2a\xdb\xfb\x19\x9b\x45\x41\x79\xb6\x6e\xd1\x51\x59\x3f\xa2\x22\x5f\xcc\xab\xd3\x9e\xaa\xbd\x9a\x35\xab\x8d\xca\x81\xc8\x67\xe7\x88\x00\xc7\xef\x5a\x92\xdf\x22\xe8\xfd\x70\x9b\x28\x07\x47\x99\x79\xeb\xb0\x45\x6b\x8d\x10\x85\x95\xa9\x6f\x06\x18\xb2\x2d\xa3\x4b\x1e\xff\xde\x8b\x68\x6f\x89\x33\x86\x61\x1d\x3c\x92\x3d\x80\x37\x57\x97\xbb\x6d\xf1\xb5\xbb\x82\xc6\xca\x75\x54\x7a\x1c\xba\xea\x61\x5e\x14\x9b\xfd\x71\x73\x3c\x0f\x9f\xb7\xa3\x58\xf4\xdd\x85\x58\x44\xec\x5d\xfa\x6d\x7b\x5f\xe1\xd9\xde\xdc\xa9\x3f\xa7\x8b\x33\x17\x5c\xab\x52\x8b\xc8\xc6\x46\x29\x26\xf0\xf8\x5d\xe5\x85\xe3\xb5\x78\x7f\x25\x6b\x0e\x3e\xde\x93\x09\xfd\x4a\x9a\xe0\xeb\xc7\x31\xd9\x77\x95\xd3\x01\x87\xf6\x61\x7d\xe7\x45\xc7\x06\x9e\x2d\x6b\x1a\x59\x93\x2b\x12\x0d\x2a\xeb\x78\x13\xaf\x69\xfd\xef\x0a\x77\x7e\xfc\x41\x15\x9a\xe1\x3f\x56\xea\x78\xeb\xfc\x36\x7b\x28\xe6\xb2\xd3\x48\xfc\x8c\x68\x22\x92\xc0\xa6\x24\x96\xa6\x36\x2b\xe7\x0a\x6a\x01\xf1\x1e\x5a\x39\xf4\x1c\x9f\xbd\x60\xab\x6f\xed\xee\x8d\xbb\x22\x0b\xd0\x6c\x46\x8f\xef\x7b\xd3\xf4\xdc\x8b\x52\x42\x15\xf9\x23\x8a\x3d\x28\x67\xce\x65\xf5\xb7\x98\xe9\xaa\x52\x83\x62\x2e\x1f\xbf\x5c\xa0\x03\x35\x95\x47\x56\x6b\xdc\x35\x9d\xfd\xf7\xfb\x7c\xbd\xc9\x92\x3f\xd5\x11\x17\x25\xa7\xfb\xa7\x37\xcf\x43\x22\xdb\xe1\xea\x72\x7b\xba\x4b\x6b\x13\xe0\x9f\xf8\x4c\xe6\xd5\x58\xa7\xcd\xde\x35\xd6\x67\xb4\x71\x7d\xef\x5b\x53\xeb\xc6\x8e\x73\xb5\xde\x3c\x5e\x0d\x2f\xbf\xb5\x7f\x37\xd3\x0b\xaa\x65\x9f\xab\x0f\x89\xf0\xc2\x42\x23\xe2\xa4\x68\x3a\x01\x8e\x0b\x5c\x9d\x23\xa9\x20\x87\xcd\xef\xd8\x88\x67\xf5\x40\x85\x61\xa7\xee\xf5\x34\xc8\x26\x8c\x25\x4e\xd8\x0b\xf0\x1b\xb9\x12\xb0\x8e\x8a\x2c\x71\xf5\x8f\x4c\x7a\xd5\x12\x9a\x83\xd5\xa2\xc2\x57\x43\xe7\xa2\xfd\x7d\x5d\x60\xe3\xe9\x17\xf4\x81\xdb\xf8\xeb\x61\x22\xda\xb1\x1a\xde\xdd\x7d\xf5\x82\x08\xf3\xf7\xba\xbe\x32\xcd\xfa\xdf\xab\x85\xd7\x5d\xc9\xdd\xcb\x0a\xd3\xe5\xfe\xfe\x36\x6c\xac\xab\xac\x58\xfd\x09\xd0\x4a\xfe\x2d\xe1\x6f\x86\x9b\x11\x33\x9b\x11\xd3\xcd\x88\x91\x66\xe4\xcc\x66\xe4\x74\x33\x72\xa4\x19\x35\xb3\x19\x35\xdd\x8c\x1a\x90\x6f\xe6\xcc\xd3\xb2\x3a\x3d\xcd\xa7\x09\x08\x46\x33\x31\xe8\x9b\xc2\x65\x75\x62\x0c\x14\x22\x20\xe6\x23\xd0\x37\xb9\xcb\xea\xc4\x08\x08\x01\x08\xf0\xf9\x08\xf4\x4d\xfb\xb2\x3a\x31\x02\x5c\x01\x02\x4c\x01\x02\xc3\x9e\x69\xe8\x5f\xb5\xc9\x8f\x3f\x94\xa7\x52\x7e\xcb\x6d\xec\xb1\x28\xd9\x37\xcf\xf9\x66\x01\x3b\xa7\x3a\xb4\xff\x3a\x88\x94\x90\x6a\xb1\x80\xd4\x81\xc0\xfa\x60\x95\x06\x16\xbc\xb1\xba\xb0\x83\x35\x98\x17\xf4\x6d\x11\x90\xe1\x6e\x35\xae\x02\x74\x97\x23\x97\x40\x8d\x6d\xbe\x3d\xb2\xf5\xb4\x14\x82\x77\xd5\x99\xc9\x82\xfd\xb9\x14\x31\x6b\xaf\x87\xc3\xee\x94\x9d\xf2\x3f\x31\x4b\xd7\xf9\xe7\x79\x7b\x7d\x8f\xa0\x3a\x6a\x1c\xad\x6c\xd8\xb1\xb6\x58\x1e\x15\xf5\xde\x87\x0c\x9a\x79\x0a\x24\x10\xee\x74\xd0\xea\x70\x24\x1a\xc6\xc6\x9a\x5e\xe0\x50\xf6\x4a\xd2\x67\x10\x28\xd3\xfc\x31\xdf\x9e\x8e\xde\x11\xb3\xff\x72\xa7\xad\xb4\xbe\x39\x8d\xfa\xb3\xcc\x91\x96\xfd\x29\x46\x24\x51\x8f\xe1\x19\xce\xef\x07\x70\x38\x20\x27\xf3\x4c\x0c\x7a\xf2\x26\x39\xad\x4b\x17\xae\xb8\x4b\xd5\x85\x81\xb2\x65\x04\x97\xae\xf2\xa2\x98\x0d\xf9\xea\xed\x0c\xbc\xfb\x45\xae\xe0\x6f\xc5\x16\xf4\xe3\x2a\x3e\xa5\x78\xdb\xb2\xd4\x4d\x2e\xba\xb6\xfd\xa0\x2b\x9e\x8d\x63\x5e\x1e\x6d\xb2\xfd\x53\x72\xdc\x15\x9b\xf5\xec\x1b\x76\x13\xda\xa7\x86\x52\xb1\x1d\x0b\x17\x4b\x77\xae\xfc\x9d\x61\x5c\x3f\x7e\x00\xd3\xde\xb5\xf4\xa3\x5f\x4b\xf1\xb1\xad\x5f\x9d\x11\x91\x63\x24\xe2\xe6\xa5\xa9\x99\x4c\xa3\xb4\x3c\x0c\xb0\x83\x55\x91\x67\x87\xcb\x9b\xdd\xe9\x6e\x1e\x45\xc0\xd8\xf6\x2d\xbf\x06\xfa\x42\x0f\xdc\xbb\xba\xd9\x6c\xfd\x41\x1e\x70\xea\x75\x31\x7c\x09\x70\xec\x5d\x79\x41\x70\x5d\x0c\x85\xd9\x19\xbc\x34\xd3\x6a\x3f\x59\xaf\x7b\x9b\xe9\x14\x3b\x8d\x61\x3a\x04\xa5\x7a\x7d\x7a\x6e\x86\x5d\x4e\xca\x18\x0d\x97\xb4\x11\xde\xb1\xa6\xd3\x89\x2b\x95\x4b\x71\x3b\x95\xd7\x73\xe9\x1f\x23\xab\x60\x23\x68\xbc\x7f\x92\xde\xec\x8a\x75\x7f\xcc\xe6\x99\xc3\x56\x8f\x47\xe4\x95\x81\xd4\x11\x4e\xd7\xe9\x1f\xa3\xeb\xa3\x33\x5b\xbb\x0a\xb7\xd1\x46\xdb\xf4\x85\x9e\xcf\x06\xdf\xf0\xc1\x0a\x1e\x2a\xfd\x11\xa5\xdb\x2d\xf6\xd4\x7b\x6e\x85\xb3\x61\x7c\xde\x7a\x48\xd6\xeb\x84\xac\x76\xfb\xaf\x69\xb8\xc2\xe0\xff\x99\x40\xa3\xaf\x4a\x6d\x9b\xeb\xdc\xe8\xbd\xa4\x18\x70\x94\x26\x7d\x41\x76\xc6\x29\xcd\x5f\x84\xfd\x71\x92\xde\xab\x72\x51\xbc\x1f\x36\x93\x2b\x5c\xad\xd7\xd1\x70\xce\x59\xa2\x57\xeb\xd3\x74\x9d\x80\xe0\x2c\xf8\x55\xd9\xb9\x70\x6b\xae\x34\x1f\x7e\xb3\x4e\xdc\x4e\xcb\x1b\xa6\x87\x39\xcc\xcc\xc3\xbc\x74\x8e\xff\x41\x0c\x71\x29\xf2\x23\x07\x18\x78\x49\x7a\x39\x29\xc3\x28\xff\xb8\x5e\xf7\x5f\x2e\x1c\x20\xeb\xbe\x3a\xcf\x2d\x93\x7d\xd7\x3b\x78\xcc\xcb\x6c\xb7\x2b\x4e\x9b\x7d\xba\xcf\xb6\x39\x8e\x4b\xc7\xbf\x2c\x2e\x10\xab\x01\xa5\xb6\xd6\x72\xff\x6a\x68\x07\x7f\xb8\xbd\xbd\xed\xdd\x64\x92\x61\xd3\x76\x33\xf5\xc0\xac\x0a\x1d\x9d\x26\x95\x0a\x74\x9a\x1e\x81\xdc\x2b\x14\x7a\xff\x84\xa2\x79\x8a\x71\x7d\xa2\x2e\x5e\x74\x87\xa4\xbb\xc7\xaf\x37\x07\xbf\x70\x2e\x57\xbb\xe2\xe1\x7e\xdb\x3f\x4c\xe4\x3e\xdf\x3e\xf8\x27\x68\xad\xc3\x6d\xa8\x73\x2a\xd5\xa9\x1a\xc9\xc8\x3d\x42\xdd\xb7\x14\xaf\xb1\x5d\xb2\x77\x11\x6f\xa3\xf5\x29\x40\xa9\x42\xf9\xeb\x09\x11\x7c\x6f\x03\x6e\xb6\x12\xce\xad\xfb\x3a\x50\x6e\xdc\x8a\x46\xde\xbf\x91\x7f\x5e\x3c\x3a\xb3\x6e\x13\x8f\xf4\x49\xb5\xe3\xb0\x11\x3e\xd3\x3d\xba\x8c\x1c\x30\xed\xc5\xc7\xf1\xf0\xa6\xdd\x9b\x3b\x76\x95\xdf\x4f\x7b\xc5\xb4\xab\xad\xd7\x57\x63\x09\xeb\x43\xfc\x84\x08\x7f\x14\x61\x81\x47\x4f\x5f\x90\x58\xd0\xef\x8b\xa1\xf9\x99\xe7\xc9\xd4\x33\xbd\xed\xc3\x9b\xce\x04\x47\xf9\xdb\x5a\xd2\x56\x43\x16\x77\xc3\xc4\x73\x35\xe1\x76\x6e\x67\x7a\x9d\x57\x93\xdf\xa6\x1e\xd1\x49\x58\x03\xf4\xf4\xb7\xdb\xdd\xe1\xcf\x40\xf0\x37\xd9\x21\xf8\xaa\xfd\xd2\x7b\x15\x03\x05\x95\x7e\x8f\xc0\xb0\x34\x1a\x17\xe6\xf0\x7b\xeb\xb8\x69\xca\xa1\xf2\x0f\x31\x16\xb1\x7a\xdc\x3d\xc2\xb3\xd2\xe1\x11\xde\xe0\x5c\xb5\x86\xbd\x06\x51\x1d\x7b\x39\xa7\x01\x44\xef\x10\xc4\xc7\x74\xdd\xe6\x9d\x53\xbd\xcd\xdf\xb1\x76\xbe\x3f\xcf\x54\x5a\x16\xb4\xff\x86\x16\xb4\x70\x85\xf4\x48\xca\x30\x92\xe4\x78\xb7\xfb\xf2\xc3\x2f\x4d\x28\xbe\x7a\x6b\x70\x7e\x6c\x59\x0f\x5a\xaf\x7b\x14\x7d\x94\xc0\xbf\x93\x9b\x43\xb6\x5d\xa7\xc5\x0e\x63\x9d\x0c\x07\xe0\x6a\x6a\xbf\x38\x97\x65\x44\x2e\x24\xc1\x84\x1c\x7f\xdd\xec\xd3\x62\xb3\xfd\xf5\xf8\xbc\x7b\x38\x41\x37\x2f\xfd\xc6\xc4\x86\x82\xe6\x35\x7c\x7d\xe7\x3b\xd9\xbe\x9b\xde\x6e\x7a\xf6\xb5\x6a\x53\xa0\x75\x20\xb1\x52\x02\x47\xe3\x80\x4f\xa9\x44\xf1\x6b\xb5\x5d\xe2\xb7\x22\x3b\xe5\xff\xe7\x9f\x52\x45\xff\xf8\xa6\xd3\xd3\x24\xbb\xe8\x3c\x0a\xf2\x7d\x2b\x26\xf9\xec\x8a\xdd\xe7\xb0\xd3\xc4\x16\x81\x86\x9b\x5d\xc3\x51\xab\xbc\x18\xb5\x7b\x4a\x8f\x9b\x6f\xd0\xb3\x8a\xd7\x3f\x75\x10\xf0\xc7\xa1\xe9\x97\xcd\xe9\x6e\xb3\xc5\xed\x97\x86\x32\xdb\xdd\x69\x73\xbb\x59\x65\x3d\xdc\xad\x7f\xb4\x7b\x36\xb5\x6a\x02\x6e\x37\x4f\xf9\xba\xde\xbe\xa8\x1f\x67\xa9\x6a\x17\xf9\x1e\x1b\x4a\x1f\x22\x09\xae\xaa\xe6\xa3\xab\xb7\x8d\x2b\x97\x92\x96\x7b\xf0\x64\x3d\x6f\xe2\xdd\xf8\xbb\xf4\x87\xdd\x3e\x3f\x9c\xbe\x5e\xee\xf6\xd9\x6a\x73\xfa\x1a\x46\xf6\x76\x73\x2a\xcf\xae\x1b\x29\x19\x41\x37\xee\xb1\xab\x7c\xef\x5e\xac\x88\x14\x85\x36\xef\xc7\x48\x93\x77\x9b\xd5\xee\xb0\x4f\xbd\x34\x9b\x74\x20\x24\x64\xbd\x3a\xe2\xac\xa0\x49\x6f\x6e\x8d\xab\xf8\x72\xac\xbf\xad\x13\xe8\x31\x58\xdb\x70\x7c\x7d\xed\xd0\xc3\xcd\xf6\x76\xf7\xcb\xf3\xf0\x8c\x4d\xec\xc2\xef\x1a\x42\x50\x2b\xac\xa6\x0a\xeb\xaa\xb4\xa4\x3d\xde\x25\x69\x22\xf9\xfe\xe9\x4d\xfd\xf8\x3e\x7b\xf2\xaf\x2e\x24\x1e\xc3\x95\x25\x90\x39\xe2\xb9\x52\x75\xa9\xf0\x88\x3f\x7d\xc4\x2a\x3f\xaf\x49\x4f\x47\xe6\x37\xa8\x65\xd4\xe0\x44\x7c\x87\xe7\x9a\x85\x4c\x15\xbd\xe8\x43\xab\x87\xe8\xaa\x3b\x77\x2d\x9a\x45\x37\x91\xe6\x5e\x15\xa2\x9a\xde\x1d\x76\xf7\x79\xf0\xc7\xb8\xd0\x12\xbb\xd5\x03\xb6\x41\x70\xbd\x4b\x7a\xa2\xce\x05\x4e\x68\xdf\xd6\x48\x69\xb9\xbd\x79\xdb\xf1\xdf\x36\xeb\x5f\xfe\xee\xd3\xe4\xc5\x2d\x74\x0f\x23\xa2\x1e\xe0\xeb\x20\x53\xd5\x90\xaa\x5b\x4e\xc3\x10\xfd\xad\xe9\xa8\xd6\x8f\x65\xdc\xfc\xcd\xe3\x55\x77\x22\x5a\xb8\xde\xee\x76\x95\x97\x3d\x1d\x68\x7e\x09\xc0\x0a\xe5\x26\x60\xec\x76\xb7\xbf\x17\x02\x87\x2f\x79\x9b\xa4\xac\xdd\x75\xec\x72\x1b\xd9\xbe\x61\x68\xf2\x92\xc1\x26\xc6\xc6\x75\xa8\x03\x53\x8d\xd1\x3e\x79\xc7\x3a\xb7\x88\x20\x7a\xa6\xef\xd5\x46\xbd\x3d\x9d\x67\xd3\xc5\x3f\x6a\xfa\xe8\xf7\x7e\xf7\x9d\xe6\x39\xc0\xb0\x1c\x93\xb2\xf8\x8a\x19\x70\xb4\x2f\x31\xc0\x78\xeb\x1e\xe6\xef\xe5\x3e\x5c\x05\x1d\x40\xbe\xdd\x5d\xc2\x0a\xcf\x40\x7a\xdc\xeb\xa3\x56\x2f\xfa\x3b\x75\xd7\xb4\x69\x47\x8c\xac\xc5\x78\xaf\x5a\x1e\xe3\xef\x50\x5e\xae\xb2\x5c\x47\x11\x74\x5f\xbe\x2b\x5e\x65\x3d\xd7\x22\x9b\xbb\x77\x19\x2f\xfe\xc5\x10\xb2\xb9\x05\x97\x81\x3d\xee\xb3\xed\x55\x27\x01\x4e\x44\x89\xb1\x56\x10\x0f\x76\x7c\xf6\xdd\x88\x0b\x48\x78\x7e\xdf\x56\xd6\x66\xd9\xcd\xac\xd7\x96\x5f\x3e\x35\x17\xb3\x60\x6c\xbc\xdf\xc9\x63\x8e\xd0\xca\x48\x36\xe3\x43\x17\x47\x64\x4d\x5a\x3e\xca\x15\x47\x9a\x07\xec\xff\x67\xef\xdd\x7a\x5b\xc7\x95\x44\xe1\xbf\x22\xa4\x77\x03\xed\xb5\x2c\x6f\xf9\x96\xd8\x0e\x96\xb1\x1f\xbe\x87\x79\xf9\x80\x73\x9e\x17\x32\x07\x8a\xc5\xc4\x9a\xc8\x92\x46\x92\x13\x67\x1b\x99\xdf\x7e\x20\x5e\x24\xde\x6f\x92\xd7\xf4\x9e\xd3\x0f\xbd\x3a\x16\x59\xc5\x62\xb1\x48\x16\xab\x8a\x45\xa3\x80\x58\x8a\x87\x8b\x70\xd8\x8b\x86\xd1\x60\x63\xc4\xc4\xb6\xb5\xa7\xcf\x22\xf0\xf8\x28\x91\x27\xa3\xc9\x8b\xca\x63\x42\x2d\x3b\xf3\x0a\x9c\x82\x08\x26\x98\x12\xdb\xd4\x26\x39\x41\xe7\x92\xd7\xaa\xf8\xd8\xcd\x0d\x3d\x0a\xfa\x7c\x2d\x64\x09\x5c\x45\xdd\x1a\x58\xf5\x8e\xfd\x56\xed\x5a\x30\xe9\x57\x46\x11\xea\x7f\x69\x61\x32\xfa\xe7\x17\x92\x88\x62\x76\x35\xa7\x9f\x5a\x80\xb6\x70\xc9\x0d\x16\x97\xd9\xbb\x67\xf2\xd0\x53\xf1\xdd\xee\x48\xfa\xc4\x3b\x7d\x9a\x3b\x6a\xf4\x3d\x10\x92\x24\x28\xc8\xbf\x0f\x25\xca\x48\x19\x33\x79\xd9\x7b\x0e\x86\x53\x87\x76\xa3\x91\xd5\x44\x44\x72\x9b\x87\x24\x39\x9a\x65\xbb\x38\xc0\xda\xb6\x36\x0a\xd8\x76\xa0\xd4\x09\x3f\x1d\xd0\xad\x79\x13\xad\x89\x9f\xc3\x76\xda\x66\xa9\x74\xa1\x97\x60\xee\x77\x1c\xd2\x63\x64\xa3\x45\xdf\x26\x1e\x48\xa8\xc7\x2a\x31\x12\x81\x62\x71\xe7\x96\x9c\x4f\xed\xe3\xd6\x35\x47\xfa\x07\xc5\x1b\x16\x78\x81\x54\x1d\x46\x57\x0f\xad\x6e\x88\x74\x46\xa5\xee\x4c\xd6\x7d\xe6\x74\xae\xc4\x16\x84\xc1\x72\xdd\x42\xd1\x5e\x9c\xf6\x4b\xef\x22\x52\x58\x5f\xd8\xb4\x8c\xd8\xff\x8f\xaa\xd5\xa0\x8c\xab\xb8\x29\xaa\xa7\x89\x69\x7f\x5c\x2a\xf6\x47\x16\x3b\x8f\x56\x99\x3a\xc9\x10\xda\xd1\x9e\xad\xce\x27\xdd\xc8\xa8\xf6\x6b\xe9\xec\x72\x99\x25\x7c\x8a\x16\xc6\xbd\x28\xf1\x0f\xad\x84\x34\xe7\xb2\x27\x4f\x0d\x0a\xa2\xf3\x34\xb1\x5e\x57\xfe\xa4\xab\x90\x1d\xc4\xcf\xb8\x4a\xe3\x10\x82\x3d\x19\xdd\x66\xce\x3c\xb4\xbc\x5a\xb2\xa6\x9c\xcc\x03\x69\x60\xb7\x45\xba\x77\xd6\x29\x71\x59\xa6\x58\x64\x14\x7b\x60\x82\x6b\xe3\xa6\xa9\xfe\xe8\x11\x4c\x38\x7d\x84\x76\x6a\xcc\xd6\x95\xe0\x0e\x83\xdf\xcc\xbd\x1c\x96\x29\x56\xd3\x19\x3b\xef\x08\x15\xb1\x60\x6c\xbb\xb3\x9f\xf6\xde\x77\x14\x8d\x39\xc6\xf6\x01\x85\x82\xcb\x06\x72\x2f\xd5\x79\xec\xa8\xd2\x0f\x37\xe5\x14\xa2\x8f\xae\x73\x8b\x11\xcb\x52\xd2\xa4\x85\x00\xf6\x79\xed\x9c\x2a\xd7\xdc\x65\x6a\x68\x57\xa1\xcc\x2c\x36\x8c\xc9\x52\xe8\x09\xe0\x1e\xd4\xd8\x30\x88\x60\x12\x7d\xbb\x8d\xaa\xe5\x6e\x7b\x14\x7b\x12\x0e\x54\xbd\xb3\x5a\xab\xf3\x6a\x91\x06\x74\x62\x30\x38\xf8\x76\xd3\x87\xdf\x44\x2d\xb8\xac\xd9\xd3\x6d\xd7\x7e\xa7\x3d\x52\x7e\x8a\x79\x28\x2f\xd0\x5a\xe6\xae\x26\x50\xeb\xce\xec\xa1\x5d\x76\xf8\xf7\xf5\xcc\x92\x21\x49\x3c\xba\x58\x6d\x1c\xbc\x45\xb2\x14\x68\x0a\x33\x21\x71\x9b\x42\x07\xa9\xdb\xa2\xcf\x74\xd5\x6e\x35\x65\x5f\x1f\xe2\xa2\x84\x96\xcc\x9d\x3e\xfa\xfd\xf5\x96\x42\x72\x38\xa5\x23\x77\x91\x2a\xd3\x97\xf4\x9d\x32\x73\xd9\xec\x50\x33\x3c\x17\x63\x7c\xe8\xc5\xb0\x96\x2a\xee\x75\xd0\x9d\x78\xe4\xf2\x8b\x30\x21\xe8\x76\x41\xf5\x03\xf8\x40\x8e\xb7\xcc\xab\x3a\x96\x12\x68\x56\x0f\xb8\x9c\x1e\x06\xbc\x71\x50\xbf\xbf\x5e\x5f\xd2\x2c\x13\xb6\x0a\x18\xe3\x70\xaf\x30\x4e\xc2\x6b\x4b\x61\x37\x3d\x35\x9b\x72\xff\xce\x9f\x3c\x0f\x96\x10\xb9\x85\x4f\xfd\x4c\x04\x10\x4a\xf0\xd4\x89\xb5\xe4\xcd\xad\x7f\xc5\xfc\xc7\x43\x9f\x4f\x5a\x58\x5f\xee\xa0\x99\x47\x9e\x37\x75\x60\x21\x01\x71\xaa\xed\xc9\x4e\x06\xda\x9d\xa9\xf8\x51\x56\xf8\x64\x2c\x4c\x1f\x82\x5e\xa1\xc0\x09\x6e\x3a\x26\x88\x3b\xa8\x0b\x3f\x24\xd0\xbe\x80\x9e\x5c\x52\x21\x72\x67\xd8\xd8\x07\x72\x2d\x97\xc5\x47\x7b\xa7\x9c\xfe\xfa\xfd\xec\x36\xbb\xed\x9a\x70\x10\x75\x42\xc3\x88\xcd\xbb\xb5\x3c\x96\x44\x48\x28\xf1\x9d\x92\x0c\x65\x23\x88\x98\x92\x34\x8f\xf9\x8e\x68\xbb\x52\x11\xe1\xde\xfa\x05\xce\x05\xf9\x3f\x74\x9f\x31\x26\x80\x71\x48\x34\x2a\x9a\x3b\x85\x9c\x5e\x5d\xc8\xcc\xae\x4f\x89\x12\xcc\xd7\xd1\xa9\x9e\x9e\xe2\x0b\xf3\x81\x4e\x9a\x12\xb1\xeb\x07\xdb\x27\xc7\x95\x81\x07\xf6\x84\xf3\x9e\x90\x52\x3c\x3e\xd3\x87\x2d\xe1\xb3\xb6\x75\xec\x42\x61\xcc\x87\x22\x7f\x49\xab\x53\x8c\x72\xdc\x73\xb0\xff\xf5\xcd\x89\x87\x96\x18\xc7\x44\xe6\xc9\x6d\x17\xe4\xee\x43\x60\x85\x9d\x0a\x13\xdb\x75\xdb\x27\x92\xf0\x2f\x06\x56\xdc\x21\xdb\x0f\x6e\xd2\xcd\x20\x64\xb1\x0c\x45\xe0\x39\x02\x26\x84\xee\x5c\x57\x62\xbc\x52\x0b\xc6\x22\x8a\x58\x9f\xb3\x94\xb9\xd0\xda\xe2\xa3\x58\x50\xc0\x9e\x70\xc3\xf6\x73\x1e\x8f\xf7\xee\xdb\x1b\xb2\x98\x60\x03\x6d\x98\x80\x8e\x99\x24\x3d\xef\x00\x96\xda\x3f\x67\xa4\x81\x1e\x89\xbd\x03\x9e\x3c\x52\xa3\x63\x8d\x60\xb4\x0d\x46\xf9\x4a\x47\x00\xed\x01\x72\x79\xc6\xf6\xb5\x24\x7d\xf7\x5d\x35\x14\x18\x86\x00\x0f\x3a\xe6\xc9\x91\xf9\x9e\xfa\x38\x6c\x8a\x9b\x19\xd8\x30\x47\x27\x2b\x98\x43\x03\x91\x6a\x5b\x55\xc5\x3b\x39\xee\xa5\x3a\x34\x83\x31\x8c\xa4\xa3\x08\x18\x87\x6b\x2b\x3d\xca\xab\xf4\x9a\x08\x1c\x87\x10\x5b\xea\xe0\x40\x4c\x68\x7d\x70\xbe\x5a\x42\x5b\xd0\x85\xf9\xc0\x0e\x4f\x9a\xfc\xed\xc7\x5d\x78\xf7\x44\x9f\x28\xba\x66\xcf\x19\x32\xfc\xfe\x7c\x29\x2a\x54\x2d\xf8\xc6\xed\xba\xf6\xa8\x5a\x21\xf3\x9d\x7b\xc3\xe9\x1c\xb1\x2d\xa1\x23\xbf\xa8\x0f\x37\x22\xdf\x5b\xfc\x87\x75\xe7\x56\xcd\xca\xbb\xe7\x33\x17\xc7\xe8\xdf\x0d\xda\xe5\x3a\x28\xa4\xbc\xe6\xb7\x3c\xa8\x7f\xb3\xab\xbb\xa3\x59\x47\x87\x67\x38\x8a\x61\x9b\xa0\x06\xa5\xf7\x56\x28\xc3\x29\x7d\x0c\x91\x3b\x3d\xb6\x7b\xa3\x1b\x6b\x19\x38\x77\x90\x41\xe7\x3d\x1a\x85\xef\xa9\x0e\xe2\xc0\xe9\xa0\xb0\x6e\x80\x2e\x9d\xb5\x7f\xfa\x1a\x83\x20\xb0\xf5\x51\x0c\x56\xf6\x3d\x76\x51\xc0\x1e\x47\xac\x16\xba\xbb\x0f\xc2\x0b\x43\xfc\x5c\xbc\x03\x1f\x69\x20\x80\x1e\x30\x83\xe4\x81\xc1\xe1\x2b\x10\x08\xc9\x95\xc4\x33\x7f\xa1\x0f\xde\x92\x00\xa1\xad\x45\x01\xd5\xf6\x95\x05\x1a\xda\x43\x18\x20\xf8\x15\x3b\xd4\x57\x9c\xd3\x6d\xef\x68\x99\xdf\xdb\x5b\xd1\xf7\xfe\x66\xef\xfd\x00\xbb\xf4\xfe\x9c\x5d\xbb\xbc\x55\xf4\xab\xca\x91\xd8\x6f\xd1\x7d\xc6\xef\x51\x6e\xa7\x01\x0f\x6e\xfa\x79\xed\xec\x9e\x40\x76\x1f\x30\x67\x87\xa0\xdf\x2b\xcb\xc3\xc5\x63\xb0\x2f\xd2\xf3\xa1\xe7\x11\xa4\x73\xb8\x23\x74\xff\x8d\xb9\x49\x38\x5c\x68\x5d\x25\x6a\xe8\xc0\x0f\xe6\x3f\x62\x02\x17\xf0\xa1\xb5\x17\xfe\xe5\x14\x96\x38\x85\x0d\x61\xd6\x4c\xcc\xf9\x6c\xb9\x86\xcf\x82\x38\xfa\x81\x47\x76\xfa\x8e\x87\xea\xe6\x1e\xd9\x9b\xb8\x54\x99\x30\x32\xcb\x11\x81\xaf\x2e\x8f\x32\x16\x04\xd3\x18\x48\xc6\xe5\x3f\x83\x74\x34\xce\x23\xac\x57\xf6\x75\x62\x2a\x4a\x11\xe7\x1e\x13\xe3\x16\x61\xf0\x2d\x17\x04\xe1\x1c\xb1\xe0\x12\x63\x30\x24\x0a\x60\x90\x9b\xfe\xca\x44\xd9\xb1\xd7\xd8\xe0\x0b\x3f\xfd\x3d\x79\x2a\x9d\x08\x23\xb5\x7d\x6c\xbe\x9b\x8c\xd2\x70\xee\x20\xbe\xf2\x27\xa0\xf0\x90\xb6\x1e\x87\x78\x7a\x57\xec\x62\xd4\x05\x86\x9d\x8f\x97\x46\x06\xef\x0f\x3a\x9c\x79\x1c\xaa\x41\x4c\xec\x1e\xe9\xb7\xcb\xda\xb4\xe9\xf2\x1c\xa3\xcc\x77\x27\x69\xac\xbd\xf3\x74\xed\x01\x3d\x60\x06\x4c\x5f\xed\x1b\x26\xae\x48\x24\x2c\x44\xab\x1e\x97\xc4\xa6\xbc\x04\xdf\x83\x76\x95\x9b\x7c\xfd\xa3\x3e\x97\xad\xc4\xd6\x41\x5e\x34\x74\x5e\x0c\x6a\xbe\x4f\xae\xff\x6f\x2c\x86\x7d\xe7\xa1\x07\xfb\x8b\x9b\xc2\xf9\x4b\x51\x9d\x40\x82\xa9\x72\x9d\xc0\x3c\xb4\x2f\xa0\xff\xe4\x95\x22\xf2\x9a\xba\x2c\xa6\xee\x79\x67\x49\x7a\xd4\x73\x59\x37\x15\x88\x4f\x21\x49\x04\x47\x92\xa3\xce\xe0\x55\x23\x98\x32\x35\xac\x8b\xc3\x1b\x68\xc2\x53\x91\x80\x20\x69\x76\x9c\xa3\x16\x3f\x4f\x4e\xbc\xe1\x48\xd7\x3d\x16\x55\xfa\xcf\x22\x6f\xe2\x2c\x7c\x7b\x87\x38\xc3\x37\xf0\xd9\x47\x3f\xf7\x19\xa6\x9f\xcf\x10\x79\x5b\xa5\x4b\xbc\x0a\x2e\x65\x51\x83\x24\x2c\xe3\xe6\x08\x4b\xc8\x9d\x75\xc4\x08\x3a\x2f\x78\x56\x1c\xde\xc2\x1a\xd4\x75\xf7\x88\x96\xb6\x10\xe2\x11\x15\x3f\x19\x66\x25\x6b\x4c\x35\x38\x42\x61\xe7\x0f\x45\x96\xa1\x84\x66\x7b\x1b\x12\x9a\x18\x65\xa9\x9d\x36\x49\xfb\x77\xcd\xa7\xf6\xe3\x32\x9d\x93\x57\x19\x45\x96\x22\x25\xcb\x81\xb1\x1c\x80\x8c\xbd\xc6\x2a\xe6\x1e\x72\x28\x94\xac\x26\xf5\xdc\x79\x48\x20\x09\x27\xf1\x6f\xcc\x4f\xf4\x8b\x8b\x0a\x13\xb9\xb7\xff\xd6\x1e\xdc\xad\x79\xc7\x54\x97\x71\xce\x50\xc1\xdc\x2b\x06\x81\x92\x6b\x36\xb5\x24\x84\xbb\x33\x19\xc1\x11\x16\xc3\x5f\x98\xc1\xed\xdf\xf2\x7c\x94\x52\x36\x3b\x31\xd9\xc0\xe2\x81\x0c\xb6\x61\xaf\x23\x73\xfd\x58\x4b\x33\xb6\x67\xab\xf4\x35\x56\x09\x4b\xa9\xe4\xdb\x16\x3c\xa5\x6a\x4b\x99\xaa\x2d\xb7\xe8\x0c\x05\xaf\x66\xab\xb9\x92\x48\xb4\x07\x63\x5b\xb0\x8e\xb3\x49\xd2\xb1\x36\x49\xae\x8a\xb7\x23\x3c\x36\x49\xe9\x82\xdd\xdf\xa1\x83\x97\x2b\xb9\xf8\x5f\xd9\x30\x06\x0e\x0b\x37\xbc\xac\x78\xc8\xe2\xba\x7e\x9a\x04\x49\xf2\x3d\x69\x98\x4f\x74\xbe\x7e\x59\x0b\x5e\xcb\xf8\xc0\x36\xad\x18\x1b\x27\x49\x05\xea\x1a\xa1\x1f\x05\x23\x1e\xaa\x96\x97\x83\xb0\x8e\xc3\x7f\x8f\xbd\xcd\xb7\xa9\x6e\x33\xf4\x44\x00\x6b\x4a\x4b\xc8\xbe\xea\x87\xf8\xbb\x4c\x73\xa1\x38\x20\xbc\xc4\xc1\xc0\x32\xbd\xb2\x81\xa0\x89\xb5\xa8\xcf\x76\xca\x7e\x46\xda\xf7\x5f\xde\x82\xcf\x8c\x1c\xda\xa6\x8d\xa4\x7b\xb7\xe1\x2e\xe9\xde\x4d\x11\x99\xf0\x45\xe0\x09\x86\x25\xcb\x00\x6e\x12\x1d\x99\xcc\xe2\x59\xaf\x12\x57\x5b\x94\xb2\xdd\x7d\x2c\xdc\xca\xb5\xf7\xe6\x0d\x58\x6d\x17\xa3\xb6\xa2\xdd\x42\x8c\x2d\xdd\x76\xc9\x37\x36\x4f\x26\xc7\xd0\x71\x49\xa4\xa2\x3a\x26\xa9\x89\x5e\x72\x6f\xd4\x94\xfa\x38\x3a\x72\x7b\x3e\xfb\xb1\xed\xbe\xe3\x02\xe0\xb1\x7b\x9b\xb1\x3a\x6f\xea\x36\x28\xad\xf6\x7a\x0b\x44\x83\x25\xdf\x4a\x89\x70\xd5\xda\x95\x3a\xd7\x80\x61\xb0\xd5\x2d\x8c\x9b\xad\x6f\x53\xca\xd9\x34\x76\x7b\x96\x7b\xfe\xb8\x47\x29\x57\x6c\xe3\x68\x08\x18\x8b\x49\x8c\xc5\x51\x96\x49\xd8\xb8\xbb\x8f\x55\x9b\xa3\x10\xce\x52\x35\x58\x99\x54\xb7\x69\xb3\xe4\x8e\xc4\xa3\xe1\x4b\xd7\x10\xdc\x5c\x1f\xfc\x39\xa6\x9e\xf3\xde\x13\xcd\xa7\xb1\x5f\x25\xd9\xde\x9a\xaf\x07\x4a\xa9\xae\x9b\x89\x4a\xe8\x40\xd4\x8c\x82\x3b\x0e\x7a\x96\xd7\x2e\x47\xca\xc1\x8d\xdd\x70\x71\xb0\x3b\x31\xdf\x56\xd0\x46\x5a\x20\x3c\xcc\x5c\xa3\xf3\xcd\x66\xa4\x6e\xcb\x4c\x33\x05\xa3\x73\xd8\xdc\xa4\xd5\x09\xf7\xc6\xed\x6a\xcf\xbc\x37\x68\x7b\xb8\xa8\xf9\x18\x9c\x86\x0a\x97\x7b\x9b\x1e\xe2\x34\xd8\x80\xf0\x0b\x98\x79\xf3\xcd\xb7\xd7\xf7\x47\xc3\xf4\xcb\x68\xf6\x18\x73\x85\xb1\xc0\x63\x24\xe5\x98\x6e\xb0\x47\x52\x36\x95\x71\x4f\x5d\xda\xa6\x6e\xed\xc9\xd2\x36\x3e\xcc\x46\x39\x1c\xb5\xe3\x22\x6d\x46\x3f\xf2\x18\xdd\xd6\xf4\x29\x6f\xd3\xc7\xcc\xa6\x36\x90\xe8\xab\x78\x98\xd2\xa4\x78\x6e\xcf\x17\x67\xfb\x9c\x1c\x89\x95\x45\xce\xc7\xed\x20\x85\xb1\xb1\xba\x99\x2d\xc5\xa3\xf9\xf0\xec\x9b\xba\x81\x33\xcf\xbe\xf1\x11\xbc\x7a\x16\x8d\xf9\x68\x5b\x43\xdb\xb4\xb4\xf9\x0d\x75\x1e\x98\xe1\xed\xec\x7a\x66\x3c\x37\x60\x5a\x47\xda\xc0\x2e\x13\x3c\xb7\x5e\x9a\xbc\x8d\x9b\xf2\xb5\xd7\x9b\x61\x37\x1f\x18\x13\xca\x51\x0c\xa7\xb6\x8d\x8c\x68\xc3\x1a\xdc\xa4\xa7\xae\x34\x6a\xbb\x8e\x8a\x94\xb1\xed\x5f\xad\xf8\x18\x09\xf2\x3f\x8a\x58\x4c\x85\x81\x7e\xe1\x41\x6d\x8e\xe2\xbe\xf5\xa3\x60\x1c\x4d\xd3\x76\xa9\x19\x88\xe2\xf6\xfc\x18\x45\x19\xb6\x30\xa0\x0c\xd7\x64\x6d\x1a\xf1\xd4\x74\x6f\x61\x00\xb2\xc0\xe9\xa7\x29\xbb\xae\x4a\xee\x1e\xeb\xf1\xda\xf4\x75\x2c\x8f\x40\x81\xb7\xda\xf9\xdf\xbd\xea\x8f\x60\x08\x74\x6d\xc2\x57\x33\x36\xb5\x63\xa9\x26\x2a\xa4\x44\x26\xb8\xde\xa6\x0e\xfb\x36\xc6\xa3\x96\xa5\xcf\xe5\x28\x67\x68\x63\x74\x6f\xf7\xe0\xf6\x06\x32\xcd\xdc\x80\x95\xbe\x39\x6a\x2b\x5a\xed\x72\x70\x4b\x8e\x73\xdc\xd0\x9e\xd4\x3e\x75\xab\xb9\xe2\x63\x29\xf2\x40\x79\xb3\xd9\xf3\x0b\x54\xb1\x1b\x50\x30\x3a\x87\x47\xf2\x68\xde\xb8\xdd\x21\xb3\xf0\x17\xec\xbd\x2a\x0a\x6e\xee\xd6\x1c\xaf\x61\x5f\xc1\x72\x6f\x69\x90\x3c\x0d\x6b\xce\x4b\x8c\x06\xdb\x03\x7e\x95\xf4\x8c\xbe\xd2\x7b\xfa\x6d\x8d\xe8\x6e\x46\xa8\xaf\x10\x7b\x7a\x6c\xdd\xd0\x8d\xb0\x77\xdd\xcc\x4d\x6b\x6e\xef\xd6\x27\x24\x33\x05\x63\xbb\x3d\x35\x2d\xde\xd6\x04\xa8\x69\xd8\xc7\x2c\x65\x38\x5d\x5b\xd4\xbb\x01\x0b\x3d\x0c\x4a\x6a\xbb\xb6\xab\xd5\x48\x83\xc9\xca\x34\xe4\x6d\x61\x57\x03\xda\x18\x79\x9c\xac\xec\x4a\x7b\x8e\x15\x4b\x75\x18\xd5\x0e\x75\x7f\xd4\xac\x19\xc6\x1b\xcf\x30\x68\xc6\xbe\xe1\x8c\x85\xd6\x1d\xc6\x63\xbe\x0c\xeb\x88\x03\xc0\xa0\x1f\x38\x08\x3e\xca\x93\x1a\x83\xfb\x60\xc8\x6d\x8b\x83\x23\x03\x1c\xdb\xbb\x41\x78\x80\x23\x05\x23\xc4\x08\xd8\xb6\xe8\x73\x7e\x19\xa5\x61\x4b\xb3\xed\x28\x0e\xa4\x1b\x84\xc1\x5b\xa2\xb4\x33\xb8\x9a\xc7\x7b\x3c\xf3\xe5\x48\x17\x91\x2d\xb0\xff\xb7\xa8\x58\x3e\x77\x6b\xad\xa6\xdb\x40\x2f\xaa\x53\x1b\x43\x43\x64\xec\x1a\x1b\x51\x13\xd5\xdd\x79\xbd\xc1\xa5\x0c\x2b\x94\xe3\xe9\xa7\xc3\xae\xd2\xda\x21\x1d\xa2\xb5\x8e\x61\xa0\x77\xbf\x50\x6b\x83\x68\x88\x86\x37\xaa\xbd\x7e\xd4\x8b\xbe\xfe\x6d\x78\x5c\xf5\xf5\x68\x6c\xd8\xd6\x3a\xf6\x51\xf1\x06\xde\x90\xc1\x77\x7a\xcd\x78\x87\x79\x34\xfd\xc2\xfc\x0c\xc8\xc6\x1e\x98\x51\xba\x38\xce\x80\x4a\x91\x59\xa9\x63\xae\x4a\x86\x8b\x22\xe5\x8b\x7b\x24\xc3\x9d\x6f\xf3\x4e\xea\xdc\x78\x8d\x8c\xa4\xde\xf9\x12\xe4\x6e\xd1\x19\xbd\x25\xfd\x6e\x77\xd3\xe6\xe4\x7b\xe2\xc8\x4d\xfe\x02\x11\x36\xaa\xec\x1e\xe7\x55\x5f\xcd\x7d\x40\x53\xde\x0a\xfc\x80\x36\x87\x9d\x94\x7d\x1a\x76\x3a\x40\xf8\x1a\x1a\xbc\x20\x5d\x74\x7f\x77\xf4\xf6\x47\x00\x1f\xdc\xfa\x93\x80\x07\xc6\xf1\xa6\x92\xfe\x5c\x30\xf4\xbc\xef\xa0\x88\x8f\xd5\x94\x8b\x3e\x3e\x56\x9b\xce\xa1\x92\x83\x1b\x36\x9d\x07\x6e\x64\xa8\x19\x8a\xd6\xa0\xca\xbb\xa2\x37\xa9\xbb\x1d\x97\x7c\xf7\x0b\x01\xc1\x48\x7a\xa0\x80\xd7\x7b\x77\xb1\xc0\x34\xd2\xd8\x0b\x2d\x79\x2a\x4d\x7e\x78\xe4\xda\x90\x3d\xae\x51\xbb\x38\x64\xc0\x6f\x34\x33\xd9\x05\x81\xfa\xed\xb2\x6f\x76\xaa\x9a\xf5\x6e\xd8\x43\xe8\xf7\xb8\xae\x9e\x76\xbb\x91\x6b\x1f\x0e\x9b\x88\x1e\x81\xbf\xd7\x49\x8f\xd7\x65\xcb\x71\xc5\xe4\xef\xbc\xd1\xb7\xe4\xbc\x65\x79\xa1\x1b\xc2\x5c\x5f\xed\xd2\xb6\x01\xa7\xca\xfa\x8d\x8b\x94\x7a\x6e\x33\x3c\xf8\x38\x9b\x0c\x8f\xd5\x77\x8b\x31\xe3\x19\x67\x09\xe3\xdb\xf1\xdb\x5e\xbc\xb0\x48\x37\x17\x6b\x4c\x23\x76\xce\x7f\x90\x6f\xb3\xad\x74\xe8\x5d\xa6\x10\x33\x57\xc8\x2f\xeb\x2d\xa5\xab\xaf\xdd\x50\x48\x2d\xdd\x76\x22\xdd\xf9\xec\x37\x13\x2d\xb8\xf7\x56\xa2\xc5\xea\xb0\x91\x38\xe2\xf1\x5e\x3c\xb5\xed\xb8\x6e\x22\x3e\xc8\xfc\x99\x3a\xda\x06\x22\x47\x6f\x38\x82\xd9\xeb\x5d\xe4\x59\x4c\xf8\x56\x99\xf2\x7d\xa7\xee\x6d\x27\xf4\xc6\x85\xf4\x85\xa7\xc0\x2d\x51\x76\xdb\x61\x73\x02\x9b\xa1\x57\xb3\x05\x14\x1a\xa9\x71\xf6\xfb\x05\x9e\x66\xd1\x1e\xb2\x1f\x46\x66\xd5\x87\xbf\x98\x91\x59\x95\x17\xe9\x13\x50\xec\x00\xab\xfd\x24\xce\xbb\xba\xcb\x6d\x3e\x07\x60\xb7\x7d\x75\x60\xc4\x99\x4f\x90\xd8\x4d\xec\x19\xf6\x6a\xa1\xed\x54\xd6\xcf\x63\xd9\x6b\x70\xb2\x24\x7e\x47\x70\x78\x6b\xb7\x4a\xe6\x04\x47\x6d\xa1\xdd\x4b\x37\x2f\x19\xb8\x58\x61\xda\x23\xb6\x64\x71\xc7\x95\xee\xcd\x4c\xaa\x09\x75\xad\xbe\x6d\x65\x1d\xfd\xe3\x74\x87\x9a\x5f\xb2\x26\xe4\x09\x4b\xf4\x72\xe5\x6c\x09\x4e\x5f\xf4\xc4\xeb\x5f\x81\xec\x66\x5f\xf7\xa6\x23\x7a\xe6\x39\xcd\x8f\xa0\x4a\x9b\x47\xf5\xa3\xcf\xeb\x28\x9a\xf4\x8b\xa2\xcd\xa3\x4c\xcd\xd0\xc7\xac\x18\x0c\x36\xab\x15\x86\x70\x17\x66\x08\x28\x7f\x4f\xcd\xe2\x62\x64\x19\xd7\x75\x9a\xbf\xd2\x8c\x36\x42\x1f\x41\x9c\x80\x2a\xe8\x61\x13\x01\xd6\xeb\x7a\x98\x86\x16\x07\x7c\x16\xd4\x59\x85\xa0\x68\xa8\xd1\xc0\xeb\x5a\x77\x1f\x5b\x29\x11\xd6\x68\xd4\xb4\xa8\x1e\x48\x07\x20\x77\x9e\x2c\xb3\x8f\xb8\xca\x7d\x45\xa8\x83\x1d\x49\x84\x34\xb4\x78\x88\x90\x86\x3a\x2b\x11\xd2\x50\x63\x21\x42\xb2\xd6\x3d\x44\x48\x46\x84\xb3\x08\x89\xb4\xc8\x45\xa8\xa8\xe2\xfc\x15\xb8\xcb\xd0\xa1\x4a\x9b\xf4\x10\x67\x5e\x42\xd4\x03\x8f\x24\x45\x3a\x6a\x3c\xc4\x48\x47\x9f\x95\x1c\xe9\xe8\xb1\x10\x24\x69\xfb\x1e\x92\x24\x25\xc3\x59\x94\x24\xd4\xc8\x65\xa9\x02\x89\xbb\x20\xc1\xd7\x45\xbd\xa4\x08\x43\x8e\x24\x42\x4a\x3a\x3c\xe4\x47\x49\x99\x95\xf0\x28\x29\xb1\x90\x1c\xb1\x65\x0f\xb1\x11\x09\x70\x96\x19\x9e\x0e\xd5\xfe\x65\xaf\xeb\x61\xcc\x3f\x2b\x90\xfd\x38\x81\xa7\x81\xe3\x6e\x81\xcd\xcc\x6d\x29\xb4\x2b\xab\x24\x48\xe4\xcc\x7a\xce\xce\xdd\x3a\x1d\x97\x65\xf8\x9e\x82\x8f\x7d\x92\xbe\x07\x2f\x45\x75\x82\x0d\xcc\x5e\xd2\xac\x01\x55\xf8\x1c\x57\x93\xe0\x67\x55\x64\xe0\x47\x15\x27\x69\xf1\x5a\x15\xe7\xf2\x29\x80\xaf\x5e\xef\xc1\x69\x7f\x28\x12\xf8\xa8\x7c\x12\x67\x61\x92\xc6\x59\xf1\x8a\x6b\x27\xc5\xe1\x7c\x02\x79\xf3\x14\xcc\x9a\xcf\x12\x84\xad\x1e\xf2\x51\x54\x89\x13\x50\x0d\xda\xae\x3b\x81\x34\xe0\x62\x0b\x30\xac\x5b\x2d\xab\x82\xe7\x73\xd3\x14\xf9\x77\x3b\x88\x32\x40\x95\x8a\x34\x39\xe0\xae\xf1\x2d\xa2\x2e\x14\xaf\xaf\x19\xe8\x3e\x9e\xe2\x34\x57\x31\x91\x2a\xe3\x78\x45\x95\x30\x2c\x81\xdf\x65\xb4\xc3\x02\x44\x22\x79\xb9\x7c\x5e\x5e\x82\xba\xc8\xd2\x44\x7e\xbc\x7a\xae\xe2\x3c\x09\xef\x5b\x31\x7a\x7c\x8e\x0f\x6f\x2d\x13\xf3\x24\x54\x4f\xcf\x68\x0d\xab\x42\xe4\x9a\x6a\x0b\x88\x51\xf6\x8a\xf1\x63\x19\x27\x49\x9a\xbf\xee\xa2\x60\x55\x5e\xbe\x7e\x26\x71\x13\x87\x4d\x5a\x96\x9f\x61\x55\x14\xcd\x13\xf5\x54\x3d\x7e\xd2\x3f\x7a\xff\x08\xc2\x60\x1e\x95\x97\xc9\xd7\x0c\xd5\x7c\x2e\x2e\xd7\xb2\xa8\xd3\x76\x4a\xed\x2a\x90\xc5\x4d\xfa\x0e\x1e\x8b\x73\xd3\xb6\xb3\x8b\x1e\x9b\x2a\xce\x51\x69\x58\x56\x45\x09\xaa\xe6\x73\x07\xbf\xb5\x5c\x9b\xbe\xa7\x75\xfa\x9c\x66\x69\xf3\x39\x2d\xca\xf8\x90\x36\x9f\x96\x7d\x8f\xa8\xbe\xb7\x32\x77\xae\xf1\xb1\x38\x01\x87\x82\x7c\x0a\xe7\x51\x34\xc1\xfd\x8a\xf3\xf4\x14\xb7\x64\xfc\x78\x89\x13\xf0\x84\x3e\xd6\x4d\xdc\x80\x1f\xe8\xe5\xda\x27\xaa\x43\x98\x96\x5d\x84\x81\xd3\x1c\x54\x4d\x1a\x33\x50\x90\xf4\x0c\xd0\x60\x54\x5f\x9b\xf4\x94\xe6\xaf\xe1\xcb\x39\x87\x8b\xcd\xee\x70\x7e\x4e\x0f\xe1\x33\xf8\x67\x0a\xaa\x3f\x66\xeb\xd5\x74\x3e\x5b\x4f\x67\xcb\xcd\x74\x3e\x9b\xcf\x69\x66\x06\xf8\xcf\xb8\xaa\x8a\x8f\x6b\x18\xd6\xe9\x3f\xc1\x6e\x5d\x5e\x54\x55\xa8\xa5\x09\x59\x07\xee\xee\x1e\xbb\xf1\x88\x9f\xeb\x22\x3b\x37\x00\x77\xa3\xcc\xe2\x03\x68\x67\xcf\xbf\xff\x68\x8a\x92\xa2\x7c\xcf\x34\xfa\x5c\x34\x4d\x71\xea\x3a\x6f\x07\xd5\xd1\x81\xec\x32\x8f\x18\x09\x14\x9c\xa8\xbc\x04\x61\x80\xc6\xa7\xed\xcf\x64\xf2\xd8\x89\x40\x58\x54\xe9\x6b\x9a\xef\x0e\x20\x6f\x40\x15\x34\x45\x29\x36\x8b\x70\x29\xe9\x6d\x8a\x52\x46\xac\x1e\x8a\xa7\xb7\x45\xe2\x4a\x2c\x6a\x41\x6c\xb9\x45\xa9\xa4\x16\x19\x67\x24\xf4\xea\xa0\x3a\x6a\x11\xb4\x2b\xa1\x2d\x6a\xb1\x41\x88\x4b\x49\x27\xe2\x8b\x23\x14\xcb\x55\x57\x32\x21\x6a\xb2\x0e\x1d\xc1\x09\xfc\xd7\x8f\xfa\x3f\xcf\x71\x05\xc2\x56\x01\x7a\x92\x4e\x0d\xf8\x08\x35\xdf\xda\x1f\x54\x73\x7f\x0f\x16\x93\x09\x65\x26\xb4\x43\xdf\x75\xc4\x61\x39\xa2\x97\xca\xf2\x12\x7c\x67\x3b\x7d\x04\xfd\xd0\x49\x8a\xf1\x26\x41\x2f\x62\x78\x79\x6b\x17\x31\xf3\x32\xbf\x84\xfa\x87\x6d\xe7\x90\x7d\x51\x58\x27\x10\x23\xe7\xfd\x66\x20\x22\x92\xae\x09\x64\xc9\x08\xdb\xad\xc1\x11\x36\x98\xa5\x79\x2b\x0b\x20\x09\x63\xb8\x56\xe2\xfd\x32\x44\x38\xa1\x9d\x97\x2c\xf1\x91\xcd\x38\x2a\x5a\x91\x0e\xae\xb2\x25\xc9\x66\xb2\xa0\xc6\x01\x43\x40\x81\xb5\x04\x81\xab\xd4\x58\xf4\xa3\xf1\xd3\xaf\xb1\x0e\x2d\xe0\xa5\x12\xae\xa4\xae\x63\x88\x61\x95\xc3\xd8\x14\xe5\x08\x63\xd8\xb5\xa2\x19\x46\xbe\x25\xf3\x80\x38\x0d\x20\xd9\x16\x47\xa4\x1f\x0d\xa3\x66\xeb\xa1\x76\x7d\xa6\xad\xa6\x28\xb2\x26\xed\xc5\x02\x6f\xfe\x57\xa2\xd1\xcd\x17\xe5\xe5\xb1\x57\xdf\x16\x8b\x55\x79\x79\x14\xd5\xb4\x7f\x86\x69\x9e\x80\xcb\x6e\x6e\x6a\xc7\x6e\x19\x7c\x80\xcb\xa0\x61\x99\xb4\xed\x12\xaf\x00\x69\xf0\x3e\xf0\xcb\x2f\xc5\xc2\xe0\x5b\xb0\x60\x17\x5f\xbe\xd0\x89\x20\x5e\xe6\x10\x51\x98\xa0\x76\x5b\x2b\xe3\x0a\xe4\x4d\x27\x34\x75\xf3\x99\x81\x1d\x54\xfb\x4d\xed\x48\xe7\xbd\x7c\x77\xc5\xc8\x51\x8f\xe9\xfe\xd0\x7f\x47\xb4\xa0\x13\xff\x4e\xda\xa4\x71\xe6\x4c\x09\x96\x5e\x0b\x62\xa2\x40\x41\x0e\xb7\x72\x0e\xa3\x07\xaa\x4a\x8e\xac\x31\x52\x06\x97\x8e\x61\x74\x21\xdd\x68\xc0\x98\x49\xc7\x0f\x2d\x52\x1c\x65\xd8\x16\x92\xc2\x79\xdf\xfb\x27\xf3\xa2\x49\x0f\x60\x16\x67\x59\xf1\x31\x35\x54\x4a\x40\xfe\x69\xaa\x53\x82\xea\x94\x42\xbb\x4d\x3d\x25\xdf\x40\x55\x15\x55\xf7\xeb\x98\xbe\x1e\xb3\x96\xc2\xee\x4b\xbb\x11\x74\x3f\xca\x22\x4b\x0f\x9f\xe1\x29\xce\xe3\x57\xc8\xa5\xae\xa4\x3e\x1f\x0e\xa0\xee\xd1\x62\xc3\xf8\xd5\xea\x54\x67\xd2\x97\xd4\x8b\xc5\x76\xbb\xa5\xac\x5a\x3a\xfe\x05\x2f\x45\xd1\xaa\xa5\xdf\x6c\x18\x69\x5d\x99\xe2\x28\x05\x43\xb3\x56\xfc\xdc\xf1\x58\x2c\x6a\x99\x2d\x7e\x15\xb8\x2e\x56\xc1\xec\x17\x0b\x88\x83\x82\x14\x5c\x5f\x8a\xbc\x09\x3f\xd0\x0a\x8a\xb9\xf9\x59\x16\xf8\x4b\xf8\x5c\x64\x89\x1d\x3f\xf9\xa6\x2d\x36\x15\x00\x72\x2b\x3b\x87\xe8\x6d\xd3\x0e\x2c\xb6\xf0\x89\xcc\x20\x05\x3a\xaf\xde\xc6\xa6\x1d\xd9\xbc\x69\x87\xea\xaa\xeb\x07\x34\x24\xce\xad\x2c\x40\xb0\x6a\x34\x87\x94\x28\x27\xa2\x20\x05\x96\xa7\x19\x3b\xc3\xd2\xd2\x91\x0f\x22\xd7\xa1\xec\xea\x59\x0e\xfb\xf9\x10\xd1\xfd\xe4\xd6\x09\x29\xd8\x27\x68\xc7\xd9\x92\x97\xb8\x32\xec\x36\xdf\x8a\x81\x3c\x0c\x6a\x25\x12\x68\xb9\xa5\x27\xba\x71\x38\x2a\x90\x58\x8c\x86\xe8\xdd\xd1\xad\x53\xc2\x28\xa0\x35\x47\xdf\x4f\xb1\x89\x23\x88\xb3\xe6\x18\xc2\x78\x18\xdc\x0a\x76\x8e\xcf\x98\xa2\xe2\xdc\x94\x67\xd1\x63\xa2\x9b\x9e\x7d\x65\x76\x76\xba\xbb\xdc\xcd\x42\x29\xb4\xd5\xca\xa4\xbd\xb9\x9f\x9f\x7a\x02\x3a\x61\x0a\xea\x71\x63\x79\x5a\xcb\x04\xde\xc3\x5d\xac\x91\x03\x81\x52\x28\x06\xae\x6e\x44\x8b\x55\xd6\x6a\xf3\xb4\xab\x2a\x2e\x26\x52\x21\x96\x6c\x9b\x5c\x01\xb5\xf0\x68\xb6\x4c\xae\x02\xbb\x47\x08\xdb\x25\xfa\x4c\xa2\xd3\xf0\x61\x71\x36\xaf\xc0\xc9\x85\x5b\x7b\x3b\x65\xc3\xb6\xb2\xc8\xb1\xbd\x7c\xe2\xef\x65\xca\x86\x50\x44\xf1\x6d\xaf\x53\x36\x84\x2a\x2c\xef\xf6\xa2\xb2\x41\x0a\x38\xfe\x45\x76\xbc\x2b\xad\x98\x66\xac\x45\x73\xab\xe4\xd8\x54\x4a\xf8\x53\xb2\x8c\x29\x35\x1c\x29\x05\x56\x94\x02\x0f\x4a\x5e\x78\x96\x15\x38\x3d\x42\x7f\x0d\x3e\xbf\xce\x67\xab\xff\xc9\x9a\xbf\x68\xa0\x20\xf6\x8c\xd9\xa6\x65\x05\xfe\x15\xf6\xe6\x5e\xf8\x3d\xf8\x1e\xcc\x67\xab\x0a\x9c\x48\x00\xe4\x6e\x0e\x4e\x81\x9d\xe8\xd8\x6e\x4c\xec\x92\xe9\xbf\xbd\x30\xab\xac\xc8\x49\xed\x76\x64\xde\x54\x54\x3b\x26\xcf\xe9\x6e\x99\x17\x2d\xc0\x4d\x51\x62\x6e\x43\x2e\xcf\xee\xdb\x3f\xe1\x09\x00\x99\xdb\xe1\x7a\x86\xb1\x1d\xaa\xde\x33\x1e\x7e\x80\xe7\xb7\xb4\x09\x4f\x71\xfd\x16\xa6\xa7\xf8\x15\xc0\x00\xca\x47\xfe\xb7\xa0\xf2\x50\x56\x93\x2f\x42\x1f\xeb\xf9\xc5\x2b\xab\x8b\x1a\xa7\xd5\x97\xe8\x4d\x56\x7e\x50\x64\xd5\x3a\x0d\x51\x28\x76\x17\xba\x9d\x27\xd7\x9e\x4b\xd4\x29\xa9\xfd\x0d\x9b\x7a\xd4\x1f\xa3\x6a\x70\x4a\xf1\x51\x4a\xd3\x9e\xbd\xf6\xf0\xf8\x92\x15\x71\xb3\x6b\x07\x91\x84\x05\xb7\x43\x8b\xec\x82\x54\x94\xf0\xb2\xbc\x7c\x31\x2d\xed\x93\xf4\x9d\x0e\x88\xb0\xf7\x80\x04\x7f\xdf\x46\xbf\x4f\xbe\xb4\x6e\xfb\xeb\x73\x71\x09\xeb\x63\x9c\x14\x1f\xcc\xd9\x1d\x64\xe0\x1d\xba\x67\x21\xd3\x1d\x9c\xc0\xfa\xe6\xf6\xe8\x10\xab\x0f\x25\xd8\x93\x1d\x9d\xae\x14\x3e\x17\xc9\xa7\xf6\x8c\x41\x1f\x82\x94\x90\x94\xfd\x8f\xb1\x33\x21\x33\xd0\xbc\xbc\xb0\x46\x9e\xee\x33\x41\x99\xc5\x9f\xa0\xba\xe2\xe5\x3f\xd2\x77\x36\x68\xe2\xe7\x0c\x90\xca\xf3\x75\x54\x5e\xe8\xf0\x78\x3d\x28\x24\xfa\x14\x5f\xba\xad\x26\x8a\x78\xc9\xc0\xf8\x4f\x69\xde\x55\x5a\x6d\xf9\x4a\x53\xbd\x30\x75\x0b\xce\x4b\x7a\x01\x09\x5c\x6d\xa2\x47\xec\x12\x25\x3e\xe3\xe8\x11\xfb\x1e\x19\x54\x57\x62\xac\x5e\x47\xd1\x23\x1d\xae\xff\x18\x67\xe9\x6b\x1e\xa6\x0d\x38\xd5\xd8\x93\xf8\xf8\x1f\xe7\xba\x49\x5f\x3a\xbb\x38\xf9\xdc\xf7\xed\xf7\xaf\x9f\x71\x95\xc6\x21\xf2\xfd\xff\x68\xaa\x33\x78\x62\x9b\x63\xc3\xc0\xb5\x32\x8d\x77\x9d\xf8\xdc\x14\x9d\x49\x7d\x41\x99\xdf\x37\xeb\xb5\xcc\xfc\x6e\x10\xdd\x6f\x57\x66\xbf\x9b\x43\x1c\xf8\x4b\x85\x87\x58\x18\x22\x1e\x49\x92\xbe\x5f\x8b\x77\x50\xbd\xb4\x0b\xc3\x27\x22\x91\x1a\xe5\x4d\xf4\x7e\xec\x36\xd9\x45\x54\x5e\x82\x85\xb0\x20\x0c\x99\x53\xac\xd5\x73\x4e\xf5\xa0\x1d\x79\xe8\xa5\x20\x1f\xf0\xe0\xcf\x45\xb1\x53\xa0\x76\xe5\x27\x09\xeb\x42\xe1\x20\xf3\xf9\x27\x99\xaf\xc7\x34\x01\x4f\xd7\xc3\xb9\xaa\x8b\x6a\x57\x16\x29\x14\x15\x93\x3f\x76\x6c\x43\x8a\x5d\x30\x0b\x5e\xd5\xe1\xf0\x3f\x36\xe0\xd2\x40\x69\xcb\x9b\x5d\xb8\x8d\xda\x09\x8b\x9d\x20\xd0\xdd\x83\x87\x18\xfe\x4d\xed\x00\x21\x1c\x60\x31\x18\x8e\xf2\xa2\x51\xa1\x4a\x76\xe1\x45\x22\x3e\x14\x0e\x25\x30\xd5\x9e\x6b\x86\xa3\x37\xee\x68\x3b\x93\x3b\xf9\x45\xd3\x81\xa3\x24\xac\x0f\x55\x91\x65\xe1\x7b\x5a\x35\xe7\x38\x53\x84\x01\xca\x84\x49\x8f\x88\x2c\xb3\x6b\xb4\x4e\xf6\x01\x7e\x96\xfb\xe5\x9c\x1a\x73\x2c\xfa\xde\xbe\x7f\x14\xe2\x45\xd8\xb0\x2a\x2f\xc1\x86\xa5\x29\xc0\x7f\xd7\xc1\xac\x2c\xca\x76\x3d\x08\x4f\x20\x3f\xef\x7f\x36\x9f\x25\xf8\x01\x0d\x35\xcf\xc5\xe5\x69\x07\xff\x02\xc9\x77\xa8\xd0\xe0\x90\xb6\x29\x83\xa7\x2e\xaa\xc6\x03\x89\xc9\x92\x62\x27\x19\x73\x24\x6b\x3d\x3d\x34\x6d\x70\xa9\x63\xaf\x71\xf1\x84\x33\x57\xc7\xda\xa5\x90\xad\x42\x7a\x85\x62\xff\x24\xa7\x11\xb2\xb6\x2f\xe5\x70\x32\x6e\xb0\x5c\x60\x17\xf4\xd9\xba\x02\xa7\x7e\x87\xe6\x17\x77\xae\x58\xdd\x26\x5e\xe9\xda\x3f\xdb\x4d\xf0\xe9\xca\xef\x7e\x79\x51\x9d\xe2\x8c\x42\xf5\x8f\x13\x48\xd2\x38\xf8\xa3\xdf\xa2\xe6\xcb\x87\x6d\x79\x99\x5c\x75\xcc\x6d\x99\x1a\x7e\x54\x71\xb9\x6b\xff\xe1\xd8\x0b\xe2\xea\x70\xd4\xf0\x6c\x45\xcf\x58\xc9\x39\xf7\x4b\x42\xd4\x76\xbb\xe6\x68\xea\x04\x59\x94\x4a\x76\xc3\xfe\x3a\x36\xa7\x0c\x2d\xf5\x55\x71\x6e\xc0\xbf\xff\xb8\x4b\x0e\xb3\xf8\x90\xd5\x33\x48\xcf\xdd\x53\x40\xcf\x59\xe6\xfa\xdb\xd7\xec\xa5\x02\x00\xae\xae\xa8\xca\xd5\x2e\x38\xc7\xe4\xb1\x72\x0e\x6c\x34\xcd\x78\x75\xf9\x0a\xcf\x14\xb6\x1f\xbb\x63\x2b\x33\x53\xf9\xe7\xe0\x9b\x59\xdb\x95\xa3\x0d\xbe\x09\x28\xff\x4f\x9a\x43\xab\x2f\xf4\x8d\x1e\x8b\xac\xdd\xaf\xf1\x5e\xc0\xde\x31\x24\xbf\x98\xa6\x55\xe3\x80\xb0\x76\x47\xcd\xb8\x2c\x41\x5c\xc5\xf9\x81\x1c\x2d\xd1\x28\x21\x85\x8d\x07\x85\xf3\x50\x1d\xf8\xd4\xee\x7a\xeb\xe8\x77\xa4\x79\xb6\x7f\x60\x69\xbd\xef\x37\x52\xf8\x37\xbd\x82\x84\x1b\x6e\x67\x45\xab\x2e\xc7\x1c\x66\xaa\xba\x38\x60\xd4\xe5\x1b\x5a\x48\x48\xc8\x96\x6c\xc3\x56\x31\xd2\x67\x05\xb7\xa2\x7c\x21\x15\x90\x6b\x48\xf4\xcd\xc5\x6c\x51\x81\x13\xab\xbe\x8b\x6b\xc6\x91\x3e\x24\xa3\x1f\xf4\x86\x2f\xe0\xdf\x43\x42\x15\x42\x88\x96\xad\xd7\xaa\xf8\xd8\xcd\x15\x12\x25\x42\x42\x84\x57\xfa\xb8\xa0\x40\x4e\x36\xdd\x4d\x79\x81\x71\xd1\xac\x8d\x8a\xed\x41\x7b\x70\xc2\xbd\x58\xcc\x1e\x5a\x3e\x68\xfa\x84\x49\xe8\x03\xa4\x77\xe8\xa8\x22\x06\xf7\xf6\x51\x3c\x8f\x74\x70\x01\x6e\xf5\x4b\x15\x97\x65\x15\xf4\x34\x30\x1e\xd1\x65\xcd\xa3\xb8\xb3\x85\x2a\x15\x47\x37\xdc\x82\x6e\x1c\xe9\x85\x97\xa8\x04\xbc\xc4\xe7\xac\xe9\x15\x4b\x68\xf4\xe2\xe8\x09\x4a\xcd\xd5\x19\x1c\x64\xc0\x77\x01\xdd\x98\xd9\xbd\x14\x87\x73\x3d\x55\x95\xc2\xd5\xd8\x6e\xba\x61\x85\xa8\x45\x24\x90\x87\x4f\x49\x46\xaf\xaa\x06\xd8\x3a\x08\x96\x52\xe4\x18\xe3\xd2\x9a\x8c\xa3\x7c\x30\x1d\x7c\xdc\x49\x9c\xbf\x82\xaa\x38\xd7\x4e\xfd\xac\x40\x42\xba\x69\x42\x60\xdd\x57\xca\x09\xa6\xc4\x69\xd5\x3d\xe8\xdc\x9d\x33\x16\x46\x97\xbe\x61\x87\xdf\x43\x64\x81\xc1\xba\x73\x8c\x05\x51\x1c\x4a\x45\x2b\x56\xdd\x65\xbd\xec\x12\xd9\x9f\xe1\x3f\x75\x91\x00\x84\xf1\xf8\x50\x0f\x2d\x86\xc2\x02\xd7\xaf\x24\x8b\x07\xd9\x4a\xc2\x33\x45\xb4\x94\x72\xd2\xcb\x12\x7a\x45\x59\x17\xa0\x61\x0f\xea\x1d\xcc\x6e\x86\x6d\x41\x11\x7d\x1c\x53\x2c\x04\x57\x44\xe4\xba\x5d\xfd\xe5\x6b\xc1\xb7\x2b\xbd\x43\x34\xf1\x73\x98\xc7\xef\x01\x43\x02\xcc\xc2\xc4\xd2\x81\xef\xf8\xa8\x6c\x63\x6a\x2f\x4b\xd4\x51\xdf\x37\xd6\xae\x48\xf0\x8e\x5c\x92\xd6\xf1\x73\x06\x92\x09\x77\xa8\xef\xaa\x5e\xad\x4e\xb3\x5f\x33\x74\x13\xa7\xc5\x45\xf5\x88\x4a\x9e\xd1\xb5\xfb\xcd\x8c\x71\x09\x31\x72\x04\x18\xd5\xe6\x0c\xc4\xd5\xee\xb9\x68\x8e\x8f\xc4\x34\x86\x0c\x63\x19\x68\xda\x03\x41\x5d\xc6\x07\xe8\x74\x8a\x70\x06\x0d\x8a\xa2\x8f\x63\xda\x00\x58\xa3\x65\x7a\x7b\x0e\x92\xde\x70\xe2\x27\xc3\x94\x26\xed\xd1\x14\x3b\x6a\xb8\x92\xa9\xbf\xcc\xd5\xaa\xa9\xc1\x1c\x1a\x79\x7a\xca\xd1\x2d\x44\x74\xb0\x05\xc9\x64\xbf\x6b\xc5\xec\x1d\x4c\x75\x55\xf0\x2e\xa5\xa9\xe1\xbe\x53\x8d\xd1\x9c\xa5\x49\x5e\x22\x66\x1d\xb2\x20\x36\xc5\xef\xd2\xe7\x6e\x9d\xc0\x4a\x8e\x12\x9d\x15\x9b\x58\xed\x99\x1b\x00\x92\x30\x65\x4c\x14\x5a\xb3\xa6\xd1\x24\xf8\x16\xcc\xcb\x0b\x75\x4d\x06\xf9\xc8\xb2\xb8\x01\x7f\xc8\xe0\xda\x95\xab\x07\x9b\x46\x13\xc3\xa5\x3b\xd8\xce\x17\x3e\xb2\xb7\xc7\x5f\x78\xa3\xed\x5c\xdb\x4d\x60\x69\x20\xaf\xd9\x2a\x05\xad\x19\x41\x14\xa0\xff\xc3\x7f\x25\x24\x74\xc3\x5e\x81\x53\xf1\x0e\xc2\x38\xcb\x26\xf8\x00\x62\x71\x61\xf9\x9e\xde\xb6\xb0\x1d\x93\xcb\x89\xb3\x50\xb4\x9b\x34\x64\x40\xbb\x7b\x74\xbb\x3b\xce\x22\x83\xec\x14\x22\xf0\x1e\x66\x8e\xa1\xb6\x11\x79\x03\x92\xb5\x43\xce\x81\xab\x64\x21\xd7\xf0\x8a\xce\x1c\x74\xe5\x32\x00\xb5\x87\x0c\x99\xb1\xc5\x8e\xf3\x96\x76\x0f\x7f\x33\xc5\x3d\x23\x22\x51\xa0\x1c\x1e\x99\x58\x24\x19\x67\xee\x73\x91\x26\xde\x32\xdd\xd1\xf0\x35\x3b\x80\xaa\x49\x5f\xd2\x43\xdc\x00\x3e\x2d\x54\x5f\x82\xd1\xcc\xfa\xf3\x19\x39\x2d\xbe\xa4\x0d\x31\xbc\x31\xce\x8e\x15\x2f\x8b\xed\x07\x7e\x2b\xa5\x5b\x40\x77\x87\xed\xed\x05\x9d\x9b\x07\x9a\xe8\x9e\x2b\x10\xbf\x85\x1f\x45\x95\x50\x8e\xa8\x56\x33\xe2\x68\xdb\x45\xc1\x7c\x51\x72\x9d\x3b\x76\x26\xaf\x65\x79\x09\x92\xb8\x3e\x82\xc4\xe5\x2c\x87\xb5\x96\x75\xd4\xf5\x79\xb7\x2d\x2f\x41\xbb\xc9\x06\xc8\xee\xda\x25\x06\x80\x3e\x99\x43\x5a\x1d\x32\x70\x7d\x49\xb3\x4c\x7e\x2d\x1a\x05\x72\x76\x77\x78\x77\x08\xae\xbf\xd4\x1b\xcc\x67\xeb\x3a\x48\xf3\x97\x34\x4f\x1b\x10\x80\xb8\x06\x61\x9a\x87\xc5\xb9\x11\x2f\x1b\xae\xa3\xdf\x03\xa8\x73\xb1\x34\xbc\xee\xf2\xe6\x18\xf6\x73\xe9\x8f\xc5\x84\xd0\xd5\x35\x13\x26\xa0\x95\x86\xd9\xa2\x36\x42\x2f\xd5\xd0\x4b\x33\xf4\x4a\x0d\xbd\x32\x43\xaf\xd5\xd0\xeb\xfa\xeb\x1f\x6f\xe0\xf3\xa5\x8a\x4f\xa0\x0e\x78\x36\x5e\xa3\xdf\xa7\xad\xae\x79\xed\xb7\x9e\xfa\x10\x67\x60\xf9\xff\xfd\x31\x9f\xce\xa7\xf3\xc9\xd7\x72\x29\x2b\x8c\xa6\x51\x5b\xc8\x11\x76\x1d\xee\xa5\x95\x58\x3b\x28\x33\x32\xda\x50\xa9\xf5\x9e\x49\x07\xd7\x14\xa7\xe2\xb5\x8a\xcb\xe3\x67\x08\xff\x17\xcc\x7a\x09\x96\x8a\x5a\x3f\x97\x64\xc0\xf1\x25\xad\x11\x18\x54\xb6\xeb\xa6\x2a\xde\x80\xc6\xf4\x81\x2a\x84\xed\xe4\x89\xab\x2a\xfe\xdc\xad\x82\x95\x94\x28\x38\xd1\x1c\x30\xcb\x90\xc0\x05\xe4\xaa\x81\x5c\xa1\x98\x10\x49\xaf\x4f\xf1\x6b\x7b\x92\x42\x6b\xb1\x0c\x77\xbb\x07\xd5\x41\x05\x0e\x8d\x94\x6b\x0c\x3c\x21\x9e\x52\xa5\x08\x23\xf0\x61\x07\xea\xa5\x9a\x36\xb0\x96\xa7\x1c\x1f\xc4\x5c\x2c\x22\xcb\xf2\xf2\xf8\xb9\x0b\xe7\x72\xa4\x4d\x7a\x78\x0b\x5a\xcc\x3a\xc6\x28\x59\x0a\xa1\x1b\x70\x69\xae\xd0\x2a\x17\xe7\x87\x63\x51\xed\xea\x26\xae\x74\xf9\xf1\xb6\xf8\x80\x9a\xd6\x87\xb6\x1f\x9f\xe1\xe1\x08\x53\x47\x54\xa0\x2e\xb2\xf7\x76\xb3\x8c\xab\x64\x2a\x29\x2f\xce\x0d\x50\x15\xd6\x65\x96\xc2\x93\x89\xbc\xbc\x8c\x9b\x23\x9d\x7b\x20\x39\x57\x68\x95\x9c\xcd\xeb\x47\x4d\x4e\x82\x96\x35\x71\x25\xec\x41\x26\xf4\x9d\x46\x89\xb8\xfa\x68\x25\xb9\x2b\x7a\x4e\xe0\xc3\xf9\xe3\x3b\x38\x34\x45\x15\x82\x97\x97\x76\xe0\x73\xe8\x63\x8d\xb3\x96\x46\x54\xf1\xeb\xb7\xa4\xf8\xc8\x71\xb2\x17\x24\x22\xf5\xfb\x2b\x5e\xdb\xa6\xbf\x75\x79\x60\x84\x22\xa1\x0f\x9a\x0d\x86\x0e\x25\x72\x1f\x36\xba\x3c\x88\x5d\x07\xb6\x2f\x94\xc2\x1a\xc6\x9d\x2d\x0f\x62\x9d\x3d\xb2\xed\x1f\xbd\x38\xca\x06\x99\x1c\xc1\xa4\x65\x68\x5a\x6a\x46\xd8\x24\xf9\x12\xc4\xa8\xff\xb2\x02\xd2\xb3\xda\xed\x36\x98\x6b\xdc\x82\x83\xdb\xf9\x11\xcf\x8f\x10\xbc\x83\xbc\xa9\xb1\x97\xc9\x5b\x60\x6a\x12\x8e\x52\x97\x71\xee\x25\x36\x26\x0c\xb6\xc2\xc3\xe0\xb9\x72\xbd\x8c\xb3\x4c\x37\xa4\xfb\x3e\x9e\x5b\x4f\xa4\xb4\x06\x4f\xc1\xfe\x1b\x5a\x6a\x7b\xfd\xe2\x5c\x96\xa0\x3a\xc4\xb5\x8e\xd3\x0c\xfd\x9d\x19\xc9\x82\x67\xea\xba\x52\xd6\x90\xf3\x21\xd6\x3f\x66\x0b\x70\xea\x34\x15\xf8\x83\x24\x8d\x99\xdd\xdf\x74\xfd\x97\x2e\xc5\xb8\xed\x80\x97\xe7\x80\xb1\x3b\xa9\x34\x25\xbe\xc1\x9f\x69\xf2\xed\xc7\xdd\xee\xee\x09\x9e\x9e\xda\xe9\x3f\xc1\xf3\x9f\xf4\x71\x3e\xaa\x37\x7b\xad\x5a\x3a\xfa\xe5\x11\x9b\x6c\x91\x49\xe8\x58\x54\xcd\x24\x48\x92\x2e\xb2\x8d\xf8\xc6\x64\xd6\xb9\x56\xa2\xba\x7a\x20\xcb\xd2\xb2\x4e\x6b\x7d\x63\x35\xa0\xed\xc4\xfb\x6f\xa2\x17\x4e\x0f\x3f\x3b\xc5\xcd\xe1\x18\x22\xf0\xee\xde\x9b\x98\xa9\xe7\xdf\xee\xac\xf0\xfc\xe7\x19\x54\x9f\x65\x5c\xc5\xa7\xee\x02\x85\x88\xeb\x7f\x4b\x70\xe1\x5d\x8f\xdb\x75\x4d\xbb\xb4\x80\x47\x12\xd5\xc1\x68\xf6\xbc\x1a\x0f\xf9\x1f\x3e\x83\xe6\x03\xc8\x38\x55\xbf\xbf\x8a\x56\xb3\xf1\x37\x8e\xce\x1e\x1a\x95\x97\x60\x4e\x1c\xfa\xcb\xc5\xef\x16\x6b\x89\x69\xfd\xb0\x58\x33\x3a\xe7\x31\x0c\x0a\x18\xb6\x0f\xd8\x2e\xf5\xfc\x52\xae\x4c\xf7\xc0\x84\x31\x2c\xf4\x04\xe2\xe8\x22\x94\xd3\x4d\x49\xa1\xa9\x56\x47\x22\x53\x51\x4b\x23\x23\x63\xd0\x89\x9f\xa4\x15\xc0\xe9\xb4\x8a\xec\x7c\xca\x15\x92\x17\xc3\x65\x89\x09\xf6\x35\x69\x6e\x49\xa6\xd7\xce\xa4\xe5\xac\xfa\x95\x64\xd7\xce\xf7\x83\x4c\x81\xbe\x2a\x82\xfd\x56\xc0\x9a\xf6\x16\x91\x7c\x24\xf9\x55\x14\x2d\xa0\xa2\xfd\xcc\x1e\x52\x34\x96\x06\x77\x52\xaf\x84\x16\x29\x91\xd6\x73\x76\xa5\xc3\x5a\xe9\x88\x1a\x85\x6c\x4a\x50\x04\x59\xca\x84\xf7\xad\x4d\xbc\xc0\x8b\xbc\x03\x0f\xd8\x6d\xa1\x03\x44\xee\x17\x12\xba\xc0\x5b\xf9\xe6\x2b\xed\xf4\x22\xaa\x3b\x83\xcc\x42\x5c\xaf\xe2\xec\xe8\x22\xf3\x68\x0e\x2a\xd8\xc0\x62\x6b\xa8\xab\x2b\x11\xbd\xb3\xc3\x2f\x9b\xe8\xf7\x60\xd3\x07\xed\xa1\x6e\xdd\xb3\xa1\x4f\xf3\x3e\xf4\x78\x49\x85\x1e\x2b\x04\x92\x69\xbd\xd0\xf7\x45\xe6\xe9\xb4\xc0\x29\x33\x8e\xcb\xd3\xea\x63\xf7\x59\x27\xc9\xd3\x3b\xde\x65\xd0\xdb\xd0\x51\xd8\x17\x4a\xac\x3f\x64\xde\x4a\xa2\x8d\x35\xe8\xfa\x5b\x5c\x7a\xb4\x3e\x39\xcb\x8c\xc7\xab\x97\x73\x96\x75\xe7\xab\x85\xfd\xf9\x6a\x85\x0f\x4d\xea\x60\x25\xc4\xde\x70\x5d\x5e\xba\xe8\x3b\x7a\xea\xaf\x3b\x91\x82\x71\x55\xdd\x6a\xae\x17\xa9\x34\xcf\x40\xa3\x53\x0c\x70\x8d\xab\x0c\x75\xf4\x3b\x9d\x11\xc9\x88\xa2\x8b\x15\xa4\xa5\x03\x3a\xe8\xe0\x3f\xe1\x72\xf1\x7b\xf0\xf7\x60\x31\x09\xbe\x07\xf3\xdf\x83\x30\x58\xc2\xb4\x99\x26\xda\xe9\x14\x7f\x2d\x86\x10\x01\x3f\x40\x60\xc9\x63\x34\xb3\x1a\x54\xef\xe9\x01\x7c\x4f\x12\x43\xa6\x0e\xea\x8a\x99\xf4\x79\x26\xcf\x09\xf3\xf7\xbb\x2e\x6c\x20\xb8\x2f\x2f\x41\x14\x2c\xe5\x6f\xb8\xd0\xa4\x4e\x95\x2f\x44\x19\xdf\xf7\x70\x79\x1e\xe5\x54\x24\xa0\x5d\xdf\xb8\x73\x65\x56\x7c\xa0\x73\xa5\xfd\xa5\x3c\x75\xda\x03\x4d\xba\x03\x3a\x14\x05\xfa\x42\xfa\xab\x53\x8b\x48\xd8\x29\xda\xb5\x5a\x0c\x82\xbe\x5f\x47\x30\x08\x7a\x28\x01\x30\x51\x22\x7d\x77\x6b\xc3\x13\xd0\x6a\xaa\x8e\x1d\x0d\x92\x24\x00\x27\x87\x10\x00\x3e\xc4\x0e\x6d\x3c\x38\x96\xa6\x3a\xc5\x19\xbf\xfd\x33\x93\x6b\xb6\xa6\x6e\xd3\x4b\x28\x24\xf1\x49\x3a\x8e\xd8\x67\x4f\x90\x34\x40\x32\xae\xbb\xb7\x60\x95\x41\x43\x82\x75\xea\x38\x20\x65\x9f\x6a\xca\x90\x17\xd7\x79\xa4\xd9\x97\xdf\x34\xd6\xc6\x95\x47\x3f\x11\xe1\x63\x44\x47\xdf\x7b\xb4\x2e\xdc\x53\x0b\xc8\x7f\x2b\x6d\xe6\xb9\xad\x4b\xb8\xbe\xe4\x4a\x28\x1b\x08\xcd\xdc\xc3\x5b\xb5\xff\xc0\xb3\xeb\x3d\xb5\x9c\xba\xa5\x5d\xb9\x8a\xa9\xcd\x2c\xb2\xa6\xb8\x4d\x2c\x73\x1b\x6c\x52\x13\xbf\xc9\x65\x6e\xc5\x77\x82\x29\x63\x28\xc8\xa9\x6a\xa5\x67\xbf\x74\xae\x64\x08\x21\x9e\x2a\xae\x73\x18\x1f\x30\xe8\xd8\x3f\x2f\x04\x5c\xe4\xc7\x56\xbf\x78\x4a\x10\x75\xd7\x7e\x76\xf3\x60\x0e\x3d\xf7\x8f\x6c\x3e\xf0\x56\x33\x59\xdc\x97\x97\x89\xe4\xb4\xde\xeb\xf0\x06\x03\x91\x2b\x6f\xe9\x4d\x0d\xe9\x83\xae\x18\xa8\x57\x9e\xe8\xd3\x1b\xec\x60\xa7\xb2\xd6\x4d\xdc\xa4\x07\x36\xa0\x3f\x72\x6e\xab\x51\x66\x34\xb1\x5e\x77\x65\xc7\x05\x67\x79\xec\x42\x04\xb0\x4c\xfe\xb1\x98\xd0\xf1\xa7\x83\xe4\xfb\x4a\x9f\x04\x85\x88\x23\xf7\x1e\xb3\xd8\x45\x1e\xa2\x03\x98\xfb\xf6\x42\x67\x47\x0d\x56\x70\x6d\x5d\xe0\x7f\x18\xd3\x71\x59\x01\x28\xbd\xb2\x2b\xdb\xce\xad\xa2\x38\x9e\x8f\xa2\x4a\xf8\xc0\x1c\x57\x64\xb3\x43\x51\x7e\x86\xe4\x2a\xa1\x70\xb2\xc2\xc7\xd5\x35\x38\xa1\x24\x1e\x0f\xe0\x24\x3a\x50\xa7\xbf\x9d\x40\x53\xa5\x87\x1a\x4e\xc6\x38\xcd\x41\x15\x24\xe9\x7b\x7b\xb8\x89\xab\x37\xa8\xde\xb7\x54\x96\xa0\xe2\xfd\xab\xdd\x22\x16\x9f\x9b\x63\x78\x02\xcd\xb1\x48\xe0\x53\x17\xc4\x2e\x02\xdf\x3c\x90\xc8\xea\x48\x2a\xed\x95\xbe\xe6\x1b\xcc\xb7\xed\x3f\xf0\x2f\xf7\xf5\xb9\xd7\x8e\x79\xf5\x77\xcc\x79\xe5\xb3\x70\xe3\x07\x15\x19\xf9\xe7\x82\xfa\xa2\x2f\xed\x93\x2c\xd2\x6b\xdc\x81\xe6\xae\x96\x3c\x97\x4d\x93\xcc\xd0\x97\x30\xa8\x9b\xaa\xe8\x53\xc6\xa8\x92\xdf\xf4\x00\x28\x25\x93\x2b\x14\xcc\xd0\x64\x04\xea\x53\xeb\x60\x26\xd2\x6d\x7a\xc0\x19\xd2\xfa\xf4\x11\x85\xc1\xec\x3d\xce\xce\x20\xc4\xae\x40\x07\x08\xcc\x0e\x57\x30\xc4\x0f\x0a\xea\xca\xdf\x4d\xa0\xb2\xf2\x30\x5b\xbb\x69\x24\xdd\x46\xd0\x69\xe4\x5c\x47\xcc\x71\xa4\xec\x47\xc8\x71\x64\xdc\x46\x44\x6e\x0f\xd1\x5b\x12\xd0\xe1\x76\xf2\xa8\xce\x11\x74\x4f\x9f\xc9\x7c\x87\xc6\x95\xdb\x3a\xa6\x18\x73\xa0\x5a\xf8\x80\xdb\xba\x73\xbb\x75\xc6\x4f\x8c\xac\xc5\xa2\x1f\x3d\xe5\xe9\xc1\xae\x53\x6d\x4d\x53\x97\xa8\x0c\x60\xe6\xcb\x4c\x72\x2c\xe0\x74\x0d\xa1\x96\xd0\x5d\x47\x89\x66\x8b\xb5\x26\x9b\x20\x38\x99\x16\x19\xa6\x1a\x9d\x94\x87\x59\x59\x10\x95\x74\xcb\x1a\x1a\x11\xae\xfe\xf0\x24\x79\x64\xdb\x0a\x53\x93\x74\xf9\x34\xb6\xd4\x36\xcc\xd7\xaa\xf6\x70\xbf\x45\x51\xae\x73\xb2\xd1\x22\x53\x29\x3c\x8b\xac\x23\xda\x4c\xaa\x05\xef\xf7\xe9\x45\x64\xdb\xe4\x72\x58\x93\x2b\x06\x7c\x85\x4e\x4f\x2b\x7b\xf8\x75\x47\xf2\xbd\x81\x64\x6a\x44\xb0\xca\xa5\x01\x98\x9d\x40\x7e\x0e\xcb\x38\x07\x59\x5b\xe3\x25\xad\x70\x34\x30\xb1\x5c\x46\x52\xc3\xe4\x66\xb5\xa5\xb5\x38\x19\xe5\x30\x5a\xa3\x38\x57\x07\x30\x41\x3f\x12\x50\x37\x69\x0e\xb1\xe3\x2f\x08\x6c\xc2\x65\x6f\x10\x91\xa2\x7b\x71\xe1\x47\x5c\xe5\x21\x4c\xf3\x13\xb0\x49\xb7\x3e\xd2\x3c\x29\x3e\xa8\x27\xab\x56\x6b\x79\x97\x4d\x88\x9e\x8b\xe4\x33\x28\x35\xc9\xdc\x14\x0b\xf5\x4b\x0a\xb2\xa4\x06\x4d\xcd\xac\xa4\xf4\x50\x0c\xc9\x5f\xdb\x63\x17\xde\x59\xeb\xa3\x60\xf0\x93\x54\x54\x4a\x11\xc2\xd5\xd7\x2a\x4d\x1e\xdb\x7f\xc2\xd7\x18\xe7\x5d\x82\xbf\x1a\x70\x2a\xb3\xb8\x01\x21\x72\xa8\xd7\xbb\x0a\x94\x20\x6e\xfe\x68\x4f\xc2\xe1\x4b\xda\x4c\x4f\x69\x7e\x8a\x2f\x7f\xc0\x8b\x94\xd3\xf6\xab\x81\xba\x19\x24\x8c\xf6\x19\x53\x67\x6d\xb4\x5f\xea\xe1\xa9\xa5\x93\x24\x11\xa2\x9c\xc3\x12\x58\x6a\x67\x40\xc3\x89\xf3\x3e\xc1\xd1\x7c\x92\xe9\xe2\xea\x5d\x25\xc9\x66\x34\x3a\x78\xc6\xe1\x9e\xc9\xc6\x4e\x8f\xff\xff\xce\x19\x1d\x7e\xaa\x5d\xc4\xf5\xbf\x0c\xb8\x10\x1f\x31\x4a\x5d\x2a\x65\x7d\xfb\xd8\x55\x2e\xa3\xe0\xdf\x6c\x7a\x83\xdf\xa1\x14\xf2\xec\x3c\x3a\xb1\x18\xed\xf0\xea\x93\x97\x14\x12\xbe\xb0\x77\x5c\x58\x9d\x6d\xa8\xbb\xe8\x4c\xae\xb1\xd9\xaa\xb7\x4c\xc0\xf3\xf1\x42\xbc\x1b\x75\x2f\xdd\x5e\x79\x42\x6c\x06\xab\xad\xc8\x98\x45\xe4\x8b\x91\x2f\xea\x80\xcc\x98\x76\x34\xf4\x92\xc0\x54\x67\xf6\x3f\x66\x24\xfb\x15\xc2\x76\x4d\x80\x9b\xd0\x74\xfe\x52\x4d\x26\xec\xd2\x62\xd1\x4f\x25\x3d\xe8\x09\x47\x7a\xff\x82\xa8\x11\x29\xbb\x56\xdb\x08\x16\x36\x7c\x04\xa7\x67\x98\xda\xa7\x4e\x0f\x61\x52\x15\x65\x52\x7c\xe4\x61\x53\xa5\xaf\xaf\xa0\xea\x2c\x09\x6b\x8a\x56\xda\xaa\xf1\x9c\xe6\xc8\xe4\xd7\x0a\xec\x71\x61\xb4\x7c\xb4\xa2\xc9\xa7\xb1\xb3\xe3\xc3\x8c\x24\x5d\x09\xe1\x5a\x7e\x95\x86\x39\x59\xaf\x0e\x74\xfe\x46\xb8\x6b\xb3\xf7\x9b\xa9\xeb\x39\xfc\x73\xac\x78\xa5\x95\x28\x82\xc7\xa2\x4a\xff\x59\xe4\x4d\x9c\x85\xb8\x8b\x13\x39\x1e\x28\xf1\x5c\x40\xa6\x94\xbb\xf8\xfd\xd7\x00\xb9\x6b\xd3\xe6\x53\x7e\xc2\x5d\x29\x06\xa7\x65\x3c\x67\x0f\x5c\x2e\x34\x75\xbb\x40\x1f\xea\xe2\x10\x97\x11\xd1\x08\x8b\x32\x5f\x06\x4d\xcb\xeb\x56\x57\x35\x5d\xd0\xb6\xf4\x2a\x6b\x4e\x83\x0f\xb4\x92\x61\x22\x0b\xaa\x2c\x4d\x62\xd0\x59\xac\xdf\x44\xb1\x6b\xae\x4b\xe8\x84\x5d\xb9\xe6\x99\xc4\xe7\xb7\x5e\xb1\xf9\x49\x4d\xe0\xae\xf7\x21\x85\x0b\x8e\x22\xfe\x1c\x79\x22\x90\xc2\x6a\x39\xb8\x94\x76\x65\x39\xcc\x3c\x84\x72\xc0\x0d\xdc\x60\xa8\xbd\xe1\x98\x4b\xda\x11\x07\xbb\x55\xb2\xf0\x15\xf4\xa2\x0a\x7e\xe6\xf1\x09\xfc\xb8\x6b\x3f\xfe\x84\xcf\xa3\x3e\xdd\x3d\x4d\x2d\xea\x7c\xff\xc6\xe5\x59\x35\x83\x74\xd9\xa9\xbe\xf1\x41\x73\x87\x22\xcb\xe2\x12\xaa\xc0\x21\xca\x50\x5d\xdb\x6c\x6f\xf0\x56\xea\xfc\x7e\x23\xe8\xc4\x55\xf1\x81\x4b\x61\xfe\x56\xb6\x30\xae\x40\x5c\xef\xee\x70\x3b\x01\xfe\xff\x5d\x70\x37\x0b\xd0\x8b\xc3\xd8\x50\x7f\x27\xa5\x8b\x7c\x03\x49\x50\x72\x1c\x90\xd4\x26\x99\xc5\x6b\xb4\x19\xb6\x4d\xef\xf0\x17\x7d\xfd\x40\x72\x34\xa7\xbd\x32\x22\xa4\x22\x5d\x23\xfc\x8d\x8f\x4e\x13\x36\x0b\x69\x4f\x12\xd3\xef\x47\xad\x4f\x68\x01\x4e\x5f\x12\x4f\xc4\x2c\x4b\xf3\xb7\x20\x9e\xce\x9a\xa2\x2c\xb2\xe2\xf5\xb3\x2f\xd3\x4c\x4b\x94\x02\x87\x76\x75\x50\x18\x3b\x4c\x5d\x6b\x71\x25\x46\x3a\x51\xce\x0e\x24\x16\x01\xfd\x01\x23\xd3\x43\x39\xb6\xc8\x0d\x47\xab\x02\x4b\x7b\x20\x71\xd8\xc8\x9a\xbd\xed\x3d\x29\x15\x69\x32\x3a\x1c\x6e\x54\x51\xee\x38\x79\x0b\x42\xfa\x68\x59\x66\x04\x2b\x48\xd6\x94\x6e\x45\x24\x3a\x8a\xcb\xfd\x65\x7e\x09\xd2\xd9\x2e\xd3\xf9\x0a\xe9\x0c\xfb\xf7\xc4\xb4\x8f\x77\x96\x87\x28\x52\xce\x15\x2f\x76\x43\x59\x53\x4e\x3e\x7c\xd3\x47\xbf\x02\x28\x6e\x66\xb6\x47\x5c\xe9\xbd\x4c\x78\x87\x14\xde\xbe\x14\x53\xad\x28\x70\xa1\xf7\x19\xd0\x23\x7a\x52\x9c\x74\x05\xd3\x7d\x61\x7c\x05\xa6\x05\xfe\x8f\x22\xcd\x77\x90\x63\x56\x0d\xeb\xaa\x24\x45\xa3\xa8\xa0\x64\x84\x6d\xaf\x20\x6a\x15\x23\x6d\xef\x9e\x63\xfb\x9d\x66\xb0\xf0\x0b\x86\xdd\x69\xe2\x07\x38\x95\xcd\xe7\x93\xa6\x57\x02\x44\x5e\x34\x61\x02\x5e\xd2\x1c\x24\x4f\x4a\x92\x95\xed\xd8\xd6\xa7\x5b\xb9\x8a\x57\xeb\x5d\xba\x98\x80\xdc\xa5\x65\x58\x5d\xc1\xf2\x3e\xe6\x48\x21\x27\x2d\xb0\x72\x2c\xbb\x52\x13\x76\xbb\xf1\x44\xe8\x34\x92\xd5\x97\x4b\xa7\x0b\xdf\x9c\x91\x1c\x6e\x36\xc9\x36\x6d\x46\xfd\xa2\xe3\xac\xe9\x6c\x10\xe8\x4e\xbd\x5c\x39\x5b\xbc\x54\xc1\xfc\xa5\x0a\xa8\xff\xcb\xb4\xb4\x35\x0c\xe6\x78\xa9\xa0\x35\x5e\xae\xa9\x41\x0b\x40\xbb\x15\xd7\x01\xfc\x13\x31\x66\x16\x9c\x4b\xfc\xe7\xb9\x44\xc5\x77\x81\xa2\x2e\x5e\x32\x1d\x20\x64\xd8\xe5\xfb\x15\xa5\xd9\xf5\xa8\xc4\x81\xe6\xab\xc1\x8f\xec\xed\x04\xe8\xcd\xe0\xc6\x9f\x02\x23\x04\xb1\xa1\xbf\x3c\x14\x62\x3f\x0b\x86\x49\x12\x36\x0e\xaa\x16\x2e\xd3\xed\x2e\xee\x5b\xb0\x90\x35\xc7\x49\xd5\x73\xd0\xd1\xb8\x98\x30\xd3\x7b\xc3\xfc\xe5\xd3\x31\x6f\x5d\x8c\xaf\xac\x29\xfa\x1c\x94\x0e\x0c\x0a\x4a\x36\x84\x0a\xfe\x13\x69\x0e\xb5\x2e\xef\xde\xf0\x51\x63\xd4\x61\xd8\xad\x43\x33\xb8\xb7\x38\x75\x0b\x81\x30\x9d\xf3\x6d\x3e\x49\xdf\x83\x24\x73\x69\x1d\x41\xc8\x54\x5b\x31\x3c\xdf\x9d\x14\x97\x09\x80\x21\x46\x3d\x6a\x41\x9c\x30\xc6\xc2\x91\x0e\xe8\xab\x1f\x81\x01\xbd\xc3\xc4\x8b\xec\x1e\xda\x91\x8d\x8d\x2f\xa4\x3a\xe8\xc7\x75\xed\x43\x91\x7d\x28\xce\x6c\x10\x23\x66\xc8\x24\x34\xa0\x53\x32\x2a\x1c\x31\x08\x34\x5c\xd9\x77\xad\xfe\x3c\xac\x71\xc6\x51\xc6\x55\x03\xa3\x26\xff\x64\x1c\x76\xc6\x20\xeb\x88\xd3\x69\xdb\x83\x75\xf0\xf6\xc3\x00\x8a\x19\x78\xcb\x37\xa9\x7d\xa9\xe5\xde\xdf\x73\xa6\x96\x7f\xbf\xcf\x44\x2d\x73\xaf\xc9\x9d\x5c\x72\x23\xc3\x9b\x5e\x1e\x81\x43\x76\x6d\x77\x6a\xe1\x26\xee\x4d\x2a\x03\x6d\x72\x02\xb8\x51\x87\x3d\xe7\xb5\x0b\x4d\x04\xe6\xca\xba\x31\x02\xb5\xb1\xcc\x84\x69\x3f\xc4\x7e\xa9\xc1\xc2\xbb\x3e\xef\x7d\x09\x0c\x66\xd0\x09\xea\x43\x15\x06\xb5\x31\xf7\x2f\xf0\x51\x51\x76\x8c\xc4\x9e\xee\x05\xf4\x6a\xcb\x8f\x91\xfd\x0a\xd7\xfd\x75\x17\xdc\x9d\xf3\xf6\x4b\x1e\x9f\x00\x5c\x42\x15\x87\x3c\xcb\x5e\x38\xab\x4b\x32\x78\x79\x90\x2a\x75\xa0\x6b\x29\x66\x2f\xb7\x3c\xf0\x17\x42\xa3\xe1\xdd\xf0\x99\x8e\x3a\x3c\x5c\x2c\xbc\xdd\xa1\x6b\xc0\x94\x25\x34\x24\x19\x6d\xf2\x1d\xd2\x1b\x16\x13\x75\x78\xee\xe4\x89\x7f\x12\x6f\xe8\x84\x22\xd7\x14\x48\x9c\xc5\x40\xea\x99\x10\x4a\xca\x21\x45\x84\xff\x4b\x44\x85\x62\x00\xe9\xbb\x42\x3b\x74\x53\xfc\x9e\x5c\xbf\x21\xd2\x0a\x5d\xcc\x12\x0c\xf8\xbd\x9a\xbd\xf2\xf6\x8b\x2c\x59\x76\xb8\x8e\x7e\x9f\xb6\xff\x38\x3d\x44\xd2\x9d\x02\x51\x56\x49\x2d\x21\xc4\x58\xce\x67\xc4\x37\x40\x91\x5c\xfa\x53\xe9\x2b\x55\x79\x91\x80\x7a\x56\x1f\x8b\x8f\xd9\x09\x34\x71\x5b\x7c\xf7\x44\x9c\xef\xa2\x27\xd6\xd4\x58\x97\xea\xdd\x50\x0f\x66\xff\xbb\x16\xe7\xa6\x5d\x2f\xe0\x13\x00\x0a\x00\xf4\x9a\xb6\xe9\x55\x05\xd6\xab\x69\xc0\xd5\xa4\x65\x89\x6d\x93\xfd\x4b\x00\x3a\x90\x3d\x97\x14\xdc\xe1\xd5\x0e\x25\xde\xec\xc1\x91\x90\xec\xc1\x95\x0c\x36\xe5\xa8\x02\x2d\x65\xeb\x76\x24\x88\x82\xe4\x29\x33\xdf\xcc\x95\x19\xed\x84\x5b\x61\xbc\x13\x02\xdb\xa4\xe5\x1e\x2a\x11\x7a\xd6\x14\x45\xd6\xa4\x25\xa5\xd5\x44\xe8\xdd\x24\xea\x32\xcb\xe6\x61\x2d\xbc\x7b\xbe\x26\xaf\x50\x63\x43\xd2\x2a\x8a\x24\xf6\xb1\x8e\xfb\xbb\xdf\x5e\x5e\x5e\x38\x33\x1b\x72\xb9\x5d\xda\x46\xda\x96\xbb\x34\xf6\xf8\x2b\x7a\x93\x38\x0a\xf0\xf3\x89\x41\xf5\xfa\x1c\xc3\xc4\xc6\xd1\x74\x16\xad\x27\x53\x54\xb2\xe2\x4a\xe6\xb6\x7c\x23\x3d\xa7\xcb\x9a\xf4\x04\xc4\x17\xa4\x38\xdf\x1f\xed\x1a\xec\x2f\xa3\xff\x16\x75\x0c\xe8\x42\xce\xcc\xb7\xbd\x1e\x85\x00\x1c\x94\x1f\x0f\x5a\xe3\x71\xfa\xe5\x21\xfd\x69\xc2\x0c\xbc\x82\x3c\x91\xdd\x32\xb4\xc7\x51\x9f\x4f\x24\xfd\x78\xff\x8c\xca\x12\xb3\x27\x70\x15\x35\x25\x72\xdb\x2b\x72\x74\x24\xc3\xaa\x7f\xe1\xab\x1b\xb0\xa1\x14\x21\x96\xa1\xf5\xa2\xbb\x92\x40\xa5\xa5\x59\x50\x8f\x44\xf7\x92\xdc\xa5\x5c\x59\xc3\x8d\x34\xa2\x32\xd8\x8f\x41\x0d\x0c\x61\x1f\x3c\x8c\x08\x0d\x13\xc0\x6d\x87\x32\x49\xdf\x09\x56\x21\x58\xb9\xcf\x34\x86\x1f\x3e\x51\xa5\x08\xe7\x99\xd8\x3f\xa3\x8c\xe5\x3f\x7c\xe8\xbd\xf0\x82\x95\x1d\x25\x17\xa7\x1f\xd9\x8b\x84\x05\xa6\x57\x3a\xaa\xa2\x69\x35\x8e\xd5\x3a\x01\xaf\x93\x2f\xaa\x47\x6f\xe0\x33\x38\x2e\x39\xf5\x15\x26\x52\x5a\xe2\x81\x63\xe7\xb7\x08\x6b\x4a\xeb\xcb\xc5\x0e\xf0\x08\xd8\x9f\xe4\x0e\x7e\x90\x24\x53\xae\x04\xc6\x13\x18\x93\x74\x8a\x30\x8a\x80\x01\xfe\x9e\x93\x38\xf0\xf8\xdd\x49\x19\x4a\x8e\x5d\x73\x39\xbb\x16\xf2\x40\x06\xd5\x7d\x66\xdb\x9a\xed\x1e\xd7\x7f\xa5\xe3\x46\x8f\x64\x55\xa6\x96\x01\xea\xd1\x24\xfb\x16\xba\x7d\xd0\xe9\x7d\xbf\xee\x85\xf4\x87\x4d\x9f\x6f\x6d\xfe\xe0\xc2\x05\xdd\xda\x23\x4d\xe0\xe7\xd4\x27\x4e\x2d\x01\x55\x55\xb8\xf0\x5d\xc4\x80\x1f\x12\x60\x02\xf9\xd7\xb6\x32\xde\xe5\x37\xe0\x52\x2f\xe1\xa7\xed\xed\xa6\x49\xc6\x26\x12\x8d\x82\xc8\x16\xb2\x61\xd2\x71\xdd\x47\x51\xb7\x2e\xc1\xcb\xbb\xf4\x6b\x31\x76\x13\xb6\xcb\x2f\x19\x10\x5b\xd0\x52\xe4\x05\x9a\xc6\xa2\x58\xa9\x32\x2c\xb6\x28\xb8\x3c\x54\xf2\x69\xa5\x9e\xad\x74\x6b\xf8\x0a\x92\xec\x0c\xd8\xc4\x4d\x2d\xf5\x1f\x8a\xa9\x43\xa0\x5b\xb5\x2a\x3e\x02\x73\xfa\x10\x2e\x92\xa0\x02\xcd\xe1\x48\xbf\x11\xe1\x7a\x1d\x5e\x4e\xb7\x90\x71\x51\x1a\xee\xaf\x82\x6d\xc4\xbb\xdb\x82\x76\xcb\xbe\x5c\x21\xc7\xa3\xf3\xcc\xad\xf8\x0c\xef\x0a\x24\x28\x35\xac\x35\xf5\x67\x32\x8b\x95\xc5\x78\x8a\xf2\xca\x39\xab\xcf\x57\xe0\x64\x7c\xd5\x4c\xd0\x44\x7b\x1d\x27\x3e\x37\x85\xe4\x56\x1b\x8e\xfb\xd5\x12\xce\x5d\x8a\xd5\xf7\xc2\x3b\x4a\x70\x06\x4f\x5d\xf8\x99\x05\x78\x50\x4f\x9a\x2b\x3d\xc6\x94\xe3\x3b\x03\x71\x82\xe3\xfb\xe3\xb2\x84\x11\xf6\xf0\xe6\x0b\xd4\x23\xe0\x9d\xc8\xfe\x61\xea\x89\x78\xdd\x2f\xc0\x8f\xdd\xd2\x97\x16\xc9\x9d\x37\xfc\x2c\xe2\x93\x0a\x4a\x4b\xd2\x42\x4e\x12\x0e\x09\x46\x6f\x04\xa3\xbf\x9f\x66\xed\x8f\x30\x01\x19\x68\xc0\x74\x40\x2f\xf6\xe4\xf2\xbd\x2a\x10\x59\x72\xb5\x49\xbc\xbf\x89\x9f\x62\xea\x5e\xe3\x9c\xd2\x89\x52\x3a\x44\xd0\xbe\x0f\x87\x1b\xb4\xfb\xcf\x9e\x7c\x67\xf8\xc8\x76\x4c\xcb\x62\x54\xb5\x8c\xeb\xfa\xa3\xa8\x12\xdc\x13\x0b\x08\x14\xdc\x6e\x5f\xbf\x9d\x16\x36\xb5\xf5\x2c\x2e\xd2\xe4\x80\x9b\x26\xef\xa9\xe1\x97\xb1\x6a\xd0\x4c\xd8\x72\x1a\x8e\x7d\x13\x1f\x17\x7d\x9b\xe2\xae\x14\x55\xa3\xaf\x81\x42\xc2\x31\xae\x8f\xb4\x39\x86\xf4\x05\x63\x96\xdd\x31\xfa\x75\xa8\x40\xdc\x80\x29\x1e\x54\xf4\x29\xce\x0f\x20\x63\x3e\xd5\xe7\xe7\x53\xda\x4c\x69\xd9\x84\x5d\x79\x62\x3e\xa1\x5a\x4f\x53\x7c\xf5\x11\xbf\x30\x5a\xcb\x44\x1a\xb1\x03\x09\x4e\x93\x4f\x60\x32\x1b\xe9\x18\x53\x05\xf4\x50\x52\x9f\xfb\x11\x6b\xff\x99\xa1\x99\x67\x9d\x68\xd2\x39\x0b\xbe\x3e\x73\x35\xb9\xbb\x93\x34\xa6\xf4\xb1\x24\x71\xb9\x9e\x52\x4c\x25\x99\xf3\xc1\x71\x1e\x80\xd3\xb0\x35\x80\xcd\xf9\x40\xdf\x44\x61\x92\xa7\x81\x4b\x03\xaa\x3c\xce\xb0\x35\xd9\x35\xa9\x1a\xcc\x54\xa9\xce\x66\x62\x4e\x77\x42\xdd\x5d\xd7\x62\xc2\x37\xde\xe5\x75\xe4\xd7\x61\xf5\x19\x2c\xb2\x14\x0b\x2c\x9b\xab\xe4\x2d\xcd\xfb\x34\xaa\x1c\x4f\xa8\xf8\xea\xb0\xac\x8a\xcb\xa7\x5e\x48\xba\xab\xc1\xda\x6a\x4c\xb2\x6d\x76\x41\x25\x4f\x1c\x30\x6e\x86\x59\x86\x93\xe5\x3b\xad\xa3\x98\x21\x0e\x2b\xa9\x3d\x04\x9a\x99\x36\xf5\x4d\xc2\xaa\x05\x46\xef\xe6\xc7\x3f\x2b\x90\x7d\xfb\x71\x04\x59\xf9\x64\x00\xc0\xb6\xfd\x84\xb9\xb1\xd0\xca\x8f\x64\x59\xc6\x04\x58\x3d\x76\x28\xd3\x77\x7a\x57\x0c\xb7\x46\x23\xc4\x88\xb4\xe7\x38\xcf\x41\xf5\x14\xe4\xf1\x3b\x9b\xf5\x33\x98\xa5\xad\xb2\x74\x88\x33\x24\x8c\x36\xd5\xcb\x2a\x3d\xc5\x15\xca\xbe\x22\xf7\x78\xc4\x87\xac\x9e\xc1\x43\xee\xdd\x53\x00\x57\xd2\x7e\x42\x4a\x17\x62\xa1\x88\x95\x05\x61\x31\xa6\x3e\x4b\x06\x07\xb5\xa8\x18\x03\xb8\x86\x97\x45\x96\x1e\x3e\xc3\xbc\x48\x40\x98\x26\xed\x14\x6d\x3e\x99\x12\x9c\xd9\xb8\x2b\x34\xac\xa2\x38\x1d\xd0\xa8\xeb\xa8\x76\x4d\xf2\x59\xbc\x5c\xa6\xad\x65\x7d\x3c\x4c\x96\xb5\xe1\xd8\x19\xeb\xea\xf8\xa1\x05\xa4\xb4\xdb\xef\xc6\xca\x0e\x53\xb4\xfd\x4a\xcf\x2c\x70\x92\x0a\x31\xfb\xb9\xe7\x0c\x2f\xbc\xe4\x13\x47\xae\x4e\x68\xaf\x42\x5a\x65\x6d\xce\xb8\x7d\x96\xee\x67\xe4\x65\x13\xe5\x1d\x71\x58\x0f\x45\x7f\x50\xad\x4d\x04\x48\x45\x7e\x6e\xba\x0d\x98\xd4\xbf\xd5\xfa\x01\xf5\xda\xb9\x1a\xb5\xe6\x92\xeb\x6a\x6d\x8c\x30\x3e\x81\x24\x3d\x9f\x26\xb6\x1c\x08\x20\x1d\x88\xcf\x13\x7f\x76\xc8\xd1\x18\x79\xc3\x81\x39\x32\x8a\x81\xa6\xb8\x96\xe6\x47\x50\xa5\xec\x85\x65\xfc\x8d\x5f\x82\x34\xbc\x6e\x8f\xba\x92\x3c\x40\xab\x45\x54\x5e\x26\x41\x9c\x27\xc1\x1f\xe1\x07\x78\x7e\x4b\x9b\xf0\x94\xe6\x61\x02\xe0\x8a\x58\xa6\x17\x90\x85\xf0\x45\xc2\x5d\x34\xb9\xa6\x79\x79\xa6\xdf\x9b\x98\xdf\x33\xb1\xd6\x5f\xbf\x61\x63\xe0\x95\x72\xd5\x61\xc3\x4f\xf8\x5c\x5c\xba\xf2\xfd\x4b\x51\x34\xe8\x61\x31\x7a\xde\xee\xbf\xc1\x89\x01\xdf\x8e\x97\xb8\xfa\xbe\xb8\xed\xe7\x6f\x3f\xd0\x71\x03\xed\x3a\xfc\xe6\xf4\xb7\x1f\x20\x49\x1b\x54\x46\x65\x16\x9a\x2f\x60\x36\x25\x92\xc3\x82\x7d\xd1\x46\x97\x07\x97\xcb\xee\x50\x15\x1f\x5f\xb3\xe2\xdc\x64\xa0\x41\x8d\x42\x5d\xea\x47\x56\xc4\x49\x9a\xbf\x3e\x41\x6a\x70\x22\x0b\xfc\x2d\x98\xb5\x03\x85\x8d\x15\xb0\x1c\x6d\x0f\xc7\xb8\xc6\xb7\xb6\xeb\x49\xf0\xf3\x90\xc5\x75\xfd\xed\x07\xbe\xc6\xfd\xc4\xd5\xeb\xc2\x4c\xa8\xaa\xdd\x37\x5c\x9b\x26\x27\x4d\x32\xf0\xc4\x34\xcc\xba\xf6\xe9\xde\x77\x79\x3d\xa8\xd4\xb2\xd2\x72\x5a\x84\xbb\x34\x97\x4c\x30\x12\xcc\x8f\x4f\x7b\x5f\x04\x07\x0d\xfc\xaa\x36\xc9\x68\xda\x65\xb3\x6b\xb2\x8f\x7c\xa3\x64\x60\x64\x4e\xd0\x21\xc6\x6b\x6d\x1a\xac\x9e\xc9\xf0\x98\xfb\x5c\x81\x38\x39\x54\xe7\xd3\x73\x3d\x09\xa4\xe8\x60\x46\x18\x28\x8f\xc1\x73\x91\x7c\xee\x67\xe8\xa5\x63\xcc\x62\xfd\x0b\xee\xf8\x19\x36\x69\xd0\x4b\x34\x8d\x26\xdd\x5b\x74\xf3\x2f\x6e\x38\xf1\x39\x97\x91\xaa\x89\x8c\x00\x82\x21\xea\xbb\xdc\x65\x5d\xde\x46\x11\xe9\x32\x8d\x5a\xd9\x0f\xf5\x1b\xf6\x87\x63\x55\x9c\x70\x10\xc1\xe4\xef\xc1\x62\x32\x8d\x26\x5f\xea\x49\xda\xab\x47\x68\xbd\xfb\x9e\xa4\xef\x7b\x26\x30\x4b\x31\x83\x8d\x80\xcc\xc8\xcc\x36\xe0\xc4\x59\xc2\x66\xfd\xad\x67\xae\xa0\x89\x9f\x43\x72\xc8\x56\x1e\x49\x35\x40\x7b\x4a\x95\xff\x5e\xea\x2a\xd2\xf4\x0a\x6a\x21\xfc\x00\xd5\x81\x09\xdb\x97\x05\xfd\x66\x82\x7c\xff\x31\x86\x21\xe1\x8d\xaf\xbe\x7b\x0a\x94\x1b\xe2\x55\xf5\xba\xa0\x3a\x05\x4c\xb7\x2d\x42\xbd\x5a\xf8\x48\xa5\xa1\xa0\x3e\x63\x85\x9b\xff\x0c\x13\x47\xf0\x1f\x3b\xad\x9c\xd9\x6d\xa9\x0a\x4d\xf1\x06\xba\xfd\x9c\x67\x03\xe4\x02\x46\xd1\x1f\x4f\x78\xdc\x0a\x60\x2f\x1e\x06\x4c\xfe\x5e\x12\x5b\x43\x33\x13\x99\x47\xbf\x4b\xe9\x17\x41\xe7\xec\x3d\x26\xb2\xb5\xb2\x0b\xed\xba\x77\x66\x92\x35\x70\x4d\x45\xe4\xa1\x8b\x48\x8c\xf7\xec\xfd\x28\x7f\x8f\xed\x0b\x6e\x94\x28\x5f\xfc\x57\xb7\x20\x32\xd3\x11\x72\xf1\x69\x22\x2b\x40\x43\x54\x3f\x4d\xc8\x7e\xcb\x27\x8c\x50\xa7\x20\x64\xed\x7a\x9d\x15\xef\xca\xbc\x27\x74\x4f\x3b\x6d\xbf\xbe\xf4\xea\x7e\x29\x06\x4b\x43\x85\x5b\xfc\xce\x11\x3a\x6f\x67\x9b\xf1\xd8\xf1\x1d\x45\xf3\xf3\x06\x51\x8b\x03\x8b\x30\xf1\xfb\xc3\x81\x0a\x69\x57\x41\x80\xb5\x62\x32\xd2\xef\xae\xfd\x19\x84\x36\xb7\xca\x5e\x6e\xc3\xb1\xb9\xb4\x56\x27\x9d\x1c\xdd\xd4\x6a\xe7\xc7\x1d\xb5\x48\xf7\x86\xda\x59\x67\xf4\x4b\xe2\xfa\xf8\x5c\x30\x8f\x67\xf5\xb1\x9f\x78\x77\x7e\x24\x61\xcb\xfa\xe6\x88\xa8\xdd\x89\xfb\x42\x90\x90\xb7\xe8\xda\xb9\xc1\xe4\x30\xa1\x5e\x76\x23\xec\x5a\xf2\xae\x53\xa8\x22\x0c\x68\xbc\xb1\x32\xbe\xda\x37\xd0\xee\x1e\x79\xfc\x4e\x07\x3c\xd1\x97\x4d\xf1\x67\xf8\x1a\x8c\x1b\x52\xb2\xe1\xe1\xff\x8b\x93\x82\x0d\x4d\x53\x34\xca\x7b\x51\xe1\x53\x1b\xce\xbd\x93\xaf\xbc\x83\x49\x37\xdd\xb2\xb5\x6b\x95\x8e\xe0\x95\x35\x1f\x1c\x17\x5d\x4c\xd0\x0a\xc6\x17\x40\x67\xac\x14\xf9\xdb\xfb\x5d\x67\x19\x81\x96\x05\xd9\xe4\x93\x5c\x9f\x55\x20\x9b\xb5\xaa\xd1\xdd\x13\x95\x57\x51\x3d\x5a\x8b\xfe\x3e\xb2\xf1\x99\x1b\x6e\x50\x65\x79\x16\x5b\x95\xc4\xd5\x10\xc8\xfa\xd0\x97\x52\x5d\x1c\x2f\x55\x6a\xd4\x48\x91\x24\xb8\x39\xb7\x90\xc6\x36\x89\x59\x25\x83\xba\xf6\x8f\x7d\x3a\x3c\x8b\xfb\x28\xee\x1a\x9e\x54\xe3\x15\xff\x05\x80\xe4\x39\x3e\xbc\xf9\x75\x82\x43\xa2\x7c\x5d\x42\xb1\xb4\x5a\x53\xc9\xec\x4b\x43\x28\x65\xf2\x14\xd3\x9a\xa7\x62\xaf\xe9\x0c\x9d\x1d\x72\xc1\x65\x2f\xdb\xc8\x3d\x5c\x4c\xb3\xf7\xf8\x9c\xe9\xb2\xb4\xb2\x0e\x27\x63\x75\xb9\xc7\xc8\x08\xa6\xf4\x1f\xf1\x90\xb6\x0e\x1f\x1e\x8e\xf3\xfb\xa2\xe2\x80\x8d\x3a\x97\xbb\x29\x30\x26\xde\x59\xd1\x03\xc1\x72\x95\x3f\x50\x51\x8d\xf3\x0e\x2a\x6a\xbd\xa5\x79\xa2\x28\xd2\xc2\x09\xfe\x34\xbe\x5e\xc6\x5c\x7e\x20\x5f\x75\xde\x97\xae\xae\x9b\xc7\x85\x1b\x06\x57\xff\x0b\x07\xee\xba\x08\x73\xe0\x3d\x46\xa9\x87\x44\x53\x8f\xf7\x97\xe8\xef\x29\x40\x50\x6c\xd7\xd9\x55\x45\x81\x85\xa7\xac\xc0\x0b\xa8\x6a\x9c\x9b\xaa\x3e\x1c\xc1\x09\x84\x49\x5c\xbd\x4d\xae\xdc\xb5\x1e\x92\x8b\xfe\x98\x36\x60\xf2\xc8\xe5\x8a\xc4\x85\x5d\xea\xc8\x47\x2e\x77\x16\x5d\x0e\xd5\x16\xa6\x9c\x85\x9f\xf3\xf0\x0b\x16\x7e\xc1\xc3\x2f\xd9\xf2\x25\x5f\xbe\x62\xcb\x57\x7c\xf9\x9a\x2d\x5f\xf3\xe5\xf7\x6c\xf9\x3d\x5f\xfe\xc0\x96\x3f\xf0\xe5\x1b\xb6\x7c\x23\x94\xb3\xfd\xdf\xf0\xfd\xdf\xb2\xf0\x5b\x1e\x7e\xcb\xc2\x6f\x05\xf8\xed\x16\x97\x3f\x67\xf1\xe1\x8d\x2a\x04\x20\xd7\x0c\x2d\x2c\xa5\x70\xe3\xdf\x5c\x0d\x7a\x74\xc9\x5b\x15\x5c\x0d\x0e\xc7\x5c\xc0\xb1\xe0\x70\x2c\x04\x1c\x4b\xae\xc6\x52\xa8\xb1\xe2\x6a\xac\x84\x1a\x6b\xae\xc6\x5a\xa8\x71\xcf\xd5\xb8\x17\x6a\x3c\x70\x35\x1e\x84\x1a\x1b\xae\xc6\x46\xac\xc1\xf1\x63\x23\xf0\x63\xcb\xe1\xd8\x0a\x38\xb6\x1c\x8e\xad\x88\x43\x31\xea\x30\x9e\x5c\x35\xe8\xa8\xb0\xc3\x4d\x7e\xb2\xe5\xfd\x88\x93\x9f\x5c\x39\x0b\x3f\xe7\xe1\x17\x2c\xfc\x82\x87\x5f\xb2\xe5\x4b\xbe\x7c\xc5\x96\xaf\xf8\xf2\x35\x5b\xbe\xe6\xcb\xef\xd9\xf2\x7b\xbe\xfc\x81\x2d\x7f\xe0\xcb\x37\x6c\xf9\x46\x28\x67\xfb\xbf\xe1\xfb\xbf\x65\xe1\xb7\x3c\xfc\x96\x85\xdf\x0a\xf0\x8a\x91\xad\x40\xa2\x1c\x58\x58\xd6\xe1\xc5\xbf\x98\xd2\x7e\x54\xc9\xf3\x2c\x4c\x29\x03\x3b\xe7\x60\x17\x0c\xec\x82\x83\x5d\x32\xa5\x4b\xae\x74\xc5\x94\xae\xb8\xd2\x35\x53\xba\xe6\x4a\xef\x99\xd2\x7b\xae\xf4\x81\x29\x7d\xe0\x4a\x37\x4c\xe9\x86\x2f\x65\xfa\xbb\xe1\xfa\xbb\x65\x60\xb7\x1c\xec\x96\x81\xdd\xf2\xb0\x8a\xd1\xc3\x79\x26\x54\x03\x48\x8a\x3b\xdc\xfd\x07\xbe\x4e\x3f\x92\xfd\x07\xa1\x0e\x8f\x67\x2e\xe2\x59\xf0\x78\x16\x22\x9e\x25\x5f\x67\x29\xd6\x59\xf1\x75\x56\x62\x9d\x35\x5f\x67\x2d\xd6\xb9\xe7\xeb\xdc\x8b\x75\x1e\xf8\x3a\x0f\x62\x9d\x0d\x5f\x67\x23\xa9\xc3\xf3\x67\x23\xf2\x67\xcb\xe3\xd9\x8a\x78\xb6\x3c\x9e\xad\x04\x8f\x42\x22\xf0\xd5\x52\x95\x44\x90\xe2\xae\x85\xfe\x03\x5f\xa7\x97\x88\xfe\x83\x50\x87\xc7\x33\x17\xf1\x2c\x78\x3c\x0b\x11\xcf\x92\xaf\xb3\x14\xeb\xac\xf8\x3a\x2b\xb1\xce\x9a\xaf\xb3\x16\xeb\xdc\xf3\x75\xee\xc5\x3a\x0f\x7c\x9d\x07\xb1\xce\x86\xaf\xb3\x91\xd4\xe1\xf9\xb3\x11\xf9\xb3\xe5\xf1\x6c\x45\x3c\x5b\x1e\xcf\x56\x82\x47\x21\x11\xd4\x19\x4a\x92\x05\xf6\x91\x57\xf5\x19\x1c\x48\xeb\x57\x2b\xfc\xec\x39\xc8\x74\x2a\x92\x94\x33\xcf\x99\xca\x0f\x0f\xbc\xfe\x29\x1e\x1e\x04\xe5\x75\x6e\x50\x7e\xe7\x06\xe5\x79\x61\x50\xbe\x97\x06\xe5\x7d\x65\x50\xfe\x1d\x0f\x0f\xc2\xe1\xe3\xc1\x70\x78\xd9\x18\x0e\x3f\xdc\xe1\x61\x61\x38\x3c\x08\x87\xaf\xad\xe1\xf0\xd6\x8b\xa2\xf4\x78\xf0\xd7\xe1\xe1\xaf\xc3\xc3\x5f\x87\x87\xbf\x0e\x0f\x7f\x1d\x1e\xfe\x3a\x3c\xfc\x75\x78\xf8\x33\x1f\x1e\xe4\xc5\xea\xd5\x42\x75\x74\x90\xa8\xb4\xc2\xd1\x41\xa2\x1a\x0b\x47\x07\x89\x8a\x2d\x1c\x1d\x24\xaa\xba\x70\x74\x90\xa8\xfc\x5e\x47\x07\xc9\x11\x44\x38\x3a\x48\x8e\x32\xc2\xd1\x41\x72\x24\x12\x8e\x0e\x0b\x8b\xa3\x83\xe4\x88\x26\x1c\x1d\x24\x47\x3d\x95\xbe\xe6\x77\x74\xc8\xc0\xa9\x40\xba\xce\xd7\x37\xe2\xe2\x26\xe9\x8a\x66\x71\x9e\x9e\x62\xe8\xf7\x23\x71\x04\xc1\x39\xeb\x32\x2c\x8d\x71\x0b\xd6\x04\xd2\x67\x01\xf3\x80\x85\xc9\xba\x7c\x00\xe1\x2d\xfe\x2e\x27\x98\x2f\x3c\x0c\x9a\x20\xf4\xa3\x68\x2e\x8c\x73\xe2\x7f\x91\xcf\xf5\x8e\xaf\x33\x10\xc5\x71\x1f\x68\xcc\x73\x1f\x50\x96\xeb\xfe\x18\x6c\xf8\xee\xf1\xfe\x3b\xff\x2c\xa1\xe4\xa6\xad\x0f\x90\x8e\xdf\x16\xd0\x90\xdf\x5c\x97\xfd\x30\xc9\x98\xe7\xf1\x98\xfc\x78\x37\x2e\x35\x57\x29\xe9\xbb\xe9\xf2\xef\x14\x5b\x15\x15\xb0\xa4\x2a\x4a\x59\x61\xd4\x56\xd2\xca\x1b\x97\x00\x70\x7f\xce\xf6\xbd\xc0\xee\xbf\x99\x2a\x10\x2a\x0d\xb5\x20\x21\xd4\x5d\xd2\xee\xad\x6a\x74\x19\x46\x40\x08\x89\x4c\xd2\xf7\x89\xbe\x6e\xdf\x3f\x73\x5d\xaa\x96\x65\xb2\x00\xc5\x3a\xaf\xae\x83\x79\xa1\xae\xc0\x0e\x9a\xa9\x9e\x76\xdc\x74\x31\xa6\xf8\x5a\x8d\xa1\xd2\xb1\xbb\xd8\x5b\x01\x92\x7c\x30\x6c\x39\xb8\x47\x1b\x07\x79\xd5\xf4\xe9\x3b\xbc\x11\x07\xa3\xed\xcd\xa3\x35\x04\x99\x30\x9c\x43\x90\xf5\x68\x24\x69\x13\x08\x57\xd5\xf9\x13\xe8\x49\x68\xac\x45\x8f\xab\x65\x65\xcd\xe0\x1a\x31\x30\xe5\x63\x8d\xdc\x58\x83\x36\x7c\xbc\x88\x2a\x37\x43\xbd\x06\x09\xcc\x44\xa1\xbd\x03\x6d\xc8\x4a\x61\x28\xa7\x26\xb7\xa1\x22\x9e\xe1\x86\x5a\xec\x34\xb7\xaa\xac\x9b\xeb\x6c\x4e\x0d\xe6\x57\x4f\x39\xfb\x19\xd1\xc9\x7e\x63\xa8\x92\x15\xe9\x68\x30\x64\xf2\x40\x9f\x08\x72\x49\x09\x22\x48\x52\xe0\xd6\x34\x93\x31\x44\xae\xa5\xa8\x74\x10\x59\x01\xc3\x12\x4b\x95\x43\x46\x9c\x32\x77\x09\xfa\xc4\xb6\xc0\x94\xd0\xa4\x31\x05\x6e\x4d\x93\x1c\x29\x92\x6f\x3c\x67\xd8\x42\xb1\x7d\x52\x22\xe1\x8d\xac\x82\x8e\x42\x9b\x8c\x2d\xf4\xa2\xd9\x27\x6e\xb1\x81\xa4\x96\x66\x37\x40\xcb\x05\xd8\x0d\x29\x0f\xe2\x9a\x21\xc1\x2f\x43\xc1\x14\x1d\x7e\x8f\x71\x1d\x12\xe2\x9a\x6a\x4f\x08\x1d\xb0\x1d\x8c\x86\x97\xdb\x1e\x46\xc3\xcb\x61\x84\x8b\x2c\x49\x73\x3e\x26\x0b\xc6\x40\x2c\xe5\xc1\x18\x88\x09\x4a\x62\x18\x41\xc9\x02\xe0\x05\xdb\xaf\x5b\x2c\xc2\x63\x2d\x5d\x7f\xaa\xe9\xed\xf2\xf4\xab\xf1\xf6\x04\x7a\x55\x4e\x5d\xbe\x81\xe1\xaf\xca\xdd\x94\xd9\x48\xdc\x97\x1d\x97\x97\xd5\x8d\x5d\x59\x5a\x75\xc5\xdb\x50\xe4\x78\x0e\x27\x47\x47\xad\x1e\xe8\x99\xe6\xc5\xe1\xfd\x5d\x23\xd7\xd6\x06\xae\xad\x15\x02\xa0\xd1\x11\x70\x89\xf7\x6e\x6a\xd7\xbf\xc5\x98\x02\x3e\xda\xf1\xf4\x97\x4a\xf4\x96\x91\x68\x0f\x13\x9c\xd2\xf6\x64\x6d\x45\x72\xbe\x50\x35\xa6\xec\xfa\xf2\xc7\xc1\x88\x38\xd6\x62\xdb\xb9\xd6\x15\xf4\xf6\xe5\x26\x2f\x81\x97\x1d\x55\x72\x44\x1d\xb5\x67\x9a\x55\x84\xca\xc6\xfd\x27\x34\xc8\x1a\xb9\xd0\xc5\x64\x8c\xc0\x05\xbc\xd6\x18\x0d\xac\xb6\x06\x20\xc5\xd1\xda\x7c\xda\x94\x1f\xb8\xec\x78\x61\xb9\xee\xae\x0c\xbc\x80\x2c\x55\xf2\xc2\xc6\x96\xac\x35\x37\x0e\x34\x8d\xd9\x5a\xbb\x6c\xad\x18\x6e\xf6\x02\x93\x01\xc0\xf1\x94\x6d\x3c\x34\x6b\xf0\xd9\xc9\xc4\xca\x6e\x95\xd8\x18\xd6\xeb\x48\x37\x3f\x8c\x96\x45\x75\x2a\x57\x49\xde\x56\xcc\x00\xbb\xee\xad\x7f\x41\xf7\x38\x23\x9c\x8b\xd1\x56\x63\x36\xb3\xb3\x21\xa9\x0d\x29\x76\xfc\x79\x18\x95\x3f\x1e\x6e\x70\x2f\x5f\xae\xd1\x93\x34\x82\x77\x66\x14\x7f\xc0\x70\x0c\x06\x73\xf3\x9f\xd9\xc8\xd1\x9b\x0c\x78\x49\x94\xc4\x64\xe8\x44\xb0\x7b\x8c\x4b\x2e\x81\xd4\x5b\x5d\x43\x82\x2a\x86\x05\x08\xd8\xb8\xf3\x2c\x5d\x03\x56\x8f\x93\x0d\xdf\xcb\x07\x4d\xdc\xa1\x01\x25\x6e\x81\x09\xbf\x22\xd8\x62\x80\xeb\xda\xcd\x33\x7d\x33\x8f\xf4\x50\x67\xb1\xc1\x09\xfc\x67\x75\xdd\xfe\xd9\xbc\x92\x23\xfa\xf5\x74\x23\xf2\xaf\x69\x8e\xff\x17\x32\x9e\xdb\xbf\x11\x69\xdc\xbc\x6e\xa5\x3e\x8d\x16\x27\x66\x1b\x27\xe2\xe4\x68\xb6\xd4\x43\x49\xc8\xf9\x58\x6c\x34\x5d\xfd\xb2\x4a\x08\x71\x93\x0b\x62\xa7\xf8\x15\xe4\x4d\xac\x8c\x5c\xef\xca\xbb\xd0\x57\xea\x8b\x50\xab\x0f\x56\xa6\xbe\x88\xb5\x04\x5c\x73\x09\xae\x85\x80\x6b\x21\xc1\xb5\x14\x6a\x2d\x25\xb5\x56\x42\xad\x95\xa4\xd6\x5a\xa8\xb5\x96\xd4\xba\x17\x6a\xdd\x4b\x6a\x3d\x08\xb5\x1e\x24\xb5\x36\x42\xad\x8d\xac\x96\xc0\xaf\x8d\x84\x5f\x5b\x01\xd7\x56\x82\x6b\x2b\xe0\xda\xca\x70\x29\x82\xda\xeb\xa6\x8a\x3f\x9e\x41\x55\xa9\x33\x92\xd0\x55\xba\xb6\xd8\x8f\xb2\xba\xbd\xe4\xb0\x1f\xa5\x75\x65\x78\xe7\x72\xbc\x0b\x19\xde\x85\x1c\xef\x52\x56\x77\x29\xaf\xbb\x92\xd5\x5d\xc9\xeb\xae\x65\x75\xd7\xf2\xba\xf7\xb2\xba\xf7\xf2\xba\x0f\xb2\xba\x0f\xf2\xba\x1b\x59\xdd\x8d\xa2\xae\x8c\xbf\x1b\x39\x7f\xb7\x32\xbc\x5b\x39\xde\xad\x0c\xef\x56\x81\x57\x21\x81\x28\x20\x5e\x25\x7c\xb8\x74\xcd\x86\xcf\xd3\x22\x87\xbe\xcc\xb9\x00\x7b\x5a\xd0\xf0\x17\x0e\xc7\x5c\xc0\xb1\xe0\x70\x2c\x04\x1c\x4b\xae\xc6\x52\xa8\xb1\xe2\x6a\xac\x84\x1a\xb2\xab\x00\x6c\x8d\x7b\xae\xc6\xbd\x50\xe3\x81\xab\xf1\x20\xd4\xd8\x70\x35\x36\x62\x0d\x8e\x1f\x1b\x81\x1f\x5b\x0e\xc7\x56\xc0\xb1\xe5\x70\x6c\x45\x1c\xdc\xa8\x7f\xe9\x37\xb1\xa0\x57\x1a\x18\xb3\xac\x61\xef\x93\x80\xc9\xdf\xff\x44\xc2\x45\x3f\x49\x67\xcc\x55\xd5\x9f\x8e\x82\x58\x49\x8c\x0e\x06\x51\x62\x6f\x48\xfc\xfa\xbf\x01\x00\x00\xff\xff\x36\x7d\xa1\x85\xcc\x8b\x05\x00") + +func web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCssBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCss, + "web_ui/assets/consul-ui-0211f3a94fa457c0e5017b752330823c.css", + ) +} + +func web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCss() (*asset, error) { + bytes, err := web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCssBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-ui-0211f3a94fa457c0e5017b752330823c.css", size: 363468, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x7b\xdb\x46\x92\x28\x8c\xff\xef\x4f\x41\xe3\xe4\x78\xc9\x33\x50\xbb\xef\x17\xed\x8f\x93\x38\xb2\x67\xd6\xbf\x75\x2e\xc7\x76\x76\xde\x1d\x1d\xbd\x59\x88\x84\x24\xac\x21\x80\x03\x80\x76\x34\x32\xbf\xfb\xfb\x54\x77\x03\x04\x40\x90\x22\x65\x27\xb1\x73\x3c\xcf\x33\xb1\x58\xe8\x4b\x75\x75\x75\xdd\xba\xba\x3b\x58\x96\xf1\xa8\xac\x8a\x64\x56\x05\x0f\xe6\xf1\x45\x92\xc5\xe3\x60\x96\x67\xe5\x32\x3d\x5a\x26\x8f\xa3\xf3\x24\x4d\xaa\x24\x2e\x1f\x47\xb3\x34\x08\x4f\x83\xf8\x97\x45\x5e\x54\x65\x10\x0e\x16\x3a\x8f\xca\x38\x38\x0b\xc7\x17\xcb\x6c\x56\x25\x79\x36\x8e\xc3\x6a\x72\xfb\x36\x2a\x46\x59\x58\x84\xd1\x83\x1a\x3e\x4a\xe1\x4b\x98\x4d\x6e\x8b\xb8\x5a\x16\xd9\xa8\x1a\x25\xd9\x28\xfe\xfa\x87\xf3\xff\x8e\x67\x15\x72\x78\xfc\x58\xe4\x8b\xb8\xa8\x6e\x6c\xd1\xdb\xb7\x51\xba\x8c\x8f\xb3\x30\xce\x96\xd7\x71\x11\x9d\xa7\xf1\xf1\x43\x1c\xce\xf2\xec\x22\xb9\x5c\x36\xbf\xdf\x15\x49\xe5\xff\x5e\x4d\x8e\xe3\xd3\xea\x6c\x9a\x85\xf1\x6a\x5b\xbb\xc1\xcf\x3f\xc7\xe5\x77\xf9\x7c\x99\xc6\x41\xdd\x05\xd4\x0c\x63\x28\x1b\x2d\xd3\x6a\xfa\x36\x4f\xe6\x23\xfc\x20\x8d\xab\x51\x39\x1d\x67\xd3\x67\xd7\xe7\x71\x81\x92\xcc\x36\x58\xc6\xc5\xdb\x64\x16\x8f\x83\x38\x7b\x1b\x4c\xc2\x62\x3a\x4b\xa3\xb2\x1c\xc5\xbf\x54\x71\x36\x2f\x47\x55\xdd\xca\x2d\x10\xab\x2a\x96\xb3\x2a\x2f\xc6\x08\xa1\xd8\x11\xa5\x0a\x81\x2c\xe5\x83\x72\xb9\x88\x3d\x3c\xac\xa6\xd5\x55\x52\x86\xd9\xd4\xb6\x19\x96\xee\xe7\xb8\x98\x46\x93\x47\x8f\x86\xc7\x01\xcd\xdc\xb6\xe8\x52\xa0\xf5\x8f\x2e\x85\x0a\xd4\xfe\xb9\xa6\x56\x81\xea\x3f\x43\x47\x04\x18\x61\x52\x25\x51\x9a\xfc\x33\x2e\xbe\xee\xfc\x42\xb3\x28\x4d\xc7\xe5\xe4\xd8\x51\x66\x35\x09\xd3\xb1\xc5\x31\x28\xe2\x32\x5f\x16\xb3\x38\x08\x03\xe0\x96\xf5\x87\x32\xbe\xbc\x8e\xb3\x2a\x9e\x07\xe1\x43\x32\x59\x5d\xc6\xd5\x68\x16\x65\x4f\x66\xb3\xb8\x2c\xc7\x35\x0f\x3c\x84\xb2\x28\xce\xde\xa2\xb7\x51\x31\x0e\x4e\x7e\xf8\xfe\xd5\x4f\x2f\x7e\x7e\x72\xf2\xe2\xd5\xcf\xcf\xbe\x7f\xf2\xed\x8b\x67\x4f\x83\xc9\xfb\xf7\xb6\xd0\x2c\xca\x5e\xc6\xd1\xbc\x6e\x08\xfe\x1e\xaf\x59\xe9\xee\x66\x1e\x3d\xb2\x14\xef\xb7\xf3\x74\xb9\x48\x93\x59\x54\xc5\xf7\x6d\xec\x6f\x45\x52\xc5\x4d\x6b\x71\x1a\x1f\xdc\x54\x10\x65\x79\x76\x73\x9d\x2f\xcb\xe0\xe1\xd4\x4e\x3d\x4a\xaa\xf8\x1a\x3d\x7f\xba\xad\x9b\x9f\xca\xc3\xfa\x58\xad\xc2\x64\x5a\xa0\x45\x91\x57\x79\x75\xb3\x88\xc3\xdc\x73\xda\x72\x7a\x9a\x9d\x85\xb3\xe9\x6d\x7f\x4d\x75\x57\x5c\x6b\x85\x85\x2d\xae\x38\xce\x96\x69\xba\x0a\xaf\xa7\xb7\xab\xd0\x73\xe9\x9b\xf8\xa6\x1c\xcf\x26\xe8\x22\x2f\x9e\x45\xb3\xab\x71\x4b\x2a\x4c\x6e\xaf\x4f\xe3\xb3\xe9\xec\x34\x3e\x5b\x4d\x26\xe1\x75\x8b\x61\xa7\x0f\x1f\xb6\x7f\x86\xd7\x1d\x96\xb5\x5f\x3b\x3c\x3c\x0e\x2c\xc7\x06\x49\x36\xba\x7e\xff\xfe\xba\xcd\xa9\x93\x47\x8f\xc6\xd7\x0d\x67\x4f\x1f\xe2\x49\x78\x3d\x5d\xa2\x32\x85\x25\x3b\x41\x45\xfc\x36\x2e\x4a\xf7\xd7\x7c\x39\x8b\xc7\x3d\xb1\x55\xd3\x74\x9c\x84\x79\x18\x4f\xde\xbf\x8f\x57\x93\xf0\x7a\x12\xce\x1f\x3d\x72\xac\xff\x70\x3a\xed\xf4\x67\xbb\xb3\xd8\x74\xe1\x5f\x5f\x6f\xae\x9f\x79\xbd\x7e\xc2\xce\x47\x2f\x6e\x26\xa1\xfb\x77\xba\xd9\xc3\xb0\x08\x00\x14\xaf\x61\x78\x30\x0d\x93\x30\x9a\x5e\x87\xc5\xe4\x01\xc8\x18\xf8\xb2\x0c\x67\xe1\x3c\xbc\x7e\xb0\x96\x6a\x25\x90\x7d\xa7\xb8\x5f\x56\x57\x47\xd7\x71\x75\x95\xcf\xbf\x88\xfd\x2f\x62\xff\x23\x8a\xfd\x8f\x25\xad\x4f\x8a\xf8\x03\x44\xb5\xab\xfd\x41\xb2\xba\x69\xcb\xd5\xde\x5f\x20\xbf\x7a\xf5\xc3\x17\x79\xfc\x45\x1e\x1f\x24\x8f\xad\x88\xed\x08\xe2\x18\x24\xd2\xd1\x2c\xca\xfe\x60\x92\x37\x46\x4f\x4e\x4e\x9e\xbd\x7a\xf5\xf3\x8b\xe7\xaf\x5e\xaf\x7f\xfd\xed\xe5\xf3\xd7\xcf\xd6\x3f\x5f\x3e\x7b\xf2\xb4\x16\xd2\x5d\x60\x50\xc4\xd1\x3c\x78\xd0\xab\x18\x00\xa2\x71\x0b\x6c\x5b\x0f\xd2\xa4\xac\x82\xbb\xa4\x7c\x11\x2f\xf2\x32\xa9\xf2\xe2\xe6\xf1\x22\x2e\xae\x93\xb2\x4c\xf2\x6c\x50\xee\x3f\xb1\xf3\x75\x73\x2f\xb9\xbf\x6e\xba\xfc\x6c\xe5\xff\x16\xe1\x8f\x41\xf8\x67\x71\x01\xf2\x3a\xee\xca\xc6\xd6\xa8\x51\x53\xc6\x7e\xa9\x9b\x0d\xe3\x75\xed\xbf\xe4\xc5\x2b\xd7\x6e\xbf\x9d\xa6\xbb\xaf\x4f\xf7\x6d\xd7\x31\x4a\x08\x93\xb0\x6f\x0d\xc7\x44\x61\x3c\x39\x3b\x3e\x3d\xb3\x02\x3f\x29\x5f\x24\xd9\x1b\x20\xe1\xda\x91\xc1\xfe\xcb\xf7\xf1\xbb\x9e\x26\xb0\xb6\xbc\xfd\xe0\x8b\xfc\x58\x24\x65\x05\x8b\x7e\xb0\x5c\xfd\xb5\xa7\x3a\x93\x8b\x71\x23\xf0\x9a\xe2\x13\xc7\x74\xa3\x78\x3a\x76\x5c\x7c\x19\x57\x7e\x2a\x6c\x6b\x2f\xfd\x20\x4a\xf0\xa2\x4e\xcf\x26\xe8\x22\xc9\xe6\xe3\x78\xfa\x67\x47\x86\xe9\x14\xd6\x96\xf5\xc8\x26\x0f\x92\x8b\x71\x3c\xf1\xf8\xc4\xe8\x49\x9a\xe6\xef\x56\xdb\x26\xed\x2a\x2a\x1d\x95\x1a\x9a\xb9\x06\x27\x8d\xc2\x7f\x91\x94\xd5\xc7\xc7\xda\xae\xdc\x8f\x89\xb5\x6d\x70\x8d\xb5\x75\xb2\x3e\x3e\xda\x8e\x83\x3e\x26\xde\xae\xc5\x35\xe2\x83\x76\xd1\x5e\xce\xe9\x86\x6b\xb9\x98\xef\x68\x69\xc0\x6e\xe9\x88\xb0\x2f\xf6\xcb\x17\xfb\x65\x6d\xbf\x24\x59\x15\x67\x40\x8b\xfb\x7a\x93\x1f\xee\xcb\x39\x65\x9d\x1d\xe6\xa6\x75\x94\x75\x31\x0d\x5a\xe3\x18\x67\xd3\xb5\xee\x9b\x24\xd9\xd8\xe9\xf2\xc9\x16\xa3\xca\xaa\x6b\xaf\x66\x0f\x32\xaa\xaa\xd3\xec\x6c\x5a\xf4\xe5\x92\xe7\xa6\x6e\x50\xe8\xd1\xa3\x71\x33\xd1\x8d\xb0\x7a\xff\xfe\x61\xbd\x72\xff\x23\x89\xdf\x9d\xbc\x7c\xda\xc8\x0a\xff\x7b\xdd\xdc\xa6\xa8\x7b\xf4\xa8\x15\x85\x2a\xbf\x8b\xb2\xe8\x32\x9e\x7f\x7b\x73\xf2\xf2\xe9\x6a\xb5\x26\x71\x76\xd7\xfc\xbf\x79\xfb\x99\x4f\xfc\x9b\xf8\xe6\x77\x98\xf2\x21\xb3\x07\xac\xd5\x6c\xea\x26\x7e\xb0\xc4\x83\x46\x99\xc0\x70\xff\x96\x54\x57\xe3\xe0\x31\x78\xac\xe3\x6c\x9a\x81\xb4\x9b\x45\x4e\x5b\xed\x63\xf3\x54\x6d\x83\x39\x8c\x27\x93\x49\x98\x0d\xba\xf2\xde\xec\x59\x2b\xfc\x3e\xb8\xcb\xb9\x0f\xf1\x41\xfc\x93\xe5\xf3\xf8\x33\xe7\x20\x37\x84\xdf\x98\x85\x0e\xa2\x71\xb9\x88\x66\xf7\xa6\xf2\x67\xed\x74\x7e\x09\xf7\xdd\xc7\xdd\x03\xcc\xa2\x2a\x2f\x76\xc7\xfc\x86\x5c\xa4\xb5\x4e\x71\x96\xe8\xfc\x49\x55\x8b\x09\xa7\x62\x36\xad\xce\x9d\x11\xbb\xc0\x4f\x41\x77\xd7\xe4\xfb\xe8\x3a\xde\x1a\xa7\x3b\xb9\xca\xf3\x8d\x50\x9d\x8b\xdf\xed\x1f\xca\xfb\xfe\xd5\x8f\x4f\x4e\x9e\x7d\xd9\x5e\xf9\x62\x0e\x1f\x66\x0e\x2f\xa2\xa2\x4a\x3e\xc4\x1c\x6e\xa4\x6d\x98\x86\xe5\x5a\xe2\x26\x4e\xe2\x86\xc5\xe4\x36\xdb\x26\x48\xac\xa0\x6d\x71\x5d\xb6\x55\x90\x64\x5b\x04\x49\xd6\x17\x24\x59\x67\x3e\xb2\xcd\xf9\x28\xd6\x82\x64\xd5\x20\x9b\xff\xb6\xea\xa1\xe9\x77\x59\x13\x29\x8c\x1c\x21\xd3\xe9\xed\xaa\x36\x9a\xda\xab\xab\xd8\xb2\xba\x52\x58\x5d\x85\x5f\x5d\x69\x77\x75\xb5\x7f\x86\x69\x7f\x75\xa5\x5b\x57\x57\xfa\xfe\x7d\xda\x5f\x5d\x69\x77\x75\xa5\xd3\x6c\x9f\xd5\x65\x67\xdf\x8f\xa6\xf0\x24\x7e\xff\x3e\x03\x11\x3e\x09\xa3\xd6\xea\x4a\x7b\xbc\x9f\xfa\xd5\xd5\x81\x7f\x9d\x6e\xce\x66\xd4\xac\xae\x74\xf7\xea\xea\xf7\xb0\x7d\x6a\x53\x3b\x3c\xbb\xba\xd2\x8f\xa4\xc8\x67\x77\x2b\xf2\x3b\xe3\xbd\xf3\x59\x00\xcb\x7d\x7f\x85\xdf\x56\xf2\x89\xd7\x89\x56\xfe\xa7\x36\xca\xb8\x06\xce\x67\x65\x10\x96\x1e\x98\xef\xd4\xad\xf9\xaf\xae\x5b\x3b\x61\x9f\x5e\x00\xe9\xa1\x73\x08\xe6\x33\x70\x17\xe2\x37\x4f\xd2\x74\x3c\x41\x69\x9c\x5d\x56\x57\x7f\x26\x7b\x6f\xa9\x7d\x04\x05\xdd\xf5\x4d\xe7\xb3\x47\x8f\xc6\x2d\x9d\xed\xfd\xd4\xf9\x0c\xfd\x58\x24\xd7\x51\x71\x33\xd9\x5f\x8b\xff\xf8\xe4\xe5\xeb\xe7\xaf\x9f\xff\xf0\x7d\x57\x91\xa7\xd3\xe5\x38\x6a\xa9\x72\x37\x91\xa0\xc6\x3f\x44\x89\x4f\xc2\xb2\xdf\xae\xe5\x85\xd3\xe2\x43\xdb\x8d\x26\x2d\x15\x34\xbb\x53\x05\xad\xb7\x32\x3e\x41\xbf\x6a\xfb\x66\x71\xdb\x67\x6d\xff\xed\x59\xf2\x30\xb7\x72\x91\xa7\xc9\xec\x66\x4f\x02\xb4\x3f\x5d\xc5\xe9\x22\x2e\xea\x06\x1e\xc3\x3c\xe6\x17\x7d\x12\x81\x6e\x03\xfd\x62\xd5\xf4\x5a\x49\x97\x9f\xa3\x5b\x94\x4c\xc7\xdb\xe4\xa5\x93\xa6\x87\x48\xc9\xb5\x5b\x14\xed\x72\x8b\xa2\xc6\x2d\x4a\x3f\x29\xb7\x28\x6a\xb9\x45\xe5\xb6\x2c\x88\xf2\x37\xc9\x82\xe8\x85\x03\xf7\x6a\x68\x30\x46\x18\x38\x4e\x3e\xba\xb6\x2a\x02\x30\x06\x51\x3d\xc6\x61\x86\x80\xb9\x7f\xb8\x98\x8c\x4f\x9b\xe2\x67\x93\xad\x69\x6f\xbf\x7b\x5a\xc6\xc7\x1e\x9d\x57\x4a\xab\x30\x9f\xb6\x85\xf6\xd2\xf3\xe8\x6c\x0a\x82\x7b\xfe\x61\x7e\xdd\xa2\xef\xd7\xcd\xb7\x58\x9e\x0b\xb0\x3c\xe7\xde\xf2\x5c\x74\x2d\xcf\xf6\xcf\x70\xd1\xb7\x3c\x17\x5b\x2d\xcf\xc5\xfb\xf7\x8b\xbe\xe5\xb9\xe8\x5a\x9e\x8b\xe9\xec\x70\xbf\x0e\x1c\xa3\xda\xaf\x5b\x4c\xc2\xeb\x96\xe5\xb9\xe8\xd9\x85\x0b\x6f\x79\x76\xe0\x5f\x2f\x36\x57\xde\x75\x63\x79\x2e\x76\x5b\x9e\xfd\x1e\x86\x85\x07\xa0\xb8\x80\xe1\x79\xcb\x73\xba\x00\x25\x0a\xd2\xa9\xf1\xea\xc2\x45\x4b\xa9\x26\x77\xe9\x93\x22\x4f\xbf\x04\xd0\xbe\x04\xd0\xbe\xe4\xcb\xed\x91\x2f\xf7\x25\x52\xf6\x25\x52\x76\x77\xa4\xcc\xcb\x8e\xa3\x24\x2b\xab\x28\xbb\xff\xf6\xc4\x27\xb2\x09\xe4\x87\xf3\x89\x6c\x25\x76\x36\x91\x07\x8a\x20\x84\xa2\xe2\x72\x09\x7f\x97\x93\x7a\xe7\x70\x47\x82\x55\x7b\x7b\xbc\x6a\x67\xe5\xed\xce\xb2\x1a\xac\x66\xf3\xf6\xc2\x78\x72\x36\x39\xc8\xa3\x6b\x08\xfc\x85\x4d\xee\x99\x64\x30\x10\x53\x6a\x65\xa5\x3d\xf7\xeb\xf0\x24\x5f\x66\xd5\x9f\x71\x5b\x4b\x3d\xaf\x67\xb1\x9d\x36\xd5\xb5\xc3\x37\x61\xeb\x5c\x29\x9f\x03\xf5\x90\x3c\xd8\x9a\x8c\xb0\x2e\xbc\xce\xa8\x5a\xf3\x8e\xcd\xaa\xaa\x4b\x3c\x7a\xb4\x91\xd8\xf6\xe8\xd1\x43\xec\x7e\xa6\x69\xfe\xae\x9b\xe9\xf5\xa9\xe1\xbe\x91\x27\xb6\x05\x79\xa7\x97\xdb\xd8\x0f\x85\xf6\x9a\xef\xdd\xd4\xae\xfd\xab\x1d\xb6\x02\x3f\xd9\xa8\xd2\x41\x2b\xd0\x8f\xe2\x13\xde\xb0\xaf\xf2\x37\xf1\xbe\x74\x1e\x0a\x5e\xd9\xfa\x8f\x93\xf2\x28\x8d\x2f\xa3\xd9\xcd\xee\x32\xeb\x93\x69\x1b\x51\xae\xb0\x70\x84\x1c\xde\x8c\xfa\xbc\xbc\x97\x7c\x3a\x8e\x76\x7a\x2f\xe9\xaf\x19\xe7\x2a\x3f\x29\xef\xa5\x1d\xe7\x4a\xb6\x79\x2f\xc9\xff\x1d\xde\xcb\xc3\x31\x0e\x0b\x94\x94\x4f\xea\x65\xd0\x8d\x18\xb5\xd3\xe4\x9c\xc0\xce\x8b\xe7\x4f\x6b\xf9\x6f\x17\x51\x0b\xbe\x75\xcf\xe3\xbe\x47\x50\x1f\xda\x50\x56\x52\xbe\xb0\x0b\xb9\x8f\x5a\x2f\x52\xb7\x0a\x97\xd3\xb4\xe5\x78\xcd\x3c\x1b\xce\xa7\xa7\xd1\x19\x78\x4e\x1f\xe2\x78\x5d\xf4\x1d\xaf\xeb\x2d\x8e\xd7\x05\x38\x5e\xd7\xde\xf1\xba\xe8\x3a\x5e\xed\x9f\xe1\x45\xdf\xf1\xba\xd8\xea\x78\x5d\xbc\x7f\x7f\xd1\x77\xbc\x2e\xba\x8e\xd7\xc5\x74\x7e\xb8\xe3\x05\x7e\x4b\xed\x78\x5d\x4c\xc2\x45\xcb\xf1\xba\xe8\xb9\x45\x17\xde\xf1\xea\xc0\xbf\xbe\xd8\x5c\x5c\x8b\xc6\xf1\xba\xd8\xed\x78\xf5\x7b\x18\x96\x0f\x80\xe2\x05\x0c\xcf\x39\x5e\xe5\xf4\x22\x4c\x9d\xe3\xd5\x04\xb2\xc2\x8b\x96\xe3\x95\xdf\xa5\x5c\x96\x8b\xb2\x2a\xe2\xe8\xfa\x33\xd7\xe3\xeb\x61\x7c\xf2\xa6\xf4\x1e\xaa\x7f\x1e\x2d\x2a\xd0\xca\x47\xff\x5d\xe6\xd9\x51\xb4\x48\xba\xb3\xf3\x8d\x3b\x14\x36\x8f\xaa\xa8\x2e\xfb\xb8\x29\xf9\xe1\x33\xb4\xb5\x42\xbd\xb9\xdb\xd1\x50\x0f\x71\x78\x19\x57\xc7\x4d\x9f\x6b\x0a\xd4\xc3\x5c\xad\x26\x77\x8c\x33\x5a\x38\x79\xb8\xcb\x9e\xac\xcb\x5e\x55\xd5\xe2\x0f\x9d\x28\xf3\x25\x61\xe5\x0f\x98\xb0\x12\x23\x97\x43\xf8\xf3\xff\xfe\xe9\xd9\xcb\xff\xfc\xf9\xc7\x27\x2f\x9f\x7c\x37\x8d\xd1\xd3\x27\xaf\x9f\x9c\x3c\xfb\xfe\xf5\xb3\x97\x9d\x0f\xcd\x89\xc7\x2d\xdf\x83\xf9\x2c\x78\x30\xd8\x64\x90\x95\xee\xa0\xe3\x72\x7b\x78\x7e\x96\x26\x71\x56\xb9\x85\xb4\x3d\x3d\xe6\xf0\xed\xde\xa1\xa4\x18\xd7\xd7\x66\x5e\x8c\x0b\xe7\x3b\xe0\xea\x22\x2f\xae\xa3\xea\x7b\x9b\x97\x0c\x7c\x9c\x5c\x8c\xf7\x4b\xc3\xf4\xfe\x78\x10\x3c\x9c\x4e\xe3\xaf\x6f\xb3\xf2\x38\x5e\xd5\x0b\xcb\x35\xfa\x34\xaa\xa2\x19\xd8\xab\xc5\x3a\x10\x76\x3b\x9f\x1d\xc7\x2b\x9b\xf9\x91\x77\x33\x34\x6a\x6c\x3f\x46\xf2\x47\x3e\x94\x54\xf2\x71\x93\x3f\x96\x77\x89\xd5\x3d\x6e\x77\x18\x12\xc1\xbf\xa9\x92\x2f\xe2\x7f\x2c\xe3\xb2\xfa\x4b\x5e\xfc\xef\x65\x5c\x40\xab\x30\x3f\x55\x98\x95\xc7\x59\xd8\x24\x50\x1e\x17\x61\x92\xcd\xe3\x5f\x8e\xa3\x30\x99\x1f\xa7\xab\x46\x92\xc4\xff\xf5\x60\x64\xff\xf7\xd7\x67\xaf\x47\x8f\xdf\x92\xc7\xd1\x2c\x6d\x0f\xbc\xfc\xfa\xab\x5b\xdb\xe0\x6a\xf5\xc0\x97\xfc\xea\xf6\x76\x5b\xe3\xab\x95\x2d\xf3\x5f\xab\x1e\x56\x2f\xe3\x59\x5e\xcc\xf7\xc6\xad\x1d\x5a\x4a\x27\xd5\x55\x91\xbf\x1b\x65\xf1\xbb\xd1\xb3\xa2\xc8\x8b\x71\xf0\x9f\xf9\x72\x74\xbd\x2c\xab\x51\xb9\x88\x67\xc9\xc5\xcd\x28\xca\x46\xc9\x3c\x58\x9f\xe8\xb8\x63\x4c\x8f\xbf\xba\x4d\x57\xf7\x1b\xd7\x01\xc6\xc7\x79\x92\xcd\x93\xec\xf2\xa8\x58\xee\xd8\xec\xfc\x7c\xd8\x07\xe8\xe7\xc8\x07\xf3\x64\xc9\x72\x17\x1b\xb5\x29\xd0\xf0\x51\xa7\xa1\x7d\x88\x9f\xde\x87\xf8\xb3\x3c\x2f\xe6\x49\x16\x55\x9f\x21\xe9\xd7\x24\xc8\x3c\x09\x8a\x70\x59\x24\xc7\xd1\x0e\x72\xaf\xc7\x6b\xcf\x00\xb5\x57\xad\x2b\xf8\xff\x1c\xbd\x74\xdd\x1d\x3d\x7f\x7a\x3c\xfa\xea\x36\x6a\x53\x7e\xa0\xc7\xfb\x10\x7d\x3e\xfb\x8c\x88\xbd\x83\x96\x51\x15\xa5\xf9\xe5\xe3\x79\xa3\xfb\xca\x7b\xd0\x22\x29\x67\xf9\xdb\xb8\xb8\x39\x9a\x5d\x45\xc9\xdd\x66\xf9\xa7\x42\x98\x43\x24\xb5\xe5\xca\xf2\x57\x90\xd7\x3d\xe2\xf5\xe5\xf5\x30\x47\x97\xbf\x96\x20\xb7\x86\xde\x5d\x0e\xe4\x16\xb7\x32\x06\x0a\xec\x4e\x78\xfc\x08\x93\x6b\x4f\xd9\x97\xd3\x7e\xb8\x79\x7a\xdb\x92\x18\xa8\x58\xcc\x3a\x91\x1b\x84\xd0\x3a\x78\x13\x9f\x06\x6b\x46\x08\xfe\x94\x9d\x8d\xed\xe7\xd5\x24\xdc\x5d\xa5\x5c\xe4\xd9\xbc\x5f\xa5\x08\xab\xc9\x2a\x4c\x36\xf0\xf9\xfd\x90\xa9\x63\xd6\xdb\x8c\xf5\xae\x49\xff\x71\x73\x34\x6b\xa3\xf8\x33\x48\xd3\x5c\xc1\xb4\x34\x93\xe5\xd8\xca\xa1\x8d\xdc\x28\xc2\xd4\xfd\x2a\xab\xbc\x88\x7d\x3a\x91\xcb\x7b\x0d\x73\xcf\x86\xcb\x69\x0a\x74\xf5\x5d\xfc\x25\x2f\xc6\xc5\x24\x9c\x4d\x53\x74\x9d\xcf\xe3\xd4\xfd\xf6\x0b\x3f\xa8\x67\x33\x98\x4e\x5d\x6a\xf0\x28\x43\x51\x55\x15\xc9\xf9\xb2\x8a\xcb\xaf\xc7\xc9\xb4\xfd\x7b\x3c\x09\xf3\xe9\x72\xdd\xf8\x38\x0b\x6f\x57\x93\xc9\x31\x14\x0b\xf3\x69\x32\x09\x23\xe4\xf9\xa6\xc5\x5b\x2d\x1e\x19\x97\x61\x15\xe6\x61\x12\xce\x26\xab\xc9\x04\xcd\xa2\xaa\x1f\x01\xa8\x77\xfa\x91\x5d\xb7\xe3\xd8\x96\xab\xae\xe2\x6c\xb0\x58\x35\x5e\x86\xf1\xba\xc1\x55\x5d\x09\xe4\x61\x3c\xaa\x53\x31\xf2\x8b\xd1\xeb\x9b\x45\x6c\x65\xa1\x97\x8d\xb1\xa7\x55\x35\x3d\xbd\x2d\xab\xa8\x5a\x96\xc7\x41\xf0\xa7\x18\xb9\xbf\x4f\xf2\x79\x1c\x56\x49\x95\xc6\xc7\xc1\xeb\xab\x78\x74\x1e\xcd\xde\xc4\xd9\x7c\xe4\x19\x3c\x9e\x8f\xde\x25\xd5\x15\x08\x51\x27\x5d\xc2\x79\x5c\x45\x49\x7a\x1c\xa3\xeb\xb8\x2c\xa3\xcb\x78\x75\x66\xe7\xa4\x78\x50\x15\x37\xb7\xe5\xbb\x04\x86\xd9\x6e\x7c\x72\x3b\x8b\xca\x78\x84\x8f\x8b\x29\x48\xe9\x0c\x3d\x39\xcf\x8b\xca\x22\x18\x16\x6e\xe8\xe5\x29\x3e\xf3\x35\xa6\x01\x0e\x1e\x9c\x17\x71\xf4\xe6\x81\xad\xc6\x31\x69\x2a\xfe\x94\x81\x35\x97\x17\xc9\x3f\xe3\xb9\x13\xf6\x55\x18\x04\x93\x6e\x71\xd6\x14\xff\x4b\x5e\x9c\x27\xf3\x79\x9c\x6d\x2d\xcb\x9b\xb2\xdf\xe7\xd5\x5f\xf2\x65\xb6\xbd\x59\xdd\x14\x7d\x9d\x5c\xc7\xf9\xd2\x0d\xa0\x5b\xc6\x34\x65\x4e\xf2\xec\x22\x4d\x66\xd5\xb6\xe6\x28\x6d\x8a\x3e\xcf\xde\x46\x69\x52\x77\x5c\x17\xf3\x22\xe0\xb8\x98\xb6\x49\xf9\xe7\xa9\xc0\xf8\x6b\x57\xef\x55\x5c\xbc\x8d\x8b\x56\x07\xc7\x0e\xee\x6b\x3a\xd8\x6a\xe5\xd8\x2e\x9a\xdc\x16\xd3\x68\xe5\xf8\xa1\x58\xfd\xc3\x5b\x80\xed\x8d\x40\x9f\x1a\x5d\xb9\x95\xf3\x7d\x74\x1d\x87\x81\xd5\xd1\x41\x98\x4d\x5c\x8d\x46\x5b\xef\x55\xcf\x95\xb6\xb5\x2f\x92\x6c\xfe\x24\x4d\x3b\x01\xfc\xa1\x7a\x7f\x71\xe5\x82\xc9\x6a\x66\x37\x87\x06\x3b\x4c\x06\x2a\x9e\xb4\x8a\xdb\x1e\x97\x76\x2f\x7d\xef\xfa\x3f\xb5\x8a\xdb\xfa\x73\xbb\x03\xb4\x77\xfd\xa7\xad\xe2\xb6\xfe\x2a\x5c\x76\x32\x93\x67\x6b\xc9\x3c\xb7\xc9\xc9\x5f\x76\x74\xfe\x08\x3b\x3a\xe9\xf4\xa2\x4e\x4e\x3e\x6c\x47\xa7\xb6\xf6\xee\xbe\x82\xe5\x53\x33\xd9\xb7\x1b\xeb\x17\x49\x5a\xc5\xc5\xda\x5f\x6f\x0c\xf6\xed\x6e\x64\x96\xc5\xb3\x6a\x4d\x84\xbb\x1d\xc9\x72\xf5\xd5\x6d\xc3\x14\xd1\xd7\xc1\xff\xc9\x9a\x72\x51\x76\x19\x1f\x8f\x82\x3f\x45\xc7\x41\x30\xec\x6e\x16\x80\x73\xf0\xbf\x82\x06\xc1\x1a\xe3\x3d\x03\x49\xae\x5a\x06\xde\x48\xd1\xf3\x43\x8a\x03\xfc\x10\xab\x8d\x4f\xed\xde\x47\x68\x13\x30\xcf\xa6\x05\x2a\x17\x69\x52\x8d\x83\xe3\x60\x82\xae\xa3\xc5\x78\x1e\xcf\xf2\x79\xfc\xd3\xcb\xe7\x27\xf9\xf5\x22\xcf\xe2\xac\xda\xee\xbf\x6c\x92\xf1\x71\xfc\x4b\x34\xab\x80\x98\x6e\x67\xed\xf8\xbf\xc0\x05\xb7\x8e\xcd\x63\xa0\xe1\x7f\x85\xf3\xb8\xac\xc0\x81\x07\xb2\xfc\xd7\x57\xb7\x09\xc0\x73\xf8\xcf\x12\x3e\xb6\x67\xe0\x24\x9a\x5d\xc5\x47\x27\x79\x56\x15\x79\x7a\x3c\xca\xf2\x23\x6b\x8e\xb5\x08\xec\xc9\x32\x40\xc4\x93\x01\x29\xee\x6c\x91\x62\x7a\xfb\xca\xa2\x06\xf2\xf3\xb8\x42\xeb\x1f\xe1\xd3\x35\x6a\xfe\x63\x0f\x12\xfa\xc2\xaf\xd6\xf5\x5e\x75\x6a\xbd\xea\xd5\x79\xe5\x6b\xfc\xd8\x70\x42\x5d\xb1\x81\xb4\xeb\xb7\x8b\x0d\x81\x7d\x6b\x60\x66\x35\x0d\xc1\x8f\xf0\xbb\xb8\x8a\x8e\x2b\x04\xff\x40\x7b\xb3\x22\x59\xac\x9b\xa9\x7f\x35\x7b\x44\xad\x4b\xca\xc2\xe0\x89\x5d\xcc\xfe\xbc\x5c\x30\xf9\xba\x40\x0e\x32\xad\xfc\x1f\xc7\x15\xfa\x71\x9d\xa6\xf9\xe8\xd1\xb8\x68\xff\x9e\x76\xbe\x4e\xc2\x86\x47\x7e\xfc\xe9\x10\x1e\xc9\xfa\x64\x01\x8e\xc8\x1a\x22\x77\x7e\x45\xd7\xf1\x26\x1f\x65\x83\x04\x73\xf5\x3a\x33\xb2\x09\xf2\xed\xcd\x8e\x33\xb4\xde\x06\x68\x47\xec\x8a\x4d\xfe\xfa\x69\xbb\x96\x77\x0a\x7c\xb4\xc9\x3c\x83\x1f\x5e\x0d\x82\xd7\x33\xee\xaf\xdf\x19\xe4\xeb\x4e\x3e\x6e\x0b\xb9\xa7\xdb\x4d\x88\x66\x7a\x9e\x3e\x7b\xf1\xec\xf5\xb3\xcf\x7c\x86\x0e\x0e\x71\xec\xb8\x77\x6a\x70\x8f\xb9\x55\x60\x59\x25\x69\xf9\x38\x29\xff\x92\xa7\x73\x1b\x06\xe9\x7f\x7a\x13\xdf\xbc\xce\x9f\x14\x45\xd4\xcd\x9c\xb3\xb6\x9a\xed\x79\x20\x51\x2e\x8c\x3e\x9e\x06\x4d\x07\x34\x68\x54\xde\x64\xb3\xd1\x9e\x7a\x74\xad\x3e\x93\xf9\x71\x19\x96\xf1\x22\xb2\x67\xce\x8f\x93\x9e\xca\x29\x0f\x55\x39\xa3\x7c\x1a\xbd\x8b\x92\x6a\xbc\xa1\x41\xde\xbc\x7d\xfc\xd5\xad\xcd\xa5\xf2\x28\x4f\xc6\xe5\xc4\xc6\xc0\xc0\xb6\xb4\x26\xa7\x55\x0a\x1d\x6c\x76\x04\xc0\xa2\x7e\x30\xbd\x51\x5e\x16\x81\x51\x3e\x8e\xa7\x7f\xf6\x2b\x2e\x3e\x0d\x7e\x39\xf2\x13\x65\x6b\x05\x67\x93\x30\x5f\x0d\xd2\x6c\x77\xb8\xb0\x4b\xb9\x0f\xa6\x56\x72\x38\xb5\xee\xda\xe1\xb9\x8b\x2e\xc9\x5d\x74\x49\xf6\x52\xae\xe9\xf4\xb6\xb7\x4a\x2d\xa9\xec\xc9\x7e\xbb\x6d\xdb\x0e\xfa\xa3\xb5\x10\xd8\xb0\x30\x6a\xed\x31\x30\xe2\xec\x34\x42\xaf\x5e\xfc\xf4\xd7\x9f\xff\xfd\xd9\x7f\x9e\xd9\xd1\xa7\x8d\xc5\x90\x5b\x11\x76\x64\x15\xe4\xa8\x8a\x7f\xa9\x1e\x2f\xd2\x28\xc9\xfe\x75\x34\xbb\x8a\x8a\x32\xae\xa6\xcb\xea\xe2\x48\xaf\xc9\x54\xed\x27\xd9\x3f\x68\x70\xe1\x45\x1a\x5d\x42\xb9\xbf\xc0\xbf\x9f\xd2\x50\x37\xf4\x44\xea\xae\x93\x2b\xff\xd5\xe6\x0f\x36\x68\xa4\x1d\x34\x1e\x3d\x1a\x97\xce\x09\x69\xd8\x15\xe8\x92\xf6\xe8\x92\x0e\xd2\x25\x6d\xd1\xa5\x88\x67\xcb\xa2\x8c\x8f\x07\x68\xd2\xd2\x4e\x03\x64\x49\x37\xc8\x92\x0c\xe8\x82\xf4\x0e\x5d\xb0\xf3\x0e\xb9\xcf\xc7\xf7\x19\xdc\xa8\xd8\x66\xb0\x83\x8a\x2f\xb2\x28\x7d\xbc\x4c\xf6\xdc\x3f\x3b\x6c\xb7\xe1\x53\xdc\x64\xe9\x8f\xf9\xd7\xd8\x65\xe9\x8d\xfb\x45\x1c\xcd\xe3\xa2\x19\x37\x8c\x2c\xdb\x31\x2b\x2e\xcc\xf6\x38\xb5\xb5\xee\xc4\x2c\xab\x3f\xbc\x8c\x2f\x8a\xb8\xbc\x3a\x1e\x31\xec\xd1\xf8\x47\xa7\xf3\xee\x5e\x84\x33\x24\x7b\xdb\x11\x1b\xdb\x15\x83\xe3\x70\xa5\x7a\xdb\x12\x9b\x55\xeb\x6d\x89\xc1\xaa\x45\x3b\x6c\xb5\xd7\x19\xae\x66\x9d\xee\xbe\x87\xf0\x2e\xbb\xcd\xdb\x5f\xbe\x95\x81\x1d\xaa\x8f\xb5\x8a\x8b\x5f\x79\xeb\x3b\xab\xc5\xe9\x47\xdc\xf4\xde\xbd\x5e\x87\xb0\x4c\xe6\x16\xc9\xf6\x22\x8d\xf6\x5b\xa4\x80\xff\x8e\x65\xda\x0c\xef\x31\xe0\x3f\x68\xd3\xec\x37\x92\x0d\xeb\xa4\xd8\xa4\x69\xad\x73\xdb\x9d\x16\xa7\xd9\x5a\xab\xd4\x08\x14\x6d\xad\xd6\x92\x00\x2d\xdb\xa5\x8d\xa1\x0f\x1b\xd4\xd1\x84\x61\x3f\x3c\x7c\x72\xf2\xa2\x3c\xbe\xfd\xd1\xde\x41\xf1\xd4\x71\x4a\x79\x5c\x21\x00\xa3\x2e\xd4\x46\x64\xe2\xe9\x9f\xc7\xb7\xcf\x9f\x1e\xc7\xe8\xf9\x53\x58\x2b\x2f\xf3\x34\xee\x57\x6b\xc3\x86\x2a\xad\x06\x08\xb5\x61\xe9\xfc\x86\x84\xfa\xe4\x89\xb3\x61\x1b\x0d\x10\xa7\x65\xa5\x7c\x1c\xfa\x6c\xd8\x30\xc5\x1d\xb2\x31\x4f\xe6\xb3\xa3\x45\x91\xbf\x4d\xac\x4f\xfa\x21\xc6\xcc\xfa\xbe\x89\x8f\x73\x72\x2a\xfd\x75\xee\x7d\x48\x77\x9d\x9c\x4a\x3f\xd1\x7b\x1f\xd2\xf6\xd6\xf3\xa1\x86\x1d\xe8\x85\x5d\x19\x68\x6d\xfb\xc6\xf2\xc3\x96\xac\xc6\x61\x55\x91\xfe\xaa\xf6\xdd\xbd\x95\xc5\xa0\x45\xf7\xe3\x0f\xaf\xd6\x49\x77\x30\x54\x97\xec\xb8\x2c\xd2\x26\xe9\xae\x8f\xc2\x01\xc1\xe4\x27\xcb\xea\xea\xbb\x3a\xf1\xef\x65\x3c\x4f\x8a\x78\x56\xfd\xf4\xf2\xf9\xf1\x60\x8e\xf1\xb7\x4f\x5e\x3d\xfb\xf9\xa7\xe7\x3f\xff\xf4\xf2\x45\x30\xf9\x53\xe0\xd0\x81\xc9\x3e\x8f\x66\x6f\x82\x01\x82\x3d\xa9\x37\x90\x77\x93\x2b\x9c\xe5\xf3\xf8\x38\x0d\xc1\x26\x8c\x37\xec\xe1\x43\xa8\x77\x0f\x3b\x1a\xfa\xee\xd5\xdc\x33\x7a\x61\xd1\xdd\x6b\xca\x6a\x1a\x7d\xf4\x29\x3b\x71\x84\x7b\xe5\x09\xb7\x39\x03\x2f\xf2\xcb\x7c\x59\x01\xf9\x93\xf9\x71\xd5\xa3\x6c\xf5\xb1\xf8\x32\xb5\xbd\xdc\x31\x84\x7a\x2d\x9e\x38\x21\xfd\x3a\x7f\x13\x67\xc7\x6d\x27\x3d\x6a\x71\xcb\x07\xd9\xf1\x6b\xb6\x3b\xd0\x8a\x1f\xa8\xd8\xb3\xe1\xd3\x9a\x9e\x1f\x84\xa0\x9f\x95\x01\xec\x9a\x3c\xfc\xd5\x80\xff\x10\x96\x9d\xdb\x62\x12\xaf\x01\x72\x7b\x5b\xcc\xf2\xc3\xb6\xb8\xe7\xfd\x2d\xee\xe5\x96\x2d\xee\xf9\x69\x7c\x36\x5d\xfa\x2d\xee\x79\x77\x8b\xbb\xfd\x33\x9c\xf7\xb7\xb8\xe7\x5b\xb7\xb8\xe7\xef\xdf\xcf\xfb\x5b\xdc\xf3\xee\x16\xf7\x7c\x9a\x1f\xbe\xc5\x5d\x86\x49\xb3\xc5\x3d\x9f\x84\xb3\xd6\x16\xf7\xbc\xb7\x01\x3d\xf7\x5b\xdc\x1d\xf8\xd7\xf3\x4d\xbd\x36\x6b\xb6\xb8\xe7\xbb\xb7\xb8\xfb\x3d\x0c\xab\x66\x40\x71\x0e\xc3\xab\x6f\x8b\x99\xd7\xb7\xc5\xf8\xed\xca\x70\x16\xce\x1f\xec\x1f\xe1\xb9\xfb\x5a\xe5\x3d\x9d\xc7\x75\x43\xbf\xb1\xff\xb8\x35\x7e\x9f\x95\xc7\x95\xdd\x10\x69\x1c\xa1\x75\x1e\xdb\x96\xe0\x71\x33\x88\xda\x28\xe8\x5a\xe4\x3d\x87\xaa\x17\x1f\x8e\xee\x8a\x0f\x47\x77\xc5\xcd\x37\x30\xfe\x50\xeb\xa0\x0e\xca\xde\x35\xdc\xb6\x3f\x79\xc8\x90\xd3\xbb\x86\x9c\x6e\x0c\xf9\x10\xd7\xb3\x8d\xdf\x9d\x1e\xc3\xe1\x4e\x66\xa3\xff\xfa\x38\x1e\xe2\xf5\xdd\x1f\xc7\xc3\xf1\x3a\xd0\xe1\x3a\x14\xb5\x41\xd7\x6a\xe8\x89\xf3\x46\x78\xdc\x7d\x21\xee\x61\x7e\xd5\xc0\x89\x53\xff\x75\xda\xd6\x35\xb1\xb5\xbf\x3c\xe4\x32\xae\x7e\x78\x97\xd5\x42\xe5\xd5\xcd\xf5\x79\x9e\x96\x3e\xa9\x7a\xba\xab\x0c\x34\x53\x3d\x7a\x34\x2e\xa6\x05\x72\xb9\x26\x83\xa9\xa2\x83\x4d\xd4\xb3\x95\xdb\x20\xe2\xa4\xa5\xc7\x56\xf6\xbd\x17\xb4\x58\x96\x57\x08\x06\x7d\x63\x0f\x6b\xd6\xcf\x93\x65\x9d\x23\xaa\x93\xdb\x8b\xbc\x18\x5b\xc7\x6d\x4a\xfe\xb5\xfa\xff\x35\x3b\xd5\x3e\xd5\xe0\x5f\xab\x3f\xfd\xa9\x1e\x3f\xc8\xfb\x87\xd3\xa6\xc4\x69\x75\xf6\x75\xfb\xc7\xf1\xed\xea\x41\xf5\x3f\xe9\xd7\x89\x27\xcb\x38\x9b\x84\x0f\xf1\x90\x4e\xae\x26\xb7\x3e\xb1\xf7\xb4\x3a\x9b\xac\x26\x93\xe3\x3b\x46\x58\x0e\x1e\xf7\x4e\xe2\x72\x1c\x87\x77\x55\x1d\x67\x93\xc9\x71\x0b\xa7\x2d\x08\x6d\x3f\x34\x7a\x17\xf5\xb3\xb0\x9a\xd8\x84\xdb\x7a\x1d\x0c\x5c\x5a\xff\x39\x1c\x58\x9e\xfd\x4e\x37\xfb\xcf\xbf\x1c\x94\xfe\xc3\x1e\x94\x6e\x45\x9a\xae\xef\x7b\xb3\x7f\x19\x57\x55\x92\x5d\x96\x1f\x70\x7e\x79\x39\x74\xa9\xff\xb2\xb9\x03\xc7\xb7\xdf\x9c\x60\x3e\x28\x1c\x50\xdf\x4e\x51\x1e\x47\xd3\xd3\xb3\xcd\xb3\x88\xfb\x9d\x7d\x7e\xf4\x68\x1c\x4d\xa3\x3a\xec\x99\x8f\xf3\xf1\xed\x2a\x8c\x27\xe1\xed\x2a\xbc\x6d\x76\x68\x8f\x33\x2b\xda\xf7\xbe\x0e\x7f\x57\xa3\x3f\xb6\x5c\x79\x68\x74\xd3\x4d\x6e\x22\x56\xf5\x79\x55\x4b\x88\xa1\x90\x7f\x74\x80\x3f\x6c\x0d\x0a\xbf\x0c\xa6\x7f\x6e\xb2\xfd\xf6\xa3\x92\x3f\xb5\xb2\xd7\xe0\x41\x3f\x17\xef\xdf\x47\xeb\x67\x3f\x9d\xc1\xe8\x4e\x8c\xf8\x39\xb7\xb7\xba\x7d\x7b\xf3\x2a\x5d\x5e\x8e\x03\x77\x33\xd7\xe4\x41\xd1\xdc\x47\xfd\x70\x3a\xcd\x50\x56\x3e\x7a\x54\xff\xe5\xb5\xe2\xfb\xf7\x63\xf8\x35\x8d\xd7\xbb\xe7\x13\xbb\x98\xdb\xf5\x1a\x26\xa9\xab\x37\x80\x76\x2b\x0d\x70\x1a\xaf\x83\xcc\x2d\x65\xb2\x2d\x48\x30\x59\xf5\x4d\x98\xc6\x87\xdc\x02\x07\x15\x35\xe0\xa1\xa7\xd3\xf9\xaf\xf4\x60\x42\xaf\xdd\xf5\x3a\xfb\xc8\x07\xe7\xaf\xef\x72\x30\x77\xbf\x17\xb0\xaf\x77\xe9\x5a\x19\x70\x2d\x1b\x4d\x56\xfc\xa1\xad\xc5\xe8\x57\xb1\x16\x8b\x7d\xac\xc5\xf4\xb7\xb5\x16\x8b\xdf\xc7\x5a\xfc\xec\x2e\x0e\x77\xca\x78\x48\x1d\xff\x1a\xd7\x40\xd8\x05\x98\xc4\x7f\x98\x2b\x20\xfc\x2b\x24\xf7\xbf\xfd\x61\x77\xaa\xdf\xb6\x68\xc1\xba\xeb\xaf\xbf\xba\x8d\xc6\x11\xd8\x04\x56\x27\x6e\x5c\xb1\xd2\xce\xa1\x9b\x38\xab\x61\xaf\x34\xc1\xc9\xe1\x7b\xed\x2f\x97\x69\x5c\x1e\x57\xc8\xfe\x1b\xae\xbb\x05\x58\xeb\xd7\x9e\xdb\xe3\x4d\xcc\x69\xd7\xe8\x8a\xc1\xd1\x15\x83\xa3\x6b\xef\xff\x0e\x6c\x2c\x6c\x50\x76\x28\xda\x91\xfe\x96\x54\x19\x0a\xd3\xfc\xc6\x54\x69\x45\x81\xee\x24\xcc\x46\xd8\x67\xdb\x0d\xe3\x8d\x4a\x2f\xf2\x5f\x0e\xd3\xe8\x9f\x51\x5a\xe0\xc7\x16\x36\xf5\x0d\x12\xf5\x09\x82\x7d\x33\xeb\x9a\x0f\xee\xe4\xd4\xa1\xbb\xd0\x07\x24\x8f\xed\x7c\x81\x63\x4f\xfb\xcc\xb6\xf1\xc5\x3a\xfb\x62\x9d\x7d\xb1\xce\x7e\x0f\xeb\x0c\x96\xdf\x1f\xc6\x34\x83\xc1\xfc\x2e\x86\x19\x74\xfc\x09\x99\x65\x3f\x7a\x93\xfb\xb8\x42\xf5\x9f\xe1\x2b\x17\x97\x7b\x3e\x8f\xb3\xca\x5e\x25\x7b\x5c\xa1\x0d\x58\xf8\x7d\x3e\xef\x16\xe9\x02\x3e\x7d\x43\xce\xb3\xc0\xc7\x30\xe3\x7e\x4b\x2a\x7e\x7a\x86\xdf\x0e\x42\x1e\x6c\xf6\xed\xfd\xae\xcc\x17\x0b\xb0\x23\xd3\xae\xe2\x28\xad\xae\x6a\xf2\xfd\x56\x06\xe0\xb0\x5c\xef\x85\x84\x7b\x74\xea\x1e\x96\x3d\xc0\x84\xbc\xeb\x09\x99\xcf\x8f\x23\x2e\xa3\x2a\x7e\x17\xdd\x6c\x9e\x17\x5a\xef\x18\x7d\xdd\xcc\xf4\x70\xa2\xa9\x6f\xe2\xc8\x13\xa7\x3c\xb2\xa7\x89\x86\xe7\xbf\x3f\xd1\x2d\xe8\x96\x23\x37\xfb\x70\xc1\x68\xf4\x5f\xc7\x77\x20\x59\x23\x37\x8c\xd1\x07\xf4\xfd\x69\x1e\x74\xba\xe7\x5a\xfc\x75\x1c\xaf\xbb\x9e\x7d\xd9\xd3\xf7\xaa\x9b\xf9\x44\xce\xed\xfc\x3e\x13\xeb\x89\xf0\x5b\x9d\x5e\xfb\x9d\xcd\xe4\x7a\xb4\x49\x76\x91\x7f\x14\x53\x79\xbb\xe5\x12\x4d\x37\x8e\x66\xec\x65\x9a\x6c\xb5\xef\x6a\xdc\xe7\x71\x59\x15\xf9\x60\x50\x2a\xba\xc7\x31\x8f\xdd\x2f\xfb\xec\xb9\x94\x5c\x23\x07\xbc\x49\xfd\x87\x8d\x68\x24\xbf\x4a\x44\xa3\xdc\x27\xa2\x91\xff\xb6\x11\x8d\xf2\xf7\x89\x68\xe4\x9f\x5b\x44\xc3\xdf\x84\xbf\x35\x51\xa4\xca\x8b\xf8\xa3\x5f\x98\xe9\x5a\xfd\x3c\xee\xcb\x3c\x54\x1f\x82\x6f\x76\x9c\x86\x2e\x36\xbf\xf3\x48\x3a\x78\x72\x56\x34\x59\x33\xad\x57\x2f\x3c\x5c\xee\xdf\xe3\xfa\x8e\x8f\xa6\xd2\xea\x0b\x6a\xb7\xa4\x24\x37\x43\x1d\x56\xe2\x77\x9f\x77\xb9\x6b\xf0\x8d\x52\x2d\xef\xca\x5d\x2e\x3f\x20\x94\x64\x87\xf0\xf5\x57\xb7\xc9\x38\xf9\x95\x63\x49\x87\x45\x3e\x5e\xe6\x7e\x53\x0b\xfe\xfd\x38\x71\x90\xf0\x45\x3e\x8b\xd2\xe3\x0a\xd9\x7f\xf7\x8c\x2d\x35\xdc\xf3\x70\x3a\x2d\xdc\x16\xdb\xa4\x4f\xcf\x2e\x45\xdd\x9d\x91\x5f\x7f\x75\xbb\x47\x04\xa5\xe3\xa8\x54\x8d\x2f\xf4\xa0\xb6\x68\x76\xce\xca\xaf\x13\xd1\xaa\x79\x7a\xc8\xd6\xf9\x9c\x26\xf3\x37\x30\x14\x7b\x21\xac\x5d\x94\xeb\x63\xf7\x2a\x4e\x2f\x9c\xb2\xec\x9c\xa2\x28\xe3\x59\x11\x57\x3b\x6f\x0e\x58\xf7\x54\xc6\xe9\x45\xeb\x28\x44\xed\x3c\xf4\x8f\xa1\x45\x87\x5e\xc1\x37\x78\x0e\x3f\xcd\xb3\x2d\xc4\xec\x0c\xf7\xc1\x47\x3b\x1e\x3a\xc0\x92\xd1\xea\xf1\x0c\xf0\x18\x3a\x85\xbd\xd7\x0c\xd6\xe3\x2a\x6b\xea\x7f\xc0\x51\x37\x3b\x83\x07\x1e\xc3\xeb\xd6\xe9\xe5\xd8\xd9\xa1\x7d\x28\x56\xed\x79\x5a\x23\x57\xd7\x68\x32\x29\x3f\x78\x09\xf4\x6f\x08\x69\xba\x8c\x26\xab\xcd\xe4\xc1\x59\xe7\x12\xdb\x79\x63\x2d\x5d\xdb\x3b\x6c\x17\x1f\x76\xc0\xef\xbc\x7f\xc0\x6f\xb1\x25\x01\xfc\xfc\x34\x3e\x9b\x2e\x7c\x02\xf8\x79\x37\x01\xbc\xfd\x33\x3c\xef\x27\x80\x9f\x6f\x4d\x00\x3f\x7f\xff\xfe\xbc\x9f\x00\x7e\xde\x4d\x00\x3f\x9f\x5e\x1f\x7e\xc0\x6f\x16\xce\x9b\x03\x7e\xe7\x93\xf0\xa2\x95\x00\x7e\xde\x4b\xcf\x3e\xf7\x09\xe0\x1d\xf8\xd7\xe7\x9b\x36\xe0\x45\x93\x00\x7e\xbe\x3b\x01\xbc\xdf\xc3\xb0\x19\x0b\x28\x9e\xc3\xf0\xea\x3b\x6c\xcf\xeb\x3b\x6c\x9b\x1b\x6c\xc3\xf3\x03\x1e\x2e\xaa\xf2\x45\x9e\xe6\x97\x9f\x4f\xbe\xc6\x5d\x76\xe8\x9b\x24\x9b\xf7\xef\xe1\x5b\x16\xc9\x07\xdd\xc0\xb7\xcf\xbd\x01\xf5\xf6\x47\x4d\x50\x7b\x57\x6b\x73\x42\xdb\x61\xb5\x35\xd8\x94\x7c\xec\xc7\x6d\x16\xbd\x67\x28\xdc\x7b\x13\x45\x5c\xe6\xe9\x5b\x7b\xf5\xa2\x03\xa4\x79\x34\x3f\x6a\xb1\x5d\x77\xee\xdd\xf2\x7b\x1c\x67\x6f\x93\x22\xcf\xc0\x59\x1f\x7e\xa9\xb8\x9d\xe7\xf0\x79\x39\xad\xfd\x6b\x1f\x9d\xef\xfa\x64\xcd\xea\x77\x9c\x5d\x88\xfc\x31\x85\x6b\xdb\xd9\x8f\x45\x7c\x91\xfc\x12\xac\xef\x59\x43\x6d\xf8\xba\xf4\x22\x9f\x7f\xb7\xa5\x42\xef\xd3\xba\xce\xcb\x66\xea\x9a\x95\xd1\xd9\x82\x49\xc3\xde\x85\x73\xdb\xb0\x18\x66\x98\x59\x7d\x53\xf1\xd1\x75\x94\x45\x97\xb0\xe0\x2f\xd3\xe4\xfa\xba\x7f\x25\xca\x37\x1e\xba\xae\xf0\xf8\x68\x51\x24\x6f\xa3\x2a\x7e\xec\x58\x6a\xa3\xa5\xcf\xe9\x99\xcc\x06\xf9\xf2\xf1\xd1\xfc\x26\x8b\xae\x93\xd9\x51\x9c\xc6\xc0\xfa\x47\x11\xf4\xb3\xa6\x45\x67\x54\x1f\x43\x02\xba\x48\x9a\xe3\xc0\xe6\xe2\x68\xe4\x38\x73\xdc\x4e\xa9\xaf\x0e\xc6\xfd\x73\xc1\x3b\xb2\x68\x3d\x76\x2e\xf6\xaf\x89\x73\xfd\xa6\x86\xc3\xfa\xdf\x5e\x7f\xf7\xe2\xdb\xa8\x28\x51\x15\x5f\x2f\xd2\xa8\x8a\xc7\xb7\xc9\xfc\x38\xf8\xfb\x0f\x7f\xfd\xfe\xdf\xfe\xf4\xef\xef\x82\xf0\x3c\xcd\x67\x6f\x8e\xff\xe5\x36\x28\x5d\xf0\x35\x38\x3e\x0d\xbe\xa9\xa2\x73\x8f\x68\xf0\x28\xaa\x2a\x2b\x3b\xbf\x01\x53\x0b\xfe\xcd\xb3\x59\x9a\xcc\xde\xc0\xb7\x86\x47\x83\x6f\xae\x8a\xf8\xc2\xbe\xfe\xf3\x8b\xd3\x1b\xf0\xf7\x85\x7d\xf4\x27\xb0\xb7\x7f\xd8\x78\x68\x70\x7c\x7a\x2a\xc3\x53\xa6\x42\x76\x16\x9e\x9e\x32\x1a\xea\xb3\xb3\xd0\x5e\xe3\x7a\x7a\xba\xe6\xf8\x20\x4e\xed\x23\xc1\xa7\xb7\xbd\xba\x84\x84\x41\x1a\x9d\xc7\x29\x7c\x24\x32\x0c\xa0\x87\xb0\x6e\xe7\x94\xa8\x90\xc2\x3f\xf6\x3f\x3a\x14\xb6\x65\xf8\x9b\x9d\x9d\x85\xc1\x22\x2a\xa2\xeb\x18\x14\x7e\x70\x7c\x7a\xb6\x0a\xfb\x8d\x77\x11\x93\x07\x21\xd6\xad\xab\x0e\x1e\x54\xe4\x07\x24\xc3\xba\xef\x53\xca\xc3\xa0\x8a\x8a\xcb\x18\xea\xfe\x7c\x9e\x46\xd9\x9b\xc0\x83\x8b\x18\xc8\x9b\xe5\xf9\x22\xce\xe2\x62\x94\xe5\x45\x7c\x11\x17\x85\x95\x47\x1f\x48\x84\x2d\xc8\x1c\xd4\xe8\xd9\xd9\xbe\x3d\x9d\x2f\xab\xca\xda\x5c\x76\x32\xd7\x5c\x07\xfd\x92\x76\xbf\x32\xe4\xe1\x29\xc3\xe1\x29\x93\x21\xf6\x54\x66\x67\xad\x06\x2c\x3e\x67\xe1\x29\x14\xd3\xb6\x4e\xe0\xb9\xb4\xae\x46\x7c\x35\x7e\xd6\x94\xae\x07\x71\xff\x51\x39\xe0\x55\x54\x3e\x7b\x1b\xa5\xc1\xf1\x45\x94\x96\x71\x18\x2c\x17\x6f\x23\x5b\x20\x00\xf6\x0c\x72\x1b\xc7\xb0\x4b\xc2\xee\xbd\x24\x17\xc1\xd9\xea\x5f\xc2\xeb\xb8\x8a\x8e\x6f\x9d\x02\xb3\x09\x3d\x77\x0b\x0e\x74\x75\x5e\x06\xab\x95\x33\x8a\xeb\x53\x8d\x3f\x97\x71\xd5\x08\xa7\xd7\xf5\x32\xaf\x42\xff\xb5\x5e\xf8\x3f\x64\xe9\x4d\x53\x6c\x3c\x69\x4b\xaf\x2d\x96\x56\x1b\x89\xfa\x21\xfb\x4f\x45\x80\xfd\xa4\x7e\xf9\xfe\xea\xbb\x2c\x1e\x16\x60\x8d\x60\xda\x90\x3e\x44\x87\xa4\x9e\xfe\xed\xf3\x76\xc8\xf4\x74\x29\x73\x8f\x19\xda\x50\x2c\xb7\x55\x74\xe9\x7a\x0c\x56\x87\xce\xd3\x62\x71\x64\x5f\x2e\xfa\x54\xe6\x69\xfe\x9f\xff\x11\xfd\xf3\x46\x14\x5b\x14\x8d\x7f\xba\x29\xf8\x26\xcd\x2f\x93\x6c\x73\xba\x74\x18\xc0\x90\xde\x26\xf1\xbb\x20\x3c\x85\x15\x7c\x16\x9e\xc2\x3a\x5f\x0b\xd6\x01\x89\x4a\xc3\xe0\xff\xfc\x9f\x6c\x34\x82\x6f\x3a\x0c\x6c\xcf\x47\x65\x9a\x57\xbe\x8d\xe0\x1b\x7b\xdb\x24\x08\x89\x2b\x7b\x11\x69\xb0\x77\x93\xae\x51\x82\xc3\xe0\x8a\x04\xb5\xec\x58\x7f\x1c\x39\x7f\xcb\x15\x72\x62\x2c\x3c\x0d\xdc\x0d\xae\xc1\xd9\x59\xa7\x6c\xe0\x24\x4d\xd8\x42\x77\x50\xc0\x84\x87\x8c\x67\xe6\x2e\x7e\x3e\x74\x40\x3a\x0c\xec\x54\x1c\xb9\x9b\xba\xea\x66\x37\xa6\xe7\xd4\x49\xe6\x9e\x50\xed\xca\xe5\xce\x88\xc3\x80\x63\x16\x34\xa2\x96\xd1\x90\x36\xf2\xb7\x81\xee\x49\x80\x7d\x3e\x6f\x17\xc5\xf1\x3f\x0e\x17\xbd\xdd\xd5\xf4\xfb\x49\x5f\xbf\x04\x36\x17\x75\x9b\x19\xca\x5f\x25\x76\x61\x17\x79\xb6\x7b\x91\xff\xf2\x4f\xfe\xd7\x44\xbe\x79\xbb\x45\x18\xd7\x16\xe4\x0e\xa9\x4c\xc2\x60\x9e\xbc\xf5\xf6\x0d\x6e\x2d\x7a\x67\x03\x90\xfe\x4a\x0b\x9c\xc6\xa6\x9b\x1c\xe4\x17\xa7\x5f\xd6\x03\x0b\xb4\x2e\xe2\xfb\xdb\xf8\xbe\x6f\x99\x76\xb9\x2c\x72\xe5\x78\x18\x44\x45\x12\x1d\x39\x1b\x35\x0c\xbe\x2d\xe2\x68\x3e\x2b\x96\xd7\xe7\x3b\x9b\x69\xad\xc2\x9b\x24\x4e\xe7\x5b\xd6\xf6\x79\xd3\x5a\x79\xc8\xfa\x1e\xea\x89\xb4\xad\xa9\xda\x54\xb5\x11\x03\xdb\xd3\xbb\xa4\xba\x3a\xea\x76\x77\xb6\x03\xf7\xed\xf3\xb1\x59\xee\x0e\x11\xb7\xd1\x28\xbb\x83\xf4\xf5\x14\x59\xb6\xb1\xcf\x05\xde\x41\xea\x3d\x08\x7d\xb8\x52\xb8\x1f\x3d\x0e\xa2\xc6\x96\x21\x3b\xf3\xb0\xbc\x93\xbf\xf6\x1a\x78\xd3\xd8\xfd\x47\xde\xf4\x03\x02\x2a\x4a\x8f\x6a\x17\x66\xa3\x2b\xbf\xc2\x8f\x5a\x7d\xde\xc1\x3c\xfb\x13\xf6\xbe\xc4\xdd\xc9\x6c\xbb\x3e\xde\x41\x57\x2b\x1f\xee\x47\xd3\x7d\x06\xbc\xf7\x50\x07\xc7\xb1\x15\x78\xc7\xa0\xaa\x3c\x4f\xcf\xa3\x83\x97\x49\xcd\xc5\x49\xb6\x58\x56\x9e\x8f\x49\x58\xb7\x76\x54\xe5\x97\x97\x7e\x0d\xf3\x90\x87\xc1\xec\x2a\x9e\xbd\x39\xcf\x7f\x69\x18\x7c\x60\x1e\x76\xd1\x68\x2f\xa3\xaa\x67\x86\xed\x12\xfe\x7b\x10\x66\x6f\x1b\x6c\x8d\xf3\x61\x38\x6e\xfc\xdc\x69\xf8\xcc\xf3\xd9\xd2\x45\xf9\xac\x1e\x3e\xd0\xfe\x59\xdb\x1d\x1d\xf3\xa7\xd8\x69\xfe\x64\xdb\x5c\x9b\x26\x4c\x19\x6e\x75\x72\xb6\x64\x3b\x76\xd1\x1a\xb2\x84\x36\xe3\xb7\x77\x5c\xb7\x16\x26\x0f\xfa\x39\x69\x5f\x2e\x83\xfa\xe3\x5e\x06\x55\x3f\xcc\xbc\xd3\x94\x7d\xfc\xdf\xdf\xe9\x85\xfe\xf6\xfb\x61\x53\xd6\x31\x5b\x3c\x6f\xc7\x45\xb7\x5b\xb5\x2e\x28\x48\x70\xcb\x47\x92\x6b\x6b\xeb\xda\xbe\x87\x1f\x7c\x9f\x57\xc9\xc5\x7a\xf3\xf1\xb4\xeb\x59\x09\x1b\xe5\x3a\xb2\x65\xd7\x4e\x94\x2b\x61\xbc\x1a\x7d\x9c\x75\x9b\xf0\xce\xd5\x40\x0c\x72\xab\x6c\xb6\x02\x65\xc0\x06\xef\xc7\x13\x5d\xe9\xb5\x48\xea\x57\x29\xdf\x24\x8b\xa3\x34\xc9\xde\x58\x7b\xc4\xc5\xe2\x70\x27\x16\x47\x43\x1c\x9e\x06\x17\xf9\xcc\xfb\xc3\xed\x10\xdc\x86\x90\xdd\x61\x42\x84\xc1\x37\xd7\xcb\xb4\x4a\x16\xe9\xda\x9c\x38\x8f\x2f\xf2\x22\x3e\x6a\x21\x11\x56\xc5\x32\xbe\x4b\x0c\xdf\xa9\x3b\x6b\x85\xe0\xe2\xa2\xc2\xc6\x45\xd7\x93\x14\xfc\x8f\xa0\x71\xf4\xdd\x3c\xad\x03\x8c\x5e\x63\x35\xe5\x5d\x5c\xb2\x91\x64\x28\x5a\x2c\x10\xa0\xfb\x73\x95\xff\xdc\x68\x8d\x75\xe5\xae\xc4\xa7\x61\x70\x7f\xda\x44\x17\x55\x5c\x7c\x6c\xd2\xf4\xf4\x50\x3b\x46\x71\x9d\xcf\xa3\xf4\x28\x8d\x6e\xec\x2e\xdb\x3a\x70\xd3\xd1\xd0\x1d\x75\xbb\xb6\x07\x44\x48\xc2\xad\xcb\xe0\x28\x8b\xde\xae\x8d\x84\x86\x54\x7b\xd8\x0a\x03\xbe\x21\x0f\x03\x77\x05\x40\x70\x1e\x65\xd9\xa0\xc3\x58\xf3\x79\xb3\xed\xe0\xe2\xf2\xcd\xfe\x08\xee\x6d\x45\x1c\x86\xb6\xec\x3a\x8c\xbb\xf8\xc4\x55\xfe\xf9\x3a\xce\x96\x1b\xf1\x6e\xbb\xc6\xde\xc4\x37\x8b\x22\x2e\xcb\xf5\x32\xab\x21\x27\x76\xf5\xb5\x96\x5b\xab\xd6\x75\xbe\x2c\xe3\xe5\x62\x5d\x69\x99\x0d\xaf\xce\x61\xbb\x51\x87\x6c\x2d\xb3\xb8\x75\x9e\xf2\xeb\xf8\xc8\x39\xc4\xeb\xa0\x0f\xd9\x30\x47\xb7\x5b\x59\x2d\x5e\x6f\x4f\x40\xed\x63\x1f\x40\xb2\xb6\xd8\x74\x55\x71\x53\x5e\xf8\x68\x15\x76\xe6\xf9\xf3\xec\x3f\x92\xf8\x1d\x2c\x2a\x6b\x4d\x25\x99\x35\x7c\xdc\xef\x1e\xb1\xf5\x5a\xb0\xe6\xd9\xb3\xac\xb2\x39\x07\x79\xf6\xec\x97\xa4\x0a\xc2\xa0\xae\xf6\x3a\x4f\xe3\xc2\x9e\x15\x6d\x09\x75\x55\x77\x7a\x16\xf6\x3a\x75\xcb\xb1\x27\xe1\x77\x14\xb7\x56\x5e\xbf\x7c\x4b\xbb\x54\xf9\x02\xb8\x3a\xaf\xaa\xfc\x3a\x08\x83\x34\xbe\x00\xe4\x8a\xe4\xf2\xca\xae\xb1\x23\x82\xc3\xd6\xff\xcf\x9c\xbe\xd8\x11\x0c\xd9\x9c\xe7\x9a\xab\xef\x98\xe7\x41\xe3\xb5\x3f\xbd\xad\x10\x8a\xd8\x7f\x7a\xe1\xa7\xdb\x04\x8e\x8a\x9b\xa0\x27\x74\xf7\x1c\x45\xa7\x8d\xfb\x0c\x67\xbb\x1b\xb5\xd5\xb1\xf0\x6c\x79\x87\xa0\xdb\x3e\xa0\xc1\x38\x40\xdb\x08\x18\x8e\x06\x6c\xa1\x40\xbf\xe2\x5d\x8b\xf6\x70\xdd\xd3\xed\xe1\x23\xea\x64\xb6\x09\x1a\xe6\xd3\x1d\xc3\xda\x3a\x4b\x17\x79\x5e\x6d\xa8\x09\xaf\xa4\x93\xec\x22\xdf\xa6\x2b\x86\x78\xcc\x3d\xc6\xe8\x6b\xed\x89\xc9\x26\x9f\x6d\xba\xb2\x64\x8f\x1d\x48\x7f\xda\x6b\x16\x81\x00\x80\xff\x5f\x2e\x13\x30\x60\x8f\x60\xbe\xe6\x47\x2e\x7e\x9c\x64\x6f\xf3\xe6\x6c\x58\x72\x11\xd8\x16\xaf\x02\x7b\x79\x62\xd0\x15\x87\xe1\x7a\x19\x5a\xc1\x52\x1d\xe8\x51\xf6\x9c\xc9\x34\xae\x46\xb3\xed\x57\xb4\xce\xf3\xeb\xd6\x15\xad\x3f\xbb\x60\x51\x18\xf5\x7e\xa7\xbd\xdf\xe5\x5e\x27\x71\xfa\x1e\xe1\xfa\x20\xce\xfa\x28\x78\x98\xb9\xf3\x37\xc5\xd4\xa2\xd2\xbc\x21\x14\x4d\x93\xad\xc7\x71\xa0\xb9\x76\xd2\x4e\xb4\xf5\x38\x4e\xb4\xe5\x38\x4e\xd4\x3f\x8e\x13\x75\xdc\xaf\x68\xe7\x1b\x42\x2e\xb9\x1f\x66\xd9\x5d\x5a\x3a\xcf\xaf\xed\xaf\xb1\xbb\x64\xb6\x63\x14\x80\xe7\x1a\x23\xb7\x90\xd1\x3c\x29\x17\x51\x35\xbb\x7a\xf6\x36\xce\xaa\x71\x16\xbf\x1b\x7d\x07\xc6\x81\xfb\xe9\x4d\xf8\xc9\x64\x65\xcd\x03\xa8\x58\x6f\x00\x36\x0d\x5c\xc6\xd5\x93\xaa\x2a\x92\xf3\x65\x15\x8f\x03\x9b\x11\x32\x79\x50\xa1\xb2\x8a\x8a\xaa\xfc\x5b\x52\x5d\x8d\x83\xff\x61\x6f\x87\x8d\xd1\x02\x9c\xd5\xac\xf2\xef\x6e\x8d\x3d\xd2\x80\xaa\x6b\xbe\x9a\x4c\x56\xde\x12\xe9\xe0\x78\x9e\x2e\x8b\xf1\x64\xb5\x0a\x93\x69\x3e\x2e\xdb\xd7\x7c\xda\xe9\xf9\xf0\xeb\x43\x7b\xad\x76\x4d\x28\x7b\x83\xe8\x5d\x27\xdf\x76\xd4\x9f\x84\xad\x8f\x1b\x7d\x39\xbb\x2b\x3c\x8d\x0e\xec\xc3\xd5\xdb\xdd\x76\x6d\xd5\x85\xa7\xe9\x81\xad\xd7\x35\x7b\xed\x97\xed\x98\xcd\x2c\xdc\x15\x0d\x5a\x86\xb3\xbb\x73\xd2\xfa\x8e\xec\xa7\xb2\x81\x9d\x26\xd5\xab\xbf\xfd\xf3\x87\x1f\xee\xd8\xdb\xfa\x66\x1e\xa7\xf6\x69\xef\x6f\xca\x2a\x99\xbd\xb9\x39\x7c\xbb\xab\xe7\xc5\xd7\xdb\x5e\xeb\x84\x96\xa1\x3d\x57\xeb\x80\xe6\x8b\x68\x96\x54\xd0\x25\xd9\x08\x12\xd8\x02\x55\x11\x65\xa5\xcd\xb8\x3d\xf2\x68\xf6\xf7\x6c\xe9\x59\x18\x5c\x97\x41\x37\x33\xa6\x9f\x27\x73\x08\x2a\x35\x94\xb5\x92\x75\x88\x77\x97\x06\xfb\xb0\xe6\x00\xe0\x76\x16\x9e\xe2\x4d\x63\xd4\xab\x56\xde\x75\x20\xb7\xe8\xc8\xed\xda\xb0\x51\x84\x91\x7f\x89\xbd\xac\x6e\xac\x62\x3f\x78\x63\x78\x80\x59\x7f\xbf\xfd\x61\x30\x98\xc1\x31\xfc\x54\x16\xcd\xf3\x1f\xfe\xb6\x48\xf2\xe7\x3f\xde\x2b\x3b\xe7\x74\xc3\x45\x3b\x03\xd7\x3e\xca\x2e\xe3\x0d\xf6\x6e\x17\x69\xfc\xdf\x7d\x0a\x79\x97\xb8\x57\x92\xaf\x1d\x28\xeb\x7f\xa4\xf1\xfc\x5b\xff\x5e\x7f\x55\x00\xf6\x21\x10\x36\xca\xe6\xf1\xbc\xed\xd6\xb1\x8e\x73\x72\xd4\x4c\xc7\x51\x55\x24\x97\x97\x71\x71\x04\xeb\x41\xac\x33\x1f\xc2\x3b\x2b\xda\xff\x6c\xab\x55\xbb\x0a\x30\x1e\x30\xa6\x83\xf0\x94\x9a\xb3\x56\xe0\xef\x8e\x44\x88\x7a\x04\xde\xd2\xf3\xf6\x60\xb3\x34\xbc\xe5\xe7\x4c\xa9\x83\x56\x45\x97\x0d\xeb\xe5\x10\x66\x53\xc2\xc2\x62\xca\x68\x18\x4d\x99\x0e\xd3\x29\xc7\x61\x39\xbd\x7d\x1b\x17\x55\x32\x8b\xd2\xe3\xdb\xd3\xf4\xec\xb8\x1d\xa7\x9f\x1e\x91\x3a\x5a\x3d\xae\xfe\x44\x26\xff\x33\xf6\xe7\xee\x57\xa0\x1c\xbb\x45\x71\x13\xd7\xb6\xef\xb4\x7d\x5d\x17\x3d\x22\xc7\xd5\x11\x59\x85\x4c\x0e\x64\x4b\xe3\x55\xc8\xc4\x71\x7b\x61\x34\xc7\x90\xea\xda\xab\x55\x68\x2f\x3d\xcf\xb3\x0a\x50\x5c\xad\xec\xaa\x4e\x3e\x38\xa3\x2b\x9c\xe7\xd7\xc7\xbb\x6c\x5d\x98\x0e\x28\x57\x4f\xd3\xf1\x43\x12\xe6\x45\x02\x1e\xaa\x3d\x33\x11\xd4\x74\x0b\xc2\x37\xf1\xcd\x79\x1e\x15\xf3\x27\xb3\x59\x5c\x96\xb5\x41\xd3\x1e\xaf\xb5\xaa\x7e\x1e\xb2\x6b\x1d\x0a\x65\x5c\xf9\x24\x7c\xc7\x05\x03\x06\xa3\x37\xcd\x7e\x4e\x93\xb2\x8a\xb3\xb8\x28\xd7\x56\x65\x03\xaa\xed\xb7\x9f\x8b\x7c\x59\xc5\xbb\x4b\xae\xc2\x79\x32\x7f\x9e\x95\x71\x51\x3d\x73\x9e\xf7\x06\xc2\x5f\x01\x13\xad\x2b\xfb\x4c\xef\x71\xf0\x3f\xb6\x2f\x95\x3f\x35\x46\x6f\x7d\xce\x3a\x9e\xae\xdb\xea\x59\xa6\xeb\x00\x43\x1a\xcf\xcf\x6f\xc0\x48\xb5\x45\xfd\x72\x1d\xea\x39\xf8\x53\x3c\x59\x85\xef\x92\x34\x7d\xea\x2e\xef\xd8\x86\xfb\x20\xb1\x7b\x14\x44\x45\x7c\x9d\xbf\x8d\xb7\x50\xad\xf9\xba\x0a\xfd\xde\xf8\xf1\x6d\x47\x6c\x75\x18\xf7\x50\xeb\x3d\xac\x9b\xea\xb4\x92\x5c\x8c\x1f\x9e\x7a\x37\xe8\x0c\x25\xd9\x2c\x5d\xce\xe3\x72\x1c\xa3\x37\xf1\xcd\x49\x3e\x8f\x27\xfe\x88\xf2\x83\x18\x95\x55\xbe\x00\xcd\x11\x5d\x46\x6e\xdc\x8d\x4a\x38\x45\x08\xf5\x49\x57\x8e\xff\xe5\x14\x7c\xe7\xff\x77\x1a\xc0\x44\x24\x55\x7c\x1d\x9c\xfd\x4b\xb8\x9e\x9a\x89\x3d\xe1\xd9\x74\x34\x9d\x4e\xb3\xf7\xef\xdb\x3f\x8b\xc9\x2d\xf8\x88\x7e\x3a\xeb\x55\xf1\xb5\x53\x47\xc7\xd5\x29\x3e\x7b\xe0\x78\xb9\x58\x66\x28\x8b\x7f\xa9\xc6\xe3\xc9\xf4\xcf\xb7\xfd\xf2\xf1\x71\x67\x8e\xc3\x66\xc7\x2b\x7e\xf4\x28\xf6\x4e\xc7\x64\x35\x59\x75\xce\x51\x9d\xda\x3a\xad\xd5\x77\x76\xda\xa0\x76\xb6\x26\x49\xdf\x99\xf1\x14\x49\x36\x19\x69\x80\x18\xc7\xb6\xef\x0e\x49\xac\x53\x9c\x3f\x48\x1e\x3d\x1a\xe7\xd3\xca\xbe\x15\xf1\x1c\x24\x6a\x77\xc7\xb1\x16\x59\xd3\xe9\x34\x59\x4d\x26\x93\x07\xd5\xe9\x6e\x84\xc7\x55\x98\x4f\xce\x9a\xb1\x86\x4e\xa7\x0e\x73\x93\x0d\xa5\xc7\xf3\xaf\x6d\x7b\x9e\x0d\x51\xbe\x88\x33\x7f\x77\x8a\x15\x1a\xa7\xf1\xd9\xe4\xb8\x53\x62\x96\xe6\x65\xdc\x2f\xb2\x0a\x2d\x78\x73\xa9\x0c\x2c\x88\xbe\x58\x5a\x2b\xab\x87\xa4\xfe\xda\x9d\xe8\xce\xb4\xfa\x86\x5a\x6b\xbd\x09\xd5\xc3\xe4\x86\x30\x82\x36\x1e\x3b\xba\xc3\x93\x07\xc0\x03\xf7\x64\x6a\xaf\x47\x1e\x3d\xda\x64\x01\xbb\xd1\x71\x0a\x5e\xd4\xb4\xb5\x63\xd1\xae\x8e\x16\x51\x11\x67\xb5\x78\x9c\xec\xb9\xb4\xc3\x2e\x25\xca\x8e\xc8\x6b\xed\x58\x1c\x91\x60\x53\x22\x45\x73\x27\xee\x2d\xaa\x75\xc6\xc0\x78\x12\x82\xe4\x99\xe7\xef\xb2\xe3\x78\xfa\xe7\x5b\xaa\xa6\xd3\x69\xc3\x4f\x7e\x6c\x4d\x87\x9e\xaf\x42\xf3\xb0\x53\x88\xaa\xf6\x6f\xc7\x50\x5d\xc5\xe5\x1b\xaa\x79\xa8\x16\x50\xc3\x9c\xd6\x74\xb7\xa7\xbc\x5b\x4d\x56\xab\x6e\x82\x41\x72\xb7\x3d\xbd\xac\xae\x8e\xe6\x89\xbb\xbc\xfa\x2a\x2a\x2a\xf4\x4b\x9d\x17\xfb\xeb\x19\xd6\x6b\x80\x35\xa1\x5b\x38\x04\x75\x9c\xe2\x38\x48\xe6\xd0\x4e\x9e\x1d\xdf\x9e\xfc\xdb\x93\xef\xff\xfa\xec\xf8\xf4\xd6\x2d\x58\x57\xc1\xbe\xd2\x32\x0f\xc2\x59\x9e\xcd\x8f\xc1\x90\x7b\xed\xae\x86\xaa\xf5\xc8\x69\xe0\x13\x79\x57\x61\x53\x6f\x99\xb5\x6b\x76\x4a\xe6\xcb\x2a\x38\x5b\x9d\xad\xdc\x73\xc3\xe5\xf1\x2d\x74\x7f\x7c\x7b\x68\xf7\xdb\x3a\x5b\x9d\xad\x56\x61\x1b\x72\x7c\xbb\x0a\x3b\xbf\xec\xd4\xed\x3f\x57\xfb\x25\x85\x84\x07\x4e\xfa\xae\x3b\xb1\x42\xfb\xf4\xe8\x83\xcd\x87\xd7\xbe\xa4\x91\xfc\xb1\xd3\x48\x66\xbb\x1d\xe0\xab\x3f\xfd\xfb\xbf\x5d\xe3\x7f\x7c\x37\xec\x00\xbf\x72\xc2\x24\xf8\xeb\x32\x2a\xc0\xf5\x7a\x32\xf3\x91\xf7\x5a\xa6\x05\xde\x31\x86\x7f\x93\xec\x0d\x78\x63\x8b\xa4\x77\xe0\xae\x2c\x66\xf6\x9f\xc4\x9e\x0b\xdb\x3c\x37\x61\x01\x47\x96\x93\x9b\x2d\x1a\xa8\x63\x9d\x47\xee\xf7\x1e\xf6\xc8\x0d\x69\xed\xea\xfb\x48\x51\x6f\xbf\x07\x56\xbb\x4b\x9b\x6d\xe4\x4d\x7b\xd7\xae\xf6\xbc\x9b\xaf\x3b\xd2\xff\xeb\x4e\xd8\x46\x27\xf1\x2f\xb1\x45\xdd\x0b\xb0\xc1\x1e\xea\x43\x0a\x1f\xd8\x3c\x48\xbd\x6d\xed\x5b\x89\x38\xdc\x41\x7b\x6b\xd3\xef\x93\xcd\xa3\x2a\x3a\x72\xaf\xb4\x75\xa6\xc0\x1d\xa2\xac\x23\x1a\xb6\x7d\xd3\xd9\xc5\x3d\x1d\xe8\xbe\xbd\xa5\x04\xde\xbf\xe8\xc4\xce\xdc\x62\x87\x11\x40\xa7\xee\xa8\xc9\x50\x1b\x14\xea\x07\x4e\x7a\x6f\x84\x3f\x76\xf4\xc6\xee\xe8\x6d\x0b\x51\x86\x29\x62\x59\xba\xa6\x87\xe3\x5f\x77\x72\x04\xef\xcb\x94\xf0\xc5\xa5\x57\xe9\xee\xf6\x7a\x13\xbe\x71\x6c\xd2\xcc\x67\x50\xdf\x6f\x38\x4c\x5a\x1a\x4a\x1b\xbd\x8c\xb3\x76\xde\xc3\x9d\x25\x7d\xc1\xba\xb8\x9d\x94\x83\x12\xaf\xda\xdb\xaa\xf5\xd1\x1a\x47\x97\x6b\x90\x03\xb1\x4b\xc7\x6f\xe9\xcc\xfb\x24\xdb\xea\x50\x77\x4f\xe9\x74\x1a\x6c\xed\x47\xaa\x81\x0d\xdf\x9d\x3b\xb1\x7b\x8f\xa0\xa3\xf7\x3f\xce\x18\xba\x4d\x7e\xe0\x28\x36\x4b\xa8\x75\x91\xa1\x06\xe4\x1d\x27\x93\x48\x48\x43\x16\xf2\x50\x1c\x72\x44\x69\xfb\x96\xac\x17\xe3\x75\x50\x2e\x0c\xc0\xe5\x4c\xf2\x65\x2d\x70\x83\xeb\x16\x93\x87\xc1\x3f\x96\xf1\x32\x5e\x87\xf2\x0e\xdd\xa4\xed\x9b\x54\x9d\xcd\xda\xf9\xf6\x8b\x10\x8b\x78\x91\x97\x49\x95\x17\x37\x8f\xf3\x64\x3e\x3b\x5a\x14\xf9\xdb\x64\x1e\x17\xf6\x6e\xc4\xbb\x76\x6c\xbb\xbf\x93\xbd\x76\x70\x9d\x8d\x65\xaf\x8f\x6a\xdf\xa3\xd8\x8a\xbc\xb8\x30\x40\x58\x4d\x2d\x72\xed\xeb\x14\xf3\xad\xfb\xb7\xfd\x97\x71\x7f\xe3\xeb\x14\x9d\x6f\x66\x67\x7c\xda\xdc\x7a\xb1\xaa\xd5\xe7\x78\xf3\x3a\x6e\x5b\xde\x4e\x3d\x72\x0e\x55\x5e\x3c\x7f\xba\xb2\x12\x70\x5c\x07\x4f\x1c\x75\x2f\x1b\x47\xb7\xc3\x3f\xad\x6a\xe0\x1a\x6e\x14\xee\xb7\x1d\x4c\x1e\xc0\x72\x9b\xda\xe0\xc9\xf8\xae\xc6\x5f\xd9\x2b\xc8\xa0\xd6\x24\xf4\xd5\xaa\x47\x8f\xc6\xdb\xba\x69\x15\xb7\xfc\x96\x4d\xd7\xe2\x2a\x78\xd0\x09\xdb\x3c\x74\x2d\x65\xd3\x60\x59\xc6\xb5\x53\x1b\x15\x97\x25\xaa\xd5\xeb\xf8\x16\x34\xce\xf1\x60\x4f\x50\xe1\x66\x61\x1f\x37\x5d\x39\x35\x01\xfc\x54\xb7\x7f\x07\xc1\x96\xd5\xd5\x77\x71\x75\x95\xcf\x83\x89\x77\x5f\x81\xbf\x90\x6f\x67\x7f\x82\xd8\xaa\x9d\xcf\xd6\x54\xdd\x3e\x14\xf7\x15\xf0\xae\x75\x1b\x78\xb8\x61\x3e\x5d\x8e\x93\xf6\xb6\xad\x63\xf7\x0f\x7f\xf1\xb2\xd7\x6c\xcb\xc6\xdb\x63\x9b\x7a\xb8\xea\x24\x4c\xda\x3b\xc9\xbd\x1e\x6a\x03\x6f\x8f\x7d\xea\x81\x7a\x77\xb6\xed\xac\xbb\xf2\xf0\xc6\xa1\x62\xaf\xf5\xa4\x1d\x56\x98\xef\xdc\x03\x9f\x85\xf3\x3d\xf6\xc0\x41\xf0\x5e\xe4\xc5\xf5\xef\x1b\x75\x00\x0c\x06\x63\x0e\x2f\x9f\xbd\x7a\xf6\xba\xe5\xf3\xdb\x2f\xab\xb3\xf0\xd9\xcb\x97\x3f\xbc\x6c\xc1\xdd\xb1\xe1\xcd\xc0\x41\x9c\x55\xc5\xcd\xf1\x69\x30\x4b\xe3\xa8\xb0\x07\xa5\x83\x33\xdb\xf0\xab\x9f\xbe\xfd\xee\x79\xbb\xe5\x34\x8f\xe6\x49\x76\xd9\x0a\x25\xfc\x87\x35\x39\x5b\xa1\x84\xa6\x93\x55\xe8\x4b\x1f\xdf\xae\x42\x0b\x3d\xbe\x8d\x7f\x49\xaa\xa1\x8e\x5e\xff\xe7\x8f\xcf\xbf\xff\xeb\xc0\x10\x3e\x0c\x83\x7d\xe3\x14\x76\x6e\x3f\x3c\x4a\x31\xc0\x22\x77\x95\xae\xa2\xf3\x72\x6b\x40\x03\xbc\x7a\x50\xa4\x36\xa0\xf1\xa0\x7d\x11\xf6\x97\x60\xc6\xff\x0d\xc1\x8c\x7c\x77\x30\x83\x55\xf9\x7f\xbf\xfe\x2e\xfb\xcf\xfd\x82\x19\x27\xc0\x97\xbb\x22\x1a\xb5\x2d\xdb\x3a\x4c\xf3\x3a\x3a\xaf\x9b\x79\x7e\x99\xe5\x45\x3c\xaf\x5b\xf3\x3f\x9b\xf6\xaa\xe8\xfc\xe9\xba\xc9\x6a\x5d\x2f\xcb\x2b\xfb\x0c\xcb\xc0\xc1\x9c\x30\xf8\x66\x6e\x9d\xee\xcc\xde\x44\x09\x7f\x35\x57\xd0\x39\x5f\xbc\x5c\x9e\x5f\x27\x03\xf9\x08\x77\x85\x51\x5c\xfa\xb8\xfb\x78\x76\xb8\xef\x4a\x54\x37\x89\xa0\x76\x1b\xf7\x8f\x0f\xb5\x6f\x64\x70\xb1\x19\x1f\xde\x70\x8e\x3e\xfc\xb3\xbf\x4b\xba\x1b\xa9\x22\x76\xb9\xa0\x3e\x8f\x0c\x70\x81\x15\x07\xf8\xd5\xd7\x44\x34\x64\x1c\x4a\xe1\xa8\x63\x0f\x56\x89\x74\x1c\xb6\xf6\x89\xa0\x0d\xa7\x5b\xd8\xc0\x8b\x93\xc5\x03\xf9\xee\xbb\x7a\xb2\x6a\x69\x57\x36\xc8\x46\x9e\x3d\x08\x65\xa7\x2d\xb6\x84\x3b\xec\x57\x64\xff\x5b\xa2\x8b\xa4\x28\x2b\xb7\x06\x5b\x21\x90\xbb\xb1\xdb\xec\xd4\x77\xb0\x91\x71\xb5\x7d\x6c\x4e\x5f\xf5\x93\xa9\xf6\x8f\x3d\xec\x1f\xd2\x73\x6a\xaf\x99\xa8\x06\x72\x76\x57\xb0\xa7\x8e\x95\x78\xee\x3d\xdb\x1e\x74\x6b\xa9\xe9\xfb\x50\xaf\x37\x65\xed\x6c\x98\x7d\x67\xdd\x5d\x93\x3c\xdc\xc6\xce\x80\xe2\x66\x2a\x5f\x63\x41\xf9\x1c\x3e\xbe\x79\xba\x65\x3f\xb1\x02\x2a\xfb\xe4\xde\xa2\xa5\x45\x3e\x6d\xc3\x25\x65\x3c\x7a\xf5\xea\x87\x2e\xc7\xec\xc3\x27\x4d\xec\xae\x8a\xce\xed\x01\x89\x1a\xdd\xa4\x8a\xaf\xcb\xf6\x85\x70\x67\xdd\xbc\xf7\x01\x19\x52\xdf\x8b\x51\xc6\x69\x3c\xab\x5c\x12\x55\xb0\x25\x66\x0c\x34\x6b\xa2\x76\x35\x7b\x87\xfb\x36\x0a\x43\x1d\x6e\xb2\x2c\xf3\x8d\x43\x92\x7b\x89\x14\x42\xf6\x59\x98\x1d\xf1\xb6\x35\x2a\xba\x3d\x1e\xb5\x4f\x34\xad\x66\xf8\x7b\xf1\x44\x7b\xcd\x84\xed\xab\x89\xf6\x67\x88\x16\x53\xd4\x6a\xf7\xd4\x5d\x4c\xe7\x4e\x49\x44\x69\x5c\xd4\xc7\xdf\xdd\xb5\x81\x07\x63\xdd\x3d\xb8\xe3\x89\xc1\xc2\xd3\xe0\xdb\x7c\x7e\xd3\xc8\x92\x43\x2e\x83\xea\x1d\x05\xc2\x61\xb0\x18\x38\x78\xb6\x49\x29\x27\x9b\xc3\xe0\x7b\x7b\xbc\xff\x1e\xb7\x02\x0e\xdd\x91\x34\x38\x05\x9d\xbb\x92\x0e\xe9\xa7\x35\x2d\x9b\xa3\x2c\xab\x22\xb7\xba\xb3\x19\xaa\xbb\xcf\x7d\x64\x1d\xe6\xd1\x45\x94\xa4\x6e\xcd\xd8\x44\x5a\xa8\x71\x5e\x0c\x1f\xa0\xec\xff\xef\x6f\xf1\xa8\x88\x67\x71\xf2\x36\x9e\x8f\xa2\x91\x5d\xaa\xa3\x8b\x22\xbf\x1e\xdd\xe4\xcb\x62\xf4\xc3\xf3\xa7\x27\xa3\x3a\x02\x38\x3a\x5f\x56\xa3\x59\xbe\x4c\xe7\xa3\x2c\xaf\xa0\xeb\x51\x92\x8d\xaa\x7c\xe4\x71\x79\x97\x54\x57\xa3\xa4\x42\x5b\x16\xc7\x96\xbb\x1a\x0f\xa2\x2c\xf9\x4d\x28\xbb\x39\xc2\x26\x08\x7a\x1f\x12\xbf\xbe\x8a\x7b\x84\xbc\x8a\xca\x51\x11\xff\xb7\x95\x74\xf6\x2e\xf7\x51\x64\xe3\x72\x8e\xfe\x68\xf4\x63\x1a\x47\x65\x3c\xba\x8a\xde\xc6\xa3\x28\x1b\x45\xf3\xeb\x24\x4b\xca\xaa\x88\xaa\xbc\x18\xd9\x74\x13\x37\x3d\xa0\xa7\x46\xd7\x36\x84\x35\x6a\x7c\x2d\x50\xd4\xbf\xe2\x1c\x18\xf3\x1b\xcc\xc1\xab\x57\x3f\xd4\xd4\x7f\x97\x64\xf3\xfc\xdd\xc8\x66\x1f\xdd\x8f\xc5\x37\xe9\xef\xdb\x7c\x17\x95\xbe\xdd\x86\xe4\x55\x71\x33\x8a\x2e\xa3\x64\x7f\x0a\x1e\x38\xb2\x3a\x90\x71\xf8\x30\x82\xb3\xfa\x3a\xba\xf6\xd4\xcc\xe3\x2a\x4a\xd2\xfe\xb5\x74\xdd\x7a\x07\xdd\x83\x79\xaf\x7b\x40\x3f\x51\x21\xf9\x3c\x7b\x1b\xa5\xc9\x7c\xd4\xec\x1b\xde\x8b\x77\x9c\x50\xb4\xef\x21\xc4\xf3\xd1\x3c\x8f\x4b\x2b\x1d\xe2\x5f\x92\xb2\x6a\x18\xc7\x7e\x1e\x45\xa3\x56\x87\x20\x38\x1c\x13\xff\x9a\x22\x91\xff\x06\x74\xfc\x7e\x2d\x01\xcb\x7b\x91\xf1\xfb\x1c\xec\xd6\x75\x23\xa3\xa8\x88\x1b\x89\x15\xcf\x47\x17\x79\x31\xaa\xae\xa2\x6a\xd4\x3c\x2a\xf1\x65\xfd\x6d\x9a\x94\x1d\x4c\x86\x50\xdd\xf3\x0e\xa9\x81\x9d\x4e\xb6\xf7\x25\x8d\x7b\xf4\xb3\xb6\xf6\xf4\xa0\xe9\xeb\x97\xe3\xfe\x46\xdf\xfa\x38\xaf\x77\xc9\x44\x18\x34\x01\x9f\x43\x3c\xec\xed\x37\x09\x5e\x24\x71\x3a\x2f\xe3\x6a\xe0\x44\x70\xbb\xd8\xfa\xe2\x6a\xd1\xba\x87\x80\xb8\x13\x5a\x37\x8b\xf8\x68\x11\x95\xe5\xbb\xbc\x98\xf7\xaf\x91\xf0\x7f\xe3\x81\xe4\x05\x71\x56\x47\x5f\x86\x6e\x87\xb9\xc3\xd8\x6f\xdc\x92\x00\xac\x8a\xa3\x4e\x3b\xfb\x9c\xa6\x87\x45\xb2\x88\xb2\xf6\xb0\x5f\xd4\x8a\xb7\xba\xaa\x4d\xc2\xa1\x33\x5a\x3d\xb6\xac\x1d\xe9\xf5\x15\x20\xb2\x1d\x5f\xda\x23\x24\xe4\xdc\x6f\xe6\xdc\xef\xd3\x7a\x83\xed\xcc\xbb\xe5\xc1\x22\x8d\x66\xf1\x55\x9e\xce\xed\x5d\x0d\xcd\xfe\x9b\xeb\x89\x86\x03\x51\x00\x8b\x42\x9e\x39\x8c\xee\x13\x94\xe8\x47\x14\x7a\x81\x24\x9f\x66\xbd\x0e\xfc\xdc\x37\x52\x74\x8f\x56\x1d\x7f\xbb\xad\x90\x81\xf9\x6e\xdf\xb5\xbd\xa9\x4e\x3c\xdc\xde\xc7\xd0\x7d\x3d\xc3\xf3\x52\x15\x97\x55\x3b\x58\x17\x54\xf1\x2f\xa0\x4f\x1a\xee\xee\xdf\xa7\x41\xda\xc1\x02\xc2\x5a\x09\x57\x35\x3f\x64\x03\xd7\x75\x0f\xcb\xb0\x5f\xd1\x6f\x3e\x74\x59\xed\xef\x4a\x6f\xd5\x3b\x1b\x1e\xf5\xce\x3b\x1e\x3b\xd6\x84\xb5\xf1\x1d\x0f\xde\x75\x9b\xe1\x5d\x12\xfb\x40\xfd\x70\xe0\x0d\x83\x75\x46\xcb\xe9\x3d\x16\x7d\x2f\xc0\x50\x87\x9f\x0f\x8b\x08\x38\x91\xb5\xff\x7d\x81\x07\xd1\x6f\x2d\xf0\x88\x0e\x89\x68\xf1\x79\xbd\x22\xd5\x60\x4c\xcb\xe7\x16\x9c\x35\x8f\x24\xb4\x33\xec\x06\x6f\x1e\xc1\x61\x10\x5f\x6f\xe1\x90\x93\x3c\xab\xa2\x59\xe5\x1d\xbf\x8e\x47\x08\xd6\x93\x0b\x04\xcc\x8a\xd8\xbe\x85\x17\xa5\x25\xda\x36\x73\x9b\x43\xd5\xa1\x09\x09\x0e\x09\x01\x91\xd0\x1b\xf6\xf6\xfb\x35\x76\x2d\xd2\x66\x92\x0f\xd3\xf1\xda\x07\x0b\xfb\xf9\x96\x3b\x77\x7e\xea\x27\x2d\xea\x18\xcf\x3a\x2d\xd3\xfe\x5d\x6b\x44\x17\x3c\x94\xad\x13\x98\x72\x4b\x80\xc8\x75\x73\xe6\x03\x86\x6a\xf3\xe8\xe6\x50\xc5\xc6\x70\x6d\x2a\xea\x2d\x67\x3e\x07\x23\x52\x61\x90\x27\x76\x94\xb5\xca\xe9\x6d\xad\xd4\xda\x60\xdf\x6d\x93\xcd\x0d\x1a\xb2\x19\x4f\xbf\x7f\x78\xfe\x80\x1d\x95\x5d\xea\xab\xb3\xb9\xb3\x23\x44\x7f\xe0\x8d\xe2\x6a\xd0\x96\x96\x83\xd0\x6e\x8e\xdf\x5e\x97\x8f\xd7\x81\xff\x9a\xe1\xd7\xa7\x6d\xfd\x79\xf4\x26\xc1\xaf\x4e\xe1\x73\x89\x7d\xb3\x28\x73\x7b\x9c\x50\x24\xeb\x1c\xd7\x8d\xb3\xb7\xcd\x3d\x2d\xf3\x64\x7e\x94\xd8\xa3\x95\x50\xae\x2c\x93\x4b\xa8\x66\x95\xd4\x7d\x72\x00\xd7\xe9\x0a\x9d\x0c\xc0\xe5\x74\x7c\x57\x3a\x5f\x32\x1e\xef\x77\x07\x4b\xeb\xcd\xa9\xfe\x79\xc9\x5e\x06\x9c\x03\x36\x9b\x22\xd3\xa2\x9d\x1a\x67\xb7\xa4\xba\x2f\x74\x05\x41\x9d\x1a\x67\x99\xad\xb5\x9f\xbf\x06\xfa\xbb\x4c\xfc\x79\x34\x6b\x6e\x34\xc7\xe3\x56\x93\x5e\xf2\x52\xbd\x11\x76\xe8\xf5\x1c\x4d\xd5\xde\x0d\x1a\xc9\xf0\xed\x1f\x87\xde\xcf\x71\xf7\xed\x1c\xcb\x9d\x99\x49\x79\xb8\x3c\x24\x33\xa9\x9d\x48\xf2\x7b\x24\x26\x1d\x01\x02\xad\xec\x24\x9f\xf2\x6a\x93\x7b\x7e\xf8\xf7\x67\xdf\xb7\x52\x78\xdc\xa7\xd5\x59\xf8\xea\xd5\x0f\x2d\x70\x59\xe6\x9d\xdc\x24\x5b\xec\xf8\x76\x15\x96\x65\x7e\xc0\x99\xa3\x45\x91\x5f\x24\x69\xfc\xa9\x5c\xb9\xf0\x7d\xf9\xe6\xcd\xdf\x79\xba\xed\xca\x85\xe6\x9e\x12\x77\x58\x71\xf0\x46\x92\xb4\xb7\x8b\xe9\x47\x18\x9c\x0d\xdf\xc1\xdf\xba\x88\x6c\xd8\x34\xdd\xe6\x24\x7e\x77\x33\x7a\x72\xf2\x62\xf4\xfa\xa0\xc8\xda\x3a\xfb\xf4\x8e\x1b\xc0\x00\x9f\xf9\x76\x7c\x36\x34\x2a\xb5\x5b\xd4\x4d\x6a\x6b\x4b\xeb\xe0\xe1\x12\x20\x4b\xb3\xcb\xea\x0a\x8a\xea\x0d\xf7\x69\x87\x99\x58\x3f\x2c\xb4\x5d\x4d\x94\xcb\x73\xab\x22\x8a\x24\xbb\x3c\x2a\x97\xe7\xee\xaf\x83\xe5\x76\x87\x35\x7f\xb7\x5b\x49\xce\xa3\x32\x99\x1d\xcd\x8b\x7c\x31\xcf\xdf\x65\x47\xf5\xfd\xa6\x03\x6f\x37\x76\x4b\xee\xd1\xc6\xe7\xf9\xec\x5e\x6f\x30\xf5\xb3\x50\x47\x55\x74\xf9\x41\x54\xe9\x34\xf4\x87\x20\x8d\x3f\xe3\xfb\x41\x54\xa9\xdb\xf8\x23\x10\xe4\x43\x08\xf1\xc9\x12\xe0\xc1\x6e\x02\xb4\x1f\x39\x1a\x7e\xef\x66\x4b\xf1\x4f\x75\xbc\x77\x4c\x78\x11\x65\x73\xfb\x68\x6d\x5c\x3c\xb6\x31\x9c\x45\x91\x94\xbf\xae\x8d\xb5\x97\x61\xc1\xfe\xed\xc5\xdb\x4a\xbe\x4a\x07\x0d\x8b\x4d\x43\x02\x83\x93\x04\xca\xd1\xc5\xaf\xec\x81\xbf\xf5\x70\x8e\xd2\xfc\x32\x0f\xc2\xa0\xf9\x1c\x84\xc1\x77\x8c\x52\x84\x8d\x09\x89\x46\x98\x73\x81\x31\x19\x9d\x30\x62\x10\xa5\xc2\xc2\x28\x65\x00\x63\x44\x22\x4e\x15\x80\x8c\xc4\xc6\x81\x38\x22\x5c\x87\x14\x23\x45\x08\x05\xd0\x0b\x80\x61\x22\x01\xa6\x89\x32\x1e\xc6\x90\xd4\x50\x53\x30\xa9\x3d\x08\x23\x66\x7d\xed\x4d\x98\x60\x08\xdb\xff\xf9\xe6\x18\xa1\xa1\xa0\x88\x33\xa6\x3b\x30\x4e\x11\x23\x92\x37\x30\xce\x44\x1b\x76\x02\x18\x2b\x6c\x61\x4a\x1a\x3f\x08\x83\x30\x54\x65\x80\xa4\x1d\x2b\xa3\x04\x31\xaa\x2c\x48\x70\xe3\x6a\x52\x89\x84\xe0\x6d\x18\xa3\x06\x61\xa3\x43\x8e\x91\xc0\xb4\x03\x62\x02\x51\xce\xfc\xf0\x3d\x8c\x0a\xc4\x34\xa6\xbe\x35\x83\xb0\x62\x40\x12\x2e\xa4\xaf\x2a\x91\xc6\x1d\x9a\x0f\x4c\xc3\xdf\x47\xdf\x51\xc9\x91\x51\x24\x24\x04\x19\x45\x5d\x1f\x54\x62\x64\x0c\x09\x09\x45\x82\x4b\xd9\x85\x69\x24\xa8\x76\x34\xa1\x02\xc6\xaf\x07\x61\x94\x20\x4d\x70\xb7\xee\x10\x8c\x29\x24\xb5\x66\x2d\x18\xe3\x1c\xa0\x86\x49\xa1\xa8\x19\x9d\x50\x49\x10\x96\x52\x71\x1e\x72\x82\x24\xa1\x14\x0b\x39\xa2\x92\x22\x65\x94\x00\x12\x12\x42\x39\x66\x6c\x44\xa5\x44\x86\x74\x40\x27\x54\x6a\x24\x0c\x71\x30\x65\xe7\x9c\x2a\x8c\xa8\xb0\xd3\xa6\x99\x91\x0e\x44\xe0\x6f\x00\x51\x43\x84\xc3\x46\x11\xc4\x24\x0b\x99\x41\x44\x43\x55\x0b\xc3\x48\x1b\x49\xa9\x01\x30\xc3\x52\x4a\x6e\x3b\x31\x48\x63\x86\x0d\x07\xb0\xd0\x58\x2a\x62\x46\xd0\xb5\xd4\x54\x2b\x01\x50\xc5\x5c\xbb\x54\x2a\x24\x84\x03\x09\x69\x11\x3a\xa1\x52\x20\x41\xa5\xa4\x1d\x30\x40\xb1\x26\x82\xab\x90\xc1\x9a\x50\x9c\x50\x3d\xb2\x13\x66\x88\xd1\x96\x76\x0a\x0b\x29\x38\x05\xda\xc1\x3c\x2a\xce\x00\xca\x89\x92\x98\xaa\x1a\x4a\x84\x01\x28\x21\x5c\x71\xaa\x1b\xa8\x9b\x0f\xad\x9b\xd1\x72\xc3\x37\x60\x9a\xf9\x25\x54\x4f\x9b\x67\x97\x21\xd8\x9a\x85\x80\xb1\x34\x43\x42\x48\xcb\x6e\x4a\xf9\x71\x2a\x65\x17\x56\x0b\x46\x15\x2c\x71\xdb\x2f\xd6\x8e\x87\x1a\x90\x42\x98\x29\xcf\x56\x1e\xc6\x38\x62\x58\x09\xdf\x9a\x83\x71\x8c\x18\xe1\xbe\x35\x85\x88\xe4\x35\x07\x68\xc3\x47\x80\x87\x14\xa2\x0d\x3a\xa1\x5a\x02\xbd\x1d\xcc\x58\x8c\xa9\x36\x88\x69\x60\x00\x29\xa9\x6b\xcb\x50\x44\xb0\x04\xa6\x53\x42\x13\x87\x86\x21\x48\x68\x03\xf3\x21\x89\x70\x52\x00\x6a\x12\x22\x1d\x43\x30\x57\x15\xda\x97\x16\x24\x95\x93\x51\x80\x86\x31\xc6\x73\x82\xaf\xa9\x0c\x52\x5a\x68\xce\xda\x60\xaa\x34\x12\x18\x6b\xcc\xa0\x1b\xae\x14\x95\x5c\x5b\x28\xc5\x84\x51\x0a\xe2\x40\x4b\xac\x31\xcc\xa4\xd2\x88\x48\xa1\x18\x07\x28\xd7\x52\x4b\xad\x3c\x18\x98\x40\x01\x18\x1b\x41\x34\xb1\xfd\x69\x44\x98\x96\xc0\x90\x02\x61\xaa\x39\x51\x74\xe4\xa0\x12\x13\x03\xd4\x05\xd1\x4b\x08\xf1\x50\xa6\x94\xa5\xb9\x36\x54\x4a\xc2\x7d\xcb\x54\x60\xa6\x00\x0c\xfc\x44\x4d\x0d\xe5\x21\xa3\x08\x5b\xee\xb5\xa4\xa2\x48\x68\x3a\x08\xa3\x0a\x11\xcc\x88\x23\x42\x0d\x23\x08\x63\x27\x58\x81\xa2\x92\x75\x58\x67\x80\x9b\xfe\x3e\xfa\x8e\x69\x8e\x24\x23\x0e\xea\x84\xfc\x09\x53\x1a\x71\xcf\x63\xdc\x71\x05\x53\x02\x51\xd7\x83\x70\x93\x56\x43\x14\xc2\x14\x7b\xa1\xef\x40\x8c\x23\x6a\xb0\x97\xd2\x0e\xc4\x31\xa2\x46\x39\xf1\x0e\xb3\x00\x72\x82\x01\x55\x85\xd1\x7a\x04\x38\x28\xd6\x86\x9c\x30\xad\x90\x30\xb6\x14\xc1\xcc\x55\x34\x20\x9b\x2d\x7b\x71\xb7\xba\x99\x61\x88\x40\x45\x82\x14\xf7\x22\x87\x19\x60\x3f\x01\xf3\x0e\x2d\x39\x24\x0c\x46\x44\x6b\xe0\x10\xaa\x5d\x39\x68\x5f\x32\x2b\x2b\xa4\xf0\x9a\x52\x0b\x10\x92\x16\x64\x9c\x38\x3d\x61\x1a\x23\x0d\x82\x99\xb5\xc1\x4c\x19\x24\xa4\xaa\xd9\x8b\x73\xca\x84\xb1\x50\x2a\x75\xcd\x5e\x54\x69\x0c\xd3\x6d\xc1\x8c\xd6\xfc\x25\x98\x96\xdc\x78\x30\xd6\x35\x7f\x49\x4a\x14\x2c\x2b\x07\x16\x96\xbf\x40\x48\x09\x4e\x84\x76\x4d\x63\x56\xf3\x17\x55\x06\x1b\xdf\x21\xc6\x35\x7f\x09\x23\x25\xf6\x1d\xc2\x8a\xf4\xfc\xc5\x09\xa5\xda\xd4\x60\xe2\x99\xc9\x6b\x64\x03\x0b\x5b\x0d\xc2\x2c\x83\x51\x3f\x8b\x35\xcc\x32\x18\xad\x67\x43\xd5\x72\xc8\xf1\xcd\x00\x2b\x01\x83\x49\x80\x72\xcf\x4c\x8e\x61\x99\x64\x48\x6b\x42\xbc\xf5\xe2\xc1\x00\x25\x5a\xd5\x5c\x4b\xa8\x26\x6c\xc4\x24\x68\x50\x23\xad\xd2\x25\x54\x19\xcd\x60\x8c\x92\x82\x71\xa0\x9c\x68\x25\x9a\x69\x69\xc4\xe8\x84\x09\x85\x0c\xd7\x5a\x58\x13\x48\x2a\x43\x18\xb4\x2b\x24\x62\x20\xab\x31\x12\x4c\x30\x25\xf5\x1a\xc4\x11\x97\x35\xf7\x3a\x98\x00\xa6\xe6\x48\x11\x21\x30\x61\x35\x58\x12\x2e\xc0\x60\xa0\x58\x50\x50\x8a\x0e\xac\xa5\xa0\x0a\xc0\x52\x1a\x2e\xb9\x83\x72\xcc\xb4\xa0\x21\x95\x88\x60\x43\x15\x97\x80\x17\x80\x15\xd3\xdc\x82\x35\x16\x86\x19\x8b\x04\x07\x22\x58\x28\x15\xd8\x30\xa1\x3c\x54\x70\xad\x01\xca\x28\x66\x14\xc4\x94\x05\x73\xc1\x05\x01\xb0\xa2\x82\x11\x5e\x77\xa8\x05\x23\xc6\x4d\x98\x66\xd0\x86\xed\x50\x09\x29\x01\x6c\x10\xe3\x54\x50\xcd\x46\x40\x1e\x49\xa5\xe6\x22\x64\x18\x71\xce\x14\x23\x66\xc4\x24\x46\x94\x2b\x0d\x1a\x8e\x20\xa6\x04\xc3\x12\xc8\x21\x31\x52\x98\x10\x60\x72\x82\x04\x35\x44\x32\x98\x39\x8c\x94\x32\x9c\x10\x0b\x15\x5c\x18\x43\x6c\x13\x5a\x18\x42\x2d\x50\x19\xc3\x61\x20\x60\x8a\x70\x4c\x85\x6d\x40\x62\x41\x29\xa3\xd0\x2e\x81\x25\xc3\x1c\x58\x09\x49\xa9\x94\x0e\x6c\x34\xd3\x4c\x02\xd8\x60\x29\xa4\xf4\x13\x0d\x22\xc1\x58\x1e\x15\x8a\x32\x06\xc4\x90\x0c\x71\x30\x1d\x18\x80\xa9\xa2\x9c\x4a\x60\x71\x09\xfc\x8e\x89\xb0\x60\x41\x8d\x21\xd4\x83\xb5\xe6\x4c\xda\x46\xa4\xc0\xd2\x28\x3b\x40\x01\x72\x8a\x5b\xa8\x92\xca\x18\x4a\x1d\x54\x4a\x4c\x89\x6d\x43\x6b\x46\x24\x56\x0e\x6c\x8c\xa0\x16\x6a\x8c\x12\x52\x58\x3e\x56\xb0\xe4\x89\x08\x19\x43\x5c\x08\xae\x2c\xc7\x2a\xa4\xb8\xd6\x44\x01\xd4\x50\xa5\x38\x96\x16\x6a\xa8\xa0\xc4\xae\x4a\x30\x6f\x34\x70\x11\x40\x25\xa3\x92\x58\x29\xc0\x04\xe5\x82\xba\x76\x8d\xe2\x98\x58\xe1\x40\x08\x67\x4a\x70\xd7\x84\xa6\x06\x84\x91\x40\xc4\x48\x21\x94\x6f\xd8\x60\x46\x6d\x13\x54\x53\x4c\xb4\x45\x58\x23\xd0\x80\xc6\x4a\x23\xc1\x35\x97\x92\x7a\x30\xd1\x14\x68\x21\x90\x66\xc2\x08\x5c\x83\x61\x70\x12\x31\xec\xec\xb9\x93\x36\x4c\x6a\xc6\x19\x1d\x39\x10\x95\x20\x71\xc0\xd3\x90\x44\x4a\xe5\xa1\xc4\x4e\x12\x70\x23\xc3\x9a\x98\xba\x2b\xc6\x98\x6d\x42\x13\xa6\xa4\x10\xbe\x59\xb0\x53\x14\x80\x0d\xc5\x9c\x12\xee\xda\xc0\x54\x2a\x09\x66\x16\xa6\x4c\x58\x91\x6a\xc7\xc6\x85\xd4\xd6\xf8\xa2\x60\xc0\x9b\x9a\x6a\x9c\x28\xe5\x2c\x35\x62\x98\x66\x8e\x6a\x4a\x71\x41\xac\x58\xd6\x82\x50\x2a\x1d\xd5\xb0\xd0\x92\x5a\xc9\xce\x35\x53\x52\x01\xc7\x72\xa4\x41\xe4\x71\xa7\x02\x08\xd8\x9b\x9e\x83\x18\xb8\x50\xce\xee\x50\xcc\x31\x9b\x11\xdc\x28\x57\xd4\x30\x46\x39\x73\x32\x4c\x69\x2d\xb5\x83\x4a\xc5\xb4\xb2\x22\x4c\x12\xa1\x54\xad\x2f\x78\x2d\xd8\x38\x93\x6d\xd0\x09\xf0\x3b\x71\x38\x49\xe9\x9c\x26\x26\x34\xd8\x8a\x60\x04\x31\xed\xb4\x94\x90\x48\x62\x02\xc3\x51\x0c\xd3\x46\x4c\x61\x41\xac\xd2\x33\x2d\xd1\x25\x89\xe1\x52\x03\xd8\x28\x82\xa5\x06\x65\x22\x34\x32\x40\x6b\x6f\x94\x71\xa1\x28\x4c\x22\x41\x54\x61\x43\x9d\xc6\xa5\xd2\x10\xcb\x5c\x20\xe2\xb5\x05\x71\xe9\xb5\x9f\x34\x48\x18\xe6\x2c\xbf\x1a\xca\xc0\xca\x05\xc5\x60\xf5\x2e\x93\x54\x68\xe9\xa0\x9a\x50\x6b\x26\x83\x44\xc7\x82\x5b\x1e\x00\xb0\xe0\x98\x38\x2f\x85\x53\x22\x14\xd0\xce\x82\x8d\x01\x3d\xad\x90\x50\x5c\xf8\x86\x35\x58\xe2\xb6\xac\x00\x95\x28\x84\x83\x2a\xcc\xb1\x85\x82\xc8\xc2\x84\xfa\x86\x0d\x57\xd4\xb6\x80\x89\xa4\x8a\x08\x07\x36\x18\x54\x21\x30\x97\xd0\xe0\x40\x4a\xd7\x9f\x21\x44\x68\xcb\x73\x9c\x51\xaa\x25\x1d\x39\xa8\xe5\x4e\xaa\x89\x36\xc0\xca\x6b\x10\x01\xdd\xe7\xac\x1a\x80\x71\xee\x16\xa3\x60\x44\x31\x4a\x7d\x9b\x98\x08\x98\x31\x86\x38\xd5\x86\x69\x63\x1b\x90\xca\x6a\x54\x2a\xb9\xa1\x02\xc6\x85\xc1\xcd\xb2\xc2\x55\x9a\xda\xc2\xc2\x08\x0b\x86\xa1\x24\x46\x12\x53\xaa\x18\xb1\x8b\x40\x69\x65\xb8\x85\x62\x6e\xb8\xb2\xac\x2a\x81\x02\xd8\x48\x90\xe5\x5c\x73\x4c\x38\x0c\x55\x4a\x04\x72\x0f\x1c\x45\x30\x9b\xb9\x92\xc4\xce\x99\x44\x84\x01\xb7\x51\x83\xa8\xe2\x0a\x24\x23\x00\x31\x14\x16\x16\xca\xb9\x30\x76\xcd\x09\x64\x08\x65\x98\x5b\x28\xe1\x8c\x5a\x85\x07\x72\x91\xd8\x56\x31\xc3\x9a\x62\x2f\x42\x29\x91\x04\xd3\x90\x6a\xa4\x94\xe6\x8c\xd6\x72\xd8\x08\x70\xa4\x28\xd8\x5b\x0c\xdb\x49\x90\x0c\x61\xa9\xad\xc6\x04\xeb\x9b\x31\x2a\x85\x13\xe5\x52\x19\xad\x00\xca\x84\x20\x92\x72\xb7\x0e\x40\x62\x01\x6a\x0a\x69\xca\x15\x08\x46\xd0\x1d\x02\x13\x2c\x24\x40\xa9\xd1\x12\xa4\x17\x40\x19\xc7\x56\x43\x4b\x44\xb1\xe1\x58\x78\x4d\xc5\x08\xe6\xd8\xaa\x62\x23\x94\xe6\x52\x38\x55\xc5\xb0\xa4\x92\x5a\x30\xe1\xd4\x68\xdf\x06\xa6\xe0\xba\x50\x70\x02\xc0\x0f\x74\xba\x0a\xd4\x85\x03\x52\x2e\x35\x65\xae\x61\x0a\xe2\xcc\x00\x58\x70\xaa\x88\xa9\xc1\x8a\x19\xd0\xe6\x02\x51\xa6\x95\x50\x1e\x0d\x2a\x8d\x01\x8b\x80\x03\xbb\x71\xcb\xa8\xb6\x30\xa6\xd4\x1a\x1b\x4c\x6b\xc1\x8c\xae\x9b\xc6\xd2\x15\xc6\x92\x09\xa9\x8d\xc7\x59\x4a\x05\x60\x6a\x4b\x83\x49\x67\x35\x29\xb8\xef\xd6\x02\x93\x4c\x61\xad\x8c\x5d\xb1\x94\x6b\xec\xa0\x1c\x56\xb7\xe0\x8e\xfa\xd2\x08\xa5\x6c\x00\x81\x33\x6d\xa8\xf1\x33\x48\x34\x07\xff\x18\xc0\x54\x32\xde\x68\x4c\x0f\xe2\x9e\x37\xa5\x44\x52\x73\xd7\xa8\x13\x30\xc0\x98\x96\x38\x04\x49\x2d\x4c\x2d\x06\x08\xb1\x68\x62\xa3\x64\xb3\x52\x98\xb1\xe6\x9b\xb6\x36\xba\x85\x61\x90\x5d\x46\x58\xbb\x50\x61\x61\x6d\x03\xab\x05\x14\xc3\xce\x0d\xa6\x42\x30\x66\x1c\xa7\x4b\xed\xcc\x3f\xc6\x08\xc5\x4e\x4e\xf7\xac\x47\xb0\x29\x05\x41\x0c\xd7\x2e\xb4\x8b\x7c\x30\xae\x10\x28\xc1\x21\x18\x48\xbf\x26\xf8\xe5\xeb\x0e\xc1\x5a\x75\xa1\x17\xac\x10\x63\xce\x44\x05\x79\x6c\x4b\x62\x89\x60\x2d\x5a\x03\x93\x49\xa6\x0d\x83\xd1\x60\x0e\xde\x86\x02\x2b\xd5\x20\x46\xa4\xa1\x46\x8f\x18\x86\x2e\x30\x36\xce\xf4\xc4\x8c\x30\xd0\x47\x18\x2c\x28\x1b\x39\x30\x18\x7b\xa7\x05\x63\x24\x29\xb3\xc4\xa4\x4c\x36\x30\xe6\xcc\xde\x66\x3c\xd4\x48\x64\x18\x19\x84\x75\xc6\x83\x31\x32\x83\x20\x58\x09\x98\x7b\xad\x81\x09\x92\x9c\x68\x6a\x2d\x5b\x06\xc2\x8a\x82\x70\xc6\x0c\x49\xcc\xbd\x79\x8c\x39\x55\x02\x64\x13\x16\x48\x0a\x6e\x99\x85\xc2\x12\xc1\x56\xf5\x63\x50\xb9\x96\xd3\x14\xaf\x67\x7c\x93\x6c\x40\x4c\xce\x11\x23\xba\x4b\x4c\xce\x90\xd4\x0c\xe4\x5d\x87\x9a\x9c\x20\xa1\x89\x30\xa2\x43\x4d\x06\xca\x88\xf6\xa9\xc9\x14\x52\x82\x75\xa9\x09\xaa\x06\xcb\x2e\x35\x99\x42\x4c\xf4\xb8\x03\xcc\x33\x2e\x07\x61\x1d\xd2\x31\x30\xdd\x86\x61\x1d\x7a\x02\x4c\xaa\x1e\x4c\x5b\x2b\xda\x09\x21\x06\x66\xa8\x95\xd2\x1c\x83\xcf\x60\x24\xb3\x34\xa6\xca\x50\xcd\x47\x8c\x53\xa4\xa8\x04\x27\x9d\x52\xa4\x8c\x91\x94\xb2\x11\x50\x0e\x8c\x73\xa0\x31\x21\xbe\xd9\x4d\x6a\xfe\x7d\xf4\x1d\x65\x18\x81\x8f\x61\x90\xa4\x00\xc4\x62\xf4\x82\x12\x02\x7e\xc8\x20\xac\x3d\x20\xa8\xcb\xa5\x1c\x84\x31\x8d\x8c\x30\x3e\x7c\x47\x04\x22\x7c\x18\x46\x15\xe2\xca\x45\x7e\x5e\x50\x50\x29\x86\x0d\xc3\x18\x08\x5e\xdd\xad\x3b\x00\x23\x0c\x51\xe9\x83\xcc\xf5\xd8\x86\x60\xad\xb1\x01\x15\xb8\x46\x4a\xb2\x8e\xc3\x49\xb9\x40\xba\x09\xdc\x5a\x18\x05\x03\x0a\x4b\xcb\x62\xcc\x85\xcf\x29\x33\xc8\x8a\x53\x8c\x24\xa1\x3e\x6a\x06\x03\xa5\xdc\xc2\x1a\xfc\x98\x46\xa0\x84\x5c\xd0\xb6\xa6\x95\x40\x6c\x0b\x8c\x53\x24\xc0\x84\x71\x30\x50\xd6\xc3\x30\xca\x11\xd5\x5a\xac\x61\x30\xeb\x6b\xd8\x09\xa0\x6c\xc0\xa5\xa3\x36\x94\xe9\x46\x01\xee\x8a\x8b\x43\x52\xe7\x73\x53\xae\x90\xa0\xbc\x0d\x3a\xa1\xdc\x20\x22\x45\xb7\x98\x41\x46\xdb\xd5\x2c\x14\x13\x1d\x10\x47\x44\xf9\x85\x53\xc3\x00\x5f\xed\x37\x01\xa8\x60\x08\x6c\xb7\x21\x18\xd4\x05\x43\xc1\xf6\x0a\x30\x46\x81\x76\x18\x4c\x5c\xe8\x42\x50\xe4\xbd\x7e\xe1\x89\xbe\x39\x5d\x20\x2e\x28\x41\x94\x5a\xa6\x17\xa2\xde\x2b\xa0\xcc\x86\x1c\x5b\x30\x46\x05\xc2\x30\x7c\x8a\x28\x76\xf2\xa7\x01\x81\x48\xf3\xe1\x55\x0b\x33\x36\x00\x43\x95\x0f\x18\x37\x30\x8d\x18\xa1\x2e\x00\x01\x4c\xa8\x9d\xed\x8f\x75\xb3\xf3\x80\x45\x07\x74\xc2\x40\xbf\x11\x1b\xa6\x16\xac\xd9\x77\x11\x8a\xfa\xf8\xa5\xab\x48\xb8\x15\xdf\xe0\x89\x48\xb2\xde\x14\xa1\x5a\x0d\xc2\x6c\x24\xc2\xac\x37\x45\x88\xd1\x56\x08\x30\xe2\x50\x23\x1a\x49\xee\x84\x00\xa6\xaa\x46\xad\x47\xa2\x3a\x66\xac\x2d\x43\x30\x2a\xeb\xf0\xaa\x42\x4c\xd1\x36\x8c\x6a\x8d\x94\xb0\x5d\x68\x2d\x44\x07\x04\x1a\x8e\xf8\x15\x56\xc3\x34\x52\x86\xd5\x71\x64\x8d\x08\xa0\x32\x04\x5b\xd7\x3d\x69\x60\x14\x1c\x7b\x17\xc1\x55\x06\x29\xd3\xc5\x63\x03\xdd\x3a\x28\xc9\xb5\x87\xfa\x1d\x1a\xad\x11\x67\xa4\x0d\x63\xda\x20\xcd\xb8\x1f\x44\x17\x64\xd5\xb4\x27\x71\x0d\xb3\x08\x7b\xf9\xad\x0c\xa2\x74\x0b\x6c\x5d\xf7\xa4\x81\xd9\x41\x38\xba\x6b\x0c\x7e\x4a\x17\x91\x0d\x7c\x5b\x56\x8a\x46\x92\x51\xea\x44\x6f\x6d\x91\x0c\xc1\x08\xd8\x62\xc6\x74\x2d\x92\x01\x58\xab\xee\xdf\xeb\x5d\xc2\x8b\x24\x4d\x8f\x0a\xbb\x9f\x19\x64\x79\xf6\xcf\xb8\xc8\x87\x12\x85\xee\xbc\x60\xf1\x80\x3c\x9a\x2d\xdb\xb1\xbf\x5f\x32\x4d\x1b\x9f\x4f\x24\xe5\xec\xe2\xb5\xf8\xf6\x1f\xf1\x73\x3d\x9c\x72\xf6\xcd\xbb\x64\x5e\x5d\xb9\xdb\x44\x52\x9b\x82\xfa\x4d\xb9\x3c\xaf\x92\xca\x4e\xe3\x8e\x37\x80\xfa\x2f\x5b\xb6\x87\xee\x8f\x4f\x89\xf0\x94\xb9\xf7\x96\x8b\xcb\x24\x3b\x4a\xe3\x8b\xea\x78\x34\x8b\xd2\xd9\xf8\x28\xa8\x53\xcb\x83\xc5\x2f\xa3\xc7\x23\x3a\x09\xfa\x8f\x49\x35\x69\x69\x6f\x2f\xeb\x03\x61\x1e\x55\xdb\x68\xfd\x30\xa3\xe7\xbd\xab\xd8\xbe\x99\x1a\x06\x82\xd5\xec\xf8\xcb\x75\x9a\xd9\xd4\xdd\xaa\x5a\x1c\x3f\x7e\xfc\xee\xdd\x3b\xf4\x8e\xa1\xbc\xb8\x7c\x0c\x7c\xfb\x18\xda\xdd\xfa\xd1\xd6\x7d\x5c\xf7\x0b\x8c\xdd\xea\x96\x6e\x79\x85\xb5\xb9\xb0\xa0\xbd\xb1\xee\x76\xce\x91\xa2\x76\x0f\x23\x84\x65\x2b\x29\x13\xe0\x34\x9e\x50\x0d\x16\x37\x2c\xac\xf0\x08\x83\xbf\x4b\x98\x32\xdc\x8c\xc0\x49\xa3\x56\x82\x59\xb8\x16\x5c\x0a\x0b\xc7\x88\x68\xe3\xdb\x91\xd6\x1d\xb7\xed\x10\x89\xb0\xdb\x30\x0e\x09\x98\x21\xa0\x71\xc4\x88\x50\x44\xa9\x35\x47\x43\x86\x84\xb2\xaa\x4e\x8c\xec\xbe\xb6\x92\x98\x88\x50\x22\xc6\x8d\xb4\x6b\xf8\x44\x20\x8d\x61\x8d\x13\x11\x1a\x44\x28\x03\xab\x4a\x8c\x18\x98\x0e\x20\x84\x44\x48\x28\x92\xcc\x6d\x8e\x13\xa4\x34\xa8\x57\x80\x4a\x24\x8c\x33\x79\x4f\x30\xa2\x1c\x73\xc6\xfc\x4e\xbf\xe0\xc4\x2a\xbe\x23\x70\x8c\x19\x11\xca\x06\xa4\x39\xd2\xd8\xed\xd4\x61\x44\xa4\xd6\x86\xda\xe2\x06\x61\xd7\x11\x34\x23\x05\x36\xdc\x36\xc3\x18\xa2\xcc\x0b\x69\x44\x04\xc7\x0a\x3a\x65\x36\xe0\x69\xe5\x20\x47\x82\x2b\x87\x20\xc7\x48\x49\x67\x0c\x9e\x48\x64\x38\x11\xcc\x82\x39\xb8\xbe\x16\x4c\x30\x22\xc2\x6a\xc6\x90\x2b\x44\x98\xd3\xd5\x84\x21\x3b\x02\x80\x1a\x44\x88\x47\x83\x28\x24\x85\xdd\xf9\x0f\x05\x41\xd8\x38\x85\x02\xb6\x0b\xb3\x06\x42\x28\x28\xd0\xc9\x99\x31\x12\x61\x65\x65\xbf\x83\x12\xce\x31\x38\xd2\x60\xc6\x52\xd1\x80\xdd\xe6\x23\xd8\x72\x4e\xd7\x43\x7f\xb5\x3d\xc7\x19\x52\x6e\x5f\x3b\xe4\xe0\xcf\xab\x3a\xee\x83\x84\xe0\x0a\xfb\xf8\x9b\x11\x6e\x7c\x6e\x37\xd0\x76\xc8\x89\x0d\x70\x3a\x65\x8c\x30\xb7\x3b\x28\x60\x15\x71\xab\x04\x41\xbb\x21\xa5\xac\x27\x00\x50\xa3\x7d\xf4\x87\x0a\x24\x30\x77\x4d\x30\x24\x7c\xc0\x95\x02\x99\x19\xf6\x50\xec\x91\x23\xc0\x12\x76\xe7\xcc\x46\xfc\x1c\xcb\x5a\xb6\x03\x26\xb0\x60\x8c\x98\xdf\x21\x25\x0c\x09\x66\x35\x17\xa0\x4c\xb4\x33\x45\x08\xd4\x93\x6e\x20\x02\x71\xbf\x43\x78\x62\x90\xa1\x60\x4a\xc3\xac\x52\x24\xa9\x33\x3e\x34\x32\x76\x5d\x10\x1b\x2a\x62\xda\x6d\xa1\xb5\xa1\x40\x70\xe5\x0c\xbc\x36\x98\x22\x25\x9d\x21\xd1\x6a\x98\x18\x30\x45\x4d\x0f\x0b\x22\x91\x72\xac\x33\x3a\x69\xa1\x0c\xdc\x50\xb3\xcb\x7a\x78\x50\x4f\x39\xef\xac\x45\x0b\x82\x11\x67\xd8\x9b\x37\x6b\xc2\x19\x84\x35\xe7\x1c\xd6\x4f\x8b\xc8\x60\x3a\xc1\x44\x02\x74\x3d\x23\x60\x11\x5b\x83\x53\x58\x76\xa9\xa7\xcf\x20\xa9\x39\x38\x40\x62\xd4\x9a\x6a\xf0\x98\x38\xf1\x5b\xa1\x0d\x5f\x10\x86\x98\xd0\xce\xc6\x6c\x71\x91\xb4\x9b\xbd\x76\xc9\x9f\x70\x8c\x84\x8b\x8f\x84\x1c\x61\x62\xa8\x95\x0f\x4c\x82\x0b\x4d\x9c\xd4\x30\x02\x4b\x8b\xc6\x16\x59\xf5\xf7\xd1\x77\x5c\x82\xce\xb7\x5f\xec\x56\x9f\x72\x36\x11\x97\x20\xb9\xa8\x07\x1b\x66\x2c\xfd\xc1\xd7\x71\xe6\xb6\xdd\x27\xe0\xce\x5c\xe4\x02\x09\x2b\x5a\x1c\x17\xf8\xc1\x9c\x00\xc7\x73\xc2\x3c\x58\x31\xc7\x05\x5c\x80\xc5\x6e\xf1\x63\x12\x11\xe2\x1b\xe6\xc8\x08\xa1\x3d\x54\x30\x67\xfc\x9d\x80\x7f\xea\x3c\x08\x1b\xd1\xe7\x0e\x39\x28\x4c\x84\xeb\x0f\xcc\x4f\x67\x16\x41\xc3\x4a\x51\x0f\x55\x52\xae\xb1\x60\xba\x5e\x6b\x44\xb8\x18\x13\xa0\xec\x97\x2b\xd3\x88\x6b\x43\xea\xe1\x49\x37\xdd\xb0\x2e\xa9\x63\x72\x47\x0b\x56\xf3\xbe\x11\x6e\x45\x00\xe1\xec\x54\x58\x7b\x1d\x6b\x97\x5c\xc0\x15\xc2\xdc\xd3\x6d\x0d\x3d\xe1\x0a\x49\xe2\x66\xa5\x5d\x18\x10\x92\x35\x6e\x5a\xb8\x3d\x60\xae\xc1\xea\xae\xbb\xe3\x42\xfb\x19\x81\xae\x9d\x3a\x60\xe0\xe3\x38\xb9\xc3\x9b\xfc\x17\x1b\xda\xf6\x69\x0f\x6d\x28\xd0\xcd\xef\xbb\x74\xc1\x82\xba\xe0\x1a\x37\xa0\x67\x44\x33\x23\xce\xdc\xe5\x1a\x69\xea\x29\x24\x90\x92\x9c\xd5\x58\x08\xad\x9a\xb9\x26\x8e\x44\x5c\x23\x2a\xb8\x68\xf8\x02\xd7\xb4\xd0\xd2\x8b\x39\x8e\x8c\xd2\xb2\xa6\x05\xf7\x0b\x05\x38\x8e\xb8\x15\x6f\x09\x27\x8c\x87\xfa\x95\x34\x1a\xe6\x4e\x60\x5b\xa0\xa2\x4d\x5c\x08\xa9\x42\x42\xd2\x86\x48\x52\x59\xff\x07\xc0\xd2\x07\x8e\x00\x3d\x43\xea\xc2\x9a\x2b\xe5\x7b\x34\xc6\xca\x58\xb0\xd5\x09\xf7\xae\x25\x4c\x95\xb1\x82\xc5\xc6\x98\x7d\x32\x16\x20\x6d\x1c\xe9\xa8\xb6\x71\xdc\x1a\x8a\x2d\x5f\xdb\x38\xb7\xdf\x5b\x39\xb1\x56\xb7\x1d\x16\x80\xa5\x77\x47\x01\xea\x12\xd1\x6c\x0c\x5e\x93\x1a\xda\x08\x56\x8c\xb8\x22\x2d\x2c\x68\x5d\x58\xfb\x94\x3b\x40\x59\x7a\xce\x27\x88\x18\xe7\xd4\x72\xf0\x33\xad\x3f\x0a\x50\x4e\x6b\x3a\x6b\x24\x9d\x2f\x6f\x77\x49\xa5\xe7\x39\x83\xb0\x32\xc6\x43\x95\x6e\xd8\x48\x60\x47\xb7\x16\xf4\x44\x60\x84\xa5\x93\x3c\x16\xec\x16\x8f\xc0\xe0\xb1\xd6\x0d\x0b\xe9\x2c\x05\xd0\xa7\x58\xd7\x65\x89\xc7\xf8\x44\x10\xc4\xb1\x93\x52\x0c\x74\xb9\x0b\x00\x09\x82\x24\x63\xc4\x43\x29\x71\x1a\xc9\x42\x05\x6b\xe8\xc6\x55\xdd\x44\x0b\x4c\x99\x93\x3a\x82\x20\x41\xec\xce\x95\x9b\x11\x5c\x37\x4c\x95\xa8\xe7\xa9\xf1\x7b\x01\x39\x2f\x8b\x60\xae\x89\x23\x91\xc0\x48\x61\x27\x8b\x2c\x5f\x08\xe2\xa1\x8c\x68\x56\xf3\x90\x66\xcd\xe2\x31\x2e\x8f\xce\x72\x1c\x75\x1c\xc7\x0d\xe2\xc6\xca\x30\x17\x8f\x72\x0e\xd5\x30\x77\x5a\x1f\x1a\x61\x45\x1d\x7f\x62\xe8\x51\x79\x87\x16\xd0\xa3\x1e\xcc\x89\xe3\x23\x1b\xed\x93\xc4\x43\x99\x9d\x09\x02\x66\xa4\x26\xce\x8c\x04\x7b\x8c\xfa\x9c\x4d\x0a\x4a\xc2\xad\x1f\x8a\x91\xe2\x3e\x04\x42\x11\xf0\xa1\x85\x12\x04\x1d\x7b\x7b\xc7\x78\x1b\x92\x52\xb0\x07\x7c\x13\x04\x11\x86\x8d\x07\xdb\xc9\x86\xc2\xa0\x66\xfc\x32\x61\xe0\x9e\xd6\x50\xe6\xf2\x3a\xec\x96\x84\x8f\x9b\x9d\x80\x2d\x2b\xdc\x6c\x83\x36\x17\x8e\xa2\xd4\x6e\x5f\xd4\xa4\x23\xc6\x4d\x15\xc5\x76\x73\xd3\xcf\x09\xa5\x44\x37\x58\x78\x55\x05\xb3\x2d\x9c\x2a\x00\x13\x8d\x37\x6c\x44\x98\x6f\x98\x82\x06\xc7\x35\x73\x89\x3a\xe9\x8b\x21\x85\x39\xf3\xac\xc8\x1c\x3f\x00\xe1\x94\x11\x0d\x8f\x63\x1f\xac\xb2\x3b\x55\xbc\x07\x85\x19\xe1\xce\x7a\xea\x14\xd6\x30\x67\xa2\xe6\x71\x52\xe7\xa2\x21\x53\x77\x67\x37\xdf\xfc\x1e\x27\x46\xc6\x6b\x13\xaa\x91\x31\x3e\x88\x44\x90\x10\xaa\x96\x50\x42\x38\x8b\xb7\x0d\x95\x08\x4b\x52\x87\x6b\xd6\x60\x8e\x0c\xf7\xc9\xa8\x04\x51\x6f\xef\xc0\x8c\x78\x0a\xd9\xdd\x3e\xa7\x8f\x28\x45\x86\x0a\x3f\x23\x06\x19\x2d\x6b\x0e\x30\x3e\x6e\x45\x0d\x22\x1e\x65\xe0\x0b\x55\x67\xc6\x0d\x71\x27\x48\x5b\x86\x8c\x97\x03\xd4\x6e\x95\x3a\x22\x81\x89\xe9\x55\x2e\x55\x88\x7a\x5b\x8a\x33\x44\xbc\x0a\x04\x28\xf3\x42\x8a\x22\xc5\x78\xcd\x03\x4d\x96\x2e\xa7\x88\xd5\xac\xa8\x10\x33\xde\x01\x20\xc8\x70\x5c\x17\x96\x98\x18\x0f\x95\x9c\xd6\x58\x18\x8c\xbd\x4a\x22\x88\x71\x56\xf3\x11\x31\x6e\x6d\x73\x30\xab\x7c\xc3\x1a\x09\xe5\xac\x4d\xb0\xab\x85\x5f\xf1\x30\x27\xd4\xaf\x6d\x8c\x8c\x72\xac\x41\x0d\xd8\xb1\xa2\x2e\x4c\x74\x2d\xc6\x35\xf3\xba\x95\x20\xa2\x4c\xcd\x89\x94\x8a\x16\x16\xa4\x66\x45\x49\x1c\x83\xda\x9c\x58\xaf\x18\x31\x32\xdc\x6b\x78\x02\x62\xbc\xe6\x4f\xa2\x9d\x40\x3b\x71\xd9\xcb\xb4\x96\xe3\xb5\x62\x04\xd3\x4d\xd7\x9c\x28\xfc\xc2\x06\x22\x0b\xdc\x87\x9e\x58\x53\x51\xf2\x7e\x61\x8e\xa8\x30\xa4\x5e\x0f\x44\xd5\x36\x97\x14\x86\xd6\xb8\x11\xc5\x6b\x83\x09\xaf\xc1\x82\xb8\xdc\x3a\x30\xa3\x74\xb3\x2a\x8d\xe2\x6a\x13\xca\xb1\xcf\x8a\x6b\x83\x35\xb0\x5f\x6d\x73\x11\xa1\x4d\x33\x23\x9c\xd7\xc6\x9c\x93\x61\x4e\x0a\xd4\xd2\x96\x23\x69\x70\x23\x9a\x95\xb7\x34\x39\x62\xde\x34\xa2\x36\x8b\xaf\xa6\xc5\x00\x77\xf6\xd8\x16\xc4\x03\x66\x1b\x6c\x8b\x91\xf0\x8e\x48\x9b\x6d\x71\x93\x5a\xdd\x66\x5b\x8c\x24\xd5\x66\x83\x6d\xd7\xe9\xef\x6d\xb6\xc5\x76\x67\xbf\xcf\xb6\x04\xd1\xda\x15\x6d\xb3\x2d\xa8\x32\x42\xfa\x6c\x4b\x90\x36\x84\xf5\xd9\x96\x22\x86\x05\xd9\x60\x5b\x10\xf4\x4e\x60\xb7\xd9\x16\xc6\xa4\x4c\x8f\x6d\x29\x38\x46\x4a\xf7\xd9\x96\xda\x94\x22\xd9\x63\x5b\xca\x11\xf5\x7b\xb5\x2d\xb6\xa5\x1c\x71\xe7\xbf\x74\xd8\x16\x44\x2c\x35\xb2\xc7\xb6\xa0\xb1\x04\xd7\x3d\xb6\x6d\x41\xdb\x6c\xdb\x2e\xbc\x66\x5b\xca\x91\x15\xa5\x5d\xb6\x05\xdc\xa8\x31\x7d\xb6\x05\xa1\x48\xbd\x03\xde\xe2\x44\x86\xa8\x56\xa4\x0f\x05\x34\x09\xdb\x60\x5b\x8a\xa8\x69\x1c\x96\x86\x6d\x09\xd2\x35\x33\xb7\xd8\x96\x20\xc1\x6a\x6f\xa3\xc5\xb6\xb0\xb2\x05\xed\xb3\x2d\xf0\x05\xd1\x7d\xb6\x5d\x73\x67\xcf\xb6\xc5\x88\x69\x2a\x36\x6c\x5b\x8c\xb8\x74\xca\xa0\x6d\xdb\x62\x24\xa5\x26\x7d\xdb\xd6\xee\xf0\xf3\x0d\xdb\x96\x20\x2a\x3d\x9d\x5b\xb6\x2d\xf0\x2a\x37\x7d\xdb\x96\x02\xfb\xe9\x0d\xdb\x96\x22\xae\xa8\xec\xd9\xb6\xa0\x7c\x30\x91\x3d\xdb\x16\xa8\x6f\x08\xef\xdb\xb6\x94\x21\xb9\x36\x84\x6b\xdb\x96\x82\x3f\xeb\x17\xcf\xda\xb6\x85\xd9\xe6\xf5\xfa\x5b\xdb\xb6\xc0\x8a\xda\xa9\xdc\x96\x6d\x0b\x0c\xe3\x6c\xd4\xb6\x6d\xdb\x82\xb6\x6d\x5b\x0b\x76\xca\xab\x65\xdb\xda\xa4\x0a\xac\x7b\xb6\x2d\xac\x12\xed\x96\x7b\xdb\xb6\xa5\x76\xb3\x41\xf4\x6c\x5b\xca\x10\xe6\x2e\x60\xd3\x36\x62\x81\x6e\x5e\x3d\x77\xc1\xd8\x05\x1b\x3a\xb6\x2d\xcc\x88\x3b\x96\xd1\xb6\x6d\xc1\x98\x33\x6a\xc3\xb6\xc5\xc8\x30\x6d\xfa\xb6\x2d\xf0\x85\x53\x5e\x6d\xdb\x16\x23\x81\x39\xde\xb0\x6d\xb1\x4d\xea\xec\xdb\xb6\x60\x7f\x62\xda\xb7\x6d\xd7\xdc\xe9\x22\x09\xde\x02\xb3\x5b\xa9\xb8\xd6\xad\x12\x24\x8c\xac\xc1\x9a\xd7\xca\xc0\x38\x2b\x07\xa0\xbc\x76\x43\x44\xed\xa7\x00\x54\x69\x29\xea\x85\xc9\xbc\x23\x49\x38\xc2\xeb\x26\x88\xf4\x91\x1c\x8e\xb8\x37\x4c\x6d\x18\xc0\xc9\x01\xc2\x91\x56\x35\xdb\x72\xb0\x7d\x5c\x30\x55\x20\x6a\x9a\xc8\x05\x66\x4e\xc2\x10\x01\x82\xa0\xd1\x6a\xd8\x09\x29\x02\x0e\x31\x69\x61\xe1\x3c\x62\x22\x81\xa5\x6a\xc5\x28\x99\x33\x09\x89\x44\x9a\xf1\x3a\x50\x62\xb4\x33\xc6\x88\x42\x58\xd6\x6c\x2b\x11\x63\x4e\xf3\x10\x85\x18\x76\x96\x1b\x10\x8e\xbb\xf8\x09\x51\xe0\xbf\xd5\x1e\x27\x51\x9e\x6e\x6b\x28\x2c\x1e\xe5\xce\x5d\x74\x0a\x6b\x30\xee\x89\x87\x52\xec\xf6\x93\x60\x95\xb8\x63\x48\x16\x37\xbc\xf6\x64\xb0\xc6\xcc\x83\xb9\xdf\x56\xe4\x06\x14\x0b\xf6\xb4\x68\x3c\xce\x0e\x94\x9a\x5a\xf3\xb4\xc0\x36\x46\xd3\x04\x23\xfc\xfa\xb3\x33\x82\x6b\xef\xdb\x78\xa3\x99\x70\x44\xb0\x0f\x55\x72\x0d\x7a\x93\xd4\x73\xed\x44\xac\x5d\xef\x2e\xe4\xe8\xf8\x42\xd4\xb4\xb0\x19\xf7\x3e\x30\x46\x79\x13\x55\x11\xc6\xa9\x6c\xc2\x10\x91\xb4\x21\x9c\x34\x0d\x94\x3a\xb9\x3a\xcc\x9d\x87\xee\x72\xdd\xb1\x25\xa0\x41\xb3\xda\x19\x09\x0d\xc2\x14\x9c\x5d\xcd\x47\x27\x4a\xd4\xab\xa7\x0d\x56\x04\x29\x2f\xcf\x09\xb5\x09\xcf\x80\x51\x1b\xaa\x91\x24\x3e\x37\xb3\x05\x66\x0c\x09\xea\xd4\xb7\x03\x73\x6e\xd3\x3d\x19\xd2\x40\x5b\x39\x3a\x51\xa0\xa7\x38\xa5\xc4\x9d\x42\x30\x54\x1b\x4d\x46\x4a\x20\x2e\x09\x25\xc4\x9f\xb7\x02\x1b\x81\x8d\x5a\x28\xb7\xa0\x27\xda\xe6\x38\xd2\x06\xec\x26\x58\x1b\xc0\xc8\xce\x0e\xe8\x77\x6f\x23\x19\x8a\x84\x4b\xca\x02\x28\xa6\x3e\x59\xc6\x10\xa4\xa5\xaa\x23\x7d\x12\xbb\x55\xfb\xc2\x80\xd1\x22\xb1\x50\x36\xa7\x57\x49\xe6\x8e\xbf\x68\x8d\x84\x81\x45\x6e\x77\x02\x88\x04\x05\xce\x46\x5a\x22\xa2\x8d\xa1\xd4\x9e\x3a\x63\x9a\x73\x4a\x2d\xce\x4a\xf9\x88\x15\xac\x01\xef\xf6\x29\x83\x38\x71\x1a\xab\x05\x56\x1a\x61\x46\x9d\xa5\x2c\x90\x71\xd1\xa4\x0e\x94\x22\x5e\x67\xbf\xb4\xc0\xc4\x20\x45\x5d\x4c\xc8\x81\xb9\xa4\xda\x82\xb9\xd1\x5a\x69\xe8\x50\x23\x6c\x84\xb4\x99\x3e\x12\x11\xc6\x34\xd5\x23\x65\xc0\x78\xa4\x58\x2a\x60\x77\xe5\xb6\x0a\xda\x28\xb7\xa0\x40\x66\xee\xb5\x37\x80\xbd\x37\xa8\x0d\xb2\x11\x11\xb7\xe8\x30\x73\xbb\xc8\x2d\x7a\x12\x81\x84\x53\x31\xa3\x17\x2d\xea\x13\x8c\x88\x37\xee\x2d\xf5\x29\x97\xd8\xd0\xd0\x20\xc3\x19\x17\x52\xd1\xd1\x09\x34\x8d\x85\xc2\x0a\x58\x91\x31\xaa\x09\x11\x12\xc8\xcc\xa8\x54\x54\x38\x06\x15\x18\x53\x6a\x46\xc3\xdc\xfc\xf7\xd1\x77\x44\x51\xbb\xff\x4e\x34\xe2\x9e\x33\x5e\x10\x29\x6d\xd2\xc3\x26\x4c\x68\x6d\x13\x61\x29\xd7\x84\xd2\xd1\x09\x40\x89\xe0\x46\xd8\xdd\x1d\x66\x94\xa0\x42\x8c\x88\x54\x48\x12\x56\x9f\x19\x74\x92\x98\x28\x70\x80\xdb\x90\x13\xa2\xb8\xcd\x54\xe1\x14\x19\x51\x97\xd2\x36\xad\x14\x98\xcf\x49\x89\x11\xd1\x04\x51\xc6\xec\x79\x4d\x1f\x1f\x7e\x01\x30\xcd\x68\x27\x0f\x89\xc0\x04\x70\x36\x08\xeb\x8c\x44\x83\xaa\xd3\x83\x30\x9b\x31\xef\x03\xd6\x80\x0a\x71\xe3\x65\xcc\x6d\xa8\x10\x58\x77\xee\x3c\x20\xa5\xce\xff\x83\x31\x60\x2d\xdb\xa0\x13\xa0\xa9\x34\xbd\x62\x8e\xcc\x3e\xdf\xb8\x03\x02\x59\xec\x79\x76\x60\x36\x60\x8e\x30\x30\xbb\x01\x75\x60\x88\x77\x30\x8d\x46\x54\x11\xc3\x15\x69\x83\x8d\x40\x4a\x03\x7b\x38\x03\x57\x10\x23\x38\x03\x28\x17\x44\x1a\x6e\x33\x62\x19\x13\x1a\x4b\x3a\x7a\x01\x60\x2a\x94\xe1\xee\xb0\x88\xd2\x5c\x29\x3e\x3a\xb1\x60\x2a\x8c\xb1\x89\x1a\x5a\x50\x81\xb5\xb6\x6d\x10\x63\x6c\x16\x86\x44\x86\x4a\x29\xa4\x74\x50\xa5\x85\xb0\x29\x5c\x18\x63\x83\x85\x71\x2d\x93\x26\x48\xcb\x79\xcd\xc7\x6b\x30\x08\x3e\xed\xdc\xed\x17\xbe\x11\xc6\x6c\x60\x18\x33\xa2\xb1\x70\x78\x08\x41\x0c\x17\x36\x8d\x4c\x69\xa2\x35\xf4\xa8\xc0\x6e\x97\xda\x65\x9b\x6b\x17\x44\x76\x04\x22\x6d\xd0\x09\x21\xd6\x11\x91\x46\x75\x4a\xc2\xe2\x16\x9a\xba\xd8\x3d\x97\x4a\x72\x6a\x81\x9c\x51\x02\xd3\xc8\xc1\x9e\x53\x98\xcb\xd1\x0b\x0b\x16\x14\xf3\x0e\x5a\x0e\x2a\xb9\xb2\x19\xdd\x5a\x33\x26\x05\x73\x4d\x08\xad\x84\xdd\x12\x05\x37\xd3\x10\x0f\x34\x9d\xc1\xd6\xb0\x36\x5d\x1c\x4c\x71\x61\xb3\x9b\x29\xa5\x84\x09\x5d\xf7\xc4\x18\x51\x8e\xe4\x20\x8c\x85\x6b\x94\x63\x65\x24\x40\x25\x65\x92\x73\xdf\x15\x31\x98\x09\x77\x1e\x48\x69\x2e\x99\x6b\x99\x29\xc3\x84\xcd\x37\xd4\x5a\x52\x4a\x05\xb4\x2c\x90\x21\xda\x9d\x42\x15\x52\x10\x42\xcd\x88\xd8\x7d\x2a\x41\x68\x87\xa3\x06\x78\x0f\x38\x52\x70\xc4\xb8\x00\xa8\xd6\x4a\x0a\x02\x8d\x82\x97\x21\x58\x1b\x46\xc0\xce\x22\xc6\xa6\x76\x51\xe7\x31\x34\x20\x0e\xa5\x3c\x4d\x1c\x4c\x1a\x9b\x2a\x4d\x18\x67\xc6\x28\x0f\xa6\x42\x61\x66\x0f\x4f\x11\xac\x8c\x66\x1e\x0c\x96\xb1\xdb\x65\x94\x9c\x28\x06\xbd\x0b\xb0\x4d\x95\x62\xf6\xf0\x14\x53\x5a\x72\xdf\x1b\xe7\xc6\xb8\x5c\x70\x82\x25\x23\xdc\x43\xb5\x70\x87\xa7\xa8\xa6\xdc\xd0\xba\x3f\xc5\xb5\xf6\x19\x4a\xd4\x50\x23\x7c\xcb\x1a\x63\x23\xdc\x32\x21\x94\x29\x3f\x34\x2d\x14\x75\xab\xc4\x1e\xf6\x74\x40\x43\x34\xb1\x73\x63\xb0\xa0\xc2\x48\xd7\x30\x67\xcc\x62\xa1\x10\x35\xc0\x76\xc4\x35\xac\x08\x27\x9a\x85\x14\xfc\x1a\x4d\x19\x63\x23\xc2\x25\x08\x4f\xca\xa4\x8d\x83\x52\x2c\x09\x05\xa8\x8b\x96\x13\x77\x4c\xca\x30\x2c\x35\x34\x6c\xcf\x8a\x68\x2a\x00\xaa\x85\x12\x52\x02\xc6\xc2\xd2\x1b\x2b\x77\x4a\x4a\x0a\x2d\xb8\x1a\x01\x94\x49\x29\xfd\x49\x51\x22\x60\xb5\x03\x50\x31\x45\x9c\xee\x24\x56\x6b\x99\xd1\x0b\x22\x08\x62\x84\x28\x66\xc1\x8c\x11\xa6\x09\x88\x7b\x70\x66\xb0\x91\x5c\x5a\xb0\xa6\x46\x08\x68\x83\xc0\x38\xac\xf2\x65\x9c\x11\xce\x2c\xc8\x50\xbb\x65\xcc\xb5\x3f\x93\x4a\x04\x45\x14\x0b\x21\x6c\x9b\x42\x70\x77\x82\x0c\xc0\x0a\x1c\x20\xdb\xa6\xd4\xc6\x30\x01\x34\x13\x60\xd9\x71\x7b\x2a\x9f\x22\x4d\x99\x62\x84\x38\xb0\x64\x8c\x32\x0b\x36\x42\x32\xe0\xfe\x13\x22\x40\x8b\x52\xea\x04\x8b\x62\xb0\x14\x47\x44\x48\x84\xc1\x54\xd1\xb0\x80\xed\x81\x0c\xae\x2d\x94\x10\x2a\xb1\x3b\x9b\x2b\x18\x28\x15\x68\x18\xb8\x06\x73\x4d\xdd\x2d\x00\x52\xd2\x35\xd8\x08\xac\xdc\x7e\xa8\x36\x44\x79\x28\xb7\x25\xa5\x24\x5e\x85\xd8\x92\x8a\x72\x5b\xd2\x68\x61\x94\x96\x1e\x4c\x09\x35\x4e\x71\x6a\xa6\x8d\x34\x80\xb0\x3f\x6b\xc1\xdc\x5e\x1f\x58\x7e\x40\x49\x81\x04\xc7\x1c\xe6\x48\x23\x4c\x14\x25\xdc\x8c\x60\xcc\x8a\x13\x49\x6d\x1a\x22\xc1\x8a\x71\x23\x1c\x29\x18\xa6\x8a\xdb\xc2\x84\x12\x0c\xbc\x6d\xc1\xd8\x1d\x6d\x25\xd4\x2b\x0b\x98\x65\xc9\xdc\x66\xa3\x0f\xcb\x12\x70\x33\xdc\xf6\xaa\x8b\x94\x59\xe6\xd5\xd2\x1e\x60\xc7\xda\x6d\xb0\x5b\xce\xc5\xdc\xd8\xfb\x00\x8c\xbf\xb4\x00\x60\x52\x51\x6e\xec\x89\x6d\xad\x15\x07\xbb\x18\xda\x23\x30\x08\x6e\x15\x30\x33\x92\x09\xc7\x5d\xd2\xd4\x87\x88\x38\x93\x94\x11\x3b\x1e\xd6\x08\x70\xe2\x31\x34\x48\x52\xa5\xb5\x6a\x83\x89\x24\x48\x68\xc6\xa5\x01\xed\x6f\xc0\x08\x32\x74\x44\x24\x45\x98\x61\xaa\x2d\xae\x5c\x70\x2d\x30\x0c\x1c\xc0\x8a\x0b\x7f\x38\x8c\x83\xa3\x02\x16\x0a\xb5\xc2\xdf\x1d\x3b\x33\x84\xda\xe3\x2b\x16\x0a\x66\x99\x3d\xa2\xa6\x14\x23\x46\x19\x0b\x25\x58\xda\xd3\x5a\x76\xb3\x92\x50\xe2\x1b\x26\xf6\x18\x86\x9d\x42\xcc\xb0\x34\x35\x98\x19\x2c\xfc\xae\x2a\x15\xf6\x48\x9d\x05\x73\xe2\x4e\x01\x39\x0b\xe6\xa4\x05\xe3\x42\x4a\xa2\x89\xeb\x8b\x63\x4d\xad\xd1\xc1\x94\x64\xd4\x98\x1a\x0a\xeb\x0b\xac\x02\x45\x08\x93\x75\x4f\xe0\xfd\x00\x23\x4b\x42\x05\x51\x35\x02\x44\x59\x83\x9a\x23\x62\x8f\x99\x12\x4f\x07\x23\x24\xb7\x8a\x47\x69\x26\x99\xd2\x1e\x2c\x05\x83\xd2\x0c\x71\x4c\x95\x31\xbe\x6d\x6c\x4f\x95\x02\x18\x73\x6a\xa4\x95\x85\x92\x20\xa3\x98\x32\xee\xdc\x23\x66\x58\x59\x29\x2b\x09\x92\xc2\x10\x77\x36\x14\x14\x31\x37\x7a\x44\x24\x46\xca\x60\x82\xed\x39\x52\x63\xa7\x11\x64\x80\x06\xcf\x9a\x73\x1b\x50\xc6\x1c\x6b\x42\xac\x68\xd1\x08\x08\xa8\x6d\x5a\xa5\xd6\x98\x70\x6c\xb9\x59\x21\x89\x05\x76\x60\x45\x8c\x31\xc6\xf2\x85\x4d\x53\xb6\xc7\x4a\x34\xc8\x3d\x6a\xac\x28\x03\xed\xc9\x18\xb7\x39\xa7\x12\x6c\x11\xed\xa0\x4c\x62\xab\xec\x34\xb0\xa0\x82\x26\xec\x0a\xd4\x5c\x10\xaa\xdc\x41\x23\xcd\x35\x17\x0e\x4c\xc1\xba\xb0\xe7\x8f\x18\x11\xd8\x1e\x8c\x81\x25\xa8\xb0\x12\xae\x43\xc2\xb5\xa0\xd4\x41\x61\xae\xa8\xb5\x73\x8c\x52\x4a\x59\x0b\x41\x80\x61\x20\x24\xb1\x77\x28\x28\x4c\x09\x33\x5e\x76\x71\xca\xa4\xb2\xe7\xa3\x05\xa3\x82\x52\x0f\xc6\x8a\x48\x62\xd5\x00\xa7\x12\x04\x3a\x0c\xd1\x5e\x61\xc2\x95\x33\x0a\xb0\xd6\xc4\x00\xf5\xa8\xdd\x72\x72\x87\xf8\x99\x21\x82\x4a\x0f\x05\xa6\xb0\x69\xf4\x4c\x71\x86\x9d\x90\xa1\x48\x52\xac\x89\x33\x20\x14\x11\x9c\x6a\x27\xae\xa5\x22\xdc\xa5\xeb\x1a\x42\xb9\x16\x56\x34\x73\x22\x84\x53\x67\x82\x4b\xc9\x89\xb4\x50\xc6\xb5\x72\x29\xd1\x4a\x70\xa6\xad\xae\x05\x30\xe3\x4c\x59\x15\x2c\x88\xc4\x92\x6b\x0f\xa6\x4a\x0a\x7b\x3d\x0a\x15\x14\xc8\xde\x80\x99\x70\xa1\x5f\xca\xed\x89\x3d\x8b\x06\x13\x42\xc3\x04\x30\xc4\x99\xc1\x5c\x39\x3c\xb4\x20\x8c\xd8\x03\x2d\x5a\xb9\x58\x2c\x50\x94\xe3\x0e\xc8\xca\x4a\xc9\xec\x69\x07\xe3\x83\xb3\xc0\x44\x5a\xba\xa0\xb8\x8b\x0f\x58\x59\x81\x85\xed\xa2\xde\x8f\xb0\x5c\x2c\x8c\x3f\x53\xe4\x53\xe6\x81\x59\xc1\x3c\x71\x87\x73\x84\x20\x44\x58\x4f\x46\x68\x50\x43\xca\xe6\xe6\x13\xcc\xb1\xc4\x4e\x57\x08\xee\x02\x31\x5a\x13\xe9\x34\xe6\x86\xe9\x03\x06\x91\x51\x48\x91\x10\xfe\xc3\x84\x4b\xd8\x25\x06\xd6\x0a\x0f\x35\x12\xcc\x6e\x03\xb4\x60\xce\x47\xf1\x7a\xd1\x55\x1d\x00\xb5\x5a\x83\x2e\xac\xf4\xb0\x1d\x1b\xea\x53\x0b\x08\xa8\x72\x7f\x16\x4a\xbb\x0d\x22\x02\xcb\xc7\xb9\x37\xc6\x25\x61\x8c\x08\x4c\xa9\xa2\xfe\xda\x1a\xdf\x05\x58\x5a\xba\xf6\x34\x3c\x69\x28\xb8\x58\x43\x20\x87\x5c\x0d\x02\xb3\x53\x0c\xc2\xc0\xc8\xc4\xae\x87\x13\x40\x44\x33\x7b\x74\x45\x4a\xe7\x7c\x13\xbb\x91\x65\x60\x8e\x94\xf2\x0e\x1f\xb3\xb3\xda\x06\x9d\x10\xc6\xed\x89\x88\x4e\x31\x8e\x60\x72\x28\xb7\x6e\x48\x07\x04\x0b\xd6\x9f\xa5\xa8\x61\x1d\xdc\x40\x75\x10\x33\x08\xb3\xa7\x00\x7c\x82\x44\x03\xc3\xc8\xa6\x0a\xda\x2e\x0c\xb8\x03\x6d\x92\x0f\xcc\x42\xe3\xa1\xb9\x20\xb1\xf2\x11\x2d\x82\x0d\x22\x42\xb6\x61\x84\x80\x93\x6c\x8f\x3f\x08\xe1\xd9\xb6\x06\x29\x44\x85\xbf\xb2\xa7\x86\x81\xf8\xe6\x86\xb7\x60\x94\x30\x2b\xbe\x8d\xe2\xd8\x58\x1b\x12\xc0\x50\xd1\x9e\x59\x15\x12\x73\x09\x02\x19\x1b\xe8\x93\x18\x1b\x80\x31\xc4\x45\x98\x6a\x24\x5b\xa0\x13\x82\xc1\x55\xd5\xdd\x62\xc4\x79\x2d\x12\x7c\xdd\x2e\xa8\x8d\x90\x87\x75\x10\x07\x98\x24\x5a\xbb\x3b\x65\xa8\xd0\x5a\x80\xd6\xc0\xf6\x6a\x00\xe6\xe7\x8f\x19\x50\x05\x23\xe8\x5a\x69\xa5\x71\x97\x44\x9b\x94\xfc\x80\xc0\x9e\x7f\xc6\x73\xe8\x93\x0e\x79\xff\x92\xe3\x2d\x97\x6c\xff\x16\x99\xf1\xbf\xef\x0d\x93\xb3\xb8\xa8\x92\x8b\x64\x16\x55\x03\xd7\xb0\x0e\xbe\xaa\xbc\x71\x37\x9c\x45\x39\x2c\xc2\x28\x4c\xd7\x0f\x1f\x97\x5f\x1e\x3e\xfe\xbf\xe3\xe1\xe3\x64\xf7\x01\x87\xbf\x3c\x99\x3f\x9b\xfd\x53\xfe\xb0\xe5\x80\x83\xbd\x4a\x37\xf4\xef\x99\xde\x7d\x8e\xa1\xc5\xad\x1b\xd7\xd3\xfa\x1b\xec\x67\xf9\xe2\xe6\xe8\x7c\x59\x55\xf6\x45\x04\x77\x81\x7d\x73\x37\xbd\xef\xa6\xfb\xe0\xef\xf6\x57\x49\x7d\x33\xee\x45\x0f\xdc\xb9\xf6\x36\x78\x9b\x94\xc9\x79\x92\x26\xd5\x4d\xb0\x71\xdb\xad\x7d\xbc\xe4\x2a\x7f\x67\x05\xc6\xe8\x2a\x99\x43\xe7\x23\x07\xd9\xb8\xec\x96\x87\xbc\xdd\x93\x7b\xd0\x83\xba\x37\x5d\x93\xd9\x9b\xa0\xf5\xb4\x4a\xf5\x1f\xeb\x4e\xcf\x7a\xaf\x79\x6c\x11\x5b\xeb\x27\x38\x06\x90\x3b\xf8\xcd\xaa\x7a\xcb\x64\x96\xcf\xd7\x13\x40\xfc\x71\x91\xbb\x9f\x74\x18\x7e\x3d\xaa\x6e\xf4\x6a\xf0\xea\xe2\xad\xd7\xcf\xdf\x75\x11\xb0\xbd\x2a\xbe\xb9\xe2\x1d\x88\xbb\xbf\x80\xde\x90\x8a\x9d\xcb\xdb\xf3\xe9\xb8\x11\xd1\x55\x11\xcd\xde\xc4\xf3\xb0\xe8\xdd\xde\x1e\xed\x75\x75\x3b\x42\x28\x76\xe2\xd1\xcb\xca\x07\xcd\x55\xee\xf1\x24\xac\xec\x35\xeb\x61\x36\x75\xf3\x15\x46\xee\xf7\xb8\x98\xa6\x93\x47\x8f\x86\x17\x30\xb4\xd3\xbe\x59\xb3\x68\x8b\xca\xb6\x5c\x3c\x2e\xba\x62\xb2\x96\x82\xc7\x45\x23\x10\x43\xb7\xfa\x8b\x8e\xa8\x2a\x76\x88\xaa\xd5\x64\xd5\x61\xd2\xfa\x56\x78\x40\x7f\xfa\xb0\xf9\x73\xb5\x0a\xd3\x69\x39\x8e\xda\x57\xb0\xbb\x11\x9e\x66\x67\xe1\x6d\x07\xcb\x87\x38\xec\xde\x13\xda\xe0\xf9\x10\x87\x2d\x4c\x36\xef\x0e\x7d\x48\x56\xab\x49\xd8\xef\xa6\xb3\x86\xc2\xd3\xe2\xee\x9b\xe2\x77\xd4\x9f\x84\x51\xfb\xc6\xf8\xa8\xad\x7a\xf3\x9d\x37\xc6\x27\x61\x7e\xf7\x7d\xa6\xb3\xab\x24\x9d\x1f\xb9\x37\x79\xf3\x81\x23\x6b\xf5\x35\xb6\xc0\xe4\xcb\xa2\x88\xb3\xd9\x4d\xf7\x76\xd7\xbe\xae\x0e\xb3\x8f\x77\xb0\xad\xd8\x2d\xf7\xf3\x65\xf6\x13\xd1\xff\xf8\xff\x0f\xcb\xfd\x59\x9e\xc2\xa0\xdc\x33\x0d\x5e\x07\xb4\xde\x9a\xf7\x57\xad\x0f\x5f\xb1\xee\xf5\x81\x13\xc8\xc4\xbe\x1d\xdf\x26\xd3\x08\x04\x26\xb7\x6f\x1f\x1d\x75\xbf\xf8\x53\x6c\x2a\x1c\x78\x4e\x9a\xe8\x90\x6d\xbe\xc4\xed\xdf\x2e\xea\x3c\x21\xe6\x5e\x2f\x12\xad\x07\x46\x0e\x7d\x2f\x3c\xb8\x49\x62\x40\xcb\xdd\xcb\xdb\x7a\xcf\xdb\xca\xfc\x22\xb6\xca\xed\xae\x97\x5b\xd6\x08\xdf\xf1\xd6\xce\xe6\xd3\x69\x56\x93\xda\xd7\xd2\xec\xb3\x52\xdb\xef\xa4\xef\x5c\x3a\x7f\x07\xde\xbe\xf9\x0f\x46\x7b\x50\x75\xf9\x19\x10\x21\xc1\x07\xbe\x0c\xe5\x29\x6e\xaf\xd0\xed\xbd\x6a\x53\x16\xb3\xce\x73\x35\xad\x49\x96\x30\xa2\xc7\x5f\xdd\x36\x0f\xdd\xac\x1e\x7f\x75\xeb\xde\xbf\x81\xbf\xe6\x33\xf8\x2f\x50\x70\xd5\x79\xfe\xae\x46\xac\xfd\x3e\x4e\xf3\x6a\x8e\x7d\x5e\xa6\x7e\x67\x09\xc6\x02\x5c\xc8\x44\xc8\xdc\x3f\xb4\xff\x4e\x8d\x08\xf1\xc6\x9b\xf4\x03\x4f\xd3\xad\x41\xda\x57\x53\x5b\x5e\x89\x01\x1a\x04\x67\x43\x4f\xce\xef\xf3\x92\xb6\x23\x61\x7b\xdd\x9e\xb6\x9e\x8e\x0a\x83\x6f\xca\xdc\xbe\x98\xf2\xcd\x45\x92\xda\x66\xc2\xfa\x75\x73\x8b\x96\x5b\x90\x56\xe3\x46\xe5\x6c\x90\x6a\x65\x1c\x15\xb3\xab\x85\x93\x48\x49\x5c\x06\x1b\x6f\xa5\xb9\xc7\x7a\xda\x0f\x99\xf3\x10\xac\x80\x43\x1e\xab\xf2\xa3\x59\xe4\xef\xe2\xc2\x4b\x86\x35\x47\x58\x0c\x9e\x65\xfe\xf9\xac\x1a\x60\xb9\xc4\xde\x0f\x6f\x47\xe5\x1f\x57\xfa\x2e\x2e\xcb\xc8\xbd\x72\xe4\x8a\x6d\x00\x7e\xec\xbc\x98\xf7\x4d\x9e\xfd\xb0\x88\x33\xf7\xd7\x49\x9a\x97\xfe\x81\xa4\x93\x86\xfb\xaa\x62\x19\x0f\x4f\x30\x0d\x49\x58\x13\x28\xd8\x64\x06\xfb\xfa\x5b\x87\xb8\xc2\xd2\xa5\x7e\x3d\xee\x85\xc3\x18\x21\x14\xb8\xc7\x44\xf3\xb2\x4c\xce\xd3\x78\xd4\x8c\xca\x52\x52\xec\xc5\x5e\xcd\x12\x3c\x0b\x01\xe1\x03\x18\xb3\x55\xd3\x1a\x6b\x3b\xaa\x06\xcd\x13\x52\x96\x87\x4e\xcf\xfc\xa0\xe4\x59\xe7\xdd\xb2\xbd\x1f\x28\xbb\x43\xf0\xba\x37\xad\x22\xc7\xac\x81\xa3\x4a\xeb\x05\xc9\xfa\x25\x26\xba\x77\xef\x7b\x4b\xe7\xe1\xe7\xd2\xe8\xc0\x7b\x69\x1b\x2f\x27\x0d\xc9\xf9\x3d\xcc\xe6\x01\x9d\x46\x71\x3d\x43\x12\x24\x79\xf3\x32\x07\xbe\xef\xd3\xb6\x7b\xe8\x39\xfb\xd6\xe7\x47\x22\xe3\xbe\xae\xc6\x87\x78\x13\x5e\xcc\x2d\xd2\x65\x61\x0d\xce\x5a\xa2\x37\xf2\xbd\x2d\xf4\xfd\x83\x54\xcb\x22\xb1\xef\x0e\xa6\x3f\x34\xd2\xc3\x3d\x45\xd5\xbc\x50\x95\x94\x5e\x26\x58\x67\xa5\x7e\xc0\x6a\x2d\x6c\x40\xa8\x1e\x9d\xdf\x04\xfd\xe7\x37\x9d\x64\xad\x6d\x3d\xcf\xbb\xed\xa7\xff\xfc\x3b\x57\x97\x07\x3d\x58\x35\x64\x6f\x76\x02\x53\xd1\xce\xc0\x54\xe1\x2d\xde\xe6\x0b\x72\xce\xcf\x78\xfd\xfe\xd4\x6d\xad\x6d\xdb\xe6\xfa\x2a\xac\xa2\x4b\x87\x56\x10\xda\x57\xcc\x7a\x5f\x6f\x16\xf6\xd3\x3c\xbf\x3e\x76\x3d\x24\x99\xb5\x61\xcb\xb8\x78\x9b\xcc\xe2\x71\x30\xcf\xaf\x83\x49\x78\x91\x17\xd7\xf6\x99\xbe\x24\x8b\x8b\x2d\x25\xed\x13\xb6\x93\x10\xe8\xe7\x4b\xc0\xf8\x97\x55\x3c\x47\x51\x9a\x44\xa5\x2b\x81\xac\xae\x9c\x84\x8e\x14\xf1\xdc\xcf\xdf\x96\x1a\x6e\x32\x26\xd6\x1b\x69\x63\x6e\xfd\x9d\x9f\xb7\xbe\xcd\xf5\x73\x9a\x94\x55\x9c\xc5\x45\xe9\x5e\xd3\x9a\xe7\xd7\xa8\x01\x8d\x7d\x21\xc0\x66\xda\xfc\xd5\x8c\xce\xfe\x1a\xbb\xd7\xbc\xac\xeb\xd1\x14\x41\xb3\x34\x8e\x8a\xf1\xed\xd3\xa8\x8a\x66\xf6\xd2\x8d\x63\xd7\xfa\x2c\x6c\x1e\xd7\x73\x10\x6f\xcf\x4c\x56\xe1\xbb\x24\x4d\x9f\xc6\x65\x55\xe4\x37\xcf\x52\xbb\x62\xee\x35\x0c\x54\xc4\xd7\xf9\xdb\x78\x3c\x59\x85\xf9\x20\xc1\xc6\x41\x8f\xa0\x08\x04\x7b\x6b\x81\xd8\xdf\xe3\x56\xdf\xe0\x6d\xc7\x6e\xfc\xeb\x52\xef\xdf\x9f\x9e\x35\xb7\x6b\x38\xa7\xb2\xdb\xac\x2d\xe0\x83\x73\x0e\x83\xcb\xb8\x1a\x57\xcd\xa3\x43\x93\x3f\xe3\x47\x8f\xc6\xf1\x34\x46\xce\x58\x19\xc7\xd3\x3f\x3f\xac\xd0\x45\x92\xcd\xbf\xbd\x19\x07\xcf\x9f\x06\xe1\xba\x5a\x1c\x02\x60\x32\x99\x4c\xc2\x18\x3c\xb6\x32\x7a\x1b\x1f\x8f\x71\x58\xa1\x2a\x2a\xdf\x4c\xd6\x31\xc1\xff\xe5\x3c\xac\x69\x9b\x77\x27\xb7\xb5\xb3\x64\xf1\x2c\xe2\x45\xfe\xa0\x2a\x6e\x6e\xe3\xa9\x95\x8d\xa3\x02\x2d\xe2\xa2\x4c\xca\x6a\x5c\xcf\xa1\x13\x0d\xf6\xe5\xb6\xec\x32\x46\xd1\x62\x91\xde\xd8\x89\x0e\x9b\xd7\xb7\x6e\x33\xbb\x56\x1a\xcd\xe8\x7c\xb5\x6a\xb5\x0a\xab\x30\x3e\x9b\x84\xd9\x78\xb2\x9a\x45\xd5\xec\x6a\x1c\xf9\xd9\xb3\x8b\x6a\x7c\xeb\xd6\x56\xb4\x9a\xd8\xe7\xb9\x7c\x4f\xc7\xb7\x45\x5c\xc6\x9b\x33\x7e\x1f\x66\x0a\x9b\x67\x18\x1d\x74\x6d\x3f\x4f\x56\xa1\xe3\x8e\xe3\x6e\xec\xd8\x91\x27\x5b\x93\x07\x68\xfe\x2a\x5d\x5e\xfe\x7b\x7c\x33\x9e\x34\x51\x15\x37\x11\xd9\x24\x8c\xa6\x6e\x9e\x9e\x83\x6c\xea\x06\x8c\x37\x26\x1c\x2a\x4c\xa7\xd3\x62\x35\x99\x3c\x48\x2e\xc6\x47\xe4\xe1\x74\x1a\x4d\x9a\x87\x45\x1c\x3e\x4f\xaa\x71\x14\x92\xc9\x03\x8b\x40\x2d\x9d\xc6\x35\xa9\x01\x0a\xb8\xf7\x85\x96\xf7\xa5\x3b\x93\x0b\xeb\x37\xcb\x8b\x6b\xab\x1e\x9e\xbd\x8d\xb3\xaa\xb7\x5c\xa2\x69\xf5\xa0\x7c\x97\xc0\xc4\x14\xc8\x3f\x33\x0c\x53\x39\xb9\x9d\x45\x65\xdc\xcc\xa7\x5f\x34\x65\x5c\x8d\xb3\x30\x38\xb1\xfe\xe0\xeb\x04\xac\x94\x71\x16\xbf\x1b\x3d\x8d\xaa\x78\x02\xe3\x03\xd8\x78\x62\x43\x10\xcb\xf2\xca\xb9\xf5\xe3\xcc\xb3\xd1\xb6\x91\xd8\x97\xd9\x5a\x51\x8a\xe8\xee\x20\x44\x3e\x8f\x8f\xe2\x79\x32\x18\x81\xe8\x5d\x9a\xd3\x44\xff\xab\xd6\xce\xc0\xb4\x1d\xed\x8f\xed\x54\x0c\x86\x5c\x5e\xb9\xf0\x80\xab\x55\x4c\x77\x95\xf9\xff\xd8\x7b\xd7\xf5\xb6\x8d\x2c\x51\xf4\xbf\x9f\x02\xc6\xee\x71\x93\x93\x22\x4d\x52\x77\xcd\x66\x62\x47\x76\x3a\xee\xf8\x36\x96\x3b\xe9\x1e\x0d\x3f\x07\x02\x4a\x24\x62\x10\x60\x0a\x45\xc9\x6a\x99\xe7\x59\xce\xb3\x9c\x27\x3b\x5f\xdd\xab\x80\xc2\x95\x90\x25\x77\x27\xb3\x77\x5b\x04\x0a\x75\x59\xb5\x6a\xd5\xba\x2f\xd2\x0d\x7e\xf4\xa8\x87\xa6\x48\x1c\x61\x35\x0f\x2c\x51\xa1\x4a\xb3\x43\xe6\xa8\xa9\xc7\x36\xe4\x8c\xc7\x14\x9a\xfc\xdc\xc5\x00\xf5\x37\xbc\xb3\x78\x23\x57\xc7\xd6\x9a\xa0\x1e\x5b\xdf\xf8\xbf\xe2\xff\x2b\xb7\x79\xc8\x68\xcc\x7f\xc5\xdf\x7c\xc3\x56\xe2\x51\x8d\xfb\xc3\xa9\x6c\x71\x16\xcf\xbe\xd3\x7f\x1c\xdf\x6c\x1e\xc4\xff\x31\xf9\x0e\x73\xb0\xf4\xbc\x3e\x78\x38\xb2\x59\x45\xc8\xca\x28\xea\x79\x67\x78\xd6\xdf\xf4\xfb\xc7\x15\x2b\x4c\xbf\xb3\x69\x7b\x42\x98\xf6\x60\x95\xda\x2b\xed\x79\xfd\xfe\xb1\x36\xa7\x82\x09\x15\x5b\x1b\x2a\xf5\x6a\x00\xf7\xc9\x22\x04\x80\xa1\x02\x30\x32\xcb\x50\x3a\xd8\x09\x63\x07\x5a\x17\xc3\xc6\xe2\xfa\xaa\x38\xa3\x2b\xcc\x6a\x12\x35\xdd\xe1\xa6\x7f\x0c\xcf\xf0\x6c\x1a\x03\xd8\x99\x29\xc4\x2b\x57\x89\xbd\xbb\x58\x84\xf0\x2f\xff\xfd\x3f\x76\x95\xd8\x32\x09\xa0\xa9\x05\xa3\xcc\x72\xf0\x3d\x69\x9b\xbe\x88\x2f\x92\x1a\xf6\x11\x9c\x24\xd1\xb9\x47\x35\x82\x8c\x51\xb0\x5a\x49\x8a\x3e\x2b\x51\x05\x65\xb5\x47\x34\x05\x55\x5e\x8d\xc6\x84\x8b\xa3\x7c\xc9\xfd\x09\xd8\x99\x89\x5e\x0c\xe9\xaf\x69\xa1\x6f\xae\xac\x9b\x68\x23\x68\xea\xa7\x6c\x7d\xe7\x3a\xba\x8d\xa2\x02\x88\x59\x00\xa5\xcd\xd7\xcb\x3e\xab\x58\x6f\x85\x2c\x55\xba\x6c\x31\xaf\x1a\xcb\xce\x09\x44\xf9\xb9\x1f\x66\x54\x60\x86\x36\x09\x64\xdf\xec\xcd\xb2\xb6\xac\xa6\x25\xdb\xcb\x74\x31\x52\x31\x42\xd5\x29\x8c\xbd\x53\xaa\x15\x4d\x47\x23\x84\x25\x5d\x9e\xcd\x2b\x12\xd4\x22\x76\xc9\xce\x30\xf1\x8e\xfc\xd8\x6d\xaa\x4a\x30\x1d\x0c\xc6\xe0\xcc\x65\x32\x6d\xbe\x8e\x7b\x1d\xa9\xdd\xe8\xb1\xe8\x34\xa7\x90\xf4\x81\x93\x92\xd2\x9e\x1a\x38\x6b\x1a\x40\x99\x46\x4e\x16\xb6\xae\xa3\x12\x6c\x78\x96\xec\xc5\x3b\xf5\x9f\x87\xc0\x0d\x2f\xaf\x07\x84\xc5\x58\x86\xb4\xc4\xb5\x7d\xc2\xc0\x7d\x42\xad\x69\x19\x4d\x1c\x6d\xf4\xb7\x55\xe0\x11\xdc\x50\x8b\xa2\xca\xac\x31\xff\x77\x22\xd5\x84\xb9\x72\xf8\x23\xa6\x79\x1d\xef\x16\xd5\xbe\x96\x01\x62\x48\x33\x76\x66\xad\x9f\x15\x24\x40\x96\xec\x6c\x4b\x04\x2c\xa7\x5e\x95\xf0\x94\xaa\xd0\xca\xd3\x3e\xe6\x56\x91\x52\xbd\x7b\x56\x7f\x54\xac\x0e\x11\xfb\x33\xa0\x77\xd4\x80\xe9\x21\xc2\xf8\x32\xf1\x3d\xae\xda\x90\x3a\x0e\x7e\xb1\x91\x7f\xa8\x4a\xe3\x3a\xc6\xde\x27\xa9\xa1\x40\xd0\x0b\x92\x38\xba\x96\x45\xb9\xa9\x26\x64\xb0\xf0\x52\xd6\x29\x69\xc8\x50\x40\x60\x80\x42\x80\x24\xfe\x08\xaf\xd7\xab\x46\x2a\x8e\x2c\x37\x2b\xf4\x1b\x20\x9a\xde\x60\xef\xfc\x34\xfc\x27\x3c\x9e\x80\x28\x8c\xe1\xeb\x35\xb9\xcc\x53\xc2\x37\xe0\x05\x24\x3d\x2e\xbc\x74\x11\xba\x20\x5d\x24\x57\x27\x6b\x94\x26\xe8\x97\x05\x8c\x4f\x29\x71\x0a\xe3\x39\x2d\x62\xb8\xc6\x04\xac\xc7\x67\xee\x49\x12\xc0\x57\x14\xa7\x07\x51\x18\xe3\xc1\xd2\x43\x1f\x21\xb5\x69\x91\x9f\x84\x8d\xa0\x1a\x95\xb4\x54\xa3\xe2\x15\x69\x54\x6e\x52\x88\xc9\x98\x69\x81\x9a\x43\xbc\x76\xfb\x95\x5a\x93\x05\x8c\x56\x85\xea\x12\x0a\x2e\x76\x34\x1f\x93\x79\x43\xe4\xf6\x01\xdd\x08\x2a\xff\x51\x4b\x9e\x04\xa8\x3b\x03\x62\x37\x8f\x1f\x8e\x01\xdb\xe8\x63\xd7\x05\x7c\x9f\x4c\xad\x4e\x12\xd3\x5a\xe1\xe6\xc3\xfa\x2a\x14\x25\x24\x51\xe1\x58\xa0\x17\xfd\x80\x2d\x69\x48\x1f\xf5\xfa\xfd\x0d\x08\xc2\xe0\x1d\xf4\x61\x48\xc4\x3d\x8c\xd2\x5a\x23\x70\x9e\x8e\x6b\x1f\xd8\x0a\x1f\xc0\x47\x8f\x20\x19\x94\x29\x1a\x7a\x14\x7b\xdf\x50\xec\xe5\x02\x2c\x5b\x7e\x7f\x03\x52\x88\x5f\x25\x81\x2e\x32\x32\x6d\x06\x9e\xc6\xbd\xb8\x77\xb3\x01\x51\x1f\xdc\x6c\x00\xc1\x58\x78\x0c\x87\xcb\x70\x09\x81\xe8\xed\xd8\xe8\x6c\xd3\x7f\xe0\xfe\xfd\xd5\x4b\x77\x3a\x9d\x42\x2a\x2f\x3e\x7a\xd4\xc3\xc3\x05\x5e\x46\x64\x80\x29\x94\x7f\x02\x3c\xa4\x35\xf1\x4f\xa2\x24\x0d\xe3\xf9\x14\x1a\x3f\x01\x1e\x7a\x51\x38\x8f\x4f\x9e\x3d\x7d\xff\x74\x0a\xb5\x1f\x79\x60\xca\x23\x86\xfb\x0f\x0c\x19\x97\x83\x01\xe9\x30\x60\xe7\x9b\x2d\xa1\x6f\x6c\x00\xc1\x98\x1e\x22\xaf\x92\x00\xda\xb7\xcc\x05\x70\x5b\x05\x54\x72\x4e\xd0\x15\xa2\x47\x8f\x8c\x9f\xc3\x20\x4c\xfd\x24\x8e\x89\xf4\xc2\x50\xe0\x05\xad\xea\xdf\x64\x00\x13\x07\x88\x80\x0f\xd9\xd7\x3d\x17\xc3\x4f\xd8\x43\xd0\x73\xfe\x1f\x67\x85\xa0\x43\xaf\x04\x36\x1f\xde\x84\x48\xd9\x17\x21\x4a\xf1\xc9\x22\x8c\x02\xb2\x67\xfa\xec\xa6\x44\x94\x7f\xb5\xc6\x94\x5a\xbe\xe1\x0f\x7b\xbd\x33\x38\xeb\x4f\xbf\xbd\xe1\x22\x3c\x3d\x20\xbd\x2c\xd8\x38\xe9\x85\x42\x85\x70\xb5\x48\x22\xf8\x1e\x7e\xa2\xd2\x94\x09\x12\xf1\x47\x0f\x82\x1b\x0f\x63\x14\x9e\xaf\x31\x4c\xe9\xe1\x5c\x9f\x63\x04\x99\x90\x44\xe6\xf7\x32\x4c\x31\x79\xee\x2f\x3c\xe4\xf9\x18\xa2\x67\x1e\xf6\x98\xb0\x53\x38\xbe\x5a\x9d\x3e\x87\x5c\x7b\x4e\x1c\x0c\xcc\x98\x43\xfc\x9c\x3e\xee\x19\x20\xe3\xd3\x17\xd4\x8b\x6b\xe4\x4e\xa3\xf5\xbc\x67\x10\x9a\xfe\x10\x2f\x60\xdc\x83\xd3\x6f\x6f\x0c\x3d\x20\x3d\xf1\x80\x6b\x93\x18\xfd\x79\x10\x53\x55\x1f\xd3\x1a\x59\x15\x46\xec\x50\x0d\x71\xf2\x92\xf0\xa1\x27\x5e\x0a\x7b\xfd\xe9\x34\x36\x1f\x50\xdd\x00\x9c\xc2\xcf\x9f\xf1\xd9\x68\x26\xa7\x49\x8e\x5d\x0f\xf6\x37\x0c\xc1\x9e\xae\x56\xd0\x43\x39\xcc\x62\x93\x1e\x22\x78\x81\x60\xba\x20\xc8\x28\x55\x6f\x39\xbd\x92\x70\x98\x11\x10\x10\xea\xc1\x1b\x63\xfd\xc7\x70\xd3\xcf\xcd\x21\xa3\xd9\x49\x6b\x68\x76\xa2\xc8\x5b\x51\x4b\xe0\x20\x4e\x70\xe8\xc3\xb4\xad\x0b\x68\x57\x12\x74\x5c\x2e\x41\x3f\xbf\xfe\xf9\xfa\xe8\xc7\xc3\x49\x41\x81\x7e\x4d\x74\xd6\xd6\x96\x17\x9b\x19\xcb\xb6\x93\xb1\xea\xb5\x70\x83\x13\xdc\xfa\x9e\xf2\x45\xc9\xc3\xd4\x51\x96\xc4\x1d\xcd\x05\x8f\xb7\x24\x9c\x2b\x65\x13\xe5\x2f\xcd\xbe\x5d\x20\x8c\x1b\x42\x02\x1f\xa5\xb8\x5a\xff\x21\x18\x57\x7a\x3b\x2b\x59\xb6\x68\x8a\x2d\xe4\xd6\xbc\x17\xe5\x84\xce\x18\x7e\x5a\x11\x56\xaf\xd0\xf7\x71\x6c\xf8\x3e\x66\x3c\x2b\x0d\x58\x59\x98\x6a\xdd\x29\x51\xb1\xfb\xae\x42\xfb\xa1\xb7\x5a\x0d\x2d\xdb\x34\x94\xd3\x12\xce\x13\xad\x9c\x19\x8b\x97\x2d\xa6\xdd\xc9\xc2\x35\xd3\xfb\xb6\xeb\xd6\xe6\x55\x73\xe5\x4a\xea\xab\x61\x74\x2e\xf1\xf9\xcc\x61\x66\xb1\xdc\x59\x2c\x89\xa4\x90\xbb\x77\x02\x17\x33\xf1\xa1\x91\x38\x50\x40\x02\xa5\xd9\x93\x79\x71\x22\x8b\x1f\xe7\x46\xd1\x30\x54\xea\xeb\x47\xb5\xc8\xd5\xc4\x38\xbe\x08\xd1\x92\xf2\x03\x03\x2f\x82\x08\xdf\x97\x14\xf5\x6f\x17\x3b\x27\x4f\x7f\x18\xc5\x76\xa2\xfb\xe1\x83\x87\xe6\x23\x17\xb0\x3f\xc6\x2e\x70\x9f\xfa\x52\x40\x4f\x62\x8e\xcd\x39\xb5\x66\x99\x93\xdf\x21\xd8\xcb\xcb\xe1\x87\xc0\x0d\xe3\x8b\x04\x11\x69\x53\x88\x96\x67\xf2\x64\x65\x61\xe7\x5c\x79\x28\x0e\x63\x96\x9c\xfe\x80\x2a\xb1\x84\xf7\x81\xa9\x50\xd5\xf5\x5d\x82\xc0\x2d\xa0\xc7\xac\xec\xe7\x49\x70\x2d\x25\x59\x4a\x61\x47\x60\xc4\x12\xdb\x57\xe9\x8c\x18\x31\xdd\xd3\x06\xd8\x55\x6e\xe7\x62\x84\x76\x2a\x41\x8d\x82\x57\xf8\x58\x88\x61\x6a\xb8\x59\xec\xd5\xf4\x25\xac\xad\x57\x2c\x5a\x3a\x85\xe9\x6d\x2f\x9c\x0d\x72\x9f\x96\xad\x70\xa8\xbe\xae\xb4\x9a\x4d\xa9\x01\x27\xaa\x87\x02\x67\xfc\x54\x32\xa0\xb0\x53\x13\x10\xd6\x13\x25\xeb\x94\x3d\x9c\x81\xb3\x36\x8e\x74\xf5\x5c\xaa\xf8\x09\x75\x33\x3a\x38\x4d\xa7\xc5\xcf\x34\xed\x41\x91\x0d\xec\x9d\x33\x2a\xa8\x35\x1f\x99\x9e\x71\xbb\xca\xcf\x6d\x30\x76\x95\x7b\x63\x0b\x0f\xb1\x3c\xe5\x29\x52\xe3\xd6\xf0\xcf\xb2\x34\x29\xd8\x8f\x2d\xa0\xef\x99\xbe\x98\x17\x4c\x45\x4c\xc6\xd8\x6f\x0a\x80\x13\x2f\xf6\x61\xd4\xe9\x9a\xf3\x0d\x76\x8a\xf5\xc8\xed\x1f\x8e\xc1\xa4\x9a\x4d\x90\xea\x48\x25\xc5\xe4\xdc\xa7\x22\xca\x4a\x0c\xc2\xb4\x58\xab\x49\xb5\x93\xd4\xbd\xab\x11\x97\x61\xbf\xdb\x5b\x04\xfd\xe5\x35\x81\xca\x77\x6a\xd3\x34\xf4\x4f\x9f\x56\x10\x7a\x51\x32\xb7\xc9\x7f\x25\xf1\x04\x5f\x4c\xf0\x5b\xbc\x7c\xe6\x7f\xf3\x4b\x88\x2b\x05\xbf\xfa\x91\x03\x1a\x93\x7c\x15\xe2\xc5\x40\x87\x86\x6b\xf1\xc5\x06\xae\xc3\x9b\x10\xbe\x02\xb8\xf9\x48\xae\xf1\x01\xed\x2e\x1f\x59\x90\xe3\x72\x1b\x50\x4e\x79\xc2\x8d\x4b\x25\x23\x4e\xce\x24\x0f\xe4\x66\xad\x75\x46\x1b\x7a\xc4\xb3\x13\xaf\x47\x26\x34\x67\x7c\x6d\x06\x07\x1c\x3c\xfb\x33\xdd\xa3\x3b\xe3\xbd\xde\xdc\x3c\xd8\x54\x3a\x28\x73\x0d\x6d\x00\x6b\x76\x06\xaa\x61\x0d\x3f\x41\x7f\x8d\x61\x03\x58\x53\x43\xd3\x11\xfb\xe7\x70\x4b\xc8\x2b\xd0\xde\x05\x30\xab\xfc\x64\x8d\x33\x62\x86\xe0\x49\x12\x9c\x21\xbb\xcc\x10\xb4\x82\x68\xe9\x71\xba\x4c\x4b\x5d\xb1\xe6\xaf\xd9\x36\x2d\xb9\x73\x7d\x5b\xaa\xab\x93\x37\x83\xec\xa2\x52\xb2\x1b\x17\x91\x5d\xac\x5c\x5a\x35\xe7\x55\x3e\xcb\x63\xf7\x29\x82\xce\x75\xb2\x76\xd2\x35\x82\xdf\xb9\x40\x01\xe5\xf8\xe1\x18\xc8\x95\x92\x1f\x4a\x15\x48\x11\x46\x57\x1e\x66\x15\xa9\x3a\x68\x1f\x8e\xfb\x1b\xc0\xf1\xb0\xc1\x37\x42\x69\x18\x07\x8c\xff\xe8\x19\x50\x1e\x0e\x87\xcc\x07\x51\x2a\xc0\x37\x62\xea\xfa\x18\x94\x62\x9f\x41\xda\x7c\xa6\xfc\x9a\x1e\x64\xc7\xd6\xbb\xb6\xa8\xff\xe5\x87\x2e\xc0\xf9\xb7\xc6\xc4\x47\x39\xed\x26\xaa\x73\xbb\xa5\xeb\xe8\xb1\xe7\x47\x8f\x85\x5b\xf4\x7d\x91\xa8\xff\xf2\x57\xf4\xdb\x6e\x32\xfe\x64\xbd\xcd\x72\x57\x17\x61\xf3\x56\xab\xc1\x65\x08\xaf\xdc\xe6\xcc\x22\x27\x80\xea\x12\x6f\x2f\x26\xe6\x15\x91\x8b\xb1\x55\xed\xf8\x3e\xf9\x08\xe3\xb4\x38\xaf\x42\x8d\x88\xb5\x8a\x29\x4b\x0b\x78\xb3\x39\x1f\x02\x17\x2e\x57\xf8\x7a\x40\x1b\xb5\x80\xa6\xd6\x51\xb7\x10\x35\xa0\x3a\xd1\xa1\xfa\x0b\x8c\xfc\x64\x09\x1d\x9c\x38\x4f\x4f\x5e\xa6\x16\x8f\xa5\x5a\xcc\x7a\xad\x79\xd7\x93\x9b\xed\xb3\x5e\x59\x51\x81\xfc\x47\xa6\xed\x78\x08\x3a\x71\x82\x1d\xc8\x3c\x77\x9c\x30\x76\xc8\x41\x77\x4e\xe8\x31\x75\xfc\x68\x9d\x62\x88\x86\xce\x2f\xd0\x49\x31\x4a\xe2\x79\x74\xed\xc0\xd8\x4f\xd6\xc8\x9b\x43\x07\x2f\xa0\xb3\x4e\xa1\x93\x5c\xb0\xde\xc2\xd8\x59\xa1\x24\x58\x33\x77\x41\x18\x5f\x86\x28\x89\xe9\x04\x9d\x8b\x04\xd1\xe6\xe7\x30\xc5\x4e\x0a\xfd\x35\x0a\xf1\xb5\xb3\x42\x84\x1a\xf9\x30\x1d\x66\xa7\x7e\x5b\xb0\x94\x12\x7f\x3b\x70\x46\xa1\x52\xf1\x07\x89\x9f\x0e\xa2\x30\xfe\x58\x08\x62\xf1\x95\xc7\xcd\x11\xfb\xa2\x20\xa2\x12\x99\xdd\x93\x37\xaf\x4f\xff\xf6\xf2\xc3\xb3\x37\x27\xa7\x1f\xfe\xf6\xee\xa5\x64\x4d\x5c\x4a\x23\xf9\xcd\x88\x97\x91\x2b\xeb\x36\x22\x18\xd1\xeb\x39\x59\xc1\x18\x22\x27\x4e\x10\xbc\x80\x08\x71\xaf\xc2\x5d\x22\x9e\xa3\x39\x95\x99\x3e\x9c\x47\x9e\x39\xbd\x77\xd0\x0b\xe8\x3e\x04\x89\x4f\xc9\xbc\x27\xe4\x7b\x8b\xef\x52\xd9\xe3\x0c\x2c\x22\xe8\xa1\xb8\x5b\x60\xbc\x7c\xfe\xf4\xdd\xeb\x0c\x48\xf8\xed\x21\xf0\x67\x10\x43\x7c\x95\xa0\x8f\x61\x3c\x7f\xac\x10\x6f\xe0\xf9\x51\xda\x0d\xb8\x7e\x48\xa2\x28\xb9\xa2\x00\x9b\xaf\x43\xee\x5e\x54\x13\x50\xb7\x23\xaa\x57\x46\x58\x69\xaf\xab\xfd\x85\x60\x7c\xd9\x90\x77\xb3\x5f\xde\x77\x97\x27\x47\xcd\xa8\x38\x20\xff\x6e\xd8\x89\x93\xbf\xa4\xef\x97\x3f\xbd\xbf\x2c\x48\xb1\x12\xf8\x76\xc7\x61\xfd\x54\x11\x44\xce\xb8\x19\x12\x84\x4e\x68\xbe\xa5\xbc\xfb\xa1\xc0\x9a\xa7\xbe\x0f\x53\x4a\xc3\x31\x4a\xa2\xb4\x50\x4c\xdc\xc9\x38\x67\xba\x84\x96\xb3\xc3\xd3\x52\x46\x14\x46\x36\x11\xa2\xce\x0c\x68\x44\xf6\x74\x8d\xeb\x86\xe5\x45\xc0\xf4\x32\x31\x2f\x1e\x7e\xe3\xb8\x19\xf3\x59\xbd\xc4\x23\x59\x0f\x41\x0e\xcb\xbd\x4c\x92\x18\x83\xe4\x04\xfe\x90\x2c\x79\x88\x29\x77\xe4\x4a\xf7\xd1\xd7\xc2\x7d\x94\xd3\x9e\x30\xa5\x06\x8e\x4b\xc3\x20\x67\x37\x04\xeb\x14\x4e\x89\xac\x35\x47\x6a\xca\xb9\x15\x9a\x8c\xc7\xd9\xdd\x45\x84\xf6\xe7\xb7\xb7\xa6\xbf\x63\x43\x70\xae\x92\x28\xf4\x43\xf8\x45\x00\x5a\x35\x96\x0d\xa4\x6f\xf9\x37\xb5\x81\xda\x14\x00\xe4\x94\x7e\x91\xd5\x97\x0e\x64\x5b\xfa\x3b\xf2\xc1\xad\xad\xdb\x5b\xe3\xc5\x60\x09\xf1\x22\x09\xbe\xc8\xf2\xeb\x8c\x67\x83\xc2\xd3\x35\x5e\x38\xaf\xd8\x77\x35\x81\x51\xdb\xdc\x74\x6b\x44\xf6\x4e\x4f\xa1\x91\x77\xe4\x2b\x3d\x4b\x85\x6b\xf8\xca\x0e\x45\xe1\x3a\x3a\x41\xeb\x6a\x8d\x63\x79\x8a\xaf\x74\xb0\x40\xf0\x42\x6a\x1a\xbd\x58\xaa\x13\xc9\xf3\x01\x4e\x5c\x16\x45\x81\xc3\x86\x5e\xe2\x05\xcc\xde\x9d\xb3\x9f\x6a\x7b\x1f\x9f\x87\x71\x10\xc6\xf3\x41\x14\xa6\xf7\xc6\x57\xe4\xe8\xd3\x6a\x71\xfe\xdf\xcf\x5f\x95\x65\xfb\xab\x91\xe5\x8f\x41\x40\x5b\xec\x40\x5f\x6c\x0e\x1d\x2d\x8a\x13\x15\x9d\xf3\x7d\x18\x07\x12\xff\x2d\x01\x2a\x64\xf0\xc8\x82\xe1\xf2\x25\x56\x13\x13\xe9\x7b\x32\x9e\x56\xf4\x04\x2e\x93\x00\x46\xe9\x50\x4c\x14\xad\x23\x38\x24\x63\xbf\x67\xdf\x58\x5c\xab\x8c\x51\x02\xeb\x21\x73\x73\x4b\x61\xdd\x59\xd3\x9a\xda\x4f\xab\xe2\xd3\xb2\x36\x77\x4b\xb7\x84\xd9\xa7\xae\xff\x2d\x5d\x34\x74\x39\xf5\x50\x1d\xbd\x76\x8a\x36\x1d\x00\x1a\xa0\x35\x97\x36\x86\x28\x3a\xd1\x1b\xea\x88\x42\x7f\x0c\xc8\xa6\x0d\x73\xcb\xca\x09\xd6\xdb\x67\x18\x69\x00\xe5\x98\x45\x10\xfd\x4b\x81\xd8\x5c\xd3\xdd\xc2\x97\x4a\xae\x5b\x44\x98\x76\x02\xd8\xce\x20\x6b\xae\xa6\x19\x64\x2b\x9a\xb5\x88\xf3\x2b\x8e\x9a\x2d\x20\x6d\xb8\x09\xc9\x3c\x95\xc9\xfa\x1a\x90\xcc\xa2\x94\xa4\xe0\xcc\x3d\x35\x93\xff\xed\x74\x35\x4f\x11\xc8\xce\x94\x9a\x0d\xa6\x2a\x67\x66\xf4\x60\xbf\x9b\x72\xbc\x54\x79\x8a\x22\x42\x38\x7e\x6f\xe1\x03\x5b\x83\xb5\xb8\x4f\x8c\xcf\x7d\x62\x78\xfe\xfe\xe9\xfc\xf2\x20\x5a\x7d\x63\x67\x78\x44\x76\x63\x91\x08\x2f\x6f\xd9\x23\x6b\x31\xb3\xea\x29\x9f\xd6\x2c\x0f\xc4\x78\x1f\x66\x66\xd0\x52\xeb\xf1\x14\xc6\x77\x64\x0e\xac\x66\x2f\x9e\x85\xe9\x2a\xf2\xae\x39\x0f\x96\x75\x9c\x69\x1e\x51\x60\x95\xd4\x0b\x85\xa0\x21\x4f\x2c\x5b\x5b\x5c\x37\x59\x2e\x73\xf2\xe5\x21\x14\x0d\x43\x04\xbe\xe8\x3a\x5a\x2e\x40\xf7\xf4\xdf\xde\x6a\x1b\x40\xec\x85\x51\x23\x93\x98\x2b\x62\xda\x73\x54\x80\x25\x64\x3b\x53\xc7\xc1\x95\xee\xb6\xb6\x38\xee\xae\x70\xb4\x1a\x39\x0d\x1e\xdc\xb6\x03\xf5\xb3\xf4\x4d\x2c\x0e\x48\xa4\x2f\xaa\xa6\x7d\x99\xf8\x1e\xcf\x04\x0e\xdc\x79\x94\x9c\x7b\x51\x27\xd3\x66\x66\x36\xd9\xb9\x42\x2d\x96\x9a\x36\x75\xd8\x58\x0e\xd7\x2e\xb7\x58\x10\x5b\xc4\x2b\xef\x13\x5d\xc7\xfb\xf7\x2f\xad\xf1\x45\xd5\x53\x0e\xf4\x8c\x24\xd8\x26\xc4\x59\x6f\xf7\xbc\x49\xad\x13\x76\xef\x95\xf7\x29\x5c\xae\x97\xce\xfb\x90\x59\xeb\x5f\x86\x97\xf0\x98\x5a\xf4\x96\xfc\x4d\x14\x5e\x50\x13\xb6\x17\x5f\x33\xe8\x39\x0c\xa4\x81\x73\x7e\xcd\x8c\x12\x04\xc1\x1d\x86\xe0\x4d\x59\xbc\x02\xd3\x60\x09\x03\x92\xdd\x80\x0a\x9e\x6e\x2b\xfa\x50\x95\x09\xa3\x42\xd1\xa3\xb4\x39\x71\x82\x07\x82\xc9\xa1\xec\xce\x76\x9c\xce\xfd\xe4\x70\x58\x36\xb5\x7b\xa5\xd9\x79\xfe\xdb\xd1\xcb\x83\x9f\xbd\xff\x6e\xc5\xe8\xd4\xd1\xf0\x68\x6b\x2e\x54\xf0\xd0\xe4\x4d\x25\xba\x1a\x4c\x78\x97\x52\x32\x80\x6d\x49\x8e\x8c\x06\x41\x85\x14\xa0\xcb\x6b\xd5\xc2\x4a\xeb\xae\x85\xda\x8a\xa5\x17\x2d\xe9\xbf\x99\x30\x86\x79\xfc\x4d\x5d\x0d\x91\x79\x55\x4e\xb6\x4a\xf9\xd3\x76\x0f\x0a\x05\xb9\x06\x5f\x67\xc0\x59\x07\x92\xa5\x24\xcb\x0a\xe6\x72\xfd\x77\x35\x95\xa3\xd1\x07\xb4\xa0\xc4\x40\xa4\x82\x85\x9e\xdf\x34\xd4\xa0\x92\x98\xdc\x27\x4a\xc7\xd2\x39\x0d\xce\xbd\x7b\xe3\x4d\xf1\xd3\xc9\xf7\x3f\xfc\x12\xff\xe5\xf7\xba\xe1\x8e\x32\x47\xb8\x5a\xa8\x0b\xdc\x37\x2b\x3c\x47\xc9\x7a\xc5\xfe\x64\x6e\xcf\xcc\x94\x40\x49\x58\x93\xcf\x44\x3a\xea\x3a\x03\xd4\xed\x73\x85\x92\x95\xfe\xc1\x47\x48\x90\x4d\x26\x5d\x32\x73\xb9\xb3\x48\x4e\x95\x0b\x5d\xfe\x55\x14\x6c\x71\x28\x7a\x26\xfb\x5a\x2a\xd2\x6a\xcd\x66\x2c\x80\xe2\x90\x0b\xb8\x6a\x68\x6b\xd0\xe6\x04\x4c\xb4\x74\xe5\x63\x3d\x8d\x3c\xf6\xf0\x3a\xd5\x17\x27\xbb\xa2\xcb\xa2\x64\x81\xfe\x5f\xfd\x38\xce\xc3\x5c\xc8\x03\x8b\xea\xe3\x63\xb5\x10\x68\x59\xbf\xfb\x6d\x62\xfb\x0c\x8a\xbd\x9f\x0b\x8c\xd3\x72\x50\x55\x68\x1b\x15\xf0\x87\x4c\xb0\x9c\xd0\x2c\xf3\x02\x7e\x04\x27\x08\xbd\x1a\xc6\x7a\xda\xfd\xcc\x14\x6d\xa1\x12\x72\xec\x65\x12\xf3\x41\x4a\x06\xc8\x25\xb3\xd7\xbf\xe6\xb3\xae\xfc\xda\x28\x0a\x70\xbb\xd0\xe0\xb9\x71\xac\x8d\x44\x36\xb5\x5b\x00\x56\xa6\xeb\xc6\xe0\xaa\xf5\x3d\xad\x4b\x57\x6f\x65\xb1\x51\x98\xa2\x59\x39\x0e\xd9\xfd\x3b\x9a\x82\xf7\x07\x76\x3e\x29\xb8\xc6\xfb\xc0\xf5\x50\xe8\x0d\x78\xaa\xc8\xac\xf2\x9c\xcc\x72\x1d\xf2\xdc\xbd\x14\xa6\xae\x92\xfd\x33\xe9\xd7\x26\x93\x19\x70\x1d\xbe\x9a\x1d\x7d\xce\xed\x44\xbc\x52\x73\x61\xa1\xb4\xc9\x78\x90\xc9\xa4\x80\x6b\x29\x91\xd1\xe8\x9c\xbb\xf2\x02\xb5\x14\x19\xa0\x23\x54\x7b\x8a\x4e\xc6\x05\x46\x81\x02\x03\x4d\x21\xb1\xe4\xe5\x2b\xbe\x28\xb1\xcc\xa2\x1d\xad\x70\x70\x2a\x0a\x69\xa8\x64\x93\xea\x76\x93\x97\xa0\x9e\x71\xdf\x1e\x08\x46\x67\xb3\xaf\x1d\xa9\x09\x98\x1c\xcc\xac\x38\xcb\x4f\x76\x06\x06\xcd\xf1\xcf\x58\x05\x4d\x98\xa9\x45\x74\xd3\x9a\x3e\x9c\x8e\xe9\x75\x54\xd8\x22\x57\x49\x2a\xea\x13\xa8\xa2\x37\xc0\x7d\xb2\x5c\x47\x38\x5c\x51\xa6\xe4\x09\x82\xbf\xaf\x43\xc4\xb2\x29\xba\x28\x9c\x2f\xb0\x25\x79\x0d\x5f\xe9\x1e\xc8\xd4\x6c\x21\x2c\x84\x48\xb7\x69\xd4\x08\x61\xd9\x4a\xda\xd8\x25\x2b\x14\x8a\x32\x31\x68\xdb\x1c\x9e\x65\x0e\x2e\x46\xc3\xea\x4d\x95\x40\x28\x32\xd4\x15\x9e\xdc\xda\x2a\x9e\x9a\x50\x91\x19\x51\x9b\x6a\xf0\xc5\x09\x1b\x1f\x80\x33\xc5\x36\xce\x78\x05\x1a\xfe\x50\x98\xab\x6a\x27\x30\x18\x1b\x52\xe5\x38\xff\xa3\x08\x97\x64\xcf\x5b\x27\x9a\xcd\x9c\x9e\xa3\x59\x2e\xcd\xa8\xc2\x24\x3e\xa3\x51\xbe\x2e\xcd\xa4\x14\xf3\xb3\x37\x64\x73\x8c\xb4\x23\x5b\xd5\x45\xaf\x95\x00\xe2\x93\xb4\x41\xcb\x8e\x8e\x6d\x6e\x8d\x91\x3d\x06\xff\x90\x80\x35\x63\x27\x6e\x80\xd8\x16\x61\xfb\xa0\x56\xa9\x9c\x3a\x95\x72\xf6\xbb\xb9\xc0\xb8\x1c\x71\xb7\x17\xd8\x61\x31\xe5\xff\x18\xc6\x41\x6d\x62\x4f\x93\x66\xc3\x8b\x0a\xfa\x4e\xbb\x2c\xa0\xea\xad\x6e\xaf\x5b\x22\xe7\x35\x89\xb9\x9d\x94\xd7\x13\x0a\x08\x28\xb2\xa2\x90\x75\x1a\x36\x7e\xad\xe6\x19\xf8\x02\xa4\x7d\xc7\x46\xda\x77\x1a\x93\x76\x4b\x1e\x6f\xda\xd3\x9e\xc2\xc9\x8f\xeb\x73\x88\x62\x88\x15\x07\x62\xa5\xb6\x7a\x3b\x83\xe4\x66\x5e\x98\x18\xd9\x82\xda\xfe\x64\xcc\xa7\xc1\x65\x9b\x5d\xd8\x6f\x57\xb8\x7c\x45\xa4\x81\xb9\x14\xfe\x64\xeb\x35\xfc\xf5\x97\xf7\x95\x14\x1b\x58\xc8\x18\x45\x4a\x11\xf4\x76\x7a\xfa\xe6\xc3\xf3\xd7\x4f\xbf\x7f\xf9\xfc\x59\x5b\x1f\xa9\x22\xd0\x24\x61\xe0\x97\xc3\x86\xb6\x30\x81\x23\x1e\x6d\x0d\x9d\x37\x2f\x9e\x9d\xb4\x0b\x64\xcb\x5d\x19\xb4\x1c\x5e\xee\x3a\xab\x69\x88\xcb\xf5\x96\x17\xb3\x6a\x92\xf4\x48\xb3\xf1\x76\x48\xd6\x45\x25\xcc\x3f\x08\xbb\x87\x86\x02\xc6\x5f\x3f\x71\x3f\xb2\xd0\xf6\xa3\xdb\xe2\xda\xb5\x08\x19\x0a\x41\xd7\xee\x84\xb0\x6d\x75\x08\x4a\x61\xc6\x5c\x35\x34\x12\x91\xbc\x13\x32\x3f\xa1\xbe\x2d\xe6\xe2\xc7\x93\x3c\x17\xcf\x9e\xf1\x83\x40\x0e\x59\xba\x15\xd3\x5e\x83\x61\x6f\x88\x86\xa6\x82\x71\x9c\xb7\xb9\x35\x15\x1e\x2d\x04\x69\x62\xa7\x7a\x23\x02\xea\xae\xa8\xde\x51\x0d\xd6\xfc\xb0\x23\xd5\x12\x53\xec\x37\x4d\xad\xd7\x09\x43\xbe\x53\xa2\x8a\xa1\xd3\xba\x1d\xed\xcb\x2e\x2d\x7c\x9d\xa1\xde\xcc\xa2\xf8\x15\xd1\x70\xbb\x21\x23\x9f\x44\x51\x23\x36\x2c\xe4\x28\x5f\x49\xd8\x50\xcc\x24\x08\x0f\xbd\x68\xb5\xf0\x86\xa4\x8d\x79\x80\x40\x51\x77\x01\xac\xd1\x1f\x6d\x54\xd6\xa1\x70\xa9\xa9\xea\x2e\x58\x23\x9a\x12\xa1\x72\x86\xb2\xc3\xf2\xe5\xca\xfe\x2c\x33\xec\x4a\x7f\x32\xce\xd5\x50\x39\xd0\xd0\x31\x6f\xfd\x28\xa2\x3f\x07\x76\x4d\xc1\x7d\xbf\x5f\x77\x2d\xf7\xeb\xee\x36\xa2\x93\xa2\x22\x7b\x52\x25\x25\x2b\x6d\x15\x98\x3e\x0c\x2e\xa5\x9d\x4e\x95\xe5\x87\x2c\xd5\x81\x15\x1e\xb3\xb1\xfd\x65\x01\x0a\x54\xcd\xaf\x40\xaf\x6a\x3f\xbe\x8d\x85\xb6\x06\x6b\x34\x0f\x6b\x76\x91\xe2\xed\x6d\xad\xd2\x38\xb2\xdb\x84\x73\xd8\x4f\x45\x33\x04\x5b\x7a\x9f\x98\x33\xe5\x6d\xa3\x58\x01\xa5\x1c\x5b\xdf\x75\x0f\x7a\x2b\x01\xee\x1c\xc7\xec\xd4\x7b\x6c\x7b\x75\x8b\x4b\xec\x1c\xc1\xf2\xaf\xf7\xc0\x7e\x67\xac\xe3\x6e\x0d\xd6\xf1\x56\x52\xc9\x96\xe6\x97\xad\xe9\xab\x2a\xc3\x70\x58\xae\x1f\x99\xf5\x50\xb8\x74\x5d\xa0\x64\x39\x80\x31\x46\x34\x5c\xbe\x76\xd2\x59\x5e\xd2\x31\xd5\x33\x2a\xda\x9c\xc5\x00\xcd\xb5\x03\xdc\x28\xb9\x82\x88\x16\x96\x6d\x95\xb0\xb6\xca\x51\xeb\x3e\x39\x91\x11\x66\xfb\xbe\xb8\x8f\x85\x1f\xff\x39\x1a\xff\x14\xbd\x6e\x1c\x01\x2d\xb9\x63\xbd\x98\x48\xce\x61\x8a\x2c\xd5\x51\x61\x20\x22\x1a\x38\x17\x01\x62\x72\x6b\xb9\x74\x01\x16\x7f\x0f\xbd\x3b\xbb\xc0\xe9\x5a\xfc\x23\x4b\x13\x81\x32\x24\x6d\x56\x82\xbe\x6c\x77\xef\x13\xce\x5d\x86\xf0\xea\xbe\xe0\xdc\xe5\xf9\xf3\xb5\x17\xbc\xf3\xec\x38\x47\x48\x0d\xa5\x0e\xfc\xdf\xd4\x4f\x56\x90\x56\x37\xa0\x7a\xd6\x35\x0a\x35\xd7\x3f\xfe\x50\xfc\x94\x77\x9a\x1d\x6f\xad\xc5\x70\x8a\x7c\xfd\x68\x02\xcb\x46\xb1\xe9\x23\x85\x92\xa6\x39\x61\xeb\x00\xb2\x02\x17\x9e\x02\xf7\x1d\xa5\x70\xb0\x79\x6a\x97\x07\xf8\x5b\xfd\x7b\x9a\x46\x34\x8d\x34\xbf\xad\xac\x47\x71\x95\x00\xbd\x97\x53\x49\xe9\x71\x1f\x20\x13\x4b\x04\x8c\x50\x28\xe0\x5a\xc3\x5c\x1b\x0b\x93\x25\xd1\x4c\x5c\x9f\x71\xb4\x9d\x4b\x79\xe1\x86\x19\x86\x06\xcb\xe6\xb9\xb6\xd1\xeb\x6e\xe3\x38\xa7\x9d\xb1\x2c\xa7\x45\x0a\x94\x23\x7b\xcc\x14\x39\x0e\x27\xb4\xa2\xb5\x0b\xdc\x1f\x93\x14\x37\x96\x38\x5b\xe1\x37\x1b\x72\xc8\x06\x6c\x04\x1f\xab\x84\x5e\xb3\x3c\x6d\xc1\x7a\x5b\xcd\x36\x13\x0e\x58\xaa\x97\xe2\x21\x03\x76\x58\xb7\x88\x19\xa8\xb1\x95\x27\x4f\x4f\x20\xfa\xb2\x9b\x29\x86\xec\x60\x3b\x21\xc2\xe1\x45\xe8\xab\x7c\xba\x9c\x76\x95\xee\xa6\x5c\x72\xcb\x09\x5b\x77\xb4\x8b\xbd\x38\x65\x79\x42\x9e\xfa\x7e\xb2\x8e\x31\x33\xb7\x7e\xb9\x6d\xb1\x8c\x7e\x67\x07\xce\x06\x89\xed\xd7\xd1\xe4\x28\x5a\xf5\xc8\x96\xe3\x69\xdf\xb3\x7a\x3e\xb3\x0d\x22\x1c\x3b\x89\xf8\x4e\xa1\xac\x73\xc3\x18\x25\xc2\x17\x97\xf3\x22\x45\xde\xc6\x16\x44\x9b\x00\xce\x2f\x95\x06\x48\xfd\xc1\x88\x94\x30\x22\x87\x6d\xb5\xe4\x1d\xb1\x22\x87\x35\x58\x91\x86\xcc\xc8\xe1\x56\xcc\xc8\x61\x81\x7b\x49\x35\xc7\x4e\xfd\x64\xda\x3a\xcb\xd9\xc9\xf3\x5f\x7f\xf9\xe9\x94\x26\x6a\xee\x7e\x7b\x4a\xc8\x99\x1c\xb5\xe1\x96\x14\xf8\xee\xb6\x24\xc8\x6a\xed\x6d\xe7\x5d\x40\x7c\x1b\x70\x42\x3a\xfc\x5b\x24\xf2\x6e\x0b\xfc\x6a\x76\xa5\x11\xfc\x5b\xb1\x2c\xfa\x3c\x1a\xed\x40\x1d\xd6\xa5\x1b\xe6\xe5\xaf\xbf\xbc\xff\xd9\x8b\xc2\x80\xea\x0d\xdf\xae\xcf\x7f\x82\xd7\xe9\x17\x3f\x2a\xb6\x29\xdc\xed\xbe\x59\x81\xd2\xc9\x82\x6e\x71\x2f\xdf\xbc\x78\x76\xf2\x2c\x4c\xfd\xe4\x12\xa2\xeb\x2f\x4f\xf2\xf2\xc3\xdf\x29\xed\xb3\x40\x63\xeb\x95\x6c\x4f\x0d\xad\x7b\x54\x83\x2c\xb6\x3d\xdc\xa7\xeb\xd5\x2a\x41\x18\x06\x4f\xa3\xf9\x1d\x1c\xec\xcc\xf0\xad\xf9\x93\x43\x32\x12\x10\x5a\xec\x7a\x8b\xac\xc7\xbb\x94\x43\xf0\xfb\x64\x1d\x07\x4f\xd7\x41\x08\x63\x1f\xb6\x81\xdf\x76\x10\xcc\x0e\x5f\x06\xbf\x5a\x47\x4a\x35\x5a\x67\x65\x84\xba\xdc\x78\x4d\x10\x75\xe0\x39\xa2\xf2\x18\x17\xc5\x59\x95\x1e\xbc\x83\x42\x40\xd5\x3a\x5f\x56\x87\x93\xd2\x70\xac\x26\xe8\x56\x5f\xe2\xa1\xf0\x7d\x91\xa6\x6b\x1a\x8f\xfe\xfc\xd3\x2a\x64\x06\xda\x97\x10\x5e\x51\x13\xde\xeb\x04\x7f\x0f\x2f\x12\x04\xe5\x93\x93\x28\xf1\x3f\x9e\x7e\x84\x57\xfc\xc9\xed\x08\x3f\x0a\x09\xb8\x5f\xcb\xfe\x76\x8e\x9b\x5b\x49\x42\xfc\xc0\xb8\xb6\x89\x34\x0d\xa3\x6d\xb2\xd0\x16\xd2\x51\xc3\xd0\xa2\x6a\xa1\x89\x79\xd0\xb7\xdc\xd5\x3f\x98\x88\x3f\x98\x88\xfa\x08\xd1\x52\xef\xdc\x21\x4e\xdc\x07\xb9\xce\x0e\x92\x2e\x96\x73\xcb\xd2\xc1\x49\x14\xc2\x18\xbf\x78\xf6\xc5\x19\x19\x73\xf0\x56\x54\xb9\x72\x3d\x1d\x42\xe8\x14\xfa\x08\xb6\x41\xf3\xae\xa0\x24\x26\xd0\x31\xa4\xb4\x75\x6d\x0d\xad\xa7\x51\x94\x5c\xc1\xe0\x1d\x0c\x42\x04\x7d\xfc\xb7\x77\x2f\xbe\x3c\x7f\x6c\x9d\xc3\x7d\x64\x92\xcb\x80\xf5\x05\x39\xe5\x26\x17\xe1\xde\x0c\xb8\x62\xbe\xce\xdf\xde\xbd\x70\x8b\x2f\xae\xca\xeb\x6b\x6f\x3b\x56\xdc\x12\x56\x67\xf9\xae\x41\x87\x7f\x48\x7e\xff\xd2\x92\xdf\xee\x76\xe8\xb6\x7b\x07\xe8\x46\x68\xf4\xa9\x9f\xac\xee\x00\xd5\xf4\xa1\xef\x23\x9a\x59\x40\x73\xf7\x28\x56\x94\x67\xa9\x26\x46\xec\xdc\x01\x8a\xfd\xa1\x0d\xdc\x16\x82\x3f\x43\x74\x9e\xa4\x90\x20\xe4\xcb\x64\x3e\x0f\xe3\xf9\xf6\x30\x64\xae\x8f\x0b\xe8\x7f\x6c\x0e\x52\xdb\x7c\x9a\x02\x75\x04\xdc\x30\x5e\xad\xc5\x64\x5c\x51\x3b\xd5\xd5\xfe\x9c\x51\x17\x63\x36\x4b\xf2\xa6\x36\x64\x48\x8f\xbb\xfc\xc3\xf3\xe4\x93\x1a\x75\xa7\xe6\x6e\x68\x2e\x32\xb7\x54\x76\x44\x7f\x3a\x02\xee\x02\x99\x93\xb4\x36\xca\x79\x64\xf8\x91\x17\x2e\x07\x4b\x6f\xb5\x0a\xe3\x79\x6a\xa5\x2a\x72\x00\xa3\x52\xf7\x09\xf9\xd0\x79\xa5\x7f\xb8\x53\x68\x38\xcf\x79\x44\x91\x8f\xd5\xb7\x6d\x9c\x5b\xd5\xbc\x8c\x5a\xdc\x7f\x4b\x21\x4b\x2e\x1e\x5e\xd0\x6c\xe4\x74\x7d\xce\x75\xb2\xa6\x45\x52\x7d\x6f\x85\xd7\x28\x8c\xe7\x4e\x98\x3a\x69\x18\xcf\xd7\x91\x87\x86\xce\x2f\x0b\x18\x3b\x04\x06\x30\x00\xf4\x2b\xca\x56\xa6\x8e\xef\xc5\xce\x39\xa4\x19\xcc\x93\x0b\xc7\x73\xe2\xf5\xf2\x1c\x22\xe0\xa4\x98\xf4\x01\x9c\x04\x39\xe7\x49\x12\x41\x2f\x76\xbc\x38\x70\xae\xc2\x28\x72\xbc\x28\x22\xdf\xb0\x26\xe1\x45\x08\x03\xe7\x8a\x74\x8f\x20\x5e\xa3\x18\x06\x43\x2b\xa5\x14\x6b\x29\xca\xf9\x6c\xb4\x29\xcc\xfb\x6c\xb4\x2a\xca\x3b\x6c\x34\x32\xfa\xf9\x09\x5e\x17\x92\xf1\xa2\x6f\x7e\x66\xf1\x3b\xf5\x88\x7f\x9d\xc7\x95\x69\x9b\xeb\xe8\x9f\x77\x1b\x60\x5d\x27\xa1\xfb\x6d\x20\x9e\x57\xd8\x4e\x66\x60\x54\xc1\xc8\xd4\xef\x69\x5c\x87\x25\x2a\x23\x64\x13\x5b\x84\x53\x3b\xbf\xb2\x22\x47\x31\x29\xdb\xc1\xe5\x0a\x5f\x0f\x68\x9b\xd6\x45\x09\xdc\xae\xab\xbd\xe4\x61\x6e\x92\xc0\xd7\x09\x27\x2f\x4b\x3b\x15\x54\x5f\x77\x15\xd4\xcb\x0e\x46\xdb\xd9\xff\x2b\x10\xca\x2e\xa1\xc9\x82\xd5\x1a\x55\x68\x31\x01\xaa\x17\x15\x0f\x12\x3f\xb5\x55\xea\xcf\x5e\x85\xb7\xe0\x43\x66\x63\xc5\x33\xf5\x76\xc6\x99\x90\x28\x9e\x1c\xe9\xd9\x9b\x93\xd3\x0f\x9a\x86\x1f\xb8\x8f\x53\xe8\xaf\x51\x88\xaf\x69\x3d\x50\xbd\x26\xcf\xe3\xdf\xae\xf0\xff\xa1\x58\xb2\xd4\x49\x28\xab\x9d\x0e\x23\x5a\xad\x22\x59\xc1\x18\x22\x27\x4e\x10\xbc\x80\x08\x41\x59\x5c\x1d\x7b\x88\x05\x08\x7e\x38\x8f\x3c\x13\x46\xef\xa0\x17\x50\x5c\x0a\x12\x7f\x4d\xd6\xe4\x49\x0e\xa5\x2d\x51\xb9\x5d\x38\x24\x61\xe0\xdf\x2b\x40\x74\x9b\x5d\xa0\x5d\x4e\xa9\x22\xb7\xe1\x4e\x98\x54\x56\x37\xac\x2d\xa7\xfa\x32\x4c\xb1\xb3\x15\xbb\x4a\x7a\xb8\x17\x2c\x2b\x05\x44\x14\x7e\x84\x4e\x2f\x5d\xfb\x0b\xc7\x4b\x1d\x9a\x9f\x21\xed\xdf\x07\xda\xfc\x07\x13\xfb\x05\x98\xd8\x62\x5c\xbc\x47\x8c\xec\xb8\x33\x46\x76\xdc\x01\x23\x6b\xcd\xf2\xf4\x07\x23\x6b\x30\xb2\x84\xb2\xfc\x7b\x70\xb3\xf7\x9b\x86\xfe\xc1\xdf\xde\x29\x7f\x4b\x90\xe3\x3e\xb1\x76\x77\xca\xe3\xde\x37\x60\xdc\x67\x3e\xb7\xbc\x39\x6f\x5c\x9a\x42\x82\x25\x32\x51\xd5\xfe\x18\xf8\x54\xea\x14\x7b\xfa\x13\xd2\xe6\xb7\x24\x8c\xf5\x44\x29\xac\xc9\x76\x79\x28\x54\xc6\x87\xbb\xce\x43\x71\xbe\xf6\x3f\x42\x7c\xaf\xea\x20\xff\xf2\xf6\xaf\x3f\x9f\xc6\xde\x41\x59\xda\x13\x9a\x1a\x89\x95\xe1\x07\xee\x13\x56\x96\x8c\x16\xda\xf0\x10\x0e\x39\xc2\xd7\xf6\x9a\xdc\xcd\x64\xc9\x5b\xa7\xd0\x91\x1d\xa5\x56\x2f\xd9\xe6\xe1\x67\x19\xc6\x0b\x9c\xb9\x6f\xd5\x5c\x67\xd2\x3c\xdd\x98\xb9\x14\x34\x4a\x2f\x60\xca\x37\x9c\xed\xad\xbd\x0c\xa2\xfc\x74\x2c\x2c\x4e\x2c\xd9\xa4\x0e\xc0\xb3\x5d\x70\xb6\x73\x28\x78\x4d\x19\xab\x99\xe7\x5c\x9f\x06\xcb\x30\x76\xe4\x7a\x8a\x58\x3e\x93\xa8\x96\xc6\x1a\xab\x6a\x7b\x3a\x94\xca\x39\xca\xe2\x45\xc5\xa2\xf2\x61\xed\x15\xc9\xfa\x7e\x9d\xae\x25\x53\x35\xb0\x64\x2d\x95\x57\xff\x64\xa6\x55\x33\x64\x07\x61\xd6\x49\xde\x0b\x0a\x30\x71\xb6\xec\x8b\xe2\x03\x76\x0a\x1a\x7d\x11\x4d\xc5\x86\x5c\x7e\xaf\x36\xde\xd7\x8d\xfc\xac\x77\x2c\x14\x23\xce\x94\xd7\xec\xc4\x99\x3e\x83\x34\xd2\xc5\xe0\xae\xc9\xc4\xd7\x77\xa2\xfe\x38\x4e\x4d\x8f\xd3\x36\x67\xa9\xe4\x61\x49\xb6\x3b\x51\x37\xdb\xf5\x68\xe6\x28\xca\xa8\xc9\x22\xcd\xbe\x17\xb7\xe0\xba\x72\xfc\xcd\x5d\x33\x5c\x81\xf0\xf0\x1e\xf8\x0b\x2f\x8c\xf3\x4c\x17\x68\xf4\xf9\x1a\xd3\x2a\xf8\x3a\xa3\x06\x70\x77\xac\x5a\x5c\xce\xaa\xe1\xf9\x8f\x07\x7f\xff\xfb\x7f\xff\x56\x5a\xc9\x39\x80\x29\x61\x92\xf8\x2f\xeb\x43\xfe\x2b\x5d\x45\x21\xe6\xf5\x35\x91\xaf\x7d\xc3\x60\x44\x9b\xbd\x83\x3e\xce\x7d\xcf\x5a\x17\xbe\xd6\xff\xb1\x27\xcc\xc3\xd7\x39\x9d\x6a\x56\x9d\xb8\x07\xc6\x47\xe0\xcc\x8d\x93\xa0\xb1\x2f\x9e\x38\x9b\xb9\x2e\x68\x83\x1b\x79\x38\x93\x95\xe7\x87\xf8\xfa\xd8\x19\x3b\x0f\xc3\x25\x41\x07\x2f\xc6\xff\xa5\x54\xf8\x8e\x73\xee\xf9\x1f\xe7\x28\x59\xc7\xc1\xc0\x4f\xa2\x04\x1d\x3b\x97\x1e\xea\x0d\x06\x38\x89\xe1\x60\x8e\xbc\xeb\xc1\x68\x34\xea\xff\x97\x6a\x9f\xa0\x00\xca\x56\x01\xf4\x13\x34\x60\xcf\x06\x63\x4b\xc3\x01\xf2\x82\x70\x9d\x9a\xed\xd9\xb3\xc1\xc4\xd6\x9e\x4f\x02\xcd\xcf\x7b\xd9\x89\xec\x8d\x46\x7d\xe3\x83\x4f\x83\x74\xe1\x05\xc9\x95\xd9\x3b\x8c\xe0\x25\x15\x51\x07\xfb\xda\x00\x9b\xba\x91\x72\x1c\xa4\x30\x98\x6f\xbb\x2b\xaa\x8b\xc2\x5d\xa9\x35\xbb\x3c\x17\x97\xcb\x68\x87\x92\x35\xcb\x3d\x67\x49\xb4\x38\x02\x52\xfd\x98\xa3\xf3\x76\xfd\xa2\x49\xdb\xe9\x82\x26\x23\x75\x07\xd0\xa4\x27\x72\x59\xef\xc8\xd0\x28\x77\xb7\x0b\x4f\x46\x76\x9b\xd3\x9e\xa9\xd6\x8f\xce\x14\xa5\x0e\x4e\x9c\x30\xc6\x10\xf9\x70\x85\x1d\x8c\xbc\x8b\x8b\xd0\x77\xd6\x69\x18\xcf\x9d\x97\xde\x35\x44\xce\x81\xe3\xa3\x10\x43\x14\x7a\x8e\xd0\xfb\xad\x3c\xbc\x70\x56\x08\x5e\x84\x9f\x60\xea\x24\xc8\x59\x60\xbc\x72\xd8\xe2\xd2\xa1\x3b\x2b\x64\x16\x2c\x17\x60\xee\x91\xfd\x81\x01\x68\x17\x25\x34\x17\x3e\xcf\xb1\x5d\x70\xb8\xf3\x75\x00\xf4\xbf\xf7\xc0\x64\xbc\x95\xe6\xdf\x35\x32\xe3\x64\xa9\x37\x05\xef\xc0\xf7\x50\xe0\x82\x33\x01\x7c\xa3\xd8\x8e\x3e\xa5\xb1\x2c\x32\x30\x9a\x01\x17\xd1\x32\x01\x52\x79\x7f\x46\x93\xc1\xba\xbc\xc5\x48\x47\x68\xdd\xd5\x51\x13\xa0\x93\xd8\x8f\x42\xe6\x5e\x78\x96\x29\x53\x37\x16\x1e\xb7\x64\x20\xd1\xca\x1a\x89\x54\x58\xd5\xcd\xd4\xcd\xe8\x70\xaf\x71\x40\xc4\x45\xd0\xfd\x19\x39\x15\x3d\xd7\x3a\x02\xb2\x35\x53\x74\x53\x2b\xd1\x1a\xc1\x80\x9c\x07\x3a\x47\x27\x8c\xfd\x64\x49\x8e\x01\x82\xbf\xaf\x61\x8a\x53\xc7\xf3\x51\x92\xa6\x4e\x10\x5e\x5c\x40\x04\x63\xec\x70\xee\x8f\x1e\x81\x74\x7d\x9e\x42\x9c\x32\x3d\x37\x39\x3e\x11\x14\xef\xbf\x92\x13\xc1\x73\xf6\x93\x81\x5c\x96\x4f\x89\x9e\x12\x7b\x39\xff\x4e\x0f\x8b\x40\x8a\xe6\xe7\x65\x7c\x74\x0b\xe7\x85\x96\x7e\xec\xe0\xbc\x98\xb5\x0e\xdb\x9d\x17\x04\xd3\x24\xba\xbc\x8d\xf3\xf2\x4e\xf4\x5c\xeb\xbc\xc8\xd6\xf4\xbc\xac\x53\x76\x52\x18\x17\xea\x5c\x2d\x42\x7f\xe1\x84\x71\x8a\xbd\x98\x1e\x07\x7a\x06\x18\xf2\x3b\xe9\x22\x59\x47\x81\x93\x7a\x38\x4c\x2f\xae\x1d\xb9\xf7\xf2\x5c\x7d\xdd\xc7\x63\xf7\xf6\x8f\x87\xc0\x81\x16\xc7\xe3\xb0\x8b\xe3\xc1\xde\x5b\xce\xc9\x21\x93\xad\xf5\x3e\xba\x39\x38\x87\xcd\x0f\x0e\x38\xdb\xd9\x05\x93\xbd\x59\xee\x05\x41\xe8\xcb\xb9\x52\x70\xf0\x99\xd2\x9f\xee\x55\x18\xe0\x85\x0b\xdc\xf1\x68\xf4\x1f\xe2\xd9\x02\xb2\xa2\x3a\xc6\xc3\x15\x82\x04\xa1\xe1\xd3\x74\x05\x7d\xfc\x8e\xf0\xb5\x54\x84\x8d\x35\x55\xc9\x64\xdf\xb6\x07\x64\xfd\x62\x4c\x1d\x43\xbe\x28\xd7\x92\xa9\xef\xb8\x0b\xce\x38\x5a\x34\xf9\x7c\xd7\xf2\x39\x90\x0f\x5e\xc3\x4f\xf8\x05\xc3\x98\xb6\x5d\x73\xc8\xed\xe8\xe7\x4d\x75\x42\xe4\xc4\x6b\x89\x7b\xfb\x80\x3c\xd1\x11\x4e\x7f\x73\xad\xbf\x19\xe9\x6f\xf8\xee\xce\x66\xa2\x6b\x55\x42\xc1\x52\x06\x8c\x2c\x4c\x0b\x9e\x6e\x7a\xba\x33\x94\x98\xf0\xcd\x2e\x33\x38\x8e\x4b\xc6\x02\xee\xb7\xae\x09\xd7\xd7\x49\x60\xd6\xcc\x19\xef\x01\x37\x70\xcd\xfa\xfc\x95\x20\x3b\xc8\x81\x6c\x57\x7f\x45\x61\x36\x52\xd0\xa0\x44\x80\xc8\xdf\x75\xfa\xde\x93\xc5\xa8\x6c\x5b\xb2\x57\xb8\x25\x7b\x15\x5b\xa2\x65\xad\xcf\x1e\xfa\x82\x5a\xc0\xb9\xc7\x7b\xa0\xb0\xb6\xaf\xb5\xa8\x63\x8d\x4a\x99\xd6\x83\x69\x67\x94\x1a\x1d\xcc\xc3\xad\xce\x65\xbb\xaf\xcb\xd7\xc5\x0b\x4f\x12\x06\xad\x65\x30\x5e\x86\x76\x8c\xbe\x3c\xa9\x98\x14\x92\x8a\x49\x21\x5e\x4e\x9a\x92\x8a\x43\x75\x7a\x07\xae\x28\x48\xb8\x15\xd5\x50\x0c\x99\xa4\x1b\xfb\x19\xba\x21\xc5\xa9\x63\x57\x16\x09\xe5\x5a\x01\x45\x44\x46\x45\x44\x64\xa2\x24\x32\xde\x7b\x73\x9a\xb2\xa3\x60\xcb\x7f\x5d\x0b\x4e\xa2\x3e\xf5\x38\x2a\x23\x1e\x47\x45\x7b\x74\x54\x8b\x74\x68\x4c\xac\xb9\x65\x7c\x94\xb1\xcd\x38\x43\x40\xf6\x8b\xec\x7a\xa4\x73\x45\x01\xf4\xc3\xa5\x17\x31\x0e\x82\x92\x8f\xff\x30\x98\x2b\x59\x3f\xcc\xba\xec\x8b\x24\x8a\x92\xab\x93\x35\x4a\x13\xca\xb2\xb3\x2a\x7c\x4d\x88\x9c\xbd\xa2\x4d\x65\xad\x46\x7b\xf6\xf8\x96\xb9\x5d\xed\x72\x0b\xe7\xb2\x4c\xb9\x65\x10\xc6\x11\xc4\xa9\xe0\xc3\x73\xbc\xd5\x1d\xf1\x40\x66\xf4\xf1\xbe\x79\x42\xd4\xec\x8f\x5b\x24\x59\xda\xb5\x20\xd4\xbe\x95\xe8\x01\x0b\x82\x5c\xbb\x12\x48\x33\x70\x36\x02\xa3\x59\x4b\x6b\x95\xe2\x3a\xfc\x10\xf9\x5c\x07\x4e\x24\x21\x17\xb8\x93\xe1\x9e\xf8\xe9\x93\x83\xb8\xc7\x99\x12\xd7\xbf\x76\x73\xe7\xef\xa0\xe8\xfc\x1d\x94\x9e\xbf\x3c\x3e\x17\x25\x5c\x6b\x90\x42\xeb\x4b\xdc\xc5\x55\xf7\xe1\x4e\x87\xf7\xa1\x89\x25\x76\x2e\xfa\x96\xb1\xa4\x33\x3c\x29\xe4\xf1\xca\x59\xbc\x3a\x78\xb2\x67\x45\x89\x5d\xeb\xd3\x9d\x52\x65\xbd\x41\xa3\xa4\xda\xe9\x6b\xa0\x51\xe3\x2c\x8d\x52\x57\x7f\x37\xd8\x37\xfe\x8a\x69\x54\x21\x1f\x57\xce\xc6\xd5\xc1\x3d\xfb\xc5\x6a\xbf\x6d\xf3\xa8\x57\x51\xfe\x2a\x08\x2f\x5d\xe0\x7a\x41\x20\xca\xaf\x01\x37\x41\xb2\xdc\x1b\x73\x81\x1e\xa4\xd8\x43\x38\x1d\x5c\x85\x54\x53\x41\x4d\xe7\x76\x9f\x46\xe9\xc8\x98\x5e\xce\x07\xfe\x1a\x5d\x42\x97\x5a\xa4\xa8\xc9\x5d\x99\xe0\xf1\x15\x84\xf1\x00\x27\xa4\xe1\xfa\x5c\x2f\x3e\x97\xd2\x61\x83\x64\x39\xd0\x0a\x11\x27\xf1\x00\xc1\x34\xfc\x27\xa4\x0d\x78\xd1\x42\x5a\x14\x9e\x7a\x4f\x72\x8b\x97\xae\xd9\x67\xa5\x96\x07\xe7\xd7\xae\xae\xbf\x04\xdc\x3a\x0a\xdc\x20\x0c\x06\x61\x9c\xd2\x2c\x68\x8d\xcd\xfe\x56\x2b\xbb\x61\xfa\x47\xa5\xa6\xff\x98\x9b\xfe\xe5\x9b\x21\xfc\x84\x61\x1c\xf4\x6e\x82\x64\x79\xcc\xde\x85\x31\xb5\xb1\x73\x0d\x66\x8f\x40\xc4\xed\x03\x1c\xfa\x1f\x21\x2a\x68\xc2\x5e\xba\x7d\x10\x78\xd8\x3b\xc5\x68\xed\xe3\xb4\xa8\x37\x0f\x7b\x83\x94\x35\x71\xfb\xc0\x8f\xbc\x34\xa5\xde\x2e\x14\x21\x8c\xd5\xb9\x33\xf5\xfa\xfb\x30\x0e\xc2\x78\x4e\x5a\x91\x0d\xbb\x24\xa7\x45\xec\xc7\x8b\xe0\xd8\x75\x41\x18\x87\xf8\x58\x7a\x0b\xf4\x6f\xf0\x22\x4c\x87\x1f\xd2\xf5\x0a\xa2\xde\x70\x38\xf4\xd0\x9c\xba\x0d\xa7\x7d\xc0\xde\x44\x61\x8a\x61\x0c\x51\x3a\xa5\xbf\x83\x64\x39\x94\x8f\x7a\xfd\x0d\x08\xc2\xe0\x05\xdd\xa6\xe7\x11\x3d\xbc\xf9\xbe\x65\xf3\xa1\x17\x04\x3d\xd9\x8b\x70\x50\xee\xf5\xc1\x0d\x55\xfd\x1d\xc3\xe9\xb7\x37\xf2\xb5\x1f\x25\x29\x4c\x71\xef\xcf\x67\x74\x71\x7f\x9a\xba\x4c\xb3\x39\xfb\x33\x80\x43\xe6\x00\xdd\xff\xfc\xb9\xc7\xa0\x97\x42\x4c\x3b\x06\x62\xd5\xe0\xe1\xb8\x0f\xb2\xef\x14\x20\x5c\xe0\xba\xfd\xfe\x66\xd3\xdf\x80\xab\x30\x8a\x9e\xc1\x14\xa3\xe4\xba\x70\x05\x35\xa0\x33\x44\x70\x99\x5c\xc2\x1e\x7f\xc1\x76\x7a\x18\xb0\x8e\xe9\xf8\xfd\x0d\x90\xd8\xcf\x37\x9d\x20\xee\x1a\xc3\xa0\xc7\x0e\xca\xf0\x35\xc3\xfd\x9e\x36\x01\x16\xd0\xd0\x1b\x01\x3c\x9c\x43\x2c\x0d\x52\x7d\xbe\xf0\xb9\x5c\x9c\xde\x43\xbf\xbf\xe9\xf7\x01\x3b\x74\xf5\x87\x62\x2e\x1f\x70\x2a\x06\xa3\xb6\xe2\xaa\x91\x80\xdc\xb0\xf9\x3a\x0c\xfa\x0f\xc2\x8b\xde\x43\x38\xbc\x08\xe3\xa0\x07\xa7\xdf\xba\x8f\xdd\xe9\x74\xaa\x3a\x80\xc0\x7d\x06\x2f\x08\x0a\x86\x49\x3c\x7c\xe5\x61\x7f\x31\xfc\xf1\xfd\xfb\xb7\xc3\xb7\x1e\x5e\xbc\xa5\xb6\x62\xb7\xdf\x7f\xf4\x48\xeb\x82\xf9\xa3\x4c\xa7\x53\x38\x54\x9f\xf6\xfb\x37\x11\xc4\x4e\xcc\xdd\x54\xd0\xf4\x57\xc9\x8c\xff\x89\xed\x19\x9b\xa4\x66\x03\xdf\x0c\x8d\x37\xd2\x73\x2c\xf3\x5c\xfa\x9b\x66\x9e\x3f\xf3\xb0\xe7\xc3\x18\x43\xb4\xf9\x15\x78\xd3\x5f\xe5\xc5\xda\xd9\x78\xbf\x12\xd8\xb1\xd5\x3e\x9c\x4e\xf5\x4f\x09\xa4\xcf\xbc\xd9\x77\xf1\xd4\x3b\x2e\x6e\x80\x66\x8f\x1e\xf5\xe2\x29\xea\x03\xd9\x26\x16\x9b\x8a\xa6\x37\xcf\xd8\x55\x7b\xfc\x70\x04\x5e\x3c\x3b\x66\x14\xf9\xd8\xfd\xc6\x3e\x79\x40\x49\x6c\xc1\x3b\xb5\x0d\xc7\x37\x74\x0b\x8f\x6f\xc8\x1e\x1e\xdf\xa8\x4d\x3c\x76\x1f\xbb\x9b\xcd\x06\x08\x5e\xe4\x38\xde\x3c\x80\xc3\xd5\x3a\x5d\xf4\x28\x76\xf9\x08\x7a\x18\x52\x04\xeb\xf7\x10\x28\x18\xc8\x44\xad\xfe\x66\xc3\x0e\x83\x03\x09\x76\xd3\x7b\x22\x87\xdc\xd6\x8b\x46\xbb\x5e\x74\x7c\x27\x18\x04\x19\x1c\x65\x8b\x21\x82\xc1\xda\x87\x3d\xea\x46\x35\xfd\xb6\x07\xcf\x34\x31\xef\x1b\x3c\x7c\xf1\x6c\x36\xc5\x00\x0f\x4f\x16\x61\x14\x20\x18\xd7\x6b\x0f\xfb\xfc\xff\xdd\x6c\xfa\x0f\xc4\x22\xd8\xc8\x72\x9e\xf9\x9e\x32\x5f\xf3\x99\xd2\x05\x56\x35\xe6\xfe\x5f\x3c\xbe\xa1\x07\xfb\xc3\x8b\x04\x3d\xf7\xfc\x45\xaf\x77\x86\x41\x3c\xeb\x4f\xbf\xbd\x51\x58\x32\x14\xdb\x44\x10\x68\x28\xd8\xbb\x29\x3c\x53\x6f\x66\x3a\x56\x0d\x99\x64\xf3\xe8\x91\xf8\x4b\xf6\x8e\xf5\x7e\xb1\xde\x2f\xd6\xfb\xc5\x5a\xbf\x9b\xfe\xa6\x0f\x5c\x97\x12\x2c\xb1\x0b\x05\x34\xeb\x86\x22\x3a\x78\x4f\x89\x7f\xba\x29\x23\x94\xd2\x12\xd9\xef\x59\x0f\x31\xb0\x1d\x41\x60\x3b\xaf\xc0\x4e\xfe\xf8\x24\xdc\x7e\xc1\x7b\x9d\x10\xcf\x91\xb7\x5a\xe4\xd6\x64\x60\x28\xdb\xd5\xb3\x99\x9d\x22\xb3\x83\xa0\x78\x86\x21\xed\xb1\x27\x71\x29\x83\x49\xfa\x6e\xe0\xec\x16\xc5\xd3\x6f\x6f\x20\xb9\x89\x5f\x86\xf1\xc7\x1e\x41\x1b\xa0\xb6\x99\xed\x86\x8e\x68\x7a\x5f\x99\xcf\xb0\xfe\x19\xa0\x87\x52\xdc\xb0\xf9\xc5\xea\x57\x2f\x9d\xbd\xb9\xd2\xf0\xa2\xe7\x92\xab\x82\xad\x44\x36\xfe\xfc\xf9\xa1\x24\x02\x90\xdd\xce\x3d\xf7\xff\x70\xaa\xa5\x9a\xf5\xfb\x0c\x10\x37\x9b\x07\x06\xc8\x54\x0b\x80\xa7\x90\x41\xa8\xe7\x1e\xbb\xfd\x61\xba\x08\x2f\x08\xe7\x11\x4f\xcf\xe0\x0c\xa0\xe9\xd9\xcc\x80\x25\x9d\xa1\x58\x3b\x59\x31\x0c\xc8\x3a\x7b\x10\xf4\x20\xf0\xc8\xe9\x89\x19\x35\x83\xc3\x30\xe8\x03\xc4\x7e\xfc\xfa\xa7\x1b\x6f\x78\x81\x92\xe5\x8b\x60\xf3\x2d\xf9\x1b\x27\x2f\x82\xcd\xaf\x1c\xa0\x85\x7d\x0e\xc3\x40\x76\xcb\xa6\x1f\x4d\xc9\x43\xcb\x7c\x1f\xe0\x87\xd3\x69\xf4\xe8\x91\x72\x95\x24\xe7\x2c\xf3\x3b\xa2\xc7\xb8\xfe\xf4\xd8\xa6\xdf\x30\x82\x1a\x0f\x97\xde\x8a\x5e\xdd\xff\xc7\xfd\xe6\xe4\xf4\x74\x08\x53\xdf\x5b\xc1\x1e\xec\xf7\x01\x35\x50\x1e\xa3\xe2\x16\x1b\x82\x03\x3c\x30\xf2\x98\x33\x75\x7a\x04\x91\x88\xff\x81\x43\x7f\x8d\x10\x61\xb8\xe9\x29\x22\x87\xe7\x29\xc6\x28\x3c\x5f\x63\xd8\x73\xc3\xc0\xed\x3f\xc0\x79\x64\xf8\x6e\x2b\x66\xef\xb8\xf8\xeb\x51\xf9\xd7\x98\x2c\x6c\x63\xb8\xfb\xa2\xb6\xee\xbe\x86\x95\xfe\xbe\x44\x5c\xfd\x36\xfe\x0d\x9f\xbc\x7e\x5e\x50\xf4\xd7\x27\x57\x9d\xab\x05\x1d\xca\x3f\xb2\x9e\x31\xba\x17\x00\x7f\xf7\xc8\xc3\x98\xba\xa5\x58\xbc\x6e\xad\x2e\x2c\x9c\xc9\xb7\xb9\xb1\x8c\x0d\x37\x16\xa6\x5c\x19\xef\x13\xd9\x93\x0f\x9f\xd5\x86\xec\xe9\x32\xbc\x6e\x15\xa1\x91\x9b\xea\x9e\x06\x42\x51\x69\x1a\x71\x8b\x5c\x65\x3c\x3e\xeb\x1d\xe0\x5a\x7d\x66\xa4\x4b\xcd\x8e\x7c\x3d\x96\x43\x28\x77\x4c\x6b\x70\xc2\xae\xa6\x36\xfd\xc1\x0b\x23\x82\x3b\xed\xeb\x46\x6a\xc1\x1e\x17\xb2\xb3\xe2\xf0\x01\x19\xe4\xc1\xcd\x21\x33\x33\xd6\x35\x37\x2f\xa0\x82\x8f\x1d\xad\xff\x42\xff\x85\x8c\x36\xd1\xaa\x2b\xae\xd9\xb9\x6d\xfa\xad\x13\xbe\x93\x26\x49\x71\x5a\xd2\x8c\xf9\x30\xf3\x77\x7e\xda\x9c\x33\xe8\x22\x29\xa9\x98\x5d\x45\x4a\x52\xa9\xb8\x6c\x96\xf3\x36\xe7\x33\x53\x2b\xe3\x6d\x19\xac\x5b\x24\x7d\x28\x09\x37\x29\x09\xe2\xd9\xcd\x59\xea\xd8\x3e\x08\xbe\x9c\xaa\xc7\xe2\x39\x5e\x98\xa6\xb9\xe6\x01\x53\x25\xe9\x6a\xeb\xe0\x85\x9c\xcf\x76\xd8\x20\x8e\x27\xc7\x83\xce\x88\xde\x38\x4f\xf4\xd8\xd9\x2f\x52\x5c\x4b\xe7\xa0\x2a\x97\xb1\x7d\xcd\x51\xac\x34\x57\x4d\x31\x35\xcd\x53\xc5\x31\xf5\x31\x64\xb9\xc7\xdb\x66\x09\x2a\x22\x90\x48\xf6\x5b\x9e\x9d\xa5\x06\x91\xcc\x4c\x13\xb8\x8e\xd6\x79\x0d\xea\xe8\xe4\xe2\xb9\x8c\x45\xd3\xb5\x88\x1e\xcb\x8f\xb4\x8d\x48\x94\x66\x69\xb6\x05\xd8\xd9\x6a\xe0\x96\x8e\x55\x71\x6a\x59\xcf\xad\x6f\xb7\xe2\x2d\xac\xb8\xe3\x9a\x6f\x62\x07\x37\x9d\x0d\xa8\xf9\x6e\xf9\xa6\x8a\xae\xed\x93\x2e\xcd\x2a\x5d\xbd\xb1\x9d\xdc\x75\xd9\xe9\x77\x78\xd7\x99\x73\xac\x4c\xc2\xed\x94\xdf\x7b\xe5\x89\xb8\xad\x58\x5a\x33\x19\x77\xbd\xfd\x68\x79\xe3\x36\x8b\x4d\xae\x7d\x9e\x9a\xd0\xc5\x1a\x67\xbf\xe5\xe1\xbb\x83\xa3\x67\x67\x34\x1b\x0c\xd0\x84\xee\x35\xa3\xb1\xf7\xfa\x20\x36\x38\x86\x25\x87\x70\x52\x71\x08\x2b\x8f\x83\x25\x4b\x6e\xd3\x33\xd6\x60\xb4\xaa\x8c\x40\xd5\xc7\xa3\x65\x3a\xf2\xb6\xdc\xf3\xb8\x5d\xd6\x9c\xfa\xa6\x67\x69\x2c\x56\x86\x61\xbb\x55\x99\x1a\x9c\x99\x57\x9b\x17\xd5\x31\x12\xcf\xbb\x30\xeb\x5a\xb4\x29\xf7\x2d\xbe\x5b\x85\xf8\xd9\x42\xbd\x9f\xcc\xa3\x70\xb9\x84\x48\x75\x74\x67\xb1\xdc\xcb\xd1\x64\xb5\x1b\xbc\xfe\xa1\x34\x96\xdb\xfc\x27\x17\x1a\x55\xa2\xef\x19\x73\x4e\x7f\xa2\x22\x60\x95\xaa\xc7\x94\x67\x44\x5d\x20\x26\xbc\x30\x8f\x27\x59\xcb\x8b\xf9\xbd\x54\xc5\x38\xed\x81\x11\x28\xcb\xfa\x38\x02\x67\xcc\x5f\x16\xb8\xac\xc8\x11\x39\x06\x8f\x55\xf2\xae\x74\x91\x98\xc5\xe4\x6c\x24\x7a\xcf\x22\x17\x91\xb9\x2a\xfb\x98\x0b\x5c\x6a\x20\x73\x81\xfb\xe3\xfb\xf7\x6f\xc9\x4f\x96\x02\xac\x6b\xf1\x94\x02\x75\x49\x86\x12\x49\xc6\x5a\x5f\x2c\x75\x57\xb0\xed\x4d\x63\xb9\x61\xec\x9c\x5b\x25\x63\xd6\x46\xc9\xa0\x98\x97\x22\xed\x5d\x50\x24\x09\xaa\x5b\x40\xc3\x22\xac\xf3\xf1\x9d\xa5\xf2\xb0\xa0\xe9\xf6\xa1\x6f\xdb\x21\xf0\x8f\xec\x90\x6d\x87\xbf\x92\x65\xc8\xe6\x22\x66\x28\xcc\x63\xc4\x2d\xe0\x11\x1c\xa4\x3a\xea\x8a\x8b\x14\x53\xab\x88\x13\x24\x84\x62\x57\xef\xfa\x47\x6d\xb4\x0a\x48\x96\x20\x4f\x77\x07\x4c\x2c\x63\x7b\x85\x51\x3d\x2c\x9e\x14\xb2\xfa\xdb\xa1\x6f\xc6\xc7\x6e\x66\x67\xa9\x9b\xb2\x80\xd5\xd8\x5d\x9a\x35\xa2\x0d\xca\xff\xf7\x1a\xa2\xeb\xb7\xa4\xcb\xdb\x45\xfb\xdf\xc9\x38\x74\xea\x8d\x51\x9f\x4e\xd1\x79\x2b\xbe\x6d\x76\x00\x32\x1f\xdf\x8f\x53\xa0\x01\xfd\x8b\x9d\x84\x62\xa1\xb7\xcb\x93\x30\x6e\x7b\x12\xca\xb9\xfd\xdb\x60\xff\x19\x9b\xb6\xe4\x3b\x53\x25\x03\x68\xd9\x35\x3b\x61\xee\x33\x9c\xb3\xe4\xec\xa9\x3f\xa0\x83\x1c\xe6\x92\x99\x3a\x58\xf0\xbb\x37\x73\x88\x69\xda\x11\xe9\x0e\xe2\x64\x1c\x61\x4c\x5f\x8d\xa1\x87\xe6\xe9\x90\x30\xb1\x05\x6e\x69\x6e\xff\xf3\xe7\x9b\x4d\x5f\x7a\xdb\x68\x8c\x39\x73\xa3\x11\xc3\xe0\x21\x4e\x5e\x26\x57\x10\x9d\x78\x29\xec\xf5\x87\xcc\x1b\xf7\x97\x10\x2f\x7a\xec\x02\xef\x7f\x77\x43\x58\x84\x63\x3c\x44\x70\x15\x79\x3e\xec\xb9\x6f\xd9\xc5\xee\xf6\x01\xe3\xdd\xe3\xcd\x31\xdc\xf4\x01\x6b\xe7\x72\x67\x38\xfe\xce\x7d\xec\x6e\xfa\x9b\x8d\x66\x80\x06\xe5\xee\xab\xa8\xdf\x56\x60\x31\xd2\x2c\xdc\x17\x0b\xf5\xc5\x5f\xf0\xc1\x8f\xf8\xe8\x95\x5d\x38\xe1\x42\x87\x45\x20\x29\xb5\x3b\xdb\x0c\xcc\xcc\x1a\x71\x40\xa9\xaa\x14\x40\x26\x9a\x00\x32\x31\x83\x02\x0a\x44\x18\xf3\xc4\xef\x54\xdb\x94\x0b\xf3\x33\x94\x98\x93\x27\x45\xe6\xe4\xba\x5c\x60\x7d\x42\x20\x25\xfb\xed\x8f\xb5\x05\xbf\xee\x9b\xcc\xce\x92\xaa\x15\x23\xbd\xf8\xdb\xc1\x4c\x42\x67\xd3\xe6\x47\xe1\x23\xbc\x4e\x7b\x90\x3a\xc2\xf2\x27\x73\x88\xdf\x5c\xc5\xe2\x70\x9c\x32\xbc\x65\x5f\xa1\x69\x59\x1b\xd2\x0d\x7e\xf4\xa8\x87\xa6\x68\x78\x11\x46\x18\x22\x8d\x04\xe1\x2c\x8d\x33\xbb\x78\x06\x53\x1f\x85\x2b\x9c\x20\x3a\xc7\x21\x8c\xd7\x4b\x88\xbc\xf3\x08\x6e\xfa\xfd\x3e\x60\xfe\x41\x43\x6f\xb5\x8a\xae\x19\xb9\xe0\x9d\xc5\x1b\xb9\x3a\xb6\xd6\x04\xf5\xd8\xfa\xc6\xff\x15\xff\x5f\xe9\xff\x3c\x64\x7c\xd0\x7f\xc5\xdf\x7c\xc3\x56\xe2\x4d\x09\x86\x3f\x9c\xca\x16\x67\xf1\xec\x3b\xfd\xc7\xf1\xcd\xe6\x41\xfc\x1f\x93\xef\x30\x07\x4b\xcf\xeb\x83\x87\x23\xcd\x31\xd1\x58\x19\x99\x34\xf0\xce\xf0\x8c\xd0\xb1\xe3\x8a\x15\xa6\xdf\xd9\xc8\x10\x75\x7c\x04\x55\x9f\xf6\xbc\x7e\xff\x58\x9b\x53\xc1\x84\x8a\xe8\x1c\xae\x1a\xa0\xe7\x51\xff\xa1\x7e\x5f\x39\xaf\x4a\x00\xb3\x55\xc6\xea\x16\x71\xc2\xd8\x81\xd6\xc5\xb0\xb1\x38\x21\x8d\x81\xda\xcd\xe3\x87\x23\x20\x12\x13\x89\xdf\x57\x28\xc4\xfc\xef\x4d\xff\x18\x9e\xe1\xd9\x34\x06\x70\xd3\x82\x56\x6b\x7e\xba\x53\x68\xf8\x55\xf2\x9f\xd4\x49\x90\xfd\x2d\x7d\xd3\xd9\xcf\xa7\x04\x5f\x63\x0f\x43\xee\xd1\x9b\x9a\x04\xdf\x9b\xaa\x13\x35\xbd\xd9\x80\x1c\x3a\xb3\xe2\x00\xd4\x75\x95\xa1\x3e\x9c\x7e\x0b\x87\xef\xaf\x57\x70\x3a\x9d\xe2\xfe\x06\x44\x53\x5d\x4f\x06\xe2\xa9\xb2\x76\x20\xed\x6f\x4f\x76\xac\x3c\xc9\xcf\xf0\xec\xd1\xa3\x1e\x05\xcc\xcd\x8b\x67\xc7\xbf\xfe\xe9\x06\x6f\x86\x7f\xba\xa1\x3e\xdf\x88\xfc\x8f\xb7\xf9\x95\xbb\x40\x03\x61\xc1\x27\xec\x53\x1f\x90\x6f\x36\x20\x9d\x9a\x2a\x3a\xd3\x17\x1d\x52\x07\xb9\x5e\xce\xf1\xed\x0c\x01\x6f\x36\x3d\xc3\x00\xce\x84\x0b\x9d\xf4\x49\x1c\xba\x84\xcb\x20\x80\x85\xbd\x7e\x1f\x44\xd3\x33\x57\x39\xab\xba\x40\x4b\x83\x0c\xb4\xa4\xa7\x40\x26\xfa\x04\xee\x29\x4d\x2d\xe5\x4a\x3f\x46\x8f\x79\xd0\x67\x94\x89\x02\xf8\xf0\xe1\x74\x8a\xce\xb0\x6a\x4d\x7d\xc7\x23\x72\xe0\x80\xb7\xa1\x08\xcb\x5f\xdd\x10\x90\x1f\xc7\xc2\xeb\xf6\x18\x6d\x36\x0f\x0a\x36\x38\x7d\x90\x41\x04\x1d\x04\x62\x20\x82\x70\xd2\x5b\xb1\x5f\x00\x2a\xea\x23\x48\xd6\xa9\xc1\x47\x3a\x68\x2a\x40\x01\x2c\x1d\x39\xf5\xbf\xd4\xfb\xb8\x17\xf7\x6e\x36\xcc\xf3\x1a\x90\xad\xd6\x02\xe2\xbe\x61\x23\xf0\x7d\x1e\xfe\x96\x84\x31\x1d\x67\x43\x4f\xeb\x03\x1d\xbf\x4d\x18\xea\x2b\x61\x09\xf2\x5c\x2b\x8b\xa8\x0e\x36\x1c\x32\x45\x7a\x2f\x1e\xb2\x1e\xf3\xcb\xe6\x2d\x43\xf2\x1d\x9b\x17\x26\xf3\xe8\x6f\xfa\xe0\x6c\x26\xa7\x23\x4f\x9f\x3e\x23\x0d\xd9\xcd\x43\x70\xb3\x01\xde\xf4\x66\x23\x60\x1a\x4e\x6f\x36\x0f\xac\x87\xcc\xd3\x0f\x99\xf4\x11\x71\x69\xd0\x05\xd9\x7e\x1b\x51\x44\x0a\x99\x50\x6e\xab\xc8\x81\x48\x1e\x78\xfc\x96\xf8\x76\xf7\xd1\xa3\x5e\x32\xf5\xc4\x16\xf5\x81\xa7\xed\x91\x7c\x5c\xf0\x97\x6c\xc9\x0f\xd8\x7a\xea\xa9\xcd\x02\xfe\x34\xea\x85\x60\x0d\x62\x80\x01\x64\x03\x07\x46\x20\x05\x1a\x0a\xa8\x0d\x85\xbd\xec\xd1\xa3\x5e\x30\x4d\x7b\x96\x37\xc2\xad\x1b\xb0\x25\xf5\xfb\x20\x51\x5e\xd8\x37\xec\x88\xf1\x08\x0a\xa4\x61\x4f\xb2\x79\x20\xc7\x0b\x08\x65\x91\x1d\x4e\x83\x3e\xf0\x55\xb4\x00\x73\xca\xed\x6f\x60\x94\x42\xc7\xf8\xc4\xd7\x3f\x21\x8c\x8b\xb9\x43\x48\x6d\x01\x9a\x7e\x7b\xa3\x2f\xd0\x33\x42\x0e\xd0\xf0\xc5\xb3\x99\x98\x73\x32\x4d\x7b\x67\xf4\x09\xf8\x55\xa4\x99\xe3\x64\x8e\x12\x3c\xb8\xf9\x95\x32\x2a\x92\x8c\x3c\x9c\x4e\x13\xb6\xe3\x37\x02\xd8\x04\xbc\x48\x84\x65\x70\x30\x03\x7f\x7a\x23\x5c\x52\x8e\xd9\x07\x0c\x24\x2f\x9e\x31\x80\xa0\x33\xf6\x74\xa6\x01\xc6\x32\x4f\xeb\xd6\x68\x90\x48\x7b\xb5\x3e\xd2\x76\xed\xc5\xb3\x7e\x1f\xac\x33\x00\xf7\xa9\xff\x6e\x06\xa2\x61\x5f\x38\x8b\x87\xe6\x45\x82\xe4\x61\x34\xa9\x87\x08\xa0\xa1\x71\x48\xe4\xaf\xcf\x9f\xad\xb1\x49\x4c\x7e\x24\xf0\xf8\x95\x05\xd9\x10\x60\x0f\xfe\x44\x78\x1a\x3d\x82\x69\xf3\xeb\x86\x1e\x6b\xfd\x8a\x0d\xeb\x72\xac\x84\x31\x4d\x61\x30\x20\xb2\xe5\xbd\x2a\xde\xf0\xd7\x17\xa3\xdf\xbe\x59\x9d\xff\xd5\x2e\xa8\x71\x5d\xb6\x9f\x2c\xcf\xc3\x18\x06\x4f\x83\x00\xc1\x94\x0a\x6e\x9e\xfc\xd3\x14\xe6\x0a\x4c\x49\x5c\x84\x9b\xe8\x79\xcc\x75\x98\xa8\x6c\xe6\xcc\x49\xc2\x6a\x2f\x2a\x71\xed\xcb\x87\x3e\x9b\x61\xd0\x7b\x5b\xa8\xa4\x2a\x4c\xeb\x52\xab\xa4\x7b\x47\x5b\xc5\x43\x35\x5d\x9b\x13\xc5\xce\x0c\xb8\x9a\x97\xdf\x4b\x1e\xa8\xf8\x96\x1a\xb6\x66\x5a\x7d\x05\xaa\xcd\xdc\xd2\x88\xb3\x52\x53\x15\x9b\x3b\x10\x5b\x5a\xe4\x3f\x60\xf5\x1b\x28\x30\xe7\x2b\x6f\x82\x0a\xa3\xbe\xf9\x82\x66\xcb\x5b\x5d\x0f\xce\xd7\x18\x13\xd6\x89\xd7\x70\x62\xb6\x14\xa0\x8a\x39\xf1\x14\xf0\xae\x40\xc8\x6c\xf2\xb9\x82\xc1\x6a\xf8\x2b\x94\x2b\x0e\xf5\x2d\x0e\x20\xf6\xc2\x62\x8c\xd4\xfd\x3e\xde\xa2\x04\x27\x7e\x12\x6d\x53\x65\x5e\xb3\x1b\xae\x64\x77\x15\x3b\x55\xa8\x42\xd5\xe0\x2d\x95\x84\x2d\xcb\xb3\x89\xff\xc4\x1a\x73\xa3\xd4\xaa\xdf\x55\xe5\x05\x52\xe5\xa2\x63\xea\x84\x0d\x78\xd7\x1d\xa9\x99\x5d\x42\xdf\xde\xcc\x51\xed\x64\x8b\x99\x39\xfb\xbe\x6c\xaf\x58\xa1\x43\x96\x78\x37\x3b\xcc\x02\xb7\xc3\x78\xee\x24\xb1\x73\x6c\xee\x77\x6e\x03\xbe\xc0\x9e\x27\xbe\x17\xd1\xf8\xd9\x7f\xdd\x4d\x27\x4b\x74\xc8\x1a\xef\x72\xdb\xe9\x24\x08\x64\x72\x9b\x9e\xdb\x81\xdb\xdf\x75\xe3\xf2\xdd\x72\xb3\x45\xf6\xb7\xfb\xb1\xd9\x64\x65\xf7\x82\x74\x0b\x08\x77\xbd\x99\x65\x37\x7c\x33\x4b\xde\x56\x8a\x79\xe9\xa0\xc7\x92\xc1\x14\xe6\x7d\x69\xae\xb7\x2f\x10\x31\xee\x5a\x57\x0f\x3f\x51\xad\x53\x34\x48\x93\x35\xf2\xe1\x7d\x91\x7b\xd6\x2f\x8f\xde\xae\xbe\xdf\x5b\xd8\xe5\x1e\x31\xe9\x53\x3a\x67\xc2\x79\x46\xde\x39\x2d\xf2\xa8\xa4\x9d\xab\x10\x2f\x5e\xc4\x17\x89\x34\x63\x95\x56\xb0\x53\x22\x48\xad\x54\x4e\xb6\x10\x9e\xbd\x2d\x8b\x54\x89\x80\xa3\x4c\xf9\x3c\x11\x1d\xc4\x37\xd1\x5b\x85\x83\xb9\x87\xe1\x95\x77\xbd\x45\x25\xbd\x0a\xe2\xc7\x69\xd6\x60\xe5\xc5\xb0\x03\x36\x56\x4f\x6f\x3e\xde\xa7\xae\x84\x84\x96\x48\x39\xd3\xc0\x40\x87\xcb\x58\x33\xe1\x9f\xb8\x53\xdc\xb9\xe3\xbc\x83\x73\xc2\x5c\x20\x18\x38\x97\xa1\x97\xf1\x10\xc8\x8a\x71\x44\x96\x5a\x26\xf1\xf0\x1c\x79\x71\x30\x94\xe3\x64\xd3\x53\xb5\x77\x81\x6e\x41\x5a\x0f\x81\xbb\x84\xf1\x9a\x83\x5a\x48\x54\x9a\x93\xef\x13\xf2\x9a\xb4\x74\x23\x78\x81\x5d\x40\x49\x56\xab\x3b\xc4\xbd\xbd\x4a\xcd\xec\xbf\xa7\x6f\x5f\x38\x7f\x61\xb8\x99\x3a\x4b\x2f\xf6\xe6\xd0\x89\x13\x84\x17\x64\x6b\xf1\x42\x16\x3a\xb9\x40\xc9\xd2\x11\xdb\xae\xea\x39\xe0\x44\xfd\x1d\xc6\xb4\xe8\xaa\xd2\xd9\x0f\x9d\x1f\x12\xe4\x2c\x13\x04\x9d\x30\xbe\x48\xd0\x92\x16\xb9\x01\x0e\x82\x5e\xe0\x24\x6b\x64\xd6\x67\x1d\x5a\x16\x5f\xf3\xb6\xac\x09\x29\xb6\x2b\xed\xe0\x94\xd1\x58\xa8\x4c\xf9\x29\x24\x33\xc4\x49\x79\xc4\x15\x05\xf5\x79\xb2\xc6\xb7\x85\xee\xa5\x98\x5d\xb1\x04\x91\x9c\x9d\x11\x92\x08\x7a\x28\xb6\x15\x62\xce\xaf\x48\xf4\x28\xe2\x17\x5d\xec\x9d\x8b\x42\x55\x83\x71\x66\x14\x02\x7d\x4e\xd4\x45\x21\x61\x5d\x5b\xa3\x94\x4b\x46\x3d\xe1\x97\xcf\x9f\xbe\x7b\xad\x57\x15\xd6\xdc\x08\xb6\x2c\x13\x5c\x10\x50\xf5\x92\xac\xdf\x99\xaf\xc3\x00\xa6\x75\x82\xa6\x1a\xbd\x6e\x80\xd2\xdb\xf2\x8a\x35\xb8\xb8\xd2\x72\x8f\x0a\xf1\x1a\xe8\xf4\xba\xbc\x35\xf2\x8a\x9f\xc9\x56\x17\x66\x56\x81\xd6\x34\xf8\xe5\xf6\xee\xad\x16\x31\xe1\xed\x8b\x10\xda\xd3\x1c\x57\x97\x26\x54\x71\x30\x82\xc9\xd6\x0a\x4a\xb3\x6a\x85\xfc\x2a\xc8\x32\xa8\x9c\x35\x6f\xc3\x7f\x5b\x18\xdd\xbb\xe6\xbe\x17\xd0\x8b\xf0\x62\xe0\x2f\xa0\xff\xf1\x5e\xd9\x1d\x5e\xbc\xfb\xc7\x3f\x7f\x7b\x9b\x06\xa5\xd1\x2b\xad\x4d\x0b\xfa\xb2\x75\xd3\xc2\xa4\x85\x69\x21\x9f\xb6\xd5\x64\xa7\x77\xba\x33\x2d\xe8\x51\x30\x63\xce\x2e\xa9\x75\x24\x6b\xbc\x22\x77\xb2\x2a\x1a\x8a\x3d\xbc\x4e\xcb\x32\xa0\xe4\x55\xd7\xc5\x71\xfd\x25\x1e\x6d\x46\x33\x55\x77\xc8\xe6\x84\x5b\x37\xd1\x44\x4b\x9f\x64\x36\xdc\x4f\x61\x1c\x50\xaa\x12\xd3\xb4\xb9\x5b\x89\x27\x45\x62\xc6\xeb\x24\xe0\xa5\xf8\xea\x73\xe0\x1a\x40\x44\x56\xfe\x0e\x02\x18\x73\x53\x33\x0a\x05\xb6\x99\x5d\xae\xd2\x60\x23\x05\x4a\xf3\x1d\xad\x5a\xd0\x09\xc1\xef\x17\xcf\x9a\x2e\x26\x23\xc3\xd2\xec\x1d\xbc\x23\x5a\xaf\x41\x3b\x16\xdb\x63\x65\xd5\x1a\x58\x4c\x72\xbd\x05\xec\x02\x96\x2e\xd6\x38\xde\x34\x22\xa9\x20\x43\x51\x96\x31\x20\x6b\x7d\x9f\x89\x60\xca\x1e\x1b\xd6\xea\x39\xd3\x0a\x6d\x93\xb4\x61\x0c\x5c\xc6\x08\xcb\xd2\xd1\xa2\xdb\x21\x9d\x79\xea\x84\xa9\x93\x42\x4c\xe4\x2b\x8c\xd6\x10\x38\x69\xe2\x78\x51\xe4\x20\xc5\x83\xfc\xf8\xfe\xfd\x5b\xc7\x8b\x03\x67\xfe\xee\xed\x89\x43\x3f\xa3\x8e\xdf\xac\xf0\x18\x57\x5d\x39\x78\x81\x92\xf5\x7c\xe1\x3c\x8f\x2f\x93\x6b\xe7\x22\x41\x54\x46\x3b\xa1\x34\xdd\xf1\xe6\x30\xc6\x96\xaa\x62\x72\x85\x8d\xd1\xb8\x2e\x37\xba\x35\x6e\xbc\x4e\x44\xf9\xd0\xad\xb0\x9b\x77\xf3\xe5\x71\xfb\x0d\xbd\x79\xb6\xd3\x45\x68\xb6\x67\xa4\x4a\xf7\xd2\x2c\xe1\x8c\x88\x67\x89\x94\x18\x54\xae\xb1\x34\x7f\x43\x13\xcb\xb1\xd1\x3b\x70\x13\xf9\xa7\xd5\x86\xdc\x0c\x4b\x2c\x0f\x2b\x31\xb3\x3b\xed\xb2\x8a\xf8\x90\x0c\xb0\x0a\xf2\xa0\x39\xc8\xbb\xd1\x35\x17\xb0\x95\xf7\x8a\xdb\x4d\xa1\x87\xfc\xc5\xe0\xdc\x43\xf7\x85\xe7\xfd\xe1\xf4\x1f\xe1\xdf\xbf\xff\xed\xc4\xce\xf3\x7e\xf8\xe0\xa1\xf9\x88\x08\xff\xe4\x8f\x31\x95\x50\xc8\x0a\x98\xff\x0d\x5f\xa9\x0b\xdc\x37\x2b\xcc\x0a\x1e\xd2\x3f\x45\x8a\xf7\x08\xfa\xd4\x85\xb8\xd1\x67\x9c\xcd\xee\xac\x1d\xbd\x4b\x1a\xcd\x60\x85\x92\x95\xfe\xc1\x47\x78\x2d\x63\x67\x81\xfb\x24\x4d\x10\xc1\xe1\x27\xcc\xd9\x91\x05\x8a\xc8\xb6\x4f\xe4\x5f\x45\x41\xec\x87\xa2\x67\x82\x05\x2e\x38\xb3\x09\x09\xec\xf2\xd5\x9a\x71\xf1\x7e\x87\x97\x4b\x54\x43\x13\x12\x12\x7c\x4f\x76\x2e\xa5\x7a\x7f\xc1\xff\x8f\xcc\xd2\x6b\xe2\x96\x4d\x19\x77\xae\x2d\x4e\x76\x95\x0a\x43\x2f\xa0\xff\x27\x0b\x2b\xb5\xa8\x62\xc2\x74\xf7\x7c\xac\x16\x9c\xb0\x59\xa9\xcc\xa6\xb3\x28\xd4\x3a\x16\x4a\x49\xba\x8e\x6c\x2c\xf4\x0b\x1c\x0f\x86\x0c\xf8\x43\xfd\xa8\x0e\x15\xf4\xb9\xf2\x61\xb2\x0f\x34\x00\x12\xa4\x20\x74\x6f\xc8\x89\x78\xac\x95\x6d\x92\x73\x34\x2f\xcc\xcc\xe0\xcb\x24\xe6\x83\x94\x0c\x20\xe9\xbf\xed\x6b\x3e\xed\xca\xaf\xc5\x3f\xb9\xaa\x15\xb7\x00\x0e\x5e\x94\xca\xda\x48\x85\x9f\x77\x0e\xad\x4c\xd7\x8d\xe1\x95\x9b\x5a\x2c\x4b\x13\x36\x8d\x13\x3d\x54\xdd\xbf\xa3\xe9\xfc\x7f\x60\x47\x8c\xae\x77\xbc\x0f\x5c\x0f\x85\xde\x80\xdb\xee\x6c\x1a\xaf\x75\xc8\xeb\x00\x50\xa0\xb8\x42\xe5\x9b\xa9\x96\x36\x01\x93\x83\x19\x70\xb9\xe8\x3d\x39\x34\xca\x91\xb5\x32\xba\xb7\x63\xc5\xb8\x56\xf0\xa0\x30\x4b\x4f\xa1\xd4\x47\xe7\xdc\x80\x89\x29\xd5\xe6\x5a\xdc\xe8\x0e\xc8\x08\x59\x8d\xaf\xa5\x5d\x51\xc9\xc6\x02\xe5\x6e\x21\xbd\x63\x24\xf5\xcb\xd2\xbb\x1c\xda\x31\x51\x9a\xcd\x64\x26\x38\x4e\xfd\x82\x92\xf7\x18\x8d\x20\x5d\x24\x11\x57\xb0\x64\xbd\x53\x47\xcc\xbd\x73\x67\xac\x9d\xa9\x09\xd8\x99\xcc\xac\x38\xcb\x8f\x66\x06\x06\xf5\xf0\xcf\xcd\x54\x3a\x22\xd7\x17\x39\x9b\xb4\xaf\x15\xe7\x7c\x5a\x7a\xb8\x18\x50\x89\x44\xa1\x21\x7e\xe7\x12\xe9\x56\xdc\xb2\x2b\x19\xef\xc5\x0d\x5c\x86\x39\x32\x89\xfd\x85\x17\xcf\x29\xdc\x96\x6b\xc2\xce\x52\xae\xe6\x09\x82\xbf\xaf\x43\xc4\x04\x3d\x5e\x57\x10\x14\x01\xd2\xb2\x26\x9a\xe7\x9d\x74\xab\x08\x17\x15\x56\x59\xad\xbe\x86\x66\x36\xb7\xda\x7e\x27\x8b\xea\xb4\xb0\xe1\x89\x63\x5c\xe1\x69\xeb\x58\x02\xd6\xad\x48\xa2\x36\xb6\x9d\x0d\xba\x81\x6d\xa7\x02\x2a\xb2\x8e\x62\x53\x74\x95\x27\x76\x42\x84\x37\xc1\x49\x72\xbf\x68\xf1\x90\xe6\x68\x68\xe2\x1e\x61\x14\x90\x34\x8a\x46\x8e\xc7\x25\xe7\x03\xa8\x9e\x3b\x49\xdf\xa6\x9d\x9e\xdd\x59\x4e\x74\x55\x98\xc4\x41\xb0\x97\xaf\x53\xca\x9e\x15\xcd\x36\x7b\xe3\x6e\x61\x55\x2e\xe7\x6a\x32\x37\xbf\x51\xce\x75\xc2\xea\x78\xe7\xa1\x55\x6c\x24\x6f\x7a\x0b\xd9\x2b\xca\x4d\x76\x08\x58\xad\xda\x9f\x5a\x88\x6d\x19\x68\x52\x31\x93\xbc\xcf\x59\xe5\x48\x96\x51\x8a\x8c\x5f\x0d\x2f\x4b\x2e\x76\xdc\xed\x65\x79\x58\x72\x2b\x08\x33\x46\xbd\xab\x40\x79\xaa\x94\x52\x7f\xc1\x6d\x5a\xa9\x7e\x0b\x6e\xed\xd6\xc8\x7d\x4d\x62\x5f\x4c\xea\xf9\x81\xcb\xca\x80\xf5\xd5\x58\x35\x4f\xc1\xed\x13\x77\x5a\xb0\x3c\x4b\xdc\xc5\xc3\xee\x89\xbb\x12\x81\xdc\x95\x97\xa6\x61\x3c\x77\x81\x7b\xe5\xa1\x98\xfd\xe5\xa3\x10\x87\x3e\xcd\x8e\x08\x97\x2b\x6c\x77\x87\x6b\x59\x99\x93\x1d\x8a\xf1\x11\x97\x53\x84\xef\x01\x25\xd4\xbc\xd0\xf4\x64\x24\xf5\x02\x25\x77\xc1\xc8\x72\x17\x58\xcf\xc1\xf6\x77\x40\x73\xfa\xcf\x16\xd1\x89\x04\x3a\xb2\x89\x8b\x4d\x59\x15\x0b\x8d\x1d\xd9\xdd\x0e\x0e\xc9\xde\x58\xec\x5e\x35\x8e\x4a\x61\x09\xfb\xbc\xa1\xc6\xe0\xc1\x3f\x32\xa3\x66\x5b\x21\xb8\x84\xc0\xf2\x9e\xbb\x24\xaf\xb4\xcb\x7f\x75\xe2\x5a\x53\x47\x43\x60\x91\x55\x4d\x7d\x85\xb4\x77\xc7\x46\x7b\x77\xbe\x00\xed\x4d\x65\x4a\x84\xbc\x39\xbf\x13\x2a\xbb\x57\xcd\x53\x8f\xf7\xf3\x74\x94\x3d\x33\x11\xfe\x8b\x50\xd1\x26\x78\x67\xea\x00\xc7\xfb\xdd\x90\x5b\xbd\x9f\x2e\xc9\xed\xd8\xae\xff\x19\xef\x92\x4d\xea\x8c\xdc\xee\x34\xe6\xce\x6b\x10\x51\x0a\xfe\x8e\xa9\x28\xeb\xf3\x0f\x32\x4a\xd1\x99\x3d\xf8\xea\xe9\xe8\x91\x85\x8c\x1e\x7d\x01\x2a\xea\x45\xa1\x47\xcb\x30\x27\xb4\x64\x31\x70\xe7\x68\xe5\xbb\xc0\x5d\x60\x4c\x2d\x6c\x34\xbd\x11\x73\x7b\xbc\x70\x81\x8b\x7d\x5a\x34\x1a\x47\xb7\x40\x6f\xc7\x35\xe8\xed\xc4\x42\x6f\x27\x96\xa3\x71\x9f\x08\x2e\x7b\x90\xa1\xb8\x93\x8e\x28\xee\xe4\x96\x28\xae\xbd\xd2\xf9\x78\x44\xb6\xa9\x2b\x8a\x7b\x54\x43\x9b\x71\xd8\x91\xe6\xdf\xc8\xf3\x5d\xfb\x24\x75\xa2\xc3\xd8\x29\xd1\x61\x88\x2c\x0d\xdd\x2b\xb3\x27\x47\xf4\x38\x64\x6e\x08\xe6\xfa\xf1\x15\xdd\x13\x76\x53\x71\x3e\xd7\xbb\x46\xd2\xa8\x1f\x8a\x97\xfa\x76\xd3\x1d\x01\xf9\xd0\x8b\x56\x0b\x6f\x48\xda\x98\xa7\x07\xe4\x3b\x0a\x60\x8d\x9e\x68\xa3\xb2\xae\x98\xcf\x6d\xc5\xac\x98\xd0\x5d\x39\x2d\xde\x57\xc5\xc4\x78\x67\x95\x33\xfb\x29\x8c\x03\xfb\xbc\x6a\x92\x37\x3a\x1a\x65\x2a\xab\x26\x4e\x87\xb2\x4f\xbb\xf1\x58\x96\x75\x75\xa5\x52\x57\x54\x5f\x38\x0f\x1f\x68\x47\x2a\x6f\x21\x2f\xa2\xa1\x07\x8d\x5c\x07\xef\x0d\x27\xb2\x6b\xe1\x44\x76\x1b\x73\x22\x56\x23\x9f\x92\xa8\x98\x6d\x7d\x66\x8f\x27\xb1\x6b\x26\xdb\x5d\xe1\x6c\xe0\xfd\x72\xd6\xc2\x7a\x3c\xc7\xf9\x17\x05\x28\x50\x35\xb3\x02\x53\x5b\xc1\x91\x6f\x10\x3c\xd5\x70\x79\xe6\xd1\x1b\x5b\xde\xdc\xda\x02\x8d\xe3\xda\xd2\x7c\x52\x72\x22\x6a\x22\x57\x13\x2a\x43\x0e\x94\x29\x56\xdc\x26\x02\xe6\xef\xac\x71\xf6\x71\xf7\x7b\x93\xbf\x05\x6f\x01\xf7\x2c\x97\xe8\x38\xf7\xfc\xb6\xd6\xf6\xf5\xa1\x5d\x5e\x2b\xd8\xce\xc9\xa0\xce\xd6\xe4\xaf\xfe\x71\xf6\x31\xd9\x98\x26\x42\x14\x0f\x11\x71\x70\xe2\xf0\x58\x96\x26\x3e\x00\xb5\x27\x6d\xc1\x27\xe3\x79\xd3\x69\x93\xb9\x92\x39\x8b\xfc\x88\x9d\xe0\x4a\xfe\xf5\x1e\xd8\xef\x4c\x78\xda\xad\x21\x3c\xed\xd4\x8f\x98\xdc\xf2\xe1\x18\x4c\xaa\xa3\x2b\xa5\x5f\x39\x8b\x56\x66\x05\xe4\xc9\x1f\xdc\xab\xfc\x02\x25\xcb\x01\x4f\xe1\x2f\x53\x9d\x0c\xc2\x74\x40\x5d\x68\x07\x8c\xeb\x09\xe3\xcb\xc4\xf7\x84\x87\xf1\x05\xf3\x59\xc7\x5e\x18\xa7\xba\xfb\xba\xbd\x72\x41\x94\x5c\x41\xe4\x7b\x29\xc1\xaa\x85\x97\x6e\xed\xc2\x9e\xf5\x15\xbf\x6b\x47\xf6\x30\x4e\xb1\x17\xfb\x5c\xeb\x98\xde\xf3\x4a\x64\xcf\x7f\xfe\x9f\x77\x2f\x5e\x5d\xfd\xd3\xee\xd7\xfe\x84\x07\x36\x15\xc5\x70\xe6\x13\x95\x08\xd7\x9b\x91\x8c\x80\x3c\x91\x8a\x52\xae\x84\xb5\x59\x64\x1b\x85\xfe\xb9\xa6\x03\x26\x8b\xbc\x2c\x1b\xb2\x34\xb8\xb2\xac\x54\x49\x27\x29\x9a\x6c\x4a\xac\x5c\x65\x12\x87\xce\x39\x6d\x7a\x09\x5a\x25\x19\xd7\x1a\xd3\xf3\x3a\xd1\x83\xd0\xc4\xb0\x0c\x49\x2d\xdd\xb8\x2d\xe2\x1f\x1b\xa1\x43\xb2\x8e\x65\x72\xcc\x09\x55\xb9\xf3\x62\x3f\x7f\x20\xc6\x97\x45\x8c\xa7\x51\x54\x8c\x19\xda\x9b\x3c\x18\x53\x15\xc4\xdc\x05\xfa\xfc\xb1\x8b\x6d\x77\xb1\x68\x83\xc4\x21\x63\x3d\x3c\x56\x7b\x99\x39\x70\x74\x8a\x77\x81\x03\xed\x12\x44\x78\xab\x10\x7b\x11\xab\x6d\x2a\x62\xe4\x9a\x73\x11\xd6\x8b\xba\x66\xe1\x23\x0d\x06\x3d\x56\x92\x00\x4e\x47\x00\x4f\x47\x20\x9e\x8e\x1e\xa4\x57\x21\xf6\x17\x99\xb2\x47\xa9\x91\x54\x9c\x37\x41\x43\x26\xfc\xf7\x6f\x28\x47\x24\xdd\x96\x8e\xe1\x37\xd3\xf1\x83\x73\x04\xbd\x8f\x0f\xe8\x1b\xe1\xda\x74\x8c\x33\x2f\x84\xf7\xd3\x71\xfc\xcd\x74\xbc\xd9\xd0\x3a\x1f\xb4\x33\x9a\x07\x1c\x1e\xf3\xc2\x02\x74\x8d\xc7\x9a\x5f\x14\xdb\xb7\x63\x5a\x4a\x9a\xfa\x4c\x51\x5c\x39\x86\x9b\x07\xf2\x63\x9c\xf9\x58\xba\x57\x89\x6f\xaf\x42\xbc\x70\xe4\x53\xd6\x01\xd6\x3a\x88\x33\x1d\x48\x4f\x2d\xd1\x81\x7c\xc0\xbe\x8d\x37\x0f\x38\x90\x33\x1f\x32\x8e\x61\xb3\xb9\x9d\xaa\x4c\x61\x8c\x61\x4c\x38\xaf\xc7\x17\x09\x5a\x3e\xbe\x08\x61\x14\xa4\x10\x5b\x58\xb7\xbb\x89\x3d\x7c\x77\xf9\x32\x3c\x0d\x7f\x3c\xb7\xf3\x68\xcb\x24\xa0\x7e\x6e\x2b\x88\x96\x61\x9a\x86\x49\xfc\x43\x82\x96\x2e\x70\x3f\x48\xde\x1e\x79\x41\x98\xb8\xf4\x9c\xc9\xc2\x16\xb1\xa8\x6a\xa1\x5c\x38\x2a\x5e\xab\x8c\x1e\x81\x5f\x9a\xce\x63\x7c\xc0\xec\x88\x46\xc4\x9e\x04\xf2\x40\xc2\x37\x47\x99\x05\x65\x13\x2d\x38\xfd\x77\x83\x30\xf5\xce\x23\x18\x10\xa9\x72\x17\x4c\x26\x16\x8a\x2f\x89\xa2\x4c\xf3\x2c\xd2\x41\x71\x1d\x6a\xc9\x1d\x61\x0c\x57\x92\x64\x63\xa2\x37\xe0\xe9\x05\xcb\xa3\xb5\xa5\x36\x82\xdf\x62\x63\x70\x26\xa2\x29\xa8\x29\x2a\x63\x47\xdd\xa3\xe1\xcd\x10\x21\x1a\xee\xcb\x46\xe0\x89\x1e\x80\xeb\x2c\xbc\x74\xc0\xde\xe9\x81\x6a\x8d\xd2\x7d\xb3\x2e\x95\x84\x5d\x9e\xce\x7b\x45\x24\x35\x3e\xd5\x01\x39\xeb\x03\x96\x3f\x5f\xea\xbb\xd5\xbe\xb8\x4f\x84\xca\x5b\xc6\x76\xfe\x40\xa0\x6a\x68\x0e\xe4\xab\xb7\x5a\x48\x0d\x70\x9f\x9c\xaf\xc3\x28\x38\x5d\xcf\xe7\x30\x15\xb6\xb7\x74\x91\x5c\x9d\xd0\xc1\x7e\x59\x40\x6e\x8d\x3b\xe1\x83\xd3\xbf\xb9\x4d\x4d\xe3\x34\xf7\x04\x08\x77\x35\xc3\xc7\x2e\x98\xec\xcc\x58\x15\x17\x8e\x3c\xbb\x33\x96\xef\x41\xa4\x93\x73\x62\xfe\x2e\x67\xc0\x73\xd9\x6a\x5f\xc3\xab\x97\x3c\x81\xe4\xdf\x52\xe8\x78\x22\xa7\x81\xd0\xb2\xf8\x5e\x14\xc1\xc0\xf9\xdf\x3f\xdf\xdc\x60\x88\x96\x9b\xcd\xff\xfe\xd9\xcd\x5a\x5e\xf4\x5e\xc3\xf4\x6f\x71\xf8\xfb\x9a\x8e\xb9\x47\xa6\x57\xd2\x98\xae\x87\x2c\x40\xc7\x85\x56\xcd\x1b\x5b\x22\x8e\x74\xd8\xca\x04\x2e\x23\x95\x30\x06\xb8\xff\xb9\x75\xfa\x16\xf5\xdf\x7f\x3a\x3d\xc2\x87\x8a\xf2\x36\xfd\x56\x29\x57\xf2\x4c\x99\x39\xe5\xc6\x19\x26\xf2\xa6\xf7\x02\x6f\xd0\xa3\x2c\xf2\x35\x75\xbf\x20\xa7\x95\xa7\xac\x93\x99\x62\xc8\x51\xa1\x99\x34\xbc\xd8\x81\x9f\xc2\x14\x87\xf1\x5c\xa0\x2d\x70\x12\xe4\xd0\xe4\x87\x8e\x17\x5f\x4b\x64\xa4\x0a\xf3\x7a\x7c\x17\xc8\x9a\x87\xac\x65\x8b\x75\x34\xa0\x81\x2a\xae\xbf\x48\x92\x14\x3a\xec\x82\x28\x89\x5b\xae\x59\x91\xba\x03\x0a\x79\xda\x35\x7d\x54\x45\x9f\x6e\x8d\x42\xde\x25\x49\x1c\x1f\x72\xd2\x38\x16\xb4\x30\x16\x0b\x6e\x4d\x0d\x25\xc8\xb6\xa4\x87\xe3\xc3\x26\xf4\xf0\xb4\x09\x35\x3c\xed\x96\x16\x1e\xdd\x0e\x29\xe4\x84\x50\xc2\x73\x4b\x52\xa8\x08\xe1\x51\x87\x74\xf0\xe8\xce\xc9\xa0\xc4\xd8\x0c\x21\x7c\x6d\x60\x72\x27\xa4\xb0\x34\xc3\x7c\x21\x7d\x94\xcc\x34\x65\x73\xcf\x5c\xca\x33\x0b\x5f\xb9\xc6\x01\xf3\x9d\x12\x4c\x55\xdf\xae\x63\xba\xa9\x75\xfc\x2f\x49\x37\xf7\x39\xdd\x1c\x09\xba\x29\x37\xb9\x35\xdd\x94\x20\xdb\x96\x6e\xee\x37\xa0\x9b\xfa\x3e\xb5\xfe\x66\xcb\x48\x54\xe6\xb0\x6d\xaf\x00\x6e\x27\x3a\x87\x77\x4e\x74\xe4\x76\x67\x88\xce\x5b\x03\x0d\x6e\x93\xe8\xd4\xab\x75\xd4\x4a\xa0\x7d\x46\x8e\x4c\xec\x95\x1c\xdf\x4e\x48\x90\x36\x4c\xa7\xa2\xad\xd6\xef\xbf\xb5\x7c\xbb\xff\x55\xca\xb7\x39\xac\x68\xff\x4d\x37\xdc\xdd\xc1\x57\x27\xe8\x1e\x74\xc8\xdf\x15\x05\x3d\xfe\x21\xe6\xde\x05\xd7\xa6\x23\x7a\x77\xb2\xae\x4e\x30\xbf\x80\xc0\x7b\x8f\x48\x26\x91\x7f\x35\x92\x39\x3e\xea\x40\x0c\xbe\x58\xe3\x35\x82\x77\x24\x0d\x67\x10\xa4\xed\x17\xdd\x50\xce\xfd\x5b\xa6\x9c\x5d\x49\xc6\x3a\xed\xdc\xef\x90\x76\xee\x7f\x39\xda\xf9\x03\xcf\xb2\x1b\xa8\xdd\x04\xce\x75\xb2\x76\x96\xde\xb5\xc3\x09\x18\x21\x9b\x0a\xaf\x09\x99\xbd\x5a\x84\xfe\x82\x36\x5b\x78\x97\xd0\xf1\x7c\x1f\xa6\xe9\x1f\x92\x72\x21\xcd\xed\x5e\x5c\xd6\x49\xef\x17\x90\x99\xef\x13\xe9\xdd\x37\x49\xef\x41\x07\x92\xb4\x49\x7a\xbf\xb0\x40\x6d\xc7\x93\x2d\x3f\xdc\x5a\xb4\xde\x6b\x28\x5a\xef\xdd\x3f\x9a\xa5\x10\xe2\x4e\x68\x56\x83\x92\x83\xb5\xe4\xee\x4a\xa2\x84\xe1\xa7\x6a\x92\x44\x03\x81\x9b\x52\xa2\x12\x2a\x24\xfa\x73\x7a\x2c\xb0\xc8\x8b\xfa\xa5\x8a\x85\x30\x16\xb9\xc4\x77\xc1\x4e\x66\x46\x74\x49\x13\x76\xac\xc1\x59\x66\xb6\xdc\x24\xbf\x32\x48\x4d\xc9\x04\xf6\x80\xab\xc2\x2f\x8b\x8f\x91\xf2\xb1\x1a\xef\x82\x5d\xe0\x52\x20\x4a\xa7\xa8\x3a\xbb\x66\x69\x53\x52\x71\x23\x07\x4a\x56\xc8\x4a\xee\xa9\x90\x69\x16\xc9\x3a\x0a\x1c\xbc\x08\x53\x87\x97\x20\xf2\x93\x38\x86\x3e\xcb\xb3\x6f\x62\xff\x77\xa5\x10\xcf\xfb\x33\x50\x67\x0e\xe5\xd4\xa0\xd7\x1d\xb1\x61\xcd\x53\xbf\x0c\x61\x8a\x8a\x77\xe8\xa1\xd6\x93\xa3\xc2\x1f\x7a\xa4\xef\xe4\x40\x91\x08\xe6\xec\xe1\xca\xc2\x24\xc0\x3d\x4f\x82\x6b\x97\xc5\xba\x47\xc9\x95\x4b\xbd\x0e\xe9\xbf\xef\x17\x50\xc0\x48\x68\x2c\xae\xc2\x28\x72\xce\xa1\x43\x9b\xc2\x80\xc0\xac\x18\x7c\x43\x86\x5d\xcd\x26\x11\xc0\xf8\x9a\x22\x20\xfd\xa7\x68\x0a\x71\x82\x6f\x77\x1a\x04\x0c\xab\x55\x14\x32\x57\x7a\xe7\xe9\x95\x87\xa0\x7d\x3e\x84\x38\x26\x88\xfe\x43\x66\x55\x3c\x0f\xf9\xc5\x65\xe8\x39\x6b\x7a\x9f\x39\xca\x33\x28\x75\xce\xbd\x14\x06\x4e\x12\x3b\x2f\xbd\x6b\x88\x9c\x03\xc7\x47\x21\x86\x28\xf4\x8e\x69\x4d\x07\xe0\xb0\x59\x52\xb9\x7b\x09\xf1\x22\x09\xe8\xca\x3a\x4d\x34\xc0\x50\x78\xe0\x7b\x28\x70\x55\x0e\x2d\x3d\xca\x5e\xcf\xa5\xb5\x03\x24\x0c\x33\x41\x49\x2a\x38\x85\xba\x89\x71\xce\x47\x8b\xda\xd6\x0b\x07\x18\xdd\x64\x4e\x8c\x21\xc1\x18\x49\x1a\xd8\x59\xd2\xce\x90\x76\xb7\xdb\xa7\xc6\xdd\x52\x69\xa0\x4c\x15\x17\x20\x3f\x51\x03\xb4\x4d\x37\x5a\x51\x01\xc8\x64\x0f\x76\xf4\x6a\x8e\x85\xa1\x65\x05\x35\x1b\xc4\x88\x76\x9f\x2a\xfb\x60\x0c\xe3\x1b\x0e\x55\x15\x6e\x53\x14\x6a\xd3\xe6\xf2\xae\xd2\x09\x35\xc3\x0d\xb7\xb9\xba\xc8\xca\x42\xb0\x62\xd3\xea\xf4\x16\xf1\x15\x63\xe0\xf2\xda\x19\xcc\xeb\x6e\x57\xff\xcd\x2a\xbf\x1c\x50\x81\x2b\x0a\xfd\x8f\x6e\x2e\xb2\x7a\x04\x94\x17\x61\xb2\x82\x71\x2e\x33\xaa\x65\x9f\x9f\x06\x81\x46\x57\x8a\x60\x5b\x64\x6b\x78\x9b\x59\x53\x15\xf8\x0f\x35\x80\xeb\xdf\x02\xe5\xc4\x4c\x8e\xd5\x36\x71\x03\x87\xc2\x53\x51\x73\x07\x8d\x13\x1c\xfa\xf0\xb1\xbe\x03\xba\x9f\x38\x87\x8d\xb9\x58\x5b\x3f\xaa\x03\x5a\x70\x43\x4a\x6c\x2c\xaa\x86\x11\x2d\xb6\x35\xe4\xcf\x00\x46\x10\x73\xba\xb5\x9b\x5b\xb2\x46\xbc\xf4\x64\x0c\x06\x71\xd1\xf3\x33\xec\x81\xdd\xdc\x6e\x16\x7f\x53\x1b\x25\xca\x04\x29\xbe\x00\x73\x9b\x19\xcd\xd3\x08\xb8\x01\xbd\xa6\xf1\x01\x87\x3c\x8a\x68\xc0\xcb\x56\xb4\xf2\xde\x77\x6f\xab\xe6\xad\x44\xfa\x9d\x42\x1a\xf9\x3a\x31\xae\xe5\x6b\x88\xb3\xdf\x37\x4c\xec\x5e\x7b\x49\x9c\x16\xb7\x5a\x50\x31\xcd\xd7\xb6\xda\x21\x88\x8f\x7c\xb8\xc2\x8e\x17\x3b\x2f\xc4\x29\xf8\xdf\x3f\xa7\xb2\xc8\xef\x3a\x0d\xe3\x79\x8e\x05\x01\x4e\xba\xf6\x17\x8e\x97\x52\x56\xc4\x59\x21\x78\x11\x7e\x82\x29\xad\x3d\xb5\xc0\x78\xc5\x79\x93\x74\xf8\xa5\x40\xc5\x1c\xa8\x6b\xa7\x71\xc8\x42\x4b\xd6\xbf\x1d\xd1\xd4\x4e\x69\x79\xad\x5b\xf1\x95\xc7\xd9\xfa\x7d\x26\x1d\x1a\x71\xcc\x7a\xc1\x5a\xad\x54\x2d\x70\x1f\xfb\xc9\x72\xe9\xc5\x41\xaa\xa8\x8e\x92\xba\xb6\xa9\x5d\xfb\x4c\xaf\x9c\x5c\x70\x55\x97\x3d\xce\x80\xa1\x46\xcd\xdf\xa6\x70\xc8\x15\xee\xa5\xd0\xa0\x14\x78\x0e\x31\x0e\xe3\x39\x21\x12\x08\xc3\xe0\x31\x67\x9b\xbb\x81\xcc\x3b\xe8\x05\x94\xfb\xa6\x15\x7c\x9b\x80\xa6\x55\x46\xe9\x06\x79\xf1\x1a\xe8\x38\x24\x07\x74\x08\x18\xbd\x1f\x04\xa1\x17\x25\xf3\x5c\xc1\x1d\xe5\xbe\xaf\xc8\xd6\x80\xdd\x10\x9c\x19\x27\x77\x58\x42\xa3\x7a\x9f\x78\x28\xf4\xdc\x86\x97\x13\x38\x53\xd1\xe2\x56\x39\x4a\x4a\xd9\xee\xf3\x20\xc4\x1a\xc1\x71\xeb\xd4\xe0\xc9\x5d\xd2\x08\x5e\xc8\x03\x2f\x77\x99\x1d\x7d\x59\xfd\x41\xbb\xd3\xf8\x65\xc8\xa3\xa3\x8a\xef\xfe\xae\x2f\x13\xfb\x55\x92\x83\x80\x85\xef\xaa\x81\x63\xb7\x70\x57\xd4\x60\x81\x2e\x68\x78\x8a\xc6\x02\xf1\xda\x50\xeb\xf3\x65\x88\x05\xdb\xb3\x6b\x67\x2d\xbc\x20\xa8\xe2\x2b\x5a\x24\xd4\x6a\x88\x0b\xd9\x48\x1b\x9e\x9c\xcc\x82\x14\xb6\x7d\x98\x34\x3d\xec\xb7\x79\x59\x09\xf4\x52\xe2\xc2\x58\x4b\x8c\x26\x77\x24\x1b\x84\x63\x11\x9e\xf7\x34\xce\x31\x17\x8a\x14\xa6\xcf\x42\xbd\x38\xc9\x4c\xeb\x4e\x53\x45\x31\xad\x9f\x29\xa4\x14\x32\xb9\x05\x43\x89\x49\x97\x73\xbb\xac\x90\x20\x23\x58\x79\xd6\x96\x6b\x13\x35\xa0\xe4\x2f\xaa\x53\xef\x12\xd6\x8b\xd3\xb4\xc2\xd6\xf7\x62\x5f\x2a\x82\xb7\x5f\x35\x82\x54\x66\xbc\xed\x45\x9f\xd0\x59\x97\x2d\xbb\xc6\x65\x53\x52\x42\x51\x55\x26\xa3\xda\x91\x92\x18\x50\x56\x12\x9c\x53\x8f\x84\xeb\x8e\xf5\x7c\x16\x0a\x44\x2e\x70\x97\x6b\x72\xa2\x7f\x5f\x43\xaa\x2e\xa2\x8f\xe6\x58\x4b\x5d\xc1\xf2\x55\x50\x7d\x29\x8d\x27\xd5\x94\x48\xc2\xc8\xe6\xc6\xe4\xd0\xb9\x9a\xb1\xb2\xc0\x86\x23\x62\xe7\xd2\x9c\xe7\x46\xde\x95\x52\xf3\x4d\xd7\x0f\x98\x08\xba\x4b\xcd\x28\x30\xe0\xfa\x5e\x6c\x71\xa1\xe3\x79\x34\x54\x0e\x8f\x6e\x0a\x45\x96\x87\x45\xb6\x48\xb3\x21\xdf\x0c\x59\x50\x6d\xef\x06\x7b\x73\x36\x0f\x17\xa4\x54\x67\x7e\xba\x48\xae\xde\x1a\xc8\x7d\xfc\x70\x0c\x38\x69\x3b\xbe\x31\x2d\x80\xc7\x66\xc6\x0c\x16\x32\xea\xc0\x21\x82\xd4\xce\xd0\x7b\x2c\x0c\x7f\x8f\xe7\x00\xf7\x37\x40\x18\xf8\xac\xdf\x3d\x84\xc3\x8b\x30\x0e\xbe\xbf\xee\x71\xfb\x24\xf9\xc2\x0b\x02\xa3\x31\x88\xfb\x37\x0f\x7b\x78\x38\x87\xb8\x07\xfb\x9f\x3f\x9f\xcd\xfa\xc3\x30\xf6\xa3\x75\x00\xd3\x5e\xdc\x7f\xf4\x28\x1e\x86\xe9\x6b\x78\xf5\xe8\x51\x0f\x0f\x57\xeb\x74\xc1\x22\x44\x7b\x10\xc4\x7d\x80\x87\x97\x5e\x14\x06\x04\x22\xfd\xfe\x06\x30\x29\x39\xd7\x7d\x59\xef\x3d\xcc\x2b\x9e\x15\x77\xbb\xd9\xb4\xcd\x5a\x62\x6c\x76\xcb\xa4\x25\x14\x17\x00\x02\x1e\x88\x40\x0a\x42\x90\x80\x35\xf0\x41\x00\x96\x60\x05\x2e\xc0\x39\x58\x80\x4b\x70\x0d\xe6\xe0\x0d\xf8\x00\xde\x82\x8f\xe0\x0a\x3c\x07\x9f\xc0\x6f\xe0\x04\x9c\x82\xd7\xe0\x9f\xe0\x15\x78\xf6\x40\xf4\xe8\xbc\x67\x20\x01\xa8\x7f\x13\x3f\x7a\x54\x14\x6b\x8b\xc1\x0d\x8c\xd7\x4b\x88\xc8\xd9\x39\x8e\x87\xea\x07\xf0\x93\xf8\x22\x9c\xaf\xc5\x1b\xfd\x27\xb8\x42\x21\xe6\xcf\xc5\x9f\x80\x05\xea\xc6\xc3\x30\x0e\x71\x48\xe3\xcb\xd1\x77\xc6\xaf\xa1\xef\x45\x51\x0f\xf5\x8f\x59\xf4\xee\xa6\xbf\x91\x93\x7d\x29\x26\x0b\x3c\x06\x86\x68\x7a\xb3\x79\xc0\x51\x92\xcf\xfd\x23\xbc\x4e\x7b\xa8\x2f\xe3\xc0\x8d\x58\xe2\xe8\x0c\xce\xa6\xe8\x0c\xce\xc8\x8e\x45\xda\x32\xa6\x0f\x1f\xea\x3f\x41\x64\x2c\x84\xbe\x35\x56\xd6\xe3\x19\xbc\xc2\xd8\x89\x3e\x7f\x8e\xf4\xf9\x13\x14\x8a\xe4\x7a\xa7\x0f\x47\x7d\x10\x4d\xe3\x61\x1a\x85\x3e\xec\xf5\x87\x08\x5e\x42\x94\xb2\xbf\x82\xb5\x0f\xb5\x09\xd2\x5d\xe0\xab\x41\x1c\x55\x3f\x7f\x8e\x37\x7d\x10\xf5\x81\xf7\xe8\x11\x03\xc8\xc3\xe9\xd4\x18\x8f\x0e\x47\x67\x63\x3e\xff\x2e\xca\x43\xd5\x13\x50\x05\xc6\x4b\x1e\x28\xdd\x07\xec\xdf\x69\x7e\x84\x62\xc4\x88\xe8\xf2\xd6\x11\xf9\x77\xd3\x55\xac\xf6\xd3\xf2\x58\xed\xbf\xfe\xf5\xcd\xcf\xff\x58\x9f\x17\xd4\x89\xf5\x56\xa1\xba\xb5\x10\xf4\x82\x24\x8e\xae\xd9\xdd\xc2\x62\xac\xe1\x27\xe8\xaf\x31\x27\xf5\x3e\x95\x4e\x97\x30\x4d\x3d\x76\x15\x91\x6d\xa6\xd7\xbd\x6c\x1f\xc3\xab\xa7\xe2\xc6\x13\xfa\x3a\x21\x86\x79\x17\xac\x62\xa9\x6a\x2c\xfe\x78\x12\xf8\xb4\xb2\x9d\x76\x0f\xa9\xe0\x6e\x19\xf9\xfd\xc4\x5b\xe3\xe4\x22\x8c\x22\x91\x00\x88\xba\x82\xa0\xf2\xd8\x6f\xbb\xd0\x48\x6f\xf4\x03\x16\x78\x96\x31\x38\x1e\xf2\x7a\xea\x86\x54\x20\xd2\x0e\xb1\x79\xaa\x19\xe9\x33\x2e\x9c\x5e\xc6\x08\xa4\x4b\x16\xae\x9a\x11\xcf\x95\xaf\x39\xab\x9d\x89\xaa\x2e\xb4\x70\xcd\x4c\xd4\x2e\xe1\x95\xf1\x44\xb5\xb2\x4c\xcd\xcc\x0c\x63\x96\xcb\xf5\x5b\xd6\x58\xcd\xac\xa1\xf8\x52\x5f\x28\xe0\xd6\xde\xa6\x8e\x7d\x46\xba\x72\x99\xc2\x59\xb3\x2a\x07\x10\x7b\x21\x15\xfd\xdd\x60\xcd\x2c\x98\xd0\x91\xc0\x75\x2e\x92\x75\x1c\x1c\x6f\xe5\xfb\xc7\x17\x27\x70\x56\xa8\x23\xc8\xef\x0b\x6e\x30\x1d\xac\x57\xe4\xda\x53\x46\x8e\xf1\xbe\x1a\x8a\x61\xff\x0c\xe4\xeb\x81\x0a\x5e\x78\xc7\x4c\xd7\x2d\xd0\xae\x31\xd8\x4c\x61\x92\x76\xbd\x07\xce\xdc\x1f\x95\xb4\xdf\x46\x39\xad\x4b\x10\x29\x46\x49\x3c\xd7\x79\x72\xa9\x55\x65\x1e\xd3\xe9\xc3\x42\xfd\x53\xc3\x4c\x8a\x74\xea\xdf\x0b\xb1\x7f\xdb\x89\x97\xd9\x08\x9f\xc6\x1a\xc2\x78\x11\xa1\x86\xd7\x7c\x35\xd4\xe5\x87\x7a\x4f\x30\xee\x77\xa0\x3b\xcc\xad\xbc\x10\x0d\x9d\xb7\x11\xf4\x52\x28\x5c\xc3\x9d\x20\xbc\xb8\x80\x08\xc6\xd8\xf1\x93\xe5\xb9\x68\x9a\x5c\x48\x3f\x7b\x6a\xd0\x66\xfe\x6e\x54\x69\x27\x87\x4e\x1d\x9c\x38\x30\x08\xb1\xe1\x7e\x2e\x5f\x0f\xf3\xeb\x6a\x09\x65\x8b\xe0\x93\x75\xbb\x6a\xe2\xca\xfa\x55\x9f\x8f\xdd\xdb\x3e\x1f\xcf\xc9\x04\xbb\x3b\x14\xbb\x5f\xea\x50\xbc\x5f\x40\x04\x9d\x2b\x2f\xa5\xd8\x48\x16\xe1\xa4\xde\x25\xc1\xc8\xeb\x64\x8d\x4c\xb4\xb4\x93\x6b\x1b\xb5\xd6\xaa\xf4\x15\xd1\xf1\xd6\x2e\x1d\x9a\x9e\x43\xb9\x1f\x50\xa0\x8f\x73\xa3\xe9\xb9\xa2\x26\xc0\x3d\xd6\xd3\x34\xd8\x27\xd5\xd0\x17\xbb\xd3\xd3\x59\xe5\x6d\x60\x4e\xa1\xb2\x96\x4d\xfd\x4b\x9b\xb2\x42\xcd\xef\xec\x5d\x6d\xe7\x09\x4b\x55\x64\x2a\xa6\xbe\xd7\x44\x08\xd0\xa8\x20\x25\x04\x5a\x09\x6d\xa3\x97\xac\xff\x4f\xbd\xfa\x27\xda\x88\x22\xab\xf9\x4e\xcb\xdc\x7e\xb6\x75\x72\xa2\x25\xeb\x93\x6a\x5e\x34\x6d\x50\xb9\x99\x0d\x84\x29\x24\x06\x57\x1e\xe2\x46\x10\x99\x05\x8b\x53\xca\xac\x05\xe4\xd0\x62\xc7\x30\xdc\x49\xdc\x53\x88\xb5\xfb\x10\x27\xbc\x60\xf9\x78\xa4\x53\xe1\x2f\xa1\xdd\xd6\x2d\x1d\x76\x53\x47\x4d\x34\x6e\x67\x3b\x2f\x72\x19\xc9\xc3\x47\xd1\x8e\x11\x3f\x65\x76\x57\xca\x86\x04\xbf\x73\xe3\x79\x3d\xca\xff\xcb\x02\xc6\xd4\xc1\x99\x89\x10\x8c\xfd\x79\x51\xb1\x60\xe6\x39\x4d\x9d\x15\x99\x62\xc8\xf1\xa2\x88\xf2\x37\xc2\xb6\xbe\x4a\xa2\xd0\xbf\x36\x7c\x0d\xfc\x35\x22\x9c\x52\x74\x4d\xae\x16\xe6\xd7\x68\x0e\x36\x74\x9e\x22\x48\x7b\x4e\xd7\xfc\x8f\x2b\x2f\xa6\xde\x86\x29\xd9\x05\x5c\x04\xfe\xce\x78\xa5\xdb\xb4\xce\x17\xf8\x4c\x8d\x88\x1c\x1a\xcf\x21\x4a\x68\xb9\x83\x02\x37\xaa\x1d\xc3\x8d\x8a\x51\xc9\xbc\xc5\xa1\x60\x8b\x09\x0a\x6b\x90\xcb\xe5\x56\xca\x95\xb3\xa8\x04\x66\x5b\x23\x03\xaf\x59\x54\x47\xe5\xef\x50\x67\x15\x90\x55\xfd\x37\xda\xe1\x71\xde\xe6\x65\x6d\x36\xae\x2a\x88\x34\x2a\xf6\xe3\xa0\x4a\x04\xe6\x35\x2b\x51\x25\xab\x0d\xd0\x88\x2e\x91\xf3\xdd\xc7\x7f\xba\x91\x1a\x85\xcd\xe3\xff\x7c\xfc\xa7\x9b\xc0\xdf\x3c\x56\xca\x77\x0b\xf5\xd6\x35\x10\x5a\xa0\x12\x57\x17\xe8\xfa\x84\x59\x3d\x25\x00\x53\x69\x0b\x31\x45\x26\xc4\x2d\x72\x94\x2a\xe4\xfb\xe8\xad\xbe\xee\x26\x62\xb5\x53\x70\xca\xe0\xb3\x2f\x0a\xd0\xd7\x02\x0a\x15\xf0\xac\x74\xb4\x28\x85\xb5\x11\xba\xf6\xc5\xc1\xfd\x9f\x12\xc6\xba\x55\xca\x02\x63\x0d\xae\x6d\xe1\xf9\x56\x5b\x69\xb7\x20\x65\x44\x34\x4c\x79\x40\x59\xcd\x78\xbf\x22\xc1\xa7\x72\x83\x8a\x59\xe2\xea\x70\xc4\xfd\x1c\x2b\xdc\x76\xbf\xa5\xd8\x9e\x11\xac\xc3\xf8\x22\x69\x77\xa1\x1d\xca\x24\x4f\x1d\x08\xd6\xb5\x5c\x18\xc9\x7f\x27\x28\x49\xd3\x81\x8a\xd5\xf2\x93\xe5\x72\x1d\x8b\x80\x86\x38\xc1\x4e\xba\x5e\xad\x12\x84\x61\xd0\xde\xed\xbb\xb2\x5c\xc5\x51\x17\xe2\x79\x5d\xcf\xf6\xf2\x25\x87\xa9\xb9\x6a\x27\x59\xe3\x34\x0c\xa0\x93\x5c\x50\xbe\x6c\x85\xc2\xa5\x87\xae\x1d\x72\xe0\x7d\xaa\xbd\x1a\x3a\xff\x10\x3c\x5c\x12\x47\xd7\x34\xe2\xe4\x3c\x82\x8c\xdb\x8a\xa0\x8f\x55\xf8\x2e\x53\x8c\xf1\xd0\x10\x2f\x0e\x6c\x81\x1f\xe9\xb0\x63\x40\x57\x67\xff\x2a\x0d\xfb\xd5\x33\xc0\x87\xe9\x2b\x2f\xf6\xe6\x30\xf8\xfe\xfa\xe4\xdd\xb3\xb4\x75\x19\xab\x42\x4f\x6d\x7f\x9d\xe2\x64\x39\x40\x30\x43\x4a\xe5\xf9\xd2\xc4\xb4\x3a\x34\xab\x56\x70\xe0\x18\x70\x89\xdd\x60\x12\x39\x57\x68\xf5\xac\x96\x1c\x23\x27\xa4\x85\xac\x64\x19\x47\x59\x04\x0a\xd3\x58\xaf\xd8\x66\xe9\x94\x90\xb5\xfe\xf0\x28\x61\xe9\x71\xf0\xc4\x70\x39\x78\xa2\x79\x28\x3c\xc9\xfb\x2f\x3c\xc9\x3b\x23\x3c\xc9\x7a\x3d\x3c\x29\xf0\x93\x90\x56\x1b\x3d\x72\xd9\xd7\xe2\x8a\xf5\x8b\x8f\x41\x2e\x36\xaf\x75\x51\xe6\x99\xfa\xc4\xe4\x6e\xa8\x91\x2a\x50\x6d\x3c\x33\x13\xeb\x66\x9e\x9e\xe6\x9f\x19\x01\xe0\xe2\x95\x25\x8f\x91\xed\xd5\x69\xc1\x8b\x5c\x9f\x1a\x16\x28\xd7\x28\xf5\x4c\xbb\x1f\x95\x27\x8f\x34\x36\x95\x08\xe9\x65\xe1\x8c\x8e\x5d\x80\xb0\x3a\x7b\x49\x07\xaf\x09\x9d\xcd\x8b\x98\x7a\x1d\xe8\xd3\xd1\xa6\x9d\x75\x2a\xd2\x3c\xc9\x0a\x44\x23\xdd\x9b\xaa\x82\x6a\x65\x85\xb7\xf1\xbe\x39\x5f\xcb\x6c\xb8\x34\xc7\xbd\xa4\xec\xc2\x5c\xfe\x98\x26\xb1\x10\xa0\xb2\x1c\x4f\x85\xa0\x57\x2d\x2b\xd9\xf9\xca\xfd\x32\x86\xa8\x2d\x5f\xb4\xab\xed\xdb\x8b\x67\x94\xd0\x79\x71\x12\x5f\x2f\x93\x75\x6b\xae\x55\xa7\x3e\x17\x21\x5a\x32\x73\x83\x54\x9b\x31\x8a\x23\x0c\xd7\x04\xca\x85\x0a\x05\xe6\x05\x93\x51\x40\x7c\xd7\x36\x12\xae\x96\xc6\xa0\x4d\xe7\xc5\x4a\x03\x2a\x68\xab\x90\x9d\xfa\xc8\x58\xae\x5a\x30\xb1\xf1\x50\x3b\x65\x7c\xa8\xba\xb8\x48\xfe\x7b\x46\xbf\xb1\x2f\xa9\x28\xc8\xaf\x3c\xfb\x5e\x43\xc0\x73\xcc\x68\x0d\xf8\x43\x11\x54\x34\xd0\x11\x2e\x87\x69\xc0\x7d\xa2\x1c\x28\x9e\x28\xed\xc7\x99\x2a\x1f\xba\x37\xe3\x05\xce\x8a\x68\xa6\x7d\xf5\x7b\x80\x08\x18\x45\x7c\x68\x1b\x5f\xfd\xc6\xa9\x0a\x0a\xe8\x48\x3d\x9b\xa1\x55\xee\xa2\x14\xc1\x60\xc9\x1a\x73\x64\x59\x71\x46\x28\xcc\x91\x28\x40\x6c\x65\xbd\xda\x59\x0d\x3b\x36\x1a\x96\x4a\x36\x4a\xf1\x7a\x42\x59\x4a\xe7\x1d\x67\x29\x3b\x57\x71\x8a\x95\x7d\x21\xf3\xa2\xa1\x54\x0e\x53\xe7\x32\x84\x57\x42\xee\xf0\x3d\x22\x32\x87\x98\x3c\x5f\x32\xac\x70\xf0\x02\x25\xeb\xf9\xc2\x88\xe4\xca\xc2\xc4\x09\x63\x66\x9e\xfc\x69\x7d\x0e\x51\x0c\x31\x4c\x1d\x3f\x5a\xa7\x44\xb8\xb9\x35\x78\xfd\x90\x24\xb8\x23\x4c\x28\x83\x98\xbb\x55\x54\xd6\xc7\xc3\xf4\xb1\x8f\x82\x54\x45\x1c\xd9\x02\x8a\x2a\x03\x91\xf8\xd4\x5e\x42\x0f\xc5\xce\x32\x41\x44\x42\x4c\xd6\xd8\x61\x42\x54\x19\xa3\xd4\x99\x35\xb4\xbe\x31\xb4\x22\x16\x96\x20\x9c\x19\xfd\x21\x2d\x78\x2d\x85\xb2\x09\xd8\xa9\xf4\x31\xaf\x52\x2c\xe7\x34\x54\x59\x1a\x5b\xe9\x89\x7e\xe1\x02\xf7\x22\x16\xde\xe5\x71\x82\x07\xd4\x93\x9c\x79\x6c\x33\xdf\x71\x2f\x0e\x94\xaf\xf6\x1a\x85\xba\xbb\xba\x74\x42\x37\x8a\x1b\x31\x0e\x3f\x85\x78\xc0\x90\x86\x55\x63\x4c\x84\x57\x9f\x70\xf4\xa0\xa6\x75\x24\x23\xdd\x52\x9a\x1e\x6a\x7b\x8f\x6f\xd3\xcf\x3b\x82\xd8\x79\x37\xed\x49\x57\x6f\xea\x63\x0e\x03\x80\xb2\x0f\xbc\xec\x83\x28\xfb\x20\xcd\x3e\x08\xb3\x0f\x92\xec\x83\x75\xf6\x81\x9f\x7d\x10\x64\x1f\x2c\xf9\x83\x30\xa6\x9e\x9f\x5c\x12\xec\xb9\x08\xd2\x2a\xff\x09\xba\xd6\x82\x25\xfb\x60\x25\xbe\x67\x7b\x02\x2e\x32\xbf\xcf\x33\xbf\x17\x99\xdf\x97\x99\xdf\xd7\x99\xdf\xf3\xcc\xef\x37\x99\xdf\x1f\x32\xbf\xdf\x4e\x59\x09\xaa\x7c\x01\x2a\xea\x88\x8a\xd6\x3e\x4e\x50\xc6\xed\xfa\x41\xba\x5e\x41\xd4\x1b\x0e\x87\x1e\x9a\xd3\xb8\xcd\xb4\x0f\xde\xd3\x42\x54\x7a\x50\xc1\x47\x40\x9e\xa8\x37\xba\xc0\x7f\x95\x79\x97\x93\xef\x9f\x67\x1a\x48\xc5\xc2\x27\x7b\xaf\xa7\x2e\xf8\xad\xa4\xcf\x53\x17\x9c\x64\x5e\xeb\x9a\x89\x53\x6b\xa7\x9a\x16\xe1\x75\x71\xdf\x5a\xab\x7f\x66\x5a\x65\x35\x51\xe0\x15\x6f\xe0\x51\x87\x61\xd0\x43\x53\x6e\x08\xef\x87\x71\x2f\x9e\xd2\x97\xdf\xd9\x7d\x88\x09\xe4\xb9\xe3\xb0\x07\x34\x5f\xf4\x87\x23\xd3\x03\xfd\xe1\x48\x79\x9d\x3f\x1c\x6d\xfa\xc7\xf1\x19\x9a\x4d\x3d\x39\x27\x82\x97\x2e\x78\xc6\x27\x42\x8b\x87\x31\x07\xae\x93\x77\xcf\xd8\x6c\x97\xb4\x2a\xe9\x46\xa4\x08\xe8\xf5\x6f\x54\x89\x31\xf1\xf0\xbb\xfc\x23\x13\x1f\x8e\x69\x03\xe1\x7b\x6a\xbe\xdb\x08\x91\x37\xd3\x35\x7b\xf8\x5d\xfe\x51\xa3\xae\xf9\x63\xb3\x6b\xf6\xf0\xd1\xa3\xfc\xb3\xcc\xf7\x56\x58\xb0\xae\x32\xbb\x49\x77\x6b\x48\xc0\x99\x7d\xd3\xeb\x6f\x78\xdf\x3c\xda\x22\x1e\xae\x10\xbc\x84\x31\x7e\xc6\xce\x56\x4f\x38\x9a\x3f\x9c\x4e\xe1\x90\x91\xdf\x21\xf3\x2b\x11\x4e\xee\x53\xf2\x26\xf0\xb0\xc7\x9f\x33\xa8\x50\x64\x19\x92\xeb\xbb\xd7\x3f\x26\x9b\x64\xda\xf5\xd8\x39\x25\x24\x34\x9e\x62\xf6\xf5\x3a\x0e\x7f\x97\xd1\x26\xfd\x21\x4e\x9e\x22\xe4\x5d\xf7\xfa\xc3\x8b\x30\xc2\x10\xf5\xe0\xf4\xdb\x87\x67\x2e\x0f\x59\x1e\xac\x50\xf2\xe9\x9a\x79\x83\x2f\x06\x73\x0f\xc3\x2b\x1a\xda\x83\x21\x5a\x52\x6c\x8f\xe7\xf2\xe9\x4c\x05\x8d\xc0\xe1\x4f\x61\x1c\xf4\xfb\xb4\xac\x75\x8f\x4e\x62\xfa\x2d\x1c\x92\x21\x87\x51\xe2\x7b\x11\x3c\x49\x96\x2b\x0f\xc1\x1e\xa6\x0f\xfb\xfd\x07\xf1\xf4\xec\x86\xdd\x14\xff\xe9\x6e\x66\x43\x76\x2f\xf5\x62\x46\xff\xd1\x34\xce\x44\xc9\xc0\xa1\x22\x1e\xfd\x07\xe8\xf3\xe7\x1e\x9a\xb2\xef\xf5\x37\x1b\x10\x4f\xcf\x90\xd6\x1b\xeb\xce\xb3\x74\x97\xa1\x37\xfd\x07\xde\xe7\xcf\x3d\x4f\xf6\x99\x79\x4d\x3b\xf6\xf4\x8e\xd9\xc1\x11\xb4\x6e\x1a\xb3\xdf\x6a\x2a\x53\xc4\x9e\x64\x3a\x9a\x7a\x1b\xc3\x70\x68\xd9\x30\xb5\x43\xb7\x0f\xcd\xd3\x02\x58\x9e\xb6\x84\xe4\x69\x19\x1c\x4f\x8b\xa0\xc8\x49\x7b\x06\x88\xa7\x36\x10\x9e\x4a\x00\x2a\x4b\x61\x37\x30\x04\xc5\x60\x92\x43\xd9\xa1\x25\x5f\xb7\x03\x9a\xd6\x7b\x21\xec\xcc\x21\x2c\x20\x54\x77\x99\x09\x45\xf9\xa1\x05\x98\xea\x9d\xb7\x61\x24\x48\x90\x2b\x16\x82\x82\xa6\x70\xc8\xe4\x08\xb6\x0c\x10\x3d\x90\xe5\x24\x63\x02\x33\x56\x4c\x52\xbb\xd5\x8f\xe9\x83\xec\x55\x7e\xac\x37\x3b\xb5\x34\x3a\x35\x9a\xa8\xeb\x34\xd7\x52\x7b\xc5\x67\xe2\x4d\xa3\x29\x62\xb1\x3f\x82\x39\x75\x1f\x4e\xf1\xf5\x0a\x26\x17\x8e\xf7\xe8\x51\xcf\x13\xaf\xd9\x36\x03\xfe\x6b\xea\x81\x86\x8b\x20\x04\xd9\x38\xf3\x9c\x80\xaa\x5d\xf5\xfa\x43\x96\x26\xe8\xd1\xa3\x5e\xc4\x77\xd1\xdb\x64\x08\xc5\x59\x24\x37\xcf\xec\x4d\xa2\x6c\xbf\xaf\xd7\xdd\x2c\x07\x9b\x9c\x14\x3f\x42\x8d\xe6\x24\x8e\x5d\x76\x4a\xa2\xaf\xd2\x19\xd5\xdb\x25\x39\x3f\x85\x9f\x8d\xa6\xa8\xa1\x75\x76\x96\x5a\x8f\xda\x44\x37\xe4\xdd\x19\xdb\xda\xd9\x34\xda\xe0\xe1\xc2\x8b\x83\x08\x3e\x27\x97\x6f\x0f\xf6\x37\x1b\xf0\x71\xfa\xb2\xf7\x76\xb8\x42\x09\x4e\x08\x9e\xe8\x0c\xeb\x59\x3c\x03\x37\x59\x66\xca\x64\xb5\x34\xd6\x0a\x68\x01\x62\xc7\x84\x9d\xdb\xf4\xc1\x55\xb6\x73\x9d\xe7\x3d\x43\xdb\x76\xff\x3c\xdb\x7d\x8e\x6d\x3e\xf3\xb6\x1d\xe3\x53\x76\x0c\xc9\x79\x9f\x45\xdb\xf6\xfd\x5b\x01\x78\x4e\x5d\x70\x96\x6e\xdb\xf9\x49\x19\x70\xc8\x08\xe1\xb6\x23\x9c\x66\x47\x30\x1c\x62\x92\x6d\xbb\x7f\x6d\x87\x8e\x26\x5f\x9c\xad\xb7\x1d\xe3\x9f\x25\x40\xd2\x07\xf2\xb7\x1d\xe8\x55\x76\xa0\x9c\x2c\x74\x16\x6c\x3b\xc6\xb3\xec\x18\x4c\xb6\x39\x5b\x6e\xdb\x71\xa6\x5b\x99\x2c\x0d\x9c\xad\x66\x80\x8b\x67\x73\x88\xdf\x5c\xc5\x42\x3c\x13\x49\x66\x13\x54\xf0\x69\x1f\x68\xcf\x2d\x23\x88\x40\xcc\xb3\x8b\xc6\x23\xf0\x4f\xab\x46\x90\xae\x02\xe7\x8d\x47\xe0\x9f\x96\x8f\x60\x91\x9c\x5c\x70\xb6\x68\x38\x98\xad\x97\xf2\x71\xe5\xba\x2e\x1b\x0e\x55\x6b\x55\x19\xc7\x49\x70\x76\xdd\x70\x94\x4c\x07\x75\x46\x7b\x2d\x29\xee\xbc\xd5\x60\xe2\xfb\x3a\x63\xbd\xd5\x49\xd8\x9b\x56\xc3\x69\x5d\x54\x8c\x28\x32\x2d\x7f\x68\x3a\x0e\xfb\x30\xd3\xfb\x5b\x3d\x05\xc1\xbb\xd2\x3a\xdd\x4f\xc1\xbb\xfe\xa6\xdf\x7f\xd0\x2c\x47\x41\x14\xa6\xf8\x31\xcd\xb3\x7a\x5f\x6a\x74\x1f\xbc\x78\xff\xf3\xbb\x7f\xee\x1d\xda\xe3\xbe\x71\x88\x23\xe6\x5b\xc3\x5d\x5e\x78\xb8\x75\x2e\x92\x9a\x19\xe8\x0e\x0b\xdc\x1a\xf7\x33\x7f\x9b\xc9\x94\x2d\x29\x67\xf7\xcd\x64\xc7\x61\x51\x13\x17\xb8\x22\x60\xe0\xdd\x3a\xca\x3a\x0f\x37\x72\x40\xd0\xeb\x80\xeb\x89\x7d\x77\xa9\x79\x3b\x1b\x48\x43\x36\x92\xd5\xdf\x77\x64\x80\xba\x93\xcf\xf8\x3d\x31\x13\xad\x9a\x29\x51\xb3\x69\x6c\x0e\xe8\x67\xd6\xc2\xe2\x56\x9b\x9f\xe9\x8f\x2f\xdc\x5c\xc6\xf9\x24\x3a\x13\x7b\xba\xd7\xbc\xd7\x7e\xce\xf4\x52\x64\x69\xb2\xbb\x81\x8c\xec\xe3\xb1\xcd\x6e\x1f\x53\xfd\x0f\x98\x02\xb9\x58\x9a\xaa\xdd\xf4\x84\xe2\xd6\xe7\x30\x2d\xc8\x78\xad\x22\x3e\x26\x56\xff\x27\xfe\x7d\xb0\x86\x22\x2f\xf5\x22\x9c\x2f\x60\x8a\x9d\x15\x82\x3e\x0c\x60\xec\xeb\x31\xe2\xe7\x30\x4a\xae\x8e\xeb\xda\xb0\x6b\x43\x89\x62\x7b\x7b\x20\xbd\x4e\x40\x66\xa1\x05\x30\x8a\x13\x7c\x1f\xe1\xa4\xe5\x48\x2d\x5f\x42\x26\xa3\xb8\x3d\xcf\xf9\x55\x88\x17\x75\xd7\x23\x2c\xc5\x21\x4e\x65\xf4\x11\x22\xc4\x64\x58\x66\x93\x6b\x94\xc7\xb0\xc2\xf5\x61\x2c\x7a\x2c\x31\xd6\xfd\x2e\x6c\x75\x22\x75\x14\xd2\x8d\x6f\xcc\xca\x26\xf2\x26\x5d\xa0\x64\x39\x80\x31\x46\x21\x4c\xb9\xf1\x6d\x1b\x9b\x5a\xf6\xd2\x6a\x91\x41\xe9\x83\xb8\x74\xde\xc4\xd1\xb5\x6c\xd6\xdb\x36\xe5\x0f\x9d\x59\x37\x29\x7f\x54\xfa\x9e\xe4\x6b\x4a\xdf\xb3\xfe\x23\x7d\xcf\xbf\x47\xfa\x1e\xbf\x9c\x8d\x8b\x57\xd1\x68\xf2\xf4\x34\xb6\xb3\x71\x2a\x49\x8e\xcc\xdc\x2d\x73\x5d\x3f\x52\x3c\x51\xd3\xec\x38\x94\x0b\x72\x79\x8a\x1c\xe9\x0f\x38\xd2\x3c\x51\x6d\xb2\x57\xd6\x29\x35\xc7\x58\x8c\x0f\xc1\xae\x91\x45\x50\x5c\x86\xef\x09\xfa\xb8\xc0\x3d\x21\xb4\xe8\xb5\x48\x0a\xc4\x9c\x7a\x84\x4f\x0f\x7f\xac\x87\x29\x2b\x06\x2e\x4b\x3a\x28\x3e\xf2\x68\x19\x01\x0f\x06\x21\x19\xf8\x2d\x7d\xa0\xf9\xf3\x99\x51\x2e\x43\x5b\x2a\xaf\x9e\xf0\x82\x7a\x86\x68\x91\x49\xc5\xa3\xd3\x2f\xdc\x5c\x00\x7b\xbe\xb3\x59\xa6\x80\x43\x7e\xf0\x7c\x80\x42\xc5\x04\x0a\xe2\x0e\xf2\x85\x00\x66\x79\xff\x92\xd2\x8b\x2a\x08\x03\x91\xbe\x83\x20\x8c\x20\xbf\xfc\xf2\xa2\x3e\x24\x5b\xdf\x45\x79\xff\x8e\x40\xf9\x77\xd4\xf4\x9a\x28\xf6\xfe\xe0\x6e\x0c\x51\x7d\x37\x06\x9b\xf3\x42\x62\x18\xc7\x53\x6e\x1c\x4f\x8a\xcc\xf8\x61\x95\xf5\x1c\x0f\x29\x02\xf6\x37\x73\x1a\xc9\x0c\x97\x69\x4f\x52\x46\x65\x82\xa6\x2f\x3e\x7f\x3e\x9b\xd1\x66\x1a\x16\xa9\xc6\x63\xa1\x41\xa7\x6d\xa5\xa6\x5c\xf5\x41\xbf\xe2\x0f\x68\x9b\xb3\xd1\x4c\xb7\x43\xf2\xcf\x55\xdb\xef\x8c\xa6\x4c\xe3\xd5\x91\xd1\x7b\x03\xd2\xe9\xba\x17\x59\x34\x72\x5b\x2b\xd6\xc3\x6c\xc7\x79\x75\xe2\xd6\xda\xf5\xcc\x08\x76\x7d\x96\x57\xad\xba\xa8\xec\x85\x5c\xdd\x9a\x1e\x23\xd2\xf9\xaa\xa0\x54\x8f\xe1\x83\xa0\xdf\x92\xf1\xa2\x2b\xbf\x2f\x7a\x8c\x1d\xff\x1f\x4f\x9f\xbe\xfa\xf9\xd4\x7e\x01\x72\xa6\x99\xcf\x55\xfe\xab\x92\xa5\xca\x3a\x3c\x2a\x57\x5d\x0a\xa9\xdb\xdb\x47\x78\xbd\x42\x30\x4d\x4f\x78\xa1\x0b\xf9\xcd\x87\x0f\x1e\x9a\x8f\xc4\x1f\x63\x59\xb2\x2a\xad\x78\xf7\x04\x25\x6b\x2c\xa3\x94\xd4\x3d\x9c\xb9\xa3\x73\xd7\xf1\x21\x70\xb1\x77\xbe\x8e\x3c\x34\xf0\x93\x28\x82\xdc\x03\xaf\x30\xd7\x07\x55\x51\xc8\x1b\x8e\x65\xb1\x9b\x99\xe5\x3b\x50\x72\xf5\x23\x0c\xe7\x0b\x2c\x23\x45\x8f\x66\x60\xef\xa8\x79\x52\xf2\xdb\x2b\x45\x81\x17\xae\xcc\x0d\x20\x2f\x29\x95\x5c\x43\x3d\x29\xce\xe3\xaf\x77\x21\xaa\x1e\xa9\x2e\xfe\xbf\xff\xb7\xc1\xe7\x41\xa6\xd6\x7c\xe3\x12\xf4\x7a\x67\xe5\x05\x72\xd8\x7f\x5a\xc6\x70\x7b\x06\xa9\x4c\x6d\x3c\x7b\x88\x03\x4e\x92\x08\x87\xab\x66\xe5\x46\xbe\x68\x65\x8c\x46\xc1\xb3\xcd\x4b\x39\xe8\x60\x27\xac\x47\x25\x02\x74\x93\xda\x1c\x25\x57\xad\xf1\x3e\x28\xc3\xfb\xca\xc2\x13\x8a\xf7\xcb\xaa\x9d\x68\x25\xd3\xc0\x1f\xaa\x44\x72\x43\x18\xd0\x18\xb7\x58\xd6\x07\x1b\x8b\x90\xab\x8a\x72\x7b\x7b\xd9\x6c\x40\xe2\x63\x33\x52\xb1\xa3\x6a\xca\x7a\xf9\x79\xa7\xf7\x9f\xed\xab\x28\xbb\x46\xf6\x2e\x8b\x92\xa9\x3a\x3a\x78\x2f\x07\x59\xa5\xf5\xb6\x65\xb3\x00\xb9\x06\x45\x29\x18\xb6\x4a\x65\x66\x96\x2c\xb5\x07\x4e\xe9\x54\x43\x2f\xc2\x48\x4f\x80\x32\x40\x0f\x94\x36\x7b\x94\xdb\x59\xb3\xb4\xb0\x9a\x67\x56\xa5\x3d\x31\x54\xd4\x8d\xfb\x91\xa7\xd2\x79\x5c\x67\xee\x0c\xe6\xa5\x13\xe7\x75\xe8\xdb\xcf\xb8\xa8\x83\xd2\xaa\x73\xcd\x4a\xbd\xb6\x26\x72\x81\x06\x97\xb1\x4c\x1a\xcb\x55\xb2\x1a\x58\x8c\x8c\x6b\x52\x05\xad\x24\xbe\xaa\xaa\xd0\x66\xd6\xc2\x71\x36\xd4\x36\x0f\x3a\x4d\xcd\xfd\x74\xb5\x72\x3c\x5a\x2f\x32\x0f\xfb\xb6\x2b\x2e\xbb\x9a\xeb\xde\x9a\x35\x88\x9a\x25\x72\xfa\x7e\x53\xb6\x22\x95\xf7\x1f\xe4\xad\x90\xbc\x15\x96\x4f\x6f\x43\x31\xea\x77\xd6\x25\xa1\xcb\x45\xf1\x6f\x3b\xf7\xfb\x4f\xf2\x2a\xd8\xe9\x82\xb3\xad\x47\xad\x37\x2f\xce\x58\x1f\x6b\x0d\x6a\x63\x4b\xa0\x56\x32\xbe\x6b\x14\x4b\xb2\x00\xbe\x0e\x74\x1b\x00\x31\xcb\x1c\x5b\xa0\xc7\xd9\xc3\xed\xe2\x6f\x9d\x5c\xa4\x1d\xfc\x84\x21\x8a\xbd\x28\x9b\x4d\x4a\xe4\xda\xd0\xd2\x4f\x52\x23\xb7\xcb\xc7\x77\xce\xaf\x1d\x36\x83\xfa\xd9\x9c\x4a\x00\x53\x3b\x09\x94\x81\x4a\x87\x65\xf4\xb2\x3a\x65\xa9\xa1\x54\xa6\xdf\xd0\xf0\xd6\x93\x77\xcf\x2a\x3f\xcb\x65\xc2\xd2\xf3\xe8\xbe\x22\xbb\x09\xdc\x2c\x68\xc9\x12\xb9\xba\xc0\x5b\x85\x2a\xfe\xa2\x35\x9d\xae\x21\x0a\xb5\xae\xf2\x74\x08\xdc\x55\xb2\x4a\x2e\x21\x1a\x2c\x61\xbc\x96\x3d\xc3\x4f\x2b\x2f\x0e\xf2\xb5\x93\x3f\xc2\xeb\xf3\xc4\x43\xc1\x53\x5a\x6a\xdf\xcd\x24\xcb\xca\x5d\xec\x3c\xae\x5e\xd5\x34\xc6\x68\x0d\x01\x55\x6b\x17\x2a\xdc\xd9\x27\xbb\xd9\x2f\xd9\x47\x6d\xa2\xc4\x4b\x21\x87\x51\x38\x9f\xb7\xc9\x47\xfa\x2a\x41\xf0\x56\x12\x58\xd2\x7d\x68\x9c\xe7\x77\xaf\xdd\xb9\xd8\x82\xb1\x12\x04\x4e\x16\x72\x14\xa5\xe8\xe3\x24\x2e\x16\xa7\x9d\x9c\x48\xad\x3e\x24\x2b\x17\x33\x64\x51\xd1\xe7\x42\x97\x38\x18\xd7\x10\xbf\xf7\x68\xa6\xba\x2d\xc4\xef\xe7\x01\x4f\x47\x53\xeb\xea\x6d\x06\x8c\x7c\x2e\xd1\x4a\xf8\x48\xa2\x3c\xde\xa3\xc9\xa4\x5c\x91\xa4\xa2\x31\xd4\xdc\x24\x16\x9a\x56\xd6\xc9\xe1\xcc\x50\xb0\xc9\x3c\x25\xf6\xd5\xe5\x73\x06\x99\xc3\x97\xae\x46\x22\x7d\x18\x5f\x24\x68\x09\x83\x81\x97\x51\xae\x66\xb2\x24\x93\x93\x10\x7c\x4f\x4e\x48\xfa\x82\x26\xbe\x33\xdc\xdb\x04\xbe\x9a\x75\xf3\x81\x22\x81\xe0\x6c\x04\x46\x02\xbb\xeb\xa4\xc5\xd9\xb3\xa4\xc5\x21\x80\x50\xd5\xd3\x5b\x66\xa7\xce\xc2\x81\xfc\x77\xc2\x34\xe0\x45\xc9\x57\x8a\x48\x49\x81\xe7\x53\xe1\xd4\x59\x46\xe2\x2e\x27\xee\x16\x38\xab\xd9\xda\x3a\xc5\xa9\x82\xf5\xcc\x3e\xf2\x94\x7e\x57\x36\x66\x11\x4a\x76\x05\x2a\x85\x38\x4d\xf3\x29\x09\x0f\xc0\xf1\x6e\xed\xfb\xbc\x64\xa1\x5a\xa5\x0d\xbd\xf0\x7f\x2e\x09\x71\xfb\x4c\x86\xd9\xf1\xdc\xec\x41\xcc\x64\x2d\x9a\xd8\xa8\x09\x73\x43\x38\xb2\xa4\x25\xd2\xd9\xb4\xcc\x6d\x6e\xa9\xe1\x6a\x36\x90\x99\x5d\xed\x05\xc5\xbb\x58\x73\x61\xc2\xa3\x32\x64\x2a\x48\x6e\xb4\xd5\x27\x45\x5b\x7d\x1b\x1b\xcb\x28\x2a\xb9\x3b\x38\xbc\xf7\x9b\xa6\x8b\xcf\xfe\x67\xc9\x62\xf6\xa5\x81\x58\x58\x33\xa5\xbe\x2f\x61\xad\x87\xe3\x1d\x90\x29\xf7\x90\x07\x76\x7b\x29\xbd\x06\x9d\x6a\x23\xac\xb4\x93\xa2\xdb\x33\x71\xb7\xc2\x11\x90\x17\xce\x47\x99\x37\xe8\x5e\x71\x06\xa3\x5b\xe2\x0c\x4c\x89\xfb\x56\xae\xbb\xd1\x3d\xe0\x0c\xde\x1b\x37\xbf\x13\xa6\xce\x39\x0c\xe3\x79\x67\xa9\xa5\x9c\x17\xd8\xcc\x60\x15\xc6\xd4\x9b\xfa\x6f\x2f\xb2\x29\x70\x6b\x1c\xe3\xee\xc0\xde\x01\x97\x31\xee\x90\xcb\x98\xdc\xfe\xd5\x63\x67\x1f\xd8\xf9\x36\x52\x2e\x3e\x59\x20\x78\xe1\x66\x7c\x0a\x3b\x31\xac\x6e\x77\xd3\xfd\x1c\xc2\xab\xfb\xc3\x2c\x7c\x81\x1d\x63\xbb\x21\x0a\x42\xd4\xe0\xe6\xfe\x25\x59\x89\xc9\xad\xb0\x12\x23\x90\xa9\x63\x91\xdf\x8a\xa6\x5a\x87\x2d\x52\x48\x66\xdb\xec\x83\x03\x40\x98\xfa\x3a\x39\xdf\x6a\x14\xaa\xdf\x01\xbb\xa0\xba\x8a\x9d\x0d\x4c\x60\x92\xff\xac\xd8\x1d\x96\x86\x69\x10\xea\x31\xc0\x89\x9e\x36\x8d\x25\x44\x1b\x84\xe9\x80\x72\x0c\x03\xa6\x6e\x0b\xe3\xcb\x44\x66\x46\x53\x0e\xb3\x22\x1b\x9b\x51\x07\x5c\xf7\x22\xa3\xd1\x21\xab\x68\x8d\x64\xfe\x35\x11\x18\x92\x46\xeb\x79\x78\x71\x9d\xcd\xcf\x46\x8b\x88\xcb\x5c\x6f\x5e\x1c\x6c\xef\x94\xab\x79\x03\xde\x9f\x00\x11\xbb\x9b\xf3\x7d\xf1\x59\xdc\x1b\xfd\xf0\xf8\xd5\xcb\xef\xdf\xda\x7d\x16\x65\xd5\x5b\xe5\x19\xc8\x73\x92\xe6\x1d\x03\x73\x79\x4c\xb3\xce\x80\xac\xc1\x20\x03\x08\x87\xe6\x3b\xa5\xce\x81\x93\x4c\xda\xd3\xec\xed\xb6\x33\x03\xbc\xc8\x43\x43\xc2\xaa\x5d\x10\xdb\xe6\x41\x15\x6c\x5c\x41\x06\xd4\xaa\xdc\xa7\x39\x32\x55\x49\x39\xcc\xb9\x6f\x91\xe9\xb4\x9c\x01\x3d\x4d\x96\xb4\xce\x82\x59\x2a\x31\x75\x3c\x04\xbb\x66\x3d\xdf\x2f\x92\x14\xca\xee\xb4\xb1\x68\x1d\x87\x73\x68\xe5\x4a\x9d\xa7\xf1\xb5\xde\x96\x05\x69\x07\xaa\x05\xfb\xfa\x2a\x41\x1f\x9d\xf3\x35\x66\xbf\x78\x70\x5e\x7a\x1d\xfb\xa2\x56\x17\xcc\x4d\xf5\x19\x39\x61\xac\x1c\x45\xef\xe4\xdd\xb3\x3e\x2d\x2f\x91\xe2\x04\xc1\x61\x47\x9b\xb6\x55\xba\xd5\xf2\x6d\x73\x2d\x7e\x77\xe3\x4c\xdc\xc9\x7d\x4b\xb1\xda\x14\x9c\xad\x82\x15\xe9\xa5\x07\xe3\xcb\xad\x2e\x95\x32\xd2\x7d\xef\x2e\x18\xcd\xf7\xe0\xbe\x5c\x2e\x3f\x26\xcf\xfe\xee\xc7\xd7\x5e\xe9\xe5\x52\x7a\x97\xcc\xb6\x29\xf1\xf3\x85\x48\xa7\x9b\x73\x60\x51\x41\x47\xe9\x90\x6d\x97\x92\xc8\x86\x6c\x6d\x43\x6d\xbb\x86\xa6\xb6\x61\x8b\xa3\xf2\xd5\x50\x1e\x1e\x24\xad\xb0\xb8\x23\x1a\x94\x75\x2d\xd9\x6a\x5b\x2e\x38\xf4\x2c\x1b\x53\xe0\xb7\xd1\x0d\x61\x13\xef\xab\x59\x7b\xdc\x1d\x91\xcb\x91\x8f\xfb\x45\xe0\x44\xba\xe6\x7b\x43\xdb\x96\xf3\x70\x7c\xfd\x4d\xfa\xca\x4e\xdb\x44\x39\xe6\x27\xbc\x6c\xb3\x60\x9c\x81\xfb\x84\xd7\xff\xb6\x67\x2f\x19\x5b\xf4\x09\x84\xed\xe5\x95\x7d\x5a\x68\x24\x8b\xfb\x9d\x90\x39\xac\x85\x8b\x4a\xeb\xcc\x18\x06\xc3\xe8\x2c\xbc\xd4\x39\x87\x30\x76\xbc\x20\x80\xc1\xb0\xa1\x17\xa9\xa5\x84\xb7\x17\x04\x45\x25\xbc\x6b\x0a\xf6\x35\xf2\x61\xe8\xa0\x96\x85\xdf\xbf\x1a\x50\xd3\x52\xb4\x1d\x80\xba\xa4\x5a\xfa\xed\x80\x5a\x1a\x51\xb7\xa9\xd1\x73\xab\x30\x26\xf0\x61\xb3\xec\x02\xc0\xb4\xa7\x2d\x41\xdc\xe8\x21\xc8\x68\xc7\x77\x45\xa5\x78\x42\x91\x2e\x42\x94\x62\x46\x2d\xdb\x54\x8e\x14\x25\x75\x8c\x22\xf8\xf5\x7d\xf5\x8a\xaa\xde\x6b\xd7\x75\xcf\xcd\xb8\x31\xf1\x42\x6f\x5a\x45\xfe\xbc\xd3\xb0\x7a\xcb\x6a\xe4\x9b\x85\x7e\xb2\xb3\x06\x6e\x3f\x77\xbf\xd7\xd5\xc2\x55\x0b\x21\x52\x05\x46\xf5\x68\x54\xcf\xb5\x6d\x22\x14\xcb\x5d\x78\x7f\x2e\x6a\xc5\x43\x68\x45\x10\xee\xfe\xaa\xfe\x2d\x7a\x35\xb9\x3e\x3c\xfa\xab\xfd\xaa\x9e\xa3\x64\xbd\x72\x85\xb5\xf2\x87\x84\x06\xde\xb2\x1f\x2f\xc3\x14\x53\x53\x2d\x5e\x24\x01\xa5\x1d\xc6\xff\xbc\x67\x37\x3a\x8f\xe7\xd4\x94\x64\xb5\xf2\x59\x8c\x0f\x58\xc9\xd8\x02\x6d\x99\x82\xe5\x40\x54\x48\xcc\x38\x44\x1f\xb2\xda\x89\x03\xbe\x80\x8c\x87\xe4\xd9\xce\x2e\x75\xb9\xa9\xc7\xef\xab\x4c\x5b\x87\x60\x3c\x36\x1d\xd4\xc5\xb9\x16\x29\x09\x79\x29\x38\xe0\x86\xe9\xb3\x10\xe1\x6b\xbd\xd6\x86\xae\xb6\xdb\x51\xf6\x10\xad\xa2\xe3\x1e\x18\xe5\xdc\x5c\xf4\x96\xbc\x73\x7b\x43\x1e\xdd\xb3\xc7\x13\x4e\xfc\xcc\xcb\xe8\xa9\x66\xf4\xa3\x99\xc9\x43\x2b\x7a\x23\x2a\x3b\x5a\x24\x06\x8b\xa1\x9e\xd6\x15\x5e\x71\xac\x54\x8a\xf3\x32\x61\x48\xba\xd9\xd3\x3d\x55\x9e\x89\x79\xe9\xe4\x74\x91\xac\xa3\x80\x79\x78\xa9\xad\x66\x79\xa4\xa8\x9a\x4a\x68\x47\x55\x6e\x2c\xf2\x54\x8b\x30\xfa\xae\x4c\x14\x29\xf3\x3c\x40\x5e\x10\x26\x0c\x69\xb2\xa1\x1d\x13\x0d\xbc\x82\x85\xd5\x02\xa7\x08\xcb\x31\x10\xfc\x6b\x69\x54\x66\xb6\x40\xb0\xf9\xf7\x1e\x18\x1f\x6c\x59\x0b\xd8\xe6\xff\x59\x5e\x85\xa8\x2a\x04\xe2\xa8\x3c\x0c\x4c\xef\x2a\x8c\x57\x6b\xcc\xa1\xba\xa3\x20\x44\x81\x39\x91\xc6\x3f\xea\x52\x2a\xa3\xfa\x4d\x10\x1b\x1e\xe0\x0c\xde\x9a\xd9\xd2\xf0\x05\x93\x5d\x68\xd3\x63\x15\xe9\x45\xe2\xc9\xfc\x29\x32\x42\x75\xd8\xa9\xd0\xa6\x29\x9d\xc5\x78\xba\x24\xea\xe1\x4d\x85\xee\x21\x7f\x20\x64\xf1\x5d\x8e\x2d\xe6\x35\x5d\x11\x0f\x9d\xbf\x3f\x8f\xac\xb5\x5f\x2b\x85\x67\xe3\x41\xd3\x83\x2c\x9d\x4f\x8a\x4f\xeb\x62\xa2\xbf\x7e\xeb\xf1\x08\xed\x8a\x79\xe5\x8f\x56\x51\x7d\x59\xc1\x6d\x3c\x8f\x54\xd6\x21\x8d\x48\x03\x4d\xb1\x45\x06\xe7\xd7\x09\x2b\x5c\xdc\xdc\xd5\x5e\x8d\x79\x00\xce\xdc\x97\xec\x54\x6c\x65\x03\x27\x93\x72\xc8\x14\xeb\x18\x54\xed\x68\x41\x23\x27\xae\x20\x1a\xf0\x55\x49\xf3\xf9\x0a\xab\xea\xb9\xe4\x8d\x08\xa2\x38\xd1\xca\xd6\xee\xb2\xa0\x96\x9d\x5d\x56\xc3\x31\x7f\x57\xc8\x88\x8b\x1f\xdf\xbf\x7f\x3b\x54\x30\x34\x2e\x8f\x56\xe6\x77\x53\x79\x34\x16\x9e\xf3\x47\x33\xe9\x17\x6e\xd3\x09\xd9\xc1\x63\xaf\xfe\x98\x6f\x77\x90\x57\xfe\x08\x72\x2a\xe8\xf2\xf8\xa8\x65\xd5\xe7\x6a\x54\x14\x64\x9d\xe1\xa2\x0b\xcc\x1c\xaa\x8c\x82\xd0\x36\x43\x09\xec\xc6\x76\xb8\xfc\x9c\xf6\x3b\x42\xd5\xb2\xfd\xda\x6b\xb8\x5f\x95\x25\xd3\xc9\xa4\xdf\xc3\x4f\xfc\x8c\x8e\xf7\x09\x31\x66\x57\x42\x4d\x2c\xb5\x62\xe8\x13\x49\x8c\x6d\xa0\xb7\x01\x3d\xb6\xd7\xe0\xe4\xe7\x8e\x82\x4c\x1e\x38\xfe\xcb\x7d\xb2\xf4\xb0\xbf\x80\x32\xbb\xd8\x3e\x17\x99\x58\x44\x16\x47\x82\x76\xf0\x57\xc0\x79\x2e\xbb\x69\xb6\xa3\x59\x84\x37\x6e\xc9\x1a\x30\x01\xee\x3b\x38\x87\x9f\x3a\x89\x87\xe6\xe4\x8f\x76\xe8\xa4\x8c\x5b\xe3\xf6\x44\xaa\x96\x6e\x1d\x1f\xcd\x3b\xe6\x5d\x9e\xc3\x79\x18\xb3\x5c\xa1\x9e\xf3\xbf\x7f\x7e\xfc\xbf\x7f\xae\x1d\xae\xda\x08\x77\x5b\x96\xab\xdf\x6f\x53\xba\xb0\xd3\x6b\xdc\xb8\xa3\x5f\x51\x49\xac\xd0\xa8\x68\xb0\xbb\xc2\x53\x1f\x27\xf3\x79\x64\xf7\xd2\xb5\xb2\x86\x13\x9a\x12\xda\x61\x42\x1f\x33\x80\x7b\xab\x55\x14\x32\xa7\x53\x8e\x49\xce\x3a\x8e\x60\x9a\x3a\xe9\x0a\xfa\xe1\x05\xcb\x0d\x6d\xe7\xc1\x2b\x69\x2f\xcf\x45\x2d\x97\xd6\xec\xf0\xa9\x21\xf6\xc0\x19\xcb\x4a\x78\x9e\x7c\x52\x94\xa9\x80\xff\xdc\x03\x93\x91\x9d\xb5\xdc\xaf\x60\x2d\x15\x39\xd3\x26\x6d\xa1\x67\xec\xd4\x5b\x49\x94\x39\xe7\xed\xc9\x3f\xd9\x2e\x3e\x93\xa6\xb1\x86\xf9\x46\x7b\x55\x28\x6d\xbd\x98\x27\xf5\xdd\x4e\x0b\xb1\xd5\xe7\x9b\x37\x50\xb2\x99\x12\xda\xd4\xb3\x36\xe2\xd6\xee\x96\xd2\x56\x5e\xd6\x52\xe7\xcb\x97\x38\x57\x91\xf1\x22\x23\x35\x71\xad\x8a\x2e\x35\xed\xd6\x93\x9a\x84\x32\x93\x0b\xfc\xe0\x8c\xde\x04\xae\x46\x1e\xb6\x12\x9e\x14\x86\x0b\xc5\x8f\x89\xdd\x42\x32\xca\x2d\xbc\x58\x38\xb2\x89\x9f\x62\xb9\x95\x09\x07\xf2\x38\xba\x6b\x5e\x07\x95\xed\x4b\x12\x43\x6f\x47\x8f\x99\x2b\x55\x96\x1e\x6b\x9f\xd8\xaa\xd8\x6a\x5a\x42\x26\xa4\x51\xe7\x3d\x23\xd8\x3e\x65\xc2\x80\x0a\xb2\x2a\xbc\xfe\x7f\x34\x62\x0c\xac\xdb\x29\xd3\xdb\xe9\x1f\xb4\x92\x11\x8a\x5d\x39\xb3\xac\x7b\xb3\xf5\x53\x05\x9f\xf2\x2c\xe6\xca\xb2\x02\x55\x9a\x17\x04\x5d\xac\xc5\xe0\x15\x11\xbc\x50\xce\x16\xc2\xfc\x2e\x45\x03\x8d\x31\x65\x53\xd0\x55\xa5\xf6\xf2\xc3\x76\x30\x4d\x8a\xc0\x44\x8d\x01\xb2\xa6\xbf\x46\x5c\x14\x28\xc8\xb1\x0d\xc2\xd4\x3b\x8f\x8a\xe8\xc2\x44\xcf\x46\x6b\x68\x73\x85\xa2\x52\xa3\x0b\xb2\xab\x1c\x61\x30\xc3\xf5\x76\x4c\xa7\xee\x5c\xd7\x62\x82\x39\xea\xa0\x2d\x27\x4b\x14\x9f\x06\x81\x9d\xd3\x9d\xec\xe8\x64\x2e\x9b\xc4\xa1\x0c\xef\x65\xba\x0e\xfe\xbb\x71\xce\x10\x2f\x4e\xf0\x82\xb9\x8a\x14\xd2\x0e\xb6\xf0\x6a\xbd\x88\x75\x27\x79\x3d\x9f\xb6\x70\x66\x6a\xe1\x46\x60\x36\x1c\xe7\x0b\xc9\x5e\xb9\xbf\x86\xb5\xb8\x75\xb9\xcd\x47\xaa\xc2\xe9\xd1\xc7\x5e\x48\xd5\x1c\xd4\x02\x24\x5d\xaf\x97\x82\x6f\x72\x07\x34\xf7\xef\x40\xa4\xcd\x87\x9e\xbf\xb0\xd4\xae\x5e\x29\xf5\x10\xf9\x93\xb2\x4c\xa9\xcc\xb9\xcf\x8b\x65\x5b\x6b\x5f\xb3\x89\xf0\x93\x6c\x14\xd1\x66\x04\x29\xd5\x7a\x27\x7f\x33\xb1\xe4\x74\x91\x5c\x11\x29\xe5\x07\x72\x21\x64\x58\x3d\xad\x89\x7a\xc6\x8a\x74\xcf\xb7\xb3\x6d\x59\xcd\x47\xc2\xba\x05\xe2\xa9\x6b\xb3\x8e\xb8\xd4\xec\x85\x6a\x99\xbd\xe4\x9b\x21\xcb\xa8\xdc\xbb\xc1\xde\x9c\xcd\xd0\x05\x04\x46\xc7\x31\x48\xfd\x05\x5c\x7a\xc7\xf6\x44\xce\xec\xa5\xdb\x07\x0c\xc0\x05\xad\x64\x61\x1f\x04\x57\x49\x41\x1b\x2d\x25\xb4\xfb\x4d\xdc\x07\x82\xea\x1f\x4b\xfb\x58\xff\x66\x03\x92\x98\xe2\xbd\xf9\x90\x6f\x1c\xef\x98\x00\x74\x8d\x61\x30\xf4\xa2\xd0\x4b\x7b\xbf\xb2\x29\x0e\xff\x74\x13\x6f\x78\x91\xdd\x21\x2f\x4e\xf1\x33\x21\xe3\xe9\xaf\x7d\xc0\xb1\xaf\xba\x83\xc1\x02\xe3\xd5\x90\xef\x72\xae\x1b\x82\x36\x6f\x51\xb2\xaa\xdd\x91\x50\xd0\x59\x7b\xa2\x08\x98\xe9\xa9\xe7\xca\x31\x5c\xcd\x72\x28\xf2\x48\x9f\xb9\xaf\x13\x26\xfe\x67\x8a\x28\xf2\x6f\x68\x52\x61\x75\x5e\xb2\x9d\xe7\x3b\xbc\x61\xfd\x1d\xbb\xaf\x13\x87\xe9\x69\xc8\xff\x3e\xff\xe4\xf9\xf8\xd8\xa5\xff\xb0\x27\x6f\x69\x0e\xd1\x63\x97\xfd\x4b\x05\x43\xf6\x82\x6a\x0b\x8e\xdd\x77\x70\xbe\x8e\x3c\xe4\x3c\xff\x44\x93\x49\x10\x2c\xdd\x88\xb9\xbc\x20\x5c\x70\xed\x09\x65\xc7\xd7\xa6\x25\x27\xe1\xe1\x85\xc3\x7e\x18\x93\x10\xea\x0b\xeb\x4c\x24\x81\xc8\x41\x9c\xe5\x3a\xd2\xa7\xc2\x6c\xac\x90\x25\xc9\xe6\x65\x9d\xe5\xf7\x3f\x24\xa8\xc7\x8b\xb3\x92\x2f\x3f\x7f\x56\xa9\xb4\x99\xcf\x52\xaf\xdf\x17\xb5\x20\xe0\x30\x4c\x5f\xc3\xab\x47\x8f\xe0\xf0\xd2\x8b\xc2\x80\xbe\x05\x50\x40\x86\x60\x40\x6e\x3a\x72\xa0\xe1\x07\xfe\xe7\x30\xa3\xec\x55\xe4\x6b\xa8\x7b\x34\x58\xf0\xc5\xd1\x56\x40\x7a\x34\x3a\xe2\x33\xb7\x76\x46\x66\x18\x27\x6f\xed\x73\x1c\xc2\xdf\xd7\x5e\xd4\xd3\x69\x34\x47\xcb\x3e\xb0\x50\xd3\xec\xd7\x71\x82\x7b\xae\xea\xdc\xed\x03\x45\x6c\x8f\x1f\x8e\x41\x8e\xda\x5a\x3b\xd0\x08\x74\x1f\x04\x61\xf0\x0e\xfa\x30\xbc\x84\x4f\x31\x46\xa9\x4e\x3d\xd8\xb7\x73\x88\x45\x12\x78\x0c\x97\x0c\x0e\xe2\x94\x73\x46\xa2\xff\xf9\x33\x6b\x9b\xca\xb6\xfa\x25\xf0\x70\xd4\xdf\x00\x1e\xad\x79\x7c\xc3\xa9\xa1\x5e\xdc\x44\xaf\xb8\x2b\x2b\x64\xa8\xd1\x63\x60\x5a\x9c\xfa\xdf\xc5\x43\xfd\xc1\x71\x2c\xca\xf2\x8a\x62\xb6\xda\xe8\xc7\x99\x99\x41\x20\x3f\xe6\xe2\x9e\x51\xdb\x95\x4b\x71\xc7\xd9\x46\xbc\x24\x3b\x5b\xc4\xd0\x0b\x82\xa1\xb7\x5a\x45\xd7\xac\x4f\x26\x53\x0e\xe5\x82\x31\x40\x33\x5e\xa3\x5d\x7c\xc1\xe4\x8a\xca\x8f\xf8\x54\x38\xff\x75\x8c\xe9\xbc\x21\x40\xfd\x0d\xd6\x8e\xc1\x06\x78\x41\x90\x83\x20\x1e\xae\xd6\xe9\x82\x21\x61\x0f\x82\xb8\x0f\xcc\x6f\xd8\x14\x2c\x9f\x21\xb8\x4c\x2e\x61\xf1\x87\xd9\xcb\x06\xf6\x6f\x72\xb5\xdb\x53\x5a\xe0\xb9\xd7\xbb\xf9\x08\xaf\x8f\x45\x89\x18\xbc\xe9\x4f\xbf\xcd\xd8\x5b\xa6\xd3\x29\xfc\xfc\x59\x53\xc7\x92\x07\xfd\x47\x8f\x32\xe4\x58\x16\x7f\xc1\xd3\x6f\x6f\x20\x05\x03\xfb\xc6\xfd\x06\xf3\x1a\x27\xfd\x4d\x5f\x9e\x1e\x3a\x13\x63\x20\x42\x38\xf4\xaf\x32\xaf\x81\xf6\x5b\x94\x90\x56\x58\x63\x7e\x2c\xb7\x28\xa6\x35\x52\x78\xbe\x15\x58\x40\x64\xca\xde\x03\x45\xf0\x56\x10\xa5\x61\x8a\x7b\x90\x0f\x2e\x8b\xf1\xb3\x9a\xf7\xfd\x0d\xc8\xdc\xe6\xb0\x7f\x03\x87\x28\x89\xa2\x73\xcf\xff\xd8\x93\x5f\xd1\x56\xf2\x23\x42\xaf\x35\xb7\x1c\xb4\x95\x5b\x8e\x26\x70\xde\x17\xef\x9c\xf0\x2d\x7e\xf3\xfc\xfb\x97\xfb\xe5\xde\x39\x76\xd7\x9b\xc6\x1e\x37\xfb\xb5\x1c\x6e\x18\x94\x6c\x7e\x37\x52\x62\xae\xf0\xbc\x39\x68\xac\x52\xa0\xae\x37\x07\x4a\xe2\x3b\x6a\xef\x78\xb3\x5f\xdb\xf1\x66\xbf\xae\xe3\xcd\xa1\xd5\xef\x06\xa8\x47\x59\x01\xbb\xc8\x15\xa7\x96\xb2\xe9\x56\x4c\xec\x4c\x62\xee\xcc\xc8\xbe\xdb\x56\x75\xcd\xe6\xe1\xb0\x79\x7d\x41\x53\xfa\x88\x99\xd2\x27\xf6\xdd\x57\x46\x4a\x0d\x4c\x5d\xdb\xd1\x77\x39\x16\xf1\x92\x46\x7b\x8d\xcc\xb2\x79\xc5\xbc\xbd\xdd\x6e\x56\xc9\xd4\x02\x69\x94\x31\x9c\x17\x20\x37\x54\xcf\xba\x31\x9c\x25\x35\xde\xda\x0e\xbe\xb3\x25\x36\xc5\x22\x19\x74\x33\x4b\xf6\x4e\xb5\x25\xdb\x8a\x24\x02\x2a\x35\x8c\xd8\x3a\xc8\x32\xc0\xea\xc2\x7e\xbd\xd3\xb5\xfd\x7a\x67\x0b\xfb\x75\x19\xee\xdb\x51\x47\x30\x65\xa6\x63\x96\x6d\x7e\xb7\x6d\xe9\xcd\xa9\xb0\x95\x8a\x72\x2c\xdd\x4f\x9a\x59\xb9\xda\x9d\x38\xaa\x15\x28\x3b\x72\x3f\x73\x14\xdb\xf6\xcc\x4d\xb6\x3c\x73\xe6\xfe\xe6\x73\xda\x70\x3a\xb7\xa7\xca\xcc\xa9\x39\x37\x3c\xa7\x93\x96\xe7\x54\xc2\xb2\xe1\x41\xcd\x82\xb8\x8b\x93\x3a\xe9\xfa\xa4\x4e\xbe\xd8\x49\xa5\xe0\xb8\x3f\x47\xd5\x92\xfd\xa3\xda\xce\xdd\x26\x5a\x71\x4b\xed\x77\x46\x89\xbd\xd0\x19\x30\xee\x60\x6f\x2a\xb2\x23\xc2\xdf\x50\x99\x5d\xd3\x95\xdb\x74\xd7\xaa\x2b\x53\x21\x4d\x37\x4a\x28\xad\xc3\x8b\xae\xb4\xd1\x39\xa9\xa9\x4a\x29\x4d\xf5\x9d\x5c\x8c\xf8\xf7\x53\x50\x37\x51\x2e\xe6\x35\x73\x4d\x74\x8b\x37\x8a\x5b\x65\xba\x19\x0d\x31\x32\x0a\x3c\x22\x36\x6b\x6f\x6b\x68\xcf\x55\xdf\x39\x85\xb5\x8e\xbd\x35\xb4\xb8\xba\x06\x37\xba\x76\x5e\x11\xc2\x18\xc6\x73\x17\x58\x15\xc9\xa7\xeb\x0b\xfa\x90\xfd\xcb\x1f\x16\x6b\x96\x49\x27\x29\x8c\xf1\xb1\xfb\x22\x75\x56\xec\x6f\xa6\xe4\x55\xcb\x2d\x51\xab\xfe\x98\x3f\x95\xed\x94\xa9\xf2\x53\xbe\x4f\xc5\x5b\xa1\x4d\xec\xf9\xef\x6b\x2f\x4a\xc5\x0a\xec\x8a\x55\x83\x6e\xf0\xa6\x86\x6e\x55\x9d\x7a\xab\x6e\xb4\x60\x34\xb7\x7f\xcb\x0a\x4c\xa5\xe9\xab\x56\xbe\xe5\x21\x96\xd3\x95\x69\x3a\x32\xa9\x58\x91\xe0\x98\x52\x65\x99\xb6\x05\x90\x5d\x5a\x0f\xd8\xb7\xfa\x3b\x80\xad\xfa\x2e\xf5\x3e\xff\x92\x76\xd5\x40\xd1\x05\xb2\xaa\x63\x76\xee\x9b\x1c\x5f\x72\x62\x2b\xd4\x65\xb7\xa2\x19\xb3\x97\xf3\xbe\x1b\xcd\xd8\x5f\x30\x5c\x3d\x3f\xda\xfd\x47\x69\x3d\x49\x55\xd4\xf1\xa9\xb8\x31\x79\xf6\x6c\xcf\xfc\x59\x14\x72\x6e\x63\x5c\x47\xe0\xac\x6d\x01\x92\x43\xe0\xd2\xaa\x8f\xb5\xea\x43\xe6\x75\x6e\xac\x9c\x73\xc6\x13\x28\xf5\xc9\xae\x93\xbf\x7c\x18\x45\x7a\xb9\xc8\x5d\xca\xa5\xc5\x1e\x0e\x2f\xa1\x0b\x76\x27\x0d\x73\x83\x94\x96\x18\x60\x41\xa2\x8d\x3c\x32\xa5\xda\xca\x1e\x90\x24\x5f\xdb\x95\x5e\x72\x56\xad\x6a\x25\x1a\xbc\xe5\x8f\xba\xab\x46\x6d\x66\xb3\xd0\x89\x95\x4e\x3a\x28\x99\xb4\x2a\xf8\x64\x54\x79\xb2\x72\xd6\x46\xfe\xea\x0e\xb8\x54\x6b\x06\x94\xae\x0b\x81\x68\x62\x47\x4b\x61\x43\x53\x31\xcc\x8a\x32\x96\x5b\xf3\x4a\x1a\xae\x31\x7b\x4c\x81\xa7\xc3\xb0\x8d\xc3\x70\x29\x78\x22\x29\x14\x37\xc2\xb9\x5c\xe2\xf0\xee\xaa\x7d\xf8\x3a\x45\xdb\x46\x69\x3b\xb3\x97\x53\x68\x1f\x74\x72\x2b\x85\x67\xd9\x7f\xa2\x08\x42\x60\x4b\xc8\xde\x20\x87\x67\x8d\x69\x9e\x8b\xdc\x48\xed\x44\xe7\x1a\x69\x8d\x6b\x95\x3a\x60\xd0\xca\xd7\x39\xb0\xd2\xa5\xdb\x80\x83\xa8\xbc\xdc\x1a\x14\xdc\xad\xbd\x19\x89\x10\x95\x45\x1a\xac\xa4\x9e\x72\x7c\x0b\x1d\x83\x2d\xa3\x7b\xbb\x2c\xa7\x39\xf2\xdc\x54\x9d\x91\xd5\x42\x14\x65\x67\x28\xd6\x4a\x08\x46\x82\xe6\x2b\x1d\x50\xbd\x14\x4d\x61\x2a\x3d\x83\xa5\xb2\x61\x8e\x6f\x43\x71\xa0\x98\xca\x16\xb9\x1a\xca\x74\x02\x9b\x0e\x33\x36\xdc\x27\xce\xf7\xcd\xfe\xfb\x93\xcb\xbd\x67\xaf\x3b\xe2\x7c\x81\x2c\xbe\xce\xaa\x01\x58\xf9\x60\xbd\x30\x87\xd4\x78\x1f\x75\xcd\x08\x8f\xf7\x65\x69\xd4\x32\x6e\x98\x7b\xc4\x5b\x6a\x86\x28\x4f\x60\xe9\xfb\xeb\x20\xe8\x05\x49\x1c\xa9\x1c\x72\x42\xc9\xab\x18\x67\xc9\x4b\xd3\xea\x93\x1e\xe5\x4f\x25\xdf\x4c\xf8\xe8\xa3\x19\xb5\xc7\xdd\x0b\xee\x99\x1b\x7d\x6d\x7e\xc2\x46\x92\xed\xac\xbe\xd6\x48\xf3\x62\x2f\x1c\x6d\xde\x5a\x5a\x19\x59\xa3\xc2\xe5\x68\x26\x4b\xd7\x0e\x5c\x50\x58\xa6\x36\x9f\x4c\x40\xcf\x53\x63\x6b\xbe\x63\x09\xde\xb1\x20\x1e\x4f\x54\x6b\x46\xb5\x74\x51\x13\x32\x23\xa0\x64\x8a\x56\x0e\x96\x5a\x7c\x5d\x59\x28\x4f\xa1\x00\xe3\x74\x29\xc4\x90\xff\xf2\x71\x5d\x8d\x6e\xfd\x42\xce\xa1\x50\xaa\x71\x6b\x06\x55\x59\xb7\x68\xb6\x75\x56\x0b\x5d\x9c\x3a\x28\xbb\xf5\x0e\xda\x57\x30\x2d\x84\x9e\x8e\x8f\xc6\xfa\x98\x97\x6d\xd7\xd8\xb6\x12\x19\x17\xee\x07\xaa\x99\x72\xac\xb6\xf2\xf7\xcc\x55\x63\x5b\x6b\x4f\x53\x4c\xac\x35\x37\xfb\xbc\x3a\xc1\x83\x06\xf8\x2f\x53\x6a\x77\x13\x66\x58\x80\x2f\x25\x29\x3d\xee\x06\x63\x72\x5a\x96\x3b\xc1\x88\xfd\x0a\xad\x8b\xa8\xb0\xb2\x5f\xea\x6e\xd3\x0e\x61\xf6\x4b\x23\x11\x2b\x81\x91\xbd\x04\xd5\x25\x5e\x07\x69\xbe\x0e\x4d\x8f\xa9\xd7\x01\xee\x13\x3f\x4a\x52\xc3\xf2\xde\x9c\xa7\xa1\x15\x62\xef\x8d\xe2\xe7\x79\x10\xe2\xed\x03\xaf\x0b\xf4\x91\xad\x54\x66\x13\x53\x65\xb6\xf3\x87\xca\xec\x0f\x95\xd9\xbf\xa6\xca\x4c\x5d\x8f\x7f\xa8\xcd\xfe\x50\x9b\xd5\x4c\x5a\xba\x8d\x2e\x4d\x5d\x64\xcc\xf1\xd8\x8b\x74\xfd\x99\xa6\x53\x33\x95\x6d\xf6\x38\x57\x16\x36\x4a\x63\x63\x85\x82\x42\xe6\x4c\xcd\x16\x0b\xea\x48\x25\x77\x7f\x75\x71\x29\xf4\x90\xbf\x18\x9c\x7b\xe8\xbe\xa8\xe1\x76\x46\x93\x9f\xce\xd1\x5f\xde\xd8\xd5\x70\x1f\x3e\x78\x68\x3e\x72\x01\xfb\x63\x4c\xbd\xea\xc9\x0a\xe8\x26\x8a\x65\xba\xc0\x7d\xb3\xc2\x22\x8a\xe3\xcd\x8a\xe3\x09\xf3\x54\xf7\xce\x23\xd8\xe8\x33\xae\xc6\xab\xff\xc1\x0a\x25\x2b\xfd\x83\x8f\x90\x60\x1f\x73\xd9\x00\xee\x93\x34\x41\x34\xd3\xc1\x45\x18\x61\x5a\x0c\xf3\x49\x12\xcb\xb6\x4f\xe4\x5f\x3c\xcc\xc4\x56\xa9\x42\x6d\x5a\x89\x99\x5b\x6b\xc4\xc2\x50\x26\x5c\xd5\xa6\x0d\x6c\xad\xda\x39\x61\x49\x0d\xb4\xec\xa7\x32\x26\x44\xe4\x95\x97\x93\x94\x5d\xd1\x45\x51\x09\x80\xfe\x5f\xfd\x42\x9e\x79\x35\x23\xe1\x99\x80\x4c\xa9\xdc\x36\x23\xba\x70\x4d\x9d\x34\x29\xcd\x58\xa8\x8a\xd1\xd3\x22\x1c\x55\x55\x75\x50\x90\x1f\x72\x3d\xde\x21\xd0\x80\x47\xd0\x41\xd7\xcf\x19\xf3\x32\xe5\x27\x73\xc0\xa5\xec\xbb\xba\x5f\x60\xfb\x98\xcf\xb4\xc6\xa4\x84\x46\x17\xdc\x06\x00\x64\xbe\xcf\xce\x41\x90\xe9\xb9\x29\x10\x72\x13\x53\x8a\xed\x26\x3a\x05\xc5\x5c\xd0\xee\xdf\xd1\xb0\xc8\x1f\xd8\x49\x91\xbe\xd4\x1e\x0a\xbd\x01\xe3\xe0\x73\xf5\x42\xc8\x34\xd7\x21\x8f\xa7\xa4\x20\xd1\x4a\x0a\xab\x15\xd1\x11\x8e\x66\x44\xf6\x66\xa2\xe3\x48\x9f\x72\x3b\x7e\xd9\x2d\x77\x26\x71\xec\x2a\x0f\xae\x25\x3a\x9a\x35\xd0\x2e\x8c\xd5\x9c\x6b\x68\x01\x6a\x71\x35\x16\x33\xde\x11\x19\xa1\x9a\xf3\x19\x1f\x36\x2b\x2e\x50\x48\xb5\x18\x61\xfc\xb2\x54\x2b\x87\x75\x3b\xe0\xcc\x3d\xe5\x33\xd1\x94\x01\xea\x92\x91\x77\xd1\x2a\xf2\x7c\xb8\x48\x22\xae\xe2\x2a\x48\x8c\x32\xd9\x31\x34\x02\x93\xdd\x99\x15\x65\xf9\xc1\xcc\xc0\xa0\x1e\xfe\x65\x95\x32\xe4\x12\x22\x47\x93\xf6\x25\xf3\x61\xb7\xd3\x06\x1b\x50\x51\x21\x78\x5a\x61\x7d\x4e\xb0\xf8\x38\xa1\x2a\x6b\x4d\xdd\x91\xd9\xad\xfe\x44\xe5\xef\x72\x9f\x2c\xd7\x11\x0e\x57\x94\x91\x78\x82\xe0\xef\xeb\x10\xb1\x6c\x7c\x2e\xa2\x6e\x62\x45\x19\x66\x6c\x6b\x92\x91\x13\x33\x43\xd1\xd2\x46\xdb\x52\x4b\x6e\x92\xf1\x7a\x2d\x25\x69\x5b\xee\xc2\x8a\xe0\x86\x42\x24\x51\x1b\x5b\x1a\xdb\xd0\xac\xca\x6a\x61\xc8\x48\x19\x54\x44\x40\x63\x63\x74\x15\x27\x76\xbc\x0b\xce\x14\x37\x38\xe3\xca\x1f\xfe\x50\x37\xc9\xd5\xe2\x8a\xc6\x3b\x79\xfb\x5c\xc6\x58\x67\xc7\x25\xd9\x73\x07\x46\x21\xe3\xf4\xec\x4b\x42\xa2\x18\x59\x89\x49\x1c\x04\x07\x33\x8b\x51\xf2\xa0\x0c\xf5\xb3\x37\x6e\x1b\x59\xde\x86\x6d\x15\x17\x3f\x9f\xe3\xae\x9a\xa3\x0d\x5a\x76\x74\x6c\x73\x0b\x1d\xd8\xe5\xe2\x3d\x02\x56\xab\x45\xad\xa5\x26\x60\xbc\x5b\x3b\x4a\xa7\xf6\x48\x96\x51\x76\xba\xb9\x2c\xb9\xf0\x70\xb7\x97\xe5\x61\xf1\xad\xe0\xf1\xba\x3e\x35\xaf\x02\xaa\x92\x85\x17\x15\xd4\x9f\x77\x5a\x40\xf5\xbb\x57\x12\xb7\x27\xf7\x35\x89\xbd\x9d\xd4\xd7\x91\x0d\x18\x28\x86\xb1\x1e\xa0\xdb\xc0\x4a\xd4\x95\xd2\x7a\x6b\xd2\x7f\x64\xa1\xfc\x47\xb7\x45\xf8\x95\x6c\xe4\xd2\x00\x21\x4a\xf3\x63\x42\x4b\xdd\x02\x1a\xd6\xa6\xc6\x05\x27\xfa\xe3\x99\xf2\x1e\xd2\x08\x2a\xa5\xda\xc2\x47\x65\x62\x8d\xf1\xcc\x5d\x0f\x46\x7e\x41\xfa\x19\x70\xbd\xd5\x6a\xe0\x5d\x79\x08\xe6\x52\x69\x1a\xe9\xb7\xab\x3f\xca\x9e\xad\xed\xaf\x15\x2b\xf2\x97\xdf\x31\x0d\x50\x9e\xa3\x9c\x7e\x17\x95\xaf\x31\x77\x2f\xb5\x61\x88\x2c\x94\xdc\x5e\x51\x3f\x53\x12\xbf\xd1\x91\xcb\x37\xca\xd7\xae\xcf\xb7\xe9\x4a\xfc\x62\x5a\xa8\xfa\x88\xdf\xe1\x45\x52\x26\x5e\xd0\x69\xdd\x8e\x44\x41\x9d\xfa\xb2\x57\x09\x53\xa0\x7f\x45\x17\x8a\x5d\xeb\x96\x8f\x12\xd2\xa8\x1f\xf3\x74\x3b\xf6\x52\x3f\xaf\x40\xa9\x73\x14\xc9\xa6\x88\xf3\x48\x3a\x31\x8f\x18\xb0\x8d\x15\xc0\x2e\x06\xa3\xbd\x94\x8d\x76\x4a\xab\x30\x51\x0d\xff\x76\xab\x63\xe5\x9c\x06\x64\xeb\x2a\x97\xa8\x0d\xba\xe5\x32\xf5\x51\x2b\xd7\xfa\x4c\xd5\x96\xea\x60\xc1\x5a\xa5\xaa\x7a\xab\xce\x0e\xbf\xe5\xd2\x73\xe3\x57\xae\xff\x2d\x82\x3e\x0c\x60\xec\x17\x2c\x9d\x8a\xcc\xa4\xeb\x78\xbd\x84\x28\xf4\x2b\x57\xa4\x75\x68\x5f\x4c\xae\x47\xcb\x1c\xbb\x92\x1d\xc7\x39\x17\xda\x03\x8d\x6c\xe5\xf5\xc0\xdd\xf8\x1d\xde\x1b\xc6\xd0\xa6\x12\x68\xae\x11\xb0\x6a\xb3\xf6\xa4\x38\x2e\xd3\xe3\x6f\x4b\x97\xe2\x6e\xb2\x0a\x55\x28\x0a\xac\x74\x7b\x9c\x7f\x51\x80\x23\x55\xf3\x6a\x27\x89\x14\xdd\x05\xcd\xab\xf4\xd4\x5b\xbc\x79\x32\xc7\x96\x37\x77\xb6\x7c\x83\x1a\xb4\x54\x43\x94\x1c\xb8\xae\x71\x57\xbf\x6c\xbe\x10\x02\x17\x5d\xcf\x63\xfb\xcb\xce\x76\x52\x12\x6e\x2f\x5a\x2d\xbc\xdb\xc5\xd3\x42\x6e\x20\xbb\xc8\xce\xf1\x35\xb3\xca\xaf\x0c\x1d\x73\x0c\xc0\x17\xc2\xc9\x52\x36\x6a\x5c\xd2\xe2\xab\xc4\xce\x72\xae\xcd\xba\xdc\x3f\xf0\xd4\xc0\xd3\x95\xe4\x12\xbf\x14\x86\x16\x31\xba\x63\xfb\xcb\xee\xf7\xc9\xc6\x40\x77\x8e\x99\x85\xdc\x77\x76\x99\xb7\x87\x8f\x56\xb6\xbe\x0b\x8c\xb4\x78\x32\x02\x8b\xf9\xa2\xa5\x96\x28\xef\xc4\x58\xe4\x9f\x78\x1b\x35\xeb\x73\x1a\x30\x30\xa9\xf6\x4a\x94\x65\x30\x58\x22\x31\xe9\x8f\x28\xfc\x0d\x2f\x50\xb2\x1c\xc0\x18\xa3\x10\xa6\xbc\x0a\x3b\x70\x07\x61\x4a\x6f\x86\x60\xc0\x44\x8f\x30\xbe\x4c\x7c\x11\x3b\x4a\x9d\x12\xa5\x33\x22\xad\x84\xac\x95\xf3\xb0\xbb\x33\xea\xf9\xcb\x68\xa6\xb2\x6d\x7c\x16\xb3\xee\x80\xf7\xa7\xcc\xfb\x65\x08\xaf\xee\x8b\x8b\xe2\x0f\xef\xbf\x79\xfa\xe6\x6f\x8b\xff\xb1\xbb\x28\x16\x39\xee\x69\x49\xa1\x0b\x5c\xf6\xc8\x1a\xb9\xb3\xde\xd8\xd4\x8f\xc9\x00\xd8\x5c\x01\x37\xba\x56\xaa\x51\x1c\x30\xd7\xc6\xd2\x1c\x30\x45\x5e\x3d\x16\x9f\x1e\xea\xec\x2c\x2f\xd1\x42\x61\xbb\x32\x6a\xc8\x35\x2a\x52\x9d\xaf\xfd\x8f\x10\xe7\x8b\x6f\x51\x6f\xc4\x74\xe5\xf9\x50\xc6\x0b\x0b\x2d\x29\xcf\x0e\x67\x98\x11\x94\xe0\x4c\xb0\x5b\x7c\xf7\x56\xfb\xec\x54\xff\x8a\x25\x17\xd2\x79\x82\x53\x26\x8f\xe7\x5e\xa8\x2e\xec\xef\x45\xcc\x13\xa1\x0c\x03\x97\xfe\x7f\xae\x66\xb5\xa6\xab\xac\x02\x9b\x01\x6e\xc6\x56\xff\x2b\x40\x9a\x0b\x08\x06\x90\xd9\x33\x2b\x7c\x95\x3c\xd1\x1e\xb4\x6e\xae\x3c\xe2\x28\x1f\x0e\xdd\x22\x2a\xd0\xd8\x21\xad\xe8\x7a\xeb\x1d\x1a\x03\xcb\xe4\x9a\x86\xc0\xd9\xae\xdd\x82\x13\xec\xa3\x70\xd5\xcd\xac\x75\x03\x84\x3c\x18\xaa\xfb\x19\x70\x5f\x3f\x7e\x5a\x68\xc9\xb5\x8e\x9f\x7b\x98\x79\x50\x58\x9f\x57\x4f\x1a\xf6\x56\x3a\xda\x6f\x1b\xaf\x2e\x80\x91\x29\xd2\xae\xf5\x6f\x9b\xaf\xad\xde\x5e\x9c\xe0\xd0\x87\x5a\x0c\x40\x6a\x84\x7d\x66\x30\xba\xa8\x97\x4c\x08\x41\xa6\x5c\xe1\x8c\x27\x23\xcb\x80\x60\x36\xcb\x0e\x50\x23\x20\x32\x8b\x6d\xe5\x79\x4d\xb4\x82\x5e\x17\x82\x51\xd9\x32\x5a\x42\xdd\xef\xf7\x23\x44\xe2\x63\x18\x07\xf7\x85\xdf\xf8\xe7\x37\x1f\xe1\x2f\x6f\x3f\x5d\xd8\xf9\x0d\x96\x17\xdd\x8d\xc2\xf8\xa3\xf8\xa7\x34\xeb\xde\x1e\x35\x55\xfe\x14\xc6\x41\x33\xd7\x84\xa3\x42\xcf\x84\x71\x51\xbf\x8d\x2c\x08\xe6\x1c\xc7\xb6\xa0\xdc\x5a\xa5\xb4\x5d\x4b\x40\x37\x0f\xbd\x1e\xac\xbc\x18\x36\xf2\x6c\xae\xe1\x19\xa0\xf3\x72\x1f\xe9\xea\x6b\x38\x46\xb2\xc0\xd0\x66\xde\x8e\xdb\x46\x6e\x1f\x02\x77\x09\xe3\x35\x07\x82\xa0\x25\xd2\x20\x2d\xfd\x97\xb6\x88\xa8\xeb\x30\xc8\x52\xd1\x7d\xdd\x0c\xbc\x9f\x47\x35\xe0\x86\xf1\x1c\xc1\x34\x1d\xcc\x3d\x0c\xaf\xbc\xeb\x8e\x4a\xb1\x3b\xce\x0b\xd6\xaf\xc3\xfb\x4d\x1d\x18\x13\x16\xdb\xe1\xe3\x39\x18\x79\x17\x17\xa1\xef\x10\x41\xcf\xe1\xcc\x53\xea\x24\x6b\x9c\x86\x01\x74\xf0\x02\x3a\x27\x14\x2d\xc4\x3b\x67\x09\xd3\x85\x83\x13\xd5\x36\x8c\xcb\x9a\x0e\xeb\xd6\x7b\xaf\x09\x27\x4c\x6e\x09\xc2\xc7\xc6\xf3\xce\x61\xf5\x5e\xf5\xad\xe0\x45\x3d\x94\x1c\x3f\x89\x63\xe8\xe3\x01\x83\x5e\xa0\xaf\xbe\x08\x40\x7e\xb2\x5c\xae\xe3\xd0\xf7\x30\x64\x75\xea\xad\xd0\x6d\x05\x2b\xeb\xec\x5f\x91\x71\xb3\xdb\x8c\x92\x35\x5d\x4e\x72\x41\xa6\x49\x96\x20\x77\xfc\x1c\xe2\x2b\x08\x63\x27\x08\x2f\x2e\x20\x82\x31\x16\x0b\x09\x3c\xec\xf9\x30\x26\xc3\x0f\xad\x9e\xaa\xf5\x75\x12\xc0\x66\x53\xad\x1d\x77\x5a\xeb\x44\x12\x72\xd0\xee\xb8\x2b\xb2\x13\x85\x9c\x0a\x8a\xaa\xe1\x29\x24\x33\xc4\x49\x36\x69\xc6\x3d\x38\xd0\xe4\xbf\xa7\xe7\xc9\x1a\xe7\x8e\xf6\x57\x74\xd2\xd4\x22\x6c\x67\x6e\xab\x63\xa0\xba\x36\x0e\x84\x65\xf7\xb7\x46\xe5\x12\x01\x4e\x67\x34\xf2\x9e\x5e\xea\xef\x1c\x9a\x00\x57\x70\x6f\x01\xbc\x84\x11\x61\xc7\x06\x84\x36\x3c\xce\x34\x4c\x73\xfe\x86\xb4\x3b\xdb\xa6\x15\x76\xb9\x8e\x03\x88\x52\xec\xc5\xc1\xc0\xf2\x5d\xc1\x08\xe4\xcb\xea\xae\x05\xbd\xcc\xf6\xd5\x85\x57\x46\xc9\xb9\x8d\x93\x18\x2a\x86\x26\x82\x1e\x8a\x07\x9c\x9b\x2c\xcb\x18\xa0\x7a\xf4\x44\x87\xd8\x3b\xe7\x9c\xb3\x3b\x18\x67\x46\x21\x24\x47\x04\xb3\x8d\xf7\xc0\x7e\x61\xb5\x7d\xf7\xe4\xcd\xeb\xd3\xbf\xbd\xfc\xf0\xec\xcd\xc9\xe9\x87\x97\xcf\x9f\xbe\x7b\xfd\xe1\x6f\xef\x5e\xe6\xe0\x2a\xfc\x26\x79\xd9\x93\x12\x16\x94\xcd\x82\x56\x72\x8b\x93\x64\x05\x63\x88\x9c\x38\x41\xf0\x02\x22\xc4\x33\xfc\xec\x8a\x04\xeb\x2e\x70\x3f\x9c\x47\x5e\x8d\xc5\x3b\xce\x4b\x02\x29\x67\xbe\x0e\x03\x58\x74\x52\x0a\x53\x22\x58\xcf\x41\x51\x58\x7e\x27\xa7\x83\x60\x56\xf6\x3c\x34\x3d\x0e\xb4\x8f\x12\x12\x57\x89\xf4\xb4\x03\xe3\xf9\x5d\xa0\x78\x90\xf8\xe9\xbd\xc1\xf0\x32\xdc\x9e\xdc\x19\x6e\x3f\x4b\xfc\x35\x81\x34\xd5\x7d\x76\x80\xdc\xb5\x77\xaa\x88\x89\xc8\x4f\xe0\x0d\x5e\x40\x24\xae\x2a\x5a\xe1\xce\x76\x0a\x0b\x2f\x1b\x6b\x09\x25\xfd\x2a\x2f\x46\xd3\x3f\x10\x73\x52\x0a\x9f\x5b\xc4\xcb\x3a\xec\xc9\x76\x44\xd7\xa0\xb9\x95\x48\xd2\x88\xdf\xfb\xf7\xc5\x95\x4a\x30\xdd\x22\xca\x14\x30\xcb\x77\x8d\x39\xb5\x45\x9d\x7f\x5f\xac\x29\x05\xd1\x2d\x62\x8c\x45\x46\xbc\x25\x6c\x29\x49\xb3\x94\xed\x6e\x8b\xc4\x53\xcd\x52\x42\xd6\x98\x79\xb9\x50\xb9\x8d\xa2\xb4\x42\x4d\xda\x0e\xaa\xe3\x52\xff\x8f\x62\x8b\x07\x43\x1b\x18\x5f\xea\xce\x19\xdc\x0c\x12\x27\x78\x40\x7d\x40\xa8\x21\x84\xfe\x55\xea\xfe\x71\x15\xe2\x05\x4d\xb5\x03\xdc\xc5\x7a\xe9\xc5\x2c\xd3\x14\x0e\x71\x04\xc9\x9f\xcd\x2d\x28\xca\x4e\x71\x4f\xec\x26\x97\xf7\xaa\xd0\xf7\x4b\xf4\xcf\x8f\x6f\xff\xfe\xfa\x67\xbb\xe9\xc4\x5b\x85\x2e\x70\x83\x30\xf5\xce\x69\xf5\x3e\xf8\x09\xfa\x6b\x9a\x48\xcc\xf7\x62\x9f\x52\x94\x25\x4c\x53\x8f\x86\x68\xf9\x32\xb1\x3b\x4f\x42\x65\x4b\xcd\x14\x78\xd8\x63\x35\xbc\x85\xb2\x2d\xf0\x4b\x2c\xee\x98\x15\x18\xe3\x1e\x7d\xc0\x7d\xe2\xad\x71\x72\x11\xaa\xf4\xe9\xd4\x2c\x8f\xfc\x6c\xb4\x98\x28\x7e\x25\x6c\x80\xe3\x3d\x56\x68\x99\x86\xe9\xff\xff\xec\xbd\x7d\x77\x9c\x46\xb2\x3f\xfe\x7f\x5e\x05\xcb\xd9\x93\xa3\xd9\x45\x98\x6e\x9e\x75\xbe\xda\xd8\x91\xbd\x89\x37\xf6\x26\x37\x4e\x72\x37\x51\xe6\x97\x8b\x66\xd0\x88\x15\x82\x09\x30\x96\x15\x59\xef\xfd\x77\xfa\x01\xe8\x86\xe6\x71\x18\x6b\xec\x4c\xee\xb9\x6b\x09\x41\x3f\x54\x57\x57\x57\x55\x57\x7d\x0a\xfd\x6b\xcf\x15\xf9\xfa\x6d\x0e\x3e\x85\x1f\x39\xf4\x4f\x2e\xad\xc9\xac\xd5\xa5\x2d\x53\xc7\xb3\x49\x20\xe7\x05\x61\x86\xe3\x5a\xf6\xf0\x47\x2e\x62\x7c\x1f\x38\xfc\x8a\x00\xb2\x69\xb3\x18\xbe\x4a\xbe\x4d\x82\xcc\x97\xae\x71\xa8\x0c\x8b\x9f\x43\x30\x84\xd1\x3a\xc9\xf3\xa1\xd8\x3e\xb9\x48\x2b\x8a\xb4\x63\xb4\xf8\xb2\xdc\xb9\x80\x54\xa4\xbb\x7c\xb5\x3a\xf1\xe1\x01\x5f\xa3\xdc\x50\xce\x75\x87\x53\x22\x00\x6b\x13\xd2\xb9\x60\xfe\xf5\xeb\x76\x61\x83\xfb\x55\x67\xe8\x10\xa4\x67\xb8\x2c\xda\x16\x21\x12\x45\x34\x2a\x85\xb3\x47\xcd\xe2\xb4\xc7\xcc\x7f\x27\x48\x5c\x2c\xa8\x9f\xd7\x63\x55\xe4\x6f\x30\xf8\x94\x22\x4b\x57\x5e\x7a\x9c\x17\xe5\x8d\x0a\x08\xaa\xbe\x17\x71\xf4\xb5\x6f\xfc\x3b\x29\x4e\xa4\xcb\x02\xd5\xa6\x11\x8e\x92\x7c\x4f\x6a\xda\x52\x2d\x01\xef\xbf\x78\x81\xe1\xa0\xca\x9f\xc9\xe4\xa0\x18\x72\x9f\x4e\x86\x4e\x82\xbb\xbb\xa4\xca\x89\xae\xc8\xde\x72\x19\x50\xe4\xc2\x82\x6f\x2a\xc5\x74\x05\x6c\x53\x4d\xec\xa4\x83\x64\x51\x7b\x44\xf3\x35\x14\xa4\xef\xe0\xd2\xbd\x79\xe6\x72\x3b\x09\xa8\xc6\x46\x09\xf8\x43\x2c\x91\x5a\x79\x92\x47\x5b\x55\x24\x3f\x5a\x4a\x9e\x74\xed\xdf\x91\xeb\x98\xfc\xc3\x45\xbc\xe4\x22\xce\x9e\x14\xf4\xde\x1a\x09\x5c\xaf\x31\x3d\x87\xda\x31\x70\x21\xca\xf4\xf8\x72\x11\x05\xa9\xf6\x82\x86\x8a\x06\x9e\x08\x9d\x54\x23\x42\x8a\x68\xf8\x5e\x3b\x57\x73\x41\x7e\x64\x3b\xc5\xab\x55\x43\x7c\x5f\xf3\x96\xec\x54\xed\x01\xb3\x01\x20\x66\xd5\xff\xa6\x34\x58\xc8\x42\x87\x81\xbf\xb8\xf6\x97\xd5\x5d\x6c\x2a\xee\xbc\xfc\x23\xc3\x9c\xb8\x48\x74\x7e\x4c\x0d\x63\x6c\x88\xb9\x16\xb7\x79\x11\xbf\xe3\x85\x1f\x56\xc9\x78\xa1\xd6\xa2\x73\x37\x8b\x86\xb3\x9c\x5d\x9b\x3e\xee\x12\x17\x3a\x1f\x91\xd9\x46\x79\x03\x1f\x13\x04\x97\x61\xbc\x68\xa4\x45\xb1\x7b\x09\xc7\xaa\x84\x47\xab\xb4\xe5\x6d\x93\x9c\x07\x26\x2d\xfd\x63\x7f\x19\x64\x68\x4c\x95\x22\xea\x45\x1d\x18\x16\x57\x2c\x8e\xae\xfd\x3b\x8c\x8a\x29\xc2\x98\xcc\xb1\x30\x07\x9d\x69\xb5\xa2\xe3\x0c\xb5\x7e\x6a\xc0\xfd\x6b\xe3\xbc\x02\x25\xa2\xee\xb3\xce\x49\x56\x2c\xa6\xd6\x1f\xcf\x52\xaf\xb9\xe7\x71\xd2\x6b\xd1\xd6\x20\xd1\x51\xae\x7e\xb7\x75\x63\x77\x42\xff\xf4\xb9\x03\x6c\xda\x39\x79\x71\xf6\x4e\x5b\x17\x90\x93\xc7\x4b\x7c\x2f\x17\x22\xcc\x99\x5a\x4d\x07\x16\xaa\x20\xf3\x42\x14\x15\xf5\xe2\x85\xd5\xe7\xfb\xc9\x95\x49\x54\x28\x30\x80\xfb\x7a\x9e\x72\xa2\x0a\x2c\xe3\xcf\x4c\x71\x2d\x84\x11\x3a\x5f\x17\xe8\x12\xa7\x68\xcf\x79\xdc\x8c\xd1\x47\xe2\xc5\x26\xcb\xe8\xa1\x63\x2a\xe5\x62\xd4\x6b\x78\x96\x44\x0f\xd2\xef\x92\x20\xcd\x82\xc8\x2f\xc0\xd6\xd8\x3f\xbe\x8c\x70\xf1\x63\xee\x6f\x82\x35\xa6\xba\x52\x69\x4c\x15\xb1\xd8\xde\xdb\x2a\xbb\x0f\x89\xc2\xe5\x27\x54\x2b\x28\x55\x31\xa6\x8c\xca\x04\xb8\x01\x56\x08\x22\x98\x0b\x9d\x04\x2e\x5c\xcc\x9d\x76\xc4\x86\x1d\xe1\xc7\xd9\xb7\xa5\x3e\xac\x66\xe3\x6a\x8a\xd4\xe5\x49\x16\xcb\x51\xb8\x72\x0e\xc7\xcb\xc0\x0b\xe3\x55\x71\xfc\xe7\x7e\x11\x9c\xbb\xde\xa7\x68\xc0\xb5\x7f\xf7\xc5\xd8\x9a\x10\x3d\xca\xad\x8c\x86\xb3\x04\xec\xfa\x32\xa0\x3d\x14\x53\x9e\x1e\x3e\x5d\x8b\x46\xb4\xd7\xb2\x21\x72\xea\x54\x4e\x28\x8b\xe1\x8c\xbc\x8e\x40\xcd\x54\x7f\x5e\xf6\xdb\x0f\xe3\xc9\x1a\x8f\x7a\x49\xd7\x74\x24\xe9\x1c\x85\x4e\xe3\x98\xab\xfb\x51\xe5\x10\x45\x7e\x5a\xfa\xd5\x9e\x2e\x0a\x36\xce\x73\x5a\xf3\xe0\x0d\xa8\x18\xb5\xc8\xf5\xb6\x79\xeb\x8a\xa1\x88\x6b\x29\x0c\x4e\x64\xec\x15\xb9\xd4\x29\x40\x60\xf5\x2c\x1e\x8a\xc6\x55\xff\x7b\xb3\x53\xba\xac\x7e\x90\xf0\x35\x0d\xe2\xa8\xf0\x5d\x96\x4c\x2b\x7b\x59\x7c\x51\x46\xed\xb7\x26\x21\x62\xfb\x0f\x0f\xcd\x8f\x32\xec\xb8\xbe\xcc\x8e\xb3\x24\xb8\x41\x3f\x7b\x69\xc6\x7a\xbd\xf1\xff\x60\x0f\x67\xe1\xe0\x64\xfd\x9b\x8c\x37\x33\x47\xd1\xc7\xbe\xcc\xd2\x67\x26\x2f\xbc\x88\x0c\x3e\xf4\xc7\x24\x10\x70\xee\xe6\x89\x3d\xe0\x8a\x1f\x21\xc3\x27\x39\x21\xaf\x06\x11\xf6\x58\xd3\xa0\xd3\x23\xf9\x22\x8b\x3d\x79\xa6\x20\x72\x9d\xfc\x45\x53\xf2\x2a\x14\x27\x85\x97\x7b\x76\x8f\x04\x9f\x9a\x4f\xf6\x48\x55\x55\x2f\x59\xe1\x78\x8a\x74\xf6\xa0\xe4\x0b\x35\xe0\x03\xf2\x9c\xfd\xe0\x41\xa1\xd5\xa6\x4e\xee\x89\xee\x5b\xfe\xd1\x57\xb2\xd9\x3d\x71\x92\x47\xa7\x99\xba\xf2\xb3\xe7\x5e\xe6\x1d\xcd\x3e\xcb\x92\xbb\xfb\x4c\xbd\xf2\xa2\x65\xe8\xbf\x78\xeb\x47\xd9\x91\x3f\x7b\x58\x78\xd9\xe2\xea\x28\xc9\xbf\xc8\x4e\x7d\x95\xdc\x98\x7d\x16\xfa\x99\xe4\x7d\x96\xde\x06\xe8\x85\x0c\xe7\x8b\xcf\xee\x71\xc2\x29\x51\xcf\x29\x79\x52\x3f\x3b\x8a\x72\x65\x58\xc1\x13\xa1\xf4\x53\xe9\xf6\x3f\xca\x54\xfc\xc5\x6c\xf6\xd9\x45\xe2\x7b\xd7\x9f\xe1\x46\x18\xcf\xd8\x89\x47\xd7\x6c\xe5\x67\x47\xa8\x85\x82\x0b\x67\x0a\xd7\xc9\x37\xfe\x9d\xac\xfc\xdf\x5f\xef\xe5\x27\xf2\x5f\x4e\x4f\xbd\x2f\xbc\x13\x59\x7e\xf8\xeb\x3d\x6d\xff\xe1\xff\xb8\x0e\x30\x3f\x33\x83\x24\x0d\x13\x2e\xff\x0b\x1e\x27\xfa\x39\xff\x84\x4a\xc1\x93\xec\x2a\x89\x6f\xa5\xe4\x01\xfd\x37\xfa\x26\x64\x9f\xca\xdb\xbe\xfc\xea\x7f\xee\x5e\xfd\xe8\xfd\xb3\xb5\xbc\x6d\x7e\xb3\x9b\xff\x5b\xdc\x38\x14\x8e\x20\xe6\x1a\x24\xf5\xa3\x25\xb9\x61\x58\x27\x7e\x9a\x9e\xd1\x12\x2d\xf5\x12\x1d\x65\xd1\xdc\xa7\x45\xa5\x16\x9a\x25\x5b\xa9\x12\x8b\x9d\xff\x82\x6b\x95\xcc\xbb\xd8\x84\x5e\x52\xa9\x6b\xcb\xa5\xd1\x5e\xbf\x25\x05\x6c\xe7\x24\x7f\x56\x9f\xd7\x52\xa5\xa0\x02\x8c\x49\xaf\x2b\x86\x57\x8d\xca\x35\x4a\xbe\x06\xe5\xbf\x69\x83\x43\xaa\xd8\xf5\x1a\x60\x12\xdf\x8e\x1a\xdd\x92\xf1\x59\xf1\x3a\x2e\xb1\x1f\xff\x49\x7d\xcd\x73\x45\xbe\xcc\xdd\xd0\x97\x41\xc8\xc2\xb8\xb6\x24\x19\x7b\x72\x35\x3c\x00\x54\xb0\x2c\x84\x3d\x2d\x17\xea\xf5\x5b\xb5\xe8\x8f\xfc\xea\x2f\x83\x8c\x03\x02\x45\x9f\x7d\x53\xa9\xb0\x51\x31\xe1\xeb\x11\x94\xec\x67\xa4\x15\xb3\xda\x0c\xe7\xff\xad\xaa\x66\x3b\x59\xbc\xd1\x65\x04\xe5\x75\xbc\x8e\xdf\xe2\x68\xe2\x68\x53\xb4\xeb\xbf\x5b\x7b\xd1\x12\x6f\x61\xee\x2a\xf1\xda\xbf\xbb\x88\xbd\x64\xf9\x8c\xa2\x1d\x57\x57\xa2\x82\x4f\x5a\x68\x6c\x39\x5d\x30\x58\x3d\xef\xa0\xad\x98\x21\xda\xbc\x28\xea\xc6\x7d\x49\x3e\x1a\xa2\x7b\xf6\xa0\x5a\x96\x04\xab\xd5\xf0\x52\x6e\xaf\xe3\xc4\x6f\x41\xa7\x68\xac\x13\x38\x59\x7a\x45\x69\xc9\x69\xd5\xfb\x8d\xb6\xab\x4c\xf1\x0d\x66\x4f\x1f\xaf\xdc\x19\x2c\xd4\x7e\x47\xe1\xc9\x2d\xe1\x3f\xc2\x50\xa1\xc7\xdb\xf4\x8d\x3d\xfc\x14\xf8\xb7\xb2\x22\xbf\x60\xda\x6c\xb6\xbd\x3a\x52\xf0\xba\xa2\xae\xca\x2a\x92\x9d\xb4\x65\x6f\x55\xc9\x45\xc2\x39\x2d\xa7\x3a\x94\xe2\x32\x76\xc6\xe3\x23\x9a\x34\xe2\xcc\xfb\x9b\x9b\xa2\x0b\x29\xb6\xf3\xce\xeb\x28\x07\x29\x13\x48\x45\xf7\x97\xc7\x5e\xe5\xe4\xe6\x6a\x3b\x36\x54\xa3\xaa\x39\xe5\xe9\xa1\xab\x90\x62\x88\x4a\x29\x26\x95\x73\x4d\xd1\x86\x94\x9e\xd2\x6a\x59\x3c\x10\xdf\x6b\x15\x25\x7f\xc7\xe4\xeb\x08\xef\xa3\xf2\x12\x91\xb5\xd2\x9b\x6d\x16\x6b\x83\x57\xae\x69\xd4\xa4\x36\xe4\x74\x63\xce\xd7\xbd\xab\x62\xa4\xd4\xb7\x6a\xe4\x37\x3f\x49\x7e\x94\x25\x77\xf5\x9a\x91\xad\x7b\x6b\x32\x02\x95\x8c\x32\x2e\x27\x19\x8a\x73\x92\x07\x92\x34\x47\x56\x67\xf1\x1f\x9a\xca\xcc\x8e\x2d\x11\xcd\xed\xbe\xea\xa6\xab\x38\xb7\xa0\x48\x6a\x10\xef\x15\xc6\x93\xad\xf8\x3a\x45\x6e\xc6\xe2\x7c\xef\x50\x00\x00\xac\x96\xc4\xad\x06\x72\x6e\x39\x63\x41\x6d\xdb\x2e\x1e\x6a\xcc\x9e\x1c\xf9\x41\xd3\x02\x4f\xbf\x9c\x44\x66\x5e\xc6\x49\xae\x0b\x58\xc3\xe1\xdb\xd8\xff\x88\x7f\xf9\x91\x48\x27\x70\x86\xb5\x47\x6b\x8e\x7c\xe8\xa2\x3d\xdc\x56\x74\xb6\xcf\xb9\x3f\x3e\x14\xf6\xd3\x55\xb4\x20\x55\xa4\xb6\x20\x61\xd5\xdb\x5a\xf3\x73\x2b\xb6\xe2\xf4\x40\x89\xeb\x2c\x62\x5b\x77\x1c\x0b\xd8\xaf\x0f\x00\x1c\xf6\xb7\x5e\x25\xfe\xe5\x71\x16\xb3\x00\x70\xbf\x6f\x7c\x1c\x06\x81\x7f\xe9\x01\xfb\x46\xbd\xb2\xac\xa3\x15\xa3\xfe\xe7\xbf\x60\x2f\xeb\xc2\x8b\xc6\xf9\x47\xb7\x2a\x3e\x3b\x29\x9a\xdb\xf5\xdb\x3d\xac\x37\xbb\xfe\xe1\xe2\xf5\xd7\xff\xfc\xe7\xed\xa1\xde\xec\x98\x7a\xb3\xd7\x6f\x27\x2b\x34\x6b\x94\xba\xd5\xa1\xd0\x6c\xe1\x73\x11\xc0\xba\x5e\xbf\x9d\xbc\xc4\x2c\x10\x94\xe8\xeb\x5f\x63\x96\xfb\x7a\xa2\x22\xb3\xe3\x27\x3f\xa2\xbc\x6c\xdf\xe9\x37\xd5\x97\xed\x4b\x80\x8f\xa8\xc0\x6c\x59\x90\xe8\x50\x61\xb6\x55\x51\x38\x54\x98\x3d\x54\x98\x3d\x54\x98\x3d\x54\x98\xfd\xd8\x2a\xcc\x0a\x10\xfc\x2a\x39\x15\xfb\x5d\x61\xd6\xe5\x9e\x3d\x56\x81\xd9\xa6\x93\x9f\x4b\x31\x39\x54\x98\x3d\x54\x98\x15\x9e\x0a\xd7\x14\x05\x60\xc2\xfa\xb2\xb8\xc9\x3f\x59\x75\x59\xde\x26\x40\x14\x38\x14\x95\x1d\x24\xeb\x4b\x8b\xa8\x8c\xe7\xc0\xc6\x9a\x58\x66\x0d\x15\xf4\x72\xa5\xa2\x2c\xd9\x01\xa4\x8a\xec\x3d\x32\x3c\x1e\x1e\xf2\x5d\xd0\x2c\xfa\xa1\x40\xf4\xc3\x3a\xe3\x4f\x54\xfa\x75\x0b\x9b\x14\xf3\x1f\x5b\xe1\x95\x2b\x92\xdb\xc2\x92\x87\xe2\xad\x87\xe2\xad\x7f\x92\xe2\xad\xdf\xf8\x77\x1d\xf5\x2e\xeb\x65\xa4\x2a\x3e\x97\xa2\x9d\x8e\x32\x97\x82\xfa\x4c\xc2\x96\x82\x68\xd9\xab\xfa\x28\xbf\xd9\x71\x17\x78\xc7\x77\x0e\x15\x75\xd0\xab\xbe\x68\x53\x0f\x87\x42\x9d\x1f\x4d\xa1\x4e\x56\xb6\xf4\xa8\xdb\xc5\x18\x0f\x5b\x95\xe3\x62\xbb\xed\x2a\x55\x55\xdb\x82\xa0\xf2\x74\x8f\x4a\xc3\x0d\x9d\x97\xa0\xf6\x16\xfb\x78\x7f\x8a\xc0\x0d\x76\x31\xf4\x64\xa8\x81\x0a\xf2\x4e\xf9\xac\x26\x58\x41\xf5\xf1\xae\x8a\x9d\xf6\x11\xd5\xbb\xe0\xc0\xba\xa4\x07\xb5\xe7\x1f\x7a\xce\x3b\xe0\xcd\xfa\x9f\x3f\xfd\x82\x70\x3d\xb3\xb3\x76\x57\x1a\x2e\x2f\x06\x57\x00\x91\xed\xac\x2a\x9c\xe0\xb6\xfe\xb1\x03\x08\xc2\xd8\x5b\xfa\x7b\x13\x39\x00\xff\x08\xde\xc0\xaf\xf5\x86\xb2\x2c\x43\xcb\xc0\x91\xb9\xd1\x2b\x74\x50\xf5\x88\x14\xea\xf7\xdb\x55\x1e\xf4\xf3\xee\x26\xc4\x9c\x70\x95\x65\xeb\x93\x27\x4f\x6e\x6f\x6f\xd5\x5b\x5d\x8d\x93\xd5\x13\xa8\x69\xda\x13\xf4\x66\xe3\x1f\xf1\xb7\x4f\xb8\x96\x4e\xde\xd1\x0a\x32\xf5\x4f\x80\xeb\xba\x4f\x9a\xff\x2c\x68\xf1\x36\x58\x66\x88\x0d\x0d\x63\xfd\x2e\x7f\x76\xe5\x13\x63\x88\x7b\xf8\x36\xf0\x6f\xbf\x8c\xdf\xc9\x8a\xac\x49\x9a\x64\x18\x92\x61\x14\x7f\xf2\x93\x94\xf0\x3e\x50\x81\xd0\x45\x94\x13\x65\xd5\x79\x93\xb8\x08\x92\x45\xe8\x17\x51\x54\xa8\xcd\xfc\x97\x05\xea\x1c\xda\xc5\xaf\x68\x13\x41\xfa\x9b\xa9\xc8\x59\xe2\x45\xe9\x65\x9c\xdc\x1c\xc7\x49\xb0\x0a\xa2\x13\x09\xda\xeb\x77\x12\xa4\x53\x68\x84\xa2\xe9\xdb\x33\x18\xd0\x33\x98\xb4\xe7\xca\x9c\x8d\xee\x49\x1b\xbb\x9a\x75\x7b\xdf\x60\xda\xbe\x21\xd7\x75\x31\x12\xf1\xb4\xd7\xef\x70\xf7\xbb\xe8\x19\x76\xf6\x0c\x27\xeb\xd9\x18\x32\x69\x63\xda\x59\x1b\x43\xa6\x6d\x4c\x3b\x6f\x5d\xe7\xf9\xac\xad\x6b\x5d\x47\x6c\x36\x19\x87\x83\xfe\x3d\x03\x30\x65\xcf\xd5\x39\x6b\xdd\x93\xd6\x76\x35\xeb\xd6\xbe\xc9\xb4\x27\xeb\xbb\xe8\x8c\xf2\x38\x68\xe5\x33\x0d\xf1\x38\x98\xac\x6f\xae\xeb\x62\x05\xc4\x5d\xaf\xdf\x61\xb2\xef\x64\xd6\x1d\x5d\x6b\xd3\xf6\x3d\x84\xe0\x9d\xf4\x96\x1b\x1f\x8e\x3c\xe2\x21\x2f\x7c\x61\xff\x0d\x09\xe1\x76\x1b\xb2\xbd\xe7\xd6\x4d\x41\xba\xde\x62\x53\xc0\x96\x25\x82\xad\xe7\x2c\x5a\x22\xb8\xc5\x31\x0b\xdb\x18\xb3\xa3\x6b\x6d\xd2\xbe\x5d\xae\x6b\xb7\xad\x67\x77\xfd\x0e\xfd\xff\x34\xfd\xea\x26\xbf\x19\xcd\x56\xd1\x6b\xa2\xcd\x68\xee\xa8\xef\xd6\x49\xe3\xae\x27\x9b\xb5\x3b\x60\xd2\x6e\xe7\x9c\x77\x2d\x06\x1c\x6e\xb4\x4e\xeb\x5e\x74\xd6\xef\x24\x67\x2a\x32\x01\xab\x7f\xcf\xc0\x9a\xb2\xe7\xca\x9c\x75\xab\x73\xd2\xba\xb5\xa3\x59\xb7\xf7\x8d\xa7\x3d\x5d\xdf\xfc\xb4\x61\x2b\xc5\xd1\xac\xe1\x64\x14\xe7\x7b\x06\xad\x93\x46\x3d\x83\xc9\xe6\xac\x5b\x03\x26\x8d\x48\x3d\xe1\xac\x2b\x7d\xb7\x4f\x1b\xf7\xdd\x3e\xef\xc9\x45\x81\xd9\x76\x2e\x83\x76\x03\x18\x1b\x45\x5b\x9c\x50\xad\x7d\xeb\xdd\x7d\xeb\x93\xf5\x0d\xe0\x80\x93\x19\xc0\x2d\x4f\x66\xbe\x6f\x7d\x48\xdf\xfa\xb4\x7d\x03\xfe\x84\x04\xad\x07\x15\x40\x47\x24\xd8\xe2\x74\xae\xac\x37\x7f\x48\xc2\xd6\xe3\x19\xa2\x53\x12\x6e\x71\x3e\xb7\xf6\xdd\x3e\x6f\xdc\xf7\x74\xf3\xae\xd0\xbc\x7d\xde\x98\xe6\xed\xf3\x9e\x5c\x24\xb8\x6d\xdb\xb2\x9d\x3d\x61\x37\x7b\xd6\x86\x5b\x79\x50\xfb\xb5\xed\x56\x61\xb8\x0b\x9f\xf5\x97\x3f\xbe\xef\x7e\x71\x7d\x9c\xfa\xa4\x9a\xfd\x3e\x95\x08\x31\xbe\x76\xaf\x7e\xb9\xb5\x1a\x80\xb1\x30\xf6\x4a\xd2\xbf\x36\x08\x06\xca\xc2\xd5\x03\x2e\xe9\x77\x14\xc9\x3b\xff\x3d\x2f\xeb\x51\x02\x60\x31\x68\x78\x4f\x73\x14\xb9\x21\xf7\x06\x25\x5d\x8f\x8b\xc2\x14\x36\x09\xb5\xab\xdd\x21\xe4\x25\x4a\xf2\x69\xd1\x8b\xcc\x94\xf8\xf6\xeb\xf5\x48\x8a\xf1\xb0\x11\x4f\x15\x80\x05\xf9\xc9\x5f\xef\x0b\xd4\xbf\x87\x27\x7f\xbd\x27\x58\x80\xe8\xa7\xe5\xe2\xe1\x09\x1d\x5b\x79\x19\x6a\x96\xd1\x14\x2c\x58\x60\x81\x20\xb8\x5c\xc8\x05\xe0\x82\x72\x2e\x7f\x57\xbc\x93\xc7\xbc\xa3\xa7\x88\xf9\xc9\x07\xec\xd3\xe7\x45\xf9\x65\xb6\xb8\x07\x4e\x9b\xa1\x83\x90\x5f\xc5\x8b\x6b\xe9\x4d\x75\x4c\x5a\x2d\x5a\x09\x92\xe8\x6d\xf6\x5f\xc8\x25\xa9\x30\xc5\x05\x44\xad\xd8\x65\x90\xa2\xf8\xab\xa9\x91\x8f\x48\x36\xd7\xe0\xd0\x2e\xb9\xc0\x7a\xad\xed\xd2\x28\xce\x82\xcb\x80\x5c\x41\xa6\xb2\x72\x4e\x71\x21\xdc\x72\xfd\x08\x53\xcf\xeb\x78\x5a\x34\xc2\xcd\xe5\x72\xdc\xd0\x70\x31\x87\x95\xc3\x95\xc5\x88\x9f\x7d\x02\x11\x7b\x11\x85\x02\xe6\xef\x11\x49\x6c\x31\x49\x14\xf9\x69\x0e\xee\x5f\xd0\x26\x47\xeb\xe9\x49\x22\x51\x7a\x7c\x2f\x22\x0d\x2c\xbb\x53\x3d\x54\xb9\x52\x15\x58\x5a\xe3\xed\x7a\x4c\x52\x9f\xbb\x8e\xe4\x5a\x1e\xa0\x5c\x84\x67\x19\xac\x18\x20\x20\x79\xa3\x62\xdc\x8a\xae\x38\x40\x65\x21\xea\x9e\xe0\xa3\x6a\x42\x21\x3f\x9a\xd1\x58\xef\xb5\xf1\xbc\x7c\x3e\x7a\x34\xe8\xd3\xc6\xcc\xc8\xc6\xf9\xb7\x17\xc3\x10\xf4\xd8\x92\x1c\x23\x86\xf5\xc3\x31\x2a\xcb\x85\x1a\xc5\x4b\x3f\x55\xd3\xab\xf8\x56\x66\x48\x88\xfb\x6f\xab\x88\x54\xeb\x45\xf0\x71\xdb\xa0\x7a\x15\xf2\xe8\x26\xd4\x73\x3f\xc4\x55\x07\x07\xae\x4d\xb5\x42\x0d\x1a\x36\x3a\x7c\x68\x73\xe2\x72\x01\xdd\xa3\xf9\xe1\x87\x57\xa3\xc7\x02\xd9\xb1\xe0\x86\xe6\x8a\x7c\xdc\x05\x7b\xd6\x34\x92\x2f\xfd\x2b\xef\x6d\x10\xf7\xa9\xb1\x24\x66\xdb\xb2\x81\xda\x46\xca\x45\x40\x99\x41\xa5\xe1\x58\x69\xac\x5c\x4d\x29\x05\xbe\xf6\xbd\x30\xbb\x92\xce\x68\xcb\xc3\xb7\x43\x55\x5c\xf1\x91\xde\x16\x4e\xda\x89\x56\x19\x4e\x94\xd5\xc6\xe1\x73\x35\xed\x85\x32\x62\x57\x56\xa4\x12\x20\xae\x2b\x48\xb7\x5f\x25\x90\xe3\xf1\xc5\x2b\x5a\x31\xca\x3b\x37\xa2\xc0\x44\xaa\xd3\x17\x57\x81\xa2\xf0\xe3\x52\xae\xdc\xcd\x6b\xf0\x88\xda\xf0\xe4\x7a\xf6\xf8\xdf\x0e\xfd\x3e\x20\x55\x0b\xbc\x1c\x00\x8d\xd5\x3c\xf7\x11\x0a\xbf\x1b\x2c\x8c\x28\x3b\x40\x80\x0b\xc6\xc1\x83\xd6\xa1\x86\x0a\xb8\xfb\xaa\x0e\x3c\x19\x02\xd8\xcb\x92\xd8\x94\xc4\xb5\x19\x8e\x8e\x7a\x14\xa3\xcc\xf7\x5a\x91\xed\x10\xf6\xbb\xf1\xf7\xca\x63\xd1\x18\x98\xdb\x3c\xdd\x9a\x0b\x92\x9b\x46\x2f\x63\x8e\x94\x58\x2c\xe7\x16\x0b\xd9\x3e\xc3\xb2\x10\x41\xf7\x0c\xf5\x29\x67\x28\xc2\x59\xdb\x82\x39\xa1\xa2\x2b\xf5\x58\xd9\x1e\x8d\xee\x2a\x77\xb7\xd2\x09\x66\xbf\xd6\x60\xd9\xcb\x28\xc7\xca\xfa\x6f\x1c\xa0\x7f\x56\x45\x31\x03\x8a\x8c\xb5\x49\x02\xf4\xca\x9a\xe2\xc4\x33\x01\xb5\xac\x3d\xc6\x81\x71\x2d\x37\x09\x91\xdc\x97\x49\x7c\x93\x97\x49\x20\x71\xb6\xe3\x90\xb4\x1a\xfc\x57\x7b\xe5\x56\xdb\x27\xbc\x79\xe3\x8f\x9b\x6f\x6f\xfe\xf3\xe3\xeb\x5e\x78\xf3\x43\x9d\x6b\x35\x1f\x5a\x01\x22\xdf\xec\x40\x73\x14\x19\xd1\xa7\x0d\x43\x9e\xf3\xa5\x31\x68\xf2\x2e\xb5\xd4\x79\x30\x79\xed\x11\xc1\xe4\x05\x46\x72\x9b\x8d\xdc\xa9\x5e\xe6\xa7\x0d\x97\xde\x07\x94\x5a\xc3\x63\x71\x10\x85\xed\xd7\x3c\xe5\x45\x7f\xb9\x41\x2b\x70\x64\x2c\xe2\xf5\xdd\x31\x2d\xb4\x53\xcb\xc3\xc8\xa9\xc9\xb5\xa3\xd0\x7f\x6a\x4e\x94\x4e\xb5\x95\x15\x88\x53\x40\xba\x2f\xfd\xcc\x0b\xc2\x11\x89\x6a\xbd\x16\xb9\x7b\x75\x1b\x30\x97\xc4\x96\x11\x73\x92\xbc\x7c\xde\xef\x02\xa6\xd1\x57\x30\xfd\xda\xf5\xe7\x99\x76\xac\xfe\xae\x53\xb0\x42\x3a\x2c\x2d\xf0\x0a\x2f\x0b\xaf\x80\x90\x9c\x20\x27\x27\xd1\x2e\x20\x5d\xae\xa8\x56\x97\x39\x9f\x0c\x76\x0b\x0c\x26\x33\x50\xf8\x7c\x5b\x42\x8a\x5e\x6e\x86\x26\xda\x54\x26\x9b\x65\x2d\x4c\x33\x78\x96\x3f\xfc\xf0\xaa\x69\x8e\x62\x43\x8f\xad\xb7\x98\x7b\x2c\x46\xc2\x5c\xb7\xf1\xea\x71\x0f\xb6\x68\xb6\x9a\x9b\xdd\x1c\xc5\xa8\x47\x70\x5d\xf7\xda\x5c\xb0\x1e\x98\x69\x16\x28\xf7\xc9\x8c\xe2\x44\x32\xe1\x46\xb7\x4e\xeb\xa2\x0b\x61\x01\xa8\xa7\x2f\xf7\xce\x94\x20\xb4\x6f\x48\x15\xa6\x33\xde\x21\xb4\x8d\x50\x24\x7a\x40\xe9\x06\x9a\x86\x9c\x64\x80\x23\xa5\x67\xbb\x6b\xc9\xde\xda\xb5\x44\x5d\x6c\x73\x31\xfc\xa4\x56\x64\x82\x6f\x97\x65\xde\xa2\x5a\x38\x9d\xdb\xa2\x37\xb6\x04\xd3\x61\x3f\xcf\xd5\x98\xa3\xc1\x9e\x5a\x21\x18\x5f\xe3\x65\x72\xef\x54\x3a\xca\x31\xb5\x33\xa7\xd4\x20\xe7\x84\x26\xb0\xdd\x73\x90\x18\x4b\x80\x1b\x03\x76\x02\x44\x5f\xba\xa0\xfa\x1b\xe1\x4d\x2f\x89\x8a\x3a\xee\xcc\xdd\xd4\xed\x6a\x2a\x35\x2d\x53\x8c\xd0\xd0\xe0\xc7\x9d\x64\x05\xa7\xf2\xbe\xd4\x7c\x4b\x83\xd7\x69\xa0\x47\xa9\x6d\x52\xc6\x54\x93\xaa\xba\x93\x46\x32\x9c\xb8\x9a\xe6\x08\x74\xf5\x29\x80\xd5\xc5\x39\xcd\x59\x1c\x87\x59\xb0\xe6\x1c\x44\x55\x37\x0f\x4e\xba\xde\x44\x01\x03\xbd\x9e\xbb\x97\xb6\x74\xf9\xec\x0f\x8c\x7a\x73\x40\xc2\xbe\xf8\x7e\x7e\xd4\x4d\xe7\x9b\xf5\xab\x3f\xc4\xbe\x1f\x34\xe4\x85\x4f\x9d\x77\x0b\xbe\x18\x60\x1e\x2d\x95\xc7\x89\x74\x6a\x2c\xb0\xbc\x78\x28\x42\x4a\x06\x63\x48\x81\xca\xa6\x1c\xec\x3a\x71\xca\xc9\xe4\x22\x81\x5d\x18\xb6\x98\xb0\xad\xe8\xd5\x50\x98\x11\x41\x2a\x72\x81\x46\x01\x95\x73\xf9\xeb\xd2\x77\x34\x4e\x8e\x14\x3a\x5a\x96\xc4\x11\x17\x46\xf9\x02\x8d\xed\x2f\x0d\x7a\x6b\xef\x32\x69\xf9\x40\xbf\xc4\x45\x8a\xb6\x1e\x66\xf3\x41\xf5\xc3\x95\x9f\xf8\xd2\xad\x97\x4a\x5e\x24\x61\xba\x96\x8a\x4e\x10\xad\xa4\xec\xca\xe7\xee\xe1\x54\xfe\xb6\x59\xa0\xfe\x1a\x25\x80\x37\x83\x0c\x44\x3c\x39\xe3\x0c\x0f\x7e\x2e\x17\xa5\xf5\x86\x29\x0c\x94\x5a\xaf\x64\x9e\x27\xec\x65\x0f\x3f\x84\xde\x1e\xfd\x46\x0b\x64\x84\xa3\x5f\x00\x88\x31\xc0\x19\xb8\xdd\x8e\x49\x37\xb4\x5a\xe1\xb8\x3d\x03\x76\xbb\x67\xde\x90\xd1\x4d\xb2\x6b\xc0\x87\xd8\x35\x3f\xc7\x9b\x84\xdb\x16\xd2\x95\x97\x4a\x17\xbe\x1f\x31\x66\xc2\x52\xed\xd2\xf9\x26\xb9\x2f\x1a\x84\xd1\xd2\x52\x1f\x1b\xa3\x41\x62\x1d\xc1\xff\x7d\xdb\xb3\x5f\x70\xc8\x3e\xbe\x12\xb0\x8a\xf7\xe5\xb8\xff\xe9\xf7\xd7\xf1\x7a\xb5\x12\x47\x50\xd7\x03\x99\x79\x18\x93\x1c\x2a\xa4\xcc\x0c\x29\x80\x42\xca\x47\xd3\x61\x9d\xd0\x72\xe4\x8b\x4d\x92\xf8\x51\x76\x16\x87\x02\xef\x59\xbe\x61\xb2\x20\xe3\x03\x18\xcf\x30\xed\x6b\xbc\x5f\x6c\x30\x8f\xd6\xf5\x35\x14\x19\x71\xdf\x6b\xa8\xa9\x9a\xab\xb9\x3a\x00\x8a\xa6\x9a\x3a\x70\xa0\xe9\xe8\x96\x74\x06\x6c\xd5\xb4\x75\xcb\xd6\x1c\xe5\x58\x53\x81\xae\xbb\xd0\xd2\x34\x28\x01\x43\x75\x75\xe0\x6a\x00\xe2\xe7\xb6\x09\x2d\xa8\xb9\x50\x02\x50\xd5\x5d\x53\x33\x4d\x57\xd1\x54\x03\x00\x43\xb3\x00\x90\xce\x5c\xd5\x31\x1d\x60\xb8\xc0\x52\x34\xd5\x75\x1d\xcd\x36\x4d\xdd\x91\x6c\xd5\xd4\xa0\xed\xd8\x36\x54\xa0\x0a\x5c\x53\x03\xa6\x2b\x99\xaa\xa9\xe3\x7e\x5c\x45\x57\x1d\xd7\xd1\x0d\x5d\x03\xd2\x99\xae\x9a\x96\xee\xda\x2e\x34\x14\x53\xb5\x34\x60\xd9\x1a\x00\x12\x54\x35\x43\xd3\x74\x4b\x87\x8a\xad\xda\xa6\xeb\x02\x4d\x87\x12\x50\x35\x57\x77\x20\x80\xa6\x02\x34\x15\x38\xa6\x6d\xea\xba\x74\xa6\xa9\xc0\xb0\x2d\x60\x00\x0b\x28\x00\xaa\x16\x00\xa6\x6e\xb8\x12\x9a\x80\x0b\xa1\xa5\x9b\x16\x54\x80\xa9\x42\x1d\x58\x3a\x94\x34\x15\x68\xba\xe5\x02\xc3\xb5\x14\x60\xab\x0e\x6e\xc6\x41\xad\xe8\xae\x6b\x19\x36\xb0\x6c\x05\x6a\xaa\xa1\x99\x26\x70\x4d\x09\xa8\x3a\x84\x86\xab\x1b\x50\x81\x50\x75\x1c\xd4\xb8\x2b\x41\xd5\x76\x21\x80\x16\x34\x14\x68\xaa\x9a\xae\x99\xae\x05\xa5\x33\x43\x85\x16\xb0\x4d\x57\x33\x15\x68\xab\xc0\xd1\x34\xdd\x31\x25\x4b\x85\xba\x6e\x9b\x00\x28\xd0\x51\x5d\xdd\xd1\x75\x68\x49\x8e\x6a\xea\x96\xeb\x38\x40\xd1\x35\x15\x98\xd0\x31\x35\x43\x3a\x03\x9a\xea\x18\x1a\x84\x26\x50\x74\xa0\xea\x96\xad\x5b\x0e\x94\x80\x8e\x86\xa3\x59\x96\xa5\xe8\x50\xd5\x34\x60\x98\x96\x2d\x01\x4b\xd5\x34\xc7\x71\x0d\x45\x87\xd2\x19\x5a\x69\x08\x0d\xdb\xa4\xef\x18\x9a\x6b\xd9\x12\x44\xa4\xd6\x00\xc4\xbd\x18\xae\xe1\x40\x44\x5c\x0b\x75\xa2\xb9\xba\x8b\x46\x69\xdb\x3a\x74\x5d\x5d\x7a\x05\x75\x55\x33\x2d\xdb\x30\x14\xf4\x15\x70\x2c\xd3\x96\xce\x20\x50\x4d\xc3\xb2\x75\x60\xa1\x89\x02\x47\x03\xa6\x61\x4b\xc0\x55\x2d\xdb\xd0\x35\x43\x81\x96\xaa\xd9\x86\x69\x3a\x86\x04\x6c\xd5\xb2\x2c\xfc\xa6\xa5\xea\xae\x6e\x41\xc7\x96\xce\x80\xa9\x5a\xa6\xa3\x43\x07\x3d\xb5\x01\xb4\x2d\xcd\x40\x13\xb2\x34\xcd\x31\x4d\xfc\xae\x61\x40\xdb\x30\x1c\x09\x00\xd5\x36\x10\xb5\x21\xea\xcb\x02\x96\x01\x1d\x88\x99\xcc\x31\x4d\x1d\xe8\xb6\x02\x0d\xd5\x76\x35\xcd\xd4\xa0\xe4\xa8\xba\x66\x43\xc3\xb6\x4c\x34\x5c\xd4\x84\x6b\xe9\x92\xad\x02\xd7\xb5\x80\x63\x1b\x0a\x04\xaa\xad\xdb\xb6\xab\x03\xe9\xcc\x52\x35\x17\xb8\x8e\xeb\x40\xb4\xb4\x9a\x0e\x1d\x13\xe8\x88\x23\x35\x68\x58\xb6\xeb\x28\xc0\x51\x35\x43\x87\x0e\x70\xb8\xa7\x96\xaa\x01\x4d\x43\x23\x3e\x63\x1f\xeb\xaa\x6b\x5b\x68\x1c\x12\xd3\x30\x00\xaa\xeb\xd8\xba\x0e\xd8\x41\x00\x4d\x85\x0e\xd4\xa1\xed\x48\x67\xcc\x88\x1d\xd5\x44\x64\x37\x2c\x28\x31\xb3\xb3\x55\xa8\x6b\x9a\xad\x59\x26\x4b\x0a\x4b\x35\x34\xdd\x36\x0d\x0d\x6d\xdb\x92\x6e\x26\x6a\xc2\xd0\x34\x4b\x97\x4a\x12\x9b\xa8\x0b\x03\x02\x6e\x35\x4c\xd5\x82\x96\xe1\x3a\xd0\x95\xce\xca\x85\x33\x55\xd7\x30\x4d\xdb\xb0\x0d\x89\x59\x63\xc2\x19\xd0\xb6\xa4\x92\x1b\x1c\x15\x6a\xc0\x84\x26\x34\xa4\x57\x0c\xeb\x18\x68\x43\x21\x19\xe2\x4a\x67\xd0\x50\x5d\xb4\x49\x4c\x5d\x81\xaa\x61\xd9\x16\x74\x4c\x43\x82\x50\xb5\x34\x07\xb8\xc0\x50\x80\x0a\x5c\xdb\xb4\x1d\x57\x6a\x90\x48\xbf\x48\xaf\xa1\xa3\x5a\xd0\xb5\x2d\x80\x96\x0e\xcd\x0c\x00\xc4\xd7\x8e\xaa\xdb\xa6\xad\x39\xe4\xb1\x09\x80\xee\x1a\x12\x74\x54\x60\x40\xe8\x20\x16\x06\x2a\xda\xc0\xae\x01\x25\x68\xab\xae\xe9\x02\x03\xea\x78\xf5\x4d\x57\xd3\xd1\xce\xc6\x4c\x6e\xba\xba\x8b\x99\xc2\x35\x20\xd4\x1d\x1b\xbd\x6c\x99\x00\x38\x86\x89\x36\x36\xb0\x4d\x4b\x03\x26\x7e\xaa\x69\x96\x69\x19\xe8\xa9\x01\x5d\x1b\xd0\x26\x4c\x53\x03\xd0\xc1\x52\xc0\x72\x74\xdb\x22\x4d\x98\xb6\x85\xa4\x09\x7a\xea\x1a\x36\x30\x75\xd2\xb0\x6d\x02\x17\xf1\x25\x70\x90\x44\xb1\xe9\x18\x0c\xdd\xd0\x01\x66\x57\x68\x3a\x26\x20\x03\x36\x20\x70\x6d\x1d\x3d\xb5\x74\xcd\x00\xae\x8d\x27\x67\xda\x96\x0e\x6d\xf4\x14\x7d\x06\x5d\x87\x52\x42\xd7\x34\x0b\x3f\x76\x81\x03\x75\xd7\x95\x30\xd5\x2c\x68\x01\xbc\x6d\x5d\xd7\xd4\x0c\x13\xa0\xa7\x8e\x63\x42\x87\x34\x9c\x3f\x3d\x83\xae\x8a\x98\x11\x42\xc8\xbd\xec\xaa\xa6\x65\x3a\x26\x7e\xe8\x98\xb6\xe6\x6a\x06\x7a\xe8\x00\x60\xb8\xba\x83\x87\x06\x80\x61\x38\x96\x74\xa6\x6b\xaa\x66\xda\x40\x37\xf1\xb6\xd3\x2d\xd3\xd1\x2c\x47\x42\x22\xcc\x35\x81\x09\xf0\xd0\x34\x1d\x5a\xc0\xb4\xb8\xa7\x88\x68\x26\x34\x20\xc4\x4d\x30\x8f\x0d\xf4\xae\xe1\xe2\x97\x81\x03\x1d\xba\x1a\xd0\xb5\xd0\x6a\xb8\xaa\x6b\x1b\xba\x6d\xe0\x65\x76\x4d\x74\x1e\x91\x69\x38\xba\x66\x58\x86\x83\xd7\xd9\x80\xc0\x84\x78\x1a\x16\x34\x1d\xd7\x32\x08\x4f\x18\x50\xb7\x70\x13\x3a\x12\x65\x0e\xe6\x09\xc3\x36\x81\x61\xb8\xb8\x09\x60\xd8\xc0\x75\x70\x13\x3a\x3e\x62\x1c\x42\x36\xdd\xb1\x4d\xfc\xb2\x6e\x6a\x1a\x04\xb6\x24\x64\xcc\x5f\xa4\xd7\x68\xc8\xba\x05\x4c\x80\x04\x85\x0b\x81\xa3\x93\x86\x1d\x07\x6a\xae\x43\x9e\xda\xd0\x80\x8e\x85\xc7\x66\x38\x16\x92\x08\xb6\xaa\xb9\x36\x80\x10\x3d\x33\x2c\xd3\xd4\x21\x7e\x08\x1d\x4d\x87\x26\x59\x22\x24\x31\x5c\xfc\xd4\xb0\x74\x13\xda\x2e\x7a\x17\x98\xb6\x69\x1b\xf8\xcc\xb2\x5c\xcb\x71\x35\x1b\x3f\xd5\x6c\x44\x08\xf4\xd4\x35\x01\x12\x49\xa8\x05\xcd\xb4\x4c\xe0\xe8\x48\xac\x41\xcd\xd4\x4c\xd2\x82\xe6\x40\x03\xda\xe8\xa1\x61\x39\x86\x01\x49\xb3\x0e\x30\x1d\x0d\xa0\xa7\xb6\x66\xdb\x96\xe6\xd2\x31\x68\xb6\x8e\xeb\x3b\x21\xbe\xd6\x48\x03\x86\xe1\x98\x88\xa5\x00\x1a\x0d\xb0\x0c\x1b\x93\xd7\xb2\xd0\x89\x65\xa3\xa7\xd0\x35\x2d\x40\x89\x60\xbb\xba\x6b\xe1\xa7\x86\xee\x9a\xd0\x05\x78\x89\x75\x68\x99\xc0\x44\x4f\x4d\x60\xe9\xba\xa1\xa3\xa7\xba\x0b\x2c\x1b\xd1\xa6\x7c\x8a\xb8\xc4\xd6\x1d\xcb\x81\xf4\x65\xc3\x45\x62\x42\x07\xaa\x66\x03\xa4\x66\xa0\xa7\xba\x6d\xa1\x75\x43\x4f\x75\x60\x19\x40\x23\x43\xd3\x01\xb4\x70\x13\x40\x35\x2d\x60\x1b\x26\x9e\x9d\xe3\x98\x8e\xe5\xe0\x97\x6d\x4d\x03\x2e\xc0\x4f\x4d\x53\x47\x3c\x41\x9e\x02\xd3\x00\x0e\x21\x9a\x65\xea\xc0\xc0\x4d\x14\x8f\xd1\x5e\xb5\x0d\xc3\xc0\x2f\x5b\xd0\xb0\x75\xcb\x24\xab\x61\x00\xc7\xd5\xd1\x53\xc3\xd1\x6c\xf2\xd0\xb0\x1d\x07\x98\x64\x10\xba\x6e\x39\xa6\xe1\xe2\x55\xb6\x74\xc3\x00\xf8\x5d\xa0\x43\xe8\x58\x94\x21\x4c\x13\x9a\x36\x22\x85\xe3\x42\xd7\x72\x0c\xcc\x3b\xae\xa5\xdb\x90\xec\x39\xcb\xd4\x4d\xc7\x71\xd1\x63\xc7\xb5\xa1\x03\x08\xd9\x34\x68\x99\x3a\x7e\x68\x03\x1d\x68\x64\x23\x56\x59\xf2\x17\xe9\x35\xea\x59\x37\xd1\x79\x82\x14\x24\xdb\x75\xa0\x6e\x23\x6d\xc3\x42\x1a\x97\x6b\x6b\x16\x7a\x6c\xea\xa6\x6b\xda\x16\x3a\x4e\x5c\xcd\xd4\xd0\xa6\x03\x58\x9a\xeb\xc0\x76\x25\xac\x40\x41\x5b\xb7\x21\xd6\xb1\x34\xa4\x44\xa1\x26\x0c\xd5\xb4\x34\xdd\x75\x4d\xdc\x32\x22\xa6\xe1\xa2\xf3\xdd\x45\x87\x37\x52\xbc\x74\x55\xb3\x0c\xc7\x46\xe7\x94\xae\x1a\xa6\x03\x00\x7e\x68\x1a\xae\xe9\xe2\x33\x0d\xaa\xae\xad\xeb\xba\xa5\x2b\xc0\x50\x35\xa4\x16\xa2\x16\xa0\x6a\x19\x3a\xb4\xc9\x53\xcb\x04\xae\x8e\x94\x31\xa8\x9a\x9a\x6b\xb8\xe8\xa9\xa9\xea\x10\xed\x7c\x07\x37\x81\xce\x08\xdb\x76\xd0\x63\xd7\x45\xbb\x0a\xbf\x6c\xa0\xe5\xb2\x4d\x44\x0c\xcb\xd5\x0d\x83\x68\xb2\xb6\x66\xd9\xa6\x83\x57\x54\x87\x96\x83\xf4\x4d\x3c\x0a\xcb\x05\x78\x95\xd1\x41\x00\xf1\x24\x0c\xa0\xeb\x78\xe5\x1c\xd5\xd4\x80\x61\xeb\x58\x75\x71\x1d\x5d\x37\x6c\xc2\x53\x10\x9d\xe9\x84\x0c\xa6\x0e\x6d\x9b\x6c\x03\x4b\x07\x06\xc0\x24\x83\xba\xa1\xa1\xd5\x40\x7b\xdd\x32\xa0\x06\x08\x79\xd1\x71\xe5\xb0\x4f\xd1\x5a\x38\xd0\x01\xa6\xc6\xbf\x6c\xab\xb6\xe6\xda\x10\x12\xce\xd6\x00\x9a\xb2\x04\x1c\x55\x37\x5d\xdb\xd6\x2d\xbc\x99\x4d\x00\x4d\x24\x58\x81\xab\x6a\x9a\x6b\x5b\x3a\xe6\x40\x47\x43\xfa\xa9\x2e\xe1\x7d\x62\xb8\x06\x2e\xc5\xa2\xba\xc0\xb5\x5c\xa4\xe8\x73\x4f\x35\x4d\x33\x20\xe2\x77\xf6\xb1\xa9\xea\xc0\x70\x0d\x13\xbf\x0c\x6c\x60\x59\x90\x2c\x86\x61\x38\xc0\xb6\xd1\x28\x6c\x57\xb3\x2d\xc4\x11\x06\xd2\x02\x1d\x68\xa2\xf5\x74\x54\x43\x73\x5d\x5d\x37\xf0\x32\x6b\x86\xa3\xeb\x16\x9a\x88\x63\x39\x16\x80\x0e\xe1\x08\xcd\xb4\x1d\x5b\x12\xf3\x25\xd2\x05\x10\xfb\xeb\xa6\x03\x6c\xcc\xdd\x86\x89\x04\xa1\x74\x86\x54\x48\xd3\x80\x16\x9a\xb8\xa5\xda\x86\xa5\x03\x74\x54\x59\xaa\xe1\x6a\x8e\xed\x90\xa7\x50\x33\x34\x24\xb5\x91\xda\x8d\xe4\x07\x6e\xc2\xb6\x35\x17\xba\x48\x34\x99\xaa\xeb\x40\x1b\x00\xbc\xc7\x1c\x08\x0c\xd3\x91\xa0\xa9\xda\x48\xc7\x77\xf0\xbb\xae\x61\x41\x80\xa4\xa3\xa9\x9a\x96\x05\x0c\xd4\x82\xad\x02\x88\xc8\xe2\xe0\x16\x74\x47\xd7\x34\x03\x73\x8b\x0e\x20\x52\xa3\xd0\xcb\xd0\x74\x90\x12\x84\x9e\x9a\x86\xe9\x3a\xe8\x00\x33\x55\x88\x44\x82\x6b\x93\x25\xd1\x34\xdd\x30\x70\x13\x00\x9d\xa2\x00\x2f\xa0\x66\x1a\xc0\x40\xea\x04\x52\xb0\x75\xa0\x01\xcc\x5b\x3a\xb0\x0d\x1b\xea\xb8\x09\x07\x42\xd3\x70\x88\xbc\xb2\x1c\x13\xe4\xa3\x00\xba\x81\xc4\x0d\x5a\x08\x0b\x58\x2e\x19\xb2\xe1\xe2\x7d\x87\x98\x41\xb3\x75\x07\xb7\x60\x5b\x06\x26\x1a\x3a\xf5\xd0\xb9\x69\x50\x42\x68\x9a\x0d\xb0\xdc\x85\x48\x0b\x75\x4c\x42\x35\x1d\xa2\xa3\x15\xf1\x82\x65\x1a\xd0\x84\x84\xc2\x50\x37\x21\x60\x9f\xa2\xe5\x70\x74\xd7\x86\xa6\xc5\xbd\x6c\xe3\xf3\x1b\x10\xe1\x0f\xa1\x6d\x68\x2e\x7a\x68\x00\xdc\x05\x3e\x52\x1c\x80\xf8\x06\xab\x45\x96\x65\x00\xdd\xc1\x7b\xcc\xd6\x2d\x44\x4d\xf4\xb2\xa3\x41\x60\x12\xc1\x6d\x68\xd0\x75\x4d\xbb\xf2\x54\x33\x4d\xd3\xd2\x88\x6a\x56\x3c\xb6\x11\x21\xb0\xf1\x87\xf4\x2d\x88\x7e\x72\xc8\x72\xe8\xd0\xd1\xf0\xd0\x90\xbd\xaa\x93\xe5\xd0\xa1\xed\x6a\x16\x19\x85\xa1\xdb\x26\x24\x16\x21\x00\xd0\xb0\x35\x07\xbd\x0c\x75\xe8\xb8\x2e\x65\x0a\xc3\x02\x96\x25\x89\x39\xb3\xc2\xb2\x48\x12\xba\x96\x65\x55\x58\x16\xc9\x34\xcd\x04\x3a\xcf\xb2\xc8\x62\x35\x2c\xcd\xe0\x59\x16\xaa\x96\x65\x02\x1d\x56\x58\x16\xaa\x36\x40\x4c\xc9\xb1\x2c\x44\x4a\xb9\x81\x8c\x6c\x96\x65\x75\x55\x83\xba\x05\x9c\x0a\xcb\xea\xe8\x74\xc3\x56\x18\xcb\xb2\xc8\x84\xd2\x90\x32\xcc\xb1\xac\x8e\x0e\x37\x72\x56\xb0\x2c\x8b\xa4\xbb\xa3\x9b\x80\x67\x59\x43\x85\x00\x58\xb6\xc9\xb3\xac\x81\xe4\x93\x66\x1a\x15\x96\x35\x54\xcb\xd5\x74\x1b\x72\x2c\x6b\xa8\x8e\x8b\x84\x0f\xc7\xb2\xc8\xbc\x76\x1c\x13\x54\x58\x16\x75\x0c\x6d\xac\x24\x32\x2c\x8b\x66\xe4\x5a\xc8\x6c\x64\x59\xb6\x7c\xca\xb1\x2c\xf3\x32\xc3\xb2\xa6\x0a\x20\xb0\x88\x72\x5e\xb0\xac\xa1\x3a\xb6\xe9\xda\x5a\x85\x65\x0d\xa4\xb3\x23\x6b\x92\x63\x4e\x43\x45\x66\x83\x6e\xeb\xdc\x53\x44\x34\x24\x9c\x2b\x2c\x8b\x48\xac\xd9\xba\xcd\xb3\xac\x8e\x18\xd2\x70\x74\x9e\x65\x75\x15\x42\xa8\x19\xb6\xc3\xb3\xac\xae\x6a\x9a\x65\xd9\x3a\xcf\xb2\x50\x75\x74\xc7\x01\x2e\xcf\xb2\x25\x67\xf2\x0a\x2c\x54\x4d\xa0\x23\x43\x94\xd7\x60\xa1\x6a\x5a\xe8\x10\x75\x59\x0d\x16\xe9\xf2\x2e\x70\x5d\x9b\x53\x61\xa1\xea\xd8\x50\x47\x8b\xc7\xe9\xb0\x3a\xde\xa9\x86\xa1\x73\x3a\xac\x8e\x04\x4e\x55\x85\x45\x4a\x81\xae\x41\xda\x42\xa1\xc3\xea\xaa\xed\xda\xc8\xac\x65\x75\x58\x03\x9d\x21\x86\xe9\x42\x4e\x87\x45\x94\x77\x6d\xdb\xd6\x79\x1d\xd6\x50\x4d\xdd\x05\xa6\x65\x73\x4a\xac\x81\x4c\x6c\x0b\x2d\x08\xab\xc4\x1a\xaa\x83\x94\x95\x9c\x10\xb9\x16\x8b\xb8\x10\x98\x86\x69\x70\x5a\xac\xa9\x02\xcd\xd1\x4d\xcd\xe6\xb4\xd8\xf2\x29\xa7\xc5\x9a\x78\xa6\x16\x30\x38\x2d\xd6\x50\x5d\x74\x2e\x9a\x06\xa7\xc5\x1a\xaa\x8d\x16\x12\xe9\x47\xac\x16\x6b\xa8\x86\x6d\x3b\x8e\x61\x70\x5a\xac\xa1\x02\xc3\x34\x5c\x60\x70\x5a\x2c\x22\x9b\x63\x1a\xb6\xcd\x6b\xb1\x3a\xa2\x05\x12\x37\x9c\x16\x8b\xd6\xc3\x82\x96\xcd\x2a\xb1\xba\xaa\xd9\x9a\xa3\x03\x8b\x57\x62\xa1\xea\x98\xa6\x61\xda\x36\xa7\xc4\x22\x9e\x40\x72\x0e\x70\x4a\x2c\x54\x4d\xc7\x31\xb0\x67\x8b\x55\x62\xa1\x6a\xa0\x57\x6c\x9d\xd3\x62\x91\xae\xa9\x23\xeb\x54\x12\xf2\x25\xf1\x10\xd8\x9a\x69\x42\x68\x2a\x8e\x0a\x34\xd3\x36\x1c\xc7\xc5\x86\xb1\x61\x02\xc3\x72\x2d\xf4\xd8\xb4\xa0\x6d\x6b\x26\xb2\xda\x20\x70\x34\xc3\xc4\x1e\x0c\x07\x68\x3a\x70\xb0\xb9\xac\xe9\x86\x63\xe0\x26\x0c\xcb\x80\xba\xe1\x98\x64\x47\x9a\xc0\xd6\x34\x57\x71\x54\xcb\x40\x36\x27\x11\x0b\x36\xb4\x5c\xc3\x02\x0a\xd2\xf5\x34\x47\xd3\x4c\x6a\xdf\x5b\x06\xb0\x5d\x05\x19\x1b\x86\x63\xea\x06\xd9\x91\xc8\xfc\x74\x5c\x47\x41\x26\xa7\xe3\x5a\xb6\xed\x50\x2f\x03\x5a\x09\xc5\x55\x2d\x13\x09\x24\xa4\x2c\xd8\xaa\x6d\x6a\xae\x09\x2c\xc5\x55\x1d\xc4\x37\x9a\x03\xe9\x28\x34\xa0\xa1\x1d\x82\x48\xa0\xb9\x0e\x1d\x32\xb0\x5d\xac\xb1\x6a\xaa\xae\x9b\x44\xdf\x70\x90\xd4\xd3\x75\x88\x9f\x1a\xb6\x6b\x58\xb6\x49\x68\x81\xb4\x6d\x07\xa2\xc7\x16\xd4\x0d\x1d\xb7\x60\x6b\x50\x43\xea\x9b\x86\xd8\x06\x1a\x68\x33\x39\xaa\x6b\x01\xcd\x40\x0b\x52\x3e\x45\x4c\xaf\x6b\x8e\x01\x2b\x2f\xa3\xdd\x0f\x2c\xa0\x63\xcf\xab\x69\x41\x88\x6c\x10\x2c\x29\x6c\x68\x9a\xf8\x5d\x1d\x58\xa6\x63\x11\xd3\x0d\x20\x29\x64\x03\xf4\x58\xb3\x35\xd7\x30\x4c\xb4\xa8\xd0\xd6\x1c\x13\x20\xb2\xd9\xba\xed\x20\xfb\x9b\x7f\xaa\xbb\x9a\x61\x00\x6a\xf2\x94\x8f\x81\x0e\x74\x53\x77\xa9\x43\xc1\xd0\x0c\x0b\x2d\xb4\x63\x3b\x9a\xeb\x02\xec\x39\xd0\x4c\x0d\xe8\xd8\xaf\x66\x59\xd0\x26\xba\x89\xab\xa2\xc3\x1d\x5a\x68\xf9\x0d\xc3\x86\x8e\x4b\x46\x6c\x6b\xc0\x32\x6d\xb4\xce\xd0\x76\x0d\xdd\xb4\xa8\x25\x0e\xa1\xed\xa0\x77\x81\xa3\x41\x07\x9a\x06\x11\x21\x10\xba\x96\x86\x1e\x6b\xc8\x70\x71\x0d\x0b\xd3\x0d\x19\x4a\x98\xaf\x30\x37\x6a\x48\xd2\x0b\x59\xf3\x17\xd6\xe9\x7f\x9c\xe0\xdb\x0e\x39\x8a\xa3\x3f\xfc\x24\xe6\x2f\x5d\x7b\x27\x2b\x8d\xb9\x48\xca\x2f\x6a\x1e\xfb\xca\x08\x8d\x7b\xe9\x65\xde\x5e\xa5\x09\xfd\x74\xf1\xd3\xd7\x3f\xff\xfc\x7c\xd1\x23\x4d\x48\x94\xd1\x93\x79\x17\x9b\xd0\x4b\xda\x92\x7a\xf2\x69\xd3\x84\x9e\x5a\x26\x8f\xa1\x0c\x48\xe4\xd9\x41\x2a\x4f\xf5\x9a\x96\xde\x21\xd1\x2b\xa7\x6f\xfc\x26\xe8\x01\xf1\xfb\x3f\x91\x82\x22\x82\xd8\xd6\x1e\x77\xb3\xdd\x18\x33\xf1\xed\xe8\x69\x35\xe3\x48\x08\x23\x84\x1b\x52\x59\xb9\x92\x2a\x5a\x35\x8c\x53\xdc\x74\xcf\xda\xdf\xe3\xc7\xca\x8f\x0a\xd4\x46\xd5\x6f\x04\xa3\x63\xe9\xb8\x37\x9a\xaf\xc4\xf3\x1c\xb9\x18\xef\xec\x63\x2f\x1b\x71\x2d\x2e\x90\x21\x23\xc4\x5a\xf1\x17\xd5\x7f\x97\xf9\xd1\xf2\xe8\x3e\xf3\x56\xa4\x73\xf9\x61\x9c\x70\x8b\xe2\xa5\x7f\x1c\x2c\xfd\x28\x0b\xb2\xbb\x27\xb9\x8c\xd9\x17\x29\x77\x09\xa2\xef\xff\xf7\xdf\xd7\x40\x2c\xe5\xc8\xfe\x52\xe4\xa7\x25\x1c\x56\x8f\xc8\x37\x1c\x5d\xba\x49\x7d\xa9\xf8\x2a\x1d\x99\x18\x53\x34\x20\xfd\xfa\xab\xcc\xef\x32\x58\xe4\x78\x33\x95\x9f\xf9\xdd\x26\x4b\xf7\xad\x41\x54\x78\x8c\x04\xdc\x6b\xec\x00\x25\x29\xca\xe1\xbe\xd0\x10\xe9\x37\x79\xd7\x68\xef\xa0\xe5\x67\x47\x4f\xf6\x1f\x3b\xc0\x5f\x7f\xcd\xd0\x8b\xeb\x38\x0c\x16\x77\xd2\x29\x7a\x19\x83\xa0\xfd\xfa\x6b\xbe\xff\x1e\xf0\xbf\xe4\x7f\x8b\xfe\x7e\x5b\x27\xfe\x65\xf0\x4e\xc2\xaf\x95\xfd\xa5\x24\xff\x44\xf0\x57\x41\x3f\x89\xef\x2d\x45\xdd\xf4\x8f\x99\xea\x39\xbd\xc6\xc9\x91\x3e\x3b\x06\xdd\x34\xe4\xa6\xa1\xe6\x92\xe7\xa1\xd7\x3c\x76\xc6\x1c\xed\xac\x31\x05\xe5\xd0\xff\xb7\x33\xc4\x16\x94\x1d\xc2\x08\xbd\x26\xd3\x30\x15\xd4\x4f\xeb\x30\xc5\x83\x14\x2e\xee\xa8\x88\xac\x85\x57\xd4\xb1\x8a\x93\x11\x47\x4f\x9b\x84\x7f\x6c\xd5\x1a\x8d\x6d\xaf\xd4\xea\x9b\x5f\xf4\xb7\xdf\x04\x9b\x55\xaf\xec\xfb\x32\x7b\x3e\xa4\x9a\xeb\x88\xdc\x79\xbc\x3c\x0d\x2a\x36\xce\xe1\x78\xb4\x5c\x79\xa9\x9e\xec\x67\x2a\x5a\x99\x4a\xc8\x84\xd9\x0e\x4f\x8d\x26\xf8\x51\xd3\xa4\x47\x17\x09\x0e\x74\xbe\x45\xb9\x61\x34\xe7\x2c\x5e\x1f\xa7\x99\x97\xf4\x86\xe9\x6b\x39\x91\x17\x49\x90\x05\x0b\x2f\x94\x45\x44\xd8\x16\xa1\xea\x59\x26\x85\xbe\x97\x66\x52\x1c\xf9\xd2\x15\x81\xd7\xc2\x79\x95\x52\x1c\x91\x54\x33\x2c\xc6\x82\x54\xba\xf4\x82\x30\x88\x56\x6a\x5f\x09\xd8\x30\x9b\x5b\x2f\x89\x82\x68\xf5\x98\x93\xb9\xf2\x52\xc9\x93\xe8\x40\xb6\x9d\xcf\xda\x4b\xd3\x9d\xcd\x27\x0c\xb9\x69\xa4\x92\x97\x20\x0d\x12\xf7\xd8\x7b\xe0\x95\x46\x49\xd0\x3d\x6a\x28\x8a\xf9\xd6\xd5\x0e\xf0\x9a\x81\x55\x19\x2b\x91\xec\x3d\x03\xa9\xfb\xe7\xbd\xd7\x21\x0c\x61\x13\x82\x61\x2f\x00\x43\x99\xcb\x8b\x16\x61\x16\x0a\x62\x49\x1f\x11\x66\x42\x94\xff\x80\x46\xfe\x6c\xb9\x4c\xf2\x70\x7b\x9a\x7d\x50\x3e\xda\x22\xf5\xba\x30\xa2\x09\xac\x82\x5f\x54\x40\xa4\x84\x7c\x55\x3e\x19\x8e\xd8\xd0\x09\x35\xc2\xa7\x53\xa3\x79\xbe\xf6\xd3\x2b\x9a\x59\xfe\x32\x4a\x33\x2f\x5a\xd0\xf2\x9c\x34\xcb\x9a\xb3\x7c\x2a\xed\x18\x03\xda\x51\xf2\xfc\x75\x7c\x3c\xca\xb7\x41\x76\x15\x6f\xd0\xe9\xba\x89\x30\xd9\x48\xf1\xf7\x0e\x4e\xd9\x1e\xd6\xa3\x89\x52\xc5\xda\x0e\x05\x60\x9f\x14\xff\x83\x61\x3a\xf6\xe7\x1e\x48\x20\x2c\x6f\x0e\x96\x06\xbb\xf6\xc2\xe0\x0c\x45\x02\x6e\x55\x80\x55\x5d\xc6\xc9\x8d\x97\x1d\x47\x1b\xa4\xd2\xc9\x8a\xbc\x0e\x37\x89\x17\x06\x7f\xf8\x23\xd5\xe4\x3d\x4a\x56\xc4\xc3\xa9\xd6\x91\x7d\x7c\xfd\x38\xf8\xf6\x7f\x7e\xfe\x5d\x5b\xfe\x5d\xac\x1f\xff\xf6\x9b\x97\xac\x34\x59\x21\x3f\x00\x59\x91\xc9\x0c\x30\x18\x55\x3e\x43\x59\x29\x6b\xc6\x2b\x79\xa9\x78\xf4\x26\xd2\x90\x31\xf4\xf1\xa0\xcf\x90\x9c\x1c\xf4\xc5\x3a\x89\xd7\xec\x07\xd7\xfe\x9d\xac\xc8\x65\x49\xea\x38\xc1\x88\xf2\x97\x41\x48\x81\xe7\xe3\xa8\x78\xf7\x69\xf1\x53\x53\x99\x5a\x27\x6f\x19\xad\x9a\x58\xd9\x67\xfe\x4e\xd2\xb4\xa0\x49\x55\xff\xb2\x4f\x5c\xcf\xf8\x4b\x44\xe2\xf4\x65\x74\x19\xe7\xfb\x1b\xc2\x32\x2b\x1f\x18\xe5\xd1\x41\x53\xde\x98\x59\x15\x4d\xe1\xf9\xe0\x6d\x8e\xff\xaf\x80\xcf\xee\x4c\xee\x14\x02\x8b\xd0\xf9\x6e\x46\x39\x1d\x48\xbb\x56\x05\xfe\xb0\xd7\x59\xcb\x1d\xb7\x56\x03\xf2\x06\x68\xa8\xed\x8d\xa8\xce\x56\xf7\xa6\xaa\x88\xa3\x30\x84\x43\x5c\xc0\x1e\x54\xdc\x98\xf8\xb3\xaa\xd2\x19\x2e\x66\x8f\x1b\xef\x6e\x58\x11\x7e\x4d\x87\xd9\x63\x58\x39\x00\xba\x10\x39\x7f\x9b\xe9\x57\xeb\xa9\x4f\x48\x80\x4a\xd3\x83\x49\xd0\xeb\xfb\x8b\xc4\x8b\x96\xfd\x66\x56\x82\xc8\x0f\x49\x3d\x65\x32\x0b\x51\xf3\xdf\xe3\x94\xe9\x7f\x92\x4d\x86\xc9\x05\x2c\x45\xf6\x92\xc0\x3b\xa6\x35\x20\xaa\xf5\xe6\xd1\x28\x37\x81\x5a\xe4\x5a\x73\x90\xbb\xcc\x8c\x70\x17\xee\x1c\xe9\x49\x24\xfd\x57\x63\xc7\xbc\x5d\x26\x63\x83\xc2\xd3\xa0\xf4\x50\xc5\xc0\x6d\x04\xb8\x16\xa8\x2f\xa0\x1c\x73\xef\xfb\xa3\xe1\x9a\x83\x8b\x7a\xe8\x91\x22\xd9\x1b\x05\xa7\x43\xe2\x11\xa1\xfa\x61\x25\x5e\x8d\xed\x74\x0c\xdf\x44\x46\x32\xcf\xb5\x40\xf6\x6c\x2a\x8e\xb0\x75\xe8\x2d\xfc\xab\x38\x5c\xf2\x05\x15\x72\x8d\x9d\x16\x54\x80\x3a\x57\x60\x03\x1a\x73\x21\xcf\xd2\x9d\x5d\xa1\xc1\x18\x50\x1a\x66\x16\xe8\xa8\x27\xdb\x86\xc1\x01\xa1\x22\x6a\x4d\x94\x97\xc0\xcf\x0d\xb1\xd2\x9f\xc3\x16\x53\x51\xe4\xa7\x37\x9b\x30\x0b\xd6\x58\x61\x78\x9a\xf8\xbf\x6f\x82\xc4\x5f\x92\xeb\x56\x92\x08\xd9\x34\x71\x88\xe4\x03\xee\x8c\xf6\x75\x87\x31\x32\x49\x8d\x96\x82\x28\xc8\x98\x50\x88\x45\x31\x3d\xe2\x34\xd1\x76\x86\x57\x1d\xe9\x65\xa8\x55\xb5\xfb\x8e\x45\x2d\x88\xd0\x7c\x1d\xdc\x78\xf3\xdb\x1b\x00\xa6\x17\x55\x08\x52\xed\x08\x03\xbc\x40\xbb\x43\x26\x76\xa1\xf4\xe5\xb8\x67\xf4\x21\x41\x53\x1a\x02\x6f\x01\x59\xe1\x0c\xea\xbf\x34\xf1\x52\xd1\xf2\x96\x10\x60\xb5\xdd\x63\xcd\x6b\xe6\x5f\xc9\x49\x94\x04\xb6\x00\xb8\xc9\x6e\xe3\xfc\xea\x09\x39\x9c\x23\xc5\xcc\xd6\x75\xd0\xd3\xbf\xea\xe5\x20\x9b\x60\xa5\xc4\xcc\x3d\xf4\xd4\xb0\x85\xa7\x01\x4e\x25\x10\xc3\xec\xf7\x44\x36\xaa\xb5\x28\x82\x95\x1e\x97\xe3\xaf\x4f\x73\x80\x51\x63\xe0\x71\x0f\x30\xa7\x45\xf2\x97\x38\x21\x7d\xc4\xfd\x1c\x23\xf8\x5d\x76\x49\xf8\x5c\x03\x14\x4a\xf6\x71\xb0\x6a\xbb\x11\xe9\x3d\x05\x7a\xb3\x38\xa7\x9b\xaa\x6a\x99\xf5\x8f\xea\x19\x82\xe1\xb5\x53\x01\xee\x0a\xe4\xb7\xbb\x2b\xf1\x5d\xda\x34\xe5\xdd\x41\x79\x2b\x52\xde\xf6\x34\x88\xa5\x31\xc8\x35\x54\x8e\x03\x6a\x31\xa0\x11\x00\xe5\x9c\x88\xe0\x63\xb9\x28\x97\x96\x97\xb8\x6a\x96\xf2\x50\x20\xe5\xa1\x88\xfb\xb7\x97\xee\xc3\x25\x3b\x5b\xbd\x6d\x4b\x53\xb2\x56\x24\xa1\x27\xbc\x7f\xd7\x61\x00\xc5\x87\x81\x86\xd6\x66\xec\x95\x49\x77\xed\xb5\x2d\x80\x3a\x3b\x4c\x14\xe2\xe5\x19\x0a\xe0\x35\x89\x60\x6f\x53\xe9\xe3\xe2\xde\x75\x72\x2d\x1e\xe0\xc2\x46\x15\xd1\x4e\xdc\xc6\x1f\x91\x80\x17\x7b\xb5\xcc\x86\x8d\x82\x65\xd5\xbf\xe3\xa5\x7f\xe2\xa5\x0b\xb1\x8f\x01\x91\x5c\xf5\xc2\xf5\x95\xa7\xa2\x77\xf8\xdd\xa3\xd4\x1b\x5a\xfa\x3d\x5a\xc2\x2f\xb5\x35\x45\xae\x5a\x3b\x46\x45\x64\x52\xe7\xb0\x68\x5b\x1d\x03\xa3\x8d\x09\x46\x36\x95\xce\x5d\x8f\xe6\xb3\x19\xd6\xab\x7b\xcc\x9a\x64\x8d\x3d\xa8\x88\xd3\xde\x1c\xc5\x22\x53\x6a\xb8\x25\xd5\x70\x02\x9a\x85\x21\x43\xdc\x65\xb5\x48\x8b\x36\xc5\x66\xdc\x11\xe6\x28\x39\xac\x6d\xcb\xd9\x2a\x64\x64\x50\xff\x43\x03\x13\x74\x8d\xac\xc1\x1a\x6f\xd8\x1c\x03\xeb\xf5\x0c\x98\x1e\xbf\xb7\x80\xe0\x2f\x3b\x9b\x20\xb7\x61\x47\x57\xef\x69\xf5\x31\x0c\x67\x30\x7c\x2f\x43\xb7\xce\xee\x79\xac\x2e\xc0\x41\xf5\xf1\xf4\xe4\xaf\x1f\x09\x3b\x60\x2f\xc1\x89\x02\x6a\xcf\x77\x35\xb7\x1d\x70\x96\xa0\xa6\x99\x22\x70\x16\x8c\xd4\x0f\xeb\x7e\x02\x01\xbe\xf0\xc0\x50\x9f\xf1\x0f\x7b\x21\x0c\x67\x39\x56\xf0\x0a\x63\x04\x17\xf5\xa4\x72\xc8\xe1\xcb\x24\xbe\x39\xf6\xa3\x2c\x09\x68\xe4\x06\x7a\xeb\x38\x48\xf1\xe6\x5a\x1e\x93\x03\x2b\x88\xde\xc6\x45\xe9\x29\x7c\xa5\xbf\x88\xa3\xcc\x0b\x30\x54\xdd\x22\x8e\x16\x1e\xfe\x4a\x08\x66\x1c\xc6\xb7\x7e\xb2\xf0\x52\x3f\xaf\x72\x35\xf2\xa6\xbf\x7a\xb5\xfe\xe8\xf7\xfd\x38\x48\x7a\xaf\x0a\xbc\xc3\x9b\x9f\xf4\x77\x2b\xcd\xeb\x28\xf0\x9e\xf8\xde\x12\x51\xa0\x2c\x2f\xf5\x6f\x92\x96\xf1\xdc\x4f\x17\x49\x90\x5f\xbb\xbf\xa1\x17\xf5\x5f\x6d\xbc\x64\x29\x2b\xf2\xd9\x95\x97\x64\xcf\x72\xfe\x59\x06\xe9\xda\xcb\xf0\x0a\xe7\x37\xfa\x3d\x6b\x5b\x15\xf5\xe1\x97\x0b\x3e\x15\xa4\x56\x21\xbe\x68\x86\x2f\x7f\x35\xae\x7c\x3c\x59\x2f\xb6\x70\x3c\xd4\xea\xae\x1b\x79\x07\xa5\xe3\x71\x17\x1d\xb5\xe3\xf3\x9a\xf0\x8c\x8b\x20\xea\x2e\x1d\x2f\xcb\x8a\xcc\x08\xe8\xc6\xa2\xf0\xc5\x67\x65\x31\x79\xa1\x7b\x40\xe7\xa2\x16\xca\x7f\x81\xc3\xdf\x3c\x81\xd6\x82\xf0\xa5\x83\xb8\xe9\xb3\xe9\x4d\xbd\x91\x35\xe1\x99\x80\x2d\x76\x53\x37\x14\x3f\x07\x4c\x41\xff\x5a\xf5\x73\x60\xf0\xe6\x2e\x30\x47\x96\x84\x17\xfa\x95\x79\xc4\xfa\xfe\x79\x8c\x03\x2b\x9e\xf3\x41\x92\xf6\xbc\x5a\xdc\x9d\x89\x15\xc5\xbb\x43\x9c\xd1\x52\x2c\xb7\x88\x9d\xaf\xfc\x70\x2d\x97\x45\xc9\xe5\xd7\x9b\x34\x93\x2e\x7c\xc9\x93\x30\xfe\xae\xf4\xfc\xdf\x6f\xa4\xab\x38\xcd\xd0\x14\x54\x09\xff\x95\x1e\x36\x12\x38\xb6\x0c\x69\x71\xe5\x25\xde\x02\xd1\x45\x3a\x22\x71\x64\xa9\x22\x85\x7e\x96\xe1\x1f\xbc\x68\x29\x5d\xdd\xad\xaf\xfc\x28\x9d\x91\xdf\x6e\x48\xfb\xab\x20\x92\x6e\x83\xec\x4a\xf2\xe8\xcb\xaa\xf4\x6d\xb4\xf0\xa5\x45\xe2\x7b\x99\xbf\x54\x48\x8c\xf3\xc2\x8b\xa2\x18\x0f\x87\x6c\xe3\x25\x7b\xef\xc1\xda\xfb\xcc\x84\x32\x3f\xc5\x87\x6c\x51\xd4\xfe\xff\x3b\xf7\x8e\xff\x78\x76\xfc\x8b\x76\xec\xce\x8f\xca\x9f\x8f\xe7\xf7\x9a\x62\xc1\x07\xe6\xaf\xb3\x2f\xfe\x4a\x49\x91\x0f\x53\x4c\x06\x79\x3e\x17\xc5\x92\x30\x83\x60\x45\x37\xcb\x94\x16\x5b\xb8\xa7\x6f\x0c\x05\x12\xa1\xb9\x9c\x64\x6a\x86\xe6\xa2\x59\x14\x38\xbb\xf6\x93\x34\x4f\x89\x10\x54\xb2\xc8\xdb\xb1\x2b\xee\x2b\x5e\x00\x53\xee\x73\xa8\x48\x3f\x46\x4b\x5d\xf2\x74\x9a\x2c\x6a\xb1\x17\x72\x8e\xd9\x3c\xd0\x0c\xe0\xd0\x6c\x2f\x03\x3f\x5c\xa6\x7e\x35\x78\xb4\xdc\x08\x7a\xc5\xd1\x23\x47\xfe\x2d\xe5\xfc\x6a\x5c\x08\x49\x00\x19\x1c\x23\xec\x28\x72\xe6\xbf\xcb\x8e\x83\x68\xbd\xa9\xec\xe2\x4a\x78\x00\x73\x06\x96\x85\x63\xf1\xd1\x48\xa8\x35\xcf\x0b\xe7\xe5\xa7\x3a\x19\x13\xad\x9c\x2b\x62\x9d\xfc\xf8\x2e\x4e\xf4\x79\x51\xf6\x91\x78\xf3\xb9\xb3\x64\x40\x6c\xb2\x78\x52\xfe\xbb\xb5\x17\x2d\xfd\x65\x11\x09\xcb\x1e\xa5\x5d\x53\xc3\x57\xfc\x15\x3d\x85\xf9\x4d\x3a\xfa\x96\x96\x4e\x9d\x71\x13\x37\xa7\x9b\x78\xcd\x11\x24\x66\x13\x98\xa7\xfc\x79\x8b\xb0\x25\xf4\xae\x89\x2b\x84\xac\x69\x28\x40\x91\x93\x38\xf4\x45\x75\xbb\xf2\x2f\xae\x20\xfb\xc7\xef\x8b\xb7\xc5\x01\xd5\x55\xa4\xf4\x96\xc9\xb0\xf2\xbe\x37\xd7\xf7\x48\xd7\xf8\xf2\x4e\xf2\x96\xcb\x20\x5a\x49\x78\x6a\x52\x16\xd3\x74\x93\x5c\x55\x49\x15\x52\xce\x29\x08\x43\xc9\x5b\xaf\xc3\x3b\x29\xbb\xf2\x6f\xd0\x7b\x5e\x18\x4a\x59\x7c\xed\x47\x69\x2e\xc6\xb1\x88\x0f\xa2\x4a\x0b\xc3\xd3\x3d\x7e\xb8\xf2\xa5\xcb\x38\x0c\xe3\xdb\x72\x60\x5e\xe2\xe3\xfe\x03\x7f\x39\x45\xe7\xb5\x48\xfe\xfa\x0a\x39\x64\xb9\x8f\x89\xc5\x1e\x97\xaa\x28\xd1\x9c\x0b\xad\x8e\xd7\xa1\x97\x41\xea\x5d\x84\x64\x83\xf1\x75\x5c\x2d\x26\xb7\x59\xe1\xc2\x0c\xe6\xc5\xbd\xc0\xb3\xb3\x57\x68\xcb\x21\xc6\x79\x4e\x5e\x4d\xe5\x1e\xbb\xa0\x8d\x65\x71\xbe\x65\x30\x80\x6b\xbf\x63\x3f\xd8\x86\x71\x9d\xea\x71\xb3\x25\x87\xe6\x33\xa9\x33\xe9\xa3\xf3\x68\x31\xb4\x47\x61\x53\x92\x52\xbb\x05\xa3\x7a\x68\x1e\x2f\x69\xce\xeb\x30\xce\x25\x2e\x8f\x0a\xff\x62\x16\xba\x1b\xc2\xc1\x5d\x45\x71\x69\xe4\x24\xb1\x2c\x3b\x39\x8f\xbb\xb0\xee\xa7\x33\xf0\xa9\x58\x64\xb1\x1a\xf4\xeb\x51\x6c\x2c\x57\x2b\x7a\xb1\x2a\x19\x5b\x83\x94\x19\xf4\x3a\x09\xd2\x2c\x88\x3a\xe4\x7e\x3d\x35\x48\x9b\x97\x0a\xb1\x38\x42\x88\x2f\x72\x82\x15\xcb\x81\xb6\xdb\x1b\xef\xad\x3f\x3e\x24\xb5\xf1\xc2\x76\x9a\x83\x6f\xc8\x42\x8c\xa7\x06\x22\xc1\x88\x99\xb7\x66\x1d\x56\xee\x8b\x6b\xfc\x02\x04\xb5\xde\x0a\x83\xdf\xad\x7a\x04\xf2\x67\x8c\x49\x50\x7f\xc3\x11\x1b\x0d\x62\x66\x49\x7c\x7c\xb8\x0c\xe3\x95\x4a\xf1\xb8\x0e\x9a\xf5\xdb\xd5\xce\x48\xab\xa0\xb2\xd1\x89\xef\xa8\xd7\x87\xa3\xd8\x6c\xeb\xfa\x99\x74\x80\xf8\xb8\x28\xfc\x47\x03\xab\x67\xf6\xf2\x55\x8c\xab\x9f\x29\x60\xd4\xb6\xfa\x8b\x02\xee\x2d\xf8\xd0\x10\xf0\x66\xb1\x42\x4d\xa6\x2d\xc3\xa5\x63\xca\x1a\xe2\x7a\xd8\x3e\x57\xa1\x71\xea\x48\xc6\x7e\xa9\xb4\xa3\x0a\x6a\x96\x0e\x53\x3c\x89\x63\x96\xd9\x6a\x5c\xa6\x20\xe3\x2f\x77\x11\x3f\x2d\x8b\x48\x92\x30\xf3\x79\x19\x68\x95\xc7\x54\xf5\xf6\x8e\x01\x05\x83\x7d\x0f\x8f\xe2\xec\x95\x84\xdc\xaa\x24\x58\x8a\xad\x38\x8a\x8b\x8e\x3c\xbe\xe1\x8e\xef\x90\xb6\xc2\x15\xa2\x1c\x13\x13\xd5\xd6\x65\x77\x82\x66\x5e\x2f\x52\x61\x11\x4b\x88\xe7\xe5\x06\xd9\xc3\xf8\x42\x28\x48\x09\x8c\x09\x36\x93\x73\x75\x2d\x42\x1c\x44\x6e\x73\x2a\xbe\x1a\x5a\x8e\x6a\x93\x04\xe8\x33\x6a\x8c\xb3\xf7\x4e\xac\x6b\x95\xb9\x86\x0a\xfd\x31\x20\x5d\xb5\x3b\x98\x3d\xb9\x14\xda\x27\x80\x94\xe5\x4b\xe0\xfe\xf0\x9f\xcb\xb4\x15\x20\xe5\xd9\x22\xf7\xb5\x14\x17\x3c\x67\xdc\x56\xce\x7f\xad\xdc\x77\xf0\x17\x33\xe2\xec\xca\x4e\x3c\x15\x72\x31\x43\x10\x55\xf0\xc5\x8c\xcd\x01\xab\x28\xf2\xd3\x30\x88\xae\x71\xa2\x29\x95\x16\xce\x1c\x35\x4b\x9e\x15\x27\x67\x7f\xc9\xd5\x43\x1c\x0e\x03\x5e\xa9\x6a\x0b\xe4\xdc\x20\x82\x7d\xf9\x2c\x13\x86\xde\xf4\x2a\xb7\xd9\x5c\xcd\x0e\x37\x8e\x0c\x3f\x99\x87\x5e\xc0\x13\xa0\x42\x41\x55\x55\x71\xf2\xf7\x30\x43\x53\x6e\x04\x8d\x00\x39\x68\x04\xb1\x52\x54\x7f\x19\x64\x72\x7d\x2c\x11\x0b\x1b\x21\x1a\xeb\x20\xd0\x83\x29\xe0\x1d\x47\x03\x47\xf0\xeb\xcb\xf8\xdc\x47\x28\x67\xad\x09\x7e\xb2\x10\xd3\xa0\xe2\xe6\x6f\x41\x76\x6c\x44\x28\xa8\x62\x08\x54\x67\x21\x6a\xaf\x03\x1b\xa1\x71\x4d\xea\x1a\x34\x8e\x17\x3c\xfb\xf6\xdf\x6f\x7e\x7c\xf5\xdb\xb3\xb3\x57\x6f\x7e\x7b\xf1\xef\x67\x5f\xbe\x7a\xf1\x7c\xb8\x8b\x54\xaa\x5d\xde\x61\x37\xc7\x93\x64\x13\x22\x0b\x01\xcb\xe0\x62\xe1\x59\x8d\x1a\x8c\x70\x66\x4f\xc1\x73\x03\x4b\xe0\x37\x5f\x3f\x34\xcb\x97\xd1\x29\xb2\x70\xab\x9a\x9b\x4e\xe1\x6b\x27\x53\xbe\x4a\xfc\x4b\x99\x35\x9b\x86\x88\x89\x91\x0a\x68\x1b\xe5\x69\x40\xd9\x36\x74\xef\xe1\x09\x00\xa3\x5d\xe0\xe4\xbf\x17\xcb\x20\x1b\x89\x4b\xf4\x53\xe0\xdf\xf6\x2c\x8b\xbb\x85\x71\x51\xd3\x36\x1b\xc8\xd4\x61\xd1\x36\xd0\xa9\x9d\x40\x3c\x9b\x51\x05\x62\xe9\x45\x2b\x3f\x89\xcb\x44\xa4\x38\x22\xa6\xdd\xbc\x8e\xee\x43\xef\x74\xac\x79\x05\xb3\xf6\xb1\xd9\x8d\x5d\xc6\xf1\x96\x60\xdf\x58\x80\x52\xa3\xdb\x2a\x5e\xd2\x28\xd7\x20\xcf\xbe\xd9\xc2\x00\xde\x81\x42\x26\x55\xfe\xa3\xda\x2b\xf5\x65\x0c\x4d\x4d\x1c\x3c\xd8\x8b\xbc\x8e\xf1\xd8\xb4\xcc\xd6\x22\xc6\xf9\x7f\xbd\x3c\x36\x85\x83\xff\x8b\xa6\xbe\x44\x39\xc2\xbb\x20\x4a\x1e\x01\xb6\x05\x5d\xf8\x48\xe1\x9e\xdc\xf6\xbc\x70\xdf\x0c\x98\x4d\x2d\x8a\xb4\x25\xd6\x76\x74\xe4\x6a\x93\xb3\x66\xb4\xcb\xa2\xa9\x01\x7d\x50\x0b\x02\x67\x45\x2f\x47\x44\x7b\x99\xea\xdc\xae\x2c\xc1\xa0\x18\xaf\x83\x1f\xbd\xa5\x6e\x85\xd1\x4e\x80\x3d\x42\x82\x12\x04\x91\xed\x8b\x37\xe0\xd5\xe2\x97\xe0\x6b\x77\xb1\x11\x7b\x03\xf2\x42\xf5\x8c\x5d\x4f\xfd\xee\xbd\x00\x1d\xe9\xf1\x5c\x84\xb7\x8d\x89\x7a\x70\x86\x94\xcb\x87\xf5\x9b\xa4\xc1\xe5\xf2\xe5\x29\x8b\xe5\xe7\xc2\x7b\x50\xa9\xfc\xde\xe6\xc5\xf9\x14\x65\xf2\xbb\xce\x17\x5c\x22\xbf\xf0\xf3\x97\xf5\xf1\x6f\xbc\xe4\xda\x5f\x4a\x97\x71\x42\xce\x97\x20\x8e\xd4\x76\xbc\xb9\x4e\xd7\xea\xd8\x0a\xf9\xdd\x98\x73\xa3\xa5\xc8\x1e\x16\xc0\xa7\x23\xdb\x3f\x68\xb9\x3f\xbe\x7a\xf2\x26\x08\x6e\xbe\xdd\x1b\x68\xb9\x47\x05\x8a\x23\x5e\xcc\x3a\x54\x9c\x46\x65\x54\x27\x54\x1c\x8b\x03\xd2\x0e\x15\xc7\x21\xc4\x7d\xd2\xf8\x70\xa0\x01\x20\x8d\x84\xac\xd4\x21\xd2\xf4\xed\x10\xe2\x40\x63\x56\x7b\x73\xc3\x8a\xf0\x6b\x3e\xb7\xbe\x6d\x58\xb5\xa8\xde\xe9\x08\x30\x06\x23\xae\x27\x09\x1a\x31\xde\x7a\x12\xa1\xd7\xf7\x1c\x46\x5c\xfb\xcc\x06\xc5\x37\x8b\x30\xe2\xf4\x9d\x61\xc4\x01\xe6\x7a\x39\xc7\x88\xe3\x93\x03\xc6\x7b\xde\x46\x63\xc4\x19\xf3\xc1\x18\x71\x78\xcc\x3b\xc4\x88\x33\x14\x50\xb7\xb2\x76\x07\xb1\xb3\x17\x18\x71\xce\xc4\x10\x71\x95\x8c\x9b\x6a\x3c\xce\x6e\x20\xe2\xda\x70\x82\x3e\x10\x42\x1c\xb0\x0f\x08\x71\x9f\x28\x42\xdc\xa4\x00\x43\x5c\x30\x17\xac\xff\xd2\xc4\x49\x3b\xc3\x87\x03\x3d\xf0\xe1\x5a\x90\x83\xc4\xa3\xdd\x39\x3e\x5c\xc3\x21\x5f\x05\x45\xad\x41\x01\xb5\x30\xe3\xce\x21\x81\xb6\xb8\xf8\xa8\xc3\x02\xf5\x34\xda\x0f\xd8\x41\x53\xc9\x77\xeb\x4f\x8b\x1d\xe4\xdd\x4c\x84\x1d\x84\x1a\x1a\x8b\x1d\xb4\x73\x84\x1e\xbc\xc0\x07\x84\x9e\x0f\x87\xd0\xf3\xe1\xb0\x53\x6a\x0c\x0c\xaa\x8f\x1b\x96\xbf\x6b\x54\x8f\x8e\x9d\x52\xdf\x51\xa0\xf6\x7c\x57\x73\x3b\x60\xa7\x7c\x64\x30\x29\x2c\x0e\x4a\x07\x64\xca\x58\x98\x14\xb1\xa3\x78\x6f\xfc\xd7\x24\x37\x6c\x5f\xbc\xd7\xdf\x83\xef\xc3\xef\xbc\xf5\xeb\x86\x9b\xb0\x3c\x65\x8d\x73\x3a\x7b\xeb\x40\x56\xe4\xd7\x7e\xb4\x79\x49\xe2\x66\xd1\x8f\x6f\x7c\xc4\x6e\x38\xeb\x2d\x0f\xa7\x15\x43\x9b\x94\x5a\x50\x9e\xd5\x55\xe6\xc6\x35\xdc\xb0\xd5\x00\x51\xfb\x95\x11\x6d\x54\x01\xeb\xed\x2d\xae\xe2\x78\xab\x26\x79\x33\xaa\x88\x8f\x04\xa2\x3a\xba\x63\x0e\x37\xa4\x4a\x85\x81\x3c\xcf\x8b\x67\x95\x23\x6d\xb7\x92\x71\x56\xe2\x3a\x7e\xeb\x27\xc7\x37\x7e\xb4\xa1\x0e\x7b\xce\x9b\xc7\xc0\xa1\x54\xd5\xd6\x02\xb1\x78\xab\x68\x85\x56\x6d\x22\x4b\x82\xd5\x6a\x7c\x48\x0b\x17\xc7\xd9\x64\x53\x0d\x8c\xe2\xe8\x35\x6e\x4c\xcd\xc1\x2a\x50\x61\x60\x43\x5c\x36\x8c\xee\x20\xaa\x03\xe5\xcf\xca\xad\x34\xc8\xac\x87\x02\x87\x18\xd0\xf0\x0a\xe6\x75\xc8\xb4\x6d\x32\x27\x85\x24\xc2\x10\x41\x69\xbc\x49\xf0\x55\xf5\xbc\x80\xa8\xa8\x6c\xf5\x30\xf6\x96\x01\xb9\x0a\xe6\x92\xc5\x78\x38\xa0\xbf\xe5\x30\x40\x45\xd2\xbb\xcc\x6a\xef\x22\x28\xa0\xe5\x22\x77\x10\xd0\xf4\x39\x9b\x89\xa5\xac\x3b\xd6\xeb\x69\x9e\x18\xe0\x80\x37\x18\xe4\xd0\xfb\xe3\xae\x06\x4b\x33\x26\x22\x71\x04\xb1\x3e\x06\x0a\xf5\x8e\x1c\xa6\x4c\xcf\x7a\x4d\xdc\x86\x9f\xd1\xe0\x98\x58\x5e\x85\x26\xd0\x4e\x68\x79\xb1\x4b\x51\x84\xef\x51\x30\x6b\xd6\x1a\x2b\x75\x58\xea\x69\xc0\x5a\x70\x2d\x44\x57\x91\x83\xf4\x18\x69\x48\x6f\x2b\x16\x44\x2d\xf0\x17\xeb\xae\x2a\xb9\x17\xc1\x54\x4a\x2b\xf7\x4e\xa2\x65\x63\xe2\x46\x05\xa3\xcb\xf7\xb7\x23\xdc\xde\x4a\xbe\xda\xd0\xe5\x1c\xe1\x16\xbf\xf2\x3d\xae\x4c\x9b\x84\x6e\x4f\x21\x39\x3a\x06\x54\x2c\xe0\xad\x6a\x6a\x47\xcb\xd8\x06\xc9\xfb\x1e\x9f\x08\x72\xde\x38\x26\xaf\xeb\x14\x37\x5e\xe4\xad\xc6\xe9\x14\x9d\xbc\xcb\x07\xff\x09\x13\x04\x9b\x99\xbe\x85\x4b\xcb\xf0\x74\xb9\x26\x2b\xb6\x72\xa3\x7e\x58\x96\x79\x4d\x48\x5f\x28\x36\xe9\xa3\x32\x8a\xd0\x1e\xab\x64\x3d\x6e\x31\x2a\x61\x56\x65\xcb\x55\x45\x6b\xca\x0a\x18\x53\xa2\xb7\x3b\xc9\xb2\x0c\x77\x2c\xeb\x61\xae\x98\xec\xc9\x5a\xa6\x24\xce\xca\x4c\x7c\x64\x03\x1d\x5f\xdc\x35\xda\x88\x24\x78\x92\xd8\xa1\xe3\xaa\xcc\x8b\xcc\xb2\x1d\xda\x8a\x9f\xf5\xb1\x15\x8b\x73\x60\xaf\x70\x35\xff\x73\xb3\x7c\xf5\x3c\xbd\xd3\x3e\x12\x5c\xcd\x1d\x82\x68\x16\xeb\xc3\xe2\x68\x62\xfc\x86\x3d\xc1\xd1\x64\x14\x09\x46\xbf\x6a\x51\x33\xea\x50\x9a\xc0\x6d\x83\xd2\x64\x9b\xf8\xae\xde\x99\x10\x4d\x33\x2f\x80\x50\x5c\x66\x54\x2f\xe9\xc5\xc8\x18\x55\x93\xba\xe9\xb3\x69\x33\x5f\x47\x21\x69\xca\x5c\x22\x5e\xb9\x8b\x1f\x11\x48\x73\x1f\x41\x34\x39\x55\x49\x2b\x53\xca\x4a\xa6\xaa\xdd\xe0\xf0\x41\x1c\x0c\x2f\x7f\x1a\x38\x9a\xcc\x84\x1e\x0f\x47\x93\x19\xc4\x9f\x0f\x47\xd3\x7d\x5c\x18\x4d\x96\xf5\x3f\x4a\x24\x4d\x87\x8f\xd4\xfd\xf3\x20\x69\x6e\x3b\xf1\x9a\x4e\xce\x71\xd3\x76\x40\x6b\x5d\x5c\x55\xad\x49\x4c\xc0\xd6\x8a\xaf\x1e\x1f\x6f\xad\xf7\x04\x3e\x45\xc8\xb5\xf3\x76\xc8\xc6\x3f\x29\xb6\x9a\x2d\x40\xa7\xb2\x3b\xb1\xd5\xac\x8f\x12\x5b\x0d\x8e\x3f\x2a\xaa\x7b\x9b\x26\xc3\xf6\xfc\x78\x14\xb7\x4d\x0a\xb1\x56\x18\x15\x07\x88\xb5\x03\xc4\x1a\xdb\xf4\x9f\x04\x62\x6d\x0b\x94\xb5\xc7\x01\x5a\xeb\x8d\xb2\x46\x50\xd3\xfa\xa3\xac\x09\xf1\xd5\x88\xdf\xef\x83\xa2\xac\x89\x9c\x72\x8f\x1d\x54\x52\x8e\x69\x9f\xb0\xd6\x12\xf3\xea\xbf\xfa\x59\xf2\xaf\xbd\xc5\x5a\x2b\xfd\x77\xa3\xe1\xd6\x98\x83\x74\x52\xbf\xd3\x01\x71\xed\x7c\x00\xe2\x5a\x69\xaa\x1c\x40\xd7\x0e\xa0\x6b\x7b\x0e\x5a\x66\xb4\x6e\xd1\x3d\x07\x2d\xeb\xbb\xd3\x46\x6a\x75\x1f\x0e\xb7\xac\xc5\x02\x3a\x40\x97\xf1\xd0\x65\xc3\x49\x75\x40\x2f\x3b\xa0\x97\x1d\xd0\xcb\xba\xd1\x65\xca\xff\x7a\x39\x43\x8a\x8d\x78\x40\x2f\x3b\xa0\x97\x8d\xd5\x7b\xfa\xa1\x97\xf5\x34\xe7\xdb\x71\xcc\xc6\x21\x98\x89\x8c\xd9\xfd\x31\xb0\xf7\x12\xc7\x4c\xbb\x5b\xfe\x8f\xf6\xf7\x27\x3f\x1d\x70\xcc\xe4\x03\x8e\x59\x33\x8e\x59\xe1\x4c\xff\xd3\xe0\x98\xb5\xee\xdb\xfd\x11\x2a\xfb\x87\x66\xa6\xfd\xf1\xfc\xd9\xc5\x57\xef\x56\x07\x34\x33\xce\x4f\x78\x00\x34\x3b\x00\x9a\x1d\x00\xcd\x0e\x80\x66\x07\x40\xb3\x03\xa0\xd9\x01\xd0\xec\x00\x68\x76\x00\x34\x3b\x00\x9a\x1d\x00\xcd\x6a\x81\x49\x23\x5c\x90\x07\x40\xb3\x03\xa0\xd9\x01\xd0\xec\x00\x68\x76\x00\x34\x3b\x00\x9a\x1d\x00\xcd\x0e\x80\x66\x07\x40\xb3\xfe\xee\xe2\x7d\x72\x64\xef\x17\xac\xd9\x1b\xff\x79\xf2\xfd\x4f\xf6\x8f\x62\x37\x36\x9b\xbd\xbc\x0d\xb2\x19\xab\x01\x31\x59\x53\x1c\xe6\x59\xd3\x65\x1b\x10\x5a\x29\xda\x48\xbc\x30\x01\x06\x89\xc6\xe0\x9a\x71\x29\x5d\xa8\xa5\x02\x13\xc8\x1e\x1d\xf3\x24\x0b\x50\xc9\xf8\x7e\x1a\x7d\x57\x7d\x40\xc9\x9e\x2d\x6f\x82\xa8\xbc\xb9\x9a\x14\x9a\xac\x87\x4e\xb0\x15\x2c\x99\xdc\x05\x49\x36\x20\x90\xa1\xc7\x58\x47\x42\x91\xe5\x0e\xcc\x49\xa1\xc8\x84\x60\x26\x63\xc0\xaf\xb0\x72\xfb\xe4\x6f\x05\xe2\x15\xbb\xbf\x18\x6b\xa2\x18\x52\xc9\xd1\xad\xf0\x56\x75\x05\x1d\x2a\x4e\x27\xbc\x55\x4e\xb3\x2a\x60\x95\xe8\x67\x5b\x00\x64\x55\x03\xd0\xda\x0e\x0b\x48\xde\x37\x0c\x2b\xbd\x1b\xc3\x8a\xeb\x9e\x20\x53\x6d\x07\x41\xd5\x63\x63\x6c\x8d\x25\x24\x0f\x84\x9e\x1a\x0c\x33\x38\x1d\xe4\x94\xc6\x40\x4e\x35\x65\xf0\x6e\xc3\x69\x03\x10\xa7\xe4\x01\x68\x53\x4c\x5c\x71\xae\x3a\x4c\x0b\x3b\xf5\x21\xd8\x84\xc2\x4d\x15\x87\x95\x18\x6e\x6a\xd7\xcc\x31\x0c\x66\x6a\x8b\x90\x37\x31\xbc\x94\x3c\x3e\xd5\xa3\x55\x95\xa0\x8f\x3a\xb4\x03\x81\xb6\x41\x36\x2f\xbb\xa2\x7c\x04\x4e\x77\x16\xc1\x88\x02\x9f\x22\xa0\xab\xc7\xc6\xb8\x6a\x52\xd3\x1f\xdd\x7c\x88\xc3\x60\x71\xb7\x57\xa9\x6b\x3f\x3e\x5f\x59\x2f\xf5\xff\x5c\xec\x24\x75\x6d\x9b\x8c\x35\x4c\x2a\x9a\xae\x36\x67\xf2\xd4\x18\x35\x7e\x7f\xd2\xd0\xda\x34\x91\x12\x42\x8a\x4c\x89\x1c\x59\x37\x18\x58\x68\xdc\x59\x55\xb9\x30\x27\xd2\x43\xd0\x78\xef\xbb\x74\xa8\xc8\x3f\xd0\x10\xc4\xbe\x57\xe9\x8d\x7a\x7b\x16\xc7\x61\x16\xac\xe5\xb1\x39\x3a\xe4\xbf\xaf\xc2\xf8\xc2\x0b\xe9\x39\x83\xde\x94\xbe\xc3\x13\x1c\x1f\xc6\xdc\xe7\xc6\xbf\x4f\x94\x72\x53\x86\x9e\x41\xcf\x77\x6f\x11\xa6\x2a\x5e\x8d\xc0\xaf\xa6\x0e\xbd\x7c\xce\xa7\xe8\x99\x8c\x1a\x3b\x05\x23\x61\xed\x56\xc4\x5f\xbd\xb2\x01\x7b\x12\xb4\xc7\x66\x1a\x98\xf1\xd7\xc6\xd7\x4b\x06\x90\x6d\x10\x43\x4f\xc8\x9d\x25\x28\x5c\xba\x2d\xc3\xf5\xdc\x4b\xd5\x4b\x06\x64\xc4\xc9\x8a\x54\x1a\x82\x66\x95\x2b\x9a\xaf\x24\xfb\xb1\x7e\xeb\x1a\x54\x12\x21\xfb\x2f\x42\x77\x0a\xe5\x00\xe1\xd2\x3b\x8d\x72\xc8\x9c\x1f\x25\x5d\x92\x65\xc9\xdd\x67\x34\x0e\x96\x4c\x3b\x88\x29\x99\x20\xa5\xd1\x66\x52\x1a\xb1\x00\x94\xe7\x87\x7c\xc6\x06\x32\xe5\xf9\x8c\xc3\xe8\x74\x48\x66\x3c\x24\x33\x1e\x92\x19\xa7\x4f\x66\xc4\xbb\xf0\x90\xc9\x78\xc8\x64\x6c\x53\x3b\xfa\x65\x2b\xf6\xcb\x51\xa4\x7e\x86\xec\x6e\xed\xc7\x97\xbc\x67\xa6\xf0\xd6\xd0\x77\x96\x8c\x6e\xab\xc8\xff\x8d\x83\x88\x3a\x60\x46\x78\x5d\xaa\xde\x8d\x3d\x71\xb7\xec\x65\x22\x63\xf2\xa5\x76\xf7\xea\xc7\xef\x5f\x88\xfd\x2e\x04\xd0\x51\x91\x9f\x16\x89\x02\x05\x6c\x76\x8e\xf5\xd8\x99\xd1\x98\x5f\xb1\xea\x73\x85\x02\x5d\x8e\x8f\x11\x17\xb5\x0b\xd1\x18\xf2\x7c\xc5\xd1\x78\x99\x38\x5d\x8f\x2c\x54\x99\xab\xe7\x2d\x97\xfe\x52\x1d\xa8\x89\xfd\x70\xe5\x27\xbe\x74\xeb\xa5\x92\x17\x49\x98\x4a\xa8\x9d\x20\x5a\x21\xc1\x9c\xf7\xd1\xd4\xe8\x90\x68\xc6\x26\x22\x6f\xd6\xcb\x8f\x89\xc8\xa9\xf7\x76\x12\x22\xa7\xde\xdb\x0f\x48\xe4\x22\x7f\x76\x68\xa8\xc0\x87\xa1\x2e\xa2\x0c\x19\xe2\x14\xa4\x5d\xe6\xd0\x53\x63\x89\x3b\xb0\xb2\x05\x0f\xbb\x64\x28\x54\x10\x21\xf9\x73\x19\x24\x69\x46\x64\xe3\xc0\x50\xf5\x39\x0b\xf7\x98\x79\x41\x38\xf0\x66\x3d\xd7\xc6\x2e\x4a\x0f\x10\xd6\x99\x2a\x91\x65\x47\x7c\xf0\x5a\xde\x65\x9e\x13\x28\xc6\x9f\x2c\xff\x2a\x9f\x48\x42\x10\x76\x76\xd4\x8a\x3c\xab\xe5\x21\x4c\x77\x91\x52\xc4\x52\x05\xc5\x91\x3d\x12\xb7\xaf\xf1\xd8\xdb\x93\x03\xb9\x2d\x09\x58\x91\x9f\xae\xc2\xe0\xe6\xc6\x4f\xca\xef\xf9\x23\x5a\xc9\xa6\x3b\xa4\xa3\xf6\x43\xfa\xad\xe9\x7c\xbf\xfe\xd7\x77\xc1\xde\xe4\x06\xa7\x14\x70\xbb\xf3\x45\x1c\xae\xb5\xc3\x9c\xe3\x4a\x89\xcb\xe9\x12\x90\x89\x6b\xbb\x96\x7d\xac\xf7\xce\x3e\x86\x56\xdf\xec\xe3\xa2\x29\x2e\x0d\xf9\x13\x4f\x44\xd6\xc4\x79\xb8\xf4\x6c\xa9\xe5\xe1\x42\x58\xcf\xf8\x55\x64\x3e\xe8\xba\x4f\x36\xae\x20\xc1\xab\xb9\x03\x31\xa0\xb3\x28\x17\xb7\xe5\xeb\xae\x84\xe4\x69\x08\x41\x23\xe9\x85\x2f\x8d\xc9\x5a\xee\x49\xa7\xc6\xac\xe3\x9e\x94\xea\xf5\x3d\x9b\xb5\xdc\x31\xb3\x6d\xb3\x96\x71\xf3\xbb\xc9\x5a\xce\x8f\x7b\xa8\x97\x59\xcb\xd0\x78\xdc\xac\x65\xa8\x0f\xcd\x5a\xae\x47\xdd\x15\xc1\x8c\x42\xc6\xe4\xae\xcd\x4a\x75\x46\xbc\x8c\x55\x9a\xec\x30\x39\x1a\xea\xa8\xa3\x1e\xde\x10\x71\x4a\xdc\xc7\x99\x1c\x8d\x93\x1b\xa7\xcc\x8e\x86\x7c\x76\x34\xfc\x20\xd9\xd1\x74\x16\x8f\x9a\x1e\x0d\xad\x43\x7a\xf4\x27\x9a\x1e\x0d\x1c\x41\x4e\x59\xfe\x70\x78\x82\x74\xad\x3a\x69\x0d\xc6\x42\xcc\x4b\xbb\x4a\x90\xc6\x45\xe0\xe6\xed\x09\xd2\x10\xd4\x13\xa4\x21\x68\xe3\xfc\x9d\x27\x48\x37\xe8\x13\xf4\xaf\x76\x39\xc8\x9d\x26\x48\x43\x71\x91\x4e\xe0\x22\xb2\x4e\x79\xbf\x0a\x9c\xa9\x32\xa4\x81\x3d\xcd\x01\x46\x8d\x94\x7d\x40\xf7\x10\x4a\x7e\x56\xd1\xe8\x29\xf2\x8b\x44\x96\x56\x29\xcf\x34\xdc\x20\xe1\x3f\x92\x5c\xe9\x7e\x62\x9d\x6e\xae\xba\xde\x36\x24\xba\x65\x6f\xf2\x83\x31\x0a\x51\x4d\x98\xeb\xbb\x12\xe6\xa6\x02\xc4\xb5\x63\x86\xc9\x6b\x46\xd7\x31\x7b\xc0\x59\x70\xe9\x1d\x55\x5c\x0b\xfe\x8f\x22\x9e\x1e\x93\x49\xcb\x37\x3c\x18\x67\x42\x90\x04\x2b\xf5\xca\x57\x0a\x63\x6f\x19\x44\xab\xc6\x0a\xad\xc2\xc2\xfd\x7f\xe3\x2f\x17\x45\x4e\x19\x1e\x70\x1b\x91\xc9\xe6\xaa\xae\x86\xde\x1f\x77\x0d\x62\x82\x36\x96\x73\x9c\x86\x63\x9c\xd2\x8a\xb9\x4d\x69\x4c\x49\x2f\xf7\x2a\xc3\x57\xc1\x6f\x1a\xb4\xbb\x1a\x51\x9e\xea\x81\xfa\x9d\x92\xf5\x3a\x88\x96\x13\xcb\x54\xdc\xe4\xa7\x2e\x4d\x3b\x1d\x3a\x88\x0a\x55\x0f\xd6\xc7\x27\x62\x27\x85\x13\xea\x12\xb0\x4c\x20\xe1\x0a\x47\x66\xb3\x51\xc6\xd8\xdf\x19\x2d\xbd\x64\xd9\x06\xb6\x31\x0e\x0b\x82\xf4\x4f\xf3\xfd\x40\x8e\x3f\x70\x2c\x97\x95\xac\xe6\x5d\x62\xba\x05\x75\x88\xdd\x14\xdb\xab\xd2\x3d\xd4\xe8\x7e\xbc\xc9\x3b\x15\x59\xf4\xa1\x6d\x3c\x88\x75\x14\xa3\x69\xb0\x15\x86\xa1\x17\x8d\x14\xa3\x75\xe4\xa2\x03\x28\xd1\x74\x5e\x15\xf3\x00\x4a\xf4\x49\x83\x12\xe1\x05\x3e\x80\x12\x7d\x00\x50\xa2\x4d\xb0\x67\x80\x44\xc2\xa5\xef\x63\x6a\x7c\x04\x80\x44\xbb\x99\xdb\x01\x90\x68\x12\x94\x22\x6e\xee\x8f\x89\x57\xd4\x81\x51\x84\x8c\xc6\x4a\xc6\xf2\xcd\x26\xe3\x70\x8e\x46\x87\xe0\x34\xc2\x17\x2d\x42\x2f\x4d\xa5\x44\xf2\xdf\x65\x7e\xb4\x4c\xa5\x2c\x0f\x4f\xb9\x7f\x28\x23\x55\x12\xa5\x2d\x40\x27\x52\x92\x59\xdf\xb8\x9b\x24\x0e\xfd\xbd\xca\x3a\xfe\x7d\xb5\xfc\xfb\xdf\xdf\xd9\xb7\x7b\x5b\x30\x13\x51\xac\xb9\x56\xe6\xbc\x80\x51\xe9\x2f\xdf\x7b\x9c\x80\x63\x12\x2c\xe4\xc6\x84\x54\xc0\xa6\x7d\xa1\xf9\x74\x65\xa3\xee\x7f\x8a\xa8\x5c\xd4\xdd\x46\x5c\x9d\xc5\xd7\x7e\xf4\x24\xd9\x84\x7e\xea\x67\x98\xbd\x8b\x6e\xaa\xc9\x4e\x22\xf8\x8e\xce\x0b\x7c\xc1\xf5\xfd\x54\x55\x21\x07\x26\x34\x36\xdc\xbd\xff\x19\x93\x19\x87\x71\xf5\x0e\xae\x7f\xa7\x2d\xce\x88\x66\x20\xcf\x0f\x79\x8c\xed\x75\x19\x07\x51\xe9\x90\xc5\x78\xc8\x62\x3c\x64\x31\x4e\x9e\xc5\x88\xf6\xe0\x21\x87\xf1\x90\xc3\xf8\xa1\x72\x18\x05\x75\x16\x87\xdb\x61\x15\xc3\xe7\xb1\xf3\x1f\xf0\x70\xf6\x32\x1d\x71\x7d\xf3\x52\xf7\x6f\xa0\x7f\x48\x47\xdc\x24\x58\xd4\xed\x36\x19\x11\xf5\xf0\x27\x4e\x45\xe4\x09\xbc\x8b\x44\xc4\x5d\x13\x78\x5f\xd3\x10\x31\x65\x77\x99\x84\x38\x98\xb0\x87\x14\xc4\x3f\x61\x0a\x62\xd3\x41\xb7\x17\x07\xf0\xfe\xd5\x20\xbd\xfd\xee\xd5\xbf\xbe\xfc\x0a\xfc\xb0\x37\x79\x86\x8f\x59\x83\x14\xbb\x5e\x0f\xe5\x47\x3f\x44\xf9\x51\x2c\xcc\x7b\x15\x1f\x1d\x93\xf3\xf7\xd1\x14\x21\x1d\x44\x86\x4a\x70\xce\xa1\x4e\xe9\xb8\x8c\xbf\x43\x9d\xd2\xda\x37\x87\x3a\xa5\x87\x3a\xa5\xbd\x6e\x47\x0e\x75\x4a\xe5\x43\x22\xde\xc7\x11\x58\x7c\xa8\x53\x3a\xd0\x61\x7f\xa8\x53\x7a\xa8\x53\xba\x07\x21\xc1\x87\x3a\xa5\x8f\x1b\x12\xcc\x37\x75\x86\xfd\xe5\x2f\xa3\xa5\xff\xae\xb3\xc5\x95\x3f\xac\xbd\x8e\xa9\xae\x7c\xc1\x44\x77\x1e\xb0\x7c\xa8\xa2\x3a\x2a\x60\xb9\x7e\xbf\xb9\xe3\x70\x65\xf9\x13\xad\x9e\x3a\x70\x5e\x1f\x4f\xed\xd4\x41\xdc\x3f\x8c\x91\xf0\xa5\x1e\x89\x8a\xdb\x35\x33\x35\xcb\x43\xd0\xf4\xe7\x1d\x2c\x41\x55\xd2\x4e\xce\x5b\x8d\x62\xba\x36\xcb\xdd\xed\xa0\x8a\xfc\x9f\x26\xde\xeb\x93\x8c\x86\xdf\xbb\xc0\xf7\xdd\x17\xea\x15\x5e\xa7\x3c\xf6\x1d\x4f\xea\x27\x6f\x83\x85\x7f\x1c\x2c\xfd\x28\x0b\xb2\xbb\x27\x79\xe3\xfb\x72\xdb\x93\xae\xff\xf7\x5f\xdf\x7a\xc9\x4f\xe2\xdb\x1e\xa2\x5f\x28\xf2\x53\x5a\x4b\xb2\x4f\x6d\xdd\x6a\xbd\x20\x79\x53\x2d\x81\x3b\xe6\x52\xb9\x68\x40\xfa\xf5\x57\x59\x64\x9c\xe6\x57\xe1\xb9\x60\xe1\xd4\x34\x59\xba\xe7\x94\x1e\xe1\x18\xc9\x1c\xc7\xdf\x7a\x23\x5a\xe1\x26\x9a\x87\x08\xbb\x86\x88\x44\x04\xe5\x19\xb6\x15\xb6\x94\x2d\x79\xf1\xd7\x5f\x33\xf4\x2e\x45\xfa\x3d\x45\x2f\xe3\x20\xde\x5f\x7f\xcd\x25\xcd\x43\x9f\xe6\x8e\xd3\x60\xe9\x2f\xbc\xe4\x78\x9d\xc4\xef\xee\x46\x37\xfe\xdb\x3a\xf1\x2f\x83\x77\x12\x7e\xa1\xb1\x8d\xc4\xf7\x96\xf5\x26\xa2\x78\xb9\xc5\xf7\x0f\x83\x62\x0a\xfa\x93\xb6\x71\xee\xa4\xdb\xb1\x44\xed\xd7\x6c\x13\x39\x9a\x88\x41\x3e\x6e\x23\x64\xdb\x97\x6d\x67\x5b\x6f\xf2\xee\x6c\x5f\x4d\xb3\xab\x0e\x0b\x2f\xf8\x72\xc8\xde\xe9\x4b\xc0\x86\x79\xa2\xae\xc6\x91\xae\xbb\x41\xf1\xd4\xc5\x13\x47\x9f\x35\x93\xab\xf9\x9b\x81\x11\x46\xcd\x9a\x16\x0e\x5d\xdc\x22\x88\xb4\x43\xa1\xd8\x1b\x7d\x27\x4a\x33\x2f\x5a\xec\x57\xa2\xdf\x4b\xfb\x97\xcd\xdd\xb7\xff\x69\x40\xd0\xa6\x89\x7e\x74\xac\xf2\xd3\x24\xde\x64\x78\x41\x04\x59\x7c\x48\x23\x8a\x97\xfe\xa8\x6c\xbe\x2a\x89\xd8\xcc\x3e\x43\x94\xd9\x67\xf6\xb7\x5e\x27\x4f\x39\x28\x55\x26\x20\x70\x47\x63\x8d\x6b\xa1\xd2\x19\xa5\x6a\x7a\x15\xdf\x6e\x11\x34\xd8\x96\x40\xa8\x97\x5d\xe6\x71\x68\x6f\x48\xb7\xb2\x52\xfc\x54\xcb\x20\x14\x5c\x55\x0b\x3e\xa7\x59\x5a\x6d\x09\x6d\xc3\xb2\x97\xb6\x9e\x46\x99\xf8\x88\xb8\x4c\x21\xff\xcc\xab\x75\xf4\x85\xf3\xe8\x47\x9e\x0f\x47\xa5\xd2\x92\xee\xb4\xa1\x7b\x70\xef\xc0\x4c\xcd\x2a\xfb\x42\xc5\x1a\xc3\x98\x32\x97\xea\xe9\xbf\xcb\xfc\x24\xf2\xc2\x2a\x3c\x19\x97\x0e\xc6\x90\xae\x8e\xf3\x55\x6f\xb3\x10\x06\x8b\x2b\x7f\x71\x9d\x16\x6d\xe6\x91\xed\x85\x40\xc8\x0f\xe2\x32\xc7\xf0\x8c\x7c\xd1\x07\x4d\xac\xbd\x06\xf8\x1e\xce\x90\xb9\x26\xa0\x7d\xbd\x7c\x2e\x2b\xb2\x68\xf2\x85\x4f\x68\xb2\x71\x60\x09\xcf\x15\x39\x1d\x39\x88\x46\xc6\xaf\x47\x04\x7f\x87\xb4\x9f\x97\x74\x88\x23\x03\x83\xd9\x6a\xa9\x37\x7e\x7a\x25\x0c\x29\x10\x04\x07\x09\xef\x1c\xb6\xaf\xa0\xfc\xc3\x55\x90\x16\x6a\xf3\x26\xf5\x53\xc9\x93\xb0\x92\x27\x5d\xc6\x89\x94\x5d\xf9\xd2\x19\x5e\x99\xe2\x1d\x34\xe6\xa1\x5e\xe2\x86\x28\xa4\x8e\xdc\xe7\x20\xe2\x3a\x95\x6e\x83\xec\x4a\xa2\x0a\x68\x5b\x62\x73\x3f\xa1\x57\x3f\x37\x9d\x8a\x10\xda\x7a\x79\xa9\x12\xf2\x98\xcb\x8b\x8e\xa6\x0f\xb3\x5a\xed\xa7\x2a\x52\x44\x10\x39\xa8\x16\xd2\x70\x82\x36\x23\x0c\x54\x5e\xeb\x99\xe2\x3e\x9c\x13\xaa\xc7\xea\x77\xe4\xde\x7c\xe4\xa9\x54\x65\x08\x6f\xb9\x4c\x48\xe6\xc6\x63\xf2\xc4\xcb\xef\xa4\x67\x64\x20\x92\x17\x2d\x25\x34\xc5\xdd\xb2\x88\x58\x4d\x85\x42\x82\x3f\xcb\x49\x34\x57\xe4\xad\x94\xd5\x36\x65\xa9\xec\x84\x8c\xf1\xa4\xe9\xc5\x62\xf9\x47\x29\x9a\xf5\x21\x50\x3e\x9e\xb4\xff\x6a\x36\xe6\x98\x7d\xd0\x9a\xd2\x54\x53\x58\xe3\xc5\xb5\x9f\x7d\xe7\x65\x57\x13\x1c\x81\x29\x6e\xac\x79\x47\x80\x7c\x47\x18\xca\xb9\xee\x28\x1a\xed\x8f\x9e\xe0\x82\x6d\x42\x46\x27\xa1\xe1\x4d\x21\xd1\x44\x0a\x3b\x3f\xff\x69\xc4\x50\xfb\xba\xe6\x7b\xdf\x5b\x1d\x37\x83\x97\x74\xa8\x7c\xc3\x63\xb8\x14\xd8\xed\x31\x29\xc4\x11\xb9\x53\x8a\xe2\xec\x18\x5f\x55\x95\x39\xb9\x24\x0b\xe3\xf8\xe2\x4e\x56\xe4\xc4\xff\xaf\xbf\xc8\xc8\xcf\xd8\xd7\x82\xdf\x8d\xe2\x31\x89\x43\x2d\xce\x8c\xbd\xf3\xb3\xec\x5f\x1e\xd1\xf5\xab\x7f\xdd\xfe\xf1\xea\xef\xff\xd9\x9b\x3c\xa2\xdc\x98\xe9\x5f\xd9\x6c\x87\x39\x4a\x64\x30\xe9\xc4\xe9\x4a\x35\xdf\xd2\x54\xb5\xcb\xcc\xb6\xd4\xa5\x43\xed\xb2\x32\x7d\xa7\xba\x02\x87\x2a\x66\xe3\x49\x72\xa8\x67\x76\xa8\x67\xd6\xa0\x39\xb5\x64\x37\x0d\xaf\x67\x46\xc7\x7c\x28\x34\xf6\xa7\x2f\x34\x56\xca\x7d\xa7\x38\x05\xeb\x39\x16\xdb\xc4\xc2\x1e\x0a\x97\x1d\xf2\xa5\x0e\x85\xcb\x0e\x85\xcb\xf8\x12\x34\x9f\x74\xe1\xb2\x31\x00\x5f\x87\xa2\x66\xe5\xa9\x50\x22\xb6\x4c\x57\x7c\xa7\xd0\x36\x3f\xed\xf2\x3b\xcc\x86\xab\x9a\x92\xe2\x8e\xf6\x3a\x45\xe7\x03\x17\x32\x63\x2e\x5f\xd7\x5e\x9a\x92\x92\x5b\x39\x32\xa6\x22\x2f\x92\x20\x0b\x16\x5e\x88\x36\xc8\xcd\x9a\x3d\x3d\xb7\x93\xf8\x32\x5f\xf8\xac\xb1\xde\x8e\xd5\xa7\xde\x8e\x25\xaa\x86\x26\xda\x07\x1f\xa4\xe2\x4e\x1d\x16\xc3\x9a\xa8\x9c\x8e\xb5\xa3\x72\x3a\x96\xf8\xc8\xd8\x65\x55\xb2\xaa\x0e\x4e\xe7\x9e\x4b\x31\x68\x63\x01\x17\xad\xb0\x73\x3c\x77\xd7\x8f\x36\x8e\xdb\x04\x2f\xf1\x17\x4e\x2c\x78\x0b\x27\xe4\x27\x2f\x78\x73\x1d\x9b\x92\xf1\x23\x16\xbc\x1f\xb4\xbc\x19\xa9\x3b\x38\x9d\x10\x65\x8b\x96\xd1\x32\x65\xe3\x21\x07\x78\x1e\xfe\x60\x42\x93\xc3\x02\xaa\x03\x0b\x4c\x20\xe8\x3e\x7c\xdd\xb0\x2e\xb5\xf8\x00\x20\x70\xa8\x29\xf6\x49\x02\x08\xbc\xc1\x3a\x57\xc7\xa8\x88\x62\xd6\x39\x2c\xda\x56\xc7\xc0\x68\x63\x87\x6a\x67\x9f\x2e\x78\x80\xd8\xca\x1b\x77\x20\xf5\x4b\x88\x16\xb1\x31\xa8\xff\x61\xfa\xca\x60\x82\xad\xb1\x83\xb2\x67\xc2\x9d\x05\x04\x7f\xd9\xd9\x04\xf7\x03\x50\x60\xc0\x65\x26\x1e\x3c\xda\x54\x87\xb2\x7b\x7f\xba\xb2\x7b\x7f\x4e\x98\x81\x8f\x03\x7b\xa0\x03\x6f\x60\x95\x55\xf0\x09\x46\x02\x10\x74\xc6\x64\xed\x49\xd0\xd8\x5e\xe5\xe4\xfd\x11\x64\xda\xd5\xff\x7e\xfd\x73\xbf\x9c\xbc\x12\x7c\x40\x9c\x93\x47\x50\x0a\xb6\xc9\xca\x6b\x4c\xc6\x53\xe4\xa7\x61\x10\x5d\xe3\xa8\xb3\x79\x9e\x98\x87\xda\x25\xcf\xf2\x44\x82\xfe\x0a\x7f\x0f\xbd\x6c\x78\x79\xa0\x4a\xe0\x84\x99\x5b\xfd\xca\xb9\xfc\xda\x4f\xaf\xde\xe4\x77\x09\xa3\xe2\xc3\xbf\xf6\xbd\x70\x92\x98\xd7\x5a\x90\x39\x63\xf1\xa1\x79\x67\xf1\xfa\x38\xcd\xbc\xc2\x1e\x1c\xa0\x91\x6a\x55\x0b\xa8\x74\x53\x37\x10\x62\xbb\x00\x70\x49\x7a\x96\x49\xa1\xef\xa5\x99\x14\x47\xbe\x74\x85\x49\x24\xe1\xdc\x22\x29\x8e\xf0\xb3\x5c\x1e\x48\x41\x2a\x5d\x7a\x41\x18\x44\xab\xde\x95\x10\x1a\x26\x55\x78\xe1\x1f\x7d\x4e\x57\x5e\x2a\x79\x12\x1d\xcf\xb6\xd3\x2a\xae\x19\x76\x35\xad\x30\xe4\x66\x93\x4a\x5e\xe2\x4b\xb4\xd7\xa1\xd5\x29\xf2\xff\x48\x95\x0a\xd4\x50\x14\xf3\xad\xab\x7d\x7c\x52\x23\x62\xb5\x07\x68\x0a\xdd\xb1\xe2\xa2\x8d\x93\x07\xbf\xe0\x12\x86\x74\xa5\xcf\xe2\x4d\x94\xb5\x7b\xdc\x3b\xd6\x41\x6e\xcc\xdf\xb1\x69\xfe\x0e\x97\x48\xac\xe6\x27\x54\xad\x06\xe8\x39\x99\x78\x5a\x55\xd7\x45\xd9\xb1\xdf\x95\x70\x35\x73\x5a\x69\xaf\xea\x48\x60\x62\x5b\xd9\xf3\xa5\x38\x4c\x9a\xdb\xca\x87\x45\xdf\xe4\x22\x23\x4d\x36\x8f\x80\xbb\x95\xa9\x08\x45\x79\x2e\xae\x74\xca\x9e\x13\xa3\x32\x91\x73\x7a\x8b\x6b\xae\x4d\xd0\xed\xfc\x31\x53\x7b\xa5\x5a\x66\xe7\x75\x10\x2d\x07\x14\x5d\x95\x87\xa7\xbc\x0a\x32\x3b\x45\xdb\x07\x34\xf0\x62\xe3\x56\x52\xba\xbe\xfc\x06\x4d\x0d\xd1\x38\xf3\x93\x9b\x20\xf2\xb2\x20\x5a\x1d\xaf\xbc\xcc\xbf\xf5\x8a\x7b\x57\x61\x72\x78\xf1\x61\x10\xad\x12\x3f\x4d\xab\x1f\x8d\xf7\x7f\x75\x5e\x0f\x89\xdd\x62\x22\x3a\x70\x6e\xb1\xca\x77\x7a\x1b\xfd\xe4\xa0\xc8\x94\x45\x83\xbe\x0d\xb2\xab\x78\x83\xd4\x3c\xfc\x77\xe5\x9c\xf8\x76\xab\x96\xd1\x90\x9c\xbd\xea\x11\x35\x64\x41\xb6\x48\xe9\x1b\x41\xd4\xaf\x48\xe7\xb8\x26\xe4\x4a\x56\xe4\x67\x69\x1a\x2f\x02\x2f\xf3\x97\x34\x65\x67\x28\xb5\x7b\x37\x48\x94\x60\x7f\x59\xaa\xc0\x53\x2e\x46\x4f\xdd\x61\x18\xc3\xef\x9c\xc5\x1f\x73\x35\x36\xeb\x34\x4b\x7c\xef\x66\xfc\x3a\x0c\x53\x56\x44\x7b\xc5\x65\x86\x7e\x16\x47\x11\xf6\xeb\xfc\x6f\x90\x5d\x7d\x95\x2f\x47\x79\x82\x72\x7f\xc7\x09\xf0\x6d\xca\xde\x21\xff\xbd\x87\xa6\xd7\x76\x2e\xed\x62\x51\x7a\x69\xe0\x9d\xa6\x61\x5b\x42\x3e\x4e\x24\xa6\x7b\xb9\x39\x3e\x7f\xb0\x00\xe9\x9c\xec\x87\x9d\xe5\x6e\x67\x56\x2e\xf3\x98\xeb\x98\x31\x93\xea\x5c\xb0\xa9\x4d\xa3\x41\x5a\x6b\x55\x07\xbc\xd8\x2c\xae\x85\xc5\xfb\x1b\x01\x30\xf3\x3b\xf5\xf3\xb2\x08\xb7\xde\xa6\x6c\xb6\xa7\xd7\x7e\xb0\x94\x5a\xec\x20\xf5\x90\xb6\x2c\x5f\xc6\xc9\x8d\x97\x1d\x47\x9b\x9b\x0b\x9c\xc2\xb7\x0e\x37\x89\x17\x06\x7f\xf8\xb9\x57\x16\x3b\x43\x85\x69\xb7\xd8\x6f\x1a\x27\xe3\x3d\xa5\xfb\x97\x4f\xbb\x87\x69\xb4\xd9\xf3\xdb\xff\x7d\xf3\xe4\x67\x7d\xff\xd2\x68\xa3\x38\x7a\x4e\x26\xf4\x5d\x89\xee\xaa\x70\x36\x74\xef\x4c\x5b\x62\xbb\xed\x5b\x66\xee\x9a\x9d\x17\xe7\x7c\xde\x45\xd2\x6e\x3d\x57\xd7\xed\x9b\xab\xab\xeb\x8c\x0d\x69\x1d\x72\x75\x07\x25\xa6\x0a\xf2\x51\xdd\x96\x1c\xd8\xad\x12\x4d\x9b\x1b\xee\x93\x66\xda\x36\xac\x6d\x52\x73\xbb\x28\x30\x6d\xb2\x6d\x5b\xd3\x83\xa9\x30\x3c\xd9\xb6\x7d\x66\x5b\x27\xdb\xba\x3b\x4f\xb6\xd5\xb5\x32\xd9\x56\x07\x8f\x9b\x6c\x4b\xe0\x04\x86\x25\xdb\xe2\x31\xef\x2e\xd9\x56\xd7\x50\x0f\x3d\x92\x6d\xdd\x4f\x28\xd9\x16\x1a\x13\x27\xdb\xea\x36\x97\x6c\xab\x3b\x1f\xa2\x96\x20\x9d\xc5\xa3\x26\xc7\xea\xfa\x21\x39\xf6\x13\x4d\x8e\xc5\xb1\x42\xd5\x30\xc5\xfc\xe1\x2e\x02\xf9\xc5\xbc\xb4\xb3\xe4\x58\xbb\x47\x72\xac\x23\x48\x8e\x75\xda\x38\xff\x91\x93\x63\xcd\x72\x90\xbb\x4d\x8e\x15\x07\xd7\x43\x0b\x91\x75\xca\xe4\x58\x58\x2f\x73\x3b\x32\x01\x96\x42\x4a\x1c\x12\x60\x07\xe6\x61\xe9\xfa\x21\x01\xf6\xe3\xcc\xc3\x82\x9a\x48\x80\x6b\x9f\x6c\x02\x2c\x84\xf3\xe6\x04\x58\xa8\xf7\x48\x80\x85\xba\x40\xde\xeb\xa2\x7d\xf0\x38\x09\xb0\x50\x9f\xc8\xa8\xd4\x77\x93\x00\x0b\xc5\x61\xb3\x10\x28\x10\x4e\x16\xbe\xcb\xc2\x2f\x74\x8b\xc6\x49\xc5\x60\xee\x77\xfb\xa4\x85\x60\xb7\xd3\x03\x93\xe1\x63\x96\x8c\x40\xa4\xda\x82\xe1\xaa\x6d\x53\x12\x69\x87\x6a\x59\xc7\x6c\x77\x6b\x58\xf5\x2c\xbf\xed\x42\xd8\x54\x8f\xbb\x22\x18\x61\x64\x92\xa8\x90\x0e\xd6\xa0\x6c\xa4\x6a\xec\xc1\xd0\xd5\x1d\x72\x42\x55\xe3\x1d\xc4\xa1\x29\xe4\x46\x7c\xba\x28\xa0\xe1\xac\x82\xdf\x71\x05\x19\xc6\x6e\x5d\x2c\x4d\x61\x7b\x8c\x39\x95\x80\xdb\xc7\xca\x18\x7e\x37\xe7\x6e\x61\x49\x6c\xc1\x86\x34\x08\xe2\x43\xf0\xe0\x31\xee\x8b\x5c\x17\xe6\xbf\x3d\x16\x93\x09\x4c\x5d\xe0\x3c\x2a\x93\xf1\x98\x1d\x75\x8b\x76\x12\x26\x73\x46\x30\x99\x08\xf9\x43\x01\x02\xc3\x77\x2c\xc4\x87\x39\x04\xe2\x43\x37\x3e\x56\x88\x0f\xa2\x52\x1f\x20\x3e\x3e\x3e\x05\x6a\x4a\x88\x0f\xf6\x1e\x12\xa3\xbb\x31\x91\xe3\x84\x4d\xf2\x58\x11\x73\x90\x38\x6c\xd9\x32\x18\x05\x6a\xbb\x2d\xc3\x48\x57\xad\xdf\xf1\x42\xae\xd5\xc8\x21\xb3\xbb\xf3\xa5\x4e\xa6\xd1\x92\x80\xb4\x48\xf6\xff\x9a\x0b\xe6\x6f\x3d\x48\x0c\xc1\x41\x62\x88\x36\xfc\x76\x47\x89\x5c\x46\xe4\x1b\x03\x1d\x84\x02\x89\x6b\x74\xa1\x89\xf4\x01\x23\xd9\x0e\xaa\x69\x02\x39\x3e\x9c\x29\xa9\x48\x0a\xa2\xcc\x5f\x25\x1e\x5f\x72\x78\x17\xbc\x69\xec\x2d\x56\xcf\x94\xbc\x39\x40\xc9\xf9\x50\x58\x3d\x53\xb3\xf6\x01\xea\xe7\x53\x80\xfa\xd1\xe1\x01\xea\xe7\x00\xf5\xf3\x28\x50\x3f\x98\xf5\x0e\x50\x3f\xdb\x1c\x80\x1f\x3f\xd8\x8f\x90\x09\xba\x46\xf6\x31\x81\xfd\xec\x68\x82\xc3\x11\x57\x46\x79\xce\x06\x32\x18\x8d\xcc\xdd\x2f\x38\x9f\xa9\x57\x60\x9f\xe0\x7c\x76\x33\xb7\x1d\x30\xd7\x01\xd0\x67\xcf\x01\x7d\xd8\x42\x70\xd3\x81\xfb\xec\x1f\xa6\x0f\xb6\xef\xf6\x25\x59\xe5\xab\xe5\xb3\xe4\xdb\xb3\xcb\x0b\x71\xb2\xca\xd3\xc2\x4f\x58\xdd\xc0\x95\xac\x4d\x9a\x74\x79\xbc\xf6\x22\xbf\x1e\x94\x2c\xb7\xa5\x6e\xd6\x74\x6a\x2e\xd3\x22\xef\xbf\x15\x0e\xa1\xba\xf1\x6a\xa9\xb1\xa2\x07\x4d\xc9\x71\x54\x25\xbb\xf1\xa3\x0d\x9d\x8e\x10\xf1\x06\x7b\x95\x07\x1d\x2d\x3d\x74\xbd\xe1\xf0\x41\x75\x1d\xb7\xe9\x0e\x1d\x53\x52\xcd\x7b\x10\x1a\xf7\xbd\x13\x57\x3b\xa6\x81\x68\x37\x6a\x12\x9a\x22\x87\x01\x65\x02\x39\x89\x69\x9e\x13\x1a\x51\x16\x27\x8d\xfe\xee\x21\xf3\xc7\xcb\x9a\x05\x59\xd8\xec\xfc\x6e\xd4\xe8\x1b\x06\x18\xc5\x91\x5f\x32\xee\x32\x5e\xa4\xc7\x61\x10\x5d\xb7\x0f\xb7\x40\x55\x31\x14\x39\xf3\x2e\x72\xbc\xac\x63\x50\x69\x1c\x8d\x37\xcf\x2b\xa0\x08\x2c\x80\xcf\x0f\x96\xcf\xbe\xfd\xf7\x9b\x1f\x5f\xfd\xf6\xfc\xdb\xb3\x37\xbf\xfd\xf8\xfd\xab\x02\x5d\x42\x46\x12\x27\xf2\x17\xd9\x93\xd0\x46\x62\xf7\xf2\x32\x58\x50\x20\x29\xd4\x3e\x62\x6c\x39\x8a\xe3\xb5\x1f\xf9\x89\x14\xc5\x89\x7f\xe9\x27\x09\x09\x31\x27\xa3\x4a\xc8\x71\xf0\xdb\x45\xe8\xb5\x4c\x67\x18\xfd\x11\x65\x52\x75\x19\x2f\x36\x88\x0f\x3c\xba\x9d\x06\xdf\x42\x0c\x4f\x3b\xe8\xf5\x8a\x5c\x4f\xca\x66\x7e\xed\x79\x90\x46\x6f\xc7\x9c\x56\xcc\xa9\xf0\xd8\x27\x54\x16\x5f\xfb\xd1\x5e\x61\xce\xfd\xf3\x22\xfd\xf1\xf7\x1f\xdf\xfc\xd8\x8a\x39\xf7\x6c\x91\x27\xfe\x3d\xcb\x15\x18\x0c\xbe\x90\xdc\x78\xfc\xaf\xa3\xfe\xf0\x34\x8e\x96\x7e\xe8\xe3\x5c\xc6\xa7\x71\xb4\x49\xe9\x0f\x61\xbc\x8a\x37\x19\xf5\x85\x85\x48\x14\xb0\xf8\x76\x98\x94\xa3\xe0\xed\xf0\x97\x14\xdc\x6e\xae\x94\xa8\x76\xe5\x75\xc6\x00\x01\x3b\xf9\xd1\x53\x7a\x19\x74\xc6\x20\x63\xf1\x34\x9e\x2d\x16\x7e\x9a\xc6\xc9\xcb\xe7\x5c\x70\x13\xf7\x78\xa4\x67\x47\xae\xc2\x46\x50\x61\x76\x23\x56\x14\xa4\x7e\xe9\xf0\xd2\x6e\x80\xee\x24\xee\xbf\x9f\xe3\x4d\x22\xe1\xa5\x1d\x16\x35\x30\x54\x24\x76\xf9\xaf\xeb\xe7\x10\x8b\xee\x65\x50\x74\x2f\x6f\x11\xa6\x2a\x1e\x6d\xaa\xfa\xcb\x20\x2b\xa1\xbd\xc4\xcb\x58\xe6\x8c\xb1\xde\x4f\x11\x3f\x1c\x3b\xcc\x47\x55\xbc\xb3\x1e\x72\x7c\x17\xd8\x54\x02\xd6\xea\x99\x59\x07\x15\xf9\xcd\x22\x5e\xfb\x0d\x6b\xd3\x93\xfd\xaa\x07\x29\x0b\x26\xf3\x2a\x5e\x78\x21\x41\xee\x89\x49\x00\xf3\x2a\x8c\x2f\xbc\x70\xa2\xb3\x53\xaa\xe0\x2a\x90\x13\x20\xd9\x84\x7e\x2a\x84\x57\x98\xb7\xc1\x74\x6d\x45\xc7\xe7\x7e\xba\x48\x82\x75\xbe\xdf\xa6\xa3\x26\x8b\xb1\xc5\x75\x32\xaf\x43\xaa\x6d\x4f\xd2\x69\x98\xd8\x5b\x8c\x74\xfd\xb2\xac\x73\xe5\xa5\x6f\xfc\x45\xe2\x67\xcc\x5e\x1d\x76\x11\x2f\x2f\xe2\xf5\xdd\xf1\xc5\x26\xcb\xf0\x39\x55\x71\x1a\xe5\xa3\x3d\x2f\xea\xcd\x17\x9d\xf1\x8e\xa3\xba\x4e\x88\xd9\x4c\x4d\x8b\x0f\xb6\xba\x84\x1f\xd3\xd3\x96\x57\xf6\xf5\xaa\x78\x45\x1e\xc0\x7c\x2c\xfc\x50\xd9\x86\x5e\x38\xe8\xae\x12\xff\x52\xae\xde\x1e\x0d\x97\xcf\x63\x6e\xbb\x3a\x38\x94\xfa\x64\xb7\x51\x1a\x30\x94\xe4\x6d\x12\x64\xbe\x94\x6b\x4b\x5c\x2e\x35\xcc\xa1\x0e\xfa\x67\x39\x55\x6e\x81\x5e\x2c\x83\x6c\x24\x54\xe8\x4f\x81\x7f\xdb\xf3\x38\x1d\x70\xe7\xd3\xc1\x66\x8d\x54\x5a\x6e\xd6\x61\xb0\xf0\x06\x53\xaa\x6f\xe5\x06\x9d\xc9\x43\x5e\x84\xc1\xe2\xba\xea\x6d\x67\xae\x6d\x01\xcd\x49\x01\x7b\xc3\x5e\xec\xba\x3d\xcf\x29\x35\xe6\xfa\x61\x0b\x39\x30\x4a\x35\x36\x71\xc0\x63\x3f\xcd\xb8\x37\xa2\x55\xb9\xa2\xd4\xae\x58\x7a\xd1\xca\x4f\xe2\x32\x2f\xaf\xc7\x1a\xc3\x7d\x5e\xe3\x57\xd8\xf2\xda\x59\xf2\xf2\x82\xb5\x04\xb7\xba\x43\x72\xca\x45\xc8\x73\xd1\xe6\xe3\x0e\x87\xde\x83\x1f\xe7\x48\xcc\xff\xa3\x56\xaf\x14\xd6\x29\x3c\x88\xca\x3d\x07\x7b\x11\x2f\xef\xc6\x0e\x35\xd7\x05\xc5\x90\xb9\xec\x7f\xcf\x12\x5f\xba\x8b\x37\x52\xba\xa1\x3f\xdc\x7a\x51\x26\x65\xb1\x94\x66\xf1\x5a\xda\xa4\x41\xb4\x92\xb2\xab\x20\x95\x9e\x9d\xbd\x22\xf2\xf5\x0b\x82\x04\x78\x1b\x84\x21\x22\x05\xfe\x28\xde\x64\x6a\xd3\x30\x44\xba\xea\x2e\xe8\x45\x39\x73\x1b\x92\x11\xc6\x74\x87\x69\x29\x64\xc3\x0d\x9c\x4d\x7b\x9c\xd5\x28\x32\x35\x05\x5f\x4d\x20\xc7\xdb\xf4\x81\x91\xe7\x24\xd8\x67\x19\xfa\x63\x3a\xea\x84\xfc\xc0\x02\xd4\xfa\x58\x05\xe8\xa6\x42\xde\x41\x24\xee\x39\xd2\x47\x96\x9e\x9b\xd4\xaf\x8a\xcd\x4f\x46\x3e\xda\xc3\xe4\xe3\x8f\xa9\xbf\xa5\x70\xb4\x77\x21\x1c\xad\x1d\x28\xb9\x1d\x76\x0a\x76\x94\xd7\x8c\x14\x45\x2e\x9f\x94\x28\x9c\xc0\xdc\xde\x68\xd9\x42\xc5\xd5\xf6\x59\x3c\x3f\xc7\x84\xfc\x08\x24\xb4\xf1\xb1\x4a\xe8\x65\x9d\xc2\x83\xa8\xdc\x73\xb0\x8f\x2c\xa4\xf3\x0d\x89\xe4\xf4\x27\x26\xa3\xcd\x61\x32\x9a\xec\xa8\x2d\xc5\xb4\x08\x10\x68\x20\x99\xfa\x44\x90\xf5\x68\x70\x64\xb4\x9a\xde\x07\xac\xa8\x2b\xa9\xa3\x1b\xb5\xb8\x08\x24\x2b\x02\xcc\x70\x5c\x58\x09\x48\x9c\x6e\x2e\xd2\x2c\x21\xa0\xc4\x8a\xbc\xf0\xa2\xf2\x8c\x18\x7c\x83\x5e\xbd\xb5\xde\x8f\x5b\xf4\x28\xce\x82\xcb\x80\xc4\xc5\xa5\xfb\x72\x9d\xee\xfc\xfc\xdf\x5f\xb4\x7f\x81\x9f\xc4\xd7\xe9\x7e\x92\xc4\x04\x57\x37\x47\x9a\x79\x9a\xdd\xad\x8b\x7b\x6d\xf4\x2f\x79\xa5\x76\xad\x4d\x73\xb0\x04\x6e\x2f\x7d\xae\xc8\x8b\xc4\xf7\x32\x7f\x3c\x6a\x95\xa8\x5d\x88\xc6\xb0\xc1\x9e\xb3\x2d\x8a\x78\xfc\x70\x45\x95\x15\x5c\x1c\xeb\xc2\xf7\x23\xc9\x5b\x2e\xfd\xe5\xd0\x02\x53\xa4\xb0\xd4\xad\x97\x4a\x5e\x24\x61\x1a\xa1\x76\x88\x63\x81\xf6\xd0\xd4\xe4\x90\xdc\xa1\x26\x02\x6f\xd6\xcb\x8f\x87\xc0\xa9\xf7\x76\x12\x02\xa7\xde\xdb\x0f\x46\x60\x1a\x00\xb2\xd7\x04\x46\xc4\x21\xe3\x9c\x82\xba\xb8\xa5\x0f\x46\x5f\x12\x3f\xb3\xd7\xe4\x2d\xf8\x17\x8f\x75\x29\x79\x69\xc3\xad\xbd\x51\x73\xf4\x3b\x24\xa9\xad\x3b\xcf\x68\xd0\x0a\xa1\x71\x7c\x38\x09\x93\xb6\x2c\xcf\x23\xac\xcb\xcf\xf1\x86\xd6\xf1\xbb\x2d\x3c\xb8\xbe\x14\xf9\xb7\xa5\x37\x62\x7b\x0a\xe7\x0d\x7b\x59\xd9\xea\x20\x22\xef\xe8\x61\x6e\x7e\xe7\xc5\x94\x4c\x85\x9e\xdd\x29\x46\x8d\x4f\xd2\x8c\xa8\x13\x03\x31\xf6\x98\x8b\x2a\x12\x44\x33\x30\x6a\x20\x37\x57\x2e\xca\x80\x5d\x6c\x55\x54\x22\x44\x8f\x64\x45\x54\xe5\x86\x81\x8e\xac\x18\xec\xfc\x5f\xe5\x13\xa9\x9e\x7b\x58\x19\xb5\x22\xcf\x6a\x37\xfd\x7d\x73\x8b\xbb\x95\xdb\x22\xa5\x01\xeb\xb4\x58\xbb\xcd\x92\x0d\x7a\xe6\xd3\x1c\x89\xb1\x3a\xac\x40\x67\xdc\x0f\x65\x96\x0d\x08\xda\x17\x5d\xf6\xcb\x97\x0b\xcf\x7b\xf6\xf6\x77\xb1\x2e\xbb\x8e\xc3\x60\x41\xb2\x56\x98\x1f\xf3\x22\xc5\x4b\x3f\xca\x82\x8c\x7b\x76\xe3\x45\xde\x0a\xf3\x74\xfe\xac\x49\xcb\xe5\xd2\xe9\xe1\xbc\x9a\xce\x8d\xe3\xe9\xe4\xef\xf2\x4e\xe9\x45\x2f\x7a\xf6\xec\xec\x15\xea\x10\xff\xe9\x8e\xd6\xe3\xe0\x38\x5e\x58\x88\x72\xb8\xd4\x15\xd6\x07\x9d\x73\x53\x1c\xde\x2a\x9b\xc4\x9c\x1f\x75\xd6\x04\xe0\x3f\x5b\x84\x8c\x55\x4c\xf0\xd7\xc5\xf4\xfa\xc4\x6e\xb5\x44\x93\x95\x0e\x4e\x0e\x54\xa2\xe1\xe7\x3e\x14\xde\x2e\x95\x59\x90\x2a\x43\xaa\x45\xf3\x72\xd2\x16\xc5\x63\x42\xc5\xe6\x6a\x86\xb6\x86\x8a\x0e\xcb\x73\xee\x13\x77\xda\xe4\x92\xee\xe0\x54\x66\x83\x4e\xc3\xa9\x53\xc0\x54\x6d\xc1\xa9\x2f\xd9\xf9\xec\x88\x1b\xa1\xb2\x3d\xbe\xc9\x00\x6e\x33\xc5\xdc\x66\xf6\xe7\x36\x73\xe7\xdc\x66\x08\xd4\x25\x0e\x14\xc6\x54\xac\x09\x22\x6e\x46\xb1\xc4\xf7\xe8\x48\x1d\xce\x0d\xfc\x4a\xbd\xf2\x57\xde\xe2\x8e\x68\xa6\xa9\x74\xe5\xbd\xf5\x25\xff\xe6\xc2\x5f\x2e\xfd\xa5\x84\xcf\xec\x6a\x5d\xeb\xb1\xc4\x6d\x32\x17\xea\x85\x24\xeb\x9b\xb9\x38\x7f\xab\x58\x11\xec\x79\xf9\x7d\x1c\x0a\x0f\x4b\xf4\x7c\x77\x47\xa5\x48\x54\xc0\xc7\x15\x15\x23\xf9\xa2\xbf\x94\xa8\xe3\xfc\x8c\x86\xd7\xe8\x92\x11\xba\x58\x46\xe8\xfd\x65\x84\xbe\x73\x19\x01\x07\x24\x57\x77\xdb\x06\x98\xd7\xef\x9e\x64\x77\x6b\x3f\xbe\x6c\xcf\x7a\x26\x95\xfd\xe8\x1f\xa8\x12\x8a\xdd\xaf\x34\x17\x7b\xbd\xf6\x31\xe8\x25\x49\xba\x26\x7a\x78\x90\x1e\x87\x78\xcb\xe7\x6a\xed\xdd\x13\x8a\xee\x31\xd2\xe2\xa8\x2b\xf6\x23\x0c\x8e\xe2\x2f\xaa\xff\x2e\xf3\xa3\xe5\xd1\x7d\xe6\xad\xc8\x08\xe4\x87\x6d\xcc\x8e\xfd\x2b\xf1\xf7\xfa\xe6\xab\xff\xf9\xfa\x39\x8c\xf6\xa7\xc4\x5f\xb6\xf3\x2a\x7b\x13\xd6\xcf\x23\xb9\x6d\xb5\xea\x79\xd0\xa4\xd7\xf6\x9d\xd5\xf3\x20\x03\xa2\x06\x8c\x52\x74\xa5\x87\xea\x79\x2d\xb5\xe3\xf2\x24\x88\x4a\xe5\x38\xe0\xd4\x8b\xd4\x29\xb2\xca\x41\xa8\x28\xdb\x40\xfd\x8b\x3a\xa8\x2a\x01\x2d\xd0\xce\xcd\x5f\x17\x21\x1b\xc3\x6a\xe8\x0d\xa3\x03\xc5\x5f\x12\xbe\x34\x69\x99\xbd\xd6\xa6\x07\x13\x6a\x70\x99\xbd\x8e\x99\x45\x9b\xed\xca\xec\xe1\xe6\x77\x5b\x66\x0f\xb8\x65\x99\x3d\xa8\xb1\x63\x1e\x17\x8a\x32\x4e\x79\x03\x25\x20\xf9\xc0\x32\x7b\xb0\xa9\x34\x9f\x50\xd3\x19\x1c\x19\x00\x5c\x45\x50\xb7\x42\xf0\xde\x54\x50\x86\xfb\x50\x66\x0f\xe8\x13\x97\xd9\x2b\xeb\x96\xd0\x02\x78\x1f\xa2\xcc\x1e\x68\x83\x66\xfc\x40\x65\xf6\x20\x3c\x94\xd9\xfb\x44\xcb\xec\x01\x11\x44\x20\x18\x8e\x11\xd8\x1b\x83\x57\xcc\x4b\x45\xcb\x93\x99\xa6\xb5\xe2\x0b\xcd\xb0\xbc\xb6\x00\x96\xd7\x6e\xe3\xfc\x47\x2e\xb3\xa7\x97\x83\x6c\xf0\x31\x8f\x89\xe3\x13\x9c\x06\xb6\xd8\x08\x36\x11\x59\xa7\x4c\x82\x04\xa2\x00\xb8\x51\xa0\x2e\xa0\x09\x68\xed\x50\x66\xaf\xb5\x16\x02\xe6\xf3\x3f\x63\x7d\xa9\x9a\x41\x80\x88\x50\x35\x80\x7a\x83\x01\xec\x0d\xf0\xeb\x94\x15\x12\x86\x14\x95\x21\xd0\x14\xc7\xdc\x55\x2a\x85\xab\xc8\xf1\x2b\x26\xba\x16\x93\xc5\x40\xec\xd5\xc2\x7b\x18\x96\x7d\xde\x75\x02\xb4\x00\xb3\xb3\x3b\xe3\x83\xc0\xb2\xf7\x62\xd0\x8a\x65\x0a\x27\x32\x43\x6b\x9e\xe1\x9e\x01\xcc\xfd\x40\xe0\x3f\x24\x8a\xbb\xf8\x9d\x03\x52\xfb\x58\x0b\x00\xfc\x59\x91\xda\xcf\x70\xe8\xf2\x0f\x41\x0f\x98\xf5\x95\xdf\x0d\xb2\xce\x34\xd7\x01\xff\xbe\xf2\x05\x28\xeb\x93\x5d\xdc\x34\xe1\xa2\x43\x70\xc0\x45\x1f\x81\x8b\x2e\x0f\x05\xad\xde\x04\x2a\x0e\x8a\x67\x41\x10\xc7\x59\xcd\xe7\x3d\x00\x9d\x1b\x99\x18\x34\xfc\xb5\x81\x11\xba\x46\xd8\x06\xee\x5c\xdd\x1d\x83\xe1\xc0\x07\x4c\xb2\x8e\xca\x5d\xff\xe3\x6e\xa6\x38\x18\x99\x7b\xf0\x61\x7a\x80\xae\xde\x17\xe8\xea\x09\x90\xaa\xc5\xb7\x9c\xfb\x11\xf2\x49\x36\x57\x2c\xb8\x79\x55\xe4\xa7\xab\x30\xb8\xb9\xf1\x93\xf2\x63\xfe\x3a\x56\xc9\x66\xf7\x78\xf0\x4a\xa2\x78\x4a\xf8\x59\xfe\x17\x29\x45\x7f\x53\xf0\x63\xf2\x46\x78\x7a\xff\xf0\x59\xe2\x67\x9b\x24\x92\xe8\x15\xee\xb5\x7f\x97\x1e\x25\x33\xf5\x32\x4e\x5e\x78\x8b\xab\x23\xee\x9a\x37\x3c\xf7\xe7\xa7\xc9\xb9\x3f\x47\x93\x09\x55\x3f\xda\xdc\xf8\x89\x77\x11\xfa\xa7\x7f\xf9\x0b\xfb\xab\x12\xaa\x38\xd1\x70\xb5\x29\xff\xca\x3e\x50\x8e\xe8\xd6\x0f\x22\x29\x7c\xff\x3e\x54\x83\x28\xc8\x02\x2f\x0c\xfe\xf0\x93\xd9\xe7\x9f\x1f\x85\xea\x6d\x12\x64\xe4\x53\x6d\xa6\x84\xa7\x91\x9a\x86\xc1\xc2\x3f\x9a\xa9\x89\xff\xd6\x4f\x52\xf2\xd3\x72\xb3\xf0\x99\x01\x46\x4a\x32\xbb\xa7\xb3\x49\xc8\x54\x67\xef\xdf\x47\x0f\x33\x25\x9c\x29\xde\xe7\x9f\x93\x9b\xe6\xbf\x9c\x9e\x72\xfd\xe1\xee\xf0\x68\xf8\xe7\x5f\x70\xbf\xa9\x0b\x2f\x0c\x8f\xbc\xd9\x09\x69\x44\xe1\xfe\x48\xef\xb0\x67\x0a\xf9\xf7\xb4\xde\x43\xd3\xfd\x78\x86\x86\x16\x9e\x22\x91\x35\x53\xc2\x87\xa9\xae\xd1\x83\xf6\x6b\xf4\xff\x3e\xff\xef\x93\x57\x5a\xb8\xe8\x7b\x8d\xee\x6d\xb2\xab\xe7\x81\x17\xc6\xab\xea\x0d\xb7\xb7\x0e\x64\x45\x7e\xed\x47\x9b\x97\x24\x84\x02\xfd\xf8\xa6\x40\x8e\x56\xe4\x9b\x78\x89\xcd\x4f\xd4\xc4\x3f\x63\x8c\xe8\xca\xb5\x26\xf8\xfb\xd3\xe5\x02\x5f\x41\xa7\x6b\x6f\x41\x2e\x08\xca\x9a\x80\xf2\xe7\xe5\xe9\x20\x54\xf3\xb5\x8a\xd5\x20\x6f\x52\x5f\xf2\x16\xe1\xb0\x48\x46\x2c\xdc\x73\x55\x96\x02\x4f\x43\x36\x09\x9f\xd1\x95\xd0\xc8\x8f\x97\x74\x3e\xf4\x8c\x4c\x13\x3c\x85\x34\x88\xae\xab\x36\x80\xf0\x66\xbd\x8c\xda\x92\x53\x3f\xcb\x82\x68\x95\x9e\x3c\xa1\x02\xe1\x24\x4f\xde\xe7\x15\xda\x9e\x2f\x43\x64\x98\xcb\x89\x8f\x46\x19\x27\xc1\x1f\x3e\x1b\xc5\x05\x4b\x62\x6c\xa2\xe2\x8d\x25\x5d\x0e\xfa\x0b\xb9\xbb\xef\x7f\x6f\xcf\xae\x80\xc5\xd8\x6d\x5c\x0f\xa3\x7d\x7b\xe6\x78\x33\xae\x58\x31\x24\x47\xbd\x12\x5e\x9e\x02\x6e\x63\xe0\xc7\xf5\xfa\xf8\xc2\xbf\x8c\x13\xff\x38\xbd\x0e\xd6\x18\x4f\x7c\x30\x96\x69\xc9\x19\x05\xc2\xb0\xa1\x9c\xeb\x0e\x36\xeb\x64\x02\x8c\xa0\xf0\x26\x0f\x59\xa5\x7c\x2f\xc4\x6b\x3f\x12\x38\xe3\xc7\x66\xf5\xbf\x8a\x57\x41\xb4\x03\x3c\xb6\x7d\x9c\xed\xab\x78\x25\x71\x93\x1d\x36\x07\x3c\xa6\xea\x66\xc6\x96\x4f\x8e\x33\x9d\xc3\x4f\xe3\x51\x2b\xf2\x53\x2f\x09\x3c\xe2\xe1\x45\x54\x3e\xce\xe2\xd5\x2a\xa4\x65\xdc\x35\x3c\xff\x38\xf5\x73\x23\x47\xc3\xd6\x93\x1f\x35\x6c\xc1\xc2\x64\x91\xc9\x2c\xa4\x2c\x96\xce\x68\xc9\xd0\x1e\xbb\xaf\x81\x09\x13\xff\xb2\xca\xe9\x4a\x39\x27\xaa\x80\x17\xee\x86\x7c\x55\xa8\x6b\xaf\x09\x66\x76\xc7\x40\x11\xb9\xe4\xbd\x82\xad\x17\x86\x55\x32\x3d\xc6\x1d\xe0\x58\x80\x09\xf6\xf0\xb8\xc4\xe7\x1e\x6d\x99\x1c\x7e\xec\x91\xc7\x9c\x84\x68\x9a\x17\x37\x41\x56\xf8\x4e\x99\x58\xce\x1c\xd4\x25\xaf\x8b\x5a\x4b\xf3\x2a\x90\x57\x72\x6e\x95\x29\x53\x15\x4c\x20\x2f\xbd\xcc\x1b\xc5\x6c\xe3\x19\xae\x3c\xf8\x0b\x8f\x31\xcf\x73\xa5\x03\x41\x78\xb6\xbf\x79\xf3\xed\xf0\xa3\x5d\x34\x70\xd2\xbd\x72\x2e\xbf\xf6\xb3\xab\x78\xc9\x44\x2d\xdc\x78\xd9\xe2\x8a\x44\x05\xcb\x69\x1a\x8f\xc5\xce\x28\x28\x14\x07\xcb\xc5\x31\x51\xf0\x2b\xcb\x5e\xae\xf4\x32\x48\x91\xfa\xbb\xac\xaa\x0f\x71\x94\x63\x00\x34\x30\x80\x31\x2f\x67\x52\x34\x32\x67\x1e\xe6\x1c\xc4\x3c\xa2\x4d\xb6\x6c\xf7\x5e\x1b\xa7\xed\xcf\xed\xcd\x00\x38\x4d\xe1\xb2\x29\x51\x9d\x45\xbb\xb5\xf5\x88\x43\x12\x93\x11\xf9\x5b\x9f\xdb\x18\x2c\x27\x0b\xa2\x8d\x2f\xdd\x06\xd9\x55\xbc\xc9\xa4\x30\x5e\xad\x82\xa8\x72\xc4\x0d\xa4\xd3\xd8\x6b\x62\xd0\xcb\xa9\x01\xb4\x61\x5e\xfe\x26\x6d\xb1\x8f\xae\xb8\x53\x25\x71\xbf\x54\x01\xc4\x00\x92\x27\x2d\x83\xcb\x4b\x3f\xf1\x31\xb8\xd0\x35\x51\x9b\x3e\xbc\x5e\xe0\x7c\x1c\x6a\x81\x98\x64\x9f\x90\x8e\x20\x36\x90\x7b\xe8\x08\x06\xab\x2b\x08\x75\x04\x7d\x8f\x55\x04\xb7\xf5\x98\xea\x73\x35\x39\xfd\x0a\xef\xfe\x68\x71\x3e\xdd\x93\xa5\x09\x44\x76\x6f\x6d\x75\xba\x3b\x08\x26\xef\x84\x56\xfa\x48\x54\xed\x61\x26\xee\x3a\x5e\xc7\x6f\xfd\xe4\x18\xd7\x8a\x13\x96\xda\x21\x97\xd1\xbb\x08\x23\xcd\x92\x60\xb5\x1a\x27\xfb\x77\x0c\x3a\x3e\xa4\x72\x5e\x69\x90\x98\xcc\x8d\x66\xe1\x03\x65\x6e\x34\x79\x67\xe8\xa0\xb8\x1f\x8d\xe1\x35\x72\xd6\x2b\x22\xa4\xfa\xf1\xd9\xc5\xcd\xe5\xf4\xda\x90\x0e\xd9\x23\x69\x9d\xc4\x97\x01\xd6\x70\x08\x31\xd9\x82\x08\xe5\xb0\xfb\x58\x15\x2d\xf8\x87\x52\x23\x2c\x6c\xc5\x48\xec\x67\x7a\x48\xb5\x4b\xcd\x01\x10\xa6\xe2\x43\x92\x17\x03\x5b\x9a\x86\x3b\x41\x33\x6d\xd9\x43\x83\xf7\x52\xaf\xd7\xeb\x7f\x46\x06\xfb\x94\x41\xab\x86\x22\xc2\x82\x9c\xfe\xfe\xb4\x7a\x2b\x8a\xbb\x92\xab\x99\xae\xca\x39\x70\x14\x60\x71\x68\x4b\xf9\xee\xa4\xd6\x01\x3d\xbb\x1b\xdd\x9f\x0a\xf3\x1c\x17\x55\x2b\x0e\xfb\x79\x4f\x0b\xbb\xfb\xce\x96\xa4\xbc\xe6\x37\xb5\xf8\xd2\x54\x91\xf1\xcf\x24\xa6\x83\xc4\x09\x76\xdf\xd4\x12\xbc\xc8\x4d\x12\x6c\x71\xe7\xca\xde\x6e\x16\x37\xae\xa1\x9f\x49\xf1\xe9\x51\x71\xe9\x4a\xc6\xaa\x24\x95\xdf\xbd\xca\xef\xe9\xd1\x51\x78\xba\x08\xbd\x34\x95\x48\x06\x6c\x2a\x65\xf9\xbd\xd8\x3d\xa2\xef\xd1\xec\x3e\xbb\x0a\x52\x35\x57\x24\xd5\xcb\x78\xb1\x49\x8f\x66\x0f\x98\xc8\xb5\xbf\x26\x7e\xea\x67\x47\xb3\x07\xe6\xd6\xe4\xc8\xa7\x2f\xe1\x65\x53\xe9\x77\x0a\xf9\x2e\x59\xa5\x6a\xee\xa3\x39\xf2\x67\x0f\x0f\x33\x75\x9d\xc4\x59\x9c\xdd\xad\x7d\xba\xc0\xca\x79\x34\x57\xe8\xed\xde\xca\xcf\xbe\xbd\x8d\xf2\xdb\xbd\xbc\x26\x56\x9c\x1c\x85\xb5\xcf\x66\x0a\xf3\x6c\xa6\xa4\xfc\x2b\xd4\x06\x3d\x4f\x06\x36\x4d\xbe\x6b\x6f\x9b\xbd\x31\x52\xce\xbd\x81\x3d\xb0\x5f\x57\xfa\x09\xd9\x4b\xf1\x58\x69\xbb\x5e\x0f\x94\x78\xd6\xff\xd6\xfc\x26\x5e\x25\xde\xfa\xea\xee\x09\xfe\x67\xeb\x7b\xf3\xf2\xd6\x3c\xa4\x57\xc9\xf9\xd5\x72\x86\xac\x4b\xff\x8b\xe6\x2b\x5d\x7a\x41\x1b\x29\xe5\x85\xf8\xc9\x5f\x34\x85\xbd\x00\x47\xbf\xe7\x57\xdc\xf8\x26\xf7\xc4\x3f\xcf\xe6\xa7\x91\xe2\x4f\x76\x07\x9c\xb6\xdf\x01\x27\xdf\x68\xdf\xbc\x30\xc0\x7f\x5a\x4b\x7b\x36\xa5\x19\x03\xa0\xc8\xcb\xe0\x2d\x92\x67\x34\x04\xb2\x20\xff\x31\xfe\x47\xa6\x99\xc5\x55\x7d\x22\xd7\x3e\xd2\xb7\x2b\x99\xc0\x16\xc8\xb7\xc1\x32\xbb\x2a\xdd\x24\x29\xb9\xa3\xa4\x7f\xbc\xf2\xf3\xc8\xc8\xda\x5f\x85\x75\xa9\x35\x45\x2e\x1a\xce\x12\x2f\x4a\xa9\xdd\x8c\x43\x93\xf1\x03\x4c\x01\xb9\x56\x2a\x91\x69\x3c\x97\xde\x73\x45\x56\xa4\xbe\x6f\xce\x1a\x46\x55\x1f\x59\x6b\xfa\x93\xa6\xc8\x8b\x20\x59\x84\x4c\x61\xe3\x0b\x6f\x71\xbd\x4a\xe2\x4d\xb4\xcc\x27\x96\x30\x4e\x25\xf2\xb2\x22\x6b\x4c\xff\x2d\x60\xd2\xe2\x2e\xbc\x77\x41\xda\xd6\x38\xd8\x65\xe3\x70\x97\x8d\xeb\xdb\x34\x7e\x11\x27\x34\x27\xb1\xa9\x79\xa3\xab\xf9\x16\xff\x12\xcb\x13\xb8\xbb\x30\x88\x28\xf4\x88\x28\x66\xd6\xae\x39\x4a\x79\xa7\xa9\x46\xfc\xfd\x99\x17\x2d\x70\x2a\xe2\x14\x21\xfe\x68\x9b\x27\x38\xd8\x59\xc1\x09\xc3\xb5\x1d\x95\xc4\x59\xbe\x9d\x08\x06\x20\x79\x90\x63\x00\xce\xe9\x77\xcc\x16\x47\x2f\xdd\xd1\x25\x87\x46\xb9\xc1\x65\x5c\x80\x9b\xd8\xde\x86\x40\xe7\x46\xdf\x45\xf1\x92\x34\x2d\x1d\x4b\xf5\x60\x69\xc0\x10\x20\x77\x5b\xdd\x78\xef\x82\x9b\xcd\xcd\x3f\x13\xa2\x29\x3c\x0f\x56\x01\xc6\xae\x38\xc7\xd7\x4c\xf2\x4d\x2a\xd7\x42\x71\x31\xdc\xa1\xbf\x22\x20\x62\x95\x4a\x8a\xff\xef\x22\x91\x9e\xfc\xe3\xe8\x0d\xf9\xf3\x89\x54\x4e\x89\xf9\x82\x05\x3f\xac\xba\x06\xca\xe0\x59\x2e\x30\x35\x5f\x9b\xcb\x38\x0c\xe3\xdb\xb3\x4d\x92\xe2\xd8\x19\x0f\xfd\x86\xc4\x37\x7a\x9d\xc9\xef\x9c\x0b\x99\x4e\xe0\x8b\x1f\x10\x1f\x2c\xe6\x48\x64\x71\x54\x59\xb2\xdf\xde\x59\xc7\x41\x94\x15\x16\xa6\xac\xc8\xa6\xdc\x7b\x1f\x32\x23\xc8\xa8\x09\xd6\x21\xcf\x35\x45\x2a\x77\x27\x1d\x35\x91\x89\xed\x92\xb9\xda\x33\xda\x82\xf9\xa0\xdf\x41\x59\x91\x6d\xad\x7b\xd8\x6c\x03\x99\xff\xae\x98\xf5\x3b\xf4\xbd\x99\xff\x76\x47\x06\x44\x7e\x59\xa2\xdf\x54\x1d\xd2\xfa\xf2\x7c\xf5\x5e\x9d\xb5\x12\x82\x30\x0c\x52\x7f\x11\x47\xcb\xb4\x94\xf2\x1d\x8c\x4d\xc6\x79\xd3\x0c\x63\xd4\xca\x07\xbb\x58\x09\xf0\xc9\xad\x04\xf8\x48\x57\x02\x7e\x72\x2b\x01\x3f\xd2\x95\xd0\x3f\xb9\x95\xd0\x3f\xc0\x4a\x08\xff\x50\x7b\x28\xf2\xd0\xe8\x7d\xdd\x24\xd4\x31\xc2\xe3\x0c\xa3\x95\xf5\xb2\xe3\x68\x83\x6c\x2a\x99\x29\x56\x8f\xed\x20\x71\x90\xfa\x18\xef\x88\xc8\x8a\xcd\xfd\x23\x4a\x70\xca\x06\x63\x53\x73\x14\x58\xda\xdf\xfc\x87\x9a\xef\x04\x8f\xc7\x5f\x2a\x49\xa3\x67\x04\x9b\x89\xc9\x66\x81\xac\x77\x55\x55\x7d\x62\xfc\x92\xf8\xf0\xf4\xb3\x74\xb3\xf6\xe9\x73\x25\x3b\xcd\xae\x82\x54\x89\x4e\xd1\xca\xca\x4a\x4a\x7e\x3d\x4a\x4e\xbd\xd9\xe7\x9f\x8b\xed\x55\xd4\xcc\x3d\x63\xff\x26\x6c\x74\x38\x67\x09\x27\x7c\x64\x78\x61\x15\x27\x45\x0c\xb8\x42\x8c\xdd\x84\x8b\xce\x4e\xea\xd1\xd9\x69\x1e\x9d\xfd\x30\x53\xc2\x23\x3c\x46\x62\xa9\x29\xba\x6e\x95\x8f\x72\xed\xfd\x3c\x38\x02\x33\x25\x38\x52\xa1\x89\xff\x21\xff\x6b\xe3\x7f\xc0\x6c\x5e\x7e\x90\x6f\xd9\xf3\xe0\xe8\x98\xbe\x7c\xac\xd2\x7f\xc8\xeb\xc7\xe8\xfd\x87\x95\x9f\x49\xec\x96\x38\x9a\x11\x1a\x4b\xfe\xe9\x51\xe9\x29\x2a\x94\xf4\xf7\xef\xcf\xe7\x65\x14\xbb\xaf\x64\xb3\xd3\x7f\xbc\xf6\xb2\x2b\xf5\xc6\x7b\x87\x7e\x2d\xde\xa4\x7e\xa6\x1b\xef\xdd\x8c\x06\xeb\x9f\x43\x53\x31\x35\xc5\x36\x15\xa0\x69\x73\xf5\xc6\x5b\x1f\x65\xa7\xff\xe0\x3d\x19\xb9\xb7\xe2\x1f\xda\x17\x6b\x2f\x49\xfd\x97\x51\x76\x94\xfd\xcd\x9f\x3d\x01\x9a\x76\xa2\x3d\x1c\x65\x8a\x3f\x23\x63\x2e\x46\x74\x34\xbb\x47\x6c\xe4\x9f\x36\x8c\xb6\x00\x69\xf3\x07\x0e\x5b\x89\x4e\x7d\x95\xa0\x3a\x7e\x16\x5c\x1e\x45\xff\xd0\x2d\x2d\x27\x4e\x76\xaa\x5b\xda\x93\xe8\x33\xff\xd4\x57\x49\xe6\x3f\x9b\x73\xc0\x84\xf4\x6b\xa7\xa7\xc9\xfb\xf7\xc9\xe9\x69\x74\x0c\xde\xbf\xc7\x5d\x26\x5e\xb4\x8c\x6f\x8e\x66\xff\x2f\x7b\x98\xcd\x1e\xe8\x7b\x3e\xa6\x07\xce\x06\x38\xfd\xc7\xd1\x3d\x31\x49\x4e\x74\x4b\xfb\x5b\xf2\x24\x1f\x85\x72\x07\x4f\xa2\x62\xa4\x4f\xb2\xbf\x01\x4b\x53\x90\x7d\x71\x12\xa9\xe8\x1f\x25\xff\x13\xf3\x96\x42\x95\xfc\x93\x48\xa5\x3f\xa1\x4e\x1f\x94\xcd\x69\xc2\xf8\xbe\x16\x74\x93\x2c\x4f\xcf\xa3\xb9\x72\x73\x7a\x5f\x75\xfb\xf0\x4e\x21\xc6\x09\xa4\x30\x0c\x7d\x52\x50\x20\x9f\xfe\xb1\x9b\xff\xf7\xf0\xa0\x5c\x9e\xde\x3f\x28\x6c\xc2\xc6\x4d\x43\xc2\xc6\xe5\xb9\x3f\x3f\xbd\xa1\x09\x1b\x97\x7c\xc2\x06\xfb\xab\x72\x59\x4d\xd8\xb8\x6c\x4c\xd8\xb8\x7c\xff\xfe\xb2\x9a\xb0\x71\xc9\x27\x6c\x5c\x9e\x2e\xfb\x24\x6c\x70\x7c\x7a\xb4\x51\x16\x8a\x3f\x7b\xff\xde\x7f\x98\x29\x97\x33\x65\xcd\x24\x6c\x5c\x56\xd2\x29\x2e\x69\xc2\x06\xf7\xfc\x8b\xcb\xba\x48\x58\x17\x09\x1b\x97\xed\x09\x1b\xd5\x1e\xc4\x52\x0d\x0d\xf1\x12\x4d\x8f\x24\x6c\x78\xa7\x97\x4a\x42\x12\x85\xd0\x5f\x96\xca\x8d\xb2\x56\x2e\x7b\xfb\x37\xd3\x21\xfe\x4d\xa4\x4d\xac\xbd\xc4\x8f\xb2\xe3\x75\x12\xbf\xbb\xdb\x17\x48\xc6\xbf\xeb\xe0\xd5\x8f\xab\xf8\x17\xa1\x1f\xb1\xee\x38\x64\x53\x83\x39\x68\xc2\xea\xfc\x6a\x56\xa7\x3c\xef\x83\x28\x21\x68\xa6\x9a\x46\x8b\x75\x81\x8e\xe4\xb6\x11\x47\xb7\x78\x81\x1e\x3b\x9b\x6c\xb3\x4e\xb3\xc4\xf7\x6e\x8e\x83\x88\xca\xba\x7d\x2a\x22\xf0\x9f\xff\x6a\xd7\xab\xaf\xfe\xe3\xb6\x3a\xa1\x17\xf1\xcd\x45\x10\xf9\xcb\x67\xcb\x65\xe2\xa7\x69\x4b\x78\x34\x8e\x8b\xa2\x3e\x6b\x5a\x35\xab\x8f\xf3\x3a\xa7\x5f\x95\x54\xc7\x88\x54\xd4\x93\x6d\x35\x79\xb2\x37\x55\x90\x3a\x59\x8c\xaf\xee\xd6\x7e\xe6\x20\xe3\x07\x7b\xe9\x4a\xa3\xa0\xd2\x7f\xcd\x21\x4e\xe7\x4a\xb6\x5b\x1e\x7d\x27\x34\x39\xf2\x2f\x9a\x2b\x1e\xe6\x9b\x90\x78\xbd\x9e\xfb\x69\x16\x44\xf8\x5a\xb0\x04\x14\x16\x34\xd9\xa1\xaf\xb7\x8f\x38\x2f\x2b\x52\x9d\xa4\x2c\x44\x16\xb7\x19\x37\x1e\x33\xbc\x1f\xee\xd6\xb4\xf8\x60\xe2\xa3\x4d\xba\xfc\xed\xf7\x8d\x9f\xdc\x8d\x8d\x1c\x97\xc9\x6d\x3d\xdd\x63\x17\x9b\xc5\x35\x05\xf1\xe5\x83\x21\x1a\x38\x95\xf7\xde\xe6\x3d\x23\x0a\xe6\x9c\xfc\x5d\xf1\xd5\xbc\x0a\x35\x2a\xa4\x3c\x6d\x97\x46\x9e\xd4\xc0\x0f\x1a\xbe\x64\x7a\xa1\x11\x0d\x3c\xb2\x27\xa9\xf1\x4a\x5a\x1c\x10\x6f\xd1\xb8\x36\x42\x44\x0f\x34\x24\x2f\xf3\x16\x7e\x94\x63\x53\xb2\xe8\xf6\x4a\xf7\xfb\xb2\xd0\xdd\x3a\x6c\x2d\x19\xb4\x49\x1a\x0d\x52\xf6\xd0\xb6\x13\x40\x8e\x40\x49\x1c\xd7\x1c\x2a\x7a\xa3\x51\x5f\x0e\x7f\xd8\x55\x41\x2b\x18\x7d\x65\x63\xb2\x14\xea\x7f\x2d\x21\xb2\x93\xfb\x2f\x32\xe9\xfa\x55\xbc\xf0\xc2\x2f\x83\x68\xf9\x26\x46\xbb\xe2\x3b\x0f\x03\xb9\x0f\x49\xf4\xeb\x58\x1b\x0c\x64\x74\x7c\x11\x44\xcb\xe3\x14\x77\x71\xbc\xc6\x7d\x6c\x53\xbb\x44\x92\xf0\xb0\x25\xd4\xaa\x44\x5a\x95\x50\xab\x13\x2f\x10\x16\x19\xeb\xbb\xe3\x8b\x4d\x96\xe1\x60\xc3\x0a\xa2\x42\x1e\xea\xd3\x4e\x4b\x45\x16\x0f\x56\x6e\x8f\x8b\x65\xf9\xa3\x69\x91\x46\x32\xca\xb0\xe5\xba\xc1\xd7\x38\x5b\x95\x9a\x89\x97\xfe\x0e\xf6\x4e\x5d\x58\x56\xe8\xf4\x3a\xbf\x80\x3a\x1e\x83\x4f\x36\xbc\xca\x43\x9b\x30\xd5\x45\xc3\xfc\x8e\x82\x10\x0d\x2a\x9b\xd0\x5e\xb7\x40\x48\x8e\x5c\x15\x43\x93\x00\xd0\x56\x35\x55\x53\x41\x91\x75\x2c\x9f\xc8\x75\x4e\xa3\x43\x9b\x50\x48\x33\x9c\xe5\xe5\xe3\xd9\x86\xab\xe8\xa4\x1e\x71\xcf\xc3\xb9\x22\x33\xa4\x6d\x89\x9a\x2c\xb7\x33\x9c\x92\x07\x5b\xaa\x31\xf4\x3c\x14\x1a\xfb\xef\xec\x9b\xbb\xad\xdc\xca\x81\x4b\x8a\x1a\xe7\xee\x5b\x12\xd0\x56\xd6\x7c\x28\x3d\xb7\xd4\xd1\x1b\xc5\xd9\x31\x86\x32\xf1\x30\xce\xdc\x34\x9e\xdc\x36\xbb\x6b\xff\x6c\xc2\xfd\xab\xf4\xf0\xcf\xff\x04\x3f\xff\xf2\x8d\x76\xb9\x37\x95\x1e\x1e\xb3\x6e\x43\xdd\x32\xad\xd7\x70\xd0\x68\xdc\x72\x67\x0d\x07\x16\x71\xb7\xbd\x86\x03\x57\xba\xe1\x53\x2b\xdc\x50\x83\xd2\x14\x78\x93\x6a\x74\x17\x14\x2f\xd0\xa7\x29\xe2\x00\x1a\x61\x21\x05\x1d\xd4\x6a\x0b\x80\xc6\xda\x04\xcd\x5f\x73\xa6\xde\x0e\x69\x92\x63\x7c\xed\x90\x2a\x8d\x35\x17\x7a\xd2\xa5\xd7\xf7\x5c\xcd\x86\xb6\xcf\x59\xf8\xce\x21\x5a\x8e\xcc\xc3\xce\xf7\xaf\xd9\x00\x06\xd4\x6c\x28\xe2\xa9\x8c\xb2\x66\x03\x30\x1f\xb9\x66\x83\x31\x1f\xa0\x66\x81\x72\xcc\x3b\xac\xd9\x60\xa0\x1e\x3e\x1c\xe4\xf5\x5e\xd4\x6c\x70\x26\x2e\xd9\x00\x1c\xae\x64\x03\x70\xe7\x42\x96\x9d\xb6\x64\x43\x1b\x6e\xf7\x07\xaa\xd8\x00\xec\x3f\x65\xc5\x86\xc6\x35\xfd\x84\x2a\x36\x4c\x0a\xed\xad\xb3\x82\x19\xd6\x7f\x69\xe2\xa4\x9d\xd5\x6b\x00\x3d\xea\x35\xb4\xa0\x75\x8b\x47\xbb\x8b\x7a\x0d\x42\x45\x45\x5c\xaf\x41\x2b\x07\xd9\x14\x96\x2b\x66\xed\x9d\xc2\x6c\x6f\x91\xfa\x26\xca\x67\xef\xd1\xd8\x01\x8f\x7b\x3a\xf9\x6e\xfd\x59\xf1\xb8\x2b\xd7\x4e\x02\xa8\x5f\x0e\x92\x37\x5c\x5f\x79\x02\x1c\x6d\xa5\xb5\x4d\x01\x46\x72\xbd\x51\x01\xd4\xf7\xce\xd1\xb9\xf1\xb2\x1f\xd0\xb9\xc7\x50\x56\xee\x8d\x23\xdd\xca\x61\x5a\xcb\x1b\x0d\xeb\xd3\x45\x86\x06\xf5\x45\xcc\xbe\xbd\x73\xa4\xc7\xcf\x57\x00\x73\xdf\xf4\xca\xae\x66\xdc\x1f\x28\xfc\x13\xc5\xc7\x1e\x08\x85\x8d\x7d\xc7\xd9\x2e\xa1\xb0\x59\xac\xeb\x0e\x58\xec\x91\x50\xd8\xdd\x2e\xe1\x7d\x71\x5a\xef\x55\xfc\xd2\xef\xd7\xef\xfe\xc7\x5b\xfc\x3d\x6c\x8d\x5f\xa2\x63\x95\xbd\x32\x7e\xa9\x01\xdb\xb8\x2b\x72\xc9\x51\x64\x34\xfb\xe3\x45\x1c\x22\x11\x42\x01\x6b\xc4\xae\x62\x2e\x76\xa9\x8c\x49\xc1\xcd\x87\x41\x74\x8d\x1d\xe0\xe5\x01\x27\xe7\xcf\xa4\xbc\x85\xfe\xba\x46\x8f\x63\x69\x18\xe8\x57\x79\x2a\x01\x41\xa6\x23\x50\xce\xe5\x97\x94\x4d\xcf\xe2\x4d\xd4\x71\xe3\xd9\x19\x68\x50\x71\x5d\x91\x4a\xea\xa4\x9b\xd7\x7e\x7a\xf5\x26\xaf\xf6\x25\xb2\x84\x3b\x2f\x16\xbf\xf6\xbd\x90\x89\x23\x68\xf0\x4e\xd1\x50\x12\x7c\x24\x90\x50\x12\xd8\x18\x4a\x22\x26\x0e\x89\x87\x4c\x82\x2c\x58\x14\xf8\xad\xf5\x09\x8c\x25\x51\xfe\xdf\xb3\x4c\x0a\x7d\x2f\xcd\xa4\x38\xf2\xa5\x2b\x3c\x35\x69\x71\xe5\x2f\xae\xa5\x38\xc2\xcf\x72\xf1\x21\x05\xa9\x74\xe9\x05\x61\x10\xad\xd4\xbe\xb7\xdd\x0d\x93\xba\xf5\x92\x28\x88\x56\x7b\x30\xa7\x2b\x2f\x95\x3c\x89\x8e\x67\xdb\x69\xad\xbd\x34\xdd\xe9\xb4\xc2\x90\x9b\x4d\x2a\x79\x89\x2f\xd1\x5e\x7b\x0f\xbe\xd2\xe8\x0f\x57\x7e\xe2\xe3\x86\xa2\x98\x6f\x5d\xed\xe3\xb3\xe9\xff\x50\xe1\xdd\xe2\xed\x77\xc9\xec\x46\xf4\xe8\x1e\xb6\xb8\xbc\x7d\x79\xb9\x50\x53\x3f\x79\x1b\x2c\xfc\x54\x4d\xaf\xe2\xdb\x92\xec\x65\xe0\xe2\x39\x19\x07\x97\x9c\x5b\xad\xb1\x96\x7f\x55\x0b\x9d\xab\x47\xac\xe9\xe5\xe2\xb1\x42\x9e\x8d\x01\x6c\x68\x2b\x1f\x56\x1e\xd5\xd7\x74\x45\xc3\x0e\xa8\x47\x14\x20\x33\xa0\xfa\x20\x9a\xfa\xd3\x59\x39\x24\xb8\xe0\x68\x10\x89\x02\xf2\x0e\x08\x05\x68\x66\x44\xb9\x35\x42\x75\x92\xae\xd9\x20\x84\x0e\xbd\xb5\xc7\xc1\x47\xa2\x57\x07\xe1\xd2\xc9\xbd\x83\x4b\x45\x6a\x44\xe9\x99\x21\x5c\x90\x73\x67\x23\xaa\x72\xdd\xaf\x53\x8f\xb8\xfc\xca\xcb\xfc\x5b\xef\xee\x0c\x67\x84\xc8\x45\x90\xca\x96\x40\x03\x1d\x77\x46\x9d\x67\x6b\x35\x60\xa7\xf9\x70\x6d\x0b\xd4\x19\x1a\xa4\xa3\xf7\x08\xd2\x29\x19\x51\x9f\x22\x34\x46\x1f\xc0\x95\x02\xcf\xe4\x08\x73\xa6\x23\x52\xe6\x2a\xf1\x2f\x8f\xb3\x38\x8f\xab\x99\x36\x64\x66\x0f\x23\x65\xf6\x30\x40\xe6\xcb\x38\xdb\x5c\x66\x2f\x5e\xee\x4d\x80\x0c\x15\x4a\x1f\x59\x44\x4d\x3d\x90\xc6\xec\x1b\x48\x03\x61\xdf\x40\x9a\xa2\x29\x2e\xa2\xe6\xd3\x8b\xa9\xe9\x53\x52\x35\xa7\xbc\x20\x6c\xc4\x99\x26\x94\xa6\xb9\xc2\xaa\xa0\x83\x5a\xc8\x47\x43\xf5\xef\xd6\xaf\x05\xa1\x34\x53\x92\x62\x9b\x08\x9a\x9e\xc4\x68\x8c\x80\xe9\x49\x8e\x5e\xdf\x73\x11\x34\x6d\x9f\x4f\x10\x41\xe3\x0c\x8a\xa0\xd1\x06\x44\xd0\x14\x17\x8a\x6e\x19\x41\x83\xa3\xef\x1e\x33\x82\xc6\x1d\x1e\x41\x43\x22\x06\x77\x17\x41\xe3\xa2\x1e\x7a\x44\xd0\x4c\x75\x0d\xb9\x0f\x11\x34\x40\x9f\x38\x84\x06\xea\x5c\x08\x0d\x34\xe6\xe2\x0a\x98\x93\x86\xd0\x80\xb6\x6b\xd5\x0f\x14\x43\x83\x2b\x7f\xff\xf9\x62\x68\x1a\x17\xf5\x13\x8a\xa1\x01\xa2\x2b\x46\x30\xfc\x8e\xb1\x67\x81\xfc\x26\x5e\xda\x59\x14\x4d\xc7\x95\x5f\x35\x06\xdb\xe5\x9e\x35\x8d\x76\x17\x51\x34\x42\x1d\x45\x1c\x45\xa3\x97\x83\xdc\x6d\x14\x8d\x2d\xbe\x91\x33\x11\x59\xa7\x8c\xa2\x01\xf5\xdb\xc5\x91\x61\x34\x53\x85\x80\x52\x23\x61\x1f\x42\x40\x0b\xc9\xdf\x53\xb4\x63\x74\x72\xff\xb2\x43\x9a\xe7\x7e\xf4\x26\x39\xfe\x91\x84\xcd\x74\x0b\xef\x1e\x6a\x7e\x11\x3c\x5f\x51\xe8\x7b\x27\x72\xed\x4d\xbc\xc8\xa4\x11\x91\x5d\xb2\x9c\x09\x1b\x4a\xfc\x55\x90\x66\x7e\x82\x4b\xa4\x45\x71\x76\xcc\x3c\x98\x2c\x22\x48\x9e\x2c\x36\xb2\xba\x03\xa6\x90\xe7\xc3\xa5\xb9\x30\x0c\x52\xc8\xd7\x3b\x8d\x7e\x1c\x19\x10\x52\x8f\x7c\x3c\x04\x35\x4e\xa7\x70\x83\x3f\x6b\x50\x63\x43\x9c\xd9\xf0\x48\xc6\xa6\x00\xae\x5e\xe1\x8b\x7c\x53\xe4\x22\xb8\x63\x54\xc4\x7d\xd2\x39\x2c\xda\x56\xc7\xc0\x68\x63\x8f\x11\x58\x89\x59\xef\x10\x58\x39\x9c\xb2\xa5\xcc\x30\x8b\xd3\xa9\x28\x1d\x28\x5a\x69\x7a\x14\x54\xbc\xc6\xe3\xac\xdb\x7e\xf1\x8d\x22\x46\x06\xf5\x3f\x34\x30\x41\xff\x58\xc6\x3e\x9b\x63\x07\xe1\x9b\xc2\xbd\x05\x04\x7f\xd9\xd9\x04\xfb\x47\x6b\xf6\x3e\xde\x27\x60\x30\x12\x6b\x71\xcc\x69\xb7\xbb\x64\xb3\x86\x68\x74\x3e\x40\x78\xea\x15\xf8\x20\x01\xc2\x4d\x31\xf1\x95\x50\xe0\xdd\xcc\x6d\x07\xcc\xf5\x89\xc6\x0c\x4f\x11\x48\x8c\x6d\xfc\xdf\x77\x19\x48\xdc\x11\x3c\xcc\xc6\x19\x6f\x19\x48\xbc\x4f\xf1\xc3\x45\x60\xc7\x93\xc5\x95\x97\x64\xea\x3b\xbc\x0b\x76\x7a\x85\x5f\x3e\xc0\x97\xf5\x5c\x70\x09\x05\x1a\x3d\x91\x83\x25\x6a\x27\x8e\x4e\xee\xbf\x7f\xf1\xe6\xc5\x0f\x27\xe7\xf7\xa4\xbc\x25\xfd\xcb\xc3\xfc\x41\xc1\x23\x4d\x4f\xee\xd1\x83\x93\x7b\xf4\xea\x9b\x1f\xcf\xce\x5e\xbc\x79\xc3\xbc\x9c\x6e\x70\x5d\x40\xf9\x61\xae\xbc\xf8\xfe\xfb\x6f\xbf\x67\xfe\x44\x0a\x7b\x3f\xcc\x1f\x1e\x14\xfa\xd6\xc9\xfd\x83\x82\x9f\x9e\xdc\x3f\x3c\x3c\x0c\x22\x5e\xbf\x8a\x4a\xca\xc0\x55\xa8\x54\x60\x52\xa2\xe9\x22\x28\x92\xf6\x08\x8a\xdb\x57\xb7\x3f\xfd\x78\xfb\xe2\x77\x71\x04\xc5\x1b\xc2\x23\xf2\x57\x1b\x2f\x59\xe2\xe2\x8b\x74\x4f\x2d\x83\x74\xed\x65\x04\x20\x83\xbe\x93\xaf\x80\x42\x09\xae\xc8\xb8\x84\x18\x53\xd4\xb6\x0c\xed\xce\xa5\xfc\xe7\xa5\x5c\x16\x44\x2e\xa0\x07\xc7\x98\x4e\x85\x26\x9a\x26\x8b\xdc\xd1\xa0\x11\x53\x8d\x00\x2a\x0d\x89\xd2\x16\x40\x5f\x96\x8c\x49\xe2\x1f\xb0\xeb\x40\x68\x50\xb1\x08\x96\x4e\xae\xd4\xce\x15\x99\x72\xa4\x5c\x35\x3e\xd8\x77\x30\x63\xb6\xbe\x81\xb7\xc0\x18\x3c\xc6\x7c\x5e\xcc\x2c\x3a\x6e\x79\x4b\xff\x5c\x31\x79\x35\x0b\x32\x1a\x0f\x2f\xb3\xc1\x5e\x6e\x5e\x7e\x8f\xa1\x56\xc6\x91\x0a\x1a\x8a\xc1\x76\x4e\xc2\xb7\x0b\x98\x05\x40\xd6\xa7\xca\x21\xf4\xcf\xd6\x9c\x16\xb6\xc4\x9d\x90\x4f\x9b\x0a\xfd\xe4\xf6\xba\x39\x2f\x19\xae\x4a\xd0\xb6\x19\x96\xdf\x88\xe6\xd8\xab\x89\x7c\xec\x51\x8f\xb2\x36\x66\xb9\x86\x79\xd9\x57\x45\x4e\xaf\xe2\xdb\x6f\xa3\xb3\xc4\x27\xfb\x66\xe9\x87\xf8\xf8\x89\xa3\xaf\x83\xe5\xd2\x27\xe5\x67\x6f\xbc\x68\xe3\x85\xd5\xaa\xbb\x75\x1a\x60\x19\xd9\x60\xf7\x22\xf6\xd5\x14\x5d\xd3\x34\xf6\xf6\xd4\x99\xf3\xb5\x73\x1c\x05\xc0\x22\xc0\xbe\x2d\xfe\xce\x52\x6c\xc5\x69\x85\xa7\x12\x9c\xfc\x8a\xae\x54\xab\x54\xf6\x38\xff\x6f\x83\xec\xea\x18\xd1\x9c\xc6\x5f\xe5\x27\x34\x91\x08\x37\x48\xf0\xe0\xc3\x3f\x42\x36\x6a\x1e\x97\x57\x89\xd6\xbb\x8c\xa8\x76\x30\xe8\xf8\xae\x08\xfa\xe2\xbc\x26\xe5\x03\xbc\x8e\x02\x02\xb3\xfb\xa2\x60\x80\x97\xac\x36\x78\x93\x52\x00\x78\x2c\xa9\x4e\xa3\xfc\xb3\x87\x87\x52\x5c\x7b\xad\xf8\xd8\x89\xe2\xcd\x1e\x66\xb3\xcf\x5a\x4f\xa8\xa5\x97\x79\x4c\x42\xcc\xd6\x75\xff\x94\x50\x49\x95\x40\x89\x15\x06\xd1\x5b\xb9\x50\xae\x94\xb7\xca\x9d\xb2\x52\xbe\x2d\xeb\x02\xfe\x46\xce\x2b\x25\x99\xdd\x47\x4d\x65\x10\x70\x39\x40\x06\xf1\x3d\x6a\x2c\x83\x10\x35\x94\x41\x88\xaa\x65\x10\x22\x0e\xf3\x3c\xaa\x63\x9e\x27\x65\x19\x84\x87\x62\xb0\xdf\xe5\x83\x55\x3c\x32\xd9\xf0\xf4\xfe\x81\x56\x13\x90\x58\x24\xf9\xa4\x01\x49\x3e\x3c\xf7\xe7\xa7\x09\x45\x92\x0f\x79\x24\x79\xf6\x57\x25\xac\x22\xc9\x87\x8d\x48\xf2\xe1\xfb\xf7\x61\x15\x49\x3e\xe4\x91\xe4\xc3\xd3\xa8\x0f\x92\x7c\xc4\xd4\x09\x48\xa8\x1e\xf1\xfe\x7d\xf4\x30\x53\xc2\x99\xe2\x31\x48\xf2\x61\x05\xe7\x3d\xa4\x48\xf2\xdc\xf3\x2f\xc2\x3a\x55\xbd\x02\x49\x3e\x6c\x47\x92\xaf\xf6\xd0\xcc\x18\x21\x9e\x1e\x46\x92\x0f\x27\x2b\xfb\x78\xdd\xae\xf4\xfc\xa4\x69\x4f\x7e\xb7\xff\xf8\xbb\x58\xe9\x61\xc2\x2a\x1b\xd5\x93\x6a\x29\x18\xde\xa5\xa7\x89\x53\x15\xb4\xf2\xcf\x72\xe6\x27\x37\x25\x56\xa4\xcc\x4a\x68\xd0\x74\x39\x21\x13\x79\x0d\x39\x0d\xa4\x08\xb8\xcc\x07\x9d\x27\xb8\x9d\x31\xf9\x71\xf2\x8b\x9b\x35\x0e\x9b\x10\x0f\x95\xd6\x73\xcc\x43\x76\xd8\xc1\xa0\x3f\xd0\x44\xbc\x72\x52\x96\xe0\xc2\xa0\x7c\x11\x89\xdd\x68\x45\xa0\x58\x35\xa1\x33\xd6\x8b\xe2\xe8\xee\x26\x2e\xbd\x6f\x1c\x05\xea\x7d\x98\xd3\xf6\x51\xaf\x26\xdc\x7c\x1c\x11\x0d\x16\x1f\x26\x5e\xa9\xfc\x2e\x8f\x37\xeb\x25\x39\xbe\x59\xa5\xbf\x8c\x1a\x5f\x65\x23\xac\x47\xa1\x14\xe7\xea\x02\xdf\x96\xb5\x6d\x82\x08\x6f\x15\xea\x64\x3a\xca\x6f\xce\x67\x45\xa1\xe0\xea\x0b\xf8\xda\x64\x56\xd4\x0d\xae\xfd\x99\xac\x3e\xda\x8d\x95\xe2\x39\x79\x0d\x55\x34\xd2\x4d\xe6\x2f\x55\x2f\x0c\xbc\x34\xff\xe2\x0d\x69\x80\xde\xeb\x22\x91\x95\xca\x33\x25\xa8\x7c\x73\x44\x18\x1e\x1d\xe5\xab\x54\x2d\xfa\x8a\xeb\xaf\xdd\xad\xcb\x88\xeb\xd7\x7e\x76\x15\x2f\x8b\xd8\x61\x7c\xcb\x89\x1b\x20\xbf\xa3\x8e\x36\x4d\x2d\x90\x8e\xc8\x9c\x17\xb5\x97\xd0\x4f\xb4\x22\x7d\xde\x99\xbf\x94\x67\xca\xb2\xf6\x26\xf9\xe3\x0f\x64\xf4\xe5\x24\xd9\x41\xcd\x94\x9b\xa6\x51\x2c\xe2\x28\x23\xbc\x51\x19\xf7\xba\xf6\x05\x7e\xe1\x1e\xb3\xb7\x7a\x3e\x57\xc8\x0f\xf4\x7b\xf5\x7c\xfe\x20\xcf\x94\xcb\x4a\xcd\xe7\x8b\x01\x65\x8d\xd8\x52\x46\xbf\xd1\x9a\x3e\x79\x48\xf6\x15\xd6\x51\xca\xe7\x24\xea\xfc\x6d\xf5\x29\xbb\xde\xb2\x72\x57\xf9\x33\x59\xe0\x95\xf0\x23\x44\xb1\xd7\xde\x5a\x56\xbe\x25\x7f\xc6\x15\x77\x10\x89\x8e\xca\xd2\x27\x45\xb5\x1d\xf4\x1c\xbf\xc0\x32\x81\xe8\xc5\xb2\xed\xf7\xef\x65\xff\x9d\xb7\xc8\x64\xe6\xbb\xef\x8a\xe8\x3c\xd1\xb7\x74\x25\xf8\xc0\xb2\xc0\x4f\x99\x06\xd0\x9a\x57\x3e\x45\x73\x7c\xff\xbe\x3a\x82\xf7\xef\x65\xb6\x63\x34\x20\xa6\xea\x11\x59\xb2\x95\x9f\x51\x8a\x34\x77\x7f\x47\x8e\x61\x79\xf6\xfe\xfd\x80\x8f\xe4\xbc\x1e\x92\x14\xf9\xb7\x47\x72\x9a\x25\x41\xb4\x92\x4f\x4f\x11\x19\xe3\x4b\x32\x6e\x96\x92\x5f\x30\x4f\xe8\xba\x9c\xd7\x5e\x9a\x9f\x88\xc8\x3c\x23\x15\x9c\x72\xc6\x57\xee\x2f\x91\x88\x4a\xd2\x13\x7a\x6e\x5f\x26\xf1\xcd\x0b\xe2\x9a\xcb\x4f\x7c\xea\xa9\x3b\x62\x7a\xc8\x25\xc6\x3a\xf1\x97\xc1\x02\xfb\xba\x30\x6d\xef\xd6\xfe\x6c\x56\x54\x3f\x3a\xcf\x94\x68\x3e\x3b\xfd\x47\xa1\x52\xf8\xef\xdf\xfb\x6a\x10\x2d\xc2\xcd\x12\xb5\x37\x9b\xcd\x1e\x08\x1f\x95\x7b\xb9\x5c\xad\xe2\x2b\x66\x1a\x71\x92\x7d\x71\x4e\x27\x86\xdd\xbb\xcc\x87\xe5\x08\x8e\xf8\x2f\x48\x17\x78\x33\x16\x85\xa1\x58\xe9\x41\x69\x2f\xe7\x4a\x58\x85\xf0\xe5\x9b\x9f\x7f\x7e\x44\x4b\x4a\x95\xcf\x66\x54\xf3\xaf\x96\x0d\x2b\x36\x21\x92\x78\x15\xe1\x8b\x1e\x1f\x95\x22\x4b\xf1\x67\xd4\xc2\x20\xef\x33\x7c\xe8\x97\x9b\x46\x96\x73\x52\x94\xac\xfd\x05\xb7\x96\x27\x15\xae\xa0\x3f\x1e\x55\x3e\x22\xe4\xc8\x3f\x3a\x9a\xdd\x07\x97\x47\x02\x5a\x53\x4e\x9d\xb1\x7b\x27\x17\x65\x54\x91\xfd\x2c\xdf\x1f\xcc\x30\x84\x2c\xf1\x19\xdb\x85\xdf\xa3\xc9\xec\x54\xc4\x7b\xdc\xb8\x4a\x2e\xf3\x95\x0c\x71\xd9\x97\x71\x1c\xfa\x5e\x84\xd8\x8a\x14\xce\xca\xff\x70\xee\x2b\xf9\x96\xfa\x4b\xb1\xb2\x5f\x64\x64\xa7\x9e\x64\xf3\x62\xf3\x71\x03\xa2\xcd\xfb\x47\x82\x8d\x81\x39\x97\xf0\x2d\x7e\x99\x11\x15\xe5\x40\x31\xc3\xe1\x6a\x63\x8d\xfc\xe5\xab\xb9\x13\xee\xc5\x5b\x3f\xca\xbe\xf0\xf3\xde\x4f\xfc\x07\xba\x78\x7e\x5d\x7a\x9d\xfa\x84\x5b\x70\x07\x0f\x0f\xca\xd5\xe9\x77\x47\x17\x6c\xd5\xfa\xfc\x4c\x38\x8f\xe6\xca\xc8\xb2\x5d\x48\xc9\x7a\x98\x29\x6f\xab\x4d\x93\x63\xe5\x3c\xd9\xb6\xe1\xbb\x5a\xc3\xfc\xc9\x74\xee\x6d\xdb\xc3\xaa\xda\x03\x39\xdc\xce\xc3\xd1\x0d\xd7\x4a\x99\xc9\xb8\x98\xe1\xb7\xe2\xa9\x14\xe7\xe5\x79\xba\xed\x54\x84\xed\x13\x75\xe6\x3c\x98\xe7\xf5\xd3\x56\x7e\xf6\xed\x6d\x94\x4b\xa0\xe7\x7e\xba\x48\x82\x35\x12\x8c\x4d\x1f\xcf\x14\xe6\x2f\x0d\xbd\x10\x3d\xe9\x3c\x1e\xd5\x0b\xfe\xb8\xbd\x17\x56\x89\x3b\xdf\x0c\xec\x85\xf9\xb8\xbd\x17\x6a\x70\x9c\x2f\x06\x76\x40\xbe\xeb\x43\x27\x24\xc6\xcf\x97\xa3\xa8\x84\xb5\xcf\xb6\x1e\x4a\xcd\xf9\xfc\x66\x60\x0f\x8c\x7e\xdb\xbe\x0a\x54\xc5\x3d\x5f\x0f\x5e\x02\xf2\x65\x1f\x1a\xc9\xca\xf9\xe5\x28\x0a\x55\x5b\xbf\x60\x2f\xce\x6e\x5b\x5d\x6f\xd7\xca\x6d\x77\x69\x3a\x6c\xb4\x5d\xc6\xc9\x8d\xc8\xe9\x56\xc6\xd2\xd0\x04\xaf\x00\x59\x8d\xcb\x63\x12\x62\x86\x6c\xcb\xc7\xbb\xf9\xd1\x2e\x92\xe7\x6f\xde\x7c\x2f\xae\x59\x27\x23\xa9\x82\xbd\xd5\xde\x3a\xe8\xba\xa8\xc1\x24\x08\x63\x0c\x6e\xc3\x66\xe7\x63\xb7\x63\x9a\x2c\xaa\xc1\x79\x71\x94\xc3\x2e\x18\x4a\x25\x5a\x54\x7e\xf2\xd7\xfb\x22\x8d\xff\xe1\xc9\x5f\xef\x49\x76\x3f\xfa\x69\xb9\x40\xff\x8b\x8d\x83\x27\x7f\xbd\x4f\x93\xc5\x83\xac\x08\xfc\x20\x02\x98\x09\x45\xc6\x35\xd1\x72\xd3\x32\xbf\x42\x32\x49\xe8\x95\x49\x2e\x20\x4c\xec\x65\xd0\x4d\x82\x16\x60\x2a\x7a\x99\x79\x37\xaf\x03\x69\x6a\x38\xd9\x2a\x7b\xee\x65\x9e\x3c\x2a\x7c\xbb\x47\xb0\x15\xa6\x68\xef\xc0\x40\x1e\x37\x01\x2f\x49\xbe\x86\xf9\xdd\x59\x10\x5d\x23\xf2\x53\x3a\xd0\x18\x16\xbc\x1e\x4b\x3f\xf4\x33\x9f\x5b\x27\xc6\xfd\xd2\x7f\x61\xc6\xac\x88\x60\x2d\x38\x00\x58\x53\x01\xa2\xfa\x58\x26\x87\x36\x62\xe2\xf2\x5c\xcc\x03\x83\xac\xa3\x41\xb2\x36\x04\xcb\x87\x1b\xae\xe3\x83\xd4\x5e\x31\x07\x46\x27\xf3\xe0\x44\xf6\x5c\xe8\xac\x43\xcb\x53\x66\x00\x28\x72\x90\x16\xd7\x41\xf9\xe5\xe9\x32\x48\xd1\x11\xb8\xc4\x37\xab\x17\x37\x41\x46\xae\x8a\xfc\xac\xa0\x18\x8e\xc6\x16\x31\x66\xb1\x82\x25\x75\x80\x55\xa2\xaa\xd0\x0b\xac\xf2\x41\x10\x5d\x86\x38\x2c\x76\xde\x44\x07\xf2\xde\xda\x4f\x52\x0c\xa8\x45\xdb\x04\x1d\xd4\x23\x5f\xe5\x83\xae\x7e\x34\x20\xb1\x95\xc7\x8d\x70\x14\xbd\x08\x30\x6e\x04\x84\x32\x15\x6d\x54\xde\x6c\xeb\x8e\x2c\x29\x37\x3c\x08\xf8\x2e\xf0\xc3\xe5\x94\xed\xb6\x51\x63\xcb\x00\xa2\x71\xb5\x6e\x3a\x88\x97\x9f\xf6\xd3\x93\x0f\x17\x9c\xdf\x53\xea\xb5\x54\x18\xea\xc8\xa8\xaa\x36\x33\x76\xa1\xba\xca\xbc\xbf\xa0\x02\x07\xfb\xad\x73\xfc\x8a\x84\x39\x30\xb1\xa8\x2e\x04\x37\x2b\xcd\xe9\xcd\xeb\x26\x09\x38\xf7\x38\x11\x6e\xb8\xd1\xfc\x8c\x61\x8e\x18\xa4\x44\x51\x79\xb6\xc8\x85\xde\xc0\x7b\xda\x8a\xce\xc5\x45\x55\x79\xad\x51\x55\x09\x55\xf8\x8a\xbf\xa8\xc4\x77\x7a\x54\xb8\x4e\x95\xfb\xcc\x5b\x91\xbe\x65\x65\x19\xdf\x9c\x88\xdd\xe5\xcb\x18\xdb\x40\x9b\x20\x5c\xfa\x49\xc3\x3b\x98\x2f\x67\x0a\x99\xe5\xc9\x5f\x80\x92\x53\xa1\x6e\x0d\x12\x03\x3d\x27\x0d\x7f\x81\xfc\xa0\xc4\xd1\xc2\x8b\x16\x7e\x38\xfc\x3b\xf2\x9c\xfd\x0e\xb7\x86\x0f\x88\x13\x71\x09\x6a\xf5\xca\x8b\x96\xa1\x8f\x9d\x0a\x47\xfe\xec\x41\x59\x06\xcb\xef\xfd\x85\x1f\xbc\xf5\x9f\x65\x59\x92\xb2\x8d\xe1\xde\x7f\x13\x5c\x7a\x7f\x96\x25\x77\xe4\xaf\x88\x08\xc4\xb1\x41\x89\x85\x9f\x30\xfe\x9d\x87\x85\x97\x11\x5f\xc5\xc3\x83\x72\x1b\x84\xe1\xf7\x7e\xb4\xe4\x2d\xe6\xc6\x6e\xe8\x6a\xa6\x85\x9f\xb4\xe4\x67\xf2\x4d\x90\x7e\x5f\x64\x44\x1d\x51\x39\x3b\x9b\x91\x7e\x9e\xfb\x69\x96\xc4\x77\x2f\x42\x2c\x23\x86\xf4\x57\xfa\x65\x11\x27\xaa\x41\xfa\x6f\xff\x56\x9e\x7d\xfe\x39\xfe\x0e\x3f\x4a\xe2\x30\xbc\xf0\x16\xd7\x88\x62\xc1\xc5\x26\xf3\xd3\xa3\xd9\x83\x42\xb6\x48\x7a\x72\x4f\x55\xc7\x13\xee\x6e\xd9\xc7\x45\xe5\xa9\xc3\xe7\x48\x53\x22\x35\x48\xcf\x72\x43\x61\x76\xe4\xcf\xde\xbf\xe7\x5d\x6d\x88\x90\xef\xdf\x1f\x65\xe5\x6f\x2a\x6d\xf8\xc8\x9f\xa1\x41\xe2\x1f\x67\xec\xa8\x91\x5d\x9a\x8f\xf6\xa8\x4a\xbc\x7c\x3b\xfe\x45\x9b\x29\x0d\x4e\xb4\x4d\x16\x5f\x06\x61\xf8\xfe\xfd\xfd\x83\xb0\x94\x39\xf1\xda\xe6\xbc\x54\x76\x40\x4c\x1b\xc5\x7f\x98\x29\xd9\xac\xbe\x6c\x44\x64\x64\xd4\x93\x89\x7e\x7b\x50\x84\x4c\x4a\xd9\x9d\xfc\x8d\x8c\x69\x19\xdf\xa8\x51\x9c\xdc\x60\xb7\x07\xe5\xda\xa2\x29\x44\x94\xf2\x27\x86\x26\x38\xec\x8f\xb1\x04\xbd\x7e\x86\x1e\xb1\x72\x1e\x2d\x84\x92\xb3\xb4\x8a\x10\x4a\xf4\x80\x84\x50\x7e\xfb\xdd\x8b\x7f\x9f\x14\x81\x8f\xf8\xf9\x03\x8d\x87\x2c\x9e\x2e\x83\x74\x11\x47\x11\x09\xae\x7e\x50\x5e\x7d\xfb\xec\x79\x35\xe8\x52\x59\xc4\xd1\xf2\x24\x37\x40\x1e\x14\xae\xc5\x20\x5a\xc9\x0f\x73\xe5\xe5\xbf\x7f\x7a\xf6\xea\xe5\xf3\x67\x3f\xbc\x60\xbf\x8e\xa8\x8d\x4b\x5e\x2a\x43\x37\xd1\x87\x27\xf7\x0f\x0a\xfb\x02\xfa\x9d\x36\xc8\x47\x75\x56\x22\x40\xab\x13\xa0\xf1\x9c\x0f\x0f\x0a\x09\x08\x2d\x62\x39\x49\x10\xe9\x0f\xdf\xff\x5c\x25\xc1\x03\x12\x62\xe5\xac\x5b\xdf\xec\x11\x0f\xca\x72\x42\xa7\xd1\x3f\x8c\x97\x1e\xcf\x1d\x90\x69\x66\xfa\xe5\xdd\x93\xe5\xf6\x81\xa0\xc4\x63\x10\xc5\x19\x76\xc6\xb6\x05\x51\x38\x8a\x53\x07\xe4\xeb\x8a\xfc\x34\x70\xfe\xfd\x40\x3b\x3b\xf1\x2f\x8b\x96\xc8\x8a\x33\x71\xa9\x34\x1c\x95\xb1\xa0\xca\x59\x9d\x0b\x2b\x3f\xb3\xb9\x0b\x70\xce\x29\xa4\x8a\xfc\x14\xed\x1e\xd6\x82\x17\x65\x1b\xca\x41\xfa\x8a\xda\xf7\x85\x79\xc9\x75\x51\x35\x25\x21\x1b\x49\x02\xb5\x9a\x2d\x99\xdb\x8d\xc5\x0e\xf3\x99\xd5\x79\x51\xc6\x5b\x9a\xb4\x04\x91\xc9\x46\xa9\x70\x03\x2b\x1b\xa8\x9a\x77\xb6\x20\x0a\x91\x8d\x75\x71\x2a\xa6\x17\x59\xa5\x82\xba\x64\x8c\x24\x80\x32\x55\x2f\x83\x24\xcd\x08\x73\xcb\x15\xb0\x4d\xd6\x84\xac\x05\xce\x8e\x32\x1f\x39\xf3\x30\xff\xaa\xc4\xa7\xc4\x6e\x9c\xf9\x40\x88\x59\x6a\x40\x38\x79\x14\x6b\xbb\x26\xde\x04\x89\x5b\x2b\xf5\x56\xf1\x3a\x0c\xcc\x87\x63\x92\xb5\x4b\xbe\x8c\xb3\xd7\x34\x66\xb2\x12\xbd\xcc\x7a\x1b\xca\x43\x41\xe1\xe5\xf8\x30\xff\x07\x43\x69\x6e\x6a\x3a\x9d\x5a\xdd\xc1\x53\x9d\xbb\x56\x73\x2b\xb8\x4c\xc4\x6b\x7e\x04\x4d\x9c\xde\x4e\x8e\xd6\x34\xde\x24\xf8\x06\x89\x10\x2e\x5e\xfb\x51\xa3\x0f\x93\x89\x61\x36\x88\xef\xd0\x60\x27\xd7\xb0\x57\x64\xc6\xbd\xc6\xec\x0c\xca\x81\xad\xbb\xa0\x12\x62\xce\x46\x69\x59\xa8\x09\x7e\xaf\x0b\xc0\x4e\xbb\x40\x86\xb7\xb0\x30\xbb\x01\x62\x79\x96\xbc\x29\xf9\xb1\x5c\xd1\xc1\x0c\x26\xd8\xca\xe2\xc6\x76\xbf\x9b\xab\x6e\x24\x9a\x09\xc4\x79\xc5\x09\x1c\xda\x80\x45\xe9\xf6\x2d\x74\x53\x77\x90\x6f\xa9\x9d\xb6\xa2\xa6\x3e\x3c\x65\xf1\x28\x8e\x73\xd5\x9b\x4c\x98\xdb\x8b\xda\x40\xd6\x9f\x80\xca\x9c\x4c\x25\x2a\xf4\x84\x22\x95\x73\xed\x37\xaf\x34\xd7\xe1\x96\xd2\x9a\x83\x1d\xb1\xf2\x63\xbd\x44\x2b\x44\x24\x33\x34\x20\x94\xc2\xfd\x50\x4e\x2a\xfc\xa5\x30\xb8\xe3\x15\xd2\xb5\xe5\x40\x30\xe2\x51\x90\x3b\x33\x1f\xcc\xab\xd3\x72\x2c\xc3\xb5\xb9\x3a\x9c\x23\x59\xa0\xdf\x2f\x03\x92\xa3\x98\x07\x93\xd6\xea\x1e\x60\x1c\xd5\xff\x9f\xbd\x2f\xff\x6e\xdb\xc6\xf6\xff\xdd\x7f\x05\xc3\xd7\x93\x11\x5f\x21\x59\x92\xd7\x78\x8e\xb2\xd4\x49\xa6\x79\x4d\x9a\x7c\xe3\xb4\xb3\xe8\xe9\x65\x68\x11\xb2\x98\x50\xa4\x4a\x42\x76\x1c\x5b\xff\xfb\xf7\x60\x5f\x08\x50\xa4\xa4\x24\x6e\xa7\x9d\x73\x26\x16\x17\x10\xb8\x00\x2e\xee\xfa\xb9\xf1\xf8\x23\x89\xdc\xa5\xee\x25\x86\x7b\xc1\x3d\x27\xa2\x30\xc0\x46\x89\xc5\x47\x60\xe8\xff\x28\x8b\x53\x8c\xd6\x82\x6e\x54\x48\xd7\x25\x31\x33\x19\x59\xe8\x22\x8d\xea\xef\xb4\xa7\xf7\x7c\x17\x3e\x5b\x83\x94\x6c\xb3\xf3\x3f\x64\xd1\xf5\xd6\xba\x6e\x87\x55\x97\xff\x3d\x49\x3d\xc2\x6f\xbc\xab\xb0\xf0\xa8\xa5\x03\x46\xde\xd5\x34\x4e\x0a\xe4\xb1\xf3\x87\xd8\xe5\x3c\x7c\xaa\x03\x2f\x87\x93\x1c\x16\x53\x0f\x65\x1e\xca\xaf\xbd\xf0\x22\x8c\xd3\x8e\xfd\xeb\x1b\x92\xa5\x12\x26\x62\x9d\xf3\xbb\x96\x4c\x60\xe7\x20\x4e\xa6\xb1\xb7\x3e\xba\xd7\x16\x0f\xa5\x6d\x6e\xf2\xad\x1f\x4c\x6b\x9c\x8a\x55\xfe\x91\x66\x8e\xe4\xd5\xf4\xa9\xb5\x2a\x6b\xd4\x0d\x68\xee\x38\x39\x2c\xe5\x9f\xc9\x6c\x37\x2d\x11\xa3\xaf\x24\x55\xbe\x7c\xfd\xe4\xa9\x06\x17\xac\x44\x00\x1c\x96\x73\x01\x2a\x52\xd8\xaa\x21\xe3\x99\x2a\xa5\xce\x84\xc6\xe6\x55\x1f\x09\xb5\x11\xb1\x23\x0f\xf8\x4c\xd1\xa0\x7a\xc6\x6f\x0b\xb8\xa8\xca\x7a\xcb\x28\x78\x16\x4d\x7e\x23\x9f\x0c\xd3\x48\x75\xe0\x14\x3c\x15\x81\x59\x50\xfc\xd9\x02\x49\xbf\x0c\x73\xda\x24\x32\xb1\x41\xc9\x67\x68\xea\x84\x51\xad\x60\x5f\xce\x0d\x23\x3c\x16\x70\xf0\x10\x12\xbb\x67\x3d\x6b\xbd\x35\xf3\x6e\x2d\x7f\x06\x10\xb9\x53\x32\x7a\x92\xd9\xfb\x99\x51\xbf\x43\xbb\xd8\x09\xe7\xf3\x84\x85\xf0\x0e\xe5\xb3\x23\xea\x47\x79\x91\x16\x30\x47\x8d\x3c\x0e\xd4\xc6\xcd\x74\xbb\x16\x5d\xcc\xaa\x2b\x41\x9a\x6b\x78\x33\xf2\x61\x69\xa3\xf5\xb9\xcd\x3d\x5f\xa4\x9d\x62\x3c\x85\x78\x72\x5b\x7e\x38\x41\x30\xa7\xfe\x16\x1f\xb4\x82\xc1\x43\xb3\x05\xf6\xb9\x60\x09\xb8\xbd\xca\xe2\x83\xb2\xd0\xc6\x74\x55\x14\xf9\xd8\x62\xd1\x0f\x6e\x1c\x8e\x00\xcd\xca\x0f\xd7\xb6\xd6\x17\x71\xfa\xd1\x66\xa1\x95\x6f\x2c\x50\x9c\x14\xbb\x51\x36\xdb\x85\x97\x30\x45\xdc\x00\x50\xca\x8c\xdc\x96\x11\x36\xad\x36\xc2\xbe\xdd\xff\xfb\x8f\xf1\x1e\xfa\x64\x37\xc2\x56\x5a\x52\x7b\x5a\x6e\x17\x3f\x26\x39\x63\x61\xc6\x65\xa3\xa4\x0f\xb5\x48\x90\x67\xd4\x60\x91\x6e\xb3\x0c\x29\x6e\xf6\x1d\xab\x5e\xe1\xa6\x8c\x44\x4e\x95\xc6\x46\xf2\x4a\x36\x92\xba\xd8\x88\xca\x3c\x98\x3b\xd6\xe5\xc7\x15\x1f\x67\x97\xfc\x60\xa5\xd7\x37\xc9\x2e\x2e\x9c\x4e\x5f\x7a\xd3\x0f\x2c\x6e\x56\xea\x7c\xa5\xce\x0a\xed\x22\x21\xe1\x89\x99\x10\xa4\x00\x25\x0a\xa4\xcc\x9b\x28\xce\xd1\xf5\xbb\xeb\x39\x04\x71\x71\x16\x5e\xc6\xe9\xc5\xd2\x57\x16\x2b\x4b\x51\x30\xaa\x67\x48\x7f\xa5\x68\x88\xbf\xed\x07\x20\x75\x3f\x25\xbe\xe6\xeb\x61\xf8\x88\x27\x93\x0e\x06\x83\x34\x80\x03\xaa\xf3\xee\x60\xa9\xeb\xa6\xb8\x8a\x31\xeb\x48\x83\x1b\x02\xa2\x42\x9d\x8a\x91\x7f\x02\x07\xe8\x11\xfd\x85\x3f\x7b\xc2\xbd\x8d\x3b\xe7\x39\x0c\x3f\xee\x90\x67\xe9\x21\xc4\x9f\x25\xbf\xe8\xb3\xec\x74\x52\x9f\xa5\x9e\xf4\xc8\x3f\xc1\xbf\x18\x0b\xa2\xef\x11\xe0\x7a\xfa\x1e\xc3\xb0\x5f\xc2\x01\x59\x9e\x97\xb0\xe3\x7f\x0f\x97\x94\x6d\xdd\xb0\x13\xf5\x04\x0d\x1e\xb6\x7b\xf7\x06\x03\xd8\x21\xeb\xef\xf5\xa4\x85\x02\xe2\x04\x6a\x78\xd0\xbc\x4f\xe2\x02\xc1\x14\xe6\xc5\x40\x38\x26\xc5\xa5\xd6\x06\x4e\x67\xa3\x75\x86\xcc\x8f\x5b\xa4\xec\x4a\xe3\xa8\x9c\xcf\xb4\xba\x00\x61\x1e\x0a\x83\x16\x0c\x40\x3e\x80\x83\x87\x25\x6e\x2b\x57\x18\x4b\xe0\x95\x6e\x7b\xb6\x4e\xf1\xbb\xe4\x37\x5d\xd6\x1d\xf8\x09\x8e\x17\x08\xf3\x64\xe9\xb6\x77\xdc\x5f\x6a\x99\x11\x4a\xf7\xc3\x28\x6a\xa5\xe0\x66\x06\x8b\x22\xa4\x67\xfa\x0d\xfe\xec\xca\xce\x95\x8e\x05\xd6\x05\x14\xdc\xe4\x64\xca\x98\x1f\x10\x0e\x1e\xe2\x7e\x2f\x03\x90\xae\x7b\xe8\xea\x87\x17\xe6\x11\xca\x82\x17\xa7\x1c\xcf\x04\x63\x02\x00\xe6\xa3\xe5\xe3\x9f\xe8\x80\xe2\x15\x2c\x07\xb0\x30\x3a\xc3\xb3\x2d\x0e\x51\xf8\xc8\x4d\x09\x96\x8d\x23\xf2\xa7\xe6\x61\xce\xbc\xe0\x98\x85\x01\xdc\x50\x70\x52\xf1\xba\x48\x15\xc2\xcb\xa6\x85\x0f\x7c\xbd\x45\xda\x33\xa5\x45\xda\x71\xd6\x40\x10\x2c\x01\x5d\x7b\x95\x67\xb8\xfc\x1e\x5c\xf1\x3d\xb6\x90\x95\x01\x04\xaa\x68\x83\x09\x6a\x50\x29\x9e\xb4\x90\xa8\x45\x98\x4d\x3c\xe2\xef\xbf\x7f\xbf\x85\xca\x29\xe8\x50\x9d\xb2\x00\x4d\xf3\xec\xca\x4b\xe1\x95\x47\xec\xe3\x2d\xff\x9f\xd9\xc2\x9b\x2d\x0a\xe4\x15\x73\x38\x8e\x27\xd7\x44\x59\xc7\x3a\x7a\x11\x5e\x42\xe0\x65\xb9\x87\x0f\x44\x7c\x81\x31\x91\x60\x07\x5f\xa0\x89\x68\x24\x9f\x0a\xd2\x0c\x2a\x3e\x88\x80\xa6\x50\x71\x1a\xe2\xee\x9a\x62\x4b\x5e\x53\x6c\x21\xe4\xfa\x13\xc4\xe1\x4f\x10\x87\x3f\x41\x1c\xdc\xb2\xf2\xcf\xbb\x1f\x66\xbf\x3d\xdd\x3d\x70\x81\x38\x50\x9f\x1d\xf7\x07\x01\xff\xb1\x12\x51\xed\x96\xa4\x99\xb3\xdd\x01\x3e\x20\x9a\x18\xad\x61\xf2\xee\xdb\xe4\x6f\xdd\x65\xe5\x27\xe1\xe7\xeb\x75\xec\x63\x06\x0c\x14\x75\x27\x12\x5c\x26\x0a\x02\x35\xa5\xd0\x42\xc0\x47\x39\xf5\x38\xf6\xf7\xc1\x01\xf0\xaf\xe2\x08\x4d\x4f\xbc\xee\x5f\xa7\x30\xbe\x98\x22\xfc\xd7\x24\xc3\x6a\x50\xfc\x19\xe2\x1f\xf3\x30\x22\xe1\x39\x5e\xf7\xaf\xb3\x30\xbf\x88\x53\xfc\x97\xb4\x53\x77\x95\x51\x30\x83\xbd\x0a\x1f\x41\x01\x86\x36\xa8\x71\x09\x4a\xc8\x19\xb6\x0f\xd5\x76\xf3\x80\x12\x6c\x07\x6d\x31\xe4\x41\x7a\x34\xda\x8e\x58\xca\xa8\x2d\xc6\x80\xe3\xd0\x61\xc4\xea\xb7\x25\x16\xa1\x0a\x8b\xed\x6e\x6f\x5f\x5f\x71\x6b\x0c\xb8\x41\xdf\xe4\xae\x18\xb2\x4a\x8d\x56\xd0\x91\x7d\x0d\xf1\xc3\x11\x7b\x72\xc6\xb5\x67\xd9\x7d\x1e\x59\xc1\x7e\x2b\xb9\x07\x06\x0e\x89\xf6\xb0\x84\x00\xd1\xfc\xf2\xd4\x80\x29\xf6\xa0\x1d\xda\x5a\xdd\x5a\xf2\x73\xfd\x07\x96\x3a\x65\x6b\x21\x82\x44\x71\xd4\x8e\x89\x48\xa9\x21\x7e\x68\xa0\x20\x58\xd2\x6f\x47\x54\xd4\x17\xa6\x3a\x15\x29\x64\x3d\x1d\x59\x91\x0b\xb8\x96\x0c\xae\x06\x7a\xc0\x18\xc8\x07\xad\x16\xa4\xcc\x78\xf0\xd0\x96\x37\xfc\x08\xb6\x02\x92\x1d\x1a\x70\x6d\x21\x1c\xc0\x21\xe2\xa9\xc6\x5e\x78\x6f\x30\x48\xef\xdf\xcf\x5b\x21\x09\xd9\x1c\xa2\xd1\x20\x5d\x82\x67\x03\x62\x1f\x5a\x82\x4f\x58\x95\xb0\xb7\x7b\xf2\x0c\x7c\x18\x0c\x7d\x18\x52\xa0\x33\xca\xcc\x08\x70\xc9\xa9\x1b\xb8\x44\x1d\x9a\xd4\xc1\x5d\x28\x26\x54\x03\x77\x81\x98\x08\xe5\xdb\x09\x62\x22\x2e\xc4\xe6\x85\xcc\x00\xd7\x58\x18\xbf\xc7\xc6\xef\xc8\xf8\x3d\x33\x7e\xcf\x8d\xdf\x93\x5a\x60\x1d\x44\x84\xb3\xa9\x24\xef\x15\x0b\x19\xdb\x67\xe0\xdc\x00\xdb\xc0\xc4\x29\x81\x79\x30\x9a\x94\xe0\x3c\xe2\xe2\x45\x8a\xb9\x06\x1c\x13\x25\xbb\x84\xe7\x41\xf7\xb6\x89\xe7\xc1\xb6\x3a\xc3\xf1\xa8\xa5\xf8\xf2\x87\xc2\xcf\xd7\x2f\xab\x35\xe4\x0b\x28\x1c\x68\xd2\xba\xf8\x41\x01\x7d\x10\xf9\xf1\xec\xa9\xe0\x51\xe9\xd2\xc9\x87\x61\x77\x44\x5a\xe2\x8c\xc2\x65\xa8\x24\x6f\xf1\x87\xb8\x31\x57\xbd\xb6\x54\x74\x4d\xaa\x2c\x92\xd1\x33\x29\x45\xc6\x2a\x0f\x20\xd5\xf2\x3e\x29\x1d\xe4\xaf\x62\xed\x7b\x29\x95\x69\xb5\x19\x48\xff\xbd\xbd\x85\xc6\x9b\xe4\x32\x79\x91\xb1\x7e\xfc\xe2\x93\x3c\x0f\xaf\x3b\x71\x41\xfe\x6d\xc1\xe0\x51\xcb\x42\x56\x61\x1a\x60\xba\xf2\x1c\xa6\xad\x80\x29\x26\xc6\x93\x58\x0b\x17\x93\x80\xd7\xc2\xaf\x31\xbc\xc2\x7a\x46\x0b\x02\xc8\x0d\xc1\xfa\x1a\x11\xd8\x01\xda\xd5\x47\xca\xa7\xe8\x97\xc6\x49\x86\x65\xdb\x65\x10\x2c\xe5\xf1\xd5\x52\x54\x5c\xa7\x56\x4d\x62\xe7\x29\xb2\xd3\xfd\xfb\x2e\x4c\x0d\x47\x80\xfd\xaa\xf0\x7b\xa0\xf6\xcd\x69\x53\xb1\x2d\x56\x69\x70\x31\x4f\x50\x06\x13\xc1\x6d\x5e\x90\xd9\xbc\xb0\xec\x70\xd2\x62\x7c\x90\x8f\x8d\xad\x4f\x66\x34\xd0\x69\xc8\x73\x07\x28\x15\x97\x4b\xfa\xaf\x05\x17\xa2\xc8\xc7\x00\x0d\xae\x04\x44\x08\xe5\x03\x62\xe0\x94\x31\xd0\x66\xe8\x64\xc9\x85\x10\xc8\x69\x55\x1e\xa5\xf4\x80\x0c\x96\x27\x00\xe9\x80\xdb\x63\xca\x26\x44\x08\xdc\x11\x9c\xc1\xed\xed\xcd\x72\xc7\xdf\xef\x3f\xf0\xef\x0d\x54\x83\xa2\x28\xcf\x2a\xc6\xb8\xb9\x65\x09\xe4\x03\x9b\x51\x49\xb1\x35\x94\xcd\x4b\x6e\xe3\x51\x6a\x18\x8f\x6e\x52\xf2\x11\x62\xf1\xe4\x94\x7e\xcf\x8c\x00\x20\x0f\x80\x6d\x5d\xe2\xb1\x9e\x2e\xf2\x1c\xa6\x88\x98\x24\x94\xb9\x33\x6f\xb5\x48\xc3\x3c\xe1\x63\x47\xda\x7d\x28\x59\x1f\xb5\xd0\xc0\xe7\xd1\x85\xa0\xcc\x2e\x82\x93\x56\x0d\x56\x44\xda\x60\xa1\x86\xb5\x5d\x3f\x8c\x4a\x43\x34\x92\xf4\xc9\x31\x7d\x72\x4c\x8e\xe5\x72\x19\x16\xd7\xe9\xd8\x2b\x7b\x9c\x28\xcd\x3b\x39\x0c\xa3\x6b\x12\x29\x3e\xe8\x0b\xbf\x95\xd8\xfe\x4d\x1c\x50\xfc\xa5\xe1\x28\x58\x06\x4b\xb6\x67\x0d\xfe\x41\x3f\x7a\xff\x7e\xcb\xbe\xa4\xd5\xc5\x40\xcf\xaa\xd2\x5c\x6a\x76\x45\xfa\x28\x57\x82\x97\x4b\x70\x3e\x78\xd3\x9a\xa8\x78\x02\xea\xc9\xbb\x39\x3a\xca\xb4\xd4\x3c\x3e\xbc\x37\x07\x47\xb9\x34\xdb\xe5\xe7\xff\xe6\xa8\x28\xd7\x66\xd3\xa6\x08\xb1\x4d\x7c\x94\x7b\xbd\x25\x03\x62\x29\x4d\xc2\x36\x60\x51\x5e\x9b\x0d\xb3\x0d\x37\x8c\x37\x07\x5c\x99\x18\x20\x17\x44\x7b\xab\x85\x83\x62\x7d\x33\x00\x13\x1d\x1e\x43\x27\x88\x54\x10\x6b\x81\xa0\xb8\x5e\xae\xfe\x4a\x49\x75\xac\x85\x87\x52\xdd\x44\xf5\x17\xa9\xe7\xb2\x0e\x2c\x4a\xf9\xb5\xea\x96\xd5\x0c\x89\x3a\xa0\x28\xae\x97\xab\xbf\x42\xb8\x50\x3d\x50\x14\xcb\x7b\x46\xdb\x13\xd5\x8a\x7c\xba\x02\xb4\xe4\xb4\x26\x68\x09\x85\x87\xf8\xb6\xb9\x6c\x1c\xa2\xc2\x28\x07\x50\x46\xfc\x7f\xf3\xec\xed\xd9\x8b\xb3\x77\x32\x5f\x8b\xd9\xd9\x49\xa2\x19\x78\xfb\xec\xd5\xeb\x5f\x9f\xc9\x9b\xc2\x05\xb8\x5c\x32\x97\x85\x3b\xc9\x8c\x9e\x06\x96\x44\x39\x99\x67\x26\xbf\xe5\x68\x83\x3d\x50\xdd\x0a\xfb\x10\xcf\x3e\x3b\x7b\xf6\xce\xcc\x74\x93\x9f\x5a\xf5\x98\x96\xf1\x66\x7d\xa4\x6e\x1e\x1b\x5b\x05\x1b\xe4\xb1\xd9\xd6\xd1\xb7\xcb\x63\xfb\xdb\x87\x5e\x76\x95\xfe\xeb\x6c\x5b\x79\x6c\x44\x42\x51\xf3\xd9\x56\x5f\x58\xbf\xaa\x41\x93\xdc\xb6\x2f\x98\xde\xa6\x87\x75\x1e\xd4\x4b\x3c\xe3\xe8\x20\x02\xa6\x04\x48\x60\x11\x60\x58\xed\x0e\x28\x52\x88\x01\x62\xa2\x62\x98\x08\xac\x11\x13\x61\x44\x0d\xf3\xeb\x5a\x72\xd0\xfa\xa5\x34\x22\x5b\x7d\x80\x52\xec\x38\xe6\x1f\x2e\x20\xfd\x9e\x92\x7f\xa4\xe5\xba\xa9\x4c\x08\x48\xa6\xf3\x45\x9a\x69\x0a\x97\xc2\xec\xb6\xbd\xbd\x72\xfc\x66\xad\xbc\x11\xd9\x8d\xfa\x61\xa3\x5a\x2a\x15\x41\x1b\x32\xa0\x87\x18\xbc\xc4\x63\xb6\x74\xaa\x32\xaa\x1e\x30\xf8\x1e\xb1\xe0\xdc\xb3\xe7\xaa\xbd\x51\x7f\xad\xf4\x36\x49\x58\xb4\xf4\xc8\x9e\xb0\x58\xce\x21\xdd\x3c\xbd\x47\x59\x3a\x5f\x62\xa2\xea\x4d\xd0\x9f\x73\xe3\xde\x42\x6b\xe5\xe2\x1c\x94\x33\x27\x2b\x78\x97\x92\xf7\x62\x1f\xb8\x8a\x74\xd5\xdc\x6f\x79\x5c\x95\xaa\xc3\xc7\x08\x4a\x05\x64\x7b\x6b\x27\xe1\x54\xb0\xae\xa6\x2e\xc4\x55\x99\x37\x12\x51\x4b\x94\xac\xe1\x63\xa5\xc7\xba\x9b\xf6\x06\x92\x95\x96\x95\x23\xca\xcc\x34\x09\xb9\x57\x96\x53\x7f\x1b\x09\x39\xee\x54\x9c\x33\xda\x3d\x7b\x2a\x4e\x03\xbc\x27\xd1\xd7\x0d\xf3\x6f\x56\x67\xde\xfc\x33\x5b\xe4\x56\x2f\xe9\x01\xf1\x70\xee\x1d\x98\x6e\x55\x6f\x1a\x16\xde\x39\x84\xa9\xc7\x02\x05\x3b\xe6\xf7\xd6\x18\xb7\xb3\xe4\x73\xc3\x7c\x0e\xbd\x1c\xf4\x16\x8f\x81\x8d\x99\x8d\xc9\x36\x0e\xb7\xcd\x2f\x64\x47\x4b\x1c\xe3\xc1\xb7\x66\x18\xeb\x25\xeb\x35\x60\x19\x0f\xb6\xcc\x31\xb4\x75\xd1\xdd\x4e\x12\xdf\x9a\x5c\xa3\x61\x95\x61\xd1\xe3\x8d\x33\xf7\xea\x64\xed\x6d\xc0\x3d\x8a\xf0\x52\xe7\x1d\x9b\x55\x59\xb6\x70\x90\xee\x3a\x1c\xe4\xc1\x5d\x49\x13\x77\x32\x8f\x75\x0b\xda\xd5\xe0\x21\xdc\x54\x6b\xf0\x8f\x23\x89\x85\xc0\x47\xf3\x47\x67\x28\x47\x6e\x86\xb2\x01\x56\x25\x29\x13\xf7\xa5\xb9\x09\x09\xc3\xdd\x1a\x2f\x39\xfe\x5a\xac\xe4\xdd\x14\xe6\x90\x64\xfe\x86\x3c\x0d\xb8\x20\x89\x14\xde\x75\x53\x26\xd3\x59\x51\xa9\x5f\x5d\xca\x40\xc9\xa1\x35\xef\x44\x10\x85\x71\xd2\x30\x24\xd1\x96\xf1\xde\x05\xfe\x79\xee\x6b\x81\x7b\xbd\xd2\xd7\x44\x3f\xe8\x20\x4e\xc4\x90\x9d\x9d\x6a\x80\x3f\xb2\x6d\xe6\x7a\xbc\x0e\x6f\x3d\x5a\x8f\xb7\x56\xa6\xe0\xae\x01\x7e\x5a\xc1\x83\x36\x49\x9e\xdd\x20\xc3\x55\x64\x78\x19\x59\xad\x0c\x27\x54\x60\x7d\x1a\x29\xa9\x46\xae\xab\x96\x1f\xcb\xec\x0d\x86\x29\x91\xe6\xab\xf2\x3c\x58\x05\x3b\x94\x26\xad\x2a\x46\x09\x9e\xe1\xea\xca\x95\x5d\x2b\xce\x4e\x35\x89\x7f\xc9\xa4\xd6\x55\x60\xa0\x2c\x56\xa1\x0c\x06\x6a\xc9\x2b\xdb\x34\x29\x56\x24\x5d\xd8\xb3\x53\x90\x3d\x1c\xa7\x33\xcf\x49\xde\xe4\x53\xda\xcc\xfd\xfb\xe6\x95\x96\x0b\xeb\x11\x96\x32\x5b\x99\x87\xc7\x5f\x27\xd9\x13\x9e\x2f\x2e\x76\xd3\xf0\x32\xbe\x08\xed\xf5\x2f\xb7\xee\xcc\xd2\xa3\x63\x1c\xbe\x88\x7f\x3d\xfd\xe9\x97\x57\x4f\x77\x7f\xb6\xfa\x22\x4c\xe7\x40\xd5\xd6\x6b\xb2\x82\xad\xb4\xf8\x66\x85\xc7\xe9\x1a\x6f\x13\x8f\x7a\x3e\xbb\x53\xb3\xf3\xe1\xf4\xea\xc7\xe7\xff\x78\xfa\xb6\xd6\xec\x38\x04\x03\x7e\xf8\x11\x70\x07\x2d\x64\x7a\x4f\xff\xd9\xd5\x6a\x33\x13\x21\x10\x6f\x22\xc5\x00\xd5\x3b\x20\x9c\x2d\x89\xc7\x1f\xfd\x72\x78\x34\xd3\xc7\x15\x09\xa2\x67\xd4\x5c\xd6\xfa\x75\x4a\xe9\xed\x3d\x25\xcd\x37\xec\x13\x05\x1b\xae\xdb\xa7\xbd\x1a\x7d\x3a\x95\x2d\xee\xd5\x8d\xb3\x66\x01\x5c\xf8\x58\xa0\xa1\x5f\x6a\x8e\x31\xef\x62\x93\x7d\xe1\x58\x88\x6b\x6c\x8d\xca\x7c\x63\xd6\x5b\x9d\x3d\x97\xf1\x9b\x0d\x26\xb7\x7a\x27\x41\xfc\x69\xa5\x3c\xa4\xee\xac\x35\xef\x56\xbe\xb9\x79\x7a\xbb\xf3\x05\xa1\x64\xdd\xe8\x41\x33\x17\x10\xd9\x0e\x3a\x59\x0f\x79\x75\xd0\x02\x1d\x46\x1a\xa2\xf8\x12\xb6\x8b\x71\x9e\x25\x09\xab\x30\xd4\x88\x0e\xe5\x06\x7e\xaf\xe4\x98\xa3\x6b\x0a\x37\xb3\xca\x7b\xff\xad\xe0\x0c\xe2\xab\xe4\xe3\xe9\xb3\xe8\xf9\x0a\x38\x03\xe0\xdf\x0f\x11\xca\x0b\x07\xae\x41\x09\x21\xb6\x54\xc0\x5f\x21\x85\x4f\xab\xd2\xf7\x5d\xf5\xfb\x39\x2c\xd1\x71\x03\x35\x89\x33\xcb\x29\xd3\x87\x1d\x4d\x1f\x59\xd0\x89\xa6\x52\x85\xae\x5f\x85\xc2\x36\x6a\x87\xb8\xef\xfe\x72\xb1\x38\xff\xd2\x1f\xaf\x57\x05\x7e\x65\x4f\xcf\xb9\xde\x5e\xa7\x93\x7c\x2e\xd8\xfc\x97\xb4\x74\xd7\x10\xcc\xf9\x6f\x5a\x1d\x44\x68\x79\xfc\x08\x1a\x4a\x6b\xcd\xd0\x17\x27\xa4\x81\x7d\xbb\xae\x15\xc2\x81\x47\x6a\xe2\x90\x8e\x34\xcc\x0f\x52\xac\x18\xc5\xe9\x45\x71\xb2\xbb\x4b\x59\xc6\x09\xca\x3e\x6a\xe0\x1e\x46\x4a\xe3\xc8\x62\xaa\xb0\x7b\x5b\x39\x40\x69\x19\xc1\xca\xa4\xec\x1e\x18\xfa\x4f\x88\xa5\x38\xcb\x5f\x3c\xf5\x6d\x61\x0b\xb5\x81\xf8\x5e\x66\x17\x5e\x9c\x7a\x57\x31\x9a\x7a\xa1\x17\xc5\x93\x09\xcc\x61\x8a\x3c\x32\xac\xb5\xe0\xf8\x78\x9b\x5f\x14\x10\x15\x68\xab\x75\xa3\xcd\xc1\xf4\xb2\xc6\xfb\x63\x91\x34\xd8\x1e\x4d\xba\xda\xdb\xab\x16\xdb\x92\xec\x22\x4e\x89\x92\x2e\x2a\x83\xd0\x45\xc8\xd5\x7a\x21\xc3\x11\xe3\x80\x66\x0d\x98\x86\x05\xb7\x39\xd6\x17\xec\x4a\xe7\xe0\x36\x00\x64\xec\x2a\xfb\x16\xaa\x53\xb0\xf1\x59\xcb\x53\x30\x7e\x1d\xb0\x14\x11\xe3\xae\x64\xe8\x41\xd0\x18\x57\x40\xc1\xa6\xbb\x2b\xea\xd7\x74\xfc\xf1\xfa\x1f\xff\x38\xea\x3b\xf2\xb7\xb9\x2d\xe8\x31\x5d\x50\x8e\x44\xed\x3d\x8b\xd5\xb4\xb7\x15\xc4\x41\x71\xb8\x1d\xeb\xf2\x05\x18\x0e\x7b\x87\xa0\xab\x05\x5a\xb0\xcf\xb5\x7d\x50\xfa\xbe\xe6\x81\x10\x63\x51\x4a\x0e\x35\x8b\xd8\xa9\x2a\xb0\xd4\xe0\xb8\xd7\xf9\x01\x16\x6d\xfa\x0e\x9b\xb7\x6e\xd0\xee\x2b\x24\xe6\xfa\x19\xa6\xf1\x29\x59\x73\x12\x0c\x93\xdb\xc6\xfd\x72\xaa\xb3\xc3\xc8\x5b\x1b\x65\x72\xcf\x36\xcb\x4d\xce\xf2\x1a\x94\x6c\x26\x3b\x95\x89\xb9\xe7\x20\x26\xf1\x79\x28\x06\x73\x63\x0c\x1b\xd3\x68\xf5\x61\xb4\x62\xe0\xb5\x45\xb1\xd2\x98\x4d\xd3\x88\x7d\xc2\x0c\x57\xc5\x1a\x32\x81\x4e\xbc\x7a\x5e\x86\x6a\x89\x80\x00\xc1\x84\xd7\xde\x34\xbc\x84\xde\x65\x5c\xc4\x08\x2f\x60\xef\x97\xb7\x2f\x3d\x34\x0d\x91\x17\x17\x02\xd4\x35\x4c\xbd\x45\xfa\x31\xcd\xae\x52\x2f\x87\x2c\xb7\xc8\x2b\x32\xef\x3a\x5b\x78\xe3\x30\x25\xf0\xae\x17\x19\x7e\xf2\x3c\x1c\x7f\x24\x80\xaf\x53\xe8\xe5\x59\x86\xbc\x2c\x27\x77\x73\xd8\xa6\x25\x99\x90\x70\x19\x3d\x39\x7d\xe9\xbd\xc3\x27\xe4\xee\x19\x1c\xe7\x10\xbd\x78\xea\x9d\x9b\xcd\x3c\x39\x7d\x59\x74\x6a\x89\x2c\xcd\x97\x4d\xcd\xa5\xd1\x44\x10\x29\xad\x8e\x24\x96\x26\x26\x3c\xa6\x76\x12\xa7\x1f\x2b\x38\x8e\x2a\x67\xd3\x7e\x4c\x73\x38\x51\xe5\xdd\x7d\x82\xb4\x4d\x4e\xb2\x66\x60\xda\x72\xe2\xff\x96\x11\xfa\x36\xf7\x32\x59\x83\x87\xca\x03\x8d\xb2\x71\xb1\xe6\x40\x81\xff\x18\x0b\x22\x79\x1a\x26\x74\xd0\x3d\x1d\xdf\xc0\x3f\x7d\xfd\xf3\xd9\x2f\x2f\xdf\x3f\x7d\x7d\x7a\xf6\xfe\x97\xb7\x2f\x15\x1a\x34\xaa\x42\xca\xff\x7b\x0b\xc3\x88\xac\xd5\x28\x1b\x13\xe1\x85\xd8\xc7\xb6\x40\x99\x4d\x51\x60\xeb\x6f\xe7\x3f\x8f\x6a\xcc\xc8\xc2\x1c\x7a\x69\x86\xbc\x70\x81\xa6\x59\x1e\x7f\x86\xd1\x46\xb3\xf3\x07\x3e\x2d\xbf\xfa\x89\xa8\x9d\x37\x8b\x02\x79\xe7\xd0\xbb\xc8\xc3\x14\x1f\x37\x73\x98\xcf\xe2\xa2\xc0\x0c\x16\xb3\xfb\xcb\x18\x5e\x49\x04\xf1\x8e\xf7\xa4\xf8\x48\xcf\x8a\x30\x9a\xc5\x69\x5c\x20\x52\xb7\xdc\x8b\x27\xe4\xe4\x41\xd3\x38\x25\xf7\xbd\x62\x9a\x2d\x92\x88\x9e\x64\x21\x51\xc1\x3b\x5f\x9e\x42\x5b\x3b\x18\xbe\x01\xbf\x04\xfe\x6e\x38\x4e\xb8\xda\x88\x66\x58\x94\xb8\x63\x1c\xd4\x4e\xab\x04\x86\x79\xfa\x35\x88\xf5\xf2\xd9\x93\xb7\x3f\x1b\x24\x63\xb5\x4d\x0a\x38\x5e\xe4\x31\xba\x6e\xa7\x10\x5d\x65\xf9\xc7\x38\xbd\xd8\x9d\xe7\x59\xb4\x20\xdf\x6c\x87\xe3\xa4\x58\x9b\x9c\xcf\xb3\x24\xc9\xae\x08\x41\x2f\x16\x71\x04\xef\xe8\x51\xb4\x2a\x62\x62\x9c\xa5\xe3\x90\xc8\xb6\xe9\x25\x8f\x8c\x20\x66\x0f\x3c\x11\x6d\x94\xd1\x58\x8a\x36\xfc\xad\x91\xc1\xc3\xd4\xe5\xbf\x99\x73\x57\xc5\x4c\xbe\x2b\x66\x85\x07\xf9\xbf\xe6\xbd\xa7\x97\x8b\xcd\x20\x94\x95\x18\x3c\x9a\x90\x6b\x8f\xc1\x13\x37\x1b\xa3\x48\xad\x8d\x96\x5c\xa6\xb9\x80\x82\x4a\xbf\x30\x14\x94\x59\xce\x73\x59\xc3\xc2\x56\xcb\x65\xba\x1d\xc0\x65\x7c\x56\x56\xa2\x3c\x9b\x18\x53\x64\xf2\x5e\xa7\x0c\x92\xf7\xe4\x5e\xb7\x8c\xce\xec\x02\x21\x61\x58\x1c\x8d\xe3\x6e\xb6\x81\x11\xac\x77\xdb\x44\xa1\xc7\x37\x35\x14\xda\xd1\x4a\xb0\x1b\x4b\x6f\xd7\x44\xc9\x37\x81\xa4\x8b\x7c\x2c\x21\x33\xf1\xdb\x9d\x45\x1e\xfb\x81\x8e\x10\xa3\x40\xd9\xd8\x1e\x36\x06\x58\x42\xd9\x1d\xb9\x21\x63\x09\xb6\x8b\x1d\x29\x87\x62\xe4\x20\x86\x4d\xcf\x10\x42\xe0\xe0\xa1\x82\xc3\xab\x02\x0a\x95\x60\x72\x58\xbb\xf3\x3c\xfb\x74\xcd\x71\x79\xf3\x71\xa9\x05\xcc\xc3\xc8\x34\xb5\x82\x65\xb0\xc3\x31\x61\xd6\x84\xd8\xb1\xc1\xeb\xdc\xde\xde\x2c\xbf\x08\xc4\x0e\x5a\x0d\xb1\x43\xf7\x0a\x1a\x3c\xbc\x81\x14\x32\x7b\x27\x35\x21\x56\x50\xb0\xa4\xdb\x4c\x9d\x94\x55\x38\x2e\x4e\x04\x97\x52\xf3\x1c\xc1\xc5\x34\xb4\xf3\xe9\x66\xf7\xcd\xf2\x0d\x64\xd6\x18\xad\xc8\xdf\xca\x2c\x35\x36\xad\x4f\x92\xb0\x98\xb6\x45\xb4\x8a\x25\x18\x21\x89\xdb\xe4\x21\xf7\x5b\xbf\xcf\x08\x84\x49\x96\xcf\xda\xe2\xf7\x5d\x0d\x42\xf8\xe7\x0f\xcf\x7b\x5d\xf4\x7c\x77\x2d\x81\x80\x59\xaf\xb7\x12\x99\x67\x23\x97\x38\xbb\xf3\xc1\x6e\x6b\xf8\x7f\xc3\xff\x1d\x8d\x82\xef\x77\x2f\x6a\x44\x9b\x36\x74\x5d\x65\x69\x0e\x0b\xb8\xb2\x12\xbc\xb3\x44\x01\x1e\x10\xd1\x28\xf5\xcb\xca\x99\xcb\x0b\x17\x74\xc2\x24\x0e\x0b\x5a\xfd\x9e\x6c\x67\x3f\x00\x31\x82\xb3\x1a\x8f\xad\x92\x03\xc6\x59\x8a\xc2\x38\x5d\x55\x70\x5f\x9c\x06\xd6\x12\xe2\x09\xc4\x4b\x06\x55\x94\x0e\xdf\xe1\xa2\xd0\xb0\xd3\xe9\xa4\x1d\x0a\xa8\xd0\xc1\x0a\x6f\x87\x44\x16\x3f\x21\xd0\xd4\x23\x90\x0c\xc2\x21\x87\xab\x6b\xf7\x46\xc3\x2e\xc5\xba\x2c\x76\x8a\x41\xbb\xc7\xf0\x93\x69\x41\x01\x7f\xe8\x07\x8f\xfe\xfd\x1d\xe5\xb6\x58\xf8\x5a\x0e\xbf\xbb\x49\x96\xa3\x7f\x9f\x24\x4a\x75\x72\xb5\xf0\x7e\x0a\x0a\x13\xf0\x9e\x43\x7c\xe0\xab\xcb\x35\xa2\x64\xc9\xfa\xbb\xc8\xb3\xc5\x7c\x17\x52\xd1\x62\x77\x3c\x85\xe3\x8f\xe7\xd9\xa7\xbb\x22\xbc\x47\xcf\x3f\x1c\xc2\xcf\x10\x39\x7c\x82\x3a\xa0\x85\x08\x1b\x22\xd8\xce\x91\xc0\x64\x55\xe3\x23\xcc\x3d\xdd\x03\x7e\x9c\xce\x17\x44\x07\xed\x1d\x82\x3d\x81\xf0\x8b\x7f\xf5\x05\x3e\xef\xb0\x47\xfd\x16\x7d\x12\xcf\xc8\xa9\xe4\xab\x29\x3a\x25\x75\xc0\xcc\xb0\x56\x8a\xf9\x0d\x79\xd5\xd7\x52\x7a\xf6\x41\xe9\x25\x2b\x68\xb2\x5b\x8f\xc8\xe6\x78\x8a\xc2\x84\x21\xd0\x0a\x22\x64\x69\x13\xa5\x62\xe5\xd2\xf8\x66\x2a\xa6\xa5\x67\x84\x3b\xdd\x95\x15\xfb\xaf\xfe\xf5\x4f\xcf\x7e\xc9\x3e\x38\x4e\x17\xbe\x40\x2b\x8e\x99\x9e\x9a\x1d\xd5\xdf\x07\x7e\x9e\x91\xfa\xa1\x61\x82\x67\x92\xae\xc5\x9e\x35\xee\xf8\x18\xf4\x2d\xc1\x71\x75\x97\xce\x66\xcb\x43\x99\x84\xbb\xb4\x36\xb6\x53\x33\x41\x56\x46\xc8\x7e\x4f\x95\x11\x16\x7f\x56\x46\xf8\xcf\xa8\x8c\x30\xae\xe6\x49\xcf\x7b\xf9\x59\xf1\x62\xff\xb3\x9d\x27\x91\x1c\xad\x32\x63\x52\xf0\xa2\xc8\x96\x72\x45\xdc\x3c\x18\x69\xe5\x8e\xb9\x95\x8c\x19\x2b\x7c\xe0\xbf\x83\x9f\xf0\x3f\xa7\xfc\xd0\x04\xfe\xdb\x30\x8a\x33\x1f\xf8\x2f\x59\x82\xd8\x33\x25\x95\x50\xb3\xac\x1d\xe0\xa3\xb2\xbc\xab\xc9\x23\x3e\xed\x15\x10\xa1\x71\x02\x49\x89\x22\x58\xe9\xd1\x8d\x96\x56\x76\x11\xee\x18\x35\x44\x2b\xd2\x02\x1b\x74\x96\x0a\xb9\xc0\xcc\x2b\xee\x4a\xf8\x7a\x4b\x91\x03\x76\x87\xf6\xca\x2c\xff\xae\x85\x58\x1e\x8e\x24\x30\x3d\xca\x16\xe3\xa9\x5a\x47\x82\x9a\xc9\x25\x34\xfd\xaa\xc1\xa8\x32\x89\x63\x40\xe5\x20\xd1\x3b\x3d\xa2\x9c\xac\x92\x3f\xcc\x70\x68\x36\xa4\x2d\xf2\xd6\xf6\xb4\x16\x2d\xa5\x14\xe1\x5b\xaf\xba\x88\x5a\x40\x82\x26\x84\x8f\xb4\x82\x10\x3e\xa1\x35\xdf\x50\x7c\x29\xb5\xcd\x0b\x9c\x0f\x54\xe3\x06\xd5\x2f\x4a\xc2\x42\xb6\x0f\x59\x70\xf3\x9c\x31\x40\x5f\xcc\x11\xbe\x42\x7d\xbb\xcc\x6f\xdf\x63\x03\x68\xcb\x67\xcc\xf1\x94\xab\xaa\x1c\x10\xcb\xbc\x4e\x51\x82\xe8\xd0\xd6\x63\xd2\x46\xd6\x54\x01\xc5\x7f\x74\x0c\x58\xee\x6d\xcf\xe2\x15\xdd\xa4\xae\x49\x8f\x27\xcb\xfe\xc7\x90\xc3\x96\x78\xbc\xda\x7d\xc6\x91\x18\xcd\xac\x5e\xe2\x42\xe3\x29\xbf\xcc\x28\x50\x18\x15\x36\x8c\x60\x63\xa5\xea\xed\x66\x82\xaf\x2e\xf2\x62\x7d\x3f\x92\xb5\x2d\x44\x31\x89\xdc\xbc\x10\x1a\xd5\x20\x92\x5a\xd5\x20\x3a\x9d\x0e\x54\xca\x41\xc0\x00\x64\xbc\x0e\x43\xe2\x83\x82\x99\x45\xf9\x35\xce\xb3\x40\xcc\xec\xd4\x17\x10\x79\x78\x81\xb8\x2a\x20\xc0\xe4\x11\xfb\x97\x58\x60\x0a\x88\x88\x71\x82\xc5\x1f\xc3\xa4\x73\x01\x91\x80\xd0\x6f\xd1\xb5\x16\xb8\xee\x12\xb5\x85\x55\x00\x20\x58\xf5\xc4\xce\x81\xbb\x80\x59\x6f\x65\x11\x06\x42\x61\x61\x1f\x91\x97\x88\xcd\x65\x39\x54\xaf\x93\x2b\xa3\x7f\x9f\x18\x57\xf0\x67\xf0\x76\x11\x9f\xf1\xfd\xef\xf5\x47\x3a\x28\x7b\x99\x5d\xc1\xfc\x34\x24\xd2\x65\x31\x4f\x62\xd4\xf2\x3b\x7e\xd0\xf9\x90\xc5\x69\xcb\x6f\xfb\x94\x5e\x64\xad\x99\xd8\xfb\x8c\xb2\x6a\x91\x08\xb2\x79\x76\xca\xa5\x24\xd9\x4e\xa3\x45\x32\xe1\x52\x2d\xe1\xc0\xe8\x36\x80\xcb\x25\x28\x06\x8b\x56\xa2\xe1\x4f\x27\xdb\x40\x15\x8f\xcd\x66\xc5\x9a\xd8\x00\x59\xdc\x81\xcd\x6d\x7c\x49\xa2\x50\x87\xab\x21\x8f\xad\x6f\x62\x9d\x43\x01\x3d\x4e\x54\x6d\x30\xaa\x04\x3d\x1e\x83\xa8\xa6\xb9\xda\x72\x48\xdf\x15\x53\xc2\xcf\x4f\x77\xa3\xdd\xef\x9f\x3a\xc4\xf6\xba\xa6\x84\x79\x98\xfa\x22\x31\x8e\x0c\x99\x0d\xb6\x68\x93\xd1\x7a\xf2\xe4\xb9\x8b\x76\x05\x65\x46\xee\x92\x5d\x81\x08\x4c\x77\x65\xa1\xbc\xb9\x3c\xfc\x7f\x8b\xd3\x99\x3d\x71\xfd\x9b\x59\x49\x85\xfc\xfe\x1f\x63\x22\x55\x16\xc5\x5d\x5a\xab\x58\xcf\xbd\x2b\x4b\xf5\xed\x2f\xff\x73\x79\x96\xff\xc3\x95\xe4\x53\x7b\xa9\xf2\xe5\xb8\x95\x95\xca\x0d\x01\x6b\x2e\x54\xfa\xc1\xdf\xd1\x3a\x95\x0b\xe2\x2e\x2c\xd3\x35\x4d\xb4\x5f\xc9\x5b\xfc\xe6\xf9\x4f\x7b\x3f\xbe\x38\x5e\x95\xb2\x5e\x3f\x7c\xec\x99\x62\xc3\x52\xe3\xd0\xab\xcd\x5c\xc2\x38\xc1\xff\xab\xb9\x86\x36\xa9\x31\x68\xce\x91\x58\x2c\x54\x53\xc9\x2d\xba\x4a\x59\xba\x37\xe4\xf2\xa5\x12\x49\x51\x29\xc1\xa5\x20\xaf\x29\xc1\x91\xed\x77\x57\xf8\xdb\xbb\xf1\xdf\xe6\xe3\xe9\xe5\x47\xfb\x72\x99\xc2\x64\xae\x1a\x56\x39\x5a\x95\xd5\xfa\xca\x1f\x66\xf5\x45\x68\x4c\xb5\x8d\xe1\xa9\xa6\x83\xae\xa6\xf8\xfb\x92\x40\x26\x7f\xd2\x6b\x63\xee\x01\xa9\x5c\x13\x68\x32\x62\xb2\xa5\x31\x47\x1c\x62\x4e\xa0\xd5\x59\xad\x05\x12\xf2\xe5\x88\x98\x9b\xca\x52\x64\x57\x0a\xa3\x86\x3d\x81\x09\x99\x07\xb2\x5f\xc4\x28\xa5\x59\xcc\x46\x66\x73\x7b\x65\x29\xd5\x6c\x80\x9f\x04\x46\x03\x32\x15\xed\xc0\x62\x23\x3b\x02\x6c\x9e\x38\xb2\xde\x1a\x88\xb7\xfc\x08\xe8\x35\x4e\x44\xec\x11\xf4\x0a\x6b\x0c\xb7\x92\xf8\xb0\x3d\x73\x0b\xd0\x92\x65\x78\x9a\x0c\x43\x17\x60\x0b\x42\xc5\x05\xd5\x17\xcb\x48\x1a\x92\xea\x03\x85\x1a\xa3\x55\x90\x20\x6d\xbe\xce\xbe\x96\x6f\xda\xdb\x7c\xed\xca\x10\x2b\xb1\x62\xf7\x9a\x04\x7d\x37\x39\xc1\x89\x5d\x8a\x16\xdf\x10\x91\xdf\x6d\xbc\xf9\xa3\x36\x8d\x84\x8a\xd3\xcb\x4c\xc0\xe6\x11\x1f\xc8\x3a\x06\x29\x85\x03\x7e\xbb\x03\x3d\x87\x10\x93\xbe\x3d\x89\x13\x47\xfd\x98\x46\x8e\x57\xe9\x72\x4d\xfe\xf4\x62\xfe\x67\x78\x31\x8b\xea\xa3\x35\xf9\xe5\xf4\x9f\xa7\x57\xc9\xe1\x0a\x73\x88\xd4\x1d\x2a\xed\x22\x1a\x5e\x90\xb1\x78\x2b\x8d\x21\x5d\xf5\xc0\x95\x18\x69\x05\x0c\xf3\xf1\xd4\x75\xb8\xa9\x67\x9f\xed\x8b\xef\x65\x93\x1c\x5c\x5b\xb6\x67\xa6\xad\xd0\xf6\xa4\x9a\x63\x6d\x50\xde\x26\x90\x6d\xac\x7b\xae\x3a\x18\x5d\xa9\x6f\xab\x55\xc5\xe9\xbb\x0e\xfd\xa6\xce\xab\x1f\xe1\x75\x94\x5d\xa5\x95\x2f\xf3\x67\x46\x3a\x6e\xdc\x1e\xf0\x0b\xd6\x7f\x55\x6f\x3b\x00\xfe\x3c\x09\xc7\x70\x9a\x25\x04\x37\x43\xf8\x46\x94\x8b\x23\xd6\x84\x1f\x2e\x50\x36\xc9\xc6\x0b\xbc\x2e\xe4\xdf\x23\x8e\x4b\x67\xcc\x59\x59\xa4\xb0\xc8\x18\x7b\x56\x4b\x58\x9d\xd4\x8e\x26\x5c\xdd\xc6\x4c\x35\x1f\x43\xac\xf8\x18\x98\x07\x21\x37\x3d\x0a\xad\x56\xe8\x74\x2a\x10\xfb\xb8\x24\x99\x4d\x5e\x57\x6e\xdf\xde\xf2\xf5\x48\x4c\xe2\x7c\x39\xd9\xde\xe2\xf7\x6e\x6f\x5b\xb4\x3e\x78\xb0\x34\x6a\x26\x8b\xb7\x61\xb0\x64\x73\x8f\xef\xf5\xf6\x06\x83\x01\xc4\x9c\xfc\x34\x8b\x48\xa4\xbc\x89\x1c\xba\x5c\x06\x9a\x95\x98\xdb\x87\xd2\xd5\xe6\xe5\xd0\xf2\x62\x00\x42\xcd\xba\xac\x3f\x24\x57\x6e\xde\xb0\x79\xfe\xa6\xd1\x7e\xa8\x9e\xa7\x71\xa5\xee\x53\x80\x78\xb5\xee\x83\xb5\xb9\x78\x9c\xe5\xf3\x36\x4b\xbf\xdb\xf8\xc4\xdd\x16\x1f\x4f\xaa\xf9\xf8\xe4\x45\xf4\xea\xfc\x2a\x9c\xd9\xf9\xf8\xfb\xf7\x61\x7e\xd1\xf5\x01\xfd\xa3\xe7\xe3\x5d\x9a\xc0\x31\x22\xc2\x91\x1c\xbe\x0f\xfc\x57\x30\x5d\xbc\xa0\x65\x89\xf0\x9f\x67\x10\x4b\x6d\xcd\x9e\x63\x55\x8d\xc2\x39\x56\xb4\x48\x04\xbe\x04\xb4\x16\x30\xc6\xe5\x32\x6e\xc0\x7f\x1c\x11\xe0\xad\x79\x98\xa3\x98\x49\x6f\x8f\xd3\x62\x1e\x8e\xa1\x59\x24\x29\x1a\x17\x15\x78\x76\xc7\xec\xe3\x1c\x07\xde\x9c\x54\x76\x12\xf5\xfb\x23\x99\x64\x1b\xfd\x80\xc9\x56\xbc\x48\x27\x99\x01\x80\x20\xc0\xa2\x14\x38\x66\x02\x7a\x9c\xcd\x60\x3b\x0d\x2f\x7d\xe0\xcf\xc2\x38\x65\x7f\x62\x22\x51\x43\x43\x98\x5f\x2b\xb7\xb9\x18\x9d\xa2\x76\xcc\xbe\xd1\x03\x5d\xfe\x3f\x81\x2c\xbf\x52\x09\xda\x33\xd0\xc8\x58\xad\x01\xa3\x77\x6b\x84\x11\xa8\xba\x9b\x14\xed\x37\x2a\xa9\xb4\x5f\xfe\x71\x00\xfa\x3d\x30\x64\xa0\xd3\xa3\x75\xaa\x25\x29\x9a\x15\xad\x0f\x04\x86\xfe\xcf\x2a\x52\xf6\x48\x54\x5e\x88\x60\x42\x7c\xd7\x8f\x0b\x14\x8f\x3f\x5e\xab\xf3\xda\x17\xca\x64\x1f\x0c\x7d\x14\xcf\x60\xb6\x40\x5c\xaf\x21\xd7\x28\x77\x87\xd1\x3b\x71\x4f\x8d\x75\x21\x8f\xf0\x66\xeb\xc2\x16\xf8\x65\xb4\x16\xdc\x4c\x94\xcd\xd6\xc5\x6a\xa1\x9a\x5f\xa9\xa5\x26\x11\x13\x65\x9d\x5d\x54\xd0\xa3\xb4\xa1\xa1\x0f\xce\x32\x7b\xe4\x21\x7e\x18\xaf\x3b\x93\x7a\xe9\x86\xb2\xbe\xaa\x9a\x60\xb8\x86\x8a\xe5\x08\xdf\xd3\x6a\x3c\x30\xb8\x89\x7d\xb5\x02\xc0\x3e\x0b\xfc\x30\xd0\xd4\x7d\xa3\x92\x03\x6b\xb1\x31\x00\x05\x79\xef\x60\xf3\x32\x0e\x16\xc5\x7d\x15\x4c\x14\xa9\x6a\xc8\xfb\xad\x22\x40\xdd\xdb\x0a\x1c\x81\x18\xd9\x46\x15\x1f\x5c\x38\x0d\xe6\x5e\x10\xa1\x8e\x43\x36\x85\xa4\xa4\x76\xa6\x58\x9a\x1a\xf3\x32\x6b\xc3\x78\xd1\x88\x2a\x40\x6b\x07\x5b\x95\xc1\x40\xae\x3c\x92\xde\x17\x79\xd9\x02\xb9\x30\x84\x56\x61\x26\x5a\xaa\x5e\xe0\x46\xe3\xf4\xa2\xaa\x55\x8b\x15\xca\xb9\xcd\x9d\xb4\x16\x48\x26\xbf\x37\x72\xc7\xe9\xf6\xa8\x0d\xbc\x79\x02\xc3\x02\x7a\x24\x34\x8f\x62\x81\x70\xb4\xa8\xdd\x77\x15\x60\x98\xeb\x4e\x41\xef\xc8\x35\x1f\x0b\x99\xef\x0e\x4a\x0f\x60\x8e\x3b\xcb\x22\x48\x70\x34\x7c\x0d\x7c\x74\x73\x1a\x33\x86\xcc\xc4\x5f\xd2\xf8\xae\x21\xfa\x0c\x15\xd6\x09\xa8\x45\x93\x88\x76\xa2\x9e\xa5\x52\xc1\x92\x8e\x87\xaf\x05\xd1\x7d\xf2\xa4\x76\xdc\xf2\x5a\x42\x25\xe4\xd3\xcd\x16\xb7\x4e\xab\x98\x48\x60\x14\x9c\x7b\xbb\x84\x12\x2d\xff\x71\x88\x45\x4e\xe1\x6d\xd3\x09\x37\xfa\xc7\x21\xd1\x3c\x4b\xe2\xf1\x75\xa3\xca\x5b\x95\xd4\xa1\xed\x7d\x4b\xfa\xa8\x3d\xab\xc9\xe8\x1a\x5d\xac\x83\xfb\xfb\x25\xd0\xf7\x2c\x25\xe1\x0e\x56\x00\xcf\xf4\xf6\x30\x2d\x57\x75\xa8\x31\x9e\x8d\x51\xcc\xd2\xda\xb5\xde\xfa\x67\x8a\xaa\x14\x0a\x15\x75\xbd\x5d\x6c\xd8\x46\x43\x66\x38\x3c\xd4\xa2\xfb\x0d\x78\x40\x26\xe4\xc9\x25\x8d\xa5\x38\x5f\x95\x1d\x79\xd8\xc6\x2a\xff\x50\xc3\xb1\x0a\x1d\x7c\x2b\x63\xad\x02\x76\x36\x01\xb5\xc6\x45\x85\xb8\x7e\x8c\x99\xc4\x3c\xbb\x84\x79\x7b\x06\xd3\x05\xd7\x70\xc2\x3c\x0e\xdb\xbc\x94\xd3\xd3\x10\x85\x63\x98\x22\x81\xed\xf6\x78\x9e\x15\x31\x3b\xa6\x86\x7e\x02\x27\x8d\x4a\x5a\x69\x1f\xaf\xc2\x14\x43\x79\x4c\x40\x5d\x1a\xb7\xad\xb9\x4d\x8f\xb0\x02\x4e\xd3\x3e\xea\x73\x11\xdb\x83\x2b\xfb\x4b\x08\xd8\x58\xd7\x3e\x50\x5c\xd0\xc2\x6a\xc5\x58\x21\xbf\x26\xcd\x57\xcd\x50\x6e\x8d\xce\xd7\x41\x93\x27\x58\xcb\x04\xe8\x54\xb5\x47\x90\xfa\xde\xfe\xee\x7f\x93\xff\x45\x62\x3d\x14\xe5\x8a\xde\xfd\x72\x46\x4d\x8f\xab\xc4\x7d\x57\x15\x6f\x8e\x2b\x0f\xfc\x24\xfc\x4c\x94\x39\x07\xbc\xfc\x4a\x03\x8e\x52\x2d\x9b\xce\x3a\x30\x3f\xbc\x9e\x45\xa7\x4c\x4d\x52\x70\x70\x64\xa2\x4b\xaa\xbe\x6a\xeb\x01\xad\x2c\x47\x59\xff\x54\xac\x4f\xe6\xae\x8e\x8b\x76\x38\x46\xf1\x65\x59\xc8\x16\x96\x19\xfc\xda\xcb\x6c\x1c\xd2\x83\xde\x8b\x8b\x76\x42\x7f\x55\xbd\xf0\x26\x8f\x67\x61\x7e\x2d\x5e\x99\xf3\xdf\x3a\x55\x46\x56\xb0\x55\xc2\x4d\x3b\x34\x3e\x49\xd6\xe1\xb4\x58\x22\x89\x99\x54\xb5\x92\x32\x23\xa9\xda\x13\x41\x82\xfe\x03\xb3\xaf\xf4\x6f\x61\xbf\x79\x40\x58\x4c\x7a\x81\xa6\xf8\xf9\xae\x66\xe5\x7a\x40\x1b\x50\x91\xb7\x9a\x23\xc0\xd6\xde\xdf\xcc\x5d\xb7\x5e\xfb\x1a\x4f\xea\x5a\x78\x92\xc5\xfa\xa6\x4f\xd9\x7a\x8b\xd5\xb3\x79\x23\xd9\x59\x20\xda\x6e\x52\x9f\xc0\xba\x02\xb7\xdf\x37\xd6\x72\xbd\x9e\x59\x5a\xae\xcd\xd8\x6b\x3c\x6c\x91\x80\xba\x56\x09\xe8\x18\x3c\xb0\x97\xb3\xac\x59\xc8\xb4\xa2\x08\xe5\x6a\x74\x48\x45\x4c\xe7\x7b\x6f\x57\xba\x51\xb8\xcd\xb9\xca\x85\x21\x2e\x17\xe5\x02\x23\x7d\x6a\x0d\xc0\xff\x1e\x2b\xbb\x8f\x3b\x62\xe5\x9b\xa3\x9a\x87\x41\xe9\xb5\x66\x25\x47\x6c\xe3\xa6\x23\x69\x38\x68\xfa\x57\xe3\x11\xf3\xd7\x9a\x0c\x57\xbe\xb3\x6e\x79\x15\xcd\x3a\x73\x48\x92\x38\x61\x18\x79\x0c\xfb\xa6\xc2\x86\xb5\xba\xaa\x8d\x22\x37\x1e\x28\x07\x9a\xfa\x45\xf2\xc1\x68\xdc\x11\x9f\xb3\x48\x58\xae\x13\xcc\x2e\x82\x7a\xab\xe5\xf7\x3a\xdf\xd3\x42\x28\x04\x29\xec\x25\x64\x9b\xf3\xba\x12\xb9\xd3\x2c\xfa\x6a\xb4\xa6\xdf\xfa\x4a\x84\xae\xfe\x98\xd2\xf2\xcf\x8c\x02\x5f\x8c\xc4\x1f\x2b\x14\xa5\xad\xd2\xf7\xe3\xe5\xd7\x22\x6e\xc5\x97\x94\x66\x7f\x82\xd7\xbb\xbf\x72\x8e\xf0\xa5\xa8\x2b\xac\x81\x5f\x6b\x15\x2b\x1f\xfc\x4a\xd4\xae\xf1\x45\xa5\xf9\x17\x2a\x41\x36\x21\x7b\xb9\x54\x18\x3b\x9b\xc2\x71\xd2\xe4\x60\x72\x9f\x40\xb6\x83\xb0\xd4\xe9\x2d\x18\x2c\xca\x91\x02\x5f\xd2\x72\x21\x75\x54\xa3\x72\xad\xcd\x36\x63\x99\x1a\xb9\x14\x6d\x0b\xc6\x6e\xe9\xb0\xd8\x32\xf2\xf8\x62\xba\x86\x31\xe3\x4b\x9b\x33\x3c\xef\x47\x98\xcc\x4b\x9f\xac\x2d\xe1\x7e\x71\xe3\xc5\xbe\xc5\x78\xb1\xbf\x25\xe3\x85\xa7\xa9\xdc\x87\x1b\x94\xf6\x6f\x40\x8e\x0d\x75\x3d\x52\x7b\xb7\x58\x24\xde\xa5\xaf\xf9\xc4\xbb\x0a\xb2\xfa\xaf\xcf\xde\x9e\xbd\x78\xfd\xb3\xa3\x3a\xd2\x9a\x33\xbd\xd6\xe3\x9c\xb6\x64\x36\xfb\x26\x0c\xbf\xdd\x1a\xd0\xad\x2e\x40\x72\x77\x27\xe6\xa9\x03\x9a\xff\x9b\x92\x5b\x45\xf2\xb7\xd3\xdb\x4c\x50\xac\x89\xcf\xff\xbb\x98\x92\x1f\xc3\x62\x1a\x9f\x66\xf9\xdc\x7b\x89\xe9\xf0\x4d\x27\x45\xe7\x2f\x0e\xdf\xd3\x46\x33\xa9\xce\xde\xdb\x67\x6f\x5e\xbf\x7f\x71\x76\xf6\xcb\xb3\xdf\xcf\x06\x7a\x93\x67\x97\x71\x04\xbd\xe7\x10\x46\x46\xe9\xa4\x2f\x35\x5d\xe5\xdb\x07\xe0\xd0\x6e\xfb\x69\x60\xd0\x37\x1f\xdc\x77\x58\x65\xdc\x02\x61\x4d\x01\x98\x57\x64\xf5\xbf\x80\xa8\xab\xb4\xbd\xca\x2e\x2b\x6c\x1e\x52\xe0\x24\xeb\x96\x5b\x51\xb9\xf5\xd4\xd1\x11\xcf\x3b\x63\xdf\xb2\xf5\x70\xa5\xc8\x6c\x2c\x51\x2d\x80\xa3\x99\xc5\xa6\xae\x99\xa6\xdf\x6d\xbe\x91\x58\xef\x48\x85\x14\xee\xd7\x26\x80\xbb\x6a\x06\xa7\xb0\xd8\x30\x63\x0f\x8d\x71\x39\x93\x83\xd8\xeb\x83\x3d\xa7\xeb\xba\xbc\xf0\xf6\xac\x21\x6e\x5f\xc2\x03\xb9\x05\x19\xfe\x18\xf4\x0e\xad\xcb\x4b\xa9\x95\xa5\xbb\x1e\x28\x92\x9a\x4a\xa1\x91\xb4\xa3\x59\x6e\x94\x5a\xce\xe6\xa4\x72\xac\xac\xc1\xa1\x2e\x59\xc5\xf6\xbf\x65\xfd\x47\x0b\x87\x6e\xa4\x25\x1b\x3a\x8f\xbd\x08\xd4\x66\x12\xa2\x65\x77\xf9\x2c\xda\x56\x29\xe2\xf3\xbf\x9f\xf6\xc6\xf7\xda\x6d\xcf\xb7\xb6\xff\xb7\x17\xef\xde\x9f\xfd\xf8\x44\xb2\xa5\x76\xfb\x7f\x3f\xed\x41\xcb\xf7\xbe\x4c\xb0\xc5\xfa\x17\x7b\xa0\xbf\x1a\x38\x8c\x96\xdb\x91\x39\x98\x71\xe1\x4e\xc3\xa4\xf5\x78\x24\x3c\x18\x61\xd1\xac\x50\x92\x2c\xd3\x03\x7f\xf3\x81\x7f\x81\x44\x4d\x63\x03\x5e\xac\xc8\x72\xd4\x3e\xbf\xc6\xdf\x22\x88\x5f\x6d\x8e\x4e\x06\xc3\x31\x6e\x78\x1c\x8a\x8c\xcf\x71\x38\x8f\x11\xc9\xb9\xc3\x1f\xcc\xae\x60\x3e\x0e\x0b\x82\x72\xb6\x38\xe7\x69\x09\xaf\x68\xd2\x6a\xd1\x24\x89\xc8\x9e\x20\xa2\x65\x11\x15\x32\x8b\xa8\x04\x9d\xae\x7d\x36\x00\x79\x03\x7c\xb2\xcb\x30\xf7\x68\xc6\x66\xb2\xa3\x62\x95\xd1\x12\x12\x20\x1d\x18\xad\x83\x84\xde\x68\xe5\x83\x30\x70\xa1\xea\xe2\x06\x55\x54\xdd\xdc\x89\xaa\x9b\x3b\x50\x75\x73\x13\x55\x37\xd7\x32\x27\xf3\x72\xe6\x64\xa2\xa0\xea\x2e\x41\x3c\xc8\x95\x3c\x9f\xac\x34\x8a\xc5\x60\x98\x8e\xc0\x78\xb0\x09\x62\x17\x98\x0d\x6e\x96\x40\xcd\x6a\x1d\x3b\xb2\x5a\x67\x43\x38\x1a\x8c\x59\x56\xeb\x4c\xcf\x6a\x55\x7f\x82\x99\x99\xd5\x3a\x73\x66\xb5\xce\x6e\x6f\x67\x66\x56\xeb\x4c\xcf\x6a\x9d\x0d\x16\x75\xb2\x5a\x49\x6a\x11\x4f\x0e\x6b\xc5\x20\x03\x30\xb8\xbd\x85\xcb\x00\xcc\x02\x10\x29\x59\xad\x33\x23\xe7\x74\xc6\xb2\x5a\xb5\xeb\x8f\x66\xe5\xb9\x89\x44\x56\xeb\xac\x3a\xab\xd5\xfc\x82\x7d\x79\xe1\x2e\xce\xf0\xf0\x68\x56\x6b\x38\x98\x81\x9c\x66\x51\xe3\x3b\x0b\x30\x06\x11\x98\x29\x19\x5c\x45\x65\x06\x57\x02\x8a\xd5\x19\x5c\xf8\x38\xc9\x31\x13\xa2\x5c\xe3\xae\x40\x58\xfc\xba\x78\x73\xfe\xea\xcd\xf7\x2f\x37\x82\x1d\xd3\xd2\x6b\x8d\x81\xfa\x2b\xd2\x6b\x39\x2e\xa8\x3d\x8f\x96\x97\x96\x74\xa3\x52\xf6\x0d\x05\x4b\xbc\x51\x02\x92\x70\x9e\x9d\x96\x56\x68\xe1\xc7\xba\x60\x14\x2e\xf3\xa6\xa3\x71\x51\x33\xd1\x08\xd9\xe8\x4b\x31\xe3\x89\xa0\x9d\x76\xac\x87\x69\x96\x5e\xcf\xb2\x05\x93\xfa\x59\x85\x0f\xaa\xde\xc5\xbe\x89\x16\x63\xb1\x5e\xaf\xce\x5f\x75\x1f\x95\x9b\xa0\xcb\x58\x57\xff\x37\x83\x2f\x88\x2f\xaf\xdb\xe3\x2c\x82\xb3\x98\x62\x51\xab\x59\x94\xfa\xbd\x8a\xb7\x7e\x9f\x55\x7b\x3e\x5c\xb9\x4b\xf6\x59\x53\x48\x81\xd2\xce\x02\xc5\x49\xb1\x1b\x65\x33\xad\x0e\x9d\x49\x09\x90\x52\xa1\xe0\x4f\x40\xfd\x3f\xa1\x28\xee\x38\x14\x05\x16\x8b\xc7\x83\x56\xee\x10\x8b\x73\x48\x9c\x44\x59\x7e\xbd\x9b\xc5\xd1\xb8\x3d\xa7\x16\xb0\xdc\x0f\x04\xa2\xaf\xa3\x64\x61\x2d\xf9\x59\xc1\xf6\x55\xaa\xe8\x71\x3c\x5f\xfc\xf1\x32\xca\x2f\x6e\x9f\x23\xfc\x02\xad\x82\x9a\xf2\x83\x95\x50\xab\x57\x75\x50\x6d\x65\xd0\xea\x82\xb4\x33\xc9\xb3\xd9\x9b\x3c\x9b\xc5\x05\x0c\x68\x1d\x36\xdc\x97\xce\x24\x4e\xa3\xd3\x2c\x82\x3f\x5c\xff\xf2\xf6\x65\x4b\x82\x00\x14\xf9\x38\x28\x57\x19\x2c\xd5\x8b\x63\x50\x3c\x27\x70\xf0\x50\xaf\x6c\x04\x03\x40\x4b\x4e\xc9\x3b\xbc\x80\xdd\x32\x58\x2a\x8f\xdd\x58\x8a\x58\xaa\x58\x04\xf4\x41\x15\xa6\x57\xbc\xac\x97\x37\x94\x1f\x58\xd5\x24\x79\x4e\x6f\x91\xbe\xaa\x37\xa8\xd4\x6d\xe4\xb3\xda\x51\xaf\x59\x6a\x41\xae\x9c\x36\x42\x73\xc7\x44\x8a\x1a\x8e\x36\x2c\x61\xba\x70\x36\x40\xfc\x4d\x1d\x68\xc2\x64\xed\x0d\xc3\x4d\xdb\xd5\x90\x7d\xc7\xcb\x20\xd8\xa9\x3c\xb1\xf0\xa0\xdb\xe3\x2c\x49\xa0\x43\x70\x16\x95\xf6\xe4\x33\x6a\xc5\x54\xe3\x9e\xed\xf1\x24\xbc\xce\x16\xa8\xd8\x9d\xc3\x7c\x0c\x53\x14\x5e\x40\x7c\x77\x31\x4b\x57\x54\xb1\xa3\x27\xd9\xb6\x24\xf5\xb0\x5a\x52\x2f\xc2\x79\xfa\x60\xfc\xeb\xb1\x5d\x52\x27\x0c\xdf\x07\xfe\x2c\xcb\xa1\xc4\x3a\x60\xb4\xf2\xc7\x30\x49\x74\x4c\x03\x17\x46\x81\x0e\xd5\xcf\x61\xe7\x8d\x39\xf0\x8c\xdf\xed\x62\x9c\x67\x49\x42\xf2\x9c\xf7\x41\xff\x90\x09\xa1\x7b\xe0\x40\xca\xb6\xc7\x54\x38\x8f\x2f\xa6\xe8\xc4\x27\x35\x0e\xfa\x47\xe2\x0a\x35\x33\x69\xd9\x1a\x87\xa0\x47\x5b\x7b\xc0\x70\xe6\x8e\xca\x89\xba\xbd\x63\x70\xe8\x8a\x98\x53\xa1\xf0\x59\x56\xfd\x01\xee\x1a\xf0\x2f\xe3\x1c\x2d\x64\xc4\x74\xe3\x14\x32\xdd\x6e\xd7\xef\xd1\xe8\x9a\x82\x98\x74\x4a\x35\x18\x46\x80\xdf\x2b\x61\xe7\xa9\x42\xfa\x31\x5f\x95\x69\x88\xe2\x4b\xc8\x08\x8a\x37\x91\x62\x8e\xa6\xc2\x3e\xf0\x1f\x73\x13\x25\xfd\xa6\xff\x98\x91\x9f\x24\x64\xc8\x9f\x28\x9b\xcb\x5f\xa7\x22\xca\x7f\x9c\xc4\x30\x45\x67\xf1\x67\x78\x2a\xac\xe9\x58\x7d\xa1\xd4\xc6\x64\xc3\xff\xee\xb1\x7f\xf7\x47\xd6\x31\x69\x8d\x9a\x7a\x8c\xfa\xa0\xe5\x6b\xcd\x3d\x5d\x96\x48\x0f\xa2\xd5\xb0\xdc\x80\x52\x06\x80\xf1\xe3\x00\xf4\x4d\x78\xd6\x5a\x06\x5d\xcd\xcd\xe3\x67\xe9\x38\x89\xc7\x1f\xed\x73\x4c\x6f\x29\x73\xdb\x27\x6b\x9f\xfc\xbf\x5f\xa0\xeb\x84\x85\x7c\x6b\xfe\xa2\x3e\xeb\xdd\xb1\xbd\x80\xc3\x03\x71\x9b\xd0\x8a\xa6\xca\x31\xb4\x59\x99\x3a\x47\xb3\x27\xe2\xf4\x23\x59\x2c\xa5\x45\xe6\x0e\xb8\xb9\x8e\x61\x12\x39\x7c\x85\x53\x09\x1a\xb0\x92\x42\x9c\x5b\x50\x48\x13\x5d\x5f\x27\x1b\xd4\xec\xb1\xa0\x0b\xcb\xd0\x1a\x8d\x84\x5a\x5a\x27\x56\x7a\x65\xe7\x23\x88\xc2\x98\x56\x9f\x6f\xd8\x7b\xfa\xe6\xb7\xeb\x3d\x75\x7d\x31\x47\x9e\x30\x13\x98\x71\xc6\x4a\x80\x31\x61\xf7\x6d\x2d\xbc\x89\x34\x07\x3f\xcd\xc3\x34\x82\x91\xa3\x74\x8e\x95\x37\x72\xef\x99\x36\x36\xb6\xb3\x51\xbe\x80\x80\x98\x0a\x2a\xf7\xba\xc0\xf0\xb6\xb6\xa2\x3a\x6d\xd6\xf0\xce\x95\x66\x4b\x9a\x51\x2a\x5d\xa8\xb5\x27\xd1\xfa\x51\x9b\x1f\xb3\xc6\x54\xfb\xf6\x45\x71\xb0\x22\x6d\xb3\x59\x22\xf0\xa1\x63\x4a\x59\xfa\xfe\x01\xcd\x9a\x52\x33\xb9\xb8\xf3\x8d\xae\x8f\x12\xd0\x8d\x0e\xe1\xd1\x05\xb2\x0d\x52\x91\x48\x3c\xa4\xfc\x6a\x86\xa8\x52\x6d\x29\x53\x13\x18\x0f\xf0\x64\x17\xf3\x24\xbc\x3e\xf1\xd2\x2c\x85\x7f\x5d\x8b\xf3\x4b\x50\xd6\xaf\xc5\xf8\x2d\x0c\x5e\xa3\x3f\x65\xe7\xcc\xed\x26\xd8\x76\x33\xfe\x7f\x40\xf2\x03\x7f\x5f\xfc\x7f\x4f\xd6\x6a\xbb\xeb\xcc\xfe\x4b\x74\x75\x6b\x9c\xdd\xc6\xce\x5d\x3c\x78\xff\xae\x70\x5e\x8d\xa2\x5f\x81\xcd\xee\x01\x1e\xd2\x63\x18\xbf\xcb\xaa\x81\x9d\x57\x1e\xb2\x8b\x5d\x2d\x07\x91\x3d\xb6\x06\x43\x29\xf3\x6b\x1e\x40\xdb\x2b\x7d\x41\xfb\xe6\xda\x5c\xf6\x7c\x81\x10\x73\xbe\x94\x39\x52\x1f\xff\x4b\xc3\x2a\x22\x9d\x77\x55\x32\x3b\x5b\x7c\x87\x79\x92\xe8\x00\xcc\x23\x0e\xbe\xa9\x74\xc7\x86\xb5\x24\xbb\xb5\x16\xa0\xc7\xaf\x31\xbc\x32\x41\xa8\x1c\x33\x68\x50\x5c\xd3\xc6\x3c\xbc\xe7\x1a\xa3\xf6\x90\x8f\x27\xb0\x28\x56\xa6\x07\x94\xbc\x31\xe6\xc3\xfd\x06\x81\x10\x2b\x85\x06\x85\x7d\x55\x60\x56\x23\x38\x2b\x44\xf4\x01\x09\x86\x30\x62\x1b\xd2\x0c\xb5\x49\xf8\x03\x8d\x8e\x60\x96\x04\x79\x72\xf9\x71\x41\x9f\x32\x3c\x44\xd4\x6c\xc2\x98\x9e\x2b\x30\x82\x04\x7a\x91\x9a\x17\x24\xb8\x02\xaf\x24\x20\x4c\x19\x04\xed\x88\xc8\xb0\xe4\xfb\x59\xda\xbe\x8a\xd3\x28\xbb\xf2\x81\xff\x9e\x69\xc0\x67\x54\x01\x7e\x4f\xd5\xd1\x97\x54\xff\x65\xbf\xde\x11\xf5\xf7\x3d\xee\x30\x19\x21\xb9\x48\x10\x1f\xaf\x13\xa8\xc6\x87\x5c\x2c\xe2\xa8\x89\x2f\xcb\x6a\x90\x12\xa5\xfc\x93\x41\xca\xcd\x3b\xd2\x76\x46\x2a\xbc\x87\xe8\x05\x82\xb3\x33\xfc\x79\xe2\xf1\x2a\x2a\x3d\x5e\x21\x10\x46\x63\x5e\xdb\x3f\x97\xb5\xfd\x57\xd5\xca\x57\x6a\xff\x33\x9b\xcb\x41\xb7\x0b\x30\x2d\x7e\xa4\x3f\x8f\xba\x80\xd1\x97\x98\xe5\x00\x25\xcf\x89\x30\x8e\x10\xc3\x9d\xea\x6c\xa2\x16\x48\x9b\xc1\x9a\xdc\x61\xf6\xb2\xc1\xb0\xd7\xed\x8e\xe8\x25\x4c\x57\x69\x71\xc6\xbf\x5a\xb4\x30\x1d\x88\xe2\xe8\x05\xa9\x6f\xc2\xca\x63\x34\xf8\xce\x77\xac\x5c\x86\x6c\x98\x5d\x68\xf9\xff\xc5\x8a\xbe\xe1\x2f\x05\xd2\xcc\x33\x60\xb5\xe6\xe8\x08\xb9\x2d\x97\x9e\x60\x1d\x6a\x9b\xe9\x84\xf3\x79\x72\x4d\x2d\xec\x43\xb5\xd0\x3e\xf9\xc0\x65\x0c\xaf\xe6\x59\x8e\x5a\xc1\x72\x44\x3b\xff\x16\x8e\x61\x7c\x09\x9f\x20\x94\x17\x0d\xfa\x4e\xd6\xe2\x4b\x62\x6b\x24\x5d\x1a\x92\xdd\xd4\xa6\xd6\x47\x7f\x34\x48\xe1\x95\x27\x16\x4f\x8b\x4e\xef\x05\x44\xcc\xf2\x4f\xb6\x6a\x87\x71\xae\x00\x98\xb7\xb9\xc1\xd2\x72\x47\xcc\xba\x1f\x04\x3b\x6a\x65\xbb\x1d\x4b\x2f\xcc\xa5\x3a\x10\xe3\x43\xc1\x4d\x02\x91\x97\x0e\x12\x95\x5e\x72\x90\xdc\x35\x06\x3b\x6c\x65\xd1\x2a\x78\xad\xf4\xfb\x81\xff\xd7\xcf\x6d\xb2\x4d\x4e\xbc\x9e\x1f\x80\x74\xb9\x04\x64\x1b\xb2\x35\x8c\x37\xd7\x02\xc1\xa8\xc5\xcd\x81\x8a\x99\x55\x94\xf4\xe3\xf3\x79\x4f\x9b\xcf\x47\x37\xcb\x93\x1b\xb6\xc4\xcd\x81\xb3\xc6\x82\xe5\x32\x08\x00\x9b\xf1\x93\x1b\x3a\xe5\x27\xaa\xa3\x4e\x8f\x94\x90\x0d\x90\xbd\x24\x16\xd8\x5f\x26\x59\x86\x60\x3e\xcc\xb3\x04\x0e\x78\x98\x20\x8d\x12\xfc\x4b\xb0\x13\x4f\x30\x81\x78\x95\x99\x1e\xc8\x07\xda\x7a\xc5\xad\xfe\x90\x2d\xd2\x28\x4e\x2f\x4e\x89\x4d\xec\x2d\x1c\xa3\x56\xd0\x41\xd9\xfc\x7b\xd4\xa1\x66\x32\x3a\x4b\xdf\xa7\x20\x1c\xc0\x0e\x5d\x86\x9d\x38\x4d\x61\x4e\x6f\xb4\xf3\x1d\x3a\x72\x88\x24\xa5\x5e\x85\x68\xda\x99\x85\x9f\x5a\x5d\x10\x72\x37\xcc\x62\x1e\x85\x08\xe2\x29\x14\xfe\x1d\x7a\xe9\x8c\xd0\xec\x0d\xcb\x7c\x22\xee\x03\x72\xdc\x6b\xd4\x50\x51\x9e\xf1\xfa\x27\x4f\x3c\x8f\xf3\x02\x3d\x49\xc7\xd3\x2c\x6f\x41\xe0\x77\x4c\x8b\xf0\x43\x6f\x91\x78\x0f\xbd\x24\xf6\x83\x25\xa0\x42\xe8\x89\x6a\x2a\x1f\xdc\x2c\x83\x1b\x4c\x23\x3e\x2e\xb6\x46\xee\xdf\x87\xf7\x06\x25\xc2\x73\xd6\x1f\x04\x37\xf4\x56\x51\xba\x05\xe6\x61\x5e\xc0\x17\x29\x6a\x41\x3e\xec\xef\xf2\xec\x6a\xa0\x74\x3b\x2b\x60\x81\x5a\x58\x93\x03\xfc\xb3\xca\x93\x1d\xb2\x02\x3b\x9f\x5f\xe0\x75\x39\xe8\x89\x02\x41\xa2\x81\x22\x3e\x4f\xe2\xf4\x42\x74\x99\x0a\xc1\xc1\x4e\x5a\x39\x97\xa9\x36\x97\x0f\x4b\x6c\xaa\x72\x15\x55\xb5\xfc\x08\xb7\x1c\x16\xc5\xcb\xb8\x40\xc4\xbb\xe6\x87\xe7\xd9\x25\xf4\x83\x13\xf5\x06\x73\x0c\xf1\x7b\x4b\x2c\x3b\xdd\xac\x1a\x92\xfb\x7d\xe0\x24\x3f\x75\xc2\x3a\xa8\x49\x3c\x3d\x4b\xbc\xef\xd4\x20\xaa\x95\xc1\x09\xb3\xf0\xfa\x1c\xb6\xe3\x94\x17\x2d\xb4\x79\x79\xcc\x67\x2a\xdf\xff\x7d\xc6\x68\x60\x6d\xaf\x3d\x0f\x53\x5b\x71\xca\x4a\x7f\xd4\x57\xab\x93\xb5\x7b\x31\x7b\xfb\xe2\xd5\xe2\xb5\xdd\x17\x15\xce\xe3\x9a\xce\x26\x6b\xad\x49\x66\xdb\xe9\xea\xa6\x10\xae\x16\x94\xd5\xdf\xc3\xb2\xfa\x6b\xea\xbd\xab\x6c\x03\x25\xa7\x97\x54\xd2\x7c\xcf\xd4\x85\xa4\x12\xe4\xcb\x99\x62\x2e\xad\x51\x59\x01\xa1\x21\xe5\x93\x18\x9f\xaa\x25\x84\xc7\xd2\x3f\xac\xd4\xdc\x91\x6b\x7c\xbc\xc2\xb9\x61\xb7\x2b\x85\xd6\xad\x30\x9b\x60\xbe\x93\x67\x75\xec\x26\xf6\x68\x36\xb3\x0c\x74\x8d\x42\x3a\x74\x5a\x8f\x95\xb4\x94\x4a\x6b\x53\xbd\xc2\xe2\xce\x00\xc2\xea\xee\xd6\xca\xeb\x36\x55\xbe\x95\xaa\x5d\x8f\x1b\x37\x15\xac\x68\x6e\xb9\x61\x25\x08\x2d\x66\xcf\x15\x33\xd5\x24\x3f\xb7\xde\xc0\x57\x22\x12\xda\x62\x06\x2b\x20\x71\x56\x07\xe4\xc7\xc5\xa9\xba\x03\x98\xa2\x29\x12\xb0\xd5\x6a\xde\xb3\x79\x38\xc6\x93\xff\x21\x23\xd8\xf4\x42\x0d\xd5\x6a\x22\xaa\xf4\x5a\xb3\xb6\xb7\xc9\x63\xb5\x58\xc4\xbc\x52\x33\x4b\xd9\xa1\x28\xee\x70\xfd\x0c\x49\xfd\x4c\xd1\xbf\x56\xa9\x6a\x3a\x71\x4e\xee\xf5\xa4\xa8\xca\x76\xbb\x26\x9d\xd1\xa6\xf2\x45\xda\x49\xe1\x27\x44\xcb\x6e\xc4\x93\xd6\x3d\x72\x12\xc7\x05\x8b\x38\x81\x91\x94\x6a\xcb\x22\x48\x12\x9f\x64\x69\x72\xdd\x1e\x4f\xe3\x24\xf2\x1e\x7a\x4c\x18\xa1\x4b\xed\x64\x82\x45\x3d\x7a\xef\x2f\x00\x06\x3b\xa6\x08\x60\xce\xa6\x2c\xe9\x8d\x25\x6d\x8b\xf4\x27\xbb\x22\xa4\x5a\xbd\x78\x78\x1c\x61\xa5\xa0\xdc\xd1\x7f\x0f\x27\x59\x3e\xf8\xcb\x77\x37\x68\xf9\x97\xd1\xbf\x03\x2e\x53\x6b\x5a\x1f\xed\x3b\xee\xfa\xc8\x07\x69\x67\x1e\xe6\x30\xe5\x7a\x65\x00\x42\x8b\x3c\xd8\x51\xb9\x76\x4e\x24\x77\x68\x48\xa5\xc1\x4d\xce\x04\x1a\xe6\x84\x18\xd0\x63\xd7\x17\xea\x53\xde\xc9\x26\x93\x02\x72\x91\xbd\xbf\x13\xb2\x17\x66\xe1\x27\x7a\x6d\x20\xae\xc4\x29\xbb\x02\xbf\xf7\xe7\x9f\x7c\x22\x93\x79\xe6\x07\x08\x57\x2c\x37\xa2\x5f\x16\x2d\xf9\x5d\xdf\x14\xaf\xf2\xd5\x72\x45\x16\x85\x49\x3b\x8a\xc3\x24\xbb\x58\x25\x59\x00\x3f\xec\xf5\xae\xd9\xc3\xb6\x08\xcf\x6d\x49\x1a\x79\xb5\xa4\xf1\xff\x9e\x7f\xb8\x1e\xe7\x9f\xa1\x43\xd2\xc8\xe3\xd0\x2a\x6a\x00\xff\x31\xb9\x57\x12\x39\xca\x96\xd8\x3d\x25\x93\x2d\x3c\x87\x49\x02\xa3\x73\xad\x26\xc3\x01\x7b\xa0\x91\x48\xa1\x16\x11\xc0\xf4\x0d\x13\x33\xaf\x90\x1a\xf9\xa3\xb0\x51\x4e\xae\xe0\xed\x76\x28\x10\x33\x16\x5f\x9d\x71\x7e\x30\x11\x88\xcf\x69\x1c\x45\x24\xb7\x0e\xe5\x0c\x71\x86\x9e\x4f\xee\xa2\xb8\x55\xd2\x87\x2c\x8f\x6b\x7b\x2b\x8a\x8b\x5a\x62\x8b\xdd\xdd\xe0\xa3\xf0\x9c\x87\x31\xb5\x7b\xfc\x22\x41\xb4\x54\x56\x28\x1e\x10\x24\xe5\x13\x6c\xe5\x9d\x9c\x8e\x0c\x95\x3e\x6d\x36\x19\x5a\x69\x42\x49\xba\xde\x81\x8e\x8e\xca\x91\x2e\x78\x5a\xb5\xdb\xd7\x66\x8c\x87\xb7\xcc\xe0\x08\x9c\x4e\x14\xbf\x9c\x02\x51\xee\x73\x45\x7e\x84\xde\x8a\x62\x80\x5f\x45\x3e\x13\x06\xf6\x14\x33\x4e\x4f\xa1\x84\xdb\xa2\x5f\xfa\x72\xd9\xaf\xb3\x65\x0f\xa4\x1d\xd5\xcf\x4c\xbb\xd8\x73\xe4\x94\xd2\x91\xfa\x8e\x85\x4b\x1e\x35\x5d\xe3\xda\x7e\x60\x89\xa9\xd2\xf3\xd1\x33\x33\x30\xd4\x5e\x35\x40\x9c\xb5\x12\x6e\xf5\x12\x66\x69\x2b\x55\x53\xb2\x82\xee\xe7\xbc\xa8\xc6\x9f\x54\x37\xa8\x4e\xed\x36\x0e\xc2\x2b\x37\xd7\x22\xfd\x0a\xff\xf0\xbe\x8b\x21\xab\xa4\xd8\x04\x43\xe2\x8f\x39\x79\xd6\xcb\x96\x8b\xa5\x4b\xcd\x71\x41\x57\x2b\x41\x76\x55\xe6\x2a\x4e\x92\x76\x44\x85\x76\xa9\xcc\x18\xce\xb3\x45\x1a\xff\xb6\x80\xed\x38\x5a\x43\xcf\x29\xc9\x7c\x9a\xa6\x13\x56\x6a\x3a\x79\x33\x4d\x27\x4b\xc9\xec\xaa\xe6\xaf\x25\xc8\x52\xbc\x26\xf4\x6b\x95\x0a\x0e\x15\xd8\x49\x87\x0d\x8f\x08\x64\xf6\x46\x7a\xb3\x93\xa5\x2d\x9f\x9e\x5b\x58\x09\xe2\x39\x05\x24\x60\x9e\xfb\x70\xe0\x32\x28\xbf\x53\x4c\xb3\x2b\xed\x1d\xdc\x41\xcb\x2b\xf8\x32\x73\x17\xb1\xb7\xf1\x9b\x2d\xe2\x02\x2a\x4a\x3d\xd7\x3a\xde\x89\x78\x32\xc0\x12\x98\xc3\xb7\x35\x58\xa2\x9b\xfa\x10\x1e\x63\x2b\x30\xc5\xfd\xb0\xa6\xb8\x9f\x84\xd7\xb6\x02\xbd\xdf\x26\xdb\xf4\xec\x6f\x3f\x15\x7f\x3f\xfb\xed\xa0\x32\xdb\x74\x75\x8a\xa9\x32\x32\xbf\x22\xbd\x54\x88\xde\x6d\x0e\xe5\x61\xb0\xdc\xd9\x22\x41\xf1\x3c\x81\x8a\x2c\x4e\x42\x1d\x6d\x38\xac\xb5\xeb\x40\x37\xde\x9c\xca\x0c\x7d\xb3\x8c\xc8\x52\xb4\xd1\x5d\x59\x31\xe8\x69\xff\x1f\x3f\x5c\xfe\xf8\xb3\x7d\xc5\x68\xa5\x1f\x99\xd9\x79\x8d\x94\x65\x6b\xac\x95\xcd\x62\xe7\x57\xe0\x09\x2a\x31\xb7\x1a\xaa\xfe\x47\x78\x7d\x9e\x85\x79\xf4\x84\x57\x9b\x1a\x0e\xf7\xf6\xd5\x70\x1a\x0d\x3d\xf8\x40\x46\x2c\xb2\x80\xdb\x66\xca\xe1\x97\xc0\x22\x7c\x45\xc3\x62\x6a\x9e\xc8\x35\x7a\xb1\xb6\x4d\x73\x5f\x06\x4d\x29\xa8\x83\x8d\x0d\x9c\x2e\x54\x91\xb5\xf6\xbb\x35\xd8\x1a\xac\x51\x07\xd8\xb1\x07\xd7\xe0\x09\xa5\xf3\x5a\x39\xa5\x97\x0d\x39\x03\xad\x80\x78\x57\xd8\xc1\xe9\x8f\xb3\xa8\xfb\x7d\xf4\x9b\x9d\x1d\xf0\x52\x44\xcd\x78\x80\x92\xe7\x44\x07\xeb\x95\x2b\x58\xf7\x46\x14\xd8\x40\xf1\x2c\xd1\x5a\xad\xd6\xa4\xa4\x3d\x2d\x2e\x9b\x8b\xd1\xac\x12\x23\xa0\x85\x0b\x81\xff\x5c\xe8\x0c\x75\x73\xfc\x85\x52\xac\xbb\x99\xb4\x57\x8c\x40\xee\x15\x2d\x72\xbd\xc5\x40\x0e\x68\xb6\x01\xf4\x2a\xbc\x6b\xa0\x03\xa8\x6b\xec\x9b\x1d\x81\x24\xc3\x97\x02\x92\xed\x8e\xa7\x61\x8e\x3a\x9f\xc8\x92\xf9\xa2\x8b\x5e\x5e\x20\xcb\x5b\xe9\x83\xcf\x53\x27\x4f\xfc\x38\xc2\xed\x64\xe9\xc9\xcd\xdb\x67\x67\xcf\xde\x9d\x88\x10\x25\x7a\x67\x39\x5a\x02\xd2\xd3\xe2\xe4\x06\x5f\x38\xb9\xc1\x8f\xbe\x7c\xfd\xe4\xa9\xf2\x24\xaf\xed\xb2\x1c\x2d\x97\x00\xff\x80\xd1\xc9\x0d\xfd\x2b\x4e\x2f\xe8\x2b\x67\xbf\x9c\x9e\x3e\x3b\x3b\x33\xde\x82\x11\x79\x89\xc8\x9f\xf5\x29\xd8\x1c\x5c\xa0\xce\x54\x54\x21\x0d\x6c\xad\xa2\x75\x51\xcd\x82\xb2\xe4\x9f\xc7\x6f\x3e\x7c\x3a\xb2\xb3\xa0\x33\xba\x64\xfc\xbf\x2d\xc2\x1c\x9f\x08\xa7\xb8\xfb\x4f\xa4\xea\x57\xcc\x43\x34\xe6\x85\xa7\x69\x94\x63\x48\x14\x41\x96\xb1\x59\xae\x88\x9d\xcd\xb9\xd3\x8c\xe5\x74\x5e\xa4\x59\x0e\x23\xfe\x21\xf6\x93\x7f\x8f\xfd\x14\x5f\x9c\x64\xf9\xec\x69\xf9\xab\x8f\xa3\xb8\x08\xcf\x93\x92\xb4\x22\xcd\xe7\x14\x89\x4f\x05\xdf\xe3\xd5\xdc\xca\x55\xad\xc9\x85\x36\x1b\x89\x52\x5f\x88\xc9\x3a\xfd\x7e\x5d\xa3\x84\xf4\x13\xab\x16\x8f\x23\xc9\x43\x4d\xf2\xba\x29\x2b\x19\x37\x8b\x77\xd6\x02\xd1\x19\x7a\x67\x03\x6b\x3e\xe7\x8a\xa6\xec\xa8\x6e\x59\xa6\x8b\x3c\x70\x39\x7a\x79\x87\x98\x38\x94\xa1\x57\xb8\xcb\x14\x50\x9f\xee\xe5\xc6\x42\x51\xfd\xea\x4e\x72\x02\xe5\x79\x43\x02\x1c\x76\xbf\xbb\x11\x80\x8b\xcb\xdd\xef\x6e\xe8\x9c\xe3\xbf\xa2\xf1\x92\xec\xc5\x5d\x0e\x7c\xa0\x98\xa4\x94\x49\xb1\x94\xfc\x01\x7e\x34\xf6\x47\x96\x82\x1f\x3c\x0a\xbb\xdf\x53\xb0\x1a\xcb\xf9\x47\x87\xf6\xf8\x07\x33\x7a\xbe\x0b\x78\x08\xf3\xaa\xd2\x1a\xe5\x3c\xa8\xfd\x11\xf0\x19\xc7\x2b\xf9\x25\x6c\xdd\xd0\x5e\x24\x8c\x58\x33\x63\xf5\xfb\x8a\x01\xce\xe2\x9d\xa9\x14\x4a\x2b\x56\xc9\x4c\x59\x22\x8c\x1d\xaf\xb3\x48\xb8\xf5\x89\xc3\xd5\xe6\xb0\xa0\x3e\x28\xe6\xf1\x21\x82\x82\x11\xfa\xaf\x0f\xff\x48\xb1\xe2\xa9\x33\x5e\x96\x39\x9c\x84\x2a\x05\xbb\xac\x81\xe6\x7d\x3a\xcd\xa8\x3b\x62\x32\x81\x39\x4c\x91\xf7\x86\xf7\x45\x19\x72\x0d\x25\x65\xf5\x7c\x30\xca\x55\x32\x37\x25\x5d\x0e\x2f\xba\x38\xa2\xac\xa7\xa9\x21\x96\x7d\x0a\xc1\x4f\xa8\x1d\xa7\xf3\x45\xd9\x54\xc1\x9d\x31\xa2\xb6\x26\xfb\x1a\x2f\xda\x33\x4f\xc2\x31\x9c\x66\x09\x95\x30\x1f\x67\x29\x6b\xc6\x7f\x4c\x7b\x3e\x02\xfa\x3e\x7d\x12\xcd\xe2\x54\xd2\x8e\xfa\xb3\x94\x1d\x66\xdd\xde\xea\x90\x1f\xd8\x19\x34\x82\x05\x89\xdd\xe1\xac\xc6\xff\xbf\x61\xd8\xfe\xfc\xa4\xfd\xaf\x6e\xfb\xc1\xa8\x25\xff\x6e\x8f\x6e\xba\xe0\xb0\xbf\x54\xee\x06\x8f\xbe\xf3\x01\x29\xd5\xe0\xcd\x16\x05\xf2\xce\xa1\x17\x7a\x64\x98\xde\xd3\x9f\xcf\xbc\x69\x56\x20\x4c\x8d\x8e\xaf\xa1\x7f\x02\xff\x59\x8a\x60\x4e\xab\x22\x6b\xe3\xa9\xc5\x3d\x54\xc6\x64\xe7\x20\x2c\x32\x80\x5d\x18\x59\x49\xc4\x8f\x55\x71\x0a\xf1\xd3\xe7\x90\xd9\xb8\x0f\x46\x96\xf2\x3e\xec\x48\x51\x5c\xc5\xee\xad\xdf\xf4\x74\x28\x6d\x7b\xba\xcf\x1f\x8c\xec\xc8\xe2\x7d\x6b\x75\x26\x62\x6e\xe6\xb9\x33\xbd\x12\x5c\x59\x57\x19\xa5\x98\x71\xcb\x46\xaf\x66\x32\x2a\xb7\xc0\x42\x6b\x39\x87\xb1\x31\x97\x60\x3c\x82\x9f\x5a\xeb\x1b\x06\x6c\x4c\xa1\x5c\x37\x15\x90\x8a\xac\xa0\x77\x80\x29\xe1\x60\x23\xd5\x4c\x9d\x54\x5d\x6c\x3c\xb9\xf3\x3c\xbb\xc8\x61\x51\x54\x95\xca\xa8\xcf\xe8\xb6\x75\xec\xf8\xd6\x22\x34\xda\x02\xe3\x59\x47\x72\x71\xed\x6d\x84\x4f\xec\x55\xd5\x19\xf1\x9b\xa4\x0b\x5b\x05\x8a\x86\x29\x78\x66\x8f\x2a\xea\x93\x58\xf6\xa9\x16\x80\x2a\x76\x58\x0f\x0c\xfd\x9f\x62\x92\x68\x07\xfc\xb6\x0e\x46\xa5\x81\xa6\xf8\x52\xb0\x67\x10\xd9\x35\xb7\x9f\x00\xd1\x2e\x67\x4c\x8b\x22\xcf\xc4\x41\xcc\xfc\xfe\xeb\x78\x19\x4f\xb3\x14\xc5\xe9\x02\x7a\x57\x31\x9a\x5a\x13\xf6\xd8\x50\x9f\xd2\xa0\x28\xad\x5e\x66\xcf\x56\xc7\xa7\x02\xca\x99\x3f\xcf\xea\xea\x8c\x80\xd2\xdb\x66\x33\xda\xe2\x3d\xb5\xb4\x4a\x27\x35\x68\x54\x93\x65\x3d\xa7\xa6\xb3\x1c\xb3\x06\x85\x6f\xbc\xd4\x20\x9b\xd1\xa9\x7e\x69\x47\x83\x58\x74\x46\xf9\xbb\x2e\xd8\xce\xf6\x29\xa7\x54\x53\xfd\xd7\x10\x8b\x84\x38\xc4\xe5\x23\x2e\x16\x51\x4d\x8c\xea\xb5\x9c\xcd\x68\x6a\x90\xaa\xf8\x12\xa8\xcb\x1f\xb0\x16\x5f\xbc\xa0\xc6\xbd\xa1\x7f\x76\xf6\x9a\x57\x3a\xc0\x92\x94\x18\xb0\x14\x90\xfa\xe0\x68\x54\x1a\x6d\x6d\x79\x43\x12\xb0\xa4\x74\x70\x44\xfb\x92\x78\xc1\x4c\x00\x78\x6a\xeb\x14\x3a\x75\x97\x89\x3f\x1e\x01\xd9\x58\xd3\xf4\x65\x9e\x09\xfc\x60\x9d\xc9\x54\x19\xa2\x28\xf9\x79\x60\x63\x75\x9c\xaa\x3e\xa8\xc3\xf1\x5c\x25\x0b\x1c\xcc\x45\x69\xdc\xc6\x63\x94\xdb\x4d\x58\x8d\xf1\xda\x76\x39\x8e\xa3\xf1\x75\x18\x8f\x33\xc2\xa5\x66\x99\xd3\xd5\xb5\x4f\xa5\x2e\xbb\x52\x08\x65\x87\x53\x03\x09\x91\x1f\x51\x47\x5f\xe6\x84\x7a\x99\x5d\x78\x71\x5a\x1f\x82\xc0\xca\x5b\x8f\x36\x2d\xcc\x5f\x8b\xf3\x1f\xba\xc0\xf1\xc1\x1e\xd8\x07\x07\xab\x83\x51\x44\xf2\x33\xb1\xdd\x8b\x1c\x6f\x12\x97\x4f\x13\xbd\x8d\x34\x70\x16\x98\x52\x89\xa5\xaf\xb0\xd6\x09\x01\xbc\x27\xff\x47\xac\xb2\x6d\x8a\xc4\x6f\x4d\x02\xa7\x90\xfa\xbf\x2d\xe0\x82\xe0\xe0\x93\xaf\x6b\x4a\xb7\x48\x0f\xa0\x57\xb9\x68\x0a\x7c\x22\x1e\x32\xfd\xb6\xbe\xb7\xa1\x64\xa6\xd6\x50\xf2\x63\x09\x07\xfa\x9e\x74\x17\x46\x20\xac\x09\xe7\x79\x19\xe6\x1e\x04\x08\xe4\x20\xdc\xb1\x65\x01\xd3\xac\x5b\x80\x06\xaa\x8a\x15\x0a\x38\xfc\xc4\x09\x87\x6f\x62\xe2\x7e\x0d\x38\xfc\x50\x62\xe2\xb2\x14\x6f\x4c\x68\x99\xdd\xbe\x5c\x82\x6c\x10\x2a\xf8\x90\x0b\x6d\x58\xe3\xc1\x30\x1f\x81\x68\x5d\x7c\xfc\x72\xfe\xaf\xbf\x5c\x82\xb9\x89\x97\x1f\x39\xa0\x77\xe7\x43\x38\x1a\x44\x0c\x7a\x77\xae\x43\xef\xaa\x3f\xc1\xdc\x84\xde\x9d\x3b\xa1\x77\xe7\xb7\xb7\x73\x13\x7a\x77\xae\x43\xef\xce\x07\xe3\xe6\x78\xf9\x19\x58\x08\xbc\xfc\x79\x00\x66\x0a\xf4\xee\xdc\x00\xc6\x9d\x33\xe8\x5d\xed\xfa\xa3\x79\x79\xf2\x66\x02\x7a\x77\x5e\x0d\xbd\x6b\x7e\xc1\xbe\xfe\x70\x17\xe7\x78\x78\x34\xeb\x33\x19\xcc\x41\x48\x3d\x74\x02\x2d\x1f\xcc\x15\x67\x56\x5c\x89\x97\x5f\x80\x78\x75\x12\xa4\x2a\xf6\xdd\x15\xef\x73\xf2\x74\xd2\x3f\x38\xee\xa7\x76\xd7\x8f\x70\xdd\x70\x59\xd4\xe1\x63\xb1\xca\xa8\x4a\x0a\x83\x0c\x4b\x02\x7a\x54\x89\x69\x0b\x94\xce\x1a\xfe\x45\xc3\x0a\x38\x85\xc9\xdc\x62\x2b\xe4\x16\xc1\xb2\x23\x67\x92\xe5\x33\x21\x69\x73\x07\x87\x32\x11\x1e\xde\xe8\x86\xb7\xa3\xcf\xce\x5f\x47\x1f\x4a\x06\xcc\xca\x4e\xd9\x85\x72\x72\xf8\x33\xdf\x4d\x6f\x9f\xcb\x6a\x42\x5f\xe5\x26\x36\xa0\x99\xdc\x8e\xb4\x00\x54\x2d\xc5\x83\x20\xa3\xe2\x41\x12\xc5\xa5\x5b\x5f\xa6\xee\x1b\x09\xa0\x3c\x34\x80\x25\x01\xac\x6b\xc3\xf0\xa5\x0e\xa7\xcb\xad\xfb\x42\x99\x15\x83\xb6\xe1\x87\xd6\x46\x8c\x73\xf5\x9f\x53\xa3\xa9\xaa\xe6\x97\x10\x7c\x6c\xca\x81\x7b\xf8\xfa\xbb\xc7\x4d\xde\x5d\x33\x5f\xb3\x09\xb2\x8f\x88\xf6\xba\x82\xb9\xf0\xca\xf3\x42\x65\xda\xde\x3e\xb5\xee\xed\x02\x86\xf9\x78\xfa\x2c\x95\x0f\xce\x05\x6e\x96\xcd\x1b\x49\x03\xbe\x58\x35\xc2\x86\xe2\x2b\x8b\x3c\x39\x32\x82\x49\x74\x65\xcf\xb6\x21\x54\x58\xd1\xbe\x2d\x14\xdb\x05\x53\xb4\x12\x7b\xa8\x4a\xda\x5d\x17\xe3\xc8\x2d\xd1\x72\x01\xb5\xba\xd2\x53\xa5\xfc\x9a\xe5\x8d\xc4\xc8\xd2\x01\xf5\xed\x42\x57\x16\x28\x81\x75\x63\x2e\x4a\x98\x01\xa4\xb7\x40\x54\x6b\x00\xca\x91\x0e\x26\xe0\x1c\x4c\xc1\x25\xb8\x06\x17\xe0\x35\x78\x0f\xde\x80\x8f\xe0\x4a\xd6\x73\x78\xf6\x7b\xaa\xe7\xf0\xe9\xcf\x7a\x0e\x7f\xf4\x7a\x0e\x54\x8a\xfb\x50\x2d\xc5\xbd\xdd\xbd\xfe\xfc\xf4\xf4\xd3\xbf\x1c\x31\x84\x22\x38\x3c\x8b\x60\x52\x1d\x43\x58\xce\x70\xa1\xd0\x0a\x34\xd7\xb1\x74\x54\xdb\x6d\x52\xf8\x1d\x35\x45\xd2\xfe\x5a\x0f\x6b\xc6\xa2\x28\x10\x93\xcc\xc8\xb6\xf7\xb9\xe1\x3f\x44\x61\x9b\x5d\xe2\x89\x35\xca\x9d\x3c\x5b\x20\x86\x0b\x89\xbf\x48\x7e\x0a\x1b\x97\x7c\x8c\x87\xbc\xb1\xc7\xb8\x63\x33\x2d\x3f\x89\xf2\x30\x2d\x0c\x67\x6b\x5f\xb3\x74\xc2\xcb\x38\x5b\x14\x67\x7a\x13\x80\x02\x6a\x38\x9a\xd7\x51\x30\xba\x16\x71\x05\xbf\x16\xf2\xd4\x71\x7a\xee\x52\x1b\xa1\xc4\x7c\xb1\xf9\x1e\x4d\xe8\x8e\xca\xa6\xd8\xd4\x1b\x50\x86\x5a\x7b\x07\x34\x9a\x9a\x93\x00\xa6\x91\x1c\x95\xbc\xfc\x4c\x87\x46\x2c\x17\xc0\xd2\x62\x45\x0f\xcb\x0e\x65\x93\x88\x74\x16\x95\xfe\xb3\x60\x27\x69\x90\xd6\xdf\x50\x6e\xb0\x57\xad\x81\x9e\x95\x27\x6b\x55\xbe\x92\xb0\x23\x4d\x78\x66\x13\x05\x9a\xe2\xd6\x9f\xa6\x91\xa0\xea\x49\x26\x8e\x53\x6a\x7c\x39\xd5\x8c\x2d\x3c\x51\x08\xaf\x9c\x01\x5c\x32\x9b\x90\x09\x5f\x45\xee\x0e\x06\x70\xb9\x4c\x20\xf2\xce\xdc\x05\x10\x73\xb6\x71\x02\xe0\xac\x05\x83\xc9\xa7\x56\x7e\x11\xd6\xa1\xc4\xbc\x50\x98\x17\x62\xf3\x42\x66\x5e\x58\x98\x17\xc6\xfc\x02\xb5\xc0\x81\xc8\xf8\x3d\x33\x7e\xcf\x8d\xdf\x13\xe3\xf7\xb9\xf1\x7b\xda\xa0\xc2\xa3\x5a\xd5\xf1\x19\xaf\x4e\xc3\x39\xcd\x25\xab\x45\xa3\xde\xc0\x9a\xdf\xb5\x71\x5d\x40\x3a\x5d\xd8\x5e\xa0\x95\x0d\x5e\x1b\xb7\xd8\x2e\x78\x6f\x5c\x36\x36\xc5\x1b\xf3\x4b\x69\xf4\x4e\xe1\x4d\x1f\x6d\xdf\xf3\xc1\x15\xbd\xbc\xbc\x80\xc8\x23\xfb\xbd\xa5\x2f\x1d\x52\xed\x85\xdc\xb8\xbd\xbd\x59\x92\xc7\xf0\x6a\xb2\x3d\x85\xaf\x2f\x0b\x88\x9e\xcc\xe7\x6f\x71\xe3\x78\x15\xc6\x93\x96\xf0\xec\xdf\x1b\x0c\xe0\xed\xad\xaf\xf9\x30\xda\x11\x3c\x5f\x5c\xf8\x78\x71\x1a\x48\x1d\x1c\x30\x2e\xbb\x4a\x61\xce\x8b\xd6\x77\x78\xba\x38\x43\xb6\xd8\x41\x0a\x66\xd7\x38\x4b\x51\x18\xa7\x45\x8b\x41\x64\xf1\xef\x06\xf7\xef\x23\x0b\xb4\x97\xf1\x10\x40\x1d\xcc\xcf\x0b\x88\x3a\x84\x34\x03\x08\x38\xca\xdc\x93\xf9\x9c\xd0\xb8\x45\xc3\x4f\x82\xe5\x52\xbd\xc8\xb7\x60\xad\x0e\x8b\x6f\x90\x39\x1d\xc0\xa5\xc9\x78\xa9\x2c\x5a\x5c\xc5\x68\x3c\x25\x90\x21\x61\x01\xc5\xa2\x39\x51\x3f\x34\x40\xc0\x0f\xe7\xf3\x24\x66\x82\x3b\x07\x78\x14\x73\x71\xff\x7e\xab\x3c\x02\x65\xbc\xf2\x1e\x9d\x2e\x5a\x6e\x87\xac\xdb\xce\x78\x91\xe7\x30\x45\x6f\xf9\xa2\x0c\x82\x9d\xf3\x1c\x86\x1f\x77\x48\x7f\xe8\xc1\x70\x22\x11\x4f\xc4\x9b\xfc\x9b\xe4\x47\xe7\x3d\x79\x90\x00\xa2\x68\x87\x41\x55\xc5\x21\x6d\xd9\xb2\xbc\x43\xed\x5a\x2b\x58\x16\x28\xcc\xd1\xcb\x2c\x8c\x5a\xe6\xaa\x61\xfb\x91\x14\x69\x7a\x4d\xfe\x6c\xc1\x0e\xca\x08\x3d\x82\xdb\x5b\x8d\x60\x04\xab\x50\xa3\x18\x26\x21\x9b\x4d\x6d\x73\x31\xa4\x45\xfc\x27\x90\x7f\x92\xb4\xcc\xd3\x12\x49\xb5\xce\xea\xbd\x42\xca\x20\x04\x84\x0a\x45\x73\xed\x5c\x50\xfd\x68\x81\x60\x44\x00\x27\x5b\xea\x5c\x13\x44\x3c\x2e\x0a\xfe\x8a\x25\xbf\x96\x72\xbc\xb6\xa3\x45\x4e\x87\x14\xec\x10\x63\x66\x98\x17\xf0\x79\x92\x85\xa8\x05\x03\x07\x09\x57\x2d\x9d\x8a\x95\xb3\x84\x69\xc4\x89\x2f\xa9\xd1\xe1\x67\x8f\xaf\xec\xbb\x56\x53\x5a\xd2\x0d\x16\xac\x5c\xd9\xcd\x16\xef\x92\x49\x95\x3c\xa3\x94\xcf\x47\x18\xf1\x45\xa2\xb7\xaf\xd6\x15\x73\x75\x5e\xef\x31\x50\xbf\x9f\xa5\xec\x9c\xfc\x7b\x2c\x2b\xce\xf0\x37\xe9\xc2\x75\xbc\xf0\x34\x8e\xb4\xe7\x19\xa5\x83\xa5\x94\x8c\xcd\x31\x50\x76\x66\x1d\x86\xf1\x91\xc9\xa4\x69\xb7\xc4\x1b\xce\x7e\x2d\xc1\xe5\xe0\x53\x6b\xaa\xd5\xdd\x12\xc2\x77\xba\x69\x89\xac\x6b\x5b\xdb\x24\x08\x61\xe3\xaa\x5e\x17\x66\xd3\x12\x6b\x71\xe3\xca\x5e\xaf\xad\xdd\xa6\x67\xfb\x30\xd9\xb4\xf5\xf7\x66\xeb\x5c\x57\x29\x36\x6d\xf9\x8d\xd9\xb2\x21\x61\x0c\xe3\x4d\xbf\xf0\xb1\x44\x75\x5d\x48\x19\x66\x9b\x7e\xe1\xca\x4a\x7b\x1f\x0c\x17\x9b\xb6\x6c\xb4\x5b\xd2\x98\xc0\x70\x3c\xe2\x4e\xb9\x0b\x88\x5e\x5f\xa5\x9c\x61\x3f\x85\xc5\x38\x8f\xe7\x58\x92\xac\x6e\x22\x00\xca\xfd\xd2\x17\x75\x7d\x0a\x0c\xa3\x86\x9f\xd3\xdf\xaf\xfe\x96\xe0\x08\x3e\x18\xce\x1a\x7e\x47\xbe\x5b\xfd\x0d\xc6\x44\x7c\x30\x9c\x37\xfc\x02\x7f\xb3\xba\x7d\x6e\x4a\x00\xc3\x49\xc3\xf6\xf9\x9b\xd5\xed\x2b\xd6\x0a\x30\x3c\x6f\xf8\x09\xe5\x65\xe3\x2b\x53\xd5\xe8\x79\x56\xe9\x41\xfc\x00\xce\x56\x7b\x10\xe7\x59\x12\x8f\xaf\xdb\x93\x2c\x9f\xd9\x4c\xa3\xd6\x77\x88\x03\x4c\xfc\x66\xaf\x7d\x2b\x94\xd5\xe7\xfd\xbf\x7f\x3f\x87\xfd\x3d\xbb\xa1\x8a\x24\x68\x91\xff\x63\x65\xe1\xf4\xd4\x31\xed\x0f\xde\x6e\x6d\x58\xd6\x63\x0b\x00\x42\x0f\xf8\x93\x18\x26\x11\x4b\x1c\xa1\x36\x28\x85\xc8\xbe\x25\x02\x55\x8d\x89\x53\x83\xe1\x98\xb9\xe8\x68\x04\x86\x3e\x66\x3f\xd0\xa3\x0d\xd1\x0c\x55\xb5\xd4\x4d\x4f\x0d\x9c\x97\x6d\x2b\x21\x60\x47\xe0\x81\xb3\xae\x84\x0d\x6e\x54\x10\xa3\x26\xe0\x68\x7d\x97\x91\x5f\x86\xec\x32\xe3\xd3\xde\x88\x61\xf6\x0c\xf2\xb0\xea\x84\x5e\x96\x7b\x71\x04\x53\x14\xa3\xeb\x47\x4a\x7a\x4d\x75\x80\x10\xd0\x80\xed\x48\x53\x6b\x54\xd2\xe0\xfd\x9f\x5b\xbb\xfe\x82\xf6\x2a\x86\x85\x17\xe6\xd0\x63\xad\xd2\x89\xc3\x17\x49\x50\xaf\x7a\xd2\x10\x85\xb9\xe8\x78\xef\xa6\xf0\xda\x2b\xc2\x4b\xe8\x5d\x67\x0b\xaf\xc8\x66\xd0\x43\xf1\x0c\x7a\x61\x1a\x79\x70\x32\xc9\x72\x84\x6f\xfc\xef\x5f\x72\xe8\x2d\x8a\x38\xbd\xf0\x4e\xc9\xd6\xf4\x26\x59\x8e\xff\xc4\xbc\xc2\x9b\xc0\x10\x2d\x72\x58\x74\xdc\x14\x70\xe0\xc2\x4a\xc8\xb5\x3c\x8c\xe2\xec\x22\xcf\x16\xf3\x52\xf4\x21\xa7\x5b\x0f\xb3\x08\x5a\x14\xdc\x7f\x47\x02\xca\xf0\x94\x4c\xc3\xa2\x6d\xe4\x37\x38\x22\xcc\x7b\xe5\x84\x31\xa3\xfc\xd3\x7a\xa5\x08\xb5\xc0\x72\x25\xb4\x9c\xf9\x9d\x57\xc4\x41\xaa\x31\x97\x7d\x11\x59\x78\x04\x86\xaa\x5d\xd7\x0e\xd5\x26\x5b\x10\x1e\xf3\xde\x01\xd8\x03\x46\x1e\x10\xc5\x39\x1e\xf2\xad\x35\xd2\xab\xca\xf4\xc5\xf7\x94\xbd\xc7\x30\xf5\x04\xa0\xb8\x96\x94\xc8\xe7\x42\xdb\xab\xb6\x36\x52\xbd\x76\x8d\xa8\x7e\x64\x81\xd6\x60\x97\x54\x4b\x70\x7f\x4f\x70\x19\x85\x49\x5a\xa2\x0b\xdd\xe9\x40\x02\x10\x8f\xac\x2e\xdf\x89\x3f\x58\x33\xa6\xfb\x48\x0f\xe9\x5e\xf9\xfc\x6a\x66\xb4\xf6\xbc\xed\x83\xbe\x40\x04\xdc\x07\x3e\x83\x8c\xb4\x0c\xb0\x89\x8f\xb7\xb4\x4d\xe5\x12\x3e\x10\x30\x0c\x24\xca\x04\xc1\x4f\xc8\x7e\x84\xf4\x1f\x58\x76\xab\x8c\xe3\x55\xcf\x19\xfa\x4c\x5c\xbc\xc9\xe3\x02\xc5\x29\x2c\x87\x5d\xdb\x76\xf7\x0a\x30\x47\x6d\x2f\xf5\xf9\xa7\xdd\x08\x64\xc6\x24\xf4\x49\x65\x55\x2d\x9d\x81\xcf\x4d\x4f\x80\xc3\xf8\x43\x7c\x73\xe4\xf3\x05\xe6\x87\x0b\x94\x4d\xb2\xf1\x82\x20\xdd\x88\xbf\xc5\xca\xe7\x41\x3b\xe5\x85\x6f\x62\xa2\xf3\xf9\x24\xf4\xad\x58\xae\xbc\xeb\xf4\x28\xb6\x32\x98\x57\xe1\xa7\x78\xb6\x98\x79\xbd\xfe\xb1\x37\x9e\x86\x79\x38\xc6\x53\xdd\xf1\x5e\x85\xd7\x5e\x96\x26\xd7\x5e\x9c\x8e\x93\x45\x04\xbd\x04\x22\x7c\xc7\x6b\x2d\xe6\x73\x98\x8f\xc3\x82\x30\xff\xdd\x2c\xf7\x92\xec\x8a\x5e\x08\xf8\x95\x74\x81\x65\x22\xdc\x0a\x4b\x02\xa4\xe8\x67\x1d\x37\xae\x9b\x79\xfc\x6d\x7f\x95\xac\x9f\xfc\x53\xa0\x3c\x4b\x2f\x34\xce\x6b\xe9\x11\xf0\x65\x34\x54\x89\x1d\x57\x07\x58\xb8\x01\xed\xb4\xcd\xb5\x4f\x82\xbb\x24\xc4\x67\x17\x28\xbb\xcc\x75\x9c\x1d\x9a\xb9\xe2\x36\xb6\xec\x33\x17\x49\x9b\x4b\x2d\x6b\x17\x56\xd6\xa2\x6e\xc6\x59\x04\xdb\x30\x8a\x11\xee\x35\x0b\xba\xc9\x61\x18\xe1\x75\xa5\xc6\x95\x15\xd7\x29\x0a\x3f\x19\x39\xaf\x96\x18\x32\x52\xc2\xd4\xce\xfd\xde\x2e\x12\x58\x08\xd6\x07\xfc\xe9\x38\xa9\xdc\x49\xb5\x9a\xb1\x65\x4b\x9a\x41\x68\xac\xfa\x47\xe3\x30\xb4\x43\x5b\x62\xdd\xe1\xe6\x71\x68\xea\x49\x45\x46\x23\x16\x52\xc8\x38\xcd\x21\x67\x52\x6a\xe2\xf3\xe9\xeb\x9f\xcf\x7e\x79\xf9\xfe\xe9\xeb\xd3\xb3\xf7\xbf\xbc\x7d\x29\x09\xb9\x7b\xb1\x88\x23\x58\xec\x86\xe3\xa4\x33\x45\xb3\xe4\xbf\xf2\x45\x02\xdb\xc5\x1c\x8e\xe3\x09\xb7\x71\x0a\x06\x97\x13\x92\x4c\x61\x32\xf7\xd2\x2c\x9b\xc3\x14\xe6\x5e\x9a\xe5\x70\x02\xf3\x5c\xe0\x6e\xfa\x1c\xc9\xcd\x7f\x7f\x9e\x84\xe9\x47\x75\xe9\xb6\x7e\x3c\x7d\xe9\x3d\x27\xd5\x8b\x82\x06\xb9\x0e\xf5\xca\xab\xaa\x54\x96\xd3\x56\x9f\x39\x1c\x73\x85\x73\xd7\xdc\x2e\xbb\x52\x39\xe3\x39\xdf\x02\x74\x43\xcd\xc4\x15\xf0\x59\x6a\x9d\xee\x1e\xab\xd3\xad\x9e\x26\xa2\x5b\xeb\xc6\x5d\x1d\x6e\xa3\x20\xad\x9b\x5f\xa4\x78\x67\xff\xc9\x2c\xbe\x29\xb3\x38\xf8\x93\x59\x7c\x05\x66\x71\xb0\x31\xb3\xd0\xf6\x8a\x85\x53\x48\xec\x60\x15\xa2\x41\xe3\x07\x9c\x4f\x6c\xce\x17\x0e\x9a\xf3\x85\x7a\x5b\x55\x6e\x4b\xe2\xad\x56\x77\x2c\xd5\xb3\xc8\x86\xfd\x08\xaf\x17\x73\x57\xda\xa6\xb6\x0d\x6d\xda\x3c\x59\xa2\x34\x50\x48\x95\xf5\xeb\xed\x72\x4e\x52\xd1\xc8\x97\xdf\xf0\x78\x9b\x6f\xb8\xc9\xf7\x57\x6f\xf2\x3f\x77\xf7\xca\x55\xbf\xef\xa8\x64\x54\xb5\xc8\xbe\xa0\xbe\x40\x3f\xb1\x8e\xc2\xb0\xae\x92\xbe\x4a\xd1\xfa\xb2\x27\xbd\x0e\x79\x51\x07\xeb\xca\xc8\x7b\xf6\x77\xff\x9b\xfc\x0f\xbf\x3a\x86\x29\x19\x67\x69\xfb\x95\xed\x44\x7c\xf3\xee\xad\x00\x96\xb2\xa3\x3d\x95\xd5\x2f\xae\x70\x29\xc9\x33\xae\xe2\x17\xa6\x7d\xe1\xa9\xe8\xb9\x75\x2d\x57\xa5\x29\xf0\x8c\x03\x91\x8d\xf0\x3c\x86\x49\x64\x4f\x54\x78\x63\x42\x08\x9d\x96\xe8\x49\x92\x6b\x98\xca\xaa\x11\x07\x88\x8b\xec\xc1\x7d\x65\x4d\xa8\xfd\x67\x18\xb7\x32\xf3\x97\x98\x59\xbd\xd0\x93\xd3\xe3\xa5\x5a\x53\x36\x16\xab\x93\x24\x5d\x13\xf6\xde\x17\xa6\xd0\xbd\xd5\x49\x0f\x7b\xcd\xb3\x74\x9b\xc8\xc9\x26\xd9\xf6\xca\xd9\xe3\xeb\xa7\x93\xbb\x6a\x47\x50\x0b\x40\x76\x71\x41\x21\xb0\x6b\x2f\xc8\x5f\x09\x28\x93\xbe\xa1\xdc\x15\x57\xaa\x8c\xd4\x2e\x23\xa5\x6a\x08\x8b\x8b\xb3\x71\x36\x87\xd1\xa8\xc2\x68\x5c\xf6\x30\x1d\xd0\xcc\x34\x46\x39\xfe\x42\x03\x83\xb1\xcb\x6e\x46\x9a\x3a\xcf\x3e\xd5\xb1\x9d\x99\x84\x7b\x92\x24\x6e\x52\x55\xd6\x24\x70\x1a\x81\x8c\xc3\xc8\x56\x41\xbd\x7a\x55\xfc\x2e\xb8\xaa\xc1\x58\xb5\x55\xcc\x27\xa4\x2d\x5d\x3b\xd2\xe7\x23\xaf\xad\xe9\xaf\xd9\xdb\xd0\x14\x58\x75\x16\x94\x96\x92\xab\xf6\x48\xd5\xf6\x90\xac\xb0\x90\x3b\x84\x7a\x5c\xfa\xa6\x8d\xb9\x7a\xe3\x70\x84\xbf\xbe\xa6\x3c\x98\x3c\x5c\xc1\x76\xf9\xea\xfb\xaa\xd2\x9f\x65\x8c\x76\x65\x39\x10\x77\x62\x5b\xed\xc5\xe1\xa4\x4c\x73\x74\x15\x97\x8f\x7c\x5f\x3d\x71\x19\x9e\xe9\xef\x7b\x55\xf6\xb8\x98\x2f\x0b\xfc\xcb\x65\xf4\x0d\xd7\x4f\x6f\xdd\x65\xb3\x2a\x79\xd1\xd2\x88\x1b\x9a\xc9\x2d\x93\x37\x91\xbc\x9b\x8b\x08\x55\x2b\xc2\xe2\x24\xa8\x94\x57\x59\xe8\x4f\x9c\xa5\x5e\xeb\x35\xf9\x37\x4c\x6c\x7a\x18\x6f\x00\xb7\x1f\xe6\x30\x74\xad\x25\xd9\x9e\xbe\x96\xa8\x52\xae\xdc\x96\x8c\xae\xa1\x47\xac\xb4\x5e\xea\x1e\xbf\x16\xac\x2d\x77\x26\x0d\x33\x6a\xb0\x4c\x79\x59\x10\x48\xe1\x20\xc0\x9f\xc4\x69\xd4\x3e\xbf\xa6\xb0\x2c\x3c\x6f\x95\x87\xf8\x0b\xb8\x14\x0a\xcf\x62\x07\x54\xe1\x02\x93\xaf\x03\xb5\x12\xf5\x91\xc0\xbc\xcc\xc2\x39\xfd\x02\x09\x1f\x82\xe9\xa5\x9a\xc9\x53\x07\xe9\x45\x58\xa8\x29\x25\x0b\x88\xda\x14\xb7\x25\x63\xb3\xad\xc4\x1c\x11\x87\x65\x92\x64\x57\x2f\xb8\x22\x08\xfc\x71\x98\x9a\x65\x5c\xc3\x34\x6a\x92\x28\x54\x0a\xee\x6a\x54\xc0\x55\x64\xbb\xc8\x02\x09\xd7\x73\x78\xc2\xa2\x99\x7c\x90\x92\x0f\xf3\x5f\x5a\xef\x4f\xee\x75\x01\xb1\x52\x11\x30\xa6\x93\xa1\x11\x01\xc5\x69\x7f\x72\xaf\x47\x62\x29\x4b\x45\x7d\xde\xdb\x80\x61\xca\x25\x56\xf9\x0c\x9a\x95\xf1\xf1\xda\xe9\x28\xcc\xb5\xc3\x30\x14\x83\x87\x5d\x16\xc3\x2c\xe8\x3e\x18\xde\xd0\x71\xb0\x98\x23\xc0\xef\x9c\xf8\xfe\x12\xb0\x7b\x67\xd4\x1b\xe1\xc9\xc9\x91\x4f\x95\x1c\x7b\xe2\xad\x9f\xb3\xc8\xfe\x8a\xae\xf1\x2f\x47\x6a\xad\xa7\x72\x59\x58\x94\x5f\xbb\x89\xb2\x1c\x87\x68\x3c\x6d\x21\x9e\xe8\xc0\x62\xd0\x39\x69\x76\x58\xaa\x08\x2f\x65\x4f\x03\xbf\x69\xda\x08\x9d\x12\x45\x71\x38\x81\x8f\x5a\x26\x8d\x79\x8c\xaf\x7a\x7e\x1b\xe4\xee\x60\x6a\x03\xed\x84\x0f\xcc\xc9\xb2\x3c\x43\xd8\x4a\x10\x9c\xb4\x56\x3f\xa9\x45\xda\x2b\x77\xca\x4b\xc2\xda\x5d\xfa\xa1\x8a\xe5\x73\x0f\xf2\xfc\x15\xb6\xe0\x4f\x58\xcd\x2b\x62\x4e\x6a\xa1\x60\xc9\xeb\x66\x91\xd9\x11\x55\xb0\xc8\x55\xbc\xa4\x97\x41\xa9\x8e\xff\xea\x42\xb3\x6c\x4b\x50\x13\x43\x66\xa9\x3e\xe5\x88\xbe\x24\x35\x87\xcd\xd7\xbe\x55\xf4\xe5\xe9\xe2\x87\xab\x9f\xff\xe7\xf4\xb3\x3d\xfa\x92\x83\xf1\xb3\xca\xa4\xf0\x13\x1c\x2f\x28\x9e\x7f\x98\x8e\x89\xf9\x72\x06\x8b\x22\x24\xc6\x0a\x56\xfe\xbd\x3a\x44\x53\xc0\xfc\xb3\x3a\x54\xa2\xdc\x5e\x8d\x80\xcd\x63\xcc\x88\x55\xd2\x11\x20\x51\x02\x78\x5a\x46\xab\xc8\xe1\x3c\x93\x00\xff\xba\x87\x51\x38\x1e\x59\x21\x15\x13\xcc\x85\xa1\x1d\x32\x1f\xe4\x3e\x35\x8c\xf7\x0f\x74\x5f\xe4\x31\xfb\x49\x80\xc2\x19\xeb\xf1\xcf\x88\x89\x89\x84\xf4\xf1\x6b\xf4\x7c\xaf\x6d\xb7\x21\x27\xf2\x31\xe8\xed\x99\xf6\x36\x7f\x75\xc1\x21\x5e\xa4\xb5\xb6\x89\xe8\xc9\x7c\x9e\x5c\x7b\x61\xea\xc1\x4f\x24\x24\xe4\x82\xf5\xba\x0e\xa6\x6e\xad\x1e\x8d\x73\x58\x0e\x41\xad\x83\xb3\x72\x68\x8b\x68\xb5\x56\x75\xaa\xe1\x40\x75\xd0\xb4\x99\x6b\x87\x34\xd2\x53\x24\xc7\xbe\x94\x1c\x65\xd5\x58\x06\xf0\x77\x6c\x03\xf8\x3b\x52\x12\x9a\xf9\xf2\xa7\x95\x24\x4b\xd9\xd7\x0d\xc2\xb2\x4e\x09\x89\xbd\x14\x5e\x29\xc1\xc5\xab\x4c\x2f\xbe\x0a\xa7\xca\xe6\x51\xab\xa2\x4c\x71\x91\x7a\xc0\x4f\xe1\x55\x9b\xb7\xcb\x8c\xad\x29\xab\x94\xf9\xd8\x2c\x91\xd9\x53\x84\x4f\x6b\x89\xcc\x03\x8b\xfb\xc7\xff\x19\x5e\x89\x78\xe1\x1a\x9e\x20\x2b\x7a\x6a\x0e\x27\x66\xe1\xe9\x92\x77\x4d\xe9\x1c\xa3\x3e\x07\x02\xb6\xd8\xb6\xbd\x7a\x25\xbe\xd6\xad\xdf\xcb\x27\x73\xda\x57\xa7\x52\xa5\x84\x43\x47\xab\x05\x83\x59\xa3\xe3\xeb\x15\xc0\x15\x36\x78\x29\x0b\xf2\x96\xe9\x0f\x67\x54\x07\x65\xc3\x44\xc4\x64\xb2\xd8\x0b\xe9\x30\xa1\xbe\xdc\x07\x92\xa1\xaa\xfc\x95\xb1\x5b\x52\x41\xc3\x35\x4f\xdb\xa2\x0a\xaf\x48\xbb\xf6\x7c\x2a\xe5\xa2\xa9\x82\xaf\xb3\x80\xbe\x8a\xc9\x50\x84\x97\xc2\xf6\x44\x03\x5d\x0e\xb4\x08\xde\x9e\x7d\x67\x91\x45\xdb\x2f\x17\xf1\x50\x96\x37\xaf\x7a\x51\x36\x9d\x70\xbd\xb1\x9c\xbc\x70\x64\x18\x63\x68\xaf\x48\xbc\xe0\x59\x78\xc9\x91\xdb\xe5\x45\x25\x88\x50\xbd\xfc\x22\x25\x1e\x3b\x7f\x45\x32\x03\x31\x65\x14\x8b\xf3\x59\xec\x0e\xcb\x3b\x72\xf4\x62\x9d\x48\x72\x87\x4d\x95\x43\xcb\x7b\x58\xc0\x41\x30\x9f\xc5\x29\x2b\xaa\x53\x33\xf8\x17\xb8\x42\xd6\x1d\x5c\x3a\x4c\x23\x2f\xc4\x87\xae\x63\x83\x57\xc2\xd7\xd2\xf3\x47\x59\x62\xd6\x2c\x14\x17\xd9\xac\x13\xd1\xa7\x31\xdd\x46\x95\x14\x4b\x38\xf9\x17\x59\x8c\x0a\x79\xa8\x38\x59\x97\xeb\xf5\xfa\x96\x1d\x5e\x8d\x1c\xbe\x2e\x84\x57\x23\x71\x87\xe3\x90\xd5\x67\x1f\xd2\x39\x47\x10\x90\xa5\x61\xd7\x0d\x7b\xc7\x50\x8b\x1b\x75\x8c\x4c\x41\xb3\x5e\x1d\x03\x1f\x85\xe7\x8b\x24\xcc\xdb\x11\x44\x61\x9c\x14\xd2\xdd\xaa\xa0\x3c\x2a\xb2\x72\x4d\x21\x80\xa6\x43\xd1\x0d\xf1\x2e\x9e\xc1\x93\x08\x16\x3c\xbf\xeb\x24\xc4\x7f\x52\x4e\xb8\x8e\xc7\xf3\x8b\x1d\xd9\xc2\x86\x37\xd5\x0e\x6c\x57\x48\x7c\xad\x23\xa9\x46\x67\xf3\xec\x6a\xed\x9e\x72\x3b\xb3\x4c\xff\xe9\x73\x80\xf4\xde\x68\x45\x86\x0f\x17\x55\x7b\x60\xe8\xbf\x78\x6a\x65\xba\xb5\x02\x17\x3d\x6b\x3c\x8d\xea\x65\x8f\xc6\x9d\x70\x9c\x14\x1d\x9e\x5f\xd5\x81\x51\xcc\x91\x9d\xf4\x8f\x8f\x0c\x3b\xb6\xcb\x0f\xd2\x34\x62\xab\xdc\xc7\x3d\xdb\x07\xd6\xfc\xf2\x8a\xca\x05\xdb\x5d\x2e\x7c\xa3\x36\xd6\xb7\xd4\xd3\xff\x81\x32\xf7\x1b\x5a\xdb\xb5\x8e\xd7\x2c\xe0\x26\x0a\xc5\x18\xf1\x02\x2b\x0a\xb8\x51\x99\x74\xf7\xbb\x9b\x38\x5a\xfa\x36\x85\xc3\x55\xbe\x0d\xf8\x71\xe4\xb3\x33\xf3\x98\x79\x02\x79\x8d\x62\x0e\xc6\x2a\x16\xe2\xa8\xea\xa8\x2b\xf9\x2b\x56\xb9\x7f\xb1\x32\xf9\x99\x88\xe1\x2b\xf5\x52\xc5\x35\x52\x6b\xae\xb6\x19\x7d\xac\x08\x4f\x55\x59\x78\xe2\x21\x4d\xa4\x93\x86\xbc\x13\xa7\x68\xa3\xbc\x1b\x55\x7c\x40\x3b\x2d\xcd\x80\x9b\x3a\x79\x68\xce\x1b\xeb\xb3\x8c\x8d\x28\x52\x6c\x91\x24\x4a\x91\x12\x1f\x28\xa5\x7d\x35\xf7\xee\xbe\x58\x98\xc0\x38\x06\x0c\x1d\x61\xbb\xa4\x2c\x0b\xca\x0d\xdd\x70\x0d\x19\xd5\x96\x53\x75\xbc\xba\x61\xbd\x66\x2c\xbe\x35\x7a\x57\x0b\xba\x2f\x19\x44\xd6\x0f\x80\x57\x29\xc3\xab\xb3\x3c\xd8\x6e\xfc\xbb\x57\x37\x4a\xb6\xff\x7b\x0b\x92\xf5\x9a\x85\xc1\xbb\x68\xbd\x4e\x14\xbc\x9d\xcc\x62\xbd\x6d\x2f\x99\x46\x33\xac\xf4\x6d\xb9\x34\xf5\xe9\x52\x37\xce\xf6\xc1\xba\x39\x36\xdf\xe0\x90\xfb\xbd\x6e\xf2\xe3\x3f\x37\xf9\x57\xdb\xe4\xc7\x5f\x70\x93\xaf\x97\x04\xd3\x2f\x25\xc1\x1c\x7f\xc1\xfd\x7c\xbc\x51\x6e\xcc\x5a\x7b\x4c\xa4\xc6\xd4\xdb\x6c\x42\xc4\xd1\xf3\x58\xfa\x5a\x62\x4b\x1d\xbf\xc4\x86\xbb\xf2\x68\x4b\x59\x29\xff\x79\xdb\xd1\xb2\xec\x8e\xea\xd8\xf1\x6a\xcb\x9d\xb6\x4c\x0f\x75\x0a\x45\x4a\x7d\x7f\x7f\xf3\xcc\x78\x6e\x6f\xae\xac\x8b\xc9\x5c\xe7\x21\x45\x7b\xe4\x1e\x38\xba\x2b\xb8\x83\x1d\x4f\xef\x93\x9c\x81\xcb\x2c\xd8\x1f\x57\x61\x8a\x3c\x94\x79\x14\x25\x90\x20\x6c\x32\x2f\xa0\x37\xc9\xb3\x19\xbd\x80\xb2\x8f\x30\x7d\xb4\x5e\x2d\xcb\xda\x4e\x93\xf5\x9a\xb7\x99\xb5\x55\xbf\x2a\x4c\x20\xb5\xc7\x53\x43\xb5\x7c\xc8\x62\xa9\xa6\x59\xcb\x94\x12\x5a\x14\x69\xb7\x6c\x6f\x7e\x4b\x9f\x6a\xb6\x34\x0f\x9d\x35\xe7\xea\x19\x67\x98\x93\x78\x03\x3a\x39\x41\x8b\x4a\x4f\xf2\xca\xff\xae\xc7\xfc\x52\x50\xdf\x97\x9c\x98\x3d\x8b\xc5\x9f\x2e\x79\xb6\x72\x2b\x67\x62\x45\x5f\xc6\xc2\x77\x50\xab\x2f\xfb\x0d\xbd\x0f\xae\xd5\x20\x4b\xd0\xd9\x37\xf6\xb6\xca\x9f\x9a\x6c\x6c\xad\xb2\xef\x3d\xd0\xaf\x53\xe4\xb9\xb6\xbb\x64\x75\x10\x28\xaf\xf8\x24\xc2\x3f\x69\xfc\x25\x2d\xb2\xfc\x82\x86\x15\x91\x50\xcd\x3a\x81\x98\x24\x38\x54\x55\x6c\x48\x7c\xa7\xd0\x79\x98\xed\x4f\x0f\x30\xfd\x90\xc5\x29\xb7\xf0\xa9\xc1\xa4\xd3\x1c\x4e\xda\x28\xd3\xa3\x38\x49\xa3\xcc\x85\x6d\x75\x52\xcb\xca\x7d\x2c\x24\x6a\x0e\x73\xf6\xbc\x12\x75\xc4\x82\x8e\xb4\x88\xcf\x22\xcb\x11\x0d\x43\x65\xdd\xa4\x68\xc8\x2c\xf0\xb5\x79\x2c\xa8\x1e\x37\xb6\x61\x3c\x28\xee\xf0\x89\x03\x09\x1e\xce\xb3\x02\xcb\x67\xd7\xec\xcb\x7e\x60\x04\x8c\xea\xc1\xa4\xb5\xc2\x47\x45\xe4\xd6\xa8\x7e\xd8\xe8\x8e\x16\x18\x49\x0d\xc8\x3b\x1c\x23\xf8\x7d\x12\x17\x08\x0b\x28\x45\x27\x8c\xa2\x16\x04\x37\x45\x78\x09\x4f\xe0\xe0\x21\xc3\x2e\x0e\x2f\x61\x87\xcd\x15\xc1\x76\x27\x08\xdd\xc1\x72\x19\x2c\x01\xf1\x4c\xea\x91\x9a\x6b\x84\xae\xde\xeb\x91\xa6\x26\x39\x2c\xa6\xa7\x59\x04\x9f\x11\xa1\xf6\x44\x0f\xe6\x23\x0d\x47\xd9\xac\x23\xe6\xb3\xe5\x77\x34\x19\x18\x05\x9d\x28\x8e\x9e\xcc\xe7\x30\xcc\x5b\xc1\x12\x90\xc8\x45\xad\x73\x1a\x10\x36\x09\xb2\x4c\x07\xb0\x43\x9e\xdb\x89\x27\x2d\x51\x96\x24\xa5\xd7\x8a\x00\x4d\xf3\xec\xca\x4b\x77\x44\x64\x29\xbf\x33\xec\x8e\x48\x11\xc8\x7c\xc0\xf3\x6c\xc3\x01\xec\x50\xe7\x01\x0f\x38\xbd\xd7\xa5\x51\xa6\xa4\xc9\xb0\x43\x16\xdb\xeb\x49\xcb\x7f\x1e\xc6\x09\x8c\xb0\xcc\x41\x60\xa8\xbd\x27\xa7\x2f\xbd\x9c\x34\x12\x9c\xd8\x9e\x67\x01\x01\x1e\x5b\x57\x3c\x46\x29\x38\xb1\x7e\x5c\x82\x90\xbb\xda\xa1\xf1\x31\x27\xde\x13\xf6\x17\xc5\xe3\x23\xfa\x0f\x69\x93\xe6\x90\x84\x83\xb0\x53\x2c\xce\x0b\x94\xd7\x7a\x53\x7e\xe6\xc4\x0f\xbe\xef\x05\xcb\xfc\xfe\x7d\x02\x1f\xfd\x8c\xc4\x8f\xe6\x00\xaf\x18\x19\xe3\x8b\x45\xe2\xf2\xba\x29\xad\x81\x16\x04\x90\x87\xed\xce\xc3\x5c\xa2\xc4\x07\xeb\xc4\x9a\xce\xb3\x4b\x98\xb7\x67\x30\x5d\xd8\x02\x4d\xa5\xe0\x51\x7c\xb3\x50\xd2\xe2\xd5\xd3\x5f\x8b\x8b\xa7\x67\xf6\x50\x52\xe1\xe1\xf9\x08\xaf\xe7\xb4\x9e\xbf\xf8\xf3\x94\x86\xc9\xf8\x24\xa0\x0c\x8b\xc3\x7c\xdc\xf8\xda\x9c\xf0\x6e\x98\x2e\x7c\x12\x32\xe2\x03\x9f\xe5\x72\xd6\x45\xf9\xec\x75\x4d\xff\x0a\x95\x26\x98\x68\xce\x11\x3e\x25\x81\xc9\x03\x2c\x33\xaa\x54\xcc\xe4\x98\x76\x93\x3e\xc8\x85\xbc\x8f\xf0\xfa\x3c\x0b\xf3\xe8\xc9\x78\x8c\x47\xc6\x2c\x6e\xfb\x75\x9d\xd7\x7a\xb6\x9e\x99\xfb\xc2\x55\x8f\x57\x30\x5d\xb0\x93\x13\xff\x79\x06\xf1\xe1\x4c\x99\xe9\x50\x0b\x32\xd4\x06\xb3\x8b\xff\xaf\x2d\xb0\x46\x7d\x3e\x40\xdb\x17\xc2\x28\x3a\x5b\x9c\x33\x5a\x53\xc9\x4c\xfe\x96\xf1\xbd\x24\xaa\xe9\x1d\x8b\xc6\x34\x67\xd1\xa2\x0b\x77\x47\x40\x6d\xda\xd4\xbe\x0f\xb5\x68\x11\xf5\xa3\xb6\x54\x4b\x6d\x70\x6d\x1a\x2c\xd0\x1b\x01\xbf\xad\x3c\xcd\x0a\xd4\xf0\x65\x42\xa3\xb0\x46\x42\x16\x65\x9a\xfd\x0a\x92\x15\x0a\x7d\x59\x24\x42\x93\x4c\x37\xe7\x34\xca\x4c\x64\x67\x47\xeb\x7e\xa9\x1c\xb1\x41\x5a\x6a\x33\x11\x98\xaf\x4e\x99\x81\x66\x4d\x74\xe5\xee\x4a\x56\xa1\x6f\x9f\x32\x16\x5a\x8f\x73\x64\x24\xe2\x01\x33\x8b\xb2\x67\x9f\x47\x33\xf7\x68\xed\x50\x8e\x86\x91\x9d\x9c\x94\xac\x48\xa3\xd5\x10\xe6\x97\x83\xf5\xf6\xd9\xa6\x9e\x86\xc5\x3c\x9b\x13\xfc\x15\xc1\x08\x48\x20\xdf\x47\x78\x1d\x65\x57\xa9\xac\x96\x64\x06\xf8\xb9\x66\x92\x3c\xd8\x13\x84\x25\x26\xa1\x04\x46\x3f\x5c\xcb\x24\x2e\xf2\xe5\x71\x96\xa2\x3c\x23\x41\x36\xec\x51\x71\x45\x41\xdf\x54\xba\x6c\x8f\x10\x3e\xd6\xa5\x4f\x53\x07\xb5\x87\x50\xd7\x0d\x70\x24\xac\x94\x43\xfe\xc8\xfa\x8d\x6b\x44\x63\x5a\x74\xad\xf2\x7b\xd6\x82\xeb\x6c\x90\x64\x87\xce\xc3\x94\x14\xb0\x1a\xf6\x0e\x15\x12\x1b\x74\x3b\x64\x04\xe6\x94\x3f\xbf\xf6\xdd\xb3\xc1\x1f\x96\xf5\x68\x2d\x3b\x82\xc5\x41\x13\xf1\x58\x01\x23\x3a\xfe\x1a\xeb\x9b\x9d\x3a\xb4\x3c\xbc\x73\x75\xaf\x8a\xca\x97\x14\x5a\x2b\xb4\x48\xcd\x88\xed\x35\x63\xce\xa3\x3a\x79\xac\x7e\x93\xe4\xe4\x07\x5b\xca\x11\x5e\x67\x50\x40\xad\xe7\x6a\x4b\x0b\xa7\x50\xbe\x9c\x19\xd6\x1d\x7d\x85\xd5\xbd\xd6\x1e\x93\xf4\x2b\x81\x44\x34\x8e\xda\xf9\x62\xd1\xef\xb5\x98\x09\x7d\x96\x8e\xa5\x6b\x49\x09\xb1\xf6\x60\xdb\xc5\x74\x1b\x72\xb8\x3a\x26\x9c\x95\xa4\xa5\xa7\xcf\x5a\xb9\x10\x2e\xfe\x4f\x7d\x47\x21\x8d\xd6\x14\x8c\x44\x43\x64\x69\x26\x65\xc9\x00\xa9\xbd\x0a\xa1\x6b\x5d\xe0\x9a\xad\x9f\x38\x6b\x98\xcd\x8e\xcc\x13\xc8\x65\x14\xae\xc6\x90\x73\x58\xe4\xc0\x1e\x28\xa3\x6e\xad\x2a\x53\xa8\xd9\x96\x2e\x16\x71\xa4\x26\x35\x2b\x65\xd4\x0d\x8d\x84\xd9\xd0\x84\x35\x8e\x5b\xb3\xc4\x21\x46\xc3\xf1\x61\x4a\x90\x97\xed\x09\xd7\xd3\xb0\xf8\x91\xee\x37\xe0\x17\xa4\x14\x24\x5b\xc2\x6c\x59\x09\x5b\x1e\x29\x0f\xe4\x2b\xb5\x78\x9b\x18\xb9\x4c\x3d\xb7\x91\x85\x8b\xde\x15\x77\xb8\x9d\x4b\x18\xbe\xc0\x0d\x0a\x2f\xe8\xe7\x7d\x10\x65\x33\x87\xed\x2b\xca\x66\x7e\x00\x38\x35\x4f\xee\xf5\x80\x4e\xce\x93\x7b\x5d\xc0\xd9\xbc\x6a\xc3\x5a\x02\x4e\x4f\xdc\x7e\xfd\xc4\x68\x72\x07\x4f\xe6\x40\x18\x8a\xf0\xaf\x96\x52\xa7\x8a\xcf\xce\x00\x73\xad\xab\x38\x49\xde\xc2\x34\x82\xb9\xda\xbe\x69\xa3\x52\xe6\x8b\x7e\x3a\x2e\xde\xc2\x8b\xb8\x40\x30\x87\x51\x8b\xf3\xce\x20\x50\x2c\x1b\x52\x4b\xd3\xec\x1b\x66\xcb\x72\xa9\x68\x7d\xeb\xd0\x85\xd8\x82\x01\x31\x89\x29\x9a\x9c\xdb\x90\x25\xde\xe5\x26\x18\x18\xfc\xb5\xdd\xbb\x37\x18\x20\x51\xdf\x8e\x3f\x51\xcc\x49\x79\x60\x04\x7a\x65\x7b\x9c\xa3\x47\xb8\x23\x96\x8c\x6c\x61\x96\x61\x9a\xd1\xed\xed\xb0\xd3\xe9\x08\xda\xb3\x5a\x51\x45\xeb\xdf\xc3\x38\xfa\xbf\x81\xc6\x0a\xbf\xbb\x11\x93\xb5\x1c\xfd\x3b\x18\xd9\x6b\x28\x43\xde\xf2\xe0\x5e\x6f\x19\xb0\x29\x14\xe9\xc7\x30\x58\x02\xbc\x81\x4a\x8b\x03\x5f\x7c\x42\xaf\xe8\x49\xe2\x9b\xd9\x8b\x84\x05\xe0\xae\x5a\x8e\x3e\xff\xf4\x53\x37\x79\xf6\xe3\xaf\x76\xcb\x11\xde\xc4\x39\xb5\xd3\xd7\x33\xf8\xf4\xed\xf6\x9e\x24\x66\xe6\x1e\x8e\x9a\x94\x66\x29\x64\xb6\x9e\x3d\x57\xc0\x61\x8f\x4b\x50\x07\xcd\x23\x8b\xfc\x52\x94\xe3\x01\xc3\x27\x37\xa2\x33\x69\xb8\x02\x37\xb0\x8c\x44\x14\xb2\x26\x34\xf3\x5e\xe3\xd9\xe4\xe6\x1c\xea\x87\x3f\xe7\xf9\xd9\xed\x9e\xa6\xb1\x32\x33\x1b\x56\x4e\x70\xfb\x86\x9d\x66\x54\xd6\x22\x6b\x68\x90\x35\x73\x8c\xe5\x2c\xd4\xc8\xaa\x29\x43\x92\x58\x0b\x9b\x08\x8d\xbc\x51\xa7\x75\xb1\x47\xf5\xb4\x3b\xc4\x1f\xd2\x1b\xdd\x25\x1f\x26\x30\x47\xd4\x7c\x26\x54\x7e\x5f\xc6\xd6\x95\x31\xa6\xf6\x55\x9f\x23\x9b\x5d\xd5\x68\x56\x0e\x41\x31\xde\xe8\x95\x2b\x32\x37\x5b\x32\xf5\x05\xaf\x75\xa7\xaa\x41\x28\x15\xef\xf2\x51\xa3\x3d\x44\xdf\x7d\x30\xd2\x21\xd9\x68\x3b\xc0\x3f\xd9\xdd\x5d\x1f\xfe\x27\xb4\x2c\xad\x1a\x7b\xca\x48\xe7\xac\x3d\xcb\x32\x60\x67\x9f\xd0\x80\x34\xc7\xb5\x7d\x33\x93\x00\x8b\xd9\x22\xa4\x46\x55\x2c\x73\x98\xd8\x9f\xb6\x07\xe9\x58\x12\x7c\xb6\xbb\xc7\x8d\x2c\xb6\x12\xdf\xad\x25\x76\xaf\x5c\x54\x3d\x47\x70\x4f\x69\xa9\x95\x4d\x7a\xb6\xc9\xe5\xf6\x36\x09\x0c\xaa\x53\x94\xe2\x18\xa3\x7c\x61\x40\x6f\xd5\x5c\x12\x4e\x26\xa0\x9a\x5a\xa9\xa6\xc4\xdf\x1d\x69\xf6\x6d\xb2\x92\xad\xb9\x92\xee\x56\xd5\x1a\xfb\x14\x4f\x63\xe4\x5c\x91\x75\xbe\x65\xda\x6a\x9c\x56\xc7\x2f\xb1\x96\xbe\xec\x6a\xaa\x8a\x14\x6b\x04\x72\xa5\x00\xcb\xc6\xd4\x99\x9f\xcd\xa5\x9f\x4a\xe8\x59\x24\xc4\x81\x2b\x5b\x53\x62\xec\xf3\x0b\x94\xc7\xe9\x45\x9b\x55\x8d\x29\x84\xc2\x64\x6a\x73\xf2\xa8\x91\xaa\x94\x4d\xe5\x3a\x55\xcf\xb4\x75\x75\x2d\x43\x46\xfc\x76\x5a\xd7\x96\xb4\xa6\x25\x88\xe2\xe8\x05\xa9\xe7\xcf\xbc\xae\x0d\x1a\xc5\xc4\xe8\x48\x5d\xa8\x25\xbe\x44\x9b\x7d\x0a\x0b\x94\x67\xd7\x6b\xb6\xab\x29\x46\x5a\xd3\x76\xb5\xae\x7e\x50\x82\xb9\x16\xac\x6a\x9f\x26\x01\x05\xc1\x16\x34\x0b\xe1\x28\xbb\xab\xea\xc5\xdb\xb3\x07\xff\x33\x39\x9a\x40\xbb\x7a\x71\x5f\xb2\x25\x8b\xef\xd8\xa2\x4a\x74\xb9\x2a\xa1\x9c\x31\xaa\xb3\xd0\xea\x33\xde\x8e\x4c\xdd\xab\x21\xa8\xd9\x78\xa0\x93\x8f\x6d\xc4\x2e\x8c\x89\xff\x62\x3c\x63\xdd\x25\x4a\x79\xf4\x5d\x5d\x95\xe9\xa4\x1b\xbd\xfd\xb1\x48\x1d\xe1\x12\x6a\x0c\x04\x3b\x55\x5e\xcf\x11\x05\xfa\x25\x7f\xd2\x03\xa6\x1e\x6e\x96\x16\xdd\x40\xb1\x7d\x94\x98\x07\x05\xac\xfd\x08\x1c\x5a\xdd\x5b\x2a\xba\x24\xb5\x04\x27\x70\x82\x1a\xa3\x92\xb3\xa3\xfd\xa0\xbc\xab\xec\xc2\xbe\xd1\xc5\xdd\x8c\x53\x80\x7c\x50\xa1\x91\x90\x86\x55\xcf\xbe\xa3\x05\x3e\x28\x9f\xa3\xc8\xeb\xc4\x16\x72\x99\x8e\x72\x61\xba\xbe\x2d\x3e\x6f\xf6\x5a\x29\xb7\x40\x7a\xd7\xe9\xa5\x3d\x55\xf4\x12\xa0\xbe\x3c\x2e\xc0\x94\xc2\x9a\x21\x9e\xd4\xf0\x2d\xac\xe5\x04\xae\xc1\xc6\x84\x48\xb4\x8e\x5b\x11\x2f\x0a\x41\x55\xc5\xd5\x53\x5e\xf3\x8c\xe2\x7b\x22\x9c\x77\xb4\x1d\x63\xbf\x15\xf9\x7e\xeb\x6e\x9a\x1a\x74\xe4\xd5\x0c\xfe\x00\x64\xb4\x86\x4d\xdb\x81\x84\x8d\x08\xe5\x15\xe2\x37\xf3\x34\x28\xee\x0b\x22\x69\x73\x29\x7c\x91\xa0\x78\x4e\x0e\x66\xdd\xed\x31\x8f\xe7\xd0\x90\xa7\xb1\xec\xbd\xc6\x29\xa8\x9e\x2d\xdf\x4e\x58\xe6\x03\x3d\xb9\xd7\x03\x39\xfc\x6d\x11\xe7\xd4\x5d\x61\x77\x4e\x84\x51\x44\x27\x5f\x33\x86\x8b\xc0\x51\x2a\x2d\xb2\xd5\xc7\xad\xef\xfc\xf7\x20\x85\x57\xde\x19\x44\x4c\x92\xe5\x97\x69\xd4\xad\x30\xf7\x5b\x9a\xd7\x1f\xa7\x89\x03\xe4\x0d\x09\x99\x8a\xf9\xa6\x11\x30\x1b\x4f\xe8\xe7\xf9\x00\xc9\x15\xd8\xe1\x2c\x86\x45\xff\xf2\x21\x93\xbb\xf7\x84\x0d\x9f\x7f\x6d\xd4\x99\xc4\x98\xb4\x83\x87\xe8\xde\x60\x00\xef\xdf\x47\xa2\x81\x20\xc8\x21\x5a\xe4\xa9\x87\x96\x4b\x98\x14\xb0\xba\x79\xfe\xec\x5f\xad\x9f\x48\x10\xcc\xc5\x47\x02\xe1\x10\x80\x83\x87\x37\xb2\x49\xe2\x08\x58\xb2\x86\xd4\xcb\xf2\x6f\xc3\x4b\x20\x94\x9a\x02\xa2\x67\x97\x78\x11\x11\x83\x11\x13\x48\x62\x58\xb4\x10\xb8\xe1\xef\x9e\xb4\x82\xc1\x43\x88\x95\x83\x82\x16\xed\x05\xfc\xce\x0b\x04\x67\x05\xb9\xed\xee\x3c\xc4\xef\x0a\xd2\x74\x66\xe1\x9c\x5e\x92\xcd\x05\x9d\x0f\x59\x9c\xb6\x7c\xe0\x93\x8a\xf4\x68\x7d\x8f\x84\x71\x92\x97\xa5\x33\x4d\x1e\xdb\x9e\x34\x86\xaa\xa5\x31\xf4\x6c\x16\xfe\x33\x7d\xf1\x77\xbb\x34\xa6\xc7\x5b\x02\xff\x31\x4f\xe4\x55\xc4\xaf\xc7\x9a\x38\x62\xb5\x65\x76\x19\xd3\xdd\x07\x66\x93\x35\x0f\xf9\x63\x21\x8b\xe0\x96\xf0\x3f\x4d\x24\xaf\x6d\xc3\x87\xfa\x22\xd3\xa8\x5f\xed\xec\x6e\x96\x57\x42\x8e\xb1\x95\x58\x9d\xc2\x2e\xe8\x3e\x24\x36\x63\xed\xfa\x0a\xd5\x78\x7c\x5a\xc9\xe3\x11\xe3\xf1\xef\xf9\x0a\x7b\x9d\x26\xd7\xe2\xb1\x96\xb6\x6f\xd2\x35\xf6\x4d\x9c\xa5\x36\x9d\xe6\xf1\x45\x12\xcf\x66\x30\xdf\x55\x1c\xef\xa6\x6a\x43\x3a\x0f\x72\x10\x82\x04\x14\x3b\xfc\x9e\x17\xe3\xbb\x80\xdc\xa0\xcf\x24\x83\x9b\xe5\x0e\x63\x56\x6c\x03\x7e\x84\xd7\x45\x2b\x0f\xec\xfe\xce\x64\x08\x47\x83\x7c\x08\x47\x78\x38\x49\x07\xa6\x8b\x19\x24\xc5\xf1\x07\xf7\xee\xa9\x3f\x41\xd2\x51\x4b\xe7\x93\xbb\xea\x05\xd0\x62\x30\x39\x71\xea\x25\xb7\xb7\x49\x27\x4e\x63\x14\x87\x49\xfc\x19\xe6\xc1\xfd\xfb\xad\xa4\x73\x95\xc7\x88\xbe\xda\x0d\x40\x32\x48\x3b\x05\x71\x0a\x07\x9d\x1c\x5e\xc2\xbc\xa0\x7f\x45\x8b\x31\x54\x3a\x98\x82\x3c\xb8\x61\xa3\xc9\xe9\x50\x83\xdb\xdb\x74\x19\x80\x24\x00\xe1\xfd\xfb\x94\x4f\xdc\x1b\x0c\xb4\xef\x91\xcf\x91\xde\xe8\xd7\x1f\x69\xbf\x3a\xe3\x30\x49\x5a\x61\x70\x42\x1b\x01\xda\x4d\xc6\x81\x02\x20\xce\x58\xf3\x0b\x2e\xee\x86\x70\xd7\x92\x01\xde\x03\x01\x48\x96\xdb\x62\x82\xd9\x0a\x95\xf4\xf0\xd9\xe7\xf4\x5d\xf2\xd1\xcd\x04\x59\xfc\x39\x53\x35\x69\x40\x31\x33\x52\xaa\xb5\xb6\x9a\xb1\x45\xae\x44\x1d\x02\xe5\x23\x4d\xd4\x1e\xca\xdc\x38\x6b\x1c\xf6\x0e\x15\xd0\xb3\xae\x62\x1c\x57\x35\x14\x3f\x2e\xda\x58\x04\xb9\xd4\x0c\xfd\x47\x44\xc7\xa5\x89\x83\x7d\xd5\xac\x9e\xa5\x29\xd1\x91\xa5\x3d\x5e\x7d\x48\xe8\x75\x42\x19\x54\xfd\x0b\x4a\xd2\xa1\xf1\xf6\xfe\x46\x6f\xab\xde\x84\x28\x2e\x4a\x7d\x1c\x71\xb4\xbe\xd2\x0c\x8d\x9c\x68\x8e\x3c\x94\x6b\x64\x46\xd3\x2b\xb4\x6b\x8e\x24\xb8\xd5\x63\xc7\x65\x46\xa8\xe9\x21\x68\x78\x38\xd5\x38\x67\x74\x1d\x23\x8a\xa3\x76\x4c\x0c\xcf\xc4\x2e\x88\xd8\xa5\xc5\x3c\x22\x70\x0e\xfe\x55\x9c\x24\xed\x88\x9a\x90\x37\xd6\x3f\xd4\xe3\x40\x1c\x51\x09\x44\xde\x62\xd0\x12\xa7\x14\x89\xe6\x82\x11\x10\xaa\x09\xed\x2b\x08\x8d\xdf\xc9\x80\xe4\xec\x79\x54\x25\x29\x3c\xa1\x93\xd0\x90\x9d\x7c\x31\x46\x19\xb1\x41\x43\x7a\x4a\xb0\x23\x63\x47\xd8\xa6\x61\x00\x68\x58\x0f\x48\x07\xca\x1a\x0e\xe9\xb5\x56\x3e\x28\x82\xfb\xf7\xed\xbc\x0c\xb7\x75\x23\x0f\x8a\x93\x5c\x3d\x35\xd4\x23\xe2\x24\xd7\x4f\x0c\x7e\x20\x9c\xe4\xe2\x6c\x00\x94\x11\xe6\x1a\xd7\xce\x2b\xb8\xf6\x32\x58\xb2\xcd\xc3\xed\xed\x44\xf2\xa5\x23\xe8\x08\xb5\x89\x79\x16\xe4\x56\xb3\x3d\xad\x2a\x42\xec\x85\x25\x28\x06\x71\x2b\xe9\xcc\xf3\x0c\x65\xe8\x7a\x0e\xb5\x0d\x9e\x8e\xc0\x8d\x36\xc0\x7b\x5d\xa0\x10\xe2\x5e\x57\x0e\xf1\x5e\x17\x28\x83\x38\xc1\xab\x7f\x19\x00\xa3\x69\xce\x06\xc0\x30\x1f\x01\x46\xec\x0b\x88\x5e\x5f\xa5\x9c\xd8\xbc\x94\x4c\x96\xdb\xdf\xc4\x47\xb8\xb8\x5c\x6a\x5f\xe1\x34\x60\x18\x36\xfc\x84\xf2\xb2\xf1\x95\x44\x15\x8b\x16\xa0\x4a\xc0\xca\xc0\x22\xa8\x21\x37\xe5\x28\x4c\xda\xc2\xcb\xae\x48\x4a\x10\xb7\xdd\x2e\xf0\xad\x10\x41\xf7\x4b\x9b\x5b\x86\x9d\x2f\x88\xf3\xf1\x46\x9f\xea\x0b\xa8\xf9\x93\xb8\xe2\xc9\x09\xb3\x5c\xd6\x1d\x78\xb3\x11\xff\x6e\x87\x2a\x8b\x81\xb6\xb9\xa9\xa0\x7d\x15\xa3\x69\x9b\x55\x1e\xb0\x50\x41\x7b\x49\x79\xb6\x59\xc3\x7f\x20\x82\xad\x22\xd2\xea\x06\xfe\x40\xc4\xd8\xe5\xd6\xf1\x4d\x89\x22\x1a\xfa\x03\x10\x67\xdb\x3b\xea\x0f\xb6\x91\xd4\x21\x17\x8b\x8b\x0b\x58\x20\x18\xb5\x79\xa9\x9b\xed\xd2\xab\xfc\x81\xdf\x3f\x01\xd7\xdd\x6b\x7f\x80\xa1\xef\x9e\xc3\x49\x96\xc3\xb6\xa8\x60\xbd\x1e\x25\xcc\x66\xfe\x00\x84\x49\xb3\xf6\x2c\x44\xe3\x29\x2c\xda\xa2\xc6\xd4\x9a\xc4\xb1\x34\xf5\x07\x20\xd0\xa6\x4b\xe6\xae\xaf\x95\x9d\xfa\xa4\xd0\xea\x77\xad\x49\x0e\xb5\x8d\xbb\x4a\x92\x06\xab\x43\x3b\x3f\x98\xeb\x77\x5d\xca\x94\x9b\xfa\x03\x10\xa8\x20\xa5\xda\x36\xe6\x2d\x46\x33\x7f\x00\xc2\x6c\x28\x00\xff\xde\xe5\x5e\x56\x12\xe8\xae\xf8\x25\x3f\xcd\x9e\xbd\x8b\x9f\xff\xcf\x8f\x8e\xd8\x45\x57\x12\x54\x09\xde\xc6\x5d\xe9\x88\xa6\x67\x58\xb3\xd0\xb7\x12\x36\xa8\x11\xf4\x9b\xb9\xd1\xf2\x30\x8a\xb3\xf6\x38\xcc\xa3\xbb\x32\xb3\xff\xda\xeb\x9f\xff\xb4\xf7\xaf\xb0\x72\x66\x41\x55\x78\xaa\x5a\x8d\x90\x4f\x23\x75\x7d\xf4\xc0\xd0\x97\x23\xf6\x4b\xc1\x68\xbd\x11\xf0\x3d\xb3\xaa\x7d\x29\x59\xc4\x4c\xc5\xb2\xe5\xc7\x1d\x94\x82\xe1\x0e\x28\xb4\x06\x2d\xd8\x3b\x1a\xf1\x28\xa4\xf5\x80\xb9\x6d\xe8\x0c\x7b\xbc\xa6\xa6\x52\x21\x7b\x9f\x27\xc9\x28\xa5\xff\xf7\x59\xad\x73\x6b\xa9\xf5\x3d\x3d\x77\xa7\x5f\x4a\x7a\x20\xe4\xab\x87\xcf\xb0\xb2\x6c\x64\xc5\x00\xf6\x41\x9f\x54\x56\xf9\x86\x9d\x57\x6b\x60\xad\x48\xc6\xb3\x54\x46\xb7\x24\x6a\x94\x22\x90\x57\xa7\xb5\xb3\x54\x3d\x89\x54\xa4\x94\x84\x11\x9e\x15\x0e\x05\x4d\xfc\x2d\x17\x8d\xdc\x26\xe6\xf6\x5f\x83\x0f\x95\x42\xb6\x9c\x11\xca\x75\xb9\xd1\x9d\x0a\x80\xf9\xf5\xd5\xeb\xa3\x77\xb3\xb7\xfb\x95\x85\x80\xdf\x7f\x84\xd7\xf8\x1f\x8e\x4b\x63\x49\xc1\x9a\xc4\x30\x89\x58\x3d\xb9\x4a\x6e\x22\x83\xe7\x09\x35\x44\x5c\x2f\xc3\x5f\x11\x2c\x8c\xdc\x78\xcf\xd2\x58\x4b\x5c\x4a\xc9\xd4\x55\x5d\xb1\x3a\x70\x8c\x48\xe2\xed\xae\x03\x16\x53\x0e\x4d\xee\x95\x72\x12\x29\xbe\x38\xa6\x0e\xd9\x4c\x0f\x34\xf7\xa9\x7a\x8b\xfd\x64\x04\x74\xc3\x6a\x69\x8e\x51\xfb\x4b\x4d\xc3\x82\x4b\xa9\xc8\x32\xa5\xcd\x96\x03\xd7\xf5\x4d\x5c\x1b\x05\x04\xab\xf4\xb8\x1e\x22\x4e\xbd\xd8\xfc\xf9\x72\x5a\xd9\x81\x38\xa5\x08\x84\x2f\x99\x67\x8f\x0c\xaf\x2d\x20\xb6\xd4\x89\x26\xfd\xb7\x61\x78\x95\xd9\xea\x9e\x72\x2e\x28\x50\x5d\x0a\x6b\x2d\xcf\xe1\xa1\x15\x0d\x4d\x9d\x42\x59\xe3\xd0\x37\x8f\x4d\x17\x93\xee\x57\xc0\xa1\xad\x62\xd3\xfa\x20\xb5\x62\x92\x3d\x81\xa8\x5c\x46\xd0\x5a\xc1\xea\xf1\x6b\xd6\xd8\xdb\x8a\x33\xa0\x51\x36\xc9\x2a\xd4\x11\xc6\xe5\x39\x1f\x97\xb8\x25\xbf\xc9\x00\x5e\xd4\x26\xbf\x68\x4a\x1c\x47\x11\xb6\x01\x92\x34\xe6\xfe\x9b\x45\x73\x55\xb1\xff\x12\x3c\x48\x6f\xdb\x69\x6e\x98\x72\xf6\x34\x37\x11\x46\xcb\x76\x9b\x16\x7c\xdb\xdb\x1b\x0c\x06\xb0\xf3\x11\x5e\x9f\x66\x11\xbc\x7f\x5f\x00\x5f\x44\x71\x31\x0f\xd1\x78\x4a\x02\x4b\x5b\x29\xbc\xf2\x5e\x65\x8b\x02\xd2\x9f\x2c\x93\xc1\x01\x9e\xd1\x24\x4a\x95\x9c\x53\x6c\xba\xe1\xe0\xa1\xef\xe3\xee\x3c\xa2\xc7\xd2\x09\x0c\x4a\xc0\x16\x35\x4e\x4e\x38\xf9\x0a\x27\x26\x89\x6e\x18\xd4\x98\xf8\x28\x8e\xde\xc2\x31\x8c\x2f\xe1\x13\x2c\xaf\xbb\xe1\x58\x18\xe1\xe5\x6c\xd2\xbf\x68\x70\x2d\x5e\x89\xb2\x0f\x68\x35\x11\xb2\x04\x92\xf2\xcb\xb6\x38\x40\xeb\x1b\xf8\xe1\xb6\xf8\xcd\x5e\xfb\x56\x99\x4f\xff\xcc\xc3\xe9\x29\xea\xfe\xcf\x8a\x7c\xbc\x6a\x50\x57\x3b\xc6\x87\x2a\x7d\x50\xcd\x57\xd0\xca\x1f\xb9\x4a\xe6\x1e\x96\x52\x9c\xe4\x11\xe1\x5f\xe5\x31\x82\x1e\x91\x54\x48\x88\x92\x40\x52\xa5\x95\x05\x56\x14\x3a\xa6\xf1\x64\x36\xb9\xd9\x38\x8c\xb5\xf3\x90\x94\x40\x03\xa6\x5a\xd5\xc5\xd3\x9c\xe7\x84\x4f\xf2\x82\x2f\xbe\x37\x0d\x8b\x36\xbd\xea\xd4\xe3\x2a\x4e\x93\xaa\x22\xa6\xf6\x53\x96\xea\x5b\x7a\xb1\xda\xde\x3e\xd8\xa3\x94\x1e\xe2\x8b\x23\x2e\xdf\x85\x0b\x94\x4d\xb2\x31\xc1\x94\x92\x7f\x8b\x13\x93\x36\x5b\x92\x7d\x2a\x0e\x4c\xad\x36\x5c\x45\x87\x59\xb2\xbf\xad\x4c\xc2\xab\xf0\x53\x3c\x5b\xcc\xbc\xfe\xc1\xa1\x37\x9e\x86\x79\x38\xc6\xa7\x60\xc7\x7b\x15\x5e\x7b\x59\x9a\x5c\x7b\x2c\x2f\xdb\x4b\x20\xc2\x77\xbc\xd6\x62\x3e\x87\x39\xc1\xa4\x0e\xd3\x68\x37\xcb\xbd\x24\xbb\xa2\x17\x02\x7e\x25\x5d\xe0\xf5\x8e\x5b\x59\x14\xc8\x3b\x87\xde\x22\x8d\x7f\x5b\xc0\x8e\xd9\x35\x1b\xc6\x61\xc5\xf4\xae\x5f\x76\xa4\x40\x79\x46\x8b\x68\x0a\xa1\xc1\xf2\x05\xc2\x9b\xe3\x48\x2d\xff\x52\xbf\x14\x81\x53\x59\xac\x59\xd4\xaf\x6a\x4d\xf2\xf0\xa1\x38\x4b\xbd\xd6\x6b\x86\xd3\x6f\x2b\x25\xc3\x1b\xc0\xed\x87\x39\xe4\xb8\x1e\x7c\x35\x2a\xed\x8c\x4a\xeb\x57\xb9\x29\xc1\x58\x1b\xae\xca\xd2\x3a\x5c\x25\x3e\x81\xb2\x92\xb4\x0f\x7a\xac\x38\x40\x0c\x0b\x49\x37\xed\x8a\x4d\x91\x9a\xf6\xd5\x5b\x6f\xd4\xc7\x6d\xeb\xec\x81\x81\x9f\xc8\x26\x97\xe2\xe2\x70\x14\x7f\x13\x69\xc5\x51\x86\x79\xa5\xe5\x86\x99\x06\x4a\x5c\xba\xbe\xe9\x84\x45\x8e\x9a\x85\x03\x78\xf8\xa8\x52\x75\xe1\x31\xa9\xf1\x60\x14\xbe\x13\xf5\xf0\x4a\x05\xaa\xd7\xe7\xf0\x54\xbd\x60\xf6\x26\xf2\xcf\xc1\x48\xac\x26\x49\xff\x12\x30\xab\x73\x27\xd5\x17\xac\x99\xfe\x3d\x0e\x53\x56\x38\x82\x55\xb6\xb0\x56\xb5\xd5\x85\x6e\x03\x30\x42\xc9\x3c\x6c\x22\x41\xeb\x12\xc7\x86\x65\x27\x68\xe5\x08\xaa\xfd\xd3\x9a\x12\xf4\x6f\xad\x64\x84\x72\x70\x37\xcd\x35\x22\xaf\xea\x85\x32\x6a\xc8\x48\xe3\x69\x8c\x29\x63\xbc\xa6\x3c\xbb\x40\x71\x52\xec\x46\xd9\x6c\x17\x62\x49\x97\x17\x33\x36\xc4\x28\x90\x6e\x4f\x90\xca\x57\x20\xee\x4f\xdf\xfe\xf0\xe1\xe5\xbb\x57\x95\x36\x1b\x3e\x0e\x31\x1e\x6e\x57\x93\xc6\x36\x09\xed\xce\x70\x1d\x4d\x60\xfe\xf7\xef\xc3\xfc\xa2\xcb\xff\xe8\xf9\xc0\xa7\x30\x75\x85\x28\xa3\xe2\x03\x7f\x96\x45\x04\xa4\x8d\x41\xd0\x58\xd2\xd0\xc9\x13\xb2\xc0\x95\x2a\xa1\x29\x95\x41\xf0\xe5\x1e\xf0\x53\x78\xd5\xa6\x9b\x52\xc6\xb1\xe3\x86\x81\xff\x98\xd4\x09\x70\xc5\xb0\xbb\xf0\x81\x99\xb9\xc9\x82\x3e\x5f\xaa\xfd\xa6\xdb\x02\x8c\xaa\xce\x0f\xcc\x96\xfc\x9f\xe1\x95\xf7\x96\x9a\xb2\xf0\x9f\xb4\xbc\x84\x8a\x1a\xdf\x30\x49\xab\x29\x26\x34\xa5\x3b\xb1\x12\xed\x59\x50\xa1\x6b\xc4\xe0\x37\x43\xf2\xb5\x5b\xff\x9d\x04\x5a\xc3\xf0\x6f\x3f\xe2\x04\x9d\xd7\x37\xc8\xbb\x1b\x16\xb3\xd6\xc4\x5c\x5e\x03\x8e\x68\x05\xe5\xcf\xb3\xe8\xba\x2e\xdd\xb5\xd3\xdf\xc4\xab\xee\xb1\x2a\xaf\x87\x23\xe0\xbf\x27\x6f\xbf\x67\xbb\x47\x5a\xc7\xd4\x67\x86\xe4\x99\x91\x10\xe0\xfb\x62\xd2\xec\xf6\xb2\x9a\x7b\xa1\xae\x75\xac\xb7\xa1\x75\x8c\x6f\x15\x71\x48\x70\xca\xb2\xaa\x4c\x4c\x28\xb0\xd5\xc5\x1d\x31\x2a\x1c\xd1\xc3\xbb\x77\xcc\xfe\x7d\x40\xff\xed\x77\xd7\x02\x72\xaf\x9a\x64\x26\x5d\x35\x99\x66\xad\x6d\x97\x10\xc4\xab\xe9\xd7\x17\x81\xf6\x41\xbf\xa7\x0f\xbb\xdf\xd5\x87\xdf\xeb\x95\x84\x99\xe6\xc0\xcd\x5f\x02\x81\x42\x57\x70\x6c\x98\x9a\x96\x2d\x20\x28\xaf\xab\x23\xbc\x16\xdf\xaa\xc2\xea\x16\xd5\xe4\x94\x84\x61\x7a\x29\xbc\xe2\xb5\x8c\xec\xaa\xa8\x55\x45\x92\x37\xb6\x81\x34\xbe\x45\xa0\x06\x43\x9d\xaa\xc1\x5c\x34\xca\xd6\x62\x2f\x0a\xb9\x1a\x31\x98\xb9\x76\x9e\x7e\x75\x16\xc3\x36\x9f\xc6\x64\xf8\x59\x5c\x8b\xd9\x50\x55\x94\x36\x33\xa2\x7e\xac\x7e\xbf\x8a\xf7\x68\xe7\x77\x9d\xac\xb5\x06\x75\x3a\x6b\xc3\x8a\x7c\xd5\x73\x5e\x41\x18\xb4\xa1\x2a\xf6\xf6\xd5\x24\xce\xf0\x52\x00\x1c\xf6\x44\x89\x4f\xa0\xc1\xb7\x3a\x92\x1b\x7b\xfb\x65\x38\xd5\x91\x5a\x7c\x88\xaa\xe4\x0e\x2c\xc4\x03\x9b\xed\xf0\xa0\xe4\x0a\x3c\xa0\x2c\x34\x2e\xce\xc2\xcb\x38\xbd\x90\x5d\x25\x17\xdf\xe4\x71\x81\xe2\x14\x1a\x97\x59\x91\x32\x7f\x85\x39\x91\x2c\xda\x62\x71\x3e\x8b\x4d\x6b\x8a\x39\x57\xe5\x5e\xac\x5b\x18\x43\xfa\x6b\xab\xe3\x88\x1a\x45\x1a\xd4\xe0\xb0\x61\x1a\x79\xe1\x7c\x9e\xd8\x18\xac\xeb\x92\x56\x23\xd4\x6e\xec\x75\x91\xc7\x4a\x70\x5a\x51\x94\xaf\x0b\x5b\x41\xd1\x2f\xb9\xe8\x56\x54\x28\x6d\x2c\xf7\xd6\xa6\x8e\x81\xb6\x6b\x59\xcd\x47\xd6\xc5\x7c\xd4\x60\x2d\xf7\x8d\xb5\x5c\xa2\xad\xcf\x7d\x54\x58\x2d\x0d\x2f\x55\xc6\xce\x71\xc8\x8e\x94\x3d\xa4\x88\x2c\x36\x3a\xd7\xd5\x0b\x5d\x33\x60\xdd\x62\x47\x7f\xee\xb0\x8a\x1d\x66\xae\x9b\x8d\x36\xd8\x4a\x75\xbe\xf1\x56\x59\x55\xa0\xc3\xac\xcd\x51\x7a\x60\xaf\x5c\x1d\x84\x56\xf3\xd6\xec\x48\x56\x8b\x25\x2b\x14\x5b\x2d\xb6\x63\x49\x95\xdc\x56\xa3\xdb\x4d\x69\x9e\xd9\x23\xfb\xfb\x6e\xa9\x9e\x87\xd9\x9c\x91\x50\x65\x6f\x92\xe5\xd4\xd8\xc9\xa3\xd0\xbe\x25\x84\xcc\x13\xbc\xfc\xbc\x30\xf5\xe0\x27\xc2\x4a\x2e\x48\xd7\xb6\x26\xf3\xf0\x1c\xb3\x86\x98\x36\x6a\x60\x65\xdf\xa6\x35\x48\xec\x07\xdf\x10\x55\xfa\x2a\x28\x03\xb7\x88\x65\x73\x98\x96\x80\xfd\x2c\xba\x47\x0d\x9d\x23\x2f\xdb\x3f\x1c\xce\x98\xcd\xa9\xc7\x13\xcc\xd6\x41\x04\xea\xf5\x35\x0f\x61\xc5\x3e\xeb\x37\xef\x18\xe1\x16\x8d\x41\x28\x50\x78\xbe\x48\xc2\xbc\x3d\xce\x12\xbc\x35\x63\xa5\x42\x62\x9e\x5d\x15\xda\xde\x3a\x90\x13\x7a\x88\xbf\x48\x67\xe0\x5d\x3c\x83\x27\x11\x2c\xc6\xcc\x81\x76\x12\xe2\x3f\x2b\xfc\x24\x9b\x9b\x0e\xd6\xab\xb1\xc5\x17\x12\x9a\xfa\xcd\x3c\xbd\xfa\x0b\x9a\x87\xcc\x1a\xa0\x54\xb3\xd6\xdf\x8a\x41\xe6\xd9\xd5\xda\x23\x8c\x9c\x5a\x3c\x7f\x24\x64\x7a\xc5\xa1\x9c\x53\x52\xf2\x33\x1a\x77\xc2\x71\x52\x74\xf0\x96\x2a\x3a\x30\x8a\x91\x2f\x42\xed\x5e\x3c\xd5\xd1\xfb\x65\xe4\x55\x4f\xf7\x7c\x3b\x48\x59\x41\xe1\x15\x1d\x16\x1f\x29\xb9\x27\x6b\x7c\x66\x5b\x13\xd2\x50\x57\x54\xfb\x54\x46\x9b\xa5\x6d\x2b\xb5\xa9\x1e\x2b\xc1\xbd\xd6\xd2\xb9\x4e\x83\x80\xa8\x03\x26\x0b\x92\xa2\x7c\x01\x01\xf1\x97\x55\x48\xd9\x14\x45\xc7\x78\x93\xbe\x74\xb7\xcc\x5b\xaf\xb2\x1c\xae\x63\x29\xfa\x42\x68\xa5\xe6\xe2\x2d\xe1\x5e\x8b\x12\x3a\x2e\x33\xda\x66\x35\x37\x36\xdd\xb2\x55\xfe\x8a\x3e\x81\x07\xc6\x6d\x58\x7d\xbf\x0c\x4c\x78\xad\xac\x05\xf5\xbf\x67\x51\x8c\x1a\x67\x0d\xa8\xff\xfd\x1a\xc3\xab\x5a\xd2\xbe\x41\x72\xbb\x49\xb2\x22\x10\x45\x23\xce\x03\x26\x6f\xf7\xf7\xd6\x2d\xac\x59\x77\xe5\x10\xf9\x2a\xc2\xec\x20\xcf\x16\xe5\x68\x07\x47\x73\x16\xf3\x6f\x9f\x62\x57\x6f\x56\x2a\x89\xd6\xf3\x14\x5d\x78\x4b\xd0\x7c\x2a\xe9\xb9\x46\xc9\xa2\xf2\xeb\xc7\xc0\x8f\xd3\x49\x96\xcf\x60\xd4\xe6\x9e\x7b\xee\x1f\xbd\x0a\xf3\x94\xab\xde\x6c\x3b\x47\x3f\xe0\x6d\x5e\xbc\x48\x27\x99\xaf\xc7\x31\xf3\x39\x9a\xf2\x4a\x7d\xc4\xc1\x04\x24\x47\x07\xc3\x2e\xe8\xf2\xb5\x5d\x27\xf0\x5d\x5d\x16\xdc\x0e\x87\xb5\x0a\x2e\x99\xac\x65\xfc\xb3\x12\x02\xff\xc7\x0a\x18\x78\x94\xf0\x8e\xc7\x1a\x94\x1e\x72\xf5\x9e\xfa\xdd\xb6\xdb\x77\xbe\x0e\xe6\x2b\xa7\x9c\xfe\xf7\x24\x87\xde\x75\xb6\xf0\x8a\x05\xfb\xe3\x2a\x4c\x91\x87\x32\x8f\x62\x48\x79\x68\x1a\x17\x84\x37\x3d\xaa\xfe\xa4\x7b\x65\x6e\x89\x58\x72\xf1\x34\xcd\x9a\xe0\x99\x4a\x22\xf3\x62\x8d\xc3\x47\x1d\x2b\x43\xf9\xc3\xfc\x9e\x46\x20\xd0\x5d\xd1\x37\x99\xc8\xa8\x21\x3c\x6a\xd5\x17\x7d\x6d\x43\x96\x99\x88\x5b\x19\x34\x24\x90\x23\x51\xe0\xde\x97\x98\xf2\xaa\xee\x20\x61\xfb\x36\xef\xbb\x57\xbd\x85\x5c\x2b\xc3\x2a\x5b\x6c\xe1\x25\xd7\xd4\x7d\x99\x89\x12\xae\x60\x7e\x96\x1f\x36\xf7\x63\x9a\xff\x51\xc3\xd2\x1d\x20\xa7\x45\x87\x76\x15\xc9\xda\xe8\xe2\x03\xbc\x6b\xab\x3a\xd3\x4c\xcc\xa8\x23\xbe\x58\xea\xeb\x82\x23\x70\xbc\x8e\x73\xd4\xf5\xd0\x1e\xd8\x07\x66\x79\x5e\x2b\x4d\x41\xd9\x30\xb1\x19\xae\xf1\xca\x00\xbf\x42\xab\x1c\x95\x8a\x2c\x98\x76\x5c\xb4\xc9\xa9\xdf\xa6\xd2\x7d\x9c\x5e\x66\x63\x56\xe2\x87\x06\xfb\x09\x38\x7c\x1a\xc5\x49\x73\x69\xc8\xf2\x26\x68\xf8\x3c\x95\x06\xb7\xcf\x52\x68\x44\x01\x60\x98\x33\x27\x26\x49\xbb\x61\x8e\x4d\x76\x89\x98\x27\x85\x41\x52\x35\x53\x8a\xc8\x03\xfa\xc9\xe7\xec\x79\x69\xe2\x64\x16\xce\x8c\xc5\xee\x92\x57\x72\xd4\x3e\xbf\x66\x75\xb0\xda\x28\xd3\xe2\x19\x9b\xc6\x22\xea\x61\x7a\x5a\x3c\x62\x58\x19\x8f\x98\x5b\xe2\x11\x71\x67\x1d\xd9\x3a\xf8\x56\x11\xa3\x2c\xbf\x26\xdf\xf5\x83\x95\x99\x3d\x6a\x40\xa3\x1a\xe8\x58\x0e\x6e\x54\x62\xde\xc8\x5c\xf1\x27\x29\x4d\xd9\x47\xf0\xc0\x17\x08\x46\x9d\x30\x89\xc3\xa2\xa5\x10\xbc\x13\x85\x28\x6c\x9e\x4a\x24\x1b\xa0\x09\x45\x78\xae\x4f\xb3\x14\x85\x71\x0a\x73\xf2\x8b\x7f\xc4\xe7\xb5\x87\xc9\x64\x93\x0a\x00\x69\xe7\x34\x4c\x12\x3c\xc9\x24\xd9\xe7\x8c\xdc\x51\x92\x90\x88\x25\xdf\x82\xff\x5f\xa3\x37\x9d\x71\x02\xc3\xbc\x75\xf3\x34\x44\xe1\x18\xa6\x08\xe6\x27\x34\xb9\x68\xbc\x24\x65\xb7\xa8\x33\xc8\xa8\x13\xa0\xf4\xcf\xc8\x69\xa2\x41\xa6\x10\x60\x22\x9d\xa0\xa5\x25\x97\x89\x57\x22\x56\x12\xab\xd2\x2c\x9f\x11\x70\x4d\xda\x86\xd1\xdf\x01\x4f\x9f\xda\x29\xae\x62\x34\x9e\xb6\x10\xc9\xe4\x09\x6e\xc6\x61\x01\xa9\x97\x9f\x45\x3d\x9c\x94\xea\x13\xd3\xbd\x88\x58\xc2\x8f\xd8\xaa\x83\xc1\x80\x5d\x63\x35\x07\x70\x2f\xc4\x5a\x6f\xf9\x9d\x71\x16\xc1\x36\x56\x52\xf1\x96\x46\x9d\x14\x7e\xe2\xf5\xcc\xce\xe2\xf3\x24\x4e\x2f\x82\x4e\x14\x47\x4f\xe6\x73\x4c\xbb\x60\xe7\x3c\x87\xe1\xc7\x1d\xb6\xbe\x4f\x9c\xb4\x5f\x9a\x89\x57\x61\x8d\x98\xda\x05\x82\xbb\x61\x9a\x66\x8b\x74\x0c\x2d\x51\xb5\xdf\x26\x6d\xf9\xdd\xcb\xd7\x67\x4f\x8e\x3e\x3e\xb3\x87\xc0\x3e\x2e\x54\xd0\x7e\x14\xa3\xc4\x96\xb5\x5c\x92\xd7\xfa\x54\x58\xd0\x8a\x7a\x99\x78\xd2\x04\x42\xa1\xed\xa9\x61\x9e\xaa\x4a\x4d\xcc\x60\x3a\x02\x69\xc9\xe8\xb9\x40\xb0\x2d\x08\xea\x5b\x02\x3f\x56\x9c\x19\x64\x54\xf3\xf0\x02\xb6\xd9\xc8\x9a\xf0\x50\xcb\x6c\x7e\x3b\x70\x0e\xd2\x9b\x6d\x60\xda\x83\x18\x64\x60\x01\xc6\x12\xdb\x3e\xe2\xd8\xf6\xc1\x4d\xea\x02\x1f\xc6\x4f\xa8\x50\x32\xa9\x13\x7c\x38\x75\x80\x0f\xa7\x26\xf8\x70\xaa\x81\x0f\xa7\x65\xf0\xe1\x5c\x01\x1f\x16\x9d\x9d\xfd\x09\xc4\xff\x9f\x01\xc4\x3f\x5f\x91\x21\x79\x7c\xfd\x69\x1e\x7e\x7e\xde\xb8\x62\xa1\x15\xf6\xde\x06\x0c\xaf\xe4\x23\x59\xeb\xc8\x3a\xf0\xe4\x95\xd7\x8e\x41\x4f\x03\xaf\xe7\xda\xfd\x2c\x8b\x48\x69\x14\x91\x71\x32\x5e\xe4\x39\x4c\x11\xcb\x38\xcb\xe1\x24\x87\x44\x5a\x7d\x47\x98\x16\xf0\x9f\x48\x16\xa8\xb9\x4e\x25\xf8\x01\xbe\xc0\x93\x95\xe4\x15\xc2\x35\x72\xf9\x81\xb7\xf8\xb7\x28\xcc\xad\x3c\xc7\xbe\x38\xd2\x51\x0a\xe8\xfb\xbb\xfc\x50\xd0\x7d\x07\xca\x03\x0a\x87\x56\x22\xfa\x2b\x19\xb3\x06\x01\x6f\xe0\xbd\xab\xb5\xa7\x88\xd8\xde\x98\x6b\x97\xc1\xde\x27\x12\xec\xbd\x24\xbf\x66\x0b\x84\xb5\x88\x40\xa0\xbf\xdb\x9e\x80\xb9\x1f\x48\x38\x78\x8e\x17\x9f\x18\xf8\xf0\x85\xf1\x3b\x6e\x80\x17\xaf\x62\xc4\x47\x4c\x28\xe2\x7d\x03\x19\x91\x05\xf5\x1b\x78\x66\x17\xc6\xf5\xf7\x6c\x6d\x8d\xe9\xf5\xe5\x05\x44\x1e\x5d\x17\x0a\xda\x17\xa9\xdc\x44\x5b\xee\xd0\x9b\xcf\xb3\xbc\x25\x71\xda\x89\xc8\x46\x5e\x25\xad\xb5\x64\xb1\x29\xda\x7c\xa0\x36\x44\x2f\xed\xf0\x27\x64\x03\xba\xec\xc8\xbf\x47\xff\xb1\x7c\x6f\xc7\xd6\x3b\xd2\x36\x7e\x18\xb2\x4e\x99\x28\xf4\xfc\xc1\x30\x8a\xc8\xe2\x36\x5a\x05\x2e\x3c\x7a\xfe\x1e\x35\x36\x55\xbc\xba\x04\xd9\x60\xd6\x8a\x55\x84\x76\x31\x29\x9b\x03\xd3\x2f\x6c\x6d\x13\x64\xb9\x7c\xd3\xa6\xc7\x66\xd3\x7c\x69\x0c\xc3\x4d\x9b\x36\x1a\x96\x58\xf7\xc9\x6a\xac\x7b\xeb\x9b\x01\x88\x55\xa0\x7b\xa3\x7d\x0d\x4e\xbf\x68\xf8\x09\x0d\x4e\x5f\xfb\x4a\xac\x4a\x60\x93\x4a\x38\xfd\x39\x98\xac\xc6\xc5\x53\x98\xe5\x5d\x11\xfd\xff\x7e\xbc\x17\x3d\x0d\x7f\x7d\xe1\x10\xfd\x11\x3b\x5e\x74\x1d\x20\x27\xf5\x95\xab\xb0\x05\x4a\x47\x68\xcf\xaa\x0d\x30\x8c\x1a\x8b\x1f\xcd\x4c\x30\x65\x65\x55\x54\x1f\x75\x2d\x5b\x38\x0b\x05\xa8\x61\x61\x12\xca\x86\x99\x36\xe6\xd0\x33\xea\x26\x79\x95\x60\x04\x69\x5b\xfc\xc8\x1c\xf6\x8e\x88\x9b\xa0\xbf\xcf\x8a\xea\x27\xf1\x25\x01\xec\x2a\xf0\xd1\x47\x2b\xeb\xc8\x9b\x21\xca\x66\xf1\xd8\x17\xc5\xf5\x4d\x0f\xad\x44\x9f\xd1\x70\xce\xfc\x9f\xc3\xcb\xf8\x22\x44\x30\xf2\x50\xe6\xf9\x82\x26\x16\x89\xa4\x76\xbc\xdf\x0a\xbd\x4a\x51\xa9\x14\x44\x1a\x62\x68\x63\x90\x35\x8d\xcf\x6c\x65\xe3\x7c\x33\x2d\x8b\x41\x95\x9e\x87\xd6\x94\x58\x8b\xaa\xe5\xc8\x93\x55\xda\x21\x19\xb1\xb6\x04\x58\x92\x17\x0c\xc2\x9d\x6d\xb1\x82\xa4\x9a\x15\x7c\xbe\xbe\xea\x75\xdf\xed\xcf\xed\xac\x80\x56\x39\x24\xf9\x1a\xfc\xaf\x3a\x20\x23\xe6\xe2\x97\xe3\x56\xd6\xbe\x35\x33\x5f\xc0\x8d\x90\xf7\xe8\x47\xc5\x7b\x76\x04\x04\x2d\x06\x98\x7e\xc9\xea\x45\x64\xa2\xf7\x9e\x0e\x5e\x25\xdf\x28\x85\xc0\x70\x46\x43\xa3\x3f\x49\x18\x28\xaf\xf6\xac\x06\xda\xf8\x93\x1c\x42\x04\x3f\xa1\x36\xa3\x91\xad\x8e\x71\xb9\x62\xb4\x9a\xe2\xba\x3a\x78\xd8\x1c\x27\xfd\x94\xdd\xe7\xef\x18\xa8\xa3\x77\x77\x7c\xa0\x45\x96\xdb\xe0\x2f\xdc\xd3\x49\x9f\xbf\x9b\x63\x74\x06\x90\xf4\xd4\x8a\x69\x71\xf1\x9c\x7c\x1b\x46\x8d\x4b\xb9\x39\xf6\x03\xde\x41\x6d\xfc\x8a\x35\x4a\x44\xbc\x98\xb8\x09\x8d\x6f\x2b\xf8\x31\x06\xda\x85\xc4\xfb\x90\x4a\x5a\x47\x7e\xba\x23\x02\x1e\xb4\x40\x01\x1e\x5f\x82\xdf\x99\x65\x69\x67\x11\xb3\xaa\xaa\x30\xa2\xde\x0e\x05\x10\xc2\x1e\xb2\xc7\x3a\xe6\x8a\x0b\xe4\x0f\x2c\xcc\x81\x29\x84\xef\x2a\x03\x78\x50\xfa\x9b\x4e\x88\xd8\x6c\xeb\x60\x20\x96\x41\x66\x2c\x8b\x96\x4f\x8d\x73\xd9\x52\x8f\xf4\x73\xce\x84\xe5\x5c\x6a\xeb\x52\x39\x5f\xa8\x02\x23\x57\xf1\x70\xa8\x97\x67\xd7\x43\x15\xba\x23\x03\x21\x55\x47\x4b\xed\x9b\x68\x8c\x4a\x46\xa1\x9a\x1d\x68\xeb\xb9\x94\xa7\x2c\x37\xb5\x52\xbb\xea\x33\x7c\x3f\xf4\xcc\xda\x83\x40\xb7\x25\xa8\xc8\x4d\xe5\xe6\x29\xe6\xa6\x96\xf6\xaf\x21\x4a\x1a\xd2\xaa\x05\x28\x72\x34\x32\x44\xd5\x4a\x04\x40\x73\xe1\x89\xd0\xad\x2e\x0f\x5f\x68\x87\x89\x7d\x97\xc9\x17\xb5\xb0\x09\x96\xd6\xd1\xd3\x42\x24\xb8\x71\x06\x37\xf8\x24\x49\x9e\x97\x97\xe7\xfa\x91\x01\x74\xa1\x79\x6c\xc9\x97\xba\xd7\x20\xa4\xb2\x6e\x80\xaf\xeb\x24\xa8\x64\x9c\x1b\xc3\xc2\x08\x24\x2a\xe9\x03\xfe\x90\xc5\xa9\x0f\x7c\x0a\x1a\x21\xbc\xc9\xaa\x50\xe7\xf6\x25\x93\x8a\x85\x28\x8f\xd3\x8b\x36\xca\xe3\x99\x03\x78\x91\xf9\xa6\xe3\x49\x13\x31\xd8\x14\x3e\x35\xfb\x55\x31\x68\x95\x6b\x13\xba\x6c\x4b\x17\x10\x79\xf2\x70\x31\xbd\x78\xc4\xc2\x41\xe7\x9d\xf1\xee\x39\x93\x3a\x6f\x6f\x6f\xb8\x5f\x6c\x38\x62\x56\xfa\xe1\x88\x5b\xd7\x5b\x5d\x90\x76\xa2\x78\x32\x09\x5a\x42\x04\x05\x90\x17\xbf\xa6\x68\xd6\x0f\xbb\xb7\xb7\x4c\xa0\x85\x29\xca\x49\x09\x6e\xe3\x9b\x41\xa7\xc8\x66\xb0\xd5\x1a\x42\x80\x46\xc1\xe0\xa1\xaf\xf7\xc1\xa7\x75\xc8\x85\x9d\x9b\xfb\x03\x89\x39\x8a\xad\x56\x61\xca\x22\x5d\x62\x17\x83\xf2\x97\x96\xe6\xd6\x69\x09\xcd\x9b\x34\x6a\xeb\x9c\xf0\x19\x40\x80\x82\xc1\xc3\x9b\x02\xa2\x77\xf1\x0c\x66\x0b\xd4\xa2\x05\xc4\x19\xaa\xa3\x20\xc1\xed\xed\x70\x14\x80\xde\x7f\xa3\x60\x19\x2c\x97\x20\x1e\x84\x8a\xf9\x21\x1b\x94\xb7\x2f\x58\x0c\x86\xf9\x08\x8c\x07\xab\xec\x18\xa1\x66\x18\x32\x9b\x09\x40\xa4\x7d\x6a\x36\xb8\x59\x02\xd5\x01\x32\x76\x38\x40\x66\x43\x38\x1a\x8c\x99\x03\x64\xa6\x3b\x40\xd4\x9f\x60\x66\x3a\x40\x66\x4e\x07\xc8\xec\xf6\x76\x66\x3a\x40\x66\xba\x03\x64\x36\x58\xd4\x71\x80\x10\x87\x15\x37\x05\xb6\x62\x90\x01\x18\xdc\xde\xc2\x65\x00\x66\x01\x88\x94\x85\x31\x33\xdc\x13\x33\xe6\x00\xd1\xae\x3f\x9a\x95\x1d\x20\x91\x70\x80\xcc\xaa\x1d\x20\xe6\x17\xec\x9a\x1a\xee\xe2\x0c\x0f\x8f\x3a\x40\x42\xaa\xb5\x32\x27\x1b\x88\xc0\x4c\xd1\x40\x8b\x4a\x2b\x53\x02\x8a\xd5\x56\x26\xd7\xd1\x7f\x57\x4c\x4e\xbf\xbd\xf8\xfe\xf5\xbb\xdf\xce\xff\xb1\x02\xb3\x5f\xa9\xb9\x5b\xe1\xab\x91\x47\xab\xa9\x43\x6a\x87\x27\x43\xf6\xa7\x67\x68\xd7\x38\x42\xfb\xe5\xd3\xd2\x82\xfe\x63\xab\xa7\xde\xe4\x98\xc9\xd2\x35\x59\xbd\x65\x12\xef\x82\xf9\x83\x9a\x2d\xb6\xba\x9a\x18\x9f\x1e\x40\x72\x88\x98\x8b\x8a\xf1\x5b\xfe\x58\x0b\x0e\x1e\xde\x43\x1d\x86\x34\x59\xb4\x20\x1d\x0a\x7e\x11\xed\x28\x6d\x0d\x1e\x1a\xc7\x0d\x0c\x78\x0b\xf8\x84\x49\x6d\x27\x0c\x41\xd8\x45\xad\x54\x1c\x62\xa9\x79\x88\x9d\xb4\xd8\x25\xc2\xdc\xc5\x65\xc9\xae\x20\x18\xa6\x20\x1f\xd1\x03\x81\x18\xbc\x5a\x39\x7d\xa3\x33\x0b\xe7\xb8\xf3\xec\xcc\x0d\x07\x37\x1f\xe1\xf5\x49\xca\x4e\x53\x28\x5c\xd5\x61\x87\x8b\xbb\x03\xcb\x09\x98\x3e\x12\x0d\x82\x21\x1c\x05\x27\xbd\xc1\x60\xc0\xbf\x40\xbb\xf3\x28\xef\x88\x20\x16\xed\x59\x40\x22\x55\x86\xa3\x3a\xbc\x64\x9c\x43\xd4\xa6\xd9\xca\x77\x85\x81\xfc\x63\xfc\xee\xf8\xf5\xd9\x93\x83\xc6\x8e\x5d\x07\xae\x26\x3e\x6b\xc2\xb2\x2c\xce\x45\x77\x89\xe3\x42\xf2\xac\x09\x72\xca\x79\xf6\xc9\xb7\x64\x93\xbb\xb3\x4f\xdf\xca\x6f\xd8\x1e\x57\xb0\x56\x55\xc4\xc7\x66\x05\x20\x1a\xb1\x97\xd2\xbc\x6e\x05\xce\xbb\x29\x12\x35\x99\xa0\xf6\x78\x1a\xe6\x68\x97\x72\xeb\xbb\xb2\xc8\x2e\x7f\xea\xbe\xfc\xfb\xb3\x3d\xd4\x78\x91\x89\xe9\xdb\xd6\x54\x39\x48\xb4\x6d\xf8\xf5\x28\x8e\x5e\x10\x77\x3b\x0b\x8d\x6b\x10\x0d\x49\x3a\xd7\x09\xa3\x88\xc6\xa4\xb7\x24\x3e\x37\xe3\xd9\xe4\x02\xfc\x04\xc7\xe4\x77\xb0\x04\x57\x71\x92\x3c\xa5\xee\xfc\xc6\xdf\x61\x72\xae\xf2\x29\xe2\xad\x6b\x8c\x82\xae\x12\xf6\x62\x71\x87\x8a\x1a\x85\x1f\x7e\x7c\xf3\x6a\xf2\xfd\xe4\x4e\x2d\x3d\x85\x42\x77\x62\xe5\xed\xa8\x1a\xeb\x8e\xbe\x0c\xff\x86\xfb\xaa\xae\xc2\x52\x3d\x33\x9f\x5f\xf1\x07\x03\xbc\x7a\xb2\x89\x47\x8e\xe9\xe8\x11\xfd\x47\xff\xd6\x09\xbd\xb8\x34\x56\xee\xba\x1b\x85\x2e\x60\xa3\x93\x9b\xad\xdf\x3b\xb2\x72\x17\xff\xfc\xf0\xcf\x9f\x2e\xae\x9b\x87\x5c\x69\x71\x50\x7d\x6e\x08\x65\xf9\xa4\xf2\x4f\x0e\x26\x0c\xca\x8f\xaa\xcb\x94\xbe\x46\x2e\x88\x70\xa8\xea\xd7\x98\xa6\xb0\xea\x3d\x2b\xb2\x8e\xb4\x78\xf2\xde\x55\x68\x01\x3c\x9f\xc0\x62\x54\x5a\x73\x63\x6e\x6f\x4b\x92\xf6\x1c\x61\xf9\xb4\xdf\x01\x50\xb6\x6d\x96\xa2\x3c\x4c\x0b\x92\xcd\xa0\xee\x81\x65\xd3\x60\x7a\x66\xae\x2a\x06\x37\x4b\x76\x81\xcc\x22\xfe\xbd\xac\x2a\x0e\x21\x2d\x40\xf8\xa5\x59\x38\x9e\xc6\x29\x0f\x01\x67\xbf\x3a\x05\xca\xe6\x2d\xae\xb1\xf3\x47\x99\xd2\x7e\xff\x3e\xdd\x7e\x45\x3e\xe6\x97\xb4\xfb\xac\x7b\xac\xa9\x81\xb2\x83\xe3\x14\xc1\x7c\x9e\xf3\xb2\x14\x45\x3e\x06\x37\x59\xfa\x4e\x92\x43\x8a\xf7\x88\x84\xfc\x9f\x2e\x0a\x94\xcd\x58\x65\x10\x49\x36\x1f\xdc\x44\x10\x85\x71\x72\x02\x97\xc1\x0e\x2b\x0a\x22\x6f\xb7\x50\x20\x13\x2d\xde\xe4\x04\x30\x19\x46\xb7\xb7\xb0\xc3\x28\x26\xcc\x37\x68\xf0\xf0\xc6\xc2\xd3\x34\xf2\x0e\x11\x39\x28\x47\x8c\x42\xe6\xe5\x16\xfd\x17\x10\x5e\x87\xe0\x27\x04\x60\x87\x7c\x31\x58\x06\xc0\x11\x8a\x0f\x83\x25\xc8\x52\xc2\xc9\x4e\x5a\x10\x74\x3a\x1d\x71\xda\xb3\x39\x1c\xc2\x51\x8b\x5c\xa6\xf9\x07\xeb\x88\x18\xae\x34\x00\x75\x9a\xd9\x8c\x9d\xe1\x5b\xb7\xb7\xc6\x0a\x08\x11\xd4\xa7\x12\x5f\xcb\x51\x6b\x6d\x39\x44\x5f\x5c\x4b\x20\x24\x1f\x5b\x62\x85\xa0\x33\x1c\x0d\xd0\x12\xa8\xd2\x8b\x96\xe3\x11\xc1\x04\x22\xe8\x99\xef\x90\xd6\x29\x85\x6d\x8d\x0b\x2a\xcb\xb6\xcd\x87\x8d\xa6\xc5\x1b\xd5\xf9\x20\x62\x8c\x98\x35\xe0\xcb\x4a\x82\x8a\xeb\xbd\xfb\xf7\x51\x67\x4e\x97\xe9\x53\xba\x68\xcb\x57\x5a\x8c\x86\xbc\x8d\x16\x5c\xa3\x80\x0d\x99\xd3\xbb\x72\xe8\x65\x4f\xd2\xf8\xbc\xfb\x8b\x23\x7b\xc2\x7d\xe8\x31\xb7\xe3\x48\x2f\x12\x50\xdb\xbf\x5b\xab\x30\xc0\xaa\xe3\x88\x46\x72\xc5\xe9\x45\x73\x5f\x84\x9c\x82\xad\x1c\x3e\xec\xa4\xa9\x7f\xfc\x54\x1c\x0c\xf1\xa4\x25\x4c\xb4\x94\x41\x13\x1e\x40\x45\x3f\xe2\x2c\x81\x83\x7b\xdd\x1d\xf3\xfc\x20\xd5\xcd\x1f\x31\x46\xcf\x3e\xcd\x2f\xb7\x64\x3b\x40\x7d\x9c\x5b\x8a\x79\x2b\x69\x86\x5e\xd1\x3b\xf7\xef\xb7\xe0\xe0\x5e\xad\xb6\xe4\x4b\x41\x99\xdd\x29\x53\xb4\x86\x90\x88\xc2\xf3\x76\x1a\x5e\xae\x9b\x17\xf2\x95\x8a\x19\x3d\x59\xfc\xdc\x3d\xf8\xfc\xf1\x07\xfb\x16\x62\xb1\x15\x22\xb1\x92\x65\x61\x3e\xe6\xe9\x9e\xaa\xa5\xd8\x11\x87\xc4\xf6\xda\x61\x19\x0d\xc7\x04\x47\x25\xaf\x5e\xab\x58\x86\xc3\xa1\x9f\x4d\x26\x0c\x5c\x0f\xe5\x0b\x48\xf6\x14\x0a\xcf\xfd\x7a\x11\x88\x3d\xdc\x71\x1a\x02\xb5\x07\x0e\xac\x89\x02\xec\x8b\x8a\xa0\x49\xdc\xbc\xed\x36\xb7\x00\xb6\xaf\xe2\x08\x4d\x4f\xa4\xcb\x97\xbe\x01\x7c\x72\x9d\xec\xfc\xbf\xfa\x40\x7d\x21\x81\x13\x64\x79\x1e\x5f\xb6\x3d\x3e\x85\xf1\xc5\xd4\xf6\x02\xbd\x61\x7b\x05\x65\x73\xcb\xf3\x28\x9b\xab\x25\x19\x65\x15\x47\x2d\xc6\x91\x58\xe1\x80\x7f\x06\xb1\x5e\x15\xe6\x14\x3c\x91\x96\xdd\x55\x09\xc0\x56\xaf\x0f\x7c\x2f\x4c\xe3\x59\x48\x7c\x45\x7a\x69\xa8\x43\x97\xd9\xae\x2a\xd4\x43\x43\x1a\xed\x97\x7f\xf4\x65\xe5\xc2\xc6\x01\x1e\x3c\xe6\x93\xb9\x25\xb4\x41\x59\xe2\x2d\xf6\x8c\xb0\x06\x3d\xe0\xe2\x80\x06\x5c\x18\x71\xb0\x7a\x5d\x4b\x3d\x74\x41\xbd\x69\xc6\x62\x88\x67\xac\x83\x93\xa1\x1c\xb2\x3f\x82\xd2\xd4\x73\x72\x68\xc1\x67\x38\x50\x22\x7c\x75\x68\x3e\xfa\xce\xb1\x2d\x92\xd7\x31\xe8\x52\x5b\x6a\x05\x21\x32\x01\xfa\x17\xf0\x44\xa9\x75\x92\x5d\xa8\x80\x8e\x60\x0a\xdb\x70\xb4\x9a\xa7\x5d\x05\x30\x4b\xab\x47\xaa\x77\xf7\x40\x5e\x7a\xe0\x9e\x86\x3a\x43\x52\x99\xce\xe3\x69\x0e\x27\xbe\xd2\x1e\xfd\xdd\x1c\x1d\x8f\x55\xbb\xd4\x7a\x54\x99\xb6\x6f\x01\x13\xac\x0c\xb9\xd8\x6b\x58\xfb\xd2\x8a\x11\x50\xad\x36\x27\x8b\x8b\x78\x72\xcd\x23\x88\xc5\xda\x51\xcb\x5e\x4e\x44\xc6\x7f\x9a\x65\x73\x92\x49\x1f\xb5\x17\x73\x96\x41\x24\x0a\x90\xa9\xe1\xc8\xa2\x78\xa6\x3d\x44\xa3\x20\xf1\x1f\x51\x36\x6b\x93\xfc\xf5\x58\xc0\x09\x34\x90\x93\xb4\x03\x58\x48\x4a\x34\x2e\x23\xb7\x44\x66\x2c\x95\x1a\x3d\x95\xbe\xe0\x14\xe4\xab\xfd\x37\x65\xb8\x46\x9b\x24\x00\xf1\x67\xd4\x67\x94\x16\xcc\x7b\xb6\xc7\x69\x4d\x9f\x14\xc2\xa8\x68\xe7\x90\x95\x43\x83\xb6\x27\x93\xf0\x3a\x5b\xa0\x62\xf7\x22\x8f\x23\x5f\x05\x5a\xb3\x04\x40\xd3\x04\xce\xaf\x14\xfc\xfc\xeb\xf5\xe1\x2f\xe7\x1f\xb2\x5f\xed\x12\xc8\x18\x26\x89\x52\xfd\xa7\x66\xe0\x33\x3f\xad\xd4\x82\xf2\xe5\x09\xf1\xf0\xfa\xca\xe1\xf8\x7a\x9c\xc4\xe9\x85\x27\x39\xd1\x3e\x3b\x01\xf6\xe8\xce\x68\x87\xa2\x5a\x90\x5e\xa5\xf0\x90\x54\x17\xd8\x07\x07\x23\x53\xc4\x38\xa2\xe0\x97\xe2\x64\x27\x58\x70\xea\x89\x3e\xff\xa4\x1f\xa6\xfb\xe5\x13\x53\x0f\xf0\xf4\x73\x58\xc4\x9f\x1d\xf5\x01\xd8\xbd\x12\x2b\xd3\xf2\x1d\x2d\x3e\x74\x7a\x28\xf3\xe1\x3e\x58\x23\xd0\x75\x1c\x4a\x7c\xcd\x3e\xe5\xf5\x4a\x89\xae\x32\xa2\x6d\x58\x13\x94\x55\xf6\xb7\x66\x94\x59\x75\x55\x78\x82\x0d\x0a\x43\x5b\x90\xaa\xb8\x6f\x8b\x6f\x17\x07\x58\xd5\xa0\xea\x82\x9c\xae\x1c\x93\x6b\x62\xf6\x1a\x46\xb9\xca\x21\x4b\x7f\xab\x82\xa0\xc6\xc7\xf8\x44\xb9\xb4\x69\xe1\x44\xf3\xc2\x31\x67\x41\x69\x88\xe2\x4b\xd8\x2e\xc6\x79\x46\x91\x37\x94\x24\x9f\x0b\x96\x54\xfb\x98\xd8\xbd\x52\xd4\xa6\x2b\xdc\x7f\x4c\x9f\x26\x92\xb4\xf2\x13\x91\xb3\x85\xfd\x3a\x15\x10\x9c\xe3\x24\x26\x78\x12\x9f\xe1\x29\x0f\x84\x1d\xfa\x88\x02\xc7\x11\x10\x69\x0e\x26\xcd\x4b\xc7\x58\x04\x3b\xa2\x7c\xa8\xed\x56\x61\xde\x5b\x3e\xd8\x14\x3c\xd7\xb2\xe8\x08\x09\x99\x94\x6c\x51\x90\xb4\x1f\x07\xa4\x54\x56\x73\x31\x59\x7e\xb2\xdf\x27\xdc\x8a\x05\xf7\x32\x25\x68\xe4\x2a\x60\xa1\x0f\x9e\x84\x2f\x5b\x80\x2a\x6b\x6f\x98\x5a\x80\xb9\x3c\x44\x9b\x76\x91\xc6\xa9\x8f\x94\xea\xea\x5f\x67\x07\x45\x95\x3b\xa8\x0c\x1e\xeb\x1a\x36\xc5\x49\xe7\xf5\x2a\xc5\x81\x62\x0b\xb5\x66\xd5\x8d\x1d\x6b\xcf\x5c\x9e\xeb\x82\x37\x9b\x91\xf0\x76\x32\xaf\x89\x5a\xb5\x0e\x43\xa9\x90\x4e\xab\x67\x7a\x45\x6c\x86\x52\x28\xd0\x55\x54\x72\x1a\x16\xb2\x20\x20\x11\x73\x2f\x16\x44\x4a\xe2\xaa\xb5\x90\x56\xb3\xb4\x7d\x15\xa7\x51\x76\x45\xdf\x3a\x0d\x79\xf5\xc0\xf7\x8c\x85\x9d\x51\x0e\xf6\x9e\x32\x93\x97\x94\x81\xb1\x5f\xef\x08\xff\x7a\x8f\x45\x9a\x2d\x54\x85\x77\x09\x98\x5c\xd2\x05\xc5\x40\x44\x21\xc9\x50\x54\x82\x90\x14\xa2\x17\x08\xce\xce\xf0\xe0\x68\x40\x64\xa5\xe5\x30\x29\x43\x4e\x85\x22\x3c\x4b\xf3\x26\xaf\x80\x96\xa2\x96\x94\x5e\xef\xa0\x0b\xf2\xec\xea\x47\x2a\x1d\x1d\x74\xc1\x2c\xfc\x24\x7e\x74\x01\x9b\x2e\x92\xcf\x0c\x24\x8d\x4f\xee\xf5\x9a\x7a\xb7\xf0\x24\xda\xaa\xce\x97\x1d\xd8\x54\xce\x6c\x53\x19\xd9\x1f\x11\xc7\x91\x20\x5e\x8b\x8e\xe9\x42\xd8\x05\xa9\xe5\x87\xdb\x0b\xe5\x75\x31\x28\x3f\xa0\x3d\x30\x9a\x35\x69\x3f\x10\x43\x41\xc1\x4d\x02\x91\x97\x0e\x8a\x0e\xa9\x68\x41\x1b\x54\x5c\xee\x2c\x30\x0d\x76\x18\x75\x06\x83\x01\xba\x7f\xbf\x95\x7e\x3f\xf0\xff\xfa\xb9\x4d\xe6\xfd\xc4\xeb\xf9\x01\x48\x97\xeb\x3a\x7b\xc8\x9d\xef\x20\x7d\x45\x92\x8d\x5d\x68\xf9\xff\xe5\x7f\x2f\xa8\xca\x9e\xe6\xbe\x30\x2a\x7e\xaa\x5d\x1f\xde\xd0\x94\x93\x13\xd1\xce\x65\x0c\xaf\xb0\xd6\xd3\x0a\x96\xa3\x60\x09\xc8\xce\x32\x30\xc2\x5a\x0a\x05\x81\xff\x9e\x1b\x19\x67\xe1\xa7\xb7\x14\xe0\x5e\x2c\x14\x5f\x0b\x2c\xe0\xd3\x69\x99\x8f\xc2\xa7\x21\xfa\xa8\x74\x53\xb6\x15\xec\xc4\x13\x02\x3e\x43\x66\xe0\x55\x88\xa6\x9d\x59\xf8\xa9\xb5\x67\xcc\x6f\x87\x76\xe8\xf6\x76\x38\x02\xdc\xee\x11\x04\x3b\xfc\x8d\x18\xeb\x4e\x69\x00\xca\x5f\x52\x96\xc5\x7f\xa7\xdf\xf7\x1f\x2c\xe9\x64\xde\x30\xf5\x00\x2d\xb1\x2e\x79\x15\x27\xc9\x5b\x62\x6f\x5e\xcf\x35\xa7\x32\x23\xd6\xdb\xe2\x2d\xbc\x88\x0b\x9a\x66\x20\x04\x6f\x8b\x99\x5b\xe5\x7e\xb6\x57\xf9\x61\x15\x04\x4b\xf0\x9e\xa8\x9a\x6f\x85\xa6\x59\xea\x6c\x5c\x30\xa7\x1e\x8c\x98\x37\x50\x5c\x89\xd3\x8b\xdb\x5b\x4e\xca\xe2\x6f\xd4\x04\xde\x6f\x05\x8f\x28\xe8\x03\xa4\xe6\xf6\x56\x70\x42\x93\x19\xe8\xe6\xa3\x99\x03\x41\xa0\x83\xb4\xc5\x9f\xa1\xe6\x66\xe3\xde\x22\x6d\x0d\x83\xd4\xb2\x8a\xf1\x22\x6d\xe3\xb5\x48\xa7\x3d\x0d\x44\x2c\x68\x0f\x24\x03\x12\xf0\xff\x43\xb6\x48\xa3\x38\xbd\x38\x25\x62\xde\x5b\x02\x4c\x01\xe2\x72\x5b\x7f\x99\x64\x19\x82\xf9\x30\xcf\x12\x38\xf0\x19\xff\x8f\x09\xa6\xf1\x5f\x02\x90\x0d\x92\x0e\xca\xe6\xdf\xc7\x1d\x2a\x2e\xd2\x25\xf0\x7d\x08\x16\x02\x87\xad\x13\xa7\x29\xcc\xe9\x8d\x76\xb6\xc3\x1c\x16\xa8\xa5\xae\x73\xb1\x1c\xbb\x60\x61\xe7\x2a\x06\xb3\x4a\xd9\xf7\xfe\x8e\x99\x54\x25\x8b\x62\x6c\x70\xec\x64\x83\x6e\x7e\xc5\x76\x0b\x5a\xc5\xaf\xc6\x0a\xbf\x82\xf7\xef\xb7\x50\x89\x5f\x21\x16\x78\xb0\x98\xe3\xe5\x44\x52\xd0\xb8\x9f\x92\x5e\x3a\x23\x47\xe7\x1b\x66\x05\x6a\x05\xcb\x25\x20\x22\xa8\x36\xff\x2a\x3c\x09\x81\xa0\xc3\x4f\x3c\x8f\xf3\x02\x3d\x49\xc7\xd3\x2c\x6f\x41\x0b\x80\x1e\x04\x68\x70\xb3\x94\xf8\x29\xdf\xa1\x9c\xc7\x25\x7c\x87\xf2\x0e\xe1\x50\x9d\xcf\x2f\x70\x5f\x59\xfe\x00\x62\x13\x77\xff\x3e\xff\x8b\x8f\xef\xfe\x7d\x78\x6f\x50\xda\xf9\x5c\xf2\x08\x82\x1b\x73\xd3\x09\xa1\x64\x1e\xe6\x05\x7c\x91\x22\x12\x45\xcd\x5d\x36\xbc\x79\x90\x0f\x94\x31\x65\x05\x2c\x48\x10\x83\x8f\x19\x4d\x28\x6f\x15\x14\x4b\xaf\x95\xd2\xc4\xd3\x60\x27\x74\xad\x63\xb2\x24\x43\x6d\x49\x3e\x6c\xb6\xb0\xab\x5a\x7e\x84\x5b\x0e\x8b\xe2\x65\x5c\x90\x68\xb0\x96\x1f\x9e\x67\x97\xd0\x0f\x4e\xd4\x1b\xd4\x57\x2e\xee\x01\x83\xd4\x3d\xc0\xa7\x60\x90\x2f\x61\x52\x40\xcf\x49\x3b\x32\x2b\xa6\x0f\x3b\xae\x6d\x9a\xa3\x01\x20\x85\xcd\x2e\x57\x61\x1e\xfb\x6a\xae\xb9\xde\xee\xc7\xe7\x7f\x7f\xb1\xe7\x70\xcd\x91\xd8\xe8\x17\x91\x74\xca\x95\x4c\x64\xb6\x58\xaf\x7d\x4b\x1e\x45\x57\xb5\x97\x51\xc8\xf6\x18\x4d\x39\x75\x3c\xd5\x00\xe6\xf2\xf8\xdc\x09\xdb\xca\x7e\x0d\xdb\xca\x16\xec\x23\xf5\x6d\x20\xe4\x13\x0c\xa9\xdd\xee\x0e\x7b\x60\x78\x68\x7c\x63\x69\xb6\xa9\xed\x70\x7f\x84\xb5\x85\xec\xe2\x22\x81\xec\xca\xf1\x08\xf8\xef\xd7\x00\x34\x3f\xd2\xe1\xf6\x8d\xbf\x0f\x88\x25\x73\xfd\xec\x6a\x63\xba\x6d\xa6\x84\x6e\x13\x53\xc2\x96\xcd\x09\xfb\x5a\x22\xf5\xde\x2a\xdd\xb2\x9c\x4a\x5c\xdf\x1a\xe0\xad\x28\xf6\xa0\x2b\xf6\x3d\xa3\xb6\x8b\x30\x09\x59\xd2\x19\xce\xa6\xd9\x95\xc7\x96\x87\x58\x75\x8e\x2a\xbd\xf5\x12\x7d\x57\x6e\x53\x0b\x01\xfc\x71\x96\x90\x9e\x01\x7f\xcf\x49\x82\x72\x1a\x87\xad\x70\xee\x9e\x25\xe3\xbc\x4f\xbc\x83\x59\xa1\xa0\x2f\xe8\xa5\x4c\xfb\x82\x60\xbc\x7a\xef\x3e\x71\x1c\xf3\x8a\xbf\xab\xe9\x6b\xad\xb9\xdb\x2d\x5b\x5a\x80\x58\x32\xda\xee\xa8\x95\x92\x62\x12\x82\xa3\x42\x7c\xcd\xf5\xf2\x63\x1c\xc1\x7a\xeb\xa5\x6e\x3f\x6b\xed\x49\xf1\xc5\xf5\x70\xeb\x99\x65\xaa\xbc\x63\x5d\x1d\xaa\x0d\x43\x6f\xdd\x00\x15\x37\xea\xec\xa2\xf2\xe7\x71\x67\x6d\xc6\xab\x5e\x43\x7f\xad\xdb\xaa\xa5\x84\x31\x33\xdb\x54\x5c\xb4\xe1\x6c\x8e\xae\x19\x24\xb9\x16\xb4\xe3\xb2\x37\x09\x4b\x57\x73\xdf\x6a\x59\x84\xd2\xa2\xd1\xf2\x4a\x9b\x52\xea\x8a\x46\x43\xd2\xb2\xb4\xca\x9c\xc4\xb7\xef\x46\x11\xd0\x2e\x1b\x91\xa2\x6f\x96\xd5\x8d\xc6\x7a\x06\x48\xd9\x4b\xbc\xcf\xad\x14\x90\xc8\x4e\x43\x76\xcd\x6b\xc8\xae\x17\xed\x24\x2e\xee\x4c\xde\xc1\xec\xfb\xcb\x9f\x7f\x7b\xd6\xfd\x97\x5d\x48\x45\xe1\x45\x21\x25\x54\x99\x60\xcc\x2f\x48\x6f\x6e\xa9\x2e\x10\x20\x0e\x22\x77\x40\x99\x25\x5a\x44\x8f\x03\xd9\x07\x43\xff\x1d\x69\xa1\x0c\x4b\x62\x8d\x0a\xe1\x2f\x1e\x55\x3f\xbf\x99\xd0\x75\xac\x18\xfa\x45\xf0\x0c\x3e\x6f\x36\x97\xe4\xfa\xf8\x5f\x09\xed\x33\xec\x1f\x01\x1a\x22\xe3\xee\x72\x8d\x62\x60\x8c\x13\xff\x7f\xf6\xde\xb5\xbd\x6d\x1b\x5b\x14\xfe\xee\x5f\xa1\x70\xb2\xbd\xc9\x13\x88\xb6\x9c\x4b\x5b\xcd\x61\x32\x69\x92\x4e\xb3\x27\x4d\xb2\xe3\x64\xe6\xcc\xe8\xd5\x93\xc0\x24\x24\xa1\xa6\x40\x16\x84\x6c\xab\x32\xff\xfb\xfb\xe0\x46\x82\x37\x89\x94\xed\x54\x9a\x49\x3f\x34\x16\x09\x80\x58\x0b\x0b\x0b\x0b\xeb\xfa\xb8\x94\xe5\x46\xd3\xa1\xf0\x92\x29\xd4\x1d\x7b\xb4\x29\x5b\x4b\x4d\xfd\x1e\x91\xac\xcc\xac\x57\x6a\x8c\x3e\x90\x65\x78\xaa\xf7\x8e\x81\x4e\x87\x94\xc5\x96\xe7\x6b\x55\x7f\x13\x29\x46\xa1\xe4\xbb\xca\xd5\xdf\x73\xb3\xdc\x80\x85\x15\x28\x88\xe8\x2a\x51\x92\xdc\x9d\xae\xa2\x51\x52\x4e\xa2\xbe\xe6\x4a\x50\x49\x95\x54\x36\x57\x35\xe7\x00\x2a\x7b\x7a\x6d\x27\x9e\x17\x44\x84\x41\x16\x88\xbf\xe1\x44\xbb\x89\xa7\x51\xfb\xaa\x2d\x83\xcd\x1e\x49\x2c\x8a\x42\x86\x63\xa3\x1a\x48\xb3\x1f\x51\x21\x71\x0c\xbf\xc9\x0a\x2e\x95\x59\x79\x98\xf6\x60\x5a\x90\x2d\x5d\x8c\x4c\x6e\xfc\x87\xe5\x06\x10\xb9\xd2\x84\x94\xbd\x2b\xc7\xc2\x8f\xaf\x8f\xd1\xa7\xcb\x79\x58\x7f\x2c\x7c\xfe\x0c\xe9\xf4\x58\x73\x7d\xe3\x40\xf8\x8b\x4c\x5a\x52\xad\x1a\x2d\x23\xc3\x64\x03\x1c\x40\x6d\xab\xfb\x4b\x44\xe4\xe5\x02\x14\x2b\x74\x6a\x2f\xd7\xfc\xc4\x99\xa1\x30\xae\x9e\x25\xdf\xcb\x64\x87\x7d\x35\xc8\xa8\xe8\x34\x2a\x9c\x78\x72\xdc\x5a\xc0\xea\x89\xa8\x75\xfe\xa8\xe8\xbd\x33\x50\x49\x56\x33\x38\x4a\xd3\xd7\x60\xea\x79\xc9\xe9\x54\xc1\xc9\xc0\xac\xad\x92\x27\xf2\xb0\x1a\x55\x44\x75\x46\x30\x5d\xa9\xff\x24\xab\xd3\xa5\x0e\x03\xe3\xd0\xd1\x7c\x42\xcf\x20\xbb\x93\x1d\xcb\xc8\xb9\x4d\x62\x7a\xb5\xc2\xda\x13\xa3\x92\x84\xbe\xb2\x6c\x73\xcc\x98\xf9\x53\xcb\x7c\x3a\xbb\xf0\x1c\x8f\x2b\xf9\x42\xd6\xd5\x35\x6a\x51\x20\xce\x9c\xbe\x46\x46\x27\x9e\x5a\x53\x7c\xf2\xa4\xd6\x85\x6a\xe3\x21\xab\x4f\x33\x4e\x57\x90\x22\x59\x69\xf4\x89\xb8\xd5\x2a\xce\x9c\xd7\x68\xcb\xae\xbd\x22\x4d\x9a\x41\x3b\x85\xd8\xc9\x8c\x04\xc6\x79\x6f\x7e\xb6\x58\x9a\xd0\x4b\xe7\xca\xf7\xf5\xc5\xbd\xab\x0b\xf1\xa8\xce\xa5\xb9\xbc\x34\x35\xc9\x02\xbb\xd4\x0f\xd5\xe8\xc8\xd5\x06\x4f\xc4\x7d\xff\x26\x33\x29\x60\x73\xf0\x04\x58\x85\x0d\x5a\x1e\xfb\x71\xd1\x73\xfe\x91\x5c\x1a\xeb\x0f\x5c\x88\xf6\xce\x6e\x37\x3d\x7a\x5b\x5e\x3f\x65\x82\x36\x71\x76\x1a\x5e\xa7\x46\xbd\xac\xbc\xba\xd7\xda\xfa\x5f\xd9\xed\xb5\x6b\x31\x81\xf2\x99\xf7\xc7\x1d\xbe\x52\x2f\xbb\x5b\x89\x5a\x3e\x1c\xf9\xbf\xc5\x97\x6f\xff\xb1\x21\xd3\xd3\x1a\x5b\x41\x61\x03\xca\x60\x39\xbe\x6f\x2a\xea\xbb\x3c\x8a\xce\x7c\x59\x08\x3e\x51\x7e\xb2\x46\x52\xec\x02\xce\x94\x4a\xfb\xa4\xd8\xa3\x46\x3b\xf7\xa8\xd1\x0f\x2a\xdb\xa7\xa6\x3e\x2e\x8f\x34\x28\x47\x0d\x1c\xd7\xf3\xfc\xda\xdd\xa6\x42\x4a\x32\x9d\xdc\x93\x92\x4e\xae\x15\x3c\xeb\xa7\x52\x73\x7a\xd6\x5e\x78\xbe\xe7\x6c\xb0\x1c\xc3\x30\x1a\x59\xeb\x32\x8a\x96\x94\xec\xe5\x94\xef\xed\x7d\xa7\x4c\xb7\xa8\x6c\xd3\x66\x4a\x28\xe5\xaf\x6f\x16\x0e\xe9\xbc\xa1\xab\xfb\xe8\x56\xc2\x1b\x37\xa9\x91\x0c\x07\x26\xed\x7a\x74\x6f\xd0\xa0\x5c\x8a\xc8\x59\xb8\xa0\x77\xa2\x70\x52\xae\x17\xfc\x36\x81\x08\xa2\x49\xde\x26\x7b\x64\xdf\x34\x09\x46\x3e\xba\x36\xc2\x3a\x6b\xc3\xfc\x37\xe6\xd4\x10\xe8\x92\xfe\x1b\x30\x08\x5e\x70\x52\x7b\xb7\x60\x09\x0e\xd0\x1b\xf5\x25\xdb\x19\x36\x7f\xba\xa1\x4f\x75\x0a\xd5\xce\x15\x80\x60\xa0\x52\x7a\x70\x94\x05\x91\x2f\x66\x6a\x3b\x7a\x03\x00\xe4\x3d\xcd\xf5\x76\x38\x51\x9f\x94\x5d\xc4\x06\x04\xda\x2d\xc3\x31\x6a\xd9\xd5\x35\xac\xa9\x62\x67\xf6\xb5\x55\x22\x83\x78\x61\x78\x07\xd4\x3c\xf4\xee\x29\x4b\x77\xa6\x13\x2c\xf8\x4c\x89\xb6\xa9\xd3\xbc\x72\x22\xae\x7f\x8d\x92\xb2\x3f\xf0\x3c\xcf\xce\x7c\x4d\x28\x0a\xaf\xaf\x2d\xcb\x71\xc5\xce\x7a\x37\xb1\x45\xac\x0e\x1f\xd2\x72\x0e\x0f\x51\x43\xac\x78\x69\xc6\xd5\x67\xe0\xf8\x9e\xe7\xf1\x33\x8a\x41\x1c\xf2\x71\xd4\xe7\xf8\x3e\xb1\x4b\x6e\x62\x12\xcc\x82\x9b\x18\x1a\xd7\x56\x36\xac\x43\xe1\x7a\x2a\x6b\x81\xca\xee\xc1\xee\x2c\x3a\x47\xa4\x41\xdd\xba\x1b\x3e\x02\x6f\xaf\x2e\xbf\x5f\xcc\xe6\x1f\x1a\x7c\x04\x3a\x78\x06\x34\x46\x87\x3c\xac\x68\x2f\x1f\xdf\x44\x7b\x99\xe9\x8f\xbe\x07\x35\x21\x39\x79\xd9\xf8\x1c\xf7\xba\x72\x3c\x95\x4e\x80\x2a\xf8\x78\x0c\x46\x8f\x8b\xfa\xbc\xe7\xbe\x8f\x92\x24\xa2\xaf\x5f\x0e\x61\xe2\xcb\x43\x78\xd0\xd1\x37\xba\x0c\x76\xb7\xec\x00\x19\x60\x39\x69\xdc\x24\x04\x46\x58\x35\x8f\x37\x7a\x40\x6f\xaa\x4c\xdc\x62\x4e\x6d\xbd\x2c\x1a\x0d\xe3\xb3\xa2\xdf\x84\x5e\x88\xf5\xc6\xb6\x4a\xc7\x53\x3f\x8a\x51\xc7\x3e\x3a\x27\xaf\x0e\x42\xaa\x9a\xea\x5a\x3a\x84\x6c\x40\x51\x2b\x27\x83\x0d\x8e\x03\xeb\xed\xbe\x50\xd9\x7c\x9f\x14\x04\x5e\x2b\xf0\x5d\xe8\x87\x89\x2b\x36\x44\xe2\xa2\x00\x33\x2b\x8b\xdc\x30\x51\x5d\xb2\x6e\x67\x85\x3b\x2b\x2e\x1e\x46\x18\x5b\xe5\xa2\xff\x9d\x61\x9f\x28\x0c\x0e\xbe\x2f\x95\x00\xea\x64\x45\xed\x82\x8a\xca\xa5\x98\xcf\xe5\x4d\xe4\x43\x11\x75\x6d\x85\xe2\x2f\x60\x4d\xc3\xe8\x0c\x86\x56\x55\x21\x74\x8b\x53\x39\x06\x56\x5c\xd2\x94\xf3\xc9\x14\x68\xae\x1b\x2a\x5a\x84\xfc\x6e\x2a\xe5\xbd\x4d\xb6\x11\x3f\x0b\x54\xd0\xd6\xe0\xbc\x9e\xb5\x2c\xc1\x9d\x15\xb5\xd6\x74\x23\x2f\xf7\x8c\x2e\xb8\xac\x8f\xa4\xb6\xbc\x93\x38\x5f\x3c\x3b\x6f\xd9\x38\x9c\x4b\xed\x9d\x2d\xa8\x62\x62\xb2\xe8\xf2\x91\x4c\x2a\x75\xa5\x12\x1b\xdd\xe1\xad\x3d\x7f\x20\xce\x6d\x73\x12\x96\x2e\xe3\x36\xb4\x70\xc0\x07\x8a\xc8\x70\xf5\xe1\xd5\xe9\xc7\xe7\x1f\x3e\x0e\x33\x47\x7a\x4b\x26\x0e\xb5\x80\x1f\x91\x60\x68\xe1\xe4\x54\xfe\x4e\x41\xd6\x22\xa6\xd1\x05\xe6\x7c\x3c\x1d\xa7\xb2\x24\x77\x32\x5c\xf1\x21\x87\xab\x14\xc8\xee\xfc\x2f\xdd\x6c\xb8\xe2\x1f\x3a\xfd\xf4\xe2\xc5\xab\xd3\xd3\xa1\xf5\xeb\x25\xb3\xd2\x14\xfc\x7a\xc9\x4a\x2f\xc4\x5c\xf9\x2b\xf1\xc7\x70\x25\xab\x2f\x77\x40\xf2\x8d\xca\x35\x35\x2f\x57\x73\xdd\xa6\xbc\x94\x6e\x5e\x48\xd7\x37\xca\xed\x7a\x66\x2a\x76\x24\x1c\xc1\x6b\xf3\xbd\x9f\x4a\x51\x4a\x8d\x5b\x9f\x13\x5e\xb5\xe1\xc3\xb0\xc3\x43\x9b\x7a\x34\xcb\x71\x6c\x86\x77\x14\x8b\xe0\x36\xa6\x95\xe7\x73\x34\xd2\xbc\xa7\x8e\xe3\x00\xe2\xc6\x8b\x64\xa6\xc4\x66\x11\x7b\xae\x06\x23\xe9\x5e\x97\x09\xce\xdd\xb6\x7b\x98\xf4\xd0\xb3\x35\xb3\x56\x5f\x2b\x55\x42\x2c\xd7\x49\x34\x2a\x23\xa6\xce\x10\x8d\xd8\xd8\x23\x00\xe5\xdf\x8d\xbf\x95\x27\xfe\xcf\x28\x4f\x3c\xd9\xe0\xb3\xf2\x7e\x0a\x4f\xe8\x6f\x47\xf5\x97\xa6\x53\x95\x27\x52\x24\x73\xb3\xb4\x17\xb0\x65\xa4\x9d\xcc\x12\xe1\x59\x31\x64\xb3\x82\xd9\x32\x22\x88\x52\x55\xae\x7d\x19\x8b\x47\x81\x2f\x0c\x7a\x49\x0c\x7d\x1d\x06\xca\xb0\x12\x57\xab\xe6\x48\x23\xbf\x64\x26\x83\x26\x54\x0c\xa1\x50\x6a\x19\xd9\x8b\x94\xad\x61\xdc\x58\x0a\x4a\xda\xa4\x80\x15\xe1\xc0\xcf\x82\x46\xf3\x83\x02\xe8\x53\xa5\x6b\x04\xa9\x14\x98\xb5\x11\xb2\x18\xe7\xca\x0f\x28\x21\x32\x67\x67\x14\xc8\xab\x6a\xa9\x27\xe3\x71\x39\xd5\xbf\x55\xeb\x14\x2d\x2e\x76\x47\xf7\x57\x19\xd2\xd2\xa3\xfb\x2b\x89\x4b\xfe\x57\xe0\xa7\x05\xe7\x4d\x7d\x51\xcb\x71\x0c\xac\x0c\xf3\x02\x03\x15\xfb\xdf\x77\x60\x64\xbd\xcf\x97\x24\x33\xa5\x96\xbd\x83\xcc\xf6\x5c\xf2\x90\xa3\xea\xf6\x83\x42\x66\x9c\xc1\xb1\x59\x16\xa9\xf3\xf5\x51\xbb\x78\x4a\xb4\xaa\xd4\x65\x96\xac\x2d\xa5\xb0\xd7\x31\x0f\xcd\xf7\xc0\x0a\x20\x83\x99\xc0\x51\x24\xac\x5c\xd3\x9e\x13\x70\xc5\x29\xb7\x68\x21\x7b\x32\x06\x96\x3c\x9a\x8f\x12\x14\x4e\x8e\xee\xcb\x5d\x99\x56\xe2\xe6\x8d\x45\x29\x94\x80\xfa\x6e\x6c\x92\x40\x4e\xce\x42\xa9\x2f\x9f\x7c\x5f\xa1\x91\x96\xf7\xb9\x4d\x58\xcc\xc8\x7f\x47\xf0\xc8\x37\xe7\x91\x9e\xd4\x16\xa8\x54\x14\x69\x8d\x8b\x38\x35\x0d\x0d\xc5\x0b\x95\x51\x69\xec\x91\xc1\x4d\x0c\xbc\x98\xd9\x90\xb2\x8f\x09\xd8\xad\x71\x25\x55\x96\x1a\x50\xd8\x64\x2d\x25\x36\x56\xcc\x19\x77\xb9\xa0\x5c\x74\xdd\x66\x2d\x7f\xbd\x64\x5d\x97\xb2\x84\x29\x60\x3d\x5f\xb0\xd9\xa7\x0f\x6f\xaa\xb9\xb4\x5a\xa1\x5c\xce\x7c\xbf\xb0\x2d\xef\x03\xbb\xb4\x77\xe0\x82\xcd\x22\x8a\x7f\x47\xfc\xa4\x50\x4b\xc3\x8f\x07\x3f\x0a\xc4\x31\x21\x26\xb6\x76\x43\x19\x0b\xca\x3b\x65\x47\x7c\xfd\x9a\xbf\x2d\x95\xe8\xe7\xab\x08\x2c\x3d\x0b\x61\xda\x7e\xc1\x47\x19\x57\x8f\x8f\x86\xe6\x52\xe8\x18\x8f\x0b\x19\x86\xee\x80\x3d\x56\x5f\x3f\xa9\xf7\x05\x00\x27\xe0\x21\x78\x04\x1e\x6f\x56\x2d\xa8\xc2\x6d\x99\x4d\x70\x41\xb1\x69\x19\x9c\x0b\xc7\xa9\xdf\x16\x48\x08\x48\x42\x34\xca\xeb\x11\x77\x75\xb7\xab\xdc\x2a\x0b\x75\xd8\xce\x8c\x3a\x6c\xc2\x1b\x10\x05\x00\x96\x1f\x84\xa5\x4a\x6d\x49\xe9\x37\x6e\xac\xdc\x26\x64\x4b\xba\xf0\xf9\x3d\xcd\x59\xd5\x59\xc5\x74\xa1\xff\x9c\x54\x22\x59\xa9\x3e\x7b\x23\x96\x7e\x01\x0c\x8b\x9f\x10\xe1\xbc\x2c\xde\x39\xd5\x22\x52\x9e\x30\x5f\x1d\xfa\x3a\xa3\xaa\xa8\x88\xc6\x85\xcb\x54\x57\x3b\x73\x56\xc8\xe5\x5b\xcb\x65\xd1\xff\x9c\xbe\x7b\xeb\x55\x72\xee\xf7\xcc\x4b\xcc\x24\xa2\x36\xbf\xfc\x30\x6f\xf0\x67\xf6\x7f\xb3\xd9\xab\xca\x35\x7f\x66\x0f\x1e\xe8\x5b\x32\x27\xae\x7b\x5e\xd6\x62\xc4\xc6\xcf\xcc\x1f\xc3\x55\x7a\xc0\xfe\xeb\xe4\x99\xaf\xc4\x7b\x9b\x38\xe0\xde\x71\xdd\xd5\x89\x39\x2b\x75\xe7\x1b\x31\x51\xfa\x66\xb8\xe1\x1e\x9c\xd4\x5e\x06\x45\x09\xa1\x4d\x15\xe6\x13\x9b\x38\xce\xd0\x98\x53\xc3\x84\x9a\xaf\x24\x9b\xee\xe8\x44\x14\xd2\x70\xb2\x6b\x38\x4a\xed\x95\x61\x7b\x10\x8b\x94\xff\x06\x72\x39\xf5\x0b\xfd\x0b\x64\x32\xa4\x7c\x9e\xfd\x04\x99\x30\x2a\x5f\x64\x3f\x53\xb0\xe2\x67\xcd\x2f\x88\xcd\xa2\xa0\x94\xfb\x36\x7f\xf1\xac\xf4\x3b\xbf\x7e\x83\xa6\x2c\xe5\x82\xa0\x34\xff\xd5\x76\x36\xf3\x99\x48\x14\x0d\x22\x2f\x2e\x56\xef\xcf\xa9\x7c\x44\xc7\x60\x55\xbe\x8d\x17\xef\xea\xc6\xdd\x1c\x18\x77\x43\x91\xe5\x23\x75\xc0\xa2\x3c\xb8\xd8\x28\x23\x78\xd3\x71\x4b\xa3\x1a\x37\x92\x70\xbc\x71\xa1\xeb\xbb\x3a\xc0\x78\x5e\xf9\x42\xe6\xb3\x92\x74\x1c\x5f\x75\x2c\x8d\x8e\x4d\xdd\xe6\xd9\xda\xac\x84\x13\x70\xc6\xa9\xf2\x60\x83\x5e\x4e\xf8\x4e\xef\x8a\x9b\xd2\x0f\x6c\xf1\xfe\xc7\x7f\xfd\xfe\xfd\x8d\xdc\x94\x0a\x55\xce\xb5\x73\x78\xee\xb5\xa4\xaa\xb7\xe6\x67\xbd\x74\x52\x2b\x54\xba\x35\x24\x01\x46\xf1\x74\x8a\xe8\xc7\xac\x62\x2e\x3f\x18\x11\x61\x6f\xe5\x81\xae\x32\xff\xd5\xfa\xe6\x54\x43\xab\x5b\x47\x73\xa9\x43\x34\x9b\x7d\x97\x33\xd1\x58\xd1\x3f\xd0\x09\x2e\x8e\xc2\x68\xba\xec\xcf\x11\xa3\xd8\x4f\x8e\xfc\xda\xaa\x3e\x3b\x95\xfa\xfa\xf7\xef\xde\x3d\xc1\x83\xe8\x7f\xeb\x89\x2f\x46\xd4\x47\x84\xc1\x69\xc1\x3f\x5d\x2a\x73\x94\x07\xd1\x5a\xca\x34\x73\xcc\x57\x83\x5b\x5f\x42\x06\xf9\xf0\xf2\x12\x6a\x6d\xe3\x3a\x9d\x9b\x0c\x15\xe1\x17\x57\xa0\xef\xab\x72\x2c\x05\x8b\xe2\x13\x65\x51\x54\x10\x24\xae\x4a\x36\x56\xb0\x1c\x0a\x31\x3d\x46\x74\x8e\x93\x44\xda\xe4\xcb\x59\x79\x4f\xca\x91\xa7\xe5\x18\x97\x38\x9f\x98\x8c\x49\x6c\x8e\xc8\x91\x08\xd1\x17\xd8\x35\xb9\x6f\xbb\x3b\x14\x6f\x85\xa2\x41\x25\x96\xcc\x48\xc2\xf9\xe2\xdd\xdb\xd3\x4f\x6f\x3e\xbf\x3d\x7d\xff\xfc\xc5\xab\xd3\xcf\xaf\xde\x3e\xff\xf1\xcd\xab\x97\x75\x37\x8b\x91\x09\x59\x41\x59\xf4\xa8\xf4\xb0\x21\x49\xb1\x79\x63\x98\x51\x34\x79\x0f\xa5\xb7\x45\x3d\x09\x55\xf1\x38\xb2\xf2\x84\x73\x35\x4e\x83\x4a\x2d\xd6\x30\x51\xcd\xe8\x5a\xce\x25\xfb\x6a\x35\x52\xbb\x2b\x35\xc9\xf8\xed\xc1\x1a\xfc\x9d\x14\xf4\x1d\x6b\x09\xf0\xc6\x14\xb7\x7e\x17\x9f\xca\xab\xec\x58\xaa\x54\xaf\x96\x7d\x2a\xd2\x26\x51\xa8\xd4\xbb\x5b\xea\xff\x2a\x84\x7a\x24\xaf\x3c\x7d\xa9\x52\xd6\x17\x67\xf5\x71\x79\x35\xad\x7c\xbc\xa2\x5e\x6d\xb8\x17\xb6\x86\x90\x46\x0b\x86\xc9\xb4\x2f\xe5\xb1\xaf\x08\x5d\xf9\xc3\x6d\x21\x2b\x64\x7f\xd5\x21\xed\x82\x11\x98\xe1\xf0\xb5\x59\xea\x1b\x58\x80\x4c\x8d\xbf\x48\x50\x2f\x53\x30\x27\xd5\x4c\xa1\x59\x23\xb9\xc5\x92\x4a\x5a\xde\x6e\x18\x33\x67\xff\xb8\x21\xa5\xbd\xc9\x6f\x2a\xca\xec\x47\xa5\x87\x99\x19\x60\x4a\xa3\x45\x5c\x9f\x7f\xa3\x1e\x17\xdb\x7c\x66\xbb\x10\xc5\xc0\xa8\x14\x6a\x1a\x4c\xd6\x25\xa7\x90\xc1\xa0\xeb\x92\x88\x64\x91\x83\x82\xc8\xb6\xad\xce\xff\x3c\x98\x63\xd2\xcb\x40\x2d\x7d\xa8\x55\x22\x82\x06\xd7\x14\xab\x29\x42\xb4\xea\x21\x53\x5d\x84\x5b\xca\x5c\x50\xe7\x3d\x56\x0d\x1a\xdd\xc4\x25\x1f\xdf\x94\x38\x6f\xe1\x24\xbd\x39\xe5\xe5\x67\xe4\x0e\x90\x5d\x06\xe8\x1f\x49\x70\x45\x6c\xdf\x01\xc1\x75\x68\xde\x8a\x4d\xdd\xda\x01\xd6\x4a\x20\xa8\xca\x64\x0f\xb7\x09\xbe\x6f\x0a\x06\xaf\xc4\xb6\xb5\x0a\xda\xac\x9b\xec\x60\xcb\x4b\x47\xe9\x5c\xca\x98\x42\xbd\xa4\xff\x36\xea\xcd\x10\x0c\xd9\xac\x27\xbc\xb8\xdb\x64\x1a\x6f\x88\xdc\xac\x5b\xde\x81\xb8\x9b\x27\x09\x26\xd3\xed\xbc\x90\x9b\x21\xc9\x86\xad\xb8\xfe\xe5\x1f\x94\x60\xfc\x57\x5b\x82\x5d\x0f\xc7\x25\xa4\xe4\x0e\xe0\xc8\x86\xad\xc0\x91\x7f\xf0\x56\xe1\xf0\x29\x66\x58\x79\x6a\xde\x26\x20\xf9\xb8\x15\x48\x8c\x4f\x76\x02\xa5\x5b\x3a\x82\x2e\xb1\xab\xa5\x53\x44\x6e\x81\x5a\x06\xbb\xf1\x0c\xb9\xc5\x13\xe4\x1f\xa8\x07\x29\xea\x2d\x08\x3c\x0b\x51\x8f\x45\xbd\x80\x83\x33\xc7\x04\xf5\xd8\x0c\xe9\x8d\xca\x47\x59\x24\xbd\x68\xd2\xd3\x2a\x82\x1e\x26\x3d\x8a\xe6\x11\x43\xbd\x20\x63\x6f\x89\x7b\xc3\xa4\xe0\x2d\xcf\x9f\x9f\xc5\xac\xd6\x0d\xd2\xf5\xc0\xd8\x78\x59\xa8\xa4\xec\xf8\x1e\x3c\xde\xac\xda\xeb\xe8\x8f\x9b\xd5\xc1\x11\x66\x30\xf1\x97\xc2\xf7\x91\x5c\x88\x7e\x41\xff\x14\xe6\x0e\xb9\xb9\xa3\xae\xd2\x19\x22\x72\x61\x01\x0b\x92\xc0\x18\xc3\x87\x34\x30\xee\xdc\x22\x2c\x99\x6f\xa7\x2e\x6a\xc5\x46\x85\x5e\x8b\x52\x3a\x53\xc4\x7a\x5a\x4f\x90\x1b\xb2\x4a\x07\xb0\x57\x4e\x98\x2a\xad\x0e\x98\xa1\x39\xd0\xe7\xb6\xf3\xcc\x0a\x7c\xb7\xd4\x71\x58\xd0\x60\x25\xb3\xe8\x52\xa9\xb1\xd2\x5b\x2e\xe1\x53\xc6\x41\x10\x5d\x92\x7e\x88\x09\xaa\xcd\x19\xda\x46\xb5\x29\xf4\xb2\x20\x73\x51\xcd\xdd\x53\xa3\x7d\x72\xe0\x5c\x7c\x73\xa4\xfc\xcf\x70\xa4\xf4\xd7\x6b\xd0\xc3\xf0\xc9\x0c\x3d\x81\x0d\xf5\x57\x03\x9c\x70\xcc\x1b\x29\x6a\xf9\xd6\x29\xea\xcf\xff\x12\x11\x9f\x22\xe9\x4c\x99\x57\x95\x14\xf9\xb9\x81\xf5\x17\xb1\xd5\x9a\x54\xeb\x66\x02\xac\xac\x88\xe4\xf7\xb7\x10\x98\x36\x18\x00\x2b\xb9\x90\x42\xd3\x13\x60\xf1\xc9\xfc\x18\x5d\x55\x93\x44\x7e\x07\x46\x96\xa8\xd3\x61\xf5\xa4\x87\x23\x7f\xb0\x2c\x3f\xc8\xcb\x44\x1a\x0f\xb3\x42\x50\x85\xf8\x75\x2b\xa6\x88\xa3\x06\x3d\x4f\x62\xe4\xb3\x0f\x90\xe1\x48\x24\xf3\x23\x42\x16\x57\x86\xac\x13\x43\x17\x3b\x45\xec\xb5\x1f\x11\x9d\x1d\x3b\x31\x2f\xd0\xaa\xf9\xc3\xf5\xcd\x41\x21\xeb\x44\x63\x02\xdf\x00\x4d\xea\x53\x9d\xea\x06\x73\x48\xcf\x91\x4e\xfb\x3a\xa8\x26\xd4\xe4\x5f\x5f\x60\x51\x72\xd0\xea\xc3\x30\x8c\x2e\xfb\x41\x54\xc8\xa2\x23\xb3\xaa\x1a\x6f\x44\x9e\xd1\x0c\xfb\x56\xff\xa4\xd7\x3f\xe9\x0d\x1e\xf7\x06\x8f\xf5\x4b\x8a\x26\xff\xcf\x02\xd6\x13\xe3\xf7\x3f\xcd\xdf\x72\x52\x22\x13\x7a\xf5\x71\x56\x68\xe0\xc9\x86\x0b\xbe\x8f\xa9\x9f\x65\x47\xb6\xfc\x2b\x73\x28\x7f\x59\xf8\x7e\x61\xb4\x6e\xb9\x57\xb7\x40\x20\xa4\x22\x28\xad\x16\x85\xfa\x5d\x19\x89\x83\x5e\x7f\xd0\x1b\x9c\xf4\x06\x27\x25\x24\x3e\x2e\x21\xf1\xf1\x36\x48\x7c\xc4\x85\x14\x2c\xa3\x39\xe0\x82\x45\x7d\x51\xee\xbb\xaf\x78\xed\x06\x3c\xc7\x51\xb8\x9c\x46\x5a\xe8\xb7\xe2\x08\x13\x71\xae\x1e\xf7\x8e\x7b\x83\xe3\xde\x63\xf1\xcf\xd7\xc0\x6e\x80\xc8\xb2\x96\x3a\x8d\x17\xdf\x88\x73\x3d\xfa\xea\x69\xb3\xf0\xea\x3f\x9a\x34\x2b\x77\x88\xec\x66\x5d\xcd\x65\x59\x4c\x4f\x59\x4e\x11\xb4\x65\xce\x48\x7d\x2e\x3c\x04\xc2\xd6\xad\xad\x73\xe3\xb1\x5c\xa5\x5b\x50\x0e\x89\xe0\x88\x36\x24\xa3\xa7\x81\x83\x4a\x10\xab\x99\x68\xc6\x2c\x61\x1b\xa0\x84\x69\x33\x67\x42\x95\x63\xbf\xaa\x6e\xcb\x7f\x6a\xd3\xe0\x63\x4d\x0d\x72\xb9\x8b\x87\xb8\xb5\xa0\xa1\xfd\xa7\x3c\x3a\xa1\xca\x01\x9c\x92\x65\x5c\x8d\x85\x48\xd0\x69\x24\x41\xf1\xe5\xb1\x6a\xec\xa2\x35\xab\x51\xab\x71\x6f\xaf\x8f\xf8\x77\x58\x8c\x4c\x26\xb8\xf9\x6a\x18\x67\xe3\x9d\x2e\x47\x8d\xce\x68\x7d\xa5\xde\xb6\x5a\x6e\x33\x85\x50\xa1\x2e\xa0\x48\xca\x2a\x2b\xa6\xf4\xb0\x2c\xd8\x11\x91\xde\x24\xa2\x5a\x8f\x23\x56\xa5\x98\xa8\x15\x8c\xac\x53\xfd\xb2\x6b\xc0\x4a\x4b\x66\xf5\xe4\x76\x98\x55\x5d\xe6\xa4\x35\x6e\x34\xb5\xe1\x50\x8f\x8c\x7e\xaf\x35\x86\x2c\x60\x3d\xe7\x34\x61\x26\x9a\x07\x75\xad\x7e\x86\xc9\x7b\x43\x9f\xb2\xd9\xd6\xd4\x8a\x4d\xd6\x59\xc3\xe3\x28\x8e\x2e\x84\x57\xa5\xb4\x84\xeb\x38\x32\xa3\x10\x72\xee\x8e\x94\x5f\xb1\xf2\x9b\x54\x4d\x08\xd8\x46\x68\x80\x15\x7e\x67\x15\x39\x7f\xc1\xd0\xcc\xd9\xc1\x46\xb6\xb1\xd1\x5b\xa3\xe4\xcf\x8e\x9b\xae\x2e\x46\x6e\xcb\x71\xa5\x44\xe2\x71\x5d\x0e\xcc\x47\x46\x9e\x8f\x8d\xde\x01\x0d\x36\x86\x9b\x11\xdc\x3a\xc2\xaa\x84\x7e\xf0\xa6\x1f\x29\x24\x89\xf4\x2d\x7c\x4f\xa3\xab\x65\x8d\xf1\xf3\x61\xbd\x21\x8b\xdf\x0e\xf1\x04\xfb\xfd\x6c\xa3\xdf\xd0\xc5\xa0\x0b\x19\x1a\x77\xf7\x2e\x14\x29\x34\x9e\x52\x1f\x11\x58\x3a\x7c\xe5\xdf\x82\xc2\x6e\x96\x74\xb1\xbe\xc6\x65\xa7\x54\x8c\x59\xe4\xc5\x04\x93\x40\xa6\x74\xc8\xa2\x2f\x84\x66\x59\x55\x03\xd0\x2a\x67\xa9\x2a\x16\x8a\x67\xa1\x51\x6e\xa8\xc0\x7e\x31\xed\xfb\x0b\x7a\x81\xca\x79\xdd\x64\x6d\xf7\x20\xcb\x09\x21\x55\xcb\x5b\xc4\x72\x6c\x50\xae\x16\x42\x3b\x02\xcf\x26\xe5\x48\x0e\x1d\xeb\x51\x9f\xd6\x0d\x96\xe2\x3a\xc2\x56\x71\x1d\xae\xeb\x22\x23\xb6\x03\x39\x20\x52\x91\x1b\x45\x52\x02\x89\x8a\xe1\xd0\xaf\xf9\x47\x01\x96\x0f\xd3\x29\x62\x3d\x91\xd9\xad\x5a\x99\xcc\xa8\x30\x50\xd6\xc6\x18\x95\x0c\x73\x6d\x38\xbf\x1f\x01\xe6\x8d\x5c\x37\x4b\x6a\xe6\xfe\xb6\x40\x74\x79\x2a\x0a\xf1\x47\xf4\x79\x18\xda\xd6\x9f\x38\xf2\x12\x46\x11\x9c\x4b\x14\xf6\x84\xbc\xe7\x8c\x65\x51\xb9\xc2\xdc\x3d\xe6\xce\x61\x6c\x33\xef\xe9\x4a\xbb\xc9\x8a\x1a\x64\x3f\x85\x11\x64\xb6\x70\x57\xff\x18\x31\x18\xbe\x11\x6a\x34\xdb\x71\x00\x95\x75\xf1\xde\xf3\x5b\xcf\x73\xa6\x9e\x8b\xc2\x74\x3e\xc2\xa1\x4d\x8e\x1e\x3a\xba\xe2\xdb\x0a\x07\x43\xe6\xe2\x00\x5c\x0d\x45\x03\x1a\x2d\x48\x60\x53\xf7\xaa\x8f\xdc\x2b\x07\x2c\x8b\x4f\x97\x7d\xe4\x2e\x9d\x34\x75\xd2\x14\x24\xde\xc2\x0e\x0b\x0e\xf7\x45\x84\x8f\xc8\x4d\x63\x01\x70\xf9\x0b\x62\xcd\x6e\x21\x76\xa1\x38\x6a\x45\xc9\x26\xc2\x18\x36\xc5\x02\xac\x1f\xc2\x01\xa1\x19\x15\x10\x9a\xce\xd9\xc1\x5a\x43\x87\x0f\x82\x2d\x0c\x1d\xb7\x63\xdd\x00\x11\x58\x00\x1f\x04\x60\x0e\x62\x30\x01\x67\x60\x06\x2e\xc0\x32\xb7\x79\x4c\xf7\xc9\xe6\xf1\xee\x9b\xcd\xe3\x3f\xc3\xe6\xf1\x79\xbd\xcd\xe3\xa7\xf0\xfc\xc7\x70\xf6\xd7\x69\xbd\xcd\x63\x11\x4b\x2e\x9c\xc8\x7c\x03\x79\x71\x3e\x25\x1e\x19\xd2\x93\x0c\x25\x98\xc1\xe4\x17\xb9\xe9\xde\xe7\xf1\xa5\x7f\x51\xfb\xf0\x67\x8a\x26\x22\x95\x84\xda\x9f\xc5\x44\x12\x86\x78\xb5\x39\x2a\x46\x6d\x70\x3f\x22\x0c\x62\x82\x68\x4f\x31\x82\xf2\xd6\xb7\xea\x2d\x07\x3e\x0c\xfd\x45\x28\x63\x54\xeb\x6c\x05\x56\x6d\xba\xc0\x81\x19\xea\x9c\x1f\x51\x89\x05\x6e\xc5\x48\x93\x83\xc8\x7f\xe4\x27\x60\x06\xa4\x55\xc8\xb9\xad\x27\x92\x20\x55\xf9\x52\x2a\xbb\x4a\x27\xa7\x55\x32\xa0\x3c\x6e\xdf\x13\xd4\x81\xda\x09\x5f\xa6\x6d\x47\x78\x53\xbd\x88\xc2\xc5\x7c\x4b\x6f\xda\xcc\x76\xd3\x50\xcd\x2b\x53\x0d\x95\x9c\x6a\x9e\x14\x9c\xe3\x1b\x75\xc2\xe5\x42\x63\x77\xe1\xb5\xf2\x8e\x84\xcb\x5e\x32\x8b\x2e\x31\x99\xf6\x0c\xac\xf6\x2e\x31\x9b\x61\x22\x1c\x57\xfc\x05\xe5\x77\x28\xc3\x39\x45\xa8\x3d\xac\x0c\x9e\xc7\x86\x9e\x03\x98\x1a\x0f\x31\xed\xdb\x70\x64\xe9\xe6\x3b\xb5\xbe\x06\xe3\x1a\x0a\xba\xc5\xdb\x9d\x88\x7c\xc9\x12\xb7\x64\x2c\xa5\x1c\xde\x94\x5d\xeb\xea\xd9\x14\x89\xd4\xc3\x0f\x08\x26\x52\x3d\x3e\x32\xaa\x35\x18\x84\x54\x59\x88\xf1\x38\xbf\x04\x66\x69\xf2\x8f\xc5\x3d\xb1\x34\xe6\xb6\xa9\x3b\x8b\x77\x3a\xe3\x0b\x73\x88\xc9\xdb\x88\xbd\x26\x53\x8a\x92\xa4\x30\xa1\x52\x89\x01\x30\xb2\xfe\x86\x89\xd4\x1d\x62\xd9\xbc\x3f\x85\x0c\x5d\xc2\xe5\x0d\x6e\xdc\x6b\x02\x21\x18\xe4\xb2\x56\x65\x59\xcc\x74\x36\x6a\x8d\x10\x09\x84\x15\xa2\x61\xbd\x6a\x57\xa6\x78\xb7\x2e\x3b\x4f\x03\x63\xea\xf5\x3e\xd8\x65\x5f\xed\xba\x1e\xb2\x55\x49\x4d\x62\x70\xca\x64\x31\x9f\x43\xba\xec\x4f\x22\xda\xcf\xe6\xbd\x6e\x97\x16\x1c\xbd\xcd\xa4\x0b\xb5\x84\xd2\x21\x32\x64\x8b\x5c\x09\x8f\xb6\xd4\xe1\xd6\x85\xa1\x0c\x80\x95\x85\xa1\x99\xe7\x55\x93\x01\xde\x8c\x5f\xd1\x1d\x75\xda\xd6\x26\xe6\xde\x82\xfd\x6d\x32\x47\x3d\xac\x49\xbc\x51\x1c\xf1\x17\xc4\xa0\x05\x2c\x7e\xaf\xa6\x04\x86\x3a\xbf\x07\x47\x87\x92\x31\x60\x8c\xeb\xb7\x4d\x2b\x3d\xf0\xc3\x6c\x07\xdf\xd2\x26\x43\x14\xa3\x96\xbb\xcc\x54\x76\xf1\xeb\x97\x1f\x85\x2d\x77\x57\x11\x47\x5d\xf6\xd9\x63\x30\x18\x14\x3a\x6f\xde\x72\xeb\x18\x6d\x65\x2f\xfd\xc0\x77\xb1\x06\xa6\xe3\x7e\x02\xa5\x35\x59\xc7\x4e\x77\x85\x25\xee\xcb\xc2\x59\xdb\xb1\xc6\x9b\x2c\x67\x7b\xb5\x25\x68\x12\x2a\x05\x3f\x0a\x31\x39\xb7\xd6\x0b\xb8\xb9\xdd\x7a\x9b\xfa\x83\xc5\x38\x5e\xcd\xfe\xb2\xcf\xca\xf0\x5d\xf9\x09\x61\xa0\xcf\x72\xd8\x7e\x3e\x0b\xa1\x6a\x24\xfc\x07\x42\xa1\x08\x95\x79\xef\x7b\x24\xa2\x68\x82\x28\x2d\xb2\xd0\x77\x31\x22\xbd\x00\x26\xb3\xb3\x48\x87\x07\x6f\x69\x7b\xad\x9b\xbb\xbc\xc9\x97\xa7\x3e\x00\xc5\x5a\x96\x3a\xce\xf8\xe5\xbb\x17\xa7\x9f\x45\x76\x29\x1d\xb3\x77\xe4\x47\x84\x20\x9f\x1d\x45\x67\x9c\x46\xe0\x19\x0e\x31\x5b\x1e\x2d\x70\xff\x02\x27\x0b\x7e\x67\x86\x46\x5a\xe2\x1b\xa2\xe2\x85\x52\x3b\xa0\x4e\xf8\xd8\x32\x9c\xa7\xc9\xfd\xba\x7c\x6a\xd6\x5c\xd8\xea\x0e\xcd\x3a\x66\x92\xab\x98\xd7\x99\x35\xb4\xf7\xa1\x12\x60\x32\x3f\x44\xd3\x43\xb1\x60\xda\xc8\x67\x64\x99\x86\x03\x2d\xc7\xff\x9d\x8f\x67\xec\x4c\x39\xee\x4b\x3c\x47\x24\x31\xbd\xf0\x74\xfb\x37\x12\xaa\x71\xc3\x75\x12\x14\x6c\xbe\x86\xbd\x62\x30\x58\x67\xa2\x68\x73\xbe\x9b\xb7\x64\x53\x93\x71\xe3\xcb\x7a\x79\x0d\xf5\xe0\x7d\x5f\xdd\x6f\x1b\x78\xc7\x77\x0d\xe6\x65\x11\x8b\x6f\x08\x99\xa0\x3a\xeb\x9b\xde\x9a\x2a\x0a\x06\x63\xce\x1d\xd4\x0b\x59\xaf\x8e\xca\x85\x52\xbf\x75\x00\x6e\xe0\xbb\x27\x5b\x06\xe0\x94\xd5\x02\x9b\x4b\x84\x76\xba\xe5\xde\xbc\x94\xe9\xc6\x7b\xad\x14\x0b\xca\xaa\x37\xed\x99\x50\x92\x99\x1e\xd6\xdd\x51\xff\xb0\xab\xe7\xc3\xbb\xba\x7a\xee\xc8\xe5\xf3\x61\xe7\xcb\xe7\xc3\x56\x97\xcf\x87\xd5\xcb\x67\xb6\x93\xb6\x93\xaf\x1e\xde\xc9\xd5\x73\x8b\xcb\xe7\xc3\x8e\x27\x6b\xa1\x6c\xc0\x6d\x5c\x57\x2b\xac\xac\xed\xb1\xbb\x88\xef\xe0\xd0\xd5\xb3\xa9\x1c\xb9\x8b\xb8\xcb\x81\xbb\x88\x2b\xc7\xad\xc9\x62\x6f\xeb\xb0\x6d\x9f\x09\x4a\x98\xe4\xeb\x6c\xf5\xcd\x46\xf8\x86\xc2\xfe\x34\x5a\xc4\xd2\x1d\xa0\xcf\x1f\xf5\x31\xc9\xa2\xc5\x72\xc4\x4b\xdf\x80\x88\xf4\x29\x4a\xf0\xef\x99\x49\x5f\x39\x10\xdc\xc4\x9e\x5f\x35\xe2\xbf\xcf\x8d\xf8\x65\x9b\x3d\x9f\x96\x03\x3a\x64\x6f\xd4\x0f\x92\xf2\x03\x5c\x7e\x10\x95\x1f\x2c\x4a\x9e\x01\x7e\xe9\x77\xb0\xa5\xa7\xc0\x54\xb9\x02\x08\x14\xcf\x95\x7f\x80\x7e\x58\xa1\x41\x10\x97\x5a\x64\xa2\x22\x98\xd4\xbc\x91\x54\x0a\xce\x4a\xaf\x14\xb1\x83\x59\xe5\xb9\xea\x70\x51\x7a\x51\x66\x5d\x60\xa9\x7c\x16\x02\x0a\x2f\x5f\xea\x0f\xd9\x48\xfb\x22\x30\x6f\x24\x23\x0a\x0c\xef\x30\x6f\x75\x25\x73\x13\x96\x81\x72\xaf\xfa\xdf\x81\x65\xc3\xbb\xe5\x83\xfa\xe7\x32\x16\xe6\xe8\x24\x33\xa6\x22\xe1\x9f\x80\x32\xff\x04\xe6\x21\x77\x8a\xd8\x8f\xd1\x82\x04\x98\x4c\x5f\x84\x18\x11\xf6\x01\xf9\xcc\xe6\x14\xc3\xe7\xe2\x5e\x3d\x60\xae\x08\xb4\xe1\x5f\xe7\x5f\xaa\x8c\xba\xc2\xc1\x10\xb9\x38\x00\xb9\x3b\xe7\x50\x0c\xfb\x9c\x31\x8a\xcf\x16\x0c\xd9\x15\x17\x50\x07\x04\x28\x61\x43\x02\x12\xea\x0f\x69\x9a\x3a\x6e\x12\x51\x66\xdb\x08\x10\xc7\x7b\xca\xb2\x4a\x6a\xc8\xcd\x3b\x39\xfd\xfc\x39\x31\x9f\x4b\x0c\x7f\x8a\x6f\x86\xdf\x07\x8f\xdd\xc7\x7f\x0c\x86\xfb\x0a\xc3\xfd\x93\xc7\x77\x81\x64\x2a\x90\x4c\x6e\x8c\x64\xc3\x6a\x66\xf8\xd3\xd4\xc5\x99\x6a\x86\xc5\xf7\xc4\x4b\x14\x23\x12\x20\xe2\x63\x94\x58\xda\x97\x45\x56\xbb\x43\xe4\xc2\xbd\x80\xd4\xd6\x57\xf2\xe7\x2f\xde\xe4\x79\xbf\x9c\xeb\x6b\x24\xbc\x7d\x8c\x2b\x5a\xeb\xcf\xbe\x34\xae\x75\xce\xf5\xf5\x68\xac\xfc\x7c\x10\x27\x81\x3b\x9b\xf1\xe1\x21\x79\xc6\x44\x45\x11\x7b\x25\xd9\xb9\x31\x8f\xde\x82\x9c\x93\xe8\x92\xb8\x16\x78\xc5\x11\x39\xbc\x77\x0c\x72\x71\x6a\x68\x59\x46\xda\x52\xcb\x4a\x9d\xe1\xb1\xe7\x79\x48\xa5\x8e\x3d\x3c\x2c\x8e\xfb\x36\x32\xd1\xe2\x5a\x6b\x47\x02\x4c\xe0\x31\x3b\x7b\x5b\x63\xf1\x53\xdc\x09\x87\x81\x0f\x2c\x55\xe3\xf0\xf9\x8b\x37\xef\xa3\x10\xfb\x4b\xe3\xe4\x69\xfa\xca\x25\x0e\x03\x7e\xb7\xc8\xfd\x3b\x73\x0f\xb3\x3b\x59\x24\x58\x5a\xa4\x0c\x4c\x63\x89\xd6\xae\x8c\xe2\x2a\x9e\xe7\x91\xeb\x6b\x5a\x1a\xed\xff\xf4\xec\xe7\x61\xd8\x53\xa2\x6e\xe2\x6c\x18\x6b\xc3\x2a\x67\x8b\xd6\x6e\x8d\x6b\x2f\x41\x79\x94\x78\xf9\xb6\x73\xcf\xf3\xec\x3a\x44\x2b\xd9\xc1\x55\x03\x00\x79\x5f\x72\x44\x91\xcb\x34\xbb\x4c\x4b\xc7\x24\x3c\xc9\x39\x2e\x69\x66\x76\x07\x99\x8b\xdd\x14\xe9\x0a\x9f\x3f\x2e\x5f\x07\xb6\x65\x3d\x60\xa3\xe3\xb1\xe3\x26\x05\x5e\x96\xb0\x65\x88\x2c\xf0\x45\xf2\xc1\xe1\xfd\x15\x51\x2c\x31\x8d\xaf\xbe\x38\xa9\xe4\xc6\xda\x73\xc2\x76\x52\xe3\xef\x95\x11\xf0\x9e\x7c\x10\xe9\x15\x5e\xbe\x90\xc9\x7b\x4b\x47\xb4\x67\xc9\xec\x0b\xfd\xc0\xb7\x86\x15\xec\x14\xb2\x42\x97\x50\xe2\x72\x8c\x34\x8c\x59\x1e\x67\x58\xdb\x8c\x0b\xb6\x07\x7a\x1f\x36\x22\xa7\xa2\x91\x73\x1a\x4f\x13\xd6\x3c\x4a\xe9\x7a\xd1\x3c\x06\x69\x31\x86\xd2\x2b\x39\xd2\xff\xd1\x38\x14\x9e\x29\x4f\x4c\x29\x6b\xf1\xb3\x0d\xb9\x57\x60\x39\x44\xee\x12\x88\xf3\x6d\x88\x94\x24\xa1\x16\x15\xa9\x25\x7d\x30\x38\x4e\x87\xc5\xce\x08\x10\x5d\xd9\x55\xca\x61\xea\xa8\x94\xe7\xa3\x1a\x8e\x15\x87\x23\x4d\x60\x19\x9f\x71\x14\xca\x69\x17\xb7\xcf\xdc\xb3\xc7\xad\xcf\x73\xe9\x8c\x01\xf4\xea\x07\xb3\x2d\xb7\x64\x52\x74\x40\xb8\xf1\xe3\x25\x64\x37\x7f\xf7\xa0\x56\x2c\xf1\x60\x33\x95\x68\x34\x0b\x61\x49\x55\x42\x2e\xc8\xa7\x54\x35\x52\x72\x6e\xde\x44\x0b\x58\xa1\x93\xa6\x60\xee\xbd\xb3\x03\xd3\xb1\x52\x88\xe6\x37\xf7\x24\x8d\xcb\xe3\x56\xa5\xfb\x9b\xbb\x95\x4e\xca\x1f\xc9\x2f\x08\x37\xcf\x8b\x7d\x56\x37\xb8\xba\x32\x8c\xc2\xad\x47\xaf\x64\x9e\x1f\x8d\xd3\xd4\x01\xb3\xf2\xd7\xf4\xb5\x65\x94\xdc\x14\x90\x8b\xea\xd0\x1a\x0c\x7c\xdb\x60\x2c\xcb\xdf\xaa\x5c\xa6\x46\xd1\x4d\xe1\x29\x7d\x21\x57\x0a\x83\xd1\x62\xb3\x17\x71\x43\x5f\x07\x04\xa6\xfb\x70\x99\x78\x33\xdf\x3e\x30\xf2\x3b\x7e\x23\xef\x5b\xfa\x46\x60\xba\x28\xbf\x5f\xeb\xa2\xfc\x19\xbc\xdf\xc2\x45\x99\x44\x0c\xd7\xd5\x16\xfc\x63\x12\x99\x7f\xff\xf6\x9f\xa7\xff\x7a\xfb\xfc\x1f\xf5\x5e\xa1\x72\xae\x4a\xa9\x75\xce\xff\x9d\xc8\x1a\x61\x98\x48\xa7\x09\x0b\xe4\xc9\xce\x33\xed\x98\xd6\xc1\xd4\x54\x09\xd3\x03\x8e\xca\xfe\x9d\x9a\xf3\xaa\x06\x63\x91\x05\xfd\xf1\xd8\x50\xbb\xe5\x81\x79\xed\x9d\xf1\xac\xbc\x22\x0c\x18\x59\x3f\xe7\xc5\x82\xbb\xfb\xf5\x69\xcd\xe2\xec\xe1\x5a\xb7\x95\xfa\x14\xa7\x56\x4e\x10\xae\xa4\x92\xca\x99\xe3\x4a\xc8\x5d\x4b\x2b\xf5\x2d\x37\xf3\x92\x29\x6a\xcd\x9b\xbd\x5f\x5a\x55\x69\x35\x31\xf2\x63\x14\x2c\x6f\x88\x8f\xba\x7c\xc5\x77\x82\x8d\x33\x31\xd7\xdb\xc3\x45\xd5\xe0\xd4\xc5\x51\xa7\x88\xc7\x9f\xa2\x88\xdd\x98\xb2\xca\x98\xac\x4e\xf0\xd1\x76\x9e\x08\x99\x82\x5b\x47\x57\x29\x6d\xf6\x8c\xa2\x89\x55\xb1\xfb\xdc\xe6\x9a\x4d\x04\x5e\x5c\xc3\x11\xa0\xf4\x4f\x57\xbf\xda\xbb\x20\x2c\x35\x49\x55\x30\xbb\x91\xbe\xb6\xb2\x7d\xac\x73\xb2\x58\xbb\x2c\xc0\xfa\x8b\x76\x4c\xb3\x32\x7b\x28\x60\x74\x81\x76\x08\x67\x77\x80\xae\x35\x96\xa2\x6d\xc7\x6b\x4c\x8d\xd8\x22\x32\x91\x15\x12\xd7\xe1\xc9\x8d\x0c\x0b\xe6\xc9\xbf\x3b\x05\x2f\xf8\xac\x26\xd8\x17\xde\x37\x35\x01\x54\x7f\x8c\x58\xf2\xaf\xbf\x87\xff\x1b\x27\xff\x8a\xeb\xc5\x92\xac\x54\xa9\x4c\xfa\x68\xca\x1e\xba\x00\x5b\xeb\x84\xb2\x9c\x9c\x33\xeb\x5c\xe7\x90\xf8\x35\x59\x75\x85\x63\x9c\xa8\xa6\x74\x83\x94\x24\xff\x8c\x16\xd4\x48\x8b\x30\x83\x49\xef\x0c\x21\xd2\x83\x41\x80\x02\xb7\x23\xcb\xf9\x38\x43\x14\xf5\x2e\x61\xd2\x83\xa4\x27\x10\xc5\xc7\xc1\x64\xda\x5b\x16\x3e\xd3\x34\x6e\xbb\x84\xa2\xeb\x51\xad\x6c\x7f\xb7\x93\x0c\xf8\x6e\x71\x9c\xc0\x8b\x5b\xc1\x71\x02\x2f\x6e\x88\xe3\x66\xe7\xc6\x92\x7c\x00\xd4\xde\x48\x44\x50\x35\x4d\x98\xdc\xae\x6d\x9d\x5a\x4d\x4c\x4b\xc1\x46\x16\x1c\xe8\xe8\x14\xab\x05\x9a\xb3\xdc\x27\x4f\xb0\xf1\x62\xfe\x16\xcb\xb6\x2a\xde\x23\xfc\x93\x6a\x4f\x8f\xab\x9e\x14\xc5\xb7\xd6\xb0\x57\x57\x3d\xb2\x30\x6b\x60\x99\xd9\x52\xb6\x38\x25\xba\x46\xb2\xe7\x59\x51\x6f\x1a\x55\x5e\xc3\x96\x77\xe7\xcc\x50\x39\x16\x76\xbc\x4e\x12\xfe\xe7\xe5\x0f\x47\xff\xfb\x70\x5e\x7f\x88\x28\x1d\xb8\x15\xc2\x33\xe1\x52\xfa\xf9\x33\xa4\xd3\x63\xfd\xc7\x20\x2b\xa0\x9d\xdc\xe0\x5d\xc5\x87\xcb\x38\xa9\xcc\x04\x92\x46\xf2\x89\xfc\x3a\x9d\x65\xa9\x58\x17\x26\x39\x78\x22\x2a\x6b\x0c\x44\x79\xd3\xd2\x5d\x5a\xad\x92\x4a\xdf\x38\x78\xa4\xb2\x19\x7d\x07\x06\xdf\xb5\xf1\x5b\x1c\xc8\x9a\xa9\xf1\x50\xf5\xff\x3e\xcb\x12\x19\x5f\xfd\x39\x44\x13\x66\xbe\xb8\xd2\x2f\x2a\x7e\x50\x3f\xd4\x39\x6a\xf2\x3f\x8a\x49\x5b\xac\xe7\x41\x90\xb3\x47\x0b\x58\x7f\xc7\xe8\xb2\xd7\x90\x28\xa4\x15\x1f\x2b\x7c\x38\xf3\xde\x7b\xb2\x7d\x5e\xfb\x76\x90\x6c\xed\x2c\xfe\x3d\xb0\x30\x99\x44\x74\x8e\x82\x7e\x76\x25\x50\x7a\x92\x00\x92\x29\xa2\xd1\xc2\x0c\x73\x2d\x5c\xd7\x06\xb9\x97\x8f\xa5\x33\xa0\x54\xa4\x73\x55\xeb\x3c\xf8\x91\x6f\x87\xe4\x35\x99\x44\xe6\xf5\x6f\x60\x14\x93\x53\xaa\x07\x60\x89\x5b\xb7\xbe\xa2\x88\xaf\x1f\x83\x63\x30\x18\xb7\x70\x31\xac\x22\xed\x7b\x35\xc9\x1f\xc6\xc0\xaa\x53\x6e\xb4\x46\x5a\xf5\x7e\xd3\xac\x99\xa9\xbb\x04\x3d\x6c\x79\xf1\x51\x98\x74\xf9\xfa\x56\xd4\x31\xf5\x13\xa9\xab\x55\xd1\x5a\x6a\x6a\x42\x56\x55\xf7\x71\x33\x54\x35\xab\x1a\x74\xfe\xab\x41\x4d\xe6\xa5\x57\x57\xb0\x41\x96\x68\xa5\x84\xb8\xb5\x85\xe0\xd8\x70\xb1\x9e\x4e\x8b\xe3\x7d\xdd\x1d\xfc\x76\x67\x45\x22\xd6\x7e\x5a\x45\xbf\xca\xbb\xa5\xa0\x7c\x03\x6f\x97\xce\x4c\x04\xc7\xb6\x15\x02\x6b\x6a\xc9\x48\xd7\x43\x30\x52\x87\xa3\x10\xef\x14\x6f\x83\xc6\x93\xed\x2a\x04\x68\xb7\xf7\xb3\x05\x63\xd2\x6d\xf7\xe4\x11\x78\x64\xfe\x96\x2c\x53\x14\x11\xf4\x43\xec\x9f\xab\x93\xeb\xf1\x06\x57\xf4\x3b\xdf\x0d\xb7\x42\x79\x12\x81\xb7\xbc\x23\x6e\x73\x66\x37\xdc\x15\x8d\xfb\xa2\x75\x15\xa1\x75\x54\x78\xcb\x64\x77\x2c\xd2\x4a\xf9\x28\x6c\x4b\x86\xd5\xba\x53\x66\x50\x86\x42\xe7\x8b\x88\x30\x1a\x85\xa1\x38\x93\x67\x38\x68\x2a\x1a\xd5\x7c\x00\xf6\x7a\x2f\xc4\xb4\xea\x60\xb8\x01\x66\x6b\xdc\xb7\x9b\x4a\x8f\xdc\xe8\xe1\x0f\x9c\xff\x74\xd6\xb5\x6e\x92\xdb\xcc\xdc\x6e\x77\x29\xbe\xa9\xa2\x35\x3d\xed\x95\xa0\xeb\x2c\xee\xbf\x28\xf7\x64\xdf\x44\x39\x63\xc9\xff\x28\x89\xee\xc9\x57\x90\xe8\xee\x06\x61\x6a\xd6\xa3\x62\xe8\x60\x1e\xd2\x60\x1e\x97\x66\xec\xc9\xe0\x61\xa1\xf4\xe9\x57\xc5\xf4\xcd\x25\x9f\xf6\x76\xc1\x86\x23\xe7\xfb\xbb\x94\x7b\xb2\x30\xdd\x6a\x44\xee\xc3\x76\x11\xb9\x66\xfd\xd5\x23\xa5\xa9\x28\x14\x65\xfd\x53\x31\x78\xaf\x45\x1c\x6e\x43\xfc\x6e\xd3\xd1\x74\x7b\x14\x9a\xf9\x1e\x34\x6d\xe9\xdb\x15\x26\xbe\xff\x4f\x95\x25\xc2\x28\x41\x77\x2e\x4a\x7c\x7f\x17\x92\xc4\x13\xf0\xdd\x0d\x8c\xb6\x9b\x4e\x7a\xac\x4e\xe2\xbd\x3f\xd8\x1f\xee\xdb\xc1\x1e\x7e\xf7\x47\x9d\xe7\x0f\xf7\xea\x3c\x0f\xbf\x2b\xb9\xd2\x7c\x45\x2c\xdd\xfc\x2c\xae\x73\x81\xe9\x74\x16\x3f\xfe\x8a\x67\x71\x6e\xad\xac\x2b\xfc\xa6\xb4\x09\x89\x8b\x02\xcc\x6a\x6c\x61\x65\x9d\xc3\xeb\x97\xb5\x95\xea\xef\xe6\x4c\x0d\xbf\xfb\xda\x47\xe9\xe3\x6f\x47\xe9\xad\xe1\xb5\xda\xec\xf1\x5d\x1c\xa5\x0f\xc1\xa3\xca\xe7\xb7\x4f\xce\x53\x5c\xb2\x87\x9c\x20\x54\xba\x05\x51\xce\x0c\x52\x0c\xfb\xca\x58\x97\xa5\x75\xa8\x5f\xc9\xc1\xe3\xea\x52\xe9\x3a\x1f\x51\xac\x8d\x73\xd2\x43\x3a\x69\x3a\x5e\xd9\x0c\xcd\x91\x05\xac\x38\x84\xbe\x20\x37\xde\xd0\x4a\x7e\x5b\x40\x8a\xfa\xc2\xbe\xcc\xb9\x3e\x63\xd1\x5c\x55\x05\x19\x8f\xc7\xd5\x32\x23\xc6\x59\x6f\x10\x4b\xe6\xfe\x76\x6b\xc4\xc7\x79\x4a\x6b\xe2\xb3\xb6\xcf\x0d\x74\xcb\x2b\x75\x3c\x06\x23\xe1\xd4\xb6\xfd\x4c\xeb\x6c\xf7\x59\x06\x81\xf6\xe1\xeb\x86\x09\x36\xb3\xe6\xe7\x9e\x5f\x22\xd6\x5c\x50\x8e\xf0\x79\x9e\x10\x11\x7b\x9e\x15\x38\xed\xe3\xa4\x2f\xa4\xb6\xbe\xb0\x34\xf7\x31\xb9\x88\xa4\xe9\x5e\xfb\x04\xa8\x9a\xa7\x09\x62\xe5\x88\x78\x19\xd8\x2e\x7c\x06\x2e\x31\x9b\xf5\xf9\xd2\x86\x22\x1e\x9e\x44\x37\x73\x21\x28\x58\xe9\x5b\x14\x3f\xbd\xe3\x22\xa4\x32\x7f\x5d\x9d\xcf\x40\x00\x97\xbf\x66\xff\x1e\xc5\xe1\x62\x8a\xc9\x91\x0f\x43\x44\x02\xc8\x89\x3b\x78\xd8\x4f\x44\x04\x8f\x44\x28\xff\xc9\xdf\x1a\x7f\xf6\xfd\x19\x8d\xe6\x90\x61\x5f\x3d\x9c\xc1\x58\xbd\x97\xd9\x05\x4a\x3e\x08\xc0\xc8\xf6\x7d\x7b\xfe\x08\xd1\x7a\x7f\x84\x8f\x8f\xa6\xef\x8e\x27\x6f\x4e\xeb\xfd\x11\xe6\x51\x20\x68\x2b\x40\x89\x6f\xb8\x25\x54\x92\x92\x94\x32\xc3\x55\x12\x33\x17\xd2\x9e\xa8\x6c\x28\x0d\xfe\x70\x66\x21\x9e\x1f\x4a\x02\x56\x67\x5f\x68\x19\x20\xad\x92\x28\x6a\x5f\xd6\x84\xfa\xca\xd7\x61\x06\xc9\x54\xf9\x3d\x68\x1f\xbd\x42\x6a\x1d\xeb\xe8\xfe\x2a\x9b\x7a\x7a\x74\x7f\x25\xa7\xce\xff\x0a\xfc\xf4\x28\x23\xa2\x6a\x2e\x94\xa3\xfb\x2b\xf5\x17\x6f\xac\x71\x93\x16\xf8\xa8\x06\x25\xcb\x0e\x63\x62\x49\xe0\x2d\xc7\x63\x86\xdd\xdc\x7c\x26\x73\xb4\x99\x19\x5f\x9f\xe8\x52\x1b\xe3\x6a\xf5\x93\xef\x0c\xde\xaf\xe0\x5e\xd3\xa4\x28\x27\x3f\x06\xc7\x85\xcb\xa0\xcc\x98\x3e\xd6\x8e\x5d\xd6\xb8\x5b\xca\x16\x9d\xc5\x03\x14\xb3\xb4\xe9\x9c\x19\x75\x33\xa6\x28\xa0\xf0\xb2\xc9\xb5\xb7\x34\x9a\xe9\x95\xd7\x7e\x90\x82\x8d\xad\x4a\x84\x8f\xf9\xbd\xb9\xfb\x15\xe1\x91\xea\xfc\x10\x8c\xe4\xee\x49\xb6\xf1\x5b\x1b\x28\x11\x5e\xca\x8c\x49\x0c\xe9\x79\x88\x09\xea\x9f\xa3\x65\x96\xfc\x4e\x9e\x5d\x27\x35\x47\xf6\xc0\x38\xa6\xf5\x86\x8e\x62\x54\x49\x84\x5d\x27\x10\xfe\x0d\x2d\x6f\x74\xea\x55\x57\xbd\x9c\xee\x30\x87\xe6\x92\xc2\x38\xae\xc9\xc0\x5a\xdb\x4d\xa7\xc3\x6e\x38\x9e\x9b\xbf\xc2\xf0\xbc\x50\xa0\xf0\x23\x9e\xa3\x84\xc1\x79\x5c\x91\x6f\x2b\x10\x83\xd2\xa2\x0e\xba\x65\x03\xb3\xd6\xe4\x8a\x5a\x18\xc9\xa2\xaa\xbc\xd5\x60\x4e\x2a\xcb\xf3\x23\xbe\x25\x3b\xa5\x49\xd2\x68\xd1\xc5\x78\x8b\x68\xb1\xc6\x75\xb5\xd8\x0a\x3f\xd5\x93\xef\x81\x24\xa2\x7e\x80\x61\x18\x4d\x73\x2d\x53\x81\x2c\x2d\xa5\x36\xe2\x62\x97\xc9\x55\x0d\xb6\x27\x0f\x13\x4e\xaf\x0a\x5e\x4e\x6c\x56\x1b\x05\x51\x25\x49\x92\x08\x4e\xd0\xe9\x90\xb4\x8a\x57\xa8\xac\x44\x36\x24\xcd\xae\x34\x23\x50\x9b\x40\xc9\x87\x95\x8c\x43\xd9\xb0\x52\x6e\x4a\xc2\x88\xe5\x8b\x23\x03\x32\x32\x45\x57\xa7\xab\x60\xbd\xc2\xa9\x00\x7d\x4d\x36\xf4\x8d\x97\xab\x16\xb3\x3d\xd3\x31\x55\x9d\xe7\xda\xb0\x8b\x38\xe7\xf1\x23\xa1\x08\x68\x50\x0a\xd5\x2a\x8d\x3e\xce\x70\xd2\x3b\x47\xcb\x5e\x20\x42\x20\xcf\x50\x22\xb2\xce\xab\x9d\xd0\xf3\x23\x4a\x51\x12\x47\x22\x88\xb9\xc7\x22\xf1\x72\x4a\x61\x3c\xeb\xa9\xfd\xde\x93\x4c\xb4\x87\x49\x6f\x1e\x51\xd4\x93\x5e\xb5\x6e\xa3\x76\x48\x01\x11\x5a\x4d\xde\x14\x83\x42\xe1\xbf\x87\xcd\xec\xba\x73\x6a\xb8\xc2\x04\x72\x2c\x0d\x54\xc0\x4a\xd3\x6d\xda\xe8\x14\x58\x5d\x93\x06\xf2\x81\x2b\xce\x0a\x8d\x7c\x4c\x5d\x49\x6f\x70\x3a\x15\x27\x9c\x15\x31\x10\xc4\x42\xa2\x3e\x97\xbe\x4c\xcc\xbf\x8d\xb2\xa5\x0e\x23\x18\xa0\xa0\xbc\x70\x6d\x32\xbd\xdd\xd1\x16\xc9\xd4\x80\xdb\xec\x92\xfc\x0a\xa9\x4e\xa7\x65\x8c\xfa\xb9\x6e\x67\xf0\x98\xdf\xcc\x4a\xc7\x72\x41\xdc\x92\x3e\xe2\x7e\x18\x25\xa8\x58\x29\xb4\x74\x43\xad\xd9\x68\x45\x5d\x4d\x77\xfc\xd4\x78\x4b\x6c\x0e\x46\xd2\xd1\x2e\xc6\xfd\x53\x8a\xad\x50\xe4\x2f\x37\xaf\x97\x0b\x8a\xcd\x22\x6a\xf3\x05\x33\x33\xa5\x5d\x62\x12\xc8\x7c\x4d\x85\xfb\xe7\x3c\x66\xe5\x5c\x6b\x32\x11\xdb\x82\x84\x22\xb2\xe2\x06\x57\x50\xf3\xce\x97\xdd\x40\xb3\x1b\xa7\x2b\xef\xa0\x36\xd1\x0f\xa4\x6b\xfb\x62\xad\x6b\x7b\xa4\xae\xa6\xd9\x1b\x3d\xca\x8a\x23\x44\x84\xa3\x03\x24\x73\x00\x0d\x80\xa2\xb4\xe1\x4a\x0a\xa4\x66\x80\x7c\x96\x79\xe1\xaf\x9c\xe9\x25\xb6\x93\x02\x29\xac\x0f\xcd\x78\x27\xd1\x2a\x41\xcc\x56\xe8\x46\x2e\xff\xd7\x95\x70\xe9\x84\x0f\xc6\x20\xf2\x09\x45\x14\x91\x00\x51\xdb\x49\x53\x90\xbf\x36\x3f\x8f\x27\xb6\x4c\xa8\xc3\xc7\x73\x54\x7e\x2b\x71\x9b\x94\xe0\x25\x2a\x67\x4c\xb6\x40\xf7\x8e\x65\x32\x3a\x55\x64\x2d\xb9\x98\x7a\xf6\x31\xe0\x0d\xf9\xcd\xd8\x91\xe9\x3c\x90\x4c\x2a\x52\xce\x92\x91\x5c\x4c\xdd\x5c\xfe\x10\xde\xff\x11\xb1\xad\x79\xb4\x48\x90\x70\x11\x17\x7f\xcd\xa3\x0b\x24\xff\x8a\x38\xe1\x10\x51\x9f\x08\xa9\x0f\x88\xd4\x19\xb2\x38\x9b\x4b\x45\x53\xbb\xf4\x92\x22\x9f\x19\x2f\xc5\x64\x99\x87\x5c\x12\x05\xc8\x5e\x97\x15\x45\x67\x1a\x89\x3c\x9d\x99\x0b\x2c\xbc\x0c\x37\xd7\xd7\xab\x14\xf8\xde\x42\xfd\x18\x8d\x41\xe0\x2d\x5c\xc9\x42\xc5\xbb\xb9\xb7\x70\x17\x04\xb3\xd3\xc5\x64\x82\xaf\xae\xaf\x2d\x0b\xc4\x9e\x59\xd8\x2a\x70\xdc\x09\x0e\x19\xa2\x36\xf2\x9e\x5a\xa2\x46\x9c\x75\xcf\x43\xce\x01\x9e\xd8\xc7\x9e\xe7\xab\x04\x41\xd7\xd7\xc7\x9e\x17\xab\x1f\x6d\x57\xa4\xe9\xd5\x40\xc2\x3f\xe1\x6b\x94\xb8\x09\x83\xfe\xb9\x63\x3b\x72\x3e\xb1\xe3\x46\x94\x53\x87\x7a\xf1\x8e\xff\xf8\x20\x4b\x5c\x39\xb6\xef\x80\x33\xcf\xcf\x12\x9d\x49\x2c\x1e\xeb\x0c\x68\x71\x56\xa3\x8b\x78\x4f\x57\xec\x81\x87\x46\x64\x2c\x32\x14\x39\x60\xc6\x3f\x06\x5d\xa1\x10\xe1\xa2\x36\xff\x60\x10\xcd\x21\x26\xb6\x7d\x0c\xb0\xdc\x27\xcc\xb1\x7d\x80\xbc\xa7\xc8\xe5\xd2\xb9\xe3\xb8\x94\xd3\xbc\x3d\x3a\x06\x64\xec\x80\x0b\x63\x88\x37\x98\x20\x48\x8d\x41\x46\xc7\x40\x8c\x33\x87\x57\x8e\x7d\xe6\x8c\xb3\xbe\x11\x38\x1e\x3b\x60\x29\x61\x85\x14\x41\xde\xe9\x8a\x4f\x7f\x66\xab\x0d\xa3\x3e\xb6\x1c\xf0\xa7\x17\x36\x1a\x1d\x8f\xf9\xcf\x63\xfd\x73\x30\x76\x1c\x30\xf5\x46\xd6\x9f\x5e\xbe\x78\x75\xfc\xea\x89\x05\xac\x3f\xbd\xf8\xee\xe1\xa3\x47\x8f\xad\xb1\x2b\x15\x72\x76\xe8\x26\xfe\x0c\xcd\xd1\x47\x78\x16\x22\xb8\x18\x1c\x3b\x07\xb1\x8b\x89\x1f\x2e\x02\x94\xd8\xd6\xbb\x05\x3b\xe3\x04\x66\x39\x87\x87\x76\x69\xa8\xe3\x57\x8f\x8e\x9f\x3f\x5c\x37\x94\x5c\xaf\x77\x06\xfc\xef\x68\x80\x09\x0c\x1d\x7b\x9a\x61\x20\xe6\x3b\xa7\xba\x1f\x38\x84\xf6\xc4\x71\x7f\x8d\x30\xc9\x1e\x42\xc6\xa8\x6d\x4d\x70\x18\x5a\xc0\x5e\x9d\xa3\xe5\x10\xa5\x8e\xf7\xf4\x9d\xcd\xf1\x20\x5f\x26\x8c\x46\xe7\xa8\xf1\x75\x60\x81\xa5\x9c\xd6\x67\x0f\xb9\xfc\xc2\x46\x82\x6c\x9b\xc9\x26\x42\x99\x67\x01\xcb\x5f\xd0\x24\xa2\x96\xe3\x8a\xa8\x16\xdb\xba\xc0\x09\x96\x19\xd6\xa5\x61\x22\x40\x24\xeb\x73\x29\xcb\xce\x0f\xf4\xef\x99\xca\xd3\x11\xe9\x07\x57\x16\x38\xd6\x7f\x2f\xf9\xdf\xe0\x7d\x7b\x56\xe3\xea\xdb\xa2\xe3\x1c\x4c\x22\x6a\x73\x86\x7e\xde\x8b\x26\xf6\x7b\x13\x71\xae\x71\x49\x64\xfd\x10\x4d\x11\x5f\xb7\x9c\xb1\xac\x69\x9c\x2c\xe6\x66\xcb\xd8\x71\x56\x92\x2d\xbe\xcf\x50\xc4\x05\xe9\x32\x86\x6a\x3f\x78\x80\xba\xf6\xe9\xfb\x51\x68\x22\xfa\x0c\xfa\xe7\x53\x51\x16\x52\xbd\x01\xef\xec\x73\x87\x73\x46\x3d\xb0\x90\xd4\x1c\x97\xa1\x2b\x66\x9f\x3b\xe5\xc7\x9b\x3f\x28\xaf\x54\x4e\xca\x81\xbc\xf4\x36\x62\x51\xb7\x3f\xd0\x9c\xec\xe9\xe0\xf0\xb0\x03\x6a\x24\x7a\xeb\x26\xaf\x38\x67\x17\x10\x92\xc5\x3c\x9b\x0f\x9f\xff\x2b\xc1\xd6\xcb\xa7\x8f\x55\x0c\x31\x7e\x5f\x4b\xc4\xe2\x47\x88\x2c\x07\x7c\xde\xf0\xfe\x95\x2b\x83\x4c\x3f\x4a\x42\xb4\x11\xf0\x45\x11\xc7\x39\x98\x81\xf7\xe0\x12\x7c\x76\x52\xc7\xc9\x67\xc0\xe9\xa8\x34\x83\x8e\x23\x88\xd3\xd2\x36\xce\xf6\x7a\x08\xf4\x36\x6c\x00\x40\xbf\x4e\x1d\x27\x05\x97\x38\x0c\x5f\x22\xce\x1f\x96\x2a\x4f\x58\x45\x74\xf9\x9c\xa5\x70\x85\x74\x2a\xbc\x4a\x13\x5d\x8b\xf0\x9e\x97\xc9\x08\x87\x87\xfa\xaf\xb6\x27\x7e\x0a\x0a\xc0\x1b\xd2\x10\x20\x4a\x65\x1e\x81\x05\x08\xc0\x5c\x6c\xbc\x51\x3c\x96\xcc\x41\x24\xd6\x46\xd4\xb1\x91\x73\x30\xcf\x39\x49\xac\x0f\xc2\xc8\xc5\xe4\x02\x51\x66\xab\x27\x67\xbc\x9b\x38\x4f\xce\x70\x22\x98\x87\x53\xac\x3b\x99\xe5\xfc\xe4\x67\x07\x47\x78\x88\x26\xcc\xb1\x09\x98\x48\x31\x71\x76\xb0\xd0\x88\xe4\x6f\x2c\x10\xf7\x4f\x4e\x1e\x58\xf1\x15\xdf\x9d\x62\x93\x14\x77\x08\x9e\x23\x4d\xca\xf6\xcc\x9b\xf0\x6f\x67\x92\xa8\x63\xcf\x1c\x57\x5b\x1c\x6c\x21\x43\xae\x12\x38\x47\x2f\xe1\x72\x68\x8d\x3e\x46\x01\x5c\xf6\x20\x1b\xf7\x66\xc3\xf9\x7c\x98\x24\xbd\xe7\x16\x08\x61\xc2\xe4\xeb\x7f\xa2\x84\x21\xda\xd0\xe4\x1f\x08\x9d\x0f\xad\xd1\x1b\x98\xb0\x71\x2f\x08\x82\xa0\x07\x99\xd9\x86\x7f\xe5\x55\x98\xa0\xa1\xf5\xcb\x2f\xbf\xf4\x5e\xbe\x2c\xbe\x4e\x1d\xc7\x01\x8b\x5a\x70\x0a\xbb\x4b\x82\xf5\xe5\xfe\xca\xb7\xc3\xd1\xd9\xd8\x49\xef\xaf\x92\xf4\x8b\x03\x02\x21\x7d\x25\xb6\x51\xda\x13\x01\xe6\x28\xb9\x82\x78\x70\xc4\xc6\xa3\xb3\xf1\x68\x30\xee\xeb\x3f\x8f\xc7\x7f\x2e\x30\x7b\x64\x0e\x4e\xf4\xc8\xa9\x03\x0a\x8b\x9c\xa6\x9c\xdf\xeb\x9a\xa3\xbe\xb9\x7e\xff\x77\x80\x1e\x3e\x7b\xbb\x90\xe9\x93\x93\xd7\x84\xa1\x29\x17\xc5\x9c\x67\x96\xf5\x00\x0d\xe5\x0b\x1b\x3d\xf5\x06\xc7\xc7\xcf\x90\xcb\xa2\xf7\x14\xf9\x38\xe1\x44\xf0\xd0\x19\xa2\xff\x3b\x10\x0f\x7f\xc2\x57\x28\xb0\x4f\x9c\x61\xb1\xc5\x89\xe3\x0c\x79\x57\xf4\xf0\xf0\x90\x7f\xe8\xc9\xb3\x07\x36\x3a\x1a\xa0\x87\x4e\x69\xa0\x07\xd6\xb9\x25\x5b\x3e\x91\x2d\x7f\x50\x2d\x9f\x54\x5b\xce\x55\xcb\x1f\x64\xcb\xc1\x89\x6a\xfa\x43\xb5\xe9\x54\x35\xcd\xda\x0c\x4e\x9c\x6c\xb6\xc7\xce\x03\x8b\x59\xba\x24\x6b\x6e\x33\x5a\x6c\x61\x3b\x13\x66\x95\x3e\xbf\xeb\xee\x4a\x8a\x86\xe9\xc9\xf1\xab\xff\x77\xfe\xe9\x7f\xea\xad\x59\x7f\xd1\xd5\xb4\xea\x62\x57\xb5\xf2\xa2\x21\x07\x94\x01\x6c\x51\xdb\x7e\x93\x1c\x26\xc6\xa0\xae\xd6\x47\x82\x5c\x5a\x69\x63\x38\xb7\x6e\x9c\x48\xa5\x69\x12\xe8\x8a\xad\x35\xb8\x3c\xec\x90\xae\x24\x83\xe8\x26\xd7\xf6\x32\xb9\xed\x4e\xe8\xb9\xa8\xf6\x70\x4b\x75\x9e\x73\x86\x15\xed\x53\x45\xe7\xc5\xb7\x8a\xce\xff\x19\x15\x9d\xfd\xf5\x1c\xf8\xe2\xd3\xd5\x3f\x3e\x7d\x88\x1a\x38\x30\xdf\x28\xdd\xfc\x07\xcc\xea\x28\xcd\xbe\x04\x59\x8a\x82\xa6\x24\x3b\x83\x92\x43\x55\xa1\x98\xcf\xd7\x74\x2b\xf8\xae\xbd\x5b\xc1\xfd\x95\x06\x3e\xdd\xe8\x4e\x30\x68\xe3\x4e\x60\xe0\xb2\xd9\xb3\xa0\xc1\xa5\x20\x2f\x30\x5b\xac\x3c\xf4\x70\x0c\x2c\xc3\x75\xac\xec\x53\xf0\xbd\x61\x76\x13\x5c\xf2\x53\x21\xd7\x4e\x5d\xbb\xb2\xdd\xfd\x4e\x7c\x0f\x8c\x64\x15\xd2\x33\xb8\xe9\xd8\x17\x75\x7c\x1a\x8d\x47\x83\x75\x96\xe0\x4d\xa9\x1b\xaa\xae\x74\xe6\xdf\x8f\x85\x8d\xa8\x2a\x00\x74\x8a\x02\xcc\x60\x0d\xcb\x42\x8b\x4e\x4a\x93\xf8\x65\x27\xc4\xa2\x4c\xa3\x3f\x29\x12\xa0\xf3\x3d\x6f\x69\xef\x38\x65\xa9\x6d\xac\x84\x1d\xac\xb5\x0c\x66\x36\x0f\xb5\xa0\x65\x7f\xd1\x5a\x8b\x5e\x8d\x65\x6c\xdd\xd0\xca\xc2\xdc\x62\xe8\x8d\x66\xa8\x41\x9b\xca\x84\xe5\x22\xde\x6f\xa3\x9e\x36\xee\x3e\xbf\x80\x38\xe4\x87\xce\xb6\x6e\x14\xeb\x7c\x1f\x6f\xc1\xa9\xe0\xa4\xb3\x53\xc1\x26\xf9\x4f\x5b\x88\x94\x15\x28\x2b\x5f\x6e\xa9\xd2\x58\x0d\x85\x76\x44\x9f\x35\x26\x23\x6d\x59\x7a\x23\xec\x87\x37\x13\x28\x73\xa9\xad\x50\x59\x27\xc8\x2b\xeb\x64\x65\x6e\x9a\x8b\xe9\xa8\x3a\x37\xe1\x96\x75\x6e\x22\xa5\xa3\x57\x58\x49\x54\x85\x19\xfd\x38\x87\x14\x60\x55\x5b\xc6\x60\xa3\x5c\x6e\xc2\x13\xbb\xb6\xd8\xa9\x99\xca\x5e\x33\x7e\x47\xea\x5d\xf8\x00\x9e\x36\x1a\xf1\x1f\x07\x9c\x8d\x28\xad\x7e\xde\x4b\x1e\x24\xd7\xd7\x96\x75\xc0\xe5\x0e\x96\xd5\x2c\xb0\x99\x97\xb1\x20\x89\x32\xe2\x7d\xb9\x6f\x26\xe1\x67\x68\x9e\xba\xf7\x57\x4c\xfc\xcf\x28\x17\x91\x7e\x39\x68\x98\xc2\x88\x8c\x53\xe3\x95\x9d\xff\x7d\x7d\x3d\x1a\x3b\x4a\x46\x3b\x06\x8f\x94\x35\x2b\x43\x8c\x77\xef\x38\x4d\x41\xe2\x2d\xec\xb0\x90\xaf\x59\x15\x60\xdb\x3e\x3d\x79\x25\x6f\x75\x8f\x6f\x8c\x34\x75\x00\x2e\x7f\xcc\x58\xa5\x1b\xa4\x2a\xaf\x7c\xf0\xde\x80\x7f\xad\x0e\x30\x75\x8a\x8a\xdc\xe5\x9b\x52\x4c\x37\xf6\xe6\x62\xb6\x91\x64\x3a\x34\x2f\x41\xc1\x5a\x5f\x5b\x1f\x04\xdb\xf8\xda\x0a\x96\xb4\x2b\xaa\x02\xf2\xaf\xf7\x6f\x9e\xfc\xed\xc7\x87\x0d\xaa\x82\x2c\x9d\x63\xb5\xfe\xde\xc6\x54\x80\x8f\x4c\xa6\x5a\x29\xce\xd8\xe1\x00\xaf\x77\xac\xa8\x15\x52\x16\x49\x3f\x63\xe8\xf5\xb2\x8a\x31\xc1\xbc\x9a\xe5\x86\x7a\x88\xdb\x94\x17\x06\x9d\x15\x10\x62\xfa\x6e\xe3\x44\xba\x27\x57\x68\x82\x35\xaf\xfd\xf1\x87\x41\xa9\x17\xa9\x2e\x7e\x49\x4b\x6b\x7a\xb9\xab\x4a\xa6\x8e\x1f\x6b\x80\xb7\xd6\xd7\xaf\x23\x72\x73\xb2\xee\x54\x0a\xf5\xf6\xd1\x76\x0b\x09\x2b\xdb\x96\x74\xac\x97\xc1\xba\x6d\x52\xe1\xf7\x44\x0b\x8e\x5d\x5b\x21\x84\x8f\x83\xc9\xd4\x40\x49\x2b\xa9\xb2\x59\x5e\xcb\x84\xab\x5c\x52\x13\xf1\x1f\x1c\xed\x37\x14\xb2\x16\x3b\x97\x2b\x52\x17\xd1\xfc\xa6\xb3\xfb\xa6\xb3\xfb\xa6\xb3\xfb\x9f\xdf\x7f\xfc\xe1\xd7\x9f\xdf\xff\xbd\x5e\x14\x52\xe9\x42\x85\x97\x56\x51\x37\x67\x66\x0b\xdd\x58\x72\xb6\x41\x6e\x3a\xae\xcb\x83\xf4\x1d\xbf\xbc\xdf\xb4\x4c\xfa\x20\xf7\x75\x7f\x02\x2c\x3e\xbf\x1f\xa3\xab\x6a\x54\xc4\x93\x2c\x51\x68\x2f\x2f\x60\xbc\x2c\x3f\x90\xfe\x29\xa5\x87\x33\x5d\x61\xdc\x38\x97\x1e\x01\x2b\xa6\x88\x23\x09\x3d\x4f\x62\xe4\xb3\x0f\x90\xe1\x48\x5c\x5f\x89\x61\x39\xca\x74\x90\xc7\x60\x64\x4d\x11\x7b\xed\x47\xe4\xbd\xca\xad\x5a\xa8\x46\xae\x9a\x0f\xd6\x37\x07\x66\x4a\x98\x35\x21\x11\x68\x52\x57\x6a\x38\x6f\x30\x87\xf4\x5c\x9d\x4e\x8f\x41\xd9\xac\xa4\xbe\xbe\xc0\xb2\x90\x76\x5f\xa8\x84\xfa\x41\x64\xa6\x50\x93\x87\x9f\xf9\x46\xe4\x5d\xc9\xb0\x6f\xf5\x4f\x7a\xfd\x93\xde\xe0\x71\x6f\xf0\x58\xbf\xa4\x68\xf2\xff\x2c\x60\x3d\x31\x7e\xff\xd3\xfc\x2d\x27\xf5\x0f\xe9\x21\x54\x7e\xac\x0b\xfa\xa8\xe7\xcd\x7e\xe8\x3e\xa6\xbe\x52\xbf\x3c\x02\x96\x7f\x65\x0e\xe5\x2f\x0b\xdf\x2f\x8c\x56\xaf\x84\x6a\xd2\x4c\x6d\x81\x40\x48\x69\x74\xd9\x80\x42\xfd\xae\x8c\xc4\x41\xaf\x3f\xe8\x0d\x4e\x7a\x83\x93\x12\x12\x1f\x97\x90\xf8\x78\x1b\x24\x3e\xe2\xa7\x3e\x46\x42\x51\x0c\x17\x2c\x92\xb1\xc4\x7d\xc5\x6a\x37\xf9\xfb\x47\xe1\x72\x9a\xf9\x42\x5b\x42\xef\xc0\xd9\xc0\x71\xef\xb8\x37\x38\xee\x3d\x16\xff\x7c\x0d\xec\x06\x88\x2c\x6b\xa9\xd3\x78\xf1\x8d\x38\xd7\xa3\xaf\x9e\x36\x0b\xaf\xfe\xa3\x49\xb3\x39\xb4\xe2\xa1\x79\xae\x9d\x54\x7f\x18\xec\xba\x7b\x54\xe1\x71\x4d\x8c\xec\x09\x18\x59\x46\x25\xe0\xf1\xcd\x33\x40\x67\x68\x83\xfc\xe8\x6b\x41\x34\x7a\x1a\xe2\x97\x41\x34\x8f\x81\x15\x58\x15\x53\xcf\x89\xb4\x3f\x30\x6d\x7f\x48\xa8\x6f\x19\xaf\xc4\x4f\x6d\x63\x78\xac\xc9\x41\xa5\x35\x28\x4c\xc3\x5a\xd0\xd0\xfe\x93\x05\x9a\x59\x80\x99\x70\xdf\x18\x0b\x91\xa0\xd3\x48\x82\xe4\xcb\x63\x95\x4b\x30\x83\xda\xc5\xd8\xf6\xca\xad\x6f\xcf\xfb\xbf\x16\x99\x4c\x70\xf3\xc5\x30\xce\xc6\x3b\x5d\x8d\x1a\x8d\xc1\x49\x47\x95\x81\x51\x10\xa3\x05\x4b\xf8\xfe\x76\x58\xc2\x77\xa5\x30\x76\x6d\x0f\xcb\xcb\x09\x8b\xa9\x56\x8c\xb0\x75\xb9\x3d\x06\xa5\x84\x3f\xcf\x39\xee\x51\x60\x8a\xa8\x35\xad\x7e\x86\xc9\xfb\x0c\xe1\x95\x18\xba\x5b\x89\x9a\xd5\x29\x54\xb2\xb8\x4f\x55\xc2\x20\xab\x50\x60\x54\x3a\x30\xf2\x68\xe4\x97\x96\x92\x5a\xad\x15\x18\xc0\x0a\xbf\xb3\x4a\x45\x02\x0a\x29\x95\x70\x50\x1f\x77\x6d\x6e\xcb\x81\xca\x3b\xa9\xd2\x20\x14\x1f\x96\x10\xcb\xfb\xe2\xa6\xbb\x81\x74\xd5\x92\x9a\x9c\xb2\xba\xf3\xd8\xb0\xd8\x0b\x2b\x7d\x51\x13\xdd\xce\xca\xb7\x45\x60\x98\x50\x21\x65\xbe\x5f\x13\x4c\x82\xfe\xd9\xd2\x34\xe6\xa9\xc8\x2f\x2a\xff\xec\x0b\x1d\x13\xe4\x7b\x9f\xdf\xd6\xfa\xfe\x82\x5e\x20\xad\x7a\x2a\x84\x84\xf1\x1f\xaa\x50\x4f\x93\xed\x70\x7a\xb3\xd4\x24\x45\xa5\x50\x6b\x93\x20\x26\xe2\x92\xae\xee\xc5\xb6\x15\x44\x73\xa3\x9e\xf9\x6d\xd9\x07\x8b\x44\x50\xb1\x13\xf2\x8f\x66\x16\xc2\x29\x62\x3d\x4e\x70\xb9\xe5\x4a\xd5\x00\x9e\xbb\xe2\x71\xd6\xaa\x70\x8d\x34\x8a\xc4\xe7\x26\x3b\xc9\x2e\x80\x69\x16\xe4\xb2\x1e\x20\xed\x0b\x1a\x0b\x9c\xf6\x64\x00\x8a\xaa\x5e\x5c\x00\xc6\x23\x22\xae\x88\x78\x4f\x57\xba\x52\x73\x0c\x69\x82\x7e\x0a\x23\xc8\x6c\x51\xe2\x59\x38\xf9\xbf\x11\x0a\x01\xdb\xe1\xb8\x15\x4f\xdf\x73\xf9\xed\x39\x53\xcf\x7f\x81\x6c\xe6\xfa\x08\x87\xb6\xfb\xe4\xc9\x93\xff\x43\x1d\x5d\x22\x7e\x85\x83\x21\x71\x71\x00\xae\x86\xa2\x8d\x08\x8c\xb0\xa1\x7b\xd5\x47\xee\x95\x03\x96\xc5\xa7\xcb\x3e\x73\x97\x4e\x9a\x3a\x75\x46\xc5\xd2\x22\xdc\xbc\xf6\x71\xc5\x92\x28\xd6\xf1\xe6\xe5\x8e\x4b\xa3\x56\x34\x06\xdd\x0d\x87\x95\x21\xee\xdc\x7a\x48\x31\xee\xe3\x09\xe7\x3e\x7d\x91\xee\x6a\x16\x85\x22\xb5\xa4\xa9\xab\x15\xad\x5a\x75\xbb\x83\x7a\x3f\x52\x8b\x9d\x6d\xe4\x4e\x1a\xe9\x25\x46\x61\xa0\x23\x91\x0d\x80\xf2\x08\xe5\xa4\xa1\xf9\xcd\x01\x69\xec\x90\xdd\x0c\x56\x45\x62\x9b\x22\x56\x63\x0d\xcf\x00\xe7\x9b\xa5\x01\x5e\x9d\x0c\x2c\x39\x82\x71\x1c\x62\x9d\x7e\xca\x84\x38\x6f\xbe\x60\x38\x4c\x8e\x68\xb4\x60\x98\x4c\x8f\x18\x85\x44\xd2\x9a\x72\x9b\x59\xaf\x82\x07\x11\x58\x14\x7c\xfd\xf7\x47\x0d\x1f\x7c\x53\xc3\xff\xbb\xab\xe1\xb9\x0c\x31\xcf\x65\x88\xb2\xc8\xc0\x69\x1e\x51\xcb\x69\x94\x29\x12\x16\x51\x64\x48\x15\xe5\xf7\x13\x84\x82\x33\xe8\x9f\x73\xae\x5c\x12\x3c\x92\x92\xe0\xa1\x03\xd5\xf5\xd6\xdc\x20\x7f\xf8\x4a\xc0\x50\x53\xd4\x32\x46\xf6\x5c\xce\x0c\x44\xa5\xc7\xd9\x84\xc0\x42\x09\x25\x14\xc1\x05\x9b\x45\x14\xff\x8e\xb2\x18\x76\xdd\xca\x45\x57\xc8\x5f\x30\x64\xdb\x8e\xf7\x54\x85\xb7\xf3\x71\x5d\x4c\x2e\x60\x88\x85\xab\x93\x93\xd5\x57\x5b\xa5\x07\x78\xa2\x62\x78\xb5\xcc\xc2\x94\x33\x11\x7f\x53\x8c\x37\x93\x5e\x4c\xb9\x6c\x23\xe1\x9f\x22\x66\x33\x60\x88\xe1\xce\xf5\xb5\xd1\xdc\xe5\x2f\x0e\x50\x71\x0c\xf1\xf0\xf0\xd0\x26\xea\xb7\x67\x59\x0f\x90\x93\xa6\x5a\x6a\xc9\x46\x7e\x77\x49\x10\x95\x52\x16\x80\x72\x04\x89\x3e\xd7\x5f\x50\x8a\x08\xfb\xc0\x7f\x89\xe2\xbe\x20\xf4\xa8\x1b\x46\xd1\xf9\x22\x56\x64\x30\xb4\x1e\x40\x2d\xba\xf4\xca\xef\x4c\x2e\xca\xb7\xda\x84\xa2\x64\x66\x3b\xfc\x20\x9e\xe3\x04\xb9\x3e\x64\x05\xe6\xe0\xac\x52\xc7\x71\xd9\x0c\x11\x1b\x79\x4f\xa1\x86\xa7\x66\x36\x1c\xb6\xeb\xeb\x0c\x75\x1a\xc6\x67\xa1\x9b\x33\xe2\x8f\x11\x27\x8a\x62\x88\x5a\xd3\x78\x82\xf9\x3a\x43\xe4\xa4\x00\xb9\x42\x84\xa8\x8d\xa3\x4b\x1d\xb0\x12\xb2\x16\xf6\x02\x3b\x31\x05\x0e\x4d\x70\x37\x17\xb2\xa2\xf2\xd0\x8a\x66\x6f\x41\xcc\x2a\x8f\x9c\x93\x3d\x17\xb0\x6e\x36\x78\x19\x1f\xf9\xfe\xb1\xc0\x28\xdc\x2c\xbe\x35\xf6\x76\x40\x62\x4a\x6e\x89\x29\xb9\xcd\x37\x9f\xe4\x81\x7f\x04\xfd\x90\x5f\xc0\x43\xec\x63\x94\x1c\x69\x23\x60\xfd\xa9\xbe\xb6\xab\xc8\x32\x7c\x17\xa5\x18\x05\xcb\x23\xeb\xf3\x49\x36\x4a\x69\x9b\x26\xdc\xec\xbb\xc6\x4f\x6f\x71\x94\x1f\xdc\xce\x99\x01\x3d\x9b\x35\xb1\xfc\x88\xf2\x7b\x26\xe9\xce\xde\xf5\x24\x21\x08\x0f\x4c\x56\x2f\x2f\x79\x80\x78\xd6\xd9\x02\x4b\x59\x3b\x94\x8f\x6c\xe8\x71\x01\xa0\x1e\x26\x3e\x94\x29\x47\xc1\x46\x39\x0a\x36\xc8\x51\xb0\x2c\x47\xc1\xc2\x89\x0f\xab\x27\x7e\x68\xc8\x51\xfc\xa5\xad\x0e\x2d\xd1\xb2\x14\x7e\x2c\x4f\x9a\x88\xce\x25\xef\x53\xb0\x89\x27\xb6\x25\x16\x76\x69\x39\x69\x82\x98\x82\x08\xa3\xc4\xd6\x87\xa0\x5b\x7c\x6c\x0a\x63\x28\x17\x75\x54\xf4\x6a\x72\x89\x39\xf7\x65\xce\xca\x87\x09\x92\x76\xf3\x21\x1a\xb1\xb1\x97\x4d\x81\x8f\xf7\x12\x32\x68\xf3\xc7\x22\xfd\x88\xf8\xc5\x4f\x47\xc5\x0f\x01\x72\x38\x3b\xe4\xb2\x55\xbe\x7d\x13\x63\x49\xb0\x37\x62\x63\x10\x79\x37\x61\x2e\xc0\xf7\x56\x29\x30\xa1\x89\x1a\x44\x4b\x9f\x8b\x96\x91\x12\x2d\xfd\xa2\x68\xe9\x17\x16\xba\x2c\x5a\xfa\x8d\xa2\xa5\x7f\x7d\xed\x97\x45\x4b\xbf\x28\x5a\xfa\x1e\x6e\x23\x5a\x0a\x6e\xa1\xaf\x23\x36\xbf\x07\x20\xe7\xfa\x9a\x1f\x2a\xbe\x03\x16\x86\x68\xe9\x97\x04\x3f\x5f\x89\x96\x85\xe7\xcf\xfc\x2a\xa1\x2d\x32\xd1\xd2\x5f\x2f\x5a\x96\xbf\x50\xbf\x57\xf8\x14\x7d\x0e\x9e\x14\x2d\xa9\xe7\x03\x22\xdd\xa1\xb2\x4b\x0c\xf0\x0d\x76\x0c\xdb\xb3\x28\x1a\x85\x5b\xf1\x62\xd9\x6f\x5f\x18\xb1\x31\xdb\x6f\x5c\xf8\xdf\x86\x0b\xf3\x55\xfd\xc6\x83\xbf\xf1\xe0\x7d\xe7\xc1\x2c\x3a\x47\x64\x1b\x26\xac\x3a\xee\x0b\x17\x36\xa7\x7b\x97\x81\x1c\x82\x47\x7a\x65\x66\x9a\xe7\xd6\x8b\xe6\xc3\x75\x36\x18\xb5\x5f\x1b\xda\x28\xd6\x8d\x93\x53\x3f\x8a\x51\x30\xbc\x37\x10\x9b\xb4\x5d\x4e\x9b\xb5\xec\x4c\xa0\xc7\x72\x52\x50\xe0\x5c\xd5\x14\x7e\x6a\xe4\xaf\xc5\xd1\xf2\xc4\x83\x95\x9c\x82\x9c\xcc\xb4\x7a\x25\xb3\x15\x91\x88\xce\xc5\x5e\x7a\x75\x81\x08\x13\x8d\x00\xcd\xbf\x7a\xc0\xe8\x72\x45\xdd\x19\x24\x41\xa8\x9a\x10\x27\x95\x1a\x08\xc8\x21\xa4\xd1\x65\x8f\xb8\x32\x1f\xaf\x54\x76\xc0\x34\x4d\x53\xf3\xba\xc9\xea\x69\x4e\x58\xf1\x61\x00\x63\x56\x56\xf8\xff\x05\xf1\xb5\x14\x89\x45\x8f\x02\x74\xb6\x98\xee\x93\x3e\x3c\x40\x7e\x44\x21\x8b\xf8\x4e\x2a\x04\x90\x1b\x00\x5e\xc2\xe5\x04\xd2\x5b\x32\x58\xcc\xf9\x62\x78\x0d\x4e\xc1\xc4\x2b\x6a\x72\xcc\x75\x41\xde\x53\x9b\x09\x85\xb4\xf7\xd4\x26\xae\x98\x82\x39\x1d\xe2\x64\xb6\x3a\x92\xa9\xa8\xd4\xce\x1a\x72\x8e\x01\x31\x41\xd4\x72\xa4\x9e\x2d\x53\x67\x31\xef\x29\x94\x5c\xdf\x85\x71\x1c\x2e\x6d\x0a\x46\x08\xb0\xb1\xc0\x17\xe4\x13\x50\x33\xf6\x9e\x12\xf9\xa7\x8d\x36\xe3\x92\x22\x61\xe8\xb9\x1b\x4e\x84\x5c\x7e\x4c\xfc\x5d\x9c\x54\xc8\x55\x9f\x2a\x07\x9a\xa9\xbd\x6a\x13\x8d\xb2\x55\x89\x44\x34\xc6\x21\x47\x88\x82\x5d\xc8\x74\x39\x4b\xd1\x38\x22\x9e\xe7\xa1\x67\x6c\x48\x04\xfb\xa8\xa1\x33\xc8\xb7\x7b\xfd\x18\x72\x73\xe9\x49\xb2\x03\x73\xf2\x35\xda\x37\x26\x93\x4a\x21\x27\xd5\xb6\xac\xcd\x36\x2c\x51\x19\xa4\xf1\x60\x9b\xe0\x29\x6f\x81\x69\x44\xe6\xd2\x49\xaf\x6c\xde\x99\x22\xd6\x37\x5b\x54\x6a\x60\x6c\xb5\x5a\x88\x5c\x14\xd7\x84\x72\xe2\x26\x86\x9a\x52\xff\x09\x64\xc2\x59\xa0\x4d\xd7\x1c\x61\xbc\x37\xad\x07\x57\xe6\xe8\x3c\x8a\x29\x0a\xb0\x0f\x19\x4a\x8e\xe0\x82\xcd\xfa\x73\xc4\x66\x51\x70\xa7\x67\x5f\xfe\x60\x75\x8e\x49\x30\x5c\x9d\x2f\xce\x10\x25\x88\xa1\x64\xa8\xe8\x0d\xb9\x1f\x97\x31\xf2\x3c\x8f\x81\x5f\x2f\x59\xcd\xd3\x08\x07\x7e\xf5\x71\x0a\x24\xe3\x19\xae\xc2\xc8\x87\xa1\xd1\x80\x9f\x5b\x6f\xf8\x33\xcc\x96\x62\x80\x69\x18\x9d\xad\x6d\xc1\xf9\x79\x3b\xbc\xcd\x10\x0c\xd9\xac\xef\xcf\x90\x50\x8f\x7e\x15\xc4\xc9\xe0\xa3\xe1\x2a\x86\x49\x82\xc9\x34\x87\xe3\x54\xbc\x10\x20\xaa\x32\xc8\xb5\xef\x7c\x8a\x19\x2e\xa0\x28\x7f\x99\x02\xb9\x2c\x9a\xeb\x65\x4d\xfe\x86\x49\x20\x7a\x93\x28\xa8\x79\x9c\x02\x81\x02\xd1\x71\x52\xb3\x66\x52\x7f\x5b\xf3\x62\xc6\x58\x5c\xf3\x98\xf9\xb5\x4f\x59\x58\xf3\x34\x88\xfc\x73\x44\x6b\x5e\x4c\x69\x5c\x43\x28\x00\x86\x18\xd6\x50\x5b\xfb\x45\xc7\xb9\x33\xd5\xd7\x59\x71\xe8\xfb\x28\x49\x86\x2b\xe1\x22\x98\xcf\x5c\xd6\x70\x93\x38\x40\x64\x59\xfb\xc2\x82\x71\xdc\x87\x97\x90\x22\x6b\x88\xbc\xa7\xd9\xad\x42\x37\x6a\x0f\xf5\xf9\xc5\xd7\xe5\x0c\x13\xe1\xe2\x30\x14\x09\x74\x71\xf2\x93\xf8\x05\x44\xf6\x56\xef\xe9\xbd\xfc\x51\x7b\x00\x38\xe5\xfe\x5b\xec\x51\x91\x01\xb0\x0d\xc4\x4a\x0f\x5c\x38\xd9\xe6\x04\xcd\x23\x82\x13\x76\x94\xa0\x3b\xb9\x96\xc9\x43\x57\x2d\xa2\x25\x79\x6d\x7f\x0e\x09\x9c\xca\xda\x6e\x7a\x45\xff\x2a\xde\xfc\x92\xbd\x00\x09\x83\x24\x80\x34\xc8\x16\xb8\xdc\x22\x05\x41\xe6\xeb\x39\x14\xf2\x5a\x81\xa0\x73\x47\xd0\xe4\xfa\x3a\xcf\x7c\x2e\x72\x65\x26\xb2\xa4\xd5\x29\xfe\x1d\xd9\x04\x10\x74\xd9\x3b\x45\xcc\x2e\xf4\x71\x9c\xa7\xc7\xe9\x66\x51\xa1\x8a\x65\x5d\xc7\x19\x13\x0e\x41\x59\xf4\xfd\x5a\xf8\xbe\x4b\x8a\x53\x59\xde\x91\xf7\x54\x62\xfa\x54\x42\xfc\x82\xb3\xfc\x44\x25\xd0\xc8\xce\x5f\xb5\x30\xc2\x54\xdd\x6e\x11\x5e\x5d\x31\x44\x09\x0c\x4f\xc5\x00\x32\x35\x86\x73\x93\xa5\xf8\x43\x29\xbe\x1c\xf1\x5f\x73\x86\x5a\x0c\xd1\x39\x26\x90\x61\x32\x5d\xdb\x6e\x8e\x92\xd9\xba\x06\xfa\x98\x96\x3b\x86\x3f\x06\x16\x26\x7d\xde\x4d\xed\xb3\xd7\xe4\x17\x94\xcc\xa4\x57\xaa\xf9\xe6\x9e\x7e\x95\x82\x46\xca\xe1\xaf\xd7\x51\x4f\xe9\x7d\x95\x82\x4a\x0d\x4a\x54\xc4\xdf\x4a\x12\x12\x9e\x90\x29\xd0\x1b\x68\xb8\x92\x25\xd1\x11\x45\x81\x86\x42\xbe\x79\x11\x2d\x08\x7b\x7a\x2c\xc1\xc9\x1b\x59\xf9\xa0\x85\x96\xb7\x4d\x93\xd7\xd7\x24\xcf\x82\x8e\xdc\xf7\x3a\x15\xd9\x76\xc4\x2a\x15\x2a\x5f\xf5\x4c\xed\xc2\x8e\x95\x94\x2c\x69\x45\x48\xc7\x40\x4a\xd6\xa2\x83\x78\xd0\x78\xf6\x86\x30\x99\x1d\x45\x62\xfe\xc5\xbd\x28\x15\x1d\x7e\x88\xfb\xb2\x4d\xa1\xe5\x1e\x29\x3d\x26\x11\x9d\xcb\x54\x3c\x5f\x65\xf5\x18\x9e\xa3\xe1\x6a\x36\x9b\xcf\xb9\x18\x38\x8b\x16\x74\x68\x09\x38\xb0\x6f\x81\x39\x26\xc2\xc3\x26\x7b\x90\x20\x3f\x22\x41\xfe\x20\x15\x07\xe7\xcd\x06\x20\x22\x79\xf0\x70\xe5\x47\xf3\x18\xfa\x6c\xb8\x22\x11\x13\x1e\x3b\x43\x4b\x3d\xb2\x52\xf0\xea\xd3\x87\xe1\x4a\x24\x8a\x1e\x5a\xd2\x6d\x86\x4b\x1f\xfa\xaf\xa1\xf5\xea\xd3\x07\xf1\x35\x3c\x5f\xcc\x7f\xa2\x52\x71\xf7\x12\x4f\x31\x4b\x86\x27\x60\x0e\xaf\xea\x9e\xa7\xe0\xd3\xe9\xcb\xb5\xa3\x7e\x3a\x7d\xd9\x7d\xd4\x46\xd2\x8d\xe8\xbc\x41\xc2\x37\xaf\xfd\xca\x81\x0b\x47\xa4\xd0\xb8\xa2\x18\xe0\xc3\x1d\x69\x0b\xcb\xed\x68\x05\x34\x51\x98\x8a\x2b\xcf\xb2\x00\xcc\x59\x1b\x08\xbd\xdc\x3b\x31\xb4\x09\x58\xa5\x8e\x9b\x20\xf6\x77\x39\xeb\x88\x26\x36\x74\xd2\x06\xa5\xc2\x1a\x8a\x2f\x5f\x02\x9a\x30\xc2\x5b\xfd\xdb\xa3\xa2\x4e\xb8\xae\x47\x87\x6e\xf9\xc7\xa1\x44\xcf\x60\x2d\x62\x0c\x59\x78\xb8\x62\xcb\x18\x0d\x2d\x19\x8a\x92\xde\x16\xca\x84\x45\xb4\x05\xc2\x64\xbb\x3f\x0e\x5d\xf2\xfb\x5d\xa9\xc8\x85\x41\x60\xa3\x92\x0b\xce\x76\x88\xaa\x88\x06\x4d\x98\x52\x0d\xf7\x69\xb3\xd5\xa3\xa9\xf0\x54\x5a\xce\xbb\xa2\x6e\x86\xc2\x18\xd1\xe4\xa8\xaf\xea\xa5\xd4\x49\x1e\xea\x55\x5f\xb6\xad\x76\xd9\x23\x11\x24\x9b\xfb\x0c\x26\xaa\x18\xb6\x08\x6b\x4b\xea\xe0\x36\x4a\x66\x27\xfd\x38\x0a\x97\x13\x1c\x86\x6b\x86\xd8\x6b\x3c\xdc\x04\x01\x7b\x09\xf9\x9a\x9a\xe8\x9d\x31\xd1\x3c\xd6\x3e\x62\xe6\xd6\xd0\xf2\xef\x83\x13\x78\x56\xcb\x21\xe6\x90\xcd\xfa\xba\x8d\xd9\x76\x27\x41\x6c\x1e\x53\x80\xd7\x72\x3c\x78\x96\x6c\x46\x97\x1f\x75\xc0\x17\x6f\xbc\x6f\x08\x13\x00\xb6\xc5\x98\x1f\xb5\x43\xd9\xac\x13\xce\x66\xfb\x88\xb4\x59\x27\xac\xcd\x36\xa3\x2d\x08\xda\x23\x4d\x24\x0b\xdf\x2f\x94\x71\xf0\xda\x22\x2c\x08\x36\xa3\x8b\xd4\xa2\x8b\xd1\x45\x1d\xbe\xc8\xfe\xe1\x8b\x74\xc0\x17\x69\x81\xaf\x38\xee\x5f\x20\x9a\xac\xd1\x6a\xd4\xfa\x3a\xe4\x2a\x3b\x63\x04\x1d\xd6\x8a\xa6\xe8\x2a\xae\xbb\x60\x64\x71\xa0\xd4\x46\x80\x7a\xab\x54\xbb\x8b\x18\xd7\x05\xf7\xf9\xfb\xf7\xae\x1a\x50\xb8\x24\x87\x1e\xd5\xbf\xdf\x91\x70\x79\x7d\x4d\xdd\x19\x0e\xd0\xe9\x0c\x82\xc4\xa3\x6e\x32\x83\xe6\xe3\xbf\xcb\x96\x00\x0b\x9f\x47\xed\x69\x12\x1e\x1e\xda\xbc\x69\x74\xf9\x4a\x38\xd4\xa1\xe0\xf0\xd0\xc6\x1e\x54\x9e\x37\x44\x7f\x40\xbf\xfd\x80\xa6\xaf\xae\x62\xc7\x01\xf8\xfa\xba\xae\x9d\x7e\xef\x80\xa4\x34\x50\x32\x83\x79\xe7\x67\x78\x74\x3c\x1e\xc2\x6d\xa2\x2a\x61\x1c\x2b\x50\x3c\x5a\x6f\x5c\xd0\x01\x92\x3f\x8b\xa5\x74\xe5\x8a\xda\xd4\xd9\xec\xcf\x69\x2c\x3e\xaa\xdf\x2f\x22\x1e\x5b\x24\x12\xa9\x6e\x1a\xd9\x69\xdf\xf6\x8d\x02\xb5\xed\xd6\x11\xcd\x37\xef\x9e\x04\xd7\x8a\x8d\xf5\xdc\x99\x37\xde\x37\xb4\x09\x00\xdb\x22\x2d\xc1\xa4\x15\xca\x3a\x88\x01\xa2\xf5\x1e\x22\xad\x83\x18\xc0\x5b\xb7\x40\x5b\x82\xa7\xb5\xb4\x26\xdf\x94\x75\x17\xaa\xfd\xde\x61\x4e\x42\xd9\x1a\x75\xbc\xf9\x66\xdc\x31\xd8\x61\x97\x32\xb8\x7f\x68\x13\x00\xb6\x45\x1a\x83\xed\x50\x76\xd2\x09\x67\x27\xfb\x88\xb4\x93\x4e\x58\x3b\x69\x85\xb6\x0e\xcc\x4d\xb4\xde\x43\xb4\x75\x60\x6e\xbc\x75\x0b\xb4\x45\x67\xeb\x33\xa5\x88\x16\x77\xe6\xa4\x51\x27\x47\xe5\x9f\x1a\x21\xcf\xb2\xc6\x1a\xa8\xa2\x23\xb9\x70\xd9\x2e\x99\xf9\x6b\x9c\xb0\x34\xa0\xcd\x0a\x59\x33\x19\x4e\x6d\xeb\x9d\x24\x93\xf5\xcb\xea\x43\x7f\x86\x82\xfe\x3c\x0a\x50\x78\xb7\x45\x50\x44\xcc\x0f\x2b\x85\x24\xca\xf5\x14\xb6\xe9\x05\x43\xb6\xf0\xbe\xe7\x97\x10\x05\x47\x5d\x0a\x8b\x8a\x7f\x3f\x45\x22\xc7\x5e\x44\x97\x47\xd6\x03\xe4\xb8\x12\x24\x9b\x39\x69\xba\x31\xb2\x23\x47\xc3\x1c\x85\x32\x95\x41\xad\xcf\x43\xc2\x28\x26\xd3\x0a\x77\xc8\xba\xed\xe4\xca\x37\x8f\x99\x83\xdb\x72\x50\xdd\xa1\x05\x3d\xd5\x1e\xe3\x3e\x24\x85\x26\x3b\x89\xaf\x8d\x90\xf9\x28\xec\xc3\x30\xac\xbf\x8c\x11\xed\xd7\x50\xd7\x63\x3f\xe1\x25\xe5\x74\x60\xb5\x8b\x49\xf6\x2b\x0b\x58\x3e\xf3\x18\x33\xb8\xd5\xa6\xcf\x3a\xee\x24\xd8\xeb\xb6\x7d\x0e\x72\xeb\x8d\xaf\xbb\x6c\x46\xe8\x19\xad\x25\x97\x5a\xb9\x4a\x34\xde\x37\xf4\x09\x00\xdb\x22\xee\x8c\xb6\xa0\x41\x84\x6b\xb9\x49\x3d\xca\x78\xe3\x7d\x43\x99\x00\xb0\x2d\xca\x10\x0e\x37\xa3\x4c\xc4\x8a\x26\x88\xf5\xa7\xa8\x9e\x3b\xe9\x06\x0d\x5d\x76\x12\x83\x6d\x61\x4e\xba\xc3\x7c\x3b\xae\xd3\x5f\x97\x6a\xf4\xe4\x4f\x51\x87\x0d\x67\x74\x6a\x8f\xd1\xb5\xd8\xec\x9b\x0e\x3b\xd5\xae\xfb\x8a\xd5\xee\x28\x6d\x81\xcf\x05\xa9\xf5\xde\x58\xa3\xa4\x96\x7d\xf6\x0e\x89\x02\xd0\xd6\x08\x5c\x90\xf3\xcd\xc8\xe3\x57\x23\x3c\x59\x76\x95\x43\x74\xb7\x7d\x43\x61\x06\x6e\x5b\x2c\xaa\x0e\x2d\x10\xf9\xfb\xc3\xf6\x1a\x31\xd9\x7a\xef\x90\x27\x40\x6c\x8d\xb9\xdf\x1f\x6e\xd6\x88\xf9\x51\x18\xc2\x38\xc1\x7c\x93\x92\x88\x61\x1f\xad\x73\x8f\xcf\xec\x83\xcc\x4c\x9c\xe8\xca\x28\x09\xfb\xc7\x28\x0a\x11\x24\x8e\x8a\x2d\x7a\x7a\xb2\x8d\x5d\xcd\x98\xd0\x5b\x39\x1f\x8f\x75\xd1\x0b\xb1\x16\xe5\xf8\x4c\xe0\x65\x24\x49\x93\x76\x4b\xe8\x46\x8c\x08\xa5\xc6\x57\x79\x1c\xd9\xed\xfa\x6d\x96\x22\xc9\xb3\x10\x5f\xe6\xbe\xc8\x26\x9f\x95\xd0\xcf\x27\x31\x24\xc6\xfb\x54\x29\x60\xe0\x2a\x95\x7f\x84\x2d\x35\x31\x22\xb5\xa9\x5a\xcc\xe3\x3c\xbd\x69\x9e\xb6\x14\x01\x6b\x82\x69\xc2\x24\x80\x96\xe3\x7e\x16\xe1\x39\x04\x86\xbf\x70\xec\xb8\x02\x47\x22\x7f\xa9\xce\x28\x80\x2e\xed\x63\x40\x47\x6c\x2c\x74\x73\xf9\xd3\x1e\x34\x35\x36\xe1\xa6\x75\x93\xb1\x0b\x1d\xcf\x1c\xd5\x6b\x27\x77\xfd\x66\x80\x17\xe5\x34\x3e\xad\x00\x5e\xb0\xfd\xbb\xa9\x6a\x60\xdb\x32\x3a\xd9\xbe\x05\x12\x45\x2e\x90\x5a\xbf\xb0\xb5\x58\x54\xdd\xf6\x0e\x8d\x1a\xdc\xd6\x78\x94\x1d\x5a\x20\xb2\xbd\x6f\xdd\x1e\xba\xd6\x75\xf1\xac\x6b\xe3\x58\xd7\xc9\xaf\x6e\x1f\xdd\xea\x3a\x79\xd5\xb5\x72\xaa\x0b\x60\x32\x43\xb4\xbb\x7a\x2e\xef\xb7\x67\x28\x34\x00\x6e\x3b\xaa\xee\xb1\x19\x99\xc8\xef\xc8\xf2\x78\x8f\x7d\x43\x20\x07\xb2\xf5\x78\xfe\x66\xa4\x19\xf5\x7e\xaa\xb8\xa3\x88\x04\x88\x56\xf1\x96\x77\xda\x49\xf4\x6d\x06\x59\x57\x35\xea\x04\xb2\xea\xb4\x97\x20\x5f\xb4\xe6\xcc\xbc\xed\x4e\x82\xb8\x66\x4c\x0e\x5e\xdb\xf1\xf0\xc5\x66\x74\xa9\x44\x55\x7d\xc8\x18\x4d\x9a\xf2\x35\xcc\x17\x21\xc3\xfd\x39\xac\x78\x98\x1a\x85\x52\x6e\x21\x1b\xae\xbc\x8d\x84\x1e\xbf\x3c\xfc\x02\x63\x90\x88\xbf\xfe\x81\xe0\xf9\x2f\x30\x16\x8e\xa9\xb8\xb9\xca\x45\x5f\x83\x22\x0a\x5d\xd4\x25\xcc\xcd\xee\x44\x4d\xc9\x72\x69\x63\xb2\xdc\x6c\xec\x2c\x5b\x2e\xf5\x60\xeb\x6c\xb9\xb4\x31\x5b\x2e\x6d\xc8\x96\x4b\xcb\xd9\x72\x69\x21\x8d\x29\x5d\x9f\x2d\x57\xdf\xfa\xc4\x02\xc9\x7a\x17\x4b\xe2\xcf\x68\x44\xf0\xef\xc8\x56\x19\x18\x55\x6d\x2d\xfd\xc7\x2b\x19\x78\x07\x98\x93\x5e\xe2\x30\x7c\x89\x12\x46\xa3\xa5\xdd\xb5\xbf\x03\x12\x37\x40\x21\x62\x48\xd5\x01\x33\x7b\x16\x32\xfb\x25\x32\x7b\x1f\x6f\x94\xd5\xa3\xc8\x10\x8a\x08\xa3\x18\x15\x6b\xd2\xc8\x5c\x7e\xde\xd3\x15\x27\x04\xe2\x85\xf2\xba\xea\x1c\xe4\x55\x25\x0e\x0f\x47\xae\xeb\xea\xdc\x11\xcc\x4d\xe2\x10\x33\xdb\xea\x59\x8e\x33\x16\x55\xc0\x44\xe6\x3f\x8a\xe6\xd1\x85\x40\x0e\xff\xb6\x93\x3a\x80\x1c\x1e\xda\x89\x9b\xa8\xe9\x00\xe2\x00\x3e\x4e\x69\x2a\xc4\x19\x17\xe6\x42\xb2\xb9\xd0\xf2\x5c\x3c\xcf\xa3\x87\x87\x36\x15\xe4\x9b\xed\x6b\xfb\x14\x31\x07\x84\xe2\x3b\x08\x50\x47\x7e\x45\xcf\x96\xd4\xce\x76\x25\xc6\x72\xfd\x68\x41\xf8\xf8\x87\x87\x54\x75\x57\xd9\x65\xd5\x2f\x89\x6a\xb1\xd5\xf9\x98\x61\x36\xe9\xc2\x9c\x59\x61\xce\x16\xdf\xf1\xd6\x81\xd4\xdf\x59\x9e\xe7\xb1\x67\xd4\x63\x43\xe6\x8a\xba\x9b\xc9\x3f\x30\x9b\xd9\xb2\xe0\xa5\xe5\x08\x60\xc4\x0f\x4b\xcd\x5a\xe6\x13\x35\x86\x87\xde\xd3\x15\x9e\xd8\x03\xcf\xf3\x88\x9a\x2f\x74\x1c\x9d\x5f\x94\xaa\xfc\xa2\xf2\x63\x43\x24\x95\x80\x6f\x70\xc2\xf4\x72\x40\x27\x25\x9a\x72\xa0\x03\x8e\xc5\x38\x09\xfe\x1d\x1d\x1e\x86\x19\x45\x39\x29\x0a\x13\xd4\xdb\x3c\x28\x0c\x02\x3e\x22\x47\x09\x08\xd3\x14\x44\x1e\x35\x92\x2d\x2f\xcc\x0d\xed\x7b\x23\x32\x06\xc1\xcd\xb2\x2d\xc7\xe5\x6c\xcb\x41\x43\xb6\xe5\x78\x84\xc6\x5e\xa0\xb2\x2d\xc7\xc5\x6c\xcb\xe6\x4f\x10\x97\xb3\x2d\xc7\x8d\xd9\x96\xe3\xeb\xeb\xb8\x9c\x6d\x39\x2e\x66\x5b\x8e\x3d\xbf\x7b\xb6\xe5\x08\x2c\xb2\x6c\xcb\xb1\x03\xe6\x46\xb6\xe5\xb8\x94\x0b\x39\x56\xd9\x96\x0b\xcf\x9f\xc5\x55\x36\x35\xcf\xb2\x2d\xc7\xeb\xb3\x2d\x97\xbf\x50\xcf\x69\xf9\x14\x63\x0e\x9e\xdc\x0f\xd0\x8b\x01\x95\xd9\x96\x45\x9e\x65\x10\x80\x39\x88\x0d\xed\x21\xde\x74\x1a\xce\xfb\x79\x85\xcf\x3f\xde\x7d\x6a\x0c\x56\x13\x1a\xcd\x87\x0c\x44\x93\x49\x82\xd8\x90\x78\xf7\x06\x69\x5e\xef\x4a\xee\x39\x4b\xcf\xcd\xf2\x3c\x4e\xdf\xd1\xa4\x87\x1c\xb1\xcb\x21\x08\x0f\xf0\xc4\x26\x4e\xe8\x65\xf5\x73\x3e\x8a\x8c\xb9\x00\x7a\xab\x4b\x1c\xb0\xd9\x30\x74\xe5\xd8\xa2\x42\x36\x08\xd1\x84\x65\x8f\xde\xa0\x09\x03\x33\x51\x22\x3b\x7b\x26\x2b\x66\x03\x16\xc5\xd9\xa3\x8f\x51\x9c\x1e\x88\x8d\x89\x27\x36\xff\x12\xd3\x9f\x10\x7c\xf1\xc7\x68\x41\x02\x4c\xa6\x2f\x42\x8c\x08\xfb\x80\x7c\x66\xeb\x75\xbe\xe7\x79\xcc\xa8\x0b\xd9\xd4\xfa\x00\xba\x57\x9e\x2a\xa9\x08\xa0\xbb\xf4\xa0\xbb\xec\x23\x77\x99\x65\x20\x16\x7b\xbd\x83\x7f\x58\x40\xa3\xb8\xeb\x05\x8a\x77\xd9\x49\x61\x71\xbd\xff\x63\xb0\xa0\xc2\xe2\xd9\xe7\x84\xb4\x1b\x55\x0d\x18\x9a\xc7\x11\x85\x61\x63\x65\x83\x8d\x82\x5a\x73\x55\x83\x6c\xec\xbd\x28\x6b\x60\xee\x74\x56\x2c\xa7\xaa\x01\x71\xf5\x02\xfe\x44\xa3\xb9\x8d\x6a\x2b\x07\xe4\x40\x7f\x2b\x1d\xf0\xad\x74\x80\xde\xf9\xdd\xb3\x6f\xec\x71\xf2\x0d\x09\x57\x1c\x5d\x22\xda\x4f\x44\xa5\xe0\x3e\x4e\xfa\x53\x1a\x2d\x6a\x19\xbd\xd9\xb0\xd5\x18\x3b\x89\x92\xe6\x31\x05\x28\xef\x39\x24\xb2\x6c\xf2\xeb\xe4\xaf\x12\x15\x2d\xbf\xd1\xd0\x7f\xcb\x65\x90\x7f\xa1\xda\xb0\xc7\x0e\x2b\x91\x0d\xb3\xf7\x8b\x71\x9a\x21\x64\xeb\xf5\xd0\x43\x6c\x5e\x12\x92\x2c\x28\xea\x27\x70\x82\xfa\x59\xcd\xdf\x6a\xd9\x03\x1a\xe1\x00\x51\x11\xfb\xb1\x4b\xf8\x7d\x25\x66\x7f\x0a\x27\x28\xab\xf4\x2c\xa5\x83\x16\x70\x8b\x2b\x70\x47\x31\x4f\xf7\xda\x21\x14\xb4\x22\x31\x0d\x6c\x5b\x7a\x92\xed\x5b\x20\x71\x5d\xb2\xe9\xaf\x28\x33\xf2\x89\xdc\x81\xb8\x28\xe0\xdb\x2f\x49\x11\x30\xcf\xb2\xc6\xa6\x26\x4d\xc8\x8b\x88\x5c\xb8\x17\x90\xda\x28\x2f\xf5\xb0\x08\xc3\x7b\x1e\x7d\x46\x87\xac\x4e\x68\x14\xa0\x7f\x93\x17\xbf\xc9\x8b\xd9\x5e\xff\xad\x7d\x1a\x0f\xf4\xdb\x02\xee\xd4\x39\xd1\x8a\x49\x8a\x49\xb7\x66\x91\xbc\xf5\x66\x06\x79\x55\x2b\x5f\xd6\x9a\x9b\x6a\x32\x74\xec\x3c\xca\xae\x3a\xc8\x8c\x57\x2d\xe4\xc3\xab\x78\x3e\xe8\x82\xb0\xf9\x60\x0f\x51\xc6\x41\x6c\x8f\xb4\xf9\x60\x23\xda\xa4\x37\x66\xff\xac\xde\xa7\xb8\x59\x9a\xc9\xfb\xed\x24\x12\xdb\x00\xbd\x15\xc4\xfb\x09\x2e\x09\xb6\x59\x61\xd9\x6b\x2f\x01\xbe\x42\x41\x7f\x4a\x71\xd0\x0f\xe1\x32\x5a\x34\x38\x7f\x6a\x97\xd7\x23\xd9\x28\x39\xe2\x3d\xfe\xa8\xc0\xf4\xdc\x45\xba\x68\xda\x43\xa3\xe3\x31\x40\xa3\xc1\xb8\x26\x38\x7d\x1d\x0a\x42\xc8\x18\x22\xfd\x58\xcd\xf7\xab\x95\x3b\x6c\x80\xaf\x87\xa4\x95\x10\xd0\x3c\x4b\x14\x75\x63\x38\x95\x89\xf7\x0f\xb2\x1a\x61\xf1\x22\x99\x71\x61\x9a\xc9\x97\x0e\x60\xae\x3f\xc3\x61\x40\x11\xc9\x44\x3f\xe6\x3d\xe5\xc3\x8d\xc1\x4a\xb4\x19\x0a\xf1\x03\x16\xf1\xb3\x41\x4f\xaf\xf0\xd3\x75\x4f\xa8\x5e\x3b\xb9\x27\x9a\xc7\xcc\x80\x6d\x39\xa6\x6a\xbf\x79\x9f\x85\x51\x54\xcb\x46\x6b\xcf\x5c\xd9\x7a\xef\x50\x27\x40\x6c\x8d\xb8\x28\xda\xac\x3f\x90\x95\x05\xfa\x4d\xce\x53\x98\xb0\xb0\xb6\xed\x4e\xa2\xae\x15\xa8\x73\x94\x24\x70\xda\x1a\x5a\xdd\x7c\x7f\x01\x96\xb5\x14\xda\xc2\xab\x5a\xef\x2f\xb8\x14\x85\x90\xe1\x8b\xd6\x0b\x9c\xb5\xdf\x5f\x90\x93\x59\x44\x59\x9f\xe1\xf9\xdd\x16\x1c\x6b\x71\xb4\xda\x23\x34\x96\x46\x79\xe9\x69\x06\x0f\xa0\xf7\x0b\x64\x33\xc9\x8d\x6c\x74\x34\x40\x0f\xf9\x1d\xde\x78\x06\x8f\x9e\x1c\x3b\x00\xfe\x97\xf7\xe4\x18\x10\xf3\x05\x15\x2f\xa8\x78\xc1\xcc\x17\xe4\xe8\xe4\x91\x03\xc8\x7f\x79\x27\x8f\x32\x67\x3a\x06\x12\x8f\x00\xec\x51\x10\x79\xf0\x40\xb9\xce\xdc\x3b\x96\xbe\x33\x42\x9f\x11\x0e\x75\xca\xc6\x07\x56\x60\x1d\x64\xcf\x13\xfd\x3c\x79\x60\xcd\x8c\xe7\x58\x3f\xc7\x0f\xac\xb9\x75\xa0\x70\xa1\x1f\x46\x0f\xac\xc4\x4a\xbb\x1d\xf3\x72\xb1\xca\xcb\xb4\x8e\x36\x45\xdb\x7d\xa4\x4b\x1a\xcd\xfb\xdb\xa9\xa6\x0b\x5d\x77\x12\xf4\x35\x07\x34\x8d\xe6\xaf\x3a\xea\xa8\x8d\x3e\x6d\xd0\xba\xa8\x4f\xab\x59\x2f\xe4\xc8\xe6\xfb\x87\xc4\x45\x87\x84\x9a\xb2\xf9\x46\xd4\x4d\xfd\xf6\x78\xe3\x6d\xf7\x0c\x69\x02\xbc\x96\xe3\x4d\xfd\x16\xe8\xa2\xd1\x22\xee\x7e\x4f\xcf\xba\xed\x24\xfa\x36\x80\x5c\x7b\x33\xaf\x57\x0c\x4f\x77\xd4\x7b\x60\x0d\x81\xb4\x1f\x6e\xda\x06\x57\xb5\x47\x58\x13\xb2\x76\xf4\x0c\x5b\x87\xad\xf6\xf1\x4c\xd3\x16\x11\x9c\x33\x98\xf4\x09\xba\xea\x1a\xf8\x9b\x75\xdb\x33\xf4\xcd\x60\xf2\x56\x40\xdb\x72\x4c\xd5\x7e\xa3\x97\x1f\xc7\x47\x4c\xd1\x05\x8e\x16\x5d\xc5\x8a\x42\xd7\xfd\x43\xe7\xfb\x0c\xea\xf6\x28\xd5\x7d\x36\x53\x27\x45\x93\x3e\x8b\xd6\x27\xca\xa4\xd1\x82\x61\x32\x3d\x62\x14\x12\xe9\x3a\xcc\xa7\xb0\xa6\xe1\x25\x0e\x03\x1f\xd2\xa0\xd0\x84\xbf\xac\x2b\x11\x05\xa8\xb4\x63\x43\x20\x8c\x7a\x07\x99\xaa\x2e\xd2\xef\x01\x94\x2d\x42\x6f\x95\x6a\x0d\x9d\x69\x8d\xa5\x0d\xd6\xd8\x70\x84\xc6\x1e\x55\xd6\xd8\xb0\x68\x8d\x35\x7f\x82\xb0\x6c\x8d\x0d\x1b\xad\xb1\xe1\xf5\x75\x58\xb6\xc6\x86\x45\x6b\x6c\xe8\x91\x36\xd6\x58\x01\xb8\xf6\x73\x56\x59\x17\xae\xaf\x49\xea\x80\xd0\x01\xd0\xb0\xc6\x86\x25\x5b\x69\xa8\xac\xb1\x85\xe7\xcf\xc2\xaa\x35\x16\x66\xd6\xd8\x70\xbd\x35\xb6\xfc\x85\x26\x72\x64\x7c\x6a\xa1\xb2\xc6\x86\xdb\x64\xca\xd0\xf7\x25\xe4\x72\xca\xfb\x18\x15\x03\xa3\x16\xa5\xf2\x5b\xd4\x15\x44\x93\x38\xc0\x2f\x14\x03\x2b\xa5\xf9\x47\x59\x8a\x4d\x49\x63\xc3\x39\xc4\xc4\x72\xdc\x50\xd5\xce\x01\xa1\xd1\x24\xcb\xc2\x29\xc9\xd1\x11\x7e\x19\x49\xb6\x64\xc7\x0e\xc0\x5e\xe2\x26\x33\x3c\x61\xb6\x23\xc3\x2a\x44\xb2\xd4\xeb\xeb\x55\x7a\x60\xb9\x96\xe7\x79\xf8\xf0\xd0\x4e\xbc\x62\xd2\xd6\x50\x7b\x9f\x7f\xe0\xe3\x82\x08\xa0\xc2\x40\xce\x01\xa3\x4b\xbd\xda\x0b\x1b\x3b\x62\x88\x44\x47\xc1\x20\x1d\x1b\x73\x64\x39\xf2\x19\xf1\xa3\x00\x7d\xfa\xf0\x3a\x73\x0a\x72\xdc\x5f\x23\x4c\x44\x0b\xc7\x01\x50\xe1\xcf\xc6\x20\x01\x91\x93\xfa\xa2\x52\x80\xef\xac\xd8\x8c\x46\x97\x3d\xe1\x4d\xa0\x7d\x45\x3c\xcf\x7b\x45\x69\x24\x0d\xf9\x4a\xa7\xe5\x7d\xb9\xbf\xca\x7e\xa4\xbd\x9f\x22\xda\xb3\xee\xaf\xc8\xe8\x78\x9c\x0e\xef\xaf\xfe\xe7\xf4\xdd\x5b\x57\x86\x2b\xe3\xc9\xd2\xd6\xb8\x19\x38\x4e\x6a\x7d\x71\x80\x9f\xa6\x07\xd9\x02\xfa\x02\x81\x81\x67\xc3\x06\xc7\x16\x8d\x68\x10\xaa\x06\x9f\x65\x81\x4c\x90\x6c\x1b\xc3\x06\x1b\x7c\x5d\xd4\x97\x00\xcc\x22\xd8\xf0\x4e\x45\xb0\x41\xc3\xdd\x85\xbf\xb4\x9d\x95\x00\x44\xb4\xe4\xd0\x40\x3a\x15\x31\x3b\x89\x23\x02\x9e\x24\xf5\x53\x37\x22\x0a\x8b\xff\xc0\x61\xf8\x42\xe4\xb8\xb2\x8c\x06\xf9\xd3\x52\x60\x9c\x22\x37\xdf\xae\x4b\x4b\x0b\x78\x93\xb4\x34\x00\xe7\x9a\x72\x60\xa4\x47\xaa\x8d\x96\xd3\x13\x9b\x4c\xda\xce\x0c\x48\x48\x0b\x63\xa5\x29\xc0\x5e\x64\x27\x86\xdb\x4e\xb6\x86\x23\x38\x06\x37\xf1\xd9\x71\x40\xdd\xc0\xe6\x34\x47\xe1\x58\x9f\xbb\x12\x33\x9a\x36\x5e\xa2\xc4\xa7\x38\xe6\x94\xb7\x76\x04\x07\x18\xaf\x1d\x90\x98\xfa\xa0\x60\xc3\xb1\xcb\xe6\xa1\x70\x58\xec\x98\x2b\x20\xef\xb7\x6f\x72\x0c\x9b\x87\xa7\x02\xde\xb6\x42\x8c\xea\xb0\x59\x82\x59\xcc\x21\xe9\x9e\x75\x21\xeb\xb6\x6f\x88\xcc\xc0\x6d\x8b\x48\xd5\x61\x33\x22\x97\x71\x7d\xfa\xdc\x5a\x45\x89\x6c\xbd\x6f\xc8\x93\x20\xb6\xc5\x1c\x6f\xbd\x11\x6d\x78\xbe\x68\x9f\x12\x55\x34\xde\x33\xa4\x49\x00\x5b\x0e\xc8\x1b\x6f\x46\x19\xe9\x9a\xdc\x83\xf7\xd8\x37\xb4\x91\xf6\xc9\x3d\x30\xd9\x9c\xdc\x43\x24\x29\x4b\x9a\xca\xdc\xaf\x43\x9d\xee\xb7\x93\x08\xdc\x04\xf4\x45\x74\xde\x35\x85\x98\xea\xb4\x93\xe0\xae\xa3\x17\x09\x6a\x6b\x92\xe1\xcd\x37\x23\x30\xe9\x73\x69\xbb\xde\x24\x2a\x65\xad\x2a\xfe\xb2\x3e\xfb\x86\xc2\xe4\xb9\x82\xb5\x2d\x12\x55\x87\x56\x68\x14\x05\xca\x5b\x6b\x3e\xb3\x1e\xfb\x87\x43\x09\x68\x7b\x14\xf2\xf6\x6d\x30\x88\xe6\x31\xeb\x86\x41\xd9\x63\x27\x31\xb8\x19\x5a\xe9\x8b\xdd\x05\xda\x7d\x74\x39\xc7\xc9\xab\x4e\x4e\xe7\xaa\x7d\x1b\x0c\xce\x28\x9a\xb4\x89\xcd\x01\x30\xd7\x19\x86\xdf\x74\x86\xff\xb6\x3a\x43\x23\x8e\x2a\x69\x8e\xa3\xca\xd4\x4d\xa4\xa4\x6e\xba\xf5\x94\x49\x5a\x55\xb1\x0f\x09\x93\xee\x58\xdd\x34\x42\xc0\x75\x5d\x36\x2e\x46\xf8\xab\xf1\x4c\xc5\xe8\x5b\x38\x47\x85\xfc\x3b\x24\x89\xa1\x8f\x5c\xcb\x39\x3c\x2c\xbe\x08\x7c\xf1\xd0\x46\x5e\xd6\xe6\x01\x32\xd3\x6a\xf0\x2f\x10\x74\xc5\x0e\x0f\xad\x30\x82\x01\x26\x53\xcb\x7c\xfc\x2c\xfb\xcb\x1c\x16\x39\x43\x73\x6a\x5a\x00\xb0\xe5\xfc\x9b\xf5\x61\x7c\x1c\x0f\xb9\x2c\x72\x09\x87\x80\xa2\x38\x84\x9c\xda\x5c\x4c\x02\x74\x65\x01\xcb\xd2\x38\xfc\x4a\x8a\x33\xe8\x85\x36\xad\x55\x9c\xb1\x9b\x2a\xce\xea\x06\x2e\x28\xce\xc8\x66\xc5\xd9\xda\x11\x1c\x40\x4d\xc5\x59\xa1\xba\x6c\xb2\xe9\x58\xf8\x3a\xd5\x9a\x4c\x4b\x05\x4e\x8a\x56\x0a\xe2\xd9\x08\x68\x2f\x72\x99\x6d\x6a\x05\xcf\x70\x88\xd9\x92\x93\xf7\x10\x02\xed\xed\x2e\x7e\x86\xa9\x87\x5c\x1f\x12\x37\x86\x9c\xab\x33\x07\x24\xea\x81\xea\xf4\x53\x44\x6d\x28\xec\x60\x59\x65\x61\xaf\x26\xe3\x8d\x48\x27\xf6\x62\x06\x29\xf4\x19\xa2\x38\x61\xd8\xd7\x90\x3c\x5b\xf3\x8e\xb3\x01\xc9\xea\x4e\x85\x26\x2c\x2b\x8d\x65\x5b\x38\xe9\x5b\x0f\x42\x0e\xec\x67\x99\xa3\xea\xb9\x9c\xd0\xbb\x33\xce\x4d\x11\xb5\xc5\x2b\x18\x04\xe5\xe7\x09\xe7\xe9\x79\x46\x6d\xfe\x33\x3d\x10\x88\x22\xc2\x53\x90\x1a\x95\x97\x25\xbb\xb5\x4b\x89\xba\xf3\x63\x8c\xc8\x94\x64\xfa\x71\x9a\x9a\xd4\x40\xd7\x53\xc3\xaf\x51\x7d\xa9\xdc\x35\x97\x43\xd1\x65\x27\x65\xac\xf5\xa0\x72\xa1\xa5\x23\xa8\xa2\xcb\x4e\x82\xda\x3c\xa6\x04\xb3\xe5\x80\xbc\xf1\x46\xc4\x85\x30\x61\xed\xaa\x03\xe8\x9a\x8c\x25\x0f\x52\x4b\x6a\x90\x8d\xd4\x53\xc3\xac\x88\x40\xb2\x38\x4b\x18\xb5\xfb\x03\x27\xdd\x46\xb2\xe1\x73\xbb\xbb\x4a\x01\xa1\x3f\x6f\xad\x98\xe4\x6d\xf7\x8c\x54\x04\x78\x2d\xc7\x0b\xfd\xf9\x66\x42\x41\x13\xd6\x67\x14\xcf\xd7\x3b\x43\xe4\xcd\xfe\xc8\xd2\xa1\x5c\xfe\x6c\xac\x1f\x0a\x48\xb7\x20\xad\x30\x9a\xf6\x6b\x15\x44\xf5\xa4\x22\x5a\xef\x1b\xb1\x44\xd3\x57\xed\xa9\x25\x9a\xbe\xda\x4c\x2e\xd1\x74\x70\xdc\x05\x69\x83\xe3\x3d\x44\x1a\x07\xb1\x3d\xd6\x06\xc7\xad\xd0\xd6\x3e\xa0\x5c\xb6\xde\x43\xb4\xb5\x0f\x2a\x17\xad\xdb\xa0\xad\x7d\xa1\x20\xd1\x78\xff\x90\xd6\xbe\x4c\x10\x6f\xdc\x02\x65\x97\x88\x8a\x03\xbc\x9b\x65\x38\xef\xb7\x77\x28\xcc\x00\x6e\x8d\x47\xd5\x63\x33\x32\x3b\x78\x48\x87\x3b\x6a\x6a\x5a\x83\xb9\xf6\xc3\xb5\x10\xd5\xc3\x2e\x1e\xd2\xe1\xfe\x79\x48\x87\x1d\x3c\xa4\xc3\x16\x1e\xd2\x73\xb8\x45\xb8\x81\xea\xb4\x93\xa8\xdb\x08\x6e\x77\x58\xf7\x13\xd0\xab\xd6\x47\x16\x6f\xbb\x93\x20\x36\x8f\x29\xc0\x6b\x39\xde\x1c\x5e\x6d\xf4\x70\x9f\x23\x3a\x45\x7d\x7f\x86\xfc\xf3\x64\xfd\x15\xa4\xd0\xf2\x0f\xbb\x85\x00\x72\x5b\xf7\x8f\x79\xbd\x16\xa7\x9e\x50\x76\x55\x7d\xb3\x86\x50\x70\xfb\x94\x07\x73\xbc\x39\xdd\xc1\x7c\xcb\xb4\x22\x79\xbf\x5d\x4c\x2e\xd2\x91\x64\xa2\xf6\x31\x7d\xbc\xed\xbe\x91\x4c\xd4\x3e\xa6\x6f\x1e\x6d\x8e\xe9\x9b\x2f\xea\x05\xb8\x7a\x7c\x2d\xf6\x4f\x82\x9b\x77\x19\x70\xde\xe6\xf4\xda\x22\x66\x6b\x1f\xe3\xb5\x48\x97\x60\x2d\x92\x45\x6a\xad\x43\x5c\xd4\x39\xf5\xbc\xe8\xb2\x6f\x88\x13\x60\xb6\x45\x5c\x14\x6d\xbe\xe3\x93\x88\xf5\xbb\xa4\x28\x94\xed\xf7\xd0\x67\x84\x44\x4c\x38\x81\xc8\x63\xa2\x03\x12\xcd\x6e\x6d\xd0\xd9\x09\x97\x7b\x88\xc5\x2e\xa8\xdb\x88\xaf\x48\x7c\xa8\x0f\xbb\x72\xbd\xbc\xdf\x9e\x21\x50\x4e\xfc\x79\xfb\x41\x75\x87\xcd\xa8\x24\x79\xad\xae\x1a\x64\x46\xa4\x9c\x97\xde\xec\xb0\x93\x58\xdc\x08\xef\x25\x26\x41\x74\xd9\x1a\x5a\xd5\x7c\x2f\x61\x6d\x0b\xe4\x5e\x42\x17\x8b\xf0\xde\x5a\xc7\xc5\x75\x3c\x40\x77\xdb\x49\x90\xd7\xb0\x80\x0c\xdc\xb6\x2c\x40\x75\xd8\x8c\xc8\xda\xac\x5b\xf5\x87\xcf\xfe\xa5\xa3\xeb\x90\x8b\xae\x45\x22\xba\x18\x4e\x51\x9f\x61\x16\xd6\xea\x4d\xf3\xb7\x75\x1d\xee\xec\x26\x9b\x21\xa2\xfd\xa5\x34\x46\xd4\x47\x84\xf1\xc9\xf9\x51\xb8\x98\x93\xa4\xdb\x05\xbd\xda\x7f\x17\x2f\xea\x22\x0b\x28\x40\xa3\x93\x8e\x57\xf6\x18\xd1\x49\x44\x6b\x5d\x12\xfc\x88\x48\x27\x41\x7f\x59\x69\xbe\x93\x3b\x63\x03\xa4\x38\x46\x7d\xe9\x75\xda\x91\x8f\x9a\x3d\xf7\x14\xf0\x2d\x20\xde\x4d\x50\x9b\xc7\x94\x60\xb6\x1c\x90\x37\xde\x8c\xb8\x70\x41\x85\x13\x66\x7d\x76\xb8\x09\xe7\x14\x11\x3d\x0a\xf1\x59\x4d\x97\x9d\x62\x81\x51\x88\xfd\xe5\x51\x00\x19\xe4\xac\x0c\x15\x2b\xee\x36\xfb\x5e\x21\xc0\x8c\x94\x0e\x9a\x3d\x89\x9a\xa3\x9c\xe5\x58\x2f\x8d\x01\x33\x37\x49\x11\x79\xa2\x23\x50\x6c\xe2\x1c\x1e\x8a\x22\xa9\x6e\x88\xc8\x94\xcd\x9e\xad\x1d\x63\x38\x62\xee\x34\x8c\xce\x60\x78\x7d\x6d\x3d\x0f\x43\x6b\xbc\x95\x6b\x7a\x3e\xe4\xdd\xf9\x71\x29\x9c\xd6\x94\x7a\xca\xdb\xce\xa3\x00\x85\xba\xe9\x1f\x67\x13\xc8\x1d\xc0\x51\x5d\xf9\x09\x22\xf3\x43\xd2\x4a\x92\xc6\x7c\xa9\x08\xb0\x5e\xbf\xb4\x1c\xcf\xf3\x98\xfb\xcb\xf3\xb7\xcf\xff\xfa\xea\x97\x57\x6f\x3f\x7e\x7e\xfd\x72\x48\x3d\x6b\x0e\x09\x9c\xca\x0a\x5e\x07\x67\x14\xc1\x73\x91\xb2\xd1\xb2\xee\x79\x5e\x61\x04\x86\xe6\x71\x08\x19\xb2\x1c\xde\x0b\x07\x88\x30\xcc\x30\x4a\x74\x2f\x05\x1b\x7f\x29\x30\xc6\x5f\x65\xa5\x16\x47\x74\x2c\xb3\x3f\x13\x07\xa0\xd4\x01\xab\xfc\xab\xc3\xd1\x18\xe4\xa3\xf1\x5f\xba\xfb\x70\x34\x4e\x3b\x1e\x87\x72\x55\xa5\x4f\xe1\xed\xe6\xee\xe4\x63\xbe\x9b\xd4\x11\xa4\xb9\xe3\xf4\x66\x63\x9e\xd8\x1e\xe6\x9e\x63\x26\x0a\x2b\x8b\x95\x85\x80\x10\xe5\x08\x69\xd1\x28\x44\x32\x7d\xa6\x4e\xaf\xd2\x57\x68\x5a\x5a\x66\x3b\x09\x73\xbf\xd2\x46\x76\x25\x51\xb0\xbe\x5f\xb1\x81\xec\x74\xac\xfe\xeb\xd7\xfc\x4f\xfd\x37\xe0\x63\x15\x80\xe3\x14\x56\x1a\xdb\x24\xad\x8c\x3c\xcc\x16\x56\x9a\xde\xd6\x76\xae\xbd\x26\xd7\xaa\xe2\xe3\x5d\xbd\x23\xaf\x39\x1c\x39\x78\x6d\xcf\xc6\xe8\x72\xf3\xd1\xb8\x5d\xd2\xaf\x7d\x4d\xf8\x15\x77\xcd\xf6\x15\xb7\x4d\xf5\xf5\xdb\x02\x2d\xba\x4a\x67\xb2\xcf\x9e\xa1\x50\x01\xda\x72\x44\xd1\x7a\x23\xf2\x28\x24\x41\xd4\xde\x9d\x5a\x35\xdf\x33\xc4\x69\x20\x5b\x0e\x29\x9b\xb7\x41\x5d\x7d\xca\xf5\x35\x74\x27\xfb\xec\x1f\xfa\xa6\xed\xe9\x4e\xb4\xde\x8c\x3c\x21\x44\x75\xc5\x9e\xec\xb4\x93\xe8\x5b\xef\x03\x43\xd1\x84\xa2\x64\x26\x33\x13\xec\x46\x5d\x3e\x23\x9e\xf4\x96\x4b\xf3\x95\xe3\x47\xf7\xa1\x3a\x9f\x91\x57\xcc\x76\xbc\xa7\x59\x65\xf3\xda\x0c\x63\x12\xd4\xba\x30\x50\x11\x45\x79\x90\x5d\x15\x0a\xe9\xfb\x86\xd6\x03\xe6\xb8\x8a\x12\x6c\x27\xad\x2b\xed\xa7\x51\xf7\xad\xba\xdf\xb7\xea\x7e\x39\xef\x10\x76\xc8\xce\x9e\xa4\x79\xbf\x5d\x65\x98\x6b\x81\x26\x01\xa2\xfd\xec\xb6\xf6\x75\x58\xa6\x4e\xbc\x79\xb4\x5a\xd9\xa3\xe7\xfd\x7f\xc1\xfe\xef\xee\x71\xff\x87\xcf\xfd\xf1\x03\x27\x4d\x8f\xa6\x82\xa7\x86\x60\x4d\x94\xbe\xcc\x6f\xd9\x89\xad\x4a\x10\x64\x7a\x87\x24\x67\xa9\x46\x10\x3b\x92\x8c\x94\x79\xd9\xf0\x20\x51\xbc\x95\xac\xe1\xad\x7c\x48\x73\x59\x48\x23\x6f\x25\x0d\xbc\x95\x94\x79\x2b\x29\x6c\x25\x52\xdd\x4a\x49\xce\x5b\x41\x1e\xeb\x7b\x4f\x87\x18\x86\x87\x87\x76\xa8\xcb\x9e\x0a\x50\x5c\x9f\x22\xc8\xd0\x07\x34\x7d\x75\x15\xbf\x92\xcf\x6c\x08\xaa\x79\x42\xc1\xbd\x81\x53\xac\xa6\x9a\x2b\x65\x44\x76\x0c\x99\x76\xd1\x64\xa8\x91\x81\xb0\x85\xe0\xa8\xfe\xcd\x38\xea\xbc\xcc\x51\xfd\x06\x8e\x3a\xe7\x1c\xd5\x57\x1c\x75\x5e\xe4\xa8\xe6\x4f\x30\x2f\x73\xd4\x79\x23\x47\x9d\x5f\x5f\xcf\xcb\x1c\x75\x5e\xe4\xa8\x73\x6f\xd1\x9d\xa3\x62\x91\xd4\x55\x72\xd4\xb9\x03\x02\x83\xa3\xce\x4b\xfc\x6e\xae\x38\x6a\xe1\xf9\xb3\x79\x95\x0c\x82\x8c\xa3\xce\xd7\x73\xd4\xf2\x17\xea\x29\x99\x4f\x71\xce\xc1\xd3\x1c\x75\xae\x39\xaa\xe2\xa6\x20\x00\xf3\xf6\xc1\xf6\x14\xc5\xa8\xb3\x3b\x88\xea\xb4\x93\xbc\x74\x8d\xec\xae\x40\x6d\x2b\xbc\x8b\xe6\x2d\xb8\xb3\xa0\xad\xce\x18\x94\xbd\x76\x12\x85\x1b\x00\xc6\xd3\x59\x9b\x20\x5a\xa3\xdd\xbf\x4d\x14\x2d\x8d\x22\xd6\x5f\xd0\x5a\xd7\x89\x86\x4c\x6b\x59\x97\x9d\x5c\xea\x35\xbb\x25\x8a\xd8\x27\xda\xde\x6b\x42\xb5\xdf\x4c\x3e\x9d\x6a\xdc\xec\x65\x89\x9b\x6e\x15\x6e\xda\x15\xb8\x11\xd4\xb5\xc6\xe0\x6c\xbe\x2f\xbb\x29\x15\xfa\xee\x24\x2e\xdb\xc0\x3e\x87\xcc\x9f\xed\x46\x01\x34\x65\x2d\x19\x59\xef\x29\x4a\x84\x03\xa0\xf5\xea\x0a\xfa\xfc\xdf\xf7\x14\x4d\xf0\x95\x05\xac\xd3\xc5\x44\xfe\xf1\x01\x4d\xd1\x95\x35\x76\x27\x98\x04\x36\xf3\x9e\x66\x12\x05\x1a\xb1\xb1\xa3\xf2\x4f\xe8\x81\x94\x3d\xc2\x46\xee\x6b\x72\x81\x28\x7b\x66\xbd\x7d\xf7\xb1\x67\x0d\x2d\xcb\x79\x60\xc5\xaa\x91\xb4\x8a\xc8\x2f\xaa\x0e\x5f\xee\xaf\xaa\x5d\x52\xc4\x9b\x84\xcb\x9e\x40\x1d\x26\xd3\x9e\xc5\x9b\x89\x8e\xa9\xf5\xe5\x40\x7f\x99\xcf\x73\xed\x38\xb1\x68\x83\x82\xde\xd9\x52\x0e\x21\x3b\x65\x63\x28\x58\xd7\x8e\x91\x88\x36\xc6\x18\xb2\x53\x36\x86\x44\xd3\xda\x21\x32\x30\xd8\x0c\xf5\x28\x6f\x2f\x47\x12\x5d\x53\xeb\x8b\x32\xef\x59\x56\xa7\xba\x6d\x92\xba\x64\x01\x80\x4e\x7c\xdd\xe8\xb6\x93\x9b\x6a\x2d\x83\x62\xe8\xbd\x82\xb8\x3d\x9b\xd2\x7d\x36\x6e\x58\x75\x05\x3c\xf2\x21\x0d\xfa\x31\xa2\x73\x9c\x24\x38\x22\xeb\xfc\x04\xbe\xe2\xee\xc5\x13\xdb\xb2\x3c\xcf\x43\x6e\xee\x2d\xe0\x28\xd2\x91\xd9\x28\x0f\x72\xb3\xa9\xfb\x9a\x30\x44\x78\x67\xf7\x67\x98\xbc\xcf\x61\x01\xa4\xf0\xf2\x79\x18\x46\x97\x28\x00\xd4\xb3\x92\x18\xf9\x78\x82\xfd\x3e\xd6\x6f\xe5\xd7\x4e\xa3\x05\xf5\xd1\xe1\xe1\x3d\xe4\x7e\xa4\x90\x24\x31\xa4\x88\xb0\xf7\x34\xba\x5a\x56\xec\xaf\x99\x61\x12\xf2\x71\xe5\x8e\xbf\x47\x0e\x0f\xef\x65\x2f\x02\x44\x94\x7d\xb4\x47\x0e\x0f\xa9\x7e\x4c\x22\xd6\x97\x48\x0c\x2a\x46\x4e\x39\x56\xda\xad\xac\xa1\x5e\x4b\x7e\x77\xa7\x04\x86\xfd\x44\x80\xd1\xda\xe5\x43\xba\x03\x54\xbd\x3d\x5e\xa9\xf1\x24\x56\x12\x77\x82\x69\xc2\x24\x15\x58\xce\x01\xb9\xbe\xb6\xab\x7d\x7e\x41\x0c\xba\xe5\x89\x38\x8e\xd2\x55\xe8\x2b\x95\xf0\x2b\x90\x2c\xeb\x99\x65\x0d\xf5\xdf\x07\x78\x62\x93\xc3\xc3\x91\x86\x11\xc6\xb8\x3f\x85\x0c\x5d\xc2\xa5\x05\xac\x0b\xb9\xc9\xac\xf3\xc5\x19\xa2\x04\x31\xc4\x19\x00\x43\x94\x42\xe9\xd0\x66\x91\x68\x0e\xf3\x62\x37\x16\xb0\xe0\x65\x62\x8d\x5d\x4c\xfc\x70\x11\xa0\xc4\x26\x8e\x93\xf1\x2e\x9a\xde\x5f\x91\xf4\xcb\x36\xde\x26\x0a\xdd\x45\xec\xdc\x9d\xdf\x89\x5e\xdd\x19\x82\x21\x9b\xf5\x73\xef\xc4\xdd\xd8\xaa\xf9\x36\x7c\x21\x22\x61\x5f\x50\xcc\xb0\x0f\xc3\x07\xfa\xc1\x7b\x98\x24\x98\x4c\xb3\xdf\xff\x80\x94\x60\x32\xd5\x6a\x67\x41\x0b\x9c\x08\x56\xb1\x6c\x38\x14\x75\x46\x85\xc8\x65\x97\xc6\x38\x62\xff\x67\x70\x7c\xec\x80\x4b\x39\x44\x5d\x4b\x35\xba\x6e\xe9\xab\xd9\xd4\x35\xd5\x33\x55\x6d\xbb\xee\xb9\xda\x1b\x79\x82\x58\x59\xb4\xe3\x2d\x77\xf2\xf0\xd9\x00\xe0\x6c\x31\x99\xd4\xbb\x02\xaf\xb9\x34\xeb\x5e\x3b\x09\x70\xf3\x98\x19\xb0\x2d\xc7\x54\xed\x37\x23\x11\x4f\xdb\xc7\x54\x8b\xc6\xfb\x86\x38\x01\x60\x5b\xac\xe1\xe9\xe6\xb0\xea\xa4\x43\x14\x7a\xb2\x7f\x51\xe8\x49\x87\x28\xf4\xa4\x45\x14\x3a\x67\x8b\x8b\x10\xd2\x4e\x4e\xab\x66\xa7\x5d\x72\x5b\x15\xca\xe0\xae\x1c\x47\xf4\xd9\x49\x2a\xd8\x04\xec\x62\x8a\x27\xcb\x6e\x49\x11\x0d\xb7\x4e\x99\xfa\xf6\xa8\x77\x34\x05\x56\xdf\x72\x5c\x16\xbd\x89\x2e\x11\x7d\x01\x13\x64\x3b\x5b\xc9\x35\x72\x42\x77\x28\xc9\x44\x74\x0b\xc3\xa0\xee\xb5\x8f\x4b\x1c\x87\xb8\x4b\xd6\x4b\xc0\x3c\x0b\x14\x96\x59\xd6\xa3\x63\xdb\xad\x27\xef\x7b\x87\xab\xf9\x1b\x6d\x9f\xcc\x40\x34\xde\xc9\x15\x5c\xc3\xaa\x05\x80\x6d\x79\xf5\x6f\xb4\x05\x3d\x30\xc8\x50\xdf\x9f\x41\xba\x8e\x2a\xbe\xa2\x57\x8d\x98\xd0\x5d\x38\xd5\xc8\x81\xf7\xca\xa7\x66\x84\xc6\xa6\xa1\x71\x86\x13\x57\x40\x21\xff\xff\x82\x2f\x9a\x8d\x9c\x3a\x37\x18\x05\xec\x37\x2f\x98\x6f\x5e\x30\xc5\x9d\x2e\xb4\xa1\x68\x9d\x4e\xed\xdb\x5e\xff\x83\xf6\x3a\x60\x63\x40\xea\x76\xbb\x5a\x33\xed\xa2\xf1\x6d\xb3\x7f\xdb\xec\x9b\x37\xbb\xc8\x60\xca\xcf\xf5\x86\xbc\x1d\xaa\xc5\x84\x24\x4d\x9d\xf6\x4d\x36\x12\xb3\xe7\x87\x62\x87\xc4\x1d\x66\xa7\x16\xb2\x52\x8e\x1f\x3f\x0a\xd0\x76\x98\xd5\x3d\xf7\x16\xbd\x2f\xa2\x00\x6d\x85\x62\xd9\xb1\x35\x9a\x39\x9e\xe2\x08\x93\xa6\xcc\x33\x6b\xf0\x5c\xe8\xba\x9f\x88\x8e\x02\xf4\x9e\x43\xd0\x1d\xd3\x79\xcf\xf6\xa8\x26\x7e\x77\x1c\x8b\x3e\x7b\x8a\x5c\x09\x6f\x47\xbc\xf2\x4e\x1b\x03\x15\x14\x7a\xb8\x1c\xd3\xbf\xc4\x6c\xd6\x0d\xab\x79\xb7\xbd\x44\xec\x2b\x12\x88\x6a\x4a\x1d\x51\xab\xbb\xb5\xa5\x57\x91\xdb\xac\xd6\xec\xbe\x06\xb3\xb2\xcf\x7e\xa2\x55\xc1\xdb\x0d\xa9\xa2\x53\x5b\x94\x4e\x68\x34\xcf\xcf\xa7\x6e\xa8\x2d\xf5\xdd\x4b\x14\xff\x44\xa3\xb9\x3e\xa3\x3a\x22\xda\xec\xda\x0d\xdd\xd9\x31\xb5\x0d\xbe\xf3\xce\xfb\x8b\x70\x7d\x54\x6d\x83\x71\xdd\xb7\x2d\xca\x6b\x2b\xeb\xb7\x56\x6f\x17\x0a\x65\xe9\x12\xf4\x36\xda\x4e\x0b\x2a\x46\xf9\x59\x0d\x72\x87\xea\x50\x09\xb8\x76\x36\xe8\x46\x64\x59\xaf\xbd\xa4\xae\xd7\x19\xcc\x9d\x08\x4b\x77\x6b\x4b\x53\xa2\xc6\x5f\xbf\x98\xa5\xa1\x0d\x6a\x55\xaf\x3d\x45\x6d\x80\xae\xde\x4d\x3a\x63\x56\xf4\x6a\x8b\xd8\x10\x26\x6c\x4b\xec\x16\xbb\xee\x25\x8a\xdf\xc0\x84\x6d\x87\x66\xa3\x67\x5b\x54\x67\xc9\x62\x3b\x32\x08\xa3\xdf\x5e\x22\xf9\xad\x4a\x1a\xdb\x95\x47\x64\xfd\xda\x22\x38\x86\x01\x97\xeb\xbb\x61\x57\x77\xda\x4b\xd4\xbe\x87\xc1\xab\x0e\xbe\xec\x66\xa7\x2e\x48\x15\xd5\x5b\xbb\xa3\x55\x76\xdb\x57\xc4\x9e\x4a\xa0\xbb\xa2\x56\x74\x6b\x8b\xdc\xe6\xf0\xae\x66\xcc\xee\x67\x74\x97\x9c\xfc\x87\x6e\x31\x5e\x66\xa7\x0e\x28\x0d\xa1\x8f\xfa\x30\xac\x0d\x03\x5a\x8b\xd7\xac\xe3\xbe\x22\x97\x03\xf0\x3c\x6c\x1f\x15\x54\xee\xd8\x11\xc9\x5b\x21\x78\xaf\x91\xbb\x1d\x66\xdb\xa2\xb5\xd1\x07\xaa\x19\xa9\x3b\xec\x02\xb5\x09\xa5\xa7\x12\xda\x4e\x08\x15\x7d\x5a\xa3\xb3\xec\x82\xd3\x02\x9d\xa2\xcb\x7e\xa2\x53\x42\xdb\x0d\x9d\xbc\x4f\x6b\x74\x8a\x1a\xee\x5b\xe8\x5a\xcd\x8e\xfb\x89\xda\xac\x7a\x7d\x57\xfc\x66\x1d\x5b\x23\x59\x94\x33\xc6\x64\xda\x11\xc5\x59\xb7\xfd\x44\x70\x0e\x75\x37\xfc\xea\x7e\x6d\xd1\xcb\xa2\xbe\x28\xbe\xde\x6f\xaa\x4a\xd9\x8c\xe2\x62\xd7\xbd\x44\xf3\xc7\xe8\x05\x87\xe0\x45\x97\x02\x95\x95\x9e\x1d\x50\x7d\x8e\xce\xe0\xd9\x76\xa8\x36\xba\xee\x29\xaa\xff\xc6\x21\xd8\x0a\xd5\x59\xcf\x0e\xa8\x16\x75\x44\xb7\x43\xb5\xd1\x75\x4f\x51\x9d\x39\x3f\x77\x46\x75\xd6\xb3\x03\xaa\x63\x98\xf8\x70\x4b\x0e\x62\xf6\xdd\x53\x64\xbf\x17\x20\x6c\x85\xed\xbc\x6b\x07\x74\x27\x88\x30\x44\x7c\xb4\x1d\xc2\x8b\xbd\xf7\x14\xe5\xa7\x0a\x88\xad\x90\x6e\x76\xee\x82\x76\x02\xcf\xb7\xc5\x79\xde\x75\x5f\x11\xce\x21\xd8\x0e\xdb\xba\x67\x07\x54\x8b\x32\x1a\xdb\xa1\xda\xe8\xba\xa7\xa8\xfe\xc8\x21\xd8\x0a\xd5\x59\xcf\x0e\xa8\x5e\xc4\xf1\xb6\xc7\xa4\xd1\x75\x4f\x51\xfd\x89\x43\xb0\x15\xaa\xb3\x9e\xad\x51\x4d\xf1\xbc\xbb\x2e\x3e\xeb\xb5\x9f\x08\xa6\x78\xde\x5d\x1b\xaf\x7a\x75\x42\xec\x16\xfa\x78\xa3\xdf\xde\x22\x77\x1b\x8d\x7c\xd6\xaf\x0b\x82\xbb\xa3\x76\x7f\x91\xba\x05\x3e\x37\xa3\x72\x71\xd6\x3e\x3a\x6c\x71\xb6\x77\xc8\xe3\xe0\xb5\xc5\xda\xe2\x6c\xb3\x27\xa3\xd0\x62\xec\x40\x4a\x07\x19\x86\x78\x6c\x94\x15\xef\x21\x57\xce\xce\x66\x95\x64\x6c\x9b\xb2\x24\x5c\x4c\xfb\xfe\x82\x5e\xec\x44\xae\x0a\x4e\x54\xba\xb0\x0d\x73\x13\xea\x5f\x5f\xaf\xae\x86\xc7\x60\x39\x3c\x4e\x01\xf5\x98\x28\xd8\x71\x7d\x6d\xf9\x8b\x33\xec\x5b\x2a\x9c\x66\x84\xc0\xea\x6a\x68\x13\xf7\xea\x01\x72\xaf\x9c\xa3\x13\xb0\x1c\x12\x77\x99\x8e\x55\xfe\x0a\xd5\xda\xf3\x3c\x7a\x78\x08\x65\xc5\x92\xd5\xd5\x10\x8e\x06\x63\xf7\x0a\x2c\x87\xc8\x5d\xa6\x0e\xf8\x72\x7f\x15\x7a\x04\x7c\xf9\xff\x48\xaf\xd7\xeb\xfd\xd2\xbb\xbf\x0a\xdd\xab\x54\xfc\xb3\x4c\xf9\xc3\x2f\xe9\xfd\x95\x41\x3a\x3a\x9f\xf3\xc8\xcc\xac\xaa\x3f\xf9\xe5\xfe\x2a\x7b\xa6\x8a\xec\x3c\x3d\x79\x66\xbd\xb0\x86\xd6\xff\x5a\x7c\x50\xe4\x4a\x7f\x61\x1b\xb9\xc9\x0c\x4f\x98\xed\x38\xee\x1c\xc6\x36\xf2\x9e\x2a\x64\x0b\x6c\x26\x36\x72\xdc\x5f\x23\x4c\x6c\xab\x67\x39\xfa\x4f\x60\x39\xe9\x97\x54\xa4\x74\x75\xd2\x2f\x32\x28\xa2\xd3\x9a\xd7\x1e\x4a\x98\xb0\xd0\x68\xb1\x93\x9b\x7d\x03\x58\xf0\xbc\x6b\x68\xba\xe8\xb2\x97\xa0\xb6\x4f\xc1\xc0\xdb\xee\x24\x88\xcd\x63\x0a\xf0\x5a\x8e\xc7\xe0\xe6\x14\x0c\x0c\x92\x5a\x63\x48\x13\xbe\xf6\xce\x00\x22\x01\x6c\x8f\xb1\xcd\x86\x0e\x06\x93\xf3\xb6\x15\x08\x45\xdb\x9d\xc4\xd8\x06\x18\x51\x52\x9f\xb4\x17\x92\xac\x8d\xcf\x49\xb1\xa6\x2f\xae\xb8\x79\x01\x72\x5b\x27\x25\xcd\x33\x73\xb8\x32\x06\xd4\x5e\x15\xe3\x22\x69\x96\x3e\x31\x4b\x76\x26\xa2\xa0\x95\x19\xcb\xb6\x7c\x48\x7a\x59\xe9\xa6\x9e\x88\x0a\x75\xf3\x21\xb4\xb4\xf0\xc8\x91\x83\x1d\xd4\x8c\x80\x93\x7c\x00\xfb\x18\x10\x17\x27\x8e\x28\x57\x00\xf2\xfe\x0f\x55\xff\x94\xcd\x68\x74\x29\x4a\x60\xbe\xa2\x34\xa2\x36\x7a\x60\xf5\x70\xd2\x23\x11\xe3\xdf\xe6\xd8\x95\x39\x0b\xd9\x0c\xf5\xfe\x9b\xa3\xfd\xbf\x7b\x12\x91\xae\xe5\xa4\xa9\x79\x74\xd1\x0d\x4b\x86\x59\x88\x1a\x32\xa9\xf8\x21\xd6\xf2\x7f\x65\x4f\xeb\x6e\x3b\x49\xa5\x6b\xf6\x75\x06\x6e\xdb\xbd\xad\x3a\x6c\xa6\xfd\xa8\x7d\xed\x10\x11\x59\x9c\xf9\x82\x27\x92\xd8\x39\x0d\x92\x5d\xca\x14\x4f\x8d\x28\xe2\x6c\xb2\x58\x4f\x16\x40\x09\x50\xe8\xad\x52\x9d\xd8\xcc\x8c\xeb\xa5\x0d\x71\xbd\xe1\x08\x8d\x3d\xaa\xe2\x7a\xc3\x62\x5c\xaf\xf9\x13\x84\xe5\xb8\xde\xb0\x31\xae\x37\xbc\xbe\x0e\xcb\x71\xbd\x61\x31\xae\x37\xf4\x48\x9b\xb8\x5e\xb1\x0a\x0a\x1a\xaa\x98\xd0\xf5\x35\x49\x1d\x10\x3a\x00\x1a\x71\xbd\x61\x29\xea\x36\x54\x71\xbd\x85\xe7\xcf\xc2\x2a\x56\x61\x16\xd7\x1b\xae\x8f\xeb\x2d\x7f\xa1\x99\x30\x42\x01\x9e\x88\xeb\x0d\xb7\xaa\x25\x59\x0d\xaa\x8f\x5a\x95\xa5\x69\xaa\xb0\x70\x61\x89\x08\xe3\x2e\x31\xf7\x66\x9c\x7d\x22\xd9\x62\x56\x6b\x05\x02\x59\xd5\x45\x3f\xe7\x1f\x00\xa1\x7c\x68\xe6\xb2\x28\xc6\xb6\xab\xe2\x2f\x14\xf9\xd1\x94\xe0\xdf\x91\xfd\xe5\xfe\x4a\xd5\x35\xb8\x70\x2f\x20\xb5\x65\x32\xe9\x0f\x6f\x2c\x27\xbd\xbf\x42\xe9\x17\x47\xd4\x86\x49\x53\x00\x3d\x6c\x53\x23\x04\x3e\x9b\xc8\x88\x8d\xc1\x4d\xa2\xdf\xf9\x3a\x95\x86\x16\xb0\x8c\xc8\x4d\xc7\xa5\x26\xcb\x8f\x36\x71\xaa\xe9\x34\xdc\xb2\x4c\x70\xb1\xef\x4e\x32\xff\x36\xc0\x6f\x05\xf5\x6e\x82\xbb\xe6\xac\x53\xa0\xb6\x3d\xe9\x44\xf3\x16\x08\x3c\x47\xe4\x08\x27\x7d\x48\x22\xb2\x9c\x97\xea\x23\xde\x5c\xd1\x81\x93\xe7\x7a\xe0\xcd\x75\x44\x95\x42\xa2\x45\x29\xce\x93\x62\x29\x4e\x99\xb9\xf5\xb9\xef\xa3\x24\x89\xe8\xeb\x97\x96\x73\x4b\x35\x36\x33\xf4\x84\x68\x0a\xfd\x75\xa9\xce\xb6\xc2\xcd\x1b\x31\xaa\x47\x9a\x2a\xe3\x30\xcf\xfc\x84\x7e\x66\xc0\x0d\xac\x0f\x8b\x10\x25\x96\x23\x12\xcf\x2e\xc2\xf0\x9e\xc7\x74\x9a\x61\xeb\x9e\xe7\x31\x97\x51\x3c\xb7\x75\xf6\x5a\x52\xec\x2b\x3f\x9f\xd7\x41\xce\x8e\x43\x72\x78\x48\xd2\x7c\x71\x8c\xaf\x13\x51\xe4\xb5\xda\x41\xd7\x4a\x26\x32\x05\x79\x5d\x05\x78\x91\x7c\xc8\x71\x86\xcc\x26\x72\x79\x68\xed\xf2\x90\x2e\xe2\x2e\x85\x24\xc1\xfc\x3b\x7d\x16\x75\xc8\xab\x5d\xec\xb7\x6f\x8c\x20\x9b\xfc\xc7\xa8\x3d\x3b\x30\x3a\x6d\x66\x0a\x0d\xd6\x83\x75\x37\x88\x3d\x34\x1f\xb0\x2e\x86\x03\xd6\xc6\x64\xc0\xe8\x82\xf8\xed\x35\x29\xa2\xf5\xde\x21\x4d\x80\xd8\x1a\x6b\x0b\xe2\xb7\x43\x5b\xa9\xea\x58\x2b\x9a\x53\xdd\xf6\x11\x85\x02\xdc\x2e\x58\x84\xac\xc5\x69\x7e\x89\x50\x99\x15\xfe\x71\xf9\xba\x18\xf6\xcf\xef\xa6\xe2\xa5\x1a\x79\xff\x33\x76\x49\x40\x5c\xb1\x6e\x1f\xa3\xc6\x94\x5d\x1a\xde\x6f\x39\xbb\xbe\xe5\xec\xd2\x7b\x7d\x41\x02\x44\x13\x3f\xa2\x5d\xd9\xa6\xd1\x71\xcf\x18\xa7\x09\x72\xcb\x61\xf3\x2e\x1b\x99\xe7\x82\x74\xbf\x40\xcb\x3e\x3b\x89\xc6\x8d\xc0\xfe\x56\xca\x64\xbc\x2e\xb9\x85\x59\xfc\x51\x31\xfb\xe4\xd5\x3c\xe6\x73\x74\x9e\x8d\xc6\x43\xf9\xec\xb9\xcd\x1c\x97\x8f\xfc\xe3\x72\xcb\x5c\x17\xb2\xf3\xdd\xe5\xb8\xe0\xe3\x2f\x50\x1f\x07\xbb\x71\x42\x06\xd1\xfc\x2e\x8e\x47\x51\x7c\x7d\x9f\xce\x46\x54\xce\x5b\x1b\x44\x73\x77\xba\xc0\x81\xbd\x4a\x6b\x0f\x44\x01\xe1\xb7\xd3\xf0\xdb\x69\x98\x6d\xec\x38\x46\xb4\xc9\x23\x76\xdd\x61\x98\xf5\xdb\x49\x26\xbe\xe6\x2c\xcc\x01\x6e\x7b\x14\xea\x1e\x9b\x0f\x07\x8a\xbf\xd9\xbd\xbe\xd9\xbd\xf6\xdb\xee\x25\xf5\x95\x91\x77\xf4\xff\xdd\xaf\x29\x2e\xae\x6a\x8b\x2f\x80\xdf\xae\xb6\x78\xc3\xf9\x0d\x19\x54\x25\xc2\x8e\xd4\xc3\x2e\xb6\x32\xc3\x4e\x66\x54\x1f\xcf\xed\x62\xaa\x94\x76\xd9\x60\xc6\xbf\x9a\x59\xcc\xea\xaa\x7e\x2f\x0e\x0f\xed\xc5\xe6\xaa\xdf\x51\x4d\xd5\xef\xc6\x92\xdf\xf2\x58\x86\x0c\xba\x0b\x8a\xed\x85\x60\x91\x4e\x9d\x75\x2d\x9b\xf6\x1d\x98\xd7\x24\xe4\xb7\x6c\x5f\xf3\x37\x31\xc3\xb0\x3f\x89\x68\x07\xed\xb2\xee\xb1\x6f\x27\x0a\x0d\x7f\xe2\x70\xb6\x3d\x4e\x44\xf3\x8d\x67\x89\x74\xd4\xec\x78\xad\x52\x9d\xf6\x0c\x81\x1a\xd4\x96\x43\xca\xe6\x1b\x11\x78\xd9\x51\xa2\xb9\xdc\x37\xb4\x5d\xb6\x1e\xed\x72\x33\xb2\x70\x18\xf6\x03\x94\x30\x1a\xd5\x56\xe9\xa1\x88\x04\x35\x3b\xb6\xd0\x6d\x27\xd1\xb7\x09\x6c\x36\x8b\x16\x5d\x2b\xec\xeb\x5e\x3b\x09\xf0\x1a\x7a\xd1\xc0\xb6\xa5\x1a\xd9\x7e\x63\x00\xc3\x55\x3d\x93\x67\x74\x51\x63\xbb\xb9\xda\x3f\xfe\x7e\xd5\x81\xb9\x5f\xad\xe1\xec\xc6\x79\x9a\x1c\xc1\x38\xee\x73\x31\xb4\x49\x75\x16\xe2\xbe\xd1\xc4\xec\xdb\x9f\x40\x2e\x04\x2d\x0b\xee\xa3\xf2\x54\x3f\x42\xe4\x02\xd3\x88\x70\x81\xa8\xce\x8d\x94\x4b\x6e\x14\xc0\x9b\xeb\x67\x00\xc9\x1c\x49\x9f\xbf\x7f\x7f\x78\x68\x53\xaf\xf0\x44\xb8\x10\x01\x58\x7a\xa8\x80\x51\xb7\x55\x6f\xc5\x1b\x0d\xad\xe7\x71\xdc\xfb\xbb\xc6\x44\x0e\xe7\xd0\x3e\x06\xd9\xfa\x38\x36\xbf\x70\xa4\x86\xf0\x11\xb6\xc0\xb1\x1f\x11\x06\x31\x41\xb4\x1f\xa0\xb3\xc5\xb4\x0f\x03\x18\x4b\x07\xa6\x1a\xfe\x96\x44\xe1\x05\xa2\x47\xfa\x8f\xe4\x48\xc8\xa2\xd8\x6f\x1c\xe5\xce\xca\xe7\x29\xbc\x34\xce\x3e\x87\xd1\x96\x4b\x8a\xbc\x4c\x0a\x1e\x0d\xc6\xd7\xd7\xf9\xaf\xe3\xf1\x01\x72\x29\x9a\xe2\x84\x21\x6a\x37\x0d\x39\x9c\x43\x4c\x2c\x03\xdb\x00\x29\x89\x7d\x53\x17\x8b\x4f\x35\x89\x45\x6a\x2c\x0b\xc6\x71\x88\x7d\xc8\x11\x22\x5f\x3b\x69\xba\x59\xc3\x58\x58\x31\xb9\x18\xe2\x76\x20\xfe\x57\xbb\x62\x7f\xc9\x5b\x1d\x89\x49\x1d\x25\x88\x2d\xe2\xdd\x64\x2b\x9d\x80\xae\xa3\x4c\xf9\xdc\xf8\x21\xa1\xed\x67\x0b\x73\x97\xfe\xe2\x8a\x14\xcd\x99\x18\x3b\x34\xdb\xdd\xe9\x66\xcf\x93\x22\xc4\x02\xc6\xbe\x41\x30\xfd\x69\x18\x9d\xc1\x52\xce\xbe\x2e\xec\xcd\xd0\xbb\xf3\x95\xe0\xd3\x5f\xbb\x2d\xf0\xc4\xbe\x37\x10\x8e\x3e\xb9\x47\x3c\xff\xee\xf3\x7c\x4e\x7f\x15\x53\x92\x63\x11\xde\x41\xd8\x51\x26\xa2\x7a\x77\x76\x65\xbc\xc4\x24\x88\x2e\x1d\xe2\xc9\x3f\x0e\x50\x98\xa0\x5e\x43\x5b\x09\xa3\x43\x3c\xf9\x87\x68\xbb\x2a\xb6\xf5\x74\xdb\x04\x85\x13\xe5\x90\x74\x40\x3c\xfe\x4b\xba\xfe\x00\xb8\x79\xca\x07\xd4\x53\x21\x9e\xf9\x78\xf0\x19\x1c\x16\x92\x6b\x4b\xf6\x36\x59\xda\xf9\x70\x73\x41\x18\xef\x45\x41\x6e\x07\x90\x11\x1d\x5f\x5f\xdb\xfc\x1f\x0f\x01\xce\x46\xa2\x18\x11\x7b\xc5\x65\xbe\x97\x52\xe4\x33\x69\x5f\xdc\x73\x3f\xcb\x88\x00\xbe\xb0\x4b\x79\xe9\x36\xee\xe7\x01\x0a\x11\x43\x3d\x3e\x60\x9a\xf2\x3b\xf0\x36\xae\x5f\x19\x19\xd5\x39\x7f\x15\x89\xb6\x99\xc8\x4c\x1a\xee\x4a\xbb\x93\x10\x26\xb3\xfe\x1c\x25\x09\x9c\x96\xef\x67\x6b\x09\xd6\x3c\xda\xc5\x20\x47\x0b\x86\xc3\xd2\x80\xfd\x28\x66\xa2\x18\xff\xed\x6c\x6a\x03\x5d\x74\x8d\x13\x21\x35\x02\x0f\x9b\xf7\x0c\x58\x89\xa9\xfe\x22\x67\xfa\x52\x8e\x95\x0c\x69\x9a\x53\xe4\xf5\xf5\x2a\x05\x2b\x79\x76\xe0\x88\xfc\x24\x24\x15\x8c\x92\x21\x4c\x3d\x7a\x7d\x3d\x1a\x83\xd0\xb3\x0d\xe9\xc1\xb1\xa9\x73\x00\x0f\x0f\xa1\x72\x83\x3b\x08\xdd\x6a\xe7\x4c\x91\xc8\xbc\xa7\xab\xec\x64\x62\xc0\x32\xa7\xc3\xd1\xaf\x34\x49\xc3\xd2\x12\x39\xa9\x74\x9b\x83\x9a\x32\xca\x4b\x68\x90\x03\x4d\x37\xab\xce\x0b\xe4\x90\xff\xe8\xf3\xd9\xe2\xbe\x0f\xc3\xf0\x0c\xfa\xe7\x9d\x28\x43\x74\x3d\xa2\x28\xc0\x14\xf9\xac\x3f\x83\x24\x08\xbf\x0a\x67\x2f\xcf\xf9\x0c\x4d\x22\xaa\x9f\x17\x44\x0d\xe4\xac\x4c\xd2\x38\x3c\xb4\x8b\xb4\xe2\xe4\xf2\x83\x2b\x7a\x1f\x1e\x96\x1e\xb8\x01\x16\xf7\xa9\x0f\x0a\xcc\xd7\x39\x1e\xaf\xaf\x6d\x31\x4f\x44\x3f\x20\x18\x60\x82\x92\xc4\x76\x0c\x21\x53\x22\xc4\x56\xcc\xd6\xf5\x21\x2b\xe8\x95\x9d\x15\x72\x61\x70\x01\x89\x8f\x8c\xfe\xa9\xe3\x14\x25\x90\x36\xdb\xbb\xb2\x9e\x09\x4a\xaa\x42\xba\x5c\xaf\xb3\x28\x62\x09\xa3\x30\x3e\xca\x1a\xa9\x37\x99\x92\xad\xce\x3f\xfc\xce\x96\x31\x9b\x05\x9c\x70\x11\x6d\x9b\x45\x54\xda\x5f\x2a\x77\xe9\x14\xb1\x17\x26\x24\x8e\x2d\xfc\x65\xa9\xab\xbe\x74\x2a\x37\xdc\x5b\x38\x47\xce\xaa\x28\xaf\x23\x50\xdb\xea\x40\x6e\xc4\x6c\xab\x5a\x0f\xea\x9a\x1d\xe4\xf2\x67\x26\x01\xd6\xb5\xe3\x77\x82\x1b\xaf\xf0\xfa\x95\x55\x4d\x6a\xd7\xb5\xeb\x05\x0c\xd0\xdb\x5a\x78\x58\x58\xf8\x8e\xfb\x54\x2c\xad\x86\x04\x39\x36\x2d\x6e\x53\xce\xc3\x45\x23\x73\x35\xcd\x2b\x81\x8a\xef\xd2\xdf\xce\xd6\x52\xfe\x2e\x6e\xb9\x36\x2c\x74\x1e\x05\x28\xec\x4f\x28\x9c\x8a\x39\x36\x09\xc1\xfd\x4a\xbb\x35\x2f\x8f\xd0\x15\xbb\xab\x74\x03\xfa\x14\x51\xdf\xfa\x48\x21\x49\x26\x11\x9d\x67\xfb\xae\x5e\x5c\xb6\x9d\x55\x01\x35\x0d\xc1\xf4\x05\xd4\x48\x51\x3f\x8b\x1e\x6d\x0a\x2a\x5d\xdb\x67\x27\xaf\x45\xcd\x63\xe6\xb0\xb4\x1e\x36\xef\xd2\xee\xc2\x75\x81\xd1\xa5\x90\x0d\xe5\x26\xa8\xcf\x5a\xd0\xd7\xad\xd6\xf7\xfd\x86\x5d\x81\xdd\x84\xf1\xc3\xb7\x5f\xaf\x7e\x29\x22\x98\xa2\xdf\x16\x98\x72\x06\x12\x20\x14\xcf\x11\x9d\x56\x7c\x08\x6e\x78\x42\x22\x6d\x68\x4c\x8a\x36\x4d\xea\x05\x91\x2f\x18\x61\x41\x35\x05\xc3\xd0\x1e\xb9\xae\x4b\xdd\xdf\x16\x88\x2e\x4f\x51\x88\xb8\xe4\xf9\x3c\x0c\x6d\x2b\xf1\x29\x8e\xd9\x48\xda\x2b\xd5\xa0\x63\xcb\x19\xeb\xac\x1a\xff\x73\xfa\xee\xad\x1b\x43\x9a\x20\x2e\xc0\x40\x06\x13\x94\x99\x39\x13\x47\x24\xcf\xc8\xe6\x02\x8b\x7a\x2f\x03\x3d\x45\xf6\x6d\xa2\x22\x47\x04\x22\x8c\x0b\xc3\x36\x31\x0c\xeb\x23\x02\xe8\xd8\xf1\x9e\x96\x83\xb6\x2b\xb7\x3f\x2a\xaf\x7b\x43\x7e\xeb\x65\x86\x54\x95\xd8\xea\x8d\xe3\x94\x43\xad\xbf\x7c\x22\x9c\x32\x7a\x2c\xea\x85\x91\x0f\x19\xea\xfd\xf7\xfd\x95\x6a\x9d\xfe\xf7\x17\xc7\x54\x2c\x11\x57\x65\x77\xb7\x2d\xb8\x60\xb3\x7e\x4c\xa3\x0b\x1c\x70\x56\xa8\x4e\x09\xe3\x49\xf9\x68\xd1\x13\xc8\x9e\x08\x2a\xb3\xf9\xd9\x9e\x05\xdf\x20\x37\x8c\xa2\xf3\x45\x6c\x67\x67\x4d\x8e\x3c\x47\xd8\xa3\xa9\x27\xa4\x95\x0d\xfa\x2a\x21\x39\xc2\x30\x9a\xbe\x92\xc8\xfc\x71\xf9\x71\x19\xa3\x6c\x54\xcb\x71\x27\x38\xe4\x00\x21\xef\x69\x31\x6a\x9d\xa2\x38\x4a\x30\x8b\xe8\xf2\xc8\x72\xae\xaf\xad\x05\xd6\x0c\xc0\xf3\x3c\xe4\x1c\x50\x99\xff\xc5\x6c\x67\xd8\xb5\xb3\x15\x43\xde\xd3\x2c\x1a\xc9\x90\x81\xd0\x01\x71\x13\xc4\xef\x34\x1c\x93\x42\x01\xf9\x41\xe0\x56\x0a\x1a\x36\x73\xf8\x1d\xa6\x95\xfa\xb3\x6e\x23\x6e\x56\x30\x99\x42\x51\xc2\x22\x8a\x34\xb1\xdf\xb9\x96\xb3\x41\xb5\xc4\xea\x54\x4b\x8d\x1a\xc4\x3a\xa0\x67\x14\x4d\xd6\x7b\xf4\xdf\x88\xc3\xfc\x4c\xd1\xe4\x63\x94\xf1\x17\xe1\xb7\xc0\x0a\x4e\x0a\x02\x5b\x42\x2b\x62\xa8\x20\x5e\xab\xb9\x7a\x08\x48\x3f\x76\x48\xa7\x88\x79\x2c\x23\x75\xe3\xa9\x0b\x19\xa3\xf8\x6c\xc1\x50\xe2\x72\x68\x0e\xc4\xbb\x05\x0d\x45\x98\x99\x34\x83\xa6\xea\x66\x84\xd4\xa7\x92\x59\xb4\x08\x83\x9f\xf5\x43\x2e\xfd\xb9\x31\x45\x17\x88\x30\x75\x61\xb7\x1d\xd0\x34\xa9\x6c\x97\x49\xfb\xbc\xde\x33\x62\xfb\xe3\x88\x14\x62\xa1\x6c\x3d\x19\xc7\x49\x4b\x1f\x2d\x78\x3e\xe0\xe4\x13\x99\x47\x01\x9e\x60\x14\xbc\x41\x13\xf6\x22\xc4\xfe\xb9\x98\xd9\x3d\xf5\xfe\xf5\x94\x44\x14\x05\xb6\x01\xb9\xf1\xf6\xd5\x15\x43\x94\xc0\xb0\xf6\xf5\x0c\x26\xcf\xc5\x72\xfe\xac\x3c\x5a\xeb\xdb\xbc\x8c\x2e\x49\x18\xc1\xa6\x4f\xbc\xc1\xe4\x3c\xf3\xe3\x28\xb4\x49\x9b\x66\xaf\x40\xbc\x67\x67\x0e\x41\xc8\xbd\x9c\x61\x7f\x76\x78\x38\xc8\x7f\x5c\x5f\x23\xd7\x67\x34\xfc\x1b\x5a\xf2\x3f\xe7\x88\xc1\xbf\xa1\x25\x1f\x35\x83\x2a\x0f\xde\xfc\x7c\x16\x42\x72\x2e\xd8\x09\xe7\x64\xcf\xf5\xda\xdb\x96\x9c\x8c\xc5\xfb\x69\x5c\x21\x23\x43\x97\x3e\x75\x08\x64\xf8\x02\x71\xba\x4c\xcb\x78\xa9\x6b\x2e\x36\x9e\x6c\x95\x9a\x38\x32\xdb\xf2\x71\xf2\x79\x04\xaa\x89\x98\x49\x11\x69\x48\x1a\x22\x98\x77\x6f\x60\x30\x6d\x1c\x88\xe8\xca\x5c\xb7\xb4\x91\xf0\x84\xd0\xd5\x97\xe7\x0a\x5d\x2a\x02\x1c\x91\xf1\x01\xf3\xd0\xe1\x21\xea\xe9\xad\x1e\x4d\x94\x73\x50\x61\x1a\xa9\x26\xbc\x34\x8b\x76\xff\x44\xc3\xc2\xe4\xf0\xc4\x0c\xc9\x94\x3a\xcb\x29\x62\x1f\x04\xc1\xdb\x0e\xa0\xe6\xb3\x88\xf1\xee\x0e\x80\xde\xb1\x58\x16\x2c\x2b\x7e\xd9\xd4\x51\x4e\xc2\x7c\xa1\x3e\xd1\xf0\x1f\xd2\x50\xca\x3b\xd8\x0e\x48\x3c\xe2\x7e\x56\x51\xf7\xea\xdf\x5f\xb0\x4f\xa3\x10\x9f\x5d\x5f\xe7\xaf\xe4\x3f\x07\xcc\x83\x87\x87\x49\x1e\x9e\x6f\x46\xea\x87\x4e\x0e\x51\xcd\x97\xda\xa3\xb5\x7e\x3f\x1f\x48\xac\x08\x72\xfb\xf4\xe1\x8d\xd2\xda\xae\xa6\x88\xfd\x0c\x93\xd9\xd0\x76\xbc\xa7\x96\x05\x74\xeb\xe1\x2a\x86\x6c\x26\x98\xb6\xde\xfa\x29\x38\x83\x09\xfa\xf4\xe1\xcd\x10\xb9\xea\x2f\xa0\x92\x09\x0c\x91\xab\xfe\x02\x88\x5c\x0c\x91\x8b\xc8\x45\x0a\x46\xe3\xfc\x4c\x67\x19\x3a\xad\x67\x59\x24\x6d\x7f\x20\x83\x68\x6d\xe6\x31\x9d\x0c\xe6\x18\x90\xfe\xc0\x71\x00\x4b\xcd\x95\x2a\x30\x99\x75\xb0\xeb\x53\x56\xe7\x6b\x48\x0b\x6b\xab\xec\x67\x15\x42\x90\xc2\x44\x96\x19\x41\xa7\x7c\x3b\xb2\xc4\xee\xf6\x45\x21\x73\x1b\x29\xad\x65\x7f\x20\x18\xed\x03\xcf\x3a\xb2\x1c\x80\xd2\x34\x3b\x1e\x58\xf1\xb0\xcb\xce\xa4\xa2\xc0\xd7\x60\x02\xf8\x09\x26\xec\xc7\x28\x32\x72\xd7\x55\xa1\x12\x8e\xf0\xae\x16\x6b\x05\x01\x93\x4c\xc6\xa0\x9e\xf5\x9c\x33\x14\xa2\x0f\x14\x06\xa7\x6f\xe1\x1c\x3d\xd3\x0f\x86\xe6\x71\xc8\xb7\x86\xeb\x87\x51\x82\x12\x1d\x0a\xdd\xcb\x1e\xd8\x16\xb4\x9c\x83\x09\x3f\xd6\x3c\xc4\x05\x5e\x44\xd8\xab\x10\xf1\x8f\xfe\x19\x1d\x1e\x5a\xcf\x25\x62\xd4\x07\xfe\xec\x54\x5a\x69\x1f\x51\x94\xda\xfa\xeb\x52\x97\xe4\xac\xb8\xcc\xc9\x6c\x04\xa8\xa3\xf5\x7c\x84\x0b\x3b\xc4\x3d\x8b\x82\xa5\x0b\x83\xe0\x15\x3f\xbe\xde\x70\x51\x93\x08\x2b\x26\x67\xc2\x16\xa0\x4e\xbd\x51\x22\xa7\x0d\x35\x02\x45\xf3\xe8\x02\x35\x0e\x62\x18\x2e\x8a\x0e\x85\x5c\x10\x6d\x67\xc1\xac\x93\x3f\xf0\xc5\x52\x14\x8f\x9d\x63\x2e\x4e\xb7\x8b\x17\x31\x62\xd5\x91\x49\xd4\xd2\x9c\x5e\xb7\xfe\x7d\xbd\xf4\xc2\x7d\x92\x63\xf2\x17\x18\xdb\xa5\x2b\x83\x71\x49\x21\xc5\x3b\x8e\xfd\x45\x5e\x6d\xee\xaf\x58\xda\x9f\x24\xe3\x2f\x8e\xcb\xd0\x15\x7b\x11\x11\x26\x7c\x1a\x9d\x83\x17\x51\x80\x7e\x11\x20\xb8\x73\xe1\xf2\xf8\xc6\x5b\x29\x61\x7f\x58\x14\x0c\xd5\x1d\x44\x47\xce\xab\x9b\xc8\xaf\xf0\x02\xca\x4b\x94\xa5\xb3\x46\xc9\x30\xfa\x91\x65\x62\xc7\x9a\x8b\x82\xc0\x66\x73\xf3\x87\xfb\x6b\x62\x8d\x55\x9a\xc2\x23\xcb\x91\x89\xa5\x2c\xba\x38\x5b\xb6\x1a\x55\x34\x94\xff\xd4\x8f\xb4\x84\xf3\xb0\xd5\x48\xa2\xa1\xfc\xa7\x7e\xa4\xab\x96\x03\x5d\x89\x71\xae\xaa\xc3\x48\x92\xab\xbb\x05\x58\xbe\x3e\xe8\x86\x25\xe2\x72\xb2\x7d\x90\x89\x8c\x3f\x62\x12\x60\x32\x4d\x86\x23\x61\xa3\xb7\xc6\xe9\x56\x71\x45\x86\x01\xa9\x31\xb6\x68\x65\xca\xed\x5b\xef\x97\x44\x90\x64\x45\xd3\x9e\x77\x43\xe4\xe2\xce\x6f\x23\xc6\x24\x2a\x2c\x5a\x5c\x5b\x11\xb9\x70\x6c\xeb\xc5\xbb\xb7\xa7\x9f\xde\x7c\xfe\xf4\xfa\xf3\xcb\xd7\xa7\xcf\x7f\x7c\xf3\xea\xf3\xf3\xb7\x2f\x7e\x7e\xf7\xe1\xf3\xe9\xab\x37\xaf\x5e\x7c\x7c\xfd\xee\xad\xe5\x68\xe3\xed\x06\xde\x0d\x84\xe7\x4c\xce\xbf\xa1\x27\xa8\x46\x71\x4d\x7e\x43\x95\x2c\xd5\xb6\x66\x6c\x1e\x5a\xce\xe8\x78\x0c\x42\xaf\x9a\x25\x42\x72\xfa\x8c\x03\x3f\x13\x91\x00\x39\xef\x06\xc8\x49\x41\xe2\x95\xf8\x3d\x94\x77\x6f\xce\x15\x5d\x75\x71\x4e\x6c\x0b\x27\xf2\xee\x5c\x86\x81\x79\xa1\x8d\x4c\xde\xcd\xc4\x20\x86\x08\x7c\xb6\x60\x2c\x22\x87\x87\x27\x5e\xfe\xcb\x10\x53\x32\xd9\x53\xdc\x66\x8c\x54\x18\x36\x3a\x3c\x64\xfc\x06\x6c\x48\x9b\xbc\x0d\x9f\xb6\x93\xe6\x12\xc3\xb4\xda\xc2\x39\x10\xe2\x42\x61\x68\x8f\x00\xa6\xb8\x7e\xa5\xb9\x93\xa6\x00\xdf\x3e\x1e\xf2\x39\x16\x60\xbc\x97\x7d\x88\x29\x07\x01\xb3\xe9\x14\xb1\x53\x4d\x70\xb6\xd6\x63\xdc\x1b\x1c\x30\xba\x5c\x51\xcf\xc2\xc9\x8b\x28\x0c\x61\x9c\xa0\xc0\xc2\xa4\x47\x0e\x0f\xef\x11\xd7\x78\xc8\x2f\x81\x2c\x92\xe6\x7c\xdb\xd1\xf9\x60\x07\xa9\xb4\x8e\x21\x67\xa5\xa5\x47\x9a\xda\xce\xe1\x21\x69\xc2\xb1\x38\x6d\x69\xd3\x69\x3b\x8f\x16\x09\xe2\xa2\xbf\x05\x12\x07\xac\x6f\xb6\x88\x2d\x80\x1b\x8e\xe5\x1a\xdd\x22\x5d\x73\x3e\xd7\x7e\xb6\xb9\xa5\xfa\xf2\xfa\xb3\x7c\x7b\xd6\xc4\x16\xb1\x74\x5a\x4f\xd6\x5b\x8b\x78\x1b\x51\xc7\xaa\xc1\x5e\xa4\x9f\xce\x63\xc8\x8e\xa6\x88\x69\x4f\x78\xfd\xdd\x35\x4d\x42\x7c\x96\x1b\x8a\xe5\xa3\x20\x09\xfb\x15\x3b\x47\x1e\x9e\x73\x3b\xbc\x31\x2c\xdb\x18\x4d\x5c\x54\x98\xe4\xbd\x26\xbb\x61\x9d\x31\x50\xed\x2a\x4e\xf7\xc2\x2d\x80\x9a\x06\x27\xf1\x71\x83\x63\x29\x3f\x1c\xde\x0e\xe6\xed\x42\xc7\x85\x0b\x36\x43\x84\x71\x51\x09\x05\x42\x7e\x4f\x0e\xee\x15\x63\x6d\x09\x97\xcf\x4b\xe6\x49\xe2\x80\xd0\x8d\x26\x13\xdb\xe2\x44\xfa\x31\x53\x6d\x70\x7a\x4b\x0f\x42\x97\x1f\xb8\x35\x6f\xb6\x56\xc2\x5d\xc2\xf0\x3c\x53\x83\xd6\x92\x51\x88\xcf\x0c\x67\x43\xe1\x1c\xf2\x07\x1b\x94\xcb\x73\x2e\x2e\xb7\xe4\x57\x8d\x86\x62\x7e\x59\x10\xb6\xca\x1e\xe6\x5b\x3d\x1b\xc6\x31\xfe\x76\x67\x30\x79\x77\x49\xb2\xf9\x42\xbd\x50\xf2\xac\x74\x64\xfe\xae\xa2\x02\xf9\x01\x6c\x65\xd5\xd7\xf7\xd6\xe4\x68\x92\xcc\x45\xf5\x41\xe5\x5b\x03\xc3\x7e\x35\x41\x6b\xab\x7e\xcd\xed\x32\xaf\x44\x91\xfb\x55\x3b\x3d\xdf\x95\x05\x58\x6a\x1b\x61\x16\x27\x95\xd1\xf5\x2a\x61\x90\x61\xbf\x27\x83\x96\x8c\x8b\x10\xbf\x61\xcd\x70\x52\xe2\x89\xc5\x90\x2a\xe1\x32\x07\x18\xa0\x07\x75\xc1\x55\xd4\xb3\x9a\xf0\x68\x33\xcf\xc2\xf3\x58\x4a\x2c\x92\x40\x1d\x4c\x6c\x79\xab\x76\x9e\xad\x89\x68\x94\x40\xd2\x52\x0c\x52\x39\x42\xc9\x88\x49\x4a\x9d\x21\x1a\xb1\xb1\x47\x25\xa7\xd7\x6b\x20\x2e\x3e\xc4\x7d\xa3\x7e\xca\x97\xf3\xff\x9f\xbd\x77\x6f\x6e\x1b\xc7\x12\xc5\xff\xf7\xa7\x48\x58\xb9\x2e\x62\x1a\xa6\x93\x9d\xad\xad\x7b\x35\xcb\xe4\xe7\xd8\x4e\xc7\xd3\x7e\xb5\xed\x4c\x77\x8f\xae\xd6\x4d\x93\x90\xc4\x98\x22\xd5\x20\x64\x5b\x91\x79\x3f\xfb\xaf\xf0\x24\x00\x92\x7a\x98\x72\x3a\x4e\x7b\xb6\xb6\x63\x01\xe0\xc1\xfb\xe0\xbc\x4f\x10\x0e\xe3\x14\x89\xba\x0f\xe7\x47\xae\xf1\x8d\x78\x2c\xa2\x2c\xf4\x67\x62\xf9\xfe\x15\xa3\xdb\xce\xcc\x7e\xdb\x3a\x8c\xd2\xf4\xdf\xce\x96\x81\x0a\x09\x28\x60\xcd\x33\xc5\xa4\x29\x0d\x10\x8a\xa2\x28\x6e\xe2\x3c\x36\xf8\x3f\xd6\x54\x61\x03\x98\x5a\x05\xf5\xa2\x1d\x18\xf8\x41\x3e\x4d\x43\xda\x99\x1b\xdc\x06\x31\x61\x58\x35\x47\x84\x24\x28\x02\x2e\x80\xb4\xd3\x53\x9c\x8d\xe2\x1c\xb9\xc8\x7f\x9b\x23\x72\x11\x8f\x50\x36\x21\x2e\x72\x09\x80\xaf\x01\x00\x30\xf1\x91\xff\x96\x8b\x03\x10\x65\x2f\x84\x6a\x48\xfc\x62\x86\x90\x25\x52\xdc\xb9\x62\x41\x78\x39\xf1\x49\x71\x07\xa5\x4a\x2c\xb1\x97\x17\x84\x24\xbe\x41\xe5\x47\x40\x31\xe8\x8b\x5a\x7a\x14\xb7\xbb\x01\x4c\xc0\x06\x1b\xc5\xbc\x9e\xdf\x69\x71\x82\x3d\x61\xdd\x05\x3a\x48\xba\xa7\x3a\xb4\xa5\xb1\x59\x9e\x94\x68\xbd\x73\x45\xa8\x4c\x26\xee\xf1\x53\xf9\x97\x52\x6b\x6d\xff\xdf\xed\x57\xdb\xd0\x71\x80\x71\xb4\x3c\x7a\xdd\x10\x83\xd2\x00\xd8\x97\xc1\x36\x05\x40\x1e\x61\x93\x03\x29\x3f\xe3\xf2\x37\x17\x40\x69\xe8\x44\x7f\x39\xce\x0f\xaa\x19\x28\x97\x01\x70\xe9\x9b\x21\x8a\x47\x5a\x7d\x51\x2c\x34\xbe\x98\x8b\xe1\x56\xe0\xbd\xf4\x30\x77\xfc\x11\x92\x32\x39\x8a\xf1\xd1\xe2\x8b\x9f\xae\x7e\xf1\x53\x88\xd6\xe6\xe2\x8a\xfd\x59\xf1\x8f\x2a\x57\x77\xba\x73\x76\x71\x40\x79\xb8\xf3\xcb\xfd\x63\xca\xdc\xed\x39\xf4\x55\xc2\xde\x38\xc0\x84\x2d\xb9\xbf\xfd\x3f\x97\x6e\x37\xd8\xfa\xb2\xb3\xf5\xef\xd7\x5b\xff\xa7\xa7\xfd\xbd\xd5\x9b\xbd\x86\xff\xf5\x1f\x85\x56\x0b\xde\x81\x57\xdb\x42\xeb\x69\x74\x74\x7c\x7e\xba\xb3\xbb\x6f\xf7\x92\x32\x73\x7a\x7f\xfb\x7f\xfe\xdf\xaa\x5d\x88\x69\x05\x3e\x3f\xad\x49\x6d\x0c\x44\xfd\xd0\x4a\xac\xc2\xcf\xdf\x87\x0c\x97\x97\xcb\xe5\x9c\x4d\x2a\xaf\xcc\xe5\x18\xa3\x9b\x38\x9b\xe4\x9f\xce\x0e\x19\xa1\x47\x2a\x35\xa7\xf4\xa0\x0a\x92\xae\x5a\x63\x76\x3c\x0f\x99\x75\x34\xc1\x17\x93\x6c\xf4\x31\xca\x87\x2e\x28\x4a\x87\x5d\x25\x22\xe5\x70\x84\xf5\xe2\xe6\xa6\xf1\xd3\x95\x28\x5e\x1f\xbb\x9f\xc2\x05\x63\xd3\x49\x0b\xf6\xd0\xb6\x78\x54\xd9\x73\x0a\x66\xa9\xf0\x3f\xb6\x1e\x49\x58\x7d\x51\x1d\x00\x65\x63\x21\x50\x77\x18\xd6\x49\x55\x28\x60\x2e\x90\x86\x4c\xd2\x2c\x4b\xe9\xb0\xad\xa2\x90\x12\xa0\x09\x97\x66\x9f\x33\xef\x08\xf8\xf2\x4d\x59\x5d\xde\xf7\x59\x01\xac\xdd\xf0\x2d\xe9\x21\x02\xdd\xd7\xbd\xee\x9b\x1e\x2c\xc3\x09\xfb\x89\x77\x15\xa7\x5c\x9f\xa6\xbd\xa3\xca\x77\x9d\xbc\x6b\xd8\xe0\x1a\xb1\x65\x87\x40\x19\x8e\xb8\x04\x80\x17\x01\x60\xc1\x95\x3b\x58\x1d\x79\x39\x06\x4b\xbc\xc9\x56\xb1\x4b\xd9\xdc\x9e\x03\x36\x78\x9c\x4f\x3f\xd8\xdc\xe4\xf8\x5e\x2c\xb1\x1f\xd4\x0a\x16\x40\x41\xc9\xdd\x73\xc2\x37\xdd\xa4\x37\x8c\x5f\xf7\xf7\xaa\x77\x8d\x90\xd0\x48\x02\xfd\xd5\xd7\x7f\x34\x7c\x38\x8c\x73\x92\xe1\x29\xac\xad\xac\x72\xde\xe3\x6c\xcc\x4e\xaf\xa3\x6d\x90\xc4\x05\x66\x7f\xfc\x94\x8b\x78\x37\xe5\xab\x23\xa6\xd3\xcf\xf0\x28\x60\x45\x04\x6c\xa0\xcd\x4d\xf1\xb0\xf9\x7e\x2a\x9e\x47\xf3\xce\xd8\x17\x89\x2e\x24\x11\xaf\x53\x14\xe7\x63\x26\x84\x70\x64\xd6\x7f\x98\x82\x42\xa0\x19\x9c\x8d\x74\x25\xa3\x2f\x97\xa1\xf2\x78\x42\xe3\x51\xd6\x7f\xa8\x77\x39\x28\xdf\x64\xb9\x99\xfa\x0f\xab\x1d\x52\xbf\xe9\xdd\xe5\x3e\xfd\xee\xef\xff\x23\x9e\x68\xf1\x4d\xe1\xbe\xf3\xb7\xef\x5f\x81\xdf\x01\xfd\x66\xee\x17\xf2\x51\x37\xbe\x28\xea\xb0\xa9\xa5\x14\x97\xd7\xcf\x9f\x15\x10\x19\x38\x98\x2f\x8e\xc7\x12\xd1\x33\x79\xb0\xb4\x48\x91\x44\x28\x45\xbd\xff\xfd\x77\x4d\xa3\x69\xc6\xde\x90\x97\x16\x97\xc1\x2d\x52\xd8\xc5\x30\x60\x66\x42\xfc\x50\x24\x7e\xe0\xa1\x3b\x14\x52\x26\x5b\xe2\x32\x7e\x33\x92\xcd\x4d\xee\xef\x21\x5e\x4f\x04\x47\x74\x1b\x3b\x49\xf7\x4d\xaf\x80\x84\x45\xd2\x48\x0b\x68\xcc\x01\xc0\x97\x52\xf1\x4a\x1f\xdb\x52\x92\x5d\xc8\x16\xa7\x01\x0e\x46\xb9\xa9\x6b\x93\x75\xf7\xf7\x2a\x7c\x48\xd7\x51\x0f\xac\x03\x1d\xfe\x0c\x3a\x3d\x35\x0d\x4a\x60\xf8\x6f\x05\xd3\xe9\x38\x95\x48\xba\xa8\x9b\xf6\x98\x23\x22\xfd\xc3\x63\xe3\x06\x90\x74\x53\xc6\x2c\x14\x14\xcf\x09\x22\xdb\x0a\x24\xa8\x13\x52\x26\x26\x1f\x32\x1d\x9e\x8b\x38\xdb\xa6\x3a\xc2\x5e\x14\x6e\x6e\x0a\x67\x16\xfa\x03\x6a\x55\x7c\xd8\xfa\x43\xee\xfc\x3f\xe7\x07\xf9\x03\xe8\x4d\xd5\x6c\x2d\xe2\xc2\xb9\xa4\x1f\xa8\xdf\x5a\x48\x10\x2d\x9e\xbb\x44\x61\xfc\xd7\x52\xcc\x01\x10\x41\xb5\x5e\xbe\xde\xa8\x98\x8b\x21\x42\xe2\x74\x90\x33\x5a\xba\x53\x93\xb4\x23\xca\xc2\xdc\x73\x40\x27\xf0\x5f\xbe\x29\xe8\x11\xd4\x22\xcb\xf3\xb4\x2d\x5c\x73\x7a\x1c\x8c\x6a\x3f\xa4\xe7\xca\x9b\xa4\x3c\x27\x55\x95\x12\xda\xdb\xb9\xd8\xd9\xdd\x3f\xbe\xd8\x3f\xbb\x3c\x3d\x3b\x38\xda\x39\xfb\xcd\x01\xf4\xba\x1a\x90\x42\x07\x48\x41\xec\xef\xf4\x20\x67\x09\xea\x6c\x6f\x53\x82\xfa\xc5\x7f\xfb\x2f\x5e\xcd\x98\x96\x8b\x1b\xbe\xc5\xfd\xa9\x9b\x82\xe2\xf7\x0d\x79\xe0\xf5\xf1\x5a\x2c\x07\x5b\x95\x9c\xc9\x5c\x73\x3f\xf1\x06\x14\xa9\x06\x2c\xb4\x96\xe7\x79\x29\x9c\xb1\x07\x85\x1f\xe1\xce\xac\x28\x80\x10\xaf\xc6\x60\x96\xfa\x66\x4e\xad\xc4\xcb\x92\xe8\x5c\x10\x12\xb4\x7d\x79\x07\xf9\xe5\x55\xd9\xb9\xf4\x40\x39\x44\x49\x6e\x5f\xbf\x23\x9d\x6e\x0f\x40\xfa\xff\x35\x43\x29\x8d\x01\x4c\x6c\x9d\x33\x69\x5f\x61\x71\x04\xb3\x55\x77\x89\x6e\x92\x95\xeb\x45\x2d\xb2\x92\x80\xbf\x10\x65\x5e\x9c\xf6\x33\xd7\xa9\xb5\x0c\xea\xbc\x70\x7e\x50\x99\x5c\xde\xbc\x06\x00\xbe\x2c\xc3\x72\x5b\x68\xca\xc0\x05\x12\x4f\x80\x79\x74\x29\xe2\x12\xf7\xca\xd3\xe3\xfb\x8a\xab\xb4\x9e\xa0\xf1\x24\x1f\x3a\x10\x01\x28\xf8\x5e\xa9\x5b\x73\xc1\x86\xd2\x93\xd7\x8e\x63\xa3\x4c\xe3\x97\x8d\x90\x2b\xe2\xba\xf8\x6f\x71\x17\xf5\x5e\xfa\x3e\x01\x82\xe0\xac\xe9\x6a\x99\xfb\x68\xa2\x9e\x14\x14\x85\x7c\x91\x4d\xc3\x0e\xb5\xc8\x39\x0a\x70\x38\xbc\xbf\x77\x1c\x61\xb9\xe1\x38\x1b\x0a\x9f\x98\x4d\x87\x41\x3e\xe4\x56\x14\x95\x62\x65\x56\x01\x40\x99\x55\xae\x99\x0d\xa8\x7d\x99\x79\xa6\x88\x57\x33\x52\xfc\x5e\x94\x07\x91\x31\x81\xf4\x8d\x60\x06\x0d\xcc\x20\xc0\x62\xac\xdb\xbf\xe1\xa0\xe3\x6c\x2b\x3e\x5e\xb4\xe8\xbe\xee\x6d\x6e\x6a\xc5\xa2\x03\x56\xec\x2e\x0b\x17\xa6\xba\x99\x45\xf9\xfe\x6e\x50\xc4\x6b\xdc\x57\xe6\x1f\x21\xee\x2c\x5b\x63\x19\xba\x89\xf8\x2e\xb1\x50\x02\x11\xb4\x8d\xfe\xdc\x01\xdd\xca\xf4\x7d\x96\x25\x28\xa0\xc7\x5a\x25\xea\x43\xfc\xe3\xfb\x7b\xc4\x30\x41\xca\x06\x13\x22\xfa\x38\x75\xdf\xc0\xd7\x3d\x89\x44\x08\x45\x91\x7e\xaa\x3d\xb8\xe6\x76\x4a\x7a\xa6\x4e\x02\x51\x84\xc3\x20\x1d\x20\xb1\x6b\x82\xba\xe5\x02\x09\xd3\x12\xd1\xa0\x1c\x37\x48\x95\x52\x84\xcc\x16\x51\x50\x8a\x72\xba\xea\x46\xb0\xb8\xbc\x39\x3f\xd6\xd2\x44\xb1\xec\x5a\xdd\x97\x42\xec\x45\x43\x33\x45\x44\x22\x50\x64\xe9\xa7\x71\x14\x10\xb3\xa9\xe0\xf8\x7c\x54\x18\x3d\xab\x0d\x65\xa6\x4b\x1d\x02\x27\x93\x38\xea\x38\x77\xe2\x7f\x5b\xec\x3f\xff\x49\xff\x33\x95\x3f\xe5\xff\x9c\x52\xf4\xd3\xbd\x9b\xf6\xb6\x07\x50\x37\xdd\x7d\xf3\x5f\x7f\x3b\x0a\xc8\xd0\xc3\x41\x1a\x65\x23\x17\xdc\xbf\x16\x57\xc9\x75\xee\xd8\x1b\xfa\x8e\x74\xfe\xbe\x49\xee\xff\x37\x28\x15\x74\x6f\xfe\x0b\x14\xa0\xd8\xd0\x57\xb5\x8b\x7e\x70\xd8\x7b\xe1\xf4\xdc\x14\x52\x1a\x0c\x12\xa0\x51\xf1\x2e\x63\x3d\x51\x27\x2d\x40\x61\x1a\xb8\xd4\xb2\x06\xb5\xda\xb1\x5a\xee\xa0\x28\x96\x90\x0c\x2d\x69\xb2\xf2\x44\x24\x3f\x48\x49\x87\x7d\xe4\x7d\x38\x3f\x92\xa2\x20\xfe\x83\x33\xfa\x26\xeb\x9e\xfa\x2e\x13\xda\x16\x00\xcc\x88\xe0\x9b\xc5\x52\x2a\xa6\x39\x11\xeb\x2c\xb9\x21\xc5\x20\xa2\x82\x9e\x6d\xce\x3c\x8a\x25\x62\x0d\x18\x00\x69\xfc\x5b\x15\x17\xa6\x26\x58\x79\x00\xca\x4f\x0b\x75\x57\x24\x63\xaa\x3f\x7a\x65\x9f\x96\xf2\x73\x43\x9b\x7e\x75\xae\xe5\xfc\xe4\x40\xb8\xd4\x41\xcd\x9a\x3d\x3c\x66\x19\x7d\x4a\x58\x49\xb1\x56\x81\x49\x39\x94\x3a\x61\x89\xb3\xac\xac\xe2\x81\xa4\x3e\x98\x99\x64\x14\x98\x35\xdd\x14\x71\x83\x59\xc4\xad\x98\xe2\x23\xef\x4e\x9c\x8d\x47\xcc\x76\x5b\x16\xcc\x28\x1e\xe3\x3e\x67\x42\x27\xd7\x71\xe2\x88\x02\xc8\xd2\xce\xec\x6c\xff\x7c\xff\xa2\xd3\x9d\x09\x23\x3f\x5e\x53\xf4\x0a\xc8\x86\x98\x77\x66\xb4\xa0\x33\xa3\x4d\xcf\x3f\xed\xee\xee\x9f\x9f\x6b\x8d\xf3\x09\xcb\x06\xe3\x14\x3d\xb8\x7f\x76\x76\x72\xa6\x55\x31\xf9\x3f\x05\x54\x40\xd1\xaa\x43\x19\x58\x5a\x4a\x49\xe3\xa6\xa5\x8a\xef\xe2\x34\xdf\x1e\x67\x49\x1c\x4e\xb7\x83\x7c\x6b\x14\xa4\xd3\x26\x41\x33\x77\x89\x1f\xc5\x69\x3c\x8a\xbf\xa0\xa3\x2c\x42\xc9\x22\xc1\xb3\x54\x0c\xeb\x8f\x34\xa7\x12\x45\xc9\x00\x11\x4d\xc7\x78\x3e\x1d\x5d\x65\x49\xce\xbf\x52\x07\xa8\xb6\x0d\x05\x43\x18\x4f\x89\x15\x1b\x5e\x1a\x74\xa8\xc3\x55\x0b\x62\x0f\x71\xcb\x35\xe1\x08\xa0\x45\xb6\x2c\x00\xa5\x36\xd8\x5d\x15\x26\xb7\x94\xbf\x94\xc4\x7d\x5a\x68\x5e\xf9\x4f\x05\xb9\x1a\x62\xf5\xc0\xaf\xea\x3c\xc5\xeb\x88\xee\xef\xbb\x3d\x4e\xe8\xb8\x55\xe1\x74\xe0\xcf\x08\x1a\x8d\x13\x86\xf1\x20\x65\x52\x3a\x94\x97\x2f\x6a\x58\x7d\x4c\x49\xbb\x80\x45\xa6\xe8\xe2\x1e\x80\x41\x01\x40\x51\x6b\x17\xd5\xd8\xa7\x00\x6a\x3c\x6b\x42\x63\x4d\xfc\x37\xff\x20\xff\x6d\x67\x5a\xfe\x07\xf9\xe1\x07\x7e\x6a\x02\x9f\xcb\x4b\x4a\xb7\x5a\xd2\x7b\xa7\xff\xe8\xcc\x8a\x0d\xf2\xbf\xfe\xe3\x5d\x2a\x8e\xa0\x1b\x50\x26\xa8\x2e\x22\x2a\x3d\x45\x6c\x99\x82\x2e\xe9\xb1\x2c\x3f\x0b\x4e\x53\x5e\xbb\xff\x0c\xf7\xc1\x45\x9f\xba\x01\x00\x1d\x6d\x4c\x0d\x03\x6a\x3e\x60\x8b\x4e\x7a\xc0\x62\x5b\x02\x75\x98\x51\xe1\x96\x5b\xea\x38\x05\x64\x89\x8c\x4c\x43\x34\xf3\x88\xbc\x40\xd5\x9b\x86\xac\x08\xea\x22\x09\x93\x04\xec\x00\x4a\x79\x16\xa0\xf1\x5c\x11\x7f\xd6\x4d\x65\xa8\x75\xf1\x31\x3d\x5d\x0e\xa8\x1e\x2d\xbd\x11\x8b\x23\x4b\xe8\x21\x33\x4b\x01\x24\x6c\x16\x71\xcd\x71\x9b\x3b\x7e\xc7\x4a\xbe\xa5\xcf\x81\x42\x64\x26\x18\x99\x68\x71\x44\xd1\xa6\x08\x3f\xea\xce\x30\xca\xc7\x59\x1a\x7d\xc8\xf0\xcf\x13\x84\xa7\x67\x28\xcc\x70\xd4\xa9\x8f\x62\xad\xd9\x40\xd5\xa1\x2b\x26\x8e\x48\x81\xff\xd6\x4d\xbd\x53\x8a\x94\x63\x94\xfb\x89\xf6\x03\x48\x0e\x23\x70\x53\x4f\xd8\xeb\x1c\x44\x28\x25\x31\x3d\x67\xca\xdf\x7b\x2b\xe6\x65\x53\x07\x3a\x9a\x55\x8f\x03\x9d\xbd\x80\x04\x21\x4a\x09\xc2\xb9\x03\x0c\x68\xc7\x59\x64\x80\x4a\xb3\xc8\x80\x43\xeb\x2b\x40\x28\x77\x46\xd8\x98\xe9\xe1\x12\x1a\x76\x63\x39\x1e\xbc\x10\xa6\xa7\x65\x99\x6f\x0b\xa6\x8d\x08\x03\xe9\x8b\x86\xea\x16\x0d\xad\x75\xd1\xd0\xc3\x17\x8d\x3d\x35\x85\x5a\xb4\x1c\x61\x61\xa5\x6b\x4e\xdb\x10\x82\xd4\x19\xcf\x6d\x28\x7b\xbd\xca\xc4\xfc\xdc\xc5\x6a\x0d\x56\x9d\x25\xc4\xd6\xdc\x2c\x68\x4b\x4e\x14\x96\xdf\xf8\xa6\x95\x57\xac\x81\x03\x00\x62\x33\x25\x70\x43\x7e\x48\x41\xaf\xe0\x2c\x41\x6b\xa1\x56\xd6\x65\xa2\xfc\x15\xd1\xc2\x59\x96\x28\xdf\x69\xe6\x3f\xc2\x0a\xee\xef\xe9\xb3\x57\xfe\x7e\xd7\xed\x75\xc4\x9f\xdf\xd4\xfd\xb4\x46\x8f\xac\xd1\xa3\x72\xf4\xe2\xcf\x47\xb8\x28\x7c\x0c\xb6\xa7\x33\x2b\xad\x9c\xc3\x06\x5b\x54\x71\x0e\xf3\x24\xb3\x63\x62\x5c\x25\x59\x78\xbd\xc5\x2a\xcc\x56\xdf\x64\x30\x82\xb9\xb3\x63\xda\x6f\x36\x9f\x38\x1d\x88\x7c\xaa\xb5\x11\x40\xe2\xb4\xcf\x75\xba\x5f\xf7\x82\x5d\xf6\x11\x8a\xae\x82\xf0\xba\x53\x1f\xc8\x5c\x56\x3b\x00\x4a\x25\x4a\x43\x4b\xa5\x63\x01\x8c\x65\x6b\x08\x9d\x66\x9d\x27\x43\x10\xac\xc6\x22\xe4\xe3\x1b\xbc\x23\xe6\x38\xce\x58\x66\x35\x18\x38\x43\x77\x28\x9c\x10\xed\x00\xb3\xa4\x03\xf2\x08\xe7\xcc\xc4\x49\x69\x02\xb8\xb0\xd3\x73\xc0\x46\xee\x8d\xb3\xb1\xca\x7a\x19\xf3\x03\x9c\xc7\xe9\x60\x92\x04\x38\xfe\x82\x80\x2b\x5a\xa8\xa3\x8e\x3c\xd1\x15\xef\x01\xc6\xcc\xd4\x9a\x47\x42\xd9\x65\x8b\xd8\xa9\xb9\xa4\x6c\x3e\xac\x0d\x97\xe6\x59\xec\x38\xd4\xaa\xf4\x85\x32\x96\xa3\x76\x02\x6a\x54\x6c\x94\xb0\xc6\x56\x4a\xc8\x4b\x3d\x07\xc8\x7e\xf6\x98\x2a\x6f\xb5\x7e\x84\x06\x4d\xf4\x23\xd4\x68\xcc\xa1\x51\x79\xff\xf0\x8f\xa5\xf5\xca\x86\x38\x72\x9d\x46\x89\x84\x31\x32\xc1\x56\x37\xaf\x20\x12\x2d\xec\x45\xaa\xb6\xb0\xa7\x67\xb4\x10\x37\xae\x33\xe3\x06\x23\x75\x57\x79\xc1\x56\x85\xf3\x37\x59\x9e\x49\x75\x4c\x5c\xe0\xbf\x15\x4b\x33\xce\xbc\x31\xc2\x79\x9c\x13\x65\xc2\xa6\x6a\xb5\x03\x64\xf6\x08\xa0\xc3\xbb\x74\xa0\x50\xab\x71\xf3\x91\x72\xb9\x44\x88\x7d\x38\x69\x5c\x9a\xf6\x23\xab\x5b\x0b\x00\x1d\xde\x65\xcd\xc8\x44\x7b\x31\xb2\xa8\x71\x4b\x96\x19\x19\x97\xf3\x36\x0c\x8c\xef\x76\x65\x60\xbc\xc7\x9a\x81\x89\xf6\x72\xc9\xf2\xe6\x51\xb1\xbe\xfb\x71\x1a\xbd\x9f\x9e\x27\x93\x81\x3b\x8b\x42\x93\xa7\x32\x68\xb2\x34\xaf\x32\x5c\x5c\xa5\x0f\xa0\xd2\x6d\x9b\x4d\x4e\x95\xfa\x1f\xc0\x38\x32\xeb\x8c\x14\xc5\x62\xe2\x48\xcc\x43\x62\x56\xb5\x65\x33\x96\x7d\xb8\x33\x2b\x3f\x6a\x06\x06\xcf\x51\x88\x11\xb1\x9b\xc8\x52\x07\x40\x35\xf2\xe6\x09\x9d\x2e\x9c\x50\xc1\x05\x14\xd9\x20\x9b\xd4\xbe\x97\xc6\x3c\xf8\x66\xb9\x0e\x9b\x86\x43\xef\x58\x92\xa5\xe6\xc6\x30\x05\xe0\xc6\x0a\x87\x86\x81\x50\x67\x06\xf9\x6f\x5d\x22\xc5\xd0\xcd\xe7\x46\x9e\xb0\x9a\x01\x17\xec\x22\x52\xa0\x0e\x53\x27\x2c\x41\xcf\x50\xf2\x38\xdf\x66\x01\x62\x46\x88\x0c\xb3\xa8\x39\xac\x2f\x6b\xeb\x40\x87\x39\xad\x6e\x45\x73\xfc\x1e\x44\x50\x54\xa8\x25\x3f\x82\x11\x1c\xc1\x31\xec\xc3\x2b\x38\x84\x37\x70\x0a\x07\xf0\x04\x5e\xc2\x53\x78\x0d\x6f\xe1\x3e\xbc\x83\x9f\xe1\x2e\x3c\x87\xc7\xf0\x0b\x3c\x82\x7b\xf0\x02\x1e\xc2\x1d\x78\x06\x0f\xca\x78\x98\xef\x9f\x52\x4a\x9e\x4f\xcf\x29\x79\xbe\xdb\x94\x3c\xc8\x3b\x3f\xfc\xf4\xe3\xe5\x4f\xfb\xbf\xf9\xc8\x13\xa6\x31\xec\x97\xd2\x08\xe8\x85\xce\x24\x8e\x9c\x0d\xed\x1b\x2e\xe6\x62\xd6\x02\x1f\x7d\x17\x73\x72\x2e\x20\x04\x03\x57\x86\x88\x02\x30\xa8\x2f\x4e\xea\x8b\xf3\xfa\xe2\xb8\xbe\x38\xab\x2b\x86\xca\xdf\x82\x4d\x99\xc7\x99\x28\x00\x9c\xac\xd2\x38\x5c\xb6\x71\x92\x85\x41\x42\xbf\x88\xea\x87\x38\xd2\x8b\x01\x1c\x0b\x36\x40\x24\xf3\x89\xbc\x0c\xbb\xce\x5e\x9c\x8f\x93\x60\x2a\x64\x0f\x5c\x76\x08\xfb\xe6\x87\x57\xf5\xe0\x87\x46\x71\x3a\xa1\xc0\x1d\x00\x6f\xea\x8b\xa7\x26\xcc\x81\xf9\xf3\xc4\x1a\x9b\xeb\x1c\x05\x77\x17\xf4\x91\xb8\xb8\x38\x74\x00\xbc\xb4\xf2\x27\x95\x7e\x41\xd5\x64\x88\x7a\x02\xc4\xf7\x82\x7f\xa0\xc7\x07\x9e\x8a\xf4\x48\xb2\x90\x4f\xfa\xda\x2a\xd5\xde\x7a\x78\x5b\xf3\x85\x88\x09\xbf\x6f\x55\x95\x2f\x22\xbc\xb3\x21\x0a\x31\x32\xab\xfc\x6c\x57\xea\x1b\xb0\x6b\x55\xb2\x15\x38\xa4\xdb\xcc\xc4\x44\xe7\x76\xf5\x74\x8c\x1c\x78\xdc\x34\xc8\xb3\x49\x82\x72\x07\x7e\xb1\xea\x8f\xd8\x0b\xc5\x3b\x3c\xb2\xea\x76\x45\xd8\xc0\x3d\xfb\x1b\x6d\x37\xe0\x85\xfd\x11\xa3\x4d\x0f\x18\x8b\x00\x0f\xed\x2f\xb3\x28\xee\x4f\x45\xe5\x4e\xe3\x5a\xe7\x0e\x3c\xb3\x2a\x47\x88\x04\x0e\x3c\xe0\xa5\xc5\x00\x91\x17\x72\x08\xea\xb1\x36\x03\x2e\xb3\x27\x5f\x1b\x29\xe5\x35\x4e\xfd\x4f\xee\xa5\x9e\x2f\x8a\x9d\x84\x2e\x6e\x9b\x2e\xea\xda\x86\xcb\xd7\xb3\x1b\xb4\x05\x7c\x6b\x03\xd6\xcf\x63\x37\x69\x0b\x7e\xbf\x6e\xdc\xe2\x48\x77\xf3\xb6\xd0\xef\x6c\xe8\xda\xad\xe8\xc6\x6d\xa1\x7f\xae\x2c\x8d\x7e\xb1\xba\x59\x5b\xf8\xbb\x15\xf8\xfa\xdd\xec\x4e\xda\xc2\x3f\xb7\xe1\x5b\xd7\xbb\x1b\xb6\xed\xe1\xb8\xd2\x03\xc3\x10\xdd\xa8\x2d\xe0\x2f\x8d\xc7\x46\x20\x99\xee\xa8\x6d\x17\x47\x76\x17\x3a\x9e\xea\x8e\xdb\x82\xdf\xb3\xc1\x4b\x54\xd7\xed\xb7\x05\x7d\x51\x19\xb9\x8e\x2d\xbb\x57\x6d\xe1\x1f\x56\x86\xae\x23\xdc\xee\xb0\x2d\xfc\x9d\xca\xf8\x75\x9c\xdd\xbd\x69\x0b\xff\xac\x19\xa5\xd1\x93\x33\x6d\x0b\xff\xc0\x86\xcf\x5f\x8e\xee\xa0\x2d\xe0\xba\xeb\xca\xf7\xf4\xa4\xb7\x50\x63\x5c\xff\x29\x80\x5a\x39\x80\x97\x3a\x77\xf9\x71\x2e\x77\x79\xc5\xc3\xde\x6c\x61\x46\x54\xcf\x67\x2f\x2b\x82\x64\x26\x06\x86\x2b\x72\x93\x25\xd7\xf8\xf9\x29\x71\x8d\xbb\xcf\x5c\xe3\x33\xd7\xd8\xc0\x35\x1e\xec\x71\x9e\xf1\xdc\x77\xd3\x7a\xae\xe6\xab\xb3\x92\x4d\x6c\x60\x2d\x83\xb9\x0e\x56\x72\x39\x7e\xb1\xe4\xdc\xc6\xf5\xc5\xfd\x07\xb2\x64\x9f\x75\x96\xec\x4a\xd0\xfc\xb2\xf0\x60\xcf\x81\x43\xab\x4c\x27\x80\x6f\xac\x3a\x8d\x7a\x9d\x5a\x55\x1a\xe9\x39\xb0\x21\xea\x74\xe3\x89\x55\xb9\x33\x21\xc3\x23\x21\xc4\xbb\xb4\xea\xa4\xf7\x65\xc9\x4b\xca\x9a\xf7\x71\x1a\x71\x62\xeb\xba\xa6\x86\x13\x31\xb7\x56\x8d\xf1\x8c\xef\x5b\x95\xc6\x1b\x2c\x38\xca\xa2\x80\x57\xfe\xae\xdb\xaf\xf2\x33\xad\xd3\xdf\x0e\x6d\xb8\x74\x27\xda\xb3\x49\x37\x36\x58\x83\x9b\x69\xcd\x2c\x4d\x6d\xf0\x3a\x37\xd3\x9a\x57\x1a\xd8\xd0\x75\x6e\xa6\x35\xaf\x74\x52\x59\x1a\x83\x9b\x69\xcd\x2d\x5d\xda\xf0\xf5\x83\xdd\x9e\x59\x3a\xb5\xc1\x97\x77\xa3\x3d\xa7\x74\x6d\x03\x2f\xaf\x57\x7b\x26\xe9\xb6\x0e\xb8\x60\x33\x5a\x33\x4a\xfb\x36\x70\x93\x56\x6f\xcd\x25\xdd\xd9\xf0\x4d\x5a\xbd\x35\x9b\xd4\xd7\x09\xd2\xf3\xfa\xec\xa8\x82\x20\x0d\xb3\x0c\x47\x71\x6a\x99\x86\xaf\x87\x1c\x2d\x49\xcf\x9b\xa7\x44\x7a\x4e\x9f\x49\xcf\x67\xd2\xb3\x49\x61\x91\x45\x42\x61\x31\x68\x45\x7c\x3e\x8a\xfe\x42\x51\x75\x93\x07\x52\x75\x37\x3a\x55\x17\x0a\x5a\x46\x16\xb2\xa9\xc3\xc8\x2a\xdd\xa5\xf8\xc3\x81\x23\xab\xf8\x1c\x0d\x78\xea\xb8\xb1\x55\xa1\x93\x0e\x7d\xab\x4e\x7b\x99\xaf\x6c\x78\xd3\x34\xbc\x88\x29\x76\x1f\x2a\x2a\x2a\xf4\xa7\xee\xe4\x11\xa8\xa8\xc8\x86\xcb\x67\xde\x9e\x8e\x1a\xd9\x80\xc5\xe2\xb5\x27\xa1\xc6\x36\x64\xb5\xfe\xed\x09\xa8\xbe\x0d\xdb\xa0\xfe\x5a\x53\x50\x57\x36\xf8\xb5\x4a\x9b\x87\x95\x85\x51\x07\xa9\x3d\xf5\x34\xd1\x9f\xd9\xc1\x5c\xb9\x4f\x14\xae\xf7\x79\x2d\x9f\xd6\xab\xa7\xf4\xb4\x0e\x9f\x9f\xd6\xbf\xc6\xd3\xfa\xe1\xe4\x6c\xff\xe0\xc7\xe3\x55\x1f\x5a\xfd\x33\x1d\xcf\x34\x18\x0d\xdc\xb4\x13\x00\x5d\x71\xe7\xf6\x8a\x04\xa8\x2c\x5f\xea\x35\x96\xcd\x6b\xe4\x37\x6c\x89\xb2\x07\xbe\xc6\x57\xfa\x6b\x3c\x11\x0f\xe2\x95\xa1\xf6\x0e\xad\x52\xa6\x86\x2a\x1f\x69\x59\x7c\x8a\xe3\x51\x80\xa7\xe5\x33\x7d\xa5\x64\x28\x6c\x20\x3b\xbb\x87\xcc\x0d\x61\x5a\xbe\xd7\x57\x4a\xcf\x9c\x0f\xf7\x59\xa6\xad\x48\x3d\xd8\x45\x01\x27\xfe\xd0\xcd\x1e\xe1\xed\x0d\x6d\xb8\x82\xa5\x6b\xfd\xf6\x46\x36\x60\xb1\x54\xed\xdf\xde\x91\x0d\x59\xad\x76\xfb\xb7\x77\x6c\xc3\xae\x6e\x58\xfb\x17\xb8\x6f\x77\x62\xec\x79\xfb\x37\x38\xd3\x9f\xc9\x9b\xf9\xcf\x64\x9c\x87\xd9\x0d\xc2\xd3\xad\x70\xc8\x12\xf8\x3f\xb3\xa4\xcf\x2c\xe9\x5f\xe9\xdd\x7c\x00\x4b\xaa\x3b\xb0\xad\x81\x33\x5d\x8b\x5a\xc4\xe2\x4c\x1f\x89\x23\x35\x5c\xf7\x6c\xc6\x54\xe7\x52\x6c\xee\x54\x63\x31\x6c\xfe\x54\x93\x3d\xdb\xec\xe9\x2e\x47\x49\x36\x6b\xca\xf5\xd4\x7f\x02\x5b\x6a\x4c\xff\x11\xb8\xd3\xf5\x4a\xf9\x2b\x2c\xaa\xce\xe7\xad\x9f\x49\x5d\xab\x45\x54\x85\x47\x15\x47\xe1\x11\xf8\x53\x61\xf5\xf0\x35\x79\xd3\x41\x40\xd0\x6d\x30\x9d\x93\x6d\xb8\x36\x83\xb5\xfc\x6b\x7e\xab\x32\x47\xe4\x32\x2f\xb8\x08\x65\x18\xe0\x17\xea\x05\x2f\x5f\xec\xc9\x53\x7a\xb1\xc3\xe7\x17\xfb\xbb\x7d\xb1\xc5\xc3\x4c\xdf\xda\xc8\x77\x03\x9e\x1a\xc4\x94\xc1\xd6\xf0\x82\x14\x46\xc2\xd3\x51\x04\x18\x07\xd3\xb9\x8a\xff\x6e\xaf\xa0\x2f\xed\xc3\x1e\xcd\x89\x54\x82\xe7\x79\x16\xc6\x01\x41\x91\x78\x2a\x76\xb3\x09\xbd\xaf\xb1\x78\xc1\x54\xbb\x28\xc2\x28\xcf\xe9\x15\xcd\xd4\x33\x16\xfb\xa1\x9b\x1b\x9a\xc7\x06\x68\xed\x9f\x86\xac\xd2\x55\x39\xa0\xf6\x4f\x43\xae\x63\xc2\x68\x2e\x26\x1c\xa2\x20\x21\xc3\xad\x70\x88\xc2\xeb\xaf\x8b\x07\x75\xaf\xfd\x08\x85\x19\x0e\x48\x86\xf3\x6d\x19\x59\xae\x21\x83\x0e\xc3\x2b\x0f\x75\x2c\x2a\x11\xeb\xc5\x53\x42\xac\x87\xcf\x88\xf5\xbb\x45\xac\xc8\xcb\xc3\x21\x1a\x05\x25\xeb\x23\x7e\xcf\xce\x49\x40\x26\x79\x67\x16\x24\x49\x76\x8b\x22\x86\x28\xf3\x4e\xd7\x19\x07\x79\xce\x13\x5a\xdd\x06\x38\xe5\x7f\x85\x38\x26\x71\x18\x24\x4e\xaf\x80\x17\xd3\x31\xaa\x7e\x95\x23\xdc\x77\xa0\xa3\x12\x39\x0e\x09\x19\x3b\xd0\x21\x21\xfb\x2f\xa1\xd7\x31\xca\xc2\x6b\x8a\xc7\x9d\x01\x1e\x87\x0e\x74\x82\x24\x0e\x72\xa7\x57\x14\x0c\xed\xef\xf8\x6e\x62\xa0\x7d\x93\x3b\xaa\x16\xc7\x3c\x2f\x94\xb8\xcf\xc0\x75\x1c\xc8\x47\x21\x38\xa5\xea\x17\x93\xfa\xe2\xb0\xbe\x38\xaa\x2f\x1e\xd5\x17\x8f\xeb\x8b\xfb\xf5\xc5\x57\x7c\xec\x74\x7f\xd9\x0a\x02\xb7\xdb\x13\x8e\x43\x95\xa7\x4c\x78\x0e\x61\xc5\xf8\x4d\x0d\x98\xa5\x64\x75\x50\xf1\x15\x92\xb1\x5b\xf6\x9c\x3a\x4f\x22\x66\x37\xf2\x70\x17\xa2\x0b\x43\x6c\x2a\xed\xbe\x2e\x14\x67\x87\xc2\xeb\x83\xbd\xd2\xec\xeb\xc2\xf0\xcd\xb9\xb5\x4a\xf9\x61\x2c\xad\xbd\x14\xf0\x8c\xa1\xf7\x3b\xab\xf8\x64\x42\xc6\x13\x52\x3a\x0d\x5d\xd4\xb1\xaf\xbb\xf5\x95\x74\x50\xe7\x95\x6e\x22\xcd\x61\xc8\xfa\xe0\x22\x18\x68\xde\x42\x17\xa5\x9c\x97\xdd\x65\xca\x6c\x1d\x59\x75\xfb\x77\xe3\x2c\x47\x91\x72\x17\x62\x4e\x3a\x3f\xc5\x69\xe4\x1a\x71\xa1\x98\x5f\x8e\x1a\xd5\x3b\x16\xfc\xc6\xe9\xc8\x88\x3a\x0e\xfb\x8a\x81\xa2\x18\x4f\x7d\xda\x95\x77\x8b\x5d\xa3\x9e\x17\xa7\x61\x32\x89\x64\x64\x65\xba\xbc\xdc\xbf\xe7\xb0\xd6\x0f\xa7\xf5\xdb\x7f\x6d\x03\x56\x3b\xdd\x9e\x29\xbc\xb5\x61\x0b\xd3\xa6\x18\xb6\x66\xde\xf6\x6d\xd0\xf2\xc4\xb5\x37\xca\xba\xab\x2c\x35\x3f\xb4\xed\x2d\xb2\x3e\xdb\x90\xe5\xb9\x6f\x6f\x8f\xb5\x5b\x59\x0f\x43\xf4\xd1\xda\x1e\xeb\xbc\x01\x3e\x3b\x28\xad\xad\xb1\x8e\xab\x4b\xce\xec\x09\x5a\xbb\xac\x7c\x69\x18\x36\xc7\x01\xdd\x2b\xd8\xda\xa9\xe4\xc8\xee\x41\x47\x24\xed\x7d\x4a\xf6\x6c\xf0\x0a\x17\xb5\xf7\x27\xb1\x20\x53\x84\xc6\xbd\x49\x56\x72\xf9\x60\x9f\x59\xee\x1e\x75\x63\xa6\x03\x79\x80\x47\x49\xf9\xed\x3c\x97\x92\x9d\xb9\x4c\x4b\xcc\x72\x61\xc7\x59\xba\x35\x46\x78\x14\xb3\x2c\x96\x5b\x14\xeb\x6e\x0d\x51\x10\x21\xfc\x10\x46\x66\x09\x41\xcd\x52\xa1\x0d\x4a\x1e\x63\xf0\x94\x78\x8c\x93\x67\x1e\xe3\x2f\xc3\x63\xf0\x58\x4a\x97\xfe\x8c\x05\x74\x9d\x61\xf4\xc7\x24\xc6\x28\xa2\x9f\xc1\x8f\xec\x02\xd5\xf3\x10\xfb\x77\x41\x48\xaf\xca\x29\x46\xfd\xf8\xce\x81\xce\xf9\xa4\xcf\xff\x38\x43\x03\x74\xc7\x6b\x72\x7a\x9d\x7a\x2c\x04\xb5\xe8\xf5\x92\xf1\x0f\xa7\x22\xda\x41\x5a\xaf\x8b\xa9\x16\x27\xf5\xc5\x79\x7d\x71\x5c\x5f\x9c\xe9\xc5\x94\xc3\xa8\x86\x12\xf0\x3c\xef\xd2\x2b\xa7\xed\x19\xb3\xa6\xdc\x87\x45\x97\x2f\x68\x1f\x3d\x90\x5c\x1f\x18\xe4\xba\x54\xdf\x0c\x14\xc5\xca\x96\x7e\x6c\x15\xcb\x9d\xe8\x5b\xe5\x72\x63\xae\xac\x72\xb1\x4f\xc3\x2a\x18\xb6\x6d\xca\x4d\x45\x56\xb0\x49\x29\x17\x15\x46\xf0\x96\x33\x2f\x43\xcf\x34\xaf\x07\x8b\x4e\xe4\x22\xff\xad\x91\x15\xa3\x8b\x7a\x94\x06\x1e\xf9\x27\x6e\xf4\x18\x96\x0f\x63\x1b\xb0\x58\xbe\xf6\x72\xbb\xbe\x0d\x59\xee\x40\x7b\xc2\xfd\xca\x06\x2d\x37\xb1\x3d\xdd\x3e\xb4\x41\x8b\x73\xd0\x5e\x99\x73\x53\xb3\x1e\xfc\x28\xb5\xd7\xe7\x4c\x6d\xd8\xe2\x34\xb6\xe7\x08\x2c\xb8\xe5\xe1\xe5\x4c\xc1\x22\x7a\xa6\xe9\x63\x00\x23\x9d\xa0\x89\x74\x82\xe6\xf4\x61\x04\xcd\xb7\xa6\x9a\xaa\x52\x3c\x1b\x55\x8b\x8d\xa7\x40\xef\x0c\x9e\xe9\x9d\xbf\x18\xbd\x73\xe2\xcf\x4e\x03\x32\xac\x27\x6d\x68\x8d\x22\x6b\xe8\x0f\x45\xeb\x04\x64\xc8\xb1\x65\xaf\x80\xdc\x0b\xad\x46\x26\xfb\xe3\xfe\x85\x03\x9d\x8f\xfb\x3b\x7b\xf4\x93\x93\x73\xfa\xeb\xf4\x13\xfd\xef\xde\xfe\xe1\xfe\xc5\xbe\x03\x9d\xdd\x93\xe3\xe3\xfd\x5d\x5a\x74\x72\xca\x52\xd9\x3a\xd0\xb9\x38\xdb\xd9\xa5\x75\xa7\x3b\x17\xbb\x1f\x4d\xa2\xe9\x84\x11\x4d\x97\xb6\xae\xcd\xa4\x8e\x56\x93\xc5\xa6\x9e\x44\x04\x3b\x42\x82\xb9\x90\x8f\x2a\x09\x28\x5b\xe6\xd9\x40\x49\x9d\x78\x72\x8d\x97\xa1\xa3\x9a\x5b\x3f\x94\x8a\x9a\x2a\x73\x17\xb5\x85\x92\x94\xd2\xab\xe4\x56\x8f\x6b\xea\xc4\xdb\xd8\xb7\xaa\x3e\x0a\xce\xf2\xca\x2a\x17\x67\xa2\x24\xaa\x74\x58\x8a\xa2\x62\xa4\x93\x9c\x6c\x49\x38\x35\x2d\x80\x22\x9b\xe4\x82\x1b\xe9\x75\x15\xf9\x34\xb0\xde\xde\x72\xd2\xeb\x30\x5e\xa9\x81\xbe\x3e\x6a\xa7\x5f\x07\x5e\x92\x25\x6b\xb0\x5e\x19\xd4\xbd\xd2\xeb\x31\x5f\xb1\x40\xab\x03\xd0\x9e\xe2\xb9\xa9\x5b\x94\x75\x10\x3c\x35\x60\x1f\x48\xee\xa8\x4f\xe7\x11\x3b\x97\x2b\x13\x3b\xdf\x1a\x9d\xf3\x6c\x82\xf3\x4c\xd5\x3c\x09\xaa\x26\xf2\x67\x3b\x6c\x71\x3a\xa6\x45\x8d\xc3\xde\x13\x07\xda\x94\x8a\x28\x76\x22\x94\x4e\x4d\x8a\x23\x62\x14\xc7\xa8\x81\xe2\xa8\x31\xd8\x89\x3c\xde\xb3\xa7\xd7\x94\x16\x3f\xf2\x36\xce\xa3\x33\x9c\x35\x58\xfc\xf0\xfc\xf3\x15\x0b\x9f\x8f\x17\x17\xa7\xf3\x8d\x7b\xc4\x87\x8f\x60\xcc\xc3\xfb\x5e\xb3\x1d\xcf\x68\x39\xa4\xba\x38\x82\xef\xb2\x78\x73\x55\xf3\x9c\x85\xac\xe2\xf2\x71\x7f\xe1\x7b\xf8\x09\x7e\x84\xaf\xe0\x4f\xf0\x03\xfc\x03\xfe\x06\xff\x05\x7f\x81\x3f\xc2\x9f\xe1\x3f\xe1\xaf\x25\x6a\xfe\xf7\x53\x42\xcd\x08\x3d\xe3\xe6\xef\x18\x37\xaf\x27\xbc\x13\x41\x02\xfd\xfe\xd9\xc1\x7f\xff\xb6\x52\xf4\xdf\xbf\xad\x14\xfe\x57\xe6\x2d\x69\x0a\x00\xbc\xe0\x9b\xd1\x03\xbe\x19\x3f\xe0\x9b\x7e\x7d\xa0\x81\xda\xa0\xc2\x75\xa0\x38\xfa\x74\x0a\x61\x37\x84\x75\x6b\x22\x75\x64\xeb\xb7\x69\x5a\x5f\x3c\x58\xc9\x07\xf3\xa4\x7e\xfc\x97\x46\x31\xcb\x8d\x00\xe0\x69\x5d\xe1\x75\x3d\x80\xdb\xfa\xe2\x7d\xd3\xfb\xe5\x4e\xff\xd9\x60\xec\xfb\x79\x79\xa9\x84\x03\xe0\x6e\x35\xd4\x32\x22\x81\x03\xe0\xf9\x03\x29\x88\x7f\xeb\x8e\x36\xd2\xb6\xe8\xdf\x5a\x40\xaf\x2f\x56\x99\xee\x1d\x72\x64\xd7\xe9\x41\x90\xf6\xac\xca\xf3\x6c\x82\xa5\xe9\xc6\x45\xf5\x43\x12\xa7\x2c\x98\x3e\x6f\x70\x58\xff\xf1\x79\x19\x85\xb8\xee\xd3\xf3\x32\x0e\xb1\xf9\xa1\xe6\x73\x72\xd0\xfc\xbd\xd6\xea\xbd\xd5\xea\x14\xa3\x10\x45\x28\x0d\x91\x03\x3f\xd5\x76\xc1\x59\xc9\x8f\x56\x9d\xa4\xaf\x5e\x59\xe5\x87\x68\x10\x84\x53\xba\xbe\x3f\xd5\xd6\x38\xf0\x83\xdd\x8b\x0a\x60\xf0\x87\x55\xc3\x83\x14\x45\x3b\xc4\x81\xbf\x59\x55\x3c\xbd\x07\xab\xfa\x57\xed\x57\x22\xf4\xd0\x2f\x56\xa5\x11\x97\xe8\x47\xbb\x92\xb9\xaa\xfc\x6c\x95\x9e\xa1\x9c\xad\x43\xee\xc0\x7f\xda\x8b\xa7\x4e\x70\xee\xc0\x5f\x35\x59\xd0\x41\x7e\x14\xa4\xc1\x00\x45\xef\xa7\xbb\x67\x7b\xa5\x44\x48\x3d\x93\x75\x69\xf9\x69\xf7\x3c\xd7\x39\x93\x0f\xa9\xf4\xf7\x0e\x3d\xfa\x38\x0d\x92\x2d\x3e\x10\x96\xf0\x7a\x73\xd3\xb9\x9e\x5c\x21\x9c\x22\x4a\xce\xf9\xbe\x4f\x28\x19\x7c\xec\x23\xe4\x9e\x57\x7d\xb5\x5a\x13\xc1\x5f\x2a\x80\x99\x29\x51\x6b\x1a\xf8\xa8\x02\x77\xbd\xc1\x38\xf6\xaa\xf0\xd7\x1b\xcf\xec\xa2\xd2\x81\x8e\x0e\xda\x0b\x8d\x0e\xeb\x26\x60\xa2\x94\xf6\x02\xa4\x9d\xa6\x49\x9c\xaf\xc3\x8e\xee\x6c\xee\x14\xce\xd7\x61\x4f\x77\xd0\x30\x01\xdd\x25\xaf\xb5\x51\xdd\xfb\x79\xf3\xd0\x7b\x6a\x6d\x60\xf7\xa9\xd2\x93\x8e\xa6\xdb\xdb\xd9\x7d\x6c\x58\x2e\x21\x35\x6c\x1d\x1a\xfa\x55\x05\xbe\x62\xc7\x87\xb0\xb5\x91\xdd\x4f\x15\xe8\xe5\xa3\xd3\xde\xcc\xee\x43\x03\xf4\x75\x44\x6e\xfe\xa3\xba\xee\x65\xf4\x9e\x93\xb6\xd0\x7f\xab\x40\xd7\x1e\xd0\xee\x65\x5b\xf0\xff\xaa\x80\xd7\x1e\xe1\xee\x69\x5b\xf0\xbf\x34\x8c\x5e\xc6\x10\xbc\x6e\xdb\xc1\x8f\x95\x0e\xcc\x20\x85\xb7\x6d\x3b\xf8\xb9\xda\x01\xf7\x7d\xdd\x6f\x0b\xf9\x9f\x15\xc8\x1a\x51\xd2\xbd\x6b\x0b\xfe\xd7\x2a\xba\xd1\x09\x9b\xee\xe7\xb6\x1d\x54\x68\x07\x83\x3c\x72\x60\x77\x77\xb1\x9e\x62\x1e\x00\x00\xcf\x75\x6d\xc5\xb9\x2e\x58\x23\x68\xae\x64\xed\xfa\x66\xb1\x48\xcd\xce\x3f\x1b\xe7\x1f\xb2\x84\x29\x9c\xfe\x1c\x29\x5a\x29\x23\xdb\x79\x4a\x32\xb2\xb3\x67\x11\xd9\xb3\x88\xac\x41\x44\xf6\x13\x9a\x72\x19\xd9\x41\x3b\x11\x99\x12\x58\xcc\x8b\xde\xb1\x20\x6c\xf9\x92\x01\xca\x55\x57\xf3\x02\x94\xd7\xca\x85\xfa\xf5\xe0\xaf\xea\xe1\x2c\x95\xd0\xaa\x5e\xb8\xd4\x20\x99\xa9\xba\xaa\x29\x8c\x56\xe7\xa9\x46\xf7\xe6\xe1\x8e\x6a\x3b\x75\xb9\xae\x64\x21\x05\xad\x7c\xd4\x76\x2a\x02\x81\x5b\xab\x86\xc7\x92\xd8\xb7\x4a\x75\x8e\xf1\xce\xaa\xd3\xa2\x66\x7c\xb6\xaa\x34\x8a\x7d\xd7\xaa\x3a\xcc\xc2\x6b\x41\x16\x9c\x5b\x55\x1f\x12\xe6\x8b\x72\x6c\x15\x0b\xe3\xc5\x2f\x56\xb1\x41\xc2\x1c\x59\x95\x06\xf9\xb1\x67\x2f\x02\x12\x9a\xf3\x0b\xab\x42\x7b\xf9\x0f\x9b\xfc\xdb\x78\x82\x4a\xb9\xa9\xef\x9c\x3e\xdf\xdc\x8e\x73\x8d\xa6\xdc\xb1\x4d\xd6\xcd\xcb\x59\xf5\x13\x9a\xde\xdf\x3b\x0e\xf7\x67\x3b\xab\xcb\x57\xd5\x5a\xac\x70\x6d\xc3\x65\x07\xa2\xbd\x58\xe1\xd6\x86\xab\xd1\xd9\xad\x65\x0a\xfb\x36\x70\x11\xe2\xa4\xb5\x2c\xe1\xce\x06\x6c\xc8\x42\x5a\x8b\x12\x3e\xdb\xe0\xf5\x90\x32\xad\x65\x08\xbb\x36\x74\x9d\x23\x6e\x2d\x43\x38\xb7\xa1\x6b\x57\xb4\xbd\xf8\xe0\xd8\x86\x2e\x6e\x79\x7b\x99\xc1\x17\x1b\xb2\xb4\x72\x1e\xc3\xd6\x5c\xfc\x91\x0d\xdb\x64\x98\x5a\x73\xf1\x7b\x36\x7c\x93\x5f\x6a\xed\x8b\x77\x51\xb9\xa4\x12\xe7\xb5\x77\xc4\x3b\xb4\x61\xeb\x0c\x53\x6b\x19\x81\x8d\xb4\xd6\xe7\x8a\x67\x41\x2e\x39\x8d\x95\x3d\xf1\xb4\x27\xbd\xd9\x11\xef\x60\x2e\x6f\x94\x72\xb7\xce\xb5\x18\x1c\x3c\x6e\x26\x61\xf8\x7e\xa3\x9a\x9e\xf7\x29\xf0\x44\x1f\x9f\x79\xa2\x67\x9e\x68\x81\xd9\xc0\xab\x6f\x27\x93\xb0\xcd\x31\x29\x6e\x24\xac\x2f\x5e\x86\x63\xb2\xf4\xf7\xf3\xf3\xfc\x36\x70\x34\x82\x47\x1a\x06\xf9\x51\x90\x32\x4b\x76\xee\x38\xbe\x15\xa7\x39\x09\x52\x96\x33\xfe\xa6\x5e\x1f\x6d\x84\x48\xa2\xfc\x93\x65\xf9\xde\x8f\x13\x82\xb0\x8a\xe6\x91\x3b\x10\x71\xf5\x7f\x8a\x42\xb2\x35\xc6\xd9\xdd\xd4\x79\xe9\xd3\xcd\xe6\x0d\x3c\x8a\xd6\xeb\x78\x2c\x16\xa9\x21\xf7\xba\x3d\x47\x44\x6d\xc8\x77\x65\x5c\x17\x59\x70\xaa\x82\xbf\xf0\xdf\xbf\x88\x10\x30\x75\x5c\x59\x09\x8e\xf2\x66\xf3\x6a\x4f\xe7\xd6\x5e\x3f\x90\xaf\xfb\xa4\xf3\x75\x92\x51\xfb\xa4\xe9\xd7\xf7\xad\xb2\x3a\x36\xed\x53\x95\x17\xfb\x6c\x55\x89\xd0\x59\x25\x93\xf6\xc9\x88\x1a\x72\x6e\x95\x96\x84\xfe\xb1\x55\x63\x50\x47\x5f\xac\x4a\x83\xb4\x39\xb2\x2a\x39\x7d\xbf\x67\x7f\xc2\x4a\x2f\xac\xd2\x8b\x60\x30\x40\x91\x16\xef\xeb\xd0\x6a\xa0\x11\x22\x3b\xf6\xd8\xd5\x11\x3b\xb3\xc7\xce\x36\xac\xd4\xf1\x7f\xd2\x82\x59\xcb\xd0\x0e\xe2\xa4\xe7\x4a\xc7\xcf\x18\x3d\x1e\x68\xc3\x05\xb3\xfc\x36\x26\xe1\xd0\x7d\xf9\x1a\xcc\xc2\x20\x47\xca\x5b\xd3\x33\xcf\x62\x47\x44\x48\x51\x31\x87\x36\xea\x5a\x8b\x83\x29\x1b\xcb\x50\x45\xb5\x6d\xc5\xa1\x96\x6d\x65\x80\xa3\x0d\x71\xcc\x64\x39\x1a\x8d\xc9\xd4\x29\xd8\xa0\xcd\x21\x59\x6c\xad\x38\xbc\xe2\x5e\xb2\xcb\x28\xc7\xea\xb3\x7b\xc8\x66\x0c\xbc\x04\xa5\x03\x32\xd4\xe0\x89\x81\x2c\x04\x27\x47\x38\x1f\x9a\x58\x82\x85\xd0\xe4\xda\xd4\x41\x2b\xe0\xad\xff\xd1\xbd\xae\x32\xd6\xad\x7d\x64\xf7\x6d\xb8\x4c\x39\xd6\x9a\x5f\xbf\xb3\xc1\xae\x37\x0d\xf4\x67\x1b\xfc\x5a\x53\x9b\xed\xda\xd0\x15\x6a\x69\xcf\xba\x9f\xdb\xb0\x45\x48\x94\xd6\x4c\xfb\xb1\x0d\x58\x93\x64\xb4\xe6\xd9\xbf\xd8\xc0\x4d\x0e\xb2\x35\xd7\x7e\x64\xc3\x37\x39\xc8\xd6\x7c\xfb\x9e\x0d\x5f\x48\x62\x5a\xb3\xed\x17\x95\x81\x73\xc0\xad\x35\xfb\x87\x36\xe0\xca\x7b\xd1\x5e\xbb\xbf\x63\xf7\xa1\xf3\xbe\xad\xa5\x02\x67\x95\x03\xa9\x5e\xad\xf6\x22\x81\x83\xca\x81\x14\x0f\x5f\x7b\x89\xc0\xfb\xea\x96\xd6\xbd\x9d\xed\x85\x03\xf6\xf2\xc8\x48\x57\x4b\x88\x07\xea\x3e\x04\xf0\x5a\x67\xdf\x6b\xd7\xa7\x24\x24\x97\x11\x13\xcc\x03\xb0\x4c\x6f\x8a\x4a\xed\x5e\x3e\xa8\x33\xf9\xfd\x32\x7d\x49\x0a\x98\x19\x18\x3c\xa0\xaf\x92\x82\x36\xfa\xba\xd6\x85\x20\xaf\xe6\x0b\x41\xa4\x84\xf4\x11\x53\x5b\x97\xc2\x8b\xeb\xa7\x24\xbc\xb8\x7d\x16\x5e\x7c\xc7\xc2\x8b\xe3\xf3\xd3\x9d\xdd\x7d\x21\xbe\x68\x99\x64\x90\xa5\x72\x30\x40\x6a\xca\x07\x26\xe4\xd8\xff\xf3\x73\x3c\x94\xf2\x89\xa5\x1d\x29\x2a\x7e\x14\x0d\xf2\x89\x65\x14\xca\xd5\x4f\xdd\x19\xcf\x89\x23\x72\xe4\xe4\x9d\x6e\x0f\x9e\x65\x09\xd2\x7e\x17\x80\xf9\x4c\x3c\x8c\x85\xbf\xd6\x59\x78\xe9\x2c\x7f\x6d\x44\x2a\xea\x5b\xa5\x3a\xbd\x7f\x65\xd5\x69\xc4\xfa\xb0\x06\x98\xc0\xa3\x37\x56\x55\x49\xcf\x4e\xed\xbe\x74\x4b\xdd\x81\x55\xa9\xd1\x34\x27\x95\xef\x12\x24\xcc\xd2\x2e\xad\xaa\x9d\xdd\xc3\x5c\x69\xa1\x8b\x02\x8e\xfd\x5b\x77\xf4\x08\xa9\x2d\xfa\x36\xdc\x75\xc5\x3e\xba\xb2\x01\xaf\x37\xa7\xc5\xd0\x06\xbf\xd6\x9c\x16\x37\x75\xab\xb2\xb6\x9c\x16\x53\x1b\xba\xc6\x29\xb5\xe6\xef\x06\x95\x75\x37\xcc\xc8\x5b\xb3\x79\x27\x36\x7c\x9d\x66\x6f\xcd\xe7\x5d\x56\x47\xaf\xae\x48\x7b\x2e\xef\xd4\x86\xce\x6f\x59\x7b\xf6\x6e\xa4\x53\x69\xfb\x73\xa9\xb4\x2c\x8e\xc2\xad\x31\xce\x6e\xe2\x4a\x80\xc8\x75\x12\x6b\x25\xa1\x76\xf9\x94\x08\xb5\xd3\x67\x42\xed\x3b\x26\xd4\xd6\x41\x9b\x51\x12\xec\xfa\x1b\x20\xc1\x56\x53\x3f\xd5\x1b\xec\x3d\x3c\xbe\xd0\xa5\x4e\x10\xc9\xc8\x42\x97\x06\x41\x34\xb6\x4a\xeb\xd2\x3f\x5f\x56\xa9\x9e\x2b\xab\xaa\x86\x56\x92\x55\xdc\x9a\xe0\xc6\x2a\xdd\x99\x90\xe1\xa7\xb3\xc3\x92\x4a\x52\x03\x88\xf3\x71\x12\x4c\xf9\xe8\x06\x56\x25\x97\x87\x9d\x28\x7a\x67\xe4\x9f\x9a\x01\x5f\xd6\x44\xef\x8c\x6d\xb8\xeb\xa2\x77\xfa\x36\xe0\xf5\xd2\x3b\x57\x75\xe3\x96\x14\x49\x6b\x7a\x67\x68\x43\x5f\xab\x38\xfb\xc6\x86\x2e\xcc\x50\x5a\xd3\x3a\x53\x1b\xb0\x3a\x7b\xed\xe9\x9c\x41\x65\x3f\xf5\xe3\xbb\x86\xd8\x8f\x36\x7c\x21\x11\x6e\x4d\xe4\x18\x11\x90\xae\xe7\xd2\x22\x63\x6d\x97\x6b\xc3\x1e\xd5\x98\xce\x30\x53\x99\x56\x46\x32\x1b\xd5\xd7\xfe\x29\x90\x26\xd7\xcf\xa4\xc9\x77\x4c\x9a\x9c\xee\x9c\x5d\x1c\x5c\x1c\x9c\x1c\xaf\x55\x8c\x64\x42\xd5\xb0\x2a\x23\x63\x6e\x55\x28\x6a\x65\xce\x5c\x89\x46\x5d\x53\x93\x34\xd6\xe4\x8d\x35\x71\x63\x4d\xd6\x58\x33\x69\xac\x09\xed\x1a\xd3\x8c\x46\xab\x79\xb8\xc8\xe7\xb4\x4e\xe4\x73\x5a\x2b\xf2\x39\xad\x13\xc3\x5c\x55\x2a\x15\x23\x39\xb4\xab\xb4\x97\xfa\xa6\xa6\x27\xf1\xcc\x4e\xad\x2a\xed\x8d\x1c\x58\x55\x25\x43\x7f\x62\xd5\x70\x2c\x7f\xa9\xc9\x75\xae\xeb\xe4\x3a\x6b\x20\x47\xae\x6b\xe5\x3a\x6b\x20\x44\xae\xe7\xc9\x17\xd6\x40\x8a\x54\xe0\x97\x12\x80\x35\x90\x22\x36\x74\x9d\x4a\x5b\x03\x41\x52\xb3\xea\x92\x4a\x5b\x03\x49\x72\xdd\x2c\xf3\x5a\x03\x41\x72\xdd\x28\x95\x6a\x4d\x94\x5c\xda\xc0\x05\xb5\xb3\x5e\xc9\xcb\xed\x7c\x6a\xa7\x21\xca\xe3\x43\xc5\x2e\x25\x1d\x13\x3d\x25\x3a\x66\xf4\x4c\xc7\x7c\xb7\x74\x8c\x96\x1e\x75\xfc\x28\x32\x92\x32\x8b\xdc\x43\xe3\x25\x46\x96\x5a\xa4\x8c\x98\x18\x29\xe3\x42\x11\x59\x35\xb3\x2a\x76\xc2\x90\x19\x41\x4d\xec\x72\x1e\x4b\x32\xd4\x62\x2c\x8e\xcc\x40\x88\x65\x67\xed\x25\x08\x99\x0d\x5c\x8d\xb7\xfd\xab\x3d\xb1\x61\xcb\x29\xb7\x7f\xb7\xc3\x0a\x68\xbe\x6a\x6b\x8e\x0e\x39\x9e\x8f\x82\x99\x96\xf0\x71\x4d\x14\x9e\x53\xae\x3e\x23\xeb\x27\x81\xac\x1b\x99\x4c\xe4\x1d\xed\x1c\xef\xfc\xb8\x7f\xb4\x7f\x7c\x71\x79\xb0\x57\x32\x9d\x66\xb1\xf3\x5a\xfc\x6f\xab\xe6\x3f\xe2\x7f\x6f\x9c\xa5\x9d\x37\x76\xbe\x1d\xa1\x7a\x93\x01\xc3\xc3\xad\x1d\x16\x35\x6e\xe1\x15\x62\xf9\xd1\x2f\xe7\x1d\xb2\x68\x3c\xb5\xae\xf4\x35\x8d\xdd\x14\xdd\xbe\xd8\x0b\x08\x02\xde\x00\x11\x4a\xad\xbb\x80\xb1\x39\xb6\x23\x05\xcb\xed\x3a\x6d\x99\xc2\x95\xf1\xa6\x03\x2b\x89\xe9\xc1\x5e\xc9\xe5\x5e\xd4\x70\xd4\x97\x76\x0e\xd5\x92\x25\xb2\x93\xc1\x6a\xfc\x8c\x9d\x0e\x96\xb3\xaf\x76\x3a\x58\x83\xf7\xb4\x73\xc2\x9e\x4d\x92\xba\x9c\xb0\x25\x5b\x63\x67\x85\x35\x6c\x8a\xed\xac\xb0\x86\x41\xb0\x9d\x17\xb6\x9c\x6f\x5e\x4d\x0f\xcb\x59\x1d\x3b\x2f\x2c\x41\xa3\x71\x12\x10\x54\xcd\x0a\xcb\x87\xc1\x87\xa8\x27\x86\x8d\xf3\x1f\x93\xec\x2a\x48\x78\x40\x19\x4a\x72\x94\x69\x62\x97\x42\x05\x32\x95\xec\xc1\x5e\x51\xc0\x81\x7f\xe8\x4e\x1f\x41\xc1\x72\x62\xc3\x65\xf6\xfc\xad\x29\xa3\x4b\x1b\xec\x7a\xd5\x2b\xa7\x36\xf8\xb5\xaa\x57\xae\x6d\xe8\x6b\x55\xaf\xdc\xd6\x8d\x7d\x1d\xd2\x8c\xfd\xca\x9a\xaf\xd7\x94\xe4\xce\x86\x2f\x6e\x6c\x7b\x59\xc6\x67\x1b\xf2\x3a\x65\x19\xbb\x36\x70\xd3\x17\xa1\xb5\x48\xe3\xdc\x86\x6f\xfa\x22\xb4\x76\x19\x38\x6e\xbe\x4a\xf9\x3a\x3c\x07\xbe\xd8\xf0\x85\xac\x67\x0d\x61\x04\x2c\xc0\x25\x0e\x5d\x47\x0c\x81\xda\x5d\x15\x87\xa6\xb5\xbf\x80\x05\xbc\x8a\xcb\xb9\xe7\xc0\x22\xc3\xf1\x45\x40\x00\x9c\xea\xd6\xe3\xd3\xe5\x73\xd9\x72\xff\xd0\x15\x22\x8c\x89\xef\x2a\xfe\xab\x6d\xfd\xe7\x37\xaa\x56\xdb\x4f\x81\x53\xdb\x7f\xe6\xd4\xfe\x7a\x9c\xda\xb2\xea\xc0\x2c\x42\xb0\x4c\x6c\xce\xd8\xad\xbb\x6f\xd7\x57\x7e\x1d\xd1\xc5\x28\x37\x64\x32\x1b\xe9\x92\xcc\xc6\xad\xce\x6c\x48\x15\xdf\xad\xc6\x6c\x5c\x59\x65\x3a\x25\x38\xb4\xea\x6a\xcc\xb9\x6f\xab\xcc\xc6\xd4\xaa\x32\x72\xdc\x0f\xea\x2b\x75\xb6\xe7\x56\x73\xf4\xe6\x1f\x5d\xda\x1f\x29\xfa\xe3\xb4\x1e\xdc\x29\x47\xbf\xd7\x4a\x86\xd9\xf7\xf7\xdd\xf1\x23\x28\x06\xaf\x6c\xb8\xeb\xf1\xb7\x1d\xda\x60\xd7\xeb\x6f\x7b\x63\x83\x5f\xb3\x41\xb6\x05\x5d\xa7\xcf\xd7\x60\x91\x6d\x41\x37\x8e\xd7\x3a\x2c\xb2\xeb\xe1\xb3\x8d\x5d\x83\x45\xb6\xbd\xf2\xea\x90\xaf\xc3\x20\xdb\x1e\x7a\x49\xa7\xb7\xa6\xa3\xaf\x1b\xd6\x45\x5c\xb5\xf6\x84\xf4\x58\xa7\xae\xee\xe6\x52\x57\x38\x4b\x1e\xd9\x33\xaf\x29\xf0\xd0\x46\x55\x96\xfc\x14\xc8\xa9\x9d\x67\x72\xea\x99\x9c\x5a\x20\xb1\x3e\xfb\x9e\x25\xd6\xcb\xf8\xe7\x35\xb4\x59\xe0\xac\xc7\xda\x2c\x23\xc2\x2e\x8b\x97\xca\x41\x54\x1f\x07\x76\x4e\xfc\xd7\x87\x09\xa3\x0f\xeb\x84\xd1\x87\x35\xc2\xe8\xc3\x39\xc2\xe8\xc3\x66\x61\xf4\x61\xb3\x30\xfa\xb0\x56\x18\x7d\x38\x4f\x18\xad\xa0\x65\x49\x1c\xc6\xba\x3c\xfa\xd0\xa2\x27\x23\x94\xd2\xfe\x68\x93\xcf\x76\x7f\x59\x64\xd4\xef\xda\x20\xd4\xab\x79\x6e\xd5\x18\xa2\xa9\x63\xab\xd2\x90\x2b\x7d\xa9\xfd\x92\x43\x3d\x6a\x5c\xd1\xbc\x8c\x36\x24\x2b\x3f\x06\xf9\x50\x45\x1b\x62\x82\xe6\x9d\x47\x12\x34\xef\x3c\x8e\xa0\x79\xe7\x71\x05\xcd\x3b\x8f\x2a\x68\xde\x79\x54\x41\x73\xcd\xd8\xd7\x23\x68\xb6\xd7\x7c\xdd\x82\x66\x7b\x59\xd4\x6d\x5c\x87\xac\xd9\x02\x5e\x73\xa1\xd7\x21\x74\xb6\xd7\xde\xc2\x09\xeb\x90\x3b\xdb\x13\x29\x89\xf1\x35\x08\x9d\x77\xe6\x09\xcd\xd7\x20\x74\xde\x99\x27\x34\x5f\x83\xec\xb9\x76\xfc\x62\x79\xd6\x20\x7d\x6e\xc4\x3a\x6b\x09\x57\x73\x61\xc3\xe7\x58\xba\x7d\xb0\x1a\x43\xc2\x7c\x36\x97\x07\xaa\x48\x8a\x9f\x48\xc0\xd6\xe6\x14\xb0\xf0\xdf\x10\x21\x48\x50\xc9\x63\xa5\xe8\x29\x31\x59\xf8\x39\x17\xec\xf7\xcc\x65\xed\x66\x49\x82\xd8\x4a\xac\x45\x82\xed\xe9\x62\x6c\x8f\x32\x61\x3c\xf5\x77\x80\x7c\x17\x0b\x83\x93\x4b\x82\x83\xf0\x1a\x45\x30\xf1\x31\x72\xdd\x80\xd3\xf8\x06\x45\x8f\xc0\x2c\x45\x82\x56\x8c\x09\x1a\xe5\x0e\x4c\x04\x09\xc9\xac\x13\x58\x99\x8f\x98\xc9\xc3\xbe\xc8\x27\xc8\x93\x7e\xe5\x2e\xe0\x90\x5e\x20\xbf\x6c\x5a\xdd\x76\x26\x3c\x11\xdb\x8e\xe8\x31\x0b\x03\xe2\x12\xcf\x02\x76\x7f\xdf\xed\x81\x02\xc0\x6e\x0f\x88\x13\xdf\xf5\x3c\x2f\x45\xb7\x2f\xce\x11\x71\x11\xe8\xc9\xd8\x88\xef\xb9\xcd\x2b\xf0\xf2\x0c\x13\x17\x14\x05\x30\x94\x70\x7c\x0a\xed\x09\xcf\x80\x62\x52\x6d\xcb\x02\xc4\x98\xdc\x04\xf9\x6e\x0b\x19\xbf\xc5\x55\xd6\x38\x20\x2f\x13\x6b\xf6\x01\x06\x4f\x0d\x7c\xe7\x95\x1d\xb5\x36\x48\xe2\x20\x57\x41\x6b\x65\x6c\x5a\xc6\x45\x5a\x2d\xb3\x32\xb6\xad\x37\x3b\xd8\x93\x27\xb1\x70\xaa\xf6\x4e\x46\x5b\x15\x3c\x91\x9f\xe2\xb2\x87\xc6\xf4\xb6\xf3\x87\x78\x11\x0c\xf2\x9a\x40\xb7\x76\x33\x91\x15\xd6\x8e\x78\x6b\x37\x2b\xe9\xff\x6a\xfc\x5b\xbb\x6d\x49\xcd\x33\xe9\x66\x7d\xf8\x5f\x11\xd8\xf3\xff\x43\x41\x38\xf4\xb8\xa7\x2d\xf2\xdf\xca\x38\xc3\x3c\xba\x27\x8f\xfc\x7b\xbb\x22\x08\x16\x65\x5d\xfb\x7e\xbf\x62\x65\x66\xcd\xfd\xae\xb1\x81\x88\x28\xff\x79\x51\x83\x6a\xb2\xdd\x83\xfc\x04\xc7\x83\x38\x65\x09\x77\xeb\xc3\x05\x37\x05\x27\xae\x89\x21\x77\x3c\x37\xe2\xf0\x97\xb9\xb5\x47\x73\x6b\xf7\x96\x08\xab\x5c\xc6\x97\xbb\x58\xa2\x75\x19\x21\xee\x70\x95\x90\xcd\x00\xee\x3c\x50\xd2\xa2\xd0\x34\xe3\xd8\x65\xa4\x5f\x55\xaa\x33\xc6\x07\x76\xa5\x10\xb2\xbf\xb7\xcb\x79\xb4\xd1\x4f\x76\xb1\xbc\x94\x2a\x7b\xaf\xaa\x91\x71\x15\x5f\x55\x3e\x51\xdc\xc9\x4f\x76\x15\x37\x38\xf9\x60\x17\x6b\x91\x6a\xfe\xa8\x8c\x8b\xb1\xb2\xbf\xd9\xc5\x07\x7b\x65\xda\x5e\x55\xa8\x10\xca\x2f\x95\x31\x65\xe1\x35\x22\xa7\x01\x19\x96\x39\x7b\x55\x25\xc3\x1b\x2a\x69\xaf\x2a\xe6\x01\x3b\xff\x59\x37\x20\x21\x17\xf8\xb5\xb2\xb8\x25\x57\xff\xef\x86\x95\x94\xcb\x46\xe9\xd3\xea\x0e\xc8\x5a\x82\x34\xfb\xc2\xe6\xc7\xb6\x2e\x07\xb0\x7e\xd5\x65\x2e\x60\x86\x3d\xe6\x67\x03\x06\xde\x28\x18\x97\x6d\x48\xc3\xdb\x2b\x72\x13\xb3\x53\xa4\xac\x1c\xbb\x56\x30\x73\xba\xd1\xf9\x70\x6b\x10\x10\x74\x1b\xd0\x9f\x71\x3a\xa0\x1b\xa3\x95\x10\x84\x47\x2c\xef\x69\x3a\x50\xa5\x3d\x2f\x4e\xc3\x64\x12\xd9\x33\x61\x48\x4d\x74\xcc\x71\x8c\xea\xf9\xe5\x82\xae\x97\x01\x79\x84\xf2\xa1\x05\x96\x47\x62\x96\xbd\x6d\x6e\xbe\xec\x3e\x70\xc0\xab\xc6\xce\x16\x61\x9d\x57\x0a\xa1\x6d\x7d\xb3\x4c\x24\x6d\xeb\x93\xe5\x03\x6a\xb7\x09\x80\xbd\xa6\xc8\xd7\x6b\x0b\xef\xcd\x00\x9d\x22\x4c\x51\x65\x30\x40\x8b\x27\x68\x2e\xde\xb6\xde\x17\x2f\xfa\xdb\x9b\xd7\xaf\x6b\xa1\xce\x9b\xaf\xb9\x8b\xab\x40\x9d\x3b\x7d\xeb\x44\x35\xc1\x2d\xe0\x19\x65\x08\x76\xaa\x72\xe0\xd6\x52\xc9\x83\x0a\xe0\xf5\xfa\xf4\xbe\xaf\xc0\x97\x0a\xe4\xd6\x72\xc9\x4f\x15\xd0\x22\x18\x77\x6b\xa1\xe4\xc7\x0a\x64\xf5\xc2\xb6\x97\x45\xbe\xaa\x00\x57\xc1\x8f\x5b\x0b\x21\x7f\xaa\x0e\x7c\x8d\x52\xc8\x0f\x15\xe8\xa3\x35\x85\xcb\xfe\xa3\x02\x59\x8f\x8b\xd7\x5a\xfc\xf8\x5b\xf5\xa4\x04\xeb\x91\x3c\xfe\xab\x02\x99\xe9\x51\x5a\x4b\x1c\x7f\xa9\xc0\x2d\x83\xd8\xb7\x96\x3a\xfe\x58\x3d\x25\x1a\xe5\xd5\x3e\x32\xf6\xcf\x15\xf8\x9c\x78\x6b\x9f\x58\xfb\x9f\x15\xc8\x22\x60\x7b\xeb\xa4\xda\xbf\xd6\x1e\x11\xa9\x5a\x6a\x9d\x54\xfb\xdf\x55\x34\xa8\xe9\x96\x5a\x27\xd5\x46\xa8\x09\x63\x29\xdc\xd2\x3a\xaf\x36\xa9\xf6\xa1\x13\xc3\xed\xf3\x6a\xdb\xd0\x2d\x8a\x9a\x27\xd8\x5e\x64\xe2\x3d\x17\x02\x80\x3b\xba\x7d\x77\xe5\xea\xe6\xf2\x6d\xba\x5b\xb1\x23\xf9\xe5\xc2\x0e\x04\xf7\xcd\x72\x6d\xaf\xd8\x83\x62\xdc\x17\x74\x51\x52\xca\xcb\x25\xdc\x6e\xfe\x7c\x41\x57\x2a\xe2\xfd\xf9\x8a\x9d\xa8\x88\xf7\x73\xc1\xdb\x41\xe8\x8f\x57\xec\xc5\x16\x12\x2c\xd1\x59\x19\x85\xfe\xcb\x83\x3a\x2b\x65\x0c\x4b\x74\xa6\x05\xf3\x3f\x7a\x50\x6f\xba\x8c\x62\x5e\x77\x0d\xd4\xb3\x03\xbb\x7b\x2b\xf6\xdb\x04\x69\xc5\x01\x94\xcb\x7c\xd1\x72\x00\x4b\x2e\x78\x13\x4d\xee\xc0\xee\x61\xcb\x11\x34\x6d\xc2\x8e\xae\xd9\x4b\xe6\xe7\xa6\xcf\x15\x71\xb9\x16\x8d\xde\x9f\x94\xad\x7e\x79\x85\x1f\x4c\x11\xc4\x08\x06\x08\x26\x08\xe6\x08\xc6\x08\x66\x08\x4e\x34\x45\x60\xf8\xa4\x14\x81\xd1\xb3\x22\xf0\x59\x11\xb8\x42\x64\x3b\x2e\x18\x1c\x21\xdf\x0d\x6c\xc5\x5f\xee\x47\xc8\x75\x93\x7a\xc5\x5f\x68\x29\xfe\xf2\x27\xa5\xf8\x63\xc2\x11\x49\xf4\xe6\xa5\x58\x52\xfb\x5a\x1b\xdd\x28\x18\xbb\xc8\x7f\xab\x69\x6d\x00\xe8\xcd\xd7\x21\xb6\xb6\x2e\x4b\x2c\x1d\xe2\x88\xeb\x10\xc7\xc8\x77\xbf\x9e\x43\x90\x2a\x1e\xd5\x17\xaf\xdf\xc6\xb4\x2c\xbe\x69\x88\x56\x34\x6d\x28\x1f\x2c\xa1\xb2\x3c\xa9\xef\xea\xb2\xbe\xf8\xb4\xbe\xf8\x9a\x16\x63\x8f\xee\x13\x03\x0f\xdc\x6e\x0f\xc0\xdb\x25\xba\xdf\x37\x95\xac\x77\xe6\xcf\xcf\xa6\xfe\x16\xb8\x8e\x90\x1a\x6f\xf1\x83\xc4\x74\x68\x75\x5d\x9f\x9b\x70\x8e\xcd\x9f\x5f\xcc\x9f\x4d\xaa\xae\x15\x34\x6d\x55\x7d\x18\xa5\xd3\x6d\x30\x65\x59\x09\xaa\x2c\xd3\xc0\xd5\x28\xcc\xb8\x80\x1e\x45\xbf\xc4\x64\x28\xd8\x20\xb3\xf0\x47\x21\x4f\xaf\x53\xa0\xd1\x4e\xf6\x53\x7a\xb5\x22\x47\x25\xbc\xde\x59\xef\x98\xcf\x16\xae\x22\x1b\xb6\x67\x93\xa6\x07\x0d\xdf\x95\xdd\xe9\xdf\x95\x14\xe5\xfb\x86\xef\xb4\x6c\xae\xfa\x87\xda\x48\x3f\x3d\x50\x63\x18\x1a\x1a\x43\xa9\xcb\x0b\x4d\x25\xdb\x2b\xbb\x58\x97\xd7\xfe\x54\xf7\x8d\x10\x62\x7c\xb0\xeb\x34\x09\xc4\x1f\x76\x1d\x57\x5b\xff\x66\x17\x5b\x2b\xfe\xaf\xfa\xfa\x72\x85\x7e\xa9\x6f\xa0\x96\xfe\x47\xbb\x5e\x66\x68\xdb\xcd\x26\x29\x29\xd5\x7d\xe5\xf7\x75\x27\x52\xa9\xff\xea\x9b\x89\xd3\xfc\xab\xdd\x48\x13\x31\xfe\xdb\xae\x2b\xc5\xa6\x4a\x05\x58\x02\xd7\x6d\x2f\x49\xa5\xda\x30\x9d\x4c\x2b\xd5\x5c\x14\x86\x2b\xe5\xc7\x59\x44\x47\x12\x54\x2a\xc4\xf0\x93\x4a\x85\x98\xfe\x2e\xc7\x54\x94\x90\xb6\x1a\x54\x04\x28\x71\x75\xb0\x4c\x7c\x96\x55\xca\xb9\x60\x77\xa2\x2b\x38\xf9\xd6\x5d\x64\xa4\x41\x97\x21\x4e\xc5\x0f\x55\xad\xc9\x0f\x35\x1a\x0f\x06\xb2\xbc\xe7\x75\x60\x2b\xd8\xe2\x07\xab\xd8\x00\x5f\xc5\x19\xaa\x0b\x81\x99\xec\x51\x57\xce\xc8\xfd\x7d\xb5\x42\x2c\x32\xd7\x42\xa6\x14\x5a\xcd\x28\x45\x07\xf7\xf7\x9c\x82\xa1\x97\xe7\xfe\xde\x71\x64\xfe\xd7\xb7\xaf\xd5\x50\x16\xab\x1a\xab\xf3\x58\xa4\x67\xac\x2c\xc8\x02\x25\x63\x65\x5d\x57\xd1\x30\x56\x3e\x76\xc1\x8c\x12\x49\xc8\x7f\x2d\x19\x1e\xc5\x0e\xb0\xde\xd8\xca\x6e\x6e\xba\x48\xfb\x69\x9e\x18\x41\xc0\x9a\x5b\x8d\xac\xde\x4a\xe5\xdc\x43\x7b\x13\x10\x8c\xde\xe4\x09\xb2\x7b\xd3\x94\x76\x0f\xed\x4e\x82\x30\xfa\x93\x85\x3f\xa0\xa2\x80\x1f\x29\xad\xff\xa9\xaa\xd3\x6b\xad\x73\x7b\x55\x01\xbc\x2e\x67\xd9\x9f\x2a\x90\x0d\x6d\x61\x6b\xc5\xdb\x87\xda\x91\x4b\x29\x7c\x6b\xd5\xdb\x1f\x15\xf0\xba\x14\xbe\xb5\xf6\xed\xb7\x0a\x78\x91\xaa\xa1\xb5\xe6\xed\x5f\x15\xc8\xb6\x28\xaf\xb5\x0a\xee\x97\x86\x2e\x34\x59\x59\x6b\x3d\xdc\x8f\x0d\x7d\x94\x02\xc1\xd6\x0a\xb9\x9f\x2b\x5d\x58\x24\x45\x7b\xdd\xdc\x3f\xab\xb3\xa8\xa5\x4a\xda\x2b\xea\x7e\x9d\xdf\x93\xd4\x56\xb4\x56\xd8\xfd\xbb\xd2\x8f\xae\x7e\x6d\xad\xb5\x43\xa8\x02\x5f\x53\x4b\xb7\x56\xdd\x91\x2a\x78\xd3\x3d\xa6\xb5\xf6\x2e\xad\xf6\x60\x3a\xc8\xb4\x56\xe0\xe1\x6a\x0f\x42\x67\x7a\x0d\x5b\x2b\xd6\x82\x2a\x70\x41\x6d\x76\xf7\x5b\xcb\x4c\xaa\xb0\x35\x25\x5a\xcb\xd0\xb8\x55\xd8\x16\xcd\xdb\xfd\xdc\xb6\x8f\xb8\xda\x47\x55\xef\xb8\x0b\xcf\x5b\xc7\x3d\xae\x39\x42\x5c\x75\x7d\xdc\x3a\xec\x71\x15\xb4\xb0\xcb\xf8\xd2\x3a\x1b\x4e\x2d\xba\x66\xc4\xfa\x72\x6a\xab\xc6\xaf\x01\xfc\xa4\xab\x4b\xaa\x6b\x63\x70\x06\xcb\xe9\xaa\xe6\x42\x58\xa2\x43\x25\xc1\x58\x46\x2f\xd5\xf8\xf5\x82\x8e\x38\x13\xb1\x9c\xe6\xa9\xee\xc3\x25\xe6\xa1\x14\xb3\x3b\x0f\x98\x86\x52\xce\x2e\xb9\x3f\x25\x09\x72\xf6\xe0\x1d\x2a\x85\x35\x4b\x76\x5a\x12\x0c\x07\x0f\xee\xb4\x94\xf4\x2c\xd9\xa9\x46\x09\xbd\x7f\x70\xaf\xba\x98\x48\xef\xf6\x93\x11\x06\x7c\x91\xbe\x70\xa9\x3c\x0c\xab\xea\x01\xd7\xea\xf8\x57\xea\xf2\xde\x3f\x25\x55\xde\xa7\x67\x4d\xde\x77\xac\xc9\x5b\x4f\xe0\x94\x8f\xdf\x4b\xec\xb9\x06\x55\xd3\x23\x84\x33\x49\x6d\xfd\xc9\xcd\x12\xaa\x9b\x69\xed\x97\x2b\xeb\x9c\x1a\xda\xd8\x9e\x65\xae\x61\xcd\x66\x99\xcf\x01\x78\xfa\x40\x99\xfe\x7b\x5d\xa4\x2f\x23\xa1\xbc\xd7\xfc\x63\x6e\xad\x32\x2e\xaa\xd9\xb7\x4a\x75\x31\xcb\x5d\xcd\x17\x42\x44\xf2\xd9\xaa\xd2\xc4\x1b\xbb\xf6\x57\xcc\x56\xfa\xdc\x2a\x7d\x8f\x86\xc1\x4d\x9c\xe1\x32\xdc\x89\xac\xb9\xb8\x38\x2c\xc3\x9c\xc8\xc2\xc3\x2c\xbc\xde\x43\x09\xe5\x76\x8f\xac\xaa\x92\xc3\xdb\xb3\x6a\x0c\xe6\xec\xc2\xaa\x34\xf8\xaa\xc3\x9a\x31\xcb\x1d\xda\xb1\xfb\x33\xed\x1d\xcf\xac\x6a\x8d\xa1\x3d\xd0\x84\xda\xcc\x45\xd3\x54\x46\x33\x71\x5d\xd9\x13\x94\x45\x46\x07\xdc\x0f\x67\x76\xb0\xd7\x41\x05\xf0\xdf\x22\xd0\x2b\x0a\x78\xed\x7f\x72\x4f\x1f\x21\xe8\xe0\xad\x0d\x77\x3d\x41\x07\xf7\x6d\xb0\x42\x4a\xd8\x3a\x8e\xca\x9d\x0d\xd8\x10\x12\xb6\x76\x59\xf8\x5c\x37\x6e\x29\x23\x6c\x2d\x3c\xdd\xb5\xa1\xeb\x22\xc2\xd6\x02\xd4\xf3\xca\xd8\xd7\xe4\xb2\x70\x6c\x03\x2e\x6f\x72\x7b\xb9\xe9\x17\x1b\x38\x43\x06\xed\x05\xa6\x47\x36\x5c\x0d\x9f\xb4\x17\x9a\xee\xd9\xd0\x35\xa1\x53\x6b\x71\xe9\x85\x0d\xdc\x14\x39\xb5\x16\x95\x1e\xda\xf0\x4d\x81\x53\x6b\x39\xe9\x4e\xdd\x41\x54\xb6\xdc\x43\xd8\x5a\x76\x79\x56\x59\x7d\xcb\x20\x7d\x0a\x5b\x0b\x16\x0f\xec\x3e\x74\xb1\x65\x6b\xb9\xa2\x05\x3b\x94\x03\xbf\x5c\xcc\xfc\xd5\x7d\x08\xe0\xa9\xce\xf0\x9d\xea\x0c\xdf\xc7\xb9\xfc\x1e\xc9\xae\xd1\x4a\xdc\x9e\x99\x2f\xea\xcf\x88\xf0\x52\xb2\x7f\x3f\x3f\x25\xf6\xef\x9f\xcf\xec\xdf\x33\xfb\xd7\xc0\xfe\xf1\x64\x72\x19\x96\x6c\xe0\xaf\x4f\x8e\x0d\x2c\x0d\xf7\xa2\x86\xf2\x5a\x9b\xc3\xa6\x80\x9b\x0f\x8a\x5f\xb2\xb8\xcd\x70\x89\x36\x4b\xb3\x8f\x6a\x2e\x51\x40\x90\x6d\xb1\x58\xae\x53\x1b\x23\x45\x05\xe4\x7a\x95\xc5\xbb\xad\x87\x51\x0d\x0a\x22\x83\xed\xf1\xb8\x18\x75\x31\x41\x42\x8c\x08\x4b\x50\xf5\xf9\x81\x3c\xea\xcf\x3a\x8f\x2a\xf9\xc4\x9f\x8d\xb4\x91\xec\xd8\x2b\x6e\xf1\xe7\x1a\xae\xf4\xd8\xaa\xd3\x88\xf2\x2f\x56\x95\x46\x51\x1f\x59\x55\x07\x7b\xa7\x9c\x0b\xd9\xb3\x2a\xd4\x34\x15\xc7\x28\x6b\x0e\xd1\x20\x08\xa7\x25\xb3\xf8\x73\xc9\x9b\x06\x49\xc9\x27\xfe\x5c\x17\x67\xf4\xcc\xaa\xe4\x7a\x93\x03\x7b\xbc\x2a\xde\xe1\x7b\xab\xe6\x2c\x63\x29\x77\x3e\x55\x06\x5b\x89\x61\xf8\xd1\x5e\x1e\x2b\x00\xe1\x2b\xab\x5e\x0f\x90\xf7\x93\x55\xc7\xa3\xcf\x7d\xa8\xfd\x42\x10\x88\x7f\x58\x95\x06\xf5\xf8\x9b\x55\x79\x31\x1d\xa3\xd2\x98\xef\x67\x43\x10\xf1\x8b\x3d\x63\x9e\x64\xe8\xc7\xe5\x32\x6b\x71\x7b\x28\xb9\x7e\xcc\x74\xdc\xeb\xc7\x69\xc4\x4d\xbb\x0f\xf6\x7c\xdf\x4f\xcd\xbc\x7c\x1c\xe4\x30\xc8\xe5\x86\x97\x59\xba\x1c\x69\x75\x23\xab\x36\x37\x9d\xff\x1e\xc6\x51\x84\xd2\xb7\x95\xba\xa2\x80\xbb\xfe\x3f\xdd\xcf\x8f\xc0\x8e\x9f\xdb\x70\xf5\x2b\xd2\x9e\x2d\x3f\xb6\xc1\xaf\x37\x17\xc0\x17\x1b\xfc\x5a\x73\x01\x1c\xd9\xd0\xd7\x9a\x0b\x60\xcf\x86\xae\xd0\x45\x7b\xce\xfc\xc2\x86\x5d\x62\x9c\xf6\xdc\xf9\xa1\x0d\x5c\x22\xad\xf6\xbc\xf9\x4e\x05\x34\xc7\x7b\xed\xb9\xf3\xb3\xca\x41\x34\xe2\xca\xb6\xe6\xcf\x0f\x6c\xf8\xeb\x8a\x26\xf0\xbe\x72\x08\xcb\x80\xb5\xad\x19\xf3\x4f\x36\x70\xf1\x06\xb4\x67\xc9\x3f\x56\x4f\x60\x35\x14\x6e\x6b\xeb\xa5\x57\x95\xfb\x6f\x87\xc2\x6d\xcd\xfa\xff\x64\x77\x61\x44\x7b\x6d\x6d\xad\xf4\xc1\x06\x2f\xa2\xb1\xb6\x16\x27\xfc\x51\x3f\x6e\x29\x73\x69\x2d\x50\xf8\xcd\x86\x6f\xca\x74\x5a\x9b\x29\xfd\xcb\x86\xcf\x1f\xf6\xf6\xd6\x49\xbf\xd4\xbd\x19\xeb\x88\x29\xf0\x63\xe5\x32\x89\x1c\x86\xad\x6d\x9e\x2c\xb8\xb5\x19\xe3\x96\x08\x27\xb0\x08\x08\x80\x9f\x75\xa1\x8e\xd5\xab\x46\xc6\x2c\x17\x54\xa0\xf1\x6b\xab\x9f\xcf\xba\xf0\xe8\xd7\x05\xc2\xa3\x71\x96\x64\x83\xaf\x96\x36\xbc\x94\xfc\xec\x3e\x25\xc9\xcf\xf9\xb3\xe4\xe7\x59\xf2\xd3\x20\xf9\xd1\x33\x4e\x31\xd1\xcf\xf1\xb7\x93\x3a\xc5\x96\x08\x95\xb2\x9c\x49\x43\x79\x5d\x08\xdb\xf2\x67\x25\x0d\x9d\x2d\x6f\xd8\xcb\x6e\xd3\x9c\x60\x14\x8c\x72\x66\x0b\x30\xaf\x1e\x3a\x9f\xc6\x65\x5b\x3b\x78\xed\xbc\xb6\xc3\x07\x8a\x32\x76\x75\x51\x86\xcc\x59\xb7\x5b\x97\x98\x6e\x6a\x55\xea\x5c\xd6\xc0\xaa\xd3\x58\xa4\x13\xab\x4a\xe3\x6f\x2e\xed\x2a\x8a\xaf\xc3\x2c\x29\x93\xa3\xc8\x9a\x0f\xcc\x43\x1a\x45\xef\xa7\x3b\xbb\x87\x79\x69\x17\x20\xeb\x2f\x70\x90\xe6\xe3\x00\xa3\x94\x08\x63\xda\x5b\xab\x45\xb9\x56\xca\x54\x40\x4d\x44\x5f\xd4\x3b\xab\x92\x93\xd8\x9f\x35\xee\x3d\xcd\xc8\x1e\xbb\x53\xd1\x41\x4a\x28\x15\x98\xa5\xca\xeb\xe5\xe5\x1b\x89\x01\x91\xaf\x7c\x5e\x34\xf8\x7a\xf4\xbe\x7c\x8c\xc2\xb8\x1f\x87\x5b\xb1\x04\x23\xe2\xf8\x31\x85\xcc\xe6\xe6\x4b\xe4\xd9\xd3\xda\xdc\x44\x9e\xea\xd4\xdb\x49\x92\xec\x16\x45\xd2\x69\x0a\x72\x9f\x9c\xdb\x38\x89\xc2\x00\x1b\x83\x93\xce\xec\x0b\x86\xf4\x52\x87\xfe\x31\xc8\xf7\xef\x82\x90\xcc\xef\x93\x94\x30\xd5\x0a\xb7\x82\xa8\xd6\xef\xfe\x9e\x88\xe5\xde\x43\x63\x94\x46\x28\xa5\x0c\x49\xe9\x4b\xf6\xda\xaf\xf4\xcb\x21\x6c\x6e\xaa\x2a\x7d\x9a\xbc\xb2\x28\xe0\x8d\x7f\xee\x0e\xab\x52\x8e\xd6\x09\x62\xa6\x36\x5c\x33\xef\x5e\x6b\x29\xca\xc0\x86\xbf\xde\x4c\x31\x27\x36\xf8\xb5\x66\x8a\xb9\xb4\xa1\xaf\x35\x53\xcc\x69\x05\xba\xc2\x24\xed\x65\x28\xd7\x36\x70\x1b\x19\xb5\x17\xa5\xdc\xda\x5d\x54\xf1\x59\x7b\x91\xca\xbe\xdd\x89\x86\x12\xdb\x4b\x55\xee\x2a\xa7\x53\xc7\xaa\xed\x65\x2b\x9f\x6d\xf8\x42\xf6\xd1\x5a\xa8\x62\x81\xad\xc1\xee\x5c\xc2\xb2\x88\x13\x59\x08\x05\xc0\xa1\xce\x91\x58\xfd\x56\xd0\x36\x17\xbd\xac\xd4\x6b\x15\xc6\xfc\x3e\x4d\xd4\xca\x25\x32\x2b\x4e\xd3\x00\x60\xf5\x36\xd4\x79\xae\xe3\x46\x9e\x2b\xee\xc7\x08\xe7\xdb\x61\x9e\x6f\x8d\x71\x36\xce\x4d\xbe\x8b\xb3\x5d\xb2\x59\x95\xe9\x6a\x41\xe5\x0a\x62\x96\x3f\x8e\xa9\x8c\x3a\xdd\xc7\xd9\x68\x5f\x44\x9e\xee\x7a\x9e\x17\x65\xe1\x84\x72\xae\x5e\x4e\xa6\x09\x3a\x1f\x22\x44\xf2\x9e\xe2\x17\xe8\x18\xfc\xb7\x2a\xf8\x0b\x33\x87\xf3\xc2\x3c\x67\x6c\x79\x4f\x7b\x09\xdf\xb0\xb7\x9d\x2d\x8c\xf5\x31\xfd\x06\x41\xcf\xf3\xf8\xc7\xac\x1b\xfd\x4b\xe4\xe5\x24\xc0\x24\xff\x25\x26\x43\xd7\xd9\xda\x72\x00\x90\xc1\x5e\xba\xc8\x23\x38\x1e\xb9\x00\x8a\xef\xe8\xbe\xc9\x45\x60\xfa\x33\x17\x01\xd1\xa4\x07\x7a\xb0\xdb\x03\x2c\x0e\x0d\xd8\x60\xf6\x0c\x9c\x72\x95\x6b\x0b\x8c\xc8\x36\x5d\xd2\xa3\x1c\x90\x48\xb9\xe1\xa7\xe8\xf6\xc5\x19\x1a\xec\xdf\x8d\xdd\xdf\xff\x67\x6b\xeb\xd5\x0c\x7b\x63\x8c\xfa\xf1\xdd\xfd\xbd\xe3\x39\x05\xfd\x3d\xc0\xd9\x64\x7c\x7f\xef\x38\xc5\x0f\xbf\x53\x4a\x7d\x56\x6c\x58\x81\xbc\x53\x8d\x13\x94\x11\xb9\x67\x72\xf9\x91\x37\x0a\x48\x38\x74\x03\xb0\x11\xf7\xdd\x94\x53\x54\xd8\x4f\xbb\xaf\x7b\x1b\xce\x16\x25\x8d\xb0\x17\x0e\x03\xbc\x43\x5c\x2c\x1e\xf3\xad\x37\x94\xbf\xc3\x3e\xf6\xf2\xc9\x55\x4e\x30\x8b\x3b\xa2\xaa\x74\x0e\xaa\x8b\x7b\x94\x35\xeb\xe2\x9e\x3f\xa3\x2c\x5c\x17\xf7\x28\xf7\x49\x8a\x02\x40\xe2\x26\xa0\x00\xfa\x59\xc5\x8b\xce\x6a\x14\x47\x5b\x71\x9a\x23\x4c\xea\x84\x04\xdb\x98\x5e\x89\xf2\xd0\xe6\xf5\x5f\xb6\x3f\xca\x8d\x1f\x88\x89\x38\x86\xa4\xe0\xe5\x6b\x38\x40\xa4\xa3\xfa\x2c\xbd\xf2\xe5\xc4\x8b\x02\x2c\x33\xf3\xc9\x98\xe9\x86\x1f\x30\x73\xf1\xe5\x13\x9e\xb9\xbd\xe7\xc6\x54\xd6\x87\x8d\x88\x8f\xfc\xb7\xee\x8c\x04\x98\x0e\x1c\x79\x28\x61\xd2\x33\x18\x4e\x30\xa5\x09\x2e\xac\xf2\x82\x5f\xe8\x54\x06\xc7\xca\x11\x39\x12\x03\xe7\xa2\x37\xec\xba\x80\x02\x0c\x83\x71\x70\x15\x27\x4c\x70\xdd\x11\x8d\x47\x66\xcb\x5d\xad\x89\xeb\xfc\xdd\x7b\xf3\x77\x07\xce\xa2\x38\xa7\x2b\xb9\x33\x21\xd9\x05\x0e\xc2\xeb\x38\x1d\xf0\xf1\x87\x4c\xe0\x2b\x3b\xeb\xf0\x5e\xc4\xa8\x94\xc7\x60\x9a\x93\x20\x49\x64\x23\x17\x71\x11\x97\x1a\xbd\x9f\xf2\x59\x77\x03\x8a\x05\x93\x9e\x8f\xbd\x71\x96\x33\xe2\x30\x48\x36\x02\x97\xb8\x08\xc0\x04\x62\x2f\x0d\x46\x28\x02\x05\xe4\xc7\x48\x87\x27\x10\x55\x17\x53\x08\x41\xcf\x4f\x75\x08\x98\x43\x08\x60\xaa\x20\x44\x28\x27\x38\x9b\x2a\x10\x60\x46\x31\x01\x8f\x21\x56\xe8\xa8\x20\x5d\x7c\x2c\xd8\xca\x44\x5f\xfb\xd5\xe2\xfb\x3d\x17\x81\xfb\x2f\x5f\xf7\xc0\x2c\xee\xbb\x5d\x27\x4e\xc7\x13\xc2\xf2\x13\xdc\x91\x00\xa3\xc0\x81\x4e\x8e\x12\x14\xd2\xb2\xab\x09\x21\x59\xaa\x47\xfd\x47\x5e\x2a\x92\x6e\x7b\x24\x3b\xcc\x6e\xe9\xa1\xc8\x91\x0b\x00\x20\xef\x5c\xe4\xe5\x88\xec\xc8\xe0\x89\xae\x53\x2e\x00\xa1\xc3\x34\x2b\x03\x1c\x07\x5b\x7a\x0b\xd0\x71\x91\x17\x05\x24\xc8\x11\xf1\x64\x85\xff\xf2\x0d\x44\x1e\x46\xa3\xec\x06\xd5\x41\x06\x75\xb5\x26\x68\x8a\xbf\x93\x1c\xbd\xe8\x67\xd8\x15\x2f\xca\x8b\xac\xff\x02\x79\x7f\x4c\x10\x9e\x9e\xb3\xb9\x66\x78\x27\x49\x5c\xbe\x16\x50\xae\x04\x14\xd3\x07\x80\x6c\x6e\x3a\xfd\x20\xc9\x91\xf3\xd2\xf7\xd3\xca\x20\xd7\x32\xf3\x96\x73\x34\x9f\xa9\x85\x67\x33\x4e\xb7\x6e\x62\x74\x4b\x0f\x65\xdd\xf1\xd4\xaa\x1b\x3e\x7a\x92\x88\x3a\xcd\x48\xdc\x8f\xc3\x80\x54\x3c\xfe\x16\xdd\x4a\x25\xc0\x2f\x45\xf2\x89\x56\xe3\xeb\x52\x6d\xc4\xc8\x94\x5a\x6a\xf9\x7c\x3a\xba\xca\x92\x5c\x18\x8d\xfa\xf3\xda\x50\x30\x44\xd0\x30\x32\x9f\x89\x1a\x53\x19\x5c\x70\x11\x51\x4e\xc7\xa8\x49\xcc\x0b\x00\x00\x4c\xbd\xf1\x24\x1f\x7a\xc1\x78\x9c\x4c\x99\x34\xbb\x10\xc0\xd2\x52\x86\x9f\x4b\xf3\x56\xb9\xcc\x2f\xe2\xf4\x05\x7a\x37\x47\xf3\x20\x34\x06\x16\x8b\x65\x33\x60\x1a\xcb\x55\x80\x0e\xea\x92\x9e\x9f\x42\xd4\x46\x22\x2d\xb0\x1e\xa5\x09\x63\xdf\x95\x0f\x5d\x9c\x32\x80\x22\x1c\xac\xeb\xf4\x93\x20\x1f\x1e\xa1\x3c\x0f\x06\x8c\x1d\xc1\x2b\x08\x45\xe9\x66\x71\x7d\x46\xb2\xa1\x0b\x48\x09\x13\x25\xc1\xd4\x77\xd8\xc1\x9a\x3a\x30\xe1\x25\x2e\xf6\x03\xd0\xa4\xa6\xa1\x90\xf4\x93\x8d\x1b\xd5\x34\xb8\x41\x4d\x83\x6d\x35\x0d\x36\x14\x0a\xb8\xaa\x50\x48\x34\x35\x4d\x14\x47\x07\xfc\xd9\x75\xc1\x8c\xc9\xc2\xc4\x63\x6b\xa1\x29\x9c\xd1\x35\x77\x82\x84\xd2\x35\x22\xf2\x8e\x6c\x29\x31\xa0\x7e\xa1\x98\x76\x61\x43\xca\x13\x75\xd2\x87\x62\x5e\xb6\x86\xfe\x9b\x7f\x90\xff\x0e\xf0\x80\x71\x4d\x52\xee\xf6\x0f\xf2\xc3\x0f\xf2\x1a\x51\x10\x2f\x7d\xd5\xa2\x4b\x7a\xef\xf4\x1f\x9d\x59\xb1\x41\xfe\xd7\x7f\xbc\x4b\xc4\xed\x72\x53\x00\x5f\xbe\xae\x53\x22\x11\x30\x13\x27\xb8\x4b\x7a\x14\x2f\x74\x16\x5c\x94\xbc\xf6\x68\x53\x42\x07\x2d\x62\x7c\x29\xf7\x02\x3a\xda\x98\x1a\x06\xd4\x7c\x77\x16\x5d\xe2\x94\x3e\x12\x05\x50\xf7\x14\x15\xee\x8c\xc4\x23\x94\x4d\x48\xe7\xbf\xd0\xdf\x21\x3f\xc4\x28\xba\x10\x65\x7f\x7f\xfd\xba\xe0\x1b\x16\xe0\x41\x2e\x48\x1b\xfa\x3c\x64\x23\xdf\xd8\xc7\x6c\x42\x10\xfe\x78\x71\x74\x68\x6e\x2f\x7f\x6d\x5c\xb1\xe9\xfc\x70\x7b\x61\x82\x02\x2c\x6f\x90\x0b\xa0\x23\xe7\xe6\xf8\x3e\x65\x5e\xd9\x9b\x1a\xf4\x09\xc2\xef\x4e\x71\x36\x8a\x73\xfa\x6a\xe5\x59\x42\x01\x79\x64\x88\x52\x46\x68\x8a\x26\x2e\x00\x5e\xc8\x98\x3a\xe4\xbf\xa5\x84\x08\x97\x6b\x31\xba\x6c\xe7\x2a\xc3\x04\x45\xf4\xad\x45\x6c\xec\x80\x0c\x71\x76\xfb\x02\x15\x1a\x9c\x99\x3e\xb4\x20\x8a\x5c\x04\x0a\xd0\xa9\x29\xbc\x8d\x93\x64\x8f\xd3\x74\xf2\xbc\x97\x8b\xe2\xe5\x24\x0e\xaf\xa7\x9b\x9b\x73\x26\x5a\x14\x30\xa3\x74\xa7\x92\x6d\x4c\xca\xfb\x1e\xfa\xdd\xb4\x07\x23\xbf\x8d\x9c\x09\x8e\xfd\x59\x01\xf5\x07\x24\x6a\x50\x8b\x8e\x29\x63\x1a\x09\xb5\xe8\xd8\x54\x8b\xea\x3f\xe1\xd8\x56\x8b\x8e\x1b\xd5\xa2\xe3\xfb\xfb\xb1\xad\x16\x1d\x9b\x6a\xd1\xb1\x1f\x2e\xa3\x16\xd5\x43\xde\x12\x37\x83\x13\x88\xc0\xfd\x3d\x2a\x00\x1c\x03\x38\xd2\xd4\xa2\x63\x4b\x69\x39\x16\x6a\x51\xa3\xfc\xdd\xb8\x8a\xc5\x46\x4a\x2d\x3a\x9e\xaf\x16\xb5\x7b\xa8\xbf\x79\x74\x88\x63\x3a\x3d\xae\x16\x0d\xfc\x31\xc4\x9c\x5b\xd2\xd4\xf3\x1a\x51\x15\x53\x1a\x6b\x1e\x79\x91\xa5\x5b\x18\xe5\xf1\x17\x54\x47\x5b\xa8\x4a\x45\x65\xd4\x7e\xf9\x24\xe9\x2a\x8c\xfa\x75\x53\xc6\xa8\x5f\x37\x59\xda\xfa\x49\x4e\x93\xc9\xd1\xbe\xba\x0c\x92\x91\x29\x69\x0d\xa1\x92\x23\x72\x4e\x47\x94\xbb\xc8\xef\xf6\xa4\x40\x8e\x13\x25\xde\x65\x96\x44\xbc\xf6\xfe\x5e\x84\x84\xde\x60\x29\x55\xbd\x38\x67\xff\xba\xf4\x76\xba\x95\x8c\x7a\x08\xd0\x31\xe8\xb2\xb8\x94\xc9\xe2\xb8\xc8\xcd\x71\x36\x52\x15\x88\x71\x73\x33\x2d\x19\x43\xe7\x65\x3c\xa2\x8b\x12\xa4\xc4\xe1\xa2\x37\xa7\x2c\x80\xa9\x9f\x7a\x22\x56\x86\xd1\x12\x3a\x0e\xb0\x48\x0b\x2e\xac\xcc\x4b\x61\xa5\x10\x0a\x40\x3a\xf1\x04\x11\xc4\x30\x3d\x24\x6a\x8c\xc8\x7f\x5b\x03\x80\x3f\x61\x25\x0c\xd9\x4d\xb9\x2e\xbe\x8a\xb3\xad\x02\x64\x77\x5f\xf7\x00\x23\x90\xce\x50\x88\xe2\x1b\xb4\x23\x69\x0f\x17\xcc\xcc\x60\x85\xda\x13\x12\xa1\x24\x98\xbe\xcb\x11\x11\xaf\xaf\x78\x9e\xf8\x8b\x48\x1b\x1b\xdf\x94\xc2\x87\xee\xeb\x9e\x78\x77\xca\x8d\x6c\x68\x07\x2a\xaf\x39\xef\x55\x3c\x78\x4b\x7c\x5f\xac\xc0\x1b\x92\x2c\x4b\x48\x3c\x9e\x7b\xd0\xa1\x43\xe2\xf1\x78\xea\x7d\xae\x4d\x7a\x5e\xa6\xf5\xfe\xae\x79\xa4\xe0\xa9\xf1\x48\xdc\x16\xcb\x96\x0c\x71\x89\x7e\xe2\xcf\x8a\x52\xe8\x9e\xfb\x89\x97\x31\xeb\xe4\xfc\xfe\x7e\x56\x70\xee\x0a\x66\x3e\xa2\xdb\x26\xed\x65\x14\xdd\x97\x7b\x04\xc7\x83\x01\xc2\x5c\xfa\x58\x5a\x15\x64\x1b\x22\x36\x6b\xb5\x45\x90\x23\x87\xab\x31\x99\xdb\x76\x27\xf3\x33\xaf\xfc\xbd\x71\x85\x51\x70\xad\x82\xa7\xd2\xca\x8a\xb8\xc6\x86\x59\x10\x3f\xf3\xc2\x24\x4b\x11\x85\xe0\x52\xd2\x05\x95\xa4\xac\x9a\x8f\xf9\x95\x58\x9a\x22\xee\xbb\x8a\x7c\xa0\x47\x8a\xc2\x8a\xd3\x54\x50\xc7\xda\xdf\xbe\xe3\x00\xe8\x8c\x82\x74\xc2\xb3\x2b\x2a\x78\xe5\xac\x73\x7e\x3b\xef\xef\xbb\xbd\x0d\x85\x36\x50\xf7\x0d\x53\x34\xa8\x61\x64\xe9\xf9\x30\xbb\x4d\x7d\x42\x17\x9d\x92\x9c\x07\x29\x41\xf8\x26\x48\xdc\x18\xc0\xd8\xaf\x20\x14\x6f\x18\x47\xc8\x05\x05\xa4\x90\x40\x01\x0a\xba\x27\x13\x3f\x83\xa1\xff\xf2\xcd\xc6\xc4\x1b\x06\xb9\xc6\xbd\x91\xe0\x2a\x66\xb6\xb0\x14\xcb\x87\xfe\xcb\xd7\x70\x62\xf1\x77\xaa\x05\x74\x5e\x3b\x00\x08\xce\x4d\x64\xe1\x16\x0b\x0f\xdc\x0c\x3e\x2a\x27\x87\x97\xe1\xe4\x82\xaf\xcb\xc9\xe1\xaf\xcd\xc9\x0d\xd1\x08\x75\x1c\x85\x76\x8d\xf3\xd9\x99\x50\xf4\x40\x50\x4a\x98\x04\x9d\xc0\x71\x32\x19\xc4\x69\xde\xe9\xaa\x93\x95\x7b\xfd\x2c\x49\xb2\xdb\xdd\x09\xce\x33\xfc\x2e\x35\x7e\x0a\x8a\x59\xd7\x1a\x8a\x64\x12\xf4\x4d\x2c\xca\x6b\x01\x64\x0a\x0a\x76\xda\xc2\xcd\xcd\x49\x55\xe8\x58\x1e\x2a\x58\x39\xb1\xf4\x49\x12\x5c\x56\x61\xc8\xc9\x93\x45\xef\xcd\x4d\x90\xc4\x55\xb5\xd1\x43\x25\x72\x5f\x0f\x1f\xdb\xb2\xb2\x67\x7b\xd7\xef\xd0\xde\xd5\xa0\xc2\x63\x45\x85\xef\x63\x9c\xe1\x19\x43\xc1\x59\x29\x74\xbc\x0c\xd8\x8a\x41\x6c\xfd\xce\x5d\x37\x78\xa0\x11\x66\xa2\xa5\xa9\x71\xa0\x98\x90\x28\x1b\x32\x5f\x0d\x56\x56\xc8\x4b\x44\x27\x4f\x5f\xf2\x59\xdc\x77\xe9\x8a\xe9\xc7\x8f\x48\x4b\x3a\xc0\x77\x53\xd9\x37\x54\xf5\xf1\x8c\x90\xa4\xf0\x3d\x01\x98\xa1\x88\x6a\x62\x6d\x41\x09\xbc\x94\x94\x00\xd1\xf5\xf8\x04\xe2\x9e\x12\xd5\xd0\x09\xd0\x77\x55\xfe\x4d\x6f\x11\x02\xd0\xc5\xc2\x93\x51\x7c\x85\xfd\xb7\x33\xcd\xa2\x00\x7b\x04\xe5\x04\xb0\xff\x72\x8e\x25\x65\xd7\x0f\xdd\xbe\x88\x5d\xec\x21\xba\x0d\x14\xa1\x16\xf2\xfd\xc2\x7e\x39\xf4\x70\x18\x60\xca\x0f\x04\x04\x6d\xd0\x55\x62\x76\x02\x14\x99\xde\x31\xa2\x51\xfe\xcd\xf4\xfe\xfa\x3a\xa5\x65\xb0\xf9\x77\x65\x33\xde\x59\xee\xa7\xd0\xee\x21\x8a\xf3\x31\x93\x65\x39\xfb\x67\x67\x27\x67\x0e\x00\x9d\x9a\xcf\x26\x49\x32\xe7\xcb\xb3\xfd\xf3\xfd\x0b\x87\x3d\x0c\x39\xcb\xfd\x23\x37\x10\x79\x5c\xd5\xcb\xef\x92\xdc\x40\x33\x09\x51\x65\xb6\x48\xf6\x4e\x59\x3c\x63\x9e\xc8\x1a\x97\xde\x40\x0e\x55\x5b\x8f\x35\x9f\x07\xce\x4b\x96\x34\x91\xd5\x73\x97\xf4\x36\x37\x39\x97\xf7\xa2\xa6\xae\x00\xd0\x3e\xd2\x76\x2b\xa0\x2c\x3d\xab\xd3\x5a\x76\x07\x8a\x20\x9f\xa6\xe1\x0b\x91\x66\xdd\xed\xa2\x1e\x7d\x6f\x0c\x1e\x33\x88\xa2\xfd\x1b\x94\x92\xc3\x38\x27\x28\x45\xd8\x95\x6a\x54\xd6\x2a\x61\xa5\x16\x5f\x5b\xfd\xe4\x2a\x99\x60\xf1\x05\xdb\x74\xeb\x03\x7d\xbf\x29\xb3\xed\x06\xb7\x41\x4c\x5e\x54\x64\xab\xec\x2b\xc1\x49\x8a\x6f\xc5\x2f\x85\x13\xaa\x70\x61\xfd\x86\x82\x82\x8f\x9d\x9e\x3f\x13\x84\x79\x0c\x1b\x3e\x2f\xa2\x38\x97\xcb\x06\xca\x6b\x6f\xad\xbc\xf6\xd3\x14\x38\xaf\xba\xa4\xb5\x5f\x55\x56\xb5\x81\x9f\xe7\x56\x01\xa8\x57\xcb\x9b\x0b\xd5\x8e\xc6\x70\x6f\x94\xb3\xd1\x66\xef\x93\xf2\x6d\x22\xfc\x44\x49\x1c\x57\x9e\x31\x7f\xc6\x2e\x65\x67\x26\xce\x63\x67\x56\x14\x50\x9e\xbb\x0e\xf2\xdf\xca\x04\x16\x48\xb0\x45\x1c\x8b\x74\x88\x97\xa5\xe1\x30\x48\x07\xc8\x86\xc8\x6f\xb9\x7d\xf4\x05\xcf\xc4\x40\xf0\xc3\xac\x83\x00\x45\x51\xab\xfc\x91\xfb\x55\xbf\x0c\x96\x0e\x81\x49\xd3\xcf\x04\x4b\xc5\xbf\xd7\xb7\xdc\x4a\x26\xc6\xd6\x9f\xdb\x4f\x2f\xa2\x8b\x83\xea\x77\x00\x06\xba\xc9\x60\x6e\xb6\xe1\x07\x82\x1b\x4f\xaf\x04\x5c\x7c\x68\x41\x0f\x74\x8a\x35\x5b\x44\xb1\xd2\x55\xd8\x12\xe4\xee\xaa\xc6\x4e\xc6\xb7\x4f\x52\x0c\x7a\x1b\x93\xe1\x56\x98\x8d\xa7\x14\xe4\xb3\x1a\xfd\xfb\x52\xa3\x73\xba\x22\xf6\xc5\xb8\xfd\xb7\xf2\x21\xa7\xa4\xc8\x3b\xd2\x49\x37\x2c\x9a\xd7\x56\xb4\x87\x49\x3c\xbe\xca\x02\x1c\x6d\x67\xeb\xd7\xb3\x2b\xe0\x4f\x42\xd5\x0e\xf3\x2a\xa1\xae\xca\x78\x70\x35\x49\xbe\x5b\xc4\x06\xf2\xe3\x32\xea\x0d\x32\x5f\x3d\x26\x89\xba\x40\x77\x04\x94\xf4\x7b\x3e\x61\x61\x33\xe8\x63\x12\xbb\xa5\x62\x16\x12\x4f\xd4\x40\xc6\xd5\x17\xc0\x45\x00\xb2\xe7\xa2\xa6\x29\x2b\xd7\x1a\x16\xfc\xcd\xe3\x03\xe5\xef\xa1\x5a\x7f\x0f\xdd\xa1\x70\x62\x91\x16\x8f\x2b\x2a\x7a\x56\xfa\xbb\x33\x46\x3e\x30\x35\x7a\x01\xd3\x52\x72\xe3\x65\xa9\xeb\x88\x9d\x76\x60\x2a\x37\x9d\x97\xb3\x6d\xa5\xa5\x9c\x59\xd2\xe9\xb0\x1a\x7a\x2d\x17\x2e\x66\xaa\x95\xa4\x67\x78\x85\x97\xf5\xfb\x5a\x57\x25\x5d\x52\x76\x49\x1b\x88\x3e\xcb\x6a\xbd\x6f\x01\x49\x89\x8b\x6a\x29\x43\x71\xea\xf8\xed\xa8\xa7\xe0\x2a\xe4\x07\x7c\x04\x82\x06\x4e\x0c\xdd\x7f\x68\xe0\xa0\x88\xa9\xff\x47\xed\xd4\xff\x7d\x5b\xfd\x3f\x6a\x90\x12\xf5\x29\xb5\x3a\x12\x52\xa2\xbe\x29\x25\xd2\x7f\xc2\xbe\x2d\x25\xea\x37\x4a\x89\xfa\xf7\xf7\x7d\x5b\x4a\xd4\x37\xa5\x44\x7d\x3f\x5a\x5d\xfd\x3f\x81\xa1\x52\xff\xf7\x01\x1c\x6b\x52\xa2\xbe\x25\xc3\xe9\x0b\x29\x91\x51\xfe\xae\x5f\xc5\xac\x63\x25\x25\xea\xcf\x97\x12\xd9\x3d\xd4\xdf\x41\x3a\xc4\x3e\x9d\x9e\x54\xff\xf7\xa5\xfa\x5f\xf3\xcd\x5f\x8d\x2a\x24\xc3\xad\xec\x06\x61\x1e\x73\xf5\x59\x79\xf6\xac\x3c\x7b\x56\x9e\xd5\x28\xcf\x12\x8f\x6f\x79\xbe\xb9\x59\x0e\xc3\x97\x2a\xb5\x36\xca\xb5\xf5\x29\xd5\x04\x69\x15\x3e\x6b\xc3\xbe\xba\x36\x6c\xae\xf6\x2b\xa6\xdb\x19\x84\x24\xbe\x61\x97\x7d\xcd\xca\xb0\x52\x09\xf6\x42\x3b\xa4\xea\x4f\x37\x04\x9c\x3c\xae\x9c\xac\x70\x45\xe5\x17\x66\x86\x97\xe6\x23\x51\xd6\x72\x94\xb6\x8d\xd2\x9b\x18\x67\x29\x0f\xb0\xe3\x44\x08\x8d\x47\x08\x0f\x90\xd1\x14\xa5\x37\xc6\xef\x09\x89\x93\x9c\x81\x8f\xd3\xc1\xf6\x6d\x90\x5c\x57\x9f\x18\xae\xa7\xfa\xb3\xb4\x66\xad\x62\x8f\xb0\x75\xcb\x4d\x5e\x35\xf7\xa5\x1f\x26\x8c\x7d\x57\xf1\x97\x14\x49\x4f\x12\x74\xca\x5c\x11\xcb\x3b\xec\x51\x4a\xa2\xeb\x79\x5e\x5e\xe3\xff\xc1\x0f\x66\x37\x0a\x48\xb0\xc5\xbb\xea\x39\xa0\x27\xcd\x83\xfe\x79\x7e\x72\x4c\xb1\x6c\x8e\x34\x47\x15\xde\x0c\x00\xe6\x7e\x21\x86\x17\x0b\x75\x51\x56\xaa\x8b\x18\xab\x7c\xc6\x76\x7d\x49\x85\x4f\x92\x49\x3f\x05\xe6\xbb\x88\xd2\x1b\xe0\xaa\x42\x16\x8c\x0a\x94\x8d\x71\x96\x91\x4f\x67\x87\x46\x5b\x59\x06\x0c\xeb\x9f\x0c\x66\x3c\xdf\xc2\x6b\x18\x94\x78\x2d\x06\x0d\x52\x1f\x3e\xa3\x6d\xfa\x92\xd7\xfa\x4d\x98\x2d\xe9\x99\x63\x5f\x98\x11\xb4\xe3\xbb\x38\x15\xe4\xd1\x55\x92\x31\x17\xb1\x2d\xae\x19\xab\x25\x80\x44\x40\xed\x8d\xf5\xf8\x04\x24\xbe\x6b\xab\xe3\x2c\x5d\x9c\x76\x66\x78\x89\x5b\x62\x7c\x30\x63\x9c\x0b\xa7\xc4\x28\xb8\x94\x4b\x73\x27\x79\x07\x79\x61\x16\xa1\xfb\x7b\xe6\x84\x4b\x26\xf9\x2e\xfb\xe5\x38\x70\xc4\x4d\x87\x3b\xc8\x13\x7f\xd1\x36\x11\x22\x41\x9c\xdc\xdf\x3b\x4c\x73\xe8\x28\xf5\x30\x12\xd2\xdb\xcd\x4d\xf9\x17\xb3\x0b\x73\x53\x5f\xfb\x0d\x53\x09\xca\x4f\x4b\xa0\xa9\x47\x62\x92\xb0\x3f\x2c\xe8\x00\x3a\x0e\x0b\x07\xca\x47\x46\xc1\x29\x00\xaa\x89\x64\x96\x08\xce\x92\x04\xe1\x0f\x19\x76\x1d\x7d\x9f\x81\x66\x84\x47\xdf\x0b\xbe\x12\x9d\xb4\xa0\x6f\x53\x51\xc0\xdc\xd7\xe5\xaa\xb1\x2f\x99\xbe\xcc\xef\xe2\x1e\x9c\xd4\xd3\x9e\x4d\x52\x59\x24\x06\x15\x1a\x40\x23\x9b\x35\x9a\x34\xb0\x46\x11\x65\x8d\x26\x82\x35\x8a\x4c\xd6\x48\xff\x09\x23\x9b\x35\x8a\x1a\x59\xa3\xe8\xfe\x3e\xb2\x59\xa3\xc8\x64\x8d\x22\x3f\x5b\x9d\x35\xca\x61\xac\x58\xa3\x08\xc0\x50\x63\x8d\x22\x8b\x71\x89\x04\x6b\x64\x94\xbf\x8b\xaa\xac\x51\xa8\x58\xa3\x68\x3e\x6b\x64\xf7\x50\x7f\xc7\xe8\x10\x23\x3a\x3d\xc1\x1a\x71\xb6\x48\x0b\x5c\xb6\xe4\x0b\x97\x6f\x47\xe1\x72\xf8\x62\x8e\xa4\x78\x6d\x68\xa0\x49\x62\x89\x11\x13\x10\x64\x78\xba\x3d\x46\x78\x14\xf3\x84\x70\xeb\x16\x5d\x96\xa0\xf3\x33\x34\xce\x9e\x84\x00\x53\x68\x42\x59\x50\x3b\xa6\x9d\x12\x16\xc6\x5c\x13\xc9\x10\x88\x35\x2d\x16\x91\x98\xbe\xa5\xb3\x28\xec\x20\x2f\x0a\x61\x9a\x73\x23\x55\xce\x40\x04\xc9\x69\x80\x83\x51\xee\x02\x2f\x65\x11\x64\xe0\x58\x46\x7b\x69\x68\xa6\xea\x0b\x45\x9b\xad\x8c\xb9\xb4\x41\x76\x48\x01\xa0\x55\xc0\x90\x19\x36\x91\x59\x65\xbb\x32\x26\xeb\x99\xb4\x93\xf5\x3c\x23\xb4\x6f\x03\xa1\xf9\x91\x94\xf5\x3c\x0c\xa9\x6d\x07\x61\x92\x6f\x07\x13\x32\xdc\x1a\x21\x32\xcc\xa2\x7c\x5b\xd8\x52\x3e\x08\xd9\x3d\xa6\x97\xc0\x1c\x5c\x65\x60\x2a\xec\xcf\xf2\x0c\x93\xf7\xd3\x8e\x93\x33\xaf\x60\x2e\x81\xed\x28\x45\xc5\x75\x9c\x46\x1d\xe7\x9a\x65\x61\xcf\x51\x80\xc3\xe1\x58\x8c\xb4\x33\x0b\xf2\x8e\x63\x96\x39\x10\x8d\xc6\x64\xda\xe9\x76\x45\x80\x53\x67\x2f\xce\xc7\x49\x30\x65\xbf\x7a\xbd\x42\xc0\xe0\xdf\x72\x7e\xcc\x81\xc2\x47\xa0\xc3\x08\x0c\x37\xf5\x1d\x46\xa3\x73\x5c\xe0\x80\x38\x75\x39\x3e\x05\x0d\xdc\x09\x43\x97\x02\xcd\xad\xc4\x9d\x90\x6e\xda\xf3\xf1\x12\x56\xf2\xf3\x4e\x40\x3e\xcc\x6e\x57\x39\x06\xcd\x7c\x1b\x46\x51\x8c\x51\x48\xb6\x48\x56\x47\x20\xaf\xeb\xb8\xe0\x15\x8e\x0b\x7d\x89\x6b\x1e\x36\xec\x3b\x72\xb0\x0e\x8f\xcc\xa8\x49\x4b\x1c\x6d\x79\xe8\x7b\x4a\x19\x4b\xd2\xb8\x75\x58\x0e\x39\x58\x71\xeb\x70\xcf\x0f\xf4\xad\x6b\x88\xd1\x62\x6d\xdd\x58\xc4\xb1\xde\xe6\x71\x2a\xe6\x6d\x59\xdd\x57\x28\x8a\xd7\xe1\x04\xff\x28\x17\xd9\xa9\x1f\x2d\xbb\x50\x04\x8d\xc6\x49\x40\x78\xe8\xb9\x6f\xf0\x46\x59\x43\xfe\x4a\xbc\x26\x4c\xd6\x44\x66\xe6\x25\xb7\x39\x8f\xcc\xe4\xc9\xa4\xc0\x6a\x9c\xe8\x3c\xaa\xb3\xf6\x72\xa6\x3e\xeb\x94\x5e\x4c\x49\x6a\x26\xdf\x14\xa9\x19\x68\xa4\x66\x01\x63\x83\xf7\xcb\xe4\xe0\x27\x8c\x9f\x0c\xdb\x11\x5e\x23\x9b\xf0\x0a\x1b\x08\xaf\x11\x25\xbc\x42\x41\x78\x8d\x4c\xc2\x4b\xff\x09\x47\x36\xe1\x35\x6a\x24\xbc\x46\xf7\xf7\x23\x9b\xf0\x1a\x99\x84\xd7\xc8\x9f\xac\x4e\x78\x51\xca\x45\x12\x5e\x23\x00\x23\x8d\xf0\x1a\x59\x64\xd1\x48\x10\x5e\x46\xf9\xbb\x51\x75\x4b\x22\x45\x78\x8d\xe6\x13\x5e\x76\x0f\xf5\xa7\x8a\x0e\x71\x44\xa7\x27\x2c\x97\xfd\x91\xe4\x26\xb5\x20\xd8\x1a\xe1\x95\xaf\x86\x24\x1e\xf8\xda\xfe\x65\xb1\x04\x0f\x3e\xfe\xd4\x71\x05\xcc\x6c\x5a\x35\x52\xf1\x4e\x39\x3d\x19\x85\x4e\xd1\x9e\x60\xd5\x52\x74\x2c\x47\xb0\xc6\x55\x82\x35\x9f\xfb\xbc\xd2\xed\x10\xa7\x25\x5b\xe9\x79\xcd\xbb\x71\xcf\xcf\x9e\x91\xe6\x33\xd2\x5c\x1a\x69\xe2\x2c\x59\x95\xda\xe5\x9f\x3c\x09\x52\x57\x1b\xea\x93\xa0\x73\xf5\xf1\x7e\x9f\xcf\x17\x8b\x1f\xf4\x4c\xe2\x3e\x93\xb8\xcf\xd8\xfa\xc1\xd8\xfa\xbb\xa6\x6f\xd7\x8e\x20\xbe\x57\xea\xb6\x2d\xf1\x2a\x92\xb6\x4d\x9f\xa9\xd8\x67\xbc\xf8\xd4\xf1\x22\xcb\xdf\xbe\x22\x19\x2b\xbe\x79\x12\x74\xac\x3e\xd6\x27\x41\xc8\x1a\x03\xfe\x6a\x0f\x15\x45\xf5\xa5\x0f\x59\xf6\x94\xb2\xa3\x4d\x9e\xa3\x45\x7c\xef\xd1\x22\x28\x0d\x14\x2e\x45\x03\xb1\xdb\xc3\x88\xa0\xfa\xa6\x39\x22\xf4\xea\xe4\x2c\xc1\x59\x2b\x3a\x49\xc7\x37\x99\x34\x1b\x64\xaf\x6c\x2e\xf2\x5a\xc9\x52\xd5\x27\x8c\x45\x6e\x2b\xc3\x0c\xa4\x7c\x87\x66\x6c\xf4\x1d\xcd\x1a\x44\x7e\xca\xcc\x40\xde\x4f\xcf\x93\xc9\xc0\x75\xc4\x1c\xb9\x99\xc5\xc4\x4d\x4c\x57\x5f\x3a\x82\xf6\x19\x90\x62\x1b\x70\x39\x89\xf6\xf9\x8f\x12\xdd\xa2\x37\x5c\x05\x2b\x7e\xd7\xf4\x7b\x79\x76\x9f\x09\xf8\xf9\x04\xfc\x83\x25\xd1\x7a\x36\x74\x8b\xa4\x3f\xe3\xe1\x99\x9f\x29\xfb\x67\xca\xfe\xc9\x53\xf6\xd7\x37\xdb\xfd\x2c\x89\x9a\x3d\x22\x8c\xa6\x1c\xa9\x7e\x55\x42\xfe\x0a\xf5\x33\x8c\x8e\xa4\x1d\x24\x43\x50\x9e\x5e\xe8\x79\x9e\x72\xe8\x01\x1b\x46\x24\xd6\x31\xbb\x6c\xcc\x48\x31\x0a\xbd\xeb\x1b\x4f\x4c\x95\x39\xf1\x39\xdb\x0e\x0b\x1d\x72\x8d\xa6\xf7\xf7\x3c\x46\x11\xfb\x01\x74\x53\x47\xa2\x42\x63\x5f\x64\x12\x88\x88\xc3\xb6\x12\xbd\xae\xd6\xee\x81\xe6\x49\x71\xfe\x81\x0f\xfd\x1b\x30\xda\x6f\xd8\x1c\x2b\x30\x52\xb9\xf6\x3c\x20\x0c\x9d\x18\x65\xa4\x00\x5f\x70\x67\xdb\xa1\x9b\xf0\xd2\x34\x5b\x42\xc0\x58\x7d\x81\x42\x59\x8e\x2d\x13\x0a\x44\x3f\x38\xdb\x0e\x28\x84\x8b\x80\xbc\xc4\x2f\x91\x8a\xad\xf4\x52\x33\xe2\xbf\xbf\x77\xfe\xf3\xf5\x7f\x3a\x2f\x75\xc3\x7e\x61\xa0\x7f\x7f\xbf\x78\x9f\x9f\xed\xed\xff\x3a\xe6\xa9\xad\x4c\x53\x05\xa9\xc6\xb2\x9d\xf4\xb3\x49\x1a\x7d\x83\x46\xa9\xd2\x66\x90\xf7\x54\xb9\x66\xf4\xec\xcb\x69\x78\x2c\x47\x54\x1a\x22\x07\xf2\x6c\x00\x90\xe7\x20\x82\xc8\x8b\xa3\xd5\xf0\x9f\x5a\x19\x66\xa9\x59\x9f\xcc\x7d\x75\x07\x85\x32\xa5\x7b\x29\x90\x08\xbf\x6b\xd7\xed\xe8\x51\x9c\x5f\xc3\x65\x9c\x5f\xc7\x5f\xd7\xf9\x35\xfc\xaa\xce\xaf\x6a\x81\x47\x4f\x49\x9e\x35\xfe\x93\xa2\xae\xf6\x9f\xe5\x68\x7f\x05\x39\xda\x55\xb3\xe3\x16\xf3\xd3\xe5\xee\x09\x12\xb7\x33\xb7\xad\x85\x92\x8b\x58\xcb\x82\xdb\x24\x79\xeb\x23\x14\x5d\x05\xe1\x35\x93\xbc\x59\xe1\x5c\x1f\x18\xcb\x75\x24\x04\x6c\x74\xdc\x4a\xb8\xa6\x4a\x39\x63\x9c\x59\xa5\x6a\x18\x70\x62\x08\xe3\xb8\x02\xa4\xcc\xe4\xae\x39\xa8\xb2\xe7\x54\x7e\x67\xa4\x68\x72\x1d\xa9\x37\x71\xb4\x25\xd8\x20\x78\x2a\xf2\x3b\xb8\x9a\x2c\x4f\xb5\x60\x71\x3e\xd3\xc8\x4d\xfd\xb7\xa9\x57\x66\x16\x67\xb1\x49\xcb\x9f\x9b\x9b\xa9\xc8\x4f\x4f\x49\x63\x56\x49\xff\xd0\x8a\xcf\x55\x21\xf3\xfc\xa2\x35\x7b\x28\x27\x71\xca\xc6\x26\xbe\x22\xea\x2b\xbd\xee\x5c\xd5\xb0\x4f\xc1\x86\x3a\x9b\xf8\x9d\x88\xf8\x4a\x97\xcf\xe3\xd3\x73\x67\xe5\xb0\x3a\xfa\x18\x61\x39\xc0\x0e\x1f\x89\x2c\x39\xef\x68\x23\xbb\xbf\x2f\xa3\xe7\x59\x23\xec\xf0\x51\x18\xc5\xe7\x1d\x52\xfb\x6d\x01\x3a\xf3\x37\x43\x66\x4b\xd5\x37\x03\xf2\xa3\x96\x23\xe2\x62\xe8\xec\x88\xe0\x5c\x4e\x90\x24\xd9\x2d\x3d\xad\xe5\xfe\xb0\x09\x8f\x11\xce\xe3\x9c\xb8\x18\x94\x61\x9f\x5c\x0c\x0a\x9e\x5b\x89\xbe\x1f\x9c\xd9\xa0\x65\xe2\xab\x3e\x46\xf9\xd0\x05\x05\xcb\xc3\x74\x54\xca\x74\x65\x30\xb1\xc8\xa5\xff\x37\x13\x29\x27\x6c\x7f\x3c\xe1\x37\x6c\x30\xb5\x4e\x6d\x69\x49\xc1\x51\x72\xcb\x01\x60\xc3\x3a\x56\x7c\x6d\xe8\x65\x10\xd1\x9e\x58\x0e\x8e\xdf\xb7\x5f\xcd\x52\xcd\xeb\x8f\xfd\xe4\xbe\x82\xfc\xef\x28\x2c\xca\x0b\x9c\x6f\xf7\x33\xbc\x25\x7a\xe2\x4d\x83\x11\x2a\x7e\x97\xd7\x24\x42\x2c\x58\x04\x8b\x60\x0a\x66\x4d\xc7\x5b\x0b\xde\x00\x63\xbf\xef\xe6\x3a\xab\xc4\x6f\x6b\x37\x6d\x2b\x45\xce\x6c\xc0\xeb\x92\x7d\x4f\x6c\xc0\x25\xce\x68\x2f\xfb\xb6\x40\x5b\x68\x87\xe7\xff\x5f\x44\xe9\xcc\x85\x00\x60\x6e\x84\xf9\xd4\x65\xed\x57\x73\x29\x7a\x4d\xc4\xbf\x06\x02\xfe\x59\x9b\xf8\x4c\x05\x7d\xbb\x54\x50\x38\x37\xe0\x26\x4a\xc9\xf6\x90\x90\xf1\x1c\xea\x47\x53\x24\x06\x16\x39\x93\x3c\x90\x9c\x91\xfa\x42\x3e\x80\xaa\x1e\x91\xe3\x37\xa9\x43\x14\x61\x88\xd9\xd5\xb3\xe2\x1d\x0b\x00\x1d\xe2\x49\x65\x97\xff\xb2\xfc\x1b\x96\x7f\x0a\x39\x19\x6f\xef\x05\x57\x19\x26\xae\x7a\xd7\xb4\xd7\x70\xd6\x45\xbd\x0e\x29\x40\x9d\xc6\x51\x8e\xb6\x3d\x42\xaf\xe8\x1c\xd7\x86\xd0\xad\x11\xb3\x95\xe3\xc8\x7c\x11\xaa\xad\xfb\x90\x5e\x6b\x0d\xc3\x2e\xab\xcd\xd4\x24\xc1\xf5\xf8\x95\x0b\x85\xc7\x01\x19\x6e\x8b\x60\xe4\x55\x99\xfd\x3c\x59\x71\x29\x38\x29\xe3\xed\xc1\xab\x12\x0f\x0f\xbf\x6b\x21\xca\xcd\xa3\x08\x51\x86\xcb\x08\x51\x06\x5f\x57\x88\x32\xfc\x73\x84\x28\xd3\xa7\xf4\x8c\x0f\xfe\x24\x21\xca\xc9\x33\xf9\xf0\x57\x20\x1f\x2e\x9b\x0d\x3a\xc2\x2c\x25\x41\x9c\x22\x3c\x47\x16\x82\xd2\x1b\x4d\x0c\xb2\x6c\xfc\x9c\xbc\xa9\x3d\x7f\x18\xe8\x03\xda\xdc\x20\x61\x19\x00\x32\x8b\x54\x99\x58\xbf\x43\x8b\x74\xd1\xe2\xac\x2d\x20\x5e\xa6\x92\x78\x51\xd3\x87\x91\xa0\x5f\x64\x15\x8b\xad\x37\xb2\x0a\xb5\xb8\x30\x0e\x1c\x5b\x95\x32\xac\x5f\xbf\xa6\x9c\x4e\x08\x5e\x09\x62\xe8\x32\x47\xe4\x4c\xaa\x11\x5d\xa9\x50\x36\x4b\xeb\x54\xca\x48\xcc\x7f\x80\x88\x9b\x8a\x70\x73\xd0\x54\x4a\xfe\xe0\x78\x97\x2a\x58\xa7\xb0\x1d\x75\x80\x16\x2a\x53\x06\x74\xd6\x0d\x4b\x79\x58\x53\xa5\x01\x35\x21\x7a\xf9\x38\x89\x89\xeb\x78\x0e\xf0\x3e\x67\x71\xea\x3a\xdb\x0e\x80\x08\x94\x29\x77\x56\x1a\x94\x61\x81\x52\x8e\x0b\xcb\x71\x69\xf5\x3e\x7b\x39\x95\xaa\x08\x73\x09\x57\xb0\x5a\x7f\x2a\x3e\x85\xd6\x59\x20\x02\x5c\xeb\x4a\xa7\xd5\x97\x20\x00\xb2\x7c\x5b\x95\x7b\x6c\x69\x8a\x1c\x61\x7e\xd5\x7f\x56\xb3\x91\x18\x5e\x05\x4b\xa5\x9b\x51\x8a\x5d\xca\x39\xb1\x33\xf3\xbb\xb6\x0c\xde\xab\x19\x29\x3c\x66\x14\xf4\x3b\x23\x7d\x14\x52\x49\x01\x0b\xf4\x46\xf7\x14\x49\x94\xb3\x81\x92\x1c\xa9\x50\x4d\x69\xf7\x75\x6f\x83\x0b\xf7\x90\x95\x00\x16\x03\x41\xfd\x88\x49\x40\x07\x80\x0d\x9e\xc9\xa4\x8c\x8f\xf9\x12\x97\x39\x5e\x11\xd0\xd3\xeb\xc8\xfe\x8a\xf2\xed\x1d\x59\x3a\xf8\xf2\x29\x31\xb3\xa7\x6a\x73\xd3\x70\xb0\x5d\xe5\x99\x66\x51\x2c\xa5\x0f\x2f\x2a\x69\x90\x45\x1f\xf1\x55\xeb\xbe\xee\x01\x88\x8a\x1c\x91\xc9\x78\x57\xc5\x8d\xe2\xe4\xa5\x92\xb7\x19\x84\xcd\x8d\x7b\xc3\x44\x60\x00\xce\x0a\x38\x53\xe7\xa0\x63\x1e\x0b\xfa\xe6\xf1\xab\x6b\x83\x36\x2e\x6f\x61\x0b\xd1\x66\x76\x20\x2b\x86\x81\xd8\xe6\xab\x10\x8f\x1d\xe7\x07\x1e\x5b\x3f\xbd\xf1\x6e\x02\x5c\x89\xfd\x58\x91\xcc\x15\xa5\xf4\x0d\x99\x3d\x08\xf4\xe3\xa5\x19\x1e\xb1\x43\x79\xda\x60\x16\x21\x26\x53\x02\x32\xa6\x21\x65\x6a\xfa\xa5\x61\x4b\xd8\x90\x98\x68\x83\x8b\xa3\xbb\x3d\x71\x08\x2a\x91\x8f\x09\x8b\x73\x48\xc9\x50\x2d\x8b\xce\xfd\xbd\x79\x4a\x09\xb8\xbf\xaf\x7e\x79\x7f\xef\x2a\x9e\x80\x3d\x7e\xb9\x4b\xd4\x66\x98\x03\xf4\x3c\x2f\x95\x43\x37\x2c\x2c\xbe\xc9\xb1\x5b\x23\xe4\x83\x2f\x60\xe4\x9f\xb8\xa1\xc1\xdb\x95\xef\x56\x7b\x86\x73\x64\x43\x67\x4f\x5f\x7b\xe1\xe1\xd8\x86\x6b\xbc\x9e\xdd\xa4\xb5\x70\xd2\x86\xaf\xe2\xea\xe6\x6d\x41\x5f\xd5\x81\x66\x6f\x78\x37\x6e\x0b\xdb\x86\x5c\x1e\x57\x07\x76\xb3\xc5\x4c\x7e\xe3\xd7\x00\x86\x3a\xa7\x6f\xf5\xa3\x1f\x2d\x07\x76\x27\x2b\x76\x64\x7c\x6e\xf5\x14\xea\x32\x85\xcb\xf9\x32\x85\x3c\x4e\x07\x76\xde\xa0\xa5\x85\xb6\x8a\x71\x49\xbf\x6b\xe1\x00\x5e\x45\x38\x80\x97\x15\x0e\xa4\x92\x11\xc7\x0b\xc3\x8b\xe3\xaf\x21\x1c\xc0\x00\x74\xb4\x31\xad\x5d\x38\x80\x9b\x85\x03\x4f\x34\xfb\x40\xc5\xb4\x7e\x16\xe7\xbb\x4c\xa1\xd2\xa9\xb3\x7e\x93\xea\x5e\x46\xd3\xf1\xfc\x7d\x36\x35\x3b\xce\xc6\x2e\x28\x20\xa3\xdc\x2c\x18\x92\x32\x55\xf2\x55\x61\x7c\xef\xb1\xc6\x4a\xf7\xe7\x45\x21\xd7\x89\xf2\x80\xa6\x8d\x81\x3e\xf3\x86\x6a\xa5\xea\x83\x31\x6f\x21\xa7\x64\x71\x40\x62\xa7\x04\x8b\x77\xfe\xaf\x53\x96\x32\xc6\xc5\x2c\xd4\x68\xa0\xc5\x11\xcd\x21\xef\xb1\x93\x40\x3e\xff\x4e\x5c\x40\x19\x0b\xd9\x9d\xc5\x04\x8d\x3a\xf1\x3b\x0d\x8e\xfd\xfa\xa7\x75\x7a\xe4\x00\x2a\x1d\x6f\x27\x81\xa7\x65\x6f\xf4\x96\xa4\xba\xc3\xcb\xcc\x1c\x4a\x27\x81\x6c\x80\x71\xd4\x41\x5e\x1c\xb1\xfc\x6a\xcb\x45\x89\xe7\xa4\xec\xf6\x98\x72\x30\x61\xc0\xe2\x70\x87\x89\x8e\x38\x0d\xf4\xb8\x0e\x8b\xbd\xb2\x60\x76\xb0\xd7\x41\xfe\x5b\xe4\x1d\xec\x41\xae\x2f\xa7\x3f\x18\xd1\x5b\x00\xb0\xb1\xd4\x60\xb5\xe8\x7f\x5f\x69\xd0\xe6\x48\xa1\x16\x72\x92\x97\x6a\x05\xc5\xb2\x6b\x3e\x44\x41\x42\x86\x5b\xe1\x10\x31\x8d\xea\xe3\xcd\x83\xe3\x7a\x7b\x0e\xc7\x59\x24\x7f\x66\x11\x82\xe7\x5c\x48\xc2\x4b\xc4\x0f\xd6\x6e\x97\x8e\x4f\x6e\x9a\xf8\xc1\xc2\x91\xcb\x32\xd1\xd8\x13\xc5\xc7\x19\x41\xb9\x04\x4c\x39\xe8\x93\x09\x19\x4f\x08\x2f\xe1\x7f\xcb\xce\x2e\x82\x01\x6b\xa9\x90\xa5\xaf\xa0\xd1\x2a\x68\x13\xbd\xef\x48\x87\x78\x24\xe3\x3f\xb9\x2d\x2b\x29\x0a\x6d\x9f\xc8\xb2\x6b\x1f\x6b\x8a\xe6\x47\x5f\x78\xdd\x38\xc4\x7f\xdb\x45\x9a\x39\x0b\x74\xfe\xc6\xf8\x6c\xad\xe8\x9d\xb3\x93\x24\x2f\xc4\x32\xe4\x2f\xdc\xbf\x01\xc7\x4e\x2f\x21\x72\x4b\x80\x8a\x11\x09\x07\x6f\x95\xaa\x3e\xac\xf2\x15\x3a\x7a\xd0\x1a\x5f\xdf\xcc\x57\xf0\xe0\x78\x30\x24\x5b\x04\xc7\xa3\xc7\xb0\x11\xe6\x04\xdc\xec\x27\x34\xa5\xab\x62\xca\x60\x90\xf7\x13\x9a\x7a\x24\x3b\xcc\x6e\x11\xde\x0d\x72\xe4\x02\x43\xe2\x52\x9b\xc5\x43\xbc\x68\x1b\x0b\xed\x82\xab\x2b\x91\x66\x11\xfa\x2a\x37\xdc\xbc\xd2\x3b\x51\x84\x45\xf2\x3e\xe4\x89\x1f\xf0\x08\x91\x80\x96\x88\x4e\x65\x1e\x66\xe4\xd1\x8a\xfb\xfb\x59\x51\x4a\xbb\xe9\x4e\xd0\x4f\xc3\x2c\x0d\x03\xe2\x12\x00\xbb\xbd\x87\x1d\x05\xfe\x6e\xfe\x59\xc8\xba\x74\x6f\x13\xc8\xba\x2c\x80\x67\x59\xc2\xda\xba\x2e\xf2\x76\x76\x0f\x73\xbe\x02\xb4\x74\x8f\x83\xcb\x79\x1a\x71\x91\xaa\x83\x83\x04\x90\x7b\xc7\x55\x3f\xe4\xe5\xf3\x3e\x5d\xfa\x79\x10\x51\xfa\xbe\xbd\x35\x5b\x7a\x06\x2c\x0e\xcb\xb7\x37\x7e\x7d\xf3\x10\xdf\xb1\x18\xd5\xee\x95\x3c\xf9\xae\x7a\x96\x0e\x22\xfa\x6c\x90\x6a\x7b\xed\xc5\x04\xfa\x77\xf4\x22\x36\x7e\x44\x2b\xf9\x17\x4b\xaf\xa9\xd0\x65\x6c\x95\xce\x0b\x7f\x32\xe1\xc0\x51\x8d\x7c\xc9\x4b\x6a\x80\x96\xd0\xe9\x36\x91\x09\x75\xc8\x89\x55\x9c\x66\x98\x88\xbd\x91\x9f\xd0\x22\x5a\x07\x3c\x92\x9d\x33\xa9\x97\x0b\xa0\x23\x6b\x29\xe2\x72\x6a\x51\x9a\xde\x62\x09\xd4\x06\x1d\x36\xa1\x66\x78\xaa\xfa\xb1\xf0\xa4\x34\x36\xfe\x73\x2e\x4d\xb9\x89\x72\xf3\x96\x3e\x96\xdc\x65\xfb\x1b\xbc\xeb\xa5\xa3\xb3\x38\x69\xea\x77\x89\xfa\x11\xc3\xf7\x0b\x11\xfd\x93\xc3\x15\x93\x71\x4e\x30\x0a\x46\x5f\x07\x59\x68\x1b\x54\x43\x96\x56\xa9\xd2\xc3\x2c\x0c\x92\xf7\x71\x1a\x19\x98\xc0\x2e\x2d\x9b\x49\xbc\xa0\xb5\xa1\x45\x1a\x4a\x68\x5c\x18\xa1\x32\xc3\xf9\xf6\x96\xb2\xbf\xae\x26\x57\xdf\x8a\x02\x12\x68\xad\xb7\x3f\xe7\x59\xfa\x94\x32\xa9\x1b\x13\xa5\x83\xdf\x0a\xc6\xf1\xd2\x33\x65\x8d\x9f\xea\x6c\x31\xca\x97\xdb\x53\xd6\xf0\x89\xce\x72\x89\x64\x69\x7a\x73\x66\xb8\x59\x65\xbb\x68\xf1\x36\x2f\x6c\xaa\x1d\xa2\x20\x42\xd8\x84\xcc\x64\x73\x3c\xef\x52\xb5\x54\xd2\xf7\xd5\x1a\x25\xb2\xaa\xe9\x8b\x0b\xc3\xb6\xfa\x71\x3a\x40\x78\x8c\x59\x0a\xc6\xfa\xac\x82\xdc\xa2\x4f\x93\xd2\x67\x4f\x4d\xcc\xca\x65\x9e\x13\xbf\x4e\x12\x8a\x1b\x4c\xa3\x50\x83\xe0\x1a\x77\x89\xc9\xbc\xf6\x7c\x3a\x52\x7a\x80\x48\x37\xf5\x3e\xee\xef\xec\xed\x9f\x9d\x5f\x9e\xff\x76\xf4\xfe\xe4\xb0\xe7\x63\x48\x0a\xe1\x32\x1b\x3e\xd8\x16\x37\x20\x24\x08\x87\x1f\xe5\xc1\x98\x94\x35\xda\xf6\xb1\x34\x81\x71\xc9\x67\x07\xde\x87\x93\xb3\xfd\x83\x1f\x8f\x2f\x7f\xda\xff\x0d\x26\xde\xf1\xf9\xe9\xce\xee\x3e\xfb\x91\x7b\xa7\x3b\x67\x17\x07\x17\x07\x27\xac\x92\xc9\xd2\xf3\x71\x96\x46\x1f\x32\xcc\x4c\x1b\x0c\x67\x6b\x46\x64\x61\x50\x4a\x8a\x26\x2e\x82\x6e\xe0\x63\x29\x1b\xd6\x06\xc1\x55\xcf\x63\x1c\x8f\x02\x3c\xfd\x09\x4d\x45\xda\xef\x64\x32\x60\x3f\xbc\x28\x84\x48\x5b\xa5\xe3\x9d\xa3\x7d\x36\xac\x9e\x51\xac\x46\xd7\x03\x96\x18\x2a\x00\xef\x02\xf6\x2c\x27\xa0\xd3\x0d\x7a\xe2\xcf\xee\xeb\x1e\xe0\x12\xa9\x00\x26\x45\x65\x36\x67\x28\xcc\x70\x54\x3f\x27\x66\x69\xff\xd8\x93\x70\x31\x30\xd6\x98\x4b\xc2\xcb\x61\x41\x95\x09\x57\xac\xa8\xec\x4b\x48\xd7\xcb\xa1\x6c\xe8\xe3\xa7\x84\xaf\xfb\xb2\x4c\xcf\x2b\x53\xb1\xeb\x53\xc9\x61\x02\x71\xd7\x38\x0b\xbd\xa6\xd1\x63\x4f\x09\xc0\x81\x4b\xcc\x21\x7f\x62\x5e\x4d\xdf\xdc\x90\x9b\x16\xdc\x1a\xfd\x1e\x4a\x50\xfd\xe8\x63\x73\xf4\x59\xf3\xe8\x29\x15\x3a\xeb\x66\xbd\x4e\x65\xc0\x19\x8c\x5b\x0f\x78\xd6\x8d\x7b\x1d\xdc\x8d\x7b\xb0\xab\x5f\x55\x5a\x66\xfc\x86\x5d\xeb\xf2\xd2\x16\x76\x51\x01\xba\x19\xc5\x48\x85\xb2\x0d\x39\x63\x4b\x91\x23\xdd\x30\xd4\xd8\x3e\xcd\x8a\x64\x9a\x64\x41\xe4\xf2\x46\x72\x3b\x55\x35\x65\xc0\xb8\x3d\x23\xab\xdf\xe0\xa1\x87\x1c\x6e\x7d\xe5\x26\xde\x08\x91\xc0\x57\x96\x6d\xb1\xcf\xed\x1f\xea\xc7\x31\xa3\x8d\x3b\x39\xec\x12\xae\x7c\xa2\x94\x69\xaf\x93\x14\x1c\xb2\x61\x63\xe4\xfb\x7e\xfc\x2e\xed\xc4\x05\x89\x47\x28\x27\xc1\x68\xac\xde\x71\x37\x45\xb7\x2f\xf6\x02\x82\x80\x37\xe0\x89\xa0\x5d\x6d\xe2\x6a\xbc\xec\x19\x2b\x77\x3d\xa8\xe2\x6a\x96\xd5\x3b\x62\x27\xe5\x45\x4d\xb5\x98\x52\xe6\xcf\xc2\x20\x1c\x22\x61\x16\xd4\x89\xbb\xd8\xdb\xdd\xd9\xfd\xb8\x7f\xb9\x7b\x72\x7c\x71\x76\x72\x68\xbd\x0e\x30\xe4\x49\x8a\x63\x0d\xe2\xc1\xf1\xde\xfe\xaf\x76\xbb\x28\x34\xda\xec\xed\x5c\xec\xec\xee\x1f\x5f\xec\x9f\xd9\x0d\x85\x1e\x2c\xae\x3b\x60\x76\xdb\x52\x69\x15\xd7\x1d\x3c\xab\x79\xd5\xb0\x2b\xee\x3a\x77\x5b\x98\x39\x1c\xf4\x36\x37\xdd\xcc\x63\x7f\x1b\xc5\xd2\x54\x86\xb6\x96\x8e\x88\xac\x69\x2c\x52\x29\xfb\x6f\xd0\xdf\xff\xa6\xaa\x00\x14\x47\xc6\xf7\xfd\x9c\xb5\xa3\x88\x85\x9f\x32\x6d\x73\x61\x50\x6f\x99\x5c\x3a\x52\x22\xe8\x9c\x4f\xd3\x90\x6e\xb8\x03\x39\x14\xa6\x84\x83\x59\x51\x39\xcc\x26\xbd\x82\xf4\xf8\x12\x0d\xbe\x12\x06\xe9\x57\xaf\xf2\x6a\x22\xfd\x0c\x4a\xb1\x4a\x94\xe9\xd0\x6a\xdc\x28\x74\x6b\x81\x27\x46\x65\x31\x2a\x27\x58\x99\xca\xc1\xd2\x08\x57\x21\x5d\x07\xa6\xde\xe9\xd9\xc1\xd1\xce\xd9\x6f\x8c\x3e\x51\x4d\x04\x9a\xa6\xf5\xe7\x87\x9f\x7e\x64\x95\xfa\x66\x06\x8b\x37\xf3\x2a\x4e\xa3\x38\x1d\x6c\xe1\x49\xb3\xb9\xca\x0a\xbb\x69\x80\x7b\xde\xce\xaf\xbe\x9d\x61\x96\xe1\x28\x4e\xe7\x84\x0d\x5e\x61\x33\x35\x60\xcf\x5b\xf9\xd5\xb7\xb2\x39\xab\xf0\x0a\x5b\x68\xb1\xc8\x55\xae\xbb\x86\xc5\xe5\x06\x57\x8c\x40\x28\xfd\xd4\xe2\xef\xda\x14\x2d\x7b\x14\x3f\xb5\x78\x19\x3f\xb5\xc9\xd7\xf5\x53\x8b\xff\x1c\x3f\xb5\xc9\x53\xc3\x11\xc2\x1f\x79\x91\xb3\xd0\xaa\xc9\xb3\x79\x00\xdb\xfa\x1c\xa3\xcc\x1e\x59\x26\xcc\xa6\x5c\x43\x73\xe8\x57\x6c\x88\xf4\x82\x46\x87\xbe\xa0\xc1\xa1\x2f\xb0\x1d\xfa\x02\xc3\x05\x2c\x98\x9b\x30\x1b\x4e\x16\xe3\xc1\xc9\x3c\x3c\x38\x4f\xba\x22\x8d\xdb\xcd\x16\xc4\x7f\xcb\xf8\xe5\x14\xf8\x6f\x67\xa9\x9f\x4a\x55\x84\x61\xbc\xe6\x38\xb0\xab\x73\xaf\xbd\x0e\xf3\x5d\x40\xbe\x9b\xfa\x84\x7d\x0c\xba\xb8\x81\x8d\x11\x46\x7f\xca\x0f\x61\xf7\xe4\xf8\xfc\xd3\xa1\xc6\x75\x5c\x1e\x9e\xec\xee\x1c\xb2\x3d\x5f\xd4\x52\x2c\x04\x73\x0e\x43\x5a\x8f\x7b\xfb\x1f\x76\x3e\x1d\x5e\x5c\xee\xec\x1e\x5e\x9e\x9e\x1c\x1e\xec\xfe\x66\xf1\x1b\x92\xdd\x50\xd3\xcb\xdc\xcc\x9d\x15\x10\x71\x07\x0d\xa6\x6a\x10\x21\x5c\x7c\xdf\x0f\xe0\x29\x5f\xff\xb2\x28\x81\x42\xdb\xbf\xb3\x7b\x28\x94\x45\x39\xbd\x8f\x00\x12\x6e\x5f\xaf\x7b\x4e\x8f\xc4\x89\x1b\xfb\xdd\xa0\x07\xfb\xed\xa2\xd4\x0e\xed\xa0\x8a\xfd\x06\x57\xca\x61\x17\xf5\xfc\xbe\x70\xa5\x1c\x9a\xae\x94\xfa\x4f\x38\xb4\x5d\x29\x87\x8d\xae\x94\xc3\xfb\xfb\xa1\xed\x4a\x39\x34\x5d\x29\x87\xfe\x78\xf5\xa0\x8a\x11\x1c\xa9\xa0\x8a\x43\x00\xaf\x34\x37\x9e\xa1\xe5\xe8\x38\x14\xae\x94\x46\xf9\xbb\x61\xf5\x1e\x5d\x29\x57\xca\xe1\x7c\x57\x4a\xbb\x87\x7a\x54\x40\x87\x38\xa4\xd3\xe3\xae\x94\xb9\x3f\x84\x09\x17\xfd\x29\x5f\x73\x38\x5c\xec\x0a\x6f\xd0\x1d\x71\x1e\x66\x37\x08\x4f\xb7\xc2\x61\x10\x2f\x25\xdd\x5f\x44\x84\x58\x10\x17\x12\x93\xdf\x2d\x9d\x11\x3c\x0a\x9d\x81\x97\xa1\x33\x92\xaf\x4b\x67\xe0\x3f\x87\xce\x48\x9e\x1a\x9d\xc1\x09\x88\xd5\xe3\x92\x24\x8b\xdf\xe0\x64\x85\x37\xb8\x46\x27\x50\xfb\x12\x8b\x76\x75\x77\xc6\xc4\xa3\x58\xc3\xa3\x08\x06\x6e\x40\x1f\x32\xcc\x1f\xb2\x6e\x39\x90\x5e\x07\x7b\xbb\x14\x29\xe8\x65\x05\xdf\x5d\xfe\x6a\x2d\x8c\xb0\x5d\x55\x33\x7e\x3d\xd5\xeb\x0a\xd1\x60\x99\x67\x51\x3f\xc3\xa3\xf7\x28\xc9\xd2\x41\x7e\x91\xd9\x42\xe8\xd2\x89\xbf\x50\x8d\x3f\x06\xf9\x51\x90\x4e\xe7\x34\x5d\xa8\xaa\x22\xc0\x7f\x4b\x96\x56\x02\x55\x5a\x7f\x88\xd3\x68\x27\x49\x96\x68\x69\xab\x71\x16\x34\xb7\x55\x28\x0b\x9a\xdb\x3a\x8b\xda\xe6\x8b\x03\xe5\xea\xa7\xa5\xd6\xf0\xfa\x81\x6f\x5c\x09\x6b\x6e\xea\x0a\x85\xa8\xf2\xa7\x86\xa8\x28\x43\x14\x37\x47\x58\x40\x69\x98\x45\x22\xbe\xc2\x43\x98\xa2\xb8\x91\x29\xe2\x70\x85\xdf\x0c\x65\x8c\xe6\xe5\xc4\xf8\xfa\x8c\x51\xac\x31\x46\xf9\x62\xa4\x9c\xcf\x43\xca\x14\xb8\x0a\x94\xc0\x7e\x18\xde\x41\x5c\x37\x38\xc1\xb1\x64\x41\xd8\xd2\xd0\x82\x8b\x60\xe0\x82\x02\xa5\xf9\x04\xa3\x83\x3d\xcd\x35\xba\x74\xb8\x47\xd0\x39\xd8\x13\x34\x86\x03\xde\xb9\xc8\x3b\x44\x83\x20\x9c\xfa\x94\xd2\x17\x7f\x1f\xec\xf9\xc8\x3b\xd8\x03\x9d\xb2\xf2\x0d\xa4\x25\xbe\xec\xf9\xf7\x57\x33\xe9\x1f\xa0\x94\xa3\x45\xa7\x2c\x3c\x3e\x37\x7e\x05\x23\xc4\x7f\x6b\x06\x57\xd6\x77\x46\x90\xc9\x6a\x11\x0b\x74\x08\x51\x4b\x9e\x91\xb1\x7f\x92\xab\x12\x8b\xa7\xd6\x8a\x12\x6f\x4b\x21\xc8\x79\x2f\xa2\xde\x9b\x9b\xfa\x66\x1f\x29\x80\x82\x01\xb5\x7a\xaa\x68\xbe\xd3\xd2\x0e\xc3\x50\xc4\x06\x73\xd5\xc8\x09\xed\xd4\x4d\xfc\x14\x58\x7b\x45\xea\xf6\x8a\x18\x7b\x45\xac\xbd\x22\x8d\x7b\x45\xaa\x7b\x45\x6a\xf6\xaa\xa2\x0f\x0e\x20\x86\x89\x16\xa0\x14\xb8\xc9\x02\x65\x7a\xeb\x55\x50\xc7\x39\xf1\x0e\xf6\x60\xc2\x56\x85\xfe\xb5\xec\xd8\x0a\x98\x19\x39\x03\x26\x1a\x22\x0a\x59\x2a\x82\xa8\x1d\xbf\x3c\xb6\xf9\xe5\xa8\x81\x5f\x1e\x53\x7e\x39\x12\xfc\xf2\xd8\xe4\x97\xf5\x9f\x70\x6c\xf3\xcb\xe3\x46\x7e\x79\x7c\x7f\x3f\xb6\xf9\xe5\xb1\xc9\x2f\x8f\xfd\x70\x75\x7e\x39\x83\x13\xc5\x2f\x8f\x01\x1c\x69\xfc\xf2\xd8\xe2\x66\xc7\x82\x5f\x36\xca\xdf\x8d\xab\xe8\x75\xa4\xf8\xe5\xf1\x7c\x7e\xd9\xee\xa1\xfe\x85\xa0\x43\x1c\xd3\xe9\xc9\xac\x2e\x63\x99\x88\x40\x8b\xd0\xa6\xf1\xcb\xf1\x62\x2a\xa2\xd9\xb5\x68\x05\xf2\xe1\xfa\xe6\x2f\x4a\x37\x04\x24\xbb\x5a\x3b\xd1\x10\xa1\xbf\x10\xd1\xa0\x4e\x99\xe9\xd0\x8c\xbc\x80\x10\xec\x3a\xff\x62\xb7\x1e\x34\x85\xf8\x48\xdf\xf1\x00\xc5\x7c\xc5\x3c\x74\x87\xc2\x09\x41\x6e\x0a\x38\xa2\x5a\xe3\xa3\x58\xc6\xf3\xe9\xbe\xee\x79\xe7\x88\x45\xc8\xd8\xdc\x74\xf5\x9f\xbe\xe3\x88\xa7\x92\xd9\xb0\xd5\xbd\xcb\x6d\x5e\x7e\x77\x56\x23\x20\x06\x42\x3a\x5a\xc1\xf8\xea\x14\x3d\x63\xfc\x67\x8c\xaf\xe3\x72\xdb\x85\x72\x39\x9c\x3f\x4f\x12\x51\x67\xc6\x4c\x3b\xa9\xd5\xce\x3e\xdd\xf8\x0e\xd2\xc4\x4e\x3f\xee\x02\x2f\x31\xaf\xe0\x2e\x2e\x85\x40\x9b\x9b\xae\xf1\xdb\xe7\x6e\x27\x00\xa2\xc2\x16\x9a\xd5\x25\x63\xa4\xaf\x4d\x14\xa1\x88\x63\xa2\xfc\x28\xbe\x8b\xd3\x85\x29\x43\x83\x1a\x54\x8c\x4d\x54\x1c\xd8\xa8\xb8\x1c\x62\x59\x49\x31\x6f\xee\xc0\x99\xf4\x67\xee\xcc\x90\x18\x4e\xc7\x09\x92\xdb\x60\x9a\x3b\x45\x01\x16\x4a\x79\xf8\x91\xe5\xe1\xe0\x20\x8b\x59\x29\x62\x0a\xf3\xec\x69\x3c\xae\xb0\xec\xc3\xe9\x48\xfb\x3f\xee\x18\x2f\x7c\x76\x4a\xf7\x61\xc7\x79\xe9\x97\x3e\xed\x07\x7b\x25\xfa\x41\xfe\xdb\x59\x19\xc2\xb1\xab\xb5\xa1\xbb\x60\x16\xf8\xdd\x1e\x80\x66\x11\x93\x7b\xbb\x08\x14\x40\x12\xe8\x39\xc9\x30\xf2\xca\x43\xce\x82\x70\x79\x3c\x8a\x4e\x2a\xbf\xcc\xfd\xf2\x4f\x89\xa0\x03\xaf\x69\x4d\x3e\xe0\x6c\x44\xf7\xdf\x4d\x21\xa5\xf4\x01\x4c\x0b\xe3\x0d\x68\x5c\x4b\x33\x48\x59\xcd\x63\xc2\x2f\x95\x54\x03\xae\xf2\xa2\x24\xfc\xed\x90\x4c\x08\xf6\x50\x10\x0e\xcf\x50\xc2\x6e\x7c\x3e\x8c\xc7\x52\x32\x35\x0b\xf4\xb5\xa6\x4b\xd4\xfd\x5d\x0d\xf8\x95\x30\xe2\xe3\x9e\x43\x1e\x3b\xdb\x71\x7f\x4a\x37\x39\x4e\x23\x50\xc8\x99\xfc\xde\x73\xcb\xc5\x85\x04\x22\x18\x30\x21\x69\xd0\xfc\x48\x2f\x31\xb5\x9a\x97\x9a\x4e\x30\x71\xd3\xa5\x27\xb7\xa6\xf9\x04\xb5\x93\x39\x64\x56\xfe\x55\x81\x1f\xd3\x04\x4b\x26\x31\x95\x0e\xf3\x1d\x46\x4a\x62\xee\x1e\x0f\x13\x1f\x8b\x80\x85\x1d\x45\x00\xf1\x60\x71\x86\x07\x81\x8b\xe0\x4c\xfa\x7d\x25\xdc\xe5\x33\x28\x28\x4d\xb0\xaa\xf4\xb9\xea\x59\xfe\x40\x6e\x40\x00\x7a\x36\xba\x5a\x83\xd1\x55\xe3\x8d\x9f\x4b\x42\xa6\xe2\x3e\x60\xe0\xbf\x65\xea\x0c\x76\xe1\xdd\xea\xc3\xf5\x42\x4b\xa9\xe2\x3b\x7f\x73\xa0\x9e\x8a\xc5\x67\xce\x11\x86\x0c\x6e\x67\xf7\x30\xb7\x3c\xf3\x1d\xc0\xa2\x3e\xd6\xd4\xf8\xb5\xa5\x73\x86\x22\xc3\x9d\xfa\x8e\x03\xb9\x56\xb2\xeb\x58\x9d\xf1\xa4\xba\xea\x67\xaf\x5e\x39\xa7\x9e\x03\x3e\x02\x35\x40\x86\xfe\xad\xca\x2e\xe9\xa9\x7a\x7a\x5e\xba\x4c\xc3\x08\x4b\xda\x7a\x0e\x7e\x5a\x61\x1b\x5c\x5c\x59\x59\x6c\xad\x3d\x57\x3c\xd1\x4e\x61\xba\x48\xcc\xd6\xd0\xaf\xd1\x74\x4d\xdd\xd7\xc9\xb7\xe6\x2b\x2f\x96\x30\x0f\xcc\xe2\x28\xdc\x1a\xe3\xec\x26\x9e\x93\x52\x76\x05\x9c\x63\xc2\xfb\x4b\xab\xe8\x9f\x22\x62\x4d\x56\x46\xac\x75\xc4\x6e\xba\x80\xd8\xad\x47\xac\x3b\x13\x32\xcc\xb0\x90\x40\xd4\x1e\xee\xba\x37\x97\xb6\x6c\x2b\x75\x97\x17\x34\x11\x68\x5a\x47\x8a\x7f\x8e\x99\x45\xf0\x3d\x9b\x59\xb8\x33\x91\x1e\x2c\x8e\xb4\x40\x71\xc4\x4b\x73\x2d\x56\x1c\xd1\xf2\x5a\xc1\x44\x8a\x57\x96\x88\x03\x57\xa2\x2a\xcd\x51\xb7\x35\x5e\x2b\x61\x3d\x93\x53\x7f\x1a\x39\xd5\x2c\x91\x43\xa5\x93\xa5\x20\x9f\x2c\x72\x0a\x54\x4f\xd0\x12\xaf\xa3\x16\xa3\x7f\xc5\x23\xf4\x55\x8d\x42\x56\xb3\x57\xa8\x46\x61\x7a\xe8\x9d\xe0\x80\x9e\x2f\xc4\xfa\x9d\x3a\x6a\x83\x46\x6a\x5b\x88\xb3\xbb\xb5\xec\x20\x83\xf3\xbc\x81\xed\x37\x50\x55\x4a\xa1\x9d\x0c\x6e\xd3\x61\x11\x98\x9c\x62\x55\xd4\x63\x47\x1a\x7b\xe0\x0e\x73\x30\x7a\x79\x7c\x17\xa7\xf2\xee\x6e\x07\xf9\xd6\x28\x48\x6b\x8e\xc0\x13\x97\x10\x9b\xc4\x6c\x55\xb2\x8b\x55\x44\x87\x87\x08\x73\x57\xa1\x6f\x57\x23\x59\xe6\xc5\x42\x7b\xe0\x09\xa8\x80\xfc\x4b\x33\x65\xcf\x76\xd3\xcf\x76\xd3\x7f\xbe\xdd\xb4\xaa\x1c\x06\xf9\xd0\x81\xff\x3c\x3f\x39\xf6\xb8\x4a\x3d\xee\x4f\x41\x81\xee\x08\x0e\x42\xf2\x29\x8e\xec\xf4\x24\x2c\x8c\x77\x57\xa3\x76\xf5\xfc\xcb\x0d\x69\x99\x8d\xac\xce\x7a\x84\x43\x3d\x80\x61\xaf\x59\x8f\xa4\x74\x26\x96\x4d\x55\xda\x25\xf4\x43\x16\x11\x31\xf1\xa5\x6d\xb6\x15\x42\x70\xa6\x74\x4d\xe7\x2c\xa6\xb8\x50\x37\x8d\x83\x3c\x8f\xd3\x81\xd3\x11\xf1\x97\xf3\x53\x5e\xc0\x95\x40\x04\x6c\x5c\x61\x14\x5c\x6f\xb0\xb6\xb7\x01\x4e\x8d\xb6\xbf\xf0\x82\xba\xb6\x21\x8e\x49\x1c\x06\x49\xd9\x78\x57\x94\xc8\xd6\xe5\xa9\x85\x33\xa3\xeb\x4e\xb7\x07\x0d\xf8\x65\x81\x84\xd1\xe9\x32\x6d\xfa\xac\x50\x3a\xb9\x0e\x11\x4d\x3a\x98\x07\x91\x6c\x4c\xa7\x5d\x32\xba\xda\x36\x69\xfc\xae\xb6\xa7\x2c\xbe\x24\x0b\x26\xce\xc2\x52\x5a\x91\x6f\x55\xd8\xdb\x8b\x60\x30\x40\x32\xa8\x1c\xa2\x35\x56\x89\x08\x8c\xcb\xc2\x3b\x16\x85\x52\x5d\x24\xde\x24\x8e\x84\x69\x61\x79\xd0\x58\x06\xb5\xd5\x8d\x24\x74\xd9\xe6\x2c\xee\xbb\x2c\xcf\xb8\xc0\xa5\x65\x72\xa3\x14\xdd\xbe\xd8\xc7\x38\xc3\x1b\x64\x88\xb3\xdb\x17\x88\x67\xda\xce\xfd\xee\x8c\x87\x9a\xef\x38\xff\xf9\xfa\x3f\x1d\x48\x62\x92\x30\x8a\x89\xbc\xe8\x67\x93\x34\x72\x8a\x1e\x33\xda\x14\xba\x23\x5d\xd3\x58\x15\x90\xeb\x3c\x1f\xf1\xd2\xdc\xbc\x03\x25\x7f\xa8\x49\x16\xcc\x26\x75\xcb\xc2\xf4\x91\x5c\x22\x5b\xac\xc1\xbe\xd3\x5e\xae\x3f\x6f\x4e\x4a\xfa\x2e\x1e\xe3\x34\x6a\xd2\x4b\x48\x7c\xc1\x32\x23\xa4\x59\x84\x36\x37\x75\xcc\xc1\x8a\x73\x19\x1f\x92\x49\xeb\xd7\xbd\xef\xe5\x1a\x60\xd5\x71\x79\x87\xb4\x00\x4b\x5a\x7d\x79\x9b\xf4\xdd\x5b\x4d\x13\x57\x13\xbb\xb4\x1d\x11\xf6\xcc\x6a\x3d\x92\xf0\x68\x15\xc7\xdf\x6a\x84\xba\xb4\x4a\x8c\x96\x26\x25\x61\x96\xa6\x28\x24\x5b\x9c\x57\x66\xc6\x0f\x3f\xc5\x29\x3d\xe8\xc6\xdd\xc5\x5d\x7e\x26\x7b\x3e\xa2\x18\x63\x79\x88\x7e\x13\x44\xe4\x9d\xd2\x06\x1f\x32\x4c\x2f\x9c\xfc\x5b\x35\x21\xca\xdc\xe2\xa5\xef\x63\xae\x3d\xa3\xff\xf0\x96\x3e\xbd\xe4\x85\x34\x18\x5f\x37\xea\xa2\x87\xb7\x56\x88\x5b\x2a\x29\x31\x74\xfa\x31\xce\x89\x38\x66\x95\x6b\xeb\x00\xf6\xbc\xe5\x1d\x5c\x3c\x44\x32\x97\xa3\x07\x89\xe5\x6a\xaf\x26\x87\xf4\x7c\x35\xd7\x7f\x35\x5b\x18\x7a\x4a\x62\x22\x7d\x1c\x62\x42\x59\x87\x56\xde\x85\x25\x0e\x5f\x25\x34\xf4\x03\x8f\x9e\x80\xb3\x50\x3a\x53\xd3\x02\x67\x09\x9a\x27\xbd\x81\x81\x76\x7c\x9f\x3a\x5b\x36\x47\x7e\x03\x83\xa5\x25\x39\x6d\x7d\x5d\x2d\x0b\x69\x9e\xf5\x50\xa6\xb4\x94\x55\xb5\x79\x98\xb8\x20\xc1\x4f\xbd\xb3\x49\x82\x72\x96\x0d\x71\x76\xb0\xd7\x49\xbd\x73\x14\x62\x44\x64\xda\xa0\xd4\x08\xf3\x7d\x31\x1d\xd3\x22\xfa\x0f\x64\xdf\x75\xc4\xf7\xf4\x79\xd9\xdc\x14\x21\xf5\x34\x18\xa9\x76\xfb\xce\x51\xd2\x37\x8d\x6c\x79\x62\xaa\xa6\xdb\xb9\x9c\x99\x81\x7d\x77\x8d\xa6\xf6\xe5\x55\x6f\x53\xaa\x82\x8c\x6f\x6e\xaa\x95\x28\xe3\x8e\xbb\xe5\x0f\xcd\x2c\x84\x35\x3a\xd8\x2b\x6f\xbd\x66\x11\x38\x46\xe8\x7a\x27\x49\x5c\x87\xdf\x1f\x20\x12\x4a\xb9\x8e\x5c\x0a\xba\x6f\x07\x7b\x60\x03\xd1\xa5\x56\x0b\xc4\x00\xc2\x54\x8b\x97\xee\x9b\x36\x35\xaa\xdc\x29\x85\x1b\xe5\xfb\x49\xff\x59\x8d\x7c\x24\xd9\x38\x4b\xb2\xc1\x3a\x04\xf5\x0a\xd4\x0a\xee\x1d\xdf\xad\x18\x2f\x7e\x14\x31\x5e\xbe\x8c\x18\x2f\xfb\xba\x62\xbc\xfc\xcf\x11\xe3\x3d\xb9\x50\xd4\x14\x17\x4f\x9a\xbd\x83\x18\xda\x78\xb0\x7b\x50\xde\xe0\x1e\xc4\xa1\x8a\x58\xae\xdf\x9e\x73\x50\xae\x39\x07\x65\x8b\x9f\xbe\xec\x81\x64\x9d\xe9\x61\x59\x63\xb1\xed\x94\x3e\xed\xea\x41\x5c\x2e\x28\x44\xd0\x10\x14\x22\x51\xe5\x89\xb7\x97\xdd\xa6\x3c\x25\x44\x6e\x31\x4f\x07\xb2\x5b\xcd\x33\xd5\x17\xf9\x35\x6a\x6a\xcf\x7d\x5d\xa6\xa0\x37\xb0\x7c\x53\x7d\xc6\xf2\x34\x35\x38\xaf\x88\x69\xb0\xe6\x24\x5c\x7e\x44\x9f\x94\xc4\xfb\x34\x5e\x61\xec\x95\x7e\xd5\xc8\xab\x92\xa1\xe6\xd1\xd7\xac\x80\x39\x7e\x53\xb4\xd2\x34\xf6\xc0\x45\x30\x76\x63\x77\x56\xc0\xa4\x26\x1c\x07\x61\xd9\x1b\xb5\xf8\x1b\x30\x34\xfc\xa2\x22\x75\x7d\x46\xcc\x2b\x6a\xdc\xce\x2b\xea\xca\xf6\x8a\x1a\x37\x78\x45\x5d\x75\x51\xcf\x1f\x0b\xaf\xa8\x2b\xd3\x2b\x4a\xff\x09\xaf\x6c\xaf\xa8\xab\x46\xaf\xa8\xab\xfb\xfb\x2b\xdb\x2b\xea\xca\xf4\x8a\xba\xf2\x47\xab\x7b\x45\x85\x30\x52\x5e\x51\x57\x00\xf6\x35\xaf\xa8\x2b\xcb\x67\xe9\x4a\x78\x45\x19\xe5\xef\xae\xaa\x48\xa1\xaf\xbc\xa2\xae\xe6\x7b\x45\xd9\x3d\xd4\xe3\x35\x3a\xc4\x2b\x3a\x3d\xe9\x15\x75\x25\xbd\xa2\x84\x47\x14\xec\xc3\x2b\xcd\x2b\x6a\xd2\x48\x34\x31\xff\x8d\xed\x2d\x7e\xdc\xb6\x30\x1a\xc4\x39\x41\x18\x45\xd5\x30\x2c\x38\x8b\x23\x84\x59\x0c\xca\xf2\xc3\xea\x77\x4f\x2b\x21\x86\x98\x3e\x9d\x67\x90\x98\x73\xe6\xfe\x5e\x39\x09\xf0\x20\x20\xa8\xda\xf8\x29\x4e\x94\xb9\xeb\xce\xcd\xa4\xc8\x5a\x7c\x05\x23\x2a\xe1\x64\xc2\x07\x36\x93\x7e\xab\x2a\x0a\xba\x91\x63\xd1\xf4\x01\x5a\xca\xe8\x4a\x4c\x77\x42\x86\xca\x28\x3a\xdf\xce\xe8\xef\xff\xd8\x0a\xb3\x08\x6d\xdd\xc6\x64\xb8\x35\xc1\x49\x83\x0d\x36\xc9\x70\x1c\x6f\xd7\x7e\xfa\x75\x4d\xcc\x9a\x08\xa4\x14\x62\x83\x3c\xc2\xbe\xc3\x4c\xc0\xe5\xbc\x1c\xe8\xa6\xbe\x93\x06\x23\xe4\x80\x38\x75\x39\xf5\x04\x1a\x48\x49\x0a\x4e\x8c\x0f\xaf\x44\x4a\x92\x6e\xda\xf3\x71\x71\x35\x89\x93\xe8\x13\x4e\x5c\x93\xed\xbd\x0a\x72\xf4\x09\x27\x45\x36\x46\xec\x11\xe0\x24\x0b\x1f\x0a\x63\xfe\xc4\xf8\xa0\x08\xb8\x51\x82\x31\xbc\x7d\x58\xcb\x71\x36\x9e\x8c\x1d\xe0\x31\x58\x29\xec\x3a\x39\x61\x51\x92\x1d\xb1\x25\x08\x78\x64\x88\xd2\x3a\xb9\xef\x2c\x10\x06\xce\xec\xa5\x3d\xa7\xdf\x75\x10\x4b\xb5\x8c\xa0\x51\xb5\x9b\x45\xa8\xc3\xdd\x86\x3f\x9d\x1d\xec\x66\xa3\x71\x96\xa2\x94\xb8\xc8\x0b\x99\xeb\xa2\x3c\x0e\x1d\x7a\xd3\x40\x11\x26\x19\x7d\x4e\x4c\x4e\xb9\x1c\xac\x87\xd1\x28\x23\xc8\x01\x2c\x12\x7f\xdc\x77\x1d\x39\xb4\xd2\x7d\x1b\x79\x0c\x08\x50\x4a\x1f\x01\x73\x95\x43\x7e\x45\xb2\x60\xfe\x9d\x66\x2d\xbe\x97\x3b\x1d\x06\x69\x1d\x9e\x0e\x83\xd4\x6c\xf3\x55\x6f\xe9\x38\xa0\x94\x05\xb2\x04\x36\xa2\xd4\xc3\x68\x9c\x04\x94\x1f\x9a\xe4\xe8\xc5\xf9\xf9\x89\x03\x9d\x17\xf4\x4f\x7a\xf8\x8e\x58\xe8\xfc\xdc\x01\xab\x2d\xc2\x90\x65\x2b\xa8\x5b\x07\x56\x93\x23\xb2\x75\x13\x24\x71\xc4\xdd\xfd\xaa\xb5\x35\xa7\xa4\x9f\xe1\xd1\x76\x7d\x03\x0d\x54\x19\x29\x6b\x4b\x37\xd2\x5d\xa1\xf1\xd6\x90\x90\xf1\x16\xcf\x0b\xd5\x94\xa2\x89\x63\xb9\x1c\xc6\x30\xdb\x58\x97\xdf\xf2\xc4\x9f\x39\xb5\x83\xef\x28\x51\x26\xac\x6d\x60\x0c\xb8\x93\xa8\xd7\x56\x06\x19\xce\x9b\xb8\xdf\x70\x88\x46\x81\x03\x60\x6c\xb1\xbf\xe6\x3d\x99\x83\xe1\x61\x50\xc7\x02\xa7\xbe\x04\x2d\x1c\x76\xa1\x8b\xfd\x6c\x0e\x0f\x9c\x1a\x74\x04\x6e\xe4\x81\x71\x03\x0f\x8c\x6d\x1e\x18\x1b\xe4\x2e\xae\x92\xbb\x41\xc9\x03\x2f\x17\x15\xeb\x52\x9c\x9a\x0c\xe7\x4c\xcf\x70\x14\x8c\x8b\xdb\x38\x49\x28\x8b\x84\xb3\xa9\x0b\x66\xd5\x66\x94\x03\x51\xe7\xf5\x03\x93\x6b\x71\x3f\x6b\x89\x92\x45\xb6\x17\xf5\x0d\x6f\x93\x00\x1e\xd4\x84\xa2\xe4\x9c\x8b\x93\x91\x9f\x6f\x94\xd8\xf9\xa5\xc4\xce\xcc\x6f\xce\x37\xf1\x56\x0e\xe8\x7e\xba\xaf\x61\xea\xed\xca\xbe\x81\x1b\x40\x04\x73\x38\x53\xa3\xe9\x28\x39\x79\x01\x0a\x94\xe4\xe8\x45\xcd\x37\xea\x95\x8b\x0b\x6b\x88\x84\x4d\x22\xee\xbb\x2f\xed\x59\x7b\xc3\x20\x77\x11\x28\xdf\xd2\x49\x17\xf5\xd8\x7c\xd2\x0d\xc5\xa5\x10\x26\xe9\x16\x89\x9f\xf8\x51\x01\xd5\x75\x16\x69\x47\xd2\x52\xe4\x6a\x37\x60\xf2\x59\x1e\x79\x38\x36\x23\x0f\xcb\xf3\x37\xf6\xbb\xf9\x73\xf0\xe1\xef\x23\xf8\x70\xe6\x0f\x61\xfc\xb0\xe0\xc3\xe2\x51\x4a\x62\x94\x92\x6d\xa1\x65\xe7\xef\x4e\x63\x92\x50\x0d\xc7\xf1\x8c\x7c\x1b\xb6\x14\x14\x62\x30\x4b\x9b\x90\x1a\x13\x7e\x6a\x87\x2c\x6d\x44\x6a\x69\x03\x52\x4b\x6d\xa4\x96\x1a\xcb\x9f\x56\x97\x1f\x6b\x48\xcd\x8e\x8c\xcf\x15\x7f\x74\x52\x49\x43\x06\x3e\xdc\x70\xa8\x13\x7a\xa8\xb1\x38\xd4\x89\x79\xa8\xf5\x9f\x30\xb1\x0f\x75\xd2\x78\xa8\x93\xfb\xfb\xc4\x3e\xd4\x89\x79\xa8\x13\x3f\x5d\xe6\x50\x1b\xc1\x4a\x85\x74\xfa\xfe\x3e\x2d\x00\x4c\x00\x0c\xb4\x43\x9d\x58\x47\x2e\x11\x87\xda\x28\x7f\x97\xcc\x79\x2a\x60\x32\xff\x50\xdb\x3d\x34\x1f\x0c\x26\x11\x11\x92\x91\xf5\xe5\x12\x20\x0d\xcf\x7c\x94\x8d\x18\x0b\x33\x2f\xd3\x40\x93\x80\x3c\x0a\x48\xb0\x95\x33\x71\xa2\x32\x55\xaa\x8a\xcb\x17\xd1\x0b\x75\x49\x16\xe9\xa8\x60\xc2\x90\x7e\x59\xc8\x02\xc6\xe7\x56\x21\x1d\x83\x03\x63\x5e\xba\xe4\x6b\x9d\xc4\x39\x41\x29\xc2\xe2\x85\x8d\xb2\x91\xa7\x8a\x5c\xd1\x48\xc3\x03\xec\x49\x3f\x47\x84\x57\x04\x51\xf4\xaf\x38\x8f\xaf\xe2\x24\x26\x53\xfe\x20\xba\xa0\xf6\xb5\x57\x30\x19\x2f\x75\x83\x24\xe8\xf1\x04\xd3\x6f\x20\x1f\xa5\xfe\xa5\xc9\x56\xd4\xf6\x54\x81\x1d\x44\x91\xab\xa6\x11\x65\x21\xfb\xda\x05\x70\x76\xa3\xbe\xe5\x0f\x7b\x87\x0b\x89\x49\x80\x07\x88\x78\xc3\x38\x8a\x50\xba\xb9\xa9\x8d\x68\xeb\x0d\x28\x0a\x50\xdc\x0e\x51\xba\x73\x13\xc4\x09\xbd\x6d\x15\xc6\xd7\xec\x45\x71\xba\x02\xde\x3b\xba\x54\xa7\x38\x1b\xc5\x39\x72\x53\xcd\x6a\xaa\x76\xd4\x35\x63\xd4\xe5\x43\x2e\x33\xa1\x64\x63\x02\x1d\x01\xd4\xc3\x28\xcf\x92\x1b\x3a\xae\x82\x8f\x1a\xf9\xaf\xc1\xac\xeb\x79\x9e\xbd\x6d\x0d\xc1\x05\x88\x17\x5c\x65\x98\x91\x06\xa0\x79\xaf\x8b\x20\xfc\x63\x12\x63\x36\xff\xb8\xef\xda\xcd\xbc\x3c\xfe\x82\xde\xd6\x27\x63\xf8\x78\x71\x71\x7a\x79\xb4\xf3\xeb\xe5\xee\xc9\xf1\xf1\xfe\xee\xc5\xc1\xc9\xf1\xb9\x03\xec\x65\x0c\x48\xc0\xd9\xe5\xc8\xe5\x14\x5d\xea\x37\x4c\x22\x4e\x23\x17\xf9\x6f\x5f\xbe\x44\x9e\x48\x47\xeb\x02\x96\xf2\x0d\xfd\x31\x41\x39\xd9\x8a\x23\xa7\xb7\xb9\x49\xbc\x38\x0d\x93\x49\xc4\xd2\xb3\x37\xb6\x03\x60\xa3\x8c\x84\xb6\xb9\xe9\x10\x74\x47\xb6\xd1\x0d\x4a\xc9\x16\x57\x29\x70\xbb\x32\xed\xfb\x30\x63\x3c\xc5\x16\xa5\x9d\x58\xda\x39\x21\xed\xd0\x17\x83\xa1\x9f\xdc\x05\x5e\x8a\xee\x88\x0b\xf8\x6f\x5d\x25\xbf\xb9\xe9\x0a\x4b\x82\x04\x05\xf4\x64\x00\x98\x8a\x6d\xf8\xcf\xff\xf8\x3f\x00\x14\x15\x90\xf4\x7c\x20\x4a\xdb\xf1\x0f\x90\x38\xf7\x7a\x13\x6e\xca\xc0\x49\xbc\xc4\x9f\xb8\xba\xa2\x80\x23\x90\x2e\xe9\xc1\x36\xb4\x1d\x80\xb9\x0d\x97\xe1\xa0\x6e\xda\x16\x6e\x5c\x19\x2f\x43\x63\x5d\xdc\x16\x70\x00\x56\x27\x79\xaa\x71\xcb\x6b\x73\x36\xd5\xe5\x42\x5e\x3a\x91\xb2\xc8\x70\xcc\x44\x7b\x73\x5b\x2c\xea\x85\xb7\x62\x59\x0b\xb7\xc6\x01\x0e\x46\xf9\x12\x5c\x78\x19\x6b\x4d\x90\x85\x8a\x00\xba\x79\x4a\xd4\xda\xf4\x99\x5a\xfb\xb6\xa9\x35\xb5\x53\x83\xef\xda\x92\xe6\xe4\x51\x2c\x69\x06\xcb\x58\xd2\x5c\x7e\x5d\x4b\x9a\xc1\x9f\x63\x49\x73\xf9\x64\x2c\x69\x18\x41\x46\x02\x4c\x7e\xd1\xa9\x46\xc9\x7b\x34\xd4\xd6\x38\x8c\xe8\x4b\x1a\xf7\x5d\x67\xeb\x0d\xa5\x44\x4a\x43\x3b\x02\x1d\x6e\xae\xeb\xe9\xe6\xe1\xdc\x70\xd7\x01\xa5\x06\xc2\x24\x5e\x09\x10\xc6\xbe\xa4\x28\x84\x1c\xf5\xd4\x9f\x29\x97\xb9\x8e\x4b\x11\x81\x12\x8e\xf1\x20\xdb\xba\xee\x04\x14\xf0\xda\x77\x5f\x6b\xd6\xa2\x2e\x80\xb7\x7e\x97\x98\x59\x86\xa1\xf3\xeb\xd6\x99\xa0\xb2\x0e\xf6\x1c\xf6\x93\x4b\xb8\x9d\x33\x9e\x68\xd7\xe1\x52\xae\xfd\x66\x71\x2b\xe7\xc3\xe2\xb9\x7c\x58\xd6\x50\x5b\x23\xba\x00\x70\x32\xbf\x31\x73\xdb\x63\xef\xfd\xf6\xdd\x10\x3b\x00\x86\x4d\x72\x60\x44\x48\x9c\x0e\x28\xc8\xa8\x05\x67\x77\xa3\x73\x76\x23\xc1\xc4\xdd\xe8\x9c\xdd\xd8\x2a\x34\x24\x31\x7d\xab\x52\x0d\xdf\x81\x57\x56\x95\x1a\x30\x1c\xae\x9d\x2b\x64\x3a\x91\x4f\x67\x87\xf4\x50\xe0\x79\x27\x07\x22\xff\xed\x69\xe9\x9c\x29\x84\x99\x01\x7d\x54\xbe\x20\x16\xf6\xbf\xd0\x7e\x19\x7a\x47\x9b\x9f\xe0\x09\xc7\xcf\x2f\xf7\x8f\x77\xde\x1f\xee\xef\x39\x40\x7b\x09\x91\x97\x96\xe6\xb1\xfc\x87\x88\xb4\x99\xe6\xf7\xf7\xc2\xd8\x97\xfe\x80\xb5\xa0\x55\xee\xe9\x26\xe8\xca\x3d\x4c\xeb\x44\x2b\x13\x7d\x69\x4e\x64\xaa\x4b\x55\x06\xd1\xb2\xcc\xf1\x22\x7e\x78\x52\x51\xd1\xca\xed\xb0\x1a\x5e\x65\xd1\x54\xd3\x6c\x6a\xc4\x21\xe5\xb0\xa4\x0d\xf6\x4c\xa2\x04\xcc\xb0\x58\x55\x1e\x5a\x22\xe0\xad\x37\x2f\x7d\xdf\x25\x3e\x91\xa1\x1e\xff\x6f\xea\x00\x19\x45\x06\x79\x04\xc7\x23\x17\x00\x11\xee\x91\xd6\x01\x2f\x4e\x23\x74\x77\xd2\xa7\x3f\x69\xc1\xbb\xb4\x83\x0a\x00\xb7\xde\x48\x96\x99\x81\xc4\x9c\x9f\x62\x50\x43\x44\xc9\xb6\xa6\x71\x08\x7f\xd8\x97\xaf\xb9\x27\xec\x8b\x1d\x8c\x83\xa9\x17\xe7\xec\x5f\x97\x00\x11\x7f\x55\x32\x76\x2e\x62\x46\xd1\x88\x52\x6d\x61\x40\x28\x22\x64\x8e\xae\x22\x00\xb7\xd2\x11\x10\xf9\xdd\x89\x7b\x22\x92\xfd\x11\x16\x45\x84\x9e\x6b\x59\x47\x8a\x02\xc0\x14\x00\xd8\x4d\xd9\x02\xf6\x8a\x7a\x7b\x75\xeb\x8c\x77\x5f\xd3\x11\x14\x82\xfd\x3c\x65\xb4\x3a\xdf\x02\xe9\x0d\xdc\xc5\xf4\x57\xd0\x13\xfa\x73\xba\x6b\xe6\xc5\xec\x26\xb4\x41\xde\x93\x59\x25\x12\xfe\x7d\x00\xe4\x3e\xbc\x70\x00\xec\xc6\xb4\x2c\xeb\xf9\xb9\xd8\x80\x17\x0e\xd0\xf7\x09\x4e\xfc\xd9\x04\x27\x9d\x58\xec\x13\xe4\xf9\xbe\x3b\x89\xfc\x2d\x58\x8e\xce\x89\x3b\xa3\x98\xfd\xe4\xf8\x62\xff\xf8\xe2\xf2\xe2\xb7\xd3\xfd\x5e\xc7\xd1\x2c\xac\xb7\x3f\xe7\x59\xfa\x8f\x17\xe1\x90\x9e\x3a\xe2\x4f\x48\x7f\xeb\x7f\x3b\x05\xbc\x76\x33\x00\x20\x1d\x3d\x63\xc2\x20\x65\xe5\x3a\x98\xe9\xcc\x27\x1e\xc7\xb6\x22\xee\x98\x7f\x3b\x5f\xee\xae\x2e\xde\x44\x72\xe0\x22\xba\x61\x97\x58\xc9\x1a\x8d\x16\x50\x5c\x3a\xbd\x8c\x45\x40\x84\xb3\x42\xe3\xc2\x31\xa0\x0f\xeb\x8f\xfb\x17\x0e\xeb\x81\xaf\x02\x60\xe7\x50\xfb\xd2\x9c\x7f\x79\x8c\xe9\xdc\x1d\xf0\x6e\xc2\xb6\xc9\x37\x5d\xcf\xdd\x09\x93\x67\x80\x8e\x5b\x89\xf0\xce\x6b\x36\x37\xf9\xbf\x82\x38\x7c\xfb\xfa\xfe\x5e\x27\x8a\xc5\xe7\xaa\x96\xb2\x10\xa2\x23\x51\xb5\x81\x92\x1c\xa9\x0b\x7d\x5a\xed\x7a\x03\xa9\xaf\x37\x37\x5d\x31\xa9\x09\x4e\xca\x09\xbc\x63\xa3\x9f\xe0\xc4\xff\xfd\xd5\x8c\xfd\x51\x6c\xbe\x9a\xa1\xe2\xf7\x8e\x55\xfa\x8e\x95\x2a\xb2\xac\x71\x6d\xfc\x85\x67\x03\x4e\x8a\x3e\x22\xe1\xf0\x97\x98\x0c\x2f\xb2\x6b\x94\x56\x7d\x2b\xe4\x63\x25\x9c\x11\xce\x93\xc9\xa0\x74\x50\x60\x26\x21\xa9\xff\x96\x01\x71\x1d\xe7\x07\x04\xc5\x3d\x25\xdc\x78\x52\x3b\xb9\xce\xaf\x5b\xbb\x9c\x61\x66\x3d\x39\x9d\x52\xce\xa3\x5c\x19\xde\x39\x8e\xe6\x3d\x52\x40\x22\xa7\xc6\x72\xf5\xcb\x9b\x6a\x8b\xfc\x36\xea\xac\x69\x35\x0b\x5e\xcf\xbc\xe1\xf5\xa8\x61\x89\x89\x22\x25\x2e\x0c\x7c\x31\x4d\x5c\x99\x66\x37\x55\x19\x4d\x2f\x4e\x7e\xda\x3f\xee\x75\xb4\x78\xa0\xfa\x3c\x91\x36\x4f\xac\xcd\x13\x26\x3e\xf1\x14\xf5\x20\xc7\xae\xa9\x33\x75\x09\xa6\x1b\xc0\xbc\xf4\xfd\x8c\x7d\x62\x8b\x30\x13\x38\xcb\xc6\x28\x65\xa2\x55\xe2\x29\x99\xa1\x10\xb2\x82\x02\x8e\x50\x9e\x07\x03\xd4\x21\x0a\x4a\xc2\x26\xc7\xa6\x27\xee\x00\x4a\x09\xa6\x3c\x09\xe1\x77\x44\x8e\xb5\x0e\x57\x74\x09\x4c\x7b\xea\x04\xdd\x96\x32\x3f\x02\xee\xef\x5d\x4e\xd0\xab\xab\x0f\x20\x36\xf1\x8f\xb2\xb8\x55\x49\x61\x55\xde\xd8\x5e\x07\xf3\xde\xa3\x10\x6a\x0d\x8e\x77\x8e\xf6\x19\xf9\xa1\xea\x29\x5d\xd1\x10\x31\x42\xfb\x4e\x11\x16\xea\x3b\x8d\x46\xa8\x8f\x43\xc1\xa4\x6d\x75\xae\xe4\x6e\x02\xc5\xca\x60\x11\x5a\x02\x14\x1b\x9c\xf4\xc4\x93\x94\xcb\x1c\x5d\xe0\xbf\x0d\xdc\x1c\x80\x02\x32\x36\x81\x6d\x48\x4d\x9b\xdc\x15\x6e\x7f\xb4\x25\x13\xbf\x8a\xad\x53\x82\x46\xb9\x75\x30\x76\x41\x51\x80\x8d\xc4\xe3\xb7\x8f\xf9\xc5\x52\x6e\xad\x22\x1e\xd7\xaf\xb3\x2e\x9f\xb4\x1b\x16\x5c\xe0\xd9\xfc\x01\x97\x67\x5b\x3a\x00\x71\xa4\x9a\xbf\x92\x2d\xec\x50\xe3\x7c\x3e\xcd\xdf\xc9\x16\x96\x29\x13\x1c\xf9\x53\x37\xaa\x8a\x52\xf3\xb6\x92\xc9\xb1\x0d\x97\x8b\x52\xe3\xb6\x70\xfb\x36\x5c\x53\x83\x9b\xb5\x85\x7f\x65\xc3\xd7\x58\x8f\xee\xa4\x2d\xf4\xa1\x0d\xbd\xe4\x5e\xba\x61\x5b\xe0\x91\x2e\x0c\xde\x5f\x4e\x18\x6c\xf1\x85\x8b\xc5\xc2\xcb\xc9\x6d\x19\xac\xfa\x2a\x81\x82\x9b\xaa\xd9\x75\x5d\xce\x57\xf5\xbb\x15\xb8\xe5\x8f\x22\x70\x4b\x96\x11\xb8\xc5\x5f\x57\xe0\x96\xfc\x39\x02\xb7\xf8\xc9\x08\xdc\x0c\xa3\xc0\x8c\x9b\x65\x29\x39\x84\x69\xec\x05\x80\xb0\xf9\x9c\x34\x48\x6c\xee\x86\x58\x7b\xc0\x32\xae\x70\xab\xd0\x80\x94\x20\x52\xb2\x0e\x17\x09\xc6\x01\x22\x4a\x2c\xc3\x99\xa9\x60\xec\x20\x93\xe2\xb0\xf5\x8f\x9c\x4d\x42\xec\x39\xbf\xbf\x9f\x31\xc6\xd2\xcf\xdd\x5c\x4b\x34\x7f\x85\xfa\x19\x46\xe7\x28\x8d\x3a\x3a\x35\x40\x3c\x61\x87\x5d\xd0\x45\xbe\x41\x98\x50\x8a\x70\xc6\x34\x98\x2f\x18\x73\x62\x36\xc7\x53\x39\x2f\xc6\xab\x48\x13\xd7\x22\x0c\x58\x5c\xa9\x92\xbc\x28\x8a\x02\xe6\x13\xe6\xc4\xab\x41\x90\x08\x86\x48\x77\x33\x57\x51\xa1\x08\x4a\x3a\xa4\x93\x42\x11\x3a\x00\x8b\x3f\x2e\xd0\x1d\xe9\x04\x85\x22\x43\x2c\x80\x09\x14\x26\x7b\xf1\x46\xec\xe7\x2f\x64\x6c\xbd\xac\xcf\x23\x13\xbc\xcb\x3b\x74\xb1\x95\xb4\xd1\xc5\x30\x05\x90\x70\x8a\xc5\x8d\xd9\xd4\x47\x63\xca\xeb\xe9\x7a\x72\x52\x9a\x5d\x6b\xf4\x36\xa3\x5a\x7c\x4a\xf3\x70\xd9\x13\xdd\x6b\x0a\x0c\x40\xa2\x9b\xea\x2e\x72\xad\x09\x93\x78\x7c\x95\x05\x38\xda\x4e\xb2\x30\x48\xb6\x72\x92\xe1\xc0\xb6\xdd\x55\x8d\xaa\x66\xcb\x0c\x21\x31\x53\xd0\xb5\x87\x67\x6c\x70\x33\x90\x02\x13\x26\x7b\x44\x6c\xc2\x4c\xe0\x14\x5e\xf9\x69\x91\xa5\xff\x3f\x7b\x6f\xde\xdd\x36\x6e\xee\x01\xff\xef\x4f\xc1\xf0\xf6\xa4\xe2\x2d\x24\x5b\xb6\xb3\xe9\x5e\x26\x93\x49\x32\x9d\x74\xb2\xbd\x4e\x66\xda\x79\x55\x9d\x5c\x88\x84\x24\xd6\x14\xa9\x82\x90\x3d\xaa\xad\xf7\xb3\xbf\x07\x1b\x09\x90\xe0\x26\xc9\x5b\xe2\xf6\x9c\x89\x45\x82\xd8\xf1\xe0\x59\x7f\xcf\xab\x30\xf0\x4e\x53\x7b\xf2\x57\x6f\xcc\xa7\x87\x6e\xa3\x0e\x62\x36\xe5\x29\x24\xe8\x0b\x63\x02\x29\xab\xea\x2d\x31\x46\x11\xe1\x0f\xa4\xc3\x00\x9a\x07\xa4\x63\x8b\x5d\x63\x53\x5e\x7b\xbd\xa6\xcb\x9a\xb8\x9d\x32\x4f\x9a\xae\x74\x9a\x60\xfe\x34\x9b\x7a\xd4\x32\x5f\x33\x10\x97\xf8\xd5\xfa\xb1\x67\x53\xf9\x46\x38\xd5\xc2\x5b\xe5\x54\x1b\xaa\x81\xa5\xae\xb2\x67\x40\x27\x70\xed\x53\xb4\x62\x91\x1e\x49\x65\xa4\x07\x1d\xbc\xd8\x22\x71\x2b\xca\x9b\x0c\x83\x91\x1b\xaf\xa5\x53\xbf\x2a\x86\xd3\x13\xc7\x91\x2e\x90\x48\x27\xd3\xf3\x63\x4f\x6e\xad\xdf\x02\x74\xde\x63\x5b\xff\x33\xdf\xf9\x54\x90\x7d\x4b\xd0\x9c\x6f\x9b\x53\xb4\x02\x0c\x32\x67\x0d\x02\x17\x2b\x7c\x5c\x2c\x56\x63\xe9\x0e\xa3\x11\xf0\xb6\x73\x31\x9d\xe7\x5d\x4c\xbd\x12\xfb\xee\x7c\x88\x46\xae\x27\xec\xbb\x73\xdd\xbe\xab\xfe\x04\xf3\xbc\x7d\x77\x5e\x6a\xdf\x9d\x5f\x5e\xce\xf3\xf6\xdd\xb9\x6e\xdf\x9d\xbb\xcb\xf6\x2e\xa6\x01\x88\x53\x17\xd3\xb9\x03\x7c\x45\xef\x3c\xcf\x59\x5f\xe7\xc2\xbe\xab\x3d\x7f\x31\x2f\xee\x31\x3f\xb5\xef\xce\xab\xed\xbb\xf9\x16\xcc\xdb\x8d\x76\x71\x4e\x87\xc7\xed\xbb\xd0\x9d\x03\xcc\x5d\x4c\x15\x9f\x82\xbd\x26\xe0\x0e\x79\x62\x1a\x27\x8d\x29\xe8\x75\x07\xba\xb0\x03\x91\x92\xd6\x2d\x22\x5d\x62\x1f\x75\xe7\x01\xe3\xde\xb5\xb1\x06\x67\x2b\x16\x89\xc6\xdf\x99\x3f\xb8\x8b\xd1\x89\x4a\xff\xf7\xc3\x20\x22\xe5\x89\x51\xb8\x74\x83\xfc\x80\x88\xa2\x57\x7c\x6f\x0a\xbd\xd3\xf0\x22\x62\xc8\xd2\x94\x21\xb2\xc1\x3c\xa0\x7f\xe7\x55\x98\x36\x98\xc7\x3e\x1a\xd8\xff\x82\x67\x90\x33\xce\x36\xa0\x3c\xcd\x90\x2b\x80\x81\x3d\x87\x0b\x7b\x04\x60\x18\xc0\x44\x3c\x7c\x64\x8f\xd6\x40\x54\xfd\xf3\xab\x77\xb2\x66\xe6\x5a\xf6\x47\x17\x2f\xc7\x2b\x59\x29\xff\x9b\x57\x87\xc7\x6a\x35\xfc\x8d\x3d\x87\x9e\xf8\x0b\xc3\x53\x44\xff\x19\xb3\xff\xfc\xa1\x34\xf1\xfb\xcb\xf7\xf9\x36\x56\x70\x1e\xca\x36\xf8\xdf\xbc\x0d\xfe\xb7\xbd\x9a\x87\x4a\x5b\xec\x57\x5a\xdb\x3f\xb2\xca\xd4\xa9\xf8\x23\xab\x90\xfd\x39\x23\xf3\xf0\x3d\xfd\xf9\xa0\x0f\xe6\x94\x83\x7c\x15\xc6\x0c\xfd\xf3\xc1\x01\xad\x78\x1a\xbd\x7a\xfd\xf2\xcb\x4b\xfa\x96\xb7\xfc\x87\xd6\x24\xfb\xb5\xe6\x26\xe0\x0a\x16\x81\x9b\x80\xb7\x60\x0e\x4a\xd9\x82\xf9\x9d\x60\x0b\xd6\x74\xc2\x93\xec\xec\x85\x6b\x7a\x36\x1a\x45\xe0\x4d\x11\x79\xc3\x8e\x53\x5e\x21\xe7\xc7\xf3\x1e\x0a\x11\xf3\x56\x65\xdb\x05\x62\x04\xad\xbf\x58\x7e\x70\x66\x03\xe4\xf4\x5e\xc5\x3e\x7a\xcf\xce\xac\xf9\x0a\x9f\xdf\x5f\xe1\xf7\x57\xb8\x46\xe4\x23\x02\x83\x48\xa7\xed\xb9\xe0\x90\x5d\xdd\xd8\xa4\x01\x0d\x50\xbd\x2c\x0a\x1e\x0d\xf1\x79\x84\xb0\x8b\xc4\xaf\xf3\x39\x13\xe5\xff\x8e\xe0\xe9\x7b\xb8\x58\xf3\xf8\x29\x22\x05\xa1\xf3\x39\x8b\xa8\x22\x94\x9d\x3d\x45\xab\x9f\x62\xfc\x8a\x76\x22\x7f\x9e\x68\x39\x11\x58\xc5\xff\xb9\xd0\x53\x3b\xa7\x96\x65\xc4\x8c\xd0\x92\x49\x56\xaa\x13\x9d\x0b\xe3\xf8\x74\xb9\xa0\xf5\xa4\x7f\xe9\x0d\xb1\xce\x2b\xc5\x84\xe3\xf7\x09\xc3\x6a\xc0\x30\x67\x25\x50\xbf\x31\x97\xcc\x4e\xb6\xca\xc5\x90\x9a\xf5\xe6\x21\x0e\x41\x74\xba\xcf\x3e\xf7\x62\xa1\x96\x6c\x13\x1b\xa4\xfa\x9f\x66\x9e\xa7\x93\xbb\xe4\x79\x3a\xbe\xf7\x3c\xbd\xdd\x9e\xa7\xbb\x89\x13\x9a\x95\xc7\x09\x29\x6e\x60\x65\xfc\x0b\x46\x8b\x38\xa1\x97\xf0\x6a\x5f\x01\x6f\x2a\x8d\x1e\x52\x8a\x9f\x9e\xb1\xb8\xa1\xda\x72\x91\xc4\x80\x0d\xeb\xcb\x66\xa9\xb7\x1c\x50\xe6\x74\xa7\x14\x97\x78\xae\xed\xe3\x9d\x55\xa6\x6b\x52\xf0\x41\x8b\x85\x77\x9a\x7c\x93\xcd\x0c\x58\xe6\x5e\x9d\x9e\xd9\xc0\xcb\x3d\x93\x59\x5d\xfd\xdc\x73\x25\x49\xd9\x3c\xf7\x2a\xc5\xb8\x15\x0e\x75\xeb\x05\x46\x0b\x88\xf3\xf9\xf1\xf8\xb0\x12\x44\x14\x25\x7d\x04\x88\xb3\x5e\x20\x9c\x04\x09\x51\x70\xba\x86\x00\x00\x10\x8d\x5c\x24\xdd\x6a\xf6\xf5\x8c\xb6\xc3\x68\xd4\x93\x5f\x31\x50\x48\xe6\xd0\xd5\xee\x7b\xf1\x91\x48\x86\x3f\xee\x04\x25\x46\xb1\xad\x43\x3a\x96\xf9\xca\x95\x15\xd9\x3e\xb0\xc3\xcb\xd7\x4e\x17\x75\xfb\xb0\x0e\x3f\x5f\x6d\x9a\xed\x17\x6e\x5b\xf5\x3c\x5f\xb5\x9a\xff\x2e\xdc\xde\xea\x5b\x58\x4a\x89\xc0\xbc\xb5\x45\x39\x50\xcd\x9b\xb3\x0d\x2e\xf2\x52\x95\x76\xd9\x8d\xbe\x03\x61\x9c\xe5\x53\x6f\x48\x66\x37\x13\x04\x61\xa9\x20\x98\x1d\xa3\x30\x45\x1f\xc4\x8d\xa5\xc1\xeb\x40\x1f\x54\xa5\x41\x8d\x6c\x31\x48\x01\x05\x17\xd7\x75\x5d\x72\x79\xc9\x12\xf7\x93\x17\xd1\xa0\x05\x31\xb3\xa2\x8c\x0e\x0d\x6c\x87\x67\xeb\xde\x33\xfa\x64\xc9\x8f\x2f\x86\xd1\x68\x40\xd6\x06\xca\xd6\xa2\x32\x11\xae\x16\xf1\x70\xb5\x48\x39\x13\x89\xba\x32\x81\x4b\x49\x5c\xbc\x9d\xb4\xe9\xe5\xa5\xcd\xb8\x84\x2d\xa3\x82\xa6\x1b\x0b\xb6\xcc\xd3\xd9\x32\x4f\x5b\xef\x3c\x5b\xe6\x95\xb2\x65\xde\xe5\xa5\x97\x67\xcb\x3c\x9d\x2d\xf3\xdc\xa0\xbd\xb4\x49\x79\x69\x29\x6d\x7a\x0e\x58\x2a\x6c\x99\x97\x63\x9a\x3c\xc1\x96\x69\xcf\x5f\x78\xc5\xfd\xb6\x4c\xd9\x32\xaf\x9a\x2d\xcb\xb7\x60\x3e\x32\xb4\x8b\x1e\x1d\x1e\x67\xcb\xb0\xeb\x81\x88\x4b\x9b\x8a\x20\xb0\xd7\x04\x34\x3c\x4f\xb4\x0c\x39\x25\xaa\xc4\x8e\x1c\xa6\xef\x5d\x11\x33\x82\x7b\x31\xe3\x5b\x17\x33\xa4\xe3\x42\xd1\xd3\xaf\xdb\x77\x5d\xb7\x83\x5c\xd4\x23\xf1\x67\xa6\x4d\xe8\xa8\x7e\xf4\x83\xfd\x7d\x9e\xab\xde\x15\x27\x85\x3e\xf8\x0b\xa2\x4d\x48\x02\x4c\x4b\xac\x25\xaa\x6f\x29\xe0\x41\x99\x44\x5f\x2e\xd8\xd4\xf3\x0e\xed\xd5\xb6\xea\x0d\x9d\x64\x11\x2f\x2c\x84\x16\x0a\x8e\x3e\x29\x48\x13\xa1\x99\xa5\x97\xde\xf4\x70\xe4\xc6\x1d\xa4\xf3\xd6\x78\xd4\x93\xa5\x21\x87\x23\x37\x30\xf8\x11\xc0\x86\x4f\x15\xb6\x1e\x03\x23\x63\x5f\xfa\x9d\x28\x8a\x39\x8a\x2b\x74\x83\x0e\xce\xf9\xe8\xb1\x91\x6e\xcf\xce\x87\xf9\xaa\x15\x59\x61\x6b\x6e\x1e\x3b\x2d\x50\x48\x55\x34\x8c\x72\x65\x91\x6a\x07\xf2\x91\x17\x63\x06\x56\xa4\x7e\x7c\xb5\xc6\x20\x7a\x3a\xc2\x0a\x1b\x44\xe9\x20\xf6\xc7\x61\xec\x9d\x06\xd1\xf4\x4a\x6c\x14\x0c\x5e\xe0\x4e\x18\x29\xf8\xe4\x30\xe8\xa9\xd4\x07\x9e\x99\x26\x98\x5d\xc8\xe9\x20\x07\x40\x17\xf7\xbc\x71\x87\x41\xe8\xc1\x79\x02\xd2\x30\xc6\x8f\xe7\x11\xe2\x89\x50\x1c\x9d\x4b\xa4\xc3\xef\x89\x9a\x21\x4b\x19\x00\x12\xcd\x18\x11\xc8\x29\x8a\x99\x35\x62\xb9\x1d\x7f\xe8\xe7\xf9\xc3\x65\xc9\x7d\xea\xd3\xfb\x74\x29\xee\x53\x5f\xbf\x4f\xd5\x9f\xc0\xcf\xdf\xa7\x7e\xe9\x7d\xea\x5f\x5e\xfa\xf9\xfb\xd4\xd7\xef\x53\xdf\x8d\xdb\xf3\x87\x94\xc1\x92\xfc\xa1\xef\x00\x4f\xb9\x4f\xfd\xdc\x6d\xe7\x8b\xfb\x54\x7b\xfe\xc2\x2f\x2e\xbc\x97\xde\xa7\x7e\xf5\x7d\x9a\x6f\xa1\xdc\x7f\xc5\xa7\xc3\x93\xd6\x08\x5f\x5a\x23\x14\x35\xf1\x5e\x93\xd4\xaf\x75\x24\x27\x3b\xad\x95\x36\x68\x3f\x9e\x4b\xf8\x0f\x4e\x7b\x80\xa9\x99\x8c\xa4\xd6\xa2\x48\x14\x5a\x98\xc3\xd5\x18\x75\xe9\x64\x96\xf9\xf0\x6a\xec\x71\xc6\xb8\x7a\x77\x89\x71\xf5\xef\x19\xd7\x6f\x9d\x71\xa5\x17\xe7\xdc\xed\x94\x69\x9e\xd5\x53\x50\xae\x70\x56\xd4\x3b\xdb\xa8\x99\x3d\xc9\x30\xb2\x46\x33\x25\xb3\x57\x60\x18\x85\x8e\x39\xbb\xb5\xc2\x9c\x9f\xcf\x8f\x82\x4e\xbc\xa1\x54\x80\xa7\x06\xe8\x74\xe8\xe4\xa5\x01\x4b\x89\x1b\x72\x0f\xd3\xde\x38\x88\xfc\x4e\x28\x6f\x2e\x3d\x2e\xbe\xe3\xb8\xcf\x49\xcf\x5b\xe2\x24\x96\xab\x06\x98\x73\x72\x30\xf9\x10\x13\xd9\x8a\xd3\xd1\x94\x22\x8e\xd3\x91\xc0\xc7\x8e\xfb\x1c\x75\x88\xfc\xa5\x55\x9d\x34\xa9\xa8\x08\xa0\xac\x40\x69\x12\x3d\x65\xcf\x1c\x11\x28\x80\x8d\xb5\xc8\x4b\x96\x93\x92\x0f\x41\xee\x69\xf6\x88\x39\xf3\x9c\xc1\xf0\xe1\xc3\xa4\xc3\xa2\xab\x9c\x1e\x77\x23\x66\x51\xe0\x26\x88\x03\xd1\x3d\xbe\x3e\x8e\xe3\xac\x41\xc8\x15\xdb\xbe\xae\x0d\x95\x0b\xb8\xbd\xa2\x75\x99\xaf\x5a\xe1\x83\x77\xab\x69\x9d\x6f\x7e\x29\x2d\x78\x5c\x5d\xcb\x3b\xe9\xda\x5d\xe2\x54\x16\x4f\xf1\x3d\x89\x23\x0f\x39\x1c\x73\xb4\x85\x1f\x9c\x79\x3a\xaa\xbc\xa9\x5b\xcf\xc7\x35\xca\x07\x0a\x01\xdb\xbd\x10\x80\xd1\x22\xbe\xbb\x42\x40\xb9\x22\x98\x53\x5a\xe1\x40\xac\x11\x5a\x4a\x34\x39\x30\xda\x22\x56\x23\x63\xb1\x03\x2e\x4e\xd1\x6a\x80\xc0\x12\x07\x83\xa8\xb7\xc4\xc1\xda\x28\x14\xf0\x29\xbb\x17\x0a\xee\x85\x02\x23\xc1\xa9\x49\x45\x5c\x2a\x04\xcc\x23\x34\x8f\xa3\x20\x21\xfb\xf3\x65\x48\x82\x2e\xf7\xfa\x2c\xcf\x21\xa7\xba\xb9\x64\x2c\xfc\xfc\x2e\xb1\xf0\x8b\x7b\x16\xfe\x7b\x60\xe1\x27\xac\x3e\x91\x7b\x48\xa0\x47\x0b\x76\xe0\x2c\xef\x59\x27\x50\x47\x02\x17\xad\x33\x95\xb4\xe6\x71\x46\xe9\x32\x8b\xfc\x59\x95\xa7\x91\xe3\x6e\xbd\x65\xde\x2d\x1c\x3a\x08\x57\xf8\xb4\x54\xe8\x15\xcb\x05\x8d\x26\x5c\xc7\x76\x32\xc8\x5c\x05\x74\x92\x02\xc8\x3c\x05\x74\xe2\xa3\x4a\x7d\x5c\xe6\x39\x15\xb7\x97\x7b\x9e\x71\xab\x7e\x43\xd0\xa6\x89\x44\xda\xa7\x6b\x29\xfe\x9a\xb1\xbf\xd2\x80\xc8\xce\x67\x44\x9a\xa1\x3b\xad\x31\x4a\x10\x79\x05\xbd\x19\xea\x38\x17\x93\x12\x10\xff\x0c\x50\x20\xf1\x66\x88\x6e\xb8\x8e\x0d\x27\x04\xe1\x13\x14\xb1\xd1\xd2\xfb\xbc\x1c\xdf\x68\x6c\xa6\x1b\x59\xda\x14\x87\x8d\x4a\xdd\x9e\x3d\x2f\x44\x10\x77\x24\xcc\x79\x19\xe7\xd1\x11\xe8\x4e\x6c\xd2\xe9\xa6\xfc\x02\xa7\x1d\xc7\x0c\x69\xa1\xa5\x33\x87\xf4\xce\xe7\x0c\x17\x8f\xaf\xa4\xd4\xfc\xc1\x81\xb3\xa7\x90\x24\xda\xcf\x1e\x46\x13\x17\xee\x69\x89\x09\x8a\x50\x18\x12\xec\x22\x72\x9f\x5f\x30\x49\x89\x07\xa4\xb2\x84\xe5\x4e\x27\x12\xd0\x0a\x20\xe2\x90\x2d\x1a\x56\x43\x86\xbb\xcc\xe6\x22\x04\x90\x81\xff\x0a\xb0\x86\xf5\xda\xd9\x53\x08\xd4\x14\x91\x57\x3c\x2c\x8f\x31\x53\x1d\xe7\xe1\xc3\xb0\xe7\x07\xc9\x82\x0a\x65\xfc\x91\xa1\x90\xb3\x76\xd6\xcb\xe8\x1c\xc3\x45\xde\x80\xff\x95\x4f\xaa\x9c\xae\x19\xf3\x84\x8d\x00\x71\xc0\x4c\xae\x5e\x04\xa2\xe2\x8c\x38\x20\x4d\xa7\x5b\x78\x07\xa2\xf5\x12\x07\x8a\x87\x2a\x5d\x84\xb3\x0e\x72\x44\x3e\x21\xe6\xd4\xf0\xa0\xcf\xf3\x24\x74\x90\x1a\x0b\x7a\xe6\x3c\x7c\x58\xf4\xa7\x75\x34\xba\x93\x8d\x83\x51\x35\xfc\x3f\x1b\x5a\xcf\xe8\xd7\x43\x08\x42\xc5\x39\x8b\x15\xd5\x96\x7a\x08\x47\x7b\xc1\xa4\x33\x96\xe9\x1b\xb0\x3b\x16\x4e\xc0\x60\x9c\xc1\xf0\x82\xb1\xc8\xc9\x80\x05\x5c\x0f\xed\x18\xa1\x97\xe8\x44\x7c\xf8\xf0\x61\x87\xb8\x13\xf1\xa9\x03\x08\xa7\xad\x00\xbb\x89\xd4\x7d\x87\x74\x40\x72\x61\x4c\xbb\x0c\x83\x0b\x0e\xdb\x41\x54\x70\x69\xb9\xb3\xa0\x8b\x8b\xeb\x0e\x42\x17\xe7\xd6\x87\xcb\xf8\xd9\x96\xd2\xee\xbf\x87\x0f\x45\xc4\x6d\xf2\xf0\xa1\x7d\x7c\xd0\xb7\x1f\xb8\xae\x7c\x32\x3c\x18\x09\xd0\xc1\x87\x0f\x27\x62\xb8\x17\x9e\xd2\xdc\x00\x02\x5e\xf9\x80\xa1\x3b\xb0\x81\x63\xe7\xf2\x52\x9d\xa7\x88\x87\xea\x66\xd3\x25\x02\xd2\x3b\x0f\xb2\xf2\xb8\x87\x11\xf4\x57\x2c\xdd\xd3\xf3\xfe\xe5\x65\xe4\x3c\x7c\x88\xf9\x11\xa5\xd5\x26\x88\x9b\xe4\x00\x16\x79\x9c\xd8\x8e\x46\x2c\x1d\x83\x62\xa5\x13\x1d\x40\x0c\x1c\x46\x92\x19\x70\xc8\xc0\x72\xb2\xfa\x1f\x3e\xcc\x7a\x97\x9b\xa8\x25\x0e\x1c\x99\x2b\xca\x4f\xef\xbe\x61\xaf\xd7\x1b\xa7\xb0\x35\xce\x28\x85\x44\x18\x22\x40\x46\x4c\x11\xa4\xf6\x3e\x43\x4a\x63\x99\xd3\xd7\x20\x76\x17\xba\xae\x82\x43\x8c\x6c\xed\x25\xb7\xcc\xd7\x9b\x5e\x43\xdb\xbb\xc9\x79\xf9\xba\x53\x13\xe6\xd6\xaa\x1b\x3f\x5f\xf5\x95\xa9\x6e\x56\x6b\x87\xa1\xbb\x55\x8b\x0e\xec\xce\xcf\x05\x28\x46\x53\x0c\x17\xb3\x1e\xfb\xef\xf5\x2b\x64\x58\xb3\x25\x81\x40\xed\x94\x31\x6c\xa3\xd5\xc8\x42\xff\x4e\x60\x77\x02\x29\xdb\xb3\x2a\x29\x91\x04\xe3\x90\xd9\x56\x8c\x6f\xd9\x69\x31\x02\x9a\xd0\xb7\x41\xd2\x8d\x97\x24\x09\x7c\x54\x52\x60\x8a\x48\xd7\x93\x38\x92\x35\x1d\x89\x62\x3c\x67\xeb\xdd\x65\x02\x5c\x59\x87\x38\x44\x4b\x4a\x49\x4b\xfb\x1d\x78\xa7\x5d\x86\xaf\xda\x85\x91\x37\x2b\x83\x5d\x91\xe2\x1e\x17\x93\xcc\x32\xdf\x5d\x43\xd2\x58\xe4\x12\x25\xf1\x6b\x75\x02\xc6\xe2\xfd\x8c\xbe\x8f\xb3\xf7\x19\xf8\x27\x2b\x78\xe6\x76\xca\xf0\x56\xd5\xc0\x7f\xaf\x31\xbf\x9d\xea\xcb\xb8\xcb\x98\x31\xc6\x87\xeb\xc9\x64\xa4\xb9\x27\xd4\x66\x4b\xd7\xaf\x50\x9b\xc5\x9a\xb0\xbd\x2c\x15\xb6\x97\x25\xc2\xf6\x32\x2f\x6c\x2f\x35\xb1\x70\x59\xa1\x2d\x59\x2b\x52\x00\xdd\x69\x3f\xd1\x8d\xf6\x92\xef\x33\x30\x53\x5f\x8a\xe3\x93\xcd\x71\x26\x26\xc8\x83\x17\x15\xdf\x05\xc9\x47\x79\xae\x60\xf1\x6d\x7a\x52\xde\xf0\x83\x92\x14\x8b\x28\xe7\x23\xc8\xde\x8e\xd5\xa8\x29\x30\x71\x73\x98\xc1\xf9\xd4\x1f\x35\x20\xa6\x92\xb3\xe7\x7c\xfe\x3a\xcb\xa4\x91\x8b\x5a\xf4\xd6\x67\x01\x3a\x5f\x14\x01\xc3\x72\xd8\x04\xeb\xe9\x32\xf0\x15\x2e\x53\xd8\x39\x96\x81\xcf\x72\x71\x39\xeb\x49\xec\x2d\x13\x91\xc5\xa2\x80\xce\xa8\x04\x69\xc9\x20\x49\xca\x98\x65\x00\xb0\x8e\x60\xe2\x10\x65\xab\x5e\x12\x82\x83\xf1\x92\xa0\x8e\x4d\xe0\x98\xb1\x96\x36\xbd\x5d\x12\xf3\x2b\x60\x1f\xd8\xf4\xbc\xf1\x1e\x38\x40\xba\xed\xbe\x40\x82\x45\x31\xd6\x37\x28\xaf\x8f\x38\xeb\x75\x82\x38\x9f\xc5\xf1\x38\x34\x42\xa2\xa9\x62\x39\x43\x98\x13\x80\xfe\xa0\x05\x2f\xb4\x40\x6f\xc8\x31\x59\x44\x10\x1b\xff\xca\x76\x5d\x37\x7c\x91\x7d\x83\x8b\xdf\x64\x31\xaa\xdc\x01\x39\xc5\x8d\x1b\x92\x91\x33\xc0\xc3\x70\xb4\x5e\x3b\x83\x13\x34\x09\x05\x22\x51\x3e\x8e\xde\x31\x8f\x84\x23\x25\x69\xc2\x49\xd3\x91\x88\x9c\x07\x85\x91\x40\x65\x24\x51\xf1\x9b\x22\xf8\x28\x19\xc2\xd1\x0b\xfa\x9f\x0c\x0c\x6f\x10\x0d\x61\xfd\x88\x70\x1c\x1b\x77\xab\xd8\xe3\x6f\xf8\x0e\x5b\x8b\x9d\xf6\xe3\xea\xad\x5f\x8c\xd6\xf5\x68\xd5\x6f\xb4\x12\xf2\x83\xe4\xc7\xd5\x17\x38\xfd\x00\xe7\x1a\x7e\x47\x47\x12\x72\xb6\x10\xb2\x96\x01\x71\x94\x8a\xd4\x2f\xb3\xea\x34\x4d\x31\x97\xa5\xd6\xe9\x29\xc8\x5e\xd9\xff\xc5\x73\xa2\x24\xcb\x71\x42\x70\xe7\x00\xf4\x9d\x17\xea\x89\xe1\xbd\x94\xaf\xfb\x8e\x33\xa0\xec\x31\xaf\x6f\x34\x3c\x18\xad\xbd\x2c\x13\xab\xd2\x60\x76\x1a\x33\x11\xef\x05\x1a\xe8\x67\x91\x01\x56\xa5\xdf\x6b\x3d\x4e\x93\xc5\x68\xc3\x19\x31\x56\xdb\x90\x45\xd6\x9a\xf0\x84\x37\x45\xf4\x32\xa4\xf9\xd5\x3f\x70\xd1\xda\x71\xd6\x41\xf2\x36\xfa\x4d\x12\x20\x2e\xab\x1e\x38\x17\x52\x62\x91\x42\x27\xa3\x8c\x6f\x23\x82\x70\xc2\x01\xf7\x3e\x8e\xe9\xb5\x87\xb0\xc8\x47\x2f\xd8\xfe\xd4\x08\x2b\xa4\x46\xb9\xab\xf6\x0c\x29\x65\xc9\xc3\x87\xb4\x04\x6d\x5f\x56\x1b\x4d\xa9\xe4\x0e\x2e\xe8\xf6\x7a\x0f\xf1\x34\x88\x06\xf6\xc1\x82\xd2\x83\x19\x46\xc9\x2c\x0e\xfd\x41\x94\x21\x1f\xe1\x5e\xcc\x3b\x41\x25\x2d\xa6\x8f\xc1\xbd\x65\xa4\x3c\x1b\xab\xe2\x8e\x43\x2f\x99\x20\x11\x90\x81\x1d\x07\x60\x4e\x97\xd7\x6b\xb0\x72\x3d\x85\x27\x9f\x8a\x5b\xf6\xa3\x3b\x5c\x8e\xc0\xd7\xed\x2c\x2d\xa7\x79\x4b\xcb\xd7\x12\x95\xf2\xe9\x10\x8d\xdc\xaf\x42\xa5\x7c\xaa\xab\x94\xd5\x9f\xe0\x34\xaf\x52\x3e\x2d\x55\x29\x9f\x5e\x5e\x9e\xe6\x55\xca\xa7\xba\x4a\xf9\xd4\xfd\xd8\xde\xd2\xb2\x02\xd3\xd4\xd2\x72\xea\x80\x4f\x8a\x48\x7d\x9a\x53\xf8\x9e\x0a\x95\xb2\xf6\xfc\xc5\x69\x91\x77\xf8\x94\xaa\x94\x4f\xab\x55\xca\xf9\x16\xcc\xec\x0f\xed\xe2\x29\x1d\x1e\x57\x29\xfb\xee\x29\xf0\xb8\xa5\x85\xbe\xf9\x08\xbe\x82\x4f\xe0\x54\x11\x97\xce\x6a\xa4\x89\x4c\xbc\xac\x4b\x49\xde\x2c\xab\x31\xbd\xc2\x52\x46\x1a\xdf\x39\x46\x9a\xb1\xb6\x70\x23\x65\x32\x16\x2c\xd8\x12\x07\x29\x84\xbe\x0d\x0c\x09\x19\xd2\x92\xff\x8a\x79\x14\x3e\xcb\x37\x6a\xdb\x20\x72\x6d\xdb\x71\x9f\xb3\x2b\xcd\x7d\xde\x81\x97\x97\x1c\x1a\x1d\x0b\x7c\x44\x46\xf9\xc2\x0e\x71\xb2\x8d\x4c\xd8\x8d\xe9\x3e\xff\xbf\x3f\x5d\x90\xf5\x9f\x2e\xe0\xfa\x4f\x17\xa8\x43\xef\xee\xcb\xcb\xc8\x59\xff\x1f\xb0\x6d\x4a\x7d\x99\xec\x74\x82\xa6\x6f\xfe\x58\xbc\xe1\xeb\xad\xd3\x71\x65\xfd\x5c\xa6\xe4\x70\xd2\xab\x89\xf6\x09\x60\xf7\x62\xed\xb8\xcf\x19\x54\x7e\xf4\x22\x4a\xd3\x29\x23\x90\x57\xc5\x66\x3e\x2a\x18\x44\x99\x7f\x28\x1d\x8b\x6d\x3b\x6b\x67\x60\xdb\x6b\x7e\x4d\xd1\x3d\xd5\x08\x17\x83\xee\x32\xb5\x60\x54\x56\x70\x89\x83\xbf\xc5\x41\x94\xbb\xbe\xf9\x24\x77\xa4\xa9\x23\xcb\x6e\x60\xef\xdb\x74\x7a\x8a\x95\x30\xc5\xb3\x56\x07\x81\xd3\xb4\x02\xda\x04\xf7\x22\xe2\x3e\xb0\x6b\xfa\x12\x65\x57\x39\x07\x87\x77\x9f\x23\x1e\xbc\xb5\x6e\x1e\x29\xc3\xc1\x64\x8d\xc7\x90\xbe\xba\x7e\x54\xa5\xe8\x2c\xcf\xdc\x9c\x41\xc6\x90\xf3\x7f\xd4\xb5\x43\xd1\x19\x13\x24\x5a\xe8\x31\x26\x08\xf9\x63\xe8\x9d\x56\x93\x1e\x4a\x43\xe9\x51\x17\xc9\xdb\x4a\xdd\x46\x28\x0f\xbc\xa7\x07\xe1\x7c\xb3\x50\xaa\xf1\x95\x40\xa9\x06\x4d\xa0\x54\xbd\xeb\x85\x52\x0d\x6e\x06\x4a\x75\x79\x97\x8c\xfe\xde\xf5\x5e\xb2\xf7\xfe\xc2\xdf\x8f\xb3\x01\xbf\xd5\xe7\x46\x48\x7b\x1e\xa4\xb6\x28\x77\xb3\x9b\x84\x30\x99\xbd\xe7\xe6\xd4\xa4\x02\x43\x23\x8c\xa7\x53\xe6\x3c\xb0\x4d\xd2\xdd\x65\xaa\x22\x23\xc1\x64\x95\xe5\xdd\x95\xcf\x45\x23\x32\xf5\xee\x9a\x95\x13\x48\x69\x2a\x2f\x74\x21\x61\x74\x23\xe1\xd5\x26\x7e\x77\x22\x80\xc4\x82\x00\xe2\x08\xa3\xaf\x2c\xc3\xb1\x6d\xb5\x12\xeb\xb5\xfc\x90\xa1\xe6\xba\x73\x7a\x48\x24\x88\x9d\xce\xed\x44\x0e\x48\x72\x8f\xb0\xb3\xf7\xa0\xff\xc0\x75\x91\x4c\x3a\xca\x87\xc5\x2d\xe9\x72\x4a\xa5\xb5\x59\xbc\x83\xbe\xdf\x89\x3b\x71\xe7\x62\x0d\x2e\x48\x30\x47\xf1\x92\x0c\x1e\xa3\x23\xc0\x67\x13\xf9\x5f\xc4\xb3\xa3\x83\x03\xe0\x73\xb5\xde\x47\x8e\x24\xcb\x17\x9f\x7d\xb7\x5a\xa0\x41\x92\xa1\xc2\x3a\x00\xb2\x75\x1f\x84\x1d\x07\x04\x04\xcd\x07\x88\x21\xca\x85\x03\xc8\xb2\x6d\xf0\x81\x6f\x38\xc2\xda\x81\xf1\x35\xeb\xa5\x80\xa7\x0e\xb0\xbf\x60\x18\x25\x0c\xd8\xe1\xe5\x38\xc6\x04\xf9\x5c\xaf\x11\xc1\x39\x7a\x71\xad\x93\x91\xcd\xc2\xe0\xaa\xda\xe5\xa0\xf1\x00\x69\xed\x0a\x6f\x03\xa5\xfd\x35\x4c\x56\x91\x67\x29\xb0\xb0\xfc\xe2\x62\x20\x0d\x7b\x04\xaf\x2e\xa0\x0b\xcf\x61\x40\xac\x34\x79\xb3\xdc\x9a\x50\x94\x15\x80\xd2\xa1\xf0\x16\xe2\xab\x1a\xca\x97\x2c\xd6\xdf\xd7\x53\xbd\xca\x63\xb6\x7d\x78\x62\x92\xaf\x5a\x9e\xd4\x1d\xe7\x91\x5d\xd4\x71\xa3\x8c\x8d\xab\xe6\x45\x65\x19\xe5\x05\x7f\xb4\xbf\xc0\xc8\xa7\xd4\x84\x05\x1a\x09\x77\xc5\x26\xa5\xba\xd2\x65\xa2\xa6\xf8\x0c\xc1\x90\xcc\xba\xde\x0c\x51\x7e\xb9\xb2\x68\x14\xfb\x75\xb5\x9d\x9e\xd5\x14\x50\xe0\x64\x2a\xcb\xf1\xdc\x37\xd5\x65\x16\x71\x18\x78\xab\x9a\x42\x70\x49\x66\x5d\x0e\xca\x5e\x6d\xaf\x03\x4b\xe0\xed\x44\xf2\x61\x84\xca\x77\x2f\xc4\x42\x0c\x18\x79\x82\x91\xff\x11\x3b\x1d\xc5\x30\x63\x17\x16\x4a\x2b\xa9\x98\x77\x6c\x6d\x8d\xb4\x52\x8a\x29\xc7\x56\x47\xaa\x15\xf2\xb2\x42\x74\x09\xb5\x77\x99\xb1\x06\x9c\x9e\x69\x6f\x14\x13\x50\xba\x68\x5a\x01\xc5\x0a\xc4\x56\x4b\x7b\x99\x19\x03\x01\x5f\x26\xed\xed\x32\x7d\xbb\x16\x92\xe2\xbc\xe4\x6e\x4e\x57\x52\x61\x10\x7c\xca\xd8\xad\x9b\x87\x5c\x30\x76\xa1\x3b\x97\xfc\x82\x76\x10\x11\x6d\xad\xeb\x85\x41\x97\x95\x2a\xfd\xe8\x2e\x42\xee\x4e\x62\x5c\x63\xcf\xa7\x25\xf6\xc7\xcb\x20\xf4\xf3\xc4\x27\xc6\xf3\xe2\x69\x66\x0f\x0d\x27\x93\x3d\x37\x9d\x46\xf6\x02\xc7\x21\x32\x3c\xce\x28\x41\xe9\xb1\xe4\xcc\xff\xbd\xeb\xf4\xbd\x34\x73\x27\xa4\x99\x49\xde\x4b\x02\x8c\xdd\x8b\xd3\xb3\x41\x4a\xf4\x05\x9d\x4c\x49\xbb\x24\x8d\x29\x15\x07\xf4\xac\x0c\x52\x9a\xac\x10\xde\x94\x1a\xaf\x25\x14\x61\x59\x32\x5c\x05\xb5\x8f\x9d\xbc\xf2\xc4\xb8\x2a\x1c\x20\x3f\xbc\x0e\x58\x6e\x1a\xb6\xb4\x67\xf2\x7e\xe6\x47\x3f\xef\xcd\x2c\x29\x85\x44\xed\xc3\xee\x70\x04\x3a\x91\x6b\x33\xc2\xc0\x12\x1d\x90\xca\x44\x07\x2c\xbe\x49\xc4\x25\xb5\x52\x35\x90\x61\x34\x72\xf1\x9a\x51\xbc\x9c\xbd\x51\xd7\xd5\xd2\x9e\x74\x52\xfb\x3e\xe3\x5d\x59\xe7\x86\x88\xf9\x7a\x66\x36\x55\xe6\xb4\xa9\xbd\x77\xc7\x43\x34\xe2\x1a\x5c\x31\x01\x54\x90\xb8\xbc\x94\xc3\xa6\xbf\x9c\xcc\x84\xcd\x3c\x48\xd1\x68\x8f\x08\x67\x66\xa3\xe9\xb1\xc7\xf5\xec\xdc\x48\x09\x48\x2f\x59\x8e\xe7\x01\x29\x29\x9b\x02\x98\xa8\x2a\x28\xb2\x5e\x33\x27\xbd\xa5\xca\x10\xf3\xe5\xd9\x3e\xc9\x98\x9f\xaf\x58\xae\xf0\xf6\xf9\xc5\x96\x6d\x50\xec\x82\xfe\xd3\xc8\x74\xbd\x07\x11\x09\x95\x52\x11\x29\x44\xdb\xab\x51\x82\xf7\x59\xb3\xee\xb3\x66\x7d\x5f\x59\xb3\x10\x23\x5e\x90\x7c\x5c\xb0\xbc\x80\x7c\x7f\xe6\x21\xa9\xf8\xd3\x0e\x3d\x8f\xa6\xd2\xb1\x44\x96\x2a\x53\xda\xf1\x24\xed\xf9\xb0\x58\x73\x96\xa2\xa6\x21\xb1\xcc\xae\x75\x17\x22\x62\xf9\x8c\x09\x35\x94\xee\x1a\xc0\x6f\x80\x78\xd4\x21\x32\xc7\x77\xb1\xf0\x9a\xbe\x57\x92\x8e\x0d\x65\x8a\xf2\x9f\x3f\xbe\x7f\xf3\xf5\xd7\x93\x77\x36\x90\x4f\x4e\xde\x7c\xfa\xf8\xf5\xed\xe7\xcf\xbf\xbe\xf9\xac\xbf\x78\xfd\xf1\x95\xe9\xc9\xbb\x37\x2f\x4f\x3e\x18\x9e\xbf\xfc\xf4\x56\x7f\xfa\xea\xe3\xa7\xdf\x4f\xde\xfe\xf5\xe7\x2f\xec\xf1\x28\x65\x04\x69\xff\xdc\xe7\x3c\xbb\x2a\x51\xd3\xa8\x13\x87\x27\x2d\x4b\x6d\xb5\x59\x26\x33\x06\x7b\xe5\x69\xd1\xba\xbe\x58\xcd\x39\x0b\xd6\x5d\x6c\xe7\x42\x32\xce\xbb\x90\x2c\x4a\x58\x6b\x7a\x57\xbb\x0b\xc1\x5a\x8f\x75\xd6\x5a\xfd\x09\xc6\x79\xd6\x7a\x5c\xca\x5a\x8f\x2f\x2f\xc7\x79\xd6\x7a\xac\xb3\xd6\x63\x77\xde\xde\x85\xc4\x03\x7e\xea\x42\x32\x76\xc0\x44\x61\xad\xc7\x39\xc6\x77\x2c\x58\x6b\xed\xf9\x8b\x71\x71\x8f\x4e\x52\xd6\x7a\x5c\xcd\x5a\xe7\x5b\x30\x1f\x33\xda\xc5\xb1\xf4\xe2\x74\x00\x74\xc7\x32\x58\x57\x00\xbc\x83\x09\x18\xb7\x00\x0d\x0b\xa2\xae\x74\xf4\x34\xdf\xeb\xe9\x6b\xf3\x37\x77\x51\x6a\x67\xec\xc9\x86\x4c\xcc\x1d\x18\x5e\xaa\x84\xbd\xa9\xfc\x10\x99\xd2\xff\xa2\x4d\xaa\x83\x05\x9c\xa2\x2e\x09\x48\xc8\x23\x05\x4c\x2b\x94\x15\x29\xff\xec\x2e\x2e\x59\x36\x86\xf6\xa3\xbe\x9b\x03\x8e\x17\xcb\x1c\x2c\x21\x89\x71\x50\x28\x71\x17\xc7\x96\x09\xfd\xfa\x00\xcf\x60\x18\xf8\x90\x20\xbf\xeb\xcd\x60\x34\x45\x09\xaa\xc9\x39\xac\xbe\x84\xe3\x20\x0c\x28\x4b\xbe\x3f\x86\x49\x61\xcd\xb9\xa2\x8e\xde\x02\x9a\xb2\x7d\xaf\x68\xef\xbf\x0b\xea\xbc\xf9\xbd\x3a\xef\x9b\x55\xe7\xa1\x5e\x12\x4f\xc8\x6b\xe6\xfe\x2c\x6f\x13\xed\x99\xe0\x76\x51\x2f\x21\x31\x46\x3d\xe8\xc3\x05\x41\x98\x05\x93\x50\x19\xf1\x7d\xec\xa3\x90\x79\xd2\x3b\x4e\x0f\x2f\xbc\x4e\xba\xb1\xe9\x37\x22\xd5\xef\x4f\x31\xe6\xb5\x9d\x20\x2f\xc6\x7e\x87\x17\x60\xde\xd8\x04\x10\x50\xa8\x48\x7a\x43\x94\x61\x24\xb0\xae\x54\x20\x24\x70\xc1\xab\x41\x92\x8f\x05\xc2\xf3\x60\x17\x79\x3e\x7c\x19\x8f\xc4\x7a\x96\xc2\x1f\xf8\x29\xfc\xc1\x59\x06\x7d\x20\x1f\x66\x8d\x27\xa9\xc6\x70\xad\xcf\xc4\xc5\x9a\x85\x82\x04\x73\x88\x57\xbf\xa0\x95\x78\xf0\x39\x5c\x4e\xc5\x2f\x6e\xaf\x86\x4b\x32\x8b\x71\xf0\x1f\x24\xd0\x82\x74\x29\x3c\x62\x09\x90\x96\xd8\x43\x89\x30\x5e\x33\xa1\x45\x69\x5e\x45\x1a\x8a\xb8\x59\x3b\xb7\x22\x40\x78\x2c\x72\x8a\xf9\x29\xfb\x54\xb4\x55\xec\x48\xb1\x4c\x8b\xfe\xa4\xf5\xb0\x14\xc5\x8d\x9a\x2e\x2b\x80\x59\xa4\x13\xce\xda\x14\x9a\x9e\xe7\x07\x52\xb8\x44\xae\xfa\x96\x4e\x05\x73\xdb\xed\xbd\x64\x86\x7d\xd7\x75\x09\x53\x7e\xa1\x87\x0f\x1f\xf4\x99\x87\xc4\xcb\x30\x8c\xcf\xb3\xaf\x75\x88\x89\xe3\x83\x23\x67\x8f\xcc\x70\x7c\x6e\x09\xb4\x82\xc4\x1d\x5e\x88\xb4\xd0\xf6\xf1\xc1\x91\xbd\x1e\x01\xb4\x5e\x4b\x27\x5f\xe9\x4e\xa0\xf4\x21\x15\x1f\x33\x07\x60\x08\xec\x13\xf9\xda\x76\x1e\x3e\x4c\xf3\x1b\xe8\x6f\x80\x5a\x0b\x80\xeb\x64\x16\x2f\x43\x9f\x9e\xba\xc8\x0b\x42\x21\x86\x07\x93\x8e\x86\x7e\xf7\x1a\x12\xe8\x21\x96\x9f\xd2\x61\xa1\xed\xbe\x27\xb0\x05\x1e\xf4\xe9\xc0\x35\x11\x57\xca\xc6\x1f\x3e\x7f\x7a\xf9\xea\xcd\xe7\xaf\x6f\x3e\xbc\xfc\xf1\xdd\x9b\xd7\xb6\xa2\xdf\xd5\x2a\xa7\xfb\x47\x24\xe9\xc9\xd4\xc8\x0f\x5c\x37\x7a\xf8\x30\x62\x8d\x45\x49\xda\xd8\xba\xac\xb1\x4f\x2f\x4f\xbe\xbc\xfd\xf2\xf6\xe3\x87\xfa\xf6\x3e\x65\x59\x7e\xcc\xed\xa5\xd9\x4c\xb2\x66\xc5\x1f\x07\x6b\x9c\x4d\x14\x15\xa7\x09\xfd\x0f\xcf\x34\x91\x45\xc0\xf5\x7c\x16\x21\xcf\x7d\x3f\x18\x49\x5c\x20\x74\xfa\x32\x0c\x3b\xa6\x73\x93\xde\x87\x91\x02\x4f\x90\x75\x38\x02\xf6\xe7\x55\xe4\x7d\x09\xe6\x74\x7e\x1e\x44\xbd\x20\xe1\x84\x52\x4d\x9d\x87\x1f\x3e\xc4\x0f\x72\x0d\xe7\xd6\x35\x02\xc4\xd1\xfa\xb4\x8c\xc2\x18\xfa\x82\xdc\x46\xce\xda\x59\xd3\x5e\x7e\x8c\x50\xde\x09\x39\x1b\x82\xa4\xcd\xc5\x51\x00\xc4\x3f\xa7\x83\x2c\xfb\xba\x6c\x02\xd6\x1e\xf4\x66\xc8\x57\x55\x39\xe2\xb6\x92\x70\x01\x28\x97\x1f\xa3\xc1\x9c\x72\xd5\x31\x72\x9f\x93\x1e\xbd\xd6\x57\x9d\xce\x90\x80\x68\x44\xaf\x9c\x21\x19\xb9\xae\x1b\xa5\xae\x3c\xf4\x38\xbf\x0c\xc3\x1f\x57\xd9\x2e\x67\x9e\xf9\x4a\xfa\x10\x6e\xcb\xe0\xe5\x72\x46\x11\xad\x8e\x6c\x53\x18\x62\xe4\x52\x98\xc8\x0e\xe2\x20\x1b\xe9\x23\x96\x18\x3f\x70\x19\xb8\x85\x20\x66\xff\x5e\xd2\x4e\x23\x59\xbf\xf8\x99\xd5\x4e\xaf\x3f\xae\x99\x57\x5d\x8e\x94\xe9\xe1\x5f\x98\x97\x0a\x60\x17\xf6\xe6\x88\xc0\xcc\x13\x29\x39\x0f\xe8\x5f\xd9\xbe\x0b\x01\xf7\x88\xa2\xe3\xc6\x09\x11\x2b\xc2\x89\x14\x3b\x5a\x94\xa7\x3d\x3e\x38\xb6\x07\xe2\xaf\x23\x7b\x80\xdd\x0b\xba\x03\x07\x1f\x96\xac\x9a\x4f\x1f\x3f\xbf\xfd\xf2\xf6\xb7\x37\x5f\xdf\x7e\xf8\xe9\xed\x87\xb7\x5f\x7e\xa7\x47\x25\xdc\x1b\x63\x04\x4f\xf7\x04\x31\x1c\x70\x3a\x18\xae\xd7\xea\x51\xc4\x62\xa7\x66\xa7\x0d\x03\x06\x4e\x91\x1d\x56\x87\x7f\x18\xc9\x9d\x01\x95\x95\xc8\xee\x38\x65\x25\x6c\xee\xbb\x16\xf8\xdc\x73\x4d\x18\x8f\x2e\xb2\x45\x1f\xa0\x9e\xef\x81\x94\x1a\x0d\x50\x2f\x4a\x40\x4a\x2c\x06\x28\xa3\x0b\x6b\x67\xd0\xd9\x70\x5d\xf3\xf7\x70\x0a\xe7\xa7\xac\x5a\xe5\x31\x03\xb8\xf7\xf2\xd5\xab\x37\x9f\x3f\x7f\x3d\x79\xf3\xf2\x35\x40\x69\xbc\x89\xf9\xd8\xca\x58\x94\xea\x83\x2b\x6d\x63\x6a\x88\x41\x90\xbc\x92\x32\x8f\xc3\x81\x58\x50\xea\x1b\xe8\x00\xc4\xa9\x0d\x64\xb9\x14\xe0\x19\xea\x64\x50\xff\x69\x00\x70\x01\x29\x95\xf2\x94\xcc\x09\x8f\xf7\x87\x99\x09\x19\x67\xc7\xc1\xa7\x6c\xc7\x01\x76\xcc\x36\x1a\x5d\x2b\xbe\x17\xc9\x6a\x81\x3e\x4e\x3a\xc4\xc9\x8c\x8a\x8d\x08\x12\x19\xca\xa7\x2a\x73\x34\x62\x96\x42\xad\x17\x12\x4e\x16\x69\x0b\xa1\x51\x47\x3a\xc9\x41\x24\xd9\x87\x8e\xf0\xdb\x53\x0b\x96\xd2\xb6\x35\x88\xdd\x79\x0e\xaa\x83\x33\x80\xdb\xe3\x8b\x2c\xf3\x35\xf3\x88\x96\xad\xc1\x45\xbc\x7c\xbd\x1a\x1b\xba\x63\x7c\x91\x3a\x47\x41\x85\x15\x57\x7d\xb9\x4a\x3c\x78\x8c\x12\xbd\xf2\x9e\xf9\x71\xea\xfe\x6f\xed\xb3\x2b\xe4\x44\xf7\xbd\xfb\x5c\x34\xdf\x81\x14\xac\xe0\x01\xc6\x54\xec\x64\x38\xce\xa9\x57\x8b\xbd\x3f\x48\x6f\x87\xfd\x41\x94\xec\x0f\x7c\x4f\xdd\x65\x09\x13\x45\xdb\x7d\xb3\x3f\x08\x7c\x2a\x73\x76\x3a\x49\xa9\x7d\x30\x27\x0b\x8a\x9b\x4e\xdd\xde\x05\xf1\x30\x15\xb1\x3e\x9d\xbc\x7d\xff\xf2\xe4\xf7\xaf\xbf\xbc\xf9\x5d\x17\x19\xd3\x12\x9f\xdf\xfd\xfa\x57\xf6\xba\x9c\x51\x4a\x4b\x0b\x2b\x9d\xa1\x48\x19\xbf\x24\x6e\x40\x43\x0d\xe2\x4d\x1e\x2d\x40\x25\x49\x86\x86\x38\x49\xad\xb3\x4d\x27\x75\xb5\x38\x40\x29\x42\xa7\xbf\xf0\x05\xef\x1e\xa7\xb4\xad\x9b\x13\x1f\xe7\x5a\x49\x54\x92\x18\x37\x27\x89\xe3\x20\xf2\x83\x68\xda\xc5\xcb\xbc\x1e\xba\x35\x4d\xd4\xab\xda\x8e\x28\xee\x08\x54\x3a\x69\x78\xd0\xd4\xae\x33\xff\xcd\xae\x76\x8c\xe8\x0f\x71\x1a\xe8\x29\x6c\x77\x96\xb4\x69\xb9\x8a\xc3\xf4\x72\x49\x66\xef\x59\xef\x4a\x0e\x53\xfe\x1c\x80\xc0\x0d\xf5\x9c\xf3\x86\xba\x58\x0e\x7a\x38\x02\x9e\xd9\xdb\x46\xd9\xa1\xa1\xf1\x40\x28\x35\x39\xc0\xd7\x1a\xbc\xcf\x4b\x7f\x2b\xf2\xd2\x87\xdb\xe4\xa4\x57\x48\x88\x17\xc7\xd8\x0f\x22\x48\x36\x26\x20\x25\x04\xa2\x68\x28\x21\xf1\x3c\x66\xb8\x6c\x46\x6c\xb2\x40\x78\xfc\xd7\xe5\x7c\xd9\x53\x03\x73\xef\xf9\xad\x6f\x9b\xdf\xe2\x1a\xa1\x65\xee\x16\x80\x3a\x94\x9a\xe7\x76\x18\x73\x15\xd5\xdc\x13\xd9\x56\x4f\x6c\x11\x23\xd7\xe2\x13\x76\xb1\x44\xb1\x8f\x04\x63\x16\x77\x3a\x79\x7b\x40\xdd\x65\xa2\x9c\xb5\xe6\xca\xa7\x0d\x35\x0d\xf5\x6a\xa0\x7c\x17\x3e\xc4\x7e\x2e\x51\xad\xa2\x55\x2a\xe9\xa8\x84\xf5\xc9\xce\x5d\x24\xb5\xe7\x7d\xe6\xc6\xb9\xa4\x7d\xf5\x41\xe4\x38\x00\x33\x9d\x93\x1b\xb1\x7f\x00\x6e\xc4\xd1\x35\x60\xb1\x82\x7a\x8e\x2e\x50\x79\xad\xb8\xe4\x8b\x0f\x2c\x92\x8b\x8a\xb7\x9b\xb5\xc8\xbe\xcf\xb5\xa5\x89\xba\x5e\x73\xa2\xec\x7b\x3b\x26\xc6\x55\x48\xfc\x86\xcc\xaf\xf7\x04\xf5\x5b\x25\xa8\xf4\xb8\x06\x6e\x07\x37\x21\x7e\x7e\x7a\x86\x58\x38\x6e\xbb\x4f\xf6\x07\x11\x9c\xd3\x03\x91\x74\x3a\x6d\x99\x6e\xdf\xcb\xd1\xc7\x66\xac\x71\x51\x03\x9c\x99\x14\x0c\x96\x03\xda\x8c\x23\x04\xce\x0e\x33\x43\xd9\x80\x07\x37\x3b\x7a\x3c\x83\x6e\xc8\xe3\x7a\xc9\x37\x2c\x6a\xd7\xfe\x04\xa7\xc8\x8a\x62\x62\x4d\xe2\x65\xe4\xdb\x99\x5d\x8f\x6b\xca\x5d\xa6\x22\x07\x17\x5c\x95\x3e\x60\x31\x7a\x59\xf0\x81\x89\xfe\xf1\x48\xdc\x4d\x98\x76\x2a\xdc\x68\x32\x65\xb1\x54\x2a\xb9\x36\x10\x94\xcb\x3e\xce\xb5\x12\xaa\x14\x2e\x68\x41\xe1\x82\xc4\x8b\xcf\x10\x5e\x75\xbd\x19\x0c\xa2\x6b\x24\x77\xf7\x1a\xbb\xef\x8e\xe0\xc5\xe5\xa9\x36\xf4\x4b\xb7\x29\x95\xd3\x37\xaf\x60\x08\xcb\xa9\x5c\x95\x1b\x3f\x2c\x71\xe3\xf7\xbd\xc4\x06\x30\x75\xe3\x4f\x6e\x95\x1b\x3f\x54\x9c\xc0\x4a\x48\x78\xee\x7c\xaf\x0d\x86\x39\x0d\xb5\xdf\xf7\x92\x94\x32\x17\xa9\xb2\xef\x39\x05\x73\x52\x74\x79\xa9\xd9\xc9\xdf\xa3\x64\xf6\x26\xa2\xc3\xf0\x6d\xe7\x45\xb5\x3a\x51\x64\xe3\x53\xa1\x26\x35\x27\x81\x0a\xdb\x27\xc0\x6e\xa7\xae\xac\x8f\x08\x0c\x42\xdb\x61\x30\x6c\x3d\x82\x83\x79\xc7\xd9\x13\x36\x56\x22\x8c\xa7\x8f\x0e\x0e\xec\x81\x32\x26\xcd\x13\x81\x2e\xa2\x9f\xfc\x3d\x20\xb3\x8e\xfd\x8a\x43\x4d\x5a\xf3\x65\x42\xac\x31\xb2\x10\x1f\xa3\x15\x44\x56\x8c\x7d\x84\x2d\x12\x5b\xcb\x04\x31\x3e\xdd\x42\x91\xbf\x88\x83\x88\xe8\x2e\x20\xb9\xd9\x01\x0f\xfa\x1c\xd5\x5d\x31\xc1\xa2\xf5\xda\x19\x88\x94\x1f\xcc\x45\x24\x64\x56\xbd\x35\x48\xdc\x40\xbf\x0c\xd8\xce\xdc\x1e\x2f\x22\xb8\xfe\xfb\xa9\x85\x66\x35\x8d\x32\xed\x66\xd6\xaf\xee\x8c\x90\x45\x77\x86\x60\x05\x82\xa3\xe9\xc2\xba\x06\x28\xb9\x3a\x8e\xaa\x76\x38\xa9\x15\xb9\xe0\xf7\xa0\x1a\x92\x7f\xc2\x70\xca\x70\x66\x9b\x9a\x92\x2d\xc5\x68\xdc\x06\xad\xae\x66\x25\xb6\x9a\xfd\xf4\xf6\x8f\xbe\xe9\x58\x46\xdc\x26\x96\x11\x37\x8d\x65\x8c\x64\xdc\x20\xae\x88\x65\x84\xdc\xaf\xee\x3a\x62\x19\xb1\xe3\x0c\x94\x3e\xed\x3c\x96\x11\x97\xc7\x32\xc2\x3b\x13\xcb\xa8\x11\x8d\x70\x2b\xa2\xb1\x0b\x42\x81\x3b\x58\xc4\xbc\x5d\xac\xc1\xc5\xcf\x5f\xbe\x7c\x1a\x94\x57\x50\x4e\xba\x28\x5f\x40\x3f\xbe\xbc\xbc\x60\x1e\xfe\xcd\xa9\x4f\x5d\x3e\x44\x13\xf5\xd9\xd2\xbc\x66\xc6\xf8\xd9\xc8\xe1\xc0\x98\xf6\xfc\x9b\x25\x63\xfe\x0d\xe1\x2d\xde\x87\x34\x7c\x17\xa2\x61\x45\x0c\x01\x8f\x11\x68\xe4\xb6\x91\x9e\xee\xd4\xb0\xd0\xf8\x0b\xe9\xe6\xd1\xae\x19\x66\x8c\x10\x3d\x95\xf6\x88\x9d\x8a\x9f\xcc\x97\x2c\x13\x3f\x97\xb7\x55\xfc\x4c\x63\x25\xe6\x30\x82\x53\xe4\xff\xb8\x7a\x75\xf2\x3a\x61\x12\x4e\x89\x64\x9a\x51\xe2\x66\xe6\xfc\x82\x7b\xa5\xc8\xe0\x87\x7a\xa9\xaf\xa8\x88\x51\x17\x25\x55\x22\xb0\x73\x2c\x09\xaf\x09\x96\x84\x7f\xbd\x58\x12\xde\xb5\x62\x49\x74\x2e\x5e\x72\x80\x46\x1b\x86\x61\x7c\x6e\xaf\x99\x13\x6c\x90\xbc\x57\x37\x40\xce\x0b\x5d\xdb\x1c\x97\x97\x9d\xe2\x43\x93\x82\xd8\xe8\x5a\x4e\x62\x8e\x12\xef\xf4\x92\x78\x8e\x78\x1c\xc8\x5b\xad\x71\x19\x0b\xa3\xd5\x5f\x1d\x87\xc3\x4e\xe8\x10\x60\x00\xe0\xc8\x8d\x7a\x81\xaf\x24\x06\x97\xc9\x36\xb5\xe8\x17\x16\x5b\xb8\xfa\x29\xc6\xc6\x4e\xee\x19\xe2\x68\xc2\xde\x14\x45\x08\x53\xd6\x2a\xc6\x9f\x11\x67\xae\xb0\x43\xcf\xa4\x07\x79\xf6\xcb\xc2\x6b\xe8\x14\xdd\x96\x4b\xc3\x6b\x14\xee\x4b\xaa\x54\xb8\xfd\x90\x1f\x0e\xf9\x5a\x53\xc3\x14\xc3\x58\x08\xb0\xf9\xf2\x8a\x23\xa2\xeb\x31\x08\xb0\x3f\x69\xce\xa8\x23\x07\x90\x5d\x99\x0a\x98\xdb\x32\xe5\x98\x52\x57\xf1\x9c\x8a\xaa\x36\xc2\xe5\x85\xfd\xdf\xf6\x20\x0b\x53\xc5\x6e\xfa\xf7\x1e\x51\x8d\xa9\xd2\xf9\x9c\xe7\x74\xff\xf0\x99\xf9\x9a\x53\x42\x72\x79\x19\x81\xd7\x28\x21\x41\xc4\xa0\x72\x73\x6f\x78\x71\xa3\x4b\xfa\xe5\x25\x56\x3f\x2c\x2f\x93\x73\x77\x2f\xf1\x6f\x5f\xa3\x30\x41\x16\x71\xab\x95\x68\x69\x54\x86\x3e\x9d\xe2\xfe\xcc\x6b\xf9\x2e\x7c\x8f\xb7\x19\x65\xfe\xf5\x8c\x78\x72\xa6\x72\xf0\x7f\x62\x36\xe0\x1c\x59\xae\x6b\xd9\x7f\xba\xa0\x4b\xb0\xb6\xad\x18\x5b\xea\x9c\x98\xde\xe7\x3e\xfd\xef\xd2\x8f\xfe\xdb\xfe\xbf\xf5\x5e\x85\x61\x3d\xca\x1b\xd6\xa3\xd6\x86\xf5\xc8\x59\xaf\x99\x6f\x76\x5c\xf4\xcd\xde\xda\xe7\x3b\x57\x6b\x66\x34\x6a\x60\x28\x37\x7e\xe9\x80\x58\x55\x97\x19\xea\x4f\x95\x72\x0d\x2c\xe3\x65\x1f\x37\x6a\x25\x4d\x3c\x1f\x6c\xd6\x90\xf8\x3e\xd7\x56\xbc\xa1\xb7\xf9\x69\x69\x76\x88\x3a\x89\x8f\xfb\x33\x05\xc9\x4f\x71\x01\x42\x52\x08\x83\x39\x0c\xc9\xe6\x52\xe0\xbd\x23\xd4\xf7\x2c\xab\x2c\x85\x9f\x13\xac\x11\x13\x4e\xcf\x84\x48\x90\x34\x2b\x9d\x6c\xee\xd1\x74\x7a\x56\xca\x45\x63\x8d\x8b\x36\xc6\x99\x6a\x17\x75\xbe\x84\x76\xd5\x3c\x7c\x88\x7a\xbf\xa0\x55\x2f\x21\x10\x13\x6e\x17\x21\xf4\x82\x2e\x8f\xfa\x62\x7e\x49\xf4\x36\xd7\xed\x79\xec\x5a\xcf\x38\x94\xbf\x7d\xfe\xf8\xa1\xc7\xb3\xaa\x05\x93\x55\x67\xa8\xdc\x82\x80\x05\x80\xb1\x1b\x8b\x7e\x34\x72\xf6\x70\x9b\xf8\x23\x07\xe0\xcb\xcb\x0e\x36\x5d\xfb\xbf\xa0\xd5\x80\x79\x45\x6d\x16\x7c\x26\x6e\x67\xec\x66\x21\x6d\x86\x46\x36\x0c\x6c\x53\x59\xb6\xba\x7b\x1f\xe7\x3d\xc8\xb4\x05\x40\xbd\x04\x2d\x20\xa3\x6b\x2e\x4b\xfe\xb3\x2f\xbb\xcb\x1d\xd8\x7c\xd7\xb6\xb9\xfb\x98\xc9\xd1\x2c\xd7\xa2\x0c\x8c\xe5\xce\x63\x29\x7f\xeb\x46\x52\x25\x45\x28\x1f\x1e\xf8\x0f\x5c\x57\xe3\x25\x7f\x41\x2b\x9b\x29\x9a\x98\xeb\x19\x06\x91\xc1\xeb\xa2\x8d\x3f\x7f\xc1\xf5\x2b\xbd\xe0\x1a\xf9\x98\x35\xbf\x49\x2b\xbe\xaf\xf2\x31\xab\x03\x8f\x52\x2e\xb8\x39\x22\x38\xf0\x92\x6b\xf5\xbc\x00\xaa\xbb\x72\x11\x0c\xf8\x2e\x40\x9d\x4c\xee\xef\xda\xef\xe1\xae\x1d\x97\xbb\x8c\x2c\x83\x2e\x5f\x07\xe6\x2e\x52\xad\x3b\x34\xbf\xf5\xc2\x00\x45\x84\x01\x07\x35\x75\x44\x16\xa7\x75\x3f\x59\xce\xe9\x4d\xdb\xd5\xf4\x7f\x49\xb8\x9c\xee\x0f\x18\x4d\xf0\xe2\x50\x6a\x13\x9b\x56\xb9\x5c\x24\x04\x23\x38\xef\x36\xab\x3b\x6e\x53\xb7\x1f\x9f\x47\xad\x6a\xcf\x63\x2d\x37\xd2\x62\x6a\x3a\xcc\x85\x4c\x0a\xcd\xd7\x28\x45\x5a\x5e\xa8\x48\x2b\x7e\xee\x21\x5f\x11\x1b\xcc\x53\xf8\x65\x96\x73\xb9\x13\xb9\x22\x31\xc8\xd5\x03\x30\x9b\x19\x2c\x49\xa5\xd7\xf4\x2c\xa4\xc9\xa2\xd9\x0f\xd3\x0d\x29\x52\x33\xf3\x06\xe9\xed\xf2\x79\x15\x79\x94\x1d\x71\x51\x4f\x54\xf5\x75\x81\xe3\xb3\xc0\x47\xf8\x6b\xcc\xc1\x4a\x2f\x2f\x2f\xd6\x7b\x44\x7d\xfd\xc7\xea\xab\x70\x32\xd1\x3f\xcb\x9e\xef\x65\xd9\x86\xf3\xd5\x5e\x5e\xda\x0b\x1c\xcf\x11\x99\xa1\x65\x62\xef\x91\xde\x04\x11\x6f\x26\x51\x82\x78\xf7\xd8\x6c\xf3\x17\x94\x97\xfb\x12\x9f\xa2\xa8\x63\xef\x9f\xf5\x99\x8a\x1b\x47\x30\xdc\xa7\xd2\x12\xaf\xb9\xcb\x5a\xb6\xff\xc2\xdc\xcd\x09\x5e\xf1\xf0\x6b\xd9\x9c\x7b\x1e\x44\x7e\x7c\xde\xe3\x37\x13\x63\xc3\xf8\x67\x9f\x44\x01\x9e\x18\x90\xfb\xfb\x60\x35\xe7\x0a\xf7\xe6\xe4\x7e\x9c\xa2\x29\x4b\xd6\xca\x7c\x3a\x33\xf2\xe3\x0f\x2c\xfb\x2f\xd8\xa1\x0b\x99\xc4\xa1\x40\x6d\xe9\x64\x55\x39\x6b\xe6\xdf\x24\x44\xd0\xcf\x7c\xa7\xa7\x9c\x50\x0a\x5a\xc2\x8a\x0a\xe2\x9a\xb9\xda\x30\xd5\xa9\x52\x20\x9d\xdb\xa1\x36\x50\x49\x3e\x4e\x10\x65\xeb\x44\x1b\x9f\x11\x47\xc8\xe8\xd1\x83\x24\x99\x55\xc6\xb6\xca\x33\x05\x2e\xd6\x42\x71\x51\x5d\x11\x81\xa4\xb6\x9e\xd1\x5e\xae\xf3\x94\x9e\x47\x59\x00\x7d\xe7\x82\xb2\x59\x83\x0b\xb6\x88\x67\x30\x1c\x18\xd5\x66\xef\xdf\x7c\x39\x79\xfb\xea\xf3\xd7\x4f\x1f\xdf\xbd\xfb\xfa\xf6\xc3\x97\x37\x27\xbf\xbd\x7c\x67\x3b\x97\x97\x7d\x74\xbc\x06\x09\x1b\xd1\x00\x0d\x0f\x46\x20\xa1\x9d\x1a\xa0\x61\x7f\xc4\xbc\xaf\x12\xca\xfb\xd2\x79\xfe\x55\x50\xac\xfc\x44\xab\x2a\x5f\x36\x97\x2f\xca\x67\x79\xa0\xcf\x89\x24\x82\x4d\x26\xe5\x62\xad\x0c\x19\x71\xd6\x72\xab\x31\x23\x31\xae\xd7\x29\xb5\xdc\xe1\xc8\x32\x12\x7c\x63\x63\x5b\x03\xcf\x9d\xe8\x68\xe8\x92\x3a\x6f\xef\x47\xe6\xe7\xab\xde\x95\xaa\xad\xd0\x65\x71\x47\x6c\x8f\xb0\x90\xab\xb8\x48\x3a\x9a\xc9\x08\x75\x95\x38\x60\xa9\x0a\x0a\x86\x56\x73\x07\xa9\x99\xee\xad\xb6\x96\xfa\x76\x0b\x1b\x9d\xc3\xe2\xb7\x6e\xb9\x58\x4f\xae\x6d\x0d\x2a\x7f\xdc\x5c\x38\xe2\x69\x9d\xee\x7d\xd2\xef\x05\x8c\x2b\xf5\x49\x6f\xc0\x49\xd3\x9d\xd8\x38\xfc\x46\x09\x4f\x6c\x14\x11\x19\x72\xe7\xcf\x8d\x50\x26\xd8\x11\xb9\x15\xd0\x10\xf4\xc5\x3b\x36\x92\x8a\xd8\x49\x8c\x26\x18\x25\x33\xa6\x7b\xaa\x30\xe9\x88\x7a\x4a\xfc\x5b\x9b\x84\x2c\x36\x08\xdf\xd9\x25\x08\xc5\x26\x98\x17\x66\x10\x0a\x43\x2b\xef\xa4\xaf\xf3\x26\x50\x17\xef\xe4\xe6\xda\x09\xd4\x05\x37\x16\x6e\xe9\x85\x27\x2b\xd9\x24\x7a\x5d\xcb\x0b\x56\x67\x9b\xc9\xd4\x5c\x1c\xdf\x1d\xcc\xc0\x19\x58\x81\x69\x46\xe6\x3f\xde\x25\xa5\xd7\xd7\xfb\x3b\xe9\x7b\xb8\x93\x3e\xb9\x9d\x32\x95\x15\x8e\x97\x82\x30\x95\xe9\xb4\xe2\x88\xc0\x20\xe2\xb7\x49\xa5\x56\xac\x2c\xf5\x16\x4b\xcd\xe7\x80\x65\x19\xa4\x2f\x22\x24\x88\xa6\xf4\x2e\xf4\x5a\xe2\xf6\xfa\x4d\x9c\xeb\x22\x69\x20\xa1\x2d\xcc\x5b\x7d\x21\xae\xdc\x45\x0b\xdd\x95\xaa\xb1\xfa\x98\x66\x06\x63\x73\x0c\x26\x42\x09\xf5\x31\xd3\x64\x89\xa9\x05\xe3\xdc\x2b\x26\xeb\xcc\x72\x0f\x79\x8e\xc3\xb3\xdc\xd3\x74\xfe\xc0\x2a\xf7\x46\xc3\x77\x9b\x66\x30\xc3\x5b\x43\xdd\x94\x30\x0e\x9c\x08\x97\xb9\xed\x14\x9c\x9d\x3c\x18\x75\xec\x65\x82\xac\x48\x2e\xcf\x8b\x0a\xd7\x1e\x11\xd9\xd5\x71\xdc\xe7\xc3\x91\x33\x18\x8e\x2a\x7c\x7d\xd2\x74\x33\xad\x2c\x69\x46\xd3\x19\x78\xf9\xea\x5d\x32\xb8\xf8\xc4\x92\x7c\xbd\xe6\xcb\x9e\x0c\x86\x23\x70\x12\x87\x48\xf9\xbd\x6e\x68\x63\x03\xaa\xe5\x56\x41\x62\x24\x2a\xd0\xa2\x02\xd7\x98\xe1\x71\x3b\x7c\x55\x91\xb3\xce\x30\x92\x35\xb0\x1b\x93\x0c\xff\xf2\xd5\x3b\xd5\x8f\x49\xe1\x8a\xb2\x4a\x4c\x3c\x11\x73\xea\x01\x51\x32\x20\xeb\x74\xe6\x0b\x50\xfc\x43\x4a\xf5\x0b\xb1\x65\xc3\x0b\x89\x4a\x3c\xb0\x29\xbd\xa2\x77\xb0\x0d\x38\xa4\xf2\xc0\xa6\x64\x1c\xd9\x80\x01\x29\x53\x8a\x35\x92\xfc\xe1\x14\x91\x97\x1e\x09\xe8\x04\xb8\xb6\x9d\x29\xd7\xaa\x77\x8c\xd0\xba\x5d\xd0\x6e\x67\x1e\x5a\xeb\xbd\xaa\xf0\x70\xb1\x4f\x15\x97\xbf\xbd\x60\xd2\xe1\x40\x96\xdc\x39\xcd\xb9\x40\x6e\x47\x85\x5e\x15\x47\x4c\x5d\x55\x9b\xe7\x06\x75\x9c\xcc\x5d\xf4\xf2\x32\xeb\x81\x58\x94\xbe\x4b\x79\x54\x5e\xeb\x0b\x32\x3c\x18\x0d\xf4\x98\x25\x6e\x26\x45\x1c\x7b\xda\x94\xe2\x8e\x7b\xa3\xb2\x5a\xe8\x1f\x6b\xc7\x10\x2f\xf9\xf0\x61\xa7\xaa\x8e\xb4\x53\x6c\x84\xa2\x16\x90\xff\x7c\x78\x30\x72\x1c\x10\xad\x3b\x04\xf0\xd9\x44\x6b\x67\xbd\x06\x13\xf7\x6b\x67\xa1\xe7\xd1\x5b\xa6\x10\x1e\xdb\x69\x4b\xc6\xf9\xaa\x15\x7a\xb8\x3d\x1a\xe5\x2c\x5f\x3b\x57\x1f\x6d\x9d\xff\xef\x2c\x5f\xaf\xc8\x3c\xbb\x75\xf6\xbf\x55\xbe\xe2\x8c\xb0\x0f\x97\xdb\x56\x3e\xcd\x57\xae\x63\x7f\x7a\xdb\xd6\x9f\x9f\x93\xd4\x7f\xcd\xaf\x17\x30\x8c\x5f\x3a\x60\xa1\x4a\x17\x86\xfa\x53\x49\x69\xbe\x41\x13\xa9\xa4\xa4\xb5\xb2\x50\x65\x98\x4f\xcd\x65\x98\x38\xf0\xbd\xae\x54\xcc\xde\x88\xe1\xfd\x3e\xbf\xc8\xbd\xfc\x71\x7b\xe5\x8f\x45\xb9\xd1\x9d\xe5\x1a\xaa\x30\xb8\x2b\xd2\x41\x23\xcd\x17\x3d\x8a\xfb\xf2\x28\x36\x86\x03\xd3\xbe\x52\x23\x77\x1a\x7d\x98\xb2\x52\xf4\xcb\xfd\x81\xc7\x94\x75\x09\x81\x04\xb5\x0c\xdf\x31\xe5\x15\xe1\xd1\x06\xb8\x98\x44\x24\xbb\x1e\x64\x06\x91\x1a\x53\xb2\x6e\x2d\xcc\xfc\xa9\x3e\x9e\x47\x42\x33\xe6\xf4\xc2\x38\x3e\x5d\x2e\xc4\xb2\xa4\x24\x6d\xc0\x08\xdc\x79\x40\x66\xdd\x25\x0e\xed\xb2\x08\x1c\x9d\x0c\x56\xaa\x10\xa5\x55\x3b\xcf\x32\x57\x6a\x12\x8b\x6c\x9a\x86\xdf\xc3\x2d\xbe\x1f\x14\xd0\x9e\x94\x87\xe2\x18\x0f\xaf\x62\x1f\xb9\xc7\x07\xc7\xfc\x54\xa8\xbc\x70\x96\xda\xc6\x18\x1b\xc2\xcd\xc2\x48\x09\x56\xa9\x82\x24\x6a\xc8\x38\x32\xf3\x7c\x99\x22\xf4\x22\x4a\x98\x3f\xdf\xe5\x25\x31\xf2\x97\x60\x61\x8e\x04\x20\xbd\x4f\xd9\x8f\xac\xb4\x74\xd1\x0f\x7c\xe6\xa0\xb8\xce\xc9\x10\x25\x21\xbf\xd5\x22\x02\x72\xd6\x61\x3c\x8d\x97\x44\xcd\x63\xaf\x44\x06\x24\xee\x05\x6d\x6e\x6d\xc8\xf1\x20\xbe\x33\xd5\x9a\x38\x6b\x2f\x8c\x93\x14\x8d\x5d\x6c\xff\x1e\x7f\x68\xe7\x37\x22\x9d\x32\xba\xac\x3f\xae\x7e\x3d\x79\xa7\xb0\xcd\x4a\x68\x89\xba\xe9\x81\x3d\x86\x09\xfa\x15\x87\x36\xcb\xcc\xa9\x36\x10\x2f\x50\x94\xaf\x9f\x59\x4d\x33\x44\x11\x2e\x5c\x0a\xb8\x8f\x07\x07\x1c\xef\xc3\x42\xbd\x39\xcf\x5e\xaa\x3a\xb1\xda\x54\x98\x23\xc8\x3a\x87\x89\xc5\xba\xee\xdb\xce\x80\xa8\xfb\xf4\xa4\x58\x00\x10\x6d\xa3\x3e\x7b\x96\xcf\xa9\xa0\x7c\x9f\xb6\x9a\xfb\xea\xd1\xc1\xc1\xba\xf5\xce\x26\xce\xda\x18\xdc\x90\xd2\x9e\xed\xad\xb9\x5e\xbe\x6e\x85\xbb\xbd\xa2\xe8\x89\xf6\x90\x83\xb5\xb5\xdc\x86\xa8\x8a\xf4\x54\x6e\x10\x51\x91\x7d\xbb\xa3\x68\x8a\x94\xf4\x6c\xa9\xc0\x57\xea\xb9\x56\x1d\xfe\x5e\xd1\xff\xf3\x2e\xf0\xcd\xe3\x7b\xbe\xf9\x7b\xe0\x9b\x67\xe5\x7a\x7b\x85\x2f\x2e\xd3\xdc\x0b\xbd\x7b\x99\xd2\xbe\x4c\xa9\x1e\x37\x51\x91\xa7\x4f\x12\xa6\xd9\x6f\xf3\x85\x60\xaf\xbd\x0d\xf9\xe2\x49\x81\xfd\x95\x3e\x9f\x13\x4d\x4d\x3e\xcf\x3d\xd5\x14\x1e\x0b\x73\xce\x3d\xc1\xc7\x66\xc4\x68\xf7\xc0\xf0\x4d\xf4\xe1\xea\xe4\xde\x16\x95\xb8\x6d\x5f\xa7\x82\xdb\xa8\x11\xae\xd2\xe9\x66\x4b\xb6\x33\xb5\xae\x89\x91\xfe\x66\xd4\xba\xbe\x3b\xee\x78\x25\xec\xd8\xd6\x8a\xdd\x79\xbe\x72\xa1\x22\xdd\x5a\xa7\xbb\xc8\x57\xac\x6b\x31\xb7\xd6\xed\xe6\xbb\x9d\x6a\x31\x1b\xf8\xb0\x19\xbf\x74\x80\xa7\x72\x59\x86\xfa\x53\x7e\x71\xb9\x41\x13\x29\xbf\xa8\xb5\xe2\xa9\xbc\xdc\x6c\xcd\x11\x01\x9b\xf0\x72\x1b\xc1\xb0\x5d\x95\x0a\xf3\x9b\x05\x3e\x9a\x5f\x09\x7e\x88\xdf\x04\x3f\x64\x72\xbd\xf8\x21\xfe\xb5\xe2\x87\xdc\xe9\xb0\xb3\x6b\x87\xc1\xba\x97\x20\xbe\x79\x09\x82\xf3\x4b\x33\xb7\x89\x41\x7e\x0d\x2a\x0b\x61\x04\x7d\xbd\x4c\x22\x51\x1d\xca\x8b\x70\x5f\xeb\xaa\x2a\xc4\x65\xd3\xa2\x88\xa1\xb7\xa7\x68\x55\x55\x85\xf6\xda\xf0\xb9\x02\xe0\x57\x5e\x89\xa1\x90\xa1\x2a\xe8\x85\x55\x95\x68\xaf\xc5\xe7\x23\x26\xe7\x9d\x95\xdb\x47\xb8\x6b\x55\x99\x75\xc4\x83\x91\x12\x8e\xf8\x95\x60\xe8\x9d\x22\xbf\xd6\xe6\xc1\x7d\x9b\xa8\x50\xa6\xf0\x4f\xc5\x34\xe8\x4d\x45\x32\x2d\x02\x2f\xce\x45\xe0\x7d\xa5\x7d\x4c\x8d\x17\x8b\x16\x19\xd0\xa5\x34\xa6\x60\x54\xce\x60\x62\xc8\x27\x2c\x79\x83\x32\xc1\x8a\x01\x3a\x45\x59\xce\x60\xe2\x3e\x8f\x78\xb6\x60\x4a\x17\x9d\x87\x0f\x1f\x30\x86\x59\x64\xf7\x5e\x53\x39\x2c\x97\x74\x95\x0e\xa2\xc7\x9f\xaf\x15\x8c\x26\x53\x29\xed\xf5\x5a\x82\x2f\x69\x80\x50\x16\x76\xb3\x6d\x81\xe4\x96\x20\x45\x00\x1b\xca\xc3\xe3\x9e\x40\x6d\x72\x23\x07\xe0\x3c\xdc\x14\xed\x42\x59\xee\x6c\xdd\xf7\x47\x0a\x25\xc3\x11\x8b\xb5\x8b\x8a\xa9\x85\xb3\x4a\xd5\x39\xa7\xf2\x18\x97\x33\x89\x73\x91\xb1\x33\xa9\x1c\x93\xe5\x4f\x9f\xc3\x45\x07\xb9\xcf\xe7\x9d\xb9\x82\x02\x9a\x3a\xfa\x38\x66\x4c\x07\xd1\x2d\xd1\x27\xe3\x34\xa6\x51\x7e\x50\x71\x3c\xca\x80\x03\x0c\xf8\x56\x54\xbc\xed\x91\xf8\x33\xc3\x7f\x50\x70\xb3\xe8\x32\x63\x29\xb6\x0d\x47\x83\x8e\xd2\x7d\x17\xe7\x20\xb1\x58\x7a\x58\xb5\xcb\x1a\x42\x96\xbe\xf2\xea\x47\xf9\xd4\xd1\x8a\xcc\x97\x35\x36\x03\xf9\x5d\x9a\xc7\x4a\xc8\xb7\x57\xf8\x20\xbd\x96\x91\xfb\xfc\x62\xc8\xe9\x9c\xa0\xb9\x19\x75\x56\x29\x57\x4a\x4d\x47\xbd\x20\xf2\xc2\xa5\xcf\x02\x0c\xe5\x46\xe4\x99\x80\xd9\x72\xd1\x8b\x76\x5d\x6c\x90\x25\xbd\x1d\x9b\x52\xd3\x6e\x6d\x1d\x58\xe6\xeb\xe5\x54\x63\x7b\xcb\x80\x97\xaf\x58\x97\x18\x37\x17\x75\x4d\xce\x70\x4c\x82\x34\x01\x3c\x6c\x0e\x0d\x51\x09\x0a\x71\xd6\x42\x4f\xcf\xfc\x17\xb7\x55\xd2\x8b\x4a\x76\x01\x74\x9b\x49\x7b\xcb\x7b\x4e\xf4\x5b\xe7\x44\x45\x32\xb7\x32\x2e\x46\x28\xaa\x1b\x21\xb2\xb2\x3d\x18\xa0\xc6\x78\xac\x7c\xcf\xa6\x2e\x1d\xbb\x84\x52\xe5\x5a\xad\x0c\x4b\x35\xbe\xad\x58\xaa\x65\x8c\x15\x3f\xce\xb7\x3e\x93\xf0\x95\xb8\x75\xeb\xb0\x49\x4d\x75\xdb\xfc\x76\x8e\xf1\x9c\xfd\xc7\x6c\x52\x4f\x10\xa1\x5d\xe8\x10\x87\xbe\x62\x7f\x6a\x10\xe6\xc2\x7f\x40\x4b\x35\x42\xd0\x7c\x11\x32\x7f\x21\x91\x44\x24\xcd\x20\xa2\xa4\xe1\xcf\xc1\x0b\x70\x6f\x6b\xe4\xac\x09\x86\x51\x12\xea\x58\xb6\x0a\x5b\x97\xbd\x96\x2b\x0e\xb4\xb6\x4f\x96\x21\xf3\xa4\x66\xd7\xfb\x32\x77\x0b\x71\xc5\xed\xf6\x29\xed\xeb\xb3\xf9\x5d\x49\x4e\x40\x43\xbb\x5b\x81\x35\x35\x40\x6a\x6a\x91\x0d\x90\xe3\x5f\x6c\x79\x27\xf3\x3a\xee\x93\xdd\xdf\x5f\xc7\x57\x92\xec\x9e\xee\xaf\x00\x99\x70\xc9\x9b\x5d\xd7\x74\x7b\x76\x83\x88\xe7\x00\xde\x1f\x88\x2a\xde\xfa\xfb\x03\x25\xa6\x79\x83\x28\x65\xbe\xef\x9b\xdd\x5d\x66\x1c\xbb\xab\x4e\xc3\xaa\xc2\x6d\xa8\xa2\x9a\x06\x51\xb8\x80\x74\x9f\xa2\xde\x32\xf0\x9d\x3d\xd2\x5b\xc4\x8b\x8e\x03\x08\xb3\x22\x74\x50\x4f\xe0\x3e\x7c\xa2\x63\xed\x29\xb0\xb7\xe2\xf9\xdb\xd7\x19\xa6\x8c\x19\xc1\x50\x0a\x82\xe9\x0a\xd8\x20\x87\x8c\x48\x1c\x67\x2f\xca\xa5\x94\x62\xed\xbd\x4d\xbf\x40\x54\x18\xd4\x85\x61\xf9\x52\x95\xe3\xab\x92\xcb\xa6\xa5\xb2\xb4\xb2\xc1\xa4\xa3\x65\xf9\x92\xb0\xd0\xcf\x0f\xc4\x75\x9f\x62\x00\xfe\xb8\xea\xd8\xb5\x33\x61\x03\xd4\x4b\x37\x97\x92\x67\x2c\xf6\x51\x9a\x01\x32\xf6\x91\xb3\x47\x5e\x60\x97\x0c\x3a\xbc\x7a\x5e\xa8\xa6\x72\xf9\x7d\xe0\x3b\x80\xdb\x8d\x48\x66\x77\xc8\x26\x0e\x03\x7b\x8e\x08\x54\x6f\xd7\x48\x3c\x72\x9c\xf2\xb4\xb8\x5b\x84\x7b\xab\xd0\x81\x75\x11\xdf\xfa\x8a\x6d\x18\xf9\x9d\xab\x64\x47\x11\xe0\x38\x0e\xb7\x8d\xff\xe6\x55\xdc\xcb\xa5\xf7\x17\xe1\x4d\xc9\xa5\x74\x07\x36\x16\x4a\x69\xe1\x7b\x91\xd4\x70\xab\xb3\x73\x7c\x95\x4e\x57\x9b\xe5\x0e\xb8\xc3\x82\xe7\xb5\x0b\x75\x9b\x0b\x72\x77\x4b\x78\x2b\x72\x56\x9b\xdd\x60\xdc\xd0\x41\x59\xec\x31\x15\xfc\xef\x25\xb9\xfb\x0b\xec\x6a\x24\xb9\xfc\x86\xdd\x58\xa6\xcb\x57\xb4\x43\xa9\xae\x70\xa8\x76\x81\x2f\x2f\xd8\x78\xf9\x2f\x73\xba\x0c\xfc\xca\xdc\x26\xdb\xc9\x86\xf9\x64\x40\xbc\x25\x92\xca\x7e\x9a\x8c\xc4\x45\x48\x94\x4b\x99\x23\x24\x31\x35\xf7\xb0\x1c\x86\x34\xd8\x25\x36\x20\x0e\x88\xd6\x20\xea\xbd\x7c\xf5\xea\xcd\xe7\xcf\x5f\x4f\xde\xbc\x7c\x0d\x50\x05\x76\x7e\x33\xd8\x2d\x23\x92\x7a\x9a\xc4\x63\x43\x5c\xaa\x34\x89\x47\x63\x00\xac\x4d\x04\x94\xdd\x0a\x26\xa9\x15\xf5\xda\xbc\x21\x33\xe2\x9d\xdc\x13\xef\xef\x81\x78\x07\x0d\xd1\x02\xe5\x5e\x6b\x0a\x18\x38\x85\x04\x9d\xc3\x55\x8e\xc6\x8b\xa7\xf4\x7c\x74\x3a\xe5\x69\xed\x2b\x69\x73\x7b\x68\x40\x03\xaa\xdf\x5f\x79\x47\xae\x59\x23\xb7\x2b\x98\xbf\x42\x8a\xf2\xa2\x15\x42\xcb\x55\x9e\x14\xbf\xd0\x26\x60\xc3\xc4\xe8\x7a\x1d\x55\xf9\xd1\x83\x36\x34\xef\x26\x3c\xc0\xef\x53\x1e\x7d\x67\x74\x6f\x59\xee\xf1\xc8\xce\x71\x53\x3a\x27\xb6\x2b\xa7\x73\x6d\x51\x52\xb5\x8f\x4f\xd1\x2a\xcd\xae\xb4\x4b\x95\x0c\x1f\x8e\xa2\x93\x09\xee\x98\x4e\x46\x52\x84\x35\x67\xb0\x3e\xc4\xfe\xae\xf8\xe4\x06\x14\x9b\xb7\xf9\x0b\x32\x23\xa6\x97\xb3\xb0\x20\x70\x63\x9d\x3d\x14\xeb\xb0\xbd\xaf\x5a\x6c\x62\x3b\x3f\x70\x5c\xe9\xcd\x98\x63\xf6\x71\x8e\x67\x35\xb6\xf2\x0b\x5a\x6d\xcc\x18\xb3\x8c\x49\x15\x7c\x71\x8b\x0c\x43\x3c\x44\x6e\x3b\x8d\xbd\xa8\x63\x37\x39\xd3\x81\x07\xfc\xbd\x7b\x50\xa1\xef\xeb\x0a\xa9\xc8\xf0\xdd\x46\x71\xcf\x36\x62\x63\xcd\x3d\x2b\xdd\x26\xb5\x37\xff\x20\x41\xe1\x64\x7f\x90\x20\x0f\x23\xd2\x34\xc4\x9a\x77\x8c\xdd\x4d\xd2\x89\x4d\xf8\xef\x34\x8c\xb8\x56\x2a\xe0\x06\x07\xa6\x5d\x6f\x17\x79\xdd\xde\xe4\xe0\xdf\xb1\xeb\x8d\x13\xa2\x7b\x9b\xc3\x0e\x6d\x0e\x74\xb7\x9b\x7d\xd1\xd8\x1b\x23\xde\x28\x3f\x1b\x03\x5a\x84\xfe\x21\x11\x8b\x54\xfc\x9d\x5c\x66\x14\xe4\x30\xa8\xa0\xa8\xc4\xed\x8d\xbf\x32\xb5\xa5\x7a\xbf\x69\xeb\xeb\x48\x7e\x83\xa3\xbd\xe6\xeb\x2d\x17\x67\x7f\x5c\x9d\xc4\x21\xea\x34\x29\xbe\x06\xbe\x3b\x37\x46\x47\xef\x00\x05\xa7\x24\x7a\xb9\x01\xc3\xd0\x24\x7a\xd9\x50\x7f\x1b\x7b\x4c\xc3\xe8\xe5\x79\x3e\x2e\x3d\x9c\x34\x03\xba\x29\x7e\xd6\xa4\xff\x9f\xa4\x63\xfc\x26\x21\xde\xe9\xe7\x4d\x5a\x3a\xe1\x6e\x0e\x9b\xc5\x79\x9f\x08\xd2\x5d\x1a\xe7\xdd\x02\xb3\x87\xc4\x8b\x38\x8c\xa7\x1b\x7b\x1e\xde\xe7\x41\xb9\x67\xcf\x1a\xe6\x41\xa9\x45\x9e\xf1\xbd\xa6\x92\xbe\xdc\xb5\x1c\x63\xf1\x34\x88\xb8\x98\xbf\x4b\x56\xc6\xf7\x12\x95\x93\x49\xee\x1c\x27\x23\xce\xf5\xda\x60\xfa\xd1\xfc\x04\x7d\x2f\x61\x5e\x82\x1f\xe9\xe5\xd9\xf3\xbd\xd4\xf8\x44\xb7\x80\xeb\xba\xd1\xe5\xa5\xe6\xc4\xf6\x1e\x25\xb3\x37\x3c\x41\xa0\xed\xbc\xe8\x6c\x2f\xee\x57\x24\x58\x46\x2a\xe2\x9e\xf4\x95\xd4\x1c\xd6\x19\x66\x1d\xbd\x5f\x33\xdb\x18\x07\xc0\xb3\x1d\x80\xdd\x4e\x5d\x59\x1f\x11\x18\x84\xb6\x73\x79\x69\xdb\x4e\x8f\xe0\x60\xde\x71\x24\xa8\x1f\x11\xee\xf7\x8f\x0e\x0e\x52\x0f\x7c\x3a\xda\x0e\x47\x61\x70\xa3\x87\x0f\xe9\x5a\xfb\x02\xe4\xef\x55\x1c\x45\xc8\x23\xd6\x7c\x99\x10\x6b\x8c\x2c\x91\x44\xd1\x0a\x22\x2b\xc6\x3e\xc2\x16\x89\xad\x65\x82\x18\x3f\x60\xa1\xc8\x5f\xc4\x41\x44\x6c\x27\xe7\x6e\xa9\xce\x2e\x78\xd0\xe7\x78\x1d\x1c\xf0\x6f\x86\xe3\x73\x0b\xad\x4d\x30\xeb\x94\x95\x48\xdc\x40\x57\x0b\xb3\x1d\xbc\xbd\x8a\x23\x28\x2a\x9b\xb7\xd2\x54\x37\x50\x51\xd7\x9b\xe5\x92\xe0\x3f\xa8\x1b\x8f\xe9\x93\x3c\xc8\x32\xa2\xd3\xd9\xcd\x15\x49\xcd\x1e\xa5\x75\xe4\x6e\xac\x72\x38\x8a\x52\xca\x57\xfa\x41\x8a\xbc\x79\xa1\x4f\xfc\x14\x91\x62\xe8\x60\x46\xb6\xd6\x6b\xa7\x6e\x1e\xe2\x25\x09\x11\x29\xbb\xbb\x39\x1c\x1e\x2d\x14\x44\xd3\xfd\xf3\x20\xf4\x3d\x88\x7d\xad\x88\x00\x70\x6f\x02\xca\x92\x5d\xda\xde\x37\x0d\xc9\xe2\x5f\x09\x24\x8b\xd7\x04\x92\x65\x71\xbd\x90\x2c\xde\xcd\x40\xb2\xcc\xef\x12\x24\xcb\xe2\x86\x20\x59\xee\x33\x90\x7f\xf3\x8c\x31\xe7\x67\xc6\x2e\x43\xbe\x4b\xf9\xdd\xa8\xc7\x68\x72\x9a\xec\x79\xc6\x70\x7e\x19\x67\xab\xf1\xb1\x29\x24\xf2\x82\x15\x78\x0f\x17\x82\xb1\x8a\x31\x41\xbe\x3b\x1c\xad\xe9\x5f\xb2\x98\x7c\xda\xeb\xf5\xe4\x67\x7c\xfb\x38\x23\xf5\x33\xf6\x4f\x47\x64\x71\xbe\x08\x26\x1d\x9b\x92\xca\xc0\x63\x11\x10\x4c\xf5\x24\x33\x1b\xf7\xf7\x0c\x6f\x89\x78\xdb\xed\x2b\xa9\xa3\x93\x45\x18\x90\x8e\xdd\xb3\x1d\x41\x3d\x01\x76\x49\xf1\x69\x01\x4a\x39\x7a\x8e\x07\x59\x75\xec\xc9\xff\xca\x27\x56\x3f\x65\x8b\x24\x9a\x03\xbd\x2d\x13\xc6\xe7\x91\x6c\x6a\x7a\xf2\x49\x36\xc8\x0e\xe3\x98\xf3\xea\x1c\x5a\x96\x3f\x5e\xfb\x0c\x7f\x90\x16\x48\xdf\xa4\x8f\xb4\x6a\xf8\xfc\xe9\xda\x26\x36\x8b\xeb\x75\x1d\x90\x8b\x9a\x47\x6b\xb3\xec\xf2\x4a\xaa\x2e\x5d\xea\xe1\xc5\x85\x8b\x55\x0d\x56\xcb\xbc\x98\x7b\x2a\x10\xd8\x2c\x73\x13\x8c\xcb\x3c\x97\xc3\x4a\x00\xb9\xac\x31\x82\xfe\x2a\x37\x15\x5f\x59\xa8\x29\x13\xdb\xd6\xd9\x9f\x1d\xae\xd1\x44\x7b\x25\x45\xd9\x5e\x16\xdc\x6d\x87\xb8\xcf\x2f\x90\x4b\xe8\xd9\x61\x52\xcc\x47\xc6\xed\x64\x4b\x47\x77\xf3\x4c\x6e\x63\x0e\x8d\x48\xdc\xe7\xdd\xfe\x03\xa6\x22\xa5\x12\xc8\xc7\x49\x87\x5e\x43\x9c\x4d\x12\x20\x2d\x52\x8c\xd0\xbe\x06\x91\x4b\xd2\x4f\x90\xf3\x97\xbe\xec\xe0\x8c\x6d\x0b\x32\x8c\x46\xce\x3a\x8a\xf1\x9c\x91\x89\x4f\x10\xc3\x79\xf2\x53\x5c\x48\x45\x39\xee\xa0\x34\x73\x3c\xab\x99\x18\x68\x1f\x52\xae\x93\x4c\x7a\x1a\x46\xa3\x17\x68\x18\x8d\x5c\x1f\x79\xb1\x8f\x7e\x3d\x79\xfb\x2a\x9e\x2f\xe2\x08\x45\xa2\xf9\x01\x7b\x4b\xff\x04\x68\xed\x80\x8b\xb5\x33\x20\xeb\x45\xd6\x13\x19\x29\x75\xb1\x4e\x0f\xdf\x4c\xec\xe9\x3d\x15\x44\x26\xfb\xbb\x07\xf1\x34\xe9\xf1\x2a\x1e\x3e\x64\x51\x50\xca\x13\x19\x9e\xc5\x96\x88\xaf\x38\x15\xe7\x30\x8a\xc8\x09\xfd\xb5\x27\xe4\x43\xcc\xa3\xa0\x44\x46\x7a\xbe\x8f\xd2\xd4\x01\xec\xbb\x81\x4a\x26\x1c\x5e\x2f\x04\xa1\x8b\x41\xc2\xbf\x33\x4e\x6c\x98\xf6\x83\x32\x63\xff\x03\x5d\xf6\x00\x45\xe4\x7f\x9c\xc4\xf5\x3b\x7e\xe7\x62\x0d\xca\xbe\x86\xbd\x08\xce\x11\x80\xb2\x0a\x07\x24\xf4\x28\x41\xb9\xaa\xf4\xf3\xac\x82\xac\xdb\x74\xba\xec\x30\xe6\x5d\x1d\xd8\x7f\xd1\xa1\x74\xe4\x8b\x2f\xab\x05\xb2\x1d\xa7\xc7\x53\xeb\xc3\x90\xb7\xdb\xe1\xad\x10\x67\xcd\xac\x9a\xb9\xdd\x96\x2e\x45\x30\x51\x44\x66\x27\xe5\xf9\xd9\x37\x6b\xe8\xfb\x6c\x6e\xf5\x20\x3a\xd6\x0b\x75\x0f\x6b\xeb\x29\x6f\x0c\x97\x08\x65\x36\x5e\x46\xbd\xc4\x9b\x21\x7a\x05\x75\x6c\x38\x21\x08\x9f\xa0\x88\x25\xa3\xe9\x50\xb2\x2e\xca\x33\xcc\x51\xc4\x59\xb4\x79\x7c\x86\x1a\x35\x4c\x7a\x5f\x59\x4f\xc5\x1d\x06\xd4\x8e\xb4\x6a\xdd\x4d\x59\x2d\xe8\xa7\x07\x9b\xb6\x3d\x4b\x69\xb6\xe8\x57\x76\xea\x9b\x35\x30\xcb\xc8\xf5\x9a\x1b\xff\x27\xba\x09\x5c\xcd\x2c\xb5\xbd\x03\x40\xbe\xf6\x1d\x25\x26\x5f\xe6\xeb\xdd\x5d\xaa\xad\xa4\x0d\x6c\x0c\x9d\xe9\x39\x2c\x93\x30\x85\xfd\x3e\xc5\x15\xea\xaa\x58\x51\xcd\xca\x75\x67\x84\x2c\x5a\x15\xee\xce\x78\xce\x59\xa3\x33\x40\xca\x40\xc3\xeb\x65\xdc\x77\xc0\x0e\xb2\x6b\x3c\xdc\xe8\x22\x87\xe2\x62\x36\x2f\x04\xe9\xf1\x55\xac\x2e\x27\x16\x22\x6a\x5e\x58\x2e\x04\xc0\xf2\x9b\xf5\x3a\x1b\x56\x58\xb7\xb3\x10\xc4\xde\xac\x5a\x77\xc1\xcb\xec\xa3\x3f\xa0\x47\x72\x66\x09\xf6\x62\x81\x91\x4f\x2f\x16\xa4\x6c\x97\x9a\x72\x4b\x91\xc7\x5e\x89\xd5\xa9\x2c\x5f\x0c\xed\xa9\x2c\x3e\x43\x30\x24\xb3\xae\x37\x43\xde\x69\x4d\x51\x06\x01\xd8\xa4\xed\x9a\x52\x02\xe6\xab\xaa\xc8\xe9\x59\x4d\x81\xa2\x07\x4e\xb1\x4c\x21\xae\xb6\x58\xc4\x00\x0a\x65\x18\xf7\x92\xcc\xba\x73\x44\x66\xb1\x5f\x37\x32\x9e\x9c\xd1\x98\xc3\x01\x18\x52\x30\x6f\xa0\xb4\x2b\x95\xca\x2e\xd2\x0d\x35\x48\xad\x11\x40\x2c\xc8\x20\x48\x9f\x14\xa3\x54\x06\x30\x7b\x59\xdc\x6c\x03\x9c\xbd\xd5\xf6\xca\x20\xcc\x5e\xa8\x33\x34\x58\xa4\xcf\xe9\x42\x0f\xe2\xf4\xe7\xe9\xd9\x60\x99\xfe\x80\x5e\x38\x48\xd2\x5f\x6c\x39\x07\x5e\xfa\x9b\x2e\xdd\xc0\x4f\x7f\xf2\x65\x1a\xcc\xb3\x9a\xb9\x43\xc0\x24\x55\x3d\x0a\x6a\x34\x6b\x4c\x8d\x98\x32\xac\x60\x4e\xe1\x2c\x04\xc0\xae\xcd\x17\x97\x12\x4e\x66\x56\xb9\x60\x47\x7a\x90\xe9\x3a\x01\xa6\xf4\x39\x2a\xa1\xcf\xb4\x66\xb1\x6a\xb0\x15\x7d\x8e\x86\x78\xe4\xc2\x75\xba\xa7\x14\xb9\x6f\x3c\x44\x23\x95\x5e\xcd\x6a\xe9\x55\x0a\x8a\x5e\x45\xb1\x48\x8c\xe1\x14\xed\x53\x5e\x31\xec\x8a\x5f\x3b\x50\x2e\x67\xfd\x44\xbd\x60\xf2\x21\x26\x3f\x86\xb1\x77\x1a\x44\x53\x7d\xdf\x46\x39\x6d\x82\xe8\x9f\x4d\xaf\x7c\xfd\x33\x23\x0e\xbd\x8a\x7d\xef\x85\x01\x8a\x88\x2d\xa0\x2b\x4c\xb8\xf5\x29\xf3\x87\x7a\x63\x51\xed\xc3\x87\x0f\xb2\x1f\x94\xb7\x14\x1b\x09\xb7\xda\x48\xa4\xb0\x91\xa0\x1b\x81\x0e\xe6\x0e\xb4\x74\x42\x9d\x20\xea\x70\x5b\x9d\x53\xb2\x65\xc8\xa6\x5b\x86\xf0\x2d\x53\x84\x6c\xcc\x1b\x5d\x52\x3b\x16\x9c\xa2\x1e\x0c\xc3\x4e\xea\x32\x22\x9d\x77\x9a\x7c\x38\x45\xe4\x37\xda\x4b\xe6\xc2\xa2\x20\x43\x15\x12\x1c\xc0\x29\x32\xe9\xff\x50\xa6\xff\x8b\xdc\xe7\x17\x84\xb2\xcf\xbc\xc2\x08\x20\x26\xb6\x3a\xc0\x80\x13\x95\x69\x39\x58\x7e\x84\x5e\x90\xf0\x3c\x09\xc8\xb9\xbc\xec\x20\x77\x88\x46\x4e\x31\x6f\x2e\x9c\x22\x10\xb9\xa8\x5a\xa4\x25\x3d\xce\xb7\x8b\x4e\x38\x52\x5a\xdd\x2b\x99\x8d\x48\xe3\x1a\x70\xdd\x29\x8c\x71\xa9\xbd\x83\xbe\xdb\xf7\xe2\x39\x15\xfa\x98\x47\x82\xf1\xfe\x2c\x29\x54\x72\xc1\xe7\x4b\xd7\xb0\x0f\xf9\xe2\xf9\x8b\x37\xff\xbe\x9c\x5d\xc8\x97\x2c\xe1\x6f\xf2\xc5\x0c\x17\x79\xbe\x48\xf1\x1e\xcf\x97\x30\x5d\xe3\xf9\x32\xa5\xb7\x78\xbe\xa0\xb8\xc4\xab\xcb\x50\x16\xa6\xd1\x35\xbf\x25\xe9\x5c\xa4\x46\x12\x9d\x6e\x2e\x5c\xe4\x3e\xcf\x36\x36\x57\x80\xa2\x9e\x17\x47\x1e\x24\x9d\x21\xf9\x8b\x3d\x80\x89\x67\x03\xfa\x87\x8f\x12\xcf\x1e\x39\x60\x38\x72\xc0\xc4\xa5\x87\x65\xe4\xb8\xcf\xd5\x88\xce\x45\x16\xc2\x39\xe4\xc8\x32\x1d\x5a\x3d\xd3\x90\x5e\x5e\x46\xc3\x83\xd1\x68\xbd\xa7\x75\x66\x92\xf1\x1d\xd9\xd3\xc1\x04\xf8\x01\x46\x6c\x46\x82\xc9\x6a\xb0\x58\x83\x99\x7b\x21\x79\x10\x9d\xd0\x8f\x1d\x13\x2b\xa2\xbb\x52\xd0\x32\x06\x8e\x44\xf7\x1e\xa5\x85\x74\xc6\xa4\x73\x00\x42\xfd\xbd\xc6\x9f\x74\x0e\x80\xa7\xbd\x3e\x3d\x1b\xa8\x69\x5f\xd8\xb3\x8c\x99\xea\x1c\x80\x44\x7b\xc5\x79\x95\xce\x01\x08\xb4\xc7\x8c\x65\xe9\x1c\x80\x58\x7b\x2a\x38\x97\xce\x01\x58\x6a\xcf\x05\x03\xd3\x39\x00\xbe\xfe\x9c\xb2\x4c\x9d\x03\x30\x57\x9f\xca\x4b\xe9\xac\xf4\x52\x92\x3b\x53\x21\xe2\xb3\x1c\xbb\x50\x2b\x38\x13\x48\x10\xcf\x1e\xe8\xcd\x20\x23\x55\x35\x1e\x56\x3c\x49\xa8\x26\x09\x43\x6f\x16\x44\x28\xd9\x3f\x83\x61\xe0\x43\x82\x7a\x7f\xf0\x42\x06\x7b\xed\xae\x04\x50\xdc\xc2\x7f\xa6\xc4\x7b\x86\xdd\xd3\x90\xa0\x57\x62\xdc\xd0\xbd\x90\x03\xc8\x78\x69\xc1\xf1\x91\x2b\xba\xbe\xdb\x5c\x29\x7c\xde\xd5\xd5\x99\x84\x90\xca\x9b\x3f\xf0\xe9\xde\x9f\x24\xf3\xea\x48\xdd\xdd\x78\x49\x25\xe5\x06\x83\x30\x9e\x4e\x85\xb5\xa0\x9d\xba\x5f\x71\x74\x12\x98\x46\xea\x82\x61\xf7\x62\x0d\x3a\x91\xbe\x5e\x4d\x78\xab\x48\x8e\x06\xb7\x5c\x9c\x68\xe4\x62\xe9\x56\x95\xb8\x72\x5c\x20\x16\x8e\x56\x81\x1b\x96\x3a\x5a\xd1\x01\xa8\x36\xe1\xa0\xd4\x26\x1c\x94\xd8\x84\x83\xbc\x4d\x38\xd0\xac\x88\x41\xd1\x8a\x18\x2b\x36\xe1\x30\x16\xe0\x66\xeb\x6c\xb6\x8a\xee\xc6\xe9\x3c\x52\x7a\x01\x7d\xff\xaf\x4b\x88\xfd\x44\x83\x2a\xe0\x9e\x4e\xe2\xb9\xc9\x7c\x3b\x8c\x00\x1e\x49\x7d\x27\x57\x87\x46\xca\xf6\x93\x15\x3d\x78\x40\x7a\x71\xc4\x1a\xe8\x60\xa0\xbb\x16\x33\xe3\x3b\x18\x22\x40\x46\x6b\x41\x46\x72\xc6\x0a\x76\x37\x70\xd7\xf1\xf7\xbc\x80\xd3\x91\xe6\x41\xbd\xdf\x0e\x95\x9f\x16\x10\x17\x86\x9c\x0a\x00\x1d\xa4\x22\xd8\xe5\x50\xe5\x90\xe3\x38\xbd\x38\x33\xf5\xb3\xa9\x4f\x3a\x3c\x11\x2f\x4a\x4a\x5c\x0f\x52\xfb\x2c\x1d\xe3\x0b\xfa\x1f\x17\xf5\xe2\x68\xa0\xf1\xbe\xbd\x38\x32\x7d\x1e\xe5\x3e\x1f\x46\xa3\x87\x0f\x3b\xe2\x2f\x56\x0d\x67\x8c\xd9\x1c\xa1\xf5\x1c\x12\x6f\x86\xc4\x1a\xa5\xfa\x79\xc5\xda\xf9\x40\x9a\x83\x3a\x3a\xb3\x4c\x9c\x17\x64\x30\x24\x23\x87\x67\x15\x20\x94\x65\x90\x95\xd1\x69\x63\x03\xcc\xe6\xeb\x42\xbc\x1b\xa0\xf5\x9a\x5e\x88\x78\x81\xa5\xd6\x1b\xb9\x22\x35\xad\x36\xcf\x7b\x12\xd8\x9e\xad\x55\xfa\x09\xcf\x8d\xd6\x53\x96\x35\x43\xb5\xc7\xbd\x64\x39\x4e\x3c\x1c\x8c\x59\x96\x83\x8b\xa8\xe7\xb1\xb4\x6b\x3e\x9d\x00\xfa\x15\xdf\xc5\x91\x03\xe8\x74\x7c\xc9\x0c\x73\x11\x9d\x0d\x80\xd7\xe9\xbe\xcc\xf9\xd9\xa0\x88\xe0\x00\x25\x1d\x9d\xed\x40\x8e\x93\xfa\xe8\x50\x99\x81\xce\x40\xe6\x12\x47\x8f\xa1\xcf\xd1\x64\x03\x17\x2a\xda\xec\x38\x3b\xf9\x4b\x77\x88\x47\xc0\x73\xb7\xd1\x69\x83\x39\xa5\x63\xea\xce\xf0\x4a\xbc\x22\xe6\x43\x34\x72\x3d\xe1\x15\x31\xd7\xbd\x22\xd4\x9f\x60\x9e\xf7\x8a\x98\x97\x7a\x45\xcc\x2f\x2f\xe7\x79\xaf\x88\xb9\xee\x15\x31\x77\x97\x4d\xbc\x22\x34\x22\xd1\xa1\x5c\x2f\x15\xc7\xa8\xfc\x34\x77\x80\xaf\x98\xee\xe6\x39\x9f\x85\xb9\xf0\x8a\xd0\x9e\xbf\x98\x17\xe9\x99\x9f\x7a\x45\xcc\xab\xbd\x22\xf2\x2d\x98\x49\x32\xed\xe2\x9c\x0e\x4f\x78\x45\xb8\x73\x00\x9d\x3d\x7a\xe7\x28\x2c\xbb\x62\x6d\x48\x6a\xaf\x62\x1e\x97\xa9\x5c\xc5\x3f\x70\x7f\x3e\x1f\x12\x28\x5e\x17\x94\x29\xa9\xee\xa9\xc4\xb7\xfc\x2e\xf8\x19\xdd\x87\xba\x7f\xf3\xfe\x3e\x22\xd4\x3d\x2a\x61\xf1\x94\xf0\x89\x54\x71\x41\x39\xb4\x12\x0f\x12\xa6\x9d\xdb\x67\x36\x9b\x22\x57\xd8\x34\x59\x4f\x20\x4c\x3c\xb4\xed\xcf\x22\x9f\x72\x28\x9c\x3d\xe4\x3b\xa1\x07\x04\x89\x70\xf6\x08\x22\xc9\xcc\x77\x90\x7b\x7c\xd0\x17\x7e\x32\xbc\x58\x0f\x8e\x63\x4c\x3a\xf4\x31\xb7\xad\x67\x35\xf7\x30\x4a\x10\x79\x05\xbd\x19\xea\x88\x97\x74\x21\x3a\xce\xda\x0b\x11\x4c\x1d\x9a\x94\xea\x0f\xd2\x98\xae\x3c\xf3\xa4\x64\x32\x47\x8e\x12\xdd\x05\x2e\xe6\xd2\x7b\x7c\x80\xd6\x80\xf0\x66\xbe\xb2\x9b\x33\x82\xe1\x7b\x61\x98\x7f\xcb\x93\x0a\x0a\xee\xe7\x73\x04\x17\xc9\x2c\x26\x9d\x0b\xca\x11\xf0\x78\xb5\x82\x15\x5c\x6b\x11\x08\x7f\x87\x04\x61\xb1\x8f\xc4\x73\xe8\x6a\x1d\x48\x3d\xe9\xb3\x58\x37\x00\x01\x91\x61\x6d\x24\x83\x05\xc6\x99\x17\xc3\x09\x4a\x16\x71\x94\x20\x59\x9c\xee\x44\x11\xc2\xe4\xac\x99\xc3\xfc\x3b\x66\x76\xdb\x7d\x27\xd5\xca\x45\xe3\x74\xf7\xab\xfd\x64\xa9\xe6\x09\x74\x95\xfe\xbe\x47\x04\x66\x7d\x65\x1f\xd8\x21\x37\x0c\x0a\xa4\xe0\x2c\x1f\x8e\x29\xfe\x60\xcb\x4e\x67\xb5\x97\x74\xb9\x72\x6a\x05\xc9\x50\x73\xa1\x33\x46\x3f\x5e\x92\x42\x6f\x8d\x1d\x30\x6c\x47\xf1\x39\x0f\x24\x01\xa4\x17\xf8\x80\x50\x16\x28\x74\xe3\x0e\xd4\x1c\xf4\x95\x53\x37\x8c\xb6\x36\xeb\xe7\xab\x97\x07\x77\x7b\x27\x07\xd8\x06\x1b\x80\xa0\xf9\x22\xc6\x30\xd4\xaf\x71\xca\xb7\x92\x55\x77\x9e\xec\xd4\x16\xa2\x69\x2e\xa2\x12\xa1\xd8\x5f\x62\xe6\xb6\xf3\x13\x8e\xe7\x94\xf5\x65\x8b\x9a\xf3\x36\xb4\xa3\x25\xfd\xc6\x76\x5d\x3a\x77\xf1\xc4\x42\x03\x25\x4d\x14\x7a\x61\x1f\xd8\x39\x85\x1b\xda\xef\xa3\xc7\xe0\x62\x42\xf7\x16\xf9\xbc\x1c\xbf\x0f\xc2\x30\x48\x10\xe5\x78\x13\xd6\x4d\xe9\xe2\x68\xd9\x4e\xef\x5f\x71\x10\x75\x6c\x5b\xf1\x86\x56\xf4\x13\x51\xed\x84\xfe\x41\xba\x73\x04\x93\x25\x36\xc7\x3a\x68\x05\xca\xbe\xbb\x8b\xf1\x0d\x24\xf0\x4e\xf3\x43\xce\x1b\xdc\x44\x99\xc2\xf0\x78\x26\xb1\xdd\x6b\xc5\xf4\xbd\xc5\x6f\x30\x7e\xa7\xf2\xeb\xcc\x10\x36\xcd\x2e\xbe\x8e\xb3\x26\xe7\x08\x45\x5f\x28\xa7\x87\x5d\xdb\xa6\xec\xaa\x24\x2e\x89\x8b\x33\x8a\x36\x83\x49\x27\x71\x5e\x74\x3a\x3c\xa1\x19\xe9\x24\x8e\x23\xb5\xb5\xf1\xc4\x22\xbd\x2f\xb4\x1e\x11\x20\x91\x90\x78\xd1\x61\xf1\xd6\x5f\x20\xa6\x85\x59\x94\x03\x6d\x2f\x01\xa2\x64\x8f\xc4\x1d\x0c\x10\x6b\xcf\x01\xd8\x19\x74\x64\x01\xc4\x60\x55\x7c\x94\x10\x1c\x17\x22\x9c\x45\xaf\xd3\x5a\x64\x31\xba\x89\xd9\x9b\x8b\x48\x7a\x1e\xb7\xd1\xb6\x91\x60\x8e\xe2\x65\x4d\xcc\xca\x82\xdb\x88\xfc\x2f\xa2\xf0\x55\xd0\x0c\xa3\xbd\x54\x18\xa7\x9c\x9a\x65\x47\x7f\x20\x2f\xf5\x96\x93\x0b\xc7\x9d\xd6\xe8\x7e\x54\x00\x01\x14\x77\x56\x8d\x5d\xcf\x7c\xd9\x22\xf4\x07\xf3\x3b\x76\x5a\xd9\xc1\x48\x8c\x83\xa0\x6b\x04\xe8\x62\xaf\xca\x4a\xde\x49\x32\x40\x47\x50\x3f\xc6\x3b\x39\xb6\x65\xd0\xe5\x57\x73\xd9\x81\x68\x16\x60\x9d\x13\x82\xef\x41\xd4\xee\x25\xcb\x7c\x24\x01\xce\xbb\x86\x94\xe5\x81\x4d\xb7\x24\x2d\x40\x66\x32\x26\xbb\xc9\xa7\x51\x4c\x26\xf1\x32\xf2\xd3\x2f\xc3\xd6\x8d\x6e\x10\xd2\x50\x1f\xcc\xcd\x9c\x72\xef\x02\xea\x9a\x96\x62\x14\x92\x99\x72\x29\x67\xa1\xcc\x32\x52\xba\x43\xb7\x02\x9d\x68\xf9\x1d\x53\xbf\xe7\x3e\xe3\x25\x24\x33\xba\x6f\x3b\x39\x23\x77\x9e\x13\xb6\x58\x00\x35\x26\x42\x85\xfb\xff\xd9\x0e\xc3\x89\xa1\x0b\xe5\x12\xa6\x5c\x26\xb8\xd3\x77\xf6\xc6\x18\xc1\xd3\x3d\xc3\x17\x5f\xd9\x17\xe9\x2a\x97\x7d\x94\x29\xd9\x7b\x02\xde\xc5\x25\x19\x7b\x0c\x2e\xd2\xc9\x60\x03\xd5\x38\x93\x7c\x6e\xdb\x5f\xdf\x7e\x7d\xf5\xf1\xc3\x4f\x6f\xff\x6a\xb3\xd8\x9e\xcf\xab\xc8\x6b\xf1\x85\x01\x1e\x8e\xfb\x70\x6f\x2d\x91\x19\x61\xdb\xe8\xf2\x34\x43\x16\x2d\xfb\xb8\x1a\x1c\x2e\xdd\x03\x1b\x20\xd0\x65\xdf\x56\xb7\x31\x65\x31\xc7\x6d\xa1\xe7\xa6\x0c\xee\xaa\x3d\xe8\x5c\xa5\xe7\x49\x76\x69\x6a\x37\xe2\x2e\x38\xc4\xec\x41\x47\x75\xca\x40\x6b\xc7\x7d\xde\x21\xae\xfd\x9e\x75\x81\xe9\x03\x60\xe2\xd9\x8e\xfb\x1c\x75\x86\xca\x53\x1b\xd8\x5f\xe2\x53\x14\x7d\xf9\xf2\xce\x1e\x39\x1d\x52\xc6\x0a\x54\xfb\x04\xdd\xe0\x00\x3f\x33\x20\x05\x39\x38\xfd\x94\x8b\x77\xb6\xf3\x42\x77\x02\x63\xd4\x79\x08\xf0\x28\x8b\xf1\x1b\xd8\x69\xc8\xcf\x9e\x4d\x2b\x73\x5d\x17\xbf\xe8\x40\x17\xd1\x4b\xd0\x19\x74\x42\x17\x01\xe8\x46\xd2\xdc\x95\xb8\xb0\xc7\xab\x07\x81\x1b\x8a\x3f\x65\x78\x60\x22\xe4\xf5\x05\x4c\x92\x20\x9a\x4a\x60\x86\xf4\xb7\xeb\xba\xc1\x8b\x83\x01\x8f\x18\xb4\x3d\x1c\x90\xc0\x83\x61\x5a\x2c\x7d\x20\xca\x89\xd0\x42\xfb\x1c\xe2\x88\x55\x27\x9a\x09\xcc\xcd\x74\x4b\xea\x35\xc6\x23\xa6\x7f\x0d\xe8\xbe\x10\x3b\xe2\x97\x20\xf2\x5b\xed\x06\xc5\xef\xeb\x7a\xb6\x02\xdd\xc7\xee\x73\xc1\xee\x35\xe8\xe0\xe9\xd9\x8d\x6d\x52\xc2\x8f\x1c\x43\xc2\x6c\x3f\xb3\xdc\x6f\xfe\x06\xcf\x97\x4a\x3a\x76\x72\xba\xc4\xe6\x55\x0e\x99\x3c\x5a\x83\xf4\xb8\x81\xf4\xa2\x87\xbd\x57\x94\xc4\x24\xaf\xc4\x66\x7e\x1e\xe6\x1e\x64\x9b\xdb\x58\xfe\x7f\x4b\xca\x77\xb3\xc3\x90\xe7\x2d\x64\x15\x7f\xe7\xc7\x2d\x6d\x51\xfc\x2e\x69\x50\xbc\xfd\x5f\x73\xe9\x06\xcd\x7d\xe2\xa7\x38\xad\x40\xfc\x2e\x69\x4e\xbc\x7d\x6e\x2e\xdd\xed\x2b\x27\x5b\x1c\x6d\xe6\xbd\x28\x76\xde\x5e\x93\x9d\x27\x5c\x22\x6f\xf6\xd8\x30\x8a\xd4\xe6\xc0\xa4\x3c\xdd\xdd\xeb\x79\x21\xe3\xf9\x8d\x1e\xf6\x8d\xc6\x90\xcf\x8c\x77\x3b\x46\x00\xec\x57\xcc\x88\xf6\x36\xf2\xd1\x1f\xad\xc6\x53\x95\x33\xe9\xba\x37\xd5\x45\x30\xe9\x94\x50\xe0\x94\xe8\x22\x9d\xe8\x82\xc8\x1d\xda\x9f\x10\xf6\x50\x44\xe0\x14\x69\xa4\xc2\x06\x85\x37\x82\x66\x19\xde\x48\xea\x69\x8f\x84\x52\x46\x92\x6f\xf4\xf0\x61\x94\x69\x3e\x80\xae\xee\x99\xc4\xb8\xc3\xe2\xb3\x59\xd8\x0c\x57\x77\x43\x37\x1a\xe2\xd1\x5e\x30\xe9\xa0\x21\x1c\xb1\xa0\x72\x38\x92\x21\xc6\xf4\xd1\x73\xfa\xe0\x45\xb7\x3f\xe8\xaf\x53\x22\x96\xdb\x8b\xed\x16\xef\x5b\x63\x4f\xdb\x5e\xa0\xef\x51\x32\x2b\x5c\xa2\xc5\x87\x85\x8b\xa6\x58\xe4\x7f\x2b\xbe\xab\xbc\xe1\xb2\xaf\xb2\x4b\xb5\xf0\xac\xa2\x03\xd9\xe5\x5a\xf6\x55\xc3\xe6\xb3\x4b\xb6\xf0\xac\xa2\xf9\xec\xb2\x2d\xfb\xca\x74\xe1\xb6\xa5\x9d\x05\x90\xf2\x9b\xb8\xb5\x38\xa1\xfc\x12\xb4\xec\xbb\x21\xe2\xe4\x06\x0f\x9d\x92\x11\x37\x7f\x1f\xe4\x5e\x55\x0d\x52\xa6\xb8\x4f\xf6\x55\x68\x88\xab\x1c\x17\x07\xf3\xe2\x3a\xb4\x9f\xbf\xbc\x7f\xf7\x23\xc4\x49\x4f\x76\xa3\x73\x11\xf8\x03\xfb\xb5\xb7\xf0\x61\xf8\x9f\xbf\xd9\x80\x05\xb0\x0d\xfe\x7c\x61\x27\x1c\x91\xcc\x1e\x0c\x79\xfc\xbd\x0d\xec\xd8\x66\x7a\x12\xc9\x08\xd9\x69\x78\x0b\x83\xdb\xb3\x7d\x4f\xff\x53\xc4\xdf\xf1\xef\x84\xee\x1e\x08\x3d\x38\xb0\x4f\xd1\xca\x1e\x01\xee\x7d\xcd\x2c\x86\xf6\x60\x38\x7c\x0a\x64\x63\xc3\x11\x18\x0e\xed\x1f\x22\x36\x9b\x60\x38\x3c\x3a\x06\x87\x8f\x47\x23\xf6\x54\x5a\x24\x46\x60\x78\x91\xab\xe0\x10\xd8\xff\xfc\x67\xf4\xcf\x7f\x46\xf4\xe5\x53\x30\x3c\x3a\x04\x7d\x30\xb4\x5f\x46\x51\xbc\x8c\x3c\x84\x6d\x5a\x03\xaf\x9a\x04\x24\x64\x75\xdb\xaf\x78\x47\x47\x23\xe6\x40\x31\x02\xa2\x16\xfa\xee\x31\x18\x1e\x3d\x01\x8f\x59\x0f\x0e\xc0\xf0\xe8\x31\xe8\x3f\xa3\x9f\x2c\xe9\x59\xf6\x42\xba\x5a\xec\x1b\xfe\x4f\x7d\xe7\x2c\x8b\xbe\xe8\x03\x59\xdb\xe1\x51\xf6\x25\xd3\xfc\xb2\x0e\xcd\x60\xd2\xe5\xb5\xb3\x11\xcb\xee\x8c\xd8\xf4\xc3\x39\x22\x08\xd3\x0a\x47\x6b\xf6\xba\xaa\x8f\x7c\x89\xae\xb0\x9b\x69\x03\xdb\xf6\x34\xdd\x58\x57\xd8\x59\xb5\x8d\x26\xfd\xcd\xf6\xc1\x53\xa0\x3a\xa9\xa5\xdb\x33\xc1\x9e\xad\x8c\xe6\x09\x6d\x48\x06\xcb\x0e\xf6\xf7\xf9\x09\x18\x90\x19\x62\xbb\x98\x8f\xaa\xd9\x16\xce\x36\xdf\xe1\x53\xa5\x85\xc3\x27\xec\xc7\x21\xe8\xd3\x6d\x4d\xbb\x44\x47\xd2\x62\xbe\x8a\x4b\xf0\x4c\xd6\x78\x38\xca\xa6\xf0\x91\x7c\x78\xa4\x3c\x3c\xa6\xc3\xf3\xe2\x30\xc6\x5d\x06\x7a\x20\x22\x76\x08\x86\x09\xd1\x17\xad\x55\x97\xd8\x12\x36\x5a\xc4\xf4\x25\xed\xaa\xbd\xc0\x68\x82\x70\xd2\xb5\x81\xec\xa9\x2d\xff\x3e\x4c\x3b\x50\xbf\xcc\xf9\x87\x7d\x56\x97\xf1\x4d\x5f\xdb\x17\x57\x41\x22\x2a\xf6\x19\xb0\x7f\x88\x23\xee\xd1\xde\x64\xcf\xb1\x6b\x3f\xa5\x68\xa2\xb0\x5c\xd6\x83\xec\x51\x9f\xef\xa8\x47\xe0\x20\x5b\xb4\xe1\x50\x90\xe9\x91\xb2\xc9\x8a\xe4\xb1\xf6\xd4\x14\xa7\xe6\x30\xdd\x6d\x74\x2b\x71\x48\x25\x7e\x63\x8e\x80\x1d\x33\xf5\xf6\x02\xc7\x67\x81\x8f\x70\xd7\x47\xe3\xe5\xb4\x7c\xf6\x80\x8d\xc2\x04\x35\x39\x41\xda\xda\x3c\xad\xe8\x40\xc0\x25\xb9\x8d\x5a\x2c\x6c\xe0\xbe\x3a\x6c\x3a\xe1\x36\x46\x8b\x10\x7a\x88\xb2\xe9\xec\x8e\x94\x66\xca\x84\xc3\x6f\xd9\xd9\x9a\x28\x6d\x6b\x04\xa6\xcf\xea\x11\x96\x9c\xd7\x2f\xbf\xbc\x7c\xf5\xe6\xc3\x97\x37\x27\x5f\xdf\x7d\x7c\xf5\xf2\x9d\xad\xee\x79\xfd\x14\x56\x2c\x19\xa8\xa7\x10\x95\x73\x26\xed\x9e\x9b\x51\xed\x0d\xf7\xfb\xfe\x7f\xb3\xff\xa7\x36\xd7\x3f\x5d\x2c\x20\x99\xad\x8d\x33\xc8\xcc\xb1\xca\x00\x38\x2e\x96\xad\xf6\x5c\xdb\xdd\x0d\x8e\x4a\xff\xe8\xaa\xce\x4a\x5f\x9d\xf7\xa6\x17\x65\xd6\xc1\x47\xa6\x71\x66\x2c\x1b\x6d\x91\x75\x9f\xbf\xd6\x9f\x1e\x80\xa1\xfd\x49\x7d\x68\xa7\xf5\xdb\x85\x96\x1a\x71\x1b\x35\xfd\x92\x10\x27\x4a\xa7\xf4\x47\xb4\x47\x69\xca\x8e\x92\x1e\x35\xdd\x6e\xed\xef\x71\xb1\xc7\xfc\x34\xb3\x48\xb2\xf1\x15\xae\xad\xaa\x98\x0c\x75\x1e\x1f\x81\xfe\x31\xe0\x67\x5d\x99\x34\x7a\xc9\x1d\x64\x3f\xfb\x23\x5e\xc4\xb4\xc7\x3f\xa4\x6c\xb2\x98\x48\x56\x95\x81\x10\xe4\xd6\x65\xa3\x26\x72\xcb\x68\x6e\xaa\xba\x8a\x8d\xa8\x19\xbb\xda\x1f\xe5\xd9\x9e\x0d\xf9\x1d\xfe\xb7\x24\x6c\x8f\x41\xaa\xd3\xe3\x90\x9c\x74\x21\x0e\xd4\x76\x9f\xb4\x65\x69\xc4\x06\x50\x98\x9b\x36\x7b\x8f\x12\x34\x71\x14\xd7\xfb\xff\xbd\xff\xa7\x0b\xdf\x5b\x2b\x5b\x71\xff\x4f\x17\x54\x32\x32\x13\x3c\x26\x7c\x69\x72\x9a\xb2\x74\xe9\x48\x47\x7c\x5c\x47\xfc\x1f\xe5\xb1\xb2\x94\x6d\xf7\xf9\x63\xd1\xc8\xd3\x96\x8b\x24\x26\x29\x9d\xa6\x19\x4c\x66\x81\x17\xe3\x45\x57\xca\x90\xc3\xe1\xe1\x31\xe8\x03\xfb\x1c\xc3\xc5\x42\x88\x71\x43\xfb\x07\x2e\x6d\xfe\xc0\x46\xfc\x83\x3a\xe4\x1f\x52\xd9\xf4\x87\x65\x82\x70\xf1\x32\x39\x64\x13\xad\xf7\x55\x9d\x90\x63\xe3\x0e\x96\x5c\x95\x64\x98\x46\xc6\xfb\xc2\xc6\x28\x73\xaa\x6f\x37\x97\x86\xe9\x7c\x04\x8e\xdb\xf3\x22\xda\x74\xc2\xc5\xa2\xcb\x12\x00\xa4\x7b\x4e\xfc\xb2\x7f\x08\xe3\x69\x10\x49\x01\xfb\x98\x0f\xfd\x19\x18\xda\xfc\x39\xb0\xe3\x05\x1d\x6f\xa3\xfb\xac\xc0\x48\x14\x3b\x92\x62\xb6\x2b\xc2\x3d\xb0\x7f\x60\xc1\x05\xec\xfe\xd4\x55\x22\xc5\xf9\x87\x8b\x85\x0d\x6c\xb1\xa2\xa9\xbe\x41\xcc\xfc\xb3\xe6\x4b\x56\x5c\xf6\x27\x62\xe3\x37\x59\x24\xcb\x52\xc7\x95\xb1\x7c\x47\x2a\xc7\x27\x7a\x60\xe4\xc3\xb2\xcf\x0b\x22\xc6\x81\x49\xc4\x28\xce\x24\x3f\x17\xfb\x61\xcc\x51\xe8\xd8\xf1\x38\x00\xf6\x59\x80\xce\xbb\xe2\x21\x1b\xcc\x08\x0c\x5b\xf2\x22\x65\x3d\x7b\x96\xe3\x58\xca\x2b\x31\x7f\xff\xb4\xc9\xf7\xf9\x87\x94\x1c\x9a\x9e\x3f\xaa\xa9\xec\x08\x1c\x1b\xbf\x2b\x79\x68\xde\xba\xbb\xda\xb4\x6c\xbb\xaa\xd7\x5e\xd5\xe6\x6c\xb7\x0b\x37\xde\x7f\xc5\x29\x3b\xdc\x64\x7d\xfa\xc5\x8f\x66\x30\x79\x73\x06\x43\x7b\x30\x81\x61\x82\x80\xbd\x5c\x9c\x41\x56\xd6\x96\xf8\x3c\x94\xba\xdb\xc0\xee\xca\x89\xb5\x3d\x89\xf6\x6b\x8b\x44\x25\x36\xb0\xa1\x27\x28\x79\x30\xa1\x27\x1e\x07\x36\xb0\xa7\xb4\x00\x8c\x7c\x5b\xb8\xa9\xd9\x1e\xf4\x66\xc8\xef\xf2\xa5\x00\x76\xcc\x54\xa5\x5d\x86\x5f\x91\x32\xf7\xf4\x4f\xf9\x17\xab\x99\xb7\x39\x5f\xb2\xd6\xfe\xcd\x6a\xa1\xed\x30\xbd\x63\x37\x6d\xd6\x0f\xfc\x6e\x10\x25\x08\x0b\xf0\x45\x8f\xd5\xea\xc7\x1e\x0b\x6f\xe8\x42\x42\x30\xbd\x7a\x20\xc6\x50\xa0\x05\x11\x18\x44\x89\xac\x48\x30\x13\x5d\x04\xbd\x59\x97\x51\x52\xfa\x17\xef\x57\x17\xfd\xdb\x1e\xad\xff\x0c\xe6\x88\xc0\xc1\xc5\x9c\xa9\x70\x99\x42\xb9\x4e\x4b\xdc\x9b\x8d\x13\x7b\xbd\x56\x1d\xc7\x48\x9d\x92\x39\x9d\xdb\x64\x7f\x0c\x93\xc0\xeb\xfa\x38\x5e\xf8\xf1\x79\x44\xaf\x56\xc2\x83\xa4\x0a\x51\x35\x7a\xc9\x56\xb5\xdd\x21\x47\xf4\x26\xc3\x92\x38\xc7\x5d\x02\xa7\x3b\x9a\x29\xad\xca\x6f\x6c\xba\x08\x0e\x38\xb4\xc1\x4e\x66\x4a\xd6\xf6\x6d\x4d\xd2\x6e\x26\xe7\x6e\x4e\x0a\x93\x2d\x6f\xd4\xd2\xf5\x2f\x9f\x1c\x1e\x1f\xff\x3e\xaf\xb3\x74\xb5\x33\x4d\x1d\x34\xbf\xb4\x1b\x72\x15\xbc\xd6\xd4\x80\x25\x9e\x6f\xce\x1b\x1c\x1a\x18\x90\x9d\xf1\x06\xad\xd8\x00\xed\x7e\x34\xf0\x00\xcd\xaf\x46\xdf\xdb\xe4\x46\xf4\xbd\x7d\xa6\x96\xbf\xe1\x8d\xf8\x25\xfe\xfc\xe9\x51\xf8\xef\xa3\xfb\x8d\xf8\x2d\x6c\x44\xb6\xa5\xb6\xd8\x8d\xaa\x67\x7f\xb2\x2f\xcd\x01\x37\xba\x41\x57\xbf\x87\xff\xf9\xcb\xbb\x45\x0d\xa5\x94\x12\xa8\xcd\xd1\x49\x6d\x8e\x88\x44\x6f\xb6\x80\xa0\x39\x8f\xe7\x0b\x43\x0e\xe4\xd8\x72\x2f\xb7\x31\xf7\xeb\x1a\xb6\x54\x2c\x36\x6a\xd8\x9e\x16\x35\x6c\x7f\xba\xe0\xfa\xa2\xb5\xd0\xb4\xa9\xab\x91\xc9\x74\x4f\x54\xa3\x82\xd1\x0d\xc2\xa8\x20\xcd\x69\xda\x2b\xb4\xe0\x35\x9a\xd5\x16\xb3\x91\xce\x07\x5b\xbb\x6e\x12\xc6\xa4\x30\xc7\x42\xd6\x6a\xad\xe5\x3b\x36\x18\x8f\x0f\xd3\xea\xf8\x12\x2f\x13\x76\xf8\x8e\x0f\xfa\x1b\x9b\xd3\x8a\xda\x0e\xe8\x85\xfb\x7e\x90\x88\x0c\x91\xc3\x16\xfa\x8d\x72\xdd\x54\x2b\x15\x99\x3a\xce\x51\x9e\x26\x02\xa1\x9d\xda\x40\x75\x56\xad\x39\xc9\x6b\x84\x1a\xae\x2e\x3b\x04\x7e\xfb\xe5\xed\x3f\xd5\xb5\xd1\x72\xd9\xa4\xe3\x4e\xd1\x24\x97\xd9\xc5\x1e\x8f\x40\x3e\x36\x28\x6f\x0f\x38\x34\xd8\xd5\xb2\xcf\xcd\x66\x35\xc2\xe2\xfb\x7b\x09\xa2\x84\x04\xa5\x06\x3b\x43\x27\x59\x3e\x5c\xc5\xdb\x88\x63\xaf\x0b\x6f\xae\x95\xdd\x76\x64\xc7\xb2\x67\x8f\x72\x46\x13\xf9\xd0\x06\xd9\x00\x0f\x9f\x15\x8c\x1f\x55\x83\x7d\xd4\x6c\xb0\x6f\x19\x19\x2d\x1f\x71\x83\xce\x1f\x9b\x3a\x7f\xbc\x55\xe7\x8f\xaf\xa4\xf3\x40\xdd\xa7\xfa\x30\x44\xfb\x47\xb2\x03\x7d\x73\x9f\xb3\xf1\xf5\xf5\xf1\xd1\x47\x07\xad\x86\xd8\x6f\x39\xc4\xb4\x8d\x51\xaa\x64\x3e\x6c\x6f\x07\x29\x1c\x71\x4a\x99\xce\x02\x74\x9e\x1e\x70\x8d\x1e\x35\x21\x3f\xcd\x55\xda\x0d\xa8\x8a\x4c\x40\xd3\x4e\x53\xce\x58\xc0\x03\x60\xcf\xfa\xec\xaf\xc3\x82\x26\x5c\xb6\x2d\xc7\xf4\x85\x3b\xe7\x19\x9c\xf5\x5e\x2e\xc9\xcc\x7a\x2f\xae\xe6\x3c\x71\xd5\xda\x3b\xaa\xd5\x69\x1b\x15\xdf\xb5\x53\x40\xe2\x38\x1c\xc3\x2d\x2f\xce\x23\xb1\x80\x8f\x28\xa5\x2e\x98\x1c\xdb\x59\xcd\x0a\xf7\x64\xc6\xbd\x88\xcc\x22\x5d\xda\xdf\x94\x1d\x12\xd9\x67\xec\x1f\xe2\x28\xfb\x5b\xf0\x6f\x3f\x70\x06\x4e\xe3\xfc\x6b\xcf\x4a\x99\xeb\x90\x38\x2a\xe2\x41\xde\xc0\xd6\xf6\x66\xdc\xdd\x0a\xa6\xca\xca\xf6\xbb\x58\xb2\x98\x0a\x57\x9b\xee\xd1\xd5\x02\x15\x67\x92\x19\x28\xb3\x69\xe6\x5c\x31\x33\x1b\x68\xb1\xbc\x74\x62\x40\x3a\x77\x8a\x0d\x32\x95\xbe\x1e\x6d\x66\x9e\x7a\x9a\xda\x77\x5f\x29\x8c\xf8\x48\x65\x9f\xda\x55\x5a\xb5\xdb\xc2\x20\xc9\xa6\x3b\x1d\xaa\xec\x40\x90\xde\x06\xe6\x53\xdb\x70\x81\x8b\x23\x7b\x33\x5f\xd0\xcb\x7d\x17\x83\x42\xb4\xaa\xae\xc4\xc5\xbe\x72\x8a\x9b\x6b\x7d\xf7\x94\xb7\x40\x81\x0f\x73\x14\x78\x37\xe4\xa9\x91\x39\x5a\xfd\xdf\x87\xd8\xa2\x1b\xc7\x12\x42\x96\xc5\x4c\x34\x1b\x58\x96\xd5\xff\xfd\x1d\x85\x5e\x3c\x47\x16\x89\x2d\xf5\x96\x68\x44\x5a\x72\x33\x95\xbf\x3b\x5a\x6f\xd0\x86\x8b\x3a\x8e\xfd\xd5\xb6\x4b\xba\xb8\x9d\x2b\x7a\x3e\x43\x18\xf1\x75\xb5\x18\xfa\x73\x10\x4d\x2d\x32\x83\xc4\xe2\xd4\x10\x58\x31\xb6\x56\xf1\xd2\x9a\xc3\x95\x15\xc5\xc4\x9a\xc1\x33\x64\x41\xcf\x43\x49\x42\x97\x90\x32\x3d\x16\x99\x21\xbd\x56\xfa\x01\xc4\x48\xd4\x41\xab\x9c\xc4\xb8\xb7\xe5\xc6\xf9\xc2\xba\xea\xc7\xd1\x3f\xff\x4c\x7b\x87\xe6\xb4\xfd\x31\xb2\x60\xb4\xd2\x5a\x6f\xd4\x65\xbd\xbb\x88\x94\x75\xee\x56\xec\x3f\x6e\xef\x4c\xb6\xdd\x82\x61\xc0\xfe\x62\x3e\x08\x7e\xec\x25\xdd\x30\x88\x4e\x4b\x59\xbd\xfc\xd7\x90\xfd\xf1\x88\x92\xf2\xa3\x7e\xb6\x63\x1f\xa9\xde\x61\x1f\x5f\x7d\xfe\xfa\xeb\xc9\xbb\xcc\x01\x70\x3f\x41\xde\x12\x07\x64\xc5\xd4\x02\x9a\xc2\x86\x4d\x48\xff\x18\xd8\x98\x51\xe9\x28\xa6\x94\x19\x61\x2b\x8a\x99\xc7\x38\x87\x04\x64\x05\x38\x83\x62\x03\xfb\xeb\x38\x84\x7a\x8f\x5f\x0b\x53\x2f\xe4\x48\x52\x91\xb6\xae\x95\x6b\x54\xb3\x84\xe6\x59\x0b\x11\xc4\xd1\xd5\x4c\xdb\xcb\x4f\x6f\x73\x53\x97\x9f\xb1\xde\x8c\xcc\xc3\xdd\x4c\xdb\x09\x82\x3e\x3b\xb5\x2f\x3f\xbd\xb5\x5e\xc7\xde\x56\x53\xd5\x62\xb7\xb7\xe0\x1c\x1a\x15\x2c\x16\x7b\xdc\xc8\x4d\xa6\x50\xa8\xd6\xf5\xd7\xe0\xbb\x02\x1e\xb5\xd2\x09\x5d\xb9\xa6\x3c\x65\x5f\xb9\xd7\x44\xea\x24\xc1\x1c\x32\x98\x83\x06\xf7\xc7\x50\x35\xea\xc2\xcb\x83\x7b\x6e\x30\x3f\x0b\x5e\xcb\xa7\x34\xb2\xae\xa8\x9e\x01\x36\x0b\x4c\xcd\xdc\x24\x14\x4d\x4e\xaa\xd9\xc1\xe4\xc7\x95\xea\xcb\xd1\x5a\x4d\x6f\xd0\xb5\xef\x4c\x73\x9f\xcc\xe2\xf3\x9b\x56\xdc\x87\xff\xfa\xf4\xcb\x2f\x68\xf5\xf7\x86\x8a\x7b\xca\x95\x6f\x60\x69\x7a\xd2\xda\xd2\xd4\x40\x35\xcf\x3d\x82\x1b\xeb\xe6\x8b\x6e\xb0\x87\xf5\x2a\x7a\xdd\x1f\x76\x87\x9a\xfa\xe2\xe3\xc0\xbf\xf5\x0a\xfc\x7e\xff\x6a\x35\xf8\xd7\xa1\xc3\xbf\xd7\xe2\x1b\xb4\xf8\x87\xca\x58\x5b\xfb\x62\x9b\x75\x8f\x6d\x05\xeb\x26\xf2\x0f\x46\xd0\xf7\xf0\x72\x3e\xde\x80\x07\x95\x8c\x50\x1c\x56\xf2\x4c\x39\x76\xeb\xd0\xc0\x3e\xf1\xb3\x70\xc0\xc3\x1f\x7a\xcc\x96\xab\x73\x94\xa9\x7a\x4b\xb6\xf2\x32\x0c\x2d\x5d\x15\x29\xf8\x18\x23\x33\x73\xa5\xfa\xc8\x9b\x56\xc9\x4a\xdd\x55\x1a\x3f\xd0\x42\x27\x5b\xa5\x4c\xe2\xfa\x34\x45\x99\x94\x36\x56\xd2\xc6\xae\x26\x34\x82\x67\x1b\xaa\x06\x09\x1c\x77\xe9\xd7\x06\x15\x58\x31\x6e\xea\x91\xc1\x5d\x77\x38\xb4\x43\x38\x66\x74\x68\x86\xd1\x84\xb1\x48\xd2\xe8\x05\x86\xf6\x5f\x29\x43\x0e\x43\x2b\x88\x26\xb1\x5d\xbf\x6f\x7b\x94\x1d\x51\x9f\x14\x23\xb3\x5a\x7f\xaa\x5a\x72\xf2\xfa\x85\xca\x20\xb0\x86\x43\x4c\x03\xbe\x2c\xbc\x64\x19\x93\x1b\x8e\x92\x37\xdb\xe5\x1f\xb5\x1c\xa6\xe9\xdb\xd1\xc8\x14\xf7\xd6\x70\x10\x3f\x06\x91\x1f\x44\xd3\x96\x43\x18\xf3\xaf\x36\x1b\x83\xf1\xe3\x62\x04\xd8\x95\x1e\x9c\xed\xf4\xea\x4d\x3c\x91\x9e\x18\x97\x22\x4f\x1c\xb6\x0d\xe4\xc8\x85\x88\x6d\x12\xc8\x71\xbc\x89\xb4\xd8\x5e\x56\xbc\x26\x39\xb1\x52\x3a\xa4\x07\xa0\x4b\x62\xca\xef\x26\x5d\x71\x1a\x84\xf4\xc7\x5d\xeb\x99\x84\x98\x79\xca\xcf\x17\xd0\x23\x79\x47\x79\x63\x30\x80\x22\x3c\xee\x40\xd2\x63\xc7\x64\x97\x82\xde\xb5\xc1\xb1\x36\x10\xfa\x7e\x7c\xfb\xef\xbf\x7d\xfe\x6d\xff\x71\x95\xd0\x57\x2f\xe0\x65\x4b\xb2\x99\x3f\x21\x65\x28\xfc\xe0\x2c\x53\x6b\xd1\x0b\x31\x49\xbd\xbf\xf2\x6c\x46\xf9\xdd\xaf\x59\xbc\xd5\xe3\xad\x72\xea\xfc\xb9\x81\xa6\xe5\x58\x8d\x9d\xf9\x09\xee\x60\x03\xaa\x4f\x76\xbb\x19\xf5\x0b\xe0\x86\xb7\xe3\xd3\xfd\x67\xcf\xa6\xff\xcf\xd3\x83\x16\x3a\x88\x24\x5d\xd1\xf6\xdb\xb4\xb1\x6d\xb4\xa5\x3e\xc2\x10\x8c\x9b\x57\x47\x68\xd3\xbe\x3f\x89\x71\xb7\x52\x41\xf1\xf8\x5e\x41\xd1\x48\x68\xbc\x3e\x51\xfe\x56\x88\xeb\x4f\x37\x97\xd6\x37\x21\xbe\xd5\x26\xc2\xa3\x5d\x99\x08\xcb\x2c\x94\x7c\xa5\x35\x26\xd9\x82\x61\x18\x9f\x5b\x30\xb2\x28\x41\x82\x24\xc6\x16\x89\x2d\xf4\xc7\x02\xa3\x24\xb1\xa0\x95\xac\x12\x82\xe6\x90\x04\x9e\x75\x0e\x57\x56\x3c\xb1\xe0\x92\xc4\xec\x01\x0c\xc3\x95\x15\x06\xd1\x29\xab\x2c\x66\x95\x45\xbe\x25\xc0\x55\xac\xc0\x47\x11\x3d\x34\x88\x99\xe8\x22\x74\x1e\xae\x2c\x9e\xfd\xce\xb7\x58\x48\x62\x62\x9d\x07\x64\x16\x2f\x49\xd6\x34\xcb\x9a\x77\xc6\xc1\xa7\x7b\xaa\x1b\xfb\x51\xe1\xfe\x2a\x1f\xdf\xe7\x25\x33\x0c\x4e\x96\x21\xb3\x1d\xd1\xda\x78\x1c\x1f\x6b\x8f\x0e\x55\x31\x29\x59\x3c\x9a\x86\x0d\x15\x11\x3a\x3e\x82\x97\x09\xed\xa3\xe8\xff\xca\x82\x84\xe0\x60\xbc\x24\x28\xb1\xbc\x18\x63\x96\xd0\x8d\x4d\x20\x89\x53\x3b\xa9\x68\x44\xf9\xac\x67\x7d\x99\xc5\x09\x52\xbf\x86\x18\x71\x8b\x2c\xf2\x2d\x38\x85\x41\x94\x10\x3a\xfd\x96\x44\xfc\x47\xbe\x35\xd6\xd6\x66\x42\x57\x63\x06\x89\xd6\x61\x12\x5b\x3e\x3d\x2d\xf3\x20\x42\xd6\x39\x7d\xbb\xc0\xc1\x59\x10\xa2\x29\x9f\xe9\x29\x86\x11\x61\x1d\xe3\xf8\x6a\xd6\xcb\x57\xef\xf8\x84\x5b\x01\xb1\xce\x83\x30\xb4\x96\x21\x09\xe6\x90\xa0\x74\x45\x1a\xcc\xf5\x0c\x67\x5a\x9c\x23\xc3\x86\xce\xc5\x17\xe4\xfe\x66\xf2\x81\x01\x13\xa3\x25\x40\x81\x81\x63\x91\xf7\x40\xc1\x05\x46\x52\xaa\xa2\xc3\x53\x4e\x11\x53\x32\x30\xb3\x64\xd1\x5c\x3f\x6a\x97\x39\xb6\x5c\x81\x3a\x6f\x4b\x55\x94\xe6\x9b\xf2\x21\xd6\x77\xe1\x95\xea\xd0\x36\xf1\xc3\xa8\x3e\xfd\x77\x90\xc2\x5d\xb9\xa6\x72\x43\x6f\x03\x93\xbd\xbc\xde\xcb\xa0\xc6\x4c\x7e\xd0\xcc\x4c\x9e\x53\xab\xec\xd4\x44\xee\xab\x2e\x06\x15\xea\xd1\x4d\xd6\xa3\xb5\x2a\x41\xd5\x24\xd4\xca\x4f\x47\x6d\xdb\xbb\x72\x13\x35\x37\x40\x77\x09\x86\xde\x69\x57\xea\x1a\x44\xcc\x7d\x66\xa6\x2e\x35\x50\xef\x48\xbd\xa0\x6f\x97\xdd\xca\x77\x9a\x92\xf2\x86\xc5\xbb\xe4\xfc\x69\xfc\xcb\x87\x5f\xff\x5a\x2d\xde\x6d\x2a\xcd\x1d\xb5\x47\x1e\x3a\xae\x50\x0f\xb4\xb2\x7a\x6d\xc4\x44\x17\x79\x0e\xce\xc9\xa7\xba\xec\x13\xbe\x68\xd7\xc1\x55\xbf\x94\xfc\x23\xbf\x74\x18\xdb\xe6\xc1\xc8\x62\x40\x9d\x71\x68\x9d\xcf\x02\x6f\x66\x45\xa9\x96\x5d\x5c\x10\xf2\xbe\x38\x0b\x20\xcb\x1b\xa5\xb1\x7a\x8c\x59\x1b\xa3\xb4\x10\xbd\x4d\x82\xa8\x67\xfd\x1a\x85\xc1\x29\xd2\xaf\x69\xc0\x48\xdb\x24\xc0\x09\xc9\xdc\xfe\x22\x4d\xa9\x6f\x9d\x07\x51\x52\xc3\xea\x99\x99\x2c\x71\x06\xca\xdd\x8c\x0d\xb3\xbe\x1d\x7a\xd1\x1d\xe6\x9e\xa2\x9c\x25\xe5\xee\xf1\x4f\x77\x6d\x2f\xdf\x33\x50\xd5\x7e\x86\xff\x95\xce\xdd\x3d\x3b\x55\xe4\x84\x76\xc0\xff\x98\x39\x9d\x5d\x31\x37\x2a\x07\xb2\x0d\x6f\x73\x2b\xc2\xdb\xdf\x8c\x3f\xff\xf4\x7e\xfe\x68\xb2\x9d\xc1\x64\x0b\xec\x85\x52\x48\x04\x03\x50\x30\xb3\xf9\x72\xea\x56\x00\xda\xde\xb5\x91\xa3\x0a\x0a\xab\xfd\x2e\xda\xda\xbd\x92\xe5\x2f\x0a\x50\xb2\xdf\x9d\xc4\x78\x7e\xd3\xbb\xe6\x75\xec\x9f\xa3\x7f\x47\x4b\xf3\xae\x11\xb9\xb1\xb9\xe1\xd3\x63\x34\x6d\x8e\x92\x04\xb2\xd0\x56\x2f\x8c\x13\x81\x98\x3e\x09\xb0\x81\x31\xa6\xb4\x96\x8d\x31\x4f\x90\xc5\xc5\xc0\x33\x39\xc9\x69\xe0\xfb\x8f\xff\x28\xc5\xbe\xcc\xf4\x4f\xc7\x22\x86\xf9\x58\xe0\xbc\x1f\x73\xcf\xbf\xb6\xdc\xb6\xce\x15\x55\x46\x49\x8a\x79\x33\xc4\x68\xd6\x12\x53\xc9\x57\xab\x1e\x32\x6a\x90\xf9\x06\xaa\x3b\x7b\x23\xb0\x69\x46\xb5\x6b\x0c\x40\xfc\x58\x32\xcb\x0f\x5f\xa1\xfd\x3f\x5d\x04\x7e\x19\x16\x75\x99\xc9\x27\xf0\x6d\x39\xbe\x43\x11\x4a\xdc\x4f\x43\x8a\x81\x8e\x57\xfb\x08\x3c\x53\x11\x90\x47\x85\xb0\xe6\x83\x51\x31\x54\x53\x46\x83\x1f\xb6\x86\xae\x36\xad\x46\x5a\xdb\x0e\xc2\x57\xc5\xd2\xb0\x79\xd4\x59\x7b\x0f\x2e\xe4\x9e\xce\xe2\x26\x5f\x2e\x16\x61\xc0\x34\x5b\x9c\x3b\x8b\xc3\x30\x3e\xe7\x6a\x70\xba\x10\x03\x9b\xed\xea\xc3\xa6\x2e\x9b\x75\x7e\x9c\xba\x48\x68\x92\xfe\xb4\x5d\xfa\x34\xdb\xa5\x1a\x58\xb6\xcd\xf9\x4d\xab\x84\x88\x6f\xec\x59\xdb\xef\x03\x7b\xbc\x24\x44\x70\x3c\x8f\x69\x57\x53\xef\x5a\x83\xa3\x99\xec\xdf\x11\x18\xda\x41\xf2\x09\x07\x09\x09\xa2\x14\x71\x9b\x3f\x7d\x1b\x9d\xc1\x30\xe0\x56\x2c\xc5\x10\x2a\x0b\xa4\xd0\xef\xb9\x51\x28\x4d\x2b\x97\xd3\x31\x38\x06\x76\xb2\x1c\xcf\x03\xb6\x0b\x8e\xc1\xf0\xe8\xa9\xba\x41\xc5\xc4\xd8\xbc\xfd\x6c\xd1\xe4\x54\x7f\x86\x67\xa8\x96\x81\x2a\x85\xb1\xcf\x63\x6d\xdb\xe7\x38\x20\xc8\x12\x49\xf1\x46\xba\xf3\xd0\x23\xe1\x3c\xb4\x41\xf0\x75\xf3\x65\x30\x4c\xf2\x66\xf3\xb6\x5c\xf8\x3b\x98\xb7\xda\x13\x60\x1e\x21\xef\x1e\x46\x09\x2a\x5b\x55\x71\x01\x96\xf4\xee\x15\x7f\x5d\x66\xc4\x31\x1c\xa9\xd2\x5b\x40\x3f\x66\x3e\x0a\x51\xb3\x05\xde\x22\xc8\x9e\xde\xdf\x4c\xca\xe8\xfa\x01\x0c\xe3\x69\x4a\xb0\xe4\x6d\xcf\xe8\x14\x46\x2c\x56\x30\x59\x8a\x3f\xce\x99\x3d\x2c\xb6\x44\x17\x99\x64\xfa\x89\xf5\xf3\xc5\x26\xf1\x77\x8d\xc5\xc5\xad\x82\xfb\xf2\xab\x7e\x00\x6c\xb2\x5a\xa0\x2e\x1f\x44\xb6\x15\xb2\x42\x85\xbd\xc0\x83\xd7\x81\x58\x9a\xd2\x2d\xf1\x3a\xad\xb1\x24\x1e\xac\xb8\x7d\x1f\x55\x84\x83\xd5\x4e\x8e\x58\xba\xd6\xaa\xc6\x6d\xae\xc1\x16\x41\xb5\x62\x04\xf3\xd8\x87\x61\x7e\x9b\xc5\x91\x64\x26\x7f\x60\x4e\x0d\xc0\xfe\x01\xe2\x00\xaa\x9c\x4b\x6e\xfe\xd3\x5b\x1f\x10\xbc\x44\x26\xd6\x84\xbb\xb3\xd2\x89\xe1\x7b\xd2\x0a\x22\xeb\xd7\x44\x00\xc2\x6f\xb4\x7f\xae\x21\xaa\x5d\x57\x54\xe8\x1a\xb0\xdc\x30\x2a\xa3\x10\x5b\x06\xd6\x36\x1c\xdb\x36\xc1\xdd\x56\x23\x05\x99\xfa\xbf\x2f\x19\x3d\xb1\x82\xc4\x12\x79\x5a\x42\x36\x03\xcb\x04\xf5\xac\xb7\x13\x46\x86\xbc\x59\x1c\x27\xc8\x4c\x88\x40\x6a\x9a\x1f\x23\x0b\xa3\x79\x7c\x86\x7c\x6b\x82\xe3\x79\x8e\xd5\x92\x3d\x4b\x08\x8e\xa3\x69\xda\xbd\x3e\x28\x1c\x06\x71\x91\x7c\x91\x6c\x4f\xba\x0a\x83\xaa\x41\x57\xad\x54\x15\xc3\x28\xfd\xc8\x7e\x10\xfa\x22\x21\xfa\x1c\x8e\x32\xc5\x51\x29\xf6\xc4\x56\xf3\xce\x29\xad\xe5\xc1\x28\x8a\x09\x9d\xbc\x65\xe4\xc7\x11\xea\xa5\x92\x3e\x77\x3c\xa8\x6b\xf4\xba\x77\xe8\x96\xe1\xdf\xd6\x8e\x6f\x89\x7e\xf1\x56\xf8\x1d\x25\xc0\xaa\xbd\x1a\x1a\x75\xc6\x4b\x79\x8e\x46\x9d\x39\x6e\xc8\xb5\x34\x59\x29\x93\x37\x78\xc3\x75\xdd\x14\xd7\x40\x0a\xbc\x6c\xea\xba\x2a\xd3\x52\xe0\x56\x80\xfd\x43\xa6\xb9\xf8\x21\x9b\x26\x05\xad\xa7\x9f\x5e\x23\xad\x41\x7b\xca\x46\xd9\x07\xb4\xf6\x66\xb1\xd7\x2d\x73\x0f\x14\xb8\xca\x3c\x13\x5c\xae\x07\x4b\xb5\x5e\xc2\x3c\xac\x79\xa6\xaa\x0a\x56\xee\xda\xce\x7c\xd3\x99\x5b\x62\xe0\xa7\xde\x9b\x52\xb0\x57\xa5\x7d\x6e\x66\xe6\xf1\xd3\x42\x69\x23\x05\x1f\x3b\x8a\x25\xb0\x7d\x7b\xfd\x9a\xae\x1e\xdb\x89\xa2\x0d\xf9\x01\xb9\x69\x3d\xdb\xcf\xff\xfa\xc7\xa7\x3f\xc6\xf8\x63\x43\xff\xe1\x62\xca\x1b\xb9\x06\x6c\x59\xc4\xe2\xa5\x13\x9e\x7e\x17\xc5\x24\xf0\xda\xea\x79\xfb\x87\x57\x11\xfa\x7c\x5c\xaf\x69\x32\xab\x97\x8e\xda\xa8\x97\x76\xed\x4f\xac\xc1\xf2\x99\x9c\x8b\x4d\x7a\xaa\xdb\x12\x07\xad\x65\xe5\xba\x8f\x83\xfe\x36\xe3\xa0\x8f\x4d\x5b\xb3\xc4\x1d\xbe\xf9\x71\x68\xb1\xef\xf3\x48\x90\xfa\x6f\x60\x07\xc9\x07\x74\xbe\x83\xe8\xec\x9b\x46\x86\xbc\x55\xa1\xdc\x4f\xd5\x60\x49\x79\xb3\x95\x84\x71\x7f\xca\x5e\xdf\xad\x10\xee\x8a\x20\xee\x3c\x91\x3b\x04\x4f\xb7\x51\x47\xd8\x0d\xc1\x39\x3f\xa0\x73\x21\x49\x16\x04\xad\x16\x4a\x5b\x95\x2e\x3f\xa9\x53\xda\xca\xd4\x5d\x57\x3f\xb8\x37\x7e\x40\xb6\x1a\xdd\x86\xed\xfe\x16\xb4\x9b\xd5\x46\x2a\xdd\x2b\xde\xd0\x2d\x23\x81\xcd\x77\xf2\xb3\xdc\xd6\xdd\x4c\x33\x9f\x77\xe8\x63\x8c\x2b\xa3\xf2\x5d\x42\xaf\xdf\x0a\x82\x93\x7e\xdf\x8c\x2a\xf9\xc4\xa0\x7f\x7a\xfb\xba\x52\x5e\x4c\xbf\xf5\x6b\x94\x0d\x29\xfb\xb0\x58\x75\x85\xe4\x2a\x67\x5d\xa2\x28\xa7\x21\xd3\x8b\x38\x09\xa4\x13\x0c\x3b\x21\x60\x68\xd3\x7e\x8c\xd4\x5e\x01\x9b\xc4\x8b\x6e\x42\x20\x26\xfa\xb6\x52\x74\x16\xe9\x87\x55\xbd\x2f\xd3\xd6\x36\x71\xc0\x29\xdd\x6f\xa5\x1c\x9a\x02\x14\xa4\xe5\xe5\x4c\xed\xe3\x73\x18\xc1\x29\xdb\x0e\x5b\x30\x6c\x62\xb6\x85\x7c\x90\xe6\xd7\x33\x34\x21\x4e\xeb\x6a\x21\xb0\x23\x62\x61\x4d\x6b\x79\xb5\x32\x32\x70\x00\x86\xf6\xcf\xd9\x55\xb0\x89\x9b\xa1\x72\x27\x1c\xa9\x3b\xea\xbd\x3a\x2b\x5b\x9d\xfb\xb4\xa7\x3f\x4a\xf5\xe6\x76\xfd\x2c\xd7\xb2\x31\xcd\xda\x34\x8c\xc7\x30\x54\xa6\x5c\xc6\x10\x25\xd6\x78\x19\x84\xc4\x0a\x22\x12\x8b\x10\xa3\x7f\xfe\x39\x11\xb7\x84\x88\xa6\xe8\x59\xbf\xc7\x4b\xe6\x32\x08\x17\x8b\x70\xc5\x55\x9d\xc9\x02\x79\x01\x0c\x65\x49\x12\x4b\xbf\xc1\x49\x8c\xad\xc9\x32\x0c\x05\xa2\x63\x8f\x77\x60\x91\xaa\x54\xa3\x98\x58\x54\x38\xa6\x54\xc3\x8a\xb1\x50\x90\xd2\x5f\xc0\x1a\x2f\xb9\x6b\xe2\x18\x59\xc1\x34\x8a\x59\x0c\x15\xc7\x88\x64\x2d\x07\xd1\xd4\x0a\x98\xf5\x07\x46\x2b\xd1\x5e\xcf\x7a\x87\x20\x8e\xac\x79\x8c\x91\x15\x44\x56\xbc\xc4\xad\x7d\xee\x74\x7f\xbb\xe9\x32\xf0\x51\x42\x65\x0b\x86\xe8\xf7\x5f\x6c\x82\x82\xa8\x9b\x31\x40\xa3\x0a\x7f\xba\x5a\x3f\x3c\xb1\x46\xa5\x7e\x76\xbb\x70\x83\x34\xe8\x89\x0e\x0c\x85\x36\xa5\xeb\xb5\x14\xdd\x4c\xcb\xa5\x77\x7a\x19\x41\xd3\x09\x78\x46\x3b\x25\x24\x4e\xf5\x97\x5a\x53\xbf\xc1\x30\xf0\xad\xd7\x5a\xd6\xe9\x16\xed\x66\x1e\x65\x36\xb0\x6c\x90\xf7\x4a\x7f\x52\x4c\x0d\xdf\xb8\x67\xaf\x51\xe2\xe1\x60\x51\xe7\x5d\x59\x36\x17\xda\xe7\xc6\x86\x0d\xb5\x96\x3c\x6a\x96\x4a\xb9\x81\x4a\xa5\xd6\x79\xa7\xa5\x76\xe5\x38\x35\x77\xaa\xc9\x95\xb7\xcf\xa9\xac\xe7\x18\x7e\x96\x49\x8f\xb7\xd0\xf9\x46\xe9\xdf\x2e\x14\x06\xf5\x89\x67\xeb\x34\x22\xfd\x67\x74\x9d\x72\x5a\x4e\xe1\x46\xc7\xb4\xd0\xe0\x18\x50\x52\xfb\x84\x71\x9a\x8d\x15\xdb\x57\x00\xe7\xa2\x74\xe4\xfa\x81\x5d\x98\x65\xb8\xe0\x52\x2c\x8e\x85\x9a\x06\x1f\xd8\xff\x8a\x83\x28\x1f\x42\x95\x57\x8d\x67\xb0\x30\x5c\xbf\x2d\x2a\xa2\x9c\x52\x3c\x91\xaa\x73\xd5\xed\x74\x0b\x44\x4f\x4d\x77\xbd\x13\x25\xf8\xad\xf0\x51\x9e\xfe\xe7\xd7\xe3\x97\x8f\x7e\xab\x04\x75\xb9\xd2\x14\x5c\xcf\xae\x04\xe4\xb3\xdf\x50\xd5\x1d\xa8\xd8\x59\xfd\x83\x7a\x4a\xbc\x7b\x15\xf7\xed\x53\x5a\x6b\xae\x51\x87\x57\xab\xb4\xbe\x7a\x95\xf5\xbd\xc2\xba\x10\x4b\x98\x17\x73\xa3\xda\x44\x4f\x87\x07\xd2\x29\xee\xd9\x88\xf3\xaa\xad\x33\x6f\x3d\xdb\x2c\xf3\x96\xda\x3f\x01\xd0\x9c\x5d\x14\x95\xe9\xb7\x9a\x8d\x4c\xba\x4c\x32\x1f\x40\xf9\xa5\xfa\x70\x8b\x14\x56\x4f\xb7\x48\x61\xd5\xb2\xf7\x4f\x4c\xbd\x7f\xb2\x55\xef\x9f\x5c\x4d\xef\x8d\x19\xb8\x34\x92\xf3\x58\xf6\xe0\xd8\xdc\xe9\x6c\x80\xc7\xc5\x0c\x5c\x47\x57\x9a\x64\x2c\x6d\x63\xab\x0c\x5c\x39\xb2\x74\x8b\x2c\x2c\x37\x0d\xf4\x6a\x67\x96\x92\x36\x18\xaf\x37\x14\xfc\x68\xbe\x32\x8f\x15\x5f\xfc\xa2\x5d\xa8\x9d\x7a\xb9\x36\x44\xf2\xc8\x64\x85\xea\x09\x37\x04\x15\x4f\xb5\xaf\x78\x29\xc9\xb7\x99\xd7\x51\xf6\xa4\x81\xe2\x74\xe7\xc9\xb2\x36\x4e\x77\x96\xf7\xbd\xbf\xaa\x74\x67\x42\xb0\x30\x64\x3a\xd3\xa2\xa2\x9a\xa7\x3d\xab\xe6\x20\xef\x93\xa2\x15\x8e\xfc\xee\x92\xa2\x09\x1b\xdf\x5d\xce\x87\x26\xb6\xa3\xd9\x2f\x35\x8e\x32\x97\xc8\x7c\x5a\x34\x2d\xd8\xc6\x4e\xcb\x55\xe0\xf6\x36\x5e\xfe\xe2\xe0\xef\x53\xa6\xed\x22\x65\xda\x36\x24\x6e\x93\x04\x5b\xf2\x0e\xd9\x75\xba\x34\x79\xb1\xdf\xe6\x54\x55\x57\x9b\x2a\xed\xc6\x56\x72\x67\x69\xd2\xd2\x1a\xaf\x3d\x45\x9a\x6c\xb9\x51\x57\xb3\x6e\xde\xa7\x46\xab\xf6\xdd\xaf\x60\x2c\x9f\x56\xdb\x01\xbd\x78\x3e\x87\x91\xcf\x2c\x81\xfb\xd2\x6d\x66\xd4\xc8\xc6\xd7\x32\x29\xda\x22\xef\x3b\x55\x31\x19\x37\x95\x10\x4d\x9d\xac\x77\x6f\x5e\x9e\x7c\x28\xcc\x16\xbb\xb7\x65\x3e\xb9\x6e\x84\xc8\x79\x8c\x4f\x83\x68\xba\xcf\xac\xce\x41\x34\xed\x42\x2f\x34\x58\x51\x77\x02\x5b\xc2\x8c\xb6\xdb\xcc\x5f\x8b\x8d\xdf\x82\x59\xb8\x55\x59\xd2\x6e\x3c\x51\xda\x46\xe9\xd1\x32\x0b\x88\x82\x83\x3f\x25\x45\x84\x8d\x2b\xcb\x9e\xa6\x29\xe3\x76\x98\x41\x4d\x37\x93\x6c\x63\x70\x61\x68\x96\xb7\x03\xdb\xe3\xc7\xe9\xaf\x1f\xff\xf6\xbe\xff\x7a\x07\xd8\x1e\xa9\x51\xa6\x35\xc8\x07\x9d\x0f\x33\xc4\x87\x08\x62\xf8\x81\x59\x9c\x15\x8c\x0f\x45\x3c\x15\xf1\x09\xc7\x12\xd8\x83\xe3\x7c\x1c\xe8\x78\x1f\x7d\x53\x10\x8f\xd1\xba\x90\xaa\xfa\x1e\xb5\x77\xc0\x6b\x6e\xa5\x6f\x89\xb1\x41\x27\xe8\xc6\x10\x36\x76\x10\x2c\xcc\xc5\xaf\x9d\x58\xef\xcd\x02\xca\xdf\x19\xa7\x16\x24\xdc\xd9\x89\x4e\x97\xb5\x4c\x90\xff\xc2\x70\x87\x94\xb1\xc5\x9c\x6c\xff\x1d\xfd\xf3\xcf\x18\x59\x71\x14\xae\x2c\xe6\xf2\x44\x62\x2b\x99\xc5\xe7\x2c\xfb\x90\x88\x25\x13\xd0\xd0\xc8\x5a\xe0\x60\x0e\xf1\xca\xca\x28\x0e\x83\xa8\xa5\xaf\x44\x24\xaa\xf2\x4a\x78\x56\x51\x11\x39\xe5\x15\x59\xcd\xe8\x0c\xe1\x95\xe5\xc1\x04\x09\xbe\x38\x1b\x43\x90\x30\x4f\xaa\x00\xf9\xf5\xc8\x81\x4d\xbd\x19\x44\x54\x2a\xd0\x56\xa5\xad\xcd\xa8\xee\x0e\x6c\x14\xae\xd6\x06\x62\xe4\x49\x76\x2c\x8d\x10\x23\x8c\xa4\xde\x23\x8c\xdc\x2c\xc2\x08\x5d\x04\x46\x6f\xee\xf1\x45\x6e\x3b\xbe\xc8\x93\xea\x3b\xcf\x88\x2f\x52\xbb\xbc\xb7\x02\x5d\xe4\x24\x0e\xd1\x3d\xb6\xc8\x3d\xb6\xc8\x86\xd8\x22\x8d\x31\x45\x2a\xe1\x44\x4e\xd8\xed\x7d\xc7\xc1\x44\xb4\x41\x7c\x1f\x50\x22\x27\x82\xeb\x6a\x09\x24\x42\x3f\xbb\x87\x11\xd9\x70\xce\xef\x61\x44\xee\x61\x44\x2a\x56\xaa\x0a\x46\x64\x03\x77\xe3\x7b\x20\x91\x3b\x0b\x24\xb2\x4b\x08\x11\x45\x05\xb7\xbd\x26\xef\x36\x80\x87\x7c\xec\xff\x67\xff\xd7\xbf\x7b\xbf\x6d\x0f\x1e\xa2\xe1\x86\xb4\x73\x9d\x6e\x0c\xab\xdb\xc6\x75\xfa\x71\xbd\xaa\xcc\xa4\x1f\x7b\x74\xf3\x10\x21\x46\x18\x86\x5b\x8f\x10\xa2\xfa\xe2\x3e\x19\xdd\x03\x84\x7c\x83\xfe\xd6\x4f\x4d\x1b\x73\x6b\x7c\x90\x7b\xc4\x8f\xeb\x46\xfc\xd0\x72\xab\xe7\x54\xa0\x1a\xdc\xc7\x49\x1c\x7e\xab\x58\x1f\xf9\x28\xcf\xad\xd4\x03\xcd\xd0\x3e\x4e\xe2\xb0\x08\xf1\xbe\x19\xab\xd9\xb4\x59\x86\xc3\xd1\xb8\xdd\xbb\x02\x7c\xa1\x5e\x35\x87\x23\x63\xb4\xee\x1d\x01\xbe\x60\x8a\x83\xdb\x00\x7b\xf1\x38\x83\xbd\x90\x7d\x6a\x02\x7a\xf1\xf8\xc6\x40\x2f\x2a\xe2\x56\x39\x77\x6d\x0a\x5a\x6d\xed\x6d\xb1\x79\x58\xea\x2d\x08\x4a\xcd\x7c\x2a\x98\xf0\xc4\xe5\x9e\x42\x14\x69\xd1\x7d\x62\x33\x3f\x87\x4c\xa6\xd9\x5e\x32\xba\x15\x11\xa5\x67\x4f\x5f\x2f\x4f\xff\x71\x14\x5f\x7f\x44\x29\x50\x48\x38\x0f\x2d\xe5\xa7\xb2\x05\xeb\xd0\x5c\x4e\x6a\x12\x62\xca\x79\x84\xfb\xf8\xd2\xfb\xf8\xd2\xef\x4a\xde\xe9\x3f\x1b\xb5\x8d\xc2\xcc\x92\x9a\x3c\xd9\x34\xbe\xb4\x61\xb8\x62\x55\xa4\xe2\x46\xb1\xa4\xf7\xf1\x8c\x39\xd7\x98\x5b\x26\x42\xde\x78\x48\x63\x7a\x05\x7d\x03\xf1\x8c\x06\xc7\x9f\xf6\x22\x43\x93\x50\x46\xd6\xd0\x7d\x1c\xe3\x8e\xe3\x18\x99\xe6\xd6\x10\xc5\xd8\x3c\x70\xf1\x3e\x34\xf1\x0a\x43\x13\x99\xcb\xcf\x5d\x0e\x4c\x64\xfb\xeb\x3e\x2c\xf1\x3e\x2c\x71\xe7\xc1\x6c\xec\x3e\xd8\x75\x4c\x22\xbb\x99\x6f\x73\x80\xd8\xb7\x15\x90\xc8\xd7\x70\x67\xd1\x88\xbc\xba\x6b\x0f\x45\x64\xcd\x36\xea\xa4\xe8\xe0\x7d\x10\xe2\xb5\x04\x21\x72\x7f\xd9\x2b\x09\x41\xc4\x71\x59\x72\xfb\x86\x6b\x76\x9d\xf1\x87\x15\x89\xd2\x39\x53\x3d\x23\xf3\x70\xc7\x01\x86\x2f\x3f\xbd\xb5\x5e\xc7\xde\x56\x73\xf4\x1d\xc4\x18\x36\x08\x30\xbc\x0f\x2f\xd4\xc3\x0b\x77\x11\x4a\xa8\x28\xc7\xb7\xd1\xb1\x8b\x08\xb1\xee\x24\x40\xa1\x9f\x20\x92\x74\x43\x34\x85\x0c\x4a\xe4\x46\x15\xee\x6f\x7f\x85\x4f\xfc\x37\xff\x29\x49\x64\xf4\xf5\x2b\xc4\xd3\x03\x9b\x8b\xcc\x45\x4d\x7a\x2e\x42\x48\x8e\x4d\x90\x19\x43\x08\xc8\x71\x4e\x2b\xa6\x41\xe9\x8b\xc8\x14\x36\x53\x8c\x07\xd6\x62\x17\x0e\xd4\xdc\xcf\xa6\x88\x91\x0a\xb0\xe4\xd4\xd9\xbb\xff\x08\x1c\x70\xe2\xc7\x95\x00\x04\xfd\x41\xf2\xbd\x63\x45\x52\x6d\x72\x1a\xea\x63\xcd\x60\x22\x74\xb4\x9a\x46\xa1\xda\x40\x99\x2c\x60\xa4\x12\xbd\x0a\xa0\x66\x2b\xbb\x71\x83\x68\xb1\x24\xe5\x76\x44\xb8\x24\xf1\x24\xf6\x96\x49\x2a\x55\x17\xe0\x8b\x81\x2d\x0a\x2b\x65\x9b\xe9\x90\x32\x0e\x8f\x4e\x07\x3b\xec\xdb\x5b\x77\x85\x70\x6a\x63\xe8\x07\xf1\x14\xc7\xcb\x85\xb2\x1a\xe5\x93\xff\x85\xed\x3a\xf3\xe4\x97\xb0\xa5\x4f\x0b\x1e\x51\xc5\xbf\x99\x97\x9a\x82\x91\x0f\x6c\x2f\x0c\x0a\x78\xfc\x9b\xda\xb6\xcb\x37\x5f\xb5\x8b\xb5\x71\xcb\xf4\x0b\xea\x92\xc3\x6a\x68\x6c\x53\x8d\x7c\x3b\xf1\x95\x38\x92\xb3\xca\xa6\xff\x50\x72\x02\xdc\xe3\x55\x9c\x5b\x6f\x86\xbc\xd3\xb2\x63\x7b\xa4\xac\x93\x5c\x1f\x3d\xda\x22\xfd\x5e\xe9\xe8\x23\x60\xa7\xf9\xeb\x41\x1e\x2e\x9a\xc5\x4b\x49\xad\x7e\xfa\x09\x8f\xb0\xa2\x1b\x26\x9b\x8d\xc6\xdc\x41\xe5\x45\xd7\xf8\x9b\x92\x4f\xb4\x45\xcd\x34\x8a\x8c\x98\x54\x93\x04\xa6\xec\xf0\x51\x17\xf9\x01\x51\x8c\x3d\x5e\x08\x93\x44\x3d\xe1\xc9\x2a\x22\xf0\x0f\xfa\x57\x7a\xf8\xe3\xe8\x14\xad\x96\x0b\x59\xca\xff\x91\x92\xeb\xe4\x6d\x34\x89\xed\x51\x31\x28\x47\x3d\x45\x27\x4b\xa1\x42\xb6\xb5\x13\x24\x5f\x00\x7b\xe6\x85\x3c\x29\x3d\xfd\x2a\x2d\x5d\xb1\x4a\x69\x9d\x79\x5b\x84\x29\xc0\xe6\xa0\x49\x50\x4d\x46\x71\x0a\xb6\xbd\xfe\x28\x9b\xee\x56\x07\xb2\xe4\x54\xb0\xae\xd7\xf1\xc4\xfd\x76\x89\x0c\xf0\x32\x44\x5d\x96\xb7\x61\x12\x78\x50\x81\x90\x4f\x79\xe4\x19\x0a\x17\xd6\x66\x8c\x72\xe7\xe7\x57\xef\xac\x9f\x58\x44\xb3\x53\xcb\x23\x37\x8a\x70\xec\x97\x30\xb2\x15\x17\x81\x66\x4e\x6a\x7f\x15\x6c\x78\x5e\x4c\x57\x68\xa5\xe7\x4e\xc5\x05\xaa\xdc\x95\xdc\x7b\xa6\x22\x44\x46\xb6\x8d\x34\x1c\x84\xbf\xa3\x7f\xfe\x39\x0c\xad\x29\x5d\x42\x48\x90\x05\xad\x5f\x7f\x7d\xfb\xda\x0a\x26\x3c\xb2\x88\xb1\x3f\x56\x90\x58\x21\x9a\x10\x8b\xa9\xf7\x7a\x25\x5d\x6d\x49\x79\x72\xc5\xeb\x9d\xfb\x85\x63\x38\x67\xac\x3d\xb8\x08\x08\x0c\x83\xff\x20\xc9\x4c\x33\x4e\x3c\x65\xbf\x21\xc6\x90\x32\xc9\x5d\x82\xa1\x77\xda\x95\x3f\x11\x64\x4c\x3d\xe7\xdd\xb9\x1f\x8b\x60\xcb\xbb\x41\xd2\x65\x34\xa8\xcb\x55\x03\x41\x74\x16\x8b\x5d\x9f\x39\xa3\xb7\x66\xb4\xcb\x38\xe4\x9d\x72\xdd\x37\xcd\x6e\x2f\xde\x86\xaf\x57\x9f\xfb\x7f\x33\xb2\xdb\x66\x30\x8e\x5a\xa6\xba\x5f\x62\x3a\x3e\xae\xe5\xa9\x8f\x5a\xf0\xd4\x76\xce\x13\xf0\x11\x78\xdc\xd2\x41\xb8\xe0\xf0\xc7\xa9\x40\x3c\x9d\x1a\x7d\xfd\xea\xf9\xa7\x12\xfe\xe6\x5d\xec\x41\xc9\xed\x17\x79\x99\xcc\xc6\xd4\x9c\x51\x39\xac\x67\x54\x58\x55\xe3\xf8\x8f\x72\x5e\xa5\x8c\x9e\x9d\xa0\x84\xe0\xc0\x23\x9c\x88\xf0\xe4\x41\x24\xb6\xa0\x15\xd2\x71\x28\xa8\x14\xa5\x08\x19\x66\xd0\x0c\x9d\x76\xb1\x49\x91\x89\x84\xa6\x88\x58\x09\x22\x56\x10\x31\x05\xcc\x09\x9c\x10\x2b\x21\x31\x46\x56\x3c\x61\x4f\x78\xd3\xaf\x5f\x31\x8c\x0c\x3f\xe6\x99\x85\xce\x10\x66\x5f\x12\x0c\xa3\x64\x1e\x10\x92\xe5\xd9\x90\xe8\x1a\xaf\x5f\xf1\xbc\x43\x8b\x90\x5e\x83\xfc\x3d\x8c\x56\x56\x4c\x66\x08\x5b\xaf\x5f\x15\xe9\x61\x2b\x4a\x58\x77\x9b\x58\x0c\x52\x00\x12\xd4\x8d\x99\x20\x04\x4d\xfb\xa6\x6c\x1d\x14\x01\xca\xea\x7c\x14\xdf\x9b\x2e\x5c\x59\x01\x6d\x11\x62\x04\xb3\x9d\x97\xcf\x40\xc3\x36\x93\xbc\x8b\x1a\xed\xa5\x2c\xbc\xf4\xa8\x36\x25\x8d\xe1\xbe\xce\xff\xcc\xd3\x8f\x63\xd0\xe7\xb2\x58\x52\x98\x18\xb3\xd9\xe6\xc4\xa8\xbc\xb4\x15\x2c\x20\xee\x15\xa2\x30\xb3\x19\x81\x92\x58\x40\x1a\xcc\x6d\x06\x0c\x94\x9a\x2e\x77\x40\xbc\xe8\xcd\xfe\x84\xff\xf3\x94\xff\xf3\x4c\x80\x0c\x29\x3e\x14\x26\x58\xa1\x46\x33\xa6\xa1\xc8\xd5\x4f\x5a\x21\x61\x67\x6e\xde\x44\x96\xb6\x3b\x30\x73\x0a\xa0\x76\xed\xe4\x55\x32\x24\x9c\x26\xe7\x39\x0f\x19\xbf\xa6\xb0\x18\x69\xc4\x60\x59\xd4\xdb\x0e\x18\x8b\x9d\x70\x14\xb7\x00\x10\xec\xec\xdf\x07\xff\xef\x2f\xe8\xd7\x92\x38\xc2\x6a\x40\x30\x01\x04\xd6\x14\xff\x2b\xbb\xfd\x0f\x4b\x94\x2a\xc7\x45\xdf\x8d\xcd\xac\x7f\xac\x65\xc5\xb3\x5c\x62\x6b\x29\x2c\xdc\x26\x41\xc3\x75\xd5\x66\xfa\xd8\x96\x01\xb8\x35\xd0\x48\x87\x85\x63\xfa\x08\x28\xd9\x22\x8e\x14\xff\x28\x22\xd1\x03\xae\x11\x19\xe9\xb0\x60\xc6\x35\x53\x14\x6d\x69\x81\x54\x31\x68\xf8\x49\xc5\x97\x19\xc6\x4f\x7b\x80\xa4\xfe\xc8\x0c\x90\x74\xb0\x6b\x80\xa4\xc3\x9c\x72\xab\xb1\x1a\x7a\xf7\x08\x49\x87\x8a\xf6\x66\x43\x84\x24\x75\xda\x54\x84\xa4\xcd\xa7\xad\x12\x21\x29\x2f\xd3\xd6\x83\x24\x69\xeb\xaa\x80\x24\x19\x3a\x58\x03\x92\x54\x3c\x59\x3a\x52\xd7\xd3\x82\xf3\xeb\x91\x82\x90\x94\x5f\x5f\x01\xb4\x91\xad\x33\xe0\x30\x7b\xb7\x0b\x31\x89\x01\x8c\x7c\x83\x90\x49\xfd\x51\x0e\x94\x42\x87\x4c\x32\x6c\x8e\x0d\x20\x93\xca\xe1\x29\x1a\x4c\x4e\x3b\xc8\xa4\xe2\xd4\x5c\x03\x44\x45\xf5\xe8\x6f\x05\x0c\x45\x3e\x5c\x4a\x1c\xbd\x8c\x23\xcc\x10\x27\xd8\x71\xdc\x0f\xb2\x8b\x99\xc1\x47\x08\x5b\x6e\x8e\x59\x14\x47\x77\x73\xd6\xb0\x1c\x5b\x62\xaf\x05\x57\x78\x1b\xc0\x25\xfe\xf5\xd7\x3f\x0e\xc2\xc9\xe3\xbf\xec\x18\x5c\x22\xcb\x35\xbd\x21\x63\x59\x09\x46\xd1\x3f\xb8\x0a\x34\x8a\xc6\xc8\xad\x05\xbc\xd6\xc3\x9b\x07\xa4\xe8\xf7\x4d\x95\xdf\x7a\x44\x0a\xd5\xa8\xdf\x97\xa0\x1a\xf7\x90\x14\xdf\x56\x88\xd6\x23\xd3\xd6\xbc\xc7\xa4\xb8\x73\x98\x14\xcf\xd4\xa0\x99\xbc\xf4\xa9\x81\x52\xe4\x80\xed\xbe\x29\x54\x0a\x09\x88\x76\x8d\xa8\x14\x5f\x38\xbf\x72\xfd\xb0\x14\xcd\x1b\xbe\x66\x5c\x8a\x8d\x83\xcd\xb4\x0b\x67\xb4\x09\x2e\x45\xb1\x9e\x27\x4a\x98\xc9\x4b\xe6\x96\x1d\x63\x0e\xd4\xc0\xec\x5e\xf9\xa7\x37\x2c\x1f\x2e\x13\x21\x1c\xbe\x7c\xf5\x8e\x8b\xb5\x1b\x08\x88\x57\x2c\x1e\x96\x29\x07\xf2\x72\xe0\x23\x5d\x0e\xa4\xe7\xd5\x5e\x26\x22\xae\xe9\x71\x51\x0a\xac\xc2\x3b\x35\x88\x40\x87\x95\x41\x3e\x57\x24\xff\x49\x12\x54\x87\xb3\x69\x8f\x24\xc2\x47\xbf\x5f\x2e\xa6\x56\x21\x7b\x6c\x2a\x7d\xe7\x66\xfd\x99\x41\x15\xc3\x37\x69\x0d\xbe\x6c\x65\x27\xea\x70\x29\xf3\x4b\xdf\x54\x21\x54\xb5\xe0\xcf\x40\xff\x80\xce\xe6\x2e\xa5\xde\x22\xb9\x60\x0e\xf4\xfe\x52\x18\x3d\xcd\x9a\x43\xb6\x7b\x77\xa1\x39\xac\x9d\x3c\xdb\x0b\xe3\xa8\xfc\xc4\xbc\x96\xfd\xdc\x56\xf5\xb7\x5b\xfa\xbf\x31\x2e\x91\xba\x10\x87\xd9\x54\x6f\xee\xbb\x29\x3a\x2b\xc5\x5d\x35\x18\x93\x76\x34\x60\x1e\x77\x9b\x6b\x81\x68\xff\x9e\x82\xa1\xfd\x73\xc6\xd0\x8c\x36\x0e\x25\xb4\x4a\xe3\xed\x7e\xe5\xba\xdf\x2a\x77\xb1\x0d\x62\x81\x64\xe7\x7f\x94\xa1\x65\xbb\xe9\x7a\x3d\x02\xf1\xdf\x11\x0f\x92\x5a\x2e\xa6\x98\x0a\x2d\x56\xbc\xc4\xec\xbe\x4b\x56\x09\x41\x73\x6b\xbc\xb2\xa0\x44\x6d\xa6\x77\x23\x89\x2d\x19\x74\x8e\x96\x4c\x22\x54\x33\xda\x05\xde\x8c\x23\x44\x43\xe6\x00\x11\xb1\xcc\x1d\x2b\xe6\xcc\xc0\xf8\xdc\x9e\xf5\x9a\x47\x6f\x9d\xc7\x18\xaf\x80\x85\xce\x10\x2d\x18\x2f\xa7\x33\xd5\x4b\xe3\x1c\x26\xd6\x39\x0e\x08\x41\x91\x74\xa5\x88\x43\xdf\x4a\xc8\x4a\x40\x4c\x07\x89\x95\x90\x20\x0c\xb9\x5f\x42\xcf\xfa\x39\x3e\x47\x67\x08\x03\xeb\x1c\x59\x7e\x6c\x61\xe4\xc5\xf3\x39\x8a\x7c\x31\x2c\xd1\x79\xcc\x6a\x11\xae\x1a\xc2\xc1\x22\x42\xe7\xbc\xde\x9e\xf5\x0e\x41\x1c\x59\x3c\xcf\x09\x9b\x06\xbb\xda\x95\xf1\xb8\xa9\x2b\x63\x77\x1e\x4c\x31\x24\xa8\x2b\x26\x41\x0f\xf5\x31\x39\x28\xd6\x46\x00\x89\x25\xf5\xd5\x98\x28\x75\x4f\xf6\xae\x35\xce\xe7\xe9\xa6\x04\x7e\x33\xbe\xf2\xb6\xe0\x9d\xa9\xbc\xea\x6d\x80\x3c\xd3\x39\x6a\xf5\x67\x53\xf4\xb3\x1c\xf7\x5d\x3e\x9c\xda\xb1\x6a\x13\xf5\x45\x5e\xdc\x37\x3f\x47\x9f\x91\x87\x11\x11\x33\xc4\xfb\x55\x3d\x39\x4f\x81\x9d\xb0\x6f\xf4\xe6\x9a\xd0\xe6\x6c\x5e\x95\x56\xdb\xde\x0d\x46\x0b\xdd\x41\x21\x6e\xa0\xe8\xb1\x58\x72\x67\xe7\x41\x21\x0a\x87\x6f\xc3\xb8\x0c\xf3\xca\x7f\xf6\xe2\x45\xdd\x65\xd9\x62\xe5\xfb\x20\x9f\x92\x82\xce\xae\xf0\x4b\x1c\x01\x3b\x14\xde\x30\xd3\x30\x1e\xc3\x50\xb5\xe9\x36\x99\xdd\xa6\x38\xe4\xbb\x82\xfa\x2b\xf7\x9d\xf8\xee\xd1\xfe\x14\x8c\xbf\x32\x73\x15\xf7\xc1\x4e\x0d\x5c\x44\x9c\xe5\x34\x46\x91\x1b\xbb\xb2\x58\xc9\x2b\xc3\x0a\x54\x6c\x54\x3b\x70\x80\xba\x15\x68\x81\xfd\x93\x4f\xbf\x2f\xfe\xe6\xfd\xb4\x43\xb4\xc0\x94\xf1\xbf\x15\x06\xac\xc3\xa6\xa9\x07\x6d\x63\x0c\xce\xf7\x8c\x13\xf8\x38\x6f\x08\xbc\xc7\x09\xfc\xa6\x8c\x50\x87\x2a\x13\xa1\x6e\xfa\x72\x9c\xc0\xc3\x03\xe1\xdc\xd3\x7f\x36\x92\x70\x5f\x5f\x82\x39\x1a\xf8\xc8\x00\x17\x78\x34\x2a\xe0\x53\x1d\x66\xdf\x6f\x06\x17\xa8\x74\x53\x66\xbb\x2d\x47\x0d\x6c\x34\xa6\x14\x1e\x50\xf1\x29\xec\xab\x0f\x55\x48\x40\x03\x7c\x60\xd5\x28\x9f\xb6\xc4\x03\x2c\x1b\x6a\x13\xcc\x43\xed\xb8\x6a\x19\x24\x4d\x98\x87\x4a\x16\xbc\x02\xe6\xe1\x71\xab\x31\x3e\xda\x08\xf3\xf0\xf8\x1e\xf3\xf0\x0a\x31\x0f\xa5\xb1\xf1\x4e\x81\x1e\xe6\x9d\x67\xab\x9c\x7a\xdb\x08\x2d\x4d\xb4\x3b\xba\x09\xf7\xbb\x01\x3e\x7c\x6c\x30\xd9\x5d\x05\xf0\x21\x67\xed\xb7\x44\x3e\xec\x37\xa3\x47\xdf\x36\xf2\xa1\x79\xed\x64\x8a\x93\x0d\xd2\x78\x6b\x1d\xdd\xad\xca\x3e\xa3\x56\x4f\x76\xa5\xae\xdf\x48\x55\xdf\x02\xaf\x48\xed\xf0\x0e\x54\xf4\x46\xf5\x7c\xa9\x26\xfe\x33\xd7\xc4\x93\x98\x6b\xe2\x79\x6a\x6d\x4a\x59\x18\x0e\xd6\xc4\xa0\x88\x67\xb8\x6d\x1e\x8c\x18\x38\x1a\xcf\x9d\xad\xea\xe0\x19\x40\xd4\x3c\xc6\xc8\x82\xe3\x78\x49\x78\x85\x8c\x85\x48\x58\x5c\xe2\x8c\x36\x12\xcb\x8e\x58\x5c\xee\x96\x7a\xf3\x66\xba\xf1\x83\xdb\xac\x1b\xdf\x76\x47\x14\x8b\x3d\x69\xe5\xd7\xab\x9c\xac\x1d\x41\x94\x0a\xe5\x47\x15\x46\x69\xff\x76\x63\x94\xf2\xab\xa0\x24\x19\xa7\x50\xed\xfc\x10\x47\xcb\x04\x69\xb0\xa5\xec\xef\x30\x9e\xc6\x0c\x21\x8b\xe7\xb0\x8d\xca\xd0\x4c\x75\x96\x6f\x99\x30\xdd\x05\x91\x8e\x3b\x9a\xef\xd6\x32\x41\x05\xb9\xe5\x59\x11\x06\x55\x7f\x27\xfa\x61\x7c\x27\xfb\x75\x8f\x9e\x7a\x7b\xd1\x53\xb7\x61\x7b\x36\x41\xde\x14\x14\x75\xc7\xf0\xa9\xf4\xca\xe0\x8c\xfe\x6d\xc6\xb7\xbc\x5a\x0c\xd5\x1b\x5a\xc9\x9d\x81\xa8\x8a\xfa\xae\x1d\x45\x95\xb7\xdb\xac\x9b\xa2\x8b\x37\x87\xa3\xda\x82\x56\xde\x35\xbc\xc9\x2b\xb4\xba\x98\xc3\x87\x0a\x71\xe5\xdc\xba\xd2\x1e\x81\xb2\x68\xad\xc9\x61\x52\x5e\x01\x1a\xa5\xd4\xf8\xed\x00\x94\x52\x35\xc2\x6c\x68\xcc\x09\x98\xe0\x16\xc4\xb7\x24\x6c\x09\x3d\xed\x27\x3f\xfe\xf8\xa4\x69\xd8\x92\x08\x4e\xc2\x08\xfa\x1f\xa3\x70\xd5\xd2\x5a\xd3\x82\xbb\x6c\x6e\xac\x79\x52\x6f\xab\x49\xe7\x3c\x1f\x70\x74\x74\xf3\xf1\x46\x8f\x4d\x75\xa7\x1d\xfe\x7a\x4b\x03\x8f\x72\x57\xf9\xf5\xd9\x47\x1a\x10\xbf\x6b\x08\xc4\x39\x50\xc6\x93\x05\xce\x14\x23\xfb\x15\x78\xd5\x74\x49\xed\x51\x3e\xb6\xfd\xe9\x46\xc1\xce\x66\x25\x76\x5b\xe6\xbe\x09\x2f\x76\xe5\xa1\x33\x76\xd3\xc0\x99\xbe\xd0\xba\x66\x44\xb4\x24\x6e\xe6\xad\x5a\xe0\x9b\x8d\x9d\xd1\x3d\x79\x8e\x37\x81\xae\xd0\x43\x71\x8e\xb2\x14\x97\x1b\xf3\xbd\x4d\xad\x0d\x2c\x2e\xe6\x6d\x76\x2a\x76\x10\x94\xd3\xb4\xe9\x0f\xe8\xbc\x65\xcb\x46\xc7\xac\x5d\x75\xe7\xb7\x60\x93\xfe\x5c\x67\x94\xd0\x76\x89\x76\x84\x0e\x27\xbb\x85\x85\x03\x13\x6f\x84\x52\x97\x98\xf2\x12\x42\x65\x95\xa1\x30\x65\xc0\x4b\x1a\x1e\x13\xad\x4d\x82\x6f\xa4\x1a\xac\x2c\x4a\x5f\xb9\x51\x4a\x42\x23\x2b\xee\xe6\xdc\xa5\xae\xd8\x7a\x18\xfa\x1a\x7b\xf5\x25\x66\x55\x2b\x44\xa8\x27\xbd\x72\x8a\x6c\x45\x89\xd7\x47\xd1\x79\xc3\xa0\xf1\xb9\x12\x1f\xae\x16\xb8\xf5\xbb\xf0\xdc\x2a\x42\x64\x4e\x34\x01\x41\x03\xb8\xac\x90\x05\x18\x33\xc1\x25\x01\x0d\xbd\xaa\x35\x1f\x9f\xe3\xbf\xb7\xe7\xe2\x6f\x85\x47\xd6\xd1\xf9\xdf\xde\x7d\x86\x33\x52\xcd\xc6\xc3\x45\x50\xe5\x8e\xc5\x18\x15\x9c\xf7\xcb\x62\x4a\xd7\x96\x5e\x59\x87\x57\xc1\xe8\x3f\x6b\xc1\xe8\x2b\x8e\x59\x4f\xbf\x67\xbf\xac\xef\x99\x4b\x3f\xcc\xc5\x8a\xd5\x3b\xf5\x88\x1c\xa8\xc2\x81\xe7\x25\x3b\x01\xad\x53\x9a\x36\xf4\xde\xc9\x3b\xee\x28\x1d\xe4\xaa\xb4\x4a\x27\xa5\x46\xc3\x49\xbd\x75\x9e\x98\xd2\x96\x3e\xa9\xf5\x51\xda\x41\xe2\x56\xa3\x8f\x52\x79\xe7\xeb\x5d\x94\xbe\xef\xb4\xac\x57\x20\xdd\xed\x5c\x48\xd9\x84\x03\x56\xc5\xb5\x62\xfc\x89\x0e\xaa\xdb\xcf\xa5\x47\xc8\xa9\xee\x35\xa7\x7e\x8b\xc4\x04\x56\x05\xae\x56\xbd\xc8\x01\xde\xda\x93\x98\x1b\x04\x99\xd7\x4c\x1e\x3f\xf9\xee\x38\x46\x99\x64\xe7\x1d\x3b\x47\x1d\x15\xc4\xf4\x6f\xdc\x37\xea\x46\xdc\xa3\x32\x79\xea\x1b\x49\x0e\x7b\xcb\xc4\x56\xc6\x92\x4a\x9e\x58\x4e\x6b\x10\x9d\x32\x9f\x03\xe1\x80\xa1\x27\x48\xad\xe0\x53\x29\x77\x9a\x71\xab\xd9\xd2\xdd\x1a\x3e\x55\x51\x3a\xf3\xa4\x24\x6d\x42\x2b\x72\x33\x77\x05\x6b\x92\x5f\x97\xed\x9d\x62\xb4\xe1\x5e\x45\xf2\x5e\xab\xe0\x1b\xb6\x33\xe7\x98\x2a\x62\x60\x76\x92\xd1\xf3\xf8\x3e\xc9\x7b\xbe\x3c\x56\x7c\x57\x36\x1b\x69\x7e\xbc\x4f\xe9\x78\x97\x09\x89\xe7\x27\x28\x89\x97\xd8\x43\x1f\x44\x80\xcf\xa8\x34\x36\xa3\xbe\xc6\x2f\x3c\x60\xb7\x79\x15\x75\xd1\xc8\x75\xa5\x1b\x85\xe6\x3f\xd9\x91\x8f\x8d\x75\xe3\x7e\x36\xd6\x75\xf8\xda\x58\xb7\xd0\xdf\xc6\xe2\x9e\x1a\x19\xc7\xb2\x13\xbf\x1b\x4b\xf7\xbd\xc9\xd8\xdc\x96\x3e\x11\x56\x9d\x5f\x84\xd5\x76\xf3\x36\x5c\xe8\x6d\xfc\x70\xac\xdb\xe7\x8b\x53\x5c\xe5\x9d\xf9\xe4\x28\x75\x5e\x89\x5f\x8e\x55\xe3\x9b\x93\xb5\xdf\xa8\xcb\x6a\x77\xdb\xfb\xe8\xdc\xd8\x7e\xdc\x32\xef\xb1\x55\x34\x36\xb6\xcc\x7d\x6c\xd5\x4b\x3f\xfd\x9a\x24\x66\x69\x02\x64\xc5\x24\x3c\x6a\xe4\xba\xdc\x32\x03\x72\x50\x34\x82\xd6\x4c\x4b\xb3\xbc\x86\x1b\xa6\x43\xde\x68\xea\xde\xbd\x79\x79\xf2\xa1\x30\x81\x8c\xe5\x99\x22\x42\x82\x68\xca\xa1\x19\x90\x4f\x1f\x47\xc8\x23\x3b\xce\x92\xcc\x7c\xd1\x77\x31\x7f\x2d\x8f\x43\x4b\x56\x64\x0b\xb7\xb8\x27\x77\xc3\x2f\xee\xc6\x5d\xe3\xb6\x4c\xc6\x3c\x61\x99\x04\xbb\xd1\x72\x3e\xe6\x46\x96\x9c\x6b\x9c\xe6\xed\x86\xd1\x04\xa3\x64\xd6\x95\x96\x9b\x62\xaa\xe6\x8d\x5c\xe1\x32\xcd\xf2\x76\xce\x70\x79\xf3\xd7\x86\x56\xb4\xd3\xb3\x5b\xe1\x03\xf7\xf8\x43\xfc\xe9\xfc\x1f\x87\x8f\xab\x8d\x67\x09\xa2\x7b\x82\xe5\x0d\xa2\xbb\x03\x45\xe4\x17\xb4\x6a\x05\xe9\x9d\x22\x79\xd3\x42\x74\x15\x32\xcf\x1a\xe6\xf3\xe5\xa3\x3f\x5a\x1a\xda\x0e\x8f\x5a\xd8\x97\x32\x9e\x8b\x05\x2d\xdb\xfb\x76\x0b\x9d\x74\xee\x63\xa3\x6e\x3e\x4b\x95\x0b\xb4\x64\xd3\x07\xa0\x9b\x29\x6d\xfb\x4f\x4c\x5a\x8c\x53\xb4\x92\xa2\xe8\xa1\x11\x6f\xc6\xf8\x6e\xe7\x26\xc6\x06\xb8\x0f\xa7\x67\xfb\x7f\xba\x38\x45\xab\xb5\x96\xda\xae\xde\x8b\x90\x8d\xf0\xea\xdc\x08\xd5\x94\x40\x87\x32\x71\xcc\xe1\x51\x96\xc4\x25\xbd\x3e\xed\x62\x55\x7c\xf6\x6f\xa5\x8b\x61\x4b\xd3\xe5\xf1\xb7\x61\xba\xec\x3f\x2d\x75\x1a\xd9\x0e\xe9\xfb\x78\x43\x83\xd4\xb6\xe6\xa8\xe6\x53\xb6\xb1\xb7\xa1\x5d\xe7\x69\x68\x17\xbd\x0c\x4b\xf4\x97\x50\x57\x2c\xd2\x3b\x5c\xa5\x12\x7d\x69\xdf\x38\x3d\xeb\x49\xaa\xdd\xe6\xc0\xa8\xec\xd8\x2f\x68\x65\xed\x5b\xbf\xd1\x0b\x2c\xd9\x8c\xfb\x2a\xc1\x00\x7b\x52\xb4\x6b\xa7\x6a\xf9\x4d\xc8\x68\xc9\x05\x90\x92\xf3\xdd\x54\xad\xdd\x27\x8f\x8a\x3f\x54\x7c\xda\x36\x0d\x19\xe6\x44\x5a\x0f\xfb\xfd\x9d\xd8\x66\x1a\xed\xaf\x4d\x76\xd8\x24\x0e\xf9\x8d\xa5\x83\x13\xd9\xf9\x8c\x15\xda\x85\xab\xda\x22\x24\xa0\x73\x5f\xbd\x49\x15\x98\x5f\xbb\x24\xff\xfe\xa6\xfa\xee\x3a\x2c\xe5\x16\x21\x8c\xed\x71\x72\xfb\x7d\x20\xd0\xa6\x0b\x6f\x0e\x5a\x46\xe1\x1a\x24\xba\x9d\x5d\x0c\x3b\xc6\xfa\x30\x1f\xfb\x43\xe9\xd6\xfb\x14\x0c\xed\x5f\x24\x87\x95\x23\x09\xda\x3b\x7a\x8c\xeb\x4e\x57\x43\xa5\x9b\xdd\xc0\xf4\x0f\xec\x1f\x30\x8a\x7c\x2e\x90\x73\x87\x60\x85\x1e\xda\x80\x49\x59\x55\xd1\xb0\xaa\x37\xc0\xd3\xda\x01\x6d\xec\x59\xdc\x7e\x2c\x1f\xd0\xb9\x3e\x14\x82\x97\x85\x91\x34\xd1\xb8\x5d\xe5\x26\x6c\x69\x8a\x33\xec\x33\x3e\xdb\x9f\x51\x92\x48\x2d\x56\x1b\xa2\x69\x57\xc3\x47\x9c\x43\x1c\x05\x51\x6b\xe8\xf7\x6c\xb1\x9e\xed\x02\x8e\xa1\x4c\x83\x5d\xa0\x7a\x07\x54\x72\xc3\x31\xed\xb0\x82\xda\xc0\xc7\xa0\x61\x0a\x58\x5f\x66\x41\x62\xfd\xf2\x9b\x35\x83\x09\x4f\x37\x7d\x6a\x25\x7c\x0a\x7b\xd6\xef\x02\x1e\x19\xb1\xc3\xf0\xdb\x3f\xff\x9c\x58\xe7\x01\x99\x69\xa5\x12\x60\x8d\x97\xc4\x3a\x47\x0a\x92\xb1\x1f\x07\xd1\xd4\x4a\x62\x5e\xda\x83\x18\x31\x35\x70\x14\x93\xec\x15\x24\x16\x0c\xc3\x9e\xf5\x96\x70\xd5\x30\x9a\x42\x12\x9c\xa1\x70\x65\x05\xf3\x05\xf4\x38\xd2\x03\xbd\x99\xce\x90\x15\xc5\x3e\xb2\x02\x42\xdb\x87\x49\x12\x7b\x01\x4b\x2b\x4d\x2b\xef\x59\x9f\x11\xb2\xc6\x28\x8c\xcf\xad\x49\x8c\x39\x52\x84\x8f\x08\x0c\xc2\xc4\x8a\x39\x1c\xf3\x3b\xda\x5b\xb1\x2d\x18\x66\x44\x82\x50\x9d\xee\xef\x51\xb5\xd6\x34\x88\x08\xc2\x11\x0c\x93\x7d\x39\x0b\x3b\x04\x83\x88\x97\xd8\x2a\x05\x84\xc8\x46\x19\x44\x5c\x89\x43\x57\xaa\x89\x23\xd1\x86\xce\x0e\xcf\x1a\x5f\x54\x79\x31\x49\x68\x46\x4f\xcf\x74\x17\xfb\x76\x6e\xf5\xfc\x05\x23\x0c\xe2\x8c\x57\x48\x9f\x5b\xba\xd6\x6b\xd7\xd5\x61\x09\x2b\x99\x79\xa7\xf4\x4b\x18\x6f\x63\x89\x8c\x71\x2a\x5e\x6b\xf2\x61\x8e\x22\x9b\xa9\x9c\xe1\x36\xcd\x93\xbc\xcd\x28\x1f\xd3\x48\x70\xe3\xb8\xa6\x91\xe0\x50\x15\x45\x1c\xbd\x7a\xed\x84\x3c\x1b\x74\xfd\xbb\xa7\x68\x55\xc8\xb0\x76\x93\x01\x8f\x85\xa9\x1b\x15\x56\xf8\xb8\xe8\x7f\x74\x54\xe3\x7f\x24\xc5\xd9\xb2\x18\x8a\x12\x3b\x73\x19\x43\x3e\x3c\x4c\x89\xc6\x0c\x85\x0b\x71\xfb\x70\x0e\x9d\x25\x89\xe4\x64\xc8\x2e\x51\x82\x6d\x46\xc5\xfe\x4b\xfc\xea\xfa\x28\x09\xa6\x51\xfa\x81\xe0\x1a\xda\xdd\x58\x2a\xf1\x6d\x4f\x8c\x2a\xc5\x49\x9e\x22\xb7\x24\x42\xac\x39\x52\x27\xe7\x49\x78\x0f\xcd\x94\x4a\xf7\xab\x4a\xbd\x70\x8e\x99\xdf\x0e\x43\xf5\x87\xd2\x55\x65\xb3\xd8\xad\x76\xb6\x87\x0d\x42\x65\x18\x54\x32\x78\xba\xb5\x6d\xe2\xb8\x2e\xa4\xc7\x38\xc0\x12\x11\xa8\x89\x1d\x83\x9f\xce\x9c\x3d\x22\x67\xd5\xe0\xe6\x08\x2f\x8e\x3c\x48\xa4\x11\x23\x44\x13\xd2\x25\x38\x60\x79\x45\x7d\x16\x71\x1f\x72\x75\x37\x5c\x2c\x10\x0b\xc1\xff\x57\x1c\xe8\x36\x11\x66\xf8\xe8\x12\x0c\xbd\xd3\x2e\xc4\x18\xae\x68\xdd\x90\xd9\x51\xa4\xed\x22\x44\xba\x05\x83\x55\x94\x05\x63\xf1\x7a\xd8\x2b\xcd\x3a\x42\x70\x10\x4d\xbb\x28\xf2\x93\x2e\x65\x5a\xda\x99\x37\x84\x5d\x62\x73\xab\xc6\xad\x88\x09\xfa\xe5\x6f\x09\x22\x4f\xe2\x7f\x6c\x8a\xd2\x2c\x98\x80\xba\xf8\x20\x83\x11\x03\xd8\x70\xc2\x4b\xa6\x26\x8f\xfc\x1f\x2d\xed\x1c\xc7\x9b\x05\x14\xb5\xb8\x5b\x0f\x36\x53\xfd\x3f\xbb\x05\xba\xff\x43\x63\x5e\x48\x61\x52\x49\xcd\x3c\xa6\xeb\xf6\x51\xf1\xba\x4d\x6d\x07\x8f\x5b\xdf\xb7\x2d\xec\x2c\x8d\x66\x3b\xf9\x46\xa6\xfb\x0e\xda\x51\xae\x25\x04\x4c\xeb\x59\x75\x0e\xb8\x44\x38\x77\x6c\x14\x07\x36\x2a\xc4\x0f\x55\x20\x92\x1f\x6f\x99\x1a\xb7\xa8\xd6\x10\xc9\xd8\xe8\xef\x49\xe0\xf1\x7c\x83\xcb\x14\x7b\x92\xe7\x11\x3b\x54\x42\x86\x13\x12\x78\xa7\x6c\x07\x73\xf6\x6f\xb4\x1b\xbd\x48\x4e\x91\x75\xbc\xbb\x5c\x58\xb5\xea\x8f\x07\x25\xf2\x71\xe3\x3d\x62\xec\xfd\x4e\x92\x61\x35\x51\xef\x58\xcc\xf5\x8e\xeb\x6c\x62\x6c\xf1\x7b\xd1\x8a\x27\x3c\x27\xd5\x2f\xbf\xb1\x84\x54\x9c\x5f\xf5\x8b\x99\x95\x76\x31\x76\x83\x4b\x4a\x1d\x5f\x68\xd0\x69\x6e\x72\x1c\x8e\x6e\xfd\x71\xd8\x08\xb7\x26\xb7\x9d\x8e\xae\xe3\x30\xbc\xa1\x1d\xdd\xfd\x51\x38\xba\xee\xa3\xf0\x7b\xbc\xb4\xa2\xd8\x0a\xe3\x68\x8a\x70\xde\xb9\x54\x1c\x89\x6b\x3b\x06\x47\xed\x8f\xc1\x1d\x24\xd6\x87\x77\x9a\x58\x1f\x5e\xf7\x0e\x7d\x19\x59\x8c\x2a\x30\xc2\x8c\x11\x59\xe2\x08\xf9\xd6\xf9\x2c\x08\x13\x62\x51\xce\x94\x3b\x79\x07\x89\x45\x79\x55\x60\x09\x6f\x3b\xb6\x7f\xf1\xca\x82\x53\x18\x44\xd7\xb6\x83\xcd\xb9\x71\x5b\x2b\x32\x4a\xeb\xef\x5f\x77\xd8\xfd\xb3\x9c\xe7\x41\x7d\xa0\xfa\xa1\x0c\xda\x3e\x7c\x3a\x02\xf6\x2f\x41\xe4\x1b\xa3\xee\xab\xa4\x95\x0d\xa3\xee\xd5\xfe\x31\x9c\xc0\xf6\x7d\x97\x3d\x78\x92\xc7\x74\xe3\xcf\x6a\x62\xec\xab\xc6\xb4\x41\x8c\xbd\x0c\x43\x3f\x7c\xbc\x71\x00\xba\xb5\x83\xe8\xf3\x12\xe6\x7b\x94\x85\x77\xfc\x52\x10\x97\x36\xd1\x27\x5e\x11\x6c\x99\x5d\x0f\x5a\x66\x37\x85\x2c\x3b\x48\x0d\x12\x06\xa8\x32\xd5\xfb\xc7\x36\x00\x95\x65\xf3\xa8\x3b\xc3\x1c\x97\xfe\xe8\x73\x7f\xcb\xc3\x02\xbe\x60\xc5\xa4\x6f\x9d\xe0\x6f\x83\xc9\x28\xba\xb5\x1c\xe5\xdd\x5a\x0e\x8b\xe3\xd2\xbc\x5c\x84\x1b\x8b\xea\xd7\xd2\x7c\xc8\xa5\x5e\x2f\x0a\xca\x00\xcf\xc8\x6d\x58\x14\x53\xba\xeb\x46\xa6\xfb\x0d\xf4\xc8\x26\xaf\x94\x9b\xc3\x9d\x33\x0a\x0f\x0d\xcf\x73\x8b\x68\x2d\xbb\x21\x6e\x84\xea\x62\xb1\x0b\x00\xb9\xc6\x2d\xab\xfe\x55\xba\x0b\x4a\xdf\x68\xdb\xdc\xe0\x14\x6e\xe0\x2c\x52\xc1\xa3\xd8\xb7\x07\xd1\x62\xe3\xbc\x33\x87\x26\xbf\xc3\xc7\x57\x80\xac\x70\x7a\xb6\x2d\xa4\xc2\x51\xa3\x1b\xfe\xe8\x8e\x65\x9d\xd9\x18\x8b\x44\x5b\xb9\xa7\x0a\x18\xc9\xe9\x59\x3b\x14\x92\xad\x99\x8a\x16\x4a\x8b\xba\xfc\x25\xfc\x1e\x13\xee\xf5\x40\xef\xc3\xee\x71\x4e\xea\xc5\xd8\x66\xfd\xc5\x71\x4c\xba\x57\x89\xc6\x72\x4b\x53\x20\xe5\x4e\x7a\x13\x70\x0f\x4e\x2b\x4b\x50\x3e\x1a\x1a\x8c\xda\xd9\x2e\x76\x6f\xb5\x50\x01\x3e\x4e\xcf\x84\x9d\x82\x01\x5b\x1c\xf6\xbf\x6d\x7c\x0f\x3a\xda\x2a\x60\x0f\x41\x4f\x1f\x6f\x0b\xec\xf1\xf4\x6a\x81\x3d\x4e\xcf\x4a\x10\x3d\x52\xf3\x6c\x0e\xdb\xe3\x69\x1e\xdb\xe3\xd1\x28\x05\xa9\x50\x21\x3e\x2a\x60\x33\x5a\xc6\x9e\xaa\x33\x71\x0f\x83\xb1\x6b\x18\x8c\xad\xb8\x9e\x4d\x11\x12\x7e\xd9\xff\xcd\x5a\xc0\x00\x5f\x09\x0c\xc6\x2f\x68\xb5\xcf\x78\xf6\xbb\x82\x3a\x70\xf5\x28\x18\x37\xbc\xc8\x3b\x43\xc1\xc8\xaa\xbc\x32\x10\x8c\xdf\xe3\xa5\x84\xc0\xe0\xbd\x88\x56\x59\xb3\x8d\x3a\xaa\x74\xf2\x1e\xfa\x62\xa7\xd0\x17\xcc\x85\xb7\xc2\xfd\x11\x4e\x51\x44\xf6\x4f\xcf\xae\x08\xf0\xe2\x97\xfd\xdf\x6a\x97\xa6\xc1\xea\x99\x27\x6a\xb7\x48\x17\xc5\x99\x6a\x81\x74\xb1\xab\x09\xfc\x8e\x40\x2e\xca\x50\xbf\x1a\x87\x59\x36\x41\xcd\x68\x50\x59\x6b\xfd\x1f\x43\xb8\x00\x8f\x6f\x03\xc6\x85\x86\xda\xce\xdd\x31\x99\xe7\x67\x19\xf6\x85\x74\xe1\xc4\xe8\x0c\x61\x96\x99\xd1\xc7\x31\x65\xd1\x08\x3c\x45\xb5\x5e\xa2\x66\xb7\x50\xd6\x2a\x73\x1b\xe5\xf8\x19\x0d\x50\x33\x54\x5b\xae\x09\x55\x3e\x65\xa4\xf3\x89\xa2\x5a\xc3\x62\x48\xcf\xcf\x0d\x1d\x47\xa3\xd8\x47\xb7\x04\x4f\xfe\xd1\xc9\x8f\x7f\xfb\xc7\xcf\x3f\x87\x35\xbe\xa3\x48\xf8\x8e\xd6\x00\xcb\xa7\xe5\x14\xa9\xae\x9d\x03\x68\x63\x29\xad\x89\x0b\xa8\xc2\x6b\x3d\xad\x17\xe2\x65\xe7\x15\xb5\xee\x4d\x8a\xf1\x1b\x39\x13\x36\x70\xc9\x6c\x30\x13\x6c\x7f\xde\xed\x89\xb8\x59\xaf\xca\xa3\x6f\x04\x9d\x22\x87\xd9\x57\x6f\x24\xd7\x51\xd9\x3f\x33\x07\xb3\xd6\xc0\xfa\x0d\xf1\xd8\xf3\x26\xfe\x27\xaa\xb3\x0e\xf3\x6c\xab\x02\xd6\x6f\x34\x9c\x74\x34\x8a\x9a\xbf\xdf\x57\x1e\x6e\x01\xac\x5f\x63\x13\xa8\x04\xd6\x2f\xef\xbc\x11\x58\x5f\x33\x29\xa7\x99\xf0\x0f\xcc\x7d\xce\xc6\x77\x50\x00\xd6\x6f\x37\xc2\x1a\x20\x69\x33\xae\xfe\x33\x15\x56\xff\x48\x4b\xbb\x76\x63\x5e\x0e\x1a\x0d\xb8\xc6\x68\x7f\x9d\x1f\x6f\x94\xf0\x8a\x51\xee\x16\xd0\xfa\x47\x26\x15\x84\x16\x48\x5f\x09\xad\x5f\xf5\xf8\x8e\x1b\x21\xd5\x43\x73\xbc\x53\x1b\x64\x5e\xf3\x4b\xaf\xdb\x5b\x08\xed\x7e\xac\x00\x62\xdf\x90\x1d\x72\x07\xa6\x9f\xed\xed\x0b\x74\x79\xec\x34\x2a\x51\xb3\x30\x3c\xd2\xa0\xc3\x37\xb0\x30\x5c\x91\x75\xc1\xb0\xbf\xcc\xb6\x05\xc1\xf3\x96\x59\x14\x9e\x54\xd8\x0f\x5a\xb8\x42\xee\xda\x6e\x70\xb3\x36\x83\x2b\xb7\x17\x34\xb0\x15\x6c\x43\x9c\x36\x49\x6c\xce\x24\x82\x5d\x67\xa8\x67\x97\xd5\xf7\x96\x9c\xbe\x38\x23\x55\x60\xcf\x18\x4d\x83\x84\x20\x8c\x7c\xbe\x04\x8d\xd4\xde\x7c\xb1\x84\xca\xfb\xaa\x26\x70\x0b\x4f\xe8\x86\x8a\x37\x93\x26\xef\x2a\x14\x6f\x4c\xed\x06\x9e\xb4\x54\xbc\x99\x8a\x1c\xb5\x54\xce\x19\xdd\xb8\x37\x87\xa0\xcd\x03\xcf\x4e\xd3\x90\xed\xff\x9f\xbd\x37\x5f\x6f\xdb\x46\xfb\x40\xff\xf7\x55\x30\xfc\xfa\xb9\xe4\x84\xa2\x25\x2f\x59\xd4\x61\x52\xd7\x71\x27\x9e\x26\x4e\x26\x76\x67\xf9\x34\x3a\x29\x2d\xc2\x16\x1b\x0a\x54\x41\x28\x8e\x47\xd6\xbd\x9c\x6b\x39\x57\x76\x1e\x6c\x24\x40\x82\x9b\x16\xdb\xed\x64\x9e\x67\x1a\x99\x2b\x00\x02\x2f\xde\xe5\xf7\xfe\xde\xd2\x62\xeb\x4b\x91\xcb\x66\xd6\xd5\x6a\xe4\xb2\x92\x1b\x6c\x25\x47\x5a\x32\x8e\xaf\xef\xdb\x8f\xf6\xcf\x1f\x9f\xfd\xab\xf7\xf4\xe8\xc7\x6a\x3f\x1a\x8e\x27\xf1\x15\xf2\xa7\xe3\x1b\x4d\xad\x75\xe5\x64\x2c\x8f\x33\x57\x58\xd6\x9c\x6b\xdd\x42\x5d\x69\xee\x67\xeb\x35\xe0\x2e\x19\xc5\x31\x0a\x42\x48\x3f\xe2\x65\x8c\x3a\x54\x3f\xf9\x66\x4e\xda\x26\xa5\x00\xef\x36\xc9\x00\xce\xfa\xb3\x7e\x0e\x13\xf5\x0e\xfa\xa2\xf6\x5e\xa9\x36\x9e\xb9\x26\x63\xf7\xc7\x1e\xab\xaf\xee\xbb\xf5\x67\x45\xef\x0d\x73\xe8\x7a\xb5\x87\x6b\xce\x8a\x36\x97\x48\xb3\xeb\x75\xef\x20\xcd\xce\xdc\x40\x92\x9d\xb9\x7c\x8a\xdd\x12\xd6\xd3\xba\xd2\xeb\x9a\x69\xa6\x34\x0f\x9a\x92\xc3\x65\x29\xa0\xe0\x4b\x98\xe0\xc4\x08\x19\xf7\xdb\xc8\xc7\x7e\x14\x5f\xe5\x95\xcc\x55\xbb\x5c\x9b\x39\xd7\xc8\xfa\x58\x66\xee\xaf\x9a\x02\xbd\xe9\xb9\xbf\x64\x02\xb4\x34\x83\x7a\x9b\x9f\xf9\x35\xc9\xcf\xcb\xcc\xfb\xde\x5d\xce\xfb\xfa\xa4\x67\xb2\x28\x36\x3f\xe7\x7b\x2b\xe5\x3b\xff\x1e\xc4\x70\xf7\x77\x2a\x86\xbb\x77\x39\x1d\x37\x91\xe1\xbc\x81\xd9\xda\x6d\x6e\xab\x57\xfb\x7a\x34\x39\x77\x1a\xc3\x7b\x73\x11\xcf\x3d\x69\x93\x58\x43\xe4\x69\x5d\xb1\xa7\x86\xdd\x56\x10\x30\x2b\xfb\x8d\x15\xf6\x3e\xf9\xd1\x49\xd1\x95\xce\xf7\x51\x85\x47\xb4\x9d\xf7\x58\xe1\xd0\x6b\xdb\xf1\x15\x72\x80\xd5\xd5\x58\x91\x09\x9c\xbf\xb4\x71\x12\x2c\x83\x53\x14\x93\x82\x0f\xa3\xc8\xe0\x01\xbb\x62\xf2\xa9\xe6\x9d\x6b\x10\x60\x1b\xf3\x5a\x9b\xf5\x31\x4c\xb9\x1d\x0d\xf2\x2e\x59\xb8\x85\x8c\x4f\x83\x34\x86\xba\xa1\x5b\x2d\x16\xb9\xee\x81\x86\xfe\xe7\xe5\x47\xf9\x99\x63\x62\xff\xa2\x43\x9e\xa1\x86\x73\x4a\x02\xfe\x72\xd6\xb8\xe4\x27\x10\x39\x4f\x9c\xef\x34\x03\x55\xb0\x5d\x39\xc2\x63\xe3\x68\x0c\x46\x9f\x24\x1c\x90\x32\x9f\xdd\x64\x1c\x5f\xbb\x63\x7a\xe5\x88\x5d\x58\x40\x12\x34\xbb\x5e\x06\x36\x34\x6c\xe0\x19\x40\x9f\xc3\x11\x30\x4e\x60\x82\x7d\x38\x02\xd5\x8d\x4c\xd8\xd5\x8d\x1a\x98\xbf\x56\x6e\x9c\xd8\x1b\x0e\x98\x4d\xce\xdf\xdc\xbe\xf5\x1f\x28\xfc\xfe\x1c\x85\x53\xe3\x3c\x9c\x80\xca\xb6\x23\x8c\x9b\x34\x5b\xba\x8c\xee\xb0\x3a\xbc\x4d\x93\xa6\xc9\x94\xb2\x75\x83\xca\x2f\x6a\x34\xa8\xea\xb5\x4b\x7c\xf1\xb7\x00\xfb\x74\xff\xad\x6a\xd3\x44\x5c\xd4\xa0\x4d\xf9\x6b\x25\x6f\x95\x3e\x2f\x7b\x33\xa2\x60\x05\xb0\x7f\xba\x59\x4f\x6f\x3a\x17\x33\x8c\xa5\x08\xb7\x00\x05\x7d\x2f\xfb\xfc\x88\x38\x3d\x0c\x02\x04\x12\x66\xf0\x4a\xbf\xab\x5f\xdd\x73\x8a\xb7\xaf\x39\xfa\xb3\x49\x34\x80\xf4\xf4\x78\x86\x29\xcd\xac\xfc\x64\xc7\xfc\x9e\xb9\xf6\x52\xb7\xb8\x9e\xb4\x3c\x9b\xa7\x45\x7f\xbd\x18\xe1\x0c\x31\x91\xf7\x1b\x2e\xe3\x0b\xcd\xed\x61\xb9\x5a\x2f\x29\x9a\x93\x36\x2b\x47\x6d\xd1\x24\x5e\xa7\xab\xde\xd8\xf8\x93\x2d\x13\x65\x5b\x19\xda\xde\x36\xbe\x56\x16\x5d\x53\xce\x37\x81\xc1\x87\x49\x87\x0b\x25\x1e\x3d\xa3\x51\x35\x81\x58\x1f\xc5\xb4\xaa\x42\x2e\xce\xe6\x27\x94\xe1\xdb\x31\x3b\x62\xd6\xd1\x0b\x63\xc8\x30\xe8\x39\xb0\x3a\x0d\xac\xb1\x98\xdc\x92\x71\x34\xb6\xbf\xae\x18\x46\xdb\x51\x36\xe8\x7b\x8e\xa9\x3d\xfe\xed\x5f\xcf\x0f\x1e\x4f\x7f\xad\x29\xd7\x58\x06\x46\x57\xc8\x8b\x13\x80\x2e\x97\x0d\x94\xf5\xba\x4d\x57\x6d\x66\x48\x2a\xdc\x58\x07\x8d\xf8\xa5\xba\x02\x37\xf9\xbc\x1a\x3a\xfb\xa4\x88\xef\x3a\xc8\x6e\x5d\x8e\x1d\xeb\x40\x83\x9d\xe5\x59\x12\x74\x2e\x54\x42\x69\x9b\xf5\x4f\xd0\xfb\x53\x5a\x08\x99\x0b\x48\x1c\xac\xc1\xd2\x56\x75\xbb\x21\x29\x98\x16\x4b\xdb\xb2\xf5\x4f\x75\xad\xaf\xa7\xff\xaa\x6a\xfd\x12\xf4\x5f\xcb\xb6\xfe\x89\xae\xf5\x4f\x56\x6a\x7d\x19\x7d\xf4\x8a\xad\xd7\x02\x99\x15\x7f\xbe\x20\x57\x61\xc6\xa6\x06\xc8\xbc\x27\x5d\x90\x03\x32\xd3\xa2\x65\xcd\xfb\xb8\xbb\x0c\x92\x99\xbc\x63\xa8\x51\x05\xd2\x80\x3f\xb7\xaf\x96\xf1\x28\x11\x83\x36\x08\x3f\x9b\x19\x9f\x87\x7f\xd1\x49\xd2\x8c\x1b\x3d\x68\x4c\x1e\xbd\xa7\x92\x52\xb8\x0e\x44\x6b\xd6\xac\x10\x4e\x67\x98\x37\xac\xa7\xb5\xb1\xf7\x9d\x7d\x2e\x56\x2e\xe2\x2f\xd5\x56\x77\xde\x25\xc5\xb6\xa7\x0e\xbd\x79\x55\xc8\xec\x7e\xa3\x6f\x5f\x93\x8c\xa0\x42\x66\x77\xcb\xea\xcd\x94\x2a\x3b\xc5\xdd\x82\xe6\xe7\x9c\x33\xbf\x1a\xdb\xb5\x38\x1b\x50\x6b\xf6\x9c\xbd\x61\x9e\xbd\x70\x57\xd6\x6e\x7b\x12\x6e\xf0\x2c\x8b\x83\x8d\x50\x88\xc3\x11\x45\x7c\x17\xd9\xaa\xda\x4d\x89\x62\x1c\x62\x5d\x61\x04\xf9\xe9\x82\xf3\x62\x4d\xbc\xa9\x46\x15\x02\xb3\x78\x69\x5e\x39\xa7\x66\x29\xd5\x25\x12\xb7\xdc\xf7\xe1\x8a\x51\xee\x90\x4f\xdc\x61\xe3\xe3\x0a\x07\x5c\x85\x1a\x2f\xbd\xb2\x3c\x3d\xb7\x75\x72\xae\x3c\x8c\x6b\x21\x70\x5d\xef\xb8\x30\x1c\x26\x69\xc6\x18\x4f\xa2\x33\xff\x12\xa8\x91\xa9\x8d\xe4\x1c\x3f\x6d\xc2\xd7\x57\x61\x53\xe5\xc7\x77\x5d\x70\x74\x59\x04\x9a\x69\x6c\x42\x81\xa5\xef\x31\x58\xfa\xbe\x44\x24\xb6\x3c\x27\xf1\xc1\x7a\x69\x6f\x2a\xe4\xb9\x06\xa2\x2e\x79\xdc\xc2\x54\x81\x28\x77\x05\xb7\xc2\xaf\xca\x1d\x5c\x0f\x9b\x8d\x59\x86\x4b\x5f\x99\x1e\x67\xe3\xa4\x25\x6d\xd7\x29\x60\x03\x26\xdc\x21\x64\xb6\xca\x6b\xb3\xa8\x5a\x6c\x78\xb5\x6e\x8a\x4e\xe0\xa0\x49\xed\xac\x82\x17\xc2\xd9\x73\xf6\x97\x2d\xcc\x84\x85\x37\x80\x55\x40\xaa\x4c\xbc\xbf\x62\x96\x2f\x0c\x3a\x17\x37\x69\x09\x25\xa5\x3c\xd2\x32\xf8\x5e\xee\xe3\x10\x86\x9f\xc8\x96\xd7\xa1\x7e\x97\xf4\x53\x28\x6e\x86\xd5\x9d\x16\x0f\x22\x93\x7e\xd2\xdb\xfd\xed\xd2\xff\x0d\x56\x79\x2b\x5a\x16\x43\x6a\xef\x76\xd8\x2f\x18\x4b\x55\x96\x87\xb3\x8e\x7c\x11\x55\x7c\xc8\x25\xaa\x99\x28\x01\xd3\xc8\x1f\x81\x7f\x84\x78\x4c\x11\xa3\x95\xc1\x96\x9c\xe2\xd3\x1c\xf5\xb2\x42\x23\xb4\x21\xa9\x06\x0d\x29\x5d\xdd\x0d\xbd\x8b\xf4\xbb\x77\xd2\xa5\x1c\x84\x41\x27\x84\x09\x40\xf9\x25\x2c\xe8\x37\x96\x5d\x6a\xeb\xc1\xd7\xef\x4c\xb2\x00\xcc\xbd\x2e\x33\x80\x27\x1f\xf6\x5f\xbd\x3e\x5c\xdf\x32\x6b\x41\x8f\xb8\xb4\xe9\xbd\x5b\xbe\x16\xdf\x82\x12\x54\x49\x2d\xe6\x50\x55\xa5\xc4\x07\x2a\x55\xa3\xb2\xf5\xd0\xa4\x25\x8d\x4c\xd8\x32\x08\xda\xda\x14\xa1\x0d\xa9\x3f\x66\x2d\xf6\x2a\x83\xbf\x8e\x7d\xf2\xc3\x10\xc3\xeb\xd6\x65\x3f\x6f\x22\x45\x49\xb6\x2a\x6a\xb5\x8f\x56\x52\x08\x40\x8c\x98\x5e\x20\xcb\x9c\x15\xc4\x4d\x3a\x4e\x2b\x4b\x1c\x84\xf1\x7d\x0b\x9b\xf7\xcf\xd0\x49\x14\x7d\x49\x1a\x67\xf5\xb4\x93\x3c\x07\xed\x37\xf8\x27\x9a\xe5\x2b\xbf\xbf\x8d\x7f\x48\xa7\x2c\xec\xe6\xb0\x0d\xeb\xd1\x0a\xf2\x3c\xce\x55\x1b\xf2\x9a\x94\x81\xe6\x52\xda\x28\xf3\xa9\xd2\xb9\xc5\x8b\x8f\xfa\x17\x11\xd0\x0a\x8b\xf4\xce\xfa\x12\x12\x01\xae\xf4\x26\xbd\x0d\x61\x38\x99\x4d\x8a\xb7\x56\xd1\xbc\x07\x41\xe5\x33\x8b\xb6\x9d\xf8\xc8\x93\x90\x15\xb5\x1e\x0c\xcc\x89\xff\x85\xbc\xf8\x47\xc4\x94\x91\x57\xe1\x55\x48\xd7\xdb\x60\x37\x35\xd8\x26\x49\xcb\x66\xd5\x74\x15\x04\xa1\x0f\xef\xaa\xa7\xf4\x65\xf7\xd8\x59\xf6\xc6\xbb\xea\xad\xff\x65\xcd\x5d\xd5\x1c\x2c\x39\x94\x29\x23\x99\x48\xda\xa1\xff\xa4\xe2\x4f\x92\x2d\x25\x02\xa7\xe0\xde\xa9\xdd\xf0\x5a\x17\x46\x6e\xb8\x37\xe6\xf3\x69\xab\x34\x76\x18\x6b\x93\x6d\x57\x88\xe5\x93\xfd\x6f\xf5\x4d\x34\x35\xb1\xee\x79\x27\xbd\xc1\xaf\x4e\x0e\x9f\x90\x1d\x7d\xd5\x58\xfe\xe6\x63\xf7\xbd\xe7\xb9\x30\x63\x03\xde\xab\x67\x72\x28\xb8\x22\x78\x5f\x51\xf7\xbe\x69\x1c\xb8\x10\x44\xdd\xd7\x11\x5f\xf1\x2c\xdd\xaa\xb0\x7d\xa3\x9e\x3d\xd5\x85\x8e\x77\x9b\x87\x8e\xab\x3a\xbc\x52\xe8\xb8\x5d\xeb\x0f\x74\xad\x3f\x58\xa9\xf5\x07\x9b\x69\xbd\x36\xf0\x2d\x23\xd1\xb2\xb8\x76\xaf\x24\xf0\xbd\x2b\x5d\x90\x0b\x7c\x1f\xb4\xea\x62\x6f\x99\xb8\xf7\x41\x4d\xd8\xfb\x2d\x48\xc6\x1c\xc0\x9b\xe1\x77\xdb\x04\xc1\x97\xb6\xc2\x75\x85\x7a\xd6\x11\x00\x5f\x7b\xe8\x5b\xdd\x4c\xb9\x0c\x27\x9b\x0d\x1d\x2d\x6d\xe0\x9b\xae\xf7\x5c\xd0\x48\x89\x81\xcb\x72\x20\xe4\x57\x6a\xe2\xe2\x7a\x0f\x9a\x12\x82\x76\xcc\xe3\x2f\x18\x20\xe8\x47\x67\xfc\xad\xd9\x9c\xda\x67\x31\xf0\xda\xa9\x55\x83\xa8\x90\xc3\xea\xfb\xa2\xb0\x41\xfb\xe8\x7a\x3e\x0b\x67\x4d\x21\xb8\xfc\x07\xa9\x0e\xc3\xed\x2e\x19\x86\xdb\x48\x08\xae\x66\x66\x29\xbe\x23\x46\x7c\x65\x7e\x2f\x2b\x34\x19\x75\x54\xea\x31\xa5\xfb\xec\xb3\x21\x35\xe3\x84\xba\xe1\x72\x4e\x8e\x5c\xec\x8e\x8e\xc7\xf3\xd2\x10\x5e\xe3\xfc\xb3\xf5\x86\xee\xd6\x1c\xb6\xdb\x68\xc8\xae\xde\x73\xc5\xfe\x57\xf0\x5f\xf1\x2f\x63\x84\x50\x52\xc0\x37\x26\x16\x75\xb5\x05\xaa\xbe\xee\x5d\x15\x61\x6d\x53\x82\xb5\xce\xad\x97\x0f\x0d\x6e\x36\x2c\xa8\xa0\x59\x19\xcf\x7b\x29\x1d\x77\x31\xe8\x97\x51\x01\xf1\x4d\x58\x20\x7c\x35\xd1\xc2\x06\xa1\xc1\x4c\xbb\x5c\x2b\x15\x90\x62\xb1\xac\xc3\xf6\x49\xf3\x58\xee\xd5\xf6\xe9\xbd\x19\xff\xed\xf5\x3f\x4f\xce\xaa\x6d\x1f\x46\xad\x2d\xc4\xab\xa8\x58\xa5\x7e\x77\xc1\x00\x24\xe8\x0b\xd8\xdf\x77\x42\xfb\x53\x43\x5d\x53\xcf\x5c\x23\xbe\x86\x42\xf9\x13\x07\x32\x8d\x4d\xb7\x11\x8d\x4d\x1c\x3c\x6c\x1a\x9b\xe6\x59\xca\x9b\x67\xb2\xd9\x7d\x58\x4c\x36\xcb\xa6\x65\x3f\x95\x9d\x45\xcb\xf1\xff\xb6\x74\x08\xab\x93\x7f\x95\xfa\x71\xda\xa5\x41\x16\x44\xb6\x40\x44\x8e\x75\xab\x95\xb0\xfe\x25\x20\x97\x90\xe3\x4d\x32\x1d\x25\x25\x90\x17\x94\x6b\xb9\x12\x1a\x4e\x0e\x04\x26\xf1\xe7\xe6\xb3\xa3\x4c\xa7\xad\xcc\x5a\xe7\x54\x17\x92\xf5\x2d\x44\x68\x21\x12\xc2\x49\x5d\x9f\x0d\xe5\x04\x41\x05\xbd\xca\x1a\x6c\x36\xd7\x66\x9f\xe9\x96\xcd\xe6\x64\xc5\xc6\xc7\xe6\x89\x7e\x6c\x1c\x21\x8d\xa4\x41\xaa\x21\x04\xd0\x64\xa7\x39\x4f\x57\x18\xad\x96\xa9\x82\xba\x21\xab\xb3\x15\x65\x73\x30\x5d\x1c\xdc\x3a\x6d\xfd\xce\x3b\x03\x5c\x2a\x33\x40\xcf\x09\xac\x0a\xb1\x82\x01\xc7\x6c\x83\x46\x05\x06\x9b\xed\x1b\xfa\x11\xd8\x30\x22\xf3\x8e\xaa\x0b\x36\x98\xaa\xab\xd6\x16\x34\xdb\x60\xd5\x15\xfe\x5d\x25\xd9\x7b\x03\x38\xf3\xfb\x80\xb3\x36\xb5\x8f\xc9\xff\x8e\xe8\x92\x30\xa6\x28\xfe\x1c\x06\x20\x31\x7c\x83\x2f\x0c\x63\x02\x46\x63\x1f\x86\xc9\xc4\xb8\x1e\x87\xa3\xb1\x31\xf2\xa1\x71\x01\x8c\x59\x02\x02\x4a\xce\x3b\x0b\xa3\xc0\x08\xc2\x04\xa3\xf0\x62\x86\x41\x60\x90\xfe\x24\x6e\x3a\x98\x86\x3f\xc2\x86\x4f\x9e\x78\x11\x42\x4a\xd1\x13\xf9\x37\x00\x19\x17\x00\x5f\x03\x00\x05\x97\x2f\x83\x9e\x19\xcc\x16\x73\x0c\x1f\x06\xc6\x27\x70\xb3\x43\xcd\x0d\xca\xe7\xe3\x72\x72\x60\x1f\x01\x63\x34\x43\x08\x40\x1c\xdd\x30\x7a\xaa\xd1\x27\xd1\xda\xc4\x98\x22\x90\x00\x88\xf5\xe4\xc0\x53\x80\x26\x21\xeb\x96\x20\x08\x56\xee\xd6\x91\x04\xdf\xcf\x97\x5f\xb9\xf0\x9d\x39\x5c\xad\xec\x9d\x50\xae\x55\x81\xcf\x33\x7f\xbf\x07\xdc\xe9\xc9\x64\x46\x4f\x65\xdb\xa8\xa8\x85\x17\x42\x76\x5f\x92\x9a\x40\xee\x18\x4f\xa2\x0c\x14\xbd\x34\x72\xdb\x30\x0a\x95\xf1\xea\xd7\x74\xeb\xf4\x90\xda\xc9\xa0\x1f\xf8\x56\x65\xf4\xd6\x35\xf2\xba\xda\x7a\x78\x86\x63\x14\x92\xf1\xe7\x7b\xa0\xb4\x70\x3b\x09\x98\xf8\xd3\x71\x8c\xc0\x5a\x3e\x87\x5a\x67\xef\x8e\x86\xbf\xed\x5a\x5c\x09\x0f\x5f\xfe\xe8\x3a\x07\xd9\xea\x0e\xb7\x7d\x2d\x13\x58\xa5\xcb\x6d\x4f\x45\xce\xb5\x84\xdd\xad\x97\x4d\xa0\xaa\x80\x5d\xea\xbb\xcb\xd3\x02\xd0\xc2\x76\xeb\x42\x14\x64\xf2\x67\x39\xd7\x1a\xb5\x1f\x93\x1d\x10\x84\xf7\x8e\xcc\xfb\x8c\x4f\xfe\x6f\x32\xf9\x5b\x0d\x37\x40\x4a\xb1\x4d\x3d\x47\x5a\x4b\x5a\xf8\x43\x45\xe1\xfb\x36\xae\xb4\x16\x21\x9d\xe6\xae\xb4\xa7\x0d\x48\xa0\xfd\x09\xa0\x07\x76\xbe\x99\x87\x81\xe4\x40\x7b\xd2\xc4\x81\x16\x06\x9b\x71\x9f\xc9\x79\xb3\x7a\x57\x5a\xc6\x4b\xf4\xd5\xa9\x76\xff\x4e\xb5\x67\xba\x2f\x55\xe2\x0b\x6d\x33\x39\x76\xcb\xa8\x13\x1d\x33\x4c\x4e\xc1\x75\xeb\x58\xff\xaa\xf4\x89\x4d\x8c\x8e\x65\xf9\x03\xcd\x7a\xde\x40\xb3\x35\x5f\x20\x93\xb3\x65\x8c\x81\x62\xf1\x57\xd0\x06\x6a\x34\x86\x46\xb0\xf4\x8d\x18\xab\x66\x1d\x35\xa0\xd9\x94\x12\x50\x4d\x65\x7f\x3a\x74\xcc\x53\x70\x9d\x0d\x88\xa9\xf2\x7d\x1d\x07\x21\x36\x98\x53\xe6\x89\x33\x30\x4f\xb9\x3b\xbf\x01\xc9\xd7\xc6\x86\x6f\x09\x0b\x67\x3d\x2f\x5e\x8a\x3a\x4b\xf5\x1c\xb1\x59\xb9\x73\x19\xa3\x89\xe2\x33\x22\xe2\x91\xee\x2b\xdf\xa7\xdb\xcc\xf7\xf2\xe6\xf3\x3d\xb9\xfd\x62\x12\x62\x21\x3e\x9f\xb4\x08\xc1\x94\xef\x3a\x39\x89\x94\xf9\x27\xa5\x15\xe4\xb2\xc4\xc0\x8a\x6f\xbd\x04\x09\x55\xb3\x32\xce\xad\xeb\xc9\xdc\x19\x97\xd5\x28\x86\x23\x3f\x0d\x07\x63\xe4\xc3\x84\x63\xdc\x63\x5d\xd1\x64\x45\x6d\x6d\xaf\x7c\x4a\x2a\xe3\x8a\x5a\xe7\x83\x48\xf2\xec\x46\xc1\xbf\x4e\x3e\xff\x70\xd5\x50\xed\x2c\xc5\xb3\x56\x85\x77\x5b\x02\x5c\x1b\x47\x63\xda\x28\xa1\x4d\x8a\x04\x67\xfb\xd0\xd7\x4a\xc1\xff\xed\xba\xa4\x02\x99\x6e\x56\x29\x58\x41\x4c\x53\x21\xd2\xb6\x4e\xf0\x92\x78\x69\xb9\x4e\xf0\x12\xe5\x81\xeb\x2b\xec\x3e\x11\x0d\xdc\x2f\xc1\xe7\x2a\x45\x92\x73\xc4\x54\x7b\xad\x4a\xec\x36\x2c\x95\x9c\x23\xa6\xda\x93\x11\xba\x4b\xc4\xd4\xd5\xf9\xf4\xdf\x50\x56\x57\xd2\xb9\x4b\x23\x98\x1b\x2c\x62\xdb\x52\x6f\x34\x4b\xeb\x44\x72\x3f\x87\x51\x30\x31\xda\x92\x3b\x99\x1a\x2b\xa6\xa7\x06\x8a\x65\x45\x2c\x75\xaf\xc0\x94\xff\x97\xa3\x30\x6e\xa6\xa0\x93\x9e\x4d\xbf\xd2\x51\x76\xa4\x36\xf3\x47\x81\xf9\x3e\xa0\xa2\xc1\x4f\xa4\xf8\xe9\xea\x14\x6b\x5a\x65\xfc\xe1\x15\x0d\xde\x93\xc0\xce\xad\x31\xda\x0f\xa6\x68\xf0\x2a\x78\x1f\xad\xea\xa4\xe2\x7d\xf8\xd7\x7b\x30\x7a\x93\xf4\x26\xc5\x98\xe6\x58\xed\xb5\x97\xa9\x58\x1a\xe9\x53\xb2\x0c\x4a\x90\x2c\x72\x41\x9b\x02\x94\x65\x77\x5d\x30\x9f\x7a\xa0\x4f\xab\xb1\x79\x18\x25\xaf\xd3\x29\xc0\x2a\xa1\x28\x69\x0d\xfb\x4a\xd1\xeb\xc6\x39\xec\xba\x5d\xf7\xe9\x06\x8b\x5e\xb3\xa9\xd1\x0c\xe2\xf2\x34\x0f\x71\x79\xd2\x0c\xe2\xd2\x02\x89\x2e\x77\xf9\x6b\x0d\xec\x75\xd7\xc0\x6e\xbb\xd7\x2e\x55\x03\x3b\x55\x02\xd7\x5e\x08\x3b\x7d\xf2\x7f\x5b\x35\xec\x07\xf1\x35\xaf\x29\xc6\x86\x7e\x53\x6d\xe2\x4a\xa3\xa2\xdb\x78\x0c\xe4\x67\x92\xcb\x7d\x04\xf8\x13\xc8\x03\x2f\x63\xe4\xae\x38\x65\xaa\x2a\x85\x67\xef\x6e\x56\x23\x5c\x6a\x2a\x2b\x14\xfe\x60\xe7\xdd\x8a\xb0\x20\x73\x25\x50\x50\x8d\x9d\x43\x53\x70\x2b\xb0\x3f\xa3\x78\x32\xf1\x61\x90\x64\xde\x32\x53\x18\x3f\x26\xa2\x32\x19\xc6\x44\x0e\x03\x64\xc0\x18\x81\x4b\x80\x10\x53\x53\xc8\x05\x4c\xc1\x36\x1d\xf3\xe3\x45\xe4\xab\x6d\x2d\xe0\x7e\x60\x31\x2a\x54\x31\x1c\x35\xa7\x97\x47\xf2\xb4\x1e\x2e\x1d\x60\x47\xec\xe0\x69\x97\x76\x12\x30\x9a\x21\xd0\x91\x3b\xb9\x8e\x51\x54\xe1\x3a\xab\x0c\xdc\xfa\x30\x35\xad\x2f\x2c\x5e\xf6\xb4\x2d\xe1\x94\x16\x7f\x7d\x47\xd5\xf7\x69\xbc\xe4\x61\xc5\x4a\xca\xf2\xea\xa4\x18\x8a\x0f\x45\x00\x85\x66\xd6\x55\x62\x7b\x6a\x21\x3d\xcb\x15\xe1\x5f\x31\xe1\x4e\x8e\xaa\x2c\x19\x99\x49\xcd\xcf\x87\x01\x09\x3a\x3e\x9d\x3e\x7d\x8b\x76\xd0\x7a\x20\x41\x1b\x62\xf2\x5a\x73\x10\x26\x3d\x95\x47\x02\x35\xf0\x28\x6c\x1a\x09\xf4\xe4\x2b\x12\xe8\x77\x12\xbd\x79\xbe\x79\x24\xd0\x57\xc4\x4f\x15\xe2\x27\x93\xa4\x25\xa0\x9f\xc3\x60\x12\x42\xe3\xbd\x7c\xd9\x7f\x23\xf4\x27\x5f\xd1\xc2\x84\xe0\xda\x90\x66\xa4\x23\xaa\xb3\xa5\x50\x13\x9a\x55\x7f\x0a\xae\xb3\xb1\x7b\xf8\x28\xa1\x65\x93\xd7\x54\x07\x58\xb6\x35\x3c\x68\xc8\xce\x7e\x61\x09\x54\xa3\x76\x36\x0d\xdc\x79\x58\xaa\xa8\x0e\xb6\x93\xdc\x11\x76\x27\xa7\xde\xad\xae\x24\x3e\x08\x04\x0f\x8c\xbf\x5c\xfc\x5f\xf7\xef\xe3\xaf\x08\x1e\xe9\xd3\x3c\x98\x48\xd4\x57\x1d\xf0\x2b\x82\xe7\x2b\x82\xe7\x2b\x82\xa7\xa1\xfa\xd8\x1c\xc1\x53\x54\xa0\xff\x10\x38\x1e\x9d\xe1\xd0\x1e\x57\x92\x19\x27\x5a\x4c\x4e\x29\xba\x47\xd2\xd9\x74\x00\x1f\xdd\xf7\x62\xc0\x9e\xf2\xf1\xfe\x8a\xf1\xd1\x28\xf0\x5f\x61\x3e\xbf\x4b\x98\x4f\xf6\x01\x1f\x8c\x7e\xa5\x7a\x3c\x15\x9b\xf8\xc1\x83\x7d\xb2\xe1\xfc\x8a\xf7\xf9\x8a\xf7\x29\x9f\x1d\x5f\x21\x3f\x5f\x21\x3f\x6b\x02\x89\x64\x0a\xce\xba\x21\x3f\x99\x26\xfa\x90\xa1\x17\x7f\x2c\xc8\x8f\xf4\x35\xff\x10\x90\x9f\xac\x3f\x8d\x9a\x2b\x75\xff\x2b\xe4\xa7\x06\xc3\xb2\x04\x17\x4d\x1d\x14\x08\x40\x0c\xd0\x14\x85\x09\xd8\xf1\x89\x31\xda\x99\x2a\xc6\xe8\x8a\xdc\x33\x05\x40\x50\xde\xe0\x2d\xe9\x6a\xeb\x42\xd1\x5f\x21\x30\x5f\x21\x30\x7f\x0c\x08\x4c\x3e\x32\xb1\x64\x80\x83\x74\x23\x84\x57\x9d\x51\x0c\x2f\xc3\xab\xfb\x0e\x6f\x4c\xd0\xdb\x0b\x78\xfc\xaf\x51\xc3\xf0\xc6\x12\x50\x97\x76\xec\xaf\xcd\x03\x16\xfb\xf5\x01\x8b\x20\x4c\x46\xf1\x67\x80\x6e\x3a\xa3\xb1\x1f\x42\x72\xde\x9f\xc8\x04\xd2\x7b\x8d\x08\xa4\xd3\xce\x7c\x25\x90\xfe\x6f\x89\x6e\x1c\x0c\x97\x23\x90\x5e\xcd\x39\xde\x44\xc3\x5e\x0e\x86\x62\xd6\x81\x50\xcc\xb6\x10\x94\x62\x2d\x66\x05\x80\x72\x96\x9d\xd6\x02\x4f\x0a\xaa\x41\x83\x1d\x6c\x03\xf6\x64\x4d\xc4\xa0\x61\xb4\x40\xb8\x41\x8e\x88\x94\x31\x1d\x93\x77\x5e\x60\x43\xb4\x13\xbc\xa6\x20\x9e\xa8\x98\xa0\x94\xeb\x21\xab\xed\x3a\xc4\xe3\x13\x78\x19\x2b\x91\x35\xb5\x06\xbf\xba\xc3\xb8\xfc\x5e\xd1\x0a\xae\x38\xc2\x7c\xd1\xbc\xd5\x87\x7f\x09\xd7\x94\xa9\x63\x5a\x27\xcf\xf1\x43\xc8\x21\xd9\x25\x3c\xeb\x19\x37\xa3\x2c\xe2\xd3\x46\xb1\xbf\x0a\xdf\xa6\xe1\xd7\x68\xad\x92\xd5\x69\x6c\x0f\x4b\x5b\xcb\xb4\xb2\x7c\xf1\xf0\xd5\x10\x20\xb9\x89\xb7\x9c\x7e\x24\x04\xcb\xc3\x80\x7f\xbc\x7e\xba\xfb\xf7\xdf\x7e\x85\x47\x4d\x6a\x71\x94\x62\x3f\xb4\xba\x85\x82\x03\x11\xae\xd5\xcd\x94\x2a\x6c\xa9\x59\xd1\x25\x57\x5b\x9d\x23\xad\x13\x29\xd9\xb3\x5f\xa1\x20\xff\x3d\xca\x52\xa9\x6b\x4e\x9e\x08\x15\x68\x90\xb4\xb2\xdb\x6e\x75\x05\xcc\xbd\x62\x08\x72\x37\xbb\x75\x29\x3c\x88\xdc\xc2\xb4\x22\xd1\xa7\x10\x06\x0d\x0b\x61\x36\xea\xa0\x40\xbb\xec\xf6\xa4\x17\x3f\x95\x0e\xd6\x94\x92\xac\xea\x77\xdb\x3a\x8b\x65\x9d\x6f\xd0\xfa\xae\xae\xf5\xdd\x95\x5a\x5f\x13\x39\x5e\x63\xeb\x29\x48\x29\xdf\x7a\x72\x70\xf9\xd6\xf7\x9e\x6f\xa6\xf5\x5a\x90\xd1\xb3\xa1\x0e\x3e\xf5\xa4\x04\x64\x24\x97\x5e\xcd\x83\x8c\x8a\x75\x3c\xab\xfa\xd8\xb6\xd0\x6a\xfa\x8e\x62\xd5\xd2\x81\xf9\x13\x5b\x58\xa3\x18\x42\x30\xc2\x9d\x29\x8a\xbf\xdc\x98\x7a\x20\x92\x74\xeb\x5e\xe3\xbd\x42\x08\xcc\x59\x42\x5d\x14\x38\xfe\x04\xd4\x60\x35\x91\x8f\xd9\xe0\x36\x79\x4f\x71\xd7\x29\x79\xc9\xa9\x94\xa6\x59\x78\x49\x2b\x70\x95\x79\x37\x69\x0c\xf7\x0e\xac\xca\x0c\x43\x79\x2b\x4b\xdf\xc0\xb0\xf8\xcc\xfe\x2c\x64\x06\x29\xc1\x9e\x6c\x86\x92\xfb\x71\x8c\x99\x8f\x5d\xe3\x6f\xae\x3a\x4c\x4c\x5e\x0a\xdb\xe0\xd9\x9f\x97\x31\xfb\xbc\x85\x4a\xac\x9a\xba\xab\xeb\x41\xef\x2f\x8d\x2b\x92\x85\xc3\xd3\xd5\x71\x45\x7a\xe0\x18\x0f\xe1\xaf\x03\x9f\xc4\x55\xc6\x9a\x6a\xb4\x32\xc8\x38\x97\x65\xd0\x1c\xc3\xa4\x16\xa2\x7d\x5e\x59\x81\xb6\x78\xed\xfb\x02\x48\xce\x49\x93\x1a\xf6\x9d\x5e\x33\x11\xba\x21\x74\xd4\x73\x6d\x3d\xc8\x96\xe6\xe5\xe6\x80\x26\xe6\x26\xea\xe6\x56\xe3\x4c\x7a\x4b\xe2\x4c\x32\x81\xf5\x6c\xc3\xe5\x72\x4b\x10\x26\x6a\x1e\x12\x6f\x87\x0a\x31\x59\x06\x3b\xb3\xbe\x12\xa6\xf9\x31\xfa\x8a\x49\x59\x07\x26\x65\x15\xb1\xbd\x0c\x8a\x41\x58\xea\xeb\x46\xa4\x88\x8d\xfc\x21\xe3\x02\x36\x8b\x47\xb9\xb7\x2f\xb9\x36\x34\x4a\xfa\xc4\x3b\xc7\xa2\x20\x70\x15\x26\x18\x20\x10\xa4\x8d\x68\xd4\xea\xac\xc5\x5f\x21\x29\x6b\x87\xa4\x3c\x6f\x48\x4e\x93\x48\x3a\xfc\xba\x71\x28\x49\x26\x56\x74\xfd\x5a\x1f\xfe\x44\x3f\xc6\x2d\xb9\x6b\xd6\x31\xc8\x15\x94\x36\x57\x00\x53\x87\x7a\x82\x7d\x84\x41\xb0\xce\x81\x6f\x50\x7a\xea\x0f\x8b\xf6\x29\xc2\xaf\x9b\xf8\x50\xeb\xaf\x29\x4d\x12\x76\xd6\x82\x2f\x5a\x6b\x0c\xa8\xba\x24\xbc\x12\x9c\x88\xe8\xa5\x97\x31\x9a\xf8\xb8\x03\x67\x93\x0b\xea\x02\xc9\x4a\xc4\x17\xe1\x39\x4a\x18\x89\x5a\xd4\x08\xfc\x0a\x46\xb8\x73\x71\xb3\x3c\x78\x87\xfb\x65\x85\x9f\x36\x57\x49\xbe\x55\xa0\x4a\x8d\x31\xad\x1e\xa8\x4a\xb0\x0f\xa9\x9d\x72\xaf\xb1\xaa\xd3\xc7\x3b\xcf\x7e\x4e\xae\x7e\x6e\x83\xe5\x71\xcc\x98\x7c\xf7\x20\x40\x20\x21\xa3\x49\x86\x50\x2a\x1c\x0f\x63\x4c\x0d\xb0\xc2\x8f\x96\xa1\xaa\x8d\x54\xbe\x6a\x54\x44\x9e\x7e\xa3\x8e\xf8\x44\x8c\xf6\x46\x54\x92\x2f\x02\x82\x1a\x55\x94\x0f\x03\x51\x56\xfe\x0e\xc1\x41\x61\xa0\x7f\x10\xad\x6e\xff\x15\x4c\x74\x17\xf1\x31\x8a\x35\xa0\x4e\xec\x65\x20\x45\x4f\x0a\x7e\x7d\xb9\x83\xa9\x40\x23\x8d\xdd\xef\xee\x97\xfb\x90\x1b\x59\x0e\xbc\x37\x62\xd5\x0e\x06\xbb\x54\xbb\x91\x71\x95\x9d\xd9\x34\xe0\x19\x9b\x3c\x1d\xea\x99\x1c\x15\x0b\x47\x9f\x68\xd0\x8b\xa9\x19\xc3\xa1\x9a\xf3\x74\xed\x23\x18\xc2\xab\xf6\xda\xad\xe4\x26\xee\x3a\x03\xf3\x75\x66\x6d\xaf\xe6\x53\x20\x7a\x5c\x82\x51\x4c\xda\x94\xe9\x6d\xff\x60\xcd\x7c\x54\xaa\x9a\x2c\x91\x9d\x43\xdb\xfd\x83\x30\x2c\x57\x6f\x75\x75\xe5\xe1\xf3\x71\x98\x08\x9d\xd8\x18\xfb\x89\x71\x01\x00\x34\x02\x20\xd9\x4f\x3e\x0c\x58\x89\x5f\x78\x05\x90\x01\xbe\x84\x09\x4e\x8c\x10\x52\xe5\x6e\xe4\x63\x3f\x8a\xaf\xf2\x35\x7b\x57\x1d\x0f\x8d\xee\xd1\xad\x45\xc8\x14\xcc\xc6\x25\xd6\xc5\xde\x03\x5f\x17\x2b\x55\xdd\xa7\xfe\xe7\xcd\x2f\x8a\x63\xd2\xc6\xb5\x2e\x89\xe7\x77\xb9\x22\xfe\x15\xcf\xa4\xe9\x9e\xf3\x11\x60\x69\xb9\x6c\x7c\xce\x3f\x6f\x3f\xe5\x7f\x4f\x53\xf1\xd9\xef\x53\x3e\x3f\xbb\xcb\xc9\x78\x08\x0d\x3a\xce\xc6\xb5\x9f\x18\x08\xe0\x19\x82\x20\x30\xae\xc7\x61\x94\x60\x83\x68\xaf\xcc\x33\x17\x26\xb4\x3c\xbb\x63\xf0\x44\x07\x3a\x55\xd1\x8d\xe1\x5f\xf9\x21\xdc\xbc\x70\xd6\xa5\x1b\x97\x3c\xac\x6d\x64\xe9\xe9\x5d\xd3\xce\x74\x87\xcb\x21\xb3\xe5\xcd\x86\x05\x93\x4e\x92\x77\x28\xbc\x62\xa0\xd0\xe5\x02\x9b\xd4\x46\xc9\x23\x75\xd1\x88\x45\x28\x35\x90\xa7\x06\x14\x4b\x28\xfe\x72\xf3\xd5\x5a\x89\x54\xbe\xb7\x5c\x8c\x55\x20\xc7\x0e\x4a\x62\xac\x62\x5a\x2c\xa9\xa2\xf3\xd4\x6e\x56\x81\x96\x47\x39\x4e\x5e\x2d\x31\x4b\x36\x3a\x53\x7e\xd7\x96\x6d\xc9\x00\xe7\xcf\x9d\xc6\x81\x00\xd1\x97\xdc\x76\xba\xcc\xbc\x29\x43\x0d\x4a\xf3\xa6\x25\x47\x49\x7d\x36\x60\xfd\x33\xcc\xb5\x70\x2b\x35\x14\xbf\x4b\xb3\x99\xe6\xb7\xc7\x0a\x56\xd3\xfc\xa5\xb5\xa9\x25\x4f\xd7\x93\x5a\xb2\xa6\xb7\xbb\xc9\x38\xbe\xd6\x34\x81\xbf\xde\xb0\x4c\x8e\x51\x62\xbb\xc9\x99\xc0\x2a\xa4\xbf\xc4\xe7\xb5\xeb\x1b\xba\x2e\xfd\x67\x43\x91\x6d\xb3\x1e\xfe\x65\xb4\xcf\x96\xc9\x46\x8c\x49\xd7\x52\x0a\x8d\xca\xd0\x82\xa9\x20\x2e\x44\xd4\x25\x2f\x6b\x05\x8b\xa9\x9a\x3d\x43\x91\x37\xfa\x7c\x98\xb2\x17\x30\xef\xf3\x72\x4f\xad\xf2\x05\x1d\xd0\xc8\x31\x1f\x92\xf7\x0c\x22\x69\xbe\xe5\xdb\x25\x63\xee\x9c\xfa\x88\xe2\x71\x96\xc3\x62\xe9\x3a\x23\x3d\x36\x85\x65\x66\x42\xa7\xb5\x0c\x5c\xef\x74\x85\xfe\xe7\x55\xe6\x6a\x50\x2d\x98\xd2\xcb\xb0\xa9\x59\xdb\xa7\xbc\x11\xd5\x0b\x96\xdc\x1e\x94\x4a\x95\x9e\x0a\x0e\x28\x8a\x96\x1a\xd1\x91\x23\x46\xab\x95\x34\x55\x12\xa6\x66\xfd\x2c\x3d\x5e\x64\x83\xde\xd4\x60\x11\x35\x24\x3f\x52\xa7\x4c\x35\x39\x65\xeb\xa2\x62\x8c\xf2\x17\x2e\x37\x3a\xeb\x9c\xce\x4b\x53\xf9\x71\x8b\x27\x0b\x1e\x17\xe7\xc1\x21\x0f\xdf\x08\x38\x61\x36\x00\xd9\x99\xf5\x88\x8d\xe9\x4d\xe7\x62\x86\xb1\x14\xef\x16\x30\xf6\xef\x65\x7d\xf1\x60\xa8\x36\xaa\xf2\x6d\xbd\x0c\xbf\xd7\x2a\xa9\xee\x60\xd3\x12\x68\x49\xaa\x2d\xe9\xe9\xd8\xbf\xe8\x10\x39\xa6\x62\xff\x86\x85\x2c\x18\x29\xef\x4a\xa3\xaf\x0b\x5e\x39\x0e\x2d\xc8\xb2\x5a\x98\x83\x26\xc2\x63\xe3\x68\x0c\x46\x9f\x54\x5a\x5e\x55\xe2\x08\x33\xc1\x1d\xd3\x1b\x46\xec\xfa\x02\x1a\xbe\xd7\xea\x3e\x19\xeb\xaf\x73\xe3\xaa\xb3\x94\xe6\x01\x90\xcf\x33\x01\xc9\xb8\x73\xe5\x63\x70\xed\xdf\xe8\x80\xb8\x4d\xfa\xcd\x67\x17\x68\xd4\x67\x3f\xbd\xb8\x45\x87\x0b\x37\x69\x8c\x8c\x27\xa9\x45\xd1\xb6\xfd\x3f\x4f\x13\x8c\x00\xb5\x8b\xea\xdb\x3f\x4b\x2f\x6e\xd1\xfe\xc2\x4d\x6b\x6d\xff\xf1\x97\x69\x9c\x80\xc0\x78\xef\xe3\x71\xa3\x3e\x00\x76\xc3\x94\x5e\xdf\xa2\x1b\xba\xfb\x34\x3d\x69\xd8\xec\x73\xff\x2a\x31\xb6\x8d\xb7\x34\xca\x5d\xdf\xe8\x09\xc0\x3e\xb3\x0a\x9b\x37\x38\x7f\xcf\x70\xd8\xa8\x3a\x80\x22\x37\xe2\x19\xa6\xa0\x0b\x59\x22\x39\xe6\xf7\x2c\xf4\x99\xc5\xd4\xf3\xfc\xc2\x45\x4b\x9f\x2b\x92\x3c\xaa\x9f\x95\x3a\xe0\x9f\xfc\x80\xe2\xfd\xa9\xc6\x3a\x2c\x84\x58\xdb\x46\x8e\x35\x9b\x7e\x3e\x37\x29\xa3\x4b\xa6\x2d\x54\x46\xa5\x19\x14\x68\x7f\x15\x2c\xd0\x83\xcd\xdb\xae\xce\xd6\x96\xc1\x34\xe9\x17\x55\xf1\x3a\xe2\x03\x5f\x2a\x9c\x3b\x14\x38\x93\x92\xdd\x38\x66\x98\x74\xf8\xa2\xf0\x11\xf2\x6f\x28\xce\x67\x32\xf5\x47\xf9\x2c\x70\x3f\x49\xc2\x2b\xf2\xd8\x8e\x98\x88\xf4\xc2\x18\x92\xdd\x30\xc7\xce\xb3\x2c\xee\x46\x6c\x2b\xeb\x81\xde\xec\xf8\xd2\x7e\x70\xaf\x20\x9c\xe9\xe8\xf9\xd3\xa3\x83\xbf\x9d\x55\x83\x70\x44\x12\x00\xf6\xaf\xae\x40\x70\x98\xc2\x6f\x78\xce\x7b\x0a\xc8\x69\x07\xb3\x79\xda\xde\xe5\xf9\x5c\xb3\x6d\xcb\x28\x0b\x6e\xe2\x66\xbb\xf8\xb9\xdc\x62\xb0\x94\x66\x69\xea\x48\x1f\x88\xaa\x94\x88\x0c\x8c\x12\xc0\xf5\xfe\xb0\x48\x00\xb8\xbb\x3e\xc0\x75\xa6\xb4\xcd\x22\x1f\xa9\xf9\x2b\x3c\x3a\xc7\xe7\x23\xfb\x6c\x1d\x49\x45\x28\xe8\x77\xbb\xcd\x89\x8f\x5a\x29\xa5\xab\x7b\x71\xc8\x48\x65\x03\x7c\xee\x5f\x35\xb0\x0e\xd5\x7b\x52\xd5\xfe\x0e\xec\x26\x14\x5f\xb7\xb7\x99\x72\xdb\xa1\x30\x0c\x57\x31\x82\xd2\x91\x08\xea\xed\x64\x25\xab\xac\x9b\x7f\xb7\x66\x32\xe7\xeb\x14\x89\x4c\x02\xc5\xb0\x3b\xa0\x0b\xb3\x60\xd1\x15\xb8\xba\xc9\x8d\xef\x63\x84\xe5\xbb\xf8\xdf\x39\x45\xa4\xe1\x30\xfc\x7f\xff\xaf\x59\xcc\xce\xdc\x75\x4c\x8b\xdf\x26\x1c\x9c\x2d\x10\xbe\xf5\x13\xae\xd9\x30\xe7\x87\x89\x5d\xde\x57\x4f\xa7\x9d\xaf\x6f\xca\x3a\xad\x4c\x2d\x1a\x78\x05\xc8\x80\x59\x13\x91\x66\xe9\x16\x3e\x02\x06\x8c\x0d\x3f\x08\x68\x8c\xc6\x8f\x8c\x54\x4a\xb9\x0a\x0e\xaf\x31\x89\x7e\xed\xc5\xbb\xda\xc8\x71\x2b\x34\x72\x4c\xb7\xe6\x0e\x2b\x58\xc4\xb6\x1c\xaa\xbc\xf8\x14\xeb\x4b\xd5\x9a\xeb\x10\x8f\x05\xec\x58\x56\x56\x00\xc4\x88\x81\x88\x5b\xf3\xd5\x54\xa8\x11\x6b\x53\x4c\x14\xfb\xe5\xbe\xc9\x6c\x7a\xe1\xcd\x6c\xfc\xf4\x6d\xbd\x6e\x92\x6a\x9a\x1b\x2a\x6b\x59\x8c\xb9\xca\x4a\x07\x7f\x75\x11\xf3\x49\xd5\xdc\x36\x81\xd8\xb5\xa8\x1a\x7b\x45\x77\x86\xf0\xd0\x33\x33\x98\xb2\x0d\xd0\xef\xbb\x1e\x55\xa4\x7a\xa5\x9f\x8f\x81\x71\x19\x47\x51\x7c\x1d\xc2\x2b\x23\x0a\x13\x6c\x24\xe3\xf8\x3a\x31\x42\x18\x84\x9f\xc3\x60\xe6\x47\xc6\xeb\xf3\xf3\xf7\x06\x9d\x73\x06\x9f\x80\x06\x1e\xa3\x78\x76\x35\x36\x8e\xe1\xe7\xf8\xc6\xb8\x8c\x91\x21\x82\x25\x59\x52\x55\x14\x7e\x02\xc6\x7b\x14\x4f\x00\x1e\x83\x59\xe2\xb2\x2c\x91\x49\x4c\xe4\xca\x45\x3c\xc3\x0c\xca\x12\x42\x23\x9e\xa1\x56\xf9\x2f\x72\xe9\x08\x89\x47\xae\x2a\xd7\x88\x02\x6d\x77\x18\xce\x11\xf9\xbc\xae\x05\x8b\x79\xcb\x07\xff\x87\xf5\xaf\x43\x3b\xcb\x99\xa7\x66\xec\x54\x87\x96\x76\x06\xb0\x48\x7e\x56\x3b\x73\x02\x39\x2d\xa9\x4a\x3c\xba\x65\x14\x62\xc5\xc8\x14\xfd\x0c\xb4\x9d\x25\x09\xc1\x99\xd2\xdf\x70\xba\x0d\x8b\x9b\xff\x6e\x95\x63\x78\xb7\xca\x31\xdc\x20\xe0\x53\xb6\x37\x99\x65\x49\xbd\x1b\xa8\x0c\xb4\x4c\x4a\x67\xdd\xce\x99\xdb\x3b\xbf\xae\xa3\xfb\x5b\x47\xa5\xea\x61\x23\x52\x83\xa5\x59\xfb\x9a\x68\x39\xce\x5e\x85\x9e\x53\xa9\xdd\xb0\x04\xa9\xb4\x22\x63\xac\xa6\x4f\xc9\xca\xcc\x1a\x54\x18\x59\xe1\x58\x9b\x16\xa3\x78\xff\xef\x59\x8b\xf9\xf0\xf6\x1f\x27\xe7\x4f\x0f\xfe\x55\xad\xc5\x94\x92\xf1\x29\xa9\x6d\x09\x40\x97\x4b\x27\x35\x35\xe6\xdf\xd3\xbb\x5b\x7a\x8d\xaa\xe6\xed\x8a\x7a\x4b\x94\x74\xab\x82\x27\xed\x49\x11\xf0\x74\x30\x6c\xc7\xb8\x55\xa0\xab\x7a\xaa\xe1\x49\xa3\x93\xa0\x9a\x1f\xad\x51\xc7\x04\x1a\x4b\xe1\xe8\x3a\x18\x36\xe6\xe8\xaa\xe8\xef\x6a\x1c\x5d\xed\x5a\xff\x4c\xd7\xfa\x67\x2b\xb5\xfe\xd9\x66\x5a\xaf\x65\x18\xdb\xcb\xf9\xe5\xd7\x59\xc6\xb0\xaa\x8f\x2b\x97\x31\xd4\x84\x4c\x7b\xbd\x72\x07\x26\x0f\x90\x6a\x6c\x0a\xe1\x51\x4f\xaf\x90\x39\x7f\x74\x17\x96\xe9\x64\xf9\x07\x6c\xcc\x4a\x51\x24\x8a\xfc\x01\x05\x09\xc5\xfe\xda\xaa\xcb\x91\x56\x85\x70\x3a\xc3\xbc\x5d\x3d\x2d\x37\xd6\xbe\xb3\xcf\xe5\xc2\x45\xfc\xc5\x2c\x61\xcb\x2a\xaa\xc4\x6c\x53\xe9\xd0\x1b\x57\xad\x59\xb7\xdf\x68\xda\xd5\xcc\x3a\x95\x95\x69\x37\x0b\x8d\x35\xc7\x42\x55\x3a\xd7\xcd\x73\xc6\x7f\xc4\x76\x1d\x4e\xf9\xd4\x9a\xa2\x4b\xe7\x2c\x7c\x92\xaf\xcf\xc7\xc0\xb2\x67\x59\xee\xd4\x08\x85\x38\x1c\x51\x3d\x72\x19\x1f\x60\xc1\x67\x9b\xe6\xad\x0c\xd7\x94\x19\x28\xe3\x07\x9f\xae\x2b\xf5\xc4\x28\x67\xe4\x31\x0c\xbd\x4b\x51\x52\xab\x33\x4a\xed\x6a\x3c\x84\x2b\x06\xb7\x43\xbe\x6c\x87\x0d\x8d\x2b\x3c\xf5\x15\xf1\xcd\x1a\x57\x68\x2b\x87\x6a\x36\x72\x6b\xc8\x7e\xd9\xc0\x70\x30\xc3\x8d\xb4\x64\x8c\x27\xd1\x99\x7f\x49\xe7\x4b\x96\xbb\xb4\xc2\x00\xd4\xa5\xa5\x34\xcc\x75\x79\x52\x02\xc9\x5e\x13\x9b\x99\x2c\xee\x32\xfe\x4b\x85\xd2\x6c\x8f\x51\x9a\xed\x4b\x7c\x70\xcb\x51\x9a\x1d\x6c\x8a\xd2\x4c\x91\xd9\x1a\x37\x86\x14\x83\x08\x53\xfd\x44\x8f\x77\x68\x9c\xce\x24\x77\x6a\x75\x0e\xb2\xb5\x39\x2b\x94\xc7\x6d\x86\x85\x6a\x95\x45\x08\xd8\x48\x91\xb7\x0a\xd3\x47\x5e\x78\x45\x3d\x61\x43\x4b\x71\xdd\xe4\x2d\x07\x3a\x66\x96\x7a\xdb\x9d\x87\x5e\x56\x8a\x52\x60\x4d\x58\xa2\x8c\x41\xe5\x8a\x59\x9f\x30\x60\x9c\x27\x0c\x45\xa1\x80\x2c\x38\x04\x63\x02\xd0\x15\xe8\x08\xd3\x7a\x39\x72\x14\x0e\x11\x49\x4d\xb3\x1c\x37\x0a\x75\x39\xac\xe8\x56\x50\xe6\xd6\xba\xdc\x0a\x29\x56\xea\x9e\x5d\x0a\xbf\x9d\x77\x67\xef\xe2\x5f\xdf\x35\x08\x8c\xb4\xf3\x11\xec\xb5\x77\x11\xec\x97\x19\x31\x1b\x8c\x7b\x48\xd2\xa6\x4b\xe6\x5b\x76\x0d\xbf\xf1\x2a\x29\xd1\x9e\xf4\xea\xd5\xb9\xb8\x61\x4f\xa3\x15\xef\x16\x3c\x99\x6c\x27\xa4\x37\xad\x29\x82\x62\xc8\x70\x8e\xab\x4e\x61\xa3\x32\x65\x8c\xc6\xd2\x7e\xef\xb5\x6f\x27\x1b\xdc\x4c\xea\x7d\xe0\x46\xde\x0f\x4e\x3e\xfb\xe6\x93\x93\x97\x48\x93\xd3\x38\x87\x4b\x66\xae\x04\xc6\x6c\x3e\x7b\x29\x3a\xb4\x7a\xf6\xb2\x19\xfb\xb6\x2c\x1c\xd9\x66\x7e\x72\xc5\x4a\xb4\xb4\x54\xa9\x52\x79\x8a\x0b\xaf\xff\x3a\x91\x73\x13\x99\x06\x58\xd8\x3e\x43\x89\x53\x60\x6c\x88\x31\x7e\xf8\x93\xba\x5e\xa3\x59\x5d\x9b\xc9\x80\x13\x1b\x8b\x45\xa4\x03\xbe\x2e\x85\x61\x26\xc1\xe6\xef\x57\x63\xf8\xe9\xdd\xc9\xf5\xec\x7a\xdc\x32\x08\x51\x9e\x7a\xad\x81\x6a\x17\xa2\x15\x1b\x0e\x53\xac\x00\x97\x50\xf1\xdd\x07\x4d\x3c\xe8\x3d\x11\xd8\xa0\xe5\x2a\x5e\x81\x04\x87\x90\x86\x09\xe9\x1c\xd3\x45\x38\x0e\x8a\x8e\xbd\xfd\xec\x19\xcb\x45\x38\xa4\xa6\x56\x04\x34\xca\x3b\x54\x5f\xb6\x23\x6d\xe2\x6e\x89\x53\x7d\x4f\xba\x20\xe7\x54\x7f\x52\xb8\xba\x6a\x0c\x1a\x56\xc3\x51\x7d\xea\x4f\x0a\x2e\x75\xd9\x8b\xbe\xc9\xca\x1b\xda\xf7\xac\xa7\xf2\x46\x1d\x4f\x45\x53\xa0\x51\x5d\x0c\x80\x74\x96\x1f\xc9\x12\x7a\x5a\x11\x92\xe8\x38\xa4\x9f\xff\x3e\xdc\xf7\x42\x16\x67\x14\x14\xcd\x7d\xf8\xf2\x52\x63\x7b\x50\x89\x5f\x7f\xaf\xd1\xd4\xdf\x6b\xee\xd7\xdf\x67\xbe\xf2\x65\xdc\xfb\xc5\x2f\x26\xd2\x31\x9f\x6d\x36\x77\x7b\x53\x2e\xf7\xcc\xb5\xd6\xeb\xad\x9b\xec\x69\xbc\x57\xa9\x9f\xb5\xf4\x6c\xa5\xfb\xbe\x8b\x19\x45\x0e\x59\x90\x4d\x3c\xec\xab\xaa\x76\x85\x41\xba\x33\x6a\xa9\xb5\x8c\x10\x77\xba\xdf\xe1\xf8\xfc\x18\xc7\x78\x6d\x93\xa8\x7e\x84\xda\x01\xa7\xf2\xae\x87\x06\xc0\xa9\x22\x47\x42\x5b\x0c\xd4\xea\xb1\x26\xfd\xb7\xbd\xe4\x23\x5d\x13\x5f\x5a\x1d\x95\xbf\xb4\x15\xd4\xd3\xd8\x23\x4d\x38\x70\xd6\x14\x70\x29\x6c\x50\xd5\x51\x17\x5e\x85\xe7\xf9\xf2\x51\x17\x4a\x0d\xba\x91\xb0\x4b\x71\xaf\xd5\x43\x48\xa9\x29\xf1\x7d\x6a\x59\x14\x6b\xcc\xd0\x26\xe6\x8a\xcc\xf0\xfc\xfb\x92\x1a\x44\xad\x67\x81\x32\x1a\xff\x85\xf1\x9a\x5a\xb9\xa5\x61\x75\x85\xb1\x21\xe7\x6b\x6f\x4e\x39\xd4\x95\x0b\x69\x8a\xcb\xac\x11\x13\x77\x11\xfc\x69\x94\x66\x53\xcb\x45\x4b\xc3\x41\x8c\x97\xdf\x79\xe6\x3c\x6f\x05\x03\x6d\x00\xf7\xc4\x29\x27\x7e\x0a\xf9\x2c\x8b\x12\x69\xa2\x3d\x12\xaf\xfe\x6f\x39\x8f\x0c\xe3\xc3\x6d\x1a\x0d\x4a\x83\x3f\x6b\x70\xe4\x64\x3b\xd0\x8a\x9e\x1c\xce\xe7\x72\xbf\x69\x30\xaf\x82\xde\xc1\xc9\x6f\xb8\x05\x4f\x7e\x92\x21\xc9\xa8\x88\xc5\xfe\x45\xc2\xb9\xf3\x19\x54\x5a\x8e\xba\xf1\x6d\x4a\xe4\x31\x71\x1e\xe3\x35\x53\xea\xb7\xf0\xea\xa8\xfb\x6a\x0d\xa7\xfe\x5e\x7b\xea\xc1\x64\xe7\x32\x46\x1d\x51\xec\xac\xc0\x3c\xd8\xa0\x2e\xf4\x1d\x32\x53\xae\xc8\x8b\xdf\x68\x03\x59\x8a\x7a\xd7\xbc\x0f\x6e\xfc\x5a\x19\xdb\xa6\xdb\xab\xf1\xe3\xcb\x60\xb9\xdd\xbd\x42\x2f\xd7\x4c\x90\x5f\x34\xaa\x9b\xf0\x2f\xef\x3e\x91\x01\xd1\x1b\xa2\xc8\x57\x74\xa8\x27\xeb\x47\xc2\x2d\x41\xc3\xbc\x24\x18\x8d\xb6\x7e\x7d\x68\xb4\x65\x14\xab\xb5\xd0\xe5\x6f\x4a\xe9\xe9\xd5\x73\x84\x96\x90\xe6\xb7\x5b\x2c\xab\xb2\xe6\x6f\x7e\xb1\x2c\x49\x56\xae\x4c\xb6\x83\xbb\x58\x2a\x35\xe4\xf9\xcb\x2e\x94\x83\xbb\x5e\x28\xcb\xb2\xe8\x6f\x6c\x29\x1c\xac\x44\xa6\xff\x7b\x11\xe7\xfb\xbf\x6b\x71\xbe\x7f\xd7\xb3\x74\x13\xf4\xfa\x1b\x9b\xc1\x7a\x6a\xaa\x86\xd8\xe3\xa2\x27\xac\xf0\xfc\xbd\xa5\x15\xb3\x65\xc9\xf6\x77\x0f\xa4\x9d\x85\xb3\x63\xab\x85\xfb\x1d\xf3\x32\x44\x09\x66\x66\x9b\x4e\x13\xa5\x5a\x78\x53\xef\x84\x46\x1f\x64\x20\xd5\xa5\xa9\xfa\xcd\xe5\xe8\xd7\x1b\x18\x41\x53\x14\x7f\x09\x7f\xe7\xa6\x4f\x9e\x9e\x4d\x89\xad\x65\xd9\x60\x65\xf9\x68\xe5\x7c\xe9\xda\x74\x47\x5d\xee\xd7\x92\xc9\x27\x1b\xf8\x9e\xd4\x78\xf9\x0c\xd0\x4d\x67\x34\xf6\x43\xf8\x47\xfd\x96\x65\x19\x50\xab\x71\xdf\xcb\xd1\x8c\x5d\x99\xaf\xb6\xf7\x3c\x6b\x8c\x49\x07\xd6\xcc\x81\x20\x74\xdd\xcd\x87\x34\x6a\x22\xb2\xbb\x07\x6a\x58\x47\x7c\x26\x1c\x4f\xe3\x28\xbe\x62\x25\x27\x39\x67\xbc\x63\x4a\x10\x22\x33\xf5\x60\xd0\xdf\x18\x40\xc6\xd1\xcb\xfc\x2e\x64\xb7\xcf\xb0\xaf\xb9\x7c\x5c\x96\x8d\xf0\x16\x24\xe3\x63\xe8\x5f\x44\x20\xad\x77\xc1\xc4\x15\x39\x91\x8a\xac\x5c\x04\x9b\x3f\x27\x85\x6d\x3c\xd3\x7a\x74\x9d\x82\x7a\xbf\xaf\x67\x53\x0d\xe1\x15\x02\x49\x92\x27\x54\x55\xff\x69\xfc\x34\x0c\xd0\x84\xe2\x70\xe0\x55\x29\x45\xeb\x92\x2d\xa2\x01\x33\x27\x37\x8e\x4a\x1a\xe7\x6a\xad\xda\xa5\x61\x34\xe0\x07\x46\xfa\x29\x29\x3d\x43\x22\x58\xb2\x45\x2a\x84\xa9\x79\x99\x76\x29\x35\xfb\xd6\xb9\xad\xa9\x90\x2e\x5b\xd2\xab\x3c\x3d\x68\x6b\x38\xc0\xdd\x54\x8a\x50\xc9\x1e\x97\x8e\xb7\x88\xb5\xd8\x99\x00\x8c\xc2\x51\xb2\x23\x3f\x37\x29\x46\xf8\x84\x2f\x95\x7b\xbf\xd2\xe8\x95\x88\xd1\x31\xc9\x51\x84\x6f\x57\x69\x68\xcf\x9d\x5e\xd7\xe9\xf5\xc8\x6d\x4b\xd3\xd1\xad\x58\x38\x43\x28\xbe\xb5\x65\x33\xc4\x85\xb5\x65\x2b\x9e\xad\xb7\x68\xc6\xaa\x41\xe0\x46\x83\xb8\x3c\x87\xa1\x84\x2f\xa9\xae\x45\xa1\xd8\x2d\x75\xd5\x28\xf6\xcb\x58\xf5\x2b\x98\x7a\x2b\xcd\x88\x7c\xf8\xb6\x6d\x59\x0a\x55\x32\xd5\x96\xa8\xc8\xbf\xae\x51\x91\x8a\x56\xef\x58\xe7\xd7\x6f\x51\xd8\xa1\x44\x93\xac\xd9\x2d\x74\xfc\xe2\xcb\x50\x3e\x4a\x29\x24\x75\x34\xee\xca\x66\xa6\x23\xec\x7f\xe2\x48\xfa\xc8\x70\xa8\xd3\x2a\x2b\x79\xab\x53\x55\xa6\x6c\xdd\xd3\x4a\x09\x6e\xf6\x8a\xdc\x5e\xa4\x2d\x41\x51\xb8\x9c\xda\xa5\x85\x7b\xe5\x3e\xc8\x15\xe8\x5b\xf6\xe1\x4d\x08\x3f\x81\x20\x93\x44\x35\x5d\xc9\x0b\xb4\x9a\xae\x14\xe4\x5f\x6d\x57\xa4\x80\x7b\xeb\xbe\x68\xe8\xdb\xf5\xbd\x28\xa7\x6e\xd7\x77\x43\xc7\xda\x5e\xd3\x8f\x4c\x89\x6d\xdf\x8f\x93\x4c\x01\xae\xee\x87\xf4\x92\x46\xfd\x28\x5c\xdf\xa4\x1f\xa9\x02\xbe\x4c\x47\x32\xed\xbd\xae\x27\xd9\x6b\x1a\x76\x25\x7f\x43\x7d\x5f\x84\xfd\xd0\xbe\x23\x1f\x84\xe5\x51\xdd\x8b\xf4\x05\x8d\xba\x90\xbb\xba\xbe\xfd\xcc\xea\x69\x2f\xa6\x68\x0a\x5f\x8d\x88\x62\x06\x55\x23\xf1\x24\x5d\xaa\xb4\x39\xf7\xcf\x12\x36\xeb\x7a\xb7\xb4\x96\xc5\x5d\x34\x5b\x4c\x99\x47\xa3\xa5\x17\x63\x16\x76\x04\x1e\xa1\x85\xdf\x62\xfd\x0e\x8b\xd6\xe1\xf5\xa2\xdf\xef\x59\xe6\x63\x0c\xfc\x64\x7c\x11\xfb\x28\xf8\x38\x43\xd1\xc7\x14\x58\x92\xd9\xf5\x4b\x16\x67\x2c\x42\x48\x79\xd4\x20\xd5\xd7\xd2\x37\xf3\x4f\x5b\x89\x2e\x7d\xb2\x5c\xcb\x75\x5f\xea\x95\x8f\xfd\x11\x80\x0c\x31\x72\x26\x19\xb0\xdc\x18\xcd\xaa\x22\x16\x6e\xe5\x58\xa1\x2c\x3f\x42\x49\xc8\xa8\x56\x78\x0b\x58\x7b\xf5\x42\x35\xe7\xa2\x34\x3f\x47\xbd\x49\xcd\x06\x91\xab\x62\x64\x0b\x77\x05\x28\xed\xbb\x29\x80\x46\x3a\xcc\x6d\xf1\xaf\xcd\x44\x85\xee\x31\xba\x9a\xba\xeb\x16\x2b\x2d\x0b\x10\xe9\xb5\xe5\x83\xa2\x0f\xb6\xc2\x73\xb1\x9a\x7b\x36\xed\x55\x93\x02\x26\xdd\x3c\x7b\x69\x61\x2a\xe7\x90\x57\x14\x74\xc5\x3b\xb0\x27\xe0\xaa\x1c\xc3\x3a\x2c\xc4\x1e\xda\x4a\xa0\xa2\x60\xe8\xe5\xf2\x4c\x52\xc6\x34\xb8\x64\xf1\x92\x46\xac\x34\xcb\x6d\x53\xad\xe7\xf9\x13\x6d\x18\x8a\xe2\x22\xeb\x63\x51\x0d\xa8\x37\xd7\x50\xf8\x44\x86\x3e\x72\x4c\x63\x4d\x65\x12\x0a\x7d\x40\x00\x06\x00\x75\x84\xb0\x55\xea\x9e\x64\xb5\x51\x42\x7d\x19\x94\x14\x44\xc9\xca\xad\x70\x97\x35\x39\x5c\x04\x6f\xf2\x10\x10\x15\xe6\xe4\x44\x10\x06\x9d\x10\x26\x80\x82\xd3\x19\x45\xc8\xc8\x87\x02\xc8\x49\x71\x9d\xac\xc9\x6b\x28\xa0\x42\xf5\xa3\x35\x60\x31\x77\x78\xc5\x91\xfb\x45\x64\xfa\xd7\x87\xff\xf9\xf1\xd7\xee\xac\x0a\x91\xb9\x71\xe2\x8d\xdd\x61\x91\x78\x83\xe3\x3c\x25\xcb\xbd\x35\x84\x46\x95\x24\x05\xea\x5e\x04\xa6\x91\x3f\x02\xff\x60\xec\xf6\xf5\x16\x7a\x83\xd0\x48\x09\x66\xa8\xa2\x7f\xb3\xca\xe4\xc5\x8d\x76\xb0\x68\xf0\x6e\xa4\x87\x92\xdf\xe2\x8e\x3b\x58\x74\xcc\x2e\xd1\xbf\x35\xb4\xa3\x68\x91\x37\x8b\xb2\x2d\x7f\xb0\x15\x1b\x01\x5d\xca\x9d\x54\xb6\x2a\xb2\x34\x47\x4d\xb0\xbc\xc4\x64\xd2\x6e\x4d\x72\x33\xf3\x9c\xdc\xab\xec\x7c\xfc\x7f\x7f\xfb\xf5\x2f\xf8\xf2\x3f\xab\xd3\x21\x6f\xb0\xd8\xd4\x1a\x48\x05\x76\x1b\x91\x0a\xa4\x81\xee\x83\x6a\xb6\xe4\x8a\xf2\xf0\xbd\x83\x25\xb9\x04\x76\x65\x34\x59\xca\xc0\xc5\x4c\xfa\x2a\x76\x81\x46\x3d\x53\xb8\x79\x55\x4f\x73\x91\x8f\x57\x43\x33\x50\xd5\xe1\xb6\x64\xbc\x65\xbd\x6e\xd0\xfa\x3d\x5d\xeb\xf7\x56\x6a\x7d\x4d\xf2\xf7\xb2\xad\xd7\x32\x3b\x3c\x29\x3a\xfd\x0f\xa8\xb5\xa5\x23\x76\xe8\x66\xe7\x73\xbc\x0e\xcf\xda\x74\xb0\x2d\x99\xb5\x78\xc3\x50\x63\x14\x39\x19\x2b\x63\x13\xe3\xae\x58\xad\x5c\x36\x20\x57\xe3\x28\x30\xd7\xcb\x4f\xa0\x46\xc0\xf2\x29\x2a\x5a\x6a\x02\xba\x34\x73\xd9\xa3\x75\x4c\xc3\xfa\xbd\x57\xa1\xf2\x75\xcc\x63\xee\x1c\x3a\xe3\x6f\xc8\x3e\xf6\xbe\x5c\x6a\xb5\xe2\x9b\xd7\x50\x79\xac\x81\xa8\x38\xef\x7b\x5c\x3d\xdd\x36\x3f\xe6\xd5\xd9\xb6\xbb\x4b\x71\x9c\x9a\xeb\x67\x38\xad\x99\x38\x4a\x9e\xad\x6c\x91\x4a\x3d\xd7\x25\x6d\x9b\x4e\x33\x1e\xd4\x86\x39\x8e\xeb\xe4\x40\x35\xff\x60\x4c\x5f\x4a\xe9\x96\x4c\xc9\xdd\x9c\xf4\x5a\x35\x89\x76\x55\x90\xc5\x92\x79\xb1\x0d\xbc\x36\x75\x28\xfc\x8c\x48\xb5\x51\x9a\x6c\x43\xdd\x5f\x21\xb9\xba\x02\x55\x09\xb3\x7a\xaa\xb2\x55\x48\x53\x33\x0d\x4d\xc7\x9a\xba\x4a\xf6\xac\x6a\x27\xac\xc9\xea\x90\xc2\x9c\xf7\x6a\x76\xfc\x15\x04\xff\x7c\xf5\xeb\x79\x52\x6d\x76\xc4\x9b\xcb\x6a\x6d\xeb\x69\xce\xf9\x86\x9b\x8b\x23\xd5\xec\xd6\xb9\xaa\x4b\x5c\xc1\xcb\x3a\x45\xdb\x58\xcc\x7c\x01\xe8\xdc\xa1\x2b\x4d\x5a\x31\xcd\x4a\x66\xed\xd6\x92\xb3\x76\x07\x04\x64\x11\xde\xef\xd4\x3d\x38\x9c\xe2\xd9\xe5\xe3\xb8\x7a\xea\x22\xe0\x07\xef\x60\x74\x93\x4f\x05\xdf\x7c\x49\x44\x39\xda\x90\xa7\x80\x30\xaf\x51\x88\x41\x33\x84\xeb\x01\xab\x01\xa1\x41\xb8\x36\xd7\xd3\xcd\xc6\x99\xe3\x0d\xa2\xd3\x69\xab\x77\xbe\x99\x87\x81\x84\xad\xef\x36\xc1\xd6\x87\xc1\x06\x02\xd5\x85\x02\x7a\xca\x25\x69\x83\x3f\x86\x41\x21\x7c\xd9\x2a\xba\xa4\x5a\x29\x9b\x4a\x1e\xa7\xf7\x2a\x2a\x5d\x59\xfa\xf8\xde\x5a\xd2\xc7\x9b\x25\x8f\x37\xe8\xf4\xb2\x19\x4a\xfb\x52\x77\x44\x0a\xc3\x72\x68\x6a\xae\xff\x67\x53\xf4\x32\x46\x93\x4c\xf1\x07\x7e\x10\x33\x61\x90\x02\x2a\xcb\xb9\x76\x1c\xf3\x7b\x7f\x86\xe3\xcb\x30\x8a\xb8\x4d\x39\xbb\x98\x84\x58\x8c\xfd\xae\x12\xbb\x2c\x64\x4b\xb5\x9a\xc4\xb9\xd9\x5f\x58\x4e\x39\x5e\x4d\xed\x0a\xca\x72\x49\x14\xe7\x72\x15\x12\xca\x65\x61\xa3\xc6\x00\x9c\x7d\x95\x63\xa5\x65\xac\x72\xaf\x4e\x2b\x5d\xdd\xfd\xcc\x95\x41\xca\xf6\x45\xc7\x93\x45\x09\xe9\xca\x61\xa1\xc0\x22\x83\x3f\x9f\x08\x2c\xc6\x07\xe3\x35\xed\xb8\x74\x8b\x5c\xb3\xb2\xf8\x30\xa2\x7c\x67\xd3\xd3\x83\xff\x1c\x5c\xfe\x54\xbd\xef\xfa\xd3\xb0\xca\x5f\xcd\x07\x9d\x6e\x83\x28\x4f\x90\x4b\x8d\xf5\x96\xf4\xb8\xbd\xd6\x2a\x67\x83\xcd\xf0\x59\x8b\xcd\x30\x9f\x43\x98\x44\xb3\x2b\x69\x6f\x7c\xda\x64\x6f\x24\xf7\x6c\x66\x77\x5c\x13\x7d\xca\xe6\x36\xbf\xda\xad\x6f\x58\x24\x4c\x59\x62\x2f\xdb\xf0\x46\xd6\x7b\xae\x2a\x7a\x0d\x42\x1d\xcf\x84\x03\xfc\xe9\xd0\x31\x0f\xe9\x12\xd0\x86\x3a\x76\x8b\x6e\xc6\x5e\x76\xeb\x52\xa1\x0e\xa9\x81\x8c\x35\xa0\x32\xc0\xd1\xa8\x3b\x69\x76\xa8\x5c\xca\x4c\xa2\x77\xae\x8b\x10\x54\xf5\xb2\x21\x39\xb4\x36\x42\xd0\xb2\x9e\xa2\x06\x6d\xc5\xa3\x1e\xba\x08\xc1\x7e\x49\x04\x44\x61\x73\x6e\xd4\xc5\xb6\x41\x90\xf4\x1d\x59\x94\x20\x9f\xe4\xbd\x52\x01\x12\x63\x79\x2e\x71\x79\x08\xf7\x29\x0c\x0e\x01\xbf\xa9\xcd\xb3\x5b\x66\xf3\xb4\x56\x08\xc9\x3e\xe9\x47\x99\x33\x9c\x0e\x24\x1d\x53\x91\x78\xd7\x59\x1a\xf6\x6b\x96\xa6\x73\xed\xd5\x29\x5e\x6c\x30\xe4\x2c\x2f\x36\xb0\x37\x53\xd0\x49\xcf\xa5\x03\x7b\x94\x1d\xd1\xd1\x39\x2f\x87\x8d\x2c\x7e\x26\x81\x7c\x3d\x58\x1b\x73\xb5\x4e\x23\x5f\xb1\x44\x64\x01\x6f\xa8\x5d\x49\x35\xa5\x72\xd5\xc8\xcb\x5e\x19\x69\x66\xd3\xb4\x69\xa1\x4d\x08\x75\x46\x74\x2b\x84\x9f\x48\x07\x44\x04\x26\x86\x01\x88\x00\x06\xb5\x2a\x06\x51\x2c\x32\x45\x23\x1b\xba\x56\xea\xc4\xfa\xf5\x08\x69\xc7\xcd\x6c\x6a\x93\xc6\x81\x5a\xd3\xad\x6e\x02\x39\x9b\x77\xce\xaf\x2f\x28\xa6\xf4\x96\xd9\xa9\x4a\x34\x6c\x9f\x45\xc3\xba\x82\x84\x75\x69\xb0\x2a\x0b\x0f\x3d\x5b\x1f\x01\x6d\xf5\x5a\xd4\xd3\xcf\x8a\x02\x64\xdf\xcb\xd3\x95\xb5\x4a\xe2\x9c\x4d\xbb\xfb\x94\xc8\x3a\x7e\xe5\x72\x3d\x57\x7b\xff\x9c\xf4\x7e\x96\xe0\x78\xf2\x01\x30\xb7\xfe\x29\xa7\x56\x54\xc6\xa1\x22\x8f\x52\xf3\x3c\xd2\xa5\xd5\x1f\x73\xee\x5f\x28\xf9\xa7\x12\x9a\xa9\x46\xe0\x53\x8f\x69\xdd\xeb\x34\xc9\xce\xa5\x84\x3e\xad\xd8\x7f\xf2\x93\x6b\x75\x3e\x5f\x65\x5e\x15\x63\x90\x39\x3f\x55\x13\xb7\xd4\x2a\xd3\x66\x63\x79\xca\xd9\x4b\xb4\xd5\x67\xf5\xea\x4e\xdb\x7d\xb4\x21\x7b\x9b\xfa\xbf\xd3\x38\x53\xa5\x12\xe3\x32\x9e\xc1\x60\x29\xc6\x2d\xf5\x7f\xff\x00\xd1\x28\x9e\x00\x03\xc7\x46\x96\x8b\xd7\x22\xc3\x42\x19\xb1\xb2\xac\x6a\xa3\xed\xe4\x6d\xf8\xa1\x97\x67\x7c\x56\x3f\x73\x3e\x52\xfd\x60\xbe\xf2\x35\x0d\x92\xd3\x6f\xad\x8d\x5e\x3b\x46\x8c\x8c\x9b\x78\x66\x4c\xfc\x1b\x03\xc6\x38\xcf\x08\x47\xd4\x5d\xca\x90\x28\x3d\x93\x5c\xee\x23\xc0\x9f\x40\x1e\x78\x19\x23\x77\x0d\x53\x89\x45\xf4\x83\x18\xfe\xfb\x5b\xd2\x3e\x30\x21\x2d\xb8\x00\x86\x0f\x6f\xa4\xf7\x37\x6a\xb2\xdc\x5c\x80\xcb\x1a\xf7\xe0\xe6\xe3\x0a\xf9\x84\xf9\x29\xc9\x09\x24\xa8\x91\x10\xc4\xa3\xa4\x13\x11\xdd\xb2\x9a\x3a\x41\x7d\x82\x6c\xa4\xf4\x72\x69\xee\x95\x05\x14\x26\x13\x1f\x06\x49\xa6\x34\x30\xb5\xb9\xb7\xef\x98\x88\xca\x73\x18\x13\x19\x0e\x90\x01\x63\x04\x2e\x01\x42\x4c\x57\x27\x17\x70\x6b\xcb\x31\x3f\x5e\x44\xbe\xda\xde\x57\xf1\x68\x46\xfa\x4f\x7d\xda\x46\x0c\x0d\x25\x3f\xb7\xfa\x5b\x35\xf8\x9c\xfa\x91\x8b\x80\x8f\xe0\x06\x87\xee\xcd\xf1\xe1\x87\xd3\x62\x05\x0a\xa2\x73\x5d\x01\x4c\x79\x6f\x12\xec\x23\x0c\x02\x51\x98\x62\x3d\x83\xf9\x01\xf8\x01\x5d\xd7\x57\xb3\x30\x28\xb3\x13\x5b\x8d\x5f\xcb\xe5\xd0\x52\x15\x69\xc1\x5a\xb8\xe6\x84\xbd\xba\x6c\x2e\xcd\xe0\x68\x02\x19\x8c\x76\x3e\x8f\xc2\xab\x69\xc0\x86\x71\x04\x65\x50\x9b\x2c\x57\x8a\x45\x38\x28\xea\x86\xe2\x6f\x78\xb0\x84\xc5\x45\x38\xe7\x62\x47\xf8\xef\x19\xf3\xfd\xca\xe8\x9c\xcc\xaf\xb8\x5e\x34\x8e\x1a\x12\x59\x4b\x9c\x25\x25\x0b\xbb\xdf\xf0\xca\xf1\xd1\xe4\xef\x7f\xd9\x39\x78\xdf\x88\xd6\x7e\xd3\xb0\x9c\x06\x31\x92\xdd\x3f\x3e\x29\xdf\x43\x00\x07\x98\xf7\xc1\x2b\x7f\x4f\xc0\x00\x75\xf7\x6d\x55\xfc\x3a\xef\xea\xc8\x4d\xbd\xb4\x65\xec\x2f\x69\xb0\x78\xa6\xff\x11\x3b\x5e\x8a\xf2\xd5\x00\xd6\xef\x57\xec\x6b\xb2\x6b\x89\x40\x5f\x41\xb8\x72\x39\xb8\x16\x99\x9a\x11\x36\xde\xaf\x50\xfd\x1b\x08\xcf\x5f\xbd\x1e\x57\x66\xa6\x4a\x00\xb1\x7b\x4c\xb3\x6a\x23\x7a\x9f\xd7\x8b\x5e\xce\x9f\x55\x43\x70\xfb\xec\xab\xfc\xfd\x2a\x7f\xd7\x53\x41\xf8\x89\x1a\xdb\x68\x91\x53\x56\x93\xea\x57\x15\x36\x5d\x32\xd5\x4f\x6a\x5f\x96\xef\x51\x11\x01\x6f\xd4\x9f\x34\x18\xbc\xaf\xe6\xa7\x35\xcd\xf0\xab\xea\xe7\x2a\x19\x7e\xe5\x8d\xd7\x46\xc0\x65\xf4\x6a\x56\xdb\xb8\x57\x12\x01\xdf\x95\x2e\xc8\x47\xc0\xbb\xad\xba\xd8\x5b\x2a\x02\xde\x2d\x89\x80\xb7\x48\x8f\xcb\x91\x83\xac\x2d\x10\x6a\xae\xbb\x80\xaf\xa9\x2d\x29\xf8\xc7\x0a\xab\x96\x79\x62\x85\x92\x77\x3e\x06\xc6\x65\x1c\x45\xf1\x75\x08\xaf\x04\x88\x20\xa1\x3e\x44\x04\x46\x20\xfc\x0c\x0c\x8c\xfc\xcb\xcb\x70\x64\x5c\xa2\x78\x62\x08\x9e\xa7\xec\x52\x3c\x46\xf1\xec\x6a\xcc\xca\x0e\xf0\x5d\xd2\x35\xde\x00\x1f\x41\x63\x12\x23\x60\xf8\x17\xf1\x0c\x1b\x8c\x86\x6b\x86\xc8\x6b\xc4\x5e\x6a\x84\xd0\x88\x67\x28\xa7\x73\x56\x38\x8a\x0e\x1a\xd6\x28\xd5\xd1\x23\x0f\x2b\xbc\x3f\xb5\x5e\x23\x3e\x70\x09\x06\xd3\xce\xc5\x4d\x87\xfc\x5b\x74\x11\xb9\x55\xea\xed\x86\xb2\x0b\x37\x13\x46\xcd\x62\x5c\x4f\x36\x55\xc1\x53\xa8\x50\x4a\xe0\xb4\x04\x3c\x5c\xe0\x17\x7d\xa2\xd3\x9e\xd6\x56\x2a\xbd\xe2\x1d\xeb\x2c\xfb\xce\x59\x1e\xb3\x6c\xc8\xb6\xc3\xb9\xbe\xdc\xb8\xfc\x17\xff\x5a\xa5\x54\xe7\x9b\x55\x32\x2b\x23\xc6\xde\x2a\xb1\x99\x6c\x6e\xfb\xfb\x6f\x28\x52\x5a\x57\xfa\xab\xc0\xc4\xf5\x00\x5d\x08\xf5\x49\x9a\xcc\x19\xcc\x68\xb9\xf4\xfe\x86\x25\xdd\xc3\xb2\xda\xbd\x7a\x9d\x53\xc5\xe5\xb0\x16\xff\x05\x66\x4c\xa8\xf7\xea\xbb\xf8\xc7\xe5\x5e\xf4\xf3\xf5\xaf\x3f\x56\xfb\x2e\x38\xc9\xea\x46\xc8\xb5\x56\xb0\x07\x8b\x69\xdb\x12\x22\x54\xf0\xcc\x56\x51\x5b\xb4\xca\x75\x93\xf9\xa3\x64\xc5\x95\xd9\x04\x6b\x0b\xd2\x9b\x82\x4f\xfc\xaa\x53\x00\x50\xc9\xfb\xbd\x94\xc0\x73\x9e\xd6\x1f\xd9\x75\x76\x87\x0d\x2b\xb4\x54\x45\xdb\xd7\xba\x53\x6d\x70\x9f\x6a\xb6\x4b\x29\x7b\x14\x99\xca\x77\x9c\x6b\x5f\x72\xba\x42\xec\x36\x08\x13\x2e\x93\xb9\xa4\x4f\x8c\x9f\xf8\x44\x7f\x37\x1d\xf3\x32\xf2\x31\xa6\x6a\xda\x8a\x52\x92\x8e\xf1\x5a\x24\x64\x46\x69\x7f\xaf\x52\xf2\xc7\xeb\xcf\xdd\x68\x3c\xdb\x69\xe8\xe1\xcd\xe5\xa4\x72\xf7\xae\x54\x6a\x28\xad\x07\x4d\x6c\x1e\x7f\x9a\x84\x14\xf8\xd7\x2e\x27\xa9\x05\x2b\x4a\x73\xa7\x6f\x13\xfe\x68\xd1\x0f\xe1\xe9\xdd\xf9\x66\xfe\x29\x84\xc1\x52\x11\x37\xc7\xa4\x75\x28\xee\xd0\xf1\xeb\xe4\x39\x79\x8a\xbb\x83\x5a\xb0\xce\xd1\x95\x8f\x78\x98\x39\xbe\xff\x4d\x6e\x64\xc9\x2b\xac\x4d\xcb\x2e\xb7\x7c\xd5\xf9\x91\x57\x0c\x96\x72\xf2\x65\x22\x7b\x29\xb7\xb6\xa2\x53\x08\xa5\x82\xd8\x9c\x3f\x52\x7f\x07\x08\x7e\xb8\x39\x3c\x7a\xa3\x90\xed\x3f\x1b\x66\x2c\x35\xaf\x58\xc3\x0e\x8f\xde\xbc\x8f\xa3\x70\x44\x77\x52\xd3\x8f\xa2\xf8\xba\x60\x59\x5f\x87\x51\x30\xf2\x51\x70\x22\xe1\xad\xd2\x93\x30\xc6\xaf\xa8\x18\x55\x4e\x2f\x49\xdb\xf5\x4c\x11\x6e\x1d\x56\x73\x35\x2b\xe2\xa4\x0a\x3e\x86\x00\x6f\xcf\x82\xf0\xb4\x6a\xac\x96\x4c\x29\xd1\x56\xa1\x92\x18\xf7\x85\x4f\xea\x92\xad\x28\x3f\xfd\xb6\x66\x08\x2f\x63\x9a\x60\x3a\x09\x31\x08\x3a\x02\x9d\x42\x77\xe3\xc6\x5e\x4a\xb9\x63\xcb\x7c\xea\xbb\xe9\x75\x08\x39\xb5\xbd\x3a\x02\xa2\x00\x6e\xea\xda\xe9\xb0\xb6\xb1\xb2\x6e\xba\xf2\x41\x8d\xc6\xa1\x7c\xee\x3e\x90\xde\x8a\xa6\x75\xa4\x54\x8e\x75\x74\xb9\x6a\x45\x6e\xba\xd3\x11\xcf\x2f\xaa\xed\x3c\xb1\xb7\x99\xfa\xa5\xf4\x5f\x71\x52\x3f\x69\xe6\xa4\x66\x25\xd8\x91\xcf\x53\xb9\x18\xcd\x9a\x7c\xf0\x7f\x94\x82\x3c\x4c\xcf\x5d\x7a\x8c\x15\x0a\x46\x31\xe0\xaf\xc0\x14\xc0\x00\xc0\x51\xa8\x16\xcb\xa1\xe1\xf0\x59\x02\x0c\x7f\x14\x15\xe9\x71\x1f\xc0\x07\xe1\xd2\x07\xc6\x9d\x40\xee\xc2\x86\xbf\x43\x47\xc4\x30\x58\xf5\x6c\x1a\x20\x00\x90\x6d\xbc\x77\xf9\x79\xf6\xf2\xc8\x85\xca\x4f\xf5\x30\xbe\x58\xb6\x84\x48\x43\x3b\x41\x98\xb0\xca\x91\xad\x3e\x59\x02\x46\x33\x14\xe2\x9b\x1d\x7f\x14\x91\xff\x77\x92\x9b\x04\x83\xc9\xff\x48\xb1\xa5\x0e\x1b\x87\xa5\x3e\x48\x33\xfc\x69\x25\x92\xd6\xc8\xc5\x79\xbe\x56\xb0\x91\xa4\xfc\xd3\x65\x49\x69\x4a\x66\xa4\x26\x6c\xc4\x38\x68\xd2\xd8\x98\xf9\xbd\x64\x88\x7e\xcf\x6f\x7b\xcd\x4b\xd6\x84\xc9\x07\x30\x89\x31\x78\x75\x44\xfe\x1a\xfb\xc9\x5b\x76\xfe\x3d\x8a\x3f\x87\xcc\xb8\xfd\x3e\x86\x59\x0e\xf1\xa0\x50\x66\xe3\xc0\x19\xe8\xea\x7d\x3f\x29\x46\x80\x9f\x6e\xb6\x04\xce\xfe\xea\x25\x70\xf2\x7d\x71\x0a\x0f\xec\x56\x5e\x59\x51\x07\xa7\xfc\xc6\x26\xb5\x70\xf2\xb1\x14\xd2\xd7\x37\xf1\xc8\x8f\x34\x15\x66\xf7\x8b\xc3\xcd\x3f\xfa\xc7\x69\xf6\x55\x2b\x8a\x0b\x1f\x64\xf9\xf5\x92\x16\xd2\x94\xd5\xa7\x4e\x8e\xe4\x11\xf2\xb5\x8e\xaf\x07\x89\x8f\xa7\xf2\x9e\x7b\xd9\x8a\xb5\x45\x58\x65\x90\xab\x94\x1b\x28\xa3\xb0\x67\xb1\x0f\x16\x06\xf9\x2d\x45\xd1\xf3\xba\x20\x3a\xf3\x89\x53\x0c\x71\x58\xfd\x3a\xe8\xee\x85\x34\x58\x8b\xc3\x4e\x2a\x9c\x7d\xbf\x1e\xbb\xbf\xff\x84\xde\x47\xe0\xf4\xc3\xb2\x98\xcc\x0a\x8a\xb9\x55\xd1\x9a\x4f\xee\x89\x4c\xa8\x19\x5a\xb3\x11\x95\xd0\x57\xb4\xe6\x7f\x8b\x9b\x6d\x5d\x68\xcd\x46\xfc\x3e\xcf\xef\x0f\xad\xf9\xb4\x25\x5a\xb3\x51\x7f\x1e\x2a\x5a\xb3\x25\x5f\xd1\xef\x16\xad\x29\xcf\xaa\x0d\x82\x96\x2a\x5e\xb3\x36\xfc\x55\xa9\xb8\x5c\x1f\x1e\xf5\xd9\x57\x3c\xea\x7d\xd2\xfc\xf4\x54\x85\x9b\xea\x0f\x89\x5b\x5e\x0b\xcb\x0d\x21\x46\xac\x52\xbb\x39\xc6\x93\xe8\xcc\xbf\xa4\xcd\x63\xe6\x7d\x19\x9a\xed\x3e\xa0\x96\x8d\x1d\xfb\x79\xcc\x40\xca\xaf\xb2\x2e\xb6\x9a\x92\xd9\xa4\x27\xaa\x29\xe7\x6e\xe5\x53\xe6\xb9\x4a\x59\xb3\x4b\x8d\x7a\x61\xeb\x2e\x49\xd4\xb3\x6e\xe4\x59\x7e\x28\xd7\xc1\xcd\xb2\x56\x74\x48\x43\xad\x65\x15\xf6\x8d\x66\x28\x11\x23\x8f\x14\x91\xab\xce\x6d\x4e\x6c\xae\x8e\x63\xac\x49\xb8\x5f\x29\x21\x7e\xdd\xb0\xc7\xe7\x4d\x10\x8d\xce\x13\xe7\xa9\xf3\xec\x77\x8f\x6b\xcc\x53\x01\x2b\x80\x46\x6a\x27\x3c\x14\x54\x63\xb6\xa7\x2c\xe1\x03\x10\x26\xd0\xbd\x9a\xfb\x3f\xfd\xf3\xe9\x5f\xdf\xfc\xb4\x73\xae\x35\xf7\x0b\xe6\x39\xb7\x4f\x72\xdb\x7c\xcd\x62\xad\xb0\xf8\x86\x52\x06\x7c\x93\xbd\xbf\x72\x62\x09\x23\x32\xbc\x6c\xf1\x49\xe9\x4d\xcb\x7c\xbd\x07\x41\xfa\xfc\x6e\x84\xa2\xbf\xe3\xa3\xbf\x7e\xad\x13\xf2\xfb\xaf\x13\xb2\x34\x65\x46\x14\xfb\xc1\x03\x60\xc8\x88\xf7\x9e\x1d\xff\x78\xe9\x9f\x35\x92\x24\x55\x63\xda\x7c\xc8\x78\xcf\x97\x19\x34\x18\x63\x4a\xd8\x75\xdf\xa3\xf6\xf3\xaf\x91\xff\xc3\xab\x8b\x7f\xae\xaf\x38\x73\xfb\xd5\x5b\x94\xce\xc2\xad\xa6\x92\x7c\xd7\xba\xdf\x74\xe1\xa2\xb4\xf0\xd3\x04\x24\x89\xcf\xdc\x3c\xfb\xdd\x7d\xc7\xfc\x19\xfa\x17\x11\xa5\xb4\xbb\x0c\x61\xc0\xb4\xb8\x29\xbd\xa0\x09\x0c\xbb\x97\x77\xe2\xb5\x25\x64\x68\x3e\xcb\xc4\x54\x59\x66\x9a\xc5\xfe\x0c\x8f\x3b\x22\x5c\xd4\x09\xc0\xc5\xec\xde\x17\xea\xe9\xd5\xe5\xe3\xf0\xd7\xb3\xfd\xea\x4d\x63\x89\x6a\x3c\x8d\x67\x5e\xd1\x33\x7a\xe0\x98\xd7\x61\x80\xc7\x7d\xe3\xa0\xfb\xbf\xdf\x4d\x7c\x74\x15\xc2\xbe\xd1\x35\xfc\x19\x8e\xbf\x2b\x58\x1f\xe2\xfe\x71\x2f\x3d\xf5\x2c\xdd\x5c\xce\x43\xac\x90\x81\x62\xf6\xb7\x33\x30\xdf\xc6\xa3\x4f\xc6\xbb\xc3\x19\x1e\x1b\x69\x58\x36\x9b\x69\x8a\x9a\x2c\xde\x30\xe1\x7c\x24\x39\xe3\x47\x9c\xa6\x65\x4c\x78\xce\xe7\x04\xe0\x71\x1c\x98\x8e\xf9\x97\xe3\x73\x93\x25\x9c\xa6\xca\x2d\xc5\x1d\x0f\xcb\xfc\xbd\x32\x04\x23\x57\xe6\x96\x7a\x18\x63\x96\x19\xca\x0e\x74\x7a\xbb\x7b\xfb\x07\x4f\x9e\x3e\x7b\xbe\xe3\x5f\x8c\x02\x70\x79\x35\x0e\x7f\xfd\x14\x4d\x60\x3c\xfd\x0d\x25\x78\xf6\xf9\xfa\xcb\xcd\x7f\xf8\x5d\x9d\xf2\x2b\x76\xd2\xc7\x98\xad\x59\xbc\x45\x04\x1d\x7c\xc1\x1d\xe6\xaf\xca\x6f\xfc\x91\x7f\x41\xa5\x44\x5a\xce\x65\x0c\xa2\x69\xd6\x07\x93\x39\xa9\x45\x11\xcb\xa1\x63\x9e\x8f\x81\xf1\xee\xe4\xd5\x91\x41\xcf\x1b\x74\x86\x33\x91\x70\x1d\x46\x91\x71\x05\x88\x6c\x48\x12\x10\x64\x19\xc2\xb1\x71\x44\x17\x9c\x59\x4e\x0a\xb3\x6c\x23\xe9\x88\x3b\xe6\x11\xfd\xa7\xd0\x44\x72\x76\xb5\x16\x56\xea\x24\x4a\xf3\x7d\x8d\xaf\x89\x0e\x23\xaf\x79\xd3\xce\xae\x7f\x43\xc4\x75\x45\xda\x5c\x1d\xe7\x9a\x26\xc8\xbc\xce\x64\x0b\x59\x46\x23\x10\x84\x08\x8c\xf0\x47\x66\xf5\x71\x13\xb0\x9d\xb9\xa6\x13\xbe\xcb\x08\xf1\x84\x91\x04\xde\x7b\x68\x16\xfe\x15\xfe\xe3\xdd\x4f\xa7\x35\x55\x01\xd5\x7a\x6a\xd4\xfe\x65\xe0\x8e\x36\xa2\x7c\x23\x39\x12\x07\xcc\xff\xc9\x06\xb3\xbf\xc3\x39\x18\xfb\xa3\x28\xa4\x9a\xf2\xd7\x38\xe5\xfd\xa6\x03\xe4\xab\xe1\x0d\x0a\x65\x2b\x52\x5c\x9d\xd8\x2d\x68\x33\x88\xed\x21\xbb\xcf\x5b\x46\x3f\xa4\xc1\xfe\x1c\x82\xeb\xa5\x3c\xa2\x0d\x46\x65\x19\xba\x69\x8d\x9e\x51\x96\xe8\x5e\xad\x79\x9c\x09\x09\xb2\x3e\x02\xb3\x46\x9d\x5e\x8a\xa9\x9f\x3f\x57\x87\xd0\x4c\xe1\xb2\x2d\x37\x9e\x6c\x9c\xf6\x9d\x81\xf9\x3a\xfb\x14\xcb\x3a\xbf\x4d\x2d\xf5\x37\x45\x72\x19\x67\x38\x46\xdc\xd0\x68\x5f\x97\x43\xdf\xe2\x1f\x84\x13\x7d\xd5\xf6\x56\x79\xd2\xcf\xc7\x20\x01\x86\x90\x8f\xd4\x99\x1e\x4e\x26\x20\x08\x7d\x0c\xa2\x1b\x23\xf1\x3f\x13\xe5\x22\x36\x22\xda\xcb\x84\xf5\xd2\xf0\x61\x60\x4c\x01\x4a\xc2\x04\x4b\xba\xc7\x05\x8a\xaf\x13\x80\x8c\x19\x31\xb9\xdc\x62\x53\x96\x1c\x97\xe2\x45\xfb\x25\x05\xb5\x15\xed\x58\xa7\xf4\x76\x0b\x11\x01\x89\xb8\x92\xa3\x76\x7f\x3e\xf9\xf8\xea\xe4\xec\xf0\x87\x37\xc7\x1f\x3f\x1c\x1f\xbe\x39\x3f\x79\x7b\xbc\x06\x00\x39\x6d\x5a\x08\xa2\x20\x61\x25\x67\xb4\x9f\x43\x3f\xc1\x7e\xe0\xf2\xce\xf8\xdb\x0c\xa0\x10\x94\x73\x22\x6b\xbf\xf7\x4f\x00\x4c\x8d\x91\x8f\xfd\x28\xbe\x32\xc8\x32\x32\x66\xd3\x0e\x8e\x3b\x01\x51\x79\xaf\x43\x3c\x8e\x67\xd8\xe0\x8c\xaf\x2c\xb0\x01\xa8\x45\xec\x1a\x87\xf0\xc6\x60\x40\x83\xc4\x98\xf8\x01\xb5\x9a\x85\x27\xda\x31\x60\x1c\x80\x84\x4e\x04\x99\x94\x3c\x9e\x45\x81\x71\x01\xc8\x03\x59\xb8\xdf\x08\xa1\x81\x80\x1f\x19\x38\x9c\x00\xb7\xb6\xe9\x2a\x6c\xe5\x66\x0a\xe4\x20\xb4\x7e\x06\x8b\x5b\x99\x66\x5d\x15\x33\x32\x35\xe1\xee\x3d\xc7\x64\xaa\xc0\x40\x6c\x2b\x43\x61\x47\xd1\x70\x37\x03\x78\xab\x28\xd0\x3d\x47\xde\x84\x86\xd9\x95\x99\x23\x90\xdc\x1f\x43\x01\xd3\x50\x6a\x30\xa6\xd8\x0d\xae\x82\x88\x4a\xff\xd9\xbd\x0d\x83\xed\xf9\x6e\x25\x53\x3f\x33\x1b\x7b\xf5\xad\x7e\x47\x74\x83\x77\x97\x97\x72\xb3\xcb\x08\x36\xaa\x3e\x9b\x6e\x59\xd7\x68\xe8\x5a\x8e\xa7\x95\x23\x46\xcd\x6b\x4e\x2e\x71\xf7\x5a\x1d\xb8\x59\x56\x77\x1e\x5c\xca\xc0\xa7\xb2\x51\xa2\xd8\x22\x4b\x30\x26\x0b\xd9\xde\xc2\x08\x41\x3e\x4c\x88\x1c\x4d\x76\x7c\x84\x7c\x25\x9f\xdb\x31\x01\xb1\x16\x3a\x54\xf3\xa6\xea\x66\xe7\x12\xf9\x57\x54\xec\x15\x6f\x54\x0c\x16\x07\xaf\xcb\x64\x81\x1e\x16\x87\xa5\xde\xc0\xda\xde\x5c\xc4\x71\x04\x7c\xa8\xf6\xe7\xfb\xac\x43\x3b\x09\x40\xa1\x1f\x85\xff\x01\x68\xa7\x33\x45\xe1\x67\x86\x9b\x5f\xb5\x0f\xa5\x37\xa4\x4c\x13\x73\x00\x67\x13\x80\xfc\x8b\x88\xdc\xe2\x5c\x01\xdc\x4f\xdf\x69\xcf\x11\xc0\x33\x04\x0d\xec\xfe\xc0\xda\x7f\x2e\x7a\xb4\x58\xd8\xb5\x7d\x0e\x98\xcb\xe3\xf7\xd9\xe1\x57\x3e\x06\xad\x7a\x2b\xe6\x62\x67\xe9\x89\x9b\x7b\xc2\x03\x9b\xc1\xa2\x75\xab\xf4\xec\xa1\xf5\x09\xce\x48\xf3\x7f\xb7\x73\xf4\x94\x36\xbf\xd5\x2c\x4d\x30\xca\xc5\xce\x7e\x57\x3d\x3e\xa3\xcd\xaf\xef\xf1\x0c\x87\x51\xb2\xe3\x27\x23\xb0\xa9\x90\x97\x3a\x22\xe4\xcd\xd8\x80\x1e\x70\x29\x0c\xc3\x32\x77\x4c\x7b\x8b\xb7\x1a\xba\x0c\xf5\xf3\x02\xbf\x84\x6e\x12\x85\x23\x60\x75\x9d\x0e\xb6\xdd\x51\x0c\x47\x3e\xb6\x4c\xd3\x76\x7f\x8d\x43\x48\x6f\xea\x9b\x64\xa3\xac\xe8\x12\x8e\x2f\xd4\xaf\x77\xe1\x27\xe0\xc9\x7e\xe7\xd7\x64\xad\x8b\x4b\x7a\x10\xf4\xcc\x19\xbe\xec\x3c\x33\x45\x37\x51\xb6\xda\x5c\x1c\xff\x70\x83\xc1\x21\x11\x58\x16\xc8\xba\x0c\xae\x8d\x73\xf0\x05\xbf\x02\xa3\x38\x00\xc8\x82\xb6\x1b\xd0\x9f\x16\xb2\x2b\xbb\x77\x81\x63\xff\x6e\xbb\x97\x7d\x3b\x4b\xb4\xfa\x18\xd2\x56\xdb\x2e\xa0\x3f\xa4\x7e\x65\xfd\xbe\x44\xf1\x24\xeb\x39\xac\xee\xd5\xc8\x8f\x46\x33\xa2\x12\x75\xa6\x71\xc2\x13\x25\x8a\x42\xf4\xc2\x4f\xc2\x51\x27\x40\xf1\x34\x88\xaf\x61\xf9\xad\x0f\x68\x39\xf2\xeb\x6b\x96\xe1\xc8\x8f\x22\xf2\xa4\x0e\x83\x8e\x6e\x76\x35\x8a\xd6\x99\xe2\x90\xf9\xc8\x23\xef\x8d\x2f\x0d\xf0\xb2\xd8\x07\xb0\xe8\x83\xea\x6f\x47\xf3\xd9\x3a\x97\x21\xbc\x02\x68\x8a\x42\x96\x43\xb8\x69\x89\xe2\x40\x07\x79\x7f\x3d\x7b\x77\xea\x32\x81\x1d\x5e\xde\xa4\x4d\x4e\xaf\xf3\x9d\xc8\x49\x9c\xd0\x89\x8b\xa7\x66\xf6\x3c\xbc\xb4\x88\x6d\xe5\x79\x56\xe2\xb1\x1f\xc9\xcb\xd9\x00\x0c\xfb\x89\x6d\xe3\x31\x8a\xaf\xe9\x2a\x3d\x46\x28\x46\xd6\x2f\x59\x70\x9a\xd7\xc7\x95\xfa\xeb\x18\x93\x30\x49\x78\x49\x2e\x10\x5e\xc1\x9f\xc0\x0d\x8b\x07\xb9\xc6\x9b\x38\xfe\xc4\xcf\xf0\x10\x51\x08\x8d\x7f\xff\xf2\xcd\x1c\x2c\xfe\xfd\x8b\x71\x15\x63\xfa\x47\xb2\xf8\xf7\x2f\xbf\xd8\x5b\x6c\xa1\x8d\xbc\x48\x08\x49\xc7\xb4\xdd\x89\x3f\xb5\xac\xe2\x72\x14\xa1\x81\x2b\x80\xad\x99\x03\xec\xad\xb4\x3b\xf8\xf6\x16\x73\x89\xfa\xe7\xde\xb2\x3d\x49\xa2\xd9\x55\xd3\xd6\x63\xd6\x7a\x31\xe9\x17\x76\xfa\x9b\x69\x20\x9e\xe7\xcd\x06\x78\xb8\xbd\x6d\x99\x7f\x32\x3d\xcf\x0b\xb7\xb7\xad\xd0\x4b\xd7\x92\xed\x90\xb3\x5e\x68\x3b\xd2\xe5\x30\xbb\x3c\xde\xde\xb6\x62\xf5\x72\x38\xf4\x62\xe5\x72\x40\x2e\x27\xff\x78\x89\x72\xdc\x67\xc7\xfd\xa1\x87\xac\x01\xb9\x8f\xbe\xcb\x49\x86\x62\x6f\x19\xd9\xb6\xed\xcc\x16\x8b\xca\x29\x1e\x84\x02\x28\xb8\xf9\x8d\x12\x78\xc0\x3d\x8a\x63\x14\x38\xd8\xc3\xec\xd7\x56\x04\x88\xf8\xed\x6e\x5d\xc6\xc8\x22\xbf\x13\xaf\xfb\x5d\xf2\x67\xe0\xfe\x1d\x8c\xf8\x87\xfe\x2e\x79\xfc\xd8\x9e\x13\x4d\x0f\x79\xf4\xf8\x20\x19\x76\x30\xff\xb1\x05\x1f\x7b\xe8\x4f\x68\x41\x6e\xf5\xbd\xb7\x3e\x1e\xbb\xc9\x6f\x08\x5b\xd0\x7e\x0c\xdc\xd7\x20\xbc\x1a\xe3\xc7\x98\xff\xe0\x73\x30\xf2\xfc\xc7\xc0\x3d\x0c\x7e\x9d\x25\x98\xe8\xa5\x8f\xb1\xf4\xc7\x56\xf4\xa2\xbb\xbd\x6d\xf9\x5e\x94\x7e\x68\xfa\x50\x14\xcf\x60\x60\xf5\xc0\xc1\x9f\x7c\x7b\xa7\xd7\xed\x56\x8f\x69\x3c\xd9\x19\x45\xe1\xe8\x53\x87\x26\xed\x76\x7c\x38\x1a\x6f\x0a\xfd\xa8\xec\xd5\xb8\x28\x0c\xb0\x83\x3c\x13\x23\xd3\x9e\x27\xd7\x21\x1e\x8d\x2d\xec\xf2\xcc\x04\x18\x07\xd4\x7c\x77\x71\xfc\x26\xbe\x06\xe8\xc8\x4f\x80\x65\xdb\xf3\x91\x9f\x00\xee\xab\xea\xd3\xdf\xcc\xc3\xc5\x7e\xfb\xfc\xdf\x8b\x19\xc6\x31\x34\xfb\xec\x75\x0b\x36\xb2\xbe\x07\x2c\xe4\x88\x17\xd8\xee\x6f\x33\x80\x6e\xce\x68\x02\x4e\x8c\x2c\xd3\x37\xed\x2d\x7f\x7b\x1b\x5a\xbe\xbd\x58\x6c\x89\xa5\x2e\x8f\xc3\xc0\x9c\xc4\xb3\x04\x90\x2d\xd0\x74\xd8\xef\xd9\x94\xb9\xac\x46\x9f\xcc\x61\x51\x5e\x48\x2a\xc7\x5b\x72\xf5\xf1\x67\x00\xb1\x05\x9c\xf9\xc5\xec\xe2\x22\x02\x09\xd9\xbf\x46\x64\x7a\x47\x62\x37\xfb\x1c\x82\xeb\xfe\x75\x08\x83\xf8\x9a\x6e\x5c\xee\x65\x8c\x8e\xfd\xd1\x58\x7a\x2e\x99\xa9\x6e\x10\x26\x53\x1f\x8f\xc6\xec\x89\x98\x5c\xda\xe0\x9b\xc7\x09\x48\xf0\x5d\x2c\x25\x8c\x6e\xb2\x9d\x98\xbf\xd7\x02\xf6\x62\x44\xda\x6c\x41\x31\x32\x35\x6b\x9f\xb4\x99\x6d\x71\x51\x98\x60\x00\x69\x2a\xc7\x66\x1b\xef\x0d\x86\xca\x67\xa3\xad\xde\x1a\x45\x7e\x92\x18\x98\xc9\x7f\x34\xa3\xf3\x85\x5d\x8a\xc7\x61\xe2\xa6\xad\xf3\xc0\xc2\x0f\x02\x32\xd7\x1d\x64\xcf\xe9\xa2\x27\x9b\x43\xb6\xdf\x7b\xe9\x7e\x6f\xfb\x1e\xd8\x02\x51\x02\x8c\xf0\xd2\x22\xc2\x9d\xc9\xb9\xf8\xd2\xc0\xe4\x94\x8b\xc0\x24\xfe\x0c\xdc\x8b\x10\x06\x44\xc9\x23\x57\xd2\x07\x62\xcf\xf4\x83\x80\x7e\xf6\x37\xfc\xb5\xa6\x13\x79\x26\xbb\x5e\x3d\xbe\x95\x8a\x63\xc0\x36\x01\xec\x99\x44\xbf\x8b\x3c\x33\xbe\xbc\x34\xed\x2d\x26\xd1\xe0\x96\xc9\x4d\xaf\xb4\x79\xc9\xf6\xb6\x95\x78\xf3\x01\x1c\xf6\xd1\x42\xec\x8e\xa1\xc7\x87\xf8\x13\xb8\x49\xac\x24\xbf\x3f\xc2\xe2\xea\xa6\xc3\x20\xb4\x99\x01\x1e\xd2\x03\x8e\x46\xd3\x19\x44\xfc\x1c\x5a\x2c\x2c\xe8\x24\x03\x38\x24\x53\x7a\xcb\xf7\x2c\xdb\x7b\x11\xd2\x37\x01\xef\x05\x11\x00\x0b\x31\xaf\x94\x91\x77\xa7\xb3\x64\x6c\xf9\xb6\x43\xae\xe7\xfb\x34\xf0\x72\xd7\x5c\x86\x30\x38\x81\x01\xf8\xa2\x5d\xa5\xc0\xf3\x3c\x5f\xda\x41\x73\x37\x13\xbd\x60\x04\x2c\xe0\xf4\xec\x41\x77\x68\xd9\x8b\x05\x1b\x72\xcb\x2e\x7b\x9d\xd4\xe8\xea\x67\x76\x9d\xdc\x71\xb6\xb3\xd8\x0e\xa0\x0b\x64\xab\x6a\x81\x00\xf2\xc5\x39\x1d\xc9\x4e\xea\xc8\x2e\x5f\x25\xe2\x37\x99\xd9\x64\xa5\xa6\xba\x0b\xb0\x59\x1b\xe7\x0b\xe6\xb6\x70\x90\xe3\xe7\x56\x75\xf5\xb5\xf3\x85\x13\x29\x33\x04\xd8\x74\xdb\x44\x5e\xf7\x3b\xf4\xe7\x48\x6c\x97\xe8\xf1\x63\x1b\x7a\xd1\x00\x0d\x1d\xec\x52\xa0\xed\xbb\x4b\x0b\xda\x2f\xbc\xee\xed\xad\xe5\x13\xfd\x02\x90\xaf\x2f\x46\xcc\x5f\xd0\x77\x93\x65\xc4\x9f\x7d\x05\xf0\xbb\x6b\x28\x16\xf8\x19\x43\x5d\xb0\x1d\x38\x7d\xbf\xf6\x9a\x25\x1a\xc4\x1f\x37\x45\x31\x8e\xc9\xd2\x70\x45\x52\xc3\x49\x72\x9c\x5a\x21\x2e\x31\x22\xc8\xa2\xb7\xc9\xd6\x9c\xf6\x60\x91\xf6\x60\x3d\x62\x35\xf2\x20\xdd\xff\xe8\x64\x4b\x3c\x69\x91\x25\xde\x7c\xc1\x4f\xcc\x47\x33\x84\x00\xc4\x54\x10\xf4\xc3\x85\x97\x38\xb1\x87\xad\xc4\x19\x98\xf2\x19\x73\x68\x6f\x01\xd7\x9f\x4e\xa3\x1b\x8b\xcc\x3d\x67\x00\xc4\xb2\x99\x33\x91\xcb\x1e\x90\x2c\x3c\xe0\x84\x1e\x99\x2b\x82\x3e\x23\xbd\x3f\x75\x21\xc8\x8f\x09\xe9\x54\x1e\xda\x2e\x93\xf4\x91\xed\xe2\x31\x80\x16\xf6\x5e\x90\xd9\x83\x65\x39\x47\x95\x62\x5b\x2c\x0c\xae\x69\xe9\x64\x65\xf2\x32\xe9\xfb\xb6\x85\x89\xaa\x0d\x5d\x72\xf0\xf6\xd6\x82\xde\x9c\xfc\xea\xa7\x58\x56\x27\xf0\xb1\xdf\x87\xa9\xb4\x8a\x24\x2d\x1d\xba\xe4\xe4\xed\xed\x7c\x41\xb1\x81\x64\xa7\x8f\xb6\xb7\x2d\xe0\x8e\x66\x28\x89\x91\x87\xac\x88\xff\x74\xc4\x31\xf2\x11\x46\xfe\x68\x0c\x8e\x62\x88\x51\x1c\x79\x91\xf2\xa7\x03\x68\xe9\x72\xf4\xd9\x27\x67\xc4\x4f\xdb\xe9\xf4\x3c\xcf\xb3\xd4\x5b\x6f\x6f\x4d\xd3\x4e\x67\x96\x09\xe3\x4e\x82\x63\x04\x4c\x32\x5d\xe8\xc2\x97\xbf\x8c\x07\x6d\x26\x0d\xd4\x1d\x1e\x66\x42\x58\x23\xba\x64\xdd\x40\xda\xbc\xde\xa3\x78\x12\x26\x40\x95\xd1\x09\xc0\xe7\xe1\x04\xc4\x33\x2c\x1d\xb7\xe7\x90\x2a\x11\x52\xb7\x6e\x6f\x77\xc1\x1e\xd3\x2b\xc8\x0a\x24\x4d\x9a\x22\xf0\x39\x8c\x67\x09\x6d\x92\x2a\xd3\x94\x53\x5e\xa1\x57\x4e\x48\x1f\xbf\x70\xe2\xa1\x30\x12\x1e\x31\x6b\xa4\x38\x00\x21\x1f\x80\xfc\x36\x67\x31\xc4\x8e\x93\xce\x54\x03\x7b\x40\x68\x8b\x57\x00\x1f\x49\x0f\xb1\xec\xad\xf4\x2d\x78\x7b\x5b\x33\xa0\xb4\x39\xa2\x0b\x49\xb6\xc2\x85\x04\xf1\x93\x24\xbc\x82\x42\xe6\xb0\xa9\x6f\x81\xec\x3a\x47\x56\x06\xfa\x7c\xf1\x02\x27\x65\x12\xe3\xfa\xdc\x35\x0a\x31\xff\xbd\x58\xd8\xce\x3c\xd7\x4e\x9d\xe7\x22\x3f\x20\x0b\xe7\x0a\xe0\xf7\xf2\xf8\x96\xdd\xa5\x7c\x04\xf2\xba\x64\xe1\x00\xf7\xb3\x1f\x85\x81\x8f\xc1\x11\x9b\xeb\x80\x77\x86\x2e\xbf\x1f\xfc\xd1\xa7\xf8\xf2\x52\xf8\xab\x85\xbb\x49\xd2\x87\xf6\xc0\x9e\x83\x3d\x3e\x93\x1c\xe8\x65\xd3\xa7\x38\xfb\x84\xce\x23\xad\x3c\xe4\x30\x38\x16\xd9\x7c\x53\x82\x20\x97\x03\xd1\xed\xdb\x5b\xe5\x4a\x76\x98\x42\x3d\xa9\xc0\x4f\x3f\xa1\x6f\x73\xeb\xc0\xf7\x7c\x17\xc7\xcc\xd3\x6a\xd9\xce\xa3\x2e\xb3\x07\xa8\x8e\xe3\x67\x4b\xec\x80\xac\xad\x3d\x7a\x8c\x09\xf9\xed\x6d\xf3\xa0\xdb\x35\xc9\xa3\x98\x81\xd0\x25\xe6\xad\xdf\x57\x34\x3d\x45\xc5\x86\xca\xea\xc0\x16\xa2\xab\x83\xae\x07\x66\xd7\xa3\xc5\x62\x4b\x3b\x96\x70\x4b\xb8\x22\xe5\xdd\x93\xfa\x39\xd8\xf8\x40\x6f\xea\xa3\x04\x9c\x10\x53\x80\xf6\xf3\x51\x98\x9c\xfa\xa7\x16\xb4\x85\x34\x24\xd7\xb2\x99\x0b\xff\x8c\xb7\xb7\x2d\xe8\x75\x6d\x87\x1a\x7a\x13\xff\x8b\x05\x9d\x9e\x4d\xde\x9d\xfb\xb0\x68\x4b\x98\x39\x45\x09\xa1\x95\x95\xa0\x5e\xfd\x56\xb4\x0b\x2a\xd3\xee\xc2\xbf\x24\xa6\x9b\x76\x86\x69\x3c\x4d\xd9\xa6\x18\x11\xcd\x43\x99\x3a\x68\x90\x0c\xb7\xb7\x23\x37\x8d\xf7\x02\xea\x84\x09\xec\xbc\x9f\x84\x5c\xe8\x2a\x44\x80\xdb\xdb\x56\xf1\x20\xd9\x6a\x9d\xe2\xe1\xf4\xf9\x5e\xf6\x2a\x07\xd0\xfb\xed\xad\xb9\x10\xdd\x11\xdf\xbd\xb0\x13\xd3\xf7\x79\x64\xe2\x85\xb4\x0b\x42\x14\x01\x2b\x16\x9b\xa7\x4e\x49\x0d\x40\x04\x30\x30\xc8\xcd\x0e\x74\x11\x20\x23\x6e\xd1\x69\xc9\x36\x5a\xdd\x3d\x99\x15\x90\x6b\x33\xdb\xe9\xd8\x46\x48\x6c\x34\x8b\x4c\x86\xf4\xf9\x44\xfd\x24\xd2\xbf\xf5\x2c\x61\x1e\xd5\x8d\x4f\x14\x3f\x95\x4a\x91\x87\x9d\xc4\x83\xf6\xbc\xb0\x45\x92\xc9\x44\x74\x23\xae\xa3\x11\x29\xc9\x77\x17\x04\xfc\xe0\x86\x22\xdf\xbd\x5d\x76\x84\xb5\xdf\xd3\x38\x67\xb1\xc6\x39\xcb\xc4\x34\x1f\x35\xdf\x45\x20\x89\x23\x62\x0c\x2c\xfa\xb8\xf0\x82\xae\x7c\x01\xff\x4e\x36\xd3\x88\x1e\x59\xb9\x8b\x5f\xf4\x52\x29\x90\x7f\x4c\x4f\xa7\x18\xf0\x95\x4d\xb7\xc6\x85\xed\xb0\x3e\x52\xfb\x73\x21\xe6\x11\xd9\x30\x35\x77\x12\x7d\xb8\x74\x30\xb4\x2f\xa1\xdd\x35\x1d\x2a\xd0\xfb\x60\x41\xde\x90\x75\xa6\xf0\x20\x69\x7f\x0d\xd7\xb4\xbf\x86\xb5\xfb\x2b\x6d\xa2\xbc\x3f\x0a\xb7\x92\xda\x3a\xb1\x6d\xd0\xcd\xc0\xd8\xed\x17\x1a\xbf\x75\x81\x80\xff\x69\x8b\x4f\xbb\xc2\xf9\x3d\xd9\x0a\x25\x2f\x0e\x17\xd9\x24\xfd\x30\x83\x10\x20\x75\x4f\x55\x3d\x61\xc4\x2c\x26\x1f\x1f\x91\x4f\x20\x16\x3e\x9f\x80\xc2\xe4\xb7\xa0\x03\x0a\x8b\x3a\x9b\x7e\xfc\x31\xc4\x3c\xcc\x7b\x83\x94\xaf\xb5\xa0\x5b\x85\xda\x32\xac\xd9\xe8\x15\xc5\x91\xee\x67\xec\x61\x22\x95\x77\xce\xbf\xba\xc3\xf7\x90\x3e\x70\xf9\x2f\xa2\xd6\x21\xe5\x49\x7c\xcc\x41\x71\xc0\x77\xd9\x80\xef\xf1\x8d\xf7\x51\x97\x8f\xe3\xa3\x5e\x3b\x21\x53\xc8\xf8\x75\x1a\x7a\x8f\x2a\x1e\xcd\x34\xc9\x1d\x94\x7c\x9e\x56\x5e\xa7\xee\x86\xf5\x17\x4e\x51\xfc\xe5\xa6\xc9\x85\x5c\x44\xa0\x66\x6f\x17\x52\xb6\xfe\x5a\x22\x1b\x9a\x5e\x9b\x79\x10\xea\xaf\xe5\xb0\xd7\x34\x48\x38\x8a\x21\xd3\x5b\x47\x6a\x77\x01\xfc\x9c\x0f\x0c\x3a\xd4\x65\x20\x62\x44\xce\xcc\x19\x39\x01\x53\x8e\x26\x5b\x7c\xf6\x2c\xb1\x49\xc4\x70\x04\x88\x49\x10\xf3\x8d\xc1\x03\x34\x16\x9a\xfd\x45\xbf\x99\x27\x56\x1a\xf5\xb2\xd1\x21\xf7\xa8\xe0\xf9\x72\xe3\x01\x97\x23\x96\xe9\xe4\x3f\x13\x97\x09\xac\xa9\x7a\xf4\x1d\x1f\x57\xf5\xe8\x11\xff\x32\xf2\x51\x26\x0a\x1c\xab\xeb\x04\x2e\x80\x9f\x6d\x4b\x42\xd5\x0a\x34\xed\xc7\x0f\x3f\x9f\x9e\x1e\x7f\x30\x85\x8b\x1b\x8c\xcc\xfe\x24\xa7\x18\xa5\x8b\x94\xa9\xcd\x7c\x88\xc0\x17\x0c\x60\x60\xcd\xb1\x9f\x7c\xea\x5b\x5d\x67\xe4\x92\x5f\x76\x26\x36\xfe\x64\xd9\xf3\xcb\x18\x59\xdf\x3d\x22\xcb\xf3\x3b\xfb\x26\x04\x51\x50\x14\x38\xcc\x8b\x6c\x0b\x61\x6c\x53\xb5\xdc\x24\xcf\x32\x6d\x77\x0a\xd0\x65\x8c\x26\x96\xbd\xe0\xa2\x91\x36\xf2\x8a\x2c\x2b\x1f\xc7\x88\xb4\xd5\x4f\x6e\xe0\xc8\xc8\xb7\x38\xaf\x0c\x37\x6f\x0c\x75\x09\xf8\x4e\xe4\x21\xcb\x76\x21\xf8\x42\xac\x3a\x76\x67\xe4\x06\x31\x04\xdf\xd9\xbe\xe7\x5f\xfb\x21\x36\x22\xc6\x63\xa4\x5e\x9a\xba\x5f\xe4\x06\xd3\x36\x96\x37\x96\xbc\x11\x6d\xc9\xcd\x43\xfc\x15\x9a\x06\x8a\x37\xa0\x05\x0f\x30\x4c\x3d\xab\xeb\x24\x42\xd8\xda\x16\x14\x3f\x1d\xa1\xa9\x4c\x88\xb4\xd6\xcd\x90\x29\x17\xc9\x97\xe4\x11\x61\xf6\x88\x29\xb9\x41\x37\xd1\x2e\xf9\x0d\x17\xe4\x86\x38\xbb\xe1\x92\xdc\xa0\x9b\xaf\x17\xfc\x86\x31\xb9\x61\x56\xd1\x48\xf2\x00\xcd\x2a\x18\xf3\xfb\x3f\x93\xfb\xfd\xec\x7e\x79\x2a\xbe\x27\x8b\xc8\x61\x47\x28\xfa\x80\x1d\x48\x83\xf1\xe4\xd1\x6c\xa1\x7d\xe6\x4f\xbb\x21\x4f\x8b\xb2\xa7\x49\x6d\x10\x6b\xf3\x86\x5f\x7a\xa5\xdb\xad\x88\x44\xb0\xba\xd2\x1b\xac\xa2\x26\x9c\x59\xaa\x9f\xa9\x2f\x91\xcc\xf2\xad\x54\x08\x5c\xf1\xc7\xbf\x23\x2d\x41\xd9\x73\xae\x9c\x0b\x79\x44\x98\xe8\x78\xb7\xa5\x8a\x94\x92\xfd\x73\xaa\x6c\xd9\x42\x03\x28\x2a\x56\x6c\x32\x31\xad\x14\x7a\x99\x1a\xc5\xf5\xca\x54\x7f\x02\x1a\xe5\x1e\x5a\xb6\x93\xee\xf5\x79\xc3\x8e\x1a\x04\x1a\x2b\x82\xdd\xb4\xa6\x5d\x9f\x28\x2f\x0b\x5b\x0c\x67\x26\x75\x73\xc6\x5c\xd6\x38\xe4\xf1\xe7\xd6\x78\xa9\x14\x93\x4e\x6e\xac\x6f\x01\xea\xc9\xb3\x17\x8e\xea\x07\x8b\x2c\xe0\xd2\x47\xd3\xa6\x14\x3c\x47\xd0\x49\xc8\xfe\x50\x38\x8e\x9c\x90\x8c\x87\xfc\xb1\x74\xb1\x1a\xf6\x3d\xb6\xb7\x33\x33\x49\xc4\x67\xb4\xaf\xd1\x9d\x22\x6f\xca\xc6\x8a\x6e\x54\xb9\x61\xba\x54\x06\x45\x99\xbf\x92\xe0\x07\xf4\x2f\xdd\x74\xd0\x2b\x81\x85\x89\xe1\xc0\x74\x76\x95\x4c\x11\xfd\x83\xf8\x84\x48\x75\x7f\xe5\x39\x0b\x9b\x2c\xab\x56\x1a\x5c\xa6\x94\x6c\x38\xa0\x27\xc9\xb0\x6c\x29\x6a\x0c\x44\xc9\x8b\xed\xa3\xab\x19\xc5\x89\x72\xf3\x48\x75\x00\xc0\x45\x06\xb9\x5a\x8f\x59\x83\x6b\xcd\x1a\x32\x5a\x8d\xad\x9a\xbd\x82\xb9\xd2\x93\xb6\x40\x63\xb7\xaf\x7a\xfe\x25\xe3\x57\xd3\xdd\xa1\x9d\x37\x75\x70\xbb\x0f\xcd\xd5\xdf\x4d\x83\x0b\x1c\xbd\x6b\x88\x06\x69\x59\x98\x13\x38\xa1\x67\xc6\x8c\xa1\x9c\x7f\x41\x11\xf7\x4c\x2d\xfd\x68\x7b\x3b\xf5\x1c\x65\xae\xc9\x28\xa5\x16\xb7\x69\x5c\x14\x92\x27\x71\x28\x75\xe4\x45\x2e\xa3\x19\xd4\xf9\x5e\x1e\x65\x0f\x01\x8e\x19\x26\xaf\x40\x82\x51\x7c\x03\x02\xf2\xa4\xe2\xc9\x08\x60\x76\x2a\x77\xe6\x0d\x4b\x23\x25\x4b\x4d\xc2\xd8\xe0\x41\x48\x83\xba\x83\x70\xe8\x25\xa9\x16\x18\xc2\x50\x71\x10\xe7\x22\xd4\xc8\xb2\xf3\xd1\x46\x3f\x60\x7b\x90\xfb\x91\xcf\x82\x4c\x6a\x00\xef\x05\x6b\x4a\x02\x30\x9b\x2e\x69\x1e\xa3\xc3\x45\x31\x7f\xdc\xc7\x64\x36\x05\xc8\x72\x5d\x37\x5b\x3d\x0b\x27\x2f\x71\xfb\x39\x98\x40\x4d\x43\xe8\x6e\xed\x34\xf4\x99\xf3\x9b\x0a\xa1\x80\x5c\x93\x34\xd2\xb9\xee\x89\x3a\x81\x9e\x7b\xaa\x22\x33\xeb\x9e\xa7\x0a\xd8\xdc\x93\x0a\x1e\x0c\xdd\x13\x98\xe8\xcd\xdd\x99\x17\x12\xba\x1b\xc9\x35\xf9\xfb\xae\xc3\x28\xe2\x13\xb3\x30\x71\x74\x9f\xd5\x51\x7c\x5f\xb9\x6f\x28\x82\xe2\x54\x48\x90\xa9\x29\x84\xe0\x9c\x4f\x9c\x7e\xe4\xf0\xc6\xf4\x7d\x47\x11\x35\x7d\x5f\x15\x3d\x0b\x19\x87\x33\x6f\x27\x75\x32\x5b\x7a\xc3\xdb\x4b\xa9\xab\x5a\xb2\x27\xf2\xa8\xcf\x54\xb3\x28\xc4\xad\xb6\xb7\x2d\xe4\x69\xa2\x59\xb6\xc3\x42\x02\xe8\x65\xaa\x17\x5b\x88\xad\xbf\x72\xbf\x2f\x66\x5f\x9b\xf9\x71\xfb\x44\xab\x90\x95\x2c\x40\x24\x26\x64\x6b\xce\x11\xdb\x7b\x4e\x13\x10\x1f\xd3\x49\xe3\x6c\xe2\xab\xa3\x4c\xe1\x22\x8d\x13\x8f\x49\x05\x87\x1a\x4b\x91\x1e\x64\x61\xae\xc1\x31\x65\xa8\xdd\x57\x4d\x3d\x0e\x9b\x8e\x41\x64\x9f\x55\xe7\x29\x0b\x2f\x2d\x2b\x73\xaa\xdf\xde\x02\xf7\x13\xb8\x21\x02\xb9\xb0\x7b\x92\x13\xf6\xf6\x76\x4f\x9c\x54\xf6\x6a\x19\x35\xc2\x3a\x68\x15\x9f\x60\x6f\xe1\xf4\x8b\x0b\x7f\x60\xea\xd0\xd5\xb9\xf3\x1f\x3f\xe6\x02\x59\x09\xaa\x96\xa8\x83\x15\xce\x5e\x8d\x49\xb1\x48\x35\x1f\x06\x88\x62\x5b\x4e\x62\x00\x15\x18\x45\x24\x7b\xa9\xd8\x28\xba\x9a\xd9\xcc\xf2\x04\x2e\xef\xf6\x96\xc1\xdf\xd8\x49\xe8\x4f\x80\x67\xa6\xdf\x5d\x76\xd4\x73\x6d\x65\xec\xc3\x20\x02\xc8\x83\xb2\x31\xa5\x51\xdb\xb0\xe6\xa0\x88\xff\x73\xcf\x3a\x5b\x2e\x0b\x75\x38\xe8\xe7\xd6\x7d\x40\x11\x3b\x26\x3d\xad\x14\xe9\x7c\xcd\xcc\xa5\xde\x6a\xb7\x94\xb4\xc3\x4a\xc7\x34\xe3\xb6\x28\xc8\x07\x55\xd6\x2b\xd1\x63\xd6\x29\x75\xb6\x65\x0f\xdb\x2a\x06\x19\x7a\x8f\x3c\x0f\x88\xc8\x3c\x6f\x6e\xc1\x72\xaa\x6c\x2b\xff\xcb\x62\xd1\xa3\x46\x0b\x9c\x3b\x5f\xe5\x3f\x3a\xc9\x38\xe4\xa7\xd7\xbb\xe0\xaf\x91\x3f\x65\xab\x42\xd5\x46\x32\xf3\x2b\x7d\x03\xb1\xb7\x24\xdc\x13\xbe\xbd\xc5\x9e\xe7\xe5\x51\x41\x62\x2a\x44\xd4\x63\x45\xa6\x22\xd1\xdc\xb0\xbd\xc5\xee\x42\x54\xaa\xeb\x93\x72\x64\xbc\x14\x43\x39\x11\x99\x22\xd2\x72\xd2\xd8\xc0\x56\xda\x20\xc4\x36\x16\x29\xa0\x45\x3d\x57\x0b\x54\xb4\x45\x1a\x5a\x1f\xa8\xc6\xfa\x48\xb1\xcf\xbe\xd7\xfd\xce\xff\xb3\x68\xdb\x77\x8f\x1f\xfb\xa2\x1f\x91\x07\x07\xfe\x90\x86\xb2\xad\xc8\x08\xa1\x21\xbd\xd3\xce\xe6\x9e\x66\x07\xd4\xe2\xb5\x5e\x81\x64\x84\xc2\x29\x11\x26\xd8\x89\x6c\xe6\xdc\xdb\xd2\x7f\x69\xa9\xdf\x4e\xe4\x80\x97\xa1\x15\xd9\xfd\xc4\x8a\x6c\x0a\xd0\xe3\xfe\x39\x0b\x48\xe0\xb1\xf7\xe2\xfa\x77\x97\x16\x26\x4a\x0a\xd9\xbf\xa8\x7e\xeb\x20\x5b\x72\xea\x95\xdf\x62\x33\x37\x92\x03\xdc\x30\x39\xc3\xf1\x74\x0a\x02\x9d\x27\x08\x11\x81\x9d\xd2\x46\xf0\x0b\xc9\x5d\x09\x60\x6b\xf3\xfd\xd8\xcf\xb9\x4b\xec\x39\xbd\x09\x64\x67\x31\xbf\x81\xaf\xf7\x73\x26\x2c\x35\xf7\x8c\x94\x0b\xc4\x6d\xef\x89\x41\xfa\x19\x88\x75\xab\xbb\x71\x9a\xbb\x04\x67\x4a\x17\xd1\x19\xfe\x01\xfc\x4f\x6f\xfd\xa9\x03\xe5\xbf\xe4\xf9\x28\x6d\x92\x98\x99\x2c\xe9\x20\x92\xe3\x71\x04\x88\x55\x0c\x10\xb6\x98\x0e\x03\x1d\xf3\x5b\x32\x6f\xbf\x35\x42\xb2\x85\x4c\x19\x21\x82\x0f\x0d\x3a\x26\x06\xb3\xd0\x1c\xe3\x62\x86\x8d\xab\x98\xd8\x19\xb6\x03\x17\xe9\xfb\x7c\xaa\x99\x30\x14\x62\xbe\xe9\x2f\x01\x1b\x39\x37\xc3\x54\xb3\xe0\x36\xfd\x13\x04\xde\xa3\xae\xa3\xf5\xef\xb0\xbb\xa6\x88\xfe\xcb\xcb\x93\x6e\x6f\xeb\x8f\x5b\xb6\xdd\x37\x67\x90\x17\x8b\xcc\x4c\x47\xde\xd7\xed\x6d\xcd\x1b\xc4\x38\x50\x8d\x69\x7b\x5b\xf9\xd3\x92\xd8\x17\xd5\x37\x19\x21\x4c\xc2\x00\x18\xbc\x97\x06\x3d\x67\x08\x55\xdb\x08\xe1\xe7\x78\xc4\xb6\x31\x62\x8c\xe5\xc6\xc2\xce\x86\x8c\x61\x13\xe7\x38\x33\xe2\xe6\xf4\x51\x6c\xaa\xf4\x81\x43\xff\xea\x43\x27\x9b\x76\xfd\x5d\x47\x99\x4f\x7d\xe0\x88\x41\xec\x3f\xea\x39\x09\x9b\xcb\xe4\x67\x7e\x7e\x93\x63\xb9\xa6\xf4\x29\x2f\x08\x0e\x27\xe0\x0c\xfb\x93\x69\x1f\xba\xe9\xef\xdb\xdb\x57\x3e\x06\x2e\x8c\xaf\x2d\xbb\x34\xf9\x8b\xd9\x9d\x61\x72\x8e\x66\x09\xb1\x8f\x53\x71\xde\x73\x94\x54\xb0\x14\xfa\x87\x14\xb1\x0a\x33\x09\x86\xbd\xee\x77\xf8\xcf\x28\x93\x60\x38\x13\x4e\x68\x80\x87\x5b\x34\xcb\x86\xbc\x2f\x85\x7e\xea\xda\x02\x1c\x1a\x3b\x5f\x64\x43\x9c\x48\x50\x1b\xb2\x04\x24\x19\x40\x15\x12\x36\x93\x06\x60\xb8\x70\xe8\x47\x20\x4b\x4f\x3d\x41\x56\x6c\x5e\x0e\xab\xbd\xcb\xde\x16\x4a\x6f\xa3\x43\x21\x39\x99\x95\xe7\xa6\x8e\xaa\x01\x18\x0a\x9f\x8f\xa3\x18\x9b\xd5\x6f\x8c\xa4\x4d\x85\xf4\xcb\x20\xbf\x4a\x3a\x47\xa1\x2d\xd4\x58\x37\xd8\xfe\x5d\x72\x1d\x9b\x50\xec\x42\x65\x8e\x15\xaf\x57\x4e\x93\xc6\x4e\xa6\x71\x02\x82\xf7\x3e\x1e\x4b\x1a\x8d\xf6\xea\x2d\x09\x49\xe5\x79\xe0\xe5\x60\xd8\xa7\xa3\x4f\xde\x7a\xfa\xee\xf4\x38\x7b\x59\x97\x1d\x3c\x3a\x7c\x7f\xfe\xf3\x87\x93\xd3\xbf\x7c\x7c\xff\xfa\xf0\x4c\x3a\xdf\x63\xe7\x0f\xcf\x3f\x9e\x1f\x7e\xf8\xcb\xf1\x79\x76\x66\x97\x9d\xf9\xe1\xe7\x1f\x7e\x78\xa3\xb9\x71\x8f\x9d\xce\x16\x55\xc9\x80\xd0\x73\x0b\xba\xa6\xc8\x34\xf3\xaf\x7c\x25\x6e\x90\x76\x70\x0b\xb8\x7c\xdd\xd5\xc8\xb1\xdc\x93\x32\x41\x56\x78\x05\x7b\xeb\x89\x58\xc2\x2d\x5e\x0f\x0a\x1b\x5b\x83\x46\xe9\x5e\xa4\xb6\x4e\xdf\x14\x36\x90\x3c\x67\x26\x1b\x45\xce\xfb\x60\xa9\xd3\x90\x5f\xc6\x6f\xca\x76\x82\xba\xfb\xb2\x2b\xed\x85\x93\x17\xf9\x73\x5f\x5c\xcd\x9f\xcb\x8d\xc6\xf7\xec\x3a\x10\x68\x26\x2f\x97\x97\xbc\x1d\x7c\xee\xd6\xb6\x82\x5f\xc7\x5f\x93\x0a\xca\xe2\xf3\xd3\x53\xec\xca\x04\x8d\x8e\x23\xca\xb3\xd4\x64\xdd\xd1\xb6\xfd\x40\x47\xaa\x78\x79\x22\x34\x95\x24\x7f\x29\xb3\x7d\x1f\x09\x85\x77\x2b\x27\x74\xb6\xb0\x32\x43\x05\xaf\x88\xe4\xee\x90\x87\x9a\x3d\x93\x18\x1a\x9a\xc3\xde\xa3\x2e\x1f\x02\xf6\xaa\xbf\x73\x31\xc7\xdd\xaa\xc5\x41\x4e\x72\x97\x02\x7b\x0e\x6e\x6f\xe5\xcf\x16\xc2\x30\x35\x97\x16\x8b\x92\xbd\x46\x92\x78\x0c\xc2\xc0\x95\xe5\x74\xd3\x89\x2a\xb5\x65\xdb\xd1\xa9\x06\xcc\xa0\x95\x5c\xcb\xec\x80\x2b\x5c\x3e\x02\x15\xab\x2a\x9a\x72\x53\xe4\x1b\x24\xd5\x9a\x2b\xae\xfa\xb3\x4e\x64\x57\xa6\x3e\x97\x20\x5f\xea\x30\x35\x8d\xec\xb5\x0d\x70\x69\x14\x1c\x31\xf6\x7c\xb1\x05\x1b\x46\x60\xf2\x16\x9b\xd6\x10\x82\xb5\x61\x98\x12\x2f\xaf\x9c\xa8\xdf\x75\x70\x66\x60\xda\x5c\x5f\xb0\xbf\xa3\xc7\xf3\x6a\xbc\x6d\x41\xea\xd7\xcb\xf4\x16\x40\x77\x51\xc7\xf7\x20\x35\x25\x23\x35\xc8\x09\x18\xe4\xfd\xe3\x94\x39\xa7\x8e\xfc\x28\xba\xf0\x47\x9f\x92\x74\x9b\xbf\xbd\xb5\xb4\x17\x50\xd0\x2a\x5e\xb0\xa5\x30\x40\xd4\x52\xe3\x60\x64\x90\x53\x8e\xd2\xb4\x18\xfc\xf8\xb1\x0d\xbc\x68\x80\x87\x0e\x90\x5c\x2b\x34\x3b\xb2\x91\x5f\x9f\xff\x51\xe3\x71\x4f\xd3\x05\xd9\x3d\x97\x97\xec\xa6\x34\x51\x70\x41\x06\x9e\xc5\x20\x3e\x9c\xfd\xfd\x3d\x9b\xe4\x6c\xf8\xdc\x49\xf8\x25\x84\x96\x34\x07\xec\x2d\x96\x87\x0b\x25\xa6\x15\x54\xb7\x06\xc8\xd4\x4d\x8b\x04\x74\x2e\x7d\x32\x25\x36\x1f\xb0\xc2\x9e\x49\x39\x36\x45\x45\xf2\x9b\x3e\xe5\xb7\x96\xe9\x3a\xa2\x38\xfe\x34\x9b\x4a\x40\x93\xe2\x84\x23\x5f\xfb\x0a\xe0\x43\x8c\x51\x78\x31\xc3\xc0\x32\xc3\x80\x61\xe7\x71\x8a\x25\x1f\xe0\x61\xbd\x17\x26\x4c\x3a\xf1\x0c\x13\x73\xe3\x4e\x00\xde\x41\x3c\xa2\x3a\x28\xdd\x4f\x40\x06\x12\x7a\x84\x6f\x6f\x1f\x41\x77\x14\x43\xec\x87\x30\xb1\xb0\xed\xf8\x1e\xf0\xa8\xe7\x05\xc8\x87\xb7\xc4\x46\xb0\xbd\xfd\xc8\x6f\x0e\x22\x84\x31\x9a\xf8\x51\xf8\x1f\xd0\xa9\xf3\x2b\xe5\xf3\xe4\x18\x95\x4f\x2e\xbd\xad\x51\x52\x1a\xaa\x4d\x4a\x63\x6e\x7f\x54\x8c\x23\x66\x4e\xa9\x3a\x3f\x09\x69\xa3\x9b\x69\xef\x34\x50\x08\x69\x52\x24\xd7\xfb\x29\x58\x54\x4c\x89\xcc\x94\x60\x7d\x8d\x91\xc5\xfa\xd7\xfb\x0e\xfe\x39\xb5\x0f\x84\x24\x80\x22\xc1\xdd\xf7\x98\x05\x9f\x5e\x31\x80\xc3\x97\xf2\x1f\x7d\x22\x92\xff\x77\xf7\x25\xe6\xc3\x62\xf9\x34\x47\x43\x9f\xc4\x4c\x1b\xed\xf8\x03\x4c\x53\x3d\xfb\x35\x3d\x4c\x5e\xea\x66\x5f\x08\x12\x0b\x38\x75\xb7\x5a\xbe\x6d\xf7\xa5\x36\x95\x34\xa8\x6c\x7a\xe3\xba\x17\x58\xbe\x83\x59\x38\x23\x65\xee\x90\xfd\x23\x0a\x72\x0f\x53\xf7\x98\xb6\x33\xec\x5d\xe9\x66\xa4\xd2\x9c\x54\x6a\x1d\x7d\x30\xc0\x43\x0f\x3a\x60\x4d\xa9\x86\xd8\x41\x14\x15\x21\x27\x52\x88\x10\x50\xe6\x93\x14\xa9\x25\xcc\x43\x00\x2d\x68\xcd\x17\x0e\xb2\x1d\x5a\x8d\xb7\x0f\x1c\x0e\x6e\x58\x34\x88\xf2\xfc\x96\xf8\x77\x25\x79\x25\xd9\xa3\x09\xd9\x79\x12\x24\x4a\x25\x08\x38\x8c\x22\x0b\x37\xe8\x4a\x12\x5e\x44\x1b\x2b\x01\xa3\x6e\x9b\x2c\x99\x88\xed\xe0\xdf\x41\x0f\x52\xe4\xe3\x19\x7b\xff\x77\x36\x0f\x5b\x40\xca\xa4\x70\x7e\x33\x05\xdb\xdb\xb0\x84\x55\x81\x08\xd8\x74\xbf\xa8\xec\x21\x08\x42\x1c\xa3\x9d\x28\x5c\xb7\x53\x5e\xdf\x43\x36\x19\x65\x7c\x16\xdd\xef\xb8\x35\xe0\x62\x14\x4e\x2c\x3b\xcd\xf1\x02\x02\xa5\xfa\x26\x24\x5a\x3e\x59\x90\x8e\x48\xd1\xa2\x10\x8a\x0a\x50\x7e\x3a\x2d\xc8\xf3\xb9\x25\x95\xfc\x70\x73\xee\x5f\xd1\xe1\xa2\x0a\x50\x3a\x73\x1c\xec\x1d\xc5\x01\x78\x1b\xd2\x08\x68\x16\x6f\x65\x7b\x39\x40\xaf\x41\x34\x05\xc8\x32\xd9\x30\x99\x68\x76\x71\x63\x3a\x45\x14\xff\x60\x48\x86\x5a\x4a\xe4\x45\x8e\xcf\xbe\x6a\xe4\x0d\x5c\xd7\x05\x96\xc9\x44\x8c\x69\x0f\xb7\xb2\x14\xa7\x4b\xd2\x16\x4d\xc0\xb7\x43\x23\x37\x6e\x82\x46\x69\x26\xdc\x2f\x3b\xa3\x38\x00\x13\xda\xce\x9d\x49\x1c\x80\x9d\x6f\xe6\x68\x41\xff\xe3\xfe\x9a\xfc\x42\xd3\x07\xb0\xeb\xcf\xc8\x6c\xf0\x83\xb7\x71\x00\x58\x1a\x7e\xf2\xd2\xb7\xec\xbe\x55\x6c\x86\x83\x89\x5e\x17\x0d\xba\x43\xc6\x6e\xaf\x76\xcb\xa7\x83\x6e\x4b\x99\x71\x7c\xd8\xb3\x8c\x03\xf6\x5d\x4a\xe7\x17\xdb\x02\x75\xf8\xfe\x09\x04\x93\x18\x86\x09\xde\x61\x5c\xc1\xab\x1b\x18\x3e\x0c\xde\xa5\x33\x42\xfc\x99\x65\x97\x6a\xb3\x23\x04\xe4\x1a\x62\x44\xf7\x1e\xdb\x45\x20\x98\x8d\x80\x65\x01\x67\x80\x1d\x38\xb4\xbd\x17\x16\x95\xc6\x9a\x3c\x22\xf8\x12\x82\x6b\xe3\x0c\x88\xad\x48\xf8\x27\x6d\xe6\x21\x05\xb6\x33\x67\xb0\xca\x34\x08\xe1\xbd\x50\x23\x47\x30\xdf\x10\xfe\x84\xb4\x15\x64\x06\xa5\x3d\x88\x3c\x89\x00\xc2\x1f\xbe\x1c\x0c\xfb\xe4\x5f\xf1\x74\xa1\xea\x53\x4a\x19\x9e\x72\x08\xc9\x75\x68\xe0\x0f\xe9\x97\xcf\x38\xc5\x68\x56\x30\x2f\x96\x6d\x91\x8b\x1c\xd1\x95\xc8\xb6\x87\xfd\xf4\x8e\xec\xe8\xd0\x76\xd0\x82\x75\x08\x39\x90\x2c\x99\x17\x25\x60\xf6\xdc\x98\x62\xea\xb0\x40\x37\x96\x35\xc0\x0e\x22\x03\xca\xb3\x4a\x89\x26\x5b\x8e\xa5\xf0\x5f\xfa\x14\xd3\xd0\x47\x6e\x12\x4f\x80\x85\xbd\x17\x44\xb7\xa0\xb3\xc3\x26\xad\xc0\x0e\x72\x40\x0d\x4d\x0a\x11\x1e\x3b\x17\xb3\x30\x0a\xf2\xd4\x8b\x3c\xc5\x81\x11\x3f\xf3\xc2\x62\x9a\x7b\xe5\x0b\x72\xb7\x74\x78\xbe\x66\x18\x43\x9d\x6d\x4d\xcc\x10\xf2\x88\x0e\xd9\x3d\x3b\x52\xb9\x6e\x4d\xe2\xc4\xba\xb6\xc2\xc8\xc1\x5e\x06\xe5\x2e\xd2\x77\x78\xa6\xc9\x35\x01\x91\x5a\x3a\x5f\x70\xc3\x94\xcc\x97\x54\x26\xcd\x59\xee\x3d\x2d\xfd\x46\xf6\x7e\xe8\x5c\x01\x4c\xb9\x77\x4b\xe0\x48\xb4\x5e\xbf\x93\x00\xfc\x8a\xdc\xa8\xd1\x77\xa3\xed\xed\x47\x14\x41\xee\x86\x09\xe3\xb1\xc3\x34\x5d\xde\x03\x34\x24\x28\x4c\xc2\x0c\x96\x46\x2b\x23\x38\x98\x45\xa0\xa9\xe7\x48\x7d\xb4\xfa\x7e\x72\x35\xb5\x62\xfb\x9a\x35\xee\x0f\xe8\x26\x43\xda\x6f\xd9\x43\x8e\x33\x58\x38\x2c\xaa\x9d\x37\xfd\xb3\x14\x07\x3f\x55\x91\x9c\xc8\xc3\x16\xbc\xbd\xf5\x69\x3f\x6d\x27\xf1\xa8\xc0\x0c\xbd\x68\xd0\x1b\xd2\xf1\x8b\x3d\x44\x8c\x87\xe4\x11\x87\x15\xa4\xaf\xa3\x3a\x17\x0f\xa2\x27\x56\xa2\xe6\x02\xd2\x04\x8c\xc4\x76\xa5\x96\x10\x61\x11\x7b\xf1\x20\x19\xf2\x1c\x84\x59\xfa\x40\xd2\x7f\xcb\x76\x46\xba\xb0\xeb\xcc\xc5\xf1\x5f\xcf\xde\x9d\xbe\x14\x3f\x2c\xbb\x2f\x93\x9a\xb1\xe1\xb4\xd3\x93\x34\xb4\x2b\x8b\x9c\x91\xed\x86\x70\x14\xcd\x02\x90\x58\xa1\x14\xe2\xcd\xd8\xce\xc2\xc7\xa6\x21\x66\xb1\x11\xc4\x20\x81\xdf\x62\x03\x7c\x09\x13\x6c\xda\x5b\x2c\x85\x5a\x8c\x97\xe7\x3b\x80\x52\x64\x05\x0a\xb3\x5a\x48\x5f\xab\xce\x82\xc0\xbe\xbd\x4d\x55\xd2\x98\x02\x20\x0b\xe4\x35\xe4\x30\xf5\xa3\x6c\x6f\x73\x94\xa6\xc7\xae\xa5\x07\xf3\x7c\x52\x2c\x42\x10\x6c\x6f\x5b\x81\x37\x18\xda\x5b\xc1\xc0\x77\x39\x73\xf9\x4b\x93\x18\x50\xac\xdb\x66\x9f\x53\xec\xf0\x3f\x87\x96\xcf\xe2\xd2\xf2\x54\x9c\x39\xa1\x13\xd8\x0b\x4a\xeb\x93\x8a\xde\xf4\x71\xb7\xb7\x26\xdd\x0d\x3c\x7e\xa7\xda\x92\xed\x6d\x4a\xca\x53\x76\xfa\xa5\xfa\x16\xf1\xf2\x7e\xfe\x30\x7f\x97\xca\xce\x20\x32\xc5\x2d\xea\x8d\x49\x74\x8c\x89\x3a\x74\x9a\x32\x91\x5c\x14\x33\x6f\x52\xea\x6c\x48\x38\xb1\x42\xd5\x25\x96\x58\x90\xa3\x08\xf8\xb2\xdb\x87\x4a\x95\xd2\x57\x83\x97\x1c\x63\x08\x7c\x04\x90\x07\x18\xa2\x99\xcb\x0b\x4b\x3e\x67\x01\xdb\xce\x5a\xb0\x70\x58\x35\xa6\xfc\x8b\xca\x48\x98\xe4\x41\x62\x77\x62\xf2\xba\x2d\xf5\x80\xa5\x76\xd3\xa6\x92\xeb\xef\x6c\x4c\x63\x94\xe8\x64\x48\x94\x8a\x0d\x31\xf6\xfd\x42\x46\x08\xc8\x2d\xd5\xf2\xbd\x2d\xcb\xf5\x27\x4a\x6e\xf6\x35\xf9\x2b\xfc\x20\xa0\x6b\xae\xc1\x2b\xb4\x0f\x17\xf7\x93\x87\x8b\xdf\x79\x90\x28\x91\x3d\xba\x8e\x8a\x00\x1b\x79\x4f\xdf\xa7\x31\xb6\xb1\xaf\x1d\x92\x8c\xcd\x81\x5c\x25\x71\x6f\xb0\x71\xf6\xc4\x0f\xa6\x6b\x27\xb6\x93\xb8\x74\xae\x7a\xfc\xdf\xec\xf8\x42\x4a\xb6\x3d\x12\xdb\xab\xaa\xda\x47\x4a\xa6\xb8\x68\x03\xf5\xc2\xa6\x77\xd8\x2c\x77\x48\xca\xf9\xf1\x6d\xc7\x77\xe6\xe9\x8e\xdd\x4f\x73\xa3\x94\x2c\xda\xec\x95\x51\xad\x2e\x21\xe9\x03\x55\xda\xc4\x26\xfc\xe5\x14\xa2\x07\x53\x90\x1e\x76\xa9\xa8\x48\x1b\x3f\xcf\x64\x9b\x64\x4d\x66\x94\x61\x99\x24\x66\x1b\xec\x47\xde\x5a\xd7\x7c\x0c\xec\x97\x16\x2c\x5c\x40\xb6\x0c\x7a\xd2\x81\x1e\x7c\x09\x5d\x1c\x33\x91\x6d\xf7\x07\x43\xbb\x0f\xd3\x99\x48\x94\x66\x4e\x35\x2c\x7c\x54\x16\xdf\xb7\xa9\x1c\x33\xcd\xc7\x80\x22\x9a\x24\x71\xbb\xfe\x16\xa6\x4f\x81\x44\x2d\x96\x5a\x5b\xd6\xd4\xd4\x47\x0f\x53\xeb\x0a\xdb\xdf\x51\x9b\x0b\x11\xcb\x9a\x73\x79\x21\xa7\xa7\xe9\xcb\xa2\x96\xf9\x3b\x53\x02\x01\xfc\x1c\xa2\x18\xe6\xf9\xcc\xbf\xfa\x27\xbf\xfa\x27\xbf\xfa\x27\xc5\x96\xee\x60\x1e\x44\x75\x90\xe4\xd0\xd3\x11\xe0\x64\xd8\x34\x5a\xac\x89\x67\xb6\x92\xb1\x3a\xc1\x60\x22\x13\x83\xd3\x9d\xcc\x83\x2f\x99\x68\xe8\xc3\x05\xa5\x5c\xa3\x5e\x4d\x9a\x38\x41\x13\x9d\x8f\x68\x3f\x6d\x87\x12\x20\x53\x1e\x1f\x0b\xe5\x98\x44\x7f\x19\xd0\x9a\x03\xdf\xcc\x81\xcb\xaa\x90\xbc\x47\xe0\x32\xfc\xb2\xe8\xb0\x31\x1a\xfe\x62\xbb\x18\x7c\xc1\x47\x2c\x1f\xc2\xa6\xf6\x81\xfb\xf3\x09\x7b\x32\x25\x29\x0b\x3d\xa4\x75\x43\x65\x8e\x18\x27\xf6\xc2\x41\xc8\x57\x40\xa7\x37\x74\x13\x34\xa2\x96\xc5\x2c\xa5\x32\x56\x6d\x14\x8a\x4c\x75\x7c\x27\x74\x46\x22\xc3\x9e\xe7\x8b\x89\x5c\xf4\xd3\xb3\xf7\x87\x47\xc7\x67\x1f\x8f\x4f\x0f\x7f\x78\x73\xfc\x4a\x90\xa7\x66\xfb\x76\xe4\x92\x36\x24\x53\x7f\x04\x92\x63\xc6\xa2\xb3\xbd\xad\x39\xb8\x25\x3f\xf5\xec\xec\x5d\xd5\x13\xcf\xce\xde\x49\x8f\xca\xfe\x52\x9e\x71\x78\xf4\xa6\xb2\x59\x87\x47\x6f\xe4\x06\x49\x7f\x2a\x8f\x79\x7f\xf8\xe1\xfc\xe4\xfc\xe4\xdd\x69\xe5\xc3\xde\xfb\x08\x53\x32\x73\xf9\x91\x85\x83\xca\x83\x5f\x1d\x9e\x1f\x1e\x1d\x9f\x9e\x1f\x7f\xf8\xf8\xe6\xdd\xd1\xe1\x9b\xf4\xb1\x91\x4b\xcb\xa0\x11\xdd\x6b\x04\x20\x06\xa8\xec\xb6\xf7\x1f\x4e\xde\x1e\x7e\xf8\x97\x74\xe3\x7b\x14\x4e\x7c\x74\x53\x72\xeb\xcf\x27\x1f\x8f\xde\x9d\xfe\x78\xf2\x97\xf4\x0e\xdf\x9b\xf3\x2a\x54\x7d\xd6\x19\x32\x8b\x60\x4a\x34\xf0\xf6\xf8\xfc\xc3\xc9\xd1\xd9\xc7\xf7\x1f\xde\xfd\xfd\xe4\xd5\xf1\x07\x93\x18\x86\xda\xd3\xff\xfc\x57\x3a\x3a\xb6\xe3\xbb\xfc\xa1\xd2\xb5\x67\xc7\x1f\xfe\x7e\x72\x74\xfc\xf1\xd5\xe1\xd9\xeb\x1f\xde\x1d\x7e\x78\xf5\xf1\xe7\x0f\x6f\x4c\xdb\x09\xb7\xb7\xad\xc4\x9d\x00\x8c\xc2\x51\xf2\x51\x94\xfa\xf4\x42\xdb\x19\xe5\xcf\x7c\xb9\xf9\xc8\x69\x98\xbc\x91\xf4\x12\x7a\x59\xe0\x27\xe3\x8b\xd8\x47\xc1\xc7\x19\x8a\x3e\xa6\x05\x7b\x3c\xdf\x76\x12\x65\x0c\x7e\x38\x3c\x3b\x26\x03\x41\xde\x2e\x46\x21\x96\x6a\x1c\x64\xf5\x0c\x76\xa5\x22\x06\xca\x23\x5e\x9f\x9f\xbf\x27\x7d\x3e\x7f\x77\xf4\xee\x4d\x6e\x32\x78\x9e\x37\xdb\xde\xb6\x66\x8a\x30\x51\x78\x6d\xb9\xb3\xd9\x87\x2c\xe9\xec\x98\xf9\xaf\x7e\xb8\x39\xbf\x99\x02\xcb\x44\x80\xe5\x29\x98\x36\x73\xd8\x62\xef\x85\x58\xbd\x9e\xe7\x61\x37\x84\x21\x0e\x89\x44\x61\xae\x79\x1a\xe4\x64\xfe\x02\x22\x02\xf2\x4c\xb9\xf3\xc5\x62\x61\xc5\xb6\xed\xcc\xa8\x93\xff\x35\x05\x72\xe1\x78\x44\xd9\x05\xc7\x18\x4f\x77\x7a\x6e\xcf\x2c\x76\xee\xed\xe1\x3f\xc9\x4c\x39\x3d\x3e\xa2\x13\xdf\xec\xf3\xb5\x8f\xa4\x0f\xaa\x8e\x42\x8e\x55\x0d\x65\xac\x6a\xe3\x5d\xd3\xee\x6b\x4f\xfc\x56\x72\x22\x99\x06\x37\xa6\xcd\xc7\x35\x25\xd3\xe1\x03\x78\xb0\x58\x2c\x1c\x09\x38\x9d\x2a\x78\x29\x7d\x8c\xa4\x09\x71\x51\x15\x80\xcf\x20\x8a\xa7\x54\x37\x62\x44\x6e\x09\xf6\xaf\x88\xf5\xcf\xfe\x1a\xc5\x9f\x01\xcd\x14\x61\x7f\x62\x90\x60\xb3\x1f\x5e\x5a\x0a\xa5\x1d\x72\x47\x71\xfc\x29\x94\x98\x5f\xc5\xac\xf9\x8e\x7e\x2c\xaa\xe4\x00\xef\x85\x49\x8c\x71\x60\x0b\x1e\x57\xb6\x93\x0c\xb0\xe3\xba\x2e\x1c\x7a\x40\x44\x1f\xf8\xbd\x5e\x5a\x55\x63\x80\x1d\xc8\x27\x9c\x67\xda\xc3\x85\xbd\xb0\x32\x07\xad\x24\x95\x99\xbf\x38\xcd\xe5\x55\xa5\xf1\xc9\xe9\xf9\x1b\x26\x4d\x8e\xcd\x3e\x70\x8b\x47\x3d\xce\x82\x07\x6d\xd5\x51\x20\xb3\x5d\xc8\x77\xbd\x3a\xfe\xe1\xe7\xbf\xe4\x1f\x45\x0f\x7a\x8f\x1e\x49\xbb\x59\xc9\x63\x75\xcf\x95\xe4\xb2\xf4\x60\x59\x5a\x2f\xfd\x68\x75\x33\x92\x9e\x9e\xdb\xa5\x96\x7e\x41\xb6\x2f\x49\x0f\x97\x36\xab\xa5\x1f\x5c\xd8\x65\xa4\xe7\x17\x77\xa0\xa5\x5f\xa3\x93\xd8\xd2\x9b\xb4\x02\x7d\xe9\x97\x49\xdb\x4d\xfa\x86\xf4\x98\x27\x3d\x13\xda\x39\xe2\x2c\xa6\xf8\x65\x7a\x27\x0d\x71\x64\x0c\xa0\x90\x68\xd7\x32\x50\x45\x5c\x48\x7e\xe7\x61\x2f\x2c\x19\x47\xbf\x5c\x74\xe5\x29\xfb\x25\x17\x1c\x9e\x1e\xbd\x7e\xf7\xe1\xe3\xd9\xf1\x1b\x26\x15\x85\xe0\xd7\x8d\x8e\x6f\x61\xfb\xf6\xb6\x9b\x1f\xa3\xdb\xdb\xc0\xc2\x76\x7e\x8c\xf2\x54\x3e\xe9\xde\x4c\x1f\xa2\xbb\x43\x8c\x6a\xb5\x36\x51\xa7\x34\x94\xeb\x4a\x95\xfa\x5d\xa9\x9a\x56\xa7\x34\x95\xcc\x43\xa6\x58\x94\x9d\x95\x66\xa9\xf2\x62\xad\x36\xd1\x2f\xdd\xe8\x2b\xb6\xef\xfa\xcd\x8f\x7f\x8f\x80\x7e\x8f\x11\x63\x14\xce\xed\x4a\x01\x0b\xf2\xd7\x19\xe9\x9a\x48\xcd\xc6\x8b\xc7\x84\x97\x16\x0f\xf1\xa6\x1b\xec\xc0\x94\xf8\xe3\x26\x54\x65\xd8\xb1\xdc\x3f\xd9\xff\x1e\xd0\xff\x0e\x77\x84\x16\xd4\x4b\x37\x27\xd3\x74\xc0\xb0\xb2\x7f\x63\x1a\xbd\x66\xb5\x71\x3a\xe1\xe5\x9d\x96\xc6\xd1\x51\x19\xcb\x01\x72\xc9\x6d\x6c\x88\xa8\xea\xa0\x3b\x24\xa3\xf2\x92\xfc\xe8\x63\x8b\xfc\xe3\xa0\xba\x8f\x48\x75\x26\x76\x70\xbd\x7d\x7b\x7d\x7c\xf8\xea\xf8\xc3\xd9\xc7\xb3\x7f\xbd\xfd\xe1\xdd\x1b\x2f\x3b\xf0\xea\xe4\x2f\xc7\x67\xe7\xd2\x81\xf3\x77\x3f\x1d\x9f\x4a\x7f\x9f\x9c\xbe\x3a\xfe\xa7\x7c\xc3\xf1\x8f\x87\x3f\xbf\x39\x27\x4b\xfa\xe3\xfb\x77\x6f\x4e\x8e\xfe\x25\x9f\x4c\xe5\x80\x74\xf0\xf4\xf0\xed\x31\x5d\xe5\xd2\xb1\x74\x01\x67\x91\xee\xe2\x29\xf3\x9f\x9d\x23\x36\x40\xa9\xa5\x63\x6e\xe9\x9e\x9b\x5d\x98\x9a\x7d\xf2\x85\x52\xab\xb2\x2b\x33\x1b\x46\xb9\xb4\xd8\x3b\xe9\x16\x36\x41\x3a\x87\xa3\xa8\xf3\x3e\x8e\xc2\xd1\x8d\x7c\x2b\x1b\xa8\xec\x6a\xca\xe9\x2f\x5f\xc0\x46\x36\xbb\xe0\x3c\xfe\x04\x94\x0e\xf1\x6f\x91\x5d\xc1\x8d\xf1\xd7\x7e\x32\x96\xaf\xe3\x1f\xd1\xfc\xf8\x91\x4d\x95\x8f\xb3\xf0\x23\x99\x39\x1f\x59\x09\xf3\xe4\xe3\x47\xb3\x7e\x92\x31\x12\x42\x7e\xc7\x86\x17\x52\x71\xd1\xc8\x6a\xae\x46\x09\x15\x5e\x93\x01\x24\x7a\x2d\x1a\x7a\x58\x28\xb4\xfd\xac\x4c\x1c\x92\x91\x02\x60\x00\xb9\xea\x3b\xf4\x10\xd7\x73\xfb\xa6\x00\xe3\x50\xb6\x01\x1a\xf6\x6f\xb0\xfc\xd8\xc8\x50\xef\x49\x87\x96\x8d\xdd\x7c\x7d\x0f\x56\x37\xed\xe7\x0f\x27\x47\x02\xf2\x5b\x18\x32\x03\x2b\x85\x2b\x72\xf0\x04\xa8\xd1\xe5\xa1\x33\xf0\x9d\x68\x28\x01\xe6\x3c\xcf\x8b\x52\xc5\x86\xd7\xd9\x00\x96\x9f\x2b\xcf\xc4\x7c\xc7\x56\xe2\xfd\xf2\xcd\x1c\x2d\x06\xdf\xcc\x93\xc5\xf0\x17\xc6\xf5\x40\x1e\xf0\x12\x8a\x5a\x49\x89\xdd\x17\xd4\x35\x69\xdc\x46\x3a\x8d\xad\xc8\x49\x6c\xbb\x9f\x1e\xa0\x85\xad\xbc\x6f\xe6\xc0\x8a\xec\xc5\x2f\xf6\xc2\x76\x06\x43\x61\x04\x6f\x9b\x2d\xbe\xcd\x0c\xad\x59\x3c\xea\x71\x5e\x45\x49\x4f\x26\xa3\xa0\x13\xef\x65\xb5\x06\x72\x25\x47\x9c\xc8\x9e\xd3\xb1\xa6\x24\xd9\x6c\x5e\x9e\x61\x1f\x51\xca\x0c\xba\x59\x66\xde\x7a\xf3\xa5\xc9\xa9\x18\x7c\x5a\x42\x69\xb7\x78\xc5\xbf\xe1\xbf\x21\xe5\xf8\xf1\xbd\x7d\xdd\x59\x72\x6e\xff\x91\x78\xc0\x9e\x28\xa0\x22\x91\x4d\x47\xc3\x97\xe4\x3f\x7d\xd3\x14\x66\xac\xcf\x8d\xe9\x9e\x30\xbd\x85\x79\x5d\x2c\xba\xd2\x27\x73\x24\x91\x15\x70\x43\x8d\x7e\x27\x76\x3f\xf1\x92\xdc\x20\xa4\xc3\x67\x9a\x8f\x01\x63\xf1\x57\xca\x36\x2e\x14\xee\xa7\x25\x1a\x51\x98\x79\xe4\x1a\x32\x27\xe5\x27\xef\xa7\x5c\xea\x42\x7e\xb0\xc1\x1c\x74\x85\x52\xff\xcb\x37\x73\xb8\x20\xf3\xf2\x97\x85\x2d\x9a\x97\x8a\x8d\x06\x33\x92\x53\x94\x6c\x62\x32\x2a\x21\x33\x9c\x86\xcc\x68\x20\xb4\x8c\xdb\x22\x0d\x59\xa5\xa4\xf5\x1e\x90\xe3\x3c\x25\x55\xa4\xa5\x0e\x6d\x64\x47\x38\x7a\x77\x7a\x7e\x7c\x7a\xfe\xf1\xfc\x5f\xef\x89\x16\x70\x74\x78\xf4\xfa\x98\x28\xc1\xe7\x1f\xde\xbd\xc9\x34\x00\xf5\xb0\x79\xe4\x8f\xc6\xa0\xc3\xcb\x55\x90\xfd\x4f\x79\x8a\xc9\x37\xc7\xce\x39\x51\x04\x6b\xbb\x35\x01\x78\x1c\xaf\xb9\xb2\xe9\xfb\x77\x54\x73\x7a\x75\xfc\xe6\xf8\x9c\x74\xeb\xfd\xcf\xe7\x59\x67\xc8\x1f\xe6\xfb\x9f\xcf\x49\xc3\xf9\x15\x26\xfb\x97\x1c\xa1\xb7\x9a\xe4\xbf\xf5\x4d\x47\xe0\xb7\x59\xae\x42\x56\x53\xc6\xe0\x42\x04\x57\x0e\x61\xfd\x81\x03\x74\x48\x0e\xd0\x61\xaf\xf7\x1d\x2e\x06\xe8\x70\x56\x21\x2f\x1f\xa0\xc3\x72\x80\x0e\xd3\x00\x1d\xfe\xdf\xdd\x97\x22\x7f\xcb\x42\x15\x01\x3a\x9f\x21\xd5\xef\x22\x40\x87\xc8\xe6\x9a\xb5\x69\xed\x01\x3a\x54\x1e\xa0\xf3\x7f\x37\x01\x3a\x45\x8a\x46\x12\xf0\x80\x5f\x90\x97\xa4\xa4\x53\x4c\x96\x0a\x0e\xb9\x19\x8a\x04\x4f\xcf\x47\x26\x46\x04\xcb\x8f\x50\xb8\x3d\x98\xfb\x1b\x59\xc8\x9a\x2f\x1c\x48\x74\x4e\x67\x2e\xd8\xe9\x98\xcd\xda\x37\xc9\xd4\x0d\x19\x49\xc2\xce\xaf\x49\x4c\x29\xf2\xb3\xc2\x30\xf2\x83\xdc\x8b\x38\xb8\x61\x7b\xbd\xe0\xbe\x11\xa7\x06\xea\x53\x87\x9e\x89\xc1\x17\x91\xfb\x98\x60\x04\xfc\x89\x69\x2f\xf8\xc5\x79\x2e\x1e\x7e\x98\xd1\xf0\x00\xc1\xaa\xf6\x65\x8c\x44\xcf\xaa\xe8\xfc\x17\x08\x24\xd3\x98\xf2\x0d\xeb\x18\xfc\x4b\x99\x9a\x18\xb1\x04\x60\xba\x11\x90\xb6\x28\x29\x07\x35\xb7\x79\x51\xa2\x0c\x69\x2f\xcb\x9d\xd6\x16\x25\x2a\xa1\x06\x55\x09\x8f\xaa\xb9\xe9\x47\x31\x84\x40\x87\xd0\x24\x43\xb4\xf0\x2f\x62\x84\x2d\xe0\x75\x19\x82\xab\x38\xec\x82\x96\x29\x1d\xfc\xfc\xb7\xe2\x8d\x90\x37\xe9\x2d\x85\x8f\x57\x6e\x00\xcd\x9b\x93\x29\x9e\xd2\x9a\x94\x65\x95\x03\x7a\x7d\xec\xb2\x46\x52\x7f\x43\xb6\x16\xa2\xaa\xba\x6d\x74\xaf\xe1\x35\x70\xd6\xba\x4d\x9e\x10\xcb\xfb\xf4\x90\x79\xd5\x8e\x3f\x7c\x3c\xfe\xf0\xe1\xdd\x07\x0f\xb8\x3f\xbe\xfb\xf0\xc3\xc9\xab\x57\xd4\xdb\xf0\xf3\xe9\xe1\xcf\xe7\xaf\xdf\x7d\x38\xf9\xbf\xe3\x57\x1e\x70\xdf\xfd\x94\x6d\xa4\xef\x7e\xf2\x76\xbb\xe4\x87\x72\xcd\x7e\xb7\xb7\x25\x3f\x62\xbf\xbb\xb7\x55\xf6\xaa\x83\x6e\xb7\x76\x93\xfd\x32\xae\xd2\xe2\xbe\xe2\x5a\xbe\xe2\x5a\xfe\x5b\x71\x2d\x3a\x4b\x18\x65\xa8\x16\x08\xae\x2d\x7c\x7b\xfb\xcf\xb7\x6f\x5e\x63\x3c\xfd\xc0\x74\x55\x7b\xcb\x77\x63\x48\xe5\x13\x91\x28\x80\x61\xe0\x64\x87\x50\x78\x69\xed\x97\xf3\x0f\x52\x44\x3d\x87\xbb\x1d\x46\xd1\x07\xba\xe1\x24\xe0\xb5\x10\xa8\x99\x35\x67\xda\x4c\x40\x66\xf2\xf4\x05\x11\x17\x1c\x04\xcc\x8e\xfc\x79\xbf\xdb\x95\x98\x43\x88\x74\xfd\x0c\x10\xa6\x9b\x28\x91\xde\x06\xdd\x84\x87\x82\xb8\x98\xbd\xcb\xde\x42\x6e\x32\x1b\x8d\x40\x92\x58\xd8\x01\xb2\x59\x25\xff\x3e\x07\x5f\x30\xc7\x56\x23\x4e\x9d\x94\x96\xda\x61\x0f\x22\x57\x54\xdd\xcd\xfe\x66\xb4\x95\x5b\x88\x72\x6d\x44\x00\x03\xb9\x4b\xf6\x42\x24\x38\x20\x77\x86\xa2\xad\xc8\x25\x3a\xcc\x3f\x42\x3c\xe6\xfe\x03\x2b\xf2\x22\x37\x99\x5d\x24\x18\x51\xe6\x7a\x81\xc0\xb1\x6d\xc7\x67\x04\x82\xc8\x65\xaa\x8b\x13\x91\x35\x98\xd1\xf5\x22\xb1\x4b\x11\xa9\x23\x7e\x7b\xf3\x94\xb5\x28\x11\x60\xa3\xf4\x24\xd7\x69\xfe\xd9\xe1\xdf\x1a\x04\x1d\xd2\x12\xb3\x6f\xaa\x73\xc0\x5c\xa4\x7e\xa5\x9c\xb3\x2a\x91\x96\xdc\x00\x38\x78\x68\x7b\x2f\x7c\x37\x01\x98\xdf\xc9\x3e\x33\xcb\x91\x71\x90\x7b\x01\x2e\x63\x04\xce\x00\x0c\x28\x14\xd6\x4d\xc8\x2f\x44\x55\x23\xdb\xf1\xab\x6d\xf4\x10\xe2\x68\x87\xd7\x30\xef\xa4\x2a\xc9\xa6\xa3\x06\x59\x1a\x3c\x9f\xa7\xae\x69\xbb\xd3\x78\x9a\x4d\xdc\x4e\xea\x0b\x31\x52\x87\xe6\x2f\xdf\xcc\x71\xf6\x11\x7b\xb6\x8b\xe3\x9f\xa7\x53\x11\xdd\x5b\x48\x67\x7b\xf6\xe2\x97\xea\x6e\x27\x3f\xc6\xf9\x6c\xa1\x8d\x38\x2e\xcd\x94\x35\xdf\xdc\x31\x99\x5a\x47\x23\x3b\x9d\x5e\x75\x4a\xd3\x27\x70\x73\xce\xb0\xad\x77\xc1\x69\xb0\x93\xb6\xd2\xa2\x88\x96\x97\xa6\xd9\x07\xe2\x5b\xd4\x70\xc4\x47\xe0\x12\x77\x30\x0a\x27\x77\x30\x96\xa4\xad\x59\x19\x02\xa6\x26\x67\xb0\xde\x97\x40\x7c\x7f\x51\xce\xdf\xee\x83\xca\xb6\x4f\xfc\x9b\x0b\xd0\x19\xf9\xd1\xfd\xb8\x4b\xa5\x1c\xd4\xd2\xe2\x17\x78\x7b\x1b\x58\xb6\x03\x6b\x69\x77\x27\x00\x5d\x81\x0e\x4d\x24\x49\xca\x72\x30\x27\xb3\x08\x87\x9d\x89\xaf\x71\x7c\xac\x6e\x41\x66\x07\x68\x95\x6d\x07\x7a\x8f\x7a\x0e\xf2\xb2\x22\x1f\x69\x86\x23\xdd\x14\x0d\xe4\x44\x64\x39\x8c\xc3\x4b\x6c\xa5\x70\x1d\xcb\x64\xab\xe4\x8c\x61\xcb\x4e\xfd\x09\xd8\xde\xa6\xb2\xcf\x02\xee\x69\x1c\x00\x07\xb8\x47\xa4\x8f\x27\xaf\x6c\x07\xd8\xb6\x70\x9d\x03\x29\xa3\x93\xbc\x29\xa3\x5b\x7f\x09\xfa\x20\xf5\xb8\xe7\xae\xa2\xf6\x09\x03\x76\x49\x2f\x64\x54\xc1\x3e\x83\xa0\xd3\x97\xda\xb7\xb7\x83\xa1\x94\x3b\x85\xd3\x36\x64\x79\xf5\xac\x91\xec\x7a\x27\xbb\x20\x55\x72\x52\xc8\x3c\x58\x38\x83\xa1\x4d\x7d\xfb\x19\x8a\x75\x7b\x3b\x92\x30\x4c\x0a\x91\xfc\xf1\x97\x69\x9c\xd0\xa2\x0b\x92\x2a\x06\xbc\x17\xf3\x2c\x89\x48\x5c\x05\x02\xd3\x81\xf6\xc2\x76\xa2\xea\xa9\x12\xc2\x70\x12\xfe\x07\xbc\x8d\x03\xb0\xf1\x99\x4f\x47\x53\x75\x88\xcb\xe5\xd3\x9a\xb3\xf0\x9f\x82\x6b\xca\xa5\x5f\x56\xb0\x7f\x7e\xf2\xaa\xaf\xdc\x72\xf2\xca\xb4\x1d\x9a\xcf\xa8\x1c\x26\x47\x4c\x2a\xd3\x2a\x07\x09\xc6\xb0\x03\x26\x53\x7c\xd3\xc9\xe5\x81\xdc\x75\x20\x3d\x25\xb1\x65\x33\xf5\xe5\x7c\xd1\x9f\x0f\xc0\xb0\x8f\x6b\x62\xe5\x53\x1f\x8f\x05\xa3\xfa\x46\x1d\xf0\xf2\xc2\xa7\xcb\xaa\xcb\xa1\x92\x3c\x02\xb3\x63\xda\x2f\x71\x1f\xcb\x20\x4f\x69\x19\xd2\x22\x10\x64\xe1\xbb\x26\x2b\x9e\x6a\x99\xae\xcb\x7a\x0a\x98\x4e\xd0\x67\x1d\xdf\xde\x86\x8f\x88\x3e\x26\x74\xb7\xdb\xdb\x74\x4d\x11\x51\xe0\x00\xe9\x05\x72\x20\xa5\x6a\x88\x18\xe3\x52\xc0\x6b\xe3\xde\x15\xed\xbc\x83\x2b\x0b\xf2\x42\xb9\x30\x9f\x2d\x41\x27\x18\x19\x3c\x59\xfa\xc8\x52\xeb\xdf\x00\x8b\x2e\x7b\x48\x73\xa6\x2b\x67\x05\x0a\xaf\xc6\x77\xbd\x5f\x4b\xe4\x48\xec\xdb\x89\xfd\x99\x58\x26\xf0\x85\xd7\xcd\xc4\x41\xe4\x27\xf8\x24\xdd\xd1\x29\xb0\x1f\x64\x3a\x1f\xb4\xfb\x20\xad\xae\x54\xdd\xcd\x78\x86\x43\x78\xb5\x83\x40\x10\x22\x30\xc2\x1d\x1c\xdf\xcb\x1a\x4e\xf3\x18\xa8\xc5\x13\xcf\x30\xe3\xf1\x90\xd4\xde\x14\xef\xdc\x13\x93\xd6\xa5\xa9\xb6\xd4\x42\x9a\x46\xfe\x08\x50\x3b\x86\xc6\xe1\xdc\x6f\xe6\x60\xf1\x8b\x53\x47\x68\x22\x3a\x8f\x91\x0f\x13\x0a\x0b\xb9\x93\xd2\xae\xd0\xa3\x4c\x32\x3c\x37\x97\xb2\x91\x13\x6b\x92\x13\x62\x99\xb4\xf7\x7d\xc9\xb7\x4b\x4c\x53\x51\x2c\x8e\x56\xc6\xb4\x9d\x44\xf0\xa2\xf8\x5e\xe2\x4e\x7d\x04\x20\xfe\xce\xa6\x55\xdc\x45\xc8\xdc\x27\x93\xdc\x49\x3c\x3f\xe3\x43\x40\xe0\x33\x40\xb4\xbe\x81\x4e\xdf\x1a\x00\xc7\x75\x5d\x3c\x5c\x58\x80\x02\xb5\x6f\x6f\x65\xff\xb2\xe9\x44\xf6\x42\x57\xed\x13\x4b\x98\x25\x0b\xb8\x14\xe7\x40\xc1\x33\x4c\x15\xc8\x45\xb4\x8b\xe9\x92\x78\x00\x87\x2f\xc9\x7f\xfa\xfc\xe6\x64\x00\x87\x64\xf7\x4a\x5b\xdb\xe8\x13\x5e\xfb\xd1\xa7\xbb\x9f\xb8\xf6\x1c\x2b\xc5\x86\xc0\xd0\x66\xd9\x9b\xb3\xc9\xd4\x03\x2e\x69\x54\x39\x27\x4b\xda\x2a\xee\xf7\x4b\x75\x16\xc8\x15\xae\x8f\xf1\x94\x26\x65\x10\xa9\x0e\x55\x52\x4a\xe4\x81\x01\x1c\xba\xe2\x0a\x36\x3d\xb6\x94\xe7\x0d\xe0\x50\x70\xc7\xbc\xe8\xd1\x88\x7e\x79\xb3\x07\x70\x38\xa4\x65\xae\xd2\xd5\xc7\xe9\x5a\x16\x92\x85\x0f\xd2\xf8\x01\xff\xe5\xcd\xc5\xfb\xfb\x73\xb2\x89\xf6\x4d\x73\xc1\x52\x49\x69\xc7\xf1\x16\x1f\x08\x5a\xf9\xad\xd9\x57\x0c\xa3\x60\xe4\xa3\x35\x87\x57\x1b\x8a\x20\xc6\x37\xf4\xa8\xb7\x85\xd1\xcd\x1c\x7a\x14\x1f\x21\x2b\x44\xd8\x4e\xc7\xdb\x25\xdd\xcd\x36\xee\x3f\x99\x82\xd2\x0f\xd9\xf3\xcc\x1d\x5a\xd9\xe5\x04\xf8\x68\x34\xde\x01\x5f\xfc\x51\x4d\x44\x96\x5f\x39\x25\x22\x7a\xe4\x63\x70\x37\xe9\xb4\x22\xaa\x95\xbe\x56\x86\x5a\x79\xb9\xf4\x7d\xc7\xa2\x1b\x98\xf7\x82\x0e\x1a\x96\x8a\xd8\xab\xd7\xa5\x43\x06\x9a\x27\x8d\xf2\xee\x5f\xce\xfe\xf3\x9f\x1b\x75\xa0\x2e\x67\x09\x70\x7f\x4d\x36\x6b\xa3\xd1\x91\xc9\xc5\xf6\x20\x8f\xbb\x90\x06\x50\x13\x2d\x1d\x2e\x0b\x38\x73\x6e\xfd\xbc\x25\x13\x02\x24\xfd\x47\x5d\x27\x19\xc7\xb3\x28\x38\x8b\x11\xee\x3f\xea\x39\x78\x8c\x40\x32\x8e\xa3\xa0\xef\xee\x3b\x64\xad\xf6\x15\xb6\x1b\x9a\x4f\x03\x50\x42\x6d\x29\xe7\x0a\xe0\x1f\x61\x9f\xeb\x8b\xd9\xc9\x01\x1e\x74\x87\x43\x4b\x18\x5c\xd9\x78\x2f\xec\x05\x1b\x30\xb9\x52\x8e\x68\xab\x9b\x9e\x12\x66\x24\x70\x43\x0c\x26\x35\xdb\x64\x61\x02\xde\x8d\x92\xac\x1b\x79\xc1\xbe\x49\x5a\x9d\x88\x18\x23\x5f\x94\x1e\x96\xba\xae\x44\xc1\xe4\x39\xac\x30\x47\xd0\xc7\x48\xf6\x64\x9e\xab\x47\x7a\x7a\xfa\x59\x18\xff\x8e\x35\x80\x9c\xbd\x47\x98\xea\x48\x7a\xb8\x6a\xc6\xf9\xf6\x4b\x9f\xb3\xf6\xd8\x7d\x6c\xf9\xf5\xa5\x81\xf8\x88\x23\x70\x05\xbe\xd4\x90\xd6\x3e\x20\xe9\x40\x69\x56\xa9\xf4\x64\xb5\x15\x3e\x80\xab\xe3\x2f\x53\x6a\x94\x9a\x76\x3e\xe5\x8b\x6c\x0a\x8f\x7a\xa9\xd5\xef\xbd\xc0\x2e\x06\x09\x6e\x25\x19\x58\xb2\xeb\x0e\xcd\x7c\xed\xdc\x51\xf5\x24\xa6\xad\x73\x4e\x62\x39\xe7\xd6\x81\x2c\x55\x84\x41\xce\xc2\xcb\x1b\x07\x49\xb9\x23\x8e\x9a\xb6\xcb\xef\x57\xa3\xc7\x94\x5d\x4a\x2a\x4d\x6b\x65\x95\x81\xe6\x9f\xc0\x4d\x1f\xd0\xaa\x52\x29\xfb\x15\x78\x6c\xf6\x45\xa9\xbf\xb9\xa0\x8d\x53\xa8\x29\xd8\x8e\x86\xd3\x6c\xe0\x5f\xbe\x99\x47\x0b\xaa\x1a\xdb\x5b\x85\xe2\x80\x90\x82\x0c\xbf\x35\xcd\x6f\x6d\xbe\x03\x22\x62\x2c\xb1\xcf\xe6\xdb\x73\xe8\x99\x66\xb6\xb7\x71\x8e\x10\xe5\x85\xbc\xee\x3b\x57\x6b\x51\xae\xd0\xff\x24\xfe\x0c\x04\x79\x35\x7d\x01\xf2\xa0\x85\xc4\x0b\x42\x7b\x8e\xe8\xcb\x17\x22\x5c\x40\x09\x85\x73\xcd\x76\x50\x56\xf8\x58\xee\x8d\x93\x08\x1e\xde\xe2\x20\x64\x19\xd2\xec\x8a\xc2\x48\x68\x1f\x08\x17\x8e\x1f\x45\x1a\x82\x25\xb5\xa4\x8d\xc6\x4f\x96\x33\xea\xcd\xc7\x91\x2d\x37\x82\xdb\x68\x22\xb4\x62\x6f\x11\xe5\x2b\xa5\x64\x60\x03\x04\xa5\x90\x1f\x07\x1b\x57\xad\x03\x9e\x45\x1a\xfe\x67\xf3\x93\x7f\x30\x94\xf0\xd6\x7c\x0f\x31\x45\x16\x6b\xc7\x7c\x0c\xaa\xb5\x75\x1c\x8e\x3e\xe9\xf9\xef\x96\x84\xa1\x2d\xd1\xab\xf3\x6b\x00\x88\x89\x7d\x4e\xdb\x92\xe7\xdf\x56\x4b\x7f\x95\x80\x7b\xbc\x1e\xd8\xdb\x79\xd2\xcd\xe1\x7b\x12\x80\x3f\x30\x49\xb8\x20\xfd\xac\x44\x88\x90\x0b\x4c\x87\x73\x8b\x52\x9a\x1b\xb2\x6f\x8b\xfb\xe7\x94\xfd\xe7\x04\x62\x80\x3e\xfb\x11\x87\xeb\x84\xfc\x4f\x81\x26\x12\x7f\x7b\x64\x99\x88\x4b\x89\x54\x65\x95\xad\x68\x0b\x1c\x60\x2f\x02\x56\xfb\xd0\xaa\x79\xea\x62\xe1\xa0\xd2\xde\x27\xd8\xc7\xe1\xc8\xc8\x1e\x95\x61\x82\xc5\x35\x6c\x38\xff\x82\xe2\xd9\x94\x46\x00\x8b\x87\xdd\xf4\x76\x27\xa0\xb5\x40\x0d\xdd\x55\xf6\x42\x19\xea\xe2\x18\x93\x6b\x7d\x46\xd7\xaf\x8c\xf3\x47\xcc\x4f\xf0\xbe\x2f\xd4\x6b\x73\x17\x79\x40\xaa\x34\xaa\xde\x7e\x05\x78\x7b\x52\xa4\x54\xf1\x94\x27\x06\x9a\xb7\x8b\x5c\x91\x7f\x0e\xf9\x91\x51\x8b\x67\x27\xec\xc5\x95\xd4\xb2\x1c\x2e\x48\x5c\xb4\x08\x93\xc3\x28\xfc\x5c\x38\xcf\x0f\x2f\x12\x06\x03\x9f\x2b\x47\xbd\x47\x5d\x47\x48\x12\x69\x48\x2d\xbb\x58\xe1\x4c\xcc\x40\xd1\xf8\x2a\x04\x14\x7d\x57\x61\xb6\xe2\x78\x5a\x7c\x7f\xaf\xe4\xfd\xba\x82\x70\xed\x9a\x10\x4f\xf3\x2d\xf0\x47\x38\xfc\x0c\x8e\xe2\x59\xa1\x44\x5c\xb1\xfb\xf2\xa5\x62\x62\x88\xd3\xe9\xdc\xb8\x22\x7f\x7a\x60\x91\xbf\x7d\x9e\xcf\x9c\x97\x2e\xdf\xde\xb6\xa4\x10\x78\xe3\xb5\x40\xf5\xa3\x74\x29\xb3\x17\x6b\x57\x83\x7c\x05\x25\x1e\xe5\xf3\x0f\x6d\x15\xd9\x40\xb8\x8f\x38\x15\xd0\x3b\x1e\x72\xe0\x9f\xac\x4e\x07\xfc\x09\xfc\x09\x3c\xee\xd9\x8f\x31\x25\xfd\x70\x92\xdc\x42\x2f\x6a\xda\x62\x48\x78\xd5\x99\x4b\xe4\x4f\x80\xa8\x23\x48\xe5\xcd\x08\xb1\x6a\x1c\x3d\x9b\xcc\x54\xcc\xb3\x12\xb4\x85\xfa\xe8\xcd\x7f\xf6\x7a\xf4\xc2\x63\x18\x54\x5d\xf6\x42\x2c\xa2\x18\xfb\x11\x3d\x92\x2c\x0a\x73\xb7\xe4\x63\xeb\xa6\xb9\x4a\xf3\xa5\x9b\x85\xe5\x0f\xab\xaf\x8b\xcb\xd7\x80\xf2\x80\x18\xc7\x87\x30\x38\x23\x67\x8a\xdd\xb3\x17\xd3\xc8\xbf\xd1\xdf\xf2\x9e\x9c\xd1\xdd\x92\x68\xc6\xb6\xee\x1e\xb9\x19\x40\xfb\x31\x73\x40\x41\xa9\xe3\x59\xfd\xef\x54\x06\x6d\x6f\xb3\xda\x27\x82\x93\x4d\x7e\xfd\x1a\x1e\x7f\x7b\x4b\x1e\x4f\x7b\xc9\x9f\x9f\x5d\x5e\xb2\xf8\x70\x51\x42\x03\xc4\xc2\xa5\xbc\x24\x8a\x23\x9f\x21\x6b\xfe\x47\x3a\x9d\xf2\x76\xb1\x3c\xd5\x04\xab\x9d\x32\xc3\xf3\xd7\x87\xe2\x8c\xb8\x7a\x51\xdc\x1e\x51\xb6\xd7\x2d\xf8\x49\x1c\x17\x16\x68\x4e\x95\x2c\xa2\xc7\xa0\x3d\xc7\x03\x38\xec\x50\x67\x1f\xad\x44\x0b\xae\x8d\x24\x7d\x8e\xcb\x26\xd3\xa2\x00\x3c\xf6\x7a\xbb\x0e\xf2\xfc\xe2\xde\xf9\x96\x42\x77\x2c\x94\x1d\x21\x3a\x53\x22\x13\x94\xf1\x6a\x55\x20\x3b\xc2\xc7\x0d\x16\xb6\xba\xcb\x18\x5d\xfb\x28\x48\x16\x1f\xa7\x28\xa6\xf8\x26\xd5\xa5\xc9\xc6\x6b\x4a\xde\xa0\x06\x64\x95\xa9\xc1\xa1\xd0\x9a\x69\x9c\x2a\x3a\x21\x0e\xfd\x88\xe2\xbf\x06\x60\xe8\x48\x8f\xcd\xfe\x94\xbe\xa2\xbd\xa5\xb2\xa7\xba\x1f\x39\x6f\x29\x2d\xbd\x61\x2f\x44\xb3\xb5\x42\xee\xcf\x45\x01\xf4\x32\xeb\x08\xeb\xa4\x53\xbc\xed\xb1\x97\x9b\x1c\x76\x5f\xd3\xa1\xe2\xb3\x9d\x82\xd4\x61\xcb\xcc\x5e\x5c\xf8\xa3\x4f\xe5\xcd\xec\xe4\xdf\xa7\x69\xd3\x0b\xaf\xfb\x32\xd7\x72\xde\x28\x34\x83\xea\x17\xd4\xdc\xed\xe5\xb7\x72\xa9\x6d\xf2\xf2\x2f\x5b\xa0\xf2\x57\x4b\x97\xa9\x7c\xd0\x9b\xa7\x55\x8a\xaa\x67\x8b\x76\x16\x78\xf2\x97\x1d\x00\xba\x3a\x58\xad\x5a\xb9\x71\x39\x71\x2d\xcd\xee\xb9\x7c\x3f\xdf\xf3\xd3\x73\xaa\x7c\x60\x95\xa5\xd2\xb5\x92\x3f\x4f\x5b\x2c\x49\x0e\xbe\xc6\xd2\x57\x08\xa4\x3f\xdb\xbd\xa9\xf1\x91\x54\xdb\x48\x38\x02\x39\x5b\x2e\xa5\x54\x8c\xc2\x0e\xb3\xdb\x3b\x22\x8d\x3d\x77\xd3\xea\x16\x52\xe9\x0d\x5c\x3b\x31\x9d\xb9\x8a\x21\xbd\xd2\x11\xae\x66\xc6\xc3\x62\x51\x19\x5a\xc6\xf1\x24\xbe\x42\xfe\x74\x7c\x07\x14\x03\x05\xa7\xbf\x03\x05\x98\xfa\xb9\xf8\x9f\xe3\x7b\x9d\xec\x8f\xc8\x1b\x0c\xb7\xa0\x46\x34\x27\x8c\xca\xd8\xf3\x12\x06\x7c\xa1\x8f\x09\xbd\xc4\x3d\x03\x57\x64\xba\x69\x6f\x62\x05\x61\xd8\x1d\x8f\x3c\x06\x81\x21\x5b\x2b\xbf\xc7\xf3\x42\x81\x08\x07\x56\xe2\x60\x7b\x2b\x62\x81\xfb\x39\x8c\x03\xd0\xe7\x90\x99\x20\x4c\xb0\x0f\x47\xa0\x0f\x9d\x84\xdd\xd7\x0f\x17\xb6\x03\xff\xcc\x0a\xf1\x42\xdb\x81\x2f\x58\x06\x27\x64\xc6\x78\xe4\x26\x31\xc2\xf9\xb4\xe8\xd4\x8a\x17\xcf\xeb\xe0\xf4\x27\x87\x7c\xd0\x72\x43\x89\x13\x7a\xc2\x59\xe1\xc4\xde\x5b\x1f\x8f\xdd\xcb\x28\x8e\x91\x15\xee\xec\xa6\x9b\x79\xf8\xa2\xfb\x32\xf1\xc2\xff\xdd\x7d\x19\x0d\xe2\x61\xfa\xa0\xbe\x15\x0d\xe2\x4e\x2f\x3b\xf0\x58\x39\x6d\xef\xec\xf6\xad\xc4\xeb\x3a\xc8\xeb\x3a\xbe\xd7\x65\x35\xa8\xe8\xa9\xa4\x1f\x39\x93\x10\xf6\xe9\xfb\x30\x9a\xc1\x91\xd5\xeb\x76\xff\x84\xec\x9d\x5e\xb7\xeb\xd0\x32\x7a\x85\x93\x09\x3f\xe9\x7f\xc9\x9f\xf1\xe9\x99\x1a\x37\xca\x6c\x74\x19\xa2\xe4\xce\x20\x2c\xbf\x7c\x33\x07\x95\x28\x4d\xd0\x18\xa5\x39\x9b\x06\x3e\x06\x1d\xca\x06\xdd\xe1\xe9\xac\x77\x50\xe7\x88\xaa\x32\x19\xd5\x28\x7a\x29\x31\x92\x3a\xd0\xee\x67\x36\x0a\xa0\xde\x73\x8a\x57\xd0\xd6\xf2\x97\xc3\x6c\xd0\x26\xcf\x5a\xd8\x9c\x7d\x94\x4c\x65\x5a\x2b\x96\x4e\x8b\xf8\x92\x5f\xcb\x3a\xf1\x1e\xc5\x5f\x6e\xb6\xb7\xa5\xfd\xde\x11\x19\x32\xa6\x03\x5c\x36\x14\x87\x14\x9c\xef\x00\x01\x13\xb0\x7c\xa7\xe7\x0c\xb0\x84\x2a\xc3\x25\xa3\x2b\x51\xda\xef\x84\xf4\xa9\x61\x0c\x3b\x53\x80\x28\x10\x38\x86\x9d\x31\xc6\x53\x4e\x7d\x50\xc9\x80\x2b\x93\xe3\x8b\xa7\xc6\x48\x77\xe1\x28\x86\x01\x43\x22\x44\x25\x37\xed\x24\xf1\x04\xe0\x70\x02\x0a\x81\x2f\x22\xcd\xd6\x8a\x52\xb2\xbd\x17\xd6\x9c\x02\xc3\x06\x94\x5b\x58\x50\x33\xbf\x47\x20\x01\x64\xfd\x5a\x8f\xba\xf6\xd0\x61\x3e\x57\xab\xeb\xc0\x8c\x6b\xb8\xf2\x86\x62\xad\x10\x93\x5d\x81\x4d\x89\x32\xde\x32\x19\x7e\x9b\xe6\xe5\xd2\x98\x49\xc9\x46\x52\xf7\x99\xfe\x80\x9f\x06\x90\x2f\x63\xfe\xc9\x5c\x76\xd4\xf3\xfc\xd9\x96\xf9\xfa\xfc\xfc\xbd\xcb\x74\x97\xc4\x64\xb1\x47\x9c\x3f\xcd\xbe\x07\x3f\x0b\xf3\x67\xdf\xfb\x78\xcc\xbe\xd5\xed\xad\x79\x1a\x93\x3f\x4d\x07\xe9\xae\xa2\x57\x88\xd0\xc5\xa3\x01\xab\xbf\xc4\xb7\x18\x8a\x09\x11\x7f\x88\xc7\x3c\xf2\x3c\xb8\xbd\x4d\x19\xeb\xd0\x30\x83\x97\x3e\xea\xd2\x19\x71\x48\x7b\x95\x9b\xa3\x27\xe4\x22\xf2\xf5\x6d\x6b\x1e\xc2\x3e\x18\x98\xda\xa9\x31\x74\xd9\xdd\xae\x1f\x45\xf1\x35\x08\xe8\x5c\x4e\x16\xf6\xd0\x21\xad\xed\xcf\xc9\xeb\x2b\x07\xf9\xc7\x18\x4d\x7c\x6c\x5b\x73\x1a\xac\xeb\xef\xfc\x3f\xff\xde\xd9\x59\x34\x1b\xed\x6c\xc0\x0a\xbc\x19\x60\x7b\x5b\xea\x3b\xdf\x90\xf5\x49\x77\xda\xd9\xff\x87\x99\xf2\x4c\x3b\x5b\xef\x54\x67\x5f\x9c\x4d\x42\x65\x92\xbf\x4f\xe7\x05\x5f\x02\x82\xb3\xde\x64\x30\x2d\x16\xda\x61\x73\x93\x4c\xbc\x33\x4a\x81\x59\x27\x20\x1d\xe5\xd4\x1b\x16\xf6\xb1\xe6\x44\xbb\xe9\x91\x99\xf2\x0a\x24\x38\x84\x74\x64\x57\x7d\x94\xd4\x01\xfa\x98\xd2\xf1\x2a\xde\x5a\x94\xc9\x8f\x8a\x23\xb6\xb0\xed\xe1\xa2\xbe\xfa\xa4\x3c\x55\x3e\x7d\x5e\x6a\x2e\x6e\x20\x8a\xcd\x34\xeb\xf9\x4f\xe0\x66\x85\x21\x96\x7b\x5f\x12\x9c\x96\x7b\x34\x65\xec\x4e\x0f\x6b\x04\xe8\x2c\xab\x16\x62\x83\xc3\xce\xff\xf9\x9d\xff\x74\x3b\xcf\xff\xdd\xf9\x38\x9c\xf7\x9c\xde\xee\xb3\xc5\x37\x3b\x4a\xa1\x80\x26\xfd\x47\x71\xa4\x37\x64\x7f\x5f\xbd\xdf\x3d\x78\xb2\x4c\xef\x31\x25\xe6\xba\x1b\xb4\x4c\x19\xc0\x8e\x65\x78\xee\xa8\xb4\xfb\xea\x72\xc7\xe8\x86\x9a\x9d\xc0\xab\xb9\x0f\x67\x65\xe4\x54\x4e\xf0\x6f\x27\x00\xfb\x03\xe8\x4f\x80\x67\x7e\xfb\x18\x3c\xfe\xd6\x1c\x7e\x6b\xe7\x4a\xb7\x0a\xbd\xdc\x76\xa0\x37\x17\xb4\x84\x12\x25\x65\x00\xf2\xd4\x55\x16\xb6\xed\x45\x2e\xf5\x2f\x37\x56\xb0\x7c\xac\x60\x06\xc9\x63\xf5\x78\xb2\xe2\x3d\xdf\x1e\xc5\xb3\x28\x30\x60\x8c\x0d\x04\xfc\xc0\x60\x7d\x35\x2e\x51\x3c\x31\x48\x4f\x0c\xec\x5f\x19\xd7\x21\x1e\x1b\xa4\x4b\x06\xef\x92\xfb\x2d\xb3\xa7\xd1\x0c\xc2\x10\x5e\x9d\x83\x04\x27\xb7\xb7\x08\xfc\x36\x0b\x91\x32\xe4\xfe\x74\x6a\xda\xe2\xc3\x88\x1a\xcd\xac\x6c\x64\x76\x95\xe9\x7c\x06\x88\x48\xea\xbe\xb9\xeb\xee\xba\x5d\x73\x61\x6f\xfd\xff\x01\x00\x00\xff\xff\xef\xe0\x18\xc4\x55\x92\x15\x00") + +func web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029Js, + "web_ui/assets/consul-ui-7e65bd2d836bd4fb61149d78e6516029.js", + ) +} + +func web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029Js() (*asset, error) { + bytes, err := web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/consul-ui-7e65bd2d836bd4fb61149d78e6516029.js", size: 1413717, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -224,7 +455,7 @@ func web_uiAssetsCssEscape851839b3ea1d0b4eb4c7089446df5e9fJs() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js", size: 753, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js", size: 753, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -244,7 +475,7 @@ func web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js", size: 18615, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js", size: 18615, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -264,7 +495,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(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js", size: 529734, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -284,7 +515,7 @@ func web_uiAssetsFaviconIco() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon.ico", size: 6518, mode: os.FileMode(420), modTime: time.Unix(1632315734, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon.ico", size: 6518, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -304,7 +535,7 @@ func web_uiAssetsFaviconSvg() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon.svg", size: 6381, mode: os.FileMode(420), modTime: time.Unix(1632315734, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon.svg", size: 6381, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -324,7 +555,7 @@ func web_uiAssetsInit21ea65714d133467454b601efc15e2ddJs() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/init-21ea65714d133467454b601efc15e2dd.js", size: 841, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/init-21ea65714d133467454b601efc15e2dd.js", size: 841, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -344,7 +575,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(1632315734, 0)} + info := bindataFileInfo{name: "web_ui/assets/loading-cylon-pink.svg", size: 983, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -364,7 +595,7 @@ func web_uiAssetsMetricsProvidersConsul31d7e3b0ef7c58d62338c7d7aeaaf545Js() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js", size: 632, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js", size: 632, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -384,27 +615,7 @@ func web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js() return nil, err } - info := bindataFileInfo{name: "web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js", size: 9627, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} - a := &asset{bytes: bytes, info: info} - return a, nil -} - -var _web_uiAssetsVendor11065761200f308590a78bf8e141bc49Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\xfd\xd9\x76\xe3\xc6\xba\x20\x08\xdf\xeb\x29\x48\xd4\xfe\xb1\x23\x92\x9f\x90\x88\x20\x09\x92\x21\x85\x58\xe9\xb4\xd2\x27\x6b\x3b\x87\xca\x94\xed\xe3\xc3\xcd\xd2\x81\xc8\xa0\x08\x27\x04\xd0\x00\x28\xa5\x4c\xb2\x96\xeb\xef\xae\x1e\xd7\xea\x07\xe8\x9b\xae\xdb\xbe\xea\x77\xa8\x37\x29\xf7\x8b\xf4\x8a\x01\x13\x09\x2a\x73\xbb\x5b\x17\x22\x10\x88\x79\xf8\xa6\xf8\x86\x87\x20\x9a\xc7\x0f\xce\xe5\xdd\x8d\x48\x2e\xdf\xfe\xc8\x17\xeb\x68\x96\x05\x71\x84\x04\x64\x78\xb3\x88\x13\x74\xef\x27\xad\xa4\x15\x44\xad\x0c\x8b\x49\x32\xe5\xd9\x24\x99\x9e\x24\x22\x5b\x27\x51\x4b\xec\xd0\x5e\x05\xdb\xed\x66\x07\x9b\x57\x97\x2f\xae\x7e\xf8\x70\xf9\x91\x6d\x76\x70\xf9\xcf\x57\x97\x6f\xbf\xbd\x7e\xff\xe1\xdd\xd5\xbb\xab\x9f\xdf\xcb\xc4\x6f\xfd\x4c\xb0\x36\xd9\xc1\xf5\x8b\xf7\xef\xbf\x7f\xfd\xf2\xc5\xd5\xeb\x77\x6f\xaf\xaf\x2e\xdf\xbc\xff\xfe\xc5\xd5\xe5\xf5\x4f\x1f\x5e\xbc\x7f\x7f\xf9\x81\xb5\x09\x5c\x7f\x7b\xf9\xea\xc5\x0f\xdf\x5f\x5d\xbf\xf8\xf8\xf3\xdb\x97\xd7\xef\xbe\xf9\x78\xf9\xe1\xc7\xcb\x0f\x1f\x59\xdb\x85\xeb\x7f\xf7\xef\x7f\xb8\xfc\xf0\xf3\xf5\xeb\xb7\x57\x97\xdf\x7d\x50\x75\xa8\x22\x45\x3d\xef\xde\x7e\xff\xf3\xf5\x77\xdf\xbf\x7e\xf3\xe6\xf2\xc3\xf5\xcb\x77\x6f\xde\xbf\x7b\x7b\xf9\xf6\x4a\x96\xdd\xe1\x13\x39\xac\x30\xf6\xe7\x22\x81\xb9\x58\x04\x91\x80\x44\xfc\xba\x0e\x12\xf1\x26\x9e\xaf\xc3\xe2\x2d\xff\xfd\x25\x85\x64\x1d\x45\x41\x74\x7b\x25\xd2\x2c\xe5\x6d\x72\x86\xca\xb9\xc2\x1b\x6b\x9d\x8a\x56\x9a\x25\xc1\x2c\xb3\x4e\xf2\x0f\xad\x0c\xe1\x8d\x6c\x48\xf0\x77\x37\xbf\x88\x59\xe6\xcc\x12\xe1\x67\x02\x45\xeb\x30\xc4\xc5\x24\x3a\xd7\xd7\xfc\x3e\x0e\xe6\x2d\x17\xe6\x22\x14\x99\x50\x49\x20\x76\x6a\xea\xf9\x46\x77\x93\xd5\x7a\xcb\x9a\x3a\xcd\x1a\x87\xc0\x0e\x86\xc2\x8a\xa7\xdd\x49\xf1\xc8\xcd\x13\xaf\x55\xc2\xab\x83\xcc\xb7\x43\xc6\x27\x53\x48\xf8\x0c\x09\xb0\x90\xc9\x8e\x2d\xc8\x30\x44\x3c\x73\x42\x11\xdd\x66\xcb\x53\x72\x16\x5d\x70\xf7\x2c\x3a\x3d\xc5\xd9\x24\x9a\x3a\xe2\xf3\x2a\x4e\xb2\x14\x15\xe3\x4e\x9c\x3b\xd5\x44\xfe\x65\x07\x7a\x84\x7c\x13\xc5\x2f\xe3\x68\x11\x06\xb3\x8c\x15\xcd\x67\x7a\x26\x23\x08\x4e\x64\x37\x22\xbd\x23\x33\x67\xe9\xa7\xef\x1e\xa2\xf7\x49\xbc\x12\x49\xf6\x88\x22\x6c\xdb\x49\x53\x22\x0a\xb8\xec\x06\x88\x49\x30\xe5\x42\x3f\x45\x53\x9e\x4c\xa2\x29\xde\xc1\x9d\xff\x49\x7c\x2b\x16\xfe\x3a\xcc\x2e\x55\x6f\xe4\x26\x51\x7b\x24\xe2\x19\xc2\x10\x70\x24\x7f\x5c\x5c\xae\x6d\x2c\x67\x24\x5b\x26\xf1\x43\x2b\x12\x0f\xad\xcb\x24\x89\x13\x64\xf9\x51\x6b\x1d\xa5\xeb\x95\xac\x43\xcc\x5b\x7a\x84\xad\x07\x3f\x6d\xe9\x05\x9b\x43\x4b\x7c\x5e\x89\x99\xfc\xf8\xaf\x3a\x09\x05\x73\x68\xcd\xc5\x2a\x05\x93\x1d\xff\x6b\x2b\x88\xd2\x4c\xf8\xf3\xd6\x6d\x9c\xb1\xd6\xbf\x5a\x1d\xd1\xb1\xfe\xb5\xe5\x27\xb7\xeb\x3b\x11\x65\x69\x2b\x8b\x4d\x75\xff\x6a\x61\xb5\x4b\x7c\x3e\xb1\xcc\x42\x58\x60\x99\x09\xb5\xc0\xd2\x15\x5a\xd3\xb2\xdb\xa9\x3c\xd9\x90\x40\x24\x3b\x1f\xa4\xce\x7a\x1d\xcc\x79\xd0\xe9\x80\x7a\x0b\xe6\x5c\xe8\x27\xd9\x21\xde\xce\x57\x53\x4e\xaa\x7e\x1a\xfb\x2c\xd3\x39\x74\xdd\x7c\x63\x5a\x63\x9b\xdd\x4e\x7f\x98\xf9\x61\x78\xe3\xcf\x3e\xf1\x44\xbf\x2f\xfd\x54\x4f\x6a\xfa\x22\xfd\x56\xac\x78\x9b\x98\xc6\xd2\x17\x61\xe0\xa7\x3c\xd2\xaf\x89\x08\x16\x81\x98\x73\x39\x9b\x2f\x92\xc4\x7f\x44\x79\xeb\x58\x67\x48\x33\x3f\x13\xdc\x8a\xc4\x83\xb5\x2b\xc6\x13\x22\xbc\x29\xdf\xd6\x7a\x51\xcc\x48\xca\xf4\x99\x1e\x75\xb9\x85\x03\x1e\x4d\xc4\x74\xbb\x8d\x26\xa2\x63\x3d\x0f\xa2\xb9\xf8\x6c\x4d\xcf\x02\xdb\x0e\xf2\x6e\x9d\x61\x99\x27\x70\x82\xb9\xca\x26\x1f\xca\x9c\xf9\x1e\x0e\xb6\xdb\x3a\xc4\x3c\xd8\x10\x2f\xe3\x75\x38\x6f\x45\x71\xd6\x5a\x04\x51\xb1\x21\xf2\x25\x0d\xee\xcc\x46\x59\x24\xf1\x9d\x4c\xcd\x3a\x96\x5c\x53\x55\x19\x24\xb6\x6d\xad\x44\x34\x0f\xa2\x5b\xab\xcd\x79\xa0\x67\xc0\xb6\xad\x45\x10\xf9\x61\xf0\x9b\x98\xd7\x92\x51\xe0\xc8\x36\xbe\x15\xab\x14\x25\x18\x12\x67\xb5\x4e\x97\x28\xc0\x18\x82\x72\x26\xe6\xba\x9f\xc1\x02\x59\x8e\x2c\x2d\x9c\xd9\xd2\x4f\x5e\x64\xc8\xc5\x38\x07\x48\x27\x05\xdc\xe7\xc2\x49\x57\x61\x90\x21\xeb\xb9\xa5\x4f\x77\xf9\xea\xa4\x61\x30\x13\xc8\x85\x53\x22\x0f\x88\x0b\x31\xcf\x37\xc9\x59\x70\x1e\x9f\x05\x9d\x8e\x3e\xb3\x3e\x4f\x26\xc1\xf4\x44\x35\xe9\x58\x9c\x73\x5f\xb5\xef\x72\xce\xa3\x7c\x85\x0f\xe7\xcd\x8f\xe4\xa4\xf9\xb3\x99\x48\xd3\xd6\xca\x4f\x44\x94\xe5\xb3\x17\x2f\x5a\x49\x1c\x67\x16\x3e\x89\x9c\x55\xbc\x42\x78\x27\xc2\x54\x98\x31\xa9\xfa\x67\x71\x94\x05\xd1\x5a\xc8\x0c\x72\x12\x7c\xbc\xdb\x99\xd1\x45\xce\x2f\x71\x10\xa9\x11\x94\xb3\xb2\x94\xfb\x46\x67\x68\xa3\xb6\xdc\x1a\xb6\xdd\xae\xed\x0d\xbc\x4b\x9d\x55\x12\x67\x71\xf6\xb8\x12\xce\x01\xbc\x28\xe1\x64\x0e\xf1\x2b\x67\x24\x87\x70\x27\x12\xee\x73\xce\xc5\x76\x6b\xc5\x0a\x21\x58\x6d\x2e\xeb\x8b\x17\x2d\xb5\xac\xa6\x8e\x4a\xea\x76\xab\x31\x83\x5a\xa9\xb9\x6e\x71\xbb\x6d\x1b\x74\x12\xa4\x97\x9f\x33\x11\xa5\xc1\x4d\x28\x90\xc0\xdb\x2d\x2a\x32\x71\x81\x77\x50\xed\xb2\xe9\x43\xb5\xa3\x72\xc2\xca\xad\xc4\x39\x2f\x8f\xd9\x76\x6b\xc9\xf3\xf8\x28\xb7\x5e\xed\x43\xbe\x49\x9a\x86\xa7\xe1\xb7\xf3\x90\xf8\x2b\x8d\x3d\x52\xdb\x46\x75\x90\x70\x98\x05\x99\xe3\x5a\x87\x1d\x18\x97\x40\xe1\x11\x69\x74\x6d\xe6\x34\xcf\xe2\xf8\xab\x55\xf8\xa8\x8a\xd7\x00\x48\x81\x60\xaa\x89\x66\x9f\x71\xb7\x06\x4a\xca\xc1\x37\x42\x2a\xdb\xd6\x93\xaf\x97\x0c\x35\x0c\x99\x0b\x6c\xb0\xd6\xe1\x96\xb0\x6d\x5d\x60\x3f\x1d\x61\x68\xa8\xa9\xbe\x58\xeb\x28\x15\xa2\xba\x54\xfb\x00\xf0\x28\x08\xae\xd7\xa3\xa6\x6f\x7f\xc9\xcd\x94\xc8\xd3\x5f\x59\xd7\x5a\x13\xc5\xda\x9f\x64\xc9\xe3\xa6\x06\x9e\xd5\xcb\xb5\x59\x17\xd8\x2f\x24\xeb\xdd\xa9\x69\x0d\x1f\x37\x47\xb6\x50\xbe\x29\x4c\x31\x21\x0f\xbc\x98\x5b\x78\xbf\xf3\xd7\x07\xbd\xcf\xe1\x92\xd9\x09\xf9\xda\x6a\x40\x84\x21\xe3\xee\x59\x76\x2e\x72\x20\x94\xe5\x00\x28\xe1\x62\x92\x4d\x4f\xe4\x3f\x9e\xe4\x13\x3e\x2e\x9e\xd8\x3e\x25\x82\xf0\xae\x20\x70\x6b\x3d\xca\xc1\x6b\x8d\x2a\x92\x53\x2a\x97\x84\x1f\x9f\xce\x1c\x88\x9f\x94\x14\x54\x81\x64\x21\xe1\xee\x59\x72\x9e\xe3\xba\xb3\x24\xef\x75\xa4\x48\x6d\x08\x6a\x63\x95\x14\x78\xb1\xdc\x86\x68\xd4\x9d\x37\x6f\xbb\x93\x02\xfd\x4b\xf8\x3a\x46\xcd\x28\xd8\x85\xa0\xd8\xc3\x0d\xbb\x11\xb3\x82\x9c\x50\xb5\xec\x67\xf6\x3f\x89\x0f\xfa\x3b\xc2\x2c\xa7\x32\x1a\x73\xea\xbe\x05\xf9\x56\x9d\xa1\x39\x8a\x72\x5a\x03\xe7\x0f\x20\x0e\x16\xbf\xd2\xc4\x11\xd8\x2a\x41\x06\xaf\xd2\x87\x39\x5d\x69\x3a\x36\x47\x19\x08\x8c\x77\x05\x38\x28\x40\x63\x06\x99\xe9\xcf\x6b\x45\xef\xc8\xe9\x69\xaa\x69\x59\xd4\x01\xd9\x0e\x90\x26\xb9\x6a\x2c\x92\x24\x29\x4a\x72\xe2\x24\xb0\x6d\xb5\x15\x4a\xac\xbc\xdd\xa2\x82\x6c\x33\x2b\x7c\x4e\x6d\x3b\x3e\x48\xc5\xa0\x68\x1e\x49\x7d\x68\xda\x47\x42\xf3\x44\x76\x95\x4f\xa6\x18\x64\xf5\x3c\x51\x74\xa1\x1f\xcd\x24\x6a\x58\x8f\x25\xb6\x4c\x51\xa2\x26\x02\x12\x68\xbb\x98\xe9\x24\x4d\xe1\xb5\x09\xc6\x3b\x7c\x08\xf7\x15\xfe\xd7\xc7\x42\x77\x7a\x81\xda\xc9\x76\x9b\xef\xe1\xa4\x06\xe7\x51\xc2\xf3\x3a\x27\x53\x08\x41\x71\x2e\x78\x1f\x0a\x66\x90\x34\x80\x54\xdd\x67\x48\x76\x86\x67\x71\x7c\x45\xee\xd5\x3b\x62\xa6\x9a\x4a\xb4\xbd\x37\x25\x63\x43\x1f\x67\x20\xbb\x20\x49\x3b\x3d\x40\xf9\xb4\x2b\xb9\x19\x47\x44\x59\x12\x88\x82\x81\xf9\x25\x75\xae\x85\xff\xe9\x3a\x15\x22\xe2\x51\x25\x9f\x5c\xe5\x65\xe5\x7d\x0f\xc8\x0a\xbc\xd1\x1c\x8d\x4a\xc7\x96\x9c\x40\x9d\x07\xd5\x9a\x9b\x85\xc2\x4f\xaa\x7b\xf2\x2b\x7b\xa2\x18\x89\x4c\xd6\x65\xc6\x65\x2d\xe2\xd8\x02\x54\xa9\x69\x87\x71\xf5\xe3\xf3\x1b\x3f\xb1\xe4\xbc\x3f\x95\xc7\x4f\xe7\x0b\x0b\x26\xf9\x21\xac\x52\xff\xf9\x11\xae\x56\x60\x36\xad\xe2\x91\xca\x46\x24\xd7\x54\x79\x3b\xec\xc7\x6f\xaa\x1f\xd5\x75\xd4\xdd\xdf\xcb\xf8\xeb\xfa\x37\xeb\xa9\x5c\xd5\x44\x30\x25\x3e\x5b\x4d\x83\x36\x59\x1c\x5d\xa5\xe5\xe8\x3e\x58\x8e\x19\xaf\x4a\x48\xe4\xaf\xf3\x5c\xe6\x7c\x7a\x8e\xee\xfc\x20\x32\x75\xaa\x62\xc7\x72\x17\x08\x40\xe5\x2c\x26\x72\xb3\xc3\xf9\xfa\xd7\xbf\xec\x25\xab\x66\x8a\x34\xb3\x77\xca\x59\xdd\xdf\x43\x08\x43\x4e\x06\xf2\x82\xe0\xd3\x35\xdb\xf6\xc1\x17\xbd\xbe\xb6\x5d\x3f\x7a\xb6\x8d\xf6\xce\xe2\x66\x9f\xed\xaf\x09\x0c\x76\x78\x87\x15\x4a\xc0\x50\x10\xbf\xf2\x84\x29\x86\xb0\x48\x09\x90\x0f\xa9\xc2\x6c\xed\x64\xe2\x4f\xf5\x53\xa6\x9e\x94\xdc\x84\x97\xa4\x6a\xd1\x3f\xd3\x9c\x6d\x9b\x07\x05\x57\x52\xdb\x0e\x73\x8a\x31\x44\xbe\x84\x51\x32\x3d\xce\xd3\x62\x93\x26\x6b\x5d\xf3\x43\xf2\xbf\xca\x33\xfd\xd5\xea\xf8\x1d\xeb\xaf\x16\x3e\xd1\xcc\xc2\xda\x99\xc5\x73\xc1\xad\x37\xef\xbe\xfd\xe1\xfb\xcb\xeb\xb7\xef\xae\xae\x5f\xbd\xfb\xe1\xed\xb7\x16\xac\x15\x4f\x3c\xe3\xb2\xef\x35\xe2\xe8\x44\x8e\x61\xe2\x4e\x15\x0d\x89\x66\xf9\x9c\x41\x4d\x94\x93\xb3\x76\x48\x65\x26\x53\xc5\x27\x0a\xbc\xc3\x30\x83\xb2\x48\xce\x45\xe7\x94\x82\x6c\xab\xa0\xe5\x72\x34\x1f\x7f\xcd\x44\x81\xcf\xdd\x33\xff\x3c\x67\x85\xce\xfc\x4e\x07\x07\x28\x92\xb3\x5d\xb0\x99\x3b\xb4\x21\x6c\x52\x87\x9c\x02\xd1\x81\x87\x41\x20\x4a\xa8\xfe\xe9\xe9\x9f\xae\xfe\x31\xdf\x86\xea\x87\x9a\xc4\x81\xfe\xe9\xeb\x44\xf3\xa3\xcb\x51\x57\xff\x10\x9d\x65\xa4\x7f\xf4\x1b\xd5\x2d\x50\x5d\x27\x55\xb5\x90\x81\xaa\x9a\x0c\x5d\xfd\xa6\x0b\x50\xf3\xa3\xbf\x8d\xf4\x9b\x6b\x2a\xd3\x2d\xb8\xe6\x47\x57\xed\xea\xaa\xdd\x2e\x3e\x91\x3f\xba\x2f\xae\xee\x99\xab\xdb\x73\x75\xaf\x5d\xd3\x1e\xd5\x3f\x5d\xfd\xd3\xd3\x3f\x7d\xfd\xe3\xe9\x1f\xdd\xc1\xa1\x29\x30\xd2\x7d\xd1\xfd\x1c\x11\xfd\xa3\x6b\x19\xe9\x5a\x46\xba\x96\x91\xae\x65\xa4\x6b\x19\xe9\x5a\x46\x7a\x06\x3d\x3d\x83\x9e\x7e\x1b\xe8\x0e\x7a\xba\x83\x7d\x9d\xd8\xd7\xc3\xf4\xf4\x18\xbc\x91\x1a\xd1\x40\x0f\xb3\xaf\x13\xfb\xba\x5c\xdf\x94\xd3\x03\xf3\xf4\x84\x78\x3a\xa7\xa7\x27\xc4\x33\x2d\xe8\x2c\x03\x9d\x65\xa0\xbf\x0d\x74\x5f\x06\xba\xd7\xfa\x8d\xe8\x2e\x91\x3c\xd1\xac\x91\x1e\x8a\xae\x9a\xe8\x0e\x12\xcf\x24\xea\x72\x9e\x4e\x1c\x98\x2c\x7a\xce\x74\xeb\xa4\x6f\xea\xd4\x53\xd7\x57\x6b\x44\x3c\x93\x45\xb7\xa0\x3b\x4f\xf4\xa0\x49\x5f\x4f\x6b\xdf\xbc\xe9\x2c\x7a\xb4\x44\x77\x9e\x98\xf1\xf5\xf4\xf8\x7a\x66\x26\x4c\xa2\x1e\x6d\x4f\xcf\x67\x4f\xcf\x67\x5f\x8f\xbd\xaf\xa7\xa7\xab\xdb\x1b\x9a\x69\xd5\x33\xa1\x57\x9a\xea\x95\xa6\x03\x33\x67\x26\xd1\x64\xd1\x0d\xe9\xad\x41\x4d\xf1\x61\x4f\xad\x91\xde\x52\x54\x6f\x22\x6a\x76\xb2\xde\xd7\xb4\x6b\x9a\xd5\x59\xba\xba\xb2\xae\x5e\xcd\xae\x2e\xd0\xd5\x0d\x75\x75\x0b\x5d\xdd\x42\x57\xd7\xd2\xd3\xb5\xf4\x74\x2d\x3d\x33\x4c\x5d\xbc\xd7\xc5\x90\x95\xac\x24\xea\xbb\x78\x07\x1b\xd2\xa7\x8c\xf4\x29\x90\x7e\x97\x91\x7e\x17\x48\xbf\xc7\x48\xbf\x07\xa4\xdf\x67\xa4\xdf\x07\xd2\xf7\x18\xe9\x7b\x40\xfa\x03\x46\xfa\x03\x20\xfd\x21\x23\xfd\x21\x90\xfe\x88\x91\xfe\x08\x88\xe7\x32\xe2\xb9\x40\x3c\xc2\x88\x47\x80\x78\x94\x11\x8f\x02\xf1\xba\x8c\x78\x5d\x20\x5e\x8f\x11\xaf\x07\xc4\xeb\x33\xe2\xf5\x81\x78\x1e\x23\x9e\x07\xc4\x1b\x30\xe2\x0d\x80\x78\x43\x46\xbc\x21\x10\x6f\xc4\x88\x37\x02\x32\x70\x19\x19\xb8\x40\x06\x84\x91\x01\x01\x32\xa0\x8c\x0c\x28\x90\x41\x97\x91\x41\x17\xc8\xa0\xc7\xc8\xa0\x07\x64\xd0\x67\x64\xd0\x07\x32\xf0\x18\x19\x78\x40\x06\x03\x46\x06\x03\x20\x83\x21\x23\x83\x21\x90\xc1\x88\x91\xc1\x08\xc8\xd0\x65\x64\xe8\x02\x19\x12\x46\x86\x04\xc8\x90\x32\x32\xa4\x40\x86\x5d\x46\x86\x5d\x20\xc3\x1e\x23\xc3\x1e\x90\x61\x9f\x91\x61\x1f\xc8\xd0\x63\x64\xe8\x01\x19\x0e\x18\x19\x0e\x80\x0c\x87\x8c\x0c\x87\x40\x86\x23\x46\x86\x23\x20\x23\x97\x91\x91\x0b\x64\x44\x18\x19\x11\x20\x23\xca\xc8\x88\x02\x19\x75\x19\x19\x75\x81\x8c\x7a\x8c\x8c\x7a\x40\x46\x7d\x46\x46\x7d\x20\x23\x8f\x91\x91\x07\x64\x34\x60\x64\x34\x00\x32\x1a\x32\x32\x1a\x02\x19\x8d\x18\x19\x8d\x80\xba\x2e\xa3\xae\x0b\xd4\x25\x8c\xba\x04\xa8\x4b\x19\x75\x29\x50\xb7\xcb\xa8\xdb\x05\xea\xf6\x18\x75\x7b\x40\xdd\x3e\xa3\x6e\x1f\xa8\xeb\x31\xea\x7a\x40\xdd\x01\xa3\xee\x00\xa8\x3b\x64\xd4\x1d\x02\x75\x47\x8c\xba\x23\xa0\xc4\x65\x94\xb8\x40\x09\x61\x94\x10\xa0\x84\x32\x4a\x28\x50\xd2\x65\x94\x74\x81\x92\x1e\xa3\xa4\x07\x94\xf4\x19\x25\x7d\xa0\xc4\x63\x94\x78\x40\xc9\x80\x51\x32\x00\x4a\x86\x8c\x92\x21\x50\x32\x62\x94\x8c\x80\x52\x97\x51\xea\x02\xa5\x84\x51\x4a\x80\x52\xca\x28\xa5\x40\x69\x97\x51\xda\x05\x4a\x7b\x8c\xd2\x1e\x50\xda\x67\x94\xf6\x81\x52\x8f\x51\xea\x01\xa5\x03\x46\xe9\x00\x28\x1d\x32\x4a\x87\x40\xe9\x88\x51\x3a\x02\xda\x75\x19\xed\xba\x40\xbb\x84\xd1\x2e\x01\xda\xa5\x8c\x76\x29\xd0\x6e\x97\xd1\x6e\x17\x68\xb7\xc7\x68\xb7\x07\xb4\xdb\x67\xb4\xdb\x07\xda\xf5\x18\xed\x7a\x40\xbb\x03\x46\xbb\x03\xa0\xdd\x21\xa3\xdd\x21\xd0\xee\x88\xd1\xee\x08\x68\xcf\x65\xb4\xe7\x02\xed\x11\x46\x7b\x04\x68\x8f\x32\xda\xa3\x40\x7b\x5d\x46\x7b\x5d\xa0\xbd\x1e\xa3\xbd\x1e\xd0\x5e\x9f\xd1\x5e\x1f\x68\xcf\x63\xb4\xe7\x01\xed\x0d\x18\xed\x0d\x80\xf6\x86\x8c\xf6\x86\x40\x7b\x23\x46\x7b\x23\xa0\x7d\x97\xd1\xbe\x0b\xb4\x4f\x18\xed\x13\xa0\x7d\xca\x68\x9f\x02\xed\x77\x19\xed\x77\x81\xf6\x7b\x8c\xf6\x7b\x40\xfb\x7d\x46\xfb\x7d\xa0\x7d\x8f\xd1\xbe\x07\xb4\x3f\x60\xb4\x3f\x00\xda\x1f\x32\xda\x1f\x02\xed\x8f\x18\xed\x8f\x80\x7a\x2e\xa3\x9e\x0b\xd4\x23\x8c\x7a\x04\xa8\x47\x19\xf5\x28\x50\xaf\xcb\xa8\xd7\x05\xea\xf5\x18\xf5\x7a\x40\xbd\x3e\xa3\x5e\x1f\xa8\xe7\x31\xea\x79\x40\xbd\x01\xa3\xde\x00\xa8\x37\x64\xd4\x1b\x02\xf5\x46\x8c\x7a\x23\xa0\x03\x97\xd1\x81\x0b\x74\x40\x18\x1d\x10\xa0\x03\xca\xe8\x80\x02\x1d\x74\x19\x1d\x74\x81\x0e\x7a\x8c\x0e\x7a\x40\x07\x7d\x46\x07\x7d\xa0\x03\x8f\xd1\x81\x07\x74\x30\x60\x74\x30\x00\x3a\x18\x32\x3a\x18\x02\x1d\x8c\x18\x1d\x8c\x80\x0e\x5d\x46\x87\x2e\xd0\x21\x61\x74\x48\x80\x0e\x29\xa3\x43\x0a\x74\xd8\x65\x74\xd8\x05\x3a\xec\x31\x3a\xec\x01\x1d\xf6\x19\x1d\xf6\x81\x0e\x3d\x46\x87\x1e\xd0\xe1\x80\xd1\xe1\x00\xe8\x70\xc8\xe8\x70\x08\x74\x38\x62\x74\x38\x82\xbe\xcb\xfa\xee\x6e\x0a\xb4\x81\x80\x90\x38\x71\x0f\x02\x39\x9a\x0f\x5d\x84\x7e\xf6\xc6\x5f\xed\x60\x43\x47\x2e\xa3\x23\xb7\xa8\xa7\xdb\x54\x0f\x39\x56\x4f\x10\xcd\xc2\xf5\x5c\xa4\xaa\x22\xc2\xe8\x88\x14\x15\xf5\x9a\x2a\xa2\x87\x15\x19\x61\xa7\x61\xae\x54\x45\x94\xd1\x11\x2d\x2a\xea\x37\x55\x74\x08\x5b\xf3\x8a\x6e\x45\x56\xb9\x1d\xfa\x56\xa4\xb3\x24\x58\x65\x71\xa2\xab\xee\x32\x3a\xea\x16\x55\x7b\x4d\x55\xf7\x8e\x56\x7d\xef\x87\x6b\xd3\xc5\x1e\xa3\xa3\x5e\x51\xcf\x60\xbf\x9e\xda\x85\x61\x81\xd6\xa8\xa4\x40\xf6\xeb\x7e\x9f\xc4\x77\x41\xaa\xa4\x4f\x7e\x18\x3e\xca\xda\xf3\x23\x3b\xea\x33\x3a\xea\x17\xad\x0c\x9b\x7a\xeb\x1d\xd6\xf8\x31\x4b\x82\xe8\xd6\x59\xf9\xf3\xcb\x68\xae\x7a\xeb\x31\x3a\xf2\x8a\x7a\x46\x4d\xf5\x0c\x9e\xaa\xe7\x63\xe6\x27\x99\xaa\x69\xc0\xe8\x68\x50\xd4\x44\xdc\xa6\xaa\x46\x47\xab\xca\x92\xe0\xee\x43\x70\xbb\xd4\x75\x8d\x18\x1d\x95\x1b\x98\x34\x91\xc0\x92\x3a\x7b\xa2\xae\xef\xc5\x42\x57\x35\x64\x74\x34\x2c\xab\x6a\x38\x0c\x5d\x77\xef\x30\x90\xde\x08\x3b\x0b\x64\xf9\xe9\x63\x34\x7b\x9d\x89\xc4\xcf\x62\xc9\x1c\xc3\x86\xf4\x46\x8c\xf4\x46\xd0\x75\x5d\xd6\x75\x55\x85\x0d\xa7\xa2\xbb\x5f\x9f\x87\x9d\xdb\x30\xbe\xf1\x43\x59\x85\x44\xba\xd0\x95\xe5\x65\xf1\x83\xb3\x90\x35\x08\x6e\x8c\xc4\xfe\xf0\x96\xc0\x5c\x9f\x5c\x3d\xae\x84\xe6\x9f\x44\xc7\x6a\x05\xa9\xba\x76\xf2\x5b\x79\x81\xb6\x55\xde\x39\xef\x76\xb0\x91\xed\x1e\x1c\x1d\x23\x2f\x45\xd4\xc3\x27\x47\xfb\xd0\x4e\x90\xc0\x4f\x36\x1a\xb5\x34\xff\xba\xdf\xa6\xc4\x45\x9e\x6c\xf8\xe0\x60\xe9\x86\xcb\x26\x37\xf7\x22\x49\x83\x38\x62\x16\x75\x3c\x87\x10\x6b\x77\x62\x45\xeb\xbb\x1b\x91\x94\xac\xd4\xf5\xb5\xb0\x6d\x74\x7d\x2d\x78\x82\xcd\x80\x0e\x0e\x5a\x3e\x20\xd2\x6b\x1e\x10\x64\x92\xf5\x0d\x16\x48\x8e\x09\x0a\x81\x7f\x56\xde\x86\xa5\x0f\x41\x36\x5b\xa2\x08\x6f\x66\x7e\x2a\x5a\x84\x99\x2f\x45\x1d\x49\xc1\x34\x0a\xcd\x59\x66\x90\xe0\xdd\x89\xca\x4d\x0f\x73\xcb\xf6\x0e\xf2\x4b\x56\x52\x97\xe8\x36\x95\x80\xa0\xb1\x0c\x04\xe5\xc5\x56\x4d\x22\x65\x72\x9a\x2b\x12\x28\x44\x6b\x4a\xce\xba\x21\x3d\x46\x7a\x72\xb6\x0e\x00\x46\x39\x43\x6d\xc9\xb0\x61\x84\x0e\xab\x1d\xb4\x73\x75\x06\x2d\x53\x28\xee\xd9\x37\x3b\xb0\x7c\x0b\x36\xb7\xa2\x72\x71\x5f\x16\xdb\xed\xb0\xe3\xef\xb0\x5c\x29\x49\xba\x10\xd9\x81\x03\x48\x53\xd9\x7f\x10\xc9\x5f\x8a\x9d\x79\x3c\x53\xbd\x87\x80\x27\xfa\x86\x1f\x45\x46\x95\xe2\x32\x14\xf2\xcb\xb1\xbd\x9a\xf3\xcf\xe3\xbd\xfc\x48\x60\x7d\x59\xb2\x51\xc4\x13\xe4\xdb\x92\x1e\x80\xab\xa2\x3f\x54\xf7\x47\xb2\xd5\x81\xfc\x1d\x60\x88\x65\x7a\x0f\x83\x2f\x7f\xbb\x18\xf6\xb6\x55\xa8\x4b\xaf\x61\x06\x73\x58\x72\x61\xa7\xce\x2b\x58\xa8\xdf\xef\x60\xa5\x7e\x3f\xc2\x9d\xfa\x7d\x0f\xf7\xea\xf7\x1b\xb8\x55\xbf\x3f\xc1\x0d\x5f\x8c\x23\x16\x4d\xb2\xe9\x76\x8b\xe4\x0f\xdf\xec\x30\x3c\xf2\x9b\x52\x46\x0e\xd7\x7c\x31\x4e\xd8\x6a\x9c\x4c\xb2\x29\x43\x89\xca\xbb\xd9\xe1\x32\x87\xba\x6f\x58\xb7\x82\xa8\xb5\xb0\x6d\x14\xf2\x0c\x43\x88\xd1\x8c\xb7\x97\xb6\x7d\x9d\xdf\x6e\xb5\x39\xbf\x9e\xac\xa7\xd8\xb6\x7d\x74\x03\x6b\xbc\xdd\xa2\x39\x9f\x8d\x65\x1a\x0b\x27\xeb\x29\xdc\x4c\xd6\x53\xbe\x68\xbc\x9f\x94\x99\xc6\x32\x13\xbb\xb7\xed\xd9\x38\x40\x73\x48\x30\xbb\xb5\x6d\xf9\x81\xf3\xf9\xb8\xba\x18\xfa\xe2\xa3\x94\xb3\x6b\xa1\x53\xb0\x50\xf2\xa8\xaa\x68\x5b\xe0\x8d\x39\x73\x07\x52\x72\x7d\x04\xdd\xfc\x88\x44\xe2\xa1\x25\x4e\xea\xc7\x52\xa5\xa1\x0c\xef\x9d\x3f\x93\x2c\x4f\xe6\x7e\x4a\x45\x8c\x23\xaa\xb7\x8a\x95\x53\x53\x5e\x22\x14\x93\xcb\x45\x65\x29\xb2\x1d\x9a\x63\x76\x57\x9d\xa4\x02\x4a\xcd\xc7\x01\x7a\x65\x52\xd5\xd9\x85\x39\x66\x73\xb8\xb3\x6d\x84\x6e\x9c\xfb\x20\xc9\xd6\x7e\xb8\xdd\x96\xcf\x72\xa9\xb1\x9c\xc0\x39\xc8\xcd\xf0\xc1\xb6\x1f\x6d\xbb\xfd\x38\x59\x4f\x6d\x3b\x46\x8f\xb0\x86\x39\xc6\x78\x77\x92\x3a\xaf\x38\x81\xd4\xf9\x8e\x53\x48\x9d\x8f\xbc\x07\xa9\xf3\x9e\x0f\x21\x75\xbe\xe1\xc4\x83\xd4\xf9\x89\x77\xe5\x97\x1f\xb8\x27\x3f\x7d\xe0\x84\x0e\x2b\x18\x29\x2d\xd0\x10\x91\x9c\x1a\x98\xa3\x20\xa9\x7e\x90\x3c\x84\x84\x10\xf4\x00\xe7\x36\x1f\xb4\x2c\x79\xcc\xef\xcf\xdb\x02\xe1\xdd\xcc\x97\xcb\x57\xc8\xf7\xdb\xee\xce\x60\x1c\x7a\x80\x79\xf7\x01\xbf\xb5\x8e\x8c\xae\x4c\xb9\xcf\xb4\x96\x99\x6d\x1b\x6d\xb3\x37\x7e\xb6\xe4\x5c\xfe\x1f\xeb\x14\xd6\x54\x28\x15\xe1\xc2\xb6\xe5\xff\x6a\x01\xf9\xce\xf2\xe5\x40\x56\xe5\xae\xd8\xc2\x08\x37\xe1\x98\x5b\x85\x63\x6e\x0b\x1c\x43\x0f\x70\xbd\x51\xd4\xda\xed\x29\x1e\x1d\xc1\x37\xe5\x4d\x95\x86\xe4\x32\x29\x9f\x9d\x03\x3a\xa0\x80\x3f\x03\x03\x0f\x87\x55\x58\x27\x10\x19\xe2\x71\x0d\xea\x04\x95\xea\x17\x1a\xbd\x21\x02\x01\xc6\x3b\x76\x70\x09\x60\xf6\xbc\xba\x17\x05\x85\x9f\x89\xe4\xad\x41\x72\x8a\x92\x91\x60\x74\x28\x3b\x75\x40\x24\xd4\xb0\x04\x19\x62\xdb\xfe\x13\xd8\x42\x20\x32\xc2\xc8\x9a\x07\xf7\x16\xfe\x5a\xbc\xa1\xbb\x47\x24\xa3\x0e\x39\x0e\xa1\x07\xa4\xc4\x53\xb8\xe0\x50\xe2\x3e\x8e\xd6\x61\xd8\xe6\x5c\xb0\x86\xb3\x9b\x13\x4a\x74\x8f\xae\xc8\x2f\xfe\x14\x4a\xe8\x6b\x94\x40\xfb\x06\x25\x8c\x24\x4a\x68\x1c\xf4\x49\xe2\x2c\xcc\xa2\x35\x7e\x3f\x58\xa2\x60\x81\x64\xe7\x21\xe3\x31\xca\xa0\xed\x62\x90\xe4\x06\x04\xb8\x3c\x70\x2d\xdf\x64\x36\x87\x2e\xc5\x9b\x9d\xa4\x13\x6f\x45\x66\x05\x51\x2b\xd9\x6e\xad\xd4\x3c\x1e\x90\x6c\xd6\x0b\xa5\x5f\x13\x27\x9a\x6c\x2b\x14\xd7\x4a\xb2\xcd\x52\x2c\x8d\x2a\x6d\xdb\xc8\x5c\xa1\xab\x34\x6c\x76\x4c\x9f\x91\x3e\x98\x7d\x23\x39\x70\xa0\x92\x6c\x97\x73\xf6\x04\x75\xd1\x74\x1e\x36\x22\x5a\xdf\x89\xc4\xbf\x09\x05\x6b\x23\x62\x0b\x0c\xb3\x38\x5a\x04\xb7\xeb\x3c\x8d\xca\xb4\x87\x24\xc8\xcc\x7b\x4f\xbe\xab\xce\xb0\xac\x00\x30\x4f\x91\x14\x47\x4f\x64\x41\xd4\x16\x54\x5f\xae\x6d\x28\xf1\x53\x13\x58\x47\x11\x17\x4e\x16\x6b\x5e\x43\x9e\x80\x04\x05\x3c\x32\x27\x1a\x17\x15\xa9\x0a\x8e\x94\x56\x3d\x7f\xb7\xf8\x42\xe1\xf6\xff\xbb\xe6\x0f\x96\xfc\xa5\x1f\xfd\x35\x6b\xcd\xe2\xe8\x5e\x24\x99\x21\xd3\x5b\x59\xdc\x5a\x25\xc1\x5d\x90\x05\xf7\xa2\xa5\x97\x1c\x57\xe9\xf5\x6e\x8d\x30\xca\x71\xb9\x40\xd4\xc5\x27\x19\xca\x9c\xef\x60\xa3\x59\x1b\xa6\x48\xa5\x9d\x22\xf2\x5c\xa6\xc4\x54\x8c\x52\x59\x03\x39\x3c\x41\x05\x82\x9d\xf4\xa6\x13\xd2\x53\x57\x33\x1a\xff\x26\x55\xe4\x5b\x12\xac\xdd\x23\xd8\x43\xa0\xde\xd3\x8b\x9b\x83\xf5\x9a\xbe\xd5\xdb\x3c\xad\x91\x9d\xc9\xf2\x23\xd0\x51\xfb\xbc\xe7\xb1\x9e\x9a\x89\x23\xd0\x5f\xc2\x01\x17\x23\x6b\x1d\xa5\xb3\x78\x25\x37\x68\xaa\x54\xe6\xb4\x18\xa4\x24\xc9\xb4\x0e\x58\x34\x49\xa6\xb6\x2d\xd0\xc0\xc5\x28\x82\x44\x5d\x31\x36\x83\x2d\x99\x73\x22\xa6\x5c\xa2\x50\x79\xda\x5c\x46\xfa\x2e\x0c\x5c\x36\x50\xc2\x98\x03\x84\x51\x13\x2c\x14\x5d\xa3\x03\x8c\xda\xee\x53\x1c\x50\x8e\x08\x3b\x28\x1a\x27\xaa\x2a\x43\x73\x31\xa2\x76\x02\xa1\x03\x46\xe8\x40\xb6\xf9\x04\x3e\xa8\xaf\xb0\xa1\xef\xda\x48\x54\xc9\xbb\x0c\x57\xb4\xda\x22\xdb\x56\xba\xbc\x87\x3c\x6c\xd2\xb1\x58\x2b\x88\x66\x71\x92\xc8\x1d\x1a\x44\xf7\xf1\xcc\x3f\xc2\xc7\x76\xbd\x2f\x6d\xae\xfe\x13\x9b\x4b\x41\xb0\xc1\x88\x0d\x24\xd4\xea\x3e\x2d\xaa\x29\xd9\x49\xd7\x30\x04\x5d\x03\xfe\x49\x77\x54\x9d\xdf\xc9\xd4\x99\xc5\xab\xc7\x9f\x82\x6c\x19\x44\xfb\x6a\xa2\xfa\x72\x30\x31\x37\xb1\x3e\x0f\x50\x5c\xe8\x81\xa4\x5c\x66\xf2\x31\x84\x5c\x12\xc9\x3e\x86\xf5\x81\x6a\xc4\x05\x1d\x97\xc3\xa3\xd3\x5c\x13\x68\xa6\x48\x1c\xe7\x2e\x88\x10\x2a\x38\xd9\xf5\xd8\x67\x11\x5a\x83\x8f\xf1\x69\x08\xfe\x69\x8a\x61\xce\x89\x62\x0d\xc2\xf3\xd4\xb6\xd3\xf3\xb0\x33\xb3\x6d\x34\xe7\xa7\x04\xc2\x0e\x9f\x9d\x12\x48\xd5\x0f\x3e\x9b\x9d\x9e\xb6\x2e\xdc\x33\x1c\xca\x25\x8a\xc7\xf1\x24\x9d\xf2\x78\x12\x4e\x99\x51\x54\x97\x09\x32\xf3\x5c\x16\x9c\xe7\xab\x12\xab\xfd\xd2\xed\x33\xd2\xed\x03\xe9\x8e\x18\xe9\x8e\x80\xf4\x5c\x46\x7a\x6a\xcf\x1e\xe0\x85\x3f\x37\xc3\xcd\xaa\xe9\xf9\xa4\xc6\x3c\xa8\x28\x10\xfb\x07\x53\xa8\xe6\xd9\xbf\x20\x95\x89\x24\xc5\x44\xc6\x72\xf6\xfd\x23\xb3\xbc\xe6\xc5\xdc\x86\xe3\x98\x45\x28\x84\x18\x9f\xad\x2f\xd2\x33\x9c\x4d\xd2\x4e\x67\xca\x45\xc1\x2e\x7c\x61\x26\x8e\xe2\x2a\xd2\x1d\xe6\x83\x1f\xe5\x83\xef\x7f\x81\xcb\xad\x70\x56\x31\xf8\xba\xae\x14\x42\x39\x23\x72\x0f\x45\x28\x2c\xa6\x63\xc6\x03\xe4\xc3\x5a\x5d\xc6\x0b\xdb\x8e\xdb\x3c\xd6\x73\x78\xb6\xbe\x98\x9d\xe1\x60\x81\x50\xca\xc3\xc9\xac\xd3\x99\xe2\x36\x4f\x71\x41\xc5\x8b\x30\x15\xad\x22\xe3\xac\xd3\x51\x79\xc5\x76\x3b\x93\x3b\x24\xc4\xb6\x1d\x4e\x66\x53\xce\x79\x71\xc5\x2f\xbf\x6d\xb7\xae\x99\x91\xb6\xb0\xed\x53\xb2\xab\x4f\xcb\x90\x91\xee\x30\x9f\x9e\xdd\x14\x7a\x47\xb9\xf0\xbe\xe1\xc2\x07\xf9\x8e\x90\x7b\x24\xce\xa7\x49\xf2\xe1\xbd\xee\x71\x3c\xa0\x26\x84\x13\xce\x05\x84\x9c\xca\x9f\x35\xef\xca\x9f\x19\xef\xc9\x9f\x39\xf7\xe4\xcf\x92\xf7\x95\xc2\xe7\x1c\x16\x3c\xdb\x6e\xfd\x93\xc3\xf9\xf5\x61\x55\xee\xb9\x3b\xb8\x87\x5b\xb9\xdb\x30\xdc\xf0\x08\xdd\x4a\x36\x3d\x41\x3e\xac\xa0\x8b\xe1\x9a\xc7\xe8\xa6\x98\xf7\x07\xee\xc2\x25\x4f\xc7\x0b\x94\xc1\x35\x66\xa1\x7a\x70\xb1\xd9\x59\x67\xd7\x17\x0f\x67\x0f\x66\x4e\x97\xdb\xed\x83\x9c\xd3\x1b\x6c\xdb\xe8\x9e\x3f\xa2\x3b\x7e\x33\x79\x98\xc2\x03\xdc\x62\x10\x58\xe6\x49\xf1\xe5\xe4\x61\xca\xef\x4f\xd4\xaa\x04\x0b\x74\x8f\x0d\xdf\x2c\x0c\xa3\x9c\xcb\x92\xda\xae\xe6\x86\xfb\x39\x37\x7c\xa7\xdf\xbd\xfc\xfd\x21\xe7\x96\x2f\xb5\xc2\xf4\x9d\xd6\xa9\x96\x95\xce\xf2\xd5\x27\xf9\x44\xcc\xc7\xa7\x84\xad\xb7\xdb\xd9\x78\xc6\x2e\xcd\x5a\xd6\xb6\x36\xf4\xba\xac\xd7\x85\x3e\x65\x7d\x0a\x83\x3e\x1b\xf4\xe5\xaa\x1e\xb0\x92\xf9\xaa\x76\x89\xd9\xeb\x72\x35\x03\xb3\xbc\xf1\x53\x07\x1e\xe4\x12\xa4\x10\xe2\x8d\xc2\xd3\x46\x7d\x44\x12\xca\x72\x67\xaf\x25\x84\x8b\xd1\xba\x98\xf6\x25\x0f\xc7\xf3\x53\xc2\x5c\x58\xf0\x50\x76\x9e\xc8\x8d\xef\x9f\x53\xac\xb6\xf2\x99\xc2\x52\x4b\x39\xdb\x33\xbc\x49\xf9\x6c\xb2\x9c\xc2\xb2\xc3\x17\x27\x37\x89\xf0\x3f\x49\x6a\x5a\xbe\x41\x38\x5e\x9e\xbb\x6c\x7e\xce\x97\x87\x84\xf4\x07\x31\x5f\xcf\x94\x6a\xba\xb8\x5b\x65\x8f\x2d\x5f\xa2\xfd\xd6\x43\x90\x2d\x5b\x51\xdc\x0a\xa2\x20\x0b\xfc\xb0\xa0\xac\x54\xb3\xe1\x78\x79\xc1\x5d\x36\xbf\x58\x9e\xc9\xea\xb1\xee\x80\x6d\xa3\x94\x67\x28\x05\xdd\x0b\x58\xe3\x02\xdb\xa5\x4d\x53\xdd\x25\xac\x4b\xca\x49\x3e\x4a\x20\x0d\x46\xe6\xe8\x0c\xcc\xd1\x51\xd4\x4a\xba\x12\xb3\x40\x52\x2a\x47\x40\x8b\x82\xa9\x79\xfb\x32\xc5\xb6\x1b\x24\xd0\x28\xe3\xc2\x99\xc5\x51\x9a\x25\xeb\x59\x16\x27\x78\xbb\xcd\xda\x5c\x93\x3e\xb6\xdd\x8e\x50\x45\x6c\x82\xb7\x5b\x94\x19\x08\x8a\x41\x2e\x9f\x6d\x1b\xbd\x78\x94\xf1\x6c\x12\x4c\x65\x1b\x45\x8e\xaa\x48\x76\xac\x2a\x64\x59\x8d\x10\x1a\xb0\xc1\xa0\x40\xde\xbd\xa3\xc4\x59\x8f\x1e\x87\x0b\xa5\x3c\x48\x09\x81\x31\xd2\xfc\x78\x8f\xb2\x9e\xa4\x5c\x7b\x5f\x47\x63\xe5\xbb\x78\x60\x00\xf6\xa0\x27\x37\xf1\x64\xaa\xd5\x93\xc1\xe7\x9b\xdd\xbe\x84\x30\x31\xe4\x91\xa4\x6e\x5a\x3e\x2e\x41\x4a\xc4\x27\x53\x08\xb8\x7b\x16\x9c\x67\xca\x90\x22\x9a\x04\x53\x6e\xf9\x13\xab\x13\x74\xac\xa9\x75\xe2\x4b\x46\xac\x94\x62\xbc\x02\x5f\xe9\xfb\x15\x72\xad\x57\xc8\xea\xe4\x96\x0e\x60\xe1\x8e\x85\xad\x42\xc6\x25\xcb\x22\xa1\x44\xd4\xe5\x8c\x14\x02\xaa\x9b\x20\x9a\x57\xc9\x95\x9c\xd6\x2f\x89\x95\x58\x73\x19\x05\x6a\x04\x22\xb1\xe5\x9e\x92\x6e\xc2\x7d\xb9\x23\x66\x7e\x86\xf6\xf3\xe3\x9a\x86\x7e\x95\x32\x0c\xc7\x29\xca\x20\xb7\x22\x81\x04\xb3\x40\xc9\xe7\x44\x29\x80\xab\xef\x25\xdb\x46\x61\x45\x22\x57\xfd\x04\xa1\x5c\x43\x73\x3a\x7a\x6c\xd0\x2b\x37\xc9\xd1\x4b\x8f\x9e\x11\x3a\xeb\xb3\x91\x73\x57\x57\xfe\xad\x25\x97\xd4\x7a\x91\x8f\xc0\xe2\x3c\x69\x10\x75\x14\x23\xdc\x21\xfc\xe4\x81\x92\xf8\x39\x1f\x50\x69\x62\x30\xb6\x7e\x28\x84\x58\x2c\x37\x15\x19\x5b\x6f\xd7\x61\x68\x31\x2b\x55\x7d\x29\xf9\xbf\x78\x6f\x13\x57\x04\x02\x92\x4b\x37\xc2\x80\x04\x6f\x76\x3b\x94\x19\x69\x84\x04\x90\x11\xc6\xe3\x98\x05\x63\x79\xf2\x98\xf5\x2e\x97\x86\x20\x5f\xd1\x09\xb8\x51\x82\x99\xa9\x15\x14\x62\x5c\x99\x02\xe6\x57\x8f\x61\xce\x1d\xf5\x8e\xdc\xeb\x6c\x76\x05\xb3\xfa\x34\x11\x93\xcb\xc4\x72\xf3\xa2\x21\x9c\x92\x5c\x3a\xd6\xfb\x3a\xd2\x7c\x34\xc0\xce\x42\xad\xe3\x28\x17\xd6\x13\x83\x50\x24\xfd\x20\xa9\x04\x49\x51\xa6\x5c\x20\xcf\x93\x5b\x57\xa0\x61\x57\x52\x48\x02\x0d\xfb\x12\x83\x48\x7e\x89\x48\x1c\x22\x50\xdf\x93\xd8\x43\xa0\x11\xc5\xce\xc2\x4f\xb3\xbf\x89\x47\x50\x12\x9c\xde\x00\xc3\x8a\xcf\xc7\xd6\x75\x2a\x17\x27\xf8\x4d\x58\x70\xd7\xa4\x64\x0d\x11\x5f\x4a\x1c\x25\x99\xd0\x57\x96\xe4\x78\x70\x69\xf8\x19\x4c\xa2\xa9\xa2\xc4\x13\x2e\x9c\xeb\xc5\x59\x72\x96\xf0\xc4\x89\x24\x72\x4f\x9c\x4f\x95\x5b\xa8\xa4\x7a\x56\x37\xb7\x22\x7b\x59\x42\xdb\xba\xd0\x28\x84\xb5\x6e\x59\x8e\xa3\xaa\xf7\x2b\x59\x22\x24\x60\x06\x19\x58\xd7\x81\x85\x41\x38\xd7\x19\xcf\xe4\x4f\xc0\x23\x6d\x93\x2a\x5f\x16\xb9\x31\xaa\x70\xae\xc3\xe2\x79\xb2\x9a\x72\x17\xb4\xa8\x2c\xb1\xed\x14\x25\x10\x82\x98\xac\xa7\xf2\x70\x96\x27\x3a\x40\xb3\x8a\x54\x7c\xa3\xf4\x5c\x59\xa3\x05\xc7\xc2\x58\xee\x60\x50\x63\x0f\xe4\x82\xc9\x29\x88\xce\x22\x1e\x39\x11\x8e\x9c\x84\xb7\x5d\x88\x9c\x95\x6d\xa3\xc8\x59\xf1\xc8\x59\x39\x51\x81\x38\x0c\x03\x92\x4c\x22\x27\x98\x9e\xa8\x6e\x1f\xf6\x77\x67\xb2\xb1\xfd\x13\x98\x54\x9a\x8f\xf8\x1d\x92\x20\x46\xae\x50\x54\xa8\xf3\x3b\x11\xc4\xb2\xc9\x93\xbc\x21\xb5\x58\x4e\x30\x05\xd3\xb1\xd8\xb6\x51\xec\x44\x3c\xc0\x10\x28\xdb\xbb\x15\x8f\x31\x24\xb2\x23\x92\xa9\x45\xea\x29\x50\x29\x61\x91\x12\xaa\x3c\x93\xd5\xf4\xf4\x74\x97\x8b\xcb\xa3\x1d\x2c\xe2\xe4\xd2\x9f\x2d\x6b\xdd\x2c\x3a\x58\x5a\xe3\x41\xc4\x63\xc9\x1a\xee\x33\x83\xcd\x3c\x4c\x17\xcb\xcd\x34\x4e\x9c\x88\x69\x9b\x9d\xc5\x99\x22\x77\x22\x94\x38\xf7\x90\x38\x9f\x94\xf5\x05\x3e\x4b\x6c\x3b\x71\x92\x33\x2c\x77\xde\x6a\x07\x4b\x3f\x65\x87\xe7\xb2\xdd\xbe\x43\xe5\x94\x09\xbc\xdb\x61\x98\xdb\x76\x52\x5b\x6e\x73\x0c\x8e\xc8\x71\x8b\xe2\x93\xd5\x54\x16\x9f\x29\x45\xf8\x03\x89\xa7\x91\xbb\x41\xcc\xef\xd4\x29\x2a\x98\xca\x71\xec\xdc\xf3\x84\x21\xb5\xcc\x31\xdf\x04\x2c\x90\x27\x4b\x09\x45\x3f\xb1\x0c\xee\x59\x02\x2b\xa6\x76\x51\x08\x51\x3e\x0b\x89\x32\x34\x97\xfb\x43\x59\xc7\x5d\x2f\xe4\x0a\x44\x6a\x4b\x45\xf2\x51\x6e\x94\x4e\x07\xf4\xd1\x94\x0b\xa9\x4e\x65\x30\xe5\x31\xc6\x20\x76\x70\x2b\xb2\xcb\x28\x4b\x1e\xd9\x1d\xa4\x22\xfb\x98\x25\x71\x74\x7b\xd0\x67\x25\xc3\x87\xbd\xc3\xa6\x27\x3d\xe3\x0b\x6d\xcc\xa9\x5f\x0b\xa3\xd8\x62\xab\xee\x70\x4d\x19\x7d\xcf\xc4\xe9\xfa\x13\x18\x5b\xa1\xeb\xf0\x2c\xb3\xed\x4c\xae\x54\x26\x11\x5d\xcd\xca\xed\x3a\xcb\x8d\xaa\xae\x43\x9e\xf1\x6c\x9c\x15\xab\x9e\x39\xd7\x0b\x3c\x5e\x23\x17\xac\x4f\xe2\x51\xa2\x2e\x31\xce\x9c\x4f\x4c\x0b\x76\xf3\xf7\x7b\x36\xc9\xe4\x8e\x70\xee\xa7\x98\xa1\xbc\xeb\x39\xc3\x8b\x94\x29\x09\x24\x63\xcb\x28\xe1\x58\x45\x71\x68\x2b\xcb\x13\x98\x29\xa2\x49\x62\x04\xd2\x67\x84\xf4\x81\x50\xc2\x08\x25\x40\x7a\x03\x46\x7a\x03\xe8\xf6\x59\xb7\x6f\x58\x82\xbe\xc7\xfa\x1e\x78\x1e\xf3\x3c\x18\x76\xd9\xb0\x0b\xc3\x3e\x1b\xf6\x61\x44\xd9\x88\xc2\xc8\x63\x23\x0f\x46\x03\x36\x1a\x48\xa0\xff\x95\xd2\x02\x09\xe2\x23\x03\xa9\x6f\x45\xf6\x93\xf0\x3f\x29\xd8\xdf\xf5\x34\xe8\x1f\x8c\x9a\x41\xbf\xe4\x39\x24\xe8\xf7\x46\x06\xf4\x4b\xc8\x3e\xe7\x21\xea\x2b\xbe\x01\x79\x18\x16\xdc\x85\x55\x13\xb2\x92\x5b\x4d\x6f\xab\x50\x29\xaf\xdf\xe1\x5d\x15\x09\x98\x3d\xe0\xf3\xc9\x74\x07\xf7\xcd\x44\xe7\x1c\x09\xc7\x6f\x54\x40\x17\x13\x57\x32\xd2\xd9\x0e\xe3\xdd\xc9\x5d\x85\xca\xa9\x9f\xaf\x82\x40\xbb\xd7\xe7\x4b\x03\xb2\x02\x71\x64\x13\x32\x3d\x7e\xa8\x8b\x32\x3b\xb9\xbb\x59\x13\xe6\x2e\xab\x4d\xc6\xc9\x84\x4c\x79\xa6\x37\x96\xaf\x19\xc5\x89\x80\x6c\x8a\x8f\x02\xda\x4c\x1e\x51\x95\xbd\x32\xc6\x72\xf4\x99\x1e\xa3\x28\x31\xc8\x7f\xcc\xed\x26\x7d\x65\x6a\x3c\x13\x28\x93\xf4\x65\xbb\xfd\x1f\x25\xd9\xff\x95\x38\x30\xc8\xef\xde\xe7\xcd\x38\x70\xde\x88\x03\x17\x9d\x4e\x0d\xe7\xd5\x90\x5d\x00\x62\x12\xee\x21\xbb\x04\xcd\xab\xc8\xae\x61\x0a\x24\x75\x1f\x97\xd7\x0a\x6d\x62\xf6\xab\xfc\x98\x4b\x44\x24\xed\x97\x8c\x57\x68\x96\xc3\x47\xec\xe8\x9a\x90\xc0\x2c\xb1\xed\x35\xca\x41\x46\x80\x6d\xbb\xc0\x7b\x26\xa9\x61\x71\xff\x64\xa3\x4b\x3f\x6d\x68\x51\x01\xfa\xe3\x90\x3a\xe6\x11\x52\x92\x8f\xb6\x5b\xab\x3b\x1e\xaf\x14\x0d\x27\x32\x75\xe5\xce\xe2\x89\x9c\x62\x7d\xcd\x08\xeb\x45\x9a\xc5\x89\x60\xab\x1a\xbc\xa8\xc1\x89\xae\xc7\xba\x1e\xf4\x5c\xd6\x73\x0d\x9c\xf0\x46\xcc\x1b\x69\x1a\x5e\xc3\x09\x09\x1b\x0e\xe4\x67\x8d\xb0\xc1\x33\xb2\x34\xcf\xcd\xc9\x41\x03\x13\x14\xd0\xf0\x35\xd0\xa8\x01\x05\x09\x24\xd6\x06\x68\x48\xa0\xe0\x51\x4d\x0e\x0e\x7b\x9a\x1c\x24\x94\x62\x45\x07\x0e\x8e\x8a\x9b\x60\x05\x4a\x30\xa4\xe7\xe9\x86\x27\x13\x31\x85\x47\x7e\x03\xd7\xfc\x7e\xac\x6e\xe4\x98\xe5\xcf\xe7\x16\x3c\xf0\x47\xdb\xae\xdc\x10\xc0\xa5\xe4\x14\x3f\x1f\x72\x0d\xfc\x41\x99\xeb\xa1\x07\x10\x60\xe9\x7d\x60\x69\x63\xf2\xa5\xaf\xe1\x78\xc3\x11\x47\xb7\xb6\xdd\x56\xb6\x73\x12\x79\x68\xcd\x21\xb9\xe2\x9a\xe3\x70\x99\xc0\x3b\xa6\xae\x0a\x9b\xcb\xb7\xf2\xe2\x63\x7d\x28\xd8\xd1\x3a\xe4\x58\x8e\xd4\xd1\x5c\x46\x6d\xb1\xda\xa5\x74\xf2\x74\x09\x48\x4c\x19\xbc\x6b\xbe\x54\x6b\x3d\xda\x36\xba\xdd\x6e\x1f\x1c\x43\x50\xd9\x76\x7b\x56\xbb\x93\x46\x12\x4a\x3f\xe2\x5c\x97\x14\x61\x27\x12\x9f\x33\x24\x0f\x35\xd6\xb3\xfc\x4e\x01\xf2\x47\xf8\xc8\xdf\x4d\xae\xa7\xe8\x76\xbc\xd9\xb1\x53\x17\x08\x6e\xf3\x77\x70\xc5\xeb\xd5\xbd\x53\x87\x86\x28\x7b\xb9\x37\x7c\x8e\x6a\x60\x5c\xd5\x83\x14\xc0\x80\x17\xbc\x7d\x6b\xdb\xf5\xc2\x25\xa6\xd7\x2d\x66\xbc\x7f\x96\x9d\x9e\x9e\x61\x21\x1b\xce\x4a\xd2\xa7\x2d\x54\x33\xa7\xae\x82\x3d\x6f\xb6\x5b\x84\x1e\x79\x56\xa9\xcb\xd0\x20\x19\x3c\x4a\x30\xad\xe5\x07\x0b\x35\xd4\x1b\xc8\xe0\xb1\x80\x57\x35\x80\x76\x0f\xd1\xe4\x7a\x0a\x11\x86\x48\x8e\xbe\x82\x5f\x1e\xe0\xa1\x2a\xcc\xe1\x8f\x18\xd0\xd5\x76\xfb\x42\x72\xdb\x9f\x51\xbe\xf3\x30\x7c\x46\x6a\xe3\x61\xb8\xb7\xed\xcf\xfa\xbe\x19\x63\x40\x2f\xb6\xdb\x8f\x58\xa6\x5c\x63\xb8\xb5\xed\x07\x6d\xec\x56\x40\x2e\xf3\xae\xc5\x8b\x8f\xfc\xce\xa9\x03\x72\x94\x81\x80\x7b\xb8\xc6\x10\xa3\xea\xa1\x58\x61\xf0\x9d\xb7\x97\x97\xdf\xf2\x76\x2e\x4b\x6e\x2d\x91\x1c\x30\x5c\x4e\xc4\x94\x3f\x42\x84\x22\xe7\xbb\x4e\xe4\xfc\xd4\x89\x9c\x57\xcf\xd0\x63\x9b\xdf\x60\xb8\xc4\x70\xbb\xdd\xde\x39\x05\xed\x26\x8b\xc0\x3d\x86\xc7\x1a\xec\x21\x1e\x23\xc4\x03\x42\x29\x23\x94\x1a\x18\xe4\xb9\xcc\x73\xc1\xa3\xcc\xa3\x39\x0c\x1a\x32\x6f\x08\x83\x2e\x1b\x74\x0d\x24\x1a\xf6\xd8\xb0\x57\xc0\xa3\xbe\xfb\xa5\x6b\x28\xef\x89\x6b\x28\x8f\x11\xc9\x42\xf7\x0f\xe4\xa4\xc7\xb8\x5c\x2d\xab\x78\x42\xb1\x31\xc0\x1b\x25\x5a\x12\xe3\x52\x17\xc4\x85\x00\x63\xa6\x2e\xf2\x03\x3d\x07\x3d\x46\x48\xaf\xa0\xb7\xfa\xf4\x4b\x63\x18\x3c\x31\x06\xa5\x48\xa4\x84\x2e\xb2\xaa\x03\x69\x5c\x33\x78\x56\x42\xfd\x6f\xfd\xac\xa2\x50\x25\x77\xc5\x55\x70\x27\x20\xd8\xff\x90\xc5\xaf\x3f\xbe\xd3\x92\x04\x88\x1b\x89\xb2\x8b\xd1\x58\x30\xcb\xb5\x3a\xa2\xca\x34\x27\x0d\xca\x29\x96\xdb\x1d\xf6\x4f\xdd\xc1\x29\xed\x5f\xb9\x03\xe6\x7a\xac\x3b\x72\x46\xa3\xd1\xbf\x58\x6d\x1e\x68\x10\x24\x4f\x91\xec\x01\x3a\xed\xbb\x95\x3f\x45\x10\xe3\xed\xb6\x5d\xaf\x76\xbf\xd0\x5b\xff\xad\xca\x38\xae\xe6\x59\xa0\x76\x90\xbe\x0a\xa2\x20\x13\x28\x2a\x01\x1d\xce\xaf\xa0\x3f\xf8\xd1\x6d\x2e\x56\x7e\x1d\xdd\xfb\x61\x30\x6f\x65\xc1\x5d\x71\x2f\x5f\x71\x86\x01\x19\x57\x53\xf5\xc3\xd5\xcb\x57\xeb\x30\xfc\x59\x5b\x95\x26\x45\xe2\x9b\x20\x0c\x83\x54\xcc\xe2\x68\x9e\x2a\x37\x46\xd9\xb9\x3b\xb6\x4e\x2d\x96\x5d\x8c\x46\xa3\xd1\xd8\xea\x58\xcc\xb2\x0a\xe6\xbd\x83\x2c\x35\x3a\xab\xa3\xee\x11\xfd\x9b\x14\x49\xca\x40\x4b\x62\x82\xf1\xa9\xc7\x4e\x7b\xb8\x63\x9d\x5a\x9d\x18\x15\x4d\xc4\x51\xb6\x44\xb8\x43\xf6\x3f\xa8\x09\xc0\xb8\x63\x5d\x55\x53\xff\x29\x5e\x27\xa9\x4a\x66\xb5\x5a\x82\x68\x9d\x89\x86\x0f\x1f\xf3\xce\xe3\x8e\xe5\x58\x1d\x94\x5c\x8c\x46\xe3\x44\x2d\x6f\x8c\x12\x99\xfa\x2f\xd6\x8e\x05\x3b\xd8\xa8\x83\x2a\x77\xdd\x57\x8a\x6b\x73\x59\x5f\x8f\x3c\xa1\xe9\x9c\x8b\xdd\xda\x9c\x0b\xdb\x2e\xb5\x08\xd4\x9b\xf1\x27\xa0\x5e\x0f\x6f\x04\x5e\x17\x57\xd7\xcb\x20\xca\xca\x3b\xeb\x08\xe5\xa2\xd4\xb2\x3a\xa1\xaf\xd8\x7b\x84\x91\x1e\xd1\xc4\x8f\x1c\xc9\x57\x5d\xb4\x6b\x25\x21\x25\x2e\x6c\xe8\x85\xd1\xf6\xf0\xc3\xb0\x75\x27\xb2\x65\x3c\x6f\xc5\x51\xab\x65\x75\xc4\xc1\x1d\x7a\xff\x8b\x77\xe8\xc3\x27\x0e\xbe\xd2\xff\x29\x96\xa0\x41\x5b\xaa\x5e\xd5\xe8\x89\xaa\x94\x76\x97\x01\xb5\x46\x64\xdb\x7f\x42\x95\xc8\xaa\xe0\x2a\xa8\x2b\xe0\x41\x90\xbe\xcf\x01\xc7\xbb\x05\xac\x4c\xf2\xeb\xf4\xb2\xd0\x34\x82\x2c\xfe\x3e\x9e\xf9\xa1\x30\x20\x25\x97\x52\x82\x51\xce\xb1\x72\x8f\x47\x60\x19\xf5\xbf\xfe\xf1\x4b\x5b\xd7\xf0\xa0\xc4\xa5\x86\xd2\x74\x8f\xaa\xd1\xe7\x52\x75\x81\x95\xa0\x69\xa1\xed\xa2\x73\xa2\xc0\x87\x94\x4b\x1a\x1e\x42\x1e\x38\x0b\x58\x73\xf7\xac\x10\xf7\xac\xcf\x70\x98\x6b\x0e\xfa\x3c\x9d\xac\x3b\x9d\xa9\xa2\xee\x8c\xab\xa3\xfa\xe5\xb3\x4b\x19\x71\x29\x10\xb7\xcf\x88\xdb\x07\xe2\x7a\x8c\xb8\x72\x77\x79\x47\x6f\x59\x73\x7a\xb9\x9f\x5f\xc7\xe5\x97\xac\x92\x6e\xf6\x8d\x18\xf5\x49\x65\x67\xa3\xe6\xfc\xca\xa8\x39\x7f\x67\xd4\x9c\x3f\x1a\x35\xe7\xf7\x46\xcd\xf9\x1b\xb8\xe1\xab\x71\xc2\xee\xc6\x5a\x79\x59\xe9\x30\xf3\xcd\x0e\x37\x6a\x33\xc3\x23\x5f\x35\xe8\x44\x5f\xf3\x0a\x9d\xb0\xdd\x56\xa9\x06\xf9\xbd\xd4\x81\x5e\x95\x3a\xd0\x73\x8e\xd0\x8c\xb7\x17\xb6\x7d\x53\x51\x83\xbe\x99\xac\xa7\x78\x7c\xc3\x42\x3c\x59\x4f\x61\xc9\x25\xc9\x36\xf6\xb5\x4e\xf3\xfd\x11\xd5\x5e\xbf\x49\xb5\xf7\xc6\xb6\x63\x74\x03\x6b\xd0\x0a\xbc\x3f\x60\x78\x9c\xac\xa7\x6d\x3e\xb7\xed\x40\xe9\xef\x2e\x15\xd1\x74\x9d\x27\x22\xa5\x2e\x3d\xc7\xbb\x93\xc4\x99\xc5\x89\xe0\x11\xfc\x7f\xa1\xdb\x6b\xa8\x1a\x65\xf4\x62\x24\x2f\xe6\x58\x19\xed\x21\xef\xe8\x95\xac\xbe\x01\xb9\xf3\xb3\xd9\xf2\xe9\xbb\x41\xfe\xdc\x79\xae\x9c\x04\x59\xcf\x9d\xe7\xd6\x44\x4c\x51\x96\x2b\x22\x46\xb5\x4b\x89\x6c\x92\x4c\x79\x9b\x40\xfb\x30\x63\x80\x37\xb9\x15\x43\x4d\xcb\x49\xf6\xf0\x4b\xd4\x08\x25\xc7\x21\x49\xae\x21\xea\x3d\x4d\x87\x68\x2b\xe4\x8a\x24\xc9\x60\x86\x81\xd9\xfe\x92\x3e\x51\x97\x07\x86\x59\x94\x73\xa3\xb8\x45\x42\x86\x4a\x4f\xa4\x72\x8d\x0a\x6b\xde\x0e\x6a\x24\x81\x46\xd6\x72\x96\x0a\xa1\x91\xf8\x2c\x66\x87\x4e\x6d\x26\xa5\x5b\x4d\xe7\x36\x89\xd7\xab\x94\x6f\x7c\x66\x0d\xac\x9d\xe4\x99\xad\x81\x44\x33\x96\xe5\x24\x62\x15\xfa\x33\x81\x04\x58\x7f\x39\xf7\x2f\xb4\xb3\x8e\x86\xea\x9e\xa3\x31\xc3\xcf\x15\x81\x20\xdb\x3b\x39\x6c\xb6\xe0\xb5\x8e\xa8\xbc\xeb\x09\xb1\xfc\x9b\x1c\x06\x96\x38\x83\x2a\x47\x31\xb9\x6f\x40\xcb\x57\x8e\x63\x26\xee\xd4\xb6\xad\x1b\xfd\x4c\xa6\x3b\x74\x94\x2e\x9d\xeb\x4e\x2e\xb9\x2f\x41\xdc\xa2\x69\xca\x32\xbe\x29\x95\xee\x27\xcb\x69\x43\xc7\x07\x3b\x18\xb4\xb9\x95\xef\x25\x8c\x61\xc5\x17\xe3\xc6\xba\xda\x04\x12\xfe\xdc\x7f\x5e\xfa\x9e\x3c\x36\x19\xea\xce\x61\x1d\x86\x3b\xb0\xd4\xa0\xe5\x68\x84\x12\xde\x57\x59\xa2\xcd\x0e\x6a\x09\x93\xb0\xa9\x83\xc9\x0e\x43\x32\x59\x4e\x91\x65\x61\x68\x67\x3b\x9c\x2b\x7a\x28\xb5\xce\xc5\x76\xdb\x5e\x29\x3f\x6b\x6a\x41\x4d\x43\xed\xf5\x76\x5b\x6b\xb9\x3d\xd3\x83\xb8\x93\x7b\x68\xb2\x9c\xc2\x3d\x9f\xa3\x18\x96\xa0\x06\xbe\xef\xd9\xa5\x66\x29\x94\xe9\x51\x72\x9e\x8e\x17\xb6\xdd\x0e\xc6\x9b\x79\x1c\x09\xd6\x76\x8d\xce\xec\x5d\xcd\xfa\x88\xed\x7d\x35\x76\x46\x89\x52\x0f\x2c\xbe\x92\x9d\x9c\xe8\x5b\x7e\x3f\x71\xa7\x70\xc3\xef\x27\x64\x7a\x92\xa0\xdc\x10\xb0\x00\xd5\x02\x6e\x31\x44\xe8\x83\xb8\xbd\xfc\xbc\xaa\xa4\x2f\x81\x72\x9e\x8d\x1b\x45\xa1\x37\x85\x3a\xbc\x16\x49\xed\x1a\x44\x96\xf5\x4c\x78\x97\xcb\x9c\x0d\xff\x26\xc9\x10\x32\x84\xfc\x56\x32\x37\x2d\xee\xf7\x59\xbf\x6f\x38\xb9\x02\xf6\x7d\x35\x99\xd8\xb4\x8b\xf3\x53\x96\x93\x72\x19\x2f\xc9\x68\x61\xac\xfc\x6c\x1b\x65\x1d\x6e\xdd\x2a\x31\x63\x70\x1b\xc5\x89\x78\xe9\xa7\xc2\x24\x6b\xe9\xe3\xdd\x3a\xcc\x82\x30\x88\xf2\xd4\x3b\x95\xba\x8e\x82\x59\x3c\xcf\xd3\xd6\x2a\x2d\xcd\x82\xd9\xa7\x47\x93\xf4\x68\x61\x50\xe8\x3d\x27\x15\xbd\x03\x52\xb1\x71\x34\x83\x41\x5d\x47\x41\xa9\x4d\x55\x2f\x46\x35\xdc\x0f\xd2\x97\xea\xea\xfe\xe3\x2a\x11\xfe\x5c\x92\x49\x8d\x48\x40\x59\xcf\xa4\x10\x42\x81\xf5\x4b\xa9\x86\x92\x7e\xf1\x19\xdc\x72\x17\x6e\x78\xbb\xbd\x94\x28\x71\x09\x0b\xe8\xe2\xb3\xdb\xf3\xb5\x56\xb9\xb9\xd5\x4a\x63\xf2\x71\xc5\x6f\xc6\x37\x28\x9c\xdc\x4e\xe1\x16\x52\xcc\xd4\xd3\x9d\x3c\xb8\x11\x5a\x61\xdb\x46\x77\xbc\xc0\xd3\xe8\x8e\xaf\x26\xfe\x14\x8f\xdb\xed\x3b\x96\xa0\x15\xc6\x70\x67\xdb\xf3\x0b\x17\xdf\x73\xdd\xa5\x15\x04\x68\x55\xa8\xff\xdc\xc3\xfc\x94\xe0\x53\x72\x92\xbb\x89\xbc\xbf\xe0\x23\xd7\x1d\x90\xd1\x88\xf6\x7b\x83\x9e\x3b\x1a\x91\x03\xca\x19\x9f\x64\x93\xfb\x29\x5f\xed\xee\x3b\x9d\xdd\x6d\xa7\x93\x6b\x4f\xdc\xd7\x94\x70\xcc\x46\x33\x9a\x4e\x35\x5d\x14\xaf\x81\x9e\xce\x4d\x06\xfa\x86\x3e\x1c\x12\x73\x39\x61\x08\x2b\xc9\x94\xa4\xf9\xba\x84\x6a\x3d\x88\xc4\x29\x9b\x1d\xcc\xf8\x66\x77\x86\xaa\x86\x32\x7b\x27\x7f\x0e\x4b\xdd\xc0\x22\x17\x3d\xf2\xe5\xf8\x10\x28\x89\x1d\x0b\x25\xd4\xbd\xe1\x11\x92\x85\xb2\x31\x65\x04\xc3\x23\x77\x4f\x9a\xad\x4b\x6f\x9f\x32\xf4\x0c\x32\x4d\x46\xb7\x2d\xed\xd8\x07\xdd\x1a\x2d\x96\x05\x4f\x51\xee\x89\x0f\x9f\x2d\x2e\x1e\xcf\x1e\x8d\x62\xdb\x3d\xcf\xc6\x37\xc8\x47\x2b\x2e\x26\x8f\x53\x2c\xe1\xc8\x6a\x42\xa6\x98\xdd\x20\x95\x80\x39\xe7\xeb\xed\xf6\x9e\x73\x9e\xab\x9e\xb5\xee\x4b\xc5\xc3\x3b\x7e\x9b\xab\x08\x9c\xb5\xd1\x8a\xdf\x19\x11\x1e\x76\x24\x80\x3a\x33\x4d\x04\xe8\x0e\x6e\x60\xa5\x55\xec\x21\x3b\x52\x29\x76\xbe\xf9\x70\xf9\xe2\x6f\x7c\x0d\x89\xf3\xe1\xf2\xea\x87\x0f\x6f\xf9\xac\xb6\xba\x84\x91\xbe\xe1\xc7\xf2\x35\xf6\xd8\xc0\x83\x21\x61\x43\x45\x59\x1c\x68\x24\xd4\x6c\x73\x68\x0f\x23\x2b\xf2\xb3\xe0\x5e\x9c\xe6\xd9\x4e\xb3\xf8\xd4\x30\x95\x50\x90\x8e\x85\x22\xbf\x52\xb4\xee\x31\xa2\x8c\xaf\xbc\xe1\x97\x88\x1f\xfa\x04\xf1\x63\xf4\xee\xbd\xd1\x97\x2a\xe9\x3e\x51\x49\x97\xd1\xee\x6e\x2a\x81\xe6\x17\x2a\x79\x4a\x79\xdf\x48\x98\x94\x4d\x99\xb9\xfb\xcb\xa5\x4d\x83\xa3\x14\xa8\x37\x2c\x0d\x3f\xab\x62\x1c\xdb\x4e\x8a\x74\x63\xcd\x29\x99\x7f\x49\xd7\xca\xfa\xbe\x48\x2f\x3e\xa1\x08\xae\xcd\x57\x74\x07\xfb\x03\xd6\x1f\x14\x0c\xed\xe0\xa8\x5e\x59\xae\x56\x47\xa8\xab\xae\x3b\x9e\x10\xc5\xa9\xfb\x12\xf0\x79\x56\xa5\x1c\x72\xa4\xe1\xeb\xeb\xe7\x06\x1e\xc3\xb7\x6d\x14\x73\xbf\xa2\xda\xa4\xdc\x0b\x16\xaf\xb6\x9d\xa0\x18\xdb\x76\x64\xdb\xb2\xa9\x38\xb7\xcb\xa1\x2e\x23\xd4\x2d\xc0\xd1\xe0\xab\x4c\xcc\xab\x60\xaa\xd0\x4c\x4a\x72\x13\xe8\xec\x98\x19\xe6\x58\x20\x5c\x10\x0c\x78\xdf\x20\x73\x2c\x50\x36\x71\xa7\xb8\x42\x52\xc8\xd7\x7d\x03\x4d\x93\x0d\x32\x05\x0d\x6a\x79\x75\xda\x9e\x7d\x74\xad\x00\x64\x13\xda\x58\x4a\x7f\xd0\x45\x7b\xc7\x8b\x42\x36\xe9\x1e\x2f\xaf\xbf\xee\x1b\x89\x26\xa5\xe1\xde\xe0\x29\x9d\xb2\xca\x9e\x30\x7a\x58\xd6\x6f\x96\x62\x6c\x0f\xc4\x11\xc8\xcd\x2d\xc3\x1a\x88\x1f\xeb\x63\xae\x03\x96\x20\x81\xc7\x85\x6f\x66\x0b\xb3\x42\xbf\xab\x6a\xaa\x32\x38\xa2\x8c\x25\xd0\xb0\xa6\xe8\x16\x14\xbe\x0d\x20\x38\xb0\x57\x79\x52\x5b\xab\x74\x4e\xac\x48\x64\x55\x56\x7b\xcb\x0d\x26\x91\xba\xd9\xc5\x55\x2d\xb1\xa1\xc7\x86\xaa\x63\x47\xad\xf4\xeb\xb3\x55\x73\x89\x59\x57\x4a\x34\x33\xa2\xbe\x98\x09\xa9\x0d\xfd\x40\x60\x54\x3f\xb0\x4a\xbe\xb9\x08\xe3\x38\x79\x72\x80\xca\x26\xcc\xb6\x0b\x71\xad\x7c\x91\x9f\xd5\x9d\xf5\x0e\x36\xc5\xe1\xfa\x22\x90\x7d\x42\xf0\x9f\xdb\x58\x0d\x8f\x0a\x64\x72\x20\xd3\xf3\xaa\xba\xbb\x5f\xc1\x9d\x97\x37\xd5\x4a\x57\xb2\xa4\xa0\x32\x2e\x26\x81\xa2\xa0\x32\x66\x69\x2a\xdd\xe2\xea\x86\x18\x1f\xa8\xf5\x15\x20\x64\x78\x5c\x83\xfb\xa8\xf5\x95\x66\x48\x2a\x72\x80\x60\x9c\xa1\x04\x45\x0a\xef\x47\xea\xa4\x67\x28\xca\x25\x01\x7e\x7e\xab\x2c\x1c\x9d\xdd\x98\xaf\x15\x1d\x8f\x15\xb4\x2b\xcc\xdc\xc0\xdf\x55\xa9\xe0\xe1\x81\xf6\x73\xf3\xd5\x89\x57\x5e\x9d\xe8\xf9\xa4\x8a\xc5\xdf\xec\x4e\xb4\x45\x56\x0c\x0d\x47\xa3\x41\xe1\x53\xdf\x46\x36\x5b\x6e\x41\x06\x3e\xde\x54\x6e\x2e\x78\x82\x62\xd8\x48\x62\x85\x45\x88\x80\x8f\x77\x18\x02\x99\xaf\x63\xb5\x2a\xde\x45\x2a\x08\x33\xbf\x8e\xaa\x19\x7d\x69\xf5\x18\x39\xd8\xaf\xbb\x5d\x19\x0e\x8e\x5c\x7e\x0f\x5c\x4d\x73\x0e\x0d\xcd\x39\xa4\x86\xe4\x94\x93\xb1\x56\xc2\xcb\xae\x51\x89\xd9\x9f\x8a\x39\x6f\xa3\xc9\xd4\xf9\x24\x1e\x53\xe5\xf1\xf6\x73\x66\x05\x91\x49\x40\x18\xc3\xb2\x89\xb3\x96\x73\x75\x6c\x93\x2c\xca\xdb\xf2\x14\x2d\x20\x83\x95\x96\xc7\xdc\xc0\x23\x5c\xc3\xc3\x81\xff\x91\xb9\x6d\x0b\xc9\x3b\x7c\xcc\x69\xb9\x8f\x13\x31\x3d\xa9\x1b\x3f\x68\x75\x27\xa6\x1e\x8d\xb2\xd2\x81\x67\x8d\xaa\xee\x77\xae\xa0\x26\x9e\x72\xa9\xb1\x97\x0f\x2e\x79\x6d\xf9\xe0\x33\x2f\xf5\xaa\xee\xe0\x9d\xe4\x5f\x3e\xd6\x1c\x05\x5c\xf1\x8f\x93\xd9\x74\xbb\xfd\x38\xb1\xfe\xed\xbf\x2d\xa6\x74\xba\xdd\xde\xd9\xf6\xc7\xc9\xdd\x14\xde\xf0\xab\xed\xf6\x01\xdd\x61\x78\xc1\xef\xc6\x9f\xc7\x0f\xa8\x50\xba\xc2\xec\x4d\xae\xd6\xf6\x9e\x17\xa0\x2f\xb3\xed\x8f\xf9\x85\xf6\x76\x7b\x25\xc9\xf0\xf7\xb6\x8d\xae\xf9\x1a\xbd\x2f\xaf\xa3\x04\xc6\x92\x6e\x30\x56\xc7\x15\xe2\xe1\x5a\xd1\xcf\xb6\x8d\x42\x74\x0d\x97\x4a\x97\x2b\xd9\x6e\x1b\xe8\x90\x6b\xd5\xef\x18\x5d\xc3\x0c\x96\x18\xc3\x67\xdb\xbe\xb2\xed\x7c\xb8\x6d\xce\xaf\x9c\xc8\xbf\x93\x88\xe0\x1d\x6f\xbb\xf0\xa6\x61\x0f\x5c\x55\x6e\xbb\x76\x2a\xbe\x41\xfb\x76\xbb\x95\xab\xd9\x7e\x27\x87\xaf\x1b\xf8\x08\x33\x78\x83\x41\xa9\xb8\xbf\x01\x7f\x72\x39\xe5\x4b\xb8\x93\x84\xfd\x0d\xdf\xe8\xe6\xd8\xe7\xf1\x1b\xf6\x80\xf2\xc6\x31\xc8\xb5\x66\xf7\x3a\x51\xad\x3b\x06\x33\x25\xec\xc5\x0e\x6e\x95\x5c\xfd\x51\x9b\xd3\xa8\x9f\x8f\xdb\x6d\x80\x3e\xc2\x23\xdc\x48\x96\x43\x1b\xd0\x44\x28\x72\xde\xeb\xcb\xe3\xf9\x76\xfb\x0e\x43\x06\x37\x85\xc4\xeb\x46\x0b\xd3\xbb\x8c\xb8\xdd\x83\xfb\xe2\xfc\x80\xea\x1b\x63\x7d\x4c\x87\x94\x0d\xa9\xc6\x78\x30\x1c\xb0\xa1\xa4\x76\x87\x47\xcd\xfb\x0f\x8e\x58\xc4\xdb\x44\xc9\x55\xb5\x3e\xea\x64\x30\x9d\x24\x53\x84\x4f\x02\x03\x18\xab\xb3\x1b\xf1\xb6\xbb\x33\xfe\xa3\x17\x49\x7c\x87\x82\x1a\xb0\xd2\x20\x94\xee\x70\x0e\x65\x63\xbc\xd9\x3d\x65\x08\x9d\xd9\x76\x3b\xaa\x6b\x0f\x05\xd5\xee\xf8\xb2\x3b\x90\x72\x5f\x77\x29\x55\x3b\xe8\x70\xb9\xb5\xc4\x28\xd0\x96\xab\x32\x6f\xc3\x8e\x48\x77\x20\x90\x5f\xed\x58\x8e\x26\xea\x72\xe0\xe1\x57\xda\x9c\x16\x6d\x1b\xab\x70\xd0\x52\xab\xb6\xc8\xcd\xc3\x87\x4f\x78\x0b\xd8\xe4\x79\x9e\xe0\xea\xda\xc4\xe4\x39\x42\x60\x28\xc2\x42\x7c\x5e\xdd\x91\x0a\xac\x6b\x27\xdb\x6d\x82\x88\x8b\x2f\x28\x75\x69\xdf\xe9\x79\xfd\xc1\xa8\x37\x74\xbd\x01\x19\x9a\x2f\xe7\x4d\x5f\x4e\xa9\x38\x25\x83\x36\x4f\x90\x7e\xc2\x4d\xda\x35\x2e\xe7\x48\xf0\x8e\x24\x08\x99\xb8\x38\x25\xe2\xd4\xb3\x6d\x71\x2e\x7f\xc7\xa2\x23\x9e\x89\xe7\x94\xe5\xbd\x42\x02\x9f\x92\x1d\x4b\xcc\x18\x8e\xde\x64\x8d\x48\x41\x24\xad\xe2\x07\x08\x78\x84\x28\x9c\xf6\x15\x96\x54\x8f\xb4\x2b\x91\x87\x7c\x24\x74\x80\x9f\x21\x7a\x1a\x6b\xcb\x55\x0a\xa7\xa4\x6e\x68\xaf\x49\xad\x24\x5e\x37\xda\x95\x40\x04\x21\x2f\x6e\x9b\x85\xc4\x3c\x49\x45\xd0\x1c\x9e\xa7\xe3\xf5\x33\x14\x3e\x4f\x9f\xc7\x1d\xf2\x3c\x38\x25\xcf\x03\xfc\x2c\x7d\x16\x33\x14\x49\x2a\x06\x91\x4e\x2c\x53\x42\x7c\x8a\xb2\xd3\x10\xe3\x0b\x7f\xbb\x8d\xda\x3c\x92\xa5\xc8\x73\x17\xb3\xf5\xb3\x48\x2e\xeb\x88\xb0\x91\xe4\xd8\x47\x07\x44\xd6\x5e\x4f\xc3\xf8\x96\xac\x9a\x68\x4d\x3d\xc9\x6a\x82\x87\x66\x82\x87\x63\x71\x5a\x99\xe0\x30\xbe\x45\xa4\x23\x72\x9e\x60\xf4\x84\xef\x14\x95\x3f\x0d\x6e\xa3\xa6\x96\xca\x25\xdd\x6e\x45\x9b\x0b\xb9\xb0\xe7\xae\xb2\x5b\xcb\xab\x3e\x6a\xe6\x45\x7a\x7d\x49\x1a\x8a\xcc\xb7\xea\xa2\x3e\xcf\x48\xfa\xb4\x75\x84\xcf\x5d\xc8\xb9\x91\x5a\x18\x91\x4a\x7f\x2a\xce\x5b\x20\xe4\x6d\x75\x11\xd2\xe4\xe1\x23\x45\x05\x56\x11\xf7\x92\x2b\xd7\x95\xc5\x51\x8a\x36\x3b\xa5\xfe\x00\xeb\x1a\x06\x8f\x91\x80\x04\xcc\x11\xdd\x04\xcc\x7a\x67\x75\x5a\x9d\x8e\x0f\x0f\xca\x29\x13\xde\xc1\xac\xea\x08\xec\x6f\x97\x3f\xb3\x04\xde\x5e\x5e\x7e\xcb\xda\x04\x8c\x15\x06\x3b\x04\x5b\x51\xa9\xf3\x68\xa5\x8f\x77\x37\x71\x58\xf5\xf2\x21\x18\xda\xb7\xa1\x69\x89\xb1\xf5\xd1\x62\xd6\x7b\x0b\x77\xb4\xbf\xea\x40\x69\xa1\xe9\xea\xd2\x4a\x75\xaf\x2c\xed\x89\x21\x7f\xbf\xb4\x4e\x94\x17\xfa\x42\x55\x37\x99\x3a\x81\x52\x16\xff\x49\xf8\x9f\x1a\xfa\x76\xa4\xe2\xb6\x5b\xab\xb7\x4d\x0e\xab\x7d\xd8\x41\x1c\xbd\x4a\x84\xf8\x4d\x34\xc9\xc3\x43\xdb\x9e\x29\xbd\x28\xdb\x4e\x15\x91\x6f\x9a\xb2\x6d\x59\x13\x08\xe3\xef\xab\xcf\x48\x2f\x97\x80\xd7\x34\x29\x8d\x1c\x66\x74\x54\xc0\xe1\x15\x86\xc8\x3d\x25\xe0\x80\x80\x27\xce\x9b\x75\xa6\x4c\xf1\xdf\xdd\xa4\x22\xb9\x17\x12\xbc\x39\x3f\x89\x9b\xbf\x05\xd9\xfe\x17\x15\x15\x68\x95\xc4\x33\x91\xa6\xe0\xf3\x24\xf7\x66\x08\x29\xb7\x4c\xb2\xc5\x35\x6b\x83\xe2\xa7\x44\xed\xda\xb4\xe5\xc0\xcc\x0c\x22\x75\xc1\x9b\x4a\xfe\x93\xc7\xce\x3c\xbe\xf3\x03\x1d\x04\x4c\x7c\x0e\x32\x84\xcf\xc4\x99\x44\x90\xc2\x59\x44\x20\xb8\x50\xa8\x4a\x21\xb2\x08\x55\xae\x1f\x35\x8a\x14\xe3\x10\x61\x56\xa8\xbd\x07\xbb\x5d\xf1\xac\xc4\x4e\x22\xca\x44\x82\xb4\xf6\x61\x8a\x6b\x26\x6f\xb1\xaa\xf8\x2a\x98\x7d\x42\x6b\xbc\x2b\x0c\x72\xdb\x81\x9c\x99\xc8\xbf\x0f\x6e\x25\x5e\x97\x95\x14\x2f\x4e\x9a\xf9\xd1\xdc\x0f\xe3\x48\x48\xda\xc6\xb7\x6d\xdf\x49\x44\x1a\x87\xf7\x22\x37\xe0\x29\x12\x0c\xe7\x86\x4f\x6a\x8d\xce\x9c\x6c\x29\x22\xd9\xa0\x16\x8f\xd6\x3e\x46\xb9\x24\x23\xef\x8f\x51\x88\x6e\xbb\xb0\xe4\xb9\x00\xcd\x78\x45\xbb\x12\x9f\xb3\xb7\xf1\x5c\x20\xcb\xc2\x27\x92\x5a\x0c\xd0\x1a\x3b\xb1\x5e\x42\xb4\x84\xcd\x6c\xe9\x27\xfe\x2c\x13\xc9\xb7\x7e\xe6\xab\x00\x7a\x75\x8b\xbf\xa5\x33\xf7\x33\x9f\xcf\x79\x7b\x7e\x48\x3c\x17\x02\xa5\xcd\x22\x62\x09\x28\x0e\x28\x0f\x56\xa2\xec\x16\x34\xfd\x10\x61\x10\xdb\x2d\x12\x3c\x82\x50\x32\x11\x19\x8f\x8c\x6d\x71\x8f\x91\x6e\xcf\xf0\xa2\xb9\xa0\x6f\xf4\xd5\x46\x99\x65\xec\xb3\x2a\xd6\x39\x51\x0a\xce\x2b\xbd\x19\xb9\x76\x05\xb6\xa7\x29\x1e\x2c\x4a\x86\x39\xab\xba\xac\x38\xd4\xb2\xf9\xc6\x9f\xb7\xcc\xc6\x6e\x55\x84\x7b\x92\x39\xe7\x02\x22\x9e\xec\xca\x80\x46\x6a\x41\xb5\x51\xbe\x49\x91\xc0\x53\x79\xb6\x2b\xa9\x32\x67\xd1\x24\x6e\x91\xdd\x8c\x8c\xa4\x23\x57\xb2\x1b\x7d\xdd\xcd\x4f\x3f\xe7\x79\xdd\xdc\x74\xde\x35\xd7\xda\xc4\x35\x97\x0f\xca\xfc\x3a\x35\xe6\xd7\x61\x8e\x1c\xfc\x54\xa2\xa9\x2a\x31\x13\x6e\xb7\x87\xb8\x40\x5f\x87\x6d\x76\x90\xa9\xcb\x51\xfe\x51\x01\x60\x24\x1b\xb5\xfc\x9b\xd9\x5c\x2c\x6e\x97\xc1\x2f\x9f\xc2\xbb\x28\x5e\xfd\x9a\xa4\x59\x79\x5b\x26\x09\xc3\x01\x44\xa5\x30\x2b\xd7\xde\xad\xab\xd3\x66\x13\x31\x55\x86\x02\x30\x68\xf3\x10\x6d\x76\x20\xf0\x24\x99\x6e\xb7\xa6\x9f\x8a\xf7\x54\xe9\x19\xc6\xc6\xf2\xd5\xc2\x6d\x1e\xd5\xd4\xef\x6a\xae\x22\x7c\xad\x60\x73\xe0\x19\x62\xcd\x09\xcc\x94\xde\xcd\x9c\xc7\xce\xe2\x2c\xbc\x58\x9f\x15\x9a\x39\x4b\x58\xf0\xb4\x34\x66\xd5\xda\x37\xb0\xe2\xb3\x71\x84\x16\x38\xb7\x79\x9d\xa1\x05\xc6\x4c\xa6\xc0\x1d\xcf\x6f\xa2\xe0\x9e\xbb\x67\x77\x17\xf7\x67\x78\xc9\x57\x93\xfb\x4e\x67\xaa\x58\xa0\xb9\x3e\xa9\x0b\x58\x2a\xdb\x68\x75\xd9\x3d\x59\x4e\x2b\x7a\x3c\x2c\x3c\xae\xc9\x53\x18\x82\x1b\xa3\x1a\x7d\xc9\x69\xcc\xc1\x47\x47\x25\x80\xb9\xfa\xdb\x68\xa8\xb7\x43\x7f\x68\x76\x03\xed\x62\x64\xbd\xbe\xd4\x01\x3b\x2d\xb9\x33\x2a\xab\x5c\xb3\x60\xce\xcf\x92\xda\x5e\x03\xc9\xbe\x2c\x12\xff\x4e\x28\xba\x23\x30\x43\xd6\xc6\x8d\x4e\x9a\x3d\x86\xc2\x99\x07\xe9\x2a\xf4\x1f\xb9\x15\xc5\x91\xb0\x40\xa0\x01\xc1\x8e\xbf\x5a\x89\x68\xfe\x72\x19\x84\x73\x1d\xb5\x2e\x4d\x66\xdc\xfa\xc5\xbf\xf7\xb5\x5f\x5e\x66\x01\xca\xb8\xba\x6d\xcf\x44\x94\xfd\xa4\x3d\xc0\xe5\x00\x0c\x3b\xf1\x4a\x44\x08\x43\xe6\x3c\x24\x41\x26\x90\x75\xae\x8b\x5d\x14\x20\xee\x95\xd9\xc9\xe7\x7f\x7f\x6e\x3e\x59\x32\xfb\x2c\x8c\x53\x81\xe4\x86\xcf\x9c\x57\x67\xd1\xe9\xe9\x19\x36\x1a\xca\x95\x30\x44\x93\x60\x12\x4d\x0b\xbd\x8c\x14\xd5\x4c\xa6\x6b\x31\x3d\x9b\x3c\xbc\x04\x75\xc5\x6b\x2e\xc6\xc8\xaf\xc9\x83\x84\x9c\x7b\x79\xa8\x7d\xa8\x7e\x90\xd9\x21\x98\xc4\x53\x2e\x30\x0b\x78\x8a\x6a\x46\xf0\x01\x8b\x50\x60\x24\xcf\x84\x76\x19\xa1\xdd\xfc\x86\x4a\xdd\x59\xf4\x87\xac\x3f\x84\x01\x61\x03\x02\xa3\x21\x1b\x29\x68\xf9\x25\x85\x3c\xfa\x94\x52\xaf\x51\x4b\xd4\x5e\xe1\x4c\x53\x6a\xb3\x0d\x28\x1b\x50\x59\xfd\x51\x69\x6b\xae\xa5\xdc\xcd\x25\x97\x6e\xbf\xee\xbf\xae\xef\x35\xbb\x42\x93\x9c\x7b\xbd\x4a\x65\xbe\x52\x44\xd6\x50\x4e\x73\x32\xb9\x7c\x7e\x7e\xba\x42\xee\x9e\xa5\x17\xe1\x19\xd6\xca\xce\x31\xf7\x27\xa1\x3c\x63\xd9\x24\x9e\xd6\xb5\x1d\xf3\x23\x54\x1d\x4b\x41\x09\x35\x88\x72\x0b\x4f\x6f\x6e\x61\x50\xdc\xcb\x3d\x54\x0c\x73\xe0\x49\x8c\x09\x89\xb9\xb9\x1d\x28\x29\xda\x17\x5c\x4e\x1b\x7f\x70\x72\x12\xd6\x87\x54\xa3\xd0\x2a\x80\x12\x50\x69\x33\xc7\xb0\xea\xf6\x6d\xad\x1d\x07\x96\x76\xde\x92\x2a\x51\x69\x85\xf3\x2f\xd4\x8e\x9c\x45\xe9\x64\x10\xc4\x24\x9b\xea\x7d\x93\xc3\x8e\x5c\xd2\x98\xfb\x60\x31\x4b\x6d\x60\x89\x26\x14\xcd\x22\x13\xf7\xa8\x7c\xba\xf4\x56\xe3\x12\xc9\x5d\x04\x55\x7b\x6f\x88\xf9\x81\xd3\xbd\xba\x3f\x47\xdb\x6e\x9c\xa6\xb7\xfe\x9d\x48\xc7\xc7\x3f\x99\xd8\xc3\x98\x4d\xa6\x27\x5f\x40\x9c\xb1\x6d\x5b\x13\xe3\xea\x4c\x43\x90\xa9\xc5\x73\x15\x6f\x51\xc7\x0f\x95\x29\x56\xb8\x76\xcf\x95\x65\x2b\xce\xe3\xcd\xed\x76\x48\x48\x18\x9f\x14\x52\x73\x97\x30\xe2\x92\x7c\x36\xd5\x9c\x35\x78\x3d\x2b\x77\x53\xaf\x80\xbd\x39\xde\xb0\xf4\x5e\xb6\xc0\x2a\xc0\x81\x85\xd5\x2e\x39\x3e\x0f\x8d\x2c\xa4\x6c\x2d\x30\xbd\xea\x31\xe2\xf6\x34\x5c\x50\x7d\x6a\xb8\x23\x3d\xda\x82\xc6\xe3\xa9\xf1\xae\xec\x1e\x67\x13\x46\x7b\x3e\x5c\x0e\x10\x49\x7c\x20\x7c\x3c\x84\xa5\xb7\x22\xab\x28\xec\x36\x0e\x4c\x68\x3f\x2f\x89\x1a\xdf\x58\x4c\x82\x69\xa3\xdf\xc6\xea\x1d\xab\x16\x16\x97\xee\x65\xab\xdf\xc6\xb5\xb7\xb2\x6f\xac\x56\x44\x77\x6f\x1c\x2b\xb7\x0c\x55\xc0\x9b\x23\x5f\x75\x54\xd4\x0c\x1d\x15\xf1\x15\x33\xd4\x35\x28\xb7\x3b\xc2\xa8\x4d\x9a\xd1\xee\x93\x3e\x8c\x7c\xed\x23\x4c\xc2\x19\x17\xd6\x7c\xa2\x5d\x08\xf8\xad\x20\x6a\xa5\xd8\x6f\xeb\x4b\x92\x14\x7c\xc9\x04\x16\x4a\xc1\xca\xe5\x4c\x7e\x81\xab\xa0\xa4\xcc\xc2\x33\x05\x23\xb1\x6d\xa3\xff\x18\x28\x27\x61\xdb\x6d\x51\xa6\x00\x9a\xeb\xda\x90\x0d\xac\xe8\x8e\x58\x77\x54\x19\xf8\xd1\x1b\x50\xb5\xcf\x23\xbd\xcf\x0f\x97\x5c\xd2\x6d\x8d\x0b\x2d\x57\x38\x3a\xb2\x83\x1b\x54\x6b\xe4\x0e\xde\xec\x1a\x2f\x55\xf3\xcd\x7b\xf4\xd6\xd1\x73\xeb\x0a\xcf\xde\x13\xce\x62\xf4\xfd\x14\x8a\x8c\xcb\x7f\xa5\xa3\xac\x42\x44\xe9\xf7\x89\x98\x2a\x57\x2f\x27\xbe\xa4\x57\x33\x14\xcb\xad\x9a\x38\x1f\x3b\x89\xf3\xea\x59\x5d\x35\x31\x36\x96\x63\xb9\x13\x0e\xf0\xd5\x68\xb5\xba\x6e\xc5\xf8\x48\xf5\xfd\x28\x86\x3d\x24\xec\xbb\xc3\x92\xb0\x77\x16\x5f\xeb\x33\xac\x24\x8c\xe5\xf6\x52\xb8\x35\xe4\x11\x4a\x25\x16\xcb\x1d\x87\xc1\x8c\xbb\x30\xe7\x93\xa9\x76\x13\xe6\x1b\x17\x61\x8a\x8a\x35\x97\x72\xa9\xda\x42\x73\xbd\x85\xc4\x78\xe2\x43\x3a\xf1\xa7\x53\x96\x56\xe3\x59\xcd\x77\x55\x2c\x5c\x20\x23\xb3\xb1\x14\xf2\x51\x83\x7e\x42\xd3\x9e\xec\x69\xda\xe7\x66\xde\xde\x10\x3b\x1f\xc4\x22\x14\xb3\xaa\x2a\x46\x6c\xdb\xb1\x13\x3f\x44\x7f\x3b\xd8\x6c\x46\x0d\xdf\x59\xa0\x40\x5d\x28\x6a\x5d\xfc\xc2\xe7\x40\x56\x38\xb1\x51\xe1\x07\xb3\x1a\x98\x37\x04\xb9\xa6\x22\x72\xc6\x94\x1c\x86\x3c\xa8\xaa\xb4\xac\xfc\x24\x15\xaf\xc2\xd8\xcf\x0c\x30\xa0\x58\x05\x2a\xa8\x74\x96\x3c\x4f\x90\xfc\xd2\xc5\x1d\xeb\xd4\x95\x3c\xcc\x29\x79\xee\x36\xb8\xd2\x8e\x8c\xde\xa5\x04\x05\x5d\xac\xbc\xa3\x97\xfe\x12\x24\xb1\x18\xd8\xb6\x75\x2a\x81\x62\x19\xe4\x79\x7c\xea\xb2\x40\x4b\x80\x49\x97\x32\xd2\xa5\x40\xba\x5d\x46\xba\xdd\xca\x08\x9e\x54\xca\x51\x23\x78\x1d\xed\xf5\xdf\x6c\xbd\xae\x9c\xc1\xe7\xff\x61\x72\xda\x99\x8e\xdd\xc9\xe7\x7f\x9e\x3e\xaf\x0c\x6c\xd8\xe6\x3c\x41\x41\xc7\x72\x87\x16\xde\x6e\x29\x2d\xde\x3f\x13\xcf\xc2\xe3\x06\x0a\x7a\x6f\x8c\xe5\x7d\x76\x00\xd9\xc5\xc5\x85\xbb\xdd\xa2\xd8\xc9\x44\x9a\xa1\x00\x8f\x89\xdc\x47\x18\x7f\x69\x74\x07\xb2\xd3\x2f\xb9\xb4\xde\x08\xd6\x26\x70\xcf\x14\xce\xdf\x23\x07\x36\x5a\x63\x56\xf9\x9f\x35\x70\xe6\x30\x16\xc4\x3e\xd3\x95\xcb\x64\x47\x47\x4d\xf7\xca\x88\x04\x91\xf2\x90\x55\xd3\x19\x52\x7a\x15\x39\x73\x78\xa2\x01\x52\x20\x69\xde\x7c\x7e\x90\x0b\x71\x21\x4b\x92\x27\x39\xce\x25\x1d\xc5\x6d\x79\x2e\xff\xeb\xb1\x91\x8a\x04\xb0\x1f\x81\xe2\x90\x43\x78\xc2\xfa\x27\xf7\x14\x4d\x8e\xc7\x93\x20\xe4\x09\x15\x81\x4a\x5c\x76\x1d\xd7\x5f\x61\x77\xc8\x26\xc1\x14\xa2\x3d\xd2\x5d\x5f\xbd\xa9\xc6\x8e\x32\xb7\xb9\xcc\xb2\xd0\xe0\x37\xb2\x6f\x2d\x1c\x4f\x93\x99\xa5\x89\x76\x6f\x20\x69\x76\x64\x59\x1d\x1f\xe7\xf2\x87\x9c\x6c\xb5\xf0\x89\x8e\x26\x12\x44\xe9\x4a\xcc\xb2\x8f\xf1\x3a\x99\x89\x26\x18\xea\xe7\x64\xe4\x0e\xd0\x51\x67\x75\xb9\x7d\x4c\x53\x44\x40\xff\x64\x6d\xdb\x28\x40\x3e\x58\x91\x62\xa0\xb7\xdb\xa8\x78\x91\xf4\xbc\x22\xdc\xdb\x9c\xfb\xb6\x8d\xf2\xac\xb1\xc9\x15\xab\x8f\x63\xcb\xea\xc8\x5f\x96\x6a\xd1\x87\x39\x34\x19\xc6\xb2\xb4\x32\xf6\x57\x26\x9f\x3e\x0b\xd5\x43\xfe\x96\x2b\x2a\x30\x64\x98\x5f\x99\x0e\x79\x2a\xc6\x3b\x5c\xda\xb7\x54\x1c\xbd\x14\x93\xd4\xa0\x15\xd1\xe4\x3f\x6a\x19\xa4\xda\xad\xc3\x24\x9e\x6e\xb7\x7e\xed\x1a\x18\x57\x04\xd4\x06\xf7\x0d\x98\x37\x30\xa6\x2a\x86\x07\x31\x4a\xdb\xe4\x30\xbe\x47\xa3\xb4\xab\xa7\x0c\xb1\xf6\xb5\xcf\xb5\x21\xc4\x53\x88\x3d\xc8\xad\x25\x9a\xed\xcb\x73\x25\xbe\x82\x73\x00\xe3\xd8\x69\x3f\x9a\x7b\x5c\x09\x68\x5f\x73\x12\x28\x3b\xd4\x92\x2d\xe4\xd6\x78\x7a\xce\xc4\xbc\x95\xc6\x32\x25\x88\x6e\x5b\x71\xb6\x14\x49\x2b\x5b\xfa\x51\xcb\x8f\x0c\xe9\xd9\x8a\x13\x25\x45\x28\xcd\x08\x63\xe5\xe4\xdb\xa8\xee\xb4\x79\xd5\x87\x71\x63\xab\xff\x46\xb5\xaa\xfc\x78\x29\x1b\xc0\x20\x9a\xc5\x77\x2b\x3f\x0b\x6e\x42\xd1\x4a\xc4\x4c\x04\xf7\x22\xa9\x58\x29\xd6\x7d\xd3\xf7\xfa\xac\xd7\x57\x0b\xf0\x15\xee\x58\x20\xd2\xa7\x4e\xf1\xc8\x8d\x8b\x00\x3e\xdf\x37\x19\xc8\x0d\x5b\x20\xe5\x31\x84\x1c\x29\x7b\x0d\x88\xf8\xf3\x9b\x67\xcf\x6f\x21\xce\xa5\xd9\x96\x2f\x59\x09\xa3\xd7\xa0\xdf\xdc\xb6\x32\x46\xf1\xd3\xec\x75\x34\x17\x9f\xb7\x5b\x25\xa4\x2d\x13\x70\xe1\xb1\xb5\xcd\xf9\x73\x84\xc7\xe3\xe7\xaa\x13\xc8\xb2\xf0\x84\x4c\xcf\x50\xb8\xdd\xae\xb1\xf2\xbb\x78\x78\x3d\x29\x07\x93\xc2\x4c\x59\xdb\x16\xe4\xb0\xba\x6c\x90\xb3\xac\x07\x87\xac\xff\x60\x75\x66\x4e\xaa\x20\x44\xc7\xfa\x0b\x1a\xb7\xff\xfe\xf7\x14\x5b\x60\xb6\xc9\x4c\x1e\x42\x65\x0e\xc0\x67\xd5\x6e\x45\xb9\x2b\xbd\x19\x08\x95\x21\xb2\x6d\x54\xc9\xc1\x67\xc6\x92\x60\x1c\x39\x81\x4c\xe8\x44\x12\x04\x1b\xb7\xcc\x19\x86\xb5\xd6\xfa\x2c\xfc\x40\xd9\xb6\x39\x5a\x32\x1f\x24\x07\x8e\x85\x52\x4e\xce\xd2\xf3\x7d\x79\xe7\x29\x3d\x4b\x3b\x1d\x5c\x88\x98\x4a\xb0\x9f\x4e\x6d\x1b\x45\x93\x74\x9a\xbb\xdd\x92\xe4\x6a\x54\x73\x55\x2d\x39\x43\xaf\xc7\x3c\x8d\x44\x0e\x08\xb6\x03\x72\x3f\x48\xf7\x25\x65\x05\x5f\xc7\x79\x36\x56\xba\x84\xdb\x2d\x79\x2e\x38\x27\xcf\x33\x26\xda\x5c\xd8\x76\xd6\xe6\x59\x8e\x5d\x8f\x87\x68\xc9\xb5\xe4\xb4\xac\xe9\x00\x9b\x2a\x8e\xa9\x5d\x3a\x9c\x6c\x73\x9e\x1d\x3a\xfd\xee\x58\xac\x35\x53\x36\xb3\xa9\xc8\x5a\x7e\xda\x2a\x36\x68\xdb\xaa\x49\xff\x36\xa9\xc8\x8c\xda\xa5\x93\xee\xb1\xad\xc8\xba\xbe\x56\xe5\xae\xaf\xad\x20\xda\xec\x4a\xca\xc6\x38\xc5\x96\xb4\x05\x32\x86\x00\x7b\x06\x84\x02\x8d\x54\xd8\xa9\x7d\x66\x19\x2a\x75\xea\x8b\x38\x8a\x31\xca\x60\x32\xc5\x90\x70\xed\x43\xb2\xe0\x57\x95\x2e\x48\x45\xab\x22\xe1\x6d\xf7\xe0\x5e\xa6\x3a\xfb\x81\x16\x10\x49\x76\xb8\x68\x86\x67\x1a\x3d\xa8\x5b\x44\xb4\xd9\x41\x9b\xe4\x06\x4c\x18\x66\x4b\x31\xfb\xc4\x82\x92\x9e\x30\xea\xf1\x9a\xaa\x18\xb1\x91\x62\x0a\x0f\xc3\x87\x3c\xe9\xa0\x65\x64\x7c\x93\xf6\x73\xff\x2c\x5f\xef\xa3\x54\xf9\x57\x39\x09\x6c\x3b\xb3\xed\x76\x36\x89\xa7\xf2\x5c\x2c\x94\x2b\xe4\x4d\x3d\x8a\x80\x0b\xcd\xfe\xc9\x94\x82\xda\xae\xa6\xfe\x68\xc4\x60\x0a\x11\xe5\xf2\x41\x72\x2c\x82\x49\xd5\xf1\xa0\x37\xaa\x2a\x6a\xd6\x1c\x49\x1e\x23\x82\x62\xbc\x11\xca\x57\xaa\xe0\xf1\x58\xb0\xaa\xce\x58\xa0\x42\x1e\x49\x8a\xe8\x60\x28\x79\xf0\x83\x5a\xb7\x35\xce\x2c\x3b\x7c\xdc\x63\xbd\x32\x50\x30\xfa\x52\x91\x21\x90\xbe\xe0\x9f\x51\xf1\xba\x48\xfe\x54\xd4\x45\xb5\xc9\x02\x18\x34\xae\x1a\x3d\x2a\x07\xe9\x1b\x66\xdb\x53\x62\x90\x68\x62\x5d\x5f\xcf\xe2\x44\x9c\xfe\x92\x5e\xa7\x4b\x3f\x11\xf3\xeb\x6b\x4b\x1b\xf8\x36\x7e\xe1\x9b\x1d\x3e\x3b\x42\x67\x95\xdb\x59\xf7\x52\xfe\x94\xa0\x3f\x1b\x67\x6c\xa3\x02\x60\x5b\x26\xb6\x58\x6a\xc9\xe3\xa3\x79\xd5\x22\xde\x58\xe2\x98\x27\xb8\x8b\xe7\x82\x29\x0d\xca\xb1\xb5\x5a\x27\xc2\x62\x96\x86\xc7\x16\xcc\xe2\xd5\x63\x12\xdc\x2e\x33\x66\xfd\xd7\xff\xb3\x45\x5d\x32\x6a\x7d\x2b\xa2\x20\x6d\xbd\x5f\xa7\xcb\x4f\x7e\x22\xee\x5b\xe8\xb7\x30\x0e\x92\x78\xf6\xc9\x49\xd6\xd8\x52\x11\x11\x0c\x79\xa3\xf6\x53\xae\x13\x46\x0e\xc3\xab\xec\xb3\x0b\x5d\xf2\xf5\x2e\x7b\x0b\x11\x05\xf8\x8a\x24\x68\xb2\x35\x28\x21\xfd\x76\xab\x1d\x07\xa0\x98\x27\xc8\xc7\x4a\x25\x58\x9e\xfa\xb8\xb6\x9f\xb4\x13\xd5\x5c\xc9\x96\x1c\x06\x5c\x39\xe6\xd6\xe3\x0b\x1e\x77\xdb\x6d\x65\xbc\x50\xd3\x55\x1b\x1b\x0d\x7c\x75\x07\x52\x8f\xd2\x0e\xa4\xd0\xcf\x57\xce\x2a\x77\x7a\xf3\x15\x32\x92\xfd\x18\x2d\x55\xf9\xb4\xb9\x86\xe8\xff\x03\x3e\xd4\x4b\x8b\x0d\x48\x0d\xb5\x82\x24\x33\x86\x95\x4b\xf5\x40\x52\x15\x39\x06\x2d\xb5\x95\xdc\xed\x36\xbc\xe0\xeb\xb1\x18\x5b\x96\x81\x95\x0c\xc5\x3c\x55\x0c\xf8\xcb\x78\x2e\x5e\x64\x28\xc4\xf8\xbc\xdf\xa7\x23\x6f\xbb\x8d\x2f\xfa\x5e\x97\x8c\xb6\xdb\xb0\x43\xb4\x85\x12\xf2\xf7\x32\x77\x88\xcc\xee\x75\xa9\xbb\xdd\xfa\x17\xfd\x41\xb7\xd7\x1d\x8b\x71\x9a\x73\xf4\x21\x66\x31\x93\xef\x5a\x28\x1d\x42\xd8\xa1\x98\xf9\xa7\xaa\x44\x07\xc5\xa7\xaa\xa5\xf3\x73\xe2\xe2\x8e\xd7\xef\x77\x3d\x73\xa7\x3e\x60\xa4\x3b\xd0\x86\x91\x6a\xee\x8e\xca\x97\x86\xee\xd3\x53\xa7\x6d\x5b\x14\xb7\x9a\x1d\x06\xd1\x30\x26\x0b\xff\x46\xf9\x2d\x6e\xcd\x63\x91\x4a\xd4\xea\xcf\x66\x62\x95\xb5\x12\x71\x2b\x3e\x57\xa2\x39\x14\x93\x6c\xc0\x8a\x36\xdb\x1c\xba\x6c\xa8\x63\x36\x1e\x15\x07\xe5\xf2\x3b\xcf\x08\x83\xfa\xca\xdd\xeb\x73\xeb\xf9\x6d\xf5\xfa\xb2\x08\x49\xa1\x75\x18\x4d\x6b\x5a\xec\x93\x72\xeb\xdc\xea\xe4\xfa\xf2\x96\x22\xa8\x25\x45\xd8\xe1\x56\xcb\xea\x24\x9d\xbf\x72\xeb\xaf\x9d\xbc\x7f\xb8\x30\xc2\x8e\xc1\xb2\x7f\x5d\xc7\xd9\x99\x85\x3b\x7f\xb5\xfe\x8a\x21\xed\x58\x17\x2a\x4e\xfd\xf9\x73\xab\x93\xc9\x97\x63\x3a\xcf\x39\xc3\xb1\xd9\x9d\x04\x5a\x54\xe8\x6b\x51\xe1\x7b\x25\x2a\x8c\x1a\xac\x98\xb5\xa9\xb3\x6c\xa7\xb8\x1a\x96\x60\xcd\xc9\xe2\xef\xe3\x07\x91\xbc\xf4\x53\x81\xf0\x76\x9b\x19\x56\x56\x66\xcc\x49\xc3\xae\x12\x34\xe6\x4c\x5b\x50\x99\xde\x3d\x41\x63\xf7\x89\x4b\x9e\x42\x80\x4d\x8a\x69\x3e\x8a\xcd\x8a\x00\x04\xf5\x79\x0e\x79\xe5\x96\xbd\x80\x43\xf1\xd8\x6a\x59\xcc\x64\x8c\x31\xcc\xb4\x24\x2b\x58\xa0\xd9\x39\x0f\xb7\x5b\xcb\xe2\x7c\x9d\x4b\x3c\xd2\x13\xad\xc8\x32\x3b\x0d\x61\x99\x87\xbc\x59\x83\xd2\xa8\x9b\x89\x20\x44\xf3\xe7\x85\xe7\xf7\x62\xa2\x96\xf9\x44\xcc\x6d\x1b\x2d\xf9\xd2\x1c\x17\x17\xe6\x18\x83\x3f\x5e\x76\x52\x96\x76\x96\xfa\x68\x10\x46\xba\xa4\x88\xd6\x50\x1c\x91\xfd\x00\x36\xc7\x1c\x51\x7e\x19\xd6\xe8\xd5\x2c\x41\x8a\x72\xfe\x03\x01\xb7\x2c\x88\xb5\xf6\x63\xb0\x40\xb1\x84\x25\xb1\xa4\x82\xdd\x06\xbf\x40\x2f\xe3\x75\x94\x19\x42\xf5\x46\xb4\x22\x71\xab\xac\x0c\x2d\x23\xe7\x8f\x2f\xdc\x33\x14\x5f\x5c\x5c\x70\x82\xb5\xc9\x70\x86\x31\xb1\x63\xdb\x46\x81\x7c\x3e\xa9\x69\xd9\xee\x03\x83\xe3\x51\x76\xbc\x12\x18\xd4\x5c\x23\x28\xc1\x9f\xcf\xad\x89\xd5\x89\x3b\xd6\xd4\x82\x94\x57\x58\x23\x5f\x1e\x88\x67\x96\x5c\x7d\x93\xaa\x53\xfe\x62\xd5\x35\x03\xb5\x28\x48\x9f\x4e\xa5\x6a\x10\x34\xa8\x1b\xb6\xdb\xb1\x3c\x05\x78\xbb\xb5\xfe\xf8\xfd\x7f\xfd\xaf\xff\xd9\x6a\x73\xf3\xa0\x92\x77\x6a\x93\x29\xe1\x7b\x3a\xce\xd0\x4c\xb9\x1e\x9c\x9e\x48\xce\xca\x9f\x44\x53\x1e\x56\x0f\x59\x5a\x1e\x09\x5f\x69\x1d\xae\x95\x2c\xb3\x99\xa6\x10\xbc\x0a\x9f\x80\x48\x4a\x13\x09\x5e\x30\xae\x28\x05\xcb\xc2\x18\xe8\xc1\x87\x50\x7f\xa8\xb9\xa3\x5a\xab\x89\xd7\xa2\xc9\xe6\x83\x78\x40\xb5\x55\x5c\xde\xfc\x3d\xfb\x7b\xf4\xf7\xfb\xbf\x2f\xfe\x9e\xb4\xfe\xeb\x7f\xf9\x6f\xff\xfb\xef\xff\xed\xbf\xfc\x6f\x7f\xfc\xfe\xfb\x1f\xbf\xff\xa7\x3f\x7e\xff\xff\xff\xf1\xfb\x7f\xf7\xc7\xef\xff\xfd\x1f\xbf\xff\xe7\x3f\x7e\xff\x1f\xfe\xf8\xfd\x7f\xfc\xe3\xf7\xff\xe9\x8f\xdf\xff\xe7\x3f\x7e\xff\x5f\xfe\xf8\xfd\xff\xfa\xe3\x3f\xfd\x1f\xff\xf7\xef\xbf\xff\x7d\x4d\x5d\x3a\x54\xff\x47\x7f\x5f\x2f\xc4\x62\x61\x19\xde\xea\x30\x9a\x50\xc1\xcf\xd7\xac\xc4\x07\x3d\xa3\x28\x44\xf4\x5d\x77\x7f\x60\x7c\xa8\x0e\xb1\x9a\xc4\x5c\xdf\x6f\xce\xd7\x92\x53\x79\x7d\x77\x27\xe6\x81\x9f\x09\x58\xf2\xb5\x76\xff\x56\x26\x2d\xf8\xda\x79\x23\xd2\xd4\xbf\x15\x2f\x97\x7e\x14\x89\x10\x56\x7c\xed\x7c\x1b\xa4\x2b\xc9\xbd\xc0\x1d\x77\xe1\x5e\x6e\x87\xdb\x43\xeb\xfb\x8e\xe2\xca\x83\x05\xba\xdf\x8b\xbc\x27\x57\x28\x77\x8b\x2a\x97\xdf\x08\xb7\xe4\x33\x64\x48\x42\xbf\x9b\xda\x89\xcc\x4d\x8a\x95\x1a\x1b\xde\x9d\xcc\x6d\x7b\xa9\xe2\x60\x36\x2b\x0e\x4d\xa6\x10\x71\x72\x76\xe0\x88\x39\x3a\xc3\xb9\x17\x9e\x82\x87\x8e\x3a\x9d\xf2\xe2\xe3\x7e\xd2\xe9\xdc\xd5\xf4\xe0\xfd\x26\x39\x93\x18\x8b\x32\x44\xa1\xc0\x90\xe1\x1d\x24\xe8\x0e\xc3\xdd\xae\x6a\x5b\x23\xf0\xa6\x32\xb0\x1d\x1c\x28\x54\xce\xf0\x38\xa9\x65\x9f\x95\x6a\x8a\x31\xba\x05\x01\x04\xe3\x1d\x5b\xd9\xf6\xca\x89\xe2\x87\xbd\xcc\x2a\xad\x9a\x6f\x31\x46\x01\x47\x91\x92\x7c\x2c\xb0\x23\xf7\x22\x85\x48\xfd\x12\x27\x8e\xee\xf4\x2a\xf2\x1b\x48\x78\x8c\x02\x67\x15\xa7\x99\x59\x59\x08\x64\x0d\x6c\xed\xf8\xf3\xf9\xe5\xbd\x88\xb2\xef\x83\x34\x13\x91\x48\x1a\x2d\x5e\x2b\x05\x6d\xbb\xbd\x76\x82\x3b\xd9\xc4\x47\xa5\x33\x91\x8e\x51\xbd\x97\xeb\x6a\x3b\x48\x74\x2c\x0b\x24\xac\xd9\xc1\x61\x63\xc8\x32\x5d\xb4\xe0\x46\x32\xb3\x98\x25\xdc\x8a\xa3\x44\xf8\xf3\xc7\x34\xf3\x33\x31\x5b\x4a\x10\x6b\x05\x51\x2b\x44\x96\xd6\xd1\xb0\xea\xca\x01\x69\x4d\x5f\xa9\x92\x0b\x3b\x87\x15\x55\xd7\x39\x75\x12\x71\x17\xdf\x0b\x5d\x50\x3b\x8d\x28\x0c\xd9\x77\x75\x57\x17\xa9\xf6\x7d\x17\xaf\xb3\x62\xf6\xc1\xc5\x35\xb1\x8b\x92\x3e\xcc\x41\xfb\x57\x5f\x16\x96\x8f\xb9\x7f\x65\x6d\xbc\xac\x7d\xfd\x28\x45\x20\x15\x01\x41\x1d\xf1\xe3\x12\x7a\x8d\xb8\x74\x04\x29\xff\x33\x04\x45\x30\xa9\x2f\x90\xf1\x48\xab\x32\xe1\x73\x77\x1c\x21\xd1\x51\x01\x6d\x82\x42\x72\x68\xb0\x8b\x6a\xfb\xa8\xc0\xbe\x40\x9a\x4f\x84\x78\x2a\xd4\x31\xab\xd7\x1f\xee\x49\xc5\x8f\x56\xc0\x23\x43\x36\x48\xba\x28\x68\x40\x9b\x3f\x25\x71\x74\xdb\xd2\xa7\xb5\x42\x78\xd6\xd0\x60\x19\x87\x88\x1c\xc6\x02\xab\x18\x79\x48\x5a\xe3\xeb\x2d\x49\x5b\x41\xfa\xd6\x7f\x6b\x0c\x35\x5c\x86\xc4\x85\x3b\x8e\x58\x82\x51\x61\x2e\x40\x0e\xe3\x62\x15\x92\xad\xfe\x57\xb2\x2f\xc9\x3e\xf1\x9c\x2b\x02\x92\xa7\x42\x4d\x55\xd6\xfd\xc8\x62\x57\x9c\x2b\xca\x45\x56\xb3\x7d\xe0\x41\x83\xb9\x7b\xeb\xfd\x44\x1c\xa7\x2f\x0d\xc4\xd8\x33\x27\xb5\xd1\xa8\x3a\xbf\x14\x46\x90\x3e\xe1\x5a\x4e\x45\xa6\x2c\xcc\x59\xc9\x61\xb0\x9c\x1a\x45\x17\x2c\x90\x12\x45\x55\x78\xa1\x41\x55\x74\x51\x92\x3f\x9e\x9b\x2b\x81\x19\xc4\x48\x7a\x5d\x83\x19\x8d\x2d\x65\x37\x0f\x2c\x41\x7a\xda\x93\xf0\xc0\x35\x9e\x84\x49\x5f\x7b\x12\x56\xcb\xb0\xca\xe9\xec\x3b\xf5\xe0\x61\xb8\xcf\x03\xa0\xdd\xe6\x4a\x66\x37\x46\xbe\xf4\x68\xee\x39\xae\x8d\xe8\xf3\x21\xd7\xbe\xb9\x34\x0e\x45\x3e\x1b\x53\xd7\x77\xb9\x2d\xe7\xc7\x52\x43\xeb\x2a\xf7\x2d\xf2\xc6\x48\x7d\xe0\x45\xee\xd9\xea\xbd\x71\x8a\xfe\x52\xab\xa8\xc0\x27\x25\x28\xea\x63\xf8\xa0\xc2\x5f\x53\x0c\xbf\x18\xab\xd1\x6f\x8d\x47\xe4\xb7\x79\xc4\x8c\xd7\xb2\xc8\x10\xc3\xf7\xf2\x77\x80\xe1\x95\x91\xe9\xfd\xc6\x95\x54\x13\x7e\xe0\xaf\x9c\x05\x7c\xc3\x7f\x73\x16\xf0\x4f\x3c\x72\xca\xa3\x09\x3f\xf2\xc8\x29\xd8\x46\xf8\x95\x47\xce\x0f\x41\x94\x0d\x95\x20\x13\x7e\xda\xb7\x4a\x87\xbf\xf0\x54\x5b\x9b\x7f\xb3\x5e\x2c\x44\x02\xdf\xf1\xd4\xf9\xd6\xcf\xfc\x1f\x03\xf1\x00\x3f\xf3\xf7\xc8\xc5\xf0\x37\xfe\x1e\x51\x0c\xff\x9e\xbf\x47\x5d\x0c\xff\x8e\xbf\x47\x3d\x0c\xff\xcc\xdf\xa3\x3e\x86\x7f\xe1\xef\x91\x87\x41\x08\xfe\x12\xb5\x5d\x0c\x99\x7a\x20\x18\x12\xc1\x3f\x68\xaf\x21\x29\x44\xf2\xf9\x93\x78\x4c\x21\x90\x4f\xc6\xa0\x10\x62\xc1\x7f\x2a\x85\xf4\xef\x16\xe0\xcb\x84\x44\x05\x80\x82\xb4\x7c\xfe\x10\xdc\x2e\x33\x08\x65\xc2\x2f\x71\x10\xc1\x5a\x3e\xa5\x71\x92\xc1\x4c\x3d\xa9\xb0\x40\x73\xf9\x58\xa8\xca\x2d\xf5\x5b\xcd\x23\xe1\x42\xf0\x17\x35\xd3\xc0\x95\x4a\xa8\x47\xa7\xb9\x13\xfc\x0d\xb2\xe4\xd4\xcc\xaf\x6b\x0a\xe8\x70\xaf\xbe\xcc\xc5\x62\x2f\xfd\x56\x70\xdf\x79\xf9\xee\xed\xc7\xab\x0f\x70\x23\x9f\xaf\x7e\x7e\x7f\xf9\x2d\x3c\xca\xc7\x1f\x5f\x5f\xfe\x04\xd7\x82\xbf\x47\xa4\xee\x60\xaa\x38\x9f\x1f\x05\xfa\x84\x04\x88\xc9\xbd\x98\x2a\xfa\x04\x63\x78\x10\x8d\x04\x7b\x8b\x70\xae\x48\x86\x5f\x95\x21\xaa\x5c\x56\xe2\xa9\xb5\x43\x13\x32\xc5\xce\x8d\x5a\x41\x3c\x71\xa7\xb2\x92\x4b\xc1\xdb\xed\x5f\x6d\xbb\xdd\xfe\xb5\x72\x37\x94\x8a\xcc\xb6\xeb\x95\xeb\x1a\x89\xf6\x31\xae\xc4\x7a\x18\x3e\x8b\xa6\x08\x2c\x7c\x61\x58\xaa\x44\xb2\x54\xc9\xff\x2f\x97\xfa\xff\x53\x8e\x0f\xe2\xc5\x22\x15\x59\x05\x1f\x24\x3b\x78\x27\xf6\x91\xcf\xb5\x32\xaf\xb9\x11\x3a\x5a\x65\x0e\x0f\x8d\x81\xfa\x8f\x55\xa7\x38\x7e\x4b\x2d\x84\x8e\x01\xd6\x96\xb4\xc8\xc7\xfd\x8e\x05\x0b\xd4\x96\x15\x6e\xb7\x6d\x74\x67\xaa\xc4\x79\x55\xd6\xeb\xac\xb1\xaa\xaa\x69\x41\xa5\xb7\x79\xc0\xf3\x1d\x5c\xed\x37\x63\x72\xbc\xd9\x5f\x2d\x78\xb3\x9f\xb3\x08\x32\xc2\x5d\x88\x78\xae\x27\x06\x01\xff\x28\x94\x1e\xd6\x59\x74\x91\x9c\xe1\x60\x92\x4c\x79\x36\x49\x3a\x9d\x69\x89\x3b\xe1\x85\x38\xf0\x20\xf2\x83\x7a\x38\x12\x09\x44\xfb\x96\x9f\x4f\x92\xa9\x32\xf6\x7a\x2f\x8e\xdc\xbb\x05\xa0\x85\x6f\x0f\xda\x2e\xf0\x40\x4f\x7f\xc6\xd7\x47\x62\x9f\xcc\x4b\xa9\xef\x0c\x96\xfc\x0a\xa5\x3a\xbc\x8b\xba\xf6\x59\xda\x76\xfb\x12\x2d\x8d\xa3\x22\x9f\x2f\x8d\xe6\x92\x84\xed\x93\x29\x64\xdc\x3d\x6b\x2b\x8f\x2b\x35\xc7\x42\x59\xa7\x83\x23\x4d\xdc\xc7\x26\x00\xf2\x49\xca\x23\x15\xca\x6d\x6e\xdb\xeb\x0b\x6a\xdb\x68\xc6\x43\x34\x83\x6a\xd0\x48\xa0\xca\x94\xc5\x85\x84\xaf\x50\x11\xc6\x5e\xcf\xab\x32\x23\x4f\xf0\x59\x72\x91\xa9\xea\x83\x49\x36\xe5\xf3\xf1\x0c\xa5\x93\x6c\x0a\x19\x66\xf2\xb7\x32\xcf\x2f\x6b\x14\x65\xe9\x3f\xdc\x85\xec\x70\x72\x92\xa2\x85\x0c\x9f\x65\x17\xe2\x0c\x2b\x99\x7d\xd9\x37\x51\x59\xc4\x64\x07\x9f\xcc\xc1\xab\x9f\xb2\xa5\x28\x4d\xc8\x7f\xd5\x61\x40\x30\x7c\x10\x0d\x96\xbc\xcb\xdc\x2b\xca\x27\x31\x9e\x99\x52\xef\x84\x11\x6e\xb0\xfc\xa9\x86\x8f\x7f\x11\x7c\x53\xc6\x48\x65\x8d\x5b\xf7\xfb\x7a\x4d\xa0\x14\x13\xbe\x2a\x1a\x2a\xde\x81\xb8\x17\xc9\x63\x93\xd5\xdc\xbf\xab\x56\xf8\x75\xf1\x74\xf0\x0e\x16\x41\x18\x36\x6c\xe7\xd7\x66\xe0\x8d\x63\x5c\x04\x61\x26\x92\xa6\x3e\x5c\x99\xe5\xf9\xdb\x9f\xe8\x8b\xaa\x38\x9a\x37\x55\xfb\xcf\x7f\x72\x68\xd1\x5c\xa1\xb3\xa6\x2a\xff\xe5\xcf\x55\xd9\x10\xd4\xe8\xe7\x3f\x55\x53\xa0\xf1\x6c\x53\xd7\x32\xf1\x27\x6b\x9c\x85\xeb\xb9\x68\x0a\x8a\xd2\x12\x7f\xae\x4a\x89\xe2\x1b\x36\x47\x28\x9e\xda\x1d\x15\x2a\xa2\xa1\x6c\xfc\x64\xd9\x3b\x7f\xd5\xd4\xfd\xeb\x3f\xd7\x7d\x4d\xb2\x34\x74\xc2\x7f\xb2\x13\x15\x4a\xa7\xa1\x6c\xfa\x85\xb2\xf7\x22\x49\x45\x63\x78\x30\xc8\x78\x5e\xa6\x04\x68\x25\xab\x85\xb2\xe7\xca\x69\xbc\x7b\x16\x9d\x27\x67\x58\x3b\x43\x9f\x44\x53\xd0\xbf\x9d\xce\x54\xa7\x9c\x9e\x66\x26\x2d\xab\x46\xe5\x5d\x06\xe9\x0e\xd2\xf8\xae\xd1\xa2\xf6\xdf\xff\xa9\xf9\x93\x74\x5d\x53\x6d\x6b\xb1\x0f\xc0\x64\xe6\xf5\x8d\x42\xe8\x8d\x01\x77\x8a\x9c\x51\xe1\x62\x15\x02\x7e\xaf\xb0\x70\x05\xe5\xa3\x4f\x28\x81\x44\x61\x74\x8c\x12\x43\x45\x41\xe2\xdc\x3c\x66\xe2\x9d\x22\x68\x3a\xc1\xb3\xc4\xf9\xe6\xe7\xab\xcb\x8f\xd7\xef\x2f\x3f\x5c\x5f\x7e\x7f\xf9\xe6\xf2\xed\x15\xac\x2a\xb1\xa1\xb3\x71\xc4\xee\x51\x06\x11\xc6\xa7\x81\xe2\xb4\xbe\x3d\x42\x42\xe4\xd0\x6a\x1f\xb4\x83\x32\x38\xd9\xc1\xdb\x3a\x12\xcf\x3f\x1b\xf6\xfc\xb3\x40\xd5\x69\x03\x49\x68\xeb\xb0\x56\x66\x80\x91\x46\xf2\x01\x5f\xa1\xa8\x40\x92\xb1\xf6\x49\x18\x74\xb2\x8b\x64\x9f\x66\x2b\x79\x78\x2d\xf0\x3e\x0f\xce\xb0\x5e\xe8\x4e\x3c\xe5\xd1\x24\xee\x74\xa6\x3b\x78\x2d\xf8\x26\xf7\x03\x72\xb8\x3d\x83\x7d\x34\xb5\xd3\x7e\x44\x0e\x73\x46\x87\x39\x8d\x23\x92\xc3\xbc\xc9\x41\xde\x1d\x7c\x7f\x64\x56\x35\x4d\x29\x26\x37\x62\x6a\xdb\xb9\xd1\x7a\xa1\x45\x96\xd9\xb6\x0e\xdf\x60\xdb\x46\xf4\xdc\xc9\x30\xe7\x85\x6e\xdf\x0e\x5e\x1d\xa9\xf7\x7b\x49\xb4\x65\xfc\x56\xdb\x0d\xe1\xf1\x0c\x51\x6d\xfc\xc3\xbe\xd1\x82\x19\xf8\xed\x90\x66\x33\xf2\x75\xb4\x57\xd8\xb6\xaf\x51\x22\x29\x5f\x94\x80\x65\x42\x10\xe0\xed\x56\xbd\xaa\x98\x1f\xe6\x39\xd5\xcf\xca\x52\xaf\xd0\x51\x30\xdf\x1e\x92\x20\xd3\x6e\x44\x6d\xbb\x9d\x38\xf9\xab\xf9\x2a\x0a\x4d\x7d\xf3\xbd\x4c\x18\xff\x60\x7a\xc7\x90\xd2\x58\x4c\x8c\x47\x47\x81\x77\x27\xb7\x62\xbb\x45\xbf\x39\x0b\xfe\x4a\xc0\x2b\x67\xc1\x7f\x13\x18\x62\x14\x3b\x1f\x3b\xb1\xf3\xea\x59\xfb\x56\x94\x9a\xf5\x9b\x63\x06\x58\xec\x95\x64\xc1\x2a\x76\x67\x8f\xec\x37\xa1\x1c\x33\x55\xa9\xa0\xb9\x59\x52\xcd\x66\xd8\x36\x9a\x0b\xbe\x6c\x22\x82\x42\x51\x53\x6d\x54\xbb\xff\x07\xc1\x97\x68\x23\xa9\x1d\x7c\xb2\x44\x3f\x08\x78\x2d\x30\xcc\xe5\xc3\x42\x3e\x1b\x66\x13\x83\xfa\xb6\x51\x5c\x21\xfb\x56\xa8\x78\x5c\x6f\x05\xcc\x9a\x62\x5c\xe1\xcd\xae\x70\x54\xcf\xe6\xfb\x3e\xec\xd9\x07\x39\x82\x17\x42\xd6\x67\x69\xb8\x60\x81\x75\x63\x95\x69\x05\x88\xb0\xc0\x8a\xeb\xe9\xdf\xe7\xf6\x47\x61\x99\x5e\xd8\x24\x09\x0b\xc3\x0f\x32\x69\x25\x9e\xa2\xed\xe5\x76\xde\xed\x8e\xba\xc5\x4a\x73\x65\xd8\x19\x17\x1d\x84\x42\xde\x6e\x87\x78\x6c\xbd\x0c\xfd\xbb\x95\x98\x5b\xcc\xb2\x70\xc7\x78\x37\x82\x25\x57\x7b\xac\x23\x60\xc1\xd5\x0e\xeb\x08\xb8\xe7\xd1\x64\x36\x85\x5b\x7e\xbf\xdd\x6e\x76\x70\xc3\xef\x6d\xfb\x1d\xba\xc7\xf0\xc0\xdb\xf7\xdb\x6d\xdb\x77\x5e\x7c\xf3\xa3\x8e\xa2\x74\x25\xbf\xdd\x57\xe4\x06\x6f\xaa\x5d\x31\x7c\x4a\x72\x34\x62\x61\x2d\xab\x31\xdb\x72\xae\xe7\xa5\x8e\xe4\xfd\x64\x39\x45\xc9\xb3\xac\x13\x39\x31\x3c\x08\xbc\xcb\x69\xfa\xfd\x78\x6a\x8d\x75\x42\x54\x6a\x9d\x5e\xcf\x4f\x42\xdb\x46\x11\x47\x46\x14\xa7\x1c\xa6\xa0\x48\x89\x55\x5d\x16\x5d\xd0\x7e\x7f\x4c\xfb\x7d\x46\xfb\x7d\x3b\xc2\x10\x38\xf7\x93\x85\x6e\x3b\x70\x62\x88\xaa\xad\x2b\x1c\x53\x9e\x21\x65\xaf\xbf\x3b\x79\x18\xa3\x7b\x9e\xd6\x8d\xdc\xb5\x77\xb6\x35\x12\x70\x0f\x33\xb0\xae\xe7\x26\xba\x48\xac\xc3\x6b\xc3\x92\xbb\xb0\xd0\x50\x58\x02\x01\x13\xae\x38\xa9\xaa\x9a\xfd\x65\xbb\xb5\x2a\x92\x18\x8b\x73\x14\xf2\x47\x99\x79\xbb\xb5\x3e\x2a\xb5\x9d\xfa\xe7\xb0\xb0\x4f\xd4\xbc\x74\x32\x7e\x23\xd0\xbd\x3c\xe2\xef\xcd\xe9\x91\x2f\x27\x31\x4f\x60\x21\x11\x47\x04\x26\xc2\xf7\x2d\xd7\xd8\x4d\x6f\xd1\x93\xaa\x3c\x58\x6b\x20\xdc\x1e\xb2\xf6\x25\x9a\x08\x16\x08\xf9\xfc\xf6\x74\x81\xcf\xdd\xa3\xb9\x8a\xa0\xe7\xc8\xe7\x2b\x14\xe0\x67\x19\xee\x2c\x2e\x6e\x8f\xd7\x9a\x72\xff\x79\xa6\x4b\xa5\xfc\x0e\x25\xca\x80\x44\x3c\xb4\xfe\x82\x7c\x9e\x3e\x33\xc1\x3b\xe7\x48\xa8\xb9\x85\xcd\x0d\x8b\x21\x66\x0b\x08\x99\x0f\x82\xa5\x70\xcf\x64\xe6\xef\x50\x8c\x77\xf8\x6c\x79\x9e\x9e\xe1\x37\x48\xc0\xb2\xd3\x51\x7c\xd6\x15\xaf\x6c\x5d\xfe\x19\xfd\xa0\x00\xc7\x15\x54\x23\x5e\x58\x70\x8f\x31\xdb\xf3\x79\xae\x0d\x8b\x9a\x24\x26\xf7\xe8\xd4\x7c\xfb\xf6\x30\x5a\xd5\x3d\xe8\x2c\x3a\x14\xac\x7e\x26\x4e\x3f\x7f\x14\x78\xa7\xe2\xbc\x6d\xb7\xc7\x36\x92\xda\x3a\x27\x15\xfb\xd4\x7b\x98\x61\x90\x3b\x67\xfc\xa5\x3d\x13\x3f\xb9\x67\xe2\x71\xc1\xcf\x07\x63\xd9\x9b\x5b\x94\x80\xd9\x1b\x10\xe4\x5a\x89\x6d\xce\xa3\xfd\xaf\x98\x99\x04\xcc\x9e\xda\x6e\x26\x97\x5c\x41\x35\xf5\x3f\xa3\x9b\x36\xe7\x87\xaa\xef\xe3\x8f\xe8\xb6\x30\xd6\xfc\x88\x6e\x30\x66\x32\xa5\x1e\xc0\x51\xb5\x73\xbf\xdd\xce\xd1\x3d\x08\xb8\x9d\x88\xa9\xaa\xb3\xba\x98\x57\x90\x6c\xb7\xe8\xaa\x66\xd5\x71\x8f\xf5\x3e\x7f\xc1\xaf\x26\x0b\x31\x85\xf7\xbc\xdd\x7e\x61\xdb\xa8\xf4\x28\xf7\x42\x79\x58\xcb\x95\xb6\xf4\x1b\x86\x97\xbc\xc0\x22\x27\xb2\xc9\x3b\xa1\x8c\x85\xe5\x4e\xb9\x11\x72\x01\xe4\xd3\x63\x99\x78\xaf\x02\x60\xa1\x70\x6c\x56\x18\x4f\x56\x62\xca\xf9\x8c\xad\x54\xc7\xaf\xf0\x76\xfb\x03\xba\x7a\x02\xc6\xcf\x24\x70\xbf\x9c\xcc\xa6\xfc\x5e\x21\xdc\xef\x3a\xb1\xf3\x93\x42\xba\xe8\xbe\xcd\x6f\x55\xd4\x2d\x85\x88\x61\x06\x9b\x03\x02\x94\x65\xbb\x2a\x9e\xae\xef\xd1\x5b\x27\x5e\xe4\xab\xa2\xad\xe3\x66\xb0\x59\x24\xf1\x1d\x7b\x2f\x20\x5e\xb0\x97\x12\xb5\x59\x07\x75\x5a\xb2\xdf\x72\xc2\xaf\x9a\x3e\xca\x4d\x22\x1b\x7c\x0f\x33\x89\x85\xe1\x2d\x9a\x99\x04\xd5\x83\x4b\x21\x1b\xd1\xf8\x76\x57\xfd\xd0\x96\x05\x24\xb6\x4e\xb6\xdb\xab\x42\x48\xcb\xf9\x5c\xa8\xb5\x2b\x12\xe6\xa2\x5a\xaa\xe9\xd0\x11\x5c\x18\x0d\xeb\x21\xe5\x68\xbe\xd6\x1e\x6a\x12\x9f\x4e\x08\xd0\xe9\x9e\x4c\x18\xe1\x36\xd7\x15\xab\xaf\xf8\xe0\xb3\x8e\x4d\x55\xaf\xee\x6a\x2f\x97\x9e\x66\x5d\xc1\x0e\xeb\x6e\x35\x11\x12\xbf\xc8\x85\x7e\x3f\x7e\xc1\x5e\xca\x79\x78\xaf\x67\x79\x21\xe0\x65\xee\x76\xa6\xd1\x67\x4f\xdd\x50\x2e\x77\x9b\x67\xac\xcd\xf7\x43\xc4\xd2\x3e\x23\xb4\xaf\x2e\x27\x49\xb7\xaf\x2e\x0a\x49\xd7\x83\xbd\x1b\xb9\xc2\xd8\x36\xb7\x52\x27\xbd\x2e\x23\xbd\x2e\x90\x5e\x8f\x91\x5e\xa1\x7e\x5a\xb8\xe3\xcb\xfd\x77\x13\x8f\x32\xe2\xe5\x61\xdd\xba\x03\xd6\x1d\x40\x77\xc8\x0a\x1b\x56\x1d\x66\x52\x99\x38\xd4\x03\xd4\x56\x03\xc0\xed\x5b\xa3\x18\x4f\xe0\xd5\x30\x70\x15\x67\x7f\xd5\x20\xb6\xa5\x3a\x74\xaf\x7b\x78\x79\x75\xa0\x44\x54\xbd\x60\xca\x15\xa1\x87\x83\xbd\x0b\xa6\x81\x6b\x9c\x75\x12\x13\xa9\xd2\xa3\xfa\x82\xa9\xdb\xd7\xf7\x4b\xea\x3a\x69\x99\x5f\x27\x2d\xf2\xeb\xa4\x55\x79\x05\x74\x57\x68\x2c\xdf\x9b\x6b\x9b\xdb\xdc\xfb\xe7\x0d\x8f\x6a\xb7\x2b\x8f\x3c\x2a\x6f\x57\xae\x79\xe4\x48\x0a\x05\x1e\xea\x37\x38\x97\x3c\x72\x5e\x47\x8b\x20\x0a\xb2\x47\xf8\xcc\x6f\xe0\x1d\xbf\x76\xfc\x9b\x14\x3e\xf2\x6b\xe5\x45\xee\x8a\x5f\x6b\xee\x1d\xde\xf0\x6b\x27\x8c\x6f\xe1\x05\xbf\x76\xbe\x7f\x4b\xe1\x3d\x0f\xc6\xd6\xf5\x8d\xc5\x0a\x72\xf5\xa5\x4a\x09\x65\x4a\x85\x28\xfd\xa4\x52\x63\x93\x6a\x48\xd8\xd2\xbf\xcf\x07\xb4\x1f\x43\x1a\x7c\x75\x4e\xf4\x6d\x43\x22\xa7\x6e\xf8\x2c\x39\xcd\x4e\x09\x84\x1c\x91\xf3\xf3\x14\x9f\x12\x58\xf3\xf0\xe2\x82\xc0\x8c\xd3\xae\x62\x89\x3f\x2a\x07\x77\x3d\x7c\xaa\x1e\x06\x03\xcc\x5c\x98\x73\x57\xce\xe6\xb9\xbb\xdd\xba\x3a\x2e\x07\x79\x2e\xce\xdd\x31\x61\xae\x42\xf1\x48\xf0\x77\x48\x60\xdc\xe6\x62\xbb\x15\x9c\xf3\xcb\x31\x0a\xb8\x72\xde\x46\x98\x0b\x11\x0f\x31\x43\x11\xbf\x42\x6f\x90\xc0\xcf\x5f\x60\x10\xcf\x50\xcc\x55\x03\x92\xc4\x23\x92\xf4\x3b\x3d\x85\xf8\x19\xa7\x18\x90\xe8\xf0\xa8\xb3\xbe\xe0\x64\x3c\x7b\x1e\xb3\xd9\x33\x99\x8f\x9c\xae\x31\x7e\x16\x5f\x70\x2a\xf3\x76\x3a\x10\x3f\x97\x79\x55\xbe\x50\x36\x66\x5a\x31\x05\x51\xc0\x91\x78\x16\x9f\x12\xac\x4a\x67\x32\x27\x5f\x63\x26\x7b\xa5\x52\xd6\xd5\x4f\xdc\xc5\xf8\x2c\xbb\xe0\xc3\x33\x7f\x32\xef\x74\xa6\x5c\x52\x99\x01\x04\xcf\x39\xed\x7b\x90\x9d\xf2\x21\x3e\x53\xb1\xc3\x79\x74\x7e\x9e\x6d\x03\x48\x3b\x3c\x3b\x4b\x2f\xdc\x6a\xfe\x08\x22\x9d\x3f\x55\xf9\x73\xf9\xd1\xe4\xf4\x74\x3e\xdd\x72\x42\x87\xcf\x96\xe0\xef\x8a\xd5\xfa\x65\x6f\xb5\x8a\xa5\x89\xd5\xd2\x04\x72\x69\x7c\x1e\xcb\xa5\x49\x79\x70\x3a\x80\x90\x27\x6a\xb5\xc4\x24\x3c\x3d\x9d\xc2\x8c\x13\x3a\xb0\xd7\x3a\xbe\xd3\xc5\x05\x1f\xa8\xfe\xcc\x64\x0f\x9e\xcd\x3a\x2a\x5a\x6f\x78\x7a\x6a\x3a\xa3\x3b\x3f\xb3\x65\xcd\xa7\x6a\xd5\x67\x17\x17\xfc\x34\x2d\x07\x12\xa9\x82\xd1\x7e\xc1\x60\x81\x5c\x15\x34\x60\xc6\xc9\xa9\x5f\x44\x90\x98\x71\xce\xe3\x9c\x8e\x8d\xc6\x6f\xfd\xb7\x6c\x3d\x3e\xbd\x64\x97\x27\x51\x87\x9b\x59\x9d\x9d\x72\xdf\x18\x5d\xa0\xb5\xf2\xde\x87\x9f\x45\x6a\xca\x67\xa7\x19\x2e\x27\xe2\xdb\x5a\xd0\xe7\xee\xf4\xfc\x9c\xf6\xb6\x62\x42\xa7\xe7\xe7\xc4\xdb\x8a\x09\x99\x9e\x9f\x0f\xb7\x62\xe2\x4e\xcb\x32\x6f\xcb\x32\x13\x39\xf7\xa2\xf2\xed\xf5\xfe\x37\x10\x17\x17\x43\x9b\xf6\xfb\x95\x4c\xdf\x1f\xcd\x24\x1f\x88\x97\x3f\xd1\xde\x5e\xc1\x57\x95\xde\xca\x03\xd7\xa7\x30\xac\x0c\xe6\xb7\xbd\xcf\xb4\x0b\xbd\xca\xe7\x9c\x9d\xdf\xdc\xa1\xaa\x85\xc3\x93\x57\x45\xe6\x9e\xa8\xa8\xe3\x9b\xba\x26\x6f\xc0\x17\xa8\x93\xe0\x5c\x52\x24\x26\x2f\xa7\x86\x5e\x7f\xc8\xe9\x75\x25\x40\x6e\xe7\xbc\x0d\x17\x93\xf7\x53\xe7\xfa\x06\x7c\x1e\x74\xc4\xe4\xd3\x14\x52\x9e\x3b\xf5\xf0\xc1\xef\x94\xea\x91\xd1\x38\x65\xa9\x63\xe4\x94\xa8\xd2\x85\x7f\x42\x45\xb4\x1d\x88\x73\x95\xc5\xa2\x1b\xfe\x97\xba\x91\x8b\x39\xd3\xa2\x2b\x21\xf7\x75\x57\xd6\x3c\x42\x9d\x40\xc2\x72\xf7\x6c\x76\x9e\x9d\xcd\x3a\x1d\x9c\x4e\xc2\xce\x6c\xca\xd7\x93\x78\x3c\x63\xd9\xe9\xec\x94\x4c\x77\xb2\x19\xc9\xe7\x6a\x96\x6c\x5d\xc3\xf4\x37\x9a\xfe\xdf\x6e\xf7\xd2\x55\x44\x58\xc3\x00\x6c\xb7\xeb\xa6\xbb\x5a\x1d\x34\x56\x67\x2c\x48\xff\x1b\x15\xc7\x12\x6a\x24\x7b\x9b\xdf\x28\xf2\x53\x52\x0e\x85\xd8\xf6\x47\xf8\x95\xa3\x9b\x26\x7d\x0e\x13\x67\xfa\x46\x57\xf8\x19\x2d\x94\x62\x47\x35\xea\xec\xe7\xca\x76\xf8\x89\xaf\xd0\x67\x0c\x7f\xe1\xee\xd9\x4f\xb9\xe0\xf5\x2f\x67\x18\xfd\xc8\x7f\x9a\xfc\xa5\xd3\x99\xe2\x20\x6a\xdd\x6c\xb7\x29\xba\x81\x1f\xe1\xf3\xe4\xc7\x29\x3e\x89\xb7\x5b\xf4\x6b\x8d\x9c\xbe\xc1\x3b\xd9\xa7\xef\x74\x78\x5d\x1d\x0e\x17\x51\x49\xdb\x57\x03\xc6\x29\xfd\xc4\x28\x1b\x9e\x7c\x97\x3f\x21\x17\x28\xe9\x0d\x7a\xc3\xae\xd7\x1b\x62\x28\xd3\x49\x99\x3e\xc2\xd0\xfe\xce\xb9\xcd\x0b\x60\xdb\x2e\xdf\x08\xde\x6e\xc3\x5a\xec\xda\x8d\xa9\x61\x4f\xdc\xfb\x73\x25\xc8\xb1\x80\x4c\x1e\x7b\x79\xde\xb4\xec\x40\x69\x3f\x7c\x6d\x81\x9d\xa4\xed\x35\x31\x56\x9f\xfd\x7c\xda\xeb\x6b\x97\x4b\x65\xd5\xbd\xb8\xbe\x8c\xbd\xe1\xf7\xe5\x45\x9f\x46\x97\x19\x06\x57\xbb\xa8\x9b\xbc\x9c\xf2\x6c\x07\x8f\x07\x12\x43\x53\xfd\x23\x58\x39\x75\x60\x61\x98\x21\x21\x1b\x2c\x53\x72\xaa\x66\xf2\x72\x0a\x01\x9f\x1b\x15\xad\x40\xe2\xd2\xe0\x22\xda\x3f\x24\xe5\x65\xbc\x3a\xd0\x28\xa9\xc4\xa1\x18\x47\xa7\x01\x5b\x4a\x1e\xed\xb0\x5c\xc9\x93\xab\x2e\xbf\x9f\x72\x1d\x23\x6a\xf2\x69\xca\x83\x62\x18\xc9\x0e\x02\xdb\x46\x3f\xa0\x9b\x3d\x71\xd7\x75\xa8\x64\x5b\x8f\x15\x89\xd9\xf5\x4d\x91\x74\x24\x67\x55\x8e\x76\x1d\x5b\x18\xc3\xde\xc2\xdf\x1e\x2c\x7c\x71\x22\xbe\xd1\x73\x47\x40\xe0\x89\x3b\xcd\xd7\x52\xf9\x10\xdd\x5f\xfb\x23\x65\x54\xde\xd7\x51\x46\xbc\x86\xb0\xfb\x26\x2b\xad\xde\x61\xa8\x18\x1a\x06\x21\x65\x06\xad\xa8\x48\x1c\x12\xd1\x48\xa0\x5f\xb4\xfe\x67\xaa\x6c\x55\xab\xcc\xfb\xd6\xa5\x4d\xe3\xf8\x16\x99\xba\x7a\xfb\x75\xe1\xa2\x0b\xff\x70\xc9\x8b\x8b\x0b\x57\x95\x56\xde\x35\x9a\x8b\xff\x72\xb4\xb8\x41\x54\x45\x79\xaf\xf7\x64\xf9\xe1\x41\x79\x8d\x07\xa1\xf9\xa8\xff\x53\xb1\x70\xf0\x56\x89\xdf\x8f\x9c\xf0\xa6\x7c\xfb\x2b\x5c\xc9\x27\x97\xe2\x75\xf5\x42\x7c\x22\x79\xb9\xbc\xf2\x7f\xbc\xd4\xfe\x82\x55\x0a\xc9\x09\xfb\xfe\x68\x53\xff\x78\xa9\xc3\x45\xda\x2b\xf6\xdb\xf1\x62\xb5\xb5\xa9\x14\x93\x8b\xf2\xea\xa0\xd8\x0e\x9f\xdc\xa2\x7d\x08\x08\xb7\xa8\x0e\xb5\xd2\xda\xc1\x35\x2a\x50\xca\x19\x7e\x95\x13\xe2\x37\x90\x14\x9c\x10\x7f\xac\xf2\xb8\x05\x4f\x6b\x5c\xc2\x1f\xe5\x61\x35\xaf\x6a\x78\x51\xc5\x85\x56\x3d\x37\x56\x02\x74\xe6\x9c\x64\x6e\xc7\xd9\x3b\xd0\xce\x2f\x94\x76\x6a\x5a\x89\x45\xb8\xd6\x9e\x0a\x58\x19\xe7\x7a\x61\xea\xca\x51\x0e\x55\x26\xdd\xeb\x61\x87\xbc\x8d\xda\x35\x66\x6f\xbb\x6d\x97\xcc\x9e\x72\xfe\x63\xbc\xfe\x58\xaf\x0b\x7d\xbc\x8a\x6a\x9e\x7a\x34\xa2\x7b\x9d\xf2\xba\xd0\xef\x82\x8a\xae\x17\xa8\xbd\x55\x26\xe7\xcf\x66\x1f\x54\x5e\xbc\x9e\x96\xfd\x57\x02\xef\x9e\xcd\xce\x47\x67\x18\x25\x3c\x9a\xcc\x95\xc7\xa1\x29\x1e\xa3\x00\x25\xd5\x15\x53\x8b\x55\x4f\x4b\xd5\xfd\x15\x5b\x2b\xdf\xf5\xa5\xea\xf4\x8b\x6f\x7e\x64\x21\x68\xd5\x37\xb6\x06\xa5\xf7\xc6\x7c\x90\x2b\xce\xd2\x9a\xbb\xe4\x5a\xb0\x54\x99\xda\xa8\xce\xea\xe6\xda\xb3\x89\x1f\xcd\xe3\xbb\x23\x61\x2f\xcb\x20\x3e\xda\x33\xaa\x95\x4b\x11\x4b\xa5\xe6\xb1\x65\x31\x01\x16\xbe\xb6\x00\x75\x3a\x49\x27\xc2\x85\x8c\x09\x75\x3d\x5c\x28\x0a\xf7\x9e\x72\x7c\x52\x3a\x18\xde\x8f\x9a\xb5\x4e\x45\xf2\xe2\x56\x44\xd9\x76\x6b\x59\x95\x98\x59\xa4\x77\xd4\x70\x72\x70\x44\x1b\x3b\x57\x61\x4b\x94\x0a\x9b\x70\xae\xb3\x46\x6b\x7a\x15\x03\xfb\xc0\xc9\x04\xb4\x94\x69\x5c\x2b\x11\xbf\xae\x83\x44\xcc\x2b\xaa\x6c\xb5\xa0\x3a\xa4\x77\x54\x21\x7a\x3f\x42\xf1\x70\x90\x6f\xf9\x91\x16\x94\x28\xc1\xc6\x93\xe6\x57\x91\xa3\x17\x62\xbb\x45\xf9\x23\x0f\xc6\x9b\x1d\x4b\x8a\x0f\x9b\x1d\x3e\xb1\xae\x2d\xce\x45\xe9\x3f\x69\xbb\x55\x42\xd2\x6c\xbb\xf5\x51\x06\x22\xf7\x62\x1e\x2b\xf7\x3b\xc6\x0c\xbb\x37\x62\xa4\x37\x82\x03\x6b\xdf\xca\x51\x6e\x70\x32\xa9\x5d\x41\x92\xbe\x8b\x6b\x91\x0f\xe4\xd3\x93\xe6\xdb\x0f\x9f\xaa\xd6\xdb\x5a\x2f\x79\x88\xcd\x20\x20\x6e\x72\x38\x13\x34\x1b\x50\x37\x1a\x79\xc7\xb6\x6d\xac\xa9\xe3\x71\xc0\x22\x8c\xcc\x06\x76\xac\x8e\x26\xe1\xd3\x2c\x4e\x04\x4f\x0e\xcd\xc0\x4b\x97\x4b\xfd\xa3\x0e\xa5\x7a\xfd\xa3\x81\xa8\x94\x8e\x71\xdd\x57\xa8\x8b\x15\x95\x6d\x72\xbd\x51\x1e\x54\x9a\x22\xa1\xb7\x4b\x03\x01\x31\x89\xa6\xdb\xad\xd8\x8f\xb6\x12\x4c\xe4\xd6\x9d\xd6\x62\x1d\x69\xf9\x9f\x5a\xb4\x3c\x50\x15\xe9\xd7\x54\xc4\xf3\xbd\xa3\x34\xbe\x4f\x32\x94\x39\xef\x21\xbf\xa9\xac\x6a\xb2\x29\xed\xe7\x1d\x06\x81\xba\x5d\x8c\xac\xf2\x8b\x8a\x21\xde\xed\xb2\x6e\xd7\x88\x21\x95\x88\x51\x35\xd4\xad\x37\x74\x20\x16\x34\xad\x2a\x6f\xbb\x3d\x17\xa3\x9e\xe9\x40\x27\x73\x5e\x3d\x6b\xcb\xcd\xe0\x61\x34\x99\x3a\x4a\xe7\x4d\x01\xc3\xa2\x67\x47\xd5\xe0\x92\x9c\x97\xa8\x91\x32\x4a\x29\x73\x43\xa8\xc7\x08\xf5\x8c\x70\xb4\xec\x67\xef\xab\x27\x44\xa9\xcb\x29\xc9\x62\x39\x15\x32\xad\x3a\x09\x0a\xff\x95\x95\xf7\xff\xc1\x49\xa0\x47\x26\x41\x6b\xdd\xd5\x67\xe1\xb8\x26\xde\x9f\x99\x06\xef\x1f\xec\xa9\x32\xe5\xb7\x0a\x35\x3b\xeb\xff\x21\xee\xdf\xf7\xdb\xc6\x91\xfc\x01\xf4\x7f\x3d\x85\xc4\xd3\xcb\x05\x22\x98\x26\x25\xf9\x46\x07\xd6\xb8\x1d\x27\x93\x99\xc4\xce\xc6\xee\xee\x99\xd5\x68\xdc\xb4\x08\x59\x9c\x50\xa4\x86\x84\xec\xb8\x25\x9e\x67\x3f\x1f\x5c\x09\x52\x94\x2f\x3d\xbd\xbf\xd3\xbb\x13\x8b\x20\x88\x6b\xa1\x50\x28\x54\x7d\x0b\x45\xb8\xe3\xb6\x92\x76\x94\x8c\xc6\xb6\x2d\x4e\x5c\x1e\x1c\x25\xe3\xca\xa9\x3c\xc2\x1d\x8f\x43\x87\xeb\x4e\x46\x66\x87\x9e\xb0\xd9\xdb\xec\xd3\x33\x16\x4c\x7a\x8e\x92\x72\x7a\xea\x9d\x3e\x78\x65\xa7\xf9\xe2\xee\xb8\x2d\xde\x6f\xab\xda\x55\x87\xa5\x55\xd5\x13\x1b\x9d\x4d\xaa\x9d\xfd\x63\xfb\x29\x1a\xb5\xbd\xb3\x87\xaf\xec\xac\xab\x02\x41\x4a\x12\x14\xe6\x8f\x8c\x06\x4d\x1a\x35\xbb\xd4\x60\x20\xf9\x1f\x50\xe4\xd1\x0b\xda\xbb\xd7\x13\xed\x55\x7e\xbc\x1a\xad\xb5\x1e\x88\x96\xdf\x1a\x70\x9e\xeb\x95\x81\x68\x5b\x25\x92\x65\x87\x7b\x7e\x54\xaf\x90\x8d\x00\x44\x44\x00\x5b\xea\x9e\x66\xe9\x7c\xe3\x40\x99\xa9\xb0\xc1\x02\xcb\x74\xda\xb4\x51\xb1\x51\x18\xb2\x7f\x7c\x21\x20\x2e\x36\xed\x9c\xe7\x78\xb1\xc5\x08\xfc\xbe\x34\x02\x9f\xcb\x38\xc4\x31\x98\x71\xbd\xc2\x3d\x0f\x28\x4c\xc1\x1c\x2d\x9a\x8d\x87\xb9\xd9\xb6\xb8\x66\xbd\x5d\xaf\xa7\x58\x38\xa0\xf0\xb0\xfe\x90\x43\xc1\x2f\x85\x17\x24\xc8\x70\x00\x66\xda\xdd\xfc\x38\x3b\xb9\x3b\xbe\xeb\x76\x61\x0e\x96\xe8\x0e\xdd\x0f\xe7\x60\xc6\x43\x1a\x43\x9f\xfd\x95\x81\xa6\xb8\x4d\x00\x96\x91\xac\x67\x4c\xc6\xe6\x65\x1d\x77\xc0\x04\x87\x55\xab\x73\xb3\xac\x08\x84\x68\x8e\x46\x13\x69\x02\x75\x37\x66\xb4\xe5\x4f\x94\x31\xba\xba\x76\x97\x8d\xc1\x77\x68\x29\x09\xa6\x7e\x7d\x26\xaf\xc5\xf6\x3c\x9f\xfd\xcb\x2f\xbc\x64\xe4\xaa\x32\xb8\xad\xb8\xd2\x62\x84\xb5\xef\xbe\x62\x21\x28\x4c\xdb\x04\x8f\xc6\x8e\xb4\xdb\x65\xac\xae\x93\xd8\xb6\xb7\x3b\xf2\x74\x22\xf0\xd0\x8e\x0b\xdf\xba\xc6\xda\x00\xd1\x7a\xad\x78\x78\x62\x92\xcf\x13\xf6\xbf\xd1\x30\x69\x0e\x5f\xbf\x5e\xbb\xfe\x4b\x56\x91\x44\xb1\x55\xab\x68\xdf\x7b\x7a\x7b\xbb\x32\x5a\x25\xc2\x52\xfa\x3c\xaa\x36\x2f\x53\x0e\xe2\x81\x7f\xc0\x85\xbc\xfd\x97\x45\x23\xec\xf7\xc5\x5a\x3c\xdc\xd3\x52\x8f\x86\x16\xaf\x88\x3f\x87\x7d\x08\xc4\x32\x50\x6d\xa8\xf9\xe6\x08\x55\x1e\x95\xa8\xe1\xfc\x21\xc2\xae\xfc\xf5\x0d\xd3\xa2\x1a\xc4\x50\x38\x0f\xc8\x8f\x10\x95\xbf\xbe\x29\xcb\xcc\x9b\xa8\xdb\x95\x44\xd5\x21\xeb\x75\x76\x82\x55\x3c\xe7\x21\x50\x35\xc9\xc5\x92\x00\x8f\x47\x3b\x70\x91\x00\x13\xc2\x98\x0e\x33\xbf\xb4\x5b\xa0\x43\x32\xca\xc6\xfe\x28\x43\xec\xef\x98\xc9\x03\x65\xe8\xb6\xc8\x39\x55\xd3\x83\x23\x71\x12\x45\x99\x46\x25\xca\x8c\x20\x6f\x99\x11\x0a\x8f\xd3\xb5\x04\x22\xe6\xec\xfb\xb0\xef\x1f\xf6\xd1\xe1\x9e\x7f\xb8\x57\x8a\x6f\xfb\xaf\x91\xaa\x24\x8a\xf9\x68\xcc\xdd\xb5\x4c\xc2\xe4\x1e\x98\x1d\xac\x10\x7f\x1b\x89\xb4\x6a\xff\x6d\x00\x71\x4b\xe4\x3a\x69\x2e\x6b\x9e\xf6\x90\xe5\x93\x1a\x39\xaa\x3e\x49\x52\x52\xde\x9b\xfb\x83\xd7\xf7\x43\xde\x01\x1b\x61\xde\x47\xe3\xaa\xdb\x1a\xee\x74\x52\xb5\x2c\x8d\x17\x4d\x4b\x33\x28\x7b\x9d\x9a\xbd\x6e\x34\x60\x17\x82\x78\x00\x35\x60\xfa\xb6\x15\xaa\x9d\x77\xc5\xd8\x70\xd8\x61\x6d\xfd\x1b\xe3\x7c\xc7\x13\xc8\xd6\x1b\x5b\xbb\x6d\x83\x58\x7b\xac\x82\x18\x25\xa0\xaa\x0b\x84\x28\x7e\xeb\xf2\x4c\x79\x37\x86\xc7\xf1\x09\x76\x8f\xe3\x9d\x1d\x18\x4d\x41\xcc\x8f\x6f\xb6\x4d\x47\xf1\xd8\xf4\x24\x8e\x59\x7b\xc4\xef\x1d\xaf\x3e\x29\x4a\x87\x23\x51\xf2\x25\x43\x2d\xb9\xc6\x6b\xe5\x56\x6f\x8b\xdc\x3a\x0f\x16\x55\xa1\x75\x8b\x91\xff\xef\x90\x0f\xf6\x5f\x23\xb1\xee\xc9\x06\x5e\xf1\x06\x6e\x46\x7b\xd1\x17\x61\x04\xe8\x90\x7d\x1d\xc1\x9c\xb4\x01\x0f\x81\x26\xe6\x7a\x55\x20\x48\xa7\x8d\x56\xff\xcd\x9e\x4c\x1c\x70\xa0\x09\x26\xa1\x26\x1d\x40\xa0\x3d\x9d\x40\x52\x19\x1b\x62\x62\x30\x28\xfb\x72\x4c\x51\x22\x46\x4c\x6c\x84\x35\xfc\x8d\xfd\x57\x09\xbb\xdb\x26\xd4\xf4\x04\xad\x4c\x6c\xa3\xe3\xc4\x0b\xc4\xda\xca\x8c\xf3\x6b\x9f\xea\xa4\x7b\xfe\xc0\x33\x26\xfd\x55\x42\xec\xd3\x9d\x68\x6a\xff\x7f\xd2\x74\xef\x99\xa6\xbf\x44\x9e\x55\x4d\x3f\xf0\x6a\x01\x92\xfb\x7b\x6a\x13\xe5\x0a\xa1\xd1\x58\xdc\xef\x1a\xfd\x6b\x08\x67\xa7\xe1\x33\xb3\x2a\xb5\x0a\x63\xad\x26\x05\x46\x0a\x0c\x27\x06\x11\x00\x51\xb8\x3d\x44\x53\x40\xb1\xe1\x66\x91\xf9\x14\xe9\x88\xad\x39\xac\x22\x07\xab\x0b\xbd\xf2\x62\x38\xc6\x22\x8a\x1b\x5a\x32\x96\xc8\x7e\x4c\x70\x0a\x96\x3b\x31\x44\xa1\x61\xd1\x32\x81\x68\x86\xdd\xe3\xd9\xdb\xc9\xf1\xac\xdb\x85\xe1\x68\x36\xc6\x65\x90\x70\xb1\x36\x34\x50\x58\x77\x06\x7d\x7e\x0d\x16\x77\x67\x63\x03\x89\x5d\x6c\xa5\xca\xf2\x4a\x70\x36\x19\x6b\xcb\xb0\x7f\xe2\x30\x12\x6c\x5e\x0e\x5e\x23\x0e\x32\x5e\xd7\xdf\x42\x55\x79\x3a\xaf\xd1\xd4\x36\x8f\x9c\xdf\xc1\xed\x0e\xbc\xd7\x08\xad\x5e\xed\x34\x24\xfc\xfa\x79\x1b\x33\xca\xc8\xc7\x43\x3d\xd4\x1f\x57\x64\xd5\x0a\xe9\x04\x3c\x27\x28\x51\x52\x37\xac\xef\x64\x0e\x05\x5c\xb7\x65\x3b\xdd\xe6\x45\x64\x48\x0d\x0a\xfb\x56\x79\x56\x56\x9f\x91\x44\x4c\xa8\x6c\x5f\x52\xee\x17\x30\x7e\x35\x36\x77\x50\x53\x70\x09\x4f\x7e\x20\x5b\x24\x8a\xe1\x56\x7a\x3c\x73\xff\x59\xe9\xf8\x5d\x40\x89\x85\x56\x49\xfa\xb0\x69\xcd\xc1\x2f\x97\x59\x06\xae\xc6\xbb\x8e\xe6\x1c\x50\x5d\x4b\xce\xbc\x86\xed\xea\x25\xb1\x31\x55\xa8\x09\xb0\xc2\x8c\xbb\x7c\x9a\x7e\xbc\xba\x14\xf4\xdf\xc1\x38\x83\xba\x39\xc6\x0b\x3f\x13\x3c\xbf\xef\xef\xf5\x0d\x7a\x79\xcd\x0e\xce\xe9\x24\x91\x78\x0c\x4f\xb3\x14\xb9\xe5\x08\xb8\x59\xd5\x7d\x6e\x4e\xe1\xd0\xf4\x2f\x57\x97\x17\x00\xae\xd7\x5e\x07\xe3\x8d\x9e\xb0\x97\xd2\xeb\xc4\x6c\xfd\x66\xe1\x5c\x58\x81\x66\x5f\xd9\xa7\xfe\x86\xa0\xaf\xa4\x2c\xca\xcf\xdb\x0a\xe9\x2e\x59\xce\x6f\xb9\x39\x87\xda\x53\xd7\x6b\x1d\xed\x9e\xc2\x61\x65\x4c\x01\x94\xf1\x4f\x04\x64\x77\xd5\x18\xb3\x4e\x57\xfb\xcd\x13\xa9\x10\x51\xbf\x64\xd1\x3c\x12\x90\x65\x28\xab\xf5\xbe\xc5\xbd\x9e\xb2\xf5\x5a\x44\x63\xcf\x10\x45\x04\xec\x0d\x20\x34\xa1\x59\x07\xfe\xde\xa0\xbc\x9b\x39\x38\x68\xaa\xae\x5a\x2c\x3b\xd8\x94\x50\x0b\x09\xa6\x8a\x0a\x5b\x95\x89\xe9\x5a\x56\x07\x5b\x1f\x93\xfb\x20\x8e\x42\x9e\x6c\xd9\xb6\x00\xb0\x07\x74\x1b\xf4\xb9\x18\xe2\xc4\xf0\xfe\x69\x95\xb8\xc6\x64\x98\x19\x2f\xfc\x6a\xd9\x12\x00\xbd\x84\xb5\x3f\x38\x7c\x56\xc3\xaa\xec\xd2\x2d\xb4\xba\x8d\x92\xd0\x27\x60\x30\x10\x47\xd0\xc1\xc0\x1f\x0c\x0c\xb2\x7e\xc9\x26\x7a\x70\x24\xc9\xda\xed\x9b\xca\xf8\x59\x90\x7f\x94\x02\x1c\xd7\xc7\x6f\x1a\xc3\x73\xf5\x65\x3b\x62\xf3\xc4\xef\x5b\x40\x84\x12\x75\x21\x52\x3b\x0c\x94\xd2\x5b\xc7\x94\xde\xd6\xeb\x0e\x35\xa2\xa1\x7a\x22\x1a\x2a\x50\xb1\x19\x45\x35\xda\x5f\xa4\x12\x92\x87\x43\x7f\x71\xdf\x3f\x01\x3f\x74\xcc\x84\xfb\xea\x87\x86\x78\xdf\x51\xb2\x7d\x47\xc9\xf6\xca\x26\x59\xc5\xd6\xaf\x84\x43\xf5\x0e\xdd\xe6\x49\x10\x06\xb3\x59\xc3\x60\xa0\x04\xef\xfe\xf3\x1f\xf9\x1b\x2d\x1a\x83\xd1\x3f\xdb\x60\xfc\x06\xee\xb6\x04\x90\xbf\x22\xe9\xbd\x7d\x68\xdb\x14\x64\x0a\xdf\xff\x39\x78\xe2\x32\x0e\x05\xb0\xac\xae\x70\x89\x9d\x73\x60\xe7\x04\x8e\xbc\xb1\x04\x79\x2e\xef\x17\xad\x42\x4a\xb5\x95\xb0\x66\xde\xe1\xcb\xe0\x0b\x07\x0a\x88\x69\x70\x50\xd5\x3e\x0c\x8e\x20\xb0\x3e\x07\x0b\xab\xea\xeb\x50\x77\x6b\x2a\x2d\x19\x6b\xe7\x3d\x75\x76\x73\x0d\x75\x9b\x5b\x51\xcb\x56\x4d\x00\x8d\xd8\x2c\x77\x84\x9e\x27\x34\x7b\x94\x9b\x1c\xe2\xcd\x80\xa8\xd4\x79\xb1\xe3\x9c\x73\x5f\xf7\xb9\x32\xfc\x21\x33\x27\x24\xd3\xda\xe7\x62\x3b\x75\x7d\x09\x54\xc5\x6f\x0b\x38\x5f\x3b\xf0\xbd\xc1\x01\x1a\x1c\xf8\xec\xdf\x23\x7f\xc0\xef\x22\x0f\xb7\x5f\x04\xf1\xc5\x73\xe4\x6a\x10\xa5\xfc\xdf\x19\x55\xe8\x59\xc1\x24\xcd\x67\xc6\x51\xaa\x03\x22\xdb\x3e\xf0\x5c\x6c\x3a\x33\x47\xe0\x82\x73\x61\xe7\xf3\xe9\xdf\x6e\x7e\x3e\xfd\xf4\xd3\xb9\x70\xde\xf1\x76\x5d\x28\x00\x20\x59\x9b\xe9\xcc\x42\x2b\x5e\x5e\x83\x84\x20\x80\xa5\xde\x7a\xdc\x12\x95\x9c\x1c\x0d\x8e\xdc\xfd\xde\xfe\x9e\xb3\xdf\x1b\xf4\xf6\xbc\xbd\xfd\xa1\x0e\x50\x4d\x60\x97\xff\xfe\x74\xd1\xf3\x33\x40\x76\xbc\x6e\xc2\xfe\x85\x6f\x12\x40\xba\x1e\x34\x37\x64\x74\xe4\xfa\x47\x9c\x8f\x1c\x6e\xdf\xf8\x95\x5f\x76\x90\x47\x49\xb5\xa7\x99\x6d\x7b\xbb\x19\x70\xe1\x89\xd9\x01\x96\xcd\x37\xce\x8f\x06\x68\xb3\xde\x77\x70\x97\x42\xdb\x76\x3b\x98\x0e\xe9\x5b\x77\xb8\x43\xc0\x0e\x85\x65\x8c\x6d\xda\xd5\xe3\x0c\xe8\x1b\xca\x5a\xed\xd3\x9a\x20\x71\xf8\xa4\x20\x21\x5a\x4c\x83\xe6\x16\x73\xed\x87\xd1\x64\x96\xaf\x49\x2a\x33\x23\xaf\xeb\xc6\xf1\x08\xe0\xbb\xc0\xdb\x21\x10\xee\xf6\xea\xad\xda\x7b\x86\x8a\x3c\x2d\x48\xc9\xca\x27\xb7\xcd\x12\x61\x26\x6a\x7e\xa3\x62\xb4\x03\x33\x86\xba\xb7\xdb\xaf\xce\xa3\x0c\x7e\xee\x1d\x6e\xd9\x95\x0d\x01\x4e\xd5\x1b\xff\xd6\x68\x42\x05\xc8\xc9\xc9\x09\x76\xe1\xb0\xef\xed\x18\x24\x5c\x92\x57\xd7\xd9\x93\xad\xfa\x74\xf9\xa1\x77\x0e\xfd\xfe\xc6\x20\x34\xee\xd5\x95\xa9\x21\xdf\x17\xf5\xf6\x6c\xa1\x7b\x39\x0e\xdd\x0c\x34\x0f\xf8\xf6\xcd\x94\x0f\xf8\xe1\xa1\xa9\xe8\x00\x59\xc7\x08\xe0\x5f\x52\x00\x7f\x94\x82\xa3\x18\xd1\xc3\x43\xff\x90\x5f\x6d\x1f\x1e\xbd\x74\x44\x45\x08\x7c\x9f\x80\xc3\x23\x53\x5d\x7c\x78\xe4\x1f\x72\x0e\x73\xb4\x65\xcb\x31\x29\xf6\x36\xaf\x15\x3a\x7b\x5c\xa4\x75\x9e\xa7\x0e\x91\x02\xb5\xd3\x95\xb1\xde\x37\x4e\xe3\x31\x76\x8f\x83\xb7\xf9\x31\x8c\xdf\x82\x04\x1b\x5a\xb6\x51\xd0\xed\x8e\x21\x1c\x82\x14\xa7\x6f\x40\x84\xe3\xdd\x04\xbe\x89\xba\x1e\x8a\x71\x02\xfd\xb4\x8b\x93\x13\x77\x08\x22\x9c\xec\xc6\xf0\x4d\xe4\x27\x1a\xfd\x1a\x73\x66\x35\xf4\x76\x5d\x3f\x7e\x53\x2e\xd1\xb4\x2e\xe4\x1f\x6d\x57\xb2\xab\x9e\x46\xf3\x65\xfc\xa4\x06\x4a\x6a\xea\xf6\x3a\x38\x03\x83\xde\xd1\xe0\x68\xff\xa0\x77\xb4\x87\xf6\xe0\x7a\xdd\xeb\x68\xe0\x04\x2e\x17\xcb\xa1\x62\x45\x36\x1e\xe2\xbb\x6c\xef\xee\x32\x96\xbd\xbf\xb7\xd7\xdf\xb3\x33\x94\xca\x5f\xba\x6b\xee\x3a\x7a\x93\x76\x01\x90\x19\x4e\x4e\x4e\xbc\x7d\xf8\x26\xed\x46\x6f\x64\x52\x22\x92\x84\x21\xe5\x89\x5b\x59\x7d\x5a\x26\x3e\x7a\xc6\x98\xa0\x9c\xd6\x38\xbd\xf3\xdc\xa6\x65\x6f\xb0\x71\xbd\xc8\x3c\xf7\xbc\x3e\xc0\xcf\x9f\xd3\x8c\x8a\x16\x3e\xdf\xbe\x9a\xf8\xfe\xd1\x33\xb7\xfd\x95\x82\x1a\x2d\x2e\x8d\x06\xef\xaa\x7d\xa7\xde\xda\xed\x4c\xb1\x56\x49\x1e\xdd\x25\x3e\xe7\x92\x4d\xcc\xed\x68\x3b\x73\x53\x6b\x5d\x6d\xd1\x9a\xbf\x3c\x4d\x5d\x3d\xb2\xe3\x1d\x74\x70\x47\xd0\x72\x94\xcc\x80\x48\x82\x26\x5d\x55\x36\xb4\x7a\xcf\x39\x43\x96\x5b\x33\x47\x33\xdc\x51\x8c\xca\x07\x62\xdf\xdd\x49\xc0\x0e\xfb\x0b\xdf\x08\x26\x7a\xbe\xdb\xdb\xa4\x9e\x92\xdf\x1c\x3d\xc9\x3c\x9b\x3b\xa9\x9b\xba\xb1\x91\x69\xf0\x4c\xd6\x44\x1e\x40\x6e\xc7\x90\xaa\xe4\x72\xf6\x23\xf1\x63\xc7\xf3\x01\xdd\x89\xe0\x2e\x07\x99\xec\x26\xbc\x23\x45\x13\x53\x3c\x7a\xe6\x08\x63\xb4\x28\x5b\x26\x93\xe6\x6d\xc6\x1d\x96\xfb\x8b\xaf\x11\x37\x05\x60\x66\x95\x7e\x5e\xa4\x29\x3c\x94\x37\xdf\x47\x55\x4d\xe1\x41\x5f\x59\x8e\x79\x32\x26\x58\x4f\x42\x38\x0a\x2f\xb9\x18\xcb\x80\x2c\xdc\xcb\x4e\x88\xff\x93\x4a\xe0\xbb\x10\x53\x47\xc8\x6f\x68\x86\x43\x34\xc5\xa1\x71\x28\x58\x60\x4b\xbc\xb3\x30\x3b\x76\x83\xa3\x7d\x08\xa6\x10\xa2\x39\xb6\xd8\xc7\xec\x50\x50\x0f\x84\x84\xee\x1b\xac\xd5\x52\x40\x50\xc7\x13\xc1\xa6\x72\xa5\xe0\x33\x60\x42\x34\x12\x96\x09\xd9\x1c\x60\x40\xf1\x7c\x48\x79\x3b\x01\xf4\x27\x80\xa2\x3e\x84\x66\x78\x01\x97\x17\x39\xe8\x8b\x60\x10\x83\x3d\xf6\x97\x1f\xd8\x0e\x0f\x31\xc6\x20\x93\xa1\x03\x65\xee\x1e\x84\xeb\xb5\xd7\xe3\xb6\xf8\xea\x50\x76\x11\x5c\x68\xaf\xf9\xc1\xa1\xf8\x3e\x7f\x88\x78\x90\x3c\xf3\x5b\x0f\xc2\xd5\x24\xc8\x49\x7b\x7f\xdf\xe7\x7f\x8f\x0e\xfd\x04\xf7\x50\x84\x07\x47\xad\xdb\x8c\x04\xdf\x5a\x3c\xf9\xe0\x48\xbc\xf6\x3c\xcf\x4f\xf0\x21\x8a\xf0\xde\x9e\x7c\x1f\x92\x69\xb0\x8c\xa9\x2f\x6a\xee\xd2\x42\xfb\xd1\xa0\x18\x53\xe9\xc1\xc3\x01\x37\x5d\x14\xea\xa0\x95\xc7\xcb\xb7\xe1\xf1\xb2\xdb\x65\xe7\x43\x90\xe3\xd8\x6c\xd4\x12\xc2\xb7\x83\xc3\xf5\x3a\x3f\x89\x8c\xfe\xa8\x05\xa0\x22\x1d\x82\x98\x07\x22\xd5\xd5\xf2\x53\x6a\x08\xac\xb6\x9b\x7a\x16\x5c\xaf\xd9\x6f\xf7\x96\xff\x0c\x81\xd5\x75\xbf\x7b\x16\x84\xab\xb0\x61\x1a\xeb\x9b\xf0\x5b\x8f\x1f\x40\xb2\x4a\x78\xa9\x8a\xab\x7c\x68\xdb\x60\x31\x0c\xaa\xb7\x2f\xe2\xca\xff\x72\x6a\x68\xab\x7d\x45\x67\x1d\x9c\x80\x0c\xc2\x61\xc4\xb5\x6d\x33\x70\xcf\x43\x56\x64\x28\x84\x3e\xfb\x59\x68\x1d\xf3\x1d\x47\x12\xdd\xdb\x87\xc3\x1c\xcc\xa0\x6f\xe9\xc3\x07\xfa\xfc\xf1\x42\xfe\xba\x08\x2e\xd0\xc5\xf9\x87\xd3\xeb\x8f\x3f\x9f\xdf\x7c\xbc\x78\xff\xf1\xe2\xe3\xf5\xdf\xd1\x97\xcb\xab\x8f\xd5\x94\xf3\x2f\x57\x1f\x3f\x5d\x5e\x20\x25\xc2\xa3\x28\xff\x98\x50\x72\x47\x32\xc4\x71\x6f\x51\x94\x5f\x05\x53\xa2\xd2\x58\x55\x57\xa7\xef\x59\x01\xd7\xe7\x1f\xce\xbf\xf2\x1a\x2b\x09\x46\x98\x4c\x1d\x6f\x52\x97\x69\x9a\x06\xa3\x47\xec\x1e\xdf\x2a\xf2\x7f\x3c\x7e\xec\x76\x61\x06\x66\xe8\x0e\xdf\x8e\x1e\xc7\x1c\x4e\x06\x84\xe8\x0e\xda\xf6\x92\xfd\x45\x31\x7b\x07\x61\xcb\x58\xa4\x78\x8a\xa6\x15\xcf\xa1\x10\x95\xea\x1e\x39\xaa\x28\xac\x46\x78\x16\xea\x1a\xa4\x83\x4c\x4a\x25\x98\x04\x61\xde\xb0\xe7\x96\x7e\xc3\x7d\xff\xa0\xdf\xe8\x19\xdc\x73\xb7\x0b\x7f\x8a\x63\xaa\x96\xac\xe4\x60\xfb\x5a\xf4\xef\xa1\x9d\xbd\x1e\xac\x30\xc5\x9e\xfb\xa4\x8c\x25\x4c\x44\xd5\x6c\x6d\xd4\xa0\x5e\x34\x30\x66\xa5\x30\x2c\xb1\xca\x79\x6c\xa2\xea\x96\x25\xed\x3e\x7b\xee\xf3\x02\x8f\x51\xa7\x9c\x5d\x9f\x80\x83\xc3\x8a\x41\xc5\xa1\x7f\x20\x8a\x7b\x5e\xac\x31\x8a\x63\x27\xe1\x86\x6d\x99\x74\x30\x29\x6a\x63\xf5\x8c\xd2\xf9\xa0\xdc\x53\x0d\x09\xdc\xa8\xca\xa0\xed\x2d\x67\x35\x68\xdb\x2c\xe5\x2d\xae\xa3\x26\x17\x8d\x1d\x7d\x5e\x22\xd2\xb5\xd7\xd7\x92\xbf\x51\x43\xb5\xaf\xcf\x9f\x00\xcb\xa2\x6b\xab\xd2\xdf\x79\xa6\xec\x67\x64\x13\xcf\x73\x2b\xa7\x2d\xa9\xf5\x28\xd7\x7a\x87\xeb\xec\x75\xfd\xe5\x0b\x79\xf6\xf2\x3c\xd7\xf7\xbc\xf2\x9a\xa7\xe7\x3e\x73\xbc\xf3\x3c\x6f\x6b\x8d\x1f\x93\xc6\xfa\x3e\x26\x65\x6d\x9e\xef\x79\x9e\x51\xdb\x6b\xae\x24\x35\xa4\x79\xbf\xa7\xee\x24\xb9\x8d\x9d\xe7\x38\x34\x7d\x1f\x7d\x27\x21\x0a\x0c\x25\x10\xca\xf1\xc8\x45\xfa\xff\xc6\x28\x56\x92\x83\xca\xee\xf3\x90\x8d\x59\x46\x26\xb4\x1d\x25\xf7\xe9\x24\x60\xed\xe8\x58\xb5\x10\x1a\x26\x94\xeb\x8e\x87\x12\x4c\x8f\xbb\xdd\xec\xed\xfe\x31\x4c\xba\x98\xbc\xc9\x47\xd9\x18\xb1\x7f\x70\xf2\x5f\x1e\x39\x40\x09\x0e\x40\xb2\xeb\x91\x03\x1e\xff\xc2\xec\x5d\x19\xee\x60\x1f\x65\xd8\x3d\xde\xd9\xa1\x27\xd8\x3d\x86\x59\x17\x73\x7c\x52\x8e\xa9\x17\x80\x6c\x97\xb0\x0e\x67\xff\x45\xde\x78\xe4\xa0\x40\x61\x33\x46\xe9\x3e\xa2\xd8\xb2\x8e\x77\x76\x08\x2f\x84\xc9\x31\x56\x07\x63\x2a\xfd\xe9\x45\xd0\xc6\x7c\x44\xc6\xea\x54\x26\xaf\x1c\x78\x52\x8b\x7d\xab\xee\x51\xbb\x32\xaa\xa2\xe5\x5a\xe8\x60\x47\x9d\xf4\x60\x37\x53\x01\xee\x68\x35\x48\x82\x09\x6e\x56\xde\xc6\xfe\x57\x0f\x63\x6f\x38\x63\xaf\x77\x3c\x94\xbd\x21\xd0\x9f\x01\xf2\x86\x20\xba\xdb\x43\x19\x2c\xcc\x5b\x26\x6e\x26\x03\x2c\xd7\x71\x5d\x97\x35\xfa\x90\xec\xec\xa9\x59\x01\x7d\xb8\x5e\x5b\x1e\x4b\x76\x8e\x74\xa2\xcb\x13\x9d\xde\x1e\x4b\x67\x7f\xcb\xfc\x3d\xfe\xca\xad\xfe\xe7\xf5\x0e\x59\x4e\xe0\x7e\x0f\x89\x7b\xbb\x7f\xdb\x0f\x0e\xf6\x07\xae\x7b\xe8\x42\xa3\x48\x71\x69\x58\x3f\xaa\xa4\x26\x34\x99\x49\xcd\x8a\x6c\x36\xd6\x87\x40\xd5\x45\x53\x79\x59\x8d\x62\x88\x16\x02\x40\x7f\x8e\x2d\x0b\xdd\x63\xcb\xe5\xe0\xe7\x8b\xb7\xee\x7a\xbd\x38\xe9\x35\xc4\x9f\x89\xb9\xd8\x38\xed\xe0\xa9\x14\x9b\xac\x8b\xe0\x82\x7f\x34\x7d\x8b\x77\x3c\xd2\xf3\xd6\xeb\xe9\x09\x66\x3f\x94\x5c\x25\xe7\x73\x2a\xbe\xe4\xd6\x39\x73\x6c\xed\x58\x68\x8a\x77\xa6\x10\x4d\x4f\x3c\xb2\xd3\xf3\x18\x61\xa4\x4c\x6c\x6d\xa6\x44\x97\x2d\xad\xe3\xec\x04\x0f\xdc\xa3\xfd\x63\x48\xbb\xd8\xeb\xa1\x6c\x97\x3f\x8a\xcb\x80\xec\x04\xf7\xc4\x0b\x96\xde\xd3\x67\x99\x02\x4c\xdf\xcc\x40\x0f\xed\x1f\x21\x0f\xc2\x9d\xfd\x23\xf8\xd6\x1d\x8a\xa4\x1d\x8a\x3c\xe8\x4f\x77\xd9\x6f\xf6\x13\xa5\x6f\xf0\x60\xcf\xed\xef\x1d\x1d\xed\xf7\x0e\xfa\x07\xee\xe0\x68\x1f\x01\x8a\xf7\x7a\x3b\x14\x9e\xb8\xa2\x3d\x4b\xe0\xa2\x94\x9d\x18\x16\xc7\xc1\x09\x3e\x38\x86\x4b\xc0\x96\x93\x0b\x51\xb0\x83\x0f\x04\x28\x01\x98\x01\xcf\x45\x81\x08\xdf\x80\x02\x4c\x77\x3c\x96\xb9\xd7\x3f\x86\x13\xe0\xbd\x7d\xdb\xeb\xf3\xdc\xbd\x7e\x8b\x3f\x06\x10\x2d\x81\xc7\x72\x4f\x98\x14\x7b\x8f\x43\x20\x9d\x7a\x65\x65\x4b\x8e\x5e\x40\x59\x61\xfc\xa5\xb9\x12\x16\x65\x8c\x11\xbc\x38\x71\x87\xf3\x2e\x13\x76\xef\xd5\xea\x78\x8b\x17\x43\xcb\x75\xac\xca\x27\x3b\x39\xec\xde\xfb\xf7\x3a\x16\x52\xbe\xb3\x80\x5d\xcb\xb1\xba\x2a\x89\x25\x40\x7f\xde\xbd\x57\x56\x02\x2a\x34\x92\xb0\x87\xea\xf7\xfc\x7e\xaf\x76\xf1\xd7\xf3\x5e\x63\x1f\xb0\xdf\x33\x79\x24\x67\x8d\x5f\x32\x32\x89\xf2\x28\xad\x18\xe0\x65\x0d\xa7\x73\xb1\xe8\x64\x7f\x3c\x54\xb9\x7b\xaf\xe6\x8f\xb6\x2f\x11\x5d\x5b\xc3\xb1\x58\x5d\x17\x88\xec\xff\x1f\x33\xf3\x16\x56\x0c\x37\x22\xec\x91\xa1\xac\x9c\x42\x5f\xfd\x42\x4a\x5a\x6a\x1e\xbf\xe7\x2c\x50\xd9\x88\x18\xc8\x86\x41\xae\xb4\x22\x7b\x15\xad\xc8\x9e\x7f\xb4\xc7\xcb\x7b\x5e\x06\xd3\x65\x4d\x32\x12\x50\xe2\xf3\x63\xaa\x59\x16\x93\x58\x79\x59\xcf\x09\x60\xca\xc6\x63\x6f\x1f\x1a\xc5\x56\x00\x16\x23\x92\xb3\x0a\xa4\x84\x67\x02\xed\x1c\x1d\xfa\x47\x5c\xfc\xf1\x9e\xd3\x3a\xbd\xa0\x9a\x47\x5f\x9e\xd6\x37\xab\x91\x37\x62\x3d\x6f\x8b\x94\xa5\xee\x43\x8f\x7a\xd0\x49\x93\xf7\x19\x21\xbf\x91\x16\x01\x9e\x7b\x00\x81\x35\xe5\x8f\xcf\x5c\x82\x25\xa5\xb4\x69\xdb\x14\x24\x70\x48\x40\x06\x12\x08\xfd\xa4\x90\xf7\xbd\xee\x81\xef\xb9\x07\xea\xda\xb1\xe7\x1f\x89\xc9\xdf\x76\x6b\xde\x97\xea\x0b\xae\x8a\xd0\x8d\xd9\x86\x6a\xd9\x14\x96\xdb\x44\x1e\x4c\x4c\xd3\x1a\x1e\x64\x1e\xd6\xda\xa5\x4c\x1d\xf5\x01\xc5\x3b\xd8\xb0\x13\x69\x68\xc2\x45\x30\x27\x79\x63\xed\x2c\xbf\xcb\xa7\x43\x54\xe3\xfa\x9e\xeb\x22\x59\x1d\xaf\x60\x8b\x28\xc7\x8d\x2d\xd4\xf5\xb4\xd9\x73\x23\xe2\xee\x33\xfd\xad\xf5\xb6\xec\xab\xbc\x02\x56\x7d\x16\x16\x0d\xbc\x31\x5b\xb4\xfa\x07\x47\x65\x13\xa2\xfc\xfc\x3b\x25\x49\x1e\xdd\xc6\xcf\xd1\x43\x09\xae\xda\xa1\x1c\x4b\x15\x74\xc8\x7a\x4d\x38\xd8\x5c\x03\x3d\xb0\x16\xf4\xb6\x1c\x08\xab\x2d\x78\x9f\xa5\xbf\x91\xe4\xc5\xb5\xb3\xca\xd7\x6b\x1e\x76\x93\x55\xbe\xb5\xee\x2d\x2c\xa8\x5a\xf7\x15\x09\x62\x12\xfe\xe1\x75\xbf\x82\x5d\x45\x8c\x93\x78\x9e\xbc\x4e\xf1\xbc\x23\xdf\xf3\x4a\xab\xdc\x5e\x6f\x0b\xb7\x32\x28\x6a\xaf\xec\x10\xb7\x37\xff\x9d\x74\xb4\xe7\x7b\xee\x5e\x13\x1d\xf5\xb6\x70\xb2\x27\x59\xcc\x22\x23\xf7\x24\xa1\x92\xba\x78\x94\xda\xff\x1b\x6e\xd3\xfb\x3d\x0c\x30\x27\x41\xfc\x7f\xd6\xa0\xe7\x0f\xa7\x7a\xf2\xab\x31\xb7\x19\x21\xf4\x5c\x1e\x0c\x44\xda\xbe\xb9\xbe\xd7\x33\x4e\x8a\xbd\x97\x98\xf3\x0e\xf6\x58\xc7\x57\x45\x2b\x1b\x35\xc6\x6e\x1e\x63\xeb\x37\x0b\x65\xc2\x42\x68\x24\x82\xfe\xb7\x7f\x1b\x97\xf6\x41\x9b\x41\xbb\x9b\xcd\x85\xa4\x04\xa3\x8a\xb0\xba\xc2\xe6\x05\x76\xad\xb1\x25\x40\x36\x4b\x9b\x20\x54\x71\x50\xe5\x7d\x79\xf6\xd4\x2b\xc7\xeb\x83\x90\x9e\x6a\x07\xec\x17\x9c\xab\x7b\xdb\x6f\x35\xab\xe7\x6a\xb3\x06\x75\xa0\x7e\xf6\x1c\xdd\x7f\x56\x44\x44\x65\xcc\x41\x05\x7d\xb7\x7f\x28\x1d\xd2\x7a\xc2\x21\x6d\xa0\x80\xef\x5c\x01\x7c\xc7\x88\x36\x94\xc6\x9c\x33\x09\x84\x37\x65\xef\x15\xea\x5d\x6f\x4f\x85\x55\x1a\x88\xf8\xe9\xf7\x8c\xc4\xfb\x10\x08\xe0\xbb\xa3\x81\x08\xad\xe4\x79\x3d\x11\x5b\xc9\x1b\xec\x8b\xe0\x4a\x9e\xd7\x87\xe8\x01\x07\x46\x7c\xa2\x73\x1c\xe8\x20\x87\xdf\xf1\xb9\x6d\x9f\xab\xa0\xd1\x39\xba\xc4\xdf\x6d\xfb\xbb\x73\x7f\xb8\x5e\x5b\x16\xba\xc2\x81\xf3\x25\x4b\xe7\x51\x4e\xd0\x35\x36\x22\xf4\xc5\xe0\x1c\x9a\x70\xc4\x70\x55\xa0\x53\x9c\xe1\x3b\x67\xca\x91\x3f\x6b\x16\x40\x62\x06\xae\x9c\x8c\xe4\x69\x7c\x4f\x00\x47\x50\x07\xb4\xa2\xb7\x5c\x15\x70\xb4\x11\x25\x7a\x8c\xab\xdb\xf6\x67\xf4\x19\x16\x0a\x05\xe6\x7a\xbd\x6e\xb0\xab\x97\xed\xfd\x4a\x18\x71\x46\x69\xc2\x83\xe8\x41\xdb\xa6\x0e\x9d\x91\x04\x7c\x36\x0d\xfb\x33\x6e\xa7\x81\x2f\xb5\x5f\x97\xb5\xef\xec\x5b\xd0\xb6\x77\x3c\x8c\xf1\x63\x99\x7c\x36\xcb\xd2\x39\xd9\xdd\xdf\xb7\x54\x5c\xfa\x04\xae\x8a\x02\x40\x74\xb6\xa9\x28\x57\xc6\x5a\xa0\x33\xe1\x08\x03\x9b\xe6\x63\x80\x62\xc2\x9b\x03\x59\xc3\x0a\xf4\xad\x01\x9d\x80\x38\x37\x09\x5c\xb1\x7f\x71\xc7\x55\x16\x4e\xce\xcd\xa4\x75\x5f\x55\xa7\xab\xfb\x72\xf6\xf2\x9e\x9d\x43\x30\xfb\x95\xcb\xcb\x73\x9d\x53\x87\xc3\x14\x51\x69\xa2\x21\x75\xd2\x6f\x3e\x75\xa6\x41\x14\xf3\x0b\x08\x39\x37\x68\xc9\x7f\xb3\xc1\x43\x13\x4c\x9d\x30\x9d\x07\x51\xd2\x62\xb3\x98\x0f\x41\xb4\x5e\x83\x1e\xaf\x60\x66\xdb\xef\x98\xf0\xc5\x7e\x62\x8f\xad\x7a\x8c\x71\x3e\xcc\x70\xe2\x83\x89\x6d\x4f\x1c\x92\x50\x92\x01\x36\xd1\x39\x48\x20\x9a\xd8\x36\x98\x38\xe4\x7b\x44\x01\x5b\x12\x1d\x17\xb2\x57\x18\x73\x7e\xc3\x26\x6c\xb8\x04\x0f\xc0\x92\xb3\xb7\x33\x99\x05\x51\xd2\x9e\x3c\x4e\x62\x62\x41\xe8\x83\x14\x9f\xf1\x8b\x01\xa9\x30\xc8\x50\x8c\x96\xd0\x8f\x59\x9a\xbf\x04\x89\x9a\x95\x10\xae\x26\xb6\xdd\x09\x78\x03\x44\x5d\x4b\x10\xc2\xa2\x38\x56\xaa\x96\x93\xf4\x18\x06\x20\xe3\x10\xfb\xb0\xc5\x06\x14\x8f\xc6\x48\x0c\xb3\x87\xa8\x6d\x77\x44\xe7\xbe\x0a\x37\xd0\xa2\x40\x5f\x2b\x33\x3c\x17\x0d\x08\x36\x0c\x28\xe5\xb2\x17\xd3\x90\xe2\x7f\xa9\x48\xb8\xb6\x0d\x28\xbe\xad\x82\x99\x0e\xcf\x1d\x32\x8f\x28\xb0\x96\xc9\x2c\x48\xc2\x98\x84\x9a\x5c\x2d\x14\x21\x02\x7d\x90\xe1\xc0\x49\x13\xfd\x3e\x53\xef\xe1\x30\x03\x2b\x39\x64\x3e\x41\x19\x09\xf2\x34\xf1\xa3\x82\x23\x34\x06\x7c\x45\xa5\x31\xd7\xd8\x3a\x84\xad\x76\xfd\x03\x58\x3f\xa9\xc2\xda\xf2\xfb\x76\x66\xd4\xca\xaf\x85\xf9\x6c\x5e\xaf\xd7\xac\xf5\xc3\x9e\xef\xf1\x94\x40\x79\xca\xa5\x6c\x15\x11\xa9\x50\xa1\xce\x3d\xdf\x0e\xff\xd5\x84\xc1\xe0\x75\x14\x91\x30\xb2\x00\xac\x10\x8e\xb4\x31\x51\x01\x31\x0a\xf4\xee\x85\xc3\xda\x2a\x47\x4b\x37\xf7\xcf\xa2\x1f\x16\x1f\x29\xca\x47\x4a\xbf\x93\x7d\xe4\x66\x8a\x9b\x03\xc5\x66\x87\x9f\xa4\x0b\x74\xd1\x70\xc5\xc5\x6f\xb2\xa8\x73\x13\xae\xd7\x80\xfd\xc1\x1d\x17\x01\x8a\xa9\x73\xf3\xb0\x5e\x53\xe8\xdc\xdc\x63\x82\xa8\x73\x93\xe3\x1e\xfb\x13\x88\x6c\x01\xcb\x30\x51\x20\xb9\x10\x7d\x93\xc1\x07\x0a\xf4\xb1\x29\x38\x14\x56\x81\x5f\x3b\x99\x73\x13\xc2\x55\x26\x2b\xca\x70\xc6\xeb\xc9\xf8\x6a\x8b\xa6\x20\xe3\x36\xa0\x1a\x2a\x4c\xae\x8d\x32\x70\xb2\x5c\xb2\x61\x3b\xa2\x39\x89\xa7\x16\x3c\x06\x14\x9f\x31\xe1\x6e\x78\xbf\x11\x81\x3b\xc1\xab\x9b\x07\x3f\x43\x37\xa1\xdf\xf1\x0a\x5e\x05\x95\xbe\x4e\x28\x07\x1f\x51\x82\x3c\x88\x72\x70\xc1\x7f\xa8\xf5\x14\xc1\x95\xb4\xe3\x4e\x78\xdc\x6d\xb6\x14\x33\x31\x0a\x19\x1b\x05\x0f\x7d\x03\x19\x8f\x46\x5a\xb2\x45\x65\xf8\x6d\xd4\xc6\x8f\x68\x45\xeb\xcb\x7a\x0d\xae\x2a\x23\x32\x13\x5a\x8a\x2b\xa4\x3a\x67\x21\xeb\x66\x66\x41\x14\x72\x2f\x50\xd3\x22\x99\x35\x98\x00\xd6\x52\x81\x32\x25\x1a\x2b\x7f\xab\xea\x33\x5d\xbd\x82\xb2\x2f\x90\xa9\x8f\x53\x6e\xa6\x7c\xd1\x8b\x9f\x9a\xba\xc5\x63\xae\x7d\x4e\x43\xce\x10\xf8\xcf\xfb\x6a\x9e\x99\xce\x23\xbc\xfe\x8d\xdb\x38\x01\x6a\x0b\xae\x4c\x1c\x35\xc6\xe8\x1b\x6d\x77\x4e\xc1\x42\xf6\xbf\x8c\xf5\x9d\x39\xe9\x37\xdc\x60\x70\xcc\x8e\x5c\x28\xe3\xec\xba\xd1\xd7\xdc\xb6\x29\xca\x24\xb7\xc6\x6c\xc9\x88\x9f\x7e\xa5\xe1\x13\x11\x02\x2c\x53\x0e\xb6\x81\x6d\xcb\x1f\xb5\x17\xb9\x6d\x7f\x13\x4d\xe3\x61\x05\x15\x8f\x2e\x10\x1f\xe6\xc6\x58\x46\xec\x3b\xbe\xc3\xca\x1a\xb9\x9e\x08\x25\x9b\x71\x8f\x13\xf2\xd0\xa6\x2d\x65\xec\xcc\x8a\x95\x60\x77\x6a\x0b\xc2\x6c\x92\x79\xdc\x58\x99\xca\x56\x36\x66\xb3\xcd\x12\x0b\x74\xe7\x4c\xf1\x69\x63\x7c\x4f\x8c\xf1\x95\x40\xb0\x15\x40\xeb\xec\xa5\x9f\x09\xec\xf7\x25\x58\x3a\x1f\xba\x4b\xe7\x97\xee\x52\xa0\x63\xaf\x24\xc9\xf9\x57\x1c\x55\xc1\xeb\xf5\x20\x30\x08\x51\xa4\x79\x10\x18\x29\x91\xc4\x71\x51\x32\x11\x2b\xf3\x4a\x95\x57\x92\xf0\x4a\x34\xb9\x41\x2b\x77\x5a\x31\xaf\x07\x2e\x52\x7b\x2d\x14\xf4\xae\xc6\x59\xb6\x57\x94\x0d\xd2\xf5\xba\xf3\x05\x56\x2b\xe0\x23\xd5\x18\x42\x89\x6d\x39\xac\x16\x3e\x0a\x57\xbe\xf0\x3e\x82\xd5\x22\x3b\xe0\x0b\x13\xfb\x37\x50\x10\xae\x1c\xe1\xfc\xe8\x88\xe5\xf4\x59\xea\x1c\xcb\x8a\x03\x33\x88\x58\x85\x6d\x22\x46\xcf\x54\x04\xfe\x51\xb2\x44\xc4\x7f\x73\x59\x22\xad\xed\x81\x62\x05\x8c\xc6\x52\x4e\xf1\x5a\x53\x6e\x24\x52\x3d\x9b\x71\xf3\x08\x9c\x76\xbb\x28\xc6\x1d\xaf\x95\x09\x2a\x95\xca\x52\x14\x74\xbb\x48\xcb\x2d\xac\xd1\x9c\xfc\x2a\x05\xc4\xeb\x35\x88\x39\x6f\x1d\xe5\x63\x4c\xd0\xce\x4e\xb0\x5e\x27\x02\x27\x5f\x6e\x79\x3a\xa9\x28\x17\x61\xea\x10\xdb\x8e\x40\xea\xdc\x57\x88\x3f\x0b\x6a\x4e\x83\xdb\x7a\xcf\x7b\x1c\xd5\x7a\xdc\xd4\xc1\xcd\xe6\x97\x83\x97\xf0\x6d\xaa\x6c\x54\xc4\x1a\x95\x80\xa8\xda\x28\x79\x48\xe9\xf9\x9e\xd7\x43\x9e\xd7\xf7\x3d\xaf\xdf\x80\x51\x2e\x71\xdd\x34\x56\xf9\xc0\xf7\xfa\x03\x0e\xc6\xe5\x0d\xca\x43\x9a\x70\xb2\x12\xe8\x6e\x26\xa2\x90\x09\xb3\xb0\xbf\xef\xef\xef\x2b\x74\x31\x13\x3f\x5c\x80\x44\xf5\xfd\xa3\x3e\x3a\x1a\xf8\x47\x03\x7e\x58\x7a\xe6\x22\x5f\x39\xaf\xf5\xb9\x41\x13\x10\x37\xfb\x5f\xc9\x34\xe6\xae\xea\xab\x02\x0a\xef\x6b\x94\x96\x3e\x0b\x3c\xa1\xaa\x49\xad\xdf\x2a\x55\x9d\xd7\xc4\x28\x22\x4b\x16\xcb\x88\x98\x15\x51\xe1\xc8\x28\x50\xc4\xc6\xaf\x92\x62\x9c\x80\xa0\x1c\xf8\x61\x04\x72\x44\x51\xac\xfd\xd5\xc4\x93\xd4\x83\x8b\x31\xdb\xf7\xfb\x0d\x98\xeb\x7c\x0c\x9e\x33\xbe\xdf\x97\x63\xe0\x09\x06\xd3\x97\x10\x0a\x07\x47\x55\x9b\xae\xc1\x80\x35\xac\x69\x8c\xf4\x31\x0a\x2d\x71\xf0\x02\x57\xe7\xb8\x36\x3e\x88\x49\xc0\x9b\x0e\xcf\x13\xdc\xa9\x96\x56\xff\x8e\x53\xa7\x71\x41\xbd\x5c\xaf\x27\x95\x81\xd6\x0d\xab\x6d\x7f\x09\x0f\x97\x05\x64\x68\x94\x60\xd3\xb2\xa8\x3f\x24\xbe\xe9\x16\xdf\x1b\x73\x61\x9a\xc9\xf6\x4b\xed\xf3\x2e\x27\x8e\x87\x3a\xae\x5a\x6e\xc9\x7b\x23\x61\xb2\xe5\xfa\x06\x3c\x30\x11\x76\x5a\x5e\x25\x0d\x70\x1c\x51\xf1\xa6\xb7\xf9\x06\x51\x0e\x14\xca\x5f\xf7\xb7\xbc\x46\x94\xb7\x91\xe7\x19\x3c\x95\x07\xd1\x51\x7f\x2c\xc0\x7d\x43\x3c\x4a\x96\x71\x5c\xba\xb3\x72\xf6\x26\xf1\x06\x42\x0e\x6d\x4e\x1e\x40\x2e\x13\x08\x0a\xa1\xf8\x6e\x26\xce\xef\x52\xbc\x98\xe2\x0c\xa4\x60\x06\x87\x33\xbf\xae\xc0\x81\x68\x51\x5b\x37\x4a\xe0\x9b\xa2\x12\x27\x3a\x05\x0b\x38\x5c\xf8\xd3\x4d\x72\x36\xfc\xb1\xaa\x00\x8f\x42\xf1\xa5\x2e\x56\xfa\x5b\x54\x95\x47\x07\x55\xbc\x9e\xbe\xf2\x6f\x1e\x54\xd0\x78\x36\xd7\xaf\x24\x20\xa7\x7a\x27\x02\xa8\x33\x05\xab\x02\x79\xca\x4b\xcb\x2b\x60\xf9\xd0\x2b\xea\xab\xbc\x76\xa3\x62\x50\x60\x86\x52\x49\x83\x19\x8e\x80\x40\xda\x4a\x40\x2a\x64\x4c\x25\xcf\x38\x53\x99\x13\x75\x5c\x29\x5d\x06\x5a\x1f\xec\x15\xca\x8f\x50\x98\x4e\x6d\x2e\x7f\x7d\x51\xd3\x7f\xc6\x3e\x47\xd8\x67\xca\xf1\x51\x8a\x42\xb3\x17\x31\xa1\x8d\xbd\xa0\x0a\x41\x5c\xc4\x4d\x2f\x67\x94\xbb\xe9\x74\xa2\x4a\x28\x33\x68\xdb\xa2\xa4\x36\x19\xd1\xb1\x9c\x6a\xa3\xd1\xfa\xaa\xa4\xff\x1a\x5f\xd2\xfe\x7e\x45\xc2\x23\x25\x8a\x4b\x56\x41\x71\x91\x7a\xb1\x44\xa1\xb4\xe0\xd1\x98\x5f\x32\x8b\x00\x71\x2a\x32\x2d\x85\x45\x8b\x80\xc3\x1e\x04\x49\xa9\x2a\xdd\xf0\x53\x2c\xb1\x5e\x5a\x61\xba\x52\x6e\x73\x37\xd1\x89\x8e\xfb\x2b\x19\x84\x24\x0c\x15\x54\x37\x4d\x78\x2c\xa9\xe2\x61\x16\xc5\x04\x74\x00\x20\x98\x8e\x34\x56\x0c\x47\xe5\x96\x8d\xd7\x5b\xae\x2c\x81\xc8\x8f\xbd\x42\x01\x7c\x55\x66\x48\xc6\xaa\x6a\x34\x38\x6b\x2b\x29\x74\x73\xc4\x0f\x7b\xfe\x21\xd7\x1b\xf7\xb7\xe8\x8d\x8f\x8e\x36\x96\x8f\x58\x35\x66\xe5\x5b\x43\xc3\x99\xe4\x0e\x4d\xa2\x16\x74\xdf\xd0\xa0\x92\x04\x9e\xb3\x84\x52\xae\x96\x8d\x04\x5b\xbd\xdc\x6a\xb6\x28\x4b\x0c\x3f\x6f\x79\x8f\x65\xb4\x84\xb7\x61\x8b\x96\xf8\xa8\xee\xee\xb9\x7f\x24\xbd\xde\xdd\xea\xae\xc9\xda\x16\x81\x68\xa3\x6d\xa6\xf7\x56\x84\x72\x51\x72\x8c\x96\x68\xd2\xb4\x0b\x45\xbe\xb9\x07\x29\x8e\x19\x80\x08\x62\x8c\x27\xc3\x68\x94\x8f\x7d\x10\x63\xca\xdd\x47\x73\x08\x87\x09\x88\x75\x9c\xc1\x61\xec\x98\x24\xd8\xc1\x38\x76\xee\x08\x1d\xf2\x7f\x05\x27\x9e\xa8\xe8\x4f\x7e\x0a\x96\x38\x03\x11\x84\x43\x02\x96\x28\x47\xfa\xcd\xd6\x61\x52\x76\x99\x82\x19\xeb\xc9\x7b\xde\xa5\xa7\x1c\x8f\x59\x90\x37\xbb\x1c\x8a\x85\x59\xb3\x34\x1c\x3c\xe9\xe3\xa3\xb8\x81\xdc\x84\xcc\x0b\xc6\xcd\x8a\xcd\xb7\xdb\x8c\x0e\x51\x27\x61\x82\x79\xc3\xda\xe1\x8d\x79\x1e\xeb\xaa\xac\x2e\x7d\x48\xfe\x4a\x1e\xf9\x85\x9b\xab\x2e\xdc\xdc\x23\xdf\x73\x8d\x0b\xb7\xc1\x33\x62\x5a\xa5\x77\x1b\xb7\x5c\x9b\x75\x6e\x64\xa9\xf6\x93\xa3\xd7\x97\xdb\x4d\x22\x4c\x2c\xcb\xbd\x86\x6e\xec\x35\xf5\x01\x78\xd2\xab\x51\xdc\x28\xb5\x32\xdb\xde\x68\x58\xbe\x6d\x81\xf2\xf9\x77\x26\x33\x32\xf9\xc6\x1f\xcc\xf6\x65\x3c\x52\x3d\x4b\x2d\x9b\x98\x6c\x6e\x87\xf5\x8b\xab\xc1\x96\xcd\x4f\x89\x06\x47\xd2\xa1\x81\x2f\xe7\x48\x2e\xe7\x54\xf6\x82\x43\xf9\x79\x32\x66\x10\x1b\xfe\x58\x5e\xe3\x8a\xf0\x5c\xd5\x2e\x99\xeb\x3a\x65\xcb\x59\x54\x16\xa2\x19\x9a\x6e\xae\xec\xc1\x30\x35\x56\x76\x7f\x8c\x16\x38\x73\xa6\x20\x07\x29\x44\x4b\x2e\x51\x76\x16\x5c\x0d\x1f\x83\x19\x66\xa2\x41\xe9\xc6\x0d\x66\x1c\xfa\x6f\x0a\x5b\x0b\x1c\x00\x17\x16\xd1\x14\x44\x60\x51\x46\x17\xe5\xda\x7b\x0f\x63\xbc\x30\x42\x85\x76\x62\x30\xad\x7a\x8a\x87\xbc\xc6\x29\x5a\x8a\x2f\x42\xc6\x14\xd6\xeb\x90\x8d\xf3\x7a\xcd\xbf\x0f\xf5\xf7\xe5\x87\xa1\x60\x29\x78\x82\xa8\xf8\x1a\x85\x50\x05\xb2\x12\xcf\x01\x70\xd1\x44\x6f\x61\x1d\xb7\xa8\x58\xf5\x74\x58\xb3\x72\x42\x6d\x1b\xf0\xbf\x82\x0d\x4d\xd1\x04\x1a\x70\x3c\xb5\x88\x57\x5b\x79\x4e\xd5\x0a\x7c\xb0\xcd\xee\x57\x5a\x7f\x1c\x48\x8e\x2d\xdc\x50\xa2\xd2\x4b\x85\x5f\x94\xc9\xf9\xde\xe7\xd3\x4d\x9d\xaf\xe4\xee\xfc\xfb\x02\xc5\x38\x47\x4b\x6c\x78\xc5\xa3\x09\xde\x0d\x76\xef\x50\x28\xfe\xcc\xb8\x36\x29\x07\x13\xd8\xc1\x78\xc2\x4f\x02\xc2\x45\x1d\x74\x66\xeb\xf5\x56\x48\x8b\x50\xdf\x34\x71\x5f\x74\x0b\x8e\x71\xc7\x43\xa2\x98\xc9\x7a\x9d\x83\x10\x62\x1c\xae\xd7\xd6\x6e\xb0\x1b\x59\x1d\x9c\x83\x09\xb2\x22\x8b\x6b\x43\xe0\xaa\x8e\x25\x2d\xb4\xab\x4c\x78\x30\x7d\x1f\x72\x14\x09\x2c\xbb\x89\x01\xa5\xa3\x66\x25\xb1\xed\xc8\xb6\x49\xe5\x02\x0c\xe3\xdc\xb6\x27\x43\xe2\x67\x60\xc6\xb5\x57\x31\x97\xe3\x26\x43\xe2\xe4\xe9\x32\x9b\x10\xee\xec\xed\xc7\x00\x44\xb8\x02\x26\x90\x43\x33\x4b\xc4\x0a\x09\x14\x8a\x95\xcf\x4e\x11\x02\x66\x6a\x89\x72\xc3\x81\x62\x5a\xbd\x59\x63\xfc\x3e\x67\xec\x36\x47\xe4\x59\xa7\x7e\x75\x00\x1b\x91\x71\xcd\x6d\x9d\xc2\x15\x4b\xc5\xc2\xa1\x79\x81\x23\x10\x43\x34\xc7\xee\xf1\x42\x5d\xbf\xcc\x8f\xe1\x14\x2c\x46\x73\x7e\xfd\xb2\xac\x0c\x40\x8e\x4c\xf8\x83\xa5\xe1\xc7\x20\xa8\xc1\x62\x1d\x50\x4a\x39\x99\x04\x9b\xfc\x1a\x94\xd6\x43\xa1\x6d\x98\x1e\x0d\x03\x7f\x7f\xa0\x8e\x31\xdc\xa3\xe1\xd0\xf5\x0f\x0d\xbb\xaa\xc1\x4b\x90\xc6\x3c\xef\x10\xb6\x38\x93\x02\x2b\x1a\x64\x6c\x78\x74\x1b\x79\x0f\xd8\xa0\x4d\xd3\x6c\x42\x42\x9f\x76\x30\xde\x75\x76\x1d\xf2\x9d\x4c\x0a\xb4\x62\x7f\x7c\x79\xcd\xef\x1d\xfa\x9e\x77\x68\x70\xcb\x0d\x33\x25\x4e\xcb\xd6\x9d\xd5\x61\x45\xdc\x39\xd3\x38\xb8\xcb\x6d\x5b\x21\x56\x88\x2a\xcd\x0b\x7b\x9e\x61\x0b\x2a\x03\x5f\x5c\xa6\x41\x19\x1f\x8a\xb2\xe3\x2f\x41\xdb\x62\x5c\x38\x53\xc8\x54\x5c\x04\x1c\xc8\x33\x9d\x77\xc0\x47\xa4\xaf\xd7\x14\xaa\xa8\xba\xc4\xb5\xa3\x0e\xda\xb4\x71\x2d\x89\xcb\xb8\xe1\x02\xb8\x94\xca\xa0\x99\x3e\x1d\xa5\xe3\x56\x9d\x87\x25\x43\x85\x56\xa2\xc2\x5f\x8a\xb1\x00\x14\x8e\xd2\x31\x90\xe6\xba\x19\x84\x05\xaa\xb3\xa4\x14\xe7\x20\x40\x42\xe3\x2c\x6e\xe8\x38\x58\x69\x89\xf7\xc7\x19\x6c\x4b\x00\x59\x71\xfb\xb2\xa5\x0e\x5a\xad\x3e\xe9\xc4\xce\x5d\x9c\xde\x06\xb1\xfa\x2a\x02\x31\xdb\x37\xee\x79\x5c\xe0\xd8\x59\x26\xd1\x24\x0d\x49\x2b\x2e\x91\x09\xb1\xab\x97\x5e\x88\x66\x78\x34\x46\x53\xec\x1e\x4b\x6c\x1d\x10\x62\x51\x02\x3c\x16\x8d\x5c\xa8\x2a\x43\xae\x99\x98\x8d\xa6\x63\xbc\x40\xdc\x8c\x7c\x61\xdb\xc0\x2c\x37\x01\x4b\x94\x99\x29\x90\xb1\x7f\x34\xed\x76\x0b\xc3\x6c\x7c\x3a\x64\x55\xf9\xb3\x62\xac\x20\x5b\x0e\x7c\xcf\x2b\x23\x3b\xf4\x07\x7e\x5f\x73\xfa\xbe\xbf\xdf\xe7\x24\xf1\x12\x97\x01\x4d\x12\x1a\x57\xa8\x7f\xa4\x7c\x06\x24\xb0\x3d\x23\x92\x40\x12\x09\xca\x25\xf4\x61\xf0\x1d\x95\x28\x88\x68\x69\x7a\x13\x4c\xf0\xee\x3f\x7e\x00\xa3\x1f\xec\x5f\xff\x7b\xbc\xfe\x47\xf8\x8f\x70\xb8\x7e\x3b\xfa\xe7\xc9\xf8\xcd\x09\x14\xac\xbf\xf6\x16\xee\xde\x29\xda\xcb\xc8\x22\x0e\x26\xc4\x42\xbd\x0a\xf5\xcd\xd0\x14\x2d\x1a\xa8\xcf\x08\x8d\x2c\xe9\x2f\xda\xa4\xbf\xd9\x26\xfd\x45\xda\x32\x16\x25\x8c\x02\xa5\x33\x9b\x9c\xb4\x04\x72\xb3\x7d\x93\xf6\x54\x45\x4b\xbc\x00\x53\x49\x7d\x48\x04\xdc\x5a\x56\xe8\x6f\x69\xd0\xdf\x44\xd0\x5f\x58\xa1\x3f\x34\x6b\xba\xff\xc9\x5a\xb3\xf5\x1a\x68\xc7\x83\x4c\x46\x63\xbd\xc7\x13\x49\xa9\x1c\x38\x58\xb4\xe1\x0e\x4f\x34\x85\x4e\x4c\x0a\xd5\x2e\x89\xb7\x78\x34\x3e\x96\xa4\xf8\x88\x03\x30\x41\x21\x6f\xaa\x18\x1a\xfc\x08\x85\x4b\x63\x34\x05\xb7\xe2\xe8\xfe\x08\x51\xe7\x5e\xa6\x72\x2a\x95\xed\x78\x64\xe4\xcb\x6f\xfe\xcb\x6a\x52\x10\xa2\xc4\x4c\x81\xe8\x0e\x42\x5d\xf7\x0d\x7a\xc0\x96\x85\xce\xb1\x8b\xbe\x63\xf7\xf8\xfb\x5b\xe5\x1f\x77\xfc\xbd\xdb\x85\xab\x47\x7c\x3b\xfa\x3e\xd6\x6b\xe9\xb2\x52\x13\xba\xc2\x39\x88\x41\x04\xa4\xe9\x06\x44\xa1\x86\xb7\x73\x21\xba\x66\xcb\xee\x33\xf6\x8e\x3f\xbf\x7d\x54\x85\x7e\xee\x76\xe1\xb5\x79\xaf\x80\x31\x06\x37\xf8\x71\xf4\x79\x0c\x87\x37\xbe\x2c\xfd\x46\x47\xb7\x7d\x74\xee\xb2\x74\xb9\xe0\xf7\xb7\x33\x31\x42\x5f\xf0\xe8\x72\xac\x02\x62\x5c\xa3\x2b\x36\x58\x9a\x52\x4e\x6d\xfb\x8b\x28\xfe\x54\x14\x71\xa6\xe7\x48\x2a\xf6\xa4\x82\xe2\x0b\x94\x82\xdc\x19\x9e\x83\x4b\x14\xa2\x2b\x74\x8d\x4e\x19\x8d\x5c\x9d\xe0\x73\xdb\x06\x0f\x5d\x1c\xca\x3b\xe6\x73\x74\x05\xbb\x67\xe8\x1c\x5f\x75\x2f\x55\x07\xd5\x6a\x7f\xe8\xea\x5c\xb0\x18\x97\xf1\x25\xe7\x5c\x5d\x2a\x03\x4b\x2a\x6d\x77\xd2\x25\x25\xa2\x42\xa4\x7e\xce\x70\xb8\x41\xf1\xa9\x6d\x83\x14\x67\x4c\x40\x9e\xe1\x09\x44\x53\x75\x61\x3f\x33\x16\x5a\xa6\x4a\x9e\xb4\xa4\x2e\x36\x28\x83\x4f\x08\x75\xac\xf5\x83\x25\xd5\xa3\xd6\x0f\x16\xd7\x97\x5a\xb6\x4a\x91\xda\x59\xeb\x57\x9d\x40\xb5\x79\x7f\x22\x94\xab\xd6\x7f\x6f\xbc\xcb\xe5\x9b\xb7\x96\x3f\xc1\xe9\x28\x90\xc9\x1e\xda\xf1\xe0\xb8\xe6\x7c\x2b\xd4\xae\xdd\xa0\x25\x23\x23\x86\x6a\xd9\x65\x5c\x24\x3f\x91\xb1\xdd\x67\x78\x09\xc2\x5d\xcf\xd5\x3a\x52\x96\x77\x36\xcc\xfc\xd9\x5b\x1c\x0f\xcb\xc0\xdd\xa3\xd9\x8e\x37\x1e\xea\x3e\x7a\xd0\x17\x49\x5d\x33\x29\x2b\x26\x38\x1a\x85\x3b\xde\xb8\xa8\x1b\xd8\x4f\x86\x96\xe5\x4f\x8a\xd2\x18\x53\x73\xe5\xe6\xd8\xb1\x8d\x5c\x7a\xef\x25\x3e\x0b\x9a\x4b\x7b\xea\xc4\x65\x6c\xd8\x39\x09\xb2\xcd\x1d\x5b\x12\xca\xef\xd9\xb1\xa3\xd7\xed\xd8\xd1\xd3\x3b\x76\x84\x03\x90\x9a\x3b\x76\x54\xe1\x98\x91\xc1\x31\x73\xc1\x31\xe3\x2a\xc7\x64\x27\x08\xcd\x6d\x5a\x19\x58\x22\x1e\x07\x3c\x37\x79\x9f\xda\xbc\x99\x04\x1c\x97\xb7\xf1\x66\x26\xb4\xac\x7f\xb5\x54\x30\xeb\x78\x32\xdc\xf1\xfc\x89\xe0\x3a\x1b\x7b\xac\xb4\xed\xad\xcf\xdb\x4b\x50\x1e\x0f\x2b\xda\x07\x69\x08\x18\xc9\x3d\xd5\xc0\x08\xd5\x9b\xab\x10\x4e\xf9\x51\x79\x9f\x7b\x93\xeb\x2d\x76\x82\x47\x63\xce\x89\x50\x88\xad\x58\x06\x84\x9b\xe1\x4e\x5c\xd3\xbd\xf3\x59\x31\x50\x49\xac\x47\x7e\xf0\xd1\xc4\xb2\x88\x23\x5a\xdf\x5f\x63\xb1\xbf\xb2\x56\xcf\xd5\xd8\xcd\xb1\x35\xb1\x30\xb6\x82\xdb\xdb\x89\x72\x7a\xde\x05\xb7\xf0\xcd\x2e\x1c\x79\xe3\xf5\x7a\xd0\xc1\x16\x25\x39\x2d\xdf\x0d\x7d\xb8\xcb\x56\xed\x28\x1c\x73\x20\x14\x2b\xb8\x35\x5f\x06\xe2\xdb\x50\x7e\xeb\x94\xef\x9c\x21\x64\xff\x93\x2f\xcd\x37\x10\x88\xd4\x13\x6f\xbd\xb6\x74\xb2\x33\xe4\x89\xc3\xcd\xfd\x39\xd9\x90\xf5\x4a\x6f\x18\x61\xcc\xa4\xb0\x03\x46\x63\x89\xf7\x56\x42\xbc\x4d\x95\xa9\x0c\x2b\x4e\x6f\x51\x7c\x1d\xa1\x98\xed\x3d\x4b\x0c\x88\x13\xdd\x25\x69\x46\xce\x82\x9c\x0c\xad\xc8\xf2\x2d\x0b\x76\x01\x71\xe6\xcb\x98\x46\x71\x94\x90\xa1\x35\xd7\x89\x72\x97\x1e\x5a\x4b\x9d\x94\xd3\x68\xf2\xed\x71\x68\x3d\xf2\x14\x34\xc3\x2e\x5a\x98\x41\x06\xcb\x89\xf3\xb3\x93\x93\x13\x17\xcd\xb1\xb1\xd8\xd4\x39\x11\x2d\xbb\xd6\x9d\x05\x8f\x41\x84\x73\xd1\xe8\x39\xe2\xc6\x88\x1d\x00\x52\x3c\x37\xf6\xe6\x93\x19\x97\x37\xf9\x0e\x96\x48\xd6\x3a\x43\x91\xdc\x5f\x21\x8a\xf8\xe0\xda\xb6\x4c\x79\x9b\x8c\xc2\xb1\x6d\x4f\xe4\xde\x16\xa3\x48\xb1\x63\xc8\xc8\x34\x1a\xb9\xe3\x51\x38\x46\x33\x9c\xa2\x98\x7d\x89\x17\x4c\xe6\x35\x2a\x64\x6c\x55\x14\x65\xdb\x46\xb2\x46\x73\x6f\xcf\x30\xc6\xac\x92\x61\x27\x60\x39\x18\x05\x01\xcb\x82\xeb\xb5\x6c\xa4\x65\x41\xbf\xde\x5e\x08\x45\x6d\x8b\x61\xac\x37\x94\x05\xf4\xe3\xc2\xb7\x5c\x45\x14\x72\x1b\x76\xeb\x84\x41\x1b\x70\x4c\x05\x25\xd0\xe1\x68\xac\x24\x3f\x8d\x82\x5b\xf8\x53\xf4\x5a\x01\x33\x7e\x5e\xc0\x9c\x3f\x2b\x60\x52\xb5\xa7\x2f\xc0\x5c\x09\x98\x14\xcd\x3b\x18\x0b\xaf\xc5\xbc\xc2\x34\xf3\xca\x31\x27\x13\x7a\x8a\x0a\xd3\x0c\x71\x02\x62\x24\xe8\x06\xa2\xfb\xf2\x54\x83\xee\x30\x88\x1b\xa9\x38\x6e\xa2\xe2\x78\x93\x8a\x67\x82\x7c\xef\x2c\x1e\xac\x9b\x3c\xb4\x43\x30\x1b\xc6\xbe\xf5\x4f\x30\xf4\xad\x6e\x2c\x69\xb4\x6b\x41\x0b\xdd\x41\xf4\x68\x42\x11\x1b\xe4\x4d\x19\x79\xab\x8d\xfc\xb1\xb2\x2a\xf9\xde\x5a\xbd\x0d\x6a\x4b\x46\x1d\x80\x5b\x34\x81\xc3\xd1\x64\xec\x8f\x4a\x31\xf2\x06\xbb\xe8\x01\xbb\xe8\x9c\x09\xbe\x0f\x6f\xd5\xb7\xc7\x70\x75\x6b\x90\xe6\x6c\xf8\xe0\x8b\xbb\xac\xef\xe8\x92\x97\x34\x1b\x4e\x7c\x65\xf8\xf7\x00\x4d\x19\xf9\x72\xbd\x06\xdf\xf1\x12\xa4\xc0\x28\x81\x75\xdd\xf5\x1f\x20\x44\xba\x75\x10\x63\x7c\x03\x1f\x70\x04\x26\xe8\x01\xdd\x43\x1d\xa4\xf9\x5c\xd0\xb0\x2a\xfd\x06\xb1\xcf\xce\x15\xfc\x77\xd9\xe3\xf6\xb9\xee\xc5\x15\xf6\x8e\xaf\xde\x62\x25\x12\xee\x78\xc7\x57\x02\x39\x44\x96\x75\x39\xba\x1a\x6f\x2b\xe3\x01\xdf\xe0\xef\x0a\x26\xa4\x5d\xaf\x9c\x55\xbd\xb9\xad\x09\xf5\x45\x69\x54\xd2\x70\x94\x14\x4a\x17\xb6\xe5\x09\x45\x0b\xdf\xf8\x7a\x4f\x6c\x7c\x04\xf4\x06\x07\x70\x43\x6e\xd9\x1f\xc8\x98\x69\xfc\x0e\x79\xd7\xd9\x2d\xb1\x50\xd3\x8a\x91\xb3\x54\x1a\x6d\xaa\x46\x4a\x5f\x06\x6e\x9c\x59\xb4\xb6\x69\x07\xad\xdd\x60\xf7\xd6\xea\x28\xe7\xcc\x95\xd4\xac\x59\x81\x85\xb8\x7a\xc5\xb7\x6e\x2d\x7e\xd9\x3c\x4c\x37\x2c\x9a\x08\xa6\x15\x0b\x2f\x6b\x57\x47\xca\xd3\xac\xd7\xda\xb5\x94\xa2\x26\x4a\xda\x64\x48\x84\x5a\xc7\xef\x24\xb6\x5d\xd1\xeb\x89\x3e\x28\xf8\x55\x02\xfd\xd2\x4b\xd4\x2f\xbb\xc3\x1a\x9a\x04\x73\x62\xdb\x69\x93\xaa\x33\x32\x6c\x28\x2b\x68\xad\x5c\xdd\xd4\x1b\x1c\xc8\x99\xda\x50\x92\xf1\x99\xea\xff\x01\xb0\x9b\x57\x84\xfe\x1f\xc2\x6e\x06\x61\x73\x64\xa5\x0a\x66\x26\x6b\x02\x44\x04\x97\xa8\x99\x84\xa3\x66\x6e\x87\xcc\xec\xd5\x43\x85\xd5\x88\xd4\xeb\xb1\xae\x05\xc9\x64\x56\x75\x58\x6c\xe8\x1d\xad\x77\x8f\x51\x92\x84\x4f\xa5\x5a\xf2\xef\x1d\xf9\x5e\x4f\xd4\xfc\xd4\x0d\xbc\xaa\xf9\x36\xba\x7b\xe5\xa0\x8a\x4f\x2c\xf6\xff\x4d\x95\x3e\xa5\xf6\xd4\x95\xc6\x51\xf2\xed\xd5\xd5\x8a\x8f\xb6\x56\xfc\x94\x6b\x93\xae\x38\x8d\x9f\xf3\xd5\xdb\xac\xf7\x89\x3a\x5f\x13\x58\xc0\xeb\x1d\xf0\xa8\x40\x0a\xbe\x58\x71\x91\x15\xdb\xd3\xbe\xa4\x51\x42\x4f\x9f\x0c\x82\xa0\xf1\xcc\x0f\x7c\xaf\x57\xc6\xcc\xeb\xbd\x28\xe4\x55\x89\xc7\xa1\x8e\x6d\x3d\x1e\x27\xd5\xb2\x1c\x92\x84\xf9\x2f\x11\x9d\x55\x21\xbc\x3d\x08\x2c\xf5\xc6\x82\x46\x6b\x55\xe2\x76\x57\x71\x82\xcc\x2f\xd3\x8d\x4b\xb3\x2d\x81\xaa\x02\x9c\x19\x71\x4f\xf2\x72\xb3\x4e\x87\x81\xaf\xa3\x9c\x70\xc5\x41\x60\x9c\xcc\x88\x69\x5e\xa7\x44\x9d\x18\xe5\xd0\xd7\xe7\xfa\x1d\x05\x82\x85\x72\xb6\x4b\x2a\xe8\xee\xde\xa1\xef\xf5\x6a\x71\x4c\xd0\xbe\xe7\xef\x7b\x6c\x58\x9f\x0c\xf8\xa4\xe8\x69\x1a\x7d\x7f\xd6\xf9\x73\x83\xa0\x28\xdd\x4e\x51\xf5\xc8\x4b\xcd\xb5\xa6\x09\x9d\xa4\xf1\xef\x60\x18\xec\x4b\x0b\x59\xf2\xe3\x26\xa6\xb1\xff\xf4\x9e\x5a\x36\x20\x8f\x9e\x75\x00\xdf\x5a\xbf\xf8\xb6\xb1\xfa\xe7\x2e\xa3\xfb\x3c\x9a\x9e\x44\x8b\x9b\x66\xe9\xfc\x4c\xe2\x98\xa1\xa8\x92\xaa\xd6\x94\x69\x56\xd8\xe9\x44\xb6\xed\x75\xb4\x7e\xca\x24\xeb\xca\x47\x15\xda\xd6\xb8\x1b\x28\x12\x66\xc6\x9b\x11\x3d\xb0\x7b\x9c\x9e\x04\xc7\xfc\xfe\x95\xe2\x6e\x15\x43\x14\x65\x80\x22\xcf\xf3\x06\x9e\xe7\x41\x23\x40\xac\x01\x24\x42\xbb\x56\x3b\xca\xdb\x49\x4a\xdb\x41\x5b\xa0\xa2\x33\xa6\xd0\x5e\xb0\xc6\x58\xb0\x15\x49\xbb\xa6\xb7\xfb\x7b\x7b\xfd\xfd\x21\x1b\x59\x3f\x01\x7b\x7b\xbd\xa3\xfd\x2e\x00\x74\x87\x03\x75\xee\xc3\x93\x13\xcf\x85\x88\xfe\x97\xe7\xf6\x06\xdd\xbd\xfd\x7e\xcf\x85\x5a\x9b\x17\xf1\x70\x4e\x40\x10\x9d\x11\xeb\x42\xb3\x91\xd7\x05\x57\xea\x1d\xc2\x4d\x7e\x11\x25\x93\x78\x19\xf2\x20\x55\xe5\xc0\xaa\xc4\x06\xd6\xd6\xe9\xfc\x7f\x75\x50\x0b\xe3\x63\xed\x2d\xf7\x9a\x70\x86\xc6\x82\xae\x2f\xe4\x97\x6c\x83\x11\x0d\xe2\x68\xf2\x9c\x8f\xf1\x06\x3d\x47\x4f\xac\xe4\x17\xdd\xff\xf1\x3d\xc1\x85\x2d\x11\xd7\x4c\x0a\xa2\xd6\xa6\xb3\xac\x61\x11\xa7\xf9\x5e\x69\x16\xd7\x14\xd2\x4c\x07\x30\x2b\xcd\xe5\x22\x1d\xfc\xe7\x44\x63\xc3\x0e\x9b\xad\xdb\x7c\xc0\x24\xd0\x0c\x25\xba\x96\xae\x0e\x7c\x86\x36\xcc\xd9\x94\x40\x28\xb7\x26\x1e\x84\x8c\x8f\xc1\x4b\xf6\xe4\x17\xc8\x02\xcd\x92\xcf\x2c\x23\xd3\x2d\x5c\xe4\x39\xd7\xe0\x32\x36\xd8\x91\xb6\xf2\xd1\x14\x9b\x05\x0f\xcd\x0c\x80\x1d\x6f\x9d\x2c\x78\xe0\x67\x6f\x63\xaf\x6a\x64\x09\xa3\x31\xca\xb1\x7b\x1c\x9d\xe4\xc7\x50\x7a\xc5\xa8\x63\xf1\x28\xe7\xd0\xc2\x28\x7f\x9b\xda\x76\xf5\x5d\x49\xdd\xf9\xb8\xb4\xd8\x0f\x36\x16\x6f\x73\x08\xae\x5e\x3d\x5c\x50\xdd\x98\xc9\x14\x3b\x32\xb2\x20\x01\xf5\x05\x24\x57\x05\xd9\x46\x17\xf7\x64\x94\x1b\x35\x7f\xf9\x3c\x88\x9f\xf3\x85\xdf\x98\x3f\xf9\xd1\xb6\xc5\xf3\xaa\xc0\x35\x0d\x32\x4d\x4e\x83\x8c\x6e\x91\x6a\xca\x77\x15\x3e\x55\x26\x3f\x29\xd9\x54\xbe\x4e\xb1\xc4\xfc\x66\x92\xc9\x0b\xc5\x1c\x4d\x36\x10\x05\x4f\xca\x30\x01\x4a\x4b\x19\x26\x45\x69\x37\x50\x5f\x62\x8c\x83\x17\xc9\x30\xf5\xb0\x36\xcd\xf3\x47\xb3\xe8\xdb\x73\x5b\xf9\xe6\x04\xca\xaf\xb6\xce\xe0\x53\x31\x07\x75\xd5\xcb\xdb\x57\xd7\xbb\x7c\x42\x1e\xaf\xc7\xcd\xd9\x52\xe9\x6b\xa3\x37\x88\x4f\xb6\x56\xfa\xcc\xfe\xd2\xef\x41\x20\x60\x6e\x5f\x57\x6b\x5f\xd7\x25\xe0\x35\x79\x5d\x2f\x0a\x5f\x57\x03\xf9\xdd\xdb\xaf\x5a\xb6\x7a\x9e\x0c\x6f\x7b\xd4\x83\xce\x5f\xcf\xff\xce\x95\xfd\xfb\x12\x50\xc0\xeb\x0d\x04\xa2\x80\xd7\xeb\x09\x48\x01\x1e\x4f\x3d\x94\x01\x51\x38\xa8\x00\x8f\x2f\xcf\xc3\xb4\x0f\x0e\x05\xac\xc0\xde\x91\x40\x15\x38\x38\x80\x1c\x50\xa0\xbf\x2f\xe0\x04\x0e\x8e\x24\x9c\xc0\xc0\x95\x70\x02\x8c\xf3\xde\x28\xa4\xe1\x07\x65\x98\x77\x2e\xdd\x57\xbe\x63\x81\x90\x83\x2e\xa5\x4d\xdf\x15\x4f\xe8\x41\x74\x2d\x8d\xfd\x3e\x4b\xc4\x12\x74\x8a\x2f\x39\x46\xc0\xb5\x33\x45\x67\xf8\xbb\x33\x45\xdf\x30\x55\xf1\xde\xbf\x62\xea\xfc\xe5\xea\xf2\x02\xfd\x0b\x7f\xb5\xed\xaf\x8e\x00\x0b\x8e\xa6\x8f\xe8\x1d\x0e\x81\x75\x33\x8b\xc2\x90\x24\x16\x44\x17\xec\xb1\x1a\x87\xe7\x23\x5e\x15\xce\x42\x1a\x42\x7f\xcc\xcf\x85\x55\xf6\x6d\x4c\xd0\x27\x1c\x03\x2b\xe7\x35\xec\x64\xe4\x2e\xca\x69\xf6\x68\x41\xf4\xbe\x4c\x66\xa2\xcf\x6f\xec\x31\x5d\xec\x94\x29\x3f\xe1\x0d\x44\x8c\x1f\x9b\xee\xde\xbf\xd9\x76\xa7\x73\xe5\x4c\xd1\x9f\x31\x75\xfe\x47\x7c\x83\x7e\xc6\x9d\x3f\xaf\xd7\x9d\x3f\x97\x1f\x57\x9f\x78\x04\xe9\xb3\x59\x14\x87\xe8\xdf\x38\xb1\xed\xbc\x49\x79\x73\xd0\xc1\xe7\xe0\x0b\x58\x15\x7c\xe7\x5c\x35\x9b\x61\x7d\x29\xf7\x56\xb9\xc3\x1f\x14\xd0\x61\x9c\x86\xfd\x0b\x61\x45\x99\x5d\xea\xa3\x4f\xc1\x4f\x88\xc2\x56\xa2\x1d\x03\x7e\x1a\xd1\x31\xfa\x22\x33\xa1\xc4\xb6\x49\x07\xe3\x9f\x6c\xfb\x0b\xcb\x88\x12\x58\xf8\x5f\xd0\x2f\x0d\x3e\xd3\xef\x47\x64\x8c\xcf\xc1\x37\xc3\xef\x44\x03\xd7\x39\x37\xdf\x30\x41\xb4\x40\x3f\xe0\x1f\x6d\x5b\x8e\xb6\x31\x72\x8e\x0a\x6b\x3f\xdc\x5c\x62\x1b\xb9\x49\xd1\x08\x89\x6a\xaa\xcc\xbe\x15\xe8\x43\x15\x3d\x31\xa9\x78\x87\xfe\x64\xdb\x1f\xc0\x6f\x3c\x19\xdd\x73\x59\x0c\xdf\x08\x67\x6d\x74\x0f\x12\x88\x32\xf0\x1e\x51\x38\x04\x89\x43\x34\xfd\x70\xe8\x73\xf4\x0e\xda\x36\x19\xbd\x1b\x8f\xe8\xd8\xb6\x81\xfc\x85\x45\xb4\xe0\x73\x90\x68\x37\x80\xdb\x98\xf8\x0f\xc0\xe5\x11\x02\xb9\xb7\x34\xff\x76\xbd\x66\x03\xfb\x0e\x3d\x00\x0f\xad\xb8\xa3\xbd\x2a\xc0\x85\xe8\xdf\xb2\xa1\xd0\xff\x22\x7f\x15\xe8\xef\x75\x1b\x43\xb6\xd9\x68\x6c\x4c\x94\xe0\x05\xa0\xf8\x91\xa3\x23\x47\xd8\x45\x29\x56\x81\x21\x8f\xd3\x93\xe8\x18\x7e\x00\x4c\x90\x4c\x46\x11\x3b\xc8\xd0\x51\x56\x06\x90\x24\x05\xfa\x6b\xc3\x24\x7e\x34\xaf\x31\xf0\x0d\xe0\xc1\xed\x4a\x87\x12\xe9\x4f\xfa\x93\x6d\xb3\x11\x22\x02\x99\xf8\x37\x44\x20\x37\xb5\x04\x94\xa3\xd6\x49\x7d\x07\xff\xfd\x9e\xff\x90\x69\x6c\xec\x78\xf0\xbe\x77\xe3\x11\x19\xc3\xf5\x9a\xc2\x02\xfd\xcf\x26\xe6\x05\xc1\x8f\xd5\x39\xe1\x14\x28\xcb\xa3\xbc\xbc\xdf\x10\x85\x25\x05\x13\xc3\xe9\x25\xa9\xe4\xab\x4c\xd8\x7a\x5d\x99\x50\x3e\xe8\x49\x51\xa0\xbf\x34\x03\x35\xa2\x04\x9f\x01\xd6\x12\xa8\x8e\x8e\xee\x71\x62\xc0\x47\xf0\x5a\x70\x22\x20\x24\xd6\x6b\x8a\xf1\x3b\xfe\x6f\xb0\x5e\xab\x13\x5f\x29\x18\x14\xe8\x6f\x5b\x6b\xe1\x14\x89\x22\x7c\x06\x92\xe1\x6f\xbe\xa8\x31\x65\x35\xb2\x93\xa9\x3a\xed\xb2\x03\xaa\xe8\x18\x8e\x44\x70\x8b\xf5\x3a\xe1\xe3\xff\x13\xef\x6b\x2a\xaa\x7c\x3f\xa2\xe5\x24\xa7\x45\xeb\xc7\xf5\x1a\xa4\x00\x7c\x33\xfd\xaf\xa5\xb3\x4c\x65\xc1\xc8\x53\xad\x46\x87\x01\x96\xe0\xc5\xe5\xc1\xd6\x30\xd1\xec\x58\x42\x33\x4f\xf0\x64\x53\x6e\x6a\x56\xd2\x22\xc3\xfb\x3e\x11\xa7\x21\x41\x48\xd2\xf4\xf8\x37\xc4\x97\x9d\xa6\x13\xf1\x73\xf4\x6e\xcc\xa9\x0c\x94\x64\xc3\xd7\xda\xbf\x95\x40\xc7\x16\x52\x02\x35\x16\x4c\x3b\xb1\xed\x9f\x6d\xfb\xdf\xe0\xa7\x26\xf3\xd5\x9c\x50\x9f\x16\x10\xfd\xc2\x3d\xc1\x5f\x0a\x70\x24\xdd\x81\xbe\xb1\xe5\x7a\xe9\x4c\xf1\xff\xa0\x6b\x67\x8a\x3f\x20\x65\xb7\xcc\x36\x2f\xfc\x17\xfe\xb8\xcf\x1e\xff\x8a\xae\x9c\x29\xfe\x1b\xe3\x9c\x1d\x8e\xfc\x63\xdb\x29\xf8\x09\x59\x4d\x7b\x92\x85\xfe\xca\x09\x7c\xe6\x4c\x9b\x1c\xd9\x7f\x01\x21\xf7\x90\x81\x28\x02\x91\xf3\xa1\x1b\x39\xbf\x74\x23\xe7\xfd\x9b\xce\x8f\x68\x25\xa6\xc7\xff\x56\x94\xfc\xe0\x7f\xb1\x19\xef\x0c\x45\xf9\x19\xbf\x72\xb8\x5a\x64\x24\x08\xf9\x16\xa8\xd8\x2c\xe2\xb6\x99\x48\x5a\xc9\x21\x61\xf8\x81\x24\xdc\x0e\xe2\x17\xa1\xc8\xd8\x56\x91\x01\x20\x85\x96\x49\x3e\x49\x17\xac\xb8\xbc\x82\x61\x4e\x08\x76\x8f\xff\x57\x51\x01\x21\xc7\x30\x04\xff\x3b\x22\x22\x6c\xad\x26\x77\x82\x3f\x83\xd0\xc9\x69\x9a\x11\x88\x32\xf6\x09\x55\x07\xd3\x93\x8c\x1c\xc3\x29\xa0\x64\x94\x89\x8f\xb8\xdf\x8e\xea\xb0\xa4\x47\x0b\xb1\xa5\xd3\xac\x68\xfd\x84\x48\x17\x5b\x16\x1c\x7e\x1a\x91\xb1\xcf\xfe\xc1\xdf\xd8\x54\xa3\x6f\xe4\xf1\x7d\xed\xa3\x68\x0a\x3a\x3f\xb0\xc1\xad\xd3\x3d\x31\x95\x39\x62\xeb\x61\xe4\xae\x3b\xd0\x8e\x92\xf6\x27\x18\x4d\xc1\x27\xc6\xb7\x8d\xd8\xcb\xb4\x40\xcb\x9c\x5c\x11\x4a\x4d\x00\x6d\xb8\xfa\x19\x77\x5c\xf1\x2a\x9a\x2f\x4c\x37\x17\xfe\xca\x2b\xe4\xec\x96\x1d\xad\x23\x59\x3e\x7d\x09\x4d\x87\xe7\x80\x40\xff\xef\xe0\x5c\x38\xff\x15\xa8\xe6\xf0\xf8\x01\x6d\x40\x57\xfe\x1d\x6d\xf5\x17\xfb\x1f\xd4\x00\x86\xe8\xff\xa5\x96\x2a\xe6\x22\xf7\xff\x56\x08\x46\x90\x10\x5c\x15\x5c\xae\x9c\x29\xe0\x3b\x9f\x31\x89\x09\x31\xfa\xd6\x5c\x5e\xc3\xb4\xb2\x92\x6e\xa5\x9f\x18\xfa\x6a\xdb\x65\x79\xa0\xf3\xe3\x7a\x9d\x37\xdc\xbd\x7d\x03\xfa\xde\x4d\x78\xd6\x5a\x1d\xfc\x2f\x20\xb6\x1c\x6b\x55\xf0\xa7\x55\xe0\x93\xc2\x78\x16\x0d\x13\xab\x0d\x42\x64\x31\xf1\x93\x1f\x2b\xa5\xe4\xb9\x45\xa7\xc8\xb6\xe0\x11\x19\xa3\x08\x7b\xc7\x1b\x9c\x30\x3a\x56\x2e\x8d\x25\x47\x8c\x04\x65\x4f\x41\x86\xd9\xde\xe1\x8d\x11\xb8\x03\x8c\x7f\xeb\x2b\x7f\xbe\xab\xfe\x60\x98\x93\xcc\xf9\xfb\x0a\x9c\xb0\xdc\x28\x9b\x0c\x40\x39\xce\x50\x56\xb3\x46\x80\xa8\xf3\x03\x13\x12\x34\xa9\x42\xc4\xea\xc6\x14\xfd\x4b\x5a\x68\x7c\x15\xf0\x99\xc8\x10\xdf\x46\x17\x63\x15\xbd\xd2\x48\x45\x17\x66\x1e\x15\xc4\x01\xa2\x25\xf8\xa6\xd7\x28\x7b\x62\x07\x6b\x15\x21\x85\xb1\xb8\x25\x90\x32\xbd\x1c\x5a\x09\x0f\xa7\x31\x34\xa5\xed\xbe\xdb\xf3\x3d\xb7\x87\x4a\x38\xc2\x7d\xdf\x73\xf7\xb5\x0f\x4a\x69\xdb\xaf\x90\x0c\x06\xbe\xd7\x1b\x94\x51\xcd\x6b\x01\x3d\xbd\xc1\x9e\xef\x0d\xf6\x90\x37\x38\xf4\xbd\x01\x7b\x7f\xe4\x7b\x83\xa3\x12\xe9\xc0\xb8\xf4\xdc\x3b\xf2\xf7\x8e\x1a\xdc\x9c\xa5\xaf\x8b\xeb\x1f\xb8\xe8\xe0\xc0\x3f\x50\x88\x7f\x12\xe9\xa0\xe7\x1f\xf5\x9a\xe3\x21\xd4\xe3\x79\x3e\x13\x8f\x75\xa0\x6e\x4f\xfb\x55\x00\x00\xae\x34\x0f\x94\xa6\x24\x97\xe7\xb2\x58\xc6\x3f\xe0\x31\x6e\x7f\x5c\x4e\xa7\x24\x93\x07\xbf\x3d\x76\xf0\x4b\x2a\x2f\x42\x9c\x38\xef\x02\x1a\xfc\x1c\x91\x07\x34\xc3\x99\x73\xfa\xe3\xcf\xb6\x1d\x3b\x51\xce\x53\xa6\x78\x62\x4c\x29\x57\x59\x70\x4f\xa8\x9f\x3f\x9e\xff\xa2\x11\xf2\x7e\x11\x5a\xf8\xb8\x83\xf1\x04\xa2\x95\x51\xbc\x3f\x29\xa4\x3f\xac\x40\x62\xc8\x9c\xb3\xcb\x8b\xab\xeb\xaf\x32\x24\xb0\xc8\xc4\xbd\xfd\x58\x6d\x4d\x8b\x7c\x66\xdb\x33\x8e\x91\x96\xf3\x28\x03\x0b\xe5\x76\x88\x94\xfa\xe7\xa7\x27\x63\x1c\x75\x12\xf2\xd0\x9e\x80\x1e\xd4\x36\x9f\x52\xea\x70\x6e\x1f\x29\xf9\x54\x46\xd1\xaa\xb6\xa7\x29\x24\xb6\xb6\xf4\xea\x60\x3c\xb5\xed\x92\xcd\xd6\x8c\xbb\x22\x69\x1e\x63\x8a\xe3\x58\x26\x1a\xb5\xa2\x84\x47\xbd\xc9\xd8\xbc\xa5\xa0\x16\x4b\x3b\xe3\x08\x13\xe4\x01\x2c\xc5\x4a\x9d\x40\x08\x02\x90\xef\x24\x10\x4a\x8f\xa6\x50\xd6\xb2\x90\x4f\xd2\x8b\x26\x79\x9b\x1f\x43\xee\xb7\xf5\x53\x94\xd0\x43\x30\xef\x76\xd1\xcc\xb9\x53\x8f\x49\xb7\x5b\x2a\x1f\xe3\xa2\x28\x21\x6c\xcc\xfe\x1b\x61\x91\x0d\xdb\x8d\x6a\x08\x6d\x6f\xd0\xf7\xbd\x41\x1f\x79\x83\x81\xef\x0d\x06\xdb\xe0\x2d\x4a\xe4\xd3\xe7\xe2\xbe\x96\x84\xd4\x11\x24\xcf\x28\x11\xad\x14\x6d\xfa\x82\xfc\x35\xad\x4a\xe7\xfa\x6a\x23\x4a\xfd\xe6\xd1\x06\x9c\xef\xa0\x07\x81\xc5\x51\x21\xfb\x3d\x0b\x0d\x9e\xd1\x4b\x33\xf6\x5d\xd7\xdb\x88\x44\xa5\xbb\x19\xf4\x7c\x6f\xc0\x75\x37\xf5\x60\xaa\x95\xca\xf6\x07\x16\x3a\xfc\x23\x2b\xf3\x9a\x2b\xfb\x98\x50\x6f\xbf\x66\x74\xf9\x9f\x56\xb5\x19\x3b\x5b\x55\xf5\x87\x0f\x61\x7f\x6b\x55\x87\x35\xab\xe3\xff\xb4\xa6\x41\x73\x4d\x6c\x7d\xfc\xe1\x03\xb8\xb7\xbd\xae\x3f\x7c\x04\xf7\xb7\xd7\xf5\x47\x0f\xe1\x26\x56\xf6\x1f\x56\x95\x8e\x52\x5b\xd6\x76\xf8\xbc\x85\x91\xf0\xf3\x3f\x14\x9b\xe3\xc0\x85\xa0\x41\x21\xca\xb7\xc7\xa3\x3d\x89\xae\x7a\x28\x74\xa1\x6c\xbb\x9c\x48\xbb\x24\xa1\x0a\x65\x3f\x66\xb8\x93\x38\xa7\x13\x76\xbe\xf9\x9b\x90\xfe\x6c\xdb\xaa\x3c\x5b\x51\xd2\x4e\xd0\x14\x07\x8c\xb5\xfe\x42\x82\x6f\x68\xd1\xe4\xd6\x8e\xe6\x38\x76\x96\x53\x7e\xa6\xa9\xc5\x3d\xfb\xc3\x2c\x9c\xd0\x1d\xde\x88\x2c\x1c\x4d\xc1\x92\x89\x89\x92\xc9\x4e\xcb\x7b\x88\x8e\xd8\x63\xe6\x60\x22\x75\x82\xac\xf1\x3c\x60\x30\x0f\x5a\xcf\xfd\x41\x87\x1a\xf5\x62\xac\x11\x06\xb6\xc7\x1e\x8e\xb9\x1d\xd5\x46\x71\x48\xc6\x1d\xbe\xc5\x1b\xe6\x5e\x2a\x0f\xba\x47\x77\x28\x46\x1d\x97\x4d\x7a\x2b\xb4\xed\x99\x6d\x83\x1c\x80\x4c\xa0\x20\x9c\x95\x5a\x05\x70\x5f\x69\x68\x29\x71\xde\x41\x14\x38\x17\xe7\xe7\xef\x70\xc7\x45\x11\x18\x59\x42\x53\x69\x21\x76\xdc\xb5\x90\x75\x47\xb8\x55\x02\xa1\xd6\x78\x13\x37\x8c\xe2\xdb\x4a\x7c\x6b\x3a\x22\xe3\x56\x0a\x28\x22\x46\x5e\x8a\x22\x39\x9e\x94\x49\xdf\x0b\x26\x2b\xcb\x1b\xdb\x29\x13\xbd\xc5\x2f\xbe\x09\x67\xe2\xc4\x93\xca\x4b\xd9\xe9\x88\x8c\xf9\xe7\xea\xc4\xc1\x9a\x81\x31\x11\xbe\xb6\xa9\xba\xbf\x37\x82\xaa\x23\x2a\x10\xc7\xd8\x39\xc3\x04\x48\x56\xf6\x67\xae\x3f\x70\xd1\xe0\xd0\x1f\x1c\x0a\x2b\xb4\x2a\xd8\x8e\x90\x36\x55\x5c\x84\x7a\xe0\xd6\x66\x40\xe8\x43\x25\x61\x72\x57\x0f\x3d\x3b\xff\x7f\x31\xc8\xe3\x68\x3e\x20\x33\x08\x49\x1a\xe5\x09\xbf\x73\x44\x51\xc7\xab\x07\xb1\x2e\xc7\x82\xf5\xb9\x1e\x62\xf6\xe9\xd8\x1c\x7b\x4a\xa8\x76\x95\x33\xa2\x44\x16\xe8\xcb\x50\x89\x83\xbe\xbe\x5b\xe5\xd2\x91\x85\x56\xd3\x38\xa0\x9f\x83\x45\x43\xd0\x99\x9c\x43\x82\x99\x96\x9d\xed\x54\xa8\x2a\x23\x10\x1b\xc6\x4f\x01\x88\x11\x6b\x01\xc8\x51\x8c\x62\x44\x91\x8b\x3c\x64\xd8\x43\x8c\xbc\x31\x44\xb9\x90\xcc\xfa\x7d\x08\x2c\x59\xa5\x10\xca\xea\xde\x3e\x02\x8a\xa9\xef\xf7\xfb\x68\xd0\xf7\x07\x7d\x25\x80\xed\xf9\xfb\x9c\x0a\xea\xa1\x68\x9f\xc6\xea\x39\x12\x26\x0b\xb5\x3e\x3f\x61\xe7\xa1\x4d\xd8\x5e\x61\xcf\xa1\xfa\x55\x9a\x85\x14\x68\x25\xba\xd0\x3f\xf2\xcd\x3b\xef\x27\xe2\xc9\x4a\x84\x97\xc3\xb2\xc1\x26\x76\x3a\x49\x68\x16\x6d\x6b\xb0\x36\xb7\x73\x0f\x7d\xcf\x35\x7c\xab\x9f\x88\x2a\x2b\xab\x53\xb7\xd1\x7d\xb9\xd3\x1c\x49\x82\xd9\xf3\x36\xdb\xb0\x4d\x8d\x92\x6f\x51\x17\x04\x28\xc7\x89\xf0\x4c\x8a\x78\x34\xce\x0c\xe4\x6c\x6f\x5a\x15\x28\xc4\xee\xf1\x52\x8d\x6b\x78\x0c\xf5\x29\x04\x04\x98\x23\xcd\xe1\xe5\x28\xe4\x86\x07\xb6\x9d\x82\x89\x80\x3c\x93\xfd\x9d\x14\x15\x2c\x13\x75\x18\xde\xf3\xfc\x3d\xaf\x8e\xea\xf3\x44\x34\x5c\x63\xbc\x1b\xfa\xca\x4f\xfa\xaf\x1e\xee\xd7\xc0\x48\xed\x49\xcf\x61\xb5\xc7\xf3\xa3\x6c\x2a\xc1\xcb\xb5\x25\xc0\x57\x13\x87\x72\x1a\x25\x41\x1c\x3f\x36\xdc\xf9\x47\x12\xfa\x55\x81\x74\xae\xd7\x89\xfa\xc9\x16\x7e\x83\xea\x84\xb4\x4c\x85\x2f\x47\x61\x0c\xca\xfb\xa8\x12\x3d\x89\x6f\x1e\x00\x6e\xe0\x4c\x96\xe3\xc1\xb8\xbb\x4f\xd0\x2b\xbf\x16\x9a\x48\xf9\xb1\x1a\x50\x85\xe4\x28\x0f\x68\x02\x87\xb1\x16\xa1\xb0\x1e\x33\xf8\x19\x73\x0b\xe5\x9f\x2d\xa2\xc7\xee\xfe\x2c\x30\xdf\xff\xb1\xeb\xb9\xff\x70\xfe\x11\x76\x01\xff\x17\x0e\x41\xfb\x73\x7a\x1b\xc5\xe4\x1f\xbb\xff\x78\xe8\xc2\x61\xfb\x2a\x98\x06\x59\xf4\x8f\xdd\x5d\xe1\x6b\x93\x98\x16\x64\x91\x61\x89\xb1\x08\xc2\xf3\xa4\xd9\x18\xfb\x75\x7c\x84\xdf\x9d\x49\xcb\x16\xd7\xf7\xfa\xae\xc6\xa9\x2c\xc9\xeb\x55\x1a\x96\xff\x07\x3d\xbf\xa2\xc1\xb6\x50\xf7\xaf\xec\xbb\xfb\x6c\xdf\x9f\xb2\x5e\x36\x0d\x17\x3e\x91\xe9\x6b\x37\x7a\x3e\xf0\x88\x7f\xcd\x7b\x64\xd5\x0c\x19\x9e\x8c\x56\x6c\xd6\xfd\x35\xba\x9b\xbd\xb6\xf2\x5e\x59\xf9\x79\x12\xd6\xaa\xee\xd7\x83\x8c\x0a\x33\x06\x60\x05\xf9\x63\x32\xf9\x28\xef\x37\xc4\x47\x42\xe7\xc7\x3f\xaa\xed\x90\xa5\x4d\x18\x01\xde\x7e\xaf\x8c\xa4\x22\x7d\x62\x95\xc9\xc5\xa1\x04\x13\x93\xa8\x34\x87\xfb\xd2\xb5\x92\x71\xaa\x18\xe7\xc0\x8a\x74\x85\x68\xc9\x9e\x2b\x91\x36\xd0\x04\x07\x42\x0d\x87\x42\xbc\x3a\xbb\xba\xfa\xba\x8c\xc9\xa7\x28\xa7\x7e\xc7\x45\x67\x57\x57\x57\xf4\x31\x26\xef\xc8\x24\x0e\x32\x1e\x7b\xcb\xef\x78\x2c\xf9\x67\xc6\x68\x45\x36\x0f\x9d\xc5\x11\x49\xe8\x57\x32\xa1\x2a\xe5\xdd\xe5\xe7\xda\xa3\xa8\xd2\x48\xb8\x4e\xbf\x91\x44\x55\xf4\x2e\xa0\xc1\x75\x16\x24\xf9\x94\x64\x1f\x29\x99\xab\x7c\xef\xa3\x58\xd7\xf2\xe7\xeb\xcf\x9f\x4e\xe3\xf8\x2c\x8d\x63\x81\x9e\xae\x12\x37\x53\xde\xa7\xd9\xfc\x3c\x26\x8c\x5e\x55\xd2\x15\x61\x79\x8c\xc4\xcf\x24\x8c\x02\x55\xff\xe7\x68\x4e\xae\x1f\x17\x84\x0f\x04\x7b\x7b\x11\xcc\x49\x78\x91\x86\x84\xc9\x58\xec\x39\x0d\xf5\xa8\x7c\x09\x22\xd6\xdb\x7f\x2f\x49\xae\x7b\xf8\x25\x5e\xde\x45\x49\xf9\x4b\x17\x74\xf5\xf3\x07\xa1\x65\x53\x39\xaf\x7e\xfe\x20\xe2\x9c\x19\x09\x5f\x02\x3a\xbb\x22\x77\x66\x4a\x1a\x25\xd4\x78\xae\x0e\xdf\xd5\xcf\x1f\xc4\x68\xa5\x99\x1e\xaa\x2b\xee\xb1\x23\xf4\x66\x3a\x8d\x4d\xde\xd5\x8c\x10\xaa\xda\x7e\x4d\xbe\xd3\xeb\x2c\x98\x7c\x3b\x2b\xa7\x4f\xa7\xe9\x84\x74\x39\x51\xed\x2d\xd0\x0c\x67\x20\x84\x1c\x02\x64\xfa\x76\xa6\xae\xee\xa7\xdd\xae\x84\xff\x40\x73\x3c\x1b\x4d\xc7\xe8\x1e\x87\xa3\xf9\x18\xdd\xe1\x88\xfd\xb9\xc5\x77\xb6\x6d\x04\xdb\xe6\x00\x0c\xb6\x0d\x6e\x47\xf1\x78\xbd\x4e\xc1\x2d\x8a\xd1\x04\xa2\xdb\xd1\x52\x3e\x2e\xd1\x1c\xa2\x60\x34\x1f\xe3\x09\xba\x87\x90\x51\x3f\x57\xb1\x52\x78\x3b\x5a\x8c\xd7\xeb\x04\xdc\xa2\x05\xa2\xa3\xc5\x58\x4a\xe1\x65\x38\xa0\x5a\xf8\x16\x6f\xbf\xe7\x7b\xa5\xda\x8f\xeb\xc4\x0f\xf7\xfd\xc3\x7d\xbe\xca\x9e\x13\xe5\xfa\x83\x52\x0b\xf8\x23\x87\xeb\xfa\x38\x9f\x33\x5a\xa1\xc4\xe7\xc8\x62\x68\x12\x93\x20\x33\x13\x79\x82\x64\x84\x02\xac\x58\x31\xc0\xfe\xd6\x48\xba\x87\x55\xc0\x44\xc9\xee\x47\x63\xa9\xd9\x4e\xf1\xee\xe7\xab\x8f\xe7\x6d\xe7\x1f\x8e\xe6\xe8\x66\x88\x8c\x66\x75\x86\xb2\x36\xd8\xe0\xdf\x3d\x94\xe2\x0e\x47\x72\x92\x50\x08\x2a\x03\xea\x95\xd6\x16\x20\x19\x1a\xfc\xae\xe9\xe2\x86\x0e\xa9\xff\xbe\xb4\x98\x95\x88\xc7\x82\x23\xa6\xb0\xe0\xea\xe2\xa2\xe0\xc8\x8f\x1f\xba\x99\xf3\x23\xc7\x4c\x4d\xf9\x20\x5e\x47\x73\x92\x2e\xa9\x1f\x00\xea\x94\x8f\x90\x9d\xe6\x3f\x26\x94\x64\xf7\x41\xac\xde\xa9\x67\x69\x31\x6a\xee\x29\x5a\x9e\xe8\x57\x43\x09\x23\xee\x4d\xd7\x77\xfb\x5c\xa8\x77\x7b\xe2\x8f\x07\x91\x79\xe4\xdf\xe3\x27\x36\xc6\x67\xfb\xae\xc7\x29\xa1\xef\xf6\xf8\x14\xf5\xdd\xbe\x90\x5a\x78\xc9\x7b\xf5\x92\x85\xe2\xfc\x99\x3d\x7c\xc3\xfe\x2a\xc3\xd4\x99\x05\xb9\x21\x7b\xa3\xa4\x49\xa4\x13\xf7\x51\x43\x79\x57\xbe\x2a\x50\x84\x13\x6d\x6b\xb4\x5e\x5b\x7f\xfa\x93\x66\xe0\xdc\x76\xa6\xb2\x89\xf0\xf7\xd5\x6d\x05\x05\x38\x71\x0c\x1e\xcf\xb3\x98\x3c\xbf\xc4\xd9\xc8\x85\x05\x15\x4a\x14\x78\x01\x8f\x70\xaf\xbb\x60\x1a\x5f\x4c\x86\xd4\x9f\xa0\x54\x75\x53\x5c\xfb\x82\xc8\x04\xf0\x0d\xb8\xee\xe1\x1c\x24\xeb\xf5\xc8\xb0\xef\x70\x6e\xa2\xe4\x3e\xfd\x46\x36\x22\xc5\x0a\x5a\xb5\xf2\x65\xbe\x20\x49\x48\x84\x5c\x62\xb5\xea\x74\x1d\xa1\x54\x5c\x24\x92\xef\x64\xb2\xa4\x22\x22\x3f\x4e\xe4\xa5\x38\xaf\x52\x18\x83\x7c\x20\x89\x18\x82\x76\x94\xb7\x83\x38\x23\x41\xf8\xd8\xce\x96\x49\xc2\x3e\x11\x11\xfd\x27\xe9\x7c\x11\x13\x4a\x42\x51\x04\x2f\x96\x97\xc3\x9e\x23\x59\x64\xaa\x9a\x70\x09\x04\xd4\x4b\xe6\xcc\x09\x9d\xa5\x21\x8e\x50\xe6\x04\xd9\x1d\x4e\x15\xe0\x4c\x80\x33\x27\x24\x31\xb9\x0b\x28\xe7\x70\x1a\xac\xe4\x11\x04\x12\x32\x27\xe7\xb5\xe4\x18\xe3\x25\x9c\xa4\x09\x8d\x92\xa5\x16\xe2\xf3\xa2\x60\x2d\x48\xc8\x77\xca\x1a\xa0\xea\x81\x8c\xcf\x24\x14\x67\xce\x8d\xfc\x1b\x64\x77\x2d\x15\xfb\xbf\x6c\xb0\xce\xcf\xfb\x51\x1b\x47\x73\x8c\xb0\xd1\x71\xd1\x85\x56\xe6\x84\x51\xbe\x08\xe8\x64\x76\xfe\x7d\x42\x16\xe2\x00\xc0\xde\x08\x64\x17\x4b\x6a\x8a\x8c\x5a\x6c\x3b\x73\x82\xdb\x6c\xb9\xe0\xd1\x4d\xf8\x5b\x51\x16\x6c\x25\xd8\x98\x1c\x85\x2c\x25\xa7\x99\x8f\x7b\x92\x66\xf3\x20\xb6\xb8\xab\x33\x27\x16\xd6\xe2\x84\x0d\x5e\x9a\x90\xa1\xd1\x3a\xbf\xec\xc6\xdf\x23\x12\x87\x16\x9a\xf0\x11\x6f\x18\x3d\x69\x40\xc8\xdf\x0b\x37\x01\x51\x5c\x51\x94\x23\x24\x6a\xb3\x6d\x50\x1f\x02\x39\xa1\x32\xa7\x9c\xd6\x89\xe8\x7f\x51\x70\x34\xe5\x00\xa2\xb4\xd0\x4b\x45\x75\x67\x55\x02\x4d\xae\x58\xd9\xbe\xea\x1b\x13\x9a\x7d\x52\xe2\x86\x14\x75\xe4\x49\x99\x5d\xd6\xc8\x72\x27\x45\x51\x10\xe7\x21\x0b\x16\x38\x6f\x09\xc4\xa5\x55\x51\xae\xce\x09\x80\xab\xb2\x01\x61\xe5\x69\xc6\x9e\x04\x36\x1e\xfb\x64\x14\x8d\x71\xb3\x51\x50\xd1\x12\x18\x5d\x72\xdd\x56\x11\x6f\xd1\x1c\x2f\x6c\x7b\x01\x16\xe0\x3b\x18\x8d\x21\x84\xad\xb9\x6d\xcf\x3b\x98\xf1\x81\x4c\x61\x2d\x44\xd0\xb6\xc1\x14\xcf\x15\x4a\xd3\xcc\x00\xbe\x33\xae\x64\x6b\x9c\x61\x0a\xcb\x8e\xdc\x31\x96\x39\x12\x64\x8e\xd4\x00\x28\x1a\x1a\x3b\xd3\x34\x3b\x0f\x26\x33\xe3\x9c\xc9\xb8\xf9\x88\x8e\x9b\xb6\x3b\xa9\x0f\xe6\x1c\x45\x45\x78\x85\xe5\xb8\xdc\x1a\x30\x87\x2d\x33\x2f\xae\xf2\x13\xfd\x41\x00\x2a\xf8\xc7\xd4\x68\x45\x82\x02\xb8\xd2\x8f\x6d\xfe\xa5\x40\x86\x13\x73\x15\x03\x32\x8a\xc6\x88\xa0\x54\x10\xb9\xe8\x58\x07\xe3\xa5\xa4\x71\xb1\x10\x96\x82\x40\xf1\x44\xc2\x18\xc8\xda\x42\xdb\xb6\x44\x54\xba\x72\x2b\x08\xf5\xb0\x87\xc8\xba\xb9\x09\x1e\x82\x88\x5a\x70\x58\x46\x5e\x08\x1d\x99\xda\x14\x40\x22\x91\x9c\x84\x1d\xe0\x50\x0e\x2b\x1e\x3b\xe2\xb5\x1c\x7a\xf5\x1e\xfa\x46\xc9\x4d\x25\xca\x26\x63\x82\x02\x30\xd9\x28\x50\x0d\xdb\x66\xb9\x45\x0e\x96\x62\x2d\x41\x3e\x68\x6c\x24\x8b\xd2\x51\x2c\xe1\x08\x3b\x42\x79\x81\x02\xe8\x07\x00\x16\xe5\x14\x3e\x9a\x9b\x2e\xd1\x3b\xe1\x88\xca\x45\x3b\xae\x20\x9d\x64\xc2\x54\x50\x73\x61\x8e\x58\x81\x4a\x0e\x40\x4d\x1e\x59\x96\xe6\x88\xa6\xd8\x36\xa0\x9a\x17\x28\xa6\x46\x39\x33\x90\x67\x5c\xd1\x9a\xa6\x02\x35\x0a\x5a\x8b\xd6\xd9\x89\x28\x81\xd1\x93\x61\xab\x78\x3d\x23\x6d\x55\x7d\x3b\x4c\x89\xb0\xdf\x5a\x64\xe9\x7d\x14\x92\x76\xd0\xfe\x6f\xfe\xf1\x7f\xb7\x45\x59\x96\x1e\xad\x65\x21\x36\xca\x18\x64\xa8\xec\x80\xa8\xc3\x24\x3c\xc6\xf0\x05\xe1\x69\x35\x76\x73\xb3\x38\x3d\xd6\x47\x6c\xd9\x12\x12\x40\x22\x76\x87\xd2\x55\x84\x73\x68\x40\x47\x84\x91\xca\x32\xa6\xec\x64\x34\xc6\x12\xc8\x08\x51\x87\x91\x1c\x26\xfc\xcf\xa7\x74\xa2\x97\x75\xa7\x1c\xa9\xca\x20\x0b\x0a\x35\x87\x18\x6e\xb6\x05\xfa\x91\x0f\x5e\x36\xaa\x7a\x44\x45\xeb\xb4\x59\x5c\xd2\x96\x8b\xab\xa9\xf8\x92\xd8\x6e\x4a\xa1\x9c\x71\xf6\x4f\xe9\xc4\x27\x23\x77\x5c\xb4\x3c\x6e\xde\xc1\x9b\xce\xf9\xf8\xa7\x74\x82\x09\x57\x89\xf7\xca\x37\x52\xb3\x27\xde\xf5\xc6\xac\x85\x53\x4a\x32\xf1\xdc\x1f\x4b\xc7\x36\x9a\x3d\x9e\x0b\x3d\xb0\xc6\x8e\xd7\xf5\x3f\x18\x87\x02\x47\xee\x50\x51\x9a\xac\xd7\xab\xa2\x45\xf9\x6c\x62\xbd\xc1\x48\xdb\x77\x3e\x0c\xc8\xcc\x8d\x69\x59\xe0\xb9\xf6\xe3\x2b\xab\xc5\x23\xd5\x37\x2b\x4b\x53\x6a\x15\x63\x44\x34\xd7\xbd\x11\x58\x55\x3a\xaa\x11\xa1\x80\x9d\xaf\x74\x81\xdf\xe5\x35\x5e\xd9\xce\x51\xc4\x97\x20\x2d\xe9\x4c\x82\x3e\xb4\x9a\xcd\xbd\x04\x71\x68\x50\x62\x0e\x45\x14\xe5\x17\xc1\x05\x20\xda\x51\x49\x0a\x83\x3b\x9e\x01\x91\xd1\xa6\x32\x66\xe0\x71\xb7\x9b\xbc\x25\x1a\xe7\x24\x9a\x02\x85\x33\x81\x92\xd2\x5e\x4c\xf1\xaa\x51\xc2\x26\x82\x91\x2d\x0f\x8a\xd5\xaa\xbd\xd7\x3e\x52\x22\x87\x8b\x68\x51\x8a\xaa\x9c\x98\x53\x05\x2d\xb2\x62\x8f\xfe\xa5\xc1\x9b\x2e\xf5\x6e\xb1\x05\xb1\x5f\x31\x77\x63\x5f\xbc\xaf\x00\xc7\xce\xd0\xac\xf2\x1c\xa2\xd9\x28\x18\xe3\x90\x8b\x63\x71\xc0\x6d\x19\x71\x29\xca\xaa\xd3\x96\xc5\x96\x7e\xbe\x91\xdc\x60\x1d\xdf\x34\x01\x35\xf8\x5e\x75\x03\xdb\xa1\xdc\x10\x4f\xc0\x07\x6f\x56\x89\x31\x66\x8c\xb5\x6c\xd7\x7a\x4d\x39\x7c\x07\x84\x05\x22\xce\x3c\xc8\xbe\x35\xed\xd0\x52\x0e\xa8\x42\x77\x0f\x1b\x53\x01\x41\x33\xe8\x03\xe2\xdc\xdc\xf0\xf1\xba\xb9\xc1\x33\x14\xf0\xf5\xb5\x5e\x03\xc2\x06\xa6\xa1\x5d\x3c\xf6\xdf\x36\xb9\xe3\x1e\x22\xc2\x5a\x17\x70\xb1\x6a\xb3\x79\x2b\xb9\x81\xfa\xa4\x28\xd0\x1d\xb8\x35\x0f\x30\xc6\xc3\x28\xdd\x2a\x50\x21\xe2\x9c\x9a\x07\x2e\x7c\xcb\xaa\x63\x29\xb8\x6a\x5a\x80\xb8\xa4\x51\x62\x0c\x70\x54\x42\xa5\xde\x97\xd1\x64\x18\x37\xbb\x05\xb9\xfa\x00\x32\x59\x42\x2d\x94\xa6\x09\x07\x19\x1c\x06\x7e\xc0\x09\x15\x34\x6d\xd9\xfa\x63\xce\xb7\xa5\xed\xa3\xfe\x80\x5b\x50\xdc\xb1\x41\xba\xaf\x0e\xae\x85\xee\x9f\x90\x21\xd1\xbd\x3e\x50\x6e\x66\xd1\xc1\x75\x75\x61\x63\x8b\x0d\xd2\x37\xf2\x98\x37\xd0\xa7\x81\x64\x94\x89\x90\x1a\x54\x05\x74\x2b\x97\x6a\x46\xee\x49\x96\x13\x00\x35\x6a\x54\x3b\x53\xcc\x80\x96\x80\x47\x12\xcd\xda\x59\xa4\x0b\x20\x00\x8d\x44\x89\x4a\x9f\x2d\x97\x7c\x82\x32\xcd\x0f\xb2\x42\xbf\x54\x0c\x20\x2b\x58\x73\xc5\xd5\x11\xfe\x8e\xce\x0d\xda\x5a\x19\xab\xc6\x3f\x47\x9c\x3d\xd6\xed\x1b\x64\x74\x38\x72\xaf\x22\xed\x71\x26\x22\x7f\xf3\xf3\x9b\x8c\x53\xc7\x7e\x9a\x21\xee\x34\x8b\xe2\x0f\x95\x2d\x8a\x27\xd5\xb6\x4c\x96\x64\x08\x26\xf5\xad\x45\xf1\xf3\x07\x88\x3a\x04\x56\x4c\xc1\x39\x83\xb7\xa8\x90\x5e\x34\xc6\xa5\x96\x35\xc5\x85\x3f\xb4\x6d\xc9\x95\xbb\xb4\xc4\x41\x53\x6e\x0d\x74\xac\x76\xeb\x02\xe5\x34\x5d\xf8\x95\x3b\x21\xdd\x19\x57\xba\x5c\xd4\x1a\x37\x72\xc7\xc6\x76\x55\x95\x59\x88\x90\x59\xc4\x49\x95\x98\xd2\x87\xd8\x91\xee\x83\xb8\x40\x1b\x67\xd5\xc6\x49\xe0\xa0\x61\xb2\x20\xa9\x95\x61\xe9\x2d\x43\x84\x37\x2d\x7e\x02\xb9\xbf\xaa\x13\x19\x1f\x5d\x2d\xd2\x64\x28\x79\x56\x70\xe9\x74\x12\x8d\x05\x1b\xd5\x3b\x5d\x22\x5b\x45\x27\xd8\x3d\xde\xd9\x89\x14\xa8\x73\x7d\x74\xa2\x31\x0a\x70\x5a\x1f\x21\xbe\x55\x33\xbe\xe1\x88\xcd\x1b\x96\xf2\x36\x49\x42\x4b\xe2\x41\x8b\x77\x6f\xb1\xa6\x42\x1d\x1c\x4c\x4c\x6e\x8a\x2c\x25\xbf\x58\x10\xc5\x46\x72\x29\xbc\x88\xb2\x72\xdb\x8e\xab\x04\xfd\x36\xd5\xb2\x4f\x59\x79\x99\xc6\x8d\x65\x6a\xf9\xcb\x42\xcd\x2f\x8c\xd4\x42\xa9\x31\xf2\x57\xd7\x55\x28\xb8\xb1\x4e\xbc\xa9\xfc\xa1\xd9\x63\x3b\xa7\x01\xe5\xfa\xfd\xf6\x43\x44\x67\xe9\x92\xb6\xf9\xe7\xed\x34\x6b\xcb\x16\x58\xbf\xa3\xc1\x45\x51\x20\xa1\xf7\xa8\x99\x1d\x95\xe1\x8c\xb7\xce\x7c\x22\x66\xbe\xd4\xaf\xd5\x66\x3e\x19\x0b\x8c\xd0\x8d\x59\xd4\x8b\x33\xaa\x4e\x94\x0c\x82\xc9\x1b\x1f\x99\xcd\x94\xa4\x15\x09\x10\xd9\xa2\x60\xbb\x8d\xc5\x7f\xf3\x45\xb6\x5e\x5b\x4a\x7d\xc2\x9f\xa1\x6d\x1b\xb4\x63\xdb\xf4\x2d\x36\x7b\xcd\xb7\x2a\xc6\x89\xd4\x3e\x95\x0e\x4d\xfa\xf4\x57\x45\xab\xba\x88\x88\x5c\x3e\x14\xa5\x43\xb0\x8d\x7b\x09\xe9\xca\xa8\x86\x49\xfa\xfc\x8d\xd2\xcd\x80\x00\x16\x48\x3d\x6c\x5a\x3d\xbf\x80\x6b\x18\x7d\x76\x84\x27\x6b\xb5\xe3\x3c\x71\x58\x36\x87\x7f\xeb\x1b\xea\x2e\x99\x03\x68\xee\x83\x35\xe7\x25\xe2\xe4\x64\xf6\x4e\x9f\x19\x75\x81\x62\x71\xfa\x86\xca\x8b\x48\x25\x14\x95\xcc\x54\xe4\xa3\x10\x2d\x0b\x34\x8d\x92\x28\x9f\x6d\xc1\x82\xd8\x4a\x56\x54\x90\x95\x3e\x25\xd7\xc9\x8a\x72\xb2\xca\xcc\xf3\x89\xe9\x04\x54\x19\xf1\xcc\x98\x57\x94\xe9\x03\x0c\x44\x0f\x20\x63\x4d\x6c\x8a\xa3\xfa\x07\x36\x51\xd0\x20\x6f\x9e\xdc\xce\xb3\xad\x5b\x45\x62\xe8\x55\xd4\x49\x95\xb5\x52\x03\xd0\x14\xc5\x06\x5f\x88\x62\xb6\xaf\xc6\x92\x13\x04\x94\x92\xf9\x82\x5f\x15\xab\x0d\x97\xab\x19\xfd\xba\x6e\xda\x1c\x2a\xbd\x35\xaf\xd4\x61\xd3\xff\xce\x03\x53\xe9\xf3\xb0\x4f\x91\x3c\xff\xfa\x59\x81\xb4\x3e\xd7\xa0\x14\x35\xf5\xe6\xee\xc1\xc6\x96\x14\x60\x43\x0b\x44\x87\xfa\xd6\xc2\x5f\x15\x2a\xb4\xcd\x9d\x92\xae\xbe\x2e\x13\x1a\xcd\x09\xce\x4a\x05\xa3\x96\x0e\xad\x8c\x2b\xd6\xea\x79\xdb\xb8\x9d\x59\x10\xf0\x10\xc3\x2b\x7e\xc7\xf1\x34\x84\x5a\xdf\x55\xb0\x86\x3c\xf6\x3d\xbf\x16\xe3\xe1\xdf\x9d\x9b\x1b\x92\x7f\x4e\xc3\x65\x4c\x86\xd4\x5f\x29\xa8\x6a\x76\x84\x72\xe4\x83\x73\x73\x1b\xdc\x92\xf8\x4b\x1a\x3f\x4e\xa3\x38\xb6\x6d\x6b\x99\x08\xe7\xae\xb0\x8c\x10\x2c\x43\x7f\xdb\xb6\xfc\xe1\x3c\x04\x59\x52\x7d\x02\xd6\x9f\x78\x41\xbb\x0b\x59\x12\x3b\xda\xc7\x69\x10\x92\xb0\x3d\x4f\x33\xd2\xa6\x33\x76\xc8\x4f\x26\xa4\x9d\x8a\x89\x6a\x2f\x82\x3b\xe2\xb4\xaf\xb9\xdb\x68\xde\x5e\x64\xe9\x6d\x70\x1b\x3f\x72\x7d\x40\x48\xf2\x88\x7b\x33\xee\x46\x09\xe5\xea\xe5\x76\x90\x84\xed\x79\xf0\xd8\x9e\x05\xf7\x84\x37\x88\xfc\x7b\x49\x92\x09\xc9\xdb\xd1\xb4\x1d\x46\xd3\x29\xc9\xd8\x56\x72\x2f\x0c\x30\xf2\x36\x9b\x99\x19\x69\xab\xe6\xe4\xed\x20\x23\xed\x60\xb1\x88\x23\x12\xb6\xc5\xc7\x34\x62\xcb\xcd\x69\x7f\x9c\xb6\x1f\xd3\x65\x3b\x4c\xdb\x09\x21\x61\x9b\xa6\xbc\xe1\x95\xcf\x6b\x7d\x40\x6d\x36\x03\xb5\x1e\xef\x26\xe9\x59\x9a\x4c\xe3\x68\x42\xf9\x55\x0c\x09\x78\x59\xb7\x8f\x8b\x20\xcf\x79\x69\x6c\xa0\xa2\xe4\xce\xb1\x20\xda\x36\x01\xdc\xb3\x6f\xe5\xf5\x7d\xaf\x8f\xfa\xee\x81\xdf\x77\x0f\x38\x05\x3c\x83\x9b\xc3\x6f\xd0\xd8\x3f\xfc\x2e\xed\x88\xfd\x73\xc8\x7d\x34\xf8\x1b\xcf\x15\xfe\x1a\xec\xdf\x3d\xf6\xcf\x3e\xfb\x67\xc0\xfe\x39\x10\x77\x6f\x03\xf1\x67\x8f\x5f\xe1\xf9\x1e\xf2\x5c\xdf\x73\x91\xe7\xf9\x9e\x87\xbc\x9e\xef\xf5\x50\xcf\xef\xa1\xbe\xdf\xe7\x57\x79\x7d\x77\xc0\x2f\xde\xfa\xee\x1e\x1a\xf8\x03\xb4\xe7\xef\xa1\x7d\x7f\x1f\x1d\xf8\x07\xe8\xd0\x3f\x44\x47\xfe\x51\x31\x66\xb4\x8b\x46\x7d\x77\x7f\x5c\x1e\x0b\x00\x5c\xb5\x76\xdf\x74\x5a\xed\x37\xed\x3f\xa5\xf7\x24\xbb\x8f\xc8\x43\xbb\x7d\x3e\xbf\x25\x59\x7b\xa7\xfd\x97\xe0\x3e\xb8\xe2\xe6\x6e\xed\x53\x36\x51\x13\x6e\xc2\xd0\x7e\x9f\x05\x73\xf2\x90\x66\xdf\xf8\x67\x93\x74\xf1\x98\x45\x77\x33\xda\x3e\xd3\xbf\x7a\xae\xe7\xed\xf4\xdc\x9e\xdb\xbe\x8e\xe2\x90\xb4\x3f\x26\x13\x87\x13\x0c\xdb\x4b\xb2\xe8\x76\x49\xd3\x2c\x67\x5f\x1b\xff\x7d\x49\x33\xca\x09\xc5\x2c\xc6\xdd\xdf\x61\x65\xb5\xaf\x68\x96\xde\x8a\x72\x5e\xf4\xd9\xa1\xf8\x8c\xb5\x5a\xd6\x7e\x1a\xc7\x6d\xfe\x3a\x6f\xb3\x63\x48\x76\x4f\x42\x5e\xd4\x9f\x98\xa8\x9e\xe4\xa4\xdd\x6e\x7f\x12\xbf\xc2\x36\x5b\x71\x59\xfb\xf3\xc7\xeb\xb6\x7c\x59\xab\xf3\x8a\x90\xf6\x8c\xd2\x45\xee\xef\xee\x66\xc1\x83\x73\x17\xd1\xd9\xf2\x96\xf1\xdd\x5d\xc2\x86\xee\x5f\xb9\xf8\xeb\xfc\x2b\xdf\x9d\x07\x39\x25\xd9\xee\xa7\x8f\x67\xe7\x17\x57\xe7\xbc\x46\xb9\x24\xda\xed\x76\xdf\xe9\xb9\xce\x7e\xab\xfd\x66\x57\x08\xfe\x8c\x79\xb6\xe6\x41\x94\x9c\xa5\x09\xe5\xbb\x1c\x3b\x5b\x18\x93\xc5\x59\x3c\x8a\x4a\x91\x3c\x2d\xf1\xac\x03\x4c\x50\x8e\x93\x51\x30\x6e\xe5\xeb\x35\xe0\x3f\xbb\xd8\xda\xe5\x58\x5d\xd6\x18\x4a\x00\xe0\x88\x65\x30\x5d\xa0\x74\x64\x93\xb8\x25\xde\xe2\x55\x81\xf2\xf5\xba\x2a\x3e\x88\x9d\x81\x0e\x8d\xbd\xe1\x2c\x5d\xc6\x21\x67\x0f\xd3\x88\x31\x03\xce\xd7\xda\x56\x97\x74\xad\x76\x46\xfe\xbd\x8c\x32\x12\xb6\x6f\x1f\xfd\xb6\xd5\xa5\x02\x07\xfe\xb9\x0f\x21\xbf\x3a\x2a\xdd\xad\x96\x98\x6d\x1f\x8b\x1c\x4d\x24\x76\xf5\x6d\x30\xf9\x86\x42\x7e\xec\xe7\x26\x22\x60\xa9\x2d\x72\x67\xd8\x3d\x9e\xbd\x55\xcf\xc7\xb3\x6e\x17\x5a\x72\x1b\x60\x9b\xc9\x72\x34\x1b\x0f\xc3\xd1\x6c\x8c\x63\x26\xae\xf0\xd6\x55\xd3\xa9\xcf\xff\xa4\x80\x25\x99\x96\x97\xe6\x35\x7d\x08\x51\x5c\x18\x2c\x59\xef\x3a\x0f\x51\x12\xa6\x0f\xcd\xec\x7a\x91\xa5\x13\x92\xe7\xb6\xad\xcf\xfa\x32\x65\xcc\x5a\xb0\x2a\xb4\x76\x40\xc8\xac\xf2\x25\xe4\x51\x3e\xf8\xb6\xc7\x17\xa4\xf1\x93\xc7\x02\x46\xa5\x12\xdf\xb6\x41\x86\xab\x49\xce\xcd\x0d\xe7\xf6\xd9\x10\x24\x35\x1d\x0f\x17\x4c\x51\xd4\x98\xda\x7c\xcd\x1c\x61\x26\xb1\x0e\x41\xc4\x67\x03\x53\x14\xe9\xd9\xc0\x19\xf4\x55\xfa\x68\x6c\xbe\xa0\x10\x25\x23\x32\xc6\x51\x35\x2e\x3f\x31\xcc\x24\x09\xc7\xd4\x87\x05\x54\xcc\x17\x53\xc4\x6f\xfd\x9b\xb2\xff\x98\xa6\x31\x09\x12\x90\x08\x2f\x5f\xe3\xb1\x5b\x12\x79\x81\xa8\x73\x43\x82\x6f\x37\x39\x21\x09\xd7\x5c\xa8\x71\xc0\x32\x4a\xac\x4f\x90\x9c\x7e\x9f\x22\x85\x11\xe3\x27\x05\xf4\x01\x31\x86\x4d\x46\xa4\x45\xd4\x4c\x93\x1f\xc2\x02\x30\xf6\x6c\xfd\x89\xaf\xf2\xdd\x1d\xb6\x27\x66\x49\x10\xe7\xbb\xb7\x59\xfa\x90\x93\x6c\x87\x24\xf7\x51\x96\x26\xec\x30\x25\x9b\x86\x46\x9a\x1a\x6b\x1e\x0c\x95\xad\x43\xce\x49\x2d\x1c\x2e\x41\x56\x29\x39\x68\xec\x97\x8e\x5b\x40\x44\xd8\x70\xbd\xbb\xfc\x8c\x89\x13\xe5\xef\xa3\x8c\x4c\xd3\xef\xfc\xf7\xd9\x2c\x4b\xe7\x04\x13\x67\x99\x93\xec\xf4\x8e\x24\x4c\x58\x9f\x45\x39\x4d\xb3\x47\x4c\x9c\x38\x15\xdc\x1c\x13\x47\x90\xae\x94\xab\xe4\xc1\x7f\x43\xaa\xca\x49\x3c\xb5\x6d\x19\xc4\x48\x3c\xb0\x7f\x1d\xd1\x60\x8c\xb1\xf6\xaf\x69\x58\x00\xbf\xc8\xc5\xc1\xbf\xa8\x06\x42\x53\xaf\x36\x2f\xf3\xd2\x09\xb7\xb1\xd1\x95\x96\x09\xbc\x18\xf5\x88\xcd\x37\x1b\xa5\xa8\x6e\xea\x52\xca\x04\x5e\x8a\x1e\x06\xf3\xcd\x46\x29\x72\xd8\x74\x21\xfa\x99\x97\xa1\x06\xd5\x48\xdf\x28\x21\x09\xee\xa3\x3b\x26\x52\xea\x32\x8c\x14\x5e\x8a\x7e\xc6\x95\x77\x96\x70\x4f\x6f\x28\xa9\x9c\xd8\x96\x26\x02\x2a\x81\x9a\xe9\x90\x95\xe9\xb3\xaa\x5a\x7a\x82\xb3\x96\x3c\x6e\x0f\x2b\x5d\x57\xb9\xf4\x50\x24\xf2\x2e\x4b\xe6\x93\x9d\x52\xd9\x54\x6f\x23\xe5\x23\x33\xac\x36\xbf\x6c\x96\x6f\x7d\x7a\x4c\xbe\xb7\x01\xdb\xc9\xe6\x69\x48\xa0\xd5\x32\xa9\x31\x95\x67\x63\xa1\x47\x57\xcb\x39\x73\x26\x9c\x70\x39\xee\x8c\xc3\xe8\x3f\x80\x2d\x83\x9e\x03\x19\xfc\x83\x7f\xd5\x44\x6b\x1c\x1b\x23\x8e\xaf\xb3\xe8\xee\x8e\x64\x2d\x73\x59\xe4\x1c\x8e\xa7\x69\xdd\x4a\xc9\x79\x73\xad\x22\x95\x39\x24\xb7\xcb\x3b\xf3\x71\x91\x91\x49\x40\x49\xb8\x33\x25\x01\x5d\x66\xa4\xb6\xae\x05\xf3\xfc\x4f\xd7\xb6\x62\x8b\xc6\xda\x4c\x5a\x99\xf3\xe9\xf2\xc3\x87\xf3\xaf\xdc\x2e\x63\x15\xa7\x77\xa5\xba\x59\x9d\x00\x58\xa2\xe3\x38\xda\x4e\x0d\x16\x88\x1f\x0a\x36\x32\xf2\xd4\x5a\x4e\xc2\x77\xe9\x8d\xac\x22\xb9\x96\x37\x4a\xa6\xe9\x66\x56\x9e\x5a\xcb\xc9\x07\x70\x33\x2b\x4f\x1e\x56\x9e\xaa\x5f\xfa\x4f\x15\x1a\xe4\x39\xc9\xe8\x66\xa9\x32\xbd\x9a\x5b\x02\x59\x44\x38\x69\x95\x23\x1b\x3d\x45\x13\x34\x88\x12\x92\x3d\x41\x15\x46\xf6\xf4\x21\x21\x59\xe3\x9b\x25\x8d\xe2\xed\x94\xa4\x0f\x44\x9b\xf4\xc3\xaf\x34\xfe\x63\x1a\x5a\x64\xd1\x7d\x40\xa3\xdf\x48\xfd\x36\x61\x44\xc7\x98\xa0\x04\x3f\x4a\x6d\x42\xa2\x55\x78\x6c\x9c\x46\x11\x4a\xc7\x98\x2a\xf8\x17\xdf\xd2\x02\x11\xcb\x8f\x81\x8b\x32\x47\xf4\x11\x82\x5f\x7f\x58\x45\x85\xff\xc3\x2a\x2d\x76\x7e\x58\xdd\x14\xbf\xf2\x0b\xae\x3b\x42\xdf\x07\x8c\xcb\x3f\xbe\x4f\xb3\xa6\x0d\x9d\x8c\x16\x63\x96\x31\xaf\x64\x9c\x23\xe2\x7c\xbc\xf8\x78\x7d\xf3\xfe\xf4\xec\xfa\xf2\xeb\xdf\x31\x71\xce\xd4\x4c\x60\xe2\x7c\x95\x3b\xb6\x5a\x12\x93\x98\x1d\xe6\x52\xf3\xa6\x41\x1a\x40\x68\x47\x7c\x7e\x4b\xc7\xa4\x23\x79\x47\x2b\x0b\x10\x81\x33\x1c\x3e\x6f\x98\x8a\xbf\xeb\x75\x79\x7f\x30\x09\x26\x33\x22\xfa\x19\x46\xbc\xed\x41\xf6\x08\xf9\x85\xf6\x64\x46\x44\x4e\x59\xe6\x54\x34\xff\x73\x90\x04\x77\x24\x3b\xdb\xf6\x61\x43\xb6\x4a\x31\x51\xfe\x8e\xe4\x34\x4b\x1f\x49\xa8\x2f\x36\x74\x5a\x94\xdc\xe1\x8e\x57\xc4\x69\xfa\x6d\xb9\xd0\x2a\xbd\xfa\x77\x9b\x9a\xdd\xb3\x20\xe1\xa2\x36\x93\xcb\xda\xbf\x3a\xe2\xfb\x5f\xdb\x5c\x51\xc5\x0f\xc1\xbc\xe3\xed\x59\x90\xb7\x6f\x09\x49\xd8\x51\x5f\x14\x55\x4e\xb8\xba\xe3\x30\x87\xcf\x11\x0a\xba\xe8\x37\x22\x31\x69\xe4\x77\xea\x42\xa3\xda\x6e\x17\xcd\x64\x5c\x02\xae\x53\x8b\x7e\x23\xef\x74\xf6\x29\x30\x6e\xd0\x2b\x43\xe0\x16\xe2\x42\x9d\xd4\xcb\x24\xe1\x7a\x6d\x44\xeb\x19\x02\x59\x3a\x92\x65\xc1\x86\xe0\xf9\x8c\x78\xf8\xcc\x31\x6a\x57\x01\xf2\x9b\xa6\x64\x44\xc7\x88\x49\xd4\x3a\xcf\x44\xa7\x3a\xb2\x93\xb6\xad\x7f\x02\x08\x8b\xe7\x86\x07\xc2\x82\x0f\xf2\xc7\xe4\x5f\xc4\x3c\xc9\x11\xac\x15\xc1\xc0\x45\xfc\x76\xf7\x92\xe5\x83\xc0\xa4\x4d\x88\x48\x31\xd5\xeb\xa3\x06\x61\xb1\x49\xdf\xaf\x21\x86\xb2\xd8\x17\x12\x84\xa1\x8c\x6c\xec\xa9\x88\x93\x24\xc3\x5f\xd8\x76\x47\x5c\x78\xe7\x8b\x60\x42\xca\xd3\x8c\xfe\x92\x7c\x5f\x04\x49\xf8\x29\x9d\x04\xf1\xa7\x92\xac\x4b\xcb\x20\xe9\xde\xc5\xad\xd4\x0c\x8b\x33\xc3\x69\xb9\xe3\x75\x30\x26\x65\x89\x77\x84\x5e\x2e\xe4\x15\xb2\x95\x47\xc9\x5d\x4c\x68\x9a\x58\x86\x3d\x46\xfe\xe2\xcf\x85\xf5\x2e\x8d\x02\x4a\xcc\x02\xb4\x25\xe3\xe6\xf1\x4b\xc9\x57\x7c\x14\xb2\x72\x14\xb2\xca\x28\x24\x66\x8d\x9b\x43\xc0\xca\x56\x91\xa5\x3b\xec\x20\xa7\xbb\xa1\xce\x62\x8a\x22\x93\xea\x39\x3e\xd2\x51\xd2\x8a\xba\x0d\x70\xcd\x4c\x79\x69\xd8\x96\x96\x11\xee\xe4\xe7\x2c\xb1\xe1\x0c\xb8\x32\x86\xc3\x4f\x90\x6e\x94\x1f\x15\x58\x5b\x44\xb0\x06\x47\xb6\xcd\xff\x26\xb6\x2d\xa6\xca\xb6\xc5\x98\x0b\xb3\xd0\x04\xaa\xbb\x96\x72\x61\xe1\x48\x1d\x42\x2b\xb7\xf7\x25\x03\xb1\xed\x06\xb3\x8c\xb4\x5c\x8d\x69\xb9\x1a\x51\x5a\xfc\x87\x1d\x48\x6c\x5b\x0c\x7d\xb4\x5e\x8b\x1e\x6c\x76\x41\x8d\x74\xd9\xee\x3f\x60\xd4\x8c\x11\xeb\x54\xeb\xab\x2a\x63\x5e\x53\xb6\xe8\x49\xb2\x5e\xab\x5a\x44\x0d\x1c\x85\x87\xf5\xac\xa1\x47\x6c\x43\x6d\x6d\x72\x0e\xad\xb3\x11\x5d\x6e\x4b\xde\x61\xf1\x22\x12\x11\xa4\xaa\x5c\x25\xcb\xaa\x95\xfa\x36\x46\x5b\x21\xe0\xaa\xfc\xc1\x09\x5d\xaf\x13\x65\x67\x49\x61\x8d\xe6\x57\xae\x3c\x87\xb0\xb6\xde\xf3\x58\x86\x59\x09\x15\xb9\x95\xc3\xe3\x14\xa5\x46\x73\x27\xaa\xb9\xe5\xa5\x24\x93\x6e\x24\xbb\xce\x51\x84\xdd\xe3\xe8\xad\x36\x9d\x88\xa4\xf7\xce\x4a\x01\xfe\xf9\xa9\x40\xd6\x9b\x46\x24\xf3\x73\x24\xe3\x08\x2d\x0b\xcc\x03\x24\x26\xa3\x74\x8c\x97\x43\xc6\x39\x72\xb4\xd2\x2f\xa1\xcf\x53\x20\x13\xa4\xf2\x77\x8f\x49\x30\x8f\x26\x8c\x4b\x96\x4f\xb8\x13\xf0\x1c\xe6\xc8\x86\x66\x04\xbb\x72\x84\xd0\x28\x1a\x33\x66\xb1\x21\xad\x19\x94\x63\xb0\x80\x55\x71\x5c\xdb\x72\x22\x44\xe4\x7e\x23\x07\x74\x55\xf6\xdf\x8f\x90\x6e\x93\xdf\xf1\x8a\x8d\x18\x66\x99\x6d\x4f\x78\x05\xa9\xd2\x41\x89\x85\x34\xe1\xb4\x91\xb2\x55\xc9\x7e\x31\x06\x7b\xfd\xb8\x20\x7a\x23\xcc\x41\x04\x45\xb2\x91\x94\x99\x16\xc9\xb3\x9a\x2f\x9f\x60\x1a\x28\x53\xda\xab\x6f\xe4\x31\x07\x14\xa2\x84\x63\x26\x29\xcc\xfc\xe3\x44\xf9\x57\x45\x98\x8e\xb2\x51\x32\x1e\xb7\xa2\x92\x5f\x44\x25\xbf\x30\x46\x96\x1b\xe9\x91\x6d\x72\x9f\xd4\x8f\xbd\x4c\xd6\x13\x6a\x2d\x53\x72\x4d\xa5\x21\x39\xcf\x2a\x30\x07\x21\xb0\x4c\x41\xd7\x82\xb5\x08\xae\x70\xc5\x24\x64\x4c\x8b\x9a\x40\xbc\x90\x42\xef\x7d\x5d\xe8\x15\x13\x2c\xef\x27\xb5\xc8\x6c\x8a\xb9\x72\x8a\xa5\x80\xcb\x4a\xc1\x54\x8a\xb0\xcb\x38\xe6\xc6\x73\xf2\xa5\xde\xd5\x43\x9e\x9a\xc8\x7b\xdb\x20\x24\xd7\xca\x94\xc9\xb4\xa4\x29\x69\x45\x25\xcf\x4b\xa9\x08\x16\x4a\xc1\x09\x1a\xc0\x0d\xeb\xe5\xaa\xbb\xbe\x4a\x5d\xd5\x4e\x95\x7c\x61\x1e\x7c\xd3\x99\x40\xd9\xab\x6a\x9f\x20\xdc\x6c\x7d\x21\x39\xb7\x38\x0a\xad\x74\xd1\x3e\x2d\x84\xd5\x0b\x37\x8b\x7e\x4a\x98\xfa\x55\x0b\x53\x82\x21\xb2\x37\xca\xe3\x27\x7f\x81\x38\xd5\x06\x8f\xe9\x52\x5d\xa9\x8a\x6b\x2e\x59\xd2\x0f\xab\x4a\xf3\x0b\xf8\x6b\x45\xf2\x2a\xc7\xba\x6e\xca\x2d\x76\x05\xbd\x6a\x13\x63\xd5\xa6\x05\x0e\x41\x75\x14\x9b\x26\x1a\xb6\xe6\x20\x91\x26\xad\x19\x4e\x50\xaa\xa0\x51\x8c\x09\x4e\x60\x51\x5f\xff\x84\x8b\x40\xc0\x45\x11\x3b\x7a\x47\x77\x09\x04\xab\x82\x4b\x6e\xd0\xa0\x35\xb5\x5b\xb2\x9d\xe2\x9e\x47\xa7\xde\xfd\xe7\xe8\x9f\xfe\xb8\xeb\xf3\x7f\x7f\xd8\x95\x84\x7d\x5b\x25\x6c\x43\xd4\x62\xf5\x90\x52\xd6\x9d\x2a\x5d\x33\xd1\x3f\xcd\x13\x9c\xdc\x34\x32\xce\x26\xc5\xcf\xea\x6b\x4e\x44\x81\xe8\xd5\xc6\x1a\x26\xd5\x0c\x95\x93\xda\x0d\xad\x70\xb1\x6d\xdc\x42\x79\x50\xbc\x2c\x5f\x5c\x4a\x81\x82\xad\x34\x29\xe8\x45\x56\x3d\x69\x4f\xf1\x1f\x99\x57\x76\xfd\x05\x39\xa7\x41\x14\x5f\x11\xca\xb7\xd2\x2b\x22\x19\xc3\x4d\xba\x78\x41\xdb\xb9\x41\xea\x93\x19\x0b\x4d\x77\xa6\xf3\x03\x79\x68\xa7\x3a\x7a\x96\x18\x6f\x92\x3d\x2f\x61\x57\x08\x97\x9d\x3b\x2a\x1d\x70\xc4\xd1\x0d\x24\xb0\x61\xa2\x47\xc9\x18\xd7\xba\xc6\x92\xb2\x62\x99\x94\xf5\x2b\x6b\xcb\x6d\x15\xbd\x68\xaa\x94\xc1\xf9\x66\x13\xe8\xb8\xf2\xb2\x32\x45\x1b\x2f\x55\x23\xe9\x18\x35\xf6\x92\xb2\x81\x13\xd2\x51\xa3\xbb\xa5\x29\x87\xd1\x8a\xf4\xc4\x87\x55\x1e\x53\xd6\x6b\xe3\x94\xc2\xa3\xc3\x32\xe9\x62\xdb\xf1\x44\x1e\x15\xee\x45\xcc\x5b\x4c\x6a\x5d\xa8\x9d\x4c\x52\x25\xd8\xa5\x2d\xee\x45\xa2\x7b\x30\x0b\x72\xa0\x65\xcf\x56\xb9\x4a\x6d\x1b\x44\xc6\xa2\xd5\xd2\x5f\x02\x55\xb8\x75\xcc\x85\x59\x60\xc8\x88\x7a\x76\xcd\x2c\x43\xa3\xb2\x20\x0c\x41\x02\xfd\xcd\xb6\xe2\xa8\x84\xf0\x36\x8e\xf2\x35\x05\x47\xab\xbe\x71\x95\xaa\xfc\x0a\x2f\xe2\xa4\x5a\x49\xd1\xcd\xaf\xa8\x23\x21\xca\x8a\x90\xa3\xc9\xdc\x12\x73\x45\x18\x45\x96\xc3\x51\x79\x94\x3a\x1c\x05\x45\x13\xa5\xc9\xf0\x99\xf7\x80\x40\xbf\xa9\xad\xc3\x6a\x3b\x8d\xe6\xf8\xa4\xd0\xfd\x7f\x2f\xf7\xa1\x57\xb6\x52\x7f\x3f\xdc\x92\xfe\xc2\x56\x35\xb5\xc3\x6c\xde\x86\x77\x5b\x95\x39\x8e\xc8\x58\xc3\x7b\x6d\xbc\xa9\x2d\x70\xa3\x06\x58\x54\x44\x0b\x13\x28\xed\x25\x9d\x37\x3f\x1e\x6e\x7f\xc5\xcb\x7d\xc9\x20\x6c\x7e\x44\x9c\x52\xa8\x2a\xd8\x42\x52\x8a\xa1\x8e\x54\x03\xfd\x1c\xc4\x51\x68\xf6\x48\x1d\x37\x95\x2c\x61\xdb\xa5\xa6\xa6\x46\xf1\xea\x05\x93\xab\x79\x3e\x43\x81\x21\x15\xaf\x5b\x75\x0c\x1b\xb2\x41\x79\x78\xd3\x87\x9f\x0c\xe9\x02\xfd\xa4\x80\x5b\x97\x1d\x07\x13\x94\x0c\xf0\x7d\x9a\xb1\xb3\x83\x32\x47\xa8\xed\x3a\x7c\x32\x0b\xad\xc0\x29\x73\x57\x58\x79\xed\x8b\x8d\x35\x4d\xb7\xae\x69\x5a\x5b\xd3\x4d\x35\x41\x44\x55\x63\x4d\x56\xbc\x6d\x13\x51\x8c\x3d\xab\xb6\xfc\x89\xdd\x47\x47\x0c\x2b\xf7\x84\xff\x80\x2d\x55\xaa\x64\xec\xa8\x54\x7f\xd5\x5b\xaf\x2b\x24\xe3\xfa\x0e\x52\xfe\x1e\xd1\xb1\x76\x1d\x60\x2d\x53\x47\xd4\xf2\x4c\x3a\x72\x55\x7b\x41\xd6\x30\x21\xc9\x18\xd6\xca\x1b\xb2\x7f\x5e\xb2\x3e\xaa\x4d\x57\x68\x87\x15\x29\x4d\xdb\x26\x56\x1b\x74\x0c\x9a\x24\x3a\x93\x6b\x6c\xbc\xc1\xa3\x31\x84\xc2\xeb\xa2\xd4\x00\x50\x43\x03\x90\x15\xb0\x88\xea\xf5\x36\x8a\x2e\x42\x09\xb7\xe3\x71\x3b\x57\x15\x55\x8f\xb5\xac\x62\x6d\xba\xd9\x8f\x44\xdd\x65\x6d\xd0\x88\xea\x4f\x29\x75\x8e\xa2\xb2\x2f\x95\xd4\x67\xfb\xc1\x96\xe6\xb7\x24\x7d\x48\x8c\xd5\x64\x44\xb5\x40\xe9\x36\xa1\x30\xa8\x1e\xcf\x37\x24\x20\xc8\x23\xaf\xe5\x6f\x55\xc0\xac\xe3\x5c\x9d\xd7\x63\x1c\x8c\xf2\x71\x2b\xae\x4e\x92\x14\xfd\xd3\x51\xcc\xe3\xa8\x14\x0d\x9c\xf8\x89\xb5\x5a\xeb\x02\x44\x2f\xe1\xe0\xe6\x47\xfc\xa6\x75\xfb\x6b\x5e\x66\xfd\xf0\x43\x51\xca\x98\xd7\x26\x1f\x56\x0c\xf2\x4e\x00\x93\x10\x58\x54\xd5\x1f\x35\x8e\x15\x99\x94\xa7\xa2\x8e\xd7\x3b\x5d\x59\xac\xe6\xa2\xa8\x94\xdb\xaa\x48\x7e\x14\x57\xb1\xaa\x55\xf4\xea\xac\xf4\x34\xe6\x6c\xa9\xa6\xb0\x69\x60\xa8\x1f\xff\xa3\x26\x6e\x94\xff\x3b\x9a\xd9\x7c\x93\xf0\x9a\x0d\x7b\xa3\x84\xe1\x36\xed\x39\xd9\x14\xff\x51\x8a\x23\xc6\xf1\xd8\x69\x59\xfc\x6c\x3a\x10\x68\xa7\xb5\xf5\x3a\x43\x39\x4e\xeb\x86\x78\xb9\x8e\xd8\x2f\x4d\xf5\xc8\x13\xcd\x93\xf0\xbb\xda\xf7\x72\x14\x8c\x71\xbc\x5d\x7c\xdd\xb6\xbd\x1b\x3b\xfb\x8b\xe4\x90\xe6\x81\xe6\x5f\x16\x85\x71\x3b\x7b\xcb\xbb\xf0\xb8\x8d\x3f\xdc\xe0\x5f\x7f\x58\xf1\xb8\x7c\x59\x90\x84\xe9\x1c\xc0\xe2\x87\xd5\xbb\x80\x12\x27\x49\x1f\x00\x2c\x7e\x75\x64\xdc\x12\x60\x39\x22\xa8\xdb\xb6\x5b\xfa\x27\x2d\xad\x5e\x63\xae\x51\xbb\x68\x37\x1c\xe7\x8c\x1b\x6b\xdb\x26\x75\x8b\xa7\xa1\xf2\x62\x2d\x7e\xc7\xdd\xfc\x1d\xa1\x62\x18\x1b\x5c\x07\x53\x29\xc7\xcb\x2b\xf2\x7a\x3e\x02\x57\x2a\x07\x26\xf2\xbe\xfd\xfc\xe2\xe7\x86\x82\x02\xf6\x96\xbd\xe2\x5e\xac\x54\xb8\x6d\xdc\xc5\xe9\x6d\x10\x57\x0c\x4b\x50\x84\x33\x00\x92\x4d\xdb\x2f\x91\xd7\xb6\xc5\x5f\x68\x40\xe6\x27\x4e\x92\x86\x1c\xfa\x6b\x98\x28\x68\xd0\xf5\x3a\xdb\x34\xca\x2f\x2d\xc6\x9a\xdf\x2b\xf3\x49\xf1\x17\xae\xd7\x4d\xa6\x3d\x86\x65\xac\x6d\x1b\x0f\xeb\x75\x42\x1e\xda\x86\x15\x7f\xb9\x75\x5a\x10\xc0\x96\xee\xad\xb2\x59\xaa\xce\xfb\x86\x10\x38\x5c\x45\x73\xe1\x3f\x40\x90\xf2\x24\x20\x48\x8c\xb5\x4f\x0a\x5f\xbf\xa6\x8e\xfc\xb5\x5e\x97\x39\xb5\xf7\x01\x4b\x94\x1f\x51\x39\x53\xeb\x35\x29\x0a\x10\xa1\x48\xd8\x71\xb2\xa6\xa9\x29\x51\xe6\x50\xab\xf3\x8b\xd3\x1f\x3f\x9d\xdf\x5c\x7e\xb9\xfe\x78\x79\x71\xfa\xe9\xe6\xfd\xf9\xe9\xf5\x4f\x5f\xcf\xaf\xfc\x8e\x87\xce\xff\x76\x7d\x7e\xf1\xee\xe6\xcb\xd7\xcb\xeb\xcb\xeb\xbf\x7f\x39\xbf\xf2\x57\x12\x2a\xcd\x45\xaa\xff\xec\xb7\x38\x18\x30\x2a\x43\x9f\x2e\x3f\xdc\x5c\x5d\x9f\x9e\xfd\xf5\xfa\xeb\xe9\xd9\xf9\xcd\xe5\xc5\xcd\xbb\xf3\x2f\x5f\xcf\xcf\x4e\x59\xf1\x2c\x2f\xcb\xf0\xf3\xf9\xd7\x2b\xf9\xf8\xf5\xf4\xe3\xd5\x66\x36\x0f\x5d\x5d\x7f\xfd\xe9\x8c\x35\x84\x57\xff\xfe\xe3\xa7\x73\x96\x7a\x73\xfa\xe5\xcb\xa7\x8f\x22\xd7\xcd\xf5\xf9\xe7\x2f\x9f\x4e\xaf\xcf\x6f\x7e\xf9\x7a\xfa\xe5\xcb\xf9\x57\x56\x5c\x99\x78\x79\xf1\xe9\xef\x37\x1f\x3e\x7d\xfc\xfc\xf9\xfc\xeb\xcd\xd9\xe5\xe7\x2f\x97\x17\xe7\x17\xd7\xbc\x5b\x37\xef\xce\x7f\xfc\xe9\xc3\xcd\xd7\xf3\x8b\x77\xe7\x5f\x6f\xae\xbf\x9e\x8b\xb2\xff\xf2\x3f\x3f\x9d\x7f\xfd\xfb\xcd\xc7\x8b\xeb\xf3\x0f\x5f\x75\x7b\x6f\xde\x9d\xbf\x3f\xfd\xe9\xd3\xf5\xcd\xe9\xd5\xdf\x2f\xce\x6e\x2e\x7f\xbc\x3a\xff\xca\xda\xcf\x3f\xf9\x7a\x2e\x0b\xf9\x74\x79\xf9\xe5\xe6\xd3\xc7\xcf\x1f\xaf\x7d\x8f\xf4\xd1\xf9\xe7\x1f\x79\xe2\xe9\xbb\x9b\x3f\x5f\x5e\xfe\xf5\xca\x5f\x15\x48\x0f\xec\xaa\x28\x5a\x62\x85\x04\x08\x10\x7c\xc2\x7d\xa5\xea\x14\x4a\xb4\x5c\x6d\x08\x41\xd2\x05\x37\x9a\x82\x3a\x7e\x55\x0d\xbb\x4a\x39\xdc\x67\xd0\xb6\xad\x8d\x59\xb4\xc4\x5e\x67\xd5\x5b\xc9\xd3\x35\x2a\xd9\x28\x1b\xb7\x38\xec\x77\x32\x64\xbf\xb1\xb8\xbd\x1e\x65\x63\xbf\xc3\xe4\xc7\xc4\xb6\x81\x48\xe7\x9a\xd2\x51\x36\x86\xc5\x7d\x90\xad\x36\x69\x26\x2a\x30\xa9\x5d\xa3\x35\xf5\x38\xd2\x3d\x8e\x60\xe0\x6c\x14\xe3\x48\xd5\xbc\xb8\x59\x94\x4f\x88\x3a\xef\x7f\xba\x38\xe3\xe4\xa0\xb3\xde\xf0\x6f\x19\x81\x5d\xb1\x36\x36\x14\xa5\x1d\xf2\x65\x61\xea\x19\xa2\xa6\xdc\x9c\xe4\x55\x56\xfe\xc0\xd1\x9d\xe4\xbd\xb2\x48\x6f\x3d\xd1\xe2\xf4\x3f\x6d\x65\xfa\x54\xbb\x52\x31\xea\x75\x82\xcb\xe5\xa0\x6f\xb2\xc6\xd2\xac\x56\xfb\x1d\xc7\x8c\xae\xf2\x17\xd3\x55\x8e\x62\xa8\x60\x75\xf2\x51\x3c\x6e\xf1\x96\x38\x51\x2e\x8d\xe4\xa1\xe8\x50\xad\x49\x4c\x98\x5e\x3a\xd3\x28\xe6\x2a\x4f\x7c\xd2\x04\x7d\x00\x05\x0d\xe9\xa5\x32\xd9\xd6\x8b\x89\xee\xc5\x44\xf7\x22\x64\xbd\x98\xc0\x17\x75\x61\x82\x42\xd1\x4a\x55\xd5\x28\x94\x94\x3c\x19\x85\x63\xd8\x72\x8b\x02\x02\xc9\x36\xcf\x2f\x7e\x7e\x42\x20\xc8\xb2\x34\xdb\x99\x05\x49\x18\x47\xc9\xdd\xeb\xac\xaf\xb9\x60\xfb\x7b\x6c\xec\xd8\xf1\x33\xe1\x35\x37\x61\x00\xc8\x1d\x7c\x23\x07\x81\x2b\xaa\xf7\xee\x77\xd2\x47\xfb\xf2\x9e\x64\x59\x14\x92\x86\x82\x32\x59\xd0\xf6\xac\x4c\x54\x11\x25\xa6\x09\xbf\xa5\xba\x0e\xb2\x3b\x52\xb1\x1f\xcd\x50\xc2\xe3\x0c\xb4\xd3\xa4\x66\xe8\x49\x39\x1b\xac\x7e\x98\x6c\x1f\x67\x11\x1c\x21\x4d\x76\xf2\xe5\x82\x0d\xed\xcb\xcc\x24\x37\x3f\x8b\xa3\xdb\xdd\x30\xa0\xc1\x4d\x10\x06\x0b\xba\xc5\x86\xb2\xf9\x33\x7d\xa5\x70\xc3\x8d\x2a\x75\x09\x7f\xb8\x25\xee\xd6\x0f\xde\x05\x34\x38\x55\xed\x36\x03\x83\x76\x5c\xd4\x1c\xc3\x95\x2a\xd3\xd3\xe2\xa9\x72\xf5\xc5\xf1\x3b\xd6\xb1\xd7\xd5\x90\x19\x35\xbc\x62\xfa\x9e\x1a\xd0\xa6\x49\x95\x86\xe9\x4d\xb3\x95\x09\xbf\xc9\xff\x57\x16\xd1\x38\x93\x42\xb9\xc3\x7b\x15\x82\x95\x3a\x37\xf1\x83\x09\x9a\x04\xc9\x59\x40\x83\x38\xbd\x93\xee\xb3\x3f\x3e\x32\x91\xd5\x67\x3c\x6f\x9e\x86\x24\xb6\xc4\x15\xa6\x45\xc9\x7c\x11\x07\x94\xf0\x67\x34\x69\xf8\x06\x68\x3f\x5b\x7e\xb2\x39\x85\x20\x73\x2e\xd4\x09\xca\xb9\x38\xfd\x7c\x7e\xf5\xe5\xf4\xec\xfc\x0a\xa2\x48\xe7\x80\x48\x58\xa7\x7c\x25\x77\xe7\xdf\x17\x80\xdb\x5d\xf0\x8b\xce\x68\xfa\x08\x01\x81\x5d\xeb\x87\xd2\x5c\x23\xd1\x48\x14\x4c\x10\xd1\xe6\x28\xaf\x95\x33\x12\xe1\xa1\x2e\x90\x4f\xb5\x7f\xd8\x28\x19\xb7\x2c\x5e\x35\x47\xa7\x61\xed\x13\x48\x32\x10\x04\xd0\xb6\x65\x48\x53\xde\xc0\x30\xc8\x67\x24\x8b\x7e\x23\x10\x24\xfa\x30\x96\xb2\xa3\x98\x08\xd3\x17\x15\x05\x34\xcc\xa8\x5f\xc3\x27\x36\x17\xfc\xab\x2c\xab\xb3\x65\x12\xa7\xe9\xa2\x31\xeb\x9c\xd0\x20\xfe\xcf\x48\x54\x01\xcf\xfc\x1f\x10\x6a\x80\xd3\x3a\xa1\x46\x49\x44\x95\xc9\xec\x4d\xbe\x5c\x90\x9a\x85\xbd\xba\xc0\x8c\x49\x90\x93\xcf\xdc\x17\x9a\x5f\xb0\xa6\x9c\xb0\x0a\x34\x69\xe2\x13\x0a\x56\x29\xa0\xc2\xd9\x92\x7c\x8a\xe6\x11\xf5\xfb\x28\x98\x4c\xc8\x82\xb2\x06\x13\xae\x8d\x62\x3c\xa4\x5a\xb6\xaf\xcb\x66\xcc\xe5\x3d\x97\x0d\x72\x1f\x40\x7c\x52\xbe\x78\x60\x7b\x0f\x2f\x83\xad\x88\x4d\x55\xf7\x1d\xa1\xc6\x5b\x88\x92\xb2\xc1\x2d\x02\x32\x67\x1e\x2c\x38\x71\x2b\xab\xdc\x6f\xdc\x62\x43\xaa\x32\x1f\xb2\x60\xa1\xbf\xe6\x90\x6d\x1c\x32\xa9\x5c\x1e\x02\x03\x8c\x9b\xb4\xdc\x72\x3f\xce\x32\xb7\xc8\xcb\x63\x21\x46\x05\x54\x1a\x52\xd6\xf8\x55\x65\x59\x11\x00\x1b\x07\xd6\xc9\xc8\x3c\xbd\x27\x32\x4e\x64\x54\x86\x9c\x6d\xca\xcb\xda\xa1\x73\xa2\xa8\x40\x37\xac\xf2\xeb\xf4\x8c\xf5\x46\xc2\xaa\x6c\x38\xef\x10\x35\x50\x7c\x8d\xdd\x69\xe3\x2b\x6e\x70\x61\x98\xe3\x02\xc1\x97\x7c\xab\x4b\x60\x8b\xb0\xb3\x41\x26\x58\x86\x52\x79\x91\x42\x4c\xc3\x57\x32\x49\xb3\x50\x01\xd1\x4a\x88\x94\x00\x19\x34\x82\x24\x02\x43\xad\x79\x68\xa9\x27\x4b\x95\x11\xf3\x48\x77\x86\x49\x1c\x5c\x65\x3c\xa4\x26\x37\xd6\x08\xf1\x52\xcd\x1c\xc8\x37\x67\x41\x14\x02\x08\x9a\xa8\xb1\x65\x33\xa9\x52\x21\x0f\x77\xb7\x0a\xa3\xf0\x6c\x16\x24\x77\xc4\x17\xc6\x62\x28\x80\x06\x93\x8b\x71\x76\x1c\xbf\xcd\xba\xc1\x71\xac\xb4\xc1\x4b\xd6\x8f\xc4\x11\xc2\xe6\x29\x85\x80\xa0\x18\xa2\x10\xd7\x2b\x58\xc2\xd6\xf6\x36\x2d\x45\x9b\x00\x93\x23\x8b\xd4\xb6\x23\x90\xa1\x14\x16\xe8\x21\x8a\x63\xd1\x9c\x1a\x5e\x93\x61\x94\x9d\x38\x41\x18\x72\x29\xfa\x52\x94\x99\x41\xb0\xe4\xfd\x43\x33\x88\x02\x41\x5c\xf9\x06\x71\xf1\x2f\x05\x35\x6d\xfd\xf8\x59\x02\x0c\x60\x81\x28\x08\x9b\x73\x1a\xe4\x17\x40\x14\x88\xde\xbc\xab\xda\xe0\xbf\x94\xa1\xd4\x9b\x5f\xa0\x90\x50\x32\xa1\x7c\xdd\x77\x3c\x34\x49\xe3\xe5\x5c\x5f\x74\xd5\xb8\xc1\xe6\x2a\x54\xec\x20\x6a\x26\xbc\x74\x83\xf0\xa2\x0a\xe1\x05\xac\xf9\x60\xd4\xc0\x0d\x58\x3e\x49\x8d\xb9\x41\x4c\xe2\x42\x84\x11\x3f\x48\x4e\xdc\xf5\x3a\x3a\x71\xd9\x51\x82\x1b\xda\x4d\x66\x84\x31\xe7\xcb\x64\x42\x20\xb0\x02\xa1\x63\x16\x78\x23\x28\x78\x92\x06\x8e\xb7\xcc\x7e\x2a\x3e\xd6\xd1\x81\xe4\x68\x6c\x99\x6e\x9d\xbb\x40\xd5\xbe\x34\x30\x4d\x63\x2d\xab\xc2\x57\x89\x80\xc7\x98\xa4\xcb\x84\xfa\xbc\x9a\x3b\x42\x21\xc8\x90\x25\x2e\x4e\x2c\xa8\x66\x47\x21\xc1\x98\x53\xc5\x87\x9b\x13\x89\xc0\x6b\xab\x32\xe6\x95\xf4\x39\xd7\x0d\x00\x56\xe3\x76\x52\x0a\x27\x04\x53\x67\x8b\x30\x25\x39\x16\x87\x5b\x6d\x14\x9c\xd4\x7b\xd1\xce\x1b\xc6\xfb\x78\xcb\xf2\xcb\x44\x0b\x50\x6c\xb7\x20\x9a\x75\x11\xa8\x19\xce\x8a\xef\x11\x7e\x23\x3d\xf1\x21\x22\x5c\xfe\x30\x3f\x2d\xcf\xb5\xfc\x2b\x41\xd1\x40\xee\x36\x62\x89\xca\xac\x05\xda\xda\x1a\xe9\xa6\xa1\xf2\xa6\x5b\x64\x3d\x6a\xec\x70\xa5\xe1\x71\x83\x1c\xf7\xbb\xf4\x45\x95\xf6\x8f\xb2\x31\x34\x44\xd0\xc8\x14\xd4\x32\xd8\x92\x60\x70\x22\x04\x1f\xe5\x53\x2e\xc9\xaa\xbe\x89\x9b\xdc\x59\x41\x78\x6a\x5a\x29\xa1\xe4\x04\x41\xfd\x2c\xd0\xdd\xaa\x94\x7a\x66\xbc\xe2\x97\x0c\x8e\x08\x32\xfe\x57\xf2\xf8\xc0\x6a\xac\x65\x57\xc9\x22\xab\x98\x9e\xc6\x72\xdf\x1b\xaf\x44\xe6\x49\x1a\xa7\xf5\x75\x72\xc6\xd2\xf8\x6b\xa3\x97\x66\x93\x44\x87\x57\x05\x44\x1b\x4d\xa8\x8d\x45\x63\xcd\x0d\x9f\xf3\x2a\x79\x3a\x3f\x56\x54\x76\x19\x9e\x6c\x9c\xc5\xaa\xe2\x71\xb0\x55\x3c\xbe\x8b\xa3\xf9\xfc\x49\x1f\xc3\xd2\x41\x10\x59\x7f\x52\xd9\xd3\xc5\x24\x0d\xc9\xce\x24\x9d\x2f\xa2\x78\xcb\x99\xb9\x26\x0c\xbf\xc8\x57\x51\x89\xc5\x2f\xf0\x63\x34\xde\xdc\x47\xe4\xa1\xc9\xc3\x51\xb5\x36\x23\x1c\x0d\x66\x42\x2a\x89\x65\x55\x2a\xe9\x3e\x88\xa3\x50\xe0\x29\xbe\xcc\xb9\xbe\xcc\x17\x71\x83\x51\x96\xc6\x6f\x98\x8d\x33\x00\xc9\xee\xa3\x09\x79\xd9\xf9\xa1\x56\xb4\x6a\x17\xeb\xf9\xd3\x97\x49\x2f\x39\x72\x68\xe6\x6a\x16\x9d\xa4\x61\xf3\x68\x67\xa9\xc0\x83\xd7\xef\xd8\x5c\xa7\x09\x49\xe8\xae\x3a\xa6\xee\xa4\x49\xfc\x58\x66\xe0\xea\x1c\x0b\x59\x59\x7e\xbf\xd8\x76\xae\x41\x01\xca\x51\x8c\x96\x68\x82\x42\x34\x43\x53\xb4\x40\x73\x1e\xbe\xf1\x16\x3d\xa2\x1b\xf4\x80\xce\xd1\x77\x74\x89\xae\xb6\xdd\x86\x5d\x97\xb7\x61\x4d\xea\xc2\xdf\x73\x07\xa6\x7a\x83\x4f\x11\x71\x66\x24\x5e\x90\x0c\xff\x15\x11\x87\xe4\x93\x60\x41\xce\xbf\x2f\x32\x92\xe7\x75\xb0\x56\x43\xb8\xee\x18\xc2\x75\x34\x05\xfc\x8e\x8e\xa6\x7f\xbe\xfe\xfc\x49\x63\xe6\xca\x67\x09\x72\xb9\x8c\xe3\x12\xce\xcb\xb2\xb8\xb7\x96\x46\xf7\x52\x26\x56\x4c\xec\xd6\xbf\x0b\x96\xe5\x6f\xea\xbe\xbe\x84\xe2\xd5\xe5\xab\x03\xf2\xff\x22\x42\xb8\xf3\xeb\x8c\xce\xe3\xab\x60\x4a\x30\x25\x1c\x7a\x96\xc7\xd0\x61\xcf\x19\x7b\xbe\xe1\x7e\x8d\x5f\x49\x12\x92\x8c\x64\xb9\xa9\xea\xfb\x4d\xb9\x30\x60\x97\x95\x93\xf1\x3c\x57\x84\xd2\x98\x84\x66\x3e\xd1\x0b\xfc\xe7\xcc\xb6\xc1\x9f\x33\x7c\xa5\xe1\x8b\x42\xb6\xd6\x00\xdf\xdf\xe6\x3c\xfa\xe6\x32\xcb\x48\x42\xbf\x2e\x93\x4f\x69\xba\x80\x00\xae\xd7\x73\xe7\x36\x98\x7c\xbb\x5d\x66\x09\x29\x45\x24\x43\x3a\xe2\xdc\xed\xc7\xac\x0c\x30\xfd\xe7\x8c\x6d\x54\xf3\x28\x57\xca\xca\x6b\x35\x67\xb5\x39\x79\xd1\xae\xf6\x81\xdb\x85\xcb\xa2\x3f\x64\x23\xa2\xbc\x80\x1b\x4a\x35\xee\xe7\x78\x4e\xcc\x95\xa9\xb3\x20\x6f\x6c\x41\x15\x42\xf7\x05\xad\xa8\x75\x27\x6f\x50\xba\x7e\xc8\x6a\xad\xab\x82\x93\x7c\x90\xfa\xd6\x9c\xd0\xe5\xe2\x3c\xb9\x8b\x12\xa2\x2f\xc1\x2b\x31\xac\x9c\x9a\x19\x5b\xa9\x6c\x42\x15\x4f\xae\x8e\xc7\x57\x85\xb6\x45\xb6\x18\x73\xf5\x77\xd2\x25\x8d\x09\xb5\x50\x96\x54\xdf\xaa\x52\xca\x1c\x94\xe7\x28\xcd\x8f\x6a\x05\x18\xf5\x6e\x7e\x5c\x29\xfb\xa6\x74\x1d\xff\x55\xe7\xd4\x5c\x28\xdf\xdd\x91\x24\xf7\x2b\xfa\xdf\x8c\x7d\x58\xef\xa0\x58\xcb\xcf\x75\x4f\xe4\xf2\xe3\x74\x62\xa1\xbf\x65\xd5\x77\xba\x32\x7f\x87\x92\xef\x74\x67\x2a\x62\x5a\xfc\xb6\x35\xd7\x64\x46\x26\xdf\x6e\xd3\xef\x16\xfa\xb4\x2d\x4f\x1c\x25\xdf\x76\x68\x6a\xa1\x7f\x6f\xcb\x11\x25\x8b\x25\xb5\xd0\x5f\xb2\x2d\x23\x6d\x0c\x81\xcc\x4a\x92\x6d\x65\xb1\x66\x07\x19\x09\x2c\xf4\x13\x44\xf7\xce\xf9\xc5\xcf\xce\xb3\x37\xa2\xeb\xf5\x96\x49\x30\x3a\xaa\x87\xfe\x02\x6a\xea\x33\x30\xba\xb6\x90\xa0\x41\x14\x99\x64\x3e\x16\xb2\x48\x72\x6f\x21\xcb\xdc\x56\xfd\x79\x10\x25\x55\x62\xb0\xe4\x3e\xea\xef\x84\xe9\x7c\xe7\x76\x19\xc5\x21\x9f\xdb\xaa\x1b\xcd\x6d\x9a\x2a\x9b\x42\x9f\x16\x98\xa0\xd5\x8d\xa8\x88\x9d\x3b\xfc\xac\xc0\xb4\x95\x3f\x44\x74\x32\x03\x19\x5c\x4d\x82\x9c\xb0\x62\x23\x6e\x94\x62\xf9\x72\xc1\x3d\x38\x3a\xed\x47\x51\x8d\x73\x1b\x25\xa1\xb0\x1c\x69\xf1\x8f\x32\x32\x7b\x0c\x33\x46\xc3\xbe\x06\x69\x52\x69\x51\x9a\x34\x7c\xa6\xa0\xf6\x74\xf6\x09\x0f\xba\xb6\x99\xb3\xe0\x91\x4d\xcd\x91\x6a\xee\xb8\x65\x74\x75\xeb\xe8\x35\x8f\x77\x59\x46\x63\xd1\xcf\xaf\xc1\x9d\x2c\x4d\xe9\xaf\xe8\xcb\xf6\x2a\x58\x86\x6b\xbd\xce\x9f\x28\xa4\x3a\xc7\xaa\x04\xde\x20\x0b\xfd\x90\x6d\x7b\xcd\xa4\x18\x6a\xa1\x5f\xb2\xed\x4d\x50\xa0\x3c\xd5\x6e\xca\x34\x4e\xb4\x37\xaa\xe4\xcf\xc1\x24\x4b\xab\x6c\xf5\x5d\x26\x0e\x32\x82\x45\x4f\x82\x45\x70\x1b\xc5\x11\x8d\x2a\xdc\xb7\x19\xe6\x41\xdc\x72\xa9\xad\x2b\xc3\x56\xdf\xf1\xfa\x5c\xa3\x5f\x82\x46\x51\x67\xb9\x08\x03\x4a\xfe\x9c\xa6\xdf\x20\x5a\x71\xf8\xf1\x4f\xd1\x94\x9c\x3d\x4e\x62\x72\x26\x8d\x9d\x72\xbf\xcc\xae\x73\x4c\x2a\x39\x20\xe2\xee\x5c\x02\xe0\xba\xcc\x5d\x26\x42\x54\x56\xe4\x0b\xa4\xec\x9c\xd0\x33\xb5\x90\xa5\x17\x61\xbd\x4f\xa2\x03\xf8\xd6\xd1\x4c\xe1\xe6\xf3\xe9\xc5\xe9\x87\xf3\xaf\x37\x57\xd7\x5f\x3f\x5e\x7c\xb8\xf9\x74\x79\xf9\xd7\x9f\xbe\x34\xc0\x03\x91\xa1\x19\x06\x46\x1f\xe3\x24\x6c\x44\xc9\x99\x76\xe6\xa2\x6a\xae\x62\x2c\x7c\x2d\xcb\x5c\x65\x60\x25\xf5\x90\x7e\x86\x94\x38\xea\x77\x3c\x24\xe2\xef\xe8\x02\xac\x02\x51\xb5\x7f\x3e\xd1\x1f\x75\xb6\xbc\xce\xca\xd8\xe5\x6d\xca\xa1\x01\x54\xe1\xb6\x6d\x94\xca\x41\xb6\x05\xc8\xac\xd2\x87\x2a\xfb\x2a\x31\x76\x9f\xd3\x90\x1b\xa7\x36\x0f\x5d\x43\x2f\x48\x43\x2f\xe6\xb2\x10\xb3\x13\xf5\x82\x3f\x67\x88\x38\x2a\xe3\xd9\xab\x28\x50\x2a\x6f\xc2\x28\x0f\x6e\x63\x72\xba\xa4\x29\x0f\x10\x18\x25\x77\x26\x91\x6c\xbe\x85\x1b\x04\xf2\xb4\x48\x74\xc7\x23\xea\xf1\x38\x3e\x88\xd6\xe7\x42\x7f\xfa\x98\x3d\x71\x7f\x79\xf9\x59\xa8\xbf\xf2\x17\x5e\x2e\x4e\x9c\xf2\x93\x27\x6f\x30\xdf\x5d\x7e\xbe\xce\x08\xd1\xc1\xdf\xf9\xa1\xec\xe5\x55\xd4\xbf\x7d\xb2\xae\x28\xbf\x92\x5b\x06\xe7\xff\xef\xa3\x2c\xa7\x17\xfc\x60\xf5\xc2\x0a\xb7\x15\xf0\x64\xad\x2c\xc3\xef\xef\xe5\x83\xb3\xe5\x7b\xb1\x01\x5d\xfe\xff\xb8\xfb\xd7\xb6\xb6\x91\x6d\x5f\x14\x7f\xef\x4f\x61\xb4\xfb\xf1\x54\xfd\x29\x14\xd3\xbd\xfe\x6b\xad\x23\x52\x61\x12\x20\x1d\xba\x09\xd0\x40\x92\xd9\xd3\xcb\x87\x16\x76\x19\x57\x47\x96\x9c\x52\x99\x84\xd8\xfa\xee\xe7\xa9\x51\x57\x5d\x6c\xa0\x2f\xfb\xec\xe7\xbc\x01\x4b\xaa\xfb\x65\xd4\xa8\x71\xf9\x0d\x60\xc8\x3e\x30\xfa\x85\xd0\xe8\xe4\xec\xc3\xf9\xcf\xc7\x84\x46\x07\xb7\x85\xe0\xc9\xa8\xb9\xe1\x68\x74\x43\xbf\xce\x29\x67\x70\x03\x4e\x35\x45\xa5\x11\x04\x03\x94\x8c\xfd\x3d\x35\xd7\x0d\x78\x4b\xb9\xf0\x9e\xbd\x9f\xf2\x92\xa2\xcd\x64\x68\xf4\x56\xdd\xc6\x68\x64\xeb\x23\x34\x3a\x65\xd9\x27\xff\xf9\x9a\x7e\x15\x07\x9c\x26\xfa\xe7\x1b\xc9\xa3\xc9\x2c\x9a\x15\x23\xee\x86\x07\xb6\xb2\x87\xf9\x42\xb6\x49\x36\xee\xd2\x3b\xa5\x7c\x3d\xd9\x3b\xb2\x04\x27\xec\xb7\x4c\xc4\x7d\x0c\x3f\xdf\xb1\xa2\x88\xfb\x5e\x74\xaf\x83\x9a\x26\xd6\xd4\xa1\x91\x84\x50\x48\x11\x66\xa0\x76\xfd\x48\x93\x4f\xef\x92\x39\x04\xff\x9b\x51\x91\xe0\x84\x38\xed\x13\x03\xb9\x27\x6d\xf1\xee\xda\x0f\xdf\x45\xb6\xea\xed\x6d\xcc\x49\x66\xac\x79\x41\x79\x63\x4d\xbd\x41\x98\x12\xd3\x12\xe7\x08\x61\x06\x1b\x92\x62\x8e\x50\xac\xf3\xbf\x65\x42\x66\xf7\x20\xbf\x6f\x6e\xd8\x98\x64\x11\x1b\x63\xf9\x5b\xb6\x89\xe4\x38\x29\xd7\x0d\xd4\x3b\x18\x94\x0b\x72\x10\x2e\xd9\x38\x0e\x8a\xff\x7f\xfe\x7f\xdd\x7e\xbd\xca\x02\x7c\x9b\xe6\xa3\x4f\xf1\x3f\x96\x81\xf2\x27\x2f\x82\x78\x30\xc4\x81\x85\x71\x97\xcf\x83\x5d\x3c\xf8\xa1\x8f\x07\x3f\xfc\x27\xee\x0f\xf1\x60\xf0\xc3\xf7\xb8\x3f\x1c\xc2\x0d\x6f\x38\x1c\xe2\x60\x9a\x14\xc7\xf7\x49\x1a\xc4\x93\x24\x2d\x28\x0e\x16\xf3\xfb\x84\xcb\x8c\x1e\x49\x1e\x96\xff\xc0\xb2\x91\xf1\x52\x21\x75\x82\xe6\x30\x98\x27\xa3\x4f\xc9\x1d\x2d\x5e\xac\x97\x69\xa5\xec\xd6\xca\x2a\x8a\x17\x92\xdf\x88\xa6\xb7\x45\xa0\x44\x63\x95\xc9\xbf\x80\x2e\x1e\xca\xa9\x4c\x22\xb7\x7b\xae\x8c\x9f\xfc\xc1\xe5\x8f\x57\x01\xc2\x9f\xd6\x26\x78\x7b\x70\x75\xf3\xfa\xf4\xfc\xf0\xe7\x00\xe1\x4b\x95\xca\x3a\xd9\x1f\x9d\x5c\x5e\xff\x7a\x73\x7d\xf0\x63\x80\xf0\xef\xb5\x6f\x27\x57\x37\x47\x27\x57\x17\x07\xd7\x87\x6f\xe5\xb1\x7a\x70\x7d\x7d\x29\x2b\x3a\xaa\x25\x7b\x7d\xfe\xfe\xec\x48\x7e\x38\x23\x45\x74\x98\x73\x2a\x37\xa6\x51\xe2\x16\xd1\xe1\x94\xa5\x63\xf9\xaa\xb8\x52\x3a\x6e\x5c\x44\xf2\xf1\x4a\x4e\x85\x7b\x05\x22\x6b\x90\x20\x9b\x77\x79\xa4\xec\x6c\x0e\x60\x51\xbb\x94\xf5\x67\x59\xd8\x3b\xf6\x95\x65\x78\xc9\x0a\xbb\xf9\x24\x71\x79\x92\x02\x79\xf0\xfb\xd0\x00\x4a\x0d\x2e\x01\xbb\x6b\xac\xd7\xf2\x75\x72\x87\x42\x9d\xe8\x68\x08\x98\xf5\x25\xe6\x54\xf1\x71\x21\x5a\x42\xd2\x31\xe3\xe2\x01\x52\xea\x12\x8c\xd7\xaf\xaa\x0f\x95\x78\x90\x45\x17\x97\xe7\x17\xc7\x72\xa0\x8f\x4e\x8e\x6e\x0e\xdf\x1e\x9c\xfd\x78\x3c\xac\xfa\xa4\x0d\x7e\x1f\xfa\x2a\x8f\xc1\xe1\x10\x33\xe2\x6c\xfd\xf7\xe5\xfd\x3e\x36\x64\xc0\x9a\x26\x7a\x1e\x41\x6c\xb0\x88\xde\x5f\x1c\xc9\xab\xd3\xe5\xf1\x9b\xe3\xcb\xe3\xb3\xc3\xe3\xa3\x9b\x0f\x07\xa7\xef\x8f\x87\xbd\xde\xa6\xaf\xe1\xf7\x84\x34\xc2\xba\xee\xfb\x1a\x15\xed\x83\x8c\x94\x9a\xe4\x40\x08\x5e\xf7\x2b\x54\x84\x42\x8e\x4e\x32\x3e\x3a\x7f\x67\x92\x28\xf6\x26\xec\x63\x48\x21\x27\x4a\x47\x49\xd6\x5a\x5d\xcc\x89\xc0\x19\x09\xa6\x42\xcc\xe3\x17\x2f\xbe\x7c\xf9\x12\x7d\xf9\x21\xca\xf9\xdd\x8b\xef\xfb\xfd\xfe\x8b\xe2\xfe\x4e\x45\x89\xb4\x76\xf8\xef\x2f\x4f\xb0\x0a\x76\xc8\xb0\x73\xce\x8f\xf3\x52\x56\x32\x72\x56\xfc\xe6\x28\x42\x21\xc7\x9e\x82\x7c\xb5\x0a\x12\x21\x38\x44\xe4\xdc\xe7\x91\xee\x0c\x98\x01\x84\x39\x8a\xf9\x20\x1f\x96\x78\xcc\xc6\x97\x74\x44\xd9\x3d\x95\x1f\x8b\x10\x2d\xf5\x3b\x3d\xed\x4a\x31\xe6\x3d\x8e\xd9\xf8\x3d\x30\xb2\x2e\xbd\x4c\xa1\xde\x55\x53\x58\xe1\xb7\x3b\x24\xce\xf0\x99\x8b\x80\x13\x22\xf2\xaa\x21\xd3\x0c\xf0\x59\xc4\x69\x3e\xa7\x99\xd2\xeb\xf8\xcb\x5c\x93\x74\xb9\xda\xe7\x79\xc1\xc0\x95\x20\xbd\x48\x78\x32\x2b\xe2\xc1\x50\x33\xfc\x27\x86\x3c\x5e\x7d\xbc\xfd\x5c\x9c\x4e\x3f\x3c\x89\x3c\x6e\xa2\x80\x7f\x11\xd9\xa3\xb3\xb9\x78\x30\x74\x0f\x9f\x92\x33\x6b\xfb\x91\x26\x0f\xf9\x42\xc4\x27\x78\x64\xe9\x42\x3c\x08\xa0\x58\x27\xc8\x18\x62\x91\xdc\xa9\xaa\xb5\xb0\xc1\x5a\x75\xbc\x66\xd9\x98\x65\x77\x32\x93\x5c\x2e\x01\x0e\x20\x17\x1d\x07\x38\x60\xd9\x98\x0a\xca\x67\x2c\x53\x92\x1e\xcd\x6c\xca\x4f\x22\xb9\xd5\xca\x86\x40\xae\xb9\x00\x07\xc9\x42\xe4\x93\x7c\xb4\x28\x00\xfd\x5e\x01\x37\x07\x38\x98\xe4\x7c\x26\xeb\x57\x7c\xbf\x95\xac\x98\xa2\x24\x37\x5d\xa9\x46\xbe\x18\xb3\xf1\x49\x56\x50\x6e\x42\x85\x3f\xae\x8a\xa6\x2a\x61\x54\x29\x8a\x58\x36\x59\x61\x4f\x78\x9f\x50\x89\x47\x46\x61\x0b\xdb\xb7\xb0\xdb\xd7\xf5\xbf\x52\xb2\x7e\x8b\xf4\xaa\x34\x7c\xc9\x29\x3e\x7d\x64\x51\xbe\xb0\x9d\x86\x25\xf6\x86\x4c\x35\xce\xea\x7e\x8b\x77\x8f\xc2\x47\x95\xe9\xbe\xb9\x39\x2e\x80\x25\x32\x74\x7c\xe3\x8c\x7b\x02\xae\xa7\xcd\xb9\x32\xe6\xd1\xd3\x67\xe2\x51\xe8\xc7\x22\xb9\x57\xb3\xce\xf5\x3c\x26\x9a\x35\x85\x07\x9a\x8d\xf4\x82\x91\x4f\x3a\x60\xa2\x7a\xc8\x72\xad\x83\x31\x5f\x05\x9c\x4f\x01\x0e\xa6\x54\xc5\xf9\x57\x4d\x9a\x29\xb5\x45\x9a\x80\x86\x22\x65\x05\x48\x16\x55\xa1\xb3\x44\xae\xad\x19\x93\xd5\xcd\x16\xa9\x60\xf3\x94\xba\xc5\x36\x4f\x84\xdc\x30\x01\x0e\x0a\xf6\x4d\xbe\x28\x04\x9d\x07\x38\x00\x9d\x40\x80\x83\x2f\x6c\x2c\xa6\xc1\x10\x2b\x1d\x41\x10\xa8\xf5\x07\x33\x2d\x3b\xb9\x10\x74\x8c\xc2\xa5\xe4\xa9\x61\xce\x04\xc4\x47\x51\x4c\x97\xd5\xa8\xab\xb7\x4d\x17\x65\x75\x16\x99\x59\x44\x35\x60\x69\x05\x5f\x47\xbb\x2c\xeb\xbe\x31\xdf\xde\x0c\xe8\x50\x43\x22\x1b\xe1\x85\x9e\x75\xb3\xc0\xf5\x14\xa9\x38\x13\x3a\xe6\x20\xd5\xb1\x25\x38\x5a\x96\x5e\x41\xfa\x66\x4b\x08\xa1\x65\x28\x90\x72\xc9\x45\x98\x4b\xc2\x20\x07\x43\x59\x2b\xea\x01\x52\x0f\x33\x66\x7e\x24\x5f\x95\x97\x95\x5c\xc3\x8e\xcf\xfe\x86\xbf\x3d\xb6\x88\xbd\x85\x05\x3d\x79\xbf\x76\x79\xae\x5b\x95\x20\xc0\x1c\x62\xbb\x7a\xed\xea\x74\xd2\xcd\xb6\x05\xca\x73\x50\x0a\x8e\x72\xd0\x1a\xea\xe9\x2f\x68\xaa\x84\x45\xc7\xd9\xd8\x7f\x54\x51\x97\x1b\x8b\xf9\x0b\x4f\xe6\x6e\x9d\xa9\xf5\xac\x56\xca\x10\xcb\xf2\xb5\x81\x67\x9e\x16\xd5\xd1\x81\x0b\xc9\x7b\xfc\xfe\x49\x83\x03\x5d\x80\xb1\x79\x6d\x4e\x91\xc5\xd1\xcf\x5f\xd3\xff\xce\x68\xeb\x29\x12\xf4\xb4\x38\x31\x68\xb0\xdb\xff\x89\x07\x3f\xfc\x97\x62\xb5\xbf\xff\x2f\x2c\xd9\xed\xdd\xa1\xe6\xb7\xf1\x60\x10\x98\x7c\x38\x80\x28\xd1\x43\x3c\x58\xd6\xf9\xf5\xff\xc6\xbb\x9a\x3d\x97\x7b\x85\x27\x33\x49\xfa\xd4\x79\x84\x1b\x89\xa1\x86\x3e\x1e\x04\x29\xcb\x3e\x5d\x33\x91\xd2\x60\x38\x6c\xc9\x39\x7c\x84\xd9\x67\x93\xbf\x8a\xcb\xd7\xe2\x75\x7b\xe0\xbd\x35\x9e\x90\x13\x4e\xe9\x37\x1a\x2e\xcd\x84\xa8\xed\xfb\xfe\xec\xe8\xf8\xcd\xc9\xd9\xf1\x51\x50\x22\xfc\xa1\x9e\xb6\x44\xf8\x73\xf3\xc0\x7c\xed\x16\x60\x12\x60\x9e\x2f\x04\x8d\xdf\x62\x65\x30\xa7\xff\x17\xf1\x5b\xfc\x79\x41\xf9\x43\xfc\x16\x07\x23\xa5\x01\xdb\xf9\x32\xa5\x59\xa0\x16\x8c\x90\x43\xa5\x7e\x72\x9a\xea\x77\xfa\x5c\x34\x4f\x92\xee\xa9\xdf\xea\xfe\x0c\x8c\x49\x1c\xa8\x87\x00\xa7\x79\x22\x17\xba\x7e\xab\x9f\xdc\xe9\xa8\xdf\xbb\x73\x57\xab\x08\xe5\x21\xd9\xb6\x59\xa6\x9c\x4e\x24\x09\x85\x39\x94\xc7\x70\x5a\x3d\xaa\x35\x1d\x1e\xba\xa3\xa3\x72\x14\xa8\x36\xb9\x66\x54\x0e\x7c\x9e\x64\x8a\x6d\x62\xd9\xdd\x49\x56\x7f\x73\xbe\x90\xc5\xd2\x7b\x9a\xa9\x60\x3c\xc1\x28\x65\xa3\x4f\xc1\xa3\x37\x0b\xb9\x61\x96\x2e\x1b\xd5\xb8\x59\xca\x00\x2f\xd3\x10\xa6\x16\x02\xe9\x3e\xff\x04\x96\x36\x5a\xad\x2d\x09\xfa\x5c\x4b\x8e\x51\x18\xec\x18\x6d\x37\xc2\x37\x7a\xba\x2e\x61\x5e\x95\x11\x56\xca\x92\x02\x85\x81\xc9\x1c\xf9\x49\x64\xe5\xf5\x6c\x1c\x2e\x5e\x9b\x33\x43\x12\x99\x51\x8d\xec\xe3\xf9\x54\x3a\x9b\x8d\xbb\xf6\xb9\x73\x29\x80\xb7\x01\x0e\x5a\x9a\x13\x78\x1a\x79\xa5\x2d\x51\x45\x98\x81\xb3\x36\x56\x84\xbc\x55\x5e\xb7\xd5\xa1\x00\x13\xa7\x1b\xbd\xbc\xeb\xf5\x2a\xe3\x2a\xac\xfe\x17\xcd\xaa\xd4\xee\xa0\x66\x77\x88\x5a\x9d\x5b\xb2\x4e\x79\xfd\x12\xf0\x4b\x00\x5f\x8d\xf0\x8d\xda\x43\xf5\xca\xe0\x6d\xb3\x0e\x95\xb8\xb5\x3b\x1f\xe2\xaa\xcc\xa4\xc4\x14\x5c\x13\x2c\x2f\xb9\xee\x7c\xdf\xda\x75\x67\x7b\x05\xe4\x85\x15\x47\x3a\x2f\x11\x18\xc0\xe0\x95\x99\x94\xbf\xfd\x24\xfd\x51\x5b\xa3\xd1\x05\x6f\x4b\xcb\xd9\x32\x1b\x28\x6c\xc8\xe9\xb6\x14\x9c\x8a\x4e\xa1\x6b\xf1\x72\xc3\x30\xad\xa9\xa4\x75\x11\xa8\x05\x05\x3f\xcc\x64\x05\x37\x7a\x44\xbd\xfd\x5b\x21\x5a\x8d\xa1\x6e\x5b\xed\xd5\x81\xdf\xda\x32\x8d\xbd\x61\xc5\x01\xb4\x2f\x54\x63\x2e\xef\x6d\xaf\xe9\xc1\xb3\x9a\xdc\xd8\x23\x7f\x67\x3f\xda\xb6\xa4\x87\xca\x27\x17\xab\x40\xb5\xc5\xa0\x7b\x28\xa0\x87\x7e\x8f\x2d\x48\xb6\x6e\x52\x15\x05\x47\xd9\x3e\x0e\xaa\xad\x04\xaf\xfc\xe0\x56\x71\x85\x5e\x5c\x31\x5b\xa7\x06\xd0\xb1\x77\x14\xd4\x11\x84\xef\x5b\xa8\xf4\x6e\x80\x62\x65\xbe\xaa\x86\xc8\x46\x6c\x5d\x9a\xdd\x9b\x99\x9d\xc5\x1c\x41\xcc\x55\x0f\x71\x42\xfa\x7b\x89\x83\x1a\x4d\xb6\xb7\x11\x44\xaa\x34\x7d\x7a\x93\x73\x18\x98\x30\xc3\x0c\x8b\x41\x32\xc4\x20\x6d\xd4\xdd\xea\x5b\x50\xd9\x12\xd7\xe8\x7e\x73\xae\xed\xb1\xe1\x2f\x89\xd6\x4d\x60\x81\x1a\xfd\x94\xbd\x5e\x6d\x6f\x18\x9e\xd1\xaf\x77\x87\x65\x81\x9c\x93\xfa\x91\xf3\x67\x5a\xa3\x40\x6d\x1b\xed\x59\xad\x2a\xed\x41\x6b\x1a\x94\x2f\x44\xa0\x56\x09\x1c\x4a\xe6\x56\x00\x12\x1c\x56\x5c\x31\xc9\x7b\x1e\xca\x23\x10\x79\xa0\x49\x20\x98\x5e\xde\x2e\x6e\x6f\x53\x5a\xc4\x02\xcf\x39\x9c\x7c\x47\x46\xad\xac\x27\x4f\xa3\x84\x98\x9b\xa7\x5a\xc7\x98\x91\xad\x6c\xb5\x0a\x6e\x0a\x9a\x4e\x20\x10\x5f\xc7\xa2\x3b\xf7\x7a\xac\xd7\xa3\x51\xb5\xb8\x10\x61\xf0\xe8\x15\xf2\x53\x21\xf2\xf9\x05\xcf\xe7\xc9\x5d\xa2\x46\x01\xd7\x09\xa0\x5b\xd2\x6b\xd7\x3a\xc4\x0c\xaf\x2c\xfd\xa5\x3e\xc0\x72\x7b\xa4\x24\x66\x51\xa6\x96\x57\x59\xe8\x6e\x8d\x88\x22\xee\x5a\xe8\x92\x2a\xa6\x0b\x8e\xfd\xdc\x33\x96\x9f\x44\x93\x34\xb9\xbb\xa3\xe3\x13\x6b\x8c\x87\xe4\xfd\x48\xab\x20\xf2\x2c\xb2\xc6\x17\x23\x6c\xcc\x80\x21\xd4\x1e\xbd\xb6\x53\x14\x8e\xc0\x4a\x2d\xc5\x0b\x24\x87\x01\x8c\x73\x1b\x69\xbc\xf0\x08\xb6\x2f\xde\x26\xf2\x4c\xb3\x97\x34\x72\xd3\x0f\xc1\x60\xcd\xc3\x75\x6e\xc3\x46\x97\x25\x96\xfc\xd7\x5f\x40\xc0\x35\x67\x5a\x21\x81\xfa\xd7\x5b\xe0\xf0\xfc\xe5\x2c\xc9\x4c\x62\x23\x1d\xea\xac\xeb\x28\x56\xd7\x7f\x27\xcb\xf2\x67\x91\xda\x59\x14\x66\x16\xb9\x23\x2d\x59\xf5\x48\xce\x22\x33\xa2\xef\x2f\x4f\xb5\x5f\x5e\x29\x77\x84\x2e\xbc\x39\x0c\xb5\x0e\x1f\x70\x7a\x0a\x91\x04\x5d\xe7\xf4\x49\xda\xa0\xef\xb5\xe6\xd9\x9c\x3e\x41\xdf\x12\x0a\x5b\xb3\x1e\x63\xd3\x2f\xda\xe3\x7d\x5c\x19\x8d\x76\xb6\x71\x3f\x75\xda\xab\x8f\x49\x2c\x48\x7f\x4f\xb8\xb0\xf8\xc2\xb8\x9c\x70\x62\x80\xa9\x55\x9b\xb8\xdd\x36\xa5\xa1\x05\xde\x58\xc9\x89\x88\x83\xff\x15\xb4\x48\x54\x65\xa5\x86\x1d\xf9\x38\xa5\x99\x3d\xa0\x7d\xd4\x54\xe8\xa8\xe4\x70\x3c\x86\x5d\x45\x37\x5f\xce\xd5\x66\xf3\xf1\x68\x7b\x3d\x99\xcd\x9c\x0d\x68\x29\x88\x89\x35\xad\x45\xf8\x9f\x86\xab\x95\x2b\xd2\x5d\x0a\xb1\x88\x8a\x29\x9b\x88\x10\x59\x24\xd9\x81\xb0\xd1\x46\x87\x1d\x70\x30\x62\xc5\x2f\x6e\x93\xef\xbb\x62\xf4\xda\xd6\x71\xc2\x75\xa4\x6f\x6d\xc7\xef\x27\x78\x8b\x30\x9c\x13\x56\xbc\x6e\x13\xe8\xf5\xf3\xd6\xcf\xa4\xdf\xb9\x86\x61\xf7\x4d\x73\xb3\x6f\x1b\xef\x8a\x00\x0b\x1d\xc8\xb8\x72\x9e\xba\x31\xca\x74\xed\xaf\xfa\x36\xd0\xe9\x20\xf3\x7a\xba\x09\xe5\xa0\xd7\x63\xd5\x41\x30\x50\xc4\xd0\x41\xc2\x74\xd7\x71\xa6\x46\x02\x62\x1b\xa3\x4e\x5d\x23\xfa\x19\x7f\x6e\x97\x3a\xe8\xed\xa8\xae\xc8\x9e\xe4\xfb\x73\x55\xf2\xdd\x90\x71\xab\xcb\x7c\x11\x68\x49\xf7\xc7\x9a\x6e\xea\xf2\xf8\xf0\xfc\xdd\xc5\xfb\xeb\x63\xa5\xe2\x72\x2a\xd2\xef\x3c\x0d\x86\x87\xc6\xa7\x01\x88\xc1\x8d\xe6\x47\x92\x47\x36\x9c\xe3\x1f\x71\x4d\x1c\x7c\x6c\x51\x27\x95\x98\x53\xbd\x2d\x95\x90\x76\x16\xfd\x9e\xb3\x0c\x85\xda\xec\xbe\xa1\x51\xfa\x38\x44\x5a\x3a\xab\x35\xce\x3f\xe2\x1f\x23\x56\xa8\x07\x2d\xfe\x27\x5b\x26\xd8\xcb\xaf\x75\x78\x60\xed\xf9\x02\x15\x1a\xbc\xeb\x66\x6e\x83\xf8\x6c\xc6\x64\xa9\x73\xc4\x7e\xf6\xd2\xc3\x03\xff\xb9\x06\x54\xfb\xab\x64\xa0\x55\x13\x7e\x69\x6d\x42\xa1\xf5\xe6\x4d\xb8\xeb\x20\xd8\xf6\x52\x94\xc6\x1c\xb9\x72\xa5\xf1\xe0\x1c\xcb\x8a\x1e\xfe\x17\x98\xf6\x9f\xc8\x32\xe8\x05\x71\xd0\x4b\x66\xf3\xbd\x00\x07\x2f\xe5\xef\x54\xc8\x9f\xaf\xe4\xcf\x3b\xf9\xf3\x1f\xc1\x3f\xe2\xa0\xf7\x79\x91\xc3\xfb\x7f\xc8\xf7\xff\xeb\xeb\xf7\xff\x25\x1f\x7e\x53\x0f\xff\xd9\x97\x0f\x44\x3d\xfc\x70\xb4\x17\x94\xf8\x5f\xe4\xc5\xa0\xf7\xf2\x55\xf0\x8f\xdf\xc8\xf0\x05\xfe\xb7\xff\x74\xe7\x56\x13\xf5\xb1\xcb\x7e\x1a\xd0\xa1\x1b\x28\x51\x87\x06\x25\x84\xee\x53\x12\x04\x71\xd3\x46\x1b\x00\x9c\xad\x61\x35\xc2\x72\x60\x7f\x91\x03\xeb\x00\x97\x5a\x80\x46\x69\x4b\x48\x35\xda\x1a\x15\xc2\xd8\x7a\xeb\x89\xca\x68\xeb\x4c\x39\x64\x68\x1d\x50\x47\x2d\x96\xe6\x3d\xb3\x86\xa9\xea\x25\xd3\x19\x8d\xd5\xd0\xa3\x59\x2b\x09\x75\x66\x4b\x34\x1a\xee\x60\xb5\xcc\x36\xe1\xdb\x24\x1b\xa7\xca\x7b\xcc\x1d\x51\xf6\x8c\xea\x1a\x1d\xc4\xd2\x58\x77\x65\x18\x24\x86\x31\x2b\x6b\xe5\x1a\x4c\x4e\x0e\xde\xe9\x60\x38\xe4\x99\x38\x85\xac\x2d\x7e\x80\x8b\x9b\x22\xa2\xb1\xc2\x15\x3f\x05\x91\x5c\x19\xf6\x71\x8e\xf6\x97\x80\xba\x41\x63\x8e\x7d\x83\xbd\x38\xc7\xca\x4d\x05\xec\x61\xa0\xaa\x9f\x18\xc8\x51\x4c\xf6\x90\x55\xf1\xba\x51\x19\x3f\xa9\x28\x00\x1d\x53\x03\x74\x91\x70\xc1\x92\xf4\xd1\x59\xf0\xd3\x39\xd8\xe4\x35\x59\xdc\xf7\x52\x2f\x27\x46\x97\x73\x4e\xe7\x09\xa7\x07\xfc\xae\x68\x80\xcc\x95\x63\x36\x3e\xac\x68\x07\x34\xea\x41\x69\x95\xab\xba\xc7\x90\xd3\x25\x97\x4d\x28\x95\xa5\xa0\xfb\xa4\xd4\xa9\xf5\x0c\x5a\xc9\x2a\x33\xb8\x3d\x93\x7b\x9d\x30\x5e\x5c\xbf\x7d\xb7\x54\x0e\xd1\x65\x2c\x7f\x29\x0b\xef\xf2\x37\x49\x5c\xd6\x9a\x11\x31\xaa\x1c\xd5\x29\x59\x56\x26\x18\x54\x7b\xea\xc5\x75\x72\x27\x9f\xbc\x61\x90\x8f\x8a\xb6\xc2\x93\xb6\x72\x6e\x40\x3a\x39\xb1\x27\x18\x43\x6e\xed\x62\x7d\x4d\x32\x8f\xaa\x8c\xc3\x24\x4d\x29\xf7\x2a\xbc\x1a\xe5\x73\xb0\xa3\xf2\x2c\x29\xd7\xd6\xa1\xca\x38\xd1\x30\xfc\x32\xd7\x17\x9e\xcc\xe7\x4a\x5b\xe9\xb9\xc8\x42\x14\x0b\x35\xa7\x05\xed\xaa\x23\x0f\xa6\xd7\xd8\x33\x57\x31\xff\x32\x3d\x7c\x70\x05\xc0\x39\x11\x91\x64\xc0\x2b\x6f\x1d\x80\x97\x0a\xbd\x48\xbf\x74\x17\x4e\x05\x7e\x99\xe7\xe2\xd2\x78\x41\x85\x00\x62\x28\x78\x2e\x7b\x8a\x29\xc2\xbe\xf1\x30\xc5\x26\x44\x56\x0c\x57\xaa\x1b\xe7\xd9\x04\x3a\x12\x64\xac\x6c\x23\x63\xd1\x9f\xc3\x62\x06\x40\xa7\x35\xc3\x82\x96\x89\x4e\x4d\xb4\x47\xa9\x59\x0e\x98\xca\xf3\x9e\x27\x2a\xf2\x9e\x5a\xa2\xd7\x9c\x52\xa3\xda\x34\xf9\xb4\x45\x42\x60\xea\x84\x52\xcc\x47\xe5\x76\x9f\xc8\xc9\x1f\x45\xc7\xef\x2e\xae\x7f\xbd\x39\xb8\xfc\xf1\x0a\x9b\x68\x08\x06\x8f\xc0\xda\x1e\x6b\x83\x4e\xa4\x63\x39\x6a\xc6\x0a\x7c\xd5\x8b\x5e\xaf\xd0\x5e\x2f\xee\x97\x8e\x5a\x31\x26\xb9\x49\x59\xf9\x20\xbb\x9e\xf6\x7a\x10\x24\x54\xcd\xd8\x94\x8c\xf1\x9c\x4c\xa3\x59\xbe\xc8\xc4\x45\xce\x32\xd1\x49\x22\x0a\xde\x19\x64\xe9\x5e\xc6\xf3\x27\x0c\x80\xca\x66\x06\x40\x3d\xe9\x01\x98\x6f\xea\xf4\xb4\xd9\xdf\xf2\xb1\xca\x4c\x2d\xc0\x1c\xef\x38\x4f\x0d\x3d\x69\x6e\x9c\x79\x34\x4a\xe6\x62\xc1\xe5\xa0\xd9\x1a\x2b\xcb\xca\x56\x2e\xac\x59\x59\x09\x5e\x41\x23\x6b\xd1\x7d\xe4\xcc\x94\xc3\x04\xc3\x6d\x59\x76\xd7\xae\xc5\x35\x8d\xf5\x3d\xcd\x13\x84\xcd\x08\xf5\x7a\xcf\xce\xac\x73\xaa\x32\x9e\x97\x53\xad\x3c\x54\x5a\x10\xd0\xa4\x6c\x39\x58\xcc\xb1\xba\xb4\xa3\xc1\x4b\x42\x9d\xc4\xe2\x2e\x5a\x64\x92\x40\x18\x43\x34\x14\x72\x14\x25\x85\xce\x0d\xc8\xac\x95\x63\xd1\x61\x2a\x52\xf9\xed\x8a\xa6\x13\xe3\xfa\x00\xbb\x5e\xb8\xd2\x35\x78\x6a\xe2\xc7\x3c\x59\xb3\x3d\xf7\x1b\x1c\x74\x3c\x8e\x0e\xcf\xcf\xae\xae\x0f\xce\xae\x25\x57\xdf\x7e\x7c\xd0\xc8\x50\x8a\xd0\xfa\x96\x34\xca\x96\xfc\xd6\x13\x06\xd7\x19\xff\xc8\xa2\xe5\xa6\xd0\x73\xfa\xcc\xcc\x66\xb7\xe8\x32\x9e\x93\x53\x13\x1a\x81\x90\x3d\x09\xd1\xf2\x4f\x76\xcb\x14\x64\x96\xcb\x33\x3b\x66\xb3\x9b\x75\xfa\x9c\x4c\x08\xb5\x1f\xe2\xff\x9f\x9a\xa9\x3b\x2a\xf4\x9e\x94\x2c\x99\x7f\xe1\x5c\xb7\xd6\x0d\xdf\x06\x88\x1f\x14\x2c\x74\x0b\xaa\x8f\xe2\x05\x7d\x34\x8e\x67\x6a\xd0\x6c\x81\xaf\x35\xb7\x3d\xcd\xee\x12\xe1\xc7\xf4\x02\x4b\x34\x55\xf0\xb8\x51\xb0\x11\x1f\x2a\x79\xad\xeb\xbe\x29\xd1\xde\xcf\x4d\xb0\x10\x49\x76\x4d\x70\x24\xb3\xef\xb8\x89\x8b\x34\x4d\x8a\x8f\x8a\xcf\xd0\x8c\x1f\x61\x5e\xdc\x9b\x4b\x3a\x21\x5e\x5c\xd1\xe6\x2b\x59\xf6\x25\xbd\x67\xe0\xe6\x6a\x78\xfa\xfd\x7e\x0c\x74\x01\x4e\xbc\x37\x39\x07\xca\xc0\x23\x91\xdc\x19\x10\x0f\xc5\x53\x90\xcd\xac\x86\xe4\x2f\xd6\x52\x7d\x90\x84\x49\xc2\x6f\x85\xe9\x16\x42\x04\x6f\xf5\x9f\x9c\xd1\x0e\x96\x1f\x15\xb3\x0a\x48\xa2\x82\x2c\x19\xc3\x55\x5a\x61\x79\x6a\x21\x97\x3c\x9b\x75\x04\xe2\x5b\x88\xe4\x1c\x06\x5e\x81\x7a\x94\xc1\x57\xaa\xf2\xfd\x30\xa5\x09\x57\x0b\xd5\x86\xab\x6c\xb5\xcd\xa4\xa8\xc3\x7b\xbd\x10\xbe\x8d\x64\x26\xfd\x45\x26\x92\xa7\x00\x76\x5f\x6a\xf9\xe4\x29\x6e\xfc\x9c\xa2\x4a\xd0\x98\xd2\xd1\x63\xe8\xaf\x5d\x26\x56\xf4\x67\x04\x75\xde\x0a\x1a\x51\x73\xb9\x98\x3a\x46\x74\xa1\x05\x21\x95\xb9\x6c\x2e\x61\x0b\x2a\x6f\xec\xd9\xb1\x27\x3d\x8a\x33\x60\x1b\xc6\x70\xf7\x83\x4b\x9e\xe1\xb2\x12\xc7\x71\x39\x37\x29\x6a\x44\x20\x61\x8e\x13\x84\xe9\xe0\xe3\x10\x40\x54\xc6\x10\xb0\x7d\x31\x53\x27\x93\x7c\x8d\x30\x2f\x3b\x4a\x20\x64\xe2\xfe\xa9\x0e\x4c\xfc\x0e\x3c\xd2\x74\xc9\x5b\xab\x32\x84\x09\x5c\x9a\x79\xe1\xca\x68\x76\x4f\x44\xa9\x1b\x59\xb9\x9d\x41\xb2\x52\x19\xe3\xfa\x48\xe4\xd5\x0e\x81\x88\x8c\x15\x4a\xa4\x85\x42\x81\xf6\xe5\x2e\x99\xd3\x50\x0c\xe8\xd0\x56\x81\xb5\xd5\x6f\x3c\x8a\x2e\x38\x9b\x31\xe5\x26\xa1\xdb\x6c\x98\x32\x61\xfb\x37\x77\xfd\x9b\xd0\xa5\xa3\x34\x33\x7d\x69\xb3\x28\x1f\x10\x56\xb9\xbf\x97\x39\x35\x5e\xb6\xbd\x8d\x38\x01\x73\xdc\x50\x40\x90\x1a\x8b\xe9\x68\x8b\x31\x01\x7c\xac\x57\x39\x24\xf6\x24\x23\x77\x95\x04\x60\xe6\x0b\x40\x6e\x62\xd0\x97\x73\x65\x45\xa9\x78\xd7\x13\xc3\xa2\x7d\x55\xee\xa0\x3f\x44\xb1\x6e\x29\x10\xdf\x5b\x8a\x1f\x28\xbe\xa1\x64\x39\x4f\x78\xe1\x45\xca\xa8\x06\x22\xb0\xf1\x09\x8c\xfe\x73\x40\x31\xc5\x5b\xfd\x61\xc7\xe0\x77\x15\x8b\x5b\x25\xe6\x09\xfb\x18\x22\xf1\xf9\xaf\xc4\xf6\xae\xe9\xeb\x40\x92\xdc\xad\xdd\x61\xa9\x38\xd6\x34\x35\xa8\x55\x38\x57\xf1\xa8\x01\x9b\x60\x48\x80\x9f\x0f\xd8\x58\x76\xad\xa8\xe0\x40\x81\xa5\x36\xc5\x89\xb3\x76\x06\x5a\xb9\xe8\xf5\xc2\x05\xa1\x46\xed\x76\x32\x46\x78\x41\x36\x4d\xe9\x42\x47\x29\x04\x6f\x0d\x67\x1e\x2d\xeb\xc4\x0b\xbc\xd5\xc7\xca\x15\x54\xc1\x5e\x25\x6e\x38\xa2\x00\xbd\xda\xd9\xc5\x53\x32\xde\xbf\x93\xa4\x35\x31\x2a\xdf\x28\x40\x28\x86\x08\x27\x09\xea\xdc\x6a\xa4\x55\xe7\xbc\x77\x72\x75\xf3\xe1\xe4\xea\xe4\xf5\xe9\x31\x78\xec\x3d\xa4\x14\xfa\xe6\x99\xb6\xdf\xd2\x5e\x2f\x9c\x02\x29\xbf\x95\xc5\x4c\x31\x94\x16\xb0\xe2\x03\x2b\xd8\x6d\x4a\x03\xe4\xfc\x4b\x5c\x8b\x0b\x3c\xc5\x5b\xbb\xba\xb9\x25\xfe\x42\x89\xec\xc6\x98\x15\xf3\x34\x79\x88\xbb\x59\x9e\xd1\xbd\xe0\xb1\x16\x85\xb7\x94\xc0\x02\xdf\x10\x4f\x50\x6d\x4e\x61\x64\xab\xba\x51\xe6\x3c\x94\xbb\x55\x9f\x84\x22\xb9\xd3\x02\xe1\x7c\x76\x2b\x79\xa6\x70\x20\xe4\x4b\x0c\x27\x17\xa0\x37\xa9\x3d\xad\x90\x75\x5c\xe1\x96\x3a\xe9\xfd\x6c\x2b\xb1\x3b\xdb\x28\x4d\x85\x03\x60\x60\x86\xfd\x96\x0b\x71\x3b\xe8\xd6\x7a\x6e\x37\x99\x5c\xdd\xfb\x10\x79\x2e\xe6\xe6\xc2\xf0\x05\x58\x78\xdf\x0b\xcc\x1a\xa3\x39\x07\x82\xb2\xc4\x0f\x94\x68\x6a\x4b\x5e\x2d\x45\x6d\xc5\xa8\xc9\xc4\x7a\xde\x28\x6e\x2d\x44\x39\xe6\x85\x95\xc9\xe4\xc8\x4d\x9c\x3a\xa8\x8e\x29\x59\x56\x37\x86\x12\x3f\x0c\x00\xb6\xa3\x16\xdc\x53\xee\x10\x30\xf1\x47\x59\xad\x45\x0a\xde\x11\x6f\x5a\xfe\x39\xb2\x6b\xdc\x01\x27\x17\x38\x25\xac\xb1\xd4\x17\x24\xdd\x67\xde\x2a\x8f\x07\x43\x3c\x26\xa9\x5a\xfe\x0b\xbd\xe6\x19\xea\x14\x2e\x4a\x43\x0e\xa4\xf6\x2b\x0d\xc7\x38\xdd\x5f\x0c\x16\x4e\xf9\x12\x33\x04\x72\x91\x73\xf9\x0d\x4e\x99\x35\x8d\x2f\xbc\x45\x6d\xc4\x34\x5f\x5b\x78\xc3\xe6\xb9\x31\x4f\xc4\xd4\x2c\x53\xb9\x14\x29\xac\x3d\x65\x1a\x64\x80\x92\xc6\x17\x32\x11\x70\xa1\x8f\x2d\x46\x58\x73\x00\xa7\xad\xe3\xbd\x26\x62\x1a\x0b\x5c\x2d\xca\x68\xff\xed\x6a\x33\xd1\x56\x6a\x35\x86\x7d\xfc\xe0\xc3\x35\x09\x17\xc1\x82\xae\x56\x2a\x92\xb9\x95\x8c\x6b\x2e\x59\xf5\xfd\xbc\xfd\xec\xaf\x72\xc6\x2a\xb2\x42\x2d\x66\x9e\x1f\x5d\xde\x1f\x27\xc1\x17\x62\xfa\x60\x83\x7f\x26\x69\xf1\x60\x36\xb3\x1d\x36\x7f\x74\x96\x90\x3b\xa6\x58\x65\x8c\x05\x86\x3c\xf5\xae\xdb\xcd\xba\x2f\x62\xae\x78\xfc\x2b\x5a\x77\xb9\x02\x67\xc6\x00\x75\xac\x5f\xe3\x95\x92\x3a\x5e\xd7\x53\x5e\x9d\xbf\xbf\x3c\x94\x29\xd5\x28\xbc\x7b\x32\x7b\xb1\x91\xb5\xa8\x2e\x8b\xc1\x35\x1d\x12\xba\x9e\xd3\x30\x1d\x32\x1c\x47\x33\x81\xf6\x0b\xda\xe4\x7d\xd4\x96\x6f\x73\xfa\x72\x70\x45\xff\x50\x3e\x18\xf3\x83\xfa\x48\x1e\x00\xd6\xb9\xaf\x1c\xbc\xf0\x2f\x6b\xd4\xf1\x18\x87\x75\xd9\x27\x86\xa0\x7d\x2d\x9a\x16\x2e\x9b\x88\x18\xe1\x38\x27\xf0\xdb\xd1\x92\xc4\xa6\xe9\x38\x07\x75\x92\xec\x87\x0c\x38\x51\x11\x69\xa8\x99\x5e\xcf\xfe\x1c\xf0\x21\x8a\xfd\x5a\x48\xa2\xe2\xfb\xc9\xd2\x51\x23\xa2\xb9\x63\xb6\x68\xc3\xaf\x0b\xab\x08\x96\x0a\xfb\x1c\x82\x66\xf5\xf7\xf8\x4b\xba\xc7\xb7\xb7\x91\x18\xf0\xa1\xcb\x30\xe0\x43\x23\xb4\xd5\xf6\xbe\x4c\x89\xd7\x04\x4e\x93\x5b\x9a\xc6\x0e\xa7\x69\x94\xe6\xc5\x82\xd3\x1d\xed\x48\xf1\x2c\xab\x17\x65\x85\x64\x5c\x30\x94\xa4\xcd\xd3\x8a\x4a\xfa\x1e\x45\x51\x26\x09\x82\x1f\x8f\xf8\x53\x85\x27\x03\xff\x30\x2c\xf9\x2d\x73\x50\x66\xad\x51\x27\x59\xdb\xdb\x4e\x36\x38\x1c\x12\x66\x0c\xd1\xba\x39\xe9\xef\xe5\x8e\x3b\xcd\x8d\xf1\x43\x42\xc4\x20\x1f\xe2\x82\xa8\x13\x2b\x41\x38\x25\x7c\x90\x0c\x3b\x2d\xf3\x9f\xf6\x7a\xe9\xe0\x80\x0e\xf7\x39\xc4\x9e\x89\x8b\x8d\xde\x79\x21\xa4\x92\xf3\xf2\x3b\x55\x78\xf5\x98\xc9\x37\x05\xce\x54\xe8\x1a\x6b\x9c\x02\x6c\x2d\xe1\x38\x83\xa5\x7c\x59\x5f\xca\x97\xc7\x6f\x2c\x45\xf8\x7d\xcd\x99\x30\x28\xa2\x77\xef\xaf\x21\x8c\xc6\xe1\xf1\xe9\xe9\x90\x6c\xf5\xb5\xf3\xa3\xdc\xec\xd8\xdd\x17\x88\xf0\x64\x4d\x26\xc5\x53\x76\xd8\x51\xdd\x23\x5f\xf1\x20\xcb\xb2\x53\x83\x6c\x7e\x06\x5e\xb3\xb0\xa7\x6f\x86\x5e\xf6\x61\xc8\xb2\x21\x80\x36\x23\x17\x54\xa9\x5d\xeb\xa9\x6b\x51\x80\xb2\xa6\x6c\xe5\x1c\x5b\x18\x1d\x46\x1f\x9a\x66\x17\x4d\x6b\xda\x90\xa2\x3d\xf6\x32\xf3\xe3\x9c\x7b\xad\x1a\xb0\x21\x34\xac\xd1\x27\x13\x3c\xec\xa4\x38\xb6\xae\xb9\xb6\x67\x32\x97\xea\xcc\x80\x0d\xa1\x3f\xf2\xbf\xdd\xd2\xbc\x84\x2d\x78\x46\xc9\xd3\xf1\x86\x4e\x28\x19\x0c\xf7\xc2\x3e\x4e\x95\x9c\xea\x0d\xf8\x0b\xa0\xf0\x84\x9a\x95\x71\x5a\x51\xea\x58\xe7\xf0\xdc\xb9\x6c\x5a\x6f\x2c\xae\x1d\x5b\xc0\x9c\x2d\x2b\x81\xe2\x00\xb2\xa2\x83\xe7\xa5\xa8\x16\x69\xb9\x1a\xb6\x7e\x69\xc0\x9d\x0d\xca\x86\x6d\x7d\xb0\x9d\xa1\x8e\x20\x09\x98\xac\x74\x85\x4b\x72\x46\x35\xeb\x25\x19\x8c\xeb\xd0\x1a\x70\x76\x79\x47\x10\xcb\xa2\x8a\x30\x47\x6b\xc5\xda\x1b\x84\xd8\xce\x93\xbc\x2e\xcd\xfe\x89\x89\x23\x5f\xb1\xe7\x53\x18\x3b\xd4\x26\xcc\xa0\x3f\x6c\x5e\x00\xd4\xb5\xf2\xcb\xa7\xc8\x11\x3d\x20\x2d\x70\x93\x57\x61\x07\xaf\x95\xed\x9b\x8b\xc6\x6d\xf1\x93\x70\x43\xb4\xe6\x8b\xf0\xbb\x7c\x1f\xc2\x53\x6a\xdb\xb9\xd5\x2a\x18\xb3\x7b\xe5\xe3\xd1\x90\xdd\x7b\xc7\x5d\x05\x50\xa6\xac\x6a\x74\x39\x18\xe0\x29\x7f\xdc\x31\x44\xa8\x0d\x6e\x40\xb3\x73\x73\x13\x58\xe4\x4d\xf3\xd9\x2a\x61\xa2\x59\x32\xc7\x4b\x93\x30\x66\x25\xc9\x70\x4e\x8e\x68\x98\xe1\x81\xcb\x6f\xaf\xfd\xbe\x98\xe6\x84\x6a\x39\x4d\xdd\x44\x3e\xc7\x56\x4c\xa3\xa9\x4e\x82\x9b\xd6\x41\x45\xe9\xe3\x33\x1c\xaa\x38\xdb\xf2\xaf\xb3\x0f\x28\x14\x77\xc9\x23\x97\xd9\x08\x07\x7c\xbb\x81\x36\xc0\xea\x02\x25\x64\x39\x28\x86\x71\x25\xb3\xed\x76\x89\x2b\x8d\x4e\x70\xeb\xc0\x78\x4b\x3d\xac\x46\x26\x29\x50\xaf\x57\x38\x8b\xad\xba\x19\x43\x37\x25\x10\x24\x6c\xc6\xb2\xd0\x9e\xee\x6d\xdd\xe8\x24\x64\xf9\xd4\xb6\x18\x02\xbd\x20\xfd\xbd\xc5\xcb\x74\x6f\x61\x0e\xbf\x11\x29\x06\x8b\x61\x27\x19\x8c\x86\xd5\xb1\x4a\x44\xb8\x40\x65\xd9\x9c\xba\x3b\xab\xf8\xbb\x3c\xf8\x55\xcf\x62\x52\x96\x55\x1d\xb2\x95\x6f\x74\x13\x92\x45\xf7\x8c\x7e\xc1\x29\x11\xb5\x29\xc3\x8b\xe6\x9a\xc2\x63\xf2\x89\x86\x0b\xb4\x57\x8b\x53\x46\xfd\xb5\xc9\xc6\x01\x02\xd9\x8f\x15\x7e\x10\x11\xb1\x31\x2a\x51\xc8\xf1\x18\xe1\x71\x24\xd7\xb6\x92\x6b\x92\x04\x8f\x07\x9f\x86\x24\xc7\xe3\x48\xdb\xd8\x7b\xba\x57\xa7\x27\xec\xf5\xc2\x71\xa4\x88\x22\x71\x6f\xd5\x2d\x75\x4a\x52\xc3\x59\x8c\x11\x9e\x93\x47\x74\xd4\x9e\x99\xdb\x1b\x8a\xa7\xa8\xa3\x46\x80\x4c\x75\x0c\xc6\x04\x64\x8c\x45\x94\x8c\xc7\x16\x44\x41\xce\xdd\x14\xe1\xa9\x93\xec\xd6\x8c\x2b\xb5\x64\x77\x46\x82\x60\x8b\x90\xa9\xd9\xfd\x9d\xd9\x6a\x15\xd2\xaa\x00\xb9\xd7\x9b\x56\x05\xc4\x46\x36\x8c\xa7\xd1\x4d\xc5\x16\x18\xbc\xe3\x3c\xb1\xf2\xe6\x62\x2a\x4e\xce\x81\xb6\xaa\xbc\x03\xfe\x66\x2c\x67\x7e\x8a\x17\x78\x8e\x67\x4e\xcc\xe7\xcf\x99\xba\xe5\xca\x69\xbb\x73\xda\x00\x93\x42\xe1\x30\xab\x14\x2d\xed\x98\xad\xef\xd1\x66\xc5\xd2\x26\xbd\xf3\x9d\xd1\x3b\x7b\xd3\xf5\x34\x95\xf3\xf4\xb9\x7a\xe6\x3b\xac\xad\xb2\x1f\x57\xf2\xde\x81\x33\xc7\x5d\x5d\xd1\xaa\xd5\x1e\x35\x5d\xeb\x3a\xcb\x9b\xea\x71\x92\x61\x33\xde\x31\xab\xa8\x20\x72\x6c\x8a\x4d\x4b\x42\xf7\x60\x4d\x16\x35\x95\x41\x86\x85\x56\x0b\x14\x54\x54\xd4\x05\x26\x1e\xeb\xb2\xe9\xd9\xb7\xf0\x7d\xbd\xc7\x2d\xde\x7b\xd3\x52\xf9\x03\x2c\x7a\x3d\x23\x2a\x41\x2d\xd0\xad\xee\xc2\x93\x93\x81\xe2\xd0\x8d\x5c\x65\x6f\x67\x77\x8b\x90\x62\xcf\x04\x50\xa5\x83\x62\x88\x17\xe4\x86\x46\x4a\xb0\x0b\x88\xf9\x8b\xc1\xee\x70\x0f\xe4\xb8\xb9\x65\xe8\x20\xe2\x52\xae\x80\xd6\xc6\x08\xdf\xd0\xc8\xc8\x9f\x64\xa5\x0b\xa8\x16\xe1\x62\x67\xa7\x34\x32\x60\x97\x17\x08\x8f\x31\xb6\xf0\xa8\xcf\xbe\xf7\x3b\x06\xce\xfd\x6e\xc1\xc6\x6f\x40\x67\x24\x77\x7f\x53\xe0\xba\x49\x52\x35\xf5\xa4\x64\x9b\x85\x98\x96\x1d\x7b\xa0\xbd\x5e\xbd\xad\x4a\x4a\x87\x7a\xbd\x07\x1a\x6a\x8b\x7f\x14\xca\xfe\xa5\x98\xe3\xdc\x13\x82\x4d\x48\xe6\x75\x25\x5b\xdb\x95\x0c\x75\xf8\x33\xbb\x32\x71\x5d\xc1\x9b\xbb\xf2\x40\x43\xd5\x2e\x39\xec\x3a\xa4\xc3\x9c\x68\xa1\x1a\xc3\xcc\xb2\xdb\x3f\xd3\x87\x66\x3b\xb4\x08\x6d\xee\x06\x6e\xdc\xeb\x8d\xf5\x62\x91\xbf\x7c\x5c\xf2\x35\x99\x37\xf5\x83\xfa\x82\x4b\x3c\x95\xe4\xc8\x94\x3d\xad\x94\x7d\xec\x2f\xa7\x14\xbc\x94\x4a\x84\xff\x40\x8d\xda\x8b\x47\x9e\x1b\x81\x37\x88\x41\xc2\x59\x72\x99\xa7\x34\x60\x59\x37\xeb\xf5\xea\x25\x73\xf9\x09\xdf\xcb\xc1\x74\x49\xbd\xfc\xd9\xc6\x03\x20\xaf\x13\xde\x6c\xe3\x01\xb0\xce\x42\xc3\x92\x9e\xc1\xd1\x90\x08\xfc\x44\x93\x8d\xe7\xdb\x01\x18\x5b\x13\x4d\x23\xb5\x10\xc3\x11\x3e\x9f\x67\x16\xfb\xed\x02\xfa\xc1\xe5\x70\x88\x62\xf9\xaf\x6a\x98\x58\xe7\xc8\x7d\xba\xa9\xca\xad\x8f\x55\x28\xea\x63\xcb\xb2\xa3\xf3\x77\x01\x30\x19\xde\xa1\x5e\x1b\xc4\xda\x57\x73\xb0\x55\xec\x41\x6a\x6d\x51\x27\x13\xf6\x15\xe8\x71\x56\x69\xa1\x0d\x76\xb8\x76\xb4\xd9\x63\x86\x1c\xde\xb4\xf1\x67\x30\x3c\xdf\xc0\xb8\x82\xf7\x7a\x5b\x46\x8f\x0f\xc0\x1a\x4e\x8f\x8f\x4d\x68\xa6\x5c\x32\x7a\x10\x0d\xb4\x62\x09\xb0\x5e\xfd\x0f\x80\x4e\x7d\x40\xdc\x17\xfa\x0a\x2f\xaf\x38\xb9\xf9\xb4\x5b\x1b\x4a\x0f\xbb\xa7\x65\x98\x7d\xce\xaa\x64\x2d\x93\x59\x59\xf9\xaa\xac\x6a\x31\x3e\x1f\xb2\xc6\xec\xe5\xef\x5b\xfa\x15\xa3\xd8\x3f\xb4\x58\x9b\x43\xb5\x61\x31\xae\x35\x79\xa1\x9e\xec\xee\x4d\xe5\x43\xe4\x96\xcb\x11\x15\x09\x4b\x0b\xe5\x5e\xc1\x12\x3d\x6a\x80\x85\xee\x72\x7f\x7b\x6e\xee\xdd\x52\x69\x2b\xdf\x37\x0d\x77\xfb\x15\xc3\xdd\x7e\xd5\x70\xb7\xef\x1b\xee\x6e\xf5\xeb\x26\xba\xfd\xaa\x89\x6e\xbf\x66\xa2\xdb\xdf\x64\xa2\x6b\x53\xb7\x1a\xe3\xf6\xab\xc6\xb8\xfd\x12\xbf\x56\xb6\x40\xa7\xc6\x16\xe8\xed\x1a\xa3\x01\x90\x4c\x48\xae\xd4\x08\xf2\xaa\x17\x29\xab\xfc\x31\xd0\x72\xdc\x33\xdf\xc9\xaa\xd6\x42\xaf\xa9\x6f\x4a\xa4\x2c\x63\x29\xae\x96\x17\x0b\xc7\xe1\xd6\x8c\xd1\xdf\xd3\xd2\x28\x68\x3e\x38\x71\xd3\x69\xc3\xe3\x40\xa3\xa4\xd5\xed\x8a\x68\xab\x64\xa7\x62\xd3\x50\x11\xc0\x54\x72\xa3\x4d\x36\x8c\x02\x45\x56\x68\x62\x85\x3f\xed\x86\xcd\xd5\x52\x95\xe4\xeb\xe9\xf7\x39\x66\xef\x73\x4c\xcb\xd1\xe1\x46\xc6\xec\x8d\x2c\x69\xbb\x91\xb1\x35\xf7\x17\xf6\xbc\x1b\x19\x7b\xc2\x8d\xac\x70\x37\x32\xa6\x40\x58\x72\xcf\x7a\x60\x23\x15\xda\x74\x5f\x2a\x9e\x72\x5f\x6a\xb7\x0a\x66\x6b\x2e\x4c\x85\x92\xf0\x7c\xa6\xf8\x23\xc5\xdf\x3d\x66\x7f\xdf\xdf\x60\x7f\xef\x03\x8c\xfc\x6f\xde\xc6\xd6\xa6\xfe\xc7\x76\xb7\x1b\x6f\xf1\x6b\xf7\x7b\x39\x3d\x1f\x24\xb5\xeb\x54\xed\xf8\x9c\xe9\xd6\x8d\xbc\x11\xbf\xb1\x91\xd1\x90\x4d\xeb\xef\x5a\x1e\x4d\x16\x29\x84\xb4\xd3\xfe\x90\xbb\x7d\x54\xdd\xac\xdf\x35\x36\x36\x2f\x6b\x4c\x93\x77\x6c\xf8\xdc\x92\xe4\x87\x1c\x69\xfe\xd5\x27\xcd\x1f\xe9\x6a\x15\x7e\xa4\x6b\xa1\xa1\x12\x79\x85\xff\x48\xa3\x29\xa7\x13\x22\x67\x56\xc9\xcc\x47\x79\xea\x79\x99\x79\x5a\x1e\x90\x7b\x69\xeb\x9e\x06\xb0\x33\x28\x79\x3f\x9b\x4b\x1d\x45\xb6\x2c\x84\xb5\xc9\xa0\xd8\x0f\xe2\x20\x16\xb0\x90\x7e\xa1\xa4\xef\xb4\x7d\x3f\x79\xad\x06\x70\xf0\x80\x10\x42\x01\x8d\x6a\xb5\x0a\x8c\x3e\xac\xf2\xd2\x5c\x32\x2a\x2f\x99\xdc\x7f\x22\xe7\xee\xa5\x26\x80\xff\x6a\x9f\x70\x36\x26\xbf\xd0\xed\x6d\x5f\xe3\x52\xb3\xba\x70\x5f\x4a\x1d\x94\xcc\xf8\x1c\xaa\xe4\x20\xca\xf5\xfc\xe9\x94\xca\x2f\xb8\xa4\x93\xae\xf6\xa9\x63\x63\xcf\x13\xca\xe5\xb4\x46\x22\xdb\x41\x37\xd4\x45\x8f\x51\x00\x30\x5d\xea\xd3\x6f\xdf\x2d\x69\x19\x77\xbf\xf3\xaa\x2b\x7f\xd3\xc8\x5d\xc2\x3f\xd5\x61\x40\xff\x6d\xdc\xd6\x3c\xbd\x07\xa7\x73\x9a\x88\xd5\xaa\x25\x06\x85\xa7\x81\xdc\xde\x45\xa0\xe9\x53\x78\x90\x66\x8b\x50\x51\x19\x31\xeb\x42\x98\x8c\x3e\xc1\xae\xb8\x8b\xae\xe4\x6f\xe3\x19\x35\x29\x2a\x60\xb6\xd6\x00\x54\xbd\xbe\xa2\xfa\xd8\xcb\xf2\x31\x6d\x49\x39\x4f\xc4\xf4\xac\xfe\xa9\xbc\xa5\x77\x2c\x0b\x9d\x4b\x1c\xad\x9c\x13\xdc\xc3\xd7\xad\xc8\xa5\x39\x5e\xde\xe6\x8b\x6c\x5c\x18\x00\xa5\x49\x11\x9b\x46\xc8\x8a\xec\x53\xa9\x77\x2a\x34\x4a\x03\xe3\x66\xfa\x1c\x94\x04\x24\x53\x32\xbf\x30\xc3\xc6\xa8\x97\x66\xda\x92\xb2\xaa\x95\x73\xef\xab\xea\x03\x63\x02\x22\x2b\x50\xba\x1d\x77\xee\x8b\xb2\xca\x26\x36\x52\xaa\x3e\x18\x7e\x81\x7e\x65\xb2\xf7\xbe\xfc\x89\x82\xef\xea\x5d\x44\xbf\xce\x95\x11\xa1\x99\x09\xad\xf2\xc7\xc1\xeb\xf7\x3f\xc6\xdd\x19\x2b\x0a\x96\xdd\x75\x39\x9d\x04\x28\xb2\x8b\xb8\x1c\xe5\xb3\x99\xf3\xa0\xb5\xc3\x6b\x64\x68\x95\x0d\xa0\xdf\x5e\xd2\x49\x11\xba\xa9\x35\x93\x71\x91\x88\x69\xe5\xe0\x5e\x6a\x5c\x02\xeb\xd6\x07\xcb\xc6\x29\x09\x89\x96\x1a\xe4\x38\x21\xcd\x2e\xa8\xe9\x90\x7d\x60\xa6\x0f\x07\x42\x8e\x9b\xa0\xe3\xae\xc8\xbb\xaa\xd2\x6e\xd2\x95\x93\x89\xbb\xb7\x0b\xd1\x15\x53\xca\x69\x97\x15\xdd\x2c\xef\xea\xba\xbb\x8a\x23\xe8\x42\x00\x23\xdf\x19\x31\x43\x39\x49\xac\x48\x65\xa9\xa4\xe2\x45\x49\x12\xe0\xc1\x70\x4a\x60\x10\xd5\x15\xbf\xf0\x54\x9e\x4a\x8c\x95\xee\xe7\x60\x90\x28\x7b\x97\x68\xec\x49\x4b\x9f\xd4\x21\x1b\xfc\x33\xd8\x56\x2c\x60\x31\x48\x87\xb5\x25\x17\x87\xd5\x05\x0f\x12\xd7\x0c\x69\xb7\x78\x6f\x3c\x33\x1c\xc8\x57\x3a\x58\x42\xa0\x85\x02\x3a\x38\xa1\xcb\x2e\x87\x29\x53\x51\xd0\xbb\x0b\xe3\x3d\xa5\xda\xc5\xb1\x6e\x67\x5e\x6b\x43\x27\x87\x02\x40\xaa\x1d\x2e\x50\x6d\x0b\xea\x8d\xb0\x40\x65\x99\xe6\x9a\xb9\x80\xad\xfe\x26\xe7\x6a\xa6\x9d\xac\x4f\xb4\x4c\x5f\xb5\x6d\x74\xf3\x14\xa6\xf9\x5d\x77\x92\x73\x3d\x99\x5d\x3b\xf0\x6a\x5a\xb3\x1c\xa6\xaf\x4b\xbf\xb2\x42\x40\x3a\x31\x4d\x84\x4b\x15\x20\xcc\xc9\x60\xb8\x67\x85\x6b\xa2\xd7\xfb\x89\x86\x02\xed\x29\xf0\x0a\xff\x38\x50\xd8\x86\x86\x66\xfc\xf6\xdd\x52\x68\xcd\x83\xf2\x41\x1c\xc8\x17\xf0\x6b\xf8\x5b\x87\x9b\x28\x75\x58\x10\x93\x4c\xa9\x48\x79\xb4\xc8\x94\x15\xab\xd0\x81\x5f\xbd\x14\x66\x54\x18\x19\x70\x45\x51\x83\x28\x40\x7e\xf3\xf6\x90\xf1\x50\xdb\x32\x2d\xea\xf5\x82\x1d\x91\xcf\x77\x52\x7a\xaf\x02\x3d\xab\x82\xf7\x43\x56\xaf\xca\x6b\x0c\x8a\xdd\x6f\xc3\x08\x30\x88\x46\x08\xb4\x84\xbc\x72\x47\x08\x27\x41\x37\xc0\x19\xf9\xfe\xff\x27\xf0\xbf\xb5\xd6\x5b\xee\xd3\x52\x9e\x2e\xbf\x99\x90\xeb\xa5\x3e\x02\x82\xff\xc9\x02\x70\x3c\x85\x33\x90\x4d\xc2\xbe\x41\xb2\x81\x2d\x1c\x15\xec\x1b\x85\xf8\xf9\x7b\x5b\xde\x5b\x56\x1c\xcf\xe6\xe2\x21\x44\x7b\xc8\x7b\x0b\x20\x04\xa5\x21\x8d\x4b\xff\x8b\x0e\x9d\xa1\x88\xda\xb2\x91\xc7\x51\x41\x5f\x8b\xbc\x86\x48\x34\x08\x9d\xda\xf1\xa5\x4f\xc1\xeb\xee\xcb\xaa\x32\x4d\x29\x70\x06\xa7\xce\xbf\xe4\xc2\xb1\x10\x35\x40\x47\x55\xf0\x82\x0c\x99\xb3\x46\xdf\x47\x4c\xf3\x38\xea\x30\x95\x50\x6e\x24\x88\xb1\xa3\xa6\x84\x30\xad\x50\xb7\xa4\x52\xa7\x28\x7d\x42\x6a\xd9\xaa\xc1\xb0\x19\x95\x91\x6b\x93\xf9\x4c\x1b\x65\xa3\x4e\xb6\x2f\xbc\x10\xb2\xba\x20\xb9\xd1\xcc\xe5\x67\x47\xb6\x2b\x0e\xb6\x79\xc4\xc6\x38\x43\x28\xa6\xd1\x98\xa6\x14\xcc\x4a\x21\xda\xa2\x9f\xa7\x3e\x22\xa6\x4f\x02\xe9\xbb\x83\xb2\xce\x37\x06\x47\xb9\xbb\x21\x24\xea\x44\x2d\x4a\xc2\x4d\xec\x5e\x5d\xb0\x3d\xf9\xb8\x0d\xdf\xab\xbf\xbc\x86\xb3\x4c\xbe\x1f\x91\xc6\x81\x62\x43\x95\x2e\xd9\x38\xa6\xb8\xad\x76\xab\x04\xf4\x5a\x61\xef\x29\x29\xd6\xc7\xfd\x02\x8f\xe4\x6c\x73\x9a\xc5\xa3\xb2\xac\x37\x8a\xd6\x3c\xed\x2a\x4c\x34\xa8\xf9\x5a\x6f\xaa\x40\x6c\x38\xe5\x91\x83\x9d\x54\x70\x30\x65\xb5\x6f\x3e\xd4\xb6\x5b\xab\x54\x1f\xe3\xb5\x25\xaa\x5e\x06\x4e\xdd\x0e\xcb\xc6\x18\x10\x98\x9d\x6d\x31\x8a\xf1\xc4\x04\x7c\x88\x45\x64\x7f\x87\x08\xa7\x89\x7d\x6d\x7e\x86\xc8\xde\xfa\x85\x68\x67\x7a\x7d\x6b\x43\x18\xd8\x6b\x6b\x14\x0d\x74\x19\x44\x4c\xc9\x6d\xea\xa3\xaf\xb7\x19\x4e\x7b\xc6\xab\xa6\x98\xa7\x19\x50\x83\xb1\xbc\x48\xee\xde\xe4\xdc\x78\x40\xd0\x9a\x67\xc4\x05\xcf\xbf\x42\x94\x04\x00\x64\x80\x58\x98\x37\xa3\x3c\x13\x34\x13\xfa\x96\x05\xba\xae\xb1\x96\x82\x5a\xac\x0e\xdb\x12\x30\xf5\xa7\x5f\xba\x1c\xac\x1f\x1f\xb3\x8e\xd4\x23\xc6\x37\x8e\x98\x77\xcd\xca\xfc\xe2\x68\xd7\x2c\xcb\x7c\xd2\xe5\x62\xbf\x06\xe8\x2b\x08\xb5\x37\xa0\xd5\xca\xe0\x44\x58\xc8\x09\xe1\x5b\x4c\x6d\x35\xd0\xdc\xac\xad\x81\x25\xf4\x55\x13\x05\x8a\x56\x2b\x3d\x66\xc7\xb3\x5b\xca\xe1\xad\x1c\x9f\xfd\x42\x44\x13\x9e\xcf\x4e\x24\x07\xa3\x45\x81\x71\x12\xbd\x3d\xb8\xba\x39\x3b\xb8\x3e\xf9\x70\x7c\x73\xf5\xeb\xbb\xd7\xe7\xa7\xbd\xde\x54\x76\x66\x7f\xa4\x92\xcb\x54\x63\xe1\xe5\x7f\xa3\x28\x92\x29\xa1\xa5\xd4\x32\xa4\x6a\x88\x50\x5c\xc7\x32\xae\xf9\xb9\xd0\xaa\x09\xc5\x9a\x0e\xed\xe7\xae\x29\xed\x5d\x4b\x5c\x82\x0d\x3d\x5a\xd4\x7b\x94\xb7\xf6\x08\x36\xb3\xc3\x4e\x61\xed\x6b\x40\x47\x3d\x34\x76\xdc\xda\xc8\x82\xf4\x4b\x7b\xf8\x2d\x2d\x10\xd3\x8c\xce\xf2\xca\xf9\xd5\xa5\x65\x46\xbf\x0a\x6d\xab\xac\x8a\x8a\xa9\x85\x8b\xaf\x78\x98\xbd\x72\x30\x53\x76\xee\xb9\x77\x71\xd4\x54\x5a\x43\xb9\x99\xaa\x9c\xfd\x53\xa5\x7d\xdb\xdb\x26\x9a\x25\xc7\x32\x69\x9c\x59\xea\x90\x0b\x67\x82\xd6\xe8\xb2\x92\x09\x1a\x1d\xae\xb9\x13\xc9\xf1\x27\xb4\x2c\x40\x22\xd8\xd5\x63\xeb\xe4\xc0\xc6\x4e\x06\x0c\xec\x65\x0e\x3b\xba\x5e\x8e\xea\xe0\x6f\x38\x01\x29\x79\x25\x0c\xa7\x60\xbc\xd2\x64\x8d\x42\x93\x98\xea\x00\xbb\x06\x0e\xe8\xd0\x74\x31\xf9\xdf\xd8\xc5\x66\x9b\x6a\xa1\xe1\x5d\xf9\xd8\x11\x9c\x62\x7d\x0b\x3d\x33\xf1\x6a\x1b\x3f\xd1\x87\xa2\x42\xbe\x0b\x22\xfc\x06\xfb\x5b\x53\x8f\xaf\xb6\x88\x94\x39\x25\xbf\x64\x56\x20\x04\xbc\x93\x4c\x5e\x03\xa3\xc5\x5a\x89\x92\xc1\x10\x33\xd2\xdf\x63\x2f\x39\x98\x5b\xda\x7b\x9b\x18\xb0\x61\x27\x27\x74\x90\x0c\x15\x21\x66\x85\x0d\x13\x15\x22\xe5\xba\x58\xf5\xcd\x83\x17\x8a\xea\x2b\x2f\x29\x84\xab\x3b\x3f\x47\x2d\x1e\x7d\x95\x5c\x39\x0e\x06\xc3\x00\x21\x84\x33\xb5\x34\x72\x6b\xa7\x69\x27\x44\x32\x6c\x4f\x58\x70\x70\x73\xc0\x19\xe9\x63\x46\xb6\x76\x9b\xcb\xcf\xb7\x71\xc8\xd1\x32\x64\x84\xad\x56\x75\x53\xee\x57\xe4\x7b\x30\x8c\xd5\x6d\xc1\x36\x2a\x1c\xce\xb6\xb7\x4b\xa4\x00\xc7\xb2\x7d\x39\xa4\x31\xdb\xf7\x9a\xc8\x95\xa7\x49\x2e\x24\x6f\xb6\x6e\x39\xab\xc9\x95\xeb\xb9\x49\x50\xec\x4a\xf0\x96\x7b\xda\xb2\x82\xd4\xf9\x25\x94\xcd\xab\x59\x35\x9c\x16\x8b\xd4\x7a\x0e\x7b\xb4\xac\xb6\xec\xb5\xe5\xe5\x40\x59\xdf\x46\xe6\x3a\x35\x0c\x21\x6a\x48\xa4\x48\x1a\x5e\x8e\xf3\x0c\x2c\x53\x6d\x50\x3b\xdd\xe3\x4a\x7f\xdb\xe8\xa4\x47\x13\x4d\x13\x63\x8a\x55\xeb\x62\xe1\xc8\x23\xf7\x1d\x70\x65\x6d\x0d\x02\x99\xd5\x09\x24\xe6\x08\xb3\x1a\x89\xc4\x7c\x2d\x91\xf4\x87\x85\xda\x8e\x29\xca\x99\x29\xca\xc9\x2c\xe5\x5c\xb8\x4d\x9b\x8a\x65\xcb\xec\x69\x1b\x78\x37\x6d\x3e\xea\x8f\x29\x65\xf4\xc4\x52\x06\xbb\x6d\xf3\x6f\x3e\xf6\x7d\xe1\xef\x58\x6c\x0e\x7f\x6c\x16\xb7\xcb\x31\x7d\x24\x47\x63\xea\x5d\xd6\x89\xa8\x90\xba\x0a\xd3\xb6\xdf\xba\xfb\x0d\xcf\xe7\x22\xc3\x50\x1c\x68\xa6\x2e\x40\x08\x1b\xc0\x5a\xdf\x97\x32\x90\x64\x65\x21\xa6\x0f\x72\xd7\xc7\xc0\x07\x6a\x72\xf1\xcc\x7a\x80\x6e\x60\x05\x31\xa7\xc9\x69\xec\x22\x2b\x94\x50\x8e\xd3\x56\x3f\x1c\xb1\xb1\x8a\x22\xa7\x50\xe1\x2a\x21\x89\x69\x56\x2c\xb8\x55\x38\x84\x48\x9b\x93\x15\x54\x5c\xe9\x60\xc5\x5a\x44\x87\xec\x75\x1c\xdc\x29\x4c\x28\x63\x54\x8f\x65\x2c\x00\x6e\x7a\x5d\x29\x74\x8c\xc0\x60\xa5\x5e\x86\xf6\x65\xd7\x65\xc8\x12\xb4\xe8\x76\xde\xce\xc1\x00\x16\x0d\xa1\x9b\xec\xf0\x20\xdd\x4d\x4d\xab\x04\xb7\x63\xaa\x6c\x38\xba\xb5\x6f\x4a\x48\xb0\x16\xd7\xc7\xdf\x6d\xf5\x62\x3b\x62\xca\xf3\x2f\x40\xb7\x8f\x39\xcf\x79\x18\x1c\x26\xd9\x3f\x44\x37\x19\x8d\x28\x40\x22\xdc\x2e\xee\x8c\x10\x4f\x70\x4a\xbb\xf9\x42\x14\x6c\x4c\xbb\x92\x3b\x9e\x02\xcf\x2d\xef\x58\x39\xef\x86\xcd\x9a\xbb\x93\x34\xb9\xeb\xb2\xa2\x6b\x60\x2b\x51\x80\xac\x3c\x79\xfd\x00\x28\xb7\xb8\x9a\x52\x4d\x67\x73\x02\xd3\x67\xe6\x37\xf9\xcc\xc6\x9f\xad\x23\xd3\x22\x97\x0b\x92\x4c\x8c\x8a\x38\x3f\xd1\xbb\x8e\x64\xfa\xd5\x9d\x5a\xa0\x24\x8b\x6e\xf4\x4f\xf7\x1e\x9c\x06\xe5\x2f\x0b\x4a\xa9\x5f\x15\xd4\xca\x90\x05\x4f\x60\x36\xe7\x20\x36\x51\x67\x83\xaf\xb5\x24\x02\x37\x42\x63\x4a\xaa\x6b\x42\x92\x80\x8e\xe7\x57\xeb\x3b\x11\x4c\xf2\xfc\x36\xe1\xf1\x6d\xf2\x4d\x6e\x2e\xf3\x08\xe2\x36\xe4\x94\x49\x6f\x72\xfe\xfe\xf2\x94\xfc\x4a\x41\xea\xda\x65\x93\xb0\x01\x96\xf7\xfe\xf2\x14\x7d\xa6\xe4\xfd\xe5\x29\x6e\xe4\xfb\x99\x5a\xfb\xec\x60\x91\xa9\x38\x87\x63\x97\x55\xdd\xcb\x57\xab\x96\x4b\x94\xfa\x14\xe9\x98\x41\xa8\xb9\xe0\xf2\x45\x3a\xee\x66\xb9\xe8\x4e\x58\x36\xee\x82\x05\x8c\x6c\x4a\x77\x9e\x70\xb8\xa7\xcf\xe8\x68\x9a\x64\xac\x98\x81\xf0\x51\x7e\xb9\x4a\x32\x26\x74\x18\xc6\x00\x75\x3e\x53\x52\xad\x24\x0c\x16\x3c\x05\x75\x70\xa3\x17\x65\xa9\x35\x2c\xd5\x2f\x95\x5b\x82\x17\xec\x5b\xce\xde\x91\x5c\x4a\x87\x92\x42\x7e\xf5\x09\xf5\xc7\x29\x4b\xa9\xde\x1b\x2c\xbb\x8b\xff\x27\xfb\x9f\x4c\x6b\x9b\xda\xf5\xc2\xeb\x04\xb9\xbe\xbe\xa2\x59\x9f\x0f\xe1\xa0\xa4\xd0\x9d\xca\x55\x77\x11\xa9\x05\xca\xf2\xec\x44\xd0\x99\x35\x8c\xdb\xcf\x88\x13\xbd\xc6\xb5\x2c\x86\xc0\xda\xd4\xbd\x5e\x98\x11\xa7\xce\x43\x78\x43\x3f\x6a\xfa\x86\x4c\xf2\x15\x79\x06\xc0\xcb\x8a\xa2\xbe\xf6\x55\x46\xaa\x0c\xb3\x7d\x2b\xe9\x0e\x2b\xca\x0f\x95\xd0\xed\x53\xd9\xe5\x7b\xf1\x27\x30\xe6\x9a\xa6\x2a\x7f\x06\x4d\x6e\xb3\x8e\xbb\x89\x1b\xe7\x00\x19\xc4\x5a\xaf\x92\x68\x4d\x4c\x61\x77\xbe\xdf\x6e\xc8\xec\x1a\x07\x63\xf5\xa0\x14\xe5\x5a\x71\xd8\x0e\x56\x67\xdc\x35\x97\x63\x9a\xd2\xbb\x44\x50\x00\xc3\xc6\x05\xf1\xed\xb6\x53\xa2\x14\x27\x63\xbc\x20\xcb\x12\x4f\x09\x25\xaf\x52\x2d\xa3\x91\x87\xba\xa4\x45\x95\x0b\xff\xc5\xe5\xf9\xbf\x7e\x45\xda\x36\x76\x79\x67\x42\x31\xb0\x49\x98\x82\x66\x45\x20\x23\xe5\x4c\x35\x5c\x85\x13\x33\x55\xf9\x06\x6d\xba\xe6\x1c\x6a\x41\x72\x43\x48\x16\x1d\xbe\xbf\xba\x3e\x7f\x77\x73\x7d\xf0\xe3\xcd\x9b\xf3\x4b\x73\xa6\x4d\x4b\x3c\x4d\x8a\x58\x1f\xf0\xa6\x36\x9c\x7f\xc9\x7e\xa6\x0f\x05\x04\x87\x48\xb5\x53\x64\xd5\x95\xed\x88\x16\x23\xce\xe6\x22\xe7\x90\x28\xac\x45\x63\x1d\xe5\xd9\x84\xdd\x2d\xcc\x73\x89\xca\x4e\x1f\x2f\x60\x7c\x81\xbd\x0a\x17\x78\xa2\x20\x86\xbb\xed\x91\x5f\x17\xb8\xde\x64\xbc\xac\x16\xba\x8b\xfd\x2a\x77\x75\x28\xab\x69\x89\xb0\x6e\x71\xc5\x4e\x76\x5d\x2d\xb4\x1e\x47\xb6\xd6\x72\xac\xf4\xe8\xea\x0e\x91\x56\xe3\x98\x36\x46\x5f\x68\xc3\x41\x3b\xfa\xa5\x64\x67\x18\xd1\xea\xb9\x85\x17\x59\x2f\x2e\x7c\xdf\x17\x93\xbe\xa3\xac\x90\x73\x4d\x22\x1c\x72\x69\xdd\x93\x45\x79\x34\x60\x86\xf0\x0c\x06\xf5\x46\x84\x39\x9e\xe3\x02\x53\xbc\x78\x82\xe5\xcd\x63\xae\x0a\xb3\x3f\xec\xaa\x30\x7f\xae\xab\xc2\xec\xe9\xae\x0a\x33\x70\x55\x98\x3d\x09\xb8\x0c\x2c\x1c\x1f\x33\x39\xed\x68\x1f\x45\xbb\x99\x39\xf6\xbd\x18\xa0\x97\x4c\x79\x1c\x49\x82\x08\x2b\x57\x6e\x78\xda\x11\x66\x4e\x73\x7f\x4e\x59\xdb\x9c\xe2\x5b\x79\x3d\xee\xf5\xb8\xae\xd7\x4d\x6a\xa6\xed\x2a\xab\x46\xc0\xb6\x31\x0d\xcb\xe2\x3b\x01\xf1\xcc\x44\x64\xf3\xb8\xb2\x78\x8b\x85\xe6\xda\x92\x7c\x5f\x27\x17\xe6\x5a\x80\x9c\x1a\x08\x66\x89\x5c\x4d\xef\x6b\xad\xe6\x0a\xb0\xcf\x1d\xe7\x9b\x1b\x2d\x22\x2f\xb5\xca\xeb\xfb\x99\xd0\xec\x3e\x16\xb8\x7d\x02\x3c\xd5\xc6\x46\xf4\x2d\xee\x57\x91\x21\x6d\xa8\xbd\xce\x7c\xb4\xc5\x63\xb1\xd2\x83\x2a\x76\x61\xc5\x26\xe3\x5e\xe0\xe5\x13\xf0\x51\x57\x2b\xbe\xf6\xa0\x69\xb7\x21\xaf\x54\x39\x8e\x58\x01\xa1\xaa\xaf\xc1\xe1\x1d\x70\x95\x9a\xd8\x85\x40\x6b\xda\x0d\xe2\xff\xd8\xae\x58\x67\xef\xfb\x97\x97\xdc\x6e\x90\xf9\x7c\x47\x5b\x63\xe3\x73\xd3\xb8\x89\x54\x60\xe7\xcc\xc4\x3e\x09\x73\xce\xc3\xd8\xa9\x6e\x7b\xc2\x70\xcb\x9e\xa9\x31\x14\x63\x4b\xd7\x4a\xa5\xf3\x79\x14\xd8\xcd\x02\xc5\x7b\xa4\x1e\xd9\x3b\xd6\x97\xd6\x9e\x3d\xd9\x3a\xd7\xf6\x9c\xd7\xac\x75\x6b\x16\xba\x0f\xe2\x79\x16\xba\x99\xb7\x5f\xad\x38\xe9\xb8\xa5\xad\xba\xa5\xa6\x9e\xaa\x21\x70\xa3\x7c\xe3\x29\x6e\x8b\xfc\x2a\x2a\x6c\xd8\x06\x7b\x5f\x2d\x14\x58\x6f\xeb\x6b\xdc\xd0\xc5\x23\xc0\xa4\xa2\xba\xc2\xe4\xf9\x70\xfe\x67\x58\xe8\xbf\x09\xa6\x79\xf7\xaf\x87\x69\x06\x14\x99\x35\x1c\xf0\xfa\x61\x6d\xd3\x43\x3f\x61\x60\xd7\x22\xbe\x9e\x8b\xb2\xc1\x6e\xab\x05\x99\xb9\xf5\xc7\xb4\xc0\x7f\x3d\x10\xb3\x72\xf7\x58\x56\x10\x9f\x4b\x27\x1d\xdf\xc8\xfb\xe4\xeb\x78\x9f\x6c\x03\xdb\xa3\x04\x60\xae\x81\x1b\x18\x9e\x5c\x31\x3c\xf9\x33\xc1\x78\x73\x54\x22\x9c\x97\x3e\x0e\xba\x39\x4a\x3d\x70\xad\xb3\xf7\xa7\xa7\x1e\xae\xd6\x5f\x87\x8d\xfb\x87\x21\x48\xff\xc8\x09\xf5\x3c\xcf\x94\x27\xb3\x83\x4f\x85\x94\xfd\x43\x67\xdf\xf3\xda\x6c\xce\xae\xeb\x75\x52\x34\x9f\xba\x3b\x6b\xcb\x2a\xdd\xbe\x02\xf0\xe3\x2e\xd0\xd3\xaa\xa9\xa3\xa2\x5c\xef\x84\xbc\x79\xd2\x9a\x93\x7d\x1f\xe1\x83\x35\x1f\x3c\xe0\x22\xbb\xc3\x3d\xf6\xd6\xdb\xe3\x2e\x52\x35\x18\xa5\x41\x6e\x8b\x4a\x15\xb8\xc0\xda\x71\xe0\x87\x5c\xf6\x00\x90\xd6\x95\x0f\x2a\x99\x4a\x71\x1e\x2e\x1a\xce\x08\x1f\x70\x07\x75\x86\x99\x4a\xbc\x8b\x6a\xc0\x94\x80\x26\xc6\xf6\xeb\x58\x60\x19\x8a\x99\x42\x69\x60\x06\x03\x8c\xa1\x38\x08\xf4\x79\xf3\xe9\xff\x60\x4b\x93\xaa\xfd\xc1\xfe\x26\xfd\x40\x6d\xeb\xfa\x8c\xe5\x26\x33\x13\xfa\xb8\x79\x09\x40\x05\xc1\xda\x91\x77\x6a\x1d\x83\xa4\x55\x66\x49\x6d\xa0\x15\x68\x6e\x10\xc4\x16\x73\xcd\x2d\xb2\xdf\x1f\x59\x64\x5d\x7b\x91\x06\xa3\xc0\x4b\x61\xcc\xfb\x02\xcf\x8b\xeb\x48\xd8\xb1\xf3\xad\x31\x28\x34\xf6\x4c\x10\xf9\xdd\x55\x79\xf2\xf8\xba\x6b\x84\xe4\xb0\x86\xa2\x03\x0a\x08\x52\x43\x22\x9c\x25\x57\x13\x17\x2b\xf7\x70\xb1\x18\xd2\x91\x06\x19\x84\x18\xcc\x07\x89\x8f\x8b\x95\x18\x7b\x81\x75\xb8\x5f\xfb\xf0\x37\x94\x95\xca\x9a\x73\x14\x6b\xa1\xf5\x99\xc0\xee\xa5\xa7\x3a\x3b\x7d\xfa\xb6\x92\x07\x68\x6d\x5d\x71\x64\x0d\x04\x5b\x77\x95\xd3\x68\x71\x6c\xb7\x8f\x65\x56\xdf\x88\xe7\x01\xeb\x1a\x16\xee\x54\x60\x70\xe1\x54\xbc\x61\xbe\xe0\x23\xe7\x9c\x4c\x5a\x88\x97\x35\xcf\x5d\x9f\x6a\xf7\x51\xa0\x38\xcf\xfd\xab\x56\xe5\x86\xf1\x71\x62\x38\xdd\xfb\x66\x53\x2c\x94\xcc\x9e\x17\x35\x1f\x73\xb0\x95\xf0\x3c\x0f\xab\x42\xc9\x1a\x22\x89\x4b\xf7\xfe\xf1\xe9\xc4\x99\x99\x2c\x43\x0c\xbf\xaf\x10\xc1\x89\x08\x2d\x25\x41\xfb\x16\x9d\x38\xb6\xd6\xbc\x6c\x9f\xd5\x5e\xba\xfa\x5f\x3f\xbd\xfe\xef\x91\x23\xc6\xeb\xeb\x77\x70\x4e\x8d\xa6\xc4\xb6\x19\xae\xfe\xb7\x6b\x09\x84\x5c\x4b\x79\x0a\x2a\x01\xb9\x3d\x84\x83\xf0\xb1\x99\x3f\xb4\x65\xe6\x1a\x3f\xa6\x2e\x5b\x38\x8e\xbc\x80\x64\x61\xfd\xde\x6f\xdb\x8a\x8c\x79\xd5\x67\xf1\xd7\xa2\x24\x4a\xda\x0b\x7b\xbd\x0d\x8b\xf0\x8a\x0e\xff\x02\xe8\x44\x20\x88\x1f\x05\x19\x04\x09\xc4\x46\x07\xab\xec\x00\x07\x33\x2a\x92\x00\x07\x23\xc1\xd3\x60\x88\xbf\x13\xe4\xc5\xff\x0d\xb1\xa9\x57\xb3\x7c\x51\xd0\x95\xc8\x17\xa3\xe9\x0b\xb8\x1e\xfc\x28\xc8\xd2\x70\xb4\x74\x7c\xa0\x94\xbf\x71\x11\xa9\x5f\x3a\xba\x4d\xd4\x48\x81\xcd\x9b\x03\x5f\x25\xb7\x54\x2a\x8c\x93\x71\x85\xe2\x3f\x5a\xd8\x40\x00\xb6\x5c\x89\x1d\x26\xf8\xa6\x62\x95\xe9\xf0\x93\x8a\xb5\x3c\xd9\xaf\x6b\xe4\x09\x10\x31\xb3\xc0\xa9\x51\xb7\x68\x0c\x7a\x3d\x95\xa6\x5e\x2b\x55\x80\xe7\x33\xc9\xc6\x71\xff\xcd\x81\xe7\x22\x6b\x45\x0c\x06\xc8\xde\xad\x54\x92\xeb\xe5\x32\x9b\xa7\x6c\xc4\xc4\xb5\x02\x12\x4a\xf4\xcd\x3e\x9f\x11\x1d\xf5\xdb\xc6\x06\x27\x46\x87\x7a\x6c\xde\xf8\xac\x48\xfa\x04\x94\xf9\x1f\x45\xd4\x18\x55\xd0\xf5\xc1\xe2\xf2\x8a\xad\x2c\x32\xdb\x09\x05\xaa\x93\x67\x81\x3d\x37\x56\x2b\x1d\xe6\x5c\xe6\x3f\xb0\xdd\xaf\xe0\x4a\xba\xc3\xb2\x36\x48\xce\x5c\x0c\x62\x48\xb6\x7f\x85\x88\x92\x54\x2e\x8a\xda\xf7\x81\x18\xd6\xd1\xd7\x95\x5e\x12\xc6\xd1\x98\xeb\x54\x06\x37\xa6\x4e\xd4\x5b\x8f\xdd\x2d\x14\xa6\x90\x8e\x0f\x8f\xf6\x85\xea\xac\x79\xb6\xb4\xcc\x1e\x00\xa5\x0a\xad\xc5\xab\xcb\xf2\x4c\x39\xb6\xb8\x6a\x5c\x48\x5b\xb5\x4f\x03\x1d\xfc\x36\x90\xe4\x54\xbf\xaa\x86\xad\x0d\x10\xce\xcd\x97\x24\x4d\xf3\x2f\x74\xfc\x33\x7d\x90\x19\x12\xbb\x02\x4c\x27\x71\x4a\x00\xcb\x39\xab\xb3\xc7\x55\xa8\x2b\xeb\x55\xa4\x7e\x7f\x27\x22\x41\x0b\x11\x2a\xd7\x43\x63\xeb\xda\x1e\xb9\xb7\x23\x48\x10\x94\x2a\xa4\x80\xc1\x81\x49\xb2\x87\x00\xbd\x22\x7d\x17\xd5\xd7\x41\xb6\xf7\xf7\xf8\xcb\x8f\x16\x11\x93\xab\xb0\xcb\x74\xf0\x51\x0c\xf8\x70\x3b\xf8\x99\x3e\x04\x43\x0d\x2c\xe3\x0a\x84\x8f\xc8\xc5\xd5\x35\xc5\x96\x21\xc5\xd6\xa6\x1e\xad\x56\x0a\xb7\xda\x1e\x23\xad\x11\x7f\xd3\xd5\xaa\x2d\xd8\x6f\x2d\x7a\xa2\xcf\x8b\xd7\x56\x2e\xe6\x44\xc9\x6c\x29\xd6\x60\xa6\x89\x96\x0e\xc8\xcb\x6e\xa7\xcd\x06\x1a\x38\xb9\xb6\x0f\xfb\x1a\x00\x8f\x00\xc6\x39\xcd\xc6\xfb\x7f\x00\xe8\x94\x9b\x90\x42\xb2\x80\x28\x99\xcf\xd3\x87\x30\xc1\x03\x60\x10\xe9\x10\x95\x28\xfe\x13\x85\xca\x5d\x64\x8a\x84\xb8\xe6\x7f\xa2\x30\x51\x29\xe9\xcf\x14\x24\x07\x54\x17\xa6\x6c\x8e\x4a\x84\x53\xcb\x87\xfe\x2c\x96\x75\x68\x38\x63\xef\x59\xe0\x14\xb7\xe9\xe2\x46\x58\x24\x77\xf1\xb8\xf4\xb5\xb8\x92\xff\x1b\x19\x03\xc9\x5d\x88\x0e\x4e\x46\x9a\xe7\x09\x53\xf5\x73\x17\x21\x80\xe7\x2d\x48\xaa\x8c\x3b\x52\x1f\x35\xa8\x53\x10\xa7\x05\x32\x5b\x60\x4a\x06\x43\x3c\x21\xdf\xef\x4d\x5e\x9a\xd2\xf7\x26\xdb\xdb\x68\xaa\x6c\x2e\xa1\xd8\x89\xf6\xab\x9f\xab\x8b\xdf\x62\xc1\xc6\xf2\x5a\xa9\x34\x7d\xbf\x8a\x90\x82\xa6\x6f\x8a\x17\x78\x84\x73\xcc\xf0\xd8\x92\xb8\x59\x69\xb1\xcd\xb5\x56\x23\x9f\xc5\xc2\xc8\x16\x63\x8e\xed\xe9\x08\x0c\xd0\x8f\x22\x6a\x1c\xa2\xb8\x06\xbe\xce\x71\x20\x6f\xb7\x3b\xd5\xa9\x08\x82\x27\x25\xdc\x09\xb6\x33\x9c\xd5\xa1\x65\xd6\x30\x93\x92\x71\x94\xc3\x09\x68\x06\xfe\xf1\x69\xf7\x38\xa6\xde\x71\x47\x6b\x67\x9d\xa7\x58\xb1\x9c\xb5\xe6\xac\xd6\x22\x89\xe8\x38\xa3\x4f\x15\xb3\x9b\xe8\x92\x1b\xa5\xec\x5a\xbc\x5d\x49\xab\x69\x7e\x4c\x7d\xc9\x79\x55\x98\x93\xed\xff\x4b\xc4\xff\xb6\x76\x95\x3f\x6d\x6a\x53\x8d\xf5\xb0\x2d\x30\xf2\x21\x5d\x75\x1b\x2a\x87\xd8\x2c\xba\x78\x42\x28\x1a\xa3\xb1\xb0\xa1\x36\x79\x85\x3f\x06\x36\xf3\x5f\x9e\x20\xb9\x69\x3f\xe1\x74\x6d\x19\xae\x0e\x93\x0e\xa2\xe2\x8b\x58\x13\x22\x6c\x07\x75\xa3\x6d\xcd\xcc\xa3\xff\x3e\x37\xff\x13\xf8\x40\xe3\x04\xe7\x6b\x20\x9b\xe4\x76\xe7\x35\xa5\x9b\x93\xd3\x70\x2c\x74\x18\x85\xda\x6e\x32\xfb\xc8\x22\x22\x79\x1d\x31\x83\x1e\x33\x28\x3d\x97\x0b\x7b\x59\x01\x47\x48\x34\x06\x1d\xdc\x8b\x92\x48\xdb\xf4\x1d\x2c\x44\xee\x4c\xce\x41\x48\x93\x09\xf9\xac\x8e\xa2\xcc\xc0\x7b\x79\x9d\x16\xce\xbe\x03\xf9\xb1\x05\xd4\xc4\x3e\x23\x33\xde\xda\x85\x8b\x6a\x45\x30\x94\xe3\x02\x95\xb5\x1d\xab\x87\xcd\x53\xd3\xda\xee\x66\xd0\x5d\xd6\xec\x6e\x5e\xaa\x18\x23\xd0\xdd\xfc\x89\xdd\x35\x4a\x72\xdb\xe0\xcc\x59\x53\xf8\x7d\x4d\x1a\x7d\xdd\x98\xb3\xb5\xa3\x0c\x27\xa8\xdc\x48\x1e\xf0\xbf\x5b\xd6\x71\x35\x16\x69\x5d\xc2\x5e\x13\x9b\x9b\x05\xe4\x02\x8f\xa2\x65\xbd\xca\x6a\x81\x25\xa6\x1c\x84\x56\x58\x70\xa2\xb8\x11\xc1\x1f\x14\x47\x82\xc5\x5a\x10\x8c\x31\xbb\x07\x3f\xe2\xbe\xe3\x58\x93\xf1\x18\xc8\xe3\xa9\xdc\xcc\x19\xe5\xa1\x66\xc6\x61\x1b\xf3\xed\x6d\xbc\xcc\x95\x5a\xa8\x44\xb8\x45\x02\x05\x79\xf7\x15\x83\x0e\xbf\x4d\x7e\x14\x87\x4d\x30\x0e\x95\x00\xfe\x05\x08\x45\x2c\x63\xa2\x92\x09\x6f\xf5\x21\xd6\x95\x90\x0b\x61\x9e\x88\xd1\x54\x7d\xa6\xad\xaf\x24\x03\xc8\x35\x48\x44\xe6\x99\xda\x97\x28\x34\xe6\xc1\x9c\xaf\xd5\x37\x16\xd3\x7c\x91\x6a\x09\xbe\x01\x25\xb7\x76\xc3\x15\x02\xda\xa2\x01\x96\x04\x12\xac\xa8\xf4\x84\xbd\xe1\xf9\x4c\x5f\x5a\xd4\x1c\x58\x95\x3d\x90\x44\x35\x86\x1c\xcf\x93\xa2\x60\xf7\x92\x10\x68\xd2\x05\xb4\x4c\x8b\x76\x2c\xf7\x6d\xdc\x90\x73\x65\x31\x68\x7f\xdb\xb3\xa3\xda\x72\x84\x33\x93\x43\x97\x6f\x32\xe9\x47\x43\xd5\x1b\xf9\x98\xc9\xa7\x5b\x63\xf2\xe9\x47\x73\xdf\x6c\xe4\xe3\xab\x55\xb6\x5a\xb1\x7d\xcd\xfc\xe6\x73\xb8\x1d\x93\x4d\xbd\x8c\x2b\x29\x95\x30\xa7\xa3\x14\x70\xa2\x21\xbd\xb3\x43\x91\x9b\x06\xda\x03\xdd\x34\xd1\x9d\xf0\x79\x7b\x23\x35\x08\x52\xbd\xf0\x5d\x84\x0b\x92\xd8\x0a\x0a\x53\xc1\xa2\xa0\xfc\x82\xe7\xf7\x6c\x4c\xc7\xc6\x40\xd0\xd4\xd5\xf6\xcd\x5c\xac\x5b\xab\x95\x17\x2a\x79\x39\xe1\xbd\x1e\x5f\xad\xb6\x76\xad\xa7\xb5\x9f\x5a\x32\x8b\x29\x52\x58\x06\x7a\xd4\x75\xd1\xf6\xde\xe5\x05\x79\x96\x45\xf5\x7a\x1a\x7b\x0a\xe7\x78\x81\x29\xc2\x85\x36\x4e\xe6\x10\x74\xd6\xb9\x61\xdb\x92\xb4\x8a\x27\xe3\xa4\x8f\x19\xf7\x51\x68\x7c\x6e\x81\xc9\x6d\x2e\xf8\x3e\x8d\x38\x9d\xe5\xf7\xb4\x4a\x0f\x54\x22\x27\x0a\xcc\x7a\xbd\xcc\xac\x90\x0d\x59\xb6\xfa\xf2\x9e\xbb\xe6\xab\x27\x80\x4b\xbc\x86\x64\xb6\x21\x0d\xaa\xf4\x48\x2b\x5a\xd3\xab\x26\xb4\x7d\x32\x02\xba\xa2\x41\x1e\x34\x71\xb8\x7a\x7f\x71\x71\x7e\x79\x7d\x75\x73\xfc\xe1\xf8\xec\xfa\xe6\xfc\xe2\xfa\xe4\xfc\xec\x8a\x08\xde\x6e\x48\x5e\x37\x2f\xe8\x8e\xf2\x85\x4c\xe0\x74\xd6\xcb\x64\x3c\x2e\xe2\x8c\x63\x35\x22\x45\xcc\x78\x59\x53\x62\xcb\x53\xb0\x59\x7a\x8b\xfb\x8f\x7f\xff\xf0\xf8\x19\xae\x81\xc9\x54\x80\x5e\x2a\x39\xea\x06\xb3\xab\x7d\x73\xe9\x7e\xf5\x04\x8a\x15\x13\xec\x31\x32\x0e\xbf\x04\x02\xff\xd5\xa9\x5c\xa7\xca\xe8\xd8\xdd\x08\xb8\x6c\x6a\xf1\xc5\x19\xd6\xdb\x5d\xe1\x3e\x26\x7a\x12\x31\xdb\xc0\x40\x52\x38\x76\x72\x97\x54\x72\xf3\xd5\x3d\xb6\xeb\xb3\x1d\x95\x66\x3e\xbf\x4d\xcd\x8e\xd5\xaa\xeb\xf5\x42\xaf\x31\x38\x81\x60\x9d\xaa\x0a\xff\x9a\x81\xa9\xdd\x73\x98\x1a\x2a\xd7\xd2\xf4\x47\x38\x09\xa0\x1d\xfc\x11\xd8\xc0\xbf\xd4\x16\xfb\x4f\xe0\x8d\xb5\x1b\x87\x2c\xf8\x26\xe3\x90\x5a\xbc\x03\x87\xcb\x60\x42\xa0\x36\xc3\x36\xc8\x1b\x3c\x1b\x69\x1f\x04\x17\xfe\xf5\x6f\x88\x80\xe0\x47\x6c\x36\xc1\x10\xda\xed\x4f\x52\xbe\xd6\xfe\x44\x5e\x4d\x18\x31\xc6\x23\xb0\x15\xa3\xdb\x05\x4b\x15\x38\xc7\x31\x34\xde\x7a\x53\x65\xa8\xc3\xa2\xdb\x3c\x17\x6a\x43\x75\xb5\xe8\x18\x8f\x09\x8b\x26\x16\x66\x2d\x0c\x5c\xc3\xaa\xc3\x01\xde\xf0\xc7\xd1\x9d\x24\x6b\x60\x7d\x69\x92\x69\x8c\x36\xc9\xbd\x06\x95\x1c\x9d\x7a\x3c\x85\x59\x3e\xa6\x29\xe0\x9f\xa7\x55\xd8\x73\xfd\xc1\x8b\x62\x95\xa2\x9c\x98\x1b\x21\x5c\xb9\x36\x9a\x5b\xe6\x70\x40\x91\xa5\x9a\xaf\x98\x61\xaf\x13\x39\x86\x08\xcd\x09\xae\x99\xde\x58\xc6\x7d\xea\x64\x22\x1d\xaf\xd2\x25\x34\x0a\xac\xb7\xff\x8a\xda\xa1\x34\xc0\x19\xaf\x35\xa4\xfc\xd3\xa6\xd1\x45\x6b\x8c\xf2\x4d\xb6\x41\xac\x19\xa2\xfc\xb1\x78\xe8\xf9\xc6\x10\xe5\x95\x89\xdf\x50\x71\xde\x52\xf1\x5a\xfa\xcc\x9e\x6e\x87\x9d\xaf\x6f\xbf\x9f\xac\x00\x73\xed\xe2\xe9\x21\xbc\xad\x5e\xb6\xd5\x80\xa1\x4b\x23\x33\xad\xe0\xc0\xe5\x1e\x95\xd5\xfd\x86\x29\xad\xda\xd4\x2a\xdb\xe6\x50\x90\x86\xd1\x13\xc2\x62\x03\x15\xd7\x04\xea\xb9\x16\x4d\xcf\x8d\x37\x5d\x09\x2f\xff\xec\xb0\xd1\xf5\xc8\xde\x80\xb8\x68\x37\x48\x0d\xa9\xd7\xed\x13\x10\x07\xfa\x2c\x18\x08\xf7\x0c\xad\xf0\x04\x3c\x9b\x86\x99\x3f\x0a\xf1\xfc\x58\x0a\xaf\xef\x7f\x7f\x60\xef\xbf\x60\xa0\x8d\xca\x70\xc4\x5b\x2d\x87\x8c\x6c\x6f\xc1\x5b\x0c\x6c\xad\x99\xeb\x78\xfd\x4d\x56\xa6\xbc\x04\x54\x4b\x6b\x9d\xdc\x72\x65\xbd\x01\xd4\x1c\x79\x63\x72\xc1\xae\xe1\xdd\x51\x25\xfe\x75\x7b\xc8\x41\x9a\xdd\x6b\xc5\x17\x84\x7b\xd0\xe4\xc4\xaa\xa5\x44\x4d\x75\xd4\x40\xcc\xcc\xf6\x6b\x6d\x20\xc4\x7f\x75\x44\x27\x71\xf5\xcc\x9c\x26\xc5\x25\xd0\x1f\xe5\x73\x17\x6a\x42\x0a\x51\x9c\xf6\xc3\x7a\x87\x6a\xbd\x01\xf2\x35\x5a\x70\x79\x02\x02\x37\xc2\x43\x00\xb6\xaa\x26\x53\x60\x16\x71\xb8\x6e\x24\x6a\x03\xa6\x60\xf6\x9f\x12\xa6\x54\x87\x90\x6e\x9f\x6d\x85\x89\x76\xe5\x47\x4c\xaf\x49\x5b\x15\x95\xa9\x69\xea\xc1\x93\x55\xdf\xfe\x28\x6a\x55\xf4\x7b\x25\xd7\x31\x1b\xbd\x4f\xfa\xb7\x5c\x76\x2c\x23\x54\xe1\x59\x8c\x19\x17\x0f\xce\xe0\x4b\x52\x4a\x1b\x48\x7a\xdd\x15\x49\xe1\x36\x41\x99\xde\xe2\x53\xa5\x9f\xe9\x15\x29\x1e\xb3\x72\x5b\x1f\x88\xb6\x5a\xbc\x67\xe6\x66\xf9\x11\xaa\x0d\x45\x62\xdb\x27\xcb\x14\xda\x68\x9c\x26\x89\x18\x34\x5b\x67\xca\x1c\x6e\x1e\x6a\x13\x70\x7a\xf3\x38\x98\xfe\x7f\xa2\x0f\x8d\x98\xa7\x4f\x9b\xca\x46\xdf\x1b\x9a\xe9\x5e\x8f\x0e\x4c\x25\x16\x08\x63\xc6\xff\xa8\x8d\x49\xb5\xe1\xad\xfb\x7e\x4d\x83\xfc\x90\x6b\x26\x12\x8c\x42\x3f\x17\x06\xe1\xdf\xc2\x00\x5a\xbf\x78\x75\x10\x5b\x7a\x76\xbf\x6e\x3c\xd5\x1c\xb5\xd3\x33\x70\xcc\x53\x00\x1e\x6e\x9f\xca\x6d\xaa\xf6\xd3\x23\x54\xac\xeb\x07\x0a\x74\xb1\xd6\x1a\xbd\xf2\x02\x6c\x57\x60\x89\x74\xa8\xf9\x5a\xfc\xb9\xb6\xfb\xb9\xe1\xa8\x2a\x49\xb3\x4a\xd2\xeb\x30\x43\xe0\x0e\x9c\x85\x5c\xd1\x3c\xab\x9d\x58\x72\x49\x0e\xb1\x46\x53\x06\x57\x3a\x35\x28\x31\xd7\xa3\xe3\x7b\x59\x78\x07\x37\xf7\x0f\x2b\xc5\x2b\x73\x33\xec\x61\x75\x70\xa1\xbb\x6b\x14\xfc\x55\x50\x26\x39\x1a\x3e\xaa\x6f\x5d\xc5\xde\x75\x8e\x37\x0a\x7a\xd2\x46\xae\xf2\xcf\x4e\xf8\xe4\x1e\xcb\x90\xd6\x26\x0f\x55\x00\x14\xdc\x44\x77\x6a\x73\xac\xd1\xaa\x9d\xb1\x0d\x31\x01\xd3\x2a\x82\x80\x6e\x41\x42\x6d\xba\x67\xfb\x6c\x62\xe9\xd1\xec\x1e\xce\x2c\x49\x81\x18\xdc\x23\x66\x1a\x45\x25\xcc\x15\xa4\xdd\x98\x8d\x84\xe4\xf4\xd4\xe0\x11\x86\x97\x22\xb9\x8b\xb3\x8a\x36\xd8\x83\x14\xf7\x64\x8c\xda\x72\x4c\xa7\x9f\x25\xf3\x38\x87\x57\x45\x3c\xd0\x6c\xd2\x10\x3b\xc8\xd5\x78\xc0\x86\x58\x03\x14\xed\x82\x8f\x2d\x25\xaf\x74\x3a\x39\x0f\x18\x0c\x4e\x2a\xaf\xf6\x59\xdc\x1e\xd8\x5a\x79\xb6\x2a\x37\x5b\x35\xf7\xce\x56\x0e\x95\xae\x96\xea\xd1\xa1\x15\xdd\xce\x46\xc7\x52\x5a\x5f\xff\x5a\xb5\x3a\x72\x8e\xab\x25\xea\x24\x8d\xd3\x76\x01\x4c\x5c\x61\xd1\x8a\xea\x3b\x37\xa9\xd1\xc3\x35\xa7\x28\x44\xf1\xe2\x15\xfc\xe4\x5b\xee\x45\xcc\xbc\x30\xd0\xcf\xe7\x13\x27\xd6\x7c\xe0\x55\xc8\x56\xba\xa7\x56\x85\xd8\x33\x92\x86\x3b\x6e\x9c\xa3\x7d\x32\xc5\xfd\x98\x8f\xb7\x92\x46\x56\x7c\x28\x64\xd6\x1b\x8e\xbf\x70\x7c\xcc\xf1\xd7\x6a\xa3\xce\x1f\x6d\xd4\x55\x15\x15\xe7\x2b\xd7\x60\x9b\x54\xde\x24\x6c\xaa\xeb\x47\x9b\xfe\xf5\xf1\xa6\x9f\x37\x9a\x6e\xcb\x7f\xe7\xe2\x6d\x12\xa8\xcb\x03\x84\xdc\x12\x11\x18\x54\x64\x49\xda\xeb\x05\x46\x6b\xe7\xa0\x64\xf7\x85\x91\x47\x34\xac\x3f\x0f\x3c\xa4\x9e\xa5\x82\xba\xf0\x9c\x62\xe2\x60\xdb\x87\x12\xbc\xa8\x8c\xc4\x52\x19\xd5\x3a\xa1\x2e\xdd\xf7\xc3\x75\x9a\x0f\x6a\xff\xcc\x93\x11\x8d\x85\x57\xd6\x21\xaf\xa2\x36\x54\xe3\x74\x59\x2c\x87\x4a\x53\x9c\xda\xcb\x13\xaf\x64\x98\x23\x0d\x73\x29\x27\x05\x73\x2f\xc4\xab\xbc\xe4\xb8\x0b\x8f\xf2\xa7\x36\xe6\xcf\x0f\x3c\x34\x6f\x2a\x70\xcf\xba\x73\xbe\x8f\xb0\xf6\x2b\x63\x6a\x55\xe7\xeb\xda\xda\x16\x69\xb5\xd2\x6a\x2d\x1d\x6b\x69\x71\x95\x60\x67\xbd\x9e\xfe\x95\x2b\x78\xaa\xb6\xd6\xe4\x65\x79\x1b\x5d\x1c\x5c\x5e\x9f\x1c\x9c\x5e\xf5\x7a\xe1\x0d\x27\xad\x07\x82\xa3\xa9\x9c\x7c\x91\x84\xf2\x98\x43\x20\x1e\x17\x50\xaf\x2c\xf1\x17\xde\xe8\x14\x9b\x84\xae\x7c\x25\xde\x36\x6b\x15\x34\xbe\x3e\x48\xc9\x79\xa4\x03\xca\x86\xc1\x61\x9e\x89\x84\x65\x94\x77\xbf\x24\x85\x02\x2c\xc9\x17\xd9\xb8\xfb\x65\x4a\xb3\xae\x1c\x00\x96\xdd\x75\x17\xf3\x6e\xd2\xbd\x67\xf4\x4b\xd1\x35\x83\x16\x75\xaf\xa7\xac\xe8\xb2\xa2\x3b\xcb\x0b\xd1\x4d\xd9\x27\x9a\x3e\x74\xc7\x0b\xda\x15\x79\x77\x96\x64\x8b\x24\x4d\x1f\x34\x3e\x87\x60\x89\x90\xc5\x24\x59\x17\xd0\x16\xa3\x0f\x8c\x7e\x89\xba\x57\x94\xc6\xdd\xa9\x10\xf3\xf8\xc5\x8b\x3b\x26\x22\x96\xbf\x38\xfe\xf9\x62\x9e\x1d\x04\x8e\x09\x6b\x0b\x2c\x2b\xd0\x6a\xd5\xfa\x81\xa3\xb2\xc4\xc7\xbc\x95\xed\xd0\x0e\x2b\x2f\x40\x21\x2b\x06\xc2\x39\xac\xb8\x70\x07\xde\x4b\x12\xdc\x04\xdb\x1c\x0b\xed\xdc\xf0\x22\x40\xa5\x12\x1a\x7e\xe2\x64\xc9\x26\x71\x75\xea\x2a\x0e\xd1\x2d\x66\xf6\xe1\x7b\x01\x32\x6b\x23\x0d\x12\xf2\x50\x44\xa5\xb6\xfc\x89\x5b\xe2\x29\x1b\x93\x28\xe6\x1f\x0c\x60\xbf\x90\x90\xdc\x2b\x69\x50\xe0\x14\x47\x51\xb4\x18\x92\xc4\x03\x17\xc7\x23\x52\x31\x7b\xc2\x53\xc2\x6a\xd6\x92\xac\x6a\x2d\x19\x17\x78\xd2\x16\xd8\x19\xb3\x8e\xb0\xd8\x84\x10\x58\x1f\xd0\x13\x67\xc9\x3c\x04\x77\x25\x23\x83\x90\xdc\xc6\x28\x91\x07\x0d\xea\x50\x88\x5f\x2e\xb4\xcd\x9e\x17\xb8\xdb\x2e\xe1\x5e\xaf\x52\xa8\x18\xf4\x87\xc4\x79\x32\xc8\x47\xcc\x41\xf2\xe3\x67\x61\xfb\x94\xbc\x62\xa1\xdc\x0e\x28\xe6\xab\x15\x5b\xad\x2e\x68\x19\xea\x8e\x41\x15\x01\xea\xf5\x74\xc7\xf4\xb3\x83\x5e\x08\x39\x69\x8b\xe5\x0d\x96\x80\x87\x34\x4c\x71\x8a\xe1\x01\x4f\xf0\x08\x4c\xe1\x1a\x3e\xdf\x53\xd4\x90\x5b\xc1\xfb\x14\xc9\x02\x0a\x7b\x96\x4f\xed\x2f\x7b\x78\xab\x42\xdb\x82\x1b\xf6\x5b\x7c\x5b\xf4\x1b\x15\x91\xde\x16\xe1\xbc\x8f\x64\xc6\x30\x8a\x22\xeb\xb6\x82\xca\xd2\xaf\x1f\xa7\x50\x1f\x1a\x1c\x50\x88\x96\x25\x17\xe6\x84\x86\xdc\x2d\x3c\xce\x93\x87\xb8\xd5\x79\xba\x3d\xd8\xad\x9a\xdd\xe7\x2e\xfb\xdf\xdb\x97\xfd\xa4\x75\xc9\x93\x13\xd1\x79\xb4\x44\xde\x5a\xa0\xe4\xdb\xda\x4a\x6c\xf1\x54\xc9\x5a\x1c\x53\xb4\x5b\x49\x63\x5e\x33\xeb\x7b\x53\x37\xd6\xd5\x94\x9f\xad\x56\x41\x00\x9e\x6b\x75\x2f\xcf\xb8\x21\x93\x61\x72\x65\x5a\x7b\xdc\x28\x40\xaf\x76\x76\xf7\x67\xb2\x47\xcc\xf3\xa6\x43\xb1\xe2\x3a\x3c\x57\x1e\x6f\x4c\xde\x88\xb0\xad\xfb\xd3\xa4\x98\xc6\xdf\x04\x4e\xf3\xbb\xe7\xce\xd0\xdb\xf6\x19\x9a\x2d\x9e\x3a\xa0\x8f\x7a\x4b\x01\x56\xe3\x3b\x7f\xf1\x05\x9f\x17\x94\x3f\xec\xcc\xc1\xaf\x23\x78\x6e\x8b\x3f\xb4\xb7\x98\xd3\x64\x9c\x67\xe9\x43\x6b\xb3\xdb\x16\xfa\xe0\x9a\x0e\x57\x2b\x5a\x86\xcd\x3e\x55\xf4\xbc\x9f\x85\xd7\xf4\x45\x06\xf8\xda\xeb\xdb\x3c\xa1\x2d\xe5\x79\x81\x86\x4d\x31\x29\x2d\x8a\xe7\xf6\xfc\x75\x7b\xcf\x83\x1d\x39\xff\x81\x5c\x00\xc1\x0e\x4d\x46\xd3\x1d\x96\x05\x6d\x7b\x1b\x40\x33\x45\x5b\x7f\x65\x21\x2c\x9b\x2f\xc4\x8e\x9c\xbb\x67\x4f\xc9\xc5\xba\x86\x65\x39\x9f\x41\xe0\xbb\x1d\x15\xec\xf2\xb9\x05\x1f\xae\x2b\x18\x6c\xcc\x76\x80\x8a\xad\xed\xea\xa7\xb5\x5d\xbd\xa3\x62\x47\x2b\x62\x77\xee\x13\x1e\xc4\x23\xb9\xe7\xb4\xb6\xf4\x43\xc2\x71\xb0\x33\xcb\x17\x99\xa8\xb7\xd7\x08\x26\xd4\x8d\xb6\x85\xb8\x30\x7b\x3b\xa6\x2d\x5a\x3f\xe3\x02\xdf\x70\x2e\x53\xf7\xdd\xa4\x24\x79\xa7\x8f\x19\x51\x4f\x4f\xbf\xfd\xe6\x7f\xd3\x6d\xd3\xa7\x3c\x63\x60\xdc\x31\x83\xf1\xd3\x81\x26\x5a\xf9\x16\x79\xd3\xf7\x95\xdc\xde\xa1\x4f\x40\x8c\xd8\x8c\x61\xbe\x6f\x74\x8b\x59\xe1\xcd\x7d\x30\x4b\x58\x16\xa0\xb8\x8d\x86\xd3\x2f\xdd\x7b\x0e\xb7\xdf\x89\xbc\x15\x78\xf2\x56\x10\x3b\xdb\x65\x92\x14\x05\xe5\x62\xc7\xb8\x94\xec\x58\xb6\x7c\x67\x0a\xab\x6d\xc7\xc6\x57\x89\xdf\x09\xd8\x03\x3b\x34\xdd\x91\x73\x18\xc4\x07\xc2\x28\x12\x2e\xd7\xc9\xce\x94\x3b\x49\x41\x06\xea\xce\x32\xd4\x32\xd9\xdb\xdf\xaf\xf3\xb7\xf0\xa9\x19\x8e\xe8\x76\xc1\x52\x71\x92\xa9\xc5\x5e\x90\x4f\xbc\x86\x7f\x72\x64\x2f\xee\x87\xc9\x68\xaa\x0a\xb0\x99\xdb\x52\xc9\x75\x4a\xb4\x39\x9d\xea\xd4\x9a\x8f\xad\x46\x34\xba\x39\xc6\x3e\xb3\x20\xda\x27\x26\x5e\x6a\x35\x09\x50\xef\x9f\x05\x06\x2d\x89\xf2\xa7\xc0\xf5\xcf\x85\x1a\x13\x3f\x4d\x59\x2a\xf6\xdc\x21\xa8\xd4\xa3\x42\xd4\xbe\xab\xf1\x82\x54\xb5\xcb\x15\x57\x57\x2a\xc8\xc4\x69\x91\xa7\xf7\x10\x75\x62\x7d\x7e\xbf\x16\x3d\x43\xc6\x0d\x38\xf3\xdf\x1a\x4d\x44\xb5\x20\x37\x7a\x4a\x9d\xe4\x56\xaf\x52\xc1\x6d\x9a\x87\xed\x6d\x9c\x95\xa6\x8d\x35\xb7\x3f\xdd\x92\x01\x1d\xea\xa6\xab\x25\xf0\xc4\x16\xdf\x34\xf2\xf8\x97\xe6\x4a\x08\x11\xdd\xb9\xac\xd2\x72\xa6\x5b\xde\xba\x42\xb6\xb7\x31\xab\x08\x31\x54\x65\xd6\x68\xb7\x82\x31\xbc\x66\xfc\x2a\x89\xcd\xec\x5c\x24\x5c\xb0\x24\xb5\xd7\x5b\xff\x7e\xea\x75\xf9\xa6\x99\xba\xd3\x52\x1d\xaf\x4a\x5a\xe4\x24\xb0\x54\x1b\xeb\x6a\xcf\x2e\xcf\x46\x89\xb4\x60\xdd\x1b\x09\xa5\xdb\xa0\x55\xec\x38\x4f\x93\x01\xba\xe8\xca\x84\x68\xf8\xed\x9d\xdd\xc6\x2e\xd7\x61\x8d\x04\x5c\x58\x9a\x33\xe5\x77\xb5\xba\xfd\x07\x74\xb8\x4e\xb6\x74\x9f\xf0\xa5\x0b\x0b\x62\x0c\x5d\x84\xb6\x36\xcb\xe1\x1e\x78\x21\x69\xb2\xca\x8c\x70\x51\x33\x62\x51\x33\x1d\x07\xdb\x39\x4e\xd0\x6a\xb5\xee\x63\xd3\xb3\xde\x61\x81\xd6\x91\x54\xa9\x12\x73\x6c\x11\xa2\xa4\xcd\x92\x38\xda\x1f\x11\x2b\x54\xaf\xb4\x31\x4c\x19\x16\x68\xdf\x60\x14\xab\x11\x28\xac\x35\x8b\xec\xf5\x77\xd6\xb5\x3d\x23\xcb\x72\x6f\xad\x0d\x44\xa6\x4c\xa3\x8d\x87\x43\x88\xb4\xc9\x72\x52\x14\xf9\x88\x25\x82\xfa\x96\x01\x99\xc6\x2f\xec\xfb\x1c\xdc\x74\xcd\xb5\x41\x91\xaa\x96\xd5\xa7\x5b\x65\x46\x9b\x91\x1b\x0e\xf1\xdb\xbc\x4d\x05\x16\x80\x91\xce\xe4\xf6\xd3\xc9\x6c\x2e\x8b\x60\xa8\x6c\xdb\x17\x2d\x2b\xc1\x52\xde\xca\x5a\x00\x4d\x47\xa3\x15\x59\x65\x0e\xad\xb1\x7f\xb0\x4d\xab\x22\x4a\xe3\x5a\x45\xde\xf1\x90\x69\x91\x59\xad\xe9\xbf\x08\x88\x0b\x9a\xb7\x1c\x0d\xc8\x9e\xfb\xbc\xbc\x81\x88\x8b\x72\x05\xbe\xc9\xf9\x99\x91\x0b\x7a\x62\x15\xcc\x89\x91\x1a\x12\xea\x6e\x37\x71\x6c\x45\x38\x10\xda\x2c\xd3\xc6\x21\x2a\x42\x65\xb6\xfd\x3d\xc2\xdc\x3e\xf6\x71\x86\x10\x36\xf1\xc5\x9c\xf4\x91\x97\xe5\x23\xc4\xd9\xb0\x1c\x98\x11\x8a\x73\x3b\x52\xfe\xc6\x49\x14\x12\x68\x8b\xb0\x8c\x6b\x90\x81\xd5\x4a\x29\x7d\xa0\x52\x33\xe8\x56\xda\x59\x21\xb3\x66\x00\xcd\x00\x1d\x6a\xe0\x98\x30\xc7\x0c\x5f\xf0\x30\x31\xbb\xd1\x0f\x0a\x57\x54\xc8\x90\xd2\xa4\xc9\xd7\xee\x14\xd9\x97\x5b\x43\x49\x09\xc3\x1c\xc5\xde\x17\x6d\xde\xbc\x91\x45\xd0\x71\xda\x2a\x2b\x20\x35\x75\xa6\x1d\xb7\xa0\xec\xee\x35\x95\x81\x34\xc7\xab\x59\x09\xb8\x16\x8f\x05\xc2\x05\x5c\xbf\x46\x5b\x02\x7c\x20\xd9\x43\x3c\xaa\x28\x88\x6a\x1d\xd5\x76\x22\xd7\xc7\xef\x2e\x4e\x0f\xae\x8f\x6f\xce\xcf\x4e\x7f\xbd\xf9\xf1\xf4\xe4\xdd\xbb\xe3\xcb\x9b\xc3\xf3\x77\x17\xe7\x67\xc7\x67\xd7\x57\xbd\x5e\x38\x02\xce\xe7\x5a\x84\x0c\x73\xe5\xe1\xf8\x35\x62\x85\xb1\x1e\x3c\xcf\x52\x07\xce\x86\x42\xaf\x0a\xbd\xdc\x1b\x25\x60\xdb\x77\x17\x48\x18\xe6\x7a\x4c\x1a\xb9\xf1\x94\x5c\xf3\x70\xec\xcf\xfd\xb4\xd7\xf3\xa0\xa7\x08\x21\x53\x17\xf3\x6d\x69\x64\xf5\xf3\x92\x4c\x3b\x23\x32\xb5\xc2\x7d\x60\x6c\x8f\x45\x38\x0f\x73\x84\xc7\x26\x32\xc3\x17\xd9\x24\x3f\xf4\x30\x7c\x76\x87\xc0\x3e\x8f\x73\x23\xdd\xbc\x89\xe6\x9c\xdd\x27\x82\x7d\xa3\xbf\xb5\x89\xab\x77\xb4\x1c\xf7\x37\x24\xe7\xaf\x2c\xab\xac\xd3\xc8\x0e\xc3\x5b\x5a\xad\x73\xb5\xca\x7d\x62\xe2\x57\xe3\x44\xd7\xae\x70\x18\xc1\x45\x23\x90\x73\x7d\x25\xca\x73\x30\xc3\x23\x84\x47\x9e\xe2\xe0\x77\xde\x66\x10\x0d\x3c\xdd\x80\x0e\xfa\x43\x23\x4a\x0c\xfe\x29\x09\x19\xa6\x83\xdd\xe1\x10\xe4\xf6\x47\x9c\x0c\x86\x4e\xad\x73\xc6\x35\x30\xb3\x25\x6f\xcc\xf0\x83\xbc\xce\x4d\x4a\xe2\x16\xcd\xa8\x48\x6c\x8c\xad\x0a\x57\xb9\x45\x48\xbe\x1f\xf6\x31\x8f\x54\x54\x0a\x6f\x29\xe5\x78\x60\x43\xca\x0e\x86\xb1\xc0\xbf\x2b\x63\x16\x7d\x01\x7b\x7d\x7a\x7e\xf8\xf3\xd5\x10\xc5\x3c\x7a\x7f\xf6\xf6\xe0\xec\xe8\xf4\xf8\xc8\x75\xf5\xc4\x36\x11\xe7\x48\xbb\x44\xe5\x9b\x1a\x99\x6f\x6e\x64\xb2\xa6\x91\xe0\x4a\xac\x1a\xc6\xa0\x2d\x67\xe7\x67\xc7\x25\x8d\x6e\xe8\xd7\x39\xe5\x4c\xee\xd9\x24\x7d\x97\x8c\x78\x5e\x90\x23\xae\x6f\x31\xa7\xeb\x6e\x31\x10\xc5\xba\x62\x4f\xa2\x54\xbf\xa2\x84\x98\x67\x61\xe5\x52\x7d\xaa\xad\xde\x65\xa6\x46\x96\x56\xbc\x0b\xdf\x4e\xc6\x30\x4a\xeb\x12\xc8\x6b\x89\x85\xae\x69\xb1\xc0\xb2\x88\x0f\x06\xef\x81\xe7\xb9\x35\xa9\xe0\x8b\x4c\xb0\x99\xbd\xda\xb0\x31\x01\xf7\xf8\x3b\x2a\x3e\x30\xfa\xe5\x64\x8c\x2c\x30\xbd\x8e\xc6\xa1\x4f\x2e\xad\x30\xd5\x01\x11\xc8\xd6\xae\x49\x24\xa9\x1d\x71\xae\xe7\xb8\x20\xad\x28\x7a\x99\x8f\xa2\x17\x29\xb6\x54\x07\xaa\xd3\x4c\x8d\x2c\xe8\x27\x26\xde\x25\x2c\x53\xc8\x33\x0c\xa7\xa1\x12\x23\x58\x0b\xfa\x1c\x67\xf4\xab\xb8\x62\xb7\x29\xcb\xee\x14\x67\x02\x86\xa1\xa6\x3e\xc5\x6a\xa2\xb0\x40\x38\x41\x9d\x71\xbe\xa4\x64\xa1\xa3\x89\x94\x5f\xa6\xb2\xc6\x2d\xaa\x02\x98\x74\x14\x59\xf3\x7b\xaa\x05\xf0\x9d\x7a\xc7\xc6\x11\xa7\xea\x31\x5c\x26\xe9\x97\xe4\xa1\xb8\xa4\x00\x55\x2f\xc9\x0c\x84\xd6\x2f\x59\xd1\x12\x1d\x06\x86\x9d\x10\x5a\x5a\xa6\x4c\x5b\xa5\x40\x78\x15\x8a\xf5\x54\xc4\x0a\x49\xb6\xd4\xb0\x0d\xf5\x81\xee\x57\xe7\xcd\x9f\x0e\xa8\xc0\xd9\x97\xb4\x4c\x98\xee\x85\x7e\xe5\x74\x9a\x1a\xe0\x93\xf9\x90\xec\x72\xd0\x41\x53\x2f\xbf\x8c\x4d\x00\x0d\x6a\x1c\x63\xbf\x55\x09\xcd\x7b\x4f\x73\xfb\x8d\x5b\xa6\x86\xa2\xce\x37\x0e\x92\xda\x11\x0d\x05\xde\xf5\x9c\x6a\x5e\x73\x79\x05\x91\x39\xde\x72\x62\x6f\x1b\x1f\x38\xe9\x77\x2a\xd1\x3d\xf2\x2c\x0c\x00\x33\x3e\xc0\x61\x13\xc9\xaa\x4b\x49\x7f\x8f\xbe\xfc\x66\xb0\xd4\xf6\xe8\xf6\x36\xfa\xc6\x07\x74\x18\xdd\x98\xd8\x1c\x6e\x7a\x42\x85\xbb\x5c\x2f\x9e\x66\xe3\xa7\x17\xce\x26\xe1\x96\xae\x80\x15\x1f\x64\xc1\x21\x02\xde\xe8\x03\x7f\xa5\x8f\xea\xcb\x63\x6d\xce\x79\x7a\x7e\x7e\x71\x73\x7a\xf2\xee\xe4\x5a\xeb\x11\x65\xf7\xb0\xca\xed\x58\x73\x2f\x02\x02\xcb\xe0\x70\xf0\x82\x09\x74\x59\xa6\x5b\x0f\x11\x65\xa8\xa0\x23\x41\xc7\x4e\xd9\xf7\x81\x6f\x6f\x57\x7b\x04\xca\x37\x58\x06\xaf\x39\x2a\xa1\x46\xaf\x6b\xee\x78\x7e\xcb\x8d\xc5\xd1\x5b\x6e\xe8\x6d\x47\xcf\xc5\xba\x12\x25\xa3\x0b\x83\xa8\xe9\xe3\xe7\x26\xbd\xb1\xf8\x32\x68\x69\xd9\xa8\xa4\xd7\x0b\x13\xb2\xb5\xeb\x59\xea\x17\xbd\x5e\x58\x90\x51\x34\x4a\x19\xcd\xc4\xeb\x05\x4b\xc7\xd4\x5a\x3f\xb2\xcc\x98\xaa\xda\xe5\x68\x49\x0c\x98\x3c\x5e\xd2\x7b\x56\xc8\xb7\xe6\x66\x79\xd3\xa4\x45\x37\x72\x3f\x18\x8a\x43\x98\x25\x64\x37\x92\x0c\x6b\xc3\xcd\x07\xe3\x9a\x07\xf9\x59\x46\xc7\x6f\x72\x7e\x74\xfe\xce\xc0\xd3\xdc\xa8\x98\xd9\x83\xa1\x79\x04\xcf\xa8\xf1\x65\xf5\xed\xad\x6a\x3d\x29\x7c\xd6\xf3\x46\x6f\xd1\x4b\x7d\x92\x01\x4b\x71\x09\x77\xa2\xda\xdd\x41\xc3\xc9\x67\x34\x4c\x11\xd6\x34\x48\x05\x57\xfc\x0a\xa6\xdd\x3c\xfa\x89\x19\x54\x68\x14\x2e\x50\x15\xf4\x1a\xe0\x5f\xb2\x94\x65\xb4\x88\x05\xbe\x4d\xf3\xd1\xa7\xc2\x00\x56\x27\xe3\xf1\x3b\x15\xe2\x32\x3c\xe3\xf2\x40\xf6\x5e\x9c\x70\xe4\x85\x15\xeb\xef\x65\x2f\x8f\xec\x3a\xcf\xb6\xb7\x21\x98\xf5\x11\x1f\x64\x43\x14\x82\xef\x5e\x89\xc2\x71\x34\x83\xf3\x51\x51\xcb\xa9\x32\x4b\x12\x2d\x3d\xea\x54\x46\x40\x51\xf4\x9f\x98\xb8\x54\xcf\x28\x5c\xaa\x60\xb0\xe7\x73\x1d\xae\xa2\x88\x33\x1d\xd1\x04\xb8\xbf\x51\x74\x74\xfe\xee\x9a\x53\x7a\x68\xd6\x96\xf2\x34\x54\x9c\x60\x74\x96\x8f\x69\x7b\x02\xed\x19\xe4\x97\x6b\x8a\x53\xd1\x83\x8a\x50\xa0\x12\x4f\xf1\x18\xa7\xeb\xe2\xe7\xf8\x24\xdb\xf4\x60\x3d\x24\xb4\x0e\x6b\x7b\x0e\xc7\xb1\x3c\x32\xfd\x48\xe8\xb5\xe8\x8b\x9a\x3a\x1c\x5c\x5c\x9c\x9e\x1c\x1e\x5c\x9f\x9c\x9f\x39\xa6\xfe\xe3\xe5\xc1\xc5\xc5\xf1\xa5\xb9\xed\xd6\x71\xbb\x12\x8a\x97\xbe\x83\x55\xbf\xea\x32\xe5\xb9\x3c\xf5\x4b\xa4\x03\xe8\x56\xfd\x9b\x0a\xf0\x6f\xba\x4e\xee\x00\x63\xc2\xc9\x2b\xc6\xec\x3e\xd8\x80\x36\xfc\x3c\x58\xdc\x8f\xaa\x15\x8f\xa3\xe3\x72\x87\x16\x6f\x1c\xbf\x8d\xb5\x78\x15\x8b\x23\x50\x3a\x10\x1c\x28\x30\x0e\xb9\x75\x9b\x80\x1d\x01\x93\xf4\xbb\x8f\x93\xe8\x6e\xc1\xc6\x26\x1e\x69\x59\x56\x34\xa3\x34\xa4\xca\x6c\x1d\x67\x15\xf5\xa0\xfb\x80\xca\xd0\x2e\x5d\x35\xad\x95\xab\x73\xc5\x86\x4c\x72\xf7\x7a\xee\xaf\x73\x5f\x4e\x21\x8b\xfc\x91\x3e\xb9\x20\x0e\x20\xef\x6d\xa9\x3c\xa3\x1b\xad\x23\x13\xb8\xb1\x28\x91\x36\x0e\x3c\xe5\x8a\x3e\xb7\xda\xa9\x21\x8d\xe4\xf8\x86\x1b\x8b\x46\x53\x04\xae\xd0\x9a\x16\xb2\x89\x41\x7f\x51\x25\x73\x76\x77\xc3\x26\x90\xa4\x50\x85\xfd\xd3\x3c\x91\x66\x32\xdb\x4f\x5f\x23\xab\xaa\x84\xe7\xad\xb1\x9b\x9d\x26\x95\x06\xac\xb4\xd2\x41\x7a\xc9\xec\x1a\x10\xad\x25\x71\xb3\xc8\x61\xa9\x08\x77\x08\x8e\xa2\x37\x42\x1e\x2b\x30\xce\xd7\xb9\x8d\xdb\xc5\xb2\x3b\x13\xec\x66\x94\xd2\x24\x5b\xcc\x65\xd7\x14\x1f\xd7\x7a\x46\xf4\x7a\x34\x12\x9c\xdd\xdd\x51\x1e\x06\x63\x36\xd6\x22\x35\xbd\x9e\x03\x54\x36\x8a\x71\xee\xb3\xee\xb8\x42\xce\x9a\xce\x3b\x71\x8c\x19\xa8\x7a\xb2\x28\x53\x3b\x3b\x7b\x56\xc2\x35\xe0\xc3\x8e\xa4\xbb\xaa\xe8\x5e\x2f\xcc\x3c\x96\x42\x18\x9e\x8b\xe3\x5d\xb9\x13\x1c\xcb\x59\xab\x7e\xb5\x0a\x1b\xe7\x67\xdf\x2c\x8b\x94\x26\xfc\x20\x4d\xe1\xb4\x0b\x15\x76\x5a\x3d\xba\x32\x1d\x1c\x0d\xff\xa6\xa8\xc9\x55\x5c\x08\xba\x81\x32\xdf\x51\x71\x50\x3b\x50\xe4\xa5\xa2\x96\xbf\xf4\x57\xac\xe9\x00\x5e\xaa\x21\xb6\x31\x0d\x5d\xc8\x48\x80\x6e\xd0\x43\x6f\x25\xdb\xf8\x9b\x4e\x20\x4c\x10\x54\xaf\xd4\xc2\xe3\x57\xc2\x4a\x7d\x1e\xe8\x82\xae\x4f\x60\xd3\x85\x98\xe3\x0a\x5f\x01\x72\x6b\xd9\x14\xb8\xaf\x18\x93\x1f\xdc\xc6\xa1\x73\xb8\x0e\xc1\x6d\xab\x8a\x4c\x56\x01\x26\x33\x8a\x0e\xb9\x62\x98\xbb\x4b\xec\xeb\x98\x9d\x0c\xc5\xfc\x15\xa1\xab\x15\x8b\xcc\x16\x2e\x5b\x38\x2d\xb0\xf5\x30\x61\x11\xc1\x0f\x63\x1c\x1d\xbe\xbf\xbc\x3c\x56\xbe\x6d\xa8\x34\x57\x2a\x6b\xa4\x44\x15\x83\xb1\x97\x99\xc6\x38\xc3\x10\x88\x2b\x0f\xd2\x47\x73\x53\x60\xa8\x63\x17\x6d\x2e\x2f\x0a\xa0\x51\x68\xec\x81\x5e\xef\x3d\xd7\x61\xbb\xd6\x0e\xbc\xb7\xcd\x5a\x18\x49\xb3\x05\x5a\x79\x4c\x85\xf7\x40\xc9\xd6\x6e\x47\xf0\x87\x65\x63\x82\x43\x84\x29\xd9\xea\x97\x13\x96\x25\x69\xfa\xb0\xa4\x76\xff\x3c\x6b\xac\x36\xf3\xb9\x65\x59\xd6\xf7\x9e\x77\x23\xf1\xa9\x84\x02\x14\xa4\x3e\x84\xe0\x92\x0e\x84\x77\xb9\x28\x9b\x7c\xab\x09\x9d\xdc\xaf\xb3\xb8\xb4\x65\x8c\xdb\xa8\xf8\xb2\x72\x39\x30\x29\xce\x41\xff\xac\xc6\x2a\x80\xa2\xed\xfe\x30\x59\x51\xe9\xae\x4c\xd5\xdd\xec\xd1\xa3\xf6\x79\x07\x37\x62\x18\x53\x66\x61\x6f\x2a\x63\xda\x72\x39\x80\x25\xe2\x35\x5b\x8f\xb9\x69\xc1\x6a\xf5\xc8\xfe\x2d\x69\xa4\xa6\x87\x72\xf2\xd9\x48\x84\x3e\x3a\x5f\x96\xcf\x7c\xa9\x03\xb4\x8e\xaa\x71\x6f\x34\xa2\x8c\x72\x52\x8c\x39\xf6\x4f\xd4\x38\xc3\x95\xd3\x2a\xce\xb1\x3e\x57\xe3\xa4\x06\xe5\x2a\x9b\x17\x86\x7d\x0c\xb6\x79\xe7\xe0\x7e\x01\x67\x11\x88\x74\x72\xbc\xb5\x8b\x13\x85\x67\xe9\x48\x64\x23\xa4\xde\x01\x44\x6f\x94\xf7\xc8\xdf\x94\x5f\x81\x4a\xfb\x5b\x97\x29\xbb\x55\x0d\xbc\xd8\x65\x59\x37\xcb\xb3\x1d\xe6\x98\xf8\xae\xe7\x44\x58\x74\xc3\x62\x31\x9a\x76\x93\xa2\xfb\x26\x29\xc4\xeb\x3c\x17\x28\x0a\x60\x84\x4e\x32\xca\x85\x1d\xa6\x8f\x66\x98\xbe\xfb\x3f\x67\x98\xfa\xcd\x61\xb2\x7c\xac\xe5\x13\xf4\x47\x04\xf8\xb2\xb2\x57\x76\x1c\x6c\xdf\xbe\xe3\x0a\x3b\x96\x93\xa5\xc2\x11\xf8\xb5\x09\x83\xb0\x31\x9e\x46\xff\x2f\x85\x41\xd8\xfd\x13\x30\x08\xf8\x67\x4e\x06\xc3\xbd\xb0\x8f\x53\x75\xa1\x79\xc3\x29\xfd\x46\x51\xf8\x33\x37\x37\xfb\x5f\xdc\x04\x7e\x15\xcb\xb5\x8c\xfc\xaf\xbc\xf4\xfa\x58\xb5\xf8\xa9\x19\xec\x44\xb3\x64\x6e\x59\x05\x67\x4a\xf3\xb3\x41\x32\x5e\xde\x80\xa9\xce\xcd\x4d\xdc\x6a\xda\x22\x39\xe5\x87\xb9\x09\xdc\xa5\x11\x00\xc0\xf2\x0a\x95\x55\x98\x12\x2b\xee\xae\x47\x66\xc9\x8d\x59\x79\x62\x42\xdd\x35\x8a\xc2\xa9\x8d\x59\x16\x2e\x47\x6a\xe8\x99\x33\x45\x93\x0d\x28\x9c\xcb\x0a\x5e\x10\xed\x76\xaa\xbe\x38\x8f\xf5\xb4\xfc\xf3\xb1\xcb\x16\xeb\xe2\x77\x04\x60\x76\xb6\xc9\x61\xde\x0b\xe1\x91\x6c\xf2\x95\x4f\x75\xec\x9e\xc7\x7d\xe0\x17\x08\x21\xbc\x68\x0f\x7a\x65\xab\xe5\x4f\x0e\x74\xa5\xc3\x27\xfd\x45\x31\x3d\xfe\xbe\xe0\x51\xce\x49\xd5\xc1\xa0\xd3\xc8\x74\x18\xab\x55\x83\x15\xc0\xec\x53\x5c\xcb\x9f\x14\xcd\xed\xef\x0d\x59\xb5\x0e\x14\xc0\x74\x4a\xc9\x77\x7f\xe2\x24\x8f\xb4\xd3\x90\x22\x04\xe1\x92\x15\x87\x3a\x1c\x46\x0c\xa3\x21\xd7\xe5\x42\xd0\x31\xd2\xbb\xa7\x22\x43\xd5\xf2\x85\x4a\x78\x0d\x70\x7b\x7c\x98\xd3\x12\xa1\x12\x75\xae\x78\x68\xd5\x80\x94\xbc\x02\x15\x3b\xdc\xb6\x8c\x2a\x50\x12\xb1\xfa\x0e\x28\xf1\x4f\x1c\xe1\x9f\xb8\x0d\xcb\x00\x32\xf9\xe0\x9f\x20\x1f\x78\x61\xd3\xbd\x50\x5b\x04\xe8\xf4\xbf\x38\xf9\x39\x6c\x0b\x14\xf7\x10\xa5\xf9\x48\xe3\xaf\xda\xa0\xcd\x08\xff\x9b\x93\x83\x70\xc9\xc6\x71\x70\x79\x3a\xd9\x9d\xd3\xe3\x49\xa0\xe4\x6a\xf1\x3f\x96\x41\x01\x01\xb8\x8b\x20\x1e\x04\x3d\xad\xea\x0b\x86\x38\x00\x01\x02\x1c\x95\x41\x3c\x18\xec\xfe\x37\xde\x05\xe5\xe9\x70\x88\x83\x69\x52\x1c\xdf\x27\x69\x10\x4f\x92\xb4\xa0\x38\x58\xcc\xef\x13\x2e\x93\x0d\xcb\x7f\xe0\x19\x15\x49\xec\xeb\xde\x83\x79\x32\xfa\x94\xdc\xd1\xe2\x85\xee\xd2\x8e\x19\x8d\xe2\xc5\x5d\xca\x66\x33\xca\x5f\xa4\xec\xf6\x85\xd9\xdf\x85\xeb\x73\x34\xbd\x2d\x82\xb2\x44\x98\x66\xa6\x03\xc7\x5f\xb3\x6f\xc7\x3f\x9c\x5f\xb5\x77\xc0\xcc\x66\x80\x83\x6b\xfa\x55\xbc\x81\xd0\x26\x38\xf8\xa7\x21\xc4\x01\x0e\x7a\xf2\x90\x2a\x9a\x3d\xfc\x4f\x3c\xf8\xe1\xbf\xf0\xf7\x43\x3c\x18\xfc\xd0\xc7\x83\x1f\xfe\x13\xef\x0e\xf1\xc0\x8b\x97\x32\x54\xfd\xc7\xd5\xcf\x5e\x08\x95\xa1\x19\x20\x18\xf9\xc1\x20\x70\xa3\x39\x58\xb6\xd6\xd6\x87\xda\xbe\xc7\x7d\x3c\x08\xdc\x52\x0c\x86\x2d\x65\xe0\x80\xa6\x05\x6d\x2b\xea\xbf\xb1\x2c\x42\xb6\x66\xb0\xfb\x5f\xf8\x3f\x86\xf2\x47\xf0\x4f\xed\xd0\xe1\xf7\xdd\xab\x4c\x9d\x03\x81\x4c\xfb\xc3\xf7\xf8\x07\x53\xa1\x9c\x5c\xb0\xc7\xa6\x82\xea\x09\xc5\xed\xd5\x7d\xff\x37\x55\x37\x1c\x36\x5e\xee\xe2\xef\xcd\xfb\xb5\x0b\x2f\x60\x93\x00\xfb\xa7\x4a\x90\x52\x11\xfc\x45\xcb\x11\x36\x9e\x5d\x8a\xc2\x2e\xc5\xfb\x83\xed\xc3\xfe\xc7\x31\x6d\x5d\x8a\xcd\x1d\x54\x59\x38\xe6\x77\x5f\xcf\xb4\xb7\x72\x1e\xe9\xa9\x31\xbb\xf5\xbb\xfb\x17\x75\x54\x95\x6c\x7a\x6a\xc0\x1c\xb3\x0d\x68\xb7\x37\x1e\x4b\x6d\x15\xb0\x86\xbd\xac\x20\xb4\x35\xe2\xdc\x75\x3c\x63\x45\x4e\x27\x20\xcf\x9b\xf2\x70\xa9\x51\x05\xe2\xe5\x2c\x61\x99\x71\x7c\xc4\xda\xd3\x7d\x09\x85\xc5\x5c\x12\xd4\xdc\x78\x2a\x6a\x37\x6d\x65\x29\xac\xf9\x89\x1d\x91\xcf\x77\x52\x7a\x4f\xd3\xc0\xf7\xd5\xd6\x39\x94\xa7\xae\xd1\x23\x5a\x06\x5d\x76\x1a\xda\xa3\xc1\x40\x38\x9d\xe8\x18\xa3\xd5\x02\xab\x15\xb6\x7b\x85\xb7\xd4\x54\x96\xfa\xd6\xa0\x4f\x1f\xcf\x19\xb7\x22\xd8\xe6\x59\xed\x7a\xc1\x9d\x94\x79\x1f\xd0\x04\x0c\x3f\x55\x17\xaa\x53\xb0\x92\xa9\x24\x81\xe8\x26\xba\x38\x4e\xf3\x39\xcd\x80\x73\xd4\xe7\xbf\xcb\x2d\x34\x30\x42\xeb\xc5\xc6\x9f\xe6\x58\x60\x33\xc3\x31\xf7\x07\x0f\x8c\xaf\x9a\xb7\x96\x84\x64\x61\x5e\x35\x98\xcb\x40\xfb\x9d\xcb\x5b\x8c\x13\x38\x9b\x60\xf0\x46\x6a\xe8\x23\xbe\x98\xd8\xf0\x0d\x6f\x1a\xba\x6f\xc1\x4e\xc1\x9b\xe4\x8a\xa6\x54\x03\x7f\xc4\x54\x41\xc7\x9b\xdb\x3c\xaa\x5e\xe5\xed\x32\x05\xac\xae\x8a\xc2\xc3\xdc\xf5\x2b\x22\xe0\xb2\xa0\xe2\xdc\x99\x28\x58\x90\x0f\x4e\x27\x3e\x9b\x63\xa5\x92\xf2\xce\xe5\x8a\x24\x3c\x93\xe7\x30\x0d\x83\xe6\x5e\x94\x1b\xf7\x05\x08\x8d\x02\x3c\x08\xe8\xd7\x79\xce\x45\x21\x29\x69\x7b\x4a\xb9\x65\x21\x2e\xc8\x10\xd7\xa0\x04\x82\x45\x41\xbb\x72\x84\x46\x22\xe8\xb4\x07\x55\xa6\x38\xb8\xb9\xa1\xc5\x3b\xa0\x12\x01\x5e\x2a\xf7\x75\x50\xb1\xac\xcd\x60\x50\x15\x83\x7a\x38\xe6\x8a\xbb\x95\x13\x7f\x44\x26\x43\xb9\xa9\xd4\x77\x10\xda\xe4\x89\x25\xca\xc4\x1b\x4b\x9b\x3d\xa7\xb4\xd9\x63\xa5\xcd\x29\xfd\xf4\xac\xf6\x99\x0c\x1b\x4b\x2d\xa8\x78\x56\xa1\x3a\xfd\xc6\x32\xad\x6e\xe4\xc9\xa5\xda\x1c\x10\x00\x7b\xd3\x92\xb4\x0b\xed\x91\x55\xb9\x10\x2c\xf5\xbe\x00\xbb\x2e\x1f\xcd\x19\xa3\x85\xc2\xf5\xf5\xaa\x4e\x91\x3f\xb7\x66\xa9\x19\x24\x32\xc6\xd4\xce\x02\x99\x62\x6a\x17\x21\xa1\x30\xdf\x84\xc2\x22\x22\xd4\x0d\x80\x8f\x87\xcb\x70\x6e\xf0\x04\xe6\x06\x4c\xa0\xe3\x15\xc2\x3a\x16\xd9\x5a\x44\xea\x90\x47\x61\xb0\xc8\x54\x53\xc7\x01\xea\xf8\x05\x27\x1d\x85\x85\xb1\xab\x8f\xd0\xb4\x15\x93\xe8\x26\xd5\xd8\xa8\xc5\x07\xca\x41\xc8\xba\x6b\x85\xa8\x53\xca\x99\xa0\xe3\xe3\x6c\xec\xec\x01\x26\x69\x22\x64\xfa\xb1\x49\x6e\xc4\x9d\x1a\x52\xc6\x37\x8b\xb9\x19\xdb\x18\xf0\x45\xf5\xc3\x8c\x7d\x65\x59\xed\x5d\x9a\x7c\x7b\x38\x9c\x26\x8d\xf7\x30\xd2\xb5\x77\x22\xb9\xab\xbd\xe1\x5a\x38\x59\x7b\xcd\x8a\x93\x8c\x09\x6b\xbb\xa0\xac\x6c\x0d\x8f\x00\x83\xec\x81\x0a\x45\xde\x00\x39\x80\x21\xef\xa5\x9b\x16\x5c\x1b\x3c\x5d\x0a\xe8\xbe\xd5\x48\x54\x51\x74\xf4\xf0\x54\xac\xaa\xad\xb2\x67\x11\x7a\x8d\x33\x7a\x3a\x03\xd1\x63\x6c\x74\xc5\x6a\x25\x9c\x53\xff\xc4\xc3\x7a\x00\x53\xb6\x2b\xc8\x7c\x64\x75\x6e\xfa\xb0\xa8\xbc\xa6\x63\xf9\x96\x15\x2d\x69\xad\xe4\x2e\x8b\x58\xe1\xbe\xa0\x4a\xcb\xea\x59\xe9\x78\x4d\x4e\x88\x49\xed\x67\x2c\xa8\x90\xf3\xc0\x92\x94\x7d\x53\x15\x56\xa7\xa7\x5f\x2e\xb2\xc7\xd2\xec\x96\xea\x97\x97\xa0\x22\xeb\x56\x5f\x4b\x56\x58\x20\x0e\xb9\xd7\xea\x0a\x2e\x35\xe7\xc4\x8f\xec\xa6\xdd\x51\xf4\xda\x20\x84\x96\x37\x92\x77\xe0\x4a\x8f\x7e\xfe\x25\x7b\x97\xcc\x6b\xc5\x0c\x20\x08\x85\xfe\x65\xf6\xac\xe6\x56\x00\x2c\x0c\xd5\xcb\xb8\x6a\x18\x23\x56\xcb\x90\x2c\xc9\x15\x15\xa8\xbc\x99\xb0\x6c\x7c\x62\xf6\x1e\x54\x2d\x8f\x55\xa7\x87\x92\x39\x34\x3e\x08\xe1\x56\x6f\xc9\xeb\xfe\x1b\x99\xd3\x0a\xb5\x20\x87\x18\xa8\x8a\x2e\x2b\x39\xe1\x5a\xa5\x58\x96\x37\xd3\xa4\x38\xc9\x6c\xed\x57\xc6\x44\xf2\xf9\xb5\xf7\x7a\x60\x7a\x12\x0a\xe4\xa2\xfc\x78\x35\x19\x20\xa1\xd2\x68\x73\x6a\x31\xf7\xf4\xae\xaf\xfa\xc2\x6c\x11\x22\xf6\xc5\x80\x0e\x0d\x2b\x5b\x50\xf1\xc1\xe6\xb7\x36\xa4\x2d\xb3\x17\xe8\xf2\x02\x24\xc7\x5a\x56\xaf\xa8\x45\x4b\xc5\x96\x90\x3c\x5e\xf7\xa5\x5f\xca\xe6\xea\x6d\xa9\xa6\x05\x5f\x38\x83\xb0\x1a\xa7\x96\xea\xb5\xb4\xa5\xad\x24\x47\x26\x35\x7a\x04\x1d\x36\x3c\x86\x38\x58\xd3\xcb\x4f\x64\x30\x44\x98\x97\x9c\x26\xe3\x47\x6b\x73\x25\xaf\x81\xf1\x1a\xd0\x61\x09\x96\x4e\x5f\x59\xe6\x0e\x90\xe6\x3a\x0f\x34\x7d\x0f\x50\x94\x8c\xe5\x0d\xa3\x9c\x26\x85\xcd\x55\xd9\xb4\xcd\xf5\x66\x33\xcb\x7b\xc0\x24\xe7\xc7\xc9\x68\x0a\x79\x8b\x0a\x46\x0e\x5e\xbb\x14\xcd\xe9\x52\x41\xab\x0c\x3d\xf0\x38\xb1\xaf\x37\x5b\x2c\x70\x16\xe9\x2a\x42\x0e\x11\x88\xe4\x92\xe5\x48\xee\x4b\x68\x3a\x97\xac\x09\x47\xc0\xa3\xf8\xfb\x44\xce\x9e\xa4\x82\xe6\x74\x53\xd3\x1f\x36\x4e\x3d\xdf\x0c\xc0\x9e\x84\xda\x8d\x12\x21\xeb\xab\x55\x4a\xa6\xa1\x52\x5c\x75\x66\x1a\x24\x21\xf0\x0b\x0c\x3c\x3c\x16\x79\x44\x24\x16\xf9\x4e\x9b\x67\xd4\x4a\x86\x32\x5b\x7a\x90\xd8\xf1\xae\x65\x78\xd2\xa0\x7b\x0d\x7a\xe6\xc8\x87\x92\x07\xb3\xa3\x9f\xb9\xd1\xcf\x10\xe6\x5b\x60\xe5\x48\x01\xf7\xa6\x31\x0d\xc9\x78\x7c\x9d\x1b\x70\xf7\xa2\x11\xd8\x7f\xbe\x28\xa6\x16\xfa\x5d\x7f\xdc\xdf\x8d\xfb\x98\x21\x3d\x32\x6f\x78\x3e\xab\xe5\x5f\x9f\xf7\x7b\x54\xb6\x95\x08\x4a\x11\xd3\x43\x06\x68\x23\x5b\xbb\xc8\x04\x38\x30\x63\x0d\xbb\xcf\xd6\x24\x2f\xa4\xf3\x30\xc7\xce\xaf\x07\x5c\x93\x92\x5e\x2f\x79\xd9\xe4\xbe\x7a\xbd\x30\x37\x3a\xfc\x04\xef\xa2\x16\x06\x6d\x67\x07\x27\x64\x67\x17\x61\x08\x8d\x96\xa0\x5c\xd9\x20\x2c\x01\xa6\xdc\x85\x22\x13\x78\x46\xc5\x34\x1f\xc7\x1c\x7f\x62\xd9\x38\xce\x70\xf1\x90\x8d\x62\x56\x56\xa2\xc4\xe4\x83\x64\xd8\xf9\x5e\xf9\x98\x7e\x0f\x7e\x2a\x32\xf1\x7e\xa5\x0d\x71\xa8\xde\x92\x0c\x17\x91\x2c\x84\x30\x54\x96\x2d\x3d\xad\xee\xf7\x3a\xfb\x28\x4b\xd7\x0a\x63\x75\xfe\xda\x70\x16\xf2\x9c\xee\xf5\x60\x58\x9a\xdd\x5d\xad\x8a\xed\x6d\xd5\xd7\xd6\xe1\x6a\xe1\x60\xfb\x0d\x96\x4d\x92\xc6\xda\xbb\xd2\xb6\xcf\xef\x81\x09\xe1\xd0\x68\xfd\xcb\x02\x2d\x8d\x69\x83\x6a\xb5\xe5\xf2\xaa\xe8\x49\x82\xd0\xa8\xad\xe8\x1a\xa1\xad\xc0\x10\x56\x5b\x86\xea\xad\x17\x6e\xc6\x78\x3d\x71\xa7\xd9\x7f\x85\x97\x63\x66\xb0\xdf\xb2\x84\xda\x96\x15\xe9\xd7\x8d\x59\x45\xc5\x96\xd5\x58\xc0\x64\xc3\x3d\x98\x8c\x39\x20\x88\xc0\xa2\xc3\x2c\x52\x8b\x4e\x79\xbf\x4c\xf3\x31\x82\x16\x2c\x32\x88\x2b\x1a\xb2\xb6\xfa\xb6\xb7\x51\x59\x96\x6b\x6e\x1a\x45\x05\x55\xce\x9b\xb4\x59\x22\x46\x53\x96\xdd\x79\x3b\xd9\x98\x21\xe9\xa1\x79\x74\xec\x39\xaa\x76\x93\xb7\x74\x93\x0f\xb2\x61\x47\xf7\x6e\x0b\xe2\x5a\x03\x27\x05\xdb\xa0\xd7\xdb\xb5\xbf\x57\xab\xb0\xe6\xbb\x0b\x2b\x4d\x5b\x05\xd5\x47\x05\xec\xa1\x54\x46\x87\xaf\x22\xca\xfc\xb6\xa0\xfc\x9e\x72\x88\x5f\xe1\xcc\x9c\xc4\x13\xfb\x23\xd0\x63\x86\x4b\xda\xd4\x4d\x81\x9b\xb9\x2e\x64\xba\x0b\x30\x9d\x99\xea\xac\xe7\x4b\x39\x02\x73\x5f\x80\x9f\x77\xf7\x98\x5e\x2f\xa4\xd0\x47\xaa\xfa\x98\x21\xef\x6e\x52\xea\x3b\x6f\xaa\x1d\xfa\x5a\x01\xf3\xf0\xc8\x47\x27\x70\xee\x0f\x63\x75\xb0\x8e\xdc\x49\x69\x3f\x4d\xdd\x21\x39\x32\x9e\xd3\xed\x6c\x8b\x17\x5d\x72\x11\x52\xe4\x9f\x5e\x7e\x86\xd0\x14\xc4\x91\x03\xa4\x54\x74\x68\x4b\xb1\x54\xfa\x89\x70\x84\x45\x47\x16\xc6\x9b\x50\x81\x93\x16\xc0\xaf\xa9\x6e\x9b\xae\x58\x00\x78\xb6\xbd\x6d\xb8\x76\x3a\x4b\xd7\xd4\xf3\x03\x1f\x83\xe9\x33\xe6\xa5\x1b\x96\xb9\x13\x5d\x98\xbe\x31\x42\x2d\x60\xd8\x1e\x7b\x45\xfa\x7b\x6c\x67\xc7\x82\x7c\x0c\x18\xb0\xe7\xb9\x9a\x4f\xb5\x2e\x73\xbd\x12\x15\xbf\x98\xeb\xe5\xe8\x83\x95\x1a\x47\xfc\x9d\xdd\x52\xcb\x2f\x26\x1b\x85\x35\xe9\xd3\x05\x88\xcf\x92\xe1\x34\x12\x7a\x52\x59\xf7\x9d\x2f\xb2\x34\xcf\xe7\x6d\x42\x1f\xef\x95\xb6\x5b\xca\xb9\xcb\x38\xcf\xd3\x87\x09\x4b\xfd\xaa\x29\xe7\x90\x42\x3d\xdd\x2b\x02\xe4\xb7\x6c\xce\xe9\x28\x11\x74\xbc\x33\xa1\x89\x58\x70\xda\xde\x53\xd0\x13\xb4\x89\x9c\x5c\xac\x60\x88\xd1\x38\xc6\xd3\x3f\x2f\x84\x32\x5a\x63\x72\x40\x31\x8d\x92\x85\xc8\x0f\xcd\x9b\x56\x17\x9c\x46\x5c\x7a\xe1\x85\xda\xa5\x10\x2a\x6c\x8f\xbf\xa4\x40\x31\x24\xa9\xf0\xe2\xd2\x73\x7b\xe5\x60\x14\x90\x4f\xae\x69\x28\x10\x7e\x47\x51\x89\x29\x00\x57\xd5\x2b\xf6\x1d\xed\x5e\xe7\x79\x4a\x93\x2c\x4c\xa8\x06\x68\xc0\xe0\x37\x0c\x6e\x9b\x63\x73\x9f\xf3\xb3\x5a\x83\x6d\x10\x7c\x19\x01\x1b\x32\xbb\xca\xfa\x34\x5b\xd3\x40\xb9\x31\xe5\x18\xa4\x2c\x29\xda\xf0\x96\x74\xab\x3f\x01\x5a\xe9\xa1\x6a\xb5\x9d\x53\x33\xda\x0d\x3f\xed\x75\x73\x22\xf0\x72\x94\x67\x13\x76\xb7\xb0\x72\x4f\x5f\x0a\xba\x8b\x0b\x75\xf7\x3f\x56\x28\x15\x2a\xd8\x3b\xae\xa0\x89\xdf\x9a\x4f\xa8\x2c\xa1\x35\xf2\x56\x75\x91\x88\x29\xb9\xa1\x6a\x74\xc8\xad\xfe\xf1\x91\x89\xa9\x0e\x57\xbb\x06\x4b\xf2\x96\x5a\x50\x8e\x26\x00\x31\xb7\x3a\x10\x5b\x0d\xcf\xe7\xe4\x81\x2a\x31\x26\x39\x96\x3f\x04\x7f\xb8\xa2\xcd\xe2\x75\xce\x63\x63\x0f\xb4\xd5\x87\xb6\x2a\x68\x86\x03\x41\x3e\x63\x1a\x71\x3a\x4f\x93\x11\x25\x4d\x21\xab\x6b\x0b\x60\x1f\x7f\x40\x1d\x58\x6a\x11\x2b\xcc\x92\xdb\xff\x68\x53\xc7\xb6\x24\x1d\xfe\xa9\x74\x65\x9f\x64\x67\x89\x60\xf7\x14\xb2\x91\x8f\x18\xe2\x3c\xc1\xc3\xb9\x3e\x34\xd7\xb5\xfc\x3b\x5d\xfe\x04\x6f\xed\xea\x12\xe5\x2d\xe0\x59\x79\xe7\xa6\xdb\x00\xf8\x04\xee\x43\x99\xf8\xc8\xd2\x54\x79\xc2\x90\xd7\xb5\x4f\x47\x6c\xac\xbf\xbc\xc5\x34\xa2\xc9\x68\x7a\xc1\xf3\xaf\x0f\x50\xa7\x97\xad\x65\xbc\x80\xaa\x1f\x59\x58\x10\x27\xbb\xe9\xf5\x98\xaa\xc2\xe5\xb7\xd9\xca\x46\x25\xae\x01\x7f\xa8\x0e\x9b\xbd\x52\x45\x32\xb6\xac\x07\x99\x60\x2a\x6f\x6e\x96\x15\x79\xc6\xd6\xd5\x90\xa5\x0e\x57\xda\x88\xac\x9a\x2c\x1d\x47\x0d\x81\x0c\x34\xd2\x20\x37\xc2\x4a\xcc\xfe\x18\xa9\x53\x3c\x1f\x05\x66\x4f\x32\xb3\x1e\xa9\xcb\x86\x46\x45\xec\x8c\xab\x9d\xbf\x0e\xc0\xf9\xda\x36\xa2\x90\xe1\x1c\x61\xe6\x56\x96\x1d\xa3\x39\x6c\xaf\x4c\x85\x23\x23\x33\xa0\x92\x67\x79\x46\xdb\xa8\x93\x46\x8c\x51\xa4\xf4\x78\x36\x17\x0f\xe4\x8c\xc2\xc3\xeb\x34\xc9\x3e\x91\x13\xea\x38\x81\x89\x1c\x63\x73\x9e\x34\x3d\x03\xfb\x08\xb3\xd5\xaa\x25\xb4\x74\xb6\x5a\x85\x8c\x64\x58\x41\x40\x80\x25\x9b\x52\x49\xc9\xa9\x89\x6a\xf7\x6a\x55\x81\x0a\xd3\x09\x52\x02\x9f\x0f\xa9\xc4\x4f\x4e\x3a\x0d\xa0\x96\x6c\x3f\xcc\x49\x86\x13\xc2\x50\x2c\x7f\x2d\xd2\x14\x27\x24\xab\x57\xd9\x76\x1f\xd7\xda\x59\x5b\xdd\xcc\x75\xd6\x63\xdd\x88\x05\x19\x49\x9c\xa4\x01\x5c\xea\xab\x0b\x2e\xce\x3b\x0a\x12\x0d\x9c\xd9\x93\xd6\x25\x66\x84\x7b\x95\xc2\x95\xed\xb4\x59\x69\x6e\xad\x9a\xf5\x55\xd8\x6f\x3b\x3f\xec\x15\x92\xf5\x2a\x76\xc8\x0f\xaa\x49\x29\x61\x83\x62\x88\x17\xf2\xdf\xf6\xee\x10\x8f\xe0\xc7\xf7\xc0\x8d\x2d\xd0\x72\xd4\xeb\xa9\x31\x4c\xf1\x02\x62\x8f\x87\x29\x71\x4e\xd3\x6a\x00\x17\x1d\xa3\x70\xde\x22\x64\xdc\xeb\x69\xf3\x0e\x78\x5a\xad\xc2\x05\x49\x07\x8b\x21\xc2\x0b\x6d\x70\x95\xca\x1d\x6a\xe4\xab\xfd\x52\x2e\x9b\x0b\x4e\x0b\xb9\xec\x9a\x6b\x6d\xeb\x04\x14\xc6\x98\x46\xe0\x0a\x6c\x0e\x35\xed\xd4\x47\xde\x48\xb6\x02\x7e\xeb\x2f\x8c\x16\xe4\x3d\x04\x42\x19\xd7\xd3\x7e\xc3\x34\xca\x72\xc1\x26\x0f\xd5\x2f\xe4\x14\x0e\x57\xff\xcc\x24\x53\xb5\x9c\xb5\x71\xb0\x93\x36\x91\x7f\xc9\x42\x80\xb8\xcb\x97\x47\x74\x94\x73\xc9\xab\x91\x7f\x43\x19\x26\xd9\x9b\x9c\xbb\x4f\x05\xad\x7f\xb3\xd5\x24\xaa\x1a\x30\x35\x60\x5e\x69\xa9\x3e\xec\x1a\x1f\x16\xfa\x8c\xf5\x7a\xdb\x06\xba\xb7\x2c\x71\xe6\x48\x04\x66\x64\x17\xa4\x25\x75\x2a\xd3\xeb\x55\x0f\x38\x08\x2a\xc4\x48\xdf\xcf\x3c\xd8\x1d\x6a\x6f\x0e\xf6\xd2\xfa\x73\xb0\xed\x6d\xc4\x07\xd9\x80\x0d\x87\xea\x30\x97\x3f\x3d\xc8\x65\xd5\xfa\xb5\x8d\xf4\x00\xfb\x57\x2b\xb3\x1f\x5d\x50\x79\x77\xdf\xd0\x3f\xde\x87\x55\x4f\x17\x9c\x99\x4b\xda\x27\xfa\x50\x48\xc6\x8e\xc9\xeb\x44\xad\x7d\x44\x36\x0a\x03\x2f\xc0\x31\x04\xe0\x2f\x11\x16\x70\xfc\x7c\x9d\x27\x76\x7d\xc8\xe6\x8d\xa9\x3a\x31\xec\x11\x7b\x83\x55\xfc\xee\xfb\x44\x50\xfb\xf2\xab\xa5\x9a\xf6\xd5\x17\x4c\xa3\x49\xba\x28\xa6\x07\xc5\x43\x36\x32\xaf\xab\x2c\x5d\xed\x1a\x6a\xe2\x70\x72\xe5\x01\x57\x71\x16\x29\x2a\xce\x22\x72\x0b\x1e\x78\x61\x1c\x3a\x07\x84\xe3\x87\x86\x54\x52\x51\xff\x1a\x35\xc9\x50\x87\xfb\x29\x13\x99\x92\x4d\xc2\x2d\x53\xa9\xf3\xa6\x80\x50\xb1\x98\x47\x15\x0f\x0a\x43\x1c\x6c\xf4\xde\x59\x98\xe1\x04\x0f\x32\xcc\xa3\x79\x22\xa6\x43\xed\xd0\x8d\x19\xb2\x3e\x31\x50\x10\xf9\x25\x34\x69\x30\xd4\x25\x92\x3b\xd9\x24\x70\xce\x34\x44\xd5\x6f\x27\xaa\x55\xdd\x32\x2c\x5c\x07\x7d\xe9\x50\x49\x34\x73\xdf\x56\x45\xf9\x6c\x14\x01\x4e\x51\x9c\x86\xc0\x9c\x02\xb5\x00\x09\x7b\x65\x1a\x9c\xbb\x5d\xe3\xb0\xe5\xde\x61\x2b\x5e\xed\xee\x8b\x9d\xdd\x18\xc0\x6f\x77\xf7\xb2\x97\x02\x0e\x5d\x3e\xc8\x76\x76\x6b\xc7\xae\x5e\x9d\x89\x50\xf7\x5f\xaa\x58\xcd\x3a\x93\xf6\xd7\x1e\xf3\xfa\x52\x66\x0e\xfb\x4e\x1b\x46\xb3\x3c\xcf\xe4\x11\x26\x70\x41\xb6\x98\x31\x1e\x7e\x73\xf0\xfe\xf4\xfa\xe6\xe0\xea\xd7\xb3\xc3\x9b\xf3\xd7\x57\xc7\x97\x1f\x8e\x2f\xaf\xe0\xc4\x4b\xa3\x89\x3c\xfe\x52\x79\xc3\xa0\xd9\x98\x66\xe2\x67\xfa\x50\xe0\x82\xa4\x20\x37\x75\x02\xb6\x05\x19\xc8\x03\xa2\xbf\x37\x7a\x99\x98\xad\xb6\xbd\x3d\x42\x63\x1a\x26\x83\xd1\x10\x53\xf2\x6a\x61\xbc\xe8\x50\x8d\x07\xb1\x7b\x03\x85\x39\x5e\xca\xe5\x51\xc4\x0b\x25\xdc\x2d\x4a\x84\x73\xe0\xd9\xe4\xf9\x00\xaa\x14\x92\x08\x49\x19\x33\xb9\xc9\xff\xe6\x59\xd4\x76\x0d\x38\x21\xff\x0a\x39\x04\xe0\x35\xda\x09\x3e\xe8\x0f\x71\x4a\xc2\x64\xb5\xe2\x83\xdd\x21\xf6\x43\xdf\xda\x1d\x3c\xf5\xcc\xb8\xc0\x75\x4a\x0b\x8b\x47\x06\x29\xde\x52\x45\x83\x52\xf4\xdb\x77\x4b\x5a\xc6\xdf\x2d\x8b\xd5\x4a\x94\xbf\x61\x13\x68\x80\x79\x60\x5e\xb9\x5c\xc6\x9d\xbe\x16\x48\x1d\xd0\x70\x79\x47\x45\x9c\x62\x8b\x08\x33\xd5\xd7\x31\xaa\xcc\x22\xc1\x4b\xdf\xae\xc7\xfd\x45\x08\x4d\x87\x46\xf3\xc1\xf7\x43\x14\x2f\xe4\xf0\x8a\xe4\xce\x3f\x7c\x7e\xb7\xaf\x14\x31\xad\x7b\xad\xc3\xcc\xb1\x42\x7d\x04\xc7\x6a\xcf\x7b\x46\x65\x44\x21\xc5\x97\xb6\xe2\xa2\x6a\x9b\x2f\x77\x61\xc2\x3f\xa9\xfc\x07\xc5\x11\x93\x95\x1e\xc1\xe5\x2d\x19\x7d\xa2\x63\x32\x13\x8a\xea\x5a\xa8\xb4\x4a\x0b\x5e\xd3\x68\x91\xcd\x79\x3e\xa2\x45\x41\x5d\x9a\x82\x6c\xf5\xf1\x07\x6a\x96\x99\xac\x05\xac\x47\xae\x8d\x55\xf8\xaf\x92\x96\x4f\x58\xb6\xa6\xd8\xf7\x74\xb5\xfa\xd1\xc3\x59\xfd\x4c\x07\x74\x58\x76\x6a\x59\x0a\xf2\x51\x16\xa3\xab\x77\x25\x7d\xe7\xbd\x3d\x48\x53\x2f\xfd\x8f\xd4\x9e\x0e\xed\x15\x5b\xaf\x67\xc0\x04\x93\x69\xe0\x92\xa1\xbd\x99\x3f\xd3\x81\x18\xca\x7e\x69\xf9\xf7\x07\xea\x41\xa9\x80\x46\xa5\xcb\xb2\x2e\x8b\xb4\xc7\xb6\x5e\x4b\xbd\x1e\x05\xc6\xaf\xfa\x76\x20\x86\xf2\x1c\x6f\xbe\xd5\xdc\xa7\x96\x81\xd8\x66\x5e\xd1\x84\x8f\xa6\x47\x2a\xba\x7d\x45\x16\x63\xce\x5f\xaa\x4f\xf4\x47\xb3\xc0\x00\x13\x23\x3f\x91\xd3\xb3\xde\x5e\x4e\x3b\x39\x8d\xa6\xf4\x89\x56\x59\x06\x11\x11\xf2\x6c\xb4\xf7\xba\xd3\x6a\xf7\x27\x17\x6c\x32\x6c\x2c\x55\xe3\x9d\x3f\xb9\x50\x9d\x1e\x0c\xf3\xa3\xb3\x83\x77\xc7\x57\x17\x07\x87\xc7\x57\x37\xaf\x7f\xbd\x39\x39\x22\xfe\x2b\x42\xa3\xc3\xf7\x57\xd7\xe7\xef\xe4\xc6\xb9\x79\x73\x7e\x49\x68\xa4\xdc\x3d\x4e\xce\x7e\x3a\x3e\x04\xc4\x88\x37\xef\xcf\x0e\x55\xa0\x67\x2d\x37\x7a\xa7\xc4\xa1\x34\x52\x14\x93\x46\x55\xd2\x4e\x68\x74\xd0\x78\x73\xca\x6e\x79\xc2\x25\xcb\x43\xa3\xd4\xfb\x7d\x71\x79\x7e\x71\x7c\x79\xfd\xeb\xcd\xd1\xc9\xd1\xcd\xe1\xdb\x83\xb3\x1f\x8f\xd5\xdb\x7f\xfd\x7a\x73\x78\x7e\x76\x7d\x7c\x76\x2d\xdb\xa8\xa5\x66\x96\x84\xd0\xe8\xe6\x2e\xcd\x6f\x93\xd4\x09\xd4\xb4\xb5\x98\xbd\x12\xdd\xfb\xae\x26\xdb\x56\x3e\xaf\x22\xe8\x3c\x76\x3c\xe1\x5b\xa3\x8b\xee\x34\xba\x77\x0b\xd4\xf1\xc1\x26\xb0\x35\xde\xf8\x97\x30\x77\xdf\xea\xf5\xc2\x9c\xdc\x99\xd0\xeb\xf7\xf2\xba\x2e\xef\xa6\x89\xba\x3a\xee\xe2\x1c\x69\x73\xb4\xa6\x20\xc0\xa0\xe1\xf5\x7a\x61\x11\x35\xcd\x77\x56\x2b\x05\x0a\xe9\x5b\xfe\xa0\xd5\xea\x2b\x94\x9e\x7b\xd7\xc3\x2f\x4f\x6d\x19\xfe\xeb\x5a\x71\xad\x5b\x81\xe7\xa6\xb3\x5e\x83\x8e\xfd\x4b\xc3\x96\x52\x80\xdf\xc6\x0f\xee\xc8\x9a\x26\x05\x14\x1d\x72\xad\xe0\x30\xa6\x01\x0a\x75\x63\x7d\x94\x6c\x9f\x22\xdc\x46\x05\xfb\x46\x5f\xf5\x7b\xbd\xdb\x48\x91\x3b\xd9\x9d\x07\xfb\xf6\xc1\xbd\x2d\x25\xb5\xdb\xea\x03\x53\xa8\x24\x3e\xae\xb1\x5f\xd5\xe8\x35\xe4\x74\x46\x97\xcd\xc8\x31\xe0\x8e\x4a\xb6\x99\x69\x3b\x09\xc4\xb4\xc2\x44\xd9\x28\x6e\x6f\x5b\x9d\xe4\x20\x1f\x12\x6e\x42\x09\xc4\x01\xc2\x09\xf9\x25\xa4\x38\x6f\x32\xad\xb4\xc1\xb4\x4a\xee\x86\xc1\x80\x70\xbc\x84\x82\xe3\x5d\x2c\x59\x9a\x38\xc7\x0a\x8d\xdc\x67\x68\xe3\x26\x43\x9b\x20\x5c\x2c\x0a\x60\xb6\xc6\x1a\x39\xac\xb9\x5b\x1f\xa0\x57\xe7\x64\x6b\x17\x5f\x55\x20\xb7\xae\x3d\x5c\xce\x9a\x45\xcd\xd6\xae\x1c\xbe\x2d\x42\xce\x8d\x58\x0b\x66\x95\xcb\x59\xc5\xc6\xd2\x6a\x1d\x00\x2a\x33\x76\x58\xb9\x1a\xad\x9d\x1d\x0c\xeb\x53\x3d\xc1\x91\xa2\x27\x4a\x20\xac\x24\x0e\x72\x0a\x7b\xbd\xcc\x4d\xa0\xec\x49\x5a\xd0\xee\x95\x3a\xa0\x07\xd0\xd2\xa1\x37\x8b\xef\xe4\x8a\x78\xd0\x0b\x4b\xce\xbd\x6a\x51\xc5\xca\xc5\x5c\x24\xe8\xda\x8b\x44\xeb\x9c\x3c\xf9\x22\x81\xf0\xad\x6d\xc0\xed\xff\x2b\x0d\x00\xf2\x77\x40\x3c\x3a\x79\x11\xca\x8d\x62\x6f\x6c\xf2\x46\xa1\xef\x76\x0d\xd1\x24\x47\x92\x5d\x71\x29\x99\xb9\xdb\xd1\xc8\xae\xaa\x5e\xaf\xe5\xa6\xa7\xe2\x5a\xd2\xda\x4d\x4f\xde\xee\xbc\x9c\x92\xbf\x9a\x85\x1c\x33\x3c\xe0\x92\xd9\xf1\x2f\x7b\x99\xbb\xec\x51\x3d\x44\x26\x4d\x73\x88\x78\x63\x88\x38\x44\xcc\x7f\x64\x88\xa8\x8a\x85\x5c\x69\xd1\xae\xba\xd7\xb9\xf0\x5a\x35\x7d\x82\xb7\xac\x6b\x56\x85\xf7\xa1\x90\x9b\x15\x16\xaf\x2b\x90\x6b\x2c\xbb\x4f\x8a\x1f\x73\xc7\xf9\x95\xb1\x59\xae\x1e\xc7\x60\xb8\x5c\x3b\xa1\x3f\xc1\xf6\xbc\x54\x25\x58\x5b\xe7\xab\xe3\xd3\x37\x32\x49\x80\xdc\xd4\xfe\xee\xc4\xd9\xed\x3b\xb6\xe5\x12\x47\x07\x9f\x86\x46\x0e\x22\x7f\x43\x08\xc0\x8e\xbd\xea\xfb\x0c\xb8\xc0\x0e\xad\x98\xb9\x31\x3a\xd2\x26\x5f\x32\xb1\x09\xa1\x6a\x72\x20\xdc\xf6\xfa\x52\x2d\xcb\xb3\xb5\x83\xd2\xc2\x25\xc0\xc8\xb4\x71\x0f\x67\xd0\xd8\x13\x7f\x89\x9f\xd6\x84\xb1\x4e\x18\x9a\xb5\x08\x43\x33\x73\xe0\xc1\xf9\xd8\x38\xda\x56\xab\xbc\xe5\x10\x94\x47\xd5\x91\xba\x8e\x9f\xbc\x24\xfd\x5e\xef\x22\x44\xf8\x4c\xb2\xce\xb4\xd7\x0b\xff\xa3\x45\x06\xb6\x4f\x07\x67\x43\xb9\xdc\x51\xac\x7e\x21\xe4\x2d\xb4\x37\x21\x5a\x9e\x6c\x6f\xe3\x73\xc0\xfe\x30\x6f\xbf\x85\x68\xb9\xb3\xa3\x2a\x08\x65\x0d\xcd\xcb\xbe\x26\x7c\xf9\x24\x54\x04\x1c\x21\x43\xb5\x3b\x92\x98\x97\xa1\x5f\xcb\x7b\x49\x13\xdf\x84\x08\xa0\x47\x68\xe8\x36\xd9\xb7\x10\x79\xd8\xb0\xaf\xdd\x3a\x6a\x20\xb0\xef\x87\x82\xf4\xe5\x15\x98\xec\xec\xa2\xb8\xbe\xc8\x76\x7c\x00\x3e\x75\x6a\xee\xec\x22\x84\x67\x92\xad\xfd\xa7\x0a\x6f\x74\x4b\x27\x39\xa7\x01\x1e\xe8\x4a\x86\x08\x53\x57\xf7\xdb\x0d\xac\xcb\x56\xdf\x2b\x9d\xef\x87\x1c\x24\x88\xac\xd6\x12\x5b\x2d\xae\xd9\xa2\xc9\x96\xf8\x7e\x03\x75\x1d\x8c\xac\x24\x64\x2f\xfb\xab\x55\x26\xff\xb0\x9d\x6c\x8b\xf4\x51\xaf\x27\x97\x53\xa0\x26\x31\xc0\x09\xc2\xf0\x3c\x18\xca\xdf\xd5\x9e\x69\x96\x53\xf6\x0c\xba\x30\xb4\xf8\xc6\x89\x09\xc7\xa9\x8c\x49\xf6\xfb\x71\x86\x53\x67\xa7\x10\x86\xf0\x9e\xed\xf7\x63\x86\x76\x0a\x84\x17\x84\xbf\xec\xef\xa7\xdb\x3c\xe6\x95\x23\x54\x72\x42\xce\xd2\x36\x00\x8c\x23\x75\x8d\x08\x50\xaf\x27\xbb\xba\xd0\xed\xf5\x3f\xc9\x46\xaf\x2b\x42\x12\x49\x53\x02\x4a\x77\x76\x5f\x2e\xb6\x0b\xd3\xe5\xc4\x2f\xc1\xd9\xb1\x00\x8a\xa6\x11\x8c\x4e\x00\xd7\x21\x1c\x0c\x3d\x3a\xf4\xb9\xa2\xe4\x6e\xe8\x36\xe5\x0d\x34\x76\xca\xd2\xd0\xb7\x65\xf9\x58\x21\x61\x76\x21\x1a\x8d\x83\xfd\xf5\x92\xfc\x27\xfd\x0f\x44\x1d\xf0\x27\xc7\x51\x14\x65\xda\x78\xcf\x7f\xef\xa4\x4a\x0d\xd9\x2d\x94\xa1\x49\x44\xa6\x61\xcf\x19\x66\xdb\xf2\x75\xc7\x95\xb1\xcd\x70\x5f\x96\x9e\xa3\xb2\x7c\x5b\x6f\x91\x6b\xfa\x77\x35\x6c\x88\x6e\x2e\x37\x05\x07\x8c\x03\xa5\x00\x58\xad\x82\x9a\xb2\x32\xc0\x89\x4a\x34\x36\xba\x45\x93\xc6\x2a\x1b\x03\x2c\xef\x4d\xd3\xa4\xa8\xe8\x66\xad\x4d\x76\xd6\xb2\xb3\x84\x64\xc3\xb3\x96\x85\x29\xe4\x4a\x28\xd4\x86\x80\x29\x6e\x14\x1b\xc8\xcd\x08\x20\x24\xca\xfa\x26\xba\xf9\x48\x93\x4f\x57\x54\xb8\xd9\xfd\x55\x32\xbf\xae\x8f\x34\x6a\x37\xa9\xae\x61\x9f\xe7\x6d\xa2\x1e\x86\xac\x71\x56\x42\xfa\x7b\xc9\xcb\xdc\x4c\x4e\xa2\x8d\xb3\x06\x29\x5e\x0c\xc1\x0c\x73\x0f\x4e\x12\xe5\xda\x07\xe7\x77\x8a\x7f\x09\x19\x5e\x34\xf9\x01\xd6\xe0\x07\x98\xa4\xb5\xb9\x85\x25\xf2\x48\xdd\xcf\x6d\xf6\x43\x83\x21\xce\x49\x7f\x2f\x77\xb6\x62\xf9\xf6\x36\xfa\x29\x64\x98\x62\x31\xc8\x87\x90\xbe\xe3\x09\xa9\x6c\x44\x6f\xff\xce\xf3\x4b\x9d\x8a\x56\x93\xfe\x14\x0e\x86\xd8\xa4\xf0\xb2\xfd\xa4\x86\x57\x69\x31\x4d\x9b\xc0\x38\x86\x64\x78\x4c\x72\x3c\x25\x09\x9e\x58\x45\x1b\x9e\x93\x9d\xdd\x3d\x6d\x7e\x3c\x23\xf3\xed\x5d\x65\x43\x4b\x08\x09\xe7\xa4\x12\xda\x0c\xcf\x10\xea\xf5\xc2\x39\x99\x20\x1c\xfc\x93\x26\xa3\x69\x20\x53\xa5\x92\xbd\x86\x95\x3e\xc3\x73\x99\x62\xbe\x45\xc8\x04\x2d\xa1\x30\xdc\x2c\x03\x48\xe8\x3d\x19\xe9\x06\xc8\xea\x82\x6c\x31\xbb\xa5\xdc\xa9\x56\xee\x57\xab\xad\xea\xbe\x1f\x21\xc9\x29\x06\x66\xd3\x07\x2c\xeb\x8e\x10\xba\xe5\x34\xf9\x24\x4b\x90\xa4\xeb\x1e\x2d\xb5\xb8\xed\xf7\x70\x04\x14\x16\xa1\x0e\xa4\x28\x53\x45\x38\xe7\xfb\xb6\xa9\x28\xf6\x5b\x6d\xf7\xf8\x1d\xe9\xef\xdd\xbd\xbc\xdf\xbb\x33\xc6\x7d\xb7\xe4\x73\x38\xc2\x77\xa8\x73\xdb\xeb\xd9\xd2\x6f\x71\x0a\x97\xbf\xb2\x56\x1f\xde\xea\xe3\xb1\xad\x54\x5d\xfb\xe5\xb7\x54\x7d\x00\x55\xa5\x51\x9c\x4e\xf7\xa7\x51\xdd\x58\x3d\x35\x6a\x53\x63\xff\xf7\x80\xf0\x9c\xc0\x68\xfe\x08\x17\x81\x05\xea\xf5\x46\x83\x74\xa8\x6b\xf0\xb9\xb4\x05\x1a\x91\x54\x32\x10\xa3\x56\x35\xf5\x28\x5a\x64\x9f\xb2\xfc\x8b\xd5\x4c\xee\xcb\x72\xe2\xc6\xeb\x30\x55\x34\xb0\xcb\x26\xa1\xa9\x13\x8d\x08\x54\x6a\xcd\x64\x6f\xc8\xd4\x99\xdd\x8d\xf6\xa7\xb1\xa7\x81\x1e\x21\xfc\x85\xdc\x54\x0e\x89\xb4\x6a\x41\xf3\x65\xb5\x6a\xe1\xf9\x1f\xf0\x17\xad\xcc\x39\x26\x37\x51\xbb\x53\x47\x8a\xf0\x57\xb9\xda\x16\xb7\x85\xe0\xe1\x7c\x7b\x17\xe1\x73\xc5\x65\x2a\x81\x1b\x40\x92\xc8\x6c\x0a\x84\xa5\x73\xac\x2f\x77\xe7\xf8\xab\xb3\xa9\x3c\x37\xf3\x33\x22\x37\xce\xce\x29\x45\xa5\xd6\x3a\xf9\x04\xc6\x2e\xb1\x31\x69\x90\x89\x11\xc2\xd3\x3a\x23\x30\xf2\x8e\x39\xbb\x23\xff\xa5\xa5\xaa\x03\xc5\xae\x38\x00\x9a\x1f\xc0\x55\xce\xe2\xf7\xb5\x70\xd7\x9e\xda\xd1\xbd\xb3\x11\x1f\x04\x6a\x71\xa1\x96\x8c\x54\xd3\x74\xc0\xe6\xc9\x56\x2b\xcf\x94\xc9\x35\xf2\xdf\x4e\xf4\xdb\x14\x11\x52\x8b\x15\xb4\x80\x3b\xb5\xd0\x60\xee\xb4\x1a\x1e\x5f\x1b\xfc\x3b\x86\xdc\x22\x35\xfa\x56\x5d\x0e\xbe\xb1\xa2\xc6\xa9\xb9\x35\x52\x61\x6c\x10\xca\x82\x8a\x85\x67\xa7\x99\x35\x3d\x2e\x14\x32\x01\x2a\x05\x4d\xf8\x38\xff\xe2\x0c\x8e\xa2\xa6\xdb\x86\xf0\x39\x55\x41\x2b\xac\x46\x9b\x83\x2d\x88\x1a\xb4\x33\xbd\xcb\xc8\x69\x6b\x20\x42\x5e\xf5\xf7\x35\xba\x0f\x8e\x3c\xa4\x57\xe3\x0e\xc3\x81\x40\x64\x74\xed\x41\xc9\x68\x2b\x54\x2f\xaf\x46\x22\xf8\xa1\xed\xae\xe0\xed\x47\x8e\xe2\xbc\x03\x42\xf1\xc5\x5c\xe7\x4d\x8c\x04\xd1\x97\x0f\x53\x6f\xde\x70\xc5\x0a\x8f\x56\xa6\x0f\xa4\xc8\x82\x86\x19\xa6\x08\x17\x54\xc4\x5c\xfd\xb6\x3d\x2c\xfc\xc5\x02\xa9\x34\xab\x57\x54\x0c\x95\x95\xf6\xd5\x3c\x23\x9c\xa9\xa8\xce\xb4\xdd\x7c\x39\xa1\x56\xa8\x06\x47\xec\x23\x37\xb2\x66\x24\xe9\x2e\x6b\x50\x5b\xee\x2d\xff\xc2\x47\x1a\xca\x69\x43\xa6\xe7\x23\x11\xb5\xdd\x82\x7b\xbd\x9c\x6a\x51\x8d\xcb\xb4\x30\x8b\xa4\x6a\xc3\x2e\xaf\x21\xb9\x0b\x2f\x05\xfd\x1e\x51\xf2\xe2\x7f\x22\x38\x54\xbf\x7b\xe1\x59\x6d\xd3\x6a\x98\x4e\x7b\x92\x2e\x03\xd4\x91\x2c\xbe\x08\x9d\x79\xdf\x88\xe2\x20\x82\x53\xcf\x4a\xf9\xbb\xda\xe8\xcf\xb3\x2b\x02\x54\x31\x5b\x4e\x09\x80\x62\x7d\x79\x61\xd0\x64\x55\x5e\x5a\xb3\xed\x5d\x5c\x20\x23\x74\xc4\x01\xc2\xa3\xca\xf7\x62\x7b\x17\x75\xc4\x76\xe5\x5d\x1f\x67\x08\x27\x64\x61\x8e\x75\x30\xc5\x48\x5f\x26\x7b\x28\xcc\xc9\xa8\xd2\x72\xf4\xb2\xbf\xcf\xc2\x50\x6c\x2f\x06\xe9\xf6\xf6\x70\x7b\x84\xda\xfa\x40\x6d\x02\x3c\xc2\x39\x66\xa8\x0c\x83\x00\x83\x8d\x84\x6f\xbc\x4e\x2b\x17\xbe\x56\xdb\xa5\x99\xb5\x5b\xc2\x05\xd1\x2b\x29\x91\xfd\xb6\xdc\x65\xd1\x49\x7b\xbd\x22\xf2\xe8\x87\x4a\x41\xc3\x0c\xed\x4f\x4c\x15\x09\x8a\x95\x39\x48\xb6\x3f\x57\xef\x98\x62\x04\xe2\x75\xaa\x18\x0e\x83\xd2\x2a\x04\x7f\x57\x59\x2a\x13\x5a\x33\x25\xb4\x82\x12\xa2\xdc\xa3\xac\x60\x6b\xad\xda\x47\x60\x26\x89\x8a\x33\x29\xab\x80\xcd\xd5\x2f\xe2\xda\xbd\xaa\x8f\x94\x35\x5a\xb6\x5a\x6d\xa9\x2b\xe4\x1f\xb3\xcd\x65\xd8\x9c\xd8\xf2\x83\xb2\xa6\xe6\x25\x8a\xe5\x5d\x8d\x70\x4d\xeb\x66\x6a\x73\xf3\x08\x14\x63\xe1\x2e\xfd\x01\x43\xb0\x69\x3f\x7c\xae\x77\x0d\xf4\xa3\xed\x35\x91\x42\xb4\x47\xd3\xcc\xee\x55\x60\xdf\x68\x4d\xcc\x55\xd1\x0c\xf9\xb2\xae\xdb\x2a\xe5\xbf\x97\xe7\xda\xfe\x8d\x7a\x19\x3f\xd0\x9a\x8b\xc4\x83\xb7\x0f\x33\xcc\x6c\x23\x70\x4e\xdc\x59\x4b\xec\xa4\xe5\x3e\x0b\x06\xa3\xea\xb8\x9f\x30\x23\x72\x50\x50\xaf\x97\x4b\x8e\x16\xd4\xa5\x54\x1e\xe4\x2d\x54\xa5\xce\x9c\x81\x64\xa2\xf1\x16\x90\x7e\x81\x3d\x61\xc5\x35\x4f\x46\x9f\xc0\xdd\x5c\xb2\xea\xfa\xc6\x90\x15\x8b\x99\x62\x89\xea\x12\x39\x99\xb1\xca\x67\x83\xd3\xa0\x62\x82\x20\xa8\x3b\xbc\x05\xf3\x17\x08\xc1\xb1\xa1\xb8\x4c\xb3\xdc\x08\xc5\xaa\x8b\x38\x73\x03\xa8\x47\xd6\x73\x7f\xa6\x38\x23\x8d\x59\x15\xfb\xc2\x8b\x9a\x1c\x8b\x36\x7b\x29\x67\x95\xc5\x57\x2b\x5e\x71\x95\xd7\xe6\x47\x9c\x3c\x50\x79\xd4\x0d\xd8\x10\xb9\xa8\x67\x75\x35\xe1\x1d\xc5\x0f\x34\x0c\x26\x79\x1e\xe0\x20\x09\x90\x7b\xda\x85\xdf\xcb\xd2\xbe\x5e\x96\xe6\xdd\x22\xfb\x94\x67\xde\xd0\xa3\x65\xe9\x25\x6b\xfd\xba\x8b\xf0\xad\x2a\x4d\x16\xee\x3f\x44\xb7\x09\x0f\xd4\x59\xfc\x85\x92\xa5\xe7\x96\xa2\x0d\xc3\x61\xe7\x2a\x81\xb9\xdf\x4d\x90\xce\x52\xe7\x10\xde\xfd\xea\x92\x1b\xe3\x1b\xb5\x0f\x94\x46\xdd\x1d\x7a\xa8\x11\x8a\x53\xf9\x4a\x66\xea\xf0\x4a\x00\x3e\x70\x3f\x84\x5d\x9b\xe1\xcc\x8a\xc5\xb6\x08\x09\x73\xb5\x6e\x5b\x0c\xe1\xe8\x6a\xa5\x96\x71\xeb\xcd\x03\x4e\xba\xf7\xb5\xcb\x87\xa9\x22\x57\xae\xad\xa7\x6a\x31\xc6\x6d\x69\x43\x21\xa9\x5e\xe6\x73\x5f\x5f\xeb\xd4\x92\xf8\xcb\x06\xe7\x84\x69\x13\xe3\x84\xc0\xc2\x63\x9e\xd3\x50\x82\x9c\xf1\x7d\x82\x73\xed\x34\xba\x95\x21\x87\x4c\xbb\x88\x34\x4a\x5b\xf8\x9b\x69\x44\xb7\xa0\xa2\x3b\x49\x58\x4a\xc7\x71\x57\xf5\x5f\xf6\x78\x9e\x88\x69\x37\xf8\x6e\xc9\x54\x04\x12\x59\x7b\x19\x74\x47\xf9\x22\x1d\x03\x78\xed\x2d\xed\x4e\xf2\x45\x36\x8e\x7e\x43\xa5\x31\x30\x02\x7b\x72\x14\x7e\xa1\x7a\xd3\x82\x95\x09\x02\xcb\x41\xb7\xea\xd6\x7d\xdb\x5d\xf3\x25\x01\x6c\xb7\xf5\x39\x93\xf8\x0b\xd5\xdf\xdd\x2a\x3b\x87\x18\x9b\x8a\x95\xbf\xa2\x16\xaf\xaa\xc6\xd5\x53\xb4\x04\x04\xaa\xd0\x46\x27\xc9\xd3\x44\x30\xc9\xc8\xdb\x38\x26\x34\x19\x9f\x67\xe9\x83\x7b\x33\x4d\x8a\xc3\xff\x87\xbb\x77\x6d\x6f\x1b\xc7\xf2\xc4\xdf\xeb\x53\x58\x9c\x3c\x6a\x62\x8c\x30\x72\xef\xec\xec\x2e\x1d\xc4\xeb\x4a\x9c\xee\x4c\x57\x2e\x1d\xa7\xba\xa7\x46\xa5\x55\x68\x09\x92\xd0\x45\x81\x2a\x12\xb2\xe3\x96\xf8\xdd\xff\x0f\x0e\xee\x24\x25\xcb\xa9\x54\xf7\x3c\xff\x7a\x51\xb1\x48\x10\x77\x1c\x9c\xeb\xef\xc0\x6d\xe1\x1e\x2d\xa8\x10\x2e\xb5\x8f\x7a\x56\xf9\xcf\x74\x32\x4f\x3a\x72\xf1\x57\xe0\xdd\xdb\x2d\x17\xb9\x10\xb0\xb6\x84\x64\x02\xea\xbd\x5e\x0c\x7b\xb7\x36\xd5\xf9\x5a\x85\xf8\x75\x25\x37\x47\x41\x5f\x4b\x27\xf2\x72\x52\xf6\x82\x77\x60\xb6\xd9\xed\xde\xd3\x70\x28\x80\xc0\x59\xd7\xd4\x7a\xd3\x6b\x4c\x8c\xc9\xda\x6c\xe7\x24\x49\x14\x8e\x87\x2f\xd4\xb0\x79\xac\x60\xbe\xc2\xe7\xb8\xef\x02\x73\xed\x60\x14\x86\x97\x64\xc3\x19\x30\xe0\x45\x4d\xca\x20\xde\x20\x0e\x3a\xca\x3c\xe5\x6d\x61\x5f\xea\xee\x76\x39\xe5\x16\xc9\x34\xcb\xf3\x58\x83\x66\x75\xc5\x0a\x78\x4a\x74\xe6\x0a\x23\x79\xe3\xd7\xb5\x1b\xa9\xc1\x6d\xf1\x6d\xc2\x22\x16\x56\x4d\x23\x20\x4c\xde\x8b\xad\x6c\xca\x31\x10\x31\x35\xa3\x71\xf9\x7c\xb8\xdb\x35\x5f\x3e\x27\x16\x5a\xc6\x8f\xa7\x92\x5d\xee\x12\x2f\xa9\xca\x62\xa6\xcd\xd1\xe1\x4e\x46\x41\x38\xac\x9a\x37\x35\x2e\x6a\xac\x59\xf2\xd6\x0f\x98\x49\x05\x8e\xd6\x32\xb6\x66\x4d\xab\x57\x89\x0b\xc9\x6a\xb2\x40\x23\x52\x36\x12\x3b\xea\xbb\x35\x50\x88\x64\x38\x47\x88\x13\xe6\xc7\x62\xd9\xfd\xb8\xd5\xbd\x4c\x37\x38\x1c\x67\x3a\x55\xd8\xfc\x5a\xdd\xc9\x3d\x3a\xb0\xe5\x64\xe3\x46\x55\x7b\xdb\x62\xaa\xdb\xf7\xb4\xa3\x19\xfe\x53\x4c\x35\xe3\x8d\x30\x38\x11\x58\x80\x10\xd8\x99\xf0\xc8\xc7\xed\x28\x71\x97\xff\x00\xc2\x3f\xc6\x4c\x05\xbb\x04\x5a\x4c\xc7\x44\x64\x08\x37\x59\x90\x63\x59\x0d\xcc\x75\xee\x39\x73\x86\x42\x72\x64\x8e\x1e\x50\xf6\x8f\xfa\xa1\x82\x1d\x07\xcb\x5b\xdf\x3f\x0a\xc1\x1e\x98\xe6\xc5\xcd\x0d\x2d\xaf\x6d\xe5\xbd\xc3\x7b\xc6\x3c\xf4\x3e\xd0\xee\x9a\xe1\xa6\xe9\xb5\xed\x83\xe6\x34\xd9\xe8\xfc\x60\x39\xcd\x10\x82\x87\x1e\x6d\xe9\xb4\xc8\xbe\x1b\x0f\x06\x26\x78\x10\x00\x25\x07\x03\xe5\x6b\x04\xbb\x40\x5b\x0f\x6b\x23\x52\xf4\x87\xca\x9e\xf7\x3a\x46\x58\xe3\x37\x4e\xec\xac\xca\xcd\xfb\x63\x5c\x40\x8e\x78\x67\xfb\x6a\xed\xfa\xbc\xbd\xeb\x33\x84\xb7\x8d\xad\xb9\xd1\x69\x23\xec\x80\x37\xed\x7d\x97\xc3\xbe\xdb\x80\x2b\x10\xc2\xc5\x31\x9b\x2c\x47\xa1\x21\xd2\x9a\x98\xbb\x17\x5e\xf8\x20\xf4\xde\x55\xff\x32\xe3\xf2\xca\x96\x17\xbd\xdc\x40\x4f\x0b\x9e\xdf\x9f\x18\x5a\x26\x2f\x79\x51\x47\x27\x05\xd7\xb7\x7f\x7a\xf2\x64\xab\xf8\x64\x5e\xad\xb5\xdf\x69\xfd\x19\xd5\xad\x9d\x63\x24\x0c\x23\xa8\x6e\xf2\xbc\x11\xb0\xe3\x9d\x6f\x64\xc2\x00\x38\x28\x44\x82\x5d\xe5\x87\xd0\xf9\x1b\xd7\x1c\x69\xf9\xbe\xd6\x2b\xe7\xf3\x46\xb8\x70\x72\x2e\x0f\xa8\x90\x00\x34\x47\xd7\xbe\x90\x4b\xa6\x2a\x4d\x2b\xbd\x56\xca\x83\xc1\xec\x11\x46\x2a\xaf\x39\x08\x29\xd2\x13\xaf\xcb\x9d\xd9\xe9\x2f\x06\x83\x4c\xc5\xfc\xc4\x3c\xa0\x1e\x20\xa7\x7e\xaf\x19\x56\x39\x64\xd6\xd2\xdb\x85\x27\xcd\x68\x2c\xfb\x84\x94\x8d\xfe\x2b\x24\x86\x70\x8b\x08\x9b\x3c\xbb\x6c\xb4\x6b\xd2\xf8\x62\x75\xd5\x36\x5a\x95\x97\x76\xcb\x71\xf0\x9a\x6a\xcc\xb7\x4f\x8e\x3f\xba\x86\x44\x55\xff\x3f\xbc\x4a\xd4\x92\xe3\x29\x69\x72\x90\xcd\x9b\xa3\x65\x4b\xcb\xf0\xf4\xbf\xe9\x25\x01\x64\x84\x9b\xec\xa3\x6f\xdd\x2a\xbe\xd6\x84\x73\x6b\x6e\x0b\xcb\xae\x54\xca\x67\xdd\x72\x3e\xd4\x67\x70\x15\xe7\x6a\x8f\xa6\xe7\x46\xab\xbf\xf2\xf9\x63\x5d\xd8\x63\x88\x5a\x85\x7d\xb6\xd0\xb2\x31\x8a\xd3\xae\x57\x1a\x75\x4d\xf1\xc5\xcd\x6e\x0d\xbb\x14\xbf\x42\xa9\xce\x77\xbb\x6d\x9d\xc6\xfa\x87\x06\xe9\x53\xe9\xe4\xf4\x62\x77\x75\x45\xbd\x91\x37\xea\x89\xd3\xec\x00\xfb\x6f\x8a\x78\x9a\x7d\xea\x89\x63\x97\xf4\x1b\x86\xc3\xb3\x79\xfc\x9f\x52\xb4\xd5\x5c\xb7\x0e\x30\xbf\x06\x17\x01\xfc\xd6\x81\x39\xf0\x58\x8c\x86\x63\x2c\x46\x67\xf2\x7f\xbf\x77\x92\xbe\xfb\x42\x07\xd2\xcb\x8a\x3e\x50\x72\x49\x93\x1b\xc6\x67\x0a\x55\xae\xd7\xe1\x11\xfc\xc1\x9c\xf5\x97\x87\x77\x49\x73\xe2\xdc\x2b\xb5\x6c\x05\xa7\x7f\xcd\xba\x0a\x9a\x17\x07\x57\x57\x1b\x33\x9b\x93\xe8\x70\x34\xec\x02\xf7\xec\xfa\x9a\xed\xfd\xf3\xd1\x42\x5c\x96\xcb\x2b\x99\xd0\xa6\x1c\xd2\x29\x84\xfc\x01\x4c\x16\x76\x0f\x79\x56\x89\x5f\x43\xc9\xba\x39\x54\xa5\x97\x73\x5d\x44\x35\xd2\x39\x2b\x5b\x64\xaf\x29\x98\xec\x25\x7d\xbb\x5d\xdc\x26\x58\x7f\x0e\xdb\xf1\x19\xdd\xc7\x10\x2c\x2d\x6e\x37\x68\x95\xe1\x4b\xdb\xc1\xfe\x5e\x8b\x80\x79\x62\x77\x95\x42\x6e\xa2\x82\x7c\xa4\x6e\x07\xd9\x87\x7f\xf3\xcf\xdb\x47\xfa\xd5\x6c\xcc\xef\x24\x1b\xf3\xbb\x87\xd9\x18\xe7\x13\x48\x1b\xc3\x58\x6a\x5d\x13\x04\x3b\x1b\x00\x03\x75\xc8\x5e\xed\x31\xde\xbc\xa3\x6e\x9f\xeb\x90\x6c\xe0\xa7\x5d\xfc\xa4\xe7\x03\xe0\x69\x3f\x2b\xf6\x77\x73\x9f\xf6\xd5\x2f\x2d\xc4\x9b\x12\xf0\x9d\xd3\xbf\x86\xb8\x0d\x91\xfc\x20\x42\x9d\x75\xdb\x38\x79\x5e\x77\x37\x6d\x8c\xb2\xbe\x3e\xcb\xc6\x37\xf6\xa9\xef\xbb\xd0\x6a\x9f\xe9\xf6\xb5\xcb\x57\x77\x0f\x8c\x5d\xaa\xcf\x1c\x82\xa3\xcb\x38\xee\x5b\xa3\x60\xf6\x76\xbb\x2e\x0d\x38\x68\x07\x9e\xfd\x74\xfd\x2c\x11\xb4\x02\x25\xb8\x4e\x0a\xde\x69\x97\x9d\x94\x26\xa5\xac\xcd\x0b\x3b\x2d\x4a\xfa\x3d\xbb\x79\xc3\x67\xf4\x0b\x19\x02\xd2\xa6\x8a\xbc\xb8\xff\xee\xde\xa4\xe1\x6c\xa5\xff\xd3\xb5\xe0\xd2\xa5\x7e\xd3\x50\x4f\x10\xbb\x26\x57\x76\xc4\xc7\x90\xb9\x26\x40\xe5\x19\xf1\xb1\x97\x5e\xd1\xf7\x8b\x0d\x2b\x36\x93\x6b\x59\xa8\x66\x97\x76\xbb\xb8\x04\x55\x78\x7b\x10\xa7\xa7\x2e\xe9\x9d\xae\x4d\xbb\x61\x71\x3c\xc4\x5b\xc0\x7e\xa7\x58\xc3\xd0\xa4\xa2\x46\x2e\xe3\xe3\x4b\x55\x8d\x6c\xc9\xc3\xa0\x0c\x3a\xdc\x1f\xa2\x7a\x46\x3f\x36\x53\x44\xda\x5c\x88\x1d\x7d\xed\x95\x36\x33\x9f\xd7\x27\x63\xf1\x28\xf7\xf5\x56\xa8\xac\x88\x7e\x20\xcc\xf7\x6a\xf7\xbf\x56\x87\xec\x7b\xda\xf3\x23\x63\x5e\x53\xfc\x9a\x26\x5d\x43\x89\x40\x8d\x1f\x41\x8a\x6c\x20\x11\x8a\x9e\xfe\x9d\xb6\x00\x92\x93\x65\x56\xbd\x77\x7a\x57\xfc\x03\x68\xf8\xbe\xa3\x04\x84\x82\x74\x88\x27\x9d\x71\x6e\x69\xff\x0c\x4b\xce\xa2\xf3\x65\x13\xb5\xae\xb3\x50\x8d\xab\xbd\xdf\x5b\x70\xcc\x8a\x8a\xd3\x53\x7c\xa0\x16\x79\x0d\xe2\x3f\x42\x9f\xff\x02\x3a\xa7\x20\x70\xe9\x2f\x6a\xf6\x7e\xa1\x5d\x18\xb3\x8e\x54\xfd\x95\x2a\x94\xba\x7d\x41\x7d\xd6\xdf\x8c\x62\xd1\x8a\x67\x6b\x87\x7b\x2b\x37\x30\xee\xbb\x81\x69\x1b\x25\x1f\x15\xc0\xeb\xc4\x94\x64\xc9\x74\x99\x95\x2f\x8b\x19\xbd\x14\xf1\x10\xa1\x17\xe4\xdf\xff\xe7\x60\x40\x9f\x93\xff\x33\x34\x6e\x9f\x7f\x92\x3b\x22\x43\xbd\x0a\xae\xb8\xd2\x84\xb8\xa1\xb8\x92\x32\x98\x77\x35\x3c\x51\x99\x80\x02\xfb\xaf\xe7\x6c\x67\x0f\x6c\x46\x84\x53\x59\x3b\xfc\x85\x13\x06\x81\x86\xd9\x98\x70\x1c\x36\xc4\xa5\x40\xcf\xe5\xe1\xfe\x3b\x55\xa2\x00\xc7\x95\x8d\xbe\xe6\xa3\x0a\x46\x23\x46\xc5\x98\x54\x38\x1f\x0c\x72\x97\xfe\x86\x90\x1f\xa9\xa7\x33\x0c\x23\x0b\x73\x84\xc2\x86\x72\xec\xf5\xcc\xf9\x22\x41\x95\x5e\x2c\x20\xac\x92\x8a\x9e\xc9\x11\x92\xeb\xc0\xf8\x86\xf6\x18\xb0\x2a\x39\xc2\x72\xe0\x39\x66\xa8\xae\xcd\x98\x49\x51\xa3\x78\x44\x6d\xbf\x62\x34\xc6\x2a\x4e\x08\xd0\x82\xed\x94\xfd\x81\x5a\x49\x60\xdf\x2e\x90\x43\xa5\x83\x41\x2c\x77\x0b\xde\x1f\xff\x79\x86\x30\xdd\xed\xfe\x18\xd0\xd0\xbf\x50\xdc\x81\x23\xf7\x84\xc6\x10\xf8\xdf\x83\xfd\xeb\xad\xe7\x8f\xae\x33\xe1\xbc\x05\xa2\x80\xcb\x93\xbf\xdb\xc5\x1d\xd1\x9c\x60\xe1\xf8\x41\xcd\x99\x1c\x1e\xf6\xa1\xda\x9a\x91\x9e\x28\x84\x51\xe3\x84\xf6\x66\x05\x38\x5f\xf2\x6e\xc8\xb9\x98\x23\x44\x08\x31\xac\xb2\x23\x28\xbb\x1d\x27\xa4\x45\x66\x9c\xd3\xde\xe1\x5e\x6c\x05\xf9\x1c\x57\x9b\x1b\x75\xa5\x15\xf3\x13\xc9\xba\xa0\xcf\xda\x79\x4b\xa7\xf2\x74\xae\x15\x0e\xf1\x6f\xb7\x8b\x62\x6d\x22\x45\x51\xad\x66\xaa\xb1\x9b\xb5\x43\x4f\xe0\x39\xfe\x27\xc3\x55\x95\xf7\xc6\xdf\x62\x24\x4c\xf0\xbc\x71\x27\x29\x3b\xcc\x0d\x65\x68\xed\xb5\xa6\x84\xc1\xa0\xf4\x77\xec\x60\x50\xd6\xd3\x4c\x4c\x97\x31\x57\xe9\x24\x5a\x91\x96\xbf\x28\x1a\xf5\x67\x8a\xff\x83\x12\x25\xee\x3a\xe2\x3c\x2d\xf8\x34\x13\x78\xab\x05\xe0\xf4\x3f\x69\xad\xca\x38\xe2\xf5\x5f\x2d\xb3\x58\x09\xd0\xd8\xdc\x43\x36\x16\x23\x0a\x41\xb7\x84\x5d\xfc\x87\x3e\xc8\x0c\xcb\x87\x28\x85\xff\x63\x2f\x32\x43\xb3\xb0\xd6\x0a\x19\xc0\x5f\x89\x9e\x71\x7c\xd6\x82\x63\xe0\xe3\x57\x84\xc5\x32\xc2\x46\x74\x8c\x2b\xd2\x31\x51\xd9\x45\x45\xe3\x0c\xa5\x59\x50\x41\xb5\xdb\x41\x7b\x55\x58\x51\x4e\xaa\xce\xf6\xf2\xb0\xd8\x46\x29\x31\xca\xe4\xae\xcc\xd6\x28\x2e\x30\xe4\xad\xe7\x46\x65\x86\x97\xc4\xaa\xcf\x94\x53\xa6\xdd\x8a\xcb\x0b\xfb\xe7\xec\xc2\xab\x62\x86\x97\x28\x5d\xa6\x33\x3c\xed\x13\x52\xec\x76\x1b\x59\x40\x4d\xf3\x5c\x56\x1c\x68\x3a\x77\xbb\xd1\x18\xaf\x89\x11\x5c\x93\x24\x99\x63\x30\xd8\x4c\xc1\x60\xb3\xa9\x1d\x06\xc9\xda\x53\x2e\x70\xf7\x37\x5e\x7b\x7a\x04\xee\xfe\x96\xcf\x41\xe6\xe3\xea\x5f\xbc\xf6\x85\x72\xee\xfb\x70\x31\x1a\xaf\xf1\x35\xf5\x90\x30\x9d\x11\x26\x5c\x58\x67\xda\x91\x3b\xa0\xb9\xbe\x6e\xf3\x74\x2c\x5e\xe1\xcf\x91\xc0\x05\x4a\xbd\x66\x4a\xdd\x8c\x8d\x74\x92\x7b\xa0\x50\x0b\xb3\xca\x7e\xa6\xda\xb7\x80\x21\xbd\xb9\xe3\xe6\x1b\x61\xd1\x19\x4e\x0a\x57\x2d\xef\xa8\x16\x28\x1c\x6b\x03\x55\x42\x6b\xb9\x9f\x53\x87\x49\x71\xb4\x7f\x86\xab\xe6\x5d\xbd\x21\xc3\xf3\xcd\x73\x6b\x7a\xda\x98\xbb\x7a\x4a\xaa\xd1\x66\x8c\x67\x44\x8c\xa6\xe3\x2e\x1c\x8b\xd9\x05\x00\x44\xe1\x62\x34\x1d\x13\x21\xe2\x29\x9e\x61\x86\xb7\x35\x42\x29\x3c\x9a\x99\x15\xc8\x20\x40\x68\x02\x32\x36\x29\x93\x8f\xef\xdf\x7f\x42\xd8\x1b\x18\x13\x21\xaa\xa1\xbb\x37\x2a\xf2\x5f\x34\x8e\xd4\x2c\x51\x9e\x39\x0d\x25\xa3\x55\xa4\x57\x12\xe7\x50\x68\x45\xcb\x45\xe7\xeb\x4d\x73\xc0\x0a\x20\xc3\x38\x6c\x9d\x4f\xcd\x80\x67\x64\x33\x9a\x8e\xf1\x92\x88\xd1\x2c\xc4\xa2\x5f\xc2\x76\x01\x57\xea\xc2\xf2\xb0\x33\x84\xb6\x1a\x24\x79\xa6\x78\xcb\x39\xa1\x2d\x67\xbb\x59\xe8\x03\x3c\x57\x4d\xad\x09\x1f\xcd\xc6\x84\xc9\x86\x3a\x66\x76\x3d\x18\x14\x22\x66\x78\x86\xd7\xa0\x5a\x06\x66\xa0\x94\x5f\xcc\x71\x66\x9a\xc4\x73\xa7\xc9\x95\x45\xb5\xc6\x67\xd5\x45\x6b\x40\x62\x5b\xa9\xb6\x6f\x49\x45\xe3\x65\xa8\x3d\xbd\x45\x5b\xa8\x9e\x0a\x79\xe0\xf1\x2d\x2e\x11\x86\x1e\x6a\x0b\xb5\xe1\x33\xea\xba\x1a\x0c\x2a\x6f\x0a\x5e\x90\xe1\x6e\xb7\x6f\x81\x08\xe0\x4b\xb5\x57\x46\x3e\xbf\x58\x92\x52\x35\xc6\x51\xaa\x98\x1c\x57\xe9\xd3\xb3\x8b\x25\xe1\xf6\xf5\x6a\x30\x88\x97\x72\x87\xc1\x6f\xd0\x9d\x43\xe7\x96\xb8\x74\x7d\xf4\xb9\xc1\xc2\x3b\xe7\xf6\x34\x94\x16\xfb\xc5\xe0\x75\x79\xb0\x37\xcd\x98\x8b\xdb\xac\xdc\x9a\xe2\x55\x9a\x61\x0b\x15\x9c\x56\x35\x29\xc2\xd8\x22\xcb\x1b\xe7\x84\x5d\x4c\xd2\x3b\x7d\xa2\x32\x08\xbb\x0c\xce\x55\x1e\x53\xac\x1f\xcb\xa3\xa5\xa0\x41\x70\xa6\x51\x5c\xfc\x4a\x1d\xc3\x3d\x25\xec\x62\x9e\xae\xf1\x8c\x0c\xcf\x67\xee\x98\xce\x4e\x4f\xd1\x34\xa6\xb8\x1a\xcd\xc6\x0e\x63\xc4\xf9\x8d\x0a\x1b\x6d\xb2\x0f\x58\xbc\x43\x1e\xc0\x59\xe7\xd3\xaa\xa1\xec\xca\xa5\x20\xbd\x51\xa2\x46\x70\xaa\x71\xdb\xff\x52\xa1\x94\x06\x11\x19\x30\x3b\xc2\x9f\x17\xc9\xe7\x12\x01\xd4\x46\x18\xd6\x56\x9e\x38\x88\x6f\x57\xb0\xff\x3e\xb3\x5b\x26\x36\x87\x40\x0e\xa3\xd9\xae\xed\xe6\x4a\xa7\x58\x81\xf7\xa7\xb3\x9a\xe4\xce\xe4\x36\xbd\x60\x22\x2e\xf1\xd4\xeb\x53\xea\x6e\xbc\xc1\x20\xa6\xf1\x2c\xe8\xb1\xe3\x15\xf3\x64\x72\xc7\xc4\xb2\xd8\x08\xb9\x4d\xcd\xdf\x36\xc0\x97\xea\x30\x60\x41\x32\x0f\x12\xe4\x5c\xe1\x8e\x0f\x06\x99\x2f\xda\x4a\xb9\x5b\x71\xf6\xb2\x33\xb9\xd7\x5c\x2d\xe5\x0a\xf8\x9b\x02\x94\x5b\xcf\xad\xbf\xa4\x56\x79\x8b\x5a\x2d\x49\x2e\xa9\xd5\x9c\x64\xa3\xa5\xbc\x74\x8b\xd1\x12\x88\xd6\x2c\xb9\xfc\xfe\xcd\xe5\xf5\xe4\xed\xd5\xa7\x3f\xbe\x7f\x05\xdb\xe8\xdc\x0e\x65\x3e\x18\xe4\x22\x9e\x23\x1b\xf7\xf2\x67\xc9\x3a\xcd\x81\xe8\xf6\xd6\x64\x05\x30\x68\x78\x4e\x56\x4a\xf1\x57\xbb\x0f\x2f\xba\xdc\x46\xe6\x40\xa7\x28\x5e\xe2\x39\xee\x0f\x11\x06\xd7\x4b\xf9\x03\x06\xbf\xb1\xd3\xb1\x44\xb8\xcf\x90\x37\xe1\xeb\xc1\x60\xae\xca\xae\xe5\xd8\x3d\x44\x8e\x6e\x87\x51\x4c\xeb\x70\x5c\x83\x41\xfc\xe7\xbd\x70\x94\x90\xbe\x5e\x81\x11\x4b\x2e\x14\x67\xa4\x1c\x15\x92\x0b\x03\xe1\xb3\x29\x3b\x64\x9e\x9d\xad\xb2\xa8\xd4\x92\x3b\x67\xca\x69\xb6\x40\x48\xde\x74\x0c\x1b\x5f\x7d\x94\xc6\xc6\xd9\x16\x57\x84\x8e\x8a\x31\x42\x78\x2b\xa7\x2e\xcd\xb4\x0f\x68\x55\x6b\xfd\x6d\x25\x70\x2e\xf0\x46\xe0\xa9\xc0\x33\xd1\xf4\x79\x57\x3c\xfe\x52\x34\x53\x13\xa2\xed\x4c\x38\xe5\xb3\xcd\x35\xd4\x46\x6b\x0b\xf9\x18\x8a\x9c\xc0\xe5\x5f\x7a\xd6\xf8\xb0\x0f\xc4\x1b\x33\x4f\xc4\xf1\x74\x21\xee\x26\x53\xc8\x0d\x8e\x98\xc8\x82\x9e\x70\x0b\xfa\xe3\xdd\x6e\x9f\x13\x2d\x37\x48\xc3\xff\x15\x33\x54\x7b\xc1\x22\x10\x55\x21\x47\xa7\xf3\x39\xcd\x05\x64\x08\xb7\xf9\x16\x5f\xba\x79\x09\x3d\xa8\xf4\x29\xb4\xb1\x12\x41\xba\x3f\xb4\x95\xf2\xe4\xb0\xf7\x8d\xa1\x8a\x6d\x4e\x73\x6b\x52\x35\xed\xae\x6c\x7a\x91\x5b\x83\x3b\x15\xfa\xe6\x63\x2e\xc9\x65\x00\xcf\xa9\xdc\x38\x1b\xf9\x49\xc8\x8b\x2d\xf5\x56\x7a\xb7\xe3\x16\x48\x09\x61\x5e\xab\xcc\x87\xdf\xd6\xea\x04\x1e\x18\xc6\xda\x62\x0d\xbb\xae\x0f\x66\x9f\x40\x62\x4b\x11\xfb\xab\xe0\x15\xea\x35\xf7\xa8\x5f\x4e\x2f\xee\x88\x8f\x15\xf5\xf3\x1e\x9a\xfc\x26\xa6\x88\x93\x10\xfc\xc7\xde\xdf\x86\x67\x9e\x0b\xf0\xff\x05\x93\x52\xad\x80\x2b\x03\xc7\xe6\x46\xec\xc1\x19\xc2\x70\x27\x8e\xe4\x07\x63\x79\x59\xc2\x37\x1f\xb2\x52\xb0\x2c\xf7\xd4\xce\x5e\x29\x54\xcf\xa8\xa0\x53\xa1\x8f\x59\x97\xff\xa7\x5e\x4a\xea\x30\x3d\x25\x09\x16\x3a\x24\x02\x35\xe2\x6b\xcc\xb5\xd8\x82\x48\x31\xda\x18\x70\xd7\x6c\x64\x3d\x3a\x53\x0f\x81\x1a\x20\x2c\x3c\xbc\x41\xed\xdc\xc7\x24\xb5\x53\x09\x6b\xd8\x3c\xf6\x02\x3f\xaa\x62\x45\x63\x41\x5e\x98\x56\xcd\xd4\xf6\xcf\x6a\x6d\x92\xf1\x90\x0e\x1b\x71\xdd\xa1\xab\x2c\xc4\xda\xda\xbb\x58\x59\xc4\xf4\x09\x0c\x36\xa3\xde\x23\x7a\xfa\xf0\x43\x20\x70\x06\x50\xcf\x82\xbf\x75\x03\xf8\x51\x77\xdc\x4b\x4c\x6b\x20\x69\xad\xd8\xa5\x8e\xb9\x55\xb1\xf5\x76\x6e\x8f\x9f\xf3\x70\xc6\xfd\x6d\xee\x82\x5d\x03\xa1\xc2\x2f\xa2\x95\x9f\xcc\x57\x7e\x02\xc7\x12\x33\x79\x53\x28\xcd\x9e\x59\xb1\xc1\xc0\xfc\x65\xf9\x89\x8e\x05\x3b\x29\xb5\x3a\xa7\x76\x4a\x3c\x13\x20\x60\x54\x3e\x8a\x06\xa1\xc8\x63\x02\x81\x98\x9a\xec\x21\x83\x81\xb1\xde\xec\x76\x43\x6c\x7d\x4f\xe5\x79\x7f\x31\x44\xdb\x70\x5d\x9a\x29\x3b\xfc\x24\x16\x54\xae\x8c\xde\xe2\x0c\x5d\xc0\xaa\xb1\x14\xfe\x09\x49\x04\xb3\x28\xb2\x27\x65\xcd\xe6\xb1\x01\xc2\x5a\x0a\xbc\xf4\xd5\xef\xc2\x43\x86\x6b\x70\x2f\x4a\x58\x6a\x5d\x9b\xb9\x20\x94\xbc\x58\x9b\x63\x86\x2b\x41\xe0\x26\xed\xcc\x4f\xe8\x18\x01\x42\xf1\xda\xbb\x56\x7d\x89\x61\x25\xbe\x2d\x51\xed\xfb\xb6\x7c\x30\xd8\x33\xc2\x2f\x78\xc2\x8c\x0f\x9c\x4b\xad\x5b\xc0\x0b\x75\x3d\xea\x47\x59\x37\xec\xfd\xad\x50\x78\x3d\x5b\xbf\x16\xb6\xdb\x81\x0d\xb9\x40\xf5\x18\xf9\x21\x68\x19\xc2\x59\xed\xbe\xf4\x55\xbd\xb7\x66\x63\x8c\x80\x01\x1d\x13\x0a\x6a\x1a\x41\xcb\x34\xc3\xda\x11\x2a\xaf\x3d\x77\x18\x3a\x7b\x95\x41\x40\x38\x2e\x2e\x8a\x8e\x41\x78\x96\x84\x8d\x55\xdc\x66\x81\xb2\x36\x6e\xe2\x19\x74\xc6\x5b\xd0\x87\xe3\x2d\xa8\x71\x82\xf4\x74\x98\x53\x39\x9e\xdc\xa8\x37\x3b\xc0\x53\xe0\x8d\xc6\x4f\x99\x91\x06\x3e\x5c\x33\xbe\x47\x87\x93\xd0\x99\x01\x8f\xdb\x80\xfa\x6a\xda\x0c\x66\x9c\x06\x10\xd4\x1c\xb5\x03\x34\x19\xe8\xd9\x17\x22\xde\xe0\x29\x42\x78\x56\x87\xd0\x70\x1b\x81\x5b\x6c\x6d\xb3\x44\x27\xbe\x37\xbd\x3b\x51\x76\x4f\x84\x0f\x01\xd1\x4d\x0d\x87\xb9\xe8\xe0\x30\xad\xe9\x8e\x78\xae\xdc\x44\xb4\xbd\x1e\x1a\xa6\xac\x05\x15\xda\x27\x0a\xf9\xd6\x7e\x5b\x85\xe7\x30\x55\xef\x4d\xf6\x01\xcc\xdd\x71\xc9\x3e\x3a\x73\x7a\x7c\xe3\xa4\xc1\xd4\x82\x84\x76\x40\x42\x02\xc1\x6b\xf0\x13\x14\xac\x16\x56\xc3\xa8\xd0\x17\x9b\x15\xc8\x7e\xc9\x8f\x89\xc0\xb2\x3c\x81\x72\xef\xff\xfa\xee\xea\x23\xa1\xc9\xf7\x57\x7f\xb8\x7c\xf9\xe3\x44\xfd\xf4\x02\x01\xf4\x65\xdc\x81\xee\xe3\x7f\x01\xb0\x3e\x41\x15\xa5\xb6\x5a\x84\xa9\x5d\x5d\x61\x55\x6a\x7f\xfa\xe6\xb2\xd8\x08\xc6\x17\xc7\xad\x89\x29\x9c\xb3\x9b\x67\xf4\x8b\x78\xe6\x12\x86\x3f\x58\x3c\x2f\xa6\x99\x9c\x9e\x67\xd9\x9a\x1d\x5f\x98\x17\x9c\x4e\xcc\xaf\xe3\x3f\x5b\x66\xd5\xf2\x6b\x3e\x63\x95\x28\xca\xfb\xaf\xf8\x32\xdb\x88\xe2\xf8\xcf\xaa\xfb\x4a\xd0\xd5\xb3\x05\xe5\xb4\xcc\x04\x9d\x3c\x62\x1a\xf5\xa7\xee\x8b\xc9\xbc\x38\xfa\xab\x59\x95\x1f\x5b\x54\x3e\x3a\xbe\x3b\x50\xfa\xd8\xc2\x90\xe9\x7c\xb2\xce\xca\x6c\xf5\xf0\x2e\xab\x68\x79\xcb\xa6\xd4\x3e\x7c\xdc\x07\x8f\x98\x50\xc0\x3b\x3d\x2a\xe1\x0e\x9e\xe3\x35\x5e\xfd\x66\xf9\xca\xbf\xb7\xbb\xe8\x28\x38\xd3\xd2\xf8\x39\x1c\x84\x48\x7d\x57\x70\xfa\xc8\x8a\xf9\x51\x15\xff\x31\xab\x96\x8f\xac\x98\x1d\x57\xb1\x3a\x8b\x8f\xac\xbb\x38\xaa\xee\xcb\x8d\x28\x1e\x59\x71\x76\x54\xc5\xe6\x44\xbf\xf4\x0e\xf4\x91\xa0\xb4\x5f\x57\xfd\xeb\x4c\x5e\xec\xf7\x8f\xc0\xd3\xdd\x53\xc3\xc1\x76\x1d\xb5\x79\x5d\x1c\x3b\xa2\xfc\xa8\x11\x7d\x84\x43\xfa\xea\xfa\xfb\x23\x6b\xdd\x3c\xa2\xd6\x23\xab\x9c\x1e\x5f\xe5\x91\x35\xce\x8e\xaa\xf1\xcf\x92\x0c\x7e\xd0\x54\xf0\xa8\x7a\x97\x47\xf7\x94\xf1\xc5\xb5\xa2\x83\x47\x56\x3d\x7f\xc4\xbc\x3e\xae\xe6\xf5\x51\x35\x7f\xb7\x99\xfe\xac\x13\x79\x1d\x59\xef\xca\xab\xf7\x41\xe6\xa6\x8b\x5f\x79\x38\xd5\x9c\x77\x59\xba\x0f\xa1\x2e\xef\xfa\x05\xf1\xfb\xc1\x5b\x46\x31\xb3\x1d\xd7\xcb\xaf\xe7\x60\xf5\x34\x18\xc5\x9b\xbd\x0f\x12\xad\x34\xdc\x76\x5b\xe9\xd2\x51\xf4\x8b\xb7\x03\xc7\xd8\xfb\x05\xb0\x0f\x78\xf2\xcb\xfa\x15\xcd\xe9\x22\x13\xd4\x3e\x50\x18\x6b\x33\x1f\xa8\xc5\x43\xd7\x00\x24\x0b\xcc\x0c\x6a\x5f\x99\x96\x1a\x73\x6a\x88\x39\xf8\x3f\xd3\xc4\xab\x54\x8a\x95\xc0\xb5\x2e\xa8\x40\x10\xb5\x8c\x6a\x2c\xca\x8c\x57\x4c\xce\xd0\xa7\x02\xb6\x5b\x20\x9f\xbb\xe2\x20\xd8\x45\x2a\x0f\x21\xa4\xb3\x06\xf8\xfa\xf0\xd3\xdd\x2e\x7c\x88\x59\x5b\xc0\x2f\x3c\x01\x1f\x4c\xe5\xc3\xf3\xec\x39\x03\x3c\xb5\x62\x94\xf9\x02\x7e\x36\x76\xf0\xcb\x46\xef\x08\xc9\xeb\xd7\x25\x9d\xb3\x2f\xd0\xe2\xbb\x6c\x45\x2f\x4b\x9d\xfc\x1e\x17\x72\x40\x1a\xe9\xe3\x91\x63\xf1\xbf\x92\xc3\xd0\xbf\xff\xca\xc4\xf2\x9f\x31\x8a\xda\x40\x9c\xda\xdd\xd5\x73\x1b\x8f\x1d\x75\xfc\x42\xfe\xbf\xe3\xf0\x75\x08\x78\xdf\xfa\x70\xe8\x88\xeb\xad\x36\x17\x84\x4a\x32\xb6\x5a\xab\xac\x42\xd0\x4d\xe3\xe3\x1a\x3e\xad\x9c\x87\xd4\x49\x69\x8c\xa5\x41\x24\x4b\x8d\x1b\x5f\xa4\xdb\xba\xf6\x26\x4b\x3c\x72\xb2\x42\xb9\xe2\x30\xcd\xba\x29\x8b\xbb\x8a\x96\x4f\x3b\x93\x5c\xee\xa7\x6d\xad\xb4\x93\x9d\xc4\xcc\x25\xc4\xfc\xfa\xec\x9b\x9d\x43\x94\x5f\x1f\x62\xbc\xbf\x89\x8c\xaf\xb9\x49\x48\x8c\x38\xd5\x8f\xb2\x6a\x09\xbf\x67\xed\x7d\xa2\xb4\x27\xb9\x8d\x2e\x61\x89\x6a\xb6\xe1\x66\xae\x42\x4c\xda\x91\x4c\x8d\x5d\x43\x22\xb9\x8c\x91\xb1\x2a\x18\x3d\x99\xf2\xb7\x2e\x0a\xf1\xc3\xc7\xef\xb1\x68\x2a\x20\xb6\x66\x82\x52\x81\x37\x15\x2d\x2f\x17\x94\x8b\xb4\xc4\x5a\x46\x4d\x39\x9e\x15\x53\x68\xf4\x6d\x31\xa3\x29\xc3\x2a\xbc\x27\x2d\xb0\xae\x32\xcd\x6a\x42\x71\x4e\x22\x29\x43\x47\x78\x43\xfa\x67\x0a\xc0\x0d\xb2\x2a\xbc\xde\xe4\xb9\x1c\x3d\x8a\x95\x26\x1c\x9e\x57\x9b\x35\xec\x2e\x3d\x5b\x08\x82\xda\x8c\xd3\xd7\x34\xce\xb0\x40\xbd\x25\x21\x64\x7e\x91\x93\x48\x77\x24\x4a\xa3\x67\xff\x12\x11\x42\x96\x06\xa7\x6e\x88\x7f\x8f\x2e\x62\x6e\x68\xd6\xb5\x90\x87\x04\x32\xcb\xa4\xf3\x1a\x47\x11\x9e\x23\xec\x7d\x8f\xd2\x78\x43\xfa\x43\xa5\xbc\xd3\xdf\xe8\x9e\xe1\xb9\xb5\x9b\x37\x7b\x98\x55\x4b\x75\x17\xa9\xd4\x79\xc6\xbd\x66\xe6\x3a\xb9\xde\xed\xa2\x67\xd0\xb1\xc1\x20\x7a\xf6\x2f\xf0\xe7\x1a\x3a\x9e\x55\xcb\xe8\x40\xa3\x6b\x04\xd8\x78\x1b\x67\x88\x31\x2c\x6d\x1d\x7b\xab\x22\x57\xcf\xfc\xb2\xab\x02\x4f\xf5\x0f\x6f\xd9\xe0\xb1\xfd\x69\x57\x88\x86\x6b\x08\xa5\xfc\x27\x66\x4d\xe1\x85\xfa\xbb\x46\x3d\x85\x91\xa0\xe0\x6e\xc0\xc7\xd3\xdc\x20\xd3\x8c\x4f\x69\x6e\x98\x34\xb1\x59\x47\x60\x9d\x17\x7a\x0b\x78\x30\xd5\xbc\x99\x1c\xc7\xe4\xc0\x89\xec\xf8\xa2\x53\x01\x57\xb6\x6e\x81\xe1\x48\xf7\x3a\xd2\x9a\xd6\xb0\xe9\x82\x4f\x4b\x2a\xe8\x9b\x60\xe3\x47\x98\xa1\xfa\x8e\xe5\xb9\xc6\x72\x51\x5b\x7f\xdb\x5d\x38\xa5\x3a\x04\x17\xa8\xf1\xcc\x7c\xe1\x29\xeb\x37\x9e\x4e\xb2\x8d\xec\xbc\xaf\x5a\xa1\xc3\x3c\xcb\xf6\xb5\xc9\xbd\x6b\xb3\x34\xc9\xca\x4a\x40\xdd\xe1\x23\xe6\x5f\x9b\x6c\xec\xf0\x4b\x8b\x44\x94\xf7\x6f\xf8\x6d\xf1\x33\x95\xdb\x85\x86\x58\x2d\x53\x0f\x5a\x02\xeb\x80\x31\x38\x71\xe6\xb4\x99\x98\x31\x4d\x82\x90\x0a\x4b\x36\x8f\x40\x2a\x50\x87\xd2\xf3\x2a\x31\x0e\x89\x6a\x17\x17\xe1\x49\x2b\x49\xcc\xdd\xb3\x33\x8b\x63\xf6\x2f\x11\x42\x89\x4a\x99\x8e\xb0\x3a\x0a\x0c\x5c\xef\x2f\x45\x6c\xf3\x0e\x9e\x41\x4c\xb1\x45\x36\x8b\xcf\x10\xc2\xec\x94\x94\xa7\x99\xc5\xec\x1d\x0c\x62\x76\x4a\xa2\x7f\x89\x4e\xb9\xf6\x54\x97\x35\xa3\x94\x9d\x92\xec\xb4\xf0\x1d\x68\x67\x01\x7a\x1b\xe6\x44\x4d\x86\xa9\xdb\x18\xa2\xec\x70\x22\x85\x86\x13\x47\xcf\xe0\xaf\xd1\x70\x0c\x16\xba\xe8\x59\x74\xca\x11\x2e\x75\xa3\x08\x97\xb5\xa3\xd0\x39\xce\x2d\x67\x6b\xce\x51\xf4\x2c\xc2\x8c\x33\x01\xa4\x26\xdd\xc4\x91\xfd\x11\x21\x29\x3e\xc8\x32\x9b\x38\x52\x7f\x45\x00\xe3\xa7\x1f\x55\xe6\x91\xa6\x01\xfa\xb1\xfb\x15\x21\x5c\x70\xc0\xd9\x34\xef\xbc\x9f\x11\xc2\xf3\xa2\x5c\x65\xa6\x36\xfb\x23\x42\xd8\x11\x8a\x0e\x2a\x61\x49\x84\x39\xe0\xc9\x1d\xe3\xb3\xe2\xce\x27\x19\x1e\xbd\x68\x1d\x6c\x95\x9b\xe2\x51\x9c\x44\x43\x25\xfa\x28\xe9\xe7\x10\x1f\xe0\x25\xcf\xfe\xb5\xf7\xfd\x37\x67\xf7\xb4\x2b\xbd\xbd\xc6\xcb\x5f\x79\x8d\xc3\xcd\x51\xcb\xcd\x15\x03\x80\xbf\xf0\x49\xa0\x9b\x5b\x65\x12\x31\xbf\x77\x3b\xb5\xb6\x76\x1b\x20\x87\x19\xb4\x54\x48\xd3\x7f\xcc\xf8\x2c\xb7\xb8\x40\xb5\xa6\x0c\xb1\x07\x84\xcc\x3c\x72\xe1\x5f\x3c\x60\xaa\xf9\xe1\xe3\xf7\x21\x53\x61\x2b\x70\xa7\x1a\x0b\x8b\xc3\xaa\x4e\x9b\x50\xa7\x4d\xc8\xd3\x86\xa9\xfc\x4b\x1d\x37\x8a\x10\x16\xb5\x3a\x17\xd6\x96\x6a\x9a\x4b\x64\x9f\x09\xc5\xad\xb1\x67\x95\xb8\xa6\xe6\x76\xa8\xdd\xf1\x69\xd7\x60\x90\x0f\x55\x5b\x0f\xd5\xe4\x1d\x36\x17\x1a\xa5\x40\x4e\x21\x21\xae\x71\xe9\x8c\xf7\x4f\x2a\x5c\x77\x37\x8c\xcf\x74\x13\xb1\x77\x75\xe8\xf0\x4a\x3d\x67\x30\x8f\xca\xa1\xc5\x75\x43\x67\xf0\x3f\xd4\x4f\xe5\x2d\x49\xe3\x12\xc1\x99\xd4\xcb\x9d\xcd\x66\x61\x17\x23\xd7\xb7\x68\x5f\x6f\x01\x21\x48\xd1\x10\x0f\x0c\x50\x4e\x55\xe3\x1e\x3d\x30\x13\x75\xf7\xe3\xed\x9e\x26\x07\x03\xdd\xe1\xae\xaf\x8e\xeb\xb3\x47\x9e\x8b\x47\x52\xa5\x96\xc5\xe5\x9b\x11\xa6\xaf\xa5\x43\xbf\x89\xd0\xc9\x48\xff\xcc\xd9\xca\x0b\xe7\xc6\xf1\x45\xff\xf7\x14\xfe\xf7\x6f\xf2\x7f\xf7\xe6\xa7\xf9\x2f\xb2\x87\xe6\xd9\xe8\xcb\xfd\xf8\xd9\x22\x94\x91\x55\xc8\x93\xb1\x49\x92\xb3\x7f\xff\xd7\xb7\x99\x58\x26\x65\xc6\x67\xc5\x2a\x46\xbb\x21\x8e\xa3\x2f\xf2\xf6\xa7\x17\x22\xfd\x1f\x03\xb1\xfb\xdf\xc8\x05\x85\x9d\xfd\x3b\x38\xa7\x2a\x4a\x99\x7d\x3b\x4a\xa9\x99\x7b\xec\x0b\x39\x92\xd4\x74\x11\x37\xbe\x97\xb8\x69\x52\xab\x6d\xcc\xed\xc6\x7b\x8a\xe8\x19\x9e\x39\x01\x1d\xd6\x35\xcd\x29\xf4\x37\xba\xc9\x2a\x0a\x0a\x95\x28\x32\x49\x4b\x80\xb9\x5c\x66\xd5\xa5\x10\x25\xbb\xd9\x08\x1a\x47\xcb\x92\xce\x23\xc5\x06\x81\x60\xd8\x7a\xd5\xa6\x52\xb2\x62\x38\xfa\x65\x07\x05\x0b\xef\x81\x07\xaf\x81\x75\xb1\xae\x24\xab\xd2\xb8\x04\x2c\x0b\x13\x92\x76\x3d\xb1\xb6\x36\xfd\xfb\xbc\xd9\x0b\xbb\x00\x2a\x29\xf4\x16\x9a\x48\xcb\x1a\xd8\x32\xa8\xc9\x11\x9a\x80\xfe\x41\x04\xaf\xca\xae\x04\x4a\x3c\xdd\xc9\x92\xde\xb2\x62\x53\xc9\x55\x0c\x8a\xa7\x3a\x6a\xd8\x13\xf5\x1a\x97\x92\x13\x99\xa8\x15\x7c\x04\xd6\x33\x28\x7b\x04\x1d\xe6\x44\xa5\x2b\xe2\xd9\x8a\xf6\x04\x11\x6e\xcb\xff\xf4\xec\xc9\x33\x1c\xc1\x32\x96\xed\xa7\x36\xef\xbb\x79\x23\x39\xfa\x8f\x74\x71\xf5\x65\x1d\x7f\xfe\x7f\x4f\xb6\x65\x1d\x5f\x90\x67\xbb\x27\xe8\x33\x92\xc5\xf7\x15\x13\x7b\x8a\x3d\xfb\xe9\xd9\x4f\xcf\x9e\x2d\x24\xfb\xec\x72\xf9\x9c\x92\x98\x26\x15\x64\x5a\xdc\xed\xa2\x08\x9d\x86\x97\xae\x77\x79\xba\x99\xd7\x52\x88\x59\xaf\x1e\x6d\x2e\x02\x45\x58\x0c\x06\xc2\x4c\x3c\xd5\xe9\x4a\xd7\x9b\x6a\xa9\xa6\xb5\x75\xaf\xfe\xfa\xca\x83\x65\xa3\xa8\xf6\x1b\xd3\xaa\x31\x25\xb7\x53\xbc\xd9\xb0\x59\x5a\xc4\xa8\xee\xf9\x2d\x79\xdd\x53\x10\x09\x98\xda\x6d\xbd\x6f\xc7\xd4\x8d\x56\x8f\x6b\x28\xf8\xe8\xf8\xb6\x1e\xcd\x3f\x34\x4f\x23\xc0\x74\xc4\x0c\x92\xde\x1b\x20\x77\x53\xbb\x85\x30\xf3\xda\x47\x68\x30\xa0\x8d\x13\x55\xef\x67\x09\x4c\x73\x51\x77\xf3\x0d\x76\x40\xae\xf8\xde\x23\xe4\x0b\x55\xf4\x22\x7e\xc4\x19\x42\xa9\x92\x0e\x4b\x60\x09\xd5\xdf\x9a\x3d\xec\x2e\x8f\xcb\x53\xf1\xed\x38\x92\xc6\x98\x0f\xf3\x23\x0f\x4e\x98\xc7\x8b\x64\x8f\xe3\x45\x1a\xbe\x26\xdf\x8c\x11\xe9\xf4\x5c\xc2\xe5\x6f\x24\xed\xf0\x6f\x76\x87\x83\xd2\x28\x50\x5a\xda\xcd\xa7\x55\x35\x21\x9d\xd7\x07\xd8\x6e\xd0\x60\x5b\x9e\x74\xef\x47\x7a\x24\x41\xf6\x68\x6a\xf3\xa6\x93\xcd\xee\x95\x15\x14\x04\xce\xcb\x2c\xcf\x6f\xb2\xe9\xcf\x84\xd6\x4b\xd8\x27\x0f\x54\x85\x3b\xbe\x05\xf8\xf2\xbd\x87\xb1\xe3\x08\x2a\x1c\x8c\xae\xd3\x23\xcf\x8e\xb7\x4d\x39\xe6\x56\xa3\x01\x73\x18\x45\xd8\xd3\x6c\x3c\x56\xd0\x07\xbe\xd6\xdb\xbd\x87\x2c\x2a\x1e\x4c\xa9\x33\x86\xb8\x7b\x78\x9f\xbc\x78\x0a\x39\x31\x5c\xdc\xab\x9f\x4a\x56\x5f\x8c\x5e\xf8\xaa\xf7\xd6\x45\xac\x80\x24\x79\xa1\xfe\xb1\xea\x2c\x94\x46\x91\x17\x1e\xea\xf7\xa9\x28\xd9\x82\xf1\x9e\x8b\x79\x8f\x05\xf9\xfc\x44\x05\x4d\x88\x62\x5a\xe4\xf5\xb3\x67\xf2\xe7\xb2\xa8\x84\xec\x7b\xfd\x19\xd3\x44\x4e\x80\x96\x6c\xd3\xe8\x54\xfd\x06\xf1\xf6\xeb\x8c\x08\x60\x2d\x10\xea\x6f\xd0\xd3\x91\xd2\x99\x12\x08\x57\x7f\x1b\xc5\x7a\x97\xff\xa6\x9c\xe5\x53\x39\x5b\xa7\x5c\xa7\xc8\x5e\x50\xf1\x1e\x46\x46\x18\x64\x56\x6c\x6a\xb7\xbb\x1d\x82\x01\x04\x98\x7b\xa2\x19\x83\x67\x2e\xdc\x94\xee\x76\xf4\xc5\xff\x82\x16\x1a\x3a\xfd\x46\x85\x6c\x1e\xc7\x10\xb4\xe5\xa1\xd2\x5f\xf2\x59\x29\x2b\xfa\x7d\x12\xa1\xdd\x6e\xdf\xdb\x7f\x4b\x86\x91\xbc\xec\x9a\xef\xdf\x16\x37\x2c\xa7\x27\xd7\xd9\x3c\x2b\x59\x04\x05\x48\x50\xe0\xe5\xb2\x2c\x56\xb4\xeb\xcd\x5f\x81\xee\x57\x27\x1f\x96\xa0\xae\x6e\xe9\xdf\x4d\xfa\x6a\x39\x7c\xcb\x78\xc0\xd8\x61\xa4\x9e\x1a\xbf\xe9\x8c\x69\x4f\xa1\xdc\x53\xa7\x90\x95\xfd\x88\x23\xd5\x72\x25\x7b\xc0\x39\xb2\x9b\xf0\xdb\x9f\x2a\x8c\xe4\xd9\x54\xe3\xaf\xb9\x17\x95\x71\xa8\x88\xfe\xef\x22\x67\xab\x15\x2d\x9f\x69\x4c\xaf\x23\x5c\xfb\xf6\x7a\x16\x98\x98\xea\xee\x03\x5f\xf9\x1b\x4a\x5f\xf9\x17\x34\xa5\xe6\x2c\x5a\xe4\x14\xab\xb4\xfd\x9a\x43\xf3\xa0\x59\x4d\x17\xd8\x6a\x41\x4f\xc1\xb1\xc1\x8f\x8e\x0b\x6a\xa2\xd6\x21\x29\x78\x1c\xc1\x9f\x7e\x62\x38\x4a\x5e\x28\x92\x2f\x4a\xb6\x58\x48\x56\xa1\x5d\x04\xd5\xfb\x6a\xf2\xd2\xc7\xed\xa9\xc8\x2f\x81\x6a\x54\xfb\x8e\x05\xdf\x36\x86\x40\x67\x70\xae\xe8\xea\x26\xa7\xc0\x53\x02\xf4\x1f\x0a\xa1\x36\xf5\x08\x26\xb3\xe2\x87\x8f\xdf\x7f\xb2\x9d\x89\x23\xbf\x63\x11\x86\x2f\x7b\xea\xae\xd2\xa6\xfd\x94\xe3\x55\x31\xa3\x79\x95\xb2\xc0\xe9\xa3\x00\xcf\xff\x2c\xa1\x5f\x44\x99\x4d\x05\xa8\x9b\x2f\xcb\x45\x05\x16\x8a\x8a\x34\x9b\xf5\xda\x54\x7b\xad\x3f\xb4\x22\x52\x95\x4c\x7e\xa6\x74\xfd\x4a\xad\xae\xf3\x74\x02\xb4\xcc\x4a\x32\xd2\x55\xed\xb9\x34\x34\x50\x93\x82\xa9\x0d\xf6\x81\x0e\xea\xb0\x0a\xfa\x08\xd5\x9b\x32\x7f\xad\xa2\x3e\x5c\x0c\xe4\xe1\xe8\xa3\x17\x67\x17\xe2\xe9\x59\x3a\x44\x98\x93\x33\x3f\x0a\xe9\xe9\x59\x77\x1c\x52\x30\x72\xe3\x41\x17\x53\x9c\x24\x49\x89\x6a\x56\x5d\x4e\x05\xbb\xfd\x96\x98\x90\x47\x2d\x57\x75\x68\xb9\xf2\xc6\x72\xa9\x7f\xdf\xb2\x69\x59\xe4\xec\xc6\xb7\x65\x35\xe2\x2d\x0a\x1b\x6f\xe1\x57\x80\xa3\xe9\xa6\x2c\x29\x57\xb6\x0d\x84\xfb\xfd\x3c\x31\xe3\x7e\xc3\x05\xe5\x42\xee\x01\x34\x18\xc4\xfd\xd8\x0f\x90\xaa\x90\xc5\x6e\x46\x26\xe2\xcf\xf6\x69\x5d\xd2\x75\x56\x52\xcf\x0f\x0e\x36\x52\x05\x46\x4b\x18\x5a\xb5\xcc\xf2\xbc\xb8\xbb\xfa\x65\x93\xe5\x28\xae\x70\x9e\x00\xaf\x9f\x78\xd3\x80\x00\xd1\x6c\x5a\x2c\x38\xfb\xbb\x27\x4d\x56\x06\x7b\x50\x33\x52\xa8\x73\x2d\x1b\xd3\x92\xb8\x8a\x84\x57\xeb\x25\x9f\x7d\x5f\x64\xb3\x6f\x56\xb9\xa9\x4f\x04\xc2\x8a\x67\xd7\x12\x09\x08\x3d\x74\x86\xb7\x7a\xda\xad\x5b\x4e\x0a\xea\x32\x83\x9a\x82\xe2\xc8\xb4\xd6\x2c\x18\x21\xec\x96\xec\xa1\xaf\x1a\x16\xab\x7d\xa5\xad\x6c\x84\x2c\x7f\xba\xaf\xa8\xb1\x15\xdb\x5e\x40\xc7\x8e\xea\x7d\x84\x8e\xe4\x78\xdb\xae\xe1\x1d\xf7\xf3\xde\x4b\x77\x5d\xe4\xf7\x73\x96\xfb\x8e\x2b\xe6\x1e\xfe\x47\x28\x85\xd5\x55\xc8\xec\x55\x68\xbd\xad\xb7\xcb\xac\x52\xce\x62\x8d\x00\x1c\x3d\x55\xde\xeb\xf0\x0e\x6a\x66\x08\xf1\xbe\x09\xa9\xb5\x4e\x77\x6c\xdc\xbc\x07\x03\xd6\x26\xab\x98\xd5\x5c\x0a\x3b\x39\xfb\x7b\x70\x40\xfd\xa0\x9f\x03\xe7\x58\x83\x64\x1a\x5a\x09\x12\x93\x0f\x61\xe3\x7d\x0f\xb1\xab\xcd\xc3\x62\xe0\x3b\xb6\xb5\xd7\x4d\xe5\xef\x60\xa0\x6d\x0a\x6c\x34\xa8\x7b\x3b\x5a\x00\xc0\x69\x48\xb0\x05\xde\x86\x77\x1e\xaa\x2d\x05\x7f\x5d\x94\x7a\x6a\x9b\x89\x69\x83\xf1\xee\x3b\xd7\x72\x6d\x40\x09\x51\x29\xc0\x56\x9c\x91\x62\x54\xb8\xdc\x1e\xe6\x35\xae\x1a\xec\xa9\x97\x14\xc2\x04\xc6\x3a\xd3\x7b\x79\x4a\x2c\xbc\xa4\xbb\x4d\xe4\x13\x5d\x1d\xc4\xff\xc3\x15\x76\xee\xa2\x46\x4b\x5c\x78\x78\xce\x9a\x06\x57\xa0\xd0\xc9\x10\xe6\x4d\xe2\x5d\x42\x66\xd5\x3e\x0b\x28\x12\xc3\xcc\xca\xa5\xca\x39\x51\xd9\xd7\x41\x6a\xf6\x0e\xb1\x9e\x17\xaf\x88\x3b\xf6\x07\xbf\xf0\xcb\x34\x28\x85\xa1\x75\x07\x3e\xeb\x20\x75\x92\xf5\x7f\xe0\x2b\x59\xe4\x78\x0a\xe3\xc7\x86\x1c\x29\x52\xff\x7a\xd2\xe0\x1e\xb4\x83\x5b\xf5\xd1\x83\x1e\x01\x47\xf1\x36\x5b\xd7\x2a\x1a\x36\x20\x16\x50\xc0\x24\xe8\xab\x44\x56\x2d\x3b\x10\x48\x55\x21\x9d\xa2\xbf\x23\x4a\xfa\x6d\xb6\xc6\x5e\x41\x15\xf4\xc7\x91\xdc\x3f\x90\xec\x51\x1e\x71\xed\x37\xa4\x2b\x67\xf3\x58\x25\x99\x08\xe3\xe0\x4d\x8c\x5a\xbb\x55\x1b\x6b\xa2\xe2\xb0\x2f\xb8\xca\x3f\x89\xd2\xf2\x40\x10\xe1\x11\xf1\x50\xbf\xf9\x5a\x35\x75\x79\xee\xac\x69\x47\x2a\xd7\xa3\x34\x3a\x55\x78\xfb\x8f\x18\x0f\x44\x6a\xed\x75\x92\xed\xb8\xc4\x7e\x7b\xf5\xa2\x0e\x0b\xef\x85\xfa\x99\xbd\x48\x69\x54\xdb\x14\x8b\x76\x04\xaa\x53\x53\x0c\x06\x31\x25\xca\x7c\x0e\x7b\x83\x7e\x59\xe7\x6c\xca\x84\x02\xe8\x35\xa9\x94\xe4\xed\xc2\x6d\xb8\x2a\xe5\x90\x28\xb7\xc8\x66\x8c\x2f\xae\xa5\xb4\x9a\x09\x5a\x11\x4f\x39\x20\xf6\x94\x31\x90\x23\x99\x98\x2e\x69\x65\x51\x81\x8b\x35\x38\xea\x12\x51\x97\x8e\xfa\x1b\xc0\xef\x1c\xba\x87\x37\xe4\xf3\xb3\xc9\x86\x6f\x2a\x3a\x9b\xcc\x36\xab\xd5\xfd\x84\x96\x65\x51\x4e\xd6\x99\x58\xaa\x0b\x61\xf2\x64\x4b\xeb\x67\x29\x3c\xfe\x0c\x97\x9a\xdc\xcf\x31\x27\xdb\x5a\x72\xe3\x28\x65\x71\x09\xbf\x05\xce\x49\x89\x52\x4e\xc4\x6e\xb7\xad\x0f\x8d\x69\x30\x88\x2b\x1d\xdb\x7c\x1a\x4d\x72\xf5\x36\xc2\x5b\x29\x1b\x0a\x8b\xb3\x98\xf2\x24\x7c\x50\x23\xec\x7d\x06\x1d\x7a\xf8\x23\x0c\x9a\xc7\x8d\xdc\xa3\xb9\xc1\x81\xcb\x4c\x3e\xd7\x66\x61\x00\x17\xa4\x77\x27\x45\x3c\x0d\xa6\x10\xf5\xaa\x78\x86\x23\xd3\x53\xd9\x8f\x19\x8e\x4c\x0f\x4c\x0b\x38\x57\xa1\xc2\x33\xd7\x4f\xcc\xf1\xcc\x5d\xd4\xc6\xe9\xd3\xbd\x55\xa6\xa9\x26\xb8\x97\x9f\x04\xcd\x26\xac\xd1\x5d\x49\x28\x5f\x30\x4e\xdf\xf0\xb9\x4d\x93\x29\x74\x30\xc2\x9e\x62\xc9\x7c\x93\xe7\x72\x88\xfa\xba\x3c\x3d\xd3\x08\x58\x8e\xe7\x00\x53\x66\xfe\x5a\x97\x4b\xb3\x1a\xef\x6b\xb2\xc7\xe4\xe2\x25\x15\x2d\x55\xc0\xbc\x0e\xeb\x66\x28\xfc\x22\x9b\xcd\xe0\x1a\x7b\x5d\x94\x57\xf0\x71\x2c\x70\xe5\x5c\x5e\x99\x97\xa4\x4d\xa5\x73\xf9\xfc\x4a\x1e\x60\xc6\x17\x27\xd9\x09\x6c\xbb\x13\xdb\x44\x79\x52\x70\xfd\xcc\xa0\x9e\x6f\x44\xc5\x66\xf4\x24\xe3\x27\xaa\xf6\x13\x56\x41\x9a\x36\x90\xaa\xe8\x2c\xf9\x8c\x7a\x46\x57\xad\x94\xbc\xf2\x0f\x15\x08\xdc\x27\x21\xf3\x62\xa4\xb7\xc6\x09\x1d\x86\x67\x2a\x71\xcb\xe4\xb8\xbf\xd0\x80\xad\x4b\x06\x22\x53\x50\xa9\xb1\x4d\xc2\x59\xd4\xbd\xd1\x9b\x07\xb4\xe1\x58\x90\x17\xdb\x30\x8f\x16\x75\xf0\x46\xe4\x7f\x20\x11\x43\x94\x76\x22\x0a\xf9\xc7\xe9\xd9\x18\xcb\x7f\x7e\x3f\x46\x75\xbd\x2a\x36\x0a\x4d\xb1\x95\xa4\x76\x6b\x43\x1c\x82\x05\x2a\x69\x55\xe4\xb7\x2a\x0e\xe3\x6d\xb6\x56\x28\x68\xb4\x27\x92\x4c\x9e\xce\x9c\xc8\x3f\x90\x85\xe0\xd4\x07\x26\x07\x06\xa4\x79\x60\x0c\x18\x37\xe3\x95\xc8\xf8\x94\xbe\x99\xa5\xfc\xf4\x14\x43\x97\x3e\x14\x8c\x8b\x74\x8a\xcd\x16\x4c\xa7\x35\x5e\x12\x65\xaf\xed\x19\x24\x74\x8b\x3f\xb3\x04\x5c\xbc\xe8\x59\x74\x9a\x1b\x00\xc2\x23\xa8\x53\x1e\x52\x27\xe3\x31\xdd\x3f\xc3\x2b\xb2\x67\x1b\xf7\x56\x90\xff\xde\xd8\x3d\xdb\x05\xc8\xcc\xa4\xb7\x0f\xcf\x89\x2b\x91\xce\xc2\x43\x82\xf0\xc2\x92\x8e\x5b\x49\x2f\x16\x21\xbd\x58\x34\xe8\xc5\xbc\x96\x3c\x3c\x5c\x25\x8a\x6a\x2c\x10\xde\x90\x85\x47\x2c\xf0\xda\x24\x79\xeb\xe8\xdf\x4a\x41\x3f\xdc\x1c\x3c\xc7\x51\xb6\x96\xfb\x4f\xc9\xb6\xb5\x4e\x5c\x7f\x80\x2e\xab\xa9\xbb\x27\xb9\x4f\x95\x27\xc4\xaf\xc6\x3d\xbf\x3b\xd8\xf4\x04\x9a\xd3\x84\xee\xbe\x45\xa5\x9b\xfb\xa8\x7e\x90\x7e\xdc\xe3\x3b\x84\x55\xd7\xf4\x3c\x36\x3a\xa6\x9f\x1e\xd1\x2d\x7c\x74\xb7\xb0\x5d\xaa\x23\x7a\x57\x3f\x50\x66\x8a\x6f\x0c\xf2\x99\x24\x26\x4b\x3c\xc5\x9b\x00\xe2\xb0\xc1\x72\xb5\xed\x2c\xc1\x7a\x82\x75\x42\x71\x10\x75\x4c\xd1\x60\xd0\x87\xc4\x4a\x17\xca\x78\xa4\x9e\x27\x92\x5e\x7e\xf6\xa1\x5c\x2b\x4f\x9c\x0e\x61\x85\x1c\xa1\xd0\x1d\x69\x1e\xf5\xf6\x79\x55\xde\x34\x90\xbb\x09\x1c\x30\xb4\x05\x4d\x67\x05\x54\x0f\x31\xc3\x1c\x5c\xea\x35\x35\x47\x8f\xf6\xa9\xd3\x9c\xa3\xda\xfc\x55\x84\x47\xe3\xc0\xd5\xf1\x31\x75\x74\x02\x13\x3c\xca\x1e\xfe\x70\x30\x97\x6f\x7a\xf4\x53\x7e\xcf\x55\x3c\xb2\x14\xa1\x7d\x1e\xfa\x26\xab\xd8\x34\x42\x8a\x12\xf4\x4a\x52\x26\x4a\x73\x12\x6f\x8d\x2b\x5b\x1a\x23\xf2\xe2\x73\x6c\xfa\x3e\x03\xfc\xec\x13\x57\x05\xfa\xac\x57\x8e\x93\x06\x73\xee\x04\x65\x9b\xfd\x80\xe3\x52\x2e\x90\xd7\x19\xfe\x55\x06\x90\xbd\xf1\xd6\x60\x47\xec\x10\x26\x4a\xb4\x15\x5e\xea\xac\x46\x57\x4b\xcc\x88\x15\x31\x38\xea\x0d\xad\x4f\x92\x94\x2e\x7a\xc7\xae\x6f\x88\xc0\xf0\xdf\x41\xae\xa5\x87\xa4\x02\x56\x79\x9a\x1d\x7b\x1b\xdd\x2a\x5b\x02\x7d\x9c\xa0\x08\xb7\xe1\x53\xc6\xe7\xc5\xaf\x3a\x21\x1a\xf0\xa2\xe3\x4c\x74\xe8\x15\xff\x69\xa1\x77\x33\xba\x2e\xe9\x54\x1e\x86\xa7\x73\x9a\x89\x4d\x49\xbb\x35\xa3\x99\x38\xe0\xcf\xaf\xa9\x19\xd6\x8a\x94\xc9\xdf\x1e\x06\xed\x68\xf4\xea\xf1\xc4\xe6\x48\x1c\x8e\x6f\xb6\x45\xaf\x0d\xd9\x25\xb7\x18\xd4\x26\xaf\x9a\xcf\x3b\xac\xf9\xd4\x51\x6b\x42\xc8\x6d\xed\xed\x78\x9a\x7c\x7c\xff\xc3\xa7\xab\x8f\x93\xab\xbf\x5c\xbd\xfb\x34\x79\x75\xf5\xe1\xe3\xd5\xcb\x4b\x05\xce\xa4\xdf\x4d\x5e\xbe\x7f\xf7\xee\x4a\x03\x36\x79\x22\xf6\x1a\xaf\xba\xb3\x0a\xdd\x5a\x8b\x7d\xdf\x5a\x67\x9f\x9f\xa1\xc1\x80\x1a\xa5\xce\xb6\x96\x8c\x0b\x44\x87\x59\x5c\xc7\xdb\xac\x1c\xb1\x31\x11\x3d\x06\x19\xab\x2f\x20\xae\xc9\x24\x1f\x50\x51\xd7\xe9\xb3\x09\x9b\x3d\xd1\x39\x75\xc0\x88\xd3\x2a\x14\xb1\x59\x64\xa4\x32\x6e\xdf\xb8\x60\xf2\x46\x9e\xed\xba\xee\x1a\xe4\xca\x80\x52\x7d\x75\x58\xa5\x4e\x3f\x42\xb6\x35\x24\x7e\xb4\x1a\x40\xeb\xee\x63\x8d\x66\x46\x59\x20\x19\x6a\x5b\x8c\xdc\xc5\x5d\xb1\x6f\x98\xa2\x7a\x02\x3a\x32\xb8\xc4\xdd\x34\x2b\x73\x0e\x28\x5e\xc3\xcc\x3d\xf0\x88\x50\xfd\x47\x8f\x5b\x80\xbd\x98\x93\x98\x12\x21\x17\x45\xbf\xdc\xed\x46\x63\x07\xab\xc7\xbc\x59\x55\x2e\x47\x93\x5f\xd6\xc9\x2f\xeb\x0a\xb2\x78\x3b\x0b\xa1\xa9\xd1\x84\x72\xdb\x8c\x2a\xa7\xa7\x99\x8a\xe8\x06\xf6\x05\x1c\x5d\x92\x27\x5b\x3e\xca\xc6\xf5\x67\x97\xd6\x84\x0c\xcf\x2b\x07\x44\x78\x7a\x5a\x99\xbc\x25\x6c\x54\x8d\x7b\x11\x98\x13\x23\x42\x48\x9e\x54\xd3\x62\x2d\xe9\x6d\x2e\x59\x21\x51\x91\x02\xd5\x75\x3d\xc9\x40\x37\xfc\xe7\x0f\x2e\xda\xdf\xe2\x86\x19\x25\x78\xab\x88\xaa\xca\x66\x92\x04\x00\x5e\x81\xea\x09\x78\x51\x31\xbe\xf0\x8a\x36\xeb\xea\x28\x92\x6c\xca\x1c\xb2\xa1\xa9\x4b\x4a\x5b\x78\x2d\x4e\xd6\xfe\xf8\x45\xa8\x33\x8d\x4e\x69\x88\xbf\x6e\xa0\x33\xb7\xb5\x2f\xe5\xed\x33\xd5\xa9\xc1\x39\x93\x09\x2e\x08\xbb\x60\xa3\x59\x72\xfd\xe9\xf2\xd3\xd5\xe4\xfa\xc7\xb7\xdf\xbd\xff\x7e\x9c\x1e\xac\x03\x44\x05\x9c\x91\x32\xdc\x83\x06\x54\xdb\x43\xe8\x2f\x12\x35\xc8\x51\x36\x96\xd2\xe5\x7d\xa0\xbc\xf7\xad\xa9\x39\x4a\x4a\x3a\xdb\x4c\x69\x0c\x2b\x42\x5e\xa8\xac\xf2\xf9\x48\x8c\x31\x45\xb8\x42\xb5\x25\x48\xee\xc2\xfc\x13\xbd\xf7\x69\x56\x57\x91\xce\x64\xab\x66\x58\xdd\xe5\x4b\x54\xcf\xe8\x63\xab\xda\xf7\x45\x89\xea\x89\x96\x07\x5e\x17\xa5\xff\xca\x0b\x12\x08\x4e\x8d\x67\xc2\x49\xa2\x53\xbb\x5b\x34\xb4\xe0\x81\x82\xeb\xb2\x58\xa3\xdd\x6e\x5b\xd7\xc0\xb5\x3b\xb6\xac\xa3\xe3\x35\xfd\xe2\xa2\x0f\x66\x14\x36\x85\x92\x38\x43\xf7\x10\xf7\x2a\x32\xaf\x34\x3e\xff\x5f\x18\xbd\xab\x62\x54\x4f\xcc\x05\xf8\x91\x6a\xe4\xbc\x50\x0f\x6f\x7b\xd1\xe3\x3e\x40\x46\x27\xb1\x50\x22\x68\xc2\xb8\xda\xa4\xa6\xc9\xe6\x70\x38\x86\xe3\x47\xb9\x4a\x7e\xb9\x52\x1a\x7b\x59\xcb\x68\x6c\x72\x22\xee\x1b\x90\x1b\x4e\xed\x0f\x7b\x5b\xfb\x7f\xff\x46\xfe\x2f\x5d\x1b\xa7\xe9\x0f\x12\x0f\xf1\x72\x3f\x5e\x85\x40\xa8\x86\xf9\x5e\xd1\x19\xcb\x84\x77\x8c\xbf\x69\x47\x15\x8a\x66\x92\x24\xea\xaa\x3c\xd8\xa1\x5e\x30\x9c\xbd\x9d\x53\xd5\xa1\xba\xa4\xf3\x92\x56\x4d\xaf\x98\xfd\x7e\x05\xaa\x34\xd0\xc1\x86\x57\xcd\x6f\xb9\x2a\x7e\x4b\x47\x2d\x8a\xcd\xb2\xe9\x92\x69\x36\xb6\xbf\xfc\xc6\x57\xff\x69\x14\xf7\x46\x29\x79\x19\x30\xf0\x36\x62\xf3\x98\x93\x4c\x7f\xd1\x16\xb5\x62\x66\x72\x9e\x7b\x52\xa0\xce\x30\xd6\x71\xb4\x22\x84\xbd\xc4\x38\xd5\x85\x2b\x52\xe1\x68\xed\xdd\x6b\x55\x84\xd2\xd1\xf8\xbc\x81\x44\x29\x7c\x24\xdf\xad\x7f\xf9\xc4\x0a\x95\xc7\xc0\x83\xbe\x2e\x4a\x73\x4b\x2a\xbe\xc9\x10\x03\x70\xbf\x51\x17\x99\x03\x13\xd5\xac\x95\x06\x9c\xe6\x7e\xee\x25\xab\x60\xe0\x0a\x95\xbd\xf3\x0d\xe0\xb3\xeb\x1e\xf8\x7c\x31\xd4\x8b\x21\x5b\x8c\x9f\xcb\xe7\x25\x88\x03\x28\x86\xf4\x3d\x50\x2f\x60\xa0\x42\x3d\x35\x42\xb5\xd2\x1a\xcd\x66\xef\x75\x92\x0c\xa8\xe6\x14\x90\x7f\x30\x55\xf8\x3e\xfa\x12\x87\x0c\x26\xa8\x46\x31\xc7\x1b\x8f\x7f\x53\xcb\x40\x78\xad\x6c\x0c\xdd\xeb\x30\x27\x53\x4d\xe8\x14\x24\xb3\x4f\x14\xe7\x09\xa8\xaf\xdf\xdf\xd2\xb2\x64\x33\x2a\xf7\xd6\x16\x36\x1f\xb0\x70\x40\xeb\x61\x91\x1a\x1e\x4c\xa2\x79\x7d\xab\x2d\xf6\x86\xcf\x0b\xad\xc1\x5d\x6b\xa6\xe0\xc6\x61\x51\xe1\x15\x91\xdf\x7d\xb8\xfc\x78\xf9\xf6\xda\x7c\xd8\x9b\x26\xc1\x6e\xe8\xc8\x08\x31\x4d\x56\xd9\x7a\x44\xc7\x3d\x61\xc4\xd4\x95\x03\x5f\x58\x26\xd3\x2c\x9f\x6e\x72\x70\x2e\x9f\x2e\xa9\xbc\xb9\x62\xa1\xba\xd3\x60\x16\x84\x62\xcb\xb0\xa9\x46\x72\x89\x6b\xc3\xeb\x30\x49\xe2\x93\x0d\x9f\xd1\x69\x01\x1a\x0f\x2d\xb4\x80\x93\x9d\x8f\xdd\x20\xef\x82\xc2\x24\x96\xbd\x25\xf7\xfa\x48\x36\x27\xc4\x7d\xe2\x33\xf6\x1c\xdf\x6a\x95\x1d\x9c\xdf\xd6\x15\xa3\x1d\x2a\x3d\xcc\x19\xab\xdb\xab\x96\xc5\x26\x9f\x7d\x94\x7b\xab\xd4\x89\xfd\x4b\xf8\xf1\x89\xae\xd6\x39\x84\x8a\x59\x2c\x89\x79\xbe\xa9\x96\x97\xd5\x3d\x9f\x9a\x9d\x55\xa1\x58\xee\xa0\x00\x74\xca\x18\x99\x1b\x99\x34\xfd\x15\xdb\x3f\xc5\x65\xe7\x14\x97\x7a\x8a\x4b\x33\xc5\x3d\xae\x76\x92\x9a\x5f\x54\xd7\x37\x74\x5e\x94\xf4\xad\x64\x9a\xe1\x12\x9c\x4b\xea\x6b\x7e\x95\x74\xc6\x4a\x15\x20\x51\x6b\xf1\xc4\x7a\x8a\x5a\x6b\xbd\x72\x3d\x80\x6f\x88\x2f\xc8\xd4\xc0\x89\x83\x51\xdd\x64\xb0\x90\x22\x6e\xe7\xbd\xbf\xca\xd6\x5e\xe6\xc2\x1c\xa4\x39\x04\xc2\x60\x80\xe3\x25\xb9\xfa\xdd\xae\x1a\x0c\xa0\x84\xc9\x58\xb8\x21\xb9\x32\xbc\xc4\xcf\xfe\x5f\x9c\xfc\x2b\x02\x81\x0f\x99\x98\xc8\x0d\x64\x88\xd9\x8c\xce\xc6\x38\x23\x74\x94\x8f\xe5\x36\xeb\x0f\x6b\x95\x63\x4a\xce\xb7\x49\x6f\xd6\x64\x5d\xa9\x46\x51\xd7\x66\x12\xb0\xdf\x3c\x3f\x33\x68\xea\x46\x1c\x3c\x70\xf2\x46\xe1\xb7\x4f\xcf\xc6\x76\x6e\xfc\x3b\x67\xce\xf8\x4c\x4d\x39\xc3\x59\xc0\x7a\x86\x7e\xf1\x60\x60\x82\x72\x3a\x3a\xc8\x4a\x0f\x8d\x4b\x85\x22\xb9\xb4\xae\xda\x7d\x8c\x66\x25\x8a\x92\x46\x08\x3a\xd0\x00\x7a\x6a\x1e\x07\xed\xe0\x64\x53\x3f\xaa\x34\x30\xee\x14\x52\xac\x05\x2f\xd9\x72\x78\x9b\x79\x0a\xd0\x4e\x01\x95\x91\xb2\x53\xc0\x19\x0c\x58\xe3\xf6\x04\xd5\x59\xf3\xa1\xc9\xfc\x53\x76\x3b\x27\x50\x2f\xe9\x58\xc7\x25\x6a\xdd\x1e\xbb\xba\xe6\x3c\x49\x2d\x82\x20\x60\xa2\x20\xb5\xb5\x3d\xb9\x4d\xe0\xbd\x83\xf3\xe9\xb4\xa6\x13\x7b\x98\x9d\x8b\x47\x89\x6d\x1a\xa4\xbc\x27\x88\x3a\xfa\xd9\x4d\xee\xaf\x0e\xbb\xb8\x8b\x4b\x4c\x51\x4a\x5b\xf3\x63\x26\x59\x67\x09\x80\x63\xc2\x8c\x1d\xb9\x18\x0c\x0a\xb7\x95\x76\x3b\x48\x37\xf9\x40\x72\x59\x9d\x79\xd0\x6c\x76\xb5\xeb\x2a\x9c\x21\x97\xb5\x21\x7c\x25\x25\x7a\xb3\x2a\xb2\x3d\x9f\x86\xd4\x0d\x2a\xea\x67\xef\x95\x2f\x20\xc6\x12\xfe\xf0\x36\x56\xd3\x3b\xc4\x64\xcc\xe9\x8b\xc1\xa0\x5f\xf6\x8a\xdd\xae\x9d\xe8\x42\xec\x76\xe5\x05\x23\x22\x8d\x19\xa1\x89\xd0\xed\xa9\x51\x53\xef\x34\x95\x44\x20\xb5\xc9\x3c\x05\x5d\x73\xb5\x29\xc2\x4b\xa3\xe8\x2a\xc1\x78\x0a\xac\x70\x01\x69\x23\xb9\x28\xfc\x48\xa9\x67\x0b\x1c\x25\xc0\x8f\x95\x49\xb1\x11\x39\x15\x78\x49\x4a\x6f\x5b\xe3\x29\x29\xd5\x49\x47\xbd\x0d\xd9\xec\x76\xd1\x2a\x63\x3c\xc2\xc5\x45\x9c\x11\xbf\x6b\x55\xab\xe3\x19\xa4\xf1\x61\x5d\xcd\x55\x24\xf3\x1c\xa1\x94\x99\xb5\xb8\xa0\x2d\x0e\x75\xd6\x7d\x90\x32\x94\xee\x7d\x23\x27\xac\x59\x8d\xd7\x4f\x95\x34\xbb\x99\xf2\x7a\x69\xb0\xb7\x96\xbd\x25\xd9\x53\xf5\x1c\xd5\xb6\xc7\xd3\x8b\x29\xa1\xc1\x56\x49\x97\x20\xf8\x19\xca\x33\x45\x56\xc7\xe8\xaa\x33\xd3\x93\x46\xa7\x15\xea\xe5\x60\xf2\xbd\x51\x88\xfc\x92\xe5\x5c\xbb\x5e\xc2\xaa\x19\xe4\x7f\xc5\x4c\x6c\x41\x6f\x9d\xce\xb0\x5c\xc2\x34\xc7\x6a\xb5\xd2\x0d\x06\x6b\x77\x86\xbd\xbe\x2e\x95\x1f\x7b\x3a\xc5\xb6\x45\x7b\x16\x57\x17\xab\x78\x86\x52\x9a\x4c\x44\xb1\xfe\x9e\xde\xd2\x5c\xca\xce\x76\x87\xcf\x5c\x86\x83\xdb\xda\x78\x85\x08\xd4\x5b\x29\x77\x31\xd0\x00\x29\x63\x1a\xb0\x13\x9b\xa4\xe0\x53\xda\x74\x61\x9f\x54\x54\xbc\x87\xee\x55\x52\xb2\x65\xd5\xb4\xe0\x9c\x4e\xf5\x33\x8f\x4e\xf5\xe4\x40\xdb\xf9\xc7\x2f\x04\xa1\x69\x0c\xc1\x68\x6a\x4b\x96\xd6\xb2\x28\x3b\x7b\xe1\xff\xe8\xd8\x5d\x26\x65\x02\xc2\x82\x08\xbb\x61\x55\x17\x5b\x9d\x01\x0f\x5d\x97\x8c\xe3\x20\xd9\xf3\xfd\x21\xe1\x52\xd5\x40\x56\x56\x69\x68\xf0\xac\x34\xff\xd3\xdd\x5a\xdd\x7e\xec\x51\x8f\x1b\x43\xee\x07\x03\xc8\x44\x13\xec\x09\x61\xf7\x84\xeb\xb1\xb7\x32\x5d\xdd\xd1\x1e\x3c\xb2\x57\xbd\x42\xcf\xa7\x32\xfd\x14\x40\x0c\xb4\x5f\x06\x28\xa2\xf5\x16\x2b\x54\x66\x28\xb5\xd1\x54\x29\xb3\xdb\x4c\x0d\x6a\xd3\x15\xa0\x17\xf5\x77\x9e\xc9\x49\x14\x6e\x3b\xbd\x1d\x35\xde\xc2\x91\xfb\x06\xd5\x5d\x61\xcf\x4d\x85\x4f\xe3\xb7\xf6\x7f\xf1\xe6\xc4\x25\xa8\xf3\x12\xb4\xbc\x18\x0e\x06\x71\x43\x53\x73\x6c\xaf\x6e\x36\x2c\x9f\xd9\x2d\xf0\x96\x8a\x6c\x96\x89\x4c\x72\xa5\xce\xa8\x7d\xe3\xee\xf2\xd6\x6d\x10\x1a\xb9\x95\x6c\xdd\x17\x86\x93\x6b\xa4\x85\x31\x2b\xe9\xa7\xbf\x87\x7e\x35\xf2\xdf\x9f\x5a\xd5\x41\x1d\x83\x70\x78\x48\x57\xea\x71\x85\xf8\xe9\x99\x8b\xa9\x18\x0c\xb4\x6c\xe4\x06\x72\xaf\x58\x66\xee\x07\x82\xbc\x2e\x4a\xd2\x7c\xb0\xdb\x59\x7d\x6f\x83\xed\x57\x6c\x6b\x58\x7a\xc4\x6c\x32\xd8\x8e\x57\x5e\x8a\xd5\xd0\x5c\x6b\xe1\x40\x65\x03\x9e\xa1\x72\xb7\x8b\x5b\xcf\xc8\xb6\xc6\x01\x0f\xdd\x2a\x81\xcb\x20\xba\x45\x4e\x5a\xa7\xda\xb4\x32\xe2\x8c\x9a\xb0\x56\x3d\x08\xb5\x9f\xd5\xb1\x5d\x02\xcc\x11\xce\x5a\xf3\x05\xa7\xad\x0e\x04\x10\xea\x9b\x28\x72\x32\x3c\xcf\x5d\x2e\xca\xd3\xd3\xdc\x88\x17\xd5\x28\x1f\xe3\x29\xd9\x80\x64\x2c\x25\x8f\xa2\x97\x8d\xd4\xaf\x31\x99\x5e\x14\xe6\xef\x74\x12\x5b\x08\x6f\x25\xa7\xda\x64\xb1\x6e\x79\x27\x9e\xc2\xba\x99\x3d\xe6\x02\xc0\xb0\x2e\x51\x4c\xb5\x37\x1f\x42\xa9\xb7\x33\xee\xac\xf5\x86\x5a\x96\xcf\xf9\x16\x38\x5f\xab\x5e\x87\xa7\x08\x84\x40\x96\xe9\xe7\x27\xdb\x52\x7b\x84\xb8\x54\xc2\x0b\xed\x09\xff\x32\xcf\xaa\x2a\xde\x32\x15\x83\xa1\x6d\xf9\xca\x98\xb8\xf0\x98\xbf\xca\xb3\x27\x9a\x4f\x63\x96\x5c\x42\x27\x35\x54\x01\x66\x2e\xcc\xa7\x99\x2a\xf5\x20\x38\xf3\xb6\xc6\x3e\x47\xa3\xb1\x99\xc1\xda\xa4\xfe\x0e\xf9\x0c\xf5\x0c\x04\x99\x14\xd6\xd5\xc4\xc2\x28\x25\x8f\x9f\x6f\xbd\xcd\xde\x37\xc4\xa6\x96\x60\xaa\x0f\x34\x37\xde\x2f\x16\x25\x65\x0b\x12\x93\xe7\x71\x1e\x7a\x76\x28\xd2\x6b\x19\x6c\x23\x5e\x72\xc2\x95\x87\x87\x96\xb8\x20\x97\x0c\xb6\x3a\xf3\x4e\x35\x96\xf1\x11\x35\xb9\x50\x11\x9e\xfc\xb2\x6e\x8e\xb4\x09\xfa\x45\x71\x71\xa4\xf2\xb1\x53\x66\xa9\x48\xd6\xcd\x8d\x15\xf2\x90\x1c\x30\x42\x44\xcd\xbc\xc4\xb9\x8b\x90\x93\x33\x51\x19\xdf\xdb\x40\xf9\x18\x54\x00\x44\x8d\x36\x88\x90\x31\x00\x63\x46\xb6\xfe\xf1\x4a\xfb\x43\x2c\x77\xa4\xfc\x17\x0c\x74\xf2\x8f\xac\x92\x3b\xd6\x11\x34\xab\x4b\x38\x4a\x88\xa1\x16\x6e\x35\x23\xdb\xfa\x3c\x20\x67\x19\xa6\xa3\x62\x8c\xcb\x51\x31\x46\x98\x8f\x8a\x31\xc9\x30\x93\xff\xf4\x87\xb5\xb5\x4e\xca\xe6\xca\xa3\x9b\x2b\x71\x85\x06\x83\x3e\x1b\x55\x63\x63\xc5\x6c\xb6\x9a\xe3\x72\x54\x8d\x31\x95\x45\x30\x1f\x55\x63\x92\xd7\xd6\x14\x1d\x83\x3a\xc8\xc6\x08\x39\xc1\xd6\x27\x96\xf1\x14\xe1\x5c\xdb\xb7\x37\x83\x41\x0c\x14\xd0\x93\x68\x33\x5c\x20\x4c\x89\x76\xb7\x9c\x11\x48\x77\xbe\xad\xf1\x8a\x8c\xdc\xc5\x70\xfb\xd8\x79\xbc\x45\x83\x41\xa4\xd3\xb8\x99\x77\x51\x9f\x90\xdb\xc1\x20\x52\x68\x57\x91\xca\xd1\x2c\x6b\x5f\x10\x3a\xba\x1d\xe3\x1b\xb2\x50\x96\x56\xc9\x41\x2a\xa6\xfe\xde\x48\x55\xde\x56\x94\xc4\xec\x66\x30\x88\xef\x21\xb3\xa2\xfc\xfe\x8e\x2c\x92\xac\xd2\x1b\x7c\x8f\x9d\xf0\x16\xe1\xab\x60\xe7\xdd\xa2\xde\x15\x99\xc4\x57\xaa\x8a\x2f\x64\x91\xc8\xe1\x80\x3e\x99\xc1\x9f\xef\xe7\x28\xbe\x42\xf8\x3d\xd9\x57\x6d\x7c\x85\xef\xf0\x17\x84\xaf\xc9\xe7\x27\xdb\xa2\x4e\x9f\x6c\x6f\xeb\xcf\xf8\x13\xd9\xee\xd1\x5b\xa6\x61\xf3\x38\xd8\xcc\x57\xd8\xb6\x10\x7e\xf4\xde\x7b\x61\x9e\xc0\xb6\xff\x82\x95\x69\x30\xbd\xc3\xf2\xfe\x49\x6f\x71\xdb\x4c\x9d\x5e\x37\x29\x66\x81\x95\x02\x00\x8e\x2f\xa8\x07\xd3\x7b\x95\xe0\x55\x53\x58\x75\x94\x6e\xea\xde\x7a\x74\x3b\x26\xeb\xd1\x9d\xfc\xdf\xf5\x98\x7c\xc2\x33\x25\x87\x7c\x42\x78\xa5\xfe\xba\x35\x37\xdc\xf6\x97\x75\x95\xce\xf0\x2a\x5b\xa7\x6b\x1c\x28\x90\xd3\x15\x56\xca\xee\x74\x6b\xcc\x7a\xa9\xb6\xf0\xea\xab\x4b\xe9\x92\x81\xff\x6b\xaa\x43\x6b\xbc\xff\x8b\xc0\x6c\xd3\xfc\x50\x8b\x1e\x4d\x43\x7e\x29\x89\x28\x0e\x55\xec\x5f\x5b\x77\xdb\xb0\x0f\x04\xbd\x46\x08\x57\x94\xcf\xbe\x6d\xd8\xfc\xf1\x5a\xa4\xdd\xae\x0f\xe1\xc5\xac\xfa\x44\x2b\xd9\x3f\x14\x23\x14\x7c\x00\xbd\x4b\x92\x44\xa8\xb4\x8d\x46\xd9\x6c\xd1\x74\xb5\xce\x2a\x03\x0a\x0c\xa1\xe2\x61\x06\x4e\x85\xac\xaf\x2d\x5f\xb5\x5a\x22\xc0\x82\xf7\x28\xb9\x53\x13\x6b\xcd\xe1\x41\x27\x91\x08\x25\xab\x6c\x8d\x8b\x46\x7e\x5f\x93\x15\xd5\x7f\xca\x91\x71\x1b\x29\x7c\xb7\x11\x6d\xf8\x62\xa3\x62\x94\x8d\xa1\xc3\x95\x56\x4f\xda\x96\x92\x6e\x33\x7c\x85\x70\xa4\xad\x8c\xa0\x54\x88\x50\x63\x7e\xfd\x40\x3e\xab\x89\xd2\x36\xcc\xde\x4d\x49\xb3\x9f\x4d\x46\xc8\xfe\xb0\xc6\x73\xc6\x1b\x44\x22\x9c\x07\x36\x8f\x9b\x1e\xbc\x6d\x5f\x1e\x97\x0a\x15\xf8\x07\xab\xce\x3a\xa4\x6c\x36\xa6\x44\xc3\x03\xcb\x5b\x7c\x12\x72\xc0\x31\x5c\xe0\xf2\xf1\x5a\x81\x09\x55\x00\x9c\x7e\xde\x6d\x60\x92\xd7\x42\x23\x61\x77\x25\x59\x65\x37\xed\x53\xa3\xc1\x81\xe7\xa3\xa9\xbc\x37\xe6\xaa\x4b\x78\x45\xd6\xbe\x46\xeb\x96\xcc\xb5\x1f\x03\xdc\x23\x83\x81\xf9\x89\x17\x26\xb7\xc7\x8d\x97\xbd\x33\x87\x90\x39\x53\x06\x5d\xc4\x0b\x6f\xdb\xac\xf0\x5c\xb9\x3a\xe0\x1b\xb2\xee\x24\xcb\x0b\x6c\xab\x9f\x03\x25\x47\x28\xbd\xbd\x70\x39\xb0\x6f\xe0\xba\x41\x83\x41\xbc\x20\xeb\xa4\xdb\x73\xe3\xa6\xa3\x8e\xf8\x86\xcc\x93\x6e\x2a\x8d\x17\x64\x12\xcf\x43\xee\x5f\x92\xc9\x6e\x8f\x87\xf5\x3e\x77\x87\x9b\x3e\x09\x9a\x50\x15\x6d\x9b\x02\xdd\x7b\x9e\xdf\x0f\x06\xfd\xb3\x3e\x31\x9a\xdb\x7b\xb2\xde\xb3\xc1\xe7\xc8\xf8\xc3\x43\xd3\xf7\xd8\x05\x42\xf7\xee\x2e\x18\xe9\x0f\x53\x00\x5d\xbf\x33\xa9\xf4\x6b\xa7\xd6\x37\x53\x8d\x21\x30\x41\xf2\x39\xcd\xbe\x11\x39\x4f\xdd\x53\xa2\x6e\xe9\x3e\x3f\x08\x97\xb1\xdb\x09\x75\x95\x68\xd7\xc5\x1b\x7c\xcb\x2a\xa6\x93\xe3\xfc\x4c\xef\xd3\xdb\xdd\xce\x2c\x44\x8d\xea\xbe\x14\xe3\x37\xfa\x68\xef\x33\xab\x61\x36\x18\xf0\x8e\xb0\x6f\xb5\x7d\xdb\x06\x4d\x4f\x20\xd4\xbb\x57\x11\xa5\x9e\xfe\xe9\x6d\xe4\x7d\x1e\x2c\x38\xd2\x6b\x69\x56\xb2\x46\xd8\x3f\x68\xc9\x34\xa7\x59\x19\xab\x0b\x02\x1f\xf2\xa0\x5c\xe3\x2a\x78\x7b\x0d\xe9\x33\x0f\x94\x27\x5b\xe5\xb8\xa9\x4e\x7f\x87\x7b\x61\x5d\x3b\x31\x6d\x8d\xb7\x9e\xdd\xa8\x9d\x5b\xda\xa2\xfe\x1d\x69\x85\x50\x36\x0b\xdf\x8f\x2d\x15\xe0\xad\x2d\x67\xf6\x8a\x2c\x3c\xbf\xe8\xab\x47\xbb\x20\x3f\xd6\x2f\xff\xeb\x1c\x8e\x1f\xe3\x56\xac\xe3\x4b\x0e\xb8\x43\x3f\x1a\x31\xfc\x98\x8c\x91\x8f\x72\x39\x7e\x6c\x1e\xc4\xc7\x25\x4d\x9c\x68\x80\x42\xcf\x61\xfa\xe8\xbc\x82\xfb\x82\x24\x56\x31\xda\xbe\xd5\xc2\xa7\xda\x7d\x0a\x13\xfe\x3a\x2f\xee\x3c\x1f\x22\xb6\x72\x50\x96\xbc\x10\x6c\x7e\x6f\x18\x5d\x7d\xc5\x46\x9b\x32\x37\x2e\x63\x60\x18\x08\x62\xf0\xb5\x1f\x98\x0b\xe4\x47\xca\x41\xc4\xe9\x1f\x03\x4f\x31\x1c\xcd\xd8\xcc\xb5\x1e\xf9\x99\x86\x8d\x62\xf1\xf0\xf7\x77\x2c\xcf\xbd\x0a\x24\x3b\x6b\xab\x58\x84\xfe\x4f\x5f\x13\x7d\xa1\xdb\x01\x35\x0b\xb9\xee\x0c\x69\xde\x82\x16\x29\xbd\xa9\x89\xd2\x34\x59\x99\x4d\x3b\x2b\xdf\x7b\x08\x1d\x8f\x74\x56\xb6\xd8\x2a\x2a\x84\xd8\x7f\xe8\x5c\x92\x5b\xaf\x00\xbe\xac\xfb\x03\xef\xb1\xe4\xb8\x01\x03\x40\xcf\x8a\x4e\x45\xe4\x05\x4d\x38\xc2\x6a\x32\x9e\x9b\xe7\x1b\xba\xa1\x33\xc3\x92\x83\x4a\x52\xbd\x10\xc5\x3a\x37\x96\x17\xbf\x29\x85\x33\x31\x83\x00\xd4\x66\x65\x26\xd4\x4e\x85\x34\x56\x07\xba\xe3\x82\xf2\xbe\xbb\x57\xa3\xd9\x5b\xd6\xdf\x93\x5e\x47\xbc\x7d\xe9\x77\x0f\x3c\x1f\xff\xac\x06\x65\x6f\x4e\x2a\x68\xa9\x07\xa8\xfc\x2f\x99\x9a\xc2\xf2\x3f\x2a\x5f\xe1\x15\x24\xe0\xf2\xe0\x6d\x94\xc5\x05\x3b\x4e\x3c\xd0\xfe\x64\x5d\x5d\xd7\xfb\xa5\xb2\xfb\xc5\x26\xbe\xdb\x2e\xb4\xab\xba\x87\x67\x88\x4b\x02\xdc\x6a\xc7\xbc\x8c\xc4\xb8\x57\xa8\x0c\xf6\x90\x74\xf9\x2a\x98\x62\xc9\xa0\x0a\x52\x24\x41\xbc\x9e\xba\x4b\x2a\xe2\xec\xd6\x38\x77\xd6\xec\x0a\x74\x6c\xd9\x88\x5a\xf5\x76\x6e\x1e\x90\xfe\x10\xf7\xad\x12\xb7\x0c\x54\x74\xaa\xae\x46\xdc\x95\x8b\x90\xaa\xf0\xc6\x84\x60\x21\x14\x36\x57\x03\x7b\x1a\x7a\xe8\x0b\x84\x8b\xc1\xa0\x0f\x7c\x74\x47\x7c\x05\x8a\x73\xd4\x0a\x76\x8e\xbc\x60\xe7\xe9\xa6\x12\xc5\xca\x45\x3b\x9f\x28\xde\xe5\xa4\xe0\x5e\x78\xb3\x8a\x7e\xd6\x41\xce\x1a\xf8\x90\xce\x12\x07\xdd\x9c\xd7\x72\x07\xd9\x88\x69\xb7\x20\x9d\x0b\x41\x95\x5c\x69\x0d\x1a\xcd\x70\xee\xdd\x6e\xd9\x0a\x20\xa9\x37\x16\x83\x34\xa4\x7e\x00\x24\x0c\x20\x1a\xea\x9d\x87\x1b\xce\x03\x78\x2d\x49\x04\x51\x1d\x50\x56\xd9\xcf\xa2\xc9\xf2\xf0\x24\x28\x83\x1b\xbf\x63\xaa\x52\xef\xb4\x80\x7f\xba\x6a\x0a\x0b\xe2\xe6\x03\xa3\x6a\xf0\xe9\xa9\xbe\xc7\x98\x25\xd2\xd7\x90\x64\x21\xe6\xc8\xbe\x51\x78\x0a\x0e\x81\x4f\x0e\x83\x1f\xc6\xe7\x83\x67\x9e\x64\x2c\x3f\xf0\xef\x29\x9d\x86\x93\x26\xa2\x08\xee\x26\x98\xdd\x66\xdd\xfb\x21\xfb\x5e\x31\x45\xce\x02\xf6\x8e\x26\x77\x59\x75\x79\x03\x7b\x46\xf2\xdc\xcc\xfc\xb8\x88\x87\x78\x9d\xe4\xc5\x02\x7e\xa3\x58\xa0\x34\x16\xb6\xad\xfe\x99\x0d\x59\xa6\x09\xfc\x81\x05\xd6\x6c\x31\xc2\x3c\x99\xb0\x0a\xda\x52\x6a\xff\x59\xac\x0b\xa1\x0b\xf0\xf9\xd3\xe0\xb2\xc6\x8b\x3b\x1c\x3e\x04\x89\xaa\xd2\xb2\xc5\x4c\x36\x1f\xbb\x67\x01\x20\x78\x69\xac\x1e\xf6\x51\xd7\xf6\x0b\x3e\x78\x60\x0b\x82\x36\x14\xba\xe5\xef\xe9\xba\x56\xc4\xc2\xe7\x81\x0d\xef\x0b\x97\x43\x85\xa7\x56\xb5\x6e\xee\xc9\x64\x56\xe5\x06\x48\xb7\xda\xed\x46\x8b\x31\x9e\x59\xdf\x3d\x96\xcf\x5e\x5d\x7f\x1f\xa3\xde\xcc\x04\xfd\xfb\xd2\xbf\x0b\xfd\xc7\x8d\x28\xe4\xfe\x10\x17\x5a\x43\x05\xce\xc6\x55\x45\x4b\x70\xfb\xe9\x0f\xeb\x20\xb0\xcf\x29\x99\x86\xe7\xf4\xf9\xd4\x48\xe7\xf4\xf4\x14\x4d\x47\x74\xac\xd4\xb1\xca\x7d\x1a\x21\xbc\x49\x56\xd9\x3a\x0e\xe1\x28\xbc\x5e\xfa\x58\x06\x93\x65\xa6\x39\x8f\xef\xb2\x8a\xce\x3e\x2a\x0f\x1e\xe0\xc0\x0c\xaa\x7d\xe7\x05\xc2\xc8\xb6\x3b\xb2\x3c\xa5\xb8\x81\x38\x90\x52\xf2\x82\xb7\xe9\xf2\xd3\x55\xb6\x06\xd7\x2d\xdc\x0e\xa0\x56\x41\xa4\xdd\x04\x6d\xb7\x8b\xf7\xbc\x21\x72\x69\xad\xcb\x1e\xbd\x73\x59\x6c\xe1\x7e\x93\xc7\xf9\x88\xab\x76\xbb\x8f\xc7\xa8\xf7\xce\x95\xbb\x8d\x5b\x13\x05\x46\x68\xea\x70\x60\x6f\x5d\xa6\x7b\x63\x9c\xf4\xb6\x4a\x32\x99\xa8\xdb\xa9\xbc\x9f\x4c\x8c\x3b\x15\x78\x09\x35\x1b\x75\x17\x82\x41\x8d\xe1\x80\x92\x54\x0a\x9d\x3c\x77\x2f\x8f\x20\x19\x09\x96\xe5\x00\x6d\x67\x95\x8e\xe0\x09\xa8\xd8\x8b\x18\xb5\x02\x59\xf7\xb3\x19\x5e\xce\x05\x2f\x11\x8d\x8f\x50\x2d\x9b\x80\x74\x0c\xea\xc0\xab\x0b\x52\xff\xaa\xeb\xa0\x5d\x23\xdc\xca\x67\x26\xb7\x75\x6c\x12\x64\xec\xef\x83\x9e\x88\x7e\x30\xa9\xed\x44\x72\xc8\x60\x2c\x34\x58\x29\x4c\x93\x00\x76\xdb\x60\xa7\xfa\x83\xa8\x11\xee\x0f\x51\xed\x39\x2c\xc4\x5e\x7c\x1d\xab\xb4\x2f\x05\xe3\x8b\xc1\xa0\xf1\x8c\xce\xc2\xf3\xf6\x90\xe7\x8b\x9c\x2f\x1f\x09\x14\x73\xc5\x29\x2a\x0f\x14\xda\xe1\x81\x42\xad\x5f\x0c\xce\xc8\xb2\x1d\xb5\x08\x2e\x1b\x05\xc2\x95\xa7\x7a\x93\x6b\x9b\x99\x08\xbd\x8a\x7c\x8c\x39\x80\xcd\x81\xaa\xf8\xc4\x7a\xe8\x82\xad\xdc\x14\x3b\xcf\x4d\x93\x1b\xf2\x33\x94\xcf\x46\xf9\x18\xf5\x38\xd9\x24\x39\xd3\xc7\xbd\x02\x81\x04\x7c\x58\xa6\xc6\xb5\x65\x56\x93\x4d\x52\xdc\xf1\x6b\xe5\x22\x01\x6e\x7d\xbd\x69\x9f\x90\xc2\x77\xc1\x51\xce\x44\x7d\x42\x66\xbb\x5d\x5c\x79\x5f\xa0\x5a\x90\xaa\x06\x15\xa9\x55\x91\xfb\x7c\x3e\x6a\x3f\x4a\xec\x3a\x99\x74\x1e\x4e\x07\x3e\xef\xa6\x67\x6b\x32\x0f\x48\xd4\x2d\xa3\x77\xe9\x53\x35\x82\xc8\x44\xbf\x04\xe2\xc5\xda\xf0\xce\xa8\x43\xf8\x68\xf7\x00\xcf\xad\xb9\xf5\xa9\x77\xe2\x9f\x1a\x2c\x95\x14\xc6\x8f\x24\x07\xf4\x12\xea\xfd\x58\x14\xe0\x87\xd5\x35\xe4\xba\xae\x43\x18\x78\x83\x31\xae\xd0\x84\x9e\xfd\x4b\x9c\x9c\xa2\x8b\x67\x68\x34\x6c\x58\x39\x5a\x50\xbb\xb6\x16\xf0\xe9\x6d\xbd\xf7\xfc\xa7\xba\xb6\xef\x88\x8e\x63\x01\x49\x2a\x2d\x39\xba\x8c\x4b\xac\xa6\xb4\xfc\x6d\x01\x86\xa7\x0f\x03\x0c\x7f\x6b\x60\xe1\x69\x27\x52\x6d\x73\x86\x9b\xa8\xc2\x07\x62\xb9\x7e\x13\xc8\xdf\x4e\x3a\xb3\xbf\x0b\x0a\x03\x18\xbf\xed\x8c\xbe\xfa\x6a\x4c\x63\x07\x59\xf9\x5b\x0c\xb1\x1d\x00\x6b\x07\xda\x04\x37\x0e\x56\xc7\xa6\x70\x73\x69\x10\x98\x07\x7f\x4c\x3b\xc3\xd5\xdc\x1c\xba\x72\x75\x03\x7d\xb2\x23\x66\xd4\x57\x01\x34\xc1\x2a\xb5\x30\x02\x36\xba\x7f\xdc\x1e\x30\xec\xbe\x81\x7d\xde\x07\xd3\xda\xfc\xce\xc7\x6b\x05\xfe\x29\x0e\xc3\x9f\x4d\xc1\xd0\xa4\xe6\x45\xf7\xc1\x27\x9d\xb9\x56\x7c\xaa\x66\xef\xe7\x80\x90\xda\x2c\xaa\xfb\x54\x3c\xe6\xc5\x5e\x2d\x96\x6e\xbf\xe7\xdf\xc2\x0d\xa5\x8f\xb5\x80\x09\xe5\x00\x61\xb1\xb9\xe0\xe7\x48\x8c\x11\xc8\x21\xe5\x46\x8a\x86\x23\x31\x1e\x95\x63\x1c\xe9\x9e\x45\xe8\x60\xb4\x79\x83\x8f\x94\x6c\xaa\xe8\x56\x49\x4e\xe6\xcc\x87\xa0\x75\xa7\xf4\x70\x08\xba\xb3\x3e\x64\x33\xf9\xb8\xde\x5b\x8f\x75\xf5\xf4\x0f\x72\x80\x25\xdb\xd9\x65\x87\x38\x7f\x84\x9a\xaa\xc1\xbc\xf9\xac\x8f\xcd\x21\xca\xc3\xbc\xd1\xdd\x2a\xaa\x4e\x6f\x72\x3a\x18\x58\xe8\x3c\xd6\x95\xf0\xd7\x8f\x99\x97\x1c\x06\xd2\x8c\x63\x67\x72\xb3\xc2\x63\x0b\x32\xb2\x65\xcd\x5c\xbe\xbd\x43\x1f\x5b\x1f\x40\xc3\x06\x64\x08\xd5\xb5\x4b\xd1\x66\x22\x11\xfc\xbe\xc7\x1c\x6c\x5a\xc2\x46\xd3\xd8\x7c\xc4\x1c\xe1\x2e\x00\xca\x44\xa5\xae\x51\xd9\x84\x55\x12\x9b\xee\x72\x36\xd5\x1a\xa4\x81\x77\x79\xd7\x60\x45\x3a\x3c\x2f\x61\x83\x7e\xb0\x6e\xe8\x58\x4a\x5c\x98\x21\x15\xf5\xc9\xd0\x8c\xe6\x54\xd0\x13\x31\xa2\x63\x2c\x46\x4c\x5b\xe6\xc6\x84\x69\x53\x59\x97\x29\xb5\xc4\xa6\x9c\x76\xac\xd1\xb3\xdb\x85\x61\xd0\x13\x70\x0e\x34\xbb\xdf\x55\x17\xf8\xac\x19\xf7\x9c\x12\xf2\xf7\x77\x0e\x25\x50\x7f\xa8\x08\x53\x7a\x41\xd3\x28\x93\x14\x53\xf9\x43\xfe\xc7\xf5\xfb\x77\x89\xda\x49\x6c\x2e\xd9\x8b\x34\x8a\x4e\x69\xbd\xcf\x29\xb5\x73\x6a\x38\x28\x67\x06\x83\x38\x9c\x19\xae\xdd\x43\xb9\x9e\x97\x6e\x23\x73\x89\xb9\x99\x19\xae\x8d\xcc\x72\x34\x7b\xd1\x07\xba\xc6\x73\xa3\xa4\x3c\x35\xa2\x48\x94\x1b\x0a\xe9\x10\xd3\x88\x6f\x56\x37\xca\x59\x4a\x5c\xbc\x83\xbf\x63\x8a\x54\x20\xe0\xfb\x79\x8c\x82\x99\x80\x49\xbd\x44\x31\xcc\xc8\x3a\x2b\x2b\x49\xd2\x51\x4a\xeb\xc9\xba\xdc\x70\xba\xc7\x78\xdb\x66\x02\x1b\x0e\x07\xd4\xf3\x9a\x3f\x81\x5c\x26\x1a\x23\xbb\x84\x18\x52\x3e\x56\x61\x5e\x7b\xed\xc7\x62\xc4\xc7\x83\x81\x9d\x59\x3e\xae\xeb\x0e\xb8\x6f\x07\xbd\xad\xbc\xb7\xa6\x90\xe8\x50\x59\x2a\x41\xad\x0e\x6a\xe4\xb8\xeb\x0a\x42\x18\x70\xb8\xd5\xab\x75\x59\x4c\x69\xa5\xef\x63\xd7\x88\xbf\x05\x98\x14\x86\x74\x62\xc4\xca\x83\xeb\x2e\xbd\x6c\x6d\x4d\xbc\x70\xf5\x8d\x13\xc6\x75\x30\x51\x37\x93\x12\x50\x60\xd6\x0d\xea\xed\x18\xea\x4c\x33\xd4\x59\x7d\x4c\xe7\xed\x64\x35\x1c\x8a\xf6\x5a\x77\xcd\xb4\x6e\x6b\xe3\x51\xea\xb9\x8e\xec\x19\x40\xb3\x8e\xd1\x3a\xf9\xf3\x0f\x57\x1f\x7f\x9c\x34\xe2\x8c\x83\x60\xcf\x0c\x15\xe0\xf1\x91\xa3\xdd\x2e\x66\xa3\x7c\x4c\x94\x04\xa9\x6f\xbf\x4d\x9e\xdf\x5f\x4f\x8b\x75\x0b\x04\xdd\xe6\x99\xdc\x5f\x84\x35\xd6\x0a\x74\xb7\xf5\x5e\x5c\x77\xb7\x97\x3e\x79\xa1\x38\x5a\x21\x76\x3f\x03\xc0\x77\x5e\x6d\xa4\x98\xe6\xdf\x75\x72\x95\x4b\x7f\x8d\xf1\x5e\x12\x56\xc5\x2c\x70\x6e\x47\x98\x6b\xc7\xc5\xc3\x67\xad\xf1\x55\x3d\x59\x50\xf1\xe7\x0f\x6f\xa9\xc8\x62\xcf\x0b\x1c\xca\x98\x0d\x52\xea\x4b\x05\x54\x1f\xa5\xf6\x6a\xa8\xdb\x87\xd4\x0a\x89\x96\xb5\xa4\x23\xf1\xf4\x4c\xe1\xb2\x9b\x4b\xd9\x58\xe5\xb4\x9c\x65\x6f\x52\x6e\xe3\x0a\x1c\x12\x10\x2e\x70\x46\xfa\x43\x9c\xcb\xad\xb3\x21\xa3\x31\x56\x0e\x44\x02\xbc\x86\xe4\x45\xa2\xeb\xf4\xc6\x30\x9a\x8e\x91\x63\x78\x67\x64\x78\x3e\x7b\xce\x7c\x87\xa3\xd9\xe9\x29\x92\x97\xfb\x2f\xeb\x6a\x34\x1b\xe3\x8d\xf2\x1b\x29\x20\xb2\xbb\xf2\xfc\x65\x99\xa4\x2d\x5a\xc3\x9b\x11\xad\x59\x5b\x12\x70\x51\xdc\x80\x8b\x62\x6e\x75\x81\x99\x65\x2d\xdd\xe8\xc8\x12\xe1\x65\x7d\x60\x4b\x95\xae\x9b\x1c\x07\x1b\xc5\x5f\xa2\x82\x0c\x71\x46\x2c\x50\x51\xf1\x3c\x3b\x3f\x3d\x2d\x10\xc0\x3a\x34\x07\xcf\x46\xc5\x18\x21\x07\x71\xa4\x5d\xa2\x4c\x3c\x1a\xde\x90\x21\x9e\x12\xee\xcf\xc6\xe6\xf9\xf4\xfc\xf4\x74\x83\xe2\x9c\xc4\x95\x7a\x35\xda\x8c\x91\x8d\x51\x28\x07\x83\x0a\x7e\xec\x76\x55\x07\x7c\x91\x2d\xd2\x7e\x25\x3f\x70\xbe\x5a\x50\x48\xfb\x61\x0d\x06\x92\x85\xe9\xfa\x66\x30\x88\xcb\x51\xd7\x8b\x31\x29\x47\xf9\x18\x6b\x12\x2e\xff\x46\xf5\xe1\x83\xd4\x9e\x61\xd8\x4d\x41\x08\x4d\xd5\x11\x1b\xdf\xd0\x49\x9d\x9e\xe6\xdd\x73\x0d\x94\xc5\xce\xb5\x9c\xd9\x59\x73\x66\x67\x30\xb3\xb0\x4d\xcd\xc4\x62\xb9\xf3\xcc\xdc\x0a\x79\x69\xa9\xb9\x65\x7b\xe6\x16\x8a\x74\xcd\x2d\xf3\xe6\x16\x0a\xe9\xb9\x2d\xfa\x84\x74\x7d\x21\x37\xe8\xa8\xeb\xc5\x98\x88\x51\x61\x67\x56\xfe\xed\x31\xad\x4b\xa5\x94\xe8\x00\x0a\x60\x9d\x40\x01\x4c\x03\x05\x50\xed\xcb\x83\x7a\xfb\x1a\xad\x0c\x73\xbd\xc4\x6a\x0e\x30\x6b\xc4\xbc\xd4\x93\x6a\xba\xa4\xb3\x8d\xb5\x00\x58\x93\x9a\x11\x4c\x1e\x74\xef\x98\x54\xed\x77\x04\x44\x23\x53\xf5\x7b\x10\x91\xb4\x17\x8a\x2b\x59\x29\x37\x0f\x1c\x69\xc3\x7e\xd8\x46\xa4\x40\x0f\x3a\xdf\xd9\xd8\x9a\x47\xdc\x8c\x4a\x04\xb7\x5e\x7f\xbe\xc4\x16\x7e\xdf\xf9\xb0\xeb\xaa\x0c\x31\x2b\x7a\xce\x95\xc5\x4f\x40\xa1\xe0\x3b\xad\x89\x6e\xe8\x40\x86\x35\xa8\xc3\xa1\x09\xde\xee\x9d\x60\xb8\x2c\xf2\x44\x7d\x6b\xd8\xa5\x8e\x72\x87\xd6\x48\xf2\xa5\xf5\x64\x95\x95\x3f\x83\x59\xf0\xb2\xb2\x86\x41\x97\xa2\xdd\x73\xb8\xb0\x82\x69\xd3\x8c\xd8\x50\x3b\x84\x1f\xe9\xcc\x0f\x13\xf0\xa9\xfb\xa3\xf7\x6a\x5f\x2b\xea\x8c\xc0\x37\x6d\x9f\x03\x9d\xed\x12\x34\xd3\x22\x00\xb0\xf6\xe1\xab\x59\x4d\x6c\x58\x4d\x4b\x47\x50\x8c\xc4\x78\xb7\x8b\xe5\x3f\x5d\xde\x13\x86\xe1\x93\xef\xb5\x3b\x75\x3f\x6b\x62\xf5\xf8\x12\xee\x79\x9c\x91\x2a\x01\xb3\xdc\xcb\x25\xcb\x67\x8d\x1e\x0b\xbc\x35\xe1\x5f\x69\x7f\x18\xf6\x12\xa1\xe4\xa6\x28\xa4\x34\xa8\x5b\x23\x99\x0b\x42\x0b\xa2\xd0\xc2\xe4\x2c\xd4\xa2\xa1\x9f\x97\x2f\xc8\xf0\xfc\xe9\x53\x17\xdc\x34\x2a\xc7\x98\x19\x49\x26\xb8\xfb\x99\x46\x1c\x16\x31\xc3\xdc\xa8\x58\x95\x11\xf5\x8e\x6c\xef\x58\x9e\x6b\xab\xd4\x5b\x8d\x05\xe2\x12\xec\x74\x13\x09\xe5\xf4\x4f\x8d\xf9\x3a\xcc\xe9\x81\x19\xa1\x23\xd7\xd1\x71\x4f\x8e\x02\x2c\x82\x4a\x3a\x2d\x9d\x3b\x6c\x41\xbe\x48\x29\x5a\x99\xae\x41\xf2\x2f\x5c\xf8\x63\xd7\xfe\x14\x90\x38\x66\x9f\x2a\xb4\xc0\x02\xe1\xfe\x59\xad\xd6\xf1\xca\xaf\x5a\x9b\x98\xb2\xdd\x2e\xfe\x9a\x9a\x33\x55\x33\xaa\x11\x0e\x11\x97\x60\x59\x30\x27\xa3\x71\xaf\xdc\xa7\x35\x68\x3f\x53\xd6\xb3\x4f\xcb\xb2\xb8\xe3\x17\xc1\xaf\x94\xf6\xc4\x60\xc0\x15\xd3\x24\x20\xd8\x39\x2e\x93\x15\xad\xaa\x6c\x41\xed\x0b\xfb\x04\xe1\x32\xa9\x44\x36\xfd\xd9\x7b\x05\xbf\x11\x6e\xe9\x5e\x4a\x57\x06\xa1\xde\xb4\xe0\x55\x91\xeb\xb6\xe3\x24\x49\x38\xaa\x63\x81\x23\x98\x96\x93\xbb\x25\xcb\xe9\x89\x16\x56\x18\x5f\x28\xb7\x96\xf4\x24\x3a\x35\x49\x76\x40\x58\xab\xb1\x26\x69\x4d\x11\x13\xf3\xee\x3d\x60\x35\x14\xc0\x91\xfa\x7b\xc0\x02\xb0\x07\xbb\xe0\x00\x52\x59\xd1\x5c\x6a\x57\x83\x39\x49\x17\xf1\x81\xef\x33\x58\xd0\x54\x24\x6b\x76\x5b\x88\x3f\xba\x44\x46\x35\xaa\x6b\xe7\xf5\x78\xe5\x43\xe5\x35\xa8\x00\x45\xd8\xb3\x3c\x30\x1c\x5c\xd6\x69\x81\xf5\x4d\x92\x66\x92\x2a\x55\x2a\xfa\x68\x02\x51\x9d\x16\x5a\x31\xe6\x38\xc3\x9f\x9f\x6c\x99\x7e\x81\x2b\x74\x51\x05\x29\x68\xbf\x7c\xbb\x0e\x34\x43\x4d\x8b\x0b\x91\x42\xa7\x92\x8e\x4e\x35\x0b\x33\x55\x98\xe9\xc2\xed\x8e\xbe\x6f\xa5\xff\x72\x8a\x67\x2e\x25\x78\x88\x41\xfb\xa8\xcc\xe3\x99\xb6\xe7\x38\xdc\x87\x12\xf0\x29\x5a\x25\x8c\x3b\x99\x33\x04\xb0\xc1\xa0\x70\xad\x5e\x07\xf2\x72\x5f\x79\xe1\xdb\xa0\x71\xe7\xce\x95\xd9\xeb\xff\xf3\xcb\x8c\xff\x4e\x9c\xe8\x8b\xf9\x44\xc5\xc5\x9c\xfc\xee\xc9\xb6\xac\x7f\x77\x72\x43\xa7\xd9\xa6\xa2\x27\xf7\xc5\xa6\x3c\xc9\xd6\xeb\x93\x65\x56\xc9\xd2\x73\xc6\x59\xb5\xa4\xb3\x13\x27\xf9\xcb\x63\xc1\xb8\x28\x4e\x98\xa8\x4e\xe6\xac\xac\x84\x3a\x25\xc9\xc9\xa7\xc2\xd5\xce\x4d\x03\x05\x3f\x99\x41\xa8\x0f\x0c\x4c\x15\xad\x4e\x66\x9b\x52\x39\x97\xb9\x7a\xb1\x6c\xfc\x64\x9a\xf1\x93\x69\x96\xe7\x27\x3f\x7d\x56\xa1\x40\xe8\xa7\xcf\xb2\x0e\xb1\xa4\x27\x3f\x7d\x76\x3b\x59\x3e\x05\xf2\x72\xb2\xce\xaa\x4a\x76\xb0\xd0\x65\xc0\x0e\xf6\xcc\x43\x8e\x7a\xe6\x60\xa3\x7e\xfa\x7c\xb2\x2c\x8a\x9f\xab\xe4\x33\xaa\x7d\x71\xb0\x22\xfd\x33\x9c\xfb\xd7\x4c\x2e\xaf\x99\xfc\xe9\x53\xc9\x67\x17\x24\x66\x00\xce\xa4\x3d\x8b\x24\x5f\xac\xc3\x8a\xbc\x3f\x47\xe5\x58\xad\x05\x28\x70\x75\x1c\x92\x77\xf1\x80\x0f\x7b\xac\x29\xb3\x0a\xf7\x67\xce\x93\xbd\x83\x34\x73\x30\x0c\xf6\x2a\xd2\x1f\x6a\xc7\x9f\x3b\x2d\xdd\x6e\xd0\xc6\x8f\x73\x1a\x81\x61\x84\x6b\x0e\xfb\x44\xf6\xa1\x1a\x0c\xfa\x02\x75\x6e\x83\x77\x85\x58\xca\xb9\xd7\x4c\x08\xcc\x5a\xb0\x19\x92\x93\x37\x73\x58\x8b\x19\x9b\xe9\x52\x5e\x21\x0c\x4c\xcf\x09\x0c\x03\x56\xeb\x86\x9e\xc0\xde\x99\x9d\xdc\xdc\x9f\xa8\xa1\xca\xea\x45\xb9\xa1\x27\xf3\xb2\x58\x79\x7b\x41\xa7\x4d\x03\x9d\x8a\x07\x0f\x8f\xa1\x02\xf8\xc8\xf5\x45\x14\x27\x37\x9b\x9b\x9b\x9c\xc2\x5a\x99\x6d\xff\xa9\x25\x80\x11\xda\xe6\x5c\xe5\xd4\x68\x8b\x15\x84\xc4\x6d\x9d\x70\x96\x32\xbc\xb6\xa6\x51\xae\x83\xb5\x58\x67\xb0\x56\x36\xee\x55\x09\xab\x34\x8f\x30\xbb\x28\x46\x15\xa8\x1c\xa4\x94\x61\xea\xf0\x1e\x39\x5c\x2c\x0b\x32\x86\x5c\x2c\xac\x1d\xc1\xdb\x98\xba\xb8\xec\xa3\xbc\x2a\x40\x8d\xe1\xa3\x4a\x9f\x30\x72\xaf\x3f\xfd\x90\x89\x65\xac\x00\x05\x46\xdc\xcb\x77\xc7\x0d\x00\xcf\x42\xb2\xe7\x1d\x7e\x2f\xe7\x81\x3e\xdf\xcf\xd0\xa6\x75\x52\xad\x97\x2e\xe9\x1b\xce\xba\x4b\x80\x45\x40\x23\xfa\xe5\x6d\x9a\xdd\x15\xb6\xed\x13\x5b\x00\xc0\x29\x92\xcb\x0f\x1f\x26\x2f\x3f\x7d\xfc\x7e\xa2\x5d\x25\x3f\x7c\x7c\xff\xe1\x7a\x30\x88\x83\x4e\x32\x7e\x92\xef\x76\xdd\x7e\xe9\x79\x63\x3c\x80\xa7\x18\x23\xf2\x22\x74\xb4\x09\x93\xd2\xa9\x01\x75\x39\xee\xa3\x66\x85\xa8\x63\x4a\x8e\xeb\x8f\x37\x85\x07\x3b\xe5\xe5\xd7\x3b\xb6\x67\xde\x27\x7e\xc6\x8e\x4b\x9f\x43\x69\x88\x83\x58\xb4\x04\x41\xda\x21\xe4\x05\x06\xe1\xdd\x4e\x74\x05\x2f\x48\xa9\x6b\x9f\x24\xb8\x2e\x8b\x15\xab\x28\xa1\xc9\x14\x60\xf0\xa8\x62\x85\xfa\xa2\xed\x9e\x69\xfc\x90\x69\x4f\x24\x9d\xf2\x53\x8d\x23\x77\x05\x28\x57\x65\x3f\xf4\xe1\x43\x4b\xe3\xde\xd2\xf9\x0b\x14\x06\xdf\x2b\xdf\xcd\x23\xc3\xe1\x0b\x84\x78\x5c\x40\x8c\xbd\xd2\xe3\x8d\x8a\xb1\x3f\xdb\x2f\x1d\x04\x86\x33\xc5\x92\x11\x1d\x9f\x97\x16\x6a\xe0\xdc\x9c\xfe\xd2\x84\xb4\x1a\x1c\x3f\x3e\xd3\x70\x0e\x84\x10\xe1\xd4\x96\x6a\x24\x5c\xe3\xec\x54\x61\xf7\x19\x2a\x15\x6f\xcb\x1a\x5d\xf9\x59\x9b\x7f\x6c\x74\xe6\x56\x35\x90\x72\xed\xde\x54\xa5\x5d\x41\x00\x77\x59\xf5\x43\x45\x67\x69\xff\xcc\x28\x21\x41\xcb\x24\xef\xfb\x0b\x39\x3a\xf5\x27\x4a\x4b\x40\x03\xd1\x14\x80\x99\xbe\x61\xd3\x4b\x5c\xa0\x94\x92\x02\x6f\x9d\x83\x55\x4a\xb1\xf1\x8c\x4a\x0b\xaf\xa3\x1f\x3d\x49\xca\xf7\x67\xa9\x49\x89\x19\x81\x36\x1d\x0b\x04\x3e\x94\xba\xb1\x64\x95\x31\x6e\x87\xa5\x24\x64\x33\xb8\x54\x79\x65\xd5\x76\xac\xdb\xba\xc6\x02\xd5\xf7\x21\x96\xc8\x0a\xd2\x4a\x05\xc2\x7c\xe8\x2d\x1b\xb7\x9e\xd9\xd4\x75\x41\x45\x7e\x89\xb4\xf5\x4d\x6d\x14\xee\xfe\x43\x9d\xaf\x4b\xbd\xa9\xb1\x47\xce\x1d\x1a\x96\x12\xb0\xfc\xac\x7f\x8d\x9c\xa5\x7e\x02\xae\xd3\x53\x40\x76\x90\xf2\xb0\x94\x79\x25\x3b\xd2\xc8\xe2\xef\x21\x41\x14\xe4\xec\xbc\x70\xdf\x16\xa7\xa7\xaa\x5e\x41\xe8\xa8\x50\xd7\x87\x97\xe1\x0d\x97\xe4\x46\x9d\x01\x8e\xec\x56\x1e\x0c\xfa\x0c\x42\xd6\xcf\x91\xdb\xca\x5a\xd2\x4a\x92\xc4\xa4\x7c\x33\xc5\x91\xbb\x0c\x93\xbf\x15\x8c\x43\xc5\x75\x8d\xb0\x59\x93\x98\x3b\x50\x96\xc0\x9d\x3e\x5d\xe1\xd0\x27\x3e\xbd\xb5\x49\x90\xa3\x67\x91\x4b\x9e\x1c\x2d\xb3\x6a\x19\xe1\x4d\x99\xab\x4c\xa4\x07\x30\x48\x0e\xb9\x65\x7a\x06\x7c\x0b\xc7\x67\xa1\x95\xa8\xbd\x41\x6b\x24\x89\x73\xcb\xa3\xdf\x0e\x67\xb9\x3f\x2c\x52\x5d\x91\x7f\x23\xf7\x5e\x00\xe2\xdf\x1e\x1f\x80\x68\xa2\xdd\x1e\x9d\x0a\xa5\x1d\xbd\xf7\xdb\xe7\xb0\x3c\x98\x82\xc6\xd3\xbc\x40\x67\x95\x97\x2b\xa1\x9e\x6b\x7e\x49\x84\xff\xeb\x3f\x2a\x15\x8d\x54\xb6\x3d\x9a\x94\xf3\xda\xd6\x33\x63\x06\x9f\xf4\xac\xff\xab\xe6\xbd\x3b\x2a\xd0\x86\x0d\x8b\x11\xd9\x3f\x03\xf1\x7c\x30\xf0\x83\xfd\x99\x97\x61\xdd\xa9\xcb\x02\x90\x56\x16\xba\x71\x79\x63\xdb\x93\xbb\x99\xe3\x4a\xa3\xf2\x36\x13\xb0\x67\x01\x38\x95\x8b\xe9\x7f\x54\x0a\x1e\xe1\x29\x9b\xbf\x26\x05\x8f\x0e\xf5\xfc\x46\x71\xaf\x07\xe2\x55\x1f\x8c\xdf\xfc\xf5\xfb\xb3\xe9\x12\x19\xe4\x99\xb9\x35\xb0\xa9\x92\x6f\x31\x68\x57\x81\x66\x47\x48\x01\xee\x48\xbe\x21\x44\x11\xba\xa0\xc9\xba\x58\xc7\x28\x09\x91\xa5\x0c\x7a\x93\xbb\x03\xa9\x05\xbd\xd0\xbe\x9d\x34\xf0\xed\x14\x75\x0d\x69\xae\x5a\xce\x04\xed\x91\x10\xda\x8e\x8d\x6e\x3f\x1a\x15\x7b\xf1\x1b\x64\x5f\x1a\x48\x71\x76\x67\x8f\x44\x43\xf0\x90\xdd\x6a\x00\x36\x34\xd2\x6e\xb3\x79\x2c\x74\x96\x96\x6b\x59\x90\xce\x9a\x70\x77\xf2\xee\x6b\xd7\x0c\x39\xb8\x8e\xcc\x02\x0e\xba\x97\xe1\x79\xe1\x30\xf3\x4e\x4f\x1d\x59\x90\x2c\x1c\x20\x72\xe8\xf4\xde\xbd\xca\xcb\xfb\x4d\x32\x88\x8f\x57\xb9\x66\xe4\xd1\xd3\xe8\x8d\x5e\xa6\x9a\x0c\x82\xb2\xc2\x31\x48\x41\x1d\xd3\xb6\x59\x2b\x00\x8c\xea\xc8\x6b\x17\xa6\xa9\x89\x22\xdd\xef\xb2\xd5\xef\x9c\x00\xeb\xb9\x21\x92\x54\xe4\x08\x4f\x3d\xcf\x78\xf0\x32\xdf\x0c\x06\x1b\xc9\x16\x6a\xbe\x6f\x46\x86\x90\x6a\x06\x32\x79\xbe\x9f\xc7\x1b\x74\x91\x27\xd5\xe6\xa6\x12\x65\xbc\x71\xb9\x56\xd3\xbc\x37\xf5\x2e\x44\x3e\xda\x8c\xf1\x4c\x9b\xa8\x83\x17\x38\x47\x3d\x76\x4a\x3e\xa7\xe9\x93\x6d\x5e\xa7\x4f\xb6\x53\x07\xd4\x46\x4f\x1d\xae\x6b\x86\xa3\xa7\x11\x92\x73\x71\x18\xfc\x29\xd8\xa8\xce\x99\x74\x5b\xe3\x0e\xde\x26\x07\xd6\xc6\xcb\x75\x24\x64\x03\xbe\x2f\x35\xd9\x80\xb8\xd1\xcc\x83\x40\xda\xaa\x6b\x46\xc4\x68\x38\xc6\x45\x87\x62\x31\x23\x85\x0f\x56\x27\xc9\xbe\x87\x60\xdc\xd2\x2e\x2b\x90\xee\x4d\xcc\xfc\x18\x4a\x6e\x85\xac\xe8\x43\x59\x2c\xca\x6c\xb5\xca\x04\x9b\x7a\xca\xae\xea\xe4\xe6\xfe\xe4\x87\x8f\xdf\x9f\x4c\x33\xce\x0b\x71\x72\x43\x4f\x40\x85\x72\xc7\xc4\x92\x79\x71\x95\xc9\xc9\x87\x9c\x66\x15\xbc\x05\xed\x88\x8a\xb3\xe4\xca\x8e\x5b\x09\x9a\x41\x8c\x25\x23\x9f\x9f\x6c\xb3\x3a\x79\xb2\x65\xf5\x67\xf0\x0f\x27\xac\xf6\xa7\xc9\xbf\x4d\x3a\xe6\x43\x9e\xb6\x21\x66\x64\x08\xfb\xb0\x7c\x2c\x9a\x56\x89\x94\xd0\xd3\xc5\x7a\xf2\xd3\xd3\xda\x56\x2a\xd0\x51\x35\x4a\x6e\x60\x30\x60\xa7\xa7\x36\x28\x8a\x10\xc2\x6a\x6d\xa8\x7a\xf6\x53\xf2\x6c\xd1\x0b\xf3\x45\x86\xc6\x22\x8f\x73\xe5\xf2\x3c\xa9\x18\x94\xb2\x23\x06\xa5\xd4\xc4\x7d\x88\xd9\xe9\x19\x72\x8c\xa9\xd1\xbb\x08\x7b\x76\x0a\x84\x00\x4e\xa7\xc7\x49\xd1\xa1\xd6\xc9\xc3\xc9\xa4\x81\x98\xd6\xda\x35\x7c\x30\x88\x55\x42\xcb\x11\x1f\x93\x6d\xa6\xb0\xad\x6a\xcc\x49\x89\x8c\x4a\xf7\xa8\x99\xe2\x52\x26\xd5\xa4\x53\xcd\x0e\x1f\x15\xe3\x5e\xab\xc1\x6c\x30\x88\x33\x68\x28\xab\x25\x3b\x2f\xe9\xdf\x6e\x67\x1a\xd6\xa0\x5a\x1a\xd5\x0c\x70\x32\x99\xe7\x92\x94\x21\x2c\xcb\x93\xd2\x13\xdb\x36\x5e\xce\xcf\x0e\x6f\xd7\x38\x02\x37\x3f\x08\xb1\x90\x7f\x8c\x86\xe3\x43\x59\xd8\x15\xea\xc5\x33\x9d\x71\xf8\x30\x7b\x61\x0a\x7b\x6c\x8d\x36\x34\x3d\x54\x7a\xc5\xbe\x30\x5e\x3d\xb3\x91\x6a\xeb\xb2\xf8\x72\x7f\xec\x57\xd3\x82\x8b\x8c\x71\x5a\x1e\xf9\xd9\xb4\x58\x1f\x53\x68\x25\x79\xc0\x07\xcb\xb1\xea\x29\x95\x47\xf7\xd8\xce\x2a\xdf\xc9\xa3\x47\x26\x3b\x21\xe9\xdb\xb1\xf3\xed\x30\x27\x8f\xfc\x00\xfa\x73\xe4\xc4\x05\x6b\xfa\xb8\x6f\xa6\x45\x49\x27\x8f\xdb\x0c\x4a\xdb\xac\x2d\xf2\x07\x31\x59\xc2\x29\x5b\xdf\x1f\x35\x61\xba\x3c\xe5\x9b\x15\x3d\x6e\x8a\xf5\x17\x4f\x1f\xb5\x39\x0b\x40\x18\x7a\x4c\xfd\x2b\x75\xa3\x4d\x1e\xdf\x33\xa5\xe1\x9b\xe8\x89\xd3\xa1\xfe\x47\x4f\x84\x92\xf0\x8f\x2d\xae\x75\x87\x47\xee\x02\xfa\x45\x3c\x2b\xab\xdb\x3d\xf0\x36\x5e\x41\x49\xa7\x9e\x16\xf3\xa3\x2a\xb4\x5e\xeb\x47\x03\xc9\xe0\x15\xbe\xc5\x0b\x7c\x83\xef\xf1\x04\xdf\xe1\x2b\xfc\xe5\xd7\x0a\x2b\x7b\x3f\x78\xaf\xf7\xfa\xd6\x2d\x63\xda\x1f\xe2\x05\x15\xa9\x27\xda\x59\x10\x05\xcd\x95\xd4\x87\xaa\x7c\x5d\x66\x2b\x7a\x57\x94\x3f\x3f\xb2\xee\xc6\x77\x07\xdb\xd0\xa6\xce\xfb\x0f\x72\x59\xdf\xca\xa5\x3e\xb2\x99\xf2\xa8\x21\xbc\x34\xa4\xfa\xd1\xf5\xf3\xa3\xea\x57\xa4\xfd\xa8\x0a\xd9\x91\x15\xea\x6b\xe0\xa8\x3a\x8b\xa3\xea\x64\xd5\x95\xba\x31\x8e\xaa\x33\x3b\xaa\xce\x4b\x75\xad\x1c\x55\x63\x75\x54\x8d\xef\x32\x29\x82\x3e\xae\x5e\xef\x9b\xc3\xbd\x3d\xba\xc6\xcb\x83\xf5\xbc\x55\xa4\xf2\x71\x9d\xf4\x3f\x3a\x58\x7b\x49\x57\xc5\x2d\xbd\x3c\xf6\xa0\x55\x89\xf9\xe0\x60\xad\x1b\xce\x7e\xf9\xee\xf8\xde\xaa\xe2\x0f\xec\xa7\xc7\x4d\x80\x2e\xff\xc0\x41\x75\x9c\xc7\x51\xd5\xe6\x47\x6e\x2a\xcb\x9e\x1c\x55\xeb\xe6\xf8\xcd\xff\x41\x5d\x44\x47\x55\x3b\x3d\xaa\x5a\xf5\xe2\x31\xf5\xce\x8e\x24\x82\x25\x7d\x14\x09\x5f\x1e\x37\x0b\x3e\x8e\xfa\x91\x35\xcf\x8f\xec\xb0\xe1\xa9\x8e\xaa\x74\x7d\x54\xa5\x57\x1e\x7b\x73\x54\xb5\xab\xa3\xaa\x9d\x3c\xfa\x66\xb9\x3d\xae\x5e\x70\x1c\xe0\xe2\x75\x71\xec\xdc\xde\x26\xee\x93\x07\xf6\x99\x63\x11\x8f\xaa\x79\x71\x54\x8f\x35\x9d\x7b\xf4\x3c\xdf\x1c\x55\xbb\xd2\x69\xaa\x3d\x77\x6d\x38\xcd\xa3\xea\xbf\x3f\x6e\x7b\x18\x76\xf4\xa8\x3a\x27\x47\xd5\xf9\x41\xf1\xac\x8f\xde\x21\x77\x5e\xed\xfb\x59\xc4\x8f\xd7\x7f\xf9\x70\x64\x85\x57\x47\x75\xb7\xe0\xa0\x86\xd7\x71\x3d\x47\x57\x1d\x7e\x76\xb0\x05\x15\x0d\x79\x64\xcd\x5f\x74\xf0\x64\x5d\xa3\x07\xd5\x05\x81\x04\x7d\xbc\xd2\xe0\x58\xee\xbf\x2d\x1e\xff\x86\x56\x32\xab\x58\xa1\x71\x81\x33\x95\xf9\x8f\x10\x92\x19\xbb\xe3\xb0\xe7\x59\x98\x4c\x7c\xa9\x49\x79\xe0\x9e\x64\xca\x7c\x69\xfc\xc4\x23\x42\x48\x35\x18\x58\xb6\xd9\x44\xe3\x16\x08\x12\x9b\x79\x28\x51\x7a\x1e\x91\xe5\x31\x3b\x5e\x42\xcf\x5a\xf5\xe7\x1d\xf5\x67\x68\x30\xc8\x0e\xd4\xff\xf4\xec\x5f\x3b\x5f\x2b\x58\x67\xe5\xec\xc6\x62\x3e\xaa\xc6\x98\x43\xa8\x9d\x56\xc7\x6d\x4c\xff\x36\xbd\xea\x8e\x89\xe9\x32\xae\xd0\x76\x9a\x55\xd4\xc6\x99\xa6\xf0\x4b\x07\x97\xa6\x86\x0b\x57\x3d\x87\x57\x5a\x59\xe5\xbd\x52\x80\x7e\xf4\xa5\xe9\x02\xc2\x43\x5d\x56\xa9\x51\x52\x07\x33\x6d\x50\xbd\xf1\xcc\xa2\xd0\xe0\x25\x79\x9b\x89\x65\xb2\x62\x3c\x9e\xe2\x19\xc2\x73\x32\x3c\x9f\x3f\x5f\x9e\xcf\x8d\x96\x71\x4d\x68\x5c\x8c\xe6\x63\x9c\x8d\xe6\x6e\x28\x6b\x33\x94\x75\x6d\xbb\x22\xbf\x57\x2d\xdb\x09\x4e\x9b\x92\x8f\x5b\xc2\x8b\x22\x58\x98\x74\xa8\x3e\x9d\x65\x82\x06\xc3\x5b\x50\xf1\x89\xad\x68\x8c\x70\xe6\xfe\x46\x3d\x5d\x9f\x29\x39\xac\x6b\x0d\xf2\x04\xf9\x01\xe4\x0e\x9e\xa5\x43\xc8\xed\x91\x9e\x61\x3d\xbd\xe9\xef\xb1\x9a\xda\xf4\x7f\x60\x35\x91\xe9\xbf\x61\x98\xa5\xf4\x7f\x62\xa5\x78\x49\xff\xdd\x46\x29\xa4\xff\xcb\x7a\x8d\xa7\xff\x1b\x83\xd9\x37\xfd\x3f\x58\xf6\x2f\x3d\x1b\xd6\x2d\xbf\x06\xad\xbd\x7d\x6a\x32\xc4\xc4\xe5\x8b\x21\x7a\x1a\x97\xcf\x87\x47\xa8\x0e\x9d\xca\xad\x83\x10\x34\x40\x74\xbf\xa5\x32\xd1\x6a\x82\x3a\xd4\x03\xdf\x9e\x3a\x58\xeb\x59\x2b\x5f\x20\xdd\xed\x74\x9e\x62\xe7\xaa\x00\x96\xee\x66\x16\x1f\x40\x2f\x0c\xb7\x12\x45\xce\xbb\x41\x8e\xc7\xc3\x86\xf1\xc8\x12\x00\x0b\xe2\xa2\xbb\x79\x61\x9b\x77\x98\x8d\x26\x2b\xa1\x46\xd2\x8a\x2b\xc2\xac\x36\x5d\x20\xf4\x82\x0c\x2d\xb5\x19\x55\xe3\x1e\xf8\xc3\x1a\xff\x7f\x36\x8f\xc3\x8e\x0b\x65\x62\xc8\x88\xf1\x2b\x41\xb8\x04\x1f\xab\x42\x7d\x93\xe9\xcc\x30\x4a\xc3\xff\xf4\x69\xf5\x82\x0c\xcf\x51\x36\xaa\xc6\x84\xc6\xf2\x1f\xdd\xfb\xda\xb8\xc8\xb6\x66\x41\x20\x24\x6b\x87\x09\x50\x65\x71\x29\xa9\xa4\xae\xde\xfa\xd6\x8a\x13\xb3\xbf\x8b\xf9\xc9\xab\x4c\x50\x94\x81\x67\x9d\xfc\x33\x16\xde\x09\x6b\x7f\xae\x8c\x78\x60\x1a\x50\x81\xc5\x60\xea\xf2\x4a\xe1\xa3\x0d\x24\x39\x1a\x0c\xa2\xc9\x24\xea\x13\x62\x4c\x7a\x8c\x2f\xe2\x21\xfe\x3d\x1a\x0c\x20\x8a\x90\x94\x17\x34\x16\xa3\xdc\x8c\x3c\x15\x10\xde\x68\xc3\x6d\x60\x97\x8a\x8b\xd1\x58\x99\x00\xec\x5f\x47\x1e\xb6\x40\x37\x86\x47\x1d\xa5\xbd\xbc\xc4\xc7\xf8\x09\x1c\x81\x74\xfd\xf0\x19\xe3\xc9\xeb\x1f\xde\x01\x7c\xd8\xe4\xc3\xc7\xf7\x9f\xde\x7f\xfa\xf1\xc3\xd5\xe4\xea\x3f\x3f\x5d\xbd\xbb\x7e\xf3\xfe\xdd\xf5\x60\x40\x93\xab\x77\x7f\x49\xe0\xc9\x2b\x57\xe4\x3a\x79\xad\xeb\xb5\x36\xfd\xe0\x98\x32\x5a\xc5\xa6\x84\x5b\x1a\xbc\x35\xb9\x44\xd2\xed\xb4\xe0\x73\xb6\xd8\x58\xee\xc6\xe7\x75\xce\xf0\x5d\xc9\x6c\x40\x94\x3a\xe0\x2d\xce\xa7\xe1\xb1\xe4\xe3\xc1\xa8\x30\xfa\xba\xc6\x4a\xcd\x4b\xab\x6f\xd5\x5c\x61\x33\x89\x77\x37\xc7\xbf\x59\x43\xbc\xbb\x89\x23\x99\x3c\xa7\xd8\xf5\x89\x7b\xa8\xea\x3d\x04\x6d\x0e\xac\xea\x53\xd0\xf1\x43\x1c\x62\xb8\xe5\x1e\xde\x55\xfe\x4d\xd5\x4e\xe3\x67\x22\x30\xb4\x19\x0e\xa0\x40\xbd\xd0\x26\xd4\x20\xa5\xbe\x53\x86\x57\xac\x6d\xb3\x13\x90\xdf\xd1\x61\xf2\x0a\x64\xc9\x72\xf7\x55\x22\xe4\x55\x52\xd2\xac\x2a\xf8\xe4\x8e\x89\xe5\x04\xaa\x9f\x80\x5d\x9a\x4f\x26\xf6\x72\xa1\xe1\x2a\xd6\x08\x8b\x5a\x23\x1e\x46\x3f\x70\xeb\x4e\x31\xfb\xe1\xe3\xf7\x57\x26\x5a\x81\x82\x9b\x84\x37\x46\xcf\x11\x57\x63\xb5\xb6\x8b\x99\x5b\xc5\xd4\xde\x4a\xb5\xfc\x8a\x55\xeb\x4c\x4c\x97\x26\xdd\x0d\x52\xde\xb0\x7d\x83\xb7\x28\x7a\x72\xd8\xf5\xd7\x00\x90\x87\x02\x0a\x61\x2d\x8f\x34\x38\x6e\x6a\x73\xd3\x38\xca\xaa\x7b\x3e\x8d\xb0\xc9\xb6\x53\x26\x37\xd9\xf4\xe7\x9b\x4d\xc9\x69\x69\xa3\x7a\xe3\x48\x87\x7a\x44\x2a\xe5\x19\x84\xb3\xa2\x46\x3d\x73\xc8\x0c\x40\xf7\xd6\x51\x26\x13\xb9\x71\x61\x62\x01\x93\x48\xd7\xa5\x6a\x2a\xb8\x89\x10\xc1\xcc\xe4\x8e\x16\x9e\xef\x5c\x71\xd4\x79\x71\xe6\x42\x77\x5e\x82\x5d\xfe\x1b\x72\x26\x74\x30\xe8\x46\xfa\x51\xfa\x68\xc7\x69\xe8\x07\xfa\xb6\xa7\xcd\x5b\x75\x30\x68\x5f\xb4\xbe\x0f\xa6\xba\x64\x25\xc3\xe1\x7e\xd9\x0d\x27\x1f\x1f\x77\x8d\x35\xcc\x6d\x0f\x7b\xb6\x3d\xd2\xe5\xad\x91\x1c\xc1\x5e\x72\x8b\x9c\xad\x56\xb4\x7c\x76\x9b\xe5\x6c\x96\x89\xa2\x3c\xd2\xd1\xcd\x92\xa2\x2c\xc8\x0e\xee\x52\x46\x6a\x75\x50\xe4\xe5\x07\x2f\x34\x8a\xf0\xa7\x6c\x81\x62\x28\x2c\xb2\xc5\xeb\xa2\x54\xcb\x0e\x5e\x2f\x1d\x4f\x05\x92\x74\xe1\x2b\xb6\x86\x53\x48\x91\xac\x13\xf8\xff\xa4\x22\x65\x02\xaa\x11\xe3\x7c\xbe\xd5\xdf\x28\x56\x84\x71\xe6\xa0\xda\xba\xe0\xd1\x80\x7c\x54\x54\x69\x4d\x0d\x12\x66\xd7\x10\xe0\x96\xc1\x1d\x00\x6e\x2a\x86\x41\x4f\x15\x7e\x00\x8e\xad\xc6\xac\xfa\x54\x6e\xc4\xf2\xbe\x99\xdb\xd0\x55\x11\xb7\x55\x19\x06\x6f\xa5\x99\x52\xca\xae\x10\x5c\x7e\xa3\x32\x79\xf9\xc3\xf5\xa7\xf7\x6f\x27\x9f\x2e\xff\x30\x79\xfd\xfe\xe3\xd8\x77\x53\x82\xd5\x13\xd9\xe2\x2d\x15\xd9\xeb\xc2\x4b\x82\x68\x5e\xd8\x87\x98\x4a\x8a\xa1\x4f\x12\xb8\x9b\x9a\xe3\x52\xe9\x80\x9c\x51\x85\xdb\x5f\xb9\x11\x30\x34\xc6\x1b\x92\x35\x93\xcb\xf3\x84\x55\x66\x3e\x37\x68\x30\xc8\x15\xaf\xea\xcd\xb6\xcb\x07\xb9\x01\x92\x88\x54\x33\xd3\x62\x75\xc3\x38\xc0\xcb\xd7\xb8\x91\x6a\xcf\xed\xdd\xcc\xa1\xa6\x19\xc9\xc1\x4f\x5c\x43\x11\xe4\xa0\xfc\xa1\xf9\xb9\x0b\xf1\x00\xfe\x42\x9e\x3f\x0f\x7f\x8d\x25\xac\x7a\xa3\xe0\x82\xd9\xdf\x01\x53\x78\xb7\x93\xcf\x3e\x18\xce\x0d\xa0\x36\xa0\xb8\xdf\xe6\xa1\xf4\x96\x1c\x61\xae\xe9\x71\x6b\x8a\x74\x3a\xa2\x42\x96\x95\xdc\xb3\x47\xaf\xab\xc7\x10\xa1\xa6\x2f\xc2\xa3\xdc\x6c\x3b\x79\x99\x6f\xee\xc5\xad\x43\x9d\x1b\xa7\xb7\x23\x87\xaa\xb9\x29\xc7\xb8\x09\x16\x59\xb6\xc1\x22\xb9\x07\x16\x59\xbe\x38\xbb\x28\x15\x58\x24\x23\x67\xe7\xec\x79\x69\x92\x68\x87\x60\x91\xcc\x65\x9e\xb3\xb1\x98\xfe\xaf\x11\x1d\x0f\x06\xfd\x18\x52\x32\x35\x9e\xfb\xb1\x93\x1c\x05\xfe\x53\x45\x2b\x30\x40\xb9\x3b\x44\xa8\x57\x48\x39\xcd\x64\xa7\xf3\xf3\x17\xf9\xeb\x5d\x3e\x6a\xbd\x95\x41\xed\x6b\xbd\xa9\xf7\x5d\x2d\xdf\xd8\x21\xe5\x90\x8f\xd2\x43\x22\xde\x3f\xcb\x55\xc5\xa8\x78\x1f\xf0\xd9\xf8\xf5\xc7\x43\x19\x4e\xc9\x12\x3c\x51\x95\x5d\x96\xdc\x63\x6a\xd4\x16\xe4\xce\x3b\x42\x34\x30\x0a\x13\xea\x1b\xb2\x09\x4d\x2e\xfd\x33\x36\x35\x48\x1d\xf3\x92\xd2\xbf\xd3\x78\x34\x46\x78\x46\x28\x79\x41\x1d\x07\xb0\xd4\xf9\x67\x43\x67\xe2\x19\xd2\x6a\xbc\xb7\x90\x2c\xd1\xe4\x8c\x29\x48\x07\x57\x56\x5e\x94\x29\x0d\x43\x10\x5d\xbc\x39\xed\xc8\x45\x56\x00\x23\x0f\x10\x27\x02\xc0\xd0\x00\x22\x05\x30\x24\x74\x38\x93\x64\x63\x3d\xb7\xc8\xb9\x9f\x23\xf7\xf7\x84\xb4\xce\xbe\xf5\xf0\xbc\xe0\xe4\x45\x49\x48\xe0\x6e\x4c\x51\x5a\x92\x17\xde\x3d\x6a\xc1\xc2\x64\x43\xb6\x91\xb5\xf1\xab\x76\x4e\xd4\x16\x2c\xac\x20\xfc\xbc\x78\xce\x54\x84\x13\x9b\xc7\x65\xac\x25\x5f\x39\xbb\x97\x30\xe4\x02\xe1\x02\x3b\x1d\x98\xf1\xee\x7c\x7a\x56\x7b\x39\xa0\xfc\x68\x3a\x02\x0d\x9a\x9c\x1b\x78\x68\xa6\xec\xe9\x19\xe0\x05\xa8\x05\x49\x5b\xed\xb0\xae\x24\x4d\xe6\xcb\x3e\x81\x5a\x85\xaa\xb5\x94\xb5\xfa\xf9\x98\x42\xb4\x11\x53\xc8\x6f\x77\xad\x90\x26\x04\xe0\x8d\xf4\x8d\x7d\x22\xa8\xe6\xc6\x0b\x8f\x6c\x25\x9d\x0f\xe7\xcd\x62\xb4\x3d\x1f\xca\x02\xa7\x84\x21\x2c\x5b\xe0\x83\x81\xe8\x13\x71\x21\x77\x62\x9f\x50\xb9\x7b\x80\xd9\x0e\xd2\x47\xdd\x9b\xd9\xf2\x02\xdf\xa1\x31\x3e\x18\xc4\x9c\x9c\xe9\x90\x56\xed\x2d\x8e\x54\x69\x3c\x45\x98\x86\x10\x30\x5e\x1d\xed\x0f\x86\x78\xc4\xc7\xc1\x5e\xbb\xf3\x24\x6b\x15\xe4\xa3\xa3\x55\xdf\x48\x1a\x71\x6b\x65\x0f\x15\xcc\xd3\x54\x2f\xee\x76\xef\x3d\x4d\xa0\x09\xaf\xe9\x59\x79\x75\x63\x6d\x2c\x4a\x60\x71\xf8\x94\x65\x58\x5a\xae\x4f\x30\x89\x0e\xea\xd2\x79\xff\x72\x98\x0c\x87\x90\x42\xca\xda\x83\xde\x08\x82\xd4\xba\x75\x42\xde\x31\x75\x74\x91\xf4\xcf\xfc\x39\xfc\xd2\x0c\x6e\x5c\x65\xeb\xb8\xf4\xcf\xbb\x3a\x48\xb2\xb1\xf7\xcd\x4b\xdd\x7a\x2e\xe1\xed\x31\xfc\x38\xf0\x40\x57\x72\x9c\x30\xa1\x96\xf7\x56\x23\xac\x2e\x85\xd7\x17\x0a\x1d\x31\x84\xc7\x1d\x11\xc5\x6f\x21\x54\xe3\x68\x34\x8e\xd2\x2b\x93\x24\xdd\x1b\x82\x97\x91\xdc\x1f\x98\x09\x3c\x18\x2a\x26\xde\x80\xb3\xeb\xe0\xca\x1a\x61\xc0\xa9\x50\x24\x35\xbd\x8a\xdb\xcc\x7a\x57\x4f\x86\x92\x3f\x4f\x4a\x9a\xcd\xde\xf3\xfc\x3e\x46\x38\xcf\x1e\x5d\x87\xd7\x9d\xa7\x67\xcd\xfa\x94\x22\x3b\x24\xe2\x2a\x71\xc5\x30\x24\xe2\x5e\x2d\xa0\x3c\xa6\x70\x2a\x29\x61\xa7\x14\x61\x77\x94\x77\xbb\xf2\x05\xbb\x28\x09\x4b\xf5\xb1\x25\xec\xb4\x44\xe7\xf4\x79\x79\x8e\x1c\x3c\xc0\x98\x74\x4e\xfb\xe9\xa9\xdd\x52\xbc\xc6\x46\x4f\xef\xcf\xf4\x8d\xc3\x96\xed\x9f\xa1\x1a\xa6\xe3\x8d\x2d\x17\x60\x21\x19\x3d\x7c\x1c\x76\x8e\x70\xa4\xb2\x6b\x3d\x3d\x43\xd8\x92\x16\xee\x47\xbf\x94\xe7\xec\x05\x19\x9e\x33\x85\xbc\xd1\xd5\x53\x86\x7c\x23\x07\xb3\x34\xb0\xc6\xd9\x6c\x06\x9b\xcf\xe4\xdb\x54\xbd\xf2\x16\xa7\x59\xc0\xb2\xf8\x25\xaa\xb1\xbe\xbf\x0f\x56\xd0\x51\x26\xa8\x63\x99\x55\xc1\xcb\x4a\xdd\x02\x1c\x2e\xfa\x57\xb4\x9a\xbe\x52\x89\xb7\xa5\xf8\xf5\x80\x6a\xd5\xdf\xfa\x50\xc9\x32\xab\xbe\x67\x95\xa0\x1c\x12\x89\x2a\xe6\xf4\xff\x2a\xdb\xdb\x54\xa5\x5a\x42\x80\x2f\x7b\xb0\xa4\x82\x45\x51\x81\xb7\xf0\xe4\xa5\x12\xff\xfc\x4c\x51\x2d\xba\xdb\x5d\xd0\x0d\x5c\x4a\x3d\x41\x6d\x7e\x7e\xe5\x43\x95\xd9\x72\x8d\xba\x2c\xe3\x01\x82\xb0\xd9\x42\x5a\x1f\x0a\x19\xdf\x9c\x30\xe1\x1f\x78\x4e\x86\xe7\xfc\x79\x09\xe8\xf2\x5b\x0f\x6b\xdf\xec\x20\x48\xa8\x61\x2c\x28\x0c\x73\xad\x86\x0e\xe8\xcb\x82\x0a\xd9\x76\xfa\x45\x52\x1a\xdd\x8b\x06\x42\xbe\xe9\x1e\xd7\x14\x4c\xa7\x71\x82\x38\x98\x1a\x03\x6d\xdb\xdb\x71\xd5\xe9\xb7\x71\x18\x18\x6a\x6a\xd4\x89\x17\xc8\x8b\x72\xc4\xc6\xc4\x76\x55\x3d\x45\xb8\x84\xda\xbf\xbb\x4f\xbf\xe0\x39\xcb\x05\x2d\x7f\x7d\x43\xdb\x46\x23\x83\x81\x06\x14\xe0\x92\x93\x2b\xe5\xb1\xf8\x1b\xd8\x08\x5b\xc9\x58\xc3\xf6\x14\xa5\xd3\xbd\x6a\xd3\xc6\x3e\x35\x42\x17\xf6\x44\x27\x39\x5d\xea\x93\xef\xee\x1b\x49\x1b\x74\x4d\xf3\xf0\xa6\x41\xa6\x3f\xad\xf2\xba\x9b\xed\xf2\x73\xc9\x2a\x3d\xd8\xfb\x95\x43\x49\x55\x9f\xf8\x0d\xe8\x97\xed\xba\xe9\x2d\x2d\xef\x1f\xae\x7c\xe1\x57\xce\xaa\x2b\xf8\xca\xf9\x59\xed\xab\x3d\xe3\x47\xd4\x7d\x1b\xd6\x7d\xc9\xbd\x9a\x6f\xf7\xd5\x5c\xd2\xd9\x06\x6e\x1e\x07\x5e\xd6\xbd\x4b\xec\x3a\x42\x76\xf0\x92\xd0\xb8\xc4\xc2\x9e\x1b\x64\x13\xa6\x60\xc6\x6f\x8b\x9f\x1f\x4a\x9a\xc1\xbb\x73\x42\x28\x31\x5f\xec\x15\xf3\x95\x5c\xbe\x6f\x27\x0b\xf2\xa2\xf0\x55\x52\xe5\xfd\x1b\xe8\x0b\x68\x8f\x40\xbc\xc7\x45\x8d\x45\xa1\x9a\x6d\xf3\x43\x92\x83\x45\x35\x06\x29\x77\x2a\xba\x77\x21\x25\x2f\x14\x40\xbe\x2c\xc9\xf8\x34\xdf\xcc\x0c\xbc\xb8\xc7\xbf\xfb\xf7\xe3\x10\xd5\xb8\x2a\x4a\xb5\x4f\x1b\xb9\x63\x82\x61\xd8\x8e\x25\xb2\x78\x1c\x6b\xc8\x76\x77\x21\x76\x67\x4f\xca\x20\x7b\x12\xae\x88\xcf\xcb\x65\xd6\x1d\x48\xcb\x4f\x19\xc2\x1b\xa5\x29\xd4\xbc\x1c\x8a\x2b\x88\xe1\x9c\xc7\xce\x93\xa6\xb6\x0e\x20\xa0\xa7\x63\xbf\x78\x2e\xa1\x86\x8b\x53\x62\xae\xc7\xc2\x2d\x0d\xb3\x56\xe3\x3b\x26\x96\xc5\x46\x18\x3b\x18\x8c\xca\xcd\x51\x90\xd9\xa6\xa7\xb9\x73\x42\xe8\x85\x20\x2f\x44\x9f\x58\x11\x82\xf6\x3a\xe6\x5d\xc0\x3d\x75\xdd\x64\x4d\xdf\xe3\xdc\x31\xa7\x3a\x75\x75\x90\xb0\x21\x10\x61\x86\x2a\x10\xad\xc1\x27\x52\x29\x6f\x28\x8a\xcf\x78\x45\x4b\x79\x3b\xf8\x87\x6d\xe2\xce\x95\x2e\x66\xe4\xfb\xa0\xd8\xbd\x7f\xfc\xe4\x2e\x54\xfc\xa1\x37\x53\x93\x16\x23\x08\xb3\xe6\xca\x56\x4d\x2e\xdd\x74\xd2\xff\x64\x88\x2d\x52\xc8\xba\x58\xeb\x46\xba\x06\xad\x73\x64\x59\xfe\x48\xee\x5b\x27\xc4\xb4\xd9\xbe\xa7\x67\xe1\xb1\x72\xa3\x7c\x7a\x86\xcf\xe0\x6c\x43\x10\xba\x6d\x52\x37\xe0\xb5\xd9\x6a\x8a\x76\x36\x35\xdc\xd3\xd0\x50\xca\x7d\x78\xc3\xfd\x66\x5a\xd3\x37\x84\x49\x0b\x0a\xed\x9d\xb7\xa1\x3f\x5b\xa5\xa4\xd1\x15\x35\x9f\x1c\x33\x65\xde\x4e\x6d\x1c\x51\x5d\x59\xdc\x1c\x89\xdb\x54\x76\xb7\x54\xd4\xef\xa6\x69\xa2\x31\x63\xf0\xb9\xde\xc0\x7e\x8b\xe1\x06\x6e\x4a\x38\xfe\xe0\xe4\x1c\xba\x39\xeb\xe4\x8a\x76\x3b\xc0\x4b\x05\x7f\x98\x6d\xd7\xc2\x94\x48\xc9\x1d\xe1\xb2\x94\x0d\xbe\xc8\x6f\x0b\xc6\x04\x55\xdd\xd0\x05\xe3\x21\x2a\x55\x85\x62\x9f\x3f\x6b\x42\xb7\x96\x4f\x9f\x22\xaf\x25\xd3\xf9\x51\x39\xf6\x34\xea\x22\xa1\x7c\xd6\xae\x56\x0f\x3b\x9b\xcd\x5a\xfb\xa4\x49\x76\xf4\x81\x0f\x8e\x64\xf3\x73\x6f\x07\x1d\x1a\x0c\x0e\x34\x61\x4a\x97\xec\xf5\x40\x6b\x33\x0e\x74\x18\x34\xc4\x81\xee\xef\x1a\x56\xfb\x53\x93\xb0\x5d\xe3\xca\x11\x36\xcb\xb4\x86\x83\x1c\xd1\xb1\x5c\x0c\xb5\x1b\x0e\xea\x59\xa6\xa1\x9e\xe5\x0d\xf7\xf4\x8d\x01\xc3\xed\xf5\xd2\x57\x49\x7e\x82\x4e\xbe\xc5\x97\x64\x14\xa9\x35\x8c\xc6\xbd\x4f\x0a\xfb\x04\x05\xca\xc1\x46\xfe\x6e\x50\xbd\x5f\x1a\x8d\x20\xe8\x49\x83\x7a\xc9\xa7\xc4\x5c\x1a\x49\x92\x5c\xca\xf7\x97\xe4\x2d\xce\xf6\xb8\xe6\xc0\x57\x17\xf1\x27\xcd\x41\x36\x1a\x93\x77\xad\xaa\x20\x70\xc9\x30\xaa\x86\xdd\x6e\x34\xae\x51\x7a\xa8\x40\x4c\xc9\x68\x8c\xf0\x7b\xe7\x0e\x77\x41\x53\xd3\x1a\x45\xca\x2d\xf2\x03\x79\xef\xa9\xf9\x3f\x3c\x46\xcd\xef\xc7\xd7\x1e\xa3\xeb\xff\xe7\xd8\x70\xb4\x9a\x5f\x05\xa2\x7f\xb5\x49\xa3\x15\x25\xdd\x31\xe0\x43\x9e\x3a\x9d\x33\xf0\x1b\xa0\x11\x69\x4f\xd7\xc9\xc4\x75\x78\xa2\x8c\xcf\x80\x51\xf3\x86\xcb\x06\xc2\x08\x47\xd0\x7e\xf9\xe5\x93\x66\xd1\x1a\x6b\x84\xc3\x96\x7e\x2a\xfc\xce\x2b\x55\x63\x9b\x27\x2c\xc8\xb6\xe9\x97\xef\x51\x9d\x28\xe3\x6f\x05\xe3\x36\x9d\xb0\xcb\x2f\xa6\x64\x50\xed\x5f\x82\x62\x9b\xdf\x0b\x53\x1c\xcd\x19\x07\xf8\x8d\x57\x36\xe7\x57\x68\xe7\x96\xd2\x8e\xcb\x1e\x79\x40\xda\xd8\xda\x0f\x83\xa1\x34\x3e\xae\x6b\xcc\x9a\xb6\x7d\xee\x6f\x26\xf6\xb8\xcd\x64\x22\x82\xfe\x3b\x1f\x9b\xf5\xfd\xaf\x3c\x33\xbe\x5d\xeb\xbf\xed\x40\xbf\x7e\x74\x26\xc4\xe6\xbf\xed\xd0\xb6\x0e\x98\x27\xd4\x15\x1a\x25\x5a\xc7\x65\x89\x0b\xde\xa9\xdc\xea\xfe\x08\xee\x28\xf5\x9d\xcd\x65\xf8\x1b\x18\xc4\x0d\xa6\x2b\x9f\x41\x5c\x93\x73\x60\x40\x35\x2e\xe6\xf3\x4e\x8b\x8a\xe4\xc1\x0e\x8d\x53\x65\x33\x78\x40\x0f\x49\x7f\x8d\x15\xbc\xcb\xbc\x7b\x7c\x30\xcf\x71\xf6\xec\x7f\xec\xb5\xd2\x20\x80\x36\xee\xde\x9f\x22\xfe\x98\x29\xf2\x6d\xe6\xdf\xc6\x43\x6d\x8f\xe7\xeb\x3f\x66\x42\xc0\xac\xe3\x6f\x2a\xdf\x3d\x4a\xca\x79\x0b\x70\xed\x32\x8e\xd7\x8f\x49\xc0\xab\x34\xc0\x14\x34\xc0\x02\xf2\x4b\xf8\xd9\x45\xc3\x06\x5d\x13\x60\x5a\x1b\xc9\xe6\xc7\xc9\xb4\xe0\xd3\x0c\x6c\x80\x2d\x5b\x93\x73\xf5\xf1\x84\xfe\x2a\xe8\x2b\x6d\x96\xf5\x1b\xb1\xe3\xeb\x12\x34\xe2\xe0\xcb\x7d\xa2\x88\x3a\x94\x6d\x59\x23\xfc\xfa\x90\xf0\xd4\x05\x24\xdc\xe8\x76\x37\xd6\xb0\xee\xbd\x2f\x44\x59\x2b\x09\x68\x8f\x83\x3a\xbc\xf7\x6e\xba\xa0\x54\x43\x76\x3d\x50\x47\x58\xa4\xbb\x9a\x65\x56\x99\x02\x3a\x5b\x98\x57\x41\x17\xa9\x3a\x8d\xac\xb9\x04\x36\xda\x5f\x99\x58\x6a\x27\xe1\xd6\x5a\x87\xaf\x83\x65\x67\x7c\x5a\x42\xd2\x4d\xef\x58\xec\x65\x9e\xce\x9c\x89\xd4\x56\x12\x43\x1e\xc3\xd7\x79\x91\x89\xa6\x87\x20\x45\x68\xb7\x1b\xa2\x53\xc5\x1e\xfe\xda\x76\x5a\x95\xcb\xba\x9f\xca\xba\x45\xb1\x58\xe4\xd4\xf7\xc9\xdb\xb3\xcf\xfb\xed\x0e\xd6\x78\x9a\x4d\x97\xd4\xcb\xd0\xa6\x15\x4c\x6b\x4a\x7f\x7e\x1b\xba\xe3\xe9\xe4\xa2\xa5\xcb\x6e\x01\x24\x43\x7d\x1b\xde\x1c\x8f\x22\x8b\x0d\x74\x98\x47\xf9\x51\x29\x27\xeb\x7f\x14\x01\x6c\x72\x1c\xca\x49\x5f\x7b\xbb\x56\x1f\x28\x9f\x31\xbe\x68\x82\xd6\x46\xac\xba\xa6\x42\xe4\x92\x79\xea\xb0\xa8\x34\x1d\xd5\x5c\xe9\xa6\x9d\xd9\xbe\xe9\x68\xe1\x23\xd8\x4d\x00\x91\x87\x55\xaf\x37\xf9\x9c\xe5\x7b\x1a\x6c\xb7\x67\xbf\x35\x86\xc7\xe0\xad\xab\xac\xdd\x1f\xf3\x65\xda\x3f\xc3\x5e\x49\xf9\x53\x2f\x6a\xb3\xab\xda\x15\xc0\x61\xec\x95\x01\xc6\x9e\x8d\xb8\xfe\x5d\x75\xa2\x6b\x38\x59\x6d\x2a\x00\xd6\xab\xa8\x88\x2c\x31\x77\xa6\x3c\x1f\x94\x31\x18\x63\x83\x6a\x53\xbc\x6d\x74\x31\xe8\x7f\x8d\x70\x99\x88\x25\xe5\xe0\x59\x41\x13\x56\x69\x59\x8b\xce\x76\x3b\xef\x27\xe3\x0b\x3d\x4b\xed\xfa\x8d\xf7\x73\x19\x4e\x86\xdc\x50\x25\xc2\x25\x79\xa1\xc7\xfd\x75\xb5\xeb\xcd\x56\x06\xfd\x1e\x2a\xeb\x5e\x04\x2e\x1b\xe9\x89\x3f\x85\x11\xaa\x8d\x62\xb0\x06\xa9\x8f\xf2\x94\xc5\x91\xfc\x37\x42\x18\x40\xdc\xe5\x6f\xf8\x23\x42\x18\x44\xcc\xfc\x5e\x3e\xd2\x7f\xca\x05\x6f\xc4\xcc\x34\xe7\x3c\x20\x19\xde\xb6\xd1\x6b\xe7\x92\xd9\x94\x23\x3a\x6e\x3a\x5c\x7e\x25\xb9\x68\xe2\xbe\x3d\x2a\x50\xf4\x9f\xca\x41\x6e\x27\x13\xdb\x79\xad\xa6\x28\x55\x56\x8a\x20\x69\x4c\x87\xda\xc1\x7d\x96\xe8\x2f\xb4\xda\x41\xbd\xa0\xa5\x5c\x36\xf3\x77\x84\xf0\x86\xfb\x2f\xdc\xaf\x08\xe1\x46\x8a\x1a\xf9\x7e\x99\x55\x11\xb2\x55\xd1\xd9\xfb\xb5\x79\xb3\xa0\x42\xfd\xf0\xde\xab\x07\x95\x7c\x5d\xa8\x3f\x3b\x3e\xae\x82\xaf\xab\xf6\xe7\xaf\x8b\xf2\xd3\xfd\x9a\x7a\xb5\xe8\x27\x5d\x95\x79\x85\x5d\x9d\xae\x3c\x03\xdd\x8d\x7c\xcb\x8c\x16\xe7\xa8\xbd\xbb\x6f\x8e\xbf\xdd\x5e\xdd\x03\xb2\x76\xf8\x8a\xfb\xaa\x80\xcb\x7f\xd6\x96\x56\x23\x54\x9b\x59\x0d\xd3\xff\xfb\xa5\x4a\xa0\xd2\xf1\x48\x3b\x60\x35\x03\x31\x82\x32\xe1\xf5\x65\x4d\x52\x41\x14\x46\xf8\xc1\x9e\xb4\xed\xcd\xfc\x53\x96\xff\xe9\x75\xab\xdc\xbd\x72\x26\x07\x8c\xd6\xf6\x49\x9e\x09\x73\x0b\x96\x0b\x29\x01\x94\x2a\xe0\xd2\x45\x05\x86\x4e\x60\xdb\x1a\x8c\x42\x5b\x33\x3b\x58\x4f\x19\x6b\xcc\x51\x51\x2b\x7f\xc7\x98\x13\x0e\x97\x40\xc7\x38\xe5\x66\x27\x6c\xb7\x6b\x06\x21\xf2\x30\x78\xc8\x3a\xbb\x03\xa0\xf0\xb6\x6b\x4e\xfc\xc0\x0b\xfb\x21\x6f\x4f\x08\x1b\x0c\x62\x76\x68\x42\x38\x42\x98\x39\x24\x55\x08\x9b\x9c\xa8\x0e\xb8\x40\x2f\xfd\xa0\xe7\x99\x18\x6b\x1d\x03\x63\x5b\x2a\x06\x83\xb8\x38\xbc\xbe\x1a\x08\x49\x5b\x85\x10\x66\x83\x01\x47\x83\x41\xff\xac\x4f\x48\xcc\x40\x65\x72\xc1\xac\x73\xff\x88\x5b\x31\xb0\x40\x28\x65\x23\x0e\xc7\x7a\xe4\x3f\xf5\x5c\x44\x8d\x57\xe9\xd7\x70\xb2\x5d\xf8\x98\xdf\x28\x1e\xe0\x5b\xa2\x1c\x34\xf0\x44\x1f\x1f\xc5\x86\xb3\xdf\x84\xac\x54\x2a\x8d\xa3\x12\x51\xd3\x68\x22\xfb\xc9\x17\x74\xa6\xfd\xcb\x40\x2d\xe0\x3c\xd6\x22\x3c\x33\x0e\x67\x7b\xca\x5a\x87\xb4\xa8\xee\x01\x5e\xc5\x49\x7e\x42\xbf\x08\xca\x67\x95\xc3\x06\x34\xfe\xb0\xa0\x41\x4f\xe0\x47\xe8\x0e\xab\xee\x05\xed\xf9\xfa\x8a\x95\xe2\x1e\xdc\x24\xc9\x30\x7c\x43\x54\xdc\x3d\x3c\x52\xda\x0c\x28\x4b\xfa\xc3\xe0\xa1\xfd\xac\xd1\x61\xff\xf3\xc6\xab\x37\x15\xa4\x41\x67\x7c\x41\xfa\x67\xdd\x45\x3e\x65\x8b\x03\x15\x7c\xa4\xb7\xac\x62\x05\x6f\x77\xb1\xfd\x9d\x79\x52\x8f\x44\xf2\xe1\xe3\xfb\x0f\x57\x1f\x3f\xfd\x38\x79\xf5\xe6\xd5\xe4\xe5\x1f\x2f\xdf\xfd\xe1\x6a\x6c\x3d\x87\x4b\xaa\xb7\x09\x8d\x91\x2c\xdc\x0a\x7b\xb3\x80\xc2\xa3\x31\xc4\x12\x5f\xc4\xed\x0f\x83\x76\x51\x6a\x0c\x93\x0f\x14\xb7\x7d\x47\xf2\xe2\xc8\x1a\x81\x73\xa8\xee\x88\x10\x9c\x38\x5f\xcf\xe6\x2e\xb1\x4a\x0b\x54\x1b\x23\xad\x7e\xdd\x50\x95\x3a\x43\x7b\x93\xcf\x6d\xcc\x77\x84\x64\x2f\x9c\x55\xd7\xa5\xc3\xd0\xcf\x6c\xfd\xf0\xaa\x6e\x3d\x05\xc5\x6e\xb3\x11\x1b\x68\x98\x84\xf6\xe2\xda\x37\x2d\xbb\x9c\xc2\xfe\xb4\x19\x30\x0f\x7f\xbf\xda\x64\xe4\x66\xff\x8e\xc6\x08\x83\xe7\xd3\x9e\x0d\x3f\x18\xd0\x17\xfb\xde\xed\x13\x00\x5a\x13\x03\xe8\x21\xc8\xa5\x7b\x0b\xea\xd3\x5a\xc0\xc0\x0b\xca\x6c\x09\xeb\x38\xdd\x6e\xfc\x9c\x3d\xe7\xa0\x44\x0f\xde\x8f\xd8\x38\x74\x17\x35\xd3\xcb\x34\xf8\x47\x67\xd3\xc3\xde\xbe\xe3\xfe\xf4\xac\x0e\x18\x45\xd3\x0c\x1d\xd7\x0b\x2a\x4e\xd4\xf7\xf1\xbe\x15\x68\xd1\x85\x7d\x99\x6b\xda\x33\x16\x50\x0f\x7a\x11\x64\x18\x33\x93\x93\x0e\xbb\x28\x8f\xe9\x31\x1c\x92\x69\xc1\xab\xcd\x4a\x45\x0d\x37\x8f\x51\xf0\x71\x5d\xb9\xe1\x50\x87\x81\xee\xf9\xa0\x3c\xa5\x36\x91\x1d\xda\x72\xed\x9c\xee\x14\xb7\x4f\x39\x68\x6e\x4d\x10\xca\xde\x7d\xdc\x93\x4c\x45\x18\x0a\xc2\x30\xc5\x1c\xdb\xac\xcf\x8c\xbb\x29\x44\x75\x3d\x51\x81\xcf\x5d\x87\xd8\xa9\xad\xba\xf6\xfa\xc5\x30\xed\x5a\x6d\xcc\xf7\xcf\x67\xef\x78\xb2\xa1\x3a\xbb\xc7\xff\x7a\xe8\xcc\x2f\xe1\x78\xda\x5f\x39\x3f\xeb\xe0\x23\xed\xe6\xbe\xb7\x7d\x8a\xea\x23\xca\x6c\xe9\x60\xd0\x0f\x34\x0e\x66\xf2\xdb\x6e\xf4\x2a\x51\x0f\xae\xd0\x9e\xab\x4a\xb6\x78\xcc\xc4\x6c\x3b\x3f\xd7\xe6\xef\xbd\xce\xf7\xad\x0f\x4c\x6f\xea\x07\x18\x82\x18\x6d\xbb\x8b\x34\x1c\xd8\x31\xd3\x3d\xdb\xb3\x64\xaa\x88\x76\x54\x2d\x7b\x05\x6c\xf0\xe2\xb4\xb1\x91\xdb\xdd\xb4\xbb\xe7\x94\x3f\x65\xe8\x3c\x86\x40\xae\x3d\xe4\x44\x3b\x34\xb5\x5f\xbc\x28\x50\x93\x32\x7b\x44\xa8\xe8\xa0\x24\x96\xc3\xe8\xde\x4b\x6a\x34\x75\xb0\xf7\xb6\x0f\xf1\x34\x61\xf5\x75\x40\xcb\x6c\x56\xd4\x07\x98\x15\x29\x42\xf9\x67\xb1\xcd\xb2\xec\x76\x7d\x20\x4d\xa6\x6e\x8f\x36\xb5\x0b\x1f\x66\x6d\x10\x0a\x3c\x2e\x20\x4f\x66\x9b\x94\x3e\xd0\x9f\x8b\x63\x0f\x5c\xda\xdd\x4b\x9f\x51\x33\x33\x79\x90\x64\x1d\xc1\xef\x99\xd0\xa1\xbd\x6c\x5f\x9b\x03\xda\x7b\x87\xec\x63\x0b\xcd\x22\x80\x12\xff\xe0\x22\x68\x8b\x84\xc3\x10\xa0\xe8\xa2\x79\x9b\x10\x7d\xdd\x68\xbc\x80\x11\x57\x2e\x2d\x4d\x74\x01\x8f\xda\x8e\x43\x3e\xf0\xf8\x0a\x46\x63\xf9\x31\x4a\x9b\x3d\x08\xb9\xd9\xda\xd7\xdb\xe4\x38\x37\x29\xdd\x58\xe0\xc5\x87\xb7\x8d\xe1\x2a\x9d\x75\x96\xb3\xac\xf2\xa0\x21\xd0\xb7\x0b\x8d\x81\xb8\xab\x23\x31\x93\xba\x52\x22\x1c\x96\x2c\xad\x5f\xcf\x31\xb9\xbb\x0e\x27\x98\xdb\x2f\x8a\x7e\x05\x84\xca\x23\xb2\x36\xb4\x04\x53\xfd\xed\x6f\x1f\x08\xde\x21\x9c\x4e\x49\xa6\x75\x5e\x0e\xcc\x4d\x6d\x24\x3c\x23\x2a\x4d\xd0\xe4\xaf\x34\xfb\xf9\x9a\x0a\xbc\x84\x07\xf2\xd7\xdb\x6c\x8d\xe7\x26\x6c\xbb\xe7\xc7\x38\xa3\xed\x3c\x51\xee\x18\xbb\x9d\xe7\xff\x15\x46\x29\xfb\x10\x4b\x85\xc6\xc5\x50\xe0\x4b\xaa\x67\x92\x0a\x5b\x6e\xba\x22\x54\xab\x34\x28\xcf\x84\x8f\xe0\x00\xc9\xb0\x9b\xb0\x0e\x78\x43\x6c\x25\xd5\x60\x50\xd9\xf4\x77\x36\x11\x55\x1f\xe0\x40\x73\xf7\x62\x46\xfc\x8c\x79\x02\xe1\x25\x19\x9e\x2f\x9f\xcf\x4c\x40\xc3\xd2\x04\x34\xcc\xc9\x6c\xb4\x1c\xe3\x35\x11\xa3\xf9\x18\xaf\xd4\x89\x9e\xd1\x6a\x5a\xb2\xb5\x28\xca\xc6\x39\x9e\x4b\x8e\xef\xd6\x35\xba\x82\x78\xdf\x5b\x95\x8b\x49\xf6\xcc\xc4\x2f\xce\xd1\x8b\xa7\x67\xaa\x85\x05\xa1\xa3\xf9\xb8\xb7\x26\x8b\x0b\xc8\x6f\xb3\xca\x7e\x36\xbe\xb0\x0b\x64\x34\x3b\x6b\x10\x10\x83\x97\x6b\x54\xb3\x79\x3c\x95\xc3\xea\xa8\xf5\xc6\xd4\x0a\x50\x29\x5e\xea\xbf\x1b\xbc\x46\x75\x7d\x7b\xb1\x4a\x94\xe1\x69\x8e\xd7\x28\x75\x31\xf8\x0e\xb8\x31\x69\xe3\x9b\xec\x76\x73\x48\xc1\x74\x21\xeb\x26\xeb\xb4\xab\x4c\x2c\x2b\xac\xa9\xd2\x3f\x08\x84\xcb\x64\xc3\x21\xd6\xd9\x87\x3d\x81\x7d\x78\x4f\x4a\x8b\xf4\x06\x8e\x41\x55\x1c\x6e\x88\x7b\xbb\x21\x26\x64\x78\x3e\x79\x7e\x6f\x56\x67\x72\x7a\x8a\x60\x21\x20\x53\x5c\x26\xa8\xcf\xf1\xdd\x8f\x26\xe3\x04\xbc\xbb\xd4\x9f\xd5\x3d\x9f\x42\x5a\xe9\xcc\x77\x41\xa2\x38\x92\x3d\x8c\x4c\x4a\xc5\xf0\x9f\x12\xd5\x4a\xcd\x72\x1b\xe6\x83\x54\xfc\xc6\xa8\x4c\xde\xff\xf5\xdd\xd5\xc7\xb1\x49\x04\xe9\x23\xc6\xc2\x99\x0a\xdc\xe6\xcf\x21\x4a\xdb\xd8\x00\x80\x6b\x85\xa2\x28\x16\x78\x0d\x2e\x58\x07\x0a\xc4\x88\xbc\x10\x49\xa0\x07\xd0\x38\x36\x1a\x5b\x06\x25\xad\xd9\x95\x72\xcf\xa8\x4c\xbe\xbf\xfa\xc3\xe5\xcb\x1f\x27\xaa\xab\xb2\xef\xb5\xbe\x2e\x1e\xe3\xb8\xa2\x13\x9e\x9d\x97\xe0\xb8\x52\xfa\x8e\x2b\xa5\xe7\xb8\x92\x29\xb7\x64\x20\x2b\x26\xc4\x58\xbb\x42\x68\xad\x14\xc8\x96\x1e\xd3\xee\xdb\x6f\x37\x3e\x37\x6f\x42\xb4\xab\x46\x79\xda\xac\x03\xc6\xda\x59\x09\xe3\x8b\xce\x5a\xe4\x17\xb2\x1a\xe7\xdb\x3a\x57\x40\x11\xe0\x11\x20\xca\xfb\x2d\xd4\xa3\x5f\x9b\x2a\xb4\xf5\x70\x3b\x4f\x66\x34\xa7\x82\xea\xc7\x7e\x14\x42\xa8\xa7\xa9\x45\x71\xad\x60\x2f\x0d\x2b\xd7\x81\x71\x21\x54\x08\x87\x2a\x78\xf5\x45\x50\x2e\x39\x98\x8b\x28\x8d\x4e\xbb\x5f\xc5\x28\x8d\x22\x3d\xe3\x9f\x9f\x3f\xd9\x02\x3d\xd0\x99\x15\x75\x57\x9d\xb9\xfb\xb5\xf5\x7f\xb5\xaf\x5a\x3b\xd5\xf5\xb2\x4e\x4d\x75\x1b\x36\x73\xdf\xd4\x4f\xb6\xb4\x7e\xf1\xb9\xae\x04\x64\x89\x53\x0a\x47\x3b\x26\x75\x40\xb4\x16\x52\x7d\x60\x93\x45\x9e\x4c\x8d\x9b\x7a\xe2\xb0\x8d\xe4\xde\xf0\xa2\x2c\x31\x35\x15\x6b\xd3\x8b\x03\x4f\x0a\x95\xf6\x7d\xd0\xa1\x29\xc8\x10\xd9\x4c\xdc\x4a\x8e\xe7\xd2\xbe\xfb\xe3\x66\xb8\x6b\x36\x28\x42\x28\x75\x95\xe1\x55\xcc\x9c\xca\x9e\x5f\xd0\x74\xe1\xc3\xf0\x78\xe1\x89\x98\x99\xfe\xda\x63\xe4\xab\x51\xe4\x16\xf8\xa8\x5f\xe0\xa9\x57\xc7\x81\x19\x80\xbd\xa3\x2b\xf5\xbf\xf7\x05\x00\x7b\x47\xf7\x66\xfa\x96\x1d\x0c\xe2\x99\xd9\x8a\x14\xe1\xa5\x82\x3d\x91\xf3\x3f\x18\x2c\x81\xaa\xab\xae\x37\xbc\xfd\xda\x5d\x41\x08\x85\x43\x52\x59\xa3\xbd\x33\xd5\x71\xac\xf7\x74\xdf\xc6\x28\x80\x71\xa6\xe3\x3a\x71\x20\x17\x92\xf8\x9c\xd3\x73\x85\xca\xa7\x85\x18\x67\xb5\x80\xc4\xa6\x9b\x35\x2d\x61\x7f\xd5\xd6\x88\x11\xb4\xf3\x46\x03\xf0\xf9\x01\x13\x3e\x2a\x9f\xdf\xb3\x95\x82\x28\x6b\x43\x7c\xb9\xe9\x8d\x25\x9d\x3b\x74\xb3\x0b\xcf\xb4\x56\x26\x13\x59\xe5\x6e\xb7\xad\xed\xc9\xc8\xa6\xcb\x97\xda\xe6\x17\xfa\x43\x35\x1c\xa1\x94\x95\xc7\x6f\x58\xbb\xfe\x6e\xeb\x73\x9f\xa8\x07\x0b\x6f\x63\x5a\x5e\xd9\xce\x55\x10\x28\x8d\x54\xc6\x7a\xe6\x21\x6d\x98\xfc\x81\xcc\x74\xb2\xec\x79\x81\xd4\x05\x70\xe9\xba\xd3\x92\x96\x86\xfb\xc1\x6e\xbc\x25\x88\x9d\xc2\x43\x13\x3b\x09\x6c\x80\x31\x25\x8d\xdd\x85\x90\x8a\x3a\x78\xe9\xe8\x0b\x0c\x16\x7b\x1b\x52\x9e\x53\xea\xb7\xee\x96\xd9\xb6\xac\xb9\x32\xe5\x05\xa9\xba\xf6\x7e\x1e\xf6\x84\xf6\x09\x69\x63\xde\x5e\xd0\x54\x75\xd1\x34\xa0\xe7\xb7\xfb\x28\x49\xae\xcc\x1c\x27\xb4\x9d\xc1\x25\x40\x83\x50\x37\xd7\xb7\x9e\x18\x0c\x84\xdd\x27\xc1\x69\xeb\x38\x53\x2e\x3c\xc7\x9a\x54\x7d\xbc\x1c\x7b\xf5\x6e\xbb\xf9\xdb\x94\xe2\x16\x68\x99\xa8\xd5\x54\x96\x8e\xaf\xa4\x83\x01\x75\xcc\x6c\xe1\x5e\x40\x5f\xed\x0b\xc0\x71\xae\xc8\xf0\xbc\x7a\xde\xbc\xe7\xcf\xab\xd3\x53\xcb\x5e\xe5\xa4\x7a\x3e\xdc\xed\x9a\x65\x9e\x93\xca\x80\x06\xb9\x5b\xbf\x1a\xe3\x4d\xc0\x3c\x43\xbe\x57\xc9\x51\x9b\xcc\xad\xe7\xd3\xe7\xb3\xf3\xa9\x61\xa0\x97\x64\x33\x9a\x8e\xf1\x9c\xe4\xa3\xe5\x58\x43\x6e\x53\xcb\xb1\x2e\x1d\xc7\xba\x26\x99\x2c\x31\x27\xeb\x16\x1f\xbc\xb6\x7c\xf0\xbc\xcd\x07\xcf\x81\x0f\x2e\xe4\xc0\x3b\x6a\x5d\x99\x5a\x9b\x7c\xf0\x0a\xcf\x51\x2d\xdf\x91\xb9\xc3\x9e\x96\xdc\xa7\xbd\x17\x49\x96\xc0\x06\xf8\xa4\x7f\xab\xf4\x93\x95\xb9\x71\x6f\xb5\x93\x52\xe2\x65\xb4\x41\xf8\x36\x61\x15\x90\x51\xd2\x1f\xc2\x8f\xb7\x54\x2c\x8b\x19\xe9\x9f\xe1\x3e\x4b\xfe\x78\x79\x3d\x79\x77\xf9\xe9\xcd\x5f\x4c\x2e\x63\xc3\xac\xfb\x52\xd6\xbd\xff\x6b\x8f\xcc\x77\xeb\x05\x9a\x69\x6e\x14\x87\xa8\x34\x37\xee\x0c\x6b\x1f\x33\xb4\xbd\xf1\x0f\xe3\xfe\xdc\x18\x7e\xe5\x22\x79\xf3\xee\xcd\xa7\xc9\xeb\xcb\x97\x9f\xde\x7f\xfc\xb1\xd1\xc6\x7d\x47\x1b\xf7\x8d\x36\x6a\xc5\xbf\xdf\x7a\x26\xe8\xc9\x63\x14\x05\x5e\x4e\xc7\x7f\xa4\x01\xfa\x37\x85\xcd\xd7\xc2\xb8\xe2\xa0\xd8\x7e\x4b\xae\xd1\x6a\xdb\xc4\x51\x86\x31\x6b\x31\x98\x4d\xd3\x84\x9c\xb5\x2e\xf7\xc7\x15\xf4\xeb\x03\xe4\x22\x76\xce\x6c\x74\xb7\x53\x1a\xf4\x39\xe3\xae\x31\x70\xce\xb6\x74\x3f\x76\xae\x2a\x1e\xc7\x89\xc0\x23\x44\xbd\x08\x78\x47\xeb\xf0\xeb\x0a\xab\x0b\x00\xd5\xb2\x6f\x70\x44\xc0\x3d\x5c\x39\xe7\x96\xc5\x94\x56\x55\x6b\x9c\x8e\x51\xf7\x34\xed\xcd\x52\x58\x19\xbc\x9d\xe2\xc1\x53\x92\x31\xcc\x3c\x2d\x07\x73\x2d\xc8\xe3\xc9\x92\x77\x97\x6f\xaf\xae\x3f\x5c\xbe\xbc\xba\x26\xc2\xfb\x11\xbc\x99\x7c\xf7\xe3\xe4\xcd\xab\xe0\xbd\x7a\xa4\xaa\x96\xfd\xbe\xcc\x73\x22\xbc\x1f\x6e\x0a\x31\x4b\x6e\xee\x21\xf7\x79\x63\x72\x1f\x73\x04\xbe\x85\x9a\xec\xb0\xe6\xeb\x61\x05\xd7\xd7\x67\x32\xed\x02\x56\xdc\x0b\x70\xfe\x6d\x52\xe8\x37\x72\x3e\x92\x3d\x27\x2f\xb3\x27\xcf\x82\x8a\x49\xfa\x76\x32\x81\xee\xd9\x6c\x8d\x7f\xa2\xf7\xad\x73\xd6\x92\xaf\xda\x22\x8b\xbc\xe6\xe6\x1b\xb5\x19\x6a\xa0\x82\x95\x47\x03\xb3\xc6\x01\xc9\xcc\x6d\x62\x6f\x12\x0b\x8e\xa1\x59\x8a\xcc\xe3\x08\x3b\xc6\x58\x75\x3d\x0b\x85\xb4\x7f\xc0\x30\x5b\xbd\xf6\xf9\xd8\x1a\xa1\xde\xe3\xf6\xfc\x71\xae\x47\xbf\xda\x8d\x48\xa3\x6c\xff\xf6\x2e\x87\x6a\x39\xb8\x5d\x10\x1b\x82\xb5\xf5\x1d\x32\x31\x6f\x32\x95\x5a\xe2\xb4\xbe\xe5\xc7\xa9\xda\x6d\x42\xa9\x47\x4f\x9f\x7f\xcc\xbf\x79\xec\xa3\x62\xea\x9b\x89\x0a\x1a\x59\x62\x22\xf9\x3b\x72\xea\x40\xff\x95\xcd\x03\x14\x69\xc3\x7c\x39\xe2\x3a\xe5\x3b\x1a\xef\x76\x06\xbd\xb0\xe7\x6b\x5d\x08\xbb\x10\xed\xfc\x32\xe0\x0b\x18\xc1\xaa\x44\x28\xf5\x60\x0f\x99\xbc\xd7\x7c\x89\x12\x70\xf1\x2f\x18\xd1\x28\xf8\x69\x28\x6e\x9a\x9a\x65\x01\x97\x22\xa9\x03\x3b\x5e\x36\x07\x89\x90\x5c\xce\x04\x9d\x3f\xbe\x24\xdb\x68\xa4\x3a\x60\x10\xba\xc7\x51\x6a\xf3\x47\x61\xfb\xf2\x1d\xa0\x36\xca\x77\x1a\xbf\xd1\xbd\x52\x4c\x81\x7c\xa5\xbd\x23\xdd\x2b\x23\x31\xc9\x97\x2e\x3d\x8a\x7d\x7d\x59\xdd\xf3\xe9\x43\x65\x24\xbf\x2d\xdf\x19\xaf\x3b\xf3\x42\x0e\x4d\x3e\x87\x81\xb9\xc7\x1f\xe9\xe2\xea\xcb\x5a\xbe\x28\xe9\x82\x7e\x59\x7b\xaf\xd4\xae\x91\xaf\xec\x41\xb5\x1d\x65\x39\x04\x7e\x42\x27\x58\x4e\x73\x56\x89\xa8\xc6\x5b\xc3\xf2\xa4\xbc\x26\xcd\x5c\x34\x7b\x4f\x03\xdc\x7a\x07\xd2\xb7\x77\x58\x8b\x8e\xc1\xab\xb6\x02\x5d\xe9\xb4\x09\xdb\xda\x81\x8b\x00\xd2\xf9\x88\x8e\xc9\x19\x16\x48\x8a\x3c\x3e\x8c\x4b\xe9\xd2\x4f\xd8\x7a\x7c\xe4\x07\x1d\x95\x04\xc9\xea\xed\x86\x74\xd9\x94\xba\x92\x18\xa0\xaf\x81\xc3\x77\x4a\x83\xeb\xfb\xd5\x4d\x91\x93\x19\xe0\x03\xbf\xd1\x93\xa7\x1f\xb6\xa1\x29\xc0\xb3\x6a\x6a\x65\x2d\x8a\x6a\x49\xe7\x18\x94\xca\xca\x7b\xd2\xce\x27\xa2\x3b\x67\xd4\x7c\x0e\xa5\x26\x99\xc8\xef\x94\xdf\x9e\x52\x68\x99\x67\x58\xc8\x5a\x37\x1b\x36\x23\x05\xa6\xc9\x82\x72\x5a\x66\x82\xfe\x41\x3e\x08\x17\xa6\xa1\x61\x89\x60\x15\x23\xa3\x57\x11\xa7\x45\x8c\x7a\x1c\x8e\x7a\x96\x98\x50\x1b\xab\xca\x91\x8d\x68\xbe\xb5\xdd\x6f\x70\x36\x8e\x29\x42\x8e\x07\x16\x04\x52\x95\xc9\x87\x7e\x6b\xb2\x11\x6c\xaa\x17\xc8\xe5\x64\xf2\xbf\xac\xcc\x97\x16\xdb\x4c\xaf\x5e\x4f\x10\xe7\xcd\x4c\xca\x8b\xa8\x12\x50\x63\xea\x00\x5a\xe5\x53\xbe\xd1\x4f\x2b\x58\x19\x53\xf6\x5e\x3f\x8d\xa3\x53\x7a\x1a\xa1\x08\x57\xb6\x1f\x56\x45\x2d\x87\xa9\x0e\x05\x29\x31\x4d\xee\xca\x6c\xdd\x4e\x90\xd1\x9f\xf8\x09\xb7\x40\x45\xf2\x5e\x23\x2a\x0f\x06\x13\x07\x3e\x7b\x72\x1d\x53\x7c\x1d\x0b\x7c\xef\x68\xd8\xb5\x8e\xde\xa0\xd6\xa0\x63\xe2\x1b\x75\x82\x80\x2e\x88\x93\x2b\x3d\x21\xf2\x33\x80\x25\xd2\xd8\x94\x8d\xae\x7d\x89\x29\xb2\xd5\x56\x44\xe8\xe2\x36\x80\xb2\xab\x78\x6e\x5f\xea\xb1\x57\x6b\xc9\x0f\x35\xae\x9c\x16\x00\x2e\x1d\x0c\xba\xb0\xa0\x03\x00\x26\xfd\xf7\xc7\x98\xe2\x21\x74\x5d\xb9\x8d\x3b\xdd\x1c\x79\x85\x69\x32\xcd\xb8\x82\x7b\x23\xef\xe4\x8d\x67\xc0\xdf\x48\x93\xbf\x60\xf3\xf8\x9d\xda\x33\x56\x8f\x39\x12\x06\x08\x1e\xb0\x3b\x65\x13\x56\xdb\xd1\x7d\x69\x1a\xd2\x32\x32\x06\x99\x93\x37\x0a\x2c\x06\x30\x79\xa8\x11\xd9\xba\xd6\xe0\xfb\x70\x0d\x1a\xc5\xe4\x7c\xaa\xb3\xf3\xbd\xdb\x54\x72\x3c\x46\x43\xe2\xa7\x61\xeb\x76\xcb\xf7\xd2\xae\xb9\x4b\x5e\xec\xbf\xe4\x45\xc7\x25\xdf\x99\x74\xcd\xa1\x14\x44\x91\x0e\xaf\x36\x9a\x2f\x88\xb2\xe6\x2f\x34\x8c\x6b\x84\x23\x84\xff\x1e\x8b\x11\x1f\x4b\x81\xb8\x3c\x25\x54\xfd\xf0\xc8\x40\xa0\xb3\x76\x7d\xb7\x03\xb5\x83\xf0\x8c\x26\xe6\xeb\xd7\x5a\xbf\x0a\x33\x63\xfc\x49\x08\x87\x1f\x10\xb7\xd6\x5a\x34\xef\x9c\x7d\xa7\x95\x90\xce\x59\x5f\x2d\x44\xfb\x43\xb5\x0e\xdf\x69\x55\xa5\x2e\xe6\x80\x8d\x83\xb2\x7f\xf5\x4a\xb1\x6a\x4f\x21\xdd\x83\xbf\xea\x1e\xe8\x1a\xff\xca\xc4\xf2\x6d\xc6\xc1\x69\xfe\xfe\x9a\x0a\x41\x4b\x42\x13\x41\xb3\x72\x56\xdc\xf1\xf6\x9b\x8a\x8a\xcd\xba\xfd\xf8\x65\x36\x5d\x52\x42\x7d\x85\xd7\x87\x8f\xef\xff\xf3\xc7\xf0\x91\xd2\x81\x11\x9a\x7c\x7c\xff\xfe\x13\xa1\xc9\x74\x49\xa7\x3f\xff\x31\xab\xae\xa5\x40\x4f\x68\xf2\x87\x1f\xde\xbc\x9a\xfc\xe9\x4a\x7e\xb5\xa0\xe2\x95\xbc\x99\x61\x87\xd2\x44\xd1\x40\xdf\xab\x81\x91\xa1\xbb\x97\x0b\xab\xa3\x3a\x3d\x65\xb5\x02\x26\xf4\x55\x6c\x15\xfc\x92\x7f\xe5\xa4\x8c\xe5\x25\xa9\xe8\xb8\xe4\x64\x12\x5e\xdc\xc5\x92\x86\xbb\xe6\x73\x9d\xfa\xb3\x63\x8f\xa8\x6b\x72\x30\x70\x54\x39\x78\x01\xf8\x24\xed\x11\x6f\xb4\x23\xc6\x68\xec\xfa\x3c\x73\x17\x66\x19\x7f\x9e\x4c\x9e\x6c\x69\xfd\x64\x9b\x9f\x42\x16\xcf\x79\x5e\x14\x65\x0c\x7f\x96\x19\x9f\x15\xab\x18\xfd\xab\xd7\xd9\x7a\x32\xf9\xec\xae\x55\x18\xf0\x12\xcf\xc9\xe6\x42\xf5\x22\x9d\xf5\xec\x94\xcd\x7b\x4a\xd9\xba\xec\x35\x26\x75\xdd\x53\xfa\xd2\x67\x3f\x25\xb1\x42\xe1\xd9\xc9\x8d\xfd\x13\x08\x7e\x3b\xa0\x48\xea\x6f\xf4\x0c\xdf\x76\x68\xe0\xed\xd1\xc0\x0b\x72\xab\xce\x44\x47\xf2\x19\xb0\xcc\x20\x64\xd9\x87\xc8\x7b\x1e\xa1\x17\x4f\xcf\x2e\x3a\xf6\xe8\x2a\x11\xb4\x12\xf1\xad\x61\xf2\x51\xdd\xce\xe7\xd6\x1f\xd6\xbd\xe6\x0e\x5a\xf4\xba\xb4\xab\x61\x06\x03\xbf\x8f\x52\x40\xf5\x91\xde\xcd\x7a\xdc\x68\x2a\xd9\x32\x86\x28\x9e\x63\x11\x53\x84\x6f\xdc\xf5\x8f\x45\xad\xb7\xf4\xbd\x7e\x7c\x8f\xfb\x67\x48\x4b\x7f\x77\x81\x4b\x81\xf6\x60\x74\x17\x96\x49\x02\xa6\x1c\xbe\xcd\xad\xa7\x6d\x1b\xb0\xb2\x57\x81\x7e\x38\x44\x55\x57\xfd\xbd\x3a\xdc\x5f\xf9\xf9\xff\xc7\xdc\x9b\x6f\xb7\x8d\x23\x8b\xc3\xff\xeb\x29\x64\x7e\x19\x0d\x31\x86\x19\x29\xe9\x95\x69\xc6\xd7\x49\x9c\x6e\xcf\x78\xc9\xb5\x9d\x9e\xe9\xab\xd6\x75\x68\x09\xb6\xd0\xa1\x08\x0d\x08\xd9\xed\x91\xf9\xee\xdf\x41\x61\xe5\x22\x59\x4e\x27\x7d\x7f\xe7\xe4\xc4\x14\x09\x14\x0a\x85\xad\xaa\x50\xcb\x2d\xde\xaf\x20\xac\x62\xad\xc3\xad\xa8\xb5\xfe\x71\xb0\xd5\xf9\xbe\xf4\xf8\x5e\xcb\xc4\xb8\xa0\x4d\x1d\xef\x39\x11\xda\xda\x8f\xb4\xdf\xa6\x56\x62\x08\xea\x2a\x1c\xe7\xe5\x09\xec\x5c\xdc\xd8\x0a\xb6\x77\x64\x0b\xdc\xda\x14\xfe\x60\x5e\xcc\x25\xfa\x4e\x42\x38\x6f\x4a\x08\x9e\xfc\x70\x54\xb6\x4c\x5e\xbc\xd4\x67\x4b\xbc\x57\x26\xda\x8a\xee\x23\xb9\x2b\xe2\x77\x06\x16\x5e\xaa\xa3\x8d\x5e\xdd\xc5\xaf\xcb\xe4\xef\x67\x27\xc7\xf8\x63\xf2\xf4\x7f\x87\xbf\xde\x3e\x19\x6d\x3f\x79\xea\x88\x75\x5a\x4d\xca\xb0\x35\x30\x39\x81\x9d\xf7\x1e\x24\xc4\x75\x27\x5c\xdc\x3c\xf3\xa0\x84\x66\xff\xe3\x75\xe2\xf1\x1e\x5c\x61\xd1\x64\xab\xdf\xb9\xe4\x24\xfd\xa8\x1c\xd6\xec\x09\x9d\x24\xe7\xf7\xf7\x4e\x84\x76\x27\x1a\x14\x76\xc1\xfa\xbd\x73\x0d\x9a\xb6\x3b\x5d\xdc\x28\x92\x24\xc9\xd1\xae\x4a\xa8\xb7\xfb\x61\x68\x68\x19\x3f\x59\xaa\x77\xe5\xe8\x43\x1c\x0c\x3d\x59\xb2\x09\xbc\x96\xeb\xf8\xb5\x1c\x61\xf5\x41\x6d\xa2\xf1\x9a\xd4\xc9\xb5\xf4\xc0\x3e\xf0\xd2\x67\x24\x72\x94\xd7\xa7\xb3\x4b\xb1\xaa\x6f\xfe\x8c\x5b\xcf\x6b\xca\xc7\x8b\x2c\xe5\xa3\xc0\x3a\xf4\xe9\x13\x14\xd3\xdd\x16\x96\x4d\xbc\xfc\xca\xd6\xd5\x52\x71\xc7\x79\x82\x04\xc3\x00\xb7\xc5\xc7\x95\x2d\x6f\x27\xe0\x83\xb8\x1b\x74\x83\x38\xc0\xdd\x00\xd3\x97\xc9\xa0\xdf\x47\xcb\x7c\x3b\xf9\x10\x45\x51\x57\x52\xd1\x04\xa6\xec\xf7\xcb\xee\x8c\x71\xd2\xa5\x82\xcc\x8a\x0f\x7a\x7c\xf3\xed\xe4\x34\x84\x28\xbb\xda\xe5\x46\x21\xbc\x9d\x04\xdd\x51\x50\xca\xb9\xb7\x3d\xc0\x39\x8a\x1f\xc0\xdb\x88\xe0\x3e\xe2\x4b\x89\xf8\x3b\xd9\x6d\x96\xf4\x5f\xb0\x1f\xa8\xc1\x9f\x55\xf1\x67\x0e\x7f\xd6\xc0\x9f\x36\xf1\x97\x2b\xc9\xa0\xaf\x0e\x63\x3a\x64\xa3\x4e\xbe\x9d\xfc\x16\xa6\x68\x3b\x88\xbb\xc1\xb6\xec\x53\xda\xd2\xa7\xd2\xeb\x93\x13\x98\x7f\xf3\x4e\x87\x8f\xea\x74\x00\x8e\x57\x4e\x25\x57\xea\x4d\x25\x81\x73\x67\xc2\xb4\x6f\xa9\xbb\x65\xf6\x32\xd8\x3a\x0e\x3e\xe4\x58\x54\x2d\xd1\x6c\xb2\xcc\xbc\xc3\x57\xdc\x51\x73\x54\xde\x4e\x69\x46\x5c\x54\x91\x8a\x73\xa8\xc5\xe9\xb8\xe2\x0e\xaf\xc3\x37\xb7\xe7\x26\x1c\x8a\x11\x6c\x6c\x66\x6b\x3a\xd0\x5b\x13\x6c\x8e\x87\x95\x53\x40\xbe\x79\xdb\xd8\xf5\xec\xda\x70\x9b\xd3\x7f\x6a\x9a\x86\x24\x21\x30\x24\xef\xdb\x98\x1b\xe0\x42\x3b\x2d\x5c\xdc\x7b\x68\xf0\x55\x63\x81\x69\xbe\x0f\x0e\xba\xaa\xe5\x9c\xe7\x3a\x96\xd1\x19\x15\xc6\x74\x4e\x36\x9a\x28\xc7\x88\xa8\x10\x8c\x93\x84\xeb\x1f\xf4\x3f\xc4\x58\xf1\xcf\x68\x51\x90\xc2\xfc\x9a\x52\x61\x9f\x75\x95\xfb\x7b\xcd\xcf\x95\x95\x10\x4e\x5d\x57\x46\x2f\x79\x6d\xe3\x2d\x41\x6c\x6f\x7b\x20\x8c\x6c\xae\xed\xe1\x55\x83\xb6\x84\x3a\x27\x0d\xba\x20\xc3\x97\xad\xf9\x3e\xa0\x6b\x2f\x2d\xfe\xc6\xff\x41\x3e\x57\x9b\xf3\x8f\xde\xf9\x82\x5f\x5b\x57\x06\xf5\x59\xc7\xde\x6d\x52\xc2\xef\xbb\xa1\x8a\x4e\x90\xfe\x13\xfe\x19\xff\x1b\xff\xb3\x39\x26\xad\x2c\xfa\x4f\x78\x35\x57\xff\xf3\x6a\x51\xe0\xdf\x2b\x55\x6d\x37\x94\xdc\xae\x53\xb5\x35\x8a\x7a\xea\xe6\xdf\xfe\xbd\x20\xfc\x6e\xb3\xb2\xab\x2f\xb2\x1a\x45\xc1\x08\xf4\x62\xa2\x73\xb9\xae\xb8\x18\x73\xb5\xc6\x6c\x36\x67\xb9\xac\xa2\x44\xfa\x07\x8a\x9b\x88\x08\xe4\x77\xe1\x02\x21\xac\xad\xa1\x9e\x40\xb7\x2e\x1f\x37\x83\x0f\x6b\xe9\x02\x6e\xc1\x37\x6c\xc6\x54\x9c\xd2\x6c\x02\x0d\x3d\xb2\xa2\x7c\x71\x51\x88\x54\x90\x4f\xa9\xf7\x98\x1a\xf5\x30\x12\x0f\x0e\x4f\x2a\x9e\xa6\x42\xf0\x0d\xc7\x5f\x83\x9f\xa5\x79\x7a\x4d\xd6\xb8\x80\x2b\x5b\x7b\x3c\xc6\x13\x3c\xc5\x57\x7f\xf4\x82\x63\x65\x85\xdf\xfe\x5b\xcd\xf2\xa5\x9f\x50\xa5\x8f\xaf\x89\x68\x4a\x33\x5d\x11\xa9\xe2\xab\xad\x34\x2c\xc4\x37\xb4\x90\xb0\x26\x8f\x84\x6c\xaa\xad\x6d\x21\x9d\x4c\x5e\xcb\x79\xf4\x33\xcc\xd7\x8d\xe0\x43\x8c\x35\x5b\x69\x2d\x74\x5a\x9c\xd1\xd9\x3c\x23\xaf\x33\x3a\xfe\xb8\x31\xf8\x4a\xad\xb5\xf0\xaf\x89\x90\x38\xbc\x62\x8b\x7c\x52\x6c\x0c\xbf\x52\x6b\x13\xf8\xaf\x33\x0a\x4e\x48\x63\xf1\xe8\x46\xbc\xaa\x1b\xf7\x84\xe6\xd7\xae\xda\x27\xf5\xaa\x02\xe1\xa1\x76\x4f\x19\x83\x9a\x8f\xea\x9b\xad\xf4\x10\x74\x3b\x51\x1e\x05\xde\xd5\xda\x84\x6a\x07\x9b\x2e\x0d\x4b\xa5\x83\xf5\xab\xe2\x9a\x88\xfd\x0c\xa2\xdf\x3d\x6a\x5d\x54\xab\x6d\x82\xb9\x2e\xfe\x58\xf4\x75\xb5\xb5\x2d\x14\x9f\xd6\x87\x62\xf3\x3e\x14\x9f\xd6\x87\x62\xf3\x3e\x00\x9b\xf4\x29\xbd\xa8\x57\x7c\xb8\x95\x4f\xe9\x49\xbd\xe2\xfa\x56\x0c\xb7\x7c\x26\xee\x32\xf2\x86\xcc\x39\x19\x43\x40\xab\x23\x52\x14\xe9\x35\xd9\xbc\xd5\x07\x00\xad\xc5\x02\xbc\x63\xde\x78\x1c\xd3\x46\x8d\x5a\xc3\xb5\xb5\xb0\x5f\x1b\xfe\xea\x50\xb3\x57\x1b\xc1\xa6\x1b\xc1\x3e\x27\xbf\x8b\x33\xc3\x46\x6c\x04\x97\x6d\x88\x33\x27\x8f\x98\x59\xe9\x66\x40\x25\x4b\x07\x96\x60\x8f\x43\xb9\xd8\x0c\xba\xdd\x1b\x1f\x07\x3d\xdb\x08\xba\x04\x7c\x26\x79\xc3\xc7\x01\x5f\x6c\x0c\x1c\x0c\x5e\x36\x84\x3a\xde\x08\xaa\x0a\x64\xf5\x38\x7c\x27\x1b\x41\x3e\x7a\x7f\xbe\xf7\xea\x70\xff\xe2\xf5\xfe\xe1\xe1\x86\x80\xa7\x91\x5f\x69\x03\xbc\x8f\x34\xf7\xba\x19\xf8\x2b\x0f\xef\x07\x44\xb5\x26\x4f\xbd\x5e\x6a\x53\x82\xd7\x67\xb7\x06\xf2\xc9\x51\x0d\x87\xae\x7c\x7a\x40\x23\x88\xc2\x2a\xad\x21\x71\x89\x5f\x71\x75\x64\xef\x46\x67\xaf\xd2\x2c\xbb\x4c\xc7\x1f\x77\xe4\x97\x1d\x13\x24\xef\xff\xa8\xf7\xad\x71\xe0\xa1\xe3\xce\xa2\x02\x85\x2a\x73\xde\x26\x71\xcc\xd7\x49\xb3\x1b\x59\x81\xfd\x69\xa1\xee\x35\x24\xed\x54\xb6\xb4\xe8\xbe\x75\xda\x22\xad\x95\xb4\x9f\xe2\x60\xdb\xa5\xe3\xf2\x53\x3c\xe4\x90\xe4\x32\x4b\xef\xd8\xa2\xa5\xbe\x20\xb3\x79\x96\x0a\x12\x5b\x40\xc5\xd3\x0a\x24\x9d\xf7\x22\x57\x81\x45\x1f\x49\xe7\x15\xa2\xec\x26\xb3\x69\xe3\x58\x88\x9f\x22\x18\x4f\xf4\xc1\x4f\x26\x3b\x57\x24\x15\x0b\x4e\x1a\xd3\xf7\xf3\x19\xdc\xb6\x8c\x71\x9a\x2c\xeb\x19\xf6\x3f\x77\xea\x3d\x15\x2b\x04\xba\xd3\x4c\xb2\xdf\x51\x4e\x21\x3a\xd3\x3e\x5b\x93\x5b\x3f\x6d\xc4\xe8\xb3\xe1\x06\x53\x65\x35\xd4\xcc\xad\x0f\xd0\xa3\xb3\xfd\xe3\x37\x17\x7b\xaf\xcf\x0f\x4e\x8e\xd5\x6c\xab\x1b\xa3\x98\x29\xd6\xeb\x89\x21\xad\xec\x58\x23\xe5\x0f\xa6\x82\x55\x20\x2c\xca\x8e\x6a\x48\x6d\xfa\xed\xc6\x48\xb5\x38\x8c\x2e\x84\xa2\x68\x46\x19\x94\x93\x21\x0a\xb6\x09\x6a\x44\x5e\xb4\xa9\x79\xb7\x94\x59\x92\xf1\xd6\xf5\x6c\x2a\xf2\xe6\x40\x51\x6f\xa0\xf2\x97\x83\xdd\x5c\x0d\x14\x4b\x06\x2f\xd8\x0f\x39\x5c\x10\xd0\x21\xab\x0e\x14\x1b\x75\xda\xac\x2a\x76\x21\x2e\x1d\xd5\xc1\x2e\xaa\xd1\x26\x4d\x50\x49\x51\x8b\x25\x49\x4b\x54\xaa\xdb\xcf\xac\x1e\xb1\x33\xf5\x57\x6c\xb6\xf9\x8a\x6d\xd5\x8f\x7d\xaa\x8b\xc9\x0a\x35\xe5\xff\x55\x1c\xef\xb1\xe5\x01\x37\x4f\xf4\x3b\x58\x9f\xe8\xb7\x26\x77\x1b\x0f\x8d\x12\xe1\x74\x3e\x27\xb9\xd2\xf8\xe8\xfc\x6b\x55\x15\xd0\x8a\x64\x1c\xab\x03\x51\x6e\xa6\x03\x7d\xd4\x50\x6d\x62\xd5\xf9\xb9\xce\xb6\xaa\x7d\xc1\x70\x84\x70\xcb\x00\xb5\x7b\xff\x0d\x95\x2d\x32\xc8\x06\x01\x76\x3f\x5e\x51\x50\xda\xc8\x09\xf5\x50\xd2\xf3\x12\x3b\x10\x31\xc7\x0d\x10\x31\xff\xd4\x51\xa8\x6a\xba\x3f\x75\xa5\x18\x3e\x63\xd5\x11\xd7\x76\x6e\xad\x5c\x71\x7f\xf6\x89\x36\x78\x1e\x07\x2a\x2d\xe7\x31\xb9\xcd\x68\x4e\x02\xfc\xec\xdb\x38\x18\xa7\xf9\x98\x64\x41\x89\x8b\xfa\x40\xf3\xe8\x1c\xce\x92\x8a\x0c\x62\x9a\x0a\x02\x2c\xf7\x69\x7a\xb9\x10\x6e\x78\x86\x41\xba\x10\x6c\x9c\xce\xa9\x80\x0c\x59\x01\x56\x2f\x18\xe7\xca\x50\x5a\xfe\xba\x62\xe3\x85\x24\xcb\xc4\xaa\x7e\x83\x2b\xc6\x67\x01\x0e\x66\xe9\xef\x3a\x18\x11\x0e\x66\x34\xb7\xcf\x10\x96\x6e\xca\xb2\x09\x5c\x83\x70\x92\x4e\x58\x9e\xdd\xc1\xe3\xbf\x17\x94\x03\x88\x82\x64\x2a\xd8\xf4\x1b\xca\x89\xb1\xfe\x2e\xe6\x24\xcb\xc0\xac\x26\x90\x07\xe3\xa5\xbe\xe1\x09\x04\x15\x99\xe4\x16\x3d\xc0\x2a\x2a\xb2\xc1\x49\xee\x21\x16\x1b\x9d\x52\xe0\xa1\x84\xfd\xca\xea\x25\x0f\x83\x79\x5a\x08\x12\xa8\x78\x69\xaa\x38\xd1\xda\x1a\x49\x39\x17\x84\xc8\xd5\x18\x2f\xc4\xa3\xca\xd3\x7c\xbe\x51\x8d\x12\x5f\x2e\x2e\x2f\x33\x52\x40\x84\x7d\x39\xfd\xe6\x9c\x88\x7f\x90\x3b\x1d\xb2\xc4\x1a\xdd\xa4\x43\x12\x7d\x24\x77\xaf\xd9\x44\x31\x1f\x6b\x80\x86\x08\x0b\xdf\xa8\x74\x28\x46\x60\x81\xb7\xaa\xf4\xd2\xa5\xf3\x56\xc7\x3b\xcc\x1f\x85\x7c\xa4\xeb\x68\x4e\xa2\xc4\x63\x9b\x3a\x65\x1d\x06\x2a\x63\xb0\x37\x93\x65\x85\x2c\x0c\x88\xec\xa1\x26\x0b\x41\x38\x0b\xf5\x7c\xdf\xc9\xcd\x84\x37\x9b\x39\x56\xb3\xde\xd4\x2b\xc6\xe9\x9c\xec\xcc\x39\x29\x0a\xaf\x0c\x4c\xd4\x83\x5c\x17\x82\x5f\x3b\x52\xbc\xaf\x16\x38\x51\x69\x7a\xd7\xe3\x8b\x2d\x00\x66\x07\x4e\x42\xf8\x48\xee\xde\xc9\x56\x75\x1b\x1f\xc9\x5d\x03\x8b\x8f\xe4\xee\xfd\xdc\xb6\xd0\x3a\x88\x58\x57\x95\x82\x92\x5f\xef\x0d\xbb\xcd\x3d\xc8\x13\x76\xeb\x61\xef\x87\x64\xcf\x7c\xab\x9f\xb4\x1a\xf9\xd3\x71\x63\x1d\x6d\x1d\x90\xf6\x7a\x0d\xe3\xfe\xb4\xd7\x03\x5e\x35\x1d\xb2\x06\xab\x98\x26\xa9\x61\x15\x2d\x17\x98\xc2\x7b\xbf\x21\x82\x90\x0e\x3f\x5c\x69\x5e\xcd\x16\xb0\x68\xa0\x3e\xcf\xda\xeb\x35\xcc\x75\x53\xb4\xe4\x2b\x58\xb2\xb4\xc6\x92\x0d\x0b\x9c\x8f\x4a\x54\x92\xcc\x37\x17\xf2\x7b\x93\x86\x92\xd7\x96\x4c\xf4\x56\x05\x1f\xbd\xa0\x02\xd4\xeb\xe5\x51\x21\xd8\x5c\x6e\xc9\xe9\xb5\x4a\x16\x80\x3c\x4f\xa8\x62\xf3\xc3\xa9\xed\xd2\xf2\xff\xdd\xcc\x6e\x17\x82\xa7\x79\x41\x65\xab\xe7\xac\x16\x91\xe2\x62\xbc\xe0\x9c\xe4\x02\xb4\x6c\x98\xb7\xbc\x34\x46\x77\xf2\x19\x44\x1d\xef\x77\x42\x30\xc4\x00\x20\xbf\x53\xfb\x57\xbb\xc9\xf2\x08\x16\x77\xaf\xa7\x1f\x2c\x07\xf7\x69\x12\x6f\xf5\xba\xf7\x8b\xcb\xbb\x97\x9c\xdd\x16\x84\xef\x3c\x94\x4c\xe0\x8f\x18\x0c\xd4\xed\x10\x1e\x21\x43\xe3\x14\x17\xab\xbc\x84\xb2\x9a\xf9\xeb\xe7\x99\x55\x8b\x64\x35\x17\xd9\x60\x2b\x82\x11\xce\x49\xca\x49\x21\x4e\xae\xce\xef\xe6\xb5\x8c\xf8\x2a\x3a\x46\xca\xf5\x6d\x08\xce\x93\x8a\xeb\x9a\x16\xb8\x76\x45\xf2\x92\x18\xdf\x39\x81\xe2\xca\x4f\x3f\xb2\x10\x7a\x21\x5e\x68\x4b\x77\xe7\x35\x22\x3a\x52\xdc\x75\x8d\x94\xa5\xc1\xe8\x9f\x54\x4c\xfd\xe8\x2c\x2b\xf1\x32\x60\x09\xf8\x57\xad\x01\xcc\x09\x27\xf9\x04\x02\xb7\x56\xec\x4c\xfd\x45\x14\xd9\x42\x3a\x7e\x81\x3e\x77\x54\x06\x87\x3f\x2a\x30\x99\xe4\xd8\xb2\x01\xe2\xdf\xfc\xd5\xc5\x26\x6f\xf9\x5b\x85\x54\x42\xa3\x69\x5a\xbc\x39\x39\x6a\xd9\xa0\xc9\xee\x84\x8d\x81\x5d\x8a\x60\xb2\x9e\x01\xcf\x06\xb1\xc9\x62\x6d\xa3\x64\x5b\xb5\x2d\x08\x3f\x1e\x97\x6e\xb8\x86\xaa\x2d\x6b\xc1\x5f\xb2\xc9\x9d\x23\xcb\xc1\x44\xb1\x70\xb7\x34\xcb\x0e\x80\x23\xd0\x1d\x8a\x25\xc7\x37\xa9\xbf\x82\xe8\xf7\x19\x49\xf9\x29\x20\x23\x0b\xd5\xc2\x98\xaf\x64\xff\xaa\xa3\x64\xaa\xe9\x41\xf2\x02\x6d\x55\xda\x6f\xbc\x73\xf3\xc1\xf2\x10\x71\x86\x45\x0a\xb6\xee\x8f\xe1\x46\x6d\xff\xef\xef\x83\xc0\x84\x5c\xd5\x70\xee\xef\xc3\x6a\x19\x7d\xee\x56\x22\x21\xa0\x12\xab\x78\x90\xc0\x6b\xb4\x24\xc3\xa9\xf4\xd7\x2f\x2a\x6c\x5a\xb7\xb2\x53\x44\x7f\xff\xef\xf7\xfb\xa7\xbf\x5c\x1c\x1c\x9f\xef\xff\x78\xba\xa7\xce\xef\x70\x11\x3d\xa9\xbb\x97\xf8\x18\x59\x77\xae\x5d\x88\x6e\xa4\x0c\x3f\x4c\x58\x64\x5b\x28\xae\x7c\xac\x7c\x52\xa9\x3e\xba\xe3\xba\xd2\x65\xe1\x1f\x1a\xe3\x0d\x0e\x8d\x76\x93\x1c\xef\xd8\xa8\xec\xab\xab\x76\x52\x08\x24\xf7\x07\xb6\x4f\x01\x41\x24\x4c\x32\x1e\xc5\xe0\x14\xc9\xb2\xdc\xbc\x03\x4d\x9b\xb2\xf5\x27\xdf\xc3\xe1\x49\x1f\xca\xed\xb4\x91\x10\xdd\x10\x8c\x3f\xbb\xdd\x5d\x7d\xe4\x36\x87\x7f\xa1\x69\xe6\x6e\xa2\x3f\xe9\xe0\x7e\xe4\x61\x6c\x4c\xba\xbe\x08\x47\x37\x4d\x96\x33\xb6\x28\x08\xf0\x51\x71\x00\xcf\xec\x46\x92\x05\x1e\x33\x92\xde\x10\xf3\x7a\x21\x82\x12\x5f\x25\xac\x7e\xe3\x01\x54\x29\xd4\x71\x63\xe3\x12\x09\xb6\x18\x4f\x0b\x91\x72\x11\x07\xf0\x7c\x26\x9f\x03\x0c\xcf\x33\x26\xa1\xc2\xe3\x11\xbb\x21\xfa\x2d\xc9\x27\xfa\xe5\x7e\x3e\xd1\xef\x94\x68\xa6\x5f\xbf\x56\xda\x09\x29\xcd\x48\xf1\x25\x0e\xb4\x58\x03\x6f\x16\x73\xf8\xfd\x7e\x0e\xbf\x40\x70\x82\x17\xef\x94\x08\x05\x5d\x50\xb5\xe0\x51\xd5\x83\x47\x59\x13\x1e\x64\x5d\x9d\x43\x67\x46\xf2\x45\x1c\xe8\x1f\x47\x24\x5f\x04\x78\x9c\xd1\xf1\xc7\x38\x18\x2b\x13\xaf\xc9\x65\xa6\x5f\x4c\xd8\xe2\xd2\x5a\x7e\x81\x5c\x47\xf3\x38\xd0\xf2\xa2\x7e\xc3\x16\x42\xbf\x3a\x91\x22\x5f\xb1\xb8\x9c\x51\x11\x07\xea\x6f\x80\x41\x84\x8f\x8d\x24\x3f\xd6\x09\x54\xc6\x26\xa7\x0a\x4f\xaf\x35\x25\xe5\xa3\x26\xa4\x7c\x54\x2f\xd4\xb3\x1e\x41\xf9\xb8\xaf\x44\x5f\xf9\xa8\x07\x50\x3e\x1e\xca\x47\xf5\x56\x8e\xb0\x7a\x79\x72\xa3\x4a\xb2\xb9\xfc\xcd\xe6\x06\xd6\xc4\x40\x9a\x04\x25\x9e\x44\x47\x27\xef\xcf\xf6\x2f\xf6\x8f\xcf\xf7\x4f\x2f\x0e\xf7\xf7\x7e\xde\xbf\x38\x3a\xf9\x79\xff\x62\xff\xe7\xfd\xe3\xf3\xb3\xdd\xe6\x14\xd2\x18\x34\xe6\x90\xc6\x01\x9e\xd5\x24\x80\x47\x98\x04\x65\xbc\x2c\x11\xe6\x8c\xd9\xd3\x37\x90\x27\x77\xd0\x76\xbc\x99\x13\x16\xa6\xde\x4f\x2a\x48\x71\x51\x73\xcf\x86\xbb\x46\x88\xe6\x64\x12\xc6\xfb\x61\xbb\x21\x16\xa6\x12\x9a\x93\xea\xcc\x2d\xb1\x09\x48\x69\x94\x14\x6a\x82\x43\x0a\x11\x2d\xf6\xaa\x88\xf9\xd4\xd7\x64\x78\x88\x07\x58\xe8\x58\xf5\x18\xc4\xda\x0a\x30\xbf\x1c\xd2\xf1\xdb\x9a\x27\xe2\xfd\x7d\x51\xb3\x6e\x44\x21\xb3\xde\xd5\x36\x18\x61\xba\x9b\xc6\x2b\xd8\xa8\x14\x21\x15\xf5\xeb\x90\x16\x10\x7b\x29\x54\x3e\xde\x3b\xe9\x7c\x9e\x51\xbd\x7d\x39\x07\x6f\x95\xe0\xa9\xb0\x87\xa7\xac\x9e\x4e\x26\x2a\x90\x62\x5b\x4d\xbc\xc5\x22\x5a\x84\x41\xd4\xf2\x0d\xb9\x2c\x92\x92\x47\x87\x90\x13\xe1\x87\xf7\xb9\xec\x48\x57\xb0\x6e\x3a\x99\x74\xff\xda\xa8\xf7\xd7\xae\xf2\x2b\x13\xac\x2b\x89\xd4\xd5\x47\x77\x37\x7c\xb2\x64\x51\xa1\xfb\x75\x7f\xcf\x86\xfd\x91\xe1\x5b\x4a\x14\x75\x8f\xd2\x8f\xa4\x5b\x2c\x38\xe9\xde\xb1\x45\xb7\x20\xa2\xeb\x91\x58\x02\x13\x53\xd2\x95\x33\xa9\xcb\x78\x37\xcd\x2d\x58\xc9\x7a\xeb\x2f\xd1\x07\x64\xbd\x47\x32\xf9\x21\x47\x0d\x0f\x84\x69\x5a\x78\x3e\x16\xca\x81\x2f\xc7\x99\x09\x9e\x07\xd3\x4c\xcf\xc4\x90\xe1\x0c\xe7\xc3\x6c\x64\xa6\x9f\x79\xef\x1c\x58\xac\x6f\xc5\x23\x26\x80\xc9\x27\x26\xe7\x72\xf2\xd2\x65\x17\x4b\x6b\xf6\x78\x08\xdc\x7d\x12\x9b\x38\xab\x9b\x43\xb8\x8e\xbc\xc2\x92\x71\xb0\xd9\xa7\x25\xa6\x35\x80\xe0\x41\xb0\x67\xc4\xae\x30\x98\xa4\x22\xdd\xd1\x63\x65\xae\xe9\x68\x62\x6d\x6c\x9a\x5c\xc8\x30\x07\xad\x21\xf0\x98\xb9\x09\xe3\x48\x22\x2b\xc9\x15\x38\x4d\x98\xbe\x8d\xeb\x50\xf0\x1c\xb5\xd1\xb2\x21\xc0\x1f\x44\xf4\x5b\x2a\xc9\x90\x45\x54\x90\x59\x58\xa0\x4e\x3f\x49\x92\x05\xf8\x65\x39\x97\xcb\x06\x6e\x3b\x81\x8a\x84\x42\x4d\x98\xbd\x75\x78\x2e\x94\x22\x6a\x84\x50\x59\xd2\xab\x90\x3a\x81\x6d\x9c\x6c\xf5\xf1\x24\xe9\xbf\x98\x38\xcf\xa1\x89\x8b\x03\x48\x87\x93\x51\x67\xda\xeb\x4d\x55\x74\x66\x70\x3a\x4d\x12\xde\xeb\x85\xe3\x64\xaa\xa9\xcc\x21\xda\xc0\xd8\xba\x00\x8d\xd5\x55\xeb\x03\x5b\x69\xaf\x67\x6f\x34\xa7\x43\x31\x32\xd4\x93\xcf\xf8\x2a\x11\x78\x5e\x19\x2c\x9e\xd8\xb5\xaf\xf6\x3c\x35\xb4\xc1\x11\x6c\xc1\x37\x6a\x87\x71\xd6\xc6\x39\x15\xee\x4b\x48\xf0\xd6\x40\xfe\x13\x91\xe4\x57\x30\xc4\x92\x49\x69\x86\x45\x54\x8c\x39\x21\xf9\xbf\xec\xd3\x2f\x58\x44\x63\xb0\xb2\xfd\x97\x7d\x82\x77\x82\x67\xff\x20\x77\x10\x91\x5f\xa8\x87\x62\x4a\xaf\xf4\xa3\xe4\xf9\xd4\xd3\xe5\x42\x08\x96\x03\xc3\x9a\x49\xae\x47\x5d\x24\xac\xb2\x17\xe2\xf6\xd6\xda\x70\x2f\x22\x52\x2f\x2a\x52\xaa\x4e\xaf\x3a\x4b\x5a\x0e\x82\x21\x1b\x25\x24\x79\xe9\xc9\xdf\xc4\x80\xe0\x09\xa9\xa2\xf1\x42\xf4\x7a\x90\x14\x24\xca\xd9\x84\xc8\xdd\xca\x25\xc9\xe0\xf7\xf7\x5c\x85\xa2\xdc\x0a\xfb\x78\x1c\xe9\xc0\x64\x05\x0a\xe5\x32\x46\x2f\x50\xeb\xe2\x13\x68\x37\x0f\x05\x9e\x87\x57\x98\x20\x14\x43\x3e\xff\xf5\xeb\xa9\xd7\xa3\xae\x02\x76\x4a\x80\x63\x36\x21\x65\x87\xc8\x7d\x18\xc6\xcc\x44\x8a\x08\x19\x9e\x29\x75\x25\x4c\x83\x9b\x56\x1a\x08\x45\x83\x6a\xff\x3b\x13\x26\x77\x9f\x15\x78\xab\xe8\x19\x92\x1a\x39\x04\x8a\x45\x4b\x12\xcd\x39\x80\x35\x09\xbc\x25\x1b\xd9\x50\x74\x3a\x7f\xcd\x2d\xe5\x9b\xa9\xb8\xb6\x57\xa0\x1d\x55\xfe\x99\xa5\x39\x67\x5a\xa3\x13\xf8\x14\xea\xf5\x36\xa2\x18\xa0\x49\x15\x9a\xca\x03\xb4\x46\x37\xe5\xc3\xd6\x18\x5d\xd4\x4a\x50\x81\x6f\x50\xa9\x70\x24\x11\xcb\x43\xb1\xad\xcf\xb5\x00\x9b\x03\x4e\x39\xba\x84\xcd\xa0\x30\xed\xc4\x04\x45\x65\xee\x6d\xc2\x02\xf2\x57\x8a\xda\x26\xac\xc3\x74\xeb\xf4\xe7\x04\x41\x0e\x4b\x29\xc3\xd5\xb1\x18\x36\xa8\x30\x0a\xb0\x3f\xc0\x5a\xf8\x56\xb3\xda\xdf\x6d\x73\xb9\xc5\x42\x24\xb4\x4a\x4b\x76\xd7\x55\x1e\x9e\xa2\xe2\xe1\xa9\xcd\x52\xd4\xe6\x4b\x81\x4d\x81\x68\x39\x4c\x6d\xc0\x59\x5a\x88\x83\x35\x9b\x30\xee\x23\x73\x7d\xb0\x6e\x03\x66\x7a\x03\x56\xd6\x29\xb5\xbd\x14\x52\xf5\xe4\x76\xaf\x4f\xe5\xc6\x9e\xda\xcd\x95\x20\x9c\x47\xf3\x45\x31\x95\x8c\x4a\x59\x96\x90\xc8\xdd\xe8\x65\x20\xf4\x9b\xb2\x25\x59\xcf\x7a\x11\x6f\x62\xec\x8a\x55\x9c\x94\x59\x18\x1b\x1e\xd3\xd5\xe0\x49\xcd\x95\x89\x88\x0e\xff\x58\x9d\x82\xbc\x8d\xa5\x1d\xf2\x91\x62\xd1\x2a\xbc\x99\x40\x11\xbb\xba\x0a\xdd\xe4\xf8\xdb\xdf\xbc\x10\x98\x1e\xd7\xa7\xda\x69\x67\xdf\x56\xdf\xbb\x97\xd8\xba\x98\x87\x28\x79\x19\x84\x35\x5b\x6a\x14\x54\x34\xed\x57\x9b\xeb\x1c\x8c\x98\xfe\xc7\xb2\xec\xae\x55\xa0\x6f\x28\x5c\xd7\x84\x69\x15\xac\xfd\x13\x44\xea\xea\xd8\x27\xe6\x85\x09\x7e\x60\x7f\x53\x6d\xe9\xb5\x95\xb7\x4e\xa2\x2d\xb5\x49\xed\x1f\xff\x1c\x5d\x34\xbf\x77\x1a\xed\x30\xdc\x06\xa7\xd7\xe3\x56\xdf\x1a\xba\xa6\x13\x97\x19\x96\xce\x80\xec\xfa\x13\xde\x62\xbd\x1e\xdd\xa5\x6a\xe9\xc9\x5d\x51\x76\xba\xfe\x5b\xad\xf0\x73\x9e\xe6\xc5\x15\xe1\x01\x8a\x87\x81\x95\x48\x03\xac\x25\xd0\xc0\x8a\xa0\xfa\x39\x53\x92\x5e\x60\xc4\x4d\x78\x94\xf2\xa5\x2e\x39\x09\x46\x26\x1a\x78\x28\xb7\x31\xd3\xe8\x15\xfd\xfd\x27\xc6\x3e\x16\x43\x32\x4a\x96\x73\xce\xe6\x85\x6c\xcf\x47\x60\x54\x96\x28\xf6\xbb\x57\xa3\xb5\x23\x52\xb2\xd5\x47\x9b\x18\x0f\x3f\xa8\xe4\x79\x54\x22\xf3\x87\xa6\xef\x63\xb5\x41\x9f\x4f\xef\xd3\x12\x90\x84\x3c\x42\x63\xa8\x11\x7f\x94\x9a\x70\x5d\xbf\x37\x49\x8e\xdd\x16\x58\x2e\x08\xb6\x20\x00\x84\x12\x01\x7b\x3d\xe2\xd4\xd6\xbb\xde\x73\x5c\x0d\xe6\xfb\x69\xb1\xe5\x2a\x2e\x7a\x2d\x11\xe1\x88\x65\x79\xef\xef\x89\xe1\x79\xe5\xa3\x62\x89\xe5\x93\x61\x93\x25\xeb\x79\x3b\xa5\xe3\xe9\xcb\x81\x09\x92\x24\x39\x4b\x08\xdd\xf6\x90\xab\x4b\xcb\xd0\xfd\x55\xdf\x88\x75\x0b\x59\xa5\xeb\x0e\xfc\xee\x2c\xbd\xeb\xd2\x5c\x70\x36\x59\x8c\x49\x77\xcc\x59\x51\xec\x14\x54\x90\xae\x0a\x0b\x20\xeb\xdc\x2c\xb2\x5c\x72\xd2\x34\xa3\x82\x92\xe2\x45\x77\x9e\x91\x54\x32\x3f\x39\x08\xd2\x62\x9a\x8a\x2e\xd0\xa1\xe8\x5e\x12\x59\xe1\x92\x2d\xf2\x49\x37\xe5\xa4\x3b\x07\xba\x65\x77\x5d\x65\x28\x31\x89\xba\x6f\x19\xd7\xd1\x1d\xf2\x2b\xc6\x67\x80\x37\xee\xd2\x7c\x9c\x2d\x00\xc1\x29\xbb\x95\x62\xb8\x36\xa7\x81\x23\xb1\x7b\x9b\xf2\x9c\xe6\xd7\xb8\x5b\x10\xd2\x9d\x0a\x31\x2f\xe2\xa7\x4f\x61\x62\xfc\x56\x44\x63\x36\x7b\xea\xad\xbf\xe2\xe9\xcd\x20\xfa\xfd\xe9\xff\x27\xd8\xf8\xe2\x52\x75\x7a\x07\x3a\xbd\xe3\x3a\x1d\x75\xcf\x14\x19\xae\xae\xc8\x58\x90\x49\xdc\x0d\xfe\xba\x4d\xb6\xff\x1a\xfc\x55\xc7\x0d\xb3\x7e\x7c\xad\x83\xa8\x0d\xa7\x83\xaa\x29\x7d\x3c\x4b\x29\xe4\xd7\x4f\x5c\x40\xb2\x6a\xb6\xa5\xca\x16\xa6\xd5\x4b\x43\x32\x32\x59\xed\x72\xef\x36\x4f\x6e\xce\xc0\xb0\xe4\x48\x89\x2e\xc4\xf9\xe8\x41\x90\xad\x2a\x0b\xd9\xb6\x58\xa9\x76\xee\xbf\xbf\x87\x48\x0c\x0e\x82\xae\xd7\x56\x87\x35\xea\x14\xab\xda\x81\xf0\x79\x95\xf0\x68\xc5\x2a\xf0\xb2\x28\xab\x14\xad\x3b\xa2\x55\x2f\x73\x5c\x96\x0f\x5b\x76\x15\xde\xac\x5a\xb6\x62\xab\xd9\x18\x3b\x97\xde\xd6\xa6\x50\x59\x3f\x96\x66\x18\x33\x15\x93\x0e\xab\xf4\x4e\x5e\x0b\x05\x26\x15\x9b\xcf\x7a\x90\x46\x68\xd4\xc4\x4e\xec\x58\x13\x16\x0e\x09\x57\x21\x16\x4b\x07\x8c\x46\xd5\x95\xb1\x5a\xdb\x99\x64\x24\xbd\x36\x32\x37\x72\xca\x37\x37\x59\xb8\x37\xa7\x69\x7e\x4d\x92\xb1\x7b\xe1\x79\xd6\xb6\x0d\xf0\x58\xf6\x59\x52\xc9\x15\x0b\x51\x59\x6b\xa1\xe2\x27\xbb\x0e\x4a\xb3\xb4\x02\x36\x03\xd6\x6f\x85\x55\xf8\x44\x87\xb3\x32\x53\x41\x8b\xc9\xcd\xc8\x8c\x2e\xd8\xb2\x93\xa5\x1d\xdb\xaa\xdf\x84\xc2\xc6\xbc\xf4\xe4\x39\x95\x6c\x45\x91\x99\x7b\xef\xd1\x8b\x7a\x5c\x52\x3f\x61\x3c\x96\xe7\xc1\x91\xc6\xbd\x12\x63\xcd\x8f\xa4\xc5\x1a\x11\x48\xd2\xf6\xc8\x54\x9e\x91\x9c\xc9\x1f\x67\xfd\xe5\xcc\x62\xc0\xa2\xac\x98\x52\xd9\x49\x33\x1c\xe1\xdc\xcd\x9c\x96\x38\x50\xf9\xaa\xdd\x64\x2b\xbf\xbf\xcf\x2b\x49\xa1\x2a\xbf\xc9\xe4\xfe\xbe\xba\xb7\x58\x04\x16\xfe\x51\x5f\xb9\xc5\x57\x13\xaf\x12\x64\x66\xec\x7a\xb7\x50\x19\xb3\x6a\xea\xa5\x53\x65\xc4\xd7\xf1\x3d\x5c\xe1\x36\xe2\x15\xb9\x62\x9c\x84\x92\x7b\xe3\x85\x1a\x16\x15\x12\x7c\x3f\x9f\xec\x5d\x81\x85\x0e\xc8\x8c\xfa\x0b\x98\xbf\x4f\x12\x2f\x4a\x94\x55\x68\xeb\x1d\x61\x57\xff\xf5\xf4\xaf\x7a\x06\xde\xdf\xaf\xfc\x74\x66\x55\xc4\x2d\x45\xd8\x7f\x8e\x36\x28\x55\x6c\x50\x88\x6d\x50\xe6\x96\x5c\x7e\xa4\xa2\x56\x50\xe7\x75\xe9\xf8\x73\x72\xb2\x01\xfb\xd5\x88\xb6\xb1\x99\xff\xd3\x26\x21\x3c\x94\xe5\xd5\x9f\x68\xdd\x5f\x0b\xec\x6e\xee\x10\x45\x04\x32\x26\x99\x60\x11\x29\xed\x80\x96\x80\xf1\x92\x16\x72\x17\x8b\xb7\xfa\x58\xdb\x89\xc5\x36\x78\xb8\xb9\x19\xb2\x36\xaa\xab\x4d\x31\x94\x49\x59\x30\xe7\x44\xd9\x71\x04\x2d\x26\x1a\x15\x6b\xb4\xc8\x16\xc5\x5b\x15\x63\x14\xef\x6e\x43\xdf\x6b\xbc\x4e\xf3\x9c\x09\x6d\x67\x24\x68\x2a\x48\x37\xed\x5a\x17\xad\xee\x2d\x15\x53\xb6\x10\xdd\xb4\x6b\xd7\x5f\xf7\x5d\x93\xdd\xba\x63\x0b\xe0\xaf\x60\xa9\x49\xb6\xe9\x09\xdc\x78\x95\x50\xbf\x9b\x6a\xbe\xab\x6b\x93\x23\x3c\x35\x27\x5b\xf4\x01\x95\x9e\x95\x88\x31\x09\x91\xfc\xe4\x0c\x34\x77\x22\xa5\x59\x51\xd9\x08\x94\xc1\xa6\xb6\x00\xb1\x51\xc7\xdc\xd6\x0d\x31\xf4\x35\x39\x1a\xb1\xf5\x31\x01\x8d\xb1\x4a\xe5\x43\x4a\xac\x8d\x2c\x1f\xf0\x8f\xe2\xed\xfe\x51\x79\x32\x78\x91\xff\x20\x20\xd0\x29\x1f\xe6\x55\xb7\x9b\x7c\xd4\x59\x39\xae\x7a\x1b\x07\xa3\x63\x65\xa6\xdc\xa2\x59\xa4\xc8\x72\x4e\x9e\xd7\x14\x07\x43\x16\x8f\x22\x2b\x92\xda\x0d\xc9\xc8\xe4\x84\x56\x08\x28\x43\x59\x13\xc4\x5e\x5d\x8d\xe9\xf9\xa9\xf3\x0b\xc0\xec\x37\x27\x8c\xa7\x23\xa1\x1b\x2f\x73\xbd\x22\x37\x0e\x3c\xe4\xd7\x7a\x3a\xe7\xe4\x82\xeb\xf9\xbd\x79\xad\x69\x5a\x18\x5b\xe5\xc7\x54\xa3\xf9\xc5\x84\xcd\x1e\x53\x63\x62\xcf\xaf\x76\x7b\x87\x2f\xb2\xeb\xb0\x9a\x1b\xcb\xd2\x2e\xec\x58\x78\x1b\xc9\x9b\x93\xa3\xd8\x7a\xff\xcb\xe9\x61\x2e\xa1\xdd\x6e\xe3\xd0\x8f\x9d\x2f\xbf\xaf\x09\x63\x8f\x1c\xe5\xa7\xba\x62\xeb\x68\xab\xf0\xfc\x7f\x8e\x55\xef\xd2\xf7\x7c\x42\x4b\xb7\xc3\x59\x0a\x85\xc1\x2f\x6c\xd1\x1d\xa7\xf9\x5f\x45\x57\x62\xe0\x55\xe8\xb2\x85\x28\xe8\x84\x74\x61\xd9\x10\xbd\xcb\xc9\x1d\x4c\xe7\x91\x09\xaa\x86\x63\xa0\x54\xdc\xea\xfb\xb6\x8d\xbe\xf2\xb6\x2c\x71\x5e\x1b\x32\xfe\x58\x3f\x9f\x55\xb3\x6e\xc3\xc8\xf9\x8a\xf4\x8f\x9a\xd8\x6a\x1c\xff\x8c\x5c\x4b\x6a\x73\x51\x09\x95\x9c\xc9\x82\x9b\xba\x2b\xc7\x92\xb7\x8d\xa5\x64\xdc\xab\x83\x99\x77\xd3\xae\xec\x9c\x16\xfc\x27\x86\xc7\x94\xa3\xe8\x0d\xd9\x26\x70\x4d\xf1\xb5\x40\x4b\x84\xeb\x4b\x94\xfe\xa1\x45\x55\xd9\xce\x36\x1b\xf0\x47\xac\x54\x53\x85\x2f\xf2\x8c\x31\x2f\xb4\x9a\x3b\x71\x95\xd2\xf0\xcf\xdc\xe1\xea\xb3\xc1\xed\x59\x4b\x3b\x64\x04\x2d\x3d\x09\xc0\x7b\xed\x16\x5f\xbd\x08\x5c\x1e\x90\xfa\xea\x55\x0c\x62\xf2\x72\x8b\xe8\xa0\xfa\xe0\x98\x4b\xa3\xab\x2c\xbd\xbe\x26\x93\x03\x4b\x07\x14\x06\x40\x57\x75\x2b\x14\x05\xdb\x02\x2b\x5b\xb1\x98\x63\x49\xdc\x98\x94\x90\x15\x18\x12\xda\xfd\xc6\x68\x8e\x42\x02\x31\xe6\x81\x9f\x80\x56\xa4\x38\x93\xd6\x66\x07\xf3\x67\x47\xfa\xd8\xd9\x61\x4e\xad\x47\x99\xf9\x7f\x8e\x3d\xc2\x9f\x96\x7f\xf2\xdc\xa8\x18\x37\x51\x37\x37\x94\xf3\x44\x7d\xd4\xd5\x2d\x9d\x62\x76\x3e\x33\xf1\x7d\xfe\xe4\x93\x18\x9c\xc6\x32\x74\x23\xf3\x67\xc9\x30\x75\x7a\xda\x23\x12\x61\x5a\x23\x56\x8e\x56\xb3\x80\xde\x65\xdc\xd3\xeb\x8c\x5d\xa6\x59\xb1\xc3\x49\xc1\xb2\x9b\x87\x89\xf3\xa9\x4e\x28\x36\x97\xce\xe3\x84\x46\x9d\xea\xff\x73\x79\x93\x80\x91\xd5\x1f\x1f\x0e\x5c\x44\x3f\x1e\x9e\xbc\xda\x3b\x3c\xbb\x38\xdd\x3f\x3b\x39\xfc\x79\xff\xb4\xd7\x0b\xb3\x5a\xa2\x30\x63\xac\xba\xac\x65\x68\x76\xa1\x88\x20\xe5\x9e\x7d\x5d\x56\x8c\x0d\xe7\x29\x2f\x20\x4b\x9f\x8a\x06\xdb\x1e\xce\xa4\xcc\x19\x9f\x81\x87\xab\xd6\x9f\x0c\x05\xe6\xa3\x84\x44\xc5\x3c\xa3\x22\x0c\x62\xab\x75\xb4\x01\x3c\x82\xad\x24\x11\xbb\x1f\x9e\x2c\x45\x19\x3f\x59\xca\x45\x07\xce\xa7\xe1\xd3\xf0\xd7\xe8\xfe\xe2\x7e\x07\x45\x4f\xaf\x31\x49\x5e\x92\x68\x3c\x4d\xf9\x9e\x08\x07\x28\x12\xec\xfd\x7c\x4e\xf8\xeb\xb4\x20\x21\x42\xe5\x87\x98\x94\x7a\xbe\x58\xb5\x8d\xf1\xb1\xb2\x68\xc3\x35\x79\x22\xe1\x43\x41\x95\xc1\x53\x7e\xf0\xa3\x96\x0f\xf3\x91\x4d\xe9\x3b\xcc\x47\x21\x57\x36\x28\x5a\xf4\xd1\x55\x4f\xc4\x94\xf0\x90\xa3\xd2\x87\x5d\xb5\xfe\xaf\x12\x0b\x84\xa7\x70\xc5\x97\xa4\xf6\x1e\x22\xe1\x57\x7e\x6a\x3a\xe6\x55\x3a\x62\x96\xe4\xb8\x19\xe5\xc2\x65\xd6\x44\xb8\x48\x58\xd5\x3c\xe1\x69\x80\x70\x96\x80\xf5\x42\xb1\xcb\xa2\x22\xa3\x63\xb8\x4d\x47\x20\x28\x83\xe0\x58\x19\x96\x5e\x4f\x95\x75\x16\x68\xba\xfd\xa7\x01\xea\xb0\x64\x31\x5c\xd8\xb0\xd0\x23\xed\x52\x00\xc7\x9f\x73\x74\x46\xe1\xc2\x36\xb3\x33\x40\x70\xb4\x85\x41\x14\x20\xd4\xd1\xb8\x57\x12\x28\xa2\x70\x8c\x8c\x46\x0c\x94\xd4\x90\xbe\x3b\x38\x92\x8f\x2a\x47\x2c\x4c\x69\x7a\x05\x37\xff\x60\x31\xca\xee\xef\xb7\x44\xbb\x91\xe5\x41\x7e\x93\x66\x74\xd2\x35\x99\xec\xe2\xee\xaf\x1f\x9e\x2c\x49\xf9\xeb\x07\xdc\x9d\x2d\x0a\xd1\xbd\xb4\x8c\xfa\x15\xe3\xb3\xee\xaf\x1f\xa4\xc4\x1b\x4b\x12\xfe\xfa\xa1\x6b\x73\x2f\x2c\x6d\x7d\x82\xa1\x80\xc0\xe6\xcd\x3f\x95\x3e\xe3\x1c\xaa\xe1\x09\xe5\xb2\x6e\x9c\x61\xf8\xc3\xc0\x80\x37\x4e\x71\x63\xca\xc5\x81\x7e\x15\x6c\x4f\xca\xb2\x9a\x6b\xc6\xbf\x8d\x69\x9b\xc4\x8d\xf5\x93\x24\x09\x87\xf4\x6b\xbb\xf6\x5d\x37\x15\xdd\x60\x9b\x47\x2d\x68\xba\xf5\xf5\xab\x5c\x58\x72\x24\xe3\x50\x24\x1f\x60\xe9\x31\x26\xca\x48\x67\x8d\x77\x84\xe6\x60\xe8\x82\xea\x35\x03\x54\x7e\x80\xdc\xa3\x24\x93\x93\x45\xe1\x20\x57\xcf\x76\xd2\x00\x00\x99\x02\x11\x16\xa8\x9c\xa5\x1f\x89\xc9\xbd\x5b\xd1\xc3\x78\x11\xdf\x17\x05\x39\x65\x0b\x41\xf8\x71\x3a\xd3\xc5\x82\xcb\xb4\xa0\xe3\x00\x2c\xaa\x20\x46\xbd\xfa\x93\x04\x41\xac\x9f\xd4\x9f\x3a\x92\x17\x01\x32\x5b\xc3\xb9\x26\x8e\x7f\xd7\xb5\x19\x81\x3a\x36\x5e\x06\xa8\xac\x0d\x20\x64\xf8\xbd\xda\x5b\xe8\xfd\x84\x8c\xd3\x19\x51\x4b\x40\x20\x8b\xc4\xcf\x94\xdc\xd6\x77\x8b\x66\x77\x71\x73\xbb\x21\x16\xc4\x6b\x96\x0b\xce\x32\x65\xf9\xf3\x47\x00\x41\xd9\x3f\x08\xe3\x48\x0e\x7f\xc5\xfe\xcb\x1f\x78\x35\x26\x1e\xfd\xf4\x56\x45\x60\xaa\xa9\x64\x56\x00\xe6\x27\x92\xcd\x9b\xfd\x59\xd1\xa6\xf9\xbd\xb6\xcd\xed\xc6\x6b\x98\x83\x0f\xa3\x22\xf7\x9a\x35\xc0\x1f\x82\xf2\x31\x67\xb7\xf9\x5b\xc6\xeb\xfe\x98\xf9\xda\x9d\x9a\x35\x1a\x92\xec\xa6\xdc\xce\x54\xbe\xbd\x90\x6d\x07\x4f\x60\x47\x6f\x3f\x77\x71\x56\xc9\xde\x9d\x23\xbc\x48\xfa\x2f\x16\x3f\x64\xc6\x92\x6d\x61\x2c\xd9\xc6\x49\x36\x5c\x80\x8e\x30\x55\x11\xf6\xc7\x08\x15\x43\x1d\xb4\x27\xcd\x0b\x39\x85\xcf\x99\xd5\x71\xbe\x5d\x64\x59\x0e\x1b\x0f\x1e\xa3\x51\xb2\xd5\x37\x36\xbc\x45\xf9\x40\x71\xe1\xdd\x4a\xd6\x7a\x96\x27\xc2\x3b\x14\xfe\xc6\x4d\x46\x2e\x4d\x56\xd8\xa3\x63\xbd\x0d\x4d\xd2\x62\x4a\x38\x2c\xa3\x1c\x95\x1f\x4a\xad\x52\x5c\x24\x99\xc7\x4f\x2e\x56\xf3\x93\x1b\xc5\x2e\xaf\x19\x6a\xf8\xf5\x25\xdb\x9d\xa5\xff\xb9\xbb\xc8\x58\x3a\x59\x5d\xc4\xb7\x27\xfb\x02\x9a\x8f\x75\x21\x65\x4f\x14\xf2\x1b\x86\x89\x36\x15\x1e\x0a\xf2\xfa\x38\xa8\xc5\x26\x50\x59\x7e\x08\x34\xdc\x30\xe4\xa9\x2a\xbe\x16\x22\x5f\x40\x19\x30\x92\xda\x18\xae\x5f\x69\x2d\x74\x18\xf2\x8d\x23\x70\xf3\x48\x97\x5f\x0b\xd3\x0a\x6d\x8f\x0e\xc1\xba\x6e\x8a\xeb\xdc\xa4\x8f\xd7\xf0\xac\x76\x46\x7c\x94\x67\xbe\xa7\x0a\xc8\xaf\x69\x4e\x3c\x94\xd6\xc8\x50\x2b\xc5\xa4\x2f\x22\xad\x4a\x66\xd8\x98\xdf\x1a\x6f\x3d\x8f\x8a\xea\xaa\x68\xbc\x28\x04\x9b\x29\x57\x28\xf5\xc6\xf7\xc1\x7a\x84\x83\xb1\x07\x39\xba\xb8\x4d\xc5\x78\x7a\xa0\x49\xa2\xcd\xa1\xf5\x01\xa7\x15\x0c\x81\x6f\x90\xba\x63\xa8\xa7\xec\x34\x54\x60\x92\xa5\x77\xa5\x16\x6f\x0d\x4a\x54\xe2\x8b\x4b\xc6\xc4\xd9\x1d\xe4\xae\xa8\x8a\x1f\xf2\x03\x99\xdc\xdf\x87\x04\xce\x90\xcc\x9e\xe2\xe0\x81\x73\xaa\x2f\xcb\x42\x48\x39\xed\x75\x70\x57\x21\xe5\x5e\x24\x95\xcf\x71\xe3\x73\xa3\xab\xde\x47\x48\xa2\xa8\x5e\x83\x83\x18\x77\x0e\x62\x11\x07\x0e\x03\x07\xa6\x40\xe0\x15\x6e\x21\x20\x5f\xe4\x86\x7a\x07\x39\x15\x14\x24\x0b\x5e\x68\x4a\xda\xfc\xa6\xe9\x58\xd0\x1b\xe2\xfb\x20\xd5\x8c\x75\xad\xab\x9c\xa2\x4f\xb2\xd5\x37\xde\xf3\x75\xba\xa8\xe1\xf5\xa2\x1f\xd4\x28\xa7\xc0\x5c\x98\x6b\xc7\x8b\x0b\x88\x2c\xa3\xba\xa5\x6c\xed\xc6\x6c\x36\x5f\x08\x32\x41\xab\xf2\xa5\x59\xdb\x1c\x5d\x4b\xd9\xe4\x94\x48\xf2\xd9\xe9\xe4\x24\xcf\xee\x42\x84\x27\x74\xf2\x5a\x99\x1b\x68\x93\x2d\xa5\xa1\xaa\xc4\x00\xf0\x89\x8e\x4a\x0c\xb6\xa8\x92\x85\x03\x5e\x7a\xe9\xd1\x3b\xaa\x7e\xd2\xb4\x98\xd0\xc9\x19\xf4\x0d\xca\xc8\x13\x5e\x53\x03\x7e\xdb\x99\x5e\x2d\x66\xc5\xd9\x46\x6d\x5c\x69\xd0\x07\x64\x75\xa7\xef\x4f\x0f\x1b\xd9\x5c\xfc\x82\x15\x10\x7e\x15\x8d\x59\x63\x54\x75\x7e\xf3\x0a\x55\xeb\x2e\xdd\xc6\x7e\xad\xce\x87\xf9\x13\x0d\x07\xfe\xfa\x07\xdf\xae\x3a\xd3\x56\x2b\xd0\x54\x37\xe7\x98\x7a\xe6\xe7\xca\xe1\x92\xe1\xc6\x38\x61\x52\xca\x3d\x5f\xf6\xab\xc6\xf3\xaa\x6e\x2f\x78\x56\xe2\x1b\x5a\x50\x17\x43\xa9\x42\xa3\x8e\x1f\x5b\xe6\xc2\x5e\x55\x5f\x5c\x38\x93\x2f\x6f\xe7\x76\x9d\xf7\x97\x1f\x4d\x42\x94\xbc\x14\x11\x03\xa1\xb3\x88\x8a\x29\x5b\x64\x13\x75\x1f\xa8\x42\x0b\x28\xfd\xe4\x19\x11\x02\x9c\x2e\x51\x24\xa6\x24\x0f\xa1\x96\x5c\x7a\xb0\x21\x60\x06\xbe\x35\x90\xa0\x0c\x14\xc1\x5a\x16\xd7\xbf\x40\xa9\x70\x6e\x03\xe3\xec\x5d\x32\x2e\xc8\xc4\x09\x72\xbd\x5e\x1e\x5d\x28\x84\x8e\xe8\x98\xb3\x8c\x5e\x46\x6a\x21\xbb\x4a\x36\x4f\xd3\x83\x25\x15\x82\x14\x33\xd4\x01\x2c\xd6\xb5\xbc\xeb\xcc\x16\x48\x34\x53\xb6\xa5\x28\x26\x25\x2e\xbc\x51\xcf\xbd\x4d\xca\x8e\x2b\x8c\x85\x9a\x92\x38\xf7\x66\x28\x24\x03\x86\x21\x45\x0e\x91\x4a\x78\x8b\x47\x1e\x1c\x8b\xbc\xe5\xe8\x90\x2c\x70\x51\xbd\x77\xaf\x6d\x5f\x2d\x19\x94\x97\x25\xc2\x22\x12\x6c\xdf\x4d\x0a\xb9\x86\xf5\xf1\x20\xc0\xcb\xc6\x3b\x8d\x1a\x73\xa7\x5e\x39\x44\xcd\x13\xa9\x02\xa2\x20\xfc\x86\x8e\x49\xbc\x63\xec\xa6\x24\x08\xf3\xdc\x52\xb7\x62\x5b\x00\xd1\x31\x4c\x6a\xc5\xac\x9a\x73\xca\xeb\x9a\x8a\x98\xba\x34\xb5\x8d\x11\xbc\xb1\xe8\x57\x71\xc1\xfc\xb3\x01\xfc\x3e\x8b\x37\x27\x47\xba\x39\x35\xbf\xa5\x0c\x9b\x10\xff\x17\xf6\x8c\xf3\x68\xf1\x4a\xb1\x42\xbb\x1a\x9e\xfe\x99\xe8\x7c\xee\xa1\x57\x44\x47\x3f\x75\x65\xaa\xed\xd9\xf7\x66\xfb\xd4\x18\x03\x5f\xd1\x82\xed\xd6\x00\xeb\x3d\x4d\x4d\x88\x24\xc8\x59\x2e\xc5\x45\x0f\xbd\xca\xa2\x55\xfb\x84\xf7\xc6\x43\xd2\x7f\xad\xf1\xac\x94\x34\x5b\xb7\xff\x72\x63\x3c\x81\xe7\xd2\x83\xab\xb0\x30\xbf\x12\xf7\x21\xae\x7e\x68\x33\x79\xb3\x30\x6c\x1d\x68\xb3\xc2\x86\x98\xfc\x5b\x2b\xf9\x94\x0a\x7d\x3c\x1e\xa4\x4a\x4b\x9f\xe3\xf0\xca\xab\xae\x9a\xd2\xba\xe3\xe6\x35\xaa\x4e\x8c\x0a\xd7\x11\xb6\x10\xc6\x9f\x22\xde\x7b\x84\xca\xda\x62\xd2\x27\x58\xe3\x30\xf1\x8e\x12\x35\x91\x92\xea\x44\xaa\x33\x3f\x49\x13\x09\x5c\x99\xd9\x49\x7d\xe2\x63\x62\xf6\x7f\x63\xc4\x54\x2a\xf9\xba\xd8\x4c\xbe\xae\x0b\xbf\x9f\x7c\x5d\xf3\x07\x3d\x9d\x2a\x97\x3b\x8d\x0b\xe9\xd5\x22\xcf\x06\xb2\xfe\x1f\x0e\xd1\xc2\x15\xcb\xd5\xde\x68\x53\x54\x52\x32\x54\x2b\x24\x7b\xd0\x7f\x91\xcb\x29\x3f\x61\x16\x9e\xe3\xd9\x17\x91\xc3\x6e\xe4\xb6\x76\x9d\x4c\x1b\xc2\x58\x4b\xb4\x0b\x52\xe5\xf4\x56\xc9\x68\xe9\x42\x30\xc9\xd2\x83\x61\xa4\xbe\x40\x94\x73\x1b\x7e\x7b\xb4\x36\xe7\x68\xf1\x18\x49\xee\x89\xd9\x04\x9f\x24\x0b\xb7\x0d\xdc\xdf\x87\x37\x72\xcb\x9c\xb5\xba\x9e\xe5\xd6\xf5\x6c\x6b\x51\xf3\xc4\xea\xf5\xd2\x28\xa3\x97\x3c\xe5\x94\x38\x01\xf0\x35\xe3\xe4\x10\xde\xde\x85\x36\xa5\x18\x78\xa9\x1a\x3f\x47\x14\x29\x97\x2c\x84\xec\xd9\x95\x4e\x68\x4e\x8a\xe2\x0d\xb9\x22\x9c\xa7\x59\x91\x0c\x6a\xe2\x8d\xf9\xdd\x46\x02\x63\xb4\xad\xb9\x0e\x4d\x41\xbd\x3d\x78\x34\xb4\x7b\x58\xa5\x9c\x41\xc2\x2b\xa8\xe5\xae\x8b\x39\x27\xf3\x94\x93\xb7\x8c\xff\xe8\x3e\x1a\xa6\xde\xd4\xd7\x85\x6f\x53\x2a\xde\x32\xfe\xe6\xe4\xe8\x94\xa4\x93\xbb\x10\xe2\xb2\xd2\x6c\x62\x19\x1e\x27\x26\xb4\x1c\xfa\x24\xba\x4c\x0b\xa2\xb7\x2d\x9f\x71\x52\xaf\x6c\xb6\x0f\xef\x46\x13\xd7\x64\x71\x1b\x9f\xb4\x8d\x44\x36\xdf\x7a\x83\x0f\xab\xcb\xdb\xad\xb5\x3d\xd7\x8d\x55\x44\x51\x8d\x6b\xd9\x29\xf4\x7e\xdc\xdf\x8f\xf5\x13\x32\xeb\xc3\xca\xae\x92\x40\x6f\xec\xc2\xb6\x38\x81\x42\x60\xd5\x37\x5f\x42\xaa\x52\x18\x69\xb3\xd2\x8b\x49\xa3\xda\xc5\x85\xc9\xe7\x59\x91\x30\x24\xab\xe4\xff\x2e\x71\x63\x18\x97\x5b\x66\xe9\xa8\xbf\x11\x2d\xe0\x8b\x94\x2a\x58\x54\x8c\xa7\x44\x6e\x16\x28\xd4\xc1\xee\x4d\x54\xd7\x60\xc2\x66\x50\x2e\xd0\x0c\xca\x93\x50\x49\xc3\x77\x21\x54\xbc\xa4\xf9\xc4\x08\x62\xae\x28\x2a\xb1\xf9\x61\x28\x5a\x75\x0f\xa8\xbe\x22\x13\x63\xc8\x6a\xd5\x27\x60\xf6\x73\x45\xf8\xa9\x59\x52\x76\x57\x68\x2e\xb2\xed\xed\x12\xa7\x93\x1b\x49\x9f\x4d\x8a\xef\xec\xe0\xbe\x89\x2f\xd7\xf2\x19\x34\x23\x2c\x62\xf9\x98\xe8\x8e\x29\x1e\x89\x4e\x5e\x91\x31\x9b\x41\x13\x77\x72\x55\x30\x56\x31\xee\x96\xbf\xdf\x71\x36\xa3\x05\x41\x0d\xcd\x8f\xfe\xd0\x11\xfc\x6e\xd9\xe8\xe9\x58\x4e\x64\x39\x81\xcb\x55\xf5\x7c\xc5\x92\x72\xf6\x0e\xab\x5a\xa5\x0d\x48\x8c\x2a\x33\x0e\x6a\x9e\x6a\x83\x8e\x24\x8b\x4e\xcf\x7e\x7e\x17\x01\xc5\xed\xf4\xf3\xda\x4f\x48\x34\xaf\xf7\x00\x34\x40\x9e\xe6\x07\x61\x70\x02\xf7\x55\xb9\x72\x36\xf9\x7c\x88\xa7\x66\x6b\x8e\x97\x26\x83\x30\xb6\x7b\x52\x72\xf9\x4d\x45\xc0\xc4\xa2\x84\x60\x93\x05\x11\xd5\x75\xd3\xbe\x44\x3a\x1b\xed\xc6\xa6\x6b\x8e\x83\xae\xd2\xa4\xf6\x5e\x6d\xde\x30\x35\x94\x2d\x18\x4c\x0d\x5f\x91\x04\xdf\xf8\x02\xcc\xc4\x02\x6d\xb3\x16\x3c\xb8\x45\xe0\x07\xd6\x9f\x1d\x78\x50\x44\x95\xb8\x3a\x0f\xf5\x6c\x68\x0c\x7f\xaf\xb7\xd5\x18\x7f\x39\x72\x40\xbb\x8e\x0a\xb1\x41\x23\x5a\x9c\x93\x42\xb2\x41\x28\x44\xf7\xf7\x2a\xec\x86\x36\x8a\xdd\x53\x97\xb0\x70\x19\x56\x20\x85\x26\x38\x11\xd9\xb7\x67\x24\xe5\xe3\xa9\x0b\xff\xb4\xd5\x47\xb5\x13\x05\x85\xa4\x79\x78\xed\xae\x19\xb8\xb8\x6d\x33\x44\xfe\x5a\x31\x3a\x5a\xe8\x3a\xc4\xfa\xf0\xd5\x67\x9d\xe6\x30\x9a\x0b\x4b\x5f\xc5\xeb\x74\x8d\xf5\x39\xd7\x5a\xdf\x9b\x84\x58\xb7\x5c\x89\x32\xbb\xb1\x32\xe1\x61\x12\x0e\x10\x2e\xcc\x9d\x45\xe5\xf4\x54\xdb\x55\xaf\x17\xb6\x7f\x56\x27\x31\x5a\xc3\x5b\x54\xd2\x24\xb7\x97\xf0\xbc\xbb\x5c\x38\x50\xb4\x16\xa8\x4e\x9f\x8c\xac\x5e\xac\x1e\x73\x53\x6d\x92\x4e\x47\xa5\xef\x1f\x5b\x0f\x3d\x7b\x69\x03\x95\x84\x57\x8b\x47\x46\xed\x86\x22\xbd\x59\x26\x2f\xd5\x90\xb9\x45\xc7\xfd\x45\x47\x4a\x54\x82\xbe\xe2\xba\xaa\x95\x81\x36\xad\x56\xa6\xba\x97\xb4\x79\x71\x98\x6c\x5f\x9e\x47\xa2\xaf\x51\xf1\xf5\xc4\xd8\xb0\x07\x96\x3b\xa8\x29\x70\x5a\xfc\x3d\xf1\x52\xf1\x41\xb1\xb6\x33\x6d\x33\xdf\xaa\x42\x81\x16\x63\x65\x79\x61\x5a\xac\x96\x68\xd7\xb2\xe2\x45\x54\x0f\x93\x01\xce\xa5\xbf\xa9\xfc\x03\xb5\xae\x78\x17\xe1\xd8\xdf\xc2\x8d\xd2\xd2\x6f\xcf\x88\xec\xb1\x5c\xf6\x12\xa7\xbd\x85\x60\x87\x56\x8e\x6f\x2d\x3a\x4d\x8b\xa9\x2c\xfa\x53\x5a\x4c\x1f\x2a\x4a\x0b\xc1\x24\xeb\x3d\x8e\x7e\x52\x8f\x0f\x54\x00\x7d\x0c\x1e\x47\xc7\x2c\x27\xad\x45\xaf\xa2\x39\xa7\x37\xa9\xa0\xff\x21\x1f\x76\x2e\x17\xe3\x8f\x44\xec\x8c\xd3\xf1\x54\xdd\xed\x7c\xa8\x8c\x89\xe4\xc8\xc7\xd1\x2b\x28\x04\xd6\x61\x2b\x54\x6a\x8a\x7a\x6e\x0e\x9c\xa9\xf7\x35\x1a\xd7\x4b\x07\x17\xf6\xa9\x7a\xe3\x10\x12\xd8\x2d\xe6\x4a\xc1\xbc\xe7\x06\xc0\x4c\x5d\xb8\xb3\x27\xe6\xe6\xfd\x32\xb9\xf6\x34\x03\x97\xeb\x35\x03\x9e\x34\xfd\xf9\xe3\x9c\x7c\x01\x2b\x57\x75\xe7\xdc\xea\xe7\x4c\xc1\x97\x7d\x48\x46\x49\x0e\xf6\x7c\xc3\x11\x96\x0f\xca\xd7\x54\x20\xcc\x7b\x3d\x11\x2a\x37\x6a\x9f\x2d\x69\x3a\xfe\x52\x30\xfa\xc3\x3c\xba\xa5\xf9\x84\xdd\xf6\x7a\x2d\x2e\x57\xaf\x9d\x8c\x6b\x02\x10\xc9\xd9\xe1\xbd\x0e\x09\x5e\xaa\x28\x65\xb1\x50\xe6\x66\xa4\x44\x1d\x03\x34\x32\x4b\x52\x95\x65\xa8\x94\xb8\xf6\x7a\x80\xb1\xbf\xf7\x1a\xc7\x6c\xbd\xd1\xd7\x5d\x14\xf7\x8f\x7f\x8e\xf6\x8f\x5e\xed\x9f\x5e\x1c\x9e\xec\xbd\xb9\xf8\xe9\xe4\xe4\x1f\x67\xf7\xf7\xcb\x12\xd3\x64\x59\x62\x96\xd0\x8e\xab\xca\x4a\x84\x3a\x6e\x2a\x8c\x53\xb9\xb1\x58\xbd\xc3\x66\x86\x18\xad\xd3\xe0\x8b\xda\x35\xd3\x62\x3f\x57\x21\x52\x9a\xfe\xf4\x30\xe4\xc6\x91\x5a\xc5\x40\x83\xe0\x34\x7c\x97\xc7\x5b\x5b\x9a\x3a\xc7\x90\xd2\xe1\xe4\x9d\x94\xfc\xf7\x0e\x2f\xde\xee\xef\x9d\xbf\x3f\xdd\x3f\x93\x44\x55\x94\x7b\xbd\xf7\xfa\xa7\xfd\x8b\xbd\x77\x07\x89\x79\xf3\xe3\xe1\xc1\xd1\xd1\xfe\xe9\xc5\xc1\xf1\xc5\xfe\xe1\xfe\xd1\xfe\xf1\xb9\xfd\x74\x7a\xf2\xfe\xfc\xe0\xf8\xc7\x8b\xa3\x93\x37\xfb\x87\x17\x7b\xa7\x3f\x36\x2a\x9d\xed\x9f\x5f\xbc\x3e\x39\x7a\x77\x72\xbc\x7f\x7c\x7e\x71\xbe\x7f\xf4\xee\x70\xef\x7c\xdf\x16\x7b\xfd\xfe\xec\xfc\xe4\xc8\x2b\xb1\x77\xfa\xe3\xc5\xbb\xd3\x93\x7f\xfd\x62\x8b\x1c\x9d\xbc\x79\x7f\xb8\x7f\xf1\xfe\xf8\xe0\xed\xc1\x6b\xd0\x58\xd8\x4f\xc7\x7b\x47\xfb\x6f\x2e\x5e\x1d\x9e\xbc\xfe\xc7\x99\x7d\x79\x70\xf4\xee\xf4\xe4\xe7\xfd\x37\x17\x07\xc7\x67\xe7\xa7\xef\x25\xbe\xd5\x5a\x87\x07\xaf\x4e\xf7\x4e\x0f\xf6\xcf\x2e\x0e\xce\x4e\xf7\x7f\x3c\x38\x3b\xdf\x3f\xdd\x7f\x93\x90\xc8\x10\x23\x21\xd1\x9b\xfd\xb7\x7b\xef\x0f\xcf\x2d\x7d\xaa\x33\x6d\xb9\x0e\x50\xbc\x35\xc0\xeb\x31\x71\x25\xfc\x0e\xb8\xb7\xcd\x1e\xbb\x6f\xab\x09\x16\x6f\xf5\xf1\x26\xb4\x77\xe5\x1a\xa3\xd7\x04\xe1\xc6\xdc\x7d\xb3\x33\x24\xde\x1a\x94\x9d\x16\x5a\xe5\xce\xd3\xc9\xd9\xdb\xe7\x58\xcd\x40\x53\xca\x4b\x5b\xc2\x9c\x86\x62\x2b\x7c\x60\xa2\xaa\x60\x18\x5b\x49\x42\xd0\xfd\x3d\x29\xbd\x41\xa3\xda\xfd\x9f\x85\x74\xed\x40\xa3\xce\x03\x13\x21\x35\x06\x18\x16\xd0\xaa\x81\x74\xa0\x56\x4e\xba\x42\x19\xcd\x7b\xc0\xfc\x31\x77\x00\x2a\x53\x39\xd3\x46\x63\xae\x52\x73\x4a\xb8\xaa\x2d\x0b\x64\xa1\xcd\x9b\x1d\x80\xd5\xf3\xc6\x01\x5a\xb3\x18\xc7\x1d\x65\xe6\xec\x00\xae\x9f\x64\x0e\xe8\x03\x1b\xc1\x44\xc7\xb2\x76\x80\x1b\xb3\xd2\xc1\x6a\x6e\x37\x53\xa8\x7e\xd5\x82\x97\x9b\xb9\x4d\x5c\xbc\x9d\xec\x0a\x00\xcc\x7d\x4a\x99\xe9\xed\x11\xc6\xee\x89\xf3\x2a\x03\x61\x5d\xc5\x37\x3b\x2f\x56\x98\x12\x7d\x31\x73\x3b\x9b\xed\x7a\x63\xcb\x38\x5b\xa3\x61\xc2\xe5\xba\x6a\xcc\xb6\x77\x54\xf6\xae\xcd\xc2\xe7\x7f\xde\xd8\x57\xe0\xe0\xaa\xc3\xcc\x48\x49\x5d\x21\x74\x92\x67\x77\xb6\x03\xad\x21\xb3\xfc\x8c\x22\x42\x56\x6e\xaf\xaa\x37\x7b\x1d\xd3\xf8\x81\x0b\xdd\x87\x08\xa4\xa5\xc4\x19\xf4\x11\x82\x24\x92\xd2\x59\x8f\x57\x44\x42\x57\xa6\x2c\x57\xe1\x26\xea\xc3\x62\xcc\xab\x37\x9b\x82\xeb\xae\x84\x6a\x77\x4d\x1e\x68\x95\xe2\xd5\xfc\xbc\x80\xec\x3b\x5f\xc6\x65\x56\x89\x04\x49\x63\x6e\xc2\x59\xa2\x3e\xa2\x30\x70\xb8\x04\xb8\x96\x79\x70\x85\xd7\xed\xca\xf8\x15\xd6\x68\x71\x8d\xc7\xd7\x43\x94\xf8\x7c\x89\x08\x1f\xca\xf6\xfc\x65\xfd\x92\x73\x2f\xd5\xb5\xdc\x62\xc1\x64\xa8\x91\x4d\xb0\x11\xe5\xc3\x99\xf8\xcb\xad\x45\x85\xab\x55\x77\x56\x52\x28\xd5\x99\x4e\xc0\xf3\x42\x65\x02\x75\xc6\x66\xcb\x46\xbe\x9a\x21\x1d\x81\xdd\x54\x43\x5f\x32\xa4\xa3\x44\xed\x4a\xab\x3d\x8c\xe1\x5e\x75\xb3\x75\xb0\xf6\x7e\xb6\xe6\x21\xaa\xc0\xca\x91\xb7\x9a\xb9\xb6\x8f\x42\x29\x0c\xdb\x3e\xdd\xa6\x3c\x6f\x7b\x3f\x4e\xe7\x52\xdc\xd8\x51\x17\xdc\x3b\x82\x93\x46\xf2\xeb\xcf\x67\x67\xba\xda\x2e\x59\xcb\xec\x5e\xf0\x3a\x3d\xba\x1b\x1b\xfe\x1a\x10\xba\xde\x5a\xa3\x62\xab\x5a\xdd\x10\xba\xa7\x8c\x7d\xc8\x0c\xfc\xb1\x80\x5d\x95\xf5\x86\xdb\xba\x77\xff\x4c\xf9\x23\x29\xc3\x1e\x45\x19\x3d\x1d\x94\x35\xcb\xb9\x9c\x0c\x9b\xb5\x92\x7a\x86\xd7\x52\x3a\x96\xd3\xed\xe0\xea\x7d\x41\xf3\x6b\x79\xce\xcc\xe7\x64\xf2\x56\x09\xb6\x6f\xb3\xf4\xba\x50\x81\xe2\xdf\xc8\x59\xf8\x56\xc3\x4a\xc0\xf8\xaf\xfe\xca\x4e\x77\xf9\x2e\x21\xea\x5e\x03\x0a\xc1\x47\x59\x18\xdc\x65\xcd\xaf\x33\x92\x66\x7e\x35\xf3\x3e\x21\x91\x44\x29\x91\xdb\xfb\x15\x44\x94\x2f\x0a\xc2\x6b\xf6\xce\xa0\x03\x2d\x71\x06\xa6\x1c\xba\x80\x61\x84\xe5\x2b\xa8\x6a\x18\x5b\xf9\x02\x40\x1a\xc6\x54\xd9\x7f\xc8\xb6\x0c\x47\xa9\xde\x18\x4c\x0c\xa3\x68\xcb\x01\xae\x86\xfb\xb3\x6f\x75\x7f\x54\x28\xb1\x19\xbc\xf7\x3a\x3d\xd3\x26\x01\xf2\x75\x83\x5c\x37\xf0\xf1\x1a\x3e\x36\xc8\x7b\xad\x95\x51\x2d\x63\x67\x63\xe6\xd4\x03\xef\xec\x0c\x46\x65\xa7\x3e\x08\x97\x9b\x8c\xaf\xa2\x6b\xdb\xde\xb8\x6a\xd3\xa9\xee\x96\x9a\x4f\x85\x23\xe8\xcb\xc5\x31\x59\x11\x11\x90\xfc\x3e\x87\x43\x9e\xac\xb5\x0d\x0d\x5e\xbd\xff\x31\xee\x82\x27\x4c\x97\x16\xdd\x19\x2d\x24\x35\xba\x2d\x45\xab\xf6\x45\xbb\x81\xf1\x97\x8f\x77\x26\x6c\x16\xc4\xde\x6f\x9a\x13\x2e\x02\xe7\x2d\xd5\x82\x0b\x5f\xd9\x72\xb0\xcd\x91\x9a\x43\x6e\xf9\x46\x9a\xd4\x21\x2a\x57\x0d\x86\x77\xa2\x7c\x82\xae\xa9\x72\xe0\x35\x81\xeb\x90\xdb\x9f\x9d\x33\xd7\x7d\x3e\x51\x96\x58\xef\x73\x41\x33\xef\xec\x48\xea\x05\x0e\x26\xeb\xbe\x56\xbf\xd5\xb6\xcb\xa4\x95\x59\xd1\x87\xa2\xde\x32\x3a\xcd\x5a\xb4\x81\xa4\xdf\x8a\x68\x7c\xad\x62\xc8\x1f\xee\x62\x6e\x42\x34\xa8\x4d\x2b\x4d\xd8\xea\xe0\x0a\x2d\xe3\xf1\xe5\x84\x26\x9a\xdf\xb0\x8f\xa4\x95\x90\x3f\xed\x1d\xbf\x39\xdc\x3f\xad\xe8\xb2\x44\x02\xf4\xb3\x9f\x84\x0e\x2b\xb4\x92\xb2\xdc\xc4\x52\x30\x05\x74\x83\xf9\xaa\x3e\x5b\xae\xe8\xcb\x75\xd9\x70\x07\x2d\xbb\xab\xd0\xb1\x50\x1b\x25\x08\x5a\x0a\x67\xf0\x88\x4a\x4d\x8d\xad\xc1\xaa\x7e\x28\x16\x6e\x55\x38\xe9\xff\xeb\x35\xf8\x98\xe5\xb7\xd9\x12\x5b\x3d\x05\xf4\x1c\xa9\xae\xc0\xd5\xe8\x34\x57\x53\x15\x21\xb3\x94\xe8\x3a\xbe\xbe\x61\x18\xd8\xe4\xf2\x3f\x33\x7d\xeb\x11\x2a\x12\x12\xbd\xdb\x3b\x3d\x3f\xd8\x3b\x74\xaa\x66\xa7\xcf\x3a\x38\xbb\xf8\xf9\xe0\xec\xe0\xd5\xe1\x7e\x42\xd6\xe7\x89\x49\x48\xf4\xf6\xfd\x31\xe4\x3e\xbe\x78\x77\x7a\x72\x7e\x72\xfe\xcb\xbb\xfd\x8b\xfd\x7f\x9d\xef\x1f\x9f\x1d\x9c\x1c\xcb\xef\x7b\xef\xde\x5d\xbc\x3e\x3f\x3d\x04\x7d\xd7\xfe\xa9\x2c\xf6\x0e\xde\x1f\x1e\xec\x9d\x5d\x1c\xed\x9f\xff\x74\xf2\x26\x21\x2d\xa6\x7c\x09\x89\x1c\x4a\x47\x7b\xc7\x7b\x3f\xee\x9f\x5e\x9c\x9d\x9f\x1e\x1c\xff\x78\x71\x78\x72\xf2\x8f\xf7\xef\x12\x12\x69\xa0\x16\x9b\xa3\xfd\xd3\x1f\x25\xd6\x87\x27\x3f\xfe\x08\xdd\x54\x7d\x03\x8c\xde\x38\x14\x65\x51\x2f\x6f\x73\x62\x23\x62\xfa\x2f\xb7\xfa\x9d\xd5\xf5\xe1\xa3\x6e\x05\x9e\x55\xcb\xf0\x58\x45\x0a\x5e\x3d\xd4\x13\x28\xd4\x42\x03\x78\x5f\x21\x95\x7a\xd3\x4a\x54\xf8\xb4\x7e\x3c\x14\xaa\x6b\x87\xd4\xeb\x76\xeb\x94\x80\xef\x76\xf6\xc0\xaf\xc6\xf4\xda\xaa\xf1\x6b\xd6\x35\x71\x95\x30\xab\x0b\xc8\x3d\x46\x3d\xee\xa8\x48\x92\x9b\x18\x32\xfb\xfa\x93\x47\xaa\x25\x7c\x9b\xde\x49\x7a\xbd\x33\x4b\xe7\x9f\x90\x47\x72\x7d\x0c\x9d\xc7\xb8\x67\x36\xac\x95\x7d\x9e\xe9\x77\x41\xf2\x82\xb2\x7c\xc7\xe6\x88\x7e\x94\x25\xf4\x83\xae\x9f\x75\x23\xe4\x2f\xe9\x38\xbd\x0f\xc4\x78\xa7\xc7\x78\x73\xff\x69\xbf\xde\x43\xf2\xf3\x27\xb5\x51\x34\xdb\x68\x3d\x52\x66\x09\x8d\xac\x7d\x8f\x51\xbf\xd1\xc8\xdc\xdb\xbf\xe3\xec\xf7\x3b\x50\x35\xe1\xe5\x66\xb6\xce\x35\x8b\x95\x12\x5f\x50\xcf\xea\xee\x34\xcd\x55\x7e\xe4\x62\xc1\xab\x8e\x98\x06\x70\xad\xb4\xb1\x9c\x6e\x5a\xef\xb5\x16\x4f\xb6\xfa\x8f\x33\x00\x06\x28\x6d\xe8\x54\x4c\x83\xc7\x6d\x76\xc0\x75\xdb\x9c\x8a\x31\xa4\xe7\xd7\xa9\xcc\x75\x7c\x47\xd0\x6a\x4d\xe5\x91\x85\xbd\x9e\xb4\x7a\x8f\x56\xbf\x97\x98\x36\xdd\x59\x57\xd4\x6b\x2b\x57\xe2\x06\x45\x8d\x01\x6a\xe5\x7d\x18\xf8\x14\x0e\xb0\xc9\x97\x26\x3c\x7c\x74\x0f\x0c\xcc\x16\x2f\x5b\xb2\x1a\x78\xb3\x74\x80\x43\x15\x11\x6f\xe9\x77\x5a\xe2\x2c\x67\x53\x0d\x02\x08\xbf\x36\x45\x90\x72\xcd\xcc\x3c\xd7\x4c\x8f\x12\x18\xd2\xf8\x35\xd3\x15\x78\x19\xf3\x20\xc7\x10\x41\x42\x59\x64\x70\x6b\x4f\x25\xca\x30\x47\x3a\xae\xb9\xd5\xeb\x60\x95\x5f\xcf\x66\xb4\x2b\xb6\xb7\x11\x4f\xf2\x21\x1d\x16\xa3\x11\x66\x60\xfa\xad\xe2\xde\x60\x8e\x79\x74\x09\x41\xbd\x31\x8f\xd2\x2b\x41\x38\xea\xb0\x48\xb0\x79\xc1\xb8\x08\x95\xa7\x9a\xbd\x79\xbd\x71\xa8\x2d\xad\x5d\x53\x4c\x4a\x23\x03\xbb\x1e\x12\x1c\x18\xbb\xbf\x00\xdd\xdf\xbb\x7c\x54\x66\x9a\x0a\x2f\x1c\xb9\x1f\x2a\xc7\x12\xa1\x16\x47\x5e\x79\x6f\xc9\xa5\x0d\xd7\x2c\x60\xef\xd1\x7c\xa7\xad\xfb\x86\x64\x64\x74\x04\xcb\xb2\xc3\xe5\x87\x6a\xc6\x50\x53\xc8\x18\x41\x3a\xbb\x36\x8e\x4a\xfd\x71\x28\x80\x42\xa0\x46\x9e\xd5\x22\x01\x7b\x73\x22\x6e\xc9\x45\xda\xb6\x02\x56\x15\xb4\x05\xe2\xeb\xfa\x8c\xf6\x7f\x06\xad\x40\x55\x9d\xb6\x89\x6a\x5f\x77\xab\x40\xaa\x0b\xbc\x12\xe4\x9e\xd9\xbd\x35\x5c\x9a\xc3\x35\xbe\x81\xd9\xdd\xf1\x77\xef\x24\x93\xff\x7b\x69\xa9\xc3\xa6\x61\x1b\x26\x2d\x5e\x90\x55\xdb\x3f\xed\x98\x65\xa2\xc9\x04\x63\xef\xf6\x51\x72\xff\x19\x11\x2c\x37\xae\x97\xf5\xc2\x2a\x3c\x7a\xb3\x9c\x43\xc9\xf1\x2c\xc6\xc6\xcf\x8b\x9c\xda\xe2\xdc\xe9\x19\x97\x29\xe0\x01\xc4\x60\x37\x24\x09\xf0\x8a\x94\x21\x55\xd3\x3f\xad\x1c\xfa\xc4\xda\x6c\x01\x57\x05\x17\x82\xcd\x0f\xc9\x0d\xc9\x7e\xa6\xe4\xd6\x5c\xeb\x05\xd8\x06\xc0\x8a\x77\xd8\x42\x64\x44\xd4\xeb\x43\xa8\x4d\xf3\x6d\x03\xcb\x43\xaf\x6a\x85\xc3\x33\x59\x19\xab\xa6\x74\x6b\x2a\x3c\xa6\x25\x67\xb1\x77\xe9\x6c\x01\x03\xcc\xd6\x9b\x12\xae\xa2\xd4\xe7\x80\xd1\x6e\x39\xd8\xee\xef\x6b\xd9\xc7\x49\xa4\x6d\xa5\xd7\xdb\x27\xba\x0a\xc1\x06\xcd\x98\x55\xb7\x73\xc5\xf8\x0e\x30\xc7\xd7\x34\xbf\x36\x2b\xca\x18\x60\xf3\x87\xe6\xaf\xe5\xb9\x15\x8c\x9d\x74\x92\xce\x3d\x8b\x54\x8f\x71\x5e\xd7\x60\x0d\x28\x24\xff\xab\x41\xb2\x0d\x81\xf6\x7a\x4f\x7d\xf4\xdf\xb7\x21\xd0\x5c\xa6\xab\x71\x9d\x46\xaf\xdb\x9a\xa8\x83\xd0\x1b\xc7\x8e\xd2\xba\xea\xba\x57\xce\x3a\xe1\x10\xde\xa3\x32\x14\xbe\x31\xa8\xe2\x42\x9d\x1d\x28\x18\xa6\x63\xbb\xf3\xc1\x35\xe4\xa9\xff\xcb\xda\x88\xce\x56\xdb\x88\x36\x64\x90\x47\xde\xaf\xd7\x44\xa2\xd5\xc1\x67\xd7\x3b\x4b\xd6\x04\xb8\x95\xc2\xdf\x9f\x1d\xa5\x46\x44\xf5\x74\x10\x2d\xfc\xbc\x70\xa3\xee\x73\xf9\x92\xe9\xdd\xd0\xb7\x11\x6c\xd9\x6d\x42\x30\x60\x02\x3b\xbe\x93\x58\x5a\x90\x0e\x81\x08\x32\xa2\x1e\x25\xc3\x16\x48\x48\x2d\x0e\x85\xc7\x37\xcb\xe3\x92\x7a\xc7\xe5\x55\x9a\x65\x97\xe9\xf8\x63\x4c\x2a\xe5\x4a\xeb\x7f\xe6\x7b\x98\x09\x97\x7c\x21\x5c\xc2\xc5\x00\x78\x6b\x94\x75\x9f\x8a\x81\xf6\x8c\x6a\x8b\x7f\xa3\x5d\x6e\x6c\xa4\x92\x8a\x1b\x0e\x84\x73\x07\x37\x24\xfd\x2a\x14\xc9\x4b\x11\xd6\xbc\xa5\x08\x42\x08\x35\xbd\x78\x36\x8a\xbc\xa3\x18\xd8\x8c\x19\x21\xee\x0d\x99\xcb\x93\x2f\x1f\x53\x62\x05\xa0\x46\x34\x1e\x4b\xd9\x07\x42\xde\xd4\x3c\x4b\x56\x46\xb1\xa9\xc9\x4c\x4d\x4a\xaf\xbb\x11\xd2\xcd\x3c\x36\x08\xce\x22\xf7\xc2\x26\x2f\x5b\x9a\x54\xae\x55\x64\x5d\xd6\x4d\xc5\x83\x41\x10\x76\xb5\x05\x39\x79\xb0\x3d\xb6\x45\xc7\x73\xf5\xb0\x11\x60\xa0\x66\x1c\x6c\x13\x15\x28\xd4\xcf\x56\x62\x19\x9d\xf0\xc3\x2f\x6c\xd1\x4d\x85\x64\x1c\x04\x99\x74\x05\xeb\xce\xd8\x22\x17\x10\x14\x54\x41\xe8\xfe\xf5\xc9\x92\x94\x7f\xc5\xdd\xcb\x85\xe8\x52\xd1\xa5\x45\x37\x67\xa2\xeb\x52\xb8\xaa\xac\x24\x54\x14\x5d\xb5\x65\x44\x1f\x4c\xda\x0b\x5e\xf3\x3b\x11\x95\x50\x92\x35\x31\x1f\x85\x54\x3b\xad\xd1\x12\xaf\x9c\x39\x2e\x52\x40\x5a\xd7\x45\xe8\x65\xfc\x62\x58\x75\xdc\x68\x9e\xb4\xce\x04\x5c\xa8\x48\x2e\xee\xa8\x10\xee\x10\xd5\xe3\x9c\x6a\x59\x03\x99\xb5\xbe\xf6\x1a\xb1\x53\x05\xd7\x1a\x49\xa4\x79\x38\xeb\xe1\x1b\x56\x1d\x43\xe8\x03\xbe\x13\xed\x5e\x2e\xde\xf5\x63\xb0\x1d\x8a\xfa\x65\xa5\xba\xa2\x54\x17\x93\x08\xb7\x84\x29\x19\x75\x44\x3d\xb4\x83\x4e\x28\xb5\x32\xa6\x10\x5f\x4f\x4f\x4d\x2e\xd1\x12\x32\x45\x2f\x02\xc5\x44\x38\xb6\xba\x7a\x35\xd9\x76\x5b\x5b\xa9\x66\xf9\xb4\x07\xeb\x6d\x16\x3b\x46\x40\xca\xd4\x16\x76\xff\x61\xbc\xda\xf9\xc7\x0d\xfa\x53\x1b\xa7\xd6\xf6\x3d\xd9\xa1\x7a\xe7\xdc\xe0\xee\xac\x9c\xb4\xa6\x0e\x24\x4e\xdd\xb0\x11\x33\x5f\x1e\xd7\x8c\xae\x85\x90\xf1\x9d\xc9\x2a\x51\x35\xb2\x56\xbe\xa8\x45\xfd\xbc\x49\x48\x8d\xcf\x6e\x54\x50\xdb\x5c\x5a\xad\x3f\x87\x7c\x64\xb2\x28\xb6\x17\x95\x88\xc8\x52\x89\x28\x3b\x9e\x45\x82\x35\x8a\xdb\x3f\xfe\xf1\xe0\x78\xff\xe2\xdd\xde\xe9\xfe\xf1\x79\x50\x33\x90\x05\xce\xee\x8b\x5f\x4b\xb5\x5e\xd5\x41\x58\x28\x6f\xa8\x6a\x36\xa2\xb5\xfc\x16\x8f\xf7\x6d\xf9\xec\xa3\xe5\x30\x82\xfc\x89\x17\xee\x37\x24\xa5\x4b\xa6\x72\x98\x16\x97\xc5\x98\xd3\x4b\x52\x1b\x20\x9b\xfc\x1c\x33\x17\x61\x3c\x0a\x10\x4e\x93\xe1\x48\x2b\xca\x98\xaf\x28\x0b\xfe\x16\x24\x49\x12\xd2\x84\x0d\x8b\x11\xda\x4d\xf5\xf6\x38\xfc\xdf\x5f\x7f\x8d\x46\x7f\x0b\x50\xac\xdf\x50\x33\xeb\x53\x1d\xf7\xfb\xd7\x5f\xa3\x00\x75\xb2\xed\x24\x08\x7f\xfd\x35\x8a\xfe\x86\x76\x03\x6d\x8f\xb4\x9c\xcb\x33\x98\xe7\x31\xc1\x9c\x5c\x93\xdf\x63\x2f\xf6\xed\x87\xff\x7d\xb2\xcc\xca\x27\x1f\x10\x56\xb9\xba\x62\x51\x3a\xff\x4d\x68\x68\x81\x70\x9e\x2c\x4b\xbc\x90\xb3\x71\x91\xb7\x75\xd4\x4f\xc8\xd5\xc7\x2a\xcf\x3b\xf7\xf3\xbc\xf3\x21\x1d\x69\x4e\x49\x24\x14\x75\x38\x50\x42\x1e\xda\x78\xa0\xc0\x97\xea\x6c\x24\x55\x63\x5a\x0d\x23\xe9\xdb\x32\x8d\xe4\x1f\x89\x47\x7b\x5e\x54\xd3\x0d\x0d\x47\x9d\xea\x57\x63\x0f\xb0\x54\x2b\x46\xdf\x8a\x48\x6a\xb7\x05\x4c\x32\x3e\x64\xda\xed\x6b\x4e\x38\xa4\x9d\xcd\xc7\x04\xdc\xb4\x42\x96\xd0\x28\x67\xb7\xf7\xf7\x34\x9a\xb1\xff\x1c\xab\x27\x95\x91\x4f\xff\x98\x15\xfa\x81\x1d\xb3\x5b\xb4\xab\xa2\x2c\x84\x14\xc5\x6f\x52\x41\x64\x5d\x4f\xbb\x99\xad\xcd\x13\x46\x2a\xb9\x16\xb1\x50\x89\x3c\xe0\x2e\x5a\x76\x01\x62\x0e\xd7\x2c\xb2\x7e\x48\x9e\xf7\x7a\x59\x28\xd0\x6e\x98\x26\x02\x17\x49\x8e\xe2\x90\x25\x02\xa7\x49\x8e\x8b\x84\x22\x88\x9e\x60\x03\x04\x5b\xeb\x3c\xc8\xb1\x59\x98\x50\xc0\x0c\xfa\x7a\x95\x4c\x43\x02\x49\x54\x16\xce\x97\x36\x49\x92\xc9\xae\x2d\x1f\x8f\xc3\x14\x5f\xe1\x05\x2e\xaa\xa9\x1e\x8d\x19\xb0\xe0\x77\x2e\x20\x39\xd4\xc9\x4d\xa8\x00\x6a\xdc\xb6\x79\x44\x7e\x1f\x13\x50\xb6\x25\x14\xd3\xf2\x8a\xe6\x69\x96\xdd\x2d\x45\x88\x4a\x07\x74\x12\xa2\xa5\xfb\x25\x11\xa3\x98\x81\xbe\xb6\xad\x43\x13\x93\x68\x53\xa7\x6f\x4b\xef\xef\xc3\xb4\x7d\xf2\x62\x2a\x17\x25\x4b\xfa\x2f\x98\x9b\xbf\x6c\x7b\x1b\x85\x22\xe1\x43\x36\x42\x11\xac\x1f\x15\xdb\x99\xa0\x5e\x8f\x6a\x0f\x45\x9d\xe8\xce\x92\x06\x5c\x19\x65\x07\xa4\x98\x03\x64\x4e\x5b\xb1\xca\xf0\x22\xa1\x21\x43\x78\xac\xfd\x01\xcf\xce\x4f\xdf\xbf\x3e\x7f\x7f\xba\x0f\x77\xd1\x6f\x0f\x0e\xf7\x3b\x63\xc8\x36\xa1\xe2\x36\x77\x9f\x2c\x17\xba\xad\xf2\x03\x96\xd2\x03\xcb\x48\x24\x45\xf8\x30\x43\xc8\x6a\xeb\xa7\xb2\x1b\x57\x89\x94\x85\xe6\x49\xff\xc5\xfc\x07\xd3\xfa\x8b\xb9\x09\x55\x3d\x4b\xd2\xe1\x7c\xd4\x99\xaa\x0e\xcc\xb4\x12\x3e\x24\x72\x04\x21\xa2\x7a\x55\x1d\xee\xaf\x70\x09\x96\x27\xfd\x17\xdc\x81\xe5\x06\x6c\x9e\xa4\x43\x3e\xea\xb4\x4c\xe0\x5c\xa9\xf7\x7b\x3d\xfd\x00\x13\x63\x81\xa7\x43\x3e\x42\xe5\xb8\xd7\xf3\x3b\xb3\x9f\x4f\xc2\x0c\x95\x65\xdb\x72\x4f\x5b\x37\x81\x34\xa9\xfb\x2e\x9a\x4d\xac\x61\xcd\x36\x63\x13\x7a\x45\x37\xf5\x40\xf8\xb3\x9d\x60\x0a\x22\x8e\x34\x82\x47\x69\x9e\x5e\x3f\x2e\x4e\x74\xad\xea\x43\xe6\xbb\xe9\x25\xcd\x04\x25\x9b\x86\x77\x16\x91\xa1\xdd\x6b\x55\x17\x72\x7a\x37\x7c\x6f\xd4\xfc\x04\x0f\x93\xf4\x41\x06\x6b\x55\x22\x19\x63\xd4\x09\x49\x26\x52\xd1\xcc\x50\xf7\xb9\x7c\x0b\x94\xfc\x27\xfe\x41\xc0\x6b\x25\x15\x09\xd3\xf2\x65\x7d\x42\xdd\xa4\x7c\x29\xe9\x42\xcb\x84\x37\xb2\xea\xd2\x5e\x2f\x84\xa8\x96\xfe\xf1\x05\xd2\x24\xe6\xca\x57\x41\xa4\xd7\x56\x1b\x84\x85\x8e\x6e\x9a\x47\x82\xa7\xe3\x8f\x48\x85\x54\x20\x09\x55\x1b\xa3\xbe\x36\x74\xf2\x6c\x1e\x2d\xe6\x93\x54\x90\xf3\xf4\x1a\x85\x1c\x33\x50\x31\xe5\xa0\x3e\x58\xcc\xd4\x5b\x06\xb1\x12\x30\x2f\x2b\x9e\x8a\x8a\x4a\x10\x67\xa6\x0f\x72\x80\x0e\x02\x66\x12\x62\x48\x8c\x86\x50\x6a\x84\xd0\x32\x4f\x88\x36\x6f\x6a\x4d\xbf\x4c\x25\x0c\x9c\xa3\xd2\x37\x3a\x2d\x88\x00\x61\x87\x8e\xdf\x90\x31\xe3\x29\x80\x64\x08\xb3\xd2\xab\x25\xb1\x28\xd7\x15\x5f\x39\x83\x16\x82\xb4\xfb\xb7\xeb\x32\xca\xc3\x45\x95\xb3\x0f\x17\xb3\x74\xcc\xd9\x03\x85\x39\x99\x2c\xc6\xe4\xa2\x5e\xe7\xb3\xbb\x41\xaf\xac\x40\x66\x73\x71\xb7\xf1\xd2\x83\xd2\x6b\x17\x74\xce\xc4\xfe\xa3\x40\x9a\x0a\x0f\x40\xcd\x37\x35\xec\x97\x10\x73\xf2\x10\x8e\x8f\x41\x6f\x2d\xac\x4b\xc6\xb2\x8d\x81\xc9\xc2\x6b\xa1\x41\x6e\xe7\xcd\x37\x42\x59\x7a\x2d\x3c\xf2\xef\x45\xba\x39\x7a\x50\x7a\x2d\xbc\xeb\x47\x98\xd1\xac\xa7\xdb\xb5\xd8\x7c\x40\xaf\xc5\xfa\xf1\xdc\x38\xda\xbe\x88\xb2\xf5\x58\x65\x8f\xc0\x2a\x7b\x00\x2b\x96\x93\x7f\xa6\x9b\xaf\x03\x55\xfc\x01\x9f\x1a\x15\x36\x7c\x63\x98\xa6\xc2\x03\x09\x0b\xb4\x61\x69\x7e\xbd\x97\xd1\x74\xf3\x73\xb8\x5e\x71\x6d\x2b\x69\xbe\x69\x9a\x05\x11\xa5\xf9\xfa\x14\x0b\x6c\x73\x76\x84\x3d\x90\x06\x63\x31\xdb\x38\xf9\x43\xb1\x98\xad\x5f\xbb\x10\x81\x67\x33\x58\x33\x9a\x3f\xb0\x0f\xfc\xbe\x39\xac\xf4\xf7\x07\x60\xcd\x1f\x01\x6b\xbe\x9e\x5e\x60\x10\xb8\x29\xc1\x18\x7f\xd0\x7a\xee\x0d\xbd\xba\xda\x1c\xa0\x2a\xff\x50\x6f\x5f\x6d\xba\x40\xa0\xbf\xaf\xd6\xaf\x8e\x2b\x9a\x89\x8d\xd9\x5f\x1e\xa9\xe2\x1b\x40\x7c\x04\x92\xa6\xc2\x5a\xa8\x8b\x9c\xfe\x7b\x63\x88\xb2\xf0\x83\xd0\x1e\x81\xa1\x2a\xfe\x10\x44\xb6\xf9\xfa\x80\xd2\xeb\x3d\x22\x25\xf3\x5e\x90\xf1\xe6\xd3\xd1\xd6\x28\x4b\xb4\x9a\x81\x1a\xb3\x2c\x7b\x0c\x54\x5d\x7e\x95\xfc\xb1\x5a\xbc\xab\x5d\x72\x6f\x92\xc5\xe5\x8b\x08\x1f\x2a\x40\xa0\x8e\xe0\x41\xe1\xe2\xf4\x9f\x24\xfd\x78\x94\xce\xab\x3c\xbc\xd0\x3c\xbc\x17\x1f\xdb\xbb\x38\x6c\x8d\x71\x54\x29\x11\xcd\x39\x13\xac\xd7\x6b\x79\x19\x22\xbc\xa5\x31\x87\xdf\xb2\x7a\x34\x4d\x8b\x93\xdb\xdc\xf4\x41\x89\x24\xf2\x1c\x81\x36\x8a\x00\x99\xa8\x49\xa6\x07\xe0\x02\xa9\x9e\x12\xb6\x5b\xcf\x5b\xca\x50\xbc\x2c\x4b\xab\xf9\xd1\x05\x87\x62\x94\xe4\x58\x7b\x54\xab\x6b\x37\x2a\xe5\x27\x73\x5b\x5e\xbd\x5c\x95\xa4\x39\x4a\xe7\x18\x7c\x60\x95\x08\x45\xbc\x3b\x33\x59\xcf\x85\xf3\xae\xdd\x60\xe6\x4a\xe9\x26\x74\x3e\x13\x09\x20\xc7\x02\xa9\x58\x94\x96\xce\xa9\x27\xe6\x75\x69\x47\x4b\x4c\xf9\x4a\x89\x49\x60\x2e\x25\x26\xaa\x25\xa6\xb4\x5d\x62\x52\xa3\x47\x7d\x89\x29\x6f\x17\x81\x52\x84\xd3\xb2\x5a\x2b\xe1\x11\x4c\x17\x90\x9c\x56\x56\x6b\x9d\xfb\xeb\xa5\xa2\x4f\x90\xc8\xd7\xab\x3f\x2c\x15\xb9\x94\x38\x8d\x26\x68\x38\x72\x1f\x68\x48\xd0\x32\x57\xca\x26\x82\x4a\xa3\x4c\x6a\x51\xb5\x2d\x15\x39\xf9\x90\x8d\x5e\x18\xaf\xc6\x34\x9f\xe8\xd9\x48\x49\x81\xc2\x54\x52\xd4\x68\xda\xdc\x10\x4a\xcc\xf2\xa6\x25\xa7\x53\x5d\x91\xa4\xae\x22\xc5\x6a\xd5\xed\x71\x9e\x82\x8d\x80\xc2\x87\x00\x22\x74\xc8\x46\xae\xc2\x90\x8d\xf4\x40\xf3\xb0\x8f\xa9\xcd\x16\xe7\xa2\x03\x44\x51\x94\x56\xc2\x88\x7a\xcd\x5a\x1f\x59\xad\x38\x23\x4e\x63\xa6\x53\xac\xbb\x34\x28\xe9\x90\x8f\xd4\xa5\x7a\x1e\x52\x64\xf4\x85\xb4\xf4\x64\x6e\xbf\x30\x19\xc9\x29\x60\xb3\x67\x94\xe5\x27\x6c\x44\x20\x5b\xb6\x5c\x42\xd5\x7a\x48\xb6\x03\xdd\x91\x00\x37\x13\xef\x18\x05\x83\x84\x05\x79\x1a\x7d\x3c\x09\x52\x41\x4f\x89\x15\x3a\xff\x68\x73\x5b\x1b\xb7\x97\x93\x0d\xda\x5a\xdd\xa1\x63\x96\x93\xf5\xfd\xf9\x34\xf0\x5b\x0d\x90\x1a\xa2\x14\x55\x3f\x0d\x64\xd7\xb8\x08\xae\xc4\x16\xe4\x56\x7f\xaf\xe2\x1b\x81\xb7\x49\x16\xab\x50\xdd\x4d\x11\x68\xc4\x73\xd3\x0a\x48\xb3\x8f\x6f\xa5\x75\x86\x13\x94\x24\x09\xd7\x80\xaf\xc5\x67\x83\xfa\xd2\xc1\x24\x9f\x0f\xa8\xc5\x34\xfb\x7c\x98\xfe\xe0\x60\x7e\x3e\x4c\x7f\xb0\x98\x2a\xe9\x77\xd5\x84\x4b\xa5\x78\x89\x42\x82\x74\xb9\x50\x05\x61\xd4\xd2\xed\xc3\xb5\x5c\xbe\x2d\x15\xec\xa6\x2a\xb7\x6e\x32\xcd\x81\x47\xe0\x2b\x3b\xa2\xe2\xaf\x70\xb7\xf3\x1b\x35\xa3\x29\x81\x73\x84\x25\x43\x0b\x7d\xe5\x92\x69\xc9\x27\xd5\x58\x32\xb2\x0a\x49\x5e\x12\xd4\x51\x1f\xa9\x56\x82\xea\xf7\x5b\xf0\x81\xf1\xba\x9f\xe7\x23\x94\x8a\x1b\x70\xa1\x8f\x8a\xc0\xf3\x30\x3b\xea\x9f\xbc\x8a\x81\xf4\x22\x13\x55\xf7\xd8\xe1\x28\x68\x2c\xf6\x46\x72\x2e\xb7\xd8\xf3\x45\x96\x25\x49\x42\xef\xef\x03\x45\x01\x77\x61\x4a\x77\xf3\x98\x46\x8a\x06\xa1\xc0\xca\x9a\xb1\x96\x76\xad\xac\xb1\xb6\xe6\x16\x53\x83\x7f\xfa\x5f\x24\x1d\x4f\x9f\x9a\x2b\xb6\x5d\x96\x54\x92\x06\xc3\xd7\xe8\x6f\x4f\x9e\xe2\x20\x80\xdb\x4c\x82\xc9\x76\x02\x7d\x00\x9d\x78\xa5\x6f\x38\x8a\x22\xd1\xe8\x1a\xa9\x77\x8d\x55\x14\xed\xb4\x00\x6e\x40\x4e\xde\x5d\x78\xb1\x87\x42\x4f\x2d\x2f\xf7\xd2\xd8\xbc\x5f\xd9\xb5\xd4\x05\x37\xa5\x89\xdc\x75\xe7\x10\x10\x54\x11\xbb\x92\xe1\xb6\xc2\x3f\xd0\xf6\x95\x0b\x6d\x89\x2a\x0e\xab\x5a\x2e\x6a\xf7\x5f\x96\x19\x6e\x97\x13\x24\x8b\xcc\x13\x81\x45\x32\x1c\x21\xac\x46\x24\x6c\xb3\x46\x81\x3e\x70\x3b\xa0\xa5\x7f\x6d\xfd\x65\x1a\x54\xb2\x77\x6b\x9b\x8b\xf5\x4c\x9d\xa8\x32\x75\xca\x1e\x81\x80\x21\x82\x18\x52\x9f\xa9\xa3\x26\x04\x69\x37\x0d\x6b\x78\xd8\x14\xc5\x6a\xa4\x35\xa7\x78\x46\x84\xcb\x1a\xe4\xc5\x7a\xd5\x12\x51\x63\xd1\xbc\xa8\xce\x29\x86\x7a\x3d\x56\xa9\x47\xa5\xb4\x15\x12\x74\x7f\x1f\x52\x9d\x13\x03\x0b\xc3\x27\x23\x29\xda\x62\x21\xfb\xfe\x09\x5c\x5d\xb1\x98\xb5\x19\x16\xc9\x0d\x41\x3b\xab\x91\x6d\x81\xfb\x4a\x15\xa7\xb9\x83\xdf\x1f\xa8\x71\x94\x8a\xa9\x2c\x06\x3f\xf1\xce\xe0\x69\x5f\x69\xcc\x54\x75\x9a\x6f\x54\x9d\x2a\x19\x02\xab\xda\x60\x3a\x07\x8d\xcf\x93\x42\xfd\x7d\x75\xd7\x2e\x4e\x15\x21\x5c\x83\xeb\x5d\xe0\xc9\x52\x94\x1f\xe4\x06\xed\xa5\x8a\xc6\x3a\xe4\xae\x9a\x3c\x49\x66\x1f\x6b\x20\xe5\x86\xa8\x25\xbd\xe4\x59\x92\x34\xe6\xd0\x6e\x03\x6c\xdc\x78\x93\x24\x49\x6e\x26\x43\xd6\x82\x19\x45\xca\x62\x86\xfe\x1b\xcc\x86\x94\xa6\xa6\xb5\x63\x7f\x78\x53\xae\xce\x32\xaa\x77\x2e\xd5\x22\x98\xbe\xae\xde\xb3\xc0\xbe\x49\xab\x67\x92\xcd\x84\xa6\xcf\xb8\xbe\xec\xde\xe8\xd6\xdb\x06\x1d\x14\x68\x57\xc4\xc3\x51\x29\xdb\x16\xd1\x9c\xcd\x43\x64\xb6\x0b\x09\xca\x3a\x2d\x82\xac\x25\x2a\x46\x0a\x2e\x65\xf8\xd6\x40\xd6\x1e\x72\x63\xf0\x41\x7d\x29\x14\x42\x49\x33\xb0\x59\x42\xcb\x3c\xd9\xea\x77\x2e\x39\x49\x3f\x96\x52\x2c\x1b\xc8\x81\xd7\x72\xd9\xd6\x40\xcb\x65\x72\xcd\x75\xaa\x3b\x36\x95\x8b\xd7\xd3\x96\x21\x6d\xce\xf7\x86\x5e\x5d\x3d\x66\x1a\x88\xcd\xa7\x03\x6e\x6c\x41\x62\xfd\x14\xf1\x76\xa6\x5d\xea\xd1\x70\x47\x76\x92\x45\xa0\x43\x3b\xb9\x0a\xfd\x43\x8f\xae\x9d\x4b\x5a\x29\xf7\xa7\xcd\x24\x1b\xf9\x7f\xc3\x89\xe4\x69\x87\x76\x25\x27\x13\x8b\xc6\xb8\x11\x18\x37\xa3\x8d\x54\xa3\xc6\xb8\x68\x1a\x04\x18\x75\x1c\xbf\xbf\x87\x2e\x18\x6a\x86\x42\x6e\xe7\xf6\x94\xeb\xac\x34\xea\xe2\xbb\x13\x0d\x2c\x9e\x02\x43\xaf\x37\x0c\x9b\x08\x42\xc7\x0f\x5b\x74\x3c\xdb\xa7\xea\x71\xbb\xee\x04\x55\x69\xe0\x11\x60\x1f\xea\x1d\x98\xfb\x6c\x04\xec\x96\xfe\xc1\x3a\x6d\x4c\xc7\x74\x21\xd8\xeb\xd6\x74\xbb\xad\x53\x10\x0c\x1b\x82\xff\x92\xcf\x90\x0c\x14\xa7\xad\xb6\xad\xfe\x60\x0d\x05\xe6\x23\x67\x1b\x19\x5b\xfe\x48\x7e\x90\xb4\x0d\xd2\x62\x1c\x8c\x4a\x54\x86\xa0\x76\x61\x90\x78\x24\xde\x6c\xa7\x28\xd0\xae\x6f\x7d\x65\x39\xba\xc2\x10\x07\xc5\x2b\x56\xa2\x9a\x0a\x0d\x1a\x52\xe4\x6d\x30\x6a\xe3\x10\x75\xf5\xd5\x30\xc5\xc5\x28\x11\x43\x36\xc2\x59\xa2\x0d\x35\x66\xf3\x94\x2b\x35\x82\x3d\x41\x52\xcd\xb1\xc2\x4f\x8a\x53\x04\x5a\x1f\x39\xa1\x32\xbd\xbb\x04\x13\x52\x8c\x25\x1d\x8b\xdd\x9d\xc1\xdf\xb2\x38\x33\x5a\xaf\xbe\x1c\xb5\xb0\xc0\xe9\xea\xb5\x68\x26\xd2\xb8\x2a\xb4\x58\x65\xf7\x5a\xfd\x78\x33\xb3\x5d\x53\x5b\x0e\x82\xcf\x8c\xf0\x6b\xb2\xea\xa3\x52\x02\xaf\xfa\x7a\x4b\xd2\x8f\x17\x05\x59\xe1\x04\xf6\xc5\xac\x2e\x0c\x52\x8f\xce\x11\xff\x10\xc8\x77\xba\x77\x1b\x83\x56\xd5\xd6\x67\xc9\xff\x27\x49\x3f\x9e\x91\x4d\xef\x44\x68\x35\xb2\x22\x0c\x8e\xbf\x93\x40\x78\xd4\xfd\xd3\x1f\xf7\x77\xb9\x29\x19\xdb\xc8\x38\xaa\x34\x5b\x35\x5d\xfc\x01\xdd\xcc\x5e\xdc\xee\x2a\xa2\x6a\x21\x3c\x78\x21\x7e\xa8\x9f\x04\x2f\x84\xd1\x87\x72\x6f\xd3\x17\x60\xb0\xc9\x91\x3b\xb4\x35\xa5\x3e\x92\xbb\x22\xe4\xe6\xc0\xc8\x7d\x53\x63\x93\xd1\x41\x9e\x18\x44\x1e\xe1\x7c\xc8\x46\xee\xfe\xe1\x53\x18\x69\xd5\x6d\x08\xc4\xd6\x34\x68\x5f\xaa\xaf\x31\x2f\x35\x72\x38\x97\x9b\x96\xf0\x0c\xdc\xf3\x75\x34\xd5\x2b\x68\xa5\x82\xe0\x8b\x87\xa9\xd6\x99\x33\xb4\x58\x2f\x5a\xc4\x7a\x61\x94\xd0\xa4\xe3\x07\x94\xf0\xc7\x42\xb4\x8e\x05\x04\x7d\x18\x61\xe5\xa4\x30\xe4\xf6\x08\x27\xe5\x3a\x8a\xd8\x8d\xe1\x4f\xf6\x4b\x68\x39\xa0\xf5\xf2\xdb\xd5\x7f\x63\x08\xf4\x50\x89\xb0\x6d\xbc\xf0\xa4\xf4\xe2\x5d\xe0\x95\x4a\x94\xab\xfa\x2f\xce\x52\x70\xfd\x0d\x09\xb6\x6e\x85\x36\x8f\x61\xb3\xa4\x4b\x71\xa8\x24\xc4\x66\x09\xf5\xbe\x2c\x57\xfb\x52\xe8\x5c\xad\x9b\xdf\x85\xfa\x2e\x15\x9c\x33\xbe\x03\x01\xe1\x56\x45\x2c\x32\x8a\xaa\xcb\x74\xfc\xf1\x72\xc1\xf3\x55\xc1\x87\x3e\x8b\xc3\xcc\xeb\x05\xe7\x24\x17\xa7\x8b\xfc\x90\xb1\x79\x4b\xf4\x3c\xa6\xd3\xc3\x80\xb4\xf5\x1b\xa3\x79\x32\xc1\x24\xba\x24\xd7\xbe\x58\x8a\x96\x99\x7a\xa5\xd8\x55\x92\x4f\xaa\xdf\x20\xdf\x13\xb0\x7c\x3a\x91\x5b\x4b\x43\x99\xfd\x58\x77\xad\x84\xbb\xd3\x33\xfd\x71\x72\x4e\x67\x84\x17\xad\x00\xa6\x69\xa1\xbe\x6a\xae\x39\xcd\xc7\x24\x6b\x96\xcf\x2a\x5f\x54\xd9\x2c\x95\x92\x6d\x1b\x50\xf8\xd2\x44\x89\xe5\x63\xf2\x69\xfc\xb8\x7f\x59\x25\xd7\xaf\xb7\x35\xbb\xc5\x2c\xa2\x45\x5e\x4c\xe9\x95\x70\x19\xef\x10\x76\x24\x3a\xc9\xc7\x40\x26\x51\xa1\xea\x49\x0d\xa7\x06\x65\x4d\xb5\x6a\x57\x72\xf2\xfb\x27\x8a\x16\x1b\x76\x05\x14\x2f\x03\x89\xbf\x25\xa6\xf0\x46\xa8\x8d\x99\x35\x63\xa4\x03\xfc\x4f\xc8\x25\x5b\xac\xea\x9d\xf9\xd8\xec\x99\x98\x72\x26\xc4\x8a\xe9\x66\x3e\x36\xab\x5d\xd2\x7c\x92\x10\x9b\x97\xef\x74\x91\x27\x24\x72\xcb\x31\x21\xd1\xbf\x17\x64\x41\x0a\x48\xc1\x5e\xdc\xcc\xc1\xf7\xea\xbf\xe5\xab\x2a\x5f\x20\x77\x7f\x7d\xbf\xf9\xe1\xc9\x12\xd4\x34\x3c\xcd\x27\x6c\x16\xa2\xf2\xc9\xd2\x78\xab\x84\xa8\xfc\x60\xb5\xb1\x41\x14\xe0\x20\x40\x9d\x26\x64\x93\x92\x64\xe8\x52\x20\x6a\xe7\xd3\x73\x9e\xe6\x05\xb5\xef\xc0\x99\x2f\xc0\x01\x38\x04\x9c\x9a\x5f\x26\xf9\x1b\x4e\x47\x1d\x8b\xbf\xc9\x4c\xa2\x5c\xdf\x8d\x83\x71\x81\x97\xfa\x11\x5a\x8e\x5d\x83\x2c\x7f\x25\x57\x79\xec\x0f\x18\x4b\x48\x89\x59\xbe\x9f\x4f\x6a\x4c\x3f\x4b\x84\x32\xa8\xbe\xca\x16\xc5\x74\xaf\xb8\xcb\xc7\x27\x97\x05\xe1\x37\x84\x17\x92\xb3\x96\x95\x64\xf7\xce\x55\xb0\x78\x1e\x55\x7e\x9b\xaf\x47\x44\x4c\xd9\x24\x0e\x58\xae\xc3\x26\x00\xb4\x5a\x53\xa6\xd3\x5b\x60\xda\x40\xb6\x92\x24\xbd\xbf\x5f\xd3\x36\x06\xd7\x17\xcf\x4d\x68\xe1\x4f\x0c\xbe\xc8\x6b\x73\xa2\x32\xfa\x99\x91\x1f\x95\x09\x04\xc4\xfc\xf1\x45\x49\x0f\x12\xf8\x90\xd5\x41\xf9\xd3\x6a\xdc\xd1\xb3\xed\xcb\x2d\xbf\xcd\x20\xf3\x2a\xe4\x3c\xe9\xbf\xc8\x7f\x20\x2f\x72\x70\x33\xcb\x7d\xc8\xb9\x85\x3c\x81\x85\x1c\x8d\x59\x3e\x4e\x45\xc8\x11\x2a\x6b\x1c\x88\x76\x55\xfe\x5c\x59\x29\xbe\x44\x2e\xad\x8d\x52\x4d\xe8\x7e\x6c\x96\x67\x22\x5f\x9d\x67\x02\x75\xf2\x5a\xcc\xa9\x42\x47\x9a\x79\x9b\x4a\xbe\xe7\x0e\xd0\x32\xf7\x67\xab\x73\x51\x14\x90\x38\x64\x0d\x59\x75\x01\xc9\xf7\xa9\x47\x1b\xf2\xe0\x93\x52\xd9\x7d\xc1\x34\x14\x19\x1b\x27\xb7\x98\x44\xb7\xc9\x3e\x90\x73\x9c\xce\x48\x46\xff\x43\x92\xdf\xe5\xcf\xb4\x98\x12\x2e\x7f\x9d\xc0\x61\xa1\x3f\x9d\xc9\x1f\x60\xb4\x73\x75\x97\x9c\x83\x72\x67\x42\x78\x31\x66\x9c\x24\x47\x50\x70\x4e\x45\x0a\x45\xf7\xd6\x48\x81\xd7\x44\xa8\x0c\x2c\x9b\x5b\x08\xbb\x2a\xeb\x05\xcc\xe2\xf1\xa0\x0b\x1f\xb4\x9e\x02\x4f\x87\xdd\x8b\xd1\xd3\x6b\x1d\x09\x2e\x8f\x20\x24\x52\x38\x20\xcf\x31\x49\x5e\xfe\xae\x2e\x82\xd5\xb1\x41\x71\xb0\x13\x20\x84\xd3\xe4\x69\xb8\x73\x7f\x71\xff\x6b\x74\xff\x6b\x81\xb6\xc3\x08\xed\x3e\xbd\xc6\x45\xf2\x34\xfc\xdf\xfb\x5f\x9f\xa2\x70\xb8\xb7\xf3\x3f\x23\xf4\xf4\x1a\x67\x6d\x20\xdd\xa5\x60\x8a\xf5\x0a\x4b\x5e\xf2\x5d\x1e\x09\xf6\x7e\x3e\x27\xfc\x75\x5a\x90\x10\xc5\x41\xe0\x1a\x2e\x54\x3d\xc1\x0e\xd9\xad\x29\x80\x10\x5e\x24\x4f\xff\x57\x22\xa2\x51\xc0\xe3\xe4\x69\x18\xa1\x16\xd4\x26\x1a\xb5\xfb\x5f\x23\x14\x0e\xd3\x9d\xff\x00\x76\xd3\x36\xec\x3c\x61\xd7\x43\x2e\xb8\x08\xb6\x9b\x08\x62\x9e\xd8\x39\x9a\xbc\x14\xdb\x61\xbe\x9b\x37\x7b\x81\x73\xa7\x21\x7b\x1a\xb4\x0a\x5b\x52\xd4\x02\x79\xcb\xf6\x78\x81\x85\xeb\xfe\x18\xbb\xa8\x7d\xb9\x76\x19\x7e\xea\x91\x67\x62\xc8\xe3\xb5\x8c\x4a\x84\xaf\x92\xa7\xd0\xdb\x5f\x27\x23\x3d\x28\xdb\xb2\xdf\xf3\xe4\xe9\xce\xfd\xaf\xc5\xf6\xd3\x6b\x3c\x5b\x3f\x40\x57\x38\x78\x32\xb8\x78\xf2\xcc\x6b\x6b\x8e\x83\x8b\x00\xd5\x86\x02\xdf\xb8\xb1\x97\xed\x2d\xfa\xfd\xd7\xfd\x9d\x5f\x17\xfd\x67\x5f\xbd\x05\x52\x5f\xaf\x6f\xe7\xa6\xad\x03\x08\x5f\x36\xf0\x97\xb0\xee\xd6\xc3\xba\x74\x38\x57\x91\x74\xa7\xe7\x85\x9f\xbf\xb2\xef\x2e\x05\xed\x65\xf5\x5f\xfe\x2b\x1c\xf6\x77\xbe\x1f\x6d\xc3\xec\x01\xdb\x34\xad\x9d\xa6\x49\xbe\x3b\x4f\x79\x41\x0e\x72\x11\xe6\x78\xd0\x47\x3b\x83\x98\x6f\x6f\x63\x96\x50\xab\x4d\xdc\x15\x43\x3a\x32\xda\x19\xad\x0e\x54\x3b\xa4\x13\x4f\xd9\x2e\x8b\xb5\xdc\xce\x76\x03\x75\xbe\x07\xb1\xd5\x70\xb3\xdd\x20\x88\x75\xea\x26\x86\x4a\x4f\xcf\x7b\x5b\x31\x1f\xd9\xaa\x6a\xaf\x39\xba\xbf\xaf\x9f\xba\x2f\x9f\x21\xb8\xb8\x55\x25\x9d\xa9\x28\xa8\x47\x95\x4a\xd9\x56\xc1\x03\x84\xf0\x45\x48\xac\xbd\x90\x42\x01\xc1\x2d\x27\x68\xb9\x2d\x1e\xfb\x55\x7d\x35\xcc\xef\xa7\x72\x56\x79\x65\x7e\xf7\xca\xdc\x81\xa9\x27\xf1\xbe\x9e\x78\x5f\x59\xe3\xeb\x59\x85\x4f\xaf\x7f\x3d\xf7\xbe\x4e\x1b\x5f\x8f\xbc\xaf\xb3\xc6\xd7\x3d\xef\xeb\xb5\xf9\xca\x55\x32\xc0\x7a\x2c\xe9\x48\x11\xa0\xd7\x6b\xdb\x86\x29\x29\x42\xf5\xdd\x91\x15\x2f\x6f\xe3\xe5\x98\xe5\x57\xf4\x7a\x61\xb7\x63\x7f\x73\x1e\xe0\x5b\x4e\x05\x31\x9f\xe0\x9c\x72\x5b\xf4\xbe\x76\x20\x2c\x71\xc6\xc6\x9f\x04\xe8\x33\x33\x76\xb7\xe6\x72\xa0\x2c\xb1\x39\x1b\xff\x48\x07\xcf\x6c\x07\xdd\x31\xfc\x47\xe0\xfd\xee\xe0\x99\x73\xfc\x8f\x80\x3b\xb1\xe0\xdc\x71\xff\x47\xe0\x1d\x59\x78\x86\x97\xf8\x23\xd0\xce\x1d\x34\xcb\x7d\xfc\x11\x78\x7b\x06\x1e\xd8\xe1\x77\x1a\xbc\x5f\x2b\x6b\xf7\xc5\x34\x7b\x8e\x39\xa9\x65\x4f\x20\xa5\x52\x23\x35\xbe\x56\xb3\x2f\xd8\x12\x6d\xa2\xbe\x18\x92\x51\x69\x33\x51\x18\x4e\xd7\xb8\x2a\x93\x7c\xcc\x40\x82\xfd\x62\x9d\x3b\xd0\x7a\x47\x2a\x85\x58\x68\xec\x60\x36\xcf\x5c\x70\xfb\x15\xdf\x9b\x5a\x4b\x13\x3c\xec\x72\x71\x75\x45\x78\x42\x74\xc8\x34\xc9\x87\xf6\x4b\xd5\x0f\xab\x18\x26\x2f\x9f\x7d\xfd\xb5\x17\xde\x0b\x64\xdd\xf0\xc3\xc9\x5c\x96\xea\xca\xed\xaa\xcb\x6e\x08\xef\x7e\xb7\x73\x49\x45\x11\x75\x7f\x64\xa2\x0b\xb6\x10\x1f\x4c\xe8\x29\x72\x2f\x1a\x07\xca\xce\xb3\x1f\x7e\xf8\xae\xe3\x21\x61\x23\x0b\x3b\x65\xff\xb3\x17\x79\xf3\xa2\x20\x77\x86\xd3\x15\x49\x8f\x5e\x85\x41\xbe\x90\x13\xcf\x9d\x8f\xb4\xd7\xa3\x2f\x9f\x0d\xbe\xfa\xf6\xab\xef\x9e\x7f\xf3\xd5\xb7\x6d\x9d\x20\x3c\xcd\x27\xaa\x03\xcf\x9f\x55\x7a\x40\xa1\x07\x0d\x0c\xa9\x8a\xd0\xab\x88\xe5\x7f\x55\xf8\x95\x73\x95\xd6\x5e\x13\x6f\x67\x60\x82\x07\xab\x52\x43\xb2\x3d\x18\x35\xf0\x08\xce\xf9\x1d\xcd\xaf\xbb\x82\x75\xa1\x7a\x97\x69\xbc\x68\xde\x9d\xb3\xf9\x22\x4b\x05\x99\x74\x8b\x8c\x09\x48\x09\x49\xd2\x49\x97\x5d\x75\xd3\x2e\x27\xa0\x28\x50\x9f\xa2\xa0\x82\x2d\xb4\x94\x88\xb2\x65\x9a\xde\x7c\xc1\x29\xfa\xfa\x00\xf2\x11\xbf\x7a\xff\xa3\x9b\x96\xea\xe7\xd6\xa0\x03\x9f\x5d\xd2\x12\x83\x51\xc6\x6e\x77\x32\x72\x43\xb2\x2f\x88\xd7\x99\x48\xc7\x1f\x13\xf9\x97\xf1\xd4\xdd\x8a\xb9\x17\x2b\x55\xfb\xa9\x3c\xea\x92\xe1\x48\xad\x11\xd0\x40\xf6\x8d\x7a\xff\x26\xe5\x4b\xf9\x26\x16\x18\x8a\xc5\xbc\x84\xd1\x96\xb3\x51\xf8\xb1\x48\x6c\xdd\xed\xed\x0e\xc9\x0a\xa2\x2d\xaa\xf9\x50\x8c\x3a\x0e\x6e\x5e\xfa\x3a\x7e\x80\x38\x14\x23\xb9\x3c\xcb\x09\xe1\xe4\xaa\x7e\x0b\xa0\x4a\x90\x51\x39\xe1\x6c\x6e\x17\xb5\x79\x9b\x58\xc0\x1e\xea\xa4\x2c\x37\xcc\x14\x3a\x34\xf1\xa9\x6f\xc8\x38\x21\x25\x04\xcd\xf3\xae\x2f\x21\xa7\xa9\xf9\x6e\x6f\xd3\x4b\x78\x78\xcb\xd9\xac\x91\xff\xb4\x56\x96\x98\xc2\x3e\x2b\xba\xa2\x28\xe6\x08\x95\x63\x36\x37\x21\xd4\xf4\x67\x49\x1b\xfb\x4c\x46\x25\x9c\x52\xa7\xe9\x6d\xad\x14\xc4\xd0\xbe\x26\x02\xbe\x54\x09\xa8\x2b\xaa\xa8\x89\xae\x8a\x0d\x3b\x54\x66\x24\x0f\x1b\x55\xcc\x52\x2f\xcd\xb4\x12\xf5\x19\x9d\xb3\xc9\xaa\x2c\x65\x9e\xf2\xa8\xa0\xb3\x79\x46\x76\x26\x6c\xf6\xd4\x45\xc8\xfb\xfc\x9a\xa3\x82\x70\x15\xe2\xf2\xd5\x82\x66\x13\xff\xee\xa0\xe2\xaa\x14\x5d\x31\xae\xc3\x61\x2a\x55\x2c\x7c\x96\x67\xe2\x31\x9b\x90\x37\x27\x47\xe7\x9c\x90\xd7\xcc\x1d\x31\xd5\xc4\xb3\x79\x57\xa9\x8e\x8a\xae\x88\x5a\x0a\xd7\x27\x9b\x8a\x4c\x49\x40\xf7\x69\x2f\xa3\x11\xcc\x20\x22\x16\xf3\xf7\x05\xc9\x48\x61\x7c\xaf\x42\xb4\x2c\x69\x5e\x10\x2e\x7e\x3a\x3f\x3a\x7c\x65\x42\xd5\x70\x6b\xc5\xa7\xa6\x81\x21\xa2\x8e\x71\x7e\x9a\xde\xca\xe2\x67\x3a\xa4\x9c\x73\x10\x83\x88\x5e\x84\x0b\x0d\x88\x62\x8e\xb0\x8a\x5a\xfa\x9a\xe5\x63\x4e\x04\x79\xc5\x16\xf9\xa4\x80\xc0\x42\x14\x95\x0a\x9c\xc1\xa5\x36\x85\x6a\x8d\xba\x52\xb2\x23\x7b\x42\x70\x7a\xb9\x10\xc4\x8c\x25\x30\x28\xee\xad\x7c\x27\xa7\xd1\x2a\x0a\xe7\x2d\xae\x81\x8a\xdc\xcc\x23\xf7\x31\xb9\xd5\xcd\xea\x11\xae\x6d\x63\x2b\x53\x52\xb8\x99\x91\xb1\xf1\xc7\x37\x64\x0e\x73\xfe\xe2\x82\xcd\x49\x0e\xaf\x94\x99\xcf\x52\xa4\xd7\xc7\xe9\x8c\xc4\x44\xed\x6e\x11\x51\xad\xc1\x99\x7b\x7e\x70\x7e\xb8\xaf\xd5\xd9\xc1\xd9\xeb\xd3\x83\x77\xe7\xf6\xd7\xf9\x2f\xfa\x93\x31\xf7\x5b\xd5\xea\xf6\xb6\x89\x54\x9b\xce\xe7\x24\x9f\xbc\x66\x33\xa0\xe2\x87\xbf\x6c\x5f\xc6\x4f\x96\xa2\xfc\xcb\x07\x54\x42\x37\xa2\x0a\x76\xe5\xc5\xc5\x38\x63\x05\xd9\x10\x59\x03\xc1\xaf\x83\x1f\xd7\x83\x9d\x9d\x55\x7d\x58\xd5\x83\x1d\xd7\x83\xd2\x7c\x95\xf3\xd2\x9c\x1f\x06\x5f\xbe\x92\xb8\x09\x98\x98\x19\xd4\xcc\x2f\x40\x4d\xfe\x30\xb7\xf3\xa6\x77\x95\x26\x8c\xa2\xb7\x0d\xb7\xe0\x2f\xd7\xd9\x8c\xff\x25\x40\xaa\xad\xbd\x57\x06\xa0\x35\x5c\x37\xf6\x7f\xc1\x0f\xaa\x10\x7d\xb9\x33\x40\x81\xe0\x60\xdb\xa5\x77\x67\xba\x3d\xc0\x74\xfb\x39\x82\x43\xe3\xc3\x0f\xe2\x92\x4d\xee\x5e\x4a\x06\xf0\x87\xa7\xea\xf9\x03\x2a\x03\xa8\xb0\xbb\x02\x8b\xee\x5f\x02\x14\xaf\xc6\x9e\x3d\x84\xbd\x7f\x76\xd4\x97\xb0\x4f\x52\x9c\x63\x86\xec\x18\x9c\x93\xdf\x45\x7d\x0c\x44\x75\x0c\x30\xaf\x67\xc5\x58\xea\x2f\xb1\xc0\xf2\x38\x3d\xa3\x97\x19\xcd\xaf\xe5\xd8\x91\x9a\x7f\x04\xdf\x15\x51\x96\x16\x02\x02\xed\xc6\x3c\x9a\x73\x72\x43\xd9\xa2\xd0\x55\x4a\xed\xe8\xaa\x35\x3b\x76\xa0\x45\x65\xa0\x85\x3f\xd0\x62\xb7\x4a\x23\xdd\x81\x78\x03\xe2\x86\xbc\xd7\x7b\x0e\xfc\x88\x3c\x99\xce\xef\xe6\x44\xa7\xaf\x68\x96\xbf\xff\x4b\x80\x70\x6b\x43\xa8\x84\x75\xe3\xf6\x64\x6b\x75\x34\x4d\xab\x84\x96\x73\x81\x1a\x03\x86\xca\x07\x0d\xb9\x0a\xa8\xfd\x6d\x29\xd7\x79\x63\xd3\x35\x93\xaf\xd7\x0b\xce\x5f\x9d\xbc\xf9\x25\x30\xfc\xb5\x6e\x21\xd2\x43\x29\xbf\xff\xb4\xbf\xf7\x66\xdd\xf7\xb7\x27\x27\xe7\xab\xbf\x2b\xc4\x7d\x24\x02\x98\xcf\x01\xf2\xdc\x90\x9d\x47\x35\xcd\xaf\xad\x59\x87\xba\xcb\x33\xd5\x40\x2d\x67\xfa\x58\xed\x54\x29\x45\x8a\x53\x32\x63\xde\xc1\xe1\x1b\x97\x2a\x37\x8a\x90\x27\xea\xea\x4e\x4e\xc0\x09\x9b\xc5\xb9\x9a\xa6\x98\x26\x79\xed\xd8\x09\x94\x93\xb2\x5b\x14\xb4\x7a\xe0\x04\x72\xcd\x04\x58\x20\x9c\x57\x0f\x41\x79\xd4\x71\x83\xe4\x2a\xac\x9a\xc2\x04\x03\x29\x70\x67\xcc\x66\x73\x9a\x55\x65\x5f\x3f\x88\xd7\xac\x91\xa7\xd5\xfb\x3d\xe7\xec\x9a\xa7\x95\x22\x46\x94\xde\xc4\x9a\xc4\xf7\x27\x32\xb3\x64\x29\x05\xc0\x38\x00\x4e\x38\x50\x0a\x8b\x98\x54\xbd\xbd\x6b\x45\x95\x86\x62\x67\x65\x8d\xa2\x51\xc3\xe6\xcd\x9f\x11\x91\xb6\x55\xc9\x1a\x55\x98\x98\x4a\x1a\x35\x8b\x2e\x1a\x45\xb3\xf4\x52\xca\x43\xb6\xe8\x27\xf0\x7d\x7a\x50\xce\x44\x2a\x60\x10\x8b\xe4\xef\xf6\x6d\x7a\x99\x91\xe4\xbf\x25\x73\x28\x52\x41\xc7\x2e\x61\x7f\x95\x37\xbc\x49\xf9\x10\x68\x3e\x4a\xe0\x40\xd2\x7b\x1b\x31\x47\xce\x29\x4c\x49\x07\x32\x66\x78\xec\x85\x86\x8b\x53\xac\x12\x4a\xc6\x85\xb7\x41\xb2\xdd\x61\x41\xc2\xef\xfa\xb8\x40\xf8\x8a\x84\xcb\x6a\x8d\xfb\xfb\x31\xce\xd2\x3b\xb6\x10\x31\xc3\xa9\x10\xbc\x50\x41\xf7\xe7\x29\x4f\x67\x45\xcc\xf1\x34\x2d\xa6\x71\x8e\x2f\xe5\xc1\x5b\xc4\xb4\x44\xa3\xd8\xc1\x9b\xb5\xc2\x5b\x03\x26\x15\x90\xe4\x2b\xde\xea\xfb\x10\x4b\x9b\x9b\xf4\x0c\xe8\x03\xa7\xfc\x3f\xa9\x98\x2a\x7e\xff\xa2\xed\x73\x72\xe7\xd3\x7c\x92\xdc\x12\x30\xc1\x14\x69\x32\x96\x4f\x66\xba\xe8\xfb\xd3\x64\x4f\xbe\x5c\x43\xf7\x6e\x9e\xec\x91\xf0\xef\x67\x27\xc7\x11\xdc\x15\xc8\x0d\xd8\x77\x1c\x5b\xe4\xb7\x3c\x9d\x9b\xf4\x2c\x28\xcc\x5d\x6a\x23\x14\xa5\xc5\x21\x90\xd0\x78\x6b\x42\xcc\x71\xf5\xea\x2d\xe3\xe7\xe9\xb5\x8a\x59\x7b\x97\x8b\xf4\xf7\xd7\x6a\xf4\x64\xe3\xaf\x59\x2e\x2a\x16\x36\x9e\x80\xb0\xd4\xcb\x34\x26\x58\x39\x35\xc6\x02\x02\xb2\xb6\xd5\xa9\x6c\x60\x36\xa5\x58\xa7\x16\x98\x21\x48\x99\xdc\xa8\xea\x3b\x1d\xb9\xed\xfe\xc7\xf4\xd4\x36\x2a\xdf\x9e\x90\x50\xfe\x51\x2e\x52\xc8\x60\xc1\x01\x8b\xbf\x53\xd1\x8e\xfc\xc3\x68\xac\x6e\xf0\xcc\x35\x88\xaa\x9d\xde\x63\x5f\xa0\x39\xbf\x7f\x8a\x36\xd5\x46\xcd\x0c\x6a\x19\xb0\x9f\x30\x89\xde\x28\x19\x4a\x7d\x25\xe7\x74\x46\x4c\xf6\x90\x37\x24\x23\xd7\x2a\xc1\xf9\xd1\xc1\xf1\xc1\xd1\xde\xe1\xc5\xeb\xbd\x77\x7b\xaf\x0e\x0e\x0f\xce\x0f\x20\x55\xe6\x9b\xfd\xb7\x7b\xef\x0f\xcf\xeb\xaf\xff\x4e\xc5\x3b\x85\x60\x4b\x9b\x24\x5a\xf7\x6d\xff\xe8\xdd\xf9\x2f\x17\xaf\x0e\x4f\x5e\xff\x43\x42\xfa\x27\x97\xac\xc4\xc4\x48\xa0\x24\x7a\x97\x72\x29\x69\xbe\x91\xfb\x19\x18\x04\x81\xa6\x52\x0a\xd4\x93\x43\x7a\x69\x52\xb1\xeb\xce\xc8\x0a\xc7\x27\xc7\xfb\x09\x89\xde\x1f\xab\xec\xbf\x6f\x64\x67\x80\x3a\x55\x15\x68\x6b\x4f\x96\x93\xbb\x3c\x9d\xd1\xb1\x5a\x01\x72\xad\xeb\x17\xe7\xe9\xb5\xfc\x35\xe7\x64\x9e\x72\xb2\xc7\xaf\x61\x23\x50\x0b\xc9\xfc\x4a\xcd\xe1\xf9\x13\x63\x1f\x21\x47\x9f\x3a\x13\xcd\x4f\x0d\xea\x6c\xcc\xe6\xc4\xd5\x7e\x9d\x42\xee\xa7\xad\x01\x56\x91\x1b\x55\x69\xf3\xd5\x24\x2d\x90\x6f\x6e\x15\x69\x40\xcd\x4e\xb3\xec\x8d\xb2\x7e\x8a\xb7\x06\xa5\xb6\xde\xa9\x63\x3f\xa8\x60\x3f\xa8\x62\x3f\xa8\x60\x3f\x78\x24\xf6\x83\xb5\xd8\x0f\x1a\xd8\x0f\xd6\x61\xbf\x62\xb6\x8d\xb5\x04\x3b\x69\xd5\x48\xd3\x1c\xcc\xd6\x4a\x15\xd7\xff\x27\x92\xcd\x4d\x2e\x3b\x7a\x15\xba\x12\x91\xff\xdd\xdc\xc2\xae\xf8\x0c\xd5\x3b\x36\x7e\x0e\x48\x38\x0d\x4d\xf0\xfb\x5c\x65\x4f\x27\x93\xee\x14\x6a\x75\x43\x29\xc3\x74\xaf\x38\x9b\x75\x9f\x2c\x61\x1f\x56\x3c\x02\xbd\xba\x0b\x05\x2a\x51\x37\xf4\x1b\xe9\xaa\x05\x4d\x26\x5d\x1b\x48\x1a\x7d\x70\x01\x12\xca\x86\xca\xf7\x75\x9a\xff\x55\x74\xf5\x79\xd1\x55\x86\x56\xa6\x69\x79\xb6\xa8\x7c\x30\x05\xe4\xbf\x60\x0b\xd1\x4d\xf3\x2e\xa8\x8b\x6c\x60\xf4\x2e\xbb\xea\xfa\x18\x04\x48\x13\xcd\x04\x81\x5d\x4d\x36\x53\x62\x25\xe1\x2a\x20\x1e\x41\x3a\x13\x1f\x76\x63\xe2\x99\x86\x3e\x0f\xf9\x6c\xf3\x8f\x24\xa0\xc1\xc2\x92\xd0\x9e\xcb\xab\x69\x68\x8b\xac\x24\x62\x15\xc8\x23\xa8\x68\x73\x1f\x6c\x4c\x46\xdb\xd4\xe7\xa1\xa3\x43\xe0\x91\x84\xb4\x78\x58\x4a\xea\x7d\x7e\x35\x1d\x75\x81\x95\x54\xf4\x01\x3c\x82\x86\x73\x55\x6d\x63\x0a\xea\x66\x3e\x0f\xfd\x4c\xe3\x8f\xa4\x9e\xc6\x21\x40\xa5\xe6\xd8\xe4\xae\x58\xa5\x99\xfe\x80\x7c\x0d\x64\xe5\x4b\x48\x50\xa7\x89\xa4\x42\x6f\x47\xd0\x19\xe9\xda\x3c\x6b\x5d\x4e\xfe\xbd\xa0\x9c\x14\xed\x38\x69\x80\x81\x1f\x79\x7d\x6a\xd9\x53\x97\xa2\x91\x63\xc9\xe4\xc6\x4b\x4e\xae\x08\xe7\x84\xc7\x79\x59\x26\x2a\x7c\x55\x73\x1d\xe4\xc8\x13\x23\xa8\x0d\x6e\x04\x62\x84\x16\x15\x18\xf6\xe4\x89\xb4\x2a\x4f\x14\x65\x42\x0d\xeb\xb4\x49\xf1\xfb\xfb\xb1\x87\xbd\x77\x7f\x32\x9c\x4b\x2e\xab\x20\xe1\xf3\x01\x1a\xb9\x12\x73\x4f\xbb\x2b\x3f\xf6\x71\xe3\x4e\x51\x32\x76\x60\x72\x59\x9c\xcd\xd2\x2c\x3b\xc8\x05\x84\x8a\xd0\x62\x9b\x14\x5f\x27\x14\xf2\x25\x1a\xd1\x2d\x6e\x5e\x24\xeb\xc2\x73\x4e\x67\x54\xd0\x1b\xaf\x30\x04\x8c\x77\xf8\xcc\x8c\xda\x49\x77\x96\x1b\xf9\x25\x57\xf2\x0b\x75\x62\x95\x94\x81\xfa\xd0\xa5\xe0\x0c\x06\x53\x72\x00\x01\x5e\xd6\x2a\x38\x81\x67\x50\x42\xe9\xc1\x37\x20\xf7\x93\x70\xa0\xe8\xf1\x0d\x16\xd1\x93\x9b\xbe\x4f\x95\x1b\x5f\x0e\x90\xed\x7c\xfd\x3d\x94\xfd\xfa\x3b\x9c\x02\x6f\x2c\x42\xf8\xfd\x4d\xa5\xd6\x75\xbd\x56\x2b\x5e\x42\x0b\x62\x52\x36\x73\xb2\x98\x42\xed\xd9\x57\x58\x0d\xd2\xb3\xaf\x55\xc7\x54\x46\xfe\x00\x9e\x81\xe3\x87\x69\x0d\xd2\x57\x80\x14\x0a\x5f\xc1\x9f\xaf\xfa\xba\x4b\x1e\x3e\x97\xde\xe8\xdf\x86\xa4\xd7\x23\x3a\x55\xca\xb9\x9c\x3a\xaa\xf6\x33\xd5\xce\xbb\x45\x31\x7d\x6d\x67\x55\x80\x89\x0f\xe7\xce\x83\xe3\x68\xde\xac\xd2\x8e\x25\x74\xa7\x89\xdc\x85\x0d\x9c\xa6\x08\x43\x04\x91\x12\x6b\x99\x54\x90\x04\x85\x8f\xb6\xc3\x61\x89\x0d\xa6\xc0\x31\x55\xae\xa3\x49\x92\x30\xb3\xa6\xee\x8c\xfa\x34\x4d\x86\x2a\xef\x81\xba\xbf\x06\x94\x11\x66\x68\xe9\x5e\x3c\xff\xde\x4b\x1e\xa0\x73\x92\x40\x32\x12\xaf\xc8\x73\x39\x2f\xae\xe6\x98\xef\x14\x08\x61\xf7\x61\xf0\x3d\xce\x87\xc5\xc8\xe5\x0c\x70\x9f\x5a\x88\xe2\xd7\x6c\x1b\x42\xf7\xf5\x99\x44\xb2\xd7\x73\x2f\xbe\xea\x57\xdb\x95\xbf\x2a\x16\x6d\xce\x92\x6c\x57\x8e\xe5\x73\x6c\x54\x3b\x5a\x57\xaf\x70\x30\x2b\x0d\xc5\x73\xa5\x99\xab\x59\xa3\x99\xd4\xc7\x98\x27\xfd\x0e\x09\x7d\xfd\x53\x8e\x96\xda\x43\x64\x09\x71\xb4\x62\x82\xc7\x26\xf3\x5e\x8e\x41\x63\x13\x07\xaf\x0f\xf7\xde\x9f\xed\x07\xdb\x7c\x7b\x5b\x19\xc4\xe8\x60\x78\x12\xa5\xef\xb1\x1a\xfa\x6f\xbe\x53\x6b\x4d\x4f\x37\xc8\x22\x73\x28\xab\x17\x01\x72\x39\x97\xa9\xdc\x85\x85\xd6\xb2\xf7\xf1\xce\x00\xa1\xdc\x76\xff\x9b\x6f\xf1\x22\xa4\x11\x34\x8a\x30\x55\x81\xbd\xbc\x51\x64\x89\xb0\x41\xe7\x5e\xb0\x97\x49\xff\x05\xdb\xd9\x31\xc1\xf5\xc4\x90\x8d\x3a\x0e\x56\x70\xa8\x94\x4d\xa9\x01\x27\x71\xfb\x4a\xe2\xaa\x92\x7b\xc8\x0e\x86\x08\xe1\xfe\x56\x92\xb0\x5e\xcf\x55\xfc\x0a\x2f\xc2\x60\xff\xf8\x0d\xa4\x61\xb2\xb6\xa5\x75\xb0\xaa\x84\xee\x29\x9b\x9b\x8e\xca\x17\xdf\xca\x31\xcd\x6b\xb6\x7e\xe0\x54\x29\xc5\x17\x81\x2f\xd9\x04\xee\xd4\x09\x5e\x8e\xd9\x22\x17\x71\x8e\xb5\x87\x87\xdc\xfa\x44\x88\x3a\xfe\xf6\xe2\x93\x11\xdb\xa5\xf9\x8d\x46\xf2\xe0\xf8\xe0\xfc\x60\xef\x50\xce\x32\x8a\xd5\x68\xe4\x08\x73\xb5\x75\x59\x5c\xdf\x1e\x1c\xef\x1d\x1e\xfe\x62\xd1\x83\x7d\xae\x5a\xc4\x87\xe5\x36\xce\x4a\xdf\x46\x35\x03\x45\xaf\x4b\xf4\xea\x9c\x2f\xe4\x4e\x4e\xaf\xde\xa6\x59\x41\x60\x91\x77\xac\x21\x5a\xa5\xe7\xa1\xb1\x18\x25\x6a\xfe\xa8\xae\x1c\x9e\xed\xcb\x4e\x68\xcc\x61\x0c\x2c\xd6\x35\x4c\xa1\xa8\x35\xc3\xcb\xe5\x9e\x07\xa3\x93\xcb\xe1\x24\x65\x59\x35\x95\x34\x47\xbb\xd6\xbe\xc6\x39\x56\x1a\xa2\xd8\xaa\x29\x96\x33\x36\x21\x31\x85\xcc\x23\x22\xcd\x45\x11\xb3\xb2\x94\xf8\x17\xb7\x54\x8c\x21\x11\xca\x1c\x2d\xc7\x69\x41\xcc\x5e\x1d\xeb\xb6\x0f\x42\x82\xdb\xc2\x7f\xb0\xf9\xa0\x76\x71\x22\x76\x4f\x63\x51\x86\x02\xa1\x0e\x00\x52\x9d\x89\xed\xf4\x82\x39\x0a\x2d\x0d\x74\x09\x7f\xe0\x5d\xb9\xc2\xbd\x0d\x6d\x41\x3b\x44\x7e\x39\xf3\xd2\x14\xab\xef\x4b\xab\xfa\xa0\x6f\x24\x7e\xa3\x42\xdd\xc0\xc8\x21\x1a\xa0\xf8\xb4\x0c\xa9\x41\xfe\x47\x22\x5c\x1a\x58\x90\xdf\xbd\x96\x61\x28\x58\x1b\xc8\x94\x69\x90\xdf\x7f\x15\x7f\xff\x35\x04\x3e\xa8\x74\x98\x88\x2a\x66\x1b\xc1\x7a\xd6\x8f\x9f\x0d\x7c\x58\xc6\x05\xdc\xd3\x2a\x92\xdf\xa7\xe9\xa2\x80\x58\x0f\xc2\x67\xfc\xce\xd5\xec\x78\x5b\xa1\x80\x7c\xd3\x1c\xf8\x56\xd2\xb5\x9a\x1c\x34\x75\xcd\x26\x01\xec\x08\x22\x47\x08\x12\x32\x2c\x40\x87\x8a\x70\x91\x70\x12\x72\xfd\x13\x07\xfb\x86\xd1\x07\xad\x6d\x77\x4a\x52\xc8\x2f\x79\x49\xba\x69\x57\x9b\x49\xab\x6b\x4d\xfd\xc3\x3a\x33\x17\xf6\xba\xd4\xcb\x2a\x0e\xd3\x3c\x52\xda\xb6\x48\xe9\x81\x8d\x2a\x37\x2c\x70\x7e\x7f\x3f\x1c\x61\x8a\x53\x2c\x50\xa9\x66\x1e\x26\xa8\x54\x22\x89\xdf\xe7\x83\x3c\xa3\x39\x59\xd1\x69\xb9\xb2\x28\x14\x80\xc5\xff\x3e\x57\x3c\xdd\x04\x6e\x73\x00\x26\x6d\xb7\xcc\xa8\xe3\xa7\x80\x38\x04\xc1\x4c\x23\xe4\x5e\x8c\x93\xe3\x90\xa2\x5d\x1a\xe7\x21\xaf\x60\x79\xe0\xa9\xac\x57\x23\x29\x85\x30\x58\x96\x92\x7a\x66\xf2\x44\x7a\x07\x88\xe4\x06\x60\xf4\xd3\xdc\xa1\x60\x2f\x32\x35\xbb\x6c\xc9\x9d\xcb\x55\x11\xec\x2b\x87\x38\xb9\x8f\x5c\x66\x64\x16\x4b\x54\xd2\x8c\xea\xd1\x0b\x30\xac\xd5\xb8\x8f\x49\x3e\x89\xfb\x25\x8a\xe5\x01\x84\xf3\x24\x49\x7e\xd9\x0d\x55\xd0\x12\xdb\x50\x9c\x9b\xa3\x46\x6e\x89\xcf\xbe\xc7\x66\x2f\x50\x9b\xfd\x40\x73\x58\xa3\x32\x34\x0a\x6e\xdb\x7f\xe0\x3c\x9b\xfd\xb6\xe6\xce\x75\x9e\xd4\xde\x08\x58\xce\x94\xc9\xa3\xa8\x90\xdc\x41\x96\x50\xc8\xcf\x5f\xe0\x45\xd2\x7f\xb1\xf8\x21\x33\xf6\x89\x8b\xed\x6d\x54\xa8\xe5\x78\x19\xaa\x90\xc6\xd9\x70\x31\xd2\x29\x3e\xf5\x31\x36\xb6\xc7\xd8\xa4\x4c\x16\x90\xbb\x54\xd7\x99\x28\x86\x61\x9a\x8c\x7f\xf8\xe1\xab\x0e\xeb\xf5\xc2\xe9\x7d\xf2\x1d\xea\x50\xf5\xf4\xad\xfa\x7c\x95\x70\xad\x61\xdd\x3b\x3d\xdd\xfb\x05\x64\x2a\xb4\xbc\x4a\xf2\x61\xdf\xf1\x0f\xf3\x24\x1f\x0e\x46\x78\x96\xf4\x5f\xcc\x7e\x98\x1b\xfc\x66\x0e\x3f\x18\x99\xdf\xe7\x3c\xc0\xf3\xe1\xcc\xe3\xe0\xdc\xe7\xef\xbe\xc2\x69\x78\x85\x70\x1a\x66\x08\x4f\x25\x89\xcb\xca\xce\x5b\x63\xf0\xda\xe7\x54\xcb\xbd\x91\x66\xbd\xfc\x29\x26\x5a\xa6\x18\x4f\xec\x8d\x8a\x4b\xef\xda\x98\x62\xbc\x7d\x8a\xe9\x35\xa9\x64\xe0\x6e\x78\x7e\xf2\xe6\x24\xee\x8a\x29\x97\x3b\xc5\x25\x11\x82\x70\xd4\x9c\x78\x73\xb9\x64\x9c\x00\x08\xd3\x4b\x4a\x64\x66\xd5\xeb\x29\xa5\xbb\xff\x46\x29\x4f\x9d\xd6\x63\xf5\xca\x9f\x58\x45\x77\xcc\xcd\x7d\x94\x11\xe6\x28\x86\x43\x9f\x99\xf9\x96\xda\xf9\x56\x98\xad\x21\x4b\x72\xc9\x78\x69\x67\x8c\xfe\xee\xbf\xc2\x5c\xdf\x2e\x21\x25\x3b\x2d\x92\xaa\x13\x47\x8a\xee\xef\x35\xd5\xd3\x5d\x41\xc2\xd4\x16\x4f\xcd\x2e\x31\x27\xa1\x7a\x87\xdb\xb0\xcb\x1c\x76\xb0\x1a\x98\x43\xca\xe0\xb9\x28\xab\xdb\xcb\x95\xbe\x70\x98\x6c\x42\x90\x1c\x6c\x5e\x2c\x29\xec\x52\x53\x17\x92\xe6\x5e\x2b\x66\x56\xd9\x6d\xde\xa4\x98\xf1\x7d\xc9\x38\x79\xc4\x99\x86\x1c\x3b\x8d\x84\x19\x25\x3b\xa3\x78\xed\x22\x44\x69\x2c\x54\xe7\x4b\x84\x97\xf0\x73\x21\xf9\x18\x3d\x57\x21\x06\x8f\x2f\x78\x8f\xab\x8a\x85\x89\xaf\x74\xb8\x2a\x93\x0c\xcf\x13\x39\x24\x0b\x84\x67\xf2\xd8\xa2\x78\x51\x89\x97\xb9\x95\x24\x57\xbb\x2c\x1c\xe3\x09\xbe\xc2\x4b\xd5\xe7\xb9\xe9\xf3\xac\x44\x71\x0a\xdf\x5a\xbe\x94\xf4\x2a\x74\x47\x56\xb8\x5a\xb9\xa3\x7e\xc6\xdd\xd7\x69\x9e\x33\xd1\xbd\xa2\xb9\xaf\x48\x0c\xb6\xed\x51\xf0\xf0\xa9\xaf\xc3\xe8\xf9\x9e\x30\xf5\x88\x57\x11\x9b\x3f\xdf\xd5\xcc\xa4\xc0\xf2\x27\xfc\x37\x80\xff\x9f\xc1\xff\xcf\x51\x5c\x29\xff\x6c\x75\xf9\x5a\xc9\x41\x5b\x49\x14\x57\x5e\xa2\x72\xa3\x1b\xaf\x89\xbe\x6c\xd8\x6b\xb3\xec\x85\xfd\x3b\x59\x96\xda\x66\x63\x91\x8f\xe5\xd6\xae\x6c\x7b\xad\x05\x29\x14\xb2\xd6\xb4\x50\x48\xe3\x81\x76\x06\xa5\x7f\x06\x9b\x2d\x6b\xd8\x1f\x61\x6d\x71\xa5\x2a\x5b\x47\x98\xb0\xef\x35\x35\xcc\x47\x2a\x8e\x60\x59\xca\x8a\xef\x94\x5f\x8d\x33\x67\x78\x6d\x77\x4f\x77\x83\x78\x7f\x0f\x7f\x6a\xb9\x04\x49\xa7\xba\xf6\x21\x9a\x24\x49\x86\x64\xe4\xe4\xc1\x96\x58\x78\xc4\xc9\xda\xcf\xb1\x18\xf2\x91\x0b\x23\xee\x65\x9b\xfc\xe8\xb2\x4d\x6a\x5e\x2f\x77\xbc\x9e\xa7\xd1\x89\x0f\xa1\x60\x6b\x90\x45\x79\x60\xea\x93\x8f\xd9\x93\xaf\x80\x93\x8f\xa0\x8e\x4e\xa2\x58\x98\x84\xa6\x4c\x9e\x7c\x79\xaf\x17\x66\x70\xf2\xa9\x34\x94\x8d\xf3\x4e\xa0\xe5\x22\x11\xfe\x79\x37\x4e\x84\x3c\xef\x26\x49\xff\xc5\xe4\x07\x63\xa4\xfb\x62\xb2\xbd\x8d\x68\xfd\xbc\x1b\x0f\x27\xde\x79\x47\xab\xe7\xdd\x42\x9e\x77\x95\xf6\x10\xce\xa4\xd4\x58\x42\xd7\x07\x91\xda\x18\xb1\xfa\x21\x37\x47\xfd\xa8\x37\x48\x84\x29\x52\xe1\x02\xd5\xbe\x08\x4d\x6a\xf2\x84\xd3\x04\xca\xe2\xab\x44\x73\xb2\xd5\xa1\x9b\xa2\xdd\x77\xf6\xc8\x9b\xe2\x2b\x14\x0f\xe7\xe1\xd4\x6a\x2a\xeb\xa0\xdd\x96\xdb\x46\x7f\xb5\x83\xb1\xf9\x00\x6c\x0b\xf1\xf2\x23\xcd\x27\x71\x8e\x61\xe7\xa5\x38\xcd\x27\xe7\x53\x92\xc7\xcc\xec\xa7\x29\x2e\xe6\x69\x2e\xc7\x85\xe3\x2c\x69\x3a\x50\x1b\x56\x5f\x8f\xbd\xbd\x34\x89\xad\x59\x6d\xed\xf2\x48\xd6\x52\x78\xea\x1b\xaa\x7a\x49\x7d\x3f\xe7\xca\xd9\x83\xc3\xdd\x0b\x07\xb1\x31\x46\xac\x6b\x93\xa1\x9a\x19\xc2\x5e\x8f\x46\x6a\xaf\x2e\x1d\xe7\xb7\xfa\x00\x90\x52\x86\xda\xff\x23\xa3\xb7\xae\x6f\xd8\xd9\x2e\x0b\x33\x14\xa7\xbb\x69\x88\xe2\x94\x54\x6e\x17\x9e\x2c\xf3\x12\x5c\x44\x3e\xe0\x42\x09\x9a\xb8\x88\x48\x3e\x91\x8c\x02\xce\xeb\xa3\xa4\xc7\xe8\x2d\x27\x24\x88\x1b\xfb\xf7\xfb\xdc\xea\xde\xc9\xa4\xfb\x13\xbd\x9e\x1e\x92\x1b\x92\x41\xa5\x85\xa4\x80\xf2\xb4\x89\x7c\x28\xa8\x02\x58\xdf\xba\x2f\xd2\x4c\x35\x21\x47\xfd\x8a\x13\xf2\x73\xca\x41\x3d\x0e\x5f\xe5\xb8\xe6\x86\xaf\x57\x73\x2f\x4a\x0b\x7b\xfb\xa2\x66\x8f\x64\xa9\x07\xfd\xaf\xb5\x94\x15\x2d\xe6\x37\x29\x2f\x86\x6c\x84\x46\xb6\x4b\xa5\x9e\x06\x85\x9a\x06\xdd\x41\xac\x56\x6d\xbd\x4a\xc7\x41\x7c\xf6\x0c\x2b\x45\xca\xb3\xe7\x38\xf3\x40\x41\x27\xba\xfd\x58\xad\x70\xf1\xe0\xa0\x8d\x1b\x8d\xe0\x49\xb2\xa8\xce\xa5\xb1\xc1\xdd\x0d\xab\x42\x64\xb2\x3b\x0b\xcd\x69\x3e\xb1\x6a\x74\xc9\x3a\x59\x05\x74\x89\xe2\x3a\xba\x63\x1f\x5d\x73\x72\x36\x86\x70\xe1\x0f\x21\x1c\xc1\x7f\x15\x5d\x72\x93\x66\x8b\x54\x90\x2e\xf9\x7d\xce\x49\x51\x40\x30\xee\xbc\xab\x87\xa3\x1b\x6c\x17\xa8\xac\xc2\x6d\x3f\x91\x73\x04\xe7\xc3\x14\x5f\x95\xef\x20\x42\xf0\xf3\x01\x36\xa1\x13\x31\x78\x87\x40\xa2\x63\xeb\x36\xd5\x55\x11\xbb\xea\x5b\x5e\x8e\x50\x2d\xb1\xb3\xec\xe1\x77\xd8\x1e\x26\x08\xf3\x12\x61\xdd\x44\x1f\x83\x42\xda\x34\x63\x84\x72\x39\x77\x1a\xcc\xfd\x56\xfd\xf4\xb1\xb1\x51\x81\x9d\x4a\x08\x96\x62\xc9\xcb\xe4\xf9\x57\xee\x88\x1c\x98\x23\x71\x2b\xdc\x12\x7a\x3c\xef\xef\xbd\xac\xef\x5b\xf2\x98\xd3\xe3\xcc\x47\x8a\x04\x26\xda\xee\xd6\xa0\x0c\x73\xcc\x91\x6a\x9d\xaa\x43\x91\xd6\x0e\xc5\x56\x99\xc0\x31\x44\x53\x73\x6b\x6f\xae\xc0\x44\x37\x23\x69\x21\xba\x2c\x27\x5d\x63\x27\xdf\x90\x0f\x3a\x2a\xba\x63\x14\x45\xd9\xc8\xde\x44\xf9\xcc\x2d\x6f\x70\xfb\xf9\x4a\x3e\x3a\xdd\xf8\xf2\xa6\xa5\x2a\x14\xfe\x4e\xe9\x91\xed\x08\x83\xce\xf2\x7b\x5c\x84\x1c\xb5\x5f\xe9\x84\x3e\x66\xa9\xc1\x2c\xab\x83\xdf\x1a\x94\x98\xbb\x15\x54\xea\x23\x98\x48\xaa\x7b\xaa\x97\x71\x9a\x65\x2b\x34\x2f\x55\x87\x75\x2b\xaa\x2d\x76\x17\x52\xb6\xf7\xcf\x2d\x7d\x2c\x99\x23\x42\x9d\x4e\x0b\x7b\x3a\x91\xe4\xa5\x5b\xb7\xa4\x4e\x4b\x49\x06\x79\x66\x2d\xab\xe3\x04\x61\xb3\xf5\x4c\x7e\xe6\x2d\x16\x08\x34\x6a\x46\xed\x75\xa8\xd6\xba\x40\x98\x7b\xe5\x9f\xaf\x2d\x5f\xd9\xcb\xeb\x55\xbf\xda\xa8\x6a\x6d\xb7\xc6\x76\xab\x16\x76\xab\xee\x97\x55\xc0\x5f\x7f\x2e\xc0\x83\x1a\xe0\x6f\x3e\x17\xe0\x67\x35\xc0\xdf\x7e\x2e\xc0\xcf\x6b\x80\xbf\xfb\x5c\x80\xbf\xaa\x01\xfe\xfe\x73\x01\xfe\xba\x0a\xf8\xd9\xf7\x90\x36\xdd\x70\xf1\xc8\xbe\xff\xb6\xba\x8b\xfb\x37\x19\x6a\x3d\x0b\x75\x08\x7d\x83\x46\x0e\xd8\x77\x1b\x56\xfa\x7a\xdd\xf5\xe3\xb7\x12\x22\xf0\xd5\xa7\xc9\x32\xc8\xd9\x8e\x62\xc9\x83\x78\xab\x5f\x76\xb4\xa5\x1d\x58\xf6\x76\x7f\x83\xef\x62\x47\xab\x2a\x55\x09\x2b\x1a\xbc\xf1\xef\xdc\x7a\xbd\xad\x2d\x32\xf4\xa0\x79\x77\x20\xc7\xae\xe0\x16\xb9\xbf\x57\xe5\x1c\x54\xaf\xe4\x81\x3b\x55\xde\x84\x02\x21\x7a\x15\xd6\x43\x2b\xdb\x68\xa0\x5c\x9d\x74\x07\xb0\xed\x82\x57\xa5\xde\x3c\x95\x3a\x49\x6e\x39\xbb\xea\x56\x23\x3e\x0a\x49\xa4\x6f\x35\x70\x83\x39\xb4\x97\x19\x52\x16\xb3\x98\x1c\x3a\xb9\x47\x61\x93\xb7\x60\x93\x3b\x6c\x98\xc4\x26\x47\xaa\x1a\x93\x4c\x83\xc4\xa8\x4b\xaf\xc2\xe0\xd8\x98\x10\x24\x39\x60\x85\x8e\xc0\xdc\x3e\xf7\x8a\x38\x6e\xcf\x2b\xe6\x44\x2f\x57\xd0\xf5\x50\x17\x3a\x03\x8e\x53\x39\x95\xca\x02\xea\xcc\xdb\xb2\xdf\x81\x59\x31\x39\xd9\x08\x17\xc7\xe4\x86\x70\x14\xe6\x38\x58\x38\x7e\x36\xd5\xb2\x1e\xcd\x27\x10\xd1\x0d\x02\x98\x85\xf6\xdc\xd4\x62\x8f\xfa\x55\xd9\x71\xd5\x17\xc5\x01\xcb\xbd\x57\xfd\x26\x90\x45\xd4\xbb\x3e\x78\xfb\x88\x61\xd5\x0c\xcc\x5b\x65\x2d\xd2\x42\x44\x61\x89\xb8\xd9\x98\x3a\x18\x7a\x2d\x78\x40\xd4\xbd\xc6\xaa\x71\x10\x76\x1c\x5c\x4b\x58\xac\x69\xad\x75\xa0\x84\x19\xa8\x6a\x53\x76\xa0\xc4\xda\x81\x12\x6d\x03\x25\x2b\x04\xa8\xf4\xcd\x61\x7f\xd3\x9a\x8e\xff\xd4\x34\x1d\x92\x1d\xd1\xea\x24\x82\xf5\xd5\x81\x94\x07\xab\x4c\x8b\x15\xcc\xe4\x2e\x13\xd0\xab\xc0\x45\x55\x82\x51\x23\xf7\xf7\x03\x48\x3c\x68\xfd\x99\x6b\x2c\xf0\xd9\x2f\xc7\xe7\x7b\xff\xea\xee\x9f\x9e\x9e\x9c\xc6\xdd\xff\x8f\x5e\x79\xac\x55\xb7\xa0\xf9\x75\xe6\xb1\x55\x96\x13\x3d\xd1\xf7\x9d\x72\x87\x0c\xb5\x86\x60\x60\x35\x04\xde\xb6\x46\x86\xfd\x91\x62\x6f\x06\xb0\x1d\xea\x5b\x54\x59\xef\x4e\x25\x5e\x0f\x03\xcd\x46\xc3\x05\xaf\xbe\x5b\x55\x97\x07\xd3\xb4\x08\x03\xd8\x1f\xd0\xae\x2d\xad\x7e\xa3\xf8\x14\x98\x05\xdd\xf1\x45\x9e\x91\xa2\xf8\xa3\x9d\x57\x50\xfe\x34\x02\x3c\xd4\xc1\x0a\x35\x5a\xa8\xe5\x13\xe0\x96\x42\xb6\x35\xa2\xc3\x51\x7d\x52\xf7\x25\x8c\x4f\xee\xfc\xb3\xb5\x9d\x57\x56\x28\xc5\x5c\x0b\x68\x4d\x5a\x5c\x84\x79\xad\x7b\x78\x50\x9d\x0e\x79\x8d\x5a\xf9\x9a\xe9\x90\x11\xd1\x98\x0b\x46\xbe\x48\x09\x7c\xf7\x3a\x6a\x9c\x6b\x03\xdc\xc7\x7d\xff\xb6\xa7\x62\xb4\xb0\xf0\x6e\xcb\x86\x14\x5f\x34\xc6\x03\xe7\xd0\x29\x8d\x02\x49\xc7\xfe\x80\x68\x03\x01\x1d\x7e\xdf\xe4\xa2\x09\x05\x64\xdb\xf9\x48\xee\xc0\x7f\x73\xd8\x1f\x0d\xfb\xa3\x5d\x8f\x80\x7c\x38\x90\xaf\xd0\x28\x1e\x2a\x05\x37\x1a\xa1\xba\x80\x08\x44\x46\xb8\x31\x0e\xa2\x2c\xc1\x1a\xc1\xa6\x5a\x90\x70\xbf\x55\x76\x56\x55\x8b\x04\x2b\xc4\x58\x63\xa1\x81\xb3\xc0\x38\x38\xdf\x3f\xd5\x85\xbe\x7d\x26\x5f\x80\xf7\x5e\xcd\x60\x41\x15\x82\x32\x5f\x43\x99\xd3\xfd\xbd\x7f\xd4\x0b\xa9\x8a\xb8\x65\xa8\x9f\x79\xa6\x2b\x0f\x98\x46\x68\xc8\xd0\xd4\x73\x4f\x58\x7a\x8c\x39\x85\x3f\x93\xac\x69\x45\x7d\x46\x29\x3b\x0b\x3b\x9e\x34\xdf\xd1\x16\xf8\x7f\x74\x99\x39\x48\x8f\x59\x6c\x2e\xb8\xd3\x10\xdc\xba\x38\x66\xc9\x70\x84\xd3\xa4\xff\x22\x75\xf1\xe4\x52\x13\x64\xa5\x48\xf2\x61\xaa\x82\xab\x5c\x2f\xe8\x44\x1e\x57\x45\xaf\x17\xf8\xae\x83\xf0\xae\x69\x8b\xbb\x1a\xdb\x09\x23\x45\x37\x67\xa2\x2b\xd2\x8f\x52\x68\xfc\xf5\xc3\x93\x65\x3e\xec\x8f\xca\x5f\x3f\x74\x19\x58\x8d\x7c\x40\x1d\x56\x9f\x9e\x74\x98\x7a\x2a\xdb\xc6\xe7\xb6\x2d\xc2\x4e\xe6\xaf\xec\x64\x66\x65\xe9\x6f\x17\x60\xcc\xd8\x47\xf8\xae\x31\x97\x94\xe1\x0f\xf0\xde\x6e\x31\xee\xc8\xad\x6d\x47\x5f\x48\xed\xdc\xa4\xbc\x7e\x54\x68\x33\x06\xe5\x30\x87\x97\xae\x55\xb9\xec\xa9\x5d\xf6\x0c\xdf\x84\x39\x5e\xb1\x1d\xa3\x51\x69\x4d\xf8\x5a\xf6\x6a\x83\x8b\x53\x95\x60\x2f\x7e\xe0\xd2\x33\x79\x70\x26\xab\x92\x36\x5a\x13\x3f\x95\x42\x3c\x5c\x51\x08\xdc\x80\x2e\xc7\xf9\xb8\x92\x74\x54\xf6\x86\x41\x30\x51\x4f\x22\x92\x54\x6f\x5c\x7d\x56\x2e\x11\xdb\x3c\xf7\x52\xac\x4d\x9b\x9c\x96\xc1\xdc\x73\x71\x20\x32\x5f\xdb\x31\x1d\xe7\xa1\xd7\x03\x9d\x7f\x5b\x37\x4d\x26\x39\xd5\x47\x2a\x2b\x9a\x4b\x66\xb6\x95\x24\xbf\x99\x5e\xb1\xd2\x6a\x71\x8a\x51\x22\xbc\xeb\xd0\xbc\x79\x1d\x9a\xb6\xf4\xa4\x50\xda\x07\xde\xd2\x13\x42\xa0\x2b\x6d\x1c\x57\x09\xde\x5d\xef\x21\xd2\xc4\x2b\x13\xaa\x07\x8a\x99\xf8\x4b\xba\x6c\xc2\xcb\xb2\xe2\xdc\xf4\x1f\xcd\xda\xbd\x5f\x7d\x89\xa5\xa2\x68\xd0\xb1\x80\x90\xc1\x6b\xae\xb3\x2a\x17\x58\x78\xe5\x0d\x97\x31\x1d\x94\xb5\x8f\x68\x21\x77\x15\xeb\xa2\x33\x53\xbf\x13\xe2\xdf\x7e\x19\xd7\x5c\xcf\x61\xdf\xc0\xc5\x69\xe2\xee\x66\xe9\x66\x77\xb3\x54\xdd\xcd\x36\x92\xf6\x40\x7a\x69\x1f\x0b\x64\x1b\x57\xb9\x50\xbc\xfb\x35\x36\x92\xdc\xb3\xfa\x54\x96\x8a\x84\xaf\xfe\x1f\x26\xa1\xd6\x8e\x82\xb2\x75\x68\xd5\xad\x35\xed\x2a\xb3\x8b\xf3\x37\xf9\xf5\x39\x10\xc5\xae\xef\x34\xe1\x24\x64\xc3\xc1\xa8\x69\x27\x35\xd5\x51\xa3\x40\x69\xb7\x91\xa5\x54\x6a\x59\x9d\x0e\x4f\x52\x9c\x27\x6c\xf8\x6c\x84\x69\xc2\x86\xcf\x47\xa5\x91\x37\xb7\x28\xa9\xe0\xa4\x0f\x0d\xcf\x72\xcb\x33\xf8\x2f\x5c\x39\x9e\x14\x38\x07\xb7\x76\x4c\xe1\x4f\xa9\xaf\x11\xfc\x6b\x53\xbc\xf0\x66\xce\xc3\xf7\x03\x30\x73\xc4\x8a\x99\x93\xe9\x88\x07\x9a\xf4\xcd\x79\xa4\x08\xbf\xf0\xee\xa2\xb3\xdd\xea\x84\xca\x46\x5e\xa9\xdf\x3c\xf1\xf6\xa7\x8a\xa3\xac\x36\x9a\x24\xd8\xda\x51\x92\xdb\x6e\x66\xd0\x53\xb7\xbd\x3f\xab\xdb\x5e\xfc\xef\x64\x18\xc0\xcc\x0c\x70\x40\x27\x01\x0e\xc0\x3c\x39\xc0\x81\x24\x41\x80\x03\x10\xf4\x70\x50\x88\xbb\x4c\xfe\x9d\x72\x72\x15\x8c\xf0\x3f\x93\x61\x30\xa1\x37\xf2\xc3\x3c\xcd\x03\x1c\xcc\x03\x1c\xa4\x81\x97\x6f\xfb\x89\x67\x00\xd8\x38\x0e\x76\x49\xfc\xcf\x21\xf1\xb4\x2e\x3f\x3e\x50\xfa\xdf\xb2\xf4\xcf\x4a\x4f\x86\x49\xf2\x52\xf2\x49\xcf\x30\x19\x0e\x24\xc3\xa8\xde\x0f\x9e\xc3\x79\x26\x0f\xcd\xaf\xdd\xcb\x67\xf6\xe5\x57\xf6\xe5\x57\x26\x19\xa0\x67\xf1\x37\x4a\x08\x66\xda\xc0\xcf\x9b\xb3\xd6\x9f\xeb\x51\x4a\x66\xb6\xcb\x56\x29\x99\xed\x9d\xa5\x52\x33\x33\x5f\xcd\xfc\xa9\x0e\x14\x5f\x7f\xab\x8d\xfd\x07\x68\xb4\x5a\x1b\xad\x09\x52\x55\x11\xe3\xbc\x7a\xaa\x7e\x3d\xc0\x3f\xca\x3d\x45\x9d\x5c\x5b\x49\xbe\x9b\xc7\xca\x46\xdd\x00\x78\xb6\x1e\xc0\xa0\xff\xdd\x43\x10\x06\x5f\xaf\x84\xe0\x0b\x0c\xaa\x6b\xcf\x14\xb4\xad\x41\x1d\xdc\xc8\x61\xf4\xec\x13\xe0\xf5\x57\xc3\x1b\x7c\xf3\x08\x78\xcf\x37\xc0\xef\xf9\x27\xc0\x5b\x87\x5f\xbf\x55\x05\x2b\xa9\xff\xd5\x77\xf8\x49\x08\x29\xd5\x4c\xd9\xc1\x4a\x75\xed\xf7\x5a\xdc\xd0\x55\x1c\xfc\xef\x6a\xe8\xc2\xe2\x58\x15\x00\x58\xec\x56\x27\xba\xcf\x8e\xc1\x0c\x17\x9a\x7d\xe1\x2b\x0d\xac\xf4\xf9\x49\xf5\x82\x34\x9c\x8b\xe1\xe0\x52\xe7\x71\xa5\xa3\x2c\x90\x96\xa8\x0d\xc2\x84\x6c\x30\x06\x5d\x69\xcb\x0d\xab\x41\x81\x41\x80\x85\xba\x59\x97\xe3\xa3\xc1\x58\x1e\xa0\x50\x57\x25\xe1\x0d\x2c\x1a\xb1\x1e\x4c\x67\x69\x5b\xe3\xcd\x40\x0f\x80\x87\x32\x36\x7d\x80\x9d\x75\x54\xf4\x01\x03\x3b\xdb\x62\x24\xba\xd5\xf7\x57\xfc\xf7\x8d\x9b\x54\x6f\xd2\x6c\xac\x01\xc9\xeb\xb2\x4d\x4d\xef\xa1\x2e\xee\xbf\xc2\x45\xe8\xdd\xdb\x81\x19\x0b\xb9\x49\xb3\x33\x70\x21\x2a\x10\x66\x92\xb9\xaf\x39\x48\x79\xb8\xae\xbc\x5c\xb9\x56\x91\xca\x6c\xc1\xf6\xbb\x0b\x55\xac\x62\x38\xe3\x96\xe1\x37\xb5\x6d\xbf\xbe\x71\x7d\x83\xd3\x50\xd4\xb1\xe5\xfe\x62\x5a\xb9\xee\x6a\xe6\xd7\xd8\x98\x59\x93\x8a\x99\xb5\x21\x53\xdf\xbf\x33\x55\xd7\x25\xce\x55\x48\x4c\x32\x7a\x69\x9c\x84\x82\x71\xba\x10\x94\x2d\x8a\x1d\x15\x07\x29\x28\x5b\x88\xf6\xac\x15\xad\xf6\x95\xfa\xd5\x00\x0b\x65\x63\xf0\x08\x24\x04\x5f\x14\x02\x62\xd3\x34\x90\xd0\x28\x7c\xa3\xcf\xe4\xaa\xe9\x3d\x26\xda\xf9\xe8\x97\x64\x67\xa0\x25\x88\x7f\x54\x7d\xee\x95\x55\x9f\x0a\x68\xe6\xa2\xc4\x68\x69\x04\x42\x97\xe8\xd0\x91\x9e\x0f\x5a\xa2\x12\x32\x1b\x23\xa5\x89\x62\xde\x9c\x7d\x76\xbb\x71\xbf\xb3\xab\xb4\x16\xbd\x13\x6b\xbe\x66\xdf\x74\xdc\x63\xf2\x0b\x28\xd0\x1c\x5a\xc6\xcf\x94\x96\xc0\x2b\xfc\x3d\xe4\x98\xd6\xb2\x9b\x42\xec\xd4\x33\xa0\x5e\x81\x42\x6b\x50\xec\xc5\xc2\x99\x24\x0c\xb3\xd2\xa6\x8e\x77\x1c\xd0\x7f\xfb\x3e\x29\xb0\xa2\xfd\xa8\x62\xff\x08\x85\x47\x20\x0c\xd1\x2b\xf1\x52\x11\xa5\x00\xc6\x14\x9e\xe4\x56\xb3\x7f\x93\x66\xb1\x88\xf4\x93\xef\x60\xf3\x77\x43\x6f\x17\xe0\xf6\x67\x4c\x93\x9f\x24\xcf\x83\x74\x0e\x5a\xe2\xa7\x92\x7c\x1b\x52\x9d\x3a\x12\x28\x3b\x64\x23\xac\xc4\x22\xe4\x45\x77\xd2\x3c\xa6\x2c\x36\xa3\x22\xe4\x96\x3b\x9e\x92\x74\x8e\x05\x84\xa9\xf5\x90\xf8\x57\x25\xbe\x4c\xcd\x6e\x63\xd7\x27\xb7\xbe\x6b\x57\x8e\x88\x95\x45\x5d\xc6\xa4\x4a\x9c\xdc\x27\x8e\xc0\x15\x0f\xc6\xc8\xfd\x28\x91\x16\xc2\xfe\xa7\x3d\x16\x71\x45\x16\x56\x32\x19\xd9\xf5\x93\xcc\x11\x14\x0f\x47\xa5\x8a\xb5\x5e\x89\xc1\xa8\xaa\x6a\x06\x5f\xfd\x18\x92\x91\x32\x80\x36\xd9\xd3\xbc\xb3\x4d\x47\x79\xab\xd9\x7b\x89\x5e\x8f\x74\x69\xde\x15\xe5\x2d\x15\x9e\xa3\xb3\xae\x94\xd7\x2a\x91\xdb\xee\xff\x84\xf9\xae\xb9\xb0\xa1\xd7\x39\x0a\x97\x25\xce\xf1\x72\x48\x46\xb1\x28\x51\x6c\x1e\x24\xc6\xdd\x69\x5a\xec\xe5\x77\x5e\xfc\x54\xdd\xa8\xc3\x58\x09\x06\x84\x24\x1a\x74\x35\x59\x8f\x20\x2b\x8d\xe9\x09\xf1\x62\x26\x57\xa4\xd8\xa1\x75\xa5\xe9\xbf\x48\x5d\x82\xe3\x54\x65\x8b\x18\xa6\xa3\x51\xf2\xaf\x90\x0d\xd3\x91\x5b\x48\xa6\x63\xde\x9c\xe1\x36\x7a\xa5\x94\xf7\x8c\x55\x8e\xa7\x07\xe7\xdb\x01\xee\x5e\x2e\x44\x57\x4c\x09\x27\xdd\x5b\xf9\x5f\xce\xba\x57\x9c\x90\xee\x4d\xca\xa9\xdc\x36\x0a\x20\xed\x94\x74\x4d\x14\x1b\xad\x25\x6f\xb5\x1f\x6a\x28\x13\x9f\x2c\x79\x89\xbb\xd7\x10\x97\xb9\xe6\xc4\x4f\x50\xf9\x41\xc5\x26\x84\x10\x49\x7a\x6a\xe7\xc4\x06\x0c\xd0\x94\x36\x19\x9b\xbb\x79\xc3\x89\xff\x41\xf0\x8e\x16\x1a\xae\x19\xc5\xe7\x89\x53\xd8\xf6\x7a\x64\xf8\x6c\xe4\x4c\xf4\x21\xbb\x70\x4b\x10\x71\xa2\x8c\xa1\x9e\x97\x72\xc5\x59\x1b\x27\x29\x4c\x8d\x94\x15\x9a\x6d\x8c\x92\x4a\x7a\x04\x0d\x39\x79\x26\x5b\x02\x18\xcf\xca\x7a\xa0\x1d\x82\xeb\x91\x73\x2a\x41\x5a\x19\x69\xd3\x7f\x80\x47\x5d\x9b\x02\x44\x40\x7e\x2b\x50\x81\x28\xaf\x3b\xa7\x04\x51\x75\x54\x6c\x5d\x55\xcc\xfb\xa8\xeb\x69\x5f\xd9\x54\xc4\x04\xab\x57\xb0\x1c\x74\x84\x6c\xe7\x76\xa3\x8b\x03\x17\x29\xa1\x9a\x50\x98\x3a\xb7\x93\xa8\x87\xfe\x96\x10\xa9\x81\xc8\xca\x44\x0c\xf3\x11\x4e\x21\xd1\xe7\x0e\xed\x10\x75\x0e\x40\x46\xdd\xd2\x8f\xf9\x46\x6a\xa9\x93\xdb\x2c\xc4\x88\xb6\xf8\x52\xb7\xd9\xdc\xdf\xbf\x0b\xe2\x4c\x61\xdb\x82\x8d\xdb\xf5\x68\xf5\x07\xb9\x89\x0a\xa0\xef\xae\x31\x9b\xc7\x04\xb3\xf9\x20\x16\x98\xcd\x9f\xc5\x1c\xb3\xf9\xf3\x38\x2f\x3d\xeb\xf7\x87\x6a\x78\x65\xc5\xea\xb2\x65\xdc\xf2\x49\x85\x13\xa2\x55\x13\x3e\x2b\xf6\x57\x59\x28\x39\xad\xef\xef\xab\xfc\x84\x7e\x57\x71\x22\xd3\xef\x6a\x6e\x40\xfa\x2d\xc8\xcf\xa6\x56\x8b\x88\xa2\x3f\x35\x58\x6f\xf9\x1e\xe2\x20\xd0\xc4\xde\xd8\xdb\x6b\xf3\x16\xd4\x3d\x39\x5f\x83\x04\xb6\x4a\x3f\x7b\xb2\xbc\x7e\xe3\x9b\x70\x55\x5f\xd5\xac\x7b\x7c\x44\x3c\xc3\x80\x75\xb8\xa8\xab\x22\x0d\x55\xbb\xc0\xea\x5f\x2d\xae\xa0\x06\x45\xcf\x7f\xd5\xbe\xb2\x9e\xaa\x2b\xfb\x51\x37\xee\x31\x05\x8d\x73\xa8\x8f\xbe\xb6\x46\xb0\x66\x22\x5b\x2d\xb8\xab\xb5\x60\x6b\x35\xee\x9f\xf6\x8d\x4d\x6a\x37\xd8\x26\xa8\x43\x13\x5d\xa3\xac\xab\xda\xcc\xcc\xa4\x6e\x4a\xaa\x6f\x66\x5e\x52\x7f\xae\x6a\xa6\x20\x5b\xb3\x35\xa9\xa8\x7b\x12\x15\xae\x22\x6e\xab\xed\x49\xf3\x3e\x3a\x27\x60\x7b\xf2\x83\xd0\x86\x31\x07\x9b\x16\xd8\xcb\x94\x75\x8b\xe1\x3b\x0c\x07\xa5\xd3\x1e\x3c\x97\xc7\x92\x5f\x43\xed\x62\x04\x95\x9a\xc5\x72\xdb\x5c\xad\xe6\xd7\x78\xd0\x7f\xf6\x95\x49\x7a\x50\x8f\x87\xe7\x8e\x68\x12\xcd\xd2\x2c\x63\xe3\xd0\xa4\x71\xe2\x2d\xf9\x8b\xf9\x90\x8e\x3a\x2d\x19\x69\x99\xf6\x8d\x79\x97\xa5\x63\x32\x65\xd9\x84\xf0\x90\xa1\xd8\xe4\xec\x6d\x94\x53\xec\xb0\x2c\xa2\xef\x27\x99\xbd\x43\x23\x91\x14\x70\x8b\xe9\x91\xc2\x26\x87\xa8\xa0\xe0\xfc\x53\x21\xaf\xce\x27\x60\x19\x04\x9f\x34\x3a\x55\xd1\x52\xfd\x8c\xbd\x4f\x26\xf0\x23\x2f\x63\x5e\x2a\x0a\x56\xa9\xd0\x48\x2c\x43\xbd\xc4\x32\xf9\xcb\x67\xbb\xf9\xce\xb3\xb8\x2f\x19\xe3\x67\x2f\xd8\x0f\x39\x70\xc4\x74\xc8\x76\x9e\xf9\x29\x66\x18\xdc\x04\x41\x9e\x21\x5a\x1c\xa5\xe3\x29\xcd\xc9\xc9\x1c\x49\xb9\x51\xeb\xc3\x29\xa4\x9a\x0f\x95\x6a\xc1\x44\x74\xe5\x69\x6e\xf2\xe8\xd7\xba\x55\x1d\x51\x0e\x23\x0a\xd7\x5f\xca\x08\xb6\xf8\xa3\xf0\xfa\x70\xeb\x04\xb1\x6d\x6d\xa5\xdc\x31\xb3\xbd\x5e\x63\x20\xe5\xbb\xcc\xec\x2a\xda\xaa\x4d\x87\x9e\x55\x09\x71\xd5\x36\xa1\xcf\xdc\xb0\xd2\xac\x64\xfe\xb7\x73\x2c\x22\x10\x25\x11\xde\x19\xd4\xd3\xdd\xb7\x1d\x64\xe2\xfe\xbe\x65\xe2\xd9\x24\xd0\x2a\x32\xf5\x25\x63\x19\x49\x5b\xbe\x6f\xa9\x1d\x60\x10\xf7\x5b\x2f\xe9\x5c\x2e\x69\x85\x54\x28\xfc\x0b\x02\xfb\xb5\xef\x22\x0a\x80\x71\x94\x72\x39\xa9\x04\x69\x75\xce\x24\xa9\x32\x21\xd3\xbd\x54\xae\x11\x95\xa0\x1f\xae\xa8\xff\xba\x5e\x43\x89\xdd\xb1\xed\x26\xbc\x75\x01\x7d\x2a\xe6\xf9\x40\xe0\x03\xf3\x0d\xd5\x40\xb9\xc0\x3e\x31\xfc\xae\x86\x8a\x55\xef\x74\x27\xe0\x59\xc5\x85\x6d\x36\xf0\x13\xac\x21\x14\x5a\x5a\xe9\x56\x74\x33\xca\xf1\x41\xbb\x94\xe8\xa0\xa0\x9c\xa4\xe3\x29\x04\xb4\x09\xf5\x77\xb8\x6a\xb7\xaf\x83\x8d\x1d\x00\x41\x6c\xa9\xcc\xb1\x5a\x26\x04\x6f\x6f\x36\x73\xd1\xb0\x89\x7a\x83\xac\xce\x50\xcb\x42\xd6\xa7\x28\x2a\x2b\xb1\x1a\x1a\x3b\xbf\x8e\x59\x41\x6e\xbb\x0c\xca\xba\x78\x0d\x2d\x45\xd9\x3c\x44\x9a\x03\xf4\x1b\xf2\x85\xfd\x85\x09\xac\x65\xad\x79\xb4\xea\xad\x6f\x55\x6f\xa7\x65\xc7\xe5\xf0\x53\xc1\x60\x5e\x70\x27\x9e\x43\xb6\xab\xa6\x09\x82\xe7\x42\xa7\x21\x9a\x1a\xbe\x35\x8d\xc5\x63\xec\xf1\xf7\x4b\xeb\x8b\x13\x13\xe7\x97\x73\x7f\xbf\x35\xc0\x9e\x4e\x2c\x9e\x80\xea\x41\xc9\x0c\xb1\xd6\x54\x68\x11\x02\xdb\x00\x5c\xc4\xaa\x00\xb1\x24\xaf\x2d\xa7\xd5\x14\x36\x7d\x85\xcb\x04\x4b\x2a\x12\xb2\x14\x90\x89\x8b\x8e\xa0\x75\x19\xbb\x56\xcf\x51\x13\x53\xa6\x1e\x63\xac\x8d\x0c\x42\x81\x89\x2f\x7c\xa9\x8b\xe1\x6a\xa0\x60\x7d\x40\xb4\x45\xf8\xa2\x57\x21\x83\x01\x72\xa9\xff\xb3\xa4\xff\x22\x73\x27\x65\xb6\x9d\x3c\x43\x7c\x98\x8d\x86\xfd\x51\x12\xfc\x57\xb0\xad\x9f\xb5\xb7\xa0\x56\x12\xa7\xce\x58\x67\xa1\x46\xab\xa1\xb9\x2e\xd6\x05\x1b\x76\xfa\x63\xab\x3f\x57\xe2\xb1\xc9\x3a\x1c\xe7\x10\xe3\x07\x2f\x4a\x73\xa8\xfe\xe6\x85\x1b\xb3\x54\xad\xb4\xc8\x4d\x8b\x79\x5d\x5d\xcd\x54\x5b\xa9\x69\xab\x80\xc0\x37\x9e\xee\x2d\xce\xca\x24\x97\xd4\xc9\xcc\xa0\xdc\xdf\x43\x64\x79\x13\xff\xd3\x6c\x9f\x0d\xd5\x38\x5f\xd9\x56\x53\x2f\x6e\x49\x92\x97\xc8\xa3\xa7\x72\x23\x29\xfa\x55\x4d\xb4\x76\x31\xf9\x5a\x7f\x1b\x39\xb5\xd8\xb8\x4c\xb2\x0e\x8f\x5c\x38\xd2\x5e\x6f\xe1\x85\xa0\x5a\x79\xd1\xd6\x82\x19\x90\xd8\x45\x7e\xea\xf7\x11\x92\xa2\xaa\x17\xba\xd4\x87\xfd\xf5\xf7\xf0\xb9\x1a\xab\xd4\x2f\xf0\xdd\xf7\xb8\x7f\x5f\x28\xeb\x2d\x67\x3c\xa6\x3a\xe0\x6a\xd6\x51\x1e\x54\x90\x50\x1d\xf8\xbe\x6f\xaa\x01\xa1\x26\xc9\x70\xd4\x71\x65\xbe\x7f\x66\x81\x4e\xb4\x2c\xac\x88\x13\xf7\x31\x2d\x80\x49\x87\x5b\x44\xbb\xd5\x4c\x93\xfe\x8b\xa9\x73\x5d\x9d\x1a\x76\xf0\x2a\x19\x0f\xa7\x23\x73\x24\x5e\x45\xe3\x69\xca\xf7\x44\xd8\x47\xfa\x5c\xec\x29\x27\xc9\xb9\x16\xf6\x5f\x84\xf3\x24\xe8\xc1\x80\x4b\xa6\xe1\x6a\x97\xc6\x05\x98\xfa\x5c\xe9\x60\x52\x03\x84\xd0\x6e\xb8\x30\x51\x2a\xe6\x4d\x04\xa7\xdb\x03\x87\xa2\xa4\x7f\xec\x8a\xeb\x78\xf6\x0f\xd5\xf0\x3d\x20\xff\x2b\x88\xe5\x76\x9b\x22\xf5\xee\x26\xe5\xc3\x19\xbe\x19\x25\x29\xfe\xff\xa9\x7b\xf7\xaf\x36\x72\xa4\x01\xf4\x77\xff\x15\xe0\x33\x9f\x4f\x6b\x11\x1e\x3b\xc9\x64\x32\x26\x0a\x4b\x08\xc9\x30\x4b\x48\x06\xc8\xcc\xce\x7a\x7d\xd9\xc6\x16\xd0\x13\xbb\xdb\xab\x96\x21\x8c\xe9\xff\xfd\x1e\x95\x5e\x25\x75\xdb\x90\xd9\xfd\xbe\x73\xef\x39\xbb\x19\xdc\x7a\x95\xa4\x52\xa9\xaa\x54\x8f\x2b\x76\x49\xef\xd8\xcc\x65\x9a\xb8\x22\x3b\x90\x33\xeb\xae\xd3\x49\x16\x31\x85\xbd\x19\xde\x8d\x1e\x18\xb9\x5f\x11\x52\x55\xbe\xe5\xd3\xef\xa9\x5d\xcf\xad\x3e\xc5\xda\xc4\x92\x78\x5d\x4d\x7f\xd0\x43\xb1\xb3\xce\xd9\xc4\xc7\xce\x3a\x7f\xc5\x7a\x3b\xe7\x26\x76\x96\x1d\xf2\xd6\x0d\x78\x50\xb1\xc9\xf0\x7c\xd4\x3a\xd8\x45\xd0\x3a\x11\x8c\xde\x12\x32\x58\xe0\x58\x69\xb7\xde\x86\x0d\x35\x08\x84\x6a\x9a\x3f\x80\xbf\xfd\xde\x53\x87\x58\x18\x3f\xa9\x8d\x92\xb6\xfa\x6c\x3c\x8f\xda\xf4\xa2\xf3\xab\x48\x99\x8f\x86\xc8\x57\x78\xb4\x3d\x44\x4b\xa6\x96\x94\x8c\xfd\xbb\x9d\x8b\x6d\xf5\xe7\xde\xba\x5c\x3c\xac\x7a\x20\x2c\x75\xa2\x9f\xd2\x32\xf1\xd7\x9e\xf9\xd8\x6f\x78\x23\x34\x01\x9d\x1f\x09\x7d\xa3\xfd\x27\x56\x0a\xcd\x56\xd1\xf8\x5a\x88\x8f\xd8\x83\xaf\x46\x6d\xa7\x8a\xda\x2f\xd8\xe6\x66\x49\xc7\x0c\xb8\x68\x11\x51\xf7\xfb\xfb\xcd\x64\xb3\xd0\xee\x8e\xc5\xb0\x67\x75\x8d\x84\x4e\x58\xd9\x05\xa5\x75\x5b\x1f\x7a\xef\x18\xfd\x68\xc2\xed\x8d\x77\xdb\x2b\x7c\x0f\x0d\xbc\x93\x9a\x13\xe2\xf7\xb6\x8b\x1b\x9e\x4c\x62\xaa\xba\xa0\x63\xea\xc3\x98\xd9\xd7\x1a\xce\xa6\xbb\xc3\xdb\x64\x5a\x8b\xc0\x58\x0b\x19\x38\x5d\xe1\xc8\xa4\x83\xfe\x37\x29\x55\xec\x4d\xe4\x0d\x9c\x7f\x78\xe1\xb0\x9b\x57\xd1\x7d\x85\xa2\x5c\x9a\x94\x52\x60\xc5\x66\x55\x19\x59\xa7\x93\x64\x3e\xfb\xc6\x46\xc1\x86\xe6\x06\xa2\x3e\x0e\x26\xdc\x27\xdc\xf6\x88\x5c\xd2\x8d\x95\x6a\x96\x10\x42\xbd\xc5\xaa\xbb\x34\x28\xbe\x23\x00\xac\x17\xe8\x47\xff\x07\x63\xe5\xfe\x83\x5b\x60\x08\xa6\xd4\xb7\x3f\x07\x27\x14\x42\xdf\xf4\x5f\xf8\x0f\xda\xfc\x59\xef\xed\x0f\x3f\xe0\xde\x1c\xcd\xa0\x98\x56\x98\xb0\x9d\xd4\xd0\x02\x42\x0b\x14\xc0\x13\xab\x9f\xff\x9e\x38\x2e\x32\x7a\x08\xb3\xaf\x3a\x17\x7c\xe5\xe3\xe2\x2c\xcd\x72\xfb\xb0\x63\x9f\x33\xdf\x2d\x52\x31\xe1\x93\x3d\x78\xd4\xb4\xef\x8c\xf6\xc1\x35\x2c\x14\x4a\x14\xa9\xbd\x83\x46\xd2\x48\x63\xbf\xd0\x30\x7e\xc5\x8d\x1a\x36\x8e\xa9\x1a\xea\xbf\x82\xb8\x92\xab\x47\x1a\xac\xe9\x0b\xc5\x0e\xf5\x19\xf4\xc0\x8a\xfe\x39\x3a\x3a\x9b\x7d\xaa\xfe\x17\xe0\xe4\x39\x0f\x83\x8d\x7e\xff\x82\xd0\x83\x44\xb0\x57\x4b\x91\xf4\xe1\x5c\x71\x30\xf3\x37\x01\x25\x9f\x3d\x25\xa3\x81\xfa\xef\xf7\x10\x1f\xb0\x47\x2d\xc1\x7c\xf1\xc4\x51\xc4\x3f\x41\x11\x5e\x7c\x57\x3f\xe8\x16\x5a\x37\xc4\x9a\xa3\x48\xf1\x19\x1c\x45\x07\x70\xa4\x20\x7d\xea\xba\xb1\x33\x79\x46\xa0\xe0\x59\xad\xe0\x3b\x5d\xf0\x5d\xad\xe0\x39\x19\x91\x0a\x2f\xde\x2d\xf7\x8f\xba\x5f\xd4\xe1\xbe\x83\x7c\xc5\xf0\x27\xf8\x8a\xf0\x64\x13\xe2\x4f\x86\x9f\xfa\x24\x78\x0b\xbb\xe0\xda\x88\x94\x54\x2e\x39\xc1\x05\x07\x5a\x70\xc0\x19\x92\xda\x22\x41\x4d\x07\x65\xd2\x72\x1a\xfc\xed\xa4\xb3\x65\xa5\xa5\x32\xec\x49\xf9\x25\x88\x20\x63\xec\x05\x73\x9d\x2b\xa2\x75\x98\xb8\x88\x8c\xe6\x0d\xfc\x80\xbb\xc8\x8c\x26\x43\x44\x4e\x5d\x7a\x8e\xaa\xa2\x32\x21\x36\x31\xbf\x7b\x19\xe6\xfa\x45\x58\x3f\xb9\xd5\x62\x68\x65\x75\x75\x2f\x0a\x77\xa1\x55\x7a\x26\xca\x75\x96\x5f\x6d\x94\x72\x82\x52\x0c\x19\x02\xf0\xa1\x46\x00\xec\xf1\x2f\x26\xdc\x9d\x70\xeb\x2a\x67\x12\xb0\xff\x2a\x32\xc9\x3f\xe4\xd3\xbb\x7d\xef\xb1\xa7\xea\x29\x60\x4d\x95\x1f\x79\x3a\x3f\x9c\xcd\xa7\xba\x20\xb6\xfa\x74\xc9\x6b\x41\x7d\xc3\x6e\xb9\x4d\x47\xbc\x2e\x3f\xc5\x07\x6e\x1e\xc4\x4e\x79\xe3\x5b\x74\x0c\xa5\x4e\x2f\xf2\x28\xf8\x60\xb2\x10\x13\xf2\xab\xe1\x5d\x9b\x6e\xe3\x94\xb7\x56\x65\xcd\x68\xc8\xef\x1b\x84\x2f\x72\xa4\xd7\xa8\xa1\x74\x3a\x4c\x17\x58\xdd\x9e\x91\xc6\xb4\x32\x41\x43\xe2\x35\x13\x89\x3a\x37\xb2\x1e\x00\x30\x10\x57\x65\x10\xbc\xd8\x08\xfc\x79\xe5\x52\x90\x9e\x35\xaf\xbe\x66\x88\x2c\xd4\x81\xa1\x49\x2b\x54\x52\x50\xc1\x9c\x56\xc2\xe6\x20\xa5\x39\x13\x3e\x71\x9d\x11\x83\x8c\xbd\x3d\xfc\x00\x0e\x42\xbf\x8c\xb1\xed\x3e\x63\x2c\xdf\x35\x11\x31\x5c\xed\x41\xbe\xd5\xaf\x5b\xbe\x2c\x6b\xf6\x1d\xd4\x0a\xbb\xa2\xc2\x26\x30\x5e\xf1\x11\xcc\x20\x88\xda\xee\x6c\x5e\xe0\x9c\xd2\x82\xa6\xb4\xa4\x53\x36\x36\x09\xd3\xf4\x1a\x10\x3a\x66\x3f\x26\x9c\x4e\x49\xeb\x6d\x32\xa6\x89\x49\x74\xa9\x0b\xa9\xb1\xb3\x8f\x27\x45\x1b\xa2\xe1\x26\x29\x53\xf4\xb6\x4f\x4b\x66\xe9\xe6\x0f\x98\x21\x78\xda\xaf\x31\xdd\xf6\xa6\x48\x09\x2d\x13\x4b\xb4\x53\x43\xbf\x35\x07\x8e\x5c\xb8\xcc\x95\x62\x38\x0f\xc3\x5f\xfc\x60\x18\x0b\xc7\xe3\x5c\x25\x45\x64\x20\x46\xb5\x71\x70\x93\x83\xd7\x5d\x72\xc5\xad\xbd\x5a\xd0\xfd\xf3\xe7\x3e\xee\x30\xd5\x16\xc7\x71\x80\xde\x36\xbe\x65\x9a\x02\xf4\x3a\x89\x7d\x1c\x9b\xd0\x8c\x63\x3b\x73\xa0\x9b\x53\xad\xa9\x5c\x15\x83\x70\x72\x7f\x9f\x84\xd8\x3a\xa1\x0d\x36\x49\x71\xdf\x4a\x98\x55\x27\x3f\x4a\x8f\x73\xa6\x2f\x98\xf7\x9c\xf5\xfc\x1d\xb1\xe7\xaf\x33\xba\xcc\x26\x83\xdc\xd8\x43\x69\xc6\x5c\x87\xa6\x4c\x59\x7e\x7f\xdf\x1e\x4f\x33\x9e\xcb\xed\xf6\xd6\x7b\xbe\xb5\x65\xcf\x65\x36\x19\xa4\xb6\x85\x16\x2d\x07\xc6\x70\x6d\x23\x67\xbc\x66\xc7\xc2\x69\x46\x06\x2e\xc2\x89\x54\xd3\x63\x28\x19\x55\x41\x74\xca\xd4\x8f\x3c\xd1\x3d\x9b\x33\x49\x51\x16\x00\x52\xd9\xb7\xbd\x8f\xcd\xe7\x1c\xba\x9a\x1c\x05\xa7\x5d\xf0\x72\x31\x95\xac\x5d\x7c\x36\xf4\xd3\x10\x03\xb8\x43\x6d\x2b\x45\x80\xd0\x17\x93\x83\xe6\xc8\xd7\x8c\xc8\x44\x0b\x1d\xe5\xd2\x53\x0c\x43\xc9\xf5\x51\x66\xfe\x50\x1b\x40\xf4\x44\x18\xd2\xa6\x6a\x2f\x9d\x09\xe3\xdd\x6c\x12\xaf\x73\xe5\x73\x6e\x45\x5a\x72\xf5\x71\x17\xfd\x3d\xc0\xf3\xfa\x39\x89\x57\xbe\xb6\x34\x34\xe0\x32\x2a\x42\x2a\x44\x85\x83\xb1\xcc\xd2\xec\xe2\x1f\xff\xd1\x68\x3d\x3d\xda\xaf\x78\x81\xa3\x31\x83\xc5\xdf\xad\x7f\x1a\x34\x6d\x11\xbf\xdd\x38\xe3\x7f\x66\xe6\xb5\x04\x84\x2e\x79\x60\x63\xe2\x41\x48\x35\x18\x25\x11\xfc\xcf\x13\x2a\x5f\xdf\x4d\x44\x2a\xb9\xba\xf7\x59\x83\x81\x8f\x9a\xdd\x38\xe1\x90\x7a\xcd\x54\x35\xd7\x7a\x9c\x4d\x74\x43\x2f\xc5\xd8\x30\x67\x8a\x3b\x55\xbf\xd3\x84\xe3\x90\x02\xa8\xdb\x09\x18\x0b\xaa\x8e\x31\x5d\x09\xba\xd5\x5d\x05\xe5\x09\x37\xdc\x86\x6e\xa9\x61\xd9\x13\x32\xbb\x4c\xc7\xb2\x64\x33\xca\xbb\xa9\xfb\xd5\x30\xa1\x59\xe2\x5a\x41\x0f\x27\x3a\x85\xf5\x87\xb9\xc9\xd9\x65\x7e\x9b\x49\x9a\x8f\x96\x2b\xf2\xe5\xe8\x0b\xe6\xa7\x7c\x05\xf7\xc9\xd4\xaa\xf3\x86\xd6\x9a\x49\xf3\xc9\x66\xeb\x2e\x05\xe7\x7f\x70\x78\xe8\x07\xfb\x37\x89\x16\x2f\x11\x04\x92\x26\x58\x7e\x40\x10\x6b\x09\xd5\x64\x6d\x00\xbb\x5c\xb2\xdc\xb1\x12\xc6\x2d\x6f\xc2\xbf\xbc\x37\xec\xde\xfb\x74\x9e\xa0\xba\xfa\x35\x58\x1b\x36\x0f\x39\x95\x23\x42\x2a\xfd\x56\x17\xe6\x3c\xb6\x7d\x00\xc3\xa2\x2d\x18\x6b\x1e\x4a\x3a\xff\x1d\xee\xdc\x58\x1e\x6c\xf7\xa9\x84\x8c\xa3\x90\x08\x9d\x8a\x2a\x35\x86\x72\x4b\x93\xf4\x81\x47\xb1\xaf\x32\xf4\x78\xe5\x1f\xd5\x5d\xad\xc6\xd7\xac\xa1\x18\xa1\xb1\x13\x78\xcc\x0a\xde\xb2\xed\x73\x6d\x15\xbc\xa1\xba\x69\xd6\xec\xe6\x9a\x1b\xcb\xe2\x63\x51\xc4\x74\x4b\x4f\x57\x5f\x84\xb5\x2d\x2f\xcc\x8e\xa5\x8d\x77\x88\xd9\x32\xae\x38\xda\x5f\xec\xc2\xd7\xfb\x1e\x72\x30\x1c\xb5\x16\x86\x4b\xbf\x3e\x50\x09\x35\x36\x67\xd0\x84\x25\x71\x4b\xb6\xc2\x14\x6d\x23\x03\xeb\xb3\x96\x18\xe6\xa3\xa8\xab\xcc\x29\x7a\x41\x7f\x71\x1a\xad\x9a\x29\x43\x77\x6a\x08\x2e\x48\x04\x8d\x07\x23\x6d\x45\x07\x48\xaf\x8f\xcd\x07\x1e\x63\xf6\xca\xec\xdf\x82\x67\x97\x19\x9f\xec\x09\x51\xb2\xe5\x30\x1b\x29\x26\xd6\x72\xfa\xef\xb9\x4c\x1b\x57\x52\xd1\xb5\xaf\x5b\x6a\xb4\xcc\x68\x44\x75\x10\x86\x7c\x14\x65\x74\x5a\xa2\x6c\xd5\x68\x94\x16\xde\x13\xeb\xa4\xee\xf5\xf5\xda\x8a\x26\xc7\x56\x34\x62\x98\xc5\xfb\x91\x0f\xb3\x11\x69\xa9\x41\x99\xf8\x33\x3b\x83\xe0\x21\x4e\x82\x29\x1b\x91\x12\x84\x43\xc3\xd0\x14\x97\x97\x25\x97\xac\x07\xcf\xe9\x8a\x87\xf4\xb8\xdf\xdf\x4a\x92\xef\x9f\xbf\xe8\xb8\x36\x6a\x8c\x8b\xbb\x74\x32\x11\x09\x6a\x4b\xc8\xab\x57\x2f\xf4\x73\xbc\x33\x72\x41\x9d\xf4\x9e\x3c\x7b\xb0\x87\xdd\xfe\x40\x03\xa0\xd8\x55\xdf\xf6\xc9\x77\xdf\x3d\xd8\x14\x9a\x15\xf3\x7e\x74\x64\x57\xb7\xd8\xea\xdb\x36\x4f\x1e\xdf\xe6\x89\x6d\xf3\xf4\xf1\x6d\x9e\x92\x30\xd9\x2e\x0e\x99\x7f\xcf\x5f\xbe\x7c\x12\xe4\xd7\x45\xa5\xfc\x5e\xbe\x7c\xf9\xb4\x57\xc5\x37\x59\x69\x36\x75\x1c\x6f\x2a\x70\x93\x60\x05\x35\x90\x54\x82\x68\x2b\x1c\x5b\xe9\x34\x01\x87\xb9\x7c\xfa\xc4\x86\x33\xb2\x06\xb4\xe0\x31\xa1\xe6\x06\xe0\x47\x07\x06\x8a\xcd\x79\x31\x13\xe4\xf5\xe9\xab\x0a\x0a\x71\x8a\x4b\xec\x5e\x91\xf8\x1e\x28\x27\x55\x39\x2e\xe6\xbc\x56\x6b\x1e\xd5\xaa\xea\x97\xf1\xb8\x85\xee\xea\xba\x26\xc1\xb2\xea\xde\xdc\x0c\xc2\xdf\x23\x15\x86\xff\x6d\x51\xdd\xf2\xd5\x4a\xdc\xb7\xbf\xc6\xe9\x3c\x1d\x67\xf2\x8e\xf5\x7b\xcf\x5e\x7c\xf7\xfd\x73\xba\x72\xed\x4c\x85\x60\x05\x87\x23\x63\x43\x66\xbd\x55\xb2\x3f\xf8\xfe\x35\x87\xfc\xfd\x7e\x9d\x30\x72\x6c\x8d\x18\xaf\x50\x35\x7b\x55\x06\xc0\xd8\x88\x26\xc6\x54\x44\x2b\xc8\xf0\x5c\xc8\xea\x2d\xe6\xee\x55\x31\x80\x17\xf0\x55\xdf\xd5\xd6\x8c\x30\x9e\x7a\x15\x7c\xdd\xde\x7e\xc4\xee\xfb\x0a\x4e\xb1\x63\xca\x98\xac\xac\x35\xe1\xd2\x2f\x98\xf1\x4e\xf7\x13\x71\x21\x69\x36\x38\x43\xbb\x13\xdc\xd1\xfa\xd3\x16\x7b\x4a\x79\x15\x58\x06\x62\xc3\x6e\x40\xd8\xad\xfe\x88\x4d\x13\x49\x7b\xa4\x0a\x29\x1a\x1a\xf1\x31\x38\xaf\x47\x74\xbb\x8a\x40\xe7\x74\x9a\xf4\xe8\x53\x62\xa1\x96\x8f\x80\x5a\xfe\xb7\x4e\x89\x62\x28\xa3\x9b\xcb\x4f\xbc\x15\x2f\xc4\x22\x91\xb4\x0f\xd6\xa1\xf3\x74\x2c\x7d\x7c\x95\x0d\x85\xfb\x4b\x4d\x2d\x2c\xd5\x58\x6a\x9c\x19\x88\x8a\xaa\xfd\x43\x89\xdc\xc1\x0e\x74\x27\xdb\x62\x4f\x5d\x0c\x85\x61\x36\xa2\xa9\xfa\xcf\x56\x7f\x44\x4b\x96\x76\x4e\xb3\x3f\x78\xf7\xf4\xf0\x1f\x07\xe7\xef\xf7\x4e\xff\x46\xa7\xac\xd7\x49\xd5\x05\xfa\x04\xc2\xd5\x67\x97\x49\x9f\xa9\x3f\x74\x0b\xb6\x48\x52\xfa\x84\x50\xbe\xc5\x4a\x67\xb1\x0c\x8e\xf0\x1e\xc2\x31\x2b\x76\xc6\x2f\x59\xb6\x55\xee\x8c\xc1\x27\x64\xbc\xcd\x47\x2c\x1f\x8e\x47\x2d\x35\x3a\x2b\xb6\x39\x38\xfa\x83\x9f\xc3\xb4\xd3\x49\xec\x57\x52\xe1\x03\x8f\xfe\xde\xe6\x55\x6c\x9d\xda\x70\x66\xf1\x96\xda\xf3\xda\x42\xe7\x78\xc4\x9e\xf4\x9f\x7d\xff\xec\xc5\xd3\xe7\xcf\xbe\xa7\x35\xfa\xa3\x31\x64\x28\xa9\x62\x92\x90\x8d\xeb\x7f\x65\x20\x43\xd3\xc2\x31\x94\x2c\x85\xa6\x84\x82\xe8\x2c\x31\x60\x03\x6e\xb6\x53\xb2\xde\x8e\xf4\xfc\xb5\x34\xcc\xe2\x50\x7b\x1f\x0f\xa5\x41\x22\x7f\xac\x05\xcd\x13\xc5\x55\x84\x52\x9b\x1f\xc5\x40\x65\x3d\x97\x68\x43\x34\x77\x13\x78\xc6\x48\xaa\x59\x35\x62\x8a\xa5\x8f\x07\xca\x29\x57\x6c\x50\x15\xd1\xef\x6a\x9c\xce\xe5\x42\xf0\x28\x89\xb5\xce\x58\x8d\xe9\xa1\x95\xd1\x6b\x0b\x82\x0a\x3c\xfc\x46\x4e\x8b\xc8\x2b\x31\x16\xc5\x51\x22\x47\x74\x9a\xcd\x69\x41\xa7\xd2\xdc\xbe\xc2\xeb\x8e\x27\x2b\x14\xde\x5e\x75\xcf\xd1\x1d\x63\x5e\x1f\xce\x0b\x88\xa5\x0d\xb4\xbc\xf4\x50\x81\x01\xa2\xcc\xc6\x1b\x46\x5c\xff\x0f\xc5\x73\x3d\x48\x4c\xf8\xcc\xd8\xf6\xd0\xf0\x00\xa2\x38\xc7\xa6\xf1\xb6\x72\xce\x1e\x5c\x8b\xa4\xde\x78\x56\x4b\xa8\xaa\x1e\x72\xfe\x8a\xae\x28\x41\x76\xe4\x4b\x01\xe8\x97\x2b\x5c\x07\xcc\x73\x5e\x50\x28\x2d\xa6\x05\x74\xbb\x1f\xa4\xc2\xc4\x2c\xd3\x50\x6e\xf5\x47\xaf\x5e\x3d\x89\x72\x53\xda\x2d\x54\xc4\xcc\x68\x1e\x1c\x2a\x59\xa5\x03\xca\x16\x86\x16\xae\x6b\x25\x41\xc4\x94\x60\x0d\xc2\x24\xd6\xf4\x80\x16\x8e\xe7\x63\xbe\x4e\xd7\x83\x7e\x43\x82\xa1\x54\x16\x22\x56\x00\xa9\xb5\xfd\x4f\x55\x40\x59\x69\x42\x49\x4c\x9a\x14\x26\x7c\x93\xb1\xbc\xa2\xbc\x7b\x28\xb9\x80\x57\x9c\x43\xc9\x67\x27\x76\x02\x3a\x75\x3a\x8c\x82\xbf\xe9\x08\xc8\x27\x45\x21\xf1\x57\xf7\xa6\x1a\x17\xc4\xbf\x3f\x7d\x7c\xb3\x77\x76\x70\x7e\x72\xf0\xf6\xe0\xe4\xe0\x78\xff\xe0\xcd\xf9\x2f\x7b\x47\x9f\x0e\x98\x81\xe2\x62\xca\xc3\x6e\xf3\x32\xec\xce\xfe\xbd\x9f\x8e\xaf\xa1\x86\xfa\xef\xc4\x57\x71\x29\xd6\xe3\x82\x95\x4c\xe3\x34\x55\x43\xdc\x64\x65\x56\xe4\x48\x5d\xab\x3e\x83\x24\x65\xe3\xbe\x28\xa1\x4a\x33\xd9\x32\xbd\x1a\x70\x8a\xdb\x81\x53\x98\xa9\x5f\xf3\xc1\x74\x8e\x9b\xa0\x49\x34\x1b\xce\xcf\x52\x1d\x15\x88\xdc\xdf\x27\x39\x8b\x86\x74\x4a\xfa\x85\x74\x0a\x9e\x00\x4e\xdb\xd5\x82\xbf\x2d\x84\xee\x0a\x72\x14\x66\xb9\xed\x7f\xe5\xf4\xaa\xaa\x55\x5b\xc7\x86\xb7\x39\xd4\xdc\x2f\x43\x03\x24\xfe\x33\x3c\xf6\x29\x11\x95\x4f\xd8\x66\xdf\x32\xc6\x57\x8c\xab\x7f\x91\xba\x5a\x6f\x65\x35\xe7\xfc\x73\xc4\x93\xa1\x1e\x76\xc3\xd1\x07\x51\x79\x42\x2a\xc1\xd1\x54\xc1\xe7\x33\xea\x82\x34\x77\xad\xef\xdb\xa5\x03\xa5\xb6\x95\x8e\xdb\x01\xc0\x8d\xeb\x46\xb4\x71\x19\x95\x2e\x9c\x50\x0e\xfd\x79\x50\x0b\xd3\x41\xca\xac\x45\x7c\xa8\x65\x7a\x60\x23\x33\x42\x53\x88\x21\x95\x0f\x92\x68\x0b\x52\x9a\x92\x0a\xcf\x64\x19\xcd\xc4\xdd\xec\x51\xc3\x3f\x05\x08\x4c\x9f\x34\xec\x6d\x8f\xca\xaa\x6a\x39\x4f\x5e\xfb\x52\x41\x92\xf6\xf1\x87\xb3\xf3\xf7\x1f\xde\x1c\xbe\x3d\x3c\x78\xd3\xb6\x8f\xfb\x70\x3b\xad\x44\x30\x93\x4a\xdf\xa3\x8b\xe8\xee\x7f\x38\x3e\x3d\xdb\x3b\x3e\x3b\x3f\xdb\x7b\xe7\x0e\x5e\xb8\x99\x39\x17\x91\x8b\x75\x56\x55\x36\x78\x75\xab\x46\x38\xfe\x4f\x86\x37\xa6\x57\xe1\x8a\xac\xa0\x77\x10\xbf\x78\x15\x2d\x5c\xaf\x4b\xe4\xf9\x8d\x7b\x74\xbe\xce\xa6\x13\xc1\xcd\x2e\x44\x4e\xb1\xb5\xa9\x18\x80\x11\xb3\x69\xdb\x0f\xf9\xa8\xa6\xe7\x45\x5c\x15\xaa\x86\x78\x12\xea\x7c\x24\x6e\x08\x51\x18\x11\x13\xfb\xb4\xb5\xf2\x5e\x08\x75\x81\x69\x9d\x49\xd2\xea\x40\xe9\xb0\x0f\x36\x69\xcd\x66\x54\xad\xe6\x9b\xe9\x81\x81\x4c\xc6\x20\x18\x2c\xb7\xf1\xd4\x9c\x11\x58\x2a\xae\x4a\x6f\x11\x02\xc4\xb8\x81\xec\x99\x92\xb3\xf4\x4a\x7f\x34\x79\xb7\x01\x03\xcf\xd2\xab\x2b\xed\xae\x62\xdc\xfe\x1d\x4d\x6f\xd9\x8b\x44\x67\x06\xd7\x1d\x0c\x52\x73\x75\xf8\xa7\xf9\xd4\x25\xf2\xb6\x1d\x92\x24\x25\xa4\x60\x2b\x76\xb9\x19\xda\xfa\xe1\x2e\x4c\x30\x6e\xed\x2f\x26\x9d\x62\x54\x4d\x03\x6a\xeb\xd7\xd7\x4f\xf3\x49\x0a\xbc\x2d\x34\x22\x2d\x34\xae\xae\x55\xcc\x2e\xb2\x9c\x93\x64\x28\x81\xca\x97\x23\x42\x11\xe4\xda\x58\x63\xee\xc8\x66\x49\x53\xf2\x78\x08\x89\x36\x57\x58\xf8\xcb\x0c\xad\x35\x34\x90\x22\x1d\x7f\x26\x09\x98\x6e\xe2\x0a\xe8\x16\xbd\xcc\x13\xb7\x99\xa4\xa2\x9b\x7d\xd2\x70\x97\x47\xd0\xac\x8e\xbd\xb0\xf2\x0a\x8f\x6e\xec\x78\xe2\xc1\x02\xc7\x78\xf3\xe8\x25\x81\x2c\xe6\xf1\x34\x57\x69\x79\x35\x6e\x1b\x81\x47\xa8\x23\xe8\x2f\x5f\x23\x07\x19\xf6\xee\x6f\xfc\x8e\xe5\xee\x30\xb3\xec\x41\xe2\x52\x63\x00\x5a\x28\xa0\xe2\x23\xd0\x08\xae\x46\x75\xb7\xae\x42\xa6\x94\x16\xa3\xa6\x7d\x0a\x2e\xea\x1c\xf1\x5c\x60\x27\x8d\xe7\x38\x28\xa8\x05\x64\x90\x52\x34\x53\x48\xc8\x87\xce\x18\x63\x2c\xbf\xbf\xdf\x6c\xda\xd8\xdc\xf8\x67\x4e\x59\xe1\xee\x4f\xef\xc8\xf9\x06\x56\x64\x6a\xea\x2c\xea\x08\x69\xcc\x60\x78\x7e\xd3\x05\x43\x26\x79\x9d\x4c\xa9\xc1\xc1\x9d\x18\x41\x52\xba\x20\x5a\x8b\x91\x59\x1e\x36\xba\xc3\xb3\x47\xb2\x81\x2e\x5f\xd8\xff\x36\xc1\x1f\x16\x23\xab\x76\x8e\x17\x5f\x06\x2b\xee\x03\x25\x48\xb7\x8e\x6e\x69\x4a\xb3\x34\x39\x15\x46\xf7\x5b\x97\x3a\xac\xca\x7b\x5a\xc7\x70\x5a\xac\xc7\xf1\x4c\xf2\x99\xe1\x5f\x3d\x86\x17\x34\x42\xbc\x46\x24\x5d\x7d\x0a\x9a\x2f\x22\x3b\x52\xa5\xb7\xd5\xae\x8d\xfb\xee\xa8\x0a\x37\xb4\xc4\x84\xb2\x10\xf2\xce\xd3\x08\xc4\x72\x39\xc8\xf5\x63\xd6\xff\xf2\xdd\xbd\x42\x08\x9c\x1a\xdf\xaa\x65\x45\xc7\xcc\x3c\x21\x4b\x3a\xb1\x7f\x9e\xc2\x53\xaa\xba\xa8\xaf\x19\x67\xaf\x6c\xd0\x97\xdd\xc5\x80\xb7\x90\xe8\x8e\x93\x30\x5b\x37\xd9\xbf\x7e\xe6\xde\x3d\xf6\x26\x19\x1b\x77\xd1\xbf\xc2\x23\x34\x2a\x98\xb8\x82\x09\xcf\x65\x26\x71\xa3\xeb\xd8\x4f\xb4\x39\x85\xf3\x4d\x22\xd8\x2b\x09\xc9\x87\x4d\x7e\x49\x6b\xf3\x33\x5f\x5e\x71\xb9\x71\xcb\xd3\xcf\xef\xd3\xb9\xdf\x50\xbf\x92\xa0\xfd\x30\xe5\x6a\x55\xf1\x6f\x58\xd0\x5f\xf5\xdf\x66\xd3\x6c\x11\xbc\x13\x39\x07\xdb\x75\x7d\xe3\x4a\x6e\x00\xfc\xd1\x3e\xe8\xdb\x11\x70\x59\x65\xdf\xdb\x97\x86\x28\x69\x25\x01\x81\xe4\x8a\x0d\xee\xd1\xc6\x36\xdc\x00\xe9\x5e\xeb\x07\xe6\x3a\xf0\x1d\xbb\xa2\x90\xcd\xfd\x53\xa3\xe8\x1e\x1a\xc6\xd0\x05\x3a\xa2\xd0\x0c\xa6\x39\xf7\x48\x73\x13\xaa\xb7\xe6\xd6\x29\x23\x08\xb4\xcc\xe1\x27\x2d\x8c\xb9\x42\x46\xee\xef\x7b\x28\x61\xb6\xfa\x44\x8b\xad\x3e\xa1\x3a\x2a\x6f\x36\x68\xca\x23\x3d\xb3\xa6\x0e\x91\x8d\xc3\x70\x44\x67\xde\xa0\xc1\xc8\x3b\x02\x69\xa7\x5c\xfd\xbc\xd3\x49\x72\x66\x74\x2f\x8a\x9b\x58\xe4\x72\x20\x2b\xaa\x2a\xb3\x1c\xe2\x15\x28\x42\xe5\x8e\x59\xa0\xe5\x68\xb4\x8b\x75\x4e\x09\x8e\xac\x59\x82\xf6\x99\xdf\x31\xe9\x49\x99\x70\xc4\x42\xa4\xb2\x10\x88\x2f\x75\xa2\x77\x44\xad\x8c\x9c\x5c\x1e\xcc\xe6\xf2\x2e\x21\x95\xfb\xcb\xee\x71\xd8\xa1\xa6\x22\xda\xcb\xcb\x7c\x4b\x08\x41\xed\x73\xfe\x45\xba\xa8\xfb\x41\xdb\xae\x2e\x8a\x32\xe7\x73\x8b\xe5\x01\xcc\x84\xf2\x2a\x1e\x25\xbc\x5a\x06\x9c\x7e\x56\x97\x09\xe5\xf9\x0d\x7a\x92\x70\xa2\x2d\x2d\xd8\xa5\x42\x07\x7b\xd9\xc2\x5d\x1d\x06\x6d\xf2\x31\xc3\xc1\x66\x1e\x36\xa5\xa5\x23\x30\xe4\x5d\x59\xb8\x91\xb3\x18\xe6\x74\x57\x37\x90\xd8\x2a\x14\x6c\xf1\x01\x76\xf0\xb7\xbd\x4a\x52\xb5\xc7\x40\x70\x4f\xf8\xe5\x5b\x2b\xca\x84\x93\x08\xc0\xc7\x5a\xd9\xa9\x8e\x2a\xdb\xa6\xb9\x7f\xb7\xbf\x5a\xa1\x3d\x0e\x84\xd6\xcf\xfc\xee\xad\xda\xa7\xda\x46\x22\xf9\x68\xfd\x76\x41\x8d\xfa\x5e\x6d\xea\xbd\xe2\x1a\xe5\xfc\x50\xd6\xd1\x1f\x52\x53\xce\x0a\x9d\x3b\xc0\x78\xd7\xac\x02\xd8\x6e\x75\x04\xb3\xe1\x43\x8b\x92\xf5\x28\x36\x11\xd2\x04\xc4\x38\xe6\x33\x13\x16\x97\xab\x19\xb4\xab\x41\x53\xd9\x65\x26\x4a\x69\x83\x11\xf2\xa1\xed\x76\x54\xd5\x56\xc5\x74\xe3\x1e\x59\x75\x3f\x5d\xd5\x4d\xb0\x36\x56\x89\x62\x2a\x80\x3f\x82\x1e\x05\x22\x5c\xa8\xfa\xa4\x09\x12\x30\x41\xe3\x65\xd9\xae\x28\xb7\xfc\x8e\x0b\x68\x63\xe1\x7a\x15\x1d\x14\xeb\xc7\x49\xd0\xf2\xb7\xa2\xd3\x34\xdc\xda\xf2\xd3\x52\x48\xa5\x17\xd1\x72\x57\xf6\x9d\x02\xce\x88\x8d\x5f\x30\x2f\x4a\x62\x17\x85\xaa\xcd\x1a\xd8\xcf\x55\xdd\x48\x51\x68\xf5\xf6\x23\x15\xd7\x48\xd1\xdd\xa4\xcd\xa6\x0d\xc6\x8f\xa8\x5e\xf0\x6b\x5a\xdc\x6e\x4f\xf9\x0d\xaf\x19\x41\x6a\x47\x37\x5a\xd0\xf4\x3f\xd7\x85\x8f\xa7\x3c\x15\xec\x42\xfd\x65\x7d\x20\xef\xde\x4e\xd3\xab\xf2\xad\x28\x66\x4c\x48\xca\xbb\xd7\x69\xb9\xef\xca\x58\xa6\x3e\x09\x5e\x72\xf9\x86\x5f\x2c\xae\xae\xb8\xd8\x4f\xa7\xd3\x8b\x74\xfc\xd9\x2b\xd3\xc9\x72\x4f\xb2\xf7\xb2\xa2\xbc\xbb\xb6\x1e\x87\x8a\x5c\xd5\x53\xe8\x72\xc7\xa2\x7b\x28\x64\xdc\xb4\x23\x1f\xa2\x0d\xa5\x8e\xe7\x53\x81\x4a\x7f\x7f\x21\x44\x86\x22\x54\x79\x37\x0b\x96\x4a\xa8\xf1\xeb\x75\x26\x79\x39\x4f\xc7\xbc\x49\xed\xff\x5b\x57\xf2\x52\x1a\xcb\xcf\xbc\x10\x33\x50\xeb\xd9\x45\x64\x73\x75\xae\xf7\x0a\x69\x1e\x3b\x1a\x32\xec\x46\xd7\xe4\xb2\x42\x37\xa7\xb9\x09\x2b\xe7\x68\x01\xd4\x8e\xdf\x6e\xbc\xe6\x20\x50\x51\x17\x28\x5d\x7d\xfc\x8d\x27\x82\x38\x9f\xa0\xac\xe1\x81\xc5\x9a\xa6\x42\xc0\x0f\x0a\x16\x65\x8f\x00\x4c\x2f\xe3\x57\x00\x26\x3d\x14\x3a\x4c\x53\x1d\x12\x14\xb4\xd2\xa7\xed\x0a\x03\x59\xd6\x67\x97\x6b\xa8\xb3\xfc\x4c\xa4\x79\xa9\xbd\x88\x59\x2d\xb6\x0d\x1f\xbe\xe5\x23\xa2\xa8\x2f\xd0\x09\xde\xbd\xe0\x57\x59\xae\x84\x24\x71\xb7\x94\x09\xa9\x2e\xb3\x3c\x9d\x4e\xef\x96\xdc\x5a\xff\x93\x0a\xfa\xbd\xe2\xd2\xc4\x25\xfb\x25\x15\x31\x4e\x01\x6f\x23\x03\x1f\x6b\x70\x3b\xe1\xea\xf8\x03\xbe\xa4\xd3\x6e\x2a\x93\x5e\x80\x6a\x6f\x74\xc6\xe2\x0a\x70\x3f\x9f\x70\xb1\x57\xc8\x75\x4b\xad\xd7\x35\xe7\x56\xd9\x7b\xd4\xbd\x2c\xc4\xa1\xd6\x16\x9f\x40\x07\x90\x96\xec\x86\x0a\x75\x41\xab\x11\x7e\x97\x34\x65\x53\x61\x55\xca\x09\xa7\xcb\x92\x4f\x2f\x07\x39\xc5\xa0\x0e\x0a\x2a\x05\xe7\xc6\xd7\x00\xfc\x7b\xf5\xfb\x6b\x15\x80\x7b\x2d\x92\x34\x04\xd6\x9d\x8b\x1a\xd4\x5a\x58\x8c\x9c\x66\x03\x24\x29\x3a\x9d\xc4\x02\x69\x18\x03\x5a\x2a\x58\xe1\xce\x50\x90\x62\x98\xa4\x8b\x1e\x15\x41\x5e\x11\x3a\x65\x53\x99\x94\x5d\x43\x52\x9d\x7b\x95\x3a\x01\xcb\x59\x9a\xa7\x57\x5c\x0c\x16\x10\xe4\x9a\xeb\x10\x14\xd9\x65\xb2\x79\x20\x13\x21\x93\x85\xda\xd6\x7d\xe4\xa7\x9d\x8c\x09\xa1\x8b\x86\x50\x67\x26\x89\x7e\x06\x6e\xf9\x3e\x8d\x7e\xb9\x01\xb9\xad\x0c\x4c\x1b\xda\xa8\xbe\xdc\x48\xcb\x8d\x74\x43\x14\x85\xf4\x35\xbb\x6d\xd2\x4a\x19\x0c\xb8\x57\x48\xed\xd8\x6f\xcc\xe7\xc7\xb4\x0e\xbd\x5b\xf9\xb9\x48\x4a\x9a\xd2\x29\xcd\xc2\xb5\x7f\x9f\x66\x79\xc3\xb2\xd7\x3d\x95\xd1\x0a\x17\x4d\xb8\x20\xc3\x15\xcd\x02\x5c\x10\xde\x47\x2b\xc6\x85\x02\xc1\x63\x9c\xb1\x6b\xb8\xe0\xee\x14\x5a\x22\xc0\xd2\x4e\x27\x49\x43\x6c\x28\x3b\x9d\xa4\x0c\x60\x9d\xd2\x05\x9b\xac\xc0\x06\x07\x55\x16\xc2\x5e\x56\x6a\xd3\xc7\x0a\x1f\x16\x75\x7c\x28\x10\x3e\x4c\x0c\x3e\x5c\x57\x6c\x8c\xf0\x61\x52\xc3\x87\x6b\x42\xe8\xe4\x7f\x0b\x1f\x74\x24\x0f\x18\xf4\xa7\x2c\xc4\x89\x6b\x5a\x9f\x01\xa1\x73\xad\x1a\xd1\x2e\x79\x36\x16\xd4\xa5\xf3\xb9\xcb\x49\x03\x23\x3e\x37\x5a\xb3\x19\x9b\x0f\x7b\xa3\x56\x2d\xd4\xa9\xf1\xa2\xd7\x3f\x07\x1b\xdf\x2c\x67\x36\xaf\x63\x05\x3f\xca\x79\x9a\xeb\x7c\x8e\x55\xb7\xeb\x3e\xf0\x7c\x52\x6d\x0c\x06\x1b\x67\x1f\xde\x7c\xd8\x48\xe4\xb5\xe0\xe9\x64\xe3\x82\x4b\xc9\x05\xf9\x17\xa9\xa6\xcc\x1a\x71\xcc\x29\xf6\xff\xbb\xc4\xee\x73\x15\xc2\xf1\x05\x9d\xd2\x31\x4d\x43\x9c\x5a\x81\xe3\x01\x69\x69\xa0\x23\x0a\x6f\x3c\x96\x4b\x83\xe7\x31\xe5\x08\xf0\x3c\x77\x18\xb5\x96\xe6\x9d\xde\xe5\x63\x76\x29\x28\xb7\xa4\x7e\x4f\x4a\x91\x5d\x2c\x24\x67\xef\x39\x30\x3e\x19\xcf\xa5\x75\xda\x6a\xd4\x8f\x34\x11\x6d\xc7\x6f\x38\xc3\x63\xd5\xec\xad\xe2\x80\x8f\x8b\x09\x67\x33\x01\x10\xe8\xfb\x39\x2b\xf2\xb5\x03\x5c\x89\xd5\x23\x4c\x78\x29\x45\x71\xc7\x3e\x43\x7f\x57\x59\x29\xb9\x78\xc3\xad\x10\xc1\x4e\x29\x87\x80\x61\xb5\x82\xd8\x58\x22\x62\x4b\x36\xfb\xa4\xd5\x33\x42\xfb\x97\x84\x13\x9a\x99\x70\x15\xbb\x6d\xae\x8e\x9b\xef\xa9\x6c\x0f\xda\x13\xf4\xab\x95\x0f\xb3\x11\x3b\x00\x53\x6c\x2a\xe1\xc5\x80\xf2\x6e\x5a\x96\xc5\x38\x4b\x25\x7f\xa3\xe1\x55\xc8\xb2\xaf\x64\x3d\xf6\x01\x96\xc9\x7c\xce\xf2\x2b\xf6\x3b\xfe\x10\xd9\x5e\x68\x8d\xc6\x5d\xa3\x77\x85\x56\x0b\x9a\x20\xde\xaf\xd8\x93\xaa\x05\x6c\xe5\xe9\xf8\x9a\x2b\x8e\xd6\x74\xe8\xbb\x93\x64\xc9\xbb\xe7\x65\x54\x7c\xc6\x2c\x3f\x1a\x35\xc4\x90\x34\x36\xe5\x13\xb6\xaf\x1b\x9f\x9b\x4d\xd9\xb7\xda\xcf\x13\xca\xbb\x67\x07\xef\x3f\x1e\xed\x9d\x1d\x9c\x7f\x38\x3e\xfa\xed\x7c\xff\xc3\xfb\x8f\x1f\x8e\x0f\x8e\xcf\x18\xef\xea\x00\x49\x8e\xda\xbe\xd7\x04\x8d\x35\x8e\xd0\x00\x31\x37\xb9\x44\xd1\xca\x96\xb8\x01\xcf\xd5\x27\x54\x7a\x26\xd2\xf1\x67\xc8\x4c\xd4\x3d\x3d\x38\x39\xdc\x3b\x3a\xfc\xc7\xde\xd9\xe1\x87\xe3\xf3\xb7\x87\x27\xa7\x67\xe7\xc7\x1f\xde\x1c\x9c\x9f\x9e\x9d\x1c\x1e\xbf\x03\x93\x11\xc3\x43\x5a\x0c\x55\x9f\x66\x85\xe4\x47\xd9\x8d\x8e\xd3\xc1\x78\xd7\xe9\x7e\xe1\x83\xf1\xec\x39\xe6\xb7\x07\x3a\x1b\x9c\x6f\xaa\xa7\xfa\x26\x3e\x69\xbc\xdb\xf0\x69\x5f\xdb\x18\x4d\x3e\x3a\x7e\x6b\xcf\x3a\x37\x98\x11\x6c\x8d\xe3\x74\xc6\x27\xab\x0a\xe3\xef\x56\x05\xf1\xee\x94\xf1\xee\x51\x71\x7b\xa4\x44\xa7\x5f\xde\xdb\x59\x64\xf9\x95\xfe\x71\xfc\xe6\xe0\xed\xe1\xf1\xc1\x1b\xff\xc0\x0c\x26\x3d\x46\x01\x87\xad\x6a\x8e\x3f\x1d\x1d\x05\xb5\xf6\x8b\x7c\x62\x40\xc6\xf5\x80\x4a\x59\x28\xf2\x9b\x4c\x14\xb9\x02\xcc\x7c\x79\xa3\x35\xb1\x6f\x10\x45\x53\x5f\x3f\xbc\x3f\x13\x5c\x3b\x87\x98\xc0\xa7\x8c\x77\x0f\xdf\x7c\x78\xbf\x7f\x9d\xe6\x57\xbc\xd4\x75\xfc\x8f\xf7\x87\xc7\x87\xef\xf7\x8e\xce\xf7\xf7\x3e\xee\xbd\x3e\x3c\x3a\x3c\x3b\x3c\x50\x13\x7d\x73\xf0\x76\xef\xd3\xd1\x59\xfc\x79\x8d\x34\x04\x85\x65\x21\xec\x72\x16\xf9\x58\x70\xc9\x5f\x17\x8b\x7c\x12\xf8\x68\x95\xd1\x9b\xfd\xe1\xf1\xf1\xc1\xc9\xf9\x2f\xef\xdb\x8a\x8f\x0b\x8b\xde\x1c\x9c\x9e\x9d\x7c\xf8\x6d\xef\xf5\x91\xc2\xb0\xbd\xfd\xbf\xb5\x09\x5d\x44\x75\xe0\xfb\x69\x5b\x5d\xfa\x61\xc1\xc9\xc1\xbb\xc3\xd3\xb3\x83\x13\x55\x36\x89\xca\x7e\x3c\xd8\xfb\xd8\x26\xf4\x3a\xfa\x6c\x9f\x76\x55\x93\xcb\xa8\x4c\x61\x40\x1b\x5e\x92\xd0\xc7\x8f\xfb\x6d\xeb\x3c\x36\x5f\xa1\x8c\x31\x19\x0e\x5d\x0c\x7b\xfe\x45\x9e\x66\x17\x53\x75\x9e\xe0\x25\x00\xad\xda\xdc\x74\x35\x7b\x40\x3f\x09\x37\x82\xe9\x0f\x94\x24\x56\xb5\x33\x4d\x4b\xc9\x44\xa5\x6b\x99\xc3\x54\x77\x07\x35\x3d\x54\x97\xf6\x76\x89\xaa\xc0\xf7\x4a\xf5\xd5\x50\xa8\x3e\x03\xd8\xe1\xfe\xce\x0c\xe8\x37\x2b\x56\xa1\x0e\x78\x0e\x01\x20\xfe\x53\x58\x55\x2f\xab\x40\xcd\x43\x1b\xca\x2b\x0d\x8e\xcb\x14\xae\x44\xb3\x70\x70\x10\xd7\xd0\x48\xa0\xef\xf4\x9d\x2b\x89\x6a\x67\xc7\x06\x91\x2d\xf0\x56\x2a\x9e\x4b\x71\x1c\x3e\x03\x66\x52\xe8\x0c\x0e\x8c\x65\x3e\x65\x5a\xc1\x52\x04\xd0\x45\xe8\x74\x56\x07\x47\x44\xe0\xe4\x21\x38\x19\x13\x16\x9c\x82\x65\x31\x38\xb2\x2b\xf8\xac\xb8\xd1\xb7\x66\x92\xa9\xea\x28\xe0\x7d\xd1\xca\x58\xa1\xdf\x02\xee\xf0\xc3\x8a\x7f\x11\x38\x0f\x58\x0a\xf7\xd4\x24\x07\xb5\x0c\x11\x09\x77\x89\xef\x38\x19\x80\xc7\x23\x0a\xb8\xe2\xe4\xee\x5a\x44\x7f\xbf\x13\x75\xcf\x43\xe3\x6b\x08\x4f\xb4\x5e\x3b\x0a\x7a\x14\xd7\xf5\xc1\xca\xae\x3b\x1d\x17\x19\xbf\x6f\x65\x73\xee\xfc\x3d\x7d\x5e\x03\xde\x2d\xe7\x60\x33\x2b\x68\x9f\x50\x5e\xa1\xc9\xfa\x61\xbe\x3c\xc4\x48\x78\x15\x88\xde\x40\x13\xdc\xc5\xbe\x05\xea\x5f\x31\x17\xa4\xbf\x4e\xe2\x0f\x5a\x26\xe9\x55\xf4\xce\xbc\x85\x48\x78\x31\x74\xc0\x7c\xc0\xea\x06\x60\xb4\x14\xbf\xe5\x67\x24\xfc\x13\xea\x79\xe2\x7f\x40\x18\x67\x83\x5f\x25\x3b\x4f\xdc\xdf\x94\x07\xdd\x9f\xae\x61\xef\xfe\x14\x73\x67\x57\x54\xf1\x78\xe7\x86\xc7\x53\x23\xaa\xce\xce\x20\xec\xc4\x52\xf1\x5d\x75\xb6\x4a\x07\x3b\xa0\x7b\xf4\x23\xdd\xb7\xf5\x1c\x98\x9f\x51\x10\x9f\x44\x07\x15\xdd\x4c\x1c\x27\xd7\x27\xf8\x19\xa0\x1c\x08\xb4\x15\xf5\x7d\xc8\x82\x4d\x28\x2a\x26\x5b\xa6\x27\xd6\xa7\xb7\x49\x4e\x3f\x13\x7a\x9b\x64\x54\xb2\x57\x12\x4c\x42\x6e\xd5\xd1\x66\xaf\xce\xcc\xe6\xec\x6b\xf3\x83\xdb\x44\xa8\xaf\x4d\x5a\x21\xd8\x1f\x58\x2f\xdd\xaf\x5a\x51\xbf\x4d\x07\x78\x9b\xdc\x8b\x29\xa1\x16\x88\x27\x41\xd2\xfc\x13\x17\x5a\xce\x4e\x49\x56\x7a\x0d\x6e\x13\x49\x3f\xa3\xd3\xf1\xfb\x57\xf2\xbf\xfd\xaa\x99\x45\xa5\xeb\x38\xc2\xf7\x74\x3d\x37\xb9\x67\xae\x85\x37\x8d\xb6\x75\x70\x05\x3c\x40\xdb\xcd\x53\xc7\xf1\xba\x0e\xd6\xd2\x7f\xb5\x04\x87\xf1\x3d\xff\xe9\xe4\xf4\xc3\x89\x65\x29\x0c\x8c\x47\xd1\xd5\x05\x9a\x37\x63\xff\x63\xb9\xa9\xfc\x0a\x3d\xf9\x41\xbc\x6e\x88\x54\xe8\x3f\x0e\x3f\xea\x87\x7f\x89\x63\xd2\xdb\x94\x85\x3e\x64\x7d\x50\x0c\x31\x29\x56\x94\x29\xc2\x6a\x2f\x04\xd0\x67\xc5\x46\x89\x93\x62\xc6\x40\x35\xa9\xe3\x8a\x7d\x70\x30\x59\x93\x0a\x6d\x1e\xe1\xbf\xeb\xda\x6f\x3e\xbc\x4f\x9c\x87\x43\xa3\xb0\x88\x23\x17\xa8\x8e\xd4\x47\xcb\xcc\x50\x89\x6f\x1b\x12\x5a\x0a\x9b\x4e\x05\x2f\x17\xb3\x5a\x08\x2b\xd7\x53\x7c\xd7\x49\xad\xfc\x57\x27\x2c\xb4\x1e\x76\x84\x4d\x2d\x85\x13\x22\x20\x9f\x61\x68\x9c\x1b\x70\x0e\x8b\xf2\x5a\xcb\x0e\xba\xb6\x5e\x8b\x0a\xb2\xa0\xc0\x97\x38\x6e\xb5\xdf\x83\xae\x2c\xf4\x35\xa2\xbd\x4f\x79\x13\x67\x32\x3c\x1c\xb9\xa7\x2c\x53\x01\x2a\xa3\x45\x59\xdd\x00\x55\xb2\x59\x80\x1e\x02\xa9\xcc\xfe\xe0\xaf\x7a\xd5\x85\x9e\xcb\xaa\x5a\x36\xde\xf6\xbc\x98\x7b\x7e\xca\x8e\x0e\x31\xb0\x69\x04\x4b\x55\x5b\xa7\xda\x2a\xfa\x15\x57\xdb\xf7\x36\xc1\x3c\x2d\xd1\xae\x56\xa1\x34\xf7\x60\x1f\x9f\x9a\xfa\x80\xe2\xa3\xac\xac\xa5\x71\xaa\xb7\x7f\x1d\xb4\x07\x92\x19\x56\x6a\x7a\xe4\xb1\x17\x98\x60\x2b\x56\x2d\x7a\x8a\x55\xd7\x9e\xbc\xbf\x17\xdd\x49\x66\x22\xf6\x69\x46\xd7\x1b\x05\x9e\x9f\x17\x73\x9e\x63\xf4\xc2\xbd\x1a\xcf\x54\xca\xd5\x6e\x34\xad\x8b\xd9\xcb\x2e\x3c\x36\x28\x04\x56\x5f\x5d\xd7\xe3\x69\x51\xf2\x95\x7d\xab\xad\xac\x82\xf1\x97\x55\xd8\x66\x59\xa9\x42\x8b\x05\xa1\x29\x93\x6e\xe8\xcb\x02\x23\xf5\x80\xd4\x49\x2a\xab\xb8\x76\x30\x89\x49\x31\x33\xc6\x0a\xae\x02\x0d\x36\xb7\xba\x9c\x22\x02\x16\xc2\x61\x37\xd0\x1a\x3d\xa0\x91\x5b\x06\xd0\xa0\xb5\xe2\x4b\xe8\xd7\xd2\x63\xd8\x08\x9b\xe1\x55\xed\x5e\x23\x59\x05\x8b\x08\x3d\xa3\x4c\x91\x50\x37\x5f\xa1\xd6\x39\x9c\x83\x13\x69\xd4\xe4\x03\x8e\xdf\x25\xc9\xc0\xb4\xb1\x82\x6d\x69\x96\x6f\x6e\xb3\xe9\x74\x3f\x28\xb6\xef\xc8\xf3\xfa\x17\x3f\x09\x8d\xef\x5a\xab\x82\xc0\x42\x59\x8c\xcc\xf2\xad\xaa\x56\xad\x2e\xf2\xcf\xe6\xc1\x9c\x05\xa1\x28\x22\x83\x62\xdc\x77\xb4\x28\x02\xd2\xc5\x0e\xe1\x81\xb0\x81\x8a\x2c\xdb\x08\x51\x0b\x63\x64\x8b\xce\x36\xdd\xec\x11\x75\x5c\x42\xb8\xac\x00\xe9\x8e\x51\x7d\x8d\xaa\x79\xbc\x41\x4d\x4f\xbc\x8e\xf8\xb9\xcc\x01\xda\x9d\x4d\x37\xc7\x38\xb2\xac\xdf\xda\x2e\xe1\x4b\xb8\x13\xc1\x82\x47\x0d\xe0\x94\xd6\xc9\x47\x23\x15\xa8\x57\xa3\xdc\xb7\x3d\x6e\xf0\x1c\xac\xb5\x34\x95\x74\xbb\x0f\xab\xcf\xac\x6d\x18\x1e\x6b\xca\xab\x3a\x36\x2e\x83\x06\x21\x22\x57\x3a\x70\xea\x19\xff\x52\xa7\x0a\x01\x48\x06\x17\x83\xea\x0a\x03\xc3\xf6\x10\x4e\xba\x98\x0d\x24\x35\x64\x61\x20\x28\x3a\x46\xc8\x02\x49\x1a\x8a\xa3\x5a\x9a\x39\x7b\x1b\xb4\xe0\x3c\x0a\x9a\x29\x8e\x29\x73\x83\x35\xad\x63\xed\x14\x87\x97\x4b\xfd\x40\x53\xee\xfa\x7b\x2b\xd2\xab\x90\xb0\x19\x79\x1d\x50\x1f\x84\x70\xcc\xfb\xcc\xc2\xbe\x25\x0d\xce\xc9\x7f\x06\x94\x8b\x5e\xa2\x06\xba\x89\x06\xc2\x3b\xb0\x5f\xcc\x00\xe4\x76\x1b\xed\xc2\x8f\x67\xef\x8f\x56\x2f\x8c\x2a\x6d\x82\x23\x86\x82\x72\x8b\x15\x46\x29\x69\xbb\xc5\x3e\xf3\x02\x52\x8a\x40\x00\x4b\x7d\xfb\x84\x28\x63\xf0\x5f\x46\x3d\x21\x34\xb1\x3d\x2d\xf2\x7a\x5f\x6b\xb0\x50\x09\x9d\x41\x97\xf5\xcd\x0b\xd6\x09\x15\x3f\x0e\x44\x8b\x5c\x0d\x7d\xd9\xa3\xa9\xd1\x20\xde\x9d\x15\xfd\x0b\x52\xd5\x26\x18\xd1\xf7\x60\xf3\xaa\x86\x05\x69\xac\x6f\xd6\xb2\x0a\xf1\xe1\xf1\x67\xd8\xb7\xf0\x08\x84\x7a\xf9\xfa\x93\xec\x1b\x3f\x7c\x90\x4b\x2e\x9d\xce\x3f\xd0\x8c\x2a\x74\x0d\x0a\x6b\x9c\x02\x75\x97\x5f\xc9\x25\xb2\x62\x92\x0d\x52\x9e\x0e\xa2\x51\x72\xf3\x22\xdb\x3c\x64\x23\x34\xaa\x51\xfc\x38\x11\xa7\x42\xa9\x83\x56\x78\xe7\x85\xd4\xb6\x7a\x5b\x88\x24\xa3\x5a\x0e\xb5\x0b\x53\x80\x56\x08\xd6\xcf\x5b\xa5\x12\x5a\x54\x55\xd3\xfb\xc9\x11\xfd\xc8\x0e\x8d\x74\xfb\x76\x55\xb4\x45\xa4\x9b\xd6\xba\xe4\xd0\xf3\x14\xfd\xcc\x39\x84\xb8\x66\xbd\x47\x28\x6d\xd7\x2b\x97\xb1\x56\x73\x9d\xa2\x19\x69\x3b\x63\x86\xb6\x01\x4b\x2d\x73\x67\xe0\xdc\xda\x8a\x79\x2f\x5c\xba\xbd\x5d\xbf\x5f\x9d\x99\xb8\xa9\x63\x4d\x67\x01\x5a\xeb\x75\x64\x16\x89\xdf\x6e\xbc\xf1\xc2\x80\x5e\x29\x7e\xbb\x71\x0c\xc7\xa2\xe1\xd6\xff\x8a\xbe\x39\xee\x94\x1b\x7b\x24\x25\x22\x70\xb2\xb4\x39\xb1\x5c\xed\x4e\x87\x77\x6b\x94\xdd\x6a\x4d\xfe\x70\xbe\x78\xb5\xed\xd7\x5e\x78\x9c\xd0\x53\x8d\x4e\xde\xa9\x2b\xda\xdc\x60\x34\xbd\x17\x48\x31\xdf\xe9\x5c\x98\x58\xc5\xda\x67\x3f\x7a\xea\xfb\xc3\x60\xdf\x27\x04\x88\x96\xf3\xc9\xf2\xb3\x6e\x68\x02\xd0\x98\x6e\x5a\x35\x5c\x79\x04\x3e\x52\xae\xc6\x6e\x78\x54\xfc\x64\x86\x7f\xbd\xf6\x55\xc2\xa2\xff\x85\xda\x2c\x25\x83\x3a\x4b\xd9\x55\xc5\xff\xc9\x01\x70\xdd\x0c\x7b\xa3\x55\xe7\x00\x99\x0b\xbb\xea\x4e\x67\x3d\xe4\xce\x80\x75\xb4\xe6\x80\xc4\xc8\x5f\x47\xf7\x26\x34\x0d\x90\x4d\x2b\xcf\x7e\x64\x4b\x45\x85\xb3\xab\x5c\xdb\x81\x0e\xfa\x74\xc2\xcb\xf1\xa0\x4f\x65\x26\xa7\x7c\xd0\xaf\xe8\x2f\x36\xec\xa2\x26\xe8\x26\x4f\xb1\x5e\xfb\x7f\x37\x12\x9e\x49\x31\x5e\xe0\x67\xb1\x92\xcb\xc5\xfc\x53\xc9\xa7\xbc\x2c\x3d\x8f\xd9\xf8\x55\x77\xb0\x08\xbe\xb2\xa0\xd3\x48\x26\x6d\x4f\xb2\x9b\x36\xa9\x6a\x82\xaa\xe1\xcd\x28\x64\x4f\x92\xbb\x89\x60\xed\x6b\x29\xe7\x83\x6f\xbf\xbd\xbd\xbd\xed\xde\x3e\xed\x16\xe2\xea\xdb\x27\xbd\x5e\xef\xdb\xf2\xe6\x4a\xdb\x21\x43\x06\xea\x79\x3a\xe6\x9f\x4e\x0e\xef\xef\xdb\xe6\x3b\xa7\x39\xdb\xdc\xfc\x51\x3b\x65\x1e\xa7\x33\x3e\x22\x03\xd5\x1b\x2e\xee\x13\x2a\x3a\x9d\x4d\x9d\x27\xf6\x97\x21\x1f\xd5\x13\x1a\x1b\x83\x22\x0d\xe7\x46\xba\xf1\xcd\x92\x57\x1b\x59\x5e\x66\x13\xbe\x91\xe6\x1b\xa7\xbf\xbc\xdb\x18\xeb\xc0\xdf\xff\x8a\xd9\xc5\xa6\x79\x1f\x9f\x26\xeb\xe6\x43\xbd\xef\xda\xba\xc5\xe3\xa4\xaa\x09\xb9\x82\x2c\x79\xc4\x9f\xaa\x9b\xaf\xc6\x2d\x7a\x91\xb2\xdd\xae\x85\xf2\x0b\xef\xfe\x76\x1b\x3d\xca\x04\x5d\xeb\xb7\x0b\x60\x9f\x39\xcd\x69\xae\x93\x2e\x66\xea\xca\xdc\x95\xdd\xb9\xe0\x37\x59\xb1\x28\x2d\x77\x81\x58\xea\x20\x85\xa0\xed\x74\x6f\xf2\x7b\x3a\xe6\x39\x40\x99\xb4\x2f\x60\x08\x9e\x4f\xda\x54\xf8\xd7\x3e\xdd\xda\x86\x47\x92\x6a\x0b\x20\xdd\x4e\x71\xb9\xa1\x9a\x99\x95\x21\x72\x4d\x97\x60\x52\x6a\x3a\xad\x01\xe9\x5c\x81\x97\x21\x12\x3b\x7f\xe4\x68\x05\x52\xb5\x02\xe9\x23\x47\x4b\xe3\xd1\x68\x28\x9b\xbb\xa4\x95\xc5\x6e\xf0\x82\x39\x08\x44\x17\x24\x4c\xa8\x65\x2f\x69\x66\xcf\x0f\x12\xbb\x96\x6b\xd0\x07\x55\xab\x62\x2e\x6f\x5d\x3b\x5f\x0b\x3d\x7a\xfc\x6a\xb5\xf1\x38\x3d\xdf\x86\x68\x85\x39\x6b\xbd\xa2\x99\xd7\x0e\x82\xa4\x70\x18\xb5\x8d\xaf\x78\x08\x17\xda\x2f\xc7\x99\x18\x4f\xf9\xab\x97\xdf\x9a\x3f\x14\xf9\x80\xf4\x81\xb9\x25\x91\xd3\x3b\x17\x6c\x71\x93\x31\xf3\x84\xa3\x66\x6c\x53\xe9\xdd\xdf\xaf\x3b\x7d\xd0\xc6\x2f\x78\x40\x58\x20\xd7\x62\x4e\xfc\x3c\x8d\xf7\x55\x23\x59\xb3\x5b\x15\xba\xde\x8b\x65\xc3\x61\x14\xb4\x70\x6e\x19\xea\x3c\x16\xf7\xf7\x3c\x18\x18\xd2\x53\x03\x63\x50\x97\xfc\x74\xf3\x41\x6c\xd9\x69\x9e\x9f\xc1\x5f\xe3\xed\x87\x93\x83\xc3\x77\xc7\x1f\x5e\xff\x74\xb0\x7f\x06\x84\xcf\xd2\xc3\xae\x2c\x3e\xcd\xe7\x5c\xec\xa7\x25\x4f\x5c\x1a\xd6\xf6\xcb\xf2\xe6\xea\xd5\xcb\xe0\x72\x79\xd5\xde\xca\xb7\xda\x2f\xbf\x0d\x3f\xbe\x54\x6b\xf6\xaa\xad\x8d\x2f\xc0\xb5\xc0\x1e\xc2\x44\x10\xda\xbc\x9f\xe9\xa5\xe4\xc2\x9c\x8c\x94\xd0\x22\x5c\x6f\xff\x67\x85\x1c\xf3\x35\x44\x06\x84\xff\x6c\xc8\x32\x1e\xb2\x6a\x70\x99\x8c\x73\x00\xfb\xda\x34\x63\x39\xd8\x1b\x14\x2b\x0c\x0e\x64\x6c\x6d\x00\xa7\xbf\xa0\x05\x4b\xab\xe0\xf4\xea\xa8\x0b\x55\x52\x40\xf8\x76\x85\x5a\x19\x55\xb5\x71\x1a\xf4\x6f\xc2\xb8\x4e\x9d\x4e\xdd\x86\x6e\x05\xf6\x81\xa1\x81\xe1\x3f\x8d\xee\x2f\x22\x00\xc6\x8d\x07\x5e\x34\x1f\x3a\x77\x25\x1f\x17\xf9\xa4\x4d\xe8\x13\xb8\x6d\x6b\x67\xca\xa6\x93\xed\x1b\xac\xdf\xec\x41\xc2\xfc\x10\xf7\xe5\x4a\x56\x17\x33\x0e\x86\xd0\xb8\x79\x61\xee\xf9\xe1\x8b\xcc\xac\xd4\xca\xb3\x02\x31\xb8\xf4\xae\x6e\xf6\xd5\x1d\xf0\xd0\x55\xd5\xe9\x64\xf8\x9e\x51\xab\x07\xa6\xfe\x9b\x3d\x1a\x5f\xb5\xf5\x49\x50\x49\xac\x75\xf7\x7a\x88\x2c\x62\x28\xa1\x01\x5f\x0a\x0d\x7d\x82\x50\x39\x90\xd5\xb0\x7d\xd1\xa6\xed\x8b\xec\x4a\xfd\xab\x18\xeb\x7f\x2f\x0a\xc9\xd5\x8f\x62\x72\xa7\xfe\x23\xda\xb4\xad\x76\x93\xc3\x1f\xc5\x44\x95\x4d\xd4\x66\x2a\x04\xa1\xed\xc9\x54\xfd\x23\xdb\xb4\xcd\x67\xf0\xcf\x05\x57\x85\xd7\x7d\xf5\xcf\x13\xf5\xcf\x53\xf5\xcf\x33\xf5\xcf\x77\xea\x9f\xe7\xea\x1f\x9e\x42\x25\xd5\x65\xa6\xfe\x3f\x53\xc3\x4f\x33\xf8\x07\x98\xfe\x36\x6d\xcf\x52\x75\xce\xda\x90\x3e\x97\xb6\xf3\x02\x20\x29\xd4\x70\x73\xf5\x7f\xa1\x00\x11\x8b\x0b\x05\x64\xa9\xfe\x3f\x4b\xa7\xaa\xb0\x9c\xa7\xaa\x59\x29\x45\x01\xdd\x94\x52\x64\x9f\x55\xdd\x72\x71\x01\xff\xaa\xd6\x52\x27\x1a\x6b\x4b\x05\xf8\x42\xfd\x5f\x35\xbd\x49\x45\x7b\xd4\xbd\x2c\xc4\x41\x3a\xbe\x4e\x38\x7b\xa5\xf8\x38\x66\x5e\x96\xde\xd1\xdf\xd8\xb7\xc3\x7f\xca\xed\x7f\x8a\x8d\x7f\x7e\xd9\xeb\xfd\x73\xd1\x7f\xfe\x42\xfd\xfb\xa2\x77\xf0\xcf\x85\x22\xfc\xdb\xf0\x9f\x3d\xf5\xef\x93\x17\xf0\xef\x0f\xf0\xef\x5b\xf5\xef\x77\x6f\xff\xb9\x78\xda\xeb\xf5\xfe\xb9\x78\x7b\xf0\xf6\xed\xe8\x5b\xfa\x37\xd6\x5e\xe4\xda\xe5\x6a\xe2\x9d\x7d\xed\x75\xb9\xab\x38\x9b\x81\xfd\xb5\x13\xa4\x9d\xd7\xc7\x41\xba\x03\xf1\xef\x65\x7c\x1d\x06\x61\x71\xd7\x72\x90\x60\x36\x5c\x57\x73\x34\x39\xa5\x80\x8e\x3d\xdf\xe5\x81\x1a\xe6\xf8\x54\x31\x70\x54\x90\x01\x8f\xd4\x33\x40\x82\x78\xb7\x66\xad\x28\xed\x3b\x5d\x4b\xb0\x6f\x92\xbf\x29\xba\x26\xd8\xaf\xea\x0f\xba\xee\x42\x25\xb4\xd9\xf8\x51\x54\x24\x79\x77\x7f\x9f\xbc\x63\xcb\x8a\x58\x99\xe4\x67\xbc\x36\xeb\x88\x45\x2c\xa6\xb8\xdb\x52\xc7\xf6\x6a\xd2\x46\x35\xcd\x53\x9f\xb5\xa0\xaa\xaa\x18\x7f\x96\x96\xf4\xec\xa9\x8b\x24\xd0\x35\xd5\x79\xf0\xf0\x95\xa9\x0a\x8d\x3c\x7f\x86\x45\xfc\x89\xfd\xdc\xfa\x09\x16\xf1\x27\x8d\xa3\x7f\x67\x3f\xc1\x52\xfe\xb4\x7e\x29\x5b\x81\x8d\xe8\xdf\xa1\xe9\x3f\xd8\xbb\xa6\xf5\x6d\x35\xaf\xfa\x3f\xcc\x42\x73\xee\x59\x92\x28\x4a\xd4\xd2\xd8\x09\x18\x91\x91\xd7\x3d\xf6\xf9\x6e\xce\x07\xce\xf0\x2c\xe3\x83\x4d\xfd\xb5\xe0\x83\xcd\x3e\xfc\x95\xf2\x41\x2d\x53\x39\x07\xe7\x61\xb5\x4a\xda\x51\x58\x6a\x1e\xb4\x79\x97\xa3\xb0\x52\x39\xd7\x11\x31\xea\x46\xbb\x36\x37\x94\xf4\x13\xe2\xfc\xb1\x41\xd5\xf5\xe5\xe5\x7b\x03\xdc\x31\x23\xab\x3b\x45\x97\x03\xc7\xa4\xf5\xa7\x51\x83\xa6\x00\x39\x61\xdc\x89\xda\x08\x7a\x09\x0c\xea\xe4\xdc\xfa\xbc\x82\x31\x59\x70\x79\xd9\xa8\x00\x7a\x7a\x62\xe5\xf4\xf0\xa2\x81\x04\x91\xbb\x51\x7c\x1c\xb0\x26\x23\xe8\x5c\xe7\xad\xc9\x5c\x75\xad\x1c\xa8\x99\x41\x67\xba\x5e\xe1\xea\x6d\xf6\x08\x4d\xfd\xaf\xbe\x3d\xbc\x65\x43\x4a\xb1\xe8\xbd\x6f\xca\xc3\x50\x56\xc6\x45\xbf\x78\x5d\x14\x53\x17\xf6\xd3\xc4\x23\xc9\xd7\xc5\x23\xf1\x75\x5c\xb0\x1c\x14\x5f\x4f\x75\x11\x06\xce\xd9\xe0\x74\xa9\x87\x19\x48\x0a\x83\xbb\x70\x2c\x99\xee\x08\x85\xac\xe1\x4c\x26\xc2\xfa\xd3\xbb\x04\x73\x50\x2b\x8e\x65\xa4\x46\xa2\x19\xb8\x7e\xfb\xe8\xe6\xe8\xd0\x6c\x6e\xf2\x38\x95\xb9\x95\x0b\xd4\x8f\xdd\x76\x7b\x60\x62\x87\x60\x03\x4a\x9c\x6b\xdc\x20\x15\xc7\x21\x26\x5c\x26\x23\xc5\xc0\xeb\xf6\x71\x7e\x70\x23\x4e\x14\xc0\xa7\xa3\x43\xd8\xe9\x78\xab\xcd\xa6\x98\x15\x5d\x59\x28\xf6\x24\x4c\x18\xfe\xc8\xee\x6a\x27\x1e\x2c\xbd\xce\xee\xe6\x3c\xce\xb3\x6d\xba\xd3\x19\x28\x50\x83\x28\x9d\xad\xd7\x04\x69\x57\xb5\x96\x11\xfb\x37\x38\xc9\x99\xa4\x82\xb5\xe7\xa2\x98\xb7\x83\x10\x5e\x5d\x59\x1c\x15\xb7\x56\xa4\x69\x95\x50\x1d\x74\x48\x50\x97\xe6\xac\xd4\x4a\xa0\x54\x4a\xa1\x7e\x4a\xab\x6e\xd1\x15\x8c\x69\x65\xbb\x94\x77\x53\xae\x7e\xe5\x61\x8f\xf7\xf7\x49\xe6\x05\x28\x25\x0a\xd0\x24\x65\x33\x3e\xcc\x42\x61\x6a\x44\x3a\x9d\x74\x58\x84\x8d\x47\x84\x80\xd9\xa6\x1e\x9c\xd0\xa5\x73\x3c\x9e\x0c\x72\xaa\x56\x61\x20\x8c\x11\x77\xdd\xf1\xa0\xd4\x07\x71\xc6\xd9\xf2\xf0\xf8\xe3\xa7\xb3\x81\x12\x51\x66\x90\x24\x77\x21\x8b\x71\x21\x04\x1f\x4b\xf5\x53\xb1\x62\x83\xcd\x5e\x45\x4f\x0f\x8e\x0e\xf6\x7d\xbd\x8a\x7e\xf8\x78\x76\xf8\xe1\x18\x7d\x38\x3b\xf8\xfb\xd9\xde\xc9\xc1\x1e\xfa\x74\xb4\xf7\xfa\xe0\x08\xfd\x7e\x7b\x78\x70\xf4\xe6\xf4\x00\x77\x73\x74\xf0\xee\xe0\xf8\x0d\xee\x17\x44\x4b\xf4\xe1\xf5\xa7\xb3\x33\x3c\x90\x8e\x0a\x78\xc3\xe9\x15\x67\xc3\xf6\xef\xe9\x4d\x5a\x8e\x45\x36\x97\x03\xc5\xbd\x5d\xd8\xbf\x47\xf4\x42\x15\xef\xd9\xb4\x62\xb4\x7d\x74\x78\xfc\xb7\x36\x6d\x1f\xbe\x7f\xa7\xfe\x7d\x7b\xb2\xf7\xfe\x40\x15\xee\x9d\xaa\xff\xbc\xfd\x70\xf2\xbe\x3d\xa2\x77\xaa\xcd\xc1\xfb\xd7\x07\x6f\xda\x23\x7a\xae\x7e\x5c\x0b\x7e\xa9\x58\x46\x31\x56\x8c\x70\x3a\xfe\x7c\x25\x8a\x05\x08\x32\xda\xf7\xb8\x3d\xa2\xb7\xaa\x9e\xaa\x30\xf2\xd6\xab\x07\x1c\x33\x60\x90\xd9\x1a\x1b\x27\x57\xb5\x0c\x90\x86\x30\xd8\xab\xf0\xfe\xfe\x80\x27\x17\x9c\x72\xb5\xcb\x07\x3c\x39\x07\x26\xcd\x9b\x08\xf3\x9a\xe5\xb6\x89\x2d\x71\xc0\x93\x3b\xd5\x0c\x5a\xdd\x6a\xdb\x07\x6f\xfa\x1b\x36\x33\x63\xdf\xdf\x9b\xee\x7c\xc5\xb3\xda\x7b\x16\xc4\x4f\x70\xda\xb6\xdc\x47\xea\xcc\x2e\x93\x09\xf8\x24\xda\x2f\xe6\xd8\x27\xa4\xa5\x65\xa2\x46\xfd\xc0\x00\xc5\x38\x5b\xa8\xe6\xaa\x9f\x2f\x3c\xc9\xa8\x70\xba\x03\x48\x3e\xa4\xb0\x71\xfa\xb6\x10\x9f\x4e\x8e\x92\x02\x6a\x1d\xf0\xe4\x8a\xd3\xd4\x0e\xd8\x5e\xe4\x65\x7a\xc9\x07\xed\xad\xc2\xde\x7a\x1f\x74\x3f\xbb\xa8\x68\x80\xf2\xdb\xbe\x77\x7c\x9c\x09\x83\xa6\xc0\x1b\xe4\x14\xab\x49\x06\x59\xc5\xd4\x89\x5c\xda\x07\x4e\x0e\xc5\x03\xe9\x6b\x0d\x44\x05\x2a\x91\xf5\xfa\x64\xe7\x19\xb0\x07\x6a\x4e\x13\x1e\x65\x09\xe7\x33\xa5\xe8\xcc\x96\x15\x33\x84\xca\xe6\x9a\x83\x83\x0d\xa1\x52\xa0\x6d\x19\xe9\x66\xac\xb8\x6a\x36\x15\xc7\x61\x39\x31\x11\xa2\xb3\xcb\xa4\xc9\x79\x30\x69\xc3\xa1\x6f\x6b\x44\x6b\xdb\x83\xab\x99\x93\x4e\xa7\x0d\xd7\x15\x28\xc3\xab\x5a\xd7\x6f\xd6\x77\xdd\xd6\x64\xa1\xad\xa3\xd2\xb4\x95\xb8\x39\x96\x20\xdc\x34\x75\x76\x6c\x3a\x43\x9f\x3e\x1b\x76\xda\x4c\xb8\x0a\xd2\xe0\x05\x06\x50\x66\xde\xc0\x0a\xfe\xce\x13\xa1\x59\xc1\x7d\xf5\xd7\xfa\xf4\x73\xa9\x77\x28\x53\x04\xb2\xe6\x66\xf6\xd1\x32\x82\xfb\x9e\x53\xfa\xc8\x97\xc6\x56\x9f\x3a\x15\xf7\xa1\xe2\xe6\x51\x60\x49\x7d\x56\x96\x80\x27\x19\xc2\x13\x13\xbd\xd6\x8f\xdb\xe2\xf1\xbb\x72\x46\x73\x88\x66\x64\xe3\x9c\x79\x3d\xe7\x21\xbc\x79\x3a\x34\xd4\x58\xaa\xb0\x33\xea\xd2\x10\x0e\xb1\x9b\xd7\x44\x8e\x8c\x0c\xf2\x6e\x34\x9c\x16\xcc\x56\xb8\xde\xed\xdb\x05\xf8\x1c\x2c\xc0\x03\x21\x45\x3d\x2e\x1f\x43\xee\xd1\x0a\x2d\x98\x5e\x21\x69\x1f\x44\x6f\x74\x30\x49\x6a\xd6\xc1\x3d\xd4\x37\xf4\x03\x04\x2c\x5a\x16\xb7\x1a\xa2\xb6\x0c\xbe\x7b\x43\x0f\xc5\xb0\xa1\x53\x9c\xf1\x8a\x71\x6a\xd8\x22\x13\x50\x34\x5e\x3e\x52\x97\xed\x42\x28\x38\xda\x6b\x59\x87\x68\xb7\x26\x04\x82\xb2\xba\x01\x2c\x25\x40\xd7\xe4\xc5\x86\x6a\x96\x93\x3f\xf1\xdb\xf3\x39\xc6\xcf\x07\x31\x86\x16\xec\x0c\x82\x7d\xd1\x4c\xd1\x1c\x2d\x29\xe8\x3e\x40\x75\xb8\x72\xcd\x75\x7f\x79\xad\xbf\x4c\xf5\xa7\x7d\xb7\xb9\xed\xcf\x74\x92\xa1\xf8\x70\xbf\x7b\xa0\xf7\xff\x7f\x03\xf4\x9b\xa6\x95\x06\x87\xdf\x00\x7f\x0d\xe5\xa4\x90\xf2\x8c\x84\x51\x0b\xad\xc1\x90\x1b\x1b\x1b\xc7\x9a\xf0\x4f\x39\x33\x69\xaf\x36\xb5\xc6\xc5\x7c\x67\xb9\x03\xe4\xb8\x19\x10\x77\xbe\x36\xfb\xda\xe5\xa3\x06\x99\xa3\xc4\x60\x81\xf9\x38\xc8\x5a\xb2\x6b\x9b\x31\x25\x7d\x78\x62\x7c\x88\xe5\x92\xbe\xbe\x47\x9c\x70\xe1\x85\x7b\x27\x52\x68\x55\x96\x91\xed\xdb\xed\x41\x63\x88\x3b\xa8\xe3\x45\x18\xe3\xb1\xd1\x90\x5d\xde\x39\x6d\x94\xd3\xc2\xe7\x7b\x18\xa7\xd3\x29\x17\xda\x49\xd6\x1a\xce\xdc\xa4\x53\xfd\x41\xb8\xd7\x7e\x99\xa5\x53\x88\x01\xe8\x9c\x18\x8a\xa2\xd9\xa2\xb4\xe7\x53\x2c\x04\xb9\xe1\xb6\xfa\x36\x2d\x1c\x93\x90\x10\x0e\x92\xc0\xe5\x1c\x5f\x63\x47\xdc\xd8\x1c\xfb\x7f\xb4\xcf\x43\xa2\xc3\x14\xf0\xca\x39\x51\x94\xea\x5c\xc3\x56\xb8\x75\xeb\x74\x12\x8e\x87\x0f\xb2\xf9\xa9\xe1\xb5\x3b\x1d\xe3\x3e\x85\x5f\x6d\x78\x19\x0f\x0f\x9e\x14\xd6\x7a\x4b\xc7\x04\xa9\x58\x98\x53\x07\xd6\x73\xd8\x1b\x99\xf5\xd3\x49\xd2\xa6\x97\x91\x75\xc3\x15\x97\x49\x0f\xd4\x2a\x3a\xe9\x79\xfc\xdc\x67\xd4\x0d\x57\x5c\x1a\x5b\xfd\x00\xcb\x42\x37\x25\xa9\xa4\x22\xb3\xf5\xe0\x5f\x71\x60\xb7\x2c\x1a\xd4\x6d\x25\x4a\x61\x1d\x04\x81\x8c\xf6\xb7\xba\xc8\xf2\x09\x32\x03\xb1\x47\x05\xbe\xc3\xa4\x38\x2a\xe9\x51\x6e\x4a\xcc\x8c\x9a\xdb\x21\xdf\x83\x7a\xa1\x87\xdc\xc5\x15\x77\xe8\xc7\xa1\x06\x02\x1b\x19\x67\x59\x84\xd4\x75\xf6\x3d\x16\xfb\xac\xe4\x08\xb3\x61\xfe\xb8\x52\xb8\x00\xa8\xaa\x8e\x9b\x97\x04\x4e\x3e\x47\xe6\x42\x81\x8d\x0e\xb3\x5d\xa2\x96\xd1\xe1\x89\x8f\x0e\x41\x7a\x2d\x6e\xe2\xae\xe9\x0e\x8d\x02\xca\x5b\x3d\x9c\xa4\xf9\x15\x37\xa6\x0f\xaf\x3f\xbd\x1b\x6c\x8c\xb5\xfd\xc3\x15\x97\x1b\xdf\x80\xed\xc3\xa5\x28\x66\x1b\x90\x9e\x69\x67\x43\x37\x67\xdf\x2c\x6b\x5d\x56\x91\x35\x84\x46\x54\x9d\x21\xcb\x07\x7d\xfa\xbf\x83\x25\x00\x42\xfb\x78\x7b\x4f\xfe\x23\x2d\x5c\xbf\xe5\x91\x47\xda\xd9\xc9\xde\xf1\xe9\xde\x3e\xf0\xc7\x56\xd1\xf5\x47\xac\x60\xd4\x3d\x1b\x17\xbd\xc9\x61\x5e\xca\x74\x3a\x35\xe1\x1f\x50\x06\xb6\xb8\x82\x35\x57\xaf\xd7\x00\x9d\x17\xb7\x15\x56\xf7\x14\xd6\xf3\x15\xb4\xe6\xcc\x87\x03\xa8\x95\xd4\xba\xd4\x97\x4b\x53\x0b\x53\x82\x5a\x54\x93\x6c\xb2\x6f\xb4\xc3\xde\x4a\x33\x1e\xd2\xb9\xda\x34\x8d\x6b\x1d\x93\x55\x57\x9f\xd0\xfd\xdf\x0c\x4b\xd8\x55\x04\x90\xeb\xca\xae\x4a\xb4\xbc\xf8\xe8\xaf\xda\x81\x70\x80\x55\x3b\x59\x1b\x29\x5c\xfe\xa6\x81\xa2\x0d\x5a\x31\x4e\xf3\x76\xbb\xe1\x6c\xb4\x33\x97\x61\xaa\xb6\xd6\x03\x4e\xa3\x05\x8e\xb2\x4f\xf1\x38\xfb\xd4\x46\xce\x38\xa4\x9c\x1a\x8a\x51\xd7\xef\x67\x4e\x2a\x3b\x48\x6d\x17\x06\x19\x8d\x96\x1e\xe5\xf8\xe8\xed\xa4\x2f\x33\x3b\x48\x6a\x07\x29\x59\x36\x4c\x47\xad\x62\x98\xc2\x20\x66\xa7\x4b\x3f\xc8\xaa\xa5\x1e\x4c\xe9\xca\xcd\x1a\x2c\xcc\xa8\x63\xd6\xdb\x19\xbf\x9c\xda\x51\xc7\x76\xd4\x09\x5b\x0c\xc7\xa3\xd6\x74\x38\x1e\x75\x33\xdd\x38\x99\x34\x8c\xd9\xbc\xec\x83\x6b\xba\x6a\xfb\x06\x97\x66\xe4\x39\xeb\xed\xcc\x5f\x5e\xdb\x91\xe7\x76\xe4\x19\xbb\x1c\xce\x47\xad\xeb\xe1\x7c\x64\x39\xd2\x59\xf0\xa0\xff\x29\x90\x13\x7d\xc6\xa8\x5d\x3e\x70\x86\x84\xc2\x70\x51\xaf\x1b\xa4\x37\xfd\xf8\xc5\xa7\xfc\x2a\x95\x96\x63\x1a\xde\xf0\x11\xb2\xbe\xe4\x5f\xa4\x48\x59\x50\x51\x7f\x33\x9a\xf7\xf2\x30\x97\x5c\xa4\x63\x99\xdd\x70\xd6\xbe\x28\x8a\x29\x4f\x91\x4a\x39\x6c\x18\xd4\xbe\xbf\x5f\x53\xe8\x62\xe9\x23\xe5\x0f\xfb\x64\xae\x2e\xd7\x24\x2c\xa7\x3f\xda\xa3\x80\x8d\xab\xeb\xad\x70\x29\xfd\xc5\xb6\xb9\xd2\xac\x72\xbd\xba\x29\xa0\xff\xc6\x35\x53\x79\xdd\x5c\x33\x95\xd7\xbe\x66\xb9\xaa\xa6\x29\xa0\xbf\xda\x9a\xe6\xd1\xa2\x56\x51\x7f\xa7\xdf\xf8\x7a\x36\x9e\x6e\x53\x5d\x5b\x46\xdf\x71\x42\xad\xc1\xb0\xf7\x09\xde\x35\x49\x1b\xa2\xcf\xac\x5e\x73\xa5\x4f\x71\xfc\x49\xc9\xab\xf6\xf5\xd4\x8a\xf6\xb5\xfe\xd5\xd5\xfb\x8f\xc4\x57\x5c\xe5\xb2\xac\xea\xfd\x8c\xeb\x01\x9b\x71\x66\xf2\x12\xab\x05\x83\x60\xa0\xfb\xda\x3a\xb2\xf6\x96\xb8\xc9\x58\x6d\x3f\x56\x35\xde\x7d\x74\xcd\x84\x93\x41\xbb\xad\xb8\x8c\xd5\x35\x70\x30\x85\x1a\x14\x6b\x5a\x1a\x75\xc3\x63\xaa\x5a\xbf\x03\x59\x34\x69\xf3\xa3\x14\xf4\x25\xb7\x1e\x9a\x11\x22\xc1\x82\xd6\x5d\xc8\x03\xfe\x31\xde\xbe\xca\xfa\x91\x07\xb5\xe2\xcd\xab\x4c\x78\xcd\x55\xab\x50\xe0\x68\x9d\xaf\x55\xdd\x78\xf2\xf5\x1a\xd6\x93\xf9\xad\x09\xb3\xff\x07\xd7\x89\x8c\x7d\xb5\xc8\xfd\xfa\x2d\x6f\xe6\x26\x50\x8b\x6e\x58\xde\xc8\x31\x44\xd5\x51\xf9\x23\xb8\x82\x80\x8c\x99\x39\xe2\x0e\xd7\xf5\xf0\x30\x2b\xf0\xd8\xde\x1b\x3a\xf0\x17\x3f\xb2\x3b\x47\x6d\x5b\x7e\xad\x21\x92\x89\x0b\x8b\x4a\x1f\xb3\xa5\xfb\x50\x79\xed\x9e\xee\xbb\x30\xab\xee\x02\xfb\x71\xdd\x73\xe0\xa7\x93\xa3\xfb\xfb\x26\xeb\x98\x4f\x27\x47\xbb\xd8\x12\x26\xbb\x4c\x9a\xaa\xdd\x66\xf9\xa4\xb8\xb5\x92\xe7\xb7\xff\x4f\x32\x4c\xb7\xff\x18\xa9\x7f\x7a\xdb\x3f\x74\xb7\xb6\x47\x7f\x19\x90\xdd\xe4\x9f\xdf\xfe\xf3\x5b\xb2\x9b\x0c\xff\x79\xfa\xcf\x72\xf4\x17\xf2\x6d\xd6\xe5\x5f\xf8\x18\xcb\xa7\x9d\x8e\x1c\xf6\x47\xbb\xea\x9f\xf0\xfd\x4d\xd1\x05\x7d\xf5\xea\xa1\x56\x5a\xa6\xa7\x6d\x14\xe0\xe0\x5a\x40\xdc\x79\xe1\x6e\xaf\x0a\x48\x8c\x9f\xc0\x66\xdd\x0a\x88\xdf\xaa\x49\x27\x9c\xba\x11\x2e\xd2\x92\x7f\x3a\x39\x24\xae\x97\x81\xaf\x04\xef\x11\xa5\x79\x90\xe0\x5f\xd2\xd9\x7c\x0a\xbb\xd9\xf6\xb5\xfd\x16\xfc\x82\xde\x79\x0c\x8c\xe6\x75\x24\x47\xaa\xf7\x7f\x87\xcf\x46\x7c\x88\x83\xff\xfc\x1a\xeb\xe5\x55\x31\x13\xc8\xf0\x10\x13\xa8\xd7\x9a\x47\x08\x9e\xa8\xdf\xe1\x0a\xbc\xd3\xe1\x43\x2d\x85\xbb\x38\xdd\xa3\xdd\xfa\x27\xf3\x84\x54\xd5\xc3\xa6\xbd\xe6\xf4\x86\xb3\xb7\x56\x87\xfd\x5b\xf3\x23\x80\x4d\x80\x35\x2d\x8a\xcf\x8b\xb9\xe3\x4c\x9d\x30\x89\xcd\x2a\xc2\x2a\x2e\x10\xf0\xca\x1a\xfa\x15\x27\xcc\x70\x5f\xf3\x04\xf8\x94\xf3\x2f\x73\xd0\xad\xf9\x68\xa1\xda\x1d\x20\x01\x39\xf4\x9b\xa5\xac\xc8\x46\x12\x75\xbd\xa1\x97\x89\x4f\x36\x1c\xca\x10\x2f\x1b\x8b\xaa\x16\xc1\x34\x6e\x0f\xe1\x4c\x15\x4e\xa8\xf5\xe2\x93\x8d\x22\xdf\x30\x91\x99\x4f\x4c\xfc\xd1\x6e\x9b\x98\x55\x31\xfa\x8a\xd5\x6b\x62\x2a\xac\x5c\x11\xdc\xc1\x57\xac\x87\x51\x35\xac\x5c\x0d\xd3\xed\x9f\x5c\x0b\xdb\xfa\x71\x2b\x61\xa2\xb2\x1a\x4a\x83\x66\x68\x0a\x02\xdd\x56\x50\x62\x82\x16\x79\xa5\xe2\xda\x39\xeb\xc0\xa4\x66\xca\xa6\x87\xf5\x13\x94\xf5\x09\xda\x76\x8f\x9b\x9a\x8e\x27\x9b\x5e\x4c\x1b\x66\xe7\xcb\x1a\x26\x18\x34\x7c\x78\x8e\xaa\xe2\x86\x2c\x36\x4c\xfc\xda\x8d\x6f\xe0\x89\xac\xda\x48\x7c\x3f\x5f\x3d\x53\xd4\xf4\x71\x93\xbd\xe2\xf2\x30\xbf\x29\xc6\x29\xba\x37\xd0\x94\x82\xe2\x86\x29\xc7\xcd\x1f\x3f\x6b\xc5\xb4\x64\xae\xe9\xc6\x65\x21\x36\xbe\x59\xfe\x74\xfa\xe1\xb8\xab\x4d\x56\xb2\xcb\x3b\x45\x0d\x37\x92\x60\x88\xaf\x5e\x90\xb0\xf5\xe3\xd6\x04\xee\xaf\xbf\x71\xfa\x33\x5f\x91\x51\x12\xe9\x31\x17\xc0\xf0\x41\x12\x65\xd0\x6a\x5d\x66\xd3\xe9\xf1\x62\x3a\x2d\x49\xd2\xef\x7d\x4f\xac\x2e\xb1\x4a\x27\x93\x15\xf1\xc5\xda\xe5\x5d\x39\x4e\xa7\xd3\x36\xa1\x0d\xbd\x0e\xf9\x88\x2d\x4d\x8d\x41\x7b\x96\x8e\xaf\xb3\x9c\x83\x0b\x05\xb5\x15\x07\xb2\x32\xd1\x7d\x9c\x89\xa4\x4b\x44\x5c\xce\x07\x7a\x38\x3a\x1f\x0f\x78\xf7\x92\xcb\xf1\x35\xa4\x7a\x4a\x8a\xee\x37\xf3\x31\xd1\xef\x3f\xb6\x4a\x2a\xd2\x59\x69\x7f\xc1\x53\xbc\xec\xaa\xff\xd0\xac\x7c\xaf\x47\x1e\xc8\xae\xfb\x9b\x96\xd9\x1f\xea\x83\xfa\x8f\x09\xde\xa6\x9b\x1a\x70\x9c\x25\x27\x59\x56\x16\xd6\xf0\xa5\xb8\x69\xbe\x62\xd4\xca\xbb\x66\xc2\xbb\x79\x17\x37\x24\x03\xfc\x7b\x58\x8e\xe0\x25\xca\xdc\x67\x3f\xf9\x17\xa0\xa6\x0d\xd3\xf9\x84\x5c\xcc\xa4\x77\x8b\x6c\x42\x8c\xf7\x66\xb5\xf4\x77\xee\xdf\x79\x18\x98\x70\x38\x5a\xa9\xdd\xc9\x40\xbb\xa3\x13\xb7\x6e\x32\x96\x07\xc9\x11\x3b\x1d\xa9\x75\x4b\x99\x35\x7d\x42\xe6\x76\xfb\x60\x50\xa7\xae\x6b\x6d\xe5\x66\xdf\x74\xfe\x11\x58\x8c\x86\x59\x85\x9b\x0d\x12\x89\xd7\x41\x97\x38\xb5\xe8\xdf\x8d\xe1\xa7\x4d\x69\xe8\x53\xf0\xbb\x07\x13\x93\x94\xdd\xb7\x8f\xb3\xb3\xdb\x8b\x0b\x0a\x87\x72\xe4\x12\xaa\xe9\x47\x35\x85\xbc\xc0\xd2\x70\x99\x08\xe2\xfc\xe9\x5c\xf0\xc1\xde\x2e\xef\xfe\x5e\x64\x79\xd2\x6e\x1b\x96\xc4\xaf\x32\x36\x3c\x5d\x6b\x72\xb7\xc2\x78\x4f\x62\x39\x97\xc3\x53\x89\x2f\x14\xb8\xb0\x77\x9f\xb8\x68\xd5\x3a\xb6\xf8\x6e\x7f\xd0\x23\xe8\xeb\x59\x7a\xb5\xfb\xc4\x7c\x9a\x0b\x3e\x4f\x05\xdf\x13\x57\xe5\xee\x33\xf3\x4d\x6f\x19\x7c\x7a\x61\x3e\x39\x5d\xc9\x8f\x45\xf1\x79\xb7\xff\xdc\x7c\x36\xaf\x83\xf0\xf1\xe9\x93\x70\x14\xd0\x82\xef\x3e\x0f\x3b\xd5\xcf\x15\xbb\xfd\x27\xb6\x63\x2d\x3f\x42\x07\x4f\xbe\x7b\x1e\xd4\x3d\x34\x0e\x12\xbb\xdf\xf5\x6d\xd7\xb7\x42\x49\xa5\x93\xdd\x7e\xef\x89\xed\xf7\x36\x9b\x4e\x4d\x04\xba\xdd\x27\xbd\x67\xaa\x5f\xbf\x30\x71\xa8\x9c\xcd\xcd\x44\x76\x04\xaa\x90\x49\x4c\x3b\x36\x37\x13\xde\x91\xa4\xfa\x99\x77\x15\xf1\xea\x3f\xa7\x89\xce\xc4\x06\x0f\x65\xc5\xbc\x0f\x66\x06\x10\x98\xb3\x84\xa0\x6d\x19\xe3\xb5\xa0\xed\xee\xd2\x17\x24\xc9\xbb\xf3\x62\xfe\x53\x99\x10\xca\x49\x8b\x77\xa7\x45\x3a\x71\xa4\xe8\xa6\x47\x33\x52\x11\x6a\x06\x7b\xf2\x64\xf5\x60\x2e\x1d\xcc\xdb\x42\x98\x67\x29\xa1\xfa\x2b\x5d\xac\x9a\x9f\xca\x24\x47\x9d\xf5\x7f\x78\x00\x72\x1d\xaf\x46\x75\xa1\x5f\x8e\xba\xe8\xc5\x0b\x52\x54\x78\xb8\xfa\x8f\xe8\x0a\xa6\x98\xd5\xbe\x14\xb5\x2f\x29\x2b\x76\x87\x60\x77\x39\xd2\x76\x5f\x21\x04\xfa\x55\x4d\x40\x58\xf8\xf6\xef\x99\x6c\x7b\x30\x7a\x8f\x00\xe3\x74\x96\x4e\xa7\x87\x10\x47\xe9\xbf\x0b\x8c\x5f\xd8\xde\x77\x2b\xe1\x18\x5e\x8f\x14\x73\xa0\x37\xd8\x38\x98\xda\xfe\xa2\x97\xca\x61\x3e\x6a\x45\x69\x1b\x40\xf9\xa4\x9f\x58\xe1\x61\x34\x27\x84\x46\x3b\x8c\xd1\xe5\xe9\xf7\x8d\x70\xb4\x74\x70\xd6\x93\xa2\x90\xfa\x4d\x50\xe0\xad\x7c\xfa\x75\xb0\xe3\xc5\x8a\xb1\x2d\xb3\x40\xa2\xee\x9f\x35\x77\xbf\x84\x86\x83\xbc\x62\x3c\x5e\x13\xb3\xc4\xc4\xda\x2c\x65\xbb\x39\x0c\xa0\xd8\x09\x25\xd6\x35\xcd\xfc\xc9\x77\x94\x9b\x21\x74\xc7\x52\x75\x2c\x98\x74\xa0\x66\x97\x89\xe8\x74\x36\x25\x50\x69\x55\xd1\x6c\x32\x13\x2d\x69\x7b\x2c\x08\x95\xbe\x77\x5a\xb3\x32\xce\x77\x75\xb1\x43\xa9\x9c\x0c\x24\x3a\x6a\xe0\x2f\x2c\x11\xb0\x74\xe5\x0f\x04\xfa\xf3\x35\xa0\x27\xa4\xe5\xa0\xde\xf5\x70\x72\x34\x6e\xca\x71\x67\xdf\x43\x67\xc1\x81\xa6\xf1\xae\x59\x6f\xbe\x10\xf1\x85\x0e\x05\x0a\xcc\x0f\x97\x5c\xd8\x8b\x30\xde\x64\xb1\x5b\xf0\x41\x38\xe8\x0b\xb7\xc7\xf6\xe1\x03\xa1\x91\x37\x4d\x10\x3a\x5e\x71\xf6\xaa\xb7\x93\x6d\x6f\x93\x65\x3e\xcc\xb6\xfb\xa3\x90\xfa\x54\x31\x01\xe3\xb7\x1b\xff\xe0\x1a\xa7\xb4\x3d\xa8\xac\x07\xf2\x3c\x39\x3c\x78\xb3\xe1\xc2\xe3\x6f\x80\x03\xc2\xa1\x79\x47\x75\x54\x3d\x45\xf7\xe1\x66\xb2\xc9\xef\xef\x37\xf9\xb0\x90\x23\xcb\x75\x94\xf2\x31\xb9\xdf\x50\x86\xea\xe1\xdf\xf8\x88\x6d\xf6\x2a\x9d\x87\x43\x75\xae\x88\x72\x3a\x9d\x16\x63\x2d\x3a\x14\x97\x97\x25\x97\xd8\x4c\x43\x7d\x36\xf1\x9a\x97\xaa\xa7\x81\x30\x1e\x02\xb9\x3a\xa6\x1a\x45\x93\x20\x5d\x90\xba\x8a\x79\x3e\x49\x04\xfa\xa8\x76\x54\xf1\xab\x93\xee\x8c\x8b\x2b\x9e\x08\xfd\x8b\x10\xba\x99\x4a\x6c\x6a\xdb\x92\x2c\xaf\x40\x2d\xaa\x41\x31\x86\x69\x7a\x48\x4e\x01\x02\xff\x78\x07\x0e\x8a\x7e\x64\xbd\xfb\x03\x97\xdd\x11\xd6\x6f\x57\x6c\x71\x33\xaf\x81\xc0\x8e\x08\x71\xf8\x39\x5e\x53\x7a\x80\x86\x7a\x6d\xf8\xf8\x52\xd2\xbf\x71\x56\x48\xc3\xc9\x2e\x6a\x5e\x9c\xb0\xaa\xd3\xac\x94\x35\x1e\x8f\xa2\x22\xe7\x8c\xe1\xb9\xbd\xe1\x88\x2e\xc1\x54\x3d\x7c\xaa\x94\x0d\x4f\x95\x0b\x9e\xc0\x43\xa5\xf5\xc9\x68\x81\xa7\xa4\x8e\x17\xe7\xb8\xbb\x20\x73\x1e\x18\xa7\x58\x26\x6f\xc3\x47\x5e\x19\xd7\x10\x0a\x99\x26\x05\x48\x65\xb9\x04\x6b\x97\x34\xe3\x32\xb5\x26\x49\x80\x70\x79\x94\x60\xd2\xc7\x42\x31\x99\x76\x83\xf8\x28\x68\x49\x81\xe1\xc4\x59\x9d\xed\xde\xfb\x44\xce\x7e\x49\x38\xce\xb9\x2c\x40\x70\x8d\xa3\xf1\xf8\xae\x6d\x50\x3f\x63\xf7\x9d\x02\x5d\xcd\x99\x70\x41\x13\x6a\x2e\x17\xa2\xd3\x31\x66\x7c\x2e\x69\x57\x46\xd5\x54\xed\xdb\x6e\x2b\x67\x53\x99\x64\xe0\x65\xee\x1c\x98\x7d\x4e\xc0\x3b\x97\x30\xde\x4f\x5c\x34\xcf\x9a\xe6\x60\x83\x82\x9d\xba\x74\x0f\x1c\x9d\xbd\xd0\xa3\x6a\x53\x76\x3a\x1a\xc5\xf9\x40\xfb\x8f\x99\x1c\x70\x86\x69\xd7\x7b\x3a\xf1\x2e\x95\x3f\x35\x58\x9e\x45\xf2\x48\x8e\x62\xdd\x3b\x76\x0d\x07\xea\x0f\x26\xa1\x96\x89\xb5\x0d\xa3\xbc\x2d\xf9\x17\xd9\xf6\xdb\x2e\xc3\x6d\xc7\xf9\xa8\xf3\x30\x1f\xb5\x6d\x42\xbc\xb0\x69\x57\xdd\xfa\x92\x71\x2a\xd3\x2b\x3b\xff\x1d\xdb\x85\x4f\xc4\x2d\xeb\x03\xb9\x8c\xeb\x0f\x8d\x1e\xbc\xdf\x25\xdc\xfb\x36\xc5\x46\x85\x74\xe9\x71\x50\xa0\x3c\xcd\x8a\x04\x26\x92\x39\xa7\x25\x70\xe3\xd9\xe5\x5e\xfe\x21\x36\x36\xab\x5d\x62\xf8\x07\x25\xa0\xf7\x2b\x2b\x89\x3b\x8d\xd7\xcd\xd4\x24\xf4\x0e\xab\x25\x70\x0d\x12\x53\x6a\x55\x8f\x3d\x23\x35\x5f\x7e\x87\x6d\x00\xf1\xfd\xfd\x58\xff\xc7\xbd\x7b\x7b\x53\xc6\xfb\xfb\xba\x03\x53\x95\x48\xb2\xdb\x1f\x24\x0a\xe8\x4e\x07\x6e\xa6\xdd\xde\x00\xc2\xd6\xed\x3e\x1d\x34\x8c\x02\xde\x52\x9d\x4e\x1f\xcc\x2b\xbd\xfb\x93\xaa\xff\x6c\x70\x0d\xed\xbe\x1b\xf4\x2b\x2b\xb7\x3c\x7b\x6a\xd9\x8c\xfa\xdd\xef\x12\xba\x0a\xb5\xec\x12\xfb\x8a\x49\xc5\xe4\x19\x89\x4e\xd5\xac\x07\xf7\xc3\xcc\xe4\xb3\x67\x0f\x0f\xe2\xfc\x3f\xf0\x68\xf2\xab\x46\xf9\x7e\xf5\x28\xde\x5a\x16\xf8\xfd\xb1\x62\x5c\xd1\x74\x84\x66\xf9\x57\x0d\x05\x71\xf1\x32\xa2\x8f\x44\x56\x82\xb7\xea\x59\x7a\x75\xc5\x27\x0a\xb3\xef\xef\xad\x68\xfa\x6b\x26\x75\xf8\xd0\x89\x4c\x0a\x2a\x69\x86\x59\xde\x67\xdf\x3d\xbc\x08\x6b\xa6\xeb\xa2\x0e\x4a\xdc\xe7\xf3\xff\xa8\x4f\x13\xff\x10\x49\x0a\x3f\xa8\xfe\xf4\xbd\x06\xfe\xff\xc6\x58\xd0\x0f\xd8\x33\x15\x8a\x79\x5c\xf4\x1d\x6a\xfb\x26\xc8\x75\xe8\xaa\x3c\xf7\xad\x57\xd4\x78\x02\xc2\xa8\xc0\x72\x41\x5e\xa9\xdb\x23\x64\xff\x42\x19\x44\x67\x84\xe7\xe3\x62\xc2\x6d\xda\xb3\x9c\xe0\xa5\x7f\xda\x6b\xec\xd5\x4b\x2e\xea\xaa\x32\x29\xb5\x8f\x8b\xdc\x79\xf9\xa2\xde\x4c\x2e\x8d\xc7\x0c\xdc\xca\xbc\xe0\xa0\x79\x7f\xfd\xe1\x24\xbd\x0d\x04\xef\xa7\xfd\xfa\xe6\x79\xa1\x83\x5b\xd5\x46\x62\x38\xfe\x60\x42\x4f\x56\x36\x75\x42\x88\xec\xce\x39\xff\x8c\x31\x01\x77\xd0\x20\xde\xd1\x62\xfe\x04\x38\x4e\x58\x17\xa4\x0b\x15\x64\x3b\x77\x3b\x30\x59\xcc\x43\xe1\xb2\x59\x92\x6b\x61\xf6\x1d\x9f\xd2\xa7\xcd\x42\xb1\xd1\x78\x84\x55\x9b\x75\x2a\x2d\x03\x5c\x50\xf7\xbb\x17\x0f\xc9\xab\x56\xd8\x68\x71\x90\xd8\x03\x04\xc4\xdb\xf2\xbc\x59\x1f\xa2\x8e\x51\x2e\xb9\x08\x46\xfd\xbe\x67\xe4\x2a\xfe\x05\x5e\xa9\x7d\x27\xcd\xe2\xf3\x2a\x3c\x76\xa9\xdd\x2e\xa6\x1c\xd4\x85\xbe\xa3\x27\xa1\xe4\x66\xda\x59\xc1\x18\xd7\x6c\x40\x27\x2c\x2f\xc6\x42\x2a\x77\x99\x01\x05\xb1\x72\xa3\x11\x42\x23\x7d\xca\xf3\x67\x6b\x45\x51\x9a\x7b\x79\x5a\x07\xb5\x72\x5a\x14\x3b\xb8\x8f\xb7\xe5\x1c\xdb\x34\xa1\x78\xab\xa4\x4a\x6b\x2e\xa0\x3f\xd9\x1d\xb1\xf9\xc0\x69\xc9\x32\x24\x7e\xd2\x29\x73\x22\x68\x76\x99\x4c\x5f\xf5\xc8\x32\x65\x69\xd7\x98\x2d\x3b\xa9\x6a\xc1\x7a\x3b\x8b\x97\xd3\x9d\xc5\xd6\x16\x49\xb1\xca\xaa\x1c\x2e\x46\xb4\xe8\xa6\x32\x59\x10\x25\x79\x60\x30\x30\x04\x29\x24\x2b\x4e\xa7\xd3\x60\xc7\x9f\xd7\xd1\x37\x53\x78\x56\xd3\x18\x19\x92\x52\xbb\x2f\x0a\x42\x0a\x7b\x20\x95\x08\x71\x55\xc8\x22\xc9\x88\xf7\x20\x4e\xb5\x5f\x7b\xd7\xe9\xb6\x41\xd5\x9d\x14\xa4\x95\xc2\x89\x0e\x9a\xd1\xda\xd5\x73\x29\x93\x54\xb1\x37\x1e\xe2\xfa\x29\xfa\xf3\x10\xab\xbb\xee\x4f\x40\x8c\x9a\x3d\x06\xe2\x06\x7d\x95\x23\x4e\xfe\x08\x71\xfe\xd9\x2b\xf1\x74\xb0\x11\x33\x4a\xb0\x61\x2f\x9a\xae\x48\x43\x19\x1f\x77\xa3\x5f\xe2\xa7\x91\xa4\x71\xae\x32\x20\xcf\xdf\xbb\xa3\x08\xd9\x8d\x25\xd5\xc7\x46\x80\xe3\x84\x3d\xc3\xb2\xbb\xc2\x2e\x4b\xd8\x0d\x01\xe5\x86\x66\x53\x2f\x57\x0b\x18\x91\x70\xa1\xc5\x05\x9d\x79\xa5\xdd\x28\x1f\x8e\x15\xc4\x8c\x5b\x47\x12\x34\x35\xf7\x6a\x6b\xb6\x85\xa3\xc8\x7b\x7a\x23\xa9\x44\x6f\x55\x26\xdd\x8c\xea\x0e\x4b\x0d\xa2\x9b\x95\xc6\x8a\x48\xad\x66\x57\x70\x2b\x45\x24\x04\x70\x17\x5e\x21\x13\xc7\x82\xcf\x1f\x3d\x37\xf0\x84\x76\x5c\x39\x4c\xf4\xf7\xc5\x6c\xbe\x9d\x5d\x6e\xe7\x85\xdc\x36\x51\xd6\x27\x68\xda\xe1\xb3\x53\x83\xa0\x94\x77\x41\x27\xb4\x77\x84\xc2\x5b\x7a\xa3\x2e\xb5\x70\xb6\x33\x71\xc5\x25\xab\x4f\x1f\x44\x26\xaa\x8b\x07\x82\xe2\xce\xad\x23\x5a\x6b\x93\x77\xd3\xe9\x6d\x7a\x57\x9e\xb8\xa5\xe8\x74\x9a\xe4\xab\x8c\x60\x1c\x9e\x64\x13\x58\xc7\x3b\xfb\xa2\xfa\x68\x11\xcf\xac\xec\xec\xf1\x58\xa3\xa7\x17\x2c\xed\x24\x9b\xe8\x25\xbd\x5b\xb9\xa0\x58\x96\x44\xfd\x74\x11\xe4\x5e\xd2\x68\x7e\x1c\x68\x62\x4f\x75\x1c\xea\x48\xcf\x8c\xd9\xde\xe6\xf7\x8f\xa6\xae\x5c\xd4\xc0\x35\xbd\x35\xb3\x0e\x61\x6f\x41\x08\xd5\x35\x7d\xfd\xf0\xb5\x0c\x39\xee\x18\xb3\xe2\xdf\xf5\x7c\x4f\x34\x6b\x7c\x91\x88\xbf\x94\x2b\x47\x5c\x4d\xd9\x25\x2b\x3c\x5c\x96\xa0\x4f\x57\x12\x74\xc9\xa6\x96\x12\x34\xd1\xf1\x29\x21\x95\x33\x71\xd8\x64\x2c\x75\xac\xe7\x0a\x08\x52\x42\x32\x5f\xcb\x43\xb0\x68\x86\x20\x25\xad\x8c\x2d\xd6\x41\xa0\xee\x74\xd5\xc1\x38\x14\xe7\xea\x49\x2d\x24\x84\xae\x6c\x8d\x21\x4a\x72\x43\x4a\xd9\x64\x8c\x37\xe3\xb9\xe5\xf3\x50\x97\xb5\x74\x14\xa8\x7e\x28\xf0\x86\x76\x05\xb2\x07\xf1\xde\x17\xd3\x69\x4b\x82\x89\x83\xec\x42\x1e\x11\xc8\xb5\x10\xbe\xfb\xc9\x9e\x76\xc2\x53\x05\x68\xe8\x20\xed\x48\xc0\x05\x87\x32\x26\x6a\x12\x86\xfc\x6d\x81\x4e\xdf\x86\x2b\x93\xba\xc9\x50\xd0\x7c\x64\x18\xdd\x9b\x95\x36\xa7\xb9\x8d\x5f\x97\x31\xb0\x6f\xc1\x4b\x96\x93\x56\xb6\x72\x3d\x95\xd0\x80\x20\x6d\x7e\x93\xf2\x49\xb8\x33\x63\x33\x91\x56\xeb\xdf\x4d\xeb\x58\x4f\x97\x38\x80\xfa\x60\x4a\x63\xbb\xe3\xc1\xa2\x0a\x16\x87\x2a\x64\x89\xd2\xf3\x4f\x58\x66\xe5\xaf\x29\x4d\x69\x49\xc7\x74\x41\x5a\x0d\x5b\xa9\x66\xe3\x16\x27\xa3\x26\xad\xc9\x35\x83\x47\xaf\xb3\xf4\x2a\x99\xd4\xb8\x0c\x92\x5c\x37\x29\x0d\x6e\x64\x72\x4d\x55\x0f\xfe\xda\xbf\xf9\x2a\xbd\x22\xba\xae\xcc\x2a\x3a\xcd\xb1\x01\x30\xd4\x29\xea\xf1\xed\xb5\x29\xda\xfe\x7a\xd4\xa6\xc0\x93\x86\x3b\x86\x93\xda\x0d\x68\x77\x4c\x52\xdb\xd3\x40\x80\x26\x31\xa3\xa8\x2f\xab\xcd\x6d\xd0\x2b\x66\xb4\x20\xf7\x60\x22\x80\xf0\x2e\xb2\x46\x16\x54\x92\xc7\xc0\x97\x11\x7f\xe3\x7c\xd7\x70\xe3\x68\x3e\x92\x16\xf3\xa7\x8e\x0b\x8e\xdf\x33\xd3\xe8\x53\xae\x70\x2c\xdb\x0d\x3f\x66\xc4\x3e\x03\xa3\x43\xd6\x90\x15\x40\xa7\xb7\x47\x78\xdf\x70\x75\x01\x4c\x19\xc0\xa4\x16\xa9\x06\x40\x23\x92\x2b\x31\xc8\x2a\xb4\x16\xac\x88\xc0\x2b\x88\xc9\x34\xc9\x62\x00\x6b\x19\x08\x52\x3a\xa5\x9b\x9b\x19\x5d\x34\x73\xc3\x65\x13\xaa\x5e\xc9\xa4\xa4\x63\x84\xa8\x57\xeb\x10\x35\x42\x53\xaf\xf2\xe6\x91\xeb\x8d\x45\x57\x8d\x9e\xf3\x54\x8e\xaf\xb7\x0d\xf4\xed\x96\x65\xb6\x80\x8b\x76\xf8\x2e\x1e\xa5\xfc\x16\x75\xac\x75\x83\x0e\x24\xf5\x2a\x70\x83\xb8\x6b\x50\xb5\x59\x05\x6e\x15\xdb\x4e\x0f\x0c\xb9\x11\x6f\xc8\xa3\xa0\x03\x9c\x55\x54\xe3\xa2\xf6\x88\x69\x1f\x2f\xcf\x0f\x81\xe9\xda\x3f\x68\x93\x96\x15\x32\x1a\xd4\x9d\xc1\xd3\xb6\xc4\x8f\xa5\x25\x4f\x04\x4d\x65\x20\xa5\x34\x48\x46\xba\x03\x23\x1d\x85\x3d\x5c\xcb\x90\xd5\xf9\xbe\x59\x55\xe7\x95\x6a\x34\x55\x82\xbb\xe3\x4d\x32\x84\xba\x8f\x51\xa3\xd1\x45\x03\xe1\x6f\x30\x8c\x01\x1b\x44\x99\xa4\x74\x41\xa7\xb4\xc4\x10\xbe\x58\x63\x07\xb2\xee\x46\xf1\x77\x50\x05\xa1\x76\x85\xd4\x26\x0c\xfb\xe9\x3c\xbd\xc8\xa6\x99\xcc\x78\x99\xe4\x3a\x3b\x26\x51\xf4\x62\x39\xbc\x90\xa3\xc1\x66\x8f\x4e\xdc\x63\xd3\x20\xa7\xfe\x26\x1b\xa3\x86\x83\xc2\x5c\x6c\x70\x3e\xb5\xfd\xae\xfe\x1b\x42\xcc\xe9\x3f\xf5\x23\xa9\x7e\x62\x8a\x75\x46\xd8\xc4\xe4\xc5\x53\xbc\x07\x1b\x39\xb5\xe2\xbd\xf0\xec\x21\x2d\x59\x5a\xd3\xe8\x3f\x62\x0b\x32\x02\x7c\x63\xcc\x91\xf4\x4d\x4e\xb4\xda\x3b\x5e\x49\x96\xf0\x50\x57\x5f\x5b\x5a\xd2\xa9\xd6\x84\x42\x98\xee\x54\x26\x25\xd1\xb6\xaf\x30\xec\x22\x17\x3c\x1d\x5f\x83\xd5\x70\x42\x5a\x39\x2b\xab\xb4\xc9\x50\xe9\x05\x52\x70\x51\x11\x99\x8a\xe4\x46\xd3\x94\xca\x24\x23\xbb\x82\xe9\x6c\x10\x03\xa9\x36\x2f\x11\x2c\xb3\x37\x22\xa9\x6d\x64\xe6\x36\xd2\x99\x90\x2c\xd1\x3e\x46\xbb\x27\xdd\xb6\x8a\x87\xf7\x11\x33\x3c\x2f\xbc\xca\x56\x04\x56\x61\x79\x13\xb7\xbe\x09\xf3\x58\xbd\x48\x82\x65\x1e\x5c\xcc\x01\xbe\x78\x56\x3f\x95\xe1\xfd\x12\xa2\x46\xa8\x1d\xcd\x15\x66\x14\xaf\x5e\x3d\xa3\x0b\xf6\xa2\x53\xd0\x31\xfb\xbe\xe3\xaf\x16\x5d\x27\x23\x03\xe9\x52\xdf\x9f\xec\xfd\xd6\xe2\xc3\xcb\x91\xce\xd2\x90\x68\x46\x49\xdd\x27\x0b\x42\x53\xaf\xe5\xbc\x1c\x61\x10\x9b\x8c\x72\x90\xe2\x5b\x75\xc7\x67\x73\x79\x97\x04\xe4\xea\xc5\x4a\x72\x65\x96\x6f\xac\xd3\xf4\x63\xba\x15\xac\xcc\x0a\x8e\x33\xb4\xd0\x0b\xd4\xde\xb4\xf0\xbb\x43\x31\x52\xa4\x15\xcb\x14\xaa\xa5\xa4\xd3\x49\x52\x16\x87\xd7\xb2\x41\xbb\x7d\x0b\xa6\x76\x10\xec\x41\x02\xfa\x62\x50\xa8\xa8\x58\xee\x35\x2d\x96\x77\xcb\x40\xff\xe8\x71\xaf\x99\x0e\x15\x0a\x71\xab\x24\xa3\x29\x2d\x74\xac\x67\xd7\x7d\x69\xba\x9f\x56\x0c\x02\x17\xe6\x32\xe9\xd1\x2c\xe8\x93\x3e\x33\x4f\x1b\x0b\x56\xe8\x74\x6e\x86\xab\x28\xe9\xd8\x7f\x81\x40\x45\x74\xc2\x4a\x6c\x02\x9a\x4c\xa9\x8e\xac\x36\x21\xcb\x42\xc7\x41\x47\xea\xd7\x6b\xd6\xdb\xb9\x7e\xb9\xb0\x96\x14\xd7\xd6\x92\xe2\x92\x2d\x86\xd7\xa3\x56\xed\xa1\xf3\xd2\x58\x73\x39\x8d\xde\x25\x32\xe9\xba\xf4\xae\xd3\xde\x12\x65\x30\x07\xeb\xec\xc9\x60\x56\xb1\x09\xbd\x61\x73\x33\x16\xbd\x62\xbd\x9d\xab\x97\x37\x3b\x57\x5b\x5b\xc4\x75\x31\x1f\x5e\x8d\x3c\x74\x17\x36\x2b\xc9\x67\x7e\x57\x26\x33\x42\xef\x58\x6f\xe7\xee\xe5\x85\x05\xf7\x0e\x37\x9d\x0d\x2f\x86\x77\xa3\x11\x69\x15\x06\xcb\x73\x7a\x41\xc7\xf4\x86\x6e\xf6\x49\x95\xc7\x6f\x3d\xf8\x83\xc7\xbd\x86\x37\x05\x7d\x2a\xad\x26\x16\xe1\x5d\x16\xe1\x9a\xa3\x38\x65\xc5\x0a\x75\x3e\x6b\x58\x51\xd6\xb0\x22\xb5\x44\x0d\x88\x09\x6c\xfc\x94\x7e\xd7\x7f\x42\x6a\x3e\x07\xed\xd7\x9f\xde\xb5\xb5\xd0\xb2\xd0\x42\xa9\xa9\xfd\xfc\x99\x42\xee\x45\x4d\x34\xd2\x75\xc7\xac\xdf\x11\x74\x12\xb4\x78\xa1\x1a\x4c\x6a\x4a\x56\x2b\x11\xe1\xaa\xfd\x27\x50\xf9\x1a\x9b\x32\xea\x7a\x97\xcc\x86\x6a\xd0\x02\x01\x35\x53\xa1\x13\xba\xa0\xd7\x74\x73\x73\x0c\x1b\x01\x09\xb0\x2f\xa1\xc5\x9c\x95\x56\xd6\xba\x24\x76\x80\x27\xdf\x3d\x27\x9d\xce\x66\x4d\xf2\x9a\x83\x86\x2d\x62\x67\x4f\x65\x32\xa7\x97\xb4\xa4\x0b\x4c\x70\x7e\x58\xc1\x3e\xb8\xf3\x95\x9b\xf3\x15\x5f\xf0\x55\x8d\x8e\xa4\x2c\x8f\x65\xe5\x8c\xb4\xd2\x95\xb2\x72\x68\x46\x6a\x1f\x99\xc0\x5d\x16\x14\x21\xef\x44\xb1\xd0\x26\x7c\x91\x8e\x23\xc8\xd8\x8b\xa6\xd2\x37\x5d\xd4\xb4\x0b\xfc\x76\xe3\x2e\x50\x3b\xad\x7c\x18\xf4\x32\xd3\x23\xe5\x93\xd5\x22\x53\x5d\x88\x0e\xe2\xcc\xa9\x5b\x64\x73\x33\x57\x4c\x03\x5a\x85\x06\x2d\xdd\xe3\x00\x8b\x85\xb9\xaf\x86\x2c\x96\xe9\x52\xcd\xd0\x58\xd9\xe7\x4e\x36\x79\xbf\x38\xf9\xa2\xd4\x3c\xfd\x24\x1b\x4b\x17\x3c\x18\x1a\x72\x1f\xe1\x64\x86\xe2\xa7\xac\x8a\xa9\x0e\x2a\x97\xe5\x8d\x36\xce\x42\xb1\xe3\x72\x0a\xc9\xfd\xb2\x5c\x89\x46\xad\x36\x74\x6d\x02\x29\xe2\xb1\x6c\x2c\x8f\x48\xe4\x82\x48\x34\xd9\x9a\x7c\x76\xfa\x2e\x6b\x18\xf7\xcf\x0e\x96\x57\x58\x63\xe2\x95\xed\xb3\x30\x44\xc9\x90\x53\x39\x32\x59\x82\xbd\x71\x90\x88\x62\x8e\x95\x8e\xa4\xe7\x1b\x99\x75\x46\x77\x85\x24\xbb\x4c\xda\xea\x82\x69\xbb\x38\x8b\x36\xc7\x1e\x82\x29\x1f\xa1\x89\xe4\xbb\xb7\x32\xe1\xd4\x7c\xa0\xe7\x32\xc1\xf3\x22\x34\xf3\x81\xde\x69\xd6\xb5\x2b\x4f\x06\xd0\x2a\xa7\x99\x09\xc9\xb6\xa2\x9a\x31\x05\x66\x42\x0d\x5a\x0b\x44\xd0\xe9\xe8\xb1\x01\x62\x6a\xa3\xbb\xa1\xd4\x52\x54\xfa\xae\x22\xc4\x41\x46\x97\xe7\x81\x87\x07\x36\x49\x6c\xb7\x07\x7d\xfc\x9b\x0f\x7b\xa3\xc0\x86\xc8\x9b\xa4\xf6\x76\xa4\x77\xea\x91\x5b\x5b\x04\x99\xee\x79\x4f\x94\xa1\x1c\xad\x48\xbc\x81\x0c\x1f\x1f\x3b\x82\x4d\xd1\x33\x94\xa3\x56\x93\x95\xa0\xf1\xa7\x71\x76\x11\xc8\xad\x46\x91\xb1\x05\x84\x0f\x0b\x1c\x61\x6e\x8d\xf9\x29\xcd\x68\x01\xae\x7b\xce\x8e\xbe\xe8\x74\x92\x02\x52\x6f\xd5\x47\x22\x0f\xe9\x74\xa0\xc7\xe0\xfd\xf3\x41\x25\x8b\xa4\x5e\x33\x50\xd0\x15\xa6\x44\x62\x85\xaa\x45\x50\x78\x1f\xf5\x51\x82\x65\x14\x46\x0f\xee\x3c\x4e\xfb\x38\x40\x30\xae\xd3\x6b\xae\xf3\xc1\x2e\x8f\xcf\xd6\xc3\x44\x17\xc4\x17\xa3\x82\x28\x5d\xf0\x61\xee\x2e\xb1\x44\x92\x1d\x88\x4c\x5c\x74\x3a\x59\x83\x13\x44\xb1\xd5\xa7\x29\xa1\xd6\x99\xb7\xd3\x49\xec\x9f\xea\xf4\xa7\xde\x63\xa6\xb7\xc2\x8b\x65\x19\x48\xd1\xe6\x8a\xad\xdf\xa9\xee\x1a\x4e\x2b\x30\x12\x68\x20\xde\xad\xd4\x87\x6e\xb0\xba\xef\x2c\xbc\x34\x83\x5c\x9b\x58\x51\xf7\xc3\x7f\x09\x3a\xe0\xed\x23\x11\xbe\x70\x4c\x4f\x60\x21\xf6\xc3\x0a\x9f\x8b\x3f\x33\x24\x4d\x59\x61\xb8\xa2\xe3\x74\x06\xec\xc6\x1a\x3d\xc2\x0f\xdf\xad\xd4\x23\xd4\x99\x53\xd5\xb3\x19\x2a\x00\x0d\xd8\x53\x23\xd2\x4d\x95\x54\xbe\x0c\xd8\xa2\x45\xc5\x20\x19\xd4\x81\x4c\x16\x0a\xa1\x73\x96\x2a\x00\x7f\xca\xcc\xf9\xd2\xfe\x67\x49\x69\xd8\xbd\xba\x1a\xc1\x9c\x38\xc5\xd0\x7e\x31\x7d\xac\x94\x8f\x35\x8b\x6a\x4a\x94\xdc\x65\x63\xa4\x90\xc4\x8e\xfa\x06\xbb\xbd\x25\xc5\xea\x61\x49\x2b\x67\x99\x1a\xb0\xdf\x7b\xf2\x8c\xec\x8e\xbb\x69\xf9\xab\xf6\x2d\x33\x6d\xc9\x40\x7d\xb3\x3f\x2a\x1d\x00\x2a\x77\xe6\x35\xbc\x6b\x72\xf3\x91\xd6\xd4\xe9\x35\xcc\x01\x3b\x03\x80\xe9\x34\x94\x7d\x26\x35\x13\x9c\x1f\x9e\x7d\xc5\x06\xf9\x93\x41\xd7\x6e\x8f\xc6\xa4\x45\xc8\xbd\x8e\x6d\x35\xc9\x07\x93\x8a\x95\x66\xcb\xc6\x68\xcb\xf6\x8a\x70\xcb\x26\x0f\x6e\xd6\x78\xed\x66\xf9\x6e\xc3\x3d\x59\x34\xf5\x5b\x3d\x72\x0d\xf3\xae\xd6\xc9\x60\x8d\xe5\x43\x3e\x7a\x6b\xdc\xd3\xe2\xc3\x25\xa4\x3e\xc5\x2b\x74\x82\xe5\x03\x3a\xc1\x22\x5c\xf4\xb4\x41\x97\x94\x99\x09\x18\x7d\x52\x86\x67\x1b\x2b\x08\x3d\x5b\x2f\x42\x22\xb6\xc2\x2a\xae\x41\x77\x86\xfc\xe1\xb0\xd6\x23\x8d\xc9\x4c\x2b\x35\x70\xb1\x8c\xa6\xfa\xb2\x60\x05\xb2\xd9\x5b\x39\xa2\xbe\x50\x60\xcc\xb0\x47\xdd\x49\xcd\x1b\x2d\x37\xbc\xc1\x56\x1f\x4f\xe8\xfb\xd5\x4a\x67\xd4\xa9\x0e\x0c\x9f\x99\xbb\xec\x3a\x2d\x0f\x6e\x6c\xbc\x89\x82\x65\xe6\x3a\x0a\xf8\xf2\xc8\x9f\xcf\x47\xe5\x2c\xb0\x65\x52\xff\xfb\x75\x2e\x4d\x31\x41\x46\x0e\x6c\xf8\xfd\xde\x88\xc5\x40\x47\xb5\xbf\x4e\x2a\x8f\x41\xc3\x52\xb2\xd4\x25\x70\xdd\x29\x5f\xb1\xde\x4e\xb9\xbd\x4d\xcc\x93\x7c\x3a\x2c\x47\x74\xc1\xf2\x15\x17\xb4\x2a\x26\xa0\xb4\xd1\x7d\xaa\x9b\x7a\x4a\x37\x7b\xe6\xb2\x5e\xa8\xcb\x1a\x59\xc1\x2d\xb6\xfa\x74\x4c\x68\xee\x6f\x69\xfb\xe7\x70\x3a\x62\xe3\x60\xd2\x6b\xfd\xb8\x6a\xb7\x90\xd6\x19\xe9\x0b\x2a\x9a\x71\xc1\x7a\x3b\xc5\x4b\xc3\x1b\x5b\xd6\xaf\xd8\xda\x22\x1f\x64\x62\xf1\x1b\x56\x62\x58\x8c\x2c\x0b\xad\xfe\xcc\x69\x46\xf1\x41\xfe\x61\x8d\xcb\x6a\x88\xac\xc6\x82\xaf\x81\x18\xf4\x7b\xab\x6e\xdb\x3f\x23\xde\xc7\x96\x01\x46\x02\xf7\xda\x97\x62\xad\xf6\x05\x62\x46\x9d\xf0\x7c\xc2\x85\xa1\x7d\x19\x4d\xcd\x1b\x12\x8a\x3e\x05\xb9\xce\x6b\x1c\xe2\x99\x4c\xd4\x02\xa5\x24\x98\x9d\x95\xf8\x75\x44\x26\xac\x35\x70\x82\xeb\xe9\xfa\xd7\x65\x25\x75\xae\x7a\x5f\x76\xb1\x67\xdc\x0b\xb3\x51\x5a\x9a\xf7\x38\xac\x32\x72\x6e\x4a\xf8\xd1\xd9\x75\xd0\xae\x1b\x94\xd9\xa2\x40\xd9\x8e\x7b\xb4\x11\xb9\x5b\x2e\xea\x36\x44\x1e\x32\x56\x4f\x67\x5f\xf5\x68\x6e\x01\x5f\x35\x31\xc8\xb2\x5c\x46\xce\x38\xd9\x64\xdb\xcc\x63\x0a\xdb\xf5\x08\x03\xa9\xda\x63\xb9\x9f\xa6\xa0\x7a\x10\x37\x2d\xe9\x43\x88\x19\x74\x10\x7a\xe7\x0d\x3a\x98\xe8\x62\x02\x02\x3c\xf8\x04\x15\xc6\x3f\x5d\xcd\xb8\x98\xf2\x6e\x96\x5f\x16\x49\xfb\x53\xc9\x37\xfe\x65\x93\x03\xd3\x8d\x34\x9f\x6c\xfc\x4b\xd1\x86\x97\xf3\x54\x5e\xbf\x22\xff\xda\x90\xc5\x06\xc4\xa3\x00\xe1\x79\x43\x1a\x3e\xa9\xdb\x26\x54\x26\x6d\xf5\xad\xad\x59\x9a\x3d\xc9\xde\x5b\x1f\xbc\x8f\xb1\x0f\x1b\x0a\xae\xad\xe3\x0d\x9b\x87\xcf\x62\x9c\x4e\x43\x05\x88\x13\xd8\x33\xd6\xdb\xc9\x5e\x5a\x2a\xbf\x93\x59\x09\xb0\x60\xf9\x30\x1b\xa9\x2b\x76\x58\x6c\xf7\x47\xc0\xd9\xfb\xa0\xd1\x85\x89\xa2\xab\x7b\x1e\xa6\x23\x56\x56\x36\xb0\xb0\xf1\x1f\x02\x08\x06\x82\xea\x2a\x76\x51\x35\x35\x9e\x4f\x33\x99\xb4\xd5\xe4\x86\x05\xed\x76\xbb\xe9\x28\xfc\x5a\x6a\xa3\x16\x14\x4e\xda\xa6\xd5\x80\x95\x50\x92\xe3\xae\xd4\x75\xb4\xd2\x72\x90\x0f\x8b\xd1\xae\x64\xea\x3f\x03\x90\x2c\x1d\x45\x6e\xff\xb5\x4d\x3a\x9d\x52\x97\xab\xff\x0c\x6c\x4e\x2e\x80\xd0\xf7\x41\x53\xa6\xd8\xea\xae\xe0\x93\xc5\x98\x27\x86\x2a\x71\x23\x6c\xc1\x26\xbb\x63\xfd\x7c\xd5\xf3\x8e\x61\x05\xe3\xe7\x9c\x58\x25\xd6\xfc\xd0\x47\x75\x20\xc5\x8f\x32\x41\x37\x16\x4d\x49\x6b\x4f\x7d\xf1\xce\xe6\xee\x71\x9b\xbd\xb2\x21\xb9\x1b\x9c\x0b\xfa\xbd\x47\x3c\x42\x2d\x87\xd7\x23\xcd\xf7\x8c\x3f\x2b\xde\x94\x83\x45\x43\xfc\x4e\xb9\xd0\xac\xe1\xda\x77\xe2\xb1\x61\x1f\xcd\xeb\x14\x9d\x3c\xd0\xa6\x20\x84\x5e\x36\x3d\x01\x87\xd1\xa7\xa6\x74\x41\xe8\x7c\xdd\x53\xf1\x25\xb1\x6c\x0d\x30\x65\x83\x99\x65\xdd\x6e\x2a\x36\x47\x6e\xfc\x48\x02\xa0\x57\x6c\x66\xaf\x6e\x7a\x81\xf8\x83\x3b\x16\xf3\x3f\x57\x36\x16\x35\x3d\x67\x17\x31\x52\xde\x45\x5c\xca\x39\xa1\xfa\x13\x6c\xd4\x05\x56\xaa\xdb\xf3\x76\x1b\x65\x62\xbf\x88\x03\x0d\x10\x7a\xc0\x7a\x3b\x07\x2f\x27\xf6\x48\x1e\xd8\x23\xf9\x85\x4d\x86\x07\x23\xfa\x81\x8d\x87\x5f\xd4\x91\x3c\xd5\x00\x99\x23\xf9\x85\xb4\x6e\x87\x1f\x46\xec\xb4\xca\x2e\x93\x73\x62\xc7\x3b\x63\xbd\x9d\xb3\x97\x76\x16\x3b\x67\xb6\xb3\xf7\xec\x6c\xab\x4f\xf7\xd8\xf9\xf0\x6a\x78\x36\xb2\xb1\x0d\x36\x19\xdb\xeb\x74\xf4\x1c\x92\xf7\x74\x8f\x54\xfa\x6f\x04\xe0\xad\xb5\xcf\xf7\xd6\xfa\x70\xb9\x23\x29\xcf\x6e\xf1\x0d\xa9\x49\x50\xdf\x37\xf8\xa0\xad\xf2\x5c\xf0\xaa\x1a\xe6\x82\x0d\xb4\xff\x9a\x4d\x78\x2e\x33\x79\xe7\xbc\xc6\x40\x16\xd6\x76\x8a\x10\x45\xf5\x62\xea\xf3\x02\x26\x39\x2d\x8c\x0d\x88\x7f\x8e\x4c\x51\x20\x01\x2c\x7e\x7f\xbf\xda\x9e\x35\x97\x5c\x1c\x65\x65\x68\xe6\xf7\xfd\x53\xe4\x76\x02\xa5\xb8\x70\x75\xd4\x89\x98\x1f\x53\xac\x7f\xce\xbf\x48\xcd\xa8\x38\x1d\x90\x19\xf6\x50\xf2\x99\xe2\x2c\x14\x17\x25\xf8\x55\x56\xda\x6f\xf6\xa9\x0b\x59\xdb\xb7\x78\xf7\xcd\xc1\xdb\xbd\x4f\x47\x67\xe7\xfb\x7b\x1f\xf7\x5e\x1f\x1e\x1d\x9e\x1d\x1e\x9c\xb2\x65\x10\x5c\x06\xc4\x21\x17\x57\x46\xfd\x42\xef\x89\xea\xa7\x8f\x26\x03\x49\xc5\x70\x20\x99\xc1\x66\x9f\xa2\x10\x32\xea\x67\xc0\x12\xb8\xd6\x3a\x6c\x8c\x2a\xf7\xf1\x62\x7c\xa9\x0d\x14\xa3\xbe\x98\x08\x31\xaa\x2a\x8a\x0c\x33\xd8\xec\xeb\x5c\x61\xfb\xb2\x06\x7e\x3f\x00\xbf\x1f\x82\xdf\x0f\xc0\xef\x7f\x25\xf8\xfd\xb5\xe0\xf7\x6b\xe0\xf7\xd7\x81\xcf\xbb\xef\x0f\x8f\x0f\xdf\xef\x1d\x85\xbb\xb1\x6f\xef\xef\xcf\x72\x19\xcb\xae\x5e\x65\xbc\x2f\x2b\xfc\xcc\x6b\x34\xf4\x11\xdf\xfa\x29\xc7\x81\xc2\x50\xfd\x8d\x2c\xdf\xd0\xaf\x50\xce\x97\xdf\xc4\xb5\x6e\xdb\x7c\xef\x5e\xeb\x48\x8b\x07\xbb\xd6\x4d\xd6\xf6\x6a\x89\x5d\x90\xad\xd3\xbc\x08\xf2\x07\x07\xd0\x15\xd7\x0e\x10\x33\xe7\x8f\x59\x92\xa8\xcd\x43\xfd\xef\xbb\x5c\xa7\x0f\xf7\xbb\xff\xf0\x92\x2c\x82\xf8\xb4\x6b\x3b\xd4\x55\x1f\x82\x2f\xe0\x46\x1f\x39\x7f\xdc\xe6\x71\xfd\x3f\x6e\xfe\x9f\x1e\x86\x38\x7a\x6c\x0d\x73\x59\xfa\x1c\x56\x71\x4b\xf6\x59\xe7\x18\x3e\x91\x6c\x89\x34\x32\x4e\x22\xe4\xb7\x1b\x9f\xa5\x3a\x5e\x67\x07\xef\x3f\x1e\xed\x9d\x1d\x9c\x7f\x38\x3e\xfa\xed\xdc\x99\xe9\xb1\x13\x7b\xc2\x7e\x6f\xf6\x2b\xbf\x58\x8c\x3f\x73\xc9\xf8\x2e\x5c\x5a\x69\x59\x66\x57\x39\x49\x96\x15\xe5\x64\xb0\xac\xa2\x9c\xb3\xa8\x45\x90\xb4\xa2\xb1\x98\xc9\xa6\xcc\x1d\xbf\x9b\xf7\x2b\x5d\x0d\xb2\x77\xbd\xe1\x97\xe9\x62\x2a\xb1\xff\x23\xfb\xdd\x82\xfd\x66\x55\xb4\x93\x80\xad\x57\x82\xf9\x09\xbf\xf4\x09\x99\xaf\x21\x2d\x96\x38\x5b\x9b\x37\xd5\x1b\x6d\x46\x79\x53\x75\x10\x03\x81\xf2\xa5\x46\x79\x61\x7e\x49\x85\xbf\x94\x9b\x16\xc9\xd5\xf1\x49\x64\xe0\xb7\x09\x5b\x6c\x9d\xd6\x11\xec\x8e\x6d\xa5\x31\x4f\xee\xbd\x9e\x1a\xf3\xad\xea\x69\x52\x80\x99\x50\xe9\x32\x2c\x35\x3e\x02\xc3\x7d\x8b\xc2\x70\x78\xeb\x15\xe0\x1b\x0e\xa5\x5f\xcf\x09\x7c\x79\x6b\xa5\x4e\x50\xa2\xc0\xa7\xd7\xb2\xd2\xd6\x50\x3e\xe1\xfe\x70\x3c\x1a\x16\xdd\x6f\xca\xf9\x68\xab\x1f\x24\x38\xd1\xaa\x1f\x53\xdd\x59\x4c\xa3\xe8\x2d\x71\x91\x31\xf0\x89\x3e\x57\xda\xce\x05\x3d\x0e\xa1\xd9\x70\xe3\x98\xe9\x07\xa4\x25\xb3\x21\x53\xc0\xb0\xd0\x41\xb7\x5d\x6e\xf5\x5b\x69\xd7\xf6\x36\xa5\x25\x38\xc5\x1b\x63\x93\xe9\xb6\x8e\x1f\x8d\xe1\xb3\x55\x17\xd4\x38\x80\x4e\x18\x82\x93\x5e\x33\x9b\xae\x98\x5e\xb2\xc5\xf6\xd3\xbf\x5c\xb7\x26\xae\xcd\x25\xbd\xa6\x82\xe8\x70\xdf\xe9\x95\xc7\xa2\xbf\xf3\x64\x18\x8d\x83\x96\x7d\xa4\x5b\x5c\x40\x74\xe6\xf0\x68\xe9\xb5\x51\x25\x50\x45\x0f\x1c\xa7\x0e\x8a\x23\xe3\x6c\xa1\x8d\x30\x5f\x9e\xfe\x05\xf7\x67\xd2\xc1\xa4\x35\x24\x46\x5d\x41\x61\x65\xa3\x06\xd9\xe4\x4b\xd6\x58\x0e\x74\x04\x90\xb9\xa6\xe7\xb2\xdf\x4a\x9f\x9b\x03\x99\x48\x09\x63\x22\xe5\x65\x60\x01\xf3\xd9\xe2\x4a\xbe\xb6\xf0\xe5\x5e\xe9\x98\xbe\x62\xbd\x9d\x74\x7b\x9b\xc8\xee\xb8\x98\xdf\x25\xe9\x96\x6e\x40\xd3\xad\x8c\xb4\x4c\x63\xc6\x69\xee\xfe\x92\x08\x19\x19\xaf\x2a\x67\x85\x67\xce\x1e\x44\x3a\x6d\x5c\xa9\xdd\x77\x72\x10\x97\xb8\xd6\x54\xfa\x96\x78\x31\x77\xbf\x31\x8d\xf4\x47\x6f\xf3\x87\x88\xde\x2f\xd2\xb9\xc2\x51\x85\xc3\x5a\x61\xa0\x85\xa9\xca\x18\xaa\xa1\x15\xe5\xd4\xc4\x34\xb2\x4b\x2b\xd1\xba\x72\x08\xf3\x53\xcc\x13\x9f\xd5\xed\xb0\xf1\xa8\xab\xf5\x60\x3d\x3c\x96\xfd\x15\x13\x01\x48\x2f\x8d\x7e\x3a\xeb\xf3\x52\xc7\xe5\xb1\x87\x51\x84\xc7\x8e\xfa\x61\x44\xd3\x30\xe7\xab\xfc\x1d\xf1\x00\x81\xe5\xa6\x3b\xe6\x22\x3e\xe2\x2b\xc7\xca\x28\x44\xa1\xdb\x4d\xfe\xe4\x90\x64\x90\x3c\x66\x0d\xf0\x29\x46\x91\xe7\x55\x2b\x67\x27\x79\x7f\x9f\xa0\xcf\xec\xef\x26\xb5\x85\xef\x89\x10\xca\xcd\x31\x53\x9b\xad\x66\x33\x90\x76\xaf\x05\x75\x4f\x20\x12\xe5\x4f\xe7\x2f\x7b\xf7\xf7\xfc\x15\x13\x90\x60\x5e\x5f\x07\x10\x07\xdf\x61\x35\x4e\x8b\x85\xf0\x2c\x1e\xbb\xb2\x11\xba\x3c\xd5\x46\x5e\xeb\xf2\x55\x0f\x01\x25\x2c\x50\xb9\x01\xca\xfa\x8d\xa2\x5d\xd8\x66\x01\x1e\xb3\x7c\x4b\x3a\xc9\x5e\xab\xd5\x25\x68\xd2\x33\x9d\x5d\x4c\x51\x90\x82\x40\x76\xc3\xd6\xa3\x90\x0e\x16\xdc\x7f\x8c\xd6\xdd\x17\x80\x46\x3b\x24\x48\x34\x9a\x84\x0d\xda\x53\x6b\xcb\xa4\x89\xf7\x2b\xa8\xd8\xf2\x51\xb3\xb8\x3d\x58\x47\x0d\x91\xb1\x6a\xf1\x80\xa5\x53\x8b\xc4\x3a\x69\x3c\x50\xb0\x56\xc2\xba\x3a\xeb\x93\x15\xef\x61\x8c\xc0\x18\x5f\x69\x8f\x34\x50\x6a\x3f\x92\xe2\xcb\x9a\x98\x16\x5f\xa3\x3b\x4b\xe7\x28\x7d\xe9\x87\x4b\x82\xd4\x95\x3e\xf8\x52\x89\x50\xd3\x53\xf8\x20\xff\xbf\x5d\x2e\x64\x00\x63\xa2\x6d\xcd\x53\x51\x72\x88\xe9\x40\xfb\x3d\x4f\x0a\x15\x2e\xe7\x06\x97\xe5\x30\x37\x90\x7e\xc0\x82\x92\x0b\xc4\x04\x39\xbf\x35\x92\x4f\x3e\x3a\x7a\xbc\x27\xae\x20\x75\x40\xa9\x33\x94\x59\x2e\xf1\xed\x57\x52\xc0\x18\xdb\xcc\x57\x78\xdf\x09\xe9\x83\x29\x31\x0f\x62\x11\xb9\xfa\xb3\x84\x71\x15\x31\xfa\x93\x60\x78\xaa\xe9\x24\xd8\x47\x00\x93\x03\xe5\xcc\x2d\xe5\xfc\xef\xc2\xe4\xc8\x6a\xbc\xd0\x85\x1d\x4f\x77\x88\x16\xdf\xf6\x93\xb9\xb6\xba\x4a\x16\x95\x6b\xff\xd3\x46\xae\xaa\x46\xf3\x54\x25\xe8\x25\x22\x1f\xf0\xad\x89\x70\x9b\x69\xe2\x01\xfd\x79\x91\xc5\xe9\x5d\x2e\xaf\xb9\xcc\xc6\x90\xbf\x56\x91\x73\x35\x82\xa9\x18\x8d\x61\xbe\x36\x8d\xe2\x96\xcc\x8f\x89\x47\xd9\x93\xae\xfb\xeb\x14\x29\x42\xe0\xdd\xd4\xf1\x1a\xd8\x14\xaa\xb2\xf7\x42\x9c\xfb\x73\xb3\xaf\x2d\xf0\x0d\x45\x0c\xae\x18\x9a\xb1\xc4\xe4\x10\x32\x00\x79\x46\xa6\x24\xa8\xf7\x96\x1d\x5e\x07\x39\xb5\xf7\x10\x64\x5f\x6e\xbc\x87\xfe\x88\xef\x21\x6d\xaf\x5f\xdb\x1e\x1d\x16\xd2\x50\x1e\xcf\xf3\x70\x77\x23\x59\x0e\x12\xda\xaf\xbc\x96\xa8\x29\x2f\x2a\xa6\xd9\x48\x9b\x10\xb2\x64\xbd\x9d\xf2\xa5\xdc\x29\xad\xaa\x77\xca\x8a\x61\x39\xda\x81\x99\xa4\x6e\x86\x53\xd2\xe9\x24\x39\xd3\xee\x21\xc9\x94\xd0\xcc\x87\xb5\x41\x94\xb5\x1c\x11\x52\x85\x27\xe8\x61\x62\x92\x36\x60\xef\x9f\xba\xdb\xd6\x73\x0b\x0d\x77\x5b\x6e\x96\x41\x52\xb9\x25\xd0\xdd\x16\x61\x71\x40\x7b\x75\x8b\x3e\xa9\x2c\x12\xa2\xb8\xdf\x7f\x6d\x6f\xb9\x8b\xf1\x8f\xc6\x8b\x31\xbe\xff\xcc\x61\xaa\x5d\x86\x21\x1d\x72\x92\x9a\x9e\xc1\x2c\x9d\xeb\x45\x52\x6b\x34\x83\xcc\xa8\x78\x71\x66\xe9\x1c\xaf\x8a\x45\x0c\x74\x6d\xc5\x4b\xa2\x3a\x5c\xf3\xde\x27\x82\xf7\x3e\x3e\x14\xc3\x6c\x34\x82\x17\xbf\xca\xaf\xd9\x57\x1d\x43\x0c\x99\xc4\x90\x99\x7b\x14\x94\xfc\xcd\xa7\x2b\x57\xa7\x4b\xb8\x9b\x31\x89\x4f\x00\x6f\xee\x2e\xb0\xe7\xd6\xd3\xe2\xc1\xb4\xf2\x21\x87\x69\xa9\xc9\xb9\x0b\xd6\x1e\x58\x9c\x8b\x0f\x07\x7a\xef\xa8\x0d\xf7\x97\xb0\x42\x87\x49\x78\xff\xfe\x61\xef\xdf\xd7\x8d\xf7\x6f\x96\x4b\x2e\xf2\x74\x0a\x0f\x5f\xc1\xd9\x40\x96\x15\xe8\xb3\xad\x7f\x16\x70\x86\x2b\x6f\x9e\xf0\x52\xd5\x97\xfd\xfa\x2b\x79\x65\x57\x6b\xee\xea\x47\x80\xda\x20\x6f\x44\x53\x5f\x29\xe5\x34\xdf\xd6\x1a\xce\x62\x8d\xd0\xb3\x02\x36\x2c\x0b\xfd\x27\x20\xda\x2b\xb8\x79\x47\x1a\xf6\x55\x5f\xb5\xda\x51\x2b\x3c\xb1\x61\xe5\xaf\xa6\x68\xf1\x58\x88\xa8\x3d\xfd\x0b\x26\x6b\x5f\x7f\x44\x6d\x66\x94\xb8\x8a\x82\x11\x4e\xa3\x0b\x2b\x0b\xbe\x18\x6b\xae\x51\x7d\x1f\x3e\xfd\x8b\xa2\x82\x60\xac\x66\x7e\x6e\xf5\xa9\xf7\xb5\x81\x0f\x4f\x94\xfc\x83\x7a\x55\xf7\x90\x0e\xcc\x3b\x4c\x69\x41\xb3\x51\xf3\x85\xfa\xa3\x4c\xe2\x7b\x54\xaf\xb5\x5e\x77\x84\x07\x11\xb9\x44\x25\xd1\xb0\x3a\x39\x77\x1d\x8f\xd0\x92\x28\xea\xfb\x49\x02\x1f\x62\xe8\xfe\x8f\xab\xb4\xb1\x1a\x63\x39\x06\x2d\x92\x79\x2c\x41\xfa\x6f\x6e\x14\xa2\x9c\xd2\xac\x22\x02\x60\x08\x0b\x3e\xa2\xf1\xa7\x7e\xed\xd3\x68\x64\x27\xf8\xcb\xba\x58\xc8\xe8\x6a\x43\x7a\xd3\x40\x65\x1a\xb1\xd8\x91\x28\xb6\xd4\xca\x2f\x5f\xdf\xbd\xeb\x22\x15\x59\xd4\xbf\x97\x87\x10\x2d\x0e\xc9\xf0\x2f\x5a\xed\xfd\x6f\x49\x7f\x95\xf4\x1b\x1d\x2c\xeb\x8f\x07\xc4\xc8\xf0\xb8\xd3\x77\xba\xd5\x03\xc2\x27\xa1\xbf\xe9\x7a\xbf\xd4\xea\xbd\x53\x23\xd3\x1e\x69\x71\xd7\xe0\xdd\x29\xfb\xcd\x5e\x10\x7f\x6b\x5c\xd7\x66\x2d\xcf\x35\x4f\xe7\x76\x55\xe7\xa2\xb8\x12\xe9\xcc\xae\x2b\xff\xa2\xa8\x81\x8b\x33\x6d\x1f\x81\x9d\x90\x30\x5e\x08\xc1\x73\xf9\x61\x7e\x9a\xfd\xa1\x6e\x03\xb0\x8a\x3b\x31\xb5\xea\x42\xb3\x69\xad\x64\xe6\x69\x91\x4e\x7c\x45\x87\xd7\xb8\x0e\x93\x8a\x72\x7f\x1c\xbb\xb7\x13\x5f\x08\xc9\x79\x46\x8c\x57\xc8\x1a\x00\xcd\x2c\x8a\x83\x59\x6b\x2b\xd2\x11\xa1\x8f\xaf\x7e\x39\x1f\x11\xda\xf8\x99\xd5\xbf\x96\xf3\xd1\x76\xbf\x9a\x17\xf3\x00\xac\xb8\x4a\x43\xc3\x4b\xd5\xb0\x61\x18\x91\x9a\xda\x1a\x56\x9d\x45\x7f\x1d\x38\xbe\x5e\x9f\x54\x6e\x6a\x7f\x6e\x95\x2a\x6b\x18\xbc\x7a\x36\x11\x7c\x81\x25\x71\x05\xf6\x01\x28\x63\xfe\xc7\xb1\x95\x54\x84\xa6\x37\xa4\x72\x7f\xae\x40\x16\xbd\xd7\x5b\x7c\xbb\x8e\x71\x15\x98\x7f\x34\xa2\x87\x83\x2a\xee\x88\xc6\xa0\x28\xf4\x57\xab\x95\x4e\x26\x02\x00\xd2\x60\x9c\x15\x0f\x74\xec\xe0\xb6\x09\x8c\xea\xb3\xac\x2f\x67\xce\xbf\x80\xe9\xbc\x09\xc3\x64\x54\x40\xa6\xd6\x80\x53\x73\xfe\x70\xf0\x75\x03\xb7\xbb\x25\x45\x7c\x4b\x6e\x28\xfe\xb6\x80\xec\x50\xda\xe8\xb8\xe1\x68\xe6\x90\x85\xaa\xb5\x76\x85\x59\x46\x73\x67\xae\xf8\x61\x11\x1e\x4c\xfb\xfd\x30\xcf\x6d\x6a\xd0\xfa\xa7\x25\xf7\xd9\xaf\x76\x83\x66\xe6\x63\xc2\xc9\x20\xf8\x7e\xaa\x13\x59\x85\x1d\xfa\xca\xcb\xf2\x36\x93\xe3\xeb\x84\x83\xdd\x25\x59\x8e\xd3\x92\x6f\xf4\x06\xc1\xa3\x89\xa7\x00\x2d\x28\xee\x87\xc5\xee\x20\xea\xd2\xa7\x41\xa9\x1e\xbb\x5b\xcc\xfb\xa6\xf8\x49\xbd\x78\x15\x6e\x9b\x16\xcf\x82\x16\x1a\xdf\x51\x87\xdf\x0d\xc2\x35\xd7\x98\xa2\xcb\x9e\x37\x94\x9d\xd9\xe6\x55\xd5\xb4\x46\xcb\x9f\xb9\x4f\xf1\x25\x29\xa7\x66\x65\xec\x7d\xfa\x73\xcd\x2e\xd3\x04\xbb\x89\xa2\x0f\x0e\x72\xb6\xd9\xaf\x98\xd0\xba\xe1\x4b\xb5\x42\xa7\xfa\x95\x82\xdf\x6e\xc8\x2e\xfc\x6d\xae\x80\xfc\xc6\x5e\x14\x93\x62\xa6\x4d\x31\x21\xb3\xaf\x71\xed\x8c\x3a\x66\x79\xc5\xbf\xf0\xf1\x42\xfa\x2c\xe3\x4b\xdf\xbd\x53\x6d\x2a\x31\x4b\x9f\x22\xa1\x9f\x1d\x77\x36\x45\x37\x2b\x0f\xb4\x7e\x76\x27\x48\x80\x06\xcd\xbb\xd1\xc9\xf1\x56\x63\x39\xce\x82\xa6\x1a\x90\x81\x30\x39\x43\x80\x59\xbb\x34\x94\x0b\xaf\xb5\x87\xc8\x9e\x93\x90\x52\xe9\x21\xcd\xa7\xca\xc2\xb8\x8c\xdb\xea\xec\x0f\xfc\x76\x43\x68\xfc\x27\x95\x89\x6c\x89\x7b\xd1\x26\x81\x07\x5f\xc6\x7c\xae\xb3\x0f\xd3\x5a\x37\x1a\x58\xde\x85\xf7\xf2\x2c\xbf\xfa\xe5\x3d\xfb\xd9\xde\xe4\x3f\xad\x7c\x90\x07\x0f\x78\x9f\x29\x62\x31\x03\xd3\xa1\x0b\xb5\x8b\xb2\xd2\x1f\xea\xe6\x02\x61\x45\x9b\xf1\x59\xbb\x3e\xf9\x17\xae\xbf\x7f\xa5\x61\x78\x08\x8b\x36\x97\x0c\x63\x39\xc1\xdb\xa7\xb1\x92\x06\x33\x05\xc1\x73\xcb\x56\x58\x0b\xeb\x6a\x9e\xaa\xad\x70\x41\xea\xc2\xc7\x58\xa8\xd4\x8d\xaa\x54\x97\x99\x28\x25\x84\x31\x6f\xac\x8e\x8a\xab\x69\xba\xae\xa6\x2f\x0d\x4c\xb6\x39\x60\x68\x00\xb6\x8e\x7f\x63\x97\xea\x1f\x7e\xa9\xfe\xde\xc4\x74\x65\x76\xa9\xec\x4f\xbc\x2a\x52\xe0\xd0\x9a\x5a\x38\x90\x6b\x6d\x28\xaa\x49\x36\x39\x74\x01\x5b\xf7\x0d\x48\x3a\x81\x5f\xdd\x56\x41\x75\x46\xad\xa2\xd6\xc2\x4f\x1e\x9e\x21\x1c\xa3\xaa\x86\xb9\xf6\xd1\x47\xf2\x01\xb7\x26\xeb\x92\x9a\xfd\x76\x67\xfb\x44\x9f\x42\x73\x35\x1d\x19\x94\x4b\x04\x04\x73\x90\xda\x2b\xc6\x7e\xa3\xb9\x12\xe0\x86\x23\x6a\xcc\x09\x1c\x6a\x0c\x47\xad\x0f\x89\x16\xf7\xba\x8e\xa0\x80\xc9\xa3\x3a\x74\xf6\xa0\x24\x45\xe4\x0e\x01\x23\xd3\xa8\x52\x4a\x2a\xd2\x9d\x88\x62\xee\x36\x8d\x0b\xb7\x69\xff\x58\xc1\x29\xd3\x22\xdc\xb8\xa1\xe5\x01\x3f\xf3\x3b\x8b\xb8\x33\x3e\x2b\x2c\x2b\x0c\x62\x83\xd5\x21\x08\x2e\xd3\x2c\xe7\x13\xb6\xd9\xb7\x22\xfc\x84\x7f\x61\xdb\x7d\x63\x97\x75\xe2\x75\x91\x9e\xc9\xb0\x4d\x7a\xa8\xc3\x28\x5f\x06\xf1\xe3\xfa\x12\xf5\x8b\x54\xe5\x75\xb1\x98\x4e\x4e\xf8\xac\xb8\xf1\x18\xbe\x19\x74\xad\x88\x02\x64\x3f\x89\x61\xb4\xcb\x22\xc5\x03\xb8\x1c\x2f\x8a\xc5\xe6\xcc\x5b\xbf\xda\x25\xd0\x08\x3e\xcd\x4a\xb9\x8d\xcf\xbe\x3a\x66\x60\x2b\x2b\xf9\xc4\xc7\xde\xd5\x65\x9a\x87\x79\x9f\xce\xe1\x16\x7a\x9f\xce\xad\x83\x86\xf8\xcc\x4d\xbc\x4c\x64\x79\xf2\xc0\x41\x59\x69\x6c\x54\x80\x9a\x5c\x31\x63\x59\x78\x8e\xf4\x61\xd0\x3b\x15\x20\xa3\xb3\x8e\x88\xc0\x34\x2f\xad\x9f\xf9\x1d\xe5\xab\x0f\x66\x7d\xda\x6b\x02\xf7\xd2\x3f\x7d\x8c\x21\x89\x8f\xdf\x86\x81\xa4\x78\x4c\xfc\xa6\xb8\xd9\x10\x78\x58\x1b\x60\x11\xa3\x28\xd2\x27\xdb\x69\xfb\x27\xc5\xcc\xea\xfa\xf1\x86\x14\x3e\x5d\xa7\xce\x58\xde\x26\xad\xa2\x9b\xe5\x25\x17\x52\xe7\x36\xcd\x62\x72\x4d\x53\x9a\x21\x4a\xab\x69\x84\xd1\x81\x94\x77\xf9\xd8\x6e\x5b\xd4\xac\x2b\x00\xad\xf5\x2e\xa5\xa4\x86\x16\xb4\x34\xd1\x94\x1f\xb9\x70\x0d\xa8\xb8\x62\x4f\xd0\x8a\xea\xc0\xca\x80\xfd\x28\xcb\x2a\xa9\x34\xdc\xb5\xf5\xe7\xd4\xe1\xc9\x40\x52\x3b\x36\x52\x22\xf7\x68\xc6\x7a\xb4\x60\x9b\x7d\xcf\x0d\x39\xf2\x87\x6f\x26\xf8\xcf\x51\x56\x4a\x36\x1c\x99\x24\x61\x10\x71\xc0\x1b\x6e\x5b\xcd\x16\xb9\x10\x3c\xfd\xec\x14\xee\x25\x84\x99\xa0\xcb\xcf\xfc\x0e\x42\x40\xed\x38\x9e\xa9\xec\x74\x20\x26\x80\xa7\x02\x3b\x44\xd5\xde\xda\xca\x47\x2d\x1c\xbf\xb7\xec\x74\x34\xc5\x63\x6c\x4a\x10\xd9\x00\x33\xf0\x92\xa6\x84\xe6\x5b\x5b\x2e\xb5\x93\xec\x5e\xa7\x65\x32\x75\x11\xa5\xa4\x76\x42\x04\x18\x17\xfa\x64\xbd\xcc\x74\x37\x6a\x3f\xa1\x93\x05\xc4\xc7\x34\xce\xc2\xcc\xd4\x72\x53\x18\x2b\x0a\x3a\x61\xf9\x56\x7f\x67\xf2\x32\xdb\x99\xe8\x38\x14\x10\xf3\x40\x0c\x27\x23\x07\x3e\x59\x8e\xd9\x66\xaf\x05\xf3\xaf\xa0\x78\xbc\x9b\xc4\xf0\x2e\x00\x5e\x96\x6d\xf5\xad\xbe\x35\x82\x42\x4d\x46\x31\x62\x6a\x3a\x85\x23\xc4\x1a\xa3\xa1\x1a\x84\xf2\x0c\x23\x5c\x89\x86\x08\x57\x62\x78\x3d\x6a\x01\x14\x97\x0e\xc2\xdd\xc4\xf7\x38\xe1\x53\x2e\xf5\xc0\x97\x84\x0c\x54\x25\x20\xcc\x56\xbb\x5a\x54\x08\x6a\xc7\x46\xc7\x38\xd4\xe2\xc1\x45\x20\xf5\x45\x40\x79\x78\x73\x48\x7b\x73\xf0\xe0\x8a\xb1\x84\xce\x99\xd3\xe9\xb0\xf4\x0a\xa1\xd1\x7c\xdd\xd8\x1e\x97\xbd\xaf\x9a\xf3\x8e\xb4\x0c\x40\x41\xf1\x01\x48\x3d\xd2\x97\x96\x92\x18\x4c\xe4\x74\xc1\xfc\xc3\xe9\x2e\x3a\xce\x03\x89\x59\x36\x3a\x66\x47\xdd\xcb\x42\x18\xba\xaa\xcd\xa9\x93\x02\x18\x89\xa5\x31\xa6\x1f\xe4\x35\x22\x03\xa2\x42\x76\x31\xcd\xf2\xab\xc1\xa2\x22\xad\xcc\xb2\x1b\x05\x1d\x13\xc7\x4d\x48\xf6\x6a\x29\x43\x46\x81\x38\x71\xda\xfb\x3f\xa4\x94\x93\x56\x6e\x56\xcb\x6a\x1a\x69\x69\x33\xbf\x51\x01\xb7\xc0\x54\x31\x32\x86\x61\xc9\x49\x45\x2a\x87\x59\x38\x8a\x0e\xf5\x7b\x98\xfd\x17\xf6\xd0\x1b\xc6\xec\x5e\x25\x1c\x53\x45\x32\xe0\x88\xcc\x76\xd1\x82\x6c\x32\x96\xe4\x4c\xe0\x55\x26\x9d\x8e\x6a\x0e\xfe\x85\x7a\x9a\x99\x9d\x66\xe6\x90\x02\xa1\x2c\x27\xcb\xcf\x09\x27\xf4\xc2\xe5\xd7\xf3\x37\xa2\xae\xa6\x2f\x45\xc7\x6d\x09\xb1\x42\x84\x29\xe6\x4e\x87\xcd\x2d\x97\xa9\x3d\x78\x5c\xe0\x62\x23\x9e\xb1\x5e\x28\xa0\xd9\xcf\xbc\xa6\x51\xc1\xac\x7d\x31\x2f\x87\xb8\xfa\xd6\xd6\xa8\x81\xa9\x6d\x1c\xdf\x84\x33\x8a\x3f\xd7\xa5\x39\x3b\xc9\xbc\x36\x49\xa4\xc9\x46\x42\xf4\xc2\x20\x5b\xb3\x7b\xa9\xe2\x52\x59\xee\x31\x89\x9e\xea\xbf\x12\xc2\x5e\x5d\x24\xa8\x01\xe8\xa9\x84\x3e\x10\x7c\x85\x8c\x2f\x41\xc6\x77\x58\xc2\x77\xeb\x55\x36\xfb\xd5\x80\x53\x48\x52\x21\xa8\x05\xcd\xbd\x09\x29\x36\xec\x67\x99\x08\xda\xd0\x77\xe5\x4f\x92\x95\x17\xfe\x3f\x22\xbe\x35\xed\xb0\x28\x6e\xc1\x81\x73\x43\xb3\xc9\x1b\x39\xbf\xe1\x62\xe3\x1a\x52\x04\xb4\xed\x16\x66\xf1\x16\x62\xe3\x33\xfd\x7e\xa3\x56\x24\xd5\xea\x11\x97\x92\x02\x25\x8a\xfb\xdd\xb8\xba\x42\x37\x69\x2e\x4b\x62\x53\xdb\xf4\x70\x72\xba\xdf\x0d\xcb\xf3\x7b\xa9\x6a\x8e\x75\x8e\xc4\x4a\xbf\xb4\x59\x92\xbb\x21\x94\x0c\x64\x95\x7e\xce\xf8\x4b\xf8\x78\x57\x8c\xef\xe4\x2f\xe5\x8e\xba\xb3\x0c\xf1\xd6\x2a\x28\x9d\x6a\xd7\xea\xfa\x44\x05\x76\xbc\x51\xda\xd2\xae\xfb\x58\xdd\x8a\x4c\xf2\x9f\x4a\xa7\x2b\xb2\x6a\x97\xdf\x5d\x96\x1d\xfb\x13\xc6\x10\x78\xde\x5d\x68\x7c\x92\xde\x26\x9c\xc2\xc4\x79\x1e\x39\x67\xea\xee\x7d\xce\x21\xf7\x50\xbc\xae\xfd\xe1\x6c\xc6\x27\x19\x04\x6b\x11\xb6\x8b\x33\xb1\xe0\x61\x76\x3e\xdc\xb8\x6f\x6a\xbd\x4d\xa7\xe5\x9a\x6a\x3d\x53\x0d\xd2\x1c\xad\xac\xf5\xc4\xd4\xfa\x94\x43\xe8\x0e\x3e\x59\x5d\xf5\xa9\xa9\xaa\x7f\xc9\x55\xd5\x24\x3c\xaf\xfd\x54\xda\x07\x36\x81\x13\x07\x5e\x71\x09\xb5\x48\xa0\x9e\xfd\xbd\x1c\x36\xb8\xae\x0a\x32\x02\x6f\x27\xb7\x9e\x8f\xe8\x0f\x75\x13\x2c\x2c\x7e\xf1\x13\xac\x77\xff\x50\x17\x59\xe9\xa1\xd8\x5d\x0f\xe3\x60\xe5\x98\x81\x08\xaa\x07\x33\x9f\x68\x88\x75\x8a\xe2\xaf\xb2\xb9\xd7\xed\xa6\x1c\x91\xdf\x42\x34\xba\x5f\xe8\xf0\x03\xb1\x4e\x33\x0c\x4e\x10\x97\x3a\x0a\x5d\x2b\xd1\x89\x73\x6a\x9f\x21\xbd\x2c\xfa\x6a\x61\x4a\x6b\xf4\xc4\xc4\xf1\x5b\xce\xc7\x83\x8c\x6a\x37\xf5\x34\x74\x03\x9c\x9b\xc7\xee\x99\x53\xce\x5a\x75\x9a\xbd\x28\x35\xed\x34\xda\x5a\xf8\x36\xfc\xb7\x1c\xc1\xf8\x85\xbe\x45\x86\xbf\x9a\xdf\x01\x94\x65\x0f\x99\x14\x94\x7d\xf4\x43\xe2\x12\x89\x4b\x6e\x7a\x5e\xec\xbe\x61\x30\xab\xd5\xda\x48\xf7\xa2\x38\x1c\xc3\xdb\x9d\x36\xb9\x15\xbc\x94\x85\xe0\x38\xf4\x9b\x00\xe0\x32\xa1\x84\xa0\x9d\xdc\x9b\xce\xe4\x96\x83\xce\x18\x87\xa0\x7c\x71\x8c\xd8\x0c\xc4\x3c\x85\x89\xf6\x00\x10\x08\xf6\xec\x8f\x5a\xbe\x82\x8c\x64\x84\x0c\x36\xb5\xb5\x86\xa9\x0d\xf4\x24\x27\x83\xcd\x3e\xfe\xaa\xe9\x47\xae\xc3\x41\xe2\x02\xa0\x18\x39\x19\xf8\x44\xec\xb6\xc4\x53\x89\x9c\x0c\xcc\xb7\x9f\x4a\xf0\x9b\xc5\xd1\xe9\xd4\xc2\x24\x82\x0e\x7b\x74\xbb\x4f\xb9\x57\x29\xf4\x46\xfa\x91\xee\x27\xaf\x0a\xd2\x8f\x0d\xb6\xa3\xad\x2d\xb3\xa6\xe6\xe9\x90\x72\xf4\xaa\x67\x68\x40\xdc\xcc\x95\xad\x6a\x0c\xb3\xaf\xb7\x83\xcf\x71\x1b\xdd\x42\xaf\x4c\xbd\x89\xfe\xde\xdc\x46\x67\x93\xab\x35\x81\xcf\xcd\x2d\xfc\x62\xd6\x9b\xf9\xb2\xe6\xb6\x9a\x62\xd5\x9a\xa9\xcf\x4d\xcb\x30\x59\x40\x6e\xee\xe8\x82\x8f\x3a\xc6\xaf\xc4\xe6\xca\xac\x0f\x1e\x5d\xb0\x41\x6d\x09\x4f\xa8\x86\xf2\x87\x43\xf5\x6d\xc6\x75\xd4\x4a\xdf\x12\xd1\x00\xf8\x5e\x40\xbe\x55\xea\xb4\x55\xf8\x49\xea\xd1\x43\x04\x8f\xbe\x8f\x1f\xe8\xf1\x03\x7c\x55\xc7\xda\x19\xdd\xbf\xff\x46\x43\xf4\x82\x4d\x68\x5a\xa0\x6d\x85\xd4\x38\x19\xdc\xe3\xfb\x5a\xb1\x12\xb6\xc7\xaf\xe8\xa9\xa1\x87\xab\xc8\x5f\x33\xb2\x15\x46\x0d\x2e\x23\x54\x83\xfe\xb6\x38\xb1\x2e\x9f\x4d\x6e\x10\xab\x5b\x5b\xca\x21\xb6\xa4\x42\x74\xc4\x57\xe2\x4b\x54\xd7\xf5\x85\xce\x12\x2a\x30\x02\xc2\x9e\x86\x54\x30\xb9\x1d\x3e\x22\xe3\x4e\x20\x1a\x4d\x70\xbf\xeb\x52\xab\xdc\x90\x85\x8e\xd0\xe1\xc0\xb0\x71\x6a\xa6\xc5\x95\x5d\xbd\x60\x1e\xc6\xf4\x2c\x98\x28\x8d\x81\x22\x55\xd5\xb5\x77\xcc\x8c\xb4\x6e\x4c\xd9\x7c\x3c\x62\x19\xbd\xf1\x35\xd9\xcc\xd3\xdc\x1b\xdf\x1f\x33\x5a\xdd\xe1\xc4\x3c\xeb\x9b\x17\x78\x30\x0b\xd0\x25\xd7\x51\x89\x63\xee\x57\x5f\xc8\x8b\x91\x71\x27\x05\x96\xd9\x68\x2c\xd5\x57\x7c\xd7\xeb\xc2\xb9\x29\xbc\xd4\x57\xf6\xb1\x16\x0b\x87\xa5\xfe\xf9\x37\x99\xdc\x58\xf8\x28\xb7\x20\xd0\x25\x04\xec\x79\xcd\x2f\x0b\xc1\x07\x9c\xbd\xfa\x99\x77\xd1\x17\x2d\x32\x72\x42\xe1\x1b\xa8\x62\x55\xa5\xa5\xad\xa5\x95\xb3\xa6\x52\x55\xc1\x72\x10\xab\x99\xb2\x77\x3b\x5b\x56\x7a\xe0\xe9\x08\x09\x17\xbe\xdc\x58\xc2\xa9\x59\x87\xdc\xd9\xb0\x1c\xe9\xfd\x83\x0a\xf3\x71\xbd\x34\xb4\x12\x82\xcd\x22\xda\x74\x28\x32\x40\x43\x41\xb6\xb8\xd1\x0c\x07\x11\x2c\x25\x01\x3b\xa2\xa8\x95\x4f\x3b\xeb\x42\x05\xd9\xe0\x78\x80\xe7\x41\xaf\x4b\x9d\x97\xac\xe8\x66\xe5\x51\x71\x7b\xc4\x6f\xf8\xd4\x42\x46\x12\x4e\xc8\x5a\xd0\x39\x69\x59\x03\x05\x63\x9b\xa0\x70\x2d\xb4\x4f\x28\x7b\x2d\x57\x12\x9a\x26\x94\x7d\x57\x22\xc3\x36\xd2\xb7\x91\x61\x1b\xe9\xdb\xdc\x84\x6d\x6e\x7a\x55\x15\x4e\xd4\x1a\x4f\xac\x99\x9e\xd6\x72\xa8\x89\xd5\xec\xb1\x68\x38\x25\xcb\x42\x4a\xad\x63\xc5\x73\xb2\x0c\x65\x5c\x24\x4d\x2b\x59\x6f\x25\x4d\x2b\x59\x6f\x75\x63\x5a\xdd\xf4\x98\xac\x6a\xf6\x5d\x0a\x54\xf4\x2d\xb6\xb3\x82\x62\xf7\x29\x50\x19\xa9\x22\xfb\xa0\x8f\xcd\x86\xd4\x77\xf3\xbb\x66\xf9\xa3\xca\xd0\xb7\xd0\xd0\xc7\x17\x6a\x97\xf4\x0d\x73\x38\x63\x47\x30\x13\x3c\xc8\x94\x42\x4d\x9e\xdf\xac\xa8\xc5\xf3\x1b\x4b\x87\x41\xa9\xf5\xe0\xfd\xb1\xe2\x38\x11\xaa\x64\x0c\x19\xca\x16\x35\xd9\x27\x21\x46\x08\xf1\xc2\x92\xfa\xa4\xbd\xfa\x10\x2b\xe3\x2e\x86\xaa\xaa\x85\xa0\xc7\xe6\xaf\x0b\xa7\x48\xa5\x5a\x20\x9a\xcb\xc4\xb2\xba\xc4\xc4\x77\xb4\x41\xc1\x15\x35\x04\x79\xca\x7e\xad\xea\x81\xea\x56\xf6\x1d\x75\x00\x49\x88\x45\x90\x85\x03\x4b\x1b\xc3\x11\xcd\x98\xac\x19\xe9\xdb\x84\xde\xd9\xa8\x2b\xd3\xab\x56\xb1\xc9\x22\xbb\xed\x4e\xc7\xe8\x55\x0a\xb7\xf5\xfe\xb9\x71\x1f\x1e\x14\x53\xe9\x13\x4c\xa9\x61\xb5\x02\xd5\xcd\x55\xad\xc1\x4c\x26\x92\x10\x2a\xbb\x2e\xbf\xa8\x70\xfc\x3f\xa9\x74\x4a\xe9\x90\x80\xf9\xf5\xb6\xe1\xce\xa3\x20\xff\xee\xa9\xd3\x44\x19\xa4\x39\xac\xf6\x3f\x64\x22\x03\x13\x0c\xfd\x6c\xad\x89\xe0\x24\x9b\x1c\xc0\x58\xb9\x19\x34\x54\xf0\x7f\xe6\x77\x03\x41\x75\x90\xf7\x9c\xce\xf8\xac\xd0\x11\xf5\x8d\x8f\xa7\xc9\xdd\x06\x81\x0e\x41\x87\x7d\xc2\x2f\xdf\x16\x42\x3f\xe0\x97\xb5\x8f\x19\x69\x15\x28\xe6\x91\xfb\xdb\x58\x05\x4c\xc3\x79\x3e\x21\x74\xf1\xb8\x79\x8e\x61\x9e\x5c\x24\xd3\x70\x9e\x0b\x2a\x68\x49\xd3\x50\x83\xe2\x66\x3c\x26\x74\x5c\x05\x01\x8c\xac\x98\xa0\x24\x77\xd3\x77\xb7\xfe\x1a\x5c\xf9\xe0\x4b\x6e\x83\x86\x23\xb3\x27\xea\xe4\x39\x13\x40\x9a\x87\x33\xea\x51\x6f\x88\x17\xcd\x09\x86\x83\x3e\x25\x24\xc8\x46\x37\x96\x8f\x0b\x0a\x02\xa3\x48\xf2\x70\x96\x19\x95\xd4\x84\xbf\x53\xc8\xaf\x80\x0f\x18\x0c\x3f\xe3\x14\x9e\xa3\x0f\x2c\x6e\x41\x61\x63\x9e\x09\xa3\xc1\x77\x97\xbc\xd5\xe8\x23\x93\x0a\xfb\x29\x78\x29\xe1\xfe\x35\xb5\xd2\xa9\xcf\x97\xae\x1f\x38\x8d\xb5\xa9\xbb\x90\x98\xd6\xa0\x7b\x1e\x3d\xbb\xd4\xce\x79\x8b\x0f\xbd\x9c\x3c\xea\xae\x78\x5f\xaf\x7c\x08\x2c\xab\xc9\xcf\xac\x36\xc9\xaf\x12\x58\x58\x85\x33\xa8\xc9\x32\xd6\xc2\x43\xb5\xb2\x50\xb8\xf7\x8f\x00\xde\x80\xa1\x09\x6a\xc3\x38\xc1\xe2\x2d\xa3\x59\xb9\x1e\x11\xee\xc5\xfd\x01\xcc\xd6\x30\x6d\xc5\xbe\x2d\xf5\x1b\x81\x5a\x71\x53\x93\x6a\x53\xb5\x47\x80\x69\xbb\x5e\x3c\xbe\xaa\xdf\xca\xe0\xde\xc2\xcc\x6f\x65\x2e\x90\xb8\x2f\xcd\x09\xdb\x8e\xc2\xfb\x27\xae\x1b\xf0\xc7\xb6\x89\x5a\x31\xd8\x70\xdb\xa8\x81\xc7\xc6\x37\x98\x4d\x05\xaf\x77\xfc\x4d\x38\x20\x42\xb5\x10\x14\x97\x40\x7e\x1d\x48\xf6\x90\x68\xcb\x73\x1f\xab\xcf\xd1\x87\x23\x0e\x96\xb6\x93\x48\x9d\x1b\x43\x4b\xa8\x9e\x96\x6b\xdd\x50\x49\x63\xdd\x8a\x39\x6b\x84\x2e\xe6\xd1\xec\x9a\x81\x86\xca\x2e\x22\x60\x28\x05\x9a\xc9\xbb\xd2\xca\x79\xbc\xbd\x2d\x84\x09\xf0\xc7\x57\xb7\xb1\x15\xbc\xd5\xa7\x59\x89\x16\xef\x74\x8c\x3d\x66\x4b\x8a\x3b\xb8\x8e\x77\x36\x6d\x00\x4c\x6d\xbb\x40\xba\x93\x22\xe7\x3b\x64\x47\xe7\xde\x9e\xde\xa1\x4b\x3b\x22\x20\x3b\xa2\x7b\x9d\x96\x70\x5e\xca\x1d\x22\x10\x3d\xb1\x4a\x36\xf3\x48\x5a\xe9\xae\xf5\x3e\x53\x93\x7e\x1d\xa3\x29\x76\x0b\x34\x74\x3c\xb6\x2d\x45\x06\xd6\x9b\xce\x65\x5b\x55\x0c\xad\xa3\xcd\xbb\x17\xe5\x6c\xa9\xe6\x31\xd8\xec\xdb\x0b\x14\x52\xbf\x0d\x92\xba\x10\xec\xeb\xf6\x6c\x5d\x7e\xbb\x91\x0b\x7b\x71\x07\x64\x86\x8a\x1a\xd9\xc4\xf2\x97\xc2\xc2\x8b\x2c\x9f\x04\x28\x10\x64\xd8\x68\x62\xf8\x04\xf3\x44\x75\x47\xbc\x62\xbd\x1d\x61\x43\x4c\xe7\x8c\x0f\xc5\xa8\x25\xe1\x45\x3b\xa7\xa1\x30\x05\x89\x9c\x2a\xe4\xbb\x58\x3a\x3f\xd4\x66\xf6\xf4\x88\x77\x45\x51\xc8\x24\xe7\xb4\x67\xf8\x51\x6e\xd9\xcd\x90\x2f\xb5\x0e\x5e\xc3\x51\x55\xf1\xae\x95\x53\x7e\x79\xcf\x52\x41\xff\x2d\xd9\x82\xfe\x2a\xd9\xd4\x98\xc3\x4e\xbd\x89\x9a\xb1\x45\x74\x61\x1d\x1c\x2f\x63\x82\x70\x0a\x2a\x05\xe7\xaf\x17\xd9\x74\x02\xc1\x9c\x83\x31\x4d\xde\xad\x85\x9a\x84\x9a\x49\x20\xf7\x3b\x77\x00\x41\x68\x30\x0d\x9a\x11\x9a\x3b\xfc\x28\x22\xeb\x01\x5a\x44\x29\xf5\x1b\x40\x2a\xf9\xf4\x12\x32\xf6\x78\xc8\xb2\x10\x32\x9b\x01\x36\x84\x08\x16\x4e\x51\x96\xe2\x52\x67\x35\x72\x70\xd1\x14\xb2\x39\xae\x9c\xc0\xc2\x4d\x72\x4a\x4b\x5a\xa8\x39\xd8\x09\x2c\xe2\x09\x2c\xbc\x12\xe8\xcf\xca\x1d\x0a\x9f\x7f\xb2\x49\x73\x62\x49\x86\x2e\x04\x0e\x58\xbc\x88\x51\x48\x35\x9e\xda\x8f\xbe\xde\x18\xf9\x12\x25\xfa\x5d\x9d\xbd\x52\x75\x27\x42\xff\x54\x57\x9f\xc6\x8f\x49\x80\x1f\x6b\x2c\x97\xf5\x18\xe6\x5d\x47\x07\x67\xf5\x6e\x4e\xe5\x62\xc6\xd9\xd8\x1a\x65\x99\xd0\xad\x0d\x9b\x6b\xcd\xeb\x6d\xf6\x47\xbd\xbd\xf1\x86\x06\xbb\x9d\x56\x4c\x00\xc7\xbc\x72\x7b\x21\x43\x95\xdd\xde\x8c\x96\x6a\x0b\x57\xa3\xa8\xaa\xad\x76\x75\x0c\xf0\x12\x08\x9d\xe5\x19\xe1\x71\xbc\xc3\xe3\x2a\x3e\x33\xb5\x39\x3c\x8c\x9b\x63\x85\x58\x6b\x0f\x4e\x1e\x1f\x9c\x00\xef\xd2\x18\xaa\xf4\x7f\x1b\xef\xd0\xbe\x82\xa0\xa9\xf3\x72\x38\x9c\xaa\x07\x90\xe5\x2e\x7b\x47\x80\x03\xee\xbd\xf1\x5a\x34\x86\xf7\xbb\x99\x31\x77\x03\x05\xda\x99\x99\xb9\xf2\xac\xb9\xa0\x29\xbc\x34\x38\x76\x33\xc3\x2a\x00\x63\x4f\xe1\x0f\xc0\xa5\x7d\x6a\x13\x77\xfa\xb9\xb6\x65\x92\xc1\x25\xa4\x35\x29\x96\x82\x49\xdb\xfd\xed\xb5\x82\x79\x53\xc0\xcd\xea\x8d\x00\xcc\xdd\x68\xaf\x59\x1b\x15\x3e\xc1\x83\xcc\x45\x9c\x6c\x0c\xe7\x48\xcc\x09\xf8\xa7\x72\xf6\x6a\xc8\x69\x3e\xe4\xa3\x11\x58\x6e\xb7\x67\x69\x96\xb7\x69\x9b\x4f\x4b\xde\xa6\xed\x54\x4a\x51\xb6\x47\x90\xf9\xd7\x54\x87\xcc\xf2\x72\xc4\xac\xe2\xb8\xfd\xd7\xf6\x96\xac\xac\x88\x6c\x9d\x73\xbc\xcd\x62\x6f\xa7\x7c\xf9\xf4\x2f\x85\x15\xd5\xcb\xad\x2d\x82\x13\xd7\xe8\x37\x25\x9f\x2c\x33\x2e\xa1\x59\x2d\xad\x3d\x15\x3a\xab\x7d\xa0\x3b\xd4\x17\xa8\xcf\x5c\xea\x72\x16\xd3\x82\xf6\xe8\x66\x8f\xd0\xa8\x01\x24\x31\x8d\x3f\xca\xda\x17\xa1\x51\xf1\x5a\x04\x89\xa8\x66\x88\x82\xb5\xff\x67\xeb\x62\xd0\xfb\x1f\x88\xe9\xd3\xcd\x8b\x09\x07\x95\x5d\xc5\xbb\xa7\x07\x27\x87\x7b\x47\x87\xff\xd8\x3b\x3b\xfc\x70\x7c\xfe\xf6\xf0\xe4\xf4\xec\xfc\xf8\xc3\x9b\x83\xf3\xd3\xb3\x93\xc3\xe3\x77\xcc\x36\xb4\xb9\xe1\x3d\xa9\x9b\xaf\x8e\x72\xef\xd1\xbf\x94\xa9\x50\xe7\x0d\x18\x8a\x37\x7c\x2e\xaf\xad\xd5\xd1\x38\xcd\x27\xc6\x7b\x07\x39\x9d\xab\xbd\xe7\x93\x0f\xb3\x4c\x4a\x3e\x39\x2e\x26\xdc\x59\xb3\x17\x73\x9e\xe3\x5e\xb6\x9d\x05\xf9\x95\x87\xe9\xa8\x09\xa6\xec\x32\xa9\x93\xdf\x45\x3e\x4b\xe5\xf8\x9a\x4f\xf6\x7c\xca\x3c\x0f\xc8\x85\x1f\x48\x89\xd5\xb5\xe8\xa0\x27\xfc\xfa\x6e\xa2\x13\xfb\x6f\xdc\x66\xf2\x7a\x03\x59\xbb\x6d\xe4\x85\xdc\x28\x17\xf3\x79\x21\x24\x9f\xb4\x09\x32\x9e\xd1\x13\xd7\x12\xc6\xfe\x42\x94\x85\xb0\xdc\xa6\xb6\x3a\x02\x81\x63\x67\xd3\xda\xd6\xe6\xf7\xf7\x17\x8a\xac\x75\x3a\x33\xf5\x1f\xb2\x43\x72\x13\x3b\xd9\x0c\xd5\x8a\x57\x12\x34\x7d\xc1\x00\x91\xb8\x73\x38\xf2\xce\x47\xaa\xaa\x6d\x1a\x91\x8e\xa0\x8b\xdd\x06\xb0\x5d\x43\xcd\x77\x96\x41\x5f\x91\xc1\x5c\xdc\x84\xf1\x6a\x92\x95\xda\x64\xd3\x2d\x63\xac\x8e\xc2\x4d\x5b\xb2\x86\x2d\x78\x15\x18\xaf\x78\xfe\x67\xbb\xe3\x51\x5f\x30\x1d\x75\xac\xac\xbd\x58\x53\xc4\x1d\x70\xc6\x69\x79\xb3\x82\x1b\x8d\x5b\x11\xea\xdc\xdf\xf7\x48\xcb\x46\x4a\x0c\x36\x0a\xd2\x93\x21\x18\xd0\xee\xc7\x87\x83\x63\xe8\x8c\xae\xe0\x70\x64\xcd\xa2\x74\x60\xc1\xf7\x59\x09\xc8\x8c\xc2\xbe\x59\x25\x5e\x38\x71\x63\xb6\xbd\xc9\x98\x33\xbb\x12\xd1\xc1\x82\x3a\xaf\x98\x68\x38\xb9\x10\x64\x7d\x47\xee\xc0\x89\xba\x53\x17\x3f\xd1\x95\xcf\xe1\x6f\xad\x52\x97\xd6\x03\x16\x7c\x42\xa4\x09\xda\x0d\x2d\xed\x52\xec\x90\xb8\x92\xd5\x16\xd6\x90\x42\x92\xaa\x3a\x3f\x77\x10\x1a\x93\xf7\x60\x52\x03\xee\xbd\x0c\x6c\xf8\xc4\x60\xef\xfd\x86\xb4\xa2\xdf\x5b\x5b\x10\xf0\xc1\xe3\xb2\x30\x71\x89\xa2\x45\xa2\x4b\xa9\x13\x9a\xe9\xfc\x32\xe6\xc8\xb6\x5e\x30\x6d\xd7\x4a\x80\xa0\x9e\xdd\xcd\x79\xa7\x03\xe1\xb6\x3c\x81\xd5\xf6\xfe\x36\x35\x83\x22\xa5\x6d\xda\x23\x9d\xce\xb9\x62\x66\xc0\x0e\x39\x89\xf6\x1b\x2f\x8c\x50\x84\x3e\xa2\x7b\x92\x0c\xda\x67\x87\x67\x47\x07\xed\x4d\xc6\xb2\x4e\xa7\x7d\xba\x7f\x72\xf8\xf1\xcc\xfd\x3a\xfb\xcd\x15\xe9\x9e\x03\x04\x51\x9c\x70\x75\x7e\x3e\x9e\x16\x25\xff\x53\x2b\x1a\xc3\x13\x2f\xe9\xf6\x76\xc3\x92\xd2\x9c\x6d\xf6\x83\x75\x55\x7f\xb3\xcd\x1e\xbd\x53\xeb\x80\x96\x23\xc8\x96\xe9\x56\x21\x26\x73\x59\x6d\x59\xb6\xb7\x4d\x92\xcb\xa6\x29\xbb\xe1\x75\xda\x42\x1f\x70\x1e\x53\x52\x0f\x5d\xd1\xe9\xdc\x89\xa4\xd0\x60\x15\xc4\xc6\x03\xf5\x73\xb4\xde\x10\x18\x48\x9b\x21\xa4\x4e\x88\xd2\xfa\x26\x6e\x6f\x57\xb0\x0d\x60\x09\x0a\xb7\x9c\xcb\x42\xe3\xd6\x4d\x86\x21\x22\xe5\xfd\xbd\xf6\x02\x89\x5a\xb9\x5e\x7e\x3c\x7b\x7f\x14\x11\x3d\x6d\x96\xfd\x1a\x6c\x55\xb5\xcf\x86\xb3\xf2\x0c\x2d\xde\x73\x26\x91\x2d\x2b\xcd\x80\xa6\xcd\x12\xac\x0d\xa1\x02\xaf\x16\xcd\xbb\x73\xc1\x6f\xb2\x62\x51\x3a\xca\x54\xc4\x9b\x16\x7a\x80\xc2\xd7\x9c\x50\xbf\xc8\x5f\xf4\x22\xaf\x3b\x00\x85\xab\x1f\xd3\xcf\x86\x8d\x0e\xab\x10\x42\x33\xab\xa5\x09\x57\xce\xac\x54\x65\xc6\x40\xa8\xad\x0d\x85\xd5\x2a\x80\xc6\x02\xa3\x87\xd3\xf7\x60\xaf\x20\x4e\xa8\xa8\xc2\x55\xc6\xaa\x3e\x07\x0b\x84\xcd\xed\x74\x0e\xc0\xd5\x1f\xa9\x4a\x80\x4a\xe3\x61\x76\x44\xa7\xb3\x79\xa0\x0e\xc3\x0e\x11\x4c\x34\x41\xd0\xb0\x35\x20\xb7\x22\xf5\x91\xc3\x89\x33\xfe\x45\x3e\x8c\x59\xbb\x4f\x15\x8a\x3b\x1a\xb6\x9b\x48\x4f\xbf\x74\x2c\x5a\xfc\x85\x59\xd5\x3c\xda\xb1\x00\x35\x64\x98\x7a\xd5\x8c\xf2\xc2\x31\x9e\x9a\x4e\xb6\xff\xe7\xbe\xc6\x8c\x26\x92\xdc\xdf\x7f\x51\x77\x49\xa7\xd3\x86\xc2\xb5\xd4\xd1\xb2\x98\xd1\x6c\xad\x0a\x2c\x42\x0e\x42\x43\x2c\x70\xb5\x1b\x3f\xbb\x25\xb4\x7e\x66\xf1\x63\x99\xdd\x59\xbb\x88\x9d\xce\x85\x02\xfc\xbf\xb0\x78\x89\x6c\xc6\xee\x78\x02\x1e\x32\x62\xae\x48\xc7\xb1\xac\x80\x55\x11\x80\x4e\xe7\x56\x2f\x70\xf8\x6e\x99\x5d\x26\xed\x6b\x29\xe7\x83\x6f\xbf\xbd\xbd\xbd\xed\xde\x3e\xed\x16\xe2\xea\xdb\x27\xbd\x5e\xef\xdb\xf2\xe6\xca\x6c\x94\x4d\x08\xfc\xe9\xe4\xd0\x85\x05\xed\x9a\x9b\x51\xa1\x50\xab\xe9\x63\x57\x16\x9f\xe6\x73\x2e\xf6\x21\xd4\x75\x95\x48\x1a\x1a\x38\x34\x32\xe2\xc3\x91\xb6\xc3\x31\xc1\x10\x70\x72\x65\x2a\x0d\x21\xcb\x2e\x13\x33\x95\xf6\xd9\xeb\x0f\x6f\x7e\x6b\xeb\xd1\xf4\xc8\x24\x8e\xd6\x60\xd7\x46\x6a\x47\x6a\xda\xc0\x9f\x36\x0a\x1f\x36\x42\x58\xb4\xc0\xad\xc6\x1d\x8a\xe9\x4d\xd8\xa6\x3a\x3f\xaf\x27\xd9\x0e\xac\xdf\x1b\x96\x02\xee\x25\x27\x1a\x8b\x24\xa7\xdc\xa4\x4d\x31\x63\x99\xdc\xcf\x3a\x93\x73\x62\x7e\x31\x69\x3c\x00\x72\x48\x33\x35\xe6\x49\xee\x42\x2a\x65\x84\xf6\x6b\x90\x36\x00\xa6\xc1\xfd\x28\x8a\x39\x17\x48\xd1\x69\xb5\xe4\x2b\x60\x75\x13\xfa\x20\x12\x61\x60\xcd\x5d\xf0\x90\x00\xd6\x3c\x82\x55\x58\x58\x85\x83\x35\x5f\x01\x6b\x00\x55\x75\x7e\x0e\xf9\xba\x43\x86\x3d\x15\xcb\x06\x10\xb1\x4b\xaa\xf0\xa4\x58\xdb\x04\x0b\x6c\x13\x6c\x35\x30\x2e\x4f\xaf\x21\x3b\x7e\x99\xc4\x30\x1f\xc1\xa1\x30\xd8\xb0\x4a\xa2\xd4\x9c\x89\x85\xbe\x06\x6a\x75\x9b\x4d\xa7\xfb\x8a\x21\xf3\x4e\x2c\x21\xc1\xe6\x34\x64\xcf\x2c\x01\xf7\xc1\xc2\x1b\xb0\x51\x51\x9a\x4e\x47\x36\x61\xb5\xa9\x3f\x2f\xe6\xde\x7d\x4d\x83\x57\x07\x45\x49\x89\xef\xe1\x86\xc3\x18\xc0\xbb\xff\x5e\x70\x71\x77\xca\xa7\x1c\x04\xed\x7f\x95\x63\x91\xcd\xe5\xf0\x6a\x3a\x13\xac\xfd\xcd\x52\x56\xed\xd1\xbf\xbc\x22\xe8\xfe\xde\x5c\x4b\xf0\x7e\xc5\x67\x85\x4f\x8c\x5c\x3f\x04\xe1\x80\x2d\x9c\x3f\xdb\xec\x98\x15\x24\xb0\xd8\xd4\xe9\xe0\x5f\x9b\x8c\xe5\x3b\x04\x5f\x16\xb8\x94\xb4\xb4\x07\x6f\xa5\x4f\x95\x13\xe0\x9a\xc4\x7f\xf3\xf2\x6d\x25\xae\x4c\x33\x24\x10\xc5\x71\x95\xcc\x22\x4c\xb8\x99\xe6\x5b\xcb\x64\x18\x28\x74\x00\xaf\xd8\x01\x43\x0d\x72\x94\xdd\x18\xde\xbc\xa0\x9b\x3d\x78\x54\xdf\x03\x8a\x6f\x78\x0c\xee\x35\x1a\xdd\x7a\x59\x74\xbf\xa0\x38\xe0\x8e\xc1\x8b\xd9\x69\xc0\x13\x74\x0b\xa1\x10\xd9\x4e\x97\x74\x21\x56\x5e\xe6\xbe\xd2\xdd\xea\x4a\x5a\x32\xe2\x2b\x25\xa3\x6d\x2d\x19\xa1\x7c\xf2\xb8\x2f\x1f\x6a\x1a\x75\xa0\x2d\x35\x9f\x11\xda\xc7\xed\x6e\x71\xbb\xfe\x0a\x40\x0f\xd6\x01\xda\xfe\x1f\x85\xc6\x35\xee\xc4\x27\x39\x5f\xdf\x78\x63\x75\xcb\x0f\x22\xb6\x12\xea\xed\x08\x6f\x20\x24\xac\x81\x90\x79\x13\x53\xa4\x13\x08\x4c\x10\xa6\xb0\xaa\x78\xd7\xa2\x9b\x55\x99\xb3\x2b\x51\x11\x42\x79\xd2\xfe\xeb\xd5\x34\x9b\xcd\xb8\xf8\x76\x21\xb3\x69\x9b\x0e\xdb\xfc\xcb\xbc\x10\xb2\x6c\x8f\x68\x82\xd9\xb2\xf6\x42\xd1\x24\x29\xb2\xb1\x6c\xb7\x8c\xca\x55\x5b\xba\x23\xda\xda\x3e\x3f\xe7\xe5\xfb\x62\xb2\x98\xf2\x36\x5d\xea\xa7\xc3\xcd\x5e\xa5\x04\x9a\xb4\x2c\xb9\x90\xc7\xfc\x86\xc7\x26\x50\x91\xaa\xa4\xbd\xc8\xf9\x97\x39\x90\xa0\x0d\x94\x81\x79\xe3\x42\xa4\xf9\xf8\xba\x4d\x5a\xd8\x20\xb7\x8d\x6a\xb4\x29\x27\xd4\x16\x4a\x91\x8e\x79\xf2\x2f\x45\x59\x36\x06\x83\x8d\x6f\x96\x3f\x9d\x7e\x38\xee\xea\x24\xfa\xd9\xe5\x9d\xba\x5d\x37\x92\x6f\x96\xbc\x22\xff\x22\x95\x03\x8f\xd5\x98\x9c\x4d\x5e\xd3\xe5\xc9\xfb\xfb\xb6\xae\x0e\x4a\xef\x34\x9b\x2e\x04\x6f\x43\x2f\x13\x3e\x17\x7c\xac\x8e\x08\x5e\x3a\x0b\xd3\x6d\x2a\xf2\xa4\xfd\xe6\xe0\xe3\xc9\xc1\x3e\x68\x4f\x07\x1b\xed\x2d\xae\x1b\x66\x63\xc9\x0a\xca\xbb\x59\xf9\x46\xfd\xd9\xc0\x10\x6b\x1a\xc6\x2b\xa8\xa4\x37\xa0\xa1\x5a\xbb\x80\x12\xef\x8d\xc2\x7d\x8e\x88\x0a\x32\xbd\x95\x0b\xc1\xdf\x2d\xb2\x09\x08\xc5\xde\x9c\x08\x3e\xe5\xd0\xf9\x29\x17\xf0\x0d\xa8\xd3\x5b\x2b\xf6\x35\x0d\xd6\xac\x23\xd6\xcb\x99\x5d\xe5\x41\x13\x2f\xc5\xf4\x77\xe4\xcb\xd4\xc6\x2a\xb4\xb8\x2c\x2d\x2e\x0b\xe6\xca\x86\x72\x84\x95\x00\x9d\x4e\x6d\x76\x82\xf8\x1b\x39\xd5\x71\xc5\xd6\xa5\xeb\x6c\xf1\x61\x31\x62\x62\x58\xe0\x30\xbe\x54\x91\xfa\xe9\xf4\x78\x31\x9d\x96\x2b\x20\x56\x9b\xaf\xcd\xc2\xc1\xda\x0d\x0e\x21\x9c\x3e\x39\x14\xff\x2f\x75\xff\xda\xde\xb6\x91\x25\x8a\xc2\xdf\xf9\x2b\x28\x4e\x9a\x83\x1a\x96\x60\x52\x76\x67\xba\x29\x97\xb9\x65\x5b\x4e\xfc\x8e\x25\x79\x24\x39\x79\xf3\x30\x1c\x05\x22\x8a\x62\xc5\x10\xc0\x14\x8a\x92\x25\x12\xfb\xb7\x9f\xa7\x56\xdd\x01\x50\x76\xf7\xee\xec\xe7\x9c\x2f\x24\x50\xa8\xfb\x65\xd5\xba\xaf\x99\x32\x3e\x32\x40\xb9\x32\x66\xd1\x61\x5d\x46\x2f\xcb\xf2\x76\x79\x97\xe5\x5d\x8a\xb4\x6e\x94\x3c\xbe\x28\xa8\x03\x2e\x67\x7d\xe9\xb5\xd4\xe4\x5f\x4f\x1d\xcb\x66\x33\xb4\xba\x4f\x06\xd2\x80\x02\x95\x34\x10\xe1\x95\x6c\xe1\x33\x7d\x28\xdb\x36\x9a\x2f\x4f\x51\xbb\x53\x09\x9d\x82\xbc\xd6\x9f\x43\xf3\x7c\xf4\x8e\xcd\xf1\x85\x79\xe8\x8a\xa2\x7b\x4d\xbb\x2b\x4e\x4b\x9a\x8b\x9e\x13\x8a\xc0\x76\x84\xac\xcd\x63\xb7\xab\x6e\x11\x16\xf7\x4e\x7f\x38\x47\xa1\xce\x54\x00\x25\x82\x18\x2c\xaa\x56\x35\x4a\xfa\x65\x99\xac\x4b\x41\xd3\xa0\xaa\x96\xd1\xe9\x6c\xf6\xf0\x4a\xa8\xb2\xda\xb1\x73\x7a\x3d\xec\x6d\x68\x63\xb1\x9e\x7b\x3b\x8a\xbf\x1a\x4d\xf8\xfe\x68\x3c\x94\x9b\x77\x74\xc8\x5e\x72\xd8\xb5\xf9\x94\xed\x8f\x66\xde\x59\x60\xb3\x5a\x24\x0d\xea\x87\xa6\x36\xfe\x36\xa6\xc5\x0c\x97\xc4\xb9\x1d\x9b\x16\xb3\x89\x8e\x2b\x25\x9f\xd1\xb8\xd7\xeb\x88\x01\xf9\xed\xbb\x4d\x52\x7d\xb7\x29\xab\xdf\x2a\xad\xea\x68\xc2\xcb\xfe\x9a\x6b\x01\xc4\xa1\x09\x80\xd3\xef\x67\xd3\xe1\x2c\x56\x58\xe2\xb3\xff\xf9\xb5\xfc\x8f\xef\x9e\xa1\x43\x94\xc5\xe5\x92\x2d\x44\xd4\x92\x3b\xf3\x14\xe2\x9a\xc5\x94\xce\xbb\xf2\xbd\x31\x7a\x36\x74\x5e\x34\xba\xc5\xa2\xab\xc3\x9f\xa7\x64\xee\x97\x7c\x86\x64\x0f\xb4\xa1\xef\x9a\x9c\x24\x62\x19\xdf\xb2\x3c\x5a\xe3\x54\x45\xfd\x5d\xfa\x47\x6b\xa1\x2a\x5a\xaa\xa3\xb5\xd0\xf7\xfe\xda\x59\x1b\x2f\xe3\xdf\x0b\x96\xab\xb1\x2a\x78\xaa\x04\xaa\x6d\xa7\x81\xbe\x22\x43\x95\xe7\xb4\xc8\x3f\x72\x76\xcb\x04\xbb\xa3\x4f\xe5\x7f\x0e\xc7\xd7\x98\x5f\xb8\x3c\x6e\x5b\xd0\xe6\x8e\xf8\x1a\x8c\x71\xfb\x80\xcf\xf4\x30\xa6\x7b\x23\xbc\x37\x54\x48\xa8\x5a\x70\x1c\xc7\xb1\x98\xa9\xde\x1a\x9b\xa1\xd6\x3e\xfe\x65\x44\xc8\xb0\xdf\xa7\x2f\xc9\x5f\x9f\x7f\xff\xb7\xff\x1c\xfe\x7d\x34\xea\xf7\xe9\x2b\xb2\x6f\x5e\x0f\xd4\x5d\x31\x2f\x52\x7a\x4a\x6f\x12\x39\x64\xb2\x86\x0b\x2e\x48\x9a\xdb\x5c\x2a\x18\xc7\x1d\x25\xa9\xcd\x65\x93\x96\x36\xd7\x13\xd3\x56\xd9\x72\x4f\x65\xea\xd0\xba\xd5\x24\x59\xd8\x82\x2e\x6d\x65\x81\x56\x4b\x65\x6c\x11\x35\x6c\x36\x5d\xd8\x92\x8e\x81\xaf\x54\x1e\xf7\x72\x3a\x9c\x75\xea\x20\xe0\xb7\x37\x4a\xe8\xae\x5e\x25\x72\x21\xe2\x15\x2f\xae\x33\x7a\x5b\x75\xff\x17\xbc\x96\xab\x24\x57\x02\x91\x2a\x8e\x6d\x02\xcd\xd3\xea\x37\x0f\xa2\x5e\xea\x28\xd6\x8d\xee\x41\xdb\xea\x5a\xe5\xb4\x5c\x67\xa2\x01\x08\x9b\x7d\xa0\x61\x1f\x68\xbd\x0f\xd4\xef\x43\x0d\x08\x4b\x6c\x49\xec\x9c\xf7\xe6\x6c\x4d\xe8\xd8\xb8\x0c\xd4\xf8\xc8\xe7\x7f\xa0\xb4\x2a\x72\xcc\xf9\x3f\x58\x46\x39\xa4\x26\x34\x16\xeb\x55\x46\x09\x8d\xef\x28\x67\x8b\x87\x0b\x41\x57\x25\x01\x7c\x50\x3e\x42\x5c\xd8\xf4\x92\x96\xc2\x7c\x00\x1d\x04\x3f\x01\xec\x8b\x2e\x0b\x05\x17\xc9\xd7\x45\xda\x54\x59\x28\x13\x1a\x4b\xe4\xec\x82\xca\xed\xe1\x39\x40\xd6\xe0\x56\xef\x1c\x7d\x7d\x2e\x38\xa5\x8f\x34\x9a\xce\x7c\xe7\xc7\x32\xb3\x89\x46\x38\xec\x58\x34\x3f\xd8\xe3\xf1\xd5\x8d\x44\xc5\x06\x03\xee\xe8\x00\xd6\xcc\xb0\xdd\xe6\x81\xec\xbe\x88\xea\x17\xb8\x0e\xbf\xa3\xfc\x00\xba\xae\x37\xed\xa3\xb5\xf0\x55\xe1\xa0\x11\xaa\x92\x34\xf5\x96\x42\xe1\xcc\xfe\xe2\xdb\xdc\x53\x3a\x23\xc6\x60\x43\xbe\xca\x6e\xce\xb4\x79\x75\x65\x9c\xac\xa0\x4d\x4b\x15\xea\x63\xd7\xaf\x69\xac\x07\xd6\xef\x37\x3f\xaa\x2f\xb3\x4a\x9e\x7f\xb5\x14\x3b\x47\xa1\x4c\xbc\xa7\xb3\xd0\x31\x8b\x8d\x1d\x51\xb2\xc7\xba\xe8\x5a\x29\x46\x68\x3f\xe4\x5a\xa7\xb5\xe6\xbf\xa5\xee\x86\x59\x6b\xbd\x86\xdc\x7b\xcf\xa2\x0b\x07\x46\x5e\xfa\xde\x6a\x11\x97\xab\xe0\x71\xca\x49\xb9\x2b\x30\x15\xfb\xa3\x19\xf6\x3c\xa2\xc0\x77\x5a\xe5\xa2\x6e\x7a\xd6\x5a\xff\x4b\xda\x52\x21\x9d\x55\xd6\x71\xa9\x19\xbd\x8d\x5c\x17\xcc\x40\xc3\x00\xd2\x65\x51\xf3\xff\xad\xfa\x1f\xda\x60\xa3\x1c\x27\x95\x3e\x14\x1d\x73\x74\xff\xb4\x3b\xb1\x2b\x54\x50\xe4\x12\x67\x12\xeb\xd3\xa6\xd8\xbd\x3d\xb3\xf3\x94\x26\xf0\x44\xfd\x8d\x29\x79\xf5\xdb\xd5\x95\xa4\x02\xbf\xdb\x00\x4e\xb1\xc8\x8a\x82\x47\xf0\xc8\x93\x3c\x2d\x6e\x23\xf4\x1f\x6f\x13\x21\x89\x9b\xfb\x08\xd8\xe6\xbf\xb9\x53\xbb\xf6\x1c\xd6\x9b\x7b\xf3\x79\xdf\xa3\xde\xe7\xde\xa9\xb5\x17\xeb\xd6\xcb\xe0\x1d\xb3\xff\xed\x25\x2f\xdb\x93\xbd\x80\x58\x11\xdd\x92\x21\x7a\x39\x9c\xc8\x3e\x8c\xd3\x00\x10\xac\xea\xd9\x5e\xb9\xde\x4d\x64\xd5\xe3\x39\x68\x42\x1b\x70\x9a\xe1\xe9\x08\x4b\x4c\xcd\x28\x24\x51\xf2\x6a\x15\xc9\xc6\xb4\xe7\xbb\x5b\x52\x76\xea\x30\xf3\x16\x37\xc0\xaa\x46\x41\x6a\xd0\xd7\xa6\xfa\xb0\xda\x26\x1a\x90\xad\x12\xea\x1c\x09\xed\xc6\xa7\xe0\x3e\x5b\x02\xf7\xfe\x17\x95\x77\xc3\xb3\x55\x91\x3d\x48\xba\xed\x5f\xce\xa9\xb8\x5e\xdf\xae\xfc\x1d\x9a\x0c\x06\x0a\xa3\x03\xdf\x8c\xe4\x18\xd3\x36\xe3\x2a\xf2\xc5\xa6\xcb\x37\xaf\xbc\x47\x6e\x2c\xa3\x21\x5c\xff\x4d\x5f\x90\x30\xa3\xac\x7c\x23\x01\xda\x65\x72\x73\x53\xa3\x42\xe4\x59\x12\xc9\x8d\x8a\x83\x64\xb6\x3a\x21\xe4\xae\x0a\x8a\x91\x1b\x45\x7d\x1a\x9f\x89\x80\xb3\x79\xfe\x02\x49\x06\xbc\x06\x2e\x1e\x2e\x93\x9b\x77\x05\x27\x1f\x31\xc8\x5e\xe4\xe3\x67\xf5\x78\x42\x45\x22\x5f\xdf\xc8\x0b\xd7\x31\xce\xdf\xb2\xf4\xcd\x32\xc9\x6f\xc2\xdb\xfa\x44\x31\x15\xd4\x4e\xe0\xc9\xfc\x33\x28\xca\x91\x53\xbd\x0b\x5c\xca\x7b\x8d\x12\xaf\x6f\xa1\x5b\x1f\xa0\xd7\xf0\x5d\xee\xa6\x96\xc9\x52\x24\xff\xef\xb2\x76\x89\x9c\x7c\x6e\x92\xc0\x9d\xd3\x48\xe9\xec\x53\xf0\xd0\xa4\x54\x06\x05\x79\xef\xe9\xda\xcb\xd2\xe0\xfd\xb4\xc6\x70\x82\xfb\xf7\x27\xa5\x74\x96\x93\x08\x91\x57\x7f\x78\xf2\xe7\x7c\xfa\x6e\x46\x38\xce\x15\x9e\xd6\x6c\xfd\xad\xba\x02\x7e\x47\xf8\x77\x45\xfa\xd7\x3b\xf1\x3b\x79\x6b\xbc\x25\xbb\xd5\x39\x09\xfb\x61\x7d\x9f\xee\xb5\xe0\xb9\xef\x80\x37\x50\x81\xe9\xeb\xcf\x11\x9d\xbe\x9b\x79\xbb\x06\x4c\x0f\xc9\x4f\xae\x66\xf2\x33\xa6\x2a\xb4\x70\xb6\xa6\xe4\x0f\x33\x63\x34\x7d\x9b\x88\xa4\x75\xe8\x72\x2b\xfe\x4c\x93\xcf\x27\xc9\x0a\xe7\xa4\x67\xb2\xb8\x0b\xda\x48\xe6\x36\x37\x54\x08\xca\x9d\x7c\xd6\x04\xdf\x37\x73\xf5\x21\xfa\x1c\x31\x4c\x11\xc2\x79\xbf\xbf\x07\xd6\x0f\x11\x43\x93\xa8\x20\x42\x89\xe2\x98\xf1\x3d\xc7\x70\x81\xd0\xb8\x20\x5c\x45\x09\x43\xb8\xa8\x70\x59\xab\x5d\xe0\x1c\x6d\x3e\x82\xc4\x4f\x97\x92\x29\x55\x15\xb0\xd6\x4e\xd6\x02\x18\x53\xe5\xfb\xfc\x68\x2d\x0a\xa1\x37\xd1\x25\x4f\xf2\x32\x81\x7a\x24\xd6\xbc\xce\x9f\xfa\x5c\x52\xb1\xe3\xe3\x71\x7e\x47\x68\xfc\xd3\xd9\x87\xa3\xcb\xf7\x1f\x8e\xbd\xc7\xab\xcb\x23\x89\x08\xfe\x54\x64\x89\x60\xea\xc8\x52\xe7\xc9\x93\x50\xe3\x24\x96\xb8\x03\x46\x68\xfc\xe6\xd3\xf9\xf9\xb1\xb2\xd3\x94\x6f\xea\xd6\xd7\x9f\xb4\x0d\xa7\xf7\x68\xb2\x9d\x9d\x7c\xfc\x74\x29\x1b\x3f\xfa\xf0\xe1\xec\xe7\xab\x37\xbf\xbc\xf9\x70\x7c\x11\x60\x99\xca\xfb\xef\x9f\x74\xc5\xe1\xe2\xeb\x15\xcb\xdb\x42\x56\xde\xbb\xba\xfa\xe1\xc3\xfb\x93\x93\xe3\xf3\xab\x9f\x8e\x3e\xbc\x7f\x7b\x74\x79\x76\x7e\x75\xf1\xcb\xc9\xeb\xb3\x0f\x57\xef\xce\xce\xaf\x7a\x03\xda\xf9\xca\x72\x88\x7f\x70\x75\x39\xfe\xda\x02\xe6\x1d\x6f\x7a\x87\x1d\xb7\x36\xa3\x8e\xb7\xb6\xa7\xc9\xa9\xf6\xd4\x3b\xd2\x1e\x5e\x59\xd4\xbb\x3c\xfa\xe1\x4a\xcf\x7f\x0f\xb9\xbb\xde\xb7\x2e\xa2\xd3\x72\x16\x79\x17\xee\x3a\xf4\x5a\xf1\x8a\xe8\x0c\x6e\x21\x4b\xa8\x7f\x8e\x53\xd3\xc2\xe5\x2f\x1f\x65\xf5\xb5\x05\x9e\x6b\x95\xd9\x65\xab\xd2\x36\xa7\x77\xac\x94\xe3\x1f\x39\xc7\xb0\x6f\x96\x54\x1e\x74\x3f\x49\x41\x01\xe3\xd0\xb9\x34\xea\xeb\x56\x2b\xb6\x5c\x5f\x87\x31\x56\x55\xc2\xeb\xf5\x62\x41\xb9\x82\x2d\xf6\xdb\x34\x9d\x11\x5a\xc1\x68\x54\x30\x3e\xd7\xa4\xaf\xf2\xb5\x67\x11\x49\xd7\x1e\x6a\xf4\x71\x30\x48\xac\x0b\x56\xba\x47\x48\x62\xdc\x6b\x79\x7d\x1c\x36\x87\x96\x74\xb4\x3a\xf9\x46\x75\x14\x82\xa7\xa9\x99\xf0\x65\xb3\x36\xbe\x34\x5b\x44\x80\x31\xc6\xac\x54\x98\xa3\x40\x28\x94\xda\x8a\x16\x4f\x4e\x62\x9a\xcf\x60\x9c\x1d\xae\xb9\x4b\xc9\x17\x15\xca\x10\x5c\xbe\x2a\xa6\x9b\x50\x39\x0a\x8b\x36\xd7\x67\x6e\xe2\x15\xe6\xb5\x25\xb1\x86\x56\xed\xd3\x1d\x94\x2c\x6c\x48\x41\xbb\xa0\xdc\x5d\x71\x8d\x85\xb5\xbc\xec\xb0\x8c\xb1\xa1\xb0\x40\x2a\x10\xc8\xe2\x9c\x88\x4e\x2e\x51\x88\x09\xf7\x37\xc5\x38\xe2\x6d\x7d\x84\xa1\x63\x97\xd3\xda\x99\x18\x60\xa7\xfc\x52\xdb\x4d\x3a\x18\x24\x55\xa5\xfc\xcc\x2e\x2d\x40\xec\x78\xb0\x71\x01\x67\x62\x45\x96\x0e\x88\xba\xe3\x76\x5b\x47\x9b\x46\xf2\x38\x39\x68\xbb\xd2\xbe\xbe\xd4\xc7\xe7\xde\x41\xbd\xf1\x0f\x2a\x20\x48\x35\xf0\x7a\xa7\x0f\xd9\xf5\x46\xed\x6b\x9d\xf7\x34\x39\xad\xaa\x10\xbc\x5f\x43\x23\x0f\xd0\xc8\x75\xa7\x76\x13\x3c\xe8\x6a\xae\xc2\x6a\x12\x88\xc7\xe4\xc0\xfc\x15\xd4\x71\x0f\x75\x5c\xb9\x5e\x1e\x87\x4c\x62\x30\xd7\x1e\xe2\x9c\x38\xc9\xde\xcb\xdc\x49\xf7\x98\x96\xee\xed\x11\x72\xd7\xef\x0b\x23\x58\x36\xab\xfe\x25\x12\x1e\x34\xfa\x12\x04\x24\xd1\x06\xfc\xb5\x90\x24\x77\xb5\x18\x24\x74\x3a\x9c\x75\x52\xba\x48\xd6\x99\x18\x3b\x89\xc7\x32\x3a\x70\x32\x09\xb3\xf2\x14\x0b\x18\xa3\x77\xb1\xdd\xc3\x20\xcf\xc8\x6d\x84\xf0\x05\xfc\x5e\xca\xdf\x4e\x16\x9d\x21\xbc\x90\x3f\xf0\xb4\x8a\xce\xf0\x71\x34\xbd\xc0\x97\x33\xa4\x93\x16\xd1\x85\x7d\xba\xf4\xb2\x5d\xd6\x53\xa1\x85\x13\x1f\x51\x54\x74\xde\x91\x8f\xcb\xb8\xf9\xfd\xe8\x6f\xf5\x23\x15\x1f\x1b\x05\x2e\xa3\x3d\x75\x66\x70\x63\xe4\x87\xea\xe8\xf7\x23\xd0\x24\x39\x01\x5b\x42\x5b\xe9\x1b\x47\x7c\xdb\x2a\xdb\x6d\x80\x8c\x63\xf8\xa3\x58\x7b\x46\x42\x08\x0b\x57\xd1\xe7\x50\x89\xc1\x73\x90\x2b\x9b\x18\x73\x1b\x3b\x4e\x34\x1b\x60\xfd\x7e\xc4\x60\x8e\x73\x8d\x20\x31\x50\x5c\x54\xbb\xf1\xbc\x8d\x23\x22\x92\x9b\x12\xba\x74\x41\x85\x03\x4a\x8a\x25\xa2\x59\x3d\x36\x5f\xac\x12\xbc\x6c\xb4\xd2\x84\x4f\x64\xa9\x90\xd2\x07\xfe\x4a\x4a\x5f\xb2\x47\xcb\x42\xbd\x93\xc9\xa3\x46\xb2\xad\xb2\x63\x65\x61\x96\xa3\xe5\x91\x9e\x46\x20\x86\x10\x3e\x06\x6d\x6e\x99\x5b\x21\xda\xf8\x2d\x70\xf9\xcd\x34\x9e\x46\x35\x5c\x9c\xde\x77\xcf\xdd\x2c\xbf\xb7\xdc\x99\xdf\x4d\x43\x16\x31\x77\xe4\x9c\x7f\x91\x83\x3a\xac\xa1\x3c\xfa\xfd\xdf\xf5\x64\x40\x0f\xde\xc9\xab\xfb\xcd\xd1\x9b\x1f\x8f\xaf\xfe\xeb\xf8\x97\x9e\xda\x90\x8f\x32\xf1\xdd\x69\x0f\xe1\x4f\xf2\xe9\xc3\xd1\xc5\xa5\xc4\x82\x3e\x1d\xf7\x10\x7e\xad\xef\xfa\x1e\xc2\x3f\xca\xc7\x8b\xd3\xa3\x8f\x17\x3f\x9e\x5d\xf6\x50\x87\x45\xbd\xb7\xc7\xaf\x3f\xfd\x70\xf5\xe1\xe8\xf5\xf1\x07\x1f\xcd\xf8\xc9\x6d\xb1\xcd\xf4\x71\x36\xa6\x78\xfa\x69\xa6\xbd\xf9\xe1\xe9\x6b\xf7\xf8\xe3\x6c\xbc\x3f\xaa\x1c\xd3\xc3\xd6\xf0\x87\xac\xe1\x3b\x49\xe0\x1a\x8a\xa0\x67\x9c\x9f\xd1\xe9\xe3\x0c\x42\x35\xbd\x9e\x49\x50\x33\xfd\x31\x74\xa2\xce\xfb\xfd\x35\x78\xca\x40\x1f\x24\x31\x04\xf7\x9e\x25\xb1\xa6\x9f\x66\x44\x78\x24\x0e\x97\x74\x16\x96\x55\x49\x74\x6c\xfa\xe3\x8c\x64\x60\x86\x0a\xfa\xe2\x16\xaa\x7c\x9a\xb9\x8e\xfd\x6c\x3b\xa6\xc9\x16\xaf\x5f\xaf\xed\x56\xb8\x09\x60\xd9\x77\x11\xda\x0c\x61\xfa\x7f\xf0\x8f\x3e\x5b\x44\x6d\xf8\xe9\x4d\x56\x5c\x27\xd9\xe5\x92\x95\x66\xcb\xb9\x94\xce\x8e\x32\x25\xcd\x16\x26\xb7\x7c\xde\x95\xef\x9e\xe5\x69\x71\x6f\x72\xaa\xb7\x5d\x79\x55\xab\x61\x1f\x1a\x32\x84\xde\x1a\xf4\xbe\xbb\xa2\xe8\x66\x85\x44\x7c\x75\xc6\xae\x96\x70\xa3\x2a\x42\xf8\x17\x52\x44\xbd\x26\x7a\x7d\x7e\xfc\xc3\xfb\x8b\xcb\x73\x60\xc0\xf5\x90\xc5\xc0\x7e\x98\xfe\x32\x6b\x0a\x63\x2f\x97\xb4\xfb\x5b\x93\xa5\xf2\x5b\x37\x63\xd7\x3c\xe1\x0f\xdd\x65\x52\x76\xaf\x29\xcd\xbb\x2c\x9f\x67\xeb\x94\xa6\x5d\x71\xcf\xe6\x54\x92\xa0\xf2\xc8\x76\x93\xd5\x2a\x63\x73\x40\xca\xe3\xee\x7b\xd1\x9d\x83\x6b\xe2\x6b\xda\x4d\xd9\x02\x6c\xf0\x45\xf7\x8e\x72\x79\xe9\x97\x5d\x49\x3a\x2e\x69\x77\x95\xcc\x3f\x27\x37\x14\x77\x0b\x0e\xef\x65\x72\x4b\x4d\xa6\x7a\x33\xd7\x0f\xdd\x5b\x56\x8a\xe4\x33\x8d\xdb\xfb\x99\xd2\x15\x58\x6a\x15\x79\x77\x99\xdc\xb1\xfc\xa6\x9b\x74\x4b\x96\xdf\x64\xb4\x3b\x2f\x56\x0f\xb5\x36\x65\xb7\xd7\x25\xed\x26\xa2\x9b\xe4\x0f\x5d\xc1\x6e\x21\x29\xc9\xfd\x71\xe0\x2e\xbd\x93\x03\x86\x92\x0f\xdd\x84\xd3\x46\x37\xe3\xee\x2f\xc5\xba\x7b\xbb\x2e\x45\x37\xa5\xe9\x7a\x45\xbb\x0f\xc5\x9a\x77\xaf\xd7\x2c\x4b\xe5\xa2\x29\x99\x3a\x14\x4b\xd7\xaa\x62\xdb\x87\x52\xb6\x58\xf0\x94\x72\x99\x73\xc5\x65\x63\x42\x4d\x26\x08\x76\xe2\x1e\xea\xc8\xc5\x22\x7b\x4d\x96\xd7\xed\x9f\xa8\x82\x63\xa3\x9e\x9d\xad\x76\x49\x3a\x41\x26\x38\xfa\xab\x16\xea\xec\xca\x36\xfa\x5e\x65\xa8\x3b\xeb\x6a\xcd\xfe\x92\x80\x40\xf4\xbb\xbb\x21\xa1\xf1\x77\x62\x04\xbf\xf0\x5c\xc2\x73\xa9\x9e\x57\xf2\x97\x27\xf2\x77\x01\xcf\xab\x39\xa1\xf1\x25\xbd\x5d\x15\x72\x9b\xda\x26\x68\x7c\x91\xdc\x51\xeb\x05\xcc\x50\xc5\xaa\x00\xfc\xf3\x04\xe8\x3c\x59\xcd\x41\x47\x55\xfd\xbc\xa3\x1a\x7a\xd1\x51\xcd\xfe\xb5\xa3\x3a\xf1\x7d\x47\x75\xe9\x3f\x0d\x55\xdd\x51\x1d\xfd\x1b\xae\x37\x23\xb0\x3f\x36\x3a\xa5\xb1\xac\x6e\x46\x7a\xe5\xb0\x87\xe1\x75\x44\xfe\x2a\x5f\x47\xbd\x2a\x12\xdb\x6d\xd4\xa8\x80\x6c\x60\xb1\x5b\x86\xc4\x1b\x75\xcb\xae\xcd\x48\x4f\xe8\xba\x65\x0f\xe5\xab\xac\x9b\x43\xdd\x2d\x95\x40\xfd\xf5\xfd\x74\xcf\x38\xdd\x5f\x14\xfc\x36\x11\xdf\xba\xb1\x2c\xf4\xf5\x3d\x54\x3a\x16\x8d\x4d\xaa\x53\x59\xfd\xbe\x98\x0e\x67\xf2\xda\xaf\xaa\x7f\x6a\x73\x02\x23\x80\x95\x56\x19\xb6\x6d\x37\x8d\x5e\xc8\x06\xa6\xc3\xd9\x76\x3b\xfa\xab\x7d\x3c\x38\x70\xa9\xdf\xbb\x54\x97\xf7\xe0\xb9\xcb\xf0\x9f\xf6\xd1\x7c\x57\x9b\xd9\x44\x4f\x6d\x6b\xf6\x60\xe4\xaa\x1a\x06\xa5\x7e\xa4\xd9\xaa\x7d\xe3\x87\xf3\x43\x51\xbf\xff\x3c\x2c\xfa\x03\xc8\x11\x59\xf9\xce\x53\xf0\xf5\x99\x3c\x9c\x88\x68\x74\x80\x3a\x8d\x3c\xdc\x04\x80\x88\x9e\xeb\xcf\xb2\xaa\xdc\xac\x7d\xc9\x6e\x57\x19\xdd\x4f\x8b\xdb\x67\x69\x31\x87\x31\xfd\x89\x40\x45\x93\x0d\xa1\x0c\xd4\x47\xd3\xac\x55\x6d\x48\x85\xef\xf4\xa7\xcc\x16\x11\x0b\x4c\x07\x14\x5a\xcd\x62\x79\x4f\x66\xda\x4a\xc0\x85\x97\xd4\xd8\xc6\xfe\xa8\xf2\xc5\xa9\x8e\x21\xd3\x62\xa5\x30\xfa\xfb\xdf\xff\xfe\xec\xcb\x52\xdc\x66\xca\x66\x44\xc4\xa2\xf8\x50\xdc\x1b\x93\x83\xb1\x08\x04\xaf\x58\x38\x53\x73\xae\x5f\xfd\x18\xc3\x4c\x8b\xe7\x6c\x10\x75\x5f\x26\xdb\x5a\xfa\x10\xe2\x1b\xb3\x7e\x9f\x1a\x05\x76\x86\x47\x1e\xda\x93\x44\x54\xc5\xf6\xc2\x89\x13\x9e\x5a\xf4\x22\xe9\xf7\xa3\x84\xf4\x7a\x83\x04\x10\xa8\x8d\x33\x75\x18\x97\xda\x1a\xb1\x04\xfd\xcf\x92\x50\xcf\x0e\x42\xae\x89\xe5\x65\x64\x84\x47\x25\xce\x71\xa1\xc3\x5a\xef\x11\x62\x11\x16\xb9\x90\x11\x78\x6c\x52\xda\xf6\x09\xaa\xb4\x53\xfd\x8d\x5d\x81\x71\x81\xe5\x0a\x39\xff\xd3\xc5\x98\x0d\x7a\xe3\xde\x40\xa5\x9b\x95\x1b\xe7\x78\xc5\xe9\x82\x7d\x19\x33\x5c\xae\xe8\x9c\x2d\x18\x4d\x9d\x53\x99\xa4\x32\xfe\x30\xca\x56\x8e\x57\x5e\xa4\xd4\x93\xbd\x66\x9e\x75\x45\xbb\xf7\x75\xb6\x88\x5c\x66\x27\x0f\x96\x05\x47\x1d\x27\x68\x1c\x1a\xf1\xac\x6c\xc0\xb7\xa3\xb6\xf6\xa6\x54\xeb\xf3\x43\x7c\x5f\x99\x3b\xd0\xa8\xf3\x8c\x1a\x74\x47\x5c\x6c\x24\xd3\x33\x7a\x48\x5f\x72\xa8\xc7\x93\x66\x4f\xe9\x2c\x60\xd5\xe8\xcc\x15\xd3\xde\xde\xec\x95\xa9\x68\x25\xf8\x38\xd1\x05\x95\xd9\x74\xe5\x73\x24\x1d\x09\x59\x17\x8e\xf0\xce\xa8\xa6\x66\x1c\xf1\xba\x41\x8e\x06\x22\x8a\xd0\xa7\x71\x71\x9f\x53\xfe\x56\xc3\x0b\xec\x8a\xea\x47\xb9\xea\xd8\x53\xf2\xc4\x1c\x35\xdb\xc8\xfd\xfd\x56\xd3\x69\x09\x74\x92\x45\x27\xf0\x7b\xf8\x15\x88\xc0\x1b\xdb\xcf\x03\x06\x6a\x23\x2a\x88\x11\x6e\xbe\x10\x8a\xd8\x9d\x18\xab\x87\xb6\x0d\xa9\x8d\x61\x2a\xcb\x5a\xe1\x55\xe4\x9f\x21\xa7\x41\x96\x57\x9a\xa1\xe0\x14\x50\x59\x68\x95\x5d\x10\x66\xf6\x13\x3b\x44\x05\x61\x35\x73\x48\x6d\x93\x05\x4a\x99\x2c\x9e\x67\x45\x4e\x41\xd9\x7e\x6f\x28\xe9\x79\x52\xb8\x96\x42\x46\xb3\x5c\x74\x20\xd1\x7d\xc1\x8e\x72\x87\x21\xc9\xee\x51\x60\x9a\xe7\x9f\xe9\x6e\xb3\x40\xb3\xdb\x5e\x9c\x2e\x63\x30\xd4\xf1\xbf\x2b\x3a\x9c\x6a\x0e\xad\x49\xd0\x06\x0a\x0c\x27\x84\x75\x58\xdd\xd2\x93\x70\x63\x02\xc1\x27\xbe\xdb\x02\xc2\xc6\x81\xc1\x22\x61\x1d\xdf\x58\x23\x39\x44\x89\x67\x60\x09\x8e\x90\x12\x9c\x90\x24\x38\x8b\x45\x68\x8b\xef\x19\x5b\x78\x7d\x2c\xc6\x0d\xf3\x53\x52\x80\x65\x19\xcc\x83\x35\xb9\xf7\x9a\xeb\xf7\xe7\x91\xff\x8e\x05\xea\xf8\xef\xe0\x06\xa0\x39\x50\xd1\xde\x1d\x3e\x09\x26\x51\xd4\x06\x2e\x3a\xb6\xdb\xfe\xd4\x8a\x96\x6e\x8b\x4a\x5d\x22\xae\x5e\x9b\x7f\xcc\xeb\xb9\x43\xf7\x44\xea\x56\xdc\xb1\x77\x82\xb1\x69\x8f\x09\xf5\xb6\x5b\x1c\x29\x40\x52\xfb\x20\xf3\xda\x20\xf3\xf6\x41\xf2\x96\x41\x72\x35\xc8\x46\x0f\xc2\xc6\x51\x4d\x91\xc2\x28\xee\x5d\x81\x8b\x3c\x39\x90\xd2\x31\xf5\x80\x31\x67\x6f\x11\x73\xef\x2c\x9b\xa1\x2f\x54\xf8\x48\x00\xc0\x01\x48\x34\x17\x91\x39\x5a\xc6\x2b\x89\x01\x8e\xc6\x2d\x93\x33\xdd\xd4\x21\x37\x03\x54\x46\x87\x9d\x6c\xcc\x35\x24\xb6\x4e\xf7\x52\xfb\xa1\x6b\xa6\xd6\x4f\xa5\x27\x3a\x09\xd3\x3c\xa0\xac\x19\x80\xde\x14\x19\xdd\x0b\x79\x91\x6a\x5b\xc8\x9a\xea\x8f\x19\xa1\xf2\xff\x61\x0b\x86\xca\x4f\xfe\xa4\xd7\x79\x96\x2e\x66\x41\xd0\xb0\xbc\x79\x94\x93\x7c\x89\xb8\x56\x0e\x04\xba\x9b\x50\xc5\xb5\xc6\xc0\xde\xa0\xa8\xf2\x61\xa6\xcb\xb4\xd6\x4e\xc2\xb5\xa1\x26\xd5\xa1\xe1\xb4\x97\x71\x5f\x36\x67\x73\x0a\x99\x2d\x34\xcc\xb6\xee\xde\xad\x5f\x72\x53\xd1\x51\xfa\x7b\x32\xa7\xb9\x50\x66\xe0\x96\xaf\x0c\x02\x58\x75\x7b\x36\x77\x0b\xde\x1f\xe1\xde\xbf\xf1\xe4\xbe\x87\x85\xd6\xe4\xaa\x7b\xe1\xee\x5d\x43\x07\x41\x77\xa2\x37\xd6\xf8\x84\x07\x70\x94\x75\x9b\xe7\x77\xba\x97\x2c\x04\xe5\x41\x7e\xe3\xd1\xd5\x03\xe0\x5e\x7e\xd5\x00\xcd\x53\x2f\x3b\x80\xeb\x7a\x9d\x5e\x96\x66\x0f\x02\x70\xab\x4a\x1a\x51\x41\x83\xd9\xc4\x72\x60\xdc\x74\x57\xa0\xfa\x5b\xe4\x3d\x54\xb9\x0b\xa5\xe9\x15\x87\x0e\x7a\x5d\x4e\xff\x58\x33\x4e\xcb\x6e\xd2\x75\x4d\xf7\x50\x67\x1d\x71\xcc\x70\x0e\xf6\x84\x9e\xa5\xa9\x39\xe6\x79\xd4\x38\x5c\xd8\xf1\xe3\x59\x54\xdb\xf8\xda\x54\x2f\xac\xed\xf4\x22\xd8\x1d\xcd\x42\x60\x6d\x59\xb7\x74\x45\x9b\x44\xc7\x3d\x33\xb0\x0f\xb7\x77\xa6\x5e\x58\x35\xa7\x91\xb6\x69\x8e\xd9\xac\xcd\xae\x03\xeb\x60\xa1\x39\xa1\xd6\xaa\xb5\x37\xee\x39\x92\x43\x4b\x28\x24\x3e\xa7\x14\xdb\x87\x38\x47\x58\xd8\xd7\x7c\x30\x42\x08\x4f\x39\x16\xb3\x2a\x12\xa8\x93\xd8\xe3\x81\x99\xb2\xfb\x0f\xad\x52\xbf\x36\xa5\xc5\xce\xb9\xac\xd5\x64\xa6\xb3\x59\xc0\x84\x96\xea\xa6\xc5\x5c\x52\x31\xf5\x38\xe7\x76\xf7\x9a\x4c\x70\x86\xda\x43\xb4\x59\x00\x07\x79\x97\x34\x49\x6b\x19\x6a\xc5\xeb\xb5\x5f\x17\x69\x5d\xb7\xb1\x5e\xc2\x35\xa1\x34\x6e\x3c\x33\xf9\x40\x28\x09\xf3\x3a\xc2\x34\xb4\x58\x57\xd3\xf3\x34\xd9\x89\xc2\x9a\xcd\xcc\x29\x84\xf8\x1b\x29\x56\xaf\xc9\xb1\xe8\xb4\x75\x4c\xe1\x5d\xe0\x75\x50\xe9\xa5\xd1\x2f\xa2\x06\x60\xbd\xfc\xcf\x71\xef\xdf\x04\xfd\x22\x7a\x98\x1a\x88\x55\x85\xa1\x73\x5b\x8b\xfd\x0d\xf7\xfe\x6d\xae\x32\x34\x4b\x9e\x27\xf7\x12\x6a\x5e\xd0\x86\x31\x9b\xab\xc0\x41\xca\x7a\x69\x03\x4c\xdf\xf1\xe4\x26\xdc\x09\xfe\x30\x65\x71\xb3\x82\xfb\x0b\x9d\xb5\xe7\x9b\x45\x20\x23\x89\xf6\x64\x08\xea\xea\x52\xf5\x40\xd6\xbf\x7b\xd5\xf4\xbe\x69\x0d\xb1\x91\x92\x52\x3c\x1a\xca\xcc\xb7\xd9\x37\x16\xe4\xae\x20\xee\xc9\x09\xfa\xc6\x72\x79\x50\xee\xf8\xe8\xed\x37\x96\x63\x7e\x39\x70\x7d\xf0\x4d\xe5\x9c\x5f\x3e\xff\xe2\x85\x68\xa2\x01\xf5\x02\xe6\x9d\x5e\x82\xa8\x27\x70\x79\x99\x76\x1c\xaf\x68\xa1\x59\x55\xd7\xc9\xfc\xf3\xf5\x9a\xe7\x94\xff\x89\x0c\x2a\x60\xd9\x7f\xcc\x12\xb1\x28\xf8\x2d\x18\x3d\xb6\xb2\xac\x4a\x2a\x2e\xd9\x2d\x2d\xd6\x02\x73\x50\x09\xdc\x54\x35\x05\x7d\xb6\x88\x5a\x54\xe5\x3e\xf2\xe2\x96\x95\x36\x40\x9d\x7e\x8d\x39\x2d\x8b\xec\x8e\x5a\x1f\x80\xb2\x46\x1e\x8b\x25\x05\xad\xfd\xf6\xaa\x8c\xee\xd3\xd9\x75\x49\xf9\x1d\xb5\xd4\xfd\x50\x2f\x60\xfd\xbb\xc4\xe4\x0b\x62\x36\x6d\x5c\x3b\xe4\x3d\xb7\x80\x2c\x2e\x54\x91\xa8\xc0\x9b\xf9\x32\xe1\xc9\x5c\x50\xfe\x36\x11\x89\x9a\x24\xd9\xb9\x28\x27\x83\x41\xfe\x97\x03\x5c\xc4\x69\x22\x80\xc1\x94\xcb\xeb\xd7\x75\x5f\xa8\xd0\x84\xa1\x51\x82\x9a\x3c\x6e\xf4\x05\xdd\x2c\x8e\x01\xa4\x91\x57\x2e\x45\xe9\x5b\x82\x5d\xa3\xc9\x43\xc9\x2b\xff\x1d\x7c\xd4\x17\xf7\x63\xd9\x9a\xd3\x49\x83\x48\xb9\x63\x39\x6f\xaa\xf0\xa9\x7c\x15\xea\x4c\x17\xe4\xd9\xaf\xe9\xe0\x59\xc7\xe7\x9d\x59\x0d\x79\x6d\x6c\xd0\xa9\xdb\x94\x48\x62\x80\x12\x42\xb7\x5b\x67\x99\x20\xd3\x8a\x58\x50\xf0\xa2\xef\xb9\x0f\x0e\x0c\x2f\x8a\x1c\xf0\x96\xed\xd6\x3e\x5e\x82\x6f\xfd\x7e\xbf\x96\x30\xb5\xef\x27\x54\x2c\x8b\x74\x16\xf2\x6d\x6a\xec\xd0\xfd\x91\x0e\xb2\x6d\xfd\x49\xb0\x97\xc5\x21\x1b\x90\x17\x88\x2d\x22\x3e\x65\x33\x85\x44\xf3\x29\x1b\x8c\x66\xca\xeb\x55\x4e\x98\x8e\x23\xfd\x04\x9f\xa0\xd6\xc4\x41\x4b\x13\xdf\x3f\xd9\xc4\xfe\xc1\xce\x46\xe6\x3b\x22\x3e\x0d\x7d\xf7\x85\x10\xd3\x62\x18\xc6\xb4\x30\x3e\xbb\x20\xa8\xc5\xe0\xf9\x80\xcf\x70\x42\x36\x2a\x48\xc1\x58\x26\x0d\x65\xd2\x2d\xcc\x1b\xbc\x8f\x20\x0b\xbf\x29\xe1\xed\x40\xbe\x29\x4f\xcc\x96\xb8\x2b\xfa\xfd\x1e\x24\xf5\x58\xde\x2d\x26\x85\xb2\x56\x18\xf7\x7a\x55\x27\x37\xb1\x07\x5a\x86\x90\xd6\x8c\xeb\x01\xa3\x97\xeb\x60\x34\xc4\xf6\xbf\x87\x69\x42\xf4\x15\x11\x53\x4e\xd8\x20\xca\x49\x54\xec\x33\xf4\xec\x7b\xb4\x9f\xff\xe5\xfb\xd9\x84\x11\x3e\xf8\x7e\x5c\xd8\x03\xd0\x85\xac\x6c\x36\x61\x83\xef\xc7\x6c\x07\x95\x19\x4e\x9b\x52\x19\xd9\x54\x08\xd7\x66\x52\x26\x29\xa2\xe9\x8f\x35\x5d\xd3\xd7\x94\xe5\x37\x20\x07\xa0\xa9\xb5\x6f\x51\xd3\xf6\xdf\xf2\x7b\x69\xd5\x4e\x94\x86\x18\xc4\x48\x1e\xfa\x35\xd8\x52\xe0\x22\x80\x1a\x2f\x99\xa0\x6e\x69\x28\x43\x25\x85\x3e\xd3\x89\xbc\x82\x99\x7c\xa7\x98\xb2\x6c\x11\x69\xd6\xa4\xaa\xcf\x6a\x17\x79\x16\x29\xea\xcb\xf4\xf9\x7f\xd0\xc1\x0b\x67\x94\x31\x11\x7a\x49\x34\x13\x33\xd3\x56\x36\x46\x97\x75\xa3\x48\x95\x71\x8e\x81\x1e\x31\x71\xa7\x4d\xe7\x3a\x8d\xb1\x2a\xf3\xe8\x08\x61\xab\x7a\xd8\x9c\x24\x6b\x90\x1a\xed\x9a\x45\x2f\xbd\x36\x4f\x5e\x3c\xdc\xbc\xdf\xcf\x23\xe3\x83\x63\x47\x4d\x1d\xb6\x88\x8c\x2f\xd8\x57\x43\x63\x8c\x5b\x46\xcd\x29\x45\x1d\x4e\x92\x89\x5e\xa1\xbb\xe2\x33\x04\x60\x38\x53\xb0\x62\xec\x25\xdb\x43\x94\x11\xb7\x9c\x87\xd9\x4b\xeb\x71\x36\xd3\xe0\xc1\x7d\x1d\x90\x17\xc6\xf9\x59\x24\x48\x31\xcd\x06\xa3\x19\xea\xf7\x79\x54\x4c\xb3\x19\x16\x58\xa6\x1c\xcc\x70\x02\x0f\xcf\x67\xc8\xdb\x27\x7b\x5f\x9f\xc4\xe6\x50\xe2\xdb\x75\x29\x7e\x61\x34\x4b\x9f\xfe\x1a\x59\xf7\x4d\xa3\xca\xce\x2a\xeb\xf7\x59\xb4\x73\x7f\xdb\xe8\xaa\xe1\x5e\xde\x1b\x79\xde\x6b\x82\x3d\xf8\x6a\xa8\x53\xd5\xd6\xda\x1b\xa2\x6a\x99\x94\x3f\x17\xbc\x16\xb7\x62\x77\x5b\xaf\x86\xdb\x6d\x5b\xbd\xd5\x3c\xc9\xe7\x34\x73\x46\x18\x00\xa7\x84\x01\x50\xda\x5b\xa1\xbf\x93\xb4\x33\xc2\x60\xbb\xd6\x75\xcc\xe4\xf0\x4d\x18\x72\x6e\x36\x57\xa6\xbd\x86\x5b\xcf\xed\xaf\xf6\x47\x93\xc8\x7a\x64\x2a\xf0\x0b\x84\xf7\x86\x68\x1c\xd9\xac\xbb\x56\x0d\xa1\x57\xfb\xa3\x7e\x3f\xca\xa7\x85\x04\xe7\x80\xec\xc9\x39\x51\xaa\x55\x86\xe7\xd7\x9c\x97\x38\xc8\x80\x37\x90\x08\xdb\x12\x1b\x00\x6d\x06\xae\xc3\x5e\x7d\xca\xd9\x1f\x6b\x5a\x67\x29\xb7\x4f\x00\x35\x13\x60\xf5\xd8\x02\x88\x15\xe4\x57\x8a\x73\x0c\x99\xb9\x61\x66\x0a\x7d\xf7\x3e\x45\xe0\x58\xb1\x6d\x08\xfb\x2f\x3a\x4c\xeb\xc9\x25\x9e\x2e\x6f\xe9\x97\xe8\x94\xd3\x62\x70\x30\x23\x1c\xcb\x87\xe7\x33\x62\x64\x8a\x5f\x19\xfe\xd5\x0d\x15\x6f\xe9\xf5\xfa\xe6\x7d\xbe\x28\x0c\x7c\x44\x01\x1b\xc9\x6c\x89\x17\xa8\x52\xc7\xba\x79\x69\x4e\x84\x09\xec\x35\x16\x12\x69\xce\x1e\x40\xb0\x53\x35\xa0\x83\x19\x13\x66\xda\xc3\xf6\x57\xab\x98\x83\x01\x7d\x81\x36\x79\x54\x60\x86\x2a\xe3\xfe\x78\xd1\x8c\x8e\xbb\x23\xc8\x4c\xfc\x87\xba\x59\x74\x94\x3d\xf5\x7a\x9a\xdc\xd2\xf7\xfe\xed\x62\x53\x4b\x42\x21\xf8\x7f\xba\x9e\xd3\xc8\x43\xe2\x3d\xdf\xf9\x14\x1c\x66\x00\x35\xc2\xb1\x98\xf2\x99\xe2\xc5\x05\xcd\xa1\xaa\x9c\x2f\xa9\xc4\xe5\xdd\x98\x71\xb8\xd6\x2a\xe3\x94\xce\x82\xfd\x90\x34\xcd\xa4\x7f\x29\xd6\xdd\x44\x08\x7a\xbb\x12\x14\x14\x77\x4c\xd5\xa0\x12\xa4\x11\xd9\xbc\x9b\x74\xa1\x46\xed\x12\xa6\x2b\x96\x89\xe8\xa6\x05\x2d\xf3\x7f\x17\x5d\xfa\x85\x95\xe2\x37\xe4\x44\x23\x4d\x46\xd6\x3f\xd9\xcc\xa2\xe0\xdd\xa4\xab\x76\x54\x7b\x9b\xfe\x11\x6d\x4c\x3e\x9b\x68\x17\xf5\xea\x0c\xaa\x99\x2a\xd0\x38\xd1\xe1\x5b\xf4\x7b\xe3\xba\xed\xd4\x56\x7b\x6f\xd4\x70\x39\xed\x96\xd4\xfa\x67\x69\x76\xe1\x65\x7e\x08\xd8\x63\xbd\xc8\xb4\x25\xef\x0c\x83\x2f\x55\x13\x59\x45\xaf\x1f\x9f\xa1\xd8\xc2\x69\x27\xbf\x0d\x8b\x0e\x06\xd8\xc0\xfc\x7a\xfb\xee\x62\x31\x96\x05\x4a\xfe\xa5\x6f\x81\x91\x77\xf3\xb4\x9f\x56\xa7\x84\x0d\xe0\x74\x53\x19\xe8\xdd\x98\x00\xac\x9c\x6e\xb0\x43\xd4\x1c\x6f\x31\xc3\xf5\x71\xe1\x5c\x6e\x74\x11\xd7\x9b\xc5\xc5\x60\xe0\x44\x7b\x55\xcd\x6c\xd3\xf3\xf4\x09\x41\x50\x8c\xc3\xfc\x43\x98\x3c\xae\x03\xd1\x68\x3f\xf9\x41\x8e\x4a\x59\x6a\xfa\x0a\xd2\xf8\xae\xc5\x16\xdd\x53\x94\x37\xd1\x67\xd4\xd0\xeb\xd6\xb7\x46\xb7\x37\x47\x87\xfe\xdc\xe6\x48\xf3\x27\x85\x67\x7e\x3b\xf4\x54\x0b\x14\x99\xe1\x7f\xc3\x89\xf7\x3a\x9a\xe1\xd2\x6a\x32\x74\x6a\x74\x30\x29\x27\x11\x27\x85\xac\x5b\xc5\xb6\xb6\xb8\xbd\xa1\xd2\xca\x7e\x3f\x01\xed\xba\x89\x20\x32\x2b\x9a\x26\xb3\x71\x0b\x29\x5d\xc0\xf5\x32\xc2\xb6\xb3\x05\xc2\xf9\x2b\x6d\xbd\x96\x91\x7c\x9f\x75\xa8\x67\x5d\x9c\xb9\x03\xb0\x26\xc3\xc3\xf5\xcb\xec\x70\x3d\x18\x20\x3a\x5d\xfb\x56\xc6\xeb\x01\xb3\x7e\x83\xa6\x1c\x0b\x4c\x3d\xba\xee\x3a\x9c\x4f\xcc\xcc\x2a\x1f\x48\xc0\x54\x9b\xdc\x49\x14\x4e\x1f\x66\xe1\x14\x29\xb1\x10\x1a\x47\x53\x10\xf6\xcd\xc8\x4d\x14\xc7\xb1\xcd\xe2\x91\x0a\xf9\x84\x91\xe1\x38\x91\x77\xa9\x52\x6d\x46\xdb\x6d\xc4\x89\x8a\x22\x8e\x5d\x2a\xc2\xaa\x2a\xcc\x88\xf5\x8d\xc6\xf0\x68\x88\x30\x9f\x55\xca\xce\x61\x88\xaf\xc8\x10\xdf\x93\x21\x3e\x26\x43\x2c\x01\xcc\x19\x19\xe2\x0b\x32\xc4\x97\x64\x88\x4f\xc8\x10\x1f\x91\x21\xfe\x48\x86\xf8\x0d\x19\xe2\xcf\x64\x88\xcf\xc9\x10\xff\x4e\x86\xf8\x2d\x19\xe2\x53\x32\xc4\xef\xc9\x10\x7f\x20\x43\xfc\x8e\x0c\xf1\x23\x19\x6a\x13\x89\x4f\x3b\x82\xb1\x83\x0e\xb4\xb5\x4b\xd2\x16\xf1\xef\xc1\x6d\xca\x3c\xf4\xf1\xaf\x92\x2e\x02\xcb\xfe\x2b\xd0\xaa\x7c\x93\x64\xd9\x75\x32\xff\x5c\x92\x0d\xcd\xd3\xf1\x74\x86\x41\x3e\x32\x9e\xce\xf4\x8d\x75\x25\xd8\x2d\x35\xfc\x85\xf7\xbe\x54\x4c\x7d\x29\x5d\x85\xc9\x5a\x14\x7c\x9d\xdb\x1e\x99\x04\x1d\x33\xd7\x16\x0c\xae\xbb\x90\x86\xda\x6e\x37\x15\x6e\xb8\x3b\xf0\xf3\x18\xe6\x13\xa0\x39\x8a\x0e\xb8\xf2\x93\xc8\xce\xcc\xe3\x5d\x99\x3d\x40\x34\x34\x63\x29\xf2\xd7\x72\x1e\xc2\xda\x74\xe2\x76\x7b\x6b\x73\x1d\xe7\x69\x3d\xcf\x71\x9e\xba\x1c\xd7\xc5\x3a\x4f\xcf\xd7\xf9\xf1\x97\x15\xe3\x34\xbd\x54\x53\xa6\xbe\xf1\x5a\x72\x7c\xcd\xf2\x54\xc9\xf3\xfc\xd2\x47\x6a\x16\x65\x4b\xc0\x56\xfb\x30\x18\x28\x44\x3e\x98\x64\x4b\xa5\x7d\xeb\x2a\x5c\xd1\x3c\x05\x65\x89\xca\xd7\xc7\x31\xc3\xb8\x0a\xb8\x7e\xdb\x2d\x53\x24\xe4\xd5\xca\xf0\x01\x8d\xba\x4e\xad\x8b\x4a\x4c\x31\x2f\xd6\xb9\xa0\xdc\x85\x91\xdb\xa8\x5d\x75\x85\xe5\x26\xbb\xc7\xb0\xf5\xca\xb1\x4e\x3d\x86\xd4\x61\x85\x75\x4f\xcb\xf1\x46\xb1\xe2\xd2\xf1\x7b\x3c\x2f\x6e\x57\x12\xcb\x4f\xc7\x1f\x2a\xcc\xd7\xf9\xf8\x0b\xfe\xbd\x60\xf9\xf8\x0c\xa7\x74\x41\xf9\xf8\x02\x1b\x4c\x61\x7c\x69\x1f\xdf\x0b\xca\x93\xeb\x8c\x8e\x4f\x54\xae\xb3\x7c\x4e\xc7\x47\xf6\x33\xbc\x7e\xc4\x1e\xaf\xed\x0d\xce\x12\x49\x37\x7f\xc6\x12\x33\x11\x22\xa3\xe3\x73\x9c\x52\x39\xb8\x39\x1d\xff\x8e\x15\x0d\xa3\x96\x69\xfc\x56\xbf\x8e\x4f\x71\x56\x14\xab\x72\xbc\x11\x85\x48\xb2\xf1\x3b\x9c\xd3\x52\xf6\xf4\xb1\xaa\x94\x20\xc6\xdb\x6a\x75\x32\xca\xff\x56\xe9\x20\x2f\x9b\x2b\xe5\x1f\x5f\xc2\xc0\x60\x39\x6a\xb1\x05\xcc\x19\xd7\x10\xb2\xb9\x19\x26\x91\x15\xaf\x5f\xa9\xbe\xea\x15\x8a\x10\x1a\x7b\xee\xe0\xa2\xc7\xc1\xa0\x05\x46\x98\x58\x07\x08\xbf\x93\xb8\x43\x6b\xdb\x00\xfc\xeb\xe8\x46\x29\x91\xd1\x63\x53\xe7\x95\xe0\xec\xe6\x86\xf2\xa8\xa7\x64\xae\x58\xe2\xb1\x28\x3c\x60\x80\xdb\x62\x5a\xc9\xcd\x88\x36\xf7\xb6\x28\x6c\xce\x11\xaa\x7c\x77\xc9\xf6\x96\xb2\xaa\x7c\xbe\x5b\x9f\xcb\x87\x15\xd5\x52\x54\x03\xd4\x94\xfa\xf9\x35\xed\x26\x56\x77\xa7\x87\x02\xed\xb3\x10\x06\xd6\xd1\x61\xde\x5a\xfd\x6f\x6f\x92\x3c\x2f\x44\x57\x22\x09\x5d\xa5\x9a\x2e\xb1\xd1\xee\x35\x9d\x27\x6b\x79\xd1\x2b\x2c\x14\x82\x92\x58\x34\xd4\x86\xbf\x2d\x16\x8b\x86\x67\xdf\xf6\x6e\xec\xd1\xed\xf6\x5b\xbb\xb2\x58\x7c\x7b\x5f\x14\x96\xaa\xfc\xf3\x0b\x4f\xfb\x6a\x78\xc8\x9c\x43\x5e\x36\x18\x20\xcd\xd5\x04\xcf\xc1\x64\x6f\x88\xb9\xaf\x6d\x89\xd9\xfe\xbe\x32\x9d\xc8\x77\x2d\x82\xd7\xb5\xb9\x59\x11\x8b\xa4\xbb\x2e\xf5\x50\x05\x3b\x73\xf3\x45\xed\x7e\xb8\x67\x79\xe3\xca\x0e\x50\x79\x09\x3b\x8d\xd7\x64\x70\x45\x86\x36\x67\xff\x40\x69\x28\xa2\x8b\x03\x80\x30\x64\xe5\xc5\x60\xe0\x61\xf2\x0d\x87\x2a\xcc\x43\x79\xf2\x57\xcf\x27\xf9\xfe\xf3\xf1\x10\xe1\x82\x3c\x3f\x2c\x5e\xe6\xe0\x47\x8e\x4d\x8b\xfd\xe7\x3e\xd2\x53\xcc\xc2\x50\xfa\x21\x65\x16\xc7\x31\xf3\xc9\x35\xb4\xb9\xf4\xba\x20\x9a\x5d\xe0\x5e\x17\xc4\xab\xd1\x44\x28\xcf\x77\x39\x19\x1d\xe6\x2f\x05\xa8\xfe\xf1\x69\x1e\x7a\xbe\xcb\x67\x30\x33\xa0\x10\xab\x67\x06\x82\xcb\x39\x2c\x62\x62\x49\x31\xcd\x14\x0e\xe7\x4b\x39\xbd\x34\x47\x3f\x42\xfe\x28\xa0\x56\xbc\x37\xc2\x1e\xd9\x69\xe0\xaf\xda\xe9\x27\x1a\xaa\xf1\x7f\x4d\x83\x70\x85\xad\xf0\x54\x48\x92\xc8\xae\xa0\x84\xe9\x66\x15\x8f\xfe\xaf\xad\xa2\x6b\xb5\xb6\x92\xea\x03\xda\x7c\xfc\xff\xe6\x6a\x0e\x61\x35\x9d\xe4\xc9\x5e\x5e\x6f\x0c\x84\x86\xfb\x32\x3c\x63\x95\x4a\x43\x9b\xcf\xfe\x51\x94\xd8\x77\x28\x37\xde\x71\x44\xb1\x12\xd4\x39\x7b\xba\x89\x81\x46\xe3\x21\x28\xb5\x1b\xc6\x70\x41\x38\xf8\x76\xec\x24\x2a\x9c\x45\xee\x30\x72\xae\xcd\x13\x47\x12\xaf\xd1\x84\x86\xe9\x45\xf5\x14\x44\x50\x5d\x37\x5c\xaf\xca\x60\x01\x11\xda\x9c\xdb\x3b\x79\x6a\x59\x29\x64\x6f\x38\x23\xd7\xb5\xee\x27\x64\x0d\x2c\x03\x1f\x39\xd6\xea\xe1\xc0\x5a\x31\x1a\x5c\xaa\x29\x99\xb3\x98\xdc\x8d\x73\xcc\x10\x2e\x0c\x4b\x16\x00\x93\x66\x62\x02\x45\x68\x0a\xa9\xea\xa6\xc9\x60\x34\xd3\xbe\x16\x92\xc1\x8b\x4e\xf0\xad\x9c\x29\xfb\xe6\xa8\x96\x4a\xac\x10\xb2\x4b\x2b\x83\xd3\x44\x68\xf3\x7b\xeb\xc0\x46\x6d\x03\xf3\x6b\xc4\xa5\x1e\x67\xe2\x06\x57\xfe\x73\x83\xf3\xd8\xf3\x16\xb1\x54\x22\xcb\x01\xc3\x73\x52\x0e\x5e\x74\x92\xe9\x5c\xde\x41\x77\xb0\xcc\x77\x08\x53\x92\x4c\x4b\x33\x09\x4b\x92\x46\x99\xee\x47\x39\xf8\x9e\x10\xb2\x44\x89\x1c\x71\x86\xa1\x5c\xee\x9a\x59\x84\xf3\x58\x0e\xfe\x3a\x0b\x66\xcf\x5c\x6d\x4b\x3c\xc4\x19\x36\x34\xe8\x02\xe1\xb6\x4c\x25\xfe\x1e\x55\x43\x45\x4d\xeb\xeb\x88\x02\x02\x95\x29\x14\xd1\x9e\x1a\x37\xef\x3e\x02\x19\xa1\xcd\x5b\x8b\xe8\x58\xf1\xad\x2b\xb5\x83\xbc\xaa\x21\x72\xd5\x32\x29\x6d\x7d\xc1\x5e\xd6\x9d\xad\xb3\xe5\x35\x6e\xe8\xf1\xe3\xd9\x22\x3a\x1d\x0c\xb0\xf1\x15\x6b\xb0\xc9\xce\x57\xc5\xbf\x13\xbf\x47\x1f\xe4\x92\x43\x4f\x22\x8a\xc6\x7b\x91\xf1\x31\x2c\x91\xd2\xed\x76\x8f\x2a\xf4\x10\x9e\x14\xa7\x0e\xf5\xfb\x3a\x31\xb6\x7d\xa9\xea\x40\x69\xd3\x0e\xab\xaa\x80\x1d\xe4\x38\x5e\x00\xf7\xf4\x08\x36\x7a\xa4\xe3\x26\xfd\x83\x0d\x65\xa2\x1d\xc6\xeb\x37\xac\xa6\x6c\x3c\x0f\xce\x0e\xfe\x1e\x1f\x20\x1c\x60\xc6\xe3\x69\x1b\x2e\x0c\x6e\x43\x1b\x58\xf4\xcc\x84\x46\xa4\x72\xbc\x21\x1f\xcb\xeb\x33\xaa\x2a\xc0\x76\x5b\xc3\xa7\xd9\x16\x14\x1f\xc6\xd3\x2e\x6f\x7a\xb4\xec\xd1\x3c\x05\x44\x8b\xa6\x10\x21\xaf\x58\x4b\xdc\x57\x22\xde\x1a\xe7\xc3\x4c\x62\x7d\x82\x3f\x6c\x72\xcb\xe2\xa3\xce\x24\x59\xe2\x72\x0c\x49\x40\x2b\x91\xbd\x20\x70\x53\x83\x3f\x59\x67\x4e\xea\xb3\x64\x2e\x12\xb3\x49\x0b\xe4\x07\x89\xfa\x36\x06\x85\x27\x90\x32\x9c\xd1\x1a\x71\xe2\x22\xcf\xd7\xab\xe4\xa8\x4e\x79\xd0\x3c\xed\x79\x31\x08\x15\xc5\x1e\x01\xe2\x57\xf9\x68\xa0\xef\x37\xcb\x48\x44\x6b\xb5\x4f\xea\x98\xe7\xd8\x67\x03\xfb\xd2\x84\xa8\x26\x47\xf0\xca\x68\x8d\x14\x2d\xd9\x2c\x8c\x4c\xd3\x6c\x63\x4d\x08\xe2\x1c\xc9\x65\xb2\xae\x23\x1a\x32\x09\x86\x36\x79\xc4\x50\xe8\xd3\x04\x68\x28\x3d\xe1\x3b\x4a\xb7\xe4\xaf\xea\x80\x65\xd3\xce\x57\xb0\x00\xda\xea\x90\x58\x48\xf5\x75\x96\x03\xaa\x6a\x37\xac\x2f\xe7\x6a\xc7\x59\x4c\x78\xab\xfa\xcd\x90\xe3\x84\x3c\x0c\x06\x86\xbd\xda\x02\xf2\x50\x90\x06\x84\x97\x44\x6a\x54\xd3\xcc\x74\xba\x15\x60\x77\x3c\x09\x57\x1a\x15\xb5\xbb\xbc\xfd\x2e\x18\xe2\x96\xda\xbf\x72\x21\x24\x55\x1b\xf0\xac\xb9\x78\x6f\x19\xda\xa1\xd0\x1a\x27\xc1\x6d\x26\x40\xf9\x04\xb5\x5d\x02\xba\x97\x62\x7f\x84\xbf\x47\x70\xa8\xc5\x57\xee\x2c\xbc\x37\xb4\x7c\x85\xca\x1e\xa4\x66\xd4\x90\xa7\x68\xe7\x3d\x09\x3b\x42\xca\x32\xf0\x28\x9f\x4f\xd9\x4c\x1d\xc2\x06\x13\xcc\xee\xbf\xaf\xf1\x1d\x7d\x38\x11\x9c\x9d\x10\x14\xd5\x2a\xc7\x6e\xe7\xa3\x6a\x57\x26\xcf\xa7\x66\x70\x1f\x08\x32\xf4\x02\xab\x5b\xe9\xb1\xcf\xca\x31\xe2\x8f\xda\xae\x3d\x14\x2f\xb9\x5a\x3b\x10\x9b\x4c\xc5\xec\x15\xd3\xe1\x1b\x8d\x2a\x8f\x18\xbc\x80\x19\x2c\x24\x16\xe7\xdc\x91\x8b\xc1\xc1\x0c\x97\xf0\xf0\x7c\x86\x33\x78\x30\xb8\x4b\x0d\x40\x39\x3c\x3e\xc7\x09\x2e\x71\x21\xe9\xa3\x0c\x55\x95\x35\x93\x1c\xda\x28\xb1\xed\xdb\xbf\xda\xb5\x29\x36\x5f\x43\x56\x76\x54\xd7\x52\x60\xe3\xc7\x97\xab\xad\xf2\x0e\x60\x63\xca\xb6\x15\x41\xbb\xd9\xd4\xa8\x6a\xef\x96\x5c\x82\xe1\x5e\x3b\xe8\xd8\x34\x97\x1d\x98\xc2\xad\xab\xea\x3b\x9d\x1a\x62\xba\x2f\x02\x10\xe1\x3a\x53\x2b\xeb\xd1\x55\x4f\x30\x89\xd5\x15\xd5\x40\x8b\xbc\xfe\xb5\x73\x03\xcd\x15\x46\xeb\x1c\x61\x05\x8d\x9f\x82\xb8\xba\xde\xf6\x83\x64\xee\x87\x26\xcb\x1c\xac\x4f\x1a\xf9\x28\xda\xbc\xd7\x14\x46\x73\xf6\xe8\x17\x81\x6b\x1c\x67\xc0\x47\x3a\x7c\xa2\x24\x1c\xe3\x96\xdb\x65\x58\x55\x9f\x62\xc5\xb7\x5f\xe2\x4f\x0d\xbd\x54\x9d\x72\x0a\x21\xde\xa1\xdd\xd7\xe4\x93\xa7\x34\xfb\x5a\x2b\xcd\xa6\xc9\xcd\xfe\x6d\xb2\xfa\xbf\x6d\xd2\xed\xbb\xec\x35\x32\x2f\x87\xe7\xde\x51\x2e\xd8\x5c\xeb\xa0\x71\x4b\x37\xc4\x2b\x5e\x88\x42\x62\xe2\x71\x92\xa6\xa4\xd5\x64\xb1\x25\xc2\x4a\xcf\x50\x6f\xdd\xdf\x3e\xd3\x87\xdf\xba\xac\x34\x66\x22\xa9\x46\x06\x0d\x98\x32\xed\xe2\x82\x30\xed\xae\x47\xe9\x62\xdd\x25\x19\x91\x10\x9a\x2d\xa2\x86\x3c\x86\x23\xc8\x7b\x9c\xde\xd0\xa8\xc0\xaa\x1c\x47\xea\xf2\xec\x1a\xd8\x99\x90\xe1\x61\xe2\x18\x8a\xc9\x60\xd0\x56\x6a\x9a\xcc\x90\x0e\x59\xd6\xd6\x52\xee\x95\x51\x25\x72\x84\x0b\xaf\x25\xd5\x4a\xde\xde\x8a\x2e\x21\xdb\xc0\x05\x78\x00\x0d\xa6\x53\xe6\x29\x5b\xe6\x14\x66\x06\xe6\xc2\xb0\x03\x82\x92\x34\x99\x2f\x6b\x11\x2e\xfc\x99\x8c\xef\x93\xec\xb3\x8e\x88\xe1\x0a\x89\x62\x55\x16\x5c\x34\xcb\x51\x70\xdb\x24\x73\x57\x12\xfd\xb0\x7b\xc7\x78\x39\x7f\x72\xdb\x84\x5a\x5e\xca\x73\xb7\xdc\x05\xb9\xb1\x92\x13\x4b\xff\x5d\xb9\xc2\x57\x29\x5f\xdf\x62\x3b\x37\xd7\x2d\x2b\x4b\x96\xdf\x74\x3f\xd3\x07\x2f\xd6\xb6\x3c\xd0\xc3\xad\xd7\x2d\x6d\x95\xcc\x81\x8b\xc5\x16\x91\x89\xed\x9f\xcf\x50\xfc\x99\x3e\x04\x28\x4b\xc0\x8c\xd1\xa3\xe2\x03\x85\x4e\x4e\xf9\x8c\x6c\x58\xfa\x65\xcc\xf1\x67\xfa\x30\xa6\xf8\x2e\xc9\x2c\x8e\xb8\x16\xe3\xbd\x11\x5e\x64\xc9\x8d\xfc\x37\xec\xa2\xaa\x75\xad\x6b\xae\x5c\x15\x0c\x5d\xd2\x39\xb8\x13\x93\x5d\x42\x9e\x55\xf5\x70\x2b\x76\x8c\x43\x4c\x73\xc0\xb7\x62\x96\x7e\x31\x26\xbe\x22\xe8\xb4\xec\x31\x7c\xc6\x34\x2e\xd6\x42\x42\xae\xa0\x3f\x72\x87\x34\x77\x02\xa7\x25\x15\x5e\x8c\x7c\x41\x86\x06\x09\x6c\x86\xf8\x81\x89\x11\xb3\x0e\x97\x0d\x68\x0a\xff\x8e\x95\x4c\x44\x1c\xf7\x7a\xda\xfb\x21\xec\x2d\x6f\xe5\x71\x7d\x57\xc2\xe8\x9b\xc1\x63\xa8\x5e\x9f\x16\x1a\x73\xfe\x30\xcf\x68\x37\xa5\x02\x02\xd4\x8c\xbb\xbd\x81\x18\xf4\xba\x2f\xf7\xe5\x03\x9c\xe3\x21\x84\x89\x33\xb7\xe9\x53\x71\xb7\x34\x16\x3b\xa5\x53\x3e\x9b\xfd\x53\x2d\x42\x3f\x5d\xf3\x95\xc1\x8b\xf5\x4c\x62\x6f\x56\x5c\x7c\x7c\x79\x28\x6a\x9a\xa6\x39\x69\x6b\x45\xbb\x9c\xaa\xcd\xa4\x2c\x1e\xde\x16\xf9\x80\x98\xfe\xc8\x1b\xc6\x75\xdd\x78\xde\x75\xf3\x0d\x1d\xf3\x8f\xb4\x3b\xb7\xb5\xb3\xec\xf5\xd2\x24\xa9\x35\xb4\x89\x6d\xfe\x18\xf4\xf4\xd2\x97\x81\x07\x86\x58\x1e\x0f\xb2\x37\x0a\xfb\x02\xf3\xd2\xea\xdd\xd8\x75\xca\xa0\xb8\x30\x68\x1b\x23\x5a\x76\x03\x5a\xd7\x52\x2d\x75\x12\x0e\x2d\xa8\x37\x5c\x83\xe1\x56\xb3\x63\xe1\x46\x79\x45\x86\xbe\x06\xda\xb4\x00\x6c\x37\x81\xce\xa1\x79\x91\x0b\x96\xaf\xa9\x4b\x22\x7b\x43\xac\x75\xcf\x0b\x84\x05\x21\x24\x81\x23\xaa\x90\x66\xdd\xf2\xff\x2e\xcc\xa2\xae\xcb\xe5\xfb\x7c\x5e\xdc\xb2\xfc\x26\xd2\x8a\x8a\x5d\xad\xba\x81\x99\xcd\x5c\x5b\x0e\xbf\xd4\x8e\xf0\x43\xde\x5c\x38\xcc\x7f\x7f\x74\xc8\x5f\xc9\x1d\xbd\xbf\x1f\x84\x8f\xd3\xe0\x0d\xfa\xbf\xdd\x6a\x47\x7c\x79\xbd\xd5\xda\xfd\x51\x0b\x4f\xf7\x84\x13\x4b\x77\x5a\x3a\x22\x62\x72\x36\x30\x38\x5c\x80\x06\x2a\x88\x2a\xfd\x4d\xb7\x45\x1b\xe8\x97\x5d\x6d\x80\xa4\xa9\x57\x6c\x30\x98\x91\xe1\x96\xd6\x26\xb0\x58\xb5\xf8\x1e\x57\xb7\xc0\x74\x7f\xdf\x2b\x3e\x53\x5d\xd4\x28\x18\x38\xa0\xdf\xbf\x4e\xae\xe9\x9f\x19\x31\xef\x9e\x27\xab\x53\x88\xb3\x73\xb1\xae\xfb\x18\x02\x27\x39\xcb\xa4\x8c\x5c\x6c\x5c\x66\x74\x6c\x3d\xcf\x3b\x68\x63\x3d\x59\xb8\x61\x93\x30\x3e\x88\x37\x21\xd8\xd7\xd4\x19\xeb\xde\x70\x4c\xf3\xf5\xad\x56\x48\xd8\x1b\xe1\x7b\xce\x84\x7a\x1e\xe2\x79\x91\x2f\xd8\xcd\x5a\x7f\x1b\x56\x95\xdc\xad\x4a\x75\x97\x23\x2c\x20\xa0\xab\x0a\x66\x96\x94\xa5\xa4\xb5\xdf\x84\x10\x1b\x6d\x54\x6c\xa5\x7c\x49\x39\x13\xe5\x87\xa2\x28\x83\x6b\x8e\xa3\xcd\xb0\x43\x77\x76\xdd\x3a\x1e\x00\x0f\x3c\xfc\x2b\x03\xa1\x5f\xeb\xba\x53\x2c\x50\x03\xa8\x94\x47\xfc\x1b\x9a\x9a\x40\x3d\x1f\x98\xa0\x3c\xc9\x1a\xfd\x94\xd7\xf1\x76\x1b\x39\x23\xdc\xa1\x73\x15\x42\x63\x9e\xdc\x13\x81\xa9\xe7\xc2\x5d\x4e\x47\x0d\x73\x33\x84\xa5\xe8\xf7\x8b\x60\x4d\x84\xf1\x4f\xc1\xe1\x0b\xe6\x61\xf0\x1e\x15\x89\xf0\x72\xc9\xca\xf7\x36\x96\x5f\x4a\x12\xb9\xcf\x8b\xb2\x64\xd7\x19\x7d\xe3\xa6\xe2\x1c\x0a\x92\x52\x5e\xec\x30\x93\x6f\xa9\xfa\xb4\x96\x78\x2b\x84\x07\x69\x2c\x8e\xea\x72\x73\x0b\xd6\x3d\x83\x19\xf5\x52\xf0\x73\x84\xbc\x30\xc4\x85\x56\xb6\x41\xb1\xb7\x28\x1d\x41\xce\xe9\x22\x83\xc5\x34\xa9\x11\xc3\x56\x6c\x83\x2d\xef\x55\x22\xf6\xc0\x01\x94\x75\xe0\xa6\x00\x4c\xf1\x22\xb1\x50\x70\x4a\xf5\xf6\x5d\xc1\xcf\x16\x20\xc5\x15\x05\x57\x2e\xba\xea\x6b\x66\xd8\xd5\xc3\x9a\x1b\x47\x12\xba\x3b\x57\x91\x68\x09\xa1\x53\xed\xf7\x9c\xe9\x5a\x67\x70\x08\xeb\x4e\xbe\xb6\xdb\xa8\xbe\x31\x14\x16\xaa\x11\xad\x36\x22\xc1\xa2\x91\x99\x0a\x60\xab\x20\xa9\xde\xe9\x3e\x0a\xae\x62\x6f\x18\x5d\x6f\xbd\xd3\xfe\x86\xf7\x47\xa8\xd3\x3b\x33\x81\x11\xe5\x36\xa1\xfe\x4c\x6b\x5b\x71\x2f\x45\xc7\x20\x96\x7d\x39\x49\x56\x50\x66\xbb\xed\x5d\x50\x55\x1c\x05\xfe\xcb\x16\xbc\xb8\x8d\xb8\xca\x6c\x3c\xa4\x95\xba\xc8\xb3\xff\x89\x26\xe3\x4f\x6c\xfb\x1e\xe5\x22\x9a\x8c\xff\xb6\x1d\x7d\xbf\x7d\x7e\x80\xa2\xc9\xf8\x4d\x96\xdc\xae\x68\x8a\x26\x50\xc9\x77\xcf\x94\x61\x1d\x47\xe1\x48\x2b\x88\x31\xd2\xdc\x47\x06\x99\x7e\x65\xaf\x92\xc9\x26\x2d\x72\x38\xa6\x63\xfd\x34\xd2\x2e\x7b\xe8\x54\x0c\x06\xb3\xaa\xea\xb4\x2a\x71\xbc\xd7\xfe\x08\xb4\x6a\x76\x57\x14\x5d\xb5\x7e\xb4\x9b\x17\xf9\x3e\xd3\x72\xfe\xae\xe1\xd0\xc7\xbf\xfe\x9a\xbf\xf7\x7c\x37\x5e\xd3\xae\xc9\x83\xa1\x44\x22\xc7\xa3\x7d\x74\x96\x4a\x3f\x67\x99\xdc\xd1\x6e\xd2\x6d\xec\x8f\x08\x69\xcd\xee\xb8\x67\xad\x28\x45\xcb\x3e\x8a\x10\x02\x86\x82\x56\x9f\xd3\xfa\x6c\x36\x8e\x94\x8a\xc1\xa1\xf6\xc0\xd9\x02\xdb\x8d\x71\x13\xa6\xe7\xa4\x11\x1b\x53\x9f\xaf\x7e\xbf\x45\x3f\xb6\x71\xf6\xb0\x35\xc6\xe8\x84\xee\xcb\xea\x48\xb0\x68\x09\x3e\x2b\x29\x86\x4e\x1e\xbb\x7b\x82\xf8\x2f\xdb\xed\xde\x08\xe7\xb1\x0f\x70\x25\x76\xd4\x83\x05\xec\xb1\xbc\x9b\x83\xeb\x28\x03\x9c\xc9\xde\x10\xe1\x5d\xd7\x65\x0e\x68\x43\xee\xbb\x65\x4e\x82\x00\x71\xbe\xe5\xa6\xe7\x04\xae\x3e\x37\xc2\x46\x45\x15\xdb\x6d\x5b\x00\x8c\x89\x18\xd3\x9a\xd1\x26\xda\xe8\x0b\x47\x12\x2c\xaf\x2c\x91\x00\xe6\x7b\xf6\xcd\x23\xc1\x3c\xd5\x08\xa4\x89\x30\xab\x12\x31\xd3\x9e\xad\x8c\x9b\x29\x1f\xb1\x78\x06\xe6\x4e\x61\xcc\x1b\xcd\xfe\x70\xd1\x6f\xf6\x59\x2e\x28\xcf\x93\xac\x7c\x46\xf3\x3b\xc6\x8b\x5c\x19\xae\xf7\xf2\x22\xa5\xfb\xb7\x1a\xa1\x68\xc9\xbd\x16\x2c\x2b\x5b\xbf\x48\x24\x36\x61\x60\x8c\x6d\xbe\x32\xd8\x1d\xb2\x66\x30\x3c\x6e\x2d\x76\x4b\x45\xb2\xf3\x43\xe6\xbe\xcc\x93\x3c\xe1\x0f\xfb\x0b\x9a\x88\x35\xa7\x5e\x17\x20\xb2\x50\x0f\x07\xd6\xe0\xed\xdd\x2b\x0b\x7f\x50\xb2\xbf\xbc\xc8\x32\x3f\xbf\x4b\x7b\x96\xb1\x6b\xef\xf5\xea\x96\x7d\x61\xde\x00\x34\x10\x76\xef\x94\xdf\xb1\xb9\x57\xbb\xde\x31\xb5\xf7\x67\xf3\xe2\x76\x95\xb4\x27\xaf\x05\x4d\x5b\x7b\xce\xd7\xb9\x60\xb7\xed\xcb\xa1\x1d\x75\xf6\xb0\x5e\x7b\xed\x7e\xb6\x35\xef\x1d\xa3\xf7\xed\x4b\xc7\x8b\xb5\x08\x86\xe3\x6f\x8f\x2f\x82\xe6\xb2\xce\xfd\x72\xbd\x92\xfb\xc9\xe5\x52\x61\x06\xed\x2b\x5f\xe7\x59\x51\xac\xda\x6b\x91\x59\xf7\x21\xe4\xdf\xae\x86\xc0\x01\x8e\xfb\xe2\xf9\xdb\x6d\x4d\x7c\xa6\xcc\x05\xcb\x7d\x6d\x2a\xdf\x5e\xf4\x99\x01\xcd\x5e\xaf\xf3\x1b\x96\x37\xde\x5b\x32\xba\x08\x51\xde\x5e\xd3\x71\x46\xd2\x96\x8d\x28\x17\xb1\xc8\x69\x2e\x9e\x09\x8d\xef\xed\x17\x79\xf6\x20\x33\x18\x7f\xaa\x66\x29\x03\x54\xdf\xd9\x28\x81\xdc\x22\xc3\x6b\x3c\xc7\x29\x5e\xe2\x05\x5e\xe1\x5b\x7c\x87\x6f\xf0\x35\x7e\xc0\x57\xf8\x1e\x1f\xe3\x2f\xf8\x0c\x5f\xe0\x4b\x7c\x82\x8f\xf0\x47\xfc\x06\x7f\xc6\xe7\xf8\x77\xfc\x16\x9f\xe2\xf7\xf8\x03\x7e\xf7\xa7\x70\x6f\x1f\x9b\x97\x03\x97\xf0\x58\xc8\x6b\x87\xdd\x02\x90\x89\x8f\xe5\x1c\xf4\xfb\x3b\x3e\x6c\xb7\x9b\xaa\xf3\x18\xb3\xf2\xd4\xb8\x87\x91\x30\xfc\xd1\x62\x25\x4d\x3a\xaa\x07\xe5\x7a\xd5\x0e\x58\xfe\x88\x7b\xc7\xa7\x3f\xf5\xf0\xe6\x86\x8a\x31\x38\xe1\x3f\x3e\xfd\x29\x24\x35\xaa\x5d\xf7\xc0\x23\xee\x65\x45\xf1\x79\xbd\xf2\x8b\x7f\x80\x14\x5c\xc2\x7b\x69\xdf\xeb\x35\xbe\x8f\x8f\x4f\x5e\x1f\x9f\x5f\x1d\xff\xff\x2f\x8f\x4f\xdf\x5e\x7d\x3c\x3f\xbb\x3c\xbb\xfc\xe5\xe3\xf1\x45\xbf\xbf\xbb\xa3\xf5\xbc\x3d\xbc\x09\x89\x22\xd9\x0b\xe5\xe2\xe1\xf8\xf4\xa7\xb8\x91\xbf\x42\xf8\x51\xf6\xf1\x4c\x1e\x11\xf2\xd1\x3e\xe2\x47\xd9\x53\x93\x5a\xba\xd4\x23\x77\x02\xc8\x1b\xb3\xa4\x61\xba\xd5\x1a\x38\xb7\xdf\x77\x0e\xe0\xdc\x1e\xb1\x8d\xe9\xe9\x67\x53\xea\xa9\x59\x7e\xab\xb2\xb4\x14\x7f\x8c\x4d\x22\x8c\xed\x18\xce\x20\xf9\xdd\xeb\xaa\x4a\xb2\xbd\x7c\xeb\x7d\xd2\xd1\xc1\x4f\xf5\x03\x7e\x8c\x6f\x29\xbf\xa1\xe4\x54\xfd\xc3\x5c\xe5\x80\xa6\xa9\x40\xe5\xc1\x2b\x7e\x8c\x7f\xf8\xf4\xfe\xed\xd5\x7f\x1d\xff\x42\x98\x7d\x94\x65\xd6\x2c\x7d\x57\x70\x99\x5d\x3d\xe1\xc7\x98\xe5\x25\x04\x98\x66\xe6\x49\xb6\x95\x7c\xa6\x70\x2f\x13\xe6\x9e\xf1\x63\x3c\x4f\xf2\xf7\x60\x74\x49\x98\x7b\x96\x5b\x9c\x3f\xd8\x74\xfb\x8c\x1f\x81\x3e\x27\x0c\xfe\xf0\x63\xbc\x56\x3d\x5d\xab\x1e\xbe\x31\x77\x29\x29\xdc\x33\x96\x93\x76\xc3\x4a\xc1\x1f\x48\x61\x1f\xd5\x7c\x50\x2e\xc8\x5c\x3f\xc8\xba\x13\x9e\x93\x39\xfc\xe1\x47\x15\x7b\x8f\xcc\xd5\x3f\xbc\x9b\x30\xf3\x73\xf7\xdc\xf1\xd2\xdf\xad\xf3\xb9\xff\x4d\xbe\xe3\x47\x15\x86\xe9\xad\xae\xcc\xbd\xc8\xc5\x92\xe0\x9d\x5c\x7a\x6b\xa4\xb2\x6d\xb8\xf6\x2f\xfd\x56\x57\xc5\x8a\x5c\x45\x6d\xe5\xe3\x79\xbc\xfb\x23\x36\x9f\x7e\x4e\x78\x4b\x01\x2f\x15\xb3\xf2\x8d\xbe\x3c\xc7\x59\xec\x5e\x2a\xb5\x7a\x1a\xfd\x20\x89\xf7\x22\x4f\xcd\xfa\xba\x9c\x73\x76\x4d\x49\xe2\x9e\xf1\x63\xfc\x3e\x44\x58\xc8\xc6\x95\x1a\x07\x55\xd8\x42\x63\xbf\x82\x75\xee\xa7\x7b\x6f\x18\x58\x9f\xe3\x44\xb1\x40\x2b\x35\x97\xe4\x24\xbe\xd2\x97\xd8\xf9\x3a\x57\x69\xb1\xc3\x62\xc8\x89\xf7\x62\xbe\x82\x55\xce\x89\xfa\x37\x69\x2c\x4f\x65\x12\xcb\x53\x9d\xa2\x74\x2b\xc8\x89\x7e\xd0\xa9\x46\xf7\x91\x9c\xd8\x47\xfd\x85\x42\x05\xd4\x96\x5f\x26\xe5\x85\x16\x67\x1a\x93\x9d\x93\x96\x44\x9d\xfb\xf7\x02\xba\x24\xff\x74\x0a\xe8\xba\x90\x13\xf5\xaf\xd3\x24\x89\x42\x4e\x94\xe8\x53\xa5\x14\xaa\x2f\x85\xeb\x87\x91\xa1\x92\x13\xfb\x58\xfb\x72\xa6\xca\xf8\xaf\x3a\x87\x51\x59\x25\x27\xf6\x31\x98\x0d\x3b\x0e\xff\x75\x17\xe4\x92\xe5\x70\x4f\x0b\x98\xcf\xd7\xf9\x07\x40\x6b\x00\x78\x9d\x48\xe0\xfb\x26\xf8\x52\xbf\x23\xe0\xce\xfc\x44\x32\xbb\xba\x66\x4f\x4a\x2a\xf8\x31\x36\xb8\x1e\xf9\x84\x1f\xe3\xab\x94\xca\x1d\xb2\x12\x05\x27\x59\x9c\x03\xbb\xee\x2d\x2d\xe7\x6f\xe9\xbc\x00\xfa\x4e\xe6\xd1\xf1\xf8\x48\x66\x22\xf3\xe1\x4f\x71\x92\xb1\xa4\x24\x99\xfa\x07\xe8\x33\x5f\xd2\x77\x50\x8b\xec\xa0\x7c\x4b\x7f\xd2\x91\x1b\x01\xa0\xa8\x46\xcd\x18\x49\xd6\x48\x92\x2d\x95\x54\x00\x73\x89\xb9\x0e\x90\x2c\x6e\x49\x05\x98\x2b\x12\x52\xc2\x9f\xba\x9d\x54\xd3\xea\xf9\x67\x26\x96\x1a\xfa\xab\x64\x2f\x41\x36\x24\xc9\xcf\x44\x2c\x61\x92\xd4\xa3\xba\xcb\x54\x6b\x0a\x6a\x5e\xc0\xab\x7a\xc0\x8f\xf1\xbb\xe3\xa3\xcb\x4f\xe7\xc7\x17\x24\x1a\x62\x03\xfa\x51\xb4\x61\xe5\x31\x84\xc2\x48\xc7\xeb\xd8\x3e\x57\x78\x6d\xf3\xcb\xfb\xe5\x4a\x85\xa1\x62\x31\xfc\xe3\xc7\xb8\xc8\x49\x16\x17\x72\xc3\x26\x69\xfa\x41\x02\x15\x79\xe2\x32\xff\x4d\x6e\x1f\xf0\x50\xe7\x7d\x0e\x13\xa0\xcb\x79\x7a\x7c\x27\x21\x4c\xe6\x9e\xf1\xa3\x3c\x2d\x26\x97\x5c\x25\xff\x15\x3f\xaa\x60\xf0\x94\x64\xfa\x01\x52\x14\xf7\x2c\x33\x4f\x90\xf6\x3a\x4b\xf2\xcf\x90\x06\x4f\x90\xf6\x51\x82\x10\x68\xcf\x3e\xe3\xc7\x38\x2f\x04\x5b\x3c\x98\xa5\xd4\xa1\x36\xb3\xd6\x64\xfc\xa8\xc0\x47\x98\x2a\x7b\xd9\x96\x8c\x1f\x25\x60\x68\xe6\x6d\x26\xca\x4d\x08\x4f\x3a\x9d\x41\xbe\x7a\x12\x7e\x8c\xad\x11\xdd\x26\x3c\x77\xe3\xbd\x21\x5e\x26\xa5\x79\x3d\x9a\xcf\x69\x59\x16\xbc\x94\x98\x29\xdc\x5a\x7e\x66\x92\xd5\x12\x20\x47\x29\x78\xf1\x40\xde\x99\x27\xfc\x18\xab\x30\x25\xaa\x2f\xf6\x59\xed\xd1\xa0\x9f\xc1\xbb\xda\x8b\xc1\xf7\xb2\xf6\x9d\x7e\x59\x25\x76\x0a\x54\x96\x7a\x92\xda\x5c\xc6\xdb\x96\xda\x5c\xe6\xcd\x6e\x2e\xef\x73\x98\x20\x4b\xcb\xb3\xad\x3c\x40\x99\x93\xae\xde\xe4\x06\x76\xe5\x0a\x57\x02\xa8\x54\x92\xa9\x7f\xfc\x18\x9f\xe8\x77\xf8\xdf\x8d\xa7\x15\xb9\x26\xe5\x00\xc4\x41\x74\xaa\x33\x95\x04\xf8\x30\xc4\xa1\x32\x09\xdf\x8c\x62\x0b\x5a\x2a\xa2\x12\x2a\x9d\xc7\xac\xbc\x54\x29\x50\xe7\x1c\xf4\x80\x74\x42\xbd\xce\xc7\xf8\xea\xb5\xbb\x07\x53\x8b\x56\xbc\x8f\x3f\x9c\xfd\xf0\xc3\xf1\x79\xbf\x1f\x3d\xc6\x1f\x8a\x9b\x1b\xca\xc9\xd2\x7c\x95\xc5\x8e\xc8\x55\x7c\x84\x1f\x63\x4d\x54\x6c\xb2\x62\x3e\xbe\x8d\xb3\x62\x8e\xef\xc7\xb7\xf1\x3d\x4e\x93\x72\x49\x39\x7b\xa4\xe3\xdb\xd8\x3e\xe3\x94\xce\x93\x5b\x9a\xe9\x64\xfb\x82\xbd\x54\x97\x06\x80\x70\xf1\x20\xd3\xf4\x23\x5e\xe7\x29\xe5\xe5\xbc\xe0\x32\xa7\x7b\xc1\xf3\x64\xc5\x44\x62\x6b\x30\x2f\x72\x33\xab\x59\x23\x57\xfa\x41\x8e\xd8\x20\x74\x1f\x79\xf1\xe5\x41\x2d\xdc\x55\xdc\x4c\x04\x68\x66\x50\xc2\x20\x6f\x4b\x2a\x56\xd7\x4d\xc2\x29\xb9\x32\x4f\x90\xb6\x7a\x80\x84\x95\x82\x33\xc7\x7f\xac\x93\x8c\x5c\x99\x27\x40\x9d\xa0\x7f\x81\x3f\x00\x93\x1a\x6b\x66\x07\xb9\xd3\x09\xee\x8b\x63\x98\x90\x85\xfb\xa8\xb0\xe5\xab\xd8\x60\xca\x6f\xa0\x23\xc0\xac\xbb\xf2\x5e\x00\xe9\xb7\x2c\xc0\x2b\xef\xc5\xd4\x01\x03\x33\x15\xc1\x8b\x9d\x4a\xf3\xc9\x7b\x93\xa5\xe6\x1e\x52\x29\x0b\xfa\xef\xd0\x13\x4e\xed\x52\xb8\x17\xfc\x18\x2b\xc9\x99\xe9\xb9\xf7\x06\xa5\x56\x0f\xb6\xf7\xea\x51\x9e\xb5\x35\xf0\x1f\x83\x21\x34\xd2\x5c\x3e\x53\xb5\xff\x8a\x1f\x63\xe5\x00\x4e\xf5\xf3\x42\x31\x5c\xc8\x55\x5b\xaa\x9c\x2d\x79\xd9\xd0\x54\x4e\x95\x7a\xc2\x8f\xb1\x76\x20\x18\x6c\x8c\x46\x1a\xcc\x9a\x5c\x45\xdd\x4d\xf7\x22\x6f\x5e\xe0\x08\x93\x2b\xfd\x00\x1b\xc4\x74\x56\x3f\xb5\x6e\xe0\x22\xff\x50\x24\x29\x79\xa3\x1f\x14\xf6\x25\x9f\x7e\x2c\x8a\xcf\x25\x79\x13\xbc\x6a\x1a\xc7\xee\x15\x47\x38\xb8\x64\xd5\xfd\x95\xf7\xed\xc2\x6e\x3c\x97\x76\x15\x0c\xf5\x2a\x18\xe4\xf9\xc5\x4f\x1f\xe5\x21\xba\xf8\xe9\x23\x2c\xa9\x61\x3d\x5c\xb9\x67\x59\x83\x0e\x0c\x7b\x13\xab\x07\x85\x96\xad\x68\x9e\xd2\x5c\xfc\x17\x7d\x80\x1d\x2a\xc8\x75\xdc\x4c\xc4\x9f\x62\x0a\xf7\xf6\x83\xfa\xc7\x9f\xe4\x95\x7b\xac\x93\xcc\x23\xa4\xe6\x14\x52\x72\xaa\xf2\xa8\xcf\xf8\x53\x7c\x5d\x14\x19\x79\x80\x3f\xfc\x29\xbe\x4d\xc4\x7c\x49\x1e\xd4\xbf\xac\x1d\x4e\xe6\x83\xfa\xc7\x9f\xe2\x1b\x59\xf0\x46\xc0\x13\x85\x47\x59\x5f\x26\x53\x33\x01\x4f\x14\x1e\x65\x6a\x91\xd3\x9f\x13\xd9\x0f\xf5\x80\x3f\xc5\x9c\x26\x69\x59\x4f\x38\xcb\x33\x99\xc9\x3c\xe2\x4f\x96\xee\x63\xf9\xcd\x11\xa0\x99\x0f\x8d\x24\x89\x81\xe6\x29\x79\x90\xbf\xb2\x29\x2e\x6b\xe5\xf8\x53\x5c\xae\x6f\xc9\x83\xfc\x95\x83\x61\xb9\x1c\x0a\xcb\x61\x60\x5f\x60\x58\x5f\xe0\x79\x05\xcf\x2b\x99\x5f\x6e\xf0\x07\xf8\x93\x6f\x54\xbc\x65\x8b\x85\x4c\x50\x4f\x2a\xf7\xeb\x07\x95\xff\xb5\xec\xdd\x82\x65\x92\xbc\x78\xd0\x0f\x36\x05\x32\x99\x47\xfc\x29\x5e\xe7\xec\x0f\xf2\x00\x7f\xfa\x0d\x72\xa8\x07\x95\x52\xe4\x2a\xa1\x90\x3d\x04\x4e\x64\x29\x37\xf5\x83\x7b\xc6\x9f\xe2\xb9\xdc\x8c\x90\xaa\x9f\x76\x5f\x79\x17\x97\xe7\xef\x4f\x7f\xb8\xe8\x81\xfc\xd8\x13\x0f\x2b\x06\xcf\x2d\xe0\xba\xea\x6a\x2a\xe1\x12\xbc\x05\x8c\x5b\xa7\x3c\x75\x97\xbe\x3e\x3b\xbb\x3c\x7e\xdb\x52\x6f\x93\x8d\x94\xf9\x4c\xb6\x0b\x9a\xf0\xf9\xf2\x2d\x2b\x01\x2b\x86\x36\x01\x95\xd9\x91\x01\xae\xde\x37\x86\x8d\x49\xee\xdd\x33\xbe\x8f\x95\x1c\x34\x5e\xaa\x88\x45\xf7\xfa\x01\x3f\xea\x0f\xc4\xe4\x90\x55\x2c\xe9\xfc\xf3\x75\xf1\x45\xd6\xa0\x1f\x25\x68\xa3\x5f\xc4\x3b\x46\xb3\x94\xdc\xbb\x67\x9d\x7e\xc4\x69\xa2\x93\xe5\x23\x7e\x8c\x3f\xb0\xfc\xb3\xdf\x95\xe0\xdd\xd0\x2a\xe6\xfd\x24\xc9\x93\x1b\xe8\x43\x4b\xaa\xcc\x3c\xaf\xa5\xbd\x49\x56\xc9\x35\xcb\x18\xa0\x6e\xf7\xf2\x72\xb6\xaf\xba\xee\x93\x22\x65\x0b\x46\x79\x50\x75\x2d\x51\x66\xbd\x0d\x93\x6a\x15\x9b\xaf\x6f\x6a\x0d\xdc\x78\xdd\x34\xda\x01\xe4\x3e\x6e\x4b\xae\x8f\xd5\xcb\xde\x96\x0c\x04\xa3\x7e\x96\xe7\xd9\xcd\xe1\x07\x1f\x6a\xce\x93\x95\x58\x73\x7a\x2e\x01\x1a\xbf\xe4\x94\x92\x79\xdc\x48\x93\x8b\x0b\x77\xe5\x75\xc2\x4b\xb2\x31\xd5\x8e\xef\x63\xf3\x88\x3f\x09\x96\x95\xe3\x0d\x2d\xe7\xc9\x8a\x1e\x7f\x59\x71\x5a\x42\x6c\xe5\xfb\xb8\x9e\x54\x49\x0c\xe2\xc7\xcb\x93\x0f\xaf\x77\x55\x56\xe1\x1d\xfc\x4f\x8d\xcf\xf5\xfb\x91\x96\x61\x3b\xb1\xf6\x52\xdc\x66\x17\xc9\x82\x36\x19\xc8\xd1\x10\xdf\xdb\xcf\x48\xa9\x10\xc0\x06\xd7\x75\xd8\x92\x2e\x97\xfb\xc8\x4a\x70\x3c\xad\x3e\xbb\x97\xdd\x27\xf4\xf2\xf8\xe4\xe3\x87\xa3\x4b\xe0\xed\xca\x63\x08\x6b\x69\xd6\x44\x9d\xf6\x7b\x85\xf2\x9a\xa4\x27\x8f\x32\x74\xf4\xa7\xe3\xf3\x8b\xf7\x67\xa7\xe4\xd8\x43\x80\xff\x7f\xff\xfd\xe9\xf8\xfc\x97\xab\xf7\xa7\x97\xc7\x3f\xa8\x10\x8e\xfd\xfe\xde\x97\xf8\xf7\xff\x5e\x53\xfe\x60\xce\xf1\x13\xbc\xe8\xef\x3c\x26\xac\x29\x56\x57\x66\x09\xba\x32\x54\x5d\x61\xf4\x1e\x96\x9a\x6c\x58\x79\x01\x11\xc2\xde\x64\x6c\xfe\x79\xfc\x25\x0e\xde\x25\x08\xd2\x5e\xc9\x65\x91\xf1\x97\x38\x4c\x90\xdf\xe5\xbf\x4e\x52\xdf\xbd\x04\xf3\xfd\x75\xb1\xce\xd3\xd2\x7d\x56\xef\xe6\xeb\x9b\x8c\xd1\x5c\x9c\xd3\xb9\xf0\xb2\x78\x89\x41\x2d\x2c\xbf\x71\x9f\x6a\x35\x06\xdf\x64\xa9\xf3\xa2\x80\xaf\xba\x5e\xfb\x2a\xbf\x81\x33\x6a\xef\xa3\x7b\xc7\xac\xbc\xa0\x1c\x94\x67\x80\x6f\xf8\x8e\xf1\x12\xbc\x28\x8f\xe5\xe6\x69\xff\x54\x69\xc8\x67\x90\xbc\x2f\xfe\x9b\x0f\x86\x95\x20\x82\x7c\xa9\xa7\x18\x04\xf0\x2d\x2b\x57\x12\x5b\xa0\x9c\x7c\xa9\xa7\x48\x38\x5a\x68\x39\xc0\x99\x7d\x94\x88\xf1\x5a\x14\xde\x17\xff\x15\x0e\x7d\xb9\xf4\xbe\xfa\xaf\xf2\x2b\x2b\x45\xc1\x1f\xfc\x0c\x61\x8a\xc4\xb5\x8a\x9c\x7a\x19\xfc\x57\xa0\x3f\x0c\x8e\xf7\xae\xe0\xe4\x2c\x7c\xf7\xd8\xf7\x0e\x17\x7c\x97\xcc\x65\x0b\xe4\x6c\xf7\xb7\xd6\x72\xad\x05\x24\x66\x58\xac\x05\xe5\x6f\x2f\x3e\x90\x33\xf7\x6c\xd3\x6d\xa2\x49\x31\x09\x38\x1a\xe2\x10\x91\x45\x91\x12\x54\xf9\xa2\x95\x1e\x7e\xe3\x13\xa5\x6f\x13\x91\x1c\xa5\xc9\x4a\x56\x7c\xe1\xbf\xf9\x8c\x7e\xe0\x97\xbb\x5c\xad\xe9\xb2\x75\x11\x2f\x13\xd9\xa8\xd2\x21\xb4\x82\x46\x79\xbf\xb1\x8c\xf2\x1e\xea\xf7\x21\x97\x69\xff\x89\x9c\x6d\xd5\x29\x92\x1d\x29\xcd\x8c\xd7\x64\x47\x55\x3a\x57\x47\xee\xe0\x52\x90\xd7\xf0\x87\xd5\x5b\x6c\x06\xf1\x3a\x76\xc3\x84\x0f\xff\xfd\x29\x67\xc2\x7d\xf5\x5f\x15\xc3\x65\xbd\x7a\x57\x70\xcd\x13\x20\xaf\xeb\x29\xd5\xce\xb9\xd7\x46\x1d\x3f\x92\x47\xcf\x82\xe0\x47\x9c\xc7\xef\x2f\xae\x4e\xcf\xde\x1e\x4f\xf2\x58\x69\x34\xc4\x5a\x23\x82\x3c\x8e\x9d\x9c\x52\xa7\x29\x39\x25\x69\x4b\x27\x8f\x81\x7e\x85\x95\xb1\xff\xdf\xb2\xa0\x71\x09\xbd\xe7\xf1\xc1\x30\xfe\xbe\xa7\xfb\xe3\x29\x6b\x34\xb5\x3e\xfe\xc5\x7d\xd2\x2a\x24\x84\xea\xb9\x24\xd4\x4c\x6f\x60\xe8\x03\xce\x00\x1b\xe2\x62\x55\xa4\x55\x95\x48\xaf\x8c\xae\xbe\xe3\x6a\xcd\xb1\x6d\x4a\x78\xed\x73\x9c\x4f\x22\xf7\x85\xa8\x07\x3f\x03\x09\xab\x44\x63\x3f\xbb\x0e\x40\xe6\x32\x2b\x53\x39\x35\x9f\x5c\x9e\xf1\x7d\x4e\xe7\xc5\x4d\xce\x1e\xff\xd4\xb0\x02\xad\x46\x52\x81\x7a\x6a\xa8\x88\xab\x0d\xdf\x40\x85\xc8\xd3\x0d\xbd\xba\xd2\x35\x60\x1d\x27\x50\x26\x61\x5a\xd5\xe3\xfa\x29\x15\x51\x67\x16\xa3\x3d\xcf\xdd\xea\x8b\x43\x7b\xef\x96\x75\xdc\x48\xd4\x92\x83\xe7\x73\x4f\x77\x70\xb7\xa6\xbc\x29\x03\xd1\xec\xfa\x7d\x1e\xdf\xb3\x2c\x3b\x4a\x53\x80\x97\xe0\x1f\x34\x4c\x8a\xfc\x86\xb5\xd3\x5e\x4c\x8d\x63\x2c\x93\x9e\xa4\xa9\x67\x70\x00\xc1\x70\x36\xc6\xe4\xd9\xd9\x39\xd7\x6c\x25\x6c\xc8\x65\xa5\x53\x97\x77\xad\x1d\x18\x04\xa3\xa6\x5d\xe7\x2d\x33\x29\x4b\xe5\x68\xf5\x37\x51\xfc\xd6\xd3\x86\x8b\x5e\xe3\x3a\x12\x85\xeb\x01\xae\x4d\x11\xaa\x2a\x6d\x49\xd6\xb4\x64\x29\x20\x56\x16\xb7\x66\xfa\xb2\x2e\x4e\x73\x97\xa2\x46\x4d\x68\x55\x53\x96\xf3\x2c\xf1\x6d\xad\x0c\x27\x48\x9b\x64\xd3\x01\x03\x97\x53\x09\xf2\xe2\x98\xe4\x51\x09\x05\x3b\x49\x54\xe8\xc7\x9a\x7a\x5b\x23\x7c\x6a\xd3\xa9\xfe\x00\xe5\x03\x02\x21\x48\x3d\xcb\x0b\x6d\x9b\xbb\x91\x49\x63\x41\x04\x08\x3a\x05\x8f\x72\x84\x97\x5a\x24\xcb\xab\x0e\x35\x56\x0a\x15\x7b\xc2\x5c\x2f\x98\x1a\x08\x8b\x59\xe1\x5a\x7e\x15\x76\xac\x3d\xca\x60\x02\xda\x70\x2c\x32\x26\xa6\x66\x4a\x65\x4d\x89\xf6\x08\x23\x67\x30\x81\x70\x7c\xfd\x7e\x6e\xa0\xf8\xb1\x24\xe4\x25\x42\x5c\x4f\x89\x04\x2e\x11\xe6\x51\x89\xbc\x45\x08\xc3\x35\x94\xab\x8c\x89\xa8\xf7\xac\x87\xc0\x95\xc5\x1a\x81\x8c\x13\x12\x2a\xe5\xbb\xe5\xd9\x5f\xb6\xbf\x3e\x7b\x76\xd3\xf1\x43\x27\x78\x15\xa8\x69\x7c\xf9\x7c\xbb\xdd\x57\xb1\x2e\x6d\x40\xa6\xbf\xf4\xd0\x84\x8e\x53\x3a\x2f\x52\xfa\xe9\xfc\xbd\xc5\xec\x22\x8a\x62\x4e\x57\x59\x32\xa7\x51\x86\x69\x5e\xff\xae\x1a\x9e\x93\x67\x7f\x89\x26\xe3\x83\x68\x32\x7e\xb1\xfd\x7e\xfb\x7a\xfb\x06\x6d\x9f\x47\x93\xf1\xeb\xed\xdb\xed\x11\xda\xbe\x18\x22\xbf\x4f\x7e\x74\xb2\x66\x8d\x7e\x8b\x73\xdc\xec\x91\x6a\x71\x49\x9e\x45\xbf\x3e\xdb\xfe\x1a\x6f\x7f\xfd\x8f\xed\xaf\x83\xed\xaf\x93\xed\xaf\xdb\xed\xaf\xd1\xf6\x57\xb4\xfd\x75\xba\xfd\x75\xb6\xfd\x75\xb3\xfd\xb5\xda\xfe\xfa\x2b\x7a\x76\x83\x17\x24\xd0\x6b\xc6\xab\xa6\x36\xf2\x32\x29\xcf\xee\xad\xac\xc9\x75\xf6\xd6\xf9\xbb\xb3\x7e\x54\x8c\x9e\xb3\xd1\xa5\x26\x2d\x46\x79\xf6\xe8\xcb\x93\x2d\x8f\xbe\x2a\xdd\x4d\x4a\x15\x9a\x9d\xce\x8b\x3c\x75\xf0\x40\x1e\x7c\x83\x17\xfe\x16\xeb\x20\xf8\x2b\xad\x1a\x8d\x05\x7a\xaa\x01\x5e\xdc\xb1\x94\x76\x57\x09\x4f\x6e\xbb\xbf\x81\x3d\xd6\x6f\xcd\x0a\x15\x84\xa4\x53\x31\x93\xf7\x61\xc3\x84\x74\xc2\xc7\xbd\xde\x80\x5b\x2f\xb9\x5f\x87\x69\xa6\xdd\x24\x6c\x39\xee\x79\x41\x45\x65\xa3\x77\x64\x3a\xeb\xdc\x4d\x87\xb3\x9d\x46\x36\x02\x8c\x6c\xe0\x36\xc2\x2d\xde\x09\xb4\xd2\x7d\x1e\xcf\x97\x09\x7f\x53\xa4\xf4\x48\x44\x0c\x75\x24\x6a\xb4\x5a\x8b\x08\xcc\xea\xf7\x46\x5e\x8c\x53\x7c\x37\x1d\xd5\x5b\xb3\xde\x37\x64\x91\x17\xff\x89\xf7\x86\xe0\x40\x1e\xdf\x4d\x0f\x9e\xcc\xba\x3f\x82\xea\x55\xd6\x17\xbb\xb2\x2a\xd0\x7b\x23\x47\x7a\x13\x8e\xd4\x3b\x7d\x30\x40\xbb\xb7\x97\xb8\xf7\xeb\xaf\xdf\x8d\x7a\xa8\xc2\x37\x41\x77\xad\xbe\x59\x34\xfd\x9f\x67\xb3\x01\xea\xc9\x0c\x07\xad\x19\x62\xfd\xf5\x45\xdb\xd7\x9e\xea\xd4\xb5\xec\xd4\xf5\xd3\x9d\xaa\xf0\x75\x73\xc6\xd4\xda\xdc\x46\x12\xd7\x81\x5c\x76\x5d\x8f\xe2\xe3\xd3\x37\x67\x6f\x8f\xaf\x8e\x4e\xdf\x5e\xbd\x3d\x86\xc7\x8f\x47\x97\x3f\x5e\x5d\x1c\xff\x70\x72\x7c\x7a\x79\x31\x49\x23\x8e\xc6\x5c\x56\xbb\x6b\x76\xfd\x7a\x65\xbe\xa7\x86\xf0\x50\xf3\xfb\xbc\xa9\x10\xbe\x7a\xca\x17\xf4\xbd\xc5\x2f\x3c\xaf\x14\x2f\xfe\x13\xee\x6a\x6f\x13\x0d\x95\xae\xb3\xbd\x47\x46\x28\xf0\x1b\xee\xc1\x5b\xeb\x07\x0d\x17\xe6\xa1\xc5\xd2\x59\xdd\x8a\x38\x23\xf9\x34\x99\xe1\x39\x19\x76\x46\x07\xfd\xa8\x24\x07\x2f\x5f\x46\x73\xd2\xeb\x11\x42\xb2\xc9\x8b\xf1\x5f\xff\x26\x1f\xc2\x8e\x4c\x46\xe3\x17\x07\x2d\xc9\x07\xe3\x21\x92\xbd\xcc\x48\xa6\xed\x23\x46\x08\x47\x8c\xb0\xed\x76\x3a\x43\xea\xa6\xcb\x10\x8e\x0a\x52\x78\x29\xc3\x3d\x12\xbd\xe8\x97\x08\x21\x3c\x7a\xd1\x2f\xfb\x7d\x3e\x9d\xcf\x06\x03\xac\xaf\xc6\x8d\x3c\xf4\xe3\xb9\xb6\x38\x58\x47\x12\xdd\x34\x21\x02\x20\x5a\xde\x98\x6d\xb7\x57\xb8\x5c\x16\xeb\x2c\x7d\x0b\x10\xb8\x1c\x17\xdb\xed\x95\x77\x8d\x1f\xd7\xd0\x03\x0a\x1d\xd7\xb1\x88\xe2\x5c\x61\x6d\x84\x70\x00\x01\x5f\x1a\xb7\x28\x38\xfd\xd7\xb6\x7c\xc2\x39\x1e\x66\xa9\xc1\xfc\xa0\x36\x13\x92\x54\xd5\x96\x7b\xc1\x43\x55\x29\x36\x11\x63\x2f\xde\x68\x22\x04\xe5\x39\xe9\xf5\xac\xd3\x97\x1b\xfa\xc5\xac\x17\x24\x69\x34\xa1\x0c\x12\xe5\x6c\xd8\xb0\xa1\x6e\x13\x9d\x05\xfb\xd5\x8c\x69\xa2\x06\xaa\x22\xb0\x42\xf0\x42\x95\x30\x76\x13\x60\x6f\x57\x99\xe0\x66\xec\xa2\x0e\xf6\x54\xa0\x68\xcc\x9c\x81\x61\xfe\x92\xb9\x60\xd1\x85\x56\xa9\x57\x14\xe0\x3c\x11\x51\xa1\x10\xc2\x48\x20\x0f\xd8\x7d\x09\xec\x59\xe5\x80\x5b\x2c\x4f\xdc\x74\x6c\xb7\x91\x3f\x39\x12\xb0\x9f\xd3\x9b\xe3\x2f\xab\xc8\x9f\x43\x84\xfc\x29\xac\xb0\xdf\xc8\x0d\x7d\xc2\x4c\xd5\x2d\x8e\xf1\x8d\xb5\x47\x08\x78\x2d\x58\x44\x1c\xa1\x30\x64\x3e\x6f\x09\x90\xed\x6d\x8a\x29\x9f\xe6\x33\xb0\x4a\x3d\x8e\x18\xc4\x5c\xb4\xa6\x81\x2e\xf2\x45\x11\x96\xd0\xd9\x8b\x20\x7b\x51\x85\x23\x58\xad\x45\x83\x12\x81\x5e\x41\x9f\x55\x85\x60\x7b\xe8\xd5\x91\x77\x1a\xfd\xb3\xd7\x1c\xcc\xe2\x97\x88\x61\x66\x4c\xd4\x55\xa5\x98\x4d\x4d\xca\xcc\xc6\x4e\xae\x4d\xd3\xa4\xbe\xa7\xf3\x98\xa5\x63\x6d\x38\xed\x92\x51\x3d\x9f\x36\x66\x8d\x59\x8a\xc6\xf5\x2a\xa6\xb5\x04\x2c\xb3\xcd\x70\x1e\xce\x82\x92\xec\x35\x0d\xc8\x5a\xd6\x71\xcf\x04\x3a\x9f\xce\x3a\x66\xef\x76\x60\x4d\x45\x7d\x4d\xc5\x57\xd6\x54\xc0\x9a\x9e\xc9\x05\x45\x92\x38\x83\x61\x30\xb4\x6b\x41\x85\xcc\x5b\xf8\x79\x0b\x6f\xef\x43\x67\x2e\x9b\x04\x4f\x68\xa8\xfd\xc7\x9a\xf2\x87\x8f\x12\x47\x29\x09\xdd\x6e\x37\x95\x77\xc8\x4f\xec\xb8\x3b\x94\xb8\xcb\xf9\xd9\xaf\x83\x67\x37\xb7\xb8\xf7\x97\x83\xa1\xa4\xc5\xf8\xc3\x46\x90\x56\xe4\x58\xfb\xff\x92\x57\x0d\xe9\xf5\x6c\x30\xfc\xea\xd2\x9b\x68\xe5\xec\x47\xa3\xa0\xf5\x64\x1c\xe4\x6c\xcf\xd8\xc8\x07\xd6\xc1\xf5\x6c\x32\x11\x26\xe4\xa8\x61\xd1\x0e\x40\x5d\x52\x7b\xca\xc1\x24\xf8\x30\xd4\x9b\x96\xe2\x21\x96\x38\xce\x50\xa2\x50\x1d\x2a\xf1\x04\x81\x5b\x20\x33\x2f\x0a\xb5\x21\x88\xa8\x3a\x47\x4f\x12\x56\x5e\xfc\x31\x12\x96\xc5\x8c\xf4\xfe\xa7\x87\x0b\x32\x1d\xe2\x21\x86\x48\x0a\xce\xa8\xc8\x9a\x1c\x61\x70\xb2\x98\x91\xbd\x21\x5e\x93\xa1\xbc\x47\x0f\xe7\x8e\x36\x9c\xcb\x7d\x65\x9a\x48\x09\x9d\xce\x67\x78\x49\xee\xa3\x12\xa7\x8a\x32\x2e\x10\x5e\x90\xa5\x1a\x33\x5e\x91\x65\x1c\xdc\x63\x87\xeb\x97\xd6\x2e\x7f\x6d\xb6\xe8\x2d\x29\xa7\xeb\x59\xe7\xc5\x1e\x21\xb7\x70\x1d\xc0\x8d\xbb\x37\xc2\x39\xc9\x2d\xc2\x08\x48\x26\x66\x03\xd2\x7b\xd6\xc3\x39\xb9\x9b\xaa\xac\xb3\xe8\x16\xe7\x90\x7e\xe3\x52\x10\xaa\xc0\xe3\xe5\xc6\xd0\xa5\xa9\xb9\x7a\x54\x48\xff\xf1\xa2\x76\xbb\xae\xaa\x2a\x03\x9f\x9a\xed\xed\x21\x9c\xbb\xbb\x2b\xc1\xb9\xbd\xeb\xd8\xa0\xf7\x5d\x0f\xe7\xfa\x0e\x2b\xf0\x53\x86\x61\xfd\xbe\x88\x93\x52\xb9\xf1\x8b\x13\x49\x6c\x1a\x97\x44\xd0\x27\xf0\xeb\x51\x52\x08\x37\x5a\x8e\x4b\x43\x52\x97\xe3\xa4\x42\x15\x3e\x0a\x68\x25\xf5\xe5\x5d\xc1\x77\xc2\x0f\xa8\x51\x3b\xce\x6e\xf1\x22\x71\xb9\xa4\x9c\x76\x59\xd9\xcd\x8b\x2e\xd0\xe0\x5d\x59\x22\xed\xf6\x06\x74\x87\xc9\x99\x6d\xd5\x6e\x13\x03\x70\x6a\x1f\x02\xc8\x63\x3f\xc2\x55\x3a\xcd\x67\x84\x79\x74\x42\x38\xa8\x52\x71\xd6\x9b\x68\xf2\xde\x5e\x30\xa6\xb0\x9c\x21\xb2\x9e\xb8\x13\x75\x39\x49\x77\xf5\x60\x42\x9a\x01\x77\xbe\x6d\x42\x18\xe1\xb1\x59\x21\x13\xbf\xc5\x8c\xba\x30\xa3\x4e\x08\x9b\x16\x6a\x33\x27\x66\x33\xe7\x7a\xd7\x0e\xc8\xf5\x34\xd1\x9b\x34\xc1\x0e\x8f\xe8\x3d\xeb\xed\x11\x4d\x61\x19\xc4\x38\x97\x45\x06\x39\xc2\xb0\x71\x3c\x20\xaa\xea\xd3\xb7\xa4\x1a\x3c\x48\xed\x94\xa4\x32\x0a\xf2\x22\x24\xaf\x9d\xb6\xf9\xf2\x8a\xb4\x6c\xa2\xe9\xcc\x59\x86\x7e\xa6\x0f\x65\x24\xa9\x0f\x50\xca\x88\x7c\x1c\x7d\x17\x16\x21\x57\x1a\x43\x40\xc6\x99\xc3\x43\x6c\xc4\xa5\x16\xa6\x03\x43\xea\x3e\x2b\xdc\x7d\x56\x92\xe1\x61\xe9\xe2\xd3\x95\xa6\xf6\x4c\x1e\xba\xe9\x8c\xf4\x06\x2d\xf5\x14\xd3\x72\x86\x3a\xc2\x20\xe6\xca\xe4\x3b\x19\x90\xde\x8e\xec\x08\x0b\x1b\xd0\xd1\x6c\x4c\x9f\xa7\x38\xe9\xf5\xc6\xbd\x49\x6f\x20\x34\xab\xa7\xdf\xab\x9d\x45\x70\xb5\xbc\x6b\x2e\xbd\xf0\x3b\x86\x98\xe9\x43\xb8\xde\x4d\x85\x9f\xb8\xae\xa7\xf9\xcc\x64\x27\x3d\x84\x0b\x72\x12\xb1\xe9\x70\x86\x70\x42\xcc\x74\xe0\x52\x82\xc7\xcc\x70\x8b\x25\xbe\x6b\x76\xe2\x24\x23\x3d\xc1\xd7\xb4\x37\x8e\x92\x57\x07\xfd\x7e\x6f\x3a\x93\x94\x4f\xa1\xe9\x97\x64\xff\x40\xee\xae\x12\x3c\xd8\x4f\x0b\x9b\x3e\xc4\xf2\xcb\x6c\xbb\x8d\xf8\xb4\x98\x91\xe9\x0c\x21\x9c\x11\x36\x1d\xcd\x26\xb2\xf9\xd1\x0c\x8d\x7b\x3d\x84\xcb\x89\xfc\x6c\xe6\x77\x0c\x79\xb3\x1d\x47\xda\xf2\xcd\x9b\x1b\x0c\x73\x8d\x25\xd9\xbb\x69\x66\xc2\x25\xed\x8d\xe4\xce\x71\xac\xb1\x7f\xeb\xa1\x43\x40\xf4\x0b\x60\x1e\x53\x43\x2d\x0e\x71\xa1\xa3\xb9\x25\x7e\xf6\x49\x4f\xfb\x61\x96\xe7\xcf\xec\x18\x5b\x28\x19\x8c\xb0\xb3\xad\x0d\x6a\x4b\x90\x73\xef\x12\xae\xa9\xdc\x48\xea\x84\xd2\xe0\x84\x52\x38\xa1\x54\x75\x62\x4d\x68\xe7\xeb\x84\x39\x25\xf2\x28\x8d\x23\xea\xd0\x99\x88\x22\xbc\xf6\x5e\xd7\x7a\x54\x73\x4b\x97\x74\xe6\xaf\x46\xfd\x7e\xef\x59\x8f\x78\x3d\x98\xef\x8f\x50\x7d\x42\x64\x1a\x5e\x93\xb5\x4b\x59\x5b\x17\x2d\x92\x86\xde\xf3\x82\xa9\xa6\x64\x78\x98\xda\x6b\x1d\x6e\xa5\x8b\x88\x63\xea\x13\xc0\x29\x42\xc8\x6c\xd0\x74\x30\x40\x87\xa6\xf0\x52\x02\x88\x05\x19\x1e\x2e\xdc\xf1\x5f\x80\x25\xf2\x62\x66\x41\x7e\xbf\xbf\xd4\x91\x33\xa6\x8b\x19\xea\xb4\x7a\x7b\xa0\x0a\xa6\x44\x6d\xc0\x9b\xaa\x5b\x75\xbb\x35\xd8\x4a\x4e\xb8\x8a\x6d\xc4\xa7\x23\x09\x5e\xf8\xf4\x40\xa2\x30\xa2\x9e\xaf\x24\x89\xcc\x97\x91\x44\xe6\x5b\x93\x64\x7a\x60\x5d\x49\xae\x2d\x51\xb2\xbf\x86\x34\xe0\x2d\xe6\x7b\x84\x94\xe6\x4b\xb9\x0f\x84\x08\xdb\x23\x24\xb3\x0e\x06\xf6\xed\xbd\x05\xe9\x13\xb6\x9f\x8d\xa1\xd4\xa4\xdc\xcf\xc7\xc3\x0a\xa1\x2a\x5a\xaa\x85\x5b\x91\xe5\x74\x68\x6d\xb1\x57\xfd\xfe\xca\x9b\x92\x88\xc9\x77\x8d\x3e\xf4\xfb\xc0\x43\xfa\x4e\x2e\xac\x4d\xd4\xe7\x71\xff\xaf\x72\x79\xd7\x1a\xfd\xd8\x41\x30\x11\x87\x0c\x00\x1d\x0b\xe4\xa2\x72\x30\xb4\xc7\xb6\xdb\x20\x16\x85\xbe\xe8\x00\xad\x84\x68\x13\xcc\xf9\xf7\xe8\xd9\x78\xa4\x9a\xc4\x65\x12\xd8\x8c\xb0\xf2\xbf\x77\x19\x71\xd4\xb1\x58\xbd\x61\xb9\x78\x11\x45\x87\x87\x99\xe3\xc4\x64\x06\x92\xad\x49\x3e\xcd\x66\x78\x4e\xd6\x1a\x19\x4c\xe5\xce\xf4\xd1\x2e\xbc\x24\x0f\x78\xa1\x63\x6f\xcc\xf7\x08\xb9\xea\xf7\x53\xf9\x67\x2f\x81\x15\x19\x1e\xae\x5e\xce\x4d\xdd\x2b\x40\x3e\xc9\x9e\x92\x8f\xdd\x92\xf9\x74\x35\xc3\x77\x12\x32\x14\xd3\x64\x30\x98\x75\x96\x84\x90\x87\x7e\x3f\x5a\x42\xb4\xdb\xaf\x9e\xc7\x7e\x3f\x9d\xae\x66\x93\xe5\xf4\x76\x46\xee\xfa\xfd\x16\x12\xe3\x0e\x8d\xd5\xd7\xaa\x9c\x66\x1e\x42\xb9\xb6\x08\x25\x70\x5f\xcb\xf1\x12\xb3\xf2\xed\x43\x9e\xdc\xb2\xf9\x78\x61\xef\x92\xb2\x8a\x56\x78\x8d\x81\xa0\x97\xc0\xd1\x68\xf0\xf4\x86\xf1\xf3\xf8\x45\xef\xeb\x3d\x94\x60\xfa\x28\x3e\x2d\xf8\x2d\xac\x14\x27\x9b\xdc\x3c\x5f\x28\x4c\x64\xbc\xc6\x36\xe9\x63\x22\x96\xe3\x52\xcb\x09\xe4\x8b\xc9\x93\x86\x90\xf9\x36\x59\xb5\xe2\x4b\x20\x54\xe9\xd0\xa8\x88\x7a\x3d\xe3\xba\xdf\x0a\xb8\x10\xf6\x7c\x28\x59\x2e\x92\x59\xa9\x82\x70\x2d\xcd\xc1\x65\x80\x39\x14\xf2\x1e\x91\x3b\xa4\x6c\xd9\x21\xa5\xda\x21\x42\x6f\x7a\xd4\x49\xa2\x39\x5e\xe3\x62\xba\x9e\xa9\x2d\x99\x12\xee\x84\x3b\xeb\x59\x27\x9d\x80\x58\x02\xda\x1e\xe7\x8a\x41\xcf\xf0\x1c\x55\x55\x24\x71\x96\x50\x26\x2b\x26\xca\xa5\x28\xa6\x9a\x48\x57\x1e\x1d\x75\x74\x48\xed\x19\xe3\x23\x39\xf2\x04\xea\x1f\x7d\xc9\x2f\xbf\xfa\xbd\x0c\xfd\x26\xb4\x58\x82\xf3\xf2\x6e\x25\xff\xea\xa2\xe2\x16\x93\xee\xff\x73\x29\x71\x56\xdc\x1c\x5d\x83\x0a\x38\xa6\xf1\x7b\x6d\x2a\x0f\x78\xf3\xfb\x7c\x21\xaf\xcd\x4b\x9e\xe4\x25\x93\x8d\x2a\x13\x4c\x3f\x45\xd1\x8f\x34\x56\x1a\x63\x1f\x8f\xce\x8f\x4e\x2e\xae\x2e\x7e\x39\x79\x7d\xf6\x81\xd0\xb8\xfe\x7e\x71\x79\x74\x79\xec\x5e\x4d\x63\xae\x3a\xd2\x2a\xb4\x66\x3b\x9c\x6e\xd9\x3d\x06\xfd\x52\x0b\xa7\x1d\xed\x74\x2c\x9a\x4e\x7a\xae\x7a\x18\x27\x4d\x35\x33\xf1\x96\x96\x65\x72\x43\xc1\xbd\x46\x4b\x1e\x53\x29\xe8\x2b\x82\x67\xd7\x4b\x9e\xcc\xe9\x64\x47\x7a\xb8\x2b\x94\xa3\x48\xae\xfe\x5b\xbc\x81\xd5\xbc\x44\xa9\x3a\xed\x57\x14\xba\x10\x74\x6e\x71\x08\x55\x6e\xc8\x8a\x1d\x1c\x85\xe4\xdb\xa5\x60\x65\x8d\xb2\x07\xf9\x35\x4a\xf4\x2c\x62\x0e\x98\x00\x04\x88\x9c\xf2\x19\x0a\xfc\x8c\x38\x84\x0b\xfc\xee\xbb\x60\x8c\xbc\xdf\xe7\xce\xe3\x1f\x9d\xf2\xfd\x91\x62\x2a\xb5\xdc\xd2\xfd\x7e\x62\x64\x61\x3d\x8f\xba\xe8\xa1\x2a\xca\x2d\x8b\x4e\x90\xdc\x27\x3d\xf0\xb4\x30\x65\x86\x98\x4b\x04\x44\xcc\x5c\x0c\x12\x49\x12\xcc\xaa\x50\x4e\x6a\xd1\x65\x39\x3c\x6a\xd1\x80\xa9\x80\x7e\xb9\x80\x0b\xd6\xed\xaa\xfc\x44\x40\x6c\x66\x42\x4a\x86\xfe\x93\x42\x8e\xa7\x44\x1c\xea\x9c\x5e\x20\x49\x65\x0d\xd3\x7c\x56\x05\xc1\xe8\xb5\xe7\xc7\xac\xb8\xf1\xf1\xf8\x7f\x55\xc4\x1a\xb6\x88\x0e\x20\x02\xa7\xe7\x67\x79\xca\x70\x31\x23\xbc\x03\x8d\x46\xde\x2e\xef\xfe\x5b\x6f\xc0\x06\xbd\x71\xb7\x37\x28\x1c\xa7\x6e\x9a\xb8\xcc\x92\x7a\xa9\xda\x04\xbc\x4d\xe7\x50\xdb\xad\x73\x4f\x54\x2c\xba\x0a\xc3\xdd\x6e\x1b\xb3\x5b\xcf\x78\x0a\xdf\x5d\x23\xcb\xaf\xb9\xea\xeb\xf7\x55\x20\x36\xd8\x98\x08\xdc\xfb\x1c\xba\xe2\x7e\xd4\x2f\x89\xf9\x27\x59\x36\xde\x54\x58\x59\x07\xa6\xf2\x51\x59\xbf\xc9\xc7\xaa\x53\x46\x79\x9c\x64\x99\xf1\x66\x05\x81\x1b\xc0\xe3\xa2\xdc\x29\x6b\xc0\xa0\x23\x81\x30\x45\x76\x9b\xc2\x91\xf0\x0e\xc8\x76\xab\xe2\x38\xe4\xda\xaa\x2e\x05\xa7\xa4\xb2\x67\xc8\xd5\x24\x10\xf8\x5b\xb4\x85\x9c\x20\x80\x4b\x74\x52\x68\xfe\xf6\x0a\xe2\xec\xac\xa2\x0c\x21\x2f\x4e\xbb\x44\x0b\xcd\x72\xe6\xda\xcc\x31\x35\x67\x12\x90\xef\xd0\x21\xf0\x9c\x0c\x71\x6a\x09\xba\xc3\xf9\xcb\x14\x78\x6b\xc5\x74\x3e\x93\x55\x4d\xe7\x33\x70\x63\xd4\x56\x91\x76\xf8\x2b\xbb\x25\x67\x78\xca\x9f\xc8\x6a\xd1\xd6\x49\xae\xbd\xc4\xd6\x62\xc4\x06\xee\xb9\x9c\xe7\xb1\xca\x17\xc1\xdb\xed\xa4\xb4\x20\xc7\xe0\xdc\x53\x09\x97\x7b\x57\x57\xea\xa6\xb8\xda\x3f\xf8\x7e\xf4\xf7\xbf\x7d\x3f\x1c\x0e\x47\xcf\x5f\xfc\xf5\xef\x07\xc3\xfd\xe7\xcf\x0f\x0e\xee\x9f\xf7\x3a\xb5\xcb\xe4\x4e\x4b\x6b\x7b\x57\xe6\x12\x32\x65\x0f\x9e\x1f\xfc\xfd\xef\x07\x7f\x7b\x3e\x3c\x18\x3e\xdf\x3f\x78\xfe\xfc\x00\x0a\x87\x37\xd3\x8d\x16\xab\xf6\xae\xae\xfe\xfb\xa3\x2b\xfa\xfc\xef\x07\x7f\xff\xdb\xc1\x8b\xbf\xbd\x78\xb1\xff\xfc\x40\x17\x6c\xbb\xe8\xae\x75\x14\xd1\x87\x7a\x14\x51\x13\x15\xda\x8f\x78\xa7\xa2\x8a\xab\x57\x2f\x48\xaa\xa4\x44\x0b\x9b\x0c\x77\xc8\x82\x17\xb7\x9e\x53\x7e\x51\x04\x22\x2e\x56\xea\x9b\xca\xc6\x84\x60\xe5\xd1\x5c\xb0\x3b\xf0\x7a\x02\x09\x6b\x9e\x69\xcb\xce\xde\x7a\x95\x26\x82\xf6\xac\x9b\xd3\x22\xbb\x6b\x04\xc8\x36\x50\x16\x8c\x75\x5c\xa5\xde\xed\xbc\x67\xdb\x7e\x93\xac\x4b\x9a\xbe\x7e\x80\x3e\xb0\xfc\xc6\xcf\x34\xaa\x67\xd2\x5e\xff\x9e\xcc\x63\x2a\x3a\x57\xec\xfa\x96\xbc\x57\x77\x0c\x7c\x05\xfe\xb7\xc7\xfb\xd7\x41\xbf\xa7\x77\x33\x92\x6f\xb7\x54\x31\xb8\x4d\xc4\x13\x41\x73\x61\x38\xdf\x0a\xf7\x32\x9c\xef\x34\x11\x89\x62\x9e\xca\x27\x88\x88\xea\x4f\x4c\x7a\x52\xa4\x34\x73\xb5\x5f\xcf\x6c\x74\xf1\x95\x32\x73\x0b\x56\x02\x6c\x56\xfd\x94\xe9\x8d\x2b\xc0\x0d\x22\xe5\xc2\x0c\x29\xcd\xac\x53\x89\x9b\xf8\xd5\xac\xd8\x5d\x21\x8c\x19\xa1\xff\xa1\xa4\x7f\xac\x69\x3e\xa7\x64\x7f\x84\x59\x10\x82\xc2\xf4\x86\x1b\xf3\xbb\x98\x53\x79\xfd\x4b\x5a\x4b\xd6\x10\x79\xfd\x63\x2e\x04\xca\xd3\xcb\xb7\x57\x7c\xc3\xfa\xed\xc1\x7e\x7d\x2a\xcf\x76\x3b\x54\x2c\x22\xdd\x7b\xf4\x0f\xac\xb8\xac\xbd\xa7\x05\x37\x8a\xd1\x64\xb7\x72\xbf\x1f\xed\x15\x4f\x8e\x60\xbb\x6d\xfb\xde\x68\x05\x19\x3f\xe4\x72\xb5\xf2\x58\x91\x5c\x76\xbd\x43\xb4\xa3\xbe\x92\xb9\xf7\xa2\xd9\x45\x7e\x92\xc1\x88\x12\xc3\x8c\xf7\x56\xdc\xcf\x37\x4d\xf6\x47\x33\xed\xe9\x30\x64\x51\x26\x87\x83\x41\x69\x23\x41\xfb\x45\x4a\xc5\x7f\xcf\x62\x56\x6a\xef\x36\xa9\x76\xd8\xdb\xdc\x44\x99\x2a\x58\x85\xbb\x88\x9a\xa8\x06\x17\x3a\xc5\x04\xca\x32\xbb\x29\x37\xe7\x20\x8a\x10\x79\x15\x02\x9b\x49\x63\xab\xed\x8d\xf0\x6d\x80\x59\x24\x2a\x67\x77\xbf\xab\x72\xf4\x10\x1a\xfb\xa5\x54\xd5\x7b\x1a\xca\xa1\x58\x89\xdb\x28\x79\xd5\xa8\xda\x3b\xb9\xb1\xb0\x0d\xbc\x65\xa9\xe2\x3b\xa8\xc3\x8c\x90\x6c\x5f\x0d\xb9\x0b\xbd\xec\x21\x3f\x26\x52\xdb\x19\x51\x5d\xd0\x90\x03\x79\x67\xb6\x12\x4b\x5a\x8f\x57\xe4\xd7\x12\x7b\xdf\xb5\x9c\x30\x50\x1a\xf2\xb3\xba\xcf\x26\x26\xd0\xee\xbc\x7e\x86\x0a\x26\x30\xb2\xda\x8c\x2a\xfa\x8b\x15\xf4\x49\xdc\xf0\xc1\x9f\x1a\x7d\x87\x84\x7f\x9e\xfa\xae\xd0\xe2\x57\x79\x9d\x60\xaa\x6e\x15\x3f\xc1\xbb\x48\x86\x3e\xb0\x54\x7f\x3f\xb3\x2c\x53\xce\x17\x22\x73\x84\xfd\xcf\x6f\x59\x1a\x7e\xad\x5c\x87\x37\xe1\xd6\xd9\x6e\xa3\x79\xd0\xef\x60\x5b\xd6\x41\xa3\xc4\x4d\xdd\x9a\x77\xef\x93\xd2\x6c\xac\x9e\xb9\x35\x4d\x7c\x11\x05\xe9\x9d\x50\xcc\x4f\x8b\xbc\xb7\x78\xc5\x69\x9d\x72\xf5\x07\x04\x97\x07\x6a\xdc\xae\xc3\xfa\xed\x3a\x0a\xa6\x21\x81\x54\x0f\x7a\xe9\x05\xa8\x38\x4d\x19\x97\xdb\x98\x36\x96\xf2\x2b\xd3\x2c\xf1\x2b\xfe\x60\x26\x50\x6f\x07\xbd\xfc\xed\x67\x42\xc2\x5f\x39\x44\x7f\xb8\x20\xfd\xf5\x02\x96\x98\xa9\xf1\x40\xa9\x09\x17\x17\x85\x1f\x10\xa6\x95\xfe\x40\xc3\xfd\xea\x30\x0a\xb5\x60\x55\x09\x71\xd5\x9c\x02\x90\x1f\xaf\x2b\x92\x73\x65\xb4\x91\xfd\x20\x47\x90\xb5\xf2\x92\x5a\xcb\x35\xe9\x0c\xe5\xc6\x12\xc3\x67\x4f\xa2\xd8\x20\xa0\x72\x8f\x80\xe2\xaf\x0e\x26\x7c\xff\x40\x12\x50\x8c\x1c\x1c\xb2\x97\xdc\x84\x47\xda\x3f\xf0\x09\x28\xa6\x03\xfe\xd8\xa9\x85\xce\x81\xa9\x93\x01\x14\x3e\x84\x37\x02\x8e\x06\x3e\x35\x18\x21\x50\x15\xc9\x51\xb5\x28\xb2\xac\xb8\x3f\xd7\xdb\xa0\x0c\x23\xcb\xa8\x76\x3a\xbb\x01\x87\x23\x9a\x7d\x8d\xa5\xfa\x6e\x9b\x34\x93\xe2\x46\xbb\xe3\x26\x64\x45\x15\x42\x95\x71\x8c\xe7\xb4\xf3\x3c\x30\x1e\x99\x93\xd9\xed\x0d\x82\x93\x3a\xe8\xa1\x5e\x25\x29\x44\x8a\x36\x4f\x1d\x68\xea\xab\x88\x5f\x79\x3b\x69\x1e\x51\x53\x82\xba\xec\x3d\x13\x19\x40\x9d\xf3\xb8\xa7\xfc\xfc\xb3\xca\x57\x01\xdc\xe9\x2c\x95\xf6\xfb\x01\x69\xf9\x20\x37\xb7\x8f\xbb\x56\xad\xec\xa6\x07\x38\x55\xc7\xb0\x5f\x7e\xa6\xc9\xe7\xc0\xb7\xec\x17\x49\xf3\x49\x2c\x41\xf7\xdb\xc5\x9f\x03\xd1\xc6\xa6\xf2\xd0\xf7\x5c\x45\x70\x96\x8b\x0f\x8a\xdc\x91\xc4\xfb\xc9\x2b\xb9\xe2\xa0\x7f\x37\x4e\x0c\x53\xb7\x54\x0f\x60\x1d\x3d\xce\xb0\xd6\x18\x1f\xaf\x31\x4c\xc9\x78\x5e\x11\x50\xc0\x3f\x06\xd7\xe9\x0c\xf5\xfb\x5a\x3d\x3d\x25\xc7\xa0\xc1\xc4\x10\x5e\x92\xb3\x28\xad\xf9\x20\x57\x0c\x89\xcd\x0d\x15\xdd\x5b\x2a\x12\x89\xd7\x3a\x65\xb1\x8b\x08\x6c\x09\x24\xe2\xa0\xf9\x43\xac\x3c\x56\x3e\x37\xaf\x33\x1a\x49\x52\x96\xd7\x18\x45\x51\xcf\x54\xd3\xb3\xdc\x98\x50\x3d\x13\xec\xb6\xac\x8b\xa4\x0a\xa6\xca\x00\x9c\xe0\x1b\xc4\x77\x89\xe6\x38\x45\x78\x6d\x21\xd2\x31\xf8\x60\x67\x78\x89\xf0\x12\xc8\xbe\x05\xd9\x2c\x98\x0e\x1c\xa8\x46\x83\x19\x99\xce\x3a\xcf\x3d\xd1\x29\x90\x4e\xd4\x04\x7d\x3c\xd6\xde\xe4\x3d\x15\xcf\x82\x0c\x0f\x0d\xc3\xe0\x55\xa1\xe2\x0c\x2f\xa2\x5c\x4f\x1d\x9d\x16\xf2\xb6\x57\xc4\xb8\x84\x42\x05\x66\x4e\x1b\xac\xc2\x72\xf2\xe4\x62\xb9\x89\x4b\x54\xa2\x5b\x31\xf7\x29\x53\x9f\xda\x26\x9b\xa9\xed\x8d\x6c\x61\x09\x44\x8c\x18\x9c\x4e\x8b\xfd\x91\x15\xe5\xd8\x0d\x24\x94\x83\x78\xd5\x51\xa1\x8b\x02\x97\xda\x2f\x39\xf8\xd6\x92\x59\x31\x4f\xb2\x53\x35\x16\x0f\xea\xc8\xd1\x19\x39\xb0\xa7\xd5\x4d\xa7\x2e\xee\xc2\xcc\x1b\xb2\x37\xdc\x52\x25\x7b\x58\xb1\xfb\xc6\xab\xca\x5e\x34\xfd\x7e\xb4\x20\x67\xd1\x02\xaf\x11\xc2\x66\x91\x17\x08\x2f\x2a\x8f\xfc\x3f\x6b\xec\xd9\x44\x08\xce\xae\xd7\x82\xb6\x56\xdb\xba\x6b\x29\x92\x14\x5f\x7d\xd7\xba\x8a\x7a\x68\xf2\xf4\x86\xa5\x72\xc3\x8e\x83\x54\x0a\x70\xdb\x53\xef\x0c\xa2\x56\xee\xb9\x28\x94\x20\xb8\x85\x60\x58\x96\x53\x7e\xa2\x77\xc2\x64\xd7\x87\x08\x81\x66\x6b\xa5\x98\x05\x97\x0d\x66\x81\x8b\x8c\x74\x05\xfb\xe7\x63\x0b\xad\xa9\xbe\x10\x5f\x43\xd6\x27\x84\x3d\xaa\xc0\xe2\x29\xc0\x04\x17\x5e\xee\x53\xa5\x3a\x56\x23\x8c\x73\x13\xb4\x70\xc5\x8b\x39\x2d\x95\xe6\x4c\x94\x43\x38\x58\xa0\x87\xbd\xc9\x68\xc7\xa5\x8d\xf5\x0b\xaa\x4a\x6d\x8d\x4c\xeb\xf8\x83\xea\x2d\x28\xec\x99\x92\x3e\x4e\xbc\xa3\x5e\x7f\x36\x90\x42\xc1\x85\x26\x4c\x20\xbc\xce\xbb\x82\x03\xb6\xa6\xb4\x3b\x55\x06\x4b\xba\xf0\x75\xfe\x9a\x2e\x0a\x4e\x61\x10\x3f\x16\xc5\xe7\xa8\x99\xa9\x5e\x0d\x58\xc0\xd5\x33\xd9\x89\xb0\xe5\xbf\xda\x0b\xea\x3a\x71\xb4\x10\x94\x7b\x7d\xc0\xb4\x9e\xe9\x9a\xce\x8b\x5b\x6a\xd6\x4f\xe5\xa8\x6a\x89\x01\x87\x53\xdf\xb7\x66\xae\x05\xea\xd8\x88\x74\xa5\x48\xca\xe5\xb9\xcf\xce\x50\xf1\x79\xa8\xa4\x73\xe4\x0f\x30\x3d\xe4\xc3\xd4\x6e\x92\x19\xc9\x6d\xe4\x32\x1b\xa0\x55\x2d\x69\x67\x2f\xea\xe9\xc7\x1e\x53\x6b\x89\xfa\x7d\xb6\xdd\x46\x9c\x08\x23\xe8\xd5\x10\x48\x7e\xd3\x5a\x80\x27\x4d\xf4\x40\x36\x54\xdf\x8b\x38\xf7\xf6\xa2\x17\x3c\xc2\x1e\xb5\xa2\xdf\x57\xa0\x24\xc1\x05\xc2\x49\xa5\x24\xbe\x10\xef\x61\x4e\x53\xea\x02\x69\x69\x70\x61\x6c\x1d\xa9\xe9\x7f\x7d\x38\x4e\x03\x3c\xb9\xa5\x06\x31\x96\xcf\xdb\x6d\x7d\x9c\xfd\xfe\x9e\x89\xfe\x54\x87\x35\x2b\x2d\xb1\xe8\xf7\xf7\x5a\xe2\x29\xec\x11\xab\x63\xab\xa4\xd1\x7e\xff\x02\xb1\x0b\x45\x20\x17\xa8\x55\xcf\x51\xbf\xef\xb1\x63\x5d\x55\xa6\x92\x2a\xf2\xce\x14\xa6\xfa\x01\x0e\xac\xd2\x37\x8b\x6a\xd0\x8b\x78\x20\x64\xe2\x3d\x2b\x91\xd5\x82\x8a\xf9\x52\x9d\x7a\x08\x4c\xaf\xeb\xa0\x01\x4c\x22\xd4\x55\xaf\x4f\x64\x43\x27\xdd\xfb\xa6\x27\xce\xaf\x1a\x37\x73\xb9\xd6\x4c\x95\xb4\x15\x10\x52\x85\x76\xca\x19\x06\x19\x05\x08\x9f\x8a\x1b\xa7\xf0\xa8\x04\x1a\x02\x55\x8a\xdd\x79\x6e\x06\xe0\x4c\x59\x8d\x2b\x70\xe0\xc5\xd4\x36\xa4\x19\x60\x0b\xc4\xb0\x1a\xc5\x8e\xaa\x56\x04\x82\xec\x82\x21\x64\xf6\x86\xb8\x77\xcf\xb2\x4c\x1f\x3b\x28\xdd\xc3\x7e\xe5\x3e\xe1\xe7\xdd\x24\x2e\x31\xbe\x76\x0d\x2b\x43\x96\xd6\x4f\x12\xe9\xc1\xf7\x91\x50\xc6\x2e\x00\xac\x70\x0b\xec\x44\x55\x13\xee\x58\x00\xa2\x82\xd1\xdb\x29\x08\x28\x91\x5d\xd0\xa3\xa5\xc7\xed\xc3\x48\x6c\xa3\x80\x17\xb7\x7e\x51\x00\x0e\xe7\xe4\x3e\x62\x24\x47\x0a\x8b\x61\x2d\xe3\xc8\x3d\x40\x4c\x6b\x3c\x5a\x89\xd1\x55\x4d\xf0\xbb\xfb\x42\xa1\x91\x85\xeb\x2d\x46\x15\x3a\xc2\x0e\xaa\x76\xcc\xc0\xa6\xde\x3e\xa9\x27\x28\xb8\x5a\xef\xa5\x07\x63\x45\xe5\x9f\x86\x26\x49\xa8\x5c\x82\x58\x23\x66\xc5\x1d\x0c\x0e\x58\x70\x41\x53\x54\xd5\x13\x82\xe3\x18\x1c\xa0\x96\xe9\xb0\x21\x85\x24\x69\x8d\xfa\xfd\x36\x6d\xe3\xb6\xe0\x13\x30\x87\x93\xe6\xfd\x4c\x1a\x29\xe1\x25\x17\x9e\x4c\xff\x40\x18\xc6\xc9\x58\xc3\xa6\x30\xe7\xd8\x37\x62\xaf\xaa\x36\x4d\x85\x4b\x2d\x86\x39\xe9\x42\x3c\x81\x74\x07\x8e\xa5\x44\x32\xa5\xbc\x3c\xa2\x30\xa4\xb4\xc6\xa5\xf2\x26\x2a\xa5\xb1\x2f\x73\x9b\x14\xad\xd8\x0b\x08\x14\xc2\x85\x97\xe7\xf3\xa9\xbd\xe0\x63\x4d\x6d\x27\x18\x54\x4a\x34\xc2\x78\xf4\xb5\x61\x3d\x39\x28\x2b\xc0\xd0\x63\x0c\xd0\x3a\x4f\xcb\x5b\x7d\x97\x88\x04\x9d\x5e\xcf\xfa\xfd\xa8\x8c\x44\xad\xb0\x24\xa1\x02\x03\x8c\xe9\xb5\xd6\xac\xf1\x4f\xba\xb5\xaf\xb3\xa4\x41\x9c\x52\x8b\xac\x4c\x18\x09\xde\x01\x18\x8c\xc1\x87\x06\xc0\x0c\xf9\xf9\xd6\x83\x12\xac\xdf\xbf\x07\x6a\xd8\x93\x9d\x35\xe7\x8b\xd9\xc9\xfa\xf8\xf4\x64\x05\x53\x85\xc2\xc5\xcd\x71\x88\x57\xf1\xfa\xe9\xbc\xb0\x5f\x24\x88\x6d\x41\x8f\x5b\x20\x22\x57\xf7\x55\x2d\x21\xbc\xb9\xd4\x28\x58\x7e\x63\xec\x70\xd3\x2e\x4c\x41\x0f\x61\xe8\x6d\xec\x35\x15\xa2\xd8\x77\x09\xdf\x78\x5c\x05\x61\xb9\x0a\xbc\x82\x3e\x74\x28\x04\x7d\xe2\x66\x95\x36\xc0\x0b\x48\xbd\xc8\x6c\xf9\x54\x4c\x87\xb3\x99\xa4\x03\xac\x98\xc8\xcd\x40\x20\x74\x72\xc9\x8a\x90\x56\xde\x2e\xb0\x8a\x4d\xd9\x7a\x43\x78\xe0\xdf\x16\x46\x0d\x20\xe5\x61\xb2\xa6\xb6\x91\xef\x8a\xc1\xaa\x32\x5b\x45\xc8\x67\x57\x2c\x35\x81\x9b\x18\x9a\xe4\x53\xa6\x82\x82\x8e\xd5\x13\xce\x2b\xb3\x1d\xde\xd4\x37\x81\xc7\x71\x04\x2e\x31\x70\x73\x42\x82\x08\xde\x94\xa4\xd0\x54\xf3\x39\xa8\xc6\xf7\x37\x10\x4a\xf8\xfe\x68\x8a\x28\xdd\x39\xac\x34\x9f\xef\x43\x72\xed\x9f\xbe\x5e\xcf\x1c\x94\x65\x54\xab\x17\xb7\x28\xd0\xf4\x7a\x7b\xba\xeb\x03\x22\x49\x79\x2c\x06\x44\xa1\xb3\x78\x6f\x58\x29\xa1\xc8\xbf\x83\xf9\xf6\xbf\x83\x68\x1d\x85\x20\xcb\x3b\xad\xfa\xc4\x37\x5b\xa5\xe4\x55\x94\x4f\xa9\x86\x55\xd4\x23\xde\xf0\xde\x50\x82\xee\x9a\x20\xd9\x33\xa7\xc3\x05\xb1\x88\x6a\xcb\x25\xec\x91\xaf\xfe\x5c\xf4\x2e\x44\xc2\x85\xc7\xf6\xef\x99\xbb\x3a\xc3\xbb\x8a\x68\x18\xad\xd0\x47\x99\xbf\xce\x3d\xa5\x66\xb0\xcc\x1f\x5b\x42\xc2\xde\xbf\xb2\x3a\xa8\x93\xdc\xb2\x42\xc6\x61\x9e\xb6\xf1\x00\x37\x15\x2c\x2e\x23\x8a\x59\x20\xdb\xd3\xfc\x62\xc5\x64\x32\xbb\x2b\xec\xbc\x96\x5a\x29\xc7\xc8\xc8\xb3\x76\xf6\xd8\x49\xad\x28\x8c\xf2\x6b\xe1\xd5\x04\x2e\x10\xbb\x6c\xd1\x55\xa4\x51\xd7\x44\xfb\xdc\x31\x23\x46\x61\x19\x34\xf6\xeb\xc3\x01\x6d\xc6\x7a\x03\xba\xab\x89\x11\xb0\x85\xfe\x2c\x14\x23\x3e\x18\x7f\x38\x77\x33\xef\x3a\x05\x4d\xe8\xdd\x59\x07\x03\x79\x76\xf7\x14\x7f\x68\xa3\x08\x94\xbc\x22\xb4\x63\x61\x0b\x38\xdf\x30\xe2\x15\xff\x39\xb2\x04\x1f\x16\x56\x4b\x25\x89\xc2\x4d\x54\x1f\x59\x7d\x07\xf9\xaa\x6e\x9e\xe7\x80\x60\xaf\x93\x60\xac\x66\xe7\xb0\xf1\x93\x33\x60\xd6\x2f\xc1\x42\xf7\xa8\x6c\xef\xd1\x47\x89\xcf\xd1\x54\xf6\x45\x62\x3a\x75\x99\xd5\x67\x8d\xe7\x9c\x3f\xc1\x41\x52\x32\xff\x80\xb0\xd1\x2c\xa0\xfb\xc4\x8a\xb6\xb8\x67\x15\x48\xf2\xb0\x29\xa5\xea\x79\xae\x9b\xfa\xdd\x5e\xa7\x0d\x48\xea\x50\xaa\x1a\x33\x7c\x3a\xf3\xf8\xe3\x4a\xeb\x45\x02\x59\x73\xf1\xda\xb8\xb2\x4d\xa1\x9c\xcf\xf0\x0a\xb8\x57\xbe\x70\x9b\x07\xb7\xb6\xc5\xda\x7c\xd0\xcb\x2a\x88\xca\x78\x59\x40\xb5\xbe\x52\x72\x16\x79\x68\x98\xb1\xc5\x0e\xea\x43\x68\x0a\xe6\x01\x81\xa4\xce\x6a\xe2\xfa\xf6\x72\x11\x07\x43\x1a\x46\xf2\xa9\x03\x1d\xd6\x64\x21\x40\xdd\x75\x77\xf4\x10\xca\x88\xc2\xd4\x81\xa4\xae\x6a\x7e\x73\x42\xb5\x84\x77\x0b\x9c\xe0\x0c\x98\x2a\x9f\xf1\x3a\x40\x1c\xad\x30\x0a\x81\xd6\xb3\xd3\xc6\x6c\xcc\x19\x68\x2e\x16\x64\x08\xd0\xcf\xd8\x98\x81\xae\x41\xa1\xa2\x6e\x17\xb6\xdb\x86\x61\xe2\x17\x0f\xa9\x67\xb4\x99\x93\xa2\x03\xaa\x07\x95\xaa\x57\xb8\xd8\xbd\xc5\x2b\x32\x3c\xdc\xdf\x2f\x8c\xe8\x42\x56\x8d\x97\xc4\x99\x4c\x2e\x08\xf5\x8f\x4a\x31\xc3\x2b\xa0\x63\x41\x17\x8e\xa4\x4a\xbb\xdf\x7a\x7a\x98\x14\xaf\xc8\x5c\x51\x05\x4a\x61\x16\x16\x58\x77\x4b\xd6\x10\x2d\xb1\x2e\x83\xd7\x78\xa1\x75\x70\x6f\xa8\xf0\xb2\xbc\x2b\xb8\xd6\xa5\xd7\x0a\xec\x61\x19\xcc\x71\xa1\xcb\x7d\x53\x13\x72\x5d\x56\x64\x55\x67\xda\xc1\x79\x5e\x59\x9c\x5e\xdb\x14\x2c\xfa\xfd\x85\xe5\x3d\xd5\x07\xe7\x51\xd0\x36\x53\xbf\xbf\xf2\x58\x57\xb7\xfd\x7e\xb4\x32\x08\x04\xd4\x65\x10\x71\x97\xeb\x56\xeb\xce\x2d\x0e\x23\x39\x59\xdb\xed\x2a\xae\x73\xc9\x16\xe0\x76\x62\x4e\x4e\x12\xb1\x8c\x6f\x59\x1e\x15\x78\x8e\xf0\x1d\x59\x21\x9c\xf7\xfb\x7b\xf2\x88\xde\x91\xbb\xd6\x11\xdd\xd9\x11\x21\x9c\xf9\x90\x6f\x9d\x97\x4b\xb6\x10\xd1\x1d\x84\x06\x5f\xbb\xa8\xdf\x0d\x23\x91\x93\x82\xd3\xae\xae\xc5\x46\xa7\xbc\xa7\x9c\x5a\x47\x59\xcb\x04\x3c\x68\x71\xda\x4d\x38\xed\xa6\x6a\xb1\xba\xc6\x38\xb2\xbb\x28\x38\xf8\xd9\x51\x37\x42\xb7\x37\x70\x8c\xc2\x5c\xf3\x99\x98\x8a\xa5\x99\x08\xfa\x46\xeb\xf7\x47\x7e\x6f\xe5\x70\xcb\x28\x6b\xaa\xf6\x78\x09\x12\xbd\x41\x38\xab\x5a\xaa\x6a\x75\x71\xe3\xc5\x91\x1e\x0c\xb8\xd2\xf0\x9d\x72\xff\xba\x43\x4e\x08\xc8\x8c\x10\xb0\xd0\xd2\xbe\xc4\x17\x06\x96\x95\x8a\x71\x0d\x5a\xd7\x20\xc1\x0e\xd8\xa7\x0c\x97\xb8\xc0\xa0\x96\xfb\xb5\x9d\x1d\x82\xe5\x84\x77\x13\xd0\xce\xf6\x62\xb2\x03\xfa\x9f\x10\x3e\xe5\x0e\x64\xa1\x00\x27\xdf\x71\x0a\xcc\x35\xd3\xd1\x81\xc7\x95\xee\x30\x5b\x44\x70\x29\x03\xb4\x26\x84\x3a\x17\x0b\x60\x2c\xdc\x0e\xe7\x43\x3f\x0c\x25\xd9\x91\x2d\x84\x13\x9d\x84\x94\xfd\xbe\x05\x7e\x95\xe7\xa5\xec\x63\x30\x5d\xb2\xa3\x09\xaa\xbe\x32\x8c\x8d\xb3\xc3\xdd\x54\xd8\xc1\x30\x9c\x90\xe9\xec\xb0\xd8\xdf\x3f\x34\x8e\xd1\xf2\x7e\x9f\x82\x17\x25\x39\x46\x39\x56\x0f\x1d\xce\xc2\x89\x94\x00\x5a\x76\x35\x8d\x32\x34\x61\xd3\xb5\x52\x07\x57\xf3\x35\x6e\xb0\x91\xd7\x3a\x4f\x39\x5d\xcf\xc6\x89\x32\x6f\x5b\xc3\x71\x4a\x76\x1f\xa7\xdf\x7e\x29\xd6\xdd\x94\xa5\xf9\xbf\x3b\xaf\x4d\x34\x2f\xd6\x37\xcb\xae\x52\x9b\x78\x06\xee\x75\xd9\x5c\x09\xf2\xa8\xa0\xbc\xec\x8a\xa2\x5b\x26\x82\x95\x8b\x87\x6e\x92\x65\xdd\x62\x01\xe7\xa9\xf5\xa0\x29\x7b\xe5\xef\x36\xb4\x8a\xbb\x27\xac\x2c\x81\x2a\x55\x7b\xb7\xfb\xdb\x20\x71\x27\xaf\xb1\x4d\xe5\xcc\x4a\x3a\x5c\xce\xda\xdb\xff\x33\xc3\x8d\x4f\xb9\xbd\x71\xd3\x4f\xe7\x1f\x8e\x55\xfc\x10\xc8\xe0\xdb\x6e\xd4\xb2\xfd\xbf\xda\x72\x43\xe3\x53\xa7\x4f\xe1\x53\x8e\x39\x61\x58\x13\x6b\x9e\x59\x1c\x68\x17\xba\x54\xc3\x75\xac\x8d\x86\xd6\x86\xf9\x8c\xd9\x2e\x5c\xc6\x3e\x5a\x35\x20\x6d\xed\xe7\xed\xba\xb7\xde\x37\x25\xed\xd9\x1b\x49\x34\x42\x27\x76\x42\xf3\x10\x09\x04\x41\x01\x23\x4f\x20\xc0\x0e\xbb\xce\xe8\xeb\x87\x4f\xe7\x1f\x82\x1a\x13\x2f\x4a\xb8\x3c\x86\x82\x0c\x31\xb7\x36\xc7\x87\xe2\x25\x3f\x1c\x0c\x84\x31\xeb\x62\x53\xa1\x0c\xff\x0c\x0a\x91\x92\x69\xa8\xb3\x13\xa0\x67\x9a\x1b\x3a\x97\x57\x5e\xfa\x2d\x58\xdc\x1c\x4d\x85\x52\xc6\x2c\xd5\x10\x97\x2d\x30\x78\x8e\x53\xbc\xb6\xb7\xef\x82\x2c\xd5\x87\xce\x62\x92\x45\x0b\x34\x5e\x86\xac\xd0\x65\x0b\x1f\x34\x33\x06\x9d\x01\x5c\x13\xb3\x4e\xb1\xdd\x2e\x1b\x57\xf6\x0a\x4d\xa2\x42\xdb\x18\xf8\xb9\xc9\x12\x8d\xeb\x49\x2b\x6b\x20\x18\x85\xda\xab\x2c\xb0\xde\xc7\xb9\xa7\x96\xf3\xde\xca\xab\xa8\x33\x39\xb0\x1c\x17\x2b\x71\xda\x6d\x91\x01\x97\x9e\xbe\xf3\x76\x0b\xaa\x6c\x7b\x1f\x3c\xf9\x58\xbf\xef\xe4\x63\xc3\x8e\x4e\x12\xdb\x6d\xf0\x61\x14\x86\x1a\xd7\x7e\x03\x70\x1e\x24\x28\x66\x11\x77\x23\xc8\x77\x8e\x80\x91\x21\x2e\x9c\xcd\x0e\x7b\x59\x1c\x0e\x06\xcc\x78\x11\xe0\xda\xb9\x00\x9d\x26\x6a\x34\x89\x1b\x4d\x65\x47\x23\xf3\xbe\x23\x70\x90\xc3\xc3\x6b\x84\x56\x59\x52\x8a\x16\x2d\x75\x4d\x68\xf9\xd4\x4d\x91\xa5\x4d\x92\x67\x87\x46\xa1\xa6\x77\x74\x58\x38\xc7\x74\x0a\xd4\x03\xb4\xbd\x86\xdf\x7a\x4b\x69\xa3\xf9\x6b\x94\xff\xb3\xe2\xc6\xd2\x8a\xf6\x74\xc0\xf6\xcf\xad\x5b\x78\xfd\xb5\xa4\x22\x42\x15\x68\xe0\x18\xfe\x97\x3b\x4f\x90\x8c\xa3\x9d\x4e\x01\xed\x15\x89\x73\xb2\x37\x3c\xe4\xaf\xc8\xb0\xdf\xcf\x0f\xf7\xf7\xb9\xe3\xee\xf1\x19\x2e\x08\xb3\xe4\x13\x55\x6e\x5a\xf1\x26\x29\xc7\x45\x25\x57\x5e\x19\xad\x33\xf0\x0c\xb3\xdd\xf6\x82\x17\x65\xb3\xef\xfb\x26\xd8\xff\x1e\x55\x15\x42\x95\x85\x08\x75\xf9\x48\x0b\xd0\xa0\xa8\xf2\x4e\x8c\x5b\x08\x87\x35\x18\xea\x6a\xc1\xb8\x67\x8f\xe0\x94\x61\x73\x4c\x11\xde\x13\x9a\xf5\x59\x5f\xd0\x00\xcf\xaa\x7f\xd4\x5c\x34\xa7\xe6\xbb\x43\xb1\x97\x35\x4d\x36\x86\x98\x07\xf4\xaf\xee\x62\x0e\x4c\x55\xd7\x4d\xd3\x47\x1f\x33\xae\x41\x0c\x84\xd9\x0e\x2d\x78\x51\x9c\xeb\x20\x2e\x50\x30\x62\x38\xf7\x19\xa7\x9e\x1e\x2b\xf3\x98\x48\x84\xd5\x34\xa8\xc9\xab\x88\x05\xaa\xc1\x6a\xfb\x2a\x99\xcf\xa7\xf3\x0f\x11\xb3\x97\x5f\xca\x52\x6f\x09\xda\x0f\x81\xd1\x32\x2d\x6c\xa7\xfc\xc1\x19\x5d\xf3\xba\xca\x32\x43\x08\x6b\x01\x58\x4d\x87\x7d\x5e\xdc\xae\x32\x0a\xec\x20\xcc\xaa\x16\x3d\x5b\xe5\x6e\x96\x3f\x04\x7b\xe9\x86\x8a\xcb\xf6\xac\xce\xa7\x94\x87\x37\xe9\xe5\xa5\x66\x81\x8d\x26\x37\xb8\x0d\x31\x57\xb2\xe5\x0f\xcb\x12\xa7\x06\x55\xc1\x3c\x74\xd6\x72\x4a\xef\xd5\xbd\xaf\x40\xa1\xf6\x61\x6a\xf9\xf6\x5c\xf3\xfd\xbf\x44\xdc\x9f\x97\x60\xb7\x38\x94\xce\x67\x63\xb8\x9e\x1c\xe5\xe9\x87\x22\x49\x77\x75\x28\xff\x96\x0e\xd9\x9d\xdf\xe0\x39\xfe\xf6\xe9\xfc\x03\xa0\x9b\xa0\xe9\x9d\x17\xa2\xeb\x70\xba\xdf\x50\xf3\x4c\x08\x9c\x37\x0f\x84\x95\x12\x6b\xa9\xea\x97\x70\x8f\xcb\x2d\x2d\xf7\x42\xbb\xd6\x1b\xaa\x1a\x7d\xa7\xc1\x12\xd3\x38\xc0\xb0\x1c\x44\x07\xf6\xcd\x5c\xbb\xf1\xf3\x35\x2e\x80\x50\xdb\xb1\x23\xac\x12\x8f\xf6\x44\x54\x07\x03\x98\x91\x7c\xd2\xfa\x65\x7a\x37\x1b\x7b\x8d\x17\xa4\xd6\x31\x86\x05\xc2\x09\x59\x44\x01\x84\xc0\x45\xb8\xd8\x6c\x11\xbd\x8f\x8a\x60\x7a\xbc\x17\x04\x20\xce\x3a\x85\xae\x13\xc9\xde\x79\x4c\x34\x99\x69\x26\xb5\xc5\x92\x6c\x88\xcb\xea\x29\x88\xb7\xdd\xee\x04\x76\x92\x0a\x12\xd6\x0e\xe6\x6b\x20\xb1\x15\x40\x65\x96\xd3\x08\xbe\xfe\xdf\x68\xa6\x59\x54\xec\x00\x5b\x19\x6a\xbf\x85\xad\x43\x1a\x12\x9c\xdd\x02\x3f\x75\x75\x3b\xff\x06\xff\x12\x44\xcb\x72\x17\x8c\xda\x92\x79\x0e\xf5\x8c\x3e\xa8\x4c\xc6\xa4\xc9\x3d\xa3\x16\x6c\xe6\x89\x4d\xd0\xef\x47\xbc\x65\x39\x51\xfb\x4d\xc0\xed\x44\xd7\x67\x61\xc7\x35\xe8\xd8\xf6\x7c\x47\x41\xc2\x31\xf7\x0c\x78\xea\x57\x48\x70\xbf\x79\x7b\x92\xfb\x50\xfd\x82\x0a\x91\x51\xdf\x96\x44\x57\xd3\xbd\x5f\xd2\xdc\x4f\x67\x65\xd7\x54\x96\x4a\xc0\x6f\xb8\x4a\x2a\xc0\xe9\xf1\x17\x06\x21\x22\x2c\x83\xb6\xb0\x37\xd4\x2e\x2c\xa0\xc0\x09\xc2\xbc\x4a\x8b\x3a\x0a\xd1\x90\x3e\x06\xbc\x72\xa5\x5e\xbe\x37\xd2\xd2\x5a\x49\xb8\x4d\x85\xc7\x5d\x28\xb4\xfc\xd6\xb2\x0d\x59\xbf\xcf\x1a\xca\x69\x81\x4d\x3d\x18\x97\x0a\xc5\x81\x08\xa9\x01\x67\x78\x61\xb4\xf9\x71\xef\x93\xbc\x85\x25\xc5\x0f\x39\xbb\x46\xcd\xad\x63\xe5\x31\xb0\xe0\xe3\xa4\xf2\xfc\x3a\x76\x14\x99\xf9\xbb\xaa\x22\x99\x26\x1e\x2b\x1c\xa4\x92\xfa\x98\x4c\x67\x58\x1b\x9c\xd7\x9c\x0f\x0d\xd1\x24\x32\x1d\x38\x12\x82\xde\xae\xa0\x0b\xf2\x5e\xf0\xd6\x48\x14\x20\xcc\xd4\x44\xad\xbd\x7e\xd0\xb8\xad\xec\xce\x72\xbf\xd7\x6e\x5e\x01\x7e\x9f\x02\x28\xd2\x84\xda\x39\xe6\xda\x92\x2b\xdc\x6d\x16\x15\xd8\x61\xd7\x60\xf8\x80\xc0\x73\x01\x81\x7e\xd9\x2d\xf2\x6e\x0a\x11\x47\x20\x96\x8b\xe2\xb6\x1c\x9a\xdd\x17\x76\xdd\x38\xfa\xce\x89\xf0\xad\x0e\x43\x89\xbc\x0f\xd8\x04\x06\x2e\x84\x33\xd9\xf3\xae\x2a\x5f\x58\xdd\x8e\x49\x35\xc5\x81\x57\xa0\x62\x3f\x6e\x60\x68\x4a\x9f\xb4\x69\x17\xf5\x24\xf9\xd2\xb0\xab\x69\xe9\xc1\xde\x10\xf7\x02\xa4\xaf\x87\xa7\xb3\x7f\x1e\x19\xa4\x58\x7c\x0b\x32\x48\x11\xd6\x5b\xc8\x5f\xbc\xcb\xf3\xa3\xd3\x8b\xf7\x97\xef\xcf\x4e\xbb\x6f\xce\x4e\x3e\x7e\x38\xbe\x3c\x06\xcb\x94\x40\xd4\xa3\xb5\xfd\x15\x0a\x90\x28\xf2\x36\x4a\x7c\x73\x14\xe6\xd9\xfd\x07\x86\x44\x9d\x50\x7d\x50\x87\xc8\x4d\xe4\xc5\x32\x2d\x1a\x4d\x60\x6a\xac\xc1\x2a\xc5\x48\x49\xaa\x2a\x5c\x7c\x1f\xb5\x70\x0a\x7e\xab\x84\x0b\x98\x31\x98\xa4\xd2\xc7\x5d\xb4\xe9\xa9\xba\x70\x8a\x98\x7e\x61\x82\xa6\xfe\xbd\xc3\x07\x03\xa4\xe2\x7e\x44\xcc\x66\x90\x57\x8a\xea\x92\x15\xb8\xfa\xd0\xc8\x03\x4d\x4e\x68\x74\x2e\x69\x47\x09\xa9\xc2\x14\x39\x6e\x5f\xb5\x90\x41\x13\x32\x9f\xfc\x8f\x84\x75\xc8\x16\x12\xcc\x1e\xe4\xf1\x68\x6b\xea\xb3\x92\x9b\xa4\x72\x11\xaf\x73\x4d\x21\x5b\xef\x40\xf2\xe4\xfa\x33\x00\x24\x6e\x7d\x02\x6c\xef\x60\x0e\x20\x8b\x9b\x02\x4f\x80\xf3\x2d\xc3\x1d\x61\x11\xce\xb9\x3a\x52\xa9\x5e\xc3\x7a\xd3\x6e\xaf\xea\xa8\x12\x67\xfc\x93\x2a\x10\x49\xa4\x2e\x2c\x2c\xa9\xe7\x66\x03\x54\x15\xfc\x07\x6b\xd6\xa5\xa0\xca\xa1\xa3\x61\x32\x49\xf6\xcb\xbd\xe7\x4d\x7b\xb2\x8b\x37\x91\xf8\x27\x2f\xab\x3c\x40\xf4\xed\x74\xaa\x3c\x90\x01\x19\x2a\xa1\x70\xfb\x85\xab\x40\xb1\xd1\x81\x6f\x63\x86\x08\xe5\xf3\xa3\x01\x8a\x68\x08\x22\x02\x97\x34\xb6\xfe\x1e\x9e\x0a\xe3\x11\x03\xeb\x9a\x8c\xef\x0f\x03\xa0\x76\x73\x60\x50\xd5\x3e\xd7\x41\x10\x92\xc2\x40\x79\x90\xd1\x1a\x91\xa1\xa7\x6c\xa1\xbc\x49\x70\x6f\xcf\xe9\x95\xea\xf7\xf5\x43\x94\x83\x3c\x2f\x77\x37\x80\xc7\x75\x05\xdb\xb2\xc2\x4a\x0d\x13\xec\x55\xa3\x13\xed\x70\x65\x8d\xf5\xb4\x08\xf9\x25\x00\xf6\xc8\x6c\xf0\x20\x69\x81\x27\x9b\x76\xcc\xf4\x75\x29\x69\x25\x5c\x54\x75\x63\xa6\x62\x22\x6a\xea\xa4\x2d\x3c\xd4\x12\x8d\x01\x7f\xdf\x1b\x56\x75\xc8\xd6\x80\x7f\xb4\xa1\xf5\xe3\x5e\x4b\xb2\x09\x8f\xcf\x78\x3a\xc3\x0a\xc0\xc1\x93\x5a\x29\xf9\x68\xc1\x86\x7c\x81\xe3\x3f\x9e\xce\x2a\x9c\x19\xa7\x31\xca\x15\x50\xd2\xea\xf4\x7d\x4d\x8a\x69\x3e\xc3\x73\x92\x4c\xf3\x59\x67\xdd\xef\xaf\xb5\x42\x06\x21\x73\xf5\x04\x66\x14\xf2\x5e\xe2\x93\xa8\xb4\xa7\x15\x26\x69\x8e\xf0\xba\xdf\x2f\x0d\x5c\x36\xe2\xd6\x35\x42\xe3\x6c\xbb\x5d\x9b\xf5\xd9\x93\x75\xe9\xe7\x49\x04\x7e\x96\xcb\x3a\x5c\xd1\xf5\xa1\x71\xe9\x41\x41\x23\x6d\x52\x83\x30\x03\xc0\xcc\x39\x91\x31\x63\x69\xf4\x41\x8e\xca\x23\xfb\x60\x56\x48\xa3\x55\x0d\x66\xb1\xce\x10\x73\x7a\x47\x79\x09\x29\x55\x0d\x99\xb0\x3e\x1a\xad\x95\x31\xb0\x75\x2d\x07\xd1\xc7\x3d\xf3\x8a\x08\xac\x85\xaa\x55\xa8\x79\x01\xf8\x31\x4e\x88\x4b\x3a\x4c\x94\x3a\x82\xf5\xdd\x99\x4f\x93\x59\x47\x62\xf0\x99\xe5\xe5\x6b\x39\x71\x53\x64\x01\xc8\xb8\x52\x0a\x57\xbd\x29\x42\xe5\xd7\x36\xbf\x24\xdb\x6d\xa0\x21\xab\x9d\x79\xd6\xf9\x8d\x86\xdf\x00\xb6\xa2\x78\x4e\xe8\x53\xee\x34\x70\x4a\x7c\x8f\x18\xbc\xdf\xdf\xa3\x4f\xba\xc1\xc0\x4b\x42\xeb\xc4\x5b\xe8\x55\x83\xe3\x45\xbd\xce\xb6\x2a\x1b\x9e\x33\x3a\xf3\xed\x36\xdd\x6e\x97\xdb\xed\x62\xa2\xc7\x04\x39\xe4\x3a\xae\xb5\x14\xcd\xad\xec\x1a\xfc\x48\xed\x02\xee\xf5\xc0\x51\xca\x65\x92\xa8\x53\x33\x39\x52\xe6\xfd\x92\x60\x9a\xe6\xb3\x7e\x5f\x47\x22\x93\x2f\x9a\x39\x64\x84\x41\x21\x58\x07\x58\xbe\xab\x75\x09\xcf\x31\xc3\x7c\xa6\xfc\x66\xf3\x1d\x2e\x66\x7c\xf3\x52\xd8\x59\x43\x5c\x3a\x31\x55\xf2\xb2\x3c\x1c\x0c\xec\xd6\x62\x72\x6b\x15\xd3\x2c\xfe\x4c\x1f\x66\x24\xd3\x21\x70\xb8\xf6\x5c\x95\xc5\xba\x85\x5d\xcd\xd5\x0a\x5a\x25\xb6\xa2\xaa\x93\xdb\x75\x97\xd4\x75\xfc\x5e\xcd\xc6\x82\x17\xb7\x26\x3f\x7f\x12\x31\x36\xf7\x57\x5d\x78\x11\xec\xe4\x2a\xac\x6f\xe3\x53\xa1\xb4\xdf\xf7\x35\x0c\x2c\xc7\x11\xd7\xed\x2e\x5b\xdb\x41\xc0\x99\xd3\xee\x29\x82\xf3\xac\x42\x32\x55\x95\xeb\xb6\x61\xc1\xb7\x58\x5f\x3f\xd5\x1b\xd6\xda\x1b\xd0\x5e\xc7\xb9\x6c\x5b\x14\xc4\x85\x77\xf0\x5a\xde\xc1\x00\xa8\xdf\x35\x46\x1e\xda\x58\x89\x1a\x70\xe5\x64\xa8\x9c\x99\x45\x8c\x24\x12\xbd\x8a\xc2\x6b\x6a\xca\x67\x48\x22\x8e\x5a\x99\xa2\x50\x1c\x1e\x40\xd9\x0a\x5f\x8d\xb2\xb9\xdd\x13\x6c\x6c\x90\x02\xe2\x49\xcc\x76\xf0\xba\x84\x4e\x0f\x4b\x44\x09\x0e\x6e\x4d\x50\xa5\x04\xb9\x8f\x17\xdf\xa5\xdf\x5f\xb6\xd3\x95\x06\xe2\x7b\x90\xbe\xa1\x8c\x2b\xcc\x78\x1b\x96\x7e\xc2\xb7\x27\xd2\x94\x80\xfa\x8f\x90\x56\x6c\xde\x2d\x38\xd3\x8a\x8c\x20\xed\x7e\x52\x58\x56\x29\xe9\x12\x5c\x3c\x56\xa1\xfa\x09\x6f\xcc\x9a\xf6\x0c\xf8\x38\xc8\xf8\xce\x50\x77\x83\x23\xd8\x2f\x8b\xd0\x4f\xf7\xbf\xca\xbf\xdf\x2e\xcf\x07\x93\x48\x87\xd1\x68\xed\xa7\x95\x2d\xec\x8d\x90\x86\xcd\x35\x7e\x14\x47\x15\x50\x28\xb7\x34\x65\x89\xf0\xe0\xfc\x9f\x3b\x90\x6e\x6b\x5f\xb0\x72\x2f\xb7\xe0\x14\x06\xe4\x5b\xa6\x34\x38\xe4\x9c\x88\x89\xa8\x71\xc3\x73\xc2\x03\xdf\x4c\xa1\x5b\x91\x7c\x3a\xb4\xa4\xb4\xe1\x17\x81\xce\x39\xcb\x6f\xba\x49\x57\xb7\x1b\x28\xa0\x1b\xd1\x43\x40\xf0\x03\x43\xab\xf0\x59\x49\x0c\x53\x6c\xb4\xff\x5b\x48\x80\xed\x36\x94\xb5\x18\x50\xd1\xc2\x66\x2a\x7c\xbf\x2d\x22\xbc\xb1\x85\xef\xbc\x25\xb1\xce\x5b\x7c\xcf\x2d\x49\xa5\xf3\xff\xcc\xc4\xb2\x2e\xec\xdc\xb1\x83\x6d\x13\x4e\x06\xf2\xe7\xac\xbc\x93\xc2\x67\x11\x47\x58\x82\x5b\x88\x18\xc2\x94\x53\xed\x36\xd6\x5c\x81\x9e\x12\xbb\xe0\xb9\xbc\x91\x53\x32\xc4\x4b\xb2\x6e\x6a\x64\x1f\xa6\x2f\x97\x87\x83\x41\x8a\x36\x65\x34\xc7\x7e\x86\x69\x3a\xf3\xec\x4d\x5c\xf0\xa5\x79\x80\xdc\x25\x75\x99\xb8\xc3\xd9\x28\x9e\x6b\x9d\xdd\x86\x50\xa7\x9d\xc5\x68\x45\x64\xdf\xc8\x1d\x9f\xde\xcd\x34\xff\x59\x71\x39\xac\xe4\x2c\x98\x8e\x1c\x84\x4f\x86\x07\xe7\xba\xe2\x28\x4a\x49\x04\xe5\x7e\x4d\xe0\xf2\xdf\x3b\x23\x10\xed\xb3\x21\x89\x50\xd8\x4c\x0b\x1f\xb7\x89\xc7\xfa\x5a\x34\x19\x82\x20\x69\x72\xa1\x19\x59\x3b\x47\x94\xac\xdf\x4f\xa6\x73\x2b\xb8\xa0\x87\x83\xc1\x1c\x1d\xb2\x45\x34\x27\xc4\xe6\x0b\x5b\x4f\x15\x24\xef\xa4\x3e\xd3\x32\xb1\x9e\x77\xe6\x03\xe3\x98\xde\x4b\xd0\x8a\x3b\xef\x23\x6f\x09\x32\xb7\x04\x0d\x05\xec\x14\xaf\x71\xa6\x03\x07\xfa\x57\x9e\xdf\xa6\x52\x86\xe2\xdb\xed\x9e\xe9\x60\x77\xa9\x75\x78\x36\x55\xa7\x8c\x56\x98\x1b\x3d\xdf\x80\x34\xb0\xbb\xfd\x4e\x22\xb5\xb7\xe8\xb6\x8e\xd4\xde\x21\xe5\xc7\xbd\x91\x18\xad\xa6\x77\x33\x72\x3b\xbd\x73\xf4\xd5\xb2\xdf\xdf\x5b\x40\x53\x76\xb1\xff\x9c\x23\xea\x8e\x67\x00\xa7\x1b\x3b\x0c\x4e\x2e\xc4\x70\x70\x8e\x9c\xfe\x8c\xfe\x7c\x3b\xd7\x78\x84\xe1\x2e\xab\x3c\xcf\xdb\xef\x8c\xe7\x6d\xf0\xa7\xfd\x6d\x71\x96\xbd\x88\xc8\x1e\xb6\x72\xa5\x85\x46\x6f\x12\xe5\xc3\xcb\x31\xe0\xb7\xdb\xa8\x35\x83\xb2\x28\xab\xfe\x09\x87\xdc\x49\x99\xac\xc8\x7f\xc9\x87\x2c\x23\x6f\xd4\xbf\x92\x62\xa5\xe4\x5c\xa2\x66\xc9\x9c\x92\xdf\x31\x38\x0c\x58\x92\x53\xfd\x60\x72\x7c\x00\xeb\x63\x60\xbb\x90\x77\x2a\x08\x34\xe5\xe4\x11\x9e\xf2\x22\xa5\x6c\xf1\x40\x4e\x30\xe8\x26\x2e\xd8\xcd\x9a\x53\x52\x60\x1a\x17\x39\x59\x50\xf9\xbf\x58\x90\x15\x75\x06\xcc\xe4\x47\x6c\x04\x01\xe4\x27\xe5\xdb\x88\xbc\xc6\x34\x5e\xb0\x4c\x50\x4e\xbe\x83\xee\x3e\xe4\x92\x78\x85\xd5\xb9\xd4\x51\x87\x63\x6b\xb3\x1f\xcf\x93\x52\xb4\xfb\xf5\xce\xc9\xe6\x96\x7d\x61\x61\xf0\x86\x42\x83\xc9\x22\xd7\xdd\x51\x6f\x8b\x05\xb6\xac\x72\xe2\x6f\x0a\xdc\x36\xf7\xfa\xc4\xd3\x0a\x7b\x92\x57\x67\xc6\x6c\xe3\xbd\xfa\x61\x8c\x2e\x1f\x56\x54\xeb\xaa\x9b\x8a\x54\x54\xd4\x6b\xda\x4d\x6c\xac\x64\x2b\x8d\xe1\xda\xd3\x85\xc4\x0d\xe8\xac\xc3\xc0\x1b\x30\x04\x0b\x9e\xce\x10\xde\x57\xe1\x53\x4c\x08\x11\x01\x08\xbd\x66\x7b\x55\xb8\x58\x2c\x7c\x33\x3c\x5d\x55\xc7\x09\xbb\x55\x4d\xa0\x08\xe5\xaa\xb0\x21\x4b\x98\x0e\x34\x16\x15\x78\xa4\x5d\x1d\xea\x86\x2b\xec\x3b\x5a\xcb\x6d\xec\x1c\xd5\x80\x0e\xde\xc4\x90\xef\x2e\xa9\x16\x6f\x28\x1a\x62\x36\x2d\x66\x28\x02\x17\x66\xf2\x30\xf9\xeb\x6a\xb4\x93\x36\x0c\xd4\xde\x20\x0e\xc0\xde\xa8\x1e\x62\x1a\x66\xfb\x60\x8f\x34\x80\x80\x0d\xf6\x07\x3d\x51\x21\x9a\xf3\x58\xed\x01\x66\xf8\xfc\xd3\x59\xcd\x49\xb9\x24\x34\xe5\x74\x6a\xdd\x68\xc5\xf5\xa1\x78\x95\x3c\x64\x45\x92\x8e\x37\x9f\xe9\xc3\x58\xc4\x57\x37\x6b\x96\xfe\x17\x7d\xc0\x2c\x95\x6f\x2c\xc5\x54\x76\xfc\x54\x65\x4e\xa9\x48\x58\x26\x3f\x70\x5a\xae\x33\x81\xc1\xb5\xd2\xfb\x74\x0c\xe1\xc4\x65\xee\x2c\xb9\xa6\x90\x01\x1e\xb0\x60\xb7\xf4\x42\x24\xb7\xab\xf1\x5b\x49\xdf\xe4\xc5\x7d\x84\x30\x88\x67\xc6\x6c\xda\x73\xc3\xdf\xbf\x67\x62\xb9\x0f\xca\xc2\xbd\xd9\xc4\x29\x68\x9b\x8a\xb4\xcf\x9f\x0a\xf5\xfb\x25\x15\x97\xec\x96\x16\x6b\xa1\x94\x54\xcc\x2a\x50\x32\x3c\xa4\x2f\x2d\xf3\x90\x1a\xc6\xa1\x20\x89\xdc\x04\x9c\x88\x58\x8f\xb5\xc3\x63\x39\x4a\xc2\xe3\xcf\xf4\x61\xc0\x63\x96\x62\x1d\xca\xe0\x07\x3f\x59\x8f\x0d\x73\x65\x06\x06\xbc\x06\xa3\xd6\x0c\x29\xea\x0d\x61\x66\x85\x4f\x42\xfb\xc1\x30\x2d\xa1\x2a\xb1\x21\xf7\x2a\xfc\xd7\x61\xe8\x00\xde\xa8\x32\xb4\xb8\x0b\x00\xbd\x5f\x5f\xef\x59\x19\x12\x99\x95\xa7\x1d\x87\x22\xc9\xf4\x68\x8d\x85\xbd\x69\x52\x25\xb9\xe7\xbe\x0f\x77\xb4\x09\x5c\xa8\x9b\x18\xb0\x61\x0b\x41\x8b\xfd\xbe\x4c\xba\xae\xf5\xc3\x02\x34\x42\xb2\x49\xa8\x94\xa1\xac\x8c\xaf\x00\x39\x9a\xc0\xc1\x34\xbb\x04\x8d\x0f\xfc\x6f\x72\x51\x8d\x65\x9c\x32\xf4\x09\x32\xa3\xf1\x6d\x24\xac\x32\x17\x79\xb5\x11\x84\x10\x0e\x35\x72\x34\x4e\x15\xa9\x85\x05\x79\xb5\x52\x2e\x82\x2a\xf8\x1b\xb7\x78\x57\xe0\x93\x7a\x68\x16\xa6\xc0\x6c\x44\xb5\x72\x13\xb8\x45\x66\x2d\x91\xcc\x05\x7f\xd8\x50\xeb\x6e\x5c\x9e\xe1\xb9\x8e\xbe\x62\x40\x2c\xab\xaa\x88\xcb\xec\xe4\xd5\x26\xdf\x6e\x23\xe5\xd6\xb9\xd9\x55\xd5\x57\x97\xc5\xf4\x5a\x02\x5c\xb5\xb5\x3b\x7b\x79\xbf\xcf\x14\xef\x45\x7d\x67\xf0\x5d\x8d\x4c\xd6\xb4\xd0\xfe\x4f\x3d\x37\xf2\x66\xef\xc8\x89\x45\xea\xbb\x75\xb5\xcf\xf4\x04\x44\x39\x11\x08\x1b\xa5\xb1\xed\xd6\xc5\xe9\x26\xcc\x77\x47\x21\xdf\xfd\x3a\x14\xfe\x0d\x22\x3d\x79\x6a\xc4\x92\xe6\x7a\xf8\x45\x68\x9c\xbf\x02\x03\xc4\xca\x6c\xa8\x4a\x2b\x5a\x04\xae\xe8\xd1\x86\xda\xe5\x96\x9b\xc9\x3c\x47\xd4\xae\x38\xbe\x0b\xbc\x9a\x2f\xea\xbe\x2c\xf5\xc6\x91\xb4\xa7\x29\x43\x04\x36\xc9\x64\x84\x4d\xae\xf5\x75\x39\xe7\xec\xda\x45\xbc\x9b\x48\xc0\x6f\x60\x4c\xbf\x5f\xca\xcb\x2b\x5b\xb0\x2c\xa3\x69\x0f\x53\x34\x36\xfb\xe1\x0e\x9c\x44\xf9\xde\xd7\x9f\xe8\x81\x6a\xf5\x00\xfb\x9d\x31\x15\x2d\xc3\x8a\x6e\xeb\x62\xa9\xb0\x97\x5e\xd8\xb0\x0e\xad\x1d\x8a\x62\x9a\xcc\x88\x90\x7f\x83\xd1\x8c\x70\x78\x38\x98\x91\x1c\x06\x9b\xc0\x4c\xea\x3e\xf9\x83\x70\x4d\xdf\x05\x78\x97\xdf\x28\xb7\xe3\x51\x26\xc4\xe1\x0c\x8d\x60\x0b\x7b\xf3\x34\xee\x29\xc4\x45\x4d\x19\x1e\xfa\x1a\x57\x8e\xe3\x0c\x7c\x3b\x3b\x23\x3a\xae\x8c\x70\x71\x65\xc8\x73\x94\x13\x31\xcd\xe4\x6d\x2c\xa6\xd9\x80\xcf\x70\x3e\xb9\xd1\xee\x03\x13\x34\x2e\xa2\x04\x75\x5a\xd7\x90\x0c\x3d\x4d\xfb\x9b\x06\x55\x86\x13\xd2\x76\xf4\x71\x49\x94\x3a\x7c\x82\xe4\x3e\x96\x97\x77\xee\xc9\x5e\x4b\x15\xcc\x2c\x53\xd7\x3e\x93\x37\xb2\xe3\x97\xa9\xc9\x01\x4c\x84\x10\x31\x59\xc9\x4b\x3c\xc4\x6c\x8e\x8c\xf6\x53\xd9\x9d\x1b\x24\x67\x9e\xe4\x4a\xe1\x52\xa3\xfb\x89\xe8\x96\xc9\x2d\x35\x39\xe3\x1e\x42\xe3\x3d\x39\xbb\x25\xd4\x58\xa0\x71\x32\x49\x23\x81\x19\x1a\x43\x50\xe4\xc9\x42\xbd\x1c\x28\x3e\xcb\x0a\xde\xbc\x05\xbd\x0e\xe3\x4b\x29\x1e\x89\x5d\xc6\x91\xe2\xdf\xee\xd1\xed\xf6\xe0\xff\xe1\xed\xdf\xb6\xdc\xb6\x95\x7e\x51\xfc\x5e\x4f\xd1\xd2\x98\x93\x1f\x11\x41\xb2\xe4\xcc\x7c\x6b\x7e\xec\x46\xeb\xef\x63\xe2\xcc\xf8\x30\x6d\xe7\xe0\xc8\x5a\x1e\x6c\x09\x6a\x31\xa6\x08\x05\x84\xfa\x90\xa6\xc6\xf8\xdf\xed\x8b\xfd\x06\xfb\x6a\x3f\xcb\x7e\x94\xf5\x24\x7b\xa0\x0a\x00\x01\x92\x6a\x27\x6b\xaf\xb1\x7c\xe1\x16\x71\x3e\xa3\xaa\x50\xf5\x2b\xf3\x53\x39\x3a\xa1\xb9\x09\x96\x9b\x34\x2b\xac\x03\x17\x84\x7f\x86\xff\x91\x4d\x08\xd6\xa1\x31\x53\xb1\x17\x8d\x7f\x17\xc4\x7b\x2a\x9d\x08\xc6\x4c\x7c\xd7\x8a\x6a\x54\x27\x7c\xbc\x4f\xb2\x45\xee\x12\xdd\x12\xd7\xa7\x4f\xce\xa0\x43\x33\x9e\xa8\x9e\x5d\xdf\xfa\xb6\xbf\x8c\xf5\x7a\xc9\x69\x4a\x3c\x99\xfe\x31\xb7\x01\x1e\x12\xa0\x55\x22\x79\x12\x98\x12\xa1\x56\x87\xc5\xeb\xe6\xd7\x27\x3c\xde\x3b\x45\xec\x4f\xa0\x23\xf2\xba\x78\x8b\x64\xbb\x31\x94\xfe\x94\x95\x3f\x96\x59\x71\x89\xcc\x26\xd2\xe6\x8c\xb1\x9b\x56\xac\x91\x2f\xd7\xc8\x46\xfa\xca\xb4\xa9\x8a\x4c\xc5\xe3\xf1\xd8\x11\x76\xe4\x80\x61\xfe\x6b\x84\x59\xfe\x55\x35\xc1\x69\x31\xbb\xc1\xb6\x43\xf2\x6d\x9a\x15\x59\x71\xe9\x85\xc0\x61\xe4\x81\xf6\xda\x9e\x70\xb0\x62\x43\x3d\xe2\x83\xf7\x15\xb0\x9a\x5e\x25\x56\x2f\xda\x0c\x0d\x78\x44\xac\xf5\xea\xdc\xc1\x63\x19\x4e\x53\x49\xba\xdc\x3c\x2b\x94\xbc\x8d\xf9\xbc\x58\xd0\x02\x5e\x22\xac\x24\x8f\x2f\x3f\x3f\xdf\xe7\x70\xa4\x80\x69\x25\x39\x74\x05\xea\x1b\x6d\xc2\x1c\xc0\x9a\xed\x61\x00\xef\x64\x17\x9a\x35\xcc\x36\x4d\xe4\xa4\x31\x0a\x40\x2e\x7e\x2a\x81\x9d\x7b\x99\xde\x5e\xf0\xf7\x1b\x5e\xa4\x80\x78\xd9\xde\x46\x1d\xcb\xc3\x99\x7e\xb7\xe7\xd4\x3f\x7b\xfa\x93\x1e\x9e\x2f\xdc\xbf\x27\x73\x72\x97\xda\x13\x06\x2e\x64\xa0\xa4\x3c\xcc\x4b\x1c\x42\xd2\x3c\xf4\xcd\xa6\x46\x1e\xf4\x91\x72\xb7\x0d\x55\xf5\x6d\x43\x65\x7d\xd3\x77\xf0\x62\x19\x69\x16\x32\xd5\xb9\xfd\x5c\x47\x16\xb2\x33\xd1\xe4\xd7\x27\x45\xbc\x27\x3d\x38\xad\xd2\xd9\x2e\xd6\x9b\x36\x89\x97\x71\x49\xb9\x03\x44\xfa\x74\x9d\x59\x7e\xfa\x91\x8a\x4b\x18\x53\x1f\x30\x3e\x8c\xc7\x32\x15\x3b\x57\x08\x57\xa5\xa9\x85\xa3\x69\x7d\x58\x2d\x48\xe9\xaf\x2d\x9c\x3c\x83\xb6\xd5\x49\x3a\xcf\xfc\x01\xe8\x9a\xfa\xc4\x25\x78\x0b\x23\xea\x8d\xd1\xc1\x1f\xfc\xe0\xa6\x09\x76\x44\x2d\x11\xcf\x6a\xd2\xa0\xe3\xd4\x88\x22\x38\xcd\x67\x3b\x30\xc4\xb0\xca\x7f\x7e\xc5\xb6\x12\x7a\x74\xa7\x10\x6c\x54\x2b\xc7\x5d\x63\x97\x8c\x46\xc1\x0e\x98\xab\x05\x93\x87\x70\x64\xcd\xe0\x69\xaa\xc4\xb2\xf6\x46\xfd\xb7\x63\xb9\x74\xc5\x3d\x34\x71\x0d\x4c\x6a\xc3\x4e\x7c\xb1\x3d\x78\xcf\xdd\xc1\x80\x25\x3e\x29\x86\x82\x1b\x79\x48\x6c\x5c\x4d\x72\x48\x9e\x96\xa2\x48\x24\x9a\xc2\x5e\x33\x90\x42\x7d\x1a\x0c\x6b\x7e\x72\x38\x18\x0d\xe8\x33\x36\x31\x46\xa1\x37\x6d\x90\x22\xb3\xe0\x57\xec\x99\x75\xd2\x80\xa4\xb7\xb5\x06\xfd\xd4\x36\x29\xb3\xe7\x48\x10\xe6\x11\x27\x6c\xbe\xa0\xed\x8b\x0e\x8c\x59\xcd\x45\x47\xe8\x1e\x57\x68\xd7\x2e\xe5\x51\x14\xb8\x22\xef\x90\x9e\x7c\x10\x7b\x14\x9c\xec\x74\xaf\x52\x83\x6b\xc5\xe5\x49\x0d\x6f\x53\x82\xe5\xf1\x3a\x93\xa5\x3a\xb1\x77\xc9\x89\x12\x10\x6a\xd5\xb3\xbd\xc1\x18\x90\x83\x01\x8e\xf4\x95\x2a\x6f\x66\x5d\xfe\x06\xfb\x53\x74\xee\xae\xf7\xec\x9d\x34\xaa\x35\x74\x65\x99\x97\x20\xd4\xb2\x34\x96\xbe\x2a\xc8\xdd\x0e\x31\x80\x0f\xce\x28\xf8\x4b\xbd\x7d\x9e\x66\x39\x5f\xe9\xc6\xbb\x06\x9f\xfc\x87\x39\x98\xfe\x23\x39\x79\x93\xf3\xb4\xe4\x27\x7b\x38\x31\xf8\xc9\x7f\x14\xfc\xfa\x3f\x4e\xc4\x4e\x5f\x63\x42\x52\x38\x45\x0c\x1a\x82\xdf\x61\x4b\x93\x5d\x70\x20\xd3\xf8\x4a\x0f\x59\x2d\x84\x1a\xc3\x80\x90\x43\xcd\x92\x00\x87\xb8\x56\x5c\xa2\x68\x21\x20\x87\x34\xa1\x6d\xf9\x7c\xab\x61\xca\xfd\xd5\x54\x0f\x40\xcb\x41\x05\xe8\x5b\xd9\x2d\xd7\x72\x65\xe1\xa9\x1f\x78\x8d\xb7\x2f\x95\x6d\xe2\xd6\x9c\x70\x16\x3b\x57\x76\xa1\x32\x12\x76\xae\x08\xbd\x27\xd6\xaa\x1f\x1e\xec\x7b\xa6\xf1\xc9\x11\xe0\xcd\xbf\x6e\xda\x1e\x82\x7b\x64\x5e\xeb\x37\xd5\xc4\x46\x41\x8c\xdf\xed\x02\xf1\xc2\xe7\x62\xc1\xf8\x5c\xd4\xaf\x55\x29\x9b\x9c\xa6\x35\x4b\x90\x0e\x87\xe4\x4e\xce\xd5\x3c\x5d\x2c\x58\x06\x5c\x4e\xed\xac\x38\xc4\x8e\xf6\x9d\x35\x77\x89\xc1\x47\xd3\x4e\x01\x38\xf7\x5e\x49\xbd\x22\xdf\xfb\xd3\x73\xa7\x7b\x9d\x00\xb6\x3a\x3b\x0f\x19\xfe\x3a\xc7\x4b\x7f\x9a\x7c\x53\xfc\x3f\xe9\x3b\x61\x88\x2e\x7e\xa7\x66\x80\x24\x20\xc5\x18\x5b\xd9\x5a\x4a\x2f\x16\xc6\x5c\xfc\xce\xf9\xe5\xd6\x7c\x5e\xeb\x7e\x4b\x8d\x2b\xb4\x40\x74\x73\x43\x6a\x37\x66\x48\x8f\xa4\x3e\x3d\xb2\xf4\xef\xf6\x9b\xb8\xc6\x8f\xd7\x77\xfb\x92\xd0\xd2\xf2\x41\xfd\x69\x2f\x8b\xa2\xbe\x55\x40\x4e\xd9\xfb\x38\x03\x62\xbb\xd0\xf3\x99\x1e\x6a\x13\x22\xbf\x94\x62\x2e\x17\x0d\x20\x7d\x7d\xe7\xe5\xd4\x01\x4e\x02\x23\xb5\x8a\x73\x7d\x0b\xf6\xeb\xaf\x77\x71\x4d\x02\x93\x24\x74\x74\xa6\x08\x24\x79\x5d\x27\xd1\x87\x4c\x82\x85\x1c\x68\x36\x7b\x13\xe7\xb4\x30\x5b\x90\x24\x8f\xfc\xaf\x43\xfd\xce\xf7\xe9\x13\x00\x09\x7c\xfa\xc4\xb8\x2f\x12\x7b\x14\xca\x7a\xcc\x7b\x60\x5c\xd4\x1a\xba\x19\x9e\x62\x99\x63\x34\x78\x9d\xfb\x4d\x9d\xdb\x44\xde\x8c\x61\xe9\xd4\x88\xd6\x75\x05\x1e\x0f\xf7\x24\x38\x1a\x30\x0f\x9c\x07\xb5\xa4\xff\x86\xde\xa0\xac\x3f\xa7\x10\xdf\xf0\x06\x6b\xb2\x36\x7d\xc2\xcd\x02\x6b\x2a\x50\x34\xb6\xb4\x4a\x62\x1e\x1a\x1d\xc6\x9a\x77\xea\x5a\x7d\x50\xb0\xa9\x30\x42\x7a\x73\x52\x5e\x67\x6a\x73\x92\x16\x27\xa9\xae\x61\x40\x74\x23\xe9\x0d\x3e\x9a\x1c\xf3\x4f\x5b\x4b\x22\xf5\x42\x6e\x36\x91\xb8\x25\x27\x9b\xec\xb4\x33\x95\x48\x97\xfc\x0b\xed\x20\x54\x06\x5e\xee\x3b\xd9\x12\xee\xfb\x6e\xdf\x1a\xe8\x01\x7b\x0a\xce\x0b\x67\x25\xa4\x49\x1c\x23\x2d\xe5\xec\x7c\x07\xbf\x48\x7d\x64\xe8\xfe\x1a\xde\x2d\x87\xdf\xc0\x08\x7e\xb9\xf7\x5e\x47\x41\x0e\x4b\x6f\x3c\x30\x0b\x2b\x60\x67\xd7\x41\xb0\x5e\x36\xce\x03\xde\x67\x87\x6b\xd1\xc1\xd4\xfa\xa0\x9b\xfd\x29\xbc\xd5\xb9\xf5\xf5\xf6\xcb\x8b\xe4\x73\x7c\x03\x57\x90\x5b\x1e\x37\x5f\x5e\x1b\xe6\x51\xec\x4f\x2c\x11\xd7\x92\xdf\x1a\x2b\x1d\x10\x42\x60\xa9\x7f\xf6\x07\xc3\x23\x6c\xd9\x27\xd3\xfb\xa7\xf7\xf5\x1e\xe8\xf1\x86\x89\xd7\xa4\x86\x43\x33\x67\xb7\xc7\x4d\x07\xd4\x9c\x53\x9b\xbb\x87\x23\xae\x01\x3f\x1a\x68\x09\x99\xd3\x85\x75\x06\x21\x86\x1b\x68\x72\xe4\x59\x70\xe9\xd5\x5a\xd9\x6e\x89\xa6\x67\x19\x5c\x80\xe0\x43\x15\xf4\x68\xad\xd2\x4b\xcd\xe9\x48\x3d\xbf\xf7\xb2\xd0\xf5\x68\xbf\x6a\x8e\xb6\x07\x52\xd9\x84\x69\xe6\xee\x82\xd1\xd4\xb8\x2f\x15\xb6\xe4\x45\xf7\x6b\x9e\x5d\x0f\x9b\xb4\xdc\x1c\x5b\x09\xa6\xa8\x00\xd7\xe6\x69\x63\xc1\x1d\x08\x31\x12\x9b\x17\x6e\xa2\x9f\xfe\xb5\x65\xfe\xc3\xff\x86\xee\x7a\x8f\xc1\x7f\xa5\xb7\x2f\xa0\xb7\x60\x3c\xe2\x77\xd8\x35\xfd\x39\x02\x3e\xe8\x0a\x9b\x0f\x59\x18\xca\x0f\x84\x7a\x37\xcd\x1f\xb5\x18\xf7\xce\x74\x33\xb1\x6f\x23\xb0\x6d\xad\xeb\x50\xf7\x92\x1e\x08\xb4\x6e\x62\xb8\x8e\x75\xe9\xee\x2c\x03\x85\x55\x23\xd4\x3a\x80\xe0\xe4\xf0\xe2\x4b\x7b\xf2\xc7\x2f\xed\x49\x6f\xb2\x26\x14\x6c\xfc\xdc\x1e\x0c\xf0\xf7\x8e\xca\xb5\x44\x4b\xae\x25\x8e\xc9\xb5\xac\x81\xec\xa7\x6d\xba\x7b\x5e\xb0\xac\x73\x4f\x77\xb2\xcc\x7a\x25\x80\x3c\xb8\xb9\xd9\xbc\xf2\xf4\xc6\x23\x06\x4d\xd0\x51\x02\x5d\x8c\x70\x06\x49\x3c\x29\xc6\xfd\xac\x78\x3d\xa7\x8f\xe3\xc0\x35\x5e\xd7\x83\xfa\xec\xd8\xa9\xbc\x4d\x77\x27\xfc\x66\x07\xb0\x6f\x69\xc0\x0a\xa6\x27\x25\x5f\x8a\x62\xe5\x38\xc1\x01\xd1\xd4\x96\xbf\x3b\xe4\x91\xdd\xd1\xbe\xab\x3b\xb7\x84\xae\xfb\xfe\x2b\xc0\xdf\x09\x3f\xe2\xbe\xd7\x95\x76\x6d\x84\xef\xee\xd9\xc3\x75\xaa\x9f\x5a\xa9\x10\x5b\x55\x27\xd2\xeb\xe9\x77\x76\x77\x30\x4b\xf4\x67\xb7\x44\x7f\xbc\xfb\x0b\xc2\xc5\xd0\xe1\x9d\x7d\x92\xea\x90\x38\x1a\x65\x8d\x98\xb3\x73\xde\x67\xec\x77\xf2\xe7\x45\x90\x47\x16\xe2\x5d\x6b\x91\xf4\xac\xaa\x99\x13\x2b\x36\x17\x66\x6d\x1e\x29\x6a\x97\xae\xe1\xba\x4c\x61\x5d\x0a\xeb\x88\xa6\x5e\xe4\x16\x23\xf3\xc8\x92\x95\x0e\x3f\xa4\x6e\xd1\xef\xfe\xb1\xfb\xb7\xff\x0f\xeb\x16\x07\xcf\x2d\xdd\xff\xbd\x0b\xd7\x54\xfe\xe7\xd7\xee\xcf\x9d\x6b\x57\x4f\xce\xb7\xf4\x03\x9b\xd4\x9a\x15\xff\xc2\xf5\xb9\xe7\xf3\x0f\x0b\xc6\xa9\xfe\x3b\x9c\x2e\x98\xa2\x0f\x19\x63\xf1\x87\x21\x7b\x48\xa2\x48\xf2\x18\x33\xff\x9b\x0d\xf6\x05\xea\x30\xad\xea\x41\xbb\xce\x8a\x95\xb8\x9e\xe1\x1f\x7b\xb8\x7f\xcf\xfe\x0d\x98\x78\xbf\xb0\xef\xc7\x2f\xf7\x0a\x0c\x9c\x5f\x5f\x94\x5c\x5e\x71\x59\x55\xdf\x8f\x7f\xe6\x17\xff\xca\x54\x33\x86\xfe\xea\xd7\xe0\x58\xc6\x92\xe7\xeb\x28\xea\xaa\xdb\xf8\x3c\x88\xa2\xc1\xdc\x88\x4f\x4c\xc8\x62\xc0\x18\xbb\x3b\x8c\xad\x73\x3b\x64\x8d\x4d\x24\xa1\x9c\x77\x76\xe5\xc7\xac\x50\xff\x7c\x92\xa7\xdb\x1d\x5f\xc1\x94\x74\xd7\x9a\x6d\x77\x42\xaa\x77\x4b\x99\xed\x54\xd9\x9d\xe4\x25\x22\xd3\x3d\xd9\xa4\x45\xc1\x3d\x60\x34\xcf\x1d\x8b\xbe\x34\xbd\x3b\x74\xc9\xe9\x14\x87\x59\x72\x5a\x70\x9a\x71\x2a\x38\x4d\x39\x2d\x39\xcd\xf5\xd4\x78\x37\xc8\x94\x7f\xed\xc1\x44\x2f\xb9\xc7\xcc\xa3\x1a\xc9\x87\x53\xae\xe7\xee\x2e\x9e\xe8\x39\xe5\x0b\x12\xeb\x3f\xc3\xe9\x82\xe0\xb7\x95\x0b\x9a\x50\xab\x10\xff\x81\x4d\x0e\xbf\xce\xe2\x92\x33\x33\x52\xe3\x82\xdf\xa8\xf7\xd9\xf2\x33\xcd\xeb\xb0\x2b\x2e\xcb\x4c\x14\xe5\xb8\x10\x2b\x3e\xde\xc2\x86\x7e\xf0\xdf\xe3\x59\x12\x7f\x5c\x0d\xc9\xc7\x31\x99\x05\xbf\x3f\x7e\x55\xe9\xdf\x7f\x7b\x40\x68\xb8\xdc\x73\xf0\x34\x31\xd1\x33\x95\xf3\xf9\x74\x11\x45\x83\xa9\xfd\x7a\x08\x4e\x07\x38\x2b\xb9\x7a\xb1\x35\x3a\xe9\x84\x4a\xce\x70\xd4\xe2\x25\x27\x24\xf9\x65\x16\x67\x9c\x4d\xa8\xc0\xb1\xf9\x45\x87\xd2\x94\xb3\x95\x58\xc2\x46\x34\xe8\x7c\xef\xf9\x8d\x7a\x25\x56\x3c\x1e\x0c\x08\x15\x7c\x2c\x70\xb5\xc5\x29\xa7\x77\xcb\x4d\x2a\xd3\xa5\xe2\xf2\x69\xaa\x52\x54\xbd\x33\x95\xa4\x1c\x61\xdf\x33\xce\x86\xc3\x8c\xff\xfd\x21\x49\x38\x9f\xc5\x71\x81\x95\x85\x13\x4c\xc6\x7a\x45\x4c\xc7\xa2\xb0\x90\x84\x4b\x6e\x0b\x2a\x38\x44\x3e\x1c\xef\x44\xa9\x4c\xb6\x78\x42\x48\x22\xad\xc8\x96\x31\xf6\xef\x6e\xff\x1a\x33\x5f\xee\x28\x6f\xcd\xb1\xfe\xdc\x06\x0e\x3c\x21\xdd\x80\x80\xb5\xc5\xef\xfb\x4c\xf2\x78\x70\xc5\xa5\xba\x19\xb4\x7d\x28\xc5\xdf\x32\x3e\x96\xfb\xe2\x75\xf1\x83\x10\xbb\xaa\x32\x1f\xc6\x4e\x8f\xf8\xf5\x7d\xab\x87\xf3\x90\x80\x23\xa0\x26\xae\x0d\x04\x1e\x62\x02\xb1\x56\x7b\x80\xfd\x8b\x1a\xf1\x23\xe3\xc1\xd2\xe6\x74\x82\x6a\x5d\x2b\xce\xbe\xeb\x19\x5d\xc0\x15\x2a\x01\x6d\x38\x83\x33\x88\x9d\x3b\xe5\x16\x30\x5c\x76\xda\x14\x7a\x71\x67\x63\x51\x34\x1e\x1c\x6b\x65\x07\x93\x60\xbd\x6e\xa4\x00\x94\x15\x6c\xd8\x86\xd3\xe3\x27\x57\x87\x8c\x0a\x23\xc6\x9f\x3e\xbd\x79\xfb\xfa\xe5\x8b\x77\xcf\x3e\xbd\x78\xf5\xee\xfd\xdb\x1f\x5f\x3e\x7b\xf5\xfe\xd1\xfb\x17\xaf\x5f\x7d\xfa\x84\x37\xec\x96\xb3\x2f\x27\xad\x35\x80\xf9\x49\x56\x9c\x88\xd8\xd3\x1b\x1b\x00\x10\xc1\x96\x93\x6d\xcb\xf1\xd3\x95\xde\x1d\x6b\x1e\x5f\x71\xba\xe5\xf3\x2b\xbe\xc0\xc3\xe1\x92\xb3\xbb\xb4\x4c\x77\xc9\xbf\xa8\x1e\xc6\x64\xc5\xe9\x1b\xcb\x09\x53\x4f\x49\x2f\x29\x68\x9a\xe7\xc9\x13\x5a\xf3\xbf\xc9\x5b\xaa\xd9\xd8\xe4\x37\xaa\x99\x83\xe4\x15\xf5\x78\x84\xe4\x07\x6a\xd4\x45\x93\xe7\x14\x94\x45\x93\x3f\xa8\x53\x15\x4d\x5e\x52\xa7\x28\x9a\x08\x2a\x8a\x64\xcd\xa9\x58\xaf\x93\x9d\x5e\xe5\x48\xd5\x7f\x67\x09\xfa\x9f\xe8\x36\xdd\x25\x8f\x29\x0c\x7d\xb2\xe1\x14\xaf\xaf\xe4\x6f\xbe\x4e\xee\x25\x07\x23\x9e\x78\xc0\xb7\x17\xdc\x48\xf6\x91\x8d\x08\xd4\x70\x91\x58\x3f\xe1\xec\x99\x4e\x36\xfe\xf4\x29\x17\xe9\x0a\xd0\x1b\xcd\x3a\xff\xff\x5d\xe6\xd9\x76\xcb\xe5\x03\xb9\x2f\x54\xb6\xe5\x03\xd2\x33\x49\x25\xbf\xcc\x4a\xbd\xb1\x79\xfd\x62\x3e\x6e\x07\x52\x93\x7c\x5f\x74\x66\xe8\x0a\xb6\x59\xd2\xb2\x14\x4b\x7d\x30\x41\x94\xb8\x4d\x2f\x72\x84\x09\x66\x7a\xdd\x1d\x89\xb3\x99\xb3\xd2\xc4\x68\x56\x81\x8f\xfd\xcf\x56\x12\xbe\xf2\x53\xf0\x95\xd7\x00\x2e\x95\x57\x43\x90\xe1\x9e\x58\x5b\x00\x3e\x2b\x7a\x49\xde\xcb\x74\xf9\x19\x5b\x74\x34\xee\x70\x20\xb1\x8f\x68\x84\x5a\xb5\xad\x67\x4c\x54\xb2\xee\xd8\x5c\x5b\x50\x77\x26\xf8\x67\x6c\xd2\x31\x1e\x1b\xf5\x89\xe0\x59\xd8\x65\xc2\xbd\x1b\x45\xf8\x77\x9c\x6e\x57\x56\x1e\x87\x21\xf1\x7c\x41\x39\x39\x05\x02\xb0\xaa\x70\x53\x92\xf1\x13\xb1\xe2\x2f\x33\x04\xc1\x87\x03\xcb\xf7\xf6\x14\x2c\x34\x3c\x58\x8b\xf4\x2a\xbb\x4c\x95\x90\xe3\x7d\xc9\xe5\xa3\x4b\x5e\x28\xaa\xbc\xd0\x5d\x9e\xaa\xb5\x90\x5b\x2a\xd9\x83\x4b\xbe\xfc\x2c\x3e\x3e\xf8\xb8\x7a\x90\xa1\xef\x11\xc0\x95\x79\xf0\xf2\xdd\x8b\x67\x27\x1f\x57\x0f\x5c\x58\xc6\x1e\xbc\x97\xd9\x8a\x17\xea\xe3\x83\x78\x96\xcc\xff\xdb\xe8\xbf\x16\xd5\xc7\xd5\xdd\x43\x7a\x20\x1f\xc7\xe3\xaf\xe4\x15\xde\x95\x0f\xc6\xfc\x86\x2f\x75\x0e\xb0\xd4\xc8\x68\xca\x44\x14\xc5\xc5\xcc\xdd\x66\xf6\xc7\x4b\xb1\xe2\x55\xf5\x9f\x09\xe8\xdd\xd3\x92\x3d\x40\x62\xea\xe3\x83\xba\xd2\x9c\x95\x51\xf4\xe0\xdf\x4a\xb7\x6f\xf8\x71\xfc\x71\x35\xac\xe3\xf6\xec\xc1\x93\x8d\x14\x5b\xee\x67\x58\xb2\x07\xaf\x77\x5c\xa6\x7e\xd8\x8a\x3d\x78\xb4\xdb\xe5\xfc\xe4\x89\xd8\xee\xf6\x8a\x4b\x13\x55\x8f\xc7\x15\x2f\x56\x42\x12\xba\x61\x0f\x5e\xa6\xcb\x93\xd7\xef\x4e\x7e\x39\x99\x7e\x5c\x7d\x7c\x1a\xcf\xff\x89\xdd\xfc\xb8\x22\x1f\x9f\xd6\x45\xae\xd9\x83\x37\x9b\xb4\x50\x62\xfb\xfd\xbb\x3a\x74\x67\x2a\xc2\x7e\xb8\xf0\x28\x7a\xf0\x52\x5c\x64\x39\xff\xf8\xe0\xe3\xb5\xd7\x81\x2d\xdb\x55\xd5\x83\x47\xc5\x4a\x8a\x6c\x55\x5d\xf3\x8b\xd7\xef\xaa\xc7\x79\xba\xfc\xfc\x98\x4b\x79\x5b\x41\x3f\x4e\x5e\x66\x45\x66\x7f\x8a\x8b\xac\x7a\xf1\x0c\xcb\xf2\x66\xeb\x0a\xca\x79\x99\x2e\x4d\xd1\x8a\xd0\x4b\xf6\xe0\xe3\xc5\x13\xf9\xfa\xdd\xc7\x8b\xba\xbe\x0b\xf6\xe0\x3a\x2b\x6c\x46\x45\xe8\x2d\x5b\x82\xd7\x6c\xa4\x7c\x7e\x42\x72\xe8\xe3\x83\xf8\xe3\xea\x2b\x3d\xd6\x5f\x91\x07\xa4\x77\x1b\x45\xf1\x2d\x7b\xb5\xd7\x1b\x2d\xbe\xd5\x33\x45\xe8\x6d\x14\xdd\x9e\xb3\xe9\x37\x80\xbf\xde\x9f\x82\x8e\x17\x5e\x8c\x9f\xd8\x55\x14\xc5\x79\x55\x2d\xf5\x94\x83\xb0\xe7\xb6\xaa\x6e\xcf\xa6\x0f\xc7\xd3\x29\x21\xf4\x9a\xc9\xaa\x12\x51\x94\x9e\xb3\xff\xa2\xcf\x74\xde\x1b\x00\x1d\x68\x3c\x74\x01\xe4\x4c\xf3\x81\xf4\x75\xed\xde\x87\x5f\x9b\x94\x28\xba\x10\x3b\x9d\xb9\x64\x8a\xa9\xd9\x33\x11\x2b\x92\xdc\x1d\xe8\x33\x11\xff\x22\x91\xd3\xa2\x2f\x62\x03\x5e\x2f\x99\x42\x53\xe4\x5e\xcb\x1f\x37\x0a\x31\x75\xd1\x97\x99\x66\xf1\xc0\x61\x93\x71\xd4\x32\xce\xb3\x82\xbf\xe3\xbb\x14\xde\x39\x89\xb3\x4c\x5c\x32\x8b\x45\x08\x4d\x1a\x67\xc5\x6e\xaf\xde\xa9\xdb\x9c\x97\x73\xe5\x7d\x2d\x9c\x76\x3d\x66\xcc\xca\x5d\x9e\xde\x42\xa6\x77\xc6\x02\xb8\x97\x8d\xaf\x65\xba\xdb\x71\xe9\xef\x76\x78\x48\x78\x6b\x72\x3f\x31\x7f\xb1\x39\x3f\xeb\xd4\xc0\x38\xc7\x7e\xa1\xae\x14\xe0\xc6\xc1\xf7\x3c\x1b\x9c\xd4\x45\x8e\x74\xfc\x40\x17\x92\xee\x95\x58\x8b\xe5\xbe\x8c\xa2\xfe\x36\x8a\x32\x6c\xef\x18\x82\x62\x42\x7f\x8c\x6b\x85\x34\x63\x8b\x7a\xf7\x99\xdf\xbe\x4c\x77\x65\x32\x5f\x50\x71\xc5\x65\x9e\xde\xc2\x6f\x3d\x52\xdf\xf2\x22\x99\x40\xe8\xb5\xcc\x14\x4f\xfa\x53\xba\xe2\x79\xaa\xef\x81\xc7\xf9\x1e\x8d\x5d\x74\x20\x14\xcf\x57\xfa\x67\xb9\xdf\xed\x24\x2f\xcb\x67\xab\x4c\x95\x3a\x60\x97\x96\x8a\xbf\x28\x96\x62\x9b\x15\x97\x3a\x60\xb9\x57\xfe\x67\xc9\x73\xbe\x04\x5c\x00\x7e\x03\x85\xad\x64\x7a\x79\xe9\x7d\x6f\xb2\xcb\x4d\x9e\x5d\x6e\x54\xa2\x87\x76\x29\xe8\x67\x7e\xfb\x8e\xff\x0e\x4a\xeb\xb4\xdc\xf1\x65\x96\xe6\x4f\x36\xa9\x2c\x51\x8d\xdd\x98\x85\x81\xca\x9d\x25\x6e\xf6\x40\xdb\x44\x51\x7a\x36\x9d\x86\x4a\xee\xde\x91\x9b\xbb\xd1\xc6\x31\x93\x06\xfa\x87\x1c\x08\x7d\x38\x09\x2f\x15\xfb\x62\x6a\x72\xf4\xbe\xcd\x62\x35\x2e\x97\x52\xe4\x39\x97\x74\xb0\x15\x7a\x38\xc4\x75\x31\xa0\xff\xd2\x14\xe6\x5e\x2f\xaf\x46\x9a\xd5\x45\xbe\xcc\xb3\xe5\xe7\x01\x35\x0d\x9b\x41\xd2\xc0\xa7\x3a\x20\xd3\xa3\xbd\x82\x73\x0b\x22\x9d\xeb\x29\x19\x45\xfd\x15\x7e\x46\x51\xbf\x94\xb1\x6b\x0f\xa4\x7f\x9c\xd9\x0d\x52\x30\x3e\x5e\x67\xc5\xea\x67\x21\x57\x8f\x54\x2c\x49\xef\x31\xd7\x89\xc5\x92\x16\xe3\xb4\x58\x6e\x84\xa4\xc5\x78\xc3\xd3\x15\x39\x1c\x0e\xc4\x53\x28\x50\xe4\xce\xd4\x5f\x55\x50\xde\x81\xf4\xae\xab\xaa\xd1\x15\x83\xea\xb1\xe5\xc5\x7e\x10\x76\xe0\x33\x36\xef\x60\x10\x92\x24\x2d\xd8\x1d\x2f\x56\xc9\xc4\xb3\xc7\xc8\x34\xfb\x60\x6d\x0b\xc5\x7e\xb9\x81\x3d\x7b\x64\x92\x82\x84\x28\x05\x22\x54\x73\x9c\x34\x2e\x58\x10\x49\xc6\xbc\x58\xb1\x21\x48\xc9\x35\x7f\x76\x08\x2d\x36\x3c\xc9\xb5\x1a\xe7\x7c\xad\x42\xc7\xac\xd2\x84\x8e\x38\xfc\xa1\xba\x70\x25\x76\x23\xae\xff\x77\xaf\x58\x5f\xc9\x61\xf1\x55\x71\xfe\x8f\xc9\xe4\xd0\x18\x12\xa5\x9b\x50\xaa\x54\x2a\x7f\x44\x32\x6f\x4a\xb3\xd0\x27\x2b\xc4\x4c\xfb\x4c\x57\xb0\x5f\x6e\x78\xd9\x69\x70\xa8\xea\xf8\xda\xc7\xd8\x89\x1a\xcb\x74\x95\xed\xcb\x5f\xce\xd8\x14\x1c\xfc\xc1\xd7\x87\x33\x36\x3d\xc4\x19\x21\x77\xcb\x9c\xa7\xd2\x8e\xa6\xb4\xe8\xe8\x6e\x68\x7a\xe1\xa0\xde\x41\xb3\x13\x41\x01\x34\x08\xb6\xb0\xe4\x57\x89\x18\x15\x7a\x44\xcf\xd8\xd7\x93\xc9\xac\xc0\xbd\x46\xa7\x8c\x65\x8d\x06\x83\x3f\x41\xaf\x3c\x18\xbf\x3a\xd5\x7c\xb2\x18\xef\xd2\x4b\xfe\x0b\x0d\x53\x29\xb1\x6b\x27\xfa\x00\xc0\xc8\xcd\x9d\x03\x89\x74\xe3\xfc\xa1\x6d\xaf\xa1\xb0\x7c\xe8\x0c\x83\xdd\xdc\x5d\x20\x2f\x56\x7e\x79\xb5\x12\xa3\x5f\x4c\x0f\xbd\x48\xe8\xcd\xa6\xa8\x24\x56\xbe\x59\x40\x27\xa3\xa8\x5f\x60\x3d\x51\x64\xc7\x76\x54\x8c\x61\x38\xcf\xbe\x9e\x4c\x9c\x97\x1c\x30\x06\x11\x72\x55\xea\x63\x2b\x6c\x27\x1d\xe8\x7e\x0f\x48\x4f\xb0\x7e\x31\xd6\x03\x5f\x55\x65\x5c\x50\xfc\x8d\xaf\x8c\xbf\xf1\x38\xa5\x29\x49\x4c\x82\x56\x2a\x93\x34\xd8\xf3\x29\x49\x4c\xd6\x35\x8f\x53\xb8\x6b\xe8\x84\xd0\x1f\xec\x39\xe0\x42\x87\x53\x3a\x21\x84\x00\xc2\x9c\x7a\x87\x67\xb3\x28\x62\x61\xcf\x09\x81\xe7\x04\xe5\xee\x4e\x79\x9c\xc5\x92\x1c\xb2\xf8\xe8\xc8\x2e\xf5\x5d\x9f\x0f\x68\xd6\x8a\xc6\x5f\xcd\x69\xb4\xf1\xe3\x65\x9e\xf1\x42\x7d\xc7\xf5\xe1\x1f\x45\xf1\x16\x0e\x93\x3a\x1a\x7f\xbc\x17\x3b\x42\xaf\x3a\xa3\x7e\xd0\x3b\x57\xf3\xb0\xdf\x67\x31\xaf\x6b\xe3\xa4\xab\xa9\x70\x66\x5f\x6f\x38\xcf\x1b\x67\xd8\x27\x77\x86\x35\xb3\x3c\x7d\xfd\xf2\xa5\xce\xf5\xae\xd5\x8d\x8e\x6c\xe6\x0a\x3f\xd6\x69\x7b\xc3\xbb\x4e\xb1\x66\x98\xee\x0d\x43\x78\x89\xb1\xbe\x23\xad\xa0\xa5\xd4\x47\xaa\xe6\x61\x3b\x4f\xed\xdf\x33\x34\xe7\xbb\x3a\x96\x20\xee\x7a\x73\xf7\x6e\x99\xbe\x85\x68\x36\x57\x49\x43\x7e\xf5\xd4\x7c\x3e\x97\x29\x3a\x76\x21\x3d\x70\x70\x0b\x7a\x97\xee\x42\x82\x06\x3f\xd9\xcb\x52\xc8\xaa\x8a\xbb\x82\xd9\x67\x11\x0f\x56\xd9\xd5\x00\xa9\xb3\x81\x47\xdc\x2c\x21\x41\xe9\xd3\x3b\x3a\x9f\x09\x1e\xf8\xd5\x00\x49\xb7\x4b\x97\x7c\x9c\x15\x9a\xc1\x44\x27\xc9\x9d\x15\x7a\xb9\xb0\xa4\xa7\xd9\x15\x21\xbd\xdf\x44\x77\xea\xc2\xd8\x42\x51\x18\x50\x72\xa0\x78\x4a\xfa\x43\x1a\xb7\x80\x74\x35\x8f\xd4\xe7\x06\x7f\xc4\xa7\x6b\xaa\xca\x9d\xbe\xa3\x8d\x3c\x9b\x4e\x26\x8e\x0e\x06\x69\x18\x54\x02\x5a\xd2\x76\x9a\x9a\xd7\xbb\x99\x13\x9d\x04\x44\x81\x60\x95\xbf\xd6\x8b\x85\xab\xa7\xa9\x4a\xe3\x81\xae\x67\x40\x39\xba\x03\xb5\xfb\x18\x57\x8f\x9f\x9e\xaf\xd7\x7c\xa9\x1e\xe5\xb9\xb8\xe6\x2b\x36\x58\x8a\xdd\xed\x4b\x38\x5b\x3b\xca\x95\xe9\xe5\x8b\x6d\x7a\xc9\x35\xe1\x61\x97\x8a\x9e\xb7\x6c\x7b\x69\xe6\x0d\x27\x6f\x27\x10\x20\x20\x39\x59\x67\x37\x7c\x75\x7a\xa2\x8f\xc7\xe4\x64\x72\x7a\xa2\xc4\x4e\xff\x1d\x90\x9e\x1c\x97\x72\xc9\x06\xba\x8e\x24\xd3\x85\x3e\xb8\xcc\xd6\xa7\x17\x69\xc9\xff\xf3\x1f\xf4\xed\x24\xff\xf6\xf5\xd3\x7c\xf3\xe8\xdf\x8f\x1e\x3f\xd2\xff\x9e\x7c\xf7\xcd\xe3\x47\xcf\xfe\xf5\xe8\xd1\xb3\x47\x3f\x40\x80\x0e\x7f\xf6\xe8\xd1\xa3\x17\x4f\xde\x3f\x7a\xf6\xe8\xf5\x35\x63\x03\xba\x04\x33\xc2\xeb\x6c\xa5\x36\x4c\x8e\x37\x70\x6e\xb0\xa9\x37\xd1\x76\x43\xe9\xff\x8b\x15\x88\x3c\x62\x49\xa8\x1c\x7f\xd2\xd7\x8f\x1c\x8b\xf5\x5a\xd3\x1d\xfa\x44\xb9\xa7\xf7\xb1\xa4\x13\x7d\x78\x2e\xa3\x48\x8e\x77\xa9\xe4\x05\x48\x70\x0d\xcc\x9e\x2d\xf5\x70\x20\x78\x00\xd0\x95\x14\xbb\x04\x88\xbb\xb5\x24\x34\xe7\xe9\x15\xef\xde\x8a\x3b\x19\x73\x72\x70\x14\xac\xa1\x43\x2f\xb9\x7a\x9e\xf1\x7c\x15\x13\x4d\x66\xe6\x74\xf0\x99\xdf\xee\x77\x8d\xd3\xe6\xa5\x71\x51\xe3\x1d\x39\x98\xd2\xa3\x42\xdf\x4b\x3f\x02\xa8\x74\x13\xf3\xa8\x8e\x81\x53\x7d\x40\x6f\x44\xfc\x06\x34\x76\x4c\xf0\x45\xbe\x97\x10\xfa\x04\x42\x0f\x86\x8f\xf0\x8e\xb0\x6c\x1d\x3f\x16\x76\x59\x7e\x9b\xc5\x28\xe6\xa0\x03\xc9\xcb\xec\x8f\xc6\x55\x8d\x74\x17\x02\x9e\x1c\x21\xf4\x38\x2a\xed\xff\x28\xe2\x54\x6a\x0a\x1c\xb6\x88\xe9\x99\x2d\x1a\x1b\xe5\xe7\xfa\x51\x37\x10\x92\x3d\x86\x77\x3e\x90\x9c\x1c\xf4\x25\xa5\x7c\xce\x67\xb9\x97\xaf\x77\xe3\xb5\x90\x4b\x8e\x10\x87\xac\x3f\xa1\xd7\x19\xaa\x78\xc9\x16\x1f\x55\x55\xf9\x78\x93\x96\xcf\xf1\xc2\x9b\x79\x2d\xc6\x61\xc2\x92\x1f\x4e\x48\xf2\xc4\x9a\x5c\xff\x2a\xc9\xaf\xb2\xed\x46\x29\x8a\x7e\x95\xf3\xfd\xc2\x00\xc4\xcf\xf7\x0b\xaa\x0a\xd2\xfb\xd9\xf1\x80\xeb\xac\xc8\xca\xcd\x8b\x02\x31\x85\xea\x2f\x63\x7d\x6d\xf9\x99\x0d\x9b\x9c\x6e\xce\x52\xab\x32\x73\x3a\x1c\x6e\x48\x5a\xcc\x37\x86\x25\xed\x7d\x67\x7b\x5b\xea\x62\x42\xc6\x72\xa0\x19\xeb\x6d\xf6\x07\xcf\xf9\x65\x76\x91\xe5\x99\xba\x1d\x30\x76\xc9\x95\x11\xa4\xac\x80\xb9\x8d\x33\xc8\xa6\xcf\xc4\xb1\xa6\xed\xdf\xf2\x62\xc5\x25\x72\xa6\x2e\x6a\x5c\xea\xa4\x61\x3c\x1b\xe8\xa1\x1b\x90\x40\xcd\xd4\x37\xf4\xae\x6d\xa1\x60\x79\xb3\x82\x66\xe6\x82\xbb\x48\xe5\xf3\x4c\xdf\xac\xf7\xdc\x05\x2e\xe5\x08\xd4\xdb\xe5\x80\xb4\xb3\xeb\xcd\xfa\x48\x29\x99\x5d\xec\x15\x8f\x07\xcb\xed\xa8\x10\x6a\x04\x4c\x4a\xa1\x06\x74\xa0\xe4\x9e\x43\xbe\xcb\xbd\x52\xfc\xcb\x75\x62\x32\xbf\x42\x3f\xe3\x9f\xae\xcd\x0c\xda\x7d\x17\x9d\x58\x61\xd2\xd2\x9e\xd7\xed\xf4\xcd\x03\x56\xf2\x3c\xd5\xd4\xe3\xe9\xc9\x1f\x23\xb0\xc3\x4f\x4e\xa6\x50\x86\xbb\xd4\xbe\x7c\xb3\x42\xfa\x2d\x4f\xcb\xbd\xe4\xf7\xa4\x36\x29\x5c\x67\x5e\xfe\xe5\x1c\x70\x35\xd7\xe9\xe7\xae\xd6\xb0\xc4\xc6\x08\xf8\x9d\xa9\xc7\x71\x71\xcf\x50\x88\xbd\xd2\xa9\x92\x93\x42\x14\x58\xbb\x3e\x99\xbd\x39\x9e\xfb\x6d\x70\x2d\x5b\x04\x8d\xd7\xc1\xe5\x80\x1c\xaf\x07\xa7\x0a\xfc\xd0\x04\x5d\xd2\x55\x85\x45\x41\xa2\x3a\xf9\xcf\x70\x43\x19\xbf\xaa\x78\x4d\x3d\xd7\x67\x51\x73\x11\x36\x2b\x4e\x2f\x4a\x91\x03\x0c\x37\x66\x4a\x4e\x06\x43\x21\x86\x83\xdd\xcd\xe9\x09\xdc\x7a\xc9\xc9\x74\x77\x73\xea\x2d\xd1\xf2\x8b\xcb\xba\x74\x93\xf3\x2d\x7c\xdb\x66\x59\x2a\x37\xe8\x1a\xb4\xbe\xd1\xe6\xba\xae\x45\xc7\x4e\xf5\xf6\x67\x6b\xab\xa8\xf4\x02\xdc\xce\x0e\xe8\x60\x84\x6b\xd6\xdc\xcf\x61\x9d\xe1\xe6\x6e\xec\x3e\xaf\xf4\xa0\xfa\x01\x41\xb1\xca\x3f\xe1\xbc\x32\x0d\x34\xe7\xd5\x1f\xe8\x20\x77\x34\x0d\x9a\x06\x51\xbb\x74\xb5\xca\x8a\xcb\xb7\x40\x39\x4c\x08\x2d\xab\x4a\x46\xd1\xb6\xaa\x62\x2f\x29\x10\x72\xe9\x45\xce\x41\x3b\x12\x0d\x97\x3d\x8a\x62\x16\x7c\xc5\xae\x57\x24\xe1\xde\x87\xee\xee\x55\xc6\xaf\x9f\x4b\xb1\x65\xf8\xf3\xbd\x60\xfa\xcc\x97\xa5\xa2\xd9\x58\xf2\x1d\xa0\xd3\xfe\x54\xa7\xf1\x83\x82\xb4\x3a\x33\xda\xcc\x48\x38\x86\x31\x89\x9d\x49\x7e\x83\xd8\xce\x66\x73\xad\x6c\xb8\xce\xf5\x1a\x08\x1e\x36\xd1\x4b\x20\x2d\x95\xbe\x25\x90\xdd\x62\x75\x00\xae\xd6\x49\x2f\x33\x88\x99\x3f\x64\x05\x47\xd1\x71\x69\x8b\x2a\x60\x3f\x3c\x4e\xcd\xca\xce\xc6\x17\xa9\x74\xe5\x5c\xd8\xe0\x89\x7f\x54\x97\x4f\xf2\x6c\xb7\xd3\x2c\xf9\xd4\xac\xbf\x57\xfb\xad\xcd\x6e\x3e\x5f\x14\x05\x97\x8d\x30\x90\xf4\xd9\x7a\xd3\x3c\xbb\x2c\x7e\xce\x56\x97\x5c\x95\x58\xd0\x32\x5d\x6e\xf8\x4a\x27\xb2\xf9\x30\x44\x13\xc3\xae\x45\x18\xf4\x06\xe7\xfa\x3b\x5b\xd8\x36\xbd\xd1\x5d\x6b\x7c\xfe\x60\xec\xa4\xeb\x10\x04\x26\x34\x0d\x07\x86\xf1\xe9\x2f\xcc\xfe\xfa\x60\x7f\x01\x66\xdb\x2f\xc1\xd7\x07\xb7\xb7\x36\xd9\x5a\x61\xfe\x92\xe7\xcf\x85\x34\x2f\xdc\x2f\x79\xb1\x77\x5d\x6b\x88\xb9\x68\x31\x06\x9d\xbf\x8c\x04\xd6\x16\xe4\x0e\xf8\x77\x90\x6b\xb3\xd7\xd6\xfd\x7e\xcc\xad\xf8\x9c\xd6\xd1\xaf\x21\x84\xd0\x97\x01\x20\xc0\xcb\xba\x8c\x0c\x6c\x73\x7c\x91\x94\x61\x5d\x1e\xad\x01\xbc\x39\xf6\x3f\x11\x6f\x96\x72\xdc\x38\xa5\x89\xd5\x3f\x0d\x12\x2d\xc8\x10\x74\xb1\x6b\x29\x0a\x95\x71\xc9\xcc\x27\x2c\x5a\xa1\xc9\x4e\x4d\xd3\x51\xcb\x1e\x19\x79\xf3\x70\x48\x39\xd2\x67\x51\x04\x80\x4d\x81\x59\x81\x95\xbc\xbe\x52\x35\x37\x44\xc0\xe8\xde\xf4\x37\x20\x76\x68\xc1\x64\x14\xa1\x2f\xd9\xf4\x26\xfe\xc6\xe3\x04\x1a\x32\x06\x58\x2c\x0f\x5e\xf8\xa5\x8e\xbe\x76\x0a\x0a\x0d\xf9\xdd\x77\x85\x11\x9a\x64\x8e\x69\x9b\x18\x99\xda\x04\x6d\xb4\xaf\x71\x49\x92\xd0\x3c\xc7\x85\xfb\x66\x3a\x2e\x70\x9e\x2e\xcc\xb9\x1a\x45\xb1\x18\xb2\x8e\x88\x5a\x7d\x7e\x26\x86\x31\xf4\x6b\xc9\xb3\x3c\xce\xc6\x1e\x2a\xfb\x83\x82\x54\xd5\x94\x7c\xa5\x12\x31\x54\x87\xc0\xac\xc2\x93\x5b\x8b\x25\x95\x4c\x0f\x68\x4f\x75\xcc\x3b\x26\x93\x10\xdd\x67\xdc\xb5\xeb\x5d\x66\x19\x8c\xc0\xec\x02\x16\xd0\xb1\x97\x0a\x76\x4f\x9c\x85\xe5\x8d\x1f\x7c\x2c\xbf\x5a\x6e\x47\xe5\xe8\xe3\xbb\xe1\x83\x4b\x3a\x18\x90\x61\x3d\xa5\x6a\xc3\xfd\xa4\xf1\x7f\xaf\x3e\x96\xe4\x63\xf9\x95\x4e\x78\x02\xb9\x06\x84\xbe\x56\xc1\x5a\xf9\xac\x5b\xf5\x36\xe6\x84\xc2\x22\xa2\x47\xb8\x8c\xdf\xd1\x93\xfc\x43\x1f\x3c\xe6\x6d\x87\x80\xdf\xde\x20\xc1\x52\x33\x61\xbd\xb7\x22\x56\x24\x30\x9c\x28\xce\x64\x4d\x9a\xd7\x10\x47\xf3\x02\x10\x1a\x82\xeb\xe1\x4b\xf7\xf3\xc9\x60\x98\x11\xd2\x6b\x12\x26\x05\x1e\xc0\x03\x34\x25\x0a\x05\x20\xe6\x22\x17\x54\x98\x5b\x0d\x39\xe2\x46\x2a\x7b\xdc\xea\xc5\xa2\x49\x88\x01\x39\x28\x93\xde\x3d\x65\xcd\x06\x83\x64\x00\x34\x14\xfd\x2d\x18\xde\xdf\xee\x19\x23\xc3\x45\x43\xe1\x3d\x6f\xc7\x01\x10\x1f\x56\xb0\x4d\xe5\x65\x56\x80\x40\x4b\x41\xdd\x75\xc9\x4f\x8d\x28\x7c\xc2\xdc\xba\xab\x37\x99\x33\x56\x83\x79\xf0\x16\x3d\x2d\x18\x3f\x55\xec\x45\x11\x17\xe4\x94\xdc\x15\x2c\xce\xe0\x7e\x2c\x56\x31\x00\xe7\x11\x00\xed\x45\xb1\xa7\xd4\x7b\x0b\x3e\x97\x9b\x51\x36\x56\x62\xbc\xdc\x18\x70\x71\x5d\xc6\x0f\xa6\x0c\xc3\xad\x78\x85\xf4\xe4\x88\x15\x7e\xad\x23\x57\x8e\x2e\x34\x2e\x40\x80\x0d\x95\x90\x46\x32\xac\xa4\x6d\x2f\xf7\xaa\x63\x1c\xa9\x39\x29\x7b\xca\x5d\x49\xcf\xb2\x58\x52\x89\x47\xa7\x66\x13\xc3\xbb\xe9\x69\xec\x42\xbc\x48\x77\x4d\x4d\xa8\x3c\xb2\xc5\x25\xd3\xa3\xdd\x93\xe7\x8d\x12\x41\x78\x1e\xd6\x21\xeb\x82\x19\x0f\x0f\x80\x17\x75\x1f\x2e\x44\xcc\xdd\x56\x39\xb6\x64\xc9\xe9\x68\x0a\x28\xba\xdc\xae\x43\x1d\x3c\x73\x19\x99\xfb\x65\xbd\xde\xcf\x8f\x15\xb5\x20\x89\x3a\x1f\x4d\x01\x68\xdc\x2b\x0b\x76\x44\xbb\x34\xe7\x83\xde\x0b\x42\x90\x32\x45\xa7\x7e\x8f\x7e\xe8\x9e\x15\xd5\xb5\xc2\x69\x81\xce\xca\xa5\xd8\x17\x2b\xbc\x17\xcc\xb2\x1d\xee\xfd\xeb\xc4\x9e\xdd\x77\xbe\x50\x3b\x39\x22\xec\xa6\x9a\x36\x73\x49\xea\x63\xd3\x4b\x81\xf9\xa0\x09\x49\x4b\xf0\x8d\x2d\xf3\xae\xb6\x76\x45\x98\x44\xd7\x63\x13\x84\xd5\x60\xfc\x45\x2a\xf5\x2e\x4d\xea\x43\x0f\x04\x7a\x78\xc2\xcc\x64\x32\xa1\x2b\xb1\x34\x0d\x2d\x4c\x9b\xec\xe7\x70\xa5\x8f\xe4\xa1\xaa\x89\x41\x1a\xd2\x89\x89\x6a\x10\x8e\x14\xc7\x17\x23\x7d\xa5\xfe\xe7\x81\x19\xfc\x72\xeb\x5e\xe8\xe1\xfb\x8a\x4b\xd5\xc5\xda\x79\x3c\xd4\x36\x2b\x46\x35\x87\xa4\x99\x3a\x7f\x49\x5d\x39\xaa\x74\xe0\x9e\xf3\x37\x42\x66\x7f\x7c\xa1\x54\xcb\x85\x4d\x27\x93\xbf\x9f\x9e\xe8\x3a\x5c\x48\xbb\x92\x8d\x57\x49\x8f\xc7\x05\xa1\xe0\x7f\xf2\xdb\x2c\x2e\xba\xdf\x04\x8a\xc6\xfb\x87\x8a\x8b\xfa\x75\x80\x82\x12\x65\xb6\x4c\xf3\x81\x95\x8a\x65\xdd\xc5\x64\xfe\x84\xea\x52\x32\xff\x75\x64\x00\xfd\x14\x85\xb2\x05\xe1\x08\x6f\xf8\xf2\x33\x5f\xfd\xca\xa5\x40\x32\xba\x3f\xad\xd9\xa9\x7a\x78\xec\x69\x9e\x15\x86\xb4\x76\xd3\x51\xc7\x60\xfe\xc1\xf4\x9f\x70\xc3\x78\xa6\x37\x3e\x6a\xda\x8f\x21\x0d\x51\x33\x09\xc1\xdd\x56\x07\x8f\xe1\x45\x33\x26\x2d\x82\x0e\x22\xd3\xd5\xea\x89\xa6\x30\xa2\xe8\x07\x5f\x98\x6f\x1f\x60\xee\xcd\x43\xba\xcb\x34\xaa\x20\x2e\x40\x13\xd9\xf9\xbc\xde\x15\x2e\xc2\x68\x86\x04\xb2\xd9\x36\x01\x14\x3c\x4e\xa8\xae\x1a\x91\xbb\xc5\xa7\xa3\x40\x9f\x20\x90\x91\x1a\xd2\xd9\xa8\x5f\x1c\xd5\x6c\xe0\x0d\xcd\x06\xf3\x72\x77\x20\x14\x9f\x43\xd5\x9f\x93\x61\x1d\x7c\x98\x74\xd8\x8e\xfe\xea\x61\x4c\xce\xf0\x19\x8e\x24\x5b\xfb\xf6\x85\x7e\xbe\xee\x9d\xa3\xe7\x7f\x7d\x8e\x1a\xd6\x3e\xe4\x0e\x11\x4e\xf5\xb1\x6d\x35\x82\xea\x02\x2c\xfb\x09\xb6\xf5\x5e\x20\x2e\xd9\xde\x77\x46\xa5\xb7\x76\xbe\x7c\x9a\x9d\xfd\x23\x8a\x64\xbf\xa3\x8c\xaa\x2a\xfa\x5d\xa5\x9c\x66\xc3\x21\xe9\xcc\xa1\x6f\xb9\x2e\xd6\x24\x8a\x7e\xd5\x64\xa9\xae\x1d\x9a\x4d\xff\x7c\x93\x5b\x66\x3e\x8d\x1e\x03\xc0\xb8\x37\x6c\xc8\xb5\x6b\x12\x55\x06\x44\x58\x20\xeb\x88\x65\xcd\xa7\x17\x63\x09\x64\x17\x50\x66\xb4\x33\xd3\x63\xa1\x94\xd8\x9a\x5c\x66\xf3\x17\xe3\x0b\x08\x75\xf9\x7c\x29\x91\xc9\x7e\x21\xe4\x8a\x4b\x93\xdb\x66\xd0\xe9\x4f\x4a\x91\x67\x2b\x84\x35\xc7\x27\x95\x01\x35\xed\x88\x22\x9b\x70\x16\xcb\xb6\xac\x37\xa0\x58\x07\x17\xb9\x58\x7e\x86\x46\x77\xa6\xdb\x84\x4d\x75\x3d\xec\x4c\x7c\xed\x8f\x06\x92\xc8\xc9\x17\x1b\xa0\x9b\x8d\x85\xfb\x53\xbf\x14\x57\x5c\xe2\xad\xf9\x8a\xdf\xa8\xf7\xe2\x9d\x2d\xc5\x4f\xe5\xdf\xad\xb1\x6c\x48\x99\x8f\xf4\xb3\x23\xd1\x91\x4e\x76\xa4\xc4\x1e\x5a\xba\x06\x66\xdf\xf5\xf3\xbe\xda\x07\x0d\x23\xb2\x1a\xf2\x49\x5a\x95\x08\x39\x56\x62\x37\x73\xbc\xb7\x26\x42\x95\xd8\x91\x84\x77\xbc\xdf\xf7\x0c\x0d\xb5\xce\x85\x26\xc3\x47\xb9\x72\x3b\x39\xf3\x4b\x34\xab\xc0\xfe\x48\x8a\x21\xef\x26\x8e\x04\x7b\x99\x01\x3a\x2c\x4d\xf1\x57\x66\x15\xa6\xe4\x98\x17\xe5\x5e\x3a\x3c\x26\xfb\xed\xf1\x07\x79\x1d\x68\xa8\xf9\x5e\x79\x26\x66\xb1\x60\xa5\x2d\xee\x51\x16\x3f\xd3\x7f\x4b\x42\x8e\x34\x81\x90\x04\xfb\x9e\x15\x31\xe8\x1a\xa6\xa5\xd2\xc4\x73\x4c\xc8\x39\x4b\xc1\xd7\x65\x50\x52\x4e\xc8\xe8\x48\x49\x34\x65\xb9\xc5\x49\xb8\xd3\xcd\x4c\x04\x55\x22\x71\x43\x9b\x52\x31\x9c\xfa\xa6\x64\xbf\x1f\x23\x5f\x35\xb5\x87\x2f\xc6\xbe\xe0\xac\xaa\x6a\xc2\x16\x38\x0c\x60\x4c\x8f\xac\x4b\x0f\x95\x90\x7d\x1b\x2b\x32\xea\x54\xba\x18\x22\x1d\xec\xd1\x19\xd9\x11\xea\x59\xb0\x02\xd7\x27\x8a\x48\x64\x20\x1a\x59\xc7\x7d\x09\xd2\x8f\x6c\xb5\xe2\x85\xbe\xc7\x3a\x5a\x14\x45\x90\xe6\xd2\x7c\xc4\xde\x97\x59\xb6\xa0\x80\x24\x88\xf1\xbb\x07\xf1\xd0\xff\xf4\x22\x07\x78\xbf\x5a\x4e\x83\xc8\x8a\x65\x8d\xac\x38\x24\xe5\x3c\x5f\x04\xe5\x1c\x8e\xb4\x22\x56\x0d\x31\x33\x24\x2f\x86\x99\x61\xae\xeb\xf9\xf9\xd9\x1a\xd8\x85\x57\x83\x61\x5e\xda\x0a\x5f\x28\xac\xf9\x9b\x27\xd4\x33\xa2\xdf\xa1\x82\xb3\x19\x21\x5a\x6a\x65\x44\xbd\xd2\x9d\x07\xdf\x22\x10\x9c\x3a\xe8\x66\xfb\xf0\xd2\x2d\x8b\xa8\xa9\x5d\x49\xda\x8f\x22\xc8\x7d\x9d\xb4\x5f\xc8\x78\xae\x06\x04\x7c\x26\x78\x0b\x29\x98\xee\x94\x65\xfe\xf7\x48\x38\xc3\x40\x4f\x72\x11\x1c\x4e\x70\xa0\xb6\xe5\xc1\x6e\xf5\x0b\x1a\x64\xf5\x0b\x4f\xc9\x70\x5a\x67\xb6\x77\x5b\xab\xac\x61\x4a\x8b\x86\x74\xb9\x9d\x68\x66\x47\x34\x19\x4d\xe9\xd1\xc6\x86\x95\xe1\xc2\xfe\x4d\xdf\xf3\xfd\xc9\xc1\xb9\x35\x0e\x4d\x3e\x9d\xd5\x12\x9a\x02\xc6\x3e\x23\xfb\x5c\xc8\x6d\xaa\x2b\x89\xf5\x8e\x82\x21\xad\x85\xef\x3e\xc3\xfa\x6d\x00\x4f\xee\x36\xe4\x25\x57\x8f\x35\x5b\x9a\x15\x97\x4f\xe0\x44\x79\xcb\x97\x2a\x26\x56\xb1\xb1\x34\xee\x22\x8e\x27\xaa\x6b\xf8\x10\x1e\xf3\xf5\x62\x43\x92\x3f\xe3\xd7\x3b\x21\x95\xc5\xfc\x32\x4e\xa3\xd8\x4f\x71\x81\x42\x60\x6a\xdd\xf8\xf0\x55\xa6\x84\x7c\x51\x7e\x07\x5b\x9a\xf5\x0b\x77\xe6\xf9\xcb\x04\x92\x9a\x08\x47\x5d\x74\x9e\xf4\x7e\x4a\x3b\xc3\x5d\x8c\xac\x32\x1e\x79\x9e\x62\xb3\x31\xe9\x46\x39\x87\x34\xa0\x0b\x60\xd1\x1e\x57\xd9\xb6\x64\x8a\xbb\x48\x40\xe9\x2e\xd9\x7c\x71\x68\xda\xa6\xb6\x49\x2f\x14\xdd\xc0\x21\x1b\xf6\xd5\xf9\x95\x07\x79\xa4\x71\x83\xad\xb0\xe2\x28\x52\x76\xcc\xe0\x22\x3a\x67\xd2\x3d\x0e\xf9\x71\x4a\x9c\x99\x98\xf7\xc2\xe9\xe2\xcb\xf6\xbb\x4c\x55\x75\x04\x9e\xbb\xac\x44\xdf\x83\xc1\x53\x91\x89\x8a\xa2\x09\x63\x80\xd5\x55\x9f\x42\x3f\x83\xb1\x43\x8c\xcd\x56\xde\xd8\x38\xbf\x33\xe6\x30\x2a\x60\x41\xe9\xbb\xd7\xee\xcd\xb0\x53\xa3\xfa\xb8\xb3\xeb\xe5\x25\xc8\x01\x69\x61\x25\x5b\x29\x73\x97\x66\x46\xfd\x6e\x0f\x8f\xe5\xd5\x44\xad\x1d\xa9\x33\x11\x45\x62\xe4\x7d\x3f\x9c\xe0\x45\x6b\xdb\x63\xea\xa1\x75\x12\x4d\x78\x9b\x41\x39\x4f\xf5\xa8\xe0\xef\x51\x8a\x79\x83\xf6\xb8\xd1\x23\xf4\x06\xca\xfd\xd1\xbe\x03\x08\xdd\xf2\xc7\xf6\x2b\x35\x23\x93\x33\xd1\xf7\xe6\xb1\xaa\xd2\xbe\x9b\x01\x3d\x41\xe1\x83\x5b\xbf\xd6\xf7\xc3\x00\x3f\x09\x2c\x57\x2f\x05\x7c\x9f\xc6\x4d\x04\xee\xe6\xde\x9c\x30\x56\x40\x85\x0e\x16\x42\x9d\x9b\x10\x68\xc2\x99\xf9\xd0\xcd\x9b\xc5\xf8\x9b\xfd\x6a\xa1\x0c\x69\x1d\xc9\x14\x49\xe2\xfa\xf3\x5c\xcd\xc2\xc4\x75\x14\xb1\x32\x3b\x0c\x22\x49\x1d\x75\xa6\xf4\x92\xc5\x7c\xa6\x59\x28\x91\x2b\x90\x5b\x24\x61\x8d\xd4\x36\xf4\x4c\xce\xc2\x5c\xa6\x06\xa8\xdb\x26\xa2\x92\xd8\xba\xde\x8b\x73\x79\xa4\xa6\x09\x85\xba\x24\x21\x84\xf4\x6c\x6a\x26\x41\x53\x0b\x3d\xa1\xfb\xaf\xa2\x48\x9b\x99\xfb\xd7\x5f\x32\x35\x53\x06\x6f\xfd\x56\x0d\x06\x54\xc8\xea\xfc\x70\xfc\x1b\xbf\x8a\xb0\xa7\x60\xc7\xe7\xb0\xc7\xf6\x51\x54\xef\xfd\x63\x7b\xf1\x7f\x7e\x7f\x87\x34\xc4\x92\xbd\x12\xb1\x7b\x3b\xda\x9f\xff\x03\xd4\xe4\x42\x1d\x1e\x47\xda\x1b\x8d\x89\x2f\x2c\x2d\x9a\xb1\x4e\xe2\x45\xd3\x73\xb6\x64\x00\xe0\xae\xe9\x80\x5a\xe1\x3f\x8f\x3d\x20\xde\x82\xdf\xa8\x77\xd9\x45\x9e\x15\x97\xce\x51\x67\x14\x5d\x69\xf2\xd3\x53\xcf\xd4\x0c\xe1\xcf\x1b\xce\x73\xe3\xe4\x81\xa9\x59\xf3\xb1\x02\x5b\x9e\xa8\x63\x1a\x79\x0a\x50\xfb\xad\x41\x88\x59\x17\x74\xe9\x6d\x01\xba\x62\x93\xd3\xd5\x99\x73\x09\xb4\xb2\x5e\x0e\x36\x6c\x3f\x5f\x01\x82\xdc\xc6\xd2\xa2\xa7\x16\xef\x75\x03\x86\xe6\x51\x84\x7f\xbd\xca\x19\x13\x48\x2c\x9f\xa6\x7d\x86\xb1\xa7\x24\x65\x79\x9c\xe2\xf1\xb0\x66\x99\xe5\x6c\x54\x14\xa9\x33\xb6\xd4\x85\xd4\x63\xd9\xdb\x18\x3f\xbe\x65\x14\xc5\x17\x22\x76\x9f\x74\x80\xe4\xd6\x80\x80\xe8\x3b\x5e\x83\x57\x41\xc9\x63\x4e\x37\x74\xa9\x17\x37\x5d\x47\x51\xfc\x56\x67\xa9\x8b\x23\xd4\xff\x0a\xc8\xbe\x63\x16\xe9\x3e\xc5\xb9\xd4\x5b\x86\xa6\xa6\x23\xfe\xac\x1d\x1c\xae\xf4\x8e\xed\xeb\x46\xf4\x44\x28\xe5\xda\xd1\x94\x1c\x96\x43\xb6\x81\x5b\xe2\x80\x03\x63\x07\xe4\xa0\x37\x65\x7b\x45\x9b\xeb\x86\xd0\x2f\xac\xd9\x81\xde\xb8\xc1\x1e\x92\x66\x76\xa3\x48\x2f\xfd\xbe\x1e\xdb\xa5\xa1\x30\xac\x38\x75\xe9\x14\xd8\xdf\x8a\x58\x7a\x3a\xc0\xf8\xed\x2b\x20\x11\xc7\x3d\x97\x21\x8b\x1d\xca\x46\x6a\x39\xe8\x84\xe6\xd8\xde\x50\xa7\xa2\x71\xc2\xd3\xc6\x01\xdf\x38\xdf\xf1\x8d\xfc\x1f\x93\x09\x5c\x52\x47\x74\x2f\xfa\x93\x9a\x26\xf9\x77\x13\x50\x52\xb9\xcb\x92\x16\xac\x3f\x39\x8d\x8b\xe3\xe2\x28\xd5\xa4\x8e\xfa\x48\x1e\x55\x55\x1c\xf2\xf4\x60\x9d\x73\xa7\xc4\xae\x66\x70\x8f\xbf\x7a\x8c\xd6\x40\x62\x21\xef\x7f\x20\xf5\x9d\xce\x7e\xf2\xd4\x99\xcd\x11\x4b\x68\x3f\x6e\xd2\x41\xf5\x29\x70\x8c\x1e\x0a\x53\xe8\xc3\x8f\x44\x11\x92\x67\xa7\xe0\x70\xf3\xee\x57\x7d\xf6\x22\xad\xf2\x83\xfe\xc9\xa1\x4d\x8f\xc1\x06\x87\xfe\x82\x30\x84\x9a\x93\xba\x2c\xd2\x3c\xe6\x74\x80\x43\x3d\x08\x65\x97\xee\x62\xf2\x2a\x6c\xea\xe8\xf8\x87\x96\xb9\x5b\x8e\xa4\xd6\xd7\x6f\xec\xd7\x69\x27\xca\x7a\x7d\xe5\x1d\x55\xd3\x56\x57\xe9\xf1\xb6\x74\x8c\xdc\x91\xd4\xef\x45\x7b\x0c\xeb\x45\xf5\x7d\x13\x8a\xef\x83\xb3\x0c\xf8\x17\x5e\xa5\x30\xbe\xf4\xdf\xf0\x61\x9e\x65\x1a\xc3\x5c\xe0\x30\x17\x04\xde\x30\x8b\xac\xdc\x04\x00\x6b\xbf\x60\x15\x47\x9e\x8a\xeb\xc7\x85\xb1\x7b\x6b\x42\xce\xaa\xce\xd0\x21\x69\x54\x60\x41\x71\x34\x47\xe7\x76\xf6\xd3\x77\x08\x5e\xcd\x83\x56\xf8\x5e\xfd\x6b\x13\x44\xd5\x17\xb8\xd8\xf3\xca\xe9\x95\x53\xd4\x0e\x50\x3e\x55\x56\xbb\xe1\xce\x68\x69\xf6\xec\xbc\x40\xc0\xd2\xd2\xc9\x3e\xd0\x9a\x20\x3d\xfb\xa7\xf5\xe2\x6b\x10\x4e\x5c\xd1\xc3\x20\xc0\x48\xb7\x33\x96\x8f\x24\x95\xc6\x17\x83\xf1\xf5\x6d\x12\x1e\x61\xfc\x7a\x19\xdb\x1b\x01\xdb\x68\xaf\x87\xf1\x80\x34\x04\x1e\x18\x66\xa8\x46\xe0\xa4\x3d\x3b\x7b\x08\x1e\x62\x5f\xa9\x58\x11\x42\xe3\xe5\xf9\x78\x32\x99\x56\xd5\xf2\x6c\xa4\x7f\x68\xb6\xe1\x5d\x16\x63\x46\xbd\xd7\x38\x37\x1f\xc6\xd7\xb6\x22\x4e\xf2\x82\x57\x2f\x86\xfa\xf7\x2f\x64\xd1\x81\xf3\xd5\x02\xbc\x34\xdb\x71\xe7\xdc\x48\x51\x78\x4b\xdb\x46\xb1\xc9\xa9\x3a\xe3\x4d\x6d\x9b\xe1\x50\x11\x17\x38\x57\x56\xa9\x86\x05\x61\x8d\x4b\x3c\x18\xcd\x83\x0f\x94\x73\x74\xd6\x01\xc5\xf7\xee\x10\x48\xbc\x90\x13\x05\x41\x98\x60\x5d\xd2\x36\x10\x7f\x89\x53\xc1\x84\x7f\xb5\xd2\xe1\x30\x25\x72\xde\xd2\x38\x01\x58\x5f\x61\xda\x06\xf2\x36\xe1\x55\x31\xcc\x68\x71\x34\x8f\xc7\x13\xdb\x07\x69\x90\x62\xbd\x11\x65\xf2\x2d\x18\x99\x43\xf2\xf7\x42\xa5\xee\x71\xb9\x4b\x6e\x87\x61\xf0\x36\x2c\x83\x67\xdb\x82\xfa\x77\x58\xf7\xb3\xb2\x37\x8d\x92\xd7\xb8\x5d\xe1\x1b\x8c\xb2\xf4\x8e\x9d\xbf\xcc\x6e\x13\x3d\x84\x26\x6e\x9e\x2d\x7a\x03\xc5\x6f\xd4\x80\x31\x31\x13\xdc\xb8\x2b\x32\x04\x92\x0e\x2b\xeb\x0a\x92\x01\x28\x1e\x41\x70\xca\x63\x9d\x10\x67\x7e\x00\x2e\xcb\x0c\x84\x7d\xa1\x2f\x03\x53\x3c\x1a\x98\xba\xc6\x16\x3c\x90\xb3\x14\x40\xe5\xa1\x1e\x0a\x3c\x54\x42\xc0\x9f\x53\xd7\x06\xab\x25\xf4\x79\xef\x16\x9b\xbe\x3e\x1a\x41\x56\xeb\x09\x09\x35\xac\xc1\x64\xd4\x05\xc0\x6a\xf5\x49\x39\x1b\xe5\x1e\x6b\x4d\x9a\x40\xf1\xf5\x21\xb1\x79\xeb\xae\x65\xbc\x53\xa0\xd1\x52\x1e\x75\x1a\x68\xe0\xbb\x3a\x2b\x38\x33\xc7\xdc\x2c\x3e\x9e\xc9\xf8\x5f\x70\x2a\xe6\xd2\xa9\x7d\xcb\xf1\xc5\x3e\xcb\x15\x49\xd2\xac\x01\x4e\x27\x78\xe8\xb0\x03\x06\xc6\x29\x8e\xd1\x82\x99\x16\xf7\x30\x4a\x37\x03\x09\xf1\x18\x7f\x30\xb0\x85\xd4\x14\xc7\xbd\x43\x0a\xa9\x4c\x22\x9b\x18\xb3\xd2\x62\x7c\x71\x09\xef\x8d\x9a\xf1\x36\x3f\xab\x0a\x15\x80\x5c\xb8\xfb\x98\xc5\x2e\x11\x73\x39\xa9\x97\x80\x79\x39\x29\x2c\x3f\x92\xa0\xd8\x38\xec\x1a\x93\xde\x28\xa4\xb0\xe2\x3a\x9d\x53\x9b\x2a\x66\xee\xd7\x70\x70\x32\x18\x1a\xf9\x61\xdd\xde\xc1\x80\x24\x61\x18\x08\xa7\x74\xc5\x0d\x0c\x01\x9d\xe6\x22\x5d\x7e\xbe\x04\x55\x16\x58\xa0\xf5\x27\x51\x33\xff\xd3\x6b\xae\x4a\xe2\x20\xe6\x08\xfb\x15\x14\x16\x14\x8d\xfa\xa2\xb5\x03\x8d\x9a\xd8\x00\x2a\xc2\x4f\xd9\x78\x39\x0f\xb7\x9a\x22\x56\x45\x0a\x6a\x44\x03\x2c\x5d\x15\x74\x5e\x1f\x43\x38\x60\x50\x6e\xa0\x9f\x18\x26\x48\x70\x6f\xf4\x9b\x3b\xdb\xcb\x32\x30\x2e\x16\x95\x49\x63\x67\xc2\xfd\x0e\xe6\xc2\x85\x06\xb3\xe1\x42\x7b\xbc\xb9\x02\x94\x4e\xe8\xd9\xab\xf3\x00\xdb\x50\xd5\x6f\x1d\xb8\xd4\x43\x36\xd7\xc4\xea\xc5\x7c\x59\x6b\xf4\xd7\x9f\x8f\xdd\x70\xde\x5f\xc0\x63\x6f\xba\xda\x61\xae\x50\xe8\x0b\xc6\xe2\xe3\xbc\x7d\x61\x80\x17\xe7\x8e\x8c\x5f\xb4\xb3\xa9\xe7\xfb\x64\x30\x6c\x57\x40\x07\x68\x4c\x08\xe3\xdb\xf5\x72\x5a\x8c\xdd\x8d\x36\x2a\xc6\xcd\xfb\x8c\x04\xe6\x12\x83\x61\x3b\x05\xbe\xd7\xa0\x03\x0a\x4f\x4b\xa3\xd5\x13\x7b\x6a\x1c\x1c\xf6\x6a\xdd\xd2\x97\xa9\xfc\xcc\x25\x6c\xb5\x4e\x39\x49\x55\x09\x72\x67\x07\x09\x35\x84\xdd\x74\x7d\x71\x80\xcc\x8d\x3a\xf8\x5f\x31\x12\x03\x82\x6d\x0c\x15\x44\x4a\xae\x7e\x2c\xf8\x2a\x53\xe0\xd8\x25\x6d\x0d\x46\xea\x9d\x98\xcd\xf9\x89\xa2\x38\x0d\x71\x4a\xba\x66\x91\xd0\xee\xd7\x2f\x00\x92\x11\xc7\x15\xfe\x80\x6d\xaa\xd3\xb3\xb4\xfb\x01\xcb\x17\x5d\x48\xf2\xd7\x5e\xb0\xea\x61\xb5\x63\xa6\xc9\x9c\xe3\x4d\x6a\x2c\xa8\x96\x96\xad\xf7\xd2\x04\x03\x4e\x08\x15\x8e\x56\x2d\xd9\xe4\xb4\x3c\x6b\x51\x6b\x35\xcd\x5a\x5a\x7a\xbf\x4d\xd1\x95\x0b\xba\x67\xa2\x69\x64\x98\x13\x3d\x80\xf9\xa2\xb7\x8f\xa2\x23\xa3\x33\xdf\x2f\xba\xd6\xd5\x3d\x9d\xcf\x9b\xbd\x2c\x7c\x9d\x01\x13\x3d\x20\x01\x85\x5e\x7b\x83\x52\xf5\x7b\x2b\xe2\x32\xd8\x2f\x73\xf4\xd7\x4f\xca\xe6\x3c\xaa\x4f\xf1\xd3\xe2\xb4\x60\x59\xfd\x6c\xe9\x8b\x0b\x9b\x33\xe2\x88\xb9\xa2\x5e\x7f\x51\xd4\x71\xc4\x15\xe4\xb0\xb4\x8d\xf3\x1c\x79\xf2\xa6\x57\x22\x4b\x62\x38\x98\x0d\xa0\x0e\x0c\x7d\x91\x01\x91\x90\xd9\x5b\x15\x3a\x66\x09\x00\x17\x0a\xfe\x4b\xed\x41\xef\x2e\x7b\x9b\xc8\xfd\x26\x48\x10\x50\xef\xa4\xa7\x4b\x4b\x8e\x52\xd5\xa0\xd5\x5c\xdb\xf5\x6d\xb0\x82\x0f\x64\xb1\x74\xce\xfe\x84\x00\x04\x75\xa9\x48\xa8\x91\xae\x02\xde\x4a\xf3\x9c\x26\x2b\x70\x57\xc5\x02\x73\x4f\x7d\x4f\x98\xdc\x47\x98\x86\x9b\xa7\xc9\x6a\x09\x7d\x84\x81\xa3\xba\x09\xf0\xae\x26\xfe\x34\x3d\xf3\x96\x70\xea\x58\xd6\x79\xaa\x97\x6c\xbd\x0e\x73\xe8\x59\xfb\x85\xd9\xcc\x24\xe9\xe5\xc6\x73\x3b\xc0\x2c\x00\xdc\x50\x59\x55\xfb\xb6\xba\x5a\x76\x59\x08\xc9\x47\xf8\x50\x57\x1b\x5d\x6e\x78\x9c\xd3\x7d\x13\x8b\xa0\xeb\x8c\xdb\x13\x9a\x45\x51\x3e\x4e\x2f\xc4\x15\x9f\x35\x64\x97\x7b\x27\xff\xab\x2a\x89\x07\x5f\x22\x82\xad\xb5\x27\xf4\x57\xb0\x93\x96\x7c\x25\xd3\xeb\xe0\xb9\x7f\x13\x5e\xdf\x9a\x98\xf8\x0e\xd5\x7f\xc8\x5d\x2c\xeb\xcd\x50\x55\xfe\x17\x9b\x2f\x08\xb1\xee\x98\xdd\x4b\x9b\xcf\x5b\xf5\x54\xa0\x68\xe0\xce\x7a\x2b\xea\xf0\x74\x8e\xaa\x2a\xce\x46\xac\x7d\x05\x50\x15\xaa\x75\xfd\x80\x25\x1d\xb9\x11\x55\xf0\xd6\x8d\x7a\x0d\x87\xa0\x1e\x58\xe1\x01\xaf\xf1\x4d\x5d\x85\xe1\x81\xd8\xc0\xf1\x40\xd4\x1b\x0b\x94\x87\x35\xad\x03\x3a\xae\x2d\x7b\xd2\x3c\xaf\x61\xd5\xd9\x33\x11\xdf\xa1\xd4\x2e\xe9\x22\x95\x3d\xa5\xe8\x73\xee\x33\xa2\xc3\x29\xe8\xdd\xf9\x7a\xcb\x2e\x81\x91\xf9\x4c\xe1\x4d\x37\xd4\x53\x06\x0d\x0b\xa3\x8c\xec\x69\xbb\x36\x95\xb3\x9a\xf1\x28\x54\x61\x6a\x86\x2a\x2f\xc9\x60\x32\x30\x13\xcb\xc7\xb5\xc2\xf7\x28\x56\xb3\x22\xb1\xbe\x09\x20\xbb\xa7\x4c\x11\xc8\xab\x3c\xed\xaa\xb0\x13\xa3\x46\x27\x32\x23\xb5\xaa\xc1\xa9\xbb\x9a\xed\xb7\xf8\x58\x95\xba\xcd\x48\xa4\xb7\xd4\x80\x3b\xbb\xef\x27\x90\x28\x33\xf7\xba\xdf\x4e\x03\x6b\x59\xd3\xfc\x70\xef\xd4\x4f\x68\xc2\x8c\x11\x6a\x76\xb8\x04\xa3\x58\x7a\x83\x85\x05\xb5\x9a\x8e\xeb\x35\x58\x06\xa3\x70\x19\x88\xe6\xf0\x74\xf6\x2b\x68\xee\x91\x5a\xf4\xf8\x98\xc7\xb7\x4e\x4d\x6a\x70\xf9\xec\x4d\xcd\xf9\x24\x8a\xe2\x09\xf8\x14\x85\xf4\x7f\xd8\x84\xdf\xa5\xcb\xcf\xf1\x51\x75\xec\x09\xa1\x77\x30\x9c\x09\xf4\x9f\x1a\x85\x38\x58\x39\x87\x03\x2d\xb9\x7a\xe7\x74\xaf\x82\x2d\xe1\xf7\xce\xa5\xe8\x33\xde\xd0\xeb\xae\x01\x67\xac\x0e\xc4\x2a\x2b\xf5\xb1\xf4\x9d\x8e\x37\x6d\x45\x10\x4e\xd7\xaa\xc7\xa9\xf4\xca\x68\xe7\x22\x5e\xbb\xde\x8b\x5d\xbb\x59\xb8\x26\x6d\xbc\xd7\xa8\x30\xa2\xd9\xa4\x9f\xb8\x54\x5f\x68\x91\x2e\xa0\x95\x87\x1c\x68\x30\xda\xbe\x1b\x35\x44\xdc\xbc\x8a\xa2\xfe\x66\x36\x98\x3e\x84\xe5\x0a\x2a\xec\xbd\xd6\xf2\xd8\x74\xab\xbe\x9b\x45\xd7\x5e\xe1\x3b\x91\x15\x8a\x23\x76\x5e\xd9\xca\x16\xc6\x1a\xdb\xab\xd6\x50\x32\x83\x84\xd7\xec\x92\x09\x3f\xd0\xf6\x40\x24\x21\x38\x0d\xef\xae\x0f\xb0\x1b\x50\x1f\x3c\x9e\xf2\xaf\x6b\x7d\xef\x13\x19\xd7\x8f\xc0\xc7\x24\xc7\xee\x21\x91\xe7\x1c\x31\x81\xc4\xf6\x8d\xae\x20\x46\x80\x2c\x50\xc7\x32\xa2\xe5\x29\xe9\x33\x3e\x3b\xd2\x0c\xfb\x94\x6b\x9b\x01\x90\x1e\x07\x0a\x5a\xff\xed\x69\xf2\x86\xb8\x16\x3e\xf4\x1a\x5c\xad\x4b\xa3\x29\x81\x56\xcc\x15\xac\x87\x03\xf5\x2e\x15\x42\xff\xf8\xc2\x0d\xe3\xfc\x9c\x99\xdd\x37\xa1\xb8\x25\xef\xd9\x81\xe4\xee\xd8\x26\xd0\x31\xad\xfe\x1d\x0e\x7e\x23\x08\x6d\x5a\x20\xb0\x3b\xbc\x98\x92\xe7\xc0\x2c\x26\x7f\x1c\xe8\x07\xcf\xdb\x08\x3e\x2f\x35\x9c\x2a\x15\xc2\x20\x06\x7a\xaa\x4d\x48\x67\x78\xf0\xd4\x41\x31\xf8\x64\xd3\xe5\x9c\x0d\xf1\xdc\xfd\x82\x0c\xd1\xc7\x87\x43\xf2\x7d\x66\xfd\x7e\x39\xef\xab\x98\x68\xce\x17\x04\x41\x6e\xd6\x9c\xbd\x1e\xbf\x11\x25\x6b\x21\x27\xb5\x91\x42\xd7\x3c\x80\x0a\x5d\x73\x0f\x2b\x14\x04\x91\xdc\x1e\x96\x4c\x1d\xe8\x4e\x97\xbc\xdc\xee\xda\x85\x3b\xf1\xad\xce\x34\x42\xca\xb9\xaa\xf8\x78\xb9\x19\xa9\xf1\x72\xe3\x01\x13\x6e\x7d\x71\xaf\xae\x0f\xa9\x6c\x9d\xd4\xf7\x05\xce\x83\x72\x77\xf8\x79\x36\x99\xa9\xc4\xa3\xd9\x2f\x8f\xa5\xe2\x89\xf7\xae\x70\xc1\x3d\xab\x6b\x6b\xd6\x11\x00\x66\x85\x70\x9e\x6f\x40\x55\x0b\x04\x10\xb7\xc8\x4c\xd5\xad\xff\xc4\xdb\xfe\x61\x50\x39\xcd\x7b\x68\xb3\x86\xe8\xe8\x41\x5f\x8c\x4b\x9e\x5b\x79\x84\x6d\x45\x80\xdf\x59\x55\x03\xf8\x1e\x30\x96\xd1\x52\x67\xd8\xe5\x19\x28\x25\x96\x9a\x7f\xc9\xb1\x0d\xd9\x3a\x4e\xa3\xa8\x18\x4b\x5f\x7e\x7f\x3e\x25\xd9\x3a\xbe\xe5\x51\x74\x6b\x04\x5e\xbf\x89\xac\x88\x07\x1f\x8b\x01\x61\xcc\xe0\x31\x86\x59\xfe\x7e\x1b\x18\x79\x32\x36\x21\x77\x39\x9b\xd7\x6e\x0f\xf7\x6c\x72\xba\x3f\x0b\x53\x9d\xee\x87\x43\x92\xe3\x8a\x0e\xda\x67\x92\xcd\xf7\x0b\xcd\xa7\xc2\x5d\xef\x1c\xe4\xb0\x46\xcd\x51\x14\xe7\xec\x56\xc4\x25\x0d\x64\xaf\x38\x7b\x73\xbe\x38\x10\x82\x6c\xeb\xbe\x99\x73\x34\x3d\xdd\x9f\xeb\x66\x8d\x46\x38\xea\x4b\x97\x42\xb3\xdd\x2b\x06\x06\xf1\xdb\x98\xd0\x0d\x5b\x8e\x95\x88\x49\x6f\x39\xe6\xdb\x9d\xba\x8d\x41\xcd\x2e\x8a\xe4\xf9\x64\xb6\x62\x6b\x1e\xaf\x70\xbd\xad\xf4\xd2\x94\xa0\x39\x0f\x13\xe2\xe0\x58\xa3\xa8\x9f\xce\x36\x3a\x25\xaa\x76\x50\xf7\x20\xff\x2c\x8b\x85\xd1\xf7\x08\x2c\x51\xe9\x66\xbc\xdc\x0c\xaf\x44\x5c\x12\x0b\x2f\x49\x12\x33\x25\xa0\x0e\x90\x95\xc7\xe6\x27\x8a\xe2\x15\xdb\x78\xcd\x9a\x10\x62\x15\x59\x8c\xc1\xbe\xd1\x51\x78\xa1\x97\x28\xdd\x31\xd4\x55\x5f\x51\x25\x92\x0d\xd5\x05\x26\xf9\x2c\x9f\xef\xff\x9e\x9b\xaa\x17\x49\x49\x85\xcc\x2e\xb3\x22\xc9\xaa\x2a\x4e\x67\x66\x69\xb9\x8e\x7a\x40\xb1\xb3\xc1\x72\xaf\x06\xc9\x60\x08\xeb\x7f\x40\x0e\xbd\x1f\xa4\xd1\xcc\xda\x01\xeb\xc5\xe9\x00\xa2\xde\xf2\x74\x35\xa0\x9c\xee\xc8\x41\xe9\xf1\x89\xa2\x67\xb8\xd5\xe8\xcf\x12\xa5\xc1\xad\xa6\xb2\xb5\x0b\x55\xb7\xbb\xac\xb8\x64\xfd\x09\xed\x5c\xfd\xac\xa3\x65\xcc\xd7\xe8\xbd\x6e\xbc\xa2\x2c\xf3\x6c\x77\x21\x52\xb9\x7a\x9a\xaa\xd4\x90\x7e\x75\x80\xbe\x47\x11\xaa\x4d\x8f\xce\x83\x5d\x9e\x66\x05\xca\xe3\x2c\xe4\xde\x09\x07\x2c\x47\x5e\xa8\xa7\x08\x4d\xaf\x29\xc2\x71\x56\xea\x5e\xbe\x2e\xf2\xdb\x98\x54\x95\x72\x72\x21\x43\x08\x40\xa7\xaa\xea\x83\x8a\x55\x60\x2d\xf6\x89\x83\xf7\xcd\x89\x7d\x93\x82\xc1\x06\xfb\x2f\x5f\x89\xc4\x0c\xd7\x5d\x20\xb9\x04\x5d\x18\x99\x2d\x41\x3d\xda\xd7\x21\x29\xb7\xa9\x54\x9a\xd3\x2b\x6a\x71\x83\x05\x7a\x28\x79\x0e\xa6\x48\xcd\xed\x51\xe8\xed\x51\xd8\xed\x91\xb9\x14\xf6\xcd\x3b\xce\x00\x62\x72\xbc\xdc\x9c\x4f\x27\x93\xaa\x2a\x40\x43\xce\x24\x19\x4d\x17\x18\x8b\x6f\x4f\x59\xfd\x41\xea\x43\xce\xa0\x60\x3c\x52\xa6\x28\x42\x53\x86\x0a\xb7\x22\xec\x4a\x7d\x93\xa1\x1c\xae\x11\x6d\x4f\x94\x12\x8d\x11\xd4\x18\x00\x96\x5e\xb7\x8a\x19\x2f\x37\xa9\x7c\xa4\xe2\x92\x90\xf3\xd1\x94\xdc\xa5\xec\x5b\x19\x73\xea\x35\x8e\x0e\x60\xa4\x06\xa4\x77\x21\x79\xfa\xd9\x1c\x3f\x75\x31\x30\x67\x51\xd4\x08\x40\x4c\x6f\xa7\x83\xe8\x77\x16\x77\xa8\xd5\x6a\x74\x23\x46\x08\x68\xad\x1e\xad\x9e\xf4\xd2\x28\xc2\xed\x12\xd4\xa4\xb7\x8c\x5f\xbc\x2f\xc7\xbb\x69\x3c\x76\xcf\x17\x54\xea\xff\x50\xac\xe4\xe6\x3a\x9c\x67\x4f\xa9\x81\x35\x93\xcc\x0b\x6f\x0e\xa9\x60\x77\x08\x2d\x9a\xac\x79\x9c\xd1\x09\xa1\x3a\x0e\x3e\x00\x8b\xf4\xd0\x93\xe6\x30\xd7\x6b\x1f\x7e\xc1\x0c\xbf\xd5\x65\xb5\x70\x49\x9d\xa1\x0c\x1c\x38\x8a\x62\x8d\x81\x31\xf1\x6b\x7b\xc9\x06\x42\x24\x4d\xf9\x2e\x85\x94\x7c\xa9\x06\x74\x20\xd6\xeb\x81\xc1\x40\x6d\xa6\x49\x77\x99\x4a\x73\x80\xb4\x3b\x92\xac\xdc\xf1\x3c\x07\x9e\x6d\x40\x07\xeb\x34\x2f\x79\x00\x87\xc6\x1d\xc3\xb3\xdc\x5a\xa2\x45\xef\x72\x3c\x8c\x2c\x97\xb9\x13\x79\x9e\x15\x97\xcf\xd3\x52\x39\x5f\x54\x26\x2c\xa0\xfe\xb3\x22\x5d\x2e\xf7\x32\x55\xdc\x81\x3c\xba\xf4\x9b\xb4\x6c\x07\x2e\xc5\x76\x27\x4a\x28\x26\x78\xdc\x7e\xcf\x1d\x41\xfd\x59\xe0\x91\x94\x4a\x9e\x7e\x11\x8a\xca\x88\x8e\x00\xdd\xd1\x03\xa1\x72\x10\x55\x53\xbe\x6d\x03\x72\xf9\xf6\xda\xdc\x22\x6c\xe9\x8b\x6d\x9d\x8b\xeb\xe4\x04\x95\x5e\x4e\x4f\xba\xb0\xbd\x4c\x1d\x5f\xfb\x75\x4c\x00\xf5\xca\xe9\x8f\x3a\xb6\xc2\xf0\xe4\xd3\xc9\x64\xa2\x59\xb8\xe6\x44\x01\x6a\xba\x9d\xc5\x5d\x0d\x61\x63\xcc\x14\xd9\x60\xea\x0c\x13\x2f\xf2\x74\xf9\x79\x40\xe8\x6b\xb4\x0a\xf0\xf0\x73\xba\xa6\x33\x4f\x4b\xf5\x08\xd6\x25\x68\x82\x36\xc2\x8c\x7a\xb1\x0b\x05\x5c\xc1\x30\x21\x04\x99\x74\x35\xf9\xdc\x35\xff\x97\x32\x5d\xf2\x37\x5c\x66\x62\x15\x5c\x45\x8f\x82\xab\xe8\x4a\x39\x29\xb1\x01\x75\xad\x2a\x69\x75\x8b\x2c\x55\xad\x49\x37\x64\xf1\xdc\x91\x63\xb2\xd0\x8c\xed\x54\xac\x49\x49\x1b\x20\xd8\x9b\x2c\x06\xfb\x3a\x78\x30\x18\xf4\x04\x1c\x3c\x65\x1a\x0b\xaa\xc9\x68\xf2\xf7\x87\xb3\x01\xb0\x43\x83\x04\x53\x58\xfb\xab\x6b\x7d\x2a\x6f\xd3\x1d\x24\xa3\x69\x3d\x6b\x46\xbf\x84\x99\x6c\x8c\xe9\xb5\x9a\xe7\xe9\xae\xe4\x33\xcd\xda\xaf\x92\x12\xb1\x94\x69\xe9\xa1\xda\x84\x74\x35\xbe\xd6\x5e\xa4\x2b\x84\xe6\xf2\x50\x6a\x78\xa0\xc9\x0c\x32\x2c\x5f\x39\xcf\x82\x1d\x22\xef\x51\xb4\x63\xc6\x4b\xcd\x2d\xea\x59\x2a\xe7\x72\xe1\x58\x11\x5d\x3f\xdc\xea\x6f\x44\x19\xaf\x7d\xa4\x59\x63\x49\x30\x85\xfb\x95\xf4\xcc\x3c\x4a\x36\xc1\xb3\x1f\x01\x47\xd4\xe9\x69\xc1\x0a\x8f\x6d\xc5\x06\x14\x55\x55\x74\xb5\xce\x9f\x29\x20\x97\x7d\xe5\x91\x22\x50\x3e\x6e\x67\xc6\x9b\x27\x54\xb2\x09\x9b\xdb\xa1\x69\x13\x26\x98\x67\x0b\xbc\x45\x51\xf5\xc5\x2d\x9d\xcf\x5c\x4f\x7b\xe8\x47\xf4\x33\x6f\xea\x8e\xc3\x95\xe5\xe9\x3c\x65\xcc\x5a\xc1\x54\x55\xff\xa9\x00\xff\xd0\xde\xb8\xae\x79\xfc\x3e\x33\x4c\x17\xd1\xf7\x82\x1e\x46\x9c\xb7\x02\xd4\xce\xfa\x13\xaa\x58\x11\x4e\x8c\x1e\x60\xda\x57\x1e\x31\x20\x79\xa9\x66\x57\x22\xc6\x5f\xf6\xf9\xbd\xd7\xac\x47\x10\x2a\x7c\x52\x99\xd0\x0c\x19\xab\x94\x7d\x6d\x95\x4b\xde\xdf\xee\xf8\x4c\x19\xc7\x03\x4c\x01\x03\x90\x56\xd5\xb4\x0f\x0a\x49\xb6\x15\xce\xd8\xe2\xeb\x3e\x0b\x04\xa9\xb6\x08\x4d\xec\x06\x31\x14\xdd\x54\xa4\x90\xe2\xa7\x34\xdf\x73\x47\x9d\x9f\x96\xde\xac\xf6\x59\x71\x4a\x4a\xe6\x07\xf5\xec\xe3\xa0\xd5\xa8\xd9\xb3\x5c\xef\xae\xd2\xf3\xc0\x16\xb7\xf4\xab\x46\xd3\xd3\xec\x2c\xde\xcf\xac\xaa\x7b\x32\x21\x30\xe9\xf5\xb3\x4e\x76\x36\x99\x41\x41\xc9\x7e\x9e\x2d\x8c\x75\xa6\xa8\xad\x33\xd9\xd7\xd6\x82\x56\xcc\xd3\xe1\x43\x58\x16\x25\x63\xaa\xaa\x4a\xc6\xa4\xe5\x7c\xde\x67\xb1\x2e\x08\x87\x3c\xc1\x19\x98\x67\x0b\x42\x57\x3a\xdb\x62\x58\x98\x69\x88\x8b\xb3\x49\x55\x95\x7d\xa6\x08\xf0\x19\xba\xcc\xb8\x98\x4d\x93\x09\x59\x10\xba\xe6\xf1\x92\x82\x6b\x02\xd4\x14\x5c\xc6\x29\x2d\xa9\x84\xc5\xb0\xf2\x16\xcc\x8a\x66\x3e\x44\x6a\x19\xa8\xd2\xad\x59\x3a\x6b\x0f\xf0\x48\x26\x93\xd3\xcd\xe9\x86\x6d\xfc\xc4\xf8\xb0\xc6\x96\xb1\x66\x98\xbc\x69\x9a\x34\x96\xa7\xcf\xa0\xad\x09\xd4\x3e\x64\x1b\x7c\xd6\x43\xec\x04\x53\xcd\x01\xd5\xe3\xf1\x9e\xcf\xc4\xbe\xb4\x4f\x98\xba\xb5\x6b\x26\x4f\x77\xa7\x3b\xb6\x6b\xc6\xba\x66\xec\xe8\xce\x6f\x86\x3e\x53\x8e\xb5\x63\x78\x7f\x3b\x3c\x94\x2b\xee\xb9\x70\x46\x2a\xa9\x26\x46\xb2\x2d\xbe\xde\x78\xf7\xdc\x6f\x7e\x7a\xa4\xb9\x9c\x74\x93\xa7\x2b\x3f\xe9\xd3\x90\x0b\x9a\xab\x45\x8f\x8f\x4b\x21\x7d\x50\x8a\xa6\x30\xc4\x32\xc5\xca\xfc\x40\x5c\x0a\x00\x14\xd2\x33\x5d\x3f\x65\x4e\x4f\x1b\x2e\xc8\x2d\x91\x89\xe0\x5a\x1c\x58\x04\xbd\x32\x76\x9a\x38\xd4\xfc\x35\xcd\x6c\x99\xe7\xcc\x60\xf0\xa7\x0c\x48\x47\x53\xa7\x8b\xa7\x25\xbb\xf2\x72\xe9\x3f\x84\xe6\x4c\x58\xfe\x7c\x66\x53\x5a\xc6\x23\x11\x2e\x00\xe9\xcf\x5e\x71\xa6\x59\xe5\xd1\x48\x69\xaa\x10\xc1\x85\x46\xa3\x82\x3e\xa4\x06\x7d\x3f\x9f\x95\x49\x4a\xf3\x59\x9a\x94\x84\x1c\x0e\x9e\x40\xeb\x6d\xd3\x3d\xeb\xab\xf0\x6a\x33\x69\xe6\xa6\x20\x4e\x55\x55\x71\xb2\xa0\x3e\x74\xd9\x8b\x30\x8b\x7b\x1f\x32\x2f\xea\xb5\x80\x40\x37\x0f\xad\xf6\xb8\x35\x21\xf6\xf1\x8f\x6a\x1e\x10\xef\xfb\x33\x93\x9a\xf8\xc2\x30\x2c\x72\x52\x23\x6e\x84\x05\xd6\xaf\xe6\xba\x84\x73\x39\x5b\xf3\x58\x52\x4d\x59\x80\xc7\x51\xef\xa4\x4d\xba\x10\xe8\xf9\x78\xb9\xe9\x79\xf7\x1d\x63\x9a\x64\x39\x57\xb3\x5a\x10\xa7\x48\x22\xcf\x26\x5e\xc0\x84\x24\xfc\x10\x2b\xac\x44\xb5\xc5\x1f\xbe\xab\xe8\x06\xdd\x70\x6e\xdb\x1f\x45\xea\x2c\xec\x8a\x07\x5a\xc3\x9b\x16\x16\x8e\x0d\x0a\x1e\xd6\xe5\xbc\x58\x30\x1c\xc4\x79\xb1\xf0\x9c\xde\xd7\x80\x37\xcd\x37\xe1\x25\x18\x0f\x2c\xb7\xa1\x68\xae\xaa\xf8\x18\x1d\xef\xd6\x78\x64\xb8\xf7\x7a\xe8\xe4\x16\x0f\xeb\x9d\x1e\xd9\x8c\x9c\x4d\x7a\xa2\xaf\x3f\x0a\xf8\x98\xc5\x19\x93\x54\xb2\x82\x24\x18\xac\x6b\x3b\x9b\xa0\x47\x24\xe2\x2f\xbd\xdf\x34\xe3\x25\x9b\x41\x45\x55\xc9\x40\x41\xe2\xb1\xd7\xe8\xbf\xe9\xdf\x76\x49\x42\x6f\x38\x70\x78\xfa\xec\x48\xe5\xad\xde\xc9\x60\x3b\x3e\x21\xb4\xf0\x1d\x13\x3b\xa2\xa0\xde\xd1\xf3\x05\xb5\xc4\x48\x9b\x8d\xd4\xb7\x52\x31\xcf\x16\xcc\xab\x43\x5a\xd5\x5f\xaa\x2f\x13\x8a\x3a\x24\xd0\xa0\xa7\x1c\x0c\x8e\x6d\x43\xe0\x10\x23\x41\x1f\x7e\x6a\x29\x79\x04\xb5\x5a\x88\xb0\x5e\x06\x2e\x83\xa9\x2d\x35\x6b\x97\xea\x77\xeb\xf7\xe6\xc8\xbc\x02\x59\x4b\x98\xe8\xe7\x16\x41\xb4\xc9\x4a\x25\xe4\xed\x78\x25\x0a\x4e\x33\x76\x25\xe2\x82\xf4\xb2\x28\xca\x4c\x73\x66\x71\x31\x2f\x9c\xe0\x64\xc1\x14\xfd\xd6\x96\x41\x92\xbf\xb5\x35\x58\x5c\xd0\x9d\x4b\xd7\x30\xe4\xf3\xbb\x6d\x6a\xa7\x42\x93\x53\xc5\x18\x45\x71\x3d\xc9\x0c\xf4\xeb\x3b\x9e\xbf\xde\x81\x3a\x56\xfd\x0d\x49\x40\x59\x3a\xc6\xc0\x97\x62\xf5\x3e\xdb\x72\x2f\x8f\xfe\xb4\x59\x5c\xfa\xaa\x3a\xd6\x0c\x65\x65\x27\x13\xbb\x4d\x06\x5f\x0d\x18\xcb\xaa\x6a\x30\x44\x70\xc3\x86\x00\xa9\x43\x54\x2b\xc7\xa5\xd8\x72\xb5\xc9\x8a\x4b\x64\x77\xf9\x4a\x9f\xc8\x45\x57\xb0\xe7\x99\xa5\x1e\x7f\xaf\xe9\x67\x0c\x36\xe3\x0c\xf6\xa2\x95\x72\x99\x74\xcf\x50\x10\x97\xa7\xb7\xc9\x37\x93\x09\x18\xad\x09\x7a\x25\xe2\x0c\x26\x90\x68\xea\x75\x86\xbf\xe7\xf8\xc7\x9f\xba\xe4\x29\xe0\x90\x60\xd2\x5e\x30\x5c\xb5\x27\x1e\xda\x1c\x6a\xe1\x85\xec\x98\xa4\x45\x14\xf5\xa7\x7d\xd4\x70\xe2\xa9\x7c\xcb\x57\x22\x8a\xde\x66\x71\x36\xde\x17\x50\xf2\xc1\xee\x12\x5a\x77\x03\x65\x9b\xd9\x2a\x79\x95\xbe\x0a\xd6\x8b\x5b\x25\x77\x31\xbc\x0a\x0d\x2e\x40\xdf\xc5\xc9\x0c\x8c\x31\x12\x81\xe7\x91\x6d\x14\xe9\x44\xe3\xe5\xf6\x68\x3a\x4d\xbc\x29\xd6\x6d\x3a\x7a\x67\x24\x31\xca\xcc\x1e\x6d\xbe\xa6\x35\x68\x11\x4f\xca\x2f\xd9\xe4\x54\xd6\x27\xac\x1c\x0e\x89\x97\x72\x2e\x17\xcc\x9c\x58\xe6\xc8\x95\x0b\x73\x48\xa2\x7f\x1b\x0c\x31\xd2\x21\x2b\x71\x06\xfd\x75\xfc\xed\xbc\xfb\xa3\x97\x98\xee\xbe\x51\x8e\x3a\x44\x7a\x18\x74\xba\x7b\x86\x01\x52\xe9\xd4\x76\xa1\x6a\x36\xc0\x6c\x68\x7d\x40\xd9\x01\x68\x3d\x1c\x90\x44\x1d\xec\xf6\xee\x39\x38\x1d\x39\xbe\xc8\xd2\xb2\xaa\x34\x41\xa3\xea\xf3\x15\x3a\xd4\x3c\x74\xb1\x97\x67\x93\xd9\x68\x9a\x4c\x49\xef\x83\xee\xfd\xbf\x8d\x1e\x19\xc0\x60\x6a\x4e\xa3\x3f\x65\xcc\x21\x44\x55\x55\x5f\x37\xb7\xaa\x7e\x96\xd0\x29\x6f\x75\x7c\xb0\x14\xdf\x98\xff\xbe\x4f\xf3\x32\x86\xca\x08\x3c\x47\x95\x3c\x67\xca\x0c\x47\xec\x2d\x32\x5f\xac\xee\x05\x97\xe1\x10\x21\x28\x25\x2e\x26\x62\xc5\xf7\x68\x80\xf9\x68\xa9\xb2\xab\x4c\xdd\xa2\x97\x9e\x1a\x6e\x01\xa4\x2c\x75\x7f\x70\x89\xa3\x05\x64\x40\xba\xfc\xbb\xcb\x9e\x84\x0a\x36\x39\x15\x67\xaa\x71\xb7\x08\x4b\x3d\xa6\x6e\x82\xe6\x62\x01\x7a\x6c\x8d\x23\xa7\xe3\x66\xd2\xd7\xb5\x77\x19\x89\x05\xcd\xd9\x2f\xba\xf2\xd4\x4a\x24\xcb\x28\xb2\x94\x32\x6a\xa0\xed\x6d\x02\x98\x3a\x88\x86\x5f\x3a\xf2\x34\xce\xaa\x2a\xef\x33\x9b\xbb\xaa\xf6\xfa\x03\xe6\x53\x9f\xb6\x55\x05\x88\xa6\xe1\x35\x45\x05\x21\x34\x9b\x0b\xb7\x01\x72\xba\x77\x12\xd0\x93\x6c\x06\x17\x97\xf2\x2e\x2d\xff\xad\xf1\xfb\x8e\xf7\x41\x9f\x70\x42\x46\x7f\x9b\xca\xcf\x7c\xf5\x6e\x97\x16\x4d\x34\xe3\x20\xae\xa5\xec\x57\xb2\x20\x7e\x9e\xea\xf1\x29\x31\x08\x88\x17\x63\xdc\x5e\x02\x01\x5d\x55\x71\x3e\xce\x8a\x65\xbe\x2f\xb3\x2b\xfe\x03\x5f\xab\x19\x46\x9c\xc1\x05\x91\x98\x0f\x65\x25\xdc\x36\xaf\x12\x61\x4e\xc0\x32\x9b\xe9\xf0\x73\x9b\x51\x89\x73\xcc\x06\x84\x56\x16\x45\xf1\xf7\xe8\xd0\x04\xf6\x2e\x3a\xf7\x79\x56\x80\x39\x35\xcd\xc7\xfc\x46\xd3\xec\x99\xca\x6f\x9f\xe8\xf3\x95\xaf\x30\x5b\x38\x0e\x77\xa3\x51\xda\x5b\x8a\x42\x65\xc5\x9e\x1f\x50\xac\x02\xa6\xfd\xe3\x54\x89\x6d\xb6\x24\x36\xce\xe8\x89\xc1\x4b\x25\x5d\xb2\x1c\xb1\x64\x8b\xb3\xc9\x6c\x9a\x8c\xa6\x04\x87\x01\x18\xed\xb0\x07\x49\x63\x30\x08\xf8\xe4\xfc\x55\x4f\xd8\x92\x8e\x0a\x0a\xd6\xcc\x81\xf1\x8d\x00\xa1\x04\x21\xed\xa8\x28\x8a\xf7\x9a\xf8\x03\xc3\x70\x3d\x74\x67\x93\xd9\xfe\x6c\x92\xec\xcf\x6b\x6e\xf6\x7b\x2c\x59\xc1\x52\x30\x4c\xb6\xd7\x58\x3c\x4c\x6a\x4e\x7d\xd6\x68\x5e\xd2\x6c\x3f\x32\xf1\xd0\xde\x15\x2d\xe8\xea\x48\x5b\x57\xb3\xef\x31\x09\x56\x8c\x2e\xe5\xec\xea\xf5\x56\xea\x2f\x1d\x2b\xb5\xa8\xaa\x29\x4d\x99\x5b\xc4\x82\x66\xa4\xaa\xfa\x59\x14\x79\x41\xfd\x09\xa9\x2a\xf7\x3d\xea\x48\x33\x12\x08\xec\x8b\x75\xa6\x70\xb6\x2d\xd3\x42\x3d\x5b\x65\x4a\x1f\x52\x01\xa3\xe3\x1d\x33\xbf\x7a\xc7\x8c\xa5\xee\x35\x69\x3d\x61\xb0\xee\x66\x86\xe9\x31\x79\x67\x70\x0d\xad\xb9\xe1\xa6\x34\xb3\x05\x9d\x4d\xe4\xf9\x24\x8a\x74\x06\xc6\x34\xb9\xed\x6f\xbf\x80\x71\x99\x85\x6c\x98\xe3\xb1\x66\xae\x4c\x78\x2a\xc1\x42\x8d\x76\x84\xd5\x09\x1e\x2f\x37\x43\xff\xd2\x07\xb3\xdc\x16\x24\x64\xb9\x11\xd7\xb5\x97\xa8\x66\xec\x4e\xf2\x5d\xea\xdd\x74\xb1\x3f\x16\x4a\x35\xb9\x22\xe3\x5a\x12\xad\x20\x0b\x63\x5a\x5f\x7e\xd9\x73\x18\xa0\x47\xb8\xbb\xe2\x4f\xa4\xb7\xa0\x61\x6d\xbe\xc1\xe2\x87\x69\x62\x49\x19\xe8\x95\x90\x80\x77\x00\x70\xde\x29\x9e\x9a\x17\xc8\xd2\xb0\xf5\x38\x8b\x2d\xf3\xe8\xaa\x2a\x41\x38\x60\x27\xa5\x69\x68\x4d\x6a\x1b\x5d\x23\x39\x38\x8d\x73\x4d\x44\xb9\x67\xd3\x8d\xb8\xc6\xa3\xe7\xe7\x0d\x2f\xde\x59\x0f\xa8\x24\x8a\xc0\x77\x9a\xb9\x17\x32\x42\xf3\xaa\x2a\x20\x84\x0a\x4f\x5a\xe0\x99\x4f\xaa\x90\xca\x7a\x82\xdf\x4d\x03\x44\xcf\xd6\xa2\xcc\x8a\xcb\xdc\x9c\x7b\xa8\x82\xf8\x86\xcb\x1f\x8c\x90\x5f\x76\xdb\x0b\x0c\xfe\x9f\xff\x7b\xd0\xe1\x37\x66\x40\x08\xc2\xdd\x07\x6a\xc8\xb9\xd5\xdb\xa4\x99\x67\x8a\x5d\xe8\xff\xc3\xe0\xb6\x12\xab\x53\x0e\x83\xd4\xe4\x2b\x0f\x3f\xd1\x6b\x2f\x96\x52\x8c\x85\xda\x70\x69\xcf\x83\xbf\xd6\x72\xdf\xf2\xa3\xe4\x4b\x51\xac\x52\x79\x5b\x77\x4a\xb4\x35\x3f\x45\xd8\x49\xa8\xdb\xeb\xaa\x08\xba\x8a\xb1\xae\xc3\x22\xec\xf0\xf8\x9f\xdf\x7c\x15\xdb\x44\xae\xc3\x2e\x8f\x51\xd5\xf5\xac\x4e\xd5\x7d\x20\x2c\x80\x3f\xf4\xa7\xb6\xca\x32\xf0\x99\x50\xb2\x14\x3d\x9b\xe6\x3e\x3e\x52\xed\x9e\x86\x02\xfa\xc3\xc8\x04\x79\xb6\xc6\x64\x94\xa2\x26\x6f\x2d\x61\xde\xd7\x87\xa1\x02\x01\x03\xf8\x4e\x51\x3e\x30\xb6\x22\x21\x50\x76\x41\xa8\xf8\x93\x38\xf8\xa5\x61\xde\x06\xdd\xef\x8f\xd6\x5e\x85\xa3\x85\x0a\x38\x98\x1b\x0c\x55\xc3\x5e\xc5\x62\xe9\xcc\xf2\x11\x4f\xa4\x31\x02\xab\xbd\xe8\xc4\xc5\xc8\xe0\x9d\xfa\x27\x9b\x93\x9c\x5f\xa1\xdf\x4e\xba\xd4\x14\x52\x46\x15\x01\x3d\x1e\xef\x80\xae\xc7\x62\x13\xfb\x97\xc2\x1b\x65\x0e\x7e\xb0\x42\x82\xfe\x2d\x69\x2d\x7c\x69\x73\xc5\x00\x0b\xe8\xde\x79\xa0\xfe\x41\xae\xe4\xc0\x47\xa8\xed\x4f\x0d\x41\xcb\x6b\xb2\x4b\x58\x4a\x96\xcf\xc5\xe2\x34\x4e\x91\x60\x92\x51\x94\x02\x05\x54\x55\x8a\x31\xf3\xc5\x50\xca\x5e\xc4\x35\x82\x24\xa4\xd6\xdd\x72\x02\x42\x9d\x50\xb7\x79\xca\x60\x9d\x5c\xf1\x7c\x36\x90\x2a\x1f\x24\xd8\x1a\x9a\x81\x2b\xd5\xac\xaa\xfc\x36\x1e\xe2\x37\x59\xbc\x24\x54\x56\x15\x6a\x99\x30\x56\xcc\x56\x49\x41\x43\xa4\x2a\x73\x89\x2f\xe9\x9a\xee\xe8\x96\x6d\x34\xf5\x6f\x9e\x08\xb3\x75\xac\x09\x05\xb2\x64\x5b\xba\x66\x3b\xb6\x85\x35\xea\x7c\xef\x2f\xd9\x26\x56\xa3\x29\x35\x4f\x84\x84\x42\x9b\x98\x35\x10\xba\x62\xdb\xde\x96\x2d\xe9\x92\x5d\x1d\xd6\x26\x2f\xdd\xb1\x25\xae\xd7\x83\x59\x02\x70\x4b\x73\x00\xce\x29\x09\x5d\x82\x5b\xdf\xad\xfe\xff\xfc\x6b\x4d\x2c\xc5\x6b\x0a\x5f\xb8\x10\xb7\x16\xd4\x96\xae\x59\xe9\xbe\xce\x96\x88\x84\x82\x89\x31\x0c\xd3\x43\x04\x21\xb6\xf7\x51\xa4\x18\x5b\x45\x51\xbc\x63\x39\xa1\x71\x5f\x54\x15\x14\x7e\x26\xf4\xff\xe6\x83\x31\x81\xc5\x61\x8b\xe1\x99\x05\x89\x3e\xc1\xb6\x3a\x57\x5a\x55\x4b\x53\xcb\x79\x6a\x7e\xd4\x41\x7a\x86\x2c\xe2\xac\xe9\xea\xb9\xd9\xa2\xa8\x0d\xb2\x24\x74\x7d\x56\x0e\xa7\xb6\xcb\xba\xd5\xd0\x4e\xba\x1b\xe9\x5f\xa6\x87\x07\x42\xa8\xf3\xfd\xcb\x8b\x55\x92\xda\x07\x17\x55\xab\xac\x29\x54\x59\xcb\xd6\xb1\xa5\xea\x8c\x9a\xd9\xd2\x7f\x85\x00\x3d\x33\x34\xe9\xbd\x43\x15\x31\xd8\x37\x46\xb9\x84\xee\xf0\xd3\xe4\xa4\x5b\xf6\x47\x11\xaf\x09\xd3\x7f\x76\x84\x5e\xb1\xb0\xac\xed\x6c\xed\x6f\xb5\xe1\x14\xe9\xc7\x31\x2f\x56\xf4\x92\x2d\xad\xf2\xdb\x76\x36\xc1\x97\x39\xa8\x1b\x5f\x8a\x7b\x9a\x3d\xbd\x82\x01\xbf\x84\x79\x7e\x38\x8b\xf7\xf1\x15\x0e\x0e\xbd\xaa\xa7\xf9\xca\x4d\xf3\x3e\x2e\x29\xa4\xa5\x97\xb8\x7e\x2e\x6d\x14\x49\x9a\x59\x31\xc5\xa8\x0e\xb4\x29\xdd\x4f\xac\x56\x2f\x94\xd2\x85\x61\x8d\x97\x08\x89\x13\xde\x5b\x3e\xf0\x4a\xa6\x1c\xc0\x45\xa0\x0e\xda\x76\x3e\x0e\xa2\xa0\x17\x9a\x87\xb9\x4a\xf3\x58\x8d\x2f\xf2\xac\xf8\xcc\xa5\x15\xcc\xf7\x27\x3d\x55\xc3\x1b\x99\xbb\x08\x10\x74\xc0\xf9\x9f\xbe\xdd\x9a\x17\xed\x63\x5d\xc2\xdb\x54\xf1\xf3\xc9\xcc\x95\xc7\x4a\xae\x5c\x2d\xa1\xf3\xda\x7b\x4a\x8f\x25\xeb\x4b\x02\x8e\x44\x50\xdd\x60\x70\x20\xc7\xeb\x23\xc9\xd1\x28\xbc\x58\xee\xed\x88\xa9\xc0\x7f\x85\x16\xca\x81\xcb\x18\x37\x48\xb8\x32\xde\xe9\x21\x05\xbc\x1e\xcf\x43\xd1\x59\x93\xd0\x03\x26\x1f\x06\xdf\x39\xa1\x07\x9d\x74\x45\x6f\x44\x9c\xaa\x50\x46\x91\xaa\x86\x87\x1d\x44\x81\x74\x85\x2b\xfb\xc0\xe0\x05\xda\x67\x60\x84\x3e\xb2\xa1\x6d\x8a\xd3\xb9\x7f\x77\xa2\x42\x0f\x11\xf1\x5a\xc8\xcf\xef\x33\x00\x45\xc8\x8b\x58\x41\x2f\x69\x89\x1a\x1f\xb6\x48\xa2\x8f\xec\xf9\xc2\x7a\xfb\xa9\x23\xbc\x37\xa1\x00\x54\xb6\x05\x36\x34\xfc\x66\x32\xf1\x01\xe0\x85\x79\x1f\x3a\xd6\x68\x20\x84\xcd\xa5\x64\x28\xa0\x12\x54\x86\xbd\xbd\x7c\x5e\x77\x62\x9b\xde\x7c\x67\xc7\x18\x7d\x8e\xd0\x9c\xf1\x0c\x64\xac\xe5\xac\xee\x57\x41\x12\x10\x65\x59\x22\xad\x64\xb9\xf9\x61\xa1\xf6\xf0\x13\xec\x2a\x79\x09\x6c\xf7\x12\x7f\xf7\x96\xb3\x30\x92\x2d\x93\xbd\x3e\x65\xc3\xc0\xd0\x26\x75\xc5\xf4\xf1\x9b\x3a\x3c\x5d\x5b\xad\x7b\xe5\xdf\x03\xba\x58\xdc\xdf\x57\x55\x7f\x59\x55\xfb\x1a\x35\x62\x59\xa3\x30\xec\x7d\xd4\x88\xa5\x6f\xf8\xb9\x61\x93\xd3\xfe\x2a\x8a\x36\x67\xa9\xef\xcd\x73\xc5\xd2\xf9\x66\x51\x57\x37\xdf\x2c\x7a\xab\x28\xca\x8c\x45\x60\x3d\xaf\x40\x5d\x3a\xa7\x5c\xe5\xac\x48\xfc\xb1\xb2\x7a\x86\xde\x98\x9f\xb1\xfb\x06\x3d\x8a\x24\x8c\x39\xe4\xa0\x45\xa3\xf8\xba\xde\xbf\x7f\xc3\xd8\xa4\x31\x2d\x46\x2b\x65\x38\xf4\x56\x97\x5b\xaf\xe7\x4e\xa7\x15\xb6\x64\xb8\x7a\x41\xa8\x0e\x7a\xa8\xe0\x17\xcf\x4a\xd8\x3e\xe8\x94\x71\x87\xdd\x01\x22\xfc\xd8\x84\xa7\x6a\x38\x24\x0a\x54\x1e\xe7\x6a\x41\x11\x0f\x06\x2c\x46\x3c\x0c\x85\x36\x11\x2d\x96\x48\x40\xd7\xa8\xc9\xe0\xbe\x3d\x38\x21\x2c\x90\xa2\xf5\xef\xd5\x94\x6d\xbb\x57\x2c\x9a\x51\xa3\x5e\x4f\x53\x26\x67\xa3\x69\xa2\x46\xb1\x77\xe8\x64\x45\xc1\xc1\x66\x63\x36\xe5\x5f\x27\xe0\xf8\xac\x64\xea\xb4\x3c\x4f\x4f\x47\xa3\x12\xb6\x52\x79\x66\xf1\x12\xdd\x48\xe1\xa7\xd1\xf1\x00\xa5\xee\xd2\xc8\x8d\xf2\xd0\x33\x5b\x5f\x56\x15\xe6\x77\xfb\xdd\xaa\x55\x99\x6d\xb1\x11\x71\x6e\x26\x55\x5f\x3f\x9e\x77\xad\xf4\xe2\x5d\xf6\x07\x27\xa7\x86\x44\xd6\x34\xdd\xf9\x1e\x84\x8e\xac\x1c\x4d\x69\xc1\xf6\xb5\x48\xd1\xca\xa7\x69\xca\xc4\x79\x61\x0f\xb4\x67\x59\x5c\x50\x31\x9a\x12\xaf\x51\x4e\xa6\xc2\x52\xbd\x4c\x70\x64\x69\x4a\x92\xbd\xfd\x20\xb4\xc0\xc3\x48\x50\x15\x3a\xde\x87\x25\x88\x86\xb6\x34\xb5\x7a\x63\x9a\x6e\x1d\x4d\xab\x4a\xc0\xd2\xab\x2a\x71\xce\x32\x0f\x14\x4e\x9c\x59\x27\x8a\x3d\x19\xee\x88\xa0\x76\xe8\xfc\x70\x28\x0e\x28\x0b\x8f\x8b\xfa\x28\x16\x84\xa6\x9e\xf5\xba\x0a\xb0\x7e\x9c\x8f\xd0\x1a\x70\xcb\xb3\x1c\x0f\xd3\x22\x28\xa8\x8f\x1c\x35\x6a\x17\xd0\x84\x94\x5a\xd6\xd7\x7d\xe8\x9e\xb0\x56\x05\x0f\xc3\x0d\x00\x09\xf8\x2b\xb7\xca\x3f\x9a\x89\xda\x49\x3e\xa0\x03\xcd\xc8\x50\xc9\xd0\x53\xf2\xb8\xe9\xdd\x77\x76\x24\x3c\x56\x24\x51\x16\x6f\x13\x42\x68\xc1\xee\x80\xc3\xda\xa5\xb2\xe4\x2f\x0a\x15\x4b\xdf\x58\x98\x18\x93\xa7\x76\x2c\x0a\x02\xdd\xdb\x4a\x56\xbe\x4a\x5f\x19\x33\x30\x52\x55\xf6\x13\xa9\x54\x23\x76\x0b\x9d\x32\x12\xea\xc9\x39\x56\xfe\x08\x0b\x31\xaa\xaf\x9a\xd0\x32\xd7\xb3\xba\x0e\xe7\xe4\x3e\xbf\x7f\x23\x28\x7d\xd4\xf6\xbf\x51\x97\xb6\xfe\x53\xa5\x99\xc9\xee\x28\xae\x39\xdb\x3b\xe5\x99\xf0\x73\x2b\x1f\x35\x53\x7d\xb7\x4d\x77\x89\x9b\x54\xd0\x95\x84\xc1\xf1\xc2\xe0\xfb\xd0\xf0\x39\xc7\x5b\x16\xfe\x50\xb8\xb1\xef\xbf\xaf\xfc\x72\x5e\x2c\xba\xeb\xd0\x31\x58\xcf\x3d\x75\x80\x9a\x9e\xa9\x86\xb8\x83\xfe\xaf\x56\x43\x51\x24\x9f\xf4\x27\xde\xb9\xbd\x55\x2d\x41\xeb\x85\x0e\xba\x44\xba\x0e\x22\x3c\x5b\x2c\x55\x2b\xae\x1c\xc1\x8e\x6c\xd1\x78\xa4\x35\xab\x08\xc0\x87\xa0\xc4\x8b\x96\x3f\x99\x7b\x10\xb1\xd4\x39\x43\x50\xac\x57\xba\x22\xf3\x73\x88\x20\xa1\x33\x99\x80\x67\x7f\xcf\xd4\xc2\xf4\xc1\x50\x76\xef\x33\x14\x92\x40\x1f\x24\xe9\x15\x51\xd4\x47\xc8\xa8\x59\xc1\x50\xb0\x1b\x45\x85\x87\x09\x0b\xd0\x69\x05\x95\x14\xd1\xb8\x9d\x11\x4b\xe8\xd6\x9c\x18\xdb\xae\x2e\x1d\x1b\x5d\xa5\x66\xba\x14\x09\x1c\x08\x74\xe0\x77\xf1\xeb\x93\x5f\x94\xd5\x09\x86\xd6\x61\xe7\x8c\x23\xae\x8c\x15\x08\xe4\xc5\x00\xc7\xab\x20\x35\xac\x3f\x40\x66\x20\x56\xc6\x6f\xa2\xe1\x82\xb0\x76\xf7\x0c\x50\x5d\xc5\x01\x71\xa0\x4d\x91\x3b\x15\x17\x58\x99\x59\x4f\xa0\x44\x88\xbe\xd1\x92\x82\x4a\xbe\x34\xaa\x98\x7a\x9d\x65\xde\x36\x31\x0e\x5e\xed\x7a\xca\xc6\xf8\x83\x6e\xd2\x12\xf7\x61\x99\xf4\xa7\xde\x1a\xbb\x50\xfe\xfb\x82\x32\xc9\x41\x4f\x46\xdf\xb6\x70\xfd\xd0\x9c\xc9\x61\x5c\x00\x82\x53\xad\xd9\x04\xf5\xb4\x01\x58\x66\x25\x33\x71\xf3\x7c\x91\xc4\x6a\xac\xdb\x0a\x00\x07\xfa\x87\x81\x78\x44\x9a\xec\x88\x29\x2d\xa1\x6a\x5c\x37\xb7\xaa\x8e\x42\x7d\x77\xba\x3d\xcd\x58\x11\x45\x70\x00\x1a\x90\x79\xbb\xd7\x36\xb6\xbc\x22\x8a\xea\xd0\x6b\x84\x7b\xcd\x6a\x74\xbd\x46\x7a\xcd\x38\xa0\xbe\x51\x23\x13\xcb\x7a\xf5\xa3\xa0\x6a\x2a\xf8\xc2\xf5\xe2\x3a\x55\xc6\x9a\xe4\x99\x9c\x96\x8e\xd0\x1d\x4d\xc1\xb2\xc6\xc8\xca\x53\xc4\xb3\x49\xe7\xe5\x70\xba\xe8\x01\x57\x92\x5e\x94\x71\x5e\x63\x51\x1a\xee\xfa\xfc\x61\x14\x09\xa4\x83\x5d\xec\x10\x90\x2a\xc9\x83\x87\x23\x03\x35\x7b\x30\x29\x9c\x84\xd5\x86\x03\x57\x04\xe0\xc0\x38\x1b\xe1\x48\xc3\x86\x89\x4b\x76\x44\x5d\x85\x82\xfa\xba\x82\xb5\x06\x4f\xba\x16\x86\x93\xee\x99\x55\x4e\x5f\x32\x50\x56\xa7\x2b\x4f\x7f\x5d\x8f\xde\xd7\x8c\xe5\x4e\x05\xb8\xa6\x1c\xd1\x95\xff\x3f\x4e\x37\x7a\x24\x00\x15\x79\x1f\x45\x4f\x84\x79\xbe\x31\xc8\x60\xc6\xbc\x08\xa1\x36\xc0\x97\xf0\x70\x4f\xc8\x29\x19\x8d\xf6\x30\x01\xa7\x41\xd4\xf2\xcc\x7c\x3e\x2b\x56\x7f\xaa\xac\xa5\x2e\x6b\x38\x04\x86\x15\x90\x03\xff\xcb\x82\x94\x2f\x51\x0b\x1f\xcb\x1a\xf9\x99\x48\xc6\x72\x1f\xeb\xed\x98\x4d\xb8\x85\x75\x13\xc7\xa0\x87\x89\x91\x10\x3d\x12\x80\xd5\xb2\x24\xad\x65\xd3\xcb\xd8\xda\x3e\x84\xad\xe7\xce\x3c\xa0\x98\xad\xdd\x42\x4a\x26\x8b\xe4\x93\x42\x6e\x27\x0b\x8b\xea\x6a\x55\x55\x7d\x52\xf8\x74\xa1\xe9\x91\xaa\xca\x90\x10\xa9\x2a\xdd\x6b\x54\x94\xef\x2d\xd9\x9e\xee\x47\x6c\x4a\x57\xd6\x22\xe1\x00\x63\x33\x9d\x02\x69\xdc\xb6\x58\x36\x34\x55\xb9\x94\x9c\x17\x55\x65\xde\xa8\xe1\x6b\x9c\x8b\xcb\x6c\x99\xe6\xbf\x3c\x7d\xf3\xa2\xaa\xda\x61\x2e\xdd\x8a\x5f\x65\x4b\x8e\xc9\xfa\xbe\xe5\xa9\xde\x7e\x80\xc1\xfc\xbd\xbb\xb0\xbe\x17\x1e\x09\x08\xa4\x5f\xb9\x4b\x8b\x9a\xf6\x3b\x7a\xb8\xd0\x42\x8f\x90\xa2\x13\x3a\x3d\x3a\x42\x4e\x27\xc6\xb8\x4f\xd0\x5b\x11\x1f\x3c\x46\x86\x88\x3b\x9f\x1e\x6a\x3f\x11\x27\xca\xdc\x93\xed\xbe\x3d\x68\x75\x8d\x16\x8d\x64\x1f\x5a\xc9\x74\x88\x3b\xf6\x35\xf9\xa9\xa0\xd2\xaf\xa4\xa1\x37\x15\x4e\xd8\x57\x92\x2a\xb1\x4b\x94\xde\xdb\x5f\x15\x0e\x05\xc3\xec\xf9\xaf\x0a\xbd\xdd\x6b\xac\x7e\x7b\xdb\x10\x64\x8b\xef\xf6\x00\xbe\xb1\x62\x05\x73\xf2\xe4\x26\xac\x7d\x8d\x8f\x1d\xaf\x59\xde\x5a\x99\xc4\xd9\x36\xdf\xb7\x30\xf3\x63\x83\x7c\xf0\xf6\x5b\x7f\xaf\xd9\xb8\xac\xaa\xfa\xb8\x28\xa3\xa8\x6f\x56\xa5\x91\xfd\xec\x5a\xfb\x2d\x68\xca\x7c\xb2\xe8\x65\x6c\x37\x33\xd4\x3a\xca\x2e\x0d\x71\x8e\x0f\x55\x81\x77\x6b\x18\xb7\x1d\x48\x31\xcd\xa8\xed\xcc\xa8\x1d\xf4\x46\xd2\x15\x6e\xc1\x9d\xed\x6e\x84\xe7\x24\x24\xbd\x62\x99\x3d\x4f\xbd\xd0\x4b\x16\x6f\x87\x57\xe4\xc1\x43\x7a\x61\xef\xb6\xc6\x05\x02\x87\x14\x9e\x74\x17\x6e\x68\xa2\xa8\x1f\x5f\x9e\x5d\xcc\x37\x0b\x02\xa7\xdf\x29\x98\xb1\xb3\xcd\xec\x62\xbe\x19\x4d\x17\xc9\x84\x7e\x62\x3a\x96\x5e\x1b\x16\x24\x76\x23\xbc\x9a\x99\xb1\x49\x70\xb0\x88\x6d\x8e\xd7\xeb\x18\xdf\x14\x30\x31\xe4\xb7\xe3\x19\x24\xd6\xe3\x70\x6b\xc7\xe0\xd3\xa1\xd7\x3a\x12\xe2\xeb\xf1\x85\xb8\xdc\xc3\xd5\xd0\xfb\x13\xef\xa8\x90\x43\x2a\xb1\x63\x5b\x7a\x3d\x96\x46\x46\x7f\xe5\x76\xd4\xf5\xc1\x5d\x2a\x04\x4b\x06\xca\xc0\x92\x0b\xac\x24\x84\x62\x7f\x4b\xbf\x3b\xa5\x11\x32\xeb\xf6\x66\xb3\x12\x6a\x00\xf5\x16\x37\x81\x10\x6a\x7e\x97\x76\x32\x0f\xef\x78\x03\xc5\x22\x2b\x32\xd5\x81\x92\xa4\x36\x59\xa9\x0f\x0d\x34\x64\xa3\xc6\xb5\xaa\xc1\x9b\x62\xef\x79\xec\x3c\xa3\x5a\xcb\x40\xeb\xf8\xa5\xe1\xdd\xa1\xb4\xde\xad\x94\x88\x25\xe5\xa8\x40\xd3\xa9\xa2\x49\x6e\x39\xbb\xb3\x66\xe7\x49\x7f\x8a\x46\xe2\xe0\x91\xc8\x69\x1a\x94\x31\x39\x50\xd5\x65\xe5\x08\x72\xd4\xd0\x6e\xf2\x98\x31\x64\x36\xbe\x4a\xf3\x3d\x67\x6d\xc3\x76\x7a\x29\xe2\x8c\x10\xf7\xc0\xd4\x97\xe1\xf6\xcf\x4a\xfe\x44\xec\x6e\x9f\xec\x2d\xef\x64\xf4\xf2\x6e\x78\x2c\x49\x2f\x6c\xff\x04\xdb\x8f\x24\xef\x81\x82\xc5\x3a\xc0\x03\xdf\xee\xf8\x4c\x8e\xcb\xa0\x57\xb5\x16\x20\x18\x13\x09\x92\x34\x7b\x63\x1b\x5d\x1c\x69\xf3\x21\xa8\x00\xdc\x0d\x74\x18\xa7\x4f\xc8\xe1\xc0\xbb\xfd\x8e\x16\xb4\x8e\xf0\x60\x53\xc1\x10\x32\x6b\x80\x1a\x01\xfe\x17\xfa\x98\x45\x0b\xfc\x40\x2c\xa7\xcf\xb0\x73\xf6\x5f\x9a\xa6\xf4\x4d\x4e\x61\x86\x02\x1b\x54\x0b\x1a\xba\x13\x79\x1e\x7b\x7e\x6b\xd1\x16\x3d\xc4\x5a\x30\xcb\xa7\xaa\xc0\xa8\x5e\x82\x23\x82\x4e\xa3\x7c\x3d\xf0\xe3\x75\x5a\xaa\x37\x50\xaa\x57\xac\x1e\x20\x5a\xba\x2f\xb1\xbb\xb5\x9f\xb5\x93\xac\x8e\xca\x0b\x72\x57\x4a\x60\x63\xaa\x0a\x5a\x51\x7c\xa9\x72\x84\xe3\xb0\x35\x7b\xc2\x1e\x3a\xc0\xd7\x6b\x20\x0d\xfd\x3a\x94\xa9\x43\x91\xaa\x7a\xac\x39\x3f\xaf\xd5\x68\xa0\x0b\xeb\xa4\x99\xcd\x5a\xe8\xc2\x26\xc1\xc3\x27\x1e\xac\xa5\xd8\x0e\x48\x4f\xd5\xa6\xbd\xa0\x54\x64\x3f\x70\xa5\x39\x97\xb9\x5e\x0c\x33\xcf\x7d\x1c\xcd\xa4\x13\x09\x6a\x6e\xef\xf9\x0d\xb0\xa0\x7e\x15\x4a\x0c\x08\xbd\x73\xa8\x8a\x49\xa0\x52\x61\x8b\x1b\x1c\xc8\xa1\xb3\x1b\xbc\x58\x85\x9d\x08\x9a\x1a\xdb\xf5\x40\xff\x5c\xa3\x61\x11\x01\x1e\x50\x53\x2d\xe9\x08\x34\xd0\x72\x4b\x3b\xdc\xab\xeb\x23\xce\xb2\x48\x9e\x44\x5c\x5c\xa1\xfa\xea\xcf\x99\xda\x60\xef\xad\xaa\xfa\x13\x1c\x95\xb6\xc2\x2d\x3e\xec\x13\x80\x76\xb7\x1b\xea\x18\xe9\x95\x7a\x5e\x01\x8e\x91\x5e\x7a\xc7\xbf\x17\x3b\x5f\x33\xc6\x7b\xa4\xe9\x72\x83\x36\x9a\x4e\xc0\x5e\x69\x37\x4c\xe1\xca\x16\xf6\x15\x7a\xac\x40\x43\xef\x4f\x15\x85\xb2\x30\x28\x09\xe8\x05\xd4\x0f\x19\x99\xd7\xe8\xda\x3a\xe4\x40\x03\x65\xb1\x23\x77\x89\x67\xcb\xd2\xfb\x4d\xf8\x0f\x77\x28\xa8\x28\x85\x2c\x09\x85\x18\xdf\xd5\x0a\x6a\xf6\xe2\x27\xbe\xa2\x23\x0e\xf3\x7b\x70\x3c\xe2\xdf\x49\x9e\xc6\x8d\x49\x80\xda\x36\x1d\x69\x0c\xa8\x1c\x8e\x85\x71\xc7\x48\x25\x2f\x79\x78\x11\xc2\xa5\x85\x26\xf2\x85\x3e\x73\x5f\xf2\x62\xff\x86\xc3\xfc\x98\x9e\xe9\x5b\xdb\xad\xa9\x8c\x15\xf6\x95\xaf\xd3\xd4\xc0\xe8\xb3\xfb\x87\xba\x11\x65\x67\x0d\x53\x99\x9c\xc5\x8a\xfd\x5b\x44\x51\xec\xe9\x95\x8d\x42\x25\x34\x80\xc2\x88\x25\x2b\x82\xeb\xd1\x27\x41\xf9\xd7\x84\xcc\x06\xa3\x41\x22\xab\xaa\x99\xaa\x17\xdc\xdc\xe6\x66\xc9\x69\xd1\x74\x20\x7d\x29\xe2\x20\x25\x22\xc9\xc3\xd9\x1e\xb7\x21\x05\x72\xf3\xbe\xa4\x69\x9e\x46\x5f\xbb\xea\x1b\x0c\xee\x2d\x0d\xb5\x42\x7b\x47\x51\x0d\xd4\xe1\x40\x2f\xb9\x7a\x9e\xf1\x7c\xd5\x06\xe1\x3a\x09\x6a\x3c\xd0\x72\xbf\xdb\x09\xa9\xca\xf7\x62\xbf\xdc\xb4\x93\xf7\xa7\x07\x0a\xbd\xf6\xa3\xb2\x75\x3c\x28\x84\xd1\x03\xeb\xbb\x65\x6c\xcf\x06\x69\x50\x57\x34\xa1\xbe\xad\x2a\xf4\x2c\x14\x0e\x17\x51\xf2\xf6\x2e\xec\xbb\x75\xb6\xbd\x4c\xd5\x72\x13\x7f\x2b\x00\xd5\xeb\x22\xdf\x07\x40\x5f\x61\x16\x1d\x1b\xdb\x25\xfa\xc6\xea\x3c\x35\x93\xb7\xf7\xc1\xb1\xa5\x3f\xd1\x45\x2d\x79\x76\xc5\x57\xcf\x9b\x7d\x86\x3c\x65\x2e\xae\xf1\xf6\x3c\x50\xfb\xbb\xfb\x30\xed\x71\x1f\x99\xa2\xaa\xdc\x27\xbe\x8b\x37\x46\x4c\xc7\x59\x95\x81\x86\xe7\x72\x73\xe4\x83\x91\x40\x63\x11\x72\xbf\x3d\xfa\x9c\xb7\x97\x7b\xbb\x49\x9a\x68\xc4\x76\xa9\x10\x31\x63\x42\x55\xd0\xb2\x87\x93\x06\x96\x9d\xbd\x74\xaa\x8a\xcf\x62\xd5\x82\xdb\xf0\x9a\x40\x92\x98\xb7\x0b\xfc\xcf\x09\x95\xc4\x5c\x43\x47\x47\x0b\xaf\x9e\x60\x72\x2d\x8d\xed\xb6\x0a\x68\x09\x74\x9f\x3a\x60\x9c\xd1\xc0\x02\xfb\x97\x88\x15\x89\xa2\xbe\x8c\xa2\x7e\x88\xe7\xa1\x27\x23\x84\x06\xe2\x47\xa0\x81\x6c\xa1\x9f\xf9\xed\x3b\xfe\x7b\xe8\x2c\xae\xd0\x2c\x9c\xde\xae\x70\xae\x81\xba\x94\x6e\x44\xc7\xf1\xe6\xb2\x19\x2e\x16\x29\xc0\xd6\xb6\x66\xac\xa8\xaa\xab\x28\x7a\x30\xff\xb8\x5f\xff\xb7\xc9\x64\xa4\xff\xac\xd7\x8b\x07\x88\x6e\x53\x90\xb6\x00\x1e\x95\x8e\x61\xf5\xc7\xd6\x55\xa6\x03\x91\xf1\xa1\x0d\x4a\x9e\x3f\x17\xf2\x49\x3d\x70\x35\x50\xf4\x72\x93\xca\x27\x08\x02\x84\xb0\x01\xff\x7c\x38\xf9\xba\xcf\xb2\xaa\x92\x70\x8e\x0e\xfe\xc7\xff\xff\xff\x1c\x10\xfa\xcf\xff\xfc\xcf\xff\x64\x2c\x23\xfe\x21\x62\x2b\xb6\xab\x99\xdf\xf0\xe5\x13\xb1\xdd\xa6\xc5\x2a\x1e\xec\x8b\x95\x18\x90\x83\x87\x1b\xe4\x34\x28\xb3\xc2\xf9\xdd\xa5\xd6\x6c\x8f\x9c\x96\x67\x79\x14\x49\xbf\x3d\x25\x18\xa7\x05\x01\xa7\x64\x38\xb4\x2f\xb5\xb0\x9c\x4d\x7b\x5a\x2f\xe0\x80\xea\x56\x18\x03\x90\x92\x50\x5b\xe1\xc8\x70\x12\xfb\x7a\x3d\xcc\x06\x5f\xe1\x6f\x3e\x40\x8d\x29\xd7\x28\x7d\x57\xe8\x3b\xc2\xc2\x19\x01\x5b\x71\x3e\x9a\xce\xcc\xd4\xb3\x7d\x70\x6b\x25\xfe\x67\xe1\x57\x11\x45\xf1\xfe\x28\xcd\xd6\x8a\x61\xbc\xa6\x2f\xfd\x48\x94\x9b\xf2\xff\x19\x7a\xd3\xc2\x57\x51\x74\xd8\xad\x37\x2c\x5f\xb5\x8e\x37\x6f\x73\x9b\x15\x8a\x7b\xdf\x5e\x43\xe1\xe6\x27\x07\x2a\x8a\x7f\xf1\xdb\x37\x92\x97\xc1\x51\xf9\xc5\xcb\xcb\xb8\x92\x75\xac\x88\x2e\xc8\x5b\x9c\xf7\x70\xdd\xc8\x72\x4b\x4f\xb3\x57\xd5\x27\x46\xce\x72\x09\xbc\x10\xdd\xb3\xa2\xcb\x7d\x7a\xb6\x8e\xf3\x28\xea\x2f\xc9\x9d\xf4\x2e\x2b\x9f\xe1\x7c\xed\xb7\x23\x8a\x46\x53\xa6\x2b\x33\xa8\x4c\xfa\xe0\x49\xb3\xa2\x04\xe8\xf8\x7f\xa9\x58\xd2\xbf\x71\x12\x43\x3c\x7d\xc5\xe3\x9c\x68\xfe\xb4\x87\xca\x30\x96\x31\x5c\x96\xa5\x9e\x47\xea\x39\xad\x0b\x63\x7a\x47\xc2\x59\x87\x12\xef\xc0\xe0\xc8\x7d\x91\x7c\xf6\xd5\xcd\xef\x29\xaf\x06\x09\x9a\xf8\x6a\xbe\xf8\x65\x14\x84\x63\x8b\xc3\xfb\x61\xb4\x06\x9a\xf9\x1b\xa3\x14\xec\xf9\x54\xc0\x04\xbf\x8c\xd6\x48\x09\xdb\x14\x7f\x8c\x60\xe3\x24\x27\xd3\xc9\x64\x72\x7a\x52\xfb\xab\x80\x6c\x62\x36\x90\x97\x17\x69\xfc\xf0\x9b\x6f\xe8\x49\xfd\xdf\x78\xf2\x0d\x19\x24\x03\x25\xd3\xa2\x44\x31\xde\x80\x0c\x07\x0d\x64\xa4\xd3\x13\x44\x1e\x1a\x99\xf6\x4f\x5a\xf1\x6d\x8c\x24\xb1\x4b\x97\x99\xba\x4d\x74\x0d\xa7\x27\xeb\x2c\x57\x5c\x26\x27\x69\xbe\xdb\xa4\xb1\x89\x63\xdf\x90\x53\xcd\xf9\xa2\x18\xb1\x96\x53\x8b\x3c\xff\x80\xe4\x6b\x08\x2b\x59\x46\x51\x90\xe8\xbd\x40\x0c\xcf\x1d\xa8\x6c\x04\x87\x73\xa7\x60\xa7\xaa\x62\x2b\xbd\x08\x84\x1a\x27\x03\xe4\xe4\x9a\xf7\x9c\xbe\x5d\x8b\xf6\x61\x5e\x2f\x51\x44\x46\x7d\x9f\x6d\xb9\xd8\xab\xb8\x18\xaf\xb8\x42\x8b\x09\xac\xf3\x91\xde\x7b\x6e\x77\x5e\xc5\x84\x5e\x93\xbb\xdf\x33\xeb\xf6\x6f\xeb\x43\x97\xfe\x3b\x8b\xb1\x6f\x74\xb0\x15\xfb\x92\xef\x77\x03\xba\x25\xb4\xe4\xca\x16\x7f\x49\x1f\x4e\xc8\xa1\xf7\x6d\x67\x42\x83\x1b\xe9\xa7\xfe\xc6\x47\x60\xb8\x8a\x3d\x59\x7d\x56\xf3\x32\xf8\x66\xe2\xb8\xf7\x8e\x41\xa3\x02\xef\xa4\x61\xcc\x67\x66\xf4\x92\xc1\x80\xf4\xec\x48\x0e\xfe\xc7\xff\xf1\x7f\xd5\x52\x21\x41\xfd\x91\xe5\xa0\x5f\xa9\x73\xd3\x66\x9d\x6c\xea\x07\x3d\x2b\x56\x4c\xd4\x77\xd4\x3d\x43\xee\xbd\x8f\x5e\xc6\x46\xd5\xaf\x6b\xe6\x34\xad\xd4\xbd\xd1\x37\xb4\xb9\x55\x57\xd4\x4a\xbb\x8b\x1a\xc8\xb6\x1c\xfb\x80\xb8\x71\xd7\x01\xc7\xf6\x96\x15\x6c\x8f\x28\xe8\x54\x63\xb1\x04\xe6\xbe\x67\x80\x69\x69\xe9\x4f\x7b\x57\x5f\xeb\xce\xc2\x73\x57\xb3\xec\x28\x0a\x07\xee\x7c\x12\x45\x30\xc6\xcc\x5f\xd5\x33\x38\x30\x97\xd6\x6e\x49\x2f\xc5\x58\x92\x84\x0f\x87\x67\xd3\xc9\xac\x6b\xa9\x32\x6f\xf5\x94\xf4\x9b\xc9\x84\x24\x8d\x5d\x75\xe8\x7d\x39\xdf\xc3\xc9\x84\x1c\x0e\x9a\xb0\x47\x7a\xcf\x58\xd6\x06\x77\x0c\xaf\x2a\x9f\xa0\x01\xe8\xe1\xda\xe7\x41\xf2\x49\xd0\x82\xf3\x55\x69\x30\x62\x1c\x30\x5a\xa2\x99\x23\x5f\x6e\x4c\xe8\xcb\xbf\x28\x45\x36\x22\xe4\xf1\x2a\xbb\x32\xfe\x95\x9e\x66\x57\xb5\x8c\x38\xfb\x5f\x2f\x23\x6e\x48\x43\xa5\x75\xf3\x55\x33\xc1\x03\x6b\x5b\xa2\x53\xfe\x55\x91\xaf\xba\x4f\xe4\xab\xba\x44\xbe\x60\x60\xbe\xe3\x32\x85\xca\x7d\x1a\xae\x29\x0b\x76\x26\xf1\x13\x7d\xd1\xd2\x2f\x36\x5d\x93\x3d\xa8\x28\x16\xc2\x8b\xf6\x77\xa4\x03\x2f\xb4\x09\x3a\x0a\x47\x29\xc0\x8e\xb6\xe3\xca\x0e\x40\x52\xda\x96\x9a\x7b\x9a\xfd\x85\x7d\x1a\x08\x1e\x03\x64\xa0\xe6\x81\x6a\x6f\x0d\xd9\x73\x57\x12\x5f\x0a\x7d\x5c\x66\x6f\x54\x31\x9d\xc9\x53\xba\x54\xd9\x15\x7f\x86\x90\xe3\x3d\x10\x8e\xfb\xc7\x79\x38\xf2\xed\x4a\x43\xc7\x30\x54\x38\x86\x9d\xc0\xc9\x7e\x38\xbc\xe6\x3a\xfc\xdb\x2c\x2e\xfe\x9c\xa0\xda\x88\x40\x8b\xfb\x25\xb9\xdc\xd3\x44\x4d\x55\xda\x33\x07\x6c\x2d\x99\xe5\x79\x52\xdf\x7f\x3a\x49\x52\x50\x28\xe5\x29\xfc\x3e\xd4\x18\x1a\x35\x25\x57\x8b\x94\x04\x8a\x88\x7f\xc8\x0a\x1e\x07\xb8\xa1\x96\xe6\x2f\xa8\x27\x13\x74\xf8\xa1\x23\xc7\xb7\x90\x9e\x00\xf7\xd2\xe2\x8c\xb9\x58\x54\xc0\xaf\xe9\x76\x9e\xb3\x57\x00\x40\xe5\x43\x8d\x0a\x00\xec\x0a\x42\x86\x75\xa9\x4e\x42\x1c\x0e\x8f\x75\xb9\x1b\x0e\xac\x57\x97\x1e\x00\x33\x54\x9d\x05\x34\x44\xcc\xbc\x76\x1c\xe8\xca\xe8\x49\xc0\x2a\x80\x92\x98\x1c\xbb\xb1\xac\xaa\x07\x1f\xf7\x0f\x27\x93\x0b\xc3\x91\x62\x12\x14\xf9\x7b\xd5\xde\xb3\xa8\xd0\x47\xcd\xaa\xaa\x14\x22\x9e\x3f\xa9\xdb\x15\xcb\x50\x78\xcd\x64\x38\x88\x56\x9a\xad\xd7\x9a\xb7\x72\x94\xd8\x2f\x37\x1d\xd2\x7f\xe3\x33\xde\xab\xe0\x59\xb1\x8a\xbd\x8c\x1d\xaf\x33\xca\x17\x11\xf4\x65\x20\x23\x88\x22\x94\x6a\x98\x2b\x40\x93\x6e\x1f\x54\x0c\xc7\x77\x20\xae\x91\x31\x42\xf0\x7b\x43\xbf\xbb\x1d\xd0\xcc\x7d\xea\x4a\xb3\x3f\x27\x92\x77\x62\x22\xda\x77\x66\xe5\x27\x46\xc2\xe1\x64\x6e\x81\xd4\x83\xf2\xe3\x32\x67\x30\xee\x30\x5c\x9d\x07\x9f\xe4\xc1\x19\x46\x51\x1c\x9b\xa2\xaa\xca\x01\xdf\xeb\xf2\xde\xe0\x76\xf1\xe4\xa4\xd4\xc5\xbd\xdc\xe7\x2a\xdb\xe5\xdc\x3b\xa7\x39\x21\xd8\x8e\x66\xbe\x76\x27\x6b\xfd\xda\xa0\xf0\x5a\x32\xde\xda\xb0\x05\x7b\xc2\xdd\xc0\x70\x83\x02\xf1\x0a\xdd\x7d\xa6\x1e\x6c\xa8\x3e\x6b\x83\x94\x6b\x8b\x1e\x6a\x7f\x9b\x74\x3d\x0b\x24\x39\xbe\x48\x57\x55\xd5\xcf\xaa\x2a\xc3\x9f\x13\x40\x83\xba\x44\x9c\xa8\x1a\x71\xcd\x46\x5c\xb9\x08\x00\x40\xb3\x5a\x61\x8f\xea\x4a\x5d\x16\x9a\x86\xc1\x90\x01\xe4\x41\x55\xe5\x80\x20\xba\xa6\x86\xe6\x8c\xe3\xad\xf7\x44\xec\x0b\x15\x45\x35\xa4\xaf\x13\xd8\xa0\x81\x49\xdf\x94\xb3\x67\xe5\xbc\x86\x4a\x59\x38\x6d\x8e\x25\xdb\x83\x6a\xe9\x0c\xff\xcc\xf1\x4f\x9d\x30\x81\x80\x5e\xca\xee\x0a\xb1\xe2\xc9\x72\xbe\xac\xe3\x28\xaa\x62\xfb\x81\x0f\x17\x23\xef\xeb\xeb\xc5\xc1\x42\x35\x9b\xfc\xe5\x7c\xb2\xf0\x55\x5a\xe7\x0f\x5d\x29\x93\x43\x4f\xc9\xdb\x3b\xe4\x93\x1f\x09\x83\x92\x49\xad\x9f\x5e\x9a\xd6\x3f\x74\x44\x20\x11\x5e\x81\x0e\x7f\xbd\x8c\x83\xe5\x3f\xd3\x57\xbd\xd1\x24\x6b\x96\x4a\xe8\xca\xc5\xad\xaa\x8a\x8f\xd3\xd5\x0a\x91\x91\x57\x20\xb8\x34\xd7\xdb\xa3\x3c\x87\xd0\x12\x2e\x7d\x3f\x0d\xcd\xd1\xbb\xbb\x26\x5b\xea\x45\x37\xf3\x12\xe5\xe0\xa7\x14\x37\x86\x3e\x91\xbe\xad\x11\x67\x41\x51\x11\x29\xcc\x2d\xdf\x5e\x70\xe9\xad\x76\x4d\x9c\x36\xd3\x1f\x91\x29\x07\xdc\x5d\x13\xd5\x96\xb4\x71\x6e\x8f\x1c\xc4\xbc\x01\x86\xeb\xbf\x25\x19\xf2\x58\x9f\x78\x06\xda\xa9\x8b\x32\xbb\x1f\xb2\x06\x0e\x40\x60\x0e\x69\xf7\x09\x11\x10\xc4\xbf\x89\xb8\xb9\xf2\x8f\x3e\x81\x35\xd2\x1d\x7d\x10\xd3\xe4\x7e\x63\xa0\xff\xe4\xd9\xd3\xeb\xc2\x25\x0e\x8e\x99\x6e\x90\xe2\xf0\xf0\xa1\x1d\x98\xc5\xfe\x09\xd4\x89\x5f\x1c\x1c\x4b\x9a\x07\x31\x8d\x7a\x51\x3c\x5b\x65\x4a\x74\x38\x74\xe9\xee\x01\x98\x46\x7b\x87\x46\x28\xb7\x56\xac\x71\x84\xe8\x5b\x6f\x2b\x8a\x47\xc5\x92\x97\x0a\x19\xbf\x34\x2b\x6a\xc3\x94\xa7\x66\xdc\x57\xd9\x15\x55\xa4\xe3\x35\xe8\xcf\x3d\x05\xd9\x32\x1c\xd9\xd8\xfd\xb6\xa3\x53\xd8\x67\x9d\x2f\x3d\x62\xad\xb2\xab\x2f\xbf\x5f\xdd\xf7\xa6\xe3\x6d\x2d\xdc\xb6\xcd\x21\x8f\xc9\xcc\x09\x3e\xbd\x21\x4e\x3e\xd4\x77\xf3\x5f\xda\x16\x01\x3c\xf5\x5f\x78\x09\x3a\x51\xb6\xf4\xc6\x13\x50\xcc\x9b\x6d\xa3\xe1\x4b\x13\x3f\x5a\xb8\x32\xaf\x32\xcd\x96\xfe\xd9\x65\xe6\x08\x92\x7a\x6f\xf4\x9b\x08\xde\x3a\x10\x0e\x5b\x6f\x6f\xb4\x12\x61\xb0\x4e\xe6\x36\x48\xbf\x03\xf4\xdb\x25\x68\x15\xf3\xdc\xdf\x36\xc1\x70\x34\x1e\x2d\x1b\x0f\x41\xf6\x65\xc8\x3b\x0d\xed\xf9\xdd\x3a\x0e\xff\x24\xc1\xd2\x3b\x76\xca\x1b\xb5\x4f\x4d\x91\xdc\x4f\xb5\x14\x36\xcd\x51\x7a\x45\x46\x51\x01\x36\x7f\xa1\xdb\x8a\xbf\xf1\x58\x59\x51\x34\xe8\x5c\x6b\x1e\x39\x96\x48\xca\x00\x71\x43\xac\x61\x70\xf7\xfa\x44\x4b\x40\xea\x91\xb9\xad\xa5\x50\x77\x14\x84\x17\x56\x0a\x0f\x12\x8c\x16\xa5\x06\xbc\x2e\xda\xc3\x0b\xc0\x35\xb1\x72\x69\x40\x83\x91\xce\xd8\xa4\xaa\x84\x81\x3e\xad\xb1\xc0\xfd\x37\xb3\xcc\x98\xfd\xf8\x39\x26\x8c\xc5\x9c\x15\x12\xa0\x02\x11\x07\x88\xa0\x76\xfd\xfb\x2c\xc6\x84\x9a\x00\x41\xbb\xf9\x92\xd5\x21\x05\xb8\xbc\xd2\x94\x8a\x9f\x94\xb7\x92\x72\x4d\x3b\x81\x43\x54\xdf\x93\x2a\x6a\xe0\x43\xb5\xa2\x46\xff\xca\x6d\xdb\x6a\x84\x3a\xa4\xc4\xea\x0e\xd1\xa5\xb1\x78\x79\x9a\x5d\xc1\x9a\x45\xfe\x1f\x1a\xb2\xf7\x1a\x92\x0f\xa7\xa6\x29\x26\x4f\x1d\x0a\x8d\xe9\xc2\x45\xb6\xd8\x03\x30\x03\xb5\x1b\x9f\xa6\x6a\x7e\x8d\x09\x35\x18\x80\x9f\x0f\x5a\x1a\x8f\x13\xc0\xe3\x6b\x76\x24\x85\x23\xaf\x16\x3f\xe5\x31\xaa\x6c\x4f\x7d\x60\xef\x9a\x63\xbc\x6c\x7a\x17\x45\x83\xd2\x9e\x93\xeb\x5a\x0b\xa7\xc1\x00\xf9\x39\xeb\x9f\xde\x82\x2d\x1b\xf9\x4d\x6c\xf9\xca\x4b\x3a\x18\x10\x42\xaf\x44\xb6\x8a\xc5\x90\x19\xcb\xfc\x3d\x5d\x76\x55\x86\x10\x69\x58\xdd\x92\x18\x72\x12\x9c\x70\xad\x5e\xa6\xf2\x33\xa0\xcc\x17\x74\x82\x5c\x36\xc0\x3e\xd1\x78\xc7\x86\x4b\xea\x13\x1f\xee\x10\xcb\x56\x8c\xed\x0e\xc4\x1d\x6b\xd0\x86\x55\xcd\x19\xed\xd9\x4a\x2f\x1f\xc0\xfa\x02\x7c\x30\x31\x64\x37\x16\xfd\x7f\x8f\xb8\x20\xfb\xb1\x12\x04\x05\x30\x25\x41\xd9\x93\x71\x6b\xc1\xda\x1d\xc0\x21\xb0\x32\xc6\x81\x7d\xdd\xed\x85\xf6\x0e\x1d\x78\xe9\xa0\x03\x9c\xc7\x7e\x0c\xa8\x06\x3f\xf8\xef\xf1\x4e\xf2\x6a\x95\x5d\x55\x3b\xf2\xb7\x07\x19\x32\xe9\x38\x6f\xaf\xd2\x2d\x47\x8c\x0b\xbd\xcd\xad\xa9\xc1\xd7\xed\x69\x5d\x9b\x90\x9f\xec\xcb\x76\x7f\x6d\x1b\x96\x62\xa7\x4b\x58\x3b\x84\x8a\x21\x5b\x23\x5c\x37\xbc\xf1\x9e\xea\xb5\x42\x55\x9f\xc9\x53\x02\xae\x7f\xbd\x5d\x63\xcd\x11\x0f\xb1\xa2\x25\x5d\xd2\x94\xee\x09\xa1\x1b\x3d\x7e\x78\x62\xad\x79\x9c\x9a\x99\xda\xd3\x67\x36\x74\x1f\x62\x12\x93\xd3\x95\x7b\x96\x8d\xa2\x8d\xfb\x7d\x4a\xb2\x75\x7c\x25\xe2\x15\x61\xec\x4a\xc4\x1b\x42\x56\xe3\x9d\xd8\xc5\x84\x6e\xcc\xdf\xfd\x68\xe4\xa4\x98\x7a\x16\xfb\x6c\x33\x9f\x2c\x8c\xf9\xc2\x0a\x11\x84\x21\xb9\xfd\x95\x0e\x87\xee\xe1\x7a\xcd\x26\x74\xc7\x26\x74\x0b\x0b\x80\x5e\x41\x5e\x7a\x59\x3f\x65\x6f\xed\x33\xc1\x95\x7b\xca\x5e\x9f\x5d\x46\xd1\xd6\x7f\xb9\x5e\xeb\xc6\x85\x01\xa7\x64\x38\x5c\xbb\xe9\xbe\x60\xd0\x05\x7a\x8b\x7d\xa0\x9f\xea\x0a\x9c\x26\xb8\xde\x87\x2b\x67\xe0\x91\x4c\x08\xbd\xf5\xa3\x36\x7e\x14\x39\xdd\x9d\x7d\x8a\xa2\x0b\xbf\x4e\x57\xd0\x6e\x34\x25\x8c\xdd\xfa\x71\xb7\x7e\x9c\x6e\xda\xae\xb7\x9a\xaf\x3c\x60\xd6\x0b\x07\xa6\x58\x17\x43\xa8\x1e\x13\xdc\x19\x18\xbb\xc6\x2d\x7b\xcd\x60\x4a\xd7\x84\x3e\x63\x30\xa9\xae\x6d\xd0\x3b\x57\x40\x52\x63\xca\xd5\x93\x5b\x55\xba\xc0\xaa\xda\xf1\xf8\x9a\x3e\x23\xb3\xf8\x3b\x69\x56\xc4\x8a\x5e\xd3\x67\xd4\x39\xb7\xa2\xfd\x09\xb1\xc6\x82\xf7\x3f\x6c\x77\x0b\x83\x9a\xaa\x6d\xf7\x27\xee\x08\x6e\x65\x6d\x91\x16\xb5\x60\xce\xc8\xbe\xec\xa3\x78\x4b\xfe\x15\x26\x27\xb4\x3b\x3b\xe8\xd7\x84\x74\x32\x6d\x52\xd6\xe4\x40\x9b\xa5\xb7\x7d\x88\x2e\xb7\x81\x7c\x6b\xf6\xaf\x9a\xa2\xe5\x92\xd8\xdf\x24\x41\x99\x1e\x00\x80\xa4\x2a\xed\x33\x5e\xcb\x03\xe1\x0d\xdc\x66\xfa\xc4\x89\x27\x6b\xd1\x69\xe9\x04\x59\xb2\xd6\x73\x4a\xf0\xf2\x32\x36\x07\xe1\x33\x13\xcb\xcc\x89\xd9\xad\x5b\x00\x39\xda\x9e\xbe\x3a\x3a\x54\x55\x47\x1a\xf7\x4e\x49\x3d\x9e\xfa\xc0\x7e\x62\x96\x7f\x6c\xf9\x7a\xbb\x1f\x66\xa0\xf2\xa3\x7f\x25\x75\x20\xa1\x13\x72\xff\x33\x92\x9b\x88\x66\x9f\xb0\xce\x40\x67\x8e\xb7\x94\x1e\x3e\x89\x86\x1e\xdb\xf1\x67\xa7\xc9\x21\x78\x68\x22\xf4\x35\xbe\x8b\xbd\x43\xa0\x8f\x3b\xab\x11\x91\xbc\xe3\xb4\x71\xd1\x24\x2f\xf9\x81\xbe\xf5\x5f\xa9\xee\x0c\xc5\x76\x8c\xcb\x32\x90\x7f\xa1\xc7\x83\xc5\x81\x22\xd8\x6d\x53\x31\x94\x33\xa0\x10\x6b\x3c\x08\x78\x80\x71\xf9\xfa\x2c\x2c\x47\x13\xf5\x01\x20\xa1\x49\x10\x84\xd5\xd4\x60\x88\x6b\xd1\x4e\x09\x08\x17\x96\x3e\xf1\x1b\xbf\x00\xbb\x5d\xf7\xa5\x5b\x85\x42\x3c\x69\x91\x67\x0b\x8b\x85\x6c\xc5\x7b\x12\x75\x96\x0b\x83\x88\xec\xd4\x21\x6b\xbe\x72\xc5\xf9\xee\x89\xd8\x05\x23\x57\x7b\xfc\x9c\x2f\xe8\xbd\xcd\xe4\x73\xe5\xf0\x68\xb7\x46\x38\xe8\x1a\xe8\x80\x99\xdb\x31\xd8\x9c\x5e\xcb\x23\x42\x30\xae\x7a\xd3\x35\x1f\x09\xbb\x9b\xe9\x1c\x93\x86\x2d\xe4\x06\x17\xd2\xaf\x9c\x2f\x2c\x4c\x63\x3d\xbd\xb5\x96\xa8\xd5\x8e\x69\xc8\x9c\xc1\x9e\x97\x71\xd2\x44\xa9\x6e\x57\x29\xed\xdc\x15\x2c\x84\xad\x36\x5e\x2a\x14\x2d\x3c\x07\x15\x51\xb4\x43\x15\x2f\x90\xa5\x9e\xb1\x09\x71\xde\x03\xf0\xc7\x68\x7a\x38\xd0\xdf\x82\x95\x0e\x8e\x16\xdb\xcb\xfc\xd2\x8c\xb1\x59\x09\xce\x57\x07\x39\x50\x25\x3a\xd2\x5f\x1d\x4f\x0f\xe3\x73\x6c\x27\x79\xfe\xf8\xbc\xfc\x06\x7d\xb6\x4e\xb1\xdc\x84\xf1\xcb\xcd\x01\xbd\xc0\xde\x2a\xfa\x49\x19\x1b\x2f\xe7\x43\x17\x0c\x9d\x9c\x63\xeb\x89\xe7\x96\xf5\x5a\x75\xa2\xaf\xd0\xd4\x98\x17\xf3\xda\x6d\x9f\xf5\x52\x93\x33\x8e\xd6\xc5\x1c\xad\x8b\xb3\x75\xac\xce\xf2\x59\x9c\xb1\x09\x15\x6c\xea\xbc\x58\x91\x44\x9d\xed\x67\x82\xc5\x19\x53\xa3\x9c\x0c\xa7\x49\x5c\xea\x03\xd4\x8a\x83\x01\x46\x6f\x1f\x45\xba\x98\xaf\x17\xe7\x0a\x51\x52\x62\xc1\xf6\xa3\x5c\x73\x36\xea\x5c\xc7\xc6\xa9\x33\x28\x74\x7a\x0b\xa8\x15\x02\xf5\x3f\x5c\xd0\x1c\x4a\x91\x8c\x81\xea\x4d\xc9\x25\x20\x2b\xce\xb0\x11\x89\xcd\x0c\x25\x49\x42\xad\x21\x1b\x22\xd7\x65\x04\x2d\x7e\xa1\x15\xa3\x87\x0b\xa6\x0b\x1d\x7d\xbd\xc0\xef\xe9\xc2\x2b\xf0\x94\xe8\x1a\x1f\x0e\xe3\x72\xc4\xbe\x26\x8b\xda\x59\x97\xa6\xe0\xad\x2d\x9d\x8c\xa2\x8c\x41\x07\xb0\xdc\xb3\xba\xbb\xb6\xa3\x50\xc5\xf0\x1f\x8b\x28\xea\xeb\x1f\xdf\xb4\xeb\x88\x61\xac\x75\xd7\x5c\xdf\xad\xa7\x43\x63\xc5\x09\xd2\x73\xf3\x82\x99\x64\x80\x2f\x27\xa8\x95\x5c\x27\x29\xad\x2d\x8b\x93\x9c\x5a\x8b\xe3\x64\xef\xa9\xa1\x3c\xab\x11\x52\x8c\x00\x1e\xe4\x44\x01\x8e\x04\xbb\x3b\x50\xde\x32\x5f\x37\x88\x37\xe0\xff\x89\x84\x67\x6d\x88\x67\x01\xe7\x57\x13\x99\x42\x2d\xd8\x9d\xef\x0e\xb1\x81\x9f\xdb\x00\x4b\xc0\xca\xde\x1e\x81\x3a\x20\xbd\x66\xf5\x5d\xfe\xb7\x74\x33\x9e\xa9\x86\x2f\xb1\xb9\x5a\x78\x7a\x46\xaf\xa1\x15\xd0\x16\x0f\xa9\x0b\x31\x54\xf4\xfd\xff\xb3\xf1\x79\x1f\xc6\xbc\xe7\x37\xc6\x62\xa4\x15\x55\x03\xaf\x84\xf0\x40\xbe\x15\x6c\xe0\x89\x78\x9b\xde\x68\x86\xdc\x93\xb3\xd0\xb0\xcb\xaf\xf6\x40\x89\x94\x0d\x3f\x83\xef\x54\x7d\x7c\x18\xa9\xd3\x2e\xbd\xe4\xbf\x58\x71\x59\xec\x1e\xf6\xed\x0f\xf3\xb4\x5f\x55\x2e\xe6\x42\xac\x6e\x89\xe7\xa5\xde\xf3\x62\xd8\x5d\xfa\x87\xff\xd9\xd2\x03\x9c\x9f\x97\x2a\x00\xea\x54\xe3\xeb\x6c\x75\xc9\x55\x8d\x8c\x8e\x7e\x4c\x5c\x78\x0d\xe8\x95\x11\x3f\xfd\x3c\x5b\x8c\xd3\x0b\x71\xc5\xad\xe4\xe2\x6f\x45\x10\x49\x7a\x88\x1e\xcb\x04\xb5\xf8\x05\x43\x26\x80\xef\xd6\x03\x3b\xf0\x3c\xaf\xc9\x1e\xc2\x7b\x0c\x72\xb1\x4c\xf3\x81\x75\xde\xfc\x28\x8b\xf1\x05\xd0\x84\x33\x56\xcc\xd2\x21\xcb\x7d\x13\xe0\x24\x1d\x35\x20\x52\x8c\x90\x7f\xa0\x47\x6c\x00\x7a\xdb\x03\x1c\x43\xa8\xd1\x3c\xe7\xf1\x0e\x1d\x8a\x63\xea\x9a\xe9\x10\x40\xda\x77\xc3\xd8\x2b\x68\x36\x49\xf4\x2c\x91\x9e\xc5\x48\x06\x6b\xa3\x46\x8a\x77\x90\xc2\x40\xec\xb2\x9c\x4a\x34\x7f\x1d\xb2\xdc\xda\x21\x99\x21\x4a\xbd\x21\x4a\xa9\xe7\x62\xe7\x91\x0f\xb1\x03\x16\x5a\xcc\x09\x6e\x8c\xb9\x7a\xc1\x8c\x11\x30\xa8\xdb\xa2\x22\xad\xed\xbc\x24\xc5\x88\xe9\x56\xd0\x6c\xc4\xde\xfb\x48\x06\x6e\x48\x65\x55\xf5\x65\xdb\x51\x1e\x02\xe6\x1e\x35\xee\x1a\x32\x61\x2a\x1d\x22\xee\xa7\xf1\x32\xf7\x57\xc6\xd5\xb7\x8c\x2f\x46\x69\x6d\xc9\x9c\x8d\xc0\x00\xcc\x3b\xae\xde\x04\xe0\x26\x96\xba\x82\x35\xd3\xf4\xf2\x48\x28\x2c\xf0\x82\x6e\xf1\x0f\x38\x68\xcc\x42\xff\x39\x4f\xbc\xe2\xa8\x20\x77\x35\xfa\x61\xac\xa8\x7b\xf2\x05\x44\x95\x8c\x2a\x9a\x36\x9c\x40\x52\x51\x83\xad\xcf\x70\xe6\x99\xb1\x6c\xb6\x16\xce\x66\x41\xd8\xb6\x94\x41\xf5\xa5\x0f\x5f\x93\x23\xfd\x2b\x11\x9f\xf6\xef\x0f\x9d\xe8\x9e\x31\x9e\xc6\x92\x44\x91\x8a\x22\x13\x7b\x96\xcf\x95\xbe\x1c\x11\xca\x36\xe6\x4c\xa5\xb1\x2e\x61\x34\x52\x0b\x32\x8a\x5d\x19\xb3\x49\x32\x25\xb4\xd0\xc7\x59\xa2\xe9\x19\x53\xce\x59\xee\x99\xad\x7b\x45\x0e\x6d\x91\xfa\x2a\x82\x5a\x59\x3e\x1f\x0e\x75\x99\xae\x48\x5d\x9a\x2e\x33\x8a\x40\xd8\xab\x44\x14\xf1\x73\x09\x24\xdf\x2c\x8d\xf9\x68\x4a\x92\x14\xac\x4d\x0f\x05\x33\x20\xf0\xa1\xef\x4d\xf0\xfd\x00\x60\x41\x85\xdb\x35\xe8\x7d\x73\x0f\x68\xf3\x20\xcf\xca\xed\xd2\x4e\xe3\x3d\x26\x5a\xb2\x32\xde\xd3\x32\x45\xaf\x10\xbe\x2f\xad\x3e\xfb\x45\x44\x51\xbc\x44\xd0\x69\x48\xf6\x8b\x20\x84\x2e\x3d\xef\x8d\x01\x36\xd1\xa4\xa7\xc0\x9f\x15\xb6\xcb\x37\x83\x6f\x5c\x0f\x92\x05\x28\x03\x5f\x81\xeb\x85\xe3\x4e\x45\x1f\xe9\x5e\x0c\x83\x53\x29\x58\xdb\x16\xee\x01\x61\x1e\x32\x67\xe9\x3e\x2c\xcc\xdd\xee\x3b\xb4\x53\x4d\xdf\x42\x6b\x74\x60\xe2\x20\xc8\xc6\x37\x6f\x79\xce\x0a\xc0\x7d\xcb\xc6\x62\xaf\xca\x6c\x85\x10\x49\x99\xe7\xe7\xae\x0b\x28\x10\x3c\x35\xc8\x61\xe7\x71\x49\xce\x1c\x89\xfe\x56\xc5\x85\xf5\x16\x40\xfb\x13\x6a\xd1\x83\x32\xf6\x32\x8b\x0b\x2a\xf1\xc1\x00\x51\x36\x0b\xeb\x26\x2d\x5b\xc7\xd9\xb9\x68\x17\xe1\x52\x50\x84\xd7\x0b\x1d\xb9\xf7\x27\x74\x4a\x7a\x35\xda\xb6\x87\xc3\x03\xc9\x33\x72\x7a\x6a\x77\xe3\x53\xdd\xa5\x14\xf6\xa3\x24\x34\x67\x3f\x14\x71\xaa\xd7\x4e\x1e\x45\xc6\xcb\xc3\xc4\xfa\xd6\xec\xe7\x55\xd5\x8f\xcb\xf1\x72\x73\x8e\xc2\xdf\xf1\x72\x53\x55\x25\xd0\xee\x2e\x20\x8a\x4a\x18\x4a\xcf\x83\x44\xd9\xcb\xd8\xfb\x2c\x4e\xd9\x7e\xac\x84\x75\x21\xed\xc6\xf4\xa9\x6a\x0b\xeb\xb3\x11\xdc\x51\x56\x62\xff\xf0\xab\x7a\x6c\x3b\xcc\x52\x69\xce\x0c\x5a\x96\x8f\x3a\x5e\x04\xa6\xb9\x6b\xf3\x3e\x84\x77\x24\x55\x34\xaf\xcf\x1a\xd6\x9f\x50\x71\x6e\xc1\x2b\x0c\x20\xc4\xa8\x4c\xc4\x19\x98\xcd\x9a\x80\x61\x99\xc4\x29\x02\x06\x80\xcd\xeb\x01\xb7\xd1\x1b\x68\xe8\xca\x02\x1c\x59\x57\xfa\x4c\xa6\x3a\x7c\xcd\x0a\xf8\xbb\x63\xfb\x78\x43\xe8\x96\xa5\xf4\x8a\xed\xe3\x35\xa1\x97\x0c\xd4\xfa\x8a\xf3\x2b\x6f\x76\x25\x5d\xd3\x4b\x3d\x77\x40\x6d\x9f\xc2\xed\xb4\x9c\xad\x19\xdb\x54\xd5\x9a\xb1\xbd\x3e\x47\x37\x74\x4a\x92\xf5\x68\x73\xc6\xa6\x35\x93\x73\xc1\x8a\xb3\x5d\x55\x15\xa3\xdd\x19\xbb\x1a\x15\xb3\x4d\xb2\xa6\xb7\xac\x18\xc5\x17\x8c\x6d\x66\xbb\xe4\x8a\x9c\x02\xd4\x8f\x8f\xf2\x73\x81\xc0\x3e\x17\x3d\xbf\xfe\x0b\x0a\x39\xb6\xc9\x25\xbd\x3d\x1b\x4d\x67\xa3\x69\x72\x7b\x3e\x05\x67\x9b\xd0\x61\x23\xa2\x5d\xf2\x2c\x8f\x57\x0f\x1e\x12\x7a\xcd\x36\xc3\x4f\xe6\x39\xe2\x9a\x6d\xdc\x52\x7b\xc6\x26\xa7\xcf\xce\x3e\x9d\x0e\x87\xcf\xc8\x35\xb6\xfc\x9a\x4e\xb1\x90\x1b\xb6\x8f\xaf\x49\xef\xe6\xbc\x98\xc5\x6b\x76\x4d\xaf\xd8\x0d\x8d\x2f\x59\xaa\x99\x9a\xab\x21\x9b\xf2\xaf\xf5\x88\x7e\x22\x49\xbc\x61\xd7\x74\xc7\x6e\x60\xe0\x56\x23\xf6\xc9\x5f\x38\xaf\x54\x80\x7d\xc3\x5b\x64\x6c\x13\x1c\xb1\x8e\xb1\xaf\x35\x8c\xdd\x2a\x72\x77\x8b\x0e\xa7\x77\x92\x0f\x9a\x24\xf8\x3f\xfe\xeb\x74\x38\x54\xe4\x56\x05\x48\xcc\x0d\x40\x7d\x5d\xee\x2b\xb1\xe2\x31\x82\xeb\x34\x12\xeb\xa2\x2f\xc0\x73\xc0\x5f\x29\xe5\x10\x40\x37\xde\x2a\xfb\x96\x7a\xab\x02\x88\xc8\x07\xdf\x4c\x1c\xc4\x1c\x20\x94\xb7\xfb\xaa\x99\xc4\xb7\x5e\x61\x80\xc0\xee\xf9\x82\x7e\xd1\x3d\x8c\x8e\x4f\x68\x8e\xa2\x8b\x30\x9a\x15\x3e\xb6\x90\xfb\x37\x20\x54\xba\x41\xa5\x9a\x3b\xe9\x05\x1d\x92\xc4\xd1\x58\xc7\x8c\xe1\x33\x66\x21\x20\x2d\xa8\xd0\x83\xa9\xeb\x6c\x76\xfe\xd0\xeb\x6c\xcd\xd3\x64\x70\x23\x4e\x27\xb0\xcc\x7e\x50\xf4\xb9\xa2\x7f\x18\xe7\xca\x3f\x2a\x36\xa9\xcf\x87\xc7\x86\x51\x83\x87\x61\x76\xb7\xdc\x26\x1c\xb0\xe3\xac\x88\x53\x9f\x3b\x9a\xdf\xc4\x31\x4c\xf0\xcd\x10\xaf\x15\xea\x61\xe8\xe9\x74\x9e\x5b\x2b\x84\x9c\x53\xb7\xfa\xc2\xd3\x51\x88\xc7\xf7\xfa\xe2\xb7\x12\x63\x42\x37\x56\xdf\x81\x78\x5b\x76\xc6\x3d\x49\x41\xa6\x3f\x69\x6b\x2a\xb8\x1a\x5f\x22\x8f\x05\x4d\x75\xcc\x8e\xf1\x3f\x6c\xd9\x93\xf0\xf3\x8d\x30\x75\xa1\x3a\x8b\x3e\xcb\x56\xc9\x70\xf8\xa3\x3a\xd0\x3f\xd4\xec\x0f\x35\x16\xbb\xd2\x3a\xd1\x87\x81\x21\x89\xc5\x0d\x14\xd7\x45\xf9\xad\x14\xfb\x1d\xfb\x43\xb1\x3b\xb1\x2b\x93\xb9\x89\x5a\xd0\x15\xcf\xd3\x5b\xbe\xd2\x4d\xbe\x48\x97\x9f\xcb\x64\xbe\xf0\xb6\xe9\x77\x01\xf2\x75\xa3\x34\x10\xb6\x80\x5d\x74\x4b\x3d\x17\xb8\xd0\x46\xc9\x54\x53\x1b\x2b\x81\x50\x68\x4d\xaf\x6f\x73\xb9\x18\x2f\xd3\x3c\x8f\x43\x8c\x66\x0b\x4d\x29\x9c\xe2\x5f\xe0\x19\x56\x87\xcf\x8b\x05\xbe\xb9\x77\xcf\x0f\xca\x3e\x9a\xb1\x38\x43\x67\xc7\x32\xd9\xba\xc8\xb1\x04\xf3\xee\x02\x87\x43\xaf\x17\x34\x03\xaf\x6b\x87\xeb\x4d\x96\xf3\xb8\xee\x30\x39\x90\x58\x91\xc3\x3a\x2b\xd2\x3c\xbf\xbd\x33\x4b\xbc\xe5\x13\xcf\xeb\x32\x8c\x10\xf4\x55\x8f\x92\x51\xd8\x81\x5c\xa7\xc1\xc8\xd7\xc7\x1f\x8c\x0c\xed\x70\xaf\xf7\x93\x8a\xf5\x58\xe3\x08\x77\xc4\xff\xfe\x85\xf8\x9f\xbf\x10\xff\xb7\x2f\xc4\x7f\x6b\xe2\x71\x0c\x3c\xef\x9d\xe1\x42\x0b\xb4\x35\x4e\xbb\x97\x97\x81\xa0\xe8\x2b\xcf\xe2\xe8\x49\x9e\xed\x76\x7c\x15\x45\xaa\x36\x36\xc2\x23\x17\x8e\x18\x50\x27\x09\x71\x65\x59\x77\xca\x91\xea\x04\x94\xa5\xca\x9c\x23\xcf\xf5\x31\x22\x43\xf7\x2f\x80\x0e\x6b\xa0\x2a\x0c\xaf\x88\xf1\xdb\x54\x5e\x66\xc5\x63\xc4\x8b\x1a\x35\x5b\xd0\x95\x03\x8d\x05\x01\x69\x17\x5b\x19\x96\xdd\xec\x2f\xea\xc2\x68\x5a\x85\x8f\x83\xf3\x25\x8a\x5e\x61\xe8\x76\x5f\x2a\x83\x1c\xca\xc7\xde\x59\x89\x3a\x4a\xee\x48\x44\x70\x3b\x78\x34\xb3\xa7\x10\x18\x95\xd7\x67\x10\x9c\xdc\xde\x37\x92\x8e\x2d\x05\x99\x30\x8d\xa1\x1c\xcf\x9d\x7e\x09\xa9\x2a\xd9\x90\x33\xe9\x39\xeb\xc4\xbc\xb4\x5d\x62\x7e\x2f\xd0\xdb\xe7\x07\xd0\x3b\xf2\x43\xef\x34\x3b\xe1\xb5\xde\xbc\xb2\x26\x41\x7b\x0e\x34\xe8\xb4\xef\xee\xd5\xdc\x2c\x58\xe3\xea\xa9\x71\x13\x14\xd6\xf1\x2f\x74\x12\x69\x53\xf9\x8e\x60\xef\x59\xc5\xbd\x66\xa9\x51\xf4\x2b\xce\xcd\x45\x2a\xad\x88\xf1\x07\x1d\xd2\x1e\x99\x7e\xf7\xd0\xc0\x5c\xa4\xab\xdf\xf6\x25\xae\x92\xf7\x82\x6d\x55\xac\xea\x02\xea\x5f\x81\x62\x02\x92\xc4\x5f\x53\x15\x4a\x36\xac\x64\x31\x28\x31\x68\x9f\x19\x44\x4c\xe8\xac\x4c\x64\xf7\x56\x91\x2d\x07\x43\xc3\x46\xd9\xc3\x95\x8a\x15\x19\xaa\x16\x3c\x33\xac\xd8\xf4\xe6\x9d\xbb\x19\x7d\x98\x9b\x2f\x97\x3b\xda\xe8\x72\x09\xa1\x71\x73\xcc\x61\x61\x36\x2e\x65\x82\x4a\x89\x68\xde\xb0\xaa\x0d\xbf\xe5\x31\x17\x69\x46\xbb\xcd\xf7\x10\xf1\xb7\xc6\xc4\xf7\xec\x36\x0a\xda\x05\xc7\x4f\x28\x4c\x32\x07\x44\x56\x74\x0e\x3e\x6e\xf8\xc6\x58\x9c\x19\xc5\x29\x17\x10\x45\x57\x32\xf6\x5d\x80\xb7\x51\xac\xeb\xc4\xcd\xd2\x40\x27\xc1\x5b\x09\x4d\xe1\xef\xd4\xf3\x02\xae\x7b\x1d\x45\xd6\xa0\x83\xbd\x12\x60\x68\xdf\x77\xb4\xf0\x26\x2d\x9f\xa3\x31\x46\x2b\x28\x26\xa4\xd7\x31\xc8\x7a\xd3\xdf\xef\xae\xae\x95\x45\x73\xba\xdd\xf3\x5a\x93\x7c\x7d\xa3\x5c\x86\x07\x33\x89\xa2\xc7\x70\x50\xd4\x0b\xb9\x3e\x28\xeb\xdd\xf8\x4b\x47\x9a\xe6\x5a\x89\xa2\x4c\x81\xda\x50\x1b\xd9\xc4\xa3\x24\xdb\xbd\x42\x3b\x4d\x30\x1f\x04\x5d\x09\x19\x45\x17\xbc\xe9\x96\xf5\xdb\x7b\x4e\x0f\xab\xb1\x88\xaf\xd3\xcd\xa6\xff\x1b\x9a\x6e\x8e\x23\xe3\xa1\x48\x8e\xaf\x37\x9c\xe7\xf0\xf0\xf2\x8b\x05\x2d\xf5\x4e\xc6\xda\x38\xc0\x5f\x49\xfd\xe0\xa0\x04\x4b\x29\xaf\x98\xa0\xd0\x0f\x06\x1a\xa1\x55\xb2\x3e\xdb\x3b\x4c\x7d\xc3\xca\xfb\xe6\x08\x7e\x67\x9c\xd5\x3a\xf3\xe0\x63\xf8\x58\xad\x32\x0d\x40\x56\xeb\xf4\xc1\x70\xea\xd5\x46\xc0\x9a\xfd\x0b\x66\xc9\x3a\x1d\xed\x6c\x78\x90\xa2\x3d\x68\x1d\xdd\x85\x23\xab\x3d\xb2\xdd\x1d\x3e\x0a\xe3\xd5\x2a\x16\x29\x93\x23\xc7\xad\x5f\xdb\xd1\x0e\xeb\xc8\xa0\xe2\x8e\x2e\xff\x80\x8e\xf0\xbc\x23\xe3\x77\xc0\x11\x0f\x56\x86\x93\xc4\xb5\xe0\x94\x9d\x7f\xac\xb8\xf0\xa5\x57\xf8\x80\xf2\x0d\xb8\x7d\x37\x82\xa2\xfe\x94\xa6\xc6\xaf\x21\xe8\xb1\x46\x91\xec\x33\x35\x43\x34\x36\x92\xa4\x34\x67\x3f\xc9\x98\xfb\xae\xcb\x40\x7e\x8c\x62\xe4\x86\x4b\xb3\x1d\x85\xf7\x08\x32\xf2\xcc\x1f\x3b\xd3\x43\xb8\xf1\xd7\x64\xc1\x34\xc9\x10\x44\xae\xdc\x3b\x58\x35\xed\xb0\x0c\x42\xf4\x50\xd4\x9a\xa2\xb9\xbf\x98\xe3\xad\x6e\x67\xee\xaf\x13\x87\xad\xdb\x28\x74\xb4\x27\xe7\x53\x70\x00\x06\x5e\x9b\xc3\xc2\x70\xa5\xc4\x57\x7e\x69\x3f\xd4\x6d\x6f\x16\xa7\xa3\x46\xcb\xa0\xbc\xbe\x40\x2d\x41\xfb\x96\x92\x1e\x62\x45\x7f\x30\xce\xf3\x1b\x54\x1b\xe9\x8a\x50\xa2\x31\xd3\x86\x7a\xd5\xc7\xb7\x1f\x9a\x95\x88\xe8\x02\xa4\x76\x78\x16\xb6\x00\x94\x15\xb8\x20\xc7\xdc\x98\xeb\x45\xa1\xc4\x4f\x19\xbf\xae\xb5\x48\xaf\x42\x30\x7e\x90\xfe\xdf\xfb\xde\x42\x33\xe4\x9b\xe0\x7d\x67\x08\x7e\x25\xcf\x26\xb3\x8c\xf5\x27\x0e\x26\x18\x43\xcf\x0d\xda\x03\x7a\x6a\xc1\xd3\xc1\xbb\xa1\x1a\xaf\x85\xc1\x21\x82\x5a\x00\xfd\xa9\xa7\x21\x9c\x45\x51\x7f\x6d\x57\x70\xed\x8d\x12\x10\x1a\xd0\x92\xbb\x0b\xb5\xc4\x42\x93\x40\x63\x47\xd2\x13\x32\x8f\x02\x19\x79\xdb\x7d\xa1\xaa\x61\x79\x75\x3f\x91\x0f\x90\xb5\xe7\x89\x06\xb6\x89\x72\xae\x2b\x1d\x54\xca\xc3\xdd\xcd\xe9\x40\x4f\x5f\xfb\x15\x2a\xf4\x50\x46\x85\x99\x61\x3b\x3b\x71\xd6\x7c\xf9\x6d\x1b\x56\x0b\x72\xd0\x4b\xcc\x78\x17\x16\x80\x04\x74\x7b\xc1\xbf\x03\x0c\x93\x97\xa0\xf1\x5c\xd2\xd4\x06\xff\x58\x6c\xfc\x08\x34\x06\xf4\x10\x97\x4e\xcb\x33\x51\xbf\xad\x96\x44\xcc\x4b\xd4\x2e\xaf\xbd\x32\x7d\x9f\xc5\x3a\x94\xfe\xbf\xbc\xfd\xeb\x92\x1b\x37\xb2\x2f\x8a\x7f\xe7\x53\x34\x2b\xbc\x6a\x17\x86\x20\x45\x6a\x96\xf7\x5e\xbb\xba\xd1\x0c\xd9\x92\x2f\x63\xcb\xf2\x58\xb2\x3d\x1e\x8a\xa3\xa8\x26\xc1\x26\xac\x22\xc0\x41\x81\xdd\x6a\x37\xf9\x08\xff\x88\xfd\x08\xff\x38\x71\x9e\xe4\x3c\xca\x7e\x92\x13\xc8\x04\x50\xa8\x4b\xb7\xb4\x66\x9d\x73\xbe\x74\xb3\x70\xbf\x26\x12\x89\xcc\x5f\x26\x5b\xb1\xe6\xa8\x4c\x5d\x40\x11\x4d\x08\x7a\xc8\x5e\xb4\xb3\x83\x8b\x77\xc0\xa3\x4f\x0e\xd2\x15\xa0\x83\x58\x3a\x16\xce\x81\x07\x99\xfa\x0c\x78\x90\xa7\x82\xcd\xce\x27\xb5\xb0\x08\xaa\x30\x34\x71\xee\x1c\x12\x6a\x1a\xd1\x35\xe7\x51\x33\x0d\x93\x8d\x90\xa2\xda\x66\xb1\x8b\xf6\xda\xdf\x85\x17\xe7\xf8\x07\xce\x8c\x0c\x40\x00\x06\x36\x89\x75\x60\x10\x28\x80\xcc\x26\xba\x5a\x7f\xe7\x8a\x6a\x7b\xa6\xec\x2d\x1c\xd5\x3c\x33\x4e\x0b\x7d\x0d\xdb\xa2\xea\xab\xad\x27\x55\xbb\xfa\xc8\x71\x7b\xec\x61\xa5\x59\x3b\xaa\x38\xc6\x0d\xe0\xae\x68\x80\x9b\x68\xb6\x01\xb4\xf4\xe2\x66\x3c\x90\x36\x6e\x09\xe4\x89\x1b\xf3\x97\x07\x1a\xd3\x80\xb7\x44\xdf\x0a\xc7\xa3\xf9\xf4\xb6\xfd\xa7\x1b\xd6\x68\xd5\xdf\xc2\xd3\x14\x9a\x08\x09\xc9\x99\xf1\xf6\x97\x95\x61\x1d\xf9\x07\xd5\xf8\xca\x60\xd8\xf7\x36\xf0\x9c\x70\xf0\x37\x27\xd7\xd9\xcc\xf2\xf3\x68\x9d\x9f\x21\x1e\xda\x62\x49\x88\x13\x0c\x86\x67\x13\x7d\x02\x2e\x16\x2c\x87\xc4\x1f\x0e\xd2\xce\x56\x35\x7f\x23\xb2\x1b\x67\x3f\x87\x5a\x35\x63\x3d\x9a\xe5\x33\x4c\x2b\xd5\x9a\xd7\xa0\x77\x28\x9a\x45\x35\x30\xd8\xd5\xec\x1b\xa4\xf9\x91\x37\xed\x3e\x8d\x2e\xb6\x58\x52\xc5\xcc\xb9\xba\xd0\xe7\xca\xab\x1f\x14\x4d\x57\x24\xe1\x49\xd1\x92\x25\x32\x90\x4c\x8d\x0a\xf4\x5e\xe7\x1c\xa5\x15\x91\xeb\xaa\x50\x1d\xd7\x6d\x3e\x04\x9c\xf2\xb9\x63\xdc\xf9\xe3\x0b\xce\x42\x33\x1d\x47\x8c\xdc\xc9\x2a\xfe\xe0\xde\xb3\xca\xd4\x3f\xf2\x35\x7c\x89\xc9\x34\xd5\xc1\x25\x55\x70\x59\x2f\xdc\x5e\xfe\x1e\xf5\x63\xae\xb8\xae\x8e\xc7\x9e\x40\xa7\x5a\xd6\x8d\x60\xa6\x76\xf4\x12\x09\x68\x40\x7f\xda\x3b\xc4\x7a\xa3\xc8\x87\x34\xfd\x59\x86\xf7\xda\xa8\x1d\x5a\xdb\xf9\xf5\xaa\x0c\xfa\x22\xf2\xa1\x65\x33\x7d\xe1\x33\xe9\x91\x24\x97\x75\xdc\x1c\xf2\xe5\x59\x1d\x32\x62\x92\xfa\x62\x47\x4c\xd6\x65\x9a\x8b\x86\x5f\x2e\x1d\xb5\xaa\x59\x79\x23\x21\xb9\xcf\x14\x13\x76\x62\xb4\xad\x9b\xce\x08\x99\xbb\xda\x5c\x2a\xa7\x89\xaf\x10\xc1\x82\xd0\x3a\x2f\x43\xb9\xd1\x0f\x8d\xf6\xe4\x50\x59\xb0\x09\x89\x9b\x81\xc7\xf2\xb9\xaf\xd0\x50\x43\xc7\x0f\xd6\x37\xa5\xad\x1a\xdf\x28\x5f\x5f\x5c\x87\x5b\x9d\x71\x81\xb4\x6a\x76\x68\x50\xa4\x69\xf5\x50\x25\x85\xab\x64\xb2\x52\x72\x55\x98\x0c\xb6\x44\xe1\xfa\x55\xb9\xfa\x42\x6c\x23\x73\xe5\xb2\x92\xbe\xfe\xa3\xb6\x80\xe8\x7a\x2d\x2a\xed\xca\xbe\x28\xb1\xe4\xb9\xfb\x3f\x62\x32\x37\x3e\x70\x54\xc2\x32\x87\x75\xd8\xf5\x08\x04\x60\xad\x91\x13\x78\xed\xb7\x70\xff\xea\x1c\xdc\xf4\xf9\xae\x7e\xc8\xa5\x92\xd8\x64\x02\xdc\x29\x89\xda\x9d\x92\xfb\x39\x12\xbe\x55\xf2\x81\x56\xd1\x61\x66\x2e\x64\x24\x65\x34\x97\x4c\x36\xfd\x68\x2a\x17\x50\x7b\x79\x0a\x9c\x1b\xda\xd7\xd7\x8e\x2b\xdd\x01\x7d\x3c\x66\xe1\xb7\xa5\x95\xe7\xe3\x19\x63\x57\x2a\x2b\xa8\x26\x69\x5a\x38\x67\x33\x0d\x72\x0d\x13\x70\xdf\x75\x42\xd5\x71\xee\x19\xd3\x97\x96\xdb\x4d\x4b\x04\xfb\x94\x0e\x58\xe4\x46\xca\xf5\xa1\xd7\xe9\x55\xed\xde\xca\x7b\x67\xcc\x4c\x5b\xeb\x0b\xb6\x5f\xad\xc4\xd0\x7a\x66\x68\xa6\xa5\xf8\xd4\xa2\x5b\x0e\xc0\x6c\xa1\x7a\x21\x97\x48\x17\xa3\xb2\x22\x77\xb6\xba\xed\x4b\x47\x31\xd7\x72\x5a\xb4\x6a\x81\x93\xf5\xc3\xf1\xa8\xd9\x43\xa4\xd7\x29\x89\x20\x0e\x9f\xa2\xb0\x32\x72\x5d\x3b\x44\x43\x58\xce\x6e\x3f\x2d\xe7\x08\x4e\x87\xca\x11\x38\x1c\x82\xd2\xc0\xd6\x71\xc8\x70\x08\xe5\xe5\x14\xfe\x2b\x74\x7c\xed\xec\x1e\x1b\x83\xc8\xca\x51\xb1\x50\x98\x77\x6c\xa8\x1a\x8d\xbc\xe3\x99\x72\x6c\x06\x66\xc4\x04\xd5\x23\x26\xd0\x7e\x2c\x90\x61\x4d\xc0\x88\xcc\x95\x9d\xc9\x8b\xe9\x7c\x9a\x47\x55\x34\xea\xd0\x23\x26\xff\x54\x2c\xd4\x18\xd2\xcd\xf2\x29\xc1\xea\xa8\xdd\xdb\xa7\x07\x7a\x1f\x79\xbd\xd5\xed\x87\x9e\xc6\x24\x6a\x36\x75\x13\x69\x7a\xde\xcb\x0c\xbc\x95\xb9\xc3\xda\x9e\x4e\x76\x43\x80\x3b\x92\xb0\x17\x46\x23\x1d\xd4\xf0\x22\x07\xb8\xba\xef\xe5\xc5\x80\x5d\xe8\xaf\xba\xd8\xbb\xc7\x6a\xd6\x8f\x61\x6e\xaf\x88\x3e\x25\x8a\x39\x3b\x09\x21\xb8\xf6\x96\x11\x3d\x0a\x9b\xee\x9b\xb8\xe9\x55\x6c\xed\x7d\x16\x41\xa4\x08\xf3\x5a\xfc\xc1\xb3\x98\xa8\x39\x84\xfe\xfb\x7a\x37\xfc\x2a\x32\x43\xce\xf5\x90\x05\xd7\x09\xe7\x9a\xe9\xc8\x2f\x0b\x18\x17\xe8\xe3\x11\x00\x36\xbd\x0d\x62\x9a\x26\x46\x1f\x40\xab\xb0\x6b\xef\x29\xae\xa5\xd2\x7c\x0c\xb6\x3f\x55\x02\x4f\x1e\x75\x71\x20\x1e\xb2\xf7\x5b\x90\x7a\x38\xd7\x92\xc1\x4a\x21\xf2\x56\xd9\xde\x5d\x2d\xc7\xa6\xba\x6e\x02\x74\xa1\xdb\x0c\xa9\xcc\xd8\xd9\xd4\x24\xcd\xb5\x78\xe3\x9c\xdf\x57\x8e\x1a\x3f\xae\x9a\x68\x19\x5c\xc5\x4c\xc0\xce\x74\xda\x7c\x45\x08\xfa\x6d\x0c\x22\x18\x87\x7e\x52\xdf\x38\x40\x4b\x18\x8e\x2b\x7a\x60\xa0\x85\xa5\x68\x41\x1c\x2b\x35\x63\xec\x00\x3a\x47\x69\x9a\x95\xb5\x26\xd9\xc1\x81\x5a\x59\x3e\xd3\x5b\xdf\xd9\x94\xab\xad\x73\x31\x0f\x6e\x4f\xa9\x57\xde\xeb\xf1\x7a\x3a\xf6\x71\x83\x03\x58\xf4\x21\x4f\xdc\x96\xb3\x01\xba\x67\x96\xa9\xf1\x2a\xbe\x86\x3b\x95\x85\x86\xc6\x1b\x19\xaf\x6a\xa8\xfc\x43\xe4\x22\x54\xf7\x80\xe4\xc5\x33\x94\x19\x95\x19\x80\x11\xd3\x0e\xd1\x0c\x90\x1f\xd2\xd4\x3f\x30\x34\x00\x21\x32\x42\x08\x42\xe6\x6d\x05\x60\xdb\xc3\xff\xef\xf8\x1d\xad\x10\x2a\x96\xa0\x54\x36\x5c\x43\xd7\xba\xb8\xbe\x06\xa3\xad\xe1\xec\x61\x20\xab\xbe\xe4\xd3\x13\xa1\xb3\xe9\x94\xd4\x8c\xdb\x70\xad\xa1\xa9\x5e\x45\xae\xc4\xcf\x41\x75\x2b\xec\x94\x3a\x39\x8a\x07\x13\xfd\x4c\x64\x36\xe9\xaa\xa8\xf8\xd9\x2c\xf7\x62\x20\x27\x32\x97\xd7\x76\xc7\xce\x7b\x43\x2d\xc3\x29\xe7\x4d\xd1\x21\xb9\x57\xf3\xa8\xf5\x1f\x54\x76\xc5\x29\x98\xb0\xe5\xb5\xfb\xc3\xd5\xa1\x82\x57\x87\x81\xbf\x49\x04\x27\xc4\x83\xaf\x4c\x9a\x7e\x65\x26\x46\xec\xf8\xa5\x18\xff\xfb\x74\x0a\x26\x15\x7b\x9e\x7d\x65\x26\x7b\x55\x51\x4d\xe6\x92\x25\x46\x8b\x7d\xc9\x93\xfc\x7b\x93\xa6\xdf\xf7\xa5\xfe\x3e\xa4\xce\x24\x4b\xd6\xea\x70\x55\xf2\x84\x7e\x65\xd8\xbd\x4d\x9b\x0b\xba\x57\x55\xae\x4f\x24\xb7\xd1\xe8\x29\x28\xa1\xdf\x77\xa2\x07\x7e\xb9\xf3\x1a\xe8\x94\xdd\xcc\xcd\x64\xc7\x4d\xf1\x1d\xbf\xcb\xcd\x64\x65\x74\xf9\x1d\xbf\x8b\x34\x2e\xed\xd4\x3c\xd7\x6a\x9f\xa6\xff\x54\x20\x2f\x6e\xe2\x79\xf9\xea\x50\xb8\x5a\xda\xcd\xe0\xe1\x7d\x35\x21\x00\xe9\x96\xed\x79\x06\x31\xce\x12\xa9\x5c\x12\x0f\x68\xa0\xc9\xc5\xd4\xae\x40\xa7\xde\x87\x69\x4b\xb0\x45\xa2\x9a\x5c\x86\xb8\x8b\x29\x99\x77\x85\xba\x2d\xca\x43\xcb\x7a\xe4\xe9\x81\x7d\xd7\xc4\xb2\x5e\x91\xfb\x0a\x3d\xcd\xf4\xad\x51\x10\x2f\xc2\x9a\x80\x50\xb7\x24\xec\xe2\xfd\xab\x08\x6a\x55\x11\x32\xeb\x81\xd8\x08\x11\xb9\x75\x59\x6b\x85\xe1\x41\x28\x5a\x13\xa5\x95\xff\x45\x46\x9d\xd8\xdf\x42\xec\x6f\xe4\x62\x36\x4d\xd3\xec\x0b\x91\xad\x08\x1d\xca\x34\x0d\xdd\x19\x3f\x9d\x4e\x2f\xca\x34\xfd\x82\x87\xd3\x9d\x56\x80\x43\xfa\x3f\x19\x2b\xe6\x0f\x6c\xb0\x86\x85\x41\xd8\x20\xa2\x89\xbe\x8b\x10\x43\x79\x2b\x94\x9c\x08\x19\x3c\x3c\x5e\xe0\x9a\xaa\x67\xbc\x0e\xb4\x95\x1e\x57\x4e\x4f\x60\x46\x06\x5f\x3f\x34\xb2\x5f\xf7\x8f\xac\x77\x64\xb5\x22\xf9\xc3\xa0\x0c\xf5\x6a\x28\x9c\x2e\x2d\xb8\xbb\xf1\x5e\x35\xe9\x81\x15\x6e\xe1\xfb\xf5\x38\x10\xf0\x94\xed\x29\xda\x3c\x2b\x31\x49\xbc\x90\x69\xc5\xca\xcb\xf1\x6c\xbe\x5a\x94\xcb\xdc\x19\x1b\x6a\xaa\x09\xc9\xb3\xca\xa5\x8e\xdd\x6b\xd4\x21\x68\x45\x68\x29\xee\xf5\xbc\xae\x03\xbd\x61\xfa\x3d\x57\x94\x36\x8c\x48\x96\x68\xbe\x32\x09\x28\x60\x57\x2c\xae\x85\x6a\xe6\x4e\xdc\x21\xa8\xce\xd2\x92\x8d\x67\xb5\x81\x80\x23\x08\xc1\x68\xc2\xe3\x37\xfc\xaa\xf4\xfa\x99\xc9\x34\x19\xc4\x66\x14\xd0\x88\xe3\xb1\x80\xeb\x8c\x5c\xcf\x7f\xe6\x59\x41\x2b\xba\xf6\x76\x78\x6b\x34\xc2\xcb\xd7\xe1\x32\xeb\x09\x54\xa8\x60\xeb\x5b\xb7\xe1\x19\x1a\xde\xd1\x29\xc8\xed\x0b\x1a\x42\x00\x2a\x82\x7c\x52\xd5\x5b\x5f\xf5\xd6\x55\xbd\x75\xb0\xc7\xcc\x25\xd0\x64\x20\xe6\xf6\x06\x54\xda\xd9\xf1\x70\x69\xf4\x33\x1b\xfb\x9c\x67\x2b\x7f\x4f\x5d\x54\x4b\x42\x4b\x42\xef\x71\xf1\xe4\xc3\x19\x55\x5a\x5c\x0b\x99\x27\x7f\x82\x05\x96\x9c\x08\xc9\x57\x11\xfe\x81\x9d\x50\x6f\x8d\xd9\x22\x66\x8d\x35\x51\x57\xe5\x6f\xd0\x65\xb8\x1d\xfb\xb0\x72\x34\x23\xf6\x68\x78\xb4\x7a\xbf\x00\x49\xfe\x8b\x2d\xb2\xa4\x15\x2d\x15\xc9\xb3\x92\x4d\xb1\x3f\xce\x12\x75\x51\x2d\x6d\x51\xa5\xaa\x73\x38\xd4\x72\x74\x81\xbb\x67\xea\xa3\xce\x7f\x76\xb1\x7a\xe2\x4d\x66\x3c\xc5\x1c\x8d\x76\x74\x15\xad\x28\x5c\x77\x76\x76\x51\xeb\x36\x58\xf5\xae\xe8\x86\xd4\x37\xec\xfa\xa4\xab\xb1\x3f\xf0\x12\x83\xa9\x37\xd4\x00\x97\xb0\x61\x26\x2a\xf2\xbe\x7e\x6b\x03\x09\x5b\x87\x27\xa2\xc0\x35\xbd\x10\xf6\x6e\x1b\xf1\x57\x54\x4f\x56\x5b\xaa\x08\x5d\x87\x68\x13\x47\x1b\x17\xbd\xad\x11\x1e\x56\x74\x4d\x68\xf4\x4e\x0b\xdf\xbb\x86\xb7\x04\xbb\x54\xbd\x3d\xc0\x4d\x1d\xc3\xe1\x2a\x00\xe8\xa5\xd1\x8b\x5c\x33\x3d\x39\xdf\x5d\xb0\x9b\xf3\x9d\xbf\xb9\x5c\x33\x68\xd4\xce\xb5\xe7\x8a\x6d\x54\x76\x4d\x6d\x9b\x06\x5b\xc6\xf6\x73\x27\x12\xac\x77\xca\x8e\x5e\x01\x36\x87\xfd\x4f\x48\x7e\xed\x97\xe1\x95\x25\x90\x0f\xa6\x85\x52\xf7\x54\x11\x80\x42\x09\x0f\x0e\xcd\x1c\x48\x25\xfc\x22\xf5\x94\xad\x67\xad\x0a\xdc\x1f\xad\x65\x49\xc3\x82\x3d\xd5\xef\x6c\xe1\xbd\xc5\x44\x22\xa7\x3b\x56\xd1\x77\xec\xce\x6f\xd8\x5b\x06\x8f\x8f\x7e\xdf\x0c\x99\x74\xe6\x4f\x35\x45\x42\xcd\xed\x06\x41\x32\x8e\xb7\x7b\x11\x91\x11\xd3\x21\x23\xa6\x41\x46\xf6\x3c\x7b\xe1\x6b\x7d\x47\x2e\xa7\xf3\xec\x96\xbd\x40\xd3\xf2\x77\xec\x9a\x67\x77\x9e\xa5\xf0\xa9\x2c\x6d\xb6\x49\x7c\x1e\x76\x63\x13\x01\x67\xf1\xc2\x19\x7f\x9f\x32\xc1\xda\x63\x45\xc8\xa2\x0c\xf6\xe4\xd0\x94\x77\x84\xde\xd6\x63\x2b\xec\xf8\x95\xf0\xbe\xb4\xf2\x4e\x0a\x7e\xc9\xec\xd5\xe1\x3c\x5b\x39\x7d\xb2\xf5\xc4\xa8\xe3\x11\xbf\x2e\xd6\xf8\xaa\x99\xa6\xd1\x21\xfd\x5d\xdb\xcd\xc6\x8e\x31\x91\xa6\x37\xce\x2f\xdb\xec\xf3\x69\x34\xe4\xdb\xfa\x2a\x73\x01\x1e\x34\xe7\xe3\xa7\xd3\x3c\x84\x5d\x7a\x47\x9a\xf3\xa7\xd3\x7c\x3a\xd8\x7e\x4a\x45\x99\xea\x79\x30\x1a\xb1\x2d\xb5\x2d\x80\x26\x00\x14\x71\xa0\x1d\x57\x76\x9f\xf3\x3e\xa6\xd9\x72\x48\x3b\x36\x7b\x32\xa5\x70\xcc\x82\xf0\x32\x86\xf6\xef\x72\x4f\xf6\x4a\x99\xd0\xbb\xbe\x28\x7b\xfc\xbf\x23\xb4\x98\x6c\x45\x65\x94\xbe\x83\x4d\xf9\x9a\x97\xaf\x60\xb5\xb2\x70\x63\xbb\x6b\xf3\x76\x9c\xdc\x03\xdb\x3f\xbf\xb1\x4c\xfc\x55\xc6\xa1\x0f\xef\x30\xd9\x55\xcd\xab\x34\x9b\xfe\x8e\x76\x39\x90\xd0\xba\x7e\xe6\xe4\x5d\x60\x42\x24\x5d\x91\x93\xbd\x87\x50\x49\xf2\x5f\x6d\xe5\x00\xf2\xeb\x46\x35\x4d\xbf\x00\x77\x00\xce\xb5\xaf\xbd\x8b\x3c\xcd\x2b\xd0\xb4\xc2\x96\xd8\x9e\xbd\x14\xeb\x75\xc9\x9f\xab\x5b\x59\xf3\xad\x60\xb7\xf5\x85\x87\x20\x93\x8f\x80\x00\xf7\x30\x71\xb4\x53\xe9\x9f\xf3\xdb\xf9\x7b\xbc\x2e\xb5\xd0\x3f\x1c\xf3\xc6\xcb\xe2\x4e\xc8\xeb\x2f\xca\x83\x7e\x71\xc3\x25\x78\x32\x7a\x10\xee\xf2\x81\x3c\xa8\x7c\xf9\x50\x79\x33\xfa\xa5\x06\x28\x5b\xbc\xd6\x9d\x5a\x8f\x4c\xab\x48\x92\xe0\xe1\x4c\x45\x7d\x9f\xa7\xf5\xdd\xfe\xb7\xf6\x15\x7e\x38\x3b\x81\x31\x13\x92\xf1\x4d\xa9\x94\x8e\xec\x85\xaf\x0f\xc6\x70\x5d\x3d\x74\x38\x7a\x5f\xb7\x01\x13\x43\xc2\x9c\x19\x6f\xd1\x5a\xf3\x91\x96\xc1\xfb\x98\x0b\x3d\xb1\xc9\xd4\xa5\xd7\xdb\x38\x1e\x87\x52\x81\xb6\x88\x97\x6b\xfc\x02\x05\xab\x31\x5a\xa7\x8e\x8b\x48\xb2\x1a\x44\x88\x25\x9b\x9e\x97\x17\xf5\xe9\xe8\xdb\x1f\x1e\x8e\x4b\x0f\x4c\x5b\x84\xb8\x08\xba\xaa\x04\x99\xf2\x21\x4d\x0f\x8f\xf7\xf8\xd2\xfb\x5d\x5f\xb1\x97\xd1\x6b\xd6\x9a\x75\x6a\xb6\x45\x7a\xaf\xcc\x02\xde\x15\x38\x5d\xd1\x35\x35\x84\x42\x7f\xe2\x59\x5c\xeb\xc6\x6b\xae\x9b\xd4\x04\x4b\xfa\xb2\x14\xab\xf7\x89\xe5\x5b\x61\xf7\x6e\x75\xcc\x96\x6c\x5a\x82\x0a\x00\xa9\xd0\x96\x94\x0c\x9d\x84\x22\x4d\x87\x95\xae\xd5\x07\x41\x10\x00\x0b\x9d\xaa\x34\xcd\xb6\x3a\xda\x3c\x4e\x5f\x03\x05\x04\xc0\x28\x7b\xbc\xf3\x37\xba\x90\xd5\x06\x3c\x8f\x96\x1c\x2a\x01\x87\x56\x8d\xcb\x2c\x41\xd9\x8f\x0c\xaf\xf2\x4e\xb2\xf0\x95\x28\xb9\x4d\x65\xb7\x75\x14\x14\x59\x61\xfb\x2c\xb4\x60\xcf\xb4\x2e\xee\x00\x12\x1e\x44\xc2\xd1\x45\x45\x3a\xec\xc4\x30\xce\x45\x59\xaa\x5b\x7b\x17\xb2\xa5\xbd\xb9\xdb\xf3\xea\x78\x1c\xcf\x86\xec\x4a\x65\x8f\x25\xa2\x88\xf7\x5f\x3f\x2d\xf0\xdb\xb3\xba\x89\x03\x35\x51\xb2\x54\xc5\xda\x12\x3f\xd3\xe3\xca\x53\x4d\x34\xaf\x0e\x25\x9c\xdb\x4f\x16\x6f\x3f\x4c\xa7\xe3\xb7\x1f\xa6\xff\xf1\xf6\xc3\x94\x8f\xdf\x7e\x98\x6d\x96\xf7\x4f\x4f\x1e\x99\x1c\x94\x50\x59\x92\x10\x5a\x2c\xe4\x92\x71\x3a\x1a\x55\xcc\x2f\xa0\xd2\x01\x81\x68\xf6\xbd\xa7\x57\x9a\x50\xa3\x72\xed\xbd\x14\xb4\x90\xf4\x0a\xc4\x74\x33\x7d\x60\x79\x84\x04\x56\x19\x31\xef\x4f\x83\xef\x3d\x5c\x55\x49\xe8\xaf\x0d\x50\xc6\x9f\x74\x56\x7a\x68\x77\x05\xd8\xa8\xcf\x2a\x27\xc1\x39\x9d\xe8\x81\x4d\xcf\x0f\x17\xe2\x7c\x34\x3a\x90\x32\x93\x8b\xc3\x92\x1e\x6a\xf7\x0b\xa6\xe7\xda\x0a\x9a\x91\x6d\xe7\x44\x9a\x5c\xd6\x82\xf8\xbe\x5c\x76\x05\x02\x6a\xd6\x03\xf4\xb2\xad\x6d\xd9\x20\xd5\x20\xb7\x14\x9b\xac\x68\xaf\xcf\x6b\xef\x12\xe1\x0d\x80\x00\x92\x87\xdb\x3c\xcc\x6e\xe6\xdc\x5d\x1e\x73\xee\x25\x37\x88\xdf\xb8\x02\xb7\x9f\x55\xc3\x67\x85\x9d\xf0\xaf\x1b\xe3\x68\x79\xc6\x15\x2c\x63\x1c\xb3\x55\x4d\x6c\x0e\x24\xa0\x85\x25\x09\x5d\x2d\x0e\x1e\x4a\x07\x7f\x3b\x37\xa4\xba\xb8\x06\x47\xb0\x1d\x07\x12\x05\x4d\x0a\x10\x62\x26\xde\x87\x41\xac\xcd\xdb\x1c\x0f\x47\xd6\x39\xb9\x3f\xc5\x24\x65\xdf\x7a\xce\xb2\x95\x79\xe5\xae\xec\x63\xfa\x3f\x7d\xd9\x62\xad\xa1\x3a\xd4\x01\xe2\x87\x6a\x77\x8e\x92\x3d\xa8\x29\x67\xc8\xc5\x53\x04\xa6\x88\x83\x99\xa1\xfa\x78\xfc\x4b\xc6\x29\xe8\xfa\x9b\x53\x5c\x5b\x97\xd7\x1a\x32\xd3\xe8\x45\x8f\x7e\xa7\xe9\x96\xd0\x55\x13\x35\xa0\xb4\xfb\x17\x20\x86\x96\xd7\x01\xc1\x69\xe4\x1d\x28\xbc\x92\x66\x7a\x6e\x58\x47\x71\x30\x7f\x58\x81\xcf\x76\x93\x00\xe6\x50\xad\xc1\xfd\x70\x97\x50\x07\xb4\x27\x3a\x7a\x48\x81\xfe\x34\x2a\x61\x86\xfe\xb3\x09\x28\xd2\xa3\xf4\xf9\x91\xa1\xc2\x72\x3e\x36\x56\xa0\x61\x6a\x59\x5b\xb8\xb8\x69\x36\xa5\x57\x38\xf3\x03\x35\xbf\xd2\x6c\x3c\xf9\xfc\xcf\xb9\xb6\xbf\x66\x9f\xe7\x07\x0c\xf9\x1f\xf9\x3a\x4d\x33\xfb\x73\xf6\xe4\xcf\x78\xb2\xdc\xe9\xae\xce\x0b\xe3\xa8\x7c\xfc\x9c\x97\xa6\xf8\x1b\x38\xfb\xad\xbf\x7f\x8b\xad\xe0\x41\xed\xc3\xb2\x48\xa6\x10\xa5\xfd\x55\x7c\x10\x80\xf6\xf3\xcd\xab\x9f\xbe\xfd\xfb\xab\x1f\xde\x3c\xfb\xfe\xdd\xb3\xbf\x7d\xfb\xda\xeb\x86\x40\xba\x48\x31\xa4\x2f\xeb\x2f\x2f\x7e\x7a\xf3\xed\x97\x2e\xe3\x5c\x87\x6c\x79\x53\x9d\xa4\x6e\x11\xa1\xf7\x1f\x72\x43\xef\x72\x7d\x8a\x20\x8e\xde\xe9\xda\xfa\x5e\xb2\x3b\x38\x7e\xed\xa9\xf6\x01\x0c\xc8\xef\xe2\x07\x53\x94\x6e\x79\xd9\xdc\x21\x28\x89\xc2\x14\x5f\x96\x0d\xe5\xdf\x75\x88\xc5\x37\xb2\x10\x5d\x9b\xcc\x8a\x34\x3d\x80\x1c\x73\x8d\x2f\x95\x69\x7a\x93\xa6\x15\xe1\x79\x8d\xdf\x69\x26\xa6\xd0\xd7\xdc\xd0\x0d\x43\xc6\xe9\x7c\x3b\x64\xe5\xf9\x96\x6d\xe3\x77\x30\x9f\x7e\xcf\xa6\xe7\xfb\x8b\x8d\xa7\x64\x7b\x7c\x30\xde\x2c\xf6\x88\xfc\xca\xd8\x36\x26\x2a\xab\x83\xb6\x25\xfc\x6a\xc7\xe7\x0d\xd4\xc2\xb6\xc8\x3f\x9f\xf1\x13\x36\x0f\x3c\x5f\xae\x50\x2f\x7d\xc8\xae\x02\xa4\x87\x6d\x73\x9a\xee\x6a\x55\xe0\xa6\x9a\x74\xa4\x76\x3b\x52\x7f\xba\xd2\xb4\x39\x14\xe3\xe6\x50\xd8\xf3\xef\xe6\x63\x45\x81\x51\x89\x88\xcb\xc2\x6d\xd7\x18\x74\x30\x30\x71\x3e\xaa\xd6\xc4\xf1\xb4\x08\x05\x5b\x34\x94\xe6\xd1\xa4\x11\xc7\x3c\xf4\x0d\x56\xc0\x8e\x41\x83\xaf\x3b\x9a\xc7\x57\xec\x7a\x54\xf4\x3e\xa6\x0e\x76\x17\xd3\xf9\x75\xac\x2f\x7e\x3d\xda\x8d\x3f\x9f\x92\xfc\x2a\x16\xb2\x44\x16\xaf\x57\xa3\xdd\xe8\xf3\x29\xa1\x81\x64\x5e\x7b\xb4\x85\xab\x13\x39\x5d\xeb\x8b\xa7\xd3\xa0\xc5\xd4\x68\xf8\xbc\xd5\x8f\x78\x74\x68\xd1\xb0\x04\x88\xe6\xc0\xc7\x3c\xff\x1b\x13\xe1\xf7\x6f\x4c\x3d\x74\xd9\x09\xfa\x19\x8d\xca\x3c\x0f\x15\xd7\x39\x6e\xa4\xa0\x26\xae\xb5\x11\xf7\x1b\xd5\x96\x02\x84\xca\xd3\xd4\x3c\x09\x1f\xc7\x23\xaf\xa3\xfe\x96\xa6\x3c\x44\xfd\x6d\xd0\xec\x6f\xd1\x31\x76\x00\x80\x89\x2b\xcd\xb2\x2b\xfd\xa7\x6b\x3d\xd2\xe4\x49\x76\xad\x47\x33\x42\x47\xa3\x6b\x6d\xb9\x24\x70\xde\x45\xf2\x2c\x14\x39\x8a\x07\x61\xc4\x14\x89\x2f\xfb\xb7\x3a\x06\xb2\xa9\x00\x73\x31\x61\xcc\xf2\x9c\x6a\x73\x06\x8c\x87\x61\x2b\xb9\x30\xcb\xe8\xf6\xd4\x76\xa6\x1a\xc3\x88\xfa\x97\xb1\xb6\x20\x98\x0a\x36\x9c\x01\x23\xd4\x7e\x54\x0a\xf7\xc9\xea\xb0\xdf\x6b\x5e\x55\x2f\xd6\xc2\x54\x00\x9d\xd1\x3c\xfd\xf1\x39\x72\x38\xb3\xe4\xca\x32\x64\x43\x56\xa8\xa0\xd0\xd8\x4e\x26\xe9\x03\xc5\xce\x6a\xa5\xbd\x57\x38\x2a\x70\x77\xfd\x51\x7c\xe0\x65\xd5\x43\xf2\xef\x74\xa4\xb4\x68\x26\x1f\xfe\xc4\xae\x34\x35\x93\x3b\xfc\x8f\x20\x73\x2f\x34\x30\xe6\x2b\x55\x53\xd9\x0f\x3d\x8f\xe6\xb1\x63\x5c\xa0\x87\x30\xea\x7b\x99\x85\xab\x69\xe2\x20\x4b\x93\xc1\x0b\x70\xe4\x95\x7d\x3e\xa5\x7d\xd7\x72\x2c\x03\xc5\x3b\xad\x30\x07\xb1\xd5\xeb\xee\x16\x24\x25\x86\x89\x51\x72\x96\x8c\x8c\x53\x97\x6e\x3f\x82\xb6\x0d\x9f\x43\xe9\x2f\x8b\x5e\x13\xe8\x0d\x32\x0b\x8d\x64\x0b\xb9\xb4\x57\x48\xc4\x2e\x27\x61\xc0\x83\x72\xaa\xbf\xf0\xf0\x0f\x46\x17\xdf\xf1\xbb\x2a\x4d\x5d\x31\x9d\x18\x8a\xfe\xaf\x5a\xd1\x58\x0f\xc4\xa1\x90\x46\xfa\x39\x4a\x76\x87\xd2\x88\x84\x31\xd5\x1d\x1b\x43\x68\x18\x61\x48\xf0\x77\x7b\xd7\x4d\xde\x73\x67\x55\xbd\x4e\x28\x0e\x42\x9d\x6c\x68\x93\xb9\x32\x87\x4c\x1d\x8f\xd9\x17\x22\xd3\x84\x0a\xbb\x02\x09\xb5\x67\x86\x4a\xd3\x27\x6f\xff\xdb\x67\xee\x1e\x65\xc8\xdc\x25\x19\x4e\x49\x3e\x1c\xaa\x08\x57\x4d\xc7\xb8\x37\x3b\xdb\xa3\x61\x00\xf3\x1d\x0e\xd1\x7b\x53\xfd\x6c\x34\x6c\xb6\x7e\x0e\x4b\x2a\x79\x6d\xe3\xc7\xc9\x48\xd3\xf8\xc2\x57\x5f\xc7\x6f\xbd\xa4\xdf\x4e\xf6\xf1\xf8\x01\xb5\x04\x5b\x69\x7b\x37\xfb\xfc\xc9\x3f\xae\xd5\xe2\xd9\xf8\xef\xcb\xd0\x95\xdc\x4c\x76\xca\x66\x22\x8d\xd2\x6d\xd1\x79\x7f\xc9\x9d\x74\xc8\x86\xbd\x76\x1c\x58\x8d\xa5\xd6\x23\x0a\x30\xdd\xb7\x07\x2f\x17\x40\x07\xb9\x17\xb3\x59\x9a\x3e\xfd\x1f\x96\x19\x72\x58\xb3\x30\xc7\x58\x27\xc0\x6f\x37\xac\x05\x5d\x9a\x81\x69\xd1\x86\xd9\x7f\x07\x7c\xad\x5a\xb1\xc1\x91\xac\x57\x4e\xd7\x60\x95\xa6\x99\x6d\xf0\x5c\x23\xdc\x81\x3c\x1e\xff\xe3\x3f\x86\x36\xcb\x5f\xd5\xf1\x88\x57\x31\xff\xa2\x57\xdf\xc5\x8e\xc7\x9e\xbb\x51\xd3\xb9\x1e\xa1\x33\x2c\xe7\xc9\xdb\xab\xd8\xe9\xb0\x56\x55\xb5\x2d\x84\x7e\xeb\xdd\x84\x99\xc6\x95\xe7\xb9\xb8\x99\x04\x77\xc5\x76\x2f\x3c\x6c\x8b\xde\x75\x87\x08\xe3\x6c\xab\x8d\xc6\xcc\xdf\x24\x8f\xc7\xec\x7b\x3b\xbe\x49\x5f\x63\x92\x96\xd4\xf6\x3d\xbf\x3b\xec\x13\xbb\x39\xba\xc2\x5c\x75\xc3\x75\x02\x3e\xcb\xbf\x7a\xac\xbc\xaf\xfb\xcb\xeb\x8a\x5f\x7d\x79\xa7\xa6\x89\xfe\x4b\xec\xcc\x7f\x6f\x2e\x00\x84\x10\x76\x57\xfa\xfa\x90\x30\xa8\x43\x4e\x63\xeb\xe8\x67\x3d\xab\x6e\x98\xb5\x24\x4e\xc7\x63\x50\x97\x09\xb3\x0b\xbb\xd1\x0f\xda\x8d\x1d\x41\xb7\x00\x88\xdf\xce\xa1\x45\x20\x86\xf2\x00\xc8\xf0\xc6\x06\x68\x9c\xaf\x03\x33\xe9\xf6\x02\xca\x13\x50\x8a\x6b\x9b\xb1\xb2\xd5\xdd\x6e\xc5\x6a\x6b\x4f\x5d\xf7\xf3\x62\x36\x25\xc7\xe3\xd0\xad\x4c\x92\xb5\x89\xb5\x2b\x12\x49\xc3\x7f\x4b\x46\x7a\x94\xfc\xb7\xe4\x53\x28\xc3\x89\x80\xd8\xec\x61\x64\x67\x58\xfd\x04\x56\x75\xf3\x2c\xa9\x31\xa6\x9b\x46\x1e\x3f\xea\x47\x85\xcd\x1f\x11\x1c\x13\xda\x40\x7a\xee\x71\x86\x93\x75\xdc\xd5\x67\x20\xaa\x4c\xe0\x3b\xa1\xbc\x56\xeb\x70\x29\xd8\x70\x4a\xbf\x8a\xc1\x32\x1d\x37\xdb\x58\x9f\x2e\x6d\x12\x54\xdf\xed\x34\x3c\xe8\x03\x9e\xd5\xea\x34\x0d\xc0\xca\xa6\xe3\xe2\xaa\xf1\x2e\xd3\x3c\xc0\xfb\x72\xc0\x94\xd0\xa7\x53\x42\x7a\x4e\xee\xc8\x0f\x4f\x46\xfc\xc1\x13\x81\xe6\x3d\x3e\xec\xd0\xca\xb6\x03\x1c\x1c\xb7\xab\xf2\xa0\xfb\x87\x6d\x46\xbf\xff\xe4\x61\x23\xe8\x3f\xd9\xbb\xc8\x89\xb2\x5d\x95\x42\xbe\xe7\xfa\xc1\x67\x8d\xee\x7c\xf6\xf0\x7a\x27\x7c\x21\x8b\x3a\xfc\xde\x9d\xa2\x55\xf4\x00\x40\x4d\x83\x2c\xd6\xd2\xe9\x21\x4a\xe7\xbd\x70\xba\x9e\xc8\x84\xa4\x69\x4b\x72\x1d\x45\x52\x5b\x33\x94\x03\xc4\x00\x52\x39\x07\xc5\x3b\xc8\x1c\x2f\x12\xbf\x2d\xa2\x02\x32\x87\xef\xf5\x93\x66\xaf\x9c\x66\xeb\x0b\xb9\x66\xbd\x5e\x34\x6c\x9e\xf9\x86\x67\xbc\xc6\xb1\x18\x35\xc0\x12\xc6\x33\x7a\x63\xa7\x23\x56\x44\x1c\x65\x33\xf0\x05\x5b\xa7\x9a\x73\x0f\xa1\x96\x5b\xfe\x9f\x4f\x8c\x8a\x2e\xfd\xbf\xd7\x7a\xdc\x00\x01\x8d\x5e\xf6\x22\x6d\x6a\x3e\xa8\xa3\x8c\x8a\xb1\xa1\x7f\xd2\x99\xa9\xcf\x54\x68\x5e\x03\xac\x6c\x0c\x26\x85\x10\x31\x36\x75\x1f\xc8\x78\xe6\x28\x61\xed\xf5\xc8\xe1\x38\xfb\xe4\xf6\xce\x37\x62\x50\xfe\x64\xb5\x05\xf3\xc2\xc9\x6a\x4b\x3c\xd8\x5a\x84\xf1\xd6\xd1\x95\x5d\x2c\x69\xe0\x4f\x79\xd9\x02\xc5\x6e\xe0\xf3\xd4\xd1\x0b\xb9\x1c\xe8\xc6\x4b\xfa\xef\x3a\x13\x01\x91\x9a\x50\xf8\x04\x69\xa7\xbd\xa3\x7b\x6e\xf5\xb9\x6d\x0d\x6f\x29\xf9\x44\x30\x62\xba\x45\x8b\xeb\x6e\xda\xff\xf3\x5a\x6b\x86\x63\x27\x57\xdb\x91\xb6\xdd\xcc\x6b\xed\x99\x8c\xfb\xe1\x43\x65\x05\x9b\x32\xaa\xe2\x5b\xdd\x84\x0d\xbc\x5f\x15\x72\xc5\x4b\x04\x73\x02\xb1\x3c\x8e\x3b\x35\x2a\xb7\x83\x18\x3b\x0e\xf6\x92\x76\x33\xc1\x1f\x14\xf3\x76\xbd\x30\xb8\x22\xd9\x70\x7a\x3a\x05\x1b\x2d\xb0\x84\x70\xd8\x27\xf5\x89\xe2\x95\xb0\x8c\x3f\x7c\x6d\xe5\x80\xe1\x48\xc1\xee\xdb\x07\x1b\x85\x81\x9a\xc0\x4b\x67\x16\x99\x6d\x39\x69\xfa\x74\x88\x77\x18\x88\xc1\x06\x32\x61\xf7\xbc\xa3\x50\xe0\xd0\x17\x0d\x3d\x12\x78\x7d\xb5\x43\xb3\x03\xfb\x46\x80\x27\x68\xa7\x00\xd7\xd0\x84\xca\xd0\x9d\xb9\x3d\xcc\x72\x7c\xbb\x90\x61\x90\x64\x18\x24\xd9\x18\x24\xe9\xda\x10\x9d\x6a\xdf\xc7\x17\x64\x40\x4b\xb8\x47\x5f\x71\x1e\x04\xc9\x6f\x93\xef\xd0\x6f\x18\xfd\x5e\x13\x97\x63\xe0\x72\xf4\xdd\x43\x5d\xae\x13\xf0\x1f\x48\xa2\x1a\x5d\x41\xde\x63\x97\xa6\x36\xae\xdb\x53\x82\xd2\xda\x6f\xc3\x89\x1e\xf4\x65\x5f\xa0\x10\xab\xcd\x27\x60\xa4\xb7\xd3\xe0\x13\x61\xb8\xf6\x6a\x18\x41\x85\x2b\x6b\xfb\x25\x98\x80\xbf\xa0\xf5\xeb\x7d\x21\xab\x0e\xb6\x75\x14\x57\x3f\x25\x98\x9a\x1d\x8a\xe2\x17\x66\x89\x9f\x7a\x30\xd4\xe1\x48\x3f\x1e\x65\x9a\xba\x37\x30\x49\xb5\xed\x12\x1a\xbd\xd5\xe6\x82\x1a\xdf\x7d\x86\xb2\xd7\x80\x44\xb0\x05\xce\xac\x81\x97\xa8\xd3\x92\x2a\x36\x3d\x57\x17\xb2\x6e\x4f\x6d\xda\x5b\x30\xb9\x50\x4b\x78\xe0\x45\x58\x4a\x42\xf1\x15\x56\xf4\xbc\xba\x0a\xf7\xc4\x3a\xb4\x24\xf1\x60\x57\x4b\xe5\x09\x26\xf8\x58\x71\xce\x8b\xc0\x56\xfd\x72\x4a\xfc\x23\xeb\xa2\xa4\xb3\x25\x5d\xb3\x38\x05\x9a\xb9\x6f\x59\x5d\x90\x51\xe4\x3c\x5b\xdb\x92\x86\xc5\x44\xc8\x55\x79\xa8\xc4\x0d\x77\x10\x0d\x6b\x7b\x2e\x61\xe7\xb1\x6f\x87\xb0\x6a\xb1\xac\x13\xa1\xd9\xf6\xb2\x95\xf9\x27\x34\x72\x18\x6e\xdb\xb9\x2b\x58\xe9\x2a\xb7\x55\x9f\x08\x15\xf0\x44\xb7\xf2\xd6\xa1\x82\xae\x08\x2d\x47\xac\x76\x5b\x7a\xaa\xa5\x23\xe1\x94\xc0\x13\x01\x94\xe5\x7b\x9e\x41\xc7\xb3\x73\x71\xc9\xa6\xe7\xe3\xb1\x20\x5f\xd9\xf5\xe8\x36\xdb\x42\x2c\xeb\xfd\x66\x3f\xfc\x96\x13\xf3\x45\x92\x2c\xbd\x5f\x73\xa7\x1d\xf4\x95\xbb\x2f\xd6\x1b\xef\xab\xfa\xc4\x9a\x0d\x9b\xf0\x98\xc7\x63\x92\xf8\x20\xf0\x7a\x83\x2a\x69\x71\x6b\xfd\x32\x74\x27\xc7\xe0\x77\xe1\xc4\x31\x76\x33\xcd\x23\x9f\x83\x62\x9d\xff\x50\xfc\x40\xe8\x17\x5e\x5e\xf3\x12\xf9\x07\x2f\xc6\x5a\x2c\x07\xef\x44\x53\xff\x04\x68\x7d\x78\xbd\x95\x94\x7b\x15\x16\xbb\x82\x7f\xb6\x94\xc9\x7d\xdb\x33\x45\x7a\x40\x3c\x9f\x26\x54\x05\x77\x00\x5f\xdb\xa9\x21\x95\xfb\x23\x26\x3a\x40\x6b\x8e\xc7\xe1\x83\xa4\xa4\x61\xd8\x5a\x57\xae\xf0\xf0\xa3\x05\x4b\x0e\x72\xad\xec\x45\x7f\x2e\x26\x6b\x25\x79\x2e\x26\x36\x44\x72\x5a\x35\xe2\x30\x30\xc7\x44\x6e\x77\x14\xb5\x3b\x2f\xc9\x8a\x45\xb9\xa4\x7a\x3e\x94\xee\x44\x3d\x1e\xe5\x04\x5d\x9a\x64\xe8\xb6\x26\xf7\x31\xe4\xbc\x1c\x8d\xc8\x39\x1a\x3f\xf9\x32\xb0\xa5\x02\xf4\x61\x9c\x9a\x8f\xe8\x51\xfb\x39\xb7\x35\xa1\x1b\x2a\xe2\x8a\x43\xd3\xa6\xe7\x22\x93\xb4\x82\x03\x66\xd8\xaa\x98\x44\x2e\xc8\xce\x3e\x03\x27\x17\xf4\x1e\x18\xd3\x9f\xf8\x5a\x81\xae\xdb\x40\x31\x79\xc2\xed\xbd\x58\x0e\x9e\x8b\x4c\xd9\xb2\x1c\x60\xe1\xbd\x33\x3f\xca\x0f\xf4\x9a\x4b\xe7\xbe\x35\x17\x93\xfa\x03\x76\x4f\xfd\xc9\x64\xf4\x71\x3c\x8e\x46\x62\xb2\x2b\x3e\x7c\x1d\x82\x1c\x4a\xf2\xbf\x40\xda\x81\xbc\x95\x4c\x7a\x8b\xa8\x7a\x9f\x95\xb8\xcf\x4a\xaf\xf8\x1b\x92\x38\x6a\xb5\xf6\x47\xa8\xa1\xab\x34\x1d\xc2\xe9\xb0\xb6\xac\x6c\x3c\x3a\x99\x9f\x0d\x36\x25\x83\x03\xf6\xfe\xbd\x5d\xe1\x6b\xb7\xe6\xb7\xac\x9c\xc3\xb6\x59\x93\xfc\x46\x65\x05\x19\x7c\x81\x05\x6d\xe9\x8f\x12\xd3\xd1\x61\x89\xae\x6e\x9d\xc3\xdb\x96\x0e\x21\x52\x80\x75\xd8\xfe\x3f\xe9\x6c\x4d\x4e\x5e\xa5\xb5\x6f\x47\xa1\xcf\x13\xb7\xa3\x36\x8f\xec\xa8\x35\xa1\x9b\x07\x76\xd4\x1a\x77\x94\x6f\x23\xec\xa8\x68\x4f\xfd\x5c\xd3\x93\xa9\x7f\x66\x44\xd3\x3f\x66\x90\xbd\x63\x4e\x1b\xf7\x4e\x65\x31\xdb\xd8\x3c\x16\x23\x17\x32\xa8\xcb\xc8\x63\x97\x24\xa3\xda\x51\xa5\xe7\x64\x79\xed\xc2\x04\x62\x9d\xbb\x12\x94\xc5\xb6\xd9\x4a\x20\x4f\x04\x7c\xa2\x3b\x80\x37\x6f\xb8\x09\xff\xc7\x06\x40\x8a\x23\xfb\xc9\xda\xb1\x2f\xc0\x95\x04\x53\x44\x79\xe1\x71\xee\x80\x1b\x36\xae\x3c\xe9\x2f\x3b\x49\x4c\x6e\xbe\xd0\x0d\xd7\x03\x38\xb1\x8f\xb0\x38\x5f\x78\x16\x87\xa2\x12\x71\x60\xe8\x2f\x5c\x3b\x09\x0e\x76\xf3\x12\xf3\xd0\x3d\x21\xb2\xfd\xc9\xa2\xf0\xcb\x58\x4d\xd7\xab\x46\xd4\x48\x7f\xbe\xa6\xa0\x43\xd6\xaa\x2b\x8c\x58\x54\xd3\x00\x9a\x25\x08\x35\xde\xad\x0d\xf7\xe9\xe8\x14\xb4\x59\x40\x13\xd5\x35\x72\x24\x68\xb8\x91\xc0\xc1\xb5\xb8\xf1\x10\xc8\x64\xd9\x66\xab\x4f\x01\x7b\xa4\x6e\xf4\x20\x14\x75\x09\xb8\x6b\xae\xd2\x9a\x57\xdf\xf0\x4c\x01\xcc\x40\x0b\x80\xdb\xd7\x17\x4e\xb8\x6e\x75\x84\x1a\xa7\x03\xb1\x06\x97\x8a\x8d\xa3\x9a\x22\xea\x82\x3b\xfb\x70\x51\x75\x6c\x9d\x6e\x6a\x04\xf2\xd8\x5e\x1a\x74\xf0\xa0\xa8\x02\x2e\x6a\xb4\x62\xc3\x19\x2d\x9d\x59\xfa\xc3\xe0\xec\x25\x7b\x23\xb2\x3f\x64\x86\x78\xe2\xde\xbd\x28\x95\xc8\x69\x96\xce\xdc\xbc\x8f\xc9\x64\x4c\x78\xc8\xb7\x80\xf8\xcd\xc0\xf4\xe1\x44\x08\x19\xc8\xa6\xa6\x4e\xdc\x4f\x30\x38\xd2\x2a\xe3\x64\xb0\xb1\xd5\xda\x15\xf9\x0c\xc4\xf2\x0f\x36\x33\xb4\x47\xf5\xdc\x64\x69\x0f\xca\xe7\x73\x00\x1e\xb9\x0c\x4d\xfc\xde\x9f\x86\x21\x84\x71\xda\x8a\x65\xa6\x0e\x89\x30\x14\x2a\x94\x67\x80\x78\xc8\xa3\x9e\x34\xb1\x32\x01\x40\x69\x00\xf7\x14\x69\x04\xd7\xf5\x73\x6a\x1d\xe6\x07\x17\x75\x40\xfe\x7d\xea\x10\x22\x0e\xad\x2d\x90\xe1\x80\x8f\x95\xbf\x8c\x0f\xcc\x64\x73\x28\xcb\x39\x07\xb0\x05\x0c\x1e\x3a\x6d\xc7\xe3\xb1\xcb\x62\x6d\x03\xa2\x3e\x81\x3c\xae\xde\x7a\x22\x0f\x24\x37\x51\x78\xe2\x1c\x99\xc6\xe7\x9e\x07\xa0\x21\x74\xdd\x08\x41\xcc\x9c\xf5\xf1\xb8\xf2\x26\x26\xb8\x35\x80\x55\x2d\x1a\xd7\x57\xb7\xc8\xf3\xb0\xdc\x3b\x5b\x61\xb0\xf6\xef\x38\xab\x70\x51\xdc\x12\x7b\x02\x86\x41\xae\xb1\x6f\x40\xc8\xd4\x0e\x8c\x2e\x1c\x5b\x72\x7a\x4c\xfa\x07\x5a\xc9\x48\x04\x0d\x95\x24\xdf\x08\xf7\xf8\x44\xbf\x86\x8b\x2e\xad\x54\x4c\x58\xbf\xd1\xb1\xcd\x92\x65\xa0\xe1\x7e\xa3\x09\xdd\x73\xb8\xf2\x5c\x4c\x83\x62\xdf\x40\x32\x4d\x35\x53\xa7\xbe\x57\x58\x50\x12\x89\xb4\xeb\xec\xae\xfe\xbe\x66\xb6\x35\x30\xd9\x6e\xdc\xfc\x00\x89\x53\x24\x42\xf8\x45\x3f\x6e\x3d\xf5\x43\xd3\x4d\x02\x40\xff\x6b\x8f\x3e\x52\x79\xe0\x65\xaf\x3c\xe0\x87\x30\xbc\x7d\xcf\x3b\x21\x79\x9f\xd6\x39\x2d\xd9\x06\x54\xe9\x0e\xec\xfe\x34\x10\x63\x7d\x59\x02\xbc\x95\x1e\x95\x7e\xe1\xc4\x7a\x03\xa3\x83\xc9\x40\x5d\x55\x5f\x14\x74\xcb\xc4\xe5\x6a\x0c\xa0\xf7\xfa\xa2\x22\x87\x48\x7b\x6a\x3d\x9f\xe6\x3a\x9c\x22\xe2\xb2\xf2\x17\xb9\x4d\x64\x0e\x42\xb3\xed\x7c\x95\x0b\x32\x2e\xc9\x60\x33\x64\x76\x0f\xc6\x65\x6c\x50\x60\xb7\x7f\xbc\xab\xe0\x49\xab\x1b\xd4\xed\x2c\x28\x28\xec\xd8\xd6\xf6\xd6\x1e\x46\x9e\x1c\x6d\xc4\x07\xbe\xfe\x1a\x8e\xe0\xb9\x0a\xaa\xbd\x11\xea\x6f\x3e\x25\xf4\x86\xc9\xb1\xb9\xdc\x05\xb7\xba\xc0\x7b\x9b\xd1\x8e\x50\x73\x31\x9b\xce\x0f\xb1\x36\xd4\x34\x37\x17\xfb\x66\x50\xa4\x98\x61\xc6\xd9\xcd\x7c\x9a\xcf\xa6\x84\xe4\xf2\x72\x37\xda\x8f\xff\x1c\xf5\x1b\x61\xf6\x46\x3e\xc9\x78\x47\x68\x64\x55\xfc\xcf\x70\x09\x09\x0a\x4d\x4e\xd1\xe8\x78\xfc\xcc\x12\x11\x87\x1c\x67\xa2\x8d\x16\x95\x5b\x3b\x88\xec\x8e\x5f\x4b\x31\xad\x9b\x86\x8c\x8c\x2f\x5e\x77\x8a\xb7\xd3\xd5\x5b\x3a\x2e\xc4\x86\x1a\x4b\xde\x49\x41\x46\xb1\xcf\x97\x5f\x41\x7a\x0e\xdd\x89\x3d\xfd\xa3\xba\x60\x46\xa8\x66\x86\x4a\x66\x1e\x73\x4a\x62\x26\xab\xed\xbc\x36\x6a\xb1\x9f\xe3\x19\xc9\x6d\xbe\x66\x28\x58\x8c\xb5\xdb\xf3\xa3\xaa\x58\x63\x13\x23\xd6\x5d\x5e\x57\x88\x8f\x22\xa8\xda\xf6\x12\x22\xa9\x47\xbe\xcb\x87\xd3\x88\xda\x7c\xa6\xbb\x48\xe9\x51\x35\x88\x95\x7e\xdf\xd7\x80\x60\x8a\xaf\x19\xfa\x66\x71\x52\x0b\xe9\x3f\x2d\x53\x21\x5a\x50\x88\xe8\x3f\x89\xca\x36\x14\x22\xf8\x4e\x02\x1f\x83\x7b\x32\x36\x0e\xbb\x2f\xb6\xb3\x02\xd5\x74\xea\xc0\xf9\x1b\x16\x58\x0e\x13\x51\x06\x4c\x44\xd3\x03\xfd\x17\xcc\x45\x61\x8f\x89\x68\x66\xa3\xb1\xf8\xba\x07\x11\x04\x2d\x44\x63\x65\xb9\xa4\x58\xaf\x13\x42\x93\x6a\x57\x68\xe7\xae\x2e\x53\x93\x9d\x5a\x73\x80\xbd\x91\x66\x2e\x58\x85\xd8\x65\xb9\x66\xc9\x5e\xf3\x9b\xa4\xb6\x19\x68\x9b\xb6\x55\xec\x85\xbd\x54\x1a\x42\x4b\xb6\x55\x19\x8a\x3a\xf1\x52\x52\x90\x41\x85\x77\xf7\x67\x1b\xc3\x6d\x35\xf1\xa7\x53\xcf\xba\x71\x7e\xbb\x31\xe3\x64\x07\x9a\xb2\x4f\xfe\xf1\xb6\xfa\xd3\x13\xb2\x98\x22\x8c\xcc\xf1\xf8\xe4\xed\x6b\xf7\x48\x8c\xe9\x88\x7b\xcd\x8f\xba\x90\x1d\x58\xa3\x17\x99\xa0\xae\x4c\xb4\x7b\x5a\x05\x3e\xd3\x17\xc1\x58\xa1\x8e\xc7\xc3\x25\x3c\xb5\x80\xd0\xc1\x4b\xdc\x06\xbe\xdf\xa7\x93\x73\xbc\x3e\xa5\x9a\x25\x52\x99\x64\x80\x11\x8c\xe9\xf9\x81\x99\x4b\x85\x9c\xf4\x1c\x0d\xf8\x14\x35\xe3\x19\x69\x0c\x41\x3e\xcd\x61\xc0\x31\x43\x39\xaa\x47\x10\x9b\xf9\xb3\x14\x26\x4f\xaa\xc3\x95\xd1\x05\xd8\x13\x42\xb2\x71\x7f\x32\x09\x90\x55\xf5\x21\xa9\xc1\xdf\x78\x39\xd2\xf6\x70\x89\x28\xe0\xc1\xdb\x6d\x25\x09\xdd\x32\xe7\x5a\xb5\x59\xe0\xaf\xc2\x6c\xdf\x14\x57\xb5\x84\x73\x13\x1b\x99\x1c\x9e\x14\xe4\x7c\x73\x3e\x1e\x6f\xc8\x76\xc4\x0a\xba\x1e\xb1\xe4\x2d\xba\x39\xdc\x5e\x1c\xd2\x34\x5b\x8f\xd8\x4e\x65\x87\xf1\x96\x10\xba\x1e\xb2\x95\x67\x62\xbf\xd1\x99\xa2\x6b\x30\x6e\x73\x7e\xba\x0d\xad\x47\xbe\x76\xc8\xdc\x59\x09\x74\x38\x85\x3b\xde\x86\x4d\xcf\x37\x17\xaa\xe7\x81\x63\xe3\x1f\x38\xf6\x2c\x8e\x5e\x6c\xd0\xed\x67\xc3\x69\x66\x9a\xee\xfd\x9d\x33\xe8\x7c\x93\xfb\x5f\xec\xd5\x63\x43\xdd\x35\x76\xcb\x5a\xad\xdb\x12\xe2\x5d\x2c\x46\x80\x80\x1d\x95\x26\x63\x6f\x0b\x5e\xef\xa6\x3d\x23\x66\xae\x00\x4c\x83\x7e\xeb\x1e\x06\x72\x70\xe3\x13\xe0\xcf\x04\xca\xe6\x33\x99\x29\x2a\x88\x97\x27\xf8\x9b\xaa\x00\x8f\x46\x11\xa5\xfe\xae\xf3\x06\x14\x5e\x62\xfd\x45\x5d\xb2\xc5\x92\x22\xca\x6b\x00\x11\x02\xb0\x57\x9f\x47\x31\x93\xe9\x85\x58\x92\xf3\xda\xee\x63\xcf\x33\x85\x77\x8a\x1b\x95\x49\xe2\x1e\xbf\xce\x03\x24\x1c\x0a\xa2\xdc\xeb\x58\x81\x29\x55\x78\x3d\xbb\xc7\x9f\x0c\x23\xfc\x98\x39\xa1\x9f\x22\xa7\xdf\xda\x36\x79\xb5\x14\x3d\x12\xa0\x9a\x4b\x36\x3d\x37\xe3\x31\xf9\x46\x3b\xa6\x3b\x49\xa8\x5c\x18\x27\x41\x85\x5f\x46\xd1\x64\xb4\xe6\x25\x37\x96\x7d\x86\x73\xeb\x14\x3f\x8b\xfe\xb5\x87\xc3\x73\x87\x0f\xe0\xa3\x6c\x69\xc5\x34\x45\x7c\x13\xaa\x1a\xae\x8e\xbc\x32\x30\xad\x58\x26\xe6\x87\x22\x5f\x15\xc4\x5e\xd9\xa8\xf6\xae\x9b\x70\xc6\x2a\xbc\x85\x03\x0f\xab\x46\x9a\xf8\x4b\xf8\xf1\x28\x2f\x19\x0f\x40\x4a\x95\xf8\x83\x1f\x8f\x99\x62\x92\x0e\x1d\xa0\x0a\x95\x84\x44\x0a\x84\x05\x13\xf3\x4c\x5f\x4c\xe7\xb2\xc8\xb5\xad\x8b\xe4\xf6\xab\x8c\x6f\x20\xf9\x14\x09\x4e\xc1\xaa\x41\xc0\xa4\xb1\x94\x6e\xb5\x2d\x34\x18\x9b\x1e\x62\xbf\x79\x2b\x55\x1e\x76\xd2\x85\x03\x64\x81\x8f\xb9\x55\x7a\xed\x1c\x0e\x5e\x6b\x75\xd8\x43\x1a\x3f\x0d\x2b\xdc\x71\x6b\x56\xc7\xd1\x2d\x8b\x44\x5b\xd7\xdc\x7c\xc3\xcb\x3d\xd7\x99\xa1\x50\x14\xb8\x9d\x4c\x08\xdd\xb0\xe1\xf4\x7c\x68\x7b\x41\x8e\xc7\x43\x36\xdc\x90\xf3\x8d\xbd\xe0\xb9\x7d\x59\x36\x7c\x25\x15\xe4\x78\x4c\xde\xca\x84\xee\xd8\x1b\x95\xed\xe9\x96\xcc\x93\xdb\x24\x5f\xa7\xa9\x0d\x65\x6c\x3f\x4f\x64\x92\x0f\xd7\x96\xbc\x57\x8e\xbc\xef\x09\x6e\x90\x64\x0f\xc4\xc6\x46\x6e\x8e\xc7\xdd\xf1\x98\xed\x58\x62\x5b\xb0\x4a\xd3\xd5\x90\xed\xc8\xbd\x67\xd7\x67\xf4\x90\x85\x8d\x2b\x36\xd9\x2e\x4d\xb3\x15\xdb\x11\xaa\x2f\xa7\x69\x3a\x84\x46\x3a\x6c\x5e\xdb\xc8\x1b\xf6\x37\x8e\xae\xad\x14\x2d\x08\x35\xb4\x8a\xd4\xd1\xce\xc0\x79\xf0\x0d\x39\x1e\xb3\x9b\xc9\x56\x98\xd7\xde\x9d\xd9\x4d\x84\x64\xf9\xd0\x21\x0b\x2b\xae\x74\x60\xc5\xc1\xe3\xa3\x77\x19\x16\xeb\x08\xf7\x7a\xe5\x72\xf0\xd9\xff\x3a\x66\xee\xc0\xf9\x5c\x1c\xe9\x3f\x65\xd5\x18\x56\xda\x6c\xf2\x79\x3e\xf9\x9c\xfc\xa9\x71\xd1\x41\xc3\xdb\xe0\xf7\x12\xef\x22\x97\xd3\x79\x40\xef\xfd\x73\x8e\x70\xb9\x7f\xae\x5d\x6a\xa1\x35\xd4\xef\xce\xed\x99\x73\x6c\xe6\x1d\xbe\xe1\xe8\xe2\x1d\x65\x3a\x17\x17\x6c\x9a\x8b\x4b\xa6\x3c\x0a\xfc\x7d\x19\x0d\xa5\x9f\xa7\x11\xfb\xfc\x4f\x01\xf1\xaa\x3c\xbd\x8a\x9d\x2f\xaf\x94\xac\x8c\x3e\xac\x8c\xd2\xf9\x2b\xe7\x76\x27\x22\x26\x2d\x34\x1c\xe7\x4b\xbd\xcf\xee\x86\x56\xdc\xbc\x82\x53\xaf\xe5\x6a\xfa\xa6\xf6\xfb\xed\x4e\x45\x2a\x99\x5e\xf0\xe5\xc0\xfe\x81\xf3\x23\xb1\xac\x44\x32\x64\x76\x53\x43\xa0\xa1\x7f\xd7\x93\x6d\x51\xbd\xba\x95\x3f\x6a\xb5\xe7\xda\xdc\x81\xf9\x98\xf3\x1e\x4f\xff\x6e\x53\xa1\xf7\x78\xb8\x1c\x93\x13\xbd\xee\xa9\xbe\xe9\xe8\xd9\xd5\xbe\xe0\x4b\x48\xfd\x5c\xad\x1e\x72\x09\xbd\x56\xab\x13\x2d\xd6\xeb\xef\x40\x07\xb4\xed\x3a\x1b\x00\x45\x1b\xba\xa8\x66\x9e\x58\x72\x9c\xe4\xc9\x41\x82\x5e\x49\xb2\xcc\x6e\x24\x68\xd1\x38\xf1\x42\xa7\xa4\x98\x4e\x77\x4b\x6c\x7b\xb5\x19\x8d\x34\xb8\x60\x5d\xe8\x25\xb3\xa3\x04\xae\x84\x64\xb1\xe3\x8c\xf1\xc8\xa8\x0c\x5e\xde\x32\x4d\x67\x84\x0e\xa7\xd0\x83\x57\x37\x5c\x97\xc5\x5d\xfe\xd7\x58\x31\x26\x9a\x16\x3e\x31\xea\x3d\x97\x73\x9e\xbf\xb2\x84\xe8\xa5\x5a\x3b\x2f\xda\x7e\xaa\x50\x75\x4c\xa3\xe3\x81\xd7\xb6\x8d\xc4\x6c\xb5\xba\x05\xf9\xf4\x0b\xad\x95\xce\x12\x57\x49\x75\xb6\x2b\xee\xce\xa4\x32\x67\x57\xfc\x0c\xba\xb3\x39\x94\x93\x84\x0c\xa2\xfe\x29\x97\xd4\xbd\x89\xd8\x79\xcf\x35\xb5\xff\x5e\xef\xf9\x2a\xe7\x54\xed\x8b\x7f\x1e\x78\x6e\xd0\x53\x8a\xfd\x7d\xf2\x18\xae\x50\x80\x4d\xfa\x35\x97\xa3\x11\xb5\x04\x13\x90\x6f\x09\x71\x83\xdc\xdf\xd9\x07\x46\xda\xb7\xa4\x6f\xa8\xbd\xbf\x73\x3b\xca\xbe\x6d\x70\x48\xc1\xe0\x77\xc4\x27\x3c\x4d\xe5\xe3\xb3\xd1\xdb\x01\x78\x49\x0a\xbd\xb0\xdd\x40\x6e\x11\x7c\x66\xb5\x27\xcc\xde\x92\x7d\xc5\xc3\x48\x6e\xe3\x99\xa2\x61\x53\x96\xe3\x2e\xd4\xf3\x78\x2e\x27\xc0\xc1\x7f\x8b\xd7\x0e\xc7\xce\xe7\xc8\x61\xe7\x66\x0e\x8c\x73\xc4\x1c\x13\xfa\x15\x0f\x8a\x8f\x60\x37\xfb\xb5\x76\xea\x8e\xd0\x9a\xba\xbd\x41\x17\xf5\x63\x03\xdf\x62\xa6\x34\x03\x05\x9e\xc7\x81\xfc\x36\x99\x08\xee\xed\x45\xcd\x76\x5e\x5a\x6e\xdc\x37\x28\x0a\x77\x76\xba\x9a\xc5\x61\x92\x35\xeb\x0f\xaf\x21\x69\xfa\xab\x1b\x7e\x67\xd1\x89\x4c\x8d\xf0\xe0\x0f\x05\x13\x08\xf1\x50\x45\x8e\x60\xbc\x78\x74\x10\x09\x4f\x11\xd1\xb8\xc6\xfc\x70\xa2\xd1\xac\xb0\x37\xf7\x69\x3e\x23\x64\x34\x8b\x4c\xb3\xab\xf3\xf2\x42\x83\x36\x80\xef\x42\x49\x79\x90\xb2\x76\x87\x6a\x30\x65\x80\xe5\x09\x20\x83\x01\x26\xce\xf3\x97\x87\x85\x5c\xba\x16\x4f\x56\x5b\x7b\x10\xff\x12\xcd\x9c\xf4\x2c\xb8\xa2\x90\x10\x1c\xf3\xa3\x14\xd1\x4e\xe1\x35\x37\x6f\x2c\x05\x78\x66\xf2\x3e\xed\xb6\xb3\xbf\xc9\x30\xe9\x48\x64\x6d\x0f\x21\x47\xf5\x78\x86\x0d\xcf\x38\x71\xca\xa0\xa1\x96\x37\x77\x7b\xde\xa8\x89\xdc\x73\xb0\xf7\xad\xd7\x19\x0a\x49\xa8\x66\x46\x60\x41\x2f\x44\x14\xed\x5d\xfd\x4a\x36\xa5\x82\x65\xba\x06\xa0\x7c\xf2\x14\x78\x03\xf4\x27\x6b\xc7\x8b\x18\xa6\x17\x4f\x97\xc8\xa6\xc5\x67\x6b\xc1\xe4\x48\x5c\x5e\x82\xef\xd2\xac\x98\xeb\xc5\xd3\x3f\x15\xe3\xd9\x32\x9f\x92\x4b\xa6\x88\x60\x45\xb0\xee\x1d\x66\x10\x39\x9a\x2d\x2f\x14\x21\xf7\x50\xe0\x9f\x8a\xd1\xd3\xa5\x3b\x59\x25\x2b\x46\x33\x7c\x98\xa9\xec\x66\x43\x28\xdb\x57\x1b\x80\x24\x74\x04\xe6\x2c\x21\xf9\x78\xe6\x79\x9e\xea\x62\x3a\x37\xf9\x94\xb1\x0a\x59\x2f\x13\x40\x55\xaa\xf1\x0c\x07\xca\xd2\xe0\xd6\x18\xb5\xf6\x90\x25\x21\xb5\xbd\x08\x70\x2f\x36\xd3\xfc\x55\xfd\x3b\x73\xc8\xda\xf5\xf4\x66\x9c\x20\x05\x22\x90\x3f\x37\x50\x19\x72\x9e\xfd\x33\xe9\x0b\xc0\x34\xe8\xbb\x78\x31\x5d\x46\xf9\xda\x4b\xc0\x6b\xce\x01\xcb\x52\xc9\xf6\x09\x1e\x8c\x50\xce\xb4\xd3\x7d\xa8\xec\xc5\x83\x0a\xe6\xab\xc2\xbe\x3b\x7d\xe5\x0e\x9d\x15\x0b\xb3\x24\x72\x61\xff\x2d\xd3\xd4\x2b\xda\xe1\x77\xcd\x8e\x43\xaa\xfa\x3e\x36\x3d\x57\x17\x36\xc8\x53\x18\xe5\x29\x4c\xc1\x30\xeb\x42\x2d\x97\x83\x22\x94\x57\x78\xd4\xe5\xc9\x16\xfa\x88\x08\x98\x72\x11\x7f\x2f\xe7\x75\xe5\x71\x30\xc9\x6d\x80\x3d\x09\x1a\xed\xc3\x10\x64\xf0\xbc\xfe\xd0\xbb\xeb\x52\x5d\x15\x65\xa7\x55\x15\x0b\x71\x0b\xb5\x1c\x54\x93\xbd\xe6\xeb\x4c\xc0\x6c\x92\x34\x75\xb8\xbd\x9a\x56\x93\x9b\xa2\x24\xa1\x16\xfc\xac\x51\x4d\xed\x1c\xbd\x0e\x97\xfe\x87\x39\xb2\xb5\x5a\x85\xa5\xe9\x78\xab\x8c\xb3\x6f\x41\x3d\x12\xe5\x9f\x73\xed\xae\x5d\xda\x39\xf4\xcd\xb9\xa5\x66\x40\x0e\x50\x70\xf8\xa5\x52\x7a\xdd\xbf\x14\x3a\x64\x17\x20\xcd\x7c\x8d\x5f\xba\x1a\xeb\x9a\x2c\xcd\xce\x13\x75\xf5\x3b\xc2\x3d\xf9\xf3\x75\xde\x24\x11\x39\x34\x0a\x08\x5e\xae\x91\x40\x9b\xe3\x11\x6f\x01\xb6\x55\xa0\x66\xde\xd3\x26\x57\xed\x8f\xae\xda\x66\xa1\xcd\x22\x20\xbb\xbd\x88\xf5\x17\xf1\x7b\x3d\x56\xcf\x4c\x20\x90\xa1\x00\xc4\xd6\xa4\x1c\x24\x94\x27\x40\xb8\x7d\xe6\x1d\x75\xf6\x96\x57\x17\x83\xbe\xdd\x28\xb8\xba\x98\x9e\xa2\x32\x41\xe6\xf9\x32\xa6\x85\xa3\x06\x37\x1e\xb9\x74\x3e\x51\xbc\x0d\x3c\x43\x56\xa2\x67\x62\xc0\xa9\x37\xec\xb1\xb6\x4c\x85\x87\xe3\xd7\x4f\x1d\xce\x7e\x3d\x93\xe8\xf7\x99\x5f\x34\x13\xcc\x79\x2b\x47\xce\x2f\xc1\x76\x8c\x09\xf4\x47\x4e\x35\x6b\x50\x72\xb7\xcd\x34\x0b\xa4\xec\xa5\x1b\x02\x8d\x83\x30\x7d\x60\x10\x46\x99\x9c\x87\xaa\xb0\xa3\xe3\x67\x22\xd3\x24\xb7\x27\xcd\x9a\x6f\x8a\x43\x69\x6a\x24\xdd\x1e\x1e\xff\x07\x93\xc5\x43\x57\xe7\x0a\x88\xbc\x3d\x99\xbe\xed\x64\xaa\xb8\xc1\x77\x16\x74\xf4\xd1\xcb\xb2\xb9\xcc\xbf\xe9\xa8\xe7\x41\x43\xa2\xfb\x1a\x2c\x19\x77\x4f\x36\xce\x79\x08\xbc\x26\x36\x42\xd8\xfd\xa9\xf6\x86\xbe\x30\x4b\xa6\xe9\x50\xa7\xe9\x4b\x95\x49\x34\x75\x6c\xa6\x76\x98\xe2\xd3\x13\xaa\x83\x80\xc2\x12\xb6\xba\xc3\xad\xdd\xb4\xe0\x5d\x2d\xf3\xc0\xdc\xee\x1f\x68\x7c\xd6\xae\x33\xd8\xce\x35\xeb\xb2\xc4\xa8\x11\xb0\xb0\x64\x30\xeb\x06\x3a\x2c\x63\x9d\x99\x58\x5d\x84\xbe\x54\xed\xb4\xa4\x9b\xdd\x41\xb7\xd3\xd1\x48\xba\x2e\xd9\xdd\xf5\xad\xdc\xa8\xbc\xf5\xec\xdf\xb7\xb4\xed\xb9\xd4\x64\x6b\x3b\x58\xc1\x86\x71\xd4\xcb\xe4\xad\xf5\xda\x48\x7a\xf2\x2c\x02\xd2\xae\xcc\xb0\x37\x00\x14\xdb\x48\xe3\x7d\xc1\xdb\x4d\x68\x28\xda\xfb\xe5\x1c\x1f\x51\x51\xb3\x9e\x36\xfa\x96\xb7\x26\x0f\x52\x7e\x59\x16\x55\xe5\x92\xc3\x6f\x7a\x75\xed\xc3\xdc\x2f\x7a\xab\x8b\xbd\x0f\x0b\xbf\xe9\xad\x58\x5f\x73\x03\x61\xf8\xeb\x04\xc7\xc2\x2f\x82\xdf\xee\x95\xee\xd9\x18\x4e\x7b\xa4\x4d\x55\xbe\xf2\x8a\xdf\xed\x88\x37\xea\x04\x97\xcc\x5f\xa1\xf8\x87\x51\x34\x69\x41\x01\x2b\x93\xae\xe8\x9a\xc5\xa5\xd0\x2d\xcb\x38\xfb\xb2\x97\x1e\x13\xe2\x1f\x6b\x36\x8c\x07\x51\x8f\x71\xce\x04\xbd\xff\x21\x96\x78\xff\x43\xe0\x33\xf4\x71\x74\x6a\x8a\x20\xd2\xbd\x62\x8c\x8a\x9b\x9f\x25\x5f\x0b\x53\x5c\x95\x1c\x1c\xa6\x3b\xcf\x4c\xb1\xfb\x20\x43\x68\x02\x86\x63\x8c\x49\xb2\x85\xcb\xf3\xbe\x16\x03\x16\x57\xea\x86\x3b\x39\xa0\xe4\x4e\x84\xe8\x84\x75\xe1\xfa\xb0\xee\x97\x44\xb5\x08\x5a\x8d\x33\x08\x59\xb0\x25\x0d\x2c\x84\x08\xa9\x24\x36\xd7\x3f\x6f\x34\x83\x7b\x29\x53\xd3\x27\xf7\xe5\x1e\x84\xe1\x46\xed\x2f\x9b\x11\x73\xd7\xa7\x71\x33\x38\x7f\xa0\x9c\x0b\xb6\x4f\xd3\xcc\xe6\x71\xaf\x69\x74\x13\x52\x20\x80\xc3\x2e\x4d\xb3\x0d\xdb\x8d\x1b\xa1\xe4\xe4\x67\xd1\xa8\x3d\xab\x5d\xc3\x42\x50\x09\x00\x1c\xee\x03\xde\xef\x58\x92\xd0\x04\x7e\x25\x8c\x89\x79\xb6\x61\x3d\x03\xd2\xac\x81\xb6\x0a\x98\xee\x3f\x24\x24\xcf\x12\x5b\x38\x14\xb2\x61\xd3\x3c\xd9\x01\x60\x5a\x82\xf6\x01\x1b\xd6\x37\xce\xad\x86\x3f\x79\x4a\x9a\x0d\xdd\x40\xe3\xd1\x20\x41\x21\xe9\x2c\xd8\x86\x56\x6c\x4b\x4b\xd6\x1a\x0c\x7a\x60\xdb\xd6\x00\xba\x07\xe8\x6c\xc5\x7e\xd1\x59\xd8\x26\x84\xc4\x6e\xd7\x76\x36\x66\xd5\xf6\xce\x37\x64\x1d\xe7\x98\x75\x2a\xf4\x8e\x77\xa2\x46\x8b\xeb\x6b\xae\x5f\xc9\xef\xf8\xdd\x73\x75\x0b\xf7\xf3\x37\x9a\x34\xc2\xc1\xcc\xce\x46\x3c\x6b\x45\xfc\xbc\xcf\x5f\x6a\xca\x3f\xf0\xd5\x97\x6a\xb7\x2b\xe4\xba\x4d\x5f\x57\x1d\xfe\xbe\xa6\xa6\x2b\xb9\xe0\xb1\x97\x68\x14\x71\xf8\xf2\x5f\x94\x7c\x65\xb4\x58\x75\x4e\xa0\x17\x3c\x18\x54\x12\x42\x37\x42\xae\x7f\x54\xd5\x37\x1d\xc2\xe2\x59\x94\xd9\xc0\x80\x5c\x5a\xb0\xf1\x8c\x1a\x36\x8e\x34\x17\x15\x9b\xd2\xa2\x75\xb3\x3c\x57\x17\x00\x37\x50\xb0\xbf\x46\xc7\x71\x41\x05\x94\x49\xbc\xe0\x14\x74\xfa\xcf\x83\x6b\x39\xba\x53\x37\xfc\x9b\x07\x05\x68\x60\xe3\xa9\x1d\x02\x6d\x8d\x8f\xf4\xc5\x5d\x94\x5c\x06\x3e\x40\xb7\xb1\x6b\x35\x6c\x7a\xcc\x0d\xba\xce\x28\xea\x98\xff\x55\x67\x1a\x4f\x60\x34\x17\x82\x9e\xd7\x26\x8b\xa6\x7c\xa9\x6e\xf8\x2f\xa2\x3a\x14\x65\x79\x47\x72\x7e\x31\x9d\x4b\xcf\x12\x4b\x60\x89\x4f\x84\x1e\x14\x8c\x23\x3e\xe9\x3c\xde\x85\x80\xe0\x2d\xa3\x7b\xc1\xa4\x52\x3b\x6e\xb6\x42\x5e\x63\xc7\xf8\x3a\x23\x73\xf9\x88\x09\x72\x78\x3d\xca\xbf\x73\x72\x8d\x06\xbf\x80\xb3\xf6\x57\x9d\x49\xaa\xeb\x6e\x0d\x67\x81\x9f\xb1\xdd\xc0\x43\x48\x80\xbd\x05\x24\x3a\x39\xe3\x1a\x97\xc5\xa8\x5c\x9c\xdc\xd1\xef\x56\xc8\x2f\x0f\xaf\x10\xaa\x98\x7c\x78\x95\x14\x6c\x4a\xab\xf6\x2a\x29\x2e\xcc\xf9\x68\x54\x78\x39\xbc\x3f\x9d\x2a\x0a\x5e\xf0\xa2\xc7\x2a\x35\x57\xac\x04\x3a\x90\xe3\x3f\xa6\x68\x56\xb1\xbf\x04\x91\x8e\xa0\xba\x5e\x56\x4d\x97\x85\x15\xae\xab\x5f\x1e\x9d\x94\x68\x32\xbc\x43\xa9\x61\x6b\x05\xa1\x9e\x3a\x2c\x9f\x34\x45\x45\xc6\x9e\x49\x83\x36\x3f\xbe\x46\x0b\x04\xcc\x21\xd1\x4c\x14\x7e\x41\x15\xb0\xa0\x9c\xa2\xd6\x97\x26\xd3\xb4\xf0\x90\x5d\x30\x22\x1e\xda\xe4\x5a\x15\xe5\x97\xf0\x4a\x06\xea\x07\x30\x24\x71\x28\xf1\x7e\xad\x9c\xb3\x4a\x04\x90\xb7\x03\xa6\x29\x4a\x98\xfc\x4b\xaf\x7b\xd0\x31\x69\x5a\x30\x26\x9b\xb7\xc7\x34\xfd\xa7\x76\xd7\x53\xfa\xa3\x6d\x4c\xe9\xda\x01\x27\x17\x3a\xc8\xa4\x25\x2e\x7f\xea\x4d\x6f\x22\x23\x9d\xe9\x79\x71\x21\x7b\x9e\xbc\x8b\xd1\x88\xc4\xe1\x8b\x62\x19\xb5\x9d\x89\x45\xb1\xf4\x6b\x0e\x81\x67\x7b\x44\x34\x3d\xb2\x2a\xa7\x64\x08\xa2\x29\x6f\xae\x88\x7a\x32\xd1\x3d\xab\x7e\x03\xe4\x8d\x37\xc0\xf3\x8c\x3b\xc0\xfa\xe3\x51\x82\xc1\x1f\xf6\x26\x4d\xf5\x7c\x3c\xd6\xf9\x68\x24\x23\x92\x17\x1e\x03\x35\xa1\x05\x7b\xa3\xe0\xd9\x7b\xde\xf3\x1c\xf2\x46\x81\x96\xf2\x29\xaf\xdf\x02\x55\x5f\xc2\x3a\x9a\x93\x53\xcf\xbb\xca\x30\x4e\x90\xa6\x43\x5b\x2e\x39\x9d\xc3\x63\x60\x91\xd5\xcd\x19\xcf\x08\x39\x27\xe3\xb1\x73\xe8\x56\xcb\x7b\x1b\xc9\xa4\x4d\x64\xf9\xfa\x1e\x0d\x78\x34\x23\x73\xea\xee\x28\xd4\x85\x13\x4e\x5d\x5f\x97\x20\xf7\xbf\xd5\xc2\xf0\x46\x13\x9d\x76\x5d\x9a\x72\xd6\x96\xfb\x43\xe2\xe3\x31\xcb\xfa\xc2\xd9\xb0\x2f\x94\xcc\xbf\x52\x8d\x0b\xa0\xd3\x9a\x7a\x2e\x6e\x1a\x56\xcb\x21\x43\x42\xf2\xef\xff\xb3\x39\xe8\x5f\x9c\xcc\x33\x09\x81\x6f\xa0\x87\x09\xc5\xa7\xae\xbe\x86\xd9\xeb\xbe\x73\x40\xfd\xe0\x7b\x56\x83\xd5\xbd\xe6\xe6\x2b\xc1\xcb\x75\x46\xd0\xbd\xf5\x89\xd6\x70\x39\xdd\x12\x86\xd9\xb0\xf1\x88\x50\x9b\xcb\x0f\xc3\xc1\xb1\x2a\xa4\x79\xb1\x16\xc6\x5e\x8a\x1d\x9f\xd2\x43\xd8\x9c\x98\xc7\x2b\xf9\x19\x50\xf2\x03\xce\x80\x86\xb9\x8a\xbc\x25\xc6\xaa\x7e\x0d\x55\xc0\x4e\x12\xc4\xb7\x73\xd2\xec\xd7\xce\x52\x24\xbe\x10\x7a\xa0\xa5\xc6\x60\x78\x7d\xca\x81\xbf\xa6\xa1\xa2\x60\xa4\xf9\xd5\x76\xb3\xbf\xf5\xdc\x70\x03\x7a\x6b\xed\x3c\x30\x8e\x1b\xa5\x07\xdf\xa5\x14\x3d\x94\x36\xdc\xca\x3f\x9c\x07\x39\xc5\xf8\x6a\x90\x6f\x5c\x5a\x1a\xf1\xa5\xf9\x36\xb8\x7d\xa4\x4d\xd3\x98\x9e\x71\x0f\x07\x16\x9f\x67\x9c\xc5\x97\xbc\xb6\x60\x2e\x9c\xb0\x70\x7d\xa5\xb1\x77\xc1\xc6\x1a\xe8\x2a\x0c\x12\xd2\x55\x98\xe2\x73\x1e\x59\x41\x38\xfb\x07\x28\x39\xf7\xba\x95\x1b\x70\xb2\x17\x5a\xc5\x43\x0a\x02\xc2\x33\x90\x7e\x18\xe5\x12\xa2\xc3\x7c\x0d\xe6\x47\xc7\xe3\xd4\x2f\x9a\xc8\xfc\x22\xac\xa7\x9e\x25\xf2\xa3\xaa\x18\xaf\x5f\x79\xb4\x65\xb9\x61\x53\x45\xca\x02\x58\x92\x17\xdd\xb5\xd5\x0e\x5d\xbc\x51\x7b\x8c\x06\xf5\x43\xde\x51\x3f\x74\xc9\xb4\x73\xd0\x6d\x54\x47\x0d\xd1\xa5\x70\xd7\x5b\x48\xe2\xd5\x11\x79\x50\x47\xc4\xbd\xee\x35\x12\x1b\x5a\xbf\xba\xa1\x91\x48\x00\xfe\xe0\xb5\xf8\xa3\xfb\x68\xd8\x60\x52\x83\x52\x45\x44\xc0\xbb\x73\x76\x3c\x3e\xf9\xc7\xdb\xf5\xc8\x63\x0d\x21\x7a\x87\xe5\xec\xe7\x1c\xee\x3a\x39\x3f\xd5\x9b\x55\x77\xd4\x2b\xf0\x6e\x04\x4b\x9e\xc1\x03\x78\xb4\x6f\x1f\x4a\x8d\xdb\x8a\x01\x48\x55\xc4\xe4\xc6\x6a\xb0\x69\xfa\xc1\xfb\x46\xc5\x53\x53\x77\x24\x14\x03\x64\xa5\x41\x4a\x25\xa8\x6e\x09\x2a\x7a\x2c\x8f\x9d\x50\xa4\x63\x75\xec\xc2\x3d\x5b\x60\x10\xf2\x2f\x84\x2f\xcc\x72\x22\xd5\x37\xb8\xf8\xc9\xbd\xb1\xbc\x88\xa0\x09\xc6\x26\x5e\x37\x66\x34\x12\xf0\x2e\x1d\xf0\x86\xf4\x8a\xff\x8c\x56\xee\xc3\xa9\x25\xf3\x9a\x26\x9a\x6f\x34\xaf\xb6\x09\x0d\xcf\xd8\xf6\x1e\x55\x3c\xa4\xc3\xf0\x9b\x09\x97\x23\xea\xb2\x36\x27\xbc\x97\xca\xb5\x1d\x8b\x0d\x78\xcf\x1e\x69\x35\xef\x95\x89\x93\x84\x35\x58\xd3\x8c\x88\x44\x36\xc3\xe0\x7e\xfa\xbb\xcb\xed\xa9\xce\xf1\x58\xe3\x82\x8e\xdb\xb2\x57\x72\x39\xf9\x9c\xa4\xe9\x8f\x2e\x4f\x38\x00\xbb\x83\x53\xdd\x16\xfb\xe7\xaa\x7b\x69\x6c\x3e\x8e\xd5\xef\x62\xab\x1d\xca\x19\x6f\x85\x1f\xb7\x56\xc7\xfa\x91\x55\x9a\x7d\x6e\x9c\x07\xb1\xb7\xfd\xce\xf0\xe1\x82\xb0\xc3\xf7\x77\xdf\x07\xd7\x62\x7f\x78\x13\x6a\xdc\x19\xf5\xad\xad\x11\xce\xe0\xff\xec\x89\x0d\x12\xbc\x5f\x71\xfb\x38\xc5\xa4\x8f\x15\xe1\x36\xdb\xa9\x3e\x1c\x3f\x39\xab\x3f\x22\x21\x2f\x4a\x8d\x3f\x31\xa7\xb3\x3b\x38\x9d\xa8\x50\xd9\x2b\xdc\xb5\x7f\xd3\xec\xd5\xc4\x49\xda\x2b\x76\x7f\xa2\x7f\xb7\x01\xb8\xdd\x11\x1d\x0d\xa4\xdb\x35\xa1\xe2\xd1\x7d\xae\xce\x89\xfa\x41\x3a\x4d\x33\xd0\x02\x62\x2d\x27\x5b\x92\xdc\xcb\x21\x33\x32\x4d\x9d\x11\x34\x39\xe5\x1a\x4d\x2f\x8c\x64\xaf\x26\xdf\x4a\x61\xd8\xbd\x51\x48\xd9\xba\xfd\x88\x58\x33\x48\x9b\x9c\x4e\x03\x2e\xb3\xe4\xa6\x28\x0f\x3c\xa1\x49\xd2\x36\x2b\x05\xe7\x7b\x00\x0d\x06\xfe\x16\x40\xff\xc0\x66\x00\x9d\x26\xbc\xa6\x74\x72\xf8\x57\x5c\xd4\x58\x62\x86\xbe\x01\x65\xcb\x90\xb7\xd6\x43\x4e\xe8\x53\xfa\xa6\x15\xee\xd5\x89\x01\x44\x06\xc2\x23\xcd\x8e\x24\x24\x76\x5a\xe3\x09\xfd\xf7\x26\xf5\x7b\x99\xe1\x56\xe0\x84\x72\xdd\xac\xb7\x01\xa3\xdd\xdf\x78\xa0\x85\x11\xe4\x36\x33\xf1\xcb\x2f\x95\xb1\xcf\xcb\x01\xaf\x69\x72\xaf\x62\x88\x60\x53\xff\x2a\xaf\x3c\xd8\x8c\x7f\x43\x37\x4e\xf7\x6d\x3c\x63\x4c\x79\xb5\x37\xa6\x46\xc1\x96\xce\x3d\x7d\x6e\x78\x26\xa9\x22\xe4\x24\x47\xa3\x13\x21\x11\x76\x83\x6e\x01\x08\x88\x58\xff\xd5\x50\xbd\x10\x4b\x40\x82\x59\x88\xa5\xbb\x60\xd8\x5f\xab\x6d\xa8\xc2\x81\x82\xc3\x08\xef\xf9\x4a\x14\x25\xde\xcb\xe8\x93\xc5\xdb\xc3\x74\x3a\x9d\x8e\xed\xbf\xd9\xc6\xfe\xfd\x1f\xf0\xb7\x58\xbf\x3d\x3c\x9d\x4e\xaf\xc6\xf0\x6f\x63\xff\x3e\xfd\x0f\xf8\xfb\x3f\xdf\x1e\x36\x7c\xb3\x59\x3e\xb9\xa6\x9d\x57\xa2\x00\x24\x19\x55\xe2\x6c\x85\xaf\x5f\x7c\xd8\x67\x66\x52\xa9\x83\x5e\x71\xf0\xad\x6f\x8f\xe5\xe4\xad\x49\xc8\x3c\x49\xf2\xe4\x68\x7f\xd1\xe4\x3a\x21\x54\x0f\xdd\xf2\x4e\x53\x3e\x71\xf4\x33\x23\x3d\x1d\xf8\xb1\x2c\x56\x7c\xab\xca\x75\xef\x1b\x94\x01\x8f\xff\xd5\xbe\x90\xe0\xf2\xff\xff\x48\x28\x48\xd2\xe5\x4d\x51\x8a\x35\xa8\xc6\x46\x60\x95\x46\x98\x92\xb3\xe4\xed\xdb\x43\x32\xaa\x31\xc9\x9e\x99\x6c\x6a\xaf\xe3\x8e\x7b\x98\xfd\x77\xd2\x11\xce\x17\x5a\x14\xe3\xb2\xb8\xe2\x65\x42\x5d\x31\x40\x1f\x9b\xed\x69\xf4\x23\xac\x52\xee\xe4\x87\x6e\x32\xea\xcd\xb1\x3f\x98\xd7\x96\xa5\x48\xe8\x6e\x9e\x38\x77\x90\x5e\xa6\x9f\xe4\x60\x3f\x58\x68\x5e\x24\x0d\x7d\xe9\x8e\x3a\x5b\x5d\xce\xd9\xaa\x90\xa0\xd0\x96\xdd\x71\x43\xce\xae\xf8\x19\x9a\xf4\xad\xcf\x84\x3c\x2b\xce\xf4\x41\x4a\x21\xaf\xcf\x6c\x15\x4a\x27\x71\x13\x5b\x12\xba\x84\x0e\xaf\x30\xe2\x76\xab\x4a\xf0\x88\x8d\xc7\xed\x17\x60\x98\x1f\xed\xd9\x2d\xdf\x59\x2a\xe3\x88\x5d\x6b\x7a\xbe\xb4\x7b\xf6\x7d\x73\xcb\xa2\xc6\xe0\x03\x59\x62\x43\xdc\x1b\x89\x38\xcc\xd1\x32\xb9\x91\x99\x26\x03\x91\xa6\x02\x80\x9e\x57\xdb\xfa\x17\x68\x54\x53\x39\x29\x0c\x86\xfb\x5f\x19\xa7\xe2\x78\x44\x94\x73\xb7\xb2\x02\x90\x26\x12\x8c\x9a\x92\x78\xee\xcd\xd2\xa9\xf6\xbc\xf6\x71\x79\xf3\xec\xa3\x58\x6a\x36\x2c\x69\xc0\x73\x83\xc8\x1e\x19\xc9\x9d\x90\xe8\x4f\x35\x49\xda\x29\x30\x1c\x9a\x97\x67\x1f\x85\x1e\x73\xb5\xfc\x00\x0c\xec\x8f\x81\x50\x3a\xa2\xf9\x00\xd8\xd8\x17\x38\x2f\xe0\x95\xa4\x9e\x1e\x77\x10\x26\x74\xb1\x6c\x0e\xc1\xb7\xb5\x95\x48\x67\x4e\x23\x1b\x3e\xbb\x34\x7a\xce\x8f\x96\x57\x92\xf8\xed\x64\xfe\x75\xa4\x7f\x8c\x3c\x7b\x32\xb5\x03\xd2\xb7\x95\x56\xea\x86\xbb\xf7\xe0\x1f\xf8\x07\xf3\x46\xbd\xf6\x70\xe7\xdd\x49\xfb\xa2\xd9\xc8\x00\x8c\xee\xb6\x5c\x22\x0b\x23\x6e\x78\x6b\xc9\xfe\x6c\x47\xec\x8b\x3e\x58\xf6\x2e\xfc\x3c\x6f\x73\x92\x9f\x80\xc2\xde\x36\xf5\x6b\x9f\x66\xce\xf1\x7c\xb7\x37\x8f\x8f\xbf\x46\x55\x3e\xcc\x9d\xd0\x19\x7d\xdf\x53\xea\x57\x4a\xef\x8a\x9e\x97\x7c\x2f\x43\x3d\x91\x28\x5b\xb5\x55\xb7\x68\x53\xf7\xeb\x96\xcb\xd7\xde\x75\x10\x34\x8c\x9b\x9a\x70\x58\x36\x34\xc8\x68\x5f\xc9\x26\x66\x5c\xd4\x84\x5f\x45\xc5\xbf\x54\xfb\xbb\x2f\x0f\xd1\x91\xef\x85\x33\xed\xee\xda\x55\x53\xa3\x1f\x32\x66\xe6\x19\xa0\xfa\x75\xc0\x00\xaf\xca\x83\xce\x1a\xae\x0d\x44\x65\xa9\xe7\x9a\x0d\xc1\x49\x69\x37\x78\xd6\x03\x28\x88\x8d\x70\x86\xe9\xce\x0b\x95\x6d\x9e\xcb\x05\xec\x6f\x5f\x13\x4d\x17\xf4\xce\xb1\xe5\xd1\xe4\x78\x97\x8f\xdd\x9d\xe1\xe1\x6c\xcc\x90\x0d\x33\xf4\x39\x8c\x94\x8e\x44\x60\x04\x91\xcb\x86\xaf\x5c\xde\x8a\x0a\xbb\x6d\x44\xfe\x57\x31\x10\x3d\xbe\x01\xd0\x35\x05\x68\x40\x27\x54\xa2\x2a\x34\xa1\x0f\xa7\xb4\xa7\x8e\xe5\x9e\x26\xf0\xe3\xb1\x94\x88\x42\x2a\x41\x9a\xf7\x58\xba\x92\x17\x76\x67\xc9\x09\xfc\x78\x38\xa5\x1d\x15\x39\xb1\xff\x81\x73\x01\xc6\xb5\xeb\xf2\x25\xa6\xd3\xb8\x24\xbe\x28\x85\x7c\xff\x53\x61\x78\x42\x3f\xff\xf3\x34\x8e\x89\x85\x3c\x09\x6d\x44\xe1\x85\xd2\x6e\x8e\x68\xfd\xa2\xeb\xb6\x2f\xa3\x04\x3f\x72\x6d\xb7\x12\x4c\x57\x94\xf0\x56\xe9\xf7\x96\x8c\x26\x40\x31\x43\xd0\x73\x5e\x16\x77\x51\xd8\xa6\xb4\x3b\x4c\x02\xc8\x17\x14\xf1\x32\x94\x50\xac\xd7\x2f\xd5\x9a\x83\xb2\x03\xac\xa6\x3a\x6a\x8f\x12\x31\xc0\x8b\x8c\x0a\x3b\xc8\xb5\x7a\xce\xf7\x66\x9b\xd0\xa7\xd3\x3e\xb2\xaa\x56\xc1\x59\x58\x48\xcb\x8c\x5f\xbe\x2e\x0a\x50\x2f\x7d\x3b\x9f\x7e\xee\xca\xbe\x71\x6a\x15\x7e\xa8\x66\xd3\x4f\x61\x65\x76\xc5\x87\x6f\xc4\xf5\xb6\xb4\x03\x85\xd0\x0e\x09\x9d\xf1\x7f\x8f\xba\xb2\x53\x37\xb8\x61\x2c\xd7\x8f\xe3\xda\x77\x26\x3c\xb4\x75\x7e\x74\x8a\x12\x35\x23\x68\x8a\x2b\x60\xb1\x1f\xbc\x9b\x3c\x70\xf5\x9c\x98\xe2\x0a\xb4\xa6\x99\x39\x1e\x93\xc4\x17\x57\x1c\x8c\x72\xf8\xa8\xb5\x91\xa9\xb6\x37\x2d\x7b\xc1\x81\x7b\x9e\x84\x2f\xb1\xe3\x2f\x5d\xc8\x00\x6e\x73\x42\x42\x00\x6b\x36\xa0\xbe\xe8\x41\x01\xc7\x63\x62\x8b\x4d\x40\x8e\x90\xb5\x22\x19\x27\xb4\xd0\xd7\x60\xa6\xe3\x05\x36\x97\x4f\x01\xe4\x7a\xcd\xf7\xdc\xde\x87\x56\x82\x57\xe8\x45\xa9\xb6\x7a\x41\x9d\x5b\x7c\x9e\x0e\xd9\xe9\x53\x42\xa8\x96\x70\xbb\x3c\xd1\xd0\xc0\x6f\x5f\xbe\x68\x35\x50\xd6\x69\x34\xaf\x54\x79\xd3\xee\x45\x3f\xf8\x35\x4f\x53\xd9\xf7\x62\xce\x19\x14\x18\xd4\x48\x78\x9a\x76\xf3\x82\x06\x69\x6f\x01\x10\x43\x3c\xe7\x6e\x8b\x42\x6d\xd3\xc1\x03\x20\x0f\xf7\x36\x16\x1c\xca\x64\x9c\xdd\x3a\xe8\x6b\x34\x5e\x30\xf0\xaf\x76\xd3\xda\xd3\x83\x27\xff\x58\xbc\xbd\x7d\x3b\x5e\x8e\xde\x3e\xf1\x3f\x46\x1f\x76\xe5\x67\xe1\x11\xc8\xbf\x1f\x36\xc6\x26\x4b\x8a\xfd\xbe\x14\x2b\x10\x6d\x3d\xf9\xb0\x2b\xc3\x0d\xa2\x5b\xc7\x1c\x1b\xc8\x4f\x39\x3f\x1e\xf1\x37\x2e\x80\x93\x1d\x70\xa7\x22\xdc\x9a\x11\xc3\x9a\xd5\x05\x30\x51\x2d\x17\xc6\x0d\x07\xb8\x91\xaf\x5b\xe7\x6d\x5d\x1c\xaa\xc8\x93\x7d\x59\x08\x99\x78\x48\x36\x07\xe9\x26\x36\x99\xea\x2a\x31\xc7\x23\x2e\x98\xaa\xab\x08\x0f\x71\xf6\x76\x20\x88\x68\xe7\x54\x04\xc0\x2e\x7b\x43\x17\xc9\xbb\x64\xa4\x96\x80\x20\x48\xa8\xfd\xcb\x84\xfd\x79\x82\x97\xdb\x68\x7a\xa8\x69\xe8\x25\xdb\xf2\xc2\x27\x8b\xe3\xec\x95\xcb\xee\x11\x5b\x51\x2d\xe4\x84\xb6\xc5\x11\x50\x55\x14\xb0\x50\xc1\x4d\x9b\x8c\xb6\x01\xcc\x22\xcc\x43\xe3\xee\xe4\x9e\x4e\xc0\x86\xa8\xed\x11\xf0\xbd\xd8\xbf\x51\x2f\xe4\x3a\x73\x96\x06\xf1\x96\xca\xe2\x51\xa7\x58\x30\x0e\xbe\xf2\x94\xe3\xc5\x07\xc3\x65\x65\x4f\x67\x24\x18\xf8\x7a\xdd\x33\xfb\x2f\xec\x22\xee\xce\x13\x27\x73\x65\x37\x56\x0e\x7f\xd9\xfd\x89\xd4\xdd\x09\x65\x77\x68\x4f\xa0\x11\x2d\x3a\xf0\x5c\xad\x1e\xca\x74\x2d\x1e\xcc\xe5\xc4\x3b\x1c\xb1\xda\x0a\xc0\xfa\xf3\x71\x96\x2f\xf9\x46\xa9\xf7\x0d\xc2\x51\x78\x30\x3f\x82\x6e\x1f\x2a\x3b\x1a\x38\xa7\x6e\x18\x34\xbf\x16\x95\xe1\x1a\x9f\x8b\x3b\xae\x15\xba\x4a\xf7\x9c\x1c\x8f\x59\x05\x63\xf0\x0a\x06\xc2\x69\x97\xe7\x8b\xe5\x89\x50\x88\x00\x2d\x52\xa4\x67\x58\xf8\xd7\x90\xa2\xb7\x0a\x94\xc5\x35\x5b\xe1\x11\x6a\xa0\xb0\xa0\xd9\x8e\x16\x5e\x7b\xcd\xd7\xb9\xa6\x37\x45\x99\xcb\x93\xeb\x55\x69\x7b\xb5\x52\xfb\x3b\xd0\x50\x67\x1d\xf9\xd2\x70\xca\x18\x33\xc1\x92\xca\xa1\x9c\xfa\xf4\x41\x45\xa1\x0e\xaa\x77\xfc\xfd\x29\x6c\x43\x09\x4b\xbd\x69\x4d\x74\x26\x64\x65\x0a\xb9\xb2\xa4\x06\x0e\x05\xd0\x0b\x11\xc1\xe1\xf3\xd2\x9e\x01\x0b\xb9\x64\x22\x52\xa5\x3f\xd8\xe6\xd6\xf6\x6f\x9d\x31\x77\xef\xa4\x3c\x4a\x03\xd0\xff\xe1\x2b\x03\x7b\xa9\x41\x64\x9e\xd1\xea\x33\xbc\x8a\xf3\x3a\xfa\xbc\x36\xcf\x8b\x2c\x3a\xd0\x12\x54\x1f\x8f\x1a\x0f\x3f\xe6\x8d\x41\x0d\xd3\x28\x40\xa2\x9c\x61\x5c\x68\xfd\xf1\x88\x36\x76\x9c\x42\x82\xdc\x9c\x70\x0a\x56\x38\x05\xa0\xd8\x55\xb1\x7b\xf4\x64\xfa\xac\x2c\xdb\x9b\x38\xba\x8b\x64\x35\x96\x99\xb3\x72\x9a\xfa\xf7\xf8\x1a\x45\x0d\x0c\x8b\x28\x32\x81\xb5\x5d\xd8\x23\x85\xc6\x60\x28\x09\xe2\xda\xc1\xfd\x3e\x0a\xdd\xf2\x62\x9d\xb8\x92\xdf\x8b\xb2\x6c\x29\xb5\x93\x7b\x30\xdc\x6f\x7b\x9f\x30\xc1\x6c\xcc\x8d\xe5\x8b\x00\x37\x55\x9b\x86\x35\x40\xd1\x6a\xa9\x96\x43\x33\x00\xac\x8b\x28\xf5\x45\xdc\xd5\xb9\xc7\x5a\xf3\x6f\xa6\x00\xc5\x52\x23\xf1\xcd\xe8\x94\x78\xd5\xa5\x87\x12\xd9\x65\x71\x6a\xe8\xde\x7a\xcb\x33\x87\xb3\x9c\x01\x1b\x7f\x72\x2a\x5c\x9f\xd0\xf1\xb8\xb0\x8d\x07\x2c\xcd\x48\xf0\x86\x6c\x54\xfe\xbd\x77\xfa\xef\xa0\xe8\x5c\x2c\x7a\x46\x0e\xd5\x21\xd6\xd8\xc6\x3c\x56\x1f\xef\xd4\xc7\x7b\xea\xf3\x61\xa1\x68\x7c\xbe\x58\x7f\x4a\x0d\x91\x9d\x6a\x6d\xd5\xe1\x46\x30\xd2\xfa\x19\x7d\x3e\x88\x1b\x62\x29\x83\xb7\xdf\xc8\xf0\x5d\x7f\x0a\x8f\xf9\xfa\xe4\x32\xe1\xf8\x3e\xdc\xae\x9f\x5a\xa6\x1a\xff\x7a\xc3\x50\xe5\xa7\xdd\x9c\x8e\x37\x8d\x58\x51\x74\x34\x9b\xb6\x9a\x3b\x78\x68\x8d\x48\x6c\xbc\xbd\xab\xb4\x36\x99\x0d\xca\xe0\xa5\xb0\x13\x65\x83\x32\x97\xeb\xa1\x3d\xda\x88\xf3\xe5\x3c\x94\xb8\x11\x07\x6f\x54\xea\xb9\x5a\x81\x4b\xa9\x56\xca\x96\x0a\x5a\x1f\x49\xf1\xd9\x5f\xb4\x34\x4e\x1f\xc8\x1c\x23\x38\xda\x9c\xf6\xf7\x27\xd4\xdc\x54\x7e\xab\x0d\x71\x44\x91\xf1\x06\x81\x38\x45\xee\xcd\x47\xe8\xce\xf9\x4a\x14\x55\x3e\x3b\x35\xab\x7b\xbd\xfb\x97\xeb\x54\x75\x9d\x9f\x52\xdd\x47\x07\xe6\xa1\x7a\xfa\xed\x80\x6a\xb2\xe8\x10\x08\x34\xfb\x5e\x66\x92\x9c\x13\x34\xfe\x90\xeb\x6c\x66\x2f\xa3\x0e\x65\xaa\x46\x72\x12\xec\x47\x91\x49\x42\x15\x13\x73\xb1\x98\x2e\x27\x25\xbf\xe1\xe5\xbf\x3d\x9d\xeb\x22\x93\x24\x97\xf8\xb7\x8f\xc0\x6e\xbc\x07\x10\x33\x7f\x63\x8b\xc8\x0d\x55\xe8\x0c\xe1\x13\x06\x7e\x1c\x0d\x45\x77\x9b\x7e\x7c\x30\xfe\x53\xf4\xe4\xec\xbf\xbe\x77\x9d\x1e\xae\x6b\x71\x87\xe0\xfd\x7f\xd0\xe0\x8f\x36\xe8\x5f\x59\xbb\xff\x15\xea\xd7\x4f\xdd\xce\xe4\x64\xb5\xbd\x80\x93\x1f\x36\xb4\x74\x27\x74\xc5\x0b\xbd\xda\x66\x4f\xde\xbe\x7e\x42\xe6\xf1\x5e\xb1\x0c\x65\xdc\x95\x9f\xf7\xad\x3e\x80\x86\x6d\x36\x9e\x51\xc4\xdf\x08\x09\x41\x17\xbe\x2f\x69\x23\xe5\x8f\xc5\xf5\x63\x45\x7a\x53\x41\x4c\xf8\x58\x91\x75\x4a\x3b\x06\x3d\x2b\x00\x34\xcc\xa1\x50\x7c\x5e\xf3\x49\xfb\x96\x37\xa6\x6d\x26\x05\x05\xd5\xc7\xcb\x45\xec\x9a\x28\xf9\xe3\x65\x47\xc9\x7f\x55\x7a\xfd\x68\xd9\x80\x7e\x03\x49\xbf\xd6\xea\xb0\x7f\xb4\x60\x84\xc0\xa9\x13\x3f\x5a\x70\x94\xd8\x36\xe2\xd1\x82\x7d\x23\xd6\x1c\x5e\x38\xf1\x59\xad\x95\xd8\xe9\xc1\x37\x06\xda\xa5\x6f\x5b\xc9\xc6\xc9\x9b\xa9\x6d\x4b\x3e\x5a\x7a\xd4\x1a\x50\x15\x7e\xbc\xf4\x28\x35\x0c\xca\x47\x8b\x0f\x03\xe3\x73\x7c\xa4\x82\x90\x1e\xd5\x07\x9e\x1d\x4c\x9b\x25\x68\x01\x39\x78\xb0\xb7\x90\xe5\x65\xb7\x41\x9d\x2c\x80\x74\xe7\x33\x7c\xcf\xab\xea\xa3\x75\x04\xa8\x09\x9b\xab\xe2\xda\xbc\x29\xae\x3a\xac\x45\xdb\xd6\xe0\x6d\x94\xfe\xb5\xda\x74\xf2\xd4\xea\x5c\x8b\x25\x45\x7f\x32\x4d\xc7\xd5\x40\x93\xda\xc8\x7a\x7d\x98\x5e\xa8\x95\xa0\xbd\x9b\x01\xc0\x83\xd8\xaa\xac\xa6\x50\x01\x27\x17\x54\xbb\xc9\xc0\xe0\x9d\x77\xa7\x32\x39\x2e\xfe\x4d\x12\x72\xea\x76\xa0\xca\x4c\x64\xa5\xda\xe9\x6f\x9f\xc5\xc5\x43\x63\x9d\x5b\x2a\x1d\xcc\x73\xb2\x24\x8c\x61\x02\xa6\x36\x85\xac\xf6\xaa\xe2\xf0\x48\xde\xa8\xe5\x11\xc4\xb0\x9e\xd1\x8a\x3c\xe1\x3c\x84\xd2\x81\x74\x5f\xd5\xac\x84\x88\x2e\x57\x20\x45\x23\x80\xe3\x61\x6f\x54\xaa\x46\xfb\x17\xa0\xe2\xb0\xe1\x19\x26\xa7\x02\x71\x2d\x09\xfc\xb8\x9c\x92\xbe\xf8\xd1\x8c\xd0\x30\xa8\x3f\x15\xf2\xda\xce\x82\xd3\x1f\x77\xf9\x47\xcd\x80\xa7\x70\x49\x8d\xab\x78\x4a\xa8\xa0\xc9\x28\x8c\x50\x12\x61\x07\x78\x60\xf0\xa0\xc2\xe2\xb1\x02\x5a\x7d\xf3\xc8\x83\x83\x02\x95\x2d\xfa\xda\x33\x25\x23\xde\xe7\x9c\x7e\x54\x04\xd0\xae\x1a\xbe\xa2\x6e\xe4\x78\x46\x7b\xc3\xe9\x8c\x34\x5b\x7d\x6a\xba\x1a\x12\x54\xc0\x8a\x8b\xaf\xd7\x55\x06\x40\x2d\x27\x2a\xf9\x2d\x58\xa1\xcb\x35\x6a\x09\xfd\xeb\x0b\x22\x68\xdf\x20\x6c\xce\xb9\xf6\x6b\x41\xf6\x24\x5e\xe8\xe5\xa0\x35\x3c\xbd\x43\x42\xa5\x77\x92\xe4\xec\x9d\x6a\xf0\x42\xbf\xfa\x1d\x4f\x10\xdd\x2f\x47\x33\xea\xc0\x0c\xc9\x29\xa0\xd5\x51\xb5\xe7\xb2\x73\x51\xee\x25\x24\x32\xa1\x09\x3e\xea\x7d\xc4\x92\x80\x4f\x5a\xb1\xf6\xd2\x48\xd7\x92\xbd\x72\x78\x4d\x0d\xad\xb5\x6d\x93\x0c\xa1\x25\x2c\xfa\xca\xd8\x97\xc2\x64\x4f\xc6\xd9\x7c\xf8\x19\x79\x62\xc9\x49\xc6\x99\x5a\xa8\x30\xdb\x4b\x3a\x25\xe7\xc5\x45\x1d\x00\x46\x29\x0e\x17\x42\x2d\x0a\x10\x63\x3f\xf9\x47\xb6\xda\xad\x8f\x3b\x6e\x8a\xe3\x8e\x7c\xf6\x44\x38\xac\x4e\x42\x04\x1b\x4e\xc3\x52\x7e\xf2\x8f\x22\x2b\x0d\x99\xc7\x09\x4c\x33\x41\xb6\x3a\xae\x8c\x2e\x8f\x2b\x25\x8d\x56\x65\xa3\x2c\xed\x93\x82\x40\xee\xc9\x3f\xaa\x6c\x2b\x36\xa6\x91\xa4\xa3\x38\xf3\xb3\xd4\x7c\xa5\xae\xa5\xf8\x83\xaf\xcf\x76\x6a\x2d\x36\x82\xeb\x33\x90\xe1\x9f\x25\xa3\x8a\x0c\x24\xf8\x7e\xf2\x62\x16\x50\xfc\x4e\x9e\x95\x66\x9c\x8c\xb8\x73\xc5\xcb\x92\x2f\x8d\x2e\x31\x40\xb8\x80\xdd\x1a\xbf\x25\x7e\x7b\xf7\xa4\x9c\x50\x7e\x5a\xcb\xc9\x55\x51\x89\x15\xbb\x07\x56\x22\xa9\x79\xac\x84\x22\xc3\x90\x44\xbc\x54\x42\x7f\xde\xdb\x00\xe4\x16\x13\x0a\x5c\x5b\x52\x33\x85\x09\xb5\x97\xab\x24\xdc\xb3\x12\xfa\x8d\xda\x71\x1f\x50\xdf\xf3\x12\xea\x98\xc3\xc4\xb3\x89\x18\xe2\xcb\xf3\xbf\x13\xfa\x1c\x4e\xe1\x3c\x89\xf9\x8c\x84\x7e\x51\xac\xde\x57\xfb\x62\x55\x47\x78\x3d\x20\xd7\xbb\x90\x20\xe9\xa4\xb0\x67\x46\x52\x9f\x1f\x21\x8b\xfd\x9d\x27\xf5\x09\x6f\xfb\x62\xb9\x82\xa4\xbd\xf5\x13\xfa\x2d\x1c\x14\x79\xd2\x5a\xd5\x09\x7d\x51\xad\xf2\xa4\x25\xbc\x4b\xec\x4a\x9f\xec\x57\xcf\xb1\x4a\x76\x8f\x33\xf4\x2c\xc9\x93\x20\x35\x4c\x28\x06\x3e\xc7\xe6\x3a\x51\x95\x0f\xfd\x3b\xe0\xa2\xad\x55\x68\x6a\x08\xd5\x1c\x42\xe1\xfb\xb7\xd6\xb7\x1d\xf9\xc4\x0e\xa6\x17\x25\xf8\x08\x3b\x2f\x2e\x1c\xa6\x08\x43\x7f\xde\x27\xf1\xcc\xba\xf6\xd8\x39\x68\x4e\x30\x46\xc0\x02\xb1\x11\x81\x0b\xf5\x31\xb8\x4e\x42\x94\x5b\x36\xb0\x4a\x43\xa6\xb0\x18\x5c\x44\x9d\x27\xac\x1b\x2c\xac\x35\x8d\x11\x77\x17\x5a\x88\x06\x93\x75\xb4\x5b\x21\x18\xfb\xda\x0e\x32\xbc\xfc\xe3\xf7\x57\x49\x9e\xd8\x1b\xb9\xff\xfe\xda\x7d\xff\xc0\x3f\x98\xe6\xe8\xfa\x98\x1f\x35\xbf\x69\xc6\x7c\x05\xe3\x0c\xc4\xb0\x19\xf1\x53\x1d\x11\x4d\xe9\x22\x2c\x2a\xcb\xd2\xf9\xd0\x65\x08\x7d\x19\x75\xe6\x67\x37\xd1\xf5\xda\x69\x54\xf0\xb3\x9b\xe1\x38\xda\x0e\x5f\x4f\xf8\xa6\x28\x4b\x4b\x5e\x0e\xd7\xdb\x3c\x81\x0d\x8e\xcb\x90\xef\x8a\x55\x75\xe7\xd7\xe0\x57\x49\x6b\x77\xbb\x51\x4f\x9a\x74\x00\x43\x7f\xec\x59\x1f\x3f\xb4\x17\x87\x6d\x0e\x96\x1a\x6e\x1c\x2e\xf4\x8b\x10\x1a\x17\xfa\xac\xb3\x1e\x70\x89\xf6\x2d\x86\x5f\x92\x26\x69\x88\x87\xa6\x8e\x8b\x16\x6f\xd2\x26\x1b\x6e\x63\x74\x69\x02\xb4\xd0\xa5\x0f\x17\x0e\xdf\xf0\xe6\x1a\xac\xef\x2f\xbe\xbc\xef\x92\x3c\xf1\x62\x75\x1f\xf6\x26\xc9\x93\x26\x07\xe9\x63\x5e\x25\x79\xe2\x8f\x58\x9c\x93\x5d\x11\xd3\x86\xdd\xba\x4b\x1a\x76\xeb\x1e\xca\xb0\x5b\xf7\x10\x06\x17\xe8\xe9\xc0\x6e\xdd\x20\x0b\xbb\x75\x3f\x55\xd8\xad\xfd\xf6\x6f\x85\x76\x49\x85\x6d\x8a\x27\x0a\x21\xb4\xb1\xb9\x63\x8a\xd0\xdc\xdc\x0d\x82\x60\x4b\x6a\x10\x04\xbf\x2c\x76\xeb\x16\x3d\x68\xac\xa2\x8f\x12\x84\x87\x52\xc5\x53\xfa\x30\xd1\xd8\xad\x1b\x34\x63\xb7\x6e\x90\x8c\xdd\xfa\x01\x8a\x11\x45\x38\x82\x01\xf3\xe8\x36\x43\x87\x5a\x74\xe3\xea\x89\xee\xd2\x8b\xdd\xba\x87\x5c\xec\xd6\x9d\x85\xd9\x7c\x15\xf0\x93\x15\x75\xb5\x2d\x9f\xf7\x53\xff\x30\xd5\x71\xb1\x6d\xa2\x13\x1f\x18\xed\xd3\xa5\xb3\x3a\x62\x52\xb4\x70\xb4\x88\x26\x48\x88\x92\x25\xec\x00\x77\x1a\xb3\x9b\x79\x63\x3b\xe4\xf1\xb9\x49\x5f\x4d\xa4\xd2\xbb\xa2\x14\x7f\x38\x30\x50\xd6\x55\xbc\x8e\x5e\x2f\xf5\x99\x90\x67\x1c\x2d\x8f\x5a\x2f\xba\xba\x56\x67\xb3\xfc\x35\xb2\x72\x96\xcb\x3a\x46\x6d\x3d\x66\x6b\x7e\x2c\x0c\x31\xc5\x6a\x4b\xbc\x7e\x86\x26\xc4\xf2\x7a\x42\x1e\x00\xe3\x26\x99\x4c\x26\x08\x52\x82\x5b\xf3\x0c\xca\xf3\x29\x4e\xb5\x22\xfd\x1d\x18\xa0\x01\xf7\x9a\x9c\x25\x84\x6e\x41\xec\x0b\xc8\x6a\x5d\x58\x35\x5a\x0d\x14\x63\x22\xf0\xb0\xf3\xac\x62\x62\xf2\xbb\x12\x12\x33\x17\x4c\x92\x1c\xc2\x3c\xf4\x9d\x1a\xcd\x48\x23\x01\x34\xcc\x9b\x87\x9b\x45\x05\x9d\x2c\xe1\x59\xaf\x1c\xb2\xa2\xcb\x79\x7e\x2b\x57\x4a\x56\xa2\x32\x5c\x9a\xb3\x2b\x21\xd7\x42\x5e\x57\x67\x1b\xa5\x81\xef\x44\x95\x16\x5b\x0e\x2b\x4e\x51\x57\x43\x0f\x0f\xf8\x54\xcc\x17\x87\x25\x33\x8b\x43\xd0\x80\xe0\xf8\x58\xba\xb1\x9c\x7e\xa9\xd4\xfb\xc3\xfe\x3b\x7e\xd7\xf3\x20\x8e\xa3\x94\x19\xd4\xb1\x26\xa0\x59\x34\x37\xa8\x60\xc4\xa9\x24\xb9\x59\x38\x15\x94\x19\x63\x4c\x10\x6f\x7c\xa7\xe0\xaa\x9f\x44\x73\x51\x47\xee\x0e\xa5\x11\x89\x47\x1b\x18\x32\x91\xa6\x3a\x13\x5e\xc1\x26\x41\x34\xa1\x75\x82\xa0\x38\xd1\xc4\xa3\xf6\xd1\x02\x31\xd4\xf0\x91\x7b\x99\x0c\xd9\x2b\xf8\x8e\x74\xa0\xbc\x76\x3e\xb6\xb2\x59\x84\x7f\x62\xdf\x48\x74\xd5\x50\x47\xa1\x47\xae\x26\xba\x5e\x23\x41\x0f\xcc\x5e\xb7\x94\x85\x5a\x06\xd7\x5e\x05\x09\x50\x1b\xa7\x13\xdd\xdb\xa1\x16\xd5\x4b\x77\x79\x68\x0e\xb7\xdf\x26\x3d\x5a\x43\x3c\xff\xbb\x5a\x04\x07\xe9\x7e\x02\x61\x4b\x27\x60\x6a\x6c\x09\xa7\xfb\x05\xc4\xc1\xfd\x7e\xa9\xd6\xf6\xd7\x89\xee\xdc\x6d\xee\x87\x62\xd7\xa3\x91\xb0\x4a\xd3\x3f\xff\x3b\x6b\x3a\xb8\xb7\x77\xf8\x1a\x70\x1c\xe5\xe1\x8d\x46\x50\xc9\xf4\x20\xc2\x83\x1a\x32\xe9\x9d\xbc\x7f\xad\x8b\xfd\x16\x9c\xbe\x67\xde\xe9\x7b\x9a\x42\x13\xd1\x1d\x89\xf4\xf7\x22\x49\x68\xf6\x6e\x1e\x7c\xc1\xe7\xc1\x5d\x3c\x49\x53\xec\x5d\xc8\xe0\x2e\x4e\x3e\x87\x4b\x97\xd7\x7e\xe4\x6d\x8e\xdd\x3a\xca\x00\x17\x2b\x49\xe8\x10\x2c\x46\x00\x4f\x02\x1b\x82\x23\x14\x12\xfa\x1b\x97\x24\x54\x92\xe8\xa6\x7b\x13\x5b\x92\x76\xe7\x64\x0d\xea\x37\xfc\xf4\x0a\x2e\xed\x6f\xf8\x07\xf3\x4c\xf3\xa2\x3b\xb8\x99\x61\x66\xfe\x42\x65\x86\xe4\xf7\x27\x32\x01\x43\x2b\xc6\xf1\x3f\x1d\x9a\x89\x57\x58\x04\xcc\x22\xa7\x83\x08\x3a\x7e\x3e\x82\xd5\xe1\xb6\x33\x93\x7d\x6d\xdf\x62\xf3\x34\x3e\xb3\x46\x34\x6b\xc4\x7a\xbf\x01\x66\x12\x94\x1a\xfd\x43\xc7\x0f\x0a\xbc\xad\x85\x70\xa6\x41\x21\xd1\x9b\x20\x5f\x37\x6d\x5b\x82\x4a\x24\x01\xc7\xfc\x01\x52\xfc\x4a\xad\xef\x4e\x91\x1d\x2e\xb9\x77\xdd\x64\x00\x01\x81\x46\x64\xa0\xf3\xc5\x27\x1b\xa5\x77\x69\x9a\x7d\x2d\xdc\x6f\x9a\x54\x87\xab\x9d\x30\x09\x85\x19\x43\x4d\xe0\xd7\x10\xf4\x92\x9b\xad\x5a\x3f\x2b\x95\xac\xf5\xd2\x5c\x26\x65\xc9\x2c\x24\x1a\x18\x7d\xe7\x36\xa4\x0f\x62\x91\xc8\x47\x66\xe0\xbb\x15\xc3\x55\xf8\x19\x87\x16\xa7\xd3\x0a\x3c\x86\x7c\xad\xc8\xfd\xe9\x64\x26\x1b\x21\x45\xb5\x05\x83\xba\xf8\x69\xc8\x4c\x2c\xff\xc1\x24\x05\xed\xd1\xee\xbc\x47\x0a\xf2\xe0\xf8\xa5\x2f\x45\x23\x5c\x54\x3f\x14\x3f\x50\x09\x7a\xe9\xfb\x42\x73\x69\x7e\x50\x6b\xee\xdc\x75\x39\x64\xae\x49\xc7\x2e\x32\x43\xef\x87\x60\x19\xe1\x5e\xec\xd0\x30\xc4\x8d\xec\x5f\x7b\x47\x36\xf1\x8d\x88\xb5\x2f\x6d\x2a\x37\x0a\xe8\xd5\xb1\xfe\x66\x8a\x90\xd3\xa9\x5b\x91\x54\x92\x27\x0e\x32\xe5\x55\xf3\xe9\xac\xd1\x09\x14\xda\x22\x0f\x98\x19\xca\x27\x92\x7f\x30\xaf\xc5\x55\x29\xe4\x35\x39\x91\x1a\x13\xe5\xac\xc2\xc3\xe8\xda\x12\x2a\x24\xdd\xaf\x8d\xe6\xc5\xae\xad\x0c\xb9\x15\xd5\x64\xaf\xaa\x80\x79\xa1\x0d\x9b\x7a\xe4\x08\x9b\x8b\x71\xfc\x72\xa2\x6f\x4b\x06\xff\x83\x06\x00\x63\x7c\x1d\xfa\xd1\xe7\xaf\x83\x60\x71\xfa\x92\x4a\x7f\xe3\x61\xd3\xd3\xe0\x5a\xc6\x80\xf2\x5c\x95\x0f\x19\x87\xee\x55\x75\xc9\xa2\x96\xb8\xb3\xe2\x44\xab\x47\xf3\x38\xf8\x8e\x50\xe7\x89\xee\x39\x7f\xff\x50\x06\x57\xb4\x93\xb0\xfa\x32\xc8\xf1\x88\xee\xc0\x4f\xd4\x0e\x70\x9c\xd9\x1e\xa0\x2e\xd5\x45\xb7\x71\xe4\xe3\x65\x8f\x46\xe4\x44\x79\xf1\x20\x64\xef\x03\x2d\xea\x85\xb8\xe5\xc4\x59\xec\x33\x07\x56\x60\x7f\xc3\x9a\xb3\x0c\xdc\x1c\xff\x59\x4a\xc9\x2d\xa3\x01\xd0\xec\xae\x85\xa3\x91\x2f\x99\x1a\x68\xce\xaf\x5b\x51\xf2\xc7\x10\xe7\xf7\xaa\x3a\x87\x1f\xbc\x30\x19\x27\xe7\x01\xf4\x2a\x4c\x16\x16\x04\x28\x73\x79\x8f\x78\x98\xd7\xe5\x3c\x59\xbc\xad\xc0\xfe\x71\xba\x74\xbc\xe6\x63\x5d\x07\x9c\x17\xff\x35\x68\xd7\xca\x4f\x34\x28\x8f\x76\xbc\xc8\x47\x2b\xbb\xb9\x84\x20\xc7\x47\xa6\xc0\x9b\x96\xba\x1d\xe0\x67\xc1\x5c\x8e\x67\xa4\xbd\xe8\x0c\x40\xe8\x5f\x15\xab\xf7\xad\x47\x60\x9f\x62\xcc\xf8\x89\xe2\x4b\xe9\x43\x6b\xb1\xb1\xa1\x2e\xea\x0d\xe9\x41\x4c\xda\xbb\x6b\xab\xe2\x61\xa3\x75\x86\xc6\x8e\xed\xd9\xac\xed\x20\x28\x8e\x3c\xb8\xab\x9d\x05\x4b\x5f\xa6\x71\xd6\xdc\x6c\xf3\xbe\x36\x85\xd8\x46\xbb\x10\x80\x15\xef\x79\x2d\x14\x83\x30\x2c\xad\xd2\x02\x38\x5c\x28\xe3\xbf\x5c\x3f\x38\xb5\xca\x7b\xcc\x82\x3a\xe8\xf9\x01\x73\x35\x5e\x22\x78\x27\x09\xcb\xc3\xf9\xc8\xe2\xb5\x92\x42\x9a\x4a\x5c\x47\x97\x53\xef\x5e\x28\x4d\x87\xb3\x21\xab\xb1\x69\x2c\x4d\x60\x12\x55\x62\xd0\xdb\x91\x44\x03\x74\xc1\x7a\xcc\xc4\xb4\xdd\xd5\xea\x7b\x75\xcb\xf5\x97\x45\xc5\x33\x92\xf3\x13\xe0\xde\x37\xb6\x50\x75\xb8\xaa\x8c\x0e\xe5\x53\x1e\x4c\x94\x19\x13\xb5\xe2\x7d\x4f\x43\x42\x4a\x58\xd0\xab\x83\xd6\x8f\xd8\xef\x77\x47\x21\x5a\x7f\x76\x40\x4e\x74\x2b\xd6\xfc\x2b\xa1\x2b\xd3\x7e\x59\x0c\xa7\x4f\x98\x9e\x11\xe3\xc0\x76\xf8\x1a\x32\x72\xda\x08\x59\x94\xe5\x5d\x2b\xa1\xdd\x4b\x4e\x33\xf5\x4a\xb2\x29\xbd\xb3\x87\x9c\x3d\xff\x11\x09\xb5\xef\x88\xb3\x79\x2b\xb6\x58\xba\x25\x00\xea\xef\x01\x8e\xc2\x9f\x71\x62\xcd\x46\xa3\x2b\x79\x1a\x08\x95\xdd\x49\x42\xef\xa2\xa3\x6a\x02\x58\xb8\xac\x79\x12\x20\xa6\x11\xff\xb0\x2f\xc5\x4a\x98\xf2\xee\x4b\x9b\x86\xaf\x9b\xd0\x1a\x6a\x05\xee\x39\x19\x47\x1f\xc6\x07\xfd\x6a\x0f\x64\x24\x4d\xbf\x00\x03\x51\xa9\x1c\x00\x04\xd4\x90\x90\x06\xd0\x1e\x68\x54\x91\x81\x06\x97\xa2\x71\x32\x8a\x98\xd6\x54\x4f\x8c\x22\xe1\x6a\x8a\x0e\xcb\xa9\xc0\x7f\xee\xc2\x15\xfa\x5f\x3b\xad\x50\xfe\xb6\x55\x47\xda\x5b\x56\xc5\x5e\xcb\xac\x98\xec\xec\x30\xae\xc1\x88\x0a\x01\x35\x06\xdc\xe3\x37\xad\x54\x59\x16\xfb\x8a\xaf\xe7\xe0\x6b\xf5\x8d\xc8\x0a\xe2\x5d\xad\xe6\x60\x61\x00\x3c\x6e\x35\x31\x0a\xde\x6c\x21\x81\x87\x75\xa9\x3c\x82\x8f\x74\xe1\x84\x36\x2a\x63\x6f\xda\xb5\x57\x9e\xc9\xf6\x59\x9b\x8d\x48\xd3\xe1\x37\x32\x02\x67\x24\x69\xca\xd3\xf4\xb5\xc8\x0a\xda\xf2\xab\x83\xa6\x32\x9d\xdc\xfd\x96\xc5\xa4\x86\x5e\x7f\x64\xf0\x4a\xf6\x87\xcc\x1a\xe3\x47\xe8\x81\x3d\xcf\x4a\x32\x38\x5c\xd6\x6a\x5f\x6d\x3f\xbd\x9d\x18\x56\xd2\x07\x52\xb3\x43\x37\xa6\xf6\xdf\x4b\x4e\xe1\x9a\xd8\xd3\x35\xd0\xb3\x97\x54\x8c\xbc\x3f\x91\xb8\x13\x9e\x31\xeb\xac\x5c\x36\x74\x31\x85\x51\x3b\xb1\x72\xc5\xc6\xa0\x5d\x9e\x58\xc4\x61\x60\xd6\x99\xa6\xdf\xb9\xe7\x5a\xcb\x49\x7b\x17\xb8\x30\x99\xda\x95\x9e\x50\xdc\x68\x84\x9a\x34\xfd\x06\x16\x3f\x52\x0a\x60\x70\x5d\x65\xf8\x81\xdb\x0d\x5e\x4e\x1b\xbb\xd0\xee\x07\xd6\xab\x9a\x38\x08\x80\x61\xc9\x95\x52\xef\x6d\xc5\x89\xe3\x05\x0d\x1a\xbf\x70\x36\x8b\xf1\x1e\xa6\xe7\xa2\x77\x7a\x6b\x6f\x65\xf5\xdc\x8a\x25\x2d\xec\xde\x50\x3d\x7b\x23\xc8\x5c\x0a\xbf\xbc\x35\xb8\xaf\x9b\xab\xfc\x8d\xc8\x94\x5d\xe3\x88\x47\x35\x9e\x31\xc6\x23\xa7\x06\x51\x46\xd8\x2d\xb2\x9d\xcd\x28\x42\x1b\x79\x02\xd8\x9d\x4e\xd3\xd8\x49\x67\x7b\x94\x1c\xee\x40\x4c\xad\x22\x8a\x04\x34\x65\x0c\x6a\x9a\xb4\x46\xf0\xae\x69\x95\xdd\xed\x3a\x4d\x7f\x33\x99\xa6\x6d\xbc\x20\x7c\xb6\x97\x9c\xc2\xd6\xe6\x5e\xa5\x85\xdd\xd8\xc4\x88\xc0\x61\xbb\xf2\x02\x1c\xe5\x7a\x3c\xa3\xca\x4b\x53\xfd\xe2\xed\x07\x3a\xaa\x33\xb4\x9d\x50\x53\xd8\xe6\x88\x70\x4a\xbc\x27\x5c\x13\xbc\x58\x39\x52\xe6\xbe\x07\x26\x60\x44\x79\xe5\xd3\x8a\x7d\x66\xef\x52\xe3\x62\x50\x01\x79\x90\xa0\x38\x00\x2e\x7d\x2b\xa7\xd1\xdd\x18\x3f\x04\x2f\x80\xca\x5b\x86\x7a\xc3\xce\x8a\x89\xf7\xc8\xae\xe3\x7c\xc3\xbb\xac\x1f\x98\xc9\xae\xb8\xbb\xe2\xdf\x88\xf5\x9a\xcb\x00\x81\x3e\x9e\x0d\xd9\x95\xca\xfa\x22\x71\x75\x1d\x8f\x3e\xf2\x67\xb9\x8d\xa3\x1f\x8c\x88\x9c\x47\x23\x18\x52\xd4\x62\x6f\x2d\xd4\xec\x2d\x42\x38\xf4\xf5\x36\xca\xea\xfc\x13\x5d\xa9\x28\x90\x72\x02\xce\xa3\xfe\xc5\x31\x39\xef\xed\x77\xdd\xb1\x6f\x1e\xed\xd6\x69\x60\xcf\xfe\x5a\xbc\xf4\x4e\xb6\x7d\x5b\x03\xc4\xe9\x16\x0e\xe4\x1e\x9d\x66\x9f\x32\x93\xec\x85\xca\x24\x21\x2e\x2d\x73\xe2\x39\xc5\x16\x8d\x22\x2d\x05\x50\x8b\xa9\x3d\x24\xa5\x43\xf7\xfa\x21\xf2\xac\xf2\x4e\xb4\x8d\x1d\x2a\xb0\xb7\xab\x53\xb2\x6a\xb2\x2a\x95\xe4\xf6\x77\x36\x9c\x12\x42\x15\xf6\x07\xaa\xf9\x1e\x9d\x52\xe2\x7f\x4d\xa0\x4a\x12\x39\x01\x9a\x9e\x97\x17\xb0\xdd\xde\xf3\x75\x4d\xab\x4a\x14\xf9\x63\xf0\xa2\x5c\x4e\x44\xf5\x23\xd0\x4f\xef\x2d\xb5\x60\x37\x2a\x43\x60\x5f\xc9\x6f\xcf\x6e\x25\xf8\xd6\x3b\x45\xfd\x72\xf6\x52\x3b\xe4\x4e\xdc\xd4\xf8\x01\xfb\xce\xa0\xf7\xcb\x77\x92\xc4\x59\x70\x7c\x6c\x81\x77\x12\xb0\x41\x69\xc1\xf6\x68\xb8\x34\xc0\x91\xb7\x43\x4a\x15\x20\x0e\x15\x97\xd3\xe3\x71\xca\x58\xe1\x18\x5f\x85\xb4\xfd\xd7\x2d\x97\x2f\x76\x7b\x73\xe7\xeb\x52\x40\x3c\xbc\xea\xcd\xfa\x57\x01\xc7\xa5\xaa\x0f\x35\x4b\x08\x54\x3c\xa0\x35\xf2\xcc\xa2\x99\x6f\xd9\xc4\xe7\x70\x60\x6b\x76\xd3\x83\x1c\xfc\xa5\x3a\x54\x1c\xec\xb2\xab\xe3\x31\x2e\xf1\x93\x21\xe1\xa5\x93\xc4\x20\x9c\x76\xd6\x28\xa3\x8e\x61\x6e\x96\x43\x0f\x60\x5d\x7e\x85\x02\x6e\x54\x90\xa7\x9a\x2a\x72\x3c\x1a\xe7\xfe\x5e\xc3\xff\x34\x85\x34\x3a\x4e\xd3\xf7\x8a\x61\xeb\x11\xf2\xfa\x2c\x94\x7f\x86\xc7\xed\xd9\xbe\xd0\x46\x58\xc6\xf9\x0c\xdd\x0a\x01\x57\x73\x56\xc8\x33\xfe\x41\x54\x90\x45\x49\x9e\x90\xc1\x07\x36\x9c\x9e\xd4\xa4\x58\xaf\xdf\xa8\x6f\xd0\x5c\x3d\x4d\x7f\x17\xc1\x8f\xbb\x01\x5c\x65\xef\xc0\x1d\x0e\x73\xcb\x66\x27\x20\xc1\xe2\x25\xfd\xa1\xf8\xc1\x01\xfd\xd2\xd2\x3b\xf7\x3c\x80\xb7\x4a\x5c\x55\x00\xe5\x54\xba\x8e\x8c\x5a\x90\x1a\x87\x34\x55\x0d\x66\xec\xf0\x00\x98\xdf\x1f\x36\x39\x63\x87\x36\x2b\x94\xa6\x59\x05\xc7\x46\xa3\x18\x38\x19\x70\x14\x5f\x0b\x04\x92\x6c\xdb\xac\xc7\x2c\x67\xe3\x6b\xde\xf8\x0a\x76\x7e\x66\x49\xf2\x85\x59\x52\x83\xb1\x3a\x3a\x1f\x2c\x35\xb5\x8c\x16\xbf\x3d\x7b\x65\xf7\x16\xc8\x83\x6d\xed\x73\x33\x59\x6d\x01\x9d\xd2\x86\xe1\x08\xcc\xb5\x0f\x03\x97\x14\xe5\x89\xb4\xda\xee\x46\xcc\x8d\x64\xcf\xb0\x19\x72\xff\x0d\x76\x03\x7a\x67\xe8\x94\xb8\x42\xec\x96\x7a\x25\x41\x89\x27\x4d\xbf\x16\x99\xa2\xc9\x15\x88\x09\xd1\x2e\xee\x85\x6c\x01\x8f\x90\x7b\x15\x78\x2c\x28\xa1\x46\x6a\xcd\x5e\xd8\x9d\x96\xf1\x00\x6e\xb0\x56\xd2\x5f\x0b\x8f\x47\xde\xc0\x3c\x08\x11\xe8\x30\xd7\x16\xe8\x16\x52\xd6\xee\x5c\xa6\xfc\x05\x8b\x2a\xc7\x5f\xc2\xec\x1d\x60\x57\xa0\xff\xfb\xfe\xe3\xbf\xb9\x87\xb8\xce\x0e\xb4\x35\x44\xb5\x4e\xa6\xed\x55\x51\x55\x3f\x14\x3b\x6e\xf7\x36\x40\x45\xd9\x1f\xce\xbe\xf2\x0e\xbf\xb8\x5c\x87\xdf\xab\xaa\x8a\xdc\xaf\x62\xc1\xe7\xab\x0b\x37\x67\xe7\xab\xd1\x88\x18\x5b\xe5\xca\xdf\x73\x06\x2a\xb0\xc7\xdf\xf1\xec\x00\x2c\x2f\xfd\xbb\xc8\x0e\x9e\xdd\x7d\xb6\x5e\x5b\x66\xf7\x40\x55\xf0\xb1\xa4\xe0\x46\x7f\x0b\xd2\x58\x38\x66\x1e\xbf\xae\xee\xdc\xa1\xe7\x45\x4f\x08\xb9\xca\x4c\xfd\xe0\x0b\xfa\x94\x3c\x76\x43\xc8\x17\x7a\xe9\xb8\x67\x38\x6b\xa3\xa7\x97\x17\x0d\xa0\x19\x60\x00\x6d\xdd\x55\x64\x51\x05\x60\x1d\x93\x55\x29\xf6\x3f\xaa\xaa\x6b\x2c\xd5\x0f\x59\xe3\xaa\x6b\xf8\xfd\xfd\xd0\x12\x1e\x22\x4c\x66\x04\x8f\xe9\x8d\x41\xec\x8e\x92\x6c\xa1\x7d\xef\xec\x38\x2e\x07\xef\x44\xd6\x08\x69\x56\x5c\x1b\x3c\x93\x36\x2b\xaf\xfd\xa0\xf5\x69\x65\xfb\xb8\x85\x58\x9e\x3b\xa7\x58\x76\x15\xda\x99\x83\x85\xe9\x86\x0d\xb6\x6b\x5d\x90\xe3\x79\xc4\x78\x4c\x67\x84\xc4\xae\xa7\x5f\x05\x51\x51\x34\x5d\x7e\xb6\xc0\x01\xb3\x17\x36\x29\xa6\xeb\x6c\xaf\x23\x54\x3c\xf2\xc8\x54\xb6\x1e\xec\xa5\xaf\xa0\x36\x73\x96\x51\x63\xde\xc8\x96\x27\x6a\xa7\x80\x1d\x15\x29\x09\x5f\xc8\xa5\x03\x56\x3d\x1e\x33\x1d\xb1\x53\x36\x26\x08\xac\xa2\xc6\xbe\xac\x1b\x6b\x26\x1b\x4b\xb4\xda\xce\x6f\x34\xfb\x8a\x07\xef\xfc\x78\x15\x48\x53\x70\xaf\x1c\x07\x35\xae\x4c\xd2\x67\x31\xaa\x95\xc1\x07\xc4\xc9\xd1\x84\x39\x4d\x83\xf7\xf7\xb3\xc8\x9e\xcc\xd5\xb1\xda\x52\x05\xde\x75\xed\xaf\x82\x4d\x19\x70\x22\x28\x1c\x31\x70\x85\xaa\x3a\x36\xd8\x8d\xf1\x97\x4e\x9d\x9f\xf7\x5c\x01\x39\xde\xfc\xdc\xb5\x4f\x47\x68\xfe\x50\xc1\xf1\x98\x15\x13\x21\x57\xe5\xa1\x12\x37\xa0\x88\x32\xc7\x88\x0b\x66\x72\xf7\xcb\x10\x4b\x64\x60\x4d\x80\xf3\xda\xe8\x72\x5a\xf8\x9b\xe9\x50\x1f\x8f\x43\x5f\x49\xc4\x40\x90\xe0\xe5\xcd\x55\x0a\x20\xc7\x51\x95\xa0\xd9\x32\xb7\xe1\x97\x50\xa3\x51\x97\x86\x9c\x67\x12\x5c\x62\xd7\x53\xec\x8e\xa7\xc2\x39\x0a\xa7\xce\x9d\xa0\x4d\x4f\x82\x4d\xf1\x99\x3c\x01\x38\x6d\x41\x68\xf9\xff\xca\x88\x7d\x52\xe3\x3f\x6d\xb0\x3e\x65\xac\x3e\x7d\x82\x1e\x19\xb0\x30\x52\x36\xe9\xd8\xd0\xba\x2f\xf5\x10\x8e\x4d\x73\x10\x2d\xe3\x5b\x10\x7a\x60\x33\xcb\x0c\x44\x16\x8d\x74\x65\xb9\x71\x0c\xf2\x9a\xf1\xa3\xec\x30\x17\x39\x7a\x35\xaf\xcf\xa1\x35\x9b\x9e\xaf\x2f\x22\xa1\xc4\x3a\x02\xe6\xce\xb6\xac\x5a\xac\x97\xe0\x1a\x3e\xdb\xb0\xd7\x32\x2b\xe9\xd6\x0d\x08\x21\xf3\x43\x9a\x66\x5b\x4b\x78\x30\xf5\x26\xb4\xd5\xfe\x1a\xad\x48\x0e\x91\xe2\x04\x4a\x32\xb6\x42\xac\xac\x6c\x54\x66\x1b\xb1\xa5\x9b\x5a\x46\x91\x6d\x59\xe9\x2a\x75\xe5\x8f\xd8\xca\x4b\xe7\xb6\x28\xe1\xc0\xc6\x54\x51\x63\x8e\xc7\x0c\xe3\xd8\x8a\xda\x76\xd9\xdb\x5d\x7c\x95\xdb\x3a\x57\xaa\x67\x98\x6a\xf4\x60\xb2\x53\x05\xdc\xde\x33\x99\x55\x84\xd0\x12\xd8\x3c\x1b\x54\xda\xa0\x92\x20\x17\xba\x67\x4e\xf9\x67\x78\xc0\x1e\xec\xe8\x4d\x73\x06\xc6\x4f\x6d\xf4\xcd\xe5\x34\x4d\xab\xa8\xef\x8d\x81\x76\x02\xc7\xc5\x7a\x89\x7d\x45\x0f\xe7\x9d\xb5\x01\x09\xb0\x9f\xf8\x30\x81\x7c\xdd\xa0\x2e\xf5\x06\x8a\xdb\x3b\x33\x1f\x32\x70\xbf\x6a\xc7\x8b\xfb\x9a\xd8\x3e\x7b\xec\xd4\x1c\x8d\x4c\x7c\x6a\x3a\x0f\x1a\xda\x89\x9b\xb4\xdb\x2f\x1a\x9a\x0b\x57\x2c\x7f\x84\xb5\x6e\x5a\xa0\xb7\x81\x67\x9a\x81\x33\xed\x14\x0e\x72\xac\x69\xce\x11\x4f\x3d\x34\xeb\xc7\x06\x30\x78\x8f\xdc\x8d\x99\x05\x5c\xc1\xaa\x77\xc9\x88\x4f\xc4\xba\x05\x9d\x03\xe4\xba\x16\x4e\x4f\xc1\x31\x09\xd8\x06\x45\x93\x02\xe7\x93\xf3\xf5\xf1\xad\xc8\xb4\x3d\x8f\xc2\x81\x24\x4e\x78\x2f\x96\xcc\x9d\x47\xad\x0a\xe0\x53\xd6\x42\xb5\x36\x53\xd0\xa5\x50\x1a\x29\x94\x5c\x88\xa5\x13\x57\x15\x84\xe7\x3e\x5f\xc5\xa6\xe7\xd5\x45\x51\xe7\xab\xea\x69\x29\x59\xb1\xa8\x96\xf4\xc0\xa6\xe7\x87\x60\x76\x71\x3e\x1a\x1d\xec\x2d\x5c\x2d\x0e\xcb\x70\x4e\x97\x7e\x07\x78\xf5\xb8\x33\x3e\x50\x61\xfa\x61\xc5\x17\xf6\x28\x5e\x88\x25\x2b\x22\x47\x9c\x61\xe0\xbf\x8c\xde\x24\x79\xfb\x48\x8c\xcf\xfa\xae\x3b\x6a\xf4\x43\x8d\xf3\x5f\x8b\x76\x32\x4e\x06\xcd\x9b\x0f\xcc\x74\x5d\xe3\xfb\xe8\xb8\xff\xe4\xf2\x1b\x17\xa1\x56\xf9\x26\x2a\xfc\xa7\x26\xdb\xd8\xa4\xc8\xe3\x59\x3e\xad\x93\xfe\xfe\x40\x52\x3c\x2d\x1a\x49\x9f\xb7\x9c\x93\xc7\x22\xa8\xb1\x69\x7c\x82\x9b\xdf\x21\xd3\x6d\x97\xb2\xdc\xbd\xb0\x50\xe0\x27\xf0\xa7\xb2\x1c\x04\xda\x0e\x51\x74\xee\x4c\x8e\x47\xe8\xc1\xf8\x27\xe9\x80\x55\xbc\xeb\x9b\xb1\x42\xb0\x1e\xcc\x62\x14\x15\x96\x2a\x1f\x8f\xd0\x8b\xf1\xef\x90\xdc\x6b\xac\xd9\x6b\xbe\x58\x8f\xed\x36\xa9\xfb\xf0\x43\xcb\xc0\x1e\xf4\x96\x5a\xf3\x2d\xc3\xb9\x20\xa8\xf7\x08\x1b\xbd\x46\x64\x02\x81\xa0\xc2\xa6\xaf\xef\x5c\xde\xdf\xe0\x1c\xfb\x91\x43\xeb\xdc\x19\xfa\x5c\xda\xe3\xde\x2f\xd4\x8b\x29\xb8\x4f\x64\x21\xa0\x87\x23\xfc\x36\x9e\x1a\x68\xf8\x70\x1a\x71\xfe\xdf\x77\xa3\x67\x51\xf4\x57\x5d\x57\x7f\x0c\x79\x3f\x42\x0b\xdb\x6f\xd5\xee\x77\x41\x1e\xdb\x95\xf5\x8e\x04\x7d\xcf\x4e\xef\x31\xc5\x21\xec\x45\x9c\xde\x29\xa1\x2b\x3b\x59\x07\xf7\x7c\x86\x53\x1b\xf6\xab\x9d\x61\x41\xe8\x1a\x93\x18\x45\x25\x4e\x66\x9d\xe0\x77\x9b\x00\x7d\x3e\xae\x2e\xd9\x34\x4d\xd7\x17\x6c\x7a\x3c\xae\x2e\xe0\xf7\x25\x83\x71\xc4\xaf\xba\x51\xcd\x55\x9c\xa6\xa2\xb5\x05\x7c\x6d\x9a\x5c\xb2\x69\x1e\x7d\x4d\xc9\xf1\x88\xd5\xfc\x27\x0b\x83\xde\x49\x72\xe1\x8b\xf3\xdf\xd3\xe0\x75\x72\x38\x8d\x6f\x34\x7f\x34\x0f\xa0\x73\xc3\x60\xb6\xcf\x09\xf7\x1b\x63\x5c\x03\x3b\xd4\x1a\xaf\x21\xff\xcf\x8d\xbd\xe8\xe7\x55\xb2\x3f\x00\x34\xd8\xaf\x25\xc6\xe4\xdc\xe4\x00\xe3\x50\x67\xfd\x22\xa2\x3c\x97\x8d\x6b\x67\xc0\x74\x8a\xe1\x27\xfc\x19\x00\x82\x10\x19\x25\xfa\x28\x1e\x85\x6f\x06\xd4\x3f\x9a\xd5\x2d\xf8\xa6\xd1\xf8\x0f\x69\x6a\xda\x4b\x51\x77\x98\xdf\xc6\xd1\x22\x36\x59\x26\xe1\x64\xe9\xee\xc2\x88\x73\x43\xa2\x12\xc6\x1f\xcf\x2e\x9f\xa1\x16\x21\xa6\xe9\xd4\xa7\x4d\x53\xd9\x99\x76\x14\x3a\xfe\xe2\x01\xec\xa3\xe9\x0c\x1d\xfa\x25\x66\xdc\xb1\x6e\x78\x28\x76\x17\x4b\xdd\xd8\x12\x30\x40\x7e\x6c\x20\x27\x82\x29\xd0\xd7\xd2\xc1\x2a\x34\xae\x70\x3a\x70\x77\x96\x85\xd4\x0f\xad\x4a\x5b\x5f\x8b\xff\xad\x3b\xde\xa6\x67\x8d\xf1\x8e\x69\x9b\x1d\x58\x4b\x9a\xa3\xe8\x07\x48\xdd\x50\xf4\x0d\xa4\x68\x30\x47\x6e\x28\x04\x5c\x45\xec\x5f\xcf\x45\xd9\x3d\x2b\x7a\x07\x1a\xf0\xb3\xfa\x7a\x48\xc2\x14\x88\x68\x0a\x84\xca\x6e\x25\xa1\xb7\xff\xb2\xe6\xc0\x83\xef\xb2\x83\x5a\x8f\x6a\x7a\xee\xfc\x29\xb7\x24\x1e\xa3\x11\x27\x71\x38\x78\x55\x44\x19\xdf\xa0\xa5\x3e\x40\x4e\xa7\x66\x23\x7b\x1e\x56\x1b\x3a\x4e\x4e\x22\x03\x0b\x06\xbc\xfb\xc3\x9e\xfc\xa7\x64\xaf\x26\xdf\x03\xbe\xb0\x1d\xf3\xbe\x6b\x63\xb4\x73\xce\x84\x3c\xd3\x44\xb7\x2d\x14\xc0\x13\xb1\xad\x65\x21\x97\x0c\xb8\xbf\x41\x5b\x33\x43\xaa\x35\x67\x26\x92\x68\xfd\x1a\xaa\x78\x26\x32\x43\x2e\x32\xa7\x59\x01\x52\xc8\xa6\xb3\x27\x80\x3a\x6d\x20\x45\x83\x4f\x38\x8e\x5c\xbb\x8e\x08\xd1\x67\xfe\xdd\xcb\x2b\xea\xba\x07\xc6\xc0\x8c\xb8\x07\x46\xcf\x96\xb9\xe7\x52\x98\x4e\x9f\x08\x37\xf5\x73\x95\x35\xd4\x78\x29\x87\x2e\x04\xdd\x8e\xc4\x7b\xa4\xcd\xcf\x34\x2f\x01\x09\xfb\x3c\x19\xf0\x49\x04\xb0\x6d\x4f\xe3\x11\x4b\xd0\xc1\xcf\x18\x90\x50\xce\xc6\xc9\xc8\x74\xd0\xbc\x63\x3c\x99\x64\xff\xe1\x1c\xac\xa0\x83\xcf\x19\x57\x0c\xba\x95\x3a\x8b\xf3\x37\x3d\xcb\x36\xf2\xff\x6e\x6f\xa9\x41\xda\xce\x8b\xea\xa0\x39\x7d\xaf\x32\x40\x60\xa1\x0b\xec\xcc\xd2\x0f\x60\x74\x8d\x70\x0f\xaf\x98\x20\x56\x5c\x8d\xfd\x98\xda\x4d\xf2\x4f\x49\xe8\x3f\x1f\xdd\x24\x7d\x2a\x34\xe1\xa1\xd1\xbb\xd7\xf1\x0f\xd7\xe8\xe3\x8d\xbd\x11\x99\x8e\x1e\xe4\x65\x9a\x9a\xa6\xf7\x08\x11\xb3\xb2\x82\x18\xcb\x7f\x43\x09\x96\xe4\x37\xc4\x7d\x03\x13\x24\xde\x99\x27\x29\xce\x9d\xb4\x7b\xfe\xfa\x4c\x3a\x1f\x43\xaf\x45\xa6\x6b\x77\x4d\x53\xf0\x56\x09\xbe\xbe\x14\x6a\x42\x74\x0c\xe6\x61\xf1\x6a\x3a\x56\x84\x1a\x54\xd3\x08\x0e\x81\x4e\xa0\x1f\xfc\xcf\x4f\x7f\xcc\xdf\x3a\x8f\xc0\x8d\x91\x8a\x46\x65\x10\xa5\xaa\x1f\xc4\x65\x68\xfd\x98\x0f\x64\x9a\x66\xd0\x07\xdf\xf0\x91\x04\x0d\x8d\xdf\x4c\x66\x9a\xbe\x0f\xfa\x1d\x00\xfd\x2a\x33\xb4\x6c\x39\x11\xe2\xe8\xc2\xd7\x9e\x2e\x74\x28\x02\x4a\x45\xf9\x07\xc3\x38\x7d\x8f\x6d\xa0\x5e\xb9\xd0\xb5\x52\xcf\x9d\xd3\xa1\x7c\x16\xed\xf8\xdf\x9c\x71\x7d\x2c\xaa\x85\x5b\x52\xbd\x7f\xbf\x6b\x8b\x57\xcf\x23\x68\x44\x54\xcd\x7b\x92\xcd\xf3\x7f\x1c\xdf\x56\x23\x02\xe0\x09\xd9\x55\xb1\x7a\x7f\xad\xd5\x41\xae\xc7\x64\x9e\xbd\x7d\x3d\x22\x4f\xfc\x0d\x13\xd1\x12\x39\xe3\xc1\xf2\x48\xa3\x2a\x1f\x19\xf9\x20\x17\x30\xd2\x91\xf6\x9e\x07\x85\x5d\xcc\x96\xf3\xc4\xb9\xdc\x76\xde\x24\xf0\xb7\x53\x54\x31\x0b\xb9\x9c\x1b\x24\x79\x4f\x97\x79\xe4\xbf\x23\x81\x36\x56\x24\x19\xd9\x98\x91\xfd\xfc\xcc\x7e\x12\xa7\x2a\x6b\x29\xe4\xf1\x08\xff\x47\x2c\x39\xc3\x64\xf5\x26\xac\xc7\xe3\xaf\xb1\x13\x96\xab\xb2\x90\xef\xed\x94\xd4\xe4\x2c\x04\xb9\x4b\x4d\x84\x1f\xe9\xc7\x2d\x42\xa1\xcc\x22\x97\x9b\x67\x08\x1c\x59\x97\x30\x6f\x07\x64\x0e\x64\x92\xe4\x4e\x93\xba\x6e\xd6\x5f\x22\x5b\xa8\xe6\xe6\x9c\x4d\x51\x6a\x2f\x01\xe4\x76\xba\x6c\x55\xaf\x09\x54\xe2\x37\x20\x9f\x00\x92\x6c\x78\x76\x36\xa8\x85\xec\xf4\x55\xc3\xc3\x4b\xe7\xe1\xd4\x96\x76\x96\x8c\x10\xfa\x78\x94\x9c\x6d\x0a\x51\xf2\xf5\x99\x51\x67\xc5\xfa\xa6\x90\x2b\x7e\x56\x81\xaa\xfc\x24\x89\xd6\xd6\xdf\xe2\x46\xfb\x40\x11\x81\x1a\x42\xad\xf9\xda\x69\x40\x72\xb9\xce\xd7\xa0\x7a\x89\x3a\x92\xf9\x7a\xe2\x74\x29\x33\x42\xed\xb6\xce\x15\xda\x83\x38\xa4\x4d\x3e\x2f\x41\xf7\x4d\xad\x39\x5d\x91\x7c\x75\x82\xf7\x22\x45\x0b\x3c\x66\x68\xc5\x30\x72\x60\xd8\xf7\x3c\x2b\xa8\x77\x87\x4a\x0f\x96\x27\x2e\xdc\x7b\x98\xbd\xdb\x54\xa6\x7e\x5e\xd6\xf6\x26\x63\x7b\x7e\x2d\xed\x8d\x82\x7f\x30\xb4\x03\x66\x83\x12\x2b\x09\xb2\xb4\xc5\x12\x65\xa1\x6b\x54\x6f\x9f\xac\xb6\x24\x4d\x87\xeb\x09\x57\x65\x46\xce\x89\xeb\x1c\xc3\x8e\x29\xf6\x17\x99\x55\x74\x4d\x57\x00\xb6\xe0\x20\x5c\x05\xa8\x36\x04\xfd\xd7\x79\x99\x8b\x2c\x1a\xc6\xbf\x47\x97\x40\x10\x93\x3a\xa1\xad\x9e\xc4\xd0\xed\x6e\x8b\xa0\xcc\xaf\x6e\x71\x9c\xa4\xee\xff\x94\xae\x90\x1a\x84\xae\xf6\xf5\x92\x6e\xa3\x82\x62\x2c\xf8\x34\x5d\xd8\xdc\x08\xc8\x9c\xa0\x1b\xd9\xef\x64\xf6\x57\x7b\x3b\x96\x84\x2a\x72\x5e\x0f\x80\xdd\x49\x6b\xd4\x3a\x0f\x65\x75\x31\xd9\xe7\x59\xc5\x86\x33\x5a\xa4\xa9\x16\xc8\xa3\x53\xc8\x44\xf0\x5f\xf0\xcb\x4a\x4b\xe7\x62\xa4\x64\xdf\xc9\xec\x2f\xb6\xc2\x35\x95\x74\x6b\x2b\xa5\x5b\x1c\x99\x0d\xdb\x5a\xda\x62\x57\xea\x60\x03\x73\x94\xec\xc6\xc9\x28\x2b\xe7\x9b\x91\xdd\xfa\x65\xbe\x41\x3e\x7c\x58\x1d\x8f\xab\x21\x2b\x1d\x3c\xec\xe1\xc2\x4d\xd6\x39\x11\xd9\x81\x05\xaf\x84\x7e\x7d\x1e\x46\x9f\xf3\x7f\x27\x74\x45\x06\x2b\x56\x9e\x1a\x13\x7b\x0a\x05\xec\x55\x75\xde\x74\x49\x0f\x25\xd8\xc9\xc7\xfc\x03\x91\xed\xed\xf4\x1f\xd8\x3e\xda\xdf\x5c\xb4\x6d\x1d\x17\xde\x65\x91\x5d\xc2\x5f\x73\xb9\xa4\x8a\xdd\x9f\x06\xb8\x18\xfc\xba\xf4\x5e\xae\xa8\xee\x38\x91\x72\x0f\x55\x14\xfc\x75\xa8\xd8\xa6\x10\x1d\xf4\xf2\xc8\xcd\x69\x59\xdc\x45\x0c\x71\x58\x60\xed\x24\x8b\x62\x49\x4b\x36\xb3\xeb\xa7\xd1\x0e\x84\x8a\xef\x81\xcc\xaf\x25\x62\xe5\xf9\xe1\xc2\x83\xee\x4a\x26\x16\xe5\x72\x20\x2f\xe1\xae\xe1\x38\x88\x92\xce\x28\xa7\x62\x51\x8e\x66\x4b\xbb\x86\xca\x11\x7b\x4a\xa3\x49\xb0\xd7\xd6\x13\xc8\xd9\xc4\x26\xab\x26\x6a\x5f\xfc\xf3\xc0\x49\xc8\xae\x69\x39\xd6\x94\x83\x23\x25\xd7\x5c\xcb\xb8\x11\x5a\x32\x3d\x7a\x8a\xf2\x72\xbc\xeb\x5e\x94\xe7\x7a\xc4\x9e\x7a\x69\x8a\x58\xe8\xd1\x6c\x39\xc0\x7f\x2c\x53\x73\x65\xd7\x48\x9e\x24\x64\xd4\x2a\xeb\x64\xc7\xd1\x1f\x19\xf7\x60\x8c\x54\xe5\x82\xc2\xd3\x39\xaf\x72\x35\x71\x07\x17\x3c\xa1\xfb\x93\x6b\xee\xbc\x6d\xd6\x33\x6d\x44\xc3\x91\x06\x5a\x35\x55\xc7\xa3\xff\xb5\x98\x2e\x87\xac\x35\xf7\x7e\xdc\x80\x4e\xbd\x11\xe0\xc6\x51\x30\xb7\x66\x1a\xd7\xc5\xc7\x37\x59\x29\xb3\x68\xcd\x48\x92\x03\xa4\x16\x54\x05\x06\xee\x60\x51\x86\xcd\x60\xc2\xfd\xa0\x62\xe2\xba\x38\x77\x71\x5f\xe2\x27\x0b\x11\x79\x33\x02\x4c\x00\x1b\x29\xd1\x19\x86\x66\xcc\xbb\x2e\xd3\x4a\x1a\x81\xb6\x83\xf1\xf7\x68\x14\xa0\x6b\x5c\xed\xf5\xb8\xe9\xce\x0e\x89\xba\xa2\x1e\x23\x63\xb0\xf0\x9d\x36\x03\x53\x40\x4e\xe4\xf1\x38\xa5\x8e\x70\xfd\x55\x66\x82\x6a\x72\x3e\x54\x9e\x64\xfd\xc5\x86\x28\x7b\x12\x34\x72\x59\x1e\xfc\x6b\x49\xe8\xd7\x31\xa7\x09\xbe\x6a\x54\x8f\xe9\xdd\x1b\xe1\x94\xee\x90\xb9\x11\xec\xfe\x44\x85\x68\xe0\x18\x29\x51\x03\x72\xa3\x5b\xd0\xea\x4f\x5d\xa0\xff\xe8\xe9\xd8\x34\xa8\xf0\x5c\x88\x5c\x8a\xc0\x5d\x2c\xf8\xd2\xf2\xdd\x0b\xbe\x64\x01\x8c\x29\x7b\xf2\xf6\xf5\xe8\xc9\x35\x6c\x8b\xcf\xd2\x24\xd6\x39\x28\x44\x2c\xbf\xa9\xd5\xc2\xc2\xbb\x0c\xad\xe6\xc9\xbe\x58\xaf\x85\xbc\x1e\x83\x7f\xd5\xfc\x6c\x32\xdb\x7f\x48\x50\x19\x87\x4a\x76\xbf\xd7\x3c\xb7\x19\xf7\x9a\x27\x74\xa1\x9b\x1a\x64\x08\xf3\x48\x9d\x8f\xb0\x5c\xd3\x95\x2a\xf3\x29\xdd\xab\x2a\x9f\xd2\xd5\x2e\xe7\x14\xcc\xdd\xc1\xf4\xa9\xca\x33\x75\x3c\x56\xa0\x0f\x73\xcd\x0d\x82\xba\xb7\x3c\x5c\x91\xd3\xc0\xf8\x7b\x55\x6c\xc6\x8f\x5c\x10\xcb\xc0\x1b\x87\x99\xe3\x3f\xb7\x1b\xf2\x29\xa9\x55\x1a\x0a\x5a\x32\xe1\xe2\x17\x62\x3c\x5b\xe6\x78\xe2\x0f\x24\x2c\x89\x29\x95\xa8\xd4\xf5\x9e\x4b\x56\x09\xfa\x59\xec\xc2\xca\xd5\x6b\x2f\xdd\x05\xfb\x51\x64\x25\x41\x4f\x03\x21\xc3\x41\x44\x5f\x14\xd4\xf7\x27\xbb\x62\xcf\x16\x4b\xba\x16\x59\x49\x25\x85\x7d\x5f\x52\x33\x8c\x5c\xe4\xf0\x0f\x86\x6b\x59\x94\x2f\xb1\xf8\x75\x9a\xbe\x81\xb2\x09\x2d\xdb\x3b\xaa\x19\xe0\x69\x0d\x34\xc2\xfd\x66\x7f\xa8\x07\x52\x51\x59\xd3\xa6\x24\xe9\x94\x5e\x53\x2b\x28\x2e\x7c\xf5\x14\x18\xe2\x68\x94\x0e\x0b\x25\x14\x04\x70\xbb\x62\x1f\x14\x5a\xf1\x0b\xce\xa1\x29\xb5\xe3\xeb\x16\xc3\xc4\x5e\xa2\xe5\x1a\xed\x4a\x7f\xed\x1b\x67\x2c\x4d\xcc\xb3\x30\xe5\x30\x9a\x50\x20\xad\xc3\xc0\xf5\x2a\xbb\x3f\x91\x3c\x6b\xa6\x74\x1a\xb1\x51\x40\xfc\x18\x69\x03\x08\xcd\x5a\xe5\x34\xf3\x60\x50\x94\xeb\xfe\x84\x4c\x43\xe5\x65\xe4\x75\x77\xc0\xc0\xcb\x76\xe6\x3c\x7b\xf2\xf6\x6a\xb5\x1b\x9b\xe2\xea\xed\x95\xdb\xc8\x87\x5a\xb9\x8a\x1c\x8f\x87\xc9\x3f\x0f\x5c\xdf\x21\x56\x86\xd2\x69\xda\x0a\xc8\x92\x09\xe6\x4f\xdc\x0a\xf3\x75\x84\x42\x58\x82\x09\xc0\x85\xda\x78\x5b\xac\xde\x27\xe1\x1e\xf3\x17\xb0\x1f\xd0\x5c\xae\xbd\x47\xa0\xc0\xd6\x5a\x9a\xc5\x09\xfe\xab\x0b\xeb\x4e\x78\x2b\x41\x77\x9e\xa9\xac\x69\x48\x25\x22\xce\xb4\xa2\xa5\x7f\x09\xc3\x01\x72\x70\x6c\xb8\xc3\x61\xe3\x39\x9a\x74\x76\xff\x67\x7a\x7a\x72\x4d\x4b\x41\x72\x43\x57\xa0\xfc\xd8\xe3\x9f\x91\x82\x5e\xb1\xd8\x64\x2b\x6f\x93\x49\xee\xaf\x6a\x53\xef\x95\xe6\x85\xe1\xcf\xdd\xe7\x57\xba\xb8\x46\x9b\xe4\x40\x19\xb6\xe8\xfa\x72\x05\xf3\x83\x7e\x75\xb6\x88\x36\xc1\x56\x80\xeb\x98\x19\x42\xf7\x6c\x33\xdf\xe0\x95\x74\xbc\xcd\xc3\x9b\x37\x3c\x7e\xed\xdd\x8b\x78\xbb\xce\x37\xfc\x03\x48\x68\xb2\x83\xbb\xd3\x6e\xe9\x76\xb4\x27\x64\xa0\xd2\xb4\xb8\xf8\x9f\xf3\xab\xc6\x02\x8f\x34\x6e\x77\x4b\x42\xf2\x66\xac\xf3\xb9\xed\xb6\x09\x77\x96\x67\x7b\x55\x8d\xf6\x14\xe2\x56\xaa\x1c\xb1\xbd\x0b\x63\x7b\xe0\x5b\x37\xde\x59\xe7\x26\xdb\x8e\xd8\x7e\x34\xa3\xc9\x5b\x93\x30\xb6\x59\x4c\x97\xd8\xe6\x1b\x1c\xd4\x36\x08\xe7\x35\xbb\x19\x43\x91\xff\x76\x73\x9e\xed\xd8\x43\x0d\xdd\xa9\xec\x9a\xd0\x24\xac\x44\xd2\x52\xf2\xd5\x0a\xdc\xd1\xed\x35\xaf\xbc\x25\x62\x42\xe8\xae\xab\x0a\x6c\x10\x04\xe7\x2d\xc2\x0c\x42\x57\xae\x6b\xf7\x37\x6f\xb5\x6b\xf3\xf1\x98\xbc\x95\xa1\xfd\x8f\x34\xac\xce\x32\x4f\xfe\xf7\xff\xfa\xff\x25\x79\xf2\xbf\xff\xd7\xff\xd9\xe3\x3e\xb3\xd3\xe2\xd0\x16\xa8\xc2\xb7\x65\x06\x6d\xb1\x15\x36\x46\xab\xdf\x91\x67\x06\x59\x3f\x52\xf0\xbf\xba\x02\x7c\x73\xfa\x97\xc2\x0c\x97\x02\x58\x42\x9f\xb0\xcd\x2e\x4b\x00\xfe\x06\xc3\xbe\x87\x17\x2a\x3e\x34\xf7\x14\x1d\x2e\x56\x57\xbe\xf1\x69\x9a\x81\xa9\x94\x5f\x72\x3e\x05\xbc\x5c\x1c\x8f\xf2\x78\x14\xc7\xe3\xfa\x78\x2c\x71\xa5\xdd\x31\x6d\x09\x03\x48\xc4\xee\x46\x4c\x22\xaa\xe0\xdd\x88\x39\x9d\xf7\x77\xb1\xca\xf9\xd5\x92\xde\xd1\xb2\x36\xb8\x4f\xd3\xec\x9d\xf3\x70\x5a\xe1\x30\x74\x0f\x88\x77\xe4\xd4\x1f\x71\x45\x22\xb6\xba\x14\x4d\x65\x90\xe4\x2c\xa1\x4d\x2d\xc1\xf1\x53\x7c\x8a\x1f\x31\xfd\x6f\x4f\xe7\xc0\xe4\xff\x5f\xff\xff\x24\xd8\x46\x83\x58\xa8\x2e\xef\x20\x1a\x02\xfd\xc0\xdf\x85\x5b\xb8\xa3\x77\x4c\xcc\xc5\x28\x39\x5b\xed\xc6\x20\xe1\x1b\x5f\x29\xbd\xe6\x3a\xc9\x93\x76\x48\x20\x4b\x07\xa6\x61\xfc\x57\xec\x30\x0a\x6f\xd2\xe7\x75\xdb\x51\x11\x26\xc8\x5c\xd7\x9e\x7f\xd9\x32\xb3\x40\x5d\x91\xed\xc4\xa8\xcb\x43\x9a\x6e\x9d\x5a\xd6\x01\xc9\xc1\xc9\x47\xb1\x55\x90\x57\xb5\xda\x3b\x80\x80\x20\x9c\xb3\xa9\xc7\x07\x02\x09\x90\xe5\xa3\x25\xa1\xa8\x05\x45\x25\xf3\x09\x7d\xb2\x03\xb3\xbf\xe2\x17\xd0\x55\x87\x29\x1f\xca\x34\x8d\x9f\x93\x06\x02\x1f\xe7\xfb\x96\x1e\x15\x84\xda\xf4\xb0\xf9\x9a\x4e\xd1\x24\xe7\xeb\xea\x4b\x9c\xf4\xb0\xdb\xd2\x34\x13\xc7\x63\x26\x58\xff\x7a\x68\x2d\x7e\x0f\x52\x81\x6b\x8f\x00\xea\x6d\x67\xef\xe2\xab\x4f\x42\xf5\x44\xac\x89\x03\xc4\xec\xb6\xa6\xe2\xe6\x67\xe9\xdd\xdc\x66\xe2\xa1\x95\x2a\x48\xbd\x69\xea\x31\x5a\x8b\xa6\x97\xd8\xe6\xcb\xa0\x70\x4e\x99\xa9\x62\xd3\xa6\xde\x02\xcc\x18\x3d\xd0\x15\x5d\xd3\x2d\xdd\x04\xbc\x27\xba\x67\x53\xba\x63\xd9\x6b\x36\xa3\x49\x42\xe8\x0d\x1e\x73\x62\x93\xdd\x30\xb6\x27\xf7\x25\x3b\xb0\x15\x5b\xb3\x8a\x25\x09\x45\x8f\xac\xf4\x86\xcd\x9e\xd4\xaf\x61\xd7\xf4\xca\x32\xa6\x77\x6c\x7a\x7e\x17\xab\x45\xdc\x61\x13\xdf\x31\xb9\xb8\x5b\xd2\x5b\xf6\xce\x2b\x24\xc6\x3a\x85\xb7\x4e\xa7\xf0\x9d\x7b\x25\xdc\xa7\xe9\x6d\x34\xdf\xf3\x2b\x9c\xe8\x5b\x92\xbf\x73\xcb\x73\x1f\x1e\x11\xdf\xc1\x23\xa2\xfd\x7b\xb9\x3f\x1e\x6f\xe3\xa7\xc8\x77\xf0\xf4\xb9\x8f\xca\x25\x73\xf7\x24\xf1\x0e\xde\x21\xdf\xc1\xd3\xe3\x3e\x4d\x6f\x2e\x31\x20\xbb\x81\x18\x7a\x60\x76\x14\x6e\x1b\x4c\x4d\x89\x42\xde\x28\x10\x52\x54\x28\x1d\xcb\xaa\x79\x35\x4a\xce\xf1\x96\x0f\xc1\x36\xb6\xd6\x76\x6f\x74\x2e\x5b\xf9\xb2\xea\x04\x36\xb9\x57\x87\xf7\x4d\xbf\x49\xd3\xec\xfa\x78\xcc\xae\x23\x9e\xb1\x4e\x45\xdf\x81\x5a\xed\x2d\x12\xbb\x34\x1d\xae\x81\xcc\xde\x7a\xbf\xcc\x8d\xb1\xc8\x86\x5b\x50\x35\xf1\x3a\x81\xf4\xd6\xa9\x9a\x6c\xd9\x3b\xe2\xc7\xf5\xd2\x0d\x85\xb3\x9f\xb4\x83\x01\xaf\xb2\x96\x0a\xa0\x35\x2e\xce\xaf\x07\x70\x38\xbf\x1b\xb1\xa7\xe4\x7a\x71\x37\x9a\x2d\xb1\xb5\x07\xec\xd8\xf5\xe2\x6e\x89\xf2\xfb\xed\xf1\xb8\x0d\xa3\x5f\x97\x70\x15\xaf\x90\x15\x58\x50\xd0\x2b\x9f\x69\x0b\x9a\x8d\xa8\x37\x3a\x25\xb0\x00\x2d\xc7\x66\x53\x65\x5e\xd1\xd1\xa8\xf9\x66\x34\x03\x1d\x4a\x32\xde\x07\x55\xc7\xa6\x22\x24\xad\x53\x7b\x43\xac\xad\x5f\x13\xd9\x96\x0d\x67\xe4\x64\xbb\xb6\xbf\x64\x9e\xfb\xf1\xcb\xf9\x45\x2d\x25\xda\xd0\x1b\xe2\x36\x83\xb3\xa1\xfb\xc0\xf6\xa3\x5d\xa4\xd0\x34\x74\x42\xc2\x57\xec\xc3\xe5\x8b\xf9\x2e\x90\xc2\x17\xe3\x3d\xc9\x77\x03\x13\x2e\x71\x99\xa1\xaf\x68\x31\x2f\x46\x65\x5e\xd2\x15\xdd\x8f\x5e\x79\x43\x60\x76\x33\x3f\xe4\x49\x42\xd7\xb4\x82\xd1\xfe\x70\xc9\x5e\x90\xfb\x1d\xf3\x85\xd9\xa2\xe8\x9e\xbd\x18\x20\x55\xde\xb3\x0f\x74\xc5\x92\xe4\xb4\x0b\x80\x6c\x8a\x2a\xa6\x17\xaf\x47\xa3\x25\xa1\x05\x53\x22\xc3\x0f\x6a\x22\x2e\x84\xe0\x41\x7f\xe6\x7b\xf9\x9a\xcd\xce\x5f\xd7\x1a\x14\xaf\xed\x6c\x36\x5a\xdb\x2a\xdc\x32\x23\x58\xf0\xac\x55\x70\x24\x04\xd8\x36\x4f\xb9\x29\xab\x35\xc4\x41\xa1\xc2\xe9\x88\xa7\x69\x92\xb0\x48\x0f\xd7\x2e\x51\x4b\x26\x8f\xc7\x06\xdf\xd4\xeb\x79\x3b\xaa\x6d\x23\x1e\x7f\x0f\x38\xd3\x73\xbd\xe0\xcb\x96\x3e\xa5\x82\x87\x3f\x41\xee\xb3\x2e\x2c\x1c\xd2\x4e\x66\x28\x8f\xa4\x58\x40\xc3\x63\xa1\x16\xba\x62\x75\x12\x25\x17\x0b\x32\x2e\x27\xc9\x70\x2f\xd7\x70\x4e\x43\x34\xfc\x72\xb1\xf0\x5e\x46\x41\xd3\x4f\x13\xa7\x46\x2f\xe7\x36\x30\x9f\x0d\x44\xfd\xe2\xed\x4c\xa7\x04\x39\x11\x6c\x30\x95\x60\xe1\xc2\xc1\xb9\x81\xbc\xc6\xcb\x58\x2c\x80\x69\xcb\x48\x39\x55\x6c\xb1\x04\xc8\x6f\xcb\xa8\xa8\x5a\x75\xf6\x6b\x99\x1d\x16\x7a\x49\x45\xa6\x09\x95\xf5\x53\x01\x5a\xc8\x54\x6e\xd2\xc0\x9e\x0c\x08\xa2\x93\xcb\xae\x50\xf7\xa7\x72\xef\x1c\x6b\xfc\x2c\xdd\xe7\xd6\x4e\xe8\x81\xd8\x93\x25\x3b\x44\x70\xe8\x7b\x86\x29\xc6\xee\x31\xb4\xb6\x65\xf0\x76\x7a\xd9\x94\x16\xd9\x94\x1e\x02\x40\x06\xf5\x50\x51\xa1\x20\x3b\xdc\xe2\x0f\x3e\x0e\x69\x82\xb1\x91\x5b\x72\xfe\x6a\x15\x17\x34\x9e\x91\x81\xca\xd6\x74\x8d\xcd\xdf\x10\xba\x47\xec\x77\x28\xda\xbd\x58\xef\xed\x45\xc3\x4b\x18\x42\x8b\x5c\xe4\x8e\x84\xdb\xc5\x8a\x31\x54\x23\x9a\x31\x16\x5a\xa1\xb2\x15\x5d\xa1\xbc\xd4\x6f\xfc\x6a\xb2\xda\x92\xd1\x76\xd4\x08\x2e\x6d\x20\xdd\x60\xab\x33\xdb\xca\x59\xdc\x4a\xd2\x98\x9a\xfe\xbc\x76\x9e\xe8\x83\xf5\x1d\x16\x53\x3b\x9d\x53\x82\xf0\xeb\x51\x1f\x80\xd9\x0f\xbd\xf8\xa4\xc6\xdb\xc2\x46\xeb\x6e\x1b\x7c\xf9\x8d\x01\x1c\xcd\xe8\x1e\xfb\x75\xff\x29\xad\xb3\xf3\xb1\xed\x2b\x7c\x43\x06\x9d\x71\x19\xec\x2f\x67\x9d\x19\xb3\x15\x8e\x67\x0f\xf4\xf3\xb1\x0d\xb2\x17\x01\x0c\x08\xa1\x48\x78\x0c\x7d\xc0\x1a\x7a\xd2\x86\x4d\x81\xdd\x6f\x69\x80\xf3\x85\x69\xd8\x77\x51\x3d\x02\x75\xf0\x60\xf6\x1e\x3f\xa1\xd7\x35\xef\xea\x9a\x57\x96\xb3\xd3\x5c\x32\xde\xae\xab\xcf\x62\xc8\x4b\xa6\x17\x72\x39\x30\x23\x26\x26\xab\xed\x41\xbe\xb7\x57\xef\x8c\xd8\xba\x85\xd7\x3d\x10\x0d\xab\x33\x84\x81\x01\xa8\xb0\xe6\xab\x7e\xa7\xc3\xa7\xbd\x88\xa1\xc0\x42\xf1\x0f\xe2\x23\x45\xfa\xbc\x27\x8a\xf3\xf2\xad\x94\x0d\x5f\x26\x6d\x2a\x24\x19\x1f\x99\x73\x7d\x21\x6b\xbb\x2a\x11\x03\x3b\xe8\x65\x3c\x6e\xe3\xba\x53\xbf\x81\x1e\xe8\xdf\x45\x26\xa8\x83\x22\x4e\x1a\xa6\xf4\xee\xad\x06\x66\x99\x7a\x7e\xa7\xe5\x07\xc0\x6e\x2c\xcb\x54\x97\x77\x1e\x43\x0a\xf2\x06\x87\x24\xdd\xc6\x07\x0d\x09\xa7\x88\xe1\x47\x0d\xd7\x4c\x5c\xbd\x5b\xe3\x9c\x78\x2b\x55\x53\xff\x6a\x27\xe3\x91\xb1\x5c\xcb\x37\x87\x9d\x68\x70\xca\x11\x4f\x21\x15\x86\xeb\x1f\x3a\x0d\xab\x8b\xb0\x63\xca\x61\x4c\x01\x73\x56\xc7\x30\x28\x7c\x19\x6b\x24\xd2\xdd\x7f\x6e\x8e\xed\xc2\x79\x6c\x6e\x43\xa2\x71\xc7\x18\xb2\xb1\xc4\x7b\xac\xe9\x1a\xf1\x70\x02\x31\x19\xaf\x69\xd0\x80\xb8\x08\xaa\xc9\x81\x0f\x33\x54\x8c\x39\x00\xd1\xfa\x9d\x06\x26\x79\x51\x1b\x33\x4e\x55\x43\x85\x65\xcc\x8a\xb1\x0c\xdb\x83\x31\xe5\x51\x53\x42\xf3\xfc\x53\x1f\xe8\x1a\x51\x19\x6f\x0b\x10\x17\x67\x66\xcc\x14\x09\x3a\x28\x53\x24\xa2\x7c\x8c\x76\x3b\xf5\x28\x98\x8b\xa7\x9f\x77\x0a\x77\xcf\x67\xb3\xe3\x71\xd8\x8c\x59\x4c\x97\x91\x4b\xd3\xbd\x20\xc1\x68\x6a\xe1\xf6\x81\x5f\xc9\x59\xe5\x3a\x14\x68\xc6\xc2\x9e\x10\x7b\x91\x55\x64\x49\xdb\x85\x36\x56\xcf\x03\xdb\xa1\x69\xdb\xf2\xc0\x64\x19\xd2\x2c\xda\x2c\xeb\x16\xf1\x4f\xd9\x37\x76\x50\x6a\x31\x0f\x6d\xee\xa5\xf6\x26\xe8\x6f\x83\x6c\x90\x89\xd0\x14\x78\xb4\x16\xdd\x05\xc3\x14\x9c\xcc\x62\x12\xb5\xcd\x35\xc9\x79\x7f\xa9\xd2\x54\x34\x88\xd7\xe5\xe7\xd3\x7a\x3c\x0a\xd6\x8c\xfc\xb7\xa7\x9f\x8f\x9e\x7e\x4e\x2b\x56\x9c\x57\x17\xcd\xa8\x73\xaf\xf4\xee\xa6\x42\x34\x76\x79\x45\xab\x11\x7b\xfa\x39\x21\x03\x11\x96\x61\x19\xf4\xc3\xfa\x56\xdf\x68\x24\xe9\x94\x96\x84\x96\x8d\x09\x74\xc5\x32\xd1\xa2\x35\x85\x5b\x12\x00\xce\xf1\x7a\x2f\xca\x32\x23\x27\xbc\x17\xf0\x31\x53\x76\xb3\x87\x98\x16\x64\xe2\xb0\x77\x85\x5e\xb0\xd9\x94\xc4\xda\x6c\x83\xb5\xf2\xae\xc9\xf9\x2d\x9c\x5c\x9d\x36\xf3\x76\x21\xe3\xcf\xe9\xe7\xc4\xa9\x2f\x61\x2f\xc0\x33\x12\x92\x08\xf8\x4f\x79\x18\x0f\x13\xab\x70\x6a\x76\xa5\x42\xa6\x50\x2c\x05\x43\x96\x56\x60\xd8\xaf\xa3\x19\x9d\x5a\x92\x0f\x3c\x07\x2e\xa5\x4e\x53\xc9\x20\xec\x67\x5b\x77\xb4\x83\xa8\x59\x52\xce\xe4\xc9\x84\x78\x6f\x41\x7d\xbb\x15\x65\x4f\xe7\x2e\x67\xd3\xa8\x35\x8d\x81\xff\x38\x95\xfe\x7f\x6e\x8d\x07\xb8\xb0\x88\x28\xaa\x31\x87\x58\x01\x98\x05\x3f\x64\x9c\x16\x54\x93\x86\x6e\xbb\xa3\x63\x45\x1f\x1d\x53\x1e\xc1\xed\x46\xb0\x29\xbd\x16\xec\xd5\xe4\xb9\x5a\xf5\xa0\x65\x87\xd5\x13\x7b\x63\xbe\x16\xf5\x93\x32\xbf\x3d\xbb\xae\x2f\x63\x4e\x75\x08\xd4\x67\xd9\x94\xd8\xf3\x07\x21\xab\x2d\xc7\xe4\x69\xd8\xc2\x71\xbb\x09\x3e\x11\x93\x25\x59\xba\xb5\x0d\xb6\xf0\xfe\xd4\x0d\x1a\xc3\x2c\xfa\x04\x60\x0f\x87\x92\x15\x03\x60\x61\x40\xc9\x0b\xf9\x35\x97\x5c\xc3\x43\x02\x9b\x05\x8b\x70\xd0\x09\x60\xda\x5d\xba\x36\x3c\xd3\x74\xea\xf4\x9c\x2b\x5e\xb2\x1f\x40\x14\x87\xe4\x0a\xf1\x13\x60\x5d\x7d\x29\x32\x3c\x12\x4c\xc0\xa7\xbb\x11\x6e\x17\xaa\xb5\xf7\x18\x6e\x22\x9c\x43\xbe\x67\xd2\x83\x7b\x19\x2e\xd7\xb6\x69\x7d\xbe\xf9\x33\xa7\x3f\x0a\xcf\x5a\xf6\x9e\x5b\x59\x36\x81\x6e\x9c\x9a\x38\xe2\x7f\x08\x6a\x94\xfd\xc3\x3f\x98\x9c\x9f\x08\xfd\x0c\x51\xfe\x28\xb6\xb6\x52\xe4\x34\x88\xfd\x99\xb3\x5b\x95\xc5\xe7\x3d\xbd\x5f\x29\x59\x19\x7d\x58\x19\xa5\xf3\x6b\x01\x2b\xb6\xb3\x60\xf5\x1c\x3b\x87\xab\x68\x5c\x4f\x03\x35\x63\x7b\x4f\xcd\xa3\xe8\x38\x32\xfc\x1c\x05\xca\x4f\xeb\x33\xe2\x41\x9e\x70\xda\x76\x4f\x66\x77\x83\x1e\x79\xd7\x64\x35\x2b\xdd\xa0\xe7\x8d\x66\xd1\xff\x9b\xbc\x77\xdd\x6e\x1b\xc7\x1a\x05\xff\xeb\x29\x64\x4e\x97\x86\x68\x41\xb2\x64\x27\x71\x4c\x1b\xd6\xa4\x72\xe9\x4a\x77\x6e\x9d\xa4\xba\xba\x8e\xa2\x4e\xd1\x24\x64\xa1\x42\x11\x6a\x10\x72\xe2\xb6\xb8\xd6\xf9\x3f\x2f\x31\x4f\x30\x0f\x71\x9e\x62\x7e\xcf\x93\xcc\xc2\xc6\x85\x00\x25\x39\xa9\xfe\xea\x3b\xb3\xe6\x9b\xac\x2c\x5a\x04\x71\xc7\x06\xb0\xef\x5b\x20\x8b\xa3\xec\x42\x4f\x02\xcc\x20\x28\x88\x6a\x6c\x1d\x37\xef\xf0\x3d\xfa\xda\xcc\xfd\x57\x06\x69\x29\x66\xf0\x0e\x4f\x27\x32\x91\xda\x1b\x3e\xdd\x6c\x7c\x30\xb0\xc1\xb2\x50\x8d\x2b\xdb\xe6\x9f\x65\x1c\x6f\xb7\x3b\xa7\xfe\xbc\x8e\x10\x76\xbe\x07\x83\x76\x07\xe3\xce\x0b\xe1\x43\x87\x34\x21\xaa\x05\x7e\x6a\x7a\x2e\x82\x08\xd9\x48\x03\xce\x36\x98\x39\x87\x32\xb6\x63\x11\x56\x34\x79\x72\x30\xaa\xc1\x29\x99\x07\x66\x12\x81\x7b\x12\x3f\x26\x58\xb2\x7d\x46\xfc\x60\xfa\x45\x31\xa8\x47\x5a\xa5\x62\x41\xc4\xc4\xbe\x2a\x38\xc2\xa5\x5e\x80\x5d\xd5\x58\x2c\xf1\x8b\x19\x8a\x2d\x47\x11\x6e\x6a\x0c\xa6\x5e\x4c\xca\xa4\xd4\x53\x2f\xf6\x4e\xbd\x09\xfe\xb7\xcf\xd3\xac\xf9\xfc\x03\xb8\x25\xf2\xfc\x86\xca\x5e\x4f\xf3\x3d\x5c\x0d\x3a\x4b\xd2\x72\xd0\xf5\xcc\xf5\xd2\x1e\x87\x76\x29\x68\xd3\xf8\xab\xf5\xf2\xb2\x15\xf0\xb1\xd1\xeb\xf1\xf2\xe9\x26\xfe\xc6\xaa\x75\x5a\x6c\x07\x45\xb6\x51\x08\xa0\xb2\xf6\x51\xd2\xb4\x8a\x30\x58\x92\xd5\x58\xcd\xc5\x63\xbe\xbe\xc3\x79\x28\xa0\xfa\x2e\x9c\xf3\xbe\x6c\x90\xa1\xc6\xd6\x2a\xec\xce\x6c\x3e\xb0\xd6\xd8\x38\x33\xd9\x35\xf0\x66\x75\x61\xf4\xda\x47\xce\x5e\x77\xc0\xb4\xb0\xf6\x2f\x31\xf2\x5d\xf4\x83\x53\x77\x1d\x70\x1e\x76\x22\x04\xa3\x4b\x6c\x5c\x7a\x9d\xa4\x5f\x92\x88\x96\x90\x69\xb3\x89\x24\xd7\x3f\xec\xfe\x85\xa0\xea\x4d\x7c\x71\x1c\x46\xc5\xdb\x3b\x7b\xb4\x18\x0a\x05\xc7\x55\x8d\xb7\xc2\x40\xde\x55\x68\x47\xcc\x48\x38\x21\xcc\x1c\x84\x47\x84\xde\x19\xff\xa4\xe1\x9e\xd8\x06\x82\xc9\x1c\x48\xe1\xcd\x66\x84\x12\x8a\x9c\x65\x0d\x42\xd8\x8f\x2f\xf8\x4d\x95\xfb\x1b\x6e\xb3\xa1\xc8\xd4\xd3\x8a\x30\xbc\xb3\xaa\xef\xb7\xab\x92\xbd\x9e\x7f\x20\xec\xaa\xaa\xda\xaa\x0b\xdd\xfe\x60\xca\xfc\xcb\xab\x69\x67\xd9\xef\x6f\xbe\xa1\xf4\x8d\x75\x4a\xec\xd6\x0c\x36\x8a\xdc\x9a\xa0\xed\xae\x58\xdf\x1b\xf6\x48\xbd\xdd\x61\x4c\x4f\xfd\x40\x9b\x6c\x5a\xce\x88\x89\xf1\xe8\xe6\x41\x5d\x6d\x1a\x10\x9b\xc9\xa5\x36\x14\x27\xb2\x38\x13\xf8\xf6\xf4\xb4\x54\x1d\x2f\x0c\x07\xdb\x40\x47\x4e\x68\x4e\xe9\x27\x34\x66\x66\x72\xd5\x78\xd2\xfc\x2b\xab\xe4\x51\xe3\xcd\x84\x58\x22\x03\x70\x67\x2f\x4c\xe5\x3e\xa8\x08\xdb\x2f\x71\xe9\x31\x7d\xf5\x2a\x5f\xf9\x80\xb7\x93\x10\xb5\xf7\x9c\xb7\x2c\x1a\x35\x10\x3b\x22\x97\xda\x7b\x41\xa8\x69\x33\x01\x5e\xe1\xb7\xda\xbd\xa8\x23\x89\x9c\x48\xcb\x80\x61\x28\x61\xf5\x6f\xbd\xa4\xaf\xe8\xce\x5d\xbf\x1d\xa3\xf6\x77\xeb\x33\xb8\x8a\x00\x41\xb4\x8d\xb8\xb3\xaf\x77\x08\x83\xa1\x0a\x73\x1a\xad\x35\x6e\x47\xc8\xbc\x83\x0e\x99\xce\xb0\xe7\x6d\xd5\x5b\x73\xcf\x51\x53\x39\x65\x33\x62\x8c\x95\xb6\x83\xe0\x96\xaa\xca\xcd\xc6\x85\xf9\xdc\x6e\x7e\xf7\xce\x69\xf5\xc1\xb6\xef\xa2\x11\x85\xfd\xf0\x82\xd0\xd8\x4f\x53\x3e\xeb\x94\x53\x3e\x23\x1a\xe3\x49\xed\x2c\x4a\x9e\xa4\x30\x8b\x7b\x50\x1c\x70\x06\x6c\xb0\x1c\x51\x5b\xc9\x46\xaf\x07\xd7\x00\xb8\x61\xfa\x4a\x57\x43\xc7\x5c\x9c\x30\xac\x35\xdd\x1d\xd6\xea\x85\xfa\x94\x5a\x97\xfd\x95\x88\x2b\xe3\xb4\x00\x73\x84\xd7\x2a\xe1\xad\x88\x2b\x50\x89\xd0\xa4\x1a\xf8\x65\xc6\x9c\xac\x71\x94\x82\xd1\x53\x44\x88\xd9\x91\x19\xa1\xde\xd2\xa8\x1a\xc1\x06\x3e\xd3\x01\x56\x33\x7b\x7c\x9c\x8f\x3a\xe5\x34\x75\x27\x4c\x3e\x59\x27\x05\xce\x27\x45\xb2\x36\x7c\x7e\xff\x6b\x81\x1b\x5f\x27\xda\xbe\x29\x2e\xb5\xe7\x40\xef\x20\xa9\x35\x8c\x96\x58\x1a\xe5\x66\xd2\xec\xe5\x33\x7e\xa1\x56\x6a\x30\x40\x16\xf3\x04\x47\x07\x9d\x6a\xf2\x93\xd9\xfc\x95\x21\x0f\xb2\x65\xaf\xf7\x93\xe1\x43\x66\x4b\x38\x00\xd6\x65\xce\x43\xa8\x40\xb7\xff\x32\xd5\xe8\x40\x72\x06\xb5\xbc\x23\x1b\xc4\x92\x73\xb5\xed\x39\xd7\xda\xd5\x82\x57\x04\x53\xf3\xd7\x8b\xe8\x70\x75\xa6\x48\x45\xe5\x53\xb8\x61\x58\x79\xb5\x1d\x46\xc0\x50\x74\x14\x0e\x8b\x1d\xf9\xc2\xcb\x5e\xe7\xae\xb1\xa1\x27\xdb\x5c\xd7\x56\x58\x06\x93\x0b\xb7\x05\x02\x9e\x8b\x3f\x38\x5a\x74\x8a\x3a\x44\x34\xa4\x6c\x36\xfd\xbe\xe6\xc4\xda\x12\x81\x5b\x40\x53\x46\xa7\x85\xa5\x6c\xb4\xa3\x5b\x58\x28\xa9\x17\x42\xd4\x0a\x6f\x6b\xbc\x08\x6e\x45\x74\x68\x51\xc7\x7e\xda\x70\x99\x7e\x69\x68\x6f\x70\xee\x2f\x3e\x3d\x56\x14\xf9\x56\x2d\x6d\x3a\xdd\xb0\x41\x54\xdf\x9a\xd4\x58\x2d\x0a\x6e\xa7\xee\x42\x27\xa9\x65\xc1\xda\x9e\x28\x6c\xf5\xf5\x8a\x6c\xa5\xbd\xa3\xc5\xae\xe4\xd7\x70\x52\x10\x8f\xd4\xb7\x5f\xaf\x5c\xbb\x35\x66\x55\x6b\x30\x34\x5c\xf0\xed\x32\x84\xb8\x23\xbd\x35\x62\x7d\xe1\xec\x98\x64\xb3\x26\x6a\xb9\x92\x17\xad\xf9\x55\x89\x7a\x27\xec\xf8\xa8\x93\x51\x0d\xc8\xe4\x56\xc5\x21\x46\xfd\xed\x8b\xd8\x91\xd0\x2a\x79\xa1\x03\x6a\x97\xce\x18\x13\xb9\x68\xce\x58\x9a\xb6\x75\x26\x03\x7e\x5b\xd9\x6a\x85\x99\x80\x07\xf5\x22\xad\x76\x5f\x17\x66\x32\x7f\x76\xd4\x64\xa4\x6d\xac\x15\xa2\x3b\xb1\xbf\x93\x08\xf4\x70\x22\xbc\x45\x49\x97\x44\x3b\x88\x84\xdc\x8d\xbd\x67\x12\x35\x46\xa6\xfa\x5b\x63\x15\xba\x5d\xbf\xfd\xf2\x59\xa4\x2b\x63\x2f\xaa\xf0\xbf\x69\x39\x03\x44\xf0\x39\x8f\x85\xb1\x03\x85\xb4\x26\xa4\x18\x6d\xcc\x41\x0d\x93\x0d\x6c\x4b\x3b\x4e\x16\x63\x29\xe9\x25\xbf\xa6\xff\x5f\x9c\x07\x6c\x64\x91\x6c\x1e\x1f\xb0\x66\xdc\x8d\x83\x0b\xf0\x71\xa8\x45\xa9\x8e\x3d\xcb\xc1\xa1\x8d\xcc\x16\x7a\xe6\xb4\x6e\x10\x0f\x03\xb1\xa5\x84\x1b\x3b\x5e\xde\xd8\xf1\xc2\x7c\xfa\x51\x07\xad\xed\x6f\x6c\x7e\xf5\x7a\xe9\x81\xd3\x63\x9b\x58\x3b\x2b\x5b\x20\x45\xda\xbc\xb3\x6e\x4d\xbf\x81\x41\xed\x2e\xe1\xae\xc9\xdf\x66\x72\x18\x75\x0d\xfa\xb9\xfb\x4f\x6d\x3f\x0e\x61\x15\xc1\xd9\xae\x55\xa1\xe8\xf5\x58\x60\xf9\xcf\x9d\xee\x5f\x5a\xb0\xab\xf2\x27\x63\xc5\xae\x36\xcd\xcf\x5a\x48\x61\x0d\xcf\x43\x1f\xb3\xd6\x42\xc7\x98\xbd\x83\x31\x81\x35\x81\x9f\xce\x50\x33\xe7\x56\xea\xf1\x48\x4e\x4c\x78\x79\x86\x12\x61\xb9\xe5\x8e\x94\x10\x0d\x29\xe1\xd9\xc9\x37\x85\x11\xc2\x23\xcc\xac\xbc\x84\x48\xcc\x75\x64\x87\x46\xb9\xa2\x24\xda\xcf\x03\x6d\x98\xb2\x1d\x70\x80\x6b\x39\xfa\xfd\x3f\x94\xa0\xb3\x58\x82\x73\x07\xa3\x02\x6a\x05\x21\xe0\x40\x76\x87\xe9\xba\xbf\x3a\x98\xd5\x8e\x89\x64\x48\x88\x66\xaf\x98\xf5\x0a\xc5\xbb\xd6\x7d\x2e\xb6\x7e\x91\xb7\x59\x9b\xc6\x37\x78\x79\x07\x4f\x09\x0b\x2c\xc0\x5b\xca\xcd\x8a\x6e\x36\x11\xdc\x8f\x91\x26\xc9\xbf\x37\x9a\x8a\xc9\x2e\xc7\x6b\xb7\xbe\xc3\xeb\x44\x3a\xbd\x44\x09\xbe\x17\xde\xdf\xac\xe8\xc4\x2e\x5a\x22\x11\x6e\x1c\x25\x26\xc0\x5c\x6a\xde\x71\xe8\x24\x2e\x39\x18\x63\xed\x09\x5d\x67\xd4\xbf\xf1\x96\xe7\x6c\xfd\x75\x2b\xb9\xee\xb4\x06\x4d\x89\x37\x6c\x05\xb6\x8d\x02\x26\xaa\xb1\x73\x45\xfb\x68\x57\x40\x2c\xa0\x77\x2c\x6f\x29\xf6\x6b\x42\xbb\x9d\x85\x7a\xce\x46\x42\xaa\xc8\x13\x79\x28\x0a\xe8\xcc\xc1\xaf\xd6\xf6\x63\x46\xbd\x93\x6a\x93\xe7\x2d\x3f\x31\x17\xf6\x8b\x34\x50\x6e\x7d\xc2\x68\xc9\x8c\xca\x64\x9c\xe2\x78\x24\x92\x1b\xdb\x16\x5c\x04\x73\xe2\xb3\x2c\x3b\x1e\x09\x40\x03\x9f\x45\x8e\x09\x6e\x82\x2e\x18\x5b\x98\xc0\x3b\xb4\x13\xd3\x7c\xbb\x27\xad\xca\x92\x11\xc6\x93\x96\xd6\x1f\x2b\x40\x29\x95\x11\xd3\x07\x1d\xbf\xf2\x02\x92\xf5\xb1\x46\x48\x61\x94\x35\x41\x6b\x4c\x65\xb2\xe1\x0d\xdd\x07\xe2\xfc\x70\xeb\xa4\x0b\x22\x87\xd9\x62\xb3\x11\xbd\xde\x81\x68\x1c\x6a\x6d\x36\x86\xe2\x2f\xda\x73\xea\xb2\xd4\xfd\x3e\x03\x0f\xf6\x80\xb4\x3c\x2a\x8a\xd6\xac\x5a\x11\xe2\x74\xb6\x3d\x5b\x3b\xcf\xb5\xdf\x02\x35\xc6\xd9\xa2\x25\xa1\x21\x44\xa4\xea\x2e\xa4\xd8\x0e\x22\x84\x69\x8d\x57\xbc\x7a\x26\xb8\xa6\x6b\xb6\xa1\x39\x60\xab\xe3\x92\xec\xa2\xb4\xed\xe5\x73\xc7\x30\x9c\x82\x02\xf3\x79\xed\x7d\x70\x84\xc8\x2f\x9c\x77\x07\x49\x28\x3e\x18\x75\xe8\x80\x70\xdc\xef\x0b\xd5\x43\x0b\x66\xc0\xb2\x97\xc8\x44\xdf\xfa\xa2\xba\xdc\x66\x93\xea\xed\xd7\xda\x71\xd9\xa2\x63\xa3\x0d\x18\xff\x43\x30\x14\x50\x9c\x5c\x9c\x8f\x1a\x0f\x38\xd7\x4d\xfc\xa2\x6f\x1d\x9f\x37\x33\x06\xbe\x03\xb4\x42\xf6\x8d\x6a\xb9\x1d\x2e\x0c\x48\xd6\x38\xe3\xab\x5d\x58\xa6\x11\x0a\x7e\xab\x44\xa5\x2d\x51\xdb\x2a\x60\x86\xd1\xf0\xe7\x77\xcb\x06\xdf\xf3\x15\x96\xbe\x9c\x50\x86\x72\x43\xf5\x91\x16\x0d\x1f\x42\x7a\x42\x3a\xa0\x21\x02\x6c\xfa\x09\x5d\xc9\x05\xd9\x42\xb2\x21\x19\x6a\xb2\x68\x76\x6c\x65\x09\x8d\xeb\x75\x98\x1c\x1d\x16\xe2\x09\xcf\xc2\x8b\x6b\xb3\x89\xc1\xd0\xb0\xe3\x61\xe4\x7a\xac\xbb\x05\x3f\x1d\xab\x54\x6a\xe1\x1f\x76\xb3\xe6\x16\x52\x4f\xe1\xf9\x00\x3c\x72\x40\xdc\x55\x7e\xae\x05\xb0\xea\xa7\x3d\xd4\xda\x6b\x82\x05\x98\x8b\xf1\xdc\x92\x28\xfe\xfc\xef\x9e\x76\x6a\x6e\x23\x35\x4e\x30\xf7\xb3\x84\x84\x3f\x49\x08\x3b\x75\xa4\x4f\x34\x57\xb8\x4b\xf3\xe6\xdb\x40\xe6\x3c\x4b\x4a\xdc\x54\x98\xf8\xb5\xd7\x48\x3b\x41\x83\x32\x90\x15\x3a\x6d\xc3\x6b\x24\x07\xa3\xbd\x25\x67\x78\xaf\xe8\xd1\x77\xa5\x29\xec\xc9\x5b\x12\x69\xb5\x91\x9c\x03\xca\xc6\x13\xbb\x71\x40\x09\x8e\x40\x9a\x34\xa9\x19\x3a\x2b\x0a\xe1\x3c\x2c\x23\x08\x02\x89\x70\x9c\x82\x65\x24\xc8\x2b\x9a\x5f\x80\x5f\xa0\x4e\xe9\x7c\x86\xc1\x24\x54\x08\x37\x2a\x79\x75\x5d\xc7\x25\x7e\x6a\x1c\x03\xc1\x71\xbb\x2e\xd5\x1c\xb4\x21\x48\x9d\x02\xbe\x34\xfe\x35\xc8\x80\x74\xec\x27\xec\xcd\x36\xda\xa1\xf3\xd3\x8e\x60\x22\x83\x40\x33\x9f\x68\x3e\x95\x33\xf0\xfc\x45\x3c\x7d\x49\x55\xc2\x3a\xae\xc5\xa0\x7e\xe9\x3a\xa6\x3b\x8b\xbf\x94\xb1\xeb\xb8\xd1\x55\xd7\x81\x71\x2d\x84\x84\x20\x62\x6e\x82\xa9\x76\x59\xbb\x1d\xbb\x45\x58\x0b\x1f\x96\xa3\x1a\x61\x6d\x41\xb6\x53\x30\x1f\x46\x49\x20\xbb\x48\x66\x0d\xe8\x21\x9d\xbc\x95\x51\x27\x03\x13\x1d\xc4\xe4\x2f\xec\xde\x0d\x0f\xe6\x8f\xa1\x78\xef\x25\xcf\xf7\x4a\xc4\xd4\x76\xd2\x9c\xa2\x9c\x49\x5f\xba\x15\x66\xcb\x96\x35\x6e\x58\x97\x7b\x99\x0b\x66\x2b\x4e\x8c\x21\x6c\x1c\xec\xcf\xe4\x67\xee\x64\x7e\xee\xb4\xbf\x4b\x8d\xf3\x1d\x5d\x69\x3b\xc9\xba\x46\xd8\x57\x21\x18\x52\x1b\x8a\x28\x48\x55\x33\xa2\xcd\x02\x19\x89\xd4\x4b\x57\xe3\xaf\x5d\x8d\xa2\x77\xd5\x35\xd0\x75\x43\xed\x7a\x6a\x07\x91\x17\x89\xde\xe9\x7f\xdd\xb0\x2e\x2b\xbb\x7e\x0b\x28\x68\xae\xe5\xa0\xee\x86\xa1\x5e\xef\x92\xc7\x97\x0c\xdf\x30\x74\x3e\xea\xf5\xe2\xd7\x4d\xee\xe9\x0d\x9b\xed\x8a\xd4\xb8\x3d\x7c\x6a\x94\x41\x61\x1a\x20\x60\x9d\xb8\x02\x2b\xaf\x0a\xd5\x75\xec\xf7\x40\xd5\x89\x90\x17\xdc\xc8\xd9\x5d\xc5\x8d\x9b\x95\x18\xac\xe1\xb4\xc3\xba\xf6\x8e\xd3\xdc\xe2\x72\x6b\xbb\x39\x7f\x28\xf6\xd3\x34\x05\x8a\x1a\xfa\x73\x40\x98\x45\x06\x79\xaf\x57\x79\x87\x5a\x47\x21\x6d\x85\x3a\x4b\x75\x4e\xac\x20\xdf\xfc\x2c\x71\x01\xc1\x11\x90\x75\xa9\x17\x38\x85\xfd\xcc\xbc\x28\x02\xd9\x72\x3b\x8c\xcd\xfb\x05\xab\xba\xd6\xdc\xad\xcb\xaa\x6e\x5a\x08\x9a\xe6\x37\x6a\x85\xd6\x15\x1d\x46\xa8\x03\x27\x0b\x91\x60\xf9\x41\x28\x7e\x13\x53\x84\xdf\xab\xc7\xee\xf0\x7d\x9b\xcd\xab\xf0\xe3\x12\xbc\x07\xfa\xf7\x8b\x42\xa3\xbd\x4e\x3e\x65\x5e\x78\xf1\x01\x31\x9c\x77\x74\x3e\xda\x6c\xa4\x42\xfd\x01\x49\xd8\xd1\x73\x2a\xa8\xea\x71\xc9\xbb\xaa\xfd\x6e\xd4\x8f\x65\xdf\x16\xee\x47\x6a\x04\x72\x41\xdd\xe0\x86\x1e\x04\x0a\x42\xcf\x0e\x74\x84\x91\xea\x2c\x40\x3f\x03\x52\xe5\x6b\xaa\x59\xf2\x9c\xa3\x5b\x41\x98\x39\xf2\xe4\x80\x70\xe7\x4c\xda\xe8\xe3\xca\x99\x17\x9b\xa3\x65\xbe\xa7\xa5\x22\xa1\x4b\xd7\xaf\x85\xa0\xa1\xce\xd3\x3f\x20\x64\x1d\x46\x5c\xd4\xa2\x98\x13\xee\x39\x4b\xcb\x16\xe0\xda\xc5\x91\x01\xde\x67\xa9\x3f\x1a\xcc\x9f\x23\xec\x30\x7c\xd7\xd7\xd7\x5b\x7d\x6d\x77\x31\x74\x14\xd4\x04\x07\xd1\x76\x3d\xad\xea\xde\x05\x2e\x42\xe4\x80\x7a\xca\xbc\x3e\xfe\x4f\xcf\xca\xb3\x92\x58\x05\x3e\x54\x36\xda\xa3\x5e\xc0\x0d\xe6\xf9\x89\x24\x4e\x89\x6f\xa7\xd3\xf3\x46\xc7\x0f\x0b\x1d\xea\xcd\x85\x4e\x2b\x89\xd5\x03\x3c\x2b\xcf\x24\x29\xb1\xd7\xae\xef\x11\xa4\x6c\xa0\x80\xcd\x0e\x88\x04\xd7\x85\xa2\x4f\x82\xf4\x00\x32\x2c\x08\xf4\xa5\x51\x9f\x70\x5d\x7f\xc9\x42\x97\xd9\xf0\xb9\x43\x93\x9c\xb7\x14\x07\xb7\x54\x11\x03\x9b\x80\x2d\xb8\x6c\x26\x13\x40\x92\x12\xd6\x69\x5c\x9f\x03\x5c\x6a\x93\x01\xaf\x97\x8d\xd7\x73\xad\xfc\x78\x60\x1c\x78\xa3\x40\x9a\xd0\x0a\xce\x58\x5a\x12\xd7\x7c\xf1\x94\xb6\xa0\xed\xd4\xa8\x1a\xca\x01\x49\x5d\x03\x7d\x0f\x0e\x1e\xb5\x6c\xab\x47\x58\x28\x3a\x07\x94\x56\x90\x5d\x29\x47\x06\xee\x6c\x9c\x11\xe1\x1a\xd7\x62\x35\x42\x6d\xb3\x8d\x59\x84\x8b\xc9\xca\x89\x25\x69\xcf\xf8\x19\x27\xb1\x20\x1c\xf9\xcb\xac\x1b\xe3\xfb\xe7\x5b\xd1\xf3\xde\x7c\x03\x3d\x4f\x88\x68\x9a\x4c\x6d\x93\x8e\xf7\xe0\x86\xfb\x86\xf9\x7e\xe4\xc1\x16\x2c\xd4\x60\xb1\x68\xbc\x36\x13\xcb\x53\xbb\x7d\x14\x01\xe1\x6a\x79\xdc\xd8\x90\x00\xf2\x62\xe3\xe8\x1a\x5c\xc6\x7f\xd5\x44\xcb\xf8\x70\xd4\xc4\x8b\x7e\xc9\xf3\xf7\x6c\x49\x9b\x10\xf1\xef\x68\x01\x09\x5e\x1e\x2b\x15\x69\x84\x24\x4d\xb0\x67\x4f\x42\x12\xe4\x69\x84\x26\xd8\x10\x40\xa1\x3c\x27\x90\x24\x10\xba\xd9\x78\x1e\x9f\x3f\x05\xfb\x40\x4b\x77\x97\x36\x6e\x0c\xc8\x77\xdf\x8a\x58\x1a\xf1\xee\x97\x26\xa4\x8d\x0e\x29\xe3\x98\x5c\xaf\x18\x70\x62\xbd\x70\x37\x4d\x24\x9b\xfe\x18\xe1\x6d\xcc\xf2\x2b\x25\x0c\xb2\xe9\x1d\x36\x6f\x1d\xc0\x9e\xd1\x46\x0f\x9c\xcd\xe3\x83\x6b\x85\x74\x19\x81\x9a\xd5\xb0\x1d\xae\xf8\x2a\xf6\x7d\x09\xfc\xba\xc3\xd5\x94\xc1\x39\x3b\x2c\x94\xd5\x11\x4d\xb9\x73\x9c\x92\xbe\xba\xe6\x9e\xa4\x12\x2c\xe6\x62\x66\x97\x88\x94\x9b\x0d\xf3\xd7\x83\xc8\xa1\x96\x72\xf7\x7a\xcd\xaf\x38\xea\x47\xcd\x17\x1b\xce\x7d\xa4\x23\x84\x2d\x41\x19\xbe\x81\x8a\x8b\x74\x10\xd8\x5d\x9a\xbe\x01\x33\xf1\x09\x2d\xd2\x9b\xcd\x26\xfa\xe3\xce\xea\xc0\xa9\x0c\xdf\xe3\xb3\x78\x12\xbf\xb5\x12\x23\x84\xaf\xb9\xfd\x89\x92\x40\xa2\xd9\xeb\x1d\x34\xdf\xcc\x4c\x4e\x9a\x94\x30\xf3\xc5\x18\x42\x24\x82\x20\x33\xf8\x30\x38\xb2\x62\xcd\x89\x15\x52\xc1\x2a\x04\xed\x1a\x2f\x98\x31\xc3\xde\x6c\x36\xf6\x17\xd7\x3c\xe6\x46\x00\x59\xa1\xce\x76\x10\x23\xb0\x60\x6d\xd2\x2a\x95\x36\x81\xf0\x52\x00\xa7\x89\x2b\xac\xef\x40\x03\xde\x9e\x9e\x7a\xa1\x9a\x60\xba\x37\x70\xc0\x16\xbd\x5e\xe1\xa4\xb1\x4f\xd4\x64\x55\xb4\xc0\x26\x07\xe6\xe4\xd6\x54\x98\x4c\x4d\x65\x33\xdc\x6c\xb0\x84\x85\x92\x49\x33\x6a\x7d\x99\x9f\xb1\x60\xda\x58\x73\x2e\x9c\x21\xf3\xa9\x5a\xb0\xb9\x8c\x91\x29\x38\x1d\x35\x72\xe1\x30\x43\xed\xd7\x0c\x06\x15\xde\x26\xef\xf7\x59\xb8\xc7\x71\x00\x59\x84\x05\x87\x4d\xda\x4c\x3c\xf3\x8f\x19\x1c\x00\x34\x6b\x9d\x2e\x16\xec\x70\xb5\xd9\x68\x8f\x44\x06\x40\x75\x8c\x37\x0f\x87\x7c\x12\x9c\x28\xd7\x1c\x22\x3f\xf4\x7a\xc2\x8c\x4c\xfd\xa2\xff\x5c\xa7\x45\x15\x53\x08\xf8\x68\x03\x99\xb9\x0a\x5e\x6d\xed\xd4\x76\x6c\x15\xf0\xab\x60\xb0\x1f\x27\x47\xb1\x6a\x22\x02\x61\x4f\x75\x4b\xb3\x70\x34\xe6\x8a\x4b\x3f\x7c\x9b\x50\xd4\xad\xc7\x00\xed\xf5\x62\xe3\x89\xa2\xdd\x1c\xb9\xad\x11\x9a\xf2\x19\x09\xf2\x2b\x5c\x8d\x07\x11\xdf\x9e\x5b\x74\xe8\x80\xee\x46\x81\xf0\xbe\x68\x75\x86\xe1\xbb\xe5\xee\x7c\x22\x15\xa9\xe1\x7b\xde\x45\x48\xcb\x1b\x4c\xc4\x32\xd1\x44\x2c\x93\x13\xcb\x52\x99\x48\xb0\xb6\x4e\x3c\x0f\xb8\x2f\xd8\x0e\xb3\x88\x2d\xbd\x39\x77\xd3\x72\x27\x61\xe4\xf6\x5c\x35\xbe\x27\xc5\xe4\x2d\x0d\x42\xe6\xd2\xd5\x63\xbe\xba\xd1\xb6\x05\x1c\x25\x1c\x35\x32\x47\x7d\x5f\x6b\xe5\x2c\xb0\xac\x32\x75\xb8\x1d\x55\xd5\xed\xc8\xae\xa9\x1f\xd2\x55\xbb\x9c\xc2\x19\x49\xa7\x85\x21\xce\x74\x79\xb8\xa5\x32\x73\x2a\xf0\x24\x1b\x4a\xae\x2f\x28\x6d\xf8\x5a\x23\xdc\x20\x8e\xb9\xa2\x3e\x32\x14\xaf\x49\x6e\x5d\x1f\xff\x43\xaf\x6e\xfc\x21\xef\xa3\x3f\x1c\x22\x4d\xd3\x4a\xac\xd5\x83\xe3\xf5\x74\x3c\x43\xe8\x62\x30\xee\xf5\xe2\x6b\x1e\x57\x68\x9a\xcf\x48\x36\xcd\x67\x58\x9b\x3f\x76\xd5\x6f\x45\xe7\xb9\xc0\x3c\x6e\x96\x9f\x79\x90\x2b\x0c\xce\x36\xd1\x7f\xfa\xa4\x4c\xe4\xb9\x15\x23\x18\xe6\x31\xd8\xb8\x67\x0b\xe2\xd3\x89\xff\x62\xfb\x9c\x02\xdf\x11\x65\x4c\x9b\x99\xb8\xb5\xba\xe5\xc3\x8c\xaf\x18\x30\xfd\x62\x9d\x89\x70\xb7\x56\x31\x42\xe6\x33\x39\x18\x35\x0b\xa0\x05\x22\xbc\xa5\x0b\x56\xf5\xfb\xe8\x19\x73\x55\x4f\x2b\xab\x40\x69\xfa\x88\x5b\x1f\x41\x4b\xca\x78\xc1\x06\x40\x50\xd5\xdb\xaa\xed\xd1\xbc\x1d\xbd\xc4\x7d\x33\x51\x4c\xc4\x79\xe1\x45\xce\xd3\xbf\xc9\x9c\xc6\x5e\x6a\xbf\xc4\x85\xf5\x6b\x80\x70\xa1\xae\x00\xc8\x60\x71\x88\x12\xd2\xd4\x47\x67\xa6\x2e\xcf\x89\xfb\x8e\x6e\x53\x72\x30\xb6\x2c\xb2\x74\xb3\x89\x5d\x4c\xa8\x91\x8e\x16\xcf\xd4\xba\x78\x18\xc4\x8f\x21\xe5\xe4\x21\x2e\x25\x71\xa8\x0b\xd0\x91\x7e\xa0\xad\xb8\x1c\x08\x34\x18\x77\xfe\x65\xaf\x61\x13\xf8\x05\xff\xab\x51\xd2\x30\x49\x35\xe3\xf1\x95\xf1\xb0\xf4\x3d\x23\xaf\x87\xf4\xe3\x4a\x50\x8d\x00\xcc\xd3\x75\x21\x49\xcb\xac\x36\xf8\x38\x69\x27\xc4\xea\xde\xd6\x40\x0a\xc6\x05\xe4\x60\x5c\xe3\x1f\x74\xbd\x95\xe4\xab\x37\x82\xaf\xd2\x2b\x7d\x85\x84\x15\xb7\xbe\x4e\xb6\x52\xa0\xea\x2c\x2d\x33\x5a\x7c\xbf\xbe\xbc\x2c\x40\x86\xdc\x70\x69\xfe\xe6\xfb\x7f\xb0\x1c\xf1\x5c\xf7\xea\x8d\xee\x23\xcd\x27\xdb\x49\xc9\x88\x90\xa0\xcb\xa0\x30\xf8\xcf\xa6\xcb\x41\x3f\xbf\x57\xad\xe0\x1f\x40\x75\xdf\x0b\x88\xc0\x82\xb0\x49\x32\x15\x57\x14\x44\x33\x95\xc8\x8c\xf7\x20\x2f\xd0\x41\x40\x15\x7c\x5e\xb0\x6c\xb1\x4d\x15\x8c\x7b\x74\x78\xb9\x96\x92\x97\x13\x49\xc6\xc9\x91\xff\x7a\x9c\xdc\x73\xaf\x40\x40\x1c\x21\x84\xaf\x01\xc1\x93\xa2\xf8\x0b\xbd\xe9\xf5\xc6\x96\xb6\x38\x56\xa4\x84\x6a\xeb\x4f\x6a\x40\xc1\xa4\x7b\xfa\xcd\x69\x9e\x03\xce\xf7\x82\x55\x52\x5d\xe8\x68\x3b\x09\x28\xfe\x03\x2f\xd6\xab\x0d\xd4\x0e\xb9\x50\xf0\x16\x47\xbc\x8c\xfa\xe0\x19\xdc\x33\xd5\xa3\xc3\x8f\x5a\x60\x0d\x61\xc6\xbd\x37\x75\xd5\x9d\xc5\xe5\x54\xce\x36\x1b\xf8\xe3\x09\x0a\x80\x25\xfb\xb3\xba\x33\x9a\xd9\xfe\xcb\x96\x1f\x24\x57\x95\x9a\x04\xf7\x32\x95\x8e\x6b\x21\x26\x10\x90\xdc\x20\x45\xa3\x89\x75\x48\x85\x92\x9f\x59\x52\x6e\x36\x3f\x33\x98\xa4\xbf\xc2\x24\xcd\xe7\xbb\x67\x49\xb3\x3b\xdb\x13\xb5\x23\x75\xc7\x5c\xe9\x58\x60\x76\xae\xbc\xb7\xd6\x5c\x75\x9b\xab\xd2\x0c\xf3\x40\x9f\x0a\x67\xcc\x77\xb0\x04\x41\x6f\x40\x6d\x97\x08\x74\xeb\x2c\x24\x19\x1e\x3b\x06\x3c\xfe\xb3\x1a\x4c\xc5\xae\xca\xb4\xd8\x19\x3c\xce\xd6\xaf\xc3\x1f\x5a\xb1\xab\xc7\x8d\x79\x24\x44\x7a\xe3\xdd\xbb\x30\x65\xfa\xd2\x75\xbc\x53\x7c\x84\x76\x85\xe4\x11\x53\x36\x33\xfc\x56\xed\x02\x0c\xd5\xf8\xef\xcc\x78\x5a\xb0\xeb\xf8\xdf\xd8\xae\xee\x8c\xc3\xee\xe8\x35\xc6\xec\x5b\x7b\xd3\xf9\x97\x9c\x94\xe4\x5f\x72\x98\x2b\xfa\x85\xe6\x8f\xd3\xa2\xb8\x4c\xb3\x4f\x55\xf2\x77\x36\x29\xc9\xdf\x59\x12\xab\xa7\x22\x9b\x2b\x2a\x15\x72\xca\xd7\x32\xa6\x1c\x8f\x3c\x3b\x7d\xad\xa2\x2c\xfc\x58\x38\x86\xbf\x95\xc6\x62\xca\x67\x28\xf4\xbe\xb2\x8b\xeb\x4c\xfd\xe1\xb3\xe0\x4c\xa7\xdc\x09\xcd\xff\xce\x3a\x6e\x5a\xf6\x87\x1f\xa4\x53\x39\xf3\xfd\xb8\x4b\x1e\xea\xb8\x6c\x99\x18\xea\xbd\x7f\x0b\xae\xee\x25\x0e\x4f\xe8\x2d\x75\xcc\xf6\x81\xa8\x8e\xd5\x1a\x61\x40\xb8\x85\x42\x96\xc1\x9a\x10\x22\x4a\xfd\x8d\xc5\x12\xf0\xe7\x8c\xe7\x74\x09\xee\x79\x9f\x43\x8c\x76\xcf\xbb\x32\xf7\x4f\xb7\xdd\x1b\x73\x98\x81\xb9\xcb\xa3\x4c\xb2\x6b\x26\x6f\x74\x54\x3d\x8f\x39\x6b\xd4\x85\xc2\x5c\x3f\xf8\x67\xc7\x5d\x19\xd4\xe9\xb1\xcb\xcc\xd0\x84\x1e\x16\xa0\x4e\x8f\x14\x49\x00\x2b\x0a\x6f\x4d\xff\x4b\x1e\xd0\xb2\x1a\x2a\x91\x3b\x39\x9a\x8c\x8c\xdb\x0b\xd1\x42\x64\xeb\x74\x45\xb7\x7f\x62\x4e\xa9\x09\xd5\x38\xc8\xda\x3a\x63\xd0\xed\x5f\xfd\xbc\x3a\xfe\x00\x27\xc7\x23\x9c\x72\xf2\x7a\xf8\x26\xad\x2a\x72\x2b\xf9\x3b\x1d\xce\x60\x4b\xb8\xe1\xb9\x4b\x86\xbc\x51\x5d\xe3\x8a\x93\x5b\x2d\xfc\x4e\xd4\x1d\x5c\x70\x72\x6b\x2d\xff\xfe\xb8\xe4\xeb\x8a\x46\x35\x5e\x7b\x89\x7d\x75\x8c\x45\xde\xa5\x96\x71\x0b\x21\x2c\xd7\x2e\x43\x32\xee\xef\xbf\x56\xc4\x21\x74\x0b\xaa\x4c\x76\x47\x99\x82\x8d\xf1\xac\xb7\xdb\x24\xa6\xc6\x9b\xf5\x42\x8d\x2e\xe3\xeb\x52\x3e\xe6\xc5\x7a\xd9\xbe\x9e\x74\xb4\x3a\x77\x2b\xaa\x15\xd4\x94\x09\x4d\x85\x42\xaa\xa7\xff\xf8\x50\x7d\x58\x8f\x46\xe9\x68\x06\x28\x35\x7c\xb4\x7e\x82\x9a\xcd\x0c\x4e\xba\x53\xc2\x36\x9b\x91\x0d\x4a\x52\x11\xaa\x35\x09\x5f\xcf\xe3\xe8\x83\x8c\x8c\x92\x7e\x75\x3e\xda\x6c\xaa\x8b\x26\xd4\x73\xda\x8f\xe5\x80\xa3\x4e\xda\x27\xd5\x80\xe3\xb4\x4f\xc4\x20\xfd\x4e\x60\x4e\xaa\xfe\xb8\xae\xf1\x5c\x0d\x60\xce\xca\x7c\x67\xff\xdb\x94\x8f\x6b\x9e\xb7\x9b\x2f\x11\x84\xc6\xe6\xc0\x55\xa1\x41\x38\x93\x94\xf0\x81\x56\x30\x21\xa4\x89\x04\xcf\xfa\xa9\xd7\xcd\xb2\xef\xc8\xcf\x14\xcb\x81\x8e\x91\xc7\xfa\xaa\x24\x2e\x09\xef\x8f\xb1\x7a\x13\x03\xf6\x9d\x40\x17\x41\x20\x6b\xbc\xe2\x64\x1a\x45\xde\xf5\xba\xe4\x8e\xe7\xb5\xe2\xce\x59\x00\x3d\x43\x2b\xe3\x48\xea\x9a\xc7\x2b\x8e\xfa\x20\xd4\x33\x15\xad\xf8\x94\x7a\xa2\x0e\x60\x8e\x39\x7c\x68\xda\x18\x33\xcd\x00\xb2\xaf\x78\x1b\xf7\x03\x45\xfd\xd8\x47\xa9\x2e\xf9\x2e\x01\x7e\x40\xc5\x82\x6a\xae\x98\x79\x81\xb9\x2d\x7b\x75\xe0\x31\x1b\x6f\xb6\x2a\x9a\xce\xda\x1e\x77\xca\x7e\x1f\x89\x69\x39\x23\x5a\xb1\x17\x97\xbb\x02\x30\x7e\x54\xfb\xc1\x93\xad\x71\xef\xf6\xb2\xd9\x5f\x5f\xfe\x4a\x33\xeb\x37\x72\x22\x48\xf0\x1e\x53\x94\xc4\x1f\xbd\x3d\x44\x28\x16\x20\xd0\xfe\xc8\xc1\x58\xee\x29\x87\x70\x2a\x3e\x03\xf2\x29\xdf\x82\x24\x90\x6c\x01\x89\x7e\x5b\x23\x4c\xd1\xc1\x96\xc8\xb4\x44\xc6\xc0\x51\x68\x2d\xc1\xad\x8f\x70\xe8\x91\x20\xf6\xb8\x87\xa0\x7e\xf1\x8e\xf0\x6f\xba\x75\xc7\xae\x96\xfd\x62\x57\xcd\x29\x46\x75\xbd\x9a\xec\x59\x7e\xc6\x4b\x30\x7c\x25\x23\xec\x25\x3d\x2d\x73\x42\x87\xd7\x0a\x31\xb7\xde\x87\x12\xb5\x4b\x5a\x95\x48\x71\xe3\xc3\x51\x06\x44\xb7\x44\xb7\xb5\xd1\xb4\x79\xcd\xc9\xe1\x54\x1d\x15\xf9\xfc\xc3\x7a\x74\xff\xe1\x89\x7a\x9e\x8e\x06\xea\xcf\xfc\xde\x87\xf5\xe8\xc1\x08\x5e\x1e\xcc\xe7\x1f\xd6\xc7\xa3\x7b\xea\xe5\x78\x74\x0a\x2f\xa9\x7e\x81\x2f\xf7\x20\xdb\xbd\xfc\xf2\xfe\x87\xf5\x3d\x0a\x2f\xa7\xf3\x2c\xfb\xb0\x4e\x33\x78\xc9\x4f\xd2\xf9\xec\x10\xbf\x53\xc7\x02\xab\x7e\xe2\x22\x7f\xbc\xf0\x43\x6b\xb9\x6d\x71\xf8\xe1\xb3\x73\xd0\xbf\xd9\xd0\x8b\xe8\x7f\xfc\xf7\x08\x68\x74\xc9\x7f\x5c\xad\xa8\x78\x9c\x56\x34\x46\x5a\xab\xe7\x05\xff\x6c\x13\x36\x9b\xd7\xdc\xf9\xf5\xf7\xb6\xcb\x7b\xde\x62\xc1\x1e\x1c\xc4\x72\x58\xf1\xb5\xc8\xfc\x93\xe6\xc3\xe7\x48\x73\x19\xde\xa9\x35\x86\xab\xdc\x54\x96\x40\x8a\x27\xab\xe2\x81\xa8\x46\x01\x1d\xb8\x1b\xda\x02\x36\x89\x7a\x3d\x85\xa0\x34\x6a\xdd\x4e\xaf\x57\x95\x7c\xc4\xf1\x1b\x33\xf7\xc7\x7a\x8a\x8f\x1f\xa8\x25\xb8\xf7\xf0\x78\x00\x7f\x4e\x61\x25\xc6\xb0\x12\x97\x39\x3c\x61\x89\xb2\x31\x3c\x8f\xe0\x79\x0f\x9e\xf7\xe1\xa9\x96\xee\xc1\x58\xaf\xd6\x38\x55\xcf\x7b\x97\xf0\x72\x9f\xaa\xe7\xc9\x48\x3d\xf3\x07\x90\x94\x67\xf0\xa4\xf0\x42\x61\x9d\x29\x94\xa7\x0f\xe1\x99\xea\x0f\xaa\xd9\x93\xb1\x6a\xf0\xe4\x18\x2a\x3e\xb9\xa7\x2a\x3e\x49\xa1\x96\x93\x4b\x55\xe5\x09\x85\x56\x4e\xe6\xc7\x1f\xd6\xa3\x87\x63\xf8\xf2\x70\x7c\x0a\x4f\xf8\xf2\xf0\x08\xbe\x1c\xdd\xd7\x2f\x27\xf0\x3c\xd5\x2f\xaa\x81\x53\x3d\xfc\xd3\x91\x1a\xd2\xe9\xb1\xea\xd9\xe9\x3d\x18\xf7\xe9\xbd\x87\xf0\x84\x5c\xf7\x75\xd2\x7d\x35\xd8\xd3\x07\x90\xf7\x81\xaa\xf8\xf4\xa1\xea\xdf\xe9\x25\x94\xbb\x54\x43\x3d\xcd\x74\x56\x98\x9d\xd3\x0c\x4a\xe7\xaa\xd9\x53\x0a\xc5\xa8\x2a\x96\x8e\xc6\xf0\x54\x29\x29\x34\x9a\xde\x83\x94\x7b\x90\x72\xef\x04\x9e\x0f\xe1\x09\xc3\x48\xa1\x1b\xe9\x7d\xc8\x04\x93\x99\x9e\xe8\xdf\xaa\x47\x29\xf4\x22\x7d\x08\x85\xa1\x2f\xa9\xee\x45\x0a\xab\x93\xc2\xea\xa4\x19\xd4\x07\x3d\x4a\xa1\x2f\x29\xf4\xe5\x12\xfa\x72\x09\xbd\xb8\x3c\xa6\xf0\x54\x6b\x7d\xa9\xa7\xe1\xf2\xde\x3d\x78\xaa\x62\x97\xf7\x1f\xc0\x53\x55\x77\x09\xb3\x70\x09\xb3\x70\x09\x2d\x5f\xc2\xf8\x2f\xb3\x11\x3c\x21\x3f\x0c\x3c\x3b\x86\x95\xce\xee\x8d\xe0\xf9\x40\xbf\x3c\x84\x67\xaa\x5f\x54\xe6\x0c\x26\x37\x83\x26\x32\xa8\x3c\x83\xca\x33\x18\x50\x06\xf0\x97\x01\xe4\x65\x19\xe4\xc9\x20\x1d\x1a\xca\x72\x28\x9b\x43\x3a\x8c\x2d\x83\xb1\xe5\x30\x9e\x5c\x8f\x24\x87\x91\xe4\xd0\x58\x0e\x63\xc8\xa1\x99\x1c\x9a\xc9\xb3\x14\x9e\xaa\x99\x3c\x3f\x82\x02\x39\x14\x80\x5a\x73\x38\xa2\xe8\xf1\x18\x9e\xf7\x06\xf0\x47\x95\xa0\xf7\x4e\xe0\xe5\x9e\x6a\x89\x5e\xc2\xf7\x4b\xfd\xfd\xf2\x14\x9e\x97\xf0\x54\x9d\xa5\xd9\x43\xf8\x00\x7d\x9e\x8f\x1f\xc2\x53\x65\x9a\x1f\xdf\x87\xe7\x09\x3c\x21\xe5\x04\xfa\x3c\x3f\x51\xd5\xce\x1f\x02\x90\xce\x1f\xde\x83\xe7\x03\x78\x42\x5e\x7d\x58\xce\x4f\xf5\x0b\xc0\xf5\x1c\x9a\x9a\xab\x39\x1a\x8f\x8e\xf2\x81\xfa\x73\x3c\x82\xe7\x91\x7e\x39\x81\xe7\x29\x3c\x53\x78\xe6\xf0\xa4\xea\x79\xff\x21\x3c\xe1\xeb\x7d\x0a\x05\x1e\x40\x69\xe8\xd0\x78\x74\x72\x4f\x3d\xd5\x82\x8f\x47\x0f\xef\xc3\x13\x5a\x7a\x08\x75\x9c\xaa\xe7\xf1\xfd\xf9\x87\xf5\xf8\x64\x0c\xcd\x9d\x8c\x55\x81\x13\xdd\xf6\xc9\x31\xbc\xdc\x3f\x82\xe7\xb1\x7a\x9e\xc0\xef\x13\xf8\x7d\x79\x02\x99\xd4\x81\x33\x3e\x81\x01\x9c\x64\xa7\x90\x94\xc3\xf7\x5c\x7d\x78\x38\x52\x3b\x62\xfc\x70\x04\x2f\xa9\xea\xe8\xe9\x91\x9a\x86\xf1\xe9\xd1\x11\x3c\x4f\xe0\xa9\xc6\x71\x7a\x0c\x29\xc7\x50\xc9\xe9\xf1\xe5\x87\xf5\x38\x1d\x9f\xc0\x53\x7d\x4e\x15\xb0\x8d\xd3\xfb\x6a\x55\xc6\xa9\x3a\xa9\xc6\x29\x0c\x36\x55\x80\x31\x4e\x1f\xdc\x87\x0f\x0f\x32\xf5\x3c\x39\x86\x97\x13\xfd\xa2\x46\x78\x09\x67\xc7\xf8\x72\xa4\x3a\x77\x09\x43\xbb\x3c\x7e\x00\x49\x30\xaf\xb0\xa7\xc6\x97\x6a\x4f\x8f\x2f\x1f\x40\xaf\x2f\x61\xa0\x97\x0f\x47\xf0\x1c\xab\x67\x0a\x33\x73\x99\xde\x87\xe7\x43\x78\xaa\x41\x65\x47\x99\xfa\x90\x1d\x1f\xc3\xf3\x01\x3c\x55\xdf\xb3\x1c\x9a\xcd\xf2\x23\x78\xde\x83\x17\x3a\x82\xe7\x91\x7e\x79\x08\x4f\x35\x41\x79\x06\x99\x73\xaa\xca\xe7\x73\x00\x87\x5c\x5d\x9a\x47\xa3\x51\x06\xcf\x5c\x3d\xa1\xca\xa3\xd1\x7c\xf4\x61\x7d\x94\xd1\xb9\x7a\xc9\xe6\xe3\x0f\xeb\xa3\x9c\xc2\x97\x5c\xdf\xc0\x47\x29\x5c\xba\x47\xf0\x72\x7a\x0a\xcf\xf4\xc3\x3a\x7d\xf0\x40\x15\x49\x1f\xa8\xc5\x4c\x1f\xa8\x29\x4a\x1f\x9c\xe4\xea\xa9\x6a\x4c\x1f\xa8\xaa\xd2\x87\xea\xb8\x4b\x1f\x8e\x1e\xc0\xf3\x52\x3d\x8f\xee\xc3\x13\x52\xd4\x81\x99\x3e\x84\xe6\xd2\x87\x50\xe0\xf4\x48\x4d\x66\x7a\xaa\x0e\xea\xf4\x14\xf6\x59\x7a\x7a\x1f\xbe\xc0\x86\x48\x4f\x15\x18\xa6\xa7\x97\xc7\xf0\xd4\x99\xd5\xa6\x4b\xe1\x40\x4e\x53\x38\xe8\xd3\xf4\x88\xaa\xa7\xda\xba\x69\xaa\x00\x22\x4d\xd5\x76\x4b\x53\x35\xa7\x69\x7a\xef\x18\x9e\x50\x40\xdd\x29\x69\x7a\x79\x04\xc5\x2e\xef\xc1\xf3\x04\x9e\x0f\xe1\x09\x15\xa9\x93\x28\x4d\xd5\x4d\x98\x5e\xd2\xfb\xf0\x7c\x08\xcf\xfc\xc3\x3a\x37\x08\xc7\x5c\xcd\xd7\xfc\x72\x4c\x3f\xac\xe7\x1a\x21\x99\xd3\x91\x4a\xa2\x47\xfa\x45\x8d\x79\x3e\x3f\xa5\xf0\x9c\xcf\x0e\x1b\xa4\xe1\x71\x80\xa6\x83\x70\x57\x11\x92\x20\xe0\xbd\x20\x27\x0f\x1e\xf6\x7a\x6f\x1c\xb6\xe1\x89\xef\x79\x5b\x56\xb6\xc7\x61\xba\xf6\x51\x25\x20\xbc\x6f\x13\x76\x44\x80\x9d\x50\x6c\xc2\x42\x0d\xb3\xaa\x7a\x4f\xbf\x48\x52\xa2\x6d\x57\x49\x12\xb1\xbb\x1c\xb3\xbb\xa8\x04\x12\x79\xfc\x76\x14\x72\x71\x64\x10\xd1\x38\xa8\x4e\x82\x3d\xf3\xb6\x48\xe5\x6d\x88\xfb\x58\x8d\x1b\xd5\x94\x93\x23\xc8\x8b\xd1\xd9\x60\x20\x1d\x03\x50\xd7\x68\x64\x7f\xf0\x82\x76\x04\xea\xfe\x35\x44\xd3\xa0\xa1\xb0\x4b\xa8\x7e\xc4\xdb\xf3\x09\x2e\x73\x26\xfb\x8c\xd2\x76\x65\x6e\xd4\x90\xc0\x55\xfd\xd3\x32\x8f\xcb\xcd\x86\x6a\xb7\x78\x15\x95\x80\x68\xeb\x28\xe1\xac\xde\xe3\x8c\x27\x88\xa1\xeb\xcd\xb8\x6d\x40\xa1\xdc\xe5\x50\x8d\xfd\x3d\x37\x2b\xae\x3e\xc7\x7e\xe8\x59\x8b\x89\xff\x89\x37\xac\x79\x67\x94\xde\x78\x17\x3c\x18\x41\x98\x23\x7e\x4d\x55\x4f\x23\x05\x88\x69\x26\xc1\x9d\xbe\xfd\xa0\x7b\xec\x7f\x92\x08\x97\x9a\x8b\xf0\x44\x73\x11\x4a\x99\xb2\xb2\x6a\x31\x25\xd8\x3c\x3e\xf6\xed\xb2\x80\x49\x20\xfd\x2e\x1a\x1f\xfc\xaa\x6c\x13\x9d\xd3\xa6\xc4\x12\x75\x72\x0e\xde\x7f\xc7\x3b\xaa\x59\xf0\x4a\x22\x2c\x09\xa1\x8d\xdb\x4d\xad\x50\xd5\x6a\xc4\x43\xd5\x5f\xf1\xc0\x00\xdc\x4d\x73\x9a\x49\x76\x6d\xf7\xce\x19\xd8\xfd\x08\xce\xa5\xfd\xdb\xfa\x8e\x28\xd9\x95\xbe\x03\xe6\x9e\xfb\xbb\x3c\x88\x74\xfa\x8f\xcd\x87\x0f\x15\x8a\xfa\xd4\x84\x39\x55\x6f\x1f\x3e\x54\x7f\x8c\x50\x0d\x11\x3c\xc6\xe3\x5e\x2f\x0e\x63\x92\xa9\x45\x37\x55\xed\xee\xf8\xf6\x82\x07\x70\x64\xe9\xb1\x17\x6a\xc9\xc4\x52\x47\x0b\xda\xc5\x9d\x0e\x42\x07\x91\xe7\x3c\x96\x48\x87\xda\x31\x31\x86\x1b\x6d\x30\xcd\xc9\x2f\x8d\x15\x69\xe9\x47\x83\xa5\xfe\xb1\xe3\xe4\xd9\xa5\xb3\x26\x65\x93\x72\x3a\x9e\xf5\x59\x12\x41\x4c\xee\x67\xaa\x53\x69\x9e\x7f\x53\xaf\x3a\xba\x4f\x70\x3a\x0a\xa4\xb9\x92\xf6\x5b\x9f\xc4\xc2\x59\xa5\x4a\x7f\xf1\xff\xb5\xc5\x8d\xa0\x9e\x8e\xf4\x2e\x77\x22\x62\x5a\xce\x7a\xbd\x83\xe7\x1c\x8c\x9e\x6c\x18\x5a\x60\x76\xd9\x00\xb4\xbb\xc9\xf8\x1f\xb9\xd1\x0c\x08\x37\xf2\x15\x95\x66\xa9\xaa\xef\x6f\x1e\xbb\xa8\x06\xcd\x69\xf7\x2d\xd9\x63\x8f\xe3\x18\x21\x7c\xb7\x75\xc5\xb0\xc9\xdb\x29\x7b\x3d\x1a\x97\x86\xc3\xf9\x3d\x27\xc6\x0a\xf8\x07\x8e\xff\xc6\xf1\x3f\x79\x2b\x50\xbb\x8e\x23\x13\x1a\x0c\x53\x62\x63\x61\xdb\x41\x47\xb9\x48\xaf\xae\xd2\xcb\x82\x46\x8a\x4a\xdd\x6c\x20\xe1\x89\xe0\x2b\x78\xaf\x63\x4f\x97\xfb\x27\x1e\x68\x8f\xfe\xc0\x2d\xa3\xc3\x0b\x0d\xf4\x7f\xff\xf7\xff\x3d\x42\x1d\x38\xaa\xbd\x88\x33\x12\xef\xbb\x7d\xa2\x2f\x11\x9a\x21\x84\x47\x07\xc4\x3f\xff\x83\xb0\xdb\xbd\x5e\xfc\x03\x27\xd2\x8f\x17\x7e\x4e\xc6\xa0\xb8\xe5\xe5\xba\x38\xea\xf5\x0e\xf4\xa8\x1f\x22\x54\x6b\x00\xf9\x81\x4f\xda\x9d\x4b\xbc\x84\xff\xf1\x7f\x98\x50\x7b\x91\x31\x37\x4e\xba\xac\x04\xb7\xeb\x97\x05\xcf\x3e\x9d\x75\x4d\xf4\xf1\xf1\xea\xcb\x59\xd7\x04\x34\x37\x51\xf8\x06\xe3\xd5\x97\xc8\x8b\x2a\xbc\x2f\xea\x52\x14\xb0\xa4\xfe\xc0\x83\x40\xed\x7f\xb3\x06\xdd\xdd\xbf\x71\x63\xd4\x04\x53\xb7\x77\xb6\x1e\xfd\x5f\xff\xe7\xa3\x08\x29\xa0\x79\xc4\x21\x04\xc4\x18\x29\x28\xfb\x9e\xaf\xc1\xa3\xc6\x63\x88\x88\xfe\x16\xf8\x38\x3a\x18\xf4\x66\xa3\x36\xc4\x5c\x12\x22\x86\xc2\x8b\x09\x6f\x00\xa2\xd4\xf5\x8c\xf1\xd1\xfe\x7a\x5c\x0f\x49\xa9\xab\x18\x98\xaa\xce\x8f\xb5\x74\x94\xe3\x9f\xd5\xe6\x6f\x6c\x31\xc8\xf1\x01\x89\x3e\x94\x1f\xca\x4b\x6b\xc4\x70\xf8\xa1\x3c\xb4\x82\x80\x89\xcf\xd0\x09\xf5\x59\x81\xbb\xe8\x38\x8b\xf2\x9c\x94\x67\x8d\xf2\x5f\xc3\x89\x29\xd5\x05\x06\x3c\x5f\x06\x4e\x80\x42\x9e\x2f\x77\xea\x37\xd2\x84\xaa\xa2\x56\xf7\x8e\x0d\xc6\x68\xc2\x06\xe3\x84\x41\xc8\x07\xaf\x4a\x11\xa9\x0a\x0f\x48\x3a\x89\x8d\x6c\x83\x7b\xee\x63\x11\x96\x7d\x92\xf6\xc7\x28\x71\x5f\xd5\xcd\xc5\xfa\x63\x4f\x19\x78\xa7\x7f\x0d\x37\x7e\xf1\xa1\x9c\x6c\xd4\x2c\xd4\xf8\x2f\x9c\x7c\x66\x65\xce\x3f\x0f\x7d\xd7\x49\x93\x36\x4b\xae\xa9\x22\x60\xf1\x1d\x90\x90\xc3\xb7\x75\x69\x1c\x8c\xeb\xb0\x2f\xaa\x32\xa7\x48\xfb\xb9\xa4\xc2\x86\x6b\x6b\xea\x09\xf1\x1f\xaf\x4a\x6b\x68\x1e\x1f\x48\xd0\xfd\x82\x5b\xd9\xe2\xa8\xe8\x80\x50\xd4\xeb\x8d\x0e\x88\x1c\x66\x7c\xa9\x3e\x3e\x2d\xf3\x37\x9c\x95\xb2\x8a\x23\xe8\xed\x7b\xfe\xb4\xcc\x23\x90\xe1\xfc\x95\x93\x88\x97\x19\x5f\xdd\x44\xac\x8c\xff\xc4\x9b\xb3\x48\xdd\x00\x7f\xe2\xad\x2d\x64\xb2\xe2\x48\xf7\xe0\x2c\x42\x38\xb2\xa3\x6a\xb0\xdc\x3f\xf1\xa1\xce\x88\xf0\x9f\x79\x13\x26\xfe\xef\x1c\xff\x37\x05\x93\x9f\xe8\x8d\x3a\x72\x2b\x72\x7b\x9c\x44\x4f\x4b\xc0\x7d\x1e\x26\xd1\xf7\x69\xf6\xa9\x5a\xa5\x19\x8d\xf0\x69\x12\xbd\x4f\x2f\x23\x3c\x6e\x32\x8c\x1f\x24\xd1\xbb\x05\x9b\xcb\x08\x8f\x4f\x92\xe8\xb1\x14\x45\x84\xc7\x0f\x93\xe8\x51\xa1\x92\x4e\x93\xe8\x4d\xba\xae\x68\x84\x8f\x46\x49\xf4\x38\x5d\x55\x2f\x78\xf6\x29\xc2\x47\x27\x49\xf4\xb4\xca\x22\x7c\x7c\x94\x44\xef\x74\xed\xc7\xc7\x2a\xf3\x15\xfd\x71\x15\xe1\xe3\x7b\xfa\xf7\x13\xfe\xb9\x8c\xf0\xf1\x7d\xd5\x5e\x1e\xe1\xe3\x07\x49\xf4\x03\x5f\xaa\xcc\x27\x49\xf4\x82\xaa\x66\x8f\x1f\x26\x11\x14\x39\x4d\xa2\xb7\x6a\xab\x45\xf8\xde\x28\x89\x74\xc9\x7b\xaa\x1e\xc1\x4a\xf9\x2e\x13\xea\xf5\x7e\x12\x3d\x07\x9b\xa2\x08\xdf\x7b\x90\x44\x4f\xb4\xcf\x77\x7c\xff\x34\x89\xce\x22\xfc\x60\x9c\x44\x24\xc2\xa7\xe3\x24\x7a\xc9\xf3\x08\x9f\x1e\xd9\x1f\xc7\xe6\xc7\x78\xf4\x20\x89\xfe\xa8\xfe\x9e\x40\xd6\xf1\xe8\x34\x89\x06\x11\x1e\x8f\x47\x49\x34\x54\x7f\xc7\x49\x74\x18\xe1\xb1\x1a\xa0\xad\x7d\x7c\x72\xac\x33\x3d\x7c\x00\xcd\x8c\x1f\x9a\xc2\x0f\x1f\x26\x11\x56\x7f\x4d\x25\xa7\xa6\x92\x53\x53\x89\x6a\xff\x97\x08\x1f\xa9\x69\x9c\x46\xf8\x48\xcd\xe1\x87\x0f\xea\xc7\x38\x89\x66\xea\xef\x51\x12\xfd\xaf\x11\x7e\x70\x7c\xa4\xe6\x51\xcd\x82\xfa\x79\x6c\x47\xaf\x5e\xee\xd9\x79\x52\x2f\xf7\xdd\x14\x3d\x38\x3e\x3a\x39\x6a\xba\xa8\x5e\x8f\xed\xdc\xaa\x17\x3b\xe3\xea\xf7\x83\x66\x5d\xd4\xeb\x89\xbf\x34\x0f\x8e\x8f\x47\x47\x6e\x52\x3d\x04\x84\xa6\xc1\xd6\x2e\xe8\x35\x2d\xbe\x3b\x9a\xd0\xa1\xe4\x89\xb6\x27\xf5\xe4\xcc\xfb\xf2\x82\x2e\x9c\x2a\xe2\xc9\x7d\xd3\x46\x68\x00\x7a\xef\x8d\x8a\x20\x4d\x63\x39\x1d\xcd\x50\xe2\x49\x4f\xcb\xfd\xd9\x65\x1a\x83\x02\x27\x4a\x02\xab\x63\x4f\xf2\x9a\xfa\x28\xd9\x53\xad\xe3\x94\x01\x3d\x40\xfe\x55\x2a\x04\xb1\x3c\x00\x1f\xc4\x92\xbc\x67\x71\x89\x6c\xb0\x95\x37\xea\x05\x73\xc2\x26\x4c\x23\x89\x7a\x38\x65\x1a\x97\x28\x11\xf0\x1c\x39\x41\x86\x3a\x79\xb9\x47\xf4\xf2\xa0\x51\xdd\x05\x13\xff\xa4\x6c\xfa\x20\x4c\x92\x69\x4c\xbb\x4b\xd9\x6c\x46\x84\x34\x4d\x86\x3e\xee\xc1\x19\x47\x69\xa2\x62\x18\xb1\xe6\x87\x77\x87\x48\x1d\xee\xba\x81\xc6\xc4\x47\x0e\xb3\xc5\x39\xe1\xfa\x87\xd7\x53\xfd\x1d\xa7\x93\x51\xc2\xbd\xc3\xbc\x51\x51\x48\x5b\x0a\x33\xae\x2f\x6e\xd6\x41\xbb\x5c\x1c\x90\xb2\xd7\x93\xe7\x5e\xd1\xca\x0c\xfb\xef\x3c\xd4\x52\x10\x5f\x0b\x5a\x01\xce\xa9\xc1\xaf\x83\xec\xf5\xc0\x8b\x43\x23\x75\x6c\x3e\x12\x22\xb5\x8f\x07\x42\xa4\x87\x53\x08\x27\x7e\x55\xcd\x33\xdd\x57\x0c\x5a\xab\x7a\x0a\x27\xa6\xfc\x01\xb8\x89\xe8\xf5\xe2\xbf\x73\xe0\x2b\xa0\x64\xc7\x87\x12\x61\x81\x3a\x82\x94\xf5\x8e\xb9\x29\xd2\xd0\xdb\x75\xe9\x6c\xf8\xfb\x42\x51\x7e\x60\x7c\x64\x48\xba\x8b\x51\xaf\xf7\x98\x1b\x23\x0d\x7b\x1f\x4b\x84\x76\x61\xdf\xeb\xb4\x4d\xa7\x6b\x30\xf7\x1d\xe8\x74\xb3\x26\x93\x27\xae\xae\x52\xed\xd3\x31\x25\x6c\xca\x67\xb8\x22\xa6\x8f\xa9\x03\xd9\x81\x48\x54\x19\x13\xa0\xaa\xba\x48\x8d\x75\x78\x75\x9e\x36\x51\xaf\xba\xe0\x5e\xa1\x22\x24\x35\x7e\x36\xe0\xa7\xf7\x59\x35\x53\x21\x42\xf8\xa4\x4a\xc4\xc5\x88\x90\x18\x5a\xec\x13\x31\x43\xae\x29\x55\xc2\xb8\xde\x83\xbe\x7b\x79\x02\x7d\xe3\x8a\x40\x15\x4d\x1f\xa1\xd3\xaa\x34\x1e\x8c\xd5\xc2\x98\x77\xd0\x9f\x55\x09\x7e\xf0\xbf\xad\xb9\x52\x93\xef\x62\xd8\x9d\xb1\x9d\x13\xcf\x10\x3a\x43\xac\xef\xbc\x2c\x75\xd9\xf9\x68\xb3\x61\x17\xc1\xa9\x31\x01\xa5\x64\x56\xfb\xde\xdf\x1a\xda\x7b\x74\x46\xcf\xc7\xa3\x33\xda\xef\xa3\xff\xc6\xa7\xb4\x7f\xef\xe1\x8c\xc0\x8f\xd3\x07\x33\xa2\x95\x2d\x62\xa3\xb1\x4f\xc9\x83\xfb\x67\xf4\x9c\x9c\x36\xd9\x6d\x16\x18\xd3\x63\xc3\x3c\x6b\xf2\x8f\x55\xf6\xf1\x51\x53\xfb\x78\x3c\x36\xd5\xc3\x99\x3f\x23\xd1\xb3\xa8\x4f\x6b\x14\xeb\x03\x2a\x4f\xc9\x96\x53\x0d\x90\x9b\xed\x95\x53\x8e\x4e\xf4\xcb\xc3\x34\x9b\x1d\x62\x49\x0e\xa7\x95\xfc\xfc\x6a\x76\x88\x05\x39\x9c\xbe\x78\x2b\x66\x87\xb8\x54\xbf\x2e\xc7\xe5\xec\x10\x33\x72\x38\x55\x3f\xbc\xb0\xe1\x41\xf4\x06\x58\x38\x1b\x1a\x07\x36\xa7\x71\x04\x20\x39\x11\x75\x5b\xc0\x9b\x1a\xa5\x73\x4d\x8f\xa6\x9e\x2f\x2c\xa7\xdb\x8b\x0b\x62\x55\xab\xf1\x5a\xe1\xc5\x19\x19\x9d\x65\xe7\xc5\x59\xbf\x9f\xa1\xb5\xd1\x25\x20\x71\x45\x52\x9f\xf5\x98\x21\x74\x4e\x8e\xee\x9d\x4c\xa2\x4b\xfb\x4f\x56\xf2\x73\x75\x19\xfc\xab\x2a\x35\xd4\x57\xdf\x7d\xf7\xdd\x2b\xf8\x87\x5f\xe1\x57\x63\xf7\x4f\xa7\xbd\x7a\xb1\xf7\xdf\xb7\x7c\x37\x0d\x5d\xee\xfd\x87\x55\xf3\xd0\xbe\xae\xef\xbb\xef\xc6\x63\xf8\x39\x7e\x71\x57\xf5\x77\x34\xab\xbf\x47\x16\xc2\x2b\x94\x8c\xef\x1d\xdd\x3b\x27\x95\xda\xda\x64\x7c\xff\xe8\xde\x24\x7a\x1b\x25\xe3\xfb\xc7\x0f\x5c\xe2\xc9\xc9\xf1\x24\x12\xde\x3f\x2c\x5e\xbd\x5a\xc2\x3f\xf1\xef\xfc\x5b\x06\xff\x4c\x62\xe9\xfe\x7d\x57\x96\x2a\xd3\xbf\x55\xf5\x7f\xac\x2b\xf0\x0f\x46\xd6\x4c\xd0\x40\x4d\x05\x4a\xc6\x27\x27\x6e\x96\x8e\x8e\x8e\x46\x93\x48\x44\xc9\xc3\xf1\xe9\x91\x4d\x7c\x78\x34\x3a\x9e\x44\x9f\xa3\xe4\xe1\xd1\xe8\x1e\x21\xd5\x24\xba\x8c\x92\xe8\x45\x84\x3a\x19\x69\xc2\x59\xe6\x24\x7a\x11\x39\x08\xbd\x8d\x96\x11\x21\xf1\x35\x59\x4f\xb3\x19\x9a\xa8\x27\xc9\x93\x9c\x5c\xd7\x7e\x99\x45\xab\xcc\xd8\x2b\xd3\xeb\x45\x8a\x74\x5b\xe8\xb2\x51\x19\x25\x42\x6f\x97\x6b\x1d\x83\xf1\x1a\xc3\x77\x08\xa1\x08\x39\xde\x42\x60\x7d\x2e\xe2\x8c\x8c\x71\x4e\xd6\xd3\xd1\x4c\x55\x3d\x18\x9b\xca\xfb\x61\xe5\xaa\xad\xdc\xfc\x5d\x4f\xb3\xfe\x78\x66\x5a\x1a\x47\x0a\x81\x3d\x20\xd7\x9b\x4d\x7e\x60\x3e\x6d\x36\xd1\x38\x3a\x80\xfc\xa5\xfa\xbb\xd9\xe8\x46\x73\x84\xd5\x98\x74\xab\xcd\xfe\x54\xbb\x3b\xc2\x5e\x7b\x48\x57\xfd\x2a\x72\x9c\xf6\xe8\x3b\xd5\xf9\xe6\x3c\x9d\x93\xac\x3f\x3e\x9b\x9f\x17\xbd\x1e\x7c\x5a\x4f\xe7\xb3\xb3\x7e\x7f\x8e\xce\x6c\x8e\x15\xc9\x7a\xbd\xe8\x40\x77\x77\xa0\xfa\xa4\x73\x8f\x4d\xee\x09\xf4\xfc\x55\x84\x97\x24\x3b\x5b\x9e\xcf\xcf\xfa\xfd\x25\x5a\x4f\x97\x33\xb2\xea\x64\x64\x3e\x18\xd7\xb6\x9f\xb8\x35\xef\xd7\x10\xaa\x5a\x75\xb1\x13\xbd\x50\x73\x6e\x6a\xbd\x36\x33\xf2\x62\x6b\xee\xd1\xd6\x90\xc1\x4a\x5e\x87\x5a\x87\x01\xc3\xc0\xbc\x41\xb9\x8f\xf3\x19\xd2\xe3\x02\x65\x26\x02\x0d\xc6\xd9\x44\x8f\x09\xc0\x0a\x5f\x9a\xd4\xf9\x79\x31\x51\x05\x34\xb0\xa9\x0a\x57\xe4\x6a\xb3\xb9\x9c\xa8\x1e\x45\x6f\xef\x18\x29\xb8\x4a\xc0\x1f\x41\xf3\xd9\xeb\x28\x28\xfe\x06\xbd\x54\x19\x3f\x93\x0c\x72\xf5\xfb\x99\xca\xd5\xeb\xf9\x59\x60\x70\x67\x1f\x1b\xd7\xce\x3c\x1e\xe1\xcf\x38\xf3\x2d\xd4\x9e\x92\x0c\x7f\x21\x1f\xad\x8b\xa0\xa0\xae\xe8\x45\x04\x40\x34\xd3\x15\xa9\x6f\x4b\xf2\xf4\x6c\x79\x9e\x41\x6f\x98\x6d\x6a\xa9\x7a\xf3\xf4\x7c\xd9\xeb\x7d\xb4\x0a\xc9\x5f\xf0\x08\xeb\x16\xc7\xf8\x29\x5e\x1a\x54\xfc\x35\x59\x9a\x16\x96\xaa\x16\xc0\x0f\x5d\x15\x30\x13\x67\x3b\x6a\x38\xc2\xaf\x55\x0d\xf8\x29\x59\x42\xbf\xfb\xfd\x65\xe7\xa9\x2a\xbd\xa7\x35\x35\x3e\x73\x6b\x8d\x09\xf9\xe8\x70\xde\x5e\x2f\xbe\x21\xa9\xb3\xcb\xf9\x50\xf5\xb5\xee\x20\xe4\x80\x7b\xef\xa6\xe1\x21\xe3\x8f\xc3\x75\xa9\xed\xe1\xec\xcc\x8d\xb0\xf7\x1d\x21\x84\xc7\x10\xd1\xf2\x23\xda\x55\xfd\x87\xaa\xaf\xad\x7d\x62\x9d\x45\xf2\x41\xab\xfa\x60\x55\x8a\x81\xff\xb1\x50\xb5\x1f\x85\x7d\x6f\xf7\x67\x8c\xe1\xab\xe4\xf6\x2f\x42\xb8\xc9\x7f\x10\xf6\x2c\x68\xad\xc9\x85\x0b\xd5\x14\xfe\x58\xd7\x0d\xab\xec\xf5\xf0\x9a\x8a\x8a\xf1\x92\x44\xf7\x87\xe3\xfb\xc3\xa3\x08\xbf\xae\x11\xc2\x3e\x53\x26\xe2\xa0\xde\xe6\xb9\xa2\xff\xb2\xe2\x42\x56\xbd\xde\xd6\x97\x25\xcf\xd7\x05\x9d\xd0\x58\xd0\x7f\xae\x99\xa0\x71\x34\x1c\x1e\x0e\x87\x87\x05\xbb\x3c\x6c\x94\x89\x23\x84\x92\x1d\x0c\x92\x9c\xce\x81\xfe\xd1\x7f\x87\xe9\x32\x9f\xe8\x9f\xf1\x74\x77\x35\x33\x4c\x51\x42\xe3\x86\xef\x8c\xea\x30\xf6\x46\xb4\xae\x68\xb7\x92\x82\x65\x32\x32\x4c\x4b\x8f\xa3\x3d\x28\x58\x29\x4d\x44\xe7\x2a\x6a\xf0\x25\x61\x34\x7e\x9d\x58\x07\xfc\x91\xb9\xb7\x50\x12\xe8\xeb\x14\xc7\x52\x6b\xb2\x6a\xfc\xbe\x71\x8a\xb6\x43\xd8\xd6\x0a\x39\xad\xf9\xdc\x0d\xe9\x1b\x4b\x43\xa6\xf8\xc2\x25\x47\xa1\xf3\x79\xc3\xed\xc7\x11\x68\xf9\x82\x56\x2f\x66\xa8\x53\x1a\x79\xab\xe4\x2b\x9f\xf4\x94\xc3\x0c\x18\xa5\x3f\x0f\xca\x80\x15\x3d\xb8\x8f\xfa\xd1\xea\x4b\x84\x6d\x39\xe0\xc0\xda\xdc\x7f\xef\xdf\x87\xaf\x9e\x2c\xcf\x09\x5a\xb6\x26\x52\x72\x5e\x48\xb6\x52\x55\xf9\xa2\x4e\x31\xcc\x0a\x5e\x52\x60\x0a\x1f\x8c\x10\xc2\xa1\xe0\xc1\xcf\x5a\x82\x43\x91\x72\xdf\xd8\xb0\x9a\x16\xe3\x05\xcb\x76\x97\xaf\xd2\x8c\xc9\x1b\x70\x54\x15\xa4\x90\x31\xc2\x65\xad\x56\xc4\x9b\xd7\xd4\x60\xdc\xb2\xa3\x27\x91\x99\x16\xf8\x5a\x46\x38\x85\x80\xf6\x71\x2c\x1b\xdf\x01\x7a\xf1\x9d\xd3\xc7\x56\x93\xda\x78\xbd\xd5\xec\xc8\xb7\x37\xf0\xc9\x11\x95\xbb\x46\xf8\xc1\x08\xa2\x64\x6a\x3f\xc4\xc6\x69\x79\x45\xe5\xf3\x52\x52\x71\x9d\x16\x41\x11\x36\x8f\x39\x6a\xc8\x18\x76\x76\x46\x49\x20\x76\x05\x83\x95\x5e\x6f\x3c\x26\x84\xfa\x32\x4b\x95\x4d\xcb\x2c\x29\x09\x05\x3d\x36\x54\xb2\xb6\x24\xbd\x4d\x63\xdf\x93\x93\x73\xda\xda\x05\x1d\x6f\xd7\xa7\x4a\x75\xfc\xde\x08\xc2\x64\xf1\xb2\x3d\x6b\x1e\xc7\x26\x20\x34\xb4\x3d\xab\x73\x5c\x60\x8c\xcf\x1d\xb5\xa1\xa7\xc8\x73\x2d\xb0\x48\xab\x3f\x81\x5b\x5a\x1b\x1a\x8a\x97\xe0\xf3\xf2\xf5\x35\xf5\x34\x2b\x65\x2b\xae\x6f\x63\x33\x67\xcd\xb1\xa4\x67\x8e\x05\xe3\x3c\xfc\x70\xb9\x6b\xd3\x0f\x8c\x62\xa6\xf0\x82\x7e\xdb\xe9\x69\xac\x23\xc5\x3e\x61\x03\xe6\x24\x66\xb0\x5d\xfa\xcc\xc8\x2b\x0e\x8f\x70\x4a\xc0\x73\xd8\xaa\xcf\x86\x97\x5c\x4a\xbe\x54\x89\x05\x08\x8c\x9c\x13\xce\x98\x0e\x33\xce\x45\x5e\x29\x62\x32\xbe\x55\x55\x24\x1c\x4b\xbe\x4a\xd2\x1a\x47\x7a\xe7\x45\x08\x05\xc4\x54\xc3\x7f\x31\x58\x50\x4e\x8a\x69\x36\x1b\x7e\xfc\x98\x96\x25\x97\x60\x39\xd7\xc9\x7b\x3d\x43\x6f\xe5\xa8\x5e\x3b\xfb\xfb\x7d\xae\xd2\x76\x4f\x19\xde\x52\x35\xb0\x3c\xf8\x67\x22\xbd\xd2\xcc\x74\xe3\xdc\x9f\xee\xf0\xea\x4f\xa7\x7c\xd6\x09\xf5\x2f\x2a\x45\x37\xd6\x10\xe4\x11\xab\x23\x7a\x0d\x51\x39\x4c\x58\x4f\x58\xe9\xcf\x29\x93\xac\xbc\x7a\xc6\x05\x19\x05\x81\x9c\x1b\x81\x2c\xc4\x67\x1e\xaa\xc5\xeb\x88\x06\x54\xc0\x1a\x4e\xc1\xaa\x7e\x8d\x65\x3b\x08\xa7\x35\xab\x0e\x02\x51\x99\xb4\x69\x39\xb3\xfe\x65\x3b\xad\x7c\x7e\x37\x52\xb0\xf3\x02\x2f\x50\x7a\x88\x77\x1e\xe2\xb8\x22\xa9\xbd\x5c\xd3\xbb\x8e\x4b\x7d\xef\x0c\xa2\xbe\xc0\x4c\x1d\x3b\x8a\x3e\xbe\x43\x09\x26\x6c\x05\xa1\x6f\xa8\x7a\xb9\x56\xe7\x71\x41\x23\x90\x59\x82\xd3\x40\x5e\xc6\x95\xdd\xbd\xd7\x54\xb4\x1c\x4b\x6b\xcd\x90\x4a\x3b\x51\xf6\x98\x83\xbe\xa9\x4f\x45\xaf\xa9\x60\xf2\xa6\xa3\x75\xd3\x23\xaa\x2f\x74\xe3\x8f\xf2\xee\xfb\xcd\x49\x20\xef\xea\x3b\xad\xaa\xf4\x8a\x0e\xc0\x58\xee\x9b\xb4\x82\xe8\xd0\x94\x41\x81\xfc\xb2\xf0\x9d\x91\x36\xd0\x63\xcf\x21\x5c\x12\x61\x7f\x6f\x36\x02\x9b\x9d\xfe\xc8\xed\xa6\x4a\x6d\x8b\x2b\x75\x4f\x16\x2b\xf0\x08\xfb\x86\x57\x0a\x2d\x44\x38\x52\xf5\x44\xa8\xa3\x96\x4d\x0c\xd3\xea\xa6\xcc\x36\x1b\xa6\x7f\x4c\xfc\x5b\xdf\x63\x74\x79\x3d\xc0\x1c\xbc\x2a\x34\x30\x1f\xde\x4f\x9c\x0c\xc6\x18\xe4\xc5\xb1\x8b\x73\x9c\xa2\x5a\xaa\xb5\xf3\x12\xb0\x88\xa1\x7b\x60\xcb\x1a\x07\xce\x07\x54\xb3\x5b\x15\x60\xbf\x45\x6d\x81\x52\xf6\x7a\xc2\x77\x31\x48\xc1\x9d\x64\x89\xf0\x1a\x50\x16\x75\xe8\x97\x6a\x8f\xc2\xc6\x2d\x51\xa2\x92\x59\xd8\xaa\xfa\xee\x5b\xc9\xad\x21\xea\xf9\x2d\xb7\xec\x31\x63\xd5\x07\x27\xa0\x37\x03\x6b\x52\xb8\x75\xc8\xc8\x6e\x21\x2b\xf8\x25\xde\x32\x06\x71\xac\x6d\xeb\xcd\xd1\x1a\x4a\x9f\xc5\x72\xca\x66\x60\xf3\xc0\x7c\xcb\xd2\xd2\xf3\x16\x1c\x0b\x45\x04\x8f\xce\xf2\xf3\xac\xa9\x33\xd7\x75\x2e\xc0\x0e\x5f\xdd\x17\x0b\x9f\xd4\x85\xeb\x69\x45\x0a\xff\xc8\xf9\xfa\xf1\xb8\x24\xa3\xb3\xe5\xf9\xa2\x69\x64\x69\x49\xd7\xc5\x74\x39\xc3\x57\xe4\xba\xd9\x47\x57\x9b\x4d\x7c\xe5\xf6\x11\x66\xe4\x0a\xcf\xed\x2b\x21\x71\x49\xe6\x68\x52\x26\x0c\xaf\x87\x73\x2e\x96\xa9\x07\xa1\x8a\xda\x20\xdb\xc9\xf1\x35\x42\x38\xe8\xf0\xaa\x75\x1c\xab\x0c\xd7\xc0\x37\x2f\xec\xb1\x67\xbc\x7a\x59\x2f\xdb\xf1\xb5\xe6\xe0\xaa\x5c\xf8\xd6\x6d\xd7\x64\xe7\x51\x33\x88\xfa\x57\xd8\xbf\x88\x92\xeb\x1a\xa1\xba\x08\x8f\xe9\x8a\x4a\xfd\xf2\x12\x4e\xa7\x38\xc7\x12\xa7\xf1\x0a\xcf\xf1\xc2\x39\x7f\xc1\x0e\x2c\x86\x06\x9b\xac\x10\xaa\xeb\xf5\x90\x97\xda\x9f\xf8\x0b\x56\x2a\x10\x56\xf7\x5c\x2b\x29\x16\x38\xc3\x3e\x36\x9e\x05\xa7\x56\x73\x7b\xc8\x5e\x2f\x0e\x4d\xd8\x2c\x2e\xa2\x90\x39\x8b\x96\xec\x41\xe2\x0a\x85\xf0\xab\x7c\xb6\x9b\xb9\x76\x9f\x73\x5f\x61\x75\x35\x58\x9d\xb3\xd2\x38\xc0\x8b\xf5\x39\x81\x0f\xc6\xe1\xe6\xc4\x9a\xa7\x9a\x82\x73\x7b\x3a\x7c\x5e\x32\xd5\x25\xae\x80\x13\xa2\x05\x89\x1d\xa7\x15\xbc\xbc\x2e\x1f\xc3\x76\xee\xf5\x44\xb8\xbb\x33\xc0\x9b\xe7\xf3\x18\x8e\x30\x70\xd1\x47\x85\x93\x7c\x07\xe7\x7d\x58\x79\x83\x60\x21\x1c\xcc\x49\x90\xcd\x4d\x8f\x71\x52\xe1\x7f\x44\xbe\x2f\x89\x4a\x9f\xa1\x76\xf8\x3a\xc8\x40\x15\x29\x4c\xe6\x60\x6c\x76\x5e\xe5\xef\xbc\x6a\x9a\xcf\xb4\x09\xfb\x1a\xfc\x45\xe8\x8d\xe8\xd7\x0f\x76\x53\x2c\x16\x38\x9e\x93\x12\x79\x87\xd5\x33\x33\xa3\x93\xdb\xf0\xd4\x4e\xe6\x75\x12\xcf\x7b\xbd\x83\xd1\x01\x21\xf3\xcd\x26\x9e\x83\xfd\xd4\x1c\xe1\xb5\x89\xc6\xb4\xd8\x3f\xa9\x65\x30\xa7\xa3\x03\x2f\xaf\x85\x47\x73\x8b\x7e\x7d\xa6\x17\xe1\xf4\x16\xb1\xd0\xe8\xfe\x1c\x1c\x59\x1b\x48\x81\x00\x33\x15\xcc\xd6\x8a\x0a\xb5\x93\x5f\x00\xcc\xc4\x6d\xeb\xdd\x66\x46\x7a\x3d\x1d\x68\x15\x99\x68\x07\xff\x05\x29\x75\x45\x62\x5f\xb1\x4a\x52\x61\x2e\x5f\xb3\x93\xa2\x5f\x2b\x5e\xee\x0c\xa3\x30\x9d\x75\xd4\x37\x00\xd7\x55\x2a\x2a\x0a\xee\x23\x7d\x12\xbc\x09\xee\x30\x2c\x78\xd6\x11\xbe\xbb\x17\x7d\xb7\x33\xad\xd4\xf5\x11\x94\xaa\xc6\xd8\xbe\x66\x60\xf1\x09\xee\xca\x6c\xbe\x22\xf5\xb3\xc1\x9b\xcd\x65\x50\x91\x44\xd6\xa8\x06\xd5\xd9\xb0\x5b\x8a\x06\xd4\x1a\x2b\xa5\x53\x58\xe9\x8a\xff\x1f\xae\xe4\x4d\xba\x2c\xf6\xad\xa4\x9e\x36\x95\x63\x58\xf0\x34\x6f\xe6\x8c\xd9\xeb\x5f\x47\x02\xd8\xb5\x88\xa5\xf1\x9a\x32\xdc\x5a\xb6\xad\x2f\x76\xa9\x98\xc5\x1f\x6b\xf4\x3f\x79\x45\x70\x94\xfd\x5a\x45\xbf\xd7\xba\x04\x93\x09\x1a\x65\xe9\x32\x87\xc0\x5a\xc1\x7a\xe1\x68\x55\xa4\xac\x8c\xc2\x75\xc3\x10\xd1\x7b\xc9\x73\xfa\xe3\xdb\x17\xa0\xe5\x6a\x7e\x13\xd5\x9c\xfa\x7d\xf8\xdd\xab\xc3\xef\x5e\x0d\x55\x87\x0d\xb2\x7f\xeb\xe9\x9b\x04\x5c\x2e\x5d\xb8\x02\x2f\xd3\x54\x21\x1e\xb4\xcc\x18\x05\x39\x75\x23\x78\x57\x54\x57\x43\x66\x4f\x67\x86\xa6\x2c\x7d\x3d\x7e\x53\xd1\x96\x6d\xeb\x94\xcf\x90\x42\xb9\x35\x86\x07\xea\xfd\x20\x70\xb7\xdc\x5a\xaf\x09\x4d\xb2\xed\xe4\x18\xec\xb0\x66\x1d\x11\x32\x18\x28\x74\x25\x46\x75\x1d\x0b\xcc\x02\x33\x73\x1b\xd2\x2e\xe8\xa1\x59\xe3\x97\x8a\x14\x01\x41\x7e\xaa\x10\x01\x2f\xb5\x69\xdc\x7a\x12\xb6\x06\x10\x07\x76\xb5\x99\x09\x10\x58\xa6\x4b\x6a\x1d\xb6\x6f\x8d\xda\x0b\xc7\x1d\xdb\x68\x73\x62\x7f\x26\xf0\xcd\x61\x14\x00\xcd\x2c\xb8\x45\xb5\xe1\xff\x62\xb5\xa8\x57\x58\xdb\x91\x1b\xb8\x00\x15\x0d\x7d\x9b\xef\xa3\xe6\xaa\x4c\xb0\x95\xa2\x80\xaa\x61\x25\x32\x92\x76\xb4\xa3\x25\x97\x3d\x50\x26\x7e\x9f\x5e\x69\x55\x62\x5b\x6a\x3a\x9a\xe1\x35\x11\x80\xa6\xf3\x59\xc7\x12\xa5\x6a\xab\x87\x17\x9f\x1a\xe6\x7e\x81\xfe\xba\x59\x06\x8a\xd6\x53\x3a\x8b\xed\x8d\x58\xf8\xcc\x5a\xed\xc3\xfa\x7b\x3a\xe7\x82\xc6\x15\x2e\xb4\x30\x04\x36\x1e\x21\x72\xe2\xb6\x68\x8a\x30\x8f\xd5\x19\xa9\x36\x0d\xe0\x24\xe6\xcb\xaf\x55\x3c\x4d\x67\x98\x83\x6b\x87\x74\x2d\xf9\x0b\x9e\xe6\xe1\xba\xea\x78\x23\xbb\x57\x4d\xa0\xcd\x26\x04\x12\x11\xde\xee\x0a\x31\xb6\x18\x93\xaa\x21\xc2\xd2\x47\xa2\x20\x09\xc6\x55\xff\x17\xbd\x23\x1a\x3d\x34\x67\xca\xb1\x6d\xeb\x2e\xd1\xb6\x6f\xe8\x1f\x4b\xdd\x8d\xbc\x0b\xd8\x51\x37\xea\x4b\xed\x10\xba\x62\xcb\x55\x41\xbb\x7a\xea\x6a\x9f\xaf\xef\xea\x37\xbb\xe4\x30\x9e\x24\xe8\xd0\x9c\x67\x51\xe4\xcc\x2a\x7c\xb2\x58\xdb\x51\x4c\x62\x3a\x64\xe0\x04\xe5\x71\x5a\x69\x4a\x39\x62\x11\xc2\x54\x51\x17\x60\x7f\x8d\x12\xda\x28\x93\x60\xcf\x02\x23\x06\x23\x7d\x39\x89\xa2\x24\xfa\x47\x84\xc0\x0a\x03\xac\x31\x50\x84\x45\x20\x3f\xa0\x0a\x4d\x89\xe9\xb0\xa4\x5f\xc0\xaf\x94\xda\xbe\xa8\xd7\x93\x10\xd2\x31\x48\xc4\x26\x8a\xe7\x15\xfd\x42\x04\x38\x2d\xba\xa2\x5f\x90\x55\xe4\xf8\x44\x43\xb7\x5b\xdb\x7e\x03\xbd\x53\xa8\x01\x9f\x46\xc2\xe0\xce\x87\x0f\xc3\xc3\x2b\x1c\xf8\x75\xdf\x45\x99\x8b\x7e\x1f\x79\x7e\x03\x7b\x3d\xd0\xe1\xda\xae\xc4\xd3\xa0\x02\x13\xf8\x4f\xb4\x34\x7d\xce\x53\x99\x12\xda\x62\x25\x6f\x3b\xdc\xb1\xfa\x5b\xe5\x70\xa5\x03\x33\x36\x58\x9d\x49\xb0\x5e\x2d\x6d\x4b\x23\xe2\x7d\xb3\x1c\xd1\xa6\xbc\x89\x07\x28\x86\x2b\x5e\xf5\xc3\x70\x2f\x98\xe9\x1e\xd6\xda\xf7\x3b\xcf\xd2\xc2\xfa\x81\x57\xbf\x87\xb4\xcc\x15\xd1\xa0\x25\x80\x5e\x22\xb2\x02\x20\x2f\xed\xbd\xaa\x48\x47\xef\x71\x4e\xc0\xf4\x57\x9b\xeb\x9d\x02\x61\xcd\x6e\xe0\x5a\x2c\xd0\x69\x6a\x50\x90\xac\x3b\xa3\x66\xc0\x2b\x80\x5a\xb5\xa9\xb6\xde\x65\x69\xd9\xeb\xc5\x15\x69\xa5\x19\xbb\x9a\x61\xb6\x16\x02\xc8\x15\x90\x57\xc2\xc8\x35\xc9\x25\x64\xbf\x32\x36\x33\x98\xd7\x8d\xf3\x44\x3a\x2d\x35\xfd\xa1\xce\xed\xd1\xd9\xba\xe1\x46\xaf\x2d\xdf\x37\x23\xc5\x74\x3d\xc3\x39\x89\x0f\x32\x58\xcb\x61\xc5\x8b\xcd\x46\xa8\x3f\x31\x42\xcd\x3c\x65\x06\x52\x15\x00\xe6\x30\x9d\x26\xbf\x82\xee\x89\x69\x87\x78\x69\x89\xf9\xad\x80\x6b\x12\x83\x94\x27\xcd\x3e\x6d\x36\xf6\x97\xcf\xea\xd1\xa5\x11\x6e\x55\x03\x1b\xc6\xd5\xc3\x57\xbd\x9e\x29\xeb\x7e\xf8\x80\xa1\x8b\xda\x0f\xe0\x64\x16\x61\x53\x78\x09\xf2\xa0\x14\xe4\x7c\x5e\x12\xce\x2c\x2c\x9b\x44\x35\x89\x8a\x52\x2b\xcd\x2f\xe3\xe4\xcc\xbc\x19\x37\x77\x7d\x69\xde\x7f\x2c\x99\x74\x45\x73\xda\x2e\x0a\x6e\x6e\x2d\x63\xfa\xe2\x08\x7c\xb0\x1b\xe0\x35\x4a\x03\x9a\x6c\x3e\x3a\x5b\x9c\x3b\x3e\xf7\xa2\xdf\x47\xf9\x74\x31\x53\x15\x59\xe8\xd7\xc8\x32\x38\xb3\x54\x9f\x30\xf4\x39\x31\x7d\x9f\x82\xdb\x16\x8f\x47\x7b\x99\x66\x9f\x7e\x5c\xc5\x79\x23\xa8\x1e\xc4\xf9\x74\x3c\x9b\xa8\x87\x49\x49\x46\x30\x37\xba\x82\xd1\xcc\xa2\xcf\x26\xa5\xd7\x33\x3f\x20\xf0\xf1\xa4\xc9\x67\xdb\x6c\x14\x35\x61\xa9\x63\x2d\xdc\xab\xeb\x50\x73\x4d\x4b\xb9\x48\xe3\xff\x45\x7b\xa4\x3c\xa0\x9b\x8d\xbd\xe7\x1c\x22\x45\x37\x9b\x03\xb9\x23\xbd\x65\x4b\x22\x3c\xcd\x9e\x72\xbf\xcf\x8b\x12\xe9\xa3\x73\xa7\x73\x95\x03\xae\x9d\xc8\xc8\x30\x44\xa4\xe8\xf7\xeb\xd0\x87\x0b\xda\x51\xbc\xd7\x13\x83\x81\x77\x44\x89\x50\xdc\x50\x62\x86\x6d\x14\x09\xad\x45\xbb\xa2\xa2\x02\xb7\x73\x8d\xdd\x6b\x01\x07\x9b\x4d\x86\xe3\xa0\x3a\x2b\x7a\xbd\x83\xea\xac\x20\x05\xcc\x28\x8a\xd9\xb0\x5a\xd1\x6c\xc2\xcd\x0f\x5c\xc0\x1f\xa4\x88\x1e\x85\xc2\x10\x7d\xb6\x20\x38\x2f\x0a\x8d\x27\xae\x49\x35\xd1\xf1\x1c\x4c\x2e\x75\xe9\x98\x38\x28\xb1\xc4\xba\x22\x84\x33\xc8\x06\xbb\x25\xa1\xfa\xf8\x80\x3e\xc4\x6b\xd4\xf1\xfb\xab\x3a\x64\x4e\xdc\xb0\xaf\xe4\x16\xda\x58\x63\x55\x5f\x62\xfa\xa7\xeb\xcb\x30\x6c\xfd\xed\x32\x3a\x64\x50\x73\x5e\x66\xf6\xd5\x55\x46\xcb\x3c\x61\xe6\x6c\x8e\xe1\x07\xc2\xe6\x00\xb4\xe9\xc0\x05\x62\x3a\x4c\xe1\x53\x2f\x23\xf8\xe0\xb3\x87\x75\x92\xf6\x7a\xa9\x06\xdc\x74\x9a\x36\x9e\x8d\x92\xb4\xf6\x25\x23\x3b\xc3\x49\x06\x31\x43\x54\xef\xc0\x29\x61\x73\x92\xeb\x9d\x8d\x5a\x47\xb7\xf7\x29\xf6\x07\xe9\x42\x4b\x6b\x31\xb4\x3d\x18\x36\x1b\x93\x49\x1d\xb3\x39\x2f\xe5\x73\x48\xd6\xf3\xb4\x5f\xe8\xb7\x65\xc1\xc7\xe6\xb1\x04\xf7\x4a\xbe\x71\xab\x3d\x07\xf1\x76\xd5\xe8\x62\x30\x6e\x10\x85\x37\x69\x55\x19\xea\xc2\x9d\x58\x2e\x0e\x65\x45\xa4\xbb\x3a\x3a\x34\x01\x25\xdf\xb3\xa6\x33\xda\x2d\xaf\x63\x08\x16\xf6\x32\x59\x93\xca\x38\xe5\x5d\x87\x67\x22\x2c\x5c\x90\xf6\x7c\xfe\x82\x95\xda\x68\xd8\x5e\x44\x6b\x7d\xc3\xe8\xdb\x4e\x53\x36\x59\xaf\x97\x4d\x47\x33\x74\x9b\x0e\x06\x38\x5e\x1b\x4c\x6a\x6d\xd1\xab\x58\xf5\x33\x4c\x9d\x21\xcc\x5c\x60\xd2\xcc\xb7\x35\xf5\x22\x2e\xd4\xb5\x16\x9d\x5b\x69\xdf\xf9\x68\x32\x4a\xec\x2c\x4c\xd3\x59\xed\x18\xc2\xef\x00\x21\xdd\x49\x34\xe8\x0c\x66\x6f\x05\x24\x7c\x63\x54\xe5\x4a\xc7\x26\x6a\xa6\x22\x45\xaa\x1d\x75\x0a\x05\x76\x32\xe6\x38\x82\xfd\x18\x59\xc2\xef\xb6\xc6\x05\xe1\xc3\x25\x95\xe9\x66\x73\x5b\x03\x3f\xd6\x1d\x80\x99\x3a\xa5\xb8\x82\x83\xec\x80\x14\xbd\x1e\x6f\x1f\x57\x19\x6a\x3c\x1e\x93\x74\x9a\xcd\x14\x06\xb8\x20\x7c\x9a\xcd\xf0\x9c\x8c\xce\xe6\x8d\xa4\x63\x6e\xd7\x70\x45\x16\xd3\xf9\xac\x93\x37\x9a\x48\x65\xbc\xc2\x1c\x21\x1c\xaf\x1c\x00\xaf\xcc\x2a\x22\xcb\x00\x06\xc4\x67\x49\x6e\x9b\xd3\x64\x47\xd8\x64\x7d\x44\x98\x11\x62\x73\xb9\x81\x57\x6a\x0c\xfb\xc1\xfb\xa9\xab\xd0\xbe\x19\xa1\xcd\x64\x3d\x99\xce\x12\x7d\xcb\x40\x5c\xbb\x56\x23\x4d\xb4\x02\xdd\x8a\x91\xdb\xb9\x56\xa4\xbd\x4c\x4d\x53\x52\x6f\xc1\x7d\xad\x49\x87\x09\xd8\x5f\x2e\x66\x72\xdd\x91\xde\x1e\x07\x44\xcc\x3b\xd7\xe8\xd0\x75\x2e\x96\xde\xf9\x80\xfd\x42\x48\x6b\x9f\x00\x22\xa3\x39\xf6\xd9\x27\x62\x52\x5c\x3b\xbe\x40\x5c\x6e\xdf\x17\x3a\x10\x0b\xdc\x15\x62\xdf\x09\x5d\xea\xa6\xe1\x98\x2e\xfd\x63\xda\x22\x4b\xc4\xef\xd5\xc4\x1f\x48\xe2\x0f\xc4\xd4\xd3\xa0\x69\xea\x8c\xdf\x6e\xb5\x6e\x9c\xb2\x19\x14\x85\xc5\x29\xb8\x34\x28\x4b\x2a\xc2\x68\x5c\x81\xdd\x92\x3e\x69\x75\x9f\xa9\x3f\x69\xf6\x92\x6a\xfa\x55\xd7\x76\x89\xaa\x38\xc5\x05\xaa\xd5\x31\x51\x38\x30\xbf\x56\x5b\xa2\x40\x45\x7b\x27\x80\x52\xe9\x72\x7a\x3d\x23\xc5\xf4\xba\xb1\xc6\x5e\xfe\x57\x25\xcd\xe9\xd0\xea\x10\x7c\x61\xe5\x55\xeb\xfc\xb2\x5b\xe5\x5b\x7d\xc7\x05\x74\x6e\x63\x8a\xb3\xc3\x1b\xc8\x96\x1d\x2d\xf8\xcd\xb5\xd7\x65\xaf\xc7\x2e\x06\xe3\x09\xeb\xdb\x9b\x26\xd1\x5e\x7d\x39\x91\x86\xc4\x99\x58\xab\x5a\x81\x92\x86\x44\xe2\x13\x1b\x82\x5a\xf4\xe3\x72\xe2\xc5\xa1\x4e\x46\x28\x19\x8c\xeb\xe6\x7c\xd9\x7f\xf8\xf0\xb5\xa4\x22\xc4\x77\xa4\x81\x4c\x70\x50\xea\xf6\x7f\x49\xc5\x1d\xe7\x8c\xd8\xaa\xd0\xdb\xef\x58\x0c\x21\x35\xac\x57\x51\x0f\xee\xcd\x34\x10\xa4\x81\x2e\x8c\xab\x25\xf8\xa4\xb7\x81\x49\x42\xb5\xdd\x57\x5b\x8c\x49\xee\x17\x6a\x02\xe3\x78\x89\x9d\xb5\xba\x16\x61\xc5\x00\x09\x4f\x87\x59\xc1\x2b\xda\xeb\x31\x43\xea\xd9\xc9\xf6\x0b\xd9\x2a\x3c\x65\x2f\x4d\xcc\x5a\xcc\x26\xce\x89\xa9\x68\x52\xc6\x6b\x6c\x7e\x63\xa6\x68\x53\x9c\x6a\xd1\xc9\x13\x5a\xb0\x25\x93\x54\x54\x6a\xb1\x90\xc2\xe0\x56\xbc\xea\xf5\x0e\xb6\xbf\x3b\x9f\x28\x9a\xe6\x34\xd5\x21\x7c\x47\xa7\x14\x42\x51\xb0\xe5\x3b\x79\x53\x28\x0a\xcf\x7b\xeb\x47\xdd\xa8\x1f\x26\x0c\xa0\xbe\xa8\x93\x6b\x4f\xfe\x76\x42\xc8\xda\xd9\x61\xe7\x46\x05\xba\x22\xa9\x4f\xbc\x33\xdb\x05\x07\x94\x5b\x55\x20\x9c\xbb\xa1\x6d\x8d\x0c\xc2\x8d\xef\x1b\x03\xc2\xa9\x7e\x33\x83\x88\x2b\x85\xa1\x9b\xee\x37\x1f\x12\xff\x05\xe1\xca\x23\xf4\xc7\x87\x23\xdc\xac\xaf\x51\x3d\x13\xdb\xaa\x67\x78\x41\xc4\x34\x9b\x99\x95\x53\x2b\xb6\x18\xf2\x15\x2d\xf5\x82\x21\xbb\x36\x76\x1d\x16\xed\x61\xe8\x50\xce\x6a\x69\x74\xb9\xf6\xca\x2c\xec\x3b\x09\x36\xda\xc2\x5e\x81\xfa\xe8\x9e\xd8\x1f\x31\xd7\xfb\x05\x47\x11\x4a\x46\x08\x2f\x82\xb5\x5c\xb4\xd7\x32\x4c\x18\xa8\x0e\x44\x60\x50\x9f\xf7\x7a\xf9\x79\xd1\xeb\xc5\x05\xc9\x51\x5d\x1c\xa8\xf9\xd8\xbd\xbc\x85\x59\xde\x39\x38\xe7\xb7\x2b\xab\x37\xad\x5d\xd9\x1d\xe5\x11\x9e\xbb\x7b\x27\x64\x69\x59\x5d\x43\x6f\x16\x26\xdb\x3b\x38\x91\x8d\xbb\x1f\x33\x07\xf6\x47\xbc\xb3\x6c\x62\x4e\x12\x5c\xa2\x44\xe3\xea\x35\xbe\x2c\xd2\xf2\x93\xc2\x9a\x9b\x2e\x78\xb2\x51\xbf\x92\x72\x57\x07\x80\x1a\x75\x75\xa8\x7d\xef\x5e\xe2\x9d\xc5\x93\xd2\x9e\x66\xc1\x67\x14\x7d\x50\xf7\x58\xd8\xa4\x3d\x4c\xc2\x9a\x6c\x1e\x0d\xe5\xa1\xff\xf4\x1d\x2e\xbc\xcd\xb1\x25\xa6\x7c\xd6\x31\x8d\xa4\x00\x66\x5b\xf5\xa6\xb6\x4b\x21\x9c\x19\xa6\xce\xf6\x1c\x97\x01\x9c\xa9\x73\x14\x9c\x12\x08\x96\x3d\x5e\xa4\xa2\x4a\xe4\x30\x78\xff\x1a\xc2\x02\x9f\x27\xb7\x16\x3b\x81\x57\x6c\xb0\x97\xf6\xcc\xd7\x89\xcb\xa7\xfb\xa0\x97\xa3\x56\xff\x7e\x4f\xdc\xe3\x92\x7f\xa6\xe2\x63\xc6\x97\x2b\x5e\xaa\x8b\xdb\xc3\x1d\xb6\xc5\x97\xdf\x54\x2a\xcd\x73\x5e\x6a\x09\xa2\x26\x59\xfe\x0d\x54\xe6\x37\xf4\x0a\xff\xc6\xce\xfc\x56\x84\xc8\xa3\xd7\xa2\x85\x5c\x16\xda\xd9\xf9\x65\x2a\xaa\x68\x0f\xf9\xd6\x46\xa1\x62\x9f\x9b\x12\x49\xfa\x45\x1e\xaa\x8a\x22\x84\x6f\x15\x94\x26\xd1\xed\x6d\x84\x61\x23\x24\x51\x5d\x47\x16\x22\xbc\x32\x5e\x9b\x08\xb7\xce\xd6\xe4\x60\x54\x23\x5f\xc5\xe4\xe5\xf3\x97\x4f\x63\xdd\xcc\x97\x41\x53\x72\x20\xe9\x72\x55\xa4\x92\x46\xb8\x3d\x8e\xdf\x5d\xf4\xbd\x1f\x70\x86\x43\xb3\x24\xda\x26\xde\xfc\xd1\x0e\xdf\x77\xe6\xa3\x39\x93\x87\x70\x77\x5c\x8a\x34\xfb\x44\x65\xf5\xef\x61\xc6\x5b\x50\x73\x67\x4f\xf0\x9d\x1d\xf8\x77\xcc\x50\xe8\xf0\x13\xbd\x79\x99\xae\x86\xd5\xfa\xb2\x60\x4b\x4a\x6e\xe7\x69\x51\xc8\x85\xe0\xeb\xab\x45\x12\x19\x67\xfd\x51\x8d\xc1\x19\x15\x5f\x2e\xd3\x32\xaf\xc0\xe3\xcc\x1b\x5e\x61\xd6\x94\x37\x39\x49\x93\xb2\x4c\x33\x13\x03\x00\x9c\x20\x44\x8f\x97\xf9\x20\xd2\xbe\x41\x06\x51\x27\x54\x6b\x46\xb7\x36\x3c\xba\x73\xee\x52\x7d\x7f\x13\x46\xc2\xb7\x22\x9b\xa1\x71\x3c\xa4\x25\x2c\x9b\x8d\x1c\xe6\x3c\x33\xa5\xd5\x8d\x4e\x97\x2b\x79\x13\xa3\x50\x03\x96\x01\x5e\xc9\xce\x47\x10\x5c\x0d\xe2\x95\xba\xfa\x6c\xa8\xed\xd2\x78\x36\x18\x8c\x91\x75\x8b\x03\x22\x50\xb8\x53\x8c\xab\x05\xb8\x77\x2e\x46\xbd\x9e\xaa\xe2\x82\xf0\x96\xa4\x7f\xbb\xb2\xfe\x38\x08\xf5\x90\xe2\x8a\x58\x96\x41\x01\xfd\x50\x98\x0e\x70\x6c\x6c\x5d\x80\xef\x14\x07\x64\x7d\x56\xf4\x09\xc3\x99\x65\x65\xe4\x3a\x82\x10\xd8\xa2\x9f\x8f\x26\xc5\x60\x9c\x14\x08\x2f\x48\xf4\x51\xdb\x59\x52\xcf\x03\x74\x9c\x23\xb0\x3f\x8d\x78\x04\x22\xb6\xcf\xda\x46\x31\x0f\xdd\x3d\x83\x39\x67\xbc\x20\xd1\x4f\x11\xb2\xac\x1a\x42\x2a\x14\xf1\xe8\x40\x65\x8f\x2b\x12\xb1\x32\xc2\x29\xf1\x02\x0c\x45\x20\x9b\xaf\x40\x6b\x70\xa1\x29\x27\x55\x7b\xda\xeb\x45\x3f\xe9\x56\x60\x96\x8b\xc1\x00\x43\x82\xfa\x60\x9a\x67\x17\x23\x74\x9b\x92\xe8\x73\xe4\xd8\x57\x86\x75\xe5\x0c\x7b\xac\x73\x89\x02\xd5\x31\x2c\x2c\x66\x3a\xde\x92\x40\x89\x38\x1f\x4d\xb4\xbb\x85\x18\x25\x6c\x28\xb9\x96\xb4\x8b\xa9\x9c\x46\x8f\x0a\x39\x00\x07\x27\x33\x12\x5d\xf1\x77\xeb\xcb\xcf\x5c\xe4\x26\xc1\xdf\x02\x69\x4c\xf1\x60\x8c\x6a\xec\x4a\x69\x4f\x28\x7e\x31\x9b\xd2\x2e\xa7\x8a\xb1\x5e\x2f\x96\x53\x80\xe5\xa6\x39\xc7\xfb\x7b\xb7\x6c\xb8\x5d\x15\xc0\xbc\x02\x76\xd5\xca\x0e\xc0\x2f\x62\x1b\xeb\x45\x0e\x59\xf5\x96\xa6\xf9\xeb\xb2\xb8\x69\x48\x17\xc3\xd4\x94\x0a\x67\xd0\x31\xef\xe2\xdd\x5a\x08\x72\x58\xb0\xaa\xf1\x8a\x54\xc5\xc8\x49\x0e\xb5\x3e\xcb\x60\x8c\x75\x8c\x68\x7a\x96\x5a\x68\xaa\x76\x14\x9b\xa6\x3a\xb8\x95\xf6\xbc\xa0\x03\x2d\x9f\x13\x8e\x6c\x04\xab\xd2\xa4\xf5\x63\x31\x19\x25\x63\x84\x47\xa8\x23\xad\x78\x55\x3b\x42\x02\x4f\x53\x85\xf1\x10\xd6\xd7\x4a\x0f\x6a\x7a\x22\xe4\xf0\x65\xd8\x4e\x85\xd1\x82\x32\x31\xa4\xb1\x0d\x9b\xa6\x9a\x4f\x0a\xac\xe3\x6f\x25\x45\x8d\x30\x27\xa6\xd1\x71\x5d\x83\x92\x82\xd7\x63\x06\x57\x84\x26\xb7\x1f\xeb\xc3\x49\xc1\xa7\x6a\xe5\xd1\x5a\xf2\x28\xd0\x08\x0f\xdc\xda\xeb\x78\xcb\xea\x60\x02\xc7\x27\xad\x5d\x7e\xc6\x5a\xdb\x29\xf5\xdd\x61\xa1\x33\x34\x18\x30\xd8\xd2\x67\xdc\x85\x73\xdb\x57\x82\xab\xfc\xfd\x3e\x37\x28\xb3\x56\x12\x73\x70\xce\x40\x33\xcc\xbd\x72\x84\x15\x04\x26\xa9\x41\xf1\x15\x61\x5a\x03\x84\x57\xfd\xe8\xc7\x95\x02\x37\x1d\x64\x43\xf5\x16\xde\x7d\x20\xb5\x47\xfa\x15\x95\xef\x20\xd7\xf3\x72\xce\x8d\x5b\x33\x3a\xac\xf8\x92\xca\x05\x2b\xaf\xf4\x04\xd2\x3c\x46\x8d\x59\x8b\x6a\xfd\x91\xb1\xc5\x8b\x25\x58\x0e\x59\xe3\x3b\x9d\x88\x23\xe0\x5a\x41\x84\xee\x2b\x2a\x1f\xc3\x85\xa4\x20\x8d\x95\xf4\x82\x80\x66\x75\xb0\x0a\x7a\x57\xfc\xb8\x8a\x50\x4d\x87\xba\xcf\xef\xb9\x71\xcb\xaf\xaa\x1f\xb8\xd0\x58\xef\xe9\x17\xdb\x30\x32\x1b\xb3\xea\x6b\xd7\x45\xc1\x70\x4d\xca\x7f\xda\x80\xdd\x08\xfb\xe3\x1d\x63\x3c\xdf\x3b\x46\xe8\xd7\x9e\x51\xf6\xef\x1a\xa5\xf6\x98\x35\x88\xfa\xbc\x1f\xbd\x80\xb1\xae\x0a\xd6\x80\xf7\xf7\x37\xb0\x71\x66\x7b\xec\x12\xe8\xd6\xf6\xd5\xde\xe0\x74\x78\x24\x27\x5a\x61\xfd\xbe\xe7\xa1\x56\x4e\xd9\xcc\x9c\xa0\x0a\xee\xd5\x9b\x3a\x46\x71\x45\x74\x68\xb7\xb3\xea\x9c\xa4\xfa\x57\xbf\x5f\x21\xfd\xf3\x82\x1b\x87\x40\xe0\xd1\x45\xff\x04\xdf\x2b\xd9\x62\xb3\xb1\xba\x8f\x66\xc7\x56\xc4\xd4\x34\x51\x50\x5d\x61\x45\x06\xab\x2d\xed\x8a\x4e\x52\x95\x8e\x6a\x05\x47\xe1\x66\x16\x78\x84\x6a\xec\xa6\xe5\x7d\x7a\xa9\xe6\xc4\x9c\x19\xb4\xaa\x22\x35\x69\xc3\xa7\x55\x46\xa2\x8a\x95\x57\x05\x75\x65\xdf\xf3\x7d\x3b\x61\xeb\x84\x1b\xcd\x5a\xed\xc6\xd2\x05\xfb\xd3\x17\x8d\x17\xc5\xc6\xac\x93\x5b\x1e\x28\xf3\x7b\x2d\xca\x6d\xb3\x22\x9d\xd6\x24\x96\x31\x37\x8b\xa4\x4f\x05\x3b\x89\x2a\x5d\x2d\x57\x83\x58\xd4\x00\x77\xe1\x34\xfa\x93\x08\x77\xce\x5f\x54\xe7\xb5\xce\x3c\x74\xde\x0e\x4a\xfb\x6e\x83\x39\xb6\xc7\xf4\xa3\xb9\x4e\xda\x41\x27\x16\x31\xc5\x07\xe3\x1d\xa0\xbb\xa3\x1a\xad\xe6\x76\x47\x3d\xa3\x66\x6a\x9f\x34\x53\xfb\x8a\x7e\x91\xaf\x33\xad\x17\x92\x05\xc5\x3d\x13\xaa\x66\x63\x46\x6a\x8e\xc0\x54\x25\x48\x55\xe7\x3e\xe6\xce\xd4\xc9\x20\xb6\xcf\x58\x99\x3f\x5b\x17\x85\x3a\xa0\x09\xd1\x38\x63\x45\x41\x01\x09\x22\xf2\x65\x4b\x40\xdb\x14\xa6\x68\x29\x77\x7d\x65\x18\xf6\xa2\x3a\x96\xad\x55\x66\x78\x0d\xc5\xc6\xcb\x10\x38\x3b\xc2\x9c\x1c\x8c\x1a\x3f\x07\x95\xee\x9a\xbe\x1b\x55\xdd\xb8\x20\x7c\xe2\x7b\xc5\xfd\xf0\xe1\x32\xea\x57\x7d\xf8\x8b\x92\x0a\x67\xba\xc4\x3b\x40\xfb\xcd\x90\x0a\xcc\xd0\x59\x9c\x81\xed\xe6\x2b\x50\x50\xd8\x6c\xe2\xdd\x19\x15\x3c\x83\xbe\x38\x5c\x67\xea\x86\x46\xc8\x2b\x87\x7a\x3d\x39\x4c\xf3\x06\xcb\x8e\x33\x7b\x1c\x64\x00\x5a\xe0\x8a\x37\xbe\x6b\xee\xdc\xd4\xf9\x7e\x66\xb3\xd6\x69\x6c\x8f\x4e\x20\x1b\xaa\x2c\x2d\x9f\x71\xf1\xbd\xa6\x53\x62\xa9\x10\xb0\x26\x14\xff\x99\xe7\xaf\x72\x2b\xe7\x38\xf4\x60\xa5\xb9\x3e\xd9\x82\x90\x28\x46\xb7\xf5\x74\xe6\x5c\xb3\xb8\x77\xcb\xaa\x07\x14\xbf\x3f\xf6\xb0\xa9\x60\xcd\x4a\xad\x70\xa4\xf7\x97\xfe\x99\x2d\x20\x22\x26\xf0\x7a\x0f\xc6\x08\x1f\x8c\x3a\x92\x94\x31\x6b\xf2\xb1\x26\x9f\xbe\x94\xfd\x6d\xa0\xdd\x17\x3a\x58\x7e\x97\xf1\x55\x7b\x07\x64\x3a\xf8\x4a\x78\x89\xe8\xec\x8f\x8a\x22\xda\xb1\xb7\x5e\x36\x15\x7e\x4f\xe5\x67\x4a\xcb\xef\x1d\xb5\x17\xec\x0e\x35\x4b\x59\x2c\x5b\xc8\xa3\xdb\x64\x2f\x35\xa2\xfa\x9e\x9b\xe2\xad\xd2\x5f\x21\xbe\x84\x67\x3e\x18\xae\x90\xd0\x67\xa6\x5e\x26\x06\x7e\x2d\xdd\x56\xd2\x33\xa9\x73\xa0\x86\x17\xbe\xe2\x95\x23\xae\x76\xd7\x36\x68\x02\xfc\xf0\x5e\x4f\x1d\x7a\x6e\x05\x78\xb3\x02\xea\xea\x51\xd9\x15\x09\xa0\x1d\x5a\x59\x22\x53\x23\xda\x89\x7f\x04\x7a\x68\xf7\xe2\xdb\xd0\x6e\x87\x28\xc2\x51\xb2\x75\xaa\xa7\x10\xd1\xcf\xc4\x7c\xf5\xe2\xc8\xda\x58\xaf\x26\xc6\xeb\x41\x61\xc9\xd1\xe6\x96\x58\x93\x22\x38\xdd\x33\x08\xd8\x6a\xde\xbc\xfa\x06\xe3\x5e\x8f\x4f\xab\xfe\x78\xe6\x67\x27\x24\x3b\x43\x19\x29\xa6\xfd\x7e\x35\x6b\xca\x75\xb4\x7a\x59\xbc\xc6\x19\xaa\x6b\x8b\x93\x4e\x18\x39\x18\x25\xe6\x53\x78\x30\x48\xb0\x17\xd1\x2f\xda\x90\xec\x6e\x22\xc3\x29\xc6\xa7\x8d\xb1\x35\x39\xb2\xb4\x44\x3a\xe5\x33\x5c\xa8\x3f\xfd\xf1\x0c\xaf\x89\xb9\xfa\x33\x52\xc6\x05\xc2\xb9\x7f\x0a\xae\x71\x06\x51\x17\xc5\x24\x1f\x56\x5c\xc8\x18\x25\xe6\xc7\x4e\x7b\xfa\x56\x84\x22\x13\x87\xd6\x4b\x71\x52\x5a\xf0\x26\x18\x53\x22\x30\x78\xf7\xa7\xe7\x72\x32\x18\x27\x94\x10\xa9\x88\x15\x4d\x28\x04\xb4\x4a\x8e\xd5\x6c\x61\xc0\xf5\x83\xfb\x77\xad\xaf\xdb\xac\x46\x35\x53\x07\x66\x78\xc1\x52\xb8\x77\x35\xdd\x99\x3b\xac\xfc\x73\xba\xda\xc6\xc9\xe5\xb7\xc3\x99\xd8\x05\x65\x86\x7e\x0b\x56\x0e\x88\x39\x07\x7c\x62\x07\xf0\x89\x69\x35\xc3\x2d\x28\x1b\x8c\x43\x38\xb3\xf0\xd2\xa0\x1c\x85\xc1\x83\x6c\x76\xf7\x9e\x2d\x1c\xfa\x51\xc0\x8e\x6b\x72\xc0\x5b\xb6\x40\x35\x18\xa9\x99\xea\x15\x56\xe8\xc0\x7e\xb3\x19\x0c\x32\xbc\xbe\xe0\x13\xd6\x00\x68\xc2\x1a\x45\x47\x36\x65\x8d\x52\x13\xc9\xd4\x05\x9a\xd5\x5f\x07\xc7\xd1\x19\x6d\x0c\x20\xa8\x83\x44\x41\xd8\x94\xaa\x29\x63\x53\xaa\x20\xb1\xf2\x69\xbb\x6d\x62\x35\xc2\x25\xa0\x9d\xea\x0f\xe0\x53\x38\xea\xdb\x95\x54\x48\xc4\x85\xbf\x4b\x26\x3b\x48\xdd\x7e\x05\x37\xae\xbf\x95\x0c\xe9\xdb\x54\x93\xb4\xca\xa9\xcb\xbe\x54\x2d\x73\x68\xb9\x9d\x7d\x8b\xc8\x4d\x41\xbd\xc2\x90\x37\x92\xff\x8d\xd1\xcf\x9a\xf1\x81\x0d\x04\x3a\x52\xc9\xd4\xd1\x26\x94\x7e\x37\x28\x6c\x86\xd9\x57\x40\x28\xdc\xc2\x9d\xa5\x17\x64\x74\x96\x0e\x06\xf6\x3c\x10\xd3\x54\x9d\x07\x55\x80\xae\xae\x49\xe5\x83\x64\x67\x74\x60\x33\x28\x90\xa9\x1a\x90\x29\x06\x03\x5c\x9c\x3b\x90\x29\xf0\xfa\x0e\x90\x59\x2b\x90\x59\x7f\x03\xc8\xb8\x42\x47\x67\x54\x75\x97\x0e\xf6\x41\x4d\x1a\x42\x8d\x20\xe4\x4e\x38\x00\x28\x1a\x8c\x01\x8a\xd0\x9d\x4b\xff\x35\x80\x6b\x65\x4f\xbf\x0e\x29\xfb\xc0\x82\xf7\xa3\x43\x05\x13\x92\x5f\x5d\x15\x54\x21\x1b\xd4\xaa\xcf\xd1\xbc\x85\x96\xa8\x23\xd6\xcb\x15\xdf\x1a\xd1\x20\x70\xf0\x6d\x6d\x7f\x56\xb5\xfd\xca\x59\x09\xee\xca\x7f\x17\x02\x28\x24\x4b\xc1\xbb\xb8\xc1\x45\x2b\x43\x2c\x82\xb6\x58\x73\x37\x36\x15\xa8\xbb\x51\x4e\xd9\xd6\xdd\x58\x9c\xa1\x82\xc8\x69\xbf\xcf\xfc\xbb\xd1\x92\x57\xc0\xe1\x4c\x2a\xd0\xcd\x74\x3c\xa6\x03\x6e\x01\xaf\xd7\x4b\x81\x9e\xba\x1b\x90\x24\x84\xd6\x74\xd7\xa1\x08\x7c\x8f\xf8\x6c\x5e\xa1\xef\xc4\xca\x9c\xa3\x0a\x93\xa9\x82\x33\x56\xe2\xca\x3f\x63\xd5\xf6\x80\x1e\x9e\xad\xcf\x49\x35\xa4\x65\xee\xeb\xb5\xaf\x07\xb2\xb3\x26\x3a\xbd\xd7\x8b\x53\x52\xc6\x19\xa6\x0e\x4c\x33\xcb\xf3\x53\x28\x2f\xce\xce\xa9\x07\xb0\x10\xe7\x2f\x84\xc3\xae\x82\xaa\x4c\x81\x61\xd6\x1f\xe3\xc3\x7f\x7c\xa8\xfe\x78\xa8\x95\x56\xbc\x2a\x55\x55\xbe\xeb\x31\xdc\xef\x4b\x54\xb3\xf0\xe2\x28\x36\x9b\x54\x5f\x0f\xe9\x0e\x62\x94\x99\xbb\x72\x0b\xb1\x05\xaa\x2f\x5f\xaf\x0a\x96\xa5\x86\x2c\x6d\x03\xe5\xd7\x96\x61\x1b\xd4\x2c\xdb\xd3\x68\x97\x36\x81\x21\xd8\x2e\x56\x80\x98\x75\x1a\x61\x41\x6b\x82\x9a\x59\x60\xcd\x95\x87\xec\x76\xf4\xd2\x14\x81\x95\xec\x2a\xac\x7f\x5a\x76\x35\xd6\xec\x6a\xf5\x57\x27\x34\xfc\xa2\xd6\xe6\x85\xcd\xf6\x1e\xb6\xae\x48\xcb\x6a\xc5\x2b\x0a\x42\x5c\xcd\xfd\x78\x76\x4a\x22\x85\x2b\xed\xda\x84\x8b\x16\x61\xfd\xec\x14\x2e\x05\x9b\xfb\x79\x59\xd1\xb2\x62\x92\x5d\xb7\xa7\x7a\xe1\x51\xf6\xc3\x67\x47\x24\x2a\xe9\x17\xf9\x3d\xe7\x9f\x96\xa9\xf8\xb4\x87\xb1\x12\xd0\x87\x36\x6f\xd5\x84\x56\x3e\x73\x5b\xdd\x73\x7e\xa2\x2d\x62\xc0\xe3\x89\x22\x49\x63\x13\x5a\xc5\xc9\x4e\x4c\x08\x76\xdc\xa6\xd5\x34\x7d\x5d\x2a\xfa\xba\x0e\x40\xe9\xd9\x91\x1a\xe2\x4a\xd0\xeb\xdf\xb1\xbb\xd2\xb9\xbc\x33\x46\x0f\xd6\xce\x54\x4e\x9b\xe3\x67\xe6\x8d\x40\xec\xa1\x31\x85\xee\xb7\x50\xfd\xee\x98\xba\xea\x66\x79\x8e\x9a\xf3\x79\x4f\xef\xbf\x72\xac\xee\x1b\x16\x98\xcd\xee\xfe\xb4\x2b\x58\x75\xe9\x1f\x5c\x8c\xc8\x69\xe9\x58\x84\x5c\xbf\x01\x8b\x30\xf5\x9d\x47\x01\x63\xda\xa0\xa0\xa9\x8f\x82\xb2\x79\x9c\x4e\xab\x59\xbb\x61\x74\x0b\xa9\xd6\xcb\x51\xa8\x79\x2d\x7c\xcd\x6b\x31\x2d\x66\x84\xa8\xdc\xbd\x9e\xb0\x9e\x16\x15\x42\xe0\x42\xcd\x6b\x56\xa2\x41\x06\xc4\x96\xc7\x10\x86\x39\xbe\x6d\x35\x9f\x1c\x8c\xb4\x5f\x89\x9f\x16\xb4\x7c\xaa\xb6\x3c\xb0\xf7\x5a\xd0\x04\x07\x93\x5e\x16\xc8\xec\x66\xed\xdf\x04\xaa\x3d\x8a\xee\x10\xa3\xc6\xce\x84\x6c\x1c\x3d\x35\x22\x29\xdd\x07\x43\xf6\xff\x5b\x9d\x80\x4b\x37\xec\xc9\xae\x55\xf7\x57\xdc\x80\xf3\xa4\xc5\x8b\xd4\x07\x96\x3e\xe1\xd5\x21\x56\x2b\xa4\xc6\x2c\x4b\x39\x18\xa8\xf3\x5d\x78\x12\x90\x3d\x2c\x5d\x35\xaa\xbf\xaa\x41\x7d\x16\x1a\x7b\xa9\x22\xa3\xb8\xc4\xfb\xd1\x5f\xba\x1e\x79\xbe\xb2\xe2\xe0\xbb\x8f\xff\xf2\x0e\x44\x75\x3a\x33\xe2\x2e\x67\xc3\x0d\x52\xaf\xb8\x20\xe5\x34\x9d\x21\x77\xe6\xc7\xe6\x2a\x4b\x11\x36\xa1\xa6\xa3\x08\xa1\xc4\xfc\x36\x7e\x8d\xf4\x39\x6e\x69\x29\xac\x69\x1c\x84\x14\xf2\x65\x0e\x7d\xaf\x0b\x1c\x47\xa9\xe0\xeb\x32\x8f\x70\x94\xa5\x15\xb5\xa2\x40\x00\xf8\xb4\xc1\x40\xdb\x08\xb3\xea\x19\x9b\xa6\xb3\x99\x91\xbc\x81\x0a\xa5\xe6\xa2\x68\x22\x0b\x57\xe8\x62\x84\x1c\x2e\x10\x4b\x43\x7c\xa1\x4e\x45\x34\x07\xaf\x8d\x3b\x8a\x38\xd3\x3c\x4b\x6c\xbe\x67\xfa\xf8\xac\x7d\x37\x49\xcb\xbb\x19\xab\xe5\x36\x63\x75\x9b\x5f\x5a\x22\x0b\x47\x1e\xbf\x94\x05\xfc\x52\x41\x0c\x14\x95\xe0\x26\xbf\xf6\x25\x61\x02\xe4\x5f\xf8\x9f\x6b\x2a\x6e\x92\x80\x59\x5a\x1a\x59\x18\xf3\x0c\x5d\xae\x7d\xd6\xc0\xd2\x46\xfc\x6b\xf4\xd6\xa0\x1a\xcc\x8d\x48\xc8\x67\x8d\x32\x2c\x27\xea\x24\x4e\xf4\xa9\x8c\xce\x62\x39\xe1\x1e\x67\x34\xd1\x2f\x6f\x04\xbd\x66\x7c\x5d\xc5\x48\xe1\x04\xc1\x71\xee\xb0\x53\x8d\x92\xa2\x24\xde\xd7\x4e\x69\x03\xf3\x39\x26\x6c\x42\x3d\xc5\x00\x1f\x37\x43\x08\xe1\xff\x78\x4f\x04\x4c\x77\x7b\xff\x05\x17\x10\xaa\x6b\x39\x9d\xab\x13\xae\x89\xe4\xa2\xc5\x02\xaa\x23\x3a\x36\x88\x3a\x80\x20\xcb\x5f\xbc\x4f\xbb\xa4\xe1\xff\x0e\x72\x86\x81\xb6\xb4\xf0\x2f\x14\xfc\x8b\xc1\x00\xb5\x31\xd3\x08\xc3\xf9\x68\x64\x32\x25\xd8\x04\x35\xa8\xbc\xa2\x97\xb4\x24\x03\x04\x91\x7b\xc9\x1f\x18\xc5\x8f\x6a\x14\xeb\x95\xda\x88\x8f\x0c\x10\xb7\xc6\xb1\x8a\x69\xe8\x79\xce\x5d\xe4\x01\x8b\x29\xac\x16\x64\x41\x39\xff\x5c\xfe\x9b\x15\x7b\xe1\xb5\xc3\x8a\x3d\x0e\xb2\x7c\xa7\x0f\xf4\x97\xdb\x48\x41\xeb\xc8\x57\x39\x60\xe1\xdb\x89\xf6\x8a\xc1\x3b\xbe\x81\xff\x3c\x77\xb5\xc4\x01\xcb\xde\xef\xd1\xa3\xe6\x1e\x7a\xcf\xf7\x77\x69\xe7\x5d\xb4\xbf\x63\xe6\xaa\x91\x5b\xf0\x1a\x8a\x0e\xa4\xdf\x93\x9f\x1a\x19\xd6\xde\x9e\x6c\xf9\xd9\x0b\x7a\xb2\x23\x31\xc0\xe1\x6c\x04\xb9\xa0\x0f\x8c\x40\x60\x08\x77\xdc\x95\x98\xa9\x83\xd8\xc8\xee\x58\x87\x91\x12\x97\x84\xd7\xad\xca\xff\xc2\x8a\x82\x06\x5c\xcf\x12\x24\xfd\xdb\xdc\x00\xcc\x2c\x12\x02\xc3\xfc\xbb\xe5\xe3\xfc\xc4\xe4\xe2\x3f\x61\xc2\xdb\x88\xe1\x7f\x08\x50\x34\x9e\x6e\x5e\x65\x00\x38\x3f\xc3\x38\x74\x3d\x3f\xa7\x65\xbb\xff\xda\x77\x2e\xdd\x35\x69\x10\x7f\xb2\x75\xb1\xb6\x7b\xad\x73\x1a\x86\xc8\x2a\xad\xd4\x69\xa0\xd0\x0c\x68\xfa\x4f\x3b\xf0\xb7\xa6\x63\x8f\xa1\x63\x0b\xfe\xf9\x79\xf9\x98\x96\xdb\xc2\x4e\x3b\xb3\x5a\xe1\xee\x31\xb8\x47\xd5\xf2\x7c\x4f\xff\x21\x14\xf4\x3b\x75\x09\xe7\x68\x75\xb0\xa5\x91\x10\xa8\x52\x1c\x1e\x85\x04\xb1\x42\x8e\x0c\x17\xd9\x49\x98\xab\x1f\x57\x9f\x53\xb1\xcd\xa9\xf9\xb7\xce\xdd\xdd\xd1\x12\x19\x44\x4b\xec\x78\xc4\xec\x45\x70\x6d\xa9\x95\x08\x44\x85\x01\xe1\x0b\x2e\xa7\x2c\xff\x17\x7c\x82\x6c\x8d\xc9\xf1\x25\x9b\x51\xa9\xa4\xff\xf9\xe3\x6a\x71\x43\xee\x1a\x56\x7f\xcf\xb0\x14\x65\x70\xac\x06\xa3\xf6\xd2\x8f\x65\xbe\x0d\x38\x3e\xf5\x1d\x10\x14\x61\x31\x7b\xad\xef\x2a\x1e\xe8\xa5\x35\xe5\x1e\x15\xc5\xce\x16\x61\x62\x2c\x12\xd4\x0a\xf2\xd9\x46\x4b\xa4\x46\x8d\x14\x4e\x07\xdc\x38\x75\x05\x7b\x38\xc7\x19\x2a\x43\xb4\x5f\x58\x14\x03\x10\x7f\x61\x94\xed\xb0\xf0\xd9\x6d\xe7\x44\x36\x7e\x2f\x15\x29\x66\xbe\x65\x0b\xf7\x25\x5b\xf4\x7a\xac\xdf\xdf\xd2\xf5\x30\xe7\x5e\x38\x53\x53\x18\x30\x2f\xf2\xa8\xf5\x61\x06\x17\x79\x69\x3f\xc1\x46\x1e\x45\x33\x62\x7e\xfe\xda\x7c\x7e\x54\x14\x91\x66\xa1\x3c\xb7\xb3\xf7\xbc\xcc\x04\xf8\x00\x4a\x8b\x76\xbd\xbb\xf2\xbc\xa5\xd7\x54\x54\xd4\xd4\xf2\x83\xca\x61\x8e\xa3\x08\xcb\xe1\xb3\x63\x5d\xe0\x15\x44\xaa\x6c\xf8\x10\x6e\xad\xd4\xf2\x46\x98\x0e\x4b\x2e\x96\x69\xc1\xfe\x45\xff\x02\xca\xb0\xe0\x73\x1b\x61\xa3\xf9\x1b\xf9\x1a\xbf\xd3\x59\xe0\x87\x27\xd0\xd1\x35\x88\xb2\x51\x21\x4a\x1a\xcd\xde\xda\xaf\xed\x7f\xa3\xcb\x4b\x2a\x06\x79\x2a\xd3\xc3\x34\x4f\x57\x92\x8a\xc3\xc1\x4a\xb0\x6b\xd0\xaa\x9e\x46\x46\x4b\x1a\xe2\x02\x82\x1e\x73\x84\x23\x5d\x84\x95\x73\xb5\x24\x2d\xb7\x5d\xc6\x79\xf6\x96\xb6\x70\x49\x9c\x3e\x30\x83\xc8\x69\x56\xb7\x29\x91\x98\x91\xc3\x0f\x62\xf2\xa1\x3c\x34\xb2\xdd\xc3\x0f\xd3\x0f\xb3\x3f\x1c\xfa\x6a\xbe\x36\x26\x18\x67\x79\x77\x74\x40\x20\x64\x9a\x36\x25\x87\x9f\x82\x40\xe0\x4f\xb2\x43\x87\x5a\x4c\x44\x8c\x12\x81\xe9\xd4\x7a\x7a\x99\x91\x5f\xfe\x70\x4b\xcb\x0c\xdc\x48\x3d\x7f\x6c\x75\xec\xd5\x34\x93\x9d\x1f\x04\xaa\x7f\xb1\x6e\xce\x5d\xc8\xc3\x82\x3c\x55\xd3\x30\x7c\xc9\xbe\x30\x1b\xcf\x31\xbe\xbd\x5c\xb3\x22\xff\xf1\xed\x0b\x6b\x1d\x88\x19\xba\xad\x3e\x33\xe3\x2c\x0f\xc8\x3a\xb5\xd2\x6f\x69\xc6\x45\x1e\x25\x96\x7b\xb5\x60\xd5\x70\x2d\x8a\x67\x5c\x3c\x73\x5f\x63\x89\xa9\x22\x89\x5c\x21\x05\x9f\x7b\x4a\x3c\x2a\x8a\xb8\xc9\x0c\xbb\x75\x57\xd6\xbf\xaa\x0f\x31\xc3\xd4\xcf\xb8\xbf\x2f\x7f\x6d\x3e\x7b\x85\x34\x1f\xa7\xdc\xd9\xc0\x33\xf3\x6d\xab\xef\x3f\xa4\xd5\x5d\x65\xcc\xe7\xad\x62\xdf\xd3\x82\x97\x57\xd5\x7b\xbe\xaf\xa0\xcb\x10\x14\x35\xd1\x35\xf7\x0e\xec\xb1\xf7\xdd\x9b\xb7\x35\xf8\x62\xdd\x5f\xec\x47\xef\x7b\xd0\x9e\xc6\x2d\xf7\x17\x7c\xe2\x7d\xb7\x05\x2d\xf8\xfb\xb9\x3f\xfa\xe0\xa3\xce\xb8\x30\x41\x63\xa8\xf6\x14\xd6\xe0\x77\x45\x25\x78\xd2\xc4\xd1\x82\x57\x52\x2b\x2f\x99\x86\xdf\x08\x3a\x67\x5f\x1a\x21\xb7\x76\xf8\x04\x5f\x57\xa9\x5c\x3c\xe3\xe2\xfd\xcd\x8a\xc6\x14\x21\x70\xb0\x62\xf8\xa7\xd2\xbd\xec\xdc\x22\x10\x5f\xa0\x74\x5c\x4e\xae\x2e\x05\xed\x1b\x25\x8e\x0e\x23\x84\x0f\x58\xaf\x57\xf6\x7a\xd1\x61\x74\x40\x48\x69\x35\x6c\x46\x48\xed\x57\x12\x1d\x46\xfd\x12\xe1\xb2\xc6\x5b\xc0\x6e\x36\xf8\xee\xd9\x90\x98\x22\xbf\x8c\x06\x77\xb9\x2f\x7b\x93\x59\x03\xfc\x1d\x59\x65\x98\xb5\xe9\xcc\xd7\x0b\x38\x58\xbf\xbb\xeb\x41\x7e\x0b\xe7\xbf\x69\xb4\x0d\x8c\x7f\x73\xb1\x16\x80\x7f\xc3\x4c\x05\xb0\xfd\xcd\xed\x04\x80\xfd\x6d\xa5\x0c\x54\xfa\x51\x31\x77\x03\x72\xb9\xf5\xa1\x4c\x97\x54\x33\x1f\x34\xd9\x65\xc1\x4c\x6c\x36\xe6\x06\x70\x2e\xd1\xfe\xf1\xe1\xf0\xc3\xa1\x89\x8d\x40\xd1\x66\x73\xb8\x90\x72\x15\x57\x68\x92\x04\x1f\x26\x34\x89\x0e\x23\xe2\x85\x2c\x1e\xa1\xc9\x2f\x7f\xb8\x15\xf5\x1f\x6e\x69\xfd\x4b\xf2\xcb\x1f\x6e\x65\x7d\x08\xbf\x4d\x60\xce\xe9\xcc\xe9\x8c\xf4\x7a\xcc\xed\x9a\xd2\xbd\x94\x08\xb3\x66\x3f\xd4\x38\xdc\x6a\x06\xf1\xd2\x23\x33\x21\xf9\xb2\x74\x49\xd5\x6d\xef\x45\x16\x15\xc3\x55\xb1\x16\x80\x03\x28\x08\x02\x85\xd7\xef\xcd\x54\xc2\x85\x43\x0a\xb0\x8d\x92\x54\x2c\x59\x49\xbf\xe7\xf9\xcd\x1b\xc1\x97\xac\xa2\x2d\x2f\x91\xba\xbe\x18\x54\x61\xb4\x77\x22\xdd\xf4\xdb\x77\x7f\x7b\x33\x14\xb4\xe2\xc5\x35\x8d\x05\x1a\x6a\xdf\xa4\x94\x5c\x50\x84\x86\x72\x41\x55\x91\x8b\xf6\xa5\x7e\xad\x1d\xa1\x6b\xb2\xf6\x80\x0e\xf9\x27\xe7\xa7\xb1\x89\x04\x2d\x53\xb9\xae\x70\x4a\x22\x35\xad\x42\xbb\x0b\x53\xbf\x70\x45\x20\x9e\x19\xe1\x9b\xcd\xd1\xe8\xbe\xfe\x11\xfd\xf0\xf4\xd1\x13\x95\x51\x0e\x97\x54\x2e\x78\xee\x6a\xde\x6c\x0e\xc0\x2e\x5a\x87\x53\x66\xe4\xcf\xef\x5e\xbf\x32\xee\x67\x85\x75\xa5\xaa\x5d\x99\x1d\xc4\x85\xef\xe9\xee\xdd\x4d\x29\xd3\x2f\xe0\x5d\xcf\x29\x2a\x14\x9d\x62\xb8\x4a\x6f\x0a\x9e\xe6\x44\x9d\x9f\x85\x33\x19\xd9\x6c\x58\x5d\x9b\xf1\x19\x51\x4d\x8d\xe9\x70\x4e\x65\xb6\x68\x05\x78\xd7\x74\x27\x71\x16\xc1\x95\x26\xfe\xc1\x31\x52\x1c\x41\x89\x08\xd9\x60\x88\xa5\x4b\xb1\x78\x4e\xa7\x22\x31\x22\x17\x54\xeb\x77\xb2\x79\xdc\xe0\x2a\xce\xc3\x13\x14\xd9\xf6\x11\x98\x81\x57\xf2\xae\xba\x10\xbb\x72\x41\xbb\xbf\x40\xbe\x5f\x8c\x9d\x5a\x97\x8b\x20\xf5\xaa\xe0\x97\x69\x31\xec\x3e\x61\x79\xf7\x86\xaf\xbb\x4b\x9a\x96\x5d\xc9\xf5\x1c\x15\x85\xce\xab\x51\x38\x53\x02\x8c\xc2\x26\x11\x32\x5d\x84\xd4\xba\x19\xa5\x9a\x10\x98\xf9\xb7\xb4\x5a\xf1\xb2\xa2\x3f\xd0\x34\xa7\xa2\xda\x41\x50\xbc\x06\x4b\x3a\x8b\x0d\x69\x53\xd7\xc0\x6f\x9f\xec\xf8\x84\x86\x0e\xd6\xcd\xac\x54\x49\xec\x94\x2a\x71\x22\xa6\x25\x70\xe5\x71\x45\x0e\xc6\x67\x69\xa3\x34\x97\x6a\xa1\xd1\xfd\x87\x0a\x9a\xfc\xc0\x8c\x29\x42\xb7\x15\x39\x18\x19\xa9\x8f\xea\xc2\x18\xd6\xce\xaa\xd8\x0d\xab\xf5\xa5\xb6\x68\x86\x80\xe3\x43\x29\x98\x22\x58\xd6\xc1\x97\xb4\x3f\xc6\xce\x48\xcb\x64\x01\x8f\x3e\x48\x4e\x8b\x90\x19\x37\x23\x6b\x2c\xa7\xc5\x8c\xac\xeb\xc6\x55\x3f\xf0\x38\x04\x83\x6d\xfc\xbc\x94\xfc\x87\xb4\x5a\x90\x70\x53\x81\xdd\x34\x20\xb5\x84\x80\x0a\x5a\x49\x6e\x59\x99\x15\xeb\x9c\x3e\xcf\x41\x89\xa2\xe3\xf4\x5b\x6d\x55\xe2\x19\xd0\x64\x4b\x9e\xd3\x02\x02\xbe\x74\x02\x68\x72\x98\x2f\xdb\x6e\xdd\x32\x9f\x6e\xeb\xc6\x08\x7b\x2b\x53\xcc\x4d\xcf\xb0\xe5\xb6\xfb\xb9\x80\xb9\x1e\x0c\x0d\x6e\xce\x37\xa9\x48\x97\xbb\x40\xa2\x39\x30\x1d\x3a\x4f\x3d\x7b\x71\x5c\xe1\x42\xf3\xd0\xd8\x3c\xd6\x5e\x38\x58\x05\x7f\xe3\x52\xbb\xec\x61\xb0\xf0\x4e\x1c\xc3\xce\x2b\xd0\x00\xe1\x26\xf0\x0d\x9a\xe8\xd8\x26\xe5\x94\xcd\x50\x42\x63\xa1\x68\xc1\x7e\xbc\x65\xd4\xa9\xbe\x4f\x58\x12\x45\x48\xd1\x84\x3a\xbb\xb3\x4b\xdb\xe6\xb6\x46\x53\x5d\x41\x57\x83\xf4\x4c\x1d\x52\x06\xba\x1b\x2f\x21\x92\xbb\x23\xbc\x00\xaf\xfa\xb6\xcf\xea\x44\xea\x96\xc8\xf6\xa6\x30\x4d\x16\xb6\x49\xd3\xe5\xa6\x03\xbf\x65\xe4\xe0\x5c\x6d\xca\x66\xe0\x69\x57\xff\xba\x4e\x8b\x35\xf5\xac\xca\x5d\xfb\x85\x69\xb5\x71\x59\x19\x45\x98\x22\x73\x41\xf5\x22\xe4\x79\xd1\x3d\x1a\x1d\x5e\xe1\xa8\xaf\x2e\x2d\x33\x52\x4d\x24\x3a\xcf\x31\x14\x47\x1f\x3f\xd2\xea\x25\x1c\x3b\x11\xbe\x85\x56\x9d\xad\xee\x5d\x14\x25\x35\xe4\xaa\x47\x4e\xfa\xd9\x2a\xc9\x05\x6d\xc8\xce\x16\x3d\xb9\xcf\xd5\xaa\x71\x85\xea\xb6\x8f\x84\x30\xda\xd1\x23\xdd\x66\xd7\x71\x85\xba\xf3\x94\x15\x34\x8f\x8c\x97\x4e\x56\x99\x1c\xda\xbd\xfa\xc1\xa8\xe3\xa3\x21\x90\xa8\xd7\x13\x90\x0e\x89\x3a\x10\x9e\xdb\xf8\xaf\xcf\x3e\x11\xe3\xa4\xc8\xb8\xfc\xa4\xda\x23\x30\xe3\x25\x11\xfe\x9b\x09\x4d\xcb\x0a\x0a\x21\x62\x84\xfb\xa9\x3f\x14\xac\xa4\xaf\xd6\xaa\x45\x13\x31\x5b\xbf\xe8\x8f\xc6\x95\x37\x11\xf6\x97\x4e\x2e\x75\x45\xa5\xab\xa4\xb4\x15\xe8\x1f\x66\x7c\x30\xd7\x15\xa1\x9b\xcd\xf4\x56\x32\x59\xd0\xc4\x4d\xc9\x53\xbd\x0c\x39\x95\x29\x2b\x12\x59\xcf\xea\xdf\xba\xd0\xfb\x21\x43\x37\xab\xce\x8f\xf7\x1c\xa0\x38\xc2\xb7\xb4\x5c\x2f\xa9\x48\x2f\x0b\x55\x18\x5f\x51\xb9\xed\x8c\xa6\x2b\x87\x5b\x25\xeb\xaf\xb7\x03\xf9\xde\xc3\x71\xf5\x1b\xdb\xf1\x4a\xaa\x76\xe8\xf0\x1d\x15\xd7\x16\x18\xe8\xf0\x31\x2f\xe7\x05\xcb\xa4\x7d\x7f\xc5\xe5\x33\xbe\x2e\x73\xfb\xfe\x8c\x8b\x4b\x96\xe7\xb4\xb4\x09\x3f\x96\xe9\x5a\x2e\xb8\x60\xff\xa2\x2e\xd3\xa3\x4b\x2e\x5c\x0d\x26\x1c\x85\x7d\x7d\x5e\x5e\xa7\x05\x73\x59\xad\xe9\xb3\x86\x62\xc3\x2a\x11\x7e\x14\x3d\xba\xed\x9b\x4f\xa3\xce\xb7\xd6\xf9\xbb\xa8\x49\xb3\x09\x26\xb7\x75\xe3\x62\x83\x03\x75\xbb\xed\x8c\x52\x43\x7c\xe8\xbe\x83\x7a\x50\x2f\x70\xb9\xd9\x48\x54\x7b\xf8\xa8\x3d\xf4\x5a\x77\x3c\x6d\xbe\x20\x2c\x8c\x29\x00\x61\x0a\x27\x16\x75\x33\xbc\x12\xef\xaf\xc2\xdf\x78\x41\x65\xcd\x41\xab\x08\x51\xb7\xb3\x0d\x14\x07\x8d\x19\x1f\x71\x3c\x16\x38\x7a\xbf\xa0\x5d\x73\xf0\x74\x05\xfd\x15\xac\xf7\x00\xeb\xc9\xf8\x72\xc9\x64\xf7\x92\x66\xa9\x3a\x50\x98\xec\x7e\x4e\xab\x2e\xd3\x0b\x02\xcc\xf9\x60\x71\x52\x9c\x6e\x75\xc1\xcf\x10\x19\x53\xdd\xad\x46\x9b\x93\x47\xb2\x25\xcd\xbb\x7c\x2d\xa1\xf6\x00\x12\x2a\x5c\x6d\xd5\xee\x67\x88\x0c\x97\xe9\x8e\xda\x55\xef\x53\x05\x6a\x54\xf7\xde\x03\xbb\x02\x17\xdb\xd3\xe7\x3e\x47\xc6\x47\xe6\x1d\x75\xb3\xaa\xbb\xf6\x20\x1b\xea\xdf\x06\xf5\x35\x5e\x6f\x35\xb3\x95\x4b\xb7\x96\x7d\xa5\xb5\xb9\xdd\x58\xd0\x54\x6b\x9b\x65\x38\xdb\x6a\x27\xcc\x12\x19\x33\x8e\xad\x46\x32\xbe\x2e\xf2\x6e\x80\x3f\x2b\xba\x67\x2d\x32\x2d\x06\x0e\x37\x78\x8e\xf3\xad\x86\x82\x1c\x91\x89\xef\x72\xc7\x60\xf4\x75\xd3\xcd\xd7\x54\xa1\xdd\x69\x37\x33\x47\x0a\x34\x17\x9e\x2f\x0b\xbc\xd8\x6a\x2e\xc8\xe1\x34\x5d\xbe\xbd\xb9\x0a\xce\xb3\xae\x8d\x69\x16\x1e\x70\x73\x3c\xdf\x6a\xd0\xfb\x1e\x7d\xed\x22\x07\x0b\xa9\xfd\x17\xf9\x16\x07\xf9\xee\xab\xfc\xf7\xbb\x7d\x02\xe2\xf8\x9b\x6f\x84\xa0\x94\xbe\x0d\x76\x9c\xc7\x16\x35\x30\x8d\xeb\x53\x27\xb6\x8c\xf5\x77\x0e\x2d\x4f\xa2\x81\x65\x71\xe3\x86\xc9\xab\x7d\xa9\x19\xfe\xad\x7e\xd1\xfa\x2a\xcd\x4f\x3f\xe3\x15\x2d\xd5\xc2\xd2\xe7\xf9\x33\x2e\xfc\x0f\x0e\xdd\x4e\x60\x22\xc9\x85\x87\x81\xc7\x12\x61\x9f\xe7\xa9\x4b\xf8\xec\x4c\x9d\xe2\xf3\x29\x75\x4a\xc6\xd3\x82\x56\x19\xd5\x9c\xb8\x7f\xae\x69\x25\x2b\x35\x63\x96\xc9\x6b\x3a\x25\xf8\x7a\xa5\x8b\x55\x1e\xe7\xcb\xf6\x64\x2a\x67\xb8\x5a\xa8\x7d\xf6\x96\x2a\x1a\xdb\x34\xa0\x68\xc9\x83\x71\xf0\x45\x4d\x81\x29\x74\xe0\x5c\x94\xeb\x0c\xdf\xa7\xd9\xa7\x2b\xd0\x7f\xda\xae\x64\xb4\x27\x0f\x54\x07\x19\x80\x43\x62\xd7\x4e\x7c\x0d\x8a\x7f\xad\x78\x39\x48\x57\x2c\x04\xe4\xb6\x58\xe3\x2b\xa0\xbd\xfb\xb3\xa0\x95\xdc\x16\x88\xa8\xfb\xf5\x3f\x06\xf9\x3b\x21\x93\x91\xd2\x26\xdf\x09\x96\xcd\x78\x3f\x9a\xcf\x8f\x79\x29\x69\x29\xdf\xdf\xac\x68\x12\xa5\x2b\xad\x4a\xcd\x78\x79\x78\x5d\xe6\xc3\x74\xc5\xfa\x3a\x4a\x51\xfa\x6b\xfa\x45\x07\x71\xa8\x42\x11\x8c\x93\xbb\xdc\x1a\x0a\xb5\xd4\x8c\xe5\x8f\xd5\x1a\x02\x0d\xe2\xc0\xdb\x21\x08\x45\xa9\xa8\x86\x8f\xb2\x8c\xae\x24\x69\x27\x6c\x36\x77\xf4\xa1\xac\xf7\x40\xe9\xd8\x41\xa9\x47\x4b\x6b\x19\xae\xea\x4a\xc3\x7a\x6c\x48\x65\x10\xc9\x34\x12\x8c\x86\x2e\x52\x05\xd4\x60\x63\x86\xa3\x3f\x3d\x7d\x1f\xe1\x5b\xb5\xaa\xc9\xed\x9c\x15\x92\x8a\xe4\x96\xe5\x89\x30\x44\x13\x8e\x40\x13\x6e\x27\x67\x4f\x84\x9c\xbd\x3c\xad\x16\x54\x04\xac\x3d\x08\x63\xec\x98\x7b\x08\x2c\xae\xd7\x6d\xde\xab\x1b\x48\x3c\xc2\x62\x07\x15\x6f\x32\x59\x5e\xff\xce\x91\x96\x43\x96\xab\xc1\x06\x42\x8d\x1d\x03\xe6\x38\x7a\xf3\xe8\xfd\xe3\x1f\xec\x90\x59\x6d\xf8\x8d\x16\xde\xd8\xd7\x76\x13\x80\xfc\xd7\xae\x84\x3d\xdb\xc5\x10\x86\xbf\xe9\x12\xf9\x7d\xb6\x13\x70\xb9\x0c\x6c\x93\x7c\xdf\xfe\x8a\xd6\x36\x3e\x47\xc3\xa5\xfb\xf5\xaf\x46\x51\x70\xd7\xc7\x52\x4d\xea\x96\xe4\xd2\xad\x68\x47\x73\x33\xe9\x50\xbb\xaa\xb2\x1c\x35\xe3\xaa\x7a\x5d\x61\xb7\x35\x60\x07\x19\x46\x27\x77\x77\x96\xc7\xbd\x35\x0c\xdf\xa1\x46\x71\x63\xee\x02\x3f\xb1\x5e\x8f\xb5\xa8\xdc\xc9\xfe\x72\x0c\x25\x2c\x08\x93\x8a\xfd\x00\xe0\xda\x68\x1a\x56\xe9\xfd\x42\xf0\xcf\xa5\xcf\x6a\x85\xaa\x7b\xbd\x28\x3a\x20\x44\x22\x4e\x82\x8c\x8d\xcf\x1f\x13\x7a\x2f\x22\xc4\xc4\xa6\x78\x07\x43\x45\x1c\xe2\xe2\x89\x00\x2d\x6e\x4a\x01\x62\xdb\x2e\xb3\xd9\x8c\x20\xa5\xb2\x35\x6c\x59\x7d\xde\x6a\x3e\x72\x52\xe2\xb5\x28\x12\x86\xbd\x1e\x25\xbc\x26\x14\xdf\xea\xb2\x49\x5a\x13\x89\x2b\xf2\x15\x1a\xf9\x17\x73\xdc\x18\x2c\x2b\xe9\xfe\xe1\xb6\xac\xbb\x7f\xb8\x65\xea\xc1\x37\x9b\x28\xaa\x7f\xb1\xcc\x43\x57\xb1\xe3\x78\xe9\xf1\x35\x78\x77\x5c\xa1\x1a\xd4\x17\xf4\x30\x15\x2c\xf0\x6d\x58\xb0\xc3\x33\xca\x24\x00\x0b\xe0\x9b\xaa\x19\x0a\x2e\x2d\x68\xa4\xe8\x96\x93\xd4\x2e\x3d\xf7\x43\xc7\xd2\xc0\xdb\xf4\xba\x4a\x1c\x77\xbe\x99\xd0\x84\x7a\xb3\x8b\x4d\x73\x49\x16\x53\xdb\xb4\x4f\x3c\xae\xbf\xb5\x4a\x9d\xf6\x9e\x7e\x91\xae\xca\x78\x84\xcb\x9d\x5c\x64\xa4\x15\xc3\x1e\x15\x45\xeb\x43\x8c\xfc\xb6\x3d\x27\x01\x0d\xf3\x12\xdc\xc5\xce\xb9\x78\x9a\x66\x8b\x18\x48\x5d\x72\x01\x7e\xe0\x29\xc2\xb2\x29\x9b\x9b\xf0\x31\x54\x51\x9c\x39\x2d\x25\x4b\x8b\x8a\x44\x55\xba\xa4\x03\x2e\xd8\x95\xc2\x18\x29\x78\x64\x47\x0a\xf2\xd4\xf9\x0f\x22\x21\x0d\x4a\x9e\x94\xc2\x26\x41\x6d\xe6\xcc\xf9\x44\x6f\xaa\xd8\x94\xb6\xbc\x62\xa7\x09\xb6\x16\x85\x73\x2a\x10\x4d\x22\x74\x31\x18\x4f\xa2\x5e\x94\x44\x93\xa8\x03\x5f\xfb\x04\x44\x4c\x7f\xb8\x85\xf9\xd9\xc5\x52\x45\xb6\xf2\xfa\x97\x5a\x87\x7d\xfa\x37\x38\x93\xba\x86\x09\x85\xf0\xe9\x5a\x96\xa2\x79\xdc\x6c\x7e\x63\xbf\x26\xe6\xab\x7e\x75\x53\x5c\x6b\x7a\x47\xb6\x11\x8d\x16\xf6\x8c\x77\x22\x1e\xfa\x6a\xf8\x2a\xd2\xa1\x2e\xfa\xb3\x6e\xb6\x50\xe0\x21\xc9\x5a\xce\x07\x0f\x23\x3c\x4f\x2b\x79\xc9\xb9\x4c\xf4\xd9\x95\xf1\xe5\x6a\x2d\x69\x1e\xdf\x5e\x51\x19\xb7\xc4\x8c\x36\xef\x24\x7c\x4d\xc2\xd7\x46\xa0\xf8\xfa\x73\x49\x85\x8e\x40\x39\x2c\x38\xff\xb4\x5e\xc5\x91\xa2\x9b\x58\x46\x13\x9b\x3b\x42\x35\xae\xa8\xdc\x21\x3e\x75\xf5\x49\x45\x33\xac\x2b\xfa\x4c\xdd\x25\xed\x7e\xfa\x8a\x39\x5a\x28\xb4\xb3\x79\x23\x84\x7b\x0b\x21\x06\x8d\x1a\x5b\xa4\x48\x46\x76\x95\xd0\xf2\x9a\x09\x5e\x2e\x21\x96\xba\x59\x91\x83\x83\x18\xc0\x1e\x2a\x7b\xfa\xea\x6f\xbd\x1e\x44\x66\x6a\x12\x86\x1f\xff\xfc\xd7\x1f\x9f\xbe\xfd\xf9\xe3\xf3\x57\xef\x9f\xfe\xe9\xed\xa3\xf7\xcf\x5f\xbf\x82\x50\x1f\xbd\xde\x01\xdc\xe5\x15\x17\xd2\x03\xb0\x2d\xe9\x8d\x86\x68\x5f\xe7\x1a\x18\xf4\xe7\x47\xce\x54\xc9\x73\xc7\x7e\x5b\x83\x0b\x15\x6d\x8c\x6f\xcd\x1a\xc1\x9e\xb1\x9c\xb2\x29\x9f\xcd\x08\xd5\x7f\xdd\x99\x78\x37\x3a\xe7\xcb\x92\x7f\x13\x42\x67\x31\x9c\x00\x29\xd2\xf2\xff\xf2\xab\x78\x1e\x57\xf8\xdc\xbc\xd1\x2c\xd8\xdd\xb6\xad\xed\x6e\xbc\x4b\x11\x4c\xa6\x4f\xe0\x98\xc3\x93\x17\xab\xa3\x9d\x95\x19\x25\x96\x57\x6b\x31\x30\xaf\x2b\x0a\xff\xd2\x64\x61\x20\x76\xfd\x6a\x8b\xa0\x66\xaa\x35\x7f\x3c\xd4\x5b\xf3\xad\xc3\x05\x6f\xd4\x40\xda\x90\x20\x90\xdf\xaf\x32\xe8\x97\x70\xfd\x0a\xc5\xfd\xbf\xb5\x77\x66\x9d\xfe\xf3\xfa\xf8\x9f\x4f\x14\xb0\xbc\x4a\x44\x6d\xdb\x0a\x74\x3a\xfc\x68\xe9\x2c\x07\xc3\x77\xd7\x8e\x03\x84\xb6\x86\x8e\x61\xfb\xbb\xbe\x71\xcc\xb0\xc4\x81\xde\x54\x30\x68\xa1\xbb\x63\xda\x6f\xa9\x87\xfc\xde\x3d\x68\x54\xb0\xf6\xf4\x21\x6b\xe9\x9a\x60\xf1\xf5\x19\x07\x78\x10\x38\x54\xd4\x52\xfb\x2a\xbc\x06\x43\x82\x47\xec\x5e\x99\x37\xaf\xdf\x85\xfb\x78\x8b\x9c\x12\x1e\x39\xb5\xbf\x76\x7c\x0b\x0e\x03\x85\x9a\xb5\xf4\x8e\xbe\x73\xd5\xf1\xaf\x51\x55\x29\x8e\xde\xfc\x18\xee\xe9\x7c\x87\xae\x8c\x61\xf7\x0f\x59\xbe\x5d\xc5\x1d\xb3\xa7\x7a\x10\xe8\x9c\x21\x1c\x3d\x79\xfa\xe2\xe9\xfb\xa7\x6a\x41\x3e\xaa\xab\x7d\xf5\xfc\xc9\x33\xc1\x97\x6d\xd5\x31\x7c\xd7\xaa\x00\xc0\x48\x64\xc4\xf2\xa0\xce\xc5\x49\xe0\x30\x01\xbc\x1b\x34\x9d\xcd\xe9\x96\x86\x18\x47\x84\x90\x74\x12\xba\x59\x88\xa2\x24\x16\x84\xe3\x92\x44\x13\x96\x93\xa8\x9f\xe2\x5d\xea\x0f\x06\x65\x69\xb0\x18\x5a\xe6\xd5\x4f\x4c\x2e\x26\x03\x1d\x53\xdc\xa2\x52\x25\x76\xee\x23\xac\x74\x14\x25\xc2\x65\x8f\x4b\x88\x0a\x17\xf6\x21\x14\xf9\x3b\x3f\x39\x4d\x54\x24\x84\x5a\x9a\x3b\xcb\xf4\xcb\x8f\x6f\x5f\xbc\xd0\xd1\x15\x8e\x46\xf7\x1e\xee\xe3\x83\xf9\x32\x15\x85\xf2\xbf\x4c\x57\x58\x1f\x89\x76\xba\xfd\xaa\x3a\xd2\xa1\xac\x92\x5c\x38\xa7\xe5\xbb\x56\xad\x03\xa1\x51\x63\x06\xfe\x8a\x14\x2e\xc2\xf0\x74\x86\xb0\xd6\x89\x62\x26\x62\x9c\x44\xb5\xf5\x38\xeb\x29\x27\x05\x6d\xc4\x6d\x77\xb6\x3a\xfb\x08\xa7\xbb\x1b\x9e\x8e\x66\x48\xd1\x46\xd3\xe6\xda\x6e\x3a\x4d\x4d\xa7\x25\xd9\xa1\x20\x48\x87\x2c\x77\xde\x04\x58\xc7\xce\x6e\x9f\xf7\x25\x38\x7a\x8c\x55\xab\x95\xee\xf8\x74\x86\x10\xe6\x7d\x22\x0d\x03\xa9\x72\x4b\xd1\xa9\xa6\xa5\x89\xfb\x0a\xa1\xea\xab\x1a\xc5\x12\x33\x1c\xf5\x58\x5e\x7d\x77\xff\xfb\xef\xee\x3f\x21\x91\x53\xcc\xf0\x3a\xc6\x6d\x21\x55\x8a\xd7\xb8\x45\x59\x39\xda\x96\xcd\x63\x23\x0b\x7e\xb7\xce\x32\x5a\x19\xb2\xb7\x09\x4e\xdb\x69\x72\x18\x91\x4f\x3b\x07\x90\x76\xbe\x38\x28\x2e\x8d\x84\xd1\xf9\xff\x05\x19\xad\xd5\xe5\x86\x3c\x61\x4f\x90\x3d\x67\x2c\xd3\x37\x7f\x02\x54\x27\xcd\x5f\x6a\xc9\x9e\xeb\x70\xc7\xe8\x10\x53\xad\x43\xdc\xbd\x37\x1a\x27\x41\x47\xb6\x84\x2e\x31\xc7\xa9\xd6\x4e\xed\xde\x1b\x1d\x87\x99\x43\xc9\x49\x90\xf3\x5e\x98\x33\x10\x7d\x04\x19\x4f\xc3\x8c\x81\xd0\x42\x67\xb4\x0a\xae\x8a\xf0\xba\x20\xf7\x47\xa3\x70\xea\x3c\xa9\x03\xe4\xaf\x83\xaf\xa6\xb0\xfe\x82\xdd\x32\x25\x94\x5c\xd0\x0b\x72\x34\x1a\xf5\x7a\xf4\xfc\x78\x34\xda\x6c\x8e\x41\xa9\x8c\x62\xb7\x50\x2a\xcf\xbd\xa3\x23\x48\x84\x83\xd4\xbf\x02\x0c\xea\x86\xb3\x2d\xe5\x42\x8b\xc6\x47\x08\xe7\xe4\x76\x2d\x8a\x84\x62\xc3\x4b\x90\x35\x5e\x10\x3e\xdc\x66\x86\xda\xcd\x91\x59\xba\x43\x55\x60\x30\xda\x78\x61\x14\xe9\x28\xb9\x88\x19\xa1\x18\x2e\x9f\x5d\x2a\x7b\xea\xfe\xc9\x11\x6a\xb2\xdf\x6a\x2b\x58\xfe\x69\xb3\xa1\x5b\xfc\x16\xa3\x1e\xd6\x66\x88\x35\xbb\xba\x88\x05\xea\x1c\x8d\x46\xa0\x13\xa5\x29\xf1\x5e\x4f\x6e\xd5\x33\x89\xb9\xcf\x51\x20\x12\x4b\x12\xa4\x58\x8d\x39\x94\xb4\x72\x96\x58\x91\xb6\x4d\x84\x7a\x07\xd4\xb2\x89\x8d\xaa\x67\x08\x3c\xd0\xc6\x1c\x53\xcc\xf4\x95\x9f\xa3\xad\x78\xd5\x2d\xa4\x05\x7a\x6f\xf2\xa4\x0e\xfe\x6d\x25\x39\xaa\x51\x02\x9a\x71\x5b\xfc\xac\xb6\x07\xb0\xc5\xb0\xd2\x30\x13\x44\x2b\x6b\x1a\xda\xd7\x81\xf5\xde\x0e\xa8\x5f\x39\xea\xe8\xa6\xc5\xda\x68\x3d\xc3\xb8\xa8\xca\x82\x17\x7a\x9a\xfc\xaa\xbf\xa9\x41\x89\x3a\x01\x77\x87\x34\xea\x94\xbb\x66\x59\x91\x8c\xf0\xf3\x3d\xfd\x22\x83\x19\xe7\xde\x64\xed\xed\xab\x84\xbe\xf2\xe1\x47\xd8\x1c\xe0\x7f\x2b\x7a\xf2\x2e\xe9\xbe\x7d\xfa\xee\xbd\x61\x82\xfd\x2f\xea\x93\x09\x45\x2c\x79\x37\xea\x53\x85\x56\xa8\x44\x0b\xdc\x14\xdd\x6a\x36\xa8\xc6\x55\xe0\x7b\xd9\xca\xa0\xa0\x98\x6f\x6b\x33\x42\xb6\x6e\xce\x69\x05\x52\xd9\x8a\xd2\xa5\x6a\xe4\x92\x76\x6d\x24\x64\x56\x76\x6f\xf8\x5a\x74\xd3\xd5\xaa\x51\x63\xe4\xd7\x54\x08\x96\x83\xd8\xfe\x9a\xa5\xdd\x5f\xd2\x3c\x7f\x2d\x5e\x9b\xd4\x77\x69\x99\x5f\xf2\x2f\x7f\x02\xdd\xc7\xea\x17\x88\x59\xb9\xa0\x5d\x4b\xa9\x1b\xa1\xe8\x24\x42\x9d\xb2\xe9\x70\xb0\x5d\x1d\x15\x0c\xfb\x54\x6b\x62\x1a\x0d\x4f\xa7\xbc\x18\x03\xcf\x06\x53\xd4\xf9\x7f\x4d\x47\xd3\xac\x83\xea\xee\xfe\x13\x6c\xd7\x71\x44\x51\xd2\x2e\x60\x67\x67\xc8\xaa\x67\x69\x25\xbf\x07\xa6\x87\x29\xdb\x5a\x4c\xc3\x49\x09\x13\xeb\x5d\xf2\x21\x2b\x02\x49\xab\x8a\x5d\x95\x71\xeb\x24\xc5\x0a\xaf\x53\x07\xaa\xb0\x62\xa3\x2d\xed\x6f\xcd\xfd\x8b\x50\xc7\x19\xfb\x94\x13\x61\xd9\x91\xad\xca\x6b\x85\x0b\x3b\x56\x65\xe2\x7e\x6e\x36\x71\x53\xe4\xd6\x29\x51\x8a\x61\xd6\xb0\xa0\x36\x1b\x3d\xa6\x6d\xe6\x54\x27\x60\xb6\xef\x9c\xe0\x58\x00\x97\xac\xd7\x03\x2a\x08\x90\x53\x35\x32\x88\x61\x67\xda\x9d\x46\xa6\xca\x81\xaa\x33\x9a\x59\x9f\x93\xf0\xc9\xf4\x63\x20\xcd\xa7\x78\xef\x37\xc2\x10\xc2\x82\xe4\x86\x46\x43\x28\xb9\xa3\xed\x70\x7a\x04\xbe\xf5\xc6\x9b\x00\xf3\x47\xb4\x58\xe6\x9a\xdb\xa7\xbe\x93\x48\xcb\xdb\xa8\x9e\xa4\x2f\x92\x48\xc3\x15\x6d\x5a\xa2\xb6\x25\xfd\x61\x0f\x27\xb1\xb1\x38\x19\x5e\x82\x33\xdf\x77\xb4\xcc\x03\x53\xeb\x90\x77\x6a\xd7\xcf\x61\x72\x82\x5c\x80\x23\x3b\x03\x6a\x9a\x21\x1c\x0b\xec\xb2\x4e\xc5\x0c\x02\x48\xd6\x6e\x56\xb0\x50\x5b\x93\x34\x60\xaa\x50\x59\x48\x43\x58\x98\x4d\xa3\x2d\x1e\xd4\xb9\xf4\x4d\x3b\x21\x54\xd6\xdf\x91\x59\xe8\xee\x69\x82\x25\xe3\x05\x98\xa0\x7d\x35\xb7\x36\x6f\x50\x07\x4b\xcb\x4a\xc1\x1c\x33\x86\x21\x4c\xeb\x5f\x40\x75\xfa\xf0\x1f\x0b\x29\x57\x55\xcb\x70\x01\x49\x71\x73\xeb\xe5\x3f\x3c\x74\x46\x0b\x46\x30\x50\xa2\xdb\xad\x43\xea\x67\xbe\xee\xa6\x82\x76\xd7\x15\x2b\xaf\x34\x78\x77\x9f\xa4\x32\xed\x7e\x66\x72\xd1\x2d\x79\x57\xf5\x6d\xfb\x18\xd6\x97\xc2\xb0\xfb\x7e\xc1\xaa\xee\x67\x56\x14\xdd\x54\x4a\xba\x5c\x49\x75\x64\xad\x2b\x0a\xc7\x15\x14\xe5\x73\xf8\x6d\xe7\xb0\x6b\xc6\x8c\xbb\x9f\x17\x2c\x5b\x74\x99\x3e\xf2\x35\x77\x73\x2d\x68\xde\x9d\x9b\x83\xd1\xc4\xf3\xf6\x6a\x61\x95\x2d\x3d\xec\xbe\x29\xa8\xc2\x3a\x2b\x2a\x5d\x53\x3f\x2d\x98\xa4\x05\xab\x64\x77\x65\xc4\x7d\x50\x97\xed\xb3\xc7\x39\x1d\xfe\x5a\x0d\x9b\x1e\xc1\x4c\x24\xdd\xa8\x5f\x5a\xe5\x4a\xe4\x34\xb6\x69\x8d\x77\xdc\xb7\x8d\x61\x37\x08\xef\xa4\x6f\x8a\x40\xad\x18\x46\xa0\x5b\x4f\xef\x7b\x37\xd2\x9f\x98\x23\x92\x5c\x88\x1d\x41\x67\x44\xaf\x27\x0c\x01\x31\xb1\x3f\x92\xa9\x95\xb3\x44\x51\x9f\x62\x23\xa9\x7a\xbf\xa0\xdd\xcb\x34\xfb\x44\xcb\xbc\xab\x51\x81\x9c\xe6\x7a\x09\xd3\xd2\xe8\xfd\x58\xf9\x55\x14\xf5\x45\x3d\xc3\xfb\x08\x8c\x64\x0f\x52\x02\xce\x9b\xb6\x0e\xa9\x08\xbc\x1f\x75\x83\x63\xcd\xe9\x91\x13\x2f\x0a\x90\x42\x3d\xd5\x70\x6c\xb8\xef\xfb\xa3\x49\x34\x7d\xbd\x64\x52\xd2\xbc\xab\xa9\xe0\x9b\xee\x0f\xef\x5f\xbe\x98\x45\x89\xc0\xd3\xc8\x83\x44\x2b\x6f\x8b\xfa\x71\x69\xa4\x2d\x10\xf0\xac\x84\xad\xdc\x8f\xba\xba\x3d\x9a\x77\x53\x85\x97\xe0\xe8\x8d\xc6\x52\xbb\x31\x58\xe5\xa2\x08\xb3\x99\x21\xe2\x3f\x94\xea\xba\xf4\x38\xb7\xbe\x04\x49\x51\x25\x5a\x60\x68\xd4\xed\x13\x51\x13\xaa\x75\x7d\x87\x26\x89\x08\xd4\x2c\x6a\x20\x13\x5f\xec\x93\x89\xe7\xf4\x72\x7d\xf5\x35\x2d\x29\x9d\xa9\xa2\x72\xbd\xfa\xbd\x15\xa4\xee\x54\x60\x52\x13\x6c\x30\x3c\xa7\x2e\x02\xaa\xd7\x06\x33\x60\x25\xb4\x66\x04\x21\x71\x04\xdf\x22\x84\xaf\xa8\x7c\x06\x7a\x10\x15\x68\xdb\x4c\x6f\xcb\x74\x49\x93\x88\x55\xaf\xe8\x67\x05\x69\x55\x96\x44\xea\x67\x8d\xdd\x97\x97\x3c\x67\x73\x46\x73\xfb\xd9\xbd\x7b\x79\x1e\x17\x34\x2d\x6d\x06\xfd\x52\xcf\x14\x1a\xb9\xa4\xef\xf9\xe3\x22\xad\x2a\x4f\xf7\xb5\x7d\xac\x9a\xbe\x69\xee\xd5\x33\x2e\x00\x1d\xf9\xac\xf6\xe2\x4b\x95\xa2\x60\xb3\x02\x89\xe0\xed\x6e\x34\xc3\x8e\x0d\x58\x2f\x3e\x1b\x52\x4d\x92\xf5\x03\x05\xca\x1a\x0a\xfa\xab\x97\xe9\xea\x19\x17\x28\x2e\x51\x27\x6d\x24\x8e\x0a\x95\x26\x17\xb7\x70\xe9\x40\xdb\xaa\xd9\xe7\xf3\x1f\xcb\x8a\xd2\x32\x2e\x71\x8a\x19\x56\x34\x00\x47\x10\xf3\x7b\xab\x1d\x22\xc9\x45\x7c\x47\x69\xdd\xb8\xa9\x02\x33\x2d\xcc\x2b\xb1\x74\x81\x19\xd5\x72\xdc\x72\x9f\x03\xa2\xdd\xc8\xee\x68\x8a\xe1\xd4\x17\x95\x4a\x55\x32\x05\xa6\x92\x04\xe7\x01\x86\xb9\x2b\x28\x9c\xb5\x2f\x61\xe7\xa9\xd7\x25\xbf\xa6\x1a\x0c\xe3\xaa\x51\x08\xde\x95\x77\xb5\xae\x16\x2e\x27\xae\xcc\x72\x04\x83\x72\xc4\xaa\x89\xd5\x79\xa0\xd0\x3b\xf0\x74\x12\x0b\xe7\x3a\x9f\x36\x8b\x2a\x10\xae\xf4\x9d\xfe\x59\xa4\x2b\xb7\xb2\x10\x4a\xb7\x63\x98\x3d\xf0\x99\x5f\x02\x86\xdf\xe4\x00\x5f\xfc\xb8\x8c\xa7\xd5\x0c\x5c\xe0\xaa\x16\xc0\xc7\x42\x8d\x33\x5e\xac\x97\xe5\x2b\x00\xb3\x27\x0a\xf8\x28\xb9\x68\x19\xe4\xad\x98\xd4\x8a\x75\x41\xfa\xba\x54\xb8\x47\xc6\x85\x3a\xf8\x1b\xc3\x89\x8f\x87\x57\x38\xea\x46\xd6\x42\x08\x99\x06\xaa\x2d\xab\x3f\xb7\x71\xdc\xb6\x78\x9e\x2b\x90\x17\x64\x64\xf8\x85\xdb\x98\x27\xc5\x51\x2a\xa5\x60\x97\x6b\x49\xab\x08\xf9\x4b\x08\xb0\xc7\xe6\xb1\xe8\xf7\x2f\xca\xa1\xcb\xf5\x82\x2d\x99\x6c\x62\xf9\x7b\xbc\xa8\xf6\xc0\x63\x06\xae\x05\xc1\x75\x03\xf4\x8c\xe9\x6e\xf1\x1a\xc0\xa1\x56\x1b\xdf\x70\x3b\xf5\xd9\xc4\xe6\x4d\x34\x5c\x73\xb8\x9f\x1f\x35\xce\xb6\x3f\xc2\xc1\xa6\xae\x87\x94\x95\x54\xfc\x85\xde\x04\xde\x71\x84\x89\x97\x09\xa1\xeb\x8a\x24\x1e\xfe\x11\x1d\xa2\x8e\x31\xab\x2b\xc1\x78\xa3\x9c\x8e\x67\xcd\x7d\x6c\x78\x63\xd2\x9d\x44\xc3\x15\xa5\x9f\x1e\x15\x05\x58\xd5\xba\xce\x3d\x86\x61\xfd\x4d\x1d\x82\x9e\x30\x73\x84\x05\xb9\x65\x79\x12\x4c\x25\xcb\xa3\x06\x86\xe9\x90\xa6\xd9\xe2\x91\x9d\xb7\xb8\xd4\xd3\x29\xfb\xfd\x0b\xcd\x85\xdf\x33\xa3\x62\x5a\xce\x88\x5f\x6d\x09\xde\x2d\xbc\x1e\xfd\x85\xde\x7c\xd6\xb3\xd6\x58\x41\x39\xd4\xf0\x51\x3c\x55\xfd\x98\xa1\x7d\xfd\xa0\xe4\x42\x38\x3e\x26\x16\x21\x56\x0c\xe9\x7e\xe3\x02\xa1\x70\xad\xf4\x51\xad\xa7\x43\x81\x76\x7c\x0b\x07\xb5\x8e\xbe\x17\x9b\x53\x1b\xe1\xe6\x8c\xb6\x5f\x16\x69\xf5\x84\x09\x79\xf3\xc8\x83\xb7\x5e\xef\x60\xab\x1c\x1c\xd5\xc9\xc1\x1d\xa5\x6a\x14\xac\x0e\x9c\xce\x66\x22\xa2\xcb\x22\xcd\x3e\x45\xcd\xd8\xfd\xca\x27\x92\x44\x57\x82\xd2\x32\xba\xbb\x4f\x31\xd4\xb3\x06\xaf\xc7\x35\x36\x7b\xdf\xb7\x76\xf6\x6f\xbd\x47\x71\x63\x4b\x6c\xe6\x1e\xdb\xbb\x6b\x57\xfd\x33\x75\xd1\x6f\xad\x48\xe9\x56\xa4\xd3\x08\xb7\x3a\x65\xb3\x1f\xdb\x81\x48\xb9\x6f\x3e\x2a\x63\x06\x27\x98\xed\x23\x42\xb5\xe1\xcd\xa4\x79\xfe\x5a\xf7\x5f\x28\x48\x52\xe7\xbc\x59\x7c\x5f\x7f\xc0\xf0\x71\xcc\x61\x1c\x64\xaf\x91\xfa\xbf\xc5\x56\x43\xb7\xa2\x7d\x2d\xd4\xf5\xb7\x69\xc9\xfa\xe8\xc9\xdd\x26\x5b\xbf\x3f\xf6\xe2\x5d\xb6\xa4\xdc\x87\xcd\x28\x8a\xe6\x27\x9a\x7e\x7a\x99\xae\x82\x80\xdc\x16\xc6\xcc\xd6\x70\x93\xd2\xb2\x10\xb3\x22\x1a\x2d\x52\x51\xdd\x56\x60\x64\x65\xa6\x56\xcd\xa5\x91\x42\x6d\xdd\xa5\x9d\x6f\xca\xb5\xc3\x16\xb2\xd4\x3a\x1f\x8d\x4c\x65\x91\x2a\xfa\x17\xec\x5d\x36\x1b\x7d\x4b\xe9\x57\x08\x22\xc2\x3c\x8b\x1c\x6a\x02\x55\x70\x62\x2e\x91\x60\xc5\x52\x99\x0e\x9c\xa2\x25\x2b\x99\x34\x7a\xe1\xe8\xb6\xae\xbd\x25\xe7\xfb\x96\x1c\x4e\xe4\x3d\x7e\x5f\xee\x30\xd4\xfb\x06\x90\xd8\x72\x06\xb3\xb5\x60\x53\x40\x09\x66\xc4\xb1\x5d\x8e\x41\x9d\xc5\x79\x6c\xdf\x61\xd9\x2a\x37\x9b\x2d\xfa\x49\xf6\x7a\xe6\x2a\x91\xa8\xd7\xdb\x0a\xc8\xae\x10\xfb\x6d\x9b\x50\x57\xa6\xec\xf5\xa2\xc6\x66\x20\x62\x10\xa2\x3d\xb2\x84\xaa\x4b\xdb\x6c\x1a\x63\x5d\xcf\x15\xe6\x4e\x23\x2d\xdf\x03\x55\xfb\xd6\xc4\x1a\x88\xb5\xb5\xa7\x44\xd6\xc3\x39\x98\x77\x8a\x29\x9b\x35\x05\x20\xc2\x93\x91\x8c\xc4\x02\x4d\x68\x8c\xe2\xe1\x70\x28\x50\x42\xf5\xdf\xda\xc4\x8d\x67\x01\x03\x5c\xec\x0a\x78\x3a\x89\x05\xa1\x98\x9a\xcd\x84\x12\x41\xc4\x66\x73\x5b\x1b\x46\xdc\x2d\xb0\xe6\x28\x66\x95\x3b\xf8\x92\x83\x11\xfe\xc4\xca\x3c\x69\x70\x90\x08\x73\xcd\xef\x4b\x44\x1d\x62\x2b\xa1\x82\x16\x0d\x34\x43\x3e\xb2\x52\x52\x51\xa6\x05\x20\x68\x3b\x64\x00\x9e\xdf\x88\xa1\x70\x5b\x48\xe3\xf5\x6a\x97\xa8\x2e\xc5\x02\xb4\x27\x29\x9a\x94\xa0\x31\x68\xbb\x04\x57\x5d\x4c\x51\xd2\x86\xbb\xdd\x66\xd1\x6e\xf3\x42\xb9\xc6\x81\xb4\x9f\x3a\x4c\x57\xab\xe2\x46\xf3\xcb\xdd\x52\x38\x45\xf7\x20\x6b\xa3\xd7\x64\x4d\xe7\xe8\x5e\xc5\xb1\x60\x16\xd4\x6e\x0f\xef\x1e\xe3\xf5\x05\x29\xba\x37\x8d\x4b\x38\xd7\x35\x4a\xcc\x76\xc5\x37\x29\x31\xeb\xec\x5a\xe4\x92\x50\xcc\xdc\x22\xc7\x25\x91\x98\x11\x0a\x41\x3a\xc3\x3d\xc1\x7a\xbd\x98\x11\xd1\xc8\x28\x5f\x5a\x55\x80\x98\xb9\x28\xa6\x1a\x2c\x18\x66\xd5\x5b\x5a\x80\x7a\x5a\xb5\x60\x2b\x05\x19\x16\x10\x4a\x52\x2a\x30\x32\x90\x72\xe9\xf4\x45\xb0\x3e\xa8\x8c\x02\x49\x57\xa5\x7c\xa2\xda\xa2\xe4\x6b\xa0\x73\xc7\xac\x5d\x51\xe9\x69\xbc\xfc\xc6\xa9\x0e\x74\x65\x0c\xc5\xf3\x95\xfa\xed\x72\x70\xb7\x1c\xd5\xf6\x72\x6c\x2f\x03\xdc\x34\xde\x66\xc3\x92\x48\x98\xa5\xad\x55\xa0\x3a\xf0\xcc\xae\x55\xb0\xd8\x46\xb3\x39\xed\x9c\xcb\x1d\xeb\xa1\xe7\x7f\x61\x34\x86\xcc\xec\xff\x90\x56\x5d\xfd\xfe\xfb\xcc\xbd\xd3\x76\xf2\x67\xde\x78\xce\xdc\xbf\xd3\x85\x5b\x01\x4f\x5b\xca\x28\x32\x78\x35\x06\xa0\x8f\xad\x87\x2d\x38\x25\xdf\x08\xfe\xe5\xa6\xd1\x3d\x7d\x42\x57\x82\x66\xa9\xa4\xf9\xd3\x6b\x08\x4b\x81\x6f\x3f\x0a\x50\xa1\xa4\xe2\x07\x10\xfa\x0b\x43\xb3\xe8\x5e\xd9\x6f\x34\xb7\x5f\xc9\xed\x25\xcd\xd2\x25\x75\x52\x63\xac\xdf\xff\x06\x6f\xb2\xfe\x7f\xa8\xfb\xd7\x36\x37\x6e\x2b\x41\x1c\x7f\xcf\x4f\x41\x72\xfd\xd0\x85\x6d\x88\xe9\xce\x6c\xf2\x9f\x3f\xa5\x72\x3f\xb2\x64\x4d\x94\x58\x92\xc7\xb2\xe3\x9d\xe5\x70\x5b\x25\x16\xba\x1b\x11\x1b\xc5\xa0\x40\xc9\x1d\x12\xdf\xfd\xf7\xe0\xe0\x8e\x42\x15\xd9\xb6\x9c\x99\x7d\x23\x35\xab\x50\xb8\x1c\x1c\x1c\x9c\xfb\x91\xda\x75\xbc\xfd\xda\x9f\x4f\xb5\x27\x43\x5e\x9e\x81\x05\xfb\x55\xb5\x85\xfa\xd5\xd0\xc5\x8b\x90\x01\x4e\x15\x11\xd9\x51\xa6\xda\xfb\xb2\x87\x8d\xe1\x81\xaa\xff\x69\x61\xc5\x5b\x10\x05\xb0\xef\x9e\xe3\xe9\x72\x35\x05\xc1\xc4\x68\x3a\xdb\x64\xf2\xf3\xbb\x6a\xfb\xf5\x7d\x61\xf5\x7c\x53\x3c\x35\x0d\xa7\x4a\x86\x85\x67\x27\x2c\xd7\xcd\x43\x2d\x78\xc7\x3e\xb0\xe6\x13\xf3\xcc\x9e\x5d\x76\x10\x9a\xae\xc1\x01\xc9\xa0\x41\xfa\x4f\xaa\x20\x4b\x4c\x5b\x9d\x66\x3d\x99\x2d\x6b\x44\x31\xd5\x8d\x21\x6f\x81\x2d\x47\x83\xab\x3a\xc3\xf6\x7b\x08\x9b\xee\xa6\x68\x64\xac\x03\xa6\x39\xe6\xb3\xd9\xa4\xb7\xf1\x6c\xd6\x87\x39\xfd\x6f\xe6\x11\x4a\x15\x60\xac\xb3\x73\x33\x20\xb8\xba\xa6\xac\x7e\x63\x12\x34\x19\x2d\x6c\x1b\x50\x23\x90\x07\x14\x2d\x69\x0b\x11\x05\xf4\x9b\xbb\x30\xf3\x9e\x35\x82\x5e\xdf\x5b\x90\x3f\xbb\xd5\x75\x24\xc0\xc0\xd9\x37\x56\x90\xee\xb1\x33\x84\x13\x96\xee\xaa\x0f\x24\xe0\x50\x3c\xc3\xe2\x7c\xae\x8c\xbf\x2f\x8b\xca\x98\xe8\x1b\x8b\x2d\x9b\x15\x6e\x4d\xb1\x06\x85\x64\x16\xb5\x70\x85\x46\x74\xd9\xac\xca\xf6\x70\xd8\x3b\xb6\x02\x4c\x84\x5a\x25\x5d\x39\xf9\x9f\x4a\xac\x45\x9e\x9c\xb5\xd3\x6d\xd4\xe1\x50\xd8\xfd\x30\x6d\xf1\x6f\xb1\xa9\x7f\xd5\x5b\xaa\xc0\xea\x27\x45\xaf\x8b\x7e\x0c\x8a\x50\x5f\x47\xdb\x28\x40\x04\xac\x14\xb1\x16\x7a\xff\xb5\x3d\x8b\x48\x9d\x69\xbf\xd3\xa3\xe1\x0d\xeb\x64\xcf\xe1\x4b\xb6\xf2\x0a\x0c\xc5\x50\xcf\x66\xdc\xa9\xac\x18\xbe\xe8\x8e\xdc\x43\x88\xe6\xda\xd1\x50\x8d\x33\x84\x6d\x03\x2f\xdd\x99\x95\x12\x9b\x74\xc1\x27\xec\xa6\x4d\x2c\xfc\x39\x36\xcc\x8e\x7a\xc2\x76\x91\x93\x09\x34\xa4\xb6\x21\x19\x05\x00\xd1\x35\x08\x4c\x6a\x30\xb8\x06\x5c\x9a\xe4\xd8\x8d\x6e\xf0\xf8\x5a\x34\x0e\xae\xbf\x20\x72\x5b\xf5\xe7\xc5\x43\x05\x5a\x90\x25\xe3\xeb\x3b\xa2\x1c\xc6\x18\x73\x0e\x31\x0b\xe5\xd1\x60\x05\x73\x8b\xf5\xd9\xc2\x79\xc0\x7c\xb4\x5f\xdf\x1b\x5c\x49\x1c\x1b\x35\xd7\xc2\x65\x29\x46\x04\x64\x5d\x0e\x25\x2c\xb5\x32\x76\xb9\x42\xba\x06\x51\xc1\x03\x4f\x46\x4c\x24\x8a\x88\xfb\x7a\x68\xaa\xda\xb9\xd2\xb9\x37\x87\x1b\xf8\xb4\x88\xdd\x72\x49\xb5\xbe\x7d\x66\xfa\x70\xd7\x13\x64\xbe\xd0\x6a\x3f\x36\x8f\x39\x2a\xb4\x67\xf3\x0f\xe4\xde\xf8\xe2\xd0\x52\xeb\xe2\x21\x28\xdb\x37\x7a\xa5\xb9\x95\x11\xb1\x26\x23\xed\xac\x69\x4a\x02\x52\x24\x33\x0b\xaa\x8f\xc3\x3e\x93\x46\x0b\x9b\x83\xdf\xf1\xe5\x1e\x58\x1c\x33\x2a\xe2\x64\x65\x10\x87\xa0\x96\xc6\x30\xd5\x49\x65\xd4\x1f\xdb\x8a\x13\x26\x1c\xef\x59\x72\x4c\x96\x6c\x55\x2a\x71\xcc\x7f\xfa\x82\x37\x77\xb0\x66\x8a\xec\x5e\xe1\xdb\xa1\xf5\xf8\x0a\x6a\x56\xeb\xd2\xe5\x80\x22\x54\xd2\x4b\x07\xfe\x27\x74\x12\x10\xf9\x1c\x61\x2e\x65\xf3\x92\xad\x4c\x71\x66\xbd\x36\x4c\x91\xb7\xea\xc6\xf0\xdf\xaf\xe1\x88\x19\x30\x51\xd2\x2e\xae\xa5\x9e\x13\xec\xf4\x16\xdf\xe1\x8f\xe9\x92\xa6\xc6\x3e\xfd\x56\x80\xda\x23\x97\x9d\x3f\x5e\x55\xca\x39\x87\xdf\x2b\x01\x31\x9e\xd2\x4d\x59\xa4\x03\xea\xa3\x6b\x16\x3b\xc5\x5d\xbe\x6b\x52\x78\xf5\x78\xdc\x18\x7d\x75\x9e\x0e\xf0\x11\x8d\xb6\xe5\x47\x7c\x57\x7e\x84\x35\xbe\xcf\x66\x34\xc8\x72\xd5\x94\x51\x61\x0f\x9a\x09\xee\x9e\xcf\xe7\x5e\x26\x96\xf8\x4a\x13\xb0\xd7\x44\x7c\x6a\xf8\x07\x4d\xbf\xda\x30\xdd\xc2\x72\x4a\x5b\x20\xc6\xd3\x55\x48\xfd\x86\x88\x1f\xf2\x4c\xe0\x47\x4c\xdb\x6f\x9b\xaa\xa6\xec\xc6\xfd\x4d\xea\xc5\x47\xdc\x55\xdd\xa6\xcc\x6a\xb4\x6b\x73\xaa\x9b\xe7\x60\x19\x58\x1a\xb2\x9f\x00\x11\xa7\xed\xdb\xea\xa3\x9d\x85\x4e\x7c\x59\x2f\xb6\x58\x2b\xd7\xef\xb0\x59\xe3\xe2\x06\x5f\xdd\x55\xfc\x83\xe1\x01\x8d\x39\xfb\xa9\x56\x9a\x17\x68\x2f\x71\xad\xba\x04\x87\x1c\xd5\x91\xf6\x47\x98\x5c\xe8\xaf\x8c\xbf\x40\xf2\x8d\x06\x3e\x09\xde\xb5\xe5\x72\x65\x6e\xc6\x4d\xd5\x9a\x64\x22\xda\xbb\x4f\x7b\x6f\x65\xb6\xa4\x00\xa0\xea\xc4\x09\x6a\x19\x93\x0b\x1c\x2e\x76\x21\xe6\xdf\x37\x8d\x59\x38\x54\xb9\xc1\x31\x0e\x9b\x34\x14\x60\x2f\xd6\x4e\x8f\xda\x47\xe1\x28\x35\xdb\x58\x42\x16\x58\x3c\xba\xc2\x5a\xe1\x2c\xa9\xad\x42\xc6\x69\xc4\x4a\x4f\x91\xc4\xf9\x06\x7f\x35\xaf\xbb\x74\x96\x06\xbe\xd9\xad\x86\x01\x04\x82\x6a\xa6\x1c\x1e\x1b\x9e\xf8\x87\x26\x56\xc1\xec\xd3\x93\x35\x45\x5e\x6a\xb0\xec\x44\xd8\x41\x5b\xe4\xbf\x31\xb7\xbe\xc4\x55\x10\x8b\x9d\xa4\xf3\x38\x22\x72\x6b\xd0\xbd\x65\xd5\xb6\xbd\x6d\x44\x81\xe6\xe1\x87\x8a\x3f\xae\x6a\x93\xa4\xa3\xa6\xb5\x3a\x1b\xee\x87\xce\xe8\xea\x7e\x6a\x29\xc0\xfd\xd4\x08\xac\x7f\xc6\x82\x70\xf0\x28\x98\x2f\x6f\x36\x1b\x02\x09\x38\xec\xfc\x59\x2e\xb3\x6c\xaa\x76\x61\x16\x68\x50\x90\x8e\x0a\x28\xb8\x7f\x64\xc9\x49\xd3\x24\x72\xc6\x1e\x87\xf8\x9b\xb8\x89\xfa\xa4\x15\xbc\x71\xa1\x6a\xf1\x78\x71\x63\x7d\x64\xda\xea\xa3\x86\xe8\x8e\xf9\xec\x23\x76\x30\x75\xde\xa1\x3f\x52\x5b\xaf\xc1\x78\xf8\xf8\x23\x47\x13\xfd\x1d\x03\x15\xd9\x34\x8e\x3b\xad\xb0\xb1\xfb\x12\x57\x84\xe0\x09\xd3\x35\xbe\x4a\xb2\xe4\xab\x01\x86\x5a\xf1\x49\x12\xeb\x6b\xac\xf6\xe4\x2f\x0d\x8a\x4d\x10\xa9\xdb\x5c\xc2\xae\xbe\xaf\xd6\x1f\xa2\x4e\x72\x5f\xe7\x1a\xaa\x93\x90\x60\xe7\x43\x30\x59\x62\x1b\xa4\xfc\x8d\xba\x7f\xda\x2e\x41\x8e\x3b\xb0\x0c\x7f\xdc\x2b\xad\x25\x36\x7b\xe7\x35\xc8\xc6\x25\x3c\x66\xa3\xf6\x5b\xfd\x74\x91\xc5\x54\xdd\x85\x76\xc1\x57\xdb\xa4\xb9\x6a\x38\x61\x6a\x6b\x5d\x82\x0f\x43\xc2\x72\x0a\x3f\x63\x4a\x20\xba\x48\x04\x1c\x78\xe3\x1b\xab\x33\xa5\xc4\xcf\x16\x69\x23\xa9\xa4\x83\x87\xcf\xdc\xcc\x8f\xe7\xe6\xae\x04\x40\xb8\x73\xde\x07\x1a\xcd\xa1\x3d\xe2\xe4\x9a\x70\xc2\xd6\x8a\xcf\x2d\x42\x55\xae\x3a\x19\xb7\x4e\x51\x77\x7a\x17\x4e\x1b\x09\xfa\x08\xb0\x2c\xea\xa2\x26\xe6\x6e\xd0\xa6\x70\x2c\xca\xbd\xd4\x65\xe7\x1c\x3b\xeb\x49\xb2\x28\xbf\x22\x56\x40\xb0\xfa\x50\xeb\x4a\x11\xd8\x6d\xf1\xd6\x73\x74\x04\x93\x9f\xb7\x15\x83\x0c\xaa\xab\x0e\xa7\x1c\x32\xc3\xce\x91\xe2\xa3\x2d\x26\x3b\xff\x40\x59\xbd\x1a\x39\x6d\x5b\x03\x51\x4b\xee\x85\xba\x79\x59\xe4\x34\x01\xcf\xc3\xd1\x9b\x60\x74\xe4\xea\xc3\x11\x67\xd9\x25\xda\x1d\x28\xe8\x63\xfa\x62\x53\xdd\xc4\x4b\x50\x5c\x93\xe6\x75\xf2\x66\x6a\x25\xb9\x6a\x86\x04\xfe\x34\x0c\x09\xfc\x6d\x52\x58\x38\x23\xb7\x63\xbf\x24\xc2\x7b\xeb\x2e\xa9\xb6\x61\x61\x9d\xdf\xde\x88\x5b\xc2\x03\x8e\x78\x72\xae\x63\xdd\xda\x05\x53\x6b\x51\xa7\xf3\x63\xc8\x31\x73\x29\x25\xd6\xb4\xc9\x29\xcb\x1d\xf3\x36\x2c\xd6\xe2\xce\x0e\xf8\x2b\x77\xdd\xb0\x56\xf0\xdd\x5a\x34\xbc\xbb\x51\xfa\x1e\x89\xa4\x11\xad\x57\xcd\x33\xe0\x41\x5f\x7d\xd2\xaa\x56\xaf\x4a\xc5\x29\x10\xde\x92\xb8\xbb\xce\x84\xc2\x56\x59\xcb\x01\xb0\x46\xc8\xc2\xc5\xa8\xb5\x9f\xd6\xb5\x66\x3b\x8e\x03\x25\xc7\x84\xa4\x10\xe9\xd8\x8a\x46\xef\xe7\x9c\x34\x5b\xc2\x8a\xbd\xe0\xf4\xe6\x86\xf0\x58\xe7\xba\x24\xab\x9e\xf4\xc0\x91\x16\xb0\x63\xa0\x64\x81\xbe\x0f\xea\x53\xd3\xf2\xe2\x31\x7d\xc2\xc1\x44\xc9\x96\xf4\xd1\x45\x62\xa4\x14\xc6\x66\x06\x32\x1d\x43\x12\xa6\xaf\x75\x12\x96\x72\xe7\xc4\x87\xde\xa4\x6e\xef\xbd\xb6\x03\x4f\xeb\x4a\x54\x53\xf0\x66\x77\xf6\x58\xc5\xbf\xc6\x99\x20\x12\xc3\x21\x50\xc1\xf9\x95\xfa\x54\x8d\x12\xc0\xa9\xf9\xf3\xdb\x37\xaf\x13\xd5\x74\x6e\x2f\x93\x94\xcb\x3e\xbd\x9b\x93\xc6\x8f\x5c\x71\xde\xd0\x1f\xa6\x4f\x06\x43\x07\xd0\xb1\xfb\xb2\xb3\xa4\xd6\xdb\x4e\x79\x29\xe6\xeb\x86\xf0\x35\x79\xa9\x30\xc8\x7a\x4a\xf1\xfc\x45\xd8\x12\xf1\xb2\x86\x74\x52\x11\x54\x06\xc5\x52\x3c\xbd\x12\xd5\xcd\x34\x6f\x08\xa3\xb5\x94\x3d\x2e\x1c\xd1\xde\xd0\x7a\x8a\xef\x3d\x7c\xb5\xe3\xe6\x1e\xdc\x8b\xc8\x46\x51\x12\xa7\xb2\xd0\x9c\x63\x46\x8d\x32\xa4\xbd\x1f\x3a\xba\x41\x6a\x05\x11\x38\x0d\x6a\x87\x0a\x77\xae\x5f\x55\xdb\x13\xcc\x18\x19\x9d\x0b\x48\x7d\xd1\xa9\xef\x35\x31\xb8\x91\x4c\x69\x82\x25\x59\xb9\xdc\xf8\xea\x08\x86\xb6\x70\x5d\x34\x28\xea\x76\x14\xb4\x2d\x19\x66\x46\x77\xff\x32\x3b\x38\xf4\xd2\x07\x45\x88\x19\x70\x45\x85\x5d\xb5\x1a\x70\xb9\xc4\x95\xf5\xa6\xbc\x23\x70\x46\x02\x33\x0d\x14\x1b\x37\xd6\xc5\x91\xc9\x76\x5f\x96\xe5\xc6\x92\xbd\xa8\x47\x7a\x5d\xf8\x17\xcc\x37\xc2\xb4\x2c\x9a\x32\x32\x41\xf5\x6f\x1f\x43\x48\xdf\x9c\x55\xd9\xb8\x91\x21\x39\xbe\x5e\x1d\x6e\x53\x9d\x94\xc9\x5a\x1a\xe4\x11\x4f\x42\x1f\xe9\xe1\x00\x7e\xbb\xfd\x33\xd0\xdb\x33\xa9\xec\x72\x1a\x63\xd1\xad\xf4\x66\x06\x49\xd5\xf1\xa6\x8c\x93\x72\xb7\xe8\x12\x12\x3a\x0b\x45\x62\x5d\x0c\x34\xef\xc2\x12\x74\x6a\xc8\x2d\xc9\xa8\x6b\x84\x05\x92\xf7\x53\xb1\x4f\x0e\x07\x56\x06\x3f\x25\x82\x83\x62\x71\x62\x33\x9b\x69\x0e\xc2\x10\xd8\x06\x6f\xc0\xe4\xa7\x88\xe9\x5a\x1d\xb6\xd9\x8c\x14\xe1\x6f\x80\x49\x83\x70\x13\x78\x24\x98\xd2\xab\xe5\x2e\xb1\xb6\x39\x04\x59\x97\x3b\xbb\x38\x1b\x95\xce\x32\x8b\x13\xd9\xc5\x8d\x49\x59\x96\xcc\xcf\x7f\x74\x51\x96\xe5\xda\xbb\xf0\xec\xca\x35\xc2\xac\xdc\x2d\xcf\x4d\xd2\x72\xaa\xff\x36\xdb\x0f\x7f\x9b\x1e\x6d\x7d\x57\xad\x39\xd6\x46\x6c\xa6\x4d\xdb\xd4\x59\xbf\x2b\x19\x33\x02\xed\x62\x17\xfd\x56\x1b\x78\x82\x62\x62\x6f\xb8\xd3\xc5\x72\xe5\x39\xe4\xc5\x72\x25\x4f\xd0\xad\xea\x40\x8e\x3d\xef\xe8\x56\xc9\x92\x6b\x46\x31\xd1\x69\xeb\x09\x92\x1a\x3c\xd3\x17\x6b\x9c\x39\x18\x8b\x5b\x9c\xd1\x85\x2e\x6a\x7c\x4d\xc9\xa6\x3e\x61\x41\x89\xce\xfe\xe1\xd3\xd7\xc5\x62\xd5\x5b\x58\x03\x5a\xa8\x06\x8e\xe7\x30\x35\x37\x0b\x11\xf8\x24\x67\x55\x2f\x79\x16\xef\x61\x26\x04\xab\x9a\xb7\x69\xa9\x31\xc3\x1c\x84\x1a\xd7\xb9\x86\x65\x6a\xcf\xcc\x8e\x62\xc0\x3e\x1d\xd2\x22\xf3\x25\x5b\x8d\xdc\x68\x50\x62\xce\x45\x6b\x87\x8b\xf1\x83\x5a\xbf\xe7\x0f\xe4\x1e\xe4\x78\x40\x67\x93\xf1\x21\xb8\x37\x78\x40\xe0\xe9\x65\x20\x55\x41\x2a\x3b\xf5\x51\xf2\x90\x5d\x4e\x1b\x46\x7e\x68\xde\x30\x32\x5d\x4c\xef\x2a\x76\x6f\xff\xce\x36\xd3\x85\xb5\x4c\x3b\xf3\x23\xdb\xf0\x75\x13\x74\x08\x3f\xb4\x88\x98\xd7\x9e\x7e\x26\xf4\x0a\xb0\xa7\xd0\xc9\xeb\x21\xae\xd0\xa0\x19\xca\xa1\x0f\x28\x80\xae\x1b\x7e\x17\xaa\x2b\x7e\xf9\xf4\x3c\xcf\xec\xe7\xa5\xc3\x18\x3d\xb6\x6b\x8e\x21\x8f\xc9\x09\x5f\x9e\x22\x58\xde\x3d\x7f\x08\x7b\x7f\xc8\xac\x2f\xdf\x77\x16\x12\xa7\x0c\x63\x55\x2b\x8e\xbf\x99\x6a\xa7\xfb\xe9\x59\x3a\x84\xbb\xf1\xa6\x8e\x2d\xbd\xca\x9a\x07\x4c\xb9\xbb\x9d\x50\xac\x2a\x5c\x89\x38\xef\x87\x63\x50\xff\x65\xfb\xb4\xbd\x67\x6b\xc5\xd4\x3a\xad\xbd\xfa\xfb\x88\x41\xc1\x16\x69\xd0\x5f\x94\xd1\xaf\xc3\x61\x72\x61\xea\x27\x98\xc2\xf7\xfa\x97\xd1\x8f\x04\x1a\x70\x75\x6f\x79\x56\x47\x57\x21\xb2\x3d\x7f\xd7\x6c\xee\xef\x1a\xbe\xbd\xa5\xeb\xb2\xfb\xc8\x8f\x11\x6a\xc7\x9d\xbe\xfd\x7a\xb3\x6b\x6f\x9f\x55\xac\x61\x74\x5d\x6d\x4c\x8e\x10\xed\x70\xab\x8d\x3b\x93\x0b\xbb\x84\xe0\xa9\xf1\x02\x93\xb8\x62\xf7\x3f\x82\xae\x90\xd4\xde\x92\x33\xe9\x0c\x17\xf0\x19\x64\x7e\xa5\xa4\xfb\xbb\x4a\x18\x11\x82\xb2\x9b\xc3\x61\x42\x1c\x50\x0a\x84\x96\xe7\x2b\xeb\x2a\x61\x7b\x7f\x19\xf2\xf2\x91\x21\xee\xfc\x31\x79\xd2\x1d\xd0\xd0\xc3\xb3\xb3\x58\x2c\x0a\xdb\x18\x51\x52\xe4\x27\x24\xc2\x09\x45\xc9\x8c\x14\xaa\x98\x98\xc1\x9f\xe8\x66\x63\xa5\x5e\x7c\x81\xcf\x51\x17\xd2\x90\x7d\x68\x0d\xef\xad\x6a\x96\x78\xbf\x9f\x4c\x7b\xeb\x8b\xd2\x19\xec\x39\xad\xe3\xb1\x26\xe7\xd2\x06\x71\x48\xac\x15\x78\x4f\x45\x71\x74\xc1\x2e\x0e\xdd\x27\x02\x98\xbb\xf0\x86\x02\x49\x9c\xe0\x04\x31\xbe\xa7\x89\xbf\xd6\x44\xad\x76\x7e\xa5\xc7\x7d\xd9\x3e\xdd\xd0\x8f\x44\x0b\xa9\xbe\x7c\x74\x4d\xaf\xaf\x8d\xcb\x4d\x3a\x19\xec\x25\x40\xa6\x2b\xed\xea\xc5\xbd\x64\x35\xf9\xd9\x56\x28\xe9\x81\x75\xf7\x03\xcc\x4c\x34\x41\xfd\xac\xd9\x31\x81\xd9\xbc\xaa\x6b\xf3\x23\x07\xf6\x04\xcc\xd1\xd1\x20\xf3\x16\x76\x6c\x70\x0b\x1e\x3a\x05\x3e\x9b\x85\x0f\xbe\x3a\x37\x52\x6f\x2c\xa3\xaa\xab\x0c\xe0\xa5\x37\x43\x2b\x5b\xbc\x25\xe6\x03\xb9\x9f\x22\x04\x45\xb2\x8d\xe7\x4b\x98\x91\x63\xc4\x55\xaf\x05\xed\x6e\xbc\x59\x10\xc1\xe4\xcc\x66\xea\x83\xfe\xbc\x82\x01\x1c\xd0\xd4\xe4\x5f\xf0\xe6\xce\x55\xaf\x8c\x07\xc6\x74\x7e\x57\x6d\xc1\xd4\xd9\xf1\x69\x46\x08\x6a\xc6\xf5\x74\x5d\xd5\x35\x54\x28\xc9\xf6\xca\x06\x7a\xc5\xc4\x85\xf1\x09\x4e\xc9\x47\xf2\x6d\x05\x01\xe3\xa0\x38\x8b\x9f\x98\x4b\xb3\x67\x06\x81\x5f\x66\x0a\x4e\x6c\x4e\x8a\x56\x91\x5c\xf9\x96\x5f\xdf\xff\xb9\x6d\xd8\xd3\x2d\xfd\xde\xd4\x57\x50\x12\x3a\xa4\x4c\xad\xcc\x4a\x01\xa5\xd4\x6f\x85\x50\xea\x7f\xa4\x10\x8b\xb2\x0f\x6d\xd8\x00\x1e\x4c\xed\x1b\x94\xa7\xbb\xa6\x5e\xb2\x53\xce\xf7\x86\x8c\xe9\x26\xaf\x2c\xa2\x98\xaa\x3e\xae\x59\x84\x4f\xd3\x70\xb3\x35\xb4\xc1\xcf\xb5\xfa\x48\x22\x80\x61\x5e\x42\xca\x14\xd7\xeb\xff\x50\x4d\xc6\xdd\xcb\x15\x22\xa7\xbd\x47\x1d\xe4\xab\xb1\x3e\x3b\x8a\x45\x6c\x3e\x90\x62\xaa\xbe\x9d\x22\x1c\x6a\xf0\x4d\x86\xbc\xdc\x20\x66\xa1\xee\x69\x90\x7d\xce\x5a\x0f\xb4\xdc\x9a\x1a\x0f\x98\xec\x24\xeb\xeb\xf3\x49\xb5\xc1\xb1\x5d\x6e\xda\x2d\xc8\x6a\x4a\x4c\x57\x3c\x48\x23\x47\x62\xc7\x9b\x20\x2c\x14\x6a\x7f\x4a\x84\x3f\x95\xa9\xa5\xc3\x86\x23\x2b\xa4\x18\xe2\xf4\x8c\x20\xe5\x2d\x32\xfb\x0f\xe4\x7e\x21\x8c\x59\x9a\x63\x9d\xce\xb7\x12\x94\xdd\xbc\x8c\x8d\xd7\xd2\x68\x5f\x1c\x67\x0c\x27\xdd\x3b\x28\xeb\x5e\x83\x7a\xb2\xa0\xc7\xc4\x02\x77\xad\x42\x12\xe1\x6f\xca\x04\xda\x76\x01\x80\xb3\xa9\xe7\xaa\x62\x28\x5b\xe7\x67\xab\xf1\x7a\x8a\x7a\xb0\x17\xce\x80\xd9\xb4\x69\x80\x8f\xde\x33\xd0\x7d\xa7\xd1\x35\xde\xd5\xc5\xcf\x45\x27\xad\x22\x53\x0f\x1b\x06\x7f\x12\xfd\x37\x78\xb0\x69\x85\xb1\x7a\x60\xfe\x54\x2d\xae\xaf\xa1\xc5\xf5\xf5\x14\xe1\xdb\xaa\x55\x3f\x6e\x2b\x08\xea\xf3\xb1\x3b\x3f\xe7\x03\x5e\x7a\x7c\xc5\xdc\xcc\x97\x64\x95\xaa\x7f\x89\x2e\xfc\xd3\x42\x41\x4b\x87\xd4\xe5\x95\xfa\xa5\x36\xae\x7c\x8f\x89\x85\xb4\xdb\x9c\xf2\x93\x7f\xe8\xbf\xf9\x06\x93\xf9\x95\xd5\x02\xea\x2a\x99\xdd\xa0\x09\x9e\x66\xe1\x05\xff\x49\x3e\xbf\xae\xd6\xa2\xe1\xf7\xa0\xe7\xbd\x53\xdf\x2e\xa6\x67\xda\xed\x55\x5d\x44\xa0\x57\x81\x5c\xe8\x56\xd5\xf4\xde\xee\x38\x45\xa3\x26\x56\x7d\x5e\x5d\xd1\x16\x86\x5f\x4c\xce\xf1\xd5\x95\xee\x8d\x42\x01\x74\xeb\xf5\x50\x38\x76\x5c\x60\x9f\xb8\x3d\x99\x85\x6d\x01\xd5\xf6\x94\x94\x51\x36\x98\xcc\x1d\xfe\x96\x15\x06\xa7\x3a\x05\x80\xb2\xfd\x6c\x25\xdb\x74\x28\xd8\x91\x0c\x06\x49\xbc\xd8\x3f\xab\xca\x8b\x2b\xaf\x72\x62\x7d\x17\xc0\xa0\xc1\x6a\x62\x0a\xac\x27\x77\xa7\x1a\x0f\xf6\x16\x18\x4c\x4f\xec\xd2\x7d\x31\xd8\xaf\xb3\xa2\x9e\xd8\xab\x69\x2f\xfb\x77\x59\x5f\xf6\xfa\xef\x5f\x1c\xf6\xf7\xbb\x86\xd7\x84\x93\xfa\x51\x4b\x32\x35\x4f\x06\xe3\xfe\x02\xf5\x63\x59\x92\xc3\x01\xaa\xc5\x92\x4b\xf5\x7b\xd1\x8d\x90\xb9\x24\x8b\x69\x7b\x7f\xf7\xbe\xd9\x44\x0f\xe7\x5e\xca\x85\x04\x29\x49\x40\x9e\xc9\x99\x68\xdb\x9b\xf2\xeb\xc6\x70\x6f\xd3\x17\x12\x5d\xc1\xdb\x0c\x69\x9e\xee\x6f\x39\xb9\x5e\x10\xe7\x88\x0e\x61\x33\x5c\xf1\xf1\x9d\x44\xeb\xb7\x55\xfb\xc6\xc7\x3b\x68\x31\x9c\x7b\x4c\x45\x97\x2e\x97\xe1\x82\x8f\x80\x8c\x8c\x9b\xb1\x26\x1d\xed\x98\x43\x7a\x17\xba\x1e\x5b\x07\xa9\x30\x84\x04\x48\x7b\x55\xd7\x3f\x51\x71\x0b\x0c\x73\x86\x88\xed\x68\xed\x7c\xc0\x8d\x24\x4c\x5a\xc2\xd6\xe4\x2d\x11\x56\x13\xb5\xa1\xad\x18\xd9\x5c\x0b\x6c\xc9\x9d\x61\x42\xfd\x5d\x4e\xce\xb1\xde\x04\x71\x49\xad\x75\x7a\x41\xad\x10\x26\xf0\xb9\x63\x29\x5b\xfa\x0f\x72\x56\x6a\xd9\x58\x6a\x17\x9a\xcf\x37\xb5\xd2\x4c\x6d\xaf\x3b\x86\xb9\x99\x00\x34\x2f\x7e\x5d\x8a\x05\x75\x39\x60\x3d\x97\xd1\x7c\xf5\xe8\x62\x36\x73\x73\x6e\xbc\xe0\x48\xff\x41\x4a\x9b\x03\x36\x92\xfe\x64\x58\xa0\xc3\x55\x49\xee\x32\xd4\x87\x03\x41\xf3\xab\x48\x51\x99\xd4\xca\x70\x5b\xa6\x3a\xd2\x77\x1e\x8a\x8a\x30\x04\xa1\x8d\x5d\xaf\xd1\xde\x21\xe9\x9d\x5a\x0c\x15\xdf\x47\x43\x17\x04\x2d\xf9\x4a\x6a\x34\xda\xed\x03\xe3\x70\x98\x06\x32\xd4\x3f\x1a\x25\x8c\x01\xa2\x06\xcb\x07\xca\xea\xe8\x81\x9f\x42\xf4\xf8\x0e\x0e\x79\x1b\x3d\x5b\x5b\x0e\xfc\x55\xe6\x25\x90\x89\x78\x28\x72\x1f\xfd\x36\xb3\xfa\x4b\xfa\x38\x33\xcb\x58\x4f\x13\x4f\x37\x76\xc0\xee\x19\xe1\x45\xc3\x5f\x1a\x28\x26\xcb\x4a\x3e\xb9\xb2\x1a\xab\x4e\x67\x57\x82\xdc\x6d\xbd\x4b\x74\xb4\x56\x28\x48\xf5\xa2\xe1\x6b\xa2\x5d\x2a\x4b\xab\x36\x0a\xa7\xf7\xb2\x7d\x2b\xaa\x4d\xfc\xe5\x6d\x15\x69\x4f\x88\xb5\xf2\xa5\x8d\x9e\xb2\xfb\x70\xf7\x3b\xdb\x13\x8f\x03\xce\xb2\x69\x17\x2f\x20\xd7\xd3\xb7\x4d\x55\x3f\xd5\x09\xbb\xdc\x24\x81\x05\x8d\x9a\x7f\xa2\x9b\xcd\xdb\xce\x26\xc4\x58\x44\x03\x04\xd2\x16\x02\x13\x9f\xca\xad\xf9\x66\x5e\xa9\x86\x10\xf8\x63\x9f\x6c\xfd\x36\x8e\x52\x74\x63\x31\xa6\x29\xb2\xd7\xf4\x20\x5a\xf0\x4e\xe3\x19\xf1\x28\xc6\xd5\xbf\x91\x92\xcf\xe3\x99\xc8\xa1\x58\x59\x96\xd5\xe1\x50\xf5\x63\xda\xa4\x2c\xdb\xd9\xac\xed\x41\x38\x3e\x84\x6b\x19\xcc\x39\xb3\x33\x0d\x30\x30\xf0\xd6\xed\xc5\xbf\x1c\x2a\xd9\x1d\xec\x45\xa3\xa0\x41\x0e\x85\xf2\x68\xaa\xd1\x67\x72\x2e\x6f\x88\x18\x83\xdf\x50\xe2\x8b\xe7\x37\x6d\x6e\x5e\xcb\x44\xd1\x9b\xea\x33\xe3\xb7\x41\xeb\xb7\x51\xe3\x62\x92\xc0\xd2\x78\x58\xc6\x9f\x23\x79\x75\x5b\xb5\x6f\x77\x5b\xc5\x9e\x04\xd0\x8e\xe8\x63\xc0\x58\xb8\x5d\x24\x3d\xb4\xd4\xbb\xeb\xf5\x11\xdb\x78\xc0\x53\x06\xe2\x7d\x03\xc4\x17\x88\x02\x71\xb8\xe5\x45\xac\x2d\xec\xe2\x84\x33\x70\x18\xdb\x7b\x02\xb0\x24\xce\x2c\xc6\x55\x6d\x4a\xe7\xa1\xca\xc6\x39\x4a\x08\x34\x22\xa7\x5a\xeb\xd3\x31\x65\x06\x75\x49\x94\xb8\x27\x7a\x27\x3d\xfe\x3c\xa7\x75\x84\xb8\xb1\x2a\xca\x0f\x31\x22\x46\x29\x74\xdd\xf0\xa7\x1b\x4b\x07\xc0\x3a\x6d\x61\x30\xb4\x45\x02\x59\x86\xa4\x2d\x94\x10\x0f\x3a\x8b\x24\xb8\x3b\xde\x99\x11\x88\x7a\x66\x02\x3e\x8f\x87\x99\x85\x5f\xc0\x24\xb0\x75\xfb\x66\x87\x83\x73\x11\xeb\xac\x30\xe9\x00\x29\xc6\x3c\x5e\x15\x09\xb3\x45\xe4\xc3\x7f\xce\x1f\xf3\x27\x21\xb5\x04\xee\xc9\xf9\x0e\x5b\x3b\x26\x2b\x3b\x6d\x96\x7c\x85\x69\xc2\x96\x31\x34\x12\x4b\xba\x3a\x1c\x0a\xf5\x9f\xe2\x02\x49\xc1\x10\xcc\xca\x14\xdd\x3f\x7f\xdc\x3c\xc9\x52\xe2\x68\xdc\x20\xe2\xb3\xbf\xb1\x0e\x05\x8d\x27\x50\xa9\x09\xb4\x7a\x02\xad\x99\x40\x85\x90\x94\x7d\x30\x24\x68\x3f\x09\x29\xf9\xe1\x00\x06\x3c\x43\x8c\x2e\x2d\x8c\xef\x9a\x8f\xc1\xa6\xbc\xe0\xcd\xdd\x9b\x4f\xac\xf0\x6a\x51\xf5\xde\xa9\x11\xfb\x1b\x42\xf2\xd1\x0e\x81\x2c\x26\xe7\xc8\xa4\xc2\x6d\x41\xed\x99\xa5\xc0\xaa\x95\xd4\x05\x22\xe0\x78\x5b\xe7\xbf\x3b\x7d\x46\x6c\x30\xa2\xb7\xc8\x74\x76\xec\x31\x71\xd1\x7a\x8f\x5d\xf6\xc9\xe5\xf9\x6a\x94\x5d\x24\x70\x9c\x71\x78\x68\x76\x1b\x1e\xf3\xb4\x57\x56\xf2\xa4\xd7\x0c\x68\x0a\x06\x19\xb9\xd4\x5b\x28\xd2\x65\x9f\xb7\x16\x66\x68\x9f\x07\x19\xdc\x57\xc5\xc4\x1a\x79\xec\x02\x6d\x50\x84\xeb\x32\x33\x66\xda\x77\x67\x3d\x51\x74\x68\xac\x1b\xfe\x56\xed\x88\xeb\x3f\xe8\x53\x6d\x04\xe9\x44\x20\x75\xa0\x49\x10\x52\x62\x57\xf4\xa1\xce\x94\xdb\x09\xdd\x8c\x9a\xe9\x20\x6e\x2f\xad\xcc\x66\xe2\xec\x4c\x42\x5f\xb9\x15\xa6\x7e\x0b\xea\x78\x93\xf0\x38\x87\x72\x8f\x19\x2c\xb7\x3b\x10\x2b\xc0\xcf\x84\xc1\xcb\x81\x56\x7d\x53\x09\xdd\x4d\x53\x38\x6b\x07\x4e\x1b\x94\xdb\x79\x0d\x41\x31\xfe\xc8\xec\xb6\x2f\x2d\x59\x0c\x9d\x3f\xd0\xd0\x3e\xe1\xe0\x38\x65\xf8\x15\x38\x4c\x03\x5d\xef\x73\xf7\xa1\x12\x29\x8f\x5e\x10\x2e\xe1\xee\xa8\xb5\x0e\xbd\x41\x1f\x7d\x80\xec\x90\x72\xf0\x58\xeb\x19\xb0\x8f\x4b\xb1\x03\x9b\x93\xdd\xc3\x81\xa8\x5b\x7b\xd9\xcf\x68\xae\x46\xfc\x70\x28\x8e\xb4\x01\xb6\x79\x57\xf8\xdb\xdf\x31\xcd\x78\x6f\xbd\xa9\xf6\xc0\xb3\x2f\x42\xe2\x2a\x25\xd6\xb9\xe7\x4e\x85\x82\xec\x25\x1f\x0f\x47\xf4\x7e\x4a\x94\xe0\xfa\x70\x43\xd4\x3f\xa7\xe3\x18\x6f\x0d\xaa\xc7\x2f\x0c\x97\xb9\xc1\x6f\xc0\x91\x65\xa8\x4f\xed\x55\xe1\x32\xab\x9f\x84\x37\xea\xc2\xcb\xe3\xca\x10\x0e\xfc\xb2\xaf\x06\xa0\x9b\xee\xfe\x20\x19\xee\xd2\xc8\x7d\x74\x1d\xc4\x14\xe6\xce\x13\x96\x58\xb9\x14\x86\x43\xe9\xfe\xc2\x95\x18\x2f\x7b\x9f\xd3\x67\xf0\xdc\x3b\x53\xb2\xdb\xb0\x3e\x0a\x30\xb0\xe8\x87\xed\x5b\xf1\x4b\xb6\xe0\x70\xf8\x45\x9f\xfd\x8a\x33\x1f\xc9\xca\x90\xb8\xe0\x17\x20\xce\x30\xdc\xd0\x49\x14\x3f\x73\x2b\xe7\xd0\x26\x3e\xa6\xfd\xec\x5c\xfe\x6c\xfe\x3f\x7a\x24\x87\x80\xdb\x01\x5c\xbc\xb2\x93\x24\xa7\xcc\x01\xb1\x4c\x68\xee\x9c\x8c\x14\xa7\xd3\xbb\x03\x7d\x37\x45\x9e\x92\xc6\x7b\xec\x32\x8f\xf4\x53\xf2\x7f\xee\xf2\x06\xee\x81\x07\xdc\x88\xdd\x05\x77\x2e\xa1\x9c\x7a\xfd\x38\xaf\xfb\xac\xb9\xdb\xaa\xef\x36\xf7\x21\x58\x72\x2c\x52\xac\x63\x89\xd1\xcc\x88\xe3\xb8\x4f\x0e\x4d\x56\x3a\xea\x08\xee\x97\xc4\x39\x90\xa7\xb6\x80\xd1\xa9\x1b\xe4\xb5\x21\x4b\xb6\xca\x32\x79\x59\x92\x9d\x83\x83\x02\x35\x57\xd2\x26\x53\x62\xa6\x94\x8b\x81\xe9\x3d\xe8\xe0\x47\x73\x9c\xcd\x8a\x4d\x77\x46\x21\x58\x07\x26\x87\xcd\xe4\x90\x8c\x45\x25\x27\x70\xa0\xbc\x52\xb4\xd3\xc0\xc9\xc6\xba\xb9\x91\xb4\xb2\xe8\xa1\xc9\xe3\x20\xfe\xb9\x6e\xbb\x07\x32\x71\xc7\x89\x54\x38\xa1\x24\xab\x21\xea\x74\xcb\x93\x8b\x91\x57\x73\x40\x4e\xe4\x0e\x37\xa8\x58\x37\x2b\xd5\xab\x93\xa7\x6d\x52\x8a\x9f\x1b\x85\xbd\xf7\xc8\xb9\xeb\x66\x7b\x5f\xa0\xa0\x3e\xed\xf9\x63\xf6\x44\x84\xde\xde\x29\x9b\x51\x00\x86\xc9\xec\xb9\xda\x47\xb3\xb7\x3c\x8a\x5f\x4d\x68\xf7\x98\x5f\xd9\x9a\x90\x1e\x4f\xc0\xc5\xc4\xf8\xf8\x19\x8d\xc0\xb7\x94\x7d\x68\x1d\xe0\xb5\x1a\x9e\xc8\xb0\x9c\xa4\x93\x7f\x4d\xaa\x7e\xd7\x78\xf0\xc6\x34\x08\xa2\x3d\x4e\x6c\xc6\x07\x82\x64\xe7\xc9\x5e\x1e\x67\xa2\xf6\xb2\x7f\x2c\x3b\x9b\x1e\xf5\x32\x91\x43\x9a\x91\xe0\xe3\xbc\xf2\x1a\x3e\xcf\xa9\x11\xec\x97\x39\x95\x78\xe6\x23\xad\xae\xc9\x7f\xa4\x75\xdd\xf0\xd1\xdb\xd4\x8a\xe3\x81\xdd\xb1\xef\xd8\x95\x75\x8c\x2a\xe1\xaa\xba\x16\x17\x22\x35\x06\x7b\x03\xe9\xe4\x02\x33\x75\x12\xa0\x22\x79\xe0\x1d\x17\xaa\x8c\x8c\x77\x5c\xa0\x5d\x86\xca\x3a\xdc\xe1\x9c\x6e\xac\x77\x04\xde\x61\x81\x5c\xf1\x7c\xa8\x08\x1d\x12\x84\xd9\x6c\x32\xb0\x69\x68\xaf\xfa\x35\xe6\x56\xe7\x6c\x60\xbb\x80\x00\x85\xe5\x4a\xc7\x24\xa5\x63\x37\x58\x20\x09\x0b\xd1\xce\x7a\xa1\x2e\x10\x9e\x38\x8a\x1f\xa1\xbf\x75\xed\x33\x7f\xcc\x4d\x90\x86\xfe\xbc\x2d\x69\x91\xbe\xc0\x9b\xb2\x9a\xcd\x2a\xfb\xfb\x92\x16\xee\x6f\x1d\x2d\x85\x77\xe5\xe6\x72\x33\x07\xc3\x3d\xcc\xb4\x9d\xcd\x5a\xf8\x69\xff\x9f\x94\xe5\x6e\x36\x2b\x18\xd0\x59\x69\xa7\xd5\xb7\xa7\x93\x0b\x64\x8b\x47\xac\x4b\x13\x0c\xa7\x01\x7d\x38\xc4\x71\x61\x66\x6b\x66\xb3\x73\xd7\xc4\x96\xcd\x3e\xf5\xd8\xf6\xa9\xce\x2e\x22\x5e\xb9\x47\xd9\x78\x31\xac\xb2\x5c\x6b\x15\x85\x42\x0b\x66\xd9\xe5\x01\x55\xdd\xc4\xea\xcd\xeb\xce\x45\x9f\xfc\xd6\x64\xef\x27\x5e\x6d\xb7\x84\xe7\x23\x9b\xeb\xc0\x2b\xb0\x9e\xd3\x1a\xd7\xf3\xf5\x86\x12\x26\x5e\xd6\x4e\x26\x41\x52\x6e\x9a\xb5\xf1\x93\xb7\x93\x46\x7b\x19\x22\x38\x90\x24\x93\xd2\x03\x72\x5a\x6b\x0b\xf8\xda\x39\x52\xf4\xda\xc2\x75\x80\x81\x7f\x10\x5d\xd0\xdf\xe7\xed\xde\xee\x52\x09\x5d\xf7\xf3\xf6\x6c\x67\x7c\xec\xeb\xd7\x5b\xf9\x92\x5e\xfd\x0b\xd7\x87\xa6\x62\xa1\xc4\x43\x2e\x73\x6a\x46\x23\x9f\xf4\x1b\x2a\x72\x42\x42\xa7\xf5\x29\x62\xd8\xc9\xd8\x99\xd5\x95\x5f\x80\xe2\x2e\xab\x7e\x09\x97\x96\x6f\xb0\xc8\x00\x2d\x5a\x60\xaf\x62\x22\xfe\x66\x90\x6d\x6e\x89\x78\xa9\xa3\x34\xfa\x66\x69\x4f\xcc\xa0\xe6\xf3\x2e\xf3\xac\x8b\x0a\x39\x2c\x20\xc7\x55\xa7\xbd\x4a\xdb\x07\xaa\x6c\x7f\x2d\x04\x3b\x33\x87\xa3\xd5\xbf\x81\xbf\x1c\xbd\x1c\xfa\xa0\x5e\x63\x90\x39\xd8\xc3\x06\xb7\x3e\x94\xcf\xe7\xad\xc8\x0b\x51\x86\x4b\xd6\xa3\xf5\x37\xc8\x82\x08\x52\xc1\xe4\x20\x5a\x6a\x51\xaa\x07\x4f\x82\xcf\x86\xe8\x49\xcf\x2a\x8e\xc9\x82\xfd\x2b\x71\x6d\x86\x68\x59\x97\xf1\x1f\xa4\x45\x9d\xe7\x9e\xb3\x9f\x64\x00\x73\x99\x4a\x0b\x8b\x1e\x38\x4c\xca\xdc\x71\xea\x07\x5b\xa6\xf1\x30\x14\x0d\x76\xa7\xab\xed\xa8\x33\x07\x95\x99\x9f\x87\x42\x77\x57\x13\x9c\xbd\xcc\x91\x3b\x82\x18\x39\x25\xd9\x90\x6a\xad\x07\x07\x43\x3c\xea\xd7\xbb\x1d\x99\x4b\x9f\x3d\x31\xec\xbc\xa7\xcd\xf1\x0b\xb7\xef\x98\xf7\x3c\x0f\x25\xd8\x87\x31\x3d\x9d\x0c\x38\x61\x2c\x84\xe2\x7a\x48\x8e\xeb\xf9\x35\xea\xa1\x78\x87\x7a\x39\x8b\x5f\x41\x7c\xcf\x51\xb4\xc3\x47\xa6\x79\xb2\x31\x37\xd9\xd8\xc1\xc6\xbd\x6c\x93\xbc\x21\x02\x56\xe1\x35\x55\xfb\x38\x64\x3f\x73\xf0\x8a\x58\x4d\x15\x50\x24\x08\xe5\xd3\x01\x4b\x2f\x6b\xc2\x04\xbd\xa6\x8a\x39\x40\xc6\x2f\xb6\xe7\x33\x73\x94\xf3\x02\x15\x0c\x17\x10\x79\x13\xe2\x54\x98\xd0\x8f\x40\x3c\x0a\x45\x3c\x68\x00\x65\x55\x3d\x63\x01\x7d\x89\x24\x9c\x15\xe2\x08\x43\x99\x56\x07\x25\x89\x0e\xcf\xac\x33\x96\x99\xe2\x7e\xed\xeb\x86\x11\x8d\x36\xdc\x4c\xce\x67\x94\x29\x3a\x7a\xbd\x18\xd3\x13\x2f\x55\x53\x97\x6e\x4e\x6b\x84\xb0\x31\xdb\x0d\x33\x53\xdc\xfb\x4d\xe4\x5f\x5b\xa6\xbe\xfe\xa5\x4c\xfd\x00\xdb\x1e\x85\x2b\x46\x0e\x9e\xea\xae\xd1\x89\x12\x7d\x1c\x49\xd4\x60\x4b\x58\x4d\xd9\x8d\x7b\xab\x1b\xb7\x83\x52\x41\x32\x13\x1b\x3a\x9c\x8d\x27\xce\xce\xc0\xfa\xe8\xf5\x8e\x9e\x93\x1e\x7e\x85\x71\x3f\xb5\xc0\xc6\x0b\x88\x9d\xc1\x73\x8c\xb9\x4b\x70\x36\xcc\x13\x02\xa5\x18\xf0\xef\x19\xe6\xe9\x12\x1d\xa7\x39\x80\x9a\x04\x3b\x00\x59\xe1\xe4\x01\x76\xc7\xec\x5d\xea\x5d\x39\x5c\xd9\xa8\xce\x1e\xf6\x87\xc4\xe6\xdc\xe7\xa3\xac\x60\x1d\x6e\xed\xc8\x35\x60\x5c\x7b\x46\x47\xae\x83\x24\xe2\x38\xb7\x53\xde\x7d\x1e\x61\x0e\x8e\xf3\x03\x3b\xce\xf1\xc5\x7f\xbb\x7b\x20\xeb\x01\x94\x9f\x7e\xf6\x38\xba\x5d\x7b\xc8\x1c\x7e\x8d\x6c\x30\x0a\xa3\xcb\xfb\x36\xe3\xf1\xa3\x0b\xe3\x33\x34\x74\xfe\x2e\x22\x37\xb6\x1c\xdb\x35\xa8\x98\x4f\x19\xe0\x0c\x4a\xfb\x14\x40\xc2\xb3\xea\x8f\x2e\x40\xb3\x65\x67\x2b\x10\x1a\x91\x12\xca\x84\xaf\x2b\xe1\xca\x50\xc4\x31\xe1\x3d\x0c\xf4\xc0\x59\x18\x36\x0c\x1e\xe1\x37\xb1\x40\xa6\x38\x9c\xb0\xc6\x8f\x28\x91\x73\x02\x68\xee\x78\xa7\xcc\xa9\xe5\x0e\xce\x3d\x67\x76\x58\x81\x1e\xa5\xfa\x4b\xd7\xd8\x55\xc7\xbb\x33\xab\xeb\x00\x2d\x57\x28\x30\x91\xe4\x51\x5f\x34\x5a\xf3\xa8\x8b\xc4\x68\x7c\x7e\x74\xf1\x98\x7f\x55\x9e\x3f\xe6\x8f\x1e\xa1\x63\x32\x3e\x78\xd1\x44\x46\x12\x4c\x7d\x1a\x5a\xf6\x84\x7a\x43\x49\xaf\x3b\x19\x5b\x61\x16\x2a\x50\x12\x3f\x3b\x50\x42\x4f\xca\x24\x85\x16\x98\xcb\x67\x33\xad\xd0\x36\xe7\x30\xf0\x7b\x3d\x7f\x2c\xbc\x2d\x48\x58\xcf\x52\x5e\x92\xa5\x58\x0d\x90\x3e\x3e\xec\x9f\xc6\x33\x5a\x1a\x7e\xcc\x67\x8d\x23\xe3\xe1\x9c\xdc\xe5\x47\x36\x44\xca\xbe\xfb\xa8\x47\xbc\x20\x27\x68\x51\x4f\x93\x27\xb2\xf8\xf6\x90\x51\xe3\x4f\x4f\x1b\x34\xe1\xc4\x53\x3e\xbc\x9f\x3b\xd6\x7c\x6e\xf7\x08\x9a\xd4\x06\xa4\x97\x2b\x4f\x38\x6a\x92\xe1\xa8\x43\xd6\x99\x74\x58\x67\x92\x63\x9d\x49\x0f\xeb\x4c\xaf\x8b\x84\x7b\x46\xdc\xd6\xa2\x04\xc7\xbf\xb0\x8e\x9f\x43\xe9\xc4\xfc\x48\xd2\xc2\x2c\x0f\x62\xb5\x97\x6c\x65\xb8\x6d\xf5\x17\xad\x91\xec\xf0\xdb\xe1\xd9\xb3\x7c\xf6\xa0\x45\xd1\x73\xdb\xb7\x31\x8f\xed\xec\x65\x81\xae\x41\x73\xa2\xdd\xd8\xae\xab\x70\xd6\x49\xd4\x90\x2d\x40\x19\x91\xc7\xf6\xb4\x46\x39\xaf\x83\xcc\x80\x62\xbe\xdb\xde\xf0\xaa\x26\x2f\x1a\x6e\x43\xfd\x8b\x18\xb1\xa3\xef\xca\x6e\x1f\xe6\x97\x8c\x2a\xa7\xb8\xe8\x95\xfc\xf4\x96\x64\x25\xbd\xd5\x3d\x8c\xbc\xe8\xfb\x62\x14\xd7\xb1\x08\xcb\xf9\xee\xd5\x65\x23\xc0\x57\x11\xce\xd2\x89\x3d\x82\x63\xa8\xce\x4d\x33\xe1\x91\xdb\xbf\xdf\x38\x1b\x62\xd9\x8f\x65\x41\x87\xcf\xc9\x35\x8c\xd5\x30\x9b\x38\x35\xfc\xce\xe7\x44\x84\x41\x35\x6b\xb9\x24\xab\x32\x8e\xf7\x75\x79\x55\x4a\x1e\x0f\xe5\x53\xa1\xc5\x24\x36\xa0\x30\x0c\xe1\xa6\xe7\x33\x13\x00\x34\xfc\xb5\xcd\xca\x1d\xd8\x2e\x75\x3a\xb6\x4b\x75\x3c\xeb\x42\xb8\x42\xec\x0b\xf5\x60\x1d\x3c\x90\x05\x0d\xd1\x04\x33\x4c\x90\x8f\xc8\xd7\xd5\x35\xaf\xcb\x0b\x13\xbb\xbb\x4d\x65\x52\xab\x00\x75\x34\xca\xe9\xf4\x23\x64\x35\x43\xe8\xd2\x00\x49\xf4\x21\xef\x3d\x23\x57\x79\x1f\xb1\x38\x9c\x31\x1b\x9e\x68\x69\x75\x7c\xe4\x92\x9f\x3e\xab\x7d\x3c\x2a\x30\x7e\xf1\xa3\xf7\xd7\x6d\xd2\xd9\xd5\x95\x4f\x7c\xd6\x09\xa7\x7c\xb1\xa1\x37\xb7\xbe\x42\x67\xda\xa0\x4e\x4d\x6e\x57\xed\xfa\x96\xd4\xbb\x0d\xa9\xcd\x94\xd2\x09\x99\xf4\xd6\xd9\xc7\xb4\x61\xcf\x9a\xbb\x3b\xda\x79\x5f\x53\x4e\xd6\x62\x73\x6f\xb2\x05\x06\xc4\xf0\xa5\xd0\x41\xf4\xba\x80\x7e\x70\x49\xc6\x9b\xd1\x7f\x02\x45\x54\x9d\x86\x20\xb8\xb8\x44\xf9\x95\x62\x55\x90\x49\xec\xaf\xb8\xaa\x73\x83\x99\x7b\xaa\x46\x14\x0d\x5f\xa8\x11\x8b\x3d\x23\x3f\x8b\x45\x30\xb8\x2f\x0d\xf0\x98\x7b\x7f\x15\xcd\x1c\x3d\x66\x4f\x7e\xff\x38\xca\xe0\x05\x39\xfd\x14\xdd\x88\x7c\x6d\x16\xf0\x24\x1f\xfa\x41\xfd\x2d\x64\xc3\xbf\xc9\x92\x9e\x9d\xad\x46\x54\xcd\xf5\xec\x4c\xaa\xf9\xf2\xb3\x33\x29\x91\xcb\x5b\x6c\x72\x32\x10\x5c\x37\x8c\x2c\x3c\xa3\x2a\xa5\x44\x52\xa6\xe8\x67\x94\x42\x31\xfa\xa9\xfb\xb9\x76\xd8\x07\x8c\x44\x16\xeb\xa3\x68\xc8\x2c\xce\x87\x19\xdc\x3c\xde\x3a\x4d\x89\xc6\xd9\xe0\xa7\xc5\x18\xf7\x48\xa3\xb0\x8b\xac\x6c\x89\x28\x80\xe8\xe6\xd8\x8c\x28\xf4\xd1\x9f\x6d\x70\xe5\x48\x79\x84\x38\x17\xbe\x9a\x86\x15\x2e\x92\x49\x69\x36\x0b\xf8\x1c\x6f\x67\x10\x5e\x52\xbf\x32\x25\x1a\xfe\x02\x28\xe5\xab\xb7\xb5\xae\xac\x63\xd5\xb6\xf4\xc6\xf8\x1a\xc2\x21\xc2\x51\xb3\xee\xc1\xb4\xa9\xa2\x35\x37\xf0\xac\x5b\x02\x02\x93\x79\x12\xb5\x68\xce\xa3\x62\x8c\x53\x97\x37\x60\x04\x9d\x5d\xa0\x2e\x59\x61\x34\x80\x5c\x7e\xa2\x9b\x8d\x3e\x84\x41\x01\x89\x0e\x15\xd0\x2f\xfc\xf4\x70\xfa\x40\xeb\x77\x6f\xab\x36\x33\xd5\x30\x67\xc4\xc4\x85\x49\x86\x6b\x8d\x2e\xda\xf4\x75\x50\x00\x2d\x28\xe0\xa2\xfa\x55\x48\xe0\x7e\xe8\x41\x96\x2b\x49\x9d\x2b\x42\x94\xab\x22\x37\x6e\xfc\xa6\xbb\xee\xb4\x05\xa4\x24\xcf\x17\x35\xf1\x68\x7b\xde\x8b\x34\xd2\xb5\xea\xd4\xcb\xb0\x2f\x40\x30\x73\xad\x48\xb7\x7b\x82\x23\x7c\x35\x18\xe5\xa8\x29\xbb\xa6\xfc\x8e\xd4\xb1\xbc\x9e\x9d\x84\x23\xbe\xfd\xd3\x09\xe8\xb3\x34\xe7\x6e\xdf\xbd\x42\xe2\x78\xe8\x0e\xea\x84\xaf\xeb\xd8\xd0\x13\xdf\xaa\x32\x8f\xbb\xfb\x44\xa8\x7e\x10\x33\x14\x64\x85\x7e\x40\x59\x32\x48\x28\x0b\xbe\x51\x51\xff\x4b\xba\xb2\x49\x84\xba\x6f\x46\xb9\x5b\x48\x71\x86\xd4\xd4\xc8\x6b\x90\x94\xb2\xff\x3c\xa7\x51\x85\x99\xaa\x2f\x9d\xbb\xcb\x25\xb3\x0f\x0e\xa6\xbe\xbd\x44\xaa\x13\x70\x55\x32\xd8\x0a\x57\x25\x59\x36\xab\x51\xb5\x3c\x5f\x95\x65\x59\x2d\x2f\x56\xb3\x99\xc9\xde\xc1\x97\xcd\x4a\xca\x5c\x81\x9a\x64\x7a\x9a\x88\x89\xee\xf8\x3e\xbf\x7e\x8a\x09\x2e\x99\x9a\x21\x86\x7b\x89\x39\x86\x4c\x4d\x39\xc1\xa1\x89\xd6\xca\x10\xae\xca\x73\xdc\x96\x8d\x5d\x58\xf5\xa4\x7d\x5c\xd9\x85\x6d\xca\x66\x59\xad\x46\x74\xb9\x59\x95\x4b\xb2\xdc\xac\x30\x5b\x6e\x56\x2b\x5f\x8e\x34\x17\x18\xaf\x8f\x90\xcc\x56\xd2\x81\x95\xa6\x17\x44\x7a\x31\xe5\xa9\x1d\x28\x83\xba\x04\xad\x4b\xed\x93\x23\xe4\x94\xe4\x46\x77\x17\xc6\x47\x04\x56\xfe\xf8\x78\x38\x73\x60\x86\x00\xb9\x4b\xcc\x57\x09\x18\x3a\x9c\x11\x69\xed\xa5\x1e\x98\xc8\x1c\xb5\xd9\x9f\x32\x59\x24\x6b\x5a\x9b\xbb\xa6\x4b\xd9\xdc\xdd\xdb\x4b\xcc\x72\x6c\x63\x08\x00\xbd\x5a\xa3\xb5\x05\x57\x42\xd0\xcc\xfd\xd2\x7b\x32\x22\x34\xce\xc3\xeb\x65\x9d\x50\x16\xec\x79\x23\xcb\x3c\x21\xdc\xb9\x68\x45\x19\x5e\xf8\x3a\xe3\x85\x53\x7c\x76\x78\x08\x9f\x76\xba\x8f\x7d\xe8\xa5\xb7\x61\x75\xf4\xa1\xed\xee\x67\x2c\x1e\x84\x0e\x5c\x66\x9e\xc2\xc5\xfc\xa7\x9e\xa2\x43\x5d\x0a\xa9\xd3\xef\x68\x75\x94\xcc\x95\x1b\x8f\xca\x94\xe7\xbe\x1f\x71\x67\x55\x48\x0c\x42\x0a\x96\x32\xca\xca\x69\x52\x5c\x0d\x4c\x26\xed\x00\x73\xab\xe2\x0e\x73\x86\x46\x35\xca\x33\xbd\x74\xa3\x98\x05\x68\x91\xef\xa8\xf8\xa9\x6a\xbf\x87\xaa\xc2\x24\x2a\x7f\xdd\x25\x1a\xdd\x2d\xd4\x45\x2a\x1c\x47\x84\xbc\xc2\xaa\x43\x89\x69\x79\xfe\x98\xfa\xfb\x8d\xba\x80\x4d\x9d\xb2\x69\x49\x57\xab\xd9\xac\x30\x7f\xf5\x52\x6d\xfd\xda\x06\x58\xf4\xe0\x94\x4c\xd2\x33\xfc\xa2\x1d\x8f\x4b\xfc\x0f\x81\x36\x76\xb7\x14\xbe\x8b\x5c\x21\x9e\x00\x24\x4b\xb2\x52\x02\x7d\x59\x96\x05\x19\x53\x5f\x05\x2b\x5d\xd3\x65\x2f\x30\xc8\x6a\xe1\x0f\xe1\x92\xac\x90\xbb\x39\x33\x63\xc9\xab\x2b\x5d\xdb\x85\x38\x5d\xc3\x24\xf4\x11\xab\x4b\x02\x72\x8c\xea\x3f\x00\x5a\x30\xb5\x2a\x9d\x52\xd4\xff\xe2\x33\x2d\x42\xb1\xed\xa7\xcc\xe1\x70\x18\x1c\x30\x7a\x0d\x9c\xf2\xd1\x8a\x7c\x8e\xe2\x9b\x9a\x7f\xd1\x6d\x11\xc9\x7b\x3d\xda\x06\xd7\x45\x47\x0d\xa1\x09\x27\xdf\xb1\xb9\xba\xdc\xdf\xef\x38\x53\x54\xdc\xb4\x2a\xa6\x66\x48\x9d\xa6\x13\x4f\x81\xdc\xb1\xdd\xf6\x0d\xdf\xde\x56\x2c\xd2\x38\x40\x1e\xe2\x81\xf7\xb1\xae\xfe\xaa\xda\x6c\xba\x5a\x8b\x02\x8e\x6d\x98\x45\xac\xc7\x76\x72\x76\x26\x90\x62\x3c\x97\x62\x05\x05\x1e\xe0\xc6\x61\x3f\xb6\xc4\xa5\xe6\x9e\x5c\xd8\xba\x24\xe7\xb2\x20\x08\x0d\x74\x14\x1a\x61\x78\x0c\x78\x3e\x77\x4e\xd9\xb2\x07\x80\x70\xae\xbd\xeb\x76\xee\x38\xba\x64\xf6\xea\xb4\x95\x5f\x09\xdf\x29\xca\x08\xfc\xe7\x5d\xf5\xda\xbc\xa6\xed\xba\x61\x8c\xac\x6d\x52\xee\xe4\x6e\x35\x07\x25\xb9\x5e\x65\x02\x9a\x38\x0b\x6b\xa4\x8a\x8c\x1a\x9e\xd6\x79\xdf\x16\xda\xc2\x77\x2b\x6c\x22\xa0\xae\xcf\xce\xc0\x60\x60\x42\x9d\x54\x37\x28\x52\x59\xf0\xc7\xa2\x9b\xb8\x43\xcc\xdb\x5b\x7a\x2d\x0a\x34\x32\xde\x17\xcc\x9b\x1d\x68\x79\xaa\xfe\xab\x40\x73\xab\x98\x2a\x14\xb3\x4c\xe7\x8c\xfc\x2c\x0a\xf4\x78\xd2\xcc\xeb\x86\x91\xc7\xfe\x91\x0d\xed\x68\xe6\xa0\x15\x1a\x55\x63\xca\x5a\x51\xb1\x35\x69\xae\xc7\xdb\xd9\xac\x32\xd3\x7d\x02\xb6\x55\x3d\xa7\x0a\xe1\xca\xad\x02\x49\x5f\x91\x59\x97\x85\x00\x62\x9b\xcb\xa5\x94\xa1\x52\xce\xbb\xc1\xbd\xce\x92\xa4\x07\xd0\xdc\xfc\x38\x3a\x3b\x53\xd5\xa3\x77\xc8\xcb\xff\x5d\x65\x43\x4e\x16\xc9\xa8\x67\xd4\x8d\x13\x0d\x46\x72\x92\x31\xd1\x73\xe2\x31\x5d\xcb\x4f\x2b\x61\x52\x8b\xdc\x63\x30\x59\x19\x44\x43\x59\x75\x9c\x1e\xb0\xd6\x96\xbd\xec\x38\xb5\xb6\xe3\x85\x02\xf9\xd0\x92\x81\x8e\xb7\xae\x53\xbf\x4c\xed\xee\x66\x52\x62\x65\x23\x2d\xc1\x96\x9c\x68\x58\x72\x0d\x07\x6a\xa7\x8f\x92\xb4\x54\x59\xfd\x22\xc1\x9d\xf4\x55\xd9\xb4\x60\x26\x7b\x57\x8a\x5f\x7d\x80\xca\x69\x83\x8a\x7e\x35\xc7\x10\x10\xbb\xcd\x35\x48\x33\x93\xf1\x00\xce\x8c\x41\xe4\x15\x65\xd4\x90\x4a\x5d\x16\xd8\x94\x20\xf5\xf6\xa7\xbd\x8c\x2a\x1f\x10\x7b\x41\xec\x7d\x31\x37\x8e\x43\x1a\x69\x13\x6c\x63\x5a\xb2\x40\x44\x89\x95\x29\x5c\xd1\x18\x36\xa4\x6e\xe1\x4a\x42\xcf\x5c\x12\xb8\x4d\x95\x16\x9b\xf2\xfc\xf1\xe6\x89\xad\x04\xf2\x78\x63\x85\xf8\x5d\xd9\x2a\xc9\x7d\x5d\x92\xe5\x4e\x97\x3e\xa4\xf5\x74\x52\x96\x3b\x1b\xd6\xd4\x2c\x77\xab\xc3\x81\x2e\x77\x2b\x7c\x6b\x6d\xb9\x26\x55\xac\x5b\x6f\x7d\x59\x83\xf9\x08\x42\xc9\x4c\xe2\x58\x5f\xf2\xc8\x79\x32\x26\xdc\xe2\x0e\xaf\xd1\xe8\x3d\x27\xd5\x07\x9d\x54\xd6\xa7\x03\x8e\xbf\xf0\x2c\xaa\xfa\x02\x17\xb7\xa6\xfc\xd8\x0e\xa1\x23\x3e\xbb\xb7\x03\xd1\x12\xe1\xc8\xd6\x0e\x16\x8f\x6b\x65\x8e\xdf\x60\x54\x9b\xe3\x56\x2c\x77\xab\x72\x2d\x75\xc8\x99\xe5\x4f\xd7\xee\x60\xc9\x23\xb2\x7d\xd7\x1f\xc6\xeb\x1d\x7a\x98\x06\x57\xd2\x67\x38\xa6\x61\x62\xba\x74\x22\x9e\xcc\x93\xbe\xd2\x55\x44\x73\x85\x21\x73\x64\x60\x34\x48\x4b\x40\x40\x1e\x30\xfb\x9a\x2b\x7c\xc9\x57\x23\x76\xe2\xbc\x99\x9f\xb7\xec\xe1\x74\x4f\x61\xae\xee\x5c\x0d\x5d\xf2\x19\x97\x47\xfc\xf2\x44\xf9\xd5\xfe\x0e\x38\x4f\x35\x53\xcd\x0e\x3d\xb7\xd5\xc7\x03\x3d\x37\x68\x59\xce\x65\x6c\xf3\xb0\xd4\x67\xa9\xf5\xa6\x86\xf5\xc4\xbe\x78\x61\x87\x06\xb8\x7a\xa5\xbb\x72\x40\x99\x06\x9c\xd1\x6e\x36\x2b\xaa\xce\x95\xef\x8b\x1c\x18\xed\x48\xbf\xfb\xc1\xb0\xc6\xc4\x6a\x82\x37\xa0\x28\xa5\x25\x59\x36\x65\xbb\x64\xab\x95\xde\xc2\x9d\xcd\x17\x30\x29\xcb\x6a\xd9\xac\x0e\x07\xeb\x58\xf2\xcd\xdf\x77\xd5\xa6\xe0\xcb\x66\x85\x29\x3a\x1c\x84\xd3\xf3\xba\x43\xd3\x29\xe6\xf4\xee\xc9\x17\xfb\x98\x0b\x95\x8b\x2f\xac\x70\x28\xbf\x7a\x17\xe4\x37\xbe\xd3\x59\xcf\x86\xd2\x2f\x42\x96\x97\x38\x39\xa7\x51\x78\x0d\xc5\x5f\x90\x13\x5d\x27\x91\x24\x73\x47\xf0\x42\x3c\x2a\xd7\x26\xe3\x7f\xf4\xb0\xc6\x64\x1e\x84\x73\x6c\xe1\x67\xf0\x7e\x97\x58\xac\x40\x63\xf4\xa2\xe1\x65\x9b\x9a\xb2\xd4\xc3\xea\xb3\xa5\xc5\xf7\xa5\x60\xb3\xf9\xd2\xa3\xec\xe7\x49\xe6\xf3\xb0\xc6\x06\xd4\x05\x70\xa5\x39\x58\xc3\xef\x8c\x73\xb3\x56\x27\x85\x3a\x98\xc0\xcb\x3d\xe1\x60\xc8\xcf\x82\x57\x6b\xa1\x7a\xac\x6b\xcb\xd7\xb7\x41\x65\x13\xed\xc9\x40\x30\x43\x12\x7f\x80\x2c\x14\x69\x35\x3e\x9f\x95\x7a\xea\x56\x36\x2d\x7d\x71\xd9\xdb\xaa\x7d\x6b\x9f\x9b\xfe\x35\x8f\x00\x3e\xd3\x4a\xee\xed\xf9\xea\xb9\x7f\x93\x7e\xa7\x79\x73\x3d\x9f\x50\xc5\x62\x5d\x96\xa2\x15\x1f\x0e\x44\x62\xd7\x55\xa4\xd4\xf1\x80\x02\xc7\x77\x17\x61\xce\x1a\x37\x65\x3d\xe6\xdb\x2d\x59\xd3\x6b\x4a\xea\x82\x21\x94\x01\x2a\x78\x70\x05\x02\x53\xb8\xe8\x97\x6e\xe2\xe0\x9b\x72\x04\x28\x60\x58\x08\x6a\x33\x28\x69\xcc\x57\x8b\xb0\x86\xcf\x1b\x22\x5e\x29\x66\x49\x51\xbb\x42\x87\x0d\x6b\xa3\x39\x1a\xb5\x0a\x8a\xea\x89\x81\x64\x77\xd7\x66\xb3\xc2\xf4\x93\xd9\x51\xdd\x99\x4e\xc9\x8c\x83\x1d\x45\x08\x57\x97\x3a\xc3\x66\xa5\x64\xd4\x6c\x56\x66\x57\x7b\xc7\x7c\x15\x64\x43\xb6\xb5\x0e\x31\x47\x68\x01\xdd\x80\x3c\x0f\xb7\x7b\xe3\x75\xe0\xe6\x43\x8b\x90\xe9\x6e\x49\x89\x8f\x37\x32\x5b\x1a\x02\x11\x56\x85\xac\x27\xd3\x10\xf8\xe8\x29\xe0\xa3\xbf\x04\x7c\xec\x52\x67\x48\x65\x41\x09\x67\x5b\x35\xfd\xa5\xae\xf0\x1e\xfa\x64\xdb\xd5\xbd\x68\x38\xa1\x37\x4c\xcd\x94\x60\x86\x39\x56\x9d\xa0\x5f\x0b\x7f\x6a\xe0\xef\x0f\x46\xa2\x8e\xfe\x6c\xc7\x62\x6c\xbf\xee\x3b\x13\x28\x3c\x38\xff\x35\x5b\x03\xf0\x70\x25\x50\x0a\x86\xf7\xb4\x6e\x35\x11\xf7\xec\xe7\xd0\x99\xbd\xec\xc1\xdf\x18\xa8\x8b\x1c\x1c\x9e\x32\x5d\x51\xd4\xf5\xd5\x39\x0c\xb6\xfe\x7b\x1b\xb4\xb6\xe7\x01\x9f\xd4\x2c\xbc\x0d\x52\xaa\xa9\xc1\x12\xc2\x03\x5c\xb8\x2d\x2c\xf4\xc9\xd1\x39\x8f\xf4\xc5\xf3\xb4\xa0\xda\x49\xa9\xe8\x56\x21\xd8\xd3\x7a\xa1\xcd\x4f\xf7\x5b\xb2\x08\x3c\x7f\xa5\x44\x28\x77\x76\xb3\x58\x77\x14\x13\xd8\x29\x98\xc0\x7e\x19\x26\x58\xa7\xda\xab\x1b\xc2\x08\xaf\x04\x71\x9b\x15\x4c\x16\x20\x3f\xd4\x20\xca\x53\xe9\xa1\x29\x34\x1d\x62\x0e\x94\x1c\x0a\x03\x39\xc7\x5f\xe6\x62\x4a\x74\xda\x64\x96\xc9\x8e\xcc\x74\x12\xe4\xaa\x9f\x8c\x8c\x8e\x91\x91\x0a\x0b\xdc\x22\x4c\x97\xcd\xaa\x6c\xbd\x51\x1a\x0f\x7c\x62\xdc\x32\x95\x14\x1c\x55\x84\x35\xe5\x7d\xcd\x19\xd6\x1b\x14\x95\xac\xf5\x39\x2d\x80\x97\x40\x51\xed\x23\xaa\x8b\x38\x57\x61\x52\xf1\xb8\x54\x7e\x58\x48\x3b\xb7\x97\x0d\xa6\x66\x1f\x43\x4e\x02\x8d\x2a\x67\x08\x61\xcb\x6a\x25\xa5\xc4\xb7\x55\x6b\x57\xf6\x74\xf3\xa9\xba\xf7\xec\x44\xe8\x29\xab\xf8\x79\xff\xc6\x71\x4b\xb3\xd9\xb4\x82\x8f\x20\x99\xcd\x9c\x98\x8e\xa0\xd7\x5e\xf6\x26\xec\xb7\x7f\x74\xeb\xa1\xd0\x33\xf2\xe1\xc0\x67\x33\x53\x52\xaf\xd5\x10\x77\xeb\x8c\x87\x7f\xd9\x33\x74\xef\x92\x8a\x29\xad\xcd\x82\x5c\x97\x87\xc3\x94\xd6\xc9\x33\xd4\x19\x27\x21\x5a\x0f\x19\xef\x51\xc5\xea\x47\x02\x6a\x28\x67\x46\x76\x6f\xbb\x53\x18\xb8\x7d\x4e\x18\x7f\x52\x40\xec\x5d\x38\x9c\xdf\x46\xa4\x57\x38\xc0\x71\xfe\x56\x5b\x19\x20\xad\xae\xa0\x9c\x1f\x12\xca\xb6\xc1\xeb\x69\x04\x50\xb1\xd4\x84\x44\x4b\x75\xf3\x75\x75\x47\x4c\x84\xe3\xea\x70\x10\x4b\xb2\x52\x74\xaa\x87\xc9\x77\x67\xda\xd5\x0c\xeb\x14\xdb\x2e\x38\xa6\xba\x28\xf0\x10\x74\xb8\x12\xf2\x42\x87\x69\x7d\x22\xed\x3d\x96\x0c\xef\x8a\x41\xda\x90\xdb\x5c\x19\xeb\x9e\x6f\x83\x9a\x7a\xe6\x6b\x24\x11\x66\xdd\x35\x46\xd7\x8a\x77\x27\x0f\x2b\x14\xbc\x83\xf4\x4a\xb1\x8a\xe3\x8b\xbd\x90\x10\x4f\xf2\xce\x92\x29\x9f\xc5\xde\x13\x69\xea\x88\x74\x55\x9e\x3f\xae\x9e\x50\xe7\x02\x64\x89\x74\x5b\xd2\x65\xb5\xc2\x7b\xd5\xd5\x62\x83\x0d\x75\xae\x17\x3b\x5b\x3a\xd0\x89\x6b\x7e\x53\x22\xa9\x8a\xe1\x16\x8d\xf8\xdc\x7e\x58\xfa\x3f\x0f\x87\xe5\x0a\xfb\x9f\x5a\xc4\xdf\x20\xbc\x9b\xcd\xd2\xa7\xf3\xf9\x7c\x87\x70\xb3\xac\x56\xa5\xba\x97\x37\xee\x5e\xde\x00\x95\xd6\x0e\xe9\xeb\x52\xcf\xb2\x91\x26\xba\xbb\xd5\xf5\x1b\x32\xd0\x99\x9e\x09\xbc\x06\x16\xbc\x77\x5b\x7e\x35\xbc\x3f\x56\xdc\xcc\xc7\x43\xad\x3a\x1d\x6a\xf4\x21\x50\x6b\x10\xae\xb2\x50\xab\xb4\x5e\xab\x35\xa0\x51\xc0\x6b\x1c\xf0\x1a\x03\xbc\x93\xc0\xd5\x02\xb8\x8e\xcd\x3b\x64\x7d\xa0\xf7\x91\xc8\x73\xf7\x85\xe2\xc8\x35\x0b\x64\xef\x5b\x57\x82\xc3\x85\x2e\x8c\xd3\x2b\x94\xa1\xb9\x57\x0f\x50\xb5\x3f\xbb\xcd\x06\x49\x4c\xdb\x84\x24\xd8\x52\x83\xd2\x3a\x02\xe5\x8a\x77\xef\x5d\xe7\x3a\x5b\x5a\x40\xc1\xe0\x81\xd4\x55\x10\x6d\xeb\xe0\xb5\x66\x8b\xba\x81\x50\xb3\x19\xe8\xb5\xc4\xbc\xda\x6c\x9a\x4f\xaf\xd5\xe4\x02\x03\x88\xf5\x49\x32\xb5\xd7\x6c\x7c\xc6\xfb\xa6\xd9\x90\x8a\x01\x15\x85\xa2\x6e\xb6\xd2\x5b\xc9\x2f\x7f\xf7\x7f\x0b\xc1\x77\xe4\x20\x0e\x17\xe8\x8b\xdf\xd1\x39\x94\xa9\x25\x68\x31\x65\x3b\x35\xb2\xd1\x33\x40\x28\x6a\x20\x00\x2d\x8c\x62\xf3\xe8\xec\x74\x6d\xb9\xaf\xf5\x04\x0a\x28\xf6\x4e\xfb\x56\xec\xa8\xb8\x9d\xbe\x62\xa0\xfc\x5c\x83\xd2\xff\x36\xb0\x74\x7a\xe6\x48\xbc\x0d\x30\xb5\x46\xf4\x47\x7f\x80\xe5\x15\xfc\xac\xfc\x17\xac\xe8\xd1\xf3\x4a\x90\xc2\xd6\x18\x3e\xc7\x1c\x9d\x4d\x17\xd3\x33\xfb\x80\x23\xa4\x83\x54\x74\x33\xab\x06\x0c\xa0\x20\x2e\x83\xd7\x0b\x53\x42\xef\xd2\xec\x63\x00\x19\x52\x7e\x45\x42\x23\xed\x73\x48\x91\x33\xa1\xed\xeb\xea\x75\x41\x10\xd4\xcf\x7b\xf9\xf6\x8d\x2b\xa1\xa7\xf1\xc0\x17\xea\x0b\x5d\x70\x08\x28\xa1\xc9\xa4\x2c\x2f\x7e\x77\xae\xff\x78\x74\xf1\xbb\x73\x69\xcb\x3f\x0d\x81\xd1\x6e\x3e\x44\xe5\x68\x9f\x35\x57\xeb\xaf\x29\x44\xf9\x1a\x56\x56\x10\x84\x2e\x45\xba\x88\x5f\xd1\x89\x44\x50\x86\x2a\x33\x33\x05\x99\x04\x5f\x74\x47\x06\x14\x04\xe1\x07\xb4\x95\x68\x44\xe6\x06\xaf\x5c\x65\xff\x92\x61\x32\x57\x00\xf7\x4f\x28\x26\xf3\xdc\xd1\x2d\x05\x26\x73\x3d\x7d\xdf\xb8\xc2\xc4\xb0\x07\xfe\x59\x8b\xc9\xdc\xff\xe2\xd8\x90\x91\x3f\x69\xb7\x1b\x90\x0b\xdf\x44\x6c\xb6\x62\xbf\x81\xe3\x2b\xbb\x32\x5f\x50\xa4\xd5\x94\xc1\xd4\x6a\xec\x29\x82\x98\x5a\x53\xe8\xd7\x6a\xa9\x4d\xb3\x7c\x79\xa0\xa0\xbd\xfc\x2d\xf4\xad\x9d\x5a\xa4\x43\xca\xd6\x07\x17\x1b\x25\xb6\x3e\xa3\xb5\x05\x86\xea\xda\x84\x88\x3a\x82\xfc\x3d\x69\xb7\x0d\x6b\x0d\x31\x4d\x68\xab\x6b\x65\x69\x93\x00\x14\xb1\xc3\x88\x13\x96\xfc\xb7\xb6\x61\x8f\xaa\x2d\x8d\x4b\x72\xea\xb6\x94\x5d\x6f\xc8\x5a\x34\x3c\x2d\xd2\x19\x7f\x9e\x2b\xe1\xd9\x2d\xd2\xa9\x6e\xfd\xdf\x00\x7e\xb4\x74\x65\x2f\x1d\xf0\xfc\x85\xfa\xbc\x59\x43\xfd\xdf\x3f\x91\xcd\x56\xe7\xb7\x55\xf4\xd5\x14\xe6\x2c\x4b\x03\x7b\x85\x51\x6f\xae\x6d\x7a\x4d\x14\x86\x0c\x5f\x85\x1b\x01\xc1\x3b\xb6\x2b\xdd\xd8\xa9\xb0\xb2\x99\x3a\x43\xb7\xa9\x30\x7a\x37\xc8\xdc\x89\x5c\x66\xe2\xe0\x61\x58\x64\x49\xbf\x58\xf2\xd5\x48\x2c\xf9\xea\xc8\xac\x18\x92\x76\xf6\x32\x33\x29\xcb\xc9\x04\x13\x0b\xb4\x0b\x46\xa7\xe0\x9b\x65\x94\x0b\xfe\xa5\xd6\x32\x0c\x4f\xa7\x42\x23\x13\x43\xd3\xce\x66\xa6\xe8\x67\xab\xa6\xe8\x58\x30\xea\x3d\x75\x70\xd8\x4d\x6c\x1b\xf6\xdb\xe7\x58\x18\xb5\x67\x65\x6c\x99\x7a\xc1\x9b\xbb\xef\xaa\xfb\x4d\x53\x81\x4a\xc8\x28\x83\x70\xd2\x73\xbc\x8b\x96\xe6\xd3\x6b\x9b\x77\xe5\x58\x77\xd3\x9e\x06\x53\x3c\x09\x94\x14\x57\x4a\xdc\xf1\xd5\xcf\x72\x0c\xcb\x6d\xae\x4c\x9a\x2d\x61\x9a\x55\x75\x20\x23\x31\x50\x59\xb2\x80\x65\xe3\x41\x1d\x74\x2a\xb1\x82\xb2\x99\x56\xd7\x19\xb9\xef\x64\x08\xe7\xdd\x05\xaa\xab\x0e\xf9\xf1\x39\x90\x70\x93\x78\xcb\xf6\x75\xc9\x41\x26\x37\xef\xfe\x7d\x47\xb8\xcb\x63\x61\xba\x8c\xfd\x10\xb5\x62\x38\xaa\xd9\x3d\xf2\xb8\x61\x24\x8a\xd0\xf1\xc4\x2f\x2d\xc8\x05\x30\x0f\xbd\xa5\x08\x48\xac\x81\x01\xc8\x1b\xc4\xf3\xf6\xa1\x44\x47\xe4\xdd\xc0\x82\x6e\x75\x06\x76\x0e\xae\xb9\xf1\x63\xc5\xe8\x71\x37\xd5\x4c\xf5\xa0\x23\x84\x27\xc9\x56\x70\xfc\x38\x18\x22\x83\xff\xcb\x68\x4f\x76\x5a\x21\x0d\xea\x6c\x60\xe2\x84\x91\xdf\xc3\xc4\xb5\x8c\x64\x14\x0f\x04\x33\x1b\xd2\xda\xaf\xd1\x27\x98\x65\x75\x7f\xa1\xbf\x91\xe8\x0d\x99\xea\xbe\x19\xe9\x5d\x57\xa3\xe5\x36\xb9\x81\x7a\xfd\xdc\xcb\xbf\xd6\xa6\x12\x1f\x98\x3e\x02\xa3\x45\x3b\x24\x71\x4f\x03\xc5\x1f\x16\xe7\x58\xcc\x5b\xca\x6e\x76\x9b\x8a\xd3\x7f\x10\x54\x14\xe7\x38\xa0\x05\xae\x0e\x28\x82\xb4\x4b\x5b\xf7\xb1\xea\xca\xbd\x74\x3d\x6d\x37\x3b\xae\xd5\x67\x50\x3d\x39\xb4\x11\xa3\x7d\x7c\x96\x8c\x81\xc7\xb4\xf8\x51\xcd\xe1\x39\x59\x6f\x2a\x4e\xea\x57\xd5\x76\x0b\x0c\x2a\x16\x71\x8c\x68\x36\x90\xe5\x78\x1f\xd1\x57\x56\xd4\x54\x42\x76\x08\xf9\x97\xb6\x08\x8f\x92\xb9\x23\x65\x90\x83\x3a\xf6\x93\x89\x3e\x4d\x88\x08\x8e\xc6\x5b\xf4\x6d\xaf\x6e\x1c\x67\x1d\xa9\xb6\xdb\xcd\xbd\x63\x94\x55\x0b\x1e\x41\x40\x93\x6b\x2e\xad\x6d\xdc\x8d\xec\x79\x7d\xa3\x99\xab\xab\xf6\x96\x70\x93\x7c\xac\x8b\xca\xc3\xed\x13\x09\x3a\xa4\xf7\x03\x54\x95\x07\x77\x68\x0f\xa2\x84\xb9\x59\xc2\xd5\xb8\x01\xa3\xf8\x85\x50\xb3\xc3\xb4\x9e\xc2\x15\xe1\x58\x57\xcc\x69\x67\x95\xe0\x19\x61\x57\x44\x48\x0f\x87\xbd\x1c\xd9\xa0\x45\xf5\xb8\xe0\x46\xf9\x63\x6c\xe3\xc2\xc2\x5b\xdd\x89\x14\x05\x66\x8e\x06\x33\xab\x17\x41\xa3\x20\x3d\x7c\x62\x2a\x72\x66\xa2\xca\xe4\x2f\xab\x7a\x2c\x5f\xa9\xed\x27\x24\xf7\xd5\xaa\x6c\xe4\x43\xfd\x06\x62\x30\x38\xd3\x26\x6e\x72\x16\xfd\xb2\x99\xcd\x1a\xe3\x4e\x33\x9b\x4d\xec\x9f\x5a\xd7\x0b\x6e\x4d\x53\x97\x39\xb2\x39\x1c\xa8\x82\x69\xec\x60\x96\xfc\x76\x90\xcd\x82\x85\x45\x60\x61\x29\x58\x22\x4a\xc7\x42\xa5\x6c\x0c\x25\xa3\x19\xb3\x05\x64\x1b\xd4\x96\x7b\x7f\x46\xfb\xf0\xac\x09\xf1\xcc\xa8\xd3\xe4\x28\xa5\xc0\xd5\xca\x68\xdc\x5a\x29\xe5\xc3\x4c\xd3\xba\xc8\xc2\xdb\xee\x17\x0c\x73\xe4\xad\x53\xce\xc2\x1b\x5f\x12\x0f\x80\x6d\x33\x0c\xdb\x46\xc3\xb6\xdf\x2a\xd9\x0c\x01\xdd\xea\xd0\x13\x90\xdb\x8b\xbe\x2a\xa9\x4d\xab\x06\x99\x8d\x1c\xee\x90\x1c\xee\x20\xdc\x06\x8c\x81\xe7\x09\xb4\xbb\x6b\x95\x71\x77\xa5\xda\xdd\x75\x70\x27\x77\xc1\x4e\x8e\xda\xe5\x66\x65\xb6\x7f\xad\xb6\x75\xa7\xb6\x55\xa6\xdb\xda\x44\xdb\x6a\x94\x8b\x4d\x49\x03\x49\xb6\x39\x51\x92\x8d\xa5\xd8\x7c\xc3\xac\xb8\x9a\x79\x16\x78\x5f\x1d\xf5\xcf\xca\x48\xbb\x98\xfe\x26\xf2\xae\xe2\x4b\x52\x79\x77\xcb\xe9\x5d\xc5\xef\x15\x8f\x30\xa5\xf5\x14\xdf\x11\x7e\x43\x6a\x33\x04\x25\xed\x62\x69\x6c\x43\x2b\xdc\xbd\xb1\xdc\x85\xd1\xab\xa6\xf1\x7a\x63\xc5\x87\xb9\x8f\x03\xc7\x47\xc7\x8f\x45\x9c\xd5\x92\xac\x22\xdf\x8d\x88\x70\x9b\x3c\x3c\x26\x1c\x12\x92\xfc\xd0\xd0\xda\x55\xa8\x47\xb8\x71\xf4\x5c\xb1\x56\x22\x10\x28\xba\x82\x09\xda\x1b\xdf\x6a\x6a\xdc\xa8\xaf\x29\x33\xea\xaf\xe9\x22\xbc\xb5\x5d\x1f\x2f\x5c\x03\xd7\x5b\x7c\x53\x42\x37\x7f\xf7\xa2\x4b\x4f\x3f\x39\xe1\x26\xd3\x91\x9a\xcf\xd3\xcd\x66\x60\x32\xe0\x01\x39\xdc\xc1\xd7\xde\xd3\xbb\xb7\x9b\xc0\x09\x72\xb8\xb3\x3f\x59\xe7\xed\xde\xae\x4c\x8b\x63\x1d\x1d\xe9\xe5\x58\x17\x00\xe2\x61\xe0\xf6\x7f\xac\x5d\x1c\x07\x37\xe8\x59\xd0\x64\xa8\xab\x30\x53\x46\x4f\x57\xcf\x83\x26\x43\x5d\x85\x59\xd1\x7a\xba\xfa\x31\x68\x92\xef\x4a\x06\x08\x9f\x41\xd6\x00\xf5\xb3\x03\xbc\xa5\xec\x66\x43\x7a\xba\x1e\x96\xcd\x3f\x53\xd7\x29\x52\x1f\xeb\x16\xee\xa2\x93\x7a\xed\xe2\xf8\x67\x9c\x72\x8a\xf5\x9f\x6f\xda\xbf\x41\xb7\xf1\x01\xf9\x3c\x7d\x66\x0f\xcc\x51\x00\x57\x1f\x8f\x83\x37\x7b\x7e\x3e\x4b\xcf\xd9\xe3\xf4\x59\x7a\x8e\x1a\x7d\x26\x34\x4b\x9a\xf5\xf4\x3a\xa8\x88\x83\x2a\x7e\x3d\x1b\xfb\x8b\xfa\xbb\x38\x41\xf5\xa7\xf9\x4c\xcd\xaf\x81\x0d\xc2\x99\xe1\x97\x2b\x69\x15\xc2\x46\x7c\xd6\x05\xc6\xb4\xab\x27\xbd\x2e\x5a\x25\x53\xe8\x2c\x99\x2d\x32\x7d\xf5\xba\x40\x78\x65\x04\x7c\x5e\x69\x8d\xd2\x06\x43\x6c\x85\xd7\x1f\xef\x4c\x59\x6c\xcb\x02\xaf\x03\x96\x96\x3b\x96\xb6\x2e\xcf\xf1\x6d\xe9\x32\x0b\xd4\x4f\x6e\x1f\xd7\x96\xad\xbd\x2e\xf9\xb2\xb6\xbe\x18\x5b\x3f\x91\xbb\xcc\x44\xae\xd1\xe8\x6e\x36\xab\xba\x1e\x01\x77\x08\xaf\x97\xf5\xaa\xdc\x4a\x33\x51\x17\x88\x54\xc9\x54\xaf\xa2\xb9\x2d\x10\x90\x42\x4f\x9d\x93\x74\x23\x08\xf7\xe9\x10\x4d\xc2\x7f\x74\xb2\x96\xc5\xa4\x30\x3d\xa2\x59\x09\x93\xb3\xfe\x16\xea\x14\x7c\x8a\x1e\x25\x54\x3d\xc4\x93\xb4\xba\x8e\xa5\x67\x5e\x21\x36\x61\xea\x59\xe2\x29\x5a\x19\x38\x83\xaa\x6c\xdd\x10\xc8\xc0\x86\x40\x3f\x3d\xa4\x56\xc6\x2c\x50\x4a\xe6\x54\xc9\xfc\x34\x35\x72\x50\xa8\x7f\xc9\x75\x06\x0b\xb2\x2a\x4d\x2e\x4e\xcc\x7a\x14\xc6\x39\x57\x88\xc4\x8e\x30\xa0\x51\x16\xa0\x61\xd1\xa9\x61\xe6\xb4\x2e\x93\xa5\x0b\xc8\xf1\x32\x60\x88\x08\x9c\xd2\xa0\xcb\xd9\x6c\x52\x9c\x63\x7a\xb2\x19\x18\x69\xa7\x2f\x71\x82\x99\xc6\xa8\x3d\x15\x77\xef\x7d\x84\xd3\xf9\x5a\x6c\xf4\x08\x10\xb8\xae\xf7\x47\x9c\x8c\x7b\x75\xb5\x1a\xf9\x4e\x57\x4a\x1f\xd5\x41\x03\x2d\xec\x17\xde\x4f\x52\x45\x2f\x9b\x95\x73\xe2\x05\x6b\x2f\x3c\x1a\x75\x7c\x6a\x75\x57\xa8\x2a\x59\xce\x0d\xe8\x32\x5c\x74\x1f\x98\xb4\x7e\x0e\xb7\x78\xff\x81\xdc\x2f\x08\xe6\xd6\x2e\x56\xb5\xb7\x0b\x11\x9d\x61\x45\xc5\x17\x4c\xa2\xde\xa3\xec\x3a\xf3\xd6\xd0\xd0\xdb\x8f\x19\x8f\xbd\x49\x84\xcb\x2d\x42\xf4\xba\xa8\x02\x72\xdd\x3a\x72\x9d\x5d\x96\x4b\x1c\xb1\x29\xcf\xf1\xae\xf4\xe1\xb8\x4f\x76\x5e\x47\xb1\x86\x90\xdc\x51\xb5\xdc\xc4\x7a\xfa\x23\x60\x58\x3f\x00\x0c\xda\xe3\xdf\x4e\x46\xdf\x2c\x6d\xcf\xcd\xd2\x2e\x6b\x35\x99\x7a\xc0\x68\x60\x66\x70\x8d\x24\x35\xb7\x6a\xa5\x1d\xef\xb6\x21\x2e\x7d\x4b\xd9\x07\x87\x43\xba\xb6\xb1\x4d\x4c\x1d\x58\x32\xe0\xc9\x72\x6b\x90\xe8\x2e\x78\xf2\xb8\xa0\x25\x3d\x1c\xf6\x12\x99\x2c\xd6\x7b\x53\xd2\x72\x71\x27\x25\xb5\xf6\x2c\x6a\x2c\x58\xc3\x06\x08\xde\x63\x6e\xc0\x59\xc3\x50\x78\x9e\x46\xbd\x6a\xaf\x81\xe3\x45\x26\x65\x59\xf0\x87\x1e\x2c\x14\x02\x46\x93\x5d\x61\xc9\x2e\xb6\x19\x70\x4c\x3a\x64\x7c\xfc\xda\xf5\xe1\xa1\x65\x7a\xd3\x58\xaf\x5b\x50\x51\x3b\x77\xd0\x31\x65\x63\x8a\x78\x99\x0d\x56\x68\x30\x89\x6e\x05\xb0\x28\x0e\x7b\xc9\x34\xc8\x67\xef\x4c\x2f\x9c\xc6\x65\xed\x3c\xea\x3c\xd3\xed\x26\xb1\x60\x21\xcc\x6c\xd1\x02\xb0\xf8\x2d\x59\x00\x2e\xb6\x42\x3a\xae\x21\x58\x4b\x74\x5f\xf6\xc1\xc6\xde\x5a\xb3\x19\xd3\x09\x36\x0a\x5e\xaa\xbf\x90\x8e\xd1\x28\x78\x69\x02\xb0\xbc\xeb\x9b\x71\x88\xe3\x10\x9a\xcd\x91\x36\xe3\x47\xea\x73\xe7\x3b\x37\x3c\xea\x44\x1c\x0e\x13\xb5\xf7\x87\x03\xd4\x09\x50\x7f\x86\x1e\xf2\x57\x77\xbb\x56\x3c\xb8\x57\xc5\xb3\x09\x58\x8b\xf6\xfe\x4b\x3a\xed\x55\x37\x47\xf1\x67\x10\x0b\x51\x13\x41\xf8\x1d\x65\xd1\xa9\x01\x1b\x16\x8f\xc2\x22\xa2\x9c\xe1\xc9\xa4\x05\x32\xa5\x28\x62\x08\x09\x70\xbc\xbe\xab\xd8\xfd\x0f\x8d\x22\xba\x40\x8d\x0f\x07\xf3\xc4\xd1\x67\x24\xf3\x16\x24\x9d\x99\x01\x8a\xd2\xbb\xf8\x11\x3f\x79\x5a\x8f\x18\x10\x8e\x41\xd6\x4b\xf5\xde\xc3\x42\x15\x42\x1f\xf0\x38\x24\x2d\x0a\xd7\xc4\xaa\x09\x68\x42\xbb\xe4\xc1\x7c\x9d\xbb\x19\x2f\xe3\x2e\x43\xd3\x0c\xc7\x0c\x2d\x72\xb7\x53\xfc\x49\x10\xc9\xa3\x67\xc0\x03\x18\xbd\x64\xa2\x51\x17\x84\xb7\x79\x45\x61\xdd\xae\xd2\xa6\x33\x77\x61\x86\xd0\xb0\xd1\xac\xdf\x4e\x16\x9a\xd3\xf0\x3f\xcd\x24\x96\xa3\x33\x0f\x30\x94\x7d\x56\xeb\x58\x6c\x1b\xc3\x8a\x3d\x04\xf5\xf8\x6f\x6a\x69\xe9\x33\x6f\xe1\x88\x89\xa1\xe8\x52\x71\x68\xc0\xad\x2d\xe0\x2f\xfa\x6b\x02\x2f\x7f\x63\x9b\x96\x8f\x5a\x4c\x8d\x5b\xff\x45\x86\x2b\xac\x41\x16\xd9\xf2\x52\xc8\xa0\xbd\x63\xd3\x03\x75\x82\x3a\x30\x3c\xb8\xe2\xb9\x2e\xb9\xe1\xc0\xa4\x7e\x59\x4a\x6d\x33\xc5\xc2\x43\xcc\xbc\x08\x61\x92\x45\xea\x43\xe8\x15\x25\x7c\x36\xf3\x62\x95\xbf\x86\xf8\x5c\x27\xff\x85\xeb\x0a\xe4\x13\xfd\x1b\x98\x57\xc8\xd6\x78\x8b\x0a\xdb\xc8\x25\xa0\x1c\x62\x2c\xd4\x42\xb0\xe8\xf1\x51\x12\x27\xfa\x28\x09\x9d\xa1\xcf\x43\x62\x29\x9c\x7f\x92\xfa\x1b\xbb\x44\xb9\x90\x27\xc3\x8c\x17\xb3\x50\xb9\x21\x13\x26\xeb\xd7\x8d\x0a\xf4\x33\xe3\x02\x41\x7a\x5c\x1d\xec\x73\xc5\xf6\xea\xdf\x11\x85\xcb\x19\xad\xde\x7c\x62\x44\xe7\x50\x46\xf3\x4d\xd3\x7c\xd8\x6d\x8b\xa9\xfb\x68\x31\x3d\xf3\x12\x2d\x97\x91\x93\xec\x29\xa6\x45\x4e\x5a\xf1\xb9\x1d\x64\x7f\x0b\x8b\x23\x6e\x7e\xad\xcd\xb1\xf7\x83\x9c\x3f\xf9\x14\xef\x09\xdb\xdd\xe9\x04\x6f\x8b\xc9\x39\xbe\x21\x62\xe1\x66\xe5\x0e\x54\x93\x75\x46\x97\x7d\x16\xce\x2a\xe3\xd1\xab\xd1\x21\x4f\x35\x23\x59\x3f\x87\xbc\xe8\x6c\xaa\x9a\x4f\x43\xe5\xa6\xf1\x86\x8b\x9d\x56\xb4\xfc\xb5\x5c\xc5\x3a\xcd\xa6\x8c\x3d\x34\xab\xb2\xeb\x98\x19\x67\xbf\xbd\xab\x3e\x98\x01\x78\x9c\xae\xc6\x29\x3c\xb9\x1f\xa2\xed\x44\x2f\x45\xc2\x2a\x24\x19\x54\xf3\x64\xb8\xc1\x15\x1a\x51\xed\xab\x67\x5c\x35\x31\xf8\xd5\x76\xd4\x91\x2d\xc4\x9c\x84\xeb\xcd\xf7\x69\x34\xc4\xc6\x77\x00\xb7\x25\x83\x4a\x2f\xc5\x39\x6e\x1e\xa0\xea\x81\x90\x74\x7d\x4d\x98\xe4\xd6\xa7\x28\x7c\x46\x89\x93\xec\x06\x01\x83\x91\xc2\x76\x83\x70\x1b\x6e\xc0\xc6\x97\x4c\xa9\x02\xdd\x6c\x6b\xc3\xdd\xfb\xd5\xd7\x0a\x7c\xfb\x30\x6e\xab\xab\xbe\xde\xf4\xaa\xaf\x37\xb3\x59\xa1\xeb\x3a\x95\x1b\xef\x70\xb1\x8b\xd2\x04\x71\x84\xd7\xe5\x39\xae\xcb\x9d\x55\x07\xac\x9f\xd4\x8f\xd7\x56\x1d\x70\x5b\xee\x96\xeb\x15\xbe\x2e\x6f\xf1\xb6\x9c\x5c\x8c\xa6\x57\x8a\xff\xbc\x9d\xaf\x6f\x2b\xfe\x54\x14\xe7\x6a\xfd\xdb\x72\x72\xae\x5a\xcc\xdb\xdd\xfb\x56\xf0\xe2\xc2\x68\xe9\xee\x86\x41\x7a\x8d\x74\xf6\xf7\x08\xa0\x77\x86\x07\xf8\x58\x4e\xb6\xb6\x48\x76\xfb\x9d\x66\xce\xcd\xf1\xb9\xc3\x02\xe1\x9b\x92\x2f\x6f\x41\xcb\x64\x7c\xb5\x6f\x90\x42\x82\x8f\x87\x43\xec\x57\x7a\x83\x02\x8d\xfd\x7b\x0f\xb8\xfb\x0e\x02\xdb\xc3\x75\x87\x6f\xf0\x2d\x1a\xdd\xcf\x66\x6d\x17\x47\xef\x11\xae\x2e\xdf\xbb\xe3\xe1\x2f\xa1\x8f\xb3\x19\xe8\x1a\xbd\xfa\x0f\x52\x52\x2b\xfe\x63\xf4\x71\x36\x9b\xb0\xd9\x6c\xd2\xc2\x29\x38\x1c\xc4\x65\x6b\xea\xd8\x2e\xd2\x21\x08\x92\x68\xf1\xd1\xbe\x7f\xbf\x78\x9f\x9d\xc5\x7b\x63\x3f\x70\x0b\xbb\xf2\x0b\xfb\x74\xd2\xc9\xbc\xc1\xb7\x58\x17\xdd\x41\x23\x33\xd8\x15\xfe\x94\x1d\xec\x13\x92\x2e\x33\x65\x2b\x71\xb4\x1b\x0b\x83\x69\xa0\x62\xc9\x7b\x74\x0a\x04\x21\xc1\x5e\x21\xdf\xe3\xe9\x9d\x25\x63\xbe\x52\x18\xe4\xbc\x8d\x1c\x33\xfa\xd0\x8a\xe5\xd0\x8a\x22\x5f\x53\xe0\xce\x3f\xcc\x90\xc5\xd0\xa9\x6b\x94\x52\x46\xd0\x26\xa4\xbb\xaf\x67\x2e\xfc\xc4\xa9\x2c\xc3\x53\xde\x60\x5d\x82\x29\xa0\x81\x02\x61\x9a\x0d\xd2\xa4\x48\x22\x29\x03\xa7\xf6\xcf\xe7\x56\x9b\x48\xcb\x91\x81\x2d\xe3\x70\x39\x28\x3a\x92\xe5\xa0\x3b\x55\x98\xde\xc0\x68\x11\x63\xc1\x52\x0e\x39\xf9\xf6\x05\x7f\xf7\xb3\xdb\x5d\x71\x03\x47\xfe\xd5\x69\x7b\x86\xb5\xcd\x21\x4e\x10\xd2\xf1\x67\x8c\xa4\xa6\x46\x49\x4d\xd4\x49\x4d\xd4\x26\x0e\x49\xe7\x19\xe2\xcf\xa9\x7a\x7f\x85\x44\x1f\xc8\xfd\x82\xc5\xaa\x5c\xda\x55\xe5\x36\xb2\xe4\xb8\x2a\x9b\x9c\xb8\x86\xdb\xe1\x35\x77\xf8\x61\x7b\x23\x05\x2c\x31\x5d\xb6\x2b\x2f\x49\x4c\xac\x24\x21\x2e\xc1\xde\x16\xf8\x2d\xf7\x9d\x3e\xd5\x01\x92\x8b\x7e\xb4\x92\xd6\xd9\xb2\x0a\xd8\xd9\xf6\x04\x76\xd6\xf1\xc5\xa7\xb8\xcb\xf5\xb2\x9c\xbf\x89\x7b\x1b\x2f\x85\x8f\x3c\x0c\x96\xc5\x25\x42\xa3\xec\xb2\x12\xc6\x39\x5c\x10\x27\x7f\xdf\x51\x60\xb5\x53\x76\xbd\xc3\x3d\x27\x8b\x71\x91\xa9\x61\x1c\xa3\x89\x04\x3d\x1c\x74\x68\xa8\x0e\xce\xec\x68\x2c\x09\x44\x1b\xdf\xdf\xbd\x6f\x36\xd1\xc3\xb9\xcf\xad\xb7\x98\x4e\xcf\x88\x4f\x9c\x47\xbd\xd2\xd1\xd9\xf5\xba\xbd\x0a\x57\xc8\xf4\xab\x73\x13\x82\xeb\x02\x96\x1d\x76\x91\xc3\xc1\x06\xdd\x1e\x0e\x85\x28\xd5\x40\xbe\xbc\x3c\x12\xb7\xbc\xf9\x34\x66\xe4\xd3\x18\x64\xdf\x62\xfa\xcd\xcf\x5b\xc8\xea\x3f\xa6\xf5\x58\x34\xe3\xf7\x64\x5c\x8d\xf5\xd0\xe3\x86\x8f\x75\xef\x78\xcc\xc9\x9a\xd0\x8f\xa4\x1e\x4f\xcf\x5c\x2c\xaa\x57\x84\xca\x6c\x18\x6f\xaf\xb7\xba\x14\xa5\x70\x05\x94\xb6\xbc\x11\x0d\xa8\x41\x6f\xab\xf6\xcd\x27\x66\xf1\x66\xbe\xae\x36\x9b\x42\xa8\x63\x06\xfb\x3f\x45\x97\xce\xed\x71\x21\x8c\x98\x30\xdd\x31\x8d\x11\xb5\x07\xc0\x5b\x00\xfc\xa5\xfe\x4f\x91\xc0\x77\x57\x57\x5f\xec\x89\xfc\x62\xff\xaa\x12\xb7\xf3\xeb\x4d\xd3\xf0\x02\xfe\xe4\x15\xab\x9b\xbb\x02\xfd\xcf\xe7\x95\x20\x73\xd6\x7c\x2a\x10\x92\x57\x57\xef\xfc\xde\x07\xa5\x1a\xbb\xfb\xe1\xa3\xae\xbf\xd2\xb1\xc9\x1b\x30\x65\xfd\x44\xaa\x0f\xaf\xaa\xed\x48\x73\x87\x45\x50\x77\x2d\x37\xdb\x4f\x94\xd5\xcd\x27\xd8\xf0\xcc\xdb\x17\x55\x2b\xbe\x6e\x1a\x61\x8c\xbe\xfb\x1b\x22\xbe\x87\x49\xff\x55\x1d\x22\x9d\x7a\x97\xdf\x5b\x80\xdb\xd6\x73\x83\xf5\xc5\x74\xcd\xef\xb7\xa2\x99\x22\xb3\xd4\x17\x74\xb3\x81\x9c\x8b\x04\xc9\x75\x25\x94\x48\x82\xf6\x29\x46\x7c\x09\x9a\x8a\x71\xe8\x53\xa7\xf8\x05\xd5\xf9\xfb\xa6\x11\x63\xd3\x79\x3b\xbe\x6f\x76\x0a\x63\xaa\xba\x1e\x8b\x5b\x32\xb6\x83\x8d\xb7\xd5\xfa\x43\x75\x43\xd4\xbb\xe9\xb5\xf9\xea\x39\xd9\x12\x56\x13\xb6\xa6\xa4\x9d\xaa\xee\xee\x9b\x1d\xb7\x2d\xe7\x4a\x42\xfe\x52\x71\x46\xc0\x6c\x04\x14\x54\x43\x67\xae\x7b\xb6\x96\xef\xe8\x61\xcf\x17\x77\xed\x33\x78\x3d\x9b\x4d\xed\x66\xfa\x9d\x4b\xda\xcc\x13\xa8\x26\xe3\xd8\x66\xa3\xce\xd1\xf1\x34\x68\x31\x7e\x56\x31\xd6\x88\xf1\x35\x65\xf5\xb8\x1a\x7f\xac\x36\xb4\x1e\x7f\xaa\xee\x15\x10\x6c\x12\xa8\xf1\xa6\x59\x57\x9b\xb1\xaf\xf0\xd6\x4e\x11\x14\xc0\x73\x9e\x2b\xb8\xc6\xb7\xf8\x1a\x6f\xcb\xe5\x0a\xdf\x95\xe7\x8f\xef\x9e\xfc\xfe\x0f\x7f\x7c\x7c\x76\x76\x87\xb6\xcb\xbb\x55\x59\xdc\x9d\xfd\xfe\x0f\x7f\x44\x9e\x8c\x5c\xfc\x11\x79\x31\xc1\x63\xed\x47\x1b\x57\xa7\x39\x8c\xb2\x20\x80\x98\x3f\x52\x26\xfe\x55\xb3\x5e\x17\x7f\x44\x78\x97\xae\x3b\x3c\xd2\x6c\xf9\xc7\x55\x79\xf1\x87\x99\xfa\xff\xf0\xc7\xff\x85\xd9\xf2\x5f\x57\xe5\x1f\xff\x65\xa6\xfe\x3f\x5c\xfc\xfe\x5f\xf1\xb2\xe0\xe5\x16\x2d\x0b\x51\x32\xb4\x3c\x5f\xad\x30\x5f\x8a\xe5\x85\xf9\xff\xf7\xe6\xff\x7f\x59\xad\xf0\xf4\xd1\x14\xfe\xfe\x5f\xe6\xd9\x1f\x82\x67\x7f\x34\xcf\xfe\x7f\xc1\xb3\x7f\x35\xcf\xfe\xff\xc1\xb3\x0b\x37\x80\x1d\xe1\xc2\x0e\x71\xf1\x2f\xf6\x0f\x3b\xc0\xc5\x1f\x56\xab\xd5\xfc\x6f\x0d\x65\xc5\x74\x8a\x3c\x69\xba\x31\x21\x78\x2d\xd4\xf1\xad\x9d\x23\x05\xfc\x52\xa7\xd5\x04\x29\x60\x5a\x2f\xb8\x2c\x5d\x29\x25\x25\xd5\x5d\xbe\x0b\x2e\x9c\xc5\x86\xd6\x8f\xbe\xd8\x37\x85\x40\xf2\xd1\x17\x7b\x2e\xdf\x2d\x3e\x16\x08\x28\xc0\xfb\x88\x02\xb8\xa1\xef\x3d\x79\x7f\xef\xca\xbf\x84\x69\xe8\x5d\xdd\x7f\xf5\xf9\x27\xfc\x1e\x72\x86\x40\x91\x7b\x1c\x10\xd7\xab\x02\xed\x4d\x29\xdd\x4f\x51\x69\x50\x9b\xe9\x76\x5d\xad\x6f\x49\xb9\xdf\xd0\xba\x5d\x64\x53\xcb\xde\x6f\x49\xf6\x8d\x71\xc2\x71\xf9\xca\xe2\xd2\x96\xda\x91\x35\x7e\x76\xdd\xf0\x1b\x22\xe2\x67\x50\xf7\x22\x7e\x04\x7e\xe8\xf1\x23\x37\x46\x7d\x38\xdc\xc4\x23\x5c\x1f\x0e\x57\x71\xff\x6b\xff\x44\xf7\x7e\xeb\x1f\xe8\xbe\xaf\xe4\xd5\xd5\xba\x61\xd7\xf4\x66\xc7\xc9\x2b\xf5\xc8\x27\x24\xd7\x2d\xc8\xe1\x70\x25\xaf\x6e\x7c\x35\x24\x57\x7a\xd1\xba\xd8\x24\x9b\x30\xb9\x40\x38\x93\xc4\x60\x33\xd7\xb5\x7b\xa1\x86\x85\x45\x1e\xc3\xb2\x30\x83\x54\x58\xbb\x81\x4c\xca\x92\x5f\x06\x7b\xa2\xde\xb5\x4b\xbe\x32\x75\x2d\x13\xe5\xbb\x0d\xdc\x35\x97\x5a\xe3\x02\x8d\x5b\x5b\x8c\x69\x64\x4b\x9c\x8b\xc3\xa1\x9a\xcd\x5a\x1b\x8e\xf1\x4d\x11\x0e\x02\xdb\x0b\x1a\x22\x27\xc8\x73\xc8\x77\xb8\x53\xe3\x2f\xf9\xca\x9a\x9c\xcb\xb2\xa4\xba\x4e\xa0\x8e\xcb\x86\x26\xb4\x56\xdc\x66\xd0\xc2\xfa\x53\xc4\xdb\xa6\xad\xcb\xe0\xd3\x9c\x0c\xb4\x56\xff\x75\x19\x8c\xff\x68\x76\x63\x6d\xa7\x18\x2b\x0a\xa9\x73\x30\xc3\x8d\xf1\x64\x43\xeb\xaf\xc6\xcd\xf5\xb8\x1a\xa7\x5b\x33\xd5\x61\xe3\x65\xbc\x82\xf5\xca\xe4\xa8\x16\xae\x42\x83\x5e\x4a\x41\xcb\x9f\x8b\x16\x57\x78\xed\x6a\x41\x79\xb0\x53\xf5\xdf\xaa\xa4\x58\x77\x12\xfc\xbc\xaa\x36\x1b\x3f\x66\xab\x05\x45\x8a\x34\xbb\xa4\xb6\x46\xfb\x4f\x01\x6c\xd4\xdf\xab\x92\x7a\xdd\x13\x95\x72\x4b\xc8\x87\x2e\x52\x25\xe2\x60\x1e\xf1\x26\x17\x50\x47\xe7\x0d\x0f\xfd\x6c\x1f\xde\xcb\x39\x92\xfa\x1c\xfb\xc7\x2f\x1a\xfe\x9a\x7c\xb2\xca\x89\x28\x47\x58\x76\x13\x31\x2f\x7f\x06\x2c\xd3\x89\x4e\xb0\x2d\xad\x0a\x39\x08\x33\xf8\x65\xcd\x41\xd1\xf4\x42\x2c\xd7\xf0\xe5\x98\x01\xb8\x85\xfe\x33\x0b\x6a\x8e\x30\x97\xa1\x9b\x7c\x7a\x36\x03\xf7\xb4\x61\x60\x41\x7a\x1d\x5a\xe3\xaa\x64\xda\xb5\x0d\xb7\xd9\xc9\x9b\xdc\x48\x78\xd3\xa9\x27\x6d\xb4\xa0\x4a\x34\xab\xb4\x68\xd6\xe2\x0d\xad\x17\x1b\x59\x8a\x00\xcf\xab\xd9\xac\x9a\x80\x1d\xcc\x3c\x60\xfe\x2c\x12\x6c\x14\x9b\x0a\x5f\xd8\x6a\x94\x56\x1a\xd9\xcd\x66\x3b\x93\x51\x8b\x1b\x9f\xba\xa6\xb0\xd9\x9a\xe2\x21\xb4\xa9\x6d\x5d\xc2\xf1\x04\x88\x9a\xff\x26\x65\xb9\xb1\xc5\x05\xa8\x81\x75\x67\xa0\x7a\x36\xab\x65\xb6\x43\x7d\x4a\x93\x3e\x4b\xd7\xe7\x2d\xac\x62\x0d\x0b\xa8\xba\xfd\xde\xce\x66\xb7\xd2\xd6\xf4\x91\x39\xf0\x62\x81\xab\xce\x09\x84\xc5\x6d\x82\xda\xb3\x40\x97\xd3\x5d\x6c\x0b\xf5\xfd\x46\xf5\x80\xdc\x7e\xa6\x22\x9a\xd9\x21\x0a\x5b\x53\xa9\xad\x11\x0e\x92\x56\xab\xac\x73\xcb\x7a\xfc\xf6\x94\x16\xc2\xeb\xa1\xc4\x9d\x3a\xc7\x05\xc7\x22\xba\x7f\x10\xa6\x93\xb2\x2c\x2a\x18\x1a\xb9\x1d\xae\x86\xa8\xad\xdd\xbe\x9d\x06\x59\xc9\x1d\xed\x70\xd9\x25\x35\xf9\x58\xf9\x32\xdf\x7d\xeb\x4f\xf4\xf1\x4d\x08\x2d\x9d\xce\x0e\xe1\xaa\x6c\x20\x2b\x13\x5f\x88\xe8\x04\xea\xfb\xb2\x73\x32\x2a\x5d\x1f\x70\x49\x57\x65\x83\x07\xe6\xef\xda\xc0\xa1\x2d\x1b\xa8\xa4\xdc\xc8\x9e\x5e\x3b\x99\x07\x87\x4e\x26\xcf\xc2\xcd\x6e\x96\x2d\xb0\x0b\x94\xd6\xd9\x69\x15\xdd\x50\xf4\x16\x47\x95\xca\x02\x22\x23\x00\xf1\x9d\x8d\x51\x53\x1a\x7d\x18\xac\xe2\x2a\xa5\x38\x36\x7b\x96\x40\xa3\xee\xcb\x76\x0b\xf9\xb0\x18\x4e\xae\xfe\xcd\x5c\x0f\x61\xae\xfd\x88\x39\x29\x02\x24\xcb\x54\x9d\xd2\x35\x9f\x3d\xf7\xf6\x4d\x48\xd2\x74\x81\xab\x84\x05\xe4\x70\x44\x14\xfb\x96\xe5\xde\x7a\x1e\x27\x4b\x01\x2b\x06\x01\xb2\xab\xa8\xab\x1b\xfe\xe7\x48\xb1\x87\xa9\x1e\x87\xab\x5e\x89\x51\x45\x39\x57\x57\x56\x52\xbc\x01\x1e\x94\xe1\x29\x6d\x1f\xd1\xe0\x5e\xc6\xd4\xf7\xf9\x26\xec\x93\x2a\xd2\xab\x39\x95\x16\x54\xc4\xc0\x6b\x73\xcb\x2a\x69\xee\x9a\x60\x77\x7a\xb9\xec\x4a\x54\x4e\x19\x41\xa8\xb8\x25\x7c\x4c\xeb\x71\xc3\xc7\x9b\x40\x35\xa1\x25\x2b\x23\x8b\xbb\xbb\x18\x78\xf4\xcc\x08\x8b\xf0\x99\x76\xaa\x7c\x6b\x13\xeb\x2a\x41\xe8\x3b\xde\xfc\x7c\x6f\x4d\x8c\xfa\xf9\x77\xbc\xb9\xa3\x2d\x81\x37\x60\xa5\xc4\xfb\x3b\x22\xaa\x85\x7e\xbb\x6e\xee\xb6\x3b\x41\xea\x39\x27\x55\xdd\x16\xd3\x75\xc3\x04\x61\x02\xcc\x42\x4a\x9a\xc3\x3f\x44\xc9\x9c\x4e\xe9\x3f\x10\xdc\x5e\x45\xda\xe4\x1f\x5c\xea\xfe\xad\xfe\xc6\xcc\xe1\xfb\xb7\x7f\xfd\xce\x76\x33\xe7\xa4\x6d\x36\x1f\xb5\x1a\x5a\x06\xd2\xce\xd3\xa8\xab\xb7\xbf\xa6\xab\xef\xa2\xae\x5e\x29\xee\xf4\x96\x30\x1d\x5f\xec\xa8\x03\xd4\x4f\xd3\x42\xd0\x33\xfc\x01\xe4\x18\x3d\xc4\xd5\xd7\xae\x96\x5d\xb1\x9c\xe6\x1d\x44\xa7\x78\xda\xde\xb3\x75\xfa\xec\x9a\x32\xda\xde\x92\x7a\xba\x42\xf8\xfb\xf2\x77\xff\xf7\x3f\x7f\x77\xa9\xe4\xaf\xff\xfc\x5d\x11\xe4\x0a\x88\x53\x45\xfc\xe7\xef\x8a\xf9\xff\x44\xbf\xc3\x7f\xf3\xcd\x7f\xe7\xe1\xfb\x3c\xaa\x39\x14\xa9\xa9\x68\xfb\x9d\x3a\xb2\x4c\x40\x3e\x3f\x12\x99\x25\xc0\x02\xa2\x55\xc9\xea\x95\xfe\x6b\xbe\x6d\x28\x13\x84\xfb\xf4\x7c\xf1\xf3\xf9\x1d\x28\x58\xbe\x47\x23\x7e\xc9\x4b\xbe\xfc\xfd\x6a\x01\xc9\xfa\x3a\xed\x5a\x52\xf1\xf5\x6d\xf1\x37\xed\x97\x39\x7d\x5f\xb5\x44\x31\x65\xde\xff\x92\xaf\x20\x37\x25\x14\xdc\xd7\x76\xad\x79\x4d\x44\x45\x37\x87\x03\x99\x0b\x2a\x36\x04\x99\xd8\x58\xb7\xd0\xd7\x9e\x7f\x2c\xa0\xe0\x86\x20\x9c\x55\x1b\xb0\x0c\xa8\xaf\xd2\x07\x48\x11\x2c\x5b\x07\x43\xf3\x81\xbe\xb3\x97\xd1\xfe\x67\x04\xa3\x74\x84\xb0\xb3\xa4\x44\x8c\x34\x75\x34\x95\xec\x1c\xe5\x55\x23\xf3\x2d\x61\x35\x65\x37\xe5\xd4\xfc\x31\xc5\x64\x7e\xbd\xdb\x5c\xd3\xcd\x86\xd4\xe5\xd4\xfd\x39\x85\xda\x1b\xba\x14\x69\x39\xb5\x7f\x4d\x25\x2a\x9e\x1d\x0e\xc5\xb3\x72\x2f\x11\x1a\x69\x29\xf9\xdb\x48\x4a\x8e\xaa\xa8\x82\xd2\xb8\xe4\xdd\x32\x69\x61\xc1\xd9\xf7\xb9\x52\x22\xd9\xba\x59\xe9\x07\x2f\xeb\xa1\x66\xb7\x36\xb8\xf0\xb4\x5e\x4d\xf3\xe1\x3e\xa3\x1d\x88\x25\xee\x4e\x6d\xec\xe8\xb5\x27\xee\xd1\x63\x67\x93\x48\x1a\xc7\x3f\xb5\xc9\x2d\x7a\x56\xd5\xd5\x56\x10\x6e\xaa\x7c\x85\x9a\x7d\x56\xe6\xa6\xca\x93\x07\xe0\xbc\xa1\xcf\x88\xba\x4f\x92\xc9\x68\xbe\x01\x33\x25\x8b\x7f\x6f\x92\x1b\xe8\x5e\x83\x32\xb2\x76\xaa\xc2\x95\x4a\x4c\x26\x45\x92\x07\xf1\x6a\x5c\x72\xb2\x14\x12\x2c\xb0\xbc\x46\x33\x28\xfa\x00\xfd\xba\x60\x28\x57\x17\x1d\x84\xbf\x31\xb7\x65\x46\x23\x59\x2a\x3e\x4b\x01\x85\xcd\x94\x0b\xf4\x4c\x7e\x07\x91\x51\x5c\x60\xce\xbf\x08\x2b\x32\xe9\x19\xb8\xa2\xe8\x47\xaa\x0a\x5a\x92\xd9\xad\xfa\x6b\x52\x9e\xf5\xd5\x62\x8b\xe1\x88\xac\x3b\x6f\xe0\x3f\x5a\x7e\x05\xd4\x2e\x74\x62\xe7\xa0\xfd\x52\x6b\x16\xda\x0d\x70\x00\x4a\xd0\xf7\x33\x75\xe8\xe1\x03\x5b\x3b\xbd\xc3\x60\xc0\x8b\x31\x6d\xc7\x0d\xdb\xdc\x8f\xab\x8f\x15\xdd\x54\xef\x37\x64\xfc\xe9\x96\xb0\xf1\x7a\xd7\x8a\xe6\x6e\x0c\x7d\x8d\x35\x05\xb9\xbe\xd6\x8d\xa7\x48\x56\xa6\xdc\xac\xba\x0d\x72\xa5\x66\x63\x78\xc7\x75\x1e\x73\x25\x1e\xd3\xc2\xf2\x9d\xfe\xb2\x35\xed\x3f\xf6\xd6\x1d\x54\x8c\x57\x0f\x1a\x7a\x6d\x95\x4f\x08\xd6\xdd\xc3\xee\x67\x98\x97\xe7\x98\xf9\xca\xfc\xfc\x09\xf3\xb9\xc1\xa8\xae\x29\x46\x94\xdc\xd0\xd3\xc1\x92\xae\x4c\xa2\x59\xef\x02\x2e\xdf\xc7\x35\x93\x7d\x58\xc5\xa4\xd0\x8e\xfa\x20\xbe\x37\x39\x5a\xa1\x1d\xe1\x61\xa5\x46\xf1\x13\xec\x44\x48\x7b\xe3\xbd\x08\xdf\x2c\xc9\x4a\x2b\xd3\xfa\xbf\x8f\x2b\x3d\xe6\x7b\x8a\xda\xa8\x3e\x9b\xf8\xa2\x7b\x45\x44\xd5\x45\x7c\xac\x15\x2c\xd6\x0d\xfb\xa5\x76\x97\x0f\x2b\x4b\xe3\x16\xa4\x75\xf0\x6e\x70\xde\x8a\x65\x7b\xd9\x0c\x10\xc9\x56\x67\xd3\xc5\xa1\xe9\x59\xf7\xa0\xd3\x41\xcf\x66\x13\x5d\x4a\x17\x6a\xd6\x17\xe8\x92\x5e\x2a\x09\x6b\xc1\x0d\xfe\xbc\x65\xd5\xb6\xbd\x6d\x84\xc9\xca\x8b\x30\xbd\xcc\xc2\xad\x64\x8b\x23\x50\x28\x19\x66\xf2\xb6\x53\x05\x1d\xb3\x70\x6f\x5b\x5f\x64\xc7\x5f\x6c\x90\xe9\xa3\xec\xbf\x1d\xed\xb6\x9d\x6b\x3d\x46\xb0\x6d\xbe\x0f\xaf\x47\xb5\x1b\x9c\x6d\x99\xdd\xde\x26\xf2\x8c\xcf\x20\x1d\x6e\xcb\xa2\x7a\xc8\x1e\xe3\xcc\xee\x3a\x02\xda\xda\xed\xe1\xe5\x72\x85\xf5\xaf\x8c\x1f\x54\x35\xb0\xeb\x04\x8d\x44\xb8\xab\x87\x43\xc1\x2e\xb9\x65\x10\x69\x8d\x16\xe6\x87\xe8\x6c\x33\x02\x7f\x5c\x76\x99\xd9\x84\x92\x2f\x06\x37\xa1\xe4\x98\xcb\xc4\x5d\xd9\x95\x2d\x37\x19\x86\xba\xaf\x65\xd7\xe1\x38\xf7\x51\x37\x3c\x33\x4a\xcd\x1c\x3b\xd9\xe4\xb2\x63\xc6\xb7\x4c\xe0\x26\x63\x76\x22\x90\xc6\x5f\xc4\x15\xad\x9d\x4f\x85\x2d\xf1\xc7\x83\xb0\x44\xf1\xd5\xc5\xa5\x78\x74\xb1\x38\x47\x98\x95\x17\x8f\xd9\x13\x01\x65\xf7\xf8\x92\x3d\xba\x58\xf9\x4f\x03\x95\x5f\xd7\x03\x96\xe8\x08\x67\xa3\xb5\x06\x4f\x7f\x37\x97\x7f\x44\x9a\x81\xf9\x35\x65\xd5\x66\x73\xaf\x2d\xc7\x02\x76\x96\xcf\xaf\xda\xdd\xfb\x76\xcd\xe9\x7b\xc2\xed\x1c\xcb\x73\x24\x03\x97\x66\xd7\xdd\x8f\x1e\x58\x93\x38\xa6\x2c\xa8\x6d\xdd\x49\xb7\xec\xde\x81\x60\x1d\x88\x7f\x5f\x27\x4e\xb6\xff\x28\x02\xd9\xd1\xcb\x8c\x1c\x69\xb1\x50\xcd\x9a\x20\xac\xfe\xfb\xb1\x10\x61\x47\x7f\xca\x66\x10\x25\xf3\xae\xbf\xa6\x6f\x25\x73\x35\xd1\x0d\x77\xff\xd7\x98\xbb\x47\x49\x95\xc2\x92\x58\xce\xb8\xfe\xa1\xd1\xac\x66\x3f\xf7\x0c\x5f\xb5\x50\x28\xdb\xe8\xdc\x44\x05\x8e\x7c\x20\x0a\x69\x93\x5d\xc2\x7f\xd8\x5e\x21\xae\x0c\x9a\x69\xf3\xd0\x3e\x0e\xd3\x0a\xdb\x01\x6f\xa2\x37\x2f\x65\x67\xf4\x04\xcc\xce\x4a\x6b\xfe\xdb\x77\xfb\x28\x85\xac\x6a\xe3\xec\xe7\xb2\x06\x04\x2d\xc4\xaa\x24\xf1\xaa\x9c\x33\xa4\xae\xdd\xa3\x3f\x8d\x14\x6b\xe1\xd7\x61\x48\xb8\xed\xc0\xaa\xce\x08\x7a\x6c\x13\xce\x47\xef\x8d\xf6\x8c\xe3\x0b\x24\xd7\x0d\x13\x15\x65\x01\x24\xe0\x93\x9e\xfe\x00\x22\xfa\x69\x1e\x22\xba\x81\xd9\x8d\x4e\x13\xf3\xdc\x95\xd4\x77\xdb\x96\x2b\x6d\x2c\x4d\x51\xd3\x28\xe7\xac\x1e\x65\x94\x60\xc1\xa8\xa7\x44\xbd\x50\xcc\x0f\x54\xba\xdf\xb1\x4d\x53\xd5\x8e\x33\xcf\x61\x8d\x31\xd5\xfe\x3d\x6b\xaa\xbd\xab\xb6\xb9\x49\x2a\x36\x89\x53\xf2\x91\xa4\x96\x9b\xbb\x6a\xab\xee\xc0\xbc\xd5\x38\x6c\x02\x74\xeb\xaf\x85\x0e\xa7\xb7\x2b\xb6\xcb\x21\xbe\x29\x16\x69\x81\x53\x9d\x09\x56\x44\x49\x60\xc9\x52\x31\x79\x2b\x57\x0f\x56\xeb\xd0\x7e\x0a\xcd\xdc\xf8\x8b\xbc\xd1\xfb\xdf\xfc\x12\x7e\x3a\x6e\xf4\xfe\x0f\x35\x83\x9f\x22\xbb\xb7\x06\xdf\x7f\x64\x4f\xb9\x16\xdf\xfd\x09\x57\x22\xac\xb8\x7f\x55\x6d\x63\xc9\x97\x91\x4f\x9b\x7b\xad\x9a\xae\x7b\x84\xde\x67\x60\x33\x1f\x7a\x77\xef\x14\xbf\xc9\x9b\x79\xc7\xf2\xec\x3c\x78\x6d\x8c\xe4\x48\x5d\xc5\x46\xbf\x7d\xa9\x63\x26\xc1\x83\x97\xd6\x97\x64\x21\x16\x5a\x1b\x0e\xef\xb5\x15\xa3\xb0\x41\xa1\xd0\x4a\xfd\xa1\xda\xb9\x5a\x1e\x8a\xa7\xb9\x14\x0b\x62\x79\x25\x40\xd8\x57\xd5\x16\x42\x62\x8c\x69\xab\x2a\xc1\xa3\xa5\x60\xda\x20\xdd\x9a\x9f\x60\xf6\x04\x29\xa1\x9a\xcd\x5a\xc5\x63\x06\xf2\x6b\xeb\x7f\x74\x0c\xb8\xef\x5e\x54\x74\x43\x40\x03\xab\xcd\x24\x60\xbb\xfd\x92\xd6\x5f\x8e\xaf\x1b\x0e\x3f\x52\xb5\xff\xf8\xcb\x2f\xf6\x44\x7e\xa9\x3e\xf9\xf2\x8b\xbd\x5a\xad\xfc\x12\x8f\xdf\x93\x75\xb5\x83\x52\x79\x95\x18\xd3\x5a\x09\x56\xd5\x86\x93\xaa\xbe\x57\x3c\x9a\x7a\xf3\xfe\x5e\xb5\x17\xf2\xcb\x77\x9e\x53\xd2\x19\x30\x81\x70\xb5\x58\x2f\xc2\x7a\xb3\x55\xda\x44\x53\x96\x65\xab\xb8\x9f\xe8\xe1\x04\x1e\x56\xb3\xd9\x24\x5e\x68\xbc\xd6\xd9\x4c\x41\xc3\x0d\x50\x61\x03\xb4\xa2\x2a\x5b\xa4\xf0\xaa\x64\x73\x5a\xe3\x66\xae\x48\xae\x7d\x8b\x30\x73\xf5\x9c\x43\xcc\x53\x20\xfb\xbb\x34\x91\x47\xfa\x46\x77\x01\xde\xd6\xfb\x3e\x41\xa0\x21\xd3\x89\x88\xb2\x73\x3c\xe4\x4b\xe2\x72\x88\x6f\x09\xf9\x50\xf8\x8a\xae\xec\xb2\x00\xb5\xc5\xdb\xf5\x2d\xa9\x77\x1b\x52\x3f\xb7\x56\x0b\xa8\xf9\x5c\xb1\x35\xd9\xb8\x47\x98\xd9\x52\xa9\xef\x77\x74\x53\x17\x1c\x6c\xd6\xd0\x23\xc9\xa4\x33\x8e\xb1\x50\x1f\x78\x00\x97\xa2\xe0\x5f\xdf\x07\x7c\xab\x21\x0a\x6f\x4c\x5b\x30\x50\x61\xdd\x36\x32\x69\x19\x48\x02\x1b\xe8\x6c\x50\xb1\x7b\x72\xa0\xde\x07\xb6\x5b\x6b\xfd\xad\x7c\xf1\x10\x98\xf9\xc2\xab\xb0\x42\xea\x0c\xb2\x65\x59\x36\xdd\x33\x61\xdc\xbd\x5a\x22\xe0\x00\xd0\x7a\xac\xf0\x76\xdc\x30\xf8\xa9\x79\xda\xb1\x3a\x04\x8b\x2f\xf6\x5c\x8e\xab\x56\x3d\xe7\x44\xe1\x3c\x6b\xc6\xed\x6e\x7d\x6b\x1b\x51\xfd\x89\xb6\x6d\xbd\xb3\xa2\x21\x14\x13\x52\x47\xd7\xb1\x33\xc1\x7c\x8c\x86\x76\x02\xc5\x61\xdc\x9c\xbf\xbe\x7f\x59\x17\x2d\x16\xce\x73\x42\x7b\x2f\x64\x21\xd1\x63\x73\xa7\x38\x00\xa8\x90\x08\x37\x8a\x20\xbf\xac\xd5\x1e\x48\x37\x46\x6a\x99\x4f\x3b\xcf\x7a\x45\x24\x1d\x33\xeb\x1f\x13\xe1\x8e\x46\x1b\xb0\xe6\x69\x59\x34\x4c\x1b\xd0\x87\xb8\x05\x9b\x1b\xe3\x9b\x2e\x27\x8d\x59\xa9\x39\x3b\x26\x35\xe2\xa6\x9c\x9b\x79\x0a\xce\x13\xee\x47\xaf\x23\x90\xf5\x37\x01\x99\x2a\x06\x76\x80\xbf\xe6\xac\xe2\x7d\x02\x8c\x05\xd3\x11\x24\x23\x5e\xea\x8e\x2e\x6d\x41\xe6\x5e\x87\x8d\x05\x31\xd4\x1e\x7c\xc1\x48\xe1\xef\xbb\xb4\x36\x73\xee\xdc\x29\x42\x45\x31\x37\xce\x48\x8e\xe5\x8b\x98\x89\xf8\xbb\x20\xed\x2e\x14\x19\x72\xf3\x02\xbf\x38\x31\x77\x5c\x23\x87\x45\x06\x2b\x54\x8b\x23\xa3\x2c\x0e\xf4\x18\x8e\x19\x92\xf1\x86\xa7\x3c\xb5\xa3\xa6\xf3\x80\x11\x92\xd1\x3d\x0e\x8c\x6a\x9b\xfb\x3c\x6c\x15\x7d\xaf\xb9\x97\xa8\xde\xff\x65\x77\x44\xc3\xe3\x2c\x72\x78\xe9\xf8\x1f\xc7\xde\xfc\x25\x34\x80\x80\x2b\xb0\x4e\xc6\x62\xfe\x98\x9b\xec\x2a\xc0\x2f\xfd\x7b\xc4\x21\x69\xbe\xe6\xcf\xa9\x6d\x22\xc7\xd9\x78\x3b\x8a\xe5\x50\xfe\x1d\x58\x24\x90\x67\x05\x92\x57\x36\xc4\xa1\x40\x7b\xd8\x6b\x41\x7e\x88\x74\xa5\x7f\x29\x9c\x39\xda\xb4\x43\x97\x53\x35\xc1\x29\xe4\x89\x95\xea\x4f\xef\x2d\x5a\xa6\x8d\x47\xbe\x1b\x88\xf0\x33\x6b\x2c\x48\x59\x10\x9b\x5b\xc6\xae\x14\xcd\x66\xd6\x47\x7a\x12\x3a\xbd\xdf\x72\x72\xbd\x20\x08\x9b\x42\x4a\x52\x31\xc9\x8e\x09\xd7\xc6\x96\xde\x71\x21\xf3\x84\xfa\x20\x13\x90\x6d\x5f\xc0\x4c\x20\xf6\x1b\x13\x29\xff\x1c\x38\x94\xeb\x3c\x37\x81\x2c\x1e\xb2\xc0\xdd\xc1\xfc\x2e\x5e\x9a\xff\x4d\x81\xa8\x7c\x5c\x43\x30\x12\x9e\x46\x6a\x9a\x29\xde\x2b\x3a\xe6\x36\xe1\xdf\x5d\x6a\x0c\x88\xd8\xd0\xfb\xff\xbf\xc7\xda\x2c\x9c\xc1\x04\x1d\x16\xe4\xca\x24\x1b\x5e\xe3\x03\xb9\x2f\x99\xfe\x33\xab\x80\xb3\xc6\x2c\xe0\x1e\xf9\x3c\xd5\x54\x19\xaf\x2e\x20\x60\x15\x27\x4c\x40\xfe\x6a\x9d\x29\xf1\x9a\x70\xc2\xd6\xd1\xdb\x97\x91\x8d\x46\x48\x5a\x3f\x68\xcf\x8c\x7a\x4b\x6d\x0d\xe8\xb6\x14\x35\x22\x11\xba\x42\x5f\xa3\x28\xae\x42\x21\x55\x00\x2b\x74\x38\x04\xe7\x55\xff\xb9\x20\x91\x71\x51\xb1\x16\xbe\xe0\xa3\x81\x12\x92\x46\xe0\x8d\x35\xed\xb1\xbe\x02\x39\x23\x76\x54\xf2\x6b\x2c\x72\xe5\xab\xbe\x30\xf2\x8b\x84\x4a\x66\x0b\x7f\x4e\xad\x68\x3d\xb0\x2d\xea\xbc\x3e\xab\x58\xc3\xe8\xba\xda\x7c\xef\xa6\x5e\xbc\x2e\xb4\x94\x83\x24\x04\xc4\xc4\xd8\x99\xd9\x03\x73\x05\x64\xe0\x6e\x33\xb4\x40\xcd\x0f\xa7\x45\x1a\x30\xaa\x99\xba\x45\x3a\x81\x02\x9f\xd3\xf6\xdb\xa6\xaa\x49\x5d\x38\xaf\x56\x1e\x59\x9d\x82\x3d\x92\x3a\xd0\x30\xa6\xbb\xb9\xc9\x66\x37\x06\x83\x0e\xe2\xd4\x2e\x74\xcb\x6c\x2f\x5e\xd3\x04\x0f\x0d\x00\x91\x95\xb8\xff\xcf\xaf\x38\x5a\x19\xbd\xe7\x6f\x7b\xb0\x7e\x8b\x33\xe1\x0a\xa8\xba\x13\x11\xdd\x0d\xa7\x92\xc1\xce\x65\x16\x5c\x1d\xed\x54\xd2\xba\xed\xed\x0c\x8b\x72\xb9\xf2\x99\xf3\x0c\x39\x10\xa6\x9c\x0c\xd4\x06\x07\xff\x11\x10\xa7\xc4\x2f\x39\xb0\x25\x19\x75\xae\x04\x98\x7a\x32\x96\x95\xa2\x02\x20\x82\x49\xcb\x4c\xe1\x75\xd1\x3d\xcd\x28\x66\xb3\x32\x28\x61\xfd\x80\x9e\x81\xc5\xab\x55\xd2\x03\xef\x00\x3e\xf7\x1d\x6c\x06\x92\x57\xfe\xcc\xc5\xea\xc2\xdc\x37\xb7\x55\xfb\x34\x7e\xf4\x1c\x96\xd8\xfb\xc1\x1d\xc4\x2a\xb4\x73\xd1\x68\xfd\x35\x9a\x93\x8f\x84\xdf\xab\xe5\x6a\x26\x74\x90\xc4\x0c\xd9\x1c\x34\x5d\xd0\xbf\x02\xb6\x0e\xa1\x90\x88\x24\x04\x2d\x00\x7c\xec\x33\xec\x3f\xb9\x84\x8e\xa1\x34\xbd\x56\xb8\x5b\xbc\x5d\xe4\x88\x4e\xd0\x61\x0e\xd9\xb3\x54\x26\xfc\x46\xbf\xcc\x7d\x66\xe8\x07\x21\x01\x01\xe9\xda\x9f\xc3\xbe\x7c\xf5\x7a\xb0\xcd\xd3\x3a\xdf\x8c\xd6\x92\x76\xed\xfc\x75\x8e\x65\x9b\x5a\x96\x74\xfa\xb0\x53\x91\x41\x63\xb7\x11\xa9\x97\x00\xad\x73\x9b\xa3\x23\xa9\x48\xe6\x3e\x20\xc3\xf7\x41\x76\x80\x70\xa9\x7a\x5a\x3e\x19\x7f\xe1\xe8\xa9\x53\xa3\xa0\x8e\x33\xe0\xbb\x1f\x19\x98\xe6\x45\x33\xbe\x26\xc2\x0b\xcc\x8a\xf5\xbb\xdf\x12\x25\x70\xdb\x5e\xe4\xf8\x13\x15\xb7\xcd\x4e\x8c\x2b\x36\xa6\xf5\x3b\x87\x00\x9f\x63\x66\x78\xaf\x3b\xb3\x75\xf3\x3f\xe3\x2c\xbd\x34\xe1\xec\x68\x73\xda\x3e\xa7\x5c\xdc\x5f\x92\x79\x4b\x58\x5d\x4c\xdf\x93\x75\x73\x47\xe0\xd9\x14\x2d\xec\xd3\xad\xe1\x42\x7f\xaa\xda\xef\x49\x4b\xc4\x54\xbb\xde\x71\x52\xee\xc1\xed\xa2\xda\xbc\x15\x95\x20\x8b\xe9\x8e\xad\x9b\xbb\x3b\x2a\x04\xa9\xa7\xd8\xf4\xbd\x98\x9c\xe3\xe0\xf9\x62\x5f\xd3\xfa\x2d\x11\x96\xb3\x5d\x08\x82\xd5\x82\x29\xbb\xd1\x66\xcb\xbd\xc4\xe9\x78\x7a\xb6\x10\xb3\xf9\xac\xeb\xa5\x70\x38\xd8\x79\xf2\x66\xb3\x21\xf5\xd7\xd5\xfa\xc3\x14\xe9\xba\x74\x44\xb3\x3f\x64\xf8\x6b\x88\x4f\x06\xf7\x91\x1f\x9a\x62\xba\x01\x7c\x9c\xb7\xd5\x47\x52\xab\x7e\x02\x98\xc0\xec\x3e\xd1\xcd\xe6\x19\x2c\x47\xf7\x1b\x7f\x4d\xd9\x8b\x0d\xbd\xb9\x55\x30\xc2\x7a\x2b\x7d\xfe\x13\xed\x51\x6e\x8e\xd3\x82\x63\x13\x09\x0e\x62\xfb\x48\x49\xc7\x86\x24\x26\xdf\x41\x36\x37\xbf\xb6\xdc\xa8\xf1\x9c\xb1\x7a\x4d\x6f\x6e\x08\xff\xb6\x12\x84\xa7\x80\x79\x4f\xd6\xd5\x1d\x79\xc9\xc0\xbb\x35\xbf\x06\x78\x35\x35\xc3\xbe\x77\x83\xda\x5f\x21\x00\xbb\x83\x91\xaa\xbe\x9f\x22\x29\xb1\x85\xc5\x62\x4f\xdb\xb7\xd5\x47\xca\x6e\x14\x32\x74\xf7\x3f\x85\x70\xb0\x73\xea\x67\x68\xfd\x58\x6c\x48\xb8\x01\xea\x75\x4d\xeb\xfe\xed\xf0\x10\xd1\x28\x42\xd9\xc7\xe6\x03\xf9\x96\x5e\x93\xf5\xfd\x7a\x43\x9e\x55\x7a\x41\xed\x54\x9f\xc0\x5a\xcd\xe1\x07\x5d\x16\xad\x0b\xf1\xcf\x01\xd2\xe3\x33\x71\xdd\xe9\x33\x9f\xe9\x2c\x3c\x66\x5d\xf8\x07\x1f\x4f\xe1\x9e\xc1\x66\x70\xb5\x0d\x7f\x85\x3f\x26\x17\x38\x2c\x3d\x91\x1b\x43\xbf\xaf\xe7\xd1\x58\x32\xd9\x3c\x7b\x30\xb5\xd6\x06\x86\x7c\x45\xda\xb6\xba\x81\xdc\x02\xde\x2c\x2f\xe6\x0c\x54\x3e\x86\xf0\x60\x38\x8c\x26\x1d\x9a\x4d\x25\xa9\xa7\xfd\x57\x03\xc0\x14\xa4\x6a\xa3\x8f\xa0\x49\x7a\x2e\x41\x8b\x12\xce\xc9\x22\x6b\xef\x71\x4d\x36\xfc\xa4\x0e\x8e\x9d\x3c\x73\x18\x70\xbc\xbc\xe1\x2d\x85\x1d\xcb\x22\x47\x0e\x13\x23\x40\xe9\x1d\x97\x41\x42\x01\x43\xeb\xad\x51\x8e\xeb\x74\x2c\xc4\x7a\xfb\xfa\x9a\x97\x3e\x3f\x40\xe8\x00\xc1\x88\xf3\x9c\x1d\x93\x22\xce\x55\xee\x6a\xba\xea\x3e\x79\x29\x96\x74\x85\xd9\x92\xae\xca\x6c\x52\xbb\x4b\x52\x70\xb4\xe0\x4e\xe6\x90\x05\x27\x48\x4d\x18\x02\x50\x48\x49\x49\xb1\x77\x27\x70\x61\x0a\xad\xc0\x4d\xf2\x9a\x7c\x52\xa4\xa3\x25\x62\xb7\xd5\x30\x08\x95\xca\xc0\xc7\xb5\x05\xe8\x3b\x1a\x32\x37\xe8\x3e\xf7\xfb\x59\xc6\xce\xbf\x79\x4c\x3f\x8d\x78\x36\x24\x3c\x12\xbf\xc9\x18\x5a\x2b\xdf\x01\x87\x5e\x71\x3d\x0d\x0b\x99\xb7\xe4\xb4\xd1\x8e\x92\x1c\xd7\xe3\x06\xb4\x7b\xc9\x2a\x43\x62\x51\xb6\x04\x07\x40\xce\xbc\x4a\xe1\xf3\x3e\x85\x0e\xcf\xb7\x31\x4e\x2b\xa0\x6e\xf4\x69\x47\x3a\x27\x2e\x59\x5d\x67\x4b\x3c\x59\x18\xdc\x12\x73\x70\x0d\x54\xe7\xc3\x34\xb5\xa6\xb5\x62\x53\x73\xa3\x25\xbc\x4a\xa8\x01\x94\xb8\xf2\x80\x0a\x08\xc0\x29\xf3\x72\xab\x83\x2e\x34\x91\x8a\xfc\x00\xca\x0d\x51\xef\x7a\xb7\xe9\x14\x74\x4c\xa8\x4e\x75\xc2\xd9\xf9\x2c\x44\xb1\x83\xed\x3b\x5f\xc8\x7d\x6c\xa3\xcf\xf6\x21\x79\x01\xc3\x7d\xc1\x2f\x63\x2f\x06\x8e\x16\x7b\x89\x05\x42\x46\xc0\x04\x36\xb4\xe4\x58\xcc\x5b\xf5\x97\x76\xa3\xc6\x02\x9d\x98\xfd\x83\xa2\xd9\x6c\x1a\xf4\x34\xd5\x91\x75\x53\xd7\x99\x7d\xd0\xd1\x0e\x2f\xa9\xce\xf8\x4d\x57\x25\x81\xff\xb0\xc0\xec\x6c\x3a\x9f\x9e\xd1\x30\x73\x49\xb1\xa7\xed\x37\x77\x5b\xc5\x14\x5f\x60\x2d\xf9\x00\x53\x64\x7f\x90\x5a\xff\x6d\x18\x67\xf5\xa7\xe5\x9b\xe0\xb1\xde\x36\xfd\x03\x48\xa2\xfa\xc3\x5c\xe9\xe7\xe1\xfd\x95\xb2\x4d\x6a\xef\x32\x7c\x35\x24\x3b\x85\xf9\xf8\x89\x9d\x47\xec\xb8\xb9\xe0\xaf\xb6\x41\x20\x11\x94\xf5\xef\x6e\xb8\x8e\x91\xc2\x7a\xef\x3d\xdb\x9d\xc5\x0c\x43\xda\x8f\x9c\x3a\x77\x79\xa6\xac\xfc\x83\xb0\xcd\x9d\xdd\xfe\xfe\x59\x23\x5e\x34\x3b\x06\x6c\x86\xb4\xeb\x57\x30\x71\x3b\x74\x8e\xc9\xcf\x96\xb1\x88\x81\xa1\xb5\xf6\x1d\x11\xe6\x37\x9d\x31\x26\x73\xc5\xf5\x6e\x48\xc5\x34\x93\x98\xe7\x19\x87\xb8\x42\xbf\xe6\xcc\xfc\x00\x27\x80\x85\xd7\x33\x5d\x24\x72\x9e\x9e\x78\x80\xb4\xe7\x1d\x00\x40\x93\xc5\x3e\xb8\xb1\xf3\xf2\xd7\x6c\xe6\xc2\x23\x9e\xd3\xda\x30\x77\x29\x9f\xa9\x84\x84\x84\xdb\x0b\x99\xc1\x1c\x3f\x95\x23\xeb\xc7\x64\x37\xfb\xd1\x6f\x25\xc3\xfd\x42\x9e\xbb\x7b\x90\xbd\xc8\xa3\x7e\xc5\xd8\x6b\x8e\xd6\xa2\x21\xd8\xac\x67\x51\x11\x3b\x76\x67\x27\x23\x89\x3d\x60\x36\x4c\xf3\x69\x48\x75\xce\xa3\x0d\x0f\xc4\xfb\x63\x6c\x59\x2c\xff\x3f\x40\x7e\xfe\xe5\xc2\xe7\x10\xba\x00\x04\xc3\xad\x50\x0f\x7e\x9d\x7c\xed\x8e\xe5\xc0\x45\xd7\x27\x0f\xff\x53\xc4\xdb\xcf\x2d\x54\x3e\x4c\xe2\x3d\x2a\xb0\x58\x72\x11\x5c\x7d\x01\x52\x69\xf1\x52\x89\x94\x2f\xd9\x47\xc2\xdb\xa4\xe0\xc7\x03\xe5\xa5\x9a\xd6\x1a\xa5\xd5\xd0\x39\xda\xab\xc1\xad\x97\xd9\xbb\x19\x5d\x01\xb4\x47\xce\xfe\x6f\x24\x30\x77\x90\x3e\x59\xdd\x7f\x1f\x01\x58\x0e\x6d\x29\xa4\x02\xb4\xc2\x21\xb8\xb9\xe4\x36\x11\xde\xab\x4d\x5c\x64\xde\xea\xda\x7d\x27\x20\x80\xd4\x11\x16\x53\xde\x34\x62\x1a\x08\x5e\x6b\x72\x2c\x4e\xf5\x75\xa1\x03\x5d\x7b\xe2\x51\x21\xa9\x06\xc1\xb7\x04\x5f\x13\xbc\x25\x78\x1f\xb3\xa4\x8b\x3b\x22\xcb\x94\x6d\xc5\x1f\x49\x39\xb9\x18\x6d\x49\x28\x64\x40\xee\x5c\x62\x55\xec\x2e\x19\x5b\x98\xb3\x10\xec\x06\x3e\x67\x21\x7a\x5c\xec\x9d\xf9\x63\x51\x13\x6c\x62\xb2\x9d\xf5\x73\x71\xeb\x9e\xf9\x76\xd7\x44\x96\x04\xe1\x9a\xcc\x66\xb7\x64\x36\xbb\x26\xb3\x59\xa1\xe6\x73\xee\x74\xf4\x1f\x89\x66\xe6\x6f\xb2\x21\x63\xf8\x7d\xfe\xf1\x7d\x3e\xc0\xcc\xe7\xa1\x0a\xb5\x11\xf7\x04\x1c\xe0\x0b\xf8\xbf\x24\xe0\x0b\x2e\x8a\xe9\x7c\x0a\x0e\xd7\x90\xab\x8a\x9c\xe2\xea\x12\x84\xa1\x0a\xa7\x7b\x8f\xbd\x79\x45\x75\x53\x0e\x46\xa7\xae\x37\x94\x30\xf1\x32\xf9\xec\xaa\xeb\x45\x63\x0d\x50\x2e\x1c\x22\x76\x00\xd6\xe7\x3a\x6e\x6c\xa2\x92\x83\x7b\xf4\x55\xc5\xaa\x1b\xc2\x5f\x6c\x76\xed\x6d\xb7\xe3\x3b\x85\xbb\x10\x7e\x42\xd9\x4d\xd2\xfd\xf7\xc4\xf0\x66\xf1\x67\x75\xf3\xba\x11\x66\x4a\xc9\x17\x3e\x36\x23\x99\x55\xc8\xf7\x26\xc9\xb8\x40\xe6\x8c\x9e\xb5\x89\xfb\x5c\x92\xab\xcb\xc5\x50\x26\xf0\xab\xc9\x35\xe1\x9c\xd4\x3f\xe8\x53\x99\xbe\xe6\x01\x6b\x91\xce\xc1\x18\xc0\x3b\xcf\x23\xf3\x78\x32\x0d\x8b\xdf\xda\xfb\xba\x3f\x66\x83\x13\x51\x51\x46\xea\x57\xa7\x7f\xe0\x4f\xbe\x39\x4c\xed\x03\xbf\xf9\xf9\xd8\x20\xeb\x1d\xf7\x62\x6f\xb8\x2e\x12\xa2\xd4\x16\x4c\xe4\x16\xc9\xc5\x9c\xd6\x3d\x71\xce\x31\x5a\x43\x86\x93\x0c\x56\xbb\x90\x75\x53\x89\xe7\xdf\x7e\x7c\xf9\xfc\xea\x2f\xdf\xfc\xc7\x2a\xfa\xa2\x23\x23\xc5\x98\x12\x3c\x09\x0f\xc6\xe4\x22\x3e\x14\xf6\xf7\xb1\x03\xe1\xda\x75\x0f\x83\x7b\xd5\xc1\x47\x3f\x07\xc8\x9f\x62\xef\xc5\x2e\x82\x06\x93\xed\xa2\x67\xf8\x32\x42\xce\x68\xd1\x0e\x35\x3b\xa0\xf0\x88\x69\xa3\x7f\xc6\x1d\xeb\x6d\xe0\x26\x49\x6b\xd9\xea\x26\x26\x3a\xb8\x63\x67\x15\xc6\x51\x39\xfd\x12\xb6\x78\x63\x8b\x6f\xc6\x9e\x97\x90\x98\x45\x8e\xee\x03\xff\x04\xd4\xe7\xb7\x9b\x7c\xae\xd8\x13\x8d\x08\xce\x57\x70\xaa\x88\xe7\xd4\xd3\xd1\xb3\x0b\x24\x7d\xec\x0d\xc0\xb4\xf0\x35\x88\xe2\x52\x90\xa8\x1b\x96\x03\x1f\xf8\xa8\x1b\xbf\x2f\x99\xcf\x3b\xc1\xdf\x7d\x21\xdd\x49\x0c\x77\xb2\x17\x45\x92\x84\xb7\xcc\xee\x98\x0b\x88\xea\xec\x24\xf9\x34\x26\x91\x33\xad\xf6\xa7\xc9\x6f\xbc\xb6\xe6\xfb\x13\xe6\x0d\xc9\x6e\xe0\xe0\x6d\xe4\x04\x63\x84\xcd\x30\x7d\x2a\xf4\x90\xec\x51\xe2\x0b\x11\x1c\x66\x82\x89\x8c\x43\xf7\xfd\x4b\x40\xb4\x70\x5e\x2e\xd5\x61\xd4\x43\x38\x7d\x2b\xf2\x65\xa1\x17\xb5\x71\xb0\x4b\x0e\x0d\xf9\x34\x7e\x4b\xac\xab\x54\xfc\xd2\x6c\x94\x3d\x4a\xbd\x7b\x64\x1b\x04\xdb\xe3\x8e\x5f\x2e\x54\xab\x73\x48\xf5\x8a\xd2\x93\xde\xb7\xaa\xb4\x9d\x5f\x59\x87\x56\x2c\x57\xa8\x8f\x8e\x48\xda\xfe\x89\xd6\x35\x61\x4a\x10\xf8\x3e\x07\x4c\xe3\xb4\x63\x14\x75\x10\xa9\x49\x4a\x60\x4c\xe7\xb1\x4a\xdc\x4e\x2d\xbc\x1d\xbc\x42\xb4\x8f\x50\x1a\xa9\x22\xeb\xf7\x6e\xde\x05\x94\xfa\x70\x30\x81\xe5\x44\x5e\x51\x13\xe0\xf2\x62\xb7\xd9\xdc\xbb\x10\xe1\xbd\x4b\xdd\x66\xdf\xbf\x64\x3f\xb6\x5d\x8f\x30\xf5\x26\xf0\x06\x9b\x68\xbf\x9f\x22\x0d\x1f\x4d\x9f\x9a\xc0\x51\x07\x8d\xe8\x70\x47\x2b\x37\x4d\xa4\xd3\xe6\x0d\x37\x36\x8d\x64\xc7\x69\xaa\xb7\x35\xa9\xe5\x6d\xa5\x05\xd7\xa7\x99\xd4\x0b\xdd\xcf\xba\xad\xa5\x55\x08\x0c\x8f\xa6\xdb\xc8\x20\x10\x7b\xa8\xb5\x69\x24\x6d\x7e\x8a\x81\xa6\xaf\xc9\x27\x69\x84\xd6\xe1\x86\xd0\x44\x3a\x45\xd1\x50\x63\xd7\x48\x7a\x7f\x1e\x7d\x67\x4d\xc2\xbd\x9f\xcd\x26\x3d\x18\xa9\x55\x6d\x40\xe2\x16\x42\x47\x36\x60\x5e\xda\x07\x38\xf6\x1c\x83\x5b\x0d\x87\x13\x58\x74\xa6\x04\x19\x9f\xb9\x63\x2e\x42\x4e\x03\x73\xab\x85\x0c\xde\x01\x17\xe5\x33\xfa\xe9\xc9\x4f\x69\x3d\xa5\x6c\x4c\x7c\x1e\x32\x1d\x92\xe1\x33\xf1\x69\xca\x0c\xa1\x2c\xd4\xd8\x36\x4b\x91\x88\x82\x83\x19\x4b\x82\xf4\x8c\x8d\x2b\xf1\x59\xe1\x36\x8d\xa1\xdc\x94\xe7\x8f\x37\x4f\x7c\x65\x5a\x9b\x2c\x63\x07\x55\x69\xf1\xba\x6c\x96\xbb\xd5\xc8\xcd\x7f\x0d\x05\x6f\xc2\x62\x84\x6b\x5d\xbe\xf0\x67\x52\x90\xe5\x6e\x85\x16\x6f\xcc\x1f\x58\xfd\x5b\x56\x48\x07\x60\xd6\x65\x7a\x6d\xcc\xaf\xd4\xe4\xf5\x9e\x6a\x41\xdb\xa4\xb6\x29\x5c\xe5\x0d\x93\x6a\x84\xe3\x3a\x60\x0f\x74\xd1\x2c\x8e\xd3\x2a\x5a\xc9\xcd\xa8\xa0\xa5\x2f\xf4\x4a\x09\x71\xf7\xb9\x70\x7b\x67\x01\xc2\xb7\xd1\xf4\xf0\x75\x1a\x27\x84\xbf\x00\xce\xe4\x16\x5f\xdb\x51\x8c\xc0\xff\xbc\x43\xe0\x61\xb9\xb7\xf8\x3a\x77\x5d\xca\x88\x49\xdc\xf7\x70\xb3\xa1\xb8\x65\x39\x4f\xcd\x8c\xfb\x36\x11\xd7\xbe\x23\x73\xd0\xb6\xcb\x3a\x40\x7e\x92\x0c\x93\xe1\x6a\xb3\x62\x9c\xe3\x75\x79\x9c\x2a\xc8\xa4\x3d\x70\x69\x03\x71\x37\x1f\x4b\x5e\xf4\x88\x2b\xa6\x0c\xb5\x5c\x92\x95\xed\xdf\xc6\x6b\x1f\x6d\x58\xa0\x38\xe5\x62\xef\x07\x32\x37\xe3\x58\x74\xeb\xd4\x76\x19\x7b\xe7\xf5\x9c\xe4\x06\xc1\xed\x99\x7e\x96\x64\x35\x8a\x26\xd5\x79\x8d\x85\x22\x59\xea\x08\x80\x2e\xf2\x65\xfb\xb4\xbd\x67\xeb\xd9\x4c\xb8\xb8\x9d\x04\x9d\xe1\xc4\xc4\x21\xdc\xbd\x62\x47\x56\x7f\x9e\xe8\xed\x0c\x7d\x61\xb5\xb5\x18\x7c\x6f\xf3\x42\xaa\xfb\xdf\x87\x5f\x4d\x9f\xbf\x5d\x8c\x81\x38\xfe\x0f\xf5\x62\x3c\x3d\x33\x24\x34\xf0\xed\x04\x36\x24\x28\x28\x16\x70\x95\x56\x5e\x7a\xab\x3a\xd5\x5f\x62\x82\x30\x9f\x1b\xd1\x4e\xb6\xa2\xe2\x82\xd4\x0e\xe1\xed\xd4\xa2\x33\x70\xee\x3c\xdd\x6d\x54\x6c\x2c\x2c\xb8\x73\x3b\x0d\x3e\x9b\x42\xb8\x9c\xcd\xc8\x37\x3c\xc0\xc5\x2f\x1c\xe0\x22\x74\xdc\x35\xcb\x4e\xd7\x33\xf2\x78\x84\x79\x08\x4f\xfd\xe5\xb8\xb9\x36\x40\x75\x2e\x2d\x2e\x13\x61\x98\xec\xb0\xf0\xc9\xe7\x38\xda\x0b\xeb\xad\x18\x58\x88\xa6\x38\x63\x52\x22\x12\x2a\xc1\xda\x00\x84\x6e\x9a\x0f\x91\x5a\x01\xb1\x90\x08\x47\x99\xee\xb4\x07\x29\x34\xb4\x9a\x7f\x4c\x24\xc2\xdd\xb5\xac\x9b\xbb\xad\x42\x26\x6c\x03\xaf\xaf\x37\xd5\x4d\x3b\x45\x3e\x43\x48\x30\x01\x31\xcf\x6c\x8e\x44\x48\xc6\x68\xbe\xef\xb2\x8d\x45\x80\xbd\x61\xe3\xa9\x39\x00\x59\x32\x88\x23\x8e\x3b\x15\xe4\x1d\x99\xeb\x48\xf8\xb9\x7c\x1e\x0e\xaf\xd5\xe9\x81\x66\x5a\x52\xc5\xd3\xab\xf5\x2d\x59\x7f\x78\xd1\xf0\x37\x7c\x7b\x5b\x31\x52\x47\xfe\xea\xed\x14\x21\x24\xb3\xec\x71\x92\x84\x23\x9d\x86\x4c\x62\x9d\xf7\x39\xca\xdd\xaf\xcd\x9b\x5c\x60\xbf\x0e\xdd\x55\xcf\x7a\xd1\x90\xa6\x43\x46\x71\xab\x7d\x17\x8b\xa1\xdd\x69\x74\xb6\x6e\x3d\x0c\x1f\xdb\x2c\xda\xee\xf8\x89\x17\x33\xdc\x0d\x20\x8f\xf6\xda\x7f\x07\x9e\xa0\xd9\x09\x26\xd3\x93\x17\x28\xaf\x14\xe8\x49\x11\x74\x75\x4d\x59\x9d\x14\x17\xc6\x2c\xee\xc4\xc8\xe4\x51\xcb\xaf\xef\xff\xdc\x36\xec\xe9\x96\xfa\xb8\x28\x6c\x48\x2a\x33\xe7\x9b\x97\x5f\x7d\x63\x73\x07\xe1\x84\x5d\xc4\x3a\xd1\x33\xc2\x83\x8d\x60\xd5\x5c\xab\x3c\xbe\xce\xe4\x3d\xeb\xb2\x71\x71\x43\x08\x94\x9e\xcd\x74\xb5\xb3\xcb\x58\x17\x34\x14\xcd\xae\x3f\x30\x79\xc1\x68\xa4\x98\x78\x40\x06\xab\x26\xf8\x10\x57\x25\x75\x75\xb2\x2a\x75\xbd\x62\xab\xd4\xd5\x11\xe9\x15\xde\x94\x50\x77\x8b\x60\x2d\x0e\x34\xb8\xe1\xf4\x86\xb2\x4a\x50\x76\xf3\xb2\x2b\x18\xb8\xf1\x16\x54\xbb\xc7\x2b\x1e\xdb\x55\x36\xb0\xd9\xd5\x07\x33\x9f\x31\x13\x25\x0e\x32\x44\xb4\x32\x75\xf9\xe8\xbc\x15\x4a\x1c\x7c\x2a\x84\xe2\xe8\x50\xc2\x43\xf6\xb0\x36\xa3\xb0\xec\x41\x8a\x5d\x1c\x53\x9c\xdc\xcd\x26\x7b\x78\x98\xd8\x57\x01\x35\x2c\x20\x4d\xb0\x4b\xbc\xbb\xc6\x26\x67\xf0\x62\x77\xb9\x0b\xe3\x2a\xf4\x66\xf9\xe4\x6a\x5a\x62\xda\xc8\x28\xe0\x02\x12\x80\x40\xe1\xa7\x61\xb8\xa4\x69\x23\x7d\x6c\x4d\x90\x98\x22\x8c\x73\x0f\x73\x4d\x3c\x1c\x53\x58\x16\x91\x5d\x39\x6a\x9f\xf1\xad\xcb\xd9\x29\xe1\x33\x4e\x78\x6e\x86\xf7\x1d\x74\x8f\x2a\x24\x42\x9f\x4c\x58\x3c\xc9\xd9\x2c\x79\x90\x72\x84\x05\x1a\xd1\xb2\x26\x2e\x19\xb2\x91\x5b\x03\x9d\xa0\xd3\xd2\x26\x3a\x4c\x5b\x37\xc0\x2f\x70\x91\xae\x18\x43\x9a\x68\xa6\x6b\x4c\x9b\xf0\x61\x1d\x3e\x87\xf5\xb1\xa0\x6d\x50\x46\x6e\x91\x2d\x12\x8e\x23\x57\x90\xc6\x26\x4f\xc4\xc9\x3a\x16\x15\xce\x48\xda\xde\x15\x44\xb8\xfc\x24\x1d\x78\x97\x54\x26\xa7\xa0\x87\x15\x0f\x24\x95\x9e\x16\xfd\x32\x43\xcf\x07\x90\x3b\x9c\x88\xf5\x2d\x2c\x22\x2a\x6f\xde\xcd\x7a\xdf\x6b\xac\x09\xd2\x20\x35\x87\x43\x11\x23\x8d\x3a\xae\xbd\x58\xa3\xe3\x38\xb1\xc0\x34\x88\x20\x2d\x98\x4b\x15\xf0\x6d\x25\x48\x2b\x14\x6f\x03\xac\xea\xd4\x02\x14\x78\x5f\xcc\x90\xf9\x4a\x84\x14\x3f\xa1\x3b\x58\x98\x6b\x61\xb0\x91\xbe\x0c\xd1\x51\xbb\x94\xda\xaf\x06\x37\x70\x82\xff\xd4\x49\xab\x78\xec\xcc\xb1\x5f\x7a\x9a\x69\xc9\x12\x52\xdf\x78\x52\x4f\x0f\x07\x8a\x2b\x97\xf9\x3f\x24\x2c\x0d\xa8\x49\x1a\x5d\x9a\xfd\x33\xd3\x63\x63\x5a\xc8\xa1\x0f\xc3\x1c\x57\xa7\x12\x65\x57\x86\x3e\x20\xc9\xad\x23\xc9\x95\xa7\xb6\x95\xec\xe9\x22\x4a\x40\x33\x38\x75\xa1\x4b\xea\xa2\xa0\x46\xbd\x19\x48\x51\x2a\x40\x31\xf3\x7b\x8a\xdd\x2b\x87\x7d\x66\x76\x53\x2f\xde\xa1\x91\x2d\x54\x3b\xa6\x91\xd2\x88\x5c\x5e\x93\xc5\xad\x49\xc5\xd1\x3f\x9b\x92\x7a\x1d\x4d\x4a\x05\x7a\x3e\x91\x71\xb0\x64\x06\xf9\x06\x4e\xa9\x42\x03\x17\x52\x3e\x8a\x01\x96\xc7\xd9\x51\x87\xa2\x17\x29\x49\x6f\xa1\x7d\x07\x97\x8a\xc9\x85\x82\x5c\xa7\xed\x5b\xa8\x3c\xf4\xa2\xe1\x6b\xa2\xe5\xa2\x62\x72\x8e\x6c\x3e\xad\x5f\xc7\x17\xc5\xd8\x8f\xec\xa1\xc8\xa1\x28\x85\xe2\xd3\x29\x8a\xf6\x62\xfc\xe5\x83\x51\xb8\x92\x68\x51\xc9\x34\x64\xfe\xb7\xd9\xae\x90\x3f\xfd\x7f\x6a\xc3\x3a\xcc\x1c\xcb\x30\x73\xbf\x70\x53\xf2\xcc\x5e\x23\xd1\xa2\xb1\x62\x9e\x37\x23\x19\x93\x62\x57\xe8\xbc\xcc\x6a\x10\x17\x89\x7c\x96\xd4\x1a\x89\xbc\x43\x26\xe7\x59\x4d\x62\xee\x46\xce\x6b\x12\x3f\xd7\x65\x2f\x11\xfe\xb7\x48\x5e\x31\x79\x84\x04\x44\xe0\x7b\x01\xd2\xf9\x19\x9c\xe7\xf2\xca\x0e\x88\x82\x49\x8a\x59\xc3\x21\x65\xf2\x02\x05\xdf\x45\x8d\x24\xf8\x33\x5a\x33\x6a\xac\x9f\x74\xf8\xbe\xdd\xb5\xb7\xd6\xed\x3e\x52\x6a\x99\xcc\xf4\x9d\x34\xf4\x46\xb1\x7b\xc5\x1a\x41\xaf\xef\x8d\xf3\x18\x25\x6d\x61\x2d\xa8\xa1\x8b\xa2\xba\xd8\xdd\x3a\xa0\x0a\x63\x27\xa9\x51\x7c\xf6\x9e\xea\x24\xe4\x6a\xea\x60\xaf\x8a\x08\x73\xdf\x77\xdd\xc6\x3f\x13\x48\xcd\x6a\x5f\x24\x14\xe3\x58\x3f\x61\xf3\x37\x71\x4f\xc9\xf6\x59\x87\x82\xc0\x3c\x16\xe6\x52\x03\x1d\x8a\x89\xa3\x36\x64\x41\x27\x1a\x6c\x89\x88\x73\x08\x0a\xf9\xa5\x4d\xae\x66\x2c\xab\x3e\xc9\x9a\x1a\x41\xbe\xd3\x79\x50\x0c\x5d\xee\xc0\x34\xc8\x95\x96\x5b\x51\x3c\xed\x51\x0f\x7b\x45\x5b\xd5\xce\x3a\xb8\x8f\x42\xa5\x6f\xe4\x52\x3a\xc5\x7b\x06\xe5\xb7\x9d\x47\x36\xf7\x7c\x85\x30\x09\xea\x1d\xe6\x77\xd2\x02\x04\xfa\x11\xd5\xd4\x61\x58\x47\xab\x65\xac\x20\x49\x7a\xe7\x30\x50\xf0\xd3\xf8\xdb\x82\x1c\x0e\x36\xbb\x7c\xe8\x22\xe2\x4f\xa6\x8c\xa2\x4b\x22\x65\x76\xf0\x06\x7c\x2f\x83\x48\x92\x4e\x3b\xfd\x7c\x8a\x64\xe0\xfc\x1e\x34\xb1\x4f\xa7\x3a\x3d\x4f\xae\x17\xff\x7c\x0a\x6a\xbd\x4c\x6c\x82\xcb\x6b\x6c\xd0\xca\xd9\x8f\xad\xcd\x32\xd0\x28\xa3\xf8\x48\xc2\x16\xe6\x7b\xcd\x66\xda\x8f\xbc\x7d\x06\x07\xba\xdc\xcb\x8e\x34\x98\x2b\xfa\x20\x8d\x3d\xf3\xa7\xd0\xc7\xb7\xf3\x61\xe8\x01\x8c\x03\xe8\xf8\xe7\x53\xd7\x93\x8f\xcf\x08\xe1\x18\xa5\x0c\x90\xf0\x2c\xe5\x04\x42\x83\x97\x4b\x21\x0d\x8e\x9c\xe6\x96\x63\xb7\x15\xab\x37\xa4\xfe\xe6\x23\x61\xa2\xe0\x18\x7c\x9e\x55\x0b\x97\x7b\xcc\x89\x96\xc6\x34\x52\xd7\xc4\x2b\xee\xfb\xc8\xa2\xa6\x8a\x86\x10\xd9\x4f\x64\xf4\x54\xef\x8f\xb1\x4b\x27\x34\x37\x49\x89\x9b\xea\x12\x20\x0d\x52\x2a\xcd\x49\xd3\xbd\xa3\x5a\x7e\x80\x13\xa6\xda\xf9\x2a\xb2\x23\x21\xe9\xf2\xaf\xdc\x35\x1f\xab\xcd\xb3\x5b\xa2\x3d\xb5\x07\xe7\x69\x81\xdc\x7b\x77\x62\x5e\x4e\x2e\x82\x7c\x5a\x05\x2f\x6d\x1e\xbe\x1f\x99\x3e\x6b\x91\x42\xad\xe8\x15\xf7\x67\x33\x7e\x5c\x90\xef\x9b\x27\x1e\xb6\xba\x21\x84\xb9\x8c\xae\xb9\xfb\x07\x81\xb6\xf3\xd1\xe8\xd7\x41\x0d\x2e\x00\x87\xe5\xc3\xf0\x1a\xfd\x57\xc0\xcb\x62\x22\x9c\xba\x7e\x50\x15\x64\x36\xd3\x85\x4a\xa6\x13\x28\x36\x6f\x6f\x35\x7b\x0d\xe4\xe1\x67\x3e\x41\x58\x7f\x6e\x2e\xdc\x87\x76\x61\x3f\x43\x51\x3f\xb4\x61\xcf\x5c\x2c\x40\xd0\x63\xde\x36\x6a\x5d\xfd\xb3\x96\x79\x4d\x1c\xc1\xa3\xf5\xb9\x6d\x58\x20\x99\x0b\x25\xca\xb8\x25\xc1\xd7\xb9\xb6\x23\x9f\xcc\x1e\x08\xd4\xd4\x78\x91\x4c\xed\x2d\xd0\xb1\xcb\x79\x7a\x19\xc6\x04\x25\xd6\xfa\xa8\xc8\xfb\x51\x16\x8f\x20\x19\x85\x50\x58\x42\x60\xd3\xd9\xe7\x72\xcb\xbd\x37\xfe\xf3\xf0\x7f\x09\xae\xf5\xcb\xf3\x95\xae\x36\x58\x75\x89\x35\x6e\xcb\x77\x5f\xec\x2b\xef\x3c\x26\x1f\x7d\xa5\x18\xa5\x77\xa3\xba\xd9\x57\x73\xf2\x33\x15\xb3\x99\xfe\xdf\xb0\xda\x55\x59\x85\xb1\xb8\xf2\xd3\x2d\xdd\x90\x62\x52\x2d\x9b\x95\x3e\x71\x9b\xf2\x86\x2c\x5b\x38\x3e\x1b\x24\x4a\x28\xfc\xb7\xdb\xb6\x98\x97\x9b\x39\x51\xc7\xa6\xc5\x95\x7a\x0a\x77\x05\x68\x20\x44\xb9\x54\x34\x6a\xb9\x32\x45\xee\x61\xd6\x90\x7b\x80\x95\xe7\x18\xaa\xf5\x6a\xff\x17\xf6\x84\x42\xa9\x84\xa2\x2a\xab\xe5\x6e\xc9\x56\x2b\xa4\xbb\x9c\xcd\x4c\x75\x8a\x0a\xe1\x4a\x0f\xa8\x68\xb7\x79\x34\x82\x09\x95\x3a\x54\xb1\x5d\x08\xac\xa7\xb1\xe0\x18\x26\xb1\xa8\xa4\xf4\x83\xf1\x74\x30\xbe\x64\x2b\x3d\x8a\x49\x6c\x74\x6d\x25\xc3\xc8\xcd\xa3\x3a\xd9\x4a\x1d\x7e\x36\xc5\x15\xc2\x7a\x60\x91\x0e\x2c\xd4\xc0\x3a\x48\x0a\x06\x96\xe9\x35\x1a\xa9\x8e\xa6\x11\xc7\xab\xdb\x8d\x89\x6a\x37\x7e\x37\x3d\x13\x67\xd3\x77\xe3\xa9\x4d\x37\x74\x56\x4e\x1b\x36\x9e\x9e\x99\xba\xef\xd0\xfb\xd9\x74\x0c\x5b\x39\xa6\x6c\x0c\x60\x19\x4f\x31\x3b\x2b\x03\xbf\xc2\xb3\xe9\x7c\x3c\xf5\xce\x52\x8a\xb2\xa9\x9e\x9e\x55\x0a\xdd\x21\x19\xd1\x78\x7a\x66\xca\xdf\xb1\x76\x4b\xd6\xa2\xe0\xe8\x6c\x3a\x9f\x22\x9c\xb2\xe7\x4c\x61\x76\x10\x93\x13\xa6\x94\xef\xd4\xce\x10\x41\xed\x0c\x97\x57\x9e\x40\x42\x79\x28\xf2\xe4\x2b\x66\xf0\xd5\xe8\xc2\x19\x91\x53\xff\x4b\x53\xbe\xc4\x1e\x60\x23\xf6\x6b\x92\x13\x93\x73\x03\xed\x5e\x27\xa2\x3e\x4e\x82\xf4\x8c\x8c\x63\x41\x10\xab\xeb\xc4\x74\x6e\xb2\x26\x4e\xed\x49\x0e\x72\x69\x38\xbf\x30\x8d\x1e\x24\x45\x0f\xa3\xde\x26\x50\x27\xc4\x66\x56\xc0\x0d\x92\xc4\x15\xf4\x90\xf2\x48\x60\x5d\x94\xc3\x16\x12\x6c\x4e\x2e\x32\xae\x2d\x47\x7b\x91\x5b\xad\x2b\x8a\xa5\xdf\xbd\x1c\xc5\xfe\x6c\x4e\x43\xc0\x5d\x4a\xfb\xb8\x42\xd7\x28\x95\xb0\xef\xb4\x26\xc6\x45\xd7\x71\xa4\x39\x65\x37\xfa\x65\x21\xa2\x14\x8a\xe0\x46\x1e\x3f\x29\xf7\x12\xe1\xe4\x19\x24\x47\x81\x65\x6e\xad\x97\x46\x60\x09\xe6\x98\x21\xb4\x28\xc4\x3c\x28\x0c\x79\x88\x7e\x9a\x3e\x83\xb2\x5c\x7c\x55\x32\x24\x33\xc0\x73\x22\xbf\x40\x32\x3b\x5a\xca\x4c\x0f\x2c\x5f\x5b\x70\xc1\x78\x64\xf8\xb9\x7d\x5d\x89\x6a\x11\x6a\x6f\xb9\x76\xf9\x73\x29\x09\xf5\x84\xd6\x8d\xda\x39\xf1\x5d\x77\xfc\x1f\x9a\x3f\xbf\x7d\xf3\x5a\x47\x30\x2f\x4e\x6c\x2c\x30\x43\x52\x9e\xd2\xa9\x93\xff\x6d\x32\x5f\x9f\x5d\xf1\x70\x98\xb2\x9d\xda\xfe\xe0\x99\xa9\xba\x2a\x74\xb8\x82\xa9\xb7\x5a\x74\x13\x90\x5e\xa6\x0f\x16\x24\xc8\x9e\x87\xa1\x1c\x15\xad\x75\xb4\x5a\x5c\x13\xdc\xf9\x5c\x07\x54\x80\x77\x82\x4e\x6c\xaa\x64\x5a\x1b\x5e\x46\xd3\x04\xed\xf3\xe9\x10\x3c\x0c\xcd\x18\xd9\x3f\x4a\x72\x42\xb4\x04\x16\xae\xae\x80\x0b\x32\xb0\x35\x88\x7c\x72\xfa\x44\xff\x98\xc4\xef\x64\x70\xed\xea\x0a\x66\x98\x91\x54\xcd\x1b\x5d\xc8\xc3\x27\x7b\x8c\xf8\xe9\x1e\x26\x0e\xea\x11\x7b\xef\x22\x0d\x38\xed\xf2\x48\x92\x60\x9e\xae\x2f\x58\xc4\xe2\xb4\x4e\xa9\xa1\xd8\x9b\xbd\xf9\x6c\x31\x39\xc7\xa1\x6b\x2e\xb8\x45\x25\xfc\x55\x38\x68\xe8\xfb\x11\x07\x11\x3d\x74\xdc\x8b\x78\x5c\x70\xa2\x09\x85\x61\x1f\x96\x9d\xe3\xf9\x46\x3d\x3a\xbe\x30\x9e\x3b\xd1\xea\x58\x81\xbb\xdf\x15\x50\xb1\xc9\x47\x35\x7f\xb2\xaa\xeb\x30\x6a\xf7\x87\x26\x51\x94\xc5\xdc\x6b\xc8\xa9\xe3\x29\x00\xb1\x9d\xa2\xf9\x95\x2d\xfc\x23\x8f\x05\x2b\x93\x53\x7b\x74\xf9\xe1\x65\x2e\xb2\xf8\xc4\x4e\xac\x93\x65\x10\x10\x1d\xe7\xac\x3c\xd2\x01\x84\x11\xe8\x2b\x70\x8a\xbe\x3a\x0f\xf6\xd3\x84\x4e\x57\x16\x4c\x40\x1d\x80\x9f\x83\xa4\x59\x04\xdd\x11\x9d\x29\x46\xdd\x45\x66\x1f\x06\x40\xcd\x31\x59\xf2\x55\xb4\xc7\x71\xe4\x7b\xe6\x84\xea\x18\x68\xc8\xcf\xa2\x2b\xcd\x16\x56\x5f\xa1\xd7\x6a\x4e\x9d\x4d\xde\x9b\x53\xda\xea\x86\x3a\x1d\x76\xef\xeb\x4e\x80\x90\x2e\xfa\xeb\x8f\xb9\x99\x63\x34\x2a\x41\x76\x32\xf9\xb7\xfb\x8e\xdc\x47\xbb\xed\x40\x05\xe3\x61\x1e\x93\x8d\x10\x4a\x46\xa0\xb2\x79\xf9\xbc\xfb\xe2\x49\x40\x13\x8d\xe1\x5e\x2d\x72\xbc\x7b\xf2\x45\x52\xb2\x4b\x2e\xcc\x13\x5a\xcb\xaf\xde\x49\x17\xfe\xf3\xc2\x86\x0d\x07\x97\xae\x8f\x0d\x32\x76\xd6\x89\xe3\xac\xd7\xc4\x2a\xa9\xc0\x94\xdd\x49\xd8\xac\xae\xdb\x51\x60\xb1\x29\xcb\x92\x5e\xea\x82\x6f\xff\x3b\x8d\x10\xc3\x0c\x0b\x14\x5d\xd7\x14\xf4\x31\xaa\xf1\xff\xc9\x36\x76\x9e\xc4\xc1\xfc\x4a\xee\xab\xff\x07\x15\xe1\x49\xe8\xfc\x40\xaf\x0b\xa3\x3f\x20\x43\x86\x3a\xb1\xc2\xbc\xc7\x4e\x76\x81\x54\x3f\xbc\xdf\xe2\x76\xae\x49\x60\x53\x76\x47\x08\x6c\xd6\x5a\xe6\x68\x66\xb3\x18\x44\x9a\x4d\x99\xcd\x1a\x6f\xc4\x76\x7f\x46\x36\x28\xf5\x3c\x36\x6e\x9b\xb2\x92\x0e\x06\x83\x36\x41\xae\x6f\x54\x3f\xbb\x97\xed\x5b\x51\x29\x91\xf5\x02\x61\x16\x14\xb4\x27\x51\x09\x6a\xc5\x3c\xbd\x21\x41\xda\xb4\x37\x56\x87\x38\x21\x28\xf0\xa0\x82\x34\xb7\xe0\xc8\xe1\x98\x02\x75\x40\x94\x9c\x7f\x13\x4e\xda\x9b\x05\x2f\x5f\x17\xc2\x64\x22\x0e\x12\x09\xe8\x62\xf2\x24\x53\xd9\xe1\x87\xbe\x78\xf7\xab\xab\x28\xe2\x3d\x08\xf6\x05\x45\xff\x35\x25\x9b\x4e\x4a\xed\x07\x56\xd6\xf5\x95\x7c\x33\x56\xd2\x23\x9f\x6a\xa4\x56\xeb\x30\xcb\xec\x91\x05\x48\xf9\x15\x37\x85\xba\xa6\x6e\x5a\x53\x94\x04\x04\x64\xdb\x8b\x25\x59\x01\x1a\x81\xee\x50\x2d\xba\xea\xd3\xf7\x3c\x70\xe1\xa1\xbb\xf7\x2b\x85\x0a\x7a\x2e\x84\x09\xae\x35\x33\xb6\xe2\x72\x00\x8e\xaf\xef\xd5\xa7\x3d\xe3\x3e\x20\x36\xe8\xf8\xd0\x19\xcb\x66\x68\x63\x7a\xe8\x5a\x43\x40\x73\x0f\x68\x56\x7e\xb5\x27\x36\x73\x1a\xc3\x7c\xc9\x56\x48\xf6\x15\xdf\xcc\x8d\xff\x80\x35\x3f\x7c\x0a\x3f\xf0\x8a\xb5\xd7\x0d\xbf\x0b\x8c\x22\xbf\xf5\x54\x40\x15\xa4\x2b\xab\x65\x66\x05\x47\xf8\x15\x31\x22\x2d\xa8\x68\x48\x6d\x0e\xf1\xd3\xce\x21\x06\xcd\x8d\x95\xbd\x39\x5c\x02\x7b\x27\x3e\xb6\xc6\xfa\x96\x4d\x74\x00\xac\x62\x92\xca\xe2\x7e\x1b\xa7\x07\x30\x1a\x80\xa8\x02\x3b\x49\x12\x56\x64\x2b\xab\x1b\xc6\x3a\x53\x88\x3d\x98\x54\x27\xc4\x5d\x4f\x89\x44\x63\x93\x98\x11\x0b\x67\xea\xbf\x87\x49\x89\xec\x7c\xf8\x60\x51\x75\x6e\xff\xea\xad\xe8\xad\x9e\xb9\x98\x72\x18\xb6\x33\x63\x3d\x43\xf5\x6e\x8a\x82\xda\x91\xe6\x18\x67\xec\xd6\xfa\x2b\xcf\x60\x38\x90\xc4\xa1\xc3\x4e\x2c\x74\xef\xdd\x44\x3c\x10\xbb\xfd\x5e\x89\xea\x43\x58\x57\x37\x85\xbb\xc6\xb0\xef\x2c\x86\xc1\x47\x70\xd7\xce\x75\x7e\xf9\xe2\x15\xc1\x90\xfd\xcb\xe9\xc8\x75\x65\x8a\xf9\x7c\x1e\x64\xdb\x34\x7c\x58\x78\xa1\x6a\xb1\x52\xff\xd2\x65\x75\x9c\xa7\xbf\x76\x59\x2c\xa3\x5f\x87\x83\xcf\xe2\x00\x79\x76\x42\x5f\x7d\x7d\x27\xf9\x3f\x75\x7f\x66\x29\x3b\xd3\xda\xf0\x20\x26\xb5\x1e\x27\xdb\x4d\x05\x21\xf9\x9d\x74\xe8\x3f\x40\xf9\xb3\x76\xb7\x11\xe3\xe6\x7a\x5c\x8d\x5b\xc2\x3f\x12\x3e\xfe\xfb\x8e\xf0\xfb\x71\x71\xdd\xf0\x71\xb5\xd9\x8c\x3b\x8c\x1f\x20\x44\x8b\xc6\xb4\x1d\xd3\xbb\xbb\x9d\xa8\xde\x6f\xc8\x7c\xfc\x43\xa3\xf6\x97\x5e\xdf\x8f\xcd\x5a\x5b\x0c\x75\x02\x5d\x61\x83\x77\x48\x6a\x9f\x5d\x0d\x60\x53\x95\xa1\x2e\xa6\xae\xe7\x29\xce\x45\xe9\x44\x83\x5f\x06\xc2\x7c\x5f\xd2\x02\x23\x6a\xa2\x39\x27\x55\xfd\x86\x6d\xee\x0b\x84\x75\xca\xc9\xa7\xe2\x99\x9e\x9b\xd7\x32\xa4\xa6\x08\xc7\x52\xcc\xed\x27\x41\x2d\x4c\xb0\x59\x86\xde\xda\x26\x47\x9c\xd6\x5a\x76\xad\x1a\x76\xff\xa6\x08\x75\xfd\x1d\xfd\x4e\x8d\x3c\xd6\x04\xdf\x60\xcb\x02\xda\xb3\x65\xc7\x4a\x8a\x0e\xf7\xee\x3d\xb6\x02\x45\x1a\xf7\xed\x4d\x4c\x9d\x38\xf1\x9e\x99\x5c\x04\xd5\x8b\xf3\x03\x12\x4c\x24\x76\x53\xcc\x44\x74\x5c\x53\x56\x3f\xdd\x6c\x52\xb5\x4b\x98\xb0\x5f\xe2\xab\xed\xae\xbd\x4d\x22\x58\x3a\xf2\x71\xb8\x49\xaa\xbd\xbe\x53\x40\x53\x8a\x8d\x90\xfc\x90\x2e\xf4\x17\x61\x27\x10\x07\x68\x39\x0d\x08\xf5\x0a\xd4\x08\x61\x30\x60\xb0\x0e\x51\x76\x03\xd7\xe6\x95\x5d\xaf\xce\xc6\xa5\x13\xce\x4d\x51\xa7\x2a\x8e\xc9\x92\x95\x1d\xc9\x40\x32\x78\xee\xd9\xdd\xb7\xce\x3b\xde\x3a\xb1\x09\x80\x62\x4d\xdb\xb6\x59\xd3\x4a\x80\xaa\xe1\xcd\x27\xa6\xbf\x76\x8a\xb9\x98\x79\xce\x84\x7e\x92\x24\x77\x84\xb6\xd6\x6b\x91\xc7\x68\xeb\xd4\x38\x3b\xc6\xc9\x0d\x6d\x05\xe1\x6a\x1c\xa3\xdd\xb3\x83\xdc\x19\x65\x9f\x6f\x14\xac\xc1\x74\x02\x29\xd4\xd2\xc8\xae\x9e\x5e\x6d\xc4\x6e\xef\xda\x3a\x9a\xc1\x44\xa6\x49\x5f\x9b\xcb\x13\x9f\xbb\xbb\xa0\x4b\xd0\x25\xbe\x1a\x74\xd9\x79\x6a\xc5\x57\x07\x56\x75\xe9\xc2\x16\x4b\x9c\x5c\x39\x79\x3d\x4b\x88\x8a\xae\xd4\x4e\xa7\x0a\xbc\x94\x08\x3f\x23\xe5\x77\xc4\xde\x46\xd1\x55\x94\xb9\x70\xe2\x2d\xb6\xf5\xc3\x9f\x06\x17\x5f\xdf\xed\x05\xe4\xbf\xf4\x7f\x86\x77\x8c\xae\xd2\xe6\xff\x34\x65\xe2\x7e\xf9\x25\xd3\xb0\xee\xfd\x92\xdc\x2c\xef\x50\x48\x58\xf4\xa1\x4c\x41\x08\x24\x46\xb1\x41\x9d\x37\x30\x8e\x3f\x31\x64\x7e\x05\x4f\x52\x32\xa4\xb9\x24\x35\x52\x4b\x44\x4a\x3d\x9c\x50\x98\x9c\x9b\x96\x08\x4f\x36\xdc\xd5\x1f\x2b\x43\xc3\x8c\x9f\x96\xa0\x2e\x26\x17\x3a\x00\x25\x8a\xf5\xdf\x4b\x6c\x6b\xe3\xe9\x88\x94\xee\x5b\x78\xee\xec\x20\xf6\x80\x5d\x55\xf6\x44\xfc\x44\xc5\x6d\x78\xc8\x4c\xe2\x1c\xa7\xbf\x0d\x72\xe3\x5a\x0b\x2a\xdf\xb1\x79\xc3\xac\x16\x66\x6a\x2c\x67\x53\x1c\xe4\xec\x96\x08\x7f\x20\xd9\x60\x50\xc3\x7f\x7f\x4f\x86\xea\x3e\x07\x3a\x97\xc4\xfd\xf5\xa2\x13\x64\xe8\x83\x12\x37\xf4\x63\xa4\xbc\x1d\x48\xfb\x65\x92\x5b\x0d\xb4\x30\xbc\xee\x77\xcd\x76\x07\xb5\xb1\xa2\x8e\x97\x2b\x99\xda\x23\xbc\x0d\x22\xae\xe9\x3a\x21\xc7\x52\x69\xe9\x04\xc7\x47\xb2\x6d\x9d\x47\x4e\x8b\xa6\x35\x18\x57\x0b\x0e\x0a\xa8\xa5\x58\x1d\x0e\xcb\x15\xb2\xd5\x81\x66\xb3\x0f\x24\x08\xbc\xad\x80\x45\x32\x45\x37\xcc\x12\xaf\x61\x74\x29\xf5\x1f\xdf\xe9\x3e\x63\x44\x7e\xd1\xf0\x57\x8e\x03\x8f\xab\x1a\x94\xcb\x15\x66\xe5\xf9\x63\xe6\x4b\x8a\x3b\x2b\x28\x2d\xc5\x92\xad\x46\xf4\x94\x2c\x62\x74\xde\x9f\x87\xc7\xb9\x11\xf8\xac\x1e\xd9\x9d\x5e\x92\xd5\xa8\x99\xcd\xbc\xfb\x45\x66\xa6\xcb\x15\xa6\xe5\xf9\x63\xea\xa7\x4b\xbd\xd1\x16\x12\x88\x43\x59\xde\xde\xb9\x40\xb9\xde\xf8\x86\xab\x0e\x87\x26\xcc\x0e\xa4\x0f\x0c\x41\x87\x43\x61\xe6\xdd\x20\x0c\x1a\x6b\x30\xf3\x54\xe0\x3d\xef\x9f\x9b\xbb\x91\x20\x24\x79\xe0\x84\xa2\xb0\xa1\xcb\xd2\x70\x34\x62\x71\xa3\x2c\xdb\xc2\x90\x2c\x1a\xf0\xe5\x0b\x1a\x87\x6e\x29\x03\x95\xef\x9f\x93\x82\x2c\xc5\x0a\xc9\x82\x23\x83\x14\x89\xf2\xc4\xe2\x9d\xeb\x44\x97\x37\x3e\x76\xa2\x08\x0a\x10\xee\x38\x9e\x09\xac\xa7\x71\xd5\xde\xb3\xf5\xb7\xf1\x56\x77\x35\x0a\x66\xe0\xa5\x50\x9b\xac\xe5\x36\xda\xea\xb6\x1c\x61\x5a\x4e\xd8\xe1\x00\x22\xbd\x75\x5f\x68\xca\xd8\x71\x3d\x2c\x05\x2b\x10\xae\x82\xfb\xa0\x71\x37\x3e\x2a\xcb\xc8\x34\xee\x9e\xeb\x00\xc7\xc3\x61\x52\xa1\x3d\x73\xbe\x65\x27\xaf\x94\x27\xfe\xf6\x7e\x35\xc8\x41\xd9\x8a\xa6\x1f\x69\x4b\xdf\x6f\x92\x1d\xff\x5a\x67\x05\x12\x08\x6f\x14\x8a\xef\xca\xf3\xc7\x3b\x9f\xa0\x66\x67\x51\x7c\x5d\xb6\xcb\xdd\x0a\xd7\xe5\x3a\xc1\xe1\x89\xa2\x21\xb5\x41\xdc\xd9\xac\xa8\x0d\xba\xe2\x8d\xc6\xd4\x35\x42\x72\x63\xba\xeb\xc3\xcd\x8d\x22\x22\x2e\xc7\xab\xe2\xd8\x13\x17\xc9\xdc\x79\x15\x91\x43\x0e\xee\x08\x0f\xc9\x37\xc6\xf1\xff\x58\xaf\xe0\x23\x68\xb8\x95\x0c\xf6\x08\x1c\x46\x59\xf1\x13\x00\x4b\xd0\xc8\x8c\x17\xa6\x7c\xb3\xb8\xc8\x51\xcf\xdd\x03\x6e\x84\xde\x27\xfc\xc8\x10\xc1\xa9\xec\xc7\x4d\x82\x4c\x8e\x9e\x16\x9f\x42\x7c\x61\x63\x4f\x25\xae\xce\x7a\x91\x5b\xa4\x3b\x70\xdf\xf9\xd0\x5a\x1f\xdd\x4d\x5c\x74\x9d\xe5\x17\x05\x5c\x44\xb8\x13\x7d\x1b\x72\x36\x86\x11\x81\xd7\x5e\x4e\x8c\x8f\xaf\x40\xb3\xd9\x6b\x73\x48\xec\xcc\x9e\xf6\x5f\xcb\x3e\x37\x00\x40\x21\xdf\x27\x47\x97\xaf\x49\xc1\x31\x2d\x9f\xe5\x17\x03\xac\xde\x42\x74\x16\xc5\x33\x0b\x0a\x17\x81\x1f\xc8\xb7\xb1\x41\xbe\x8d\x39\xbe\x0d\x2d\x1e\x3c\xd5\x23\x33\x95\xa7\xb0\x38\x16\x33\x30\x95\x79\x61\xac\x97\xdf\x89\x2f\x61\x5b\xae\x96\xb2\x9a\xfc\xfc\x46\x1d\x4e\xd5\xe8\xd1\xc5\xa4\x2c\xb9\x2f\x3f\xd8\x6e\x21\x10\x9a\x63\x28\xc8\x3e\x72\x79\xec\x8a\xe3\x13\xc5\x04\xc5\xf7\x41\xe7\x24\x8a\xd5\x88\xcf\x66\x44\x6b\x75\x23\x62\x9b\x69\x2a\xe5\x20\x6b\x8c\xf6\xaf\x4d\x3c\x52\x2c\x85\x76\x63\xb2\xd2\xbe\x23\x91\xb9\x97\x66\xf8\x30\xac\x93\x36\xc9\x76\xf9\x37\xd2\xcd\x04\x52\x4e\xce\x8f\x45\x92\x1d\xe3\x10\x83\x35\x86\xc5\x0c\xff\x66\x4a\x20\xf9\x88\x35\xf7\xea\x79\xc4\x08\x27\xfa\x00\x37\x5d\xaf\xb2\x83\x92\x88\x79\x4e\x06\x3c\xaa\x15\x18\x5c\x92\x27\x37\xca\xeb\x0e\x2f\x7a\x8e\x99\x77\xc8\xe3\x4f\x18\x38\x23\xee\xc9\x92\xaf\xe2\x49\xc0\xe5\x26\xc2\xc5\xbc\x0c\x8c\xb4\xb8\xd1\x73\xb7\x2c\xc0\xd3\x82\xf6\xca\xd7\x8d\xa9\x19\x8d\x90\xe2\x0c\x45\x90\x4a\x40\xdd\xc4\x5a\x77\xa5\x0b\x90\xe2\x16\x33\x5c\x21\xbc\x2b\xdf\x3d\x7f\xbb\x18\xff\x49\x7b\x82\x1a\x42\xf6\x3f\x6c\x3b\x25\xe9\x7e\xf9\xc5\x9e\xcb\x2f\xdf\xa9\x13\xe2\x2c\x11\x1b\x94\x8a\xc7\x53\x83\x12\x6e\x08\xa3\xef\x21\xf5\x78\xc7\x74\x11\xf3\x1a\x03\x86\x8f\x3f\x55\xed\xf8\xa3\x12\x9a\x37\xf4\x03\xd9\xdc\x8f\xab\xf1\x1d\x6d\x45\xf5\x81\x38\xe9\xb6\xd8\x94\x5f\x17\x1b\x2c\xf0\x0e\x25\x15\x78\x59\xf9\xa7\x42\xcc\x5b\x9b\x18\x88\x9b\xb5\xa9\xe5\x98\xc8\xcb\xa9\x9d\x40\x60\x4c\xd5\xfc\x81\x62\x43\x03\x05\xd5\x37\x3f\x0b\x5e\xad\xc5\x78\x5b\xdd\xfb\x24\x4e\x3c\xd8\xd0\x6f\x49\x42\xbc\xcb\x98\x8a\x64\x49\x39\x41\x97\xda\x2c\x2c\xd0\x42\x57\xef\xd6\x95\xaf\xb1\xd0\x2b\xd8\xd3\x7a\x41\xb5\xfa\xb8\x81\x52\x21\x69\xe2\xf8\x60\xc4\xb8\x2d\x19\x91\x8e\x0f\x23\xe9\xfa\x30\x8e\x74\x5d\x92\xe0\xe9\xa2\x92\x25\xc1\x6d\xd9\x1d\x63\x70\x70\x6d\x14\xfb\x89\x57\xdb\x2d\xe1\x0b\xaa\xfa\xd0\x11\x66\x8d\x2c\x39\x0e\x68\x7e\x25\x4b\x81\x5b\x75\xab\xbb\x40\xc7\xc8\xf2\x57\x99\x18\x7d\x9d\x66\x65\x0f\x17\xcf\xfe\x03\x65\xf5\x62\x23\x65\x49\xe7\x03\x56\x37\x86\x96\xad\x4d\xbc\xb0\x37\xdd\xff\x85\xdc\x2f\x5a\x6c\xbf\x97\x6e\xd2\xb2\xe0\x58\x60\x16\x0f\x16\x7c\xb3\xd1\xdf\xec\x64\xd9\xe2\x75\x59\x2d\x37\xab\xd9\x4c\xfd\x0b\xdb\x33\x0a\x9d\x2d\x76\xb3\x99\xc3\xf4\xf5\xe1\x50\xa8\x56\xf0\x01\x04\xb5\xb9\x6f\x12\x80\x1a\x47\x10\xac\x77\xcd\x83\x07\xc0\x55\x95\xd1\x66\x46\xc3\x89\xcb\x82\x95\x24\x90\x93\x2b\xb4\xd0\x4f\xf6\x12\x47\x77\xb0\x3a\xb1\x28\x28\x9b\xb7\xc6\x3b\x2c\x10\x92\x12\x4a\x65\x11\xcc\x10\x8e\x86\x91\x08\x37\x30\x30\x9f\xd3\x5a\x3f\xe4\x81\xae\x28\xc6\x92\xfd\x92\xa9\xab\x62\xb5\xd0\x3b\x24\xc2\x9c\x22\x46\x63\x83\xc1\x8d\x94\x4a\x29\x7b\x78\x23\x6b\x6e\xab\x11\x78\xc2\xda\x5f\x3a\xe1\xad\xfb\xe9\xa4\x4d\xe1\x0f\xdb\x8b\xce\x61\x8b\xa9\x57\x53\x8a\xf9\x96\x90\x0f\x8a\x8f\xe7\x08\xa4\xe2\x54\xa1\xc9\x14\xcd\xcb\x28\xaf\x6d\xdd\xe2\x40\x57\x1d\x68\xf1\x31\xd5\x34\xc1\x43\xb6\x68\xcb\xaf\x8b\x16\x0b\x4d\x26\x32\x94\xf1\xe9\x66\xa3\xa9\x05\x3d\x99\x3c\xd1\x88\x3c\x3d\xdd\x6c\x72\xd4\x09\x8b\x79\x2c\xb0\xa8\x75\x1f\x21\x59\x76\x3e\x5f\xf8\x03\x29\x4d\x5d\xde\x7f\x10\xfc\x23\x29\xab\x62\xfa\xfc\x9b\xaf\x7f\xfc\xb7\x47\xa2\x7d\xf4\x9e\x57\xac\x0e\xcb\x57\x7c\x1d\xb9\xb3\x98\xd2\x09\x7f\xca\x6b\xc1\x22\x3f\x92\xe5\x8f\x64\x15\xdb\x7d\xd5\xb5\xac\x67\xee\x42\x97\xda\x6c\x31\x03\xf7\x5a\xb7\x6e\x4f\xe8\x26\x4d\xff\xde\xe9\x62\xb9\x32\x09\xd3\xad\x23\x1b\xf8\x15\x79\x4d\xf5\x7d\x11\x2c\x01\xc9\x2b\x75\xfa\x2c\x72\xa5\xb1\xcf\xc6\x17\x20\x6e\x22\x5d\x72\xb1\x64\x6c\x17\x72\x5c\x0c\xcf\x70\xf0\x6d\xa8\x23\xc3\x42\x71\x9b\xce\x36\x9c\x83\x87\xdd\x90\x3c\xac\x62\xa5\x9c\x59\x4d\xa0\xea\xe4\xf3\xbf\x35\x54\x1f\x83\x7d\x98\x05\x4f\x49\xa6\x91\xc7\x7e\x57\x2d\xf7\x5d\x7e\xfa\xe0\xd6\x90\x71\x4f\x8c\x22\x4f\xde\x98\x9f\x98\x96\xf1\x6e\x0c\xe6\x14\x63\xc8\x6b\x46\x6c\x7b\x45\x06\x0a\x8a\x46\xcd\x6c\xd6\xcc\x73\x5e\x91\x72\x70\xb6\xa6\x56\xca\xc5\x11\x10\x67\x34\x4c\x69\x4f\xa3\x63\x48\x39\x8c\xd3\xa3\x8e\x7c\x6d\x56\x68\x83\x57\x1c\xeb\x78\x56\xfe\xde\x82\x51\x71\x8f\x98\xaa\xff\xce\x2e\x56\x8e\x2a\x16\x2c\x02\x47\x1c\xd4\x4a\x91\x94\xb2\xcf\xcb\xa7\x07\xfb\xfb\x9b\xcb\x81\xeb\xba\xa7\xb3\xc1\x2f\x64\x0f\xd7\xd0\x51\xa9\x25\xb6\x72\x12\xdb\x71\x07\xc7\x58\x8a\x95\xcb\xca\xf5\x17\x12\xa1\x1f\xe6\x6e\x06\x26\xcf\xd5\x3f\x6b\x22\x36\x3d\x58\x32\x99\x7c\x98\x6a\x7c\x35\xba\xb3\xd4\x3c\xe4\x2c\x51\x75\x6d\xe6\xce\x52\x83\x46\xd5\x6c\x56\xe5\x3d\xfb\x59\x4f\xa4\xf4\xe7\x99\x91\x39\x42\x7d\xc4\xb5\xc1\x6e\xf8\x4c\x4c\xf4\x3f\x0d\x24\xe9\xd8\x6e\x52\x51\x50\xed\x3f\x71\x42\xe1\xb8\x0c\x49\xef\x04\x9d\xe6\x8a\xc2\x54\x11\x1a\x7a\x5d\x88\xc3\x81\x5b\xbb\x82\x9d\xda\x88\x3d\x64\x6a\x0d\x92\x64\xd3\x92\x31\x55\x42\x3a\x33\xc5\x45\x88\x1c\x65\x4e\x7c\x3c\x1f\x86\x29\xc4\xc4\xb8\x80\x15\x33\xc1\xf0\x8b\xee\xeb\xa4\x5c\xc0\x6f\x7c\x97\xd8\x1c\x17\x40\x44\x93\x42\x05\xb2\xa6\xed\xba\x61\x8c\xac\x85\xaf\xff\xf8\x9b\x5f\x6c\x3d\xf9\x7b\xb4\x77\xd7\x5f\x09\xfe\x3b\xc1\x3f\xe5\x8d\x99\x78\xff\xcd\xeb\xbf\x2e\xbe\x20\x52\xbf\x35\xb6\xcd\x7f\x23\x63\x6d\x71\x6f\x8d\xdd\xfe\x2d\xe1\x1f\xe9\x3a\xe6\xf5\xd0\xbe\xd7\x9a\x1e\xb0\x10\xe5\x07\xeb\x6d\x9e\xda\xcf\xc0\x99\xf7\xfb\x28\xc9\xa1\x53\xec\x01\xe6\xd2\x35\x10\x47\xdb\x3c\x62\xfd\x8c\x06\xe1\x58\x71\x24\xcf\x5d\x1f\x6d\x19\x08\xb0\x30\xb3\x3f\xc5\x99\x80\xcc\xc5\xfd\xb6\xfa\x48\xfc\x65\x6d\x8a\x65\x46\x9c\x50\xe7\x6d\xac\x15\xf2\xaf\x4d\x8f\x2f\x88\x58\xdf\x5a\xc7\x66\xcb\x40\xa9\x67\xd9\x75\x2b\xe2\x77\x57\xf9\xab\xc2\x6c\x4c\xe2\xbb\xc9\xab\xf5\x07\x52\x3f\xd5\x5c\xda\xdf\x77\xa4\x4d\xdc\x3e\x5b\x70\xcd\x7f\xda\xb6\x84\x8b\x57\x44\xdc\x36\xf5\xb3\x6a\xb3\x69\xdf\x30\xa7\x7b\x7b\x0b\xfc\xbb\xf3\xc0\x83\xf6\x3f\xa8\x6e\xe3\x4e\x6d\x83\x1b\xc2\x08\x57\xf2\x95\xa8\xd6\x1f\x54\x3b\xd2\xbe\x68\xf8\x0f\x7a\x1e\x9d\xd6\x7a\x82\x61\x4f\x6f\x45\xc5\x45\x66\x11\x61\x9b\x6f\x58\x5a\x36\x0d\x52\xff\xfd\x54\x51\xe1\xa0\xa4\xcb\x46\xd8\x2e\x05\x31\xe0\x29\xd0\xfe\x14\x9e\x1f\xc9\x2b\xca\x5a\x51\x31\x41\x7d\x72\x80\x20\x00\x42\xba\x00\xc1\xe7\x9d\xaa\xac\x71\xbe\x75\xd9\xcf\x14\x85\xf9\x8b\x2e\xad\x83\xc5\xdb\xfc\xb6\x16\x68\xde\xeb\x71\x6d\x22\x2b\x7f\xd1\xc7\x4a\x46\x19\xe2\x3d\x1e\x38\xc7\x21\x57\xe8\x53\xa6\x39\xcc\xf3\x59\xdd\x7d\xdf\xf7\x5e\xe6\xec\x39\x1b\xe0\xd0\xdb\x3b\xfa\x5e\x66\x13\xb5\x19\xb2\xdd\x9b\x79\xad\xcb\xae\xf1\x95\xbc\xeb\xca\x89\x39\x63\xc2\x5b\x62\x54\xaf\xa3\xc4\x5d\x3b\x47\x9e\xde\x12\x13\x9a\xc0\x4d\x92\x39\x06\xae\x12\xf6\x2a\x75\x3d\xb0\xd9\xac\xd0\xaf\x80\x98\xfc\xa0\xa5\x4d\x84\x99\x34\x49\x3e\x87\x45\xd9\xc1\x0d\xaa\x1b\xd2\xfe\x70\xbf\x25\xdf\xfc\x4c\x5b\x50\x54\x86\x46\xb6\x08\x5d\x7e\x22\x5e\x62\x4c\xaf\x82\x40\x96\xd4\x70\x68\x74\xe2\xdd\x8e\xcb\x8f\xcd\x95\x41\xdb\xd7\x0d\x23\x05\x9d\xd3\x1a\xcd\x66\xf0\xbf\x61\xab\x2d\xbd\x79\x59\x17\x1c\x53\x84\x30\xbc\xfb\xff\xd8\x7b\xf3\xed\xb6\x8d\x2c\x71\xf8\x7f\x3e\x05\x89\xc9\x61\x50\x3f\x15\x69\xc9\xce\x36\x74\x60\xc5\x5b\xba\x3d\x13\xc7\x9e\xd8\xbd\xf8\x63\xf3\xc8\x10\x51\x14\xab\x0d\x16\xd8\x85\xa2\x64\x85\xc4\xbb\x7f\xa7\x6e\xed\x00\xb8\x48\xb2\x93\xee\x99\xee\xce\xb1\x88\xda\xd7\x5b\x77\xbf\x4c\x15\xed\x28\x0e\xb8\x7a\x30\xd1\xf0\x7c\x45\xf3\x2c\x56\x28\x08\xc7\x34\x1b\xc9\x42\x4e\x62\x97\x0e\x7d\x9f\x51\x58\x19\x5b\x06\xde\x41\x70\xea\xa9\xbf\x52\x70\x59\xef\x0f\xa0\x8e\xf3\xeb\xa7\x29\x44\xf7\xc1\x9f\x84\xab\x04\x74\x83\x6c\xef\xb4\x35\xd5\x7a\xeb\xd6\x6a\xbd\xcd\x20\xd0\x35\x70\x53\x0f\xf7\x4c\x6a\xb1\x23\xaa\x19\x65\x59\xdb\x99\x96\xe9\xde\x36\x56\xe1\xb7\x43\x5c\x0a\xe5\xed\x83\xc6\x02\xe1\x32\x79\x05\xdc\x45\x9c\xdb\x35\xce\x8b\xe2\xc3\x6a\x19\x97\x6e\xbe\x09\x77\x5e\xbd\xac\x11\xed\x8f\x05\x7f\x91\x41\xdd\xd3\xd7\x46\xcf\xc0\x75\x98\x4b\xc4\x08\x24\x0c\xf0\xfa\xfc\x87\xcb\xea\x7e\xb1\x66\x95\xf2\x07\x41\xb3\x51\xf7\x8b\xb5\xa8\xde\x1b\xcb\x72\x70\x99\x78\x1d\xba\x5b\x90\x2d\x55\x67\xb5\xb9\x81\x8f\x85\xa1\xd2\xbc\x0d\x35\x93\x0d\x45\x01\x4f\xb1\xef\x60\xad\x21\x33\x11\xd6\x69\xad\xbf\xcb\x2d\xa6\x36\xce\x7f\xb5\xee\x11\x1c\xaa\xc2\x33\xfa\x8b\x17\xc3\xa1\x3d\x55\x47\xce\x40\xa7\xdb\x86\x37\x8a\x41\x36\x2e\x00\x91\xbb\xe0\xc5\x8a\xe9\xfa\xc0\x49\x6d\x26\xf6\x4c\x2f\x4f\x6a\x59\xaa\xbf\xcd\x66\x77\xbe\x19\x8f\xf5\x57\xd6\x1c\x11\xde\xc1\x4b\x25\xc8\x38\xc1\xaf\x6d\x93\x0f\x38\x6a\x0e\xbf\x95\x33\x84\xa5\x59\x3b\x32\xf4\xdd\x41\xd8\x0c\x84\xfd\x63\x04\x5a\x4c\xcd\x1e\xb6\x1e\x29\xe2\xab\xf7\x7b\x87\x8b\x48\xf8\xf0\x5e\x8f\x79\x4b\xa3\xce\xac\xcf\x6a\x4f\x6d\xdf\x2d\xe2\xbb\x67\x3b\x25\x61\xa0\xcb\xd1\xce\x95\xab\xf4\xba\x65\x65\x5d\x60\xe8\x3c\x98\x18\x05\x0a\x79\x36\x35\x48\x6d\x68\x89\xf1\x31\xd5\xee\x29\xbc\x5b\xc1\xb0\x18\xd3\x89\xd3\x5d\x88\xbd\xa1\xa4\xc0\x52\x56\x1c\x6b\x2d\x4b\x54\xcc\xe5\xda\x6a\xc2\xd8\xba\xc5\x4c\x5d\x51\x13\x10\xe4\x3d\x6c\xb9\x5c\x01\xff\x02\x9a\x4b\xe5\xc4\xed\x5b\x84\x4a\xbe\x20\x93\x36\xe4\x96\xc8\x17\x28\x95\x55\x42\x71\x7e\x23\x56\xbe\x39\xd4\xd0\x53\x8a\x76\xc9\x35\xf5\x59\x51\x92\xcd\xb2\xfa\xd2\x1d\x93\x2f\xe5\x7c\xbf\x7c\x8f\xd7\x0e\xa7\x1c\x4d\xab\x84\xee\x95\x4a\xd2\x16\xb6\xbf\xa4\x32\x94\x50\x46\xf1\xfc\x4d\x78\x13\xb3\x3e\x14\x64\x48\xc3\x9c\x66\xc9\x54\xc5\x4b\xd5\x72\x00\x8a\x2a\xac\x7c\xa3\xf2\xe2\xaa\x4b\x87\xce\xb3\x21\x68\x25\xea\x93\xd9\xef\xd3\x7a\x2c\x21\x52\xa9\x8d\x6c\x91\x12\xa8\x99\xbe\x47\x5a\x77\xc1\x03\x74\x5a\x57\x08\x13\x15\x17\x54\xde\x13\xac\x42\x5c\x04\x87\xde\xf9\xfb\x6c\x3b\xad\xc4\x3b\xad\xc7\x0f\x99\xe3\x5c\x1a\xcf\x48\x49\xeb\x3d\x1a\xb3\x89\xe7\x09\x77\x8b\xd9\x01\xaf\x0f\xe5\xed\x9c\x17\xab\x8b\xf9\x8f\x1e\x3d\xd5\x1a\x5f\x40\xcb\x42\xcd\x13\x7e\x10\x39\xd3\x21\x43\xdf\x2f\xa5\x41\xce\x88\x67\x22\xdf\x3c\xdf\x48\x41\x17\x10\xe0\x34\x48\xbd\x61\x38\x67\x06\x0f\xb0\x75\xe9\xbe\x56\xc2\xe1\x7e\xbf\x57\x17\xa4\x41\x28\x0d\x39\x0f\x77\x4c\x98\xfc\x37\xf4\x13\xaa\x9d\x15\x79\x18\x49\xaf\xa1\x59\xc4\x47\xa4\x02\xe9\xb3\x3a\x50\xc4\x3f\x50\xc4\x3f\x50\x75\x04\x03\x8b\xaa\xbe\xf6\xf6\xd1\xad\x01\x3c\xa7\x34\x13\x24\x77\xb4\x10\x9b\x7b\xe2\x50\x56\x25\xc4\x22\x88\x5e\xec\xa9\xf7\xd0\x01\x65\x17\x00\x75\xbe\xf4\x81\x37\xaf\xde\x2b\x41\x66\xe8\xca\x05\x6b\x68\xc0\x47\xd4\xc6\x4a\x12\x15\xc4\x0c\xd1\x83\xa8\x6d\x67\x8a\xf0\xb1\x75\xfc\xe4\x93\xea\xc3\x92\xfe\x4a\xfa\xfd\xbf\xec\xd1\x3c\x01\xa9\xc2\xe3\x3c\x7f\xed\x55\x25\x25\xf2\x5d\xc5\x07\xcd\xe2\x3c\x51\xaa\xf6\xac\x89\x43\xe4\xfd\x7e\x0c\xba\x91\xca\xe8\x81\xe1\x1c\x59\xed\xc6\x02\xe1\xb4\x6a\xef\xac\x35\x96\x52\x43\x8d\xc6\xda\x11\x06\x93\x34\x8a\x2e\x4d\x81\x0e\xe4\xcb\xdb\x60\xa2\x3f\xa3\x16\x7e\x86\xd1\x78\xa9\x89\x57\xfc\xba\x75\x08\x01\x4b\xc7\x9c\x8d\xa6\x56\x66\xa5\x10\x45\xc3\xe8\x69\x48\x7c\x69\x5a\xa4\x39\x29\xa7\xe4\x47\x00\x94\xea\x2e\xe2\xc2\x2a\xcf\xe0\xd4\x03\x36\x05\xc2\xed\x4a\xf4\xb9\x6f\x16\xaf\x75\x4e\x0b\x5f\xd9\x94\x18\x65\xd3\xe0\x20\x75\xd2\xf1\x6a\x92\x64\x18\x5c\xd0\xc5\x19\x9e\x9a\x30\x04\x08\x97\xe3\x6c\x48\xb3\x49\x32\x75\x72\xea\xb9\x53\x25\xe2\xc3\xf0\x39\x0c\x9b\xc5\xc4\xb6\xd3\xb1\x0f\x17\xb7\x2f\x98\xf0\x14\x4d\x66\xf5\x75\x6b\x9b\xdd\x7e\xff\x5e\x38\x4d\xca\x71\x21\x07\x0c\xfe\xc2\xd4\xcf\xa4\xc0\x29\x4a\x9b\xfd\x17\xa8\x32\xfd\x19\x15\x5d\x3c\x75\xde\xe5\x56\xdf\x4f\xdd\xca\x65\x89\x18\xaf\x26\x1d\xae\x56\x63\xb3\xd1\xc7\x34\xf3\x75\x70\x97\x71\xee\xcd\x68\x79\x98\x2a\x94\x7a\x3b\x41\xa4\x55\x24\xe5\x98\xc2\xd8\x81\xfb\xe9\x8d\x57\x2e\x45\x2c\x36\x1b\xcf\x14\xe7\xf9\xc7\x25\x38\xf8\x80\x27\x9b\x2a\x7f\xcd\xe7\xa4\xbb\xe4\xa4\x24\x4c\xab\x7f\x93\xae\x3e\x74\xdd\x25\x2f\x2e\x69\x46\x32\xf3\x20\xe2\xee\xf9\x4a\x74\xa9\x00\x45\x24\x56\x88\xee\x4c\x42\xc3\xa1\xc4\x6f\x2a\x3a\x8b\xa9\x1b\xf7\x02\x5f\x86\x07\xef\x22\x39\x7e\x78\xf1\x7d\xf1\xf0\xe2\xe8\x08\x5d\x8e\x2f\x26\x49\x3a\xbe\x98\xd4\x91\x99\x1c\xee\xfc\x1b\xe4\x74\xa5\xcf\x93\x63\x7c\x9d\xc4\x8b\x84\x0d\x25\x26\xbe\xd4\x96\x5e\x3f\x16\xfc\x47\x7d\x09\x4e\xb7\xe6\x28\x44\xfd\x12\x8d\xc6\x97\x13\x64\x56\xf0\xfc\xfb\xeb\x87\xe7\x72\x05\x4d\x0f\x67\xc9\x62\x7c\x3e\xc1\x57\xf0\xc7\xdc\x9a\xe7\xde\xe0\xaf\x10\xfe\x18\x7e\xbe\x4a\x8e\x1f\xbe\xfa\xfe\xea\xe1\x2b\xb3\x13\x6f\x92\xb3\xf1\xab\x49\xcd\x63\x56\xe7\xe3\xf8\xd5\x24\x79\x83\x9f\xc3\x1f\xf9\xce\xd1\x59\x7c\xf5\xe8\x04\x05\xe1\xe5\x5e\x90\x98\x61\x8e\x05\x7e\x8e\x09\xce\x1b\x91\xea\xe4\x51\x00\x2d\xe7\x0a\xa1\xe1\x34\x15\x75\x6d\x3b\x1d\x55\x0b\xa1\x0a\xc5\x1f\x95\x2a\x74\x97\xce\x62\x49\x0f\x3d\x37\xa8\xc5\x7a\x1e\x97\xe3\x8f\xe3\xe3\x89\x3c\x24\xa8\xaa\x94\x30\xc2\xcc\xff\x6d\x72\xfc\xf0\xed\xf7\xc5\xc3\xb7\x47\x47\x48\x62\x16\x6f\x27\x48\xf1\x0d\x4d\x20\x6f\x0f\x59\x7d\x15\x2b\x8c\x3a\x16\x4e\x99\xa6\x46\xf4\x72\x34\xac\x07\xe7\x5e\x12\xf2\xa1\x89\xf8\xea\x70\x59\x54\xab\x90\xb6\x91\xc6\xe0\x26\x4e\x23\xbe\xaf\xe0\x6b\x4b\xa7\x69\x18\x40\xc9\xb3\x14\x07\x76\x96\xc7\x0c\xd0\xfd\xb7\x3d\xad\x9d\x3a\x82\xc7\x6a\xf6\xae\xcd\xf7\xbc\xaa\x0d\xd8\x9b\x9e\xe2\xb0\xa8\xe5\xca\x46\x72\x96\x15\x36\x42\x23\x25\xaf\x68\x46\x01\x43\x12\x5a\xf7\xfb\x7f\xf0\x0a\xb9\x41\xf4\x7a\x20\xc5\x72\x41\x95\xb5\xec\xaa\xd1\xf3\xab\x98\xec\xdb\x21\x7f\xb1\xac\x62\xe3\x9d\x71\xd4\x6d\x04\xe2\xa1\xc8\xaa\x17\x0c\x68\xaf\xa2\x9d\x4f\x13\xf1\x16\x9a\x28\x50\xe1\xa4\x3a\x1a\x54\x0e\xc6\x23\x0d\x47\x79\xec\x94\x8d\xd8\x70\xce\xc9\x0c\xaf\xb4\xa6\xa7\x19\x86\xc0\x29\xce\x31\x45\x78\xba\x95\x28\xd2\x45\x8d\xbe\xa7\x47\x45\x7f\xd9\x55\x50\x56\x85\x4b\xfb\xf2\xbd\x21\x86\x56\xc9\xaf\xf1\x2a\x79\x12\xaf\xb0\xc0\x53\x84\x7f\x8c\xff\x84\x39\x3a\x44\x1f\xca\xcc\xa3\xae\xb3\xa9\x87\xe0\x28\x24\x96\xfc\x44\x94\xeb\x0c\x39\xf6\x86\x12\xe7\x0e\x5a\xa7\x3e\x7e\xad\x6c\x17\xcc\xa3\x85\x16\x22\x81\x4f\x1b\xcd\xae\x53\xba\x85\xbb\x63\x3c\xd9\x7d\x0e\x1c\xff\x78\x67\xc4\xbc\xba\xe3\x49\x10\x54\xc4\xa7\xc3\xf4\xaa\x04\xaa\x9b\xda\x09\xd1\xa8\xc0\xf3\x34\x08\x7b\x48\x32\xed\x62\x73\x94\xca\xac\xc7\xec\xda\x97\x57\x41\xa4\xb0\x12\x87\x2d\xc1\x99\x1e\xe5\xb8\xac\xbb\x70\x1a\xad\xaa\xba\x6b\x26\x3c\x4d\xfe\xdb\xc4\x91\x42\xca\x77\x11\xe8\xff\x81\x5f\x62\xf9\x43\xb1\xf7\x49\xd6\xef\xc7\x2d\x4e\x49\xa9\x7f\xfa\x36\x1b\xe7\x3b\xd4\x52\x35\xab\xcd\x26\xdd\x6c\x8a\xcd\xa6\x37\xed\xf7\x7b\x79\xe8\x55\x20\x3c\xba\xb5\x1e\x61\x9d\x3b\x0a\x2b\x29\x65\x5d\x3c\x4f\xd2\xcd\x26\xef\xf7\x6b\x7a\xb8\xa6\x2f\xa2\x09\x28\x6d\x77\x06\xd6\x00\xab\x7e\xbf\x57\xf4\xfb\x71\xb6\xd9\xcc\x35\x6c\x9e\xe9\xd1\x85\xfe\x30\xb7\x06\xbb\x23\x28\x04\xab\x16\xfe\xcc\xe4\x69\xa1\xb3\x18\xc6\x26\x9b\x87\xd6\x97\x77\x6b\xbd\x85\x16\x5f\x62\x66\x9f\x88\xf6\x83\x56\xed\x0c\x66\x67\xb1\xd8\xf1\xc4\x8b\xba\x4f\x34\x39\x1a\x8b\x1b\x0f\x18\xb4\x39\x77\x46\xc5\xfc\x8d\xa1\x9f\x1b\xc8\x01\xf0\xcf\x16\x56\x6c\x2f\x1f\x80\x74\x25\x09\xaa\xc1\xc6\xe7\x83\x7e\x76\x00\x1e\xfc\x53\x01\x38\xe3\x6d\x70\x50\x0b\x12\x76\x43\xc3\x1d\x73\xb9\x29\x04\x94\x67\xcf\x0e\xf3\x27\xca\x3e\x28\xdd\x84\x3a\x0c\xf4\x4f\x53\x3b\xd4\x38\xb5\x57\xc6\xdf\xa3\xb6\x8b\x6e\xd7\x93\x9c\x92\x46\xd8\x4a\x34\x6a\x39\xf8\x90\x51\xed\x8b\xba\x7a\x30\xc0\x86\xe6\x34\xc8\x56\x37\xe2\x74\xdf\x55\xf0\xa3\xa0\xfe\xf3\x41\x73\x9c\x25\x3b\x80\x79\x1d\x2e\x4b\x68\x49\xfb\x7d\xea\x33\xbb\x91\x65\x60\x06\xbc\x1e\xc7\x91\xa5\xfe\x4e\x41\x13\x35\xd9\xcc\x81\x27\x09\x96\x7d\x2e\xa1\x3c\x0c\x06\xcf\x34\xa0\x57\x2b\x8c\x97\x49\xed\x61\x51\x3e\x1c\xec\x67\x00\xe9\xe7\x9b\xcd\xcc\x8e\x7c\x79\xba\x6d\xa7\x77\xc8\x9f\xa8\x19\xd1\x22\xe9\x2d\x95\x5b\x5e\xdb\xd5\x90\x66\x96\xad\xdb\xef\x2f\xda\x9a\x0f\x17\x65\x44\xfb\xfd\xde\xb2\x55\xba\x40\xed\xb1\x6f\xae\xe5\xf6\x03\xaf\x7c\x41\x04\xe2\xbd\x75\xd5\x01\x09\x65\xe8\x1f\x0b\xac\xbd\xf7\xf8\xd0\x32\x07\xbe\xa8\xeb\x36\x6a\x97\x13\x54\x07\x9c\x04\xb0\xe0\xf5\xec\xdd\xfe\xc7\xf1\x2e\x68\x1f\xa8\xf6\x77\x68\x42\x37\x1b\xd1\xe6\x5e\x79\xbf\x75\xa5\x3d\x27\x87\x6b\xfe\x6b\xb7\x19\x38\xd5\x63\x3a\x48\xed\x5f\x79\xf9\xd0\x26\x42\x35\x30\x5f\x6c\x53\xfa\x4f\x2d\x84\xd7\xce\x3b\xe0\x49\x3b\xd3\x3c\x3e\x7b\x62\x4e\xe9\xb0\xc5\x59\x47\x89\x0b\x34\xa2\xc9\xed\xd7\x05\xcb\x16\x30\xdd\x63\x3f\xa0\x26\x06\x86\x4f\xcd\xd7\xa0\xf6\x06\xe8\x63\xb6\x55\x96\xdc\xc4\x6a\x21\x64\xee\xba\x0a\x24\xe6\x8d\xf3\x98\xee\x3d\x8f\xf8\x65\xcb\x71\xb2\x5e\x12\x02\x3b\x91\xf4\x66\xe7\xc0\xca\x8d\x0a\x68\xd2\x9e\x85\x34\x79\x12\xa7\xbb\xce\x82\x93\x22\xb5\x9c\x88\xad\x66\x20\x45\x78\x22\xea\x32\xa1\x83\x0d\xd5\xfc\x21\xa8\xbd\xa3\xd6\x17\x2c\x4e\xf7\x3c\x9b\x8a\x46\x05\x83\xf8\x90\x91\xd1\x69\x42\x69\xb0\x42\xd1\x21\xe4\x9c\xf5\x8d\x30\xe8\x80\x6e\xa4\xdd\x4b\xa1\x1f\xcd\x31\x54\xa0\x80\x50\xad\xa1\xd4\x7e\xbb\xd5\xfd\x31\xc2\x8f\xe3\x1f\x49\xcc\xcc\x61\xe4\x2e\x32\x63\xc3\x06\x88\x5b\x46\x03\x18\xf3\x5a\x41\x7d\x1c\xca\xe4\x1f\xe7\x79\x5d\x4c\x6f\x5c\x7a\x61\x8a\x3c\xe1\xba\x57\x1c\xe2\xd0\x1a\x26\xc2\x69\x7c\xb3\x01\x1b\xf1\x3e\x6f\x13\xef\xb7\x25\x6e\x15\xef\x3f\xce\xf3\xed\xb2\x7d\x6f\x12\x92\xcc\xda\x39\xc6\xda\x08\x71\x20\x2a\xae\xdf\x1c\x81\x10\x6a\x7a\x53\xd8\xa2\x05\x3a\xac\x17\xac\xcc\xd9\xb1\x54\x47\xe3\xb8\xb5\xb4\xd2\xe2\x6b\x41\x18\xb5\x98\xa0\x31\xcd\x1a\x0a\x2c\x54\x09\xb2\x26\xba\xbe\x6b\x05\xe8\xd7\xe4\x70\x54\x55\x33\x9a\xab\xd0\x22\x95\x79\x86\xdf\xa4\x97\x35\x75\xe3\x86\xca\x08\xd7\x44\xf1\x99\xd1\x14\xfe\x71\x95\xe7\xd7\x2e\xda\xa0\xbd\xce\x16\xf0\x80\xe2\x83\x91\x49\xb5\x44\x64\x6b\x6a\xa4\x2a\x1e\xfb\xda\xb8\x75\x1c\x31\x27\xee\x12\x15\xc2\x9e\xac\xea\x15\x9b\xee\x90\x57\xbd\x76\x4d\xa2\xaa\x9e\xd2\xee\x49\x05\xba\xd7\x51\xc0\x3b\x6d\xaa\xb2\x9e\xe5\xca\x31\xe6\x8e\xb1\x2f\xbe\xe7\xe0\xb3\xc5\xda\xaa\x88\x09\x38\xc3\x36\x93\xc0\x05\x78\xc6\x56\xd3\x00\x41\x5d\x88\x47\xe3\xb2\x01\x2d\x52\x9f\x22\xc9\x35\xca\xd7\x89\x78\x51\x18\x37\x6e\xd9\xb0\x4c\x2f\x55\x84\xa8\x34\x08\xb6\xe3\x62\xd2\x9c\xc6\x79\x92\x0e\x21\x54\x55\x8c\x4e\x23\x5f\xd3\x2d\x1a\xa5\x7e\xa0\xc8\xd3\xc8\xd7\xc2\x8a\x46\x91\xef\x7d\x3f\xc2\x56\x30\x11\xbf\x23\xb1\x5a\x65\xa0\x2c\x11\x1a\xb9\x2c\x54\x55\x19\xcd\xe4\x52\xb5\xbc\x94\x1d\x01\x3a\x7d\x5a\xc0\xab\xe1\x98\x66\xa8\x82\xc4\xcb\x93\x34\x87\x63\x51\xc1\x74\x18\x08\xfe\xbd\x41\xf9\x1a\xfa\x98\x21\x6c\x8f\x97\x8b\x4c\x60\x2d\x04\xfe\x92\x96\xda\x65\xbb\x19\x93\x5f\xda\xf3\x7b\x2f\xbc\x1a\xda\xe1\xba\x7c\x2a\xfc\xd2\x2a\x59\xb4\x6a\xf6\x1b\x5e\x6d\x8b\x56\xff\x19\x78\x0d\xb7\x57\x17\x78\xf1\x9a\x24\xa6\xb1\x9c\x3d\xc2\x0c\xd8\x4d\xe0\xad\xb9\xae\x8c\x26\x30\xa8\xac\xa9\xed\xd7\xa2\x5d\xe5\x26\xbc\x7d\xe3\x71\x99\x68\xb0\x1b\xe4\x6b\xa1\x77\xbf\xdf\x03\x2a\xa1\xdc\x6c\x52\x35\xa0\x3c\xe1\x7e\xbc\xca\x95\x65\x75\x6f\x59\xf1\x1c\x13\xd4\x59\xf5\x8c\x38\x77\xd5\x1c\xb1\x7c\x6e\x7d\x0f\xe4\x36\xf6\x2b\x2e\xb5\xe0\xf6\x80\xb0\x22\xe0\x6a\x44\xbb\xd0\x0a\x9c\xcd\xe8\xb4\x6d\x9e\x4a\x5c\x78\x17\x12\xd2\x11\x9a\x7a\x11\xa7\xf2\xc7\x28\x74\x05\x6a\x1a\x0d\xf5\x64\xb7\xaa\x7c\x02\x36\x06\xbe\x34\x94\x71\xaf\x8a\x3e\x0e\xd1\xaf\x00\x38\xb0\x3a\x70\x70\x23\x0f\x09\x2c\x06\xee\x85\xe8\x2c\x6e\x65\xe4\xa1\x35\x4f\x02\x56\x9e\xbe\x3a\x8e\xc1\xcf\x75\xcc\x2d\x70\x21\xa5\xba\xa2\x63\x31\x49\xb6\xf5\xa7\x5a\x83\x4e\x0d\x26\xee\xcb\x5c\x2c\x71\xa7\xd7\x68\x67\x2b\xa8\xd2\xeb\x56\xcb\x94\x57\xc6\x0b\xc3\x63\x3c\x7c\xa8\x2b\x00\x3b\xfa\x5a\x21\x75\x1e\x2a\x86\x99\x8e\x29\xc8\x12\x11\x10\x62\xda\x5d\x6e\xc8\x4e\xd2\x46\x39\x2c\x21\xb8\xb5\x40\x94\x2e\x97\xb9\xb6\xba\x90\x88\xe6\xd0\xef\x54\xa1\x8c\x48\x87\xf0\xf6\xa3\xea\x87\xd4\x9c\x51\x78\x34\x5c\x59\xee\x2a\x6d\x67\xf7\x99\x4a\xae\x84\xe2\x23\xed\x60\x22\xae\x6b\xb2\x9e\x0b\x22\x9e\x5c\x7b\xf9\xcd\xca\x2f\xb6\x18\xe3\x6c\x91\x1a\x31\x09\xae\xf4\xf2\xf8\xc2\xb4\xaa\x0c\xa0\x35\x5a\x07\x56\x8e\xbf\x34\x42\x42\x54\x67\xfe\x1b\x62\xe2\x59\xf9\x9b\x5c\xcf\x57\xdc\x35\x4f\xc7\x4a\xe9\x7c\x35\xec\x54\x42\x3d\x6c\x67\xd2\x65\x48\x1e\x83\xdf\xfc\x4a\xfa\xfd\xf8\x57\x92\x88\x38\xfa\x81\x48\xbc\x6d\x20\xcf\xe1\x3d\x05\x39\xd4\xef\xc1\x92\xd3\xcb\x54\x90\x08\x0d\x5d\x6b\x26\x18\xc3\xb5\x5b\xe2\xad\x36\x4a\xda\xc4\x0b\xe2\x24\xe1\x9c\x66\x23\x56\x05\x7e\xe7\x7f\x25\x71\x81\x29\xaa\xce\xce\x6a\x06\x68\x06\x48\x1d\xd2\x49\x2b\x1e\x68\x5a\x12\xe0\x74\xab\x61\xde\x66\x62\xb2\x68\x54\xff\x58\x39\x51\x88\x79\xab\x7e\xb8\x5e\x75\x39\x7c\xed\x4e\x39\x50\x0e\xe7\x4d\xe5\x70\x34\x6a\x80\x71\x82\xf0\xcf\x31\x58\x67\xf2\x05\x9c\x9e\x16\x21\x70\xcb\xed\xe3\x96\x28\xf6\x19\x1e\x96\xbf\xeb\x5a\xa3\x92\xa6\x62\xe4\xea\xa9\x8e\xda\x14\xfb\x96\x29\xd6\x47\x5b\xcb\x15\x09\x7d\x71\x55\x01\x9d\xe5\xe1\xda\x78\x1d\x98\x57\x8d\x78\x65\x95\x73\x74\x24\x13\x66\xe3\x55\x68\xa0\x63\x1d\xcb\xbd\xba\x62\x36\xaa\xa1\x45\xb1\x7b\x49\x12\x33\x49\x0f\xa9\xf5\x31\xee\x5f\x46\xd1\x91\x24\x15\x1a\x44\x1d\x33\xae\x4d\xb5\x7a\x91\xb2\x69\x50\xa0\xce\x6f\x50\x85\xa8\xd3\xf0\x6a\xb3\x69\xb6\x1f\x80\xb3\xc3\x3b\x0a\xda\x85\x8e\x35\x27\xca\x43\x37\x37\x9b\x68\xf0\xf7\xb2\x60\x83\x74\x49\xa3\x50\x61\x4b\x0d\x2e\x3d\xe5\xe3\x74\xd2\x36\xaa\xe8\x28\x45\x23\x55\x34\x20\x0d\xb7\x8d\x66\x9c\xc2\xec\xc1\xcf\x07\x1f\x7b\xdd\xb6\xb6\xee\xb2\x7d\xdf\xbf\x5b\xdb\xf6\x9b\x83\x5e\xaa\xf0\x50\xd6\x0f\x46\xcd\xa0\xee\x80\xb3\xe1\xbb\x23\xdc\x71\x3a\x52\x3b\x13\xd7\xc5\x27\x3e\x20\xad\x5d\x7c\xd2\x33\xd2\x24\x49\xea\x16\x01\x6a\x60\xb1\x77\x63\xe2\x12\x47\x19\x99\xa5\xab\x5c\xbc\xb1\xc3\x8a\x10\x3a\xe5\x63\x3a\xd9\x32\xe8\xe8\x88\xde\xec\x08\xd1\xf0\x08\xe9\xfe\xa2\x6d\xed\xdb\x02\x07\x9e\x21\xdb\x9e\x3a\x42\xce\x69\x97\x8d\xc1\xe9\xdc\x6c\xfa\xa0\x25\x44\x50\xfd\x9c\x31\x99\x74\x5a\xa4\xc5\xc2\x98\xba\x2a\xcf\xdc\xd6\x7b\x97\xd1\xe1\x70\xdd\xd4\x0e\xaa\x79\xf3\x5b\x33\xc7\xbc\xb5\x33\xe6\x3a\x63\x5e\x67\x7a\x3f\xc1\xf8\xd5\x4b\x0e\xdd\xa9\xa9\xdc\x20\x6d\x9b\x1d\xac\x6b\x03\x9b\x37\x30\x0b\xeb\x38\x36\x06\xaa\xce\x0c\x75\xe1\x50\x0e\xa0\x53\xe4\x4d\x75\x91\x4a\xdb\x0c\x53\x9d\x5f\xdd\x1d\x58\x7a\x23\xeb\x46\x3e\x3f\xfe\xd4\xd2\x2d\xa0\xbb\x5b\x73\x83\x38\xad\xdb\xc7\x8e\xb7\x30\x0f\xc8\x58\x4c\x14\xeb\xe2\x69\xca\x0a\x46\xa7\x69\x1e\xa3\x8e\x17\xae\xb4\x35\x1a\x6b\xdb\x52\x85\x1c\x75\xb7\x56\xfb\xf4\x7c\x83\xa9\x85\x8d\xd4\xe6\x5d\xe3\xd9\x6f\x9d\x78\x58\x6e\xe7\xcc\xb7\x07\x94\xf5\xd7\xc0\xa9\x5a\xbe\x6b\x78\x1e\x60\x75\xae\x4a\x91\x30\xcf\xeb\x53\x20\x7e\x29\x6e\xe0\x33\x69\xcc\x27\x4a\x6c\x82\x10\xce\x93\x3a\x7f\xbb\xb0\x36\x17\x86\x5f\x9d\xb2\xac\xab\xdc\x15\x74\xd3\xf3\x62\x25\x40\x93\xdb\x98\x93\xc8\xa1\x83\x78\x9a\x3a\xa1\x7a\x99\xfc\x6a\x85\x30\x2b\x25\x54\xa7\xbe\x50\x3d\x16\x3b\xe8\xd0\x02\x97\x78\xd5\x91\x58\x71\x5c\x24\x7f\x04\x3b\x0d\x90\xbf\x48\x64\x9b\x23\x64\xe9\xd3\x7e\x3f\x5e\x25\x85\x73\x54\x05\x1e\x94\x81\x86\xc3\x62\x18\xf2\x6d\x28\x56\x71\x53\xcb\x0a\x73\x84\x57\x12\x3e\x29\xe2\x58\x25\x03\x87\xde\xb4\x33\x5a\x55\xa8\x42\x98\x22\x1c\x28\x46\x2a\x3c\x95\xf4\xfb\x3d\x25\xa7\xa4\xe5\x63\x2f\x96\x64\xbf\x1f\xf9\x21\xf4\x22\x28\x32\x2d\x32\x72\x1a\xf3\xa4\x05\x7a\xe5\x43\xa2\xd6\x56\xf9\xbb\x39\xad\x7d\xc7\x6e\xca\x68\xf4\x2c\x26\x2a\x12\x66\xa9\xc2\xda\xd6\xf8\x3f\x14\x73\x4c\x10\x1a\x79\x59\x8a\xa3\x43\x31\xc4\xa3\x04\x53\x81\x0a\xe1\x95\xa7\xd5\xfb\xdf\x01\xd6\x7b\xbd\x9d\xf1\xa0\xd6\xf3\xb4\xa7\x8d\x17\x38\xc9\x56\x53\x12\x43\x3c\xd8\xe4\x91\xd8\x6c\xfe\x87\x28\x8a\x06\x39\xf3\x03\x89\xe8\x8f\x74\x85\xcd\xa6\xa7\x4b\xe8\x96\x5c\x31\x37\x98\xff\xa9\x31\x69\xc5\x4e\x2a\x83\xfb\x8e\xf3\xb7\x52\xa0\xcc\x6b\xff\xbf\xea\xed\xcb\x17\x85\xce\xe2\x9e\xd2\x1a\x88\x59\xbb\x37\xc0\x1a\x5e\x44\xd0\x70\x96\x4e\x45\xc1\x81\x7d\xad\x22\xc4\x00\x0a\x54\x29\xeb\xdf\xcd\x26\x66\xc9\x9f\x89\xfa\xc0\x3d\x16\x04\x8d\x33\xd7\x19\x1c\x38\x80\x28\x7e\x48\x95\xb1\x2f\xa2\xee\x42\xf7\xfb\x5a\x5d\x7c\xc9\x0b\x51\xc8\x93\x32\x9c\xa7\xe5\xab\x2b\x66\x1c\xb9\xa8\x18\x54\x14\x7b\xf1\x69\xd0\x66\xa3\x2b\x29\xd7\x8c\x36\x74\x70\x50\x0a\xaf\x2f\xd3\x7c\x25\x11\x42\xd4\x81\x18\xda\xcc\x32\x48\x2a\x35\xcf\x5a\xed\x3f\x10\x37\x08\x8b\x01\xe9\x03\x1f\xe1\x7a\xb8\x9c\xd4\x64\xf8\xc1\x72\x3c\xe0\xb9\x0b\x2d\x6f\xe2\x64\x15\x42\x08\xff\x99\x24\xcd\xc0\x3b\xff\x20\x9b\x4d\xfc\x8f\x06\xa9\x0c\xf3\xf4\x89\xe4\x33\x03\x15\x5f\xd2\x8f\x94\x21\xfc\x0f\x52\x0b\xa1\xe1\xfc\xa6\xfd\xd5\x29\x50\xd9\x11\x25\x05\x68\x4d\xa9\x80\x52\x64\xf8\x81\x5c\x23\xec\xbb\xf9\x23\x3a\x94\x61\x2c\x12\x3e\x2c\x29\xbb\x58\xe5\x29\x97\xb4\x1f\x44\x6f\xd4\xbe\xd7\xfe\xbf\x76\xdf\x6b\x10\x00\x6b\x9b\xe7\x35\x88\x5a\x15\x99\xc8\xc1\x9e\x9f\xa3\x66\xa2\xf6\x39\x64\x43\xf0\x9e\x9d\xcd\xd3\xf2\x69\x9a\x4f\x95\x04\x59\xab\xa1\x58\xa7\x0e\x2a\x82\xbf\xf5\x0c\x5e\x0b\xfe\xa5\xca\xb6\xa4\x99\x5e\xfc\xac\x7a\x53\xa4\x9e\x02\xce\x1c\x3e\x90\xeb\x7a\xc0\x24\x88\x9d\x49\xae\x55\x36\x65\x59\x6b\x3e\x65\xd9\x0d\x22\x7c\xfd\x95\xc4\xb6\x2e\xf2\x43\x8e\x41\x1b\xda\x6a\xa3\xad\x1f\x9d\x05\xc5\x58\x33\xfc\x17\x94\x91\xe9\x95\xef\x6c\xca\x83\x0e\x3d\x87\xa2\xb4\x2e\xbc\x41\xe3\xa6\x26\x43\xa7\x2b\x9b\xd7\xc6\xfe\x56\x75\x57\x52\x9f\xa9\x2b\xdd\x7c\xd5\x5e\xd8\x72\x2d\x77\x9e\xa8\x63\x4d\x39\x16\x38\xc5\x25\xce\x13\x15\x15\x33\xb1\xeb\x86\xe3\x22\xa1\xd6\x62\xc6\xea\xd7\x14\xe6\x4c\x6d\x36\xb1\xc4\x39\x9c\xb3\x30\xb5\x85\x1f\xc8\xb5\x7c\xc6\x70\x2e\x5f\xcc\x1c\x16\x1f\x33\xa7\x18\x14\x97\x49\x9c\x26\x39\x32\x0d\xf7\xfb\x76\x13\x87\xe0\x69\x04\x6d\x36\x25\x1a\xc5\x3a\x5c\x34\xf3\x02\xdb\xfb\xf7\x88\x6f\xb9\x46\xac\xaa\xc8\x70\x87\x1a\x46\xf2\x94\x60\x32\x7c\x46\x96\x9c\x4c\x65\x96\x8e\xf6\x97\xbc\x94\xc9\x01\x4e\x98\x5c\xc9\x24\x8d\x7d\xa9\xba\x6f\x5c\x82\x82\xd5\xc9\x5b\x4c\x86\x7e\xeb\xaf\x49\x98\x60\xbc\xcb\xfc\xe2\xd2\x9f\xa5\x22\x7d\xe3\xbb\xc1\xf9\x23\xe4\x15\x85\x92\x84\x24\x2b\xf9\x69\xe4\x9a\xc9\x4f\xde\x87\xdf\xd1\x63\x28\x05\xee\x63\x14\x98\x32\x9e\x84\xfe\x70\xb8\xfb\x20\x05\x5c\xd5\x5b\xb8\xcf\x71\x4f\xdd\x29\xc7\xbe\xf2\x81\x4f\x94\xad\x85\xab\xad\x8e\x60\xac\x25\x92\x62\x15\x9a\x80\x1e\x3b\x38\xd5\x38\x4d\x3c\x1f\x47\xb8\x16\x65\xbe\xc0\xbe\xb8\x69\x54\x04\xd2\x27\xf0\x8c\x9e\x52\x46\x74\x28\xf1\x4e\xe0\x2b\x23\x75\x86\xf7\xa5\x41\x22\x52\xdc\xc6\x6d\xb1\x31\x1a\xd2\xa1\x6d\x31\x30\x45\xf4\x57\x5c\xc9\x0a\xcc\x72\xa4\x1e\x0f\xb2\x5c\x9d\x97\x53\x4e\xcf\xe5\x65\x86\xfb\x9c\x3c\x6a\xfa\x03\xa6\xb3\xd8\x45\x5d\x2d\xc1\x69\x2d\xe2\xc3\x30\xc0\xa8\x48\x1e\xe9\xe0\x64\x53\xb9\x03\xc0\xeb\xc4\x02\xf5\x92\x06\x41\x12\x2e\x65\x3d\x32\xb5\x6c\x11\xbc\xec\xf3\x76\x87\x74\x02\x55\xce\x44\x28\x0a\x8e\x8a\x3f\xb0\xc0\x87\x5f\x2c\x30\xb5\x84\xc2\x9e\xf1\xd4\x83\x34\xc3\xeb\x72\xba\x75\x30\x61\x98\x66\xf3\xc6\xd3\x10\xcc\xf4\xfb\xf1\xd6\x06\x70\x31\xd4\x2d\xfc\x42\x16\xc5\x65\x9a\x3f\x9d\x93\xe9\x07\xc0\x0a\x8a\xe1\xd9\xc2\x08\x65\x4c\xa4\xe4\x7e\xbf\x2d\x75\xc8\x89\xe0\x94\x5c\x92\x9f\x52\x41\x4a\x08\xb4\xe5\x2d\x92\x0e\x7a\x0e\xab\xb3\x85\x48\xdc\xbd\x27\x9a\xbe\x90\x08\x7f\x7b\x30\x6f\x2d\x87\x8a\x40\xf2\xaa\x9d\x1a\x6f\x99\x71\x04\x72\xf8\x08\xe1\xed\xf9\x5a\x1c\x1f\x21\x34\x8a\x94\x38\x56\x28\x4f\xc9\x5b\x0f\x45\x44\xb3\x08\x29\x5f\xd0\x8a\x88\x47\x08\x97\x95\x20\x29\xcf\x0a\x13\x59\xad\xee\x1f\xde\xf7\xec\xe3\xf3\xac\xea\xf7\x06\x1c\x72\x42\xdc\x38\x00\x7e\xa7\xfa\xef\x48\x80\x1e\x93\x1c\x92\xc1\xca\x8d\xa0\xb7\xe3\x79\x47\x57\x61\x5e\x95\xdd\xe2\xcf\x85\x0a\x1d\x0a\x96\x87\x60\x75\xd8\x9d\x15\xbc\xfb\xe5\x17\x6b\x52\x7d\xa9\xe9\xe5\xae\x72\x79\xd4\x9d\x83\xd2\x59\x09\x96\x8c\x12\x2a\xbd\x47\x55\xcb\xc8\x5a\xd4\x69\xfe\xcb\x8f\xe4\xd6\x04\xbb\xa0\xbc\x55\x73\x1a\xd4\x6c\x44\xc7\x27\x3d\xa4\xad\x1d\x9e\x96\x3c\xfe\x5c\x8b\xbb\x4c\xc7\x2e\x65\x38\x6a\x89\x91\xac\x83\xf4\xf3\x7d\x9e\xb7\x7c\x83\xf8\xe6\x4b\xa0\xe3\xaf\x38\xf5\xb4\x6d\xc3\xc2\x3e\x03\x97\x61\x1f\xde\xa1\x4e\xbb\x4d\x2e\x75\xc1\x03\x14\xe4\x04\xfe\x29\xd9\xfe\x2c\x8d\x49\x10\x95\x7d\xaf\xc3\x2e\x7f\x6a\xad\x8f\xe2\xc1\xb3\xeb\xf0\x64\xfb\x7a\xab\xb9\x49\xaa\x30\x88\xd9\xdb\xde\x9f\x3f\x81\x9d\x4e\xb8\xe0\x12\x44\xfa\x38\x97\x2a\xb9\x4b\xcb\x6e\xc1\xf2\xeb\x6e\x7a\x99\xd2\x3c\x3d\xcf\x49\xf7\x6a\x4e\x58\x77\xba\x2a\x45\xb1\xd0\xb7\x43\xe1\x18\x33\x92\x8a\x15\x27\xdd\x59\x9e\x5e\xa8\x6a\x51\x55\x61\x32\x3c\x3b\xa7\x2c\x4b\x7e\x94\xbf\x2e\x56\x29\xcf\x92\x5f\xe5\x4f\x15\xe4\xf4\x45\xf9\x38\xa7\x97\x24\xf9\x13\x26\xc3\x69\x41\xf8\x94\xbc\xc8\x12\x86\xc9\x30\xa3\xb3\x99\xc2\x65\xb6\x85\xe3\xb2\xb6\xe6\xcc\x5a\x41\x63\x9a\xbc\x4c\xc5\x7c\xb8\xa0\x0c\x64\xd7\xb8\x50\x68\x62\x9a\x1c\x3f\x4c\xbf\xa7\x0f\xd3\xa3\x23\x44\x67\x31\x19\xa7\x93\x5e\x92\x88\x71\x3a\x41\xeb\x22\x49\x3b\xe7\x9c\xa4\x1f\x2a\x83\xc1\xf6\xfb\x4c\xa9\xee\x48\x0c\xd7\x28\x2b\x1f\xe3\x3c\x01\x5b\x24\x7d\xd1\x0a\x37\x94\x55\x42\x07\x05\x9e\x26\x27\x0f\xa7\xdf\x27\xf4\xe1\xd4\x74\xc2\x07\x53\xd5\x0d\x1b\x4c\x27\x68\xbd\x4a\xa6\x83\x13\xdd\x55\x99\xb0\xc1\x6a\x50\xe0\x3c\xe1\xf2\xaf\xde\x9f\xf5\x8c\xf2\x52\x28\x00\xf9\x82\x65\xe4\xe3\xa8\xc0\x69\x96\x91\xec\x69\xb1\x62\x02\x4c\x0a\x16\xc5\xa5\xf9\xcc\x61\x71\xd5\x4b\x01\x2b\xf5\xb6\xf8\x63\x5a\xce\x93\x67\x36\x55\x7e\xbe\x2d\xea\xab\xd8\xb4\x23\x32\x8e\xbe\x5e\x2b\x73\x6c\x60\xb9\x6e\x89\xea\xce\x93\x47\x76\xde\x4c\x1f\xd0\x45\xfa\x81\x68\x35\x84\x31\x9f\x18\xcf\x37\xac\x25\x3e\x9a\x61\x9e\x75\x2d\x12\x12\xe1\x34\x89\xee\x01\x79\xef\x2e\xdf\xbd\xe8\x88\x77\xa2\xf3\xb4\x84\x87\x49\x6d\x84\xad\xfa\xac\x98\x02\x9e\xea\x6a\x46\xa0\xac\x07\x6c\x3e\x41\x05\xd8\x6b\x64\x44\xa4\x34\x1f\xb1\x31\x9d\x60\xf5\x46\x8e\xd6\xcb\x02\xde\xcf\x51\x5a\x55\x10\x59\x50\xc8\xe5\x83\x03\x59\x73\xb8\xf8\x04\xfb\x4a\x5d\x4f\x35\x6e\x94\x5c\x63\xe2\xe4\xbf\x8e\x2e\x2e\x70\xcd\x7d\x6a\xf2\xb3\x4d\x71\xfc\x2c\x99\xee\x6f\x81\x5e\xf9\x2f\xb4\x0f\xba\x0a\x87\x81\x21\x20\xfc\x28\x09\x22\x16\x04\xc1\x3f\xff\x3f\xa2\x2b\x95\x44\x04\x9d\x5c\x10\xed\x4b\x32\xa8\x39\x4d\x48\xa3\xf0\x1f\x94\x7b\x15\x5a\xb0\x96\x0a\x59\x4b\x85\x5f\x48\xd9\xda\xf8\xbc\xa5\xac\x76\x9e\xdd\x2c\x3c\x53\x85\xe5\xfb\x58\x73\xdb\x0c\xd3\xfd\x2b\xe9\x90\xe1\x6a\x79\xc1\xd3\x4c\xe6\x1b\x8a\x2b\x79\x42\x70\x3b\xfb\x8b\xe0\xe8\xec\x8c\xc8\xb7\x71\x95\x3b\xfe\x17\x84\xf4\x05\x7c\x5b\x16\x0e\xb9\x48\x40\x04\xdc\x83\x40\x42\x11\x1e\x47\xe4\xe3\xb2\xe0\xa2\x8c\x70\x4b\x21\xcb\x6a\x9a\xe0\x38\x84\x42\xd1\xaa\x24\xdd\x52\x70\x3a\x15\x51\xe7\xa6\x23\xdb\x3e\x15\x23\xc2\xc3\x6b\xc2\x56\x0b\xc2\x25\xb8\x1d\xf5\x8e\xf1\x05\x11\xa3\x96\xf8\xd4\x8a\xc2\xab\x76\xb5\xd8\x3c\xb0\x07\x37\xde\xac\xba\xb3\xa7\x9d\x87\xeb\xe0\x4e\x77\xb6\x72\x78\xff\xfe\xf9\xbb\x5d\xdf\x7e\x0b\x87\xf7\xeb\xdf\xc0\xdb\xf5\xeb\xb7\x70\x78\xbf\xde\xdd\xbc\x5d\xb7\x5e\x03\x3b\x7b\x6d\x81\x6b\x07\x77\xd8\x52\xb7\x6a\xbf\xa7\xb2\x60\x2a\x0a\x5e\xde\x9b\x16\x8b\x65\xc1\x08\x13\xbb\x6e\xac\x2b\xbe\x12\x34\x97\x95\xf2\x3c\x5d\x96\x64\x00\xbc\xed\x1d\x05\x6d\x42\xfd\x86\x4b\x5c\xf8\x6e\x77\x9c\x0c\xf3\xf4\xba\x58\x01\x83\x39\xbd\xd0\x1c\x54\xfb\xc4\x3d\xa1\xa0\x9d\x5d\x26\x44\x91\x26\x32\xbf\x2d\x2d\xf8\xf0\x1b\x30\x7a\xd5\xc0\xcc\xe9\xb2\x24\x3e\xc6\x7c\x68\xa7\xf3\x17\x2a\xe6\xaf\x53\x9e\x2e\x4a\x14\xfb\xf3\x02\xd6\x40\x4e\x44\x97\x26\x96\xdd\x63\x0c\xad\x1f\x98\x18\x3a\xbd\xc4\x65\x8e\x1f\x4c\x4e\xfd\x8f\xd1\x18\xb0\xd7\xf8\x18\xc3\x5a\x48\x60\x85\x24\x26\xde\xab\x8b\x30\x3c\xee\x83\x99\x57\x84\x54\xdf\xa2\x6d\x21\x3a\x6d\x8b\xd3\xa2\x1d\xab\x95\xdc\x47\xe3\x49\x25\xdb\x2a\x12\x3a\x3e\x9e\x9c\xbe\xff\x62\xcd\xab\xd1\x17\x6b\xf9\x51\xbd\x1f\x71\x27\x3a\x6a\x34\x6a\x1d\x36\x81\xab\xd6\xe1\xb4\x60\x33\x7a\xb1\x82\xb3\x9b\xf4\x8e\x11\x66\x15\x42\xfe\x60\x12\xa6\xd7\x98\xfe\x13\xae\x71\xe3\xec\xf8\x6b\xdc\xc8\xec\xb4\x1d\xb6\x83\xd6\xd8\x1a\xe3\xbb\x95\x56\xc2\xdc\x68\x14\xa1\x70\xc1\x1b\x3d\x1c\xb4\xe0\x56\x4e\x53\x38\x44\xa7\xb9\xdc\xbf\x90\x7f\xac\x28\x27\x99\x5d\x76\x0e\xf2\xc9\x75\x63\xb5\xb8\x93\x6a\x21\x0c\x6a\x2f\x7e\x8a\x5e\x21\x2f\x49\x12\x65\x6c\xb8\x92\x78\xc8\x4c\xc4\xc3\xe1\x50\x78\x3a\xe0\x7e\xa9\x84\x61\x5e\x61\x82\x2a\xff\x5a\x52\x7d\x42\xd2\xa4\xf0\xb6\x44\x12\xa1\xc1\x4d\x4e\x75\xb1\x32\x28\xe6\x76\xae\x75\x7b\x4a\x5d\x29\x97\x95\x5a\xae\x54\xeb\xbd\xc9\x75\xa5\x55\xcb\x91\x6d\xac\xa1\xa2\x83\xe5\x9a\x8c\xf9\xc4\xc5\x37\xf3\x04\x83\x16\x80\x71\x4c\x2a\x1c\xe9\x2f\xe8\xdb\xe4\xac\x3a\x16\xde\x79\x90\xdf\xe9\x56\xd4\x6f\x02\x16\xbe\xa3\x17\x1b\x3f\x05\x9c\x4c\xc1\x38\xdc\x85\xe0\xce\xdd\xc1\x9e\x61\xea\x01\xc8\x51\x56\xbb\x5f\x15\x45\x7b\xde\xe4\x49\xd9\xfa\x52\xdc\xfd\x9d\x28\x66\xb3\x84\x0c\x0b\x96\x90\xe1\x8a\x15\xe7\x10\xa5\x5e\xc2\x7d\xfb\x33\x00\xf5\x3c\xd1\x47\x7d\xcf\x9e\x62\x7d\x37\xe4\x1e\x00\x34\xea\x16\xb3\x2e\x43\x8a\x62\x23\x1f\x97\x29\xcb\xbc\x70\xf1\x14\x73\xcb\x0c\x4e\xb3\xec\x95\xea\x5a\xab\x31\x03\x87\x01\x39\x4d\x62\x5e\xe1\xc8\x0c\x0e\x4e\x81\x1d\x29\xf7\xdf\xa3\xcf\x3a\x48\x45\x09\xef\x1f\xa7\x5b\x51\x18\xa9\xb7\xc0\x01\x5c\xbf\xeb\x58\xd3\x2c\xfb\x89\x96\x82\x80\x06\x81\x09\x50\x26\xc2\x15\x63\x6a\xad\x98\x85\x17\xc5\xa7\xe8\x59\x2d\xc4\xde\xce\x67\x33\xd5\xfb\x6c\x96\x14\xbb\xef\x86\x3a\xef\x86\xf4\xb9\x07\x20\x69\x30\xa3\x24\xcf\x06\x19\x29\xa7\x9c\x2e\xe5\x2d\xf0\x2e\xcd\x24\x54\xa0\x09\xae\x83\x85\xeb\x92\xc8\x85\xcb\x0b\xb3\x99\x24\xd6\xc0\xe2\x01\x08\xda\x8d\x53\xba\x48\xdd\x4c\x4f\xd7\x50\x09\x16\x7b\xc0\x4a\x6e\x38\x11\xe1\xfd\x7e\xdc\xa8\xc2\x6c\x15\xd6\xef\x47\x0e\x35\x8d\x28\x93\x79\x91\xff\x02\x41\x9a\xe7\xf0\x86\xa1\xea\x16\x37\x98\x96\x3f\xca\xf5\x79\x66\x97\x27\x11\x90\xea\x25\xb4\xd0\xf1\x02\x42\xbc\xfb\x19\xb0\x3e\xde\xda\x9c\x84\x6b\xd3\xa2\x89\xd9\xef\x47\x16\xfe\xc9\xb9\x88\x7e\xbf\x27\x86\x67\x67\xb4\x7c\xaa\xb5\x36\x9e\x99\x9d\xad\x62\x82\xf6\x80\xc5\x76\xec\xf9\xb0\x9d\xbe\xc5\xb2\xe9\xe7\x3a\x58\x9b\x96\x49\x92\xa1\x27\xb1\x54\xe0\xbe\xdf\x6f\x49\x8c\x0f\x9b\x9e\x83\xe4\x07\x01\xfe\x7d\x17\xe1\x93\x3f\x07\x2d\x08\x66\xdb\xe9\x69\x79\x66\x79\xf3\x99\x65\x81\xb9\x95\xe6\xcc\x71\x60\xc9\xb1\x31\xf5\x9f\x59\x6a\x9e\x59\x80\x49\xfe\xd9\x45\x31\x43\xa7\xa0\x59\xc3\xd0\xa8\xa5\x5b\xd1\xec\x36\x70\x8c\x6d\x5d\x61\x3b\x1f\xd8\x2d\xdd\x76\xa1\x07\x30\x38\x02\xbe\xe6\x0e\xa8\x78\xe0\x72\xec\x1f\x97\x0e\x7d\xee\x1c\xca\xb9\x71\xb1\x49\xc3\x6d\xf0\xce\x96\xd9\xf6\x19\x6f\x5b\x68\x35\x63\x86\xb9\x9c\x71\xf3\xe4\xde\x2b\x78\x46\x38\xc9\x06\x25\x69\xc1\x54\x3e\xe5\x55\xec\x00\x3e\xdc\x11\x4a\x55\xa0\xa6\x1f\xa0\x6c\xa3\x74\xe8\xe4\x52\xa4\x82\x4e\xbb\x5a\xa4\x12\x70\x24\x65\xb9\x4a\x97\x53\x95\x94\x73\xcf\x29\x79\x43\xc4\x76\x4d\x80\x9c\x96\xc2\x46\xe3\x29\xe9\xaf\x24\x39\xae\xd2\x4c\xdb\x74\xc9\x71\xf1\x44\x6c\x36\x5a\x10\xb2\xa2\x99\x96\xfc\x68\x71\x89\xd7\x85\x31\xdb\x91\x0d\x5a\x33\x23\xf9\x06\x8c\xf9\x44\x12\x1e\x12\x6b\x34\x4a\x54\xd0\x0f\x35\xea\xc5\x6a\x24\x3a\xbc\xc3\x1d\x3b\xa6\xb3\x18\xf4\x46\x65\x77\x68\xad\xc5\xfd\xf2\x43\xad\x31\x84\xdc\x55\x11\xcc\x3d\x2b\xaa\x47\x83\x93\x7e\x9f\x9a\xe8\xe5\x02\x1b\x8d\x16\x3d\x4c\x7d\xc2\x7a\xc7\x95\x51\x14\xaa\xac\x76\xa5\xd9\x01\xeb\x25\x59\xd6\xa9\xe6\x69\x29\x0f\x05\x9d\xc5\x41\x3a\x32\xf5\xf5\x60\xea\x93\x0b\xac\xb3\x6a\xb3\x1c\x8b\x49\x65\x23\x8f\x6f\x6d\x5a\x37\x1c\xac\xc7\xfd\x24\x69\x5c\x17\x64\x50\x19\x85\xf7\x0b\x17\x37\xf1\x08\x11\xa5\xfd\xe8\x2e\xcc\xc9\x04\x4b\x9c\x5f\x4b\xc7\x77\xd5\x8c\xa1\x5c\x25\x94\xc8\xa3\xa6\xeb\x25\xc7\x63\x48\xdb\x6a\x5a\x2c\x65\xbe\x6c\x88\xc8\x9b\x1b\xeb\x93\xe1\x9d\x7d\x89\x2e\xed\x39\xc2\x1d\x33\x18\x61\x4d\x1e\xbc\x1a\x88\xd4\x16\xb0\x6d\x51\x1d\x1d\x03\x37\x01\x4a\xd8\xf1\x63\xa2\xce\x80\x5d\x66\x49\xd9\x78\x0f\xa7\x68\x81\x1a\x9c\xb0\x8c\xf0\xc1\xa2\xc8\x80\xc7\x56\xde\x73\xbf\x32\x9a\x0d\x28\x2b\x09\x17\xbf\xc1\xa3\xae\x89\x16\x05\x2e\xd5\x49\x3b\x2b\x89\x78\xa9\x47\x63\xfc\xc0\xc7\x28\x79\x14\xaf\xa7\xe9\x32\x3d\xa7\x39\x95\x68\xbe\x76\x99\x74\xb6\x08\x4b\x3e\xf5\x8a\xc4\xd1\x83\xe1\xc9\x83\x08\xaf\x33\x5a\x4a\x2c\xee\xf1\x4a\x14\xe0\x17\x9e\xb2\x0b\x35\x0e\xb5\x4b\xa6\xb3\x18\xad\x2b\x0c\xba\x44\x79\x6e\xd3\x34\x97\x4f\xe2\x5c\x0c\x0f\x87\x43\x3a\x49\xf8\x70\x59\x94\x20\x13\x4d\xf3\x0e\x83\x48\xc3\x1c\x34\xd4\x32\x54\x61\x65\x18\x10\x34\xa9\x35\x13\xfc\x34\xd9\x37\x40\xd1\x4a\x9e\x9f\x3b\x6c\x94\xea\xee\xff\xd8\x46\x8d\x54\x2f\x24\x27\xf2\xea\x6b\xf3\xcf\xb6\x9d\x43\x6b\x32\xd4\xa5\x12\xd1\xd8\x1b\x03\xc3\x6d\x43\xbc\x4a\x08\xb6\xdb\x2c\xc2\x6d\xe6\x98\x62\x61\xb7\xf9\x73\xed\xe9\x15\xcd\xf3\x81\x6e\xfc\xdf\xbb\x7a\x9b\x5d\x6d\xbb\x71\x77\xd8\xe9\x03\x77\x95\x17\x34\x23\xfc\xde\x22\x9d\xf2\xa2\xbc\xc7\x57\x4c\xd0\xc5\xc1\xd7\x32\x24\x7f\xad\x06\xdf\x32\x9d\x7e\x48\x2f\x48\x39\x26\x13\x67\xbe\xc0\x3d\x7c\x6a\x78\x91\x17\xe7\x69\x7e\x1b\x5a\x94\xa4\xd3\x79\x80\x20\x4b\x94\xa4\xe6\xa0\x01\x21\x4f\xdd\x09\x14\x9d\x22\x70\xbf\xae\x9f\xdc\xae\x28\x40\x89\x49\x36\x15\xa3\x2e\x4c\xbd\xbb\x58\x95\xa2\x7b\x4e\xba\x29\xeb\xa6\xb2\x15\xe7\x03\x0b\x04\xba\x50\xe8\x69\xc1\x32\x58\xed\x36\x0c\x1d\x8a\x29\xda\x1b\xc8\xe3\x0b\x22\xfe\x00\xb3\x7c\xaa\xd2\x38\x90\xcc\x6f\x49\x29\x28\xbb\xf0\xb9\x88\xfa\x91\xd6\x6b\x82\x45\x42\xfa\x7d\x32\x6e\x6e\x4e\x64\x1f\xd3\x27\x45\x91\x93\x94\xc5\xa0\x02\x66\xdb\x44\x95\xe5\x4e\xad\xcd\x0e\x8c\xd6\x15\x56\xed\x8e\xd6\x2d\x2d\x8e\xd6\xb6\xf6\xa8\x77\x52\x55\x55\x47\x31\xf6\xa3\x15\x53\x7b\x92\x45\x3d\x43\xa6\x5e\x51\x96\x15\x57\xa7\xea\xcf\xf0\xcc\xb6\x75\xa6\xda\x3a\xd3\x47\xe7\x4c\x2d\x81\x36\x1c\xed\x28\xf7\xf5\x6a\x8a\x6b\x9d\x25\x70\x6d\x6d\x46\x1c\x97\x44\xa8\xdf\xea\xc8\x07\x67\x48\xde\x95\x32\xac\x61\x4a\xa9\xb9\xa9\x32\x95\x87\xae\x14\xb3\x2e\x45\xa2\x8d\x23\xa0\x17\x40\x12\xbf\xf7\x14\x49\xac\x09\x60\xb0\xe6\x38\xf0\xdc\x2b\x82\xe2\x36\x32\x33\x30\x83\x7d\xba\xe2\x9c\x92\xec\xa9\x91\xfd\x39\x5d\xa5\x9a\x32\x90\x42\x04\x6b\x2c\x14\x10\x7e\x18\x7b\x5a\x05\x91\xc1\x9a\xb6\x58\x44\x68\x68\xb6\xe1\x17\xed\xd3\x48\x79\xee\x30\x78\x62\x47\x35\xa8\x07\x4e\x98\xe0\x12\xdc\x91\xe1\xd9\x99\x55\xd8\x3d\x3b\x53\xda\xb2\x68\xa8\xa2\xb9\x25\x8f\xc8\xf8\x78\x32\x2c\x45\xca\x45\x29\x69\xd5\x38\x12\x64\xb1\xcc\xe5\x8a\x4d\x8b\xc5\x92\xe6\x84\x8f\x16\x29\x65\x83\x48\xb9\xd6\xe4\x56\xe9\x70\x7c\x32\x69\x84\x79\x08\x34\x11\xd5\xd5\xac\xed\x4a\x77\x5a\xac\xf2\x8c\x7d\x29\xba\x79\x31\x4d\x05\x81\xab\xaa\x67\xd5\x35\xad\x74\x0b\x85\x8f\x76\x61\x0b\xbb\x97\x84\x97\x60\x5b\x5d\x69\xb7\xf7\x2d\x6c\x16\x6e\x16\xdf\xac\xba\x72\xa2\x67\x64\x59\x5b\xb2\x63\x82\x9b\x77\x7d\x5d\x5c\x31\xc2\x47\xa4\xaa\xc0\x1f\xbc\x55\x9a\xa2\xc8\x23\x18\x59\xec\x62\x5b\x50\x84\xb5\xc2\xf7\x2c\xee\x35\x7a\x52\x31\x14\xeb\xeb\xf2\xfe\xb1\x90\x0b\x2d\x48\x26\xe1\x95\x6e\xa9\xfb\xb7\xf7\x5f\xac\x49\xf5\xb7\xf7\xdd\x4b\x9a\x76\x09\x2b\x57\x9c\xbc\x49\x67\xc4\xb6\xa5\x42\x49\xb0\x42\x40\xe0\x1a\xab\xd5\x39\x7c\xef\x7c\xca\xc4\xc7\xe0\x3f\x71\x0d\xef\x84\x04\x10\xee\x0d\x19\x8d\x27\x15\xa8\xdd\xd0\x72\xc7\x19\x35\x56\x34\x89\x86\x05\xfa\x45\x05\x2f\x32\xb0\xd3\xc0\xcc\x88\xa3\x1f\x2e\x72\xba\x58\x48\xb4\x41\xbf\x2a\x40\x89\xaf\x77\xb5\x3d\xe2\x78\x47\x26\x03\x2d\xf6\xeb\x11\x35\x85\xfe\x0c\x77\xab\xa8\x12\xd1\xd9\x33\x66\x8e\xf9\x66\x13\xef\x2b\xd4\x0a\xd7\xbb\x4a\x4b\x7f\x2a\x0f\x51\xd1\x94\xe7\xfb\x00\x65\x8b\xc0\x65\x37\xcc\xd9\xcd\x61\xf3\xde\x4f\xe2\xe2\x2a\x36\x38\xc5\xe4\xd4\x17\xd1\xaa\x43\xcd\xea\x3e\x11\xac\xcd\x21\xf0\xc0\xf6\xc1\x22\x14\x13\xcc\xb4\x59\xe0\x48\x73\xcd\x76\x96\x46\xc6\xdf\x2d\x39\x25\xa3\x83\x86\x83\x69\x2b\xc0\x13\xbe\xbb\x80\x4b\x3a\x25\xa3\x81\x3a\xea\x03\x13\xa6\x95\x78\x3e\x2a\xe5\x89\x53\xa9\x2a\x78\x04\x0c\xfb\x66\x13\xa5\x76\xa2\xb7\x42\x49\x9a\xd7\x10\x5e\xfb\xe7\xcd\xf4\x3f\x92\x7c\x69\xe3\x08\xeb\x38\xd8\xac\x16\x06\x5b\x95\x59\x6b\xb3\xc4\x36\xbe\x39\x8f\x85\x52\x29\xaf\xaa\x5d\xbd\xb0\x5d\x47\x55\xaf\x6c\x79\xaf\xb9\xb2\xb7\x40\xfe\xc2\x98\x9f\x5d\xca\xba\xe4\x74\xdb\x4a\x0a\x6b\xc5\x89\x43\xbd\x1a\x5f\x70\x21\xbf\xaf\x38\x15\xfa\x77\x85\x46\x44\x2e\x01\xc7\xe4\x36\x3b\x54\xa3\x1a\xd4\xba\xf3\xdb\x87\x1f\x57\x3a\xe8\x5a\xc8\x5d\xb0\x29\x29\x23\xec\x85\x7a\x72\x25\x98\xcc\x04\x75\x56\xc2\x23\x7c\xec\xe2\x0c\xbb\xb7\xbc\xa1\x44\x71\xd2\xaa\x44\x71\xe2\x2b\x51\x9c\x4c\x46\x6d\x06\x38\xc6\xe1\x96\x37\x2e\x13\x03\x38\xf0\x23\xa6\x1c\xa2\x46\xfa\x52\x45\x47\x50\xc9\x1f\xea\xd1\x11\x6e\x34\x64\xe2\x03\x83\xed\xb6\x9e\x44\x64\xd5\x97\x46\xd1\x11\x98\x6f\x63\x2e\xcf\xa4\x59\x6f\x1e\x9c\x40\xf3\x1c\x38\x9d\x27\x2b\x7c\x38\x4f\x4b\x85\x4e\x40\xfa\x60\xa1\x88\xb2\x1a\x24\xdd\x51\xdf\x26\x7d\x7e\x19\x4e\x70\xd4\x15\x85\x15\xb2\x8d\x49\x83\x6f\x1c\x0b\x08\x4f\xea\x1f\x2c\x81\xd6\x0d\x85\xac\xcf\x79\x6f\x2a\x64\xce\xac\x47\xe8\x46\x72\x3b\x8d\x41\x85\xf1\xf3\xe5\xa3\x25\x3c\x98\x0a\x89\x85\x39\x67\x86\xc8\xbc\x00\xb4\x5d\x90\x8f\x22\xa0\x84\x6a\xfc\xfe\x83\x36\xee\xe0\xbd\x06\xe4\x6b\x4f\x19\x4d\x47\xcb\x55\x28\xf7\xea\xbe\xc1\xe3\x74\x97\xc3\x41\x86\x8f\x7f\xf9\xc3\x9b\xb3\x37\xcf\xdf\x1a\xdc\xc8\x4b\x61\x1e\xf5\xdd\x14\x40\x10\x6b\x95\x82\x29\x2e\x3a\x85\x69\x20\xa6\x49\x94\xf2\x8b\x32\x42\x94\xc5\x8a\x29\x8f\xb6\x9c\x0c\x59\x53\x8f\xab\xb8\xd1\xc9\x00\xc1\x4d\xa1\x6e\xba\xec\x2b\xe1\x18\xde\x4b\x63\xe6\x87\x6c\x4c\x6f\x08\x6b\xef\x85\xf3\x8b\x03\x1d\x26\x3f\x07\xe9\x18\xf7\x41\x0d\x92\x6d\xa9\x40\x32\x53\x3e\x74\x6c\x73\xf8\xf9\x09\x36\xfa\xf3\xb1\x9d\xbc\x11\x27\x24\x98\x70\xa8\xbd\x62\x79\x51\x07\x20\xc3\x41\x33\x9d\x5a\xab\xc2\xaa\xc3\xdc\xa6\x41\x92\x75\xc2\x31\x1f\x0c\x88\x15\x7a\x7a\x07\x48\xbc\x0d\x92\x7f\xba\xeb\xfa\x09\xde\x7f\xb9\xb4\xeb\x92\x08\xbb\x40\x23\x86\xdd\x27\x65\x17\x23\x5a\x25\x1c\x17\x66\xf1\xed\x90\x77\x72\x0b\x89\xb9\xd5\xf2\xaa\x81\x95\xe5\x4f\x74\x46\xa6\xd7\xd3\x9c\x3c\x4d\xf3\xfc\x3c\x9d\x7e\x28\x47\xbd\x13\xcd\xf7\xfb\x63\x51\x7c\x18\xf5\x4e\x2a\xe7\x21\x5e\xaf\x82\xf5\x7f\x73\xd0\x9e\x9b\xb7\xf8\x99\xed\x5d\xa3\x37\xb9\x41\x6f\x6a\xba\x83\xa1\x29\x6f\xcd\x90\x17\x17\x08\xad\x9b\xef\x80\x40\x6b\x73\x1c\x95\xcf\xa9\xb6\x22\x06\xc7\x28\x63\x8e\xc1\x09\x4e\xcd\x35\x55\x25\x91\x03\x3d\x47\xaf\x26\x5a\xa7\xc0\xa7\x51\x96\x46\xb9\x07\x2d\x57\x87\x1e\x5a\xfd\x22\x7c\xb6\xdb\x6f\x16\xab\x8d\xeb\x6c\xf2\x3a\x5e\x31\xb1\x67\xe0\x6d\x64\xe2\x6d\xee\xe4\x6d\x50\xa2\xcf\x72\xa1\x14\x79\xc7\x4d\x72\xc7\x31\xe4\x9f\xd6\x6e\x4e\x4c\x92\x47\x80\x16\x99\xb2\x20\x74\x36\x6e\xa7\xfd\xb7\x92\xfa\x8b\x78\x9e\x17\xd3\x0f\x83\x32\x2f\x84\xa7\x32\x5f\xde\x73\xc9\xe1\x6a\xfa\xc5\x0d\xb7\x6a\x6b\xc5\xa0\xf4\x82\x7e\xa4\xac\xbc\x07\x1f\xb5\x2c\xaf\xfa\x35\x68\xc9\x40\xf5\xc6\xe2\x62\xf6\x59\xa4\x1c\xc6\x16\xd4\x2e\xe8\x50\x5d\xef\x78\xad\xd4\x42\x47\x76\x45\xb1\x56\x5a\x1d\x45\x11\x3e\x93\x78\xda\xa8\xee\xe7\x86\x81\x99\x4c\xdc\x62\xc3\x00\x84\x40\xba\x20\xb0\xf6\x34\x7b\x01\xd2\xd4\xe7\x5a\xf6\xe0\x95\x57\xd0\x40\x4b\x6e\x19\x49\x39\x29\xc5\xab\x19\x44\xdc\xb5\xa7\x00\x18\x63\x3d\xed\x93\xde\x10\x97\xda\xeb\x89\xec\x03\x79\x31\x9a\xd3\xa9\x80\x53\xfb\x26\x2f\x84\x5f\x04\xc3\x0a\x78\x51\x03\x00\x87\x95\x0b\x2f\x3c\x52\x3e\xc2\x04\xd9\x07\xb8\x65\x48\x2c\x18\x92\x40\xeb\x7a\x83\x67\xb0\xa1\x6f\xe0\x38\x08\xd3\x14\xf1\xec\x53\x05\x8e\x60\x40\x11\xb2\x4e\x4c\xe4\x67\xa7\xde\x10\x2d\xdf\xa6\xfc\x82\x08\xd9\xd4\x3b\xd9\x26\x04\x37\xb0\xa3\xe3\xb5\x26\xe1\x78\x29\xa5\x9f\x08\x75\x48\xbf\x5f\xb7\x54\xe4\xe0\x75\xa0\x66\xd3\xbb\x6e\x75\x75\xa4\x06\xb0\x8c\x8e\x44\xcd\xaf\xd1\x90\x93\x34\x7b\xc5\xf2\xeb\xd8\x9b\xe7\xd0\xef\x7b\x08\x2e\x30\x2b\x54\x55\xd8\x83\xd8\x2d\xdb\xae\x04\xf5\xb5\xd5\xd7\x8e\x5b\xea\xc9\xc3\xb3\x8c\x6c\xdb\xd6\x2a\x90\x49\x1d\x72\xd3\xbd\x1b\x77\xb3\x9b\xee\x57\xdc\x7e\xd3\x3f\x3f\x88\xf4\x0d\x4a\x7f\xbb\x3b\xec\xef\x72\xa3\x89\xa5\x3a\x78\x5b\x1b\x51\xf9\xd0\x8c\x72\x8d\xf4\x67\x4a\xae\xea\xad\x6c\x1d\xc1\x16\xa0\x20\x9b\xa3\xe5\x63\x79\x30\x9a\x93\xf2\xfa\x19\x9e\xc1\xce\x0c\xc7\x93\xc8\xdc\xbd\xb6\x81\x7a\xf7\x49\xdd\xe4\x46\x0b\x91\xf5\xb4\x57\xc6\x8d\xd2\xea\x4e\xab\x40\xbf\xde\x89\x64\xdb\x4e\xe4\x1c\x38\x6b\xe6\xfd\x30\x0b\x78\x07\x61\xa9\x1a\xd1\xe3\xd8\x86\xb7\xb8\x15\x07\xd2\xdb\x65\x90\x3d\xb6\x9c\x3d\x03\x7a\x14\x6f\x70\xa8\x26\x12\x0b\x7f\xd6\x7c\xdb\xac\x5b\xf0\x95\x43\x6f\xd2\x67\xb9\x47\x3c\xb1\x17\xe5\x90\xe1\x87\x6f\xfa\xef\xa1\x9a\x00\xfe\xdb\x8c\x6a\xd5\x5a\x9d\xcb\x03\x2e\x92\x39\x1c\x70\x69\xc2\x37\x92\x98\x47\xcc\x3b\xcc\xe6\xb8\x83\x81\x03\x04\x29\x27\xa8\xc2\x75\x30\xbc\xab\xa6\xb1\x3a\x70\x95\x83\xb7\xbb\x7e\x6c\x5b\x5a\xb0\x57\xad\x0e\xe4\xc5\xb6\xdd\xd9\x8b\x9f\xfd\x1e\x1b\xf6\xc7\xb7\x2f\x7f\x7a\x92\xf2\x72\x68\x46\x17\xaf\x69\x36\x8a\xfe\xf4\xd5\xec\xdd\x13\xf1\xee\x55\x84\x61\x80\xa3\x2f\xd7\x51\x79\xbd\x38\x2f\xf2\x32\x1a\x8d\xa3\xbe\xf5\x50\x8c\x95\xdb\x19\x60\xd6\x46\xa3\xf1\xf8\x1b\x3c\x7e\xf0\x2d\x3e\x39\x99\xe0\xf1\xf8\xc1\xd7\xf8\xe4\x78\x32\x51\x56\x0c\xe3\x71\xe4\x2a\x8d\xd7\xb5\x6a\xf7\x71\xd4\xed\xca\x8c\x93\xef\xf0\x89\xaa\xfa\x9f\x13\x2c\xff\x7c\xa7\xfe\x7c\xab\xfe\x7c\xa3\xfe\x7c\xad\xfe\x7c\xa5\xfe\x3c\x50\x7f\xee\xab\x3f\x27\xea\xcf\xf1\x64\x32\xc1\xb2\xdd\xbf\xfd\x8d\x45\x93\x09\x56\x6f\x00\x11\x84\xcb\x0e\x27\xd5\x44\xe6\x47\xf3\xb4\x7c\x7e\x99\xe6\xd1\x68\x96\xe6\x25\xc1\xd1\x6a\x79\x99\x42\x81\x68\xf9\x9f\x11\x8e\x96\xdf\xc9\x7f\xbe\x95\xff\x7c\x23\xff\xf9\x5a\xfe\xf3\x95\xfc\xe7\x81\xfc\xe7\xbe\xfc\xe7\x44\xfe\x73\x1c\x6d\xc3\x88\x22\x3a\x8b\x26\xd5\x97\x78\x41\x44\x3a\x5a\x2f\x60\x7b\xd4\x7b\x77\x83\xa3\x31\x9c\x9f\x97\xd1\x5d\x4e\x59\x3b\x52\xf1\xbb\x9f\xb2\x77\x4f\xff\xe7\xe5\xab\x8b\xa7\xff\xbd\xe5\x94\x81\x5b\x23\xbc\xff\xb4\xe9\xc3\xd6\x76\xd6\x70\x04\x8d\xec\x39\x72\xf7\xa1\xde\xce\xf3\x82\x77\x1f\xd9\xbd\xf5\xf7\x9d\x37\x83\x29\xdc\xe9\xc4\xb8\x6d\xde\x77\x62\x14\xa5\xad\x1c\x9f\x0d\xd4\x13\x69\x9f\x7c\x95\xfa\x09\x1e\x7b\xed\x57\x6d\x5d\xe1\xe1\x70\x48\x6e\xf5\xde\xab\x26\x3e\xd5\x53\xaf\x66\x7d\x9e\x96\x74\x3a\xc8\x78\xb1\xcc\x8a\x2b\x16\xdc\xb8\x20\x67\x30\x2d\x98\x38\x80\x61\x2f\x0f\x59\x5b\xc3\xda\x08\xc7\x38\x64\x1c\x18\xed\x83\xdd\xe5\xcb\x29\x2f\xf2\x5c\xef\x49\xb9\xbb\xec\x3c\x2d\x07\xe0\x47\xa6\x8d\x38\xc7\xb4\xb6\x53\xca\x55\x33\xf8\x80\xc4\x2b\x3c\xc5\x19\x9e\xe3\x19\x5e\xe2\x05\xbe\xc4\x17\x6e\x1f\xcf\x7f\x5b\x21\xa7\xed\xf7\xba\x19\x5f\xd2\x85\xaf\xf4\x9d\xd8\x30\xe7\xc4\x26\x38\x96\x05\x98\xf5\x8e\xc9\xa4\x02\xff\x6d\x6e\x34\x49\xaf\xe7\x7f\xe2\xa2\x66\xbb\xdc\x0b\x13\x70\x1c\xc1\x8c\x22\xca\xba\xc5\x66\x53\x0c\x41\x7a\xae\xdc\x6d\xa3\x7e\x3f\x2e\x86\x66\x2a\x60\xf6\x5c\x24\xdc\xa0\xb4\x43\x4e\x94\x73\x4e\x64\x1d\x2f\xdb\x01\xfa\xf1\x79\x0c\xe9\xb5\xd9\xf0\x0a\x41\xa8\x50\x4f\x12\x1a\xf4\x07\xdd\xc1\x68\xc2\xf4\xd3\xe0\x4b\xbb\x19\x36\x41\x0c\x70\x90\xa9\x2f\x8c\xe6\x30\x1c\x27\xcd\x1e\xb6\x6f\x6d\x61\x1c\x2f\x21\x5c\x7c\x02\x71\x74\x4e\x44\xf7\x2c\x89\x2d\xb7\x59\xf0\x74\xfa\x81\x64\x96\x2f\x7c\xa6\x3c\xc2\x3b\xbe\xb0\xfe\xce\x6b\xdf\xab\xda\xf7\xb4\xf6\x9d\xd5\xbe\xe7\xb5\xef\x59\xed\x7b\x59\xfb\x5e\xd4\xbe\x2f\x6b\xbe\x37\x2d\x52\x5e\x13\xa1\x83\x89\xb4\x3a\xc4\x9d\x36\x71\xfa\xb9\x46\x22\x05\x4f\x99\x82\x05\x94\x5d\xbc\x60\x4f\x65\xe3\x91\x13\x4f\x0d\xdb\xf2\x37\x9b\x56\x48\x30\x18\x04\x85\x07\x94\x45\x6d\xfd\x90\x6c\x67\x37\x36\xfb\x80\x5e\x48\xb6\xad\x13\xca\x2e\x5e\xad\xc4\xee\xd9\x98\x02\x07\x4e\xa7\x58\x09\xaf\x2b\x5a\xbe\x2d\x56\xd3\xf9\x33\x72\x49\xa7\xc4\xef\x22\xc8\xd8\x6c\x8c\xda\x68\xaf\xa7\x14\xb7\xfa\xfd\xa8\x60\x42\x96\x00\xed\x3e\x79\xb1\x55\x06\x72\x6d\x9b\x11\xbc\xc8\xb6\xc0\x5c\xf3\x1c\x0c\xb4\x1a\x01\x74\x6c\x32\x87\x2b\x46\xff\xb1\x22\x2f\x32\x6f\x5d\x64\x7f\x2f\x8b\x4b\x02\xae\x67\x23\x6c\xae\xa1\xc9\x57\x5e\x06\x7f\x29\x0a\xf1\xb2\x58\x95\xe4\x59\x71\xc5\x9a\x85\xd4\x6b\x00\xba\xd9\x6c\x4a\x4a\x51\xc8\x27\x61\x3c\x71\x05\x16\x2b\x01\x7e\x75\x8c\x01\xb5\x6b\x42\xf1\x2c\xb1\x48\xa2\x94\xd1\x05\x14\xd2\x5b\xa3\xa4\xac\x38\xe6\xc9\x85\xf3\x0f\xd6\x06\xd8\x3d\x80\xce\x7d\x00\x1a\x80\x76\x1e\x02\x4f\x0b\xe6\xb9\x05\x93\x58\x3f\x10\x01\x00\xe3\x4d\x00\xc6\x0c\x00\xab\x94\x58\x35\x03\x85\x5d\x18\xb9\x66\xd1\x39\x8a\x31\xd3\xce\xc3\xc0\x45\xa6\xca\x7c\x72\xfd\x42\x73\x5d\xd5\xd6\xb8\xda\xaa\x39\xbb\x0c\xcf\x99\x1c\x95\x13\xd5\xf6\x8e\x2b\x56\x14\x4b\x88\x44\x4a\x04\x84\x9c\xd2\x2a\x2b\xb6\x17\x88\xfa\xfb\x86\xe4\x04\x6e\xfa\xfb\x71\x96\x8a\x74\x40\xce\xb3\x01\xcd\x92\x2f\xd6\x3b\xce\x43\x35\xd0\x41\x25\x26\xef\x75\x40\xcf\x96\x7d\x4f\xb8\xf2\x7d\xa1\xfd\xd6\xf1\xa1\x00\x4a\xc2\xb7\xc5\x62\x36\xf5\x61\x7c\x8c\xa9\xe7\x21\x03\x6b\x53\x23\xff\xb4\xa1\xcd\x86\x18\xd7\xb4\xf2\xc1\xdc\x6c\x94\x13\x4d\x97\x72\xda\x52\x4b\x83\xe9\x51\xcf\xbe\xc9\x24\x16\x9e\x52\x9b\x56\x39\xd5\xa3\x64\xce\x0a\x4d\xaf\x16\x73\x1e\x2c\x4a\x4c\xb7\x2f\x5e\xca\x69\x3a\x28\xae\x58\x29\x97\x6e\x48\x33\xf5\xc0\x55\x72\x85\x5c\xf3\x34\x34\x72\x2b\x92\xe7\x31\xf5\xf3\x8b\x30\x3f\x4d\x0a\xaf\x77\x83\x36\x14\xfd\x7e\x6a\x3b\x90\x2b\xbb\xd9\x90\xb8\x00\x43\x4d\x1d\x81\x77\xe8\xee\xbd\x5e\x93\x70\x1f\x75\x8c\x92\xe1\x34\x2f\x4a\x12\x73\xdc\x3b\xd6\x91\xea\x5b\x97\xae\xc2\x76\xd2\x69\xa6\x7c\x4e\x5b\x83\x7e\xd7\x38\x2f\x0a\x01\x79\x6f\xaf\x97\xca\xb3\x7c\xdb\xa1\x80\x48\xc1\x5a\xf1\xb4\xd1\x58\xc4\x49\x49\x7f\x35\x30\x90\xaf\x58\x5e\x14\xcb\xc7\x57\x29\x27\xbf\x10\x83\x67\xee\xa8\x5d\x70\x4a\x98\x02\x1c\x53\x70\x52\xb8\xa7\x21\xc8\x0c\x80\x6c\xbf\x1f\x6f\x9f\x6a\xe4\xc1\x5a\xef\x78\xbe\x91\x09\x4a\xdb\x18\x16\x72\xc7\x62\xa9\x16\x08\xcb\xa2\x9d\xeb\xa3\xb4\x8d\x95\x4f\x01\xb5\xc0\x2d\x00\xb3\x45\xad\x5c\x39\xe6\x21\xe6\x64\x1b\x8f\xf8\x3f\x17\x19\xf1\x3c\x43\x32\xa3\xcf\x0f\xba\x1c\xe0\x70\x53\x36\xfe\x1a\xca\xa2\x98\x29\xb3\xc1\x87\xa4\xdf\x8f\x9e\xbc\x7a\xf6\x2e\xea\x25\xce\x47\xd4\x50\x14\x7f\x5a\x2e\x09\x7f\x9a\x4a\x74\xb0\xdf\x8f\x24\x09\xbc\xa3\xc4\x43\xb4\x16\xc6\x8e\xb5\xd3\x32\x2a\x92\x98\x6b\x77\xaa\x6f\xe9\xb6\x41\x55\x95\xf1\x78\x23\x2a\x15\xe0\x40\x05\x6c\xc8\x54\x41\x58\x7f\xca\x2e\x62\x82\xac\x93\xde\xd8\xc6\x93\x96\xd4\x84\x32\x3f\x80\xfd\x28\x5d\x9c\x25\x99\x53\x6b\xc1\x58\xb7\xb6\x2c\xf9\x78\xe2\x36\x57\xd5\xfd\x04\x97\x61\xf7\x29\x6c\xeb\xe6\xc6\x07\x71\x7b\x23\xfb\xcf\x62\xa5\x1e\x18\xf2\x82\xd9\xe0\x11\xf5\x27\xa7\xdf\xff\x18\x13\xec\x42\x43\x85\x2f\xb3\x36\x1a\x6d\x62\x65\x95\x6d\xfb\xd5\x4a\x18\x53\xa0\xd6\x0e\x42\xf3\x5d\x73\x82\xf4\x03\xe9\x41\x4f\xfb\xb6\xd0\x99\xbf\x17\x60\x63\xf1\x82\xbd\xce\x53\x58\x5b\x91\x88\xb0\x05\x75\xdf\xfc\xfa\x4a\x8f\x99\x48\xf8\xc8\x88\x3c\xa9\x71\xef\x18\x5c\x55\x67\x10\xcf\xf7\x28\x1a\x0c\x20\x2b\xc2\x5c\x29\x59\xca\x65\xd5\xcb\x0c\xfe\x99\xc2\x29\x3b\x7c\x17\xac\xa8\x45\x1c\x75\x23\x84\x82\xba\x69\x96\xb5\x57\x34\xa8\x65\x50\x53\x0c\xd3\xe5\x92\xb0\xec\xe9\x9c\xe6\x19\x04\xd0\xbf\xc1\xba\xe3\x8f\x31\x0f\x64\x31\x66\xe4\xa6\xb5\x0a\x21\x85\x32\xbc\xac\xa1\x61\x2e\x7c\x48\x2d\x03\xbc\x0b\x34\x4b\x2b\x87\x48\xb0\x65\x65\xb1\x20\x32\xe1\x2a\x26\x43\xf0\x19\x2b\x57\xb5\x44\x9b\x8d\x4c\xd0\x7e\x63\x55\x12\xea\x18\x91\x24\xec\x9e\x09\x9b\x6f\xc0\xb6\xda\xc0\xad\xd9\x31\xc1\xcd\xf7\x4e\xae\x98\x6e\xb3\xfd\x2d\x00\xed\x96\xd6\x99\x19\xe7\x41\x31\xc1\xeb\xa9\x5c\x1f\xb9\x5b\x92\xf0\x2f\x57\xe7\x82\x13\xed\xcb\xd3\x80\x9c\xc6\x12\x98\x00\xab\x3d\x2d\x76\xae\x37\x6f\x00\x7c\xa3\xdb\x8c\x96\xd3\x82\x31\x32\xb5\xb1\xdc\x1b\x6b\xae\x51\xe2\xaa\x71\xf9\x63\xb4\xde\xf7\x06\xc9\xf5\x8e\x6a\x38\x96\x07\x3a\xaa\x7a\xa2\xdd\xf9\x1a\x82\x40\x0e\x01\x32\xfb\x3a\xdb\xb6\x27\xc6\x97\xd2\x8a\x29\x6f\x6e\x3b\x10\x19\xee\x9e\xf5\xaa\x0d\xde\xaf\x35\xd2\xd0\x3a\xc8\x9b\x60\x1d\xad\x0d\xdc\x10\xf1\xa8\xda\x9e\xad\xb5\xf1\xcd\xe0\x66\xb9\xe4\x44\xf6\xa3\x8a\x9a\x47\x5e\x04\x48\xb5\x68\x41\xaa\xb9\x4d\x05\x74\xc0\xe1\xc7\x5c\x22\xd0\x7e\xa5\xb5\xe7\x62\x8a\x41\xa8\x04\xe3\x44\x5b\xf7\x19\x73\xac\x1e\xee\x75\x46\x72\x91\xfe\x15\x5c\x17\xe7\x22\x7d\x37\x4a\x2b\x5b\x49\x95\x7d\x26\xd3\x4b\x24\xb1\xe9\xe2\x7b\x89\xc9\xcb\xf2\x3f\x93\x8b\x54\xd0\x4b\x72\x0a\xc1\x58\xc2\x34\x2c\xcc\x04\x9f\x69\x55\x22\x84\x46\xc5\x23\x53\xec\x35\xac\x56\x58\xd5\xa4\xb5\x56\x4d\x4d\xaf\xef\x5c\xaf\x69\x52\x4f\x6b\xaf\x6a\x7a\x7d\x67\x7a\xe8\xf7\xbd\xba\xbb\xba\x75\xaa\x79\xaf\x55\x16\x04\x84\x2b\x36\x9b\x14\xf5\xfb\xb0\x42\x19\x2d\x35\x02\x6f\x16\xb5\xc0\x29\x04\x4b\x53\x91\xb6\x9b\x8d\x56\x9d\x1d\xd7\xf7\x6a\x4e\x48\x1e\x49\x3a\x76\x9a\x2e\xc5\x8a\x03\x17\x72\x99\x96\x25\xbd\x24\x4a\x1f\x71\x2b\x6a\x93\xc0\x13\xbd\xfb\xc2\xb6\x35\x5f\xa1\x4a\x0f\x35\xc0\xb9\xf6\xe3\x52\x49\x23\x47\xd5\xa9\xda\x11\xaf\x75\xd5\x68\x7b\xbd\x15\xd9\x57\xf8\xd9\x21\x18\x7e\x0b\x26\x67\x59\xad\xf2\x89\x22\xb7\x6c\xbd\x42\x55\x73\x6a\x7b\x40\xcd\xa7\x1c\xf5\xad\x3b\x00\x4d\xa1\x8b\xe4\x3a\xbe\xf4\xa3\xab\xd5\xf9\x29\xe3\x62\x82\xd7\x75\x76\x77\xc8\x0c\xf7\x98\xdf\xd8\xe3\x7b\xb4\x79\xd7\x6d\x43\xeb\x4e\xb7\xa2\x49\xa3\x28\xaa\x2a\x84\x6b\x23\x04\x9c\x24\xc2\xe3\x74\x62\x1c\x00\x2b\xbd\x57\xc3\xde\x71\x3e\xa1\xda\xea\x21\x7c\xe9\xbb\xdd\xac\xb5\x6d\x5e\xf0\x08\x8f\xcb\x1b\x36\x6f\xab\xee\xee\xc1\xe2\xd1\x11\x1e\xe7\x37\xec\xc2\xd5\x3d\xa8\x8f\x57\x2b\x11\xe1\xf1\xea\x76\x9d\xbc\x02\xe6\xe4\xae\x5e\x5a\x71\xc3\x08\x8f\xa7\xb7\xd9\x97\x46\x3b\x87\xed\x53\x4b\xf7\xd9\x2d\xf7\xed\xa6\x23\xa8\xa3\x5b\x11\x1e\xcf\x6f\xda\x75\xa3\x8d\x03\xfa\xf4\xd0\xa6\x08\x8f\x67\xb7\xe9\xd2\x6f\x62\x77\x8f\xed\xa0\x23\xc2\xe3\xe5\x0d\xfb\xdd\xd2\xd0\x9e\xde\x1b\x28\x5c\x84\xc7\x8b\x9b\xf6\xdc\x6c\xa4\xd6\xeb\xa5\xe7\xd9\xf7\x0a\xdc\xff\x1b\x0f\x04\xc9\xf1\x43\xf1\xbd\x8b\xa7\x7b\x74\xe4\x34\xe8\x89\x8e\x61\x1e\xfd\xc7\xb4\x58\x40\xa4\x87\x5e\x92\xf0\x21\x2b\x32\xa2\xa2\x67\xc6\xd1\x7f\x08\xf2\xb1\x96\xbc\xd9\x44\x2e\x01\xec\x9e\x8d\xfe\xac\xef\x38\xcb\x8e\xe6\xb9\x19\xcd\x43\xd9\x60\x8f\x38\x4a\x71\xb3\xf1\xbf\x1c\x72\xb7\x93\xbb\x1f\x21\xf4\x10\x79\x68\x63\x8d\x84\x0e\x82\x84\x92\x7a\x6e\x65\xed\xc2\xec\xf0\x3e\x2a\xdd\x30\xfb\xd2\xfd\x63\x45\x4a\xf1\xd8\x80\xf7\x1f\x79\xba\x20\x81\x42\x94\x42\x4b\x75\xf1\x0b\xa5\x56\xbe\x12\x24\x7b\x23\xae\x73\x08\x91\x25\xd7\x93\x49\x82\x1a\xd6\xc8\x3e\x14\x6a\x41\xe5\x19\x62\xca\x5c\xda\xcf\x7c\x9d\xa7\xd7\x10\x00\xad\xee\x68\x01\x7c\x95\x6c\x79\x1f\x6d\x6d\xe0\x7c\x48\xca\x59\xe2\x5b\x6d\x28\x40\xbd\xa4\x46\x81\x40\x9b\xcb\xb3\x91\x3c\xab\x10\xea\xdc\x52\x14\xaf\x42\x7a\xa5\xf9\x40\xa4\x17\x7b\xe5\xf1\x9f\x5b\x33\xaf\x6e\x55\xeb\xc4\x81\xdb\x2c\x42\x6f\x38\x5b\x2d\x32\xb8\x9b\xe2\xc1\x0e\xe5\x80\x16\xc5\x00\xb0\xca\xf3\x95\x03\xdc\x7d\x9f\xff\x4e\x0a\x01\xb3\x7f\x2b\x04\xfc\x5f\x50\x08\x58\x26\x31\xab\xc9\xdb\x69\xed\xbb\xa8\x7d\x7f\x6a\x7d\x81\x59\x1c\x67\x07\x8a\xf8\xdb\xc4\xfa\x73\x2b\xf1\xbd\xb8\xc8\xc9\x8b\xf2\x09\xa1\xec\x42\x21\x0f\xd9\x93\x6b\x60\x57\x9b\xa7\xb9\x77\xe2\x17\x6f\x15\x10\x5b\x59\xa4\xe2\x33\x5b\x1e\xb3\x63\x2a\x07\x7c\x1d\xed\xba\x2b\xdb\x6c\xa2\x85\x2c\x0a\xf8\x75\xc0\x1c\x21\x86\xbb\xde\xef\xab\x48\xe8\xe7\x2b\x21\x14\x7b\xd0\x31\x07\x45\xb1\x94\x3b\x98\x5e\xa4\x8a\x75\x48\xea\x49\x86\x7a\x3d\x93\xe9\x6f\xc9\x47\xa1\x04\x7a\xb4\x60\x7f\x62\x82\xe6\x30\xcc\xd5\xd2\x94\xda\xbb\x14\xa7\x87\x15\x4b\x7a\x27\xa3\x1d\xcc\x2c\x55\x1f\x6c\xce\xd5\x6a\x3d\xcd\xe9\xf4\x83\xd2\x51\x6b\x3a\x76\x32\xf4\xbc\x99\xb9\x67\x37\xba\xd9\xf4\x9a\xdd\x6c\x36\x3b\xd7\x3b\xe4\x57\xd6\x97\x3a\x9a\xca\xa1\x44\xed\xd9\x9b\xcd\x71\xcf\xed\x84\x09\x91\x7c\xc3\x9d\xf8\xcd\xd7\xd8\x2c\xf2\x7f\x93\xeb\x83\x0e\x64\x7c\xa2\x7c\x82\x7f\x20\xd7\x4f\x8b\x8c\xec\x12\xaf\xda\x4e\x46\x0f\xee\x07\x75\x62\xd2\x60\xfa\xb4\xb0\xad\x5b\x06\x3b\xba\xff\xad\xdf\x90\xcf\x28\xdf\x22\xdc\x75\xa7\xe8\xad\x25\x3a\x6e\xc6\x20\x3e\xab\x93\x0e\x41\x83\xcf\x59\xa6\xb9\x97\x87\xee\xcb\x31\x26\x72\xff\xeb\x6c\xb3\x9d\xe7\x52\x63\xa8\x0f\x75\xc0\x08\x13\x75\x64\x8b\x96\xc0\x21\x4b\xd9\x56\xd5\x58\xef\xdf\x8c\xa7\xdd\x5c\x1f\x2b\xa8\xd2\x6c\x58\x27\xce\x15\xc3\x59\x31\x5d\x95\x31\xc2\x25\x11\x6f\xe9\x82\x14\x2b\x11\x60\xca\xc0\xb1\xd5\xec\x59\xc1\xaf\xeb\x1a\x1b\xca\x06\x01\x06\x14\x47\x00\x9d\x0c\x65\xd3\x11\xf0\xdc\xb9\xb4\x58\xdf\x55\xdc\x3b\x96\xff\x29\xe4\x1b\x1f\xdb\xff\xf7\x4e\xdc\x7f\xc7\xca\xbf\x15\x36\x5d\xcb\x75\x5f\xa6\x42\xef\x59\x2c\x50\x35\x95\x5f\x10\xf0\x14\x16\x0a\xfc\x5c\xf9\xbd\x6c\xad\x0b\xe5\xc1\x9d\xe1\xb1\x2c\xd3\xe0\x75\xfa\x54\x9a\x5e\xbf\x32\xde\x0b\xe9\xee\xba\x43\x7b\xb6\x78\xa1\xe0\x7e\x64\xe3\x94\xc2\xa7\x27\xb3\x80\xd8\xa9\x7e\xa2\x7f\xa5\x6e\xd7\xa4\x1b\xd2\x79\x91\x5d\x37\xc5\x8a\xed\x04\x9e\xa4\x34\x07\x25\x3c\x5a\x03\x73\x59\x22\x54\x35\x66\xfc\xa9\x04\x38\x2d\xc0\x60\xdf\xdb\xb9\x0b\xd6\xdc\x7e\x55\xd2\x2c\xbb\xd9\x92\x54\xc8\x67\x0e\xd4\xd0\x90\x08\x8f\xd9\x7e\xf6\x42\xb6\xab\x05\x84\x33\x9f\xb7\x30\x6b\x2b\xfd\x54\xdd\xc8\x31\xbd\x55\x5f\x4f\xf5\x4d\xdb\xdf\x8f\x7e\xcb\x14\x13\xf7\x16\x3d\x99\xfa\x87\xf4\xe5\x9e\x95\xc3\x58\xb3\xbb\x9b\x38\xb8\xc7\xe7\x92\x2a\x3f\x84\x57\xbb\xab\x81\xdd\xbd\xb5\x81\xa6\xc3\x98\xb7\xfb\x9b\xd9\xdd\x73\xed\x22\x1c\xc6\xcc\xdd\xd9\xc2\x9e\xfe\x5a\x18\x8c\x07\x70\x73\xf7\xb4\x51\xeb\x33\xf3\x2d\x18\x96\xb7\x67\x24\x7c\x72\xcb\x85\x5b\x71\x12\x7c\x33\x03\x7c\x8e\xaf\xf1\x19\xbe\xc2\xcf\xf1\x47\xfc\x0a\xbf\xc1\x6f\xf1\x4b\xc7\x69\x78\xec\x1c\x0b\xf0\x7f\x56\xc5\x54\x3b\xd8\xd7\xbf\x13\x5b\xe4\xe9\xbf\xd9\x22\xff\xdb\xd9\x22\x8a\x81\xfe\x21\x59\x57\xf8\x97\x64\x1c\x89\x62\x19\xe1\x28\x27\x33\x79\x61\x39\xbd\x98\xcb\xbf\x57\x34\x13\xf3\x08\x47\x73\x02\x09\x2a\x2e\xc5\xdf\x3d\x5e\x8a\x31\xae\xa0\xf5\x84\xed\xe6\x17\x26\xa1\xac\x27\xe4\xf5\x84\x55\x3d\x61\x5a\x4f\xc8\xea\x09\xf3\x7a\xc2\xcd\xad\x30\xc2\xef\x8b\xad\x2c\x9b\x0b\x22\xba\xf3\x82\xd3\x5f\x0b\x26\xd2\xfc\xb5\x53\x93\x09\x64\xac\x92\xea\x69\x96\xda\x6c\xa2\x74\x25\x8a\x08\x54\xc6\x2f\x09\x17\x74\xba\xbb\x89\x7a\x99\xa0\x01\x4f\x09\xbd\xad\xae\x97\xad\x69\xb1\xb3\x0b\xe5\x9d\x49\xa7\xbe\xc8\x62\xad\x0b\xaf\xd1\x33\xeb\x46\xdb\x6b\xc4\x12\xdc\xbd\x93\x8e\xdf\xc5\x99\x24\x21\x68\xb1\x2a\x9f\xe9\x12\xbd\x24\xf9\xa0\x09\xe1\xb6\x3c\xeb\x96\x83\xaf\xd8\xb0\x9c\xce\x89\x3c\xaa\x71\xa4\x09\xc2\x48\xe9\x2d\x1a\x4a\x7a\xb9\x3a\xcf\xe9\xf4\xf1\xeb\x17\x43\x5a\xbe\x5a\x12\xe6\x98\x2a\xf2\x2b\xe9\x9d\xf8\x74\xba\xf1\xdd\xf4\xf8\xf5\x0b\x9f\x10\xf7\x92\xe3\xb0\x51\xab\x65\xd6\x18\x67\x42\x30\x81\x15\xb1\x65\xed\xc2\xae\x8d\xd2\xbd\x62\x67\x9c\xad\x68\x86\xd5\x70\x46\xde\xd0\xb0\x59\x2f\x95\x68\xbe\xb0\x9e\xa6\xae\xab\xbf\xaa\x2a\xf4\x61\x27\x0c\x07\x50\xfe\xc4\x8f\x8d\x29\xc7\x6b\x2b\xf5\x3b\x57\xfe\x4a\x6d\xd6\xa5\xcb\xba\xae\x65\xc1\xb5\x3e\xab\x25\xaa\x5b\x7e\x55\x4b\xd5\x97\xfe\x79\x2d\x59\xc3\x80\x8f\xb5\x64\x0d\x12\xf0\xab\x5a\x7a\x21\xe6\x84\x83\x20\xa9\x8c\xf0\x9b\x5a\xa6\x5a\x9c\x08\xbf\xad\x77\xed\xeb\x84\x46\xf8\xa5\xce\x7e\x6d\xdc\xb0\xe8\xed\xf9\x73\xed\x16\x38\x3b\x94\x7a\xc9\x3f\x36\xae\x5c\xb3\x6c\xd3\xf2\xa3\x59\x46\x6e\x6f\x84\xc3\xd0\x37\x30\x36\xaf\x88\x6f\xd4\xd3\x64\x75\xbc\xc8\xb6\x59\x21\xd5\x4c\x7d\x64\x57\x5e\xab\xf5\x23\x19\xe1\x0f\x5e\xae\xbd\x2e\xeb\xc2\x9e\x3c\xf9\x0b\x03\x97\x49\x7d\xc3\x4f\xac\x38\x2c\x23\x8f\x1b\x84\x9d\x76\xde\x48\x6b\x04\x99\xef\xca\xbf\x4f\x05\x7b\xc1\x68\xa0\xfc\xa9\x52\xea\xb7\xe8\x6e\x57\x30\x74\x55\xa8\xfc\xa1\x05\x69\x37\x6b\x5e\x39\x06\x97\x4b\x61\x49\xec\x80\x03\x5b\x03\x2b\x0e\xac\xb5\xc2\x1b\x9f\x77\x55\x30\x05\x81\x7a\x27\x01\xe3\x5b\x25\xd7\xa6\x85\x09\x32\xfc\x56\x03\xaa\x8e\xef\xb4\x4c\xa8\xd2\xec\x43\x09\x1c\x0c\x73\xcf\x77\xfc\x58\xd3\xb4\x6e\x9b\x61\xaf\x75\x8a\xad\x3a\xda\x05\x7b\x2a\xbb\x6b\x99\x2c\xa4\x37\x67\x5b\x6f\x65\xc7\xd0\x2c\x1c\x53\xed\x5a\xd8\x95\xa8\x40\x94\xea\x9c\x2e\x75\x54\x28\x32\xd3\xda\xc5\x00\x9c\xd4\x4f\x00\x48\xea\xa7\x02\x42\xd6\x85\xfa\x5c\x05\x4c\x6a\x85\x15\x49\x90\xdb\x84\x0f\x41\x23\xf6\x7d\xb9\xd3\xa6\xe1\x9a\x1e\xe8\x4d\x0c\xbd\xdc\x36\xb5\x1a\x79\xf1\x7e\x9f\x0f\x45\x7a\xfe\x82\x65\xe4\x23\x44\x04\xe3\x86\x95\x59\x59\x9e\x6a\xbd\x25\x35\xab\x53\x07\x1c\x62\x82\x1c\xe8\x88\x09\xaa\xb8\xaf\xee\x6b\xf5\xff\xb7\x1d\x19\x85\x23\xec\x34\x92\xf3\x80\x23\xc2\x37\x33\x75\xdb\xb3\x02\xe0\x0d\x4d\x1e\x6a\x33\x1a\xf5\xd0\x36\x60\x7a\xb2\x25\x7d\xb3\xd9\x39\x70\xdf\xb0\x0f\x34\x6e\x9b\x48\xdc\x88\xe1\x3a\x5a\x36\xa2\x78\xfb\x09\x1b\x15\x78\xdb\xe1\x1c\xa5\x95\x32\x97\x5c\x07\x2f\xe1\xa8\x94\x47\x70\x91\x8a\xe9\xfc\xad\x9a\xf9\x5f\xe4\xd9\x1f\xe5\x49\xef\xa4\x72\xd7\x12\xaf\x12\xef\xee\x5a\x8a\xda\xe1\x8a\x1e\x8f\x5e\x60\xcd\xa5\x6f\xae\x08\xfe\xdc\x73\xc4\xb5\xc9\xb5\xcd\x0c\x9b\x03\x03\x07\xd3\x45\xe7\x55\xf3\x5b\x2e\xf3\x6b\x4f\x25\x5d\x4e\x66\x85\xaa\x7a\xb2\x8b\xd5\xd5\x65\xc9\xda\xc2\x9b\x11\x6f\xc1\xc4\xf1\xa5\x97\x5d\x9f\x2a\xf6\x90\x99\x51\xdd\xdd\x84\xba\x38\xae\x00\xaa\x20\x5e\xc7\xb0\x94\x5f\xfd\x7e\x6c\x69\x48\x9d\x24\xa1\x1a\xc4\x34\x97\xd0\xcd\x4b\x3b\x8a\x96\x1f\x23\x43\x10\x7a\xc5\x25\xec\x3b\x8d\x99\x82\x81\x7e\x22\x54\xc0\x4c\x83\x44\x0d\xb6\x1a\xd5\x21\xb7\xdf\x8f\x83\x6f\x43\x7e\x1a\xe2\xb4\xa5\xbc\x69\x37\x48\x37\x5d\xc2\x58\x42\x12\xd6\x6b\x02\x00\x33\x34\xa1\x40\x74\x90\xbe\x6d\x9a\x0a\x84\x43\x2d\x0d\xcd\xc3\x9c\xa0\x9e\x79\x8c\x44\xb1\x44\xc8\x05\x38\x86\x88\xed\x50\x09\xd5\xdb\x1f\xd3\x49\xbf\x1f\x47\x6c\x25\x77\xcf\x0f\x5f\x62\x72\x4f\x85\xee\xae\x24\xc2\xd2\xd1\x14\xbb\x02\x6a\x00\xa3\xf6\x62\x51\x74\xe4\x4a\x22\x17\xe2\x2f\x18\xd3\x40\x3e\xa2\xbf\xd8\x58\x8e\x14\xc1\x6c\xbd\xa3\x83\x83\xaf\x31\xc4\x96\xb3\x8d\x06\x37\xc0\x3d\x9e\xcc\xfd\xc6\xf5\x87\xd4\xfd\x76\xef\x29\x9c\x3b\xec\x5e\x55\xb5\x99\xd8\x7b\x5c\xf5\xce\x63\xef\x91\xd5\x3b\x89\xfd\xc7\xd6\xec\x53\xe3\x02\x24\xe1\x9c\xf6\xbd\xb7\xad\xb7\x71\xf7\x13\xde\x72\x43\x59\xd5\x42\xcc\x6a\xea\xb5\xcd\xa9\xbf\x09\x22\xa3\xfc\x70\x71\x45\x34\xeb\x20\xcf\x23\xc2\x2e\x29\x2f\x18\x90\x02\x2e\x60\xd5\xb8\x15\x7d\x8f\x26\x10\x57\xaa\x3d\x2b\xa4\xb9\xdb\xd1\xff\xab\x82\x2f\xe6\x45\x4e\xa2\xaa\xc2\xe7\xc9\xd3\xf8\x22\x60\x8c\x3b\xb2\x65\xcc\x3e\xa1\xe2\x37\x44\x53\xab\x10\xbe\xae\x77\xe8\x91\x90\x63\xfa\x19\x3a\x3c\xab\x77\x08\x84\xe9\x1d\x94\xda\x75\x5c\xb8\xab\x7a\xbb\x8a\xb6\x1d\xa7\x77\x6d\xf8\x79\xbd\x61\x4d\x1e\x8f\xcb\xbb\xb6\xfc\xb1\xde\xb2\xa6\xb0\xc7\xf9\x5d\x5b\x7e\xd5\x38\x46\x9a\x48\x1f\xaf\xee\xda\xf4\x9b\x7a\xd3\x01\x9d\x3f\x9e\x7e\xba\x23\x03\xee\xea\xf1\xdb\x7a\x7f\x86\x75\x30\xce\x3e\xb9\x1d\x04\x38\xf7\x50\xe5\xf2\x6b\xd9\x8b\x62\x73\xc9\x61\xbc\x6c\x9c\x82\x90\x53\x31\x9e\x7f\xc2\xd1\xb4\xe8\xfa\xd4\x8c\x65\xb7\x64\xc8\x91\xd6\xb7\x47\x2d\xd6\x01\x6a\xe9\xcd\x6a\x08\x5f\xf8\x82\xa2\x5a\xcb\x40\x39\x1c\xa6\x79\xde\x52\x6f\x77\xdb\x8a\x74\x39\x4c\xb9\xbc\xad\xe2\xee\xd6\xb9\xaf\x38\x7f\x79\xc3\x1e\xb8\xaf\x2c\x1f\xf4\x72\xe1\x0b\xd2\xfe\xbe\x57\x90\xd6\xee\x86\x6f\xaf\x53\xb0\xdf\xdd\x8f\x1e\xf9\xc3\xf5\xc9\x33\xf2\xf5\xbd\x76\x3f\x7a\x3f\xd4\x2e\x46\xf4\x43\x71\x49\x78\x9e\x5e\xcb\x9f\x73\xb1\xc8\xdf\xa6\x17\xf2\xa7\xee\x57\x1b\x35\x45\x3f\x78\xef\x4e\xf4\xc3\xdc\xff\xc8\x28\x8f\x70\xd4\x4f\x85\x00\x0f\x65\x3f\x18\x58\x16\xfd\x60\xa4\x12\x3f\x18\x31\xc5\x0f\x5a\x6c\xf1\x83\x12\x62\xfc\x10\xc0\xa6\xe8\x07\x27\xa9\x8c\x7e\x28\xd8\x8f\x92\x4c\x7e\xe1\x7f\x80\x7d\x8e\xfc\x52\xda\x3a\x2a\xba\x90\xfd\xfe\x89\xa4\x97\x87\x78\x08\xbc\x0f\x1e\x02\xef\xe3\x93\xaf\xf1\xd8\x40\xab\xc9\x2d\xbd\x05\x1e\xe3\x28\xa3\x97\xf0\xf3\x2b\x7c\xbc\xc7\x55\x90\x41\x24\x06\x05\xa7\x17\x94\x41\xad\xfb\x9e\x9f\x40\x3c\xfe\x0e\x47\x8b\xf4\xfa\x9c\x0c\x28\x1b\x10\xc3\xea\x1c\xcb\xf1\xca\x0d\x69\x72\x41\xeb\xbb\xa9\x67\x76\x8c\xc7\x6d\x4c\xd3\xc9\x04\xc3\xbc\xc1\x19\xe6\x4e\x0f\x9c\xe1\x42\xdd\xbf\x81\xdb\x4e\xf5\xbf\xc3\xd7\xc6\x1c\x3e\xb3\x16\x27\x0f\xf6\x39\x4e\x34\xd9\xae\xa7\xef\x70\xb4\xdb\x40\x60\x7c\xf2\x0d\x3e\xc1\x76\x65\x1c\x1b\x18\x9a\x3b\xf9\x46\x26\x3f\x38\xc1\xed\x48\xa2\xd9\xbe\xee\xce\xbd\x1d\x44\xd0\xfe\x37\x13\x1c\x1d\x54\xf0\x6b\x59\x30\xb2\x63\xaa\x19\x11\xc2\x4e\xc9\x41\x7d\xe3\x4e\xeb\xfe\x96\x29\x1b\x2c\xf5\x31\x50\x1e\x28\x4d\x0f\x5f\x4d\xcc\x44\x23\xb8\xac\x32\xed\x5b\x48\xf9\x16\x5c\xaa\x7e\x85\xc7\x0f\xbe\xd3\x9e\x33\xef\xe3\x93\xaf\x5c\xef\xc7\x6e\xe7\x0f\x92\x3b\xea\x16\x1e\xe8\x93\x76\x5f\xff\x3d\xd1\x7f\x8f\xd5\xdf\xff\x9c\x4c\xcc\x85\xb3\xbd\x3f\xf0\xce\xae\x32\x3c\xdc\x5a\x04\x2e\xae\x65\xac\xfb\x00\x7f\x7f\xab\x0d\xa3\xb5\x9d\x55\x9c\xfd\x60\xa3\xd8\x57\x5e\xb1\xad\x16\x71\x3b\x6b\x79\x76\x83\x07\xb5\xde\x2c\xf5\xed\x04\x8f\x23\xe0\x26\x52\xf9\x52\xea\x3d\xfb\x06\xea\xaa\xdf\x5f\x9b\x25\xfb\x66\x62\xcf\x1a\x2b\x8a\x60\x71\x61\x45\xcd\xe7\xd6\x1e\x0a\xb0\x8d\xdc\xd5\xc5\xb7\x77\xe8\x02\xb4\x6e\x88\x02\xe8\x3b\x3b\xf9\xee\xae\x9d\xe4\xea\x95\xd8\xd9\xc9\x7f\xde\xac\x13\x05\x9f\xcd\xdb\xa9\x1b\x79\xb0\x1f\xca\xfa\x70\xcc\x79\x9f\x3d\x0e\xdd\xc7\x9a\xcc\x9d\xb0\x70\x57\xb6\x6e\x79\x37\x5c\x6d\x38\xb4\x3d\x39\x71\xd0\x7b\x17\xf0\xbc\xbf\xff\xd9\x03\x98\x34\x2f\xf2\x4c\x5e\x88\x10\xd8\x34\x80\x4c\x46\xcb\xa5\x7e\x0e\x94\x5d\x9b\x0f\x28\x0e\x7c\x20\x76\x7a\xd6\x9d\xa7\xa5\x84\x57\xc0\xb4\x51\xde\x75\xe5\x3c\xb3\x01\x85\x90\x1f\x00\xd1\xfc\x80\xee\x51\x21\x31\x8c\x99\x44\x42\x24\x78\x69\x75\xc4\x7b\x57\xe4\xf1\x30\xef\xbc\xb7\x68\x7f\x9b\x99\xdc\xef\x8e\xa1\xfe\xcf\x7f\x3e\xfb\xc3\xe5\x7f\x7d\xfd\xa4\x1d\x43\x75\xd8\x8d\xc5\x29\xfb\x0e\x27\xf3\xee\x59\x2b\xd2\x62\x20\xe7\x57\x37\xc2\xe8\x54\xdd\x07\xde\xa1\xbc\xef\xfd\xae\x1d\xd6\xa0\xfd\x00\x08\x68\x67\x5e\x91\x2b\xd3\x86\x58\x6e\xc7\x9d\x14\x36\xa3\x9f\xfb\xb1\x7c\x9e\xef\x43\xc3\x13\x3c\xbe\x11\x34\xd1\xb0\xe4\x41\x13\x94\xdc\x18\x90\x9c\x98\x3b\x75\xb8\x0b\x6c\x0f\x74\x28\x24\xd2\xc3\x72\x77\x8d\xee\x00\x38\xb5\xef\x7a\x3b\xac\x39\xd2\x01\x5e\xcb\x74\xe6\x05\x66\x8b\x70\xe4\xff\xce\x89\xd8\xe5\x62\xfb\x93\xdc\xbc\xcf\x76\xbd\x5b\xec\x42\x7f\xff\x9b\xfd\xe4\xd7\xd7\x17\xe9\xdb\x9f\xb7\xd0\x9e\xb7\xa2\x2f\x1b\x04\xab\x47\x26\x3a\xaa\xb3\x60\x56\x79\xdb\x52\x84\xee\xd3\xa9\x3e\xcb\x2f\xad\x4e\xbe\x97\x92\x34\x74\xa7\xfa\xf9\x24\x5f\xf1\xdd\x94\xe9\x76\xca\xf3\x20\x12\x65\x27\x15\xa2\x77\xdb\x5c\x21\x1c\xc2\x26\x4d\x50\xec\xaa\xd9\x46\x1f\x6c\x6d\x2d\x24\x01\xc6\xfb\x5a\xb6\x64\x46\x88\x7c\x6d\x6f\xff\xc1\x6d\xda\x7f\xd0\xd6\xbe\xd7\x05\x50\xaa\x1a\x29\x89\x78\x01\x0f\xbc\xb2\xa9\xd3\x68\x4c\x24\xd2\x73\x13\xd4\xa5\x46\x5e\x7d\x83\x01\xf9\x50\x1a\x3c\x12\xc6\x1c\x47\x0e\xb0\x03\xe1\xe4\x04\xdf\x91\xda\x27\x53\xcd\x48\xbd\xa1\x9a\xbd\x95\x96\xe2\xb2\xfe\x4d\xa3\x03\x88\x4c\x43\x46\x86\xcd\x86\x6d\x91\x8f\xcb\x94\x65\xa4\x3e\x0c\xc7\xc9\x08\x4a\xdb\x49\x35\xf6\xa0\x31\x65\xc1\x57\xc4\x9f\xf5\xb7\x80\x36\x37\xa9\xa2\x56\xc5\xfc\x56\x12\xc6\x33\x42\xb5\x18\x64\xdd\xfe\xa3\xbd\xa2\xb6\xc1\x0a\x2b\xa9\x7b\xdb\x5e\xe1\x03\xb9\x6e\xeb\xc7\x00\x85\xf6\x4a\xbe\x43\xc8\xb0\x9e\x67\x5a\xb1\xa3\x2a\xb8\x38\x68\xa9\x28\x21\xcd\xde\x61\x6e\x27\x40\x76\x13\x39\xdf\x6c\xa1\x71\x9a\x0b\xbe\xbd\x87\xdd\x14\xce\xce\x1e\xfc\x89\xef\xa0\xa1\x8e\x6f\xdf\x83\xdd\xfb\x1d\xcd\x9f\xdc\x71\x89\x0e\xa1\x35\xef\xdf\xb1\x8f\x43\x48\xcd\x07\xb7\xef\x63\xa6\x9e\xa6\x9d\xcd\x7f\x75\xfb\xe6\xcf\xe1\xb9\xdb\xd9\xfa\xd7\x77\x1c\xfc\x1d\xb9\x16\xfb\x3b\xb8\x2b\xd3\xa2\xde\x43\x2b\xa5\x7f\x00\x3f\x35\xc0\x70\xbf\xc3\x27\xdf\xdd\x3d\x44\xcc\xb4\x60\xd3\x54\x18\x12\x76\xc5\x72\x02\x78\x54\x9d\x7c\x65\x1e\x0d\xfb\x89\x91\x5c\xfd\xd2\x7d\x2e\xfc\xf6\x9f\x0a\xaf\xbd\xbe\x7a\xf1\xf7\xe3\xaf\x66\xdf\xb5\xe3\xb5\xe9\x92\x86\x44\xaa\x43\x4b\x03\x87\xc6\x32\x21\x70\x4e\x29\x13\xf4\xcb\xef\x45\xf5\x8c\x7e\xd0\x4b\xfb\xd4\x73\x62\xd3\x4a\xb0\x7e\xeb\x1d\xe9\x6f\x1c\xa1\x69\x51\x07\x27\x8d\x75\x2f\x3d\xf6\x58\xa7\x6f\x0d\x09\x11\x3d\xd5\x82\x2c\xef\x99\xb7\x7a\x7d\x70\xbe\x1c\x8e\xd3\x96\x6f\x91\x8f\xd6\x5c\x1f\xcb\x68\xcb\x37\x03\x9a\x84\x58\x61\xfd\xb2\xca\xd9\xde\xff\x4f\xef\x82\xaa\x6c\x05\xad\xda\x69\x23\x75\x31\x1d\xbd\xe0\x13\x16\x75\xba\xc2\x51\x20\x0d\xd2\xbf\x3e\xe4\x49\x63\x10\x7e\x39\xd7\xc9\xee\x72\x35\xd9\xcd\xce\xb2\x97\xcd\x36\x27\x93\x70\x0d\xcc\xef\x07\x76\xb9\x7c\xa8\xf5\xbf\x77\x11\xea\x35\xda\x8e\xce\x37\x87\x1f\x9d\xa9\x77\x13\x0e\x5d\xb5\xfa\xa5\xae\xdf\x7a\x9f\xb8\xf5\x04\x73\x11\x3e\x48\xaa\x12\xea\x70\xfc\x93\xed\xcb\xd7\x8d\x9c\xfb\x8e\x86\xd4\xa8\xdc\x0d\xf7\xb4\xb5\x9c\xbf\x6c\xbb\x4b\x8a\xda\x33\xde\x2c\x01\xcb\xbd\x67\xfa\x4a\x9e\xb5\xb3\x8c\xda\xa6\x3d\xcb\x4d\x0e\x68\x28\xd8\xde\x43\xaf\xf7\x37\xb7\xb9\xde\xff\x3e\xa8\xff\x3e\xa8\x9f\xe1\xa0\xd6\x7f\x1d\xa4\x5e\x70\xbc\x77\x13\x6f\xa0\x8d\xd1\x60\x3d\x6f\x17\x4c\x69\xc6\xf4\x03\x2b\x51\xfa\x0e\xdf\xf7\x31\xf9\x9b\x8a\xca\xfc\xfe\x6b\x4d\xed\x43\xef\xdb\x39\xed\x3b\xe2\x42\xce\xe0\x4e\xa7\x59\xc1\x72\x2b\x9d\x3a\x84\xd1\x4d\xfe\x11\x61\x23\xfb\xba\xa2\xf2\x30\x7c\x52\x5a\xe0\x56\x34\xc0\xf6\x88\x88\x9f\x0d\xf1\xaf\x05\x48\x69\x89\x05\xb3\xdd\xd7\x26\xe6\x49\x94\x9e\x97\x45\xbe\x12\x04\x5c\xaa\x0d\x97\x56\xb7\x39\xb9\x17\xa7\x2b\x51\x6c\x94\x17\x69\x74\x0f\xfc\x72\xce\xe8\x47\x92\x85\x25\x51\x3d\x5e\xd5\x79\x91\x5d\x3b\x5d\xf4\x84\x3c\xa4\x09\x0d\xbd\x88\x3e\x44\x74\x16\x6f\x1f\x17\x45\x38\xee\xf1\xcd\x06\xce\x24\x9d\x82\x87\x31\xd7\x5d\xbf\xcf\x86\x82\x94\x22\x16\xc3\xe2\x92\xf0\x59\x5e\x5c\x1d\xb9\x9f\xef\xbc\xdf\x7f\x35\x96\x61\x5d\xda\x69\x1b\x64\xe5\x91\x4d\xc4\x99\xae\xe8\x1b\x6b\x15\xbf\xbd\xac\xbf\x68\x6d\xa7\xac\x66\xb8\xa5\x9d\x3c\x59\xe7\x0e\x2a\xd8\x45\x9b\x49\x0b\x6d\x9a\xb4\x14\x2d\xa6\x28\xe9\x2e\x33\x97\x72\xbb\x99\x4b\x5e\x25\x0c\xaf\xcc\xca\x2e\xd3\x0b\xf2\xd7\x57\xb3\x59\x49\x04\x9e\xfa\x89\xef\x74\xe2\x5a\x02\xe3\x51\x86\x45\xb1\x1c\xcd\x31\x80\xd4\xd1\x0c\x2b\xb0\x39\x5a\x56\x09\x9c\xae\x27\xc5\x8a\x65\x94\x5d\x3c\xcd\x29\x61\xe2\x17\x15\x86\x62\xad\x0b\x2d\x74\xad\xcb\x2a\x11\x5b\x0b\x5f\x24\x75\xcf\x3d\x32\x13\x66\xba\xd9\xe8\x61\x51\xc6\xf4\xe4\xf1\x79\xb2\xae\xf0\x75\xc2\xbd\xe8\x40\xf8\x6c\xeb\x69\xb9\x46\xf6\x6c\xa8\x68\x45\x11\x27\x39\xf8\xf7\x97\x07\xe7\xac\xdf\x77\x27\x5c\x7f\x9b\x50\x46\xd7\xdb\x02\x15\x5d\x27\xd7\x37\xef\x5b\x5e\x0f\xdb\x73\x92\x24\x67\x9b\x4d\x70\xb7\xce\x8c\x65\xc0\xf5\xb6\x75\xea\x64\x83\x44\x59\xd9\xe0\xb9\xfc\x25\x8a\x25\x58\x7f\x15\xb0\x59\xea\x7a\x8f\x44\x95\x5c\x77\xc0\xed\xd5\x20\x11\xda\x33\xfc\x4f\xba\x8a\xf9\x7e\x5b\x2c\x51\x75\x99\xa4\xa7\xb3\xd1\x25\x4e\xfb\xfd\xf8\x5c\x9b\x54\x5c\x2a\x77\x64\x57\x49\x76\xb4\x82\x01\x83\x1d\x7f\x92\x24\x54\xdb\xf4\x0f\xe0\x75\x86\xe0\x64\x7a\xb4\x2f\x53\x31\x1f\x2e\x28\x8b\x2f\x70\x76\x74\x89\x06\xea\x3b\xfd\x18\x1f\x63\xb0\xaa\x0b\xf2\x67\x61\xfe\xd1\x6c\x70\x89\x3a\x34\xb9\x7c\x44\xfa\x7d\xf1\x88\x9c\xea\x97\x7d\x74\xf9\x48\xf4\xfb\xe4\x91\x38\x55\xd8\xc0\xa8\xdc\x6c\xd4\x2f\xe5\x58\xd7\x8c\x6c\xa0\x8a\x7f\xfa\xe1\x84\xbd\x37\x86\x27\x87\xa3\x7e\x56\x91\x1b\xc2\xe9\xb9\xb6\x55\xb9\x18\xc4\x57\x47\x33\x34\x3a\x57\xc6\x2c\xd1\x54\x31\x5e\xa1\xcc\xd5\x51\x2c\x7b\xb9\x77\x7f\x74\x05\x4b\xfd\x3c\x99\x37\x4e\xc6\xb6\xd3\x14\x5c\x12\x24\xf3\xcd\x0b\x00\x4e\xa2\xe3\xc8\x29\x01\x6f\x36\xf1\xf3\xa3\x64\x8a\x70\x94\x9e\x17\xaa\xd5\x02\x9d\x83\xad\xcd\xf3\xc1\xa2\x63\x57\xf1\x9c\xe4\xc5\x55\x90\x7b\xb4\x84\x5c\x63\xa5\x72\xb4\x3c\x5a\x7c\x3f\x3d\xf2\x2f\xe1\x1f\xb5\x85\x4d\x32\x7f\xb4\xe8\x14\x09\xd9\x6c\xc4\xa9\x6b\x28\xef\xf7\x7b\x72\xb9\x4e\x75\xcf\x23\x37\x02\x99\x25\x57\xd6\x94\x1e\xe5\x9b\x4d\xec\xbe\x74\x41\x34\xd2\x09\xd8\x8c\xc8\x1f\xe6\xe9\x72\x34\x58\x20\xed\x66\xfa\x60\x00\x0a\xaa\x2f\xa3\xf3\xaa\xea\xec\x04\xd6\x42\xdb\xc2\xd6\xe0\x74\x97\xb6\x5a\x1f\x16\xcd\x9e\x52\x09\x5e\xcb\xa4\xad\xb4\x26\x23\x1a\x55\xcc\x64\xd5\x10\xd7\x55\x15\xdc\xbb\xc2\xf8\xab\xde\x0a\x69\x3b\x74\x3b\x60\xd5\x61\xd4\x9a\xd0\xfe\xa8\x01\x54\x3b\x6d\x9e\x40\x12\xae\x6c\xfa\xa8\x02\x0f\x8f\x98\xbd\x01\xf5\xdb\xe8\x8e\xb8\x1a\xf1\x5a\x41\x7d\xbe\xf3\x89\x50\x65\xd8\x8e\x97\xa1\x53\x2a\x53\xb3\x44\x3d\x44\x31\x1f\x30\x74\xef\x7e\xb5\x0d\x0a\xec\x5f\x2d\xcc\x76\x76\xd6\xba\x04\xd0\xfc\x23\x6d\x6d\xd6\xb6\x02\x0e\x06\x14\xfd\x7e\xdc\xda\x8a\x2e\x62\xec\xb6\xdc\x9d\x48\x4f\xe3\xa6\x03\x95\x24\xc5\x54\x82\xdc\xed\x2f\x66\xe9\x4c\x34\x93\x01\xd5\x46\x6f\x68\xd4\xd2\x94\x3d\x5f\xc1\xd9\xaf\xe3\x30\x5c\x39\xae\x92\x27\x1f\xbc\x57\xa1\xe4\x51\x11\x9a\x71\x9c\x72\xc8\x3b\xc6\x05\x1a\x09\x5b\xcc\x43\x7e\xd9\x81\xc8\xaf\xf3\xca\xfd\xf9\x99\xdd\xa1\x13\x74\x08\x98\x0e\xb6\xd9\xc2\x85\xce\x74\x8e\xee\x63\x88\xe2\x06\x31\x99\x32\x90\x68\x42\xcc\x31\x6b\xdb\xc9\x37\x9b\x1e\x1f\x1f\x4f\x00\xef\xbc\xce\x57\xa5\xc2\x3b\xc3\x0a\xe3\xe3\x89\xf2\x9a\xf8\xf6\x7a\x49\xac\xd3\x7e\x7d\x0f\xe1\xad\x49\xcf\xcb\xb8\xad\x16\xdc\xce\x41\x7d\x00\x36\x07\x61\xba\xbf\xfe\xbb\xad\xf5\xdf\x59\x8b\x41\xf6\x28\xf9\x7a\xb3\xa1\x8f\x92\xaf\xab\x03\x37\xac\x1e\x8f\xfd\xf3\x53\x2a\x2a\x3e\x54\x9d\x52\x31\x71\xa5\x78\x72\x6c\x22\x4b\x51\xf3\xf3\x65\x91\x91\x51\x91\x88\x2a\x81\xf0\x95\x85\xdc\x1a\xb4\xbe\xaf\xaf\x24\xff\x7f\xc9\x03\x4c\xff\x5f\xf2\x00\x69\xc7\x52\x24\x61\x31\xea\x58\x93\x26\xa2\xca\x10\x59\x86\xd8\xc7\xc5\x74\x67\x3b\xab\x2a\x7f\x90\x3f\x51\x46\xfe\xa8\xad\x4e\x55\x7a\x2d\x22\x56\xed\xf4\x99\x98\x10\xeb\x30\xb4\xd5\x48\xcf\xc0\x06\xac\x32\x09\xef\xea\x25\xde\xb9\x12\x95\x3a\x51\x98\x2a\x8c\xd6\x0b\xed\x40\xd0\x66\x23\x92\x24\x21\x0f\xd1\x5a\x92\x26\x6a\xf3\x00\xc4\xcb\xc3\xe1\x10\x6b\x4c\x6d\xae\x9a\x85\xcd\xd6\xef\x3b\xaf\xc5\xe0\x3a\x4a\x06\xc4\xc7\x27\x79\x2d\xd0\xd6\x51\xc2\x5a\x0b\xbc\x6b\x69\xe0\x6d\xb1\xb4\xd9\xae\x3e\xf5\xf3\x6b\x01\x1c\xfd\xc0\xa4\x10\x7d\xf1\x9c\x93\xf4\x43\x87\x24\x36\xe4\x04\x07\x72\xad\x16\x40\x2b\x09\x9d\xf5\x61\xe6\xe2\x98\x85\x21\x7e\x95\x33\x39\x15\x67\xd7\x3a\x36\xd7\x31\x3d\x1e\x7d\xe5\x39\x5d\xb3\x99\xe3\xaf\x26\xa7\xfe\xc7\x68\x3c\xd1\xa7\x2b\x4d\xd6\x5a\x25\x6f\xc4\xb0\x5b\x90\xd1\x31\xb6\xb3\x1b\x1d\x57\xb8\x4c\x58\xb0\x3d\x2c\xd8\x9e\xdc\xe6\xea\xed\x61\xe1\xf6\xac\x1a\x07\x69\xc0\xfc\xd5\xaf\x1d\xaa\xb2\x25\xf7\x5d\xb3\xaa\xdc\x98\xda\x61\xcb\xfd\xcc\xca\xd1\x89\x0d\xf4\x94\xa1\x4e\x34\xa7\x59\x46\x98\x84\x8c\x53\x47\x66\xf7\xfb\x71\xea\x75\x9e\xf8\x23\x39\x12\x58\x3c\x5a\xd5\xe3\xb8\x89\x41\x52\x4f\x1b\x89\xef\x57\xf5\x48\x71\x5e\x31\x3b\x15\x91\x1c\x6f\x19\xc7\x3b\x6f\x1c\x6f\xc1\xe8\xdc\xfe\x3e\xe2\x98\x9b\x51\xd8\x99\x9f\x72\xdb\xbc\x5b\x0d\x6e\x46\xe1\x22\xc7\x79\xc5\xec\x28\xb8\x1c\x85\x3c\xae\xbd\x24\xa1\xfd\x7e\x2c\x36\x1b\x6e\xb9\x0d\xfa\xc0\xf9\x24\x24\x55\xae\x06\xa7\xa9\x88\xc7\xe9\x04\x59\x68\x1d\xa4\x56\xf6\x10\xab\x80\xd0\x96\x89\x92\x26\xc7\x0f\xd3\xef\xa9\x09\x41\x93\x1e\x1d\xa1\x22\xa1\xe3\x74\x82\x8b\xa1\x3e\x89\xfe\xfa\x17\xfe\x49\xa8\x97\x90\x2b\x53\xf8\x1b\x4e\x86\x3f\xbd\xf8\xf9\xf9\x9b\xb3\xd7\xcf\x7f\x39\x7b\xfd\xf8\x0f\xcf\x13\x32\x7c\xf6\xea\xe5\xd9\xb3\xe7\x3f\xbd\x7d\xdc\x4c\x90\x65\xc3\x12\x2f\xfe\xfa\xfc\xa7\xd0\xad\x9f\x48\x8e\x3b\xcd\x22\xa2\xd3\x68\xe7\xa4\xd3\xe8\xeb\x7e\xa7\x31\x9e\x07\x1a\x6b\xd7\x7d\xd8\x7b\xad\xdd\xc4\xb8\x07\xdc\xdc\x7d\xd2\xf0\x91\xad\x63\xab\x47\x74\xc6\xd3\x05\x89\x24\x5a\x53\xf2\x69\x12\xfd\x47\x84\x89\xc6\xb4\x96\x16\xa1\xb2\x44\xbb\xcd\xbb\xa4\x25\x3d\xa7\x39\x15\xd7\x89\x39\x79\x36\x4f\x11\xd6\xd1\xf1\xf2\xa3\x4b\xd3\xce\x0a\xc2\xc4\xf3\x82\x67\x84\x27\xca\x04\xa0\xe6\xca\xd8\x8f\xe0\x4a\x90\x5d\x46\x15\xaf\x11\x40\x06\x5c\x49\x53\xa9\x23\x94\xd3\x1c\x84\x05\x78\xa0\x24\x71\xf4\x7d\x2f\x2b\xa6\xe2\x7a\x49\xba\x73\xb1\xc8\x1f\x7d\xaf\xff\x25\x69\xf6\xe8\xfb\x7b\xea\x8f\xec\xe9\xd1\xf7\xe5\x32\x65\x8f\xfe\xfa\xfd\x3d\xf8\xfb\xfd\x3d\x95\x78\x0f\x8a\x47\xb2\x3d\xe5\x9b\xc7\x90\x16\x9a\x9b\xc7\x13\x36\x9c\x51\x5e\x1a\x06\x1e\x8c\x74\xa8\xf8\x12\x1a\x5e\x85\x13\xf2\x83\xc8\xda\x17\xb7\xcb\x5b\x50\x92\x69\xca\xee\xa5\x6a\x71\x7f\x1f\xed\x08\xdd\x9a\xf2\xb1\x18\xaf\x17\x45\x46\x72\x30\x3c\xc7\xcb\x94\x97\xb6\xfd\x11\x49\x1e\xa9\x0a\x6f\x04\xa7\xec\x62\x38\x4d\x17\x24\xa7\xbf\x92\x38\x9a\xa6\x6c\x10\x1d\x11\x84\x25\x8e\xa0\xa6\x22\xc7\xec\x9b\x79\x5f\x10\xe3\xb9\xcc\x6f\x13\x1c\xf2\xef\xe3\x30\xcb\x05\x9a\x6a\x40\xfc\x19\x57\x48\xef\x41\x0d\xa9\x31\x73\x48\xc4\x66\x43\xb4\x2b\x3a\x33\x98\x58\x04\x91\x83\x75\xd1\x56\xbf\x17\x79\x51\x7c\x58\x2d\xe3\xa8\x24\xfc\x92\x4e\xc9\x68\x9a\xb2\x08\x99\x2e\x7f\x54\x7e\x07\xed\x32\x21\x54\x21\x34\xe4\x24\xcd\x5e\xb1\xfc\x3a\x46\x5b\x0e\x8d\xc6\x57\xef\xc9\xb6\x7e\x1f\xb5\x1a\x18\x80\x3d\x38\xd3\x94\x69\x37\x3d\x94\x41\x37\x7a\xb2\x31\xc2\x7a\xa2\xfa\x54\xe9\x7e\x41\x3a\x01\x29\x7a\x41\xd5\x8a\xe7\x44\x8c\x39\x66\x93\x84\xe0\xb5\xae\x07\x25\x69\x58\xb1\xd0\x2e\x98\xa6\x29\x53\x67\x2a\xe6\x08\xa7\x2e\xcd\x5b\x5b\x8a\x19\x16\xee\xc5\x49\xd2\xda\x21\x2c\x8c\x23\x4a\x75\x69\xf5\x09\x76\x61\x8b\x75\x6e\x9a\x65\xf5\xac\x14\x17\x08\xa7\xe3\x62\x52\xe1\xcc\x7a\xd1\x0b\xfc\x73\xee\x6e\xb2\x25\xd4\x4c\x85\xdb\x3a\x82\x95\x51\x8b\xeb\x5c\xe0\x50\x52\x2a\x8f\x84\x66\x9d\x46\x24\x5c\x23\x51\x21\x7d\x64\xd3\x2c\xb3\x6d\x29\x27\x86\xba\xca\x30\x3a\x52\xbe\x64\x70\xc4\x89\xde\x87\x48\x0e\x62\xcb\xc0\x4d\x18\x62\xc8\xdd\xde\xa4\x72\x24\xe3\x86\xd2\xec\x42\xfb\x76\x53\x55\x8c\x6f\x05\xdd\x80\x5d\x4b\xbc\x7f\xca\xed\x47\xaa\x3a\x0c\xac\x78\x57\x88\x15\x22\xf4\xa5\xdd\x7e\xd1\x3e\x77\xe0\x31\x20\xe1\x13\xeb\xe7\xd6\x5d\x2e\x7d\x45\xcc\xf1\xea\x6d\x3f\x40\xc1\xc4\x5b\x62\x94\xc9\x29\x19\x85\xf9\xd6\xf9\x9a\xd7\xe8\x13\xcf\x75\x6b\x85\xc7\xe6\xf5\x5b\x87\xbe\x3b\x2e\x88\x68\xf3\x1a\x62\xe6\x56\x55\x68\xdb\xe4\xac\x9f\x8f\xf2\x1e\x18\x08\x0f\x6c\x66\xdb\x9c\xb5\x53\x22\xbe\x67\xc2\x41\x44\xbd\xdb\xb8\x80\x76\xe3\x4a\x78\x63\xe7\x5d\xec\xe4\x21\x27\x80\xdc\xac\x65\xf9\x58\xfb\x11\x6c\xdb\x69\x1d\x1b\x97\x88\x38\x5a\xe6\x2b\x0e\x2d\x67\x6f\xaf\x97\xc4\xde\xa4\xc8\x5c\x4a\x4a\x4a\x88\xfa\xa0\xb9\x60\x6b\x37\x94\x11\xaf\x76\xf3\xb8\xe4\x8a\x6a\x48\xde\x78\x6b\xda\x4e\x8d\x9f\xa6\xf8\x2b\xac\xe0\x0b\xe8\x6b\xaf\x73\xf9\x4f\x73\x7f\x8c\x7f\xec\x37\x6a\xd4\xf6\x0e\x01\xd4\x97\x68\x4c\x2d\x70\x8e\x7d\x9f\x7e\x34\x0e\x80\x15\xbe\xdd\x20\x93\xef\xb7\x92\xc9\xf7\x7d\x32\xf9\xfe\x64\xb4\xae\x30\x6b\xf7\x7e\x35\x4b\xa7\xa2\xe0\xd0\x8d\x01\x96\x23\x89\x37\x39\x46\x0d\xf8\x8c\x4b\xea\xce\xee\x34\x4e\x26\x2a\xcc\x91\x42\x4c\x69\xc2\x34\x6a\x1f\x73\xfb\xb2\xd1\x4a\x79\xbb\xd7\xd3\x50\xdc\x00\x55\xda\x07\xaf\xe0\x45\x17\x32\x71\x91\xd0\x61\x80\xb3\xd9\xa6\x3c\x18\x5c\x54\x78\x9a\xfa\x7e\xfd\xd6\x21\xb8\xc5\xc1\x2b\xad\x9f\x65\xf5\x24\xdb\x06\x7b\x0a\x5e\xd9\xe1\x31\x4c\xa1\x39\x68\x9a\x15\x22\x74\xb4\xdf\x33\xaf\xb8\x4e\x0e\x41\xda\x96\x33\x5a\x3f\x6b\x2d\xc7\x94\xb2\x99\xf2\x79\xf9\xf9\xc0\x78\x5d\xf9\x00\x58\x54\xcb\x9c\x8a\x38\xea\x46\x08\x43\x74\x79\x31\x2c\x29\xbb\x58\xe5\x29\xa7\xbf\x12\x14\xb3\xe1\xb2\x58\xc6\x08\xfc\xcb\x8f\x99\x3e\x6b\x83\x93\x49\x47\x22\x52\xd3\x7c\x95\x91\x32\x2e\x40\xea\x0f\xe5\xf4\x8a\x86\x9b\xd0\x8e\x98\xb3\xe1\xdf\x0b\xca\xa0\x67\x54\xdb\xa5\xaa\x63\xd8\x75\xe3\xa8\x98\x45\x38\xa2\x2c\xc2\xd1\x0c\x74\x4f\x44\x21\x7f\xf2\x62\x61\x74\xcd\xd3\x32\x9a\xb4\x2c\x3a\x30\x62\x4b\x22\x06\xd3\x82\x65\x54\x5b\xbe\x5d\xa6\x39\xcd\x40\x51\xaa\xbc\xa7\x7f\x17\x12\x0c\x17\x0b\x22\xe8\x82\x7c\x4e\xf6\x6a\x3b\x53\x9c\xce\xe2\xc7\x9c\xa7\xd7\x43\x5a\xc2\xdf\xd8\x5d\xd6\xe3\x09\xb2\xcf\x8a\x9f\x3a\x5c\xa4\xcb\x98\x3b\xaa\x2d\xac\xe2\x3f\x04\x8e\xca\xf1\xa3\x1b\xa8\xf0\x18\xea\x00\x94\xc9\x5a\x22\xf5\x44\x47\xb3\xb2\x3b\x1a\x0d\x23\x64\xf4\x53\x2c\xb0\x88\x0b\xac\xe2\xbf\x3a\x80\x60\x78\x2a\x46\x74\x67\x8f\xd3\x30\x42\x98\x25\x5c\x1d\x0a\x4c\x13\xae\x37\x5b\xa6\x97\x41\x93\xd4\x5e\xeb\xb2\xdf\x2f\x87\xf3\xb4\xf4\x3c\x2e\x35\x53\x62\x86\x4e\xc5\xc8\x35\x90\x62\x47\xc0\x16\xf5\xb2\x04\x9d\x86\xa3\xaf\x57\x34\x71\x2b\x7a\x42\x85\x66\x28\x61\x69\x36\x1b\xe2\x2d\x54\x55\xb5\x91\x38\xf6\x78\xf9\x47\xca\xe2\x62\x26\xb7\xf5\x39\x32\x99\x2d\xc5\x0f\x7e\xe3\x89\x86\x76\x63\x86\xe9\x24\x21\x7a\x1a\x70\x7d\x6d\x6b\x28\x86\x5c\x09\xa2\x6e\x71\x5e\x6d\x33\x2d\xe8\x40\xf0\x90\x69\x42\x4b\x4d\x46\x02\xfc\xdd\xc0\xb0\x75\xe1\x5a\x30\x3e\x9d\x4d\xb2\xc1\xa1\xcb\xf3\xe9\xf0\x5b\x45\x10\xff\xd9\x00\x88\x3d\x18\x6b\xeb\x8c\x14\xc0\xbf\x20\x62\xb0\x20\x65\x99\x5e\x84\xb0\xc5\x9c\x85\x0b\x05\x9f\x66\xf4\xa2\x79\x3c\x5a\x9a\x73\x4d\x1d\x50\xf8\x8a\x8a\xf9\x40\x8f\xbb\x6c\x22\x37\xf2\xf9\xfd\xe4\x30\xcd\xe8\x81\x34\x90\x93\xe3\x56\xe4\xe4\xd8\x47\x4e\x8e\x27\x23\x4e\xfe\xb1\xa2\x9c\xfc\xbd\x1c\x12\x26\x38\x25\x25\x16\x49\x2f\x6e\x34\x76\xd2\xda\xd8\xc9\x04\x6d\x36\xfe\x27\x2e\x13\x8b\x48\x81\x8b\x71\x13\x5e\x82\x96\xaf\x39\x29\x09\x13\x71\x6a\xb9\xc2\x29\x40\x30\x13\x67\xe4\x71\x4c\x63\x82\xd0\x70\x46\x59\x16\x93\xe4\x11\x01\xf1\x76\xa7\x5e\x3d\x47\xfd\x7e\x5c\xca\x57\x93\x39\x8c\x4d\x4f\x42\xad\x58\x9c\x23\x93\x83\x4b\xc7\x58\x4e\x93\x12\x97\xfa\x95\x5b\x7f\x20\xd7\xa5\x44\x4d\xd4\x06\xe0\xc2\x23\xb0\x94\xa6\xe4\x6b\x4e\x66\xf4\xe3\x51\x74\xcf\xdf\x64\x7b\x16\x3a\x8a\x07\xad\x08\xcb\x9b\x1c\x4e\x65\x3d\x3a\x58\xac\x72\x41\x97\x39\xf1\x4b\xdc\xf5\x2a\x06\xd4\xc8\x9d\x8e\xc4\x78\x82\x85\xdd\x14\x82\x86\x9c\xc8\x45\x92\x7b\x12\x9d\x17\x45\x4e\x52\x08\x36\xab\x0a\x88\xeb\x25\x79\x35\x8b\x09\xea\xf7\x1d\xb2\x78\x6c\xb3\x81\x7d\x85\x23\xd5\x7d\x84\x36\x1b\x71\x97\x50\x39\xde\xec\x15\x22\x2b\xf7\x71\x44\x31\x23\x57\xa0\x0f\x34\x2a\x70\x91\x67\xea\x67\x8a\xf5\xc2\x8d\x4a\xac\x79\xc6\x46\x17\xd0\x4e\x0d\x9e\x75\x79\xd4\x62\x1b\xbe\x0a\x21\x78\x6e\x4d\x91\x15\x1a\xa6\xec\x3a\x16\x70\x00\x8b\x05\x2d\xad\x6f\x7d\xcd\xd6\xfb\xe5\xcd\x9f\x5f\x0f\xe5\x33\xb6\x42\x43\x31\x27\xcc\xc3\xbe\x79\xbc\x6a\xe5\xd4\x1d\x04\x6c\x9a\x70\xcb\xc3\x9d\x6c\xb1\xcf\x1e\xf5\x5c\xa3\x84\x0d\x67\xdb\xf6\xea\x05\xcf\x92\x2e\xc0\xf1\xfa\x3c\x4f\xd9\x87\x91\xbb\x54\x4b\x75\x7b\xb1\xfe\xeb\xe5\x40\x49\xac\x9c\x06\x83\xa7\x47\x5a\xb0\x1f\x8b\x3b\x9f\xe1\x28\xea\x04\xfb\x64\x31\xe1\x25\x15\x40\x0e\xc4\x41\x7a\x96\x96\x73\x22\xb1\x6f\x79\xde\x15\x3e\x75\x6f\x3c\x3c\x1b\x4c\xee\x5d\x20\x0f\x67\xde\x4f\x77\xec\xd8\x5c\x51\x0c\xe4\x8d\xfe\x4d\xf1\x5d\x23\x00\x12\x1a\xd2\x39\x47\x99\x43\x51\xd8\x35\xc9\x73\x8f\xd2\x23\x5d\xca\x4a\x91\xb2\x29\x29\x66\xdd\x67\xa9\x20\x9b\x4d\x54\x40\x65\xe7\xaf\x9b\xf4\xfb\xd1\x58\x25\x42\x91\x09\x28\x40\x9f\x92\x51\xc3\xb3\xb7\xac\x6d\x4a\xfe\x0c\x79\xba\x2c\x23\x57\x50\x35\x26\x68\x14\x47\x25\x0c\xc5\x05\x33\xf5\x3b\x50\xc3\x9c\x80\xf2\xc9\x66\xe3\x85\x3e\xb5\x9d\xc8\x39\x16\x39\xd9\x6c\x62\xfd\x6b\x78\x95\x72\x16\x47\xaf\x73\x92\x96\xa4\x2b\x57\xf5\xbd\xec\x4b\x11\xa1\xef\xbb\xa2\xe8\xc2\xaf\xae\xea\xb6\x94\x18\x72\x50\x33\x86\x08\xae\x9c\x17\x1c\x0d\x4b\x91\x4e\x3f\x20\x84\xed\x80\x7f\x4e\x7f\x46\x37\xbd\xd8\x2e\x65\x40\x64\xb3\x9f\x02\x33\x09\x10\x9d\xcf\xc8\x48\x69\x40\xdd\x2e\xf5\xa1\xbb\x7d\x6b\xa3\xd6\xc1\x0e\x79\x7a\xf5\x6a\x25\x96\x2b\x21\xc1\x7f\xef\x04\x17\x49\xc8\x6d\x41\x38\x4d\x8a\x61\x13\x00\x28\xba\x87\x0d\xf5\x14\x0d\xd8\xb5\x09\xa0\x08\x2c\x0f\xc0\xa8\xd4\x31\xfd\x72\x05\xe8\x3f\x8a\xd1\x2a\x59\x57\x55\x02\x1a\xc8\x2b\xdb\x80\xa6\xad\x6c\x82\x52\xdf\xd7\x93\x73\x87\xc9\x72\x7b\x44\x4c\x54\x40\x43\x07\xd1\x1d\xd5\x33\x2b\xf8\x22\x15\x2f\x55\x4b\xb1\xc0\x21\x84\xcc\xdc\x54\x46\x69\x85\x57\x08\x55\xb2\xcd\x69\x40\x85\x95\x8e\xb9\x72\x1a\xaf\x1a\x30\x76\x85\x6b\xcd\x20\xb3\x3f\x39\xd6\xd3\xd6\x13\x19\x4d\xdd\xc4\x2b\x34\xaa\x0f\x6e\xba\x7f\x70\x37\x3b\xcc\x21\x96\xfb\x1b\x82\xb3\x3b\xbe\x09\xf2\xe1\x6a\xd6\xdd\x86\xd9\x9e\xfa\x1f\x23\x17\x6e\x31\x58\xcc\xc6\xc3\x88\x80\xc4\xbd\xd9\x72\xf2\x74\xf9\x1b\x3f\x0a\x16\xc3\x31\x2c\x90\x3a\x5a\xf3\xd8\x7b\x10\x4c\xca\x98\x4c\x0e\x9f\x9a\x87\xad\x00\x48\xe3\x8b\xb4\x6e\xf5\x73\x08\x8c\x6b\x81\x9b\x0d\x74\xe8\x37\x81\x7d\x77\x3e\x7a\x9d\x3a\x5b\xa8\xc6\x14\xba\xa5\x0a\xd6\xba\xb2\x81\x1a\xdd\x29\x2c\x71\x8a\xf0\x4a\xc1\x59\x43\x48\x20\x1d\x56\xc1\x6e\x04\xc5\x04\xe7\x98\x59\x86\xac\x44\xda\x57\x9b\x4d\xec\x09\x1e\x50\xcc\xb0\xc4\x61\x6f\xb1\xe9\x75\x4c\xe7\x6e\x9b\x7d\x03\x68\x74\x03\x44\xec\x5f\x82\x3e\x77\x27\x87\x24\xf5\xf8\xfe\xeb\x34\xcf\x8b\xab\x27\x80\x6b\xf7\x4e\x30\x2c\xda\x8f\x00\xfb\x47\xd1\xcb\x97\x2f\xbb\xcf\x0a\xdc\x7d\xf7\xee\xdd\xbb\xa8\x42\x38\xe6\xa0\xe3\x0c\x54\x93\x57\x2d\xad\x12\x82\xd7\xe7\x64\x56\x70\xf9\xa2\x14\xec\x15\x7f\xa2\x3e\x72\x9c\xce\x04\xe1\xa3\x15\x24\x3e\x86\xdf\x53\xfb\xe4\x64\xb2\xde\x3c\x89\x60\x21\xe5\x4b\x9a\xf6\xfb\x4a\x53\xb1\x08\x95\x80\x67\x35\x52\xbd\x70\xaf\x5e\x3c\x43\xa7\x65\x0b\x35\x5f\x22\x9c\x25\x99\x44\x1c\x9f\x3c\xff\xf1\xd5\x2f\xcf\x27\x5d\xd9\x4b\x97\x96\xdd\x9f\x5f\xbd\xed\xaa\xb1\x76\xa3\xa3\x42\xf6\xaf\xbe\x22\x3c\x7b\x94\x94\xe8\x34\x3c\xbc\x1c\x2b\xfc\x60\xae\xf1\x83\xc2\x3e\x93\x6e\xc2\x6e\x3e\x15\x1a\xe5\xfd\x7e\x9c\xd7\x06\x93\xdb\xc1\xbc\xfa\xb9\xfb\xea\x97\x6e\xdb\x90\x0a\xd6\x2d\x78\x6d\x60\x6e\x25\xe5\xe0\xf2\x1b\x8c\x2d\xd8\x83\x60\x7c\xab\x7e\x3f\x5e\xd5\xc6\xb7\xb2\xe3\x7b\xfc\xe3\xdb\xe7\xbf\x84\x03\x83\x1d\x34\x23\x82\x8f\x08\xcf\xbe\x4f\x56\x37\x18\x8d\x39\x04\xc1\x40\x7a\xf1\xb4\xdf\x8f\xa7\xb5\xa1\x4c\x6b\x4b\xd5\x32\x20\xb5\x52\xc1\xb0\xec\xe9\x92\x43\x9b\x22\x54\x07\x41\x7b\x56\xaa\x79\x30\x2b\x34\xda\xdd\x42\xc4\x0a\xd1\x4d\xbb\x0a\x44\xd9\xc6\x4c\xeb\x7e\x43\xa0\xff\xec\x5d\xab\x86\xc6\x1d\xf5\x18\xfe\x0d\xc2\xa9\xdf\xef\xd1\xf2\xe7\xf4\xe7\x98\xa0\x2a\x6c\xa6\x7e\x3b\x51\xe7\x86\xe0\x95\x7c\x9c\xe6\xab\xf2\xff\xf6\x83\x4a\x86\x39\x2d\x45\xbf\x0f\x42\x94\x44\x7d\x19\xe0\x22\x5f\x57\x63\xcb\x54\x34\x1e\x42\x6f\xf5\xe4\x2b\x08\x1a\x23\xe1\x43\x58\x34\x1f\xc2\xe2\x76\x0f\xa1\xc2\xc5\xff\xef\x6e\x13\x66\x49\xcf\xe0\x9a\xcf\x17\x4b\x71\x1d\xfb\xf1\xca\x89\xe5\xcf\xc6\xca\x06\x07\xc2\x1c\xb2\xf0\x09\x49\x1b\x1b\x68\x16\xb5\x30\xbb\x47\x83\xdd\x4b\xeb\xbb\x47\x95\x4c\xe9\xe6\xbb\x07\xd2\xb9\x7f\xdf\xb3\x5b\xde\x33\x6f\xf5\x3e\xfb\x3d\xdb\xae\xc0\x74\x18\xaa\x7a\x68\x69\xc5\xc1\x9c\xde\xa0\x86\x66\x7e\x1f\x5c\x5e\xb3\xd0\x0e\x2e\x6f\x2e\xc3\x2d\xce\xf4\x2d\x9e\x9b\x5b\x51\x7d\x2d\x98\x36\x76\x2c\xf7\xcf\xa5\x46\x66\x4e\xe2\x33\xd8\xe0\x1b\xeb\x92\xed\x6f\xf8\xb5\x3d\x0b\x07\x35\xce\x6f\xd4\xf8\x4f\xfa\xd8\x1c\xd4\x34\xbb\x51\xd3\x3f\xeb\x13\x76\x50\xd3\xf4\x46\x4d\xff\xa8\x0f\xe3\x41\x4d\x17\x37\x6a\xfa\x85\x3b\xb7\x07\xb5\x9e\xde\xa8\xf5\xe7\x1f\x6f\xd6\x7a\x79\xa3\xd6\x9f\x06\xa4\xf7\x41\x1d\xe4\xbb\xd5\x1a\x0f\x85\x3a\xbf\x1f\x09\xbe\xeb\xa1\xfb\x97\xa3\xb4\x57\x25\x79\x42\xc4\x15\x21\x4c\xb3\x55\xd5\x28\x62\x5e\x7b\xff\x98\xff\xfe\x99\x3d\xb0\x8f\x1f\xdf\xfd\xf8\xf1\xdb\x3e\x7e\xe6\xc9\xf8\xf7\x66\xdf\x04\xaf\xd9\xc2\x4f\x51\xf2\x26\x79\x31\xe1\xf3\xe7\x82\x91\x51\xef\x44\x99\x84\x58\xc6\x09\xa0\x43\x36\x3f\xe9\x1d\x5b\x8c\x68\xe7\x89\x30\x1b\xf5\xd9\x4f\x84\x43\x53\xfe\x45\xf1\x56\xa3\x2e\xd9\xf1\x74\x0e\x8c\x70\xf0\x94\x24\x6b\x33\xc1\x11\xa9\x46\xc4\xdb\x72\x32\x2c\x58\xbf\x6f\x25\x8a\xae\xd2\xb0\x60\xa7\x2c\x19\xcb\xbf\x93\x51\xa8\x00\x28\xd3\x20\x0a\x30\xd4\x96\x6b\x9d\x13\x41\xa0\x8a\x4f\x9e\x68\x74\x45\x11\x29\xac\xdf\xef\xb1\x61\x59\x2c\x48\x4c\x92\x47\xe5\x98\x4c\x3c\xcb\x79\xf9\xd9\xef\xe7\x63\x32\x41\x21\x29\xd3\x64\xca\xba\x8d\x6a\x12\x33\xcd\xa9\xaf\xc0\x16\x3f\x9c\xd9\xea\x74\x35\x32\xed\x80\x4f\x86\x15\x68\x65\x9c\xaa\x3f\x49\x04\x12\xf6\x68\xa4\xff\xda\xfc\x7e\x3f\x36\x25\x4c\x5d\x84\xeb\x64\x13\x08\x87\x76\x1c\xbf\xa6\x3e\xdd\xe0\x82\x1c\x1c\x28\xd1\xb2\x51\x84\xde\xee\xb1\xc0\xdc\xa9\xd6\x75\xc1\x1b\x44\x7c\x47\x5d\xba\x3f\x10\x91\x88\x6d\x7a\x67\x6d\xea\x74\x62\x9f\xb9\xc4\x8e\xc9\x37\xf4\x0f\xef\xa4\xc7\x43\x7c\xe3\xa7\x0e\x9d\xc5\xb0\x3d\xb4\x7c\xea\xd4\x0d\x3d\x1b\xdb\xe4\x11\x18\xc6\xc4\x0c\x93\xbb\xad\xd8\x9b\xcf\xa6\x80\x78\x43\x6d\xcd\xc3\xd6\xaf\x01\x7e\x3c\x7b\x58\xe2\x6b\x6c\xe2\x16\x43\xf7\x83\xa5\x7f\xf2\xca\x23\xab\xf2\xc9\xc3\x5d\x60\xe8\x94\x8d\x74\xb2\x5a\x79\x14\x53\x60\xb2\x72\x4f\x73\x08\x8a\x29\x2d\x21\x65\x73\x20\x86\x5e\x1b\x04\x43\xf1\x9a\x1e\xa4\x6c\x07\xfc\x8e\x68\xa6\xa6\xdf\xe9\xee\x0a\xa3\x96\xde\xf5\x6f\x13\x75\x3b\x66\x68\xc7\x70\x28\x5e\x57\x5b\x3a\xd6\x59\x77\xd3\x71\x65\xed\x47\x8c\xb6\x1e\x31\xe6\x1f\x31\xba\xeb\x88\x1d\xa8\xd7\xda\x54\x0d\x36\x2a\x58\xfc\x82\x0c\x32\x42\x96\x5b\x8b\xd0\x72\xa0\x15\x62\xf6\xa3\x3a\x30\x23\xf3\x74\xe0\x15\x9e\xe2\x0c\xcf\xf1\x0c\x2f\xdd\x29\x5d\xb8\xaa\xbc\xdf\xdf\xb6\xa4\x22\xa0\x1a\xf8\xd0\x7d\xe0\x20\xe0\x31\x1f\xfa\x9f\x2e\xdc\x31\x1f\x9a\x9f\x9a\x0b\xce\x3d\xf3\x23\x7e\x1a\x7c\x29\x95\x20\x86\x46\x6a\x5b\x2a\x54\xd9\xc1\x5e\x86\x86\x19\x5d\xd1\xa5\xac\x4b\x4e\x77\x8c\x5a\xf7\x56\x0b\xc3\x5c\x0f\xd2\xec\x85\x65\xae\xd0\x88\x8c\xc5\x44\x82\x20\xd7\xef\x85\xe3\x1b\x28\xb7\x36\x45\xe2\xf0\x75\x9f\xa3\xc8\xd0\x70\x56\xf0\xe7\xe9\x74\x1e\x07\x0f\x4f\x31\x26\x93\x84\x8d\x09\xd8\x2d\x14\xde\xf2\x25\xbd\x9e\xff\xa9\xdc\x12\xd8\xb1\x41\x6e\xb0\xa2\x71\x04\x33\x8a\x28\xeb\x16\x9b\x4d\xe1\xaf\x9b\xc4\x21\x0a\xbb\xce\x12\x29\xc4\x45\xc2\x87\x65\x0e\x46\xaf\x43\x4e\x2e\x09\x2f\xd5\xaf\x6c\x35\x25\xde\x00\xd5\xee\x6b\x5a\x5e\x2f\xf1\x66\xc3\x2b\x84\x0b\x84\xa9\x07\xa3\x82\xfe\xa0\x3b\x18\x4d\x98\x7e\x5a\x34\x77\x93\x9a\xdd\xc4\x41\xa6\xbe\x79\x08\x5b\xdc\xa5\xde\xc3\xf6\xad\x2d\xc0\x42\x65\x95\xe7\x08\x17\xb7\x01\x05\xe7\x2b\x9a\x67\xaf\xb4\xc2\x66\x99\x5c\x07\xd0\xe1\x39\x26\x0e\xe6\xb4\xb8\xf0\xbc\x25\x24\x3f\xc7\x77\x33\xe3\x6a\xd4\x7d\xd0\x5a\xf7\x81\x5f\xf7\x01\x3c\x20\xc6\x0b\xcb\x73\xe7\xd3\xc2\x6c\x38\xb9\xea\xbe\xe6\xc5\xc7\xeb\x98\xe2\xf5\x05\x11\x23\xc0\x0a\x92\x47\x44\x2b\x58\x19\x4d\xbd\x18\x21\x5c\xea\x6c\xcc\x51\xf2\x28\x26\xf0\xe0\xfb\x25\x30\x47\xb8\x77\x8c\x2a\x14\xba\xf2\x04\x90\xea\x96\x33\x50\xef\x3c\x4f\x62\x94\x3c\xea\x79\x52\xad\x6b\x73\xc9\x55\x01\x66\x94\x07\xb5\x81\x19\x6c\xb9\xf3\x67\xda\x05\xa5\x29\x36\xa6\xf2\x02\x4e\x12\x2e\x9f\x0e\xf9\xd3\xcd\xcf\x5d\xe3\xb3\x36\x03\x19\x9b\xd4\x8b\x7b\x64\xb3\xe9\xc5\x81\x24\xcd\xf7\x49\x00\xab\xb4\xd9\xb4\xe4\x03\x22\x0f\xd9\x08\x55\x31\x41\xa7\x67\xb1\xd3\xb5\x22\x38\x32\xfe\xde\x11\x1a\x91\x4a\x79\x7c\x8c\xcd\x4b\x73\x26\x78\x3a\xfd\x40\x32\x5c\xd4\x13\xd2\x7a\x82\xb1\xa3\x39\xcb\xc8\x92\xb0\x8c\x30\xf1\xdf\xe4\xfa\x69\xb1\x58\xa6\xc2\xea\x61\xb4\xe5\xad\x76\xe4\x4d\x77\xe4\x65\xc9\x34\x4f\xcb\xb2\xab\x2c\x16\xcb\xae\x18\x3e\x59\xcd\x66\x84\x93\xcc\x6e\xa6\xda\x24\xbe\x9a\x0a\xd0\x9a\x6d\x33\x0b\x5d\x68\x7b\xec\x33\x7d\xbd\x22\x3c\x07\x53\x51\x2f\xc7\x10\x7b\xb3\x7a\x86\x8d\x7d\xbe\xd4\x39\x97\x3a\xc7\x60\x3a\x91\x27\x02\xb6\x99\x10\xdf\xfa\x4f\xec\x8a\xa7\x4b\xd8\x94\x08\x9f\xb9\x4c\xd0\xf5\x93\xef\xab\xdd\x21\x54\x95\xe9\x8c\xfc\x01\xb6\x4a\x34\x1d\x27\x40\x2a\x14\x79\x43\x6a\x96\x81\x5d\x6b\x10\x6e\x4c\x03\x2f\xe4\x99\x2c\x01\x1f\xf2\xb8\x75\x72\x55\x86\x3a\x59\x17\x79\xc1\x2e\xdb\x0b\xe9\x0c\x5d\xec\x35\xa7\xa5\x90\x98\x46\xa3\x9c\xc9\xd1\x05\x9f\x51\x09\xf1\x1a\xa5\x20\x19\x8a\xc8\xdd\xa5\xec\xe2\x59\x2a\x52\xcb\xbe\x50\xb6\xbc\x7a\x91\xb1\x30\xdf\x6a\x9f\x30\xab\xb1\x28\xc2\x7b\xe8\x02\xe6\xbf\x36\x5a\xbd\xa0\x8a\x8f\x30\xc1\x6b\xbd\xa0\xce\xfa\x0a\xeb\xf5\x1b\xd9\x15\xab\x50\xc7\x43\x68\x3d\x11\x8c\x38\xb0\x7a\x95\x66\x19\x68\xc9\x06\xdb\xa6\x26\x1e\x64\xe9\x9d\x66\x85\xa0\xb3\x6b\xf3\x38\xa8\x13\xac\xce\x04\x41\x58\x54\xcb\x55\x39\x87\x3a\xa5\x04\x09\x12\xbe\x28\xe7\x12\x75\x98\x8b\x79\x22\x41\xa6\xa2\xdd\xc5\xa3\x93\x53\x31\x38\x19\x1d\x23\xcc\x92\x93\x87\xec\x7b\xf1\x90\x1d\x1d\x21\x3e\x66\x83\x93\x89\x07\x91\x99\xf6\x55\xa5\x9f\x20\x8a\x1d\xa7\x63\x54\x54\x89\x1a\xb4\x3f\x02\x3c\x1c\x0e\x79\x4d\x09\x6e\xe7\x04\xda\x5b\xae\xce\x9c\xb3\x82\x6b\xe3\xd7\xed\x03\xb9\x1e\x09\x83\x87\x39\x9b\x05\x56\x25\xa4\xa3\x46\x12\xd4\xda\x5e\x7e\xff\xca\x0a\x54\x9d\xa9\xdc\x3f\x53\x2e\x56\x69\xee\x39\x4e\x20\x68\x1d\xc7\x44\xcf\x7d\x47\x29\xb4\xd9\x8c\x27\x0e\xaf\xb2\x7e\x5f\x76\x2d\x07\xaa\xce\x14\x1b\xe5\xbf\xc9\xf5\x9d\x5f\xed\x28\xb2\xa6\x08\x7a\xb0\x5e\xdb\x9e\x2b\x8f\xfd\x8b\x81\x79\x45\x3e\x92\xa9\xf2\x9c\x00\x57\x10\xcc\x94\xe4\xad\xd3\xd0\x41\xbb\x9e\xd0\x17\xd7\x0c\x3c\xbc\xa7\x2c\xbc\xa7\x1d\x92\x5c\xc7\xca\x6b\x86\xc1\x60\xac\xf7\x16\x09\xe9\x8c\x77\x0f\x5d\xbd\x76\xa9\x05\x66\x87\xde\xb7\xc0\x93\x88\x71\x79\xad\x83\xfa\x24\xca\xa7\x46\x55\xe1\x79\x72\x11\x67\x4e\xd3\xdf\x87\xfb\x63\x3a\xc1\xeb\x3a\xee\x1d\x62\xe6\x1e\x26\x8e\x3d\x4c\x50\x7b\xd1\xc0\xb3\x46\xe3\x56\xa1\xbd\xb8\x6b\xdb\xcb\xe6\xc0\xcd\xeb\x33\x4e\xef\xda\x78\xad\x69\xbd\xdb\x11\x1e\x97\x13\xec\x20\xa9\x67\xca\x6a\xf4\xd1\x0b\xde\x5e\x13\x61\x2f\xb9\xa5\x7d\xfd\x8c\x44\x78\x9c\xdf\xb8\x07\x53\x77\x5f\x1f\xe6\x09\x8a\xf0\x78\x75\xe3\x4e\x6c\xe5\x7d\xbd\xc0\x4d\x88\xf0\x78\x7a\xe3\x2e\x54\xcd\x5a\xfb\x99\x67\x31\xfd\xfc\x5f\x18\xa3\x07\xf3\x04\x67\xfa\xeb\x61\xf3\x5e\xb2\xc3\xf6\x0d\x01\x20\x0b\x5c\x35\x88\x00\x5a\x35\xb0\xf4\x2b\x8f\xe5\x01\x68\x60\x80\xea\x79\xb6\x3d\x92\xa4\xb8\xf5\xea\xdd\x7e\xed\x6e\xbd\x72\x2d\x94\x8f\xf8\x84\x94\xcf\x4e\x86\x75\x9d\x85\xf3\xdb\x2a\xde\x9b\x79\xaf\xf2\x5c\x79\x61\x6d\x33\xad\xaa\x11\x40\xca\x06\x2b\x48\xfa\x85\x5c\x3c\xff\xb8\x44\xfd\x7e\xaf\xae\xc6\x7f\xc0\xdc\x7d\x0e\xd7\xa7\x64\x55\x6f\x27\xeb\x7a\xad\x13\xad\xc0\x6a\xb4\xd7\x24\xed\x0f\x35\x55\xb3\x16\x62\x6a\x39\x94\x61\x99\x67\x6f\xe6\x2c\xd3\x64\x57\x95\xcf\x16\x96\x53\x11\xfc\x3a\xe4\x62\x55\xd3\x54\x4c\xe7\xb1\xf3\x3a\x72\x52\x55\xbe\xa6\x67\xe0\x91\xa4\xce\x81\x56\xbe\x3d\xf8\xd0\x11\x32\x91\x77\x5b\x87\x33\x4a\xf2\xac\x8c\xdc\xc9\xf7\xb7\xf3\x65\xba\xec\xf7\xd9\x70\x9e\x96\xb1\x30\x3e\x2f\x41\x1e\x05\x03\x95\x07\xa2\xb1\x24\xa1\xd7\x05\xbd\x30\x50\xb8\x51\xd4\xf8\x05\x79\x51\x3e\xb7\xef\xa5\xab\x80\xbc\x85\x29\x62\x82\x0b\x5c\xee\xd8\xca\x6e\xa8\xbc\x57\xc5\x85\x43\x0b\x73\x25\x18\x93\x0b\x95\xe3\x12\x81\x95\x49\x39\xd4\x68\x8c\xf3\x06\xec\x79\xa1\xd5\x6a\x40\xad\x8d\x73\xd7\x70\xaa\xc5\xa9\x65\xc2\xc7\xe9\xa4\x53\xb6\xcc\xb1\x6d\x39\x4a\xac\x39\x75\xa8\xdf\x2f\xfd\xe5\x36\xcc\xec\x53\x3a\x1e\x0f\x87\xc3\x02\xa7\x13\xe7\x2a\x63\x92\x68\xaf\x34\xa3\xb2\xe5\xd0\x96\xfd\x3e\x89\x4b\x18\xb6\xa9\x8a\x2a\x84\x69\x15\x17\xb8\xc4\xeb\x0a\x8f\x27\x60\xb6\x56\x9b\x89\x11\x4d\x23\x60\x9a\xc8\xc3\xc6\x1d\xf4\xe6\xe3\x7c\xd2\xb1\x0b\x05\xab\x27\x24\x10\x83\xa0\x04\xa0\x0e\x29\xd3\xd0\x66\xd3\xe3\x71\x31\xce\x27\x68\xb3\x91\x7f\x5a\x26\x64\x2c\xd7\x64\xb6\xb5\x59\xeb\xf7\x79\xeb\xe4\xc3\x1e\xb9\x9a\x34\x1a\x85\xc9\xc0\xfa\xb7\x2e\x74\x8c\x68\x83\x23\x54\x85\xe5\x52\xbd\xd3\xea\xe4\xe7\xe0\xae\x5d\x7f\x16\xf0\x09\x46\x66\x3e\x43\x37\xfd\x24\x8e\x95\x3a\xf6\xc2\xb9\xab\xb7\xd9\xb4\x7a\x6c\x24\x63\x31\xa9\x30\x37\xc3\x4e\xec\xaf\xb0\xbc\xc7\x5a\x50\x5c\x68\xed\x79\x3a\x09\x45\xc6\x02\x61\x5a\x4b\x22\x08\xa7\x09\x4b\x92\x84\x82\xc7\xf5\xd4\x39\x6a\xf1\x64\x47\x5d\xd1\xf1\xe0\x4e\x61\x98\x16\x0a\xf2\x94\x68\x2d\xe6\xbc\xb8\xea\x5a\xf3\xd3\x38\xfa\x13\x93\xf7\xb5\x2b\x8a\xee\x7b\x00\xdc\x92\x9e\x78\xdf\xbd\xa2\x62\xde\xbd\x2e\x56\xbc\x9b\xa5\x22\x1d\x76\x1f\x73\x22\x3f\xbb\x82\x5f\x53\x76\x21\x4b\x43\xe1\xae\xb8\x2a\x74\xd0\x75\x59\xae\xab\x8e\x73\x79\xda\xd5\x96\xb1\x33\x9a\x93\x6e\xca\xba\xb4\x2c\x57\x44\x35\x5a\x7b\x33\x86\x11\xaa\xee\x62\xb2\x9f\xb6\xbc\x47\x39\x1d\xa4\xcb\xe5\xe0\x92\xf0\x92\x16\x81\x77\xb6\x81\x76\x88\xf5\xdb\xfa\x04\xb2\xd0\xbb\x77\xd2\xb0\xd2\x42\xea\x06\xf6\xfb\xa4\xdf\xe7\xa1\xf5\xab\x79\x93\x24\x66\x46\x67\xe0\x2c\x4b\x0c\x39\xb9\xa0\xa5\x20\x3c\xa6\x12\x1f\x61\x49\xef\xb8\xb2\xae\x95\x8c\x53\x85\x9c\x9e\xf3\x94\x53\x52\xee\x5f\x1b\xf5\x62\x73\x72\x41\x3e\x7e\x36\x1b\xc1\x0e\x19\xea\xee\xd4\x3b\x9a\xdc\xfb\x5b\x76\x34\x1e\x4e\xec\xbf\xf7\xb0\x2d\xf1\x1c\xf8\x90\x24\xdb\x52\x72\x30\x4e\x07\xbf\x4e\xfe\x5f\xac\xbe\xd0\xa9\xac\x59\xce\x53\x53\x5a\xe6\xfe\x2d\x9b\xac\xbf\xab\xbe\xb8\xd7\x3e\xf7\x59\x9e\x96\x73\x3f\x02\x19\x24\x18\x33\xe7\x56\x61\xb1\xad\xd5\x1a\xc1\x2c\xac\xbf\x1b\x9d\x01\x95\x00\x5f\x33\xd5\x97\xd7\xe1\x05\xbe\xc4\x17\xf8\x1c\x5f\xe3\x33\x87\xf8\x5c\xfd\x2b\xc9\xee\x9e\xff\x4e\xb2\xbb\x8f\xff\x96\xdd\xfd\xaf\x93\xdd\xb5\x39\x0a\x59\x33\xf2\x51\x8c\x5e\xe1\xa9\x44\x35\xf2\xd1\x9b\x4a\xc3\x3b\xbe\x62\xf0\x86\xbe\x4d\xac\x2b\x43\xe3\x31\xd9\x39\x35\x8e\xe0\xa6\x0e\xcb\x79\x71\xf5\x9a\x17\x17\x9c\x94\x25\xf8\x33\xab\x95\x67\x85\x88\x23\xf2\x91\x0a\xca\x2e\xc0\x7d\x5e\x2d\x3f\x65\x59\x1c\x05\x8d\xe0\x88\x15\xe2\xb9\xad\x51\xec\x1b\x81\x6b\x3c\xad\x17\x3d\x2f\x8a\x3c\x8e\x0c\x9c\xf1\xdc\xaa\x59\x07\xd0\x91\x86\x34\x10\x1f\x20\x42\x56\x26\xe4\x0a\xa8\x4e\x84\x0a\xc4\xea\x97\x56\x1e\x87\x22\x1c\x9d\xe9\xb5\x7d\xd9\xcc\x44\x56\x90\xd4\xda\x20\xb2\xb2\xa4\x7a\xf6\xda\x5f\x12\x2c\xe8\x82\x14\x2b\x51\x45\x08\x67\x46\xf8\xa4\xa2\x73\xe3\x79\xed\x7b\x56\xfb\x5e\xd6\xbe\x17\x35\x01\x95\xca\xb5\x21\xcd\x0f\x10\x4e\x3d\xd7\x52\x21\x1d\x79\x2e\xc2\x51\xe4\x12\xf3\xf4\x1a\xa2\xfb\x3b\xa5\x34\x9b\x25\x07\x70\x49\x22\xdc\x3b\x71\x69\xc1\xea\xe3\xe8\xbc\x28\x44\x29\x78\xba\x8c\x10\xbe\xd2\x45\xc2\xb3\x71\xa9\x85\x5a\x26\xd7\x3b\x2a\xf8\xa2\x96\xe7\xd7\x7c\x92\xf2\x08\x9f\xd7\x0a\x98\x93\x83\xaf\x6b\x19\xf3\xb4\x7c\x92\x17\xd3\x0f\x11\x3e\x53\x39\x20\x0e\xda\xbe\xcf\x56\x88\x14\xcd\x8a\x15\x53\xa2\x04\xa0\x63\xe7\xb4\x1c\xfa\x73\x3c\x8d\xd2\x9c\x70\x31\x38\x2f\x3e\x76\xa3\x91\xfa\xe8\xaa\xa4\x08\xfa\x80\xdf\x6f\xaf\x97\x24\x76\xa1\x00\xa0\x15\x77\x6a\x36\x1b\xeb\x2b\xe7\xfd\x17\xeb\x46\x17\x6a\x44\x9b\x8d\xe2\x39\x6f\x1d\x72\xf5\xc5\x9a\x54\xef\xa1\x4f\x68\x5a\xf7\xd9\xea\x83\xc7\x20\x4c\x2d\x03\x51\x2b\xb3\xd4\xab\xfc\x6c\xc5\x53\x8d\x85\xc9\x67\x83\x60\xe1\x07\x2f\xf2\x67\xe2\x87\x2d\x22\x9b\x4d\x8f\x04\x80\xc4\xc5\x3e\x32\x44\xa8\x6d\x44\x6c\x69\x44\x9c\xaa\x9f\x23\x31\xd4\xb7\x05\x6d\x36\xc7\xad\x3e\x85\xe6\x62\x91\xbf\x49\x67\x24\x7e\x2f\x78\xca\x54\xcc\x84\x41\xa6\x87\x3e\xea\x7e\xb1\xe6\xd5\xa2\x7c\x8f\xaa\xb3\x45\xb1\x2a\xc9\x73\x26\x3c\xb7\xd9\xce\xaf\x99\x37\x0c\x2d\x81\x50\x2b\xa3\x63\x39\xcb\x53\x19\x9b\x36\x7e\x22\xe9\x25\xd9\xd7\x46\xcf\x6b\x44\x9f\xcc\xa0\x61\x50\x5e\x36\xcd\x6a\xe7\xae\x3f\xca\x1c\xe3\x37\x44\x3b\x1a\x86\xd2\x41\x4d\x5d\xd8\x96\xab\x0a\xf6\x34\xa7\xd3\x0f\x6e\x9b\x1e\x7a\x9b\x74\x83\x95\xd6\x0d\xbf\x52\xcd\xd5\xf6\x94\x98\x75\x69\x1f\x2c\x0c\x02\x02\x35\xac\x77\x97\x7a\x46\xb3\x17\xac\x24\x5c\x04\xde\x91\xd4\x4d\x8d\x51\xf2\xc8\x79\x55\xaf\x03\x9a\x63\x54\x19\x7f\x74\x2e\x57\x0b\x75\xdf\x10\x09\xa5\x3c\xff\xe4\x46\x7e\xee\x36\xfd\x8f\xe0\xfb\x8d\x47\x5a\x18\xe4\x32\xb6\xd5\x82\x6d\x6e\xab\x05\x19\xa0\x8f\x9e\x65\x10\xd7\xfb\x27\x49\x73\x30\xc2\xe3\x08\xf2\x55\x68\xba\x46\x3f\xba\xa9\x1d\x15\x73\xd9\x70\xb3\x2b\x53\xb1\x2a\xd8\x5f\x68\x9e\x3f\xd3\x9e\x80\x09\x5a\x13\xed\xf8\xfd\x76\xa3\xd8\x5e\x77\xcf\x40\xf0\x1b\x1d\x3b\xc2\x2e\xbe\x11\xb1\xb5\xef\x7a\x85\x2f\x93\x8f\xf1\xc2\x97\x4d\x84\xef\xc0\x98\xdf\x59\xbc\x54\xef\xc0\x7f\x4a\xc6\xec\xae\xcd\x9f\xef\x1a\x3f\xbc\x46\x77\x17\xed\x5d\xd7\xfb\xb0\x0f\xda\xdd\x45\x7b\x67\xf5\xb6\xdd\x9b\x78\x77\xd1\x5e\xad\xe9\x1d\x08\xd4\x41\xd2\xbe\x43\x1b\x43\x78\xe1\x8b\xb5\x6a\xa3\xb0\x4f\xef\x61\x02\xc0\x2d\x75\x77\xf7\x61\x9f\xda\xc3\xe4\x7f\x5b\xea\xee\xee\xa3\xfe\x18\x1f\x26\x07\xdc\xdd\xc4\xee\x1e\xf5\x73\x12\xe1\x71\x76\xc3\x8e\x4c\xcd\xfd\xed\x17\xa5\x5c\xb3\xf9\x2d\xda\x97\x35\xf7\xb5\x6f\xdf\x98\x08\x8f\x67\x37\xee\xc3\xd5\xde\xd7\x8f\x07\x8d\x23\x3c\x5e\xde\xb8\x27\xbf\x7e\xad\xaf\x85\xaf\x70\xfd\x76\x17\xb7\x46\xfd\xdb\x14\xa7\x35\x39\x34\x3a\x16\xbc\x09\xdd\x73\x20\x37\xa6\x13\xc8\x27\x7e\x43\x06\xc6\xdd\xc9\x62\xed\xbd\x80\x2b\x27\xef\x17\x2b\x9a\xfd\x58\x70\x64\xa9\xc4\xc8\x0f\xea\x83\x59\x48\x4a\xc5\x6d\xc1\x98\x54\x1a\xbc\x98\x24\x43\xa8\x46\x5e\x69\xec\x0b\x73\xcc\x3a\x6d\xa4\x56\xe1\x11\x2a\x6f\xe9\x42\xbe\xce\x9a\x05\x50\xa7\x60\x24\x51\x55\x58\x45\x3f\xf9\x8e\xc9\xf5\x01\x1c\xc8\xa5\x5b\x40\x9c\xc9\xc6\x4c\x5b\x0a\x2d\xc7\x22\x89\xce\xe4\x84\x23\xad\x2c\x83\x63\x9e\x50\xf4\xcf\xca\x23\xd3\x91\x35\xb4\xce\x9e\xfc\x68\x0b\xac\x21\xe8\xf4\xc3\xf5\x66\xa3\x70\x0f\x49\x16\xf0\xb7\x69\xf9\xc1\x05\xef\x21\xe2\x45\xb8\x26\x31\x42\x55\x1d\x5b\xd6\xe8\xa9\x62\x92\xc0\x2e\x98\x06\x60\x5b\xd2\xf2\xc3\x0b\x2d\xad\x39\x8d\x2d\xff\x64\xa8\x8a\xc7\xad\xe5\x4c\xff\x82\xa4\x3c\x2b\xae\x58\x8c\xd0\xc8\x15\x74\xc3\xac\xe4\x77\x6d\x1c\x6e\x73\xfb\xfd\xb8\xad\x92\x6a\x5b\xa8\x50\xfc\x71\x94\xd1\xec\xb9\x6b\x25\x42\xa8\xba\xf2\x30\x42\xdd\x68\xc1\x74\x82\xc6\xd8\xed\xb7\x5d\xaa\x96\xd9\x07\x69\x51\x7d\x8e\x11\xc2\x6a\x73\xfc\xee\xc2\x30\x37\x01\xa5\xd4\xc0\xe2\x83\x53\x7c\x82\x2a\x8f\xfc\xd9\x5d\xf6\xd8\x8e\x6f\x4e\xa6\x1f\x5e\xcc\xde\xcc\x8b\x55\x9e\x69\xc2\xc9\x3b\x04\x20\x28\xb0\x27\x43\x12\x8c\x0a\x4a\xd9\x00\xac\x6e\x33\xf3\x54\xd2\x80\x40\x6c\xd8\x25\x77\xc8\x2a\x0e\x1a\x69\x10\x1c\xb6\x4b\xbb\x34\x98\xa8\xad\x7d\xdb\x36\x18\x5a\xea\xd5\x22\x19\xb2\x6e\xff\x5c\x6b\xee\xc6\x1f\xdb\x53\xa8\x58\xfc\x6f\xf5\x00\x4c\x5c\xf4\xad\xa3\xf7\xce\x5d\xd5\xde\x44\x63\x0e\x8d\xdd\x85\x29\xe4\x25\xe9\x36\x5a\x6c\xbd\x55\x7a\x4c\xb1\xf1\xc9\x0a\xa1\xe1\x55\x56\xa7\xa1\x17\xbc\x05\x5a\x99\x6b\x53\xcb\xa8\xce\x2e\x88\x78\x9e\xa7\xcb\xd2\x76\x66\x5c\x9d\x34\x3b\x1b\xb4\xb7\x10\x9c\xee\x3b\xfa\x31\x6e\x6e\x77\x47\x76\x0a\x06\xa6\xad\xe0\x01\xdc\x34\xb6\x1d\x56\xbd\x5b\xf5\xe9\x3d\x4a\xfc\xf3\x66\xf8\x06\x0a\xd6\x19\x98\xb0\x0d\x5a\xd9\x43\x8b\x2a\x6f\xcf\xd4\x3b\x64\x85\x5e\x6d\xfc\x1a\x1d\x89\x27\x20\xf1\x0d\x1f\x80\x0c\xff\xb1\x22\x2b\xd2\x11\xfd\xbe\xb0\x71\xc5\xc0\x03\xb9\xe2\xaa\x41\x2b\x59\x08\x50\x7c\xf8\xf4\x2c\x00\xb8\x91\xa4\xfe\xca\x84\x79\x88\x4f\x6e\x9f\xa6\x55\x22\x09\xbf\x69\x72\x17\xf2\x03\xcf\x93\x75\x85\x7d\x31\xc6\x74\x8b\x18\x63\x3e\x26\x93\x64\xaa\xc5\x18\xf3\x50\x8c\xe1\x7f\xe2\x79\x5d\x8c\x31\xdf\x2a\xc6\x98\x6f\x36\xf3\xba\x18\x63\x1e\x8a\x31\xe6\xc9\xea\x10\x31\x46\x10\xdd\x30\x2e\x71\x8e\xe5\xf6\x90\x0a\xe1\x39\xc2\x99\x77\x58\xe7\x35\x21\xc3\x5c\x8b\x31\x82\xf4\xd3\x79\xf3\xc1\xcd\xac\x18\x63\xbe\x5b\x8c\x51\xef\xa1\x1d\x67\x90\x43\x9c\xcb\xe9\x29\xbc\x83\x26\x73\xcc\x94\x3f\x72\x4f\x74\xd7\xd9\x2b\x8a\x56\xa8\xa9\x0d\x68\x15\x08\x0c\x5b\xdd\x34\x6f\xc3\x7c\xb7\xa0\xbb\x2a\x7b\x70\x45\xc5\x1c\x58\xd9\x5b\x8a\x05\xfd\x0e\x0a\x70\xcf\xbb\x1d\x87\xbe\x20\xaa\x45\xe3\x88\xa1\xdd\xc3\x4e\x0b\x46\x5d\x93\x6c\x3a\xdc\x7a\xf6\xaf\x24\xc9\x5c\xfe\x5b\xa2\xf8\xbf\x5d\xa2\x28\x5f\xcd\x45\x12\x37\xc4\x75\xe4\x1f\xab\x34\x8f\x23\x78\x22\x86\xc6\xc1\xca\x71\x40\x48\x35\xe4\x76\x8b\x74\xf9\xe4\x5a\xd7\x89\xb0\x06\xfe\x41\x95\xba\x20\x6f\x58\x16\x5c\xd8\x1a\xed\x40\x92\x0c\x97\x9c\x16\x9c\x8a\xeb\xef\x85\xfd\x79\x7a\x32\x72\xe9\x8f\xbc\xf4\xc1\xc9\xe8\x38\x8c\xe2\xda\x10\x0e\xe2\x55\xab\x30\x4d\xbf\x95\x07\x88\xd2\x66\x0e\x7f\x5d\x2c\xc5\x75\x84\xa7\x5a\x10\x65\x32\x60\xe6\x65\x84\xb3\x5a\x7a\xca\x79\xca\x2e\x48\xf6\x3f\x6a\xbe\xc6\x3a\xcc\x92\x35\xcf\xb4\xbb\x17\xf3\xdc\xc2\xba\xd8\x38\x1a\x75\x1a\x60\x0f\xa2\xae\xed\x24\x72\x92\x72\xfd\x46\x97\x31\x98\x12\x7d\x3a\x07\x3e\x6a\xe0\x84\xc1\x38\x35\x0a\xc3\xc8\x55\xc0\x15\x26\x48\x8d\xa4\xaa\x8d\x24\x94\x93\x29\x54\x44\x62\xd3\x46\xd8\xf2\x73\xc1\x88\xe7\x2f\x9b\xf8\x66\x31\xa4\x21\x1b\x01\x93\x77\xd9\x81\x5e\xba\xca\x28\x08\x41\x58\x46\x87\x5c\xde\x72\xca\x76\x0b\x02\xeb\x1c\xa1\x23\xcd\xba\x9e\xdc\x6c\x97\x84\x7c\xf8\x91\xf2\x52\xd4\x02\xd3\xaa\x0b\x05\x21\xad\xd5\xe5\x85\x92\x3f\xa5\x5b\x0a\xe6\xa9\x2d\x77\x41\x04\x2c\xac\x46\xd2\xc2\xd2\xae\x91\xaa\xb1\x03\x77\xdf\x6e\x63\x9f\x1a\x1f\x63\xea\x19\xd4\xc0\x99\x9e\x79\x5d\x3d\xb3\xee\x8a\xd6\x12\x88\x26\x75\x83\xb7\x71\x24\x11\xc3\x12\xa2\xde\xc9\x49\xd0\x82\xfd\x08\x9a\x68\x14\x12\x35\x65\xf9\x6c\xb5\xcc\xe9\x34\x15\xa4\x8c\x26\x0e\xca\x38\xb7\xdb\x05\x5e\xfb\xc8\x2d\xd0\xe0\x95\x33\x94\x55\xdc\x2a\xa7\x08\x1b\x9a\x37\x5a\x9b\xa2\x0b\x22\x5e\xc1\xeb\xff\x8a\xeb\x61\xc7\x12\xfe\x7b\x34\x54\x8a\x05\x66\xce\x18\xc8\x86\x52\xd1\x66\x81\x29\xaa\xda\x1a\x01\xd0\x65\xe5\x9f\x37\x5a\x30\x2f\x7a\x65\xcc\xb1\xd3\xbf\xf6\x43\x71\x84\xf1\x80\x04\x3a\x65\x23\xe1\xc4\xc1\xb5\x66\xbd\x5b\xd6\x1a\x17\x53\xfb\xa7\xf8\x05\x4e\xb0\x96\x01\x2b\xf7\xe5\x17\x23\xc2\x2e\x29\x2f\xd8\x42\x39\xac\x11\xb5\xa9\x90\x1d\xf3\x70\xd6\x8e\x9e\xd3\x62\xa1\x48\xcc\x96\x91\xdd\x68\x8d\xb6\xee\x72\x64\x30\xb4\xa3\x2d\x42\xf0\x06\x75\xcc\x31\x19\x8b\x09\xaa\xe0\x38\x84\xe0\xa2\x6d\x48\xfa\xf3\xad\x3a\xc0\x0e\x20\xa0\xaa\x0e\x01\xd6\xca\x9c\x52\x56\x33\x34\xa4\x53\x83\xb4\x4a\x90\xb7\x77\x91\x62\x2d\xdc\x6b\xf7\x82\x35\x89\x72\xcf\xbc\x90\xe2\xb5\x71\xb9\xcc\x55\x60\x0b\x49\x73\x88\xa1\x7c\x10\x28\xaa\xaa\xb3\x79\x5a\xda\x9b\x57\x8f\x22\xaf\x1e\x34\x17\x44\x91\xa0\xca\x82\x7d\x4f\xbc\x4b\x86\x8d\x2b\x0c\xd1\x3f\x1a\xfe\x95\xc4\xa9\x18\x69\xfa\x12\x56\xf5\x75\xbd\x9a\xdf\x26\x74\x6e\xcd\x07\xc3\x71\x0a\xf3\x40\x54\x4d\xd8\xb9\x5c\x59\x60\x49\x24\x75\x3a\x4d\x96\xf1\x2a\xb4\x9b\xd2\xef\xf7\xdd\xe5\x6e\x59\xbd\x6d\x83\x02\xdc\x5d\xea\x36\xaf\x37\x5d\xc3\x22\xc6\xe5\x9d\xed\x01\xc3\xf6\xdb\x2f\xdf\x21\xc2\xb5\xfd\xcd\x20\xbc\xf2\xa5\x1f\x2b\x5f\xfa\xb1\xd8\x45\x38\x1e\xa0\x75\xfa\xfb\xc4\xe2\x7f\xfb\xf2\xa7\x27\x29\x2f\x87\x66\x80\xf1\x9a\x66\xa3\xe8\xd7\xd7\xaf\x4f\xfe\xfe\xed\x5f\x3f\x44\xf8\x3c\x2f\xa6\x1f\x46\x5f\xae\xa3\xf2\x7a\x71\x5e\xe4\x65\x34\x1a\x47\x7d\x03\xac\x70\xd4\x4f\x85\x00\x57\x6f\x51\x29\x52\x41\xe0\x9e\x47\xa3\xf1\xf8\xe4\x04\x47\x19\xbd\x8c\x26\x78\x7c\xf2\x0d\x3e\xc6\xe3\x07\x27\x78\x1c\x05\x13\xee\x46\x78\xfc\xe0\xbe\xcc\xf3\x04\x99\x93\x09\x8e\x20\x43\x56\xf9\x06\x1f\x4f\xf0\xd8\x14\x32\x3c\x48\x59\xc4\xfe\x06\x69\xc2\xf6\x3a\x5a\x29\x43\x56\x31\x3f\x55\x8d\xc9\x64\x82\xc7\xf7\xbf\xc2\x11\x2f\x40\x07\x0c\x46\x00\xa3\xfd\x16\xdf\x9f\xe0\xf1\x57\x78\xfc\xe0\x3b\xfc\x60\x82\xc7\xd1\x54\x4b\x19\x75\x93\x46\x78\x28\x5b\x50\x9d\xeb\xc2\x5f\x79\xfd\xfa\xd2\xb9\x46\xc1\xaf\x83\x82\xbe\x70\xcd\x2b\x7a\x22\x47\x71\x1f\x47\x7f\xfb\x1b\x93\xc3\xfa\x06\x8f\x1f\x7c\xab\xa6\x76\xff\x5b\x18\xcb\x89\x29\x8c\xc7\xe3\xc8\x6d\x08\xc9\x4b\x39\xc9\xf1\xba\xb6\x21\xf7\x71\xd4\xed\x76\xbb\x30\xc5\xef\xf0\x89\x1e\xc1\x04\x8f\x1f\x7c\x0d\x13\xd6\x8b\x77\x32\xb1\x39\x56\x8c\x69\x97\xcc\x0d\x68\x82\xa3\x65\xca\xd3\x05\x11\x84\xcb\xe6\x27\x15\xde\xd5\xa1\x5d\x3c\x38\x00\x4e\xa3\x31\x0a\x1a\x0d\x66\xa9\x2b\xd4\xf5\x17\xda\x26\xbd\x7d\xb6\xba\xfb\x63\x77\x16\xbf\xc2\xc7\x7a\xb3\x07\x46\xdc\x1c\x85\xab\xdd\xed\x1e\x5c\x13\x06\x84\xc7\x27\x5f\xe3\xaf\xed\x0c\x1b\x42\x6c\x98\x22\xb4\x7f\xf2\xa0\xd6\x49\x14\x26\xb6\x2d\x2b\x1c\xd4\x96\x44\xa8\x38\x01\xfd\x88\xe7\x97\x69\x1e\x8d\x66\x69\x5e\x12\x1c\xad\x96\x97\x29\x94\x8a\xe8\x2c\x52\x87\x1e\xdc\x31\x9b\x85\x87\x8f\x8c\x66\x03\xaa\x05\xcf\x91\x24\xc0\x06\x99\x39\x80\xd5\x97\x78\x41\x44\x3a\x5a\xab\xf8\x96\x10\xf5\xf9\x16\xc0\x6c\x38\x3f\x2f\xa3\x30\x0c\x9e\xd8\x05\x1e\x6b\x22\xdf\xcf\x07\x0a\xd3\x2c\xf3\x9d\x83\x1a\xef\x11\x4d\xea\x02\x0b\xcf\x7b\x04\x41\x98\x27\xc7\x0f\xf9\xf7\xe4\x21\x3f\x3a\x42\x62\xcc\x7d\x9f\x11\x7c\x62\x29\x8c\x9a\x5a\x2d\x84\x70\xf6\x48\x45\x13\x49\x72\x1d\x5a\x7a\x5c\x18\x9c\x4e\x05\x33\x73\xd1\xf1\xea\xd8\xb2\xb5\x0e\xaa\x1a\x61\x97\x08\x82\x6e\x53\x49\x5a\x59\x56\x91\x36\x93\x3d\x12\x10\x92\xd0\x3a\x81\x36\xa6\x7e\xc3\x74\xb9\xcc\xaf\x63\x86\x05\xf8\x01\xd2\x82\xe7\x36\x4b\xd4\xda\xbc\x08\x0e\x66\xb6\x65\x1e\x21\x2d\x2c\x6a\xb1\xa3\x74\x6f\xa1\xf9\x2e\x04\xd3\xd8\x7b\x4e\xb6\x30\x41\x7f\x0f\x13\xdd\x10\x89\xd5\xd2\x91\xd1\x03\xf2\x00\xff\xff\xec\xbd\xfb\x77\xdb\x38\x92\x28\xfc\xbb\xfe\x0a\x99\xa7\xaf\x86\xb8\x86\x19\xb9\x7b\xf7\x7e\xdf\xa7\x34\xa2\x4d\x27\xce\x4c\xee\xe4\x75\x63\xf7\xf4\xdd\xa3\xd6\x3a\xb4\x04\xdb\x98\x50\xa0\x16\x84\x92\x78\x24\xfe\xef\xdf\xc1\x93\x00\x09\x4a\x94\x5f\xdd\xbd\x3b\xe7\xf4\xe9\x58\x04\x50\x00\x0a\x85\x42\xa1\x50\x8f\xda\xeb\xd6\x68\x08\x8d\x92\x67\x74\x3c\x1c\x42\xf5\x72\x32\x3a\x38\x86\x2e\x8b\x13\xbf\xa5\x70\x1b\x11\x7a\x99\x47\xf2\xef\x62\x34\x89\x8a\xd5\x6c\xa6\xac\xd4\xd5\xf7\xe8\x6b\xca\xa8\x7c\x90\x8b\xe6\x42\x98\x62\xf6\x08\x83\x51\x81\x67\x39\x9d\xa7\xec\x26\x9a\xc2\xe6\x3d\x75\x34\x89\x58\xbe\x92\xa1\xec\x67\x39\xe5\x2c\xcf\xa4\xd9\x60\xf4\x85\xe0\xaf\xf2\x9b\xde\xd0\xd1\x14\x36\x84\xe1\xd1\xc1\x71\xd9\x92\xb8\x6c\x97\xe2\xf9\x71\xb3\xb7\x57\xbe\x5a\xfe\xed\xb9\x4a\x91\x8e\x10\xb2\xbe\x76\xac\x8a\x40\xb5\x7b\x66\x5a\x4f\xaf\xf7\xda\x6f\x94\xa5\x73\x5d\xda\x8b\x24\xf3\x2e\x92\x14\x61\xc1\x8e\xea\x16\xbf\x32\x6c\xad\xe4\x5a\x8e\x42\xa0\xfb\x64\x73\x9a\x3d\xaa\xaf\xdd\x6f\x98\xc0\x6f\x32\x85\xcc\x45\x2f\x55\xe8\x3d\x3a\x3e\x40\x88\x27\x32\x68\xe4\xfb\x4b\x85\x4f\x36\xa1\x53\x84\x27\x74\xea\x24\x7e\xec\x8c\x52\xfb\xce\xf3\xdf\x1b\xab\xe8\x0e\x58\x55\x01\x8e\x8f\x4c\xac\xd8\xa3\x25\x23\x5f\x52\x8e\x9f\x28\xfd\x96\x5f\xfc\xdb\x1c\x0e\xf6\x13\xd7\x11\x7a\xa7\x88\x07\x7d\x03\x48\x21\xee\x61\xd2\x3b\x40\xbe\x07\x31\xc4\x12\x35\x7e\x21\x78\xb0\xcd\x26\x8a\xa0\x28\x0a\xc6\xac\x68\xa2\xc2\x86\xcf\xb5\x69\x8c\xdb\x1e\x28\xf7\xc2\xe1\x83\xa5\x91\xc6\x4e\xc2\xe5\x7a\x4e\x69\x3f\xd4\x74\x4b\x96\x66\x21\x67\x3a\x20\xd8\x5d\x82\x10\x6f\x41\xa7\x56\xc6\xfd\xee\x91\xa9\xc7\xb9\x0f\x2a\x75\x13\x89\x48\xd3\xfc\x81\xd0\x78\xbd\x5a\xa4\xb4\x46\x93\xf7\xbc\x27\x4d\x17\xa1\xf8\xd4\xe6\x0c\x7d\x72\x7e\xb8\x39\x3a\x7c\x72\x15\x8a\xa4\xad\xe3\x68\x77\xde\xa3\xca\x76\x85\x69\x81\x22\x8a\x7a\x26\xcc\x07\xcf\xdf\xe4\x5f\x31\x7b\x91\xea\x17\xdc\x65\x96\xce\x70\xcc\x61\xd4\x77\x62\x7c\x24\xb3\xeb\x94\x3d\xe7\xf1\x10\x24\x3c\xff\x79\xb9\x34\xf5\x0f\xa9\x7e\x05\x3e\x06\xe5\x83\xac\x44\x26\xc6\x36\x4b\x8b\xae\xec\x41\x9d\x60\x4e\xab\x7b\x22\xfe\xfb\xcc\x0c\x80\x13\x3b\x3e\x7f\xc5\xeb\x41\x12\x9d\xe4\xf4\x6e\x1b\xba\x4f\x74\xe9\x7a\x3e\xbe\x76\x54\x73\xc2\x33\xdc\x9d\x11\xeb\x0c\xa4\xb6\xd1\xef\x12\xd1\x66\x78\x7b\xe0\xd9\x36\xd9\x0b\xcd\xdd\x29\x9a\xb3\x15\x9d\xed\x91\x3d\x3f\x98\x5a\x00\x1d\xff\xcb\x50\xc6\x64\x98\x22\x0c\x09\xa2\x63\x76\xf4\xc3\x88\xed\x3a\xb8\xb9\x94\xb1\x11\xb7\x4c\x41\x1a\xa6\x69\x31\x89\x8c\xe9\x98\x27\xc5\xea\x42\x15\xc6\x43\x48\xc0\x61\x94\x24\x49\x34\xaa\x7f\x1e\xf1\xdb\x98\x45\x98\x89\xdf\x73\x0e\x83\x76\x4c\xaf\x04\x9f\xda\x9b\x77\x38\xad\x7e\x97\x24\x6d\xc7\xb7\x07\x4d\x57\x6d\xee\x99\xa8\x1b\xec\xf6\x0f\x73\x57\x88\x64\xae\x5f\x93\x82\xe4\xc0\xc6\xf2\x02\x55\xdc\x9a\xb3\x9b\x25\xd6\xb1\x6b\x4e\xbe\x2d\xf1\x8c\xe3\x79\x3f\xed\xab\x16\xb0\x7f\x25\x53\xaf\x46\x87\xb6\xa1\xcd\xb9\xe4\x1f\xa9\xdd\xe4\xe1\x3a\x37\xfd\x27\x1e\xeb\x78\xb4\xa2\xc9\x93\x78\x3c\xfa\x8f\xcd\xaf\xc5\xe6\x68\xf3\xeb\x13\xf0\xeb\xe9\x93\x2b\x1f\x43\x4e\x73\x47\x52\x29\xc1\x7e\x2b\xc1\xc8\xe2\x9f\xab\xa0\xd0\xc8\xc8\x62\x3f\x32\x0e\x32\xde\xff\xce\x18\xf4\x08\x31\x80\xc8\x3c\xcb\x94\x0e\xd4\x7d\xad\xa8\x97\x05\x4f\xb1\x4e\x2d\xed\x6b\x48\xa8\x9d\x0e\x23\x39\xc7\x94\x13\x7e\xd3\x5e\x83\x62\x3c\x2f\x8e\x18\x36\xc1\x15\x1f\x36\x3b\x9a\x39\xdb\xa4\x15\x21\xf1\xc3\x85\x9a\xbe\xa4\x21\xc2\x67\x7c\xa3\xe3\x05\x27\xd7\x64\x3e\xc7\x14\x1d\x1c\x6b\x77\x08\x8e\x17\x88\x1b\xd7\x88\x39\xfe\x86\x98\xf1\x7e\xba\xc9\x30\xa2\xa5\x1b\x2e\x10\xac\xe5\xfd\xc5\x98\x42\xd9\xb0\x1f\xc6\x5d\x6d\xad\xe2\x77\x8c\xec\xb1\x0a\xb5\xa3\x95\xb2\x98\xb8\x90\xb1\xec\xf5\xa8\x8d\x97\x0d\xce\xb2\x37\xb2\x95\xff\x9d\xa5\x5f\x5f\x73\xbc\x28\xfc\xaf\xa4\xf9\xa9\x98\xb1\x3c\xcb\xde\xe0\x4b\x1e\xfa\x7e\x96\x2f\x6b\xfd\x65\x04\x53\xfe\x0b\x99\xf3\xeb\x50\xc1\x5f\x30\xb9\xba\xae\x41\xd2\x41\x89\x4f\x2b\x09\x59\x9b\x34\xaa\xef\x27\x99\x7c\xae\x6c\x4e\xab\xa8\x2c\x26\x9d\xaf\x6f\xd3\x65\x28\xbf\x82\x19\xb5\x34\xf3\x04\x3d\x27\x5a\xfc\x15\xe6\xcf\x39\x67\x71\xa4\xd0\x17\x81\x9e\x87\xcd\xea\x91\xa9\x4a\x97\x36\xfa\xd7\x26\x72\x86\x1b\x1f\x9a\x2a\x3a\xca\xf0\xa5\xb4\xab\xaa\xe1\xac\xa5\x36\xcf\x97\xb6\xb2\x8b\xc9\x7a\x75\x5c\x70\xb2\x90\xb1\x45\xbf\x8a\xf2\x5a\x1b\x8d\xe4\xf6\x46\xd7\xb2\x42\x6d\x58\x2a\x8e\x21\x0a\x8e\x4b\xc5\xaf\x8b\x40\x09\xcf\xe5\x0e\xfc\x68\x37\x60\xe5\xf8\x66\xfd\xa2\x74\x70\x13\xfb\x85\xd0\x2b\xe3\xe4\x77\x4e\x8a\x3f\x67\x64\xb1\xc0\xec\xfb\x18\x8c\xb5\x45\x16\xc3\x74\x2e\x16\x65\x54\xb3\x24\xbb\x26\x05\x00\x25\x9c\x93\xf9\x47\x3c\xc3\xe4\x0b\x16\x43\x2a\x2c\xb5\xeb\xa5\x54\x73\x58\x2d\x65\x4a\x53\x41\xbe\xfe\xa7\x53\x39\x81\x0f\xb9\x8a\x23\x12\x83\x12\x3a\x86\xb4\x9a\xb4\x2c\x48\x49\xfe\x26\x2c\x86\xfc\xa1\x1d\x66\xe4\xeb\xe6\xfb\x8b\x02\xb3\x2f\x98\xed\xac\xa0\xde\xf6\xd6\xa2\x23\x85\xd4\x51\x2e\x66\xa1\xff\x8e\xea\x28\x8c\x4a\x50\x42\x6f\x02\xeb\xc6\xde\xf5\x57\x45\x14\x1c\xe9\x58\x3e\xca\x45\xa3\xbe\x6e\x72\x6c\x11\xa8\xac\xa9\xcc\x7e\x3f\x40\x08\xff\xe6\xd3\xad\xf3\x20\xec\x99\xda\x3c\x97\xa1\xff\x24\x8f\xc4\x3c\x8e\x54\xc7\x32\x1a\x88\xbc\x29\xa6\xf3\x79\x7d\x7c\x8d\x6f\xb7\x58\x01\xb3\x04\x75\x82\xa9\x5c\xff\xbc\x7d\x62\xbc\x11\x43\x8c\xc4\xdb\xfa\xbd\x2a\x95\xe2\x60\x10\x63\xb4\x4c\x59\x81\x5f\x53\x1e\x63\x78\x3c\x04\x0d\x3e\xa2\xea\x39\xb3\xaf\x8a\x22\x88\x81\xe2\x5c\x75\x7a\x70\xb9\x47\xd5\x1f\x97\xf7\x6c\xdb\x1f\x6f\xf4\x77\x96\x2f\x55\xb5\x46\x77\x67\xf9\x52\x20\xdc\xd2\xe5\x8b\x8a\x45\x1b\x7f\x34\x54\xa7\xd1\xc4\xe1\xe3\x71\x83\x85\x05\x18\x94\x3b\xd4\xfa\x41\x30\x18\xe0\x44\xb2\x36\x14\x28\x54\x25\xa2\x8a\x62\x64\xc1\x3a\xaa\x48\xf3\x22\x35\x37\xa7\x58\x7a\x48\x4a\x56\xf0\x51\x72\x1f\x37\x61\xb0\xc3\x3d\x5e\x88\x63\xc6\x67\x28\x1e\x2a\x2c\x7e\x54\x3d\x87\x56\x24\xd1\x86\x5d\x56\xcd\xeb\xbf\xae\x04\x4d\x5e\x5b\x73\xf0\x38\x28\x55\x25\x9a\x76\x5a\x4a\x11\x56\x2c\x80\x43\x6a\x02\x2d\x22\xef\x38\x84\xab\xe0\x81\x38\x6b\xae\xa0\x14\x50\x9e\x9b\xd1\x55\x94\x57\xa7\x9a\xe6\x09\x15\x5a\x5e\x38\x0f\xd1\xc8\x8a\xde\x1b\xfc\x6b\xe4\xa2\xf1\x12\xbd\x4d\xf9\x75\xb2\x20\x34\x9e\x41\xf7\x08\x07\xbd\xd9\x11\xba\x84\xf3\x43\xf1\xbf\xaa\xd2\xfc\xd0\xad\x54\x25\xcf\x89\xaf\xab\x15\x39\x9a\x29\xdc\x2e\xd1\x64\x2a\x1f\xe5\x38\x1a\x3e\xe5\x3f\xce\x9f\xf2\xc3\x43\x90\xa3\xd9\x21\x87\x69\x4d\xe5\x71\x9d\xa8\x97\xcb\xe7\x3c\xce\x01\x80\xd9\x60\x10\x17\x28\x9b\xa4\x53\x00\x8b\x71\x4c\x9b\x28\x51\xf9\xe6\x05\x23\x94\xc1\x50\xe2\xbc\xe3\xec\x2b\x33\xe7\x02\x46\x85\x0a\xd1\x46\x6b\x9f\x95\x30\xaa\x83\xba\xb9\x05\x9f\xf1\x4d\x04\xd3\xda\x47\x9d\xea\x2f\x07\x70\x35\x49\xa7\xa8\x00\xa3\xa5\x34\xae\x8d\x73\xe0\x4c\xde\x11\xc0\x34\x05\x4a\x6c\x08\xd2\x5f\x4d\xe2\xc2\x99\x60\x31\xe1\x53\x20\xb3\x58\x89\xd2\xa5\xae\x0d\xd6\x39\x5a\x26\xcb\x7c\x69\xc5\x30\x0f\x65\xbd\x3a\x42\x71\x65\xcb\xff\x48\x58\xdb\x81\x1c\xff\x33\xc7\x0b\xe9\xfc\xdc\x8a\x77\x85\x4b\xe5\x8e\x1d\xae\x34\x0c\x0f\x2b\x52\x2c\x6c\xd4\x1f\x3e\xed\xcf\x49\xb1\xcc\xd2\x9b\x51\x9f\xe6\x14\x3f\x8d\xdc\xf5\x58\xba\xab\x20\x70\x3b\xe1\xd3\xdf\x00\xb1\x85\x34\x03\x23\x71\x0a\x31\xcc\x05\x4a\xd5\xbc\x5d\x79\xdd\xb5\xd4\x2e\xb4\x41\xbe\x95\xd9\x57\x25\xf4\xa4\x43\x13\x18\xde\x38\xdf\x08\x2e\xfd\x2e\x9f\xe3\x12\x2a\x5b\xbd\x62\xb4\x76\xcf\x63\x1d\x83\xbe\x71\x4e\x8f\x9b\x9f\x64\xd5\x11\xb6\xa7\x46\xc5\x87\x06\x03\x5e\xfb\x7a\x96\x2f\x37\x9b\x86\x97\x7f\xed\x50\x6e\xc6\x1b\xf3\x4e\x51\x8d\x82\x86\xe0\x0c\x4a\xa8\x50\x28\xce\x92\xe6\x2c\x5c\xf9\xbf\x12\x0a\x7c\x11\x5f\x06\xe8\x6f\x0e\xcf\x69\x1a\x1e\x9f\x0b\x64\xfb\x10\x7d\xdb\xc4\x90\xcf\xef\xbe\x97\xff\xdf\x91\xf5\xf6\xdf\xbf\x66\xd9\x90\x70\x12\xb6\xde\x16\x94\x19\xc1\xca\x88\xbb\x61\xbb\xad\xac\x70\xff\x9f\xca\xd0\x56\x0b\x18\x47\x85\x7a\x8b\x72\xe5\x40\xe8\x0a\x69\xe6\x87\x5a\xf4\x08\x46\x75\x3a\x88\xa4\x65\xef\xbf\xc2\xff\xa5\xec\x8e\xff\x55\xfd\xf3\x2f\x95\xf9\xf1\x0f\x8e\xf9\xb1\x07\xcb\xda\x45\x07\x2a\x06\x7a\xb1\x06\xcb\xbb\xad\x84\xeb\x76\xbe\xdf\x5b\x3b\xe4\xef\x65\x1f\xae\x5d\xb4\xfb\xf7\xbf\xc2\xa1\xb1\xd6\xf6\xfe\xd9\xd1\xa7\xd3\xd5\xf7\xdf\x6b\xbb\xe1\x63\x38\xd1\xcc\xd1\x31\x16\xfe\x7f\xe1\xf7\x6a\x8a\xa2\x54\xb2\x63\x51\x66\x7e\x4b\xae\x3d\x75\x0c\x81\x3d\x13\xe1\xe3\xca\x46\x78\xb7\x71\x71\xbb\x09\xb1\x62\x6f\x11\x8c\x8e\x64\x62\xc3\xa3\x54\xdc\x45\x22\x18\xe1\x74\x76\xed\x1a\x17\xbb\x7c\xc1\x67\x22\x35\xe1\x54\xef\x2d\x9a\x72\xf2\x05\x1f\xa9\x8a\x32\x7e\xca\x56\xbb\xe3\xfd\x76\x62\x47\xd3\xe3\x2d\x40\x9b\xc3\xdb\xae\x1c\x34\x4a\xed\x94\x16\xdb\xf5\x80\x72\x8d\x8f\x96\xd6\xa9\xe9\x21\xdf\xb2\x42\xef\x57\x85\x8a\x4a\xa7\xc0\x80\x38\xca\xbf\x60\x76\x99\xe5\x5f\xd5\xdd\x50\x46\x33\xf6\x5e\xb0\x9a\x8a\x3a\x4f\x2f\xe7\x69\x72\x82\x9a\x9a\x80\x3a\xa9\xa9\x32\xd2\x5f\x52\x4a\x16\xd2\x62\xfe\x95\xa0\xd1\x9a\x52\x4e\xe9\x44\xda\x95\x26\xae\xae\xad\xa6\x53\x70\x79\x57\xf3\x5e\xba\xed\x8a\xdb\x18\x6a\xfb\xed\x54\x8e\x4c\xf9\x7b\xd4\x94\x2f\x35\x6d\x9f\xfc\x86\xd5\x0f\xe5\x46\xab\x4b\x5e\x5c\x93\x4c\xf9\x5b\x2b\xab\x6c\x25\xa5\x00\xe7\x8b\x77\x43\xd3\xca\xd6\x1b\x3a\x53\x8b\xf7\x8a\xe5\x0b\x39\x2c\x1b\x84\x2a\x65\xfc\x54\x73\x50\x3c\xfb\xac\x91\xf7\xf3\xd2\x55\x6e\xed\x03\x76\x9b\x82\x49\x85\x7d\xf1\x7a\xdb\xa2\xea\x2c\xa1\x3b\xc1\x35\x1d\xc7\x1e\x52\x24\x91\x26\x86\x34\x91\x46\xb3\x0e\xf2\xe9\x55\x9a\xd0\x29\x8a\x78\xbe\x9a\x5d\x47\x26\x92\x55\x0b\x8c\x74\xc5\xf3\x48\x65\x29\xb1\xdb\x14\x78\xdd\xc2\x21\xb4\x91\x8d\x3c\x20\x4b\xad\x31\x41\x51\x7a\x51\xe4\x99\xb4\x9c\x0e\x54\xcb\x1c\xe2\xf6\x4b\x78\x45\xe3\x7e\xc1\x45\xce\x79\xbe\x08\x97\x31\xb5\x7f\x34\xaa\x7c\x35\x45\x00\xb3\x8d\xb1\x32\x9c\xa5\x2a\x1c\x6d\x7b\x6d\xa5\x87\x68\xd1\x42\x1c\x46\xcb\x6f\xdb\x1a\x6b\x0d\x45\x9b\x7e\x42\x36\x2f\x61\x88\x90\xf4\x8e\x15\x13\x23\x78\x7e\xea\x6a\x6c\xfc\xed\x66\x55\x03\xf5\xaa\xf5\x8a\xf5\x7d\xfa\x0c\x0d\x6d\x94\x32\x33\xe8\xb6\xb6\xc0\xec\x72\xaf\x13\xad\xb1\x6a\xca\xd1\xa1\x11\x55\x6c\xa4\xed\xea\x2f\x3e\xb4\x0e\x2a\xd8\x5c\x08\xd1\xcd\x2d\xec\xc5\x1c\x70\x6d\x57\xc0\x1a\x27\x85\xb7\xfd\xc4\x8e\x75\x0c\xdb\xc0\xfa\x2b\xa1\xf3\xfc\x6b\xc2\xf0\x7f\xae\x70\xc1\x9f\x7b\xcc\x76\x8c\x1b\xec\x37\x58\x2f\x16\xf7\x8b\x46\xd5\x42\x85\xb9\xca\x57\x52\x17\xf7\xbf\x40\x29\xb9\x45\x80\x27\xac\x43\x8c\x7e\x30\x88\xb7\x0e\x4d\xc1\xa9\x8f\x23\x00\x08\x8c\x64\x00\x05\x3b\x94\x50\x95\x6d\x47\x8d\xc0\xb8\x37\x5a\x47\x05\x6a\x98\x04\x47\xd8\x59\x35\xc8\xec\x4f\x41\x85\x32\x31\x4c\x75\xd1\x6a\xd0\xc8\x60\xc0\xc2\x85\xea\x32\x46\xd1\xc1\xb0\x8d\x16\xcd\x4b\x5b\x73\x2b\x30\xa5\x6c\x20\xd2\xec\xb3\xba\xc9\xe6\xf6\xb7\x3a\x8a\x61\x2a\x06\x47\x2a\x8d\x62\x55\x77\x30\xc8\x6b\x9f\xff\xa2\x55\x8c\x71\x5a\x0d\xc9\x3d\xeb\x49\xe8\xac\xcf\x01\x8c\xe9\x66\x93\x02\x37\xde\x98\x4c\x97\x25\xef\x66\xb1\xa3\x88\xa4\x46\x33\xeb\x5e\x5e\x85\xf0\x03\x53\x5d\xd2\xb8\x3f\x12\x98\x6b\x23\x83\x1d\x56\x34\x95\xc8\xa5\xde\x11\x8a\x27\x57\x8c\xcc\x7d\x01\x4e\x95\x1c\x5d\x10\x7a\xb4\x4c\x67\x9f\x31\x7b\x72\x49\xbe\xe1\xf9\x91\xaa\xb9\x5d\x78\xbb\xc2\x14\xb3\x94\xe7\xec\x31\x84\xb7\xad\x79\x1d\x45\x7f\x12\x59\x5a\x5d\xaa\x57\xea\x82\x50\xa9\xb1\xb0\x6f\xa9\xda\x23\x4b\xa6\x8f\x72\xce\x11\x6b\xcb\xb1\x96\xfc\x7e\x84\xa1\x56\xcb\x18\x28\x9a\x93\x4b\xdf\x73\xa3\x40\xad\x62\x3f\x39\xde\xea\xa2\xee\x17\x52\x90\x8b\x0c\x9f\x0a\x96\x45\xe8\xd5\x6b\x51\x3f\x56\x75\x4b\x73\x2a\x3d\xf7\xd3\x76\xdb\xb6\xa6\x5c\xa5\xef\x96\xa3\x79\xce\xeb\x1e\xfc\xa2\xa2\x2e\x52\xc0\x31\x28\xd5\x00\xc3\x75\x4d\x99\xad\xac\x34\xb4\xad\x13\x50\xaf\xa1\x7f\x53\xd3\xf8\x85\xf0\x6b\x41\xb8\x32\x74\xd4\xc1\x10\x94\x75\xe5\x11\x96\xa1\x35\x74\x9a\x27\x09\xc3\x9f\x24\xa4\x00\xe6\xaa\xc0\xce\x47\x7d\x4d\xd5\xd7\x6a\xe8\xf2\xb3\x9b\x60\x5b\xf5\xf5\x81\x7c\xc3\x99\xec\x0c\xc4\x32\xd1\x50\xd8\xf6\xbf\x49\xee\x0b\x87\x94\xb7\x13\x7d\x71\x8d\xb3\xcb\x23\x29\x83\xfe\x01\xa9\x7e\xe6\xa5\x33\x0e\x90\xfd\xef\x86\xe2\xdd\x48\xc4\x21\x9a\x17\xe3\xfc\x27\xd5\xdf\x8d\xea\x97\x98\xcd\x30\xe5\xe9\x15\x16\xa5\xab\x05\x2d\xfe\x8b\x52\xbf\x5c\xc5\xed\x51\x19\xf1\x21\x2f\x81\x11\x0b\xf4\xfb\x8e\x0a\x7e\x37\x84\x29\x1a\x3e\x4d\x7f\xc4\x4f\xd3\xc3\x43\x40\xd4\x23\x88\xde\x0d\x6c\x92\x4f\xcd\x86\xa0\x50\xe3\x53\x7e\x2d\x01\x3c\x3c\xcc\x9f\x21\xa6\x4f\x9a\xc1\x20\xce\xd1\x50\xbf\xea\x19\x0a\x28\x8c\x54\xd0\xdc\x88\x04\x1e\x0f\x87\xb7\xdc\x8a\xb2\xe5\xad\x37\xe3\xf1\x70\xb8\xf7\x76\x14\x6d\x7e\x6f\x1b\x52\xce\xe3\x36\x5b\x52\x21\xc0\x6c\x4a\xbb\x56\x13\x3c\x4d\xf4\x0a\x07\xb6\xa6\x6e\x54\xa8\x27\xc5\xcb\x2c\xcf\x59\x4c\x92\x6f\x4f\x8e\x87\xc3\xff\xc9\x43\x9b\xd6\xee\x3d\xbd\x73\xd7\xdf\x46\x05\xbc\x19\x91\xe4\xa6\xec\xb2\x87\xeb\x36\x72\x8f\xea\xa9\x27\xcd\x0e\x20\xb3\x46\x50\x3d\x8e\x8c\x99\x22\x42\xd2\xf3\xae\x72\xc6\x67\x63\x3c\xf2\x7d\xd7\x2b\x3b\xc4\xa0\x37\xed\x4e\x2b\xbf\xc7\x9d\x2b\x76\xdf\x9b\x12\x9d\x75\x5d\x88\xf8\x7e\x41\xfe\x95\xea\xbf\xb0\x22\x46\xfc\x35\x29\x66\xd7\x58\x74\xe3\x3c\xa2\x78\x8d\x20\x76\x53\x6c\x47\xc6\xf8\x89\xd0\xab\xfe\x17\x92\xf6\xeb\x76\x29\x3b\xec\x34\x5b\x98\xef\x7e\x5a\xd8\x7b\x77\xb0\xab\x1f\x51\x5e\x6e\xd0\x6a\x17\x46\x66\x9b\x8d\x8c\xc2\xe8\x29\xcf\x97\xa3\xe1\xd3\x0c\x5f\xf2\xd1\xf0\x69\x64\x53\xb9\x1f\x22\x5f\x23\xf5\xe2\xf4\x14\xc4\x38\xf9\x06\x71\x72\x03\x20\x39\x44\x91\xe2\x8e\xd1\x21\x3b\x8c\x96\xdf\x9e\x6a\x1e\x19\x1d\x52\xf9\x33\x82\xa4\xac\x86\xe5\x6f\xc2\xc7\x1d\xdb\xff\x08\x0d\xad\xf3\x0a\x3b\xfa\xf0\x87\xdb\x0f\x9e\xea\x3b\xe4\xab\x4b\x62\x2c\x03\xbe\x43\x9c\xcc\x8a\x62\x67\xcd\x21\xa8\xd2\xb5\x4e\xa2\xaf\xf8\xe2\x33\x11\x72\xc4\x2f\xe6\x8f\x85\xa0\xd1\xb7\xf9\x3f\x22\x18\xbd\x8f\xa6\x90\xa1\x49\x74\xa4\x6a\x1d\x45\x30\x3a\x5a\x14\xea\x9f\xfc\x1f\xf2\xdf\xfc\x28\x9a\x42\x8a\x9c\x48\x79\xd6\x46\x7a\x9e\xcf\xa4\x1d\xf5\x60\x60\xfe\x4a\xcc\x1f\x5a\x23\xd7\x5e\xa2\x66\xdd\xf3\x92\x93\x13\x45\x0b\x39\x22\xe3\x9a\x33\xed\x02\x67\xea\x6c\x1e\x49\xe7\xc7\xbc\x4f\x68\xdf\xc6\x48\xc0\x3a\x49\x45\x8b\x03\xae\x31\xa5\x50\xf9\xb7\x87\x4f\x8b\x1f\x8d\x19\xcf\xd3\xe2\xf0\xd0\x74\xc9\x27\xc5\xf4\x30\x6d\x02\x27\x63\x26\x4a\xf0\x28\xef\x74\x54\x38\x2f\x2d\x1d\x38\xc2\xae\x47\x97\xbb\xd3\x96\x1d\x8f\xb1\xae\x43\xa9\xfb\xf5\x4c\xfc\x21\x76\xe9\xf7\x2f\x51\x11\x2c\xf8\xe1\x25\xca\x42\x70\x5e\x9c\x9e\xa2\x55\x0b\x28\x51\x36\x6b\x81\x26\xca\xe6\x6e\x99\xf8\xe0\xfc\x44\x38\x29\x56\x4b\x89\xb7\xef\x5f\x3a\x3f\x7e\x78\x19\x74\x19\x76\xf6\x03\x88\x23\x6e\xfa\x91\x79\x37\x65\x85\xfa\xbb\x92\x5b\x85\xa0\x83\x83\x60\xa5\x25\x66\xc5\x12\xcb\xa0\x5c\xef\x19\xb9\x22\x34\x02\x3d\x6f\x28\x44\x8f\x22\x47\x07\x07\xb4\xe7\x67\x04\x17\x42\x1c\x76\x55\xef\x4a\xe3\x6c\x36\xba\x54\xba\x33\xa5\x84\xb6\x0d\x8b\x5a\xc3\x09\x9d\xa2\x6b\xa9\x77\xaa\xea\x64\x81\x3a\x97\xb5\x3a\x2b\x57\xda\xfe\x24\x39\xe7\x77\x6b\x5c\x2e\xbf\x49\x5e\xfa\xdd\x9a\x8b\x3f\x3f\x55\xf5\x67\x5e\xfd\xef\xd6\xac\x1c\x7d\xb7\xbe\x56\xda\x0e\xb7\xde\x3c\x54\xef\xb2\x59\xef\xda\xab\xb7\x48\x39\x23\xdf\xe2\x63\xd8\x1f\xca\xff\x8e\x61\x5f\x8c\x46\xfc\x9f\x97\xc0\x69\x76\x19\x68\xf6\xc3\xbc\x6a\x68\x9b\x37\x7f\x56\x00\xd5\x47\xf0\xa9\xf4\x28\x28\xd7\x2b\xb5\x44\x64\x9c\x8d\xf2\x71\x31\x4a\x7b\x2e\xb9\x2d\x75\xf9\x02\x91\xf1\x7c\x94\x8f\x67\xa3\x55\xaf\x46\x9d\xa1\xe0\x79\xf9\x62\x99\x17\xe9\x45\x86\x03\x9e\x81\x59\x5e\xac\x18\x3e\x4a\x1b\xce\x1b\x0f\x6b\x7c\xa1\x12\xd8\x9e\x9f\x67\x79\x3a\xc7\x6c\xc4\x75\xee\xda\x9e\xca\x4f\xbf\x7e\xfe\xe2\xec\xf5\xfb\x77\x2a\x2e\x61\x4f\x4f\xe3\x9a\x2f\xb2\x8b\x94\x15\x4f\x3e\xe3\x9b\xaf\x39\x9b\x17\xf5\xc1\x13\xda\x37\x09\xc1\xd9\xcd\x98\x21\x2e\x35\xe1\x84\x59\x44\xec\x84\x00\xcc\x53\x39\xcb\x57\x5c\x7a\x0c\xed\xd5\xa7\x74\x66\x6f\xf4\xda\x19\x16\x00\x3a\x4e\x00\x4b\xd4\xfc\x77\xf8\xa3\x6f\x59\xd6\x2b\xcc\x8f\x24\xfa\x95\xa9\xc1\x51\x4a\xe7\x47\xab\x02\x1f\xcd\x31\x5e\x1e\xc9\x90\xde\x47\x97\x2c\x5f\x1c\x49\x3b\x86\xc7\x8e\xf8\x64\xae\x0a\x78\x32\x9c\x2a\x65\xff\xf7\x08\x21\x13\x5d\x7c\xcc\x11\x9e\x1c\x4f\x47\x31\x95\xff\x42\xf1\xf3\x7b\x1b\xc4\x64\x3d\x5b\x31\x86\x29\xff\x9b\x4e\x34\x25\xa7\x37\xe2\x70\x55\xc8\x4c\xfd\x27\x62\x6a\x23\x1a\x3e\xfd\x1a\xe8\x32\xff\xa6\xcb\x25\xa6\x9d\x83\xa5\x35\x5d\x9d\x93\x24\xe1\x53\x84\xf5\x10\x27\xd3\x64\x96\xd3\x59\x2a\x73\x1a\x71\x70\x1b\x27\x64\x35\xa0\x7b\x76\x41\x6e\x9f\xff\xec\x7a\x45\x3f\x3f\x20\x11\x48\xf8\x88\xb6\x71\x81\x45\xfa\x6d\xc4\xe1\x0c\x93\x6c\xc4\x4a\x79\x59\xae\x70\x2c\x24\x0b\x2b\x75\xd7\x4c\xe3\x73\xc4\x63\x02\x87\x00\xa6\x68\x58\x45\x99\x20\x85\x0a\x35\x27\x83\xe0\xa4\x88\x1a\xab\x52\x78\x90\x6e\x36\xf9\x8f\xc7\xc0\xac\x52\x4f\x3f\x4c\x0d\x21\x47\x47\xc7\x90\x38\x61\xea\x58\x9c\x3e\xc9\x81\x92\xc4\x9e\xe2\x1f\xd3\xa7\x80\x4c\x0e\x0f\xf9\x14\x99\x40\x12\x18\xe2\x43\x94\xdb\x4b\x2b\x29\xcb\x76\x87\xe5\xb8\x46\xfb\x13\x0e\x59\x45\x2d\x7d\xaa\x4e\x45\xb0\xf3\x41\xa6\x7d\xf9\xf6\x0b\xa1\xd5\xa0\xdf\x3e\x87\x13\x77\x44\x1c\x49\x2c\x58\x4c\x32\x30\x66\xa3\x09\x9b\x42\x9e\x5c\x92\x8c\x63\x16\x63\xf4\xac\x1e\x19\x0b\x83\x5b\x51\xba\x1e\xfb\xe3\x91\xba\x8a\xbc\x77\x97\xb0\x06\x49\x92\x78\xd8\x12\xdb\x9c\xdd\x7a\xf2\xab\x7b\x0f\x35\xb0\x6d\xf2\x94\xa7\xa4\xae\xd2\x6d\x6d\xa6\xf5\x49\x3a\xd6\xf3\x0e\x71\xdf\x0d\xfe\x52\x69\x06\x43\x91\x72\x9e\xc7\x0c\x40\xec\xc8\x81\x9e\xd6\xf5\xe0\xc0\xdf\xc6\x32\x1a\x84\xff\x09\x83\x31\x76\x22\x33\x52\x80\x9e\xe1\xc1\x80\xc9\xf0\x8b\xe2\x42\x39\x92\xde\x97\xb7\xa5\x47\x85\xa2\x10\xb7\xfa\x0d\xb7\xf8\x1c\xcf\xee\x14\x89\xc3\x8b\xc3\xa3\xc3\x5d\x9b\xe8\x3b\x1c\x72\x9b\x87\x84\xa1\x77\x52\x4b\x27\x96\xe8\x80\x14\xef\xd2\x77\x31\xb3\xe1\x26\xab\x14\xd2\xd2\x71\xe8\x18\x40\x76\x74\xab\x18\x1b\x73\x3c\x7b\x34\x9a\x9f\xb3\x7c\x79\x67\xd4\x99\x00\x6a\x9b\x4d\xcc\xd0\x64\x0a\xa0\x49\x2b\x73\xbb\xe3\x5d\x8c\xe9\xd1\x10\x80\x29\x67\x7b\xa8\x84\x02\x38\x70\x99\x9d\x49\xfe\xa9\xa1\xc6\xfc\x96\x61\x56\x3e\xe3\x9b\xe2\xd1\x50\xa0\x4e\xad\xa3\x8b\x70\xc0\xb1\x56\xc6\x57\x28\x49\x79\x0f\xc6\xa7\x8e\x53\x06\x27\x14\x12\x98\x57\x78\xab\xf1\xb4\xdc\xda\x76\x98\x2f\x44\x26\x2f\x42\x04\x12\xbb\x15\xfd\xbd\x4a\xc1\x66\xe3\x7f\xc9\xc1\x78\x32\x1d\xc5\x06\x59\xd5\x49\x4c\xc0\x38\x32\x83\xaa\xbc\x92\xc9\x18\xa3\x67\x24\x76\xc3\x78\x52\x00\x46\x18\x3d\x0b\xf1\x68\x53\x01\x12\x59\xc5\x30\x65\xfb\x39\x37\x92\x00\xbb\x1d\x9b\x55\xad\x7f\xba\x09\xc5\x15\xbb\x43\x84\xae\x5d\x24\x70\x5f\x8c\xc0\x5f\x09\x0e\x36\x9b\x03\x26\x56\x83\x19\xb4\xdc\x8e\x2f\xa8\xc6\x77\xdc\x16\xf5\x50\x5a\xdb\x70\x42\xe7\xb5\x4d\xb1\x37\x52\x20\xdd\x82\x16\x81\x12\x73\xe6\x53\x90\x88\xfe\x7e\xba\x51\x67\xe1\xad\xb0\x23\x9a\x3f\x1e\xd3\xc8\x52\xce\x71\x67\x95\x88\x8f\x9d\x1a\x42\x82\x72\x0b\x13\x72\x8b\xb9\x2a\x72\xb1\x93\xe0\x64\x0a\x46\xb7\xca\x83\xac\x07\xbb\x1f\x72\x1a\x52\x8b\x2f\xd6\xd6\x25\x96\x3d\xd1\xc7\xf2\xc5\xd1\x9e\x67\xcf\x3d\xfb\xf4\xec\x10\xd1\x42\xc7\x9a\x18\xf5\x89\x7b\xb4\x81\x9d\xee\x0f\xad\x18\xb8\x62\xf9\x6a\x79\xd7\xfd\x35\x45\x18\x52\x27\xd9\x1e\x73\xf3\x4e\xa9\xd3\xa6\x9e\xd8\x88\x20\x3a\x61\xd3\x9e\x7f\x87\x23\x60\xb3\x89\x09\x9a\x4c\xa1\x28\x44\x04\x40\x6d\xb5\x80\x41\x09\x20\xbd\x0d\xcd\xc9\xf9\x3d\xe2\x86\xbc\x4e\x8b\x23\x8a\xbf\x85\x73\x9e\xb7\x37\x53\x4d\x3a\x1f\xf6\x5b\x6a\xde\x56\xbb\xb6\x3b\x04\x8d\xf7\xb0\x64\xd5\x1d\x8d\x18\x41\xdf\x07\x63\x04\x7d\x3f\x1d\x0c\xdc\x5f\x3d\x2a\x8d\x60\x27\x53\x65\xba\x92\xab\xa7\x05\x81\x06\x20\xa0\x43\x02\x60\x8a\x0e\x7c\x57\xcf\x1c\x62\x48\xac\x3a\x23\xad\xc4\x13\x23\x54\xe4\xb7\x62\xd9\xd7\x69\xf1\x0e\x7f\xe3\x88\x84\x49\x24\xef\xb4\x53\x7d\x95\x1f\xd7\x2a\x3f\xe6\xab\xfc\xf2\x12\xf9\xd1\x41\x2a\x8b\x02\x22\x2d\xb1\xf2\x1a\x37\xcb\xf7\xa6\xbd\x25\xc3\x5f\x48\xbe\xea\x7a\x7b\x36\xff\x56\xcd\xfe\xdb\xd3\xa0\x41\xc5\x6f\x41\x87\x1f\x74\xdf\x7f\x7c\x5a\x24\xf4\xf7\xa9\x0b\x38\xbc\xd5\x45\x90\xd0\xc7\xd3\x05\x10\xca\x31\x2b\xf0\x1d\x54\xa5\x35\x55\x7f\xdf\x26\x22\x69\x4a\x7a\xa3\xc9\x14\xa8\x28\x06\x8e\xd6\x74\x6d\xb3\x0d\xc8\x2c\x28\xf6\x6d\x9f\x99\xb7\x7d\x19\x18\x8c\x20\x21\x8b\x55\x29\xee\xa4\x1b\x3f\xa9\x05\x53\x20\x42\x82\x91\xc1\x7a\x28\x3a\x18\xf6\x2e\x18\x4e\x3f\x97\xe4\x32\x3e\x38\x76\x52\x32\x1c\x1c\xeb\x2c\x05\x02\xdb\xb7\x5b\x1e\x8d\xb2\x47\x5c\xa4\x2f\xf9\xe7\x87\xb4\xe8\x52\x1d\xb4\x46\xb4\x5e\xa7\x59\x66\xdf\x23\x93\x8f\xa7\x7f\xfb\x10\x0a\x6c\x0d\x93\x24\xa1\x3a\xac\xad\x8e\x55\x11\x94\xf9\x09\x18\x37\x62\xff\x11\x9f\x68\x38\xbb\x79\x2d\x87\xa4\x4d\x8c\x2a\x53\x38\x21\x9c\xb9\x81\x67\xbc\x1e\xaa\x66\x44\x19\x4b\xdf\x25\xb4\x75\xfb\x72\xfc\x3d\x27\xb7\xbc\x03\x6d\xd3\x9f\x05\x74\xbc\x8a\xf9\x44\x30\x02\x90\x69\x7f\x97\x5b\x51\xac\x68\xfa\x68\xc4\xfa\x19\xdf\xdc\xb7\x66\x4d\xe6\xd1\xfe\x43\xa8\xd5\x16\xe9\x7d\x5c\x6f\xb6\x29\x0f\x62\x57\xe3\xea\x6d\x1a\x73\xdb\xb9\x9d\xfa\x49\x26\xa8\x7e\x4c\x3c\x3d\x24\x92\x14\x66\x6e\xb7\x59\x16\xe9\xe3\x29\xa2\xf7\xb8\xbb\x55\xb9\x8f\x74\x54\x9d\x47\x10\x88\xdb\x56\x82\xaa\xf7\xac\x96\x64\xad\x1d\xc5\x61\x4b\xc7\xda\x9b\xc0\xd7\xb9\x32\xa8\x94\xaa\xd6\x33\xe0\xe8\xd8\x4b\xfb\xa5\x56\x9b\x58\xe1\x8b\x20\x84\x72\x6b\x43\xfd\x3c\x66\xa0\x8a\xe3\x43\x0e\x8f\x6f\x45\x09\x62\x75\xee\xf6\xe8\x15\x96\x8d\x49\x48\x36\x66\x21\xd9\x98\xc6\x1c\x92\x86\x6c\xbc\xdf\x3b\x19\xcd\x6f\xf5\xda\x63\x9f\x2b\x01\x7a\xb6\x2e\x6f\x85\xbe\xfc\x11\x9f\x74\x74\xea\xa3\xf4\x56\x72\x2c\xe4\x32\x0c\x5d\xfd\x04\xb6\xf6\xa9\x75\x2b\x0b\x43\x64\xdc\x21\x32\x7c\x2b\x12\x33\xcd\xef\xaa\xa5\xf4\x74\xce\x3c\x96\xc2\xcf\x1d\x34\x95\x2a\xed\x9d\xb8\x76\xdf\xc3\x39\x1e\x78\x79\xe1\x63\x3e\xc2\xe8\xd9\xad\xf4\xba\x66\x6c\x8f\x46\x5a\x4b\xb2\x0c\x19\x03\x76\xd1\x73\x90\x25\xee\xc4\xa8\x6b\x56\x6f\x8f\x17\xba\x85\x27\x62\x8c\x3d\xcb\x7c\x06\x83\x98\x4e\xec\xaf\x29\x3a\x18\x82\xbb\xe4\x1d\xd8\x85\x9a\xfd\x9e\x1e\x97\x2c\x5f\x90\x62\x97\xf7\x45\x17\xab\x0b\xf9\xec\xc0\xaf\x31\x8d\x99\x34\x8d\xf0\x2c\x2f\xee\x18\x8f\x7c\x32\xed\xd5\x53\x74\x55\xb9\x40\x9b\x59\xce\x20\x75\x8c\xac\xa4\xaa\x7a\xf8\x94\xfc\xc8\x9f\x92\xc3\x43\x40\x27\xc4\xcd\x05\x4a\xa6\x55\x64\x72\x27\x0b\x27\x24\x00\x3d\x1b\x22\x84\xc8\x58\x1a\xde\x50\x63\xed\x01\x4d\xf0\x81\xdb\xdd\x72\xc5\x45\xea\x95\x9e\x82\xbc\x1a\x8a\x35\xdb\xef\x3c\xbc\x0b\x81\xec\xa7\x5a\xfc\xaf\x26\x1e\xc1\xb0\x40\xb4\x55\x06\x52\x34\xd0\x22\x03\x1d\xdd\x4e\x06\x32\xcb\xf0\xc7\x97\x83\xfe\x53\xa7\x84\x7f\x58\x96\xf3\x90\xcc\x83\x6d\x67\x1e\xcc\x30\x0f\xd6\xc2\x3c\x94\xda\xd9\xf5\xde\xda\xc5\x1d\x85\xf0\xc7\x14\x4f\x11\x4c\x45\xfe\x51\x86\x99\x10\xd3\x4c\x88\x59\x26\x94\xdf\x9d\x09\xc9\x35\x7b\x34\x83\x08\xa6\x22\x0b\xee\x41\x21\xd2\x54\x93\x91\xa2\x79\x66\xef\xb2\x88\x11\x22\x1b\x24\x52\xef\x8c\xa2\x8b\x3c\xcf\x70\x4a\x1b\x49\x99\x09\x18\x0c\x88\x5e\xb6\xc9\x54\xec\x7d\xf6\x23\xb5\x2a\xb3\x31\x4f\x32\x8e\x47\xe2\xff\x8e\x5e\x94\x3d\xc5\x31\x87\x14\xa8\x70\xbb\xea\x41\x93\x83\x52\xb4\x7d\xe6\xb5\xbd\x92\x6d\xaf\xc2\x6d\x8f\x8e\x9c\xb6\x46\x55\x85\x10\xa2\x83\x01\x19\x0c\x74\x91\xb8\x9f\xdd\x66\x55\x25\x9e\x1f\x6f\x55\x25\x91\x3e\xac\x45\x07\x35\x5b\xe1\xb6\x86\x1c\xaa\xf9\xa3\x89\xb4\x0c\xcb\xdb\xd2\x1f\xcb\xfa\x2b\xdf\x6c\xe2\x5c\x29\xbe\xf6\x31\xf0\x3a\x08\x5a\x78\x1d\x74\x31\xf1\x6a\xb7\xf0\xba\xdd\x1a\x8b\x26\x8f\x68\xe0\xc5\xf0\x12\xdf\xee\x42\x1c\xd0\xb3\x19\x5f\xf5\x83\x46\xe2\xf8\xf1\x84\x4d\x47\xca\xb4\x42\xe7\x7c\x5f\x65\x19\x5c\xab\x13\x6a\xc4\x4b\x20\x95\x71\xf2\x28\xb9\x25\xde\xc4\x34\x1e\x71\x6f\x7c\xc1\xac\x7b\x06\xa4\xed\x2a\xec\xba\x4a\x61\xec\xa8\x0e\x94\xb9\xec\x10\x24\xba\xc7\x18\x8c\x26\x7c\x7a\x3b\x0c\x49\x00\x8f\x86\xa2\xe2\x7a\x75\x79\x99\xdd\x0a\x45\x90\x1b\x96\x40\x85\x88\x2b\xdd\x45\x35\x1e\x80\x16\x6a\x74\x9c\x6e\x77\x3f\xd7\x49\x6e\x30\xe0\x9b\x8d\x0c\x21\xc1\x52\x3a\xcf\x17\x4f\xc9\xb3\xe3\xa7\x80\xb9\x51\x25\x78\x0c\xfe\x27\x39\x3a\x02\x90\x22\x3c\x21\x53\x28\xfe\x27\x13\x98\x43\x2c\x73\x95\x5b\x29\xe6\x36\x08\xd7\x08\xb8\x57\xad\x4d\x95\x3b\x5e\x5c\xc2\x11\x83\xac\x61\xf7\x6a\xbc\x78\xc6\x3c\xa6\x90\x81\xd1\x84\x4e\xef\xa2\xe5\x91\x88\xbf\xf3\xbb\x2f\x64\x88\xfb\xcf\x7d\x4d\x9b\xf0\x5b\x7b\x7d\xc9\xe6\x8f\x47\xd7\x39\xab\x1f\x8a\x8f\x6e\x9b\x67\xa2\xe1\x6a\x47\x18\xeb\x8f\x64\x37\x0a\xa8\x10\x0e\x27\xb4\xca\xfa\x1d\xb7\x6f\x18\xd7\x52\xda\xd0\x90\xca\x28\x4a\x9b\x81\xce\x75\x20\x66\xd6\x2c\x11\xe8\x11\xd3\x54\x89\x65\xea\x72\x90\x39\xc1\x6b\xe8\x50\x4d\x75\x80\x9e\x08\x0a\xaa\x08\x2a\x04\xbb\x34\x56\x75\x34\x66\xe6\x89\x18\x4f\x6c\xc6\xcb\x01\x18\xdd\x15\x86\x33\x43\xe0\x47\x99\xed\x10\xf3\xb9\x95\xaa\x78\xda\xfd\xed\x7e\x7f\x77\x8b\x21\xbc\xdd\xce\x12\xa3\x7a\x34\xb3\x6a\x9e\x5f\x5d\x65\xb7\x54\xa2\xaa\xb6\xbf\x77\x35\xaa\x1a\xe5\x6f\xa0\x48\x35\xe8\xb9\xcb\xf5\x46\x1b\x6e\x04\x54\x0f\xea\xba\x58\xc9\xc1\x0c\x72\xe0\x5a\x4a\x19\xf9\x9b\x02\x63\x1d\x47\x55\x46\x9c\xf7\x97\x31\x06\xd0\xd3\x36\x58\x7f\xb6\xa3\x63\x95\x84\x81\x1f\x8a\x3f\xf0\x78\x38\xe2\x87\xc7\x65\x6c\xdc\x52\x1d\x6b\xb7\x8a\x03\x31\xc8\x21\x9d\xe4\x53\x7b\x1b\xf5\x8b\x0e\xf0\xed\x14\x0c\x0a\x7b\x8f\x76\xc0\xac\xe8\x1e\x11\x05\xf6\x74\xaa\x36\x97\x13\xab\x8d\x61\xce\x4a\x08\x84\xdf\x8a\x4d\xc8\x11\x3f\x1a\x7e\x64\xd7\x7f\x20\xdb\x78\x35\xde\x3b\x9b\xc5\x7f\x25\xfc\x3a\x5f\xed\x67\x09\x70\x27\x1f\xd4\xba\x47\x29\x0b\x79\x94\x0e\x06\x36\xfe\x40\x15\x15\x90\x49\xdf\xd2\xdd\x3a\x44\xdf\xaf\x35\xa6\x10\x83\x31\x1b\x31\x43\xb1\x54\x39\x76\x38\x9a\x6a\x8d\x83\xdb\x3a\x4d\xeb\xe6\xfb\xdd\xad\x03\x3e\xaa\x2e\x1f\x64\x52\x19\xe6\x2f\x6c\xb7\x1b\xb8\x7e\x83\xd8\xeb\x9c\x33\x11\x17\x3a\xc7\x26\xd8\xc3\x0b\x7e\x0f\x27\xf0\x7d\x5c\xa6\x3b\x3a\xe9\x76\xf5\x48\xdd\xcb\x6b\xb1\xbb\x7f\xdb\x1e\x5e\x5f\x7b\xb8\x40\xed\xe3\xec\xb2\x8f\x23\xc7\xbe\x86\xf7\x1d\x8d\xa3\xf7\xb2\x04\xee\x6e\x91\xda\xd5\x58\xb2\xbb\xe5\x5c\x47\xdb\xb1\xbb\x3b\xb9\x04\x2c\x47\xf6\x31\x8c\xd8\xd3\x6e\xe0\xee\xc6\x02\xcd\x87\xd1\xce\x6f\x5e\x9d\x9f\x3e\xba\x6b\xd3\xf7\xd2\x31\x77\x57\x55\xee\xa1\x9e\xdb\x43\x4d\xd5\x59\x15\xb2\x87\x8a\xa0\xeb\xbd\x6f\xef\xcb\xd1\x7d\xdc\x88\x6a\xf2\x66\x77\x09\x24\xe0\x13\x03\x89\x49\x91\x09\x57\x70\x06\xe7\xf0\x1a\x5e\xc2\x25\x5c\xc0\x2f\xf0\x0a\x5e\xc0\x1b\x78\x0e\xbf\xc2\x13\xf8\x0d\xbe\x87\xa7\xf0\x0c\xbe\x85\xcf\xe1\x07\xf8\x02\x7e\x86\x1f\xe1\xdf\xe1\x4b\xf8\x0e\xbe\x86\x6f\xe0\x2b\xf8\x0f\xf8\xf3\x5d\xc5\xb7\xd6\x06\xcf\xe5\xd1\xa9\xce\xf6\x08\xae\x31\x5d\x2d\x30\x13\xf3\x1c\x1d\x0c\xe1\x15\xe6\x01\x83\x71\x2b\xaa\x94\xdb\x00\xbf\x10\x27\xed\x5e\x70\x59\x37\xb8\xea\x60\xde\x0b\x32\xed\x0c\x79\xc5\xf1\x5e\x90\x49\x47\xc8\xea\xd8\xdf\x0b\x74\xde\x09\xf4\x4b\x3c\xdb\x0b\x6a\xda\x0d\x2a\xcb\x97\x7b\x81\x2d\x3a\x81\x7d\xa5\xfd\xf4\xf7\x02\x9d\xed\x01\x7a\x2f\xc0\xab\x8e\x80\xe9\x7c\xcf\x11\xcf\xba\x01\x56\xe2\xd0\x5e\x90\xe7\x9d\x20\xff\x59\xb9\xd2\xee\x05\xf9\xba\x13\xe4\xbf\x28\x0f\xcc\xbd\x20\x5f\x76\x85\x6c\x7c\xea\xf6\x82\xbe\xec\x04\xfd\x35\xdd\x6f\x97\x2c\x3a\x42\xd5\x62\xdf\x5e\xb0\xbf\x74\x84\x2d\xa4\xc4\xbd\x00\x5f\x75\x02\xfc\xbf\x73\xb2\x1f\xcd\x5d\x74\x02\xfb\x36\xdd\x97\xe2\x6e\xba\xc2\xdd\x0b\xea\x79\x27\xa8\x7b\x13\xf1\xd7\x4e\x60\xdf\x6b\x93\xb1\xbd\x40\x9f\x74\x03\xad\xa5\xe7\xbd\x40\x7f\xeb\x04\xfa\x03\x59\xe2\xe7\xb2\xe5\x5e\xc0\xdf\x77\x06\xbe\x17\xd8\xd3\x6e\x60\x6f\xc3\x2b\xce\x3a\x81\xfe\x3f\x42\xf0\xdf\x0b\xee\xdb\x4e\x70\x3f\x8a\x7b\xc2\x5e\x70\x9f\x77\x83\x2b\xaf\x15\x7b\x01\xfe\xe0\x00\x6e\x97\x25\x3f\x6a\xa3\x8b\xbd\x40\xbf\xe8\x38\x66\x71\x67\xd9\x0b\xf0\xe7\x8e\x80\xe5\x15\x67\x2f\xc8\x1f\x3b\x41\x3e\x55\x37\xa2\xbd\x20\xff\xbd\x1b\x64\x71\x81\xda\x0b\xee\xcb\x6e\x70\x73\xb6\xef\xea\xbd\xeb\x04\xf8\x2c\xdd\xf3\x64\x7a\xdd\x0d\xac\xbc\x9b\xdd\x82\x13\xbd\xd9\x03\xfc\x5e\x80\x5f\x75\x02\xfc\x33\xdd\x77\xc0\xff\xe8\x04\xf7\x17\x75\xb1\xdc\x0b\xf2\xcf\x0e\xe4\x4e\xea\xd6\x86\x31\xe6\xc3\x3d\x20\x64\x1c\x07\xdf\xb4\xfa\xf8\x47\xc4\x4b\x59\xa1\xad\x5c\x16\x5f\xb5\xb6\x7f\x86\x74\x85\xb6\xf2\x70\x1a\x90\xdd\x96\xf0\xf7\x6f\xe1\x77\x2f\x41\x8f\xdd\xdc\x11\xac\x47\x07\x83\xd8\xbc\x8d\x3e\x8f\xb1\x8a\x8c\x15\x37\x42\xb1\x69\x77\x70\x13\x42\xc3\xa9\x6f\xde\xba\xaa\xc7\xc3\xfc\x19\x1a\x8e\x73\x15\x30\x7b\x0f\xcc\xd9\x87\x95\xdf\x20\x02\x34\x92\xc1\x1f\x64\xf7\x9b\x4d\x15\x79\xb3\xd7\xd5\x02\xfc\xd9\xf1\x98\x1d\x1d\x8f\x86\x00\x12\x74\xec\x5a\x82\x1f\x1d\x87\x1d\x49\xb8\x36\xd9\xc3\xd2\x5b\x7e\x0f\x24\xd9\xb8\x2c\x8f\x88\x24\x6b\x3b\x76\x7b\x9f\x53\xad\xa4\x19\xff\xef\xd3\xf7\xef\x12\x95\x8b\x87\x5c\xde\xa8\x07\xd2\xda\x37\x6e\x9e\xa7\x48\x21\xfd\x13\x64\xff\x4e\xc4\x41\xf9\x8d\x43\xbc\x2f\xde\x94\xbe\xf9\x91\xa9\x4b\xdb\x70\xea\xbe\xeb\xf6\x41\x18\x6c\x36\x11\xa1\x05\x4f\xe9\x0c\x07\x4a\xf7\x9c\xa1\x71\x9a\xd8\x93\xf3\xe8\xc1\x3d\x02\xeb\x69\x73\x7b\x18\x0c\x1a\xa6\x0f\xb7\xf4\xe3\xb0\xd1\xc9\xda\x8d\xb2\x94\x8b\x05\x18\x0c\xb6\x55\x99\xa5\x7c\x76\x0d\xca\xb6\x35\xa0\xca\xaf\x66\x76\x73\x34\xc7\xb3\x5c\xa5\x32\x0a\x3d\x3e\xfe\x9b\x6a\xe0\x54\x52\x58\xb7\x1f\x9c\x05\xb2\x30\x43\xdf\x5c\x10\x59\x5a\x68\xff\xa9\x7d\x43\x29\x71\xb0\x56\xdc\xcc\x8d\xef\x80\xa5\x61\x89\xfe\x72\x85\xf9\xfb\xaf\xd4\xac\xef\xe9\xcd\xe2\x22\xcf\x0a\xd5\x8a\xa2\x6d\x75\x04\x18\x69\x7c\x83\xa8\x35\x88\xb0\x43\xab\x4e\xd3\x20\x88\x97\xb8\x98\x31\xb2\x54\xd9\xf0\x38\x48\x2a\x59\xa5\x04\x00\x40\x26\xbd\x1e\x34\xc3\x94\x1e\xb6\x86\x9d\x54\xde\x83\xb9\x20\xae\xca\xd9\xef\xf8\x29\xff\xb1\x4e\x41\xd2\x31\x43\xcf\x5f\x9c\x4d\x07\x0e\x19\x71\x97\x8c\xb8\x24\x23\xfe\x3f\xbe\x1f\x13\x8d\x16\x19\x76\x68\x08\x6c\xbc\x3b\x6f\x66\x3a\x77\xc9\x84\x4f\x85\xd0\x34\xda\x31\xc3\x62\x1c\xda\x49\x04\x17\x31\x86\xbb\x9a\xc6\x0c\x80\x91\x33\xa6\x96\x01\xb5\x6d\x55\xbe\xab\x03\x69\x65\x24\x53\xf2\x5a\x1b\x5d\x8b\xe0\xb4\x9e\x66\xaf\x4f\x68\x1f\x07\x27\xa3\xfa\xd2\xbc\x80\x41\x5f\xf2\x9c\xe5\xf4\x92\x5c\xad\xec\xef\xaf\x8c\x70\xfd\x77\x09\x46\x78\xc2\xa7\x88\x41\xec\x25\x78\xb1\x5c\xb4\x69\xbe\x88\xbd\x2c\x2f\x26\x97\x76\x90\x05\x07\x1a\x27\x84\x12\x4e\xd2\x8c\xfc\x03\xb3\xb1\xf7\x2b\x99\xa5\x59\x16\x6b\x33\xe0\x51\xb0\xed\x15\xe6\x63\xf9\x7f\xbf\x2e\x56\xb6\x29\x63\xfd\xef\x48\xa7\xc7\x77\x7c\xea\x0a\x19\xa4\x75\xdb\x21\x61\xfa\x18\x0c\x14\x9d\x22\x3c\x18\x14\x31\x4e\x96\x98\x5d\xe6\x6c\x01\xca\x98\x83\xb1\x74\xd9\xe3\x69\xf1\x19\x88\x13\x53\x77\x63\xb1\xb1\x8a\x1d\x5e\xab\xea\x49\xc5\x2e\x70\x53\x88\xeb\x24\x36\x26\x2f\x50\x8d\x29\x88\xdd\xa4\xed\xec\xfa\xf9\x65\x9f\x55\x15\xf1\x84\x4e\x7b\x07\xda\xe9\x6c\x42\xa7\x31\x18\xc9\x7f\x98\x25\x1c\xee\x65\xc0\x69\x95\x1e\x8e\x83\x3c\xfd\xd8\xdd\x8c\xc7\x0e\x4f\xd7\xc7\x86\x66\x84\xe2\x86\xf3\x41\x7a\x88\x02\x97\xfe\x65\x34\x37\x69\x54\x92\x4e\x9b\x3d\xfe\x10\xec\xf1\x07\xb7\xc7\x1f\xa4\x37\xa0\x8a\xbf\xe4\x90\xc4\xa8\x80\x6a\x45\xb3\x12\x11\xb3\x96\x73\x9c\x61\x8e\xfb\xc4\xa5\x1d\x68\x3f\xca\xfa\x70\x16\xe7\x71\x1e\xaf\x4b\x99\x0b\x1b\x40\x6c\x7e\x12\x00\xd7\x25\x6c\xe9\x02\x00\xa0\xa7\x52\xde\xc6\x2e\xa7\xb5\x81\x38\x3b\xa4\x33\xe8\x6d\x1e\xbf\x70\x82\xa9\x7c\xd9\x3e\x33\xe4\x84\x70\xf2\x19\xe3\xe5\x9b\x94\xe3\x82\xbb\x5f\xe7\x2c\x5f\xba\xbf\x19\x96\x99\xef\x45\x67\xee\x67\xee\xfc\xed\xc0\x6e\x80\x75\x20\x36\x81\x69\x38\xbe\x6d\xe8\x35\x9a\xc7\x19\xe8\xe9\xa2\x6b\xfd\xf5\x52\x7c\x85\x6b\x07\x80\xc4\x57\xaf\x09\xf3\xd2\xa6\x3f\x92\x2d\x44\xef\xa6\xaa\x1d\x49\x95\x02\x49\xd6\xa9\x86\x6c\x6a\xd6\x26\xb1\xd0\xf5\xbf\xa8\xfa\x7a\xc2\xa6\xb2\x3b\xff\x2f\xba\xe6\x15\x9a\xc7\x2b\x33\x0b\x85\xa8\x2b\x5d\x74\x21\x8a\xba\x4c\x45\x35\xbb\xd0\xcd\x6e\x54\xb3\xd0\x7c\x54\xc5\x1b\x5d\xf1\x5c\x55\xdc\x35\x29\xd5\xe8\x5c\x37\xfa\xaa\x1a\xb5\xcf\x4c\x55\xff\xda\x59\xa6\x72\x64\x9d\x3d\x05\xab\x07\x13\x67\x3d\x3b\xcc\x26\x4b\xfa\xa8\x32\x2e\xcd\x9b\xac\xc9\x0a\x68\x82\x39\x91\x29\xa2\x01\x26\x93\x97\x88\xf5\x34\x03\x61\x2e\x57\xf1\x2d\x73\x8d\x19\x7d\x4c\x0e\xa3\x44\xe0\xe8\x74\x35\x9b\xe1\xa2\xb8\x5c\x65\x91\x97\x96\x5f\x2d\x8b\x6b\x49\x2c\xcd\xf2\x03\xcd\xec\xf9\x84\xc7\xae\xfb\x5d\xa4\x90\x0f\x46\xf9\x38\x57\x27\x9d\x00\x60\x0f\x1c\x00\x4c\xb6\xeb\xdd\xfe\x30\x76\x81\x1d\xc3\x71\x71\xf1\xc9\xe4\xb5\x44\x5f\x5e\xcc\xf5\x24\x7c\x89\x09\x80\x10\x3b\xe3\xc8\xde\xa1\xb6\x56\xc5\xdf\x38\x66\x34\xcd\x9e\xdc\x10\x9c\xcd\x45\xaf\x0f\x92\xfc\xf9\x3a\x2d\xae\x4f\x31\xe7\x19\x9e\x23\xf5\x4b\xf0\xac\x74\x86\x11\x4e\xd2\x2c\xab\x8a\xd2\x2c\xab\x1b\xb4\xcf\xe2\x2a\xd6\x5f\xf2\x41\xa1\x04\x46\x69\x96\x45\x50\x72\x33\xd1\x44\xd3\x4d\x9f\x78\xb5\x65\x2d\x0d\xbb\xaa\x6c\x3a\xab\xf2\xee\x85\x7b\x10\xc3\xd3\xad\xe4\x48\x4d\xf6\xb7\xb4\xd6\x87\x98\x4d\x04\x25\x4b\x92\x13\x4b\x75\xbd\x22\x50\xcf\x0e\x66\x05\x7a\xbe\x98\xd6\x14\x2f\x57\xce\x67\x5f\x0e\x51\x11\xc5\xd0\x33\x2c\x05\x6c\x4f\x76\x91\x27\x7d\xdd\x76\x3e\x57\xd2\x46\x8a\x48\x9c\x83\x5e\xea\xc5\xa8\xc6\x83\x01\xee\x1b\x5a\xc9\x2f\xfb\x3c\x11\x3c\xe9\xb5\xfe\x30\x18\xc4\x38\xc1\xdf\xf0\x6c\xc5\x73\x96\xa4\xc5\x0d\x9d\x9d\x30\x96\xb3\xe2\x2f\x29\x9d\x0b\x24\x1e\x0c\x41\xa9\x34\x60\x85\x13\x92\x51\xd0\x06\x66\x31\xe8\x09\xb1\x28\xce\x81\xf2\xe0\x2f\x04\x1b\xce\xb3\x2f\x18\x16\xda\x01\x55\xb5\xcc\xd0\xc1\x31\x5c\x21\x19\xdd\x29\xdb\x6c\xe2\x0c\x1d\x0c\x61\x63\x94\xf1\x96\x61\x8e\xc5\xed\x54\x6c\x9b\x38\x2c\x99\x4e\x58\x52\x6d\x2b\x75\x3b\x9b\x0e\x06\xc1\xcf\xb1\x92\xf6\xe1\x0c\x15\x89\xde\x7f\xc9\x25\xa1\x69\x96\xdd\x88\x63\xc7\x58\x24\x84\x9a\xa2\x15\x9c\x95\xa5\x4f\xec\x45\xc7\x5d\xaf\x8a\x30\xfd\x42\x58\x4e\x17\xca\x3d\xa9\xdb\x66\xb7\x3b\xd8\x6d\x7c\xef\x9c\xfe\xe4\xed\x4f\x27\x1f\xcf\x4f\xde\xfd\xed\xf5\xc7\xf7\xef\xde\x9e\xbc\x3b\x43\x38\x91\xeb\x7d\x52\xf5\x6a\x37\x6e\x96\x16\x45\x9f\xf5\x95\xfb\x58\xd1\xe7\x89\x53\x69\x9d\x16\x05\x66\x3c\x06\xeb\x52\x92\x93\x20\x72\x45\x38\x6c\x45\x55\x60\x49\x41\x08\xd5\xa7\x9c\xce\xb0\x72\xe3\xc5\xf2\x16\x26\x50\xf2\x33\x9d\xa5\xab\xab\x6b\xae\x5e\xd4\xf4\x95\xa1\x6a\x42\xf1\x37\xae\x9a\xb8\x7c\xbf\x0a\x57\x92\x53\x2c\x88\x18\xf0\x6b\x96\x7f\xed\xe3\x9e\xf7\x55\x86\x5c\x07\xa5\xa6\x60\x3f\xa8\xa7\x4b\xdb\xe5\x55\x96\x5f\xa4\xd9\x4b\x7c\xb1\xba\xba\x22\xf4\xea\x84\x0a\x52\x98\xd7\x9b\x9c\xbc\xfb\x5b\xf2\xf2\xe4\xa7\x9f\xff\x7c\x7e\xf6\xfc\xf4\xaf\xa7\x82\x3e\x1a\x78\x63\x96\xd7\x51\xfc\xb5\xcf\x7a\x21\x74\x07\x8d\xbd\xbb\x92\xc3\xc3\x29\xf8\x02\xcb\xef\x7f\x54\xd9\xfd\xeb\x8b\x0e\xd6\xad\x2b\x09\xd6\x16\xf7\xed\x28\x0e\x67\x10\xdc\x86\x0e\x9b\x5f\xfb\xa8\xe0\x0f\x9b\x92\xfc\xcf\xa6\xa7\x53\xae\x72\xd0\x3a\x1f\xf0\xf2\x23\x2e\x5c\xa7\x2d\xb9\x55\xb8\x92\x49\xd8\x6a\xa6\xf5\x3d\xe2\xc8\x95\x2e\x7f\x12\x30\xc2\xca\xff\x6f\x9e\x53\x8c\xb8\xfa\x5b\x92\x2a\x9e\x23\x26\x08\x2a\xd4\x01\xef\x35\x46\xa2\x96\xc2\xeb\x4a\x77\x23\x21\x1f\x1c\x2b\xd0\x16\x53\xaf\x52\x51\xe9\xc6\x74\x4f\xb8\xfa\x2c\x35\x45\x65\xc1\xf1\x52\xb9\x5c\x70\x76\xa3\xe3\x0b\xe9\xe6\xfc\xb5\xae\x19\x03\x83\x1a\x02\x45\x17\x42\x94\xa3\x13\x36\x75\x6e\xfe\xf9\x58\x36\x92\x1c\x96\xfc\x03\xc7\x04\x1e\x1c\x83\x91\xd8\x06\x5c\xfe\x2d\x73\x55\x4b\xcd\x63\x4c\x2b\x45\x8b\xd7\x84\xca\x2c\xd5\xa5\xd7\xaf\x57\xd3\x0c\x7c\xb3\xb1\x93\xdd\x6c\x62\x7f\x4e\xc1\x99\xc7\xc6\xf3\xd2\x54\x2b\x6d\xa7\xd8\xd5\xfb\x54\x28\x1c\x06\x50\x05\xd5\x6c\x30\x3c\x18\x0a\xa1\x70\x6f\xca\x35\x39\xe9\xd9\x93\x65\x9e\x91\x19\xc1\xc5\x93\x8b\x7c\x45\xe7\x78\x7e\x24\x3f\x3c\xba\x8f\x70\x3b\x1d\x2d\xd2\x6f\x2f\xaa\xb9\x20\xbc\xd9\x1c\x97\xe5\x2e\x57\xa4\x3d\xe7\x2e\xae\x66\x81\x89\x77\x3b\x23\x3b\xe0\xf2\xb6\x70\x94\x94\x44\x72\xaa\x18\xcc\x83\x88\xd1\x2d\x2e\x9f\x52\x9f\xb5\x48\x3f\xe3\x17\x52\x24\x91\xbb\x1d\xc4\x11\xe1\xfd\x0b\x9c\xe5\xf4\xaa\xe8\xf3\xbc\x9f\xf6\xff\x24\x50\xf7\xa7\xbe\x10\x9c\xfa\xfc\x3a\xe5\xfd\xaf\x69\xd1\x4f\x33\x86\xd3\xf9\x4d\x9f\xad\x28\x25\xf4\x2a\x02\x9a\x27\x91\xe0\x02\x33\xbc\x48\x89\xa8\x77\x9a\xe5\xbc\x40\x58\xb1\x01\x7f\x27\xf8\x75\x9e\x0d\xc7\x71\xe0\xf3\xd1\x11\x64\xc9\xe9\xd9\xf3\x8f\x67\x27\x2f\xc1\x88\x96\xa5\xea\x35\x77\x84\x06\x3d\xd9\xb5\x98\x98\xb2\xc9\x71\x36\xb6\xd8\x53\x24\x0e\x10\x9d\x0e\xb4\x9d\xa2\xdc\xa1\xbb\xf4\x1e\xe8\x4e\xdf\xd8\x43\x9b\xee\xbf\x25\xed\xc9\xf5\xa2\x8f\x49\x25\x2c\xf9\x3f\x3f\x9f\xfc\x7c\xf2\xd2\x10\x0b\xd9\x87\x58\xe8\x16\x62\xc9\x11\xd9\x95\xee\xe1\xae\x0b\xf2\x70\x2c\xba\xb6\xef\x11\xd6\x58\x42\xd8\x60\x0e\xe1\xe4\xec\xdf\x3f\x9c\x9c\xdb\xef\xf2\x57\xad\xf0\xc5\xf3\x77\x2f\x4e\xde\xbc\x39\x79\x59\x89\x71\xb5\xef\x91\xfd\x33\xea\xd5\x60\x44\xfa\x0f\x5b\xa0\xbb\x8a\xd4\xbf\x51\xcf\x3c\x42\xac\xc5\x8d\x6c\x64\xab\x8b\xb3\xc1\xc0\xe0\x36\x19\xbf\xae\xa4\xdb\x8a\x3a\x1a\x9c\x90\x8c\x1b\xd3\x45\xcf\x62\xdd\xa0\x1a\x1f\x64\x38\x2d\x72\x3a\xc2\x61\xa3\x9d\x3d\x17\xf3\x33\xc6\xcb\xa3\x4c\xaa\xf7\xfe\xb9\xf9\x6f\x75\xf0\x54\xfa\xd1\x5b\x1e\x3f\xe2\x0a\x1b\x64\x2d\x4a\xde\xa2\xab\xc5\x59\xae\xc6\x80\xf8\x3d\x71\x9b\x3a\x60\xdb\xc8\xf9\x76\x74\x04\x69\x93\x2f\xed\x3a\xc4\x1c\xe3\x11\x7c\xc8\x7b\xbb\x4e\x34\xc8\x8e\x02\x5f\x8f\x8e\x1f\xec\xa4\x73\x94\xe5\xff\xa4\xf7\x5b\xd1\xbb\x83\xc1\x3a\xc1\x9b\x17\xcb\x18\xe0\x79\x3f\xbd\x4a\x09\xdd\x21\x72\xb9\xb4\x1d\x3c\x49\x3b\xd2\xa8\x26\xec\xbd\x88\xd4\x23\x4d\x7c\xc8\x43\x84\xf8\x60\x64\xb8\xa2\xed\xd7\x9c\x07\x23\x9e\x07\x22\x1d\x26\x35\x3b\xea\xe2\x54\x5b\xc2\x6a\x61\x74\x74\x00\x55\x2b\x28\xc8\x30\xef\x36\xb5\xb7\x4a\xa8\xc2\x07\xc3\x97\x0c\x17\xd7\x7f\x4c\x94\xaa\x67\xa6\xc0\x2d\xd4\x51\x9c\xc8\xa1\x9c\xb1\x74\xf6\x59\x66\x6c\x55\xdf\xcc\xd8\x3f\x48\x7a\xb2\x7a\x0d\xf5\xa2\xe4\xea\x93\x0b\xc4\xa0\x01\xc3\x38\xa1\x57\x55\xc1\x64\x5a\x2e\x59\x3e\xc3\x45\xa1\xec\xb2\x26\xb2\xd7\x29\xd2\x3a\x89\x8c\x63\xf6\x8a\x50\x52\x5c\xe3\xb9\x07\x31\x06\x50\x2b\x48\x6a\xc3\x48\xdc\x95\x16\x13\x80\x04\x61\x27\x27\x95\x6a\x83\xb9\x0b\xed\xc4\xa0\x5c\x72\xa0\x18\x43\x9a\x28\xaa\x72\xb2\x13\xd5\xb1\x60\x1e\xc8\x5e\x11\x9a\x2a\xce\x55\x58\xf0\xd2\x8e\x48\xc3\x32\x3a\x8f\xc6\xd4\x5d\x85\x3c\x56\xc5\x31\x00\x90\x94\x5b\x67\xad\x6d\xd7\x86\x90\xa3\xa1\x09\x16\xd3\x8a\x76\x1b\xd4\x52\x27\xcf\x34\x18\x73\xa7\x21\x7f\xbc\xca\x59\xac\x4d\x3d\x20\x41\xac\x7a\xa2\x90\xa5\x36\x9d\x5b\x42\x0a\x33\xac\x71\x4c\x93\x9c\xbe\xc8\x17\xcb\x0c\x4b\xca\x64\x40\xaa\x9a\x62\x92\x5c\xa7\xc5\xa9\x98\x0d\x9e\x8f\xf1\x21\x3a\x1e\xf1\x43\x74\x2c\x75\x4a\x00\x62\xc8\xa7\xe5\x2e\xe4\xdb\xf8\xda\x5b\x06\xab\x9e\xab\x41\xaf\xf8\x4a\xb8\x40\x61\x35\xe2\x59\xbe\xa2\x1c\xcf\x37\x9b\xc0\x47\x74\x30\x84\x62\xd8\x1f\xd4\x99\x81\xe7\x72\x79\x94\x4d\x1e\x58\xcf\xd2\x02\xf7\x79\x4d\x4c\x1f\xd9\x88\xc8\xfa\x45\x84\x25\x4a\x18\x16\xd3\xed\xb9\x4d\x34\xdf\xa9\x1a\xf8\x48\x74\xd0\x62\xb4\x65\x4d\x92\xd0\x39\x4a\xe5\x20\x65\x65\x39\x40\xf1\xeb\xa3\x12\xe8\x44\xe1\xc1\xd0\xeb\x57\x09\x4b\x23\x6b\x4d\x91\x53\xe9\x21\x34\x57\x55\xcb\xd2\x23\x46\x19\xb1\x5b\xa0\x4e\xbe\xe6\xf3\x52\x25\xc7\x3b\xe0\x89\x46\xbf\x8e\x37\xde\x53\xe2\x94\xe6\x2d\x69\x51\x90\x2b\x1a\xaf\xe9\x6a\xa1\x87\x31\xc2\x49\xf5\x03\xd2\xd5\x42\x75\xa9\x3e\xab\xbf\xc5\x57\x8b\xe7\xd7\x74\xa6\xca\xdc\x2f\x25\xc4\x49\xca\x39\x2b\x40\xcf\xf6\x2f\xed\xc3\x3c\xae\xdc\xf5\x9d\x37\xc0\x52\xed\x5f\x77\xe1\xcb\x96\xb5\xef\xdb\xb9\x98\xce\x11\x57\x84\xeb\xff\xba\x23\x2c\xba\xca\xb2\x23\x1f\xe0\x6e\x23\xcd\xfb\x39\x26\x48\xf8\x98\x30\x87\x44\xf8\x40\xa8\x76\x70\xf5\xe6\x60\xce\x10\xee\x9d\x12\x93\x69\xa9\x76\xd9\xf3\x2c\x73\xc5\xfa\x66\x55\xf9\x64\x2b\xd8\x9a\xe2\x5a\xc9\xd5\x8a\xcc\x8b\x09\x9e\x0e\x06\x0e\xf3\xd2\x3b\x96\x83\xd2\x4d\x4a\x78\x70\x50\xa9\xcb\xf5\xe3\x74\x92\x66\x59\xcc\x40\x69\x64\x49\x0c\xd6\x38\xc9\xe9\x2b\xa3\x9d\x8e\x81\x39\x37\xf4\x0c\x3f\x2a\xa2\xb0\x0a\x6d\x7f\x6c\x66\x17\xeb\x3b\x91\xae\x5a\x36\x1a\xaf\x4b\x5b\xa8\xd9\x7a\x2b\xbe\xc6\xf2\x25\xcb\x2c\x89\x54\xe8\x5b\xbb\x29\x48\xa4\x34\x64\xe5\xce\x38\xb4\x18\x10\x07\x46\x0a\x7a\x81\x45\x20\x89\x3d\x90\xbd\x8d\x18\x8c\x5d\x77\x4f\xf4\x7b\x87\xfd\xd9\x06\xfb\x51\x25\x51\x8b\x7b\x4f\xe6\xb4\xa7\x95\x23\x70\x06\xa4\x06\xb0\xbe\x2f\x31\xb4\x15\x17\xbf\xc9\x8b\x86\x27\x1e\x80\x75\xe9\x9e\xbb\xf2\xa7\x3a\xe1\xe4\x9f\xe6\x78\x93\x3f\xf4\xf9\x55\xc3\xcb\x1d\x1e\x3b\xb6\xf2\xe2\xfb\x22\xbd\xc7\xa1\xba\x36\x61\xdd\x95\xd3\x0b\xb4\x2e\xcb\x4a\x54\xb2\xca\x11\xc9\x25\xa1\x2b\x57\x15\x13\x66\x3d\x67\x54\x0e\x63\xbf\xac\xc6\x58\xa4\x30\x12\x22\x61\x73\xb9\xd6\x45\x1f\xf1\x6c\xc5\x0a\xf2\x05\xab\x33\x5d\x73\x42\x2d\xef\xaa\x6f\x1c\x3d\xc3\x31\x07\xa0\x6c\x69\xb2\x6e\x36\x31\x29\xe0\x39\xc2\xd2\x04\x51\x34\xa8\x2c\xfe\x0a\x27\x45\x7c\x35\x09\x85\x80\x1e\x73\x44\xf2\x57\x2c\x5f\xc4\x1c\x40\x29\x5a\x94\xa0\xf4\xfb\xb0\xb6\xed\x2a\x31\x65\x85\x8d\xca\x12\x5e\x0d\xdd\xc1\x13\x9f\x82\xa6\xcc\xd2\x88\xa0\x7a\x7b\x9a\xda\x9b\x44\x3d\x83\x35\xe9\x3c\xa9\x76\xe1\x6f\x7e\xa3\xd4\xcb\x6a\x04\x50\x23\x21\x5c\x69\xfb\x5c\xf9\xaf\x55\x41\x6a\x9e\x80\x86\xf6\x8b\x62\x0c\xce\x07\x57\x9c\x34\x9f\xa5\x48\x29\x76\x80\xc7\x7f\x9c\x5d\x50\xe1\x43\xae\x79\xaf\x6a\x25\x0d\x16\x4d\xb7\xf2\xad\xb9\x56\xa6\x01\x62\x19\x1a\x1b\x21\x9e\xbc\x78\xff\xf6\xc3\x9b\x93\xb3\xd7\xef\xdf\x9d\x9f\xfe\xfc\xe2\xc5\xc9\xe9\xe9\xb8\xd6\xa4\xb2\x7f\x44\x78\x14\x37\x5a\x9d\x7c\xfc\xf8\xfe\x63\xbd\xcd\x89\xb6\x46\xc0\xa3\x46\x7d\x75\x31\x19\x0c\xe2\xfa\xc8\xa4\xac\x23\xda\x80\xfa\xa0\x5f\xd3\x99\x1d\x36\x28\xfd\xdb\xcf\x3a\x84\x49\x71\x5f\xab\xc1\xb0\xc5\x08\x97\xd5\xd5\x64\x5d\xab\x25\x0b\xab\x9b\x4a\xbd\xd8\x60\x16\xd7\x97\xf8\x10\x1d\xbb\x6c\xdf\x5f\x6e\x51\x18\xd8\xec\xc6\xad\xb2\x22\x20\xe9\x4e\xf0\x94\x3f\x05\x58\x6d\x6f\xae\x3e\x97\xb5\xad\x5f\x6d\x71\x7d\xaf\xa9\x46\x69\x2f\x24\xcd\x01\x7a\x17\x9e\xfa\x00\xdd\x6b\x4f\x18\xa1\xcd\xcb\xcf\x9d\xee\x38\xfe\x06\xbf\x48\xdb\x3c\xf2\xba\xc3\xd0\xea\x03\x23\x2f\xec\x6b\xe3\x7a\x2b\xbe\xa4\x0c\xfe\x78\x30\x9e\xf3\x7d\x5c\x60\x7e\x4a\x15\xc9\x18\xd9\xd6\x7f\x6b\x6d\xa8\x87\xcd\xd5\x58\x26\xb1\xba\x2a\x46\x0c\x9a\x9b\xc4\x88\x42\x7d\x35\x38\xbb\x59\xe2\x11\x81\xd7\x69\xa1\x05\xf3\x93\x2f\x98\xf2\x62\x94\x8b\x9b\xb4\xe5\x6d\xe6\x76\x23\xc0\x18\xd5\x97\x03\x00\x11\x6d\x74\xa4\xc1\x23\xea\xff\xf6\x04\x72\x49\xe0\xaa\xbc\xde\x2b\xca\xcb\x02\x73\x73\x60\x9a\x7d\x69\xa5\x2b\xc5\x78\xd4\x0f\xc9\x51\xd4\x9f\x2f\xb4\x65\xe7\x5a\x9c\x7c\x8b\x54\x73\x8e\x8f\x52\xa9\x21\xbe\x16\x38\xbb\x54\xdf\xde\xe4\xf9\xf2\x97\x94\x55\x82\x99\xbd\x10\x99\xbd\x6d\x47\xec\x95\x29\x8d\x9e\xe0\x2f\x8e\x06\xd1\x56\xd5\x85\x2f\xae\xf1\xec\xb3\xad\x53\x4e\x58\x62\xc9\xc9\x98\x8e\xba\x3a\xf3\x7a\x77\xff\x2e\x2a\xab\xe6\xa0\x34\xc6\xaa\x77\x73\xec\x8c\xac\xd1\xab\x7c\x59\xc0\xdf\x96\x19\x99\x11\x9e\xdd\xf4\x67\x69\x96\xe1\x79\xd4\xf3\x07\xa1\x6b\xab\xbb\x98\xc1\xe2\x7f\xae\x70\xc1\x63\x9a\x28\x3e\x7d\xfe\xd7\xd7\xef\x5e\x9e\x9f\xfc\xdf\x0f\x6f\x5e\xbf\x78\x7d\x26\x2d\x2e\xa5\xe9\x6e\xcb\xb4\xb4\x81\x6c\xac\x0d\x7c\x93\x24\xb1\x03\x34\x56\x5b\x3b\x5b\xaa\x6a\x7e\x53\x63\x70\xbb\xb3\xb1\xa9\xe8\x37\xe7\xf9\xa9\x74\x9d\xae\xb5\x17\x54\x7a\x18\xf5\xdd\x1d\x16\x95\x5a\x8f\x19\xee\x48\x17\x4a\x6a\x2e\xcb\xc0\x06\x25\xd0\x67\xcd\xf2\x2e\xca\x73\x7e\xb3\xc4\x90\x27\xaf\xdf\xbd\x3e\x7b\xfd\xfc\xcd\xf9\xe9\xd9\xf3\xb3\x13\xb0\xa5\xaa\xba\x79\x8d\xa2\xaf\x29\xe1\x84\x5e\x45\x90\x14\x2f\x59\xbe\x5c\xe2\xf9\xe8\xe0\x18\x92\xc2\x68\xb1\x04\x9f\xb8\x1b\xeb\x75\x79\xd8\x03\x5e\xb2\xc8\x5c\xbf\x58\x35\x7d\xfa\xfa\x78\x30\x88\x04\x12\x5f\x38\x43\x41\x48\x9c\x38\xe9\x02\x97\x10\xfb\xa4\x89\xb0\x47\x9a\x1f\x9e\x7f\x3c\x79\x77\xa6\xa5\x8a\x5a\xd9\x9b\xd7\xaf\x4e\x4e\x3f\x3c\x7f\x77\x7e\xf2\xee\x65\xad\xe8\xdf\x5f\x9f\xbc\x79\xf9\xfc\xa7\x37\x27\xe1\x96\x86\xe0\x11\x4e\xce\x9e\x9f\xfe\x55\x57\x7a\x2e\x05\x98\x77\xcf\xdf\x9e\x38\x36\x11\xc1\xe2\xc6\x7c\x7a\x2d\xf0\x23\xb3\x49\xeb\x35\x1a\x03\x8c\x6e\x14\xc3\xa8\x57\xf4\x26\x19\x65\xe4\x12\x17\xcb\x94\x9e\x63\xda\xa8\xe9\xa3\x2a\x5a\xa6\x0c\x53\x7e\xae\x08\x40\xd6\xf5\xd0\xbc\x4d\x4f\xf6\x99\xd0\xb9\x11\x82\x94\x32\xd9\x1c\x18\x7a\x27\xca\x6b\x97\xd6\x4d\xc9\x6b\x8d\x67\xa1\x89\x70\x79\x0b\xb3\xc7\x5d\x77\x82\x87\xa3\xde\x86\xf4\x8a\x70\x43\x02\xf6\x3f\x69\x51\xda\xff\xf8\xe1\xe4\xdd\xcb\xd7\xef\xfe\x5c\xd1\x4e\xa0\xac\xf6\xd9\xc0\x39\xee\x05\x7a\xfc\xbe\x17\x1a\xda\x0f\x77\xc3\xab\x61\x75\xfb\x8b\x63\x0d\x83\xea\x3f\x88\x10\xd7\x24\xa4\xfb\x17\x05\x65\x82\xd0\x3b\xd3\xe1\x15\x36\x37\x10\x7b\xde\x04\x02\x85\x4e\x0a\x9b\x95\x7e\x2a\xb8\x67\xf3\xa9\x2a\x17\x97\xc8\x0f\x27\x1f\x5f\xbd\xff\xf8\xf6\x5c\x3e\xc1\xbc\x79\xfd\xee\xaf\xd2\xf4\xcb\xfb\xfa\xf3\xbb\xf0\xf7\x97\x27\xaf\x9e\xff\xfc\xe6\xac\x22\xe4\x60\x69\x14\xfa\x1a\xd5\x6b\xdb\x3e\xa2\xe0\xe7\x46\xfd\x60\x6d\x53\xd7\xf8\x63\xad\x4b\xed\x81\x34\x99\xf6\x5a\x10\x10\xbc\xdb\x0b\x01\xba\x6e\xf3\x3d\xa2\x10\xd3\x2f\x23\x02\xe7\xf8\x62\x75\xe5\xc8\xc9\x57\xbe\x31\xbd\x52\x34\xf9\x16\xf6\x31\x05\xce\x0b\x42\xfd\x35\xaa\x84\xac\x2e\x11\xe8\x87\xd0\x39\xfe\x66\x6e\xb0\x73\x52\x2c\xf3\x02\x33\x31\x17\xe8\x71\xd1\x17\x69\x96\x5d\xa4\xb3\xcf\x55\x09\xa6\x5f\x8c\x64\x2e\x07\x8b\x72\x9d\x27\xc8\x63\xec\xda\x5a\x5f\x49\x39\xd5\xe8\xbc\xe7\xbd\x66\x33\xfb\xe4\x67\xe4\xf5\x75\x55\x5f\xd1\xa7\xe1\xff\x42\x36\x3e\xbd\xa1\xb3\x98\x26\xce\x21\xf6\xfe\xdd\xd9\xeb\x77\x3f\x9f\x98\x8c\xab\x4d\x5d\x7e\xe2\x48\xff\x56\x20\xc6\x75\xab\x2d\x39\x96\x17\xa6\x70\x1c\x07\xc7\x3f\x76\x87\xf2\x0b\xe1\xd7\xaa\xc1\x73\xe5\x69\x32\xf2\xb0\x58\x15\x1b\x2d\x9f\x37\x6d\x73\xa0\x81\x51\x8c\x2b\x0f\x03\x95\x7c\x58\x15\x54\x37\x98\xf0\xbd\x5c\x0e\x0e\xe2\xd0\x8c\x6d\xcb\xaa\xa2\xbd\x7a\xf8\xb7\x0b\x77\x9d\xaa\x27\x6c\xbd\x4e\xe9\xfc\x8b\x00\xf7\x5a\x90\x8d\x0c\x14\x13\x73\x84\x90\x87\x7d\x79\x34\x58\x1b\x37\x17\x89\x82\x6c\xf3\x9a\xf0\x9f\x6f\x95\x44\x00\x64\xfe\x62\x37\x30\xac\x51\xac\x8b\xd5\x47\x31\x0b\x3b\xb9\x46\x8b\x75\xb3\x81\x3b\xfe\x8f\x27\x67\x3f\x7f\x7c\x07\x53\x0b\x40\x55\xa9\x04\x12\x0f\x05\xd5\x26\x02\x76\x5f\x28\x57\xc5\xea\x1d\xcc\xa5\x53\x2c\x23\x7a\xd4\xbf\xb4\xa1\x3c\x76\xb7\xa5\xa1\x19\x9f\x17\x48\xdf\x8f\xb1\xbe\xf1\xd2\x79\x86\x3f\x2a\x37\xc7\xf9\x47\x49\xcb\x78\x2e\xa3\x0b\xc8\x5e\x46\x81\x5a\x2f\x72\xca\x09\x5d\xe1\xaa\x16\x28\x77\xd5\x70\xf5\xc6\x72\xea\x90\xa2\xfa\xc8\xf0\x52\x86\x84\xea\x35\x31\x26\x53\xac\x50\xe3\x43\x54\xf3\xc0\xa1\x3a\x46\x03\x69\x48\x20\xde\xe8\xf5\x7d\x56\x0d\x89\x36\x86\xdc\x9c\xfa\xda\x98\x3e\x68\xc3\x85\x10\xbb\x18\x35\x4a\x14\x29\xf8\x7b\x38\xe6\xfe\xe0\xb4\xd4\x04\x7a\x17\x0c\xa7\x9f\x7b\x0d\x18\x67\x7f\xf9\xf8\xfe\x97\xed\x20\xd4\xfc\xca\xd2\x9b\xdb\xcf\xf4\x33\xcd\xbf\xd2\xb3\x6b\x2c\x95\x18\x35\x15\x9e\x44\x7b\x4f\x27\xa7\xb6\x32\x6f\x6d\x3b\x73\x18\xe4\x8a\x18\x94\xb0\x5b\x13\x39\x76\x51\x1f\x94\xb5\x7d\xbf\x26\x97\x0e\xe9\x8b\x0b\x94\xb6\x85\x38\x3c\xac\x3e\x97\x81\xc5\x72\x02\xbc\xc9\x95\xee\x71\xcd\x29\xd2\xf9\xfc\xa5\x3e\x7e\x62\x3e\xa1\x4d\x07\x57\x00\xc5\xe7\xba\xda\x63\xac\xbb\xfb\x92\x7f\x56\x1d\x49\x64\xf1\xa0\x27\x2e\x97\xe8\x1a\x37\xe9\xa8\x8e\x6b\xee\x33\x15\xc1\x41\x4e\x89\x90\xdc\xd4\x1c\x38\xd8\x55\x5e\xb6\x94\xe0\x5d\xcc\xc7\x5d\x24\x17\x23\xe2\x62\x11\x70\x2d\x1e\x0c\xfc\x73\xdb\x3c\xa6\x97\x96\x65\xb8\x4f\xe5\xb6\x5a\x6f\x78\x20\xae\xbc\x4a\x72\x33\xda\x71\xef\xf0\xc7\x9e\xbd\x55\x0c\x00\x28\xfd\xcd\xad\x36\x95\xce\x8c\x7d\x4d\x0a\xd0\x73\x98\x42\x8d\x43\x15\xa6\x41\x8f\x5c\xc6\x85\xce\xd8\x28\x2b\x9e\xe3\x6f\x4b\x3c\xe3\xc5\x1b\x42\x3f\xe3\xb9\x5c\x0d\x33\x62\xa6\xe9\x43\x5c\xd8\x43\xf2\x97\xbc\xb4\x3b\x6a\xc2\xcd\x46\xc8\x57\x79\x86\x93\xaf\x29\xa3\x71\xf4\xef\xf9\xaa\xbf\x34\x2a\xe4\x7e\xda\x4f\x32\xd9\x47\x0c\xfa\xe2\x58\xec\xeb\x3c\x0f\x7d\xb2\x58\xe0\x39\x49\x39\xce\x6e\xfa\x92\xb6\x08\xbd\x7a\xa2\x48\x99\xd0\xab\x3e\xe1\x49\xff\xec\x9a\x14\x7d\x52\xf4\x75\xea\xfe\xec\xa6\xbf\xa2\xc5\x6a\x29\xae\x2b\x78\xde\x8f\x2f\x56\xbc\xbf\x20\x57\xd7\xbc\x7f\x81\xfb\xd5\x77\x42\xfb\x97\x2b\xbe\x62\xb8\xff\x05\xb3\x42\x86\xc4\xba\xec\x37\x64\x7d\x90\x44\xed\xa8\x40\x07\xc7\x55\x64\xad\x45\x7a\x73\x61\x18\xdc\x4b\xed\xa2\xaa\xa5\xaf\x4b\xcc\x34\x21\xd4\x4f\x10\xb3\xb6\xea\x7b\xed\x29\x07\x21\x14\xe2\x64\xe3\x0a\xaa\x71\x99\x77\x81\xc8\x55\xd1\xf4\x6f\x2a\xc9\xf0\x57\x4e\x1d\xe5\xe0\x0c\x42\x3a\xd0\x86\x40\xe9\xdb\x7f\x34\x27\xa0\xc4\x88\x95\x85\x64\x1b\xc6\xa0\x0c\x7f\x6e\xeb\xa8\x46\xd1\xbb\x04\xdc\x00\xc2\x9d\x82\xb3\x6b\x96\x7f\xfd\x99\x2a\x36\x22\xcd\x0e\xa5\xd2\xf8\x4d\xca\xa5\x7b\xb6\x55\x12\xfa\x6e\x9a\x02\x8c\x3d\xd5\xc5\x0f\x64\x65\x86\xb9\xdb\x45\x30\xd6\x41\xeb\xb0\x00\x74\x56\x43\xf7\x5c\x76\x18\xe5\xba\xa5\x2f\x2d\xea\x05\x89\xe6\xa0\x46\x34\xf2\xec\xda\x6c\xe2\x21\xcc\x2b\xc5\x1b\x68\x12\x83\x86\xe9\x4b\x47\x3b\x06\x20\x2a\xb7\x39\x6a\x37\x3a\x28\x41\x59\x97\xd8\x4d\x8e\xb7\xa6\xa4\x3d\x18\x1c\x6c\xdd\x2f\xfe\x25\x06\x4b\x7b\x4c\xc7\xfb\x96\x57\xe7\x9f\x57\x13\x84\x5c\x84\x5d\xa1\x5f\x33\xc9\x75\x0d\xa9\x23\x5e\xf6\x78\xdb\x76\x8c\x59\x42\x0a\xe7\x5d\xf4\x60\x08\x99\x71\xcd\x06\xa3\x46\x33\xf5\x44\x2a\x1b\x49\x9c\xaa\xfa\x12\x47\xc1\xfa\xf6\x89\xb4\xaa\xe4\xef\x8c\xd3\xeb\x94\xe1\x79\xcc\x2a\x0c\xb8\x33\x72\xcf\x17\xef\xbe\x11\x78\x2e\x09\xdc\x78\x8c\x75\x28\x97\x57\xda\x13\x1d\x02\xa1\x57\x5d\x2b\xad\xd7\xfd\x60\x60\xf8\x7b\x96\x4b\xc3\x4e\x2e\x55\xb6\x28\x0f\x6b\x45\x83\x73\x58\x93\xc2\xbc\xfc\xaa\xd0\x77\xfe\x2a\x04\xf0\x02\x25\x4e\x46\x1c\xce\x9c\x89\x8c\x70\x19\xbc\xbe\x55\x57\xb6\xd2\x1f\x7b\x8d\x09\x5c\xac\xae\x1c\x0a\x6f\x0b\x33\x50\xd6\x06\x6f\x38\xa8\x14\xad\x0e\x0f\xa1\x4b\xb7\x96\x3b\x38\xf7\x43\xb8\x85\x73\x56\xd7\xfd\x94\xcf\xae\x4d\x05\xf5\x4e\x16\x37\xf6\xbc\x12\x27\x42\x35\x1b\x72\x75\x88\x82\x47\xc1\xeb\xb7\x79\x6f\x73\xe5\xe6\x26\x21\x07\xdb\x2a\x32\x69\x70\x80\x56\x48\x6a\x29\x83\xa0\x34\x19\xbb\xfc\xce\x59\x68\x50\x96\x75\xc9\x12\x57\x21\x07\x38\xc2\x01\x81\x34\x6e\x74\xe3\x28\x5a\xec\x7d\xc8\x91\x75\xcd\x5b\x95\xb9\x05\x6e\xe5\x7a\xa0\x2c\xfd\xd7\xbc\x36\x16\x6a\x29\xa2\x66\x98\xd9\xb0\xf9\x69\x18\x78\xb0\x36\x46\x84\x8d\xd8\xda\x76\xb1\x68\x4a\x09\x0d\x58\x8a\x3b\xb5\x41\x52\xf7\x8d\xc6\xc2\x36\xc1\x18\xa6\xd5\x3a\x24\xb5\x79\xe9\x2a\xcb\x4c\x84\x20\x2b\x9a\x1a\xeb\x0c\x21\x34\xc6\x52\x24\x6d\xd1\x06\x1e\x20\xc4\x34\x47\xaf\x0e\xab\x39\xe6\x78\xc6\x4f\xbd\x57\xdf\x98\x59\x95\xcb\xac\xab\xa2\xc3\x7b\x1f\x01\x2a\x82\x84\x37\xb0\xc6\xe3\xa1\xa5\x5a\x4f\xe8\x0d\x2b\x3e\xcb\xe0\x30\xcd\xc1\x15\x6e\x73\x50\x5d\xe2\x0c\xc2\xec\x5b\xe4\x60\xc0\xeb\x2f\xb9\x7a\x5a\xbd\x03\xb6\xd9\x30\xf9\x48\x73\x80\x50\xde\xfa\x5a\x14\x56\xf3\x6d\xd3\x34\xd5\xb4\x57\xa1\x67\x76\x7e\xe7\x97\x9d\xda\x1b\xc0\xef\xde\x74\xcc\x53\xe1\xd6\x6d\x6b\x9b\x62\x45\xe0\xd5\x47\x47\xb4\x54\x31\x8d\xe4\xe1\x26\xff\x74\x45\x0c\xf5\xec\x2b\xd9\x89\xfa\xb3\x3a\x34\x8f\xa1\xab\x89\x15\x65\x66\xd5\x46\x07\xc7\x65\xaf\x3e\xc0\x5b\x99\xea\x3c\xd1\x86\x3e\x0f\x6e\x8d\xab\x29\x3f\x84\x4c\x8e\xd6\x59\x5a\x70\x85\x1b\xc7\x1a\xab\xfa\x60\x90\x60\x3f\x58\x7b\x25\xa7\x4e\x85\x52\xfb\xcd\x18\xc5\x55\x5f\xb4\xfd\x9a\x53\xc5\xa0\xdb\x7e\xa9\x8c\xd2\xd4\x37\xcd\x02\x5e\xe4\x2b\xca\x47\x43\x81\x77\x7f\x2e\x36\xb2\xf0\x25\xc3\xf8\x1f\x52\x23\x71\x9b\x85\x90\xe4\x2d\xcd\xc2\x6e\xb7\x35\x9e\x18\xd3\xc5\xfb\xdf\x08\x55\xec\xca\xd6\xb8\x5f\x67\xba\xf3\x75\xe9\x56\xbf\x1d\x49\x8a\xff\xdd\x15\x07\xb7\x61\x29\xf6\x85\xf4\x01\xdc\x8c\xcf\xdc\x18\xad\xa1\x80\x1a\xce\x6b\x80\xb4\xd3\xc2\x4d\xdb\x2c\xfd\x12\xaf\x74\x2b\x6a\x0c\x88\x59\xcf\x90\x2a\x02\x78\xd3\xcc\x48\x8b\xfc\x26\xc7\x36\x64\x68\xf8\x94\xfd\x88\x9f\xb2\xc3\x43\xc0\x27\xcc\xcd\xd2\x50\x59\x5d\xdb\xb1\x24\xe7\xba\x0f\x2d\x1c\xf3\xc6\xd0\x9a\x03\x03\xa1\xd0\x1d\x96\x48\x6a\xaf\x73\xc5\x6a\x29\xd5\x6e\x1e\x5c\x25\x42\x98\xae\x93\x0b\x42\xe7\x4a\xf9\x55\x1a\xe5\x92\xbe\x0e\x49\x57\xed\xe6\x0b\x2a\x50\xf2\xc6\x01\xd6\xc1\xdf\xaa\x3b\x8f\x54\x57\xcd\x52\xda\xcf\xa9\xb6\xa0\x72\x14\x56\x97\x2c\x5f\x48\x85\x15\xa1\xfd\x54\xaa\xaf\x92\x2a\x3a\x68\x15\x5e\x04\xb2\xd0\xeb\x25\xc4\xa0\x5c\x51\x3b\xbe\x9d\xad\x8c\xf8\xa3\x85\xa7\xf3\x6a\x2d\x4b\xbd\x8f\xf6\xf7\x6d\xa9\xed\x83\x5b\x6d\xa3\xda\xa1\x70\xdf\xcf\xe6\xf7\xb3\x9d\xa4\x99\xb6\xde\x52\xca\x2b\xb3\xd5\x7e\x52\x09\xe7\x32\x0f\x5c\x81\x30\x6c\x3e\xe6\x59\x99\xf2\x6a\x45\xe6\x28\xc2\xb3\xf3\xe8\x90\x1e\x1e\x56\xdf\x0a\xb4\x2e\x9d\x5f\x13\xfb\xe7\xd4\x0a\xff\x92\x77\x0f\x06\x81\x97\x42\xd9\xc4\xa9\xa4\x3e\x00\xd7\xa3\x4c\x3d\x51\xeb\x60\x26\xd5\x0d\x58\x8a\x6e\x7f\x25\x74\x3e\xa2\x90\x61\x73\xe1\x1c\x91\x12\xe1\xcd\x66\x5d\xf6\x38\xe2\x9b\x8d\xb1\x0e\x14\x80\x5a\x0c\x04\xfb\xb9\xd8\xcf\x58\x5a\xc4\x45\x3a\x8d\x8d\xf2\xdb\xaa\x59\x07\x0a\xf9\x32\x68\x20\xc8\x6b\xfe\xc6\xc6\x2d\xc0\xe9\xdb\xce\x15\x9a\x38\xa0\x52\x94\x27\x5a\xaf\x78\x5e\x4d\x20\x06\x25\x28\xbd\xdf\x6b\xff\x46\xcd\xfd\x33\x16\x78\xd6\xa4\xa5\xb3\xfe\xdb\xcd\xf2\x7c\x20\xdb\xcc\xf2\x1c\x07\xd2\xa1\xe3\x35\x3a\x74\x4d\xf2\x84\x04\xa6\xbf\xcb\xbf\x5f\xcf\x55\xf0\x70\x6d\xd2\x47\xe6\x19\x8e\xf6\xb7\xda\x73\xad\x5c\x1e\x4c\xfa\x4a\x29\x59\xc8\xcd\xf8\x8a\xa5\x8b\x90\x71\x89\x24\x86\x12\xe2\x84\xa5\x5f\xcf\xc8\x02\xe7\xab\x50\x1e\x01\xcd\xca\xe4\xa3\x56\x72\x99\xcb\xac\xd8\x08\x27\xf6\xc6\x2e\xfe\x6e\xda\xdf\xd5\xdf\xf8\xbc\x4f\xf2\x1a\xea\xb7\xd3\x57\x5c\x84\xeb\xf7\x7d\x84\x1b\x2f\x55\x95\xa9\x4a\xa3\x44\xa0\x63\xa6\xad\xe0\xce\xcf\xa3\x5e\x13\x9c\xaa\x61\xbf\xaa\x4a\x81\x81\x44\x32\xab\x7b\xaf\x39\xec\x48\x1e\x2d\x7e\x89\x9e\x63\xa4\xf3\x1a\xf4\x02\x28\x89\x8c\x69\x5e\x28\x28\xa4\xde\x0a\xf5\xa1\xa1\xe0\x57\xe7\x58\x84\x55\x05\x33\x67\xd4\xfc\xe4\x9e\xa3\xe7\x52\x89\x2d\x35\x2d\xe6\x2c\x5d\xeb\x47\x08\x1d\xe1\x1a\xaa\xe7\x06\x13\xef\xda\x06\xc9\x0e\x5a\x03\x4a\x4b\x00\xf4\x6c\x8d\xcd\x4b\x06\xe2\x82\x9e\xb0\x96\x53\x00\xc4\xe5\x39\xcf\x3f\x58\x65\xbd\xa3\xcc\x74\x47\x02\x39\x5a\x57\x8a\x06\x65\x6d\x2f\xf1\x8f\x10\xdb\x6c\x0c\x5a\x11\x62\x63\xdb\x51\x4c\xc1\xc8\xf4\x14\x53\x50\x96\x90\x85\xd1\x15\x73\x38\x04\x8d\x59\xd4\x90\x66\xa2\x47\x7a\x5f\x2b\xbb\x90\x90\x99\xb4\x3b\xaf\xae\x06\xd2\x5e\x9b\xee\xa6\xd1\x5e\xb3\xb0\x51\x74\x63\xd6\x60\x5d\x7a\x93\xd1\x4c\xb4\xda\xb6\xbc\x29\xd1\xd7\x68\x52\x89\x68\xc6\xd6\x85\x2c\x30\x7b\x3d\x57\x06\x47\x8d\xde\x2a\x4d\x99\xa9\xa7\xdf\x0a\x9e\x7b\x4c\x48\x1d\x0e\xae\x52\x49\x2d\x33\xc4\xf2\xa4\x58\x65\x5c\x1e\x12\xb5\x71\xeb\xd3\xc6\x87\xe4\x76\x16\x1a\xa2\x16\x45\x69\xcb\xec\x70\x6d\x7a\x0b\x1b\x6d\x6a\xdf\x89\x16\x98\x6b\xe6\xd9\x65\x76\xa6\xb7\xc0\x2c\x33\x9c\x32\x03\x69\xf7\xec\x74\x40\x74\x1b\x78\xc6\x99\x67\x37\x5a\xe8\x55\xdc\xbc\xab\xbc\x19\x88\x54\x7f\xcf\x67\x96\x10\x28\x55\x06\xc7\x17\x59\x5e\xac\x98\x9f\xc2\xd0\x4b\xe4\x37\x19\x4e\x61\x8e\x58\x52\x64\x64\x86\xe3\x63\xbb\xc5\xfd\x98\xd0\xc4\xcf\x7a\xa5\xdf\xf5\xc9\x84\x4f\xb7\xde\x9d\x98\x7f\x77\x4a\xd1\xf0\x69\xfa\x23\x7e\x9a\x1e\x1e\x02\xe6\xa5\x59\x99\xa4\x53\x71\xe3\xa0\x83\x81\xb6\xac\xa9\x9e\xd7\xe5\x33\x7c\x4f\xe5\x72\x8a\xdd\x0c\x03\xa6\xa6\x4d\x1e\x23\x86\x23\xf6\x73\x0e\x93\x24\x91\x41\x64\x3b\x2e\x48\xe5\xa8\xa9\x2a\xdd\x4b\x88\x89\x0a\xc8\x83\xfb\xac\x37\x54\x0a\x26\x56\x55\x33\x38\x41\x2d\x64\x38\xb7\x6e\x48\x3a\x68\x81\x0e\x54\x45\x65\x18\xc1\x7d\x9d\xd7\xe5\x3d\xa6\x4a\xad\xb1\x5f\x2a\x86\x4b\x65\x5a\xba\xbd\xa6\x4c\xd6\xb1\xf3\x56\x64\x83\xfd\xd3\xff\xd2\xb9\xcb\xc8\x83\xe4\x2e\xa3\x5d\x72\x97\xe5\x8f\x9b\xbb\x8c\xfe\x36\xb9\xcb\xf2\xdf\x28\x77\x59\xea\x25\x5b\x85\xf9\xed\xd3\x51\xf9\x69\xa2\x52\x99\xac\xc9\xc9\x47\x45\x7b\xe9\x98\xa0\xd4\xcf\x44\x56\x8c\x09\x2a\xfc\x4f\x99\x4c\xf6\x9a\x01\x48\xe4\x63\x6c\x96\xde\xbc\x13\x77\x21\x76\x18\xf5\x63\x19\xb2\x49\x5d\x8c\x57\x92\xdd\xff\x82\xd3\xcf\x6f\xd3\x25\x9c\xa1\x7c\x32\x9c\x8a\xbb\x36\x9c\x6b\x4b\x70\x71\xf7\x34\x61\xc3\x19\x24\x70\x66\x8f\x9b\x79\x72\x5e\x60\xbe\x5a\x4a\xfe\xf4\xd7\xbf\xbd\x17\xc7\xc5\x5a\xf0\x79\x73\x10\xac\x6c\x12\x9a\x4a\x0a\xdd\x6c\x62\x8c\xe6\xc9\x8c\xe1\x94\x4b\x97\x33\x2d\xce\xaf\xc4\x6d\xd8\x28\x27\x84\xf0\x5c\x7a\x79\xe1\xaa\x58\x54\xb7\xc7\x2b\xf1\xa6\x9a\x23\x6a\xa6\x9a\x3a\x53\x95\x9a\xdc\x6a\xbe\x52\x25\x9e\x9b\xe1\x7b\xb3\x23\x6d\xb3\x4b\x9d\xd9\x49\x70\x7a\x8a\x64\xcb\x14\x8d\x4e\x64\x22\x4f\xfa\x29\xb2\xa1\xbe\x7e\x40\xae\x39\x5d\x23\x6f\x1c\xb7\x79\xe3\xf8\x60\x10\xa9\xc4\xaa\x55\x29\x1b\x0c\xe2\x46\x13\x6a\x9b\xd0\xc1\x20\xaa\xa8\x3e\x22\x54\x94\x45\x2e\xe5\xcb\x6f\x9b\x8d\xc2\x2f\x42\x88\x82\x70\x1a\x17\x47\xf2\xa8\x98\xdb\x56\xd1\x82\x03\x48\xd1\xf0\x29\xfd\x91\x3f\xa5\x52\xb4\xa0\xae\x68\x41\xad\x5a\x36\x8b\x19\x18\xe3\x58\x4a\x07\xa3\x6e\xdd\x50\xbf\x1b\x82\x86\x4f\xc9\x8f\xdc\x64\xe9\x0d\xe7\xe8\x95\x3d\x50\x15\xc6\xde\xcd\x3b\x63\x4c\x4a\xef\x9a\xce\xae\xbf\x72\x78\x1f\x83\x14\xe6\x77\xcf\x5b\x07\x8b\xa6\x27\x06\x89\x89\xf8\x87\x03\x98\x56\x21\xf3\xb0\xea\x11\x4e\x8a\xe9\xed\x52\xcc\xb5\xe6\x74\x0b\x27\x84\x0b\x64\x8e\xab\xe7\x88\xe3\xed\xf9\xe2\x42\x09\xe1\xfc\x7c\x71\x4e\x7a\x38\xf5\x78\x90\xd8\x54\x77\xfe\x53\xdb\x1c\xad\x6a\x39\xb9\xaa\x8c\x5c\xf7\x99\x2e\x30\x17\x6c\x99\x5c\xc6\x3a\x99\x17\xf5\x52\x04\xb2\xe4\xe7\xd3\x93\xf3\xb3\x8f\xcf\x5f\xfc\xf5\xe4\x25\x08\x30\x12\xc1\x11\x26\x64\x5a\x0b\x52\x51\xa5\xe8\x32\xe9\x25\xc3\x59\xb9\xca\x5b\x66\x0b\x53\x7d\x3f\x70\xae\x30\xaa\x73\x85\x55\xeb\x33\xb7\x39\xfb\x66\x71\x1a\xc8\xd9\x37\x8b\xd3\x96\x0c\x7c\x55\x96\x3e\x59\x67\x4b\x46\xbd\x2a\x57\x9f\xac\xb9\x47\xae\x3e\x59\xbf\x43\xc6\xc0\x2a\x67\xdf\x2c\x2e\xda\x72\xf6\xcd\xe2\x62\x5b\xf2\xbd\x2a\x4b\x9f\xac\xb8\x2b\x8f\x5e\x95\xab\x4f\x56\xdf\x37\x57\x9f\x6c\xd4\x35\x81\xe0\xf6\x9c\x7d\x6d\x97\x80\x7b\x08\xb9\xda\x0c\x8d\x7b\x6f\x59\x0d\xee\x25\x2d\xc7\x7d\x46\x5a\xbf\xcf\x28\xd6\xbb\x16\xa9\xc3\x5d\x6e\x69\x25\xfc\x0e\x95\xf5\xc3\xfd\xed\x2e\xe8\x2d\x7e\xa5\x30\x85\x05\xcc\xe0\xaa\xed\x62\x38\x7b\x5c\xc9\xfe\x2e\x86\x03\x36\xc1\x90\x2b\x3d\xbb\x8f\x77\x73\x34\xac\x26\x76\xed\x7b\xd7\x92\xcb\x98\x01\x21\xde\xa8\xd4\x76\xc3\xa7\xe9\x8f\xcc\x5c\x0d\x0f\x0f\x53\xc5\xb9\x0b\xc4\x26\xe9\x14\x2a\xa5\xbe\xc0\xef\xb9\xb3\x08\xe7\xca\x28\x9b\x9d\x47\x87\xf3\xc3\xc3\x1e\x9f\x64\x53\x74\x19\x2b\xf0\x10\xc7\x1c\x16\x4a\xae\xcd\x80\x23\xec\x5c\xd6\xd0\x5b\x3b\x2a\x68\xfd\xa8\xc0\xa0\xc7\xc6\x95\x6a\xc2\x2c\xef\x7b\x3a\xc3\x71\x94\xca\xa6\x45\x04\x29\xe4\xd0\x53\xd7\x8e\xe8\x84\x4f\xf5\x1d\x99\x42\x47\x8d\x5b\x1a\xee\x8e\xd1\x33\x29\xbb\x25\xa4\x30\x5a\xa8\x31\x1e\x4d\xf0\x14\x2e\x90\x56\x88\xbe\xa7\x23\x79\x03\x47\xcf\x70\x92\xce\xb5\x65\xb8\x36\x1c\x4d\x92\x64\x19\x73\x21\x5f\x6b\x86\xaa\xa2\xfa\x62\xfe\xd3\xea\xf2\xd2\x04\x61\x8c\x6d\x04\x47\x00\xb1\x68\x87\xe7\xb6\xde\x89\xfa\x1d\x1f\x0c\x81\xf6\x95\x35\x25\xd2\x90\x56\x7d\x17\x5c\x3d\x08\x98\x56\x80\xe5\x26\xa9\x06\x5a\x60\xae\x6f\x03\x00\x3a\xdc\x3b\x08\x85\x54\x50\xfc\xa0\xe4\x1e\xb8\xb7\x5e\x91\x80\x9b\x5f\x14\x98\x7d\xc1\x85\x87\x9e\xf7\xea\x23\xfb\x2b\xbe\x71\xd0\x93\xfb\x38\xd4\x26\x46\x75\x24\x1a\x73\x2f\xb7\xdb\xf7\x3a\x42\x2c\x07\xd0\x3d\x50\x82\x13\xc9\xed\x44\x4a\xad\xf3\xfa\x52\x53\xb5\xdf\x2d\x52\xcc\x8f\x2b\xe5\x5f\xf5\x2c\x82\xb7\xce\x39\xad\x72\x59\x35\x5b\x7f\x1f\x6c\xfd\xbd\xdb\xfa\x7b\x29\xe2\xcf\xd4\x8e\x88\xb4\x96\x59\xe2\x50\x5c\xb6\x8b\x08\x4e\xa6\x00\xda\x62\x49\x4d\x91\xb2\x7e\xa8\xbe\xe2\xb6\xea\xd7\x69\xf1\x73\x81\xe7\x6f\xf3\x39\xb9\x24\x98\x45\xf0\xe0\xd8\x2f\x3d\xf5\x91\xdd\xac\xe0\x05\x29\xaa\x15\xfb\x74\xd5\x18\x95\xa1\xa4\xda\x98\x34\x3d\x18\x7b\xef\x08\x6a\xc2\xe0\xae\x79\xb8\x53\xbf\x16\xfc\xf4\x85\x20\x81\x08\xf2\x8a\xbc\x6d\x4d\x2b\x41\x7d\x48\xf9\xb5\x19\x8e\x54\x73\x4a\x5b\x7c\x27\x6a\xea\x4b\xc1\x92\x89\x60\x30\x26\xa4\xd3\xb9\x0e\x94\xfa\x5e\xd9\x3c\xc4\x14\x94\x8e\x82\xc1\x77\x6f\x3c\x2f\xa4\x59\x8f\x28\x71\x95\x5a\x46\xcc\x6d\xde\xb0\x9b\xdd\xca\x18\xb0\x69\x72\x42\x67\xe9\xb2\x58\x89\x63\x5d\x82\x8b\x6b\xb7\x31\xd1\xe8\xfd\xc5\xdf\x47\x01\x08\xe2\x86\xa6\xb2\xc1\xa5\x49\xa8\x69\xc3\x79\x9f\x6b\x7f\x5f\x1f\x8c\xe6\xa3\x32\xf4\x92\x54\x89\xd5\x99\x61\xed\x31\xad\x4e\x9f\x4a\x41\xef\xf1\x67\x15\x12\xa8\xce\x35\x6a\x70\x0c\x71\x6c\x6b\xef\x33\x94\x1a\x00\xbc\x7b\x08\x75\x4e\x52\x73\xa1\x0f\xd0\xbf\x35\x4d\xa9\xef\x9c\xaa\x20\x44\x8e\x9a\xb4\x4a\xcb\xe0\xeb\x3d\xa9\x18\x04\x55\x2d\x73\x40\x04\x46\xe4\x47\x05\xab\x9a\xd4\x38\x75\xa0\x65\x78\xbc\xf5\xbc\x73\x16\xa0\x3a\x49\xea\x70\xbc\x3d\xe4\xd4\x16\x98\xae\x57\x76\x76\x55\xe9\x30\xf5\x3a\xc8\xda\x86\x77\x5a\x9c\x79\xa4\x58\x6f\x58\xdb\xa8\xba\x59\x7d\xa3\x6a\x65\xb8\xdc\x9e\xfd\xfc\xb2\x96\x0e\xd8\x46\x8a\x9c\xf0\x69\x6f\x31\xe1\xd3\xb1\xf8\x9f\xba\x6d\xda\xa0\x90\x90\x05\x1d\x72\x8b\xc4\xd9\xe1\x37\x95\xed\xcb\x84\x4f\x07\x83\x2d\x85\xd5\x5d\x56\x2a\x83\x1a\x1a\xce\xb5\x79\xd0\x4a\xe7\xf3\x37\xa4\xe0\x62\xa3\x9a\x90\xce\x0e\x59\x57\x9c\x0b\x46\xda\xcc\x4d\xf1\xdf\x6d\xcd\xeb\xdb\xd3\x05\x62\xed\x8e\x1a\x60\xcc\x46\xb5\x60\xcc\xee\x0c\x8f\x61\x08\xca\x36\x16\xa8\xd8\xa4\x90\x44\x51\x70\xf1\x7b\xc6\x33\xcd\x27\x34\xc0\xc5\x0a\x35\xbf\x4f\x21\x43\xbc\x32\x9d\xea\xe1\xac\xc0\xfa\xb8\x97\xfa\xd6\xd6\x1d\x19\x87\x88\x1f\xf4\x94\xfa\x70\x55\x05\xc1\xad\x9e\x58\x84\x4c\xc1\xf1\x37\x3e\xc2\x5a\x64\x73\x76\x2e\x14\x18\x18\x55\xb8\x50\x62\x19\x87\xb6\xe7\x11\x6b\x86\x11\x0c\xef\x68\x58\x43\xc8\x88\x4a\xe7\x0a\x69\x37\xf9\xaa\x6e\x25\x51\xe3\xf8\x45\x55\x0f\x57\xf6\x5f\x8d\x4d\x64\xcc\xbd\xec\xa5\xa1\x17\xb8\x57\xf8\xcf\xde\x5f\xd6\x75\x7d\xf3\x5e\x27\x9e\xb4\x72\xca\x12\x47\x5b\xdd\xdd\xf5\xe1\x5e\xac\xb8\xbb\xdc\x26\x8d\x85\xe7\xd1\x82\x7c\x23\x74\x47\x5d\x19\xb3\x77\x1e\x8e\x3e\x7e\x3f\x01\x2d\x5b\x4c\xc4\xeb\xd6\xbf\xb2\x8a\x6f\x23\x4e\x20\x4d\xb4\x2e\xf0\xdc\x38\x34\x48\x2f\x43\x69\xb4\x67\xed\x29\x1b\xaf\x6e\xae\xf9\xde\x36\x08\xdb\xcc\xfe\x98\xf4\x67\x94\xa6\x59\x6f\x5f\xff\xdf\xd7\xef\xba\x1a\xef\x79\xb6\xae\x77\xf5\x64\x51\x31\x52\xbb\xaf\xdf\x6d\xde\x96\x1b\x4b\xec\xbe\xbf\xfe\x17\x7e\x5d\xce\x1f\xe4\x75\x99\x74\x79\x5d\x4e\x1f\xf7\x75\x99\xfc\x36\xaf\xcb\xe9\x1f\x42\x07\x15\x0e\xb3\xeb\xd8\x49\x35\xe2\x7d\xae\xdd\xe0\x4f\xee\xd1\xc1\xb0\x7e\x50\x30\xa5\x4f\xe3\x21\xa4\x9a\xb9\x54\xcb\xa6\xbc\xf2\x61\x1e\xe7\xf1\xba\x84\x18\xc0\x75\x09\xd7\x8e\x2d\xb1\xeb\x83\xe7\xc4\x00\x8d\xe6\xea\x8f\x08\x21\xc4\xb5\x61\x31\x17\x98\x6f\xf6\x6b\x83\x6c\x26\xb6\xf9\xd8\x36\x1f\x89\xaf\xc6\xb5\x69\xec\x85\xd0\xd2\x82\x93\xa8\xe4\x57\xb7\xf9\x93\xa2\x4b\xfd\x97\xf8\xee\xb6\x34\xa9\x1b\xab\xf0\xa5\x5e\x64\x5f\x75\xc8\x33\x72\x75\x85\x99\x14\x0f\xe2\xa8\x50\x85\x11\x54\x16\xa7\x6e\xe8\xdf\x50\x6d\x51\x88\xe7\x6e\x7d\xe3\xa5\x1e\xaa\xae\xa3\x1a\xa9\xca\x50\x06\x10\xaf\xc2\x11\x04\xea\xdb\x89\xdb\x06\x01\xbf\x79\x8b\xd8\x4f\x2e\x39\xf4\xff\xf4\x9d\x82\x78\xa5\xef\x0e\xa0\xfc\x93\xb4\xb4\x37\x30\xfb\x17\x78\x96\x0a\x06\xfb\xdd\x1a\x97\x49\xff\x55\xce\xfa\x8b\x9c\xe1\x3e\xa1\xaa\x0f\x92\x53\xd8\x2f\x30\x1e\xf5\xaf\x39\x5f\x8e\x9e\x3c\x69\xf0\xf0\x64\x96\x2f\x9e\xcc\xf3\x59\xa1\x8e\x07\xc7\x81\xe2\xe8\x1a\x67\xcb\x4f\xa5\xed\xba\x71\x6b\x31\x51\x2e\xe4\x0d\xc6\x8a\x5a\xda\xec\x5e\xba\xb0\xa8\x5a\x8e\x72\xc8\xd1\x24\xb4\x84\x55\xb6\x74\xff\xe9\xd7\x4f\xdf\xad\xb1\x33\xf3\x5f\x3f\x7d\x82\x4c\x7d\xae\xe1\xe4\xd7\x4f\x9f\x7a\x5e\x64\x98\x4f\x8d\x69\xf6\x95\xb7\xac\x0c\x13\xb3\xcc\x39\xa6\x9c\xa4\x59\x76\xd3\xbf\x4e\xff\x91\xb2\x79\xbe\x2a\xfa\x91\x18\x8f\x9e\x7f\x3f\xcb\xf3\x65\xd4\xbf\xc0\xfc\x2b\xc6\xb4\xaf\x22\x9b\xaa\xa0\x32\xdf\xad\x79\xd9\x4f\xe9\xbc\x3f\xbb\x26\xd9\xdc\x7c\x63\x65\xd2\x7f\x7d\xd9\xbf\xc9\x57\xfd\xaf\x29\xe5\xf5\xc2\x3e\xcf\xfb\x17\xb8\x5a\xb5\xaf\xd7\x21\xa8\xa4\x5a\x57\xd8\x5f\x66\x38\x2d\x70\x7f\x76\x9d\xd2\x2b\xdc\xff\xf5\x53\x95\xd6\xf1\xd7\x4f\x02\xdc\xaf\x9f\xac\xf3\x90\x5b\xb4\x73\x18\x9f\x31\x5e\x9a\x64\xa8\xfd\xf4\x92\x63\xb6\x63\x20\x7a\x04\x84\xeb\x5e\x2b\x47\x23\xb7\xdf\x4f\xa0\xf4\xa8\x5e\xaa\xcf\x55\x00\x8e\xba\xf0\xee\x3a\x20\x3b\x74\x03\xb9\xcc\x44\x20\xaf\x0f\x90\x21\x3c\x18\xa8\x80\xbd\xf2\xb2\x33\x18\x70\xb3\xab\x06\x03\x56\x9d\xad\x4d\x6d\xa1\xb6\x2e\x51\x1a\x6b\x0a\x60\x8e\x86\x4f\xf3\x1f\xe9\xd3\xfc\xf0\x10\x90\x49\xee\x5a\x1d\xe4\xd3\x9e\xca\xaf\x97\x24\x49\x3a\x45\xa4\x67\xfb\x88\x3f\x09\x74\x8d\xc4\xa6\xfa\x24\x4b\x85\x24\x5e\xe3\xe9\x85\x10\xe3\x6a\xe2\xdf\xeb\x77\xa7\x67\xcf\xdf\xbd\x38\xd9\x25\x44\x16\xbe\x30\xb8\x15\xca\x5e\xc2\xa1\xfb\x78\x74\x1f\x99\x17\xff\xf9\x78\xd7\x66\x9e\xd9\xf9\x39\xb6\xf5\x95\xed\x7e\x4c\x95\x5f\x68\x3b\x03\x74\xa9\x3f\xa0\xba\x79\x27\xb9\x8c\x57\x31\x06\x9b\x0d\x17\x5b\x47\x07\x3b\x18\xc2\x5c\x25\x0c\xf4\x55\x7e\x3d\xcd\x7c\x2f\xe3\xb8\xe9\xac\xc3\x27\xc5\x34\x70\x57\xe6\x89\xba\x4e\x03\x28\x2b\xd4\x2d\xca\x4a\x27\x65\xa4\xae\x89\xb0\xac\x8a\x2a\xbd\xab\xbe\x50\x1b\x91\xb0\xc0\xfc\x83\xd9\x20\xef\x2f\x63\x0e\x67\xd5\x86\x01\x90\x97\x25\x74\x5f\xfa\xf7\x9a\xb0\x6c\x12\x9c\x35\xf6\x66\x5d\x5d\x12\xb0\x9e\xb6\x3c\x6c\x38\x80\xd8\x9f\xa5\x63\x59\xe6\x4c\x15\xfb\xf3\x73\xb5\x06\x2d\x93\xc4\x70\xee\x4e\x12\x97\xa5\x7b\xbf\x35\x04\xa1\x9f\x32\x9d\x9f\x7a\xcb\xdf\x18\xa5\x65\xe1\xbe\x6f\x16\xda\xd9\x48\xcc\xfc\xdc\x50\xa4\xb6\x45\xc8\x90\x6b\x87\xe0\x9f\xef\x7a\xca\x6d\x6f\x61\x52\x87\x68\x1e\xf6\x76\xb7\xe4\xf5\x96\x82\x1d\xec\x6e\xc6\xea\xcd\xaa\xd7\xba\xdd\x8d\x69\xbd\xf1\x62\x9b\xea\x57\x43\x68\xa8\x87\x75\xdb\xab\x80\x96\x57\x37\x31\x8a\x1e\x83\x13\xad\x93\x0e\x55\x75\x1f\x34\x35\x1e\xa4\x9e\x3b\x54\xb7\x7a\xe2\x54\x35\xf3\xa0\x5a\x58\x57\xae\x74\xc6\x3a\x91\x40\x2f\x64\x1c\x78\x70\x80\x07\x83\xb8\x52\xd1\x1e\x38\x21\x06\x63\x6b\x9e\x58\x7d\xdd\x6c\x0e\x62\xab\xaf\x14\xd7\x2b\xb0\xd9\x84\x5a\x1b\x31\x00\xd8\xf3\xee\xaa\x46\xd9\x00\x21\x73\x5b\xaf\x28\x1c\x94\x82\x40\x67\x70\xde\x0b\xd1\x70\x06\x6b\x84\x3e\x0b\xee\x86\x79\xa3\x9a\x0e\xc4\x1c\xde\x3c\x73\x5b\xea\x2b\x67\x9c\x9d\x07\xb3\xba\xe6\x66\xe6\x16\xc2\xb5\x54\x44\x3b\x4e\x38\xb3\x34\xcb\x4e\x57\x4b\xcc\x4e\x45\x81\x96\x7e\xfd\x8f\x81\x67\x95\x1a\x4f\x31\x9f\x1a\x6a\x6e\xb1\xf2\x4d\x02\x09\xbd\x13\xd7\xdf\x6d\xa0\x79\xa2\x0f\x36\xaf\x3f\xd5\x37\x5a\x1b\xe5\x75\xb0\x75\xfd\x25\xbb\xde\xba\x04\xd6\xba\x4c\xa9\xc7\xc5\xbc\xa4\x4a\x99\xcc\x5e\x9a\x43\x74\xb3\x71\xca\xf4\x29\x66\x0b\x7b\xae\x3d\x04\x58\x9b\x63\xc9\x7c\xe4\x52\xf3\x62\x46\x66\x5f\x87\x25\x53\x95\x8b\xa0\xfe\x90\xb5\x60\xcd\x20\x0f\xd7\xb8\xbf\x35\xdc\xbb\x96\x2b\xb1\x97\xce\xf5\x0e\xda\xd6\x0e\x22\x44\xa5\xea\xbb\x53\xe0\xfd\xad\x8d\x65\x11\xa6\x5f\x08\xcb\xa9\xc0\xc7\x43\xa9\x7f\x1f\x28\x08\x3e\x4c\x61\x71\x77\x41\xaa\xfe\x82\x8c\x42\x91\x33\xb2\x9a\x52\xb9\x35\x9c\x84\x26\x6b\x52\xbc\xc4\x05\x67\xf9\x8d\x0c\x63\x24\xb9\x82\xba\xdd\x00\x4b\xf9\x0c\x5f\x91\x82\x63\x26\x2b\x2a\x40\x6e\x45\x58\xc5\xa4\xaa\xdc\xdd\x8d\xb7\x7e\xc4\xaf\x71\x5f\x31\x6d\x71\x39\xcb\xc8\x17\x5c\xf4\x73\x2a\xd5\x03\x73\xd5\x31\x9e\xf7\x73\xd6\x5f\x51\x86\xe9\x1c\x4b\x95\x45\xd3\xc1\xbf\x68\x0d\xe7\x24\x73\x01\x9e\x3f\x6c\x9c\x8f\x46\x88\x0f\x1a\x8c\xfd\x5f\x0b\x54\x61\xa2\xe5\x29\x71\x4f\x39\xe3\xe9\x97\xbb\x15\x63\x37\xcf\xd9\x55\x31\x9e\x24\x49\x52\xfb\x26\x6e\x72\x78\x3a\xc2\x30\x47\xd5\x2b\x99\xb9\xcf\x19\x57\x03\x22\x81\xda\x41\xca\xc0\xe7\x81\x90\x1b\x32\x98\x62\x30\x9e\xeb\xb0\x03\x01\x0c\x06\xb9\x4d\xad\x54\x4b\x1d\x6f\x2f\xd5\x39\x80\x79\x19\x1c\xa2\x9b\x05\x4a\x45\x53\x70\x2f\xa6\xb1\x4e\xd9\x75\x4d\x0a\x95\xb5\x0b\x3b\x59\xbb\x64\x66\xa6\x50\xfe\x82\x80\xa9\x83\x8d\x6d\x5e\x2f\x11\x4b\x2c\x53\x18\x24\x27\x6f\x7f\x3a\xf9\x78\x7e\xf2\xee\x6f\xaf\x3f\xbe\x7f\xf7\xf6\xe4\xdd\x99\xfb\xea\x27\xff\x2c\x81\x97\x28\x8c\xb7\xbc\xf0\xd5\xbf\x0a\xca\x93\xeb\x56\x73\xd8\x9e\x65\x39\xc5\x31\xe8\xdd\xb3\x73\x03\x76\xa8\x04\x05\x28\x67\xb3\x99\x4c\xa5\x63\xe4\x14\xe2\xd2\x0c\xc2\x5d\x02\x1d\x85\x42\xc7\xfa\x08\x24\x88\xfa\xf4\xa3\xc0\xfa\x48\xab\xae\xa4\xfe\xeb\xd9\x27\x1b\x6d\x25\x83\xe9\xad\x1e\xa3\x32\x47\x34\xd9\x06\xa1\x2e\xd2\xb8\xed\xf2\xfa\x63\x54\x2f\xc0\x0f\xfd\x87\xce\x6c\x7b\x24\x1d\x6d\x6f\xa3\xbd\x02\xde\x5f\xfc\xdd\xbc\xca\xd7\xa0\xaa\x54\xa9\x9e\x33\x50\xb8\xa2\x21\xd6\x0f\x2c\xff\x46\xfc\x16\x5b\x76\x88\x0a\x37\x62\xad\x25\xdf\x7f\xa5\xd8\x67\xaf\x00\xa6\xba\x58\x63\x47\xcd\x2f\x76\x27\x01\xf4\x4d\x2f\xb6\x2f\xdb\x2e\x84\x12\xf4\x14\x80\xc2\xc0\x4f\x61\x0e\xf4\xcd\xeb\x81\xb7\x66\x6a\x38\x85\x7e\x8a\x4a\xe1\x63\x6c\x4b\x9f\x7b\x87\x57\x54\xba\x57\x15\x30\x35\xb1\x21\xbe\xb2\x74\xb9\xc4\xf3\x3a\x51\x59\xac\x14\xa0\xdc\x59\x47\x85\xa3\x3f\x30\xd1\x0b\xfb\xe2\x40\xe8\xb9\x0f\x24\x3b\x68\x46\x9a\x40\x48\x8f\x09\x15\x9e\xc9\xba\xb1\x6d\x9d\x88\x6e\xc0\x4c\xc0\x89\x6f\x82\xb4\xd6\x57\x98\x1b\x3b\x4c\xfd\xee\x84\x27\x7c\x3a\xaa\xec\x72\x29\xe4\x49\xc5\x01\x80\x40\xae\xdf\x60\xb3\x91\xff\x52\x98\x7f\xa5\x42\x86\x1e\x61\xf4\xec\x23\xbe\xcc\x04\x11\xea\x4f\x31\x06\x82\xca\x66\x29\x8f\xeb\x25\xd4\xca\xa7\x56\xba\x61\xca\x64\x59\x59\x2a\xdb\x89\x6a\x5c\xa5\x83\x41\x9c\x8b\x6f\x63\xf9\x7f\x24\xff\xaf\x22\x72\xa4\x60\x94\x8a\xc3\xa8\xc0\x5c\x56\x2a\x64\x71\x51\x15\x03\x00\x89\x18\x2a\x1b\x9b\x51\x04\x7b\x1e\xb5\x94\x2a\x5b\xe7\x12\xb6\xbd\xf1\xd5\xf0\x68\xa0\x6c\x7d\x90\x1d\xed\xac\x45\x21\x07\x25\x80\xf2\x12\x20\x5d\x16\xab\x27\xda\x7d\x84\x7b\x57\xd0\xed\x28\xe6\x07\xdf\xc1\xef\xc1\xcc\xc1\xe3\xd0\x8d\x98\x90\xe7\x7e\xac\x40\xe8\x3e\x22\x7a\x62\x96\xac\x80\x9a\x9f\x0e\xe3\x46\x3a\xd6\xcd\x66\x68\x82\xaa\xba\x99\x5e\x9f\x0d\x21\x75\xb3\xbb\x3e\x1b\x42\xd2\xf4\x7e\xc3\x70\xed\x0d\xa9\xd9\xa3\x13\xe0\x88\x55\xf1\x8d\xa8\x0d\x6f\xc4\x06\x83\x03\xaa\x5f\x22\x99\xfb\x04\xa8\xc3\x1d\x3d\x8d\x87\x90\xb7\x3d\x7f\x12\xe0\x28\x4c\xe4\x45\x3d\xa9\x19\x0c\x89\x1b\x62\xed\x93\xb2\xde\x2c\x7b\x0d\x6c\x77\x8d\x26\x58\xbb\xef\xfc\x46\x11\xd0\xf6\xc8\x78\x76\x5b\xa3\x0d\xdf\x78\x42\x5b\x6d\x24\x0c\xcf\x57\x33\x1b\x8e\xa7\xae\x93\x55\xb4\xda\x62\xb4\xe1\x6d\x70\x06\x7a\x9e\xdf\x1e\xf2\x7e\x6d\x36\x32\xc4\x09\x9e\xb0\xa9\x58\x14\xed\xe6\xa7\xd2\x48\x98\x80\x24\x5a\xfc\xd6\xeb\xa1\xa3\xf9\xd8\x83\x4b\xdc\x47\x08\xe4\xa5\x1e\x99\x58\x74\x29\x29\xc0\xf4\x56\x3b\x73\xeb\xdb\x0d\x6a\x56\xa8\x84\x32\xbd\x8d\x03\x40\x9c\x3a\xf9\xee\x3e\x52\x48\x5d\xcf\xc6\xc1\x20\xde\x0e\x11\x91\x7a\x9c\x33\xb8\x0e\xce\xa5\xd6\xe8\xfe\x82\x95\x49\xf7\x97\x9d\xd3\x42\x24\xae\xe5\x33\x6b\x19\x67\xa0\x61\xe7\x7c\xa7\xc7\xa5\x90\x53\xfc\x48\xaa\x79\xfd\x43\x0a\xba\x3e\xc2\xa9\x2d\xd5\x79\xef\xef\xa7\x7c\x09\xc5\x6e\x7b\x80\x20\x87\xa4\xd0\x8a\x6a\x1d\xeb\x33\x9c\x61\x35\x0e\xe5\xaa\x49\x72\x8a\x83\xd1\x6e\x70\x92\x5f\x5e\xba\xea\x63\xaf\xcd\xde\x4d\xd2\xb9\x12\x48\x8d\xe5\x6e\x0b\x00\x86\x17\xf9\x17\xec\xd5\x94\x21\xe4\xf8\xf6\x48\x73\xb9\x8e\x34\x37\xc7\x4b\x86\x67\x29\xc7\x1f\xd4\x02\x28\x74\x79\xad\x7c\xab\x83\x54\x3b\xff\xf6\xd3\xf9\x5c\xb0\xcb\xa2\x4f\x16\x82\x0c\xe4\x53\x7b\x5f\x2f\x63\x33\x41\x4c\x7f\x21\x01\xf7\xff\xf4\xdd\x1a\x97\x7f\xea\xf3\xeb\x94\xf7\xaf\xd3\xa2\x2f\x06\x3f\xff\x24\x87\x22\xc1\xba\xf1\xee\xea\x27\x1f\xc2\x2e\x0f\xa8\xc2\xd3\xb9\x1f\x0f\x8c\xc8\x40\xfd\x13\xbb\x17\x00\x47\x1b\x96\x94\xac\x0a\xdc\xb5\xf6\x42\xb8\xd9\xc7\xbd\xc6\xb5\xc3\x24\x3c\x11\xf7\xdc\xda\x0c\x88\x86\x9f\x5b\xf8\x8d\xe8\x99\x5d\x82\x63\xb5\x26\xc9\xf6\xaa\x56\xde\x71\x99\xcc\x8a\xd2\x08\x92\xc5\x82\xe9\x99\x42\x21\xb3\x26\xac\x99\xb5\xca\x0b\x0d\x34\x73\xb2\x0d\x6c\x8b\x9e\xd5\x91\xa1\x08\x06\x76\x74\x79\x9b\xf4\xa9\x5d\xd3\x98\x76\x0b\x0b\x74\x0b\x3e\x22\x86\xfe\x2a\x67\xf2\x34\xd8\x15\xd4\x51\xd7\x95\x5b\x15\xf9\xb2\xb3\x53\x9b\x68\x0f\x1b\x5b\xdf\x3e\xec\xd4\xc7\xee\xef\x66\x95\x50\xbd\x57\x0f\xc7\xc6\x6a\x44\xb9\x95\x00\xe5\x53\xe7\x3b\xd7\x03\xca\xa3\x43\x1e\xa2\x43\xa6\x12\x49\xb4\xd0\xa2\x51\xf9\xc5\x3e\x7c\x58\xa3\x4e\x06\x79\x88\x3a\x75\xde\x03\x1d\xe3\x8f\x82\xd6\x16\x2a\xe1\x02\x05\xa5\x18\xe4\xfd\xd0\x6e\x93\x35\x6c\x43\xa4\xcc\x22\xe6\xa2\x52\x29\xad\x0d\x1e\xad\xaf\x86\x09\x34\x7d\x49\x91\x75\x2a\x49\xe6\x64\xae\x0c\x04\xd1\x81\x4e\x60\xba\x2a\x70\xf1\xf2\xfd\x5b\xed\xda\x63\xbe\x32\xfc\x9f\x2b\xc2\x70\xf1\x22\xc3\x29\x5d\x2d\xd1\xc1\xf1\x96\x35\x31\xbd\xd8\x84\x0f\x55\x27\xca\xe1\x27\x8c\x29\xb8\x7b\x51\x40\x09\x43\x49\xe9\xaa\x59\x37\x8e\x2e\x9d\x1a\xaf\x36\xab\x21\xdc\xd6\x26\xf6\x11\x67\xd0\x06\xc2\x19\xf1\x1c\x40\x36\x8d\x64\xf5\xbb\x0d\xd6\x28\x0e\xe3\xd5\x1f\x99\xc9\xf8\x13\x18\x4b\x1b\xb9\xe9\x0a\x26\x0d\x93\x37\x71\x6f\x70\x81\xd3\xbb\x75\xb0\xfe\x32\x9a\xd4\x4f\xb5\xc1\xeb\x00\x9b\x66\xe8\x97\x97\x6d\xe0\x3c\x3a\xb4\x21\xc5\xf3\x3d\xe8\x5d\x5d\x9c\x6f\xe9\xc9\xfa\x53\x9e\x8b\x01\xf7\xb6\x6c\x9a\xcf\xf8\xa6\xca\x90\x8e\xe7\x64\xe6\xba\x86\x05\x88\x80\x8d\x99\xf4\x0b\x46\xc8\xb8\x6a\xea\xf7\x5d\xf6\x53\xbe\xa2\xf3\xdd\xdb\xc5\x54\x7f\x45\x91\x4d\x31\x53\x77\x45\xd7\x63\xb4\x23\x04\xd6\x4f\xa9\x31\xc6\x98\x02\xe0\xc6\x43\xdd\xbe\xa9\xe0\xc1\xb0\x84\xb5\x61\xc4\x60\xb3\x69\xfa\x5e\x05\xc7\x01\x2b\x76\x52\xb5\x07\x41\x34\x0c\xb7\x93\xad\x57\x5b\x3f\xf5\x57\x20\x07\x03\x3d\x20\x45\xb9\x77\x1e\xd3\x2b\x4b\x80\x3b\x84\x85\xdb\xf9\x85\xec\xf1\xc4\xfc\x60\x32\x82\x1f\x8d\x11\xca\x98\xfa\x61\xb1\x1b\x74\x98\x39\xe8\x29\x9b\x50\xee\xe9\xd1\xf7\x08\xc6\xe8\xda\x50\x76\x0f\xa4\x72\xcf\x81\x3d\xba\xaa\x65\xf6\x46\x77\x6b\x03\x19\x9e\x1d\xae\x7d\xd7\x88\x2b\xcc\x47\x01\x1b\x40\x89\xda\x72\x17\xb4\x0f\x16\x87\x9d\xa0\x32\xcf\x88\x47\x40\x97\xde\x0d\x7b\x53\x82\x5d\xba\x1d\xf7\x75\x1d\x45\x56\x1b\x18\x1c\xa5\x59\xd6\x79\xb1\x4d\x00\xda\x7b\xd7\xf1\xaa\xb1\xa8\xc8\xb3\x88\x35\x23\x95\x5a\x2d\x9c\xc9\x2c\x2f\x1d\x72\x87\xe6\x0d\x53\xe5\x68\xb2\x66\x02\x50\xea\x47\x1b\xb1\x6c\x81\x71\x47\x50\x73\x76\xbd\x59\x27\x0c\x7a\xa6\x05\x7f\xaa\x2a\xfe\xa9\xcf\xf1\x62\x29\xee\x4e\x7d\x35\x7d\x69\x64\xa0\xd2\xa6\xcd\xa3\x72\x0a\x74\xdc\x53\xc5\xfd\x54\x87\x89\xaa\x19\x33\xd0\x7d\xff\x99\x65\xb1\x4e\xb2\xf7\xba\x26\x2e\x02\xab\x3b\x42\x2b\x9e\xec\x20\xaa\xbf\xe4\x53\xc2\x2d\x96\x56\x03\x68\x5f\xdb\xfb\x45\x5f\xdd\x30\xe9\x9e\x03\x24\x07\xc6\xce\x83\x63\xf7\x7a\x55\x31\x15\xe5\x1b\x7a\x15\x54\x91\xeb\x37\x76\x15\x56\x50\x85\x28\x33\xe0\xf9\xf6\xc9\xca\x5c\x7b\x7b\xbe\xcb\xdc\x73\xf0\xa5\x6e\x67\x67\x25\x4c\x1c\xe9\x50\xee\x47\x36\x88\x75\xb7\x9b\xff\x1d\x2d\xa7\xee\x57\x5d\xd0\xf1\xb0\xeb\xe8\x4a\xec\x9a\xd4\xef\x08\x47\x05\x67\x0f\x76\xfe\x69\x7d\x60\xe7\x23\x50\xd7\x7f\xf8\x53\x70\x2b\x74\xcf\xb4\x75\xaf\x2e\xbc\x96\x5b\xfb\xe1\xdd\x25\x03\x26\xb9\xe8\x4e\x68\x7f\x56\x84\xb1\x07\x48\xd9\x62\x27\x36\x5e\xdb\xcd\xd8\x09\xb4\x6f\x6a\xb1\x15\xba\x3c\x29\x3b\x01\x25\x49\x9a\x65\xbb\x60\x9d\x62\xce\xa5\x37\x60\x77\x90\xba\xc9\x56\xc8\xd7\x69\x71\xdd\x19\xa6\xa8\xbc\x13\xda\xbe\x03\x75\xda\x6c\x85\xcd\xd2\xce\xab\x44\x12\x51\x79\x2b\x34\x57\xcb\xd8\x11\x6a\xee\xa9\x26\xbb\x40\x97\x4a\x88\x7d\xa1\xcb\x46\x5d\xa0\xef\xb9\x87\xf3\xba\xf6\x73\x6b\x1f\x36\x61\x77\x47\xe8\x69\x95\xe2\x7b\x3b\x25\x7b\xb9\x30\x3a\x02\x2f\x6a\x19\x81\xb6\xf6\xa0\x53\x43\x74\x06\xad\xeb\xef\xa0\x3d\x93\x66\xa8\x33\xd8\xaa\xc9\x4e\x1e\xd4\x11\x66\xd6\xed\x0e\xb5\x0f\xa7\x5c\x55\x7c\x7d\x3b\x35\xe8\xc8\xa7\x1d\xc1\xce\x6c\xa8\xd4\x4e\x50\xf7\x19\xf1\xcc\x8f\xc2\xba\x15\xbe\x13\x83\xb5\x33\x74\xa7\x4d\x57\xd8\xfb\x0d\xbf\xde\x70\x6b\x2f\x36\xee\x6e\x67\xf0\xb6\xc5\x56\xb8\x7e\xac\xd9\xce\xc0\xfd\x66\x7b\xf4\xb0\x1f\x8a\x02\x6d\xb7\xef\x4e\x3f\x06\x6e\xe7\x7e\x6a\xed\xf6\xe9\x63\xbf\x09\x85\x1a\x97\xe1\xdc\x6b\xcb\x9b\x27\xe2\x7f\xe1\x1b\x8a\x2e\x7c\x98\xb4\xa9\xe6\x02\xe5\x40\x55\x4e\x91\x21\x17\x2f\xba\xca\x32\x54\x65\x85\xee\x4b\x77\xeb\x83\x7a\xdc\xcf\xc1\xc0\xba\xf0\xe9\xec\xd8\x31\x76\x14\xb8\x62\x2e\x31\x6b\xa4\xbf\xd1\xf1\xce\x4d\x30\xd5\x46\xf7\xcc\x76\x6f\xbc\x34\xfb\x4c\x9a\x9c\xa5\xb0\xd0\x19\x6d\xe2\x02\x11\x95\x56\xfd\xfd\x65\xcc\x00\x78\x86\x86\xa6\x6a\x3e\x29\x64\xde\x1b\x7f\xac\x0c\xc8\xbe\x52\x9b\x95\x07\x40\x2a\x83\xb8\x16\x28\x35\x91\x57\x8e\x8e\x8a\x67\x68\xf8\x14\xa4\x93\x62\x8a\x70\x2c\xfe\xd1\xc3\x2c\x71\x56\xe0\x3e\xb9\x8c\x1b\xd3\x65\x00\x08\x98\x72\xa6\xaa\x6e\xcf\xd4\x65\x7d\x73\xed\xca\x2f\xfb\x2f\x53\x8e\x81\xca\x63\x20\xfe\x8c\xa5\x76\x5c\x9c\x1f\x31\x00\x55\xe0\x2d\x2e\x0d\xd8\xa5\xd1\x63\x8a\xd6\x25\x64\xa0\xee\x1e\x27\xa4\x29\xc7\x42\x4a\x45\x43\x63\x90\x83\xc1\x20\x3a\x3f\x8f\x94\xaf\xd3\xea\x42\x25\x1a\x88\x87\xf0\x7b\x30\x18\xc4\xe9\x84\x4f\x11\x1d\xe3\x98\x4d\xb8\x99\xd2\x48\x85\x82\x11\xb8\x24\x2a\xc6\x1f\x03\x30\x57\x7f\x39\xa1\xe9\xd3\x52\xe6\xcd\x60\xe3\x89\x8e\xc3\x69\xff\x02\xa5\xb8\x97\xb7\x90\x77\x3d\xd9\xe7\x03\xa9\x1a\x94\x76\xe1\x2d\xf9\x46\xa8\x63\x8f\xbd\xbc\x91\x03\x6c\xdd\x7f\x5b\x54\x04\x76\x77\x76\xd9\x92\x77\x57\x74\xb7\x36\x50\x83\xe8\x78\xed\xd4\xd8\xd8\xca\xde\x5e\xd8\x45\xe9\x78\xc3\xaa\x80\x36\xb1\x38\x4f\x79\x7a\xb4\xc8\xe7\x38\x3b\xba\x64\xe9\x95\x7c\xa0\x7a\x92\x8a\x7d\xf6\xc4\xfc\x0e\xa1\x77\x4b\x33\x69\x96\x25\x43\xe0\x6f\xab\x5b\x01\xdf\x56\x6b\xc5\x49\xf6\xc4\x6c\xbd\xa3\xfc\xf2\x48\xec\x9b\x3d\xf3\x1b\x89\x4d\xa2\x3d\x05\xac\x33\x80\x8e\xab\x9f\x7f\xa5\x98\x45\x00\x16\xce\xe7\x14\x46\x05\xcf\x19\x8e\x00\xcc\xfc\xda\xb2\x6f\x00\x57\x35\x18\xca\x1f\x24\x02\x70\xe6\x17\x50\x21\x33\x57\x81\xdf\x92\x45\xba\x8c\x63\x0a\xe7\x00\x3d\x5b\x07\xe0\x0a\x3e\x27\xdf\x46\x48\xf1\x4a\xcf\x1f\xc4\x14\x80\x75\x8e\x4c\x1c\x0d\x55\x4c\x95\x36\xe7\xad\x40\xd5\xab\x9c\x81\x38\x07\x2a\x76\x10\x9b\xbf\x4c\x79\x5a\xf9\x41\x80\x1e\xde\x6c\x64\x9b\x02\x73\x03\x53\x16\x81\x38\x87\x29\x9c\x69\x5e\x98\x23\x3e\x99\x4f\x61\x3e\x26\xe3\x7a\x6d\x01\x50\x54\xa6\x60\x64\x9d\x20\x1c\xdf\x14\x59\x90\xab\x71\xa9\x3d\x5b\x0d\xbd\x80\x99\xe8\x03\xae\x1c\xc3\xcc\xbc\xbc\x95\x6e\x35\xa0\x8d\x24\xa8\x62\xdf\xda\xa5\x63\x2d\xf0\xa8\x18\x9b\x5e\x13\xf5\xe3\x9c\xe6\x6c\x21\x2d\x4b\xc5\x6c\x5c\xe3\x14\x65\x49\x5c\x8b\xb5\x1d\x49\xbf\x0f\xca\x23\x00\xb1\x8c\xe0\x08\xcf\xd5\xd4\x4e\x69\xba\x2c\xae\xf3\x9a\x5f\xba\x5c\x56\x19\x8e\xb9\x51\x4d\x34\xbd\xcc\x56\xc5\xf5\x0b\x19\x5e\x65\xfe\x9c\x73\x46\x2e\x56\x1c\xdb\x18\x45\xba\xed\x1a\x27\xad\x15\x4b\x01\x45\x5c\xd7\xf2\xc5\x82\xf0\xca\xda\x5b\x3d\x1c\x37\xfd\x72\xab\x00\x5d\x3a\x67\x26\x4f\xdc\xe6\x83\x81\x34\xab\x95\x50\xd3\x79\xba\xe4\x98\xbd\x24\x73\x3f\x14\xd2\x6e\xd8\x5c\xc1\x6d\x02\x10\x70\xaf\xd3\xe2\x25\x61\xfc\xa6\x9a\xc5\xa8\xe6\x9d\x1b\xfd\x1b\x4e\x67\xd7\x49\xb3\x62\x04\xa3\xf3\x9c\x91\x2b\x42\xd3\xec\x54\x19\x37\x87\x62\x54\xb4\x0d\x52\x3f\xfe\x93\xe2\x39\xbd\x89\xa3\x00\x78\xc9\xff\x58\xae\xde\xa7\x9b\xcb\xd1\x3e\x71\xf5\x0e\x12\x47\xcd\xb6\x11\x28\x61\x81\x99\x32\x5d\xae\x8d\xd1\xb4\xb2\xe5\xa2\x32\xc3\xcb\x2c\x9d\xe1\x17\x8a\xca\x7c\x07\xc7\x76\x52\xcc\x91\xa6\x56\xa2\x65\x1e\x0c\xf1\x21\x07\x8e\x1b\x23\x49\x34\x64\x09\x32\x07\x25\x4c\xe7\x73\xb3\x1d\xeb\x11\x63\xe5\x73\xfa\xdf\x95\x8c\x27\x86\xb4\xc8\xbf\xe0\xb6\xba\xe6\xa5\xdb\x56\xf7\x77\x7a\x15\xcd\xa9\x3e\x7a\xc3\x5d\x99\x5b\x52\x71\xd7\x46\x94\x7b\xc3\x60\x09\xaa\x73\x93\x98\x42\xec\xbb\x25\x09\xd9\x46\x0f\x89\x80\x12\x7e\x25\x59\xa6\x1d\x31\x77\x2f\xa6\xa1\x62\xb5\xf3\xe6\xa6\x59\x69\x7c\x99\x3c\x0a\x6c\xaf\x5d\x96\xee\x53\x46\x20\xb9\x65\xa7\x33\x32\x2c\xb9\x6c\x3f\x15\x65\xeb\x47\x78\xab\xf7\xde\xac\xa4\xec\x2d\xfd\xa3\xac\x0f\x5d\x62\x24\x11\xb8\x96\x6b\xad\xa3\xbb\xa7\x0b\xcd\x86\x09\x25\x7c\xf7\x72\x9c\x2f\x31\x9d\x13\x7a\x25\xb8\xb3\x31\x12\xb0\x87\x8d\x8d\x85\xee\x73\x85\xc9\x54\xd0\xa1\xda\x1d\x75\xee\x12\xe0\x18\x7a\x06\xb1\xdc\xff\x52\xbe\x6f\xf2\x70\x2e\x05\x7f\xb9\x9b\xf9\x6a\x69\x8e\x0a\x1b\x85\xd7\x1d\x64\x75\x97\xea\x35\x0b\xb1\xe7\xb2\xe6\x9f\x3d\x6a\x1c\x8b\xf4\x33\x36\xb7\xae\xda\xee\xf0\x77\x7d\x6f\x17\x1a\x04\x03\xb0\xdb\x7e\xe8\x9c\x64\x0c\x46\xea\x22\x14\x01\xc8\xdb\xf1\x5c\xd6\x0e\x47\x69\x3f\xb4\xe3\xbc\xe3\xb9\x1a\xfb\xd6\xd3\xad\x7e\x66\x69\x93\x34\x17\xb5\xa3\x9d\x93\xf3\x7a\x0b\x1d\x58\xa2\x9f\x0e\xa7\xcd\x64\xda\xed\x5c\x19\x1e\x20\x54\xb5\x4d\x99\xc9\xfe\x6b\x86\xd0\x90\x14\x6a\x30\xc1\x8e\xe3\xa5\xc0\x5c\x6d\xc9\x22\xde\x0d\xa9\xf5\x50\x71\xf0\x2f\x79\x89\x3e\x48\x5e\x92\xb9\x5a\x88\x6d\x1b\xae\x17\x4c\x44\x65\x19\x75\x93\x85\x6b\x19\xb6\xfe\x39\x74\xb4\x2a\xd9\xd1\x30\xa9\x97\x64\x2e\x6b\xa8\xd4\x54\x5c\xa6\xab\xaa\x57\xf8\x88\x0b\xcc\x81\x89\xa8\xaf\x7d\x29\x4f\x04\x6f\x29\xdc\x75\xf9\x24\x87\x17\x7f\xb7\x0e\x0e\x3b\x21\x73\x71\xac\x7f\xf2\xb9\x71\xe0\x15\x3d\xcc\x8d\x1d\xd1\xa3\xe3\x25\xc7\x5e\x5c\xf6\xb0\x44\xe0\x55\x4a\xc5\xe8\x68\x71\x79\x14\x1d\x9a\x90\x77\x31\x3d\x44\xd1\x77\x91\x3c\xca\x07\x03\x96\x2c\xf3\xec\x66\x91\xb3\xe5\x35\x99\x81\xb5\x2e\x8b\x59\x22\x4e\xc6\xbf\xe2\x9b\xcd\x46\x9f\x91\xc6\xd9\x91\x96\xde\x5d\xc7\x49\x5c\xdc\x39\xe5\xda\x60\xe0\xfe\x0a\x25\xd3\xfc\x97\x60\xcb\x7f\xf1\x5a\xfe\xcb\x14\xa6\x48\x49\xe0\x18\x92\xc2\x12\x86\xb8\x96\x56\x17\x1a\xf1\xcb\xc8\xe6\x0c\xb1\xcd\x66\xdd\x9a\x52\x6d\xad\xfc\x5b\xd7\x5a\x57\x84\xa4\x0d\x47\xf3\xee\xc3\xdd\x94\x90\x29\x22\xe3\xa2\x7e\x17\x32\x7d\x6b\x8e\x2b\x9f\x9c\x25\xfd\xe4\x60\xd4\x5a\xd9\xa9\x07\x60\x2a\xcf\x84\x18\x43\x93\x0f\x08\x66\x9d\x86\x43\xc6\x71\x81\xb2\x3d\xc6\x03\xeb\xd5\x8b\x5a\x75\xa9\x2c\x8e\x31\x2c\x60\xaa\xda\x50\xc8\x60\x0e\xc0\x68\x5b\x47\xde\x5c\xb6\xf4\x10\x02\x0e\x00\xf4\xeb\xdb\x7d\x30\xc1\x53\x54\x94\x25\x48\x16\x98\xa7\x71\x0a\x4a\xdf\x83\x10\x32\x71\xe9\xb6\x17\x2d\xf5\x45\xd0\xc2\xad\x2e\x80\xa6\xd7\x16\xb7\x81\x98\xc5\x51\xa5\x4f\xc0\x90\x23\x2e\x48\x0b\x40\x0e\x95\xeb\xc1\xa5\x8b\xc4\x30\x10\xbe\xd9\xc4\x1c\x89\x46\xc4\x05\x77\x24\x79\xac\x04\x2a\xc1\xa9\x1b\x21\x4e\xd2\x00\xa4\x46\x3a\x13\x3c\x8e\x39\xc2\xd0\xc4\x06\x06\x23\xdb\x89\x25\x11\xd1\x97\xe9\x42\x74\x20\xe5\xa6\x83\x63\x6f\xd4\xf2\xca\x8e\xda\xa4\x9a\x2d\x72\xcf\x36\x22\xf5\x56\xf5\x5c\xb2\xd2\x12\xe8\xd5\x5c\x57\x3b\x56\xf6\x2d\x97\x21\x61\x38\x9d\xbf\xa7\x99\x38\x79\x3a\x72\x57\x99\x95\x3e\xcc\x56\x9f\xa8\x5b\x80\xf7\x49\x36\xf7\x3f\x19\x43\x92\x5a\x5b\x73\x34\xb2\xe2\xc9\xdf\x0b\xc7\xfc\x65\x9b\xb4\xbc\xb5\x8e\xc2\x85\x2c\xbb\x1d\xf7\xbf\xcf\x58\x45\xad\x0d\x4e\x15\xce\xee\x51\x95\xf8\x56\xa1\x7c\x6f\x3d\x62\x3b\xc4\xff\x7d\xfa\xfe\xdd\xa9\x5d\x9f\xce\x36\x00\x15\x68\x1b\xb9\x90\x26\xaf\x5d\xd2\x75\xc2\x99\xac\x10\x4d\x3e\x56\xd4\x6b\x0b\xb4\x9c\xa2\x7d\xd4\x57\x70\x8d\xd3\xd9\xb5\xa1\xe4\xbf\xe2\x9b\x4a\xc3\x61\x17\x14\xd5\x7e\x6f\x36\x7a\x66\x46\x05\x5d\xcd\x55\x3a\x41\xd7\xaa\x57\xf1\xd0\x25\xa3\xf1\xbb\xd3\x0c\x55\xf7\x59\x1f\x0b\x47\xcf\xd6\xc6\xbb\x9f\xab\x10\x3c\x15\xcb\xe6\xa0\xc7\x06\x03\x2c\x75\x38\xa5\x8d\xad\x80\x59\x23\x39\x90\xdc\xb7\xd0\x86\x26\xb1\x13\x94\x05\x08\xcb\x22\x93\x91\x46\xdf\x48\xa4\x7f\x93\x04\x19\x88\xf9\x2c\x8b\x65\x61\x9b\x3a\x60\x3f\xdc\xd5\xaa\x4c\xf0\x54\x0e\xc9\x39\x9b\xf8\xfd\x82\x37\x2e\x13\xb5\x3e\x03\x1a\x34\x52\xbc\xc3\x5f\xd1\xc1\x31\xc4\xe3\x18\x27\x4c\x9b\xd2\x15\xd7\x64\x59\x68\xb3\x7f\x15\xa9\xef\xa3\x5b\x22\xe3\x22\x25\x64\x6e\x5c\x5b\x24\x1b\xfb\x45\x06\x36\x91\x77\x19\x45\x96\xaf\x75\x80\x19\xc9\x3d\xa4\xdb\x89\x68\xa3\x06\x36\xcb\x08\xa6\xdc\x7a\x5d\x91\x39\x92\x76\xd0\xb3\x1c\xb3\x19\x7e\x3d\x07\xb1\xa8\x0a\x00\x94\x1e\xa0\x56\x3c\x85\x21\x1a\x52\x04\xa6\x15\x7d\xcc\xd3\xf3\x4d\xf8\x14\x00\xed\x33\x13\x6e\x65\x72\x89\x39\xad\x80\xd9\x7c\xe6\xf6\xaa\xe2\x42\xcf\x75\xac\x12\x5f\x52\xd3\xbb\x4c\x55\x14\xbc\x52\xe3\xfd\x9c\xd0\x57\x19\xb9\xba\xe6\xcf\x6b\x83\x3f\x77\x66\x63\xc2\x08\x39\xdf\x1c\x87\xb0\x00\x08\xb7\x74\xb5\x9c\xa7\x1c\x07\xae\x9d\x50\xb2\xa6\x4a\x31\xcc\x70\xbe\xc4\x34\xd6\x29\x5b\x2a\x8e\xf1\x2a\x67\x95\xbd\xbd\x14\x97\xed\x79\x8c\xf4\xa2\x60\xca\x65\x94\xca\x17\xe9\xec\x5a\x06\x28\x7f\xcf\x5e\x38\x50\x5e\xdb\x0a\xb1\x15\x7a\xe7\x23\x0e\x33\x32\x1f\xb1\x12\x40\x15\x15\xd6\x24\xcf\x21\xd2\x69\xac\xae\x36\xb3\x3e\x44\xbd\xb5\x87\xf5\x7a\xe7\xaa\x5d\xd5\xe3\xab\x9c\xbd\xc3\x5f\xd5\x38\x4c\xef\x42\xa2\x40\x06\x77\xfe\x79\xff\x11\x17\xf9\x8a\xcd\x70\xcc\x41\xc9\x12\x65\xa2\xa9\x42\x87\xa0\xbc\x52\xa1\x2f\x96\xfc\x06\x32\x5f\x28\x90\x9c\x42\x3d\x14\x06\xa4\x05\x53\x92\xe5\xe9\x1c\xcb\x82\x58\xdd\x2f\x29\x92\x97\x34\x3d\xc0\x4a\x6d\x37\x18\xd0\xda\xf3\x01\x07\x90\xda\x70\xdc\x91\x90\x2f\x6e\x22\xf1\xe9\xbc\x92\x3f\xd0\xc1\x10\xd2\xd2\xb9\x42\x68\xa5\x4c\x94\x2e\x97\x19\x99\xa5\xda\x05\x0a\xe1\xcd\x26\x3a\xd2\xb3\x89\x1c\x05\xcd\xc1\xb1\xab\x8e\x59\x68\x9c\x38\xc4\x5c\xd4\x5f\x81\xb9\x7b\xf7\x66\xaa\x72\x5d\xc1\x59\xc5\x99\x02\x90\xa9\xfd\x6b\xf5\x28\x6f\xcd\x9e\x07\x71\x4d\x67\xe9\x4c\x82\x81\xb1\x2f\x3b\x9a\x28\x2c\x59\x9e\x7f\x5e\x2d\x1d\x95\x31\x1b\x89\xcb\x61\xaf\x1e\x05\x93\x8d\xd9\x28\x6e\x69\x60\xc5\x95\x08\xc0\xaa\xc1\x66\xd3\x5a\xdf\xe0\x0d\x00\x71\xdc\x48\x7e\x32\x6a\xd5\x21\x88\x2d\xc6\x1a\x5b\xac\xab\x02\x36\x1e\xc2\xa2\x93\x48\xca\xb0\x73\x4c\x14\x71\xb0\x5b\x95\xc0\x6a\x7d\x49\x70\x36\x6f\xa8\x7d\x9a\xf9\xb7\xc5\xa6\x7c\x9b\x2e\xbd\x35\x11\xbc\xd1\x04\x26\xb5\x62\x8c\x79\x3a\x71\xdf\xe2\xc6\x58\xa9\xaa\x60\x75\xd3\x00\x23\x51\xc1\x3d\x1e\x6c\x25\x96\x7c\x26\x74\xae\x2a\x58\x0e\x35\x18\x58\x18\x96\xed\x45\x40\x5c\x70\x84\xe4\xed\x88\xd7\x00\xd6\xf5\xba\x6a\x5f\xc9\xdc\x6c\x32\x61\x49\x73\x6e\x3a\x42\x18\xd7\x71\xc7\x8c\xc2\xc7\xca\x6e\x55\xaa\x35\xec\x65\x82\x8d\x33\x18\xf9\xfa\xbe\x08\xd6\x8d\xfa\xfb\x1c\x61\x97\x55\xf7\x02\xd1\x61\x38\xf0\x34\xe5\x8a\x9e\xf9\x04\x4f\x7b\xe1\xc8\x0d\xac\xfe\x5e\x26\x4e\x54\x71\x7e\x37\x0a\x62\x60\x70\x04\x49\x83\xee\x38\x4b\x69\x71\x99\xb3\x85\xde\xa8\xe4\x32\x16\xd4\x8e\xad\x41\x89\xd2\xb7\x58\x43\x96\x76\xd5\x98\xe1\xc1\x2d\x9b\x3c\xb2\x3d\x8d\xb4\xf6\xe6\x80\x27\xd7\x69\xf1\x51\x86\xf7\x64\x92\x04\xa4\x65\x8a\x09\xbf\x80\x93\x85\x74\xdb\x7e\xf2\x1f\x62\x04\xb1\xa1\x9a\x8d\x7f\xb3\xdc\xc8\xff\x83\x78\x3c\xfa\xf5\xbb\x78\xf2\x1f\xdf\x4d\x0f\x01\x18\xab\x5f\x89\xf8\xf3\xbb\x27\x00\x12\x44\x27\xc7\x53\x98\x23\x3a\xf9\x7e\x0a\x53\x44\x27\x3f\x4c\x75\xfc\x39\x9e\xe8\x80\xdf\x62\xfa\xde\x10\x09\xe8\x15\xa8\x18\x0c\x84\xc0\x91\x16\x05\x2c\x50\xe1\x3f\x94\xe6\xd0\xd1\x35\x9d\xdd\x2c\xa5\x14\x3f\x4a\xa1\x94\x68\x46\x95\x70\x23\x4f\x54\x13\xc4\x34\x66\xb0\xb0\xca\x27\x6e\x98\x09\x03\xdd\x4d\x0b\xb6\x19\x15\xec\x7e\xf9\x10\x37\xca\x07\x78\xf6\xb8\xc2\xfc\xf9\x8c\xaf\xd2\xcc\xec\x76\x81\x0f\x44\x85\xd4\x56\x63\x55\x88\x40\xdc\x78\x4e\x97\x11\x7c\x6a\xaf\xe6\x28\x85\xb8\xf6\x8a\x55\x8b\x60\x00\x09\x2c\x60\xa6\x36\xd8\x0a\x51\x99\x2a\x3a\x03\x70\x86\xea\xed\xe2\x55\xf5\x80\x1e\xcf\xa4\x66\x05\xa6\xf1\x4c\x56\x2e\x65\x30\x97\x40\x0f\x6e\x1c\x17\xec\x9e\xa8\xe5\x16\xb7\x33\x37\xbc\xfe\x01\x77\x95\x91\x9b\xcd\x01\xab\xec\xc7\x0c\x57\x99\xf0\xba\x66\x72\xba\xd9\x60\x4f\x15\xe4\x24\x13\xf2\x45\x13\x2f\x93\x96\xcb\xe5\x88\x9b\x2e\x2f\x24\x78\x70\x48\x03\x82\x0a\x73\xd4\xf3\x32\xc9\x88\xf1\xd6\xae\x38\xb6\x5c\xac\x4a\xfe\x88\x80\xf7\xa0\x8d\x13\x9a\x73\x72\x79\x63\x48\x46\xab\xd3\xb9\xe2\x3e\x7e\x5a\x2a\xb0\x16\xa3\x74\xde\x33\xd6\x15\x77\x1c\xf1\x52\x39\xcb\x15\x88\x25\xea\xea\xaa\x37\x9e\x1a\xe0\x0b\xf9\xb8\x20\x9f\xcd\xdc\x17\x34\xfd\xe6\x60\xb3\x3f\x23\x84\xf8\x78\x38\x3a\x36\xef\x55\x4e\x88\x54\x77\x72\x36\xb3\x9a\xbe\x15\x49\x73\xae\x1e\x96\x07\x9b\x3d\x79\x24\x4b\x66\x82\xbb\x4a\x95\x90\x7c\xe8\xaa\xbf\x41\x60\xc1\x66\xb5\x00\x87\xab\x9b\x8b\x7e\x53\xf7\xd7\xae\x2a\xf6\x0e\x53\xc9\x2f\x9a\x4f\xb7\x6c\xeb\x53\x11\x09\x1c\xfe\x42\x9a\x30\x77\x92\xfa\x53\x92\xa9\x5f\x3d\x06\xe9\x32\x77\x09\x70\xfd\xb2\x68\x42\x69\x84\x1e\x91\x42\x23\x98\x49\x98\xbf\x08\xfe\xfe\x77\x99\x53\x28\x6e\x79\xa3\x50\xcb\xa2\x41\x40\xae\x72\xda\x34\x89\x56\xaa\xfb\xb7\xbd\x68\xc0\xc8\x3c\x64\xa8\x3a\x51\x54\x4a\x9d\x9b\x2b\xe7\x84\xc9\x78\xb7\xe0\x33\x99\xde\x4e\xe6\x91\x1d\x89\xf9\x48\x4b\x42\x1e\x14\x55\x9c\x47\x97\xa2\xe3\x11\xd0\x6a\xb3\x17\xac\xfd\x05\xb3\x82\xec\xd2\xf1\x75\xb3\x26\xab\x9b\xb5\x6d\xab\x6b\xcf\xd2\xae\xc0\x03\x0d\x8c\xf2\xb8\x63\xb3\x0e\xb5\x9d\xf7\xaa\x07\x0d\x96\x5e\x3b\x20\x8c\x4a\x4e\x51\x9a\xcc\x97\xbb\x4c\x67\xd8\x6a\x62\xfe\x76\xf2\xf1\xf4\xf5\xfb\x77\x23\x7b\xf5\x86\xf6\xc5\x87\x35\x3e\x49\x25\xfc\x88\x36\xbe\x9f\x59\xe9\x85\x84\xdb\x54\x15\xec\xc5\x15\xd6\x0a\xec\x9d\x1b\x1a\x9c\x8d\x0a\xab\x47\x87\xde\x33\x80\x53\x20\x7f\xab\xd7\xd4\x51\xa1\x54\xfb\xd0\xdb\x6c\x4e\xdd\xf7\x4a\x53\xae\x55\x8d\x19\xb9\x60\x29\x23\xb8\x18\x0c\x6a\x1f\x2a\x91\x49\x29\x59\xfb\xf6\x2e\x13\xc1\x2c\xd1\x08\x53\xc1\x0c\x56\x28\x73\x76\xd1\xaa\xe3\x2e\xf2\x54\xd6\x2d\x4a\xf6\x86\xfa\x7c\xb7\x84\x15\xb6\xb8\xbc\xb3\x82\x7d\x1f\xd3\xd0\x7d\xb6\xe9\x63\xe8\xe3\xab\x97\x98\x4a\x85\x54\xa0\xc6\x26\x11\xbc\x36\x73\xe3\x56\xf7\xc2\x0d\x33\x1d\xa4\x6a\xe5\xe4\x1a\xa8\xca\xdb\xe2\x2a\x61\x6b\xc7\x71\xe9\x4a\x99\x81\x53\x4e\x07\x9b\x57\xe1\x45\xac\x32\xb5\xb5\xa2\xd1\xb5\x75\xa8\x7a\xd9\xbd\x8a\xe4\x11\xe2\xe0\xd1\x17\x41\x47\x95\x59\xa5\x95\x92\x77\x36\x29\x41\x2a\xfd\x28\x4e\x32\x32\x07\x3d\xf7\x5a\xc9\xfc\x6b\xa5\x90\x61\x9c\x03\x4a\xeb\x69\xbd\x4e\xd5\x61\x85\xc5\x61\x95\xe9\xe0\xc0\xf2\x6c\x2e\xaf\x7c\x01\xfd\x17\xc2\xaf\x5f\xda\xec\xd6\xbc\x7a\x39\x6f\x20\x59\x5e\x62\x6b\xfa\x17\x32\x26\xa3\xa6\x06\x87\x8a\x63\x3e\x18\xa6\x50\xd3\x8a\xd4\xbd\x56\x4e\x15\xee\xd7\x58\x5a\x00\x47\xee\x27\x95\x91\x87\x22\xbf\xa2\x72\x31\x90\x3a\x30\x79\x60\x1c\x20\xc4\xbd\x90\xd9\x14\x4d\xa6\xa5\x7d\x01\x64\x5a\xdc\xa3\xf2\xe9\x32\x16\x13\x2d\xa5\xdc\xea\x6a\x22\x5d\xcb\x81\xfa\x63\x44\x08\x59\xe6\xa9\x13\x98\x3c\x0b\xae\xb6\xdd\x79\xff\xce\x37\x9b\x58\xda\x07\x17\x0d\xfb\x60\xaa\xc4\x45\xb9\x51\x05\x48\x12\x26\x5c\x21\xb4\xe6\x00\xe6\x26\x58\x55\xa0\x98\x40\xe2\xad\xee\xae\x09\x89\xc9\xe4\x2b\x2e\xf5\xb9\x2a\x1d\xa5\xbf\xbc\x48\x2c\x6f\x65\xaf\xd4\x00\x3b\x22\x65\xdb\xc3\xbc\xe2\x3b\xd2\x97\xbd\xf6\x4c\x5b\x39\xaf\x8c\x63\xf5\x0c\xbc\x1a\xdb\xd3\xca\x1e\xa4\xf2\x66\x5e\x58\x1b\x09\x6d\x4c\x87\xa1\x36\xaf\x2b\x41\x75\xf4\xd9\x36\xed\x95\x75\x78\x6c\x63\x74\xc4\x00\x18\x19\x67\x9c\xc1\x20\xe6\x8e\x4e\xdd\x7b\x41\x69\xe7\x22\x13\x3c\x15\xd4\x66\x72\x9b\x68\xc1\xb5\xcd\x1a\x88\x04\xac\x81\xe4\x5a\x4b\x53\x20\x12\x30\x05\xa2\xf2\x61\xa0\x0c\x18\x25\x28\xc4\xe6\xc6\x04\x23\x43\x9a\x7c\xc4\x9e\x61\x40\x99\xce\x17\x9e\xe9\x3c\x03\x80\x2b\xca\x6b\x5a\xbf\x4b\x9a\x03\x76\x23\xd9\xed\x13\xb2\x71\x57\x01\x84\x7b\x3c\x4c\xc5\x19\xcc\x25\xfd\xa6\xe2\x96\x23\xad\xe9\x15\x5a\x3d\x81\xdb\xa7\xcd\x54\x34\x01\x02\x8f\x3a\x2e\x5c\xed\xf9\x6a\x2b\xe6\x76\xa1\x2e\x60\x60\xa2\xcf\x42\x93\x2c\xa1\xd3\xf6\x56\x9c\x05\xc0\xf4\x36\x9b\x27\x1d\xc7\xba\x9d\xb7\x7f\xcc\x78\xc4\x32\x32\xb5\xe1\x53\x30\x4a\xcb\x60\x25\x73\x80\x17\x7a\xbd\x7b\x0e\x83\x93\xea\xef\x38\x43\x45\xdb\x06\xa2\x76\x03\x11\x7f\x4f\xf0\xad\x1b\xa8\x59\x59\x9d\x20\xfa\x8a\x2f\xb6\x4f\xe6\xec\x99\x00\x27\xca\x60\x56\x6e\xc5\x55\x33\x9b\x55\x9d\x00\xc6\x8d\x2f\x23\xbf\x72\xe3\xbc\xb6\x8d\x42\x25\xb5\xc6\xcd\x31\x8f\x5b\xbe\xeb\x86\xfe\xea\x28\xd3\xcd\xea\xbd\x62\xe2\x64\x57\xa9\x0e\xf8\xe0\xa9\x6c\x4e\x71\x8a\x9e\xad\x95\xe9\x9b\x3f\xb2\x2d\x68\xa3\x40\x5a\xc6\x89\x63\x9d\x02\x48\x65\x1a\x01\xa7\x3b\x13\x6e\xd0\x3d\xb1\xe9\xd4\x7b\x3d\x9d\x50\x2b\x88\x84\x66\x4b\xa7\x8a\x8d\xe8\xf3\x42\xcc\xca\xf5\xf7\xb3\x14\x33\x66\xae\x05\xab\x0f\x1f\x8c\x08\x62\x75\x35\x89\xab\x07\x10\xe3\x6f\xa8\x8a\x6a\x40\x4a\x29\xe4\x0d\x06\xc4\x15\x7a\x58\x58\x2f\x85\x81\x66\x38\x15\x4b\xd7\xb1\xd2\x5b\xe6\x28\x5f\x50\x4a\x3b\x0c\xf7\xd9\x09\x52\xb4\x2e\x7b\xac\xeb\x1a\x4a\x53\x78\x99\x31\xc2\x6b\x11\x53\xa5\xbf\x77\xa6\x84\xa7\x26\x80\x7b\xed\xb3\xd1\x35\x91\x00\xa3\x68\x60\x89\x4a\xbc\xe4\x48\x4a\xc2\x15\x22\x19\xe4\xce\x03\x87\x3b\x12\xef\x85\xda\x2d\x82\x14\x40\x62\x72\x6e\xe4\xa0\x74\x15\x4d\x4a\x59\x02\x95\xdf\xa6\x9c\x9e\xbf\x15\x01\x6f\xee\x56\x28\x9f\x2d\x12\x6d\xb1\x3d\xb6\x7f\xd5\xbc\x06\x7c\xb2\x50\x0a\xd9\x56\x42\xf1\x94\x5f\x60\xc4\xbb\xd6\xb5\xb1\xf2\x03\xa3\x6c\x63\x0f\x88\xab\x08\x94\x7e\xa7\xd7\x69\x11\xd2\xd4\xf9\x2c\x58\xbf\xf6\xbb\x68\x6f\x1a\xca\x38\xc5\xc0\x98\x93\x0e\x4b\xf9\xb6\x67\xde\x87\xd5\xfd\x26\xf1\xbe\x99\x78\xaf\xb5\x27\xc0\xfa\x87\x3b\xac\x98\xf5\xe3\x68\x45\x1a\xa8\x41\x6d\xa0\xcf\x40\x0f\xe1\x75\x6b\x2f\xa1\x06\xf5\xde\x6a\xdb\xd7\xf4\xd5\xe4\xd3\x5b\x7b\x6a\x56\x07\xe5\x2c\xb0\xb2\x4a\x4d\xa8\x16\x22\x50\x2e\xc7\x26\xdf\x01\xfb\x26\xd8\xac\xc7\x18\x8c\x1d\x03\xb9\x8c\x77\x9d\x55\x7c\x3a\x18\xc4\xac\xbd\xd4\x79\xb1\xae\xad\x88\xdb\xf2\x32\xdc\x82\x01\xf9\x38\x3a\x09\xce\x9d\x4f\xeb\xa2\x2e\x9f\x4e\x2b\x77\x6d\x06\x69\x18\xc5\x7c\xda\xa3\x83\x01\x6d\x39\x10\x90\x9b\x11\x28\x28\x09\x8f\xa8\x1c\x37\xdd\xb6\x8d\xc3\x1b\x4e\x9a\x84\xc7\x6a\x4a\x14\xd2\x29\x28\xcd\xcb\x1b\x2e\x83\x5e\x06\x56\xdb\x5b\xad\x57\x73\x4f\x58\x6d\x6e\x0b\xe5\x73\x5f\x59\x1c\x3e\x01\x78\xf5\xc4\xbb\xe3\xf0\x56\x96\x6c\x31\x4b\x42\x23\x86\x76\x30\x40\xc5\x47\x54\x8c\x59\x73\x84\x40\x03\x50\x7a\x6f\x01\x72\x8e\x90\xf5\x74\x2a\xf9\x8a\xd9\x8c\xdd\x1f\xa3\xd0\x0b\x89\x41\x11\xbd\xcd\x06\xa7\xd3\x1d\x1b\x9a\x4e\xc3\x32\x22\x15\x1c\x77\x37\x7a\xc5\xa9\xb1\x75\xc7\x7b\x66\x5b\x4c\xec\x6b\x7b\xce\x4e\xf0\xb4\x04\x50\xa1\xd0\x45\x56\x19\x78\xd2\x68\x61\xa0\xfb\xb1\xba\x5d\xac\x0d\xda\x8b\x41\x83\xc7\x1a\x2b\x3a\xff\x06\x04\x1e\xe2\x54\x0d\x3d\xe8\xec\x38\x5c\x03\x4d\x2a\xb3\x21\xc5\x2b\x03\x40\x0b\x2c\xcd\xd6\x3c\xcb\x46\x55\xdb\x2d\x11\xd7\x04\xf5\xa3\x56\xa9\xfa\x2e\x8e\xe1\x60\x95\xea\xbb\xdc\x0d\x92\xaa\xdf\xe4\xb3\x34\xcb\x1c\xbf\xb6\x8a\x00\xfc\xf2\xb2\xdc\x5f\xd5\x6c\x14\xbc\xbb\xb4\xcc\xf7\x1e\xe6\xa4\x7e\x0b\x96\x0f\xed\xf5\xbb\xaf\x7c\x69\x0f\x3e\x58\x30\x14\x34\x64\x69\x3e\xce\xe1\xe6\x7b\x72\x8f\x0f\x06\x79\xcc\x41\xa9\x9f\x44\xd7\xa4\x38\x59\x2c\xf9\x8d\xca\x2d\xf3\x26\x4f\xe7\x36\x17\xce\x1b\x69\x01\xa7\xfe\x96\xc3\x54\x7f\x9e\xa6\x5f\x6c\x95\x97\x72\x8f\xe8\x3a\xef\xf0\x57\xf5\xc7\xdf\xd2\x8c\xcc\x47\x07\x43\x38\x27\xf3\x53\xab\x74\xb8\x19\xf1\xe4\x63\x9e\x2b\x1b\x3d\x6d\x5e\x97\x14\xe9\x17\x3c\x4f\xfc\x7a\xd0\x84\xc2\x95\x04\x58\x60\x2e\x1d\xe2\x2e\xf0\x2c\x5f\x60\x39\x0e\xf9\x5b\xb0\x51\x3c\xff\x29\x9d\x7d\x96\x3f\xa5\xa5\xdf\xa8\x9a\xcd\x10\x3a\x06\x7c\x18\xac\x71\x22\x5f\xa4\xa4\x7e\xf6\x2c\x8f\x23\xdd\xbf\xe2\x9d\xf3\x08\x94\x50\x70\xec\x9d\xf5\xe5\x78\x23\x50\x96\x1a\xfc\x68\xbd\xa2\xe2\x2f\x2b\xf5\xed\x82\x63\x00\x40\xf9\xc7\xc8\xa4\xe4\xde\xb6\x8c\x90\xd5\x3f\xab\x85\xdc\xb6\xc7\xb7\x9c\x5c\x0c\xd8\x60\xdf\x4a\xd1\xc5\x0e\xa3\x90\xcf\x3a\xd8\x6c\x52\xa9\x25\xf2\x71\x23\xa6\xe8\x98\xd6\xd6\x56\x26\x30\x63\x65\xd6\xaa\x90\xa6\xd1\x2d\xd6\x49\x53\xd4\xd0\x10\xce\x50\x39\xa8\x8e\x98\x6f\xd3\xdc\x86\xbf\x12\x6a\xb8\x1e\x2c\x03\xa2\x4e\x41\x21\xd2\xd3\xed\x93\x15\x55\xec\x4e\xfc\x5d\x6f\xd7\x6d\x2c\x2e\x2d\x6e\x1b\x72\x59\xf6\x28\x72\x22\x0c\x69\x6d\x6e\x5c\xf7\xff\x31\x67\x38\x93\x27\x17\xc0\x13\x36\x45\xdc\x49\x3f\x8c\xcb\x98\x8d\xfd\xc3\x9f\x81\xd1\x5a\xdc\x26\x41\xb2\x4c\x2b\x43\x58\x06\x79\x22\x99\x9c\xcc\x51\x41\xad\x70\x40\x14\x60\x5e\x8b\xd4\x13\x13\x30\x18\x44\x0e\x80\xe8\x00\x21\x32\x18\x44\x16\x86\xf9\x50\xf7\x08\xe2\x13\x22\x0f\xbd\x09\x99\x22\x2c\xff\x81\x1c\x7e\xfa\x6e\x4d\xcb\xe4\xbb\x35\x29\x3f\x55\x07\x0c\x2f\x63\xaa\xbc\x81\x22\x96\xe7\x5c\xc7\x3d\x27\x62\x70\x8e\xdd\x8c\x40\xa2\x6b\xd2\x9b\x58\x56\xb3\xd9\xe0\xa4\xc0\x74\x1e\x47\x0e\xd9\x45\xa0\x61\xc7\xd2\x68\xff\x0e\x7f\xad\xda\xd6\xd7\x39\x12\x47\xd7\xfe\x4e\xef\xcd\x47\xee\x96\xa3\xc4\x56\x7c\xb8\x90\x59\x8e\x6b\x3b\x0b\x04\x11\x51\xe6\x6f\x5a\x67\x4f\x65\x2f\x42\x04\x53\x61\xa6\xaa\x08\x23\x73\x6c\x0d\x68\x47\xee\x21\x43\x2e\x63\xa5\x8f\x09\x65\x31\x6d\xc4\x3b\xb0\xb3\xb5\xcb\x6e\x9c\x73\x5d\x1f\x71\xc8\xc7\x58\xbb\xa8\x3b\xdd\x42\x0e\x46\xd8\x31\x55\xbe\xe7\x61\x60\xe3\x68\x3c\xc6\x95\xcb\xf1\x08\x3b\x63\xa9\x8f\xa4\xb2\x3e\xac\x3b\x60\xab\x27\xe4\xa6\x5d\x8a\xb9\x3b\xc4\x4e\x08\x9c\x60\xfa\xd7\x90\x4d\xa6\xb5\x64\xf6\x0c\x33\x9d\xfd\x03\x7c\xeb\x94\x40\x8a\xc7\x7d\xed\x38\x3a\x5a\xac\x84\x4c\x47\x7e\x2b\x72\x6e\xa3\x53\x07\xc7\x08\xe1\xb1\xf8\x77\x84\x4d\x3c\x1a\xb9\x2e\x4e\xcb\x53\x42\xaf\x32\x6c\x72\x3f\x83\x2d\x44\xd7\x9e\xbc\x57\xbd\xd6\x58\x6d\xb1\xe9\x29\xa9\x99\xda\x57\x96\x65\xa0\x2a\x92\xba\xce\xfb\x5a\xcc\x0e\xbc\x67\xab\xb3\xe1\x51\xba\x24\xbf\x77\xee\x14\xb2\xec\xdd\xca\xb6\x42\xe4\xd0\x4a\x05\xdd\xd7\xbf\x69\x1c\xd8\x71\xb9\x4b\x68\x0b\xc2\x1e\x18\x7e\xc4\x98\x66\x0c\x8d\x00\x06\x1c\xee\x36\x18\x30\x15\x08\x49\x3e\x83\xaa\x44\xa3\xbc\x84\xa1\xc9\xae\xeb\x34\x0c\x19\xf2\x7d\xbb\xd4\x00\x21\x45\x75\x62\x66\x00\x12\xc4\x2b\xa7\x13\x26\xc3\xf8\x54\x9e\x22\x31\x81\x75\xa7\x2a\x31\x81\x1c\x46\x82\xf0\x1c\x05\x46\x74\x4b\xea\x6f\xb1\xe5\x79\xf0\x50\x7e\x61\x07\x6b\x57\x83\x86\xbb\xba\x10\x5b\xeb\xbf\xc7\x4a\x75\x50\x7d\x88\xfe\x35\x19\x26\xc3\xa3\x0b\xcc\xd3\x64\x18\x85\xc7\xeb\x58\x58\xb9\x5c\xe5\xdf\xb6\x3b\x3a\x57\x26\x8d\xff\x56\x77\x7f\x76\x4d\xb6\x1a\x50\xda\x0a\x1d\x53\xb0\xd6\xcb\x38\xb4\x61\x3a\x3d\x84\x71\xc4\xad\xde\x7e\x7b\x60\x4a\x0e\x23\xeb\x27\x34\xb6\x9c\x69\xc4\x21\x43\xac\x23\x08\xe6\x82\xb0\x86\x81\x23\x26\xd9\x5d\xba\xd3\xba\x90\xa9\xf7\xd9\xe8\xe5\x69\xb4\x8f\x01\xde\x8b\x9c\xe1\x37\xf2\xeb\x4d\x1c\xa9\xdc\x9d\x2f\xa5\xd1\x1c\x13\xcb\x2f\x7d\xaa\x11\x6f\x77\x68\x96\x56\xc2\x45\xe7\x90\xf3\xaa\xfa\x76\xa7\xeb\x94\xde\x3c\x57\x12\x45\x47\xa0\xb6\xc5\x56\xb8\x1f\x54\xea\x89\xfd\xc1\xd7\x1b\x6e\xed\xe5\xb9\xb2\x9f\xfe\x90\x2f\x55\x2a\x7d\x75\xa3\xdf\xa7\x43\x92\x6c\x81\xb1\xb5\x6f\xcf\x21\xbc\x73\x6f\x5e\xab\x2e\x18\xdc\x6f\x32\x6e\xa3\x2e\xd0\x55\xf9\xbe\xe0\x55\xab\xad\xf0\x6f\xb3\x12\x5d\x31\xef\xd4\x7b\x9b\xd2\xf4\x6a\x0f\xd7\xfe\x66\xd3\xed\x3d\x19\xfd\x43\xf7\x0e\x4c\x8b\xad\x70\x2b\xf7\xb6\x8e\x60\x4d\x83\x4e\x50\x6f\x83\xfb\x40\xdb\xad\x7d\x19\x17\xf1\xce\x1d\x98\x06\x5b\xa1\x36\x1d\x57\x3b\xc3\x6f\x36\xed\x40\x43\x8a\xf7\x76\xcc\x82\x50\x35\xd9\x01\xb9\xf2\xc1\xdc\x03\x76\xd5\xa8\x94\xa2\xc0\xcb\x53\x94\xb6\x77\xd2\x22\x42\xb4\x08\x06\xda\xcd\xa4\x5d\x2e\x30\x15\xee\xf9\x2a\xd1\x1e\xc0\x5f\x9f\xbc\xfb\x87\x0f\xd9\x3e\xc3\xe2\x09\xd6\x27\xe4\x8e\x99\xaa\x7a\x8f\x36\xdf\xe7\x17\x39\xe3\xf2\x34\xee\x3c\xe5\xaa\x49\x97\x13\x70\x3f\xd8\xdd\x02\x3b\xd3\xcb\x8c\xcc\xf6\x1c\xb5\xd7\x6a\x2b\xfc\x57\x39\xbb\x20\xf3\x39\xa6\xfb\x75\xe0\x37\xdb\x71\x40\x7f\x49\x33\xed\x59\xd5\x19\xbe\xdb\x68\x2b\xf4\x77\x39\x7f\x95\xaf\xe8\x9e\xe0\xbd\x56\xdb\x99\xb9\x7c\x6b\xdd\x0f\xba\xd3\x66\x7b\xb6\x0f\x95\x5f\x64\x3f\xe0\x6e\xa3\xad\xd0\x7f\xa6\xe9\x8a\x5f\xe7\x8c\xfc\x03\xef\x89\x9d\x46\xcb\xed\x99\x34\xe4\x56\x57\x4e\x37\xf9\x5f\xba\xa7\x23\xe2\x49\xa3\x65\x87\x7e\x44\xb5\xb3\x7c\x9f\x43\xd5\xf4\xe3\xb4\xec\xc0\xc0\xac\x5a\x67\x27\x0b\x7b\x28\x05\xd0\x6f\xc0\xb5\x19\x2e\xf8\xee\x09\xcb\x5a\x7f\xdc\xc9\x72\xbe\xe5\x04\x56\xf1\xc6\x7e\xaf\x93\x13\x63\x6f\x9f\x59\xab\x0f\x25\xa1\x97\x19\x9e\x71\x99\x53\x30\x24\x6e\x6c\x3b\x9a\x77\xd0\xfc\x16\x0a\xf1\x8b\xe6\xf8\x62\x75\x15\x44\x76\x4d\xa9\xe1\xc4\x09\x6b\x29\x68\xd5\x87\x54\x35\x74\x04\xb8\x2d\xa5\x81\xd1\x3b\x35\x02\x13\x70\x4a\x5d\xad\xf0\x0e\xb5\x4e\x38\x58\x9d\xf4\x75\x92\xc0\x8e\x64\x9b\x23\xad\xb0\xad\x6b\x99\xf9\x6a\x79\x34\xcb\x29\x4f\x09\x6d\x4a\x85\xcd\x44\x89\x70\x0e\xaf\xe1\x25\x5c\xc2\x05\xfc\x02\xaf\x6a\x54\x4b\x2e\xe3\xbb\x27\x6a\x56\xfa\x14\xad\x7c\xb1\xc1\x2c\x8e\x7f\x4d\xe2\xc9\xf0\xe8\xff\x9b\x6e\x8e\x27\xc3\xa3\xef\xa7\xe0\xd7\xe4\x09\x00\xfc\x9a\xe5\x5f\xfb\x14\x7f\xd5\x7a\x4c\xe5\x5a\xed\x68\x5b\xfa\x26\x4f\x7b\x3f\xe5\xfd\x0c\xa7\x05\x57\x35\xfb\xc7\xc9\xf1\x0f\xc9\x10\xf6\x2f\x56\xbc\x7f\x93\xaf\xfa\xd7\xe9\x17\xdc\x8f\x0e\xbd\xce\x0f\xa3\xa4\xff\x41\x34\xc2\xfd\xd5\xf2\x8a\xa5\x73\x2c\xaa\xb2\xbe\xd6\xa3\xf5\xf3\x4b\x05\x0c\xf6\xf9\x35\xa6\xb6\x4e\xd5\x7b\x12\x81\xde\x22\x79\x79\xaa\xb5\x3d\x4b\xeb\x25\x2a\x3f\xba\x17\x78\xb4\xf0\x7e\x7a\x15\x14\x4a\xab\x1a\xea\xb7\x57\xc5\xaa\x50\xaa\x5a\xf6\x93\xaa\x28\xaf\x4a\xa8\xf0\x47\x60\x6f\xb0\x68\x51\xfd\xad\x8a\x04\x1b\x40\x85\xfc\x47\x7d\x50\x0a\x26\xb4\xd0\x7f\xa8\x8f\x9e\x8a\x03\x2d\xfc\xdf\xaa\x8a\xb9\x6d\xa2\x85\xfd\x53\x15\x68\x71\x16\x31\x7f\x4c\xae\x94\x8b\xa8\x5f\xe6\x4a\x6c\x32\x4e\x5f\xf5\x53\x55\x70\x05\x17\x44\xbd\x9f\x1a\xba\x15\xb5\x11\x75\x7e\xa8\xc2\x86\x4c\x82\x68\xf3\x9b\xaa\xea\xcb\xa6\x88\xd6\x3e\xa8\x4a\x9e\x04\x88\xa8\xff\x5b\x55\xf1\x84\x68\x44\xfd\xdf\x1a\x81\x95\xa4\x87\xa8\xfb\x4b\x15\x37\x04\x0f\x44\x9b\xdf\xdc\xaa\x8e\x2c\x64\xab\x3a\xdf\x6c\xa7\x9a\x13\xa1\xcc\x5f\x83\x97\x82\xc9\x9a\xb5\x4b\x6b\xf4\x54\x69\x14\x04\x45\x55\xbf\xbc\xa5\x0d\xa9\xdf\xd0\x62\x5b\xa9\x26\x61\x87\xc8\x6b\xd4\xdd\xd4\xf5\xf8\xfd\xeb\x8f\xba\xf2\xc9\xe9\x99\x99\x40\xee\x4f\xe0\xa7\x15\xc9\xe6\x3f\x7f\x7c\x23\xd3\x01\x21\xe6\xff\xee\xd9\xd6\x0e\x76\xae\x7d\x00\x7e\x18\x4a\x34\x6b\x96\x3e\xff\xf0\xda\x74\x4e\x82\xa5\x4e\xf3\xb9\x5f\xc1\xfa\x9b\xa3\xcb\xda\x9a\xa4\x1c\x57\x85\x2b\xff\xb7\x5e\x50\x19\x41\xc2\xad\x54\xfb\xa2\x49\x76\x25\x98\x97\x5b\xad\xf6\x45\xe3\x29\xcf\x33\x9c\x52\xb7\x5e\xfd\x93\xe6\x1a\x8b\x0b\x3c\x9f\x9b\xc5\x2c\x14\x5e\xaf\x83\x9f\x55\x83\x0b\x9c\xe5\xf4\xaa\x38\xcb\x51\x51\xfd\xad\x8a\xae\xd3\x42\x2c\x3b\x2a\xcc\x5f\x66\xed\x2b\x7d\x8a\x5c\xf5\xea\xa7\xaa\xa0\xc2\x29\xbe\x30\x67\x1c\xba\xf2\x91\x77\x5e\x9d\x94\x92\x4d\x9f\xaa\x73\x12\x7d\xb1\xd5\xc2\x67\x9a\x68\xdc\x49\x8d\xf5\x95\x11\xae\xfe\x3e\x86\xb3\x9c\x5e\x92\xab\x15\x33\xbf\xd5\x41\xb8\x0c\xa9\xb4\x94\xe5\xcd\x05\x12\xfd\x38\xcf\x43\x17\xad\x92\x59\xdb\x79\xff\x88\xef\x6e\x60\x1d\x9b\x50\x6f\x63\x3c\x92\x86\xd5\x0a\xe9\xc0\x0d\x00\x27\x86\x35\xd2\xe9\x38\x5a\x1e\xe4\x8c\xdc\xf6\xc7\x94\xa1\x77\x5e\x10\xbc\xa8\x9f\xbf\x97\x59\xda\xed\xd6\x79\x9e\xb6\xc5\xae\x84\xbf\x62\xb7\x76\x86\xaa\xeb\xb7\x63\xcf\x95\xdf\x5b\x9f\x3f\xab\x3a\x7f\x58\x2a\x71\x4d\x40\xb0\xe6\x98\x47\xea\xd1\xb5\x38\x5a\x08\x9e\xd9\x65\xfe\xbf\xef\xbb\x74\xe8\x24\xe8\x86\x91\xdd\xda\x93\xd0\x75\xec\xf7\x8a\x87\xbd\x88\x41\x5d\x3d\x3b\x4e\xfb\xbf\xc6\x94\xb7\xab\x8d\xfe\x28\xd4\xee\x4d\xb9\x17\x9c\xb2\x7f\x1f\xdf\x61\xde\xf1\x08\x09\x5e\xc1\xda\x93\x19\x84\x4c\xc2\x65\x9c\x4b\x01\x7b\xb3\x31\x7f\x91\x9c\xf6\xb8\x32\xb7\xc0\x2a\x95\x90\x34\xba\x66\x91\x49\xbc\x05\xeb\x27\x3f\xac\xaa\xb3\x7c\x25\xd5\x17\x2d\x35\x4b\x10\x63\x37\x36\x29\x58\x0f\x7b\xd8\xda\x59\xbc\x57\x6e\xf4\xaf\x72\x76\x76\xb3\x74\xb3\x9e\xb1\x08\xae\x0b\x69\x4f\xc5\x73\x3a\x3a\x38\x96\x13\x6c\x6b\x65\xf5\x54\xcd\x26\xf5\x68\x9b\xf5\xe1\x09\x24\x54\x51\x97\xfc\xc2\x2a\x2a\x34\x28\x63\xdc\x2a\xed\xe8\xca\x8f\xba\xd8\x8f\xb7\x8f\x1d\x5d\x56\x87\x0d\xfc\x60\xb6\xd8\x8f\x37\xe1\xdf\xd2\x7a\xec\x87\xe4\xfb\x61\xf2\xaf\x01\xbb\x31\x9c\x61\x69\x54\x7c\x8d\xb3\x25\x66\x4f\xd4\x3f\xc5\x13\xf3\xbd\xeb\x60\xad\x21\xbf\x74\x2e\xb9\xaf\x18\x6f\xc6\x92\xf2\x45\xbe\x58\xe6\x14\x53\x6b\x7a\x5a\xe5\xeb\x6b\x16\x69\xd7\x04\x55\xfc\x17\x39\x1f\x6b\xb1\xda\x2d\x07\x1c\x4f\xaf\xa4\xeb\x85\x0e\xde\x3f\x33\x5d\xc8\xc8\x87\x32\xe6\x46\x09\xb5\x3d\x79\x15\xb8\x80\x20\x3c\x19\x56\xd1\x86\x8c\xcb\xb0\x86\x65\x7c\x0b\x0d\x68\x22\xd8\x9a\xb8\x69\x57\xde\x18\x3a\xca\x4f\xad\x37\x84\x58\xf0\x3b\x1d\x85\xbe\x32\x1d\x97\x28\x30\x64\xad\x41\x65\x2b\xfa\x9a\x4a\x6d\x4d\x1c\x03\xed\x37\x8b\x51\x74\x76\x8d\xfb\x06\x0d\xfd\x65\x5a\x14\x78\xde\xe7\x79\x9f\x5f\xe3\xfe\x27\x4d\x0a\x9f\xfa\x8a\x38\xfa\x8b\x55\xc1\xfb\x17\xb8\x9f\xf6\xf5\x14\x7a\x9c\xdd\xac\xf1\x21\xfa\xd4\x8f\x6f\xf2\x95\x69\xfe\xeb\xa7\xef\xd6\xa4\xfc\xf5\x13\xf8\x54\xce\xa4\xba\x96\x83\xb5\xe0\x74\x20\x84\xd5\xff\x9f\xbd\x77\xdd\x6e\xdc\x46\x16\x46\xff\xfb\x29\x68\x9c\x8c\x42\x4e\x43\xb2\xe4\xee\xdc\xd8\x61\x3c\x9d\xbe\xec\x78\xa6\x6f\xa7\xed\x24\x67\x6f\x8d\xb6\x43\x8b\x90\x85\x69\x0a\x50\x40\xc8\x97\x48\x5c\xeb\x7b\x8b\xb3\xbe\xe7\x39\x6f\xf2\x3d\xc9\x59\x28\x00\x24\x78\x91\x2c\x5f\xda\x99\xcc\x9e\xfe\xd1\x16\x71\x47\xa1\x50\xa8\x2a\x14\xaa\xae\x0d\x5f\xb8\x06\x4f\x6f\x88\xa6\xf7\x63\x0b\x2d\xab\xc8\xa5\xc7\xd2\x16\xe9\x4f\x07\x8b\x76\x67\x26\x9b\x33\x3b\x23\xb2\xab\x15\x00\x6d\xf7\x28\x6a\x23\x2c\xd2\xee\x82\xee\x99\x32\x84\x9d\x53\xc1\xd9\xa7\xb0\xe3\x7f\x10\x52\x48\x59\xf7\x9c\x92\x0b\x35\xbf\xe2\x8e\x62\x8f\x9f\xea\x97\xc5\xdd\x38\x99\xd5\xe5\x17\x78\x2e\x97\x69\x66\xa2\x5b\x2b\xf8\xa9\x2d\xdf\xcb\x04\xf0\x92\x57\x71\x87\x67\xc8\x88\xb5\x23\x06\x5f\x7b\xe5\xd4\xe3\x24\x29\x3d\x7f\x59\xb7\x20\xc6\x8f\x49\x9c\x24\x2f\xd5\xa4\x9e\xc7\xfa\x4d\x39\xc4\xcb\xc7\xcc\xc9\xbd\xa4\xd2\xc9\x64\x85\x73\x3c\xdd\x55\xcf\x40\x41\xbf\xdd\x6d\x69\x4d\xd6\xc6\xd6\xd6\xa3\xa9\x59\xed\xa9\xb5\x62\xbd\x48\xbe\x60\x76\x00\xf5\xe2\x65\x4e\xd5\x4b\x7f\x52\x75\xc6\x5f\x94\xb7\xe9\x35\x9f\xfe\x5b\x62\x8d\x88\x27\x6d\x08\xa3\x92\xe7\x9c\xa7\xce\x2d\x64\x59\x79\x21\x69\x9a\xed\xd1\xcc\x4d\xfc\x14\x4e\xbc\x33\x19\x0b\xf9\xe1\xd9\xab\xea\xcb\x41\xc7\x0b\x64\x4a\xe4\x32\x1b\x2b\x76\x58\xed\xa6\x67\x82\xc4\x61\x8a\xed\x88\x8e\x79\x4a\x84\x82\x50\xb8\x28\xd2\x8e\xe6\x57\xe1\x38\xda\x1d\xe4\x11\x33\xc7\x63\x12\xa5\x07\x09\x1f\x03\xd8\x7a\xbf\x2e\x88\xb8\x3a\x22\xfa\xba\xd5\x4f\x03\xe3\x32\x09\x4f\xa3\xe4\x20\xe9\xf1\xc9\x24\x23\xf2\x07\x42\xcf\xa6\xf2\x51\xd2\x3b\x23\xf2\x7b\xbe\x80\x00\x9c\xcf\x21\x02\xcc\x07\x32\x96\x7e\xd0\x93\x7c\x1e\x5e\x50\x96\xf0\x8b\x1e\x65\x8c\x08\x5d\x01\x4f\x54\x47\xa6\x8d\x9f\x69\x22\xa7\x1b\x9a\x48\xc9\x44\x56\xda\x80\x0a\x78\x1e\xc9\x75\x55\x76\xe8\xc4\x9f\x97\xae\xea\xa5\x7d\x75\xae\x9d\x45\xc3\xf3\x03\x77\xb5\xba\x44\x61\x32\x49\x50\xf0\xb4\xe5\x56\xd2\x3a\x16\x6b\xc4\x0d\xfc\xa2\x35\x6e\xe0\x17\x95\xb8\x81\x5f\x8c\x0c\x64\xe3\xc8\xdf\xe5\xab\x15\x9a\xc4\x69\x46\x50\x14\x45\x3c\xe8\x74\x24\xce\x22\x24\xc5\x42\x27\x74\x3a\xbb\x72\x27\xee\x74\x7c\x62\x9f\xd2\x5f\x37\x5e\xbc\xdb\x0f\x30\xf3\x83\x60\x27\xeb\x74\x7c\xea\x83\x47\x8d\x1b\xd4\x1e\x04\x4a\xe6\x01\x97\x6c\xc5\xed\x58\xe0\xcf\xe1\xe6\x75\x11\xe0\x31\xe0\x16\x0b\xf0\x78\xb5\xd2\xc3\xdc\x8d\x22\x76\x10\xfb\xa4\x77\x4a\x99\x8e\x01\x84\x25\xbe\x05\xd2\xe5\x05\xd6\x06\x21\x04\xbf\xb8\x15\xa1\x3c\x11\xf1\xe4\x3d\xe7\x69\x95\x50\x9a\x50\x42\xfa\x18\x37\x02\xd5\x95\xeb\xb7\x14\x28\x69\x2d\x2a\x93\x69\x49\x51\xa7\x1a\xe9\x00\xc7\xde\xeb\x8a\x9b\xcc\x5c\xc7\x90\x5e\x57\xca\xe4\x56\xdb\x15\xe6\x45\x7b\xbd\xa8\x4a\x6d\x8b\x22\x6c\x4b\x64\x92\xcf\x6b\x4d\x6d\xa0\xd7\x35\x30\x18\x87\xa1\x86\xfa\x18\x07\x52\xcb\xbc\x15\x64\xda\xd3\x7c\xa0\x4e\x68\xa7\xed\x10\x1e\x1e\xae\xa7\xf3\xf7\xd2\xa1\xd3\xb4\xee\xef\x1a\xfa\x7d\x2a\x48\xfc\x71\xce\x29\x78\x1f\x7e\x78\x59\x68\x39\xe3\xa7\x34\x25\x21\xf2\x67\xf1\x65\xf7\x42\x51\xa7\xd0\xfb\xea\xcb\xaf\xe6\x97\x01\xc2\x70\x25\x23\x55\x1e\x65\x65\xde\xd7\xf3\xcb\xc0\x8b\x59\xe2\xb9\x55\xbe\xf9\x66\x00\x55\x12\x92\x7d\x54\x74\xb3\x52\xe7\x9b\x6f\xf6\xdb\xea\x0c\xf6\xfb\x7d\x55\xe9\x1a\x08\x6d\xb0\xa7\x29\x0b\x81\xaa\x37\xdb\xdb\x70\x8e\x7d\xea\x87\x80\x9b\x1f\x81\x55\x27\x64\xaf\xa1\x44\xb6\x57\x90\x36\xcd\xd1\x5e\x37\x4f\x7d\x62\x8f\x63\xd6\x5d\x64\xa4\x9b\xf0\x4f\xf0\x1a\xbb\x1c\x1e\x84\xd9\x58\x23\x8b\x2e\xed\x90\x5e\x32\x85\x25\xe0\x2b\xc3\x26\xbd\xa0\xc9\x11\xd0\x55\x37\x51\x11\xcf\xdd\x41\xf9\x09\x05\x8e\x08\x38\x19\x38\xa7\xf2\x2a\x2c\xf3\x3e\x90\x89\x20\xd9\xf4\x43\x2c\x49\x38\xe8\x97\x4d\xbc\xa6\x99\x24\x8c\x88\x2c\x1c\x2e\xc1\xef\xcc\xa5\x3d\x5c\x31\x39\x27\x4c\x86\x48\x93\x73\x94\xe3\x35\xf9\x82\x64\xf4\x37\x82\xf2\x51\x0b\x9d\x5f\x2a\xbc\xed\x63\x38\xb2\xfb\xf8\x94\x4b\xc9\x67\x61\x1f\x0b\x75\xe8\x87\xfd\x1c\xbb\xac\xf7\xf1\x54\x0d\x90\xa7\x49\xd8\xc7\xb5\x23\x04\xc4\x1c\x37\x6e\x87\x3d\xcc\x89\x73\xd2\x0e\x46\xab\x55\xf9\xd5\x1f\x61\x19\x11\x45\x40\x79\x7a\x4e\xaa\x8a\x34\x8d\x16\xa1\x2b\xe8\x04\xb8\x00\xfe\x73\x9d\xcb\xa2\x65\x9e\x47\x12\x5b\x41\xbf\x24\x56\x8a\xe3\xde\x71\x75\x6f\xa6\x3d\x77\xa3\x60\x8a\x97\x9a\x09\x95\x54\x81\x7c\x77\x90\x07\x79\x81\xd7\x9d\x8e\xe8\x35\x16\x40\xfb\x86\x2a\x80\x6c\xf9\x2e\x0b\x66\xc9\x17\xe3\xa9\x3a\x38\x50\x6e\x35\x10\x4b\xfd\x40\xac\x81\xee\x25\xb6\x85\x2c\xdf\x2c\xf5\x5e\xb3\xdf\xaf\xd9\x39\x6d\x8c\xf2\x56\x1b\xec\xfa\x52\x22\x9e\x6c\x28\x35\xa1\x2c\x01\x89\x7d\x8b\x96\x5a\xc5\xbb\x4d\xf5\xa6\x64\xfc\xb1\xab\x31\xb0\x9b\x50\xa1\x6b\xae\x37\x51\xfb\x44\xe1\x07\xb2\x68\x99\xe3\x34\x5a\xe6\xc6\x69\xbe\xc6\x42\xb8\xa8\x2a\x9e\x0a\x9e\x24\xe4\x94\x2f\xd8\x98\x24\x2f\x15\x92\xfc\x10\xb3\x24\x25\x42\xbf\x7d\x3e\x51\x9c\x81\x46\x2e\xeb\x97\x87\xfd\x64\x66\xba\xee\x49\x75\x41\x7f\x2e\xa9\x24\x49\xcd\xb1\x41\x8f\x71\xe9\xa3\x92\x44\x19\x1e\xd9\x09\x8f\x81\xaf\xd3\x7e\x55\x02\xb2\xdb\x0d\x65\x5b\xfc\x31\x23\x1f\x9e\xbd\x0a\x21\xbc\x5c\xc1\x7c\x3a\x63\xd2\x1d\xba\xf4\xce\xa1\x5d\x23\xc3\x43\x9c\x9c\x2e\x68\x9a\x18\x2d\xbb\xe2\x84\x6b\xbd\x11\xec\xf6\x77\xe8\xa0\xc6\x3b\x83\x19\x6a\x00\xdc\x19\x40\x6e\x03\xe1\xd7\xfc\x24\xeb\x20\x32\xb8\x11\xd6\x9f\x9c\x17\xe3\x7a\x9e\xf2\x6c\x21\xc0\x95\xd4\x28\x00\xf7\x38\x87\x2c\x23\x42\xbe\xd4\x8c\x8e\x0f\x6f\xc8\xd7\xab\x0a\x77\x4b\x26\x5c\xf3\x91\x8d\xc0\xf4\xb5\xf3\x02\x05\x46\xc2\xbf\x88\xe5\x78\x6a\x7b\xa9\x57\xb2\x1a\xad\x20\xc8\xb1\x13\xc7\xae\x1c\xd4\x35\xca\xcb\x93\x05\x53\xec\x7e\x01\xfc\x8d\x1d\xd4\xd6\xc3\x68\x03\x1b\xb2\x53\xbf\x55\x76\xea\x8f\x0e\xdc\x8f\x70\x99\x6f\x0c\x5b\xb6\xd3\xf4\x6d\x5d\xac\x7a\x11\xbc\xab\x8d\x58\x03\x24\x5c\x90\x15\x41\x53\x33\x22\x0f\x35\x31\xb5\x5b\xc7\x2f\x63\x79\x26\x89\xc5\x99\xc3\xc9\x5b\xae\x0e\x63\xe3\x21\x7a\xdd\x32\x15\x67\x38\x2a\x7d\x2d\x81\xf1\xb0\x8f\x86\x8d\x32\x23\xef\x78\x4a\x33\x4f\xad\x90\x77\x4a\x3c\x10\x14\xbd\xd3\x2b\xcf\xa0\x84\xf6\x5e\x47\x3c\x46\x2e\xa5\x37\x8b\xff\xc1\x85\x27\x08\x18\x8d\x22\x3b\x40\xb5\x4a\xba\xad\x17\x96\x8a\xd9\x45\x6b\xac\xd9\x5a\x16\x02\x05\x41\x80\xd7\x95\x5e\xb3\x85\x50\x50\x71\x99\x5e\xaf\xf2\xe1\xd9\xab\x4d\x25\x0a\xc4\xaa\x05\xac\x4a\x89\x2c\x0e\x47\x61\x4e\x45\x96\x47\x72\xa7\xe9\x0e\xa1\xca\x3e\xa8\xce\x84\x03\x93\x12\x73\xb5\x63\x74\x13\x27\x69\xcd\x6a\x2e\xd7\x82\x6a\x7e\xa5\x5a\xb6\x2a\x35\x5b\xbb\x49\x22\x75\x78\xf9\x42\x3b\xee\x08\xcb\xc8\xec\xa5\xc3\x49\x51\x96\xc0\xae\x69\xc5\xbb\x6a\xfc\x64\x9a\x99\x8d\x4b\x12\x33\x88\x22\x85\xb2\x33\xed\x5b\x66\xb5\xb2\x51\xcc\x76\xac\xf2\xa3\x3e\x9b\xf2\x50\xd0\x0e\x69\x6e\xbc\xd4\xd5\x0d\xa7\xe6\x97\x8d\xa7\x44\x1d\x73\xef\xd8\x98\xf8\x28\x9e\x48\x22\x3e\x10\x96\xa8\x43\x17\xda\x84\x6b\x81\xc6\x46\x5e\xb3\x74\x2d\xce\x2e\x1a\x6c\x26\x0a\x0a\x2e\xcd\x9d\x58\x0b\x6b\x89\x82\x1d\x56\xa5\x8e\x44\xf1\x69\x6d\x4c\x28\x6d\x61\x67\x45\x9d\x31\x95\x79\xeb\xba\x6a\x5c\xe3\x0c\x56\xd5\x05\x5b\xb0\xb9\xf8\x25\x95\x95\xd2\x41\xae\x9d\x04\x5d\xb7\x99\x6e\xb9\x06\x05\x8d\xfb\xa9\x8a\xb1\x10\x4e\x64\x67\xc9\x0a\x1d\xa3\x1f\xd4\xee\xcb\x36\xac\x57\x73\x25\xda\xd6\x8b\xaf\x2d\x05\xdb\x0a\xc7\x51\x05\x4b\xb6\xc0\x78\x1d\xb4\x52\xeb\xce\xc8\xd6\x1a\xbe\x1d\xb9\x5a\xed\xf2\x4e\x67\x57\xac\x56\x7e\xfd\x2c\x6f\x6c\xe4\xdd\xbe\xbd\xc0\xb3\x51\x7c\x13\xaa\x75\x2d\x3f\xb9\x67\x49\xa6\x07\xbf\xeb\x6f\x31\xec\xa0\xd3\xe1\xc5\x61\xb0\xa9\xeb\x41\x5b\xd7\x97\x54\xba\x3d\x3f\x85\x78\x77\x76\xd5\x02\x85\xdc\x35\x84\x15\x2d\x58\x4d\x2b\xf2\x24\xcf\xe1\xd5\x05\x53\x34\xed\xc3\xb3\x57\x1a\x4d\x21\x36\x64\x12\x60\x66\x94\x57\xf5\x8c\x20\xd7\x44\xab\x89\x48\x5b\x6f\xf4\x75\x8a\xe6\xeb\xea\x15\x7a\x68\x11\xc9\x03\x59\xd5\x43\xaf\xd5\x08\xaf\xd3\x43\x33\xa7\x0d\xad\x87\x5e\xdf\xc4\x1a\x3d\x34\xd5\xd8\xd7\xae\x87\xb6\xb7\xb4\x27\x66\x15\x5f\xd0\xe4\xd9\x78\x4c\xb2\xac\x20\xf3\x9b\xe8\x73\x8f\x66\x87\xc5\xa7\x4f\x41\x04\xd9\x62\xb3\xad\x3f\xbf\x0b\x26\x7e\xe3\x11\x0f\x24\xa6\xd3\x69\x50\xa1\xaa\x84\xa1\x8a\x6c\x1c\xbc\xc6\xa7\x75\xdc\xe2\x61\x82\x36\x11\xc7\x26\x6e\xa9\x93\x52\x1d\x95\x2d\x54\xb6\xb8\x05\xda\xb8\xf3\x2c\x07\x72\xc7\xfd\xae\x87\x50\xa3\xdc\xf7\x37\x82\xeb\xb7\x7d\x8e\x1d\x6c\xaa\xf1\x7b\x77\xe5\xb8\x75\xf8\x8f\x66\xed\x41\x6b\xed\x81\x5b\x7b\x30\x0a\x07\x6b\x4f\x0d\x77\xd1\x59\x94\x0d\xc5\x08\xd3\x28\x55\x7f\x78\x04\x3a\x23\xd2\xd3\xfb\xfc\x98\xcf\xb5\xf6\xc8\x26\xbc\x26\x13\x99\xe3\x45\xe4\xf7\x71\x5c\x4a\x69\x4a\x10\x97\xc1\xce\xa2\xd3\x59\xec\x46\x11\x6b\x62\x62\x3b\x0b\xde\x80\xac\xc9\xc3\x8b\x00\xab\x41\x45\x8b\x00\xab\x51\x45\xbc\x02\xe4\xda\x96\xbd\x31\x8c\xdd\x1b\x21\xd0\x53\x35\xe1\x5b\x05\xa4\x51\x0c\x58\x69\xf1\x9a\x13\xc5\x70\x7c\xda\x61\x39\x42\x3b\xbb\xb2\xd3\x21\xe0\x95\xbd\x05\x7d\xb1\xec\x74\x76\x9d\xdc\x0a\x6a\xe1\xb5\x9c\x07\x9c\xd2\x9d\x8e\xdc\x02\x85\x09\x5c\x43\x55\x40\x0d\x21\x52\x6b\xac\xef\x26\x56\xbb\xa0\x53\x05\xfd\xac\xcb\xa0\xa4\x08\xa2\xa0\x8e\xa7\xeb\x78\xf1\x26\xdf\xdd\x14\xe4\xdb\xb6\x22\x44\x67\xad\xa8\x5c\xd4\xa8\x27\x5c\xf8\xda\x6a\xa3\xbe\x8e\x58\xc0\x45\x93\x76\x27\x29\xbf\x1b\x1c\xc8\xee\x20\xec\x2b\x94\x1f\x3c\x65\xdf\xca\xa7\xec\xd1\xa3\x40\x0c\x59\x77\x30\x72\xf0\x83\x8d\x76\x4a\x3a\x68\x7b\xf3\x0b\xae\x4d\xfd\x18\x92\x91\x92\xcc\xc5\x7a\xb2\xed\xa8\x7b\x8d\x1c\xbe\x41\x18\xbc\x23\x91\x18\x34\xa5\xf2\xb5\x72\x98\x51\x1d\x8b\x08\xe2\x3a\x15\xfb\x57\x06\x3b\x7a\x5d\x5b\x15\x5a\x51\x5b\x5e\x45\x8c\x5a\x4b\x00\x11\x16\x80\x80\x60\x67\xa0\xaa\x15\x93\xb6\x7a\x6d\xbc\xa1\x63\xbc\x9c\xc7\x59\x46\xcf\x8d\xeb\x13\x8b\xb3\xeb\xe1\x68\xb5\xd2\x9b\xe8\xdd\xdd\xc0\x64\xa2\x0b\x00\x9a\xdf\x75\x42\xd6\x97\x7d\xea\xf8\xb5\xd7\x51\x33\x70\x4d\x50\xfe\x5d\x8f\x11\xa8\x2d\x9a\xb5\xf7\x5b\x6b\xef\xbb\xb5\xf7\x4d\x6d\x56\x03\x24\x51\x12\x88\xdd\x4d\x75\x58\xf9\xa8\x85\xdd\x40\x58\x58\x1c\x6d\xd1\xf0\x19\xdd\xbd\x56\x4a\x48\xec\x94\x08\x79\x1e\x68\x66\xba\xba\x5a\x12\x73\x45\x51\x0a\x9c\x72\x49\xd9\xb2\x90\xc3\xb3\x75\xcc\x16\xb0\x26\x37\x96\xd5\xd7\x9f\x8b\x8e\x06\x71\x23\x13\x57\xd8\xdf\xb4\x75\xa0\xc0\xba\x49\x56\xbd\xe9\xa0\x0a\xf1\x76\x9b\x7d\xd5\xd0\xba\x55\xc6\x5d\x88\x2d\x4a\xb6\xfd\xdd\xd5\x59\xa4\xa6\xce\xb2\x97\x3c\x22\x8f\xc8\xce\x36\xf4\x41\x1a\x37\xfd\x75\xf2\x80\x97\x55\xd4\x8b\xd6\x63\xec\x44\x91\x4f\x12\x7d\x27\x40\x5e\x86\xfe\x83\xd5\x6a\x99\xef\xb0\x56\xea\x22\x0c\xbe\x6e\xa9\xdd\x74\x4f\xe9\xb5\xe4\xb2\x6a\x93\xd9\x12\x9e\xa1\x72\x3b\xc5\x13\x3a\xa1\x44\x5c\x7b\x41\x65\x0b\x22\x8c\x26\x71\x26\xbb\x09\x21\xf3\x2e\xf9\x75\x11\x37\x9e\xb4\x35\xcc\xb0\xd4\x29\x5e\x58\x50\x95\xf7\x8d\xa9\x89\x81\x5f\xf7\x32\x6d\xee\x66\xe0\x26\xa8\xe6\x05\x74\x73\xd9\x65\x8e\x79\xe4\x86\x8f\x22\x3a\x42\x0b\x8b\xfa\x4f\xd9\xb7\xdc\x10\x38\xcd\x1e\x44\x1c\xc2\xab\xf4\xe0\xca\xfe\xdd\xc4\x17\xc1\x77\x51\x7f\xb5\xf2\xa9\xe2\x4b\xc1\x97\x6b\x61\x12\x9c\x43\xdf\x8e\x3b\x04\xad\x1f\xb7\x97\x50\x47\x57\xb3\x53\x9e\x66\xfa\x31\x45\xd1\x7f\x6b\x99\x5b\x0c\xa8\xe1\x12\xd3\x3a\x53\x3f\xcc\x5e\x16\x36\x9d\xf6\xe9\x05\x04\x1b\x28\x67\x90\x17\x33\x28\x60\xbe\xb0\x0b\xe4\xf8\x53\xf5\xc8\xc1\xba\xdb\x35\x69\xaf\xd4\x04\xae\x5a\x90\x56\x5f\xbe\xba\xaf\x62\xfb\x79\x10\x42\xb4\x21\x81\x49\xd9\xef\xd8\xb5\xf4\xd2\x80\x5a\xe6\x16\xc2\xee\x92\xb1\x72\x3b\x57\xcc\x4a\x38\xc4\x14\x85\xb0\x34\x01\xe6\xbd\x72\x34\xd1\xee\xae\xfb\x89\x79\xcf\x1d\x1b\xe4\xba\x09\xd8\x47\xe7\x36\x2a\x2e\x5f\xad\xb8\x63\x43\x00\xd0\xe3\x3d\x3b\x95\x48\x9d\x05\x3c\x12\xbd\x2c\x85\x6b\xbc\x9e\x20\xe7\x8a\x88\xc1\xaf\x64\x31\x26\xce\x00\x5d\x6b\x51\xbb\x07\x56\x2b\x91\x07\x98\x07\x98\x3a\x07\x6a\xa5\x3f\xe8\x0e\x46\x53\x4d\x3f\xa8\x7c\xe9\xc5\xa5\x85\x42\xa6\x92\x69\x2e\x37\x83\x32\x3c\x4e\xbd\x87\xf5\x4b\xcb\xc1\x93\x30\x84\x69\xe5\xf7\x60\xfa\xaf\x48\x67\x12\xf9\x56\x17\x5e\xbd\x05\x2d\xf4\x97\x27\x31\x40\xac\xd0\x54\xda\xef\x58\x1b\xa0\x39\xd1\xac\x4d\xf3\x35\x93\x34\x85\x3b\x06\x95\x76\xda\xee\xd2\xb4\x3f\x78\x2c\x23\xf7\xa0\x32\x51\xb9\xb0\x2f\xa2\x2c\x28\xdc\xcc\xb6\x61\xbb\x83\xe5\xc2\xc5\xaa\x0a\xbe\x8b\x2a\x46\x15\xb8\x2f\x0a\xdc\x31\x2f\xc1\x45\x65\x55\x45\x73\x55\x99\x5d\xd5\x3c\xc0\x0b\x43\xf8\x19\xbc\x3a\x47\x95\x9b\xb4\x22\x33\x8d\x33\x69\xae\xfd\x90\x59\x73\x88\x02\xe4\xf1\xe2\x2e\xd0\x1e\xea\xfa\x06\x45\x9c\x65\x3d\xd5\x62\x82\x97\x46\xa5\x13\x4a\xac\x35\x2b\xfa\x5c\x34\x58\xab\xc8\xc7\x10\x99\x22\x08\x23\x5d\x04\x8d\x74\xeb\xd3\x38\x3b\x92\x71\x4a\xca\x1b\x47\x5d\x6d\xb7\x6a\xd3\x08\x5d\x9a\x91\x68\x7e\xd9\x19\x6f\x90\x83\x7f\x8f\x58\x92\x67\x76\xb9\xfc\x60\x99\x9b\x2e\xad\x6a\xa7\x1c\x70\xcf\xe4\x58\xf3\xea\x46\x86\x01\x61\x11\x4a\xd5\x70\x2d\x41\xae\xc7\xde\xde\xe2\x25\x95\xad\x0d\x5e\x52\xb9\xb6\x3d\x78\xc6\xf7\x73\x2c\xc7\x53\xe2\x98\x8f\x5b\xec\xaa\x5e\x7c\xb8\x35\x71\x13\x1e\x66\xe8\xc5\xc7\x25\xb5\x01\xd9\x1d\x48\x45\x6e\x3d\x6b\x83\xbd\xbe\x7f\xc5\xc2\x42\x2e\x44\x4a\xab\x8c\x5c\xdf\x8d\x4b\x35\x2f\x53\xaf\x3a\x17\x55\xe0\xc7\x79\x7d\x4d\xa0\x60\x6d\xc9\xad\x8a\xa0\x3e\x1a\xdc\xd2\x2a\x34\xfb\x81\x8c\x09\x3d\x6f\xb6\xdb\x82\x04\x10\x40\xf3\x83\x35\xee\x6c\xed\x26\xcf\x71\x16\x8d\xfd\xb8\x3c\x08\x2b\x9c\x28\x56\x67\xe7\xb2\x7e\x28\xad\x73\xdc\xd0\x77\x4c\x79\xb4\x59\x47\x1e\xe0\x5a\xe3\xc5\x4e\x18\xd2\x11\x6e\x3d\xd3\x5f\x90\x6c\x2c\xe8\x5c\x91\xa5\xd6\x9a\x01\x76\x92\xdb\xda\x57\xfb\x0b\x0f\xf9\xcd\x9b\x57\x15\x6b\xad\xc7\x2e\xcb\x97\x6c\x66\xf9\x0c\x49\xbe\x91\x49\x52\xab\xf9\xfd\x5d\xcd\x8d\x6e\x6e\x4a\xb4\xf6\xe1\xc9\x76\x56\x54\xdb\x79\x33\xbf\x2f\x53\x23\x73\xd9\x96\xef\xe8\x93\xad\x3c\xdb\xf4\xc9\x67\x3c\x93\xd8\xb7\x6d\x3a\xd4\x1a\x7c\x54\x4f\xb4\xba\xc8\x2a\x8c\x21\x2f\xc2\x8e\xb5\xf5\xb6\x36\x40\xc2\x35\xc1\xb9\x4f\xdb\x1e\xb6\xb5\x6d\x4f\x0e\x17\x69\xad\x82\xae\xd9\xfc\x76\x71\x9f\xa9\x45\x03\x55\x5f\x21\x8d\xe5\xe5\xdd\xa9\x2e\x2b\xe2\x49\x59\xac\x30\x30\xca\xeb\x76\x27\x3a\xfe\xc2\x2d\x35\x25\xcb\xbc\x55\x4f\x52\x55\x88\x18\xee\x8c\x35\x0b\x3e\x76\x0a\x3e\x6e\x68\x9d\xaf\x81\x6d\x1b\x48\x8c\x76\x7a\x03\x1c\x0d\x06\x9a\xb8\xc8\x7a\x81\x4d\xa6\x5d\x68\x19\xec\x34\xef\xb5\xdb\xee\xb4\x4b\x02\xdf\xd6\x17\x26\x18\x6e\xcc\x6c\xdc\x7a\x77\x4d\xdc\x71\xc2\x92\xe1\x1b\xf4\x78\xa2\xab\xc5\x13\x6c\x9f\x63\x19\x56\xa5\xe4\x63\xda\xde\x64\x39\xfa\x4b\x12\x58\x46\x47\xb6\xbc\xcf\xaa\x14\xcc\x37\x59\xf7\x5f\xb3\x42\x07\xcd\x05\x6a\x7f\xb7\x15\x56\x80\x73\xe3\xb7\x5d\xb7\x1c\x46\xbd\xb1\x96\x51\x34\x1e\x8a\xc5\x49\x72\xcc\xed\x83\x01\x67\x08\x96\xf4\x18\x0e\x4a\x54\x9f\x1f\x2c\x79\x15\xc5\x42\x99\x1b\xde\xa9\x5d\xab\x65\x5f\xd9\x6d\x75\xa5\xe7\xdb\x35\xac\x0d\x0c\xb7\x4f\xbb\x68\x3d\xc8\x5b\xb1\x5f\x93\x84\x35\x36\x2a\x32\x6a\x98\x4a\x0b\xfd\x16\xb7\x79\xcb\xaf\xed\x99\x49\xb1\xe1\x1a\xcf\x83\xc5\xba\x1b\x78\x11\x84\x95\x00\xf1\x3f\x1c\xbf\x79\x6d\x28\xd6\x81\xb0\xe4\x04\x6e\xed\x78\x64\x6c\xbd\xe3\xa8\xb0\xf6\xce\x22\x6b\xef\x9d\x46\xfd\x3c\x62\x76\x73\x08\xce\x65\x48\xb1\xfa\xf3\x26\x16\x67\x94\x85\xbf\x7c\xb6\xe4\xf9\xfc\xd2\xfb\x6c\x99\xea\x3f\x99\xfe\x13\xe7\xf3\xcb\x5f\xb0\x2c\x67\x9d\xe7\xd7\xa9\x21\x2b\xc1\x79\x76\x2a\x56\x24\xa2\xfa\xbc\x64\xa7\x19\xb4\xce\x20\x4d\x75\xa9\xca\x87\x87\x04\xcb\x5e\x0d\x81\x00\x11\x41\xb9\x58\x62\xa0\x83\xb7\x1a\x57\x5d\x15\x64\xb5\x8c\xc5\x52\x5b\xc5\x3c\x10\x22\x41\x5e\xb9\xf0\xb7\xb2\x0c\x18\x79\x14\x87\x58\xf5\xed\x4f\x85\xc5\x26\x6d\x34\xd9\x74\x76\xad\x22\xb7\x75\x84\xae\x16\xd5\xb1\x1d\xf5\xed\xd5\x5d\xeb\xe1\x0f\x82\x7b\xdb\x40\xfc\x16\x38\x97\x91\xbd\xeb\x2d\x56\xca\x99\x66\x1b\xc3\xf4\xeb\x90\x84\x57\x55\x4d\xd6\xc4\x14\xb0\xcd\xe4\x7f\x14\x3b\xd5\xe2\xb0\xb9\x29\x55\x12\x91\x58\xad\x62\xcc\x22\xa6\xfe\x80\x8d\xb3\x6b\x27\xa4\x59\x4c\x4b\xba\x0a\xf3\x1e\x7d\xea\x80\xe9\x4f\x15\x01\xea\xd9\x41\x25\xd2\x6e\xb6\x99\xaf\x6f\x79\x0f\xf0\xb0\xaf\xeb\x77\x7d\xb4\x60\xba\x95\xa4\xdc\xf8\xfa\xd2\x6d\xb5\xda\x35\x46\x3d\x96\x1c\x36\x53\x8c\x01\xbe\x21\x82\xd7\x3c\xbf\xbf\xb1\x38\xf1\xbb\xbf\x56\x6a\x78\xe3\xd1\xf4\x54\xd6\xcc\xd1\x77\x07\x56\x27\x53\x0b\x8b\x86\x5a\x6f\x51\x28\x44\x22\x6b\xcd\x7b\xc9\x14\xa5\x30\x05\x5c\xa8\x7c\x88\x25\xe5\x90\xd1\x5b\x5b\xcf\x91\x2e\xf5\x70\x90\xa2\x9a\xb6\x30\x3b\xdb\xba\x7a\xa1\xc3\xae\xc3\x6a\x9b\xca\xb8\xde\x2b\x5e\xae\x71\x5e\xa0\x95\x22\xb5\x39\x7e\xd7\xcf\xf3\x00\xef\xf6\x77\x2c\x68\x73\x5f\xe3\x5c\x9b\xef\x9e\x6b\xc4\xd8\x3f\x32\xfe\x68\x9d\x3f\x5c\x6e\x61\x1a\x0d\xd1\x4c\x4d\x62\xc6\x7f\x43\x18\x5d\x90\xd3\x8f\x54\xc9\xf2\x1c\x8d\x9c\xcb\x09\x6a\x68\x73\xa7\xb3\x4b\x86\x72\xf4\xf4\xd1\x23\x16\x80\x5a\x9f\x0c\xe9\x90\x8d\x1e\xa1\x0f\xe4\xd7\x05\xc9\xe4\x33\x46\x67\xf0\xfe\xeb\x95\x88\x67\x04\x8d\x30\xd1\xd7\x0f\xba\xd0\x73\xc5\xdb\xa4\xf5\x32\xab\x55\x35\x7f\x4d\x53\x76\xd1\x7c\x18\xc1\x6a\xb5\xab\x2f\x35\xcc\x0a\xaa\xb3\xb0\xad\x1a\x46\xe3\xb6\x4e\xb7\x5c\xf0\xf6\x47\x4a\x0f\xe8\x74\xf3\x3e\x4c\x02\x5a\x84\xd5\xad\x05\xdd\x16\xf9\x75\x3b\x83\x80\x41\x25\xee\x2a\x62\x9c\x11\xa4\xcf\x6b\xe0\x61\xa9\xe6\x60\x79\x1e\x09\xcd\xd4\xc6\x3a\x21\xcb\x23\x82\x53\x6d\x9d\x26\x7d\x9f\x76\xe3\x60\x8f\x05\x7f\x66\x3a\x57\xfa\x3e\xef\x66\x3a\x25\x57\x1d\xa4\x3d\xc9\xe7\xdf\xf5\x6d\x2f\x09\xbf\x60\xa8\x48\xff\xb6\x48\x5f\xcc\x4d\xaa\x6a\xa5\x2c\x0e\x0c\xb3\x93\x53\x56\x50\x5f\xc8\xf0\x17\xcb\x49\xca\xb9\x08\x65\x1e\xbd\x89\xe5\x74\x1b\xb4\x71\xde\xcd\x3d\xa8\x7b\x56\xd0\x6a\xec\xc8\x88\xf4\x18\x4f\xc8\xf1\xd5\x9c\x44\x51\xf4\x96\x27\xa4\xf7\xf2\xf5\xcb\x37\x2f\xdf\x1e\x9f\xbc\x7d\xf7\xe2\xe5\x6a\xd5\xcc\x7f\xf1\xee\xf9\x8f\x6e\x01\x57\x10\xf9\x19\xf6\xd7\x01\x09\xd7\x08\x2e\x6e\x78\xdc\x6d\xa0\x53\xd7\x1a\xfe\x61\x36\x53\xbb\xde\x67\xbb\xad\xd4\xaa\x09\xda\x6e\x27\xf5\x31\x6d\x51\x22\xb5\x56\x7d\x3c\xaa\xea\x96\xa4\xb3\xe3\xb8\x91\x19\x0b\x89\xd1\xca\x8b\x78\x0a\x56\xd9\xe1\x02\xeb\xd7\xed\x63\xb5\x05\x93\xaa\xd2\xaf\xfe\x38\x57\x06\x98\x06\x7a\xe3\x4e\x75\xbb\x13\xdb\xee\xdc\xb4\x3b\xcb\xa3\xc4\x22\x06\x7f\x34\xfd\x2e\xea\x77\x3a\xf1\xa3\x09\xfc\x55\x1b\xa9\x27\xf8\x82\x25\x7e\x16\x74\xe7\xdd\xc5\xb7\x91\x93\x24\x82\x4a\x89\x34\xe8\xce\xba\xe3\x4a\x09\x16\x94\xbc\xff\x35\x8f\x9f\xdb\x30\xd2\x04\xb3\xd8\x22\xde\xc5\x5e\x4a\x4f\xf7\xb2\xab\x4c\x92\x07\x77\x58\xf7\x61\x91\x92\x6d\x23\x44\x16\x67\x3e\x54\xda\xe8\xaf\x77\x9e\x2e\x04\xdc\x74\x6c\xdd\x74\x51\x63\x63\xbb\x19\x65\x67\x8b\x34\x16\x37\x69\xd9\xa9\x93\x6f\xf2\x53\x70\x68\x97\xe3\x3a\x4f\x05\xee\xaa\x91\x4b\xb9\x67\x94\x2f\x6a\x85\xd7\xae\xab\x2d\xb4\x81\xf8\x3c\xf5\x77\xfb\x51\x64\x76\xc4\xcb\xb7\x3f\xf5\x5e\xfe\x3f\xc7\x2f\xdf\xbe\x38\x79\xff\xe1\xdd\xf1\xbb\xe3\xff\x7c\xff\xf2\xc8\x1a\x26\xb5\x66\x1a\x67\xec\xc1\xda\xdb\x77\x9d\xef\x72\xb9\xee\x2a\x29\xe8\xf9\x41\xf4\x5d\xf1\x94\x71\x2e\xc8\x38\x96\xc4\x47\xf5\x7a\xe5\x52\xf9\x81\x47\x33\xaf\x28\x9a\x14\xa1\x2e\xc8\xe5\x3c\xa5\x63\x2a\xd3\xab\xd0\xa3\x33\x85\xf5\xde\xd2\x2b\xaa\x79\xb9\x37\x11\x7c\xe6\x7d\x5e\x03\xd7\xe7\x4f\x11\xde\x1d\xe0\x25\x4d\xc2\x3a\x24\x7b\x67\x29\x3f\x8d\xd3\x0c\xe1\x05\x93\x34\x0d\xd1\xe3\x5e\x1f\x22\xdb\xe2\xc6\x8a\xfb\x7d\xec\x0c\x51\x5f\x0f\xc3\xb3\xc0\xfa\x4d\xdd\x5a\x3c\x6b\x02\xaa\x8a\x76\x37\x00\x95\x53\xf1\x66\xc0\x72\x2a\x3e\x00\xb8\x9c\xde\x36\x02\xac\xd5\x43\x9b\x8b\xec\xd6\xd3\x9e\x83\x59\x9b\xe3\xfc\xb4\x35\xa2\x0f\xf0\x59\xfc\x91\x18\x07\x7e\x9f\xc2\xe5\x56\x0b\x11\x00\x13\x3c\xe7\xae\xca\xed\xd3\x0a\x32\x8e\x0d\x78\xaf\xd7\x2b\x99\x92\xfd\x28\x8a\x58\x21\xbd\x30\x63\x43\x7a\x41\xe5\x94\x2f\xe4\x73\xbe\x60\x32\x14\x43\x64\xbe\xbb\x63\x95\x80\x46\x79\x80\x41\xff\xe7\x60\x6b\xaf\xd7\x63\x41\xd5\x0b\x20\xdb\x16\xe8\x15\x2c\xfd\x97\x00\x7b\x45\x4b\x5a\x41\x52\x32\xec\x8f\x6e\x0a\x27\x73\xc2\x6e\x79\x12\xef\x5d\x07\xaf\x0d\x84\xfd\x3e\x60\xb5\x21\x50\x61\x31\xae\x7b\x0c\xe0\x78\xd3\x13\x5b\x7c\xb2\x13\x5b\xd4\x4e\xec\xed\x96\xd5\x2e\x97\x36\x52\xfa\x1d\x1c\x45\x69\x70\x64\xe1\x70\xb8\xf7\xd9\x1e\x46\xaa\xe7\xe1\x5e\xf6\xd9\x1e\xb5\xbf\xff\xdb\x8f\x2f\x57\x92\x64\x32\xa0\x3a\xf9\xb3\x01\xd1\x39\x3e\x1f\x4b\x3e\x5f\x9d\x53\x11\x2c\x6c\x16\xad\xe7\xd0\x6a\x46\x9c\xd2\x38\x5b\x65\x32\x96\x8b\x6c\x75\xca\xd9\x22\x0b\x6a\x8d\x9e\x2e\x02\xdb\x58\x56\xa6\x4d\x26\x71\xba\x92\x7c\x16\xcb\x80\x9b\x5c\x6e\x73\x87\x92\x8e\x82\xc5\xcc\x24\xc7\x4e\x62\x5c\x49\xcb\xcc\x04\x8a\x66\x0f\x42\x7f\xf8\xdf\x93\x51\x30\x21\x2b\x7f\x98\x8a\x51\x30\xb1\x83\xf9\x6c\xff\xdc\x16\x9a\xd2\x73\x62\x93\x6d\x87\xff\x1d\x13\xca\x17\x57\xa3\xd5\xaf\x8b\xe0\xca\x4e\xd0\x56\xb8\x5c\x8d\xa7\xab\x2c\x5b\x65\xd3\xfa\xd4\x66\xb1\x14\xab\x73\x22\xe4\x8a\xb2\x24\xf0\x0f\x42\x7a\xb9\x22\x97\xb6\x14\x1d\x13\x0b\xf1\xd9\x2a\x0d\xf8\x22\x23\x65\x8e\x93\x41\xc7\xcd\x74\x5e\xb4\x42\x58\x91\x44\x98\x4d\xd4\xdd\xff\xba\xa0\xbf\xd9\x94\xdf\x54\x5f\x23\x6c\x51\x56\x2d\xbf\x06\x8e\x2e\x9a\x65\xd5\xaa\x2c\x20\x17\xc5\xea\x5f\x64\x2d\x20\x5e\xcc\x74\xa2\x1f\x07\x2c\x4e\xaf\x56\xfe\x69\x10\xaf\xfc\x24\xa0\xf1\x19\xe3\x2b\x7f\x1e\xc4\x82\x30\x39\x25\xea\xa7\xe0\x90\x96\x05\x57\x8c\xcf\x57\xbe\x0c\xa6\x24\xf0\x33\x9a\xad\x32\x52\xf4\x9b\x51\xd3\xcb\x7f\xc7\xaa\xbd\xf5\xf9\xb0\x82\xe7\xc4\x8e\x6e\x42\x9c\x65\xcb\x2a\x93\x90\xcd\x24\x58\x75\xa7\x72\xcb\xfa\xd2\x22\xf7\xca\xc0\x26\x20\xa2\x4c\x84\xdf\x66\x79\x03\x7e\x5e\x66\xa8\xdf\x0d\x84\x20\x95\xee\xeb\xeb\xa9\x96\xdc\x22\x7c\x16\xf8\x24\x0b\x0e\x2a\xa3\xe5\xb5\xfa\x7e\x36\xe5\xf5\x19\x8d\x05\xcd\xf4\x76\xf5\x69\xb6\x2a\xe1\x45\x8b\xdd\x1c\x5c\x0e\x29\x19\xd9\x5a\x97\xb4\xb1\x99\xfd\x45\xb6\xa2\xb6\xde\x22\x5b\xbb\x71\x1b\x03\x04\x3c\x24\xcc\x1d\x4e\x81\xed\x0a\xbb\x2d\xc8\x2e\xcb\xed\xe0\xa6\xd3\x4b\x07\x4f\x7f\xab\x4d\x35\x89\x65\x7c\x1a\x67\xee\x74\x47\x98\x0a\x41\x00\x7f\xdf\xc7\x54\x28\x1a\x86\x14\x47\x01\xc1\x09\xe7\x84\xcf\x53\x80\x26\x9a\xc5\x2a\x61\xa6\x77\x06\x1a\x4f\x69\x9a\x20\xac\xff\x0a\x93\x98\x29\x51\x57\xfd\xaf\xd7\x12\x81\x93\x2b\x0c\x7f\x74\xc2\x98\x5f\x20\x8c\x3e\x52\xa6\x9b\xfc\x8d\xcf\x4e\xa9\x2a\xa1\x7f\xc0\x5e\x5a\x30\xe0\x8f\xe0\x94\x18\x22\xf2\xeb\x82\xce\xb5\xdb\x66\x44\xd9\x84\x0b\xad\x60\x45\x18\x09\x1d\x8a\x70\xc6\x19\xb9\x52\x9d\xce\xc9\x58\xb5\x00\xbe\xff\xf5\x8f\x09\xcd\xa6\xea\x7b\x4a\xc8\x1c\x61\xf4\x0f\x12\xab\xc3\x01\xcd\x79\x0a\x3b\x7e\xa3\xd8\xde\xce\x09\xdc\x8c\x77\x80\xc3\xe8\x53\xfb\xd9\xb3\xef\x72\xf7\xfe\xfb\xef\xd9\x9f\x3f\xdb\xc3\x2c\xda\xf3\x87\x7f\xbf\xd8\xeb\x8e\x1e\x0d\x4f\xf6\xfe\x9e\x75\x47\x81\x3f\x8c\xbb\xbf\xfd\x3d\x19\x3d\xfa\x2c\xd8\xc3\xd4\xe4\xab\x9c\x47\x81\x3f\x7c\xd6\xfd\xaf\x91\xc9\xff\xb3\xca\xe7\xd1\x5e\x35\x6d\xaf\x7c\x3d\x11\xeb\x19\x4c\xb8\xf0\xf5\x93\xd4\x3e\x66\x91\xb4\x4f\x0a\xc4\xb7\xec\xa9\x78\xf4\x28\x20\x3d\x67\x09\x87\x72\x28\x46\x3d\xc9\x5f\xf3\x0b\x22\x9e\xc7\x19\xf1\x83\x51\xb4\xdb\x2f\xad\xf4\xb3\xd2\x2d\xba\xd8\xb1\x2d\xb3\xa8\x8f\x69\xd9\x32\xfb\x96\x9a\x07\x0b\x72\xc8\x46\x98\xf4\x0a\x84\x1d\x8a\x61\xbf\xd1\xbc\x18\x0e\xea\x85\x06\xd7\x16\x3a\x64\x60\x69\xbf\xa6\x6c\x7f\x4d\xd9\xb6\xce\xfb\xa3\xdc\x7d\x6f\x12\x2c\x7d\x12\x91\xd5\x6a\x99\x07\x2e\x60\xa2\x0a\x98\x56\xab\x85\x1f\xb8\x5d\xc0\x4e\x8c\xea\x09\x50\xac\x66\x04\xb1\x48\x49\x56\xf2\x1f\x56\xf8\xcd\x56\xab\xa1\x73\x2e\x95\x42\x1e\xa4\x17\xad\x86\xaa\xdb\xfa\xbc\x20\xd1\xdd\x86\x0b\x3f\xc8\x77\x62\x5f\xe2\xca\x98\x03\x9c\x41\x52\x75\x88\xe6\x7a\x99\xc0\x2b\xb4\xe7\xf1\x78\x4a\xfc\x20\xa7\x13\x7f\xd7\xa0\xba\xbe\x6f\xed\x74\xaa\xdf\x60\x02\x1d\xf4\xa6\x71\xe6\x98\xa3\xba\xc1\x39\x75\x58\x4e\xf0\xa3\x74\x2a\xf8\x45\x46\x84\x97\x70\x92\x79\x8c\x4b\x2f\x5b\xcc\x41\x6e\x6e\x69\x11\x7b\x73\x2d\x66\xcf\x79\x7a\x35\xa1\xa9\xa7\x64\x30\x8f\x64\x5f\x74\xb3\x69\x3c\x0b\xbd\xa9\x94\xf3\x70\x6f\xef\x8c\xca\x1e\xe5\x7b\x57\xdf\xff\xb8\x2f\xce\x50\xb0\xe3\xbc\x5d\x31\xe6\xff\x51\x4b\xe3\x56\xfa\x23\xbd\x93\x84\x8e\xa5\x36\xd7\x31\x8f\x2f\x4d\x1a\x26\x79\x5a\x2a\x04\xa2\x65\x05\x2c\xfa\xbe\x7f\xbe\x10\x67\x36\xc5\x18\xbe\x95\x0c\x70\xd4\x94\x86\x8c\x0b\xda\xb1\xaa\xf1\x63\x46\x92\x68\xb7\x6f\xad\xd7\xa0\x95\x21\x19\x59\xd3\xa5\x32\xc5\xbc\x1e\x73\x15\x12\xe0\x9e\x48\x8f\xc0\xb2\xf2\xb5\x97\x4f\x7a\x8f\xdf\x52\xa3\xbc\xcc\x77\x9a\x03\x35\x12\xdf\x10\x44\xa4\x9e\x2b\x1f\x17\xd1\x10\x74\xa5\xb9\x1e\x38\x2b\xa7\x52\xa4\x98\xa9\x94\x6a\x28\x2d\x6f\x05\x79\x8e\x5d\x50\x2e\x1b\xbd\x0f\x2a\x60\x8a\x16\x16\xdc\xa6\x69\x95\x90\xe3\x84\x66\x8d\x15\xb2\x35\x4a\x33\x7d\x5b\xa5\x4c\xd9\x6a\xcd\xaa\xe0\x5f\x0f\xfd\x5a\xb5\x72\xaa\x35\xdf\xe7\x58\xe7\x38\xb6\x4a\xe5\x7c\x8d\x9d\x4f\x13\xbb\x80\x60\x58\x2a\xa1\x35\x15\x6a\x3d\x6a\x74\x2c\xc8\x0b\xe2\x71\x9b\xe6\x6d\xdd\x4d\xed\x3b\xa4\xa4\x74\xd3\xb6\xb1\x83\xd8\x2f\xbb\xc0\x43\xd2\x6c\xb2\x20\x45\x5b\x8f\x39\xab\x34\xa9\x06\x3a\x52\x0d\x39\x4a\xce\xed\xd6\x02\x57\x11\xf2\xee\x9b\xc7\xf4\x5a\xbc\xb1\x92\x07\xc6\xdc\x00\x58\x0b\xd5\x47\x63\x31\xdd\xa4\x02\x12\x41\xe8\x0f\x76\xa3\x68\x1e\x8b\x8c\xbc\x4a\x79\x2c\x7d\x02\xbe\x17\xa2\x4a\x73\x72\xeb\xe6\x82\xda\xc6\x3d\x90\xe1\x2f\x9f\x2d\x49\xee\x7d\xb6\x94\xf9\x2f\x0e\xda\x68\x24\xdf\xbc\x01\x4e\x36\x14\x6e\x9d\xa9\x2d\xdf\x3a\x36\x73\x7c\x29\x3c\x28\xeb\xe2\x58\xaf\x45\x4b\xf4\xe9\x1d\x3a\xf1\x27\x11\xf8\x56\xeb\x29\x56\xdf\x27\x01\x9e\x47\xbc\xf8\x3d\xb1\x96\x5d\x44\x95\x1c\x47\x35\x84\xc3\x49\xc4\x7a\xe4\x92\x8c\x7d\x12\xac\x56\xd4\xfe\xc4\x49\xa7\xe3\x4f\xa3\x64\xb8\x5f\xe3\x0d\x02\x7c\xee\x1c\xd9\x15\x26\x69\x3c\x32\xa6\x5e\xcd\xac\xe9\x08\x9f\x97\xe3\x50\x0c\xd2\xcc\xa3\xcc\x8b\x03\x35\x24\x13\xdc\x7a\xf6\x08\x7d\x56\xba\x0e\x4b\xa3\x78\x38\x1b\xe1\x79\xa7\x13\x0f\xa7\xa3\x4e\xc7\x4f\xcd\xad\x82\xd1\x4f\x8f\xe3\x39\x95\x1a\x53\xd3\x00\xcf\xd6\x66\xce\x02\x1d\xee\x6a\x9e\xc6\x63\xe2\xab\x53\xf8\x03\x39\x7b\x79\x39\xf7\x67\x18\x51\x14\xe0\x54\x3f\x2c\x55\x24\xfd\xac\xe4\xd5\xce\xbe\xeb\x77\x3a\x7e\x16\xc9\xe1\x59\x77\x30\xc2\xb3\x08\x1c\xa3\xec\xce\x2c\x54\x83\xa7\x67\xdd\x6e\xf0\xd4\x8c\x35\x8b\x34\xa3\x62\x8a\xa5\x51\xa6\xd8\xb2\x45\x54\xf6\x3b\xc3\x69\x80\x17\x79\x8e\xd3\xca\xfd\x53\xe9\x59\x1a\xa7\xbd\x82\x09\x07\xfd\x6c\xea\x97\xe6\x29\x70\xe0\x8c\xa3\xd4\x75\x3a\xbf\x25\xdb\xef\xdc\xeb\xdc\x4c\x5f\x78\xef\x1c\xff\xc6\x13\xc2\xce\xab\x04\x42\x6f\x2d\x8d\x22\xd7\x1e\x53\x2d\xad\xd5\xf6\xec\x75\xd0\x6b\xea\x91\x1f\xd6\x3e\xa1\x70\xb8\xa0\x23\xee\x54\x8d\x33\xab\x51\x78\x88\xe3\x26\xf1\x87\xe3\x37\xaf\xbf\x8f\x45\x56\x2b\x6f\x52\x7b\x6a\x3e\xe0\x07\xec\x87\xa2\x6a\xb5\x20\x38\xe5\x38\x6d\x2f\x9a\x37\x43\xf5\x51\x26\xd3\xf2\xb5\x10\x84\xd0\xee\x2a\x0e\x31\x6b\xc4\xb3\x49\xbb\x33\x92\x65\xf1\x19\xd1\xb2\xef\xfd\x63\xd7\x9b\xc3\xa3\xa3\xc3\xb7\xff\x71\x72\xfc\xe1\xd9\xdb\xa3\xd7\xcf\x8e\x0f\xdf\xbd\x8d\xca\xd4\xc3\xb7\xc7\xaf\x4f\x9e\xbd\x3f\xac\x8b\x9b\x52\x47\x71\x7f\xce\x93\x66\xd9\x9d\x96\xea\x62\xa7\xbd\x27\xd4\x92\xd8\x12\x7a\xac\x0a\x2f\x0d\x0a\x09\xc1\xc7\x4e\xe3\x6c\xeb\x08\xc5\x4e\xe4\x31\x00\x9d\xbe\xfb\xad\xbd\xde\xdf\xea\xcd\x3d\xbb\xf6\xcd\xbd\xec\x74\x7c\x16\xb1\xde\x84\xa6\xb2\x12\xf1\x49\x16\xbb\xed\xba\x37\x78\x6a\x8c\xce\x83\x60\x88\x87\xa5\x39\xaa\x5e\x3c\x9f\xa7\x57\xf0\x04\xdc\x3e\xb8\x17\xa5\xd0\x29\x5c\x57\x46\x22\x1a\x3c\x15\xdf\xd6\xf9\x10\x10\xd4\x97\xda\xf7\xb8\x62\x62\x77\x1d\x66\x44\xb8\xcc\x88\xd0\xcc\xc8\x9f\xf6\x0f\xa4\x01\x8b\x4f\x03\xbc\xdb\x6f\x7b\x32\x2f\x83\xa5\xbe\xfd\xa0\x43\x09\xd7\x33\xe1\x35\x33\xcc\x5a\x9d\x00\x50\x92\x95\x81\x25\xd6\x56\xf5\x69\x10\x84\xce\x98\xd6\x0c\x68\xfd\xbb\xeb\xeb\xa0\x4f\xb1\x84\x1b\x4f\x0b\x60\xc7\xb3\x00\x7b\x58\x8f\x06\xf7\xa5\x24\xa2\xad\x42\xac\x7e\x29\xc8\x2b\x6f\xde\x89\x5a\x49\x6d\x5f\x6f\x3d\xd1\xdb\x47\xff\xac\x78\x15\x10\x27\xaf\x60\x1f\x3e\x5f\x53\x42\xf7\xf2\x36\x96\xf4\x9c\xbc\xb2\x3b\xb6\x2c\x06\xfc\x8e\x6e\x3d\xb2\x3c\x5e\xad\x4d\x60\x03\xaa\x49\xb5\x87\xe7\x7a\x01\x86\xa3\x5c\x6f\xb3\xbf\x31\x7e\xc1\x9c\xf7\x36\xae\x79\xa0\x47\x4b\x73\x9e\x1c\x38\x17\x43\xcb\x60\xf1\x02\xf7\xfd\x73\x8f\xb2\x71\xba\x48\x48\x06\x66\x42\xbe\x6c\xf8\xe7\x90\x39\xb8\x4a\xaf\x3c\xec\xb1\x0a\x99\xd6\x91\x28\xaa\x42\x3a\x1d\x64\x88\x38\xf4\xb8\x94\x91\xf0\x45\x11\x33\xe5\x8c\xc8\xb7\xf1\x8c\x98\xd9\xfa\xa4\xa7\xcb\x06\x81\x7e\x71\x62\xfa\xb5\x4f\x99\x0b\x80\x16\x7d\x28\x82\x96\xd7\x1b\x09\x96\xb5\x17\x33\x55\x68\xfa\xc1\xd0\x2e\x83\x5d\xfb\x9e\x3a\x86\x46\xf0\xb0\xa1\xd3\x91\x43\x32\xb2\xe0\x53\xbf\xdd\x97\x01\x1c\x33\x9f\x63\xa4\x8a\x97\x6e\x01\x6e\x40\xb8\xf5\xef\xae\x9a\x8c\xa4\xb3\xda\x9d\x35\xb8\x7b\x99\x91\x19\x87\x8b\xc3\xed\x0e\x81\xeb\xee\x60\xff\xf8\xdb\x77\x88\x52\x3e\x8e\x53\xf2\x46\x3f\x51\x57\x70\x02\x20\x94\xdf\x0a\x92\xff\xc5\x99\x82\xd9\x94\x2f\xc4\x60\x1f\xac\xad\xc9\xc7\x24\xbe\x52\x60\x14\x31\xc2\xe8\x8a\xc4\x42\x2b\xce\xe5\x14\x61\xa4\xb3\x54\x69\x95\x48\x99\x09\xa4\x4b\xc6\x9c\x25\x4e\x8b\x6f\xb5\xa1\xb3\x2a\xf7\xfc\x6a\x9c\x12\x34\xb2\x94\xa3\x78\x63\x2c\xd6\xf8\xcf\x68\xf3\x99\x71\x0d\x91\xa8\x3e\x8c\x02\xe4\x8e\xbe\x53\xcc\xfd\x21\x93\x69\xef\x45\x2c\xc9\x31\x9d\x11\x8b\xe5\x8a\x52\xd7\x5d\x52\x94\x7e\x68\x8a\x42\x6a\xc9\x8b\xc8\x61\x76\x3b\xd8\xfd\x63\x7d\x82\x6d\xd8\x60\x2c\xa8\x28\xa9\x5a\x87\x0e\xc5\xcc\xd6\x05\x99\x49\x8d\xd5\x97\xd5\x47\x35\x77\xdc\x3a\xce\xce\x69\x17\x4f\xb6\xdd\x72\x9f\xfc\x6e\x02\x10\x44\xb4\x38\x58\xc9\x0b\xff\x4c\xae\xb9\x1d\xe6\x11\xd2\xb3\xf2\x69\xa4\xc1\x13\x50\xe6\xb3\x48\x04\x6b\x76\xa7\x6a\xc2\x0c\x81\xdf\x68\x77\xb2\x21\x1d\x45\xfc\xe6\x40\x37\xcc\xf8\x46\x6a\xd5\xc2\xb5\xb7\xaf\x8d\x96\x95\x40\x35\xd3\xe6\x27\x60\x1d\xfd\xa2\x7f\x48\xfa\xb5\x2c\x65\xa4\x70\xf9\xa3\x9a\x79\xb8\x24\xd9\x38\x9e\x93\x97\x97\x73\x41\xb2\x8c\x72\x16\xf2\x3c\xcf\xb5\x42\xc2\x20\x4f\x5c\xe7\x4b\xe8\x1a\xbe\x84\x5e\xcb\x97\xd0\x9b\x92\x1c\xcc\x0c\xd1\x29\x08\x9b\x4e\xc5\x4b\x7a\xc6\xb8\x20\xc7\xf1\x99\xb6\x8b\xbb\x35\x33\x53\xa5\x4d\x3a\x34\xb0\xdc\x69\xbc\xe7\x55\xb2\x04\x8d\xaa\x1e\x0f\x64\x10\x14\x3e\x1f\x44\xa7\x23\x7a\x53\x39\x4b\x8f\xe2\x09\xc1\xc6\x97\x4b\x3b\x79\xa2\x78\xcd\xf0\xfc\x20\xc0\x69\x14\x1f\xd4\x1f\x80\x99\x37\xb5\xbb\x76\x2c\x8d\xa7\xb8\xed\x3e\xb5\x48\xc9\x8f\x8b\xc2\xfb\x3b\x03\x2e\x6a\xa7\xa2\x70\xa2\x99\x12\xb2\xd5\xc0\x7d\x16\x1c\x00\xab\xc5\x7a\x92\xab\x44\x3f\x08\xe1\xbb\x01\x0f\x76\xc0\x7d\x16\x84\x2c\x0f\xb0\xcc\xe1\x51\x33\x5e\x44\x99\xa5\xba\xe5\xc5\x4c\x7c\x50\xe9\xca\x42\xc8\x5f\x04\xe1\xc2\xa5\xc7\x31\xa6\x7e\x6c\xe9\x31\xb2\x5b\xfc\x16\x24\x99\x2d\x54\xb1\x7f\xb3\x32\xb7\x61\x65\x32\x79\x95\xc2\x53\xaa\x85\x10\x84\x8d\xaf\x9c\x9f\x2f\x68\x36\x4f\x81\x4d\x59\x30\x78\x37\xa6\xfe\x38\x89\x19\xf9\x0f\xc1\x17\x73\x50\xd7\x29\x16\x86\xce\x16\xb3\x43\x26\x09\xf8\x91\x3d\xa3\xb0\x0c\x26\xf9\x95\xd0\xce\xbf\xca\xf4\xf8\xb2\x3d\x5d\x97\x3f\xa2\x67\x8c\x4e\xe8\x38\x66\xb2\x5e\xa5\x2d\x6b\xcc\x67\xf3\x78\xec\x8c\xad\x39\x05\x9b\xa2\xaa\x23\x8c\x18\x97\xd6\xa2\x21\xa3\x67\xac\x3a\xd5\xda\xc4\x7f\x47\x96\xeb\x2d\x60\xf6\x3f\x3b\xc3\x25\xd7\xb3\x59\xc8\xec\xcd\x5b\xec\x6a\x41\x52\xe8\xf3\x7e\x0e\xfd\x8a\xb2\xef\x96\xe4\x40\xfb\x34\x6c\x27\x09\xfc\x8f\x49\x12\xe2\x68\x88\xa0\x7f\x3a\x76\x88\x41\x05\xed\x4b\x6f\x46\xf4\x06\x68\xcf\x6f\x81\xf6\xa0\x38\x50\x78\xbf\x5a\xc1\x9f\xde\x07\x83\x02\xa5\xd4\x51\x3a\xbd\xd3\x1c\x82\x4e\xd5\x76\x0a\x9f\xaf\xa9\xe3\x51\x6d\xb0\x10\x9f\xc7\x14\xfc\x7c\xe8\xd0\x4f\x34\xf3\x9c\x00\x86\x3d\xef\x58\x5c\x59\x7b\x85\x94\xb2\x33\x8f\x4a\x6f\x91\xa9\x1f\xe8\x2f\x1a\x35\xfe\x91\xed\x01\xba\x59\xc4\x54\xcc\xbc\xc1\xb9\xcf\x31\x6b\x28\x5f\xd5\x46\x13\xfc\xc2\x73\x98\x94\x1e\x67\x7a\xa8\xcb\x8f\x94\x25\x61\xb3\x0e\x06\x34\x0d\x89\x5a\x30\xab\x7d\x28\x88\x41\x73\x66\xda\x2f\xc6\x3a\x9a\x10\xd7\x68\x02\x30\xff\x55\x7f\x41\x37\xa4\x0c\xd4\x32\x3f\xdc\xa8\x2f\x23\x9f\x45\xda\x4d\xab\x38\xd0\x78\x15\x8a\x9e\xc2\x9e\xc0\xb9\x70\x65\x07\x2c\xa4\x90\xba\x15\x5d\xa1\x05\x5d\xb1\xc4\xa3\xe4\xc8\x0e\x64\xe8\x48\x77\xbd\x33\x22\x15\x30\xfc\x00\xf3\xaa\xfb\x04\xcc\xfd\xac\x20\x41\x05\x21\xb9\x05\x11\x6a\xea\x48\xfe\x15\xa4\x3d\x3d\xab\x7f\x3e\x69\x6f\xc3\xab\xbd\x6d\x96\xe9\x46\x12\xfc\x0d\x79\xcb\x9b\x0a\xaa\x37\x3d\xe4\x3e\x91\xc3\xba\xb5\x15\xf4\x8e\x3b\x06\xb8\xdd\xe3\x8b\x06\xdd\xec\x0b\x80\xf0\x96\x0f\x0f\xb6\x6f\xf6\xad\x59\x8b\xad\x1a\x66\x37\x68\xf8\x8d\x5d\xb5\xad\x5a\xa6\x37\x68\xf9\x43\xc1\xc4\x6c\xd5\x34\x77\x9a\xbe\x6e\xdf\x64\x92\x0b\xb2\x37\xe6\x4c\xc6\x94\xad\x73\x7b\xd2\xac\x20\x45\xcc\xb2\x54\x33\xbf\x0f\x13\x8d\x5a\x4b\x83\xa6\x35\x4d\xa6\xfc\xa5\x96\x43\xb2\x5a\x88\x54\x1f\x9d\x38\xe3\x7b\xc3\x13\x92\x66\xc8\x19\x64\x01\x28\x78\x0d\xd6\x9b\x08\x3e\x2b\xe2\x41\xd5\xaa\x69\x81\x18\xee\x92\xae\x89\xb0\x6a\x0d\xd2\x1a\x4d\x00\x8f\xf1\x26\x9e\xe7\x58\x9f\x55\xc7\xb5\x02\x6e\x48\xc1\x4a\xc8\x7c\xf7\xe1\xfc\x9a\xd1\x69\x47\x6a\xc2\xf4\xcd\xb8\xa4\x93\x2b\x0b\xe3\xe7\xd3\x98\x9d\x11\xdf\xc8\x6a\x19\x0a\xb0\xc8\xf1\x84\xb2\xa4\x6d\x00\xd7\xf4\xa3\x9d\x74\xe5\x18\x2c\xc2\x1c\x13\x29\x73\x69\xd2\xda\xe6\x8e\x00\x7f\x47\xce\x29\xdd\x52\xc8\xc4\x04\x71\x72\x32\x25\x08\xe0\x69\x6c\x6e\x45\x2a\xc1\x16\xd7\xf5\x44\x27\x7e\x61\x2c\x20\x7a\xaa\xae\x6a\xe3\xc4\xf8\x70\xba\x59\x3b\xa0\x8e\x81\x16\xca\x16\xc1\x49\xbf\x6a\x52\xb7\xf8\x2c\x93\x2d\x8d\xba\xdd\xd5\x46\x14\x67\xd2\xd6\xbd\x59\x45\x2e\xe8\x19\x65\x71\x5a\x75\xd1\xdf\xfa\xb4\x79\xf3\x1e\xbd\x76\x5b\x1b\xc7\x14\xa9\x3a\x58\xd8\x6d\x54\x9e\xff\x32\x5a\x0e\x7d\xb1\x0e\x0c\xd1\x52\x71\xc4\x7a\xff\xbc\x8d\x67\x0d\x7b\xc2\x32\x27\x5f\x73\x01\xeb\x2c\x41\xa6\xfd\xaf\xbe\x89\xe7\xa5\x34\x1f\x67\xb2\x2d\xd9\x69\xb8\x76\xe5\xea\xe4\x44\x24\xaf\x6f\x1c\x52\x4a\xec\x55\xc9\xc8\x84\x11\x30\x5a\x3f\xb5\x00\xcc\xba\xba\x60\x43\x39\x2a\x94\x96\xa5\xa2\xb0\xd3\xf1\x49\x84\xd0\x23\x52\xc4\x3d\x2b\xfb\xd1\x0e\xdc\xb0\xcd\x52\x93\x30\x49\xd5\xd7\xa0\x24\x08\xf2\x5c\xc7\xb7\x28\x43\x2c\xc3\xc6\xb6\x5b\x6b\x19\x67\xd6\xd9\xa6\x6a\x44\x53\x19\x6c\x91\x3e\x6c\xf6\x6c\xe8\x50\xae\x5b\xa9\xac\x46\xa5\x9c\xce\xcf\xaf\x8d\xba\xde\xc4\x6e\x32\x9b\xcb\xab\xae\x51\x9c\x3e\xd8\x63\x44\xab\x8f\x6d\xde\xf1\x63\x57\x4a\x0e\x4d\x23\xc6\xd9\xa3\xbb\x41\x06\x95\x0d\x91\x3b\x66\xf0\x4a\xb6\xce\x85\x63\xc8\x2e\x8d\x25\xb7\xb8\xee\x05\xee\x06\xfa\xb0\x1d\x39\xa9\x00\xf3\x93\xfb\xb7\xf2\x88\xcf\xec\x0e\xa0\xd5\xa3\xb4\x05\xfd\xe9\xc4\xdf\xb5\x2e\xe1\xb1\x0c\x02\xc5\x02\x51\xb6\x20\xa5\x6c\xaa\x76\x86\xa3\x45\x2f\xe4\x47\xde\xe9\xf0\x92\x84\x13\x9f\xbb\xbb\x0b\xd4\x02\x22\xa0\xc3\x5f\x3e\x5b\xca\xbc\xf7\xd9\x92\xe4\xbf\x8c\x22\x31\x24\x23\xed\xf0\x96\x2a\x42\xc5\xcb\x48\x1b\x85\x51\x56\x23\x70\x47\xf5\x3d\xc5\x76\xeb\x73\x46\xe4\x03\x39\xf2\xab\xb9\x15\x5a\x0a\x70\xc8\x4b\xc0\x0d\x12\x98\xdc\xee\xca\xd5\x6a\x57\xf6\x4e\x12\x3e\xb3\xdc\x42\xd5\x0b\xe3\x41\xcd\x29\x23\x09\x42\xd2\x2b\x18\x51\xcc\x22\x51\x38\x61\x34\x1e\xc8\xc3\xae\xf5\x30\xa4\x83\x24\x33\x7b\x50\xb2\x1d\xe9\x94\x2e\x86\x02\xa0\x80\x07\x2c\x7a\x1c\x9d\x8e\xfe\x5b\x38\x10\x2c\xcc\x23\xaa\xc9\x96\xeb\x02\x4f\xef\xdb\x01\x7e\x7a\x95\x88\x4d\x57\xba\x95\x83\xe0\xd3\x7b\x7a\x23\xc1\xb2\x34\x07\xad\x45\xef\x1e\x0a\xcc\x46\x91\xdc\x21\x0d\xc6\x0b\x4c\xd2\xda\xad\x44\x9b\x33\xa6\x59\x37\x56\xec\xb3\x89\xe9\xf3\x90\x18\x67\x22\xfb\x98\x18\x57\x34\xd3\x4e\x1d\x48\xb0\x5a\xd5\x92\x0a\x1e\x6e\x17\xbc\x8d\x91\x28\x8a\x0a\xaf\x77\xfd\xf2\x05\x90\xe4\xfa\x92\xc9\x0f\x54\x01\xe7\x73\x4b\x50\xcc\x68\x96\x51\x76\xd6\x76\xbf\xfc\x50\xb0\xb0\xf3\x7e\xa9\x28\x6e\x39\xef\x5f\xde\x72\xc3\xbf\x78\xc6\xcf\x66\xcf\xf3\x7e\x84\x77\x4c\x9e\xe4\x9e\x20\x19\x4f\xcf\x89\xe7\x60\x67\xe8\x21\x45\xb3\xd0\x2f\x8e\xb5\xe8\x3f\x38\x65\x3e\xc2\x1e\xb2\xf2\xc8\x2f\x6f\xf4\x8c\xdd\x8a\xa6\x9e\x37\xe1\xc2\x76\x89\x3e\x5b\x8a\x1c\xfd\xb2\x25\x14\x99\x12\x75\x53\xfa\x1b\xe9\xea\xea\x0f\x6f\x7b\xdc\xb8\xab\x2c\xcc\xcf\x4a\x93\xf6\xbd\x93\xbd\x33\x8c\xba\x28\xa8\xbe\x0f\xd8\x72\x8e\x9a\x77\xbe\xc6\x4c\xb8\x0b\xa5\x3e\x81\x2d\x7a\xdb\xb4\x1d\x2f\x1d\xd0\x2d\x44\xab\x2e\x96\xe2\x87\x38\x9b\xca\xf8\xec\x90\xbd\x07\xb3\x74\xc5\x66\x54\xaf\xcf\xd7\xcd\xdb\x3a\x36\xb1\x8a\xcc\x9b\x58\xfa\xde\x1f\x3b\x55\x31\x1c\xb7\x3a\x03\x35\x3e\xed\xf7\xd0\x48\xf1\x96\x35\x75\x18\x2d\x20\x14\x8d\x17\x8c\x5a\x19\xa3\x9b\xf3\x68\xe6\xc5\xcc\x8b\x4f\x33\x29\xe2\xb1\xf4\x40\x5e\xc0\xde\x38\x66\x70\x4b\x70\x6a\x3d\xe4\x49\x1a\x4b\x92\x78\xda\x37\x64\x7a\xd5\x43\x36\x7c\x61\x45\x6b\xa0\xc6\xd4\xea\xa4\xb8\x71\x04\xaa\x92\xc8\xa9\xd5\xe3\xcc\x8a\xf8\x5a\xe0\x2f\x82\xab\x0a\x62\xf4\x21\x28\xc8\xb1\xd1\x85\x07\xcb\xc6\xa4\xd4\x68\xe9\x6c\xae\x7d\xe8\x92\x44\x15\x36\xf5\x0a\x41\x1f\x4c\x28\x77\x1a\x54\x46\x04\xf6\x36\xc0\x84\x59\xd3\x9a\x7c\xd9\x8b\xd3\x94\x5f\x40\x99\xba\x02\x5f\xf3\xfa\x65\xb6\x31\x47\xa0\x13\xbf\x78\x2b\x25\x1a\x70\x57\x95\x1e\x21\x4f\xa3\x94\x27\xc8\xaf\x0b\x2a\x48\xe6\x01\x02\x78\xb1\x0d\x2f\xdf\x43\xa5\xa5\x25\xc8\xf8\x7a\xc6\x02\x2b\xb9\xbd\xea\x24\x7b\xcd\x02\xf4\xf8\x64\xb2\x05\x2c\xf3\xc0\xfa\x1d\xdb\x42\x24\xb7\xfb\x60\x1b\xb3\xaf\xd6\x3d\xf3\x30\xca\xb5\x92\x59\xb0\xbb\xa4\x5c\x24\x25\x6c\x97\x57\x40\x0d\x07\xba\xa9\x81\x34\xdc\xa6\xc0\x4d\xd2\x56\xba\x8a\x1a\x60\x5a\x4d\xb3\xfe\x59\x61\xb3\x05\x34\x8c\x2e\xf8\xf6\x00\x69\xb3\x46\xf9\x03\xc3\x43\x2b\xdd\x6f\x0f\x8e\xf6\x6b\xfc\x3f\x30\x40\xac\x4a\x5f\x83\xa4\x24\xb9\x77\x0e\x3d\x53\x55\x19\x6b\x22\x77\x6b\xb0\x6f\xbc\xb8\xfc\xa3\x81\x1c\x2e\x79\x6f\x0e\x8a\x35\xb1\xae\xfe\x50\x00\x90\x37\x98\xf7\xe6\xeb\x53\x27\x18\x98\x4c\xab\x59\xb3\x78\x2c\x78\x43\xba\xbd\xb3\x3b\x35\xa3\xad\x5a\x9a\xf8\x57\x2a\x6d\x7d\x1b\xa6\xd0\x1d\x6e\x23\xe1\xc2\x47\xac\x79\x91\x64\x7d\xaf\xa2\xdd\x28\x92\x9d\x8e\x3b\x64\x9d\xe2\x5f\xa3\xc6\x29\x15\x4e\xab\x95\xd6\x84\x77\x3a\xa0\xbb\x8e\x22\x01\x4e\xcb\xb7\x8b\x35\xb9\xfe\x22\x74\x28\xc1\x37\xce\x1a\x87\x8f\xc5\x2a\x5d\xb3\xca\x45\xa1\xf6\x35\xde\x6b\x68\xf3\x3e\xa1\xd3\x3c\x3d\x88\x7b\xbc\x5d\x96\xf7\x7a\xa9\x2c\xe2\x8b\xad\xdb\x13\xf1\xc5\xfa\x2b\xd9\x0a\xcc\x1f\xd2\xe7\xb5\x7d\x6d\xd8\xf4\x7b\x8d\x85\xe3\x34\x93\x04\x58\xbb\xfa\x27\xda\x9f\xcf\x90\x8d\x9c\x83\x88\x8d\x0a\x9b\x20\xd1\x9b\xf3\xb9\x0f\xb1\x70\xab\x0f\x6d\x8b\xfb\x59\xf9\x08\xf5\xac\x90\xdf\xeb\xf5\x78\x75\x8a\xb5\xc8\xd6\xb2\x88\xea\x5d\x9b\xa7\xce\xb5\xf3\xbb\x89\xf4\x54\x51\x9c\xe7\x41\xa1\xea\x68\xf4\x5c\xc4\x74\xd6\xfb\x16\x52\x85\xb1\xc2\x86\x3d\x86\x49\xef\xe4\x44\xb5\x7a\x08\xe1\x6b\x29\x67\x70\x37\x53\x93\x43\xb5\x90\x8f\x1e\x29\x1e\xb9\xc7\xf8\x85\x1f\x94\x4a\xa6\xc7\x5f\x2a\xa2\xdc\xd6\x48\x6b\x10\x13\x77\x0f\xde\x46\x0b\xbf\x76\x9b\xdf\xec\x42\xef\x5f\xf6\xfd\x2d\x75\xdf\xdf\xca\x68\xf0\x54\x36\xdf\xdf\x4a\xfb\xfe\x56\x34\xde\xdf\x4a\x97\x1f\x93\xda\x93\xce\x9f\xf6\x0f\x98\x7d\xeb\x2a\x36\xbc\xbf\x35\xc6\x9f\x0f\xf1\xfe\x56\x04\x41\xe8\x8c\xe9\xde\xdf\xdf\x8a\xf5\xef\x6f\xff\xf9\x4d\x5c\x45\x7c\xd1\xe6\x5f\x41\x51\xc2\x18\xac\x20\x5a\xf5\xb0\xc5\xd5\x13\x8f\xd8\x6a\x55\xb9\x7d\xc2\xc3\x0c\xa7\xa3\x4a\x9b\xad\x06\x1f\x98\xd5\x6e\xad\x36\xbf\xcd\x90\xc5\xdb\x0c\x1a\x11\xb8\xac\x72\xa3\x32\xc4\x07\x4c\xc1\x80\xea\x80\xe1\xef\x26\x7e\x10\x0a\x48\xc8\x03\x0c\x57\x00\xb9\xcf\x03\xbc\xb0\x7b\x11\x4a\x65\x7e\x66\x49\x5e\xf5\x2a\xb7\xd7\xeb\x2d\xb0\xda\x32\x98\x07\xd1\x77\x02\xf8\x49\xea\x53\x7f\x99\xe3\xd4\xf1\x4c\x4d\x5c\xa3\xf1\x6b\xa7\x22\xaa\x53\x81\xe1\x96\x14\x98\xd8\x9d\x80\x59\xee\x73\x9c\x05\x41\x10\xe4\xeb\x1e\x16\x59\x3b\xe1\x13\x1d\xab\xbd\x76\x69\xae\x43\xa6\x93\xbc\x80\x44\xf5\x1a\x1f\x92\xf3\x52\xeb\x6f\x73\xcd\xb7\x53\x28\xc8\xd7\xb9\x83\xa8\xb1\xc5\xdb\xdb\x1e\x6e\xa4\xdc\xf5\x3b\x96\x1b\x69\xcf\xb7\xb9\x26\xdc\xe6\x46\x6b\x2b\xb3\xb1\x35\x86\x87\x38\x5e\x77\x8a\x64\xff\xd2\xa7\x48\xfa\x49\x4e\x91\x6c\x9b\x53\x64\xf1\xb0\xa7\x48\xf6\xfb\x9c\x22\x8b\x7f\xfa\x53\xa4\x45\x6c\x1f\x47\x95\x48\xce\x56\x74\x37\x91\x21\xce\x41\xff\x8e\x8d\x20\x9f\xe9\x2b\x8a\x76\x03\xc7\xd2\x14\xb1\x62\xe9\xf8\xdc\x6e\xc7\x5e\x69\xf3\xa7\x7f\x35\x0d\x24\x2d\x95\x58\x6a\x13\x42\x59\x1a\x4e\xe8\xa2\xb3\xf8\x23\xb1\x97\xa8\xbd\x59\x3c\xf7\xcb\xe7\x8b\xad\x27\x04\xad\x18\x28\x05\xab\x95\x5f\x0f\xf6\x58\x74\x49\xdd\xb8\xbe\x3a\xf8\x96\x35\xbf\xa4\x33\x22\x0a\x43\x4a\xf5\x11\x95\x25\x19\xb9\x94\x3e\x44\xc8\x36\xf6\x3e\xf4\xec\x8c\x88\xba\xc2\xde\xd6\x5e\x40\x94\xfa\x17\xe6\x46\xff\x75\xcc\xce\x16\xf1\x19\xf1\x2b\x83\xcc\x83\xaa\x59\x55\xae\x04\xb7\x92\xfe\xd7\xa4\x81\x62\x02\x81\x92\x07\xe7\x82\xce\x62\x71\xf5\xba\x0d\xbc\xce\xf2\xe8\x2a\xbd\x3e\x0a\x70\x55\xef\x17\x26\xbe\xf3\xa4\x00\x57\xb4\xc6\x2a\xaf\x78\xc8\x88\x5d\x05\xaa\xca\xb1\x6f\xa1\x70\xa9\xd5\x52\xc9\xa0\xaa\xb3\x89\x4a\xd0\x50\x89\x70\xdf\x10\xe0\x56\x24\xd1\x08\x66\x26\x65\x3e\x00\xe6\xe6\x77\x79\x46\x55\x6e\xcb\x5c\xbd\x62\xe5\xb1\xce\x8e\x7d\x53\x53\x87\x9b\x05\xdb\x6a\x35\x44\x84\x75\x17\x19\x1a\xe9\x3b\xb0\x8c\x48\x0d\xbf\x22\xd0\xe9\x09\x57\xc2\x5b\xeb\x4d\x58\xd3\xbc\xb6\x98\x49\x14\x17\xda\x30\x63\x39\x65\x4b\x97\x73\x30\xa6\x96\x3a\xbf\x78\x28\x92\xd9\x92\x66\xd3\x59\x8f\x95\xe6\x33\x72\x06\xd5\x33\x97\xe5\x26\x9a\x30\x8c\xc0\x47\x76\xb3\xce\x62\xca\xd4\x0c\x97\x3a\x30\x04\x77\xde\xfa\x82\xa8\xb8\xe1\x06\xaa\x2d\x7a\xfb\x9a\x9d\x91\x63\xfb\xf4\xc7\x58\xdd\xe8\x87\x3e\x60\x72\x63\x9e\x09\x6d\xb6\x33\x55\xc0\xfe\x99\xca\xe9\x0b\x63\x61\x2c\x75\x1c\x78\x56\x38\xef\xa5\x51\xff\x29\xfd\x56\x14\xe1\x30\x7c\xf3\xf8\x6f\x1d\x99\x81\xae\xc4\x90\x8e\x30\x09\x70\x71\x87\xc7\x82\xa7\xf4\xd1\xa3\xc2\x51\x1c\x6b\x18\xce\xde\xd5\xc1\x62\xe5\x61\xe2\xfa\x79\xd1\x62\x5e\x3c\xea\x3f\xe5\xdf\x96\x61\x3e\x7c\x7a\xfd\xbc\xd4\x68\xd9\x90\x57\xa7\x46\x83\xa7\x5c\x4d\xcd\xbd\xb2\xa4\x9d\xce\xae\x1a\x32\xe0\x08\x4d\x29\x61\x35\x1d\xec\x26\x0c\x52\xdc\x56\xa8\xa5\xf1\x9a\x19\x49\xe0\x28\x1d\x08\x66\x58\x04\xa5\xd9\x18\xb6\xef\xab\xfe\x46\xae\xb2\x90\x44\xdf\x91\xf2\xf0\x55\x24\x32\x0f\xf0\x3d\xc5\xb1\x1f\x92\xd1\x4e\xc1\xc6\x77\x3a\xbe\xb6\x99\x2f\x2c\x6c\x0a\x44\x3f\x10\xd1\xb0\xd7\xeb\x09\xdc\xeb\xf5\x8a\xd4\x51\xd8\x7c\x0f\xef\xb4\x65\xab\x94\xe5\x2d\x45\x76\xa7\xe7\x8b\xc0\x75\x2e\xfd\x94\x15\xf8\x09\x8a\xa8\xe2\x2d\x9f\x18\xb2\x11\x36\xeb\x5a\xc1\x37\x73\x1c\xe2\xd4\x4f\x4d\x6c\xb2\x65\x8e\x97\xc5\x5a\x85\xb6\xb9\xee\x60\x37\x02\x4b\x48\xc5\x81\xd2\xa0\x79\x9b\x6c\x6f\xf5\x28\x28\xd3\x31\xb9\xa4\x99\x6c\xb3\x53\x6f\xc7\xc8\x32\x48\x06\x9f\x11\x25\xf2\x6c\xc0\x40\xb0\x40\xc7\xe0\xe6\xd7\xa5\x92\x8d\xf8\xce\xf6\x4c\x55\x62\x69\xc3\x1c\xb8\x74\xa3\xda\xda\x07\x18\xf3\x57\x1d\x13\x10\x70\x58\x84\x5d\x6b\xb5\x57\x9a\xda\xac\x7b\x20\x50\x36\xd7\x6a\x54\xdf\x68\x7e\x77\xa0\x2d\xf3\xeb\xf0\x29\xbb\x20\x07\x4d\x3b\x9c\x83\x3a\x53\x42\xea\x4c\x49\x58\xc5\x4b\x12\x1c\x90\x7a\x09\xf3\xb4\x70\xed\xb1\xbe\x5a\x0d\x47\x39\x5e\xc7\x39\x38\xee\x98\xfc\x3e\xa6\x35\x02\xaf\x83\x49\xeb\x12\xda\x5c\x42\x16\xe6\x84\x26\x3e\xb1\x5a\xb5\x67\xd6\x5a\xc1\x47\x69\xcc\xce\x90\xda\xd3\x39\x6e\x39\x95\x0a\xa4\x5e\x1a\x8a\xaf\x4d\x27\xcc\x47\x19\xf6\x39\xc0\x75\x5f\x10\x10\xdf\xca\x3d\xc4\xec\x8d\xe0\xd2\xd0\x95\x50\x0b\xe6\xaf\xaa\xf7\xd4\xaa\x21\xc3\x99\xb8\xf9\xe5\x35\x65\x80\x35\xe3\x51\xc9\xb6\xd7\xba\x01\x56\x07\x54\x25\x4b\xdf\xb6\x05\x58\x01\xb3\x92\xa1\x0d\x05\x40\x94\x2e\xc5\xc1\xc4\x41\x80\x52\x78\x28\x62\x37\x15\x16\x99\xda\x5d\x86\x5e\xb1\x83\x75\x7b\xcd\x16\x08\x1a\x6b\x6d\x97\xba\xc1\x1e\x0c\xc9\xa8\x70\xfc\x03\x82\x85\xfb\x10\xb4\xd5\xeb\x68\xdd\xa8\xf3\x77\x08\x5c\x33\xb4\xfc\x14\x5e\x8e\xf9\x6c\xc6\x59\xb8\x3c\x15\x31\x4b\xc2\x65\x7c\x91\x85\xe8\xd9\xcf\x47\x48\x09\x38\xd9\x22\x0d\xd1\x73\xf8\x8b\xf0\x3f\x2e\x64\x88\xfe\xfa\xf3\x31\xc2\x1f\x17\xa7\x44\x30\x22\x49\x16\xa2\xbf\x15\xbf\x11\x66\x7c\x16\x27\x21\x7a\xab\xfe\x20\xcc\x69\x32\x0e\xd1\xbb\xc3\x17\xcf\x11\x96\x44\x88\x58\x41\x29\x44\xc7\xf6\x27\xc2\xe7\x6a\x2c\x21\xfa\x09\xee\xc5\x72\xdb\xe1\x32\x1e\x8f\x49\x96\x71\x41\x93\x10\x3d\x33\xbf\x0f\x5f\x20\x3c\x16\x54\xd2\x71\xac\x86\x64\x7e\x21\x85\x23\xf1\x58\x89\x3f\x22\x44\x2f\x8a\xdf\x08\x27\x24\x93\x94\x01\x80\x59\x3c\x23\x21\x7a\x51\x26\x78\xfa\x79\x44\xa2\xbd\x2c\x98\x6c\xfd\x61\xb2\x40\xef\xad\x26\xe2\x41\x98\xde\x0c\xe1\xb3\x58\x92\x8b\xf8\x2a\x44\xff\xa1\x7f\x80\xf9\xdd\x99\x20\x59\xd6\x35\x59\x28\x44\x87\x3a\xc5\x2b\xca\x00\xd2\xa8\x1d\x17\x27\x89\xca\x09\x11\xd0\x63\xef\x7b\xca\x12\xef\x99\x4e\x73\x4a\x29\x1c\xa8\x14\x79\x0f\x51\x4c\x67\x24\x9b\x86\xe8\x0d\x81\xb0\x16\xea\xc3\xe9\x52\xa5\x96\xfd\xe9\xb9\x18\x9f\x5d\x8c\x27\xa4\xab\x52\x90\x9a\x49\x42\xbc\x22\x5d\x76\x75\x70\x7f\x22\x48\x02\x99\xd2\xfb\x50\x26\xe0\x79\x0c\xdc\x44\x88\xde\xeb\x1f\x08\x97\xc5\x43\xe4\x96\xb4\x97\x23\xe5\xe5\xa9\xbd\x2f\xb1\x1d\x9b\x0c\xd3\x77\xc6\x17\x62\x4c\xf4\x28\x8f\xe0\xb7\xcd\x80\xc8\x28\x21\xfa\x81\xc4\xa9\x9c\x7a\x47\xf0\x89\xb0\x8c\xcf\xb2\x10\x1d\xc7\x67\x19\xc2\x48\x12\x31\x83\x15\x64\x67\x0e\x00\x8e\xcb\xd4\x12\x0e\x17\xb1\x60\x30\x83\x9f\xf5\x0f\xa4\xce\xc2\x58\x8c\xa7\xe1\xb2\x44\xa2\x57\x31\x4d\xb5\xef\x10\xca\x14\xe7\x34\x85\x15\xf4\xcc\x04\xbc\x99\x86\xb7\x82\x56\x99\xaf\x40\x45\xeb\x65\x4c\xd3\xe8\x08\xfe\xda\xef\xb9\xd9\xa1\x36\xdd\x7b\x36\x16\x5c\x2d\xb7\x06\x82\x05\x80\x1a\x9a\x5a\xf6\xa5\xa2\xaf\xcb\x38\x53\x5b\x26\x55\xd8\xeb\x49\xee\xbd\x25\x17\x24\x93\x80\xcd\xe3\x10\xe9\x2f\x95\xae\x4b\xa0\x1c\xc7\xe9\x7c\x1a\x9b\x6a\xcf\x54\xce\x7f\xd9\xc2\xff\xa5\xbe\x9e\xa1\x1c\x27\x0b\xcd\x2f\x9a\x52\xaf\x39\x3b\x33\xad\x64\x53\x2e\xa4\xd3\xfe\x91\xf9\x56\x79\xa9\x2e\x86\x72\x6c\xbc\x33\xd8\x4e\xb2\x31\x61\x09\x80\x4d\x57\x7a\x41\x8a\x94\xdc\x2e\xa3\x2e\xfa\x23\x9b\xc2\x6a\x5e\xa9\xf6\xf4\xc2\x5e\xd9\x5a\x3f\x94\x39\x45\x31\x94\xe7\x78\x41\xd5\x0a\x11\x3d\x60\xf4\xdc\xfc\x82\xa0\x2e\x29\xe0\x5c\xf7\x54\x2d\xfa\x2b\xf3\xe5\x9d\x5e\x79\x4b\x2a\xc9\x2c\x47\x78\x16\x5f\x4a\x99\x86\xe8\x4d\x7c\xe9\x1d\x1f\xbf\xae\x6e\x06\x41\x66\xfc\x9c\x28\xe4\x55\x7f\x6d\x9d\x5c\x5b\xcf\x70\xa6\xd8\xd6\x70\x19\xcf\xe7\xe1\x12\x8d\x79\x9a\xc6\xf3\x8c\x9e\xa6\xa4\xcb\xb8\x84\xb8\x52\xe1\xd2\xa4\x12\x45\x0e\xf5\x2f\xef\xfb\x98\x31\x50\xc3\x92\xcb\xb9\x22\x9d\xe8\x25\xfc\x2d\xd2\x75\xe3\xfa\x04\x8f\xc5\x95\xaa\xe9\x7c\xaa\x01\x53\xa6\x86\x4b\x19\xc2\xd9\x47\x3a\x3f\x91\xfc\x64\xcc\x99\x54\x7c\x25\x3a\xfa\x48\xe7\x0a\x3a\xcf\x75\x02\xc2\x92\x9f\x9d\xa5\xe4\x64\x46\xd8\x22\x44\xc7\xf0\xe1\xbd\x21\x6c\x51\xa1\x9b\x69\xb8\x44\x1a\xfb\xba\xa7\xb1\x40\xa1\x76\xf3\xb0\xd4\x90\x38\x06\x6f\x04\xc6\x4b\x43\xb8\x1c\x6b\x0e\x16\x3d\x87\xbf\x6a\x38\x2c\x3e\x83\xd1\xa9\x41\xd9\xdf\x28\xcf\xf3\x1c\xa3\x78\x21\xa7\xdd\x19\x91\x53\x9e\xa0\x70\x89\x14\xb1\x52\xdb\x30\xa5\x99\xb4\xdf\xe0\xdb\x04\x85\x4b\x45\x76\x42\x74\x3c\x25\x9e\x4a\xf5\x54\xdf\xc6\xe0\x92\x66\xde\x22\x23\x89\x17\x83\xfd\xeb\xb3\xe7\xaf\x15\x55\x3a\x4c\x08\x93\x54\x5e\xf5\xd4\x87\x5a\x2c\x6f\x42\x49\x9a\x68\x17\x19\xc4\x93\xfc\x23\x51\xbf\xb4\x17\x0d\xcd\xed\x24\x3d\x84\x05\x4f\xb7\xea\xe5\x03\x4f\xc9\x6b\xca\x3e\xf6\xb6\x6f\xba\x20\x6a\x5b\xcd\xc1\x10\xb8\x62\x1a\xe6\x7b\xeb\xee\x14\x74\x37\x2f\x59\xae\x0f\x08\x2a\xaf\x6c\xb2\xa1\x1c\xe5\x5a\xea\xc8\x9f\x66\xc3\x90\xcc\xd3\xdf\xba\x4b\x7b\xc0\x94\xb9\xf0\x69\x33\xf5\xfa\xea\x2d\xd8\x85\xd3\x0e\xd5\x91\x08\x52\xd7\x60\x11\x04\xb6\x0a\x11\xfc\x41\x38\xe1\xe3\x8f\xea\x24\xd6\x7f\x11\x3e\x13\xf3\x71\x88\xd4\xff\x08\x43\xcc\x15\xa4\xfe\x47\x58\xeb\x69\x43\xa4\xff\x02\xc8\x27\xa1\x3a\x3a\x26\x08\xcb\xf1\x3c\x44\x72\x3c\x47\x18\xb6\xb3\x94\xa9\x82\x91\x0b\x95\xbf\x51\x96\x38\x43\xd0\x08\x07\x27\xdc\x73\x18\x7f\xe3\x58\x32\xe9\xb9\x25\xb5\xba\x31\x20\x52\xb6\x84\x22\xb6\x3c\x21\x05\xa9\x55\xad\x49\xee\x15\xe7\x9a\xee\x19\xda\xf1\xcc\xaa\x40\xd2\xd2\xcd\x00\x5a\x03\x00\xa5\xb0\x6b\x81\xea\x6a\x1a\x12\x2e\xe7\xea\xa0\x02\x77\x77\x59\xb8\x3c\xe5\xc9\x55\x88\xde\x97\x49\x5e\x2c\x88\xf7\xfa\xab\xd2\x28\x39\xeb\x79\x87\x13\x2f\x66\x57\x9e\x92\x7c\xa7\xc4\x9b\xf0\x34\xe5\x17\xea\x98\x73\x5a\xf2\x20\x12\x00\xe4\x0b\xf2\xeb\x82\x64\x12\xc3\xc7\xa1\xed\xdf\xbb\xa0\x69\xea\xc1\x8d\x43\xcf\xfb\xa0\x8b\x64\x1a\x0b\x27\x31\x55\x58\x60\x9a\x70\x7a\x9a\x0b\x7e\x4e\x13\x92\x78\x82\xab\x81\xe8\x26\x74\xf7\x90\x6f\x98\x48\x85\xfd\x1e\x44\xd5\xba\xea\x21\x3c\xe1\x1c\x98\xb0\xd7\x24\x16\xcc\x9b\x71\x41\xbc\xf8\x94\x2f\xa4\x3b\xda\x26\xb2\x6b\x56\xcf\x42\xb1\x84\x47\x05\xc3\x52\x7e\x11\xa2\x67\xea\x0f\xc2\x28\x9e\xcf\xbb\xf1\x45\x2c\x14\x73\xf1\x6c\x3e\xf7\xf4\x6f\x9c\x10\x76\xa5\x0e\x23\x76\x55\x2e\xb3\x6d\x5c\x1f\x5c\x7a\xf8\xdc\x83\x32\xc5\xe1\xc5\xe0\x0c\x32\x8d\x37\x46\x91\x63\xe4\x30\x92\x86\xa7\xd1\xed\x39\xfc\x64\xe8\x55\x8f\xde\x4a\x96\x39\x87\x71\x83\x0b\x45\x39\x9e\x0b\x32\x26\x09\x61\x63\xb2\xc5\xe9\x6a\x47\x57\xd4\x51\xa3\xd3\xbc\x44\x65\x60\x9a\x38\xd4\xc7\x64\x53\xab\xc3\xb1\x2c\x88\x42\xd9\x8f\xe7\x37\x38\x3c\x26\x3c\x4d\xd4\x6a\xbf\x82\xbf\x08\x7f\x24\x57\x21\xfa\x1b\xb9\x6a\xdd\x63\xba\x50\xa6\x7a\xfe\x1b\xb9\xca\xec\x90\xd4\x6f\x95\x66\xb2\xf5\x28\x34\x3e\xdd\x60\x24\x48\xd3\xba\x6e\x79\x7c\xa1\x10\xfd\x87\xa6\x7f\xce\x31\xa6\x58\x13\x96\xc4\x22\x09\xd1\x91\xf9\xa5\x3b\xb4\xb4\xa2\xd6\xe3\x26\x9e\x10\x46\x53\x50\x8e\x63\xe3\x67\xec\x5a\x3e\x51\x23\xbf\xe6\x8e\xed\x6d\x7b\x83\xd6\x6a\xe0\xb9\xa4\xa5\xc2\x41\xeb\x21\xeb\xb5\x5c\x4e\x49\x0c\x8b\x00\xe1\xb1\xac\x8f\x29\xaf\xe4\xd5\x3d\x2d\xb9\xd9\x51\xf4\xbc\x43\xf9\x7f\xfe\xd7\xff\xce\x54\x19\xbe\x00\x86\xb9\xb8\xc3\x02\x52\x01\x54\xc1\xec\x79\x29\xe2\xc9\x84\x8e\xf5\x53\xaf\xb8\x68\x23\x53\xb3\xd2\xcd\xf6\xbc\x57\x5c\xe8\x8d\xee\x44\xe8\xc3\xaa\x78\xe2\xf1\x85\xf0\xac\x12\x03\xd2\x7b\x08\xa7\x94\x7d\xcc\xc2\x65\x25\x39\x44\x2f\xdc\x4f\x85\xd2\x8a\xc3\xe9\x4a\x2a\x53\xd8\xe1\x40\x42\x3e\x98\xe1\x6a\x35\x85\xe2\xac\xe0\xf0\xba\x01\x96\xd8\x03\xd2\x20\xc6\xd1\x98\xc3\xa2\x6d\x89\x3b\xe6\xfc\xd4\x82\x99\xae\xab\x51\x67\x2c\x88\x3c\x7c\xa1\xd6\x48\xfd\xf2\x0e\x5f\xa8\x09\x48\x3e\xe7\x29\x3f\xbb\x52\xfc\x92\xa0\xe3\x0c\x95\x67\x80\x35\x02\xed\x02\x51\x43\xf6\x1c\xf8\x4f\x05\xae\x92\x64\x67\x44\xaa\xe9\xea\x33\x41\xfb\x0d\x94\xe9\x95\x4a\x56\xcb\x61\xa9\x2f\x34\xd1\xf3\x60\xf1\x67\x24\x66\x86\xaa\x83\x5f\xb1\x73\x4a\x2e\x34\xd9\xce\xa6\xfc\x42\x2d\x33\x33\x81\x09\x55\x0b\xe4\x9c\x88\xab\x02\x37\x29\xf3\xae\x54\xff\xe3\x74\xa1\xd0\xa6\xe7\xfd\xac\xce\x92\x31\x9f\xcd\x08\x4b\xbc\xf1\x34\x66\x67\x0a\xf6\x57\x6b\xc6\xe8\x8c\x48\xd1\x60\x4f\x71\xc0\x9a\x83\x67\x67\x1e\x44\x67\x54\x68\x54\x54\xcc\xe0\x95\xdf\x62\x9e\x49\x41\xe2\x19\x94\x4e\xf8\x05\x33\x9f\x05\x96\xa9\x42\xe5\x4c\x24\xf7\x4e\x89\xe2\xbb\x26\x8b\xb4\x3c\x6a\x96\x3f\x7e\x78\x1d\xa2\x64\xdc\xb3\xb5\x7a\x6a\xb2\xbd\xe2\xe8\xcd\x2c\x95\x7b\x99\x50\xb5\x1b\x8b\xe4\x1c\xdb\x9d\xe3\x0c\x4b\xc1\xba\x0d\xc2\x6a\x45\x53\x3a\xa3\x92\x24\x5d\x7d\xa0\x14\xcb\x06\xa0\x2f\xb6\x78\x7c\xe5\x4d\xe3\x73\x75\x3a\xce\x09\x53\x04\x9a\x92\x4c\x41\xcd\xbb\xe0\xec\xff\xfc\xaf\xff\x2d\xbd\x8c\x10\xef\x94\x8c\xe3\x45\x46\x20\x3d\x31\xe9\x50\x4b\x37\xad\x7a\x97\x53\x32\xeb\xa1\x62\x88\xaf\x75\xdf\x9e\x56\x84\xa8\xd1\x28\x4a\x63\x9e\x64\x76\x8b\x59\x39\x83\x22\xea\xe8\x9d\xcf\x49\xac\x49\xee\x29\x51\x9c\x6a\xb9\x72\xb1\x65\x23\xcc\x16\xc7\xde\xe9\x42\xc2\xb9\x5e\x40\x5f\xc1\x62\x51\x3c\xf5\x54\xa8\xb0\x60\x74\x1c\x4b\x95\x2a\x15\xd3\xa0\x10\xad\x44\x2a\x0f\x3c\xd9\xa9\xe2\x20\x90\xc1\xd8\x54\x07\x31\x2b\xc2\xdc\x97\x2b\xce\x85\xe2\x2f\x2e\x29\xa9\x80\xfc\x73\x50\x88\xcd\x21\xca\xed\xe7\xde\x8c\x27\xc4\x61\x29\x3e\x28\x8a\x02\x8c\x47\x85\x56\x14\x20\x7a\xee\xa0\xb7\x6a\x53\xd1\xc1\x32\xbe\xbe\x7d\xbe\xaa\x40\x77\x41\xd3\x64\x1c\x8b\x36\xb8\xbd\x63\xc4\xb3\xf4\x8c\x4f\x6a\xe8\x5e\x19\x6b\xac\x39\x89\x92\x40\xc6\x2c\xd9\xe3\x42\xc7\xeb\x8f\xd3\xd4\xe3\x72\x4a\x44\x85\x62\xc6\x20\x42\x64\xf3\x58\x51\x61\x40\x9b\x63\x43\x24\xea\x5b\x15\xea\x2b\x36\x8c\x67\xa4\xb2\x6f\xe9\xc4\xd0\x67\xa2\xe4\xc6\xcc\x5b\xb0\xb1\xbe\xb7\xae\x6d\x58\xb3\x31\xf5\x44\x6e\xbd\xff\x80\x2d\xfc\x48\xec\x1e\xfc\x6d\x11\xa7\xf4\x37\x7d\x4a\x40\xc3\x9f\x60\x2f\x5a\xb6\xeb\xdc\xe1\x5e\x11\x70\x04\x73\x7e\xae\xba\x00\x16\x6f\xa9\xfd\xb5\x86\x4b\x9a\xbd\xbc\x8c\xc7\xb2\x60\x0c\x19\x97\x26\x41\x8b\x39\x28\xc7\xb0\xb0\x65\x41\x7d\xcf\x0f\x88\x14\x1b\x83\xc2\x89\x9e\x60\x31\x9e\x62\x79\x7b\x6e\x83\xcf\x92\x44\xe1\xb2\x53\x4a\x2d\x04\x94\x53\x44\x97\x64\xc4\x93\x17\xbc\x02\x3c\xb3\x72\x3d\x67\x7e\x25\x96\x2a\x16\x94\x02\x42\xa6\x5f\x15\x13\x42\x3f\x51\x72\x81\xf4\x98\xd1\x73\x22\x64\x4c\x99\xf7\xc3\xf1\xf1\x7b\xcb\xd8\xc3\x29\xeb\xcd\x16\x99\x7e\x22\x0a\xf2\xe6\x84\x82\xc4\x5a\xd0\x8a\xf8\x8a\x08\xef\xab\x2a\xcb\x5d\x21\x18\xa8\xec\xaf\x7a\xf0\xea\x8e\x3f\x57\x53\x45\x4b\x8b\x1e\x39\x32\x72\x6e\xcb\x36\x9e\x78\x68\x59\x62\x4e\x8e\xd4\xe6\x81\x0d\x32\x25\xf5\x1c\xb5\xdf\x81\xcd\x46\xce\x2e\x47\xb0\xcb\xe1\x38\x32\x94\x46\x6f\xa8\xde\xe7\xc5\x74\xde\x72\x9b\xa8\x79\x27\xcd\xeb\x1a\x35\x03\x82\x56\x8d\x22\x53\x33\x30\x28\x5c\x4a\x72\x29\x15\xd7\x0c\x93\x55\x3b\x4f\xf7\x5d\x29\x85\x25\xe7\xa9\xa4\x73\x43\xc0\x1d\x3a\x76\x11\x67\x96\x5a\xe8\x5d\xdb\xac\xad\x56\x14\x19\xf6\xa9\x6b\x9c\x91\xdb\x6e\x3f\xb4\x71\x55\xf5\xee\x1e\x9e\x4f\x03\x9e\xdc\x28\xe6\xf4\xad\x3f\x2a\xdf\xf1\xa7\x3c\x4e\x3c\xcb\xa8\xb4\xe9\xb4\x15\x5a\x02\x3d\xd1\x65\x80\x7c\xd4\xf4\xdc\xc5\xa4\x1c\x5e\x45\xc7\x66\x25\x85\xf6\xe3\xc7\x43\xc5\x01\xf2\x38\x01\xb5\xec\x6b\xfd\xc3\xe9\x58\x90\x19\x97\xa4\x9b\x8c\x91\x3b\xba\x09\x51\xa2\xa9\xdb\xb5\x82\x9b\x2a\xe9\x95\x8a\x7f\x40\x0e\x07\xb3\xba\xb0\x6a\x28\x44\xc7\x65\x9a\xf7\x1e\xd2\xb0\xc5\xdf\x3a\xeb\x68\xf9\xf1\xaa\xe2\x05\x54\x23\x63\x3e\xbf\xea\x9e\x2e\xa4\x04\x04\x33\x00\xd4\xa7\xac\xc2\x17\x40\x92\xd3\x14\xce\xec\x6c\xa1\x25\x4e\xf4\x9c\xcf\x29\x49\x3c\x68\x2c\x47\x18\xb8\x59\x48\xbd\x32\x69\xe6\xa0\xf7\xc6\x29\x9d\x9f\x72\x2d\x8c\xe0\x19\x78\x4c\x0b\x97\x35\x6d\xdb\xf7\x94\x25\x6f\xed\xf1\x11\x22\xb8\x18\x28\xbe\x11\x36\x77\x77\x4b\xa0\x83\x24\xf9\x40\xf4\x83\xf1\x1f\x3f\x1c\x66\x86\x38\x2a\x49\xde\xa4\x7a\x2a\x19\x61\x08\x54\xf6\x6c\x91\x50\x25\x47\x66\x21\x82\x6f\x2f\xb6\x09\xa6\xc0\x61\x96\x2d\xd4\x3e\xd4\xb9\x14\xbe\x10\x7e\xfe\x4c\x51\xa7\x10\x3d\x7f\xe6\xa9\x1f\x08\x3f\x4f\x63\x3a\x7b\x13\xcf\xe7\x8a\x1f\x0c\x11\x7c\x7a\xf6\x5b\x65\xf3\xf1\xc7\xa3\x8f\xe4\xe2\x35\xd1\x37\x28\x90\xe0\x65\x1f\xc9\x85\x97\x12\xad\xaf\x7f\x79\x39\xa7\x1a\xb9\x6d\xa1\x32\xa5\x28\xf4\x03\xcf\x64\x88\xd4\xff\x08\xff\xf5\xe7\xbf\x1d\xd9\x81\xa8\xdf\x5e\x31\x1a\xf5\x05\x87\x11\x24\xff\xf8\xe1\xb5\x4a\x3a\x3e\xb2\xf8\xf8\x2c\x55\x63\xfc\xeb\xcf\xc7\x0e\x8a\xc6\xe9\x19\x17\x54\x4e\x67\x19\x94\xfd\x49\x1b\x10\x50\xce\xde\x2f\x4e\xc1\x48\x02\xca\x9f\x17\xc9\xde\x7c\x71\xea\x7d\x04\x49\xf6\x35\xcd\x64\x6d\xfe\x2a\xc9\xab\x03\xe1\x2d\x97\xdf\x93\x09\x17\xc4\xce\xef\x2d\xbc\xf4\x57\x29\xc5\xfc\xde\x1d\xbe\x78\xae\x95\xb1\x4a\xa4\xd0\xbf\x94\x48\xe1\x64\x68\x39\xa3\xc8\xd4\x02\x88\x2e\xf0\x82\x66\x63\x75\x4e\x5e\x59\xb0\xa8\x44\x2f\xb1\xa9\x0a\x40\x63\x00\x50\xa5\x30\x40\xaa\xf8\xd2\xe0\x52\x05\x40\xc8\xc9\x4c\x23\x19\x7c\x20\x6c\x24\xd1\x67\x63\x08\x53\xf9\xd7\x9f\x8f\x4b\xe1\x34\xd6\x69\xde\x5f\x8f\xde\xbd\xf5\x7e\x26\xa7\xde\xb1\x12\xd0\x10\xfe\x89\x88\x53\x9e\x11\xd5\xcc\x6b\x7e\x76\x06\x9b\xdf\xa4\x79\xd0\x76\xaa\x53\x51\x8e\xad\xf5\xa6\x3e\x9c\xca\x0f\x84\xcd\xdd\xdc\xdb\xca\x45\x1d\xa8\x3c\xf0\x9b\xf8\x12\x7a\x3a\x3e\x7e\x0d\x9a\x7f\x3a\x5b\xcc\x8c\xa6\x15\xee\x00\x8e\x88\x8e\x51\xa8\x46\x6a\xa3\xb9\x43\x85\xd7\x56\xa5\x8a\xe0\xd3\xb3\x2a\x56\x84\xd5\xd6\x2f\x34\xaf\x85\xa6\x5b\x2c\x94\x3c\x0a\x7b\xd1\x29\xb0\x61\xd0\x2d\x3d\xe7\x39\xd6\x54\x3b\x5c\x26\x63\xad\xb7\xcc\xc2\xa5\x62\x94\x40\x96\x4f\xe5\x54\xdf\x36\x86\x4b\x64\x6f\xa9\xba\x19\x11\x13\x73\x0d\x51\xb0\xaa\xdf\xce\xbf\xfb\x3b\xf3\x34\x1f\xa9\x1a\xf1\xa6\x40\x87\x26\xfa\x3e\x4b\x1d\x01\x13\x9d\x0e\xcd\x29\x86\x93\x78\xba\x7d\x4f\x9f\x03\x24\x03\x66\x93\x79\xdc\xf8\xa1\x9e\xc7\x67\x04\x58\x5c\x10\x03\x6c\x99\x18\xb8\x9b\x2b\xef\x42\xd1\xba\x8f\x4c\x55\x30\x28\xab\x8a\x41\x0f\x4a\x9e\x99\x29\xb1\x40\x90\x78\x3c\x55\x64\xbb\xf7\x77\xf6\xed\x9e\x1a\x60\xc9\x96\xbc\x72\x07\xa6\x55\xcc\xb9\xbd\x62\x6d\x9d\x0b\xe3\x76\xbc\x1a\x20\x70\x5d\x93\x61\x2f\x03\x48\x62\x55\xc1\xf3\xfa\xde\x32\xd7\xbf\x34\xbf\xbd\xd4\x8a\x4c\x90\x6c\xd4\x01\xa9\xe9\x3b\x14\xc9\xcb\x41\x01\x49\x6f\x9c\xdf\xf6\x4a\xae\xaa\x68\xb0\x27\x78\xa1\x24\xca\xdc\x83\xe2\xb6\x2b\x66\x5b\xf8\x57\x59\xb5\xca\x7c\x3e\xe5\xca\x15\x87\xb7\x02\xb7\xd4\xec\x9f\x3a\x32\x2d\x94\x3f\x57\x10\x2b\xca\x78\xa9\xe2\xae\x92\x2a\xb0\x40\xd4\x3e\x25\x84\x5d\xcb\xe6\x79\xfa\x84\x57\x52\xfd\x29\x31\x32\x8f\x6d\x1a\x2b\xf1\x6c\x71\x36\xc5\x0a\xd6\x2d\x3c\xad\x23\x0e\x17\xbd\xab\x1e\x7a\x9f\x6f\x2d\xd2\xba\xac\x8b\x1e\x1d\xcc\x14\xb4\x4e\x40\x2f\x1c\x58\x50\x26\x05\x0f\x3f\x37\x6b\xf2\x63\x01\x00\x2d\xb2\x5a\x99\x44\x01\x56\xcd\x46\x90\x31\xa1\xe7\x05\xbb\xad\xa5\x56\x18\xa3\xe1\xf9\xe0\xde\xe1\x8a\x2f\x0a\x51\x5a\x3b\xa1\x37\x3c\xea\x8b\xb7\x47\x45\x70\x7d\x90\x10\xb3\x85\x20\x5a\x5a\xfe\x76\xcc\x13\xf2\x1d\x9c\xd2\xdf\xee\xc1\x6f\x4f\x4f\xc7\x03\xbc\x04\x76\x87\x0b\xe0\x42\x12\xae\x84\x58\x7d\xaf\xa6\x55\x3d\xc4\x76\xaf\xa5\x27\xa1\x7d\xde\x94\xa2\x03\x95\x59\xb9\x00\x3d\xaf\x71\xcb\x60\x39\x64\x35\xd4\xb3\x82\x2d\x65\xa0\x88\xfc\x36\xf6\xa6\x82\x4c\x22\xb4\x7c\xfe\xee\xed\xd1\x8f\xaf\x4f\x5e\xbc\x7b\x7e\x74\xf2\xe3\x87\xd7\xf9\x9e\x61\xfe\xf7\x6a\x7c\x6f\x86\x3c\x19\x8b\x33\x22\x23\x74\x72\x9a\xc6\xec\x23\xf2\x04\x49\x23\xc4\x38\x9f\x13\x46\x84\xc7\xb8\x20\x13\x22\x04\x11\xe8\xbb\xca\x12\x7e\xbb\x17\x7f\x57\xe0\xec\xe7\x39\xfc\x1b\x8d\x9a\x56\x40\x8a\x15\xee\x52\x46\x25\x85\xa7\x37\xed\xbe\xc7\x8d\xc3\x9a\x6b\x1c\x03\x54\x03\x80\xea\x67\x21\x35\x27\x9e\x18\xcc\xb0\xe1\xbf\xdd\x3e\x58\x9c\xed\x36\x9d\xe5\x90\x47\x48\x8b\x97\x7a\x00\x5a\xe4\x2d\x06\xd8\x43\xf6\x39\x7d\x61\xba\x0f\xed\xb0\xf5\xed\x68\xc5\x56\xa1\x4e\xd3\xcd\x16\x9e\xc0\x3c\xd6\x53\xeb\xbf\x5a\xf9\xfa\x47\x44\x7a\x59\x4a\xc7\xc4\x27\xbd\x34\xce\xe4\xa1\x02\xc7\xbb\x89\x8f\xf6\x50\xf0\x68\x10\x04\x98\xe5\xf5\x77\xa4\xba\x1d\x30\xbd\x24\x3d\x6a\xca\x4b\x4c\xac\x4d\xa6\x0d\x4e\x1d\xdc\xe5\x11\x46\x15\xf0\xf6\x61\x0e\x8d\xe4\x23\xb4\x57\x59\x3f\x84\xb9\x49\xd4\xf4\xb0\x5b\xcb\x8d\xa3\xe1\x08\x67\xea\xbf\xb4\xf2\x6a\xc9\x2c\xf2\x3f\xb2\xde\x09\x89\x3f\x9e\x64\x84\xb0\x00\x2f\xa2\xfe\xd3\xc5\xb7\xa9\x35\x56\x5d\xd8\x07\x3f\xe3\x28\x1d\x2e\x46\x3b\xfd\x28\x8a\xc6\x15\x30\x51\xdc\x0f\x0e\x98\x3f\xc6\xa8\x0b\x26\x1d\xc1\x6a\x15\x6b\x33\xcd\x71\x10\x36\x8b\x73\xdc\x0f\x3a\x1d\xbf\x5a\x21\xb3\x15\x82\xdc\x6f\x9f\xb6\xb6\xa1\x95\xae\x0d\xad\x82\x7c\x31\x4f\x5f\xf8\x72\xc8\x46\x41\x90\x2b\xa4\x8b\x2b\xef\xfb\xae\x6f\x46\xc3\xed\xb0\xad\x39\x9f\xe0\xac\xcd\x63\xd8\x2c\x96\xd3\xae\x75\xa6\x61\xff\xc6\xa7\x5b\xdb\xd4\xb9\xa1\x81\xb5\xc3\x2a\x39\x8a\x88\xc5\xd0\x37\xb1\x9c\xf6\xe2\x53\xf0\x09\x7d\x0b\x14\x8a\x4f\xb3\x48\x6e\x76\x4a\x5e\x8d\x4c\x2d\xaf\x71\xb2\xd1\x3e\xdb\x31\xbf\xd7\xe9\x8e\xf9\xad\xe7\x3b\xe6\x0f\x35\xe1\xe9\x3d\xcf\x78\x7a\x87\x29\x4f\x1f\x62\xce\x49\x72\xbb\x19\x3b\x5e\x08\x93\xc5\x98\xd8\x48\x37\x85\xf5\xed\x23\xf3\x4b\x06\xb7\x9b\x7f\x92\x3c\xc4\xec\x33\xca\xee\x73\xc1\x33\xca\x6e\xbb\xde\x19\x65\x0f\x34\xe1\x7b\x45\x71\xd5\xde\x1d\xa6\xfc\x20\x28\x2e\xe3\x7b\x5d\x64\x19\xdf\x7a\x91\x65\xfc\x20\x8b\x2c\x63\xb6\x7f\x87\x19\x63\xd1\x36\xe7\x7d\xb0\x7d\xbf\xed\xb4\xf7\x1f\x68\xde\xf7\x8a\xdc\xaa\xbd\x3b\x2c\xf5\x43\x20\xf7\xf8\x54\x6c\xed\x13\x7e\x8b\x29\xab\xe6\x6e\x39\x63\x55\xf5\x21\x26\x4c\xe8\xd6\xbe\x88\xb6\x99\x30\xa1\xe9\x6d\x27\x4c\x68\xfa\x10\x13\x4e\x7f\x7b\x7c\x97\xdd\xdc\x98\xb1\x6a\xef\xb6\x53\x56\x75\x1f\x62\xce\xf7\xca\x79\xde\x9e\xf1\x7c\x18\xbe\xf3\x9e\xd9\xce\x3b\x70\x9d\x0f\xc4\x74\x26\xf4\xfc\xd3\x30\x9d\x7b\x77\x63\x3a\x13\x7a\xfe\x00\xb3\x27\x97\xf3\x7b\x5c\x6d\x72\x39\xbf\xe5\x62\x93\xcb\xf9\xc3\xcc\x76\x36\xb8\xdf\xf9\xce\x06\xb7\x9f\xf1\x6c\xf0\x00\x73\x9e\xa4\x9c\x8b\x7b\x9c\x33\xb4\x77\xcb\x39\x43\xdd\x87\x98\xb3\xe0\x0b\x76\x4b\x59\xb2\x7d\xd2\xd0\xe0\x6d\x67\x0d\x95\x1f\x60\xda\x67\xe3\x3b\xcc\x59\x44\x7d\xcc\xa2\xbe\x9a\xb9\xf5\x74\x52\x68\x86\x44\x80\x79\xf9\x55\x46\x2e\x86\xc7\xfd\x07\x1c\x54\x6f\xfc\x80\x86\xd2\x1f\x72\x4c\xff\xc4\x47\xb7\x82\xd3\xd9\xf8\x21\x80\x34\xbd\x9a\xf3\x5b\x72\xa9\x2e\x46\x40\x33\x7e\xaf\xd7\x23\xb7\x9a\x2b\x54\x7f\x80\xd9\xd2\xd9\xe2\x2e\x1c\x6a\x53\xfa\x52\x0d\xde\x5a\xf8\x52\x95\x1f\x60\xd2\xe9\x78\xd6\xe6\x62\x6c\xed\x9e\xb9\xc9\xcd\x43\x6d\xab\x38\x1b\x41\xac\x56\xe0\xdb\xe3\xa0\x1f\x96\x1b\xe7\xcf\x2c\xd8\x83\x6b\x8a\xb3\x71\x12\xf8\xe0\x57\xee\x56\x90\x4b\xc7\xb3\x48\xb4\x03\x8e\xb5\x02\x4e\x04\x9b\xa3\x57\xb5\x03\x8e\x9f\x75\xb7\x0e\x43\xb1\x05\xd9\x4c\xf9\xd9\x2d\x69\x66\xca\xcf\x5e\x3e\x04\xa6\xf0\xb3\x41\xff\x7e\x27\x3c\xe8\xdf\x7e\xca\x83\xfe\x03\xcd\xf9\x3e\x99\x3e\x68\xef\x0e\x73\x7e\x08\xc6\x2f\xe5\x67\xf7\x29\xb6\xaa\xe6\x6e\x3f\xe3\xbb\x0a\xad\x3b\x5b\x4c\x78\x16\x5f\xde\xfd\x8c\x9b\xc5\x97\xb7\x3f\xe1\x66\xf1\xe5\x03\x2c\xec\xec\xb6\x3a\xf3\xca\x3c\x29\xbb\xc3\x3c\x1f\x44\x57\x3e\xe3\x9f\xe8\x6a\xe4\x4f\x77\x93\x52\x67\xfc\x21\x78\xb6\xd9\x22\xbd\x1b\xcb\xb6\x76\xfa\x7f\xbe\xe3\xf4\xd5\x2c\x3e\xfd\xfc\xe7\xfc\xe2\x5e\xa7\x0f\x58\x3f\xe7\x17\xf0\x79\xab\x89\xcf\xf9\xc5\x03\xcc\x5b\xc4\xec\xd3\x46\x6b\xd4\x1d\x44\x74\x4d\x88\xac\xe5\x8c\xb2\x50\xe2\x59\x7c\x19\x8a\x1c\x04\x20\xcc\xa2\x65\x42\xc6\x74\x16\xa7\x59\xd8\xcf\x77\xaa\x7e\xb1\x53\x22\xcb\x5c\x9a\xdf\xd6\xaf\x18\x6b\x0d\xab\x49\x3a\x9d\x46\x44\x3f\xeb\x83\x8b\x46\x45\xb3\x6a\x26\x7a\x04\x07\xe5\xcf\x90\x15\x3f\xf1\x23\x58\x7d\x3d\x73\x70\xb4\xfe\x8a\x5e\x92\xc4\x17\x8a\x4d\xf5\xf7\xfb\x98\x06\xda\xc1\x17\xe9\x74\x06\x91\x6a\xcf\xd8\x97\x18\xe7\x4d\xac\x3c\x0c\x1f\xf9\x95\xa6\xfe\xcc\xd6\xb4\x96\xeb\xd6\xf6\x2b\xad\xa9\x83\x95\x61\xee\x1c\xad\xfc\x5b\xd6\xe9\xf8\x3a\x71\xc8\x15\xa7\x8c\x1f\xf9\xac\x3a\xdc\x3f\xfb\xbc\xcb\x82\x75\xfd\x98\x61\x6d\x31\xc1\x5c\x61\x2a\x6f\xc5\x54\xea\x62\x2a\xdf\x16\x53\x6f\xab\x70\x70\x7c\xb4\x96\x21\xbe\x40\x92\x78\x24\x0e\xf4\x44\x40\xf5\x40\x82\xd0\x17\xd1\x23\x01\xf6\x4d\x51\x14\xf9\x24\x7a\x44\x82\xd5\x8a\x66\x6f\xe3\xb7\x10\xdb\xd1\x3a\xbe\x2c\x82\x14\x8b\xd5\x4a\xfc\x69\xb0\x1b\xf5\x0f\xde\xc6\x6f\x43\xf2\x6d\xff\xa0\x2b\xfd\xae\xea\x31\xf4\x49\xe4\x86\x75\xec\x65\xf3\x94\x4a\x1f\x11\x14\xe0\x47\xbf\x7c\xb6\xf4\x89\x6a\xdf\xe9\x5d\x25\x92\x61\x7f\x94\x13\xf5\x77\x30\x3a\x78\xa4\xfe\xef\x8a\xb0\x2b\xf2\x5f\x82\xa0\xbd\xa9\xa0\x51\xe1\x91\x08\xa1\x7c\xee\xca\x54\x0a\x02\x10\xd5\x1b\xfe\x2f\xf0\xb4\x70\x2f\xe7\xab\x8e\x71\xd7\xc9\x81\x20\xe0\x3d\x72\x39\xaf\x95\xd1\x69\xb9\x7b\xb4\x1b\xe0\x0d\xfb\xb7\x13\xbb\xb4\xe6\xe6\xd3\x0b\x5e\x19\x3d\xbb\xcf\x6b\x61\xd5\xdc\x2d\xf9\x53\x55\xf5\x01\x28\xfb\xfd\xda\x3a\xdc\xde\xd4\xe1\x61\x2c\x1d\xb2\x5f\xef\xf5\x62\x54\x35\x77\xdb\xf9\xfe\xfa\x20\x17\xa3\xd9\xe2\xf4\xd3\xf0\x6b\xdd\xbb\xf1\x6b\xd9\xe2\xf4\x01\x66\x7f\xbf\x36\x1e\xb7\x37\xf1\x78\x18\x0b\x8f\x7b\x36\x74\xb8\x83\x9d\xc3\x03\x99\x39\x48\xb1\x60\xe3\xfb\x9c\xb1\x6a\xef\xb6\x53\x56\x75\xef\x7b\xce\x57\xa7\xa4\x4b\x59\x97\x68\x37\x5e\x7b\xa5\xf7\xb0\xbd\x7a\xde\xef\x16\xb2\xf6\xf8\xcd\xeb\xef\x63\x91\xf5\x24\x99\xcd\xd3\x58\x12\x7f\x49\x93\x10\x7d\xf3\xe8\x6f\xfb\xfc\x1f\x34\x45\xf8\x34\xe5\xe3\x8f\xe1\xe7\x4b\x94\xe9\x78\x07\x28\x1c\xa2\x8e\x0d\x4e\x86\xd1\x5f\x1c\x87\x37\x2f\xed\x54\xd0\x5f\x74\x64\xf4\x43\xf6\x3e\x8d\xc7\x04\x8d\x30\xca\x64\x2c\x21\x57\x35\x30\xfc\x12\x0f\x1f\x7f\x85\x07\x23\x3c\x1c\x3e\xde\xc7\x8f\x47\x23\x6d\x6c\x3e\x1c\xa2\xb2\x65\x92\x42\x8c\xbb\xe1\xb2\x56\x77\xf0\x35\x1e\x40\xf1\xd1\x08\xa3\x79\x2c\xe2\x19\x81\xf0\x16\xe1\x70\x94\xe3\x7a\x61\xdd\x51\xdf\x74\xb4\x3f\x52\x3f\xd0\xd9\x82\x26\xf0\x78\x35\x23\xc2\xbc\xb3\x53\x1d\xa1\x3f\x8d\x17\x22\xe3\x22\xec\xff\x09\xd9\x0e\x9c\x11\xdd\x70\x28\xa3\xd1\xda\xc4\x69\x9c\xbd\x3c\x8f\x53\x14\x4e\xe2\x34\x23\x18\x2d\xe6\xe7\x31\x14\x40\x2e\x3e\x20\x3a\x41\xa3\xfc\x73\x3c\x23\x32\x0e\x97\x33\x58\x5a\xfd\xa6\xed\xe6\xd8\xd5\x9b\x9e\x66\xa8\x8c\x27\xab\x97\xfe\x24\x23\xf2\xb9\xad\x73\x6c\x97\x5f\x1a\xc7\xe0\x27\x16\x21\xde\xb1\xf4\xaa\x28\xe6\x07\xd7\xe1\x3c\x4f\xe8\x84\x12\x51\x06\xf0\x80\x40\x2a\x7b\x36\xdd\x38\x4f\xb9\xe5\x3d\x2a\xe9\x5d\xd0\x34\xd5\x5e\xf9\x7c\x85\xdb\x15\x67\xe7\xf7\x10\x3c\xc1\x71\xc5\xaa\x86\x5d\x8f\xfe\x02\x41\x36\xb0\xc0\x4c\xbb\x95\xd7\x3e\xe4\x09\x96\x91\x8e\xd7\x15\xa1\x71\x3c\x8f\x4f\x69\x4a\x25\x05\x07\xa7\x16\xd2\x76\xf6\xda\x4b\x8c\x78\xee\x94\xf2\xd1\xe3\xde\xe0\x31\x0a\xb0\x80\xb7\xcf\x6b\x02\x4b\xa8\x4e\xcd\xc0\xd9\x8d\x02\x4b\x80\x8f\x60\x96\x6b\xff\x71\x6f\xcc\x30\x1a\xe1\x73\xfc\x3e\x98\x01\xc5\x59\xa6\xbd\x0c\xeb\x99\x61\x11\x54\xc3\xaa\x9d\xd8\x47\xe8\x00\x72\x0d\x15\x86\x65\x80\x59\x0e\xe6\xf8\x69\xea\xf4\x20\xd5\x72\x19\xfc\xd3\x74\x95\x26\x1f\xf4\x6b\xa2\x67\x56\x46\xf7\xb5\x7d\x46\x72\xa8\x6b\xfb\x41\xae\x7d\x22\x57\x9b\x29\x5d\x51\x13\x8c\x62\x71\x96\x21\xd5\x27\x54\xfc\x11\x8a\x37\xda\x6b\xf6\x93\x27\x1a\x4b\xca\x96\x6d\xbb\x26\xc3\x38\x0a\xbe\x29\x3e\xb7\x5e\x8f\x6d\xbb\x07\xb6\xbf\x2e\xfb\x63\x85\x20\xd1\xb1\x93\x58\x75\xf7\xc0\x13\x1c\xe3\x1d\x59\x2f\xa2\x8d\x9d\x64\x53\x0b\xd2\xa7\x48\xaa\x0d\x50\x90\xb9\xb1\x19\xb0\x0d\xdf\xa0\x1a\x88\x64\xde\xba\xd4\xcb\xbc\x0d\x31\x20\xb5\xc0\xb3\x65\xee\x12\x12\xfd\x55\x06\x4d\xc8\xcf\x88\xf4\x68\x66\x12\x2a\xa1\x9a\xcc\x46\xa8\x64\xea\xc0\x0b\x95\x3a\x24\x59\x5f\x85\x18\x87\xda\xae\xe3\x67\x86\x4b\x9a\xfc\xa6\x4a\x2c\x7c\x12\x7d\x57\x89\x70\x05\x1e\xb2\x5b\x62\x3b\x36\xd1\xce\x62\x50\x9c\xde\x9a\xfe\xde\x1f\xbf\xa1\xe6\xf0\x33\x89\x3f\xbe\x89\xe7\x26\xda\xa3\xf9\xaa\x04\xfc\x2b\x7d\x9f\x9b\xe0\x5c\x10\x5d\x09\xd9\x22\x8e\x77\xff\x4e\x47\xfa\x41\x25\x9c\x1e\x96\x45\x6c\xb4\xe5\x9c\x67\x54\x4f\x3d\xa4\xe0\x4b\x26\x09\x79\x1e\x31\x1c\x47\xea\x88\xa3\x98\x07\x3b\x96\xa4\xc4\x56\x87\xa5\xc6\xd4\x24\xfb\x9a\xea\xc3\x0e\xdc\x21\x9a\xd0\xcb\x3a\xa1\x17\x37\x21\xf4\x9f\x72\xfb\x36\x08\x7d\xd3\xd7\xb9\x23\x1a\xc2\x64\xab\x61\x41\xf2\x16\x4a\x2e\x14\x58\xa5\x81\x96\x08\x30\x35\x69\x4d\x62\x2d\xca\xd0\x74\xd2\x2e\x9f\x5a\x54\xa8\xc2\xb1\x68\x25\xc3\x0c\x48\xef\x35\xaa\xc2\x6d\x70\x7b\x3b\x5a\xbc\x69\x53\x7c\xb2\x90\xca\x2d\x51\xfe\xd6\x6f\x78\xf0\xab\x6f\xab\x62\xd2\xfa\x90\xad\x31\x2d\xca\x24\x11\x93\x18\xdc\x71\x0c\xdd\x79\x04\xcb\x0d\xd5\xd7\x06\xe7\xbd\xfe\xdc\xbb\xd9\xca\x6c\x33\xee\x96\xd0\x6e\x9f\x2c\xd6\x6f\x21\x67\xdc\x63\xb8\xdf\x72\xb6\xf7\x18\xf5\xd7\x22\xc7\x33\x38\x32\xb7\x6a\x98\xf5\xdc\x4a\xad\x71\x80\x81\x22\x76\x41\xb6\xcb\xba\x73\x9e\x5e\x4d\x68\xea\x84\x19\x9f\xc6\x99\xce\xec\x82\x00\x93\xb5\x61\x48\x6b\x13\x9f\xf8\x2c\xd1\x41\xee\xda\x64\xf1\x4a\xaf\xc6\xe2\x0a\x3b\x37\x2c\x9e\x3c\xd0\x0c\x76\xa7\xa3\x58\xe2\xef\xfa\x21\x84\x5f\x29\x7b\x68\x89\x81\xbb\x2d\x90\xfe\x85\xa0\x73\x77\xa8\xd0\xcc\x2d\xd1\xa5\xec\x9c\x8f\x8d\xb7\x82\x5b\x41\xe9\x93\x05\xb6\xbf\x16\x4e\x45\xf0\x39\xd9\xa3\x99\x92\xbc\x93\xef\xd5\x40\x0f\x8b\x19\x05\xfa\xb2\x84\x0c\x07\x10\x01\x71\xb3\x60\x7c\x0d\xd8\xfe\xf5\x60\xc6\xd6\x42\xec\xb6\xc0\x6a\x1c\x56\xf7\xbc\x9d\xda\x46\x1c\xd5\x76\x4e\x19\x43\xd4\x04\x80\x03\x59\xa5\x16\x74\xb6\xd6\xa9\xc0\xc8\x5e\xeb\x41\x00\x95\x2a\x1b\x57\x09\x11\xee\x30\x75\x03\xac\x07\xa7\xb8\x81\x5f\x96\xcb\x2b\x70\x0e\x2f\x79\xf4\xd9\xf2\xaf\x47\xef\xde\xf6\x74\xe4\x22\x3a\x31\x82\xeb\x2f\x79\x80\x35\x8b\x26\x94\x90\x24\x72\x4c\xd6\x60\xad\xeb\xa2\xa0\x90\x29\xdb\xee\xc8\x75\xac\xd0\x88\x74\x3a\x12\xa2\x44\x91\xe0\x40\x44\x51\xc1\xd8\x85\xc5\x19\x1a\x45\x91\xe9\x0f\xba\xca\x0e\xd9\x84\xb7\x70\x3c\x9b\xfb\x30\xb7\xb1\x65\xa4\xce\xf7\x82\x4b\xae\x4a\xbe\x9b\xf8\x24\xe8\x74\xaa\xe1\x83\x49\xd0\x03\xbf\xb4\x4a\x3a\xb2\xf7\xb5\x65\xc3\x41\xde\x26\x76\x34\xf1\x8c\x33\xa3\x93\x2e\x36\x22\x67\x5d\xeb\xa0\xa3\x6d\xf3\xb5\x55\x78\xa0\xbd\x57\xf0\x20\x36\x9a\xe7\xd2\x44\x81\x74\xbd\x5b\x78\x6e\xbc\xbf\xa1\x9d\x09\xee\xf5\x7a\x64\x04\xa1\xc4\xae\xd9\x78\xad\x00\xb9\xa0\x2c\xa9\xda\xcd\xfc\x31\xc1\xa1\xe7\x71\x37\x60\x6c\x86\x82\x09\x83\x7f\x4e\x98\x84\x60\x17\xa4\x25\x62\xf1\xdd\xe1\x71\x72\x02\xde\xd3\xb2\xa8\xc1\xfa\x2d\xe3\x24\xc9\x42\x61\xe2\x97\x64\x21\xcb\xf3\x26\xfc\x34\x15\x03\xc3\xeb\x8a\xd5\x0d\x16\x20\x17\x2f\x49\xa7\x23\x3a\x1d\xda\xe9\xf8\xec\xd1\x23\x0c\xb4\x5c\xb7\x07\x81\x63\x5f\x9b\x69\x05\x45\x85\x56\x13\x10\xbb\x28\x00\x8b\x63\x70\x8e\xa3\x83\x7b\x42\x02\xe8\xb1\xf5\x70\xf0\x38\x4e\xd3\xd3\x78\xfc\xd1\x7e\x43\x81\x77\xc6\x13\xb7\x2d\x53\x2c\x2d\xd3\xfc\x0b\xc7\x31\xce\x14\xff\x42\xb5\xbe\xd2\xe9\x06\x97\x09\xaa\x1b\xfd\x69\x3b\x71\x32\x4d\x17\x01\xae\x37\x10\xf1\x6a\x9d\x4a\xec\x75\x0d\x22\xcb\xc1\x5b\xf8\xc4\x49\xd2\x00\x8e\x2e\x8a\x69\xde\x1c\x61\x8c\x33\xcc\x82\xda\x40\xa3\xb8\x39\xb8\x88\x6d\x8a\xe7\xa9\xc4\xea\xbb\xce\xbe\xba\x09\x5a\x24\xef\x6b\x90\xfb\xd3\x9d\xc6\x75\x98\xbe\x63\x63\x02\x06\x24\xf5\x8c\x96\xf5\xd1\xc4\x3f\x8e\xe8\x8e\x3c\x68\x56\xf0\x19\x8e\x31\x0f\x42\xde\xe9\xf0\x1e\x67\x63\x72\x20\xa0\x6a\x8c\xbf\xe7\x3c\x25\x31\xf3\x79\x6f\x1c\xcf\xe5\x42\x90\x20\x08\xd7\xd4\x2f\x8a\xaa\x46\x8a\xd2\x6a\xbb\xb5\x6c\x96\xca\x99\xab\x06\x19\x2c\xd5\xc0\x5a\x4a\xfa\x3a\x3b\x5c\x9f\x69\x3b\xa6\x9d\x0e\xad\x76\x7c\xf4\xe3\xfb\xf7\xef\x3e\x1c\x1f\x9d\xbc\xfc\xe9\xe5\xdb\xe3\x93\x77\xef\x8f\x0f\xdf\xbd\x3d\xaa\xeb\xe1\x4c\x64\x63\x71\x55\x44\xfe\xb3\xc7\x84\x61\x69\xcc\x35\x9e\x8f\x12\x7a\x8e\x74\x78\x53\x89\x45\xd4\xdf\x29\xf4\x46\x0d\x80\xa0\x71\x4a\x95\x1c\xa4\x9a\x56\x9b\x62\xa9\xa0\xaa\x17\xb2\x45\x75\x07\x75\x0f\xf4\xd1\x0c\xbf\x6d\xfd\x20\xf4\x65\x63\x34\xba\x00\xfc\x41\x8a\xc7\xa1\x8c\xca\x4a\x2d\xbc\xdb\xc7\xbb\xfd\x40\xab\xfe\xb3\x79\x2c\xc7\x53\x9d\x2f\x5b\x93\x06\xc0\xae\x8c\x55\x5a\xc9\x9b\xec\x0e\xf2\x3c\xf0\x83\x16\x9d\xbb\x8e\x05\xda\xb0\x3f\x7c\xdc\x6a\x7f\xf8\x78\xd4\xe9\xb8\x5f\x2e\x7d\x0d\x96\xed\x6b\x2a\x31\x55\xc4\x40\xf8\x41\xde\x02\x59\x9d\x9b\xaf\x5d\x5c\xd9\x34\x63\xe7\xac\x2b\x48\x46\x7f\x23\xa5\xb6\xc5\xfe\x80\xe3\x5c\x67\x6e\x52\xfa\x5c\x73\x64\xc1\x01\xac\xb7\x5a\x39\xc1\xb8\x8c\xc6\xaf\x35\xa6\x3c\x5a\xe6\x35\xbe\x18\x1c\x58\xb1\xb6\xe8\xed\x24\x58\xf2\x21\x19\x45\x6c\x48\xc0\xfb\x19\x77\x62\xe1\x47\xbb\xbb\xee\x27\xe6\x3d\x97\x85\x86\x5c\x37\x01\xfb\x08\xe8\x08\xa2\xcc\xe3\xab\x15\x77\x1d\x4e\x05\x9d\x8e\xcf\x7b\x96\xc7\x8e\x76\xfb\x01\xe6\x91\x30\x8e\xc4\x82\x9e\x50\x2c\x65\xa6\x7f\x69\xa3\x99\x62\x80\xa0\x8b\xb2\xfa\x15\x83\x1b\xab\x95\xc8\x03\xa0\xf1\x0e\x32\x54\xfa\x83\xee\x60\x34\xd5\xf4\x83\xca\x97\x8e\xbe\x4b\x6d\xdc\x50\x5c\xc9\x8c\xec\x2d\x49\x61\xd4\x58\xef\x61\xbd\x22\x99\xab\xe9\xe9\xcb\x14\x7e\x0f\xd7\x3a\x6a\x2b\x64\x91\x6f\xc5\x40\xca\xa0\x41\xe3\x33\xb0\xbc\xec\xd4\x1e\xc3\x31\xd5\x57\xa8\x9e\xe6\x04\xb2\x52\x87\xb6\x4e\xbb\x8e\xd9\x4e\x5b\x9c\xea\x52\xe7\xae\x11\xf7\xdd\xa9\xea\x51\x1d\x3d\x3a\x2a\x33\xf6\x45\xc4\x4b\xf9\xa0\x4d\x9f\xee\x88\x58\xc2\xc5\xa4\x8a\x28\x26\xaa\x58\x54\x08\x62\xa2\xc0\x17\x23\x90\x89\xca\x4a\x8a\xe6\x4a\x32\xbb\x92\xb9\xbe\x15\xb2\xc7\xaf\x5f\x65\x4b\x63\x71\x96\xf5\xca\x7b\x8a\x61\x7f\xb4\xe1\x3e\xab\xbc\xb9\x82\xba\x55\x50\xf4\xb8\xfe\x61\xb8\x01\x4d\xbf\xf5\x61\x3f\x8d\x59\x92\x92\x0f\x50\x3c\xa8\x5e\x7a\xb5\x35\xb4\x60\xdb\x36\xe5\x7e\xd9\xc6\x8a\x89\xd6\xae\x14\x30\x8f\x62\x9f\xf6\xe6\x56\xa2\xc3\x8d\xa5\x1c\x8a\xd1\x66\xc9\xb8\x72\xdd\x81\x1d\x90\x03\x57\x99\x07\xb8\xd6\x81\x3b\x3c\x84\x87\x6c\x84\x4b\xc9\xf2\xdd\x05\xb3\xf8\x61\x7d\xf0\x72\xb1\xa1\x7a\x80\x9d\xbc\x00\x57\xcc\x9a\xb3\x26\xc7\x34\x8f\xcf\x88\x8e\x48\x53\x3e\x3b\x28\x92\xb6\x65\x98\x4a\x4b\x83\xfb\xd9\xb7\x34\xf2\x65\xeb\xbe\xf5\x51\x39\x38\x1d\xa0\x2f\xc0\xa2\xb6\x75\x5d\xce\x7e\xed\xee\xa5\xd7\xec\x5e\x1b\x5d\x8e\x16\xbb\x96\xfd\x53\xed\x5a\x5a\xdb\xb5\x30\xde\xc3\xc6\x3d\xee\xd9\x82\x26\xaf\xb8\x30\x57\xb8\xaa\x15\x3f\x58\xc2\xcc\xa1\xc9\xda\xf4\x61\x5b\xe8\x99\x6b\x6f\x89\x4b\x9a\x84\x65\xe2\x61\x92\x07\x79\x45\x6e\xd5\xc2\x99\xee\x2a\xce\xc0\xfc\x78\x99\x2b\x68\xd4\xea\x19\x27\xf1\xa4\xf7\x0f\x4e\x99\x8f\x50\x90\x17\x4a\xa8\x46\x9f\xa2\x3a\x8e\x6c\x3c\x25\x0a\x6b\x8e\x55\x0b\xfa\x9e\xdc\x0f\x30\x42\xb5\x4b\x70\x3d\xa7\x4a\x5a\xa5\x19\xcd\xcb\xf8\xee\xa0\xb6\xe8\x07\x88\x81\x70\xb6\x5a\x5c\x62\x46\x16\x0d\xe5\x08\xa7\xd1\x5d\x08\x01\x1e\x47\xcb\x1c\xbb\xfc\x46\xba\x86\xdf\x18\x2b\x7e\x23\x35\xfc\xc6\xb8\xca\x6f\x8c\x2b\xf8\x56\xe7\x37\xc6\x6b\xf9\x8d\xf1\x6a\x35\xae\xf3\x1b\xe3\x2a\xbf\x31\x8e\xb2\x6d\xf8\x8d\x8a\x12\xc3\x57\xe2\x2e\x09\x56\x2b\x92\x07\x78\x1c\xe0\x85\xc3\x6f\x8c\x6b\xdc\xc0\xd8\xf0\x1b\x95\xf4\x83\x71\x13\xdf\x17\x05\xbf\x31\xde\xcc\x6f\xd4\x7b\x68\xdf\xb2\x6a\x88\x63\x35\x3d\xcd\x6f\xb0\x68\x8c\x85\xb6\x37\x03\x59\x1d\xa7\x78\x81\xc7\x0e\xe1\xa4\x1b\x09\xa7\x75\x44\xbc\x57\x27\x4e\x37\x25\x9f\x8a\x49\x55\xfd\x97\x8c\x6a\x5a\xde\x2d\x8a\x7f\x26\xfa\xe3\x72\x0d\xc5\x60\x17\x0f\x6b\xfa\x53\xf4\x3b\xfe\x37\x37\xff\x3f\x81\x9b\x4f\x22\xb4\x60\xba\x8d\xa4\x7c\xee\xf4\x2a\xce\xe4\xf7\x9c\x4b\xa3\x32\x98\x46\xe0\x01\x9f\xbc\xa0\x89\x8e\x89\x84\xa0\xee\x64\x1d\x47\x81\xaf\x11\x10\xea\xfc\x47\xa9\x70\x0f\x1a\x42\x83\xae\x61\xc2\x46\xd4\x58\x8f\x36\x76\x23\x35\xa6\x64\x8a\x6c\x1c\x6b\x7e\x4b\x6b\xf3\xca\x2c\x98\x8b\x40\x38\xae\xa5\x97\x6a\xff\xcc\xe4\x2c\x4c\x8e\x3d\x9f\x86\xa3\x32\xed\xc4\x40\x53\xbb\xfe\x47\x78\x99\x91\x79\x2c\x62\x88\xe0\xe0\xad\x3c\x84\xe7\x02\x02\xbb\xa9\xcd\x26\xc8\x3c\x8d\xc7\xc4\x72\xaa\xb6\x89\x96\xf3\x51\x6b\x50\x8c\x61\xa2\x58\xb0\xe2\x0c\x7d\xc7\x14\xa4\xe2\x89\x24\xe2\x03\x98\x56\x23\xac\xf9\x2a\x50\x07\x6a\x3b\x1c\x68\x27\xc8\xdb\x98\x12\x73\x30\x9f\x98\xa0\x24\xe4\xe5\x25\xcd\x24\x65\x67\x50\xc5\xea\x7b\xb4\xaa\x87\x98\x55\x3a\x73\xed\xee\xd4\x16\xca\x78\x7a\x4e\x3e\x38\x4e\xef\x7d\xa4\x37\x6a\x48\xd8\x39\x15\x9c\xe9\x25\xdc\x21\xbd\x02\xf8\x9d\xce\x10\x15\x70\x41\x18\x19\x98\x80\xab\xf2\xb9\xb6\x0c\x2f\xa8\x87\x2c\xe6\x4d\xb3\x97\xb3\xb9\x42\xe6\xb2\xa1\xa1\x1c\x05\xab\x95\xe6\x35\xaa\x90\x87\x47\x00\xd5\x82\xb9\x99\xad\x5e\xe8\x1e\x67\xfe\x54\x27\xb4\x00\x3c\xc8\x21\xd6\x2d\x04\xf5\x78\xa1\xdb\xcd\xec\x4d\x9f\xb6\xea\xad\xf5\xd7\x2b\xe6\x83\x45\x6b\xbe\x99\xa3\x11\x4e\xeb\xb9\x66\xde\x3b\xfa\xb6\x8b\x94\xad\x75\x3a\xbe\xf3\x15\xc9\x00\xdb\x22\xa6\x41\x7b\x57\xa6\x4b\x9a\xc4\x48\x94\xe5\x4c\xd3\xb6\x1c\x83\x72\x26\x31\x62\x0a\x2b\xa6\x44\x50\xf9\x4a\xf0\xd9\x7b\x41\xce\x29\x5f\x38\x33\x85\x16\x21\x6d\x47\x76\x3a\xfe\xb5\xc3\x2b\x7f\xb7\x0c\xd4\x19\x9f\xb4\xbf\x82\x20\x07\x5e\xb4\x06\xdb\x09\x65\x09\x00\xff\xfb\xab\xc3\xc4\x27\x3d\x9a\xc0\x9b\xc4\x82\x11\x76\xf9\xc9\xc2\x65\xbb\xe2\x2e\x86\xbd\x5e\xcf\xc9\x1c\x29\xb1\xa2\x9c\x43\xa1\xa9\xb4\x29\xf0\x30\x99\x91\x4b\x19\x49\xf8\xa3\x11\xa2\x1d\x24\xc6\xc2\xb4\x0d\x2f\x30\x83\x57\x99\x63\xe2\x0b\x3c\xc0\x44\x93\x71\x87\x05\xce\x14\xa0\x9b\x23\xd7\x27\x52\x77\x10\x0c\xfb\xa3\x9d\x62\x01\xf5\xc0\x04\x16\x7a\x60\x64\xd3\x98\x36\x0e\xca\xed\xbf\x06\x17\x4c\x46\xb9\x61\xd4\x37\x43\x3e\xc0\x4b\x35\x8a\x50\x60\x3b\xb2\x90\xe5\x91\x84\xd1\x8a\x72\xb4\x2c\xc0\x0a\xb1\x98\x1e\xb2\x12\x2c\xca\x3c\x0d\x59\x38\xa1\x8c\xc8\x59\x5f\xa4\x1d\x6a\xc1\x47\xdd\xd5\x1c\x54\xa7\x40\x41\xfc\x3a\xa7\x10\x53\x1f\x86\x98\xf9\x7a\xec\xc4\x85\x2a\x96\x11\x39\xb0\xaf\xa0\xc3\x3e\x16\xd1\x70\xb4\x33\xe1\xc2\x7f\x2a\xbb\xdd\xa7\x56\x71\xab\x28\x82\xc2\x28\x66\xb7\x42\xb0\x14\xbd\x05\xcb\xa6\x74\x22\x7d\x16\xec\x9c\x0a\x12\x7f\xcc\xdd\x24\xfb\xea\x55\xc0\x30\x32\x88\xf9\xd4\x36\x8a\xca\x00\xb1\x8c\x76\xf5\x10\x14\x6e\x0a\x85\x8e\xc3\x51\x89\x86\x96\xc8\x91\xe8\xbb\x25\x9d\xf8\xe0\xc9\x8c\xc9\x80\x16\xdd\x92\x60\x87\xa4\x19\xf1\x20\xd3\x6e\x99\xa5\xda\x8a\x32\xda\x1d\x98\x86\xad\x34\x17\x18\xf0\x0a\x85\x4e\xb4\xd3\xf1\x7d\xd2\x90\x18\x49\x10\x38\xfb\x95\xba\xfb\x55\x38\xbd\xe6\xd0\xab\x54\xb4\xb5\x9c\x40\xd1\x0f\x16\x3d\xb3\x69\xf3\x00\x53\xc5\x97\x8d\x63\x09\xa0\x74\x9f\x14\x12\x9b\x21\x03\x75\x44\x06\x79\xf9\x86\xd9\x85\x97\x0b\x49\x2c\xed\x62\x95\x97\x91\x76\x29\x9f\x8a\x6f\xd9\x53\xf1\xe8\x91\xae\x4c\x23\x32\x14\x0a\x71\xa4\x3e\x50\x7c\xa9\x87\x64\x12\x02\x2c\x1e\x0d\xbe\x65\x9d\x4e\x91\x5c\x4e\xb4\x58\x49\x59\x0a\xc9\x5b\x8a\xb8\xf6\xe8\x98\x4c\x36\x9e\x1d\xee\xc1\xeb\x07\xc5\x7d\x8a\x41\x52\x0b\x84\x9d\xe4\x00\x52\x74\x61\xc5\x5c\x9d\x72\x2e\x75\x25\x12\x68\xa9\xbe\xb8\xf4\x80\x59\x59\x5a\x50\x1c\x6b\x3a\xf9\x85\x35\x6b\x57\x0b\x72\xcd\x59\xbe\xcc\x1b\x3b\x7c\xd9\xa2\x1f\x98\xd0\x54\xaa\x33\x3e\xfa\x4e\xf6\x68\x12\x45\x11\x81\xb7\xe6\xed\x43\x55\xa8\xbb\x9b\x98\xa7\xe2\xc5\x7d\x52\x75\xfc\x53\x12\x27\xea\x64\xec\x8d\xa7\x34\x4d\xde\xf2\x84\x64\xc5\x3a\xf3\xa8\xff\x94\x7f\x2b\xec\x3a\x73\xbb\xc6\x24\x12\x43\x3e\xda\x41\x5a\x41\x06\xbe\x0d\x18\x4f\xe0\xb1\x53\x4f\xf2\xd7\xfc\x82\x88\xe7\xb1\x62\xe4\xd5\x32\x6b\x6a\xf6\x5c\xb5\xae\xc0\xa0\x77\x79\x75\x0c\xb5\x6b\x2c\xdd\x6c\x60\x14\x4f\xf5\x62\xc7\xe4\x52\xaa\x61\x82\xa9\xb2\x22\xb0\x84\x25\xba\x75\xaa\xa8\x9b\x9b\xc0\xb4\xf6\x62\x5c\x55\x15\x3a\xac\xe6\x50\xde\x59\x8b\x59\x6f\xdd\x72\xab\x77\x57\x90\x66\xf5\xa6\x1d\x3b\x17\x76\xd7\xc6\x2b\x3a\xd1\xc9\x4d\x45\xfb\x07\x7c\x8c\x00\xd2\x85\x5c\x23\x5f\xd4\x76\x59\xb0\x74\x9f\x68\xb4\x98\x42\xce\x15\x6a\x76\x75\xb0\xaa\xee\x05\x95\xd3\xae\xc6\x29\xf7\x29\x5e\xa5\xcc\x6c\x91\x4a\x3a\x4f\x89\x5b\xb8\xed\x22\xee\xc6\x0d\x57\xda\xbb\xae\x11\xfb\xb2\x2f\xdb\xaa\xb9\x86\x55\xf6\x27\x31\xe8\x61\x2d\x06\x3d\x69\x7c\xc5\x17\x32\x2c\xec\xa4\x31\x8c\x51\xc7\xc7\x2b\x5e\x24\xea\x27\x91\xad\x50\x46\x58\x5f\x45\x65\xe1\x52\xe7\xbc\x13\x3a\xd8\xaf\xab\x6a\x25\x96\x06\x12\x75\x92\x9d\x9c\xd0\xec\x68\x71\x76\x46\x32\x55\xf1\xe4\x44\x73\x6c\x9a\x7e\x73\x66\x6a\x8b\xde\xc9\x09\xcc\xe7\xe4\x04\x4b\x43\xc0\x39\xd3\xb2\x31\x34\x9d\x57\xad\x2a\x5a\x7c\x57\xdc\x6d\x81\x6f\x80\x30\x37\x5b\xeb\xb6\xe6\x8c\xdd\xc7\x99\xe0\x8b\x79\x17\x7e\x3f\x18\x4a\xe8\xdd\x59\x2c\x75\x81\x18\x32\x3e\xd3\xcb\x8e\xb0\xc1\x91\xf2\xb9\x04\xc4\x86\x23\xa2\xc4\x9a\x37\x3a\x01\x67\x7a\x59\x49\xa2\x4d\x5f\x8a\x56\x6b\xc8\xe3\x02\xaf\xa8\xd2\xe5\x26\x4c\xe3\x76\x18\x88\xb0\x8e\x49\xf7\x52\x87\x75\xb3\x34\xb3\x66\xbe\x53\xbd\x24\xc3\xba\x0b\xed\x90\x28\xd4\x33\x37\x37\x03\x89\x8f\x4c\x66\x6f\x38\x42\x95\xa7\x1d\x0e\x7f\x75\x46\x64\x51\xae\x8c\x9a\xa5\x58\x64\x39\x25\xcc\xfc\x51\x58\xae\xdb\x7e\xe6\x93\xa0\x27\xb9\xf6\x7f\x14\x04\x61\x5b\x6a\x91\x08\x2f\x08\xb2\x29\x5f\xa4\xc9\xd1\x94\x5f\xe8\x7d\xa0\xe1\xe8\x6a\xaa\x77\xcb\x81\x64\x45\xb1\x9f\xa7\x84\xa1\x60\xb5\x5a\x9f\xa7\xf7\x0c\x8e\x93\xa4\xd9\xb0\x66\xbe\xd6\xf7\xdc\xe9\xf8\xe8\x94\x4b\xc9\x67\x8a\x71\x68\xeb\xe3\xbd\xb9\x61\x45\xc1\x81\x61\x12\xa1\xd4\xe9\x82\xa6\x49\xb9\xd5\x5f\x71\x71\x4c\xc4\x4c\x89\x5a\xa1\x2c\x18\xe4\x6b\x4a\xaa\x41\x97\x14\x46\xad\xf8\x33\x66\x4b\x56\x34\xf8\x1a\x8e\x1f\x8e\x7e\x7a\x6f\x15\x29\x7e\x63\xcd\x00\xe6\x28\x08\xf4\x3a\x09\x2d\x29\xf4\x5d\x4f\x4f\x56\x30\xd9\x71\x98\x1e\x3d\x59\xe8\xdb\x09\x95\x76\xd0\xd2\xa1\x86\x97\x69\x5e\x46\xdf\xf9\xd2\x2e\x34\x48\x19\xd2\x41\x06\x23\x6c\xb6\xac\x87\x6a\x21\xf4\x8d\x74\x6b\x08\xa7\x45\x12\x11\x94\xcf\x33\x1b\x55\x95\xdc\x11\xe4\x41\x8e\x9b\x94\x58\x91\x0f\xd2\xe9\x34\x89\x6f\x8d\xec\x12\x97\xec\x62\xd1\x42\x78\x55\x17\x39\xb6\xf4\xdc\xd2\x78\x56\x80\xc5\x08\x22\x00\xad\x57\x94\xa4\xc9\x81\x11\x61\x20\xdd\x50\x0e\xbf\xd0\x7f\xf9\x86\x0d\x77\x2a\x28\x00\x84\x6d\x95\x00\x38\x7e\x1f\x0b\x03\x15\x6b\x5f\xe7\x93\xd5\x6a\x38\x82\x97\x89\x39\x5e\x8b\x49\xd6\x7c\xb3\x0e\x01\x45\x39\x8a\x49\x87\x04\x43\xe0\xf0\x36\xa4\x7c\x1d\x9f\x92\x14\x2c\xc1\xeb\x9d\xd8\x9c\x0a\xf7\x5f\x2b\x73\xd0\x96\xa8\x64\x93\x5f\x20\xc0\xfb\x67\x4b\x92\xa3\x5e\xaf\xf7\xcb\x27\x3d\xd6\x5a\xa8\xed\xa7\x3a\xe7\x9a\x5d\x3d\xe4\xf3\x89\x1b\x9d\x67\xd7\xd9\x28\xdf\xd7\xc1\xff\x50\x0c\x78\xe5\x8d\x52\xbb\xef\x11\xf9\xfe\xd9\x8f\xff\xf8\x4f\xf9\xa2\xdd\xf7\xc8\x91\x39\x61\x91\x45\x12\x24\x89\x98\x21\x5c\x71\x4a\x02\x8a\x72\xb3\x05\x0b\x70\x43\x46\x9a\xf2\x8b\xe7\x29\x89\x05\x7c\x09\x1a\x6b\x0b\x90\x53\x92\x7c\x7f\x65\x93\x0e\x19\xc8\xd6\xf6\x13\x76\x50\xe5\x23\xb5\xa5\xf5\x96\x81\x11\xe9\xb1\xfc\x65\x1c\xa7\xe3\x45\xea\x1e\x3b\x2a\x51\x49\x1d\xfa\x07\xcf\xc8\x3b\x56\xcc\xe1\x2f\x66\xcc\x3f\xd0\xb3\x69\x4a\xcf\xa6\x92\x24\x35\x9f\x2a\xf0\x49\x85\xfe\x93\x01\x3b\x01\xbf\x05\x9f\x27\xfc\x82\x3d\xb7\x2d\x93\x4b\x29\x62\xf5\x03\xf8\xb4\xca\x9c\xa7\xb6\xf1\x77\xec\x07\x0e\xd6\x36\xe8\x2f\x53\x2e\xe8\x6f\x9c\xc9\x38\x75\xc7\x69\x04\xbb\xf4\xea\xdd\x9c\x30\xdd\x91\x89\xc1\xff\x86\x64\x59\x7c\xa6\x18\xc4\xbf\x00\xc5\x3b\x16\xf4\xec\x8c\x88\x9f\x69\x22\xa7\x2a\x91\x71\xcd\x66\x65\x4e\x41\xce\xbe\x4f\x17\x42\xff\x7a\xae\x26\xae\x7f\xbe\xe2\xe3\x45\xa6\x7f\x1e\xb2\xf9\x42\xea\x9f\x7f\x23\x57\x6a\x3e\xfa\x43\x75\x0f\xbf\x5a\x56\x10\x94\x78\x53\x9e\x26\x7a\x22\xce\x67\xb5\x98\x00\x43\xe5\xa3\xb1\xe0\x69\xaa\x3d\xd2\x68\xd7\x15\xcf\xde\x1f\x36\x1d\xd4\x60\xf4\x97\x0c\x4a\x1e\x73\xf8\x5d\x12\xfc\xf2\xd3\x99\x59\x25\xa1\xd2\xad\xce\x79\x5f\x1d\xa3\xde\x6f\x24\x71\x7f\x1f\x4a\x32\xab\xd4\x94\xf1\xa9\x79\xdf\x84\xfe\x22\x35\x74\x8b\xc5\x35\xdf\x87\x89\xf3\xf1\x81\xa7\x30\x16\x25\xcb\x3f\x9b\x92\x38\x31\x7c\xae\x4a\x3b\x27\x02\x82\x4b\x3b\x6b\xdb\x89\xa5\x14\xd9\x3a\x4f\x3c\x8f\xc1\x41\x4e\x1f\x0f\x1f\x7f\x59\x38\xcb\xe9\xe3\x21\x5a\xc7\xee\xa2\x91\x71\xd9\xd3\xe2\xb9\xa7\xc5\x4f\xce\x3e\x46\x9e\xa7\x32\xbe\xc6\xaa\x65\xf0\xfb\x33\xf8\x0a\x7f\xf1\x58\x7b\xd8\x79\xb8\xed\x0a\xbe\x7e\xda\x3a\xfa\xf7\x46\x36\x1b\x79\x56\x62\xd1\xb5\x7b\x5a\x5f\x06\xdf\x7d\x7f\xff\xfe\x5b\xbd\xfc\x65\x44\xb6\x7f\x62\x2a\x50\x2d\x7f\x57\xca\x60\x36\xfb\x17\x23\xd8\x99\x5f\xea\x3f\x5f\xe9\x3f\x5f\xeb\x3f\xdf\xe8\x3f\x83\xbe\xfe\xab\xe8\xc2\x9a\x8d\x34\x32\x25\x07\xe6\xef\xbe\xf9\xfb\xd8\xfc\x7d\x62\xfe\x9a\xde\x06\xa6\xbb\x81\xe9\x6f\x60\x3a\x1c\x98\x1e\xf7\x4d\x8f\xfb\xa6\xbd\x7d\xd3\xde\xbe\x69\x6f\xdf\xb4\xb7\x6f\xda\xdb\xff\xb2\x1c\xa1\xc5\x63\x33\xa4\x7d\xd3\xc5\x3e\x74\xa1\x09\x9d\x75\x3f\xd6\x57\x44\xb1\x22\x95\x20\x43\xdc\x74\x15\x33\x9a\xc7\x66\x34\x8f\xcd\x68\x1e\x9b\xd1\x3c\x7e\x5c\xf6\x5a\x11\xe5\x4c\xd7\x8f\xcd\x28\x1f\x9b\x51\x3e\x36\xa3\x7c\x6c\x86\xf4\xd8\xcc\xfa\xb1\xe9\xe7\x49\x7f\xdd\x10\xab\x02\x66\x65\x90\xaa\xf3\x2a\x02\x9b\xde\x9f\x98\xd1\x3e\x31\xa3\x7d\x62\x46\xfb\xc4\x8c\xea\x89\x19\xd5\x13\x33\xaa\x27\x66\x54\x4f\xbe\x2e\x1b\x6e\x20\x9e\x6d\xdb\x8c\xf8\x0b\x03\x99\x2f\x4c\x5f\x5f\xec\x8f\xae\x75\x9d\xb6\x8f\xd1\xdf\xff\x0e\xe8\xa7\x4f\xa0\x7d\xeb\xa2\x0d\x0f\x51\x5d\x0a\x2a\x4e\x9b\xed\x1c\xc4\xc1\x69\xa3\xfe\xa9\xcc\x01\x6e\x3b\xd7\xd6\xe9\x82\x90\x19\x78\x95\xb7\x2c\xbc\xc7\x61\xe3\xad\x0e\x4a\xd9\x19\x6c\xe1\x85\xae\x3a\xa2\xaf\xf1\x93\x46\x83\x9b\x9a\xb3\xd9\xaa\x7a\x3d\x57\xd5\xce\x37\xd6\x1f\x5c\xef\x75\x6e\xec\x50\x94\xd8\x1e\x80\x74\x82\x30\x4a\x89\xdc\xe8\x83\xee\x7e\xa4\x8f\xc2\x3b\xdd\xed\x94\xed\x77\x14\xfd\xfe\x99\x44\x9f\xef\xa7\xc7\x2f\xde\x3c\xbe\x8c\x5b\x45\x9f\x06\xef\xa6\x70\xfb\x0b\xbd\x43\xc9\xa5\xc1\x5d\x07\x0d\xd6\x2f\xb8\x15\x7a\x3f\xf9\xca\x36\xa0\x7d\xf3\xa5\xbe\xf6\x2e\xa5\xaa\x26\xf8\xcb\x59\x4a\x67\x33\x22\xca\x6a\xff\x7e\xcc\xf4\x6f\xf3\xc7\xb5\x6e\xc9\xb2\xcd\xfb\xf1\x8a\x9f\x7e\xff\xa3\xbc\x5a\xa3\x8a\x28\x4e\x89\xac\x10\x03\x6a\x2c\xd8\x9d\x25\x96\x2d\x25\xa3\x7b\x10\x6c\x6e\x27\xcf\xdc\x52\x90\xb9\xa3\xd0\xa2\x79\xd9\xad\x15\x11\xf5\xb4\xca\x58\xb6\x90\x68\x4a\x31\xe6\xf7\x91\x57\x04\xf9\x75\x41\x85\x91\x1c\xee\x53\x76\xb9\x8d\x84\xa2\xdf\x9a\x5f\xcd\xb5\x88\xa1\x6f\xef\x5b\x64\x95\x16\x39\x66\xad\xdc\xb2\x5e\x5d\xe1\x68\xf5\x1a\xa7\xdf\xd7\xb8\x76\xe7\xa6\x75\x0a\x4f\x8c\x4e\xe1\xdf\x3b\xf1\x5f\x70\x27\xfe\xf3\xeb\x16\xfe\x88\x7b\xf5\x16\xfb\xb3\xdc\xe0\x85\x0f\x6f\x2d\x12\x1a\x09\xf0\x3a\x75\x42\x55\x24\x1b\xf4\xad\x2c\x6b\x25\xda\x5a\xfe\xa0\x14\x46\xcd\x76\xf8\xbe\xba\x9b\x0a\x7d\xe4\xef\xaa\x78\xa8\x6a\x19\x4a\xd5\x81\x1a\xb7\x7e\x51\xaa\x11\x78\x54\xd5\x28\x94\xd9\x16\x93\x47\xf5\x0c\xc0\xea\xd1\x66\x05\xc4\xed\x14\x0d\x77\x55\x11\x0c\x14\xfb\xdd\x14\x19\x0a\x4b\x27\x83\x49\x1e\xb2\x2a\x83\x51\x5d\xbd\x51\x5d\xeb\x2f\x06\x23\xdc\x6e\xce\xb3\x67\x9a\x42\x23\xc7\x3b\x7b\x1d\x0f\xbf\xe8\x6b\xe9\x5c\xab\x21\xf4\x5f\x47\x41\x63\x2d\x2a\x8e\xe3\xd3\x43\x5d\x6d\x5b\x55\x45\x21\xbc\x7f\xf1\x85\x41\x4a\xb3\xc6\x9b\xa5\x6f\xbc\xdf\x94\xcf\x37\x08\x66\x6a\x6f\x3b\x92\xcb\x96\x02\xda\xb5\x32\x52\x21\x76\xa5\x44\x7a\x69\xf9\x84\xdf\xbe\xd5\x6f\xbe\xdd\xaf\x7e\xc7\xbe\xcf\xd7\x3e\xe7\x87\x27\xee\x35\xb8\xfa\xcd\x58\x4c\xe5\x9b\xf7\x3a\xc1\xe9\x74\xca\xbc\x0a\x75\x3c\x40\xdd\x01\x0a\x9d\x8a\x66\xb1\x57\x2b\xd4\x47\x79\xb9\x33\xb4\x58\x47\x27\x7e\x59\x54\x1f\x04\x9d\xce\xee\xa0\xd2\xb5\x4e\xd6\x96\x10\xd6\xf3\x87\xf6\xe5\x3e\x51\x3b\x13\x0e\x15\xbf\x78\xdd\x0e\xbb\xd5\xb1\x43\x31\x4d\x40\xb2\x3b\x68\x93\x64\x2c\x24\xd6\xb5\x66\x36\x77\xd3\x3f\x95\x69\xc3\xe4\xb7\x8c\xd9\xad\x79\xe0\xcb\x5e\x26\xf9\x5c\x09\x3d\xf1\x99\x7e\x88\x13\xe0\xdd\x41\x10\x0e\x1e\x83\x77\xb6\x8f\xe4\xea\x39\x4f\xc0\xa0\x82\x66\x6a\xb6\xed\x35\x9c\x30\x67\xd3\x92\xb5\x38\x20\x3d\x7b\x9a\x74\x3a\xdd\xc1\xae\x7e\x04\xa2\x13\x0a\x93\xfd\x4a\x8d\xe0\xc0\x27\x3d\x63\x05\xd3\x03\xe6\xc5\x97\x7a\x3c\x6e\xfa\x94\xab\x8c\x4a\x45\xdc\x52\xcc\xa9\x5e\xbc\x86\x6c\x25\xf8\xae\x05\x9f\x9a\x9e\x19\xe2\x6a\x35\x1c\x05\x46\x02\xee\x07\x98\x45\xdd\x41\x61\x7d\x4c\xa3\xfe\x53\x5a\x5a\x1f\xd3\x47\x8f\x02\x3a\xf1\x8b\x27\x47\xbf\x2e\xe2\xd4\x17\x43\x3a\xc2\x24\x08\x96\x2c\xa2\xf6\x69\x80\x11\x93\xbf\xeb\x0e\x0e\x84\x7d\xbe\xc0\xf0\x20\x08\x0b\xe3\x78\x2c\xf2\xca\x7a\x83\x89\xbf\x7d\x6d\x51\x98\x1b\xff\xba\x20\xe2\x4a\x4f\x80\x0b\x1f\xfd\x5f\x2d\x44\xd3\x6c\x8c\x92\x78\x52\xd5\x62\x17\x3d\x22\xbd\x05\xa3\xbf\x2e\xc8\x61\x02\xee\xb0\xa5\xc6\x2f\x1f\x0c\x0d\x9b\x6e\x0b\x34\x0b\x34\x14\xd7\xfb\x3c\xe0\x6b\x2a\x07\x98\xbb\x1e\x0f\xe2\xb6\x82\x86\x17\xdb\xc6\xb5\xc2\xda\xda\xdb\xf4\x53\x70\x77\x6a\x6d\x6e\xd1\x93\xad\x5f\xeb\x8b\xbb\x3a\xa8\x14\x6f\x0a\x89\x91\xe1\xb4\xc5\x85\xee\x8d\x08\x70\x71\x76\xdd\x9b\xb2\xca\x3e\xaa\xde\xa9\xbf\xd9\x7d\xf0\xb7\xc2\xc9\xbf\x95\x65\xff\x33\x94\x65\xd3\xcd\xca\xb2\xf7\xd3\x47\x5f\x2c\x78\x92\xad\x55\x96\x21\x8c\x68\x72\x59\x4a\x2c\x20\x57\xd2\x4c\x9e\xf2\x4b\x73\x81\xe9\x68\x0d\x2a\xc2\x9e\x15\x0c\xe7\x75\x21\xa8\x2a\x4a\xb9\x26\x40\x85\xd0\xbb\x4e\x3a\x5a\x67\x11\x31\x18\x60\xb4\x48\x81\xd9\xfb\x12\x0f\xb6\xe0\x70\x8d\x78\xd9\xd5\x1c\xee\x63\x3c\x44\x96\x58\x23\x7b\x55\xf4\x04\xf7\x5b\x2d\xd8\xea\x6d\x40\xaf\x5f\x69\xb9\xe5\x09\x1e\x3e\xfe\x1a\x64\xa7\xf2\x76\x91\x18\xc1\xb8\xb8\xde\x53\xbd\xe9\x53\xde\x15\x81\x74\x55\xc5\x51\x23\xc9\x17\xe3\x69\x26\x63\x08\x9b\x67\x99\x60\x38\x8d\xdf\xcd\xeb\x92\x93\x53\x6d\xc6\x17\x19\x31\x64\xf7\x9a\x5a\x20\x6c\xd5\xaf\xf3\xbe\x71\x38\xfb\xaf\x1b\xbf\xf5\xb8\x0b\x11\xb6\x66\x4c\x72\x9b\xcb\x3e\x00\x5c\x1f\xa3\x94\xc2\x2f\xb8\x15\xd9\x72\xe1\x40\x32\xd1\xa3\x7b\x62\xe5\x4d\x25\x67\x5a\x8d\x8a\xe2\xd8\xaf\x6f\xa5\xdb\x2d\x2b\x98\x59\x8c\xd6\x01\xe7\x4b\x07\x08\x4e\x37\xdb\x9b\xd2\x38\x97\x89\x7d\x8c\xb2\x79\x0c\x8d\x0f\x9e\x60\x24\xb4\xba\xeb\x74\x21\x25\x2f\x12\x63\x41\xe3\x6e\x6a\x54\x5b\xfa\xfd\x94\x67\x63\xad\xe8\x22\xd7\x60\xa7\xae\xd3\x3d\x95\xcc\x40\x17\x25\xb1\x8c\xbb\x76\x01\xbb\xd6\x31\xb3\x0d\xb1\xe5\xcc\xda\x2b\xfe\xfd\x7f\xff\xaf\xf3\x09\xed\x3c\xbe\xfe\xda\x53\x03\xac\x58\x97\xfd\xdb\x5d\x04\xd7\xaf\x82\xbf\x70\xdb\x1b\xaa\x13\x59\xd3\x8a\xba\x42\xbf\xa6\x7e\x18\xdc\xfd\x02\xb8\x90\x22\x07\xfd\x8a\x14\xb9\xfd\x1d\xf0\x16\xb0\x03\xa1\x73\x4d\x28\xb4\x27\xce\x66\x7c\x6c\xe6\xe7\xd8\x44\xd8\x6b\xf8\x6f\xae\xdd\x92\xd7\x5e\xbc\x57\x31\xb3\x1d\xc3\x5c\x7a\x6e\xf1\x66\x60\x94\x45\x5b\x61\xc8\x56\x68\xf3\xcd\x8d\x86\x0f\x03\x19\x60\x04\xbc\x37\xda\x44\xbd\xdb\xd9\x75\x53\x05\xc5\x0b\xc9\x15\x5f\x97\x12\x78\x58\xc3\x27\x93\x6a\x8e\x10\xc6\x8e\xb5\x96\x11\xcf\xa9\x84\x13\xbe\xcc\x1b\x7c\xa9\x60\x49\xd2\x74\x3c\x25\xe3\x8f\x08\x83\xde\xe0\xda\x03\x6a\x9d\x34\xb1\xf6\x98\x1a\x7c\x89\xf7\x71\x49\x9d\xd5\xd9\x7a\x5c\x5c\x2c\xab\x31\x00\x21\x19\x73\x26\x85\x3a\xd4\x8d\xc2\x4f\xe7\x7d\x51\xb7\x16\x79\x63\x7a\x05\xa1\xe8\x48\x5e\xa5\xa4\x6c\xa7\x72\x8c\x97\x16\x3b\x57\xa7\xc4\xd5\x72\x16\xc5\x4b\xe5\x76\x2b\xd5\x84\x32\x25\xeb\xa0\xf5\x8f\x1a\xa2\x4f\xac\xd9\x0c\xaa\x1e\x6f\x13\x23\xbb\x80\x8e\xb2\xed\xfc\x3b\x05\x86\x43\x2b\x2f\xdb\xf2\xf5\x4a\xd7\x94\x74\x5a\x25\xdd\x7e\xa0\x7e\x2c\xa4\x98\x35\x0a\xbf\x5a\xa5\x81\x6b\xad\x22\xb9\x70\xe0\x98\x35\x4e\xdf\x6d\x28\x69\xa5\xcc\x96\xdb\x53\xed\x8f\x45\xd6\xa5\x63\x73\x96\xb4\xf5\xb5\x41\x99\xa5\x28\x69\x42\xd5\xf1\x90\x11\xc5\x7f\x20\xc6\xc1\xc4\x04\x3c\x80\x80\x7d\x89\x6b\x79\xb2\x60\x29\x01\x85\xb4\xaa\xb2\x30\xee\x50\x50\x57\x8a\x78\xfc\xb1\x1b\x83\x45\x15\x46\x24\x56\x6b\x79\x5f\x6a\x31\x2b\x95\x59\xf5\x18\x9e\x44\xda\x47\x78\xa7\xa3\xff\xf6\x58\x7c\x4e\xcf\x62\xc9\xc5\x41\x3d\xa1\xb7\xc8\x88\x78\x76\x06\x0f\xc8\x10\x9e\x47\x93\x42\x3d\x82\xde\x1c\x1d\xbe\xf4\x50\xf0\x5d\x77\xb0\x5a\x39\xc9\xc7\x82\x26\x84\xc9\x3d\xc8\x01\x4d\xdc\xec\x06\xce\x34\xab\xdf\xbc\xae\xa0\xab\x7d\x67\xb5\xef\xf4\x9e\x9c\x71\x8e\x8d\xef\x1a\xc0\xff\x57\x5c\x2d\x9c\x95\x52\x6c\xd6\x49\x1a\x67\xf2\x50\xf3\xa4\xd8\x55\xec\x29\xd0\x1b\x95\x54\xc5\x2f\x20\xb9\x94\x6f\x48\x9c\x2d\x44\xd5\xa7\xe7\xe2\x9f\xca\x3b\x60\xdd\xa7\xe7\x5a\x2a\xe7\x83\xfa\x67\xad\x07\x9f\xb1\xb9\x95\x82\xf3\xa8\x01\x1d\xab\x08\x13\xc4\xfa\x05\x0d\x9a\x85\x4a\x05\x9d\x92\x3a\xcb\xd7\x4a\x6b\x0b\x62\xa4\x75\x5e\x28\xb0\x0f\x06\xfb\x15\x5f\x81\xc5\x62\x76\x3a\xbe\xf5\x5e\xe0\x2c\x4a\xef\x82\x26\x72\xda\xd6\xbc\x3d\x21\x70\xb5\x99\xc0\xc6\xee\xd3\x1e\x10\x7a\x53\x39\x4b\x8f\xe2\x09\xf1\x7f\x81\x96\x42\xef\xb3\x25\x79\xb4\xff\x45\x3e\xbf\xfc\xa5\xf0\xd1\xd0\x5e\x01\x99\x0a\x83\x7e\xff\x4f\x4f\x91\x86\x7c\xfd\x9c\xd0\x00\xdf\x2d\x43\xd8\xdf\x23\xbc\x0e\x90\xab\x7e\x76\x8e\xad\xd5\x0a\xa1\xdc\x91\xc7\x0a\x7d\xe4\x50\x8c\x22\xb9\x03\x1a\x5c\xd1\xe9\xec\x16\x8a\x6f\x67\x57\x74\x3a\x77\xc4\x0e\x0d\x78\x8c\x90\x75\xeb\x54\xb6\x1d\x89\xbc\x7e\x5a\x18\x55\xe4\x72\xc2\x99\x4e\x09\x25\x56\xbf\x7f\x52\xa7\x39\x93\xa1\x80\xaf\x9f\x09\x3d\x9b\xca\x90\xc1\xc7\x11\xfd\x8d\x84\x14\xa7\x94\x91\x1f\x74\x3a\x87\xf4\x57\xf1\x8c\xa6\x57\x61\x9c\x1b\x32\xa9\xc0\xf8\xdc\x68\xfe\x35\xf2\x93\x60\xa7\x8a\x0b\xd1\x2f\x9f\x2d\x65\xee\x7d\xb6\x14\xea\x3f\xa6\xfe\xa3\xf9\xde\x67\x4b\xae\x7e\xc5\xf9\x2f\xb9\x2b\x56\x1a\xdd\xa9\x09\x05\x42\x7a\x12\x5c\xda\x5b\x87\x13\xd6\x53\x91\x4e\x55\x7d\x3f\x93\x52\xd0\xd3\x85\x24\x7e\xab\x40\x52\x75\x25\x34\x8f\x45\x46\x0e\x99\xf4\x25\x1e\xf4\x83\x1d\xd2\xa2\x13\xd7\x6e\x79\x08\x93\xc6\xbb\x8e\x71\x89\x55\xbc\x1b\xd4\xad\x6b\xa2\xb4\x01\x7d\x84\x01\x42\xdb\xda\x19\x4d\x38\x0b\xf2\xdc\x61\x1a\xd4\xc4\x5d\x85\x3f\x24\xb6\x5c\x04\xd8\xc2\xe6\x35\x6d\x5b\x07\x1c\xee\x37\x1a\x77\x0e\x05\x60\x77\x1d\xc0\xd6\xaf\x4c\xb6\xb8\x81\xb0\xd7\x26\x5e\x1b\xfc\x76\x07\x0a\xe2\x5f\xc3\xda\x99\x6b\x08\xad\x0c\x6f\x29\x6b\x15\xef\xdf\xa7\x31\xfb\xe8\x17\xab\x0a\xe4\x38\xa8\xb8\x2a\x6a\x83\xf1\x70\x6d\x8e\xd1\xef\x77\x07\x23\xf0\x64\xb5\x61\x13\xa5\xd5\x55\xac\xda\x67\xf8\xb2\xb1\xff\xe0\x79\x2b\xd2\x71\x77\x9c\x38\x94\x07\xd7\xec\x53\xdf\xba\x08\xd8\x50\xc4\x21\x4a\xb8\x7e\x17\xa6\xdf\x9d\xb6\x9c\x03\xb5\x15\x0f\x72\x70\xe6\xe3\x17\xa0\xff\x2e\x7a\xf2\x75\xa7\x53\x7c\x7e\x1b\x7d\xd3\x5f\xad\x1e\xef\x57\x56\x47\xe5\x37\xd6\x26\xcf\x6b\xa8\xee\xdc\x58\xb5\xb8\xf3\x27\x3d\x1d\xd8\xe7\x99\x3c\x28\x7f\xaa\x59\x57\x1e\xd2\x06\x79\x8e\x17\x51\xe2\xa7\xae\x86\xbe\x7a\xf6\xdf\xdd\xc7\x49\xad\x79\x57\x61\xb6\xd5\x45\xc5\xda\xda\x01\x4e\xdd\xcb\x83\x5a\x3f\x0d\x06\x7d\xab\xbb\x8a\xcd\x4d\x6c\xee\xb1\xa2\x8c\xc3\x43\x7e\xc3\xde\x2a\xd5\x37\xf7\xe4\x8a\x36\x78\x18\xdf\xb0\x23\xb7\xf6\x36\xfd\x94\x97\x3d\xd9\xad\x7a\x2a\x2f\x7b\x2a\x7d\xa5\xee\x65\xcf\x6c\xe3\x65\xcf\x14\xcf\x6e\x79\xd9\x73\xed\xdd\xce\x96\xde\x35\x6c\xb1\x31\x67\xe3\x85\x10\x84\x8d\xaf\xba\x09\x19\x73\xf0\x6a\xd5\x9a\xdd\x16\x39\x13\xd3\x96\xbb\x23\xc7\x15\x2f\x4e\xf0\x14\x4f\xf0\x1c\xcf\xf0\x39\x3e\xc3\xa7\xf8\x0a\x9f\xe0\x0b\xfc\x12\x5f\xe2\x77\xf8\x08\x1f\xe3\x37\xf8\x19\x7e\x8f\x9f\xe3\x8f\xf8\x03\xfe\x07\x7e\x81\xdf\xe2\x43\xfc\x1a\xbf\xc2\xbf\xe1\x1f\xf1\xf7\xf8\x87\xf2\xde\xe9\xa7\x3f\x92\x43\xdd\x5f\x7f\xa7\x4b\xb2\x9f\xff\x7d\x49\xf6\x3f\xe3\x92\xec\xb3\xcd\x97\x64\xb3\xdf\xae\x4e\xb3\xaf\xf7\x8e\xda\x2f\xc9\xac\xe9\x26\xc2\x68\xbe\x38\x4d\xe9\x58\x9b\x19\xba\x97\x64\xcf\x1c\x3b\x54\x84\x51\xf9\xab\x69\x8d\xfe\xb6\x69\x81\x79\x54\x33\x2e\xfc\xde\x35\x57\x45\x18\x1d\xdb\x6b\x6a\x73\x5f\x67\xde\xd6\x97\xb7\x69\x4d\x3b\xd0\x86\x51\xa9\x7b\x0b\xd7\x66\x7a\xb9\xd1\x08\xf4\xba\x47\x95\x8e\xdd\x64\xe3\x32\x70\x8d\x15\x64\xab\xfd\x64\xcd\x6a\xb7\x61\x9b\x5b\x33\xca\xac\x5a\x52\xd6\x0c\x28\xef\x6c\x5b\xec\x1a\x8d\xd6\x1f\x71\xd6\xac\x36\x9b\x17\xa5\xae\xe9\xaf\x63\xf4\xea\x1a\x88\xb6\x59\x78\x36\xac\x84\xd7\x5b\x2e\xaf\x35\x7d\x6e\xb7\x1e\xae\x99\x26\xb7\x18\x13\xb7\x58\xd5\xd6\xcc\x68\xdb\x4c\x4e\xdb\xcc\xa5\xd7\x5d\xe2\x7e\x8d\xd1\x69\x9c\xd1\x71\xb7\xdc\x51\xd5\x27\xe7\xb7\x1d\x7a\xab\xa9\x73\x63\x3e\x15\xa3\x65\x6b\x91\xbc\xd5\x24\xdd\xd5\x6c\x4e\xd8\x28\x85\x37\x3d\xd6\x6c\x0e\x70\xd4\x34\xa8\x7d\xf2\xcd\xc8\x5e\x22\x54\xdf\x90\x6a\x2e\x4a\x0f\x7e\xa3\x11\x6a\xfd\xcd\xa7\x35\x2a\xbd\xfd\xdb\x4f\x63\x12\x6a\x15\xdf\x03\xc7\x4c\x74\xbf\xbc\xbf\x71\xd0\x7a\x5a\xb1\x88\x2f\x51\x5f\x90\x6c\x91\x4a\xe7\xd7\x73\xbe\x00\x7c\x35\xb4\x0b\x61\x44\xb3\x67\x63\x49\xcf\x09\xc2\xee\x3d\x07\x46\x69\x9c\x49\x4d\x22\x49\x62\x92\xac\x4e\xc6\xd5\xc7\x97\x17\xd7\x25\x84\x9c\xc1\x8c\x1a\x0f\x82\xdd\x24\x3b\xbc\x66\x92\x1e\xa7\x93\x6e\x07\xec\x24\x15\x23\x1f\xd5\x1f\xfe\x9a\xab\x9a\xb2\x72\x7d\x2e\xae\xe1\xed\xc0\xb9\xe9\x2e\x66\x58\xd6\x3d\x29\x4e\x9f\x67\x45\x66\x79\xad\x5d\x37\xd3\x86\x97\xe1\x6d\xf7\x07\x55\xcb\x88\x41\xed\xca\xe9\xe6\x37\x8b\x8e\x0b\x09\x3c\x2c\xce\x2a\xc0\xb7\xc1\x97\x9b\xae\xfc\xab\x46\xc8\xfb\x8e\x09\xfa\x63\xe7\xdd\xb1\x0b\x5b\xe4\x6d\xb8\x51\xeb\xc6\xa6\x9c\x7b\xd3\x6f\xef\xc7\x12\x7b\x12\x9c\x5e\x21\x6b\xe6\xed\xe6\x53\x7b\x2c\x18\x5b\x6e\x37\xcf\x5c\xd2\x1b\xeb\xee\x46\x4e\xea\x34\xfa\xb8\x92\x5d\x9e\x20\xc6\x12\xdc\x64\x6a\x7b\x80\xfa\xf6\x7f\xfc\xc5\xc8\xb1\x11\xb0\xc6\xd4\x70\x8d\x66\xdc\x71\x6a\xf3\xf1\xf2\x8a\x11\xac\xc8\x5b\xae\xda\xdc\xfb\xf4\xaa\x0d\xc5\xe3\x6f\x1a\x78\x52\x74\xff\xf5\x08\xa3\x3e\xaa\xdf\x30\x9b\x9b\xaf\x2f\x9d\x9d\x66\x1c\xec\xbe\xab\xee\xa2\x27\xfd\xfa\x6d\xd9\x57\xb7\xa8\xd3\xd2\xcf\x51\x6d\x63\x3f\x19\x6c\xd1\xd1\xf5\x95\x2a\x3d\xb9\x0f\x48\x46\x85\x09\xf9\x86\x5e\x6e\x5c\x61\x4e\xc4\x84\x8b\xd9\x91\xb9\xf8\x5c\x43\x27\x6a\x2d\x7c\xbd\xe1\x92\xd2\x6c\xb4\xb5\x77\x95\x5f\xd7\xae\x54\x9b\xcf\x1d\xda\x2a\x94\x57\xac\x65\x79\xb0\xf3\x72\x48\x83\x3a\xa9\x4b\xd6\xab\xe5\xb5\xc0\xbe\x42\xa5\xd2\x58\xa9\xd8\x90\x77\x39\x81\x5a\xba\x79\xb2\x5f\x7b\x94\xd0\x7c\x8b\x70\x0b\x33\x89\x0a\x41\x53\xdd\x1a\x6f\x38\xd7\xb0\xa6\x4d\x16\x7c\x03\xeb\x6b\xed\xec\xae\x7b\x75\xd4\x6a\x6e\x57\x72\xfd\xae\x95\xde\xba\xb7\x57\xdb\x3c\xa9\xb2\xcb\x56\x79\x38\x53\x7b\xec\xa3\x88\xd3\x6b\x3d\x47\xcf\xfa\xbd\xec\xf5\xaa\x3e\x39\xec\x43\x9c\xda\x3b\x9d\xaf\x36\xbe\xb7\x69\xe0\x59\xe5\x71\xd0\xe3\x7a\x21\x7b\x9d\xbf\xf9\x8d\x8e\x7d\x1b\x04\xee\x92\x5a\xa7\xbc\xfd\x0b\x93\xba\x8d\xd0\x57\x85\x99\x92\x7d\xce\x34\x6a\x18\x56\xb5\x98\xff\x40\xc9\x6b\xbc\x42\x0c\xea\x36\x45\xeb\x6d\x8e\x4c\x67\xd5\xc3\xf7\x39\x67\xd2\xba\x02\xb9\xe6\xf0\x75\x58\xf0\xdb\x1c\xba\xb6\x7a\xfd\xd4\xc5\xc8\xbe\x29\xb2\x06\x59\x6a\xff\xdc\xdb\xd6\x77\x5d\x62\x7d\x63\xc9\x80\x42\x95\xfd\xf2\x60\xab\x92\x04\x2d\x40\x15\xa6\x9c\xf6\x0d\xd5\xbd\x51\x88\x7e\x41\x21\x36\x6c\xeb\xf5\x0f\x23\xaf\x37\xa7\x5d\xf7\x08\xb2\x9d\x0c\xdc\x40\xde\xae\x3a\x50\xd9\x1f\xdc\x6e\xa7\xdd\x68\x57\x6f\xb1\x2d\xdb\x76\xbf\xf3\xc2\xaf\x3c\xb4\xd6\x6e\xa2\x7e\xc5\xdc\xec\xb1\x73\x08\xcf\x16\x99\x3c\x9a\xf2\x8b\xaa\xbe\xe5\x66\x7e\x6c\xb6\x3b\x9a\xf6\xfb\x75\x3c\xd4\xf0\xef\xce\x6c\xa7\x77\xc2\x3f\x17\x03\xbf\x71\x10\xb0\xf1\x46\xd5\x35\x98\x2c\x99\x8d\x72\xe6\xe5\x63\xb9\x6b\xa0\xfa\xcd\x1a\xc3\xbe\x35\x06\x8d\x6d\x50\x7f\xcb\x4d\xbf\xd9\x27\x01\xf9\xe0\x9b\x3a\xc8\x19\xef\xea\xe7\xd0\xd9\x27\x00\xfb\xd7\x05\xd8\xdb\x9e\x54\x37\x21\xdf\x28\x75\x03\xe0\x7f\x7d\x33\xe0\x5f\x0b\xa9\xaf\xeb\x90\x2a\x0d\xdd\xef\x0b\x3c\x5f\x98\x13\x68\x60\x0d\x69\x37\x58\x6c\xba\xe2\xf8\x70\x3d\x27\x55\x53\xa5\x81\x86\xf3\xb0\x78\x98\xd0\xa2\x08\x2b\x28\x64\x9b\x8b\xbe\x9a\x82\xb4\x0d\x4c\xdb\xb0\x3c\xe6\x4f\x55\x83\x80\x50\x01\x03\x87\x98\x55\x14\x12\x76\x24\x2d\x6a\xa0\xc1\x97\xf5\xe5\xa9\x40\x0b\x06\x7e\x43\x9e\xda\xf3\xd6\xb2\x31\xc5\x6b\xf0\x26\x13\xd3\xc6\x80\x7c\x89\xbf\xba\x86\x89\xf9\xa2\xca\xc3\xac\xe5\x62\x36\x1a\x09\x37\x51\x18\x5e\x3c\xdf\xf9\xb8\x7e\x52\xec\xda\xda\x4b\x94\xc2\xaa\xfc\xc9\xf6\xdb\xf2\xc9\x8d\xb8\xb5\xf5\x6e\xc2\xda\x9d\x83\xdd\xee\x71\xb2\xf6\x0e\x66\x0c\x39\x5d\xcb\xce\x8a\xc9\x67\xc5\x98\x13\xe4\x17\xf2\x2b\x34\xc3\xc6\x31\x54\x81\x88\x45\x08\xfa\xbd\xbb\x65\x67\x61\xc8\xf9\x1f\x11\x89\xbe\x6b\xb5\x55\x90\x53\xc2\xf0\x7f\xaa\xec\xff\xf0\x49\x69\x62\x38\x8d\x33\xe7\x92\x59\x5f\x39\x11\x18\xa7\xd4\x91\x09\xff\xb6\xb6\xc5\x71\xcc\xc6\x44\x87\xbc\xfa\xbf\x23\xbf\xb0\xcc\x04\xc3\x55\x92\x94\xa6\x99\x36\x21\xab\x27\xa4\xf5\x84\x45\x3d\x61\x5c\x4f\x48\xea\x09\xd3\x7a\xc2\xa4\x9e\x30\xaf\x27\xcc\x6a\x36\xa2\xe7\xb5\xef\xb3\xda\xf7\x69\xed\xfb\xaa\xf6\x7d\x52\xfb\xbe\xa8\x7d\xbf\xac\x7d\x5f\xd6\xbe\xdf\xd5\xbe\x8f\x6a\xdf\xc7\xb5\xef\x37\xb5\xef\x67\xb5\xef\xf7\xb5\xef\xe7\xb5\xef\x8f\xb5\xef\x0f\x5b\xd9\xc8\x82\x2d\x8c\x36\x8d\x85\xe7\xde\xbf\x5a\xb3\xd7\x86\xca\x14\x9b\x98\x00\xa1\x09\xfa\xa0\xad\xf6\x0a\xba\x6c\x92\x8b\x6f\xe3\x19\xbf\x28\xad\x3e\xb0\x36\xd4\x30\x69\xfa\x03\x5b\xb7\x22\xb6\xa4\xf9\xcc\x03\xfc\x93\x1d\x8b\xf1\xf9\x9f\x14\x17\x7b\xff\x30\x21\x2d\x1b\x25\x0a\xed\x15\x7e\xd1\x2c\x32\x27\xb1\xa4\xec\xec\xf9\x34\x16\x08\xff\xff\xec\xfd\x59\x9f\x1c\x47\xb1\x30\x0e\xdf\xcf\xa7\xe8\xae\xc7\x34\x95\xee\xec\x9e\x1e\xc9\x6c\x2d\xd5\xcc\x91\x65\x19\x04\x96\xed\x23\xc9\x6c\xad\x46\xae\xe9\xce\x9e\x2e\x54\x93\xd5\x64\x55\x4b\x1a\x4f\xd7\xf3\x63\xb1\xcd\x62\xe0\x80\x05\x98\xc5\x12\x60\x0c\xd8\xec\x02\x0c\x5a\x00\x5f\x68\x3f\x17\x3e\x9f\x61\xe6\x52\x37\xef\x57\x78\x7f\xb9\x44\x56\xd6\xd2\xcb\x2c\x1a\x7c\xfe\x8f\x75\xa1\x89\xce\xca\x25\x32\x32\x32\x32\x32\x33\x32\xe2\xc9\xec\x77\x72\x7e\xe0\x89\x2b\xe5\x13\xc6\x11\xfa\xd1\x6c\x2e\xd9\xed\xe3\x62\xc9\xb2\xf0\x13\x99\xcf\xc9\x41\xfc\xe3\x99\x2f\xfa\xb0\xfe\xb9\xcc\x07\xf3\xc0\xfe\x99\x6c\xa1\xdc\xf9\xfd\xa3\x99\x1c\xa9\x4b\x83\x8f\xa9\x8f\x30\x86\xc2\x08\xa7\x2b\xee\x5c\xe1\x5a\xf9\x0b\xa6\x55\xb3\x22\xe7\xd3\x2c\x58\xf5\x42\x32\x26\x13\x50\x74\x5a\x2e\xb1\x49\x1a\x9b\x47\x46\x11\x38\xae\x2e\x06\xdc\x4e\x9f\x58\x78\x5d\x2d\xfc\xcd\x56\x1b\xa2\x85\x70\x30\x21\x48\xd3\x08\x57\xc0\x7f\xc7\xd9\x80\x67\x89\xb9\x68\x06\xcb\x4a\xe5\x33\xf6\xd8\x8f\xa8\x52\x01\x83\x66\xf1\x10\x0c\xc2\xf6\x8f\x2f\x91\x08\x4e\x33\x4c\x69\x62\x55\x26\xcb\x1f\x76\x7d\x7f\xd9\xed\x9c\x31\xcd\x58\x33\x15\xe9\xeb\xfd\x5c\xa8\x36\x19\x0b\x51\x92\xcb\x08\xa3\xb2\x42\xa2\x52\x56\xf5\x99\xe8\x8c\x22\x9b\xd9\x34\xad\xcc\x7e\x13\xb5\x17\xed\x26\xed\x02\x87\x0e\x45\xf9\x46\xa3\x8c\xba\x65\x6c\x92\x65\xb8\x41\x73\xd7\x34\x11\xef\x54\xce\x25\xeb\xe4\xda\x80\x94\xa2\x40\x55\x60\x35\xc7\x64\x14\x8d\x64\x37\x08\x13\xdb\xc9\x66\x5e\xb2\x9e\x0c\x4a\x8a\x11\x4b\xbd\x60\x48\xbb\x66\x63\xd9\xdc\xca\x62\x3b\x73\x25\x39\xb1\xc1\x5c\x6e\x73\x44\x72\x1f\x65\x03\x45\xbb\x6d\x3b\x1d\x95\x46\xc9\x93\x4a\x45\xb7\x96\xcc\x13\x65\x33\x5a\xa9\x94\xcb\x59\xba\xe9\xb4\x14\x19\x8d\x5a\xcc\xbb\xbb\x14\x32\xc9\x26\x74\x2a\x26\x66\x1d\x95\x8a\x9d\x43\x42\x51\x20\x2b\xdd\x14\xda\x8b\x0d\xc9\xf6\xaa\x16\x3b\x31\xeb\xcd\xf5\x70\xb1\x91\xb1\xf9\x95\x39\xc0\xa6\xf7\xb3\xb6\xb9\x54\x49\xe1\xa3\xda\x56\xf2\x06\xcd\xe9\xf2\x05\x22\x0a\x72\x41\xbf\xd4\x4f\xe5\x2a\xa5\xa8\x40\x82\x61\x7e\x54\x52\x06\xfd\x45\x85\x55\x87\xe7\x8c\x20\x48\xa7\x21\xa0\xa1\xd1\x3c\xce\xd6\x3b\x37\xa5\x62\x47\x0b\x5a\xa2\xe5\x6c\xaa\xc2\x09\x12\x17\x93\x38\x36\xab\x57\x45\xc4\x00\x29\x38\x23\x2c\xb2\x8b\xf5\x12\x8c\x42\x26\xdd\xb4\x22\x0e\xd2\x59\xcd\x34\xc4\x37\x03\x06\x3b\x08\xa6\xd2\x4d\x8a\x08\x35\x1d\x9e\xa4\x03\xd4\x98\x1c\x88\x94\x10\x92\x32\x78\x1c\xa2\x20\xa3\x73\x98\xc2\x87\xbc\xc1\x33\xe9\x56\x2a\x89\xf2\xac\x23\x8d\xe7\xb3\xc9\x60\x55\x9f\xcd\xd9\x6d\xf3\x4a\x95\x35\xdf\x0e\xfc\xfe\xc8\xd1\x82\x55\x3e\xed\x04\xa8\x52\x89\x4a\x1e\x0d\x23\xae\xcd\x07\xbd\xd2\x27\xc8\xda\x72\xe0\xb2\xee\x91\xb3\xc2\x43\x91\xbe\x1b\x13\x3e\x76\x38\xfa\x95\x8a\xbd\xff\xc3\xa6\xc7\x9d\xd1\xe8\x91\x86\xf9\x5b\x84\xab\xcc\x3e\x28\xc0\x9a\x62\xc4\x74\xe9\x67\x83\xc1\xbe\x30\xbd\x28\xec\x97\xf8\x52\xd0\x31\x59\x62\x52\xcf\xd2\x7a\xa6\xad\x96\xd4\xec\xfb\x83\x29\x0f\x2f\x30\x73\xd2\x46\xfa\x73\x05\x0f\x16\xec\xa8\xe0\xb9\x02\xc3\x19\xe4\x08\xc2\xb2\x17\xf0\x8e\x21\xa7\x3b\x83\x5d\x7c\x91\xb5\x7d\x93\x15\x3c\x6e\x50\xdc\x5d\x2e\x78\xb3\x30\x1a\x95\x17\xca\xc5\xaf\x19\x72\x78\x21\x10\x55\x22\xec\xe6\xd8\x6c\x71\xd1\xbd\xa8\xa2\xe1\xd6\xde\x53\xe4\x31\x90\xf6\xf8\x47\x57\x57\x49\xd7\x73\x23\x92\x32\xcc\x37\x62\x04\x77\x22\xe6\x7f\x82\xac\x8d\x46\xa4\xce\x37\xcc\x9f\x20\x6b\xb3\x96\x9c\xf4\x3a\xe0\xd3\x36\x41\x48\xe0\xa4\xee\x37\x4f\xae\x0d\x3c\xba\x72\xd2\x0d\xcf\xd4\xd5\xb5\x32\x84\x2a\xe6\x7d\xdd\xbf\xaf\x6c\x3e\x26\x48\x0b\x8b\x89\x14\x04\xa6\x84\x71\x3c\x31\x70\x3b\x39\x26\x26\xfa\x91\x8c\x72\xaf\xa5\x14\x58\x2f\x54\x3a\xa0\x47\x57\x46\xa3\xa9\x8f\xa9\xa2\x6c\xa0\xfc\xa3\x6a\xd3\x81\xcb\x0d\xf3\x59\xc5\x04\xc7\x5e\xe3\x38\xe0\x51\x7f\xc8\x1e\x00\x5a\x0b\x69\xb4\x78\x2b\x69\xac\x44\xbb\x79\xa4\xd4\xc2\xad\x31\x4a\xd6\x25\x3e\x4e\xf0\x1a\xc6\x58\x73\x49\xee\xb5\x09\x44\xd9\xcf\xea\x1a\x90\xb5\x40\x72\x21\x1d\x08\xf9\x29\xbd\xc0\xa5\x27\x82\x5a\x6a\xbc\x9e\xfd\xd1\x82\xe4\x24\x77\xc1\x26\x2b\x3d\x6f\x54\x09\x43\x2e\x91\xfc\xe7\xb9\xb1\x75\xa9\x3e\x28\x05\xcc\x29\x37\xf0\xb8\xac\x3a\x4a\xde\xfa\x04\xc4\x34\x45\x75\x85\x0b\xb8\x70\xe9\x76\xa2\xf1\xc4\x8b\x51\xbd\xc3\x95\x5a\xdb\x46\x5b\x6e\x0d\xc5\x2a\x80\xf7\x56\x98\x2d\x8b\x83\x1e\xbd\x14\x5e\xeb\x69\xee\x52\xef\x76\xb5\x78\xcc\x2f\x5f\x19\x6b\x98\x2c\x0f\xe8\x55\xdc\xeb\xd9\x05\xa7\x68\x63\x14\x81\x0c\x6b\x64\x37\x87\x4e\xee\x81\x18\xd1\xe1\xa9\xb7\xbd\xd5\x7d\xa0\x3b\xdd\x1c\xcf\x42\xce\x39\xc5\x72\x09\x17\x68\x71\x42\xba\x6a\x99\x4c\x0b\x98\xcf\xd8\x09\xb6\x6e\x57\x37\x65\x6f\x15\xa5\x78\xd2\xf6\x9b\x8c\xff\x56\x34\x45\xf2\x03\xa4\xb9\x36\xa7\x24\xea\x49\x91\x68\x26\x11\xd2\x1c\x3d\xa6\x8c\x7a\x02\x90\x2b\x98\x67\x83\x78\x6c\x8f\xf5\x39\x48\x1e\xa3\xb1\xa3\x5c\xd8\x60\x5e\xef\x8d\x8d\x2c\x44\x44\xb5\x34\xdf\xc0\x25\x6e\x2b\x10\x88\x59\xe3\x38\xca\x21\x1a\x67\xa9\xff\xa5\x5d\x13\x66\xe6\xa3\x7e\x6c\x9a\x7e\x0c\x6a\x46\xc3\xcc\x6a\x84\xf1\x69\x70\xc3\x98\xf8\x4e\x4c\x4a\xa6\xed\x8c\x96\xc6\x7d\xc8\x55\x8c\x9a\x4a\x13\x4c\x70\xcb\x3c\xb1\x64\xd2\xd3\x63\x4a\x07\x4b\x79\xb9\x56\x52\x25\x5f\x01\xf8\x83\x8c\xf5\x21\x67\xe2\x57\x31\x5d\x64\x4e\x84\xa6\x57\xae\x16\x47\xa3\x32\x28\x23\x73\x69\x21\xa4\x6a\x29\x78\x2a\xae\xeb\xc7\x11\x3c\xfa\x1d\xe3\xb9\xf1\xd9\x56\xca\x0d\x8a\x33\xc9\xf5\xca\x43\xeb\x91\xf6\xdc\x18\x5b\xed\x67\xc5\x8b\xe4\x32\x35\x17\x30\xcf\x11\x7b\x32\xe5\x25\x42\x4a\x7d\x64\x47\xb0\x23\xe3\xba\x92\xd7\xb3\x6b\x5c\x81\xf4\xcc\x72\x81\x43\xd3\x88\x1d\xf2\x7d\xdb\x6a\x89\x77\xd0\xca\x25\x95\xa8\xb3\x6d\xa1\xba\x17\x91\x55\xdb\x93\x8d\x07\x66\x25\xae\x13\xd4\x83\x5e\x2f\x24\xd1\xc9\x60\x50\xa3\x09\x8c\x43\xc7\xad\xc2\x37\xf9\x06\x7c\x2e\x5c\xa4\xa9\x84\x2a\xd5\x64\x1b\x2c\x19\xb0\x13\xd6\xd2\x19\x9b\xee\x41\xe3\x73\xa5\x62\x9b\x99\x5d\x14\x9b\x26\x8e\x99\x87\xf4\xe9\x51\x76\x98\xa1\xaf\x18\x85\xb6\xfe\xa2\xde\x28\x8c\x19\x8a\xd3\x36\x93\x19\x1c\x38\xd5\xc6\x9c\x98\xf0\x6f\x16\xdf\x12\xb2\x14\x4b\x65\xf5\x81\x9c\x32\xc5\xc4\x81\xaf\xad\x5f\x45\x99\x82\xc7\x38\x17\xae\x54\xec\x4f\xd8\x63\xbe\xe9\xad\x4a\xee\x8b\xba\x90\xb2\xd3\x72\xdd\xc8\x00\x87\xaa\xa9\xd7\xed\x46\xe7\x72\x3b\x36\x34\x47\x2b\x95\x8f\xda\x14\x2d\xd9\x59\x05\x6a\x7a\x17\x1e\x48\x0f\x28\xa6\x3a\x9e\xf5\xfa\xb8\x4c\x8e\x43\xf5\xea\x63\x1e\x69\xe5\xf4\xc0\xf1\xc3\xb4\x65\xb5\x6d\x2c\x06\xd3\x1b\x43\x31\x42\xcd\x31\xda\x37\xc3\x05\xdd\xa0\x13\xd0\x3b\x3d\xc6\x6d\xae\x3e\xd2\x21\x71\x7a\x8b\x66\x7a\x25\x9e\x7c\xae\xb1\x94\xd9\xbb\x3d\x33\x78\x0c\x2a\xc8\xf8\x20\xce\xe6\x3c\x42\x21\x30\x73\xf3\x23\x93\xf2\x9d\x74\x97\x65\xae\x7d\x1f\x9a\x58\xdd\x89\xc3\x32\x9b\x3a\x18\xca\x57\xb0\x9e\xf7\x2d\x1c\xe7\xcb\x4f\xc9\xa5\x91\x96\xae\x0c\x40\x13\x2e\x76\xa0\x9c\xb8\x47\x98\xe6\xfb\x38\x9a\xb0\x5d\xc7\xe5\x85\x38\xbb\x39\x16\x18\x28\x0f\x0e\x91\x3a\x89\xa9\x54\x5a\xd6\xc9\x23\x9f\x3e\x79\xe8\xf8\x91\x43\x16\xb6\x8e\x3e\xf9\xf4\x33\x27\xad\x76\xdd\xa3\x1d\x7f\xd8\x25\xa1\x0d\xf9\xea\x34\xe8\x8a\xcb\x74\xb4\x34\xa9\xd9\xe6\xb4\xde\x71\x66\x9e\x84\x76\xc1\x79\xd7\x54\x42\x98\xb4\x36\x58\xc9\x24\x36\x5a\x2f\x3a\x48\xcb\x3b\x2e\x50\xf2\x2c\xc3\xae\x0b\xcd\xda\x02\x56\xcb\xac\xdb\x3d\xcb\x45\x8b\x9c\x10\x5c\x17\x83\x05\x97\x24\x0b\x6e\x0a\x3f\x8a\xe6\x92\x1e\x24\xca\x9d\x67\x76\x4c\x2b\x0f\x9e\x52\x5e\x49\xda\x37\x43\x24\x96\xb8\xec\x1c\x95\xae\x78\xb0\x79\x62\x96\x0f\xf5\x31\x1a\xb1\x82\xd4\x39\xe2\x14\xed\xa1\x96\x22\x5b\x9f\x5c\x8b\x4a\xa1\x4b\x46\x87\x9a\x59\xb5\x13\x83\x26\x09\x47\xd9\xf2\x57\x8c\x9a\x79\xfd\x9c\x6b\xa8\xb9\xe8\xea\x8e\xbe\x7d\x83\x4b\x86\x7d\x06\xfb\xe8\x8f\xad\x7d\xed\x4a\xc5\xfc\x85\x3d\xe7\xe3\x86\x6e\xa6\xc2\x89\x18\x1d\x56\x61\x2b\x71\x2e\x21\xbb\x5e\x49\x0f\x19\x73\xc6\x09\xf7\x98\x18\xec\x1e\xa6\x7a\xa3\x0a\xa7\x2d\xc6\xf1\x8d\x4c\x70\x48\xdc\xf3\x68\xf7\x53\x5e\xd4\x7f\x4a\x28\x31\xe2\xad\x30\x95\xbd\xf5\xf2\xbd\xdd\x5f\xd8\xdb\xfd\xa9\xde\xee\x6f\xe3\x20\xd5\x5b\x1d\x9b\x53\xe2\x78\x2c\xd7\xf9\x93\x99\xe0\x9d\x78\xfc\x97\x59\xc8\x41\x55\x43\x49\xaf\x12\xaa\x04\xe2\x51\x7a\xfc\x70\xee\xc8\x4f\x2b\xdb\x98\x3a\x0b\x38\x70\x60\xb5\x31\xcc\x02\xb0\x9b\x9c\xff\xcd\x7d\x5a\xec\x48\x6d\xb7\xe6\x3c\xf2\x61\x39\x17\x43\x47\x79\x74\xea\xb1\x60\x95\xe7\xe7\xf9\x6c\x17\xcd\x45\x8e\xbe\x24\x4a\x57\xb8\xa4\x58\xb7\xc8\xba\xa0\x1a\x62\x7d\x91\xb5\xb0\x64\x53\xa7\x81\x03\xc7\xb2\x50\x33\x70\x42\x3c\xe9\xbc\x22\x49\x36\x5d\xdd\xd3\x6a\xb1\xea\x9d\x2e\x91\xbe\x44\x2a\xaa\x08\x35\xcb\x13\x1b\x87\xdb\x92\xed\xb4\xa7\xef\x3e\x78\x67\xc7\x12\xc6\x99\x48\xb2\x3c\x91\x9d\x40\x05\x82\x10\xdf\x32\xdc\x3e\x0e\x1f\x4c\x71\xb9\x81\xe6\x34\xaf\xfb\xfa\x3c\x31\xd3\xef\xa5\x6c\x72\x5e\x7c\xfa\x28\x4b\xcf\x9c\x2c\xf5\x91\xba\x45\x1a\xbb\xaf\xf4\x31\x41\x08\xaf\x71\x6e\xb7\x1b\xd8\xab\x47\xde\x2a\x09\x86\x11\xb2\x17\xc8\x7e\x34\x81\x58\x96\x55\x48\x13\xcb\x8a\x63\xfc\x79\xe7\x53\xf6\x71\xd3\xad\x48\xde\x94\xa6\x15\xec\xd4\x4b\xcd\x63\x63\x1b\x49\xac\x71\x5a\xee\x4e\x5b\x79\xb2\xa0\x95\x94\x41\x4f\x2b\xdc\x76\x13\xda\xef\x83\x76\x0b\x24\xac\xee\x8e\xe6\x9a\x2c\xb4\x11\x6a\xf9\xbb\xdd\xf0\x13\xb9\x86\xd3\x66\x47\xad\xe1\x4e\xa9\xf9\x78\xb6\x85\xc4\x72\xa9\xd5\xd9\xbd\xee\x94\x17\x78\x77\x9e\xcb\x36\xa6\x8d\xa1\x5a\xdd\xdd\x6e\xeb\x99\x6c\x5b\xa6\x7d\x55\xab\xbf\xdb\x23\xf5\x68\xae\x6b\x39\x93\xad\x56\x6f\xb7\x1b\xfd\x58\xb6\xd1\x94\x15\x58\x6b\xb0\x53\xe6\xc8\xd6\x6e\x46\xe1\x58\x9d\xee\xc7\x68\x5c\x61\x84\x8f\x9b\x4e\x8c\x0a\x5b\x51\x7e\x06\x5a\x67\xb7\xd5\x8c\x2c\x3d\x4b\x3b\xe0\x00\x6a\x65\x5b\xed\x80\x03\xa8\xe9\xed\x24\x0e\xa0\x96\xb7\xd5\x52\xe2\x00\x6a\x7a\x5b\x99\x77\xad\xb8\xb5\xb6\xad\x26\x33\xd5\xcc\xd2\x32\xc4\x4e\x39\xbd\xad\x06\x21\x76\xca\xf4\x76\xe4\x43\xaf\xd6\xb9\x6d\x35\x23\x0a\x4f\x6e\xe5\x34\x84\xb5\x6b\x1d\xd9\x62\x13\x50\x72\x4a\xfd\xe9\xb7\xdc\xb8\x75\x7e\xab\xcd\xa4\x2b\x98\xa9\xb5\x54\xa4\xc5\xd6\x53\xdb\x6b\xd1\xac\x64\xa6\x56\x8d\xa5\xff\xc4\xf6\x9a\xd4\x35\x4c\x69\x4f\x0b\x3f\x0b\xb7\x4e\x6e\xb5\xa9\xa4\xf0\x54\xce\x50\x3e\xd1\x8e\x6d\x9d\x33\x44\xc9\x29\xf5\xcb\xd3\x04\x0b\xb7\x0e\x6d\xb5\x7e\x55\x72\x1a\xfe\x3a\x78\x63\xeb\xe9\x2d\xf7\x00\xca\x4e\x69\x23\x15\x4c\xb2\x75\x78\xab\xcd\x98\xc5\xa7\xb4\x94\xf6\x09\x80\x5b\x67\xb6\xda\x56\xba\x82\xc9\xad\xe5\x36\x92\x16\x6e\xd1\x3a\x23\x22\x0c\x09\x5f\x46\x79\xda\x16\x11\xc8\xd7\x99\xc1\xe1\x38\x4a\x3c\xd2\x7d\x3c\xe3\xe4\x8d\x55\x2a\xe2\xb2\x78\xc9\xe6\x1b\x79\x67\x91\xa4\x1c\x6e\x32\x84\x29\x6a\x0a\x80\x7f\xe2\x7f\x13\xbf\x6d\x9f\x36\x8f\x4c\x13\xdb\x99\x8f\x7c\x30\x65\x3b\xb3\xd0\xf8\x40\x9c\xf8\x03\xfb\x4f\xe5\x0a\xec\xb3\xe3\x1f\xa1\x04\x87\x18\x73\xd7\x96\x34\x64\xa3\x26\x99\x9b\xe4\x96\xf0\x21\xfc\x9f\xdb\x74\x4b\x98\x7f\x97\xfc\x5e\xb8\xf4\xf7\x9c\xdb\x3d\x90\x70\xe9\x1f\x3f\x7c\xf6\x33\xb4\xbf\xff\x0b\xc5\xce\xed\xc6\x45\x7d\x2a\xf4\xcf\x96\x7a\xc7\x5e\xf0\x74\x3d\xfd\xf0\x3d\xe7\xff\x2b\xfd\x36\xf8\x43\x5b\x78\xc7\x07\xc1\x11\xba\xde\xd9\xc9\xb1\x11\x74\x5c\x89\x4c\xb4\x9b\xa2\xf8\x21\x7b\x11\x0c\x64\x5f\x12\xfe\xa7\x13\xac\x2e\x07\xcb\xc1\xf9\x89\xd1\x4b\xd4\x33\x71\x8d\xa6\x8e\xfe\xb1\x30\x7b\xf4\x8f\x7d\x63\x23\x7a\xec\x9f\x12\x81\xc3\x08\xa0\xf1\x48\x61\xc0\x0c\xc3\x9f\xcc\x07\xa6\x84\xe8\x28\x0e\xe1\xb1\x93\x88\x1b\x49\x38\xc7\x7c\xbe\x7d\x46\xbe\x8e\x4f\x5c\xa6\x1d\xed\x8c\x0d\xca\x31\x6b\xbc\xa3\x2d\x86\xd3\x38\xe7\xf9\x7e\xad\x2b\x4d\x82\xe4\x43\xcc\x9d\xbe\x9f\xcc\xac\x15\x0f\x34\x6c\xac\x41\x3b\x1b\x8c\x5d\xa6\x58\xb0\x15\xb9\xbf\xd6\xfc\x85\x2d\xab\xd8\xeb\xf9\x74\x67\xe6\xe5\x85\x39\x71\x71\x49\x92\xe0\xa9\xe3\x9a\x53\x37\x84\x04\x65\x42\x7e\x26\xf8\x73\x71\xc8\xe4\xb5\x70\xc6\xe8\x85\xcf\xe8\x9e\x34\x31\x25\x3a\x82\x27\x6e\xa0\x4c\x10\x4f\x93\xa9\xb6\x1e\xc5\xd3\x2c\xbd\xb5\xf0\x9a\xdb\x0b\xe4\x39\x26\xbc\x66\xa6\x2d\x63\x42\x6d\x3d\x8e\xa7\x51\xf8\xdf\x11\xc4\xb3\xc8\xbb\x83\xa1\x44\xa5\xf4\xa5\x8c\xb6\xb4\x5b\xeb\x6e\x34\x79\xdd\xfd\xc8\x99\xee\xd9\x8f\x7f\x7e\xdf\xf2\x98\x75\x37\xef\x10\xa2\x78\xb9\xd4\x6e\x01\xb6\xb1\x5c\xaa\x88\x89\x53\x1d\x2f\xa4\xc2\xd4\x29\x35\x60\xdc\x22\x9a\xc4\xf3\x9b\x5c\x6d\x91\xd7\x20\x88\xca\x57\xe8\x99\xc3\xc4\x41\xb9\xcd\x2d\x8a\x5a\x67\xe9\x68\x64\x0b\x79\x57\x48\xbb\x2d\xde\x77\x43\x7a\xe7\x3b\xab\x25\xb8\xd0\xdb\x9d\x49\x13\x24\x82\xe9\x03\xbc\xf5\x14\xf5\xd7\x8c\x17\x8e\xe6\x54\x63\xdb\x9c\x49\xbb\xbc\x07\x49\x76\x20\xc1\xbf\xc9\xad\xf7\x7b\x3b\x9f\xf7\x76\x3e\x22\xf6\xed\xf1\xfd\xc3\xcf\xf6\xce\x7d\xa6\x58\x02\x7f\x54\x38\x52\xc9\x38\xeb\xe6\x1a\x9b\xf2\x29\xa3\x5d\x77\x1b\x5b\xa4\x94\xd3\x99\xc2\xc0\xb6\x45\x8e\x68\x72\xce\xb8\x4d\x3f\x36\x39\x77\x37\xd3\x43\xe0\xee\x2b\x16\xd6\x45\xbb\x81\x29\x51\x08\x95\xaa\x5e\x14\x76\xf0\x43\xd2\x17\x4a\xde\x59\xa6\xdb\xed\x7e\x4c\x28\x19\xac\xc0\x89\xa4\xe9\xf3\x52\x5a\xeb\x17\xe5\x2d\x0c\xc0\x0a\xaa\xfe\x07\x53\x3e\x76\x67\x5a\xf4\xd2\x15\x2c\xec\xdf\x66\x64\xcc\x1d\xaf\x6b\x0a\xed\xd9\x16\xb5\x05\xed\x3e\x70\xc7\x31\x35\xf3\x81\x7d\x85\xef\xca\xac\xab\x57\xfd\xa9\xb1\x25\x4f\x3a\xb2\x8d\xbc\x3b\xd9\x4c\x78\xde\x7d\xdb\x71\xaa\x67\x8e\x5c\xda\x0d\xe1\xfe\x1d\x04\x1e\xce\xf8\xe8\xd3\x4e\x7f\x56\xd4\x94\x37\x66\xb4\x9c\xb8\xba\x4d\x6c\xf8\x44\xfa\xc8\xf6\x7c\x44\x7e\x58\x7b\x86\x32\x27\x2a\xb8\x6d\x9a\xd9\x0d\x56\xce\x6b\xfc\x6c\x4e\xaf\xf2\xb2\x26\xdd\xc3\xbc\xfb\x6b\xd1\xdb\x05\x38\x93\x01\x37\x49\x56\x5d\x3b\xe3\x53\x4e\xc5\x21\xe0\xee\x36\xc8\xa2\xbd\x4e\x7d\x58\x36\xf3\x01\x68\x79\x36\xa7\x53\x1f\xc8\xb9\xbd\xdc\x96\xbf\xa5\x19\x42\x00\xcf\x2a\x04\x20\xe2\xb2\x90\xb7\x89\xf7\x73\x45\xc7\x8c\x63\xe5\xb6\x16\xb2\x05\xc1\xb5\xdb\x66\x4d\x66\x4c\xd5\xb4\xf3\xab\xfd\xd9\xe0\xd7\x11\x1b\x12\xd3\x4d\x34\x54\x21\xa3\xcf\x44\x19\x5c\xf6\xe5\x71\x49\xfb\x46\xcf\xa2\x93\x7b\xb1\x60\x15\x30\x89\xce\x9d\x76\x68\x6d\xce\xe6\x59\x1b\xc6\x96\xeb\xcb\xf3\x13\x4d\x60\xdd\xb5\xa2\xb8\xd5\x69\x7e\xda\x3f\x9e\x9f\x66\xde\x04\xa4\x12\xf7\xe3\x47\x8a\x5d\x73\xe1\x7d\x45\x91\x5b\x27\xee\x21\x0a\x98\xc8\x0b\x0d\xa6\x91\xbe\xba\x84\x03\xae\xe2\xac\x20\xb5\x8a\xa2\xae\x4e\x3e\x7c\xca\xfa\x05\xdb\xf1\x5e\x26\x73\x04\x85\x7d\xa7\x5c\x86\xe0\xac\x56\x40\x8d\xb8\xf6\x1e\x2d\xc9\x0f\x62\x63\x30\x9c\xb3\x86\x54\xaa\x7b\xdd\xe4\xca\xe5\x71\x37\x8c\x1e\x0d\x82\xa8\x52\xb1\xf3\x6e\x08\xec\x21\xc4\x33\x3c\x22\xa3\xa2\x1b\x47\x0c\xca\x2e\x35\xac\x54\xec\x21\xc0\xce\xb0\xbe\x1a\xaa\x2d\x35\xbc\xbe\x19\x8d\x86\xf5\xd5\xe0\xb9\x82\xd4\x73\x64\xf9\x8c\x17\x65\x3e\x20\x5c\xe0\x0d\x61\x28\x0f\x97\xc2\x48\x34\xa6\x60\xc7\xdc\x2d\x24\x4f\x9f\xe6\x7a\x01\xb3\x0f\x80\x39\x78\xa5\x22\xce\xb8\x84\x99\xf7\xc9\xb5\x01\x39\x20\x1f\x4e\x02\xc2\x46\xd8\xbe\x68\x2e\x72\xa2\xfa\xc0\xe5\x33\xf7\xc9\xa0\x4b\xc0\x59\x85\xb4\x64\x91\x27\x7d\x9d\xe9\x27\x7d\xae\x6d\x7b\x33\x86\x94\x2d\x0a\x23\x1b\x68\xf7\x4f\x27\xf9\x38\x3e\x46\xce\x7a\x1d\x62\x61\x3f\xf9\xd2\x77\xc3\x63\xc1\x59\xce\xb4\xe5\x85\x24\x55\x78\xfa\x7e\xea\x2c\x61\x4a\xd5\xb3\xb0\x38\x67\x8b\x33\x39\x9e\x19\x8c\xfd\x2e\xf8\xe6\x08\xed\x4e\xce\x70\x2c\xd1\x26\xc7\xe4\x38\xc1\x59\x2f\x9b\x25\x36\x14\xd6\x64\xb8\x48\x26\x54\xa5\x10\x61\xe2\x31\x96\x5a\xaa\x85\x2b\x04\xe3\x55\x16\x73\xd4\x56\xcb\x59\x34\xbc\x32\xb0\x02\xaf\x0c\x54\xa7\x02\xbb\x8c\x79\x02\x96\x7e\x77\xc6\x2b\x35\x0a\xa4\x16\x04\x87\x8b\xfb\xb6\x85\xd2\x6f\xd4\x68\x51\xb8\xcd\x94\xd0\x46\x73\x8a\x19\xbd\x4a\x45\xbd\xe4\x3f\x2d\x33\x3c\xce\x82\x55\xa1\x48\xd8\x1e\x12\xdd\x8a\xe5\xb3\xae\xf4\x50\x39\xc4\x59\x64\xe3\xc3\x35\x2a\xdf\x67\xd9\xef\x98\x08\x43\xfc\xae\x74\xd3\xf1\x84\x17\x46\x84\x12\x66\x4b\x36\xe0\xa2\xac\xa0\x25\xf3\x71\x7d\xd6\xc3\x13\xd8\xb4\x66\x19\x6d\x0a\x76\x89\x13\xb7\x2d\x21\x28\x3d\x84\x16\x36\x08\x01\x1f\x53\x33\x04\xb0\xcb\xf2\xa8\x93\x3c\x42\x82\x79\xe3\x94\x1b\x98\x54\x2a\x44\x3d\x64\xce\xb4\x2e\x2a\xe0\xe9\xaa\xf5\x6c\x85\x28\x36\xd2\x4d\x56\x97\x2d\x15\x75\x68\x4b\x55\x26\x13\x90\x13\x76\xf6\x98\xaf\xd3\x99\x5c\xd5\x13\x19\xac\x9e\x8f\xea\x8a\x53\xa4\x42\x86\x2f\x2a\x3b\x43\xc4\x05\x19\x43\x76\x2b\x93\x85\x39\x85\xb1\x69\x8b\x27\x0b\x9b\x74\xd3\x20\xdf\xcb\x14\x4f\x25\x86\x30\x41\x71\x21\x6b\x19\x4b\xe3\x98\x51\x2c\x66\x49\x91\x8d\xd0\xae\x55\x38\x50\x08\xc1\xce\x42\x2e\x38\x63\xd1\xd6\x16\xdc\xb9\x1c\xa6\xcd\x7c\x9c\xde\xb2\x8b\xd7\xd2\xc5\xbc\x3a\x79\x2a\x4f\x2a\x34\x69\x7a\x8d\x2b\x38\x1b\xf1\xb6\x37\xa9\x26\x16\x1c\x4f\xf8\x38\x37\xf8\xc6\xd2\x12\x0e\x7c\x2f\xb2\xad\xba\x85\x30\xcb\xbb\xc2\x68\x25\x41\x8f\x5b\x8d\x36\x5e\x68\xa0\xb6\x50\x1c\xe4\xda\xb1\x70\x80\x1e\x84\x07\x15\x07\x68\xb5\x8a\x98\xc3\x8a\x4a\x52\x55\x12\xac\x69\x32\xf7\x55\xe6\x29\xcd\x4c\xf7\x55\xde\xb8\xd2\x08\x7b\xe9\x3b\xa4\x54\xce\xcc\x21\xcf\x4c\x17\x56\x93\x2a\xc8\xb4\xe6\x99\x07\xdc\x9d\x29\x77\x49\x9d\xed\xde\x25\xa5\x2f\xca\xdf\x4d\x97\x48\xbd\xb5\x4f\x7f\xfc\x0b\xfb\x1e\x71\x8b\x8f\x30\xd5\x51\x61\x26\x68\xc0\x94\x8b\xa4\x7d\x5b\xbd\x48\x5a\xc0\x56\x38\x70\xe9\xc4\xc3\x8b\x74\xfb\xe2\xf4\x30\x7d\xce\xb5\x6f\xe6\x63\xae\x07\x7b\x1b\x63\x20\xfa\x2e\xbb\x86\x29\xf0\xf2\xfd\xee\xe2\xc5\x95\xe3\x47\x9f\xfb\xc4\xf1\xc6\xd1\x31\x17\x9a\xb0\x4d\xad\x24\x4c\x95\x3d\xc1\x9e\x7e\xbc\xa2\x8f\xc9\x26\x9c\x89\x34\x8c\x30\x69\x13\xcf\x44\xa6\xde\x27\xc2\x99\x0f\xb0\xf7\x64\xb4\x6a\xd4\x5d\x25\xd9\xe3\x5b\xdc\x92\x0b\xf0\x93\xe2\x5b\xbb\xf0\x0e\xf2\xc3\x78\x5f\xd6\x97\xb8\xc8\xf6\xe0\x99\x3d\xd7\x87\x77\x19\xcf\x67\xa2\x62\xbc\xbb\xf8\x3d\x20\xd5\x47\x9e\x38\x7f\xa6\x31\xd6\x70\x2e\x15\x4b\xa3\x88\xd9\x77\xf5\xfe\x7d\xd7\x6e\x29\x72\xa1\x48\x66\xba\x79\x1f\x73\xef\x9e\x3b\x5f\x9b\xca\xd9\x3b\xe6\xea\x34\xfe\xef\x32\x8e\x86\x10\x64\xbb\x72\x99\xbe\x6b\x9c\xee\x4d\xe6\xf4\xc1\xd9\x23\xbd\x0f\x84\x6b\xde\x18\x4e\x9f\x31\x22\x91\xbe\xa6\x28\xbc\x18\x1d\x1b\x99\xc8\x88\xac\x36\xc5\x62\x74\x7f\xd1\x11\xfa\x56\x62\xc8\x40\x45\x1f\xdc\xce\xa5\x12\x4c\x80\xf4\x22\xf4\x41\x79\x19\x02\xdd\xcc\xc6\x7b\x2e\x38\x0a\xff\x40\xee\x5e\x6e\xdf\xa4\xfe\x15\x64\x4b\x45\xfd\xdc\xc6\x75\xc7\xcc\xcb\x1e\x20\x53\xf3\x22\xb2\x9a\xac\x7c\x1f\xc6\x8f\x14\x22\x0c\x36\xa6\x33\x69\x7a\xe9\x00\x4d\x66\xc8\x4a\x75\xc3\x90\x89\x5c\x99\x5e\xec\xb7\x1f\xa9\x66\x66\x95\x56\xd8\xec\xd5\x96\x23\x6a\xa5\xac\x51\x8d\xc0\x86\x38\x65\x71\x5a\x6c\xbc\x9a\xda\xbb\x8e\xcd\x0f\xb2\xf6\xc6\x2b\xdb\xbb\xaf\x18\x37\xd6\xc5\x3c\xbb\x4f\xf2\xec\x20\x1f\x0c\x6c\x61\x2a\x4f\xc9\xd1\x9d\x89\x79\x22\x37\x1a\x86\x35\xaf\x63\xde\x79\xcf\x7c\x6b\x62\x5e\x5d\x88\x09\xc5\x88\xdb\x0d\xa8\xbf\x96\x0f\x6e\xb2\xe3\x05\x45\xc9\xec\x94\x61\x6d\x50\x74\xdc\x3e\xd1\x6a\x56\x19\xb6\x92\xbc\x07\x94\xb1\x66\xb2\xf0\x68\x5e\xda\xc5\x98\xac\x22\x4f\xdd\xf8\x16\x38\x79\x16\x8c\x5d\x87\x1a\x3b\xe7\xd0\x51\x7c\x84\x7d\x87\x6f\xf0\x87\xce\xb4\x7d\x37\xcd\x99\xa4\x5a\x08\x77\x52\x95\x76\x9d\xf5\x18\x9b\x26\x52\xc3\x31\x26\x52\xdd\x16\x69\x3b\x43\x65\x22\xd5\x4d\x9b\x48\x99\x3f\x71\x37\x6b\x22\xd5\x1d\x6b\x22\xd5\x1d\x8d\xba\x59\x13\xa9\x6e\xda\x44\xaa\xeb\xf8\xb3\x98\x48\x99\x7e\x93\x22\xdb\xc5\xa1\xf0\xc8\x47\x62\x84\xbb\x08\x77\x0c\x13\xa9\x6e\xc6\x80\xa9\xab\x4c\xa4\x52\xe9\x4b\xdd\xbc\x89\x54\x47\x9b\x48\x75\x27\x9b\x48\x65\x5b\x28\x5e\xd2\x39\x8a\x5d\xde\x3d\xc9\x0a\x54\xaa\x33\x3c\xd5\xc7\x43\xdc\xc1\x5d\x43\x35\x09\x26\x1e\x83\x78\x38\x98\x76\x0c\xd2\x27\xfe\x80\xb0\x70\x7e\xe2\x75\xa3\xa9\xbf\x14\xd4\x31\x8c\x3c\x3f\x9c\x97\xfb\x22\x01\x4f\xd1\x68\xb4\x71\x1e\x53\x07\x65\x2d\xd6\x76\x48\xe2\x0f\x25\xaa\x7b\xa1\xb0\xc8\x42\x36\x43\xdb\x31\x10\x13\x38\x3e\xcd\x51\x94\xd7\x79\x47\x65\x75\x0e\xcb\xeb\x44\x9c\xb4\x70\x77\xf6\x31\x41\x8b\xba\x24\x89\xcd\x4c\x15\x90\xee\x88\x8c\x86\x55\xc0\x4c\x9b\x1a\x4d\xa0\x08\x08\x14\x61\x41\x22\x7d\x7e\xce\x12\xc3\x78\xaf\x67\x83\x23\x4a\xf9\x52\x8d\x21\xb4\x0e\x67\x88\xc4\x69\x1c\x20\x07\x19\x9c\x21\x92\x6a\x15\x19\xf9\xa5\xe3\x4a\xd6\x22\x6d\xc3\x1f\x79\x63\x4e\x8b\x19\x35\x6b\x32\x7e\x2e\xf1\x6e\x0d\x8a\xe1\x68\xb4\x70\x5c\x58\xe1\xb8\x44\x5b\x51\xcd\x25\x6b\x72\x61\x3f\xe4\xba\x4b\x4f\x79\x18\xad\x79\xbd\x5a\x72\x09\xfd\xe0\xb7\x9a\x66\x9d\x29\xa2\x02\x66\xf6\xfa\x0a\x89\x9a\x36\x72\x16\x09\x0e\x39\x24\x6f\x17\xb5\xe4\x60\x4b\xa4\xc9\x62\x14\xcf\xd4\x5d\x73\x26\x6e\x8b\xe3\x14\x03\x94\x49\xa5\x52\x2e\xa7\x1c\xa4\x26\xe7\x1b\x28\xf7\x0d\xb6\xb0\xc6\xe3\x4c\x98\xe0\x25\xe6\x00\x5b\x95\xf4\x47\x62\x4b\xf7\xc1\x14\x01\xb7\x7a\x4e\xe3\x80\x77\x30\xa9\x94\x62\x4b\x32\xae\x85\x0e\x78\xd5\xaa\xac\x2a\x70\x68\x3d\x10\x43\x71\x28\x5a\x4a\x40\xdb\x43\x4d\xda\xf2\xda\x73\x91\x1d\xa0\x25\xf3\x01\x69\x60\xa0\x86\x9a\xac\x5a\x8d\x63\x9b\x20\xcc\x12\x34\xb9\x90\x62\xe0\x2d\xab\x08\x51\x4f\xbe\x53\x01\xff\x9e\xb5\x05\x7d\x48\x1f\x38\x8d\x03\x81\x81\xb2\x67\xa0\x1c\x00\xca\xae\xe3\x25\x28\x27\xa0\x1d\xa0\xa6\xd7\x0a\xda\xe2\x06\xcb\x76\x91\xbe\x34\x30\x90\x77\x4d\xe4\x45\xc6\xc5\xda\x82\xb6\x15\x88\xc1\xd1\xbb\x6b\xba\xb8\xa4\x73\x94\x77\x12\x70\x8d\xc5\x63\x18\xe8\x8c\x37\xb5\xaf\x38\x50\xbd\x1d\x8d\xd8\xc1\x86\xaa\x74\x1d\x14\xee\x66\x79\x41\xc5\xdc\x00\xaf\x7e\xca\x51\x69\x43\xc7\x4d\xcb\xd0\x41\x59\x42\x1c\x74\x58\xa5\xe2\x1e\x0c\x0f\xc8\xc6\xc3\x31\x34\x71\x39\x4d\x5c\x45\x93\xb0\x90\x26\xa1\x41\x13\x1c\x8c\x46\x26\x1f\x86\xa6\x13\x5f\x49\xb0\x3c\xb5\xa8\x41\xad\xa4\x63\x93\x6a\x82\x2e\x87\xb1\xa0\xad\x2b\x99\x08\x97\x17\xd0\x68\x34\x81\x34\x71\xda\xfe\x1d\xe6\xc2\xba\x9e\x46\x4d\x52\xd7\x70\x12\xca\x44\x1b\xa8\x93\x4c\xd8\x3b\xdb\x40\xa9\x52\xb1\x59\x5d\xdf\x73\x12\x0d\xa6\x38\xdb\x55\x06\xd7\x8a\x0d\xf9\x7c\xc4\xa1\x73\xcc\x8d\xfa\xf5\x55\x8f\xda\x12\x70\xcf\xdb\x72\x99\xae\x06\xb8\x81\xb0\x5b\x5b\x40\x38\xe9\x94\x0f\x7d\x1a\xc6\x0e\x67\x9e\x50\x0d\xe8\xb0\x52\xf1\x0f\xc0\xf0\x88\x0f\x55\x27\x40\x73\xbe\x13\x69\x54\xf0\xd0\x89\xd4\x7d\x15\xac\x25\xc3\xed\x2c\x1d\x4a\x1d\x10\xeb\x84\x19\x1b\x45\x2c\xe8\x29\x6f\x5d\x0e\xc5\x10\xe4\xe6\x50\x24\xee\xe2\x1c\x0f\x93\x42\xff\x6a\x86\x50\x86\xf7\x01\x62\x42\x63\x37\xef\x42\xee\x91\x42\x17\x72\x8f\xa4\x5c\xc8\x3d\xd2\xc6\xa1\xd3\xc0\xbe\x53\x5e\xc0\x43\x71\x0d\x5f\x2e\xfb\x05\xf3\xab\x83\xbb\xb2\xa5\xbe\x31\x5d\x3a\x99\xe9\xc2\xbf\xf7\x9c\xc6\x81\xde\xc1\xfe\x81\x1e\x88\x91\xbe\xd3\x49\xa6\x4c\x02\xda\x3d\xd4\xec\xb4\x7a\x6d\x3c\x70\x4c\xfe\xed\x9b\xfc\x2b\xcc\x4b\xdc\xd1\xa8\x3c\x90\x86\x47\x76\x5f\x7a\xf5\x37\xa7\x55\xdf\x9c\x56\xdd\xd1\x68\x80\xf0\xd0\x06\xb5\x40\xfa\x4d\xa4\x76\x1f\x33\xb4\xe8\x34\x96\xec\xf0\xa0\xb7\x14\x8c\x46\x76\xe0\xf4\x51\xd3\x77\xfa\x38\xac\x56\x51\x33\xac\x56\x79\x53\x46\x39\x98\x27\xd8\x1f\x8d\x82\x58\x8c\x85\xe1\xfa\xcf\x31\x08\x63\x0c\x42\xc1\x10\xcc\xe8\xc5\x0f\x64\xd0\x21\x1b\xe9\xb0\x8d\xbc\x73\xac\x80\xc0\x43\xa7\x71\x60\x78\xd0\x3f\x30\x04\x02\xfb\x0e\x4b\x08\x9c\x80\xf6\x10\x35\x59\x6b\xd8\xd6\x44\x4c\xaa\xf5\x53\xe2\x46\x50\xd6\x2f\x94\x59\xbe\x49\x5c\x8a\x3d\xec\xa2\x39\xd3\xc7\x81\xc6\x6e\xb1\x51\xa9\x84\xf5\xc1\x30\xec\xdb\x81\xed\x0b\xf7\x9b\x32\x34\x88\xed\x63\xca\x49\xaf\x3f\xfb\x08\x26\x55\x18\x27\xba\x86\xe1\xd7\x24\x6b\x99\x96\xf8\x9e\x4c\x39\x9c\x64\x89\x87\x49\x2f\x76\x08\x0e\x1c\x36\x1a\x79\xbc\xb3\xc9\xdb\x8e\xd1\x48\x38\xb8\xa6\x36\x17\x26\x20\x50\x5d\xfe\x0b\x2f\xe8\x70\x4d\x81\x34\x77\x28\x74\xe0\xe9\xb8\x98\xef\x86\x99\x37\x78\xcc\x73\x3b\xcc\x8b\xbc\x4e\xe8\xf8\x09\xda\xca\x57\xa2\x53\xb8\x6d\xf3\x6d\x82\xea\x51\xf0\xcc\x60\x40\xd8\x61\x57\x6c\xf3\xd4\xac\xb7\x7d\x3b\xca\x7c\x42\x06\x31\xb2\xae\x18\x67\xae\x5e\xec\xbc\x43\x2e\x2c\x8a\x5a\x10\x1e\x4b\x63\xfd\xf0\x64\xdd\xda\x7c\xf9\x6f\x56\xd3\x3a\x64\x61\xeb\xff\xf7\x8f\x9f\x2b\xe8\xc6\x17\x01\xf8\x12\x00\x5f\x56\xc0\xc6\xb5\x5f\x69\xe8\x75\x0d\xfd\x46\x43\x6f\x40\x81\xaf\x28\xe0\x26\xd4\x75\x33\xa9\xe2\x4f\x1a\xfa\x83\x86\xfe\xaa\xa1\x3f\x2b\xe8\x2e\xb4\x74\xe7\x67\x50\xe9\xf3\x90\x72\x49\xe7\x7e\x0d\xbe\xbd\x00\xdf\xae\x01\xf0\x2d\xa8\x08\x50\xb8\x9b\xa0\xf0\x33\x0d\xfd\x4e\x43\x40\x88\x8d\x2b\x1a\x67\x68\xf0\x2e\x54\xba\x79\xf9\x8f\x0a\xba\xff\xaa\x40\x54\xb4\xfd\x22\x87\x8e\xf0\x36\xff\xa1\xa1\xd7\x00\xba\xff\xaa\xe8\xdb\x53\x02\x14\x6d\x3c\x23\xc0\x2b\x1c\xfc\xa4\x00\xaf\x25\xa0\xa8\xe0\x33\xbc\xa5\x97\xff\x6e\x35\xad\x47\xc5\xc0\xbc\xa6\xa0\x8d\x2b\x5f\xd6\xd0\xf3\x1a\x7a\x51\x41\xf7\xbe\xa2\x80\xdb\x90\xeb\xf6\x97\x14\xb0\xf9\x32\x6f\xed\xb0\xa8\xec\x17\x0a\xba\xf9\x22\x00\x5f\x03\xe0\x1b\x00\x7c\x53\x01\x37\xbe\xaa\x80\x8d\x2b\x90\xe9\x36\x24\xdd\xbd\xae\x80\xfb\xaf\xfe\x4b\x41\x9b\x2f\x5f\xb5\x9a\xd6\x63\xa2\x99\xd7\x15\xb4\x71\xe5\x1b\x0a\xba\xf9\x6d\x9d\xf4\x4d\x0d\x7d\x47\x43\x2f\x6b\x08\xf2\xdd\x84\x8f\xb7\x5f\x02\x00\xea\xba\xfd\x75\x05\xdc\xbf\x08\x4d\xde\xb9\xcc\x81\xcf\x72\xe8\x79\x0d\xf1\x31\x7a\xec\x39\x0e\xbd\x00\xd0\xe6\xcb\x9c\xdc\x47\x04\x92\xbf\x54\xd0\x8d\xaf\x01\xf0\x75\x00\xbe\xa1\x80\x8d\xeb\x5f\x04\xe8\xda\xbf\x74\xda\xf3\x1a\xfa\xb2\xfe\xfa\x0f\x05\xdd\x7c\x19\x92\xae\x7c\x4f\x43\x3f\x80\x8f\x90\x74\x13\x52\x6e\xbc\xa4\x6b\x00\xc4\x6e\xfe\x58\x01\x77\xa1\x9d\xbb\x2f\xea\x4c\x57\x74\xd3\x90\x76\xf7\x0d\xdd\xcc\xab\x50\xc3\x0f\x75\x52\x02\x41\xad\xb7\xbf\x03\xc0\xb7\x15\xb0\xf9\x32\x1f\xcc\xc7\x05\x4d\x7e\xa5\xa0\x8d\x2b\x97\x14\x74\xfb\xbb\x0a\xb8\x7f\x11\xb2\x6d\xbe\xcc\x7b\xfb\x51\x51\xe0\xd7\x0a\xba\xf3\x57\x05\xdc\x7c\x55\x01\x1b\x57\x7e\x06\x49\x97\x00\x80\x94\x3b\xbf\x82\x94\xd7\x20\xe5\x75\x05\xdc\xbe\xa0\x80\xfb\x97\x20\xf7\xfd\x8b\xff\xd4\xd0\xbf\x14\xb4\xf9\x32\x4f\xfb\x98\xc0\xe1\x0d\x05\xdd\x7c\x5d\x01\x1b\x57\x5e\xd3\xd0\xaf\x14\x74\xf7\x92\x4e\x4a\xb2\xbd\xa1\xa1\xdf\x40\x1d\x90\x7f\xf3\xf2\xaf\x35\xf4\x96\x82\xee\x5f\xfa\x16\xa4\xbd\xcc\x11\x39\x2a\x9a\x7f\x53\x41\x37\xbe\x09\xc0\xb7\x00\xf8\xb6\x02\x6e\xbe\x01\xc0\x6f\x00\xf8\x1d\x00\x7f\x82\xcc\xff\xa5\x80\x8d\x2b\x7f\x00\xe8\xfa\xd7\x14\x74\x07\x3e\xde\x85\x94\xbb\xdf\xd0\x99\x00\xba\xa9\xcb\x5d\x81\xda\x6f\xbf\xa2\x80\xcd\x97\xdf\xb6\x9a\xd6\xc7\x05\xc2\xbf\x51\xd0\xcd\xbf\x2a\xe0\xde\xd7\x14\xb0\x79\x81\xf3\xfb\x27\x44\xae\xdf\x2a\x68\xe3\xca\x9f\x14\x74\xe7\x0d\x9d\xf4\x67\x05\xdd\xfc\x9b\x4e\xfa\xab\x82\x6e\xff\x50\x01\x9b\x97\xdf\x54\xd0\xfd\x8b\x5f\xd4\xd0\x97\x35\xf4\x3c\x40\x97\x5e\x83\x12\x17\xb8\xcc\x7a\x42\x34\xff\x3b\x05\xdd\x7c\x1b\x80\xab\x00\xfc\x53\x01\x1b\x57\xfe\xa6\xa1\x2b\xf0\xf1\xba\x4e\xfa\x87\x86\xae\x29\xe8\x16\x54\x7f\x17\xaa\xd8\xbc\xfc\x9a\x86\x7e\xa6\xa0\xfb\x17\xbf\xa6\xa1\x17\x01\xba\xf4\x45\x05\xdd\xe1\x22\xf0\x09\x4e\xac\x3b\x22\xdb\xe7\x05\xde\xbc\x57\xc7\x04\xde\xbf\x57\xd0\xc6\x95\x7f\x01\x74\xf5\x8b\x1a\x82\x7c\x9b\x97\xff\xa0\xa0\xdb\xaf\x42\xd2\x05\x2e\xc2\x9f\x14\x95\xfc\x41\x41\x77\xae\x28\xe0\x16\x7c\xbb\xf1\x5d\x05\x6c\x5c\x7d\x1e\xbe\x7d\x55\x27\xbd\x08\x49\x2f\xe8\xa4\x6f\x68\xe8\x6b\x0a\xba\xfb\x33\x05\xdc\xbe\xa8\x80\xfb\x97\xbe\xa3\xa1\xd7\xa1\x69\x51\x50\xf4\x93\xcb\xa8\x27\x65\x3f\x79\x9b\x4f\x09\x14\xff\xa8\xa0\x1b\x2f\x03\x70\x01\x80\xef\x29\x60\xe3\xfa\xcb\x1a\xfa\x8e\x86\x7e\xa0\x21\xc8\x77\xe3\xfb\x90\x74\xf5\x9b\x0a\xba\xfb\x3b\x9d\xf4\x6d\x05\xdd\xfa\xa6\x4e\xd2\x95\x5d\x85\x06\x6e\x41\xae\xbb\x7f\x00\xe0\x4f\x50\x3b\x34\x78\xf7\x37\xba\x65\x5d\x27\xd4\x74\xe7\xbb\x90\x49\x63\x00\x79\x6e\xff\x4c\x17\x7b\x55\x43\x3f\xd6\x50\xf2\xf5\x92\x86\x5e\xd3\x90\xc6\xf9\xfa\x0f\xa1\x25\xc0\xe2\x0e\x74\xf1\x86\xfe\xf4\x2f\x68\xf2\x45\x00\x7e\xaa\x80\xfb\x17\xbf\xa1\x21\xa8\xf3\xb6\x68\xe6\xa8\x48\x13\xc8\x0a\xb4\x45\xe2\x33\x62\xb0\x38\x13\x3c\x2d\x06\xeb\x4f\x0a\xda\xb8\xfa\x3d\x0d\xfd\x40\x41\xb7\x5f\x57\xc0\xe6\xe5\x5f\x28\xe8\xfe\xc5\xef\x68\xe8\x65\x0d\x41\xd1\xcd\x0b\x1c\xbd\xff\x14\x15\x5f\x56\xd0\xfd\x8b\x3f\xd0\xd0\x0f\x15\x74\xef\x1b\x0a\xd8\xbc\xc0\x39\xf4\xb8\x28\xf0\x67\x05\xdd\xfa\x9e\x02\x36\xae\xfe\x10\x92\x00\xb8\xfb\x1d\x00\x5e\xd6\x99\x7e\xac\xa1\x57\x21\xfb\x0f\x74\xd2\x25\x05\xdd\xfb\xa6\x02\x36\x2f\xbf\xae\xa0\xfb\x17\xa1\xe4\xfd\x4b\xbf\xd2\xd0\x97\x21\xdf\x05\x3e\x29\x4e\x08\xcc\xfe\xa2\xa0\x8d\x6b\x97\x14\x74\xeb\xc7\x90\x74\xf5\x75\x48\x7a\x55\x27\xfd\x0c\x92\x7e\xa6\x93\x7e\xa5\xa1\xd7\x34\xf4\x86\x82\xee\xfe\x10\xf2\x43\xf5\x9b\x97\xff\xa5\xa0\xfb\x97\xde\xd0\xd0\xf3\xf0\xf5\x02\xd7\x46\x4e\x0a\xd4\xfe\xaa\xa0\x8d\xab\xbf\x51\xd0\xad\xd7\x75\xd2\xef\x14\x74\xf7\xc7\xf0\xed\x35\xfd\xed\x4f\x1a\xfa\x03\x7c\xfc\x95\x02\x6e\x43\xb9\xdb\xf0\xe9\xee\xbf\x14\x70\xff\xd2\x8b\x00\xbd\xca\x11\x3b\xf9\x59\x81\x0f\x1f\xce\x67\x04\x3e\x6f\x29\xe8\xc6\x8f\x00\xf8\x31\x00\x3f\x51\xc0\xad\x37\x14\xb0\x71\xf5\x0a\x24\xfd\x46\x27\x5d\x83\xa4\xdf\x41\xb9\x57\x15\x70\x07\x2a\xb8\xf3\x0a\x00\xdf\x07\x00\x5a\xdb\xb8\xfe\x2b\x28\xff\x07\x00\xfe\x04\x99\x2e\x28\xe0\xee\xf7\x00\xf8\x81\x02\x6e\xff\x51\x97\xd7\x98\x5c\xd7\x68\x5e\xff\x83\x86\x7e\xa7\xa1\x3f\x69\xe8\x75\x8d\xfb\x9f\xa1\xc9\x3f\xeb\xa4\xbf\x69\xe8\xaf\x0a\xba\xf7\xbc\x02\x36\x2f\x70\xe9\xf9\x49\x41\xb6\xbf\x29\x68\xe3\xea\x3f\x34\xf4\x2f\x05\xdd\xfe\xb3\x02\xee\x5f\xbc\xa4\xa0\x7b\x2f\xe8\x24\xce\x62\x9f\x14\x1b\x83\x0b\x9c\xc5\x3f\x25\xaa\xfb\xbb\x82\x36\xae\x7d\x51\x43\x5f\x56\xd0\xad\xbf\xea\xa4\x17\x35\xf4\xbc\x86\xbe\xa6\xa0\xcd\xcb\x7f\x06\xe8\x02\x57\x5a\x3e\x2d\x2a\xbe\xa2\xa0\x8d\x6b\xdf\xd0\xd0\x37\x15\xb4\x79\x81\x8b\x9a\xcf\x88\x7c\x57\x15\xb4\x71\xfd\xcf\x0a\xba\x71\x51\x01\xb7\xfe\xa6\xbf\x5d\x51\xd0\x5d\xc8\xb4\x71\x0d\xaa\xb8\x75\x45\xe7\x4a\xf2\xff\x55\x41\xb7\xff\xa2\x80\x7b\xdf\xd6\xdf\xfe\xa5\xa0\xcd\x0b\x5c\x1f\xfa\xac\xc0\xe2\x9a\x82\x6e\x5d\x55\xc0\xc6\xb5\xef\x40\xd2\x75\x00\xfe\xa9\xbf\xbd\xac\xa1\xef\x29\xe8\xf6\x5b\x0a\xb8\xfb\xba\x02\x36\x2f\xbf\xad\xa1\xdf\x2a\xe8\xfe\xc5\xd7\x20\xed\x02\xaf\xdf\xe5\x8d\xff\xf3\x4b\x0a\xda\xb8\xf6\x63\x05\xdd\xf8\x19\x00\x3f\x07\xe0\x35\x9d\xe9\xd7\x1a\xfa\xa5\x86\x7e\xab\xa1\x37\xa1\xc0\x2f\x14\x70\x13\xaa\xbf\xf9\x15\x9d\xe9\xb2\x86\xfe\xa8\xa1\xb7\x34\xf4\x17\x05\xdd\x85\x96\xee\x68\x2c\x5e\x87\x94\x9f\xea\xdc\xd0\xce\x0d\xc0\xe6\xce\x75\x00\xbe\x0d\x15\x01\x0a\x77\x13\x14\x7e\xae\xa1\xdf\x6b\xe8\xef\x00\x5d\xd1\x38\xbf\xa0\x80\xcd\xcb\x50\xfd\x3d\x20\xdc\xfd\x57\x05\xa2\xa2\x6d\x3e\x97\x5d\xc2\xdb\xfc\xa7\x86\x7e\x01\xd0\xfd\x57\x45\xdf\x02\x01\x8a\x36\x86\x02\xe4\x63\xed\x9e\x15\xe0\xf5\x04\x14\x15\xac\x89\x21\xe2\xeb\xf9\xb2\x18\xa2\x2f\x2b\x68\xe3\xca\x57\x34\xf4\x82\x86\xbe\xaa\xa0\xdb\x5f\x04\x00\x72\xdd\xbb\xa0\x80\xcd\x0b\x9c\x67\x3a\xa2\xb2\xaf\x28\xe8\xe6\x57\x01\xf8\x3a\x00\x2f\x01\xf0\x2d\x05\xdc\xf8\xb5\x02\x36\xae\x40\xa6\xdb\x5f\x53\xc0\xdd\x7f\x28\xe0\xfe\xab\x6f\x2b\x68\xf3\xc5\xe7\x01\xba\xc0\x9b\xee\x8a\x06\x9f\x57\xd0\xc6\x95\x97\x14\x74\xf3\xbf\x74\xd2\xb7\x34\xf4\x5d\x0d\x5d\xd0\x10\xe4\xbb\x09\x1f\x6f\x7f\x53\x01\xf7\x7e\x00\xc0\x2b\x0a\xb8\x7f\xf1\x9a\x82\xee\xf0\x91\xe9\x8a\x5d\xf3\x8b\x00\x6d\x5e\xe0\x73\x85\x08\x84\x5e\x50\xd0\x8d\x37\x00\x78\x13\x80\xdf\x28\x60\xe3\xfa\x97\x00\xba\xf6\xb6\x4e\x7b\x41\x43\x5f\xd1\x5f\xff\xa9\xa0\x9b\x17\x20\xe9\xca\xf7\x35\xf4\x0a\x7c\x84\xa4\x9b\x90\x72\xe3\xb7\xba\x86\xeb\xf0\xed\x27\x0a\xb8\x0b\xed\xdc\xfd\xaa\xce\x74\x55\x37\x0d\x69\x77\xdf\xd4\xcd\x5c\x84\x1a\x7e\xa4\x93\x12\x08\x6a\xbd\x07\x05\xef\x41\xca\x1d\x28\xb7\x79\x81\xe3\xd7\x13\xc4\x79\x51\x41\x1b\x57\x7e\xaa\xa0\xdb\x2f\x2b\xe0\xfe\xc5\x7f\x28\x68\xf3\x02\x27\xff\x8a\x28\xf0\x55\x05\xdd\x79\x4b\x01\x37\x2f\x2a\x60\xe3\xca\xcf\x21\xe9\xa7\x00\x40\xca\x9d\x5f\x43\xca\x2f\x20\xe5\x97\x0a\xb8\xf7\x33\x05\xdc\xbf\x04\xb9\x37\xde\xba\x0a\x69\x17\xdf\x56\xd0\xe6\x05\x4e\xcb\xbe\xc0\xe1\x6b\x0a\xba\xf9\x4b\x05\x6c\x5c\xf9\x85\x86\x7e\xad\xa0\xbb\x3f\xd5\x49\x49\xb6\x37\x35\xf4\x5b\x80\xae\xfd\x00\x6a\x83\x92\x9b\x97\xdf\xd0\xd0\xdf\x14\x74\x0f\xea\xb8\xcd\x69\xd7\x3f\x2b\x30\xe2\x0a\x92\x27\x30\xfa\xba\x82\x6e\xfc\x0e\x80\xdf\x03\xf0\x07\x05\xdc\x7c\x13\x80\xdf\x02\xa0\xf3\xfc\x51\x01\x1b\x57\x34\x74\x1d\xaa\xbc\xf3\x1d\x05\xdc\x85\x94\xbb\x2f\xe9\x4c\x00\xdd\x4c\x6a\x80\x4a\xef\xbd\x01\xdf\x2e\x2b\x60\xf3\x02\x67\x93\xcf\x0b\x84\xbf\xa1\xa0\x9b\x6f\x29\xe0\xce\x9f\x14\x70\xef\xeb\x0a\xd8\xbc\xc0\x57\x88\x33\x22\xfb\x4b\x0a\xda\xb8\x72\x59\x41\x77\xde\xd4\x49\x7f\x51\xd0\xcd\xbf\xeb\xa4\xb7\x14\x74\xfb\x47\x0a\xd8\xbc\xfc\x1b\x05\xdd\xbf\xf8\x25\x0d\x7d\x45\x43\x2f\x00\x74\xe9\x17\x50\xe2\x02\x67\x5c\x5f\x34\xff\x4d\x05\xdd\xfa\xa2\x02\x6e\x5e\x03\xe0\x5f\x0a\xd8\xb8\xf2\x77\x0d\x5d\x85\x8f\xff\xd0\x49\xff\xd4\xd0\x75\xa8\xeb\x6d\x00\xbe\xac\x80\xdb\x3f\x56\xc0\xbd\xdf\x2a\x60\xf3\xf2\xcf\x15\x74\xff\xe2\xd7\x01\xba\xf4\x25\x9d\xf6\x55\x05\xdd\x11\x1f\x25\xd1\xb8\x5e\xb8\x2a\xb0\xfe\x96\x82\x36\xae\xbc\x0d\xd0\xd5\x2f\x69\xe8\x2b\x0a\xba\x77\x19\x80\x3f\x2a\x60\xf3\x02\x9f\x52\x54\xd4\xf1\x6d\x05\xdd\xb9\xaa\x80\x5b\xcf\x2b\xe0\xc6\x65\x05\x6c\x5c\x7d\x01\xbe\x7d\x4d\x27\x7d\x15\x92\x5e\xd4\x49\x2f\x69\xe8\xeb\x0a\xba\x7d\x49\x01\xf7\xfe\x0c\xd9\xe1\xd3\xfd\x4b\xdf\xd5\xd0\x2f\x01\x07\x3e\x0c\x54\xf6\x92\x97\x0c\x04\x86\xff\xa5\xa0\x1b\x7f\x06\xe0\x2f\x00\xfc\x55\x01\x1b\xd7\x2f\x68\xe8\xbb\x1a\x7a\x45\x43\xdf\x87\x02\x6f\x41\xd2\xd5\x6f\x29\xe8\xee\xef\x75\x12\x34\x74\xeb\x5b\x3a\x49\x57\x76\x15\x1a\xb8\x05\xb9\xee\xfe\x11\x80\xcb\x50\xfb\xdf\x20\xe5\xb7\xba\x65\x5d\x27\xd4\x74\xe7\x65\xc8\xa4\x31\x80\x3c\xb7\x7f\xae\x8b\x5d\xd4\xd0\x4f\x34\x94\x7c\xfd\xa9\x86\x7e\xa1\x21\x8d\xf3\xf5\x1f\x41\x4b\x80\xc5\x1d\xe8\xe2\x8d\x2b\x90\xf2\xb6\x02\xee\x7d\x4f\x01\xf7\x2f\xbe\xa4\x21\xa8\xea\x1e\x50\xeb\xb6\x68\x46\x48\x06\x01\x09\x85\xe3\xa2\x40\x3b\x10\x83\xc5\x11\x1a\x88\xc1\xfa\x8e\x82\x36\xae\x7e\x5f\x43\xaf\x28\xe8\xf6\x2f\x21\xe9\xad\x7f\x2a\xe8\xfe\xc5\xef\x6a\xe8\x82\x86\xa0\xe8\xe6\x05\x2e\xba\xbf\x20\x2a\xfe\xae\x82\xee\xbd\xa4\x80\xfb\x17\x5f\xd1\xd0\x8f\x14\xb4\x79\x81\x13\x89\x89\x02\x2f\x2b\xe8\xd6\xf7\x15\xb0\x71\xf5\x47\x90\x04\xc0\xdd\xef\x02\x70\x41\x67\xfa\x89\x86\x2e\x42\xf6\x57\x74\xd2\x4f\x15\x74\xef\x5b\x00\xfc\x53\x01\xf7\x2f\x42\xc1\xfb\x97\x7e\xad\xa1\xaf\x28\x68\xf3\x02\xd7\x78\x43\x81\xd8\x05\x05\xdd\xf8\xa9\x02\x6e\xfd\x44\x01\x1b\x57\x7f\x09\x49\x17\x75\xd2\xcf\x21\xe9\xe7\x3a\xe9\xd7\x1a\xfa\x85\x86\xde\x54\xd0\xdd\x1f\x41\x7e\xa8\xfe\xee\xdb\x0a\xb8\x7f\xe9\x4d\x0d\xbd\x00\x05\xaf\x41\xe3\x9b\x17\x78\x65\x91\x40\xf1\x7b\x0a\xda\xb8\xfa\x5b\x80\xae\xbd\xa2\xa0\x5b\xbf\xd4\x1f\x7f\xaf\xa0\xbb\x3f\x81\x6f\xbf\xd0\xdf\x2e\x6b\xe8\x8f\xf0\xf1\xd7\x0a\xb8\x0d\xe5\xfe\xfb\x6b\x0a\xd8\xbc\xfc\x2b\x05\xdd\xbf\xf4\x55\x80\x5e\xe5\xd8\x46\x52\xd9\xe2\x9a\xfa\x50\xa0\xf6\x7d\x05\xdd\xb8\x0a\xc0\x35\x00\xae\x2b\xe0\xd6\x9b\x0a\xd8\xb8\x0a\x99\x6e\xfd\x56\x27\xe9\x5c\xbf\x87\x72\xff\x50\xc0\x9d\x57\x01\xf8\x21\x00\x3f\x00\xe0\xc7\x50\xfe\xfa\xaf\xa1\xfc\x1f\x01\xb8\x0c\x99\xbe\xa7\x80\xbb\x80\xe4\xdd\x57\x14\x70\xfb\x4f\xba\xbc\xc6\xe4\xba\x46\xf3\xfa\x1f\x35\xf4\x7b\x0d\x5d\xd6\xd0\x2f\x35\xee\x7f\x81\x26\xff\xa2\x93\xfe\xae\xa1\xb7\x14\xf4\xdf\x5f\x57\xc0\xe6\x05\x5e\xf2\xac\x20\xdb\x0f\x14\xb4\x71\xf5\x9f\x1a\x7a\x5b\x41\xff\xfd\x92\x02\xee\x5f\xfc\x29\x24\x7d\x53\x27\x71\xb6\x3b\x2b\x77\x10\x7c\x90\xce\x89\xea\x5e\x51\xd0\xc6\xb5\x2f\x69\xe8\x2b\x0a\xba\xf5\x96\x4e\xfa\xaa\x86\x5e\xd0\xd0\x0f\x35\xf4\x75\x05\x6d\x5e\xfe\x0b\x40\x17\x38\x75\xcf\x8b\x26\x7e\xa8\xa0\x8d\x6b\x2f\x69\xe8\x5b\x0a\xda\xbc\xc0\x75\x8f\x35\x91\xef\x47\x0a\xda\xb8\xfe\x17\x05\xdd\xf8\xa7\x02\x6e\xfd\x5d\x7f\xbb\xaa\xa0\xbb\x90\x69\xe3\xda\x7f\x41\xf6\xb7\x75\x2e\x9d\xff\x5a\x52\xeb\x5b\x0a\xba\xfd\x57\x05\xdc\xfb\x2f\xfd\x0d\x4a\x6e\x5e\xe0\x63\xf9\x9c\xc0\xe7\xc7\x0a\xba\x75\x4d\x01\x1b\xd7\xbe\x0b\x49\xff\x00\xe0\x5f\xfa\xdb\x05\x0d\x7d\x5f\x41\xb7\xff\xa6\x80\xbb\xbf\x54\xc0\xbd\x2f\x2a\x60\xf3\xf2\xef\x14\x74\xff\xe2\x2f\x14\xf4\x0e\x5f\x80\xdf\xf9\x2e\x87\xf8\x74\x7a\xe7\xfb\x1c\xe2\xa4\x7d\xe7\x15\x0e\x71\x3d\xec\x9d\x1f\x71\xe8\x37\x1a\xe2\x83\xfb\xce\x4f\x39\xc4\x57\xff\x77\x7e\xc9\xa1\xdf\x6a\x88\x77\xef\x9d\x37\x39\xc4\x1b\x7b\xe7\x32\x87\x38\x5b\xbe\xf3\x16\x87\xb8\xb6\xf9\xce\xdf\x39\xc4\x99\xf6\x9d\xab\x16\xb6\xfe\xe7\x1b\x00\xbd\xf3\x1d\x9d\x26\xda\x78\x9b\x43\x7c\xd0\xfe\xe7\x05\x0e\xbd\x04\xd0\x3b\x7f\xd2\x69\x1c\xd3\xff\xf9\x3a\x87\xb8\x96\xf4\x3f\x5f\xb1\xe2\xc4\x84\xd1\x4f\x4c\x18\x6d\xcb\xaa\x12\x54\x67\x44\xbc\x6f\xb0\xe7\x5b\x9f\x3b\x35\x6c\x34\x1a\x8d\x1a\xff\xf3\xa1\x23\xed\xf9\x95\xb4\x4d\x24\xd8\x53\xb4\x48\x5b\x98\x88\x17\x19\x5c\x32\xd2\xab\xad\x06\x5d\xaf\xe7\x11\x36\x0f\x40\x38\xcf\x48\x6f\x27\xc6\x96\x96\x34\x36\x31\x62\x50\x54\x2a\xca\x05\x05\xa9\x54\xca\xc2\xb2\x57\x5b\xf8\x92\xac\x89\xa5\xaa\x23\x14\xb1\x1c\x8d\x3a\x52\x26\x8e\x29\x4b\x62\x55\xa2\x28\x48\xe9\x7a\x67\xb9\x19\xc5\xcd\x75\xe9\xd2\xa3\x19\xe1\x01\x0b\xa4\xb1\x1a\x8b\x77\xc1\x5d\xe7\x59\x97\xe9\x37\x68\xa7\x43\x12\x1d\x53\x24\x3c\xe6\x52\x77\x45\x39\xe6\xb6\xd7\x4f\xb3\x21\x3d\xec\x76\xfa\xa4\x49\xc9\xb9\xd2\x09\x12\xe1\x8e\x3b\x70\x97\x3d\xdf\x8b\x3c\x12\x36\x55\xf1\xd5\x74\xd9\xc3\x46\x96\xa5\xe9\x59\x6c\x6b\x7f\x7d\x61\xbf\xa5\xad\xf7\x3b\x8c\xb8\x11\x01\x7c\x9a\x12\x11\x22\x3d\x4e\x41\x1e\x4d\x0b\x28\xb3\x0c\x90\x22\x97\xb2\xfc\x43\xd8\xa3\x61\xe4\xfa\x3e\x54\x67\x13\xec\x29\x43\xbc\xf5\x41\x10\x7a\x9c\xea\xae\xdf\x74\x63\x27\x90\x86\x24\xeb\xba\xea\x10\xea\xf2\x79\xf5\xc3\xd8\xa1\xb6\x2b\x2c\xb8\x86\x49\xf0\xe2\xce\xb2\x33\x94\x0f\x0b\x54\xa8\xc4\x21\x3d\x4a\x0f\x07\x34\x22\xe7\x23\x7b\x88\x3d\x34\xc7\xec\x10\x55\x2a\x91\xed\x23\x23\xc6\x76\x94\x64\xf2\x71\x88\x45\x94\x5c\x68\xd7\x09\x31\xf8\x71\x71\x7c\x61\xb1\x2d\xbb\xee\x78\x31\x96\x01\x8c\xcc\xbe\xe4\x7a\x12\xc4\x8e\x97\xed\x89\x0b\x3d\x09\x79\x4f\x7c\xde\x93\x40\xf4\xc4\x4f\xf5\xc4\x1f\xdb\x13\x3f\x41\x83\xf7\xc8\x15\x3d\x0a\x85\xed\xa3\x9d\x60\x2e\x52\xb5\x67\x1a\x08\x36\x2f\x8d\x38\x5d\x54\x76\x0c\x3b\x30\xc8\x85\xd3\xa5\xf3\xe4\x29\xc8\x88\xe5\x83\x8c\x82\xcc\x21\x76\x0d\x44\x4d\x9a\xba\x09\x4d\x43\x14\xe3\x4c\x1b\xd2\x25\xb2\xb4\x23\x82\x57\x08\x6c\x48\xeb\x94\x7f\x95\xce\xac\x78\x89\x4f\xf2\xe9\x14\x5a\x58\xe6\x9f\xd3\x74\x12\x13\xa4\xee\x76\xbb\x36\xe5\x75\xa7\x28\x27\x0c\x9c\x64\xcd\x6c\x4c\xcd\xbc\x86\x65\x51\x6b\x61\x9d\x4c\xd5\x79\x18\x42\x75\xdb\x91\xea\x81\xc4\x07\xd0\x27\x75\x2f\x7c\x4c\xfa\x99\x23\xdd\xd1\xc8\xf8\xe9\xd1\x95\xd1\x48\xb6\x0d\x61\x7a\x79\xa5\xca\x29\x5d\xc2\x4d\x92\x97\x14\xab\xd0\x64\x8e\x79\x9c\x6b\x82\xd8\x21\x59\xf4\xe0\x19\x12\x71\x16\x93\xae\xa9\x98\xf4\x04\x09\xa3\x60\x66\x7b\x82\x2d\x68\xf1\xf0\x52\xec\xc9\xe1\x8c\x63\x84\xc5\x5b\xae\xf5\xd8\x7c\x58\xe0\x15\x09\x7e\xda\x25\xac\x06\x4f\x3d\xe0\xaf\xe9\x74\x6f\xcf\xde\xac\x8b\xc7\x67\x91\x7e\x7e\x66\xbe\x93\xc8\x78\x77\xe3\xe2\x56\x10\x7e\xae\xc8\xcf\x1b\x73\xca\x0b\xd8\x8e\x1c\xab\xeb\x75\x8f\x0f\xa9\x85\x3c\x6a\x13\xe1\xa6\x06\x3d\x18\xdf\xdc\xb1\x7a\xf1\x90\xe6\x4f\xd2\x6a\xb4\xe5\x18\x4b\x3c\x46\x23\xdb\xf8\xe5\x94\x1b\x98\x4f\x77\xf9\xd8\x6b\x01\x09\xa3\x48\x23\x9c\x53\xb4\xa5\xb1\x92\xa2\xec\xbd\xb1\xda\xd1\x58\x79\x3d\xbb\x6c\x8c\x90\x36\xb1\x4f\x0f\x5a\x32\x51\xc1\x45\x9f\xa0\x89\x42\xf6\xac\x94\x22\x42\xb0\xa7\x06\x77\x7b\x63\x9b\xf6\x77\xb9\x75\x4d\x6c\x2f\xdd\xd3\xef\x16\x57\xb1\x59\xb8\xaa\x88\x97\x60\x0d\xe8\x51\x0b\xc3\x33\x45\x48\x4b\xd6\xf4\xfc\x37\xea\xae\x92\xae\x4e\x9e\x36\x99\x7b\xd4\x51\xd1\xcf\x93\x3a\x1d\x73\xa8\xf9\x27\x51\xa5\x13\xc5\x7c\xfc\xd4\xba\x61\x4b\x23\x75\x59\x85\x12\xdf\x49\x0d\x2a\x41\x94\x53\xad\xae\xf7\x68\x93\xc4\xd2\xef\xa6\x72\xc8\x96\xe4\x37\x9a\x41\xb1\x20\x46\x3d\xd5\x96\xc9\x6e\x05\xef\xc9\x32\xec\xc6\xd5\xe4\xd0\xc2\x2d\x93\xad\xd0\x7a\x51\xb1\x2f\x0c\x3d\x46\x6a\xf2\x1d\xf2\x3c\x38\xce\x35\x5e\x52\xaa\x1c\x53\x1e\x4b\xee\xca\xab\x33\xcc\x1c\xfd\x1c\x5e\x79\x1e\x55\x3f\xeb\x7d\xd7\xf0\x3e\x2a\x1e\x5f\xaa\x2f\xc8\x26\xa8\xc5\xda\x85\x3b\xa0\xd0\x7b\x8e\xd4\x82\xe5\x90\xb0\xb3\xe2\xf1\x19\x3b\xeb\x75\xc8\xbc\xfa\xcb\xf7\x42\xa9\x0c\x45\x0f\x48\xc7\xd5\x21\x5f\xb0\x79\x2b\x34\x60\xa4\xc6\x82\x1a\x61\x2c\x60\x7b\xe6\x21\x43\x3e\x42\x9b\xfa\xda\x5b\x7e\x3d\x21\x51\x5e\xf7\xa8\x17\xc1\x34\x13\x0f\x7c\xb3\x73\x4d\x06\x8a\x8f\x86\x03\x1b\xc5\xea\xaf\xf4\x05\xd9\x51\xcf\x11\x43\xf1\xd4\x57\x66\x04\x8a\xc8\xa4\xc9\xae\x72\x8d\xaf\xda\x47\x2d\xb8\xe0\x55\x0e\x73\x8f\x0b\x3a\x3f\xa5\x2a\xad\x54\xec\xf4\x10\x2b\xec\x0c\x44\xc8\xb9\xd2\xa7\x88\x7b\xe6\x98\x3b\xc8\xe2\x43\xce\x95\x0a\x2b\x05\x97\x8c\xb4\xeb\x13\xf9\x05\xa1\x78\x85\x53\x32\x54\xe1\xdf\x92\x88\xd6\xe5\x54\x9d\xb1\x02\xe4\x98\xea\x35\x45\x97\x03\xaf\x8d\x20\x59\xd2\xb8\x4a\x7d\x1e\xcd\xb1\x25\x26\xf4\xd5\x08\x35\xed\x4c\x0e\xa9\x75\xaa\x1d\xa4\xdd\x8a\xda\xe0\xb5\x13\x30\xa8\x6b\x0c\x10\x8a\x87\x74\x77\xf0\x91\x2f\xb3\x88\x4f\x22\xae\x32\xe3\xa8\x52\x61\x75\x4e\x16\xd0\x6a\x92\x12\x2a\x13\xc9\x62\x65\x60\x82\x10\x8a\xa5\x4f\x01\xc5\x34\x1a\x1b\xd8\xd6\xcd\x30\x78\xf5\xae\x17\x76\x02\x4a\x49\x27\xb2\x11\xca\x88\x5a\x59\x89\x6c\x22\x36\x87\x91\x2f\x97\xbd\x80\xd9\xca\x43\x52\x29\xe8\x95\x08\x88\x79\x52\xd4\xf9\x08\xb6\x60\xc2\xab\x27\x4a\xca\x32\x59\x96\xf1\x1d\x44\x1c\xe3\x20\xe5\x67\xc0\x75\x2c\xb3\x55\x0b\x87\xc2\x87\x81\xbf\x35\x1f\x06\xa9\x2a\x10\x1e\xa6\x9a\xe8\x64\x5d\x19\xf8\x63\x5c\x19\x74\x5a\xa4\xed\xf8\xca\x95\x41\x27\xed\xca\xc0\xfc\x89\x3b\x59\x57\x06\x9d\xb1\xae\x0c\x3a\xa3\x51\x27\xeb\xca\xa0\x93\x76\x65\xd0\x71\xc2\xad\xbb\x32\x08\xf8\xa6\x53\xb9\x32\xe8\x20\x3c\x34\x1e\x48\x75\x32\x8e\x06\x3a\xca\x95\x41\x2a\x7d\xa9\x93\x77\x65\x30\x4c\x0e\x43\x26\xbb\x32\xc8\xb6\x50\x2c\x7b\x39\x8a\x1d\xe1\x57\xc2\x74\x65\xc0\x53\x95\x33\x83\xcc\x8e\x6b\x6e\xb6\x85\xa6\x78\x91\xd8\xc3\x67\xdc\x42\x38\x14\x38\x08\x57\xf2\x31\xa0\x02\xa3\xb4\xb8\x20\x4e\xfa\xeb\x5c\xfa\x67\x52\xb9\x14\x3d\x56\x5a\xc8\x96\xfc\x20\x18\x94\x7c\x6f\xd5\xe3\x3b\x89\x0e\x21\x5d\xb1\x24\x68\x3f\xba\xe5\x86\x78\xd6\x26\x9f\xcd\x67\x1f\xcf\x61\x2a\x44\x83\x72\x0f\xb0\xb8\xb0\xc4\x6a\x0b\xcd\x06\xc2\x9e\xb3\x70\xc0\x3b\xc8\xc4\xdb\x6a\xda\xf2\x6a\x0b\x6d\xe3\x69\x9d\xd7\xe6\xaa\x14\xae\xd7\xeb\x94\x4f\xda\x22\x2d\x20\xf0\xcf\x12\x36\xdf\x23\x6e\x34\x64\x33\x2a\x45\xaa\x4c\x81\x3a\x94\xc9\x01\x40\x38\x2f\xd6\x5e\xaf\xb3\xdb\x7a\xd2\xd8\x02\xda\x0b\xd4\x7a\x5a\xb7\x5f\x21\x51\xd3\xe8\x1d\xcc\x43\xe0\x8e\x38\x2e\xf0\xb5\x91\xeb\xce\xff\x8b\x7d\xd6\xdd\x99\xef\x04\x34\x72\x3d\x4a\x58\xad\x4b\x96\x87\x2b\x35\xb7\xeb\x0e\xa2\xad\x12\x45\x31\xcf\xec\x3e\x46\xe4\xce\x4e\xbe\x78\x57\x2e\xf7\x6d\x3e\x1f\x8e\x93\x95\x23\xe7\x07\xb6\xf5\xb9\xf9\x25\xab\xca\xaa\xd6\xbc\x5d\xaf\xa2\x79\xab\x4a\xaa\xd6\x43\xea\xf1\xb8\x3a\x82\xd7\x1b\x5c\xda\x5a\x68\xef\xd2\x19\x38\x9c\xf7\x1d\x06\x9a\x3c\xc6\x49\x72\x48\x52\xa4\x2e\x55\x4d\x7b\xfd\xb4\xdc\x3f\x1c\x17\x91\xc4\xd9\x5a\x53\x68\x85\x4a\xe3\x54\xc7\x5a\x45\xdb\x3b\xf1\x25\x5d\x14\xb4\x8f\x4c\xb2\x90\x0c\x51\xfd\x58\x2a\x11\xc5\xb8\xe3\xd2\xc3\x6e\xe4\xfa\xc1\xca\x11\x1a\x31\x8f\x84\x8f\xae\x9d\x5c\x1b\x10\xe3\xb6\x61\x35\xe8\x12\x5f\x78\x27\x1a\x8d\xc6\xa2\xc2\x2b\x2a\xae\x25\x09\x95\x90\x45\xa9\x9e\xf8\x6e\x0a\x6d\xa4\x43\x1b\x1c\xb2\xb9\xc4\xd2\x9b\xb9\x70\xe0\x76\x88\xca\xfa\x34\x23\x3d\xef\xbc\xe9\x94\x01\xbb\x8e\xf6\x9c\x1c\x1c\x74\x4d\x5f\x0c\x91\x72\xb9\x50\x5b\x28\x3b\x8e\xab\x5f\x92\x12\xfd\x6e\x97\xb3\x8c\x8b\x33\x0d\x0d\x82\xee\x31\xa3\xad\xd1\xc8\x43\x73\x11\xa7\xa9\xe3\x2a\x1f\xcf\xa4\x6a\x85\xf3\x16\xaa\x0f\x82\x81\x8d\x10\xa6\x5c\x29\x95\xac\x22\xd4\x1e\xe0\xa0\x38\x9e\xe2\x58\x66\x2a\xe7\x4f\x9a\x2d\xca\xe1\x09\xcf\x5f\xeb\xb9\x9d\x28\x60\x6b\x0f\x6e\x83\x49\x32\x6c\xa3\xd8\x3b\xd1\x12\xd4\x16\xf7\xf3\x61\x9d\xc8\xe1\xe7\xaa\x71\x36\xcd\xc8\x75\x9a\xb8\x67\x4e\x87\x84\x50\x04\x07\x1c\xa9\xb3\x0c\x02\x3c\x0f\x25\xc9\x68\x94\xab\x2e\x4e\x71\xcf\x7a\x41\xa8\xbf\x54\x1d\x5c\xe5\x0d\xcd\x18\xf2\x25\x4f\x9d\x63\x41\x8e\x58\xea\xf5\x3a\x56\xbd\x6c\xd0\x26\xe2\xe0\x20\x43\x00\x36\x97\x3e\xcc\x57\xcd\xc2\x6c\x56\xc3\xf4\x54\xd4\x27\xac\x99\x8d\x1b\xa2\xf6\x13\x3d\x8f\x2a\x4e\xe3\x5d\xe0\x1b\x0a\xaf\x67\x27\xf2\x4b\x62\x76\x3e\x62\x6e\x07\xfc\xe5\x1f\x11\xcc\x60\x33\x2c\xf3\x6a\xea\x53\x14\xf5\x59\x70\xae\xc4\x67\xf8\x11\xae\x63\xd8\xcf\x96\x8e\x9c\x1f\x88\xa7\xde\xa5\x28\x28\xf1\x96\x9a\xa5\xf7\x3f\xb4\x4e\xea\xbd\xa1\xef\xf3\xe6\xe2\xf7\x97\xce\x79\x51\xdf\xa3\x3c\x99\xc5\xef\x2f\x2d\x0f\xa3\xd2\x4a\x10\x95\xde\xaf\xb7\x9a\xef\xaf\x97\x1e\xf3\xba\xa5\xb5\x60\x58\xea\x05\x5c\xdb\xe7\x55\xbd\x5f\x32\x64\x49\x71\x46\xa6\x96\xa5\x67\xf5\x1b\x71\xb9\x19\xee\x07\x43\xbf\xfb\x29\xe6\x0e\x8e\xd2\xc3\x7c\x9c\x1f\x97\x9c\x6a\x53\x4c\xb8\x76\x4c\x9d\xf4\x2e\x95\xf2\xe9\x14\xc7\x58\xb8\x3c\x17\x37\x03\x26\xed\xf8\x3e\xad\x21\x9c\xa4\x89\xef\x5d\x71\xa7\x03\xa3\x29\x03\x14\x48\x07\x0f\x89\x37\xf6\xff\x90\x1e\x11\xf6\x3b\x8e\xe3\x29\x29\x21\xea\xe1\xd5\x78\xad\x46\x5b\xa7\x45\x8e\xf5\x1f\x56\xd5\x6b\x2d\xb4\xe7\xa4\x3b\x25\xaf\xb5\xaf\x0d\xb5\x34\x2d\x34\x27\x8f\xbb\x30\x75\x08\x5f\x19\xc4\x4b\xfd\xa4\x0c\x66\xb2\x36\xa9\xda\x37\x70\x6d\x81\x4b\x33\x5e\xc5\x9c\x05\x5e\x37\x9b\x89\x27\x3a\x2e\x4b\x99\xe8\xbe\x65\xb8\xa7\xb3\xaa\x14\x33\x47\xe7\xb7\xc0\x1f\x40\xcf\xde\x97\x42\x1f\xf0\x6b\xa4\xf0\x53\xd9\x08\x64\x13\x84\x6a\x2d\x40\x0f\x97\x6c\xdd\x01\x40\x9a\xef\xa2\x45\x16\xac\x3f\x89\xe4\x39\xe1\x3d\x05\x5a\x59\x48\xb5\x12\x89\x76\x71\x9a\x18\x09\xca\xb2\x5f\x0d\x11\x01\xc7\x77\x43\xe9\x98\xe3\xa9\x9e\x9d\xea\x26\x6e\xa0\xc2\xbe\x47\x4e\x04\x27\x86\x0b\xda\x19\x42\x32\x94\x4d\xe1\x58\xdf\x4b\x10\x55\x2e\xfb\x28\x76\x8d\x6b\xbf\xe4\xf4\x52\x48\x73\x0b\xf8\x71\x3d\x61\x19\xae\xee\xc0\x34\x68\x12\x3c\x10\x62\xbe\x19\xa9\xb5\x4d\xfe\xb4\xd7\xb9\xa2\xdf\x64\x31\xc2\x12\xd0\x25\x3e\xe5\x45\xfd\x60\x28\x1c\x0e\x34\x03\xcc\x1b\x6a\x52\xcc\x82\x20\x6a\xba\x58\xcd\xfa\x63\x24\xea\x07\xb2\x29\x4b\x25\x59\x55\x75\x94\x24\x2e\xee\xeb\x52\xcc\xf7\xd6\x6c\x86\x38\xb7\xfb\x43\x26\xf6\x57\x5d\x5e\x6b\x28\x97\xfe\x22\x75\x60\xd5\x3d\x43\x4e\x06\xb2\x8e\xf4\x1e\x71\xfc\x5a\x59\xe5\xc3\x1d\x55\xad\xa6\x15\xe3\x71\xd3\x51\xdc\x80\x97\x17\x8a\xd4\x0d\x04\x51\x1b\x78\x8d\x8f\xba\x21\xe9\x1e\x57\x2b\x90\x53\x6e\x6c\x59\xfd\x80\x88\x2f\xa7\x69\xc0\x56\x45\x97\xc5\x35\x1f\x1c\x00\xc8\x7b\x79\xdb\xb8\x7d\xcd\x90\xc6\x29\x4a\x1c\x8d\x66\x2d\xae\x76\xee\x80\x61\xf1\x57\xce\x97\xfc\xaf\x05\xb8\x76\xc9\x80\x91\x8e\x1b\x91\xee\xd3\x69\xd5\xc0\x29\x2f\xc4\x58\xf7\xc4\x58\x39\x8a\xfa\x28\x2c\x4d\xec\x31\x5f\x9c\x4c\xba\x38\xa5\x02\x76\xd2\x3a\x14\xc4\x95\xd0\xd2\xd1\x26\x5c\xcc\xb0\x7a\x8e\xef\x26\x58\x7d\xf4\xbd\xb0\x45\xdb\x95\x8a\x2d\x55\xb2\x16\x6d\xdb\x8c\x4b\x5d\xe1\x6d\x2e\xd2\xe9\x75\x73\x05\x13\x39\xa2\x18\xa7\x10\xcc\x06\xbe\x50\x42\x08\x94\xb1\xc5\x05\x90\x54\x51\xab\x01\x11\x2b\x0c\x0f\x9f\x52\x9d\xb4\xe4\x69\x3b\xfc\x02\x1b\x0e\xf8\x6d\x0a\x16\xa2\x04\x0b\x97\x48\x5e\x91\x5c\x41\x4b\x84\xb3\x79\x55\xe4\xd0\x96\x40\xa7\xe7\x57\xb0\x55\xb3\x50\x53\x7e\x4c\x4d\xc3\xae\x1b\xf6\x09\xe3\xdd\x49\x97\x39\x55\xe7\x85\xe6\x2d\xa4\x1d\xaf\x10\x63\x96\x66\x07\x3a\xc3\x46\xc6\x40\xe7\xbf\x38\x5c\x77\xb4\x50\x8c\x07\x41\x57\xcc\xa6\x27\x82\xe0\xcc\x70\xc0\x85\x8a\xe4\x29\xd3\x7b\x54\x54\x2f\x10\x3a\x40\x49\x93\x34\x91\xf0\x1a\xca\x55\x2e\xc1\x0c\xaa\x17\x9f\x4b\x88\x73\x6a\x7e\x1e\x5b\x16\x42\x98\x54\xad\x79\xb9\x05\xb2\xaa\xb2\x54\x82\x4a\x4a\x17\x31\xb5\xf6\x09\xba\xf1\x24\x25\x3d\x45\xa3\x71\xdd\x8d\x44\xf0\x1c\xf8\xac\x3d\x5b\x86\x47\xe9\x89\xe1\x72\xd7\x63\xbb\x83\x0a\xe7\xcb\xaa\x63\x19\xce\x60\x53\x81\xf2\xb4\xe3\xd5\xd1\xc8\xa4\xda\x7c\x3d\x22\x61\x64\x93\xa2\x61\x40\x68\x0b\xdd\x53\x73\xe9\x08\x5d\xe1\xda\xbf\x31\x75\x0a\x2a\xae\x5a\xf3\x44\xe4\xb3\xe6\xe0\x6a\x2c\xbb\x6b\xe2\x7a\x6c\x94\x46\xa0\x58\x51\x8c\x92\xb6\x8f\x07\xc3\x88\x1c\x73\x07\x53\x5a\xe7\x22\xa6\x6a\xcd\x33\x9e\x3b\x9c\x8c\x01\x43\x7a\x82\x4f\x50\x55\xb5\x3e\x48\x62\x8d\x8b\x76\x5b\x9a\x1e\xdb\x94\xc4\x21\xba\xa0\x29\x99\xe4\xec\x3d\x79\xe4\xd8\xd3\x4f\x1c\x3a\x79\xe4\x44\xab\xb0\x0f\x6d\x21\xab\x56\x5d\x8f\xa6\x39\xda\xeb\xd9\x16\x4f\x95\xc3\x5d\x34\xa6\xda\x54\x69\xa0\x96\xce\x79\xab\x4a\xd4\x2c\x01\xf7\x45\xa9\x2a\x8b\x0a\xa4\x67\xbe\xad\x3c\xfa\xaa\xba\x0a\x5a\x8d\x31\x25\x61\xc4\x79\xdf\x0f\x3a\xc2\x79\xb0\x9e\x05\x79\xfc\x0b\x78\xb6\x10\xeb\xad\x22\x51\xb5\xd4\x96\x33\x56\xfa\xd0\xd8\x79\x37\x76\x8a\xeb\x2c\x2d\xd9\x5a\xd5\x92\x99\xac\x64\xb1\x99\x90\x47\x8e\x99\xee\xaf\x9c\x48\x4f\xbb\x51\x44\x18\x05\x2b\x40\xed\x43\xd3\xce\x9d\x54\xb5\x52\xd3\x30\xa1\x1b\x4e\xa5\xe7\xc5\x8b\xd2\x6e\x52\xbc\x22\xd3\x72\xe3\xad\xce\x09\xa6\x8f\x55\x3b\x46\xa8\xce\x88\xdb\x7d\x8a\xfa\x6b\x36\xc2\xd9\x7d\x9e\x16\xf0\x58\xed\xf2\xb8\xde\x6a\x8d\xeb\xbb\xe1\xc6\xcc\x73\x1a\xe2\x46\x45\x9d\x76\x78\x07\x83\x94\xb3\xcc\x96\xd7\x96\x67\xfb\x42\x07\x96\x5b\xc4\xa0\x52\xb1\x03\x75\x83\x23\x82\x98\x19\x88\x04\x58\x58\x50\x81\xd5\x54\xc1\x14\x0f\x84\xfd\x9d\x13\x20\x0c\xda\xf1\x69\x3f\x58\x91\xf8\xf1\x5d\x28\x0e\x10\xd6\xce\x28\x59\x1c\xe3\x5c\x1b\xc6\x6a\x96\x5a\x79\xf9\x26\x93\x85\x9d\x80\xc1\xbe\x97\x18\x21\xd8\x8a\x50\x49\x8c\xf7\x8a\x45\x51\xb2\x01\xe6\xec\xac\x36\xc1\x87\x56\x97\xbd\x95\x61\x30\x0c\x4b\xb2\x50\x49\xf0\x9f\xdc\x09\xc7\xef\x2f\xb9\xb4\xab\xf6\xad\xcf\xa2\x89\xa2\x2e\x91\xf6\x64\x9a\x48\x04\x62\xa8\xa0\x90\xc4\x50\x2a\xe6\x6b\x76\xeb\x73\xf3\xed\x87\xd1\x43\xf3\xd8\x9a\x3f\xfd\xd0\x82\x35\xb9\x55\xaa\x6b\xa3\x31\xf6\x05\xd1\xe1\x4e\x2c\x17\x84\x34\xa5\x13\xa6\xa6\x65\x86\xfb\x22\x5c\x6e\xa0\x18\x1b\xe3\xa8\x4e\x4d\xf9\xe6\x5a\x0e\xd1\x91\x27\x3f\x59\x7f\xe2\xa9\x8f\x9e\x3e\xf6\xd4\x63\xcf\x3c\x71\xe4\xf4\xf1\x23\x27\x9e\x7a\xe2\x93\x47\x8e\x57\x2a\xe5\xa8\xce\x37\x3a\xe2\x23\xa4\xa6\x62\x60\xf2\x9d\xf7\x92\xd5\xda\x7c\xf5\x42\xdb\x6a\x5a\xad\x52\xdb\x9a\xa3\x86\x16\x03\x9a\xe1\x07\x1b\x4b\x56\xdd\x6a\x26\x37\x15\x1f\x6c\xd4\x72\xb9\x50\xfd\xf3\x81\x47\x55\x3c\xb5\xd1\xc8\x56\xba\x6f\x9e\x0e\x11\x42\xb8\x13\xd0\x30\xf0\x49\xa5\xa2\x80\xba\x47\x7b\x41\xfa\x97\xed\xe1\xa4\x0d\x4c\x85\x7d\xe2\x19\x1a\x9c\xa3\x8f\x07\x6c\xcb\x27\x95\xac\x68\xc7\x62\xc4\x73\x6b\x60\x2f\x39\x95\xa4\x07\x3d\x11\xd3\x6d\x5d\xce\x61\x11\xc5\x4d\xcd\xc9\x88\xb9\x34\xe4\x4b\xe1\xc9\x40\x9f\x0e\x3f\x3e\xf4\x7d\x2a\xe7\x8e\x87\xe6\xf8\x04\x66\xad\xa0\xed\xf0\x61\xd3\x33\x0d\x4f\x29\x18\xa5\x0e\x9a\x52\x5b\x5a\x12\x8b\x3d\x03\x5f\x0a\xb0\xe7\x88\x05\x81\x63\xa3\x55\x6a\x8a\xc4\x89\x2a\xfc\xf4\x04\x8f\x0a\xd7\x80\x95\x8a\x2b\x37\xf6\xa2\x5b\x35\x38\x90\xa8\x54\xb4\xca\x0f\xa2\xa9\xaa\x0f\x2b\x60\xda\x48\xc5\x5c\x6d\xef\x83\x2a\x64\xc4\xae\x74\xbc\x1f\x3a\xac\x70\xd9\x12\x2b\x16\xb0\xb3\x3c\x56\x00\xc4\x84\xcd\x33\x34\x0c\xf7\x5f\x4b\xe9\x86\x20\x19\xee\x3a\x63\x5c\xac\xa5\xe8\xa1\xd7\x47\x7e\x32\xb6\x84\xf8\xaf\xdc\x48\x26\x14\x6f\x52\x2d\x0c\x72\x51\xd3\x47\x57\x38\x8a\x63\x34\x47\xeb\x8c\x04\x03\x22\x37\xd7\xf6\x7a\xc1\xae\x59\x9c\xac\x2a\xd3\x78\x3a\xcd\x0c\x75\xc2\x51\xef\xbf\xc3\x95\xf5\xba\xe4\xf6\x66\xe4\x2c\x16\xec\x2c\x89\x3a\xfc\x5c\x02\xc0\x8e\x50\x93\x14\x5e\x28\x72\xed\xb2\x26\x4d\x6e\x94\xb9\xd5\x7c\x6d\xc0\xbc\xb3\x6e\x44\xe6\x3d\xca\x97\x3d\x77\x76\x8f\xd6\x62\xe4\xb6\xde\xd1\xc8\x51\xd8\xf4\xa3\x55\x7f\xd9\x65\xe1\xfc\x19\xb2\x76\x2e\x60\x5d\x4e\xe9\x20\x1c\x32\xc0\xd0\xf2\xc0\x87\xf7\xe9\xd3\x7e\xe0\x76\x09\xdf\x62\x49\xa9\xb0\x94\x4b\x97\xec\x33\x6b\xcd\xa8\x69\x50\xc4\xa3\x2b\x0f\x10\x97\x99\x5b\x40\xcd\xf5\x78\x8e\xd4\x0f\x1d\x3e\x79\xf4\xa9\x27\x9d\x48\x01\xb3\x0d\x22\x98\xce\x99\xdf\x0a\x2f\x31\x66\x63\x80\xad\x5c\xfc\x25\x2a\x15\xdc\x21\x99\x0c\xc3\xe7\x5b\x51\xfc\x6e\x52\x3f\x2d\x70\x61\xc7\xbc\x0e\x0b\x7c\x6f\x79\x34\x22\x75\x99\x02\xe7\x86\x2a\xb6\xfe\x51\xda\x0b\xc2\x66\x54\x57\x3f\xc5\x76\x4a\xa4\x8d\x46\x3a\x51\xc5\xb3\x14\xc9\x78\xd5\x1d\x3c\xba\x56\x54\x60\xc9\x12\x0d\x58\x4d\x65\xc9\xc2\x2c\xe1\xa6\x3c\xb1\x35\xaa\x9b\x4d\x62\x79\x93\x39\x78\x74\x6d\x2e\xe5\x4f\xfe\x90\xcd\x90\x4c\xb7\xa9\x61\x4a\xc2\x6b\x42\x62\xcd\xb7\x89\xb3\xb8\x0e\x4a\x88\x0a\x3d\xc2\x7b\xa7\x4c\xdd\x42\x1d\x43\xd4\xa1\xad\xa8\x8d\x0b\x26\x34\x8b\xf5\xe1\xa9\x2c\xd3\x64\x58\xa1\xdc\xa4\x3b\x7a\x20\x94\xf2\xf6\xaf\xaf\x4c\x04\xd9\xa7\xab\xfa\x25\x7d\xd8\xfb\xd4\x39\xaa\x8c\xd2\x90\xd2\x0b\x6c\x4b\xd5\x22\xf6\x79\x28\xa3\x88\x83\x11\x6b\x8b\x08\x63\x87\x36\xac\xc8\xd9\xd3\x63\x59\x87\x05\x7e\x7b\xc5\x6b\x0b\x71\x67\x2b\xad\x9b\x99\xed\x61\x82\x94\x1d\x1c\xd3\xa1\x63\x34\xa2\xf5\x7a\x3d\x92\x2c\x17\x38\x32\xaf\x72\x9c\x1e\xa8\x71\xc0\xa1\x13\x40\x71\xec\x3b\xb4\xde\x09\x68\xc7\x8d\x84\x81\xb4\xd9\x45\x36\xa4\x52\x09\x0a\xb1\xcb\x31\xf6\x91\xf6\x17\x1e\xb4\x60\x66\x72\xcd\x00\x07\xc5\xf7\xf3\xa2\x1f\x39\xfb\x69\x2f\x14\x53\xef\x2c\x19\x3b\x35\x93\x32\x72\xe9\x91\xb8\xd6\xbe\x30\x24\x6c\xad\x26\x62\x03\x4d\x29\xc0\xd7\xd8\x33\xaa\x15\x99\x23\x3b\x99\xb9\xca\x99\xb3\xed\xa4\xd8\xc3\xc1\x2e\x59\x77\xba\x8e\x0d\xb2\xc0\xa3\xa2\x42\x65\x54\x84\xb3\xe1\xf2\x67\xb1\xd3\xc7\xb4\xd0\x52\x5f\x9e\x7d\xf0\xb5\x44\xf1\x8c\xda\xd2\x61\xb1\x6b\xaa\x54\x26\x98\x95\x1b\xe6\x17\x2c\x65\x6f\x66\x1a\x96\xb3\xb4\xad\x99\x36\x32\x67\xda\xaa\x0c\x2b\xf3\xf4\x94\xbd\x17\xcb\xdb\x7b\x51\xad\x03\x19\xc6\xdc\x68\xdd\x6e\x60\x96\x5c\xbf\xc9\x63\x18\xd1\x13\xa4\x36\x30\x59\x43\xe1\xd4\xde\x42\x66\xad\x7b\xe1\x21\x31\xd2\xb6\x32\x21\xc2\xa1\x63\x46\xfb\xf5\x13\xea\x0c\x1d\xae\xfc\x76\x9c\xf5\xac\xf9\x7c\xda\x18\xc5\x30\xa6\xc7\x46\x4f\xc4\x25\x48\x8c\xfb\x59\x1b\xbf\xce\x18\x1b\xbf\x7e\x8b\xb4\x9d\x8e\xb2\xf1\xeb\xa7\x6d\xfc\xcc\x9f\xb8\x9f\xb5\xf1\xeb\x8f\xb5\xf1\xeb\x8f\x46\xfd\xac\x8d\x5f\x3f\x6d\xe3\xd7\x77\x86\x5b\xb7\xf1\x0b\xb1\xaf\x6d\xfc\xfa\x08\x77\x0d\x1b\xbf\x7e\xc6\x02\xaf\xaf\x6c\xfc\x52\xe9\x4b\xfd\xfc\x98\x77\xb5\x8d\x5f\x7f\xb2\x8d\x5f\xb6\x85\x62\xb6\xe5\x28\xf6\x79\xf7\xe4\x05\x4b\xe0\xf4\xf9\x06\x85\x4f\x11\x1d\xb0\x08\xf7\x0d\x95\xd6\x9d\x59\x22\xf1\x5d\x65\x6d\xc8\xfc\x59\x55\x3e\xb1\x9c\xe3\x5d\xb5\x04\x8f\x8a\x65\x05\xdb\x8e\xac\xf0\x66\x94\x15\x9e\x96\x15\xf4\x5d\x25\x2b\xbc\x02\x59\x91\xbe\xf2\x50\x13\x9f\x8f\xdb\x33\xc7\x9f\x10\x86\xbe\x2c\x6d\xe8\x0b\x7d\x0c\x1d\xae\x5d\xf8\x3b\x9b\xf1\xef\x59\xf5\xbe\x3b\xac\x7a\x9d\x0e\x66\xd3\x2c\x7b\x67\x9d\xf1\x7c\x07\x00\xaa\xc4\x8c\x6a\x48\xaa\xd0\x4c\x2f\x45\xb0\xb7\x1d\x09\x11\x12\xa9\xae\x3f\x2d\x5a\x12\x7b\xf9\xd4\xde\x21\x70\x48\x5c\x2c\x48\x82\xe4\x44\x00\x94\x10\x56\x2c\x58\x8a\x5f\x9a\xec\xba\x12\xe2\xbd\xab\x04\xcb\x18\x25\x04\x4e\x39\xc9\xb9\x52\x60\xea\x20\x98\x48\x65\x82\x8e\x55\x26\xd8\x7b\xca\xc4\xff\x37\x94\x09\xcf\xe9\xc3\xa3\x81\x9d\x2a\x13\xe2\x68\x54\xbc\x08\xac\x45\xc1\x8e\xb6\x38\x0f\x50\xc4\x14\xca\x8e\xf7\x64\xc5\xcc\xb2\x82\x39\x8b\xeb\x9a\xa7\x59\xa5\x52\x74\x7c\x51\x1f\xf0\x09\x43\xe1\xac\xb7\x52\xc9\xa6\xd8\x5b\xd9\xe4\x24\x6c\x75\x32\x80\x8d\x4e\x41\x74\x56\x20\x2b\x84\x67\xdd\x91\x70\x7a\x2f\x30\xeb\xbb\x22\x30\xab\xe7\x74\xa7\x04\x67\x9d\x59\x38\x0d\x99\x5f\xeb\x05\xc5\xef\x20\xde\x13\x4b\xff\x7b\xc5\x92\xbc\x6d\x9b\x45\x8e\x0c\x99\xff\x78\x20\xfa\x2f\x6c\x3f\xdf\x13\x20\xef\x09\x90\x59\x04\xc8\x84\x83\xd8\x3d\xbd\x09\x54\xf7\x26\x2d\xb8\xa6\xaf\x2d\xb4\xe7\xc4\xb5\xa8\x17\xfe\x27\xc7\x4a\xee\x99\x2a\x15\xdb\x26\xda\x01\x04\x42\x66\x76\x67\xfd\x0b\x49\xc6\x26\x78\x07\x89\x4d\x43\xb1\xd9\x88\xb1\xad\x3d\xe4\x5e\x1c\x65\xef\x5c\xf0\x26\x09\xd2\x63\x51\xea\x6d\x0c\x9f\x0c\xd2\x46\x41\x22\xec\x28\xd3\xa4\xd3\x1e\x1d\x0c\x23\x49\x57\x27\x52\x69\xa6\xda\x02\xaf\x76\x54\x61\x69\x98\xf2\x29\x2f\xea\xa7\x3f\x0c\x58\xd0\x21\x61\x48\xba\xaa\x2a\x25\xef\xe4\x43\x7f\x75\xd2\xab\xfd\xee\xe5\xcf\x8f\x15\x56\x60\x3d\x5d\x70\x46\xac\x9a\x11\xb5\x4b\x07\x02\x43\xe6\x67\x4e\x98\x4e\xe7\xc4\x65\xbe\x54\x4a\x25\xd3\xc5\xf5\x54\xcd\x13\x40\xfb\x47\x4b\x51\x85\x38\x8b\xb6\x96\x20\xa4\x50\x97\x24\x39\x5d\x32\x9b\x62\x67\xfa\x9b\x55\x17\x53\xd8\x83\x73\x82\x14\x1e\xa2\x4b\xc6\xa0\x8c\xed\x91\x91\x47\x77\xc8\x1c\x4c\x1b\x39\x8b\x29\x5c\xcc\x4a\x73\xa8\xe4\xb9\x41\x20\xa2\xbe\x67\x47\x25\xc3\x1b\xda\xa2\x3d\xcb\x33\xe9\x95\x30\xc7\x9e\xba\xd9\x4c\xb9\xb1\xd6\x02\x33\xcc\xca\xbd\x95\x83\x04\x6e\x69\x9f\x39\xfe\x04\x26\xa9\x5b\x5e\xf1\xbc\x2a\xdf\x8f\x90\x44\xd9\x7b\xf2\x90\xec\xa1\x2b\x31\x79\x07\x5e\x14\x68\xdd\xce\x08\xf8\x96\x50\xd4\x12\xe7\x91\xa5\xfd\xc6\xc3\xa2\x25\xce\x5e\x89\xab\x37\x91\x15\x35\x49\x36\x8d\xa0\x18\x99\xcf\x1f\x0b\xdc\x3b\x85\x91\xcb\x56\xdc\x88\x18\x56\xd9\xf3\x9c\x10\xae\x5f\x93\xde\x25\xd2\x42\xfd\x3f\x56\x7c\x6f\x75\x95\xb0\x24\xfb\xac\x9a\x30\x0e\xb0\x9b\x98\x0b\x28\x77\x76\x32\x06\xad\xbc\xa5\x5d\xd7\xf7\xaa\xa6\xae\x44\xc7\xe8\x4a\x01\xd7\x95\xa8\xd2\x95\x82\xb4\xae\x64\xfe\xc4\x41\x56\x57\x0a\xc6\xea\x4a\xc1\x68\x14\x64\x75\xa5\x20\xad\x2b\x05\x0e\x9b\x45\x57\xe2\xc3\xa1\x4f\xd4\xd4\xf2\x34\x1a\xb1\x18\xe1\x00\x61\xcf\xd0\x95\x82\x8c\x26\x13\x28\x5d\x29\x95\xbe\x14\x4c\xb8\x1e\xc0\xc1\x64\x5d\x29\xdb\xc2\x78\x2d\x3e\xe0\xdd\x53\xd7\x4a\xbb\xe1\x33\x4b\x98\x52\x40\x54\xe0\x8f\x9d\x3c\xf6\xc4\xa3\x2e\x0b\xeb\xf0\x64\xc2\x5e\xf7\xba\x4d\xeb\xdc\x33\x1f\x3e\xf2\xd1\xee\x61\xd7\xc2\xcb\x7e\xd0\x39\xd3\x7c\xff\xba\x15\xae\xad\x2e\x07\x7e\x68\x35\x5b\x56\xc5\x8d\x22\xc6\xd9\xae\x02\x2f\xe6\xdb\xd8\x0a\x23\x37\x12\x9e\x1f\x79\x96\xd6\xc2\x02\xb6\xba\xde\x59\xab\x8d\x5b\x0b\x1f\xc2\x0b\x6d\xdc\x7a\x04\xb7\xf6\x7f\x18\x37\xda\xb8\xd5\xda\xbf\x0f\x37\x70\xcb\x92\xd6\x39\x84\x59\xed\x76\x5b\x98\x93\xe9\x5c\x0b\x46\xae\x21\x2d\xca\xb7\xb0\xaf\x8d\x5b\xfb\xb0\x75\xea\x14\x2d\x95\x44\x2b\x1f\xc6\xfb\x92\x42\x22\x3e\x36\xcf\xaf\x73\x89\x3c\xfb\xdb\x6d\x6c\xf5\xdd\xf0\xc8\x59\xd7\xb7\x9a\x3d\xd7\x0f\x09\xb6\x86\x83\xb3\x2e\x13\xfd\x32\x9d\x18\x5a\x29\x4f\x6a\xed\xf8\xfd\x78\x95\x44\x6e\x73\x3d\xb1\x75\x6c\xce\x3a\x55\xeb\xfd\xe5\xd0\x8a\x95\x2d\xc4\x70\xdc\x96\xd1\xb6\x6a\xb2\x94\x95\x3c\xf6\x06\xd7\x4b\x5e\xe6\x77\x90\xd9\x5d\xea\xe5\x64\xdb\x5b\x4b\xd9\xb4\x72\xe6\x64\xee\x30\xdd\x77\xed\x0e\x93\xaf\xc4\x62\x9c\x33\xeb\x70\xaa\x2b\xf5\x15\x12\x3d\x2d\x12\x0e\x8b\xac\x22\x87\xcb\x56\xa4\xb9\x3d\x8a\x81\xb7\x6c\xed\xd3\x27\x72\xd6\x57\x87\x7e\xe4\x0d\x7c\xd2\x4c\x72\x43\x12\x0e\xe8\xe1\xbe\x4b\x57\xcc\x6f\x90\x14\xcf\x15\xb4\x0f\x0d\x9c\x14\xac\x90\x69\x5f\x78\x1d\x8d\x13\x0e\x87\xf7\x85\xe9\x2a\x92\xef\x85\x95\xc8\x9d\x72\x68\x07\xa6\x23\xa0\xcc\x78\xf2\xed\xf2\x4e\x36\xcb\x08\x67\xea\xd7\x73\x12\xb7\x68\x1b\x4f\xf3\x51\x54\x5c\x94\x2f\x10\x3a\x3d\xd7\x82\x31\xef\x71\xcb\xdb\x62\x1b\x46\xe1\x4c\x2b\x81\xb9\xf0\x0e\x71\xe2\x81\x59\x3f\x56\xd0\x2f\x70\x7c\x3c\x2c\x30\x1c\x1a\x3f\xdd\x77\x6b\x49\xde\x0d\x77\x9b\x82\x95\x83\xc9\x42\x3e\x18\x3c\xf3\xe9\xcf\x7e\x3e\xfc\xd8\x18\x21\x3f\x56\xb6\x7f\x10\xb7\xf6\x7f\x28\x25\xa3\xa5\x77\xc0\xa3\xf4\x69\xae\x26\x6b\x31\x8d\x5b\xad\xc4\xa5\x8a\x45\xfc\x90\xef\x0e\x5b\xeb\x99\xda\xf6\x61\x4b\x4b\xf0\x05\x10\xef\x20\xb3\xdb\xd8\x12\xba\x36\x89\x88\x10\xd1\xed\x18\x67\xcb\xe7\xb1\x51\x0a\x52\x11\x1a\x05\xed\x8f\x2d\x8f\x2d\x98\xf4\x5b\xec\x91\xac\xb1\x51\x54\xa3\x72\x8e\x2c\x2a\x6c\xb5\xac\x95\xa1\xd7\xb5\xb0\x25\xd7\x9c\x47\x49\x2f\x10\x8e\x10\x5b\xd6\xfb\x3a\x43\x16\x06\xac\xb9\xf0\x3e\x4b\x52\xa4\x3d\xa5\x13\x82\x88\xfc\xdf\xec\x84\x14\x8b\xe3\x8c\xd4\xdd\x8d\xbe\x34\xde\x67\xe1\xd6\xbe\x8f\xb4\xf7\xac\x2f\x5b\x4d\x1c\xaf\x17\x78\xb4\x06\x9d\xc5\x96\xd7\xdb\xa6\x36\x90\x52\x03\xc6\x5e\x7e\xa7\xd5\x80\x3d\x5b\xe6\xdf\xb5\x07\xc9\x38\xe3\xb5\x5b\x6f\xe0\x8b\x97\x59\xb9\xd6\x1b\x2b\xa4\xf2\xc5\xa7\x0e\x45\xe4\xfa\x99\xd6\x17\x8c\x6c\xda\xcb\x6a\x46\x83\xc8\xad\xbb\xaa\x56\x75\x2c\x61\x08\xbf\xc4\xc9\xa3\x3e\x93\x10\x05\x52\x99\x46\x23\xe9\x52\x11\x1a\xb5\x3c\x2a\x0e\x18\xac\x54\x91\x9e\xf2\x2a\x98\x71\x54\x58\xe0\xbb\x75\x46\x1a\x25\x8b\xe2\x78\x2a\x15\x98\x14\x64\x78\xe6\x3d\xcb\x82\xff\x97\x2c\x0b\x26\x2a\x48\x01\x76\x27\x29\x48\xda\x13\x6e\xad\x48\x3f\x12\xa7\x54\xa4\x5b\x5b\x75\x07\x61\xcd\xa5\xdd\x5a\x48\xb2\xc7\x3c\x53\x9f\x35\x28\xd2\xa7\x4b\x08\x3f\x0b\x9c\x9b\xb5\x9f\x36\xbe\x07\x13\xd4\x34\x6e\x9d\xe4\x00\xc4\x36\xc1\xd9\xe3\x6a\xe1\xf1\x14\x9e\x36\x16\x3d\x9d\xb4\xdc\x88\x2b\x52\xca\x7f\x90\xf0\x18\x50\x52\x0f\x34\x4a\x3d\x8f\xf8\xdd\x52\x40\x4b\x34\xa0\x35\x11\xfc\x82\x1a\x8e\x56\x24\x2e\x36\x41\xb1\x68\xcc\xe2\x0b\x29\x42\xa9\xf8\x24\xff\x1b\x1d\x70\x7b\xd9\x33\x78\xde\x05\xf1\x8c\x6b\x8e\x1a\x4e\x67\x12\x47\xda\x90\xaa\x57\xd5\xec\x07\xad\x79\xe5\xbe\xc0\x66\xcb\xf0\xca\x0d\x8f\xa7\xe1\xac\x1f\x22\x76\xa8\x63\x7e\xa8\xcb\x51\x6e\xec\x6c\xcf\x61\x3a\x11\x19\x93\xd4\xab\x54\x3c\xe5\x31\x56\x35\xe2\xb0\x64\x73\x17\xcb\xe3\x30\xd3\xbb\xac\x6b\xfe\x52\xb4\x18\xe7\x1f\x79\xba\x37\xf2\x40\x9e\x0f\xf2\x5e\xae\x9b\xd2\x53\xd2\x5f\x3a\xa8\x3b\x29\x27\xcd\x31\x77\x10\x23\xec\x6e\xb1\x40\x9c\xac\x64\x86\xb1\x88\xac\x20\x40\xc0\x99\x99\x0d\x33\x3c\x10\x32\x3d\x0e\x70\x22\x46\x8e\x2a\xe9\x42\x49\x93\x94\xd1\x52\xd4\x6c\xc4\x99\x6d\x2b\x67\x0c\x8a\xd6\x93\x16\x13\xc7\xc4\x9e\xfa\x68\x6e\x86\x0d\x54\x75\x09\xed\x2a\x38\xce\x2c\x65\x1a\x4d\xf0\x3c\x66\x6f\x01\x51\x54\x5d\x98\x4b\x32\x29\xac\xe0\xd1\x91\xa7\xdf\xa1\x6b\x84\xe6\x38\xa7\x68\xce\x30\x61\x9b\x9a\x3d\xc8\xe2\x26\x0d\x6a\xb6\x80\xd8\x1c\xad\xd5\xf0\xee\x61\x66\xb8\x78\x0f\x8b\xe4\x36\xf3\xe8\x4a\xad\x47\x13\x8b\x0c\x95\xd4\xe9\xbb\xac\xe6\xce\x7c\x1c\x9f\x8e\xec\x24\xce\xcc\x1d\xcb\x32\x23\x2e\x95\xa2\x3a\xaf\xf3\x50\x64\x33\xb4\x1d\x29\x24\xf1\x3a\x2c\xaa\x70\xa2\xe2\xe3\x7c\x56\x78\x9c\x1f\x99\xdb\xff\x02\x3f\xf7\x53\x88\xd0\x09\xba\xe4\x41\x50\xe2\x70\xd0\x25\xbb\x40\x0d\x59\xcd\x9e\x51\x84\x13\x63\x10\x78\x34\xda\x75\x92\x04\x5d\xf2\x34\xaf\x78\xa7\x34\x49\xea\xd9\x3b\xa2\xd0\xce\x4e\xa8\x51\xaf\xd7\xa3\x14\x2d\x40\xe9\xe4\xba\x8d\xb3\x48\xaa\x4e\x84\x2d\x6b\x47\x34\xe1\x08\xee\x15\x39\xf8\x4a\x58\x3b\xe7\x45\xfd\x1d\xf0\x07\xdf\xd7\x3a\xe5\x85\xb6\x43\xb0\xe7\x94\x17\x84\x5f\x88\x4a\x45\x39\x83\x94\x0f\xf4\xe5\xf5\xdb\x5c\x50\x73\x18\xbc\x9e\x27\x0e\x5d\x8a\xea\x51\xf0\x44\x70\x8e\xb0\xc3\xae\x50\xe0\xe1\x7d\x3c\x4b\xa7\xe3\x00\x35\x93\xc7\xf3\x4c\x5c\x06\x39\xc2\x31\x2a\xa9\x54\x88\xe3\x38\x01\x78\x17\xf0\xb6\x4f\xf7\x23\xb4\x1b\x8a\x2b\xe8\xbd\xa2\xfc\x17\x86\x5b\x78\x28\x3e\x9e\x11\x0d\xb7\x65\x07\xf7\x81\x9f\xed\x05\xe3\x45\x6e\xd8\xf7\x7a\x91\x6d\xa8\xb8\x7c\xbf\xb4\x66\x13\x67\x91\x93\x6e\x27\xd3\xf7\x88\xe8\xc2\x5e\x11\xac\xc7\x82\xd5\x44\xca\xef\xda\x0c\x56\x4e\x5d\x78\xed\x20\xa2\xe5\x2b\xd8\xed\xd3\xe5\x71\xa3\xae\xbd\xa5\x8e\x96\xf8\x0f\x84\x3c\x20\xad\x77\x85\x3e\x50\xd9\x5e\x11\xa8\x1f\xad\xfa\xb5\xd0\xed\xed\x61\x50\xad\x19\xad\x16\xb4\xed\x58\xce\xe8\x60\x6e\xd6\xce\x79\xb4\xe3\x0f\xbb\x64\x07\xe2\x24\x27\xc5\x13\xb7\x21\xac\x52\xb1\x3d\x87\x2e\x09\x89\x3b\xa3\xc8\x46\x4d\x95\x5b\x7f\x47\x08\xef\x40\x3a\x1f\x55\x1d\xdc\x2b\x6e\x11\x68\xd7\x82\x6d\x46\x4b\xcd\x13\xb4\x56\x44\xd0\x99\x69\xb9\x8b\x64\x14\xd5\xec\x15\x15\x7d\x37\x8c\xfe\x3d\xa4\x34\x1d\xf8\x16\x90\x33\xf5\x79\x67\x24\x7d\x22\xa9\x6a\xaf\xc8\x4a\x83\xe8\xdf\xa8\x3e\x84\xc1\x2a\x11\xda\x43\x79\x67\xda\xc3\x93\x41\xb4\xb7\x0a\xc4\xc0\xed\x72\x7d\x77\xa7\x3b\x21\xc7\x2a\x59\x98\x3a\x0d\xc9\x8d\x51\xd5\x12\xae\x26\x6d\x56\xb5\x2c\x04\x3e\x9d\x1a\x32\x26\xd1\x01\xf0\x25\x75\x90\x1e\x40\x5e\xd5\x61\x73\x9e\x76\x37\x25\x18\xd7\xab\x87\xc3\x65\x89\x9e\xdd\x10\xe7\x2b\x3b\x57\x64\x9f\x76\xbb\x47\x68\x77\x2f\x89\x1a\x46\xee\xec\x71\x45\x77\x9d\xac\x0e\xab\x7a\x93\xe8\x0a\x9f\x6a\x14\x6b\xd7\x5e\xbb\x44\xe7\x13\xbc\xe3\x7b\x45\x69\x46\x06\x64\xe7\xfb\x78\x49\x60\xea\x58\x96\xe9\x9a\x31\x09\xb0\x53\x75\x92\xa3\xc4\xed\xd3\xe6\xb8\xc0\x75\x0f\x29\xe3\xbb\x1d\x52\x73\x7d\xbf\xc8\x96\x7e\x6a\xc1\x2d\xdc\x6a\x48\x52\x4a\x47\xfd\x96\x85\x03\xb9\x2a\xcd\x19\x81\x09\x35\x01\x78\xcd\xc8\x6e\x81\x15\x67\xb9\xd1\xde\x81\xb0\x54\xf5\x1d\xf2\x7d\x87\x4d\x8e\xd4\x92\x26\x2a\x9b\x12\xc6\x63\x3a\x6d\x76\xc8\x6f\x82\xd5\x84\x46\xa9\x89\xe5\xf5\xec\xb2\xf6\xbc\x09\x6f\xcd\x19\x4f\xf6\x46\xa3\x00\x1c\xf3\x5a\x96\xf0\x1f\x48\xaa\x8e\xb5\x62\x09\xeb\x4f\x01\x7b\x16\x52\xe7\xfa\x2a\x30\x8e\x30\xd7\x35\x4e\x63\xa4\xc7\x4a\x17\xd3\x9d\x53\x7b\xaf\xf8\x57\xdc\x64\x6e\x9b\xd0\xa5\x08\xb7\x18\x27\xb2\x70\xdd\x68\x9e\x4d\x39\xfa\xf6\xd1\x5b\x02\xfb\x5b\x8a\x9a\x1a\xc4\x1e\xc2\xd1\xf6\xa9\x74\x82\xd7\xb2\x67\x34\x1a\xf8\xde\x2e\xac\x31\x56\xea\xec\x4e\x7a\x7f\xdf\x89\x12\x73\x82\xd7\xb0\x67\x34\xe0\xcb\xcd\xae\x1f\xd7\xe5\x95\x69\xe9\xac\x72\xb6\xa3\xb9\x06\x6a\xa6\x7d\x5b\x32\xdc\xd8\x99\x42\x2d\x16\xd5\x3d\x3d\x8a\xd3\xba\xc2\x83\x9f\x83\x5a\x2b\x91\xf3\x30\xf9\xb9\xd3\xb9\x08\x35\xed\x15\xcd\xa2\xa0\xd6\x71\x57\x89\x5f\xeb\xb8\xe1\x0e\x17\x89\xd4\x94\x4c\x73\x9d\x0a\xcf\x50\xb2\x84\xbf\x40\x38\x64\x17\x0c\xb7\x44\x9a\xcf\x3e\xb4\x4e\xe0\xa2\xaa\x81\xea\x51\xf0\xcc\x60\x00\x45\x63\xfe\x0d\x62\x38\xc7\xcf\x82\x47\xde\x9d\x9c\xcc\x9f\x0c\x0e\xf3\x1e\xf3\xfa\xf7\x90\xca\x67\xc8\xb2\xbb\xbc\x67\x54\x96\x54\xaa\xed\x8c\x4c\x9f\xe0\x28\xef\x31\x99\x7c\xde\x9f\x07\x4a\xa6\x9d\x50\x44\x57\xb3\x87\x14\x19\xb8\x61\xc7\xdd\xdb\xf9\x49\x9c\xc5\x3d\x9f\x93\x4f\x8b\x6e\xee\x31\x6d\x43\x42\x23\x42\x3b\xe4\xc1\x52\x57\xbb\x5f\xb7\x3f\x77\x2a\x7c\xf8\xd4\xb9\x51\xab\x5e\x5e\x6a\x0b\x10\xcd\xaf\x60\xe2\x2c\x92\x34\x81\x77\x44\xc8\x13\xaa\x4f\x7b\x4d\x4a\xea\x9e\x79\xc0\x74\xcc\xc9\xb7\xd3\x3b\x63\xb9\x13\x1c\xe5\x3d\x26\x53\xe4\x45\xfe\xde\x91\x69\xfb\x93\xb9\xb4\x33\xd2\x9e\xe4\xdd\xdc\x63\xd2\x0e\x79\xa7\x76\x9f\xb4\x26\xad\x76\x40\x11\x5d\xcd\x9e\x51\x84\x79\xab\x3b\x3f\x27\xcd\xd8\x48\x40\x1c\x89\xea\xa8\x75\x2a\x3c\x35\x7c\xfc\xc8\xe3\x8f\x9f\x3a\x7f\xa8\xd1\xae\x3e\x34\xbf\xb2\x33\x7b\x89\x93\xcc\x5b\xdd\xc3\xf3\x4e\x41\x9d\x5d\x38\xf0\x2c\xa6\xcf\xe7\x32\xd4\xd9\x0d\xe2\xec\xe9\x21\x25\x27\xcf\x6e\xce\x22\xe6\xad\xee\x68\xfa\x30\x6f\x75\xb7\xbb\xbe\xe6\x93\x1a\xc4\x7a\x9b\x07\x80\x13\x60\xcd\x2f\xf4\x4a\xad\xe3\xc2\x6d\xe5\x94\x51\x05\x4a\x0b\x44\xc7\x0d\x5f\x0e\x95\xca\xa3\x41\xe0\x13\x97\x53\x73\xd7\xec\x83\x69\xc1\x0b\x96\x15\x12\x95\x44\x97\x42\x5b\xbd\xbc\x5c\x1f\x04\xd2\xdd\x83\xeb\x37\x89\x08\x1e\xd9\x6d\x46\x71\xf2\x20\x42\x8d\x5a\xab\x0d\x2e\xc1\xeb\xf5\x7a\xab\x5e\xaf\x93\x7a\xcf\xf3\x23\x71\x16\x89\xa3\x36\x2c\x2d\x10\x73\x56\x46\xaf\xb5\x89\x5e\x73\xe0\x90\x22\xe1\x83\xd6\xb8\xb8\x77\x08\xb3\x76\x8c\x10\x8a\x43\x12\x9d\x90\xb8\x1a\xcf\x44\xa5\x93\x86\xc0\xef\xca\x4f\xa3\x11\x25\xe7\x4a\x27\x48\x34\x47\xf4\x53\x06\x68\x4e\x7a\x0c\x10\x47\xba\x73\xb4\x52\xa1\x75\xb8\x4f\xb7\xad\xb2\xb7\x2a\xac\xe3\x69\x64\x21\x71\x3c\x62\x25\x09\x98\x3a\x54\xcf\x5d\x33\xa7\x8c\x57\x97\x09\x1b\x94\x20\x0e\xfe\x45\x94\x21\x74\x5d\xd0\xb9\x1e\x92\x48\x8f\xa1\x7c\xe1\x2f\xdc\x50\x08\x83\x5a\x86\x62\xfe\xcb\xc0\xbb\xa0\x02\x46\x56\x83\xb3\x06\x1f\x68\x47\x15\x9a\x06\x8e\x22\x81\x4d\x80\xda\xa4\xd5\x68\x23\x14\x77\xbd\xee\x71\xd2\x21\xde\x59\x72\x08\x0c\x9e\xe1\xad\x6b\x42\x5b\xf9\x53\xc0\x29\x5b\xd5\x82\x63\xe5\x88\x84\x51\xed\x9c\xeb\x45\x7c\x66\x2c\x0f\x3d\xbf\xab\x7e\x15\x4d\x10\x33\x73\x61\xe2\x3c\x0d\x82\x81\x99\xf2\x20\xbd\xd8\x98\xe2\xaa\x31\x67\xb8\xf7\xd4\xbe\x62\x44\x50\xe5\xc9\x5d\x1e\x1b\x02\x3b\x95\x4b\xfe\xad\xad\xba\xd4\x5d\xe1\xa4\x29\xca\x63\xf6\xba\x30\x43\x9a\xba\xe3\x9a\xa9\xf5\x02\x56\x1b\xb0\x60\xd5\x0b\x0b\x7c\x00\x49\x7f\x12\x0f\x28\x6a\x7f\xf2\x4c\x78\xc6\xb0\xfd\x50\x20\x9e\x54\xab\xf9\xfc\x78\xc6\x7a\x93\x22\x13\x6b\x5e\x21\xd1\xa7\x80\x19\x67\xac\x39\x29\x32\xb1\xe6\xd3\x8c\x08\xaf\x29\x33\xd6\x2a\xb3\x4f\xc3\xf5\x69\x42\xbb\x1e\x5d\x91\xed\x9f\x88\xdc\x88\x6c\x05\xed\x7c\xe9\x89\xed\xf5\xdd\x30\x55\x62\x76\x12\xe5\x4a\x4e\x6c\xe7\x24\x09\x15\x45\x67\x6c\x40\x4f\xce\x89\xd5\x8a\xb9\xb2\xa5\x7a\xe9\x4c\xf5\xf2\x19\xf6\x78\xc0\x9e\x56\xf3\x6b\xb6\xaa\x3d\xa3\xea\x29\xe2\x24\x27\xff\xf6\xcc\x84\x6d\xa2\x33\x2f\xb5\x42\xc8\xb7\x3d\xf1\x32\x59\xf1\xe8\xa1\x70\x8d\x76\xd2\x0f\x38\x63\x42\xbb\x90\x1c\x73\xfc\x9f\xa1\x91\xe7\x1b\x0f\x31\xe3\x2e\x59\x1e\xae\x1c\xa5\xbd\xc4\x11\x56\xab\x1d\x0b\xe6\xe7\x45\xa6\xc9\xda\x31\x74\x99\x45\xe2\x4e\xd6\xc8\x76\xc7\x07\x25\x73\x1a\x73\xc6\x03\xb2\x84\x63\xab\xd5\x78\x36\x57\x69\x5e\x78\x5c\xc9\x2d\xd2\x75\xca\x0b\x72\x51\xf7\x22\xb2\x2a\xd7\xf3\x63\xee\x20\xff\xc6\x8a\x92\xf3\xd1\xc9\xe0\x0c\xa1\x4e\x34\x1a\xd1\x38\xeb\xc0\xc2\xac\x72\x34\xb2\xc5\xc5\x35\xe4\x91\x2e\xaf\x94\xee\x90\x6e\xbb\x81\xd2\xa3\x2c\x6f\x6a\xf5\x1b\x29\x6d\xa6\x61\xbc\x93\xd1\x1f\x5b\x8d\xf6\x92\xf9\xa3\x99\xc6\xd3\x46\x38\xca\xd7\xb4\x60\x14\x59\x68\xab\xa7\x96\x3a\xf0\x60\xd2\x2b\x83\x26\xf9\x97\x81\x2a\xa0\x62\x82\x79\xa9\xe3\xfa\x3e\xe9\x96\x7a\x01\x2b\x3d\xb4\x4e\xe2\xd2\xf2\x30\x2a\x79\x51\xc9\x0b\x4b\xae\xcf\x88\xdb\x5d\x2b\x0d\xa4\xac\xaa\x3f\x8b\xd4\x20\xea\x8a\x52\x7e\x31\x65\x8b\xf2\xdd\x8f\x52\x99\xdd\xce\x19\x53\x2c\x89\x84\x18\xfb\xee\x32\xf1\x9b\x11\x67\x92\x64\x3e\x10\xf5\x98\x71\x3a\xee\x50\x64\x02\xe6\x34\x88\x4a\xca\x93\x97\x9f\xc2\xdf\xa8\x3e\x79\x9e\x95\x9f\x87\x89\x93\x36\xd5\x29\xef\x39\x52\x34\x33\xc1\x09\x9b\xcc\x25\x1d\x20\xda\x28\x99\xaf\xc6\xc7\x8e\x4f\x5c\x66\xa3\xe9\x33\x78\x6d\x40\x12\x9d\xc9\x9c\x94\x68\x3d\x6f\x05\x3b\x59\xb7\x99\x26\x01\x26\x68\x91\x0f\xd4\xe9\xe4\x9c\xd6\x25\xa3\x78\x4e\xbe\xfd\x03\x75\xd2\x52\xb8\x03\x5a\xd3\x56\x83\xac\xda\xf8\xc0\xd6\x02\x98\x5f\xa9\xfe\x44\x92\xdd\x95\x7f\x1c\x14\x63\xf3\xe1\x7a\x26\x27\xf0\x9b\xf2\x83\x83\x89\xa1\x29\x39\xb9\x15\x51\xb0\x96\xc1\x51\x98\x28\x15\xc8\xcc\x1a\x69\xae\x92\xb5\xe5\x15\x18\x61\x20\x93\x53\x37\x1c\x3a\x07\x1b\x43\x25\x34\xcd\x1d\x37\x88\xb2\x75\x35\x6f\x9a\x0d\xac\xa8\xdd\x5c\x8f\xe3\xe4\x3c\x02\x36\x60\x91\xb3\xa8\xde\x21\x1b\x13\x09\xad\x93\xba\x2a\x5f\xad\xce\x41\x18\x74\x63\x0a\xcd\x91\xba\xaa\xb5\x15\x09\x92\xb4\x1d\x36\x1a\x95\x1b\xb1\x10\x0b\x85\x8b\x84\x8d\xa0\xca\xc5\x46\xac\x22\x48\x93\x30\xaa\x54\x12\x58\x0f\x93\xec\xa9\xf0\x2e\x50\xa6\x36\x2a\x64\xa3\xf3\x51\x6d\x95\xb8\xe1\x90\x11\x96\xbc\xff\x4e\x25\xff\x7b\xcc\xe3\xc1\x07\x02\x04\x54\xf3\xa8\xa7\x85\xc9\xe9\xa2\xd7\xb8\x32\x2c\xb0\x4b\xcf\xba\xa1\xd3\x0d\x3a\x22\x59\x45\x34\x3d\x22\x77\xc5\xb6\x25\x3f\x5b\x90\x39\x3a\xef\x18\xa5\x38\xf3\x1c\x0e\x28\xef\xbb\x6d\xed\xeb\x5a\x28\xc6\xe7\xbc\x6e\xd4\x4f\xe6\x6c\x7e\x35\x2a\x5c\xd7\x16\xda\xe9\x45\x8a\x0e\x7d\xdf\x30\xaa\xb0\xa1\xf1\x7a\x2f\xa0\x91\x13\x25\xd8\xd4\x15\xc9\x4f\x72\x14\x08\xaa\x8b\xe6\x63\xec\x7b\x94\x84\x66\x1c\xd4\x1c\x1e\xfb\x0a\xf1\xd8\x67\xe2\xb1\x0f\xf0\xc8\x21\xa0\xa3\x63\x11\x75\xe0\x3f\x7f\x8a\xce\x23\xec\xe9\xd8\xcc\xda\x2e\x30\x70\x1a\x07\x82\x83\x3a\x64\x73\x00\x61\x60\x89\x43\x5b\x41\x9b\xaf\xc2\x96\x55\x76\x1c\xed\x41\x9a\x18\x37\x08\xc2\x10\x22\xe0\xaa\x4f\xc0\xec\x03\xc1\x41\xa6\x7d\xe8\x9a\xf5\x14\x52\x82\xb5\x82\x76\x55\xdc\x42\x08\x82\xcc\xd1\xaa\x43\x30\x5d\xe4\xa4\xf4\xaa\x55\x4c\x1d\x82\x62\x69\x33\x36\xb6\xb8\x51\xd4\x4d\x15\x75\x51\x9c\x58\x7e\xe2\x9e\x17\xf1\x22\x27\x44\xb8\xd6\x5d\xa1\x37\x44\xc5\x56\x9c\x84\x19\x52\x81\x92\x34\xfd\xeb\xab\x6e\xd4\xe9\xdb\xf3\xa7\xba\xd5\x79\xd4\x6a\xb4\x81\x53\x8e\xb9\x51\xbf\xde\xf3\x83\x80\xd9\x22\x1c\xf2\xe3\x7e\xe0\x46\xb6\x87\x1e\x8e\xe6\x29\x8a\xe3\x29\xee\x28\x23\x36\x8c\xfa\x39\x87\xed\x6e\xfa\x10\x1f\x17\x66\x06\x9f\xa4\x3c\xad\x13\xd0\xb3\x84\x4d\x73\x84\x95\x3e\xa9\x04\x6e\x61\x4e\x83\x8f\x0d\x70\x0b\x3b\x48\x0f\xb0\x6a\x15\x71\x29\xb9\xe0\x38\x59\xf7\xe2\x2d\xd6\x4e\xe2\x52\xb7\x98\x26\x43\xca\x39\xf3\x76\x0e\x38\x5d\xda\xdd\x5d\x0b\xc9\x62\xd2\x0a\xf3\xfb\xed\x1d\x74\xeb\x9e\x36\xda\x8e\xe3\x90\xd6\xf6\xfa\x29\x10\xd8\xdd\xa3\xed\xe2\x9e\xae\x6c\xeb\xa2\x43\xcd\xa6\x56\xda\x17\xab\x58\x40\x3b\xe4\xc9\x21\x6f\xaf\x52\xb1\x2d\x2a\x20\xab\xac\xe3\x5e\x88\x98\xed\xf2\xbb\x78\x98\x91\xcb\x41\x2b\x15\x9b\x42\x0e\x8a\x10\xc2\x6c\x71\x5b\x86\xca\x2b\xbb\x7c\x27\x32\x8e\x7a\xdb\xba\x54\xdc\x53\xf2\x39\xdb\xa4\xdf\x2e\xdf\x48\x16\x13\xd0\x0b\x6b\x2e\x63\xee\xcc\x41\xa3\xd3\x73\x0d\x84\x53\xe4\x34\x30\x4b\x84\x53\x74\x90\x1d\x88\x0c\xe1\xa4\x1c\x7d\x85\x32\xa2\x3b\x69\x45\x5a\x38\x69\xfb\xc8\x72\x63\x3b\x44\x52\x55\xee\x11\xa1\xc8\xea\x20\xda\x8b\xe8\xda\xdb\x70\xca\x6c\x70\x31\x10\xfb\x08\xc7\xd6\x8e\xa6\xfb\x5a\x1e\xdf\xdf\xed\x0b\xe1\xdc\x25\x53\x82\x16\xaf\xd4\x8e\xf0\xf6\xac\x82\x55\xf9\xbd\x18\x70\xff\x5d\x2f\x98\x0f\x6e\x4b\xb0\xf8\x7b\x22\x98\xfd\x77\xbf\x60\x3e\xb8\x3d\xc1\xec\xef\x8d\x60\xd6\x8f\x10\x77\xac\x05\x95\xb7\xaf\x05\x51\xf5\x86\x50\x76\x68\x8f\xba\xfd\xae\xd0\xa9\x1b\x13\x75\xea\x1d\x2e\x5b\x34\x88\xf6\x42\x89\x2e\x8e\x25\xf5\x2e\x23\xe5\xee\x6e\x4f\x02\xb6\x17\x84\x3d\xbf\x17\x94\x35\xde\xbc\x19\x84\x6b\xb4\x51\x39\x4f\xce\x85\xed\xbd\x7d\x3b\xff\x60\xc9\x55\x44\x81\xbd\x8d\xc4\x01\x47\x92\x04\x0e\xf4\xa4\x1f\x36\xcb\x0b\x4f\x72\xac\xd6\x2c\x24\x8e\x59\x96\xa5\xcd\x4f\x62\x07\x94\x38\x4f\xcc\xaa\x2f\x4a\x85\x45\x4b\x8d\x32\xe8\xb5\xaa\x4e\xc9\xb7\x16\x6a\x96\xcb\x45\x21\x3e\xce\xba\xbe\xd7\x75\xa3\x80\x85\xf3\x9d\xc0\xf7\x89\xc0\xb1\x88\x8b\x8c\x8c\x92\x80\x2a\xc1\x0b\x68\x8d\x30\x16\xec\xc9\xb9\x3a\x56\xee\x85\xa8\xd1\x47\x86\x2d\x03\x73\x41\x39\x31\xb7\x69\xa5\x52\xce\x92\x07\x15\x71\xaf\x59\x1c\xf3\x26\xe6\x60\x83\x40\x61\x7c\xa6\xd5\x10\x7a\x74\x65\xe8\xbb\x4c\x95\xd7\x42\x78\x0a\xbd\x69\xcf\x63\xab\xee\xbb\x9c\xe2\x98\x4a\x9a\x7b\x69\x9a\x03\xad\x53\x89\xae\xef\x07\xe7\x1e\xf5\x5d\x7a\xc6\x42\x09\xed\xa4\xca\xaf\x69\x57\x16\x57\x79\xe5\xb4\xe6\x4d\x70\x52\x11\xc5\x1e\x1a\x3b\x54\x26\xcd\xb6\x40\xec\xae\x1b\x15\xde\x12\x4d\x27\xb2\x0e\xb5\x45\xbe\x30\xf4\x98\x30\x02\xe4\x94\xdb\x13\x5b\x24\x70\x7c\x4a\x73\x77\x83\xd6\xb1\x60\x95\xd0\xe8\xe3\x27\x4a\x5e\x58\x52\xa8\x09\xc7\xa7\x1c\x87\xa8\x4f\x4a\x8f\xb9\x11\x29\xe9\xde\xd5\x2d\xa4\x42\x23\x6a\x32\x7f\xca\x8b\xfa\x10\x09\x8a\x61\x4b\x74\xf6\xf1\x80\xd3\xd6\xc2\xd6\xb1\x63\xc7\x4a\x8f\x05\xb8\xf4\x99\xcf\x7c\xe6\x33\x96\x0a\x03\x97\x14\x55\xdd\xf1\x48\x68\x33\xdc\xb2\x7a\x50\x6a\xc0\x48\xc7\x0b\xc5\xd0\x98\xac\xd0\x96\x6d\x87\x8e\x5b\x97\x59\xb1\xef\xb8\x75\x9d\x19\x0f\x1d\xb7\x9e\x64\x17\x8d\x75\xc6\x36\xb6\x2c\x7d\x98\x73\x06\x7c\x8a\x3d\x0a\x3f\xdc\x9e\xb4\x83\xe2\x89\x87\x04\xac\x1a\xed\xe2\xbe\xd3\xa9\xcb\x42\xb8\xe7\x74\xea\x49\x31\x3c\x70\x3a\x75\x51\x10\xaf\xaa\x0f\xa2\x28\xe7\xce\xe1\x14\xee\x0d\xd1\x7a\xd7\xf1\x6c\x82\x43\x5c\x6e\x48\x81\x21\x7e\xa1\xba\x17\x7e\x92\x13\xdd\x1e\xc3\xc0\x92\x0f\xb5\x94\xe9\x4e\xcb\x7f\x8e\x05\x74\x85\x8f\x25\x0c\x0d\x2f\x1a\x13\x3f\x24\x25\xaf\x67\x0b\x1c\x10\x9e\x5e\x4d\xba\xd9\x7e\xa5\x62\xf7\x1d\xcf\xee\xe3\x50\x15\x96\x14\xb1\xfb\xd8\xd7\x33\xaf\x94\x44\x47\x62\x58\x93\xbd\xaf\x86\xd0\x0e\x10\xc2\x99\x46\x20\x0f\x34\xd3\xab\x54\xec\x9e\xe3\xd9\x3d\xdd\xcc\x09\x77\x95\x00\xf9\xed\xde\xd8\xc6\xcc\xa1\xed\x4d\x68\xd0\xcc\x07\x8d\x0e\x2a\x15\x7b\xe0\x78\xf6\x40\x37\x2a\x06\xd5\x1e\x8c\x6d\x4d\xf1\xce\x60\x42\x43\x2a\x0b\xb4\xb1\x5a\xa9\xd8\xab\x8e\x67\xaf\x66\x3a\x26\x5b\x5a\x9d\xd8\x2f\xc9\x9d\x78\x75\x4a\xb7\x0e\x19\x2d\x6a\x09\x87\x49\x5d\xdc\x12\x70\x7e\x70\xbc\xc4\xa9\x6a\x2a\xa2\x9d\xb5\x2a\x24\x83\x85\x12\xc5\x4d\xfa\x71\x65\x4e\x79\x41\x9b\x18\xd3\xe0\x9c\xe5\x38\x0e\x19\x8d\xb2\x7c\xbe\x44\x6d\xd4\x84\xc4\x27\x03\x4a\xec\x88\xa7\x71\xd1\xc3\xdb\xe5\x33\xa1\x09\x22\x6f\x8a\xcc\x0d\x41\x84\x16\x44\x3a\x4c\x4b\xd3\x6d\xaf\x79\x0f\x48\xee\x46\x38\xc0\xee\x58\xd9\x2b\xa8\x53\x7b\xcc\x8d\xdc\xb1\xd2\xf7\x84\xcc\x9b\x96\xc0\xc2\xa3\xb7\xe3\xd9\xae\x94\x4d\xbe\x13\xd6\x07\x6e\xd4\xc7\x43\x27\xac\x9f\x21\x6b\xd8\x90\x7a\x76\x80\x7d\x94\x5a\x27\xc5\x50\x74\x50\xa5\xd2\x29\x81\x07\xeb\xa0\x57\xa2\x75\xd1\x4e\x58\xa9\x74\x84\x19\xc9\xd0\x10\x00\x26\x53\x74\x43\x19\xb3\x02\x47\xc6\x42\xdb\xa9\x0b\x9a\x86\x8f\x07\xcc\x1e\x22\x6c\xf9\x6e\x18\x29\xfa\xad\x92\x30\x74\x57\x88\x85\xd2\xec\xc7\xe5\xb1\x1b\xf5\x0f\xd1\xee\x27\xc8\x5a\x9a\x05\x4d\x0e\x96\x83\xd9\x75\x23\x37\xc3\x86\xda\x30\x02\x2e\x0d\xeb\x16\xc2\xcc\x89\xea\x83\x60\x60\x7a\x1b\x1a\x0c\xc3\xbe\x2d\xd7\xa4\xd0\x42\x78\x9d\x93\xa9\x19\xa9\xc7\x46\xbc\xcc\x19\xb2\xd6\x64\x45\x26\x26\x06\x07\x91\xf3\x1d\x7f\x18\xbe\xab\xb5\xab\x02\xdd\x8a\x62\xcb\xa3\x8a\x59\x82\xc2\x65\x90\xe2\x96\xc5\xa4\xb7\xed\x82\x65\xd6\x75\x82\xba\xf8\xca\xb9\x27\x30\x16\xd6\x29\x4b\x9a\x57\xa9\x08\xe7\x6d\x9e\x7e\xd3\x3f\x4e\xdb\x35\xe8\x2a\xfc\x1e\x7b\x3d\xdb\xad\x54\xf6\x39\x8e\xe3\x82\xa7\x9d\x75\xc9\xea\xcc\x76\xf1\x3e\x89\x96\xe7\x84\xad\x46\x1b\x07\x4e\xd8\x5a\x68\x27\x8a\x23\xdf\xd9\x88\xa6\xf4\x79\xbc\x4a\xf1\xb4\x02\x39\x36\x4b\x80\x2a\x15\xef\xa0\xf0\x06\x7a\xd0\x09\x66\xc2\x35\xd6\xcc\xac\x8e\x88\xd2\x23\xec\xf5\x6c\xa1\xe8\xe7\x15\xfe\x92\x20\xe7\x09\x11\x88\xa7\xee\x45\x84\x71\xd6\x29\x79\x10\x7e\xcf\xc8\x98\xae\x51\xb6\xd2\x6a\x63\xea\x94\x1b\xe0\x10\x45\x6d\x68\x23\xb6\x26\x0e\x2a\x54\x90\x5d\x87\xb4\x32\xf5\xb7\x6d\x74\xa0\x6c\x53\xc7\x76\x1d\x69\x33\x67\x23\x54\xef\x06\x94\xa0\x4a\xc5\x66\x72\x92\xb8\xd2\x74\x06\xe1\x72\x34\x1a\xc1\x7d\x7b\xd9\x71\x22\x74\x80\x37\x89\x0e\xc4\x1d\x71\xf5\xec\xa3\x75\x8f\xa3\x10\x38\x7e\xdc\xf3\xa8\xeb\xfb\x6b\xeb\x1c\x81\x32\xad\x54\xc2\xba\xc4\x3d\x81\x6c\xa4\x33\x71\xd6\x50\x22\x30\xd0\xd7\xe8\x4c\xb8\xca\x47\x73\x85\x8e\xf8\x8f\x52\x31\x97\x4a\xca\x21\x3f\x97\x8b\x22\x62\xdb\xb0\x13\x0d\x19\x91\x3e\xf8\x23\x69\x27\x5b\x4a\x9c\xf1\x4f\x9e\xcb\xa0\x63\xbe\x2b\x26\x32\x23\x62\xb7\x77\xe4\xfc\x80\x91\x90\x33\x17\x44\x9c\x2d\x9e\xe4\x3a\x68\x63\xd1\x64\xf6\x64\xc8\x3d\x72\xde\xc2\x16\xe7\x6b\x11\xac\x47\x84\xb6\x18\x3f\xbb\x79\x76\x1c\x3a\x81\x98\x08\x82\x91\x7d\x11\xb9\x50\x14\x53\xf1\xec\xb4\xe9\x82\x5f\xa9\xf8\x5b\x11\x05\x61\xa5\x52\x76\x2b\x15\xda\x0a\xdb\x95\x8a\xed\x3a\x1c\x40\x73\x16\x59\x75\x3d\x9f\xab\x0c\xa1\x48\x75\x1c\x5a\x17\x49\xe2\x57\xde\xf2\x4d\x7d\xad\x87\xc1\x90\x75\x48\xea\x3c\x36\xdd\x7f\x82\x5b\xb2\x9b\x4f\x06\xf4\xa4\xdf\xb5\xb0\xb5\xea\x71\xe0\x09\x79\x6e\xd1\x06\xe9\xc1\xea\x46\x2e\x11\x59\xd2\xcc\x37\x97\x5a\x25\x03\x34\x1a\xe5\x8e\xda\x83\xd1\xc8\x8e\x9c\xe4\xd5\x9d\xd5\x72\x6b\xcf\x35\x6a\x1f\x69\xdb\x4b\x4d\x05\xd6\xda\x0f\x43\x22\x5a\x7a\xc8\xc2\xcf\xc2\xaf\xf5\x87\xd6\x83\x18\xc7\xe3\x72\x3e\x8b\x84\x8b\xf7\x74\xf5\xff\x91\xe4\x1e\xd7\xc4\xa9\x53\x75\x64\xe1\x19\x73\x2e\xa1\x64\x31\x2e\x19\x9e\x90\x22\x6c\x79\x16\x8a\x6d\x0f\x41\xc4\x19\xae\x6d\x7a\x18\xb8\xca\x45\x52\x8f\x60\x9c\xa7\x85\x19\x8a\x85\x46\x23\x37\xc7\x02\xca\x44\xc5\x45\xa8\xec\x38\xc3\x42\x69\x1a\x8e\x46\x9c\x39\xf9\xfc\xe2\xe2\xd4\x33\x74\x03\xed\x3a\x50\xd6\xda\x71\xe9\x51\x7a\x36\x38\x43\xc4\xe9\x6b\xc1\x7c\x59\x17\xec\xd1\x9c\xff\x9c\xea\x63\xf9\xff\x3c\xf4\xbe\xca\xfb\x1f\xae\x9e\x9a\x77\x96\x3e\x77\xfa\xd9\xf5\x51\xfc\x7f\x6b\xed\xaa\xbd\xd4\x3c\x55\x9f\x98\x03\x3d\x3c\x0b\xf5\xea\xa8\x3a\x6d\xb4\xe7\x3d\x3c\xe8\x07\x94\x34\xe7\x3f\x67\xb7\x4e\x55\xdb\x4b\x0b\xa7\xc2\x87\x5b\xb5\x53\xf3\xa7\xea\xed\xa5\x53\xe1\xc3\x68\xc9\x3e\x65\xdb\xa7\xba\xeb\xfb\x63\x74\x0a\x8d\x14\x84\xd2\x99\xe0\x7b\x2e\xf1\x11\x91\x68\xdb\xad\xf3\x9f\x6e\x8f\x5a\xe4\x48\x9b\x03\xad\xe8\x64\x7b\xa9\xc5\x73\x8d\x84\x01\x1c\xa7\x8c\xc8\xd6\xfa\x3f\x0f\x9f\xea\xb6\xab\x08\x3d\xfc\xd0\x3c\x1e\x32\xbf\x39\x6f\x2f\x35\xed\xd6\xa1\xda\x67\xdd\xda\x73\xed\x2a\x6a\x72\x64\xe6\xd7\x1b\x78\x7f\x8c\x78\x17\x0e\xd5\x3e\xcb\x7b\xa1\xc0\x1a\x87\x1f\xb6\x4f\xd5\x5b\xa7\xce\x71\x0a\x55\xed\xd6\xa9\x73\x75\xfc\x1f\x4b\x9f\x73\xde\x57\x71\x57\x07\x07\x9a\xa7\xe6\xff\x6f\xf5\xff\xd4\xd6\xe3\xf6\xc3\xad\x53\xe7\x92\x74\x9d\x8c\x96\x96\xe6\x27\x8b\x63\xf1\x52\xee\x3d\xd5\x6a\x2b\xaa\x95\x33\x8b\x6a\x65\xd0\x75\x07\xaa\x55\x79\x57\x94\x2b\x34\x1a\x79\x8b\x64\x34\x22\x8b\x63\x74\xab\x0c\xb2\xef\xe9\x56\xff\x4b\x75\xab\xb1\xcf\x16\x27\x1f\x79\xee\x7c\xd6\x2a\x1c\x88\xc9\x29\xf5\x7a\x5d\x1f\xf2\x17\xee\x2a\x0d\xc4\xad\x6a\x12\x3a\x8a\xda\xa2\xe4\xe4\x9e\xaa\xcb\x90\x77\xad\xcc\x52\x01\x9a\xe8\xd8\xd3\x4f\xd0\x81\x32\xf2\x09\x73\x5c\x1e\x25\xd1\x39\x42\xe8\x31\xb5\x73\xc7\x96\x17\x4a\x6d\x8a\xff\xef\x9e\xb7\xda\xd2\xdc\x57\x57\xa1\x0e\x84\x13\x4f\x65\xa3\x91\x87\x5d\xc8\x21\x2a\x16\x61\xe7\x72\x55\x63\xdf\xa1\x75\x2f\xc4\x43\x87\x72\x25\x0c\x77\xf8\x5f\xf7\x7c\xb2\xa9\x53\x6a\x58\x22\x05\xcb\x5c\xf9\xca\x0a\x0f\xad\x47\x30\x90\x73\xe3\x85\xa8\x38\xca\x2d\xbe\xd8\xca\x1f\x92\xf8\xa8\x52\xf1\xcb\x8e\xd3\x9d\x70\xa4\xaa\xd4\x4b\xdd\x7a\x68\xdc\x16\x89\x4a\x86\x28\x9b\xd2\xe1\x92\xa1\x7b\x70\x38\x1a\x75\x17\x3b\x63\xe4\xf7\xb2\x24\x94\x71\xc2\x9b\xab\x74\xb8\x38\x06\xaf\x28\x08\x4e\xf4\x03\x16\x8d\x2b\x2c\xce\x7e\x0e\x8e\x2f\xfc\x44\x40\x57\xb6\x74\x27\xa2\xce\x78\x66\x76\x27\xbd\x03\x1e\x5f\x3f\x2d\xb4\xd1\xe6\xfc\xa9\x75\xfb\xd4\xb9\x2a\x3a\x15\xcf\xaf\x60\xf5\x11\xa2\x05\x7b\x01\x6d\x5a\x27\xfb\x5e\x28\xc3\xb5\x59\x78\x85\x98\xdf\x1e\x97\xaf\xe3\x9c\xf5\x58\x9b\x91\x24\xfc\x10\x61\xab\x9b\x64\xe5\x0a\xae\xf1\x4d\x44\x28\xcb\x37\x66\xa1\x98\x37\xa1\x98\xba\xa0\x7a\x61\xc1\x2d\x37\x9e\x2a\x93\x9d\xa9\x95\x20\x1c\xa1\x18\xa7\xf3\x40\x2d\xca\x3c\x1e\xbc\xc4\xa6\xc6\x92\xf1\x1d\x8a\xf2\x3e\x98\x98\x0b\x89\xa5\xc7\xc9\x62\x0e\x33\x05\x21\xcc\xf4\xf6\x22\x9b\x49\xd2\xd7\x42\x58\x48\x11\x67\xd1\x24\x0d\x43\x28\xc6\x6e\xa7\x43\x06\x11\xe9\x36\xad\x75\x83\x52\x71\x69\x75\x18\x46\xa5\x65\x52\x82\xef\x16\x16\x87\xdd\x63\xb3\xf1\x8f\xa5\x75\xf1\x27\xb6\xb0\x3c\xf2\x1f\x97\x59\x7e\x2d\xad\xcb\xbf\x3c\x3b\x17\x2a\xd9\xdc\x1d\x97\xbe\x5f\x66\x97\xb2\x2c\xb9\x8e\x1d\x8b\x44\xc9\xbc\xb2\x35\xef\x04\xb3\x25\xba\x01\x09\x79\xed\x62\x6f\x53\x5a\x0f\x68\x6c\x61\xbe\xe2\x8c\xaf\x59\x2e\xaf\xea\xbe\x44\xec\x51\xa6\x64\x15\x99\x4a\x6e\xb7\xcb\xf7\x36\xbc\xcc\x20\x5a\x1b\xdb\x45\x65\xab\x29\x2c\xa8\x4e\x06\xe3\xaa\x16\x9f\xf9\xd2\xbe\xee\x85\xb1\x85\xc9\x59\x32\x96\x14\xfc\x9b\x85\xf5\x29\x57\x36\x9b\x38\x9e\x0e\x09\x3b\xcb\x07\x76\x45\xbc\x93\x61\x27\xfb\xee\xd8\xea\x54\x96\x52\xd4\x77\x69\x69\x7d\x25\x8a\x53\xa5\x9e\x62\x47\x26\x23\x9e\x2a\x1e\x30\xa3\x23\x2b\x11\x1f\x7f\xad\x31\x16\xe0\x49\x83\xa8\xa4\x1c\x70\x74\xb9\xf2\x17\xf5\x49\xc9\xf7\xc2\x88\x97\x12\x94\x2e\x28\xa3\x17\x11\x9f\x84\xe1\xa4\x7e\xf1\xef\xaa\x53\x3e\xef\x14\xe4\x9f\xda\xa3\xa4\x60\xaa\x3b\xbe\xe8\x0e\x0d\xa2\x43\xf4\x28\x8d\xc8\xca\x84\x09\x43\x4b\x9e\xcc\x21\xf3\x4b\x5b\xbf\xf1\x4c\xa5\x8e\x2d\x70\xd0\x1d\x3b\x55\x83\x6e\xd7\xc2\xfa\x92\x68\x6c\x2e\x81\xb2\x9a\xaf\x3a\x77\x2c\x4b\x3e\x3a\x71\xde\xca\xa2\x30\x7b\x93\xfc\xbc\x70\xd4\x9f\xcc\x41\x22\x83\x22\xb5\x0c\xe6\x69\xa9\x8d\xf5\x94\x79\x24\x32\xe9\xee\x4b\xaf\x33\x67\xc7\x96\x82\xef\x16\x86\x98\x91\x4f\xf5\xc6\xb7\x00\x79\x4a\x41\xaf\xb4\x9e\x14\xe0\xa8\xf1\xe9\x41\xa3\xb1\x12\x4c\x8a\x24\xb0\xef\x18\x3b\xaf\xd3\x12\x49\x2d\xc6\x05\x0c\x1b\x05\x41\xc9\x0f\xe8\x4a\xc9\x5e\x75\xcf\x7b\xab\xc3\x55\x9e\xb8\xbe\xea\x9e\x8f\x4b\x9d\xbe\xcb\xdc\x4e\x44\x58\x88\x44\x0d\x42\x17\x18\x53\x45\xc8\xbf\x95\xec\x55\x8f\x26\x75\x78\x34\x53\x87\xd2\x45\xc6\x0b\x67\xf1\x59\x95\x74\x69\x37\x87\x87\x25\xce\x1e\xa6\x0c\xdb\x90\xf9\x16\xce\xdc\x52\x8f\x2b\xa3\x66\xb5\x5c\x2e\xc5\x58\x48\x30\x56\x35\x48\xa5\xac\xa8\xcf\x7d\x52\x12\x39\x4a\x52\xeb\x2b\xd9\x61\x3f\x18\xfa\x5d\x5e\x29\x97\x91\xa9\x8e\x4f\x56\x7a\x80\xc1\x76\x7f\x0b\x60\xda\xc9\x61\x86\x3d\xa9\x01\x04\x29\xb3\x19\x82\xb0\xeb\x78\x4a\x25\xe0\x0a\xba\x23\xa2\x99\xb9\x65\xc7\x09\x96\xb2\xdb\x1d\x29\x99\x2c\xec\x61\x86\x9a\x96\x1f\x41\xe6\xc5\x7c\x5e\x90\x67\x49\x66\xa2\x73\x8f\xcd\xac\x85\x1f\x94\x5a\xd1\x4d\x1c\xcc\x37\x61\xac\x03\x49\x7e\xdd\xca\xc1\x49\xf9\x73\x0d\xe9\xd9\x0b\xa5\x1b\xd9\xd2\xc9\xfc\x96\x25\xb8\xcc\x53\x99\xdf\xb7\xcf\x71\x72\xf9\x85\x4c\x94\x59\xc5\x92\xa8\xf3\x96\xf3\x79\xe5\x9a\x29\x32\x97\x6d\x2b\x11\x07\xaa\x50\x99\xda\xee\xbc\x38\xfe\xc8\x94\x33\x72\x8a\xd2\xa9\x08\xc1\xc9\xcd\xba\x64\x30\xd3\x79\x97\x17\x3e\xee\x51\x4f\xdc\x9d\x57\x2a\xc6\x93\x3f\x71\xea\xb2\xa3\x80\xbf\xe9\x5b\x06\xc9\x6f\xca\x9a\x5c\xb0\x9a\x19\xcc\xdb\x83\x0b\xe8\x71\xd7\x10\xa9\x0d\x65\x6e\xa7\x79\x42\xf9\xca\xb6\x60\x39\x6b\x27\xb7\xd8\x19\xeb\x9d\x21\x24\xe9\x6d\x66\x27\xd9\x66\x0e\x47\xa3\x21\xee\x42\x0e\x59\x2b\xee\x3b\x61\x5d\xd5\xcb\x37\x3e\x9d\x64\x2f\x98\xd9\x49\x8a\xf3\x34\x7f\xca\x79\xdb\x98\x8f\x99\xe1\x4c\x56\x63\x75\x98\xed\xf5\x6c\xd0\xc9\xcd\xd1\x2b\x8f\xd9\x72\x15\x95\x2f\x9b\x9b\xa7\xf1\x0c\x51\xf6\xc2\x27\xdd\x27\x45\xc4\xe9\x60\x0b\xd8\xf5\x05\x73\x4e\x2a\x01\xda\x88\x2a\x63\x3c\x84\x3a\x10\x1d\x74\xf5\x43\xa8\xe4\x2d\x2e\xb3\xdd\x56\xd4\xc6\x1e\x0e\xd2\x36\xa7\x7a\x53\x42\xf4\x21\x5d\x3c\xdb\xae\x52\xae\xa8\x9d\x1d\x5a\xdb\xe5\x72\x0e\xe9\x39\xe6\x0e\x6a\x03\x16\x9c\x5f\xdb\x23\x23\x10\xaa\xc2\x65\x8f\x3d\x29\x4e\xba\x6a\x79\x2b\x34\x60\x24\x75\x5a\x1c\x38\x5e\x1d\x72\x70\xa9\x5f\x37\xf2\xe0\x30\x63\xb5\x43\x10\xf6\x1d\x77\x09\x38\xf7\x69\xa9\x96\xd8\x21\x6a\x96\xd3\xdc\x1c\x26\x16\xae\x41\xa5\x52\xf6\xc7\x9c\x43\xc8\x59\x0c\x67\xc8\xc2\x9a\x35\xa8\x54\xc6\xe4\x56\x4a\x90\xca\x3f\xdb\x30\xcb\x51\xf1\xc2\x22\x17\x1c\x7b\x60\x42\xad\x90\xb4\xcb\x64\x34\x2a\x8b\xf3\xa0\xa8\x4f\xa8\x85\x50\xac\x1d\x3e\x64\x6e\xa2\xf2\x2e\x45\x26\xf3\xd8\x0e\xde\xb7\x28\xb4\x6c\x62\x5a\xea\x48\x74\x64\xf7\x9f\xe6\x2d\x8c\x46\x05\xdf\xc5\xd1\xb8\xf8\xbc\x3d\xb7\xce\x59\x5a\x95\x88\x6d\x04\xae\xb7\x19\x5a\x22\x76\xc6\x76\x9a\x46\xc2\x5c\x0c\x35\x59\x2c\x9e\xb2\x89\xd6\x8b\x5e\xe4\xcd\x30\x7b\xf7\x90\x07\xa4\x07\x3b\xe8\xdb\x3a\x17\x57\x4d\xa2\xa2\xac\x47\xb8\x23\x7d\x3c\x34\x19\x56\xa7\x5c\x4d\x9a\xb6\x16\xf2\xce\xae\x89\xc0\x99\xab\x1e\xc7\x7c\xbe\x13\xac\x0e\x02\x4a\x68\x14\xce\xa7\xbf\xec\x41\x9f\xe4\x78\x1c\x06\x0c\xb4\x37\x8c\xc8\x5d\x79\xd2\x5d\x25\x4d\x8b\xf7\xc4\x65\xc4\xb5\x30\xc7\xeb\x98\xc0\x0b\x4c\xf4\xa8\x68\x56\x39\xf5\xb0\x11\xee\x7a\xdd\xa3\x34\x24\x2c\x02\x7f\x18\x53\xdd\x69\x9c\x4e\x2a\xd5\xa1\xcb\x6d\x2b\x49\xb4\x90\x88\x03\x7a\x92\x9c\x8f\x0e\x31\xe2\xda\x49\x1e\xe5\x88\xf2\x68\x17\x9c\x6d\x98\xa9\x16\x38\xa2\x0c\x49\x34\x1c\x1c\xd6\xd5\x1d\x39\x4b\x68\xf4\x31\x97\x76\x7d\xc2\x6c\xab\xd3\x97\xb7\x6d\xe2\x14\x4b\x66\xef\xf4\x09\xa7\xd6\x27\x39\xa9\x9e\x19\x74\xdd\x88\x74\x0f\x09\x9a\xa3\x18\x0b\x8f\x95\xb4\x9b\xb8\xb4\x1a\xdf\xad\xa1\x28\x9a\xb4\xfb\x94\xd8\x4e\x84\xf6\x98\xcf\xa2\x39\x1b\xc5\xd8\x0b\x3f\xe9\x85\xde\xb2\x4f\x1e\xf3\xba\x32\x48\xbb\x22\x75\xb0\x2c\x0e\x52\x98\x6d\xe9\x2c\x56\xca\x69\x91\x44\xe8\x9c\x0b\x5f\xcb\x8e\x41\xcf\xa4\x8c\xbe\x7b\x63\x43\xaa\x7b\xfb\x14\xed\x10\xdb\x62\xa2\x6f\x26\x35\xa2\x60\x65\xc5\x27\xa2\xa8\xe7\x7b\xd1\x9a\x70\xef\x32\x9e\x44\x72\x5b\x92\x54\x1f\xf0\x6a\x0d\xda\x12\xda\xcd\x17\x92\x76\x7d\x8a\x00\x98\x88\x23\xcd\x49\x83\xa6\x56\x5c\xb0\xfd\x4b\x5a\x5b\xf6\x68\x57\x9c\x37\xce\x65\x19\xab\xae\x16\x54\x89\x06\x57\xe9\xac\x73\x9e\xef\x3f\x46\xc2\x88\x05\x6b\x8a\x55\x55\xbf\xf3\x24\x35\xeb\xe9\xf5\x44\x45\x31\x12\x48\x16\x75\x87\x33\x03\xd1\x6e\x4c\x29\xa4\x5a\x67\x8d\x9c\x16\x16\x99\x62\x9c\xa5\x2f\xb8\xbd\x05\x37\x25\xd9\xb1\x9b\x2b\x18\x64\x02\xde\x56\x8c\x64\x87\x60\x52\xa9\xe4\xd0\x67\xa4\xc7\x48\xd8\xb7\x39\xf6\xc5\x0c\x6a\x78\x80\x33\x0b\xae\x90\x08\xbe\x23\xce\x57\x05\x75\x87\x49\x16\x31\x84\x63\x27\x40\x41\x0f\x03\xf9\xcd\x42\x73\xa4\x52\x31\x37\x0d\x04\x69\xef\x47\xc9\xb8\x00\x82\x63\x7a\x10\x61\xf1\x96\x3e\x96\xa3\x5d\x80\x89\x62\xb5\x02\x3c\xc4\x18\x71\x2c\x60\xee\x64\x68\xa0\x4a\x16\xf7\x5e\x7e\x24\xa3\x91\x25\xdd\xfa\x64\xf9\x6b\x4b\xa2\xb0\x1e\x05\x5a\xe2\x99\xd2\x2d\x25\x17\x13\x17\x58\x47\xd5\x42\x5e\x2c\x1d\xf9\xb2\xe3\x93\x88\x94\xb2\xad\x64\x9c\x40\x66\x16\x25\xed\xaa\x49\x44\x78\xce\xaf\x47\xd8\x32\xd6\xa9\x07\x76\x3f\xb9\x13\x57\x4d\xa7\x41\xc1\x09\x61\x2b\x2a\x9d\x35\xd9\x74\xe8\xfb\x28\xc6\xa9\x85\x45\xdc\x7f\x9a\x77\x2f\x39\xe2\x92\x44\x6d\x4d\xaf\x49\xe2\x8a\x03\xda\x7a\x3c\x30\x5e\x2a\x96\x32\x78\xb4\x48\x3b\xc6\x45\x15\x4f\x28\xe0\x44\x38\x8a\x71\xe8\xad\x50\xf1\x52\x89\x71\xe1\x41\xa5\xa7\x33\x89\x4b\xf6\x53\x8c\x0b\x38\x83\xa0\xf5\x14\x17\xa4\x50\x4a\xf3\x81\xef\xae\x05\xc3\xa8\xb6\xec\xd1\xda\xc0\xed\x9c\x21\x6c\x7e\xd9\xcb\x98\xda\xe4\xb3\x10\x1a\xb1\xb5\x2d\x3d\x69\x4f\x9c\x16\x39\xd1\x68\xd4\x50\x2e\xaa\xa4\x42\xe8\x18\xae\xc9\x4c\x72\xa6\x84\x73\x81\x81\xc2\xb1\x61\x18\x1d\x5d\x1d\x48\xde\x6f\x96\xac\x2a\x41\xf1\x4e\x14\xd9\x08\x13\x69\x73\x23\xea\xcf\xd8\x94\x24\x18\x1c\xd7\x59\x6c\xeb\x69\x97\xb9\xab\x24\x22\x4c\x1f\x3c\x9e\xf3\xa2\xbe\x47\x9b\xa5\x56\x43\x1c\x74\x5a\x55\x52\xb5\x90\xf0\xa2\x78\xce\x0d\x39\x92\x5c\x5e\x46\xf5\x01\x0b\xa2\x80\x2b\x92\x75\xe9\x81\xfd\x50\x94\x69\x4f\xbf\x07\x8e\xda\xe9\xfc\xe0\x24\xdd\x61\x70\x74\x15\x50\xae\x14\x19\x59\x7a\xfe\x30\xec\xf3\xef\x02\xc8\x7c\xec\x13\x6f\xa5\x1f\xf1\xaf\x12\xca\x7c\xf6\xc2\x8f\x32\xaf\xeb\x08\xd5\x83\x43\x99\xcf\x72\x5b\x9f\x77\xad\x57\x32\x07\x54\xe5\x4a\xe3\xbd\xea\x9e\x3f\x2c\x3f\x3f\xd5\xeb\xa5\x7c\xee\x19\x16\x36\xa2\x16\x89\x97\x9d\x18\x5c\x88\x73\xac\x55\xf7\xbc\xcd\x6a\x11\x6e\x64\xe8\x77\x56\xae\x82\x22\x08\x01\x04\xa0\xe6\xe8\x17\xa5\x67\x3a\x23\x8f\x4b\xd4\x32\xfa\x29\x31\x70\xbc\x64\x41\x72\x21\x0d\x0f\xc9\xb0\xcc\x05\x9b\xc5\x14\x35\x5a\xa4\xad\x0a\xa4\x11\x17\xb3\x61\x0b\x75\x48\xef\x6d\x93\xe7\xae\x9c\x98\xff\x8e\xbd\x91\x31\x72\xe0\x22\x56\x4d\x77\xf9\x43\xb3\xed\xfa\xf9\x26\xc3\x6b\xd9\x3d\x52\xbe\x2b\x3d\xef\x3c\xe9\xd6\x56\x38\x0b\x4e\x91\x46\x5c\x60\x6d\xe1\xbc\x5c\x68\x94\x52\x2e\xaa\x75\xf3\x53\x26\xa2\x90\xf8\x31\x35\x4f\xb0\xb1\xee\x3c\x94\xf6\x4e\xbc\x13\x61\xc3\x30\x4b\x78\x21\xb3\x62\x25\xd2\x5e\xe7\x40\x66\xf6\x02\x6c\x1c\x5d\x26\x95\x51\x4a\x02\xd3\xdb\x69\xea\xb3\x9a\xec\x79\xe6\xb3\xcd\xa3\xe3\xf9\x64\x34\x15\xbb\xda\x0d\x84\x46\xa3\x05\xb4\xb8\x90\xae\xaf\x70\x2e\x66\x8f\xcf\x88\x23\xe7\xb3\x27\x52\x78\xd5\x59\xd1\x20\x0d\x09\xd4\x2b\x7c\x03\x93\x68\x2c\x26\x05\x4e\xee\x14\xda\xa9\xa9\xca\x73\x3f\x4c\xd3\x38\x17\x09\x81\x3c\x7b\xcb\xd3\x39\x51\x63\x51\x27\x55\xdf\x70\x30\x1b\xba\x58\xb9\x16\x94\x72\xd2\x46\x38\x74\x0a\x91\xc5\xbe\xac\xaf\x43\x3c\xdf\x66\xf3\x21\x7a\x38\x98\xa3\x95\x8a\xed\x57\x9d\x00\xa9\xf3\x6f\xb7\xe6\xe5\xe4\xa4\x26\xb0\x8f\x87\x48\x48\x4c\x36\x55\xf0\x64\x94\x12\x73\x6a\xa4\x8b\x8f\x11\x7e\xc5\xe5\x3f\xa6\x04\x1f\x2b\x5a\xc1\xc6\xae\x00\x40\x97\x03\x76\xc3\x71\x1c\x36\x1a\x91\x45\x86\x2a\x95\x64\x71\x16\xf7\x5b\xb3\x31\x08\x31\x19\x64\xfd\x7c\x93\xbc\x8f\x3e\x5c\x94\x6b\xd4\xc0\x6b\xcd\x14\xff\x50\xf4\x70\xc1\xa8\x70\x25\xa3\x80\x1e\xa9\x49\xe4\xf5\xf2\x1e\x7a\x08\x2a\x54\x62\x64\xe9\x52\x97\x0c\x44\x7c\x94\x40\xdd\x5b\x7a\x2c\x8c\x4a\xa0\xe2\x96\x82\x5e\xe9\x2c\x30\x68\x37\xea\xdb\xb2\x6e\xa4\xec\x8b\xa3\x34\xd1\xe6\xbc\x9e\x20\x9b\x76\xe1\x00\x3e\x6a\xd2\xec\x31\x69\x72\xe3\x85\xc4\xfe\x9f\x39\x6c\xb1\xb1\xc4\x9a\x0b\x38\x61\xc5\x68\x9e\x15\xd2\xa6\x81\xa6\x08\xf5\xb0\x4f\xfc\x5e\x4d\xf4\x6e\x16\xa9\x3e\xa3\xee\x59\x70\x2c\x6f\xde\x97\x25\xbb\xdc\x02\x21\x8e\xc1\x5f\xea\x69\x60\xcb\x23\x32\x62\x8c\xd3\xda\x96\xff\x15\xed\x1b\x04\xd3\xad\xc9\x77\x3a\xab\x7c\xa7\x93\x05\x38\xdf\xee\x94\xc5\x4b\x35\xd8\xd8\x8a\xc1\x85\x83\x03\xb1\x22\xf0\x21\x36\x96\x68\x22\xaf\x6f\x0a\x78\x09\x33\xa7\x71\x80\x1d\x8c\xc0\x95\x8d\x9a\xdb\x7c\x08\x0e\x45\x36\x43\x7a\x2e\xd7\xcf\x2f\x36\x92\x8b\x31\xf0\x11\x14\xa7\x90\x2d\x98\x28\xdb\x43\x76\x36\xa6\x87\x2e\x31\x19\x33\x57\xb8\x8b\x8d\x6a\x0b\x07\x82\x45\xa7\x51\xa9\x94\x6d\x6f\xd1\x56\xe2\x46\x77\x28\x40\x46\x8f\xd6\xd0\x81\xa0\x56\x43\xf4\x20\x53\x98\x0b\x07\x5a\xf0\x03\x61\xcf\x61\x46\x66\x98\x2e\x5e\x95\xa6\x7b\x9d\x59\x82\x89\x14\x74\x10\x3d\x28\xc3\x74\x73\xa0\x3b\x2f\x8a\x93\x1e\x50\xb7\x09\x4a\xd7\x39\xdb\x9a\x15\xcd\x4c\xd3\x48\xd2\x74\xfa\x02\x97\xf2\x4d\x7f\xba\x00\x0d\xdb\x13\x6d\xa7\xd1\x05\xfa\xe6\xa8\x40\xc1\x79\xad\xe6\xb7\xc0\xc0\x78\x8e\x2c\x3a\x5e\xa5\x22\x63\x07\x68\xd1\x8f\x6c\x0f\x64\xbf\x8b\x43\xec\xe3\x21\xee\x14\x13\x53\xd5\x8a\xbb\x4e\x03\xf7\x1d\x71\x5d\x4b\x0e\x76\x50\xaa\x0b\x99\x22\x2d\xd2\x16\x7c\xc3\x59\xa9\xb3\x64\xbb\x4e\x03\x87\x4e\x03\x35\x6d\xd7\xe9\xd4\x16\x70\xdf\xb1\x69\x71\x5b\x2d\xb7\x6d\x4e\x86\x2a\x95\x5d\xc0\x5d\x87\x2a\x86\x11\x06\xce\x09\xbf\x60\xb7\x5a\x45\x78\xe8\xb8\x07\x86\x07\x49\x75\xe1\xc0\xb0\x5a\x95\x34\xe9\x15\xa9\x02\x43\x84\x07\x4e\x5e\x52\x0f\x11\x57\x07\x06\xd5\xfe\x62\xb0\x64\xa7\xeb\xaf\xea\x76\x7d\xd9\x7d\xdc\x75\x7a\xa8\xe9\x3b\x7d\xdc\x5b\xec\x56\x2a\x36\xff\x89\xc7\xf5\x66\xd8\x76\xd2\x11\x89\xba\x78\x80\x7d\x1c\x22\xdc\x77\xfc\xea\x00\xde\x0f\x64\x58\xbd\x88\x21\x72\xea\x9f\x1a\x77\x1c\x60\x49\xdd\xf4\xf8\x73\x64\x87\x4e\x63\x6e\xe8\x90\xc5\x46\xa5\x42\x0e\x86\x4b\xe9\x29\x4a\xcc\x19\xda\x4c\x66\x79\xc7\x21\x07\x3a\x07\xc3\x03\x1d\x29\xa8\x7c\xc7\x71\x6c\x2f\x19\x2e\x28\xde\x31\x66\x38\xaa\xaf\x8d\x46\xb6\xef\x78\xf5\xb5\xda\x10\xb3\x4a\xa5\x1c\x54\x2a\x76\xa0\x47\x0c\x21\xec\x1f\x8c\x90\x5b\xad\xce\x11\x3f\x24\xe2\x89\x3e\x43\xcb\x8c\xb8\x67\xe6\x98\x88\x93\x51\x4d\xd6\xd4\x00\xeb\x62\xd5\x05\x3e\xb8\x40\x23\x37\x4d\xa3\x22\xe5\x47\xdb\xe2\xa7\x45\x1a\x5c\xa0\x3a\x8e\x43\xb9\x0a\x44\x51\xc1\x64\xa0\x98\xef\x0d\x66\x9e\xe9\x10\x19\xac\x88\x9e\x69\x44\x67\xd2\xe5\xc5\x94\x72\x1a\x89\xd0\x95\x02\x3d\xaa\x54\xb6\x22\x7c\xf0\xcc\x5b\x02\x18\x6d\x2d\x38\xd4\x59\x81\x16\x1c\x9a\x91\x5c\x27\xc0\xa1\xe3\x1d\x38\x20\x69\xeb\x3b\xe1\xbc\xcb\x25\x00\xe5\x8c\xe1\x26\xed\xa5\x74\x21\x1f\xe1\xa0\xb6\x90\xb8\xd4\x70\x95\x8e\x9d\x26\x99\x8b\x70\xc7\x19\x6a\xb2\xc9\x5a\x5d\x6c\x87\x4e\xa7\xbe\x56\x1d\x02\x1b\x2c\x2a\xe7\x70\x07\xc2\x45\x71\x6e\xcf\xf3\xd4\x16\xca\x4e\xad\xe6\xa2\x03\x28\x74\xec\x8e\x63\xe7\xab\x4e\xb1\xa7\xae\x4c\x3f\x3d\x89\x39\xc5\x1d\xc7\x09\xa1\xee\x83\x0e\x39\xc0\x59\x14\x6f\xaf\x42\x17\xde\x02\xd5\x16\x52\xaa\x5b\x14\x30\xcf\x9b\x77\xbb\xee\x40\x44\x84\x70\x07\x03\xdf\xeb\xe4\xfc\x47\xed\xe6\xe9\x42\xca\xdb\x2b\x04\xef\x53\x27\xc0\xc1\x80\xd0\xa6\x8d\x9c\x45\xe1\x19\x43\xe4\x38\x7e\xe2\x93\x4f\xd7\x55\x3c\x24\xdb\x2e\x3c\x2a\x54\x1a\xf6\xc9\x3e\x29\x9d\xe4\xdd\x29\xa9\xee\xc8\xb3\x3a\x0f\x4e\x0e\x4b\xcf\xf2\xea\x9f\x15\x21\x4f\xdc\x52\x28\x9f\x8d\x96\xa2\x40\x98\x98\x0e\x08\x25\x5d\x19\x30\xa3\x47\xa2\x4e\xff\x01\x62\x21\xea\x2f\x46\x43\x7c\x02\x3c\x3a\x7e\x10\x92\x07\x88\x87\xa8\xbf\x18\x0f\xf1\x49\xa2\x31\xde\x61\xbc\x64\x9d\xe5\x20\x88\xc2\x88\xb9\x83\x79\x16\x0c\x23\x61\xce\x65\xea\xfb\x32\x93\xfa\x64\xb2\x57\x8d\xa7\x91\xda\xaa\x77\x5e\xe8\xff\x99\x7c\xc3\xa8\x4f\x68\xc4\xb3\x92\x6e\x61\x4e\xdf\x5b\x9e\xef\x04\x34\x72\x3d\x4a\x58\x4d\xd8\x0e\x14\x45\xa3\x7b\x50\x46\x3c\x81\x88\x47\xc7\xf1\x6a\xa6\xa6\x4c\x62\x02\xa3\x45\x98\xe7\x34\x0e\x78\x49\xf0\x03\x0f\xd6\x7f\xd7\xa1\x2d\xaf\x3d\x67\xd4\x64\x55\x5d\xc3\x7e\x27\x8e\x95\xae\x26\xc2\x2f\xe8\x7d\x4e\x20\x5d\xc9\xa8\x3a\xa4\xd1\x0f\xad\xfb\x41\x70\x66\x38\x40\xf2\x95\x5f\xb8\x14\xd6\x19\xe1\x2c\x6d\x07\x42\xa5\x31\xb2\x3c\xee\xf2\x5d\xc6\x1a\x4a\x5a\x5d\x76\x43\xaf\x63\x21\xec\x8d\x46\xb6\xe7\xb8\x30\x17\x13\x44\x84\x33\x21\x6a\x44\x75\xe2\x08\x78\x08\x15\xc8\x91\x84\x19\x14\x3f\x15\x31\x43\x12\x2d\x84\xff\xac\x41\xce\x3d\x7d\x0c\x67\x29\x24\x9a\x56\x95\xcd\x25\xf1\x69\x6c\x6a\x8c\x20\x26\xca\x14\xc2\xa6\x0a\x75\x0b\xeb\x72\xf2\xb7\x91\x47\x52\xd3\x12\x4c\x67\xa4\x72\x1e\x65\x81\xef\x13\x26\x3f\x4d\x24\x9a\x6a\x24\x4f\xb2\x01\x0b\xce\x7a\x5d\xe1\x6d\xd8\xa3\x67\x48\xb7\xe6\xd1\x5a\xc0\x27\xc9\xbe\x82\x2c\x2b\x41\xb0\xe2\x93\x19\xbf\xd7\x96\x89\x2b\x62\xb5\xcc\x94\xad\x76\xb6\xa8\xc2\x9e\xdb\x21\xcb\x41\x70\xa6\xd6\x09\x28\x25\x9d\x68\x52\x96\x0c\x56\xc5\x0b\x4f\xae\x78\x74\xce\x8b\x22\xc2\x64\xe9\x85\x22\x64\xbd\xa8\x3f\x5c\x1e\xdf\x67\xf7\xb9\x21\x23\x35\xb7\x3b\x3e\x07\x67\xb4\x01\x99\xd0\x05\xd2\x5d\x0d\xba\x41\x2e\x43\x9a\x9b\xf3\xc9\x83\x60\x30\x1c\xe4\x93\xbd\x1e\x73\x57\xc7\x04\xd0\xe4\x2a\x33\xec\x78\x70\x17\xf7\x71\x0f\x0f\xf0\xea\x83\x31\x7a\x33\x78\x3f\xc3\xdb\xb8\x67\xce\x84\x24\x97\x9c\xb5\x40\x97\x66\x9e\x21\xa3\x99\xca\x65\xb8\x94\x6d\xbd\x90\x66\x5d\xba\xed\xb2\x82\x9f\xbd\x99\x8a\xe7\x99\x3c\xd8\x5a\x39\xe8\xa9\x3b\x53\x31\xc5\xf1\x16\xf6\x67\xeb\x5c\x9a\xff\x87\x33\x15\xca\x4d\x8a\xce\x4c\xc5\xb2\x33\xa5\x3b\x53\xa9\xec\xf4\xe9\x4f\x2a\xa5\xc4\x42\x7a\x6d\x0d\x27\x95\x00\xde\x55\xf3\x0a\xaf\xce\x92\x59\xcd\xcd\x81\xb1\xe6\xe6\xa4\x73\x27\x58\x1d\xb8\xd1\xfc\x0a\x89\xa4\x1e\xc2\x6a\xfa\x0d\xfc\xbf\xc3\x3c\xb5\x44\xa4\x25\x88\xc4\xc5\x42\xa3\x11\x51\x2b\x3b\xa4\x35\x57\x5d\x8f\x5a\xb3\x75\xc5\xf7\x96\xff\x5d\xbd\x38\x2d\x51\x38\xe6\x75\x58\xe0\x7b\xcb\xbc\x1f\x32\x65\x0c\xe2\xca\x92\x52\x0e\xa0\x1c\xe5\x9a\x78\xb7\xda\x0f\xfc\xee\x9e\x04\x1b\x1b\x67\x53\x29\x22\x6e\x3e\xe9\xae\x92\xb0\xd9\xb2\xc6\xe2\xd7\x4e\x9b\x63\x40\xc7\x68\xcf\x5b\x19\xb2\x07\xbb\xe1\x92\xe6\xfa\xeb\x71\x3a\x4e\x1d\x1c\x8f\xc5\xa4\xae\xd1\x58\xf6\x49\xb1\x79\x82\x32\x7c\x0e\x56\x07\xc3\x88\x74\xed\xbc\x3d\x9d\x38\xc8\x76\x0c\x78\x34\x9a\xb4\x3b\x51\x6f\xad\x5c\xff\x9c\xbb\x16\x96\xfa\xee\x59\x52\x92\xc5\x2c\x14\xdb\x70\xe1\x63\xe9\xc5\xb7\x6e\x55\x13\x23\x28\xca\x27\x38\xaa\x5a\x75\xab\x4a\xc0\x93\x93\x9d\xf3\xc0\x62\x7b\xca\x50\x5d\xbf\x12\x09\xc4\x31\x86\x76\x62\x05\x27\xc8\x16\xe0\x69\x38\xc5\x5e\x8a\xea\x1d\xd7\xf7\x65\xfc\xd2\x66\x34\x97\x77\xd7\x78\x7e\x40\x3a\x11\xe9\x96\x52\x23\x58\x12\x44\x97\xb6\x20\x6a\x27\x25\x47\x49\xc6\xd9\x84\xee\x94\x44\xc8\xfb\x52\xbe\x4f\xe0\xef\xa4\x14\x08\x5b\xc4\x64\x60\x48\x3a\x1c\xa2\x43\x94\xe3\xc4\xc3\x66\xeb\x29\x07\xe7\xeb\x05\xd3\x88\xef\x99\xdc\x30\xdc\x6b\xe7\xe4\xe2\x5a\x66\x34\xea\x04\x34\x0c\x7c\x22\xfd\x43\x66\x23\x9f\x8f\xdf\xd4\x3d\x38\x4c\xfb\xae\x0a\x49\xab\xc8\x57\x6c\x97\x53\xa9\xe4\x72\x2e\xe5\x52\xec\x08\x35\x61\x99\x61\x6b\xc2\x6b\x66\x24\x06\xb0\x20\x9c\xa5\x3c\x50\x33\xab\x37\x56\xb9\xa5\xd4\xaf\x64\xe1\xe2\x65\xcc\x16\x52\x1f\x78\x43\xa9\xdd\xdd\x84\xae\xa4\xf2\x2d\x65\x7e\x8b\x6e\xf0\x5c\x8c\x84\x81\x7f\x96\x64\x3a\x5d\x90\xaa\x4b\x8c\xef\xc3\xe9\xd3\x7a\x48\x4f\x9f\x2e\x68\xaf\xae\x3f\xe7\x3e\x26\x1d\x9b\xda\x23\xdd\x95\x6d\x62\x54\x8c\x8a\xc2\x61\x85\x44\x4f\x9d\xa3\x99\xa0\xa4\x59\x87\x11\x22\xc7\x52\xfa\xa7\x4d\x52\xb5\x8e\x61\x79\x3f\x70\xb9\x02\xed\x45\x9e\xeb\x7b\xcf\xed\xc9\x5a\x66\xd6\xa9\x4c\xd1\xe9\x13\x81\xdb\x55\x8e\x68\xeb\x87\x4c\xc5\x2b\x6d\xa5\x5b\x37\x30\xe5\xd3\xb8\xf0\x20\xc0\xe8\x96\x54\x96\xfe\x57\xf5\x4f\xa2\x7c\x74\xc6\x7e\x0a\xff\xc9\xb5\x2f\x0c\x09\x5b\xab\xa9\xb7\x7e\x7b\xa5\x8c\x64\x8e\x4f\x4d\x03\x5a\xf1\x90\xe6\x13\x64\x4d\x5d\xbc\x9c\x21\x6b\x61\x8c\x05\xaa\x36\xd2\x6e\xac\x94\x9d\xf4\x90\xf9\x58\x5d\x54\xea\x62\x98\x39\xeb\x31\xa6\x4e\xe3\x00\x3d\x08\xf7\x93\x07\x28\x1c\x5e\x79\x4e\xd4\xa2\x6d\x1c\x38\x86\xd7\x40\xaf\x6a\x39\xf6\xff\x9f\xbd\x77\xdd\x6d\x24\xc9\x1a\xc4\xfe\xeb\x29\x52\x39\x3d\xac\x0c\x31\x48\x65\xf2\x26\x29\xa5\x10\x3f\x55\x95\xaa\x5b\xd3\x55\xaa\x1e\x49\x35\x3d\x33\x14\x5b\x13\x22\x83\x62\xb4\x92\x99\xec\xc8\x60\x49\x6a\x89\x8b\xf9\x60\xec\xc2\xf0\x2f\x1b\x5e\xc3\x80\x01\xef\xae\x7f\x2d\x0c\x1b\xde\x35\xe0\xdb\xc2\xc0\x2e\xb0\x7e\x12\xef\x3e\xc0\xbe\x82\x11\xb7\xcc\x48\x32\x29\xa9\xba\xab\xe7\xfb\x66\xd7\x85\x6e\x2a\x33\xf2\xc4\x89\xdb\x89\x13\x27\x22\xce\xa5\xf7\x5d\xe5\x57\xfd\x0d\xe0\x82\x3a\xb9\x25\x03\x8f\x80\xb5\xa4\x52\xf1\x58\x8f\xf6\x51\x22\x83\x77\x64\x1e\xa9\xca\xe4\x21\xd9\x9d\x42\x28\xaf\xd1\xa1\x90\xd2\x7f\x61\x82\xd1\x47\xd1\xf7\x59\x49\x21\x41\xfb\x66\xe3\x22\xaa\x11\xba\x55\x02\x87\x24\xfb\x6e\x02\x6d\x67\x16\x8c\xf2\x6c\x4e\x61\x31\xde\x0e\x37\xbf\xf3\x6c\x0c\xc0\xab\x6f\x80\xcd\xfc\x42\xb5\xcb\x4d\x88\xcf\xf9\xfc\xf1\x93\x55\xd1\x19\x3f\x85\xaa\xca\xc3\x23\x3d\x3c\x48\x8b\xbd\xa2\x0a\xae\xad\xf3\xa4\x75\xb2\x65\x51\xf5\x01\x9e\x10\xd9\x60\xa9\xeb\x64\x3b\x49\xd2\x46\xa9\xb1\x8e\x38\x2e\x3d\xe6\x72\xcf\x86\x60\x60\x39\xee\xf8\x8b\x0f\x29\x71\x0c\xd2\xa1\xf3\x91\x30\xe9\xb3\xd1\x49\x46\xce\x8c\x45\xce\x14\x33\x3c\x49\xeb\x8e\xf7\x9a\x0e\xa5\xd7\x8e\x11\x8d\x87\x8e\xfb\xa2\x4a\xab\x2f\x5c\x21\x37\xc9\x91\x94\xda\xb5\x43\x3a\xcc\xbe\xb2\xea\x0b\xb7\xfe\x42\x55\x48\x5e\xea\x2f\x15\xfb\x8e\xa6\x29\x8d\xaf\xf2\x42\xc2\x2c\x9f\xe3\xbd\x4d\x92\x6b\x25\x9a\x85\x79\x19\x5a\x36\x53\x45\xd7\x5f\x64\x04\x2b\xf0\x77\x49\x3c\x48\x86\xe4\xc3\xc9\x51\xb6\x0b\xf0\x12\xa0\x83\xc9\xff\x1c\x25\x92\x27\x67\x73\x72\xf9\xbd\x9a\x9f\x46\x86\x84\x66\xe2\x4a\xcd\x64\x63\x80\x7d\x60\xc2\xd9\x2b\xf7\xe1\xea\x5b\x3d\x8d\xa4\x1d\x17\xa8\xcf\x62\xfa\x83\xb1\x3c\x50\xe6\x19\x38\xfa\x50\x8e\xc2\x7c\x56\xdf\xba\x25\x69\x06\x6d\xd8\xeb\x3f\x81\xb9\xc4\xdc\x43\xcd\xa3\x62\x1b\x2c\x4f\x86\xfb\xb5\x60\xd9\x45\xfa\x89\x71\x8a\x3e\x35\xca\xd8\xa9\x33\xc0\xb1\x20\x17\x1c\xa5\xfa\x1a\x47\x15\x1d\x3a\x2f\xa4\x10\xfe\xc2\xb5\x4c\x46\x78\xa2\x88\xdb\x53\x14\x9f\xf3\x3e\x55\xbc\xb9\x23\x5f\xaa\xbe\xb9\x82\x4c\x2e\xbf\xcf\xe6\xc2\x81\xd7\xeb\x67\x73\x9a\x94\x37\x50\xb1\x05\xa6\xd4\x18\x12\xe5\xfe\xaf\x47\xa0\x34\x63\x01\x30\x5e\x9d\x69\x85\x28\xaa\x74\x5a\xd7\x7d\x30\x57\x28\xb9\x17\x83\x4a\x25\x47\x1c\x2b\xc4\x49\x7d\x82\xa7\x45\xa4\x59\x3d\x95\xb3\x73\x24\x2f\x76\xf4\x4b\x45\x1e\x15\x94\x73\x1f\x86\xe3\x61\x32\xa9\xcd\x58\x54\x4b\xf1\xe8\x2f\x7d\xe0\x91\xab\x2a\xb9\x07\x2f\x5f\xbd\x3e\x7c\xf3\xe5\x57\x47\xbf\xf9\xfa\xed\xbb\xe3\xf7\xdf\xfc\xf6\xe4\xf4\xec\xc3\xef\xbe\xfd\xfd\x1f\xfe\x88\x2f\x07\x43\x32\xba\x1a\xd3\xef\xaf\xa3\x49\x9c\x4c\x7f\x60\x29\x9f\x7d\xbc\xb9\xbd\xfb\xd1\x0f\x1a\xcd\x56\xbb\xb3\xb5\xbd\xe3\x42\x86\x5c\x57\xaf\x65\x44\x2e\x62\xac\x8a\x78\x7d\x30\xc6\xec\x80\xdb\x37\xc3\xf2\x51\xb5\xda\x03\x1b\x66\xd9\xb3\x74\xe4\x56\x88\x00\x66\xc2\xd5\x0c\x1b\xf9\x4b\x76\xd5\xd3\x9b\x74\x52\xb2\x03\x7f\x2d\x8a\xa4\xea\x4a\x69\x94\xb3\x3f\xb5\x77\xbd\xbc\x73\xb0\x93\xce\x2e\xe5\xd1\x86\x1d\x90\xa0\xee\x3e\x22\x08\xa5\x1c\x73\x52\x9b\xe0\xc1\x98\xc6\xbf\x18\xb1\xe8\xd5\x56\xf9\xfd\xcc\xb5\x18\x24\x33\x82\xcc\xf6\x4e\xb1\x56\xf4\xa5\x61\x56\x69\x2d\x88\xca\x08\xff\x6b\x86\x09\xc9\xaa\xa7\x88\xe8\x07\xb8\x6e\xa5\x2e\x73\x22\x99\xf7\x9d\x6a\xa7\x13\x13\x32\x4c\x1d\x05\xaa\x5c\x07\xe6\x79\x91\x85\xa6\xc7\xfb\x36\xda\x92\xf0\x3b\x7a\xad\xd2\x15\x54\x28\x8d\x79\xe0\x60\xc6\x18\x89\xb9\x2c\xf9\x18\x4f\x48\xa6\xc5\x9e\xce\x2e\x33\xc7\x36\x29\xba\xd7\x8e\x52\xd5\x35\x02\x22\x3a\x4c\xcd\x19\xc3\xb1\xd2\x0d\x48\x1f\x1e\x7a\x7d\x88\x11\x51\x61\x6a\x16\x3e\xc8\x4b\x4b\xa5\x45\x97\x64\x17\x96\xfb\xb1\x9a\x32\x28\x11\x22\x9f\x2c\x75\x11\x6b\x7e\x5a\x02\x19\x64\xf5\x51\x0c\x2c\x4c\x78\x19\x13\xce\x30\x2d\xd4\x62\x19\xd1\x5c\x5f\x82\xd6\x4f\xbf\x79\x7b\x70\x86\xdc\x0d\x77\x2d\xae\xf3\x2c\xc3\x59\x52\xb6\x29\x5b\x3c\x9e\xb2\xe1\x95\x62\xaf\xad\xb4\x79\xaf\x06\x28\xbc\x2f\xac\x11\xfa\x74\x68\xaf\x30\xd8\xf6\x30\x84\x2f\xf4\x09\xce\xe2\xd8\x54\xdd\x17\xce\xbe\x3b\x87\x0b\xa5\x4a\x6d\xe1\xba\xf4\x08\x63\x58\x8f\x0f\x0a\x5a\x82\x8b\x88\xac\x88\x16\x7a\xb5\xf5\x61\x2d\x00\x6b\x04\xf9\x99\x4c\xde\xb5\x42\x58\x54\x49\x48\xea\x82\x20\x54\x1b\x02\xd5\x79\xac\x40\x85\xa4\x6f\x16\xba\xc5\xd2\x94\x4b\xef\x65\xba\xfc\x10\x5f\xc7\xc9\x4d\xec\xa8\x46\x3b\x7f\x92\x2c\xe2\x4f\x86\x30\x6f\x68\x14\xe5\xe3\xa7\xd4\x94\xac\x09\xa0\x05\x95\x25\xf2\xd5\xea\x3f\x43\x3a\x5c\xc8\x3c\x87\x8b\xc4\x65\x2b\xf6\xe6\x5d\xaa\xac\x7d\x73\x28\x57\x5b\x19\x2f\x10\xd4\xaa\xcc\x85\x82\x4d\x5e\x1b\xa2\xa0\xc5\x66\x5d\xc8\x21\x65\x26\xf8\xf0\x40\xe1\x10\xf1\x3a\x4f\x1e\x1e\xe8\x9a\x8f\x10\x1a\x66\xf2\x8b\xbb\xee\x82\xae\x17\xa3\xa1\x1e\x0b\x2f\x00\x30\x42\xeb\x3e\x08\x45\xa2\x78\x0c\x00\x94\x9a\x87\x0b\x59\x12\x34\xb0\xb2\xcc\x54\x96\x04\x0d\xc4\x63\x00\xa4\x7b\x7e\x93\x81\x02\xe9\x57\xd5\x7a\x4d\xa5\xba\xab\x97\xa0\xc4\x22\x81\x14\xfa\x00\x40\xac\x3e\xc5\x28\xb6\x3e\x61\xf9\x49\x49\x36\xa2\xb9\xde\xb2\x96\x3e\x45\x1c\x0e\x10\x59\xd3\xa8\x07\x88\xac\x42\x4d\x11\x5f\x42\x4d\x11\x42\xb1\x8a\x16\x30\x40\x08\x25\xeb\x08\xcd\x2a\x15\x66\x4d\x71\xd9\xeb\x40\x1b\xd6\x96\x8f\x59\x9c\x70\x3a\xba\x5b\x35\xd8\x45\xf2\x29\xc9\x56\x3e\xcc\xfa\xab\x1e\xe2\x4c\xd7\x0c\x95\x70\xd4\x1e\xe9\x4b\x8e\xa9\xd4\x8a\x73\x2d\x8e\xbd\x44\x6a\x72\xc4\x3d\xda\xb7\x1a\xa4\x4e\xe3\x92\x05\x5d\xf4\x22\xba\xc7\x4a\x29\xff\xa4\x24\x3c\x51\x73\x65\xaa\x5e\xb4\xa1\x58\x06\x37\x44\xc1\xc1\x1a\xef\x32\x63\xd8\xbc\x04\x26\x98\xcb\x80\x78\x0c\x06\x20\x5c\x51\x55\xb9\x4d\x95\x36\xf1\x66\x05\xb5\x99\x89\xe6\x25\xaa\xfd\x99\x99\x2e\x0c\xe4\x22\xc8\xcc\x16\x99\xc9\xb3\xb7\x3b\xd5\x41\xb1\xe6\x1a\xb3\x78\x2c\x2d\xff\x87\xd2\x0b\x80\x27\xcd\xe6\xd9\xdd\xe9\xe7\x2c\x68\x2e\x9d\x5c\xf2\x02\x35\xe7\x7c\x10\x26\xe8\xde\x9a\xed\x86\x0d\x97\x2a\xb1\xaa\xfd\xe5\x32\x63\xd4\xae\x22\x1d\x8b\xc2\x74\x8d\xee\xcb\x45\x78\x8f\x21\x02\x85\x84\x96\xab\xfb\x23\x25\xc9\x74\x59\xc8\xba\x3d\xd6\x97\x9b\x29\x46\x86\xb3\x81\xad\xde\x65\x5b\x31\x93\x1e\xeb\x23\x0e\xc9\x1c\xc0\x7b\x2d\x0d\xb1\xb9\x3a\x06\x36\xca\xab\xdc\x2e\x61\x1d\x69\x99\x68\xb9\xfe\x69\x32\x21\x7c\x2c\x44\x8e\x1b\x12\x73\xe5\x0d\xcf\x05\x6b\x31\xe2\xb9\xde\xaf\xe7\xc3\xac\xc3\x7b\x7e\xdf\x7a\x09\xc4\x06\xc8\xe3\x65\xc6\xfc\xcc\x44\x27\xe1\x3d\xd6\xdf\x2d\xd1\x70\x30\xdf\x65\x44\x5c\xe9\x5d\x9e\x55\x2a\x71\xa5\x92\x00\xa3\x1b\x95\x75\x6e\x3e\x48\x4a\x20\x0a\x1d\xb7\xea\x25\x62\xdf\xb3\xb8\xa6\x80\xaa\xeb\x08\xd6\x2c\x20\x98\xbc\x80\x11\x4f\xf1\xd2\xe5\x0d\x06\x73\x51\x6e\x8f\xf7\x11\x9d\x4b\x2d\x73\xc8\x60\x02\x8b\x52\x85\x97\x00\x25\xe9\xae\x69\xb2\x4b\xa4\x05\xf6\x02\xd5\x6a\xaa\xc9\x96\x48\x99\x9e\x2d\x91\xea\x64\x41\x0b\x09\xb9\x64\xb1\x54\x21\x2e\x04\x92\x15\xd1\x66\x73\xe9\x7a\x36\xa3\xc3\xda\x15\x89\x95\xaf\xf9\x5f\xfa\x48\x4c\x17\x44\xb2\xcd\x72\x16\xad\x0d\xd4\xaf\x08\x3f\xa3\x13\x92\x69\x2e\xbb\xb7\xfa\x5f\x4d\xfe\xb4\xc4\xcf\x9d\x79\x35\xff\xdc\xcc\xcf\xf0\x66\xef\xf6\xae\xbf\x79\x55\x3c\x76\x55\x53\xde\x23\xd5\xa0\xb3\x51\xd8\x85\x81\x5f\x07\x9d\x07\x3f\xdb\x6a\xa3\x82\x1e\x6f\xd0\x01\xd0\x73\x6f\x85\x4c\xc5\xbb\x2c\x6c\x56\xd8\xc3\x36\xc8\xbb\x3a\xe8\xe8\x31\x7c\xfc\x9c\x6d\xe1\xf8\x3d\x2d\xd3\xc0\x2a\x3f\xa7\x7f\xde\x69\xb7\x86\xb2\x8b\xb0\x5e\x6a\x45\xc5\xa1\x47\xa1\x6a\x82\x14\x2f\xf1\xe0\xfa\x99\xe0\x99\x16\x5e\x06\xbd\x5c\xbf\x74\x53\x3a\x66\x51\x2a\x01\xe9\x13\xa0\x37\x38\xba\xce\x74\x3a\x4a\x35\x2e\x8d\xfa\xd2\x2f\xb2\xd1\x2d\x3a\x19\xb3\x14\x77\x8a\x1f\xe2\x55\x1f\x92\xc2\x07\xcb\x57\x5a\xba\xea\x03\x7e\x4c\x37\x44\xaa\xa4\xa6\x9b\xb3\x4c\xa3\xc4\x28\xa9\x96\xd3\xcf\xe2\x0c\x7e\xea\xd0\xfb\x89\x3b\x86\x92\x5b\xdd\x52\xb5\x82\x15\x83\xf4\xf3\x07\xe8\xdb\x83\x93\xe3\xa3\xe3\x2f\x2f\xbe\x3e\xfc\x03\x22\xf5\x57\x1f\x4e\x4e\x0e\x8f\xcf\x2e\x4e\x0e\x7f\xfb\xe1\xf0\xf4\x4c\xa6\xea\xc8\x19\xca\x29\x0b\x5e\x01\xe4\x5e\x5c\xc8\x6a\x5f\x30\xf2\xc3\x8c\xa4\xdc\x85\x62\x23\x6e\x23\xb7\x20\x86\x94\x91\x01\xbf\xb8\xc1\x2c\x16\x9d\xa0\x23\x55\xa9\x93\x8f\x77\xa2\xf3\x8d\xed\xdd\x33\xbd\x89\x30\x32\x49\x38\x39\x1a\x7e\x69\x86\x05\x95\x27\x3f\x3c\x64\x64\x34\x87\x52\xb5\x56\x74\x65\xa4\x7c\x1e\x1a\xcb\x24\xb1\x23\xc8\x73\xdb\x81\x95\x1e\xd5\xde\x1e\xc3\x11\xb8\x1f\x56\x2a\x83\xba\xd4\xbb\xd6\xba\x0c\x53\x34\x58\xae\x46\x3d\xe7\xcb\x6b\xb3\x25\x33\x2b\x8a\x32\xca\xad\x17\x6e\x2d\xea\xd7\xe4\x4e\x85\x32\x45\x08\x65\xab\x6f\xe9\x29\x63\x36\x77\xb2\x8e\x9c\xb1\x28\x24\xf0\x9a\xdc\xa5\x21\x9f\x83\xba\xbe\x43\x9a\x7b\xa4\x1e\x93\x1b\xe9\x20\x07\x72\xb0\x16\x25\x03\x1c\x9d\xf2\x84\xe1\x2b\x22\xeb\xfd\x91\x1c\x71\x32\xd1\x65\xc3\xcc\xa3\x53\x41\x77\x64\x2c\x96\x55\x60\x54\x9d\x27\x56\xf5\xf3\xca\x4f\x17\x70\xa7\x84\x4b\xc4\x18\x4e\x00\x5c\x55\x6a\x0a\xe0\xa0\x2e\x86\xe9\x44\xf6\xa0\x47\xe0\x04\x46\x22\xcd\xf8\xb9\xfa\x26\x89\x22\xb5\x1a\x8b\x92\x3f\xa2\x1b\x1a\x0f\x93\x9b\x7a\x12\xab\xdd\xe7\x2c\x16\xfc\x5c\xf4\x58\xe9\x07\x9b\x27\x95\xe8\x8f\x7c\xac\x54\x3e\x7a\xa2\x34\x3d\x9e\x73\xb8\x6e\xc6\xf2\xe1\xc1\x3c\xa9\x8f\xc6\x11\xa8\xb3\xaa\x25\x18\x40\x39\x8b\x46\x9e\x25\xb9\x29\x0c\xce\x40\x2a\xd1\xc4\x09\x97\xf6\x0b\x4e\xc2\x9c\x1b\x9c\x66\xca\xfb\x60\x2d\x2b\x6a\x94\x0c\x66\xa9\xac\x91\xf4\x93\x35\xa4\xc3\x57\x02\xa8\xe8\x6b\x8c\x8e\xbc\x42\x25\xae\x74\x47\xa7\x00\xdc\xaf\xee\xe7\x35\xe5\xf4\xd3\xf3\x61\xb2\xa4\x91\x02\xa4\x65\xb7\xa5\x60\xe9\xb9\x3d\x69\x93\xd0\x77\x3e\xc8\xa3\x2e\x1c\x3b\xef\x0f\x66\x7c\xec\x98\x89\xed\xf0\x31\xe6\x8e\xe8\xe2\xd4\xb9\x4b\x66\x4c\x4d\x1c\xe7\x60\x3a\x75\x68\xea\x0c\xc9\x94\x11\x69\x13\x20\x7d\xae\x88\x3d\xa1\x73\x49\xce\x63\xa7\xf0\x4f\x55\x4f\x3a\x7c\xc7\xce\x68\x26\x83\xd8\x30\x12\x11\x9c\x12\xe8\xe0\xd4\x19\x26\xa2\xe8\x34\x11\x18\xb1\x33\x4d\x38\x89\xd5\x79\x1b\x19\xcc\x18\xe5\x77\xce\xc7\x59\x24\x26\x99\xf2\xde\x55\x5f\x44\xff\x15\x1d\x2a\x77\x3b\x8e\x76\x03\xe8\x5c\xde\x39\x29\xe1\x5c\x60\xfd\x93\xf4\x40\xfb\x21\x4e\xf1\x88\x9c\xe8\x36\x85\x0e\x67\x33\xf2\x27\x51\x1f\xd9\x24\x65\x95\x51\xe0\xd1\x85\x42\x5c\x48\xea\x25\x68\xd4\x61\x0e\x41\xa5\x63\x84\xa5\x97\x2d\x6f\xe5\x24\x5c\x3d\x53\x30\x10\x64\xc1\xe9\x84\x24\x33\x6e\x39\x5e\x8b\x30\x27\xcc\x1b\x14\x28\xa4\x8c\x06\x73\x8a\x83\x0e\x9e\xf1\x71\xc2\xe8\x8f\x4a\x19\x4a\x7c\x19\x92\x98\x8a\x2f\x09\x13\x63\x6d\x99\x75\x08\x00\xd3\x7f\xd2\xbf\xfb\x0d\x4d\x89\x24\x65\x46\x06\x84\x8a\xf1\xd3\xce\xe2\xa5\xa3\x6e\x39\x09\x75\x39\x75\x57\x88\xe6\x30\xf0\x7d\x79\x6d\xa1\x27\x28\x1e\x2a\xa9\xfc\x2d\x4d\xb9\xe0\x91\x9e\x9b\xaa\xc6\xba\x70\x26\xaf\x3b\x74\x80\xa4\x02\xff\xc9\x66\xa8\xc1\xa2\x3a\xe6\x51\x44\x73\xa8\xf3\xdc\x5b\xbc\xde\xd8\xbd\xc9\x4f\x9a\xe7\x14\x56\x18\xa4\x22\xe5\xaa\xc3\x48\x7a\x75\x25\xf0\x66\xd3\xd0\x9c\xc3\x0c\x22\x82\xe3\x0f\x53\x4f\x96\xa1\x1f\xef\xb3\x2f\xec\x4c\x0d\x92\xf8\xbc\xc4\xc6\x14\xd8\x54\xbd\x2e\x0d\x23\x2f\x75\x82\x27\xa0\x8b\x75\x5d\x42\x3b\x07\xb0\xd9\xd6\xd5\xc9\xcb\xb7\xbc\x01\x0e\x84\x8c\xa8\x4e\x3f\x0c\x11\x69\x5c\x86\xa4\xf4\x19\x02\x4f\xa6\x1a\xab\xf1\x7d\x18\xaf\x62\x44\xe5\xd8\x75\xdb\x96\x6c\x92\xa2\x65\xb9\x2c\x57\xda\xaf\x4d\x19\xfd\x88\x39\xd9\xfc\xa5\x95\xc9\x92\x8f\x84\x31\x3a\x24\x6f\x13\x3c\x3c\x95\x67\x28\x65\x2a\x7b\x8c\xa4\x84\x97\x81\x08\x88\xf5\x40\xe9\x3b\x95\x22\x10\xdb\xfa\xcc\xa2\xd9\x23\x8a\xed\x32\x34\x4c\x06\x52\x9c\xd1\x8b\xb5\xf1\x4a\xe7\xaa\x63\x1c\x17\xc0\x38\x07\xb9\x22\xc6\x81\x67\xfa\xf2\xee\x4c\x39\x02\xcd\x21\x7b\x7e\x7f\x8d\xd5\x53\x36\x40\x04\xc6\x62\x91\x27\x31\x3f\x4e\x86\xa4\x4e\xa5\xeb\x4f\x1d\x60\x5d\x9a\xb0\x68\x85\xd2\xf5\xc0\xf6\x7f\xfb\xa4\xc5\xc5\x63\x56\x2d\x5a\x29\x7f\x90\x0c\xc9\x73\x85\xd8\xcf\xb1\xcf\x8d\x73\x6f\x0b\xd9\xad\x7b\x2c\xdd\xa3\x2e\xd5\xfe\x12\xa7\xe4\x03\x8b\xc2\x47\x14\x61\xf5\x66\x78\xcc\xf9\x34\x0d\x37\x37\xa3\xe4\x8a\xc6\x75\xc5\x57\xd2\x7a\x4c\xf8\xa6\xad\xf0\xc9\x49\x1c\x63\xe5\xc9\xaf\xea\xea\xf6\x6f\x1a\xfe\x49\x5c\x41\xd3\x19\x48\x28\xb7\x24\xb6\x92\x2e\xb0\x11\x40\x77\x90\x4c\x26\xd2\x39\x98\xb9\xa6\xcb\xee\xae\xc3\x9e\x8b\xa7\xb4\xa6\xf5\x2d\x04\x68\x44\x49\xcc\x2f\xe8\xd0\xed\xc3\xa5\x9b\xee\xb0\xe7\xa6\x83\x44\x06\x8c\x8d\x13\xe5\x84\x9a\x91\x74\x9a\xc4\x29\xb9\x98\x88\xb1\xe9\x43\xf3\xfe\x2e\x19\x92\xd2\x7a\xd9\x00\x2a\x3e\x38\xc8\x32\xe9\x52\x9e\xec\xc3\x5e\xde\x4f\x26\xeb\xd9\xdd\x94\xb8\x00\xba\xea\x52\xac\x2f\xfa\x07\x4f\xe9\xef\x54\xbb\x42\x37\xa8\xfb\x2e\xb4\x61\x1f\xad\xdb\x99\x0a\x8a\x2b\xc9\x4d\xd4\x4e\x2d\xb0\x1f\x18\x5d\x91\x2b\xfb\x5e\xe4\x53\x05\x07\x03\x6a\x87\xb1\xc4\x9d\x4a\x0e\x73\x72\xb2\x17\x44\xb5\x6a\xb3\x58\x72\xa5\xfc\x98\x96\xec\x73\x77\x7e\x9f\x63\xda\xd0\x72\x7d\x15\x39\x73\x8a\xfb\x6d\xa0\x22\x29\x49\x56\x93\x4e\xf1\x80\x2c\x8e\xbd\x52\x7c\x2e\xe9\xd5\x47\x75\xbf\x45\x9f\x2a\xed\xaa\x45\x74\x99\xc2\xf4\x50\x2d\x6c\xda\xc5\xe4\xf1\x52\x29\xfa\x50\x4b\x0c\xb7\x51\xd6\x04\x4a\xdd\xdb\x68\xc2\x69\xd7\x9c\xab\xf1\x81\x87\x87\x7c\xb3\xc4\x16\x3f\x3f\x3c\xb8\xca\xbc\x24\xd7\x12\x31\x76\x1a\x45\x23\x14\xe9\x29\x10\x98\x9e\x2a\x2d\x2a\x94\x06\x98\x4b\x64\xb9\xd4\x40\xe5\x01\xd3\x26\x3f\xfa\x18\xf9\x2d\x9a\xe4\x3c\x83\x43\x2f\x58\x0b\xfe\xb2\x3c\xda\x76\xd9\xb8\x82\x4f\x2f\x36\xc1\xb0\xe9\x8c\x0b\xe3\x29\xad\x2b\x20\x41\x25\xaa\x19\x16\x9f\x5d\x64\x4d\x3d\x17\x0f\x06\x24\x4d\x2f\x78\x72\x4d\x62\xc9\xef\x9e\xcf\x1c\x00\x94\xdc\xb3\x14\xce\xf0\x55\x6d\x6d\x5b\xa6\x71\xf3\x98\x41\xe5\x63\x43\xa3\xb8\xc8\x93\xa2\xcf\x4f\xe4\x10\x72\xc2\x17\xcc\x8f\x81\x8a\x31\x6a\xfc\xe0\xe8\x13\x63\x2d\x40\x8f\x2e\x0f\xd2\xbb\x78\x70\x14\x53\x2e\xe3\x34\xcb\x6d\x47\x76\x14\xa2\x9d\x95\x9a\x64\x48\xd1\x93\x87\x23\x2a\xcc\xab\xc6\xfe\xe6\x65\x2e\x03\x81\xb5\xe5\x22\x6d\x81\xea\xcd\x4b\xa9\xea\x21\xf6\x3e\xf9\xe1\x83\x92\xc2\xc1\x5c\x9d\xf2\xe5\xb2\x16\xf0\xdc\xcd\x4d\xdd\xdb\x75\xd3\xfd\x7a\xd1\x8e\xab\xee\x66\x3a\xbc\xae\x7f\x9f\x2a\xbd\x29\xb1\x87\x29\x2c\x5a\x25\xf5\xe0\x70\x39\xb1\x52\xf1\x96\x13\xa5\x25\xc1\x4c\x46\x9b\x5d\xfe\xe8\xa9\x3b\x88\xac\xf3\x71\x7e\xe5\x70\x3f\x4b\x09\x3b\x1a\x86\xa4\x2e\x1f\x5e\x43\x45\xb7\x67\x82\x6c\x43\x52\xb7\xde\x20\xb9\x9d\x52\x46\xd2\x23\x91\x9e\x3d\xcf\x73\xb6\x74\xc5\x70\xcc\xc9\xf0\x54\x50\x68\x2a\xbd\x11\x15\x52\xd0\x02\x04\x80\xfc\x93\x55\x1d\x75\x94\x98\x55\xb3\x78\x99\xde\xb3\x89\xb4\xc4\xf6\xcc\x44\x52\xc1\xe3\xc5\xea\x2d\x9a\xa1\xaa\xb6\x82\x4f\xe6\x00\x2e\x5c\x0f\x84\xe0\x30\x55\x42\xd5\x12\xac\xfc\xe2\x02\xa8\xe5\xa5\x52\x98\x5c\x96\xfa\xd8\xa8\x37\x5c\x00\x6f\x47\x97\x93\xa8\x14\x54\x7e\x51\x65\x0e\xc6\x38\x8e\x89\x10\xb5\x4a\x21\xf3\xcf\x46\x66\x52\x33\xa4\x14\x58\x7d\x12\x7d\x10\x5f\x7c\x38\x75\x01\x7c\xf2\xa8\x33\xd1\x3a\x49\xea\x94\x22\x95\xbe\xc2\xd5\x21\x26\xb8\xcf\xec\xa3\xc4\x26\x96\xa0\xfb\x79\xc1\xef\x96\x5c\x05\x55\x9f\x03\xc8\x10\xa9\x0b\xde\x29\xe4\x27\xa3\x45\xa2\xa5\x34\xab\x8f\x33\x6d\xb9\xe5\x52\x97\xe7\x4e\x49\x14\x66\xeb\xb2\xf3\x49\xee\x20\xef\x12\xdf\xbc\xac\x4b\x61\xbb\xa8\xf1\xa6\xaa\x7a\xa2\xf9\x7b\x77\x81\x07\xc4\xb0\xf8\x1d\x84\x0b\x00\x14\x2a\x65\xb0\x59\x2a\x36\xc1\xf7\x8a\x20\x89\x26\xb7\x8b\x54\xd1\x1b\x87\x02\xc7\x85\x0c\x14\xc1\x24\x4f\x9f\x7b\x1c\xc6\x90\xe5\x8c\x02\x2b\xcf\xf7\xba\x07\x4c\x68\x09\x85\x39\x5c\xf7\xe1\x20\x49\xae\xa9\x98\x25\x9a\x8e\xf2\x4e\x55\xd4\x93\x13\x63\xfe\xc5\x90\xa0\x21\xe5\xfc\x8b\x21\x60\x8b\xdc\x2c\x61\x26\x27\xb2\x8c\xbe\xf2\xaf\x9a\xaa\xc0\x7c\x5e\x90\x20\xd2\x67\x2d\x54\xab\x37\x79\x0b\x26\x8e\x8f\x6e\xfd\x7e\x41\x01\x82\x3d\xc5\x7a\x16\x37\x7a\x99\x04\x71\x73\x73\x93\xaf\x08\x42\x86\x18\x52\x1c\x25\x57\xaa\xe2\x6e\xe9\x96\x6b\x48\xd3\x69\x84\xef\xac\xed\x52\xf6\x49\x6f\x71\xf5\x36\x26\xe7\x73\xfc\x29\x3e\xa7\x71\x86\x5a\xaa\x5c\x14\x4c\x96\xf2\x7f\xea\xae\x45\xf1\x83\xf2\xcf\x8b\xd3\x56\x89\x00\x6a\x02\x65\xe7\x7d\xaf\x92\x21\xa9\x54\xdc\x86\xef\x2b\x15\xb7\xa5\x8f\x25\x9a\x65\x29\x61\x8e\x3a\xe3\x21\xc3\xe2\xe9\x61\xce\x45\x88\x52\x38\x7d\x8c\x0c\x17\xac\xdf\xff\xaa\x4e\x1a\x16\xea\xbe\x44\x7e\xea\xbb\x24\x3c\xc9\xe4\x9e\x21\xc2\x2e\xd0\xd8\xdf\xdd\xfe\x76\xa5\xcb\x85\xbf\xae\x11\x5a\xd5\x8a\xe5\xcd\xc6\x60\x90\xcc\x62\x9e\xd6\x55\x16\xb5\xe3\x30\x87\x3b\x1f\xd5\xf9\x8e\x0b\xe5\xd6\xe2\x77\x59\x9c\xa3\x25\x66\xa3\x32\xe3\xa9\xf4\x0a\x3e\xb1\xb2\xcb\x8c\x34\x1e\x25\xee\xa3\x47\x37\xfa\x1a\xf5\x42\x3b\x76\xbb\xc0\xb2\xa7\x52\x9b\xdb\xac\xd8\x9e\xa8\x03\x24\x92\x72\xed\xd9\x4f\x85\x39\x49\x57\x50\x4d\x09\xa4\x0b\x5d\x17\x14\xcf\x61\x5c\xb5\x93\x7a\x62\xa3\x05\x15\x98\x5c\x49\x05\xd3\x53\x62\xea\x05\xfd\xf4\x2d\x58\x26\xd6\x2c\xc8\x30\xea\xe4\x00\xea\xfb\xdd\xcb\x19\x8d\x04\xcb\xf6\xc0\x82\x1c\x63\xa3\xa2\x68\xf9\x1c\x4a\x55\xdf\xcd\xfc\xd0\xa9\xc3\xbc\xa5\x11\x15\x4b\x33\xb2\x97\x65\xfa\x35\xb9\x73\x8b\x6e\x35\xe5\x17\xc5\xcd\x81\xbc\xab\xf4\x98\x90\x3a\xca\xb8\xad\xd2\x8e\xe9\x49\x5d\x29\x5a\x1e\x3d\x25\x17\xe3\x7a\xbc\x5f\xa9\xb0\x4c\x69\x50\xc6\xf8\xd6\x86\x0c\xa5\x5e\xc2\x4c\xd3\xa4\xf2\x94\xbc\x6e\xc9\x0c\xd5\x69\xea\x4c\xb4\x56\x3a\x1f\x93\x94\x64\x76\x00\x79\x26\x65\xba\x25\x75\xae\xb4\x22\x32\x74\xdc\xdc\x62\xe2\x49\x09\x2e\x8b\x6a\x9a\xca\xbd\xe0\xef\xdf\xbd\xfd\x8a\xf3\xe9\x89\xa2\xae\xb5\x34\x3b\x58\x7f\x47\x27\x92\xa0\xa4\x8c\x63\x6c\x37\x37\xbf\x4f\xa5\x18\x94\xd6\x93\xa5\x7b\x59\x75\xc7\xfd\x9b\xd3\xf7\xc7\xfa\xca\x3a\xad\x67\x84\x49\x6e\x39\x58\x4b\xea\x78\x36\xa4\x24\x1e\x10\x84\xb2\x38\x79\xf2\x86\x1a\xa0\x7d\xa6\x4d\xda\x70\x9a\xd2\x2b\xc1\x66\xee\x73\xd7\x2c\x05\x8a\x14\x0c\xd0\x98\x80\x21\x84\x72\xa4\x0b\x08\xa9\x57\x50\xa9\x26\xc6\x81\xc0\x42\xef\x0b\x4a\x72\xf2\x20\x68\x8e\x8a\x0f\x55\x77\xc4\x40\xbd\x30\xa8\x5f\xa8\x70\xf6\xce\x04\xdf\x39\x97\xc4\x0c\x51\xdd\x15\x35\x79\xa4\xd4\x03\x39\xe3\x74\x19\x79\xa8\x6b\x27\x61\xce\x18\xa7\xce\x25\x21\xb1\xc3\xc9\x64\x4a\xc4\x00\xdf\x50\x3e\xae\x3b\x7f\x48\x66\xa6\x94\x74\x26\xd9\xaa\xc3\x13\x07\x3b\x2f\xc4\x1c\x9c\xa5\x64\xe8\x0c\xc9\x74\xc6\xef\x5e\x38\x98\x73\x3c\xb8\x96\x75\x98\xcb\xf1\x20\xc5\xe0\x1a\xd6\xb5\xce\x52\xcd\xfe\x74\xb6\xd8\x6c\xcd\x5d\x9c\x11\xa6\x91\xae\x8c\xa3\x64\x66\xe7\xc5\x17\xf7\xa9\x96\xcc\xc5\x38\xce\x5f\x38\x9e\xea\x24\xf1\x25\x99\xbf\x50\x00\xf6\x50\xcf\x5f\x80\xfa\x9f\x4c\xbd\xc4\x3c\x73\xbf\x3c\x3c\x73\xe1\x9f\x04\x78\xd7\x66\x43\xe8\x8b\xfb\x12\x0b\x3f\xb3\x9b\x56\x30\x60\xfe\x27\x41\x6f\x52\x27\x56\xad\x86\x60\xae\x5d\x06\x12\xb4\x4f\x7e\xde\xe2\xf8\xf7\xef\x0c\xee\x27\xac\x8d\x9f\xba\x30\xaa\x55\xf1\xa7\xac\x68\xd0\x1d\x0f\xe5\x02\xf1\x19\x17\xad\x55\x07\x81\x4f\x1f\xed\xe5\x27\x12\x9f\x20\x6f\xc9\x2e\x92\xb7\x45\x03\x1c\x8d\x93\x94\x87\xad\x86\xef\xeb\xae\xc9\xb4\xfd\x00\x1c\x97\xdf\x02\x8d\x87\xb2\xf6\x3f\x91\xea\xfe\x9a\x05\xb1\xbf\x24\x95\x19\x52\x50\xc2\x09\x9e\x8a\x3e\xc2\xd1\xc5\x94\x25\x93\x29\xff\xac\x54\xa8\xcf\xed\x56\x5d\x60\xe5\x9f\x57\x10\xed\xaa\xed\xe5\x93\x44\x6b\x1a\xf5\x8d\x6c\x53\x79\xe1\x05\x10\xd1\x11\x33\x9e\xfc\x7c\x7a\xdf\xf6\x7f\x49\x7a\x5f\x76\x4f\xf7\x57\x45\xf2\xcb\xd5\x2f\x3d\x9f\x50\x60\x34\x96\x24\x3f\xc3\xe9\xe2\x85\xb2\x3e\x7c\xf9\xfb\xbb\x53\x34\x8e\x1d\x9f\x7d\xcf\xf1\x77\x3a\x2a\xa6\xb6\x7a\x22\x4b\xe9\x65\x75\x9f\x15\x60\x5c\x00\xe5\xde\xe3\xa4\x90\x1c\x2d\xf4\xa1\xde\x72\x2c\xe4\x9c\x7f\xca\xe6\x66\xa9\x80\x27\xf7\x1e\x9a\x1c\xfa\xe5\x5b\x90\xec\xba\xc0\x0c\x88\x32\x42\x01\xf3\x4f\x1c\xe4\x4f\x12\x75\xca\x4e\x05\x3f\xc7\xd0\xb2\x92\xa1\x2d\xdd\xb5\xfe\x85\x76\x93\xff\xc9\xed\x0b\xef\x0b\x9c\x49\xdf\x5a\xc1\x95\x5b\xac\x25\x3a\x63\xcf\xa0\x33\xc5\xdc\x7e\x22\x47\x81\x2b\x9d\xb0\x3c\x5b\x47\x63\xd1\x7b\xc2\x2f\xa3\x87\xaf\x02\x64\x94\xd0\xf3\x20\x89\x07\x98\x93\x18\x73\x32\xcc\x83\xcc\x87\x3d\x77\xe9\xc4\xda\x85\xee\x92\x5c\xa4\x05\x9a\xc5\x93\xed\x4c\x1d\x48\xcb\x42\xb9\x3a\x11\xcc\xc8\xfd\x62\x26\x17\x7a\xb3\xa8\xac\x16\xb9\xfa\xd9\x62\x56\x54\x12\x96\xaa\x3d\x5f\x93\xbb\x15\x52\x88\x3a\x4a\x79\x5a\xb6\x51\xf7\x68\xaa\x86\x2b\x94\xa8\xcc\xc7\xd5\xab\x59\xe1\xf8\x46\x06\x4a\x96\x46\x68\xa5\xc5\xca\x06\x3f\x8e\x49\xd1\xc4\xa9\xb2\xec\x17\xe8\x2e\xac\x14\xe9\x15\x08\xda\x09\x8b\xea\x2d\x36\x74\x99\x3e\x4b\x5e\x50\x01\x32\x3f\x4b\x7f\x78\xf0\xb4\xae\x76\xd6\xdb\x41\x27\x0f\xaa\xbd\x58\x02\x01\x40\x32\xf9\x85\x23\x3d\x35\xb3\x16\xa4\x89\xc5\x31\xfc\x99\xc2\x84\xe7\x6e\xba\xeb\x08\x79\x04\xf5\xf4\xc5\xb8\x10\x19\xa5\xb2\xb4\xb4\xdc\x1f\x24\x11\x74\x37\x37\x5d\xb8\xf8\x55\x08\x95\x4b\x89\x53\xcc\xc7\x82\x67\xf7\x35\x2f\x72\x01\x30\x96\xd6\xb5\x00\x54\x2a\x1e\xa9\x22\x77\xd3\x05\x90\x80\xaa\xf1\x45\xaf\xeb\x57\x1f\xf3\x49\xa4\xf4\x20\x64\x57\x48\x66\xff\x5b\xc1\x12\xca\xdc\xc9\x64\x2b\x77\x71\x86\x15\xb5\x8a\x96\x67\x5b\x7e\x5e\xb6\x64\x7e\x91\x33\x45\xe9\x15\xa1\xe0\xda\x27\x24\xb0\xe8\x94\x47\x5a\x68\xe4\xa6\x86\x73\x98\x2f\x4d\xcb\xba\x75\x7a\xf6\x99\x48\xeb\xcb\x0d\x33\xbd\xd5\xfd\x44\xd9\xe3\xb3\x1d\xac\x2e\x68\xff\xd9\x47\xaa\xda\x3b\x06\x4c\x51\x2d\x58\x47\x88\xe6\xa6\xf4\x69\x91\xe6\xff\x13\x58\x53\xe9\xc8\x4b\x2b\x15\xed\xbc\x64\x1d\x21\xbc\xec\x08\xeb\x89\xc2\xc7\x38\x75\x70\xec\xd0\x78\x90\x30\x69\x87\x61\xe2\x41\x48\x94\xc6\x75\x96\xf6\xda\x7a\x49\x1c\xf7\x45\x15\x57\x5f\xb8\x50\xba\xe4\xa2\xa9\x78\xd7\xc5\x57\x5f\xb8\x2f\xca\x57\xf9\x57\xc9\x90\x84\x43\xb2\x7c\xbe\xd6\x4b\xfa\xe0\x13\xd6\x7e\xfc\xd8\xda\xbf\xe8\x9c\xfa\xef\xd7\x6e\xef\x19\x1a\x6d\x8b\x0d\x58\xda\xef\x19\x2d\x25\x05\xb8\x4a\xab\x6d\x69\xe9\x5e\xb1\x10\x4b\x24\x17\x11\x8e\x87\x4a\xb8\x51\x1e\x79\xcd\xd1\xc6\x27\x5c\x60\xaf\x3c\x61\x60\x04\x0f\x2f\x6e\x18\x55\xb3\x55\x96\xf7\x56\x15\xb7\x62\x15\xb5\x20\xf4\xa1\x88\xac\xd3\x63\x27\x13\x16\x80\x0b\xdd\x11\x8e\xd2\x5f\x46\xb1\xf7\x31\xca\x5b\x8c\x51\xf0\x24\xe5\x05\xbf\x5c\xc8\x8b\x55\xc4\x65\xbc\xca\x97\xb5\xc4\xf4\x46\x4d\xd9\xb8\x97\x6e\xd0\x56\x1a\xbc\xfe\xa5\x66\x8f\xb4\x9d\x32\x16\x51\x2a\x7c\xb7\xb1\x31\x95\xae\xaa\x62\x47\x35\x38\xd5\x97\x4e\x12\xe4\xde\x0e\x04\x09\xee\x57\xda\x82\x8a\x3e\x42\xee\x72\x11\xee\x7c\x5e\x5a\x72\xfc\x98\x36\x34\x9b\x2d\x88\x65\x4a\x24\x51\x50\xcf\xbe\x1d\xa3\x59\xa4\x17\xa3\x4b\xb9\x68\xf9\xc5\xcb\x6c\x6a\xe5\x92\xb0\x90\xc1\xb2\xf9\x2a\xcf\x03\xb1\x2a\x2a\xd5\x45\x49\xc1\xc9\x72\x5b\xb0\x80\x2f\xcd\x2a\x60\x99\xea\x42\x97\xb3\x19\x91\x71\x51\x56\x18\x6d\xa6\x00\xea\x85\x18\x21\x94\x47\x99\x79\x44\x81\x1a\x88\xa5\xcd\x58\x52\x92\x28\x25\x4e\x22\xef\x8e\x62\xcf\x3d\x4e\xb8\x83\x1d\x49\x7b\x8e\x06\xd6\xfe\xc9\xd6\xa8\x0e\x81\xf3\x4a\xd0\x85\x77\xaf\x88\x3a\x24\x68\x9f\x66\x92\x95\x3d\x22\x21\x99\x03\x79\x37\x05\x0a\x13\xa9\x44\x7f\x5a\xbb\xce\x1f\xa6\x51\x8d\xdc\xca\x15\xe6\x31\xef\xfa\x8f\x99\x19\xd9\x81\xb0\x4e\x64\x96\xd7\xa7\x6f\x73\xbf\x54\x90\xa9\xd0\x3f\xbc\x5e\x08\x87\x24\x21\xd1\xa2\x2d\x97\x2c\xd2\x76\x80\x62\x11\xb7\x96\x4f\x6c\x3f\x1e\x60\x0e\xed\x72\x4d\xb8\xa0\xfb\x0b\x1a\x53\xae\xd2\x7e\x23\xd5\xd5\x90\xe5\x95\x66\x4a\xd8\x8a\x12\x3c\x3f\xef\x33\xad\x46\x5f\x52\xe9\x14\x95\x7b\x7d\x7d\x32\x3a\xd4\x53\x5a\x65\xbf\x18\x1f\x2d\xb3\x2b\x57\x66\x89\xef\x92\x21\x89\x8a\xe2\x30\x2c\xf8\xbf\x2f\xef\xa9\xcc\x91\xa0\x90\x1a\x45\xff\x74\xd9\x4a\x9d\x48\x5e\x1f\x8c\xc9\xe0\xfa\xad\x54\x6d\x94\x0e\x88\xc3\xc5\x24\x68\xbd\xaa\x5b\x74\xb9\xbb\xe3\x65\x96\xb8\x4b\xf2\xb0\x98\x95\x52\xc8\xb3\x26\x1d\xa8\xcb\xab\x4c\x0f\xd4\x07\xd2\x99\xad\x5d\xad\x55\x7a\x58\xcf\x08\xda\xf5\x9f\xea\x00\xda\x5d\x92\x0d\xe1\x62\x22\x5c\x48\x30\xbe\x50\x56\x8c\xa3\xde\x57\xd9\x9b\x28\x56\x36\x92\xf6\x46\xaa\x0c\xa0\xea\xd6\x69\x7a\x60\x8f\x99\xdc\x61\x65\xf1\x11\x92\x4c\x8d\xb7\x6b\x2d\x51\xda\x07\xbc\x07\x42\x8f\xd6\x31\xe7\x64\x32\xe5\xc4\xf2\xb1\x85\x08\xc4\xdd\x58\xdf\x98\xbf\x96\xd6\xbf\x1e\x01\x21\x7d\x84\xae\xb2\x9d\xef\x42\xa6\xb9\xbc\xb2\x5f\x48\xbc\x27\xea\xea\xdd\xb5\xd3\x5d\x48\xca\x49\x73\x31\xdc\xd2\x27\x88\x34\xbf\xc8\xa9\x73\x99\xa4\xa0\x05\x95\x8f\x24\xe6\x64\x98\x1b\x4f\xc1\x7b\xdb\x7d\x41\xc1\xd8\x78\xa5\xd5\xa7\x6e\x65\xc1\xf0\x58\x9b\x74\xda\x29\x74\x88\x0a\x71\x4a\xdc\xb5\x0c\xa1\x3c\xea\x3c\x25\x11\x91\xb2\x92\x5b\x5f\x19\xce\x04\x88\xe9\x41\xe2\xe1\xab\x31\x8d\x86\x9e\x85\xdd\xd8\x47\x1b\xc3\x62\xbb\xe2\x5a\x06\xf1\xc0\x1c\xda\xb6\xc7\x32\x3a\x34\x42\x68\x55\x2d\x7e\x55\xa8\x2c\xd0\x0e\xcd\x4a\xcc\xa8\x9f\x3c\x23\x5e\x8c\xca\xf5\xd7\x4a\x0e\x96\x73\xb2\x92\x88\xd3\xda\x8f\xa7\x2c\xc3\xa1\xb1\x43\x80\x94\x06\xc7\x38\x7d\x7f\x13\x67\xb5\x63\xc0\xb8\x37\x4b\x6f\xa8\x98\x93\xa4\xc7\xfa\xe0\x7e\x80\x53\xb2\xee\x87\x31\x72\x03\x77\x4d\xc5\xc0\x95\x49\x81\x48\xf2\x4d\x92\xae\x55\x18\x4b\x17\x5e\x73\xae\x24\x0c\x56\x75\x91\x5b\x8d\x73\x9f\xd9\xe6\x94\xc2\x05\xf3\x12\xd7\xc8\x44\x05\x86\x7d\x78\x68\xfb\xbe\xb4\x2d\x50\x21\x4b\xe5\xfb\x5a\xc1\xa7\xed\x84\xb0\x2b\xe2\xdd\x47\x64\xc4\xc3\x74\xc0\x08\xd1\x61\x97\x37\x1b\x35\xbe\xd9\x80\x3c\x99\x9a\x64\x85\x62\xb3\x51\x63\x9b\x0d\x28\x61\x42\x0e\x55\x62\xc8\xe6\x82\x4f\x78\xec\xe1\x41\xac\x65\x6b\xf6\x8c\x32\x5e\x3e\x8c\x63\x97\x78\x89\x8c\x17\x48\xb6\x60\xfb\x6f\x93\xb8\xf2\x51\xf0\x39\x68\x74\xc1\x85\x53\x59\x20\x45\xf9\x69\xd1\xef\xee\x23\x66\xa2\x9f\x1a\x4d\x5f\x91\xe9\xa2\xe5\xa2\x89\xce\xe5\x56\x79\xbe\x1e\x3e\x3c\x78\xab\x21\xed\x38\x5e\x00\x40\xf6\xf3\x7d\xa5\xeb\x85\xac\x38\x6b\x2e\xbe\x61\xc9\xed\x9d\x5c\xed\xa1\x72\xea\xaa\x8e\xd4\x53\xcb\x85\xeb\xd3\xd6\xc7\x45\x13\x56\x29\xcc\xca\x83\x7f\xc2\x67\x53\x79\x2e\x2e\x4b\xb1\xbc\x18\x08\x99\xf9\xf1\xd3\x78\xbb\x02\xd9\x59\xf0\x1a\xa9\x97\x78\x22\x2d\x78\x69\x50\x67\xf2\x03\x15\x20\xd9\xd5\x16\x29\x04\x40\xf3\x61\xc1\x03\x9e\x80\x58\xf2\x8a\xa7\x74\xd4\x44\xf5\xb5\x97\xba\xac\xbb\x05\x51\x1b\x8a\x37\x0e\x84\x4a\x2d\x62\x93\xd2\xe4\x6c\xac\x17\x63\x62\x2e\x1d\xd3\x66\x2d\x7f\xf6\xbe\x97\x80\x7b\xac\x17\xfa\x94\x63\xc6\xdf\x4f\x49\x2c\x76\x95\x5e\xb9\x05\x9e\x91\x54\xb2\x09\x5c\x06\x66\xf9\x38\x92\x0e\xd4\x15\x70\x29\x68\x7e\xdf\x6d\x6a\x31\xa2\x31\x4d\xc7\xb2\x1a\x90\xa8\x4b\x91\x25\x51\xa6\x24\x17\xa6\x51\x96\xa7\x20\x45\xc9\xe8\xa0\xc4\xd2\x1e\x7c\xc6\x20\x7c\x8e\x5e\x4d\xec\x5e\x7d\x23\x0a\x7e\xba\x5b\x75\x77\xa9\x6a\xae\xea\xaf\xa4\xd0\x51\x0a\x33\x94\x0d\x7c\xa4\x9f\x12\xab\x9f\xb2\x2c\xab\x3b\x4a\x1d\x02\xfc\x1d\x74\x94\xe6\xdd\xcf\xec\x28\x55\xcd\xd2\x8e\x5a\xec\x27\xb3\x28\x3c\xbb\x97\xb4\xbb\x94\x47\x7a\xe9\x51\x39\x58\xfb\x1a\x2c\x77\x39\xf0\xc4\x6a\xb1\x6a\xad\x60\x05\xff\xa4\x45\xd3\xbc\x47\x1c\x8d\x2d\xae\x15\xd9\x05\x80\x34\x88\xf7\xcc\xf6\xa7\x30\xb4\x2a\xa2\xdb\x7a\xb2\x7c\xb9\x92\x05\x64\xc3\x8b\x61\xd6\x5e\x48\x0b\xde\x17\x0e\x94\xa1\x43\xee\x92\x99\x33\x4a\xd8\x15\x91\x8a\xcc\x26\x8c\x96\x43\x79\xd7\xd5\xb8\x7b\xa4\x2f\xcd\x9b\x4a\x3c\x61\x67\x85\x64\x45\x18\xe4\x3c\xd1\x91\xde\xe4\xb5\x8a\x0e\x3e\xe1\x4c\x08\x1f\x27\xc3\x7a\x4e\x78\xcb\x44\x97\x6d\xa8\xee\xe7\x99\xd8\xf4\x1c\x9b\x68\xee\x89\x8a\x7a\x54\x9f\x77\x7d\xee\xf5\x54\x45\x62\x67\x9e\x9b\x48\xee\xb5\xee\x9b\xb0\xe8\xcc\x73\x47\x9a\x6b\xa8\xf8\xe4\xcc\x73\x07\x86\x88\xcb\x08\xaf\x54\x44\x29\xa7\xbf\x22\xd0\x5f\x20\x1e\xb4\xa1\x4f\xd1\xe1\xd9\x92\xaf\x3c\x07\x9a\x08\x01\xa1\x3b\x8b\x0b\x07\x1b\x2e\x34\xde\xe2\x17\x3e\x84\xf7\x52\xe3\xfd\x9d\x72\x6a\xa5\x04\x8f\x85\x0d\x76\xb8\x1e\xc0\x6c\x39\x0b\xa9\xea\x5d\x13\xd9\xc7\xca\xec\xf6\x01\xcc\x19\xb4\x00\x94\x7d\x5e\x0e\x59\x3c\x3f\x18\x86\xf7\x5a\x02\xf8\x90\x12\xb6\xa2\x16\x3e\xcc\xb9\x9a\x19\x40\x81\x5c\xdf\xf2\xd2\xf8\x2a\xbc\xa7\xe9\xb7\x09\xbb\x16\x8f\xeb\x3e\xa4\xe9\x7b\x9d\xbe\xee\xc3\x7c\x29\x14\x3d\x28\x07\x27\xf7\xab\x5c\x3c\xf6\x33\xae\xa0\x6c\xc7\xba\x6e\xb1\x3b\xc5\xfa\xa7\x57\xc9\x6c\x9b\xab\x51\x2d\x74\x70\xdd\x6e\xb8\xd9\xd2\x16\x51\x2f\x8e\x15\x98\xeb\xd5\xb5\xac\x49\x6f\xcc\x87\xac\x4d\x6f\xd4\x42\xfc\xd9\x1a\x95\xe1\xfb\xfc\xad\xd2\x43\xb6\xd4\xa8\x57\x3a\x5d\xbe\x2c\x0d\xbb\xb5\xe8\x94\x86\x46\x28\x29\x0a\x66\xab\xce\x2f\xd2\x10\xb1\x1d\xb2\x96\x39\xc9\x2d\x10\x81\xc9\x7c\x49\x4f\xcf\x46\xb5\xb4\x51\x59\xd8\xef\x96\x6c\x76\x2b\x15\x8f\xf7\x58\x5f\xee\x57\x2d\x97\x0a\xb4\xb0\x26\xd9\xbe\xee\x0c\xc6\x5d\x96\xc7\x3f\x63\xd5\x2a\x10\xed\xea\x09\x54\x7d\x7d\x3c\x5f\x1a\x60\xa2\xc0\x0a\x19\x1e\x5c\x93\x61\x6d\x82\xa7\x69\x0d\xc7\xc3\x5a\x4a\xb8\xe5\x9f\x63\x82\x17\x4f\x22\x1e\x87\x17\x8b\xf3\xe7\xe7\x8e\x67\xaa\xd0\x6f\x09\xbe\x7e\x87\xa7\x28\x4b\x10\x2f\x85\x2b\x36\x96\x5d\xb1\xbd\xc3\xd3\x7b\x79\x90\x5c\xd8\x39\x0d\x92\x38\x9d\x4d\xc8\xd7\xe4\x0e\x68\x2f\xff\x00\xaa\x03\x55\x05\x3b\x1f\xe3\xf4\xd9\x59\x14\xec\x9c\xc4\x9c\x51\x92\x7a\x65\xb9\x5e\x25\x51\x44\x06\xea\x70\x54\x49\x09\x2a\x6b\x96\x67\x7e\x4d\xee\x3e\x2d\xab\xca\x30\x97\xfd\xf3\x69\x39\x4d\x96\xb9\xd1\x1b\x21\xda\x69\xf1\x13\xf9\x72\xf0\xb9\x10\x4d\x52\xfa\x23\xf9\xa4\x72\x45\x86\x79\xaa\xc3\xaf\x15\xf6\xb1\x94\xf1\xbb\x42\xc7\xe6\xc9\x2b\x91\x69\x3c\x73\xe5\xae\x65\x61\xb0\x7e\x0a\xc6\x0c\xd1\x5c\x3a\x12\xcc\x25\xe6\x62\xeb\x65\xa9\x68\xbf\xac\x18\x06\x9e\x53\x8e\xc6\x3e\x9f\xcb\x03\x2f\x8b\x82\x19\xcc\xe3\xfe\x2a\x1f\xad\xa7\x77\x93\xcb\x24\x32\x97\x26\x2c\xbf\x76\xeb\xa9\x2f\x75\xca\x95\xcb\xdd\xfe\x8a\xd9\x64\x65\x81\x0b\x59\xa0\x9c\x16\xcf\x1b\x3f\x22\x04\xf6\xc5\xcb\x6b\x3d\x0b\xff\x42\xb3\xeb\x79\x74\xf3\xd3\x68\x63\x71\xfc\xe7\x4b\x9c\x26\xfe\x04\x56\x99\x92\x45\x95\x9e\xbf\x63\x56\x79\x4a\x78\xce\x2a\xc5\xcb\x0a\x56\x79\x4a\xf8\xfd\xff\xcf\xf7\x7e\x21\xbe\x87\x87\xc3\xcf\xc0\xa3\x14\x96\xff\x48\x78\x9e\x20\xc5\xbf\x42\x9e\xf7\x13\xa7\xc9\x73\x08\xe0\xa7\x0c\xf2\xe3\xcc\x4b\xf4\xf1\xa7\x30\x2f\xc9\x8c\x7e\x39\x0f\xb4\xea\x2e\xf0\x0c\x5f\x95\x44\x06\x14\x1b\x5c\xa6\x03\xca\xeb\xae\x44\x03\xb1\x25\xd6\x4d\x46\x43\xf3\x92\x0f\x16\x22\xcb\x03\x88\x34\x94\x28\x25\xfb\x2c\x5e\x34\xdb\x2b\x0b\xa2\x93\x45\x98\x85\x09\xca\xee\xd1\xb5\x40\x0d\x31\x4a\xf6\x9a\x5d\x1e\xea\x1b\xc0\xb8\x1b\x9b\x08\x7e\xea\xe8\xc7\x34\xfd\x35\x51\x7e\x6a\x13\x1d\x0a\x5d\xc6\xe4\x71\x13\x09\x9a\xfb\x5d\x3f\x21\x23\x51\xd1\x4a\xa5\xc4\x27\xbb\xfe\x56\x1f\x92\x41\xc2\x30\x27\x00\xa3\xc5\xa4\xac\xbe\x6b\x52\xcb\xc8\xec\x00\xa4\x3e\x94\xac\x6e\x2d\xd8\x4d\xf7\x91\xbf\x9b\xd6\x6a\xc0\xa3\x88\xf4\xd2\xbe\xd8\x57\x60\xe4\x89\x56\x50\x0f\x83\x30\xd9\x17\x0f\x02\x0d\x06\xa1\x7c\x00\xe0\xe1\x01\xe7\x9b\x9c\xfd\x66\xa5\x82\x2b\x95\xf2\x01\x56\xf9\x20\x9e\x9b\x05\x44\xde\x62\xd0\x81\x93\x77\xb5\xba\x03\xbf\xb8\xe0\xf8\xea\x42\x8e\xff\xc5\xc5\x5c\x03\x99\xa1\x29\x01\xd1\x03\x34\x9f\x73\xaf\xa7\xef\x4a\x34\xb5\xf6\xa1\x3d\xa9\xdd\x42\x2e\x57\x73\x10\xa0\x23\x38\xc4\x88\x59\x83\xbe\x56\xa0\x80\x58\xc3\xc8\x18\x04\xba\x22\x6b\x16\xb9\x50\xfd\x3d\x41\xf7\xca\x81\x30\x46\x04\xed\xdf\x0f\x3c\x02\x13\x30\x5f\x2b\x23\x36\xbc\xa6\xfc\x42\x08\xb8\x61\x06\xb7\x48\xa6\x69\xce\xe6\x64\xcb\x2a\x15\xaf\x14\x99\x40\x63\x87\x29\x76\x7b\x7d\xa9\xa7\xb6\x84\x2f\x07\x54\x71\xc2\xcc\xe8\xbc\x1a\xe3\xf8\x8a\x98\x9c\xa6\x4f\x22\x79\x7a\xa4\x85\x99\x7c\x5f\x3a\x53\xa2\x86\x68\x40\x8c\x22\x2d\x9c\xad\x65\x8a\xe3\xb1\x0a\xc7\x46\x6e\xc4\x26\x0a\x46\x5a\xac\x8a\x81\xf2\xeb\x4c\x51\x2c\x73\xe4\xd7\x6b\x59\x46\x2a\x83\xad\xc9\xf9\x0c\x63\x99\x8d\x43\x0a\x00\xa4\xf9\x96\x76\xa0\x8a\x8e\x3d\x55\x07\x6b\xb3\x3b\x54\x5f\x68\xf6\xe5\x69\xee\x25\xb5\xea\x3f\x49\xe6\x92\xdb\xd9\xe7\x08\x72\x9f\x5d\x3d\x74\x65\x86\x7c\x23\xe0\xc2\x7b\x12\xcf\x26\x44\xaa\x00\x87\xeb\x3e\xbc\x22\x3c\x2c\xd3\xdc\xc9\xb3\xcc\x9f\x81\x59\x0f\xff\xa7\x62\xd7\xd9\x9e\x53\xc2\xa9\x90\x7c\x9f\x85\x9d\x59\x32\xc0\x73\xeb\xfe\x13\xb0\xeb\x6c\xea\xba\x41\x32\xfe\x8b\x0b\x22\x66\xcd\x05\x9e\xf1\xe4\x82\x4e\x04\xb9\x5c\x5c\x14\x23\xfa\x1a\x42\x14\xa4\x9d\xc7\xdd\x83\x18\xa6\x88\xf7\xfc\x3e\x8c\x10\xef\x05\x7d\x38\x43\xbc\xd7\xe8\xc3\x21\xf2\xe1\x18\xf5\xfa\xbb\xc3\x3d\xb3\x60\xec\x0e\xab\x55\x80\x51\xda\x1b\xf6\x4d\xc3\xf2\x18\xb0\xc5\x33\x1f\x15\xb6\x8b\x42\x0c\x2a\x15\xda\xc3\xfd\x4a\x65\xac\xb4\x14\xc4\x4b\xcf\xef\x03\x28\x1e\x90\xaf\x22\x95\x3a\x34\x76\x22\xf0\x2c\x94\x11\x8c\xa5\xc5\x50\x2f\xee\xa3\xa8\x17\xf7\x55\xac\xd3\x41\xa5\x32\xf0\x38\xd8\x1d\x9b\x9a\x82\x71\x3d\x1d\xd3\x11\xf7\x2c\xdd\x3b\x15\xac\x59\x6b\x96\x25\x70\xf6\xf0\xd0\xeb\x03\x28\xa4\x37\xeb\x36\xc5\x0a\xcf\x0f\x39\xf2\x77\xf9\x5e\x16\x8b\x95\x57\xab\xd6\xc9\x14\x4a\x7a\xbc\x0f\xa5\xef\xd0\x14\x05\xbb\xe9\x9e\xb1\x3d\xd9\x4d\x4d\x9c\xfe\x08\xb1\x5e\xda\x5f\x13\xcc\x91\xf6\xa2\xbe\xe4\x3a\xeb\x01\x98\x0b\xfe\x93\x98\x08\x80\xbc\x56\x83\x01\x80\x04\x61\x0f\xd7\x53\xc4\x44\xe7\x64\x97\x11\x64\xae\xd4\x4c\xee\xe7\x90\xa2\x7b\x3f\xf4\xe7\x30\x91\x1a\x26\xb9\x53\x52\xe5\xa2\x35\xee\xf1\x7e\x16\x16\xbf\xc7\xfb\x75\xcd\x31\xf4\x41\x9e\x48\x42\xf7\x34\xe4\x30\x0a\xd7\x03\xa8\x3f\x86\xf7\xf3\xdc\x13\xa9\xc8\x24\x7b\x98\x99\xbc\x32\x08\xac\x79\xc6\xd2\xb8\x46\xb4\x36\x4b\x9b\xe3\xfa\x04\x11\x88\xeb\x03\x14\x43\x5c\x1f\x2e\xc5\xef\xc3\xf5\x44\xb2\xba\x87\x87\x55\xd3\x80\x97\xd1\x3d\x9b\x83\x39\xc4\x75\x86\x8a\x02\x5a\xac\x72\x0f\xdd\xf5\xa2\x44\x5d\xa9\x68\x61\xd8\x68\x4b\x9f\xe1\xab\x55\x4b\x7c\x26\x38\x5b\xb0\x86\x8b\xb9\x9a\xab\x3d\x36\x6b\x57\x30\x3f\x51\x5d\xbe\x70\xd1\x46\x47\x5e\x50\xe1\xd2\xab\x27\xf6\x08\x00\x70\xbb\x92\xc5\x10\x90\xd1\x5e\x5b\xe2\xeb\x92\x14\x45\x2a\x15\xf1\x5f\x3d\x2f\x29\xcf\xa4\xc6\x52\x57\x4e\x2b\x54\x4a\x3b\x4b\x81\x0e\xd7\x99\xc7\x56\x55\x9d\x41\x57\x9f\xe4\x2e\x71\x1a\xd5\x0a\x32\x07\xb0\x21\x2b\xa4\x2d\x6d\xb3\x4e\x26\x20\x63\x15\xea\x78\x17\xd7\x87\x1e\x83\x31\x2c\xb9\xda\x17\x44\x34\xaf\x5f\xd2\x78\xa8\xfd\x7c\xda\xc1\xbb\x21\xae\x97\xe9\x4b\x2d\xb4\xb6\xbb\xcc\xf5\xb2\xcb\xa3\x79\x09\x4b\x24\x19\x05\x8b\x7a\x71\xe8\x62\x17\x72\x00\xb9\x28\x6e\xc5\xdd\xe7\xb3\xf8\x8c\x8e\x67\x5b\x9f\x22\xd7\xd5\x0e\x74\xb5\x9a\xd2\x0d\xb9\x9c\xe2\xc1\xf5\x6f\xd2\x24\x9e\x96\x30\xdd\x67\x82\xc9\x88\xa3\x11\x4a\x15\x4f\x92\x5d\x96\x82\x35\xf5\x8a\x38\x4c\x51\x16\xe2\x3f\x53\x27\x9b\x21\x7f\x77\x96\x33\xe3\x59\xb5\x0a\xb8\x97\xf6\x66\x7d\xb5\x02\x0c\x50\x54\xe4\x74\x5e\xaf\xbd\x05\x1b\x9a\xc5\x79\xf7\x8d\x9d\x70\xd9\x6d\xf2\x05\xc1\xf4\x82\x21\x6d\xb2\x04\xed\xd4\x21\x52\x44\x34\x87\xed\xad\x70\xc9\x45\xac\xd7\xd8\x11\xf2\x9b\x66\x05\x88\x79\xed\x6d\x30\x87\xed\xed\x25\x48\xb5\xc8\x50\x98\xac\x95\x4d\x61\xa3\x75\x58\xa9\x88\xed\x2d\xf2\xe2\x15\x7a\x88\x07\x51\x94\x47\xcb\x00\xbd\x38\xdb\x13\xf4\xeb\x29\x1b\xe4\xd1\x0d\xcf\x37\x7b\xdf\x6d\xf6\x37\xbe\xd8\x84\xee\xa6\x0b\xec\x1a\x7a\x14\xa9\x66\xc1\x44\x3d\x30\xd3\x5a\x39\x38\x07\x33\x9e\x1c\xc9\xa1\x79\x7d\x17\xe3\x09\x1d\x94\x45\xb6\x0e\x10\x5a\xda\x45\x75\x13\xcf\x55\x88\xef\xe2\x0b\xb7\x4a\x40\x68\x25\x70\x99\xe2\x95\xc6\x4b\x5f\x0e\xa8\x0a\xe6\x90\x7a\xee\xdf\xdc\xca\x2b\x9e\xcd\x51\x3a\x71\x61\xaf\x5f\x66\x1b\xc5\xbc\xf6\x8e\xbc\xef\xa5\x9e\x8b\x83\xe0\xae\xa6\xbc\xa2\xae\x06\xef\xf8\x06\xfc\x12\xa7\xa4\xd3\xaa\x7d\x9f\x3e\x02\x1c\x18\xe0\x41\x44\xa7\x97\x09\x66\xc3\x47\x80\x1b\x06\x78\xd8\xac\x61\xd1\xce\x47\x2a\x6d\x81\xa6\xca\x8b\xf2\x2a\xd0\xa0\xe1\x2f\x02\xd7\x06\x63\x96\x4c\xc4\x5e\xeb\xb1\x6c\x2d\x3b\x1b\xd1\xdb\x8a\xc7\x32\xd8\xf5\x4f\xc7\x78\xfa\x68\xa5\xb2\x9e\x19\xe2\xbb\x47\xbb\xb0\x59\x00\xdc\x9c\x46\xb3\x2b\x1a\x6f\x8a\x66\xc4\x43\xcc\x1e\xc9\x98\xd5\x7f\x84\x53\x5e\x1b\x12\x32\xad\x91\x1f\x66\x38\x7a\x24\x4b\xbb\x90\x65\x42\x26\x89\x34\x43\x5c\x05\xdf\xd8\xce\xe0\x23\xcc\x1f\xc1\xdb\x31\x70\x34\xe6\x84\xa5\xaa\x2b\x6b\xc9\xa5\x72\xf8\x56\xc3\xc3\x09\x7d\xa4\x67\x3b\x5b\x56\xf6\xa8\xa6\xc3\x4d\x8d\x12\x36\x79\xac\xd0\xa0\xd1\x5e\x9d\xad\x26\x5d\x09\x3e\xd2\x7b\x8d\xac\xcc\x49\x4c\x26\x49\x4c\x53\xbe\x39\x99\x45\x9c\xd6\xd4\x35\xdf\xaa\xaa\x6e\x2f\x67\x53\x87\xdd\x2b\x32\x6c\x65\x74\x10\x5f\x31\x3c\x1d\xd7\xe5\xef\x23\xf0\x19\x91\xa9\x50\x92\xc3\xcc\xd1\xc5\xca\x1c\x19\x1d\x4c\x19\xe1\xfc\xae\x36\x79\x84\xda\xb6\xb2\x3e\x63\x78\x54\x9b\x26\xc9\x23\xd4\xb2\x95\x75\x11\xa7\xd3\xe9\x5d\xfd\x31\x2a\x0e\x1a\x19\x19\x6b\xef\x80\x64\x58\x1b\xc8\x8d\xf8\xe3\xdd\xa3\xfa\x53\x6e\x9b\xa9\xe7\xde\xe0\xbb\x91\x76\x3a\xb3\x2a\xc3\x8e\xb2\x37\x98\x83\x5d\xef\xb3\xaf\xb2\x40\x2f\x86\x62\x53\xd3\x7b\x74\xcf\xcb\x94\x04\x71\x59\x6a\x8f\x4a\x95\x7d\xb9\x91\x31\xca\x14\x20\x2d\x88\x41\x29\x04\x16\xbb\xb5\xb5\xdd\xcd\x8d\x75\x67\xe3\x73\xfe\x5b\x7b\x95\x4c\xef\x18\xbd\x1a\x73\xc7\x1b\x00\xe7\x1d\x1d\xb0\x24\x4d\x46\xdc\x79\x95\xb0\x69\xa2\xa3\xdc\xad\xad\x7d\x43\x98\x34\x72\x17\x7b\xc0\xc4\x99\xa5\x04\x3a\x83\x64\x7a\x07\x9d\x49\x32\xa4\xa3\x3b\xe8\xe0\x78\xb8\x99\x30\x67\x48\x45\x8f\x5c\xce\xb8\x0e\xb5\x27\x50\xdd\x60\x26\x0f\xe5\x1c\x1c\xdf\xad\x4d\x67\x6c\x9a\xa4\x44\x79\x86\x4c\x98\xfc\x9b\xcc\xb8\x33\x22\xc4\xa1\xa9\x33\x26\x8c\x5c\xde\x39\x3a\x70\x41\x7d\x6d\xed\xec\xab\x43\xe7\xf4\xfd\x9b\xb3\x6f\x0f\x4e\x0e\x9d\xa3\x53\xe7\x9b\x93\xf7\xbf\x3b\x7a\x7d\xf8\xda\x71\x0f\x4e\x9d\xa3\x53\xd7\x39\x38\x7e\xed\x08\xa0\x83\x0f\x67\x5f\xbd\x3f\x71\x5e\x1f\x9d\xbe\x7a\x7b\x70\xf4\xee\xd4\x39\x78\xfb\xd6\xf9\xf6\xe0\xe4\xe4\xe0\xf8\xec\xe8\xf0\xd4\xf9\xf6\xe8\xec\xab\xb5\x93\xc3\x2f\x0f\x4e\x5e\x3b\x67\xef\x9d\xb3\xaf\x8e\x4e\x2d\xc4\xc7\xaf\xde\x7e\x78\x7d\x74\xfc\xa5\xcc\x75\xf4\xee\x9b\xb7\x47\x87\xaf\xed\xdc\xef\xdf\x38\xef\x0e\x4f\x5e\x7d\x75\x70\x7c\x76\xf0\xf2\xe8\xed\xd1\xd9\x1f\xd6\x44\xc1\x6f\x8e\xce\x8e\x0f\x4f\x4f\xeb\xce\xd1\xb1\x73\xfc\xde\x39\xfc\xdd\xe1\xf1\x99\x73\xfa\x95\x40\x62\xd5\xe9\xe5\xa1\xf3\xf6\xe8\xe0\xe5\xdb\x43\xe7\xcd\xfb\x13\xe7\xe0\xf8\x0f\xce\xe9\x37\x87\xaf\x8e\x0e\xde\x42\xe7\xf5\xd1\xc9\xe1\xab\x33\xb8\x76\x74\xac\x9f\x9c\xf7\x27\xce\xab\xf7\xc7\xa7\x87\xbf\xfd\x70\x78\x7c\x76\x74\xf0\xd6\x79\x7d\xf0\xee\xe0\x4b\x51\x05\x95\xd5\xbc\x7e\xfb\xd5\xc1\xd9\xe9\xfb\xc3\xdf\x1d\x9e\x38\x27\x87\xa7\x1f\xde\x9e\x89\xda\xbf\x39\x79\xff\x6e\xed\xed\xfb\x53\x59\xe1\x0f\xa7\x87\xd0\x79\x7d\x70\x76\x20\xb2\x7e\x73\xf2\xfe\xcd\xd1\xd9\x29\x74\xbe\xfd\xea\xf0\xec\xab\xc3\x13\x51\xe3\x83\x63\xe7\xe0\xd5\xd9\xd1\xfb\x63\x01\xfd\xea\xfd\xf1\xd9\xc9\x81\xa8\xc1\xf1\xe1\x97\x6f\x8f\xbe\x3c\x3c\x7e\x75\xe8\xbc\x3f\x59\x7b\x2f\xa1\xcf\xde\x9f\x9c\x1d\xbd\xff\x70\xaa\x33\x40\xe7\xe0\xe4\xe8\x54\x94\xf8\xfe\xc3\x99\xc8\xfd\x5e\x22\x7c\xf5\xfe\xf8\xf8\x50\x61\x14\xdd\x2d\xfb\xe0\xc3\xa9\x44\xf3\xcd\xe1\xc9\x9b\xf7\x27\xef\x0e\x24\xd6\x37\xc5\xee\xaf\xaf\x7d\x56\x92\x76\x36\x36\xd7\x16\x4d\x2c\xac\x58\xee\xd9\x49\x75\x4a\xf8\x37\x46\xae\x7a\x3f\x7a\x78\xb8\xbf\xb8\x90\x72\xd6\xc5\x45\xd8\xeb\xcf\x4d\x1c\xe5\x64\xe4\x48\x19\xac\x52\x29\x62\x13\x3b\x0f\x0d\x8e\xf8\xfc\xe1\xa1\xf8\xb5\xa0\xd7\xc2\x9f\x77\x3e\x21\xb8\x8a\x3c\x9f\x60\x7d\x19\x80\x1d\xcc\x81\xda\x4b\xac\x2d\x6a\xbd\xd0\x91\x97\x9f\x94\x67\x02\x31\xaf\x54\xc4\xd6\x69\x1d\x21\x3b\x66\xfc\xd9\xdd\x94\x68\x35\x48\x69\x52\x9b\xdd\xdb\xc8\xdd\x9b\xe3\x56\xb5\x9d\x30\x07\x55\x57\xcc\xc0\x58\x9a\xe6\x5a\x96\xd7\x62\x96\x0a\xbc\x2e\x58\x2b\x1c\x76\x48\xfd\x19\x3b\x24\x3e\x99\xab\xc6\x43\x92\x37\x14\xe9\x0b\x02\xde\x2d\xee\x3d\x39\x08\xed\x4b\x29\x64\xf5\x0d\x94\x87\xa4\x2a\x6a\x66\xb2\x7c\x27\xe2\x25\x66\xfc\x94\x8b\x5f\xbb\xe7\xf3\x7e\xe7\x90\xa1\x00\xc6\x4b\x22\xf7\x2e\xdb\x8b\xa5\x36\x90\x01\xa4\x72\x80\x72\x38\xd1\xef\xcf\x1c\x2d\xaa\x46\x8b\x8a\xd1\xa2\x7d\xdb\xef\x7d\xb9\x09\xe2\xdc\x3e\x7b\x29\x52\x09\xf2\x61\x8c\x8c\xb6\x12\xa4\xd9\xc5\x85\xa9\x2e\xa4\xd5\x2a\xd0\x45\xb1\x7e\x5e\x52\xa1\x53\x61\xe1\x6d\x0e\x1f\xb9\x3c\xe7\x75\xbc\x42\xb9\x77\x8f\x77\x6b\x41\x48\xf6\x79\x57\xfc\x22\xde\xf5\xc3\x63\x7c\x3c\x2f\x62\x5b\x5a\xfe\xf4\x4e\x6d\x21\xdc\x50\xb6\x09\x97\x43\x8c\x50\x5c\x8f\xe4\xad\x63\xb4\x10\x19\x67\x19\xce\x74\x5a\x0e\x98\x96\x03\xc6\x33\xb1\x70\xe7\x60\x51\x39\x98\x90\x3f\xe6\xf6\x19\x7f\x19\x10\xa7\x13\x52\x38\x8d\x2f\x03\x52\x1b\x83\xc2\xd1\x7c\x19\xd8\x34\x9a\x15\xda\x39\x5e\x01\x96\xcc\xe2\x61\x0e\x35\x5a\x51\x31\x7c\x95\xc3\x4c\x73\x98\x75\x6f\x9d\x3c\x3c\x98\x73\xa0\xfc\xd8\xe5\xe1\x41\x65\x96\xee\x75\x54\x0f\x59\x07\x95\x93\x4f\x44\x20\xfa\xee\x8c\x4e\x88\x85\xe2\x63\x8e\xe2\x5e\xc6\x50\xc9\x46\x36\x3b\x13\xca\x81\xaf\x6c\x02\x33\xe0\xaa\x56\x06\x1a\xa6\xfc\x2e\x22\x21\x9f\xcf\x1f\x95\xa3\xe2\x27\xe5\x28\x5b\xd2\x1a\x3f\x29\x69\x95\x3b\xfd\xc2\x16\x44\xb9\x7f\x91\xd4\x82\x18\x95\x42\x44\x16\x44\x52\x0a\x31\xb3\x20\x26\xa5\x10\x03\x0b\xe2\xba\x14\x62\x68\x41\x44\xa5\x10\x63\x0b\x22\x2e\x85\x18\x59\x10\xdf\x97\x42\x4c\x2d\x88\xab\x52\x88\xc9\x93\xd2\xeb\x47\x0b\xa2\xdc\x69\xdb\x95\x80\xb0\x39\x39\xe9\x11\x43\x54\xc8\xef\x23\x57\x3f\xbb\x50\x7c\x30\xfc\x01\x05\x7d\xe4\x9a\x17\xf5\x49\x51\x16\x6a\xf4\x91\xab\x1e\x55\xb2\xa0\x62\xd4\xec\x23\x77\xa8\x1c\xa4\xf5\x88\x9c\xef\xa8\xd5\x47\xae\x78\x50\x49\x6a\x76\xa3\x76\x1f\xb9\xea\x51\x25\xab\xd9\x8c\x3a\x7d\xe4\xaa\x47\x9d\x2c\x66\x2f\xda\x12\xa9\xe2\x49\x63\xc5\x57\x68\x5b\x20\xc5\x57\xee\xdc\x8b\x1f\x1e\xbc\x18\xdd\x97\x35\x4e\x57\xd4\x2f\xa9\xa8\x98\x6e\xb2\x69\xe6\xc5\x9d\x7b\xf4\xe1\xc1\xa3\x12\xd3\x1c\xc2\xc7\xb9\x31\xab\x33\x8f\x67\xfd\x7d\x49\x53\xd9\x90\x52\xd3\x6d\x9b\x84\x14\xe0\x89\xd8\x0b\xac\x80\x1e\x2c\x41\xbf\x25\xa3\x55\xc0\x97\x4b\xc0\xaf\x48\xcc\x45\x33\xcb\x8d\xc8\xed\xc9\x9d\x0e\x88\xf6\x23\x54\x36\xc9\x0b\xb0\x0a\x75\x52\x8e\x36\x29\x80\x4a\x2f\xd3\x4f\xce\x79\xb1\x01\x4a\x9f\x9c\x6f\x83\xd9\x24\x9d\x95\x4f\x5c\x7b\xd2\x0d\xc9\xa3\x4d\x19\x15\x40\x3f\x52\xbd\xb5\x7f\x62\x8e\x49\x09\xae\xbc\x21\xf6\x44\x3b\x18\x0e\x57\xf4\xf6\x95\xcd\xc0\x56\x35\xc3\x1e\xbf\xd1\x23\xcd\xbd\xb3\xf9\x03\x4b\x66\xd3\x52\xa8\x77\x8b\x50\xe5\x5d\x7c\x60\x33\x5f\x75\x85\x5d\x02\x75\xbd\x08\x45\xca\xb1\x9d\x58\x70\x2c\x89\xa2\x15\x75\xfb\x66\x09\xac\x1c\xdd\xab\xc5\x36\x9c\x26\xac\x7c\x18\xde\x16\x08\xb4\x7c\x44\x7f\xb0\xd7\x2a\x9a\xf2\xe4\x8a\xe1\xf2\x1e\xb6\x21\xf9\x98\x91\x74\x9c\x44\xc3\x37\x8c\x90\xe1\x04\xc7\xaf\x29\x1e\x24\x31\x2d\xaf\xf1\x17\x65\x39\x4f\x07\x09\x2f\xaf\xf6\x97\xa5\xe0\x7c\xc6\xae\x56\x74\xf0\xef\xec\x55\x0c\x97\x0f\xd6\x1f\x0a\x73\x70\x82\x6f\x8f\x56\x8e\xeb\xd7\x36\x20\xc1\xe5\xfd\xf6\xdb\x02\xd0\x90\xae\x00\xfb\x4d\x01\x8c\x5d\x95\x2f\xf6\xbf\xb7\xa1\x56\x0c\xd4\x1f\x8b\x0d\xa0\xf1\xea\x06\x10\x62\x2f\xb8\x74\x50\x5e\xe8\x57\x16\xd0\x14\x53\x56\xde\xb7\xdc\xc6\x35\x25\x6c\x32\x5b\xe1\xa5\xf4\xd8\x82\xfb\x61\x86\x63\x4e\xa3\x72\xc0\x6f\x0b\x0d\x31\xa0\x82\x88\x49\xf9\xa2\xfc\x6d\x81\x89\xff\x30\xa3\x83\x6b\xb3\x2c\x96\xf1\x70\x52\xc0\xcf\x70\xbc\xa2\xd3\x69\x11\x30\x22\x38\x2d\xc7\x98\x90\x45\xb0\xd5\x5d\x8f\x49\x61\x76\x8a\x2d\xd0\x0a\xac\x69\x19\xe4\x6a\xc4\x91\x0d\x9e\x0e\x56\x90\xdb\xac\x00\x35\x9e\x8d\x46\x2b\x06\x61\x50\x02\x58\xce\xa5\x87\x05\xc8\x55\x8b\x8d\x0d\xc4\xc5\x00\x95\x82\xbd\x2c\xf4\xb8\x80\x3b\x8a\x07\x8c\x4c\x56\xad\x23\x2f\x0b\x23\x2f\xe0\x4f\x39\x29\xe7\x9e\x2f\x0b\x62\x81\x34\xa8\x99\x4a\x5b\xd7\xb2\xf5\xce\xae\xed\x47\xcc\x28\x8e\x57\xcc\x11\x5b\xea\xfc\x91\x96\x97\x3c\xb1\xb1\x91\x8f\x84\xdd\x95\xaf\x89\x85\x7e\x4c\xca\xe3\x56\x3b\x57\x36\xd4\x88\x46\xab\x24\x95\x4b\x52\xe0\x66\xe5\x35\xbb\xb3\x81\x18\x19\xce\x56\xb4\xf2\xa2\x08\xf7\x91\xb0\x15\x1d\x77\x53\x6c\xc3\x8a\x65\xe7\xc8\x16\x27\xe8\x68\x44\x18\x59\xd5\xbf\x87\xa4\x00\x9b\x7e\x9f\xd0\x15\xa4\x70\x4b\x0a\xab\x6d\x7e\x9f\x53\x0a\x7d\x5a\x24\xda\x4b\x79\xda\x5f\x26\x0f\x14\xe1\xa6\x02\x6b\x39\xe4\x99\x0d\x39\x8b\x57\x15\x7c\x60\x83\x1d\x89\x6a\xc6\xef\x56\x8c\xce\xc5\x12\xe4\xe9\x8a\xb2\x6f\x8c\x8e\x54\x8c\x98\x17\x04\x00\x52\xf1\x17\xc0\x44\xfc\xd9\x06\x4b\x07\x3a\x11\xe1\x0e\x43\xfe\x1a\x1d\x79\x99\xe6\x1f\x97\x67\x4d\x52\xa1\xd0\x91\x4a\x11\xea\x90\x4e\x69\x12\x56\x63\xb0\x2f\x1e\xab\x55\x26\x95\x57\xb5\xe2\x61\x2d\x58\x33\x99\xa8\x9d\xc9\xa3\x88\x7b\x14\x56\xab\x31\x24\x00\x48\x95\xc2\x2a\x05\xfb\x88\x4a\x0c\x46\xf5\x87\x95\x1f\x9b\xf8\x0f\xe6\x58\xa9\xf4\xbc\x64\xdd\x23\xfb\x3e\x28\x3d\x25\x29\x3b\x21\x70\x15\x2a\x97\xc6\x0e\xe9\x92\x50\xdd\x53\x8f\x58\x32\xf1\xec\x93\x02\xfb\x14\x85\xa3\x7d\xe2\xd5\xeb\x75\x5e\xd0\x6c\xb4\xb4\xa6\x96\xd5\x8c\xb9\xd4\x98\x94\xb8\x3d\x02\x20\x43\xfe\x2e\xdb\x23\xca\x9c\xaf\xc7\xfa\x85\x63\xbb\x4c\xd7\xb5\x44\x89\x98\xf7\x78\x7e\xed\x2f\x15\xbe\xea\xd3\x64\xea\x01\x31\xa0\x1e\x47\xbc\x3e\xc1\x53\x6f\x06\x80\xfc\xab\x5c\x11\x64\xf0\x10\x5b\x95\x48\xaa\x01\xa8\x8f\x68\x14\x79\x3e\x80\x43\xed\x6d\x38\xd9\xf3\x1f\x1e\x68\x5d\xb0\x16\x2f\x02\x46\xe9\x66\x28\x87\x70\x77\x17\xdc\x0f\xb5\x1f\x3f\x89\x5d\xdb\x0d\x88\xea\xf7\x48\x5f\x2b\x8e\x12\x94\x28\xe8\x6a\x15\xf7\x48\x1f\x21\x44\x7b\xa4\xbf\x2b\x4f\x7a\xa5\xbf\xe2\x4c\x41\xab\x3b\x94\x58\x62\x10\x0e\xd7\x70\x8f\xd4\x6a\x7d\xe4\xcf\xe7\x85\x83\xa6\xdc\x01\x8c\x0f\x63\x94\x79\xe4\x79\x13\x25\x98\x77\x5a\xf6\x40\xc1\x9c\x48\xbb\x04\xed\xb3\x2a\xaa\x92\x87\x07\x3f\xa4\xea\x59\x90\x5a\x5c\xad\x42\x02\x1e\x1e\x7c\x75\x20\x3b\x2a\x3f\x36\xe4\x7b\xa4\x5b\x0b\x42\xbe\x4f\xba\xe2\x17\x11\x7d\x6c\xb8\x66\x1f\x5b\x65\x13\x44\xd4\x0a\x52\xe4\xc3\x64\xe5\x54\xc1\x36\xd5\x63\xa9\xab\x5d\xc5\x60\x5f\x3e\x32\x84\x6b\x14\xd2\x2a\x62\x9b\x62\x22\x24\x55\xc4\x36\x3c\x5c\xa3\x00\xe4\x53\x08\xdb\x53\x28\x2d\x4c\xa1\x14\x71\x2f\x85\xd5\x2a\xd6\x53\x28\x45\xd5\x14\xec\xa3\x54\x62\x4e\x97\x31\xa7\x02\xf3\x9c\x8e\xbc\x78\x3f\x30\xc3\x90\x6c\x7a\x71\x2d\x28\x1e\xaa\x89\xe6\x29\x12\x64\x48\xb5\x36\x53\x60\xea\xbe\xc3\x7c\x5c\x4f\x7f\x60\xdc\x63\x20\x64\xb2\x27\x3f\x2e\xf4\xa4\xee\x99\x92\xfe\xd0\xfa\xd9\x76\x23\x68\xa5\x92\x43\xb1\x2e\x95\x1c\xc0\x63\x28\x46\x14\x84\x1e\xdb\x57\x6f\x14\xc0\x78\x8f\x4a\x3e\x43\x81\xdd\x3b\xd4\xee\x9d\xa4\xd0\x3b\x09\xe2\x5e\x02\xab\x55\xaa\x7b\xc7\x2a\x25\xd9\x47\x89\x2e\x25\x91\xa5\xa8\xb7\x44\x94\x92\xc8\x52\x12\x90\xe9\x1f\xf6\x18\x8c\xfb\x46\x1d\xfe\x6a\xc1\x93\xab\xf2\xd6\x37\xc5\x8c\x53\x1c\xa9\xf8\x81\x36\x75\x7a\xcd\x86\xb6\xd5\xbe\x88\x91\x6f\xac\x44\x54\x37\x68\x0f\xe6\x59\xe6\x35\xc3\x72\x33\x26\x8b\xfc\xdd\x78\x4f\xe7\xae\x54\xe2\xbd\x66\x63\x37\xae\x56\x4d\x7e\x8a\x78\x2f\xee\xc3\x04\x91\x2a\x85\x18\xc9\x81\xc1\x97\x82\x4d\xee\x65\xcf\x14\x74\x49\xcd\x4b\x6a\x14\x84\x54\xfc\x25\x60\x0d\x2b\x33\xe4\x6a\xb5\x8f\x30\x80\x04\x25\x99\xab\x2c\x69\x9b\x9c\xd5\x96\x55\x03\xf9\xac\x6c\xb1\xde\x8f\x3c\x53\x2e\x29\xab\xb7\x8e\x25\xa1\x3f\xc5\x66\x3e\xd0\x7d\x5f\x71\xc5\x04\x91\x5e\xad\x46\xfb\xbb\x74\xdf\x17\x15\x40\x09\x64\x3a\x49\xb0\xa8\xaa\x98\x49\x4c\xd4\x90\x03\xb8\x1e\x83\x5d\xa0\x01\xe3\x3d\xbf\x52\x21\x3d\x5a\x0b\xfa\x82\x35\xc5\xfb\xd9\xeb\xbe\x0f\xe4\xa0\x35\x36\x62\xc8\x51\x52\x65\x90\x21\xc4\x6b\x62\xf8\x12\xc4\x73\xed\xd1\xc4\x62\x29\x97\x45\xda\x16\xa3\x75\xf5\xf8\x0a\xa7\x16\xb6\x4a\x45\xd9\xed\xc4\xe0\xf1\xa5\x4d\x2c\x62\x85\x55\x4d\x65\xa3\xa6\x32\x55\x6b\x3d\xbb\x2b\xab\x4b\x86\xf8\xf9\x9c\x4e\x96\x20\x99\x1d\x90\xdc\x4e\xbd\xe7\xb5\x10\x1f\x8c\xa9\xd3\x45\xc1\x70\xda\xa6\x64\xa2\xa6\x2d\x5f\x5a\xb8\xf6\x83\x4a\x25\xb3\x6e\xc8\x17\xa9\xa0\xdf\xb5\x5f\xc2\x53\xe9\x01\x5e\xf9\xa9\x2e\x55\xbf\xa4\x24\x55\xb7\x48\xf7\x17\x52\xf2\x8a\x43\xad\x3a\xaa\x2d\x10\xe6\xf0\xe2\x9a\xdc\x99\x44\xa9\x36\xae\xe6\x31\xc9\x39\x87\x9c\x89\xb2\xa3\xb3\x68\x11\x0c\xc6\xd2\x6e\xcf\x5a\x9c\x73\x5b\xd4\x43\x63\x46\xb5\x60\x93\xea\xe4\xa6\x5b\x16\x88\x32\x80\xe0\x0b\x40\x22\xf5\x36\x33\xc7\xe2\xcb\x86\x5b\x4e\xc1\x44\xeb\x7d\x8e\x4f\xf7\xf9\x4d\xc1\x02\xf3\xaf\xae\xcf\x1d\xe6\xe4\x3d\x2e\x48\x8b\x3d\xab\x33\x0b\xf6\x70\x4e\x6e\xf9\x76\x9b\x83\x3c\xbf\x23\xb3\x39\x73\x98\x2d\x30\x59\x8b\x98\x6a\x43\x3c\x47\x24\x33\xff\x89\x2d\xb3\x15\x55\x33\x0a\xba\x8a\x24\x28\x08\xad\x2b\xaf\xdb\xcf\x81\xcf\x53\x44\x42\xa5\xc6\xad\xb5\x90\xbe\xff\xe9\xc8\x25\x87\x64\xda\x00\x07\x66\x7d\x42\x01\x80\x56\xed\x4f\xad\xbe\xd3\xd7\xe5\xa4\x4c\x99\xba\x4b\xea\x19\x0f\x0f\x95\x32\xfd\x59\x99\x62\x27\xb1\x84\x9c\x77\x85\x2b\xe8\x65\x71\x96\x59\x92\x24\xdf\x0f\xba\xbc\x16\x84\x3e\x80\x31\x0a\xc4\x92\x25\x97\x29\xd6\x8b\x6b\x81\x2d\xd8\xc6\xd9\x75\xef\x6b\x8f\xc0\x33\x78\x06\xed\xcb\xbc\x83\x5f\xbc\xc4\x9c\x8b\x2e\x14\xfd\xcd\xe2\x1d\xf6\x52\xe1\xb1\x55\x38\xdb\x6f\x74\x59\xad\x21\x0a\xa7\xa8\xb1\x4b\xf7\xd8\x2e\xad\x56\x41\xdc\xa3\xb5\x86\x5d\x38\x5d\x68\xae\x74\xe9\x98\x95\xf9\xea\x2f\x50\xa6\xd5\xe0\x62\xe1\xd7\x7f\x81\xd1\xfd\xbe\xd0\xc5\x27\x7f\xc9\xd1\x2d\x16\xfd\xbd\x28\x9a\x8e\xbc\x40\xcc\x8f\x95\xa1\x51\x86\x33\xe5\x1f\x92\x38\xd7\x76\x98\x6c\xd2\xf3\xfb\x39\xaa\xd7\xb9\x3d\xa9\x39\x06\x32\x9f\x88\x72\x94\x2f\xf6\x50\xfb\xc8\x68\x66\x1b\x21\x9b\x79\xd4\x18\xeb\xa9\x2d\xd8\x05\x4c\x51\xdc\x4b\xaa\xd5\xbe\x5c\xf2\x23\x23\x4b\x68\xc9\x50\xb0\x5c\x9a\xcb\x5b\xa9\xc7\x61\xb5\x1a\x41\x2a\xf6\x8d\xd8\x58\xf2\xb1\x6e\x16\xf5\x25\xc4\xda\x7c\xaf\xc7\xfb\xd2\x00\x5e\xaf\x97\x1c\x32\xb1\x5e\x62\x80\xb5\x9d\x1e\xf1\x18\x4c\x72\x7b\x04\xee\x61\x30\xf7\x08\xd4\x5b\xa2\xe3\xf2\x2d\x91\x25\x7d\x70\x28\xb6\xbe\xb2\x94\x9c\x57\x1c\xfd\x32\x63\x5b\xae\x1a\xb4\x6c\x28\x5e\xae\x21\xa4\xdc\x01\x18\x35\x20\x09\x7c\x19\x11\x17\xac\x11\x54\xd8\xe0\x8b\xfe\xef\x25\x88\xd6\x71\x1f\x31\x51\x66\x20\x43\x68\xab\xaa\x3f\x3c\xb0\x6c\x49\xce\xc5\xf6\x0f\x34\xe6\xcd\x46\x41\x26\x93\xfd\x85\xf6\x6d\x4e\x6e\xf2\x75\x3d\x86\x98\xdc\xe9\x8a\xae\x53\x0f\x40\xfa\xcf\x4c\x18\xf7\x74\xc6\xfb\x7c\xf0\xa5\xe0\xc9\x72\xc1\x50\x2d\xec\x1e\xad\x63\xe0\xc5\x3d\xd2\x87\xd2\xca\x69\x4d\xba\x87\xcb\x4e\x49\xe6\x00\x84\x42\xc6\x96\xe8\x93\x45\xec\x36\x8a\x44\xa0\x48\x04\x0a\x00\xe0\xb1\xd2\xca\x32\xb4\xae\x32\x25\xd6\xdc\x79\x9b\x99\x3a\x48\x10\xd9\x39\xe6\x3c\xa1\x7b\xe4\x7d\xa3\x3f\x9b\xf6\x8b\xc5\x4e\x0a\x69\x88\xc0\x5e\x02\x71\x1f\x65\x71\x26\x0a\xcd\x80\x38\x33\x87\x52\x29\x82\x2a\xe7\x20\x3c\xf2\xde\xc9\x43\x05\xa8\x8f\x16\x24\xbe\x18\x26\x12\x1f\x86\xa9\x18\xa2\x8c\x74\x13\x98\x2e\x60\x11\x78\xe7\xfa\xe8\x83\xe8\xdc\xbc\x8f\x48\x96\x67\xae\xe8\xfc\x0d\x5a\xb0\x45\x80\x3f\xa2\x37\xca\x1e\x01\x7e\x40\xde\x1b\x81\x00\x96\x2c\x90\x25\xb7\x24\x42\x66\x7a\x89\x98\xd7\xb1\x4e\xd0\xbe\x32\x9d\x26\xa5\xf9\xec\xec\xc4\x2c\xf8\xba\xc6\x2f\xeb\x97\x40\x03\xca\x9d\x12\x42\x28\x7e\x78\x90\x06\xb6\x0f\x0f\xeb\x34\x7d\x43\x63\xaa\xd6\x7c\xbd\x0d\x25\x90\xf7\xd7\xe8\xbe\xdf\xf5\x88\xda\xec\x8d\xa2\x44\x48\x91\x9b\x14\x6c\x50\xc8\x55\xda\x80\xd0\xc8\xe3\x32\x09\x84\x54\x6c\x9e\x0c\xb4\xfc\x42\x36\x28\xd8\xcc\x80\x15\x02\x2e\xd3\xc4\x7c\xa4\x73\xd9\x3d\xbf\x2b\x13\x0e\x72\x1c\xf2\x29\x4a\xae\x3c\x69\xd1\xb5\x29\x5f\xdf\x1e\x37\x40\x35\x98\xc3\x1f\x16\xc3\xdf\x13\x74\x06\x39\xfa\x08\x19\xfa\x9d\xad\xfb\x47\xc1\xbd\x1a\x02\x9a\x2a\xbe\x40\x81\x54\x0a\xb0\x26\x15\xd5\xe7\x95\x89\xb4\xcd\xa4\x86\x99\x44\x16\x33\x49\x95\x59\x50\x82\xfc\xdd\x64\x2f\xdd\xad\x56\x13\x10\xf5\x04\xb1\x78\xb4\x97\xf4\x61\x02\xa9\x42\x31\x43\xdc\x8b\x00\x1c\xa0\x59\xcf\xef\xc3\x21\x9a\xf5\x82\x3e\x1c\x23\xe6\x45\x70\x00\x87\xca\xe9\x62\xb1\x3a\x63\x90\x73\xdf\x21\x64\xa8\x3a\x16\x40\x1c\x21\xf4\xb1\x52\xf1\x7a\x03\x38\xec\xa3\xaf\xbc\x01\x1c\x2a\x0f\x19\xe3\x7c\x50\x31\x30\xc9\xbd\x71\x7e\x50\xb7\x8f\x86\xd2\x03\xf6\x3e\x1a\x56\x2a\x12\x4d\x8e\xdf\xa6\x07\x95\x75\x2d\x1b\x7d\x22\x15\xf3\xf6\xfd\xee\x10\x79\xd6\x90\x0d\x37\x09\xa8\x06\x60\x83\x84\x44\x0e\xb1\xf9\x2a\xc7\x67\xb8\x51\x93\x5f\x37\x6b\x42\x78\x96\x7e\x04\xc6\xea\x8c\x70\x6e\x98\xf4\x08\x65\x36\xa2\xe3\x9e\xdf\xdf\x43\x03\xcb\x56\x14\xd6\x6a\x23\x45\xb4\xe3\xde\x48\xd4\x7d\x28\x3e\x4a\x04\xf2\x93\x40\x30\x85\x13\x6b\x1c\x46\xd5\xc0\x1e\x09\x34\x92\x43\xe1\x4d\xd1\x44\x8c\x46\xaf\x0f\xea\xb7\x3e\x4a\xf6\xfd\xee\xb8\x97\xd4\x82\x7e\x38\x80\xd3\xfa\x6d\x80\x92\xbd\x91\x48\xe9\x87\xc3\xa5\x61\x1c\xec\x21\x0f\x23\x31\x98\xa0\x52\xc1\x7b\xa2\xd7\x26\x3d\xdd\x51\x71\x7d\x08\xbc\x31\xc4\xd0\x87\x23\xd0\x37\x06\xb5\x49\xae\xb6\x38\x99\x67\xea\x15\x72\x15\xc8\x69\x32\x5f\xd3\x96\x0c\x98\x3c\x52\x7a\xda\xda\xe5\xe1\x07\x21\x83\x53\x21\x39\x43\x5a\x1f\x26\x13\x4c\xe3\xb2\x09\xb2\x8c\x91\x97\x61\x24\x5d\x12\x7e\xf0\x7a\x42\xae\x80\xa4\x17\xf4\xfb\x12\x37\x17\xb8\xb3\x7b\xea\xf4\x79\xf8\xd9\x2a\xfc\x45\x5a\x26\xa0\xfb\xc1\xfb\x51\x1b\xf4\x01\x10\x7e\xf0\x88\x2c\x93\xcd\x21\x9d\xc3\x6f\x11\xf3\x02\x1f\xc0\x2f\x96\x0c\x57\x97\x26\xbe\xc7\x6a\x1c\x6c\x7a\x8d\x0d\x4f\x8f\xc4\xb7\x82\xda\x09\xac\x6f\xb5\x41\x6d\x21\xa9\xd1\x06\x60\x43\x66\x9d\x26\x37\x92\x53\xc0\x5a\xb0\xd9\x94\xf1\x14\xbe\x7c\x76\x51\xcd\x7a\x7b\x43\x2c\xd2\xab\x30\xfd\x41\x54\x7e\xc7\x62\xbd\x5f\x17\xcf\x66\x6b\x01\x94\x07\x84\xab\x4e\x22\xf5\x81\x61\xb5\x4a\xf5\xc6\x57\x9e\x03\xee\x25\x0f\x0f\xf9\x61\x61\xa5\x92\xec\xa3\x44\x9d\x35\x25\x82\x49\x5a\xbe\x39\x9e\x3e\x74\x7c\x1a\x99\xd9\xc0\xe5\x8b\xee\x6f\x0b\x37\x30\xf2\xe0\xbb\xfc\x8c\x6a\xe9\x20\x35\xbf\x43\xf1\xaa\x55\x06\xe3\xaa\xa9\xed\xa7\x9e\x95\x26\xa8\x9a\x00\x75\x48\xaa\x11\x25\xf2\xe0\x38\x13\x39\xe2\x4d\x75\xf6\xfb\x9b\xc7\xac\x4b\x33\x6a\x68\x17\x75\xbf\x7f\x6f\x91\xb5\xc5\xf1\xcd\xf7\x0d\x23\x4f\x5a\xd2\x30\x01\x77\x94\x44\xc3\x0d\x3e\x17\x34\x2c\x8b\xfe\xa3\x18\xfc\x86\x35\xf8\x84\x7c\x8e\xd1\xdf\xff\x9c\xa3\xff\x24\xb2\xe5\xd1\x57\x47\x22\x3f\xeb\x60\x88\x99\xd3\x05\x19\x44\x52\x4a\x21\x90\xa2\x75\x7b\x8b\xa1\xeb\x4d\xf3\xd0\x91\x5e\x2c\x76\x06\x30\x46\x89\x80\xf5\xd7\x96\x6f\xe0\x18\xb1\xc7\x58\xca\x23\xca\x32\x9f\x20\xe6\x35\x3a\x00\x52\xf1\xd0\xdc\xb2\x86\x24\xc9\x1b\x03\x97\xb7\xb8\xcf\x6c\x0e\xad\x63\x18\x8b\xea\x6b\xe9\x3c\x8b\x6f\x29\x11\x27\x56\xab\xf4\x5d\x4b\xb6\xb4\x32\x0f\x83\x5d\x2f\xee\xda\x42\x22\x81\x09\xd8\xf3\x43\x31\x20\xc5\x64\x35\x64\x1c\x61\x98\x20\x22\x7d\x1a\x80\xf9\x3c\x1b\xec\xc2\xd5\x85\x17\x77\x99\x3c\xf0\xd1\x88\xc4\x0b\xd5\xd9\xa9\xca\x9a\xcb\x9c\xf9\xcd\xea\x67\xea\x8c\xa5\x7e\xc8\x54\x76\xa4\xd8\x9c\x1d\x22\xc3\xa4\xb8\xad\xa4\x86\xde\x13\xe8\xc5\x7b\x7e\x37\xaf\x79\x68\x5a\x93\x37\x21\x29\xa3\xcd\xf4\xef\xe7\x70\xee\x7f\xae\xe1\xdc\xff\x94\xe1\x8c\x7e\xe1\xe1\xfc\xfa\x67\x8e\xe6\xfe\x53\xa3\x39\x23\xc5\x2b\x08\x4c\x8a\x77\x7d\x7b\x7e\x57\xb5\x40\xdf\xf3\x0d\x08\x1a\x12\x25\x68\xaa\x10\xcd\xd6\x44\x1f\x92\xb2\x7d\x52\xb6\x8a\xfd\xc4\xde\xf1\x4b\xec\x5e\xf6\x1b\xa5\x59\x1b\x76\xd6\x46\x3f\xb4\x4c\x50\xe2\x9a\xc7\x50\x95\x29\x11\x75\x97\x66\x5b\xb1\x18\x11\x0f\x6c\xd0\x5a\xed\xc1\x87\x09\xe2\x3d\x5a\x65\xfd\x35\xf5\x07\xf1\x5e\x5c\x65\x7d\xa8\xfe\x58\x77\x64\xf6\xfd\x34\xf9\x04\x4d\x09\x73\x8f\xe4\xb1\x2a\xfa\xe4\x5b\x24\x91\x29\xbb\x43\x72\xd4\x60\x8c\x48\x41\x48\x14\x5b\x18\x2f\xb7\xb6\xc9\x36\x8d\x79\x1c\x1e\x2e\x68\x28\x3b\x4e\xf8\xa3\x9a\x24\x53\x02\x8a\xe7\x8c\x60\xb7\x5a\xe5\x7b\x6c\x37\xb7\x2a\x92\x74\x07\xb1\xf2\x9e\x92\x43\x52\x01\x99\xec\xd1\x5d\x80\xe5\x96\xab\x97\xf4\x7b\xbc\x9f\x53\x99\x75\x5f\x4e\x0a\xb6\x20\x5a\x6f\x43\xe0\x9e\x90\x12\x47\x71\x23\xe2\x95\x1a\x1a\x7d\x24\x8f\x5a\x8c\x95\x9f\x02\x71\x92\xf2\xdc\x14\x2c\xcb\x06\xf4\x5d\x6b\x61\x42\xe9\x91\x12\x3d\x29\x16\x43\x21\xf7\x10\xd3\x8f\xeb\xe6\x46\x6e\xdd\xb7\xcc\x41\xfe\x72\x35\x5a\xae\x90\x59\xa0\xd7\x03\xeb\x7a\xf3\xb3\x56\x68\x51\x84\x28\x65\x3f\x39\x9d\x66\x92\x04\x05\x25\xb2\xc3\xdd\xa3\x55\xfb\xd9\x87\x7a\x9f\xd4\xe2\x09\x9e\x4e\x55\xb4\xeb\xa5\x36\x2f\x0b\xa5\x04\xca\x3b\x46\xb4\x2f\xef\x1a\xe5\x7d\x54\xd6\xa8\x8b\x2c\x0e\xd6\x27\x95\xaf\xb4\xe8\xca\x2b\x90\x71\xa6\xa5\x1e\xf1\xb4\x63\x36\x98\x40\xac\xa5\xda\x45\xd6\xb8\xd7\x94\x35\xf1\xee\x87\x49\x4c\x42\xaa\x6d\x92\xd8\x1c\xc5\xf5\x98\xdc\x72\xa9\x24\xa4\xe9\x67\xb7\x5a\xc5\xf2\x38\x60\x77\x01\x3a\xb1\xa1\xd7\xe9\x2e\x60\x48\xb4\x3c\xd1\x6a\x26\x25\x43\x7b\x43\x34\x03\xfa\x25\x06\xb6\x64\x40\x40\x5d\xab\x17\xda\x3e\xab\x0e\x65\x25\x88\x64\x50\xa7\xea\x7c\xfc\xf3\x9f\x48\x2f\x50\x3f\x03\x4b\x47\xf6\xc4\x5c\xd5\x71\xcb\x88\x32\xbf\x6e\x5c\x58\x70\x79\xc9\x20\x6b\x76\x7c\x4a\xf8\xf2\x64\x93\x3e\xae\xf4\x15\x61\xce\x98\xa4\xd6\x15\x54\xe0\xbb\xde\xbd\x31\x44\x93\xa3\xca\xe7\x88\x99\xd1\xac\x54\xd6\xb9\xd2\xc3\xd2\x77\xc5\x34\x95\xc1\x62\x72\x4c\xb1\x71\x4e\x3a\x5f\x66\x76\xef\x0b\x5c\xdc\xb1\x6c\x8a\x4f\x09\xef\xaa\x2b\x65\xd5\xf1\xd6\x05\x25\xf9\x65\x6e\x06\xec\x61\x86\xe6\x74\xfd\x3d\x01\x6b\x24\x5c\xea\xb3\x85\x21\x62\x8a\xbf\x9b\x4e\xbc\x27\xf9\xdd\xaa\x98\x7b\x9c\xc6\x33\xe2\x90\xf9\xf2\xd8\x9d\x2d\x8c\x5d\xd9\x04\x5d\x3d\x76\xbc\x38\x76\xa6\xa4\x67\x8f\x9d\x1a\x37\x9e\x0f\x95\xc4\xa6\x46\x0b\x2e\x0c\xa7\x0c\x8f\x57\x36\x84\xef\x0a\xfb\x37\xd1\x22\x0e\xed\xe1\x3a\x20\x96\x8e\x8f\xdd\x90\xe7\x8c\x9e\x68\xbc\x6f\x8f\xda\x4f\x98\x3b\xa2\x3d\xf6\xc4\x79\xc2\x54\xf7\x51\x0b\x4b\xfc\xa4\x25\x5f\x9a\x6b\xc4\xe6\x4a\x6d\x6d\x79\xc3\x9a\xbf\x07\x3e\x80\x89\xf5\xde\x58\xd4\x94\x35\xde\x9d\x30\xf2\x78\x8d\xe8\xe3\xf0\x09\xbe\xf5\x7c\xc8\x00\x4c\xed\x83\xf6\xfc\xe0\x3c\x3b\x35\x17\xe8\x23\x84\x37\xb3\xf3\xad\xc0\x87\x79\x84\xd7\x74\x1f\xf9\x5d\x2f\xda\x47\x71\x37\xf0\xc3\x68\x1f\xd1\x6e\x5b\xfc\x49\xba\x8d\x30\xb0\x0e\xc5\x64\xa6\xb0\x66\xbf\xd7\x52\xb0\xb9\x32\x67\x41\xa9\xd6\x6e\x42\xa6\x37\xb6\xba\x29\x1a\xff\x93\xcd\x52\xed\x4a\x4d\x53\x64\x55\xd2\x0d\x64\x6a\x93\x6e\x20\x55\xa1\x4a\xc5\x4b\x37\x50\x03\x40\xa9\x78\x99\x86\xe9\x7c\xd1\xa2\xbb\xe0\x3f\x0b\xa6\x30\xd2\xab\x9f\x90\xe9\xa1\x47\x50\x95\x00\x84\x3c\x8e\xaa\x5c\xc8\x20\xfb\x7e\x76\x5f\x22\xaf\x10\xbd\x18\xf1\x3d\xa2\x14\x8c\x09\x24\x88\x43\x8e\x28\x80\x42\x48\xf7\x52\x64\x86\x10\xd8\x57\x2e\xa9\x25\x3d\xd3\x91\x97\xee\xfb\x92\x58\x0b\xf7\x28\x9b\x29\x58\xb8\x45\xd9\x94\xca\xb6\x96\x80\x6c\x5f\xc8\xd4\x48\x35\x00\x42\x62\x8e\x84\xc4\x9c\xf4\xa2\x3e\xf2\x48\x35\x02\x1b\x69\x7e\x9c\x94\xa2\x5a\x0a\x8b\x97\x35\x4b\x85\x6c\xfc\x94\x42\xf2\x51\x88\x2b\x95\x24\x5f\x3d\x61\xf2\xd4\x0c\xcb\xe8\xa4\x10\x8c\xb1\xe8\xff\xc0\x72\x91\x90\xaf\xb9\xb1\x72\x16\x21\xd9\x00\xb7\x2e\xea\xd9\x33\xcc\xa2\xcb\xc6\x9f\x94\x3b\x58\x40\x0c\xb2\x05\xc7\x0d\xcf\xe3\x19\xe5\x1c\xc1\xb6\xa8\x7e\x9a\xab\x94\xdb\x6d\xa7\x05\x3d\xfb\x16\x58\xf2\x78\xb1\xb8\x47\xce\x8f\xbf\x49\x95\x6d\xd8\x1b\xcc\xc4\xee\x74\x5e\x23\xb9\x12\xae\x40\xc5\xf6\x83\x6d\xff\xe1\x81\xed\xd5\x82\x6d\xbf\xcb\x6a\xcd\x8e\xaf\x38\x02\x4b\x66\xf1\xd0\x63\x9b\xcd\x8e\x0f\x42\x06\xc2\xec\xda\x04\x03\x8f\xa6\xc7\xf8\xd8\x23\xa0\xcb\x43\x9b\xf3\xe3\xa2\x7b\x37\x35\xa9\xba\x69\xee\xc6\xce\x3e\xa5\x67\x35\xde\x5d\x71\x80\x4f\x72\x1e\x21\xaf\x71\x79\xfe\x2e\xc0\x6a\x04\x32\x14\x6c\xb2\x7c\x88\xe2\xe2\xd9\xbf\xcc\x58\x8d\x37\x04\xf0\x7c\x2e\x7d\x51\x93\xb2\x06\x70\xd0\x65\x21\xb7\x35\xc3\xd2\xc7\xfb\xea\xb1\x5e\x78\x1e\xc5\x3c\x6d\xa5\x5f\x6e\x78\xf6\x3c\x7f\x48\x8f\xdb\xf1\x5f\x3c\x69\xb7\x7e\xfb\xa4\x1d\xff\xfb\x27\x69\xfb\xd4\xa6\xdc\xad\x02\xe1\x82\x7b\xed\xc3\xa4\xbe\x05\x31\x0a\x36\x13\x98\x22\xf7\xfc\x3c\xdd\xf0\x7a\xd5\x5a\xbf\x7b\x7e\x3e\xac\x02\xf1\xea\xc2\x68\x21\x7d\xe3\xfc\xbc\x2e\xbf\x7b\xdd\xb0\x47\x0e\xfb\x39\x7c\x57\xe7\x98\x7d\x42\x8e\x5f\xab\x2c\x03\xb4\xf9\xdd\xaf\xbc\x9e\x5f\xdb\xc1\xb5\x51\xff\xbe\x09\xb7\xe7\xe0\x8b\x4d\x38\x94\x8c\xf1\x84\x5c\x1d\xde\x4e\x3d\xf7\x3b\x76\x75\x79\x7e\xee\xb9\xd5\x5e\x0a\x53\x98\xf6\xab\xee\xf9\x39\xf8\xc2\x05\x70\xbc\x02\x6c\x06\x67\x70\x96\x83\x8d\x96\xc0\xb0\x85\x0e\x46\x39\xe4\x74\x15\xa4\xc4\x68\x43\x4e\x8a\x90\xe3\x34\x52\x80\x51\xb1\xe8\x8f\x4b\x60\xd8\x82\xb3\x11\x5e\xa1\x7b\x1c\xd1\x01\xb9\x14\x72\x63\xd0\xde\xda\x69\x34\xb7\x9b\x10\xc7\x9c\xfe\x30\x23\x37\x63\xca\x49\x18\x74\x5a\xad\x56\x73\xab\x0d\xf1\x0f\x33\x1c\x76\xda\xed\xa6\x7a\x9c\x60\x46\x63\x12\x6e\x37\xb7\xb7\xdb\x9d\x16\xc4\x3f\xce\x98\x42\xd1\x0a\xb6\xda\xf0\x92\xd0\x2b\x91\x37\x08\x76\x1a\x1d\x1f\x5e\xd2\xf4\x07\x51\x42\x67\x6b\xcb\x6f\xb4\x5a\xf0\x32\xc2\x83\xeb\xd0\x17\x7f\xe3\xc1\x98\x0c\x71\x34\x49\xe2\xa1\xfc\xde\xf0\x5b\x6d\x28\xeb\xd3\x68\xab\x87\x8f\x34\x89\x08\x0f\x77\xfc\x76\xbb\xe1\x37\xe0\x25\x4b\x6e\xe2\x30\xf0\xb7\x1b\xad\x46\xb3\x05\x2f\x67\x2c\xba\xbb\x49\x92\x61\x18\xb4\xda\x3b\x9d\x46\x33\x80\x03\x3c\x24\x5c\xa2\xe8\x34\x3a\x9d\x76\x63\x1b\x0e\xc6\x98\x71\x46\x66\xa9\xaa\x70\xb3\xdd\x80\x83\x71\x32\x48\x22\x2c\x5a\xd8\xdc\xda\xde\x69\x6d\xf9\x70\x90\x30\x1c\x89\x4a\xb4\x5a\x8d\xad\x86\x78\x8d\x47\x51\x72\x43\x98\xc2\xd5\xde\x09\x76\xb6\x03\x99\x9c\xd2\xe8\x5a\xd6\xb6\xdd\xdc\xde\x86\x03\x46\x27\x69\x12\x87\x41\xab\xd5\x68\x06\xbe\x0f\x07\x77\x38\xd6\x5d\x35\xc4\xec\x5a\xf5\x6e\x73\x47\xbe\xc8\x6f\xcd\xf6\x56\xa3\x29\x5f\xaf\x92\x68\x48\x62\x26\xaa\xdf\xf0\x77\x1a\x3b\x1a\xea\x8a\xe1\xbb\x30\x08\x82\x60\xc7\x0f\xb6\x74\x0a\x21\x71\xd8\x68\x77\x7c\xdf\xbc\x2f\x40\x5c\x8f\xf1\x35\x0d\x83\x46\xab\xd9\x6c\xb4\x15\x9a\x09\xbe\x22\x31\xc7\xe1\x4e\xe0\xef\x74\x5a\xaa\xc4\x24\xa2\x1f\x89\xc2\xd6\x6e\xef\x6c\xed\xec\x28\xd0\x44\x5a\xa9\xca\xd6\x6f\xb5\x1b\xbe\x4e\x1b\x8c\xe9\x30\x0c\x7c\xbf\xe5\xfb\x41\x43\xa6\x31\x32\x94\xe8\xda\x7e\x4b\xbe\xa7\x72\xec\xc2\xa0\xdd\xf4\xb7\x5b\x81\xca\x97\x12\xac\x0a\xd8\x69\x05\x3b\x3b\x81\x2a\x20\x15\x9d\x2d\xbb\xa2\xb5\xd5\x6c\x35\x5b\x5b\x79\xaa\x6c\xad\xe8\xb9\xd6\x4e\xdb\x4e\x25\xc5\x54\x3e\x63\x3f\xcc\x12\x9a\x92\xb0\xdd\xd8\x69\xa9\x34\x43\x1c\x9d\x9d\x9d\xb6\xe8\x3b\x42\xa6\x53\x1a\xcb\xc1\x09\x3a\x3b\xa2\x10\x42\xa6\xe9\xf5\x9d\x2a\x78\x27\x68\x07\x70\x48\x27\xb2\xc0\xce\x8e\xbf\xdd\xe8\xb4\xd5\x3b\xb1\xde\x93\xe1\x95\x1e\xf3\x86\xef\x37\x83\x9d\x1d\x38\xa2\x8c\x5c\x32\x3a\xb8\x0e\x03\xd1\x41\x41\xab\x03\x47\x91\xa0\x16\x33\x47\xb6\xb6\xda\x3b\x0d\x1f\x8e\x12\x46\x52\xae\x87\xaa\xd1\x69\x6e\xb7\x1a\x70\x34\x1b\x8c\x53\x8a\x65\x8d\x82\x9d\x66\x1b\x5e\x61\x1a\xa7\x97\x09\x4b\x04\xc1\x6c\xb5\x5a\x1d\x1f\x5e\x8d\x93\x94\x1b\x5c\xcd\xa0\xd3\xd9\x0a\xa0\xa0\x0c\x91\xa9\xd3\xd9\x6a\xf8\xd0\xa2\x93\x56\xb3\xb1\x13\x88\x24\xd1\x88\xed\x56\x23\x10\x43\xa1\xca\x6c\x36\xb6\x3a\xdb\xea\xf9\x8e\x44\x51\x72\x13\x06\x41\xcb\x6f\xfa\xed\x36\x94\x4d\x34\xd0\xe3\x24\x26\x77\x43\x72\xa3\x27\x6c\xc7\x87\xe3\x84\x9b\x7e\x6b\x6e\x6f\xb5\x7c\x48\xe3\x21\xc5\xb1\x18\xed\xa0\xd9\x6a\x6f\xb7\x1b\x2d\x99\x74\x95\xc8\x5e\x6c\x36\x7d\x48\x3f\x26\xec\x4e\xb6\x7d\xab\xe1\xfb\x50\x93\x5f\x7b\x6b\x7b\xab\xd3\xf1\x61\x84\x3f\x92\x78\x48\x58\x18\xb4\x83\x66\x43\x50\x86\x49\xb9\x8c\x66\xe9\x58\xe6\x6b\x36\x3b\x6d\x18\xe1\x9b\x58\xd5\x7e\x3b\xd8\xf1\x77\xb6\x3a\x30\x22\x93\x24\x1e\x8c\xe9\x68\x24\x08\x4b\xf4\xed\xf6\x76\x1b\x46\xf4\x6a\xac\x66\x75\x10\x34\x77\x9a\x8d\x76\x4b\x25\xe9\x59\xdb\xde\xea\x04\xed\x66\x47\xa7\x89\x49\x16\xb4\xb6\x5a\xed\xf6\xce\x8e\x4a\xca\x3a\xd0\x74\x4c\xa7\xd5\xda\x6e\x88\x6a\xc9\xaf\x72\xbe\x35\xb7\xb7\x1b\xcd\x46\xd3\x24\x29\x0a\xde\xd9\x6e\xb4\x3b\x59\xd2\x22\x94\xe9\xb4\xf6\x76\xab\xa3\xeb\x68\x66\x44\x67\xab\xdd\xd8\xea\x34\x74\xa2\x99\x12\x8d\xa0\xd5\xd8\xde\xd1\xc5\x1a\xc2\xdc\xde\xf1\xfd\x66\x4b\x97\x92\x4f\x89\xad\xed\x66\x73\xab\xdd\x2c\x24\x93\xc5\x64\x4e\x48\xa4\xbb\xa5\xbd\x2d\xa6\x96\x4a\xcf\x9a\xb9\xb5\xb5\x15\x6c\x8b\xc4\x89\xe0\x61\x8d\x6d\x5f\x3e\x6a\x7a\x69\x36\x76\xc4\x50\x46\x34\x26\xb1\xec\x92\x76\x67\xcb\x87\x86\x6d\x64\x24\x3b\xc1\x2c\x49\x62\xc9\x3b\x3b\xfe\x36\x9c\x90\x21\x9d\x4d\xac\x55\xa0\xb3\xd5\xdc\x6a\x36\x1a\xfa\x83\x9e\x3a\x6d\xfd\x6a\xb8\x48\xa3\x11\x08\xca\xd6\xa9\xd3\x19\x9b\x46\x24\xdc\xe9\x74\x1a\x9d\xed\xa6\x4e\xcc\x7a\xa9\xb9\xb3\xb5\xed\xef\x18\xd8\x9c\x75\x6c\xfb\xdb\x5b\x5b\x3b\xbe\x49\x9f\x32\x1a\x5f\xa9\x1c\x9d\x56\xd0\x6e\xe9\xf4\x9c\x51\xb4\xb6\xb6\x1a\x4d\xdf\xc0\x2b\x66\xa1\x68\xda\x6f\x6d\x05\x5b\x4d\x38\xa1\xc3\x38\x27\xac\x4e\xab\xb5\x13\x34\xe0\x84\xc6\x5c\x6c\x4f\x26\x62\x05\x6b\x04\xdb\x6d\x1f\x4e\x68\xca\xef\x58\x92\x9a\x45\x4c\x64\x4d\x06\x03\x9c\xd2\x58\xa7\x34\x76\x60\x8c\x3f\xe2\xef\x93\x8c\x27\x74\xb6\x3b\xdb\x6d\x91\x78\x17\x06\x8d\x6d\x98\x44\xc3\x08\x0f\xc4\x97\x4e\xab\xd9\x6e\x8b\x04\xfa\x91\xc8\x39\xd9\xdc\xea\xa8\xb7\x21\xc3\x97\xe1\x96\xdf\xda\xde\x6a\xee\xc0\x9c\x25\xb7\x9b\x82\xbb\xa8\x77\x59\xfd\xce\x56\x63\xa7\xd9\x6a\x41\xd3\xb7\xad\x66\xd0\x16\x43\x3f\xc5\x11\xb1\x58\x45\xbb\xd3\xde\x0a\x9a\xbe\x4a\x96\xdd\x14\xf8\x7e\xa3\xbd\xbd\xad\x92\xf2\x7e\x0a\x82\x76\x63\x67\xa7\xd3\x91\xc9\x56\x37\xb5\x9a\xdb\x41\xc3\x6f\xc2\x29\x9e\xe2\x3b\x7c\x33\xa6\x53\x35\x71\xfd\xad\x2d\x38\x25\x78\x30\x9e\xce\x46\x23\xd9\xd6\xad\xce\x56\x13\x4e\x09\x9b\x09\x7e\xd1\xd9\xde\xd9\x09\xa0\x99\x1b\x9d\xc0\x6f\xb6\xe1\x34\x9a\x4d\xc4\x1a\xdd\x68\x75\x9a\x5b\x70\x9a\xdc\x0c\x35\x93\x0d\x02\xb1\xb2\x06\x3e\xd4\x24\x21\xa8\x6c\xab\xd9\x81\x8c\x5c\x92\xc1\x00\xeb\xd4\x4e\x67\x67\x6b\x7b\x3b\x80\xba\xf9\x41\xd0\xd9\xf6\x21\x4b\xd2\x3b\x2d\x0f\x34\x9a\xed\xad\x76\xb0\x03\x59\x72\x87\xd5\x7c\x68\x35\xb6\x3b\x62\x99\x48\xf1\x70\x18\x11\x05\xb6\x13\x34\xb6\x82\xed\x2d\x98\xcd\xd1\x56\xd0\xd9\xde\x6e\xc0\x14\xc7\x43\x83\xa9\xe3\x37\x1b\xdb\x9d\x16\xcc\x89\xd1\x6f\xfb\xcd\xc6\x96\x48\x48\xc7\x24\x92\x22\xc2\x56\xab\xd3\xdc\x86\x29\x25\x71\x8c\xc3\xc0\x6f\xfb\x9d\xad\x9d\x2d\x98\xd2\xe8\xa3\x60\x79\x8d\x4e\xb3\x21\xb8\x46\x61\x7e\x37\x03\x98\x13\x72\x67\x67\xcb\xf7\x3b\x3a\x45\x4d\xf6\xe6\x56\x63\xa7\xd5\x82\xd6\x3c\x37\x29\xb1\x9e\xc8\xed\x9d\xa6\x0f\x0b\x44\xdf\x6e\xf9\x5b\x30\x67\x01\xad\x4e\xc3\xdf\xd9\xf6\x21\x17\xec\xaf\x29\x26\x8b\x78\x21\x38\x0a\x9b\x8d\xed\x9d\x8e\x34\xc8\xe3\x11\x09\x83\x56\xc3\x6f\x6d\x6f\x6f\x43\x9e\x4c\x30\x4f\x24\xd7\xdf\xf2\x77\xda\xd0\x9a\x39\x8d\x76\xb0\xdd\xee\x40\xbd\xc0\x06\xed\x4e\x33\xf0\xb7\x3b\xf0\x66\x4c\x30\x97\x92\x5d\x53\xb4\x28\x5f\x00\xb7\x1a\x41\x5b\xbd\xa6\x93\xe4\xda\x08\x7f\xdb\x6d\x68\x71\xa2\xce\x4e\xc7\xd7\xef\x86\x1c\x83\x56\xdb\xdf\x6a\x59\x17\x75\x97\x96\xe3\x8f\x31\x4d\xeb\xec\xea\xd2\x03\x75\xe5\xbc\xf8\x2b\x72\x6b\x9f\xda\xdf\x3d\x02\x7a\x22\x9e\xad\xbb\x96\xcc\x59\x3e\xcc\x74\x80\x09\xf2\x48\xd5\x75\x41\x9d\x33\x3a\xf1\x40\x9d\x27\x6f\x85\xb4\xf7\x0a\xcb\xd3\x0d\x8f\xa3\x41\x9d\xdc\x92\x81\x47\x00\xe8\x7a\x4c\x06\xf6\xc8\xcd\xb1\xa5\x13\xe2\xa3\x98\x7b\x32\xde\x47\xd0\x01\xb0\x23\x6d\x43\x6f\x3c\x0e\xc2\xa6\x7c\x94\x67\xa0\x1e\xdf\xdf\xdf\xae\x04\xed\x07\xbe\xbf\xdf\xaa\x34\x5a\x3e\x94\x0f\x41\xfb\xa1\xd1\xf2\x2b\x1c\x7a\x41\xbb\xc2\xc1\xde\x5e\xeb\x41\x3c\xc0\x00\x84\xdb\x32\xf3\xa1\xc8\xd8\x68\x55\x84\x14\xcc\xf7\xf7\x83\x8e\x79\xda\x96\x0f\x5e\xa3\x2d\xf2\x6d\x36\xda\x6d\x10\xb6\xf2\x1c\x41\x43\x97\xb5\x6d\xca\x7a\xb4\xf0\x62\xe9\x1a\x9d\x0c\x87\x10\x7a\x1c\x0d\xf3\xf6\xeb\xb6\x88\xb6\xca\xc8\x26\xbc\xd7\xec\x8b\xca\x7a\x1c\x8d\x17\xa1\x1a\xed\xf6\x86\x80\xdc\x14\xb2\xb0\x7a\x69\xd8\x2f\x4d\xf5\xa2\x72\x8f\xf2\xdc\x87\x8b\xf8\x79\xaf\xd5\x97\x40\x53\x1b\xe8\x99\xe8\xb3\xcc\x93\x3c\xf3\x37\x79\x09\x1a\xa6\x50\x97\x8f\xcf\x80\x54\x68\xaf\x16\xc3\xf3\x12\xd0\xbd\xf1\xae\x7a\xa4\x0f\x42\xed\xf9\x03\x33\x12\x73\x17\x21\x44\x74\xb7\x1c\xe3\x63\x68\xfe\xf7\x55\x2f\x5b\xb7\x60\xb6\x31\x96\x04\x27\xd9\xa0\x13\x33\xe8\x62\xcc\x09\xb4\x0f\x60\x0f\x97\x2c\x4a\xe2\x3d\xa4\xb4\xb6\x39\x62\xe8\x18\x1f\x03\xa8\xd1\x69\xb8\x82\xf5\x5a\xf9\x8d\x0c\x7d\x78\xf0\x08\xba\x90\x01\x37\x4c\xe5\x3d\x82\x88\x9a\x5f\xa0\xce\x20\xa9\x5f\x41\x52\xbf\x84\xa4\x9e\x4c\xf1\x80\xf2\x3b\xa0\x2e\x70\x16\xac\xd7\x0a\x15\x2b\xf5\xfb\x2f\xea\x10\x16\x2a\x28\xbd\xa4\xc6\xdd\x20\xb4\xab\x9a\x57\x5f\x59\x4c\x33\x54\xd5\x96\xc6\x57\xa8\xca\xd5\xd3\x25\xaa\x32\xf5\xa4\xeb\x84\xaa\x96\xb2\xca\x59\xc6\x2a\xdc\x5f\xb9\xd5\x03\x4f\xa1\x01\xe6\xe9\x2a\x7b\xba\xb4\x8a\x7d\x97\x69\xa1\xdb\x78\xd7\x2c\x63\x06\x8f\xa0\xec\x34\x28\x08\xad\x13\x6f\xf5\x48\x63\x2f\x80\x04\x00\xd0\x75\x45\xdf\xb9\xa1\xf8\x83\x3d\x17\x54\xcb\x40\xc5\x10\x5b\x47\x70\xba\x8a\xd2\x00\xb7\xea\x42\xc7\x7d\x76\xa6\xab\x9f\x92\xe9\x52\x67\x92\xed\x22\x5d\x17\xb8\xa1\xcc\x4f\xaa\x2e\x70\x17\x0d\xed\x74\x17\x98\x43\xed\xc7\xd1\x6b\x23\x62\xb0\x17\x74\xba\xae\xef\x86\xae\x0b\xaa\x24\x8b\x1e\xe3\x05\x9d\x45\x5b\xba\x25\x82\xee\x66\xe4\x1c\xb2\x3d\xe4\x3f\x3c\xb0\x7d\x14\xc8\x44\x91\xc4\x0d\xc9\x67\xe4\x7e\x5d\x42\xee\xaf\xf4\x35\x73\x81\xd4\xaf\x81\x35\xe7\xae\x3d\x52\x1f\x43\x52\x4f\x21\xa9\x47\x16\x6d\xaf\x2d\xe6\xb2\x27\xc8\x3a\x29\xa0\x58\x82\xbd\x2e\x86\x9e\xe1\xa8\x30\x93\x04\xc3\x85\x0c\x91\xfa\x95\x7c\x8a\x11\xa9\x5f\xca\x27\x7d\x69\x24\x7a\x53\x35\xc4\x98\xe8\x8b\xae\xd6\x29\xa9\x68\x30\x8c\x10\xae\x25\x70\x86\x3c\x5c\x4d\xc0\x66\x23\xbb\x31\xe9\x7a\x29\xe2\x62\xce\x75\x3d\x56\x8b\xc1\x66\x54\xed\x6c\x78\x6c\x2f\x06\x21\x53\xa9\x71\x8d\x8b\xd4\x46\xe8\xf1\x1a\x13\x4f\x2d\x18\x6d\xa2\xd9\x5e\xbd\xdd\xc5\xd5\x24\x6c\xd4\x04\xde\x74\x03\x75\x7c\x10\x46\x68\xb6\xef\x57\x2a\xb3\xbd\xa0\xeb\x87\xa9\xee\xe3\x14\x46\x70\x66\xf5\x53\xc1\x40\xb0\x30\x5f\xc7\xd9\x7c\x4d\xb3\xf9\x1a\x3d\x3a\x5f\x4f\x16\x8e\x86\x05\x6b\xf7\xc8\x5e\xc7\xef\xf2\xaa\xd4\xee\xde\x20\x9b\x1d\x3f\x24\x7b\xf2\xf4\x3a\x24\x7b\x8d\x56\xfe\xc9\x6b\xb4\xfc\x1a\x01\x02\x80\x83\x79\xe1\xe8\x16\x5e\xc0\xfb\x41\x32\xbd\x0b\x4b\x54\xe4\x0b\xde\x94\x3d\xd1\xc6\x45\xcf\xce\x50\x1b\x15\xcf\xe1\x90\xa6\xd3\x08\xdf\xc9\x00\x40\xcb\x67\xa1\x96\x34\x62\x01\x7a\x60\x0e\xc7\xe4\x36\xbc\x84\x99\x34\x93\x3f\xa7\x51\x09\x9e\x57\x2a\xdc\x68\x3d\x83\x11\x28\x32\xf9\x26\xbc\x83\x66\x12\x85\x77\x59\xc4\x25\xd5\xd0\x53\xf8\x3e\x7f\xbf\x14\x0d\xbf\xbf\x94\xce\xed\x09\x2b\x6b\xba\x71\x4f\x4d\xba\x38\xcc\x95\xe5\x21\x31\xab\x87\x6a\xd0\x86\x61\xba\xe6\xe1\xd2\x3c\x64\x24\x20\x0f\x65\x9e\x2a\x23\xc9\xcb\x48\x7e\x4a\x19\xec\xea\x72\x45\xa7\x3f\x31\x30\xb5\x7a\x7b\x4f\xf1\x72\x56\xa9\xa8\xbf\x7b\x8d\x76\xbb\xde\xae\x54\xf2\x4f\x57\xfa\xd3\xd5\xf2\xa7\x4b\xfd\xe9\xd2\x7c\xf2\xf7\x0a\x4b\x83\xfe\xac\xdf\xf6\x50\xa0\x06\xfc\xcc\x1a\xf0\x33\x6b\xfc\xde\xe5\xe3\x27\xbd\x42\xda\x03\x78\xbd\x18\x5b\xf0\xa9\xa5\xf4\x95\x59\x4a\xaf\xcb\x96\x52\xf0\xf9\xa8\xe1\x5a\x8d\xd4\x58\x4f\x68\x3d\x9b\x3f\x1f\x25\x3c\x17\xff\x02\x15\x58\x0b\xf5\xf8\xd7\xcd\x8e\x5f\x6d\x76\xfc\x0d\x8d\x6a\xcf\x07\x90\x67\x2b\xf5\xc3\x83\xbe\x06\x92\xf8\x41\xd7\x0f\x75\x49\x4c\x65\x8f\x60\x8c\x58\xd5\x63\x82\x13\xb2\x30\xa8\x31\xb0\xc1\x21\x45\x8d\x0d\x56\x8b\xd7\x0a\x32\xda\x89\x47\xf6\x91\xe0\x3c\xa4\xd6\x68\xf9\x21\xa9\x06\x0d\x1f\x52\xc1\x9b\x05\xff\x32\x0f\x7b\x41\xc3\xef\x92\xaa\x84\xa8\x65\x10\x8b\xbd\xf5\x18\xdd\x7a\x86\xce\x52\x4d\x61\xe9\x1e\x0a\x16\x9a\x01\x72\x6a\x8c\x34\x54\xb4\x87\x82\xe7\xd0\x68\x29\x0b\xfa\x5c\x82\xcf\x38\x8d\x84\xe0\x33\x4e\x23\x29\xf8\xe8\x11\x11\x12\x81\x92\x4f\x02\xdf\x0c\x53\xaa\x12\x7f\x5d\x4c\x8d\x74\xaa\xbb\x4a\x32\x91\x8e\x80\x7f\xfa\x1d\x5c\xfa\xe4\xcd\x56\x54\xb8\x93\xdd\xd1\xbe\xcf\x1a\xca\xf9\x59\xa3\x23\x96\x66\xe6\x35\x7c\xeb\xca\x2b\xb5\x14\xfb\x52\xd1\x57\xcb\x8e\x58\xf4\x74\xc4\xca\x8c\x93\x01\x00\x32\x3d\x76\x3a\xf2\x94\x3e\x82\x14\x75\xd2\xbd\x06\x28\x31\x82\x25\x52\x2c\xe1\xfb\x28\x58\xf8\x1a\xeb\xaf\x32\xde\x1a\x8c\x90\x97\xd6\x02\x41\xc0\x33\x5b\x13\x40\x9a\x33\xda\x19\xf4\x73\xa2\xf4\x7a\x67\xa0\x9e\xce\x2e\x65\x24\x2a\xcf\x87\xb3\x6a\x90\xdb\x7c\x0f\xaa\x5e\xa1\x1a\x39\xa0\x04\xab\x0d\xc0\x86\x17\xd5\x66\xf6\xe5\x6a\x64\x2b\x3a\xff\x44\x7d\x6c\xac\x14\xdd\xe3\x5c\x45\x79\xa1\x9b\xe2\xac\x9b\xaa\xcc\x93\xe6\x71\x3e\x5c\xea\x23\xf9\x29\xae\x05\x7d\x18\xd7\x04\x7d\x1a\x77\xfd\x48\x3a\xb1\xda\xe0\x46\xec\x52\x9d\x44\x85\x88\x25\xb3\x48\x6b\x50\x02\x60\xa4\x5f\xab\x41\x1f\x26\xd5\xc0\x52\x68\x4c\xab\x5e\x54\x4b\xc1\x86\x47\x6b\x09\x98\xff\x2c\x35\x82\xe7\x11\xe4\xe3\x6a\x04\xb3\x02\xc9\x6a\x8a\xdd\xd6\x14\xeb\xe7\xce\x04\x0a\xe6\xcf\x75\x2c\x1a\x8c\xeb\x72\x65\x10\x72\x65\x3d\x22\x23\x41\x38\x05\x03\xf0\x3a\x06\xf5\x81\xf4\x5f\xbd\xc6\xeb\x43\x94\x7e\xa2\x0e\x88\xa4\x82\x95\x36\x55\x4b\x8e\x01\xd9\x7e\x5c\x34\x81\x8a\xf7\x91\x52\x84\x7f\x52\x0f\x7e\x85\xa3\x40\xb6\x4f\x8b\x18\xe9\x3e\xa2\x40\xbb\x09\x9b\x2f\x2a\x9a\x94\x77\x6f\xac\x9c\x8f\x17\x6d\xd7\x96\xe2\x4a\x10\xb4\xef\x01\xb4\x4f\xe6\xf0\x29\x3f\xe5\xf9\x48\x2d\x04\xa4\x30\x96\x5c\x44\x6c\x12\x16\x74\x41\x60\x0c\xa9\x52\x8f\xd4\x2b\xbd\xf4\x3c\xe6\x03\xbd\xf0\x2b\x83\xbe\x6c\xba\xec\xc6\x7b\xb9\xe9\x42\x82\xe2\x2a\xdd\xdf\xdf\x0f\xd6\x34\x75\x73\xb0\xe7\x77\x63\x94\x54\x83\x90\xe6\xe6\x0a\xf1\xdc\x12\x38\x0c\x26\x69\x14\x22\xf5\x31\xd0\x3e\xf1\x38\xa8\x31\xc8\x4a\x0c\x4e\x35\x44\x81\x29\x49\x6f\x34\x40\x9a\xe0\xc1\x7b\x41\x5b\x21\x85\x8a\x94\xec\x88\x87\x0c\xc6\x30\x01\xf7\xa5\x8d\x52\xee\xb9\xb2\x46\x65\x74\x4c\x4d\xbe\x5a\x90\x4d\x49\xbc\x1f\x57\x2a\xdc\x23\x3d\x2c\x26\x3c\x03\xfb\x35\xf9\x22\x1e\xbb\xb8\x16\x84\x78\x0e\x25\xa5\x17\xa3\x2d\x7e\xd6\x4e\xdd\xf7\xbb\x14\x25\xa1\xec\xd8\xbc\x53\x9f\x64\x0f\x3f\x77\xce\xec\x7d\xf6\x39\xb3\xf7\xb9\xe6\xcc\xb3\xda\xbd\x91\x87\x7f\x2d\x31\x89\x61\x76\x55\x99\xac\x44\x95\x81\x7d\xf9\x28\xad\x3c\x1d\x66\xb5\x92\xd9\xad\x2c\x74\x95\x17\x23\xcb\x2e\xa2\xe0\x84\x54\xe3\x89\xc1\x73\xe2\x70\x2c\xce\x58\xf3\x4d\xc5\xfb\x21\xdd\x63\x7c\x1c\x56\xc9\x5c\x72\x81\x27\xe3\x15\x3c\xa1\x2c\x64\x73\x8a\x45\xcd\xb0\x9f\xb5\xbe\xfa\x10\x2f\x67\x6d\x96\x66\x6d\xda\x59\x9b\xfd\x90\xe4\x0e\x42\xd3\x65\x1c\xad\x52\x1c\x2d\x1b\x47\xab\x1f\xc6\x75\xac\x94\x98\xf1\x3e\x53\xca\xca\xb8\xc6\xf6\x3b\xbe\x9f\x1b\x5b\xe1\x1a\xab\x06\x30\x41\x5c\xfe\x8d\x50\xa6\x37\x1a\x03\x38\x43\xf5\xb6\xd2\x5e\x23\xb7\x53\xaf\xb1\x11\x6d\x36\x85\x80\x63\x12\xa5\xea\x6d\xb4\x31\xdb\xf0\xe2\xda\x0c\x6c\xc6\x60\xc3\x4b\x6a\xf1\x66\x63\xcf\xef\xd6\x82\x30\x00\x6b\x8a\x9f\x66\x52\x2c\xb3\xf5\x53\x79\x2d\xd9\x98\x6d\xc6\xd5\x01\x00\xb9\x70\x8b\x0b\x10\x55\x2f\xae\x25\x20\x83\x4a\xc1\x3c\xb7\xc3\xe0\xc6\x45\x0f\x83\x33\xa4\x1a\x99\x48\x66\xc5\x01\x4c\x15\x3f\x8a\xc1\xbe\x5f\xa9\xa8\x54\x0c\x76\xa3\xbd\xd9\xae\xf6\x7a\xe8\x11\x18\xc1\x19\x90\xde\x7b\x6a\xb5\xd9\xae\xc8\x10\x89\x0c\x7b\xfe\x2e\xa8\x56\x23\xd5\x67\x22\x75\xa6\xd0\xec\x82\x5a\x6d\x36\x17\xf3\x25\x95\xe1\xb3\x60\x0c\xba\x0a\xf1\x0c\x84\x5e\xb5\x3a\x83\xe2\x6d\x06\x31\x00\x70\xb6\x87\x64\xc8\x58\x24\x04\x37\xc8\xf7\xd0\x4c\x7a\x17\x9d\xd5\x02\x50\xa2\xc0\x9e\x18\x82\x2d\x34\x8d\x48\x07\x29\xa2\x20\x19\xac\x2b\x7e\x5a\xf0\xb1\x03\x72\x9c\xfd\xe1\x9b\xc3\x15\x81\x2d\x6c\xa7\xdb\xa7\x5f\x1f\xbe\x3d\x3c\x7b\x7f\x7c\xf1\x08\x7c\x21\x56\x4d\xfa\x56\x85\x48\x39\x8c\x56\xfb\xf5\xa6\xf5\x71\x21\xcb\x81\x26\xc7\xc7\xf3\x14\x3c\x40\xa7\xc7\x32\x5a\xc9\xe3\x39\x68\x21\xc7\x6b\xcc\xc9\xe3\xf0\xa3\x02\xfc\x19\x9d\x3c\x01\x9f\x14\xe0\x55\xa8\xdf\xc7\x73\x4c\x0a\x39\xbe\x91\x61\x5c\x1e\xcf\x71\x5d\xcc\x91\xcc\xe2\xe1\xe3\x19\xa2\x62\x23\xf0\xd5\xe3\xe0\x71\x49\xaf\x9e\x5e\x93\x88\xf0\x15\x2e\xae\x69\xfd\xfb\xa5\x6e\x15\x5d\xf5\x44\xa6\xab\x42\x70\x13\x82\x39\x79\x16\xa1\x0c\x96\xb2\x3d\x67\xe0\xed\x18\x29\xa7\x77\x31\xc7\xb7\xd2\x58\xe9\xc9\x98\x26\x53\x72\xf5\x0d\x5e\xe5\xfd\xfc\x63\x21\x60\xc2\x2a\xa8\x4b\x7b\xa5\xf0\x95\xf4\x2f\xb7\xab\x9b\x5e\x37\xec\x1d\x92\x41\xff\x3e\x80\x9d\xf9\xc3\x97\xf7\x01\x6c\xcf\x1f\x7a\xbf\xfd\xa1\xaf\x9e\xc4\xe7\xbb\x3f\xcc\x58\xbf\xfa\xf0\x41\xa6\x80\x87\xde\xbb\xb7\xfa\xe3\xf0\x3e\x80\x8d\xf9\xc3\xeb\xfb\x00\x36\xe7\x0f\x6f\xee\x83\xf9\x43\x0f\x5f\xbe\xd4\x5f\x7b\xe3\xeb\xaf\xbe\xee\x2b\x90\x1b\xf5\xe7\x5b\x01\x32\x51\xcf\xa9\xfa\xd3\xfb\xf1\x8f\xef\x3f\xfe\xee\xf6\xf7\x02\xb0\x35\x07\x5e\x17\x79\xbd\xef\x5e\xf4\x37\x5e\xa8\x5f\xb0\x21\xff\x7e\x01\x36\xaf\x20\x46\x9b\xdf\x9d\xd7\xbd\x6e\xe8\xf9\x55\xe0\x9d\x6f\x80\xee\x83\xf7\xab\x2a\x78\x90\xaf\xbf\xaa\x02\xf0\xc5\xe6\x15\x4c\xd1\xe6\x77\xde\xdf\x54\x41\xd7\x3b\xaf\x3e\xfc\xaa\x0a\xba\x22\x31\x42\x9b\x02\x5e\x00\xca\x2c\xea\xc1\xaf\x0a\xac\x33\x91\xc1\xaf\x82\x2f\x36\xf3\xf5\x73\x90\x07\x52\xbf\xcf\x63\xf9\x67\xf1\xb0\xd3\xc2\x49\x9c\x75\x0e\xb7\x14\xe6\x3d\xee\x7a\x5c\x2c\x0f\x74\x32\x9b\x9c\xd2\xab\x98\x8e\xe8\x00\xc7\xfc\x35\xbd\xa2\x3c\xcd\x0c\xb4\x21\x17\x8b\xcc\xe3\x30\x20\x74\xab\x2e\x42\x28\xee\x3e\x03\x61\xe8\xfe\x4a\xc0\xb2\x9e\xdf\xef\x3e\x03\x77\xf8\xb9\x2a\x59\xf5\x4c\x0f\xa0\xbc\x07\x8c\xef\xba\xd0\x07\x00\xba\xee\xbc\xe8\x73\x52\x7a\xf5\x4c\x6f\x28\x1f\xc8\x38\x70\x03\x9c\x12\x37\xa5\x57\x71\x0d\xcf\x78\xe2\x86\xaa\x5f\xef\x45\xca\x6b\x75\x1e\x16\xba\xf2\xcb\x7c\xcd\x02\x1d\xc8\xf0\x45\xa2\xdc\x50\xa6\x7a\x20\xcb\x39\x98\x31\x46\xe2\xc1\x9d\xa8\x74\xe8\x5a\x90\x05\x04\xd1\x0d\xbe\x4b\x75\xe6\xea\xfa\x8a\x62\x15\x50\x79\xc1\x45\x14\x1e\x78\x1c\x07\x7c\x56\xad\xc8\xed\x80\x4c\x79\xed\x47\xc2\x12\x53\xb5\x6e\x39\x5a\x05\xf9\x47\x01\xb8\xa2\x7a\xcb\xb8\x3c\xf0\x34\xb2\xe7\xd5\x33\x26\x1f\x09\x33\x35\xbc\x28\x47\xaa\x60\x16\xbc\xb1\xeb\x39\x26\x8d\x6d\x0f\xe5\xc5\x78\xcf\xef\x57\x2a\xe6\x39\xe8\x77\x3d\x8e\xee\xe3\x84\xcb\xd8\x4f\xa1\x4b\xe2\x2b\x1a\x13\x22\x09\x6c\x0e\x09\xd2\x21\xdf\xbd\x06\x00\xa1\x8d\xa0\x98\x2b\x1d\x50\x12\x73\x41\xb0\x85\x4c\x81\xa0\x43\xa3\xe0\x6f\x12\x7d\xd8\x50\xb6\xbf\xd5\x75\x39\x81\xc4\xf4\xb5\xda\x81\xb2\x01\x5c\x28\xbc\xda\x75\xd5\x36\x68\x11\xde\xee\xcc\x42\x1e\xb8\x3e\xab\x73\x92\x72\xb1\xf5\x5d\xf2\x1d\xf9\x0e\x47\xa3\x84\x4d\xc8\xd0\x19\x24\xf1\x80\xa6\xc4\x21\xf1\xd5\x66\xde\x10\xc7\xb4\xce\x05\x6b\xd9\xd4\x3d\x8a\x39\xb9\x22\x4c\x4f\xc9\xcc\x2e\xde\xdc\x85\x94\x87\x52\x54\x77\xb1\xf7\xf3\x85\x20\x8a\xb9\x91\xde\xfd\x1c\x32\xe9\x92\x9e\xec\xb2\x3d\x9a\xc5\xde\xac\x56\x55\xd7\x25\x88\xf6\x58\x7f\x4d\x4f\xe0\xa4\x9e\x72\x32\xd1\xb3\x78\x4a\x98\xd8\xca\x6b\xc2\xf8\xb5\x1b\xf2\xba\x8c\x65\x88\xb2\x2f\x99\x81\xa4\x22\xa6\x5f\xdf\x06\xbe\x5f\x02\x06\x79\x5d\x86\xaa\x47\x81\xef\x2f\x64\x31\xf4\x69\xe5\xca\x92\x20\xaf\x9b\x67\x94\xd4\x93\xa9\x68\x5d\xda\xf3\xfb\x0b\x28\x64\xb4\xaa\x5a\x32\x1a\xe9\x8a\xc2\x0b\x81\x6c\x96\x92\x2f\xc5\x07\x1a\x5f\xa1\xf5\x60\x21\xcb\x94\x91\x01\x4d\x69\x12\xd7\xa8\xea\x73\x9d\xb5\x2e\x72\x6a\x26\xf9\x86\x61\xd9\x9f\x7a\x38\x16\x2b\x3e\x21\x38\x9d\x31\x52\x9b\xc5\xd4\xf4\x90\x7a\xcc\xda\x21\x5f\x21\xaf\x8b\xbf\x85\xfa\x67\xcb\xd0\xe6\x77\x5e\x7d\xa3\x0b\x6a\x9b\xd0\x75\xc1\x62\xc7\x24\x93\x29\x1e\xf0\x5a\x3a\x4e\x98\x29\xe0\x6b\x81\xdd\x50\x0e\x32\x20\xb2\x9f\xd4\x63\x46\xb5\x2a\xd7\x0a\x94\x51\x92\xf1\xd9\xaf\x9f\x8f\x52\xe6\x5a\xc0\x68\xcd\xcc\x90\x97\x1d\x3e\x2f\x3d\xdf\xcf\xc5\x2e\x69\xc5\xe4\x06\x30\xeb\xa6\xba\x32\x89\xf7\xbc\xe2\x81\x5c\xc9\xb9\xf8\x02\x76\x02\xe0\xc8\xe3\x00\xcc\x01\xbc\x17\x32\x53\xb1\xc2\x36\x03\xfa\xa9\x35\x2e\x30\xb1\x5f\xbe\xca\xa6\xe0\x5a\x4a\x27\xd3\x88\x14\xc7\x2b\xe5\x38\x1e\x62\x36\x5c\x1c\x18\x41\x73\xb5\x1b\x3a\xe4\xe3\x5a\x8c\x19\x4b\x6e\x44\x36\x33\x99\xb2\x21\x55\x9f\x94\xd5\xb2\xa1\xd4\x85\x8f\x8f\x20\xd6\x94\x59\x82\x77\x90\x0c\xc9\x12\xbe\x52\x92\xb4\xd0\x8d\x66\x51\x54\x8b\xf1\x84\xac\xa8\xea\x64\x19\x65\x19\x49\x5a\x18\x69\x9a\xd4\x64\x55\xca\x10\xa6\xaa\xd5\x4b\x04\x8d\x55\x17\x2b\x7e\x25\xe5\x71\x79\xd1\xe3\xd9\x13\x78\x71\x88\x34\x13\x51\xc5\xba\x21\x1d\xe5\xd0\xb9\xb3\xd8\x7c\x8d\x38\xc1\xf1\x95\x71\x73\x50\xc8\xea\x08\xe6\x9b\x3a\x49\x1c\xdd\x39\x78\x20\xd6\x1d\x07\x3b\x29\x8d\xaf\x22\xe2\x28\x7c\x38\xd2\x0f\x2e\x58\x2b\x65\x29\xd1\xa2\x64\x2b\x4d\x64\xb1\x3c\x7f\x61\x60\xc5\x52\x63\x04\x3c\x75\xc4\x46\x47\x1e\xad\x54\x92\xe5\x45\xed\x5b\xe2\xa8\x6e\xe4\xd1\x9d\x33\x4c\xa4\x63\x86\x74\x36\x9d\x26\x8c\x3b\x9a\x69\x3a\xba\x3d\xce\x50\x62\x56\x7e\x38\xf0\xa7\xa1\x22\xb7\x78\xc0\x97\x10\xe9\x65\x50\x8a\x9f\x59\xf7\xcf\xe9\xc8\xd3\xab\xb0\x5e\xb9\x56\x35\x51\x7d\xb6\xdb\xe9\x88\x9a\x15\xf3\xde\x7f\xca\xc8\x99\xf5\xa1\x96\x2d\x26\x9f\x3a\x7c\xb2\x46\x66\xe0\xf0\xaa\x81\xd3\xed\xde\x58\xd8\x3b\x2c\x2c\x4f\xd9\x4e\x80\x56\x2a\x6a\xef\x40\x0b\x7b\x87\x05\x70\x23\x07\x84\x49\xa5\x82\xad\x2d\xce\x02\x58\xb2\xb4\x75\x58\x01\x50\xc5\xd9\x2e\x67\x25\xb2\xe5\x7d\xc8\x0a\x00\xb3\xc9\x58\x1c\x0a\x29\x17\x3e\xce\xa6\x07\xc5\x79\x6a\xbc\x9d\xd2\x91\x97\x2e\x90\xc9\x33\x10\x29\x48\x35\x29\xa4\x8b\x53\x34\x34\xa9\x6b\xd3\x67\x54\x66\xaa\xb7\xec\x13\x94\x09\x56\x6b\x93\x67\xe4\x9b\x80\xcc\xdf\x86\xc3\x95\x5b\xa4\xc2\x69\x74\x26\xe9\x29\x07\x34\xd2\xcb\xb8\xb2\xd6\x27\x3a\x7c\xfb\x98\xa6\xe0\xe1\x41\xfc\xc9\x6e\x4e\xea\x13\x92\xa6\xf8\x8a\x20\x06\x71\x9d\xdc\x4e\xc9\x80\x93\x21\x8a\x21\xae\x8f\x64\xa4\x5f\x0a\x71\x3d\x4a\x06\x6a\x5d\x49\x20\xae\x0b\x8e\x8b\x8a\xc7\x1c\x25\xce\x45\xe5\x97\xfa\x00\x4f\xf9\x8c\x91\x53\x8e\x07\xd7\x67\x0c\x0f\x48\xa5\xb2\xe2\x83\x87\x45\x0b\xf1\x7c\x71\x55\xbc\x04\xd2\xf5\x04\xe4\xf5\xcb\x19\x8d\x86\xef\x74\x65\x8b\x4b\x69\xd6\x70\x56\xf0\x1f\x35\x18\x63\xf6\x2a\x19\x92\x03\xee\xf9\xa0\xa0\x84\x58\xe7\xc9\x87\xe9\xd4\xe8\x7f\xcf\xed\x4b\x18\x2b\x7f\x26\x8e\x9d\x9f\x6f\x5e\x41\xf7\xfc\xfc\xfc\xdc\x05\x79\xaa\xbb\x79\x05\x5f\x9c\x9f\xbb\x2f\xac\xb4\x73\x5f\x41\xfa\x36\xe0\x39\x57\x89\xbc\x90\x18\xab\xc4\xb8\x90\xc8\x54\x22\xb3\x13\x7b\xe7\xb7\xbe\x5f\x3b\xbf\xf5\xdf\xf4\x37\xaf\x6c\x6e\x90\xf1\x80\xf3\xf3\x5b\xdf\xad\x8a\xc6\xcf\x41\x31\x63\x20\x32\x06\x6f\xce\x6f\xb7\xde\xd4\xce\x6f\x77\x1e\xc3\x90\x21\x98\xdb\xb7\x0d\xcf\xef\x8e\xf3\xbe\x4a\xed\x17\x12\xbf\x53\x89\xdf\xd9\x89\x35\x95\x56\x73\xff\xa3\xed\xb8\xc4\x3e\xfb\x90\x51\xe5\xf5\xd6\xc9\x04\xf4\xd6\x5b\xe9\x17\xee\x8b\x6a\x2c\x20\xc8\x2d\x07\xd5\x17\xee\x0b\x2d\x90\x47\x38\x4d\xdd\x50\xed\xd3\x48\x7d\x8a\x19\x4f\x55\x1c\xb5\x92\xcb\xa7\x25\x17\xbe\x54\xea\x44\x80\xaa\x5b\x73\xab\xe2\x39\xe8\x83\x90\xaa\x1a\xea\x59\xef\xf6\xdc\xaa\x47\xea\x34\xfe\x48\x18\x27\xc3\xae\xfb\x9d\xd2\xd4\xe5\x55\xb7\xef\xaa\x2a\xe0\xf8\xce\x54\x52\x3c\x3b\x62\x2e\xe1\x01\x27\xcc\x35\x02\xf3\x30\xfb\x4e\xe2\xa1\xf4\xcb\x12\x4f\x67\x5c\x7f\x4e\xf8\x58\x6c\x9e\x32\xda\x19\x92\x74\xc0\xa8\x64\xc0\x86\x85\xb9\x87\x9a\xd9\x38\x6e\xd5\x6e\x96\xb6\xdc\x90\x0a\xb2\xca\x47\xbd\x72\x61\x23\x3d\xce\x03\x68\x64\x12\x13\x2e\x8a\xa3\x00\x32\x14\xec\xf2\x3d\xf3\x65\x97\xcb\x78\x17\xbc\x16\xf4\xd7\x91\x74\x46\x57\xa9\x78\xb1\xbc\xb3\xe8\xf1\x3e\x14\x3b\xdc\x35\x03\x8b\xd8\x5c\x0f\x53\x16\x88\x41\x0e\x94\x13\x98\xba\xc7\x72\x63\x29\x92\x1a\x76\x52\xd5\x75\x12\xe6\xb8\xd5\xb8\x17\xf4\xd7\x86\x64\x84\x67\x11\xcf\xbe\x67\x67\x0e\xb5\x00\xd4\xbf\x4f\x68\xec\xb9\xd0\x71\xa5\x12\x94\xce\x14\xe7\x0e\xbf\xe7\x73\x8f\x80\xaa\xeb\x5c\xce\xb8\xe3\x56\x3d\x0f\x23\x0e\xba\x8a\x30\xb0\xa4\x89\xb0\xd8\xc1\x02\x56\xb2\xe6\xba\x52\x26\xc0\x73\xc8\xe7\x9e\x64\xab\x00\x2e\x06\x58\xe3\x28\xbb\x91\xe3\x5d\x1e\xde\xcf\x65\x16\x06\xb1\xd8\xfe\xa7\xe8\x3e\xe5\x98\xf1\xf0\x15\x99\xc3\x08\xbd\x22\x70\x86\xde\x13\xcf\xdd\x73\xe1\x7a\x00\xe0\xa0\x34\xf2\x8b\x6e\x8f\x0b\xe6\x70\x28\xa1\x7f\xa5\xa0\xc7\xe8\x8c\x78\x2e\xcf\xcf\xff\x01\x1c\xc9\xef\x9b\xfb\x0a\xe0\xa3\x7c\xd3\x2f\x57\xaa\xa0\x4d\xf5\x76\x29\xf3\xe2\x85\x6b\x19\x00\xef\x24\xd4\xbd\x02\xba\x90\x2f\x73\xf5\x72\x23\x73\xc4\x85\xeb\x83\xa3\xa1\x0b\xe0\x21\xda\xfc\xae\xf7\xe2\x7c\xf3\x7e\xde\xdf\x84\xb7\xe8\x94\x78\x3d\xf7\x85\x0b\xdd\x4d\x17\x0a\x44\xee\xdc\xed\xc3\xf5\x40\xe2\x78\x8f\xee\xc5\xcc\x0c\x25\xad\xcf\xe1\x69\x09\xca\xb3\xe4\x9a\xc4\xef\xb5\x64\x06\xcf\x54\x7b\x54\x0d\xde\xad\x02\x77\x01\x3c\x90\x80\x61\xa8\x20\xbf\x29\xeb\x47\xa6\x83\x31\x42\x9b\xaf\xa6\x1b\x5f\xc8\x2d\xff\x1c\xbe\x92\x18\xa0\x42\x70\x2d\x5f\x4c\xbc\x7c\x91\x72\xb2\xca\x2f\x76\x41\x68\x50\xad\xd3\xf9\x64\x14\x30\x5a\xbf\xd4\x21\xf8\x43\x19\x66\x3f\x4f\x15\x6f\xa1\x78\xe0\x74\x42\xa0\x3c\xa9\x08\x59\xa5\xc2\x7a\x8d\xbe\x76\xf7\x46\xe6\x90\x72\x0f\x80\x39\xfc\x5e\xd6\xe7\x85\xaa\xca\x6b\xd1\xe1\xdf\xbd\xe8\x6f\xc2\x63\xd3\xdb\x7d\xb8\xee\xcb\x6f\x47\xf2\x1b\xae\xfd\x78\x50\xfb\xe3\x0b\x39\x22\x6f\x25\x4c\xcf\xc5\x2e\x74\x7f\x74\xfb\xb0\xe7\x1e\xb8\xd0\xfd\xa3\xdb\x87\x72\x94\xb2\x11\x52\xf9\xdf\x88\xfc\x2a\x7b\x7f\x13\xfe\xb8\x2a\x6f\x36\xa2\x1f\x64\xc5\x64\xc3\xe4\xfb\x4b\xf9\x2e\x5a\xa4\xde\xbf\x92\xef\x53\x79\x0d\xa6\x52\x7e\x27\x53\x54\x7c\xe7\x84\x0d\x69\x6c\x3e\xfc\x20\x3f\x24\xa3\x51\x4a\xb8\x1e\xc7\x6f\x2d\x58\x95\xf2\x85\x4c\x41\xea\xe5\x4b\x49\x10\xca\x2a\x6e\x8a\x07\xc4\x05\xf0\x0f\xa2\xfe\xe7\xbc\x76\xce\x9c\xf3\xdb\xed\xf6\xf9\xed\x81\x7f\x3e\x0b\x3a\xdb\xfe\xf9\xac\xe1\x8b\xa5\x49\xfc\x39\x10\xbf\x8d\x6d\xf9\xbb\x23\x7f\xdf\x88\xdf\xf6\x9b\xf3\x59\xd3\xf7\xfd\xfe\x26\xfc\x5a\x37\xfc\x9c\xbb\xd0\x3d\x67\xa2\xb3\x1c\x17\xba\xff\xf6\x1f\x8a\x9f\x7f\xe6\x42\xf7\xff\xfd\xef\xfe\xec\xc2\x9e\xfb\xef\xfe\xfc\x67\x17\xba\xff\xee\xcf\xff\x85\x80\x50\x58\x5d\xfd\xb0\x23\x3f\xfc\x0b\xf1\xfb\xb7\xff\xd4\x85\xee\xbf\xff\xf3\x9f\xf3\x89\xf0\x5b\x59\xf3\x54\x4a\x74\xce\x14\x73\x4e\x98\xa0\xe2\xdf\x88\xda\xaf\xd7\xce\x37\xc3\xda\xdf\xf4\x6a\xe7\xdf\xfd\xe9\xbe\xf6\x0f\xce\x6f\x0f\x82\xda\xf9\xed\xc1\xd6\xf9\xed\xc1\xce\xf9\xed\xc1\xcb\xf3\xdb\x83\x57\xe7\xb7\x07\x87\xe7\xb7\x2f\xfd\xf3\xdb\x97\xc1\xf9\xed\xcb\xce\xf9\xed\xcb\x97\xe7\xb7\x2f\xdf\x9c\xdf\xbe\xde\x3a\xbf\x7d\xb3\x25\x6a\x10\xa8\xd6\x36\xe4\x4b\x53\xbd\x34\x0f\xc5\x6f\x2b\x90\x2f\xed\xa6\xfc\x6d\xab\x17\xf1\x25\xd8\x91\x60\x2d\xd1\x13\x8d\xb6\xea\xae\xad\xad\xb6\xf8\xdd\x69\x89\x97\x97\x6f\xc4\x97\x43\xf5\xe5\x70\x4b\x75\x98\xc0\xd6\xf4\xfd\xa6\xfc\xdd\x96\x2f\x0d\x5f\xfc\x36\xfd\xf3\xd9\x9b\xd7\xa2\xcc\x37\xaf\x9b\x6f\xce\x67\x6f\x0e\x5b\x6d\xf9\xdb\xe9\x6f\xc2\xdf\xeb\x2e\x5e\x97\xac\x42\xd0\x56\xe8\x42\xf7\x6f\xe4\x53\xcf\x85\xee\x77\xa2\x4b\xff\x24\x3a\x59\x90\xe8\x3f\x90\xe9\xff\xf6\x7f\x10\xfd\xff\xcf\xc5\x97\x7f\xfb\x3f\x8a\xc7\xff\x49\xfc\xfc\xcf\xe2\xe7\x7f\x11\x3f\xff\x52\xfc\xfc\xaf\xe2\xe7\xff\x10\x3f\xff\xb7\xf8\xf9\x37\x2e\x74\xff\x9f\xff\x56\xfc\xfc\x9f\x6a\xc4\xfe\x4b\x39\x30\xff\x5c\x22\xfc\x77\x7f\xfe\x97\xf2\xed\x5f\xab\xb7\xbf\xfd\x5b\x39\x5c\xff\xb5\x7e\xfb\x6f\xe4\xdb\x3f\x51\x6f\xff\x48\xe6\xfb\xaf\xfe\xa9\x7a\xfb\xc7\x72\xdc\xff\xfb\xff\x5d\xbd\xfd\x93\x7f\x2c\xde\xfe\xc5\xbf\x51\x6f\xff\x97\xfc\xf6\xaf\xd4\xdb\xbf\xff\xf3\xdf\xca\xc1\xff\xcf\xf4\xdb\x7f\x2e\xdf\xfe\x99\x68\xc2\xbf\x97\x85\xff\x87\xff\xed\x5f\xcb\x5f\x51\xcf\xff\xf0\xaf\xfe\xa1\xfc\xfd\x47\x39\xa5\xfc\x51\x52\x4a\xb6\x67\x2d\x10\x3b\x21\x16\x47\x74\x01\xe4\x44\xce\x8e\x9a\x9a\x1d\x8c\x20\x4f\x32\xf9\x69\x92\x72\x96\x4c\xc7\x22\x8b\x48\x18\x26\xb3\xcb\x88\x38\x79\x7a\xea\x02\x00\x63\x95\xf9\x85\x66\x32\x54\xbd\x9e\xc7\xea\x35\x21\x66\xc1\x38\xc6\x13\xf2\x9e\x1d\x9b\x32\xb1\xfa\xf0\x11\x47\x74\x78\x86\xaf\x5c\x00\xd3\x1c\xd4\x00\x45\x0a\x99\xaf\x70\xcd\x88\x20\xf3\xa0\xb6\xd3\xdf\x84\x03\xa2\xc9\x20\x70\xa1\xbb\x63\x31\x96\xa1\x04\xf2\x25\xd0\xd8\x00\xf9\x0b\x40\xa3\x42\xad\x5c\x00\xa7\xc4\xac\x89\x3a\x61\x42\x90\x0f\x3f\x8a\x9f\x2b\x82\x7a\xf7\x11\x8d\x49\x18\xc0\x41\x12\xcd\x26\x71\x18\xcc\xfb\xf0\x52\x7c\xbb\x23\xa8\xd7\x87\x17\xc4\x76\x14\x2c\xd6\xef\xba\x5c\xac\x4f\x66\x91\x71\xe2\x6b\xa5\x38\x34\x76\xd2\x92\xfb\x86\x57\x38\x7e\xc1\x1d\x09\xe6\x4c\x31\x4b\x69\x7c\xe5\x8c\x58\x32\x71\x98\xc8\x74\xee\xba\x55\x0b\x49\xf5\x85\x5b\x7f\x01\xd6\x22\x94\xf6\xac\xd4\x7e\xc1\x7f\xa7\x25\x08\xa4\xb3\x4b\x75\x27\xe8\x7d\x24\x70\x42\x8a\x2e\x36\xad\x10\xd5\x4b\x9f\x8d\x73\x4b\x55\xdb\xd2\x53\x51\xd1\x84\x89\x47\x60\xaf\x0f\x5d\x17\x72\x19\x7a\x6a\x41\x96\xc9\x10\x83\xa2\xeb\xc9\x1c\x8b\x5e\x00\x8d\xcc\x0d\x85\x94\x1d\x12\x48\xaf\xe2\x84\x11\xb1\xf5\x0b\x6d\x1f\x5a\xa7\xa4\xb8\x96\xea\xdc\x4a\x16\x87\x52\x06\x17\x99\xb5\xcc\x1c\x72\x1b\x0f\x9b\x17\xdd\x3f\x2e\xe0\x50\xd2\x30\xb4\x84\xe0\x90\xcc\x0b\xde\x16\xcd\x7d\x15\x8c\xd1\x95\xd4\xb6\x11\x22\x6f\x66\x6d\x26\x75\x7f\x18\xe2\xb5\x60\x77\xfd\x8a\xf4\x58\x7f\x17\xb0\x5a\x4d\xa6\xc6\x48\x91\x91\x27\x33\xb2\x3e\xa8\x8b\x57\x43\x53\x71\x5d\x3d\xcc\x77\xd9\x1e\xdf\x05\x81\x0c\xab\x6c\xef\x8b\x19\xe8\x0a\xc9\x97\xc6\xa4\x5a\x85\x06\x1a\x05\x20\xcb\x59\xad\x0a\x81\xd9\x9c\x16\xc8\xba\xa1\x18\xc6\x05\x57\x90\x96\x3f\xad\x77\xa2\xf1\x30\x46\xef\x2c\xbf\xa6\x5a\xc8\xbc\xd7\x8b\x29\x91\x2e\x28\x42\x56\xa8\x28\x33\x15\x85\x24\x1e\x66\xa0\x5c\x81\xc6\xe5\x6d\xb2\x7a\xf0\x1b\xd9\xe7\x13\xb2\x77\x49\x1e\x1e\xbc\x09\xd9\xbf\x24\x95\x8a\x77\x49\xd0\x84\xa8\xe9\x04\xe0\x1d\x51\x3e\x87\x0b\xf4\xf2\xca\x22\xd4\xeb\xc2\x49\x80\x78\x53\x76\x11\xda\xe7\xa6\x9c\x94\x1c\x9d\x10\x0f\xec\xf2\x75\x84\xf0\x2e\x20\x26\xa8\x9a\x4e\x2f\xf1\xe3\x7a\x62\xd0\x58\xb6\xe8\x5c\xd4\xea\xa3\xac\x9b\x97\xf0\x2e\x0e\x15\x59\x03\x81\x54\x2a\x69\x2d\x5a\x66\x48\x13\x1f\xe9\xcf\x10\xce\x0c\x92\x0b\x31\x60\x1e\x41\xc7\xc4\x03\x00\xa9\x9c\x0a\x25\x47\x47\x22\x2d\xc3\x76\x6d\xbd\x25\xe8\xad\x79\xeb\x7a\x1f\x09\x22\x30\x42\x0c\x7a\x29\xe2\x22\xcd\x9b\xc9\x90\x13\xb7\xc4\x7b\xf1\x8e\xa6\x13\xcc\x07\x63\x87\xe3\x2b\xc7\x7d\x51\x4d\xab\x2f\x5c\x67\x1d\x21\xf1\x3c\x13\x9b\x12\x28\xe6\x38\x80\x04\x15\x0f\xad\x14\xc1\x4b\x39\x12\x5f\x69\xc1\x31\x85\x83\x31\x8d\x86\x8c\xc4\x61\xa4\x65\x48\x10\x7a\x13\x22\x9d\x2c\x62\x00\xe0\x05\xa9\xd5\x20\xd1\x8d\xe0\x08\x4b\x97\x8b\x17\xa4\x52\xf9\x86\x78\x63\x51\xc8\xdc\xae\x33\x87\x1c\x31\x85\x40\x3c\x62\xd1\xfb\x26\x6b\x59\xcf\xe5\x2e\x00\x54\xef\x7c\x6f\xf5\x87\xec\x02\x26\xf1\x94\xb7\x42\xf3\x8e\xcc\x3f\xb2\xae\xbe\xd8\x71\x65\xdd\xbe\x54\x6c\x36\x5c\x85\xc1\x92\xc3\x1e\x34\x9a\x8b\x53\x70\x42\xa4\xcb\x01\x21\x58\x4c\x48\xb5\x0a\x42\x8f\x15\xbb\xe0\x0e\x00\xc8\x54\x85\xbf\x24\x5e\x3e\x94\xbf\xcf\x1b\x62\xd2\xbb\x5e\xd0\x68\x97\x16\x90\x22\xb1\x75\xd2\x05\xa4\xc5\x02\x2e\x00\x80\xa9\xd5\xbf\x11\x4a\x44\x1f\xaf\xe8\x12\xb3\x4d\xd3\x7d\x52\x1c\x52\x35\x22\x85\xd1\x91\xa3\x6b\x86\x68\xa1\x69\x97\x4f\x76\xa5\x31\x44\x5a\xdd\xc9\x70\x06\x07\xf0\xff\x63\xef\xed\xf2\xdb\xb8\x95\x47\xc1\x77\xae\x82\xec\xeb\x43\x03\x26\xd4\x22\x25\xc7\x49\xda\x82\x39\x8a\x25\xc7\xce\xb1\xac\x1c\x4b\x89\xff\x09\xc3\xbf\xd2\x62\x83\x22\x62\x12\x60\xd0\xa0\x64\x46\xec\x05\xcc\xe3\xac\x60\x9e\x67\x01\xf3\x36\x4f\x77\x01\xb3\x96\x59\xc2\xfc\xf0\xd5\x8d\xfe\xa0\x24\xe7\xe4\xdc\x7b\xe6\xde\x71\xf2\x13\xbb\xd1\xf8\x28\x00\x85\x42\x55\xa1\x50\x95\xa0\x59\x69\x79\xfd\xcb\xc7\xf9\xe9\xd3\x6d\xc3\x8c\xb6\x0d\xf3\x4b\x37\xcc\x7e\x3d\x9e\x78\xe6\x76\x54\xb0\x20\xe8\x19\x1c\x82\x39\xce\x65\xbe\x05\xe9\xe1\x67\x30\x02\xf3\x72\x8d\x1f\x21\x44\xf3\x6a\x8d\x2b\xd5\xff\x2d\xe0\x4d\x7c\xf0\x26\x75\xf0\x26\xb6\xd3\x09\xfe\xd6\x5b\x25\xb3\xc6\xb1\x2f\x8d\xb7\x12\x76\x2b\x5d\xd8\x33\xc3\xad\xa4\x60\x05\xfe\x5e\x7d\xc0\x0f\x8b\x01\x07\x7c\x0b\xd5\xd3\x97\xac\x55\x0b\x52\xd1\x5f\x20\xf0\x0f\x0e\x30\x6d\x24\xfe\x5c\x18\x52\x2c\x0d\x29\x16\x10\x99\x1c\xe6\x24\x47\xe2\x38\x87\xd2\x5f\xf1\x7c\xeb\x8a\x8f\xad\x78\x8c\xa4\x12\xe5\xd3\x88\x23\x7d\xd4\x97\x18\x1d\x40\x1a\xc5\x72\xb8\x04\x1c\x46\xb7\x59\x99\x14\x94\xa9\x93\x0e\x15\xdf\x44\x9f\x72\xc2\x2f\x2c\xc0\x76\x86\x0f\xc5\xd5\x99\x12\xb9\x03\xa8\xba\x08\x04\xee\xf4\xa1\x8b\xa8\x11\x17\x98\xf8\x1b\xa9\x37\xf5\x3d\xe0\xe5\xb5\xe7\x01\xb4\xc2\x13\x3c\xd2\x8b\x63\xac\x73\xac\xd0\x4a\xc1\xb3\xb2\xf0\xac\xf4\xdd\x4c\x88\x56\xb6\x81\x49\x31\xeb\xdb\x09\x49\xe2\x13\x92\xa4\x4e\x48\x92\x0a\x7c\xef\x01\xd7\x86\xcd\xdb\xe8\xc3\x43\x9e\xef\x27\xb7\x1e\x1d\x40\xd3\x7f\x11\x25\x48\x3f\x8b\x12\xcc\xfd\xa5\x36\xaf\x2f\xb5\xda\xba\xcd\x15\x32\xfe\x22\x7a\x0a\xd5\x82\xb6\x2a\x0d\xb5\x8c\x9e\xc2\x08\xac\xca\xb5\xfd\x00\x8b\x29\x35\xca\x8e\xe6\x4a\x8c\x1e\x64\x4b\x25\xdf\x28\x54\x5e\x55\x61\x9a\xdc\x41\x4b\x12\xbf\x83\x49\xbd\x83\x49\x4e\x3d\x7c\x5a\x32\x6d\x9c\xbd\xbf\x96\x96\xa4\x77\x62\x88\x09\xcf\xa8\xd6\xa0\xfa\x93\x6a\xb2\x32\xc7\xdf\x78\x7c\xd4\x1c\xbf\xd6\xcc\xcd\xbc\x20\x33\x73\x43\x66\x52\xb3\x6a\xe7\x70\x4b\x11\x43\x76\xd2\x9c\xec\x00\x81\xcd\xc6\xea\x4b\x4b\x42\x09\x2d\x51\xea\xf1\x20\x12\xad\xb0\x40\xcd\x1b\x6e\xac\x55\x73\xe7\x74\x41\x90\x55\xcd\x44\xab\x3a\x51\x02\x13\xbc\x42\x09\xbe\xcd\xd0\x24\xd7\x27\xf2\xf2\x81\x85\x3b\x4d\xb0\x47\xdd\xee\x74\x62\xd4\x1f\xdb\xb3\x89\x6f\x83\x28\x09\x89\x88\xf1\x53\xad\x15\x34\x56\x14\xd1\x17\xe6\xc5\x59\x8b\x38\x73\x0d\xed\x3a\xde\xe8\xfa\xd7\xaa\xdc\x9a\xc4\x02\xef\x99\xbc\x7b\x3b\xfa\x70\x3e\xd0\xba\x47\x22\xe8\xa4\x94\xfd\x27\x67\x15\x65\x7f\x7f\xb0\xbf\x22\x88\x9a\x0f\xd4\x7f\xfd\x69\x77\xb5\xfb\xc3\xae\xf8\xb5\x0d\x54\x2b\xd0\xa9\xa8\xd2\x76\x2c\x88\x6f\x21\x40\x12\xd4\x5e\xa5\xa4\xfd\xeb\xfa\x57\xed\x96\x83\xc4\x49\x00\x4d\xa3\xbf\xdb\x46\xfe\xb1\xb5\x91\xdf\x77\xff\xf1\x6b\x1b\xfc\xbe\x8a\x85\x24\x77\xb6\xe1\xaa\x3c\xb1\x55\xbe\x55\xdd\x5f\x70\x26\x67\x78\x94\x77\x18\xe5\x83\x80\xec\x88\x21\x33\x9e\xc8\x8d\xe4\x58\x1f\x50\xf8\x03\x73\x63\x2b\xfc\xb0\x15\xc6\x9b\xdd\x0f\xbf\xb6\xc1\x0d\x21\x1f\x1f\x02\x60\xa2\x00\x4b\xe2\x75\x23\x58\xf5\xe6\x8f\x6c\xf3\xaf\xec\xef\xd5\x56\x30\x8e\x76\x5f\xed\x5e\xfd\xda\x06\x49\xbc\x7e\xc0\x64\x24\xb5\xc9\x38\x56\x80\xa9\x5e\x28\xe0\x2c\xb2\x59\xa3\xa1\xfb\xb1\x8d\x68\x3b\x1a\x79\xf0\x74\x8b\xf9\xc5\xaf\x24\x0c\x09\x21\x76\x9c\xee\x01\x31\x80\xad\x02\x92\xd1\x96\x99\x72\x33\xa8\x86\xec\x69\x69\xc8\x26\xf7\xc1\x32\x09\xc3\xc9\x64\xf2\xdf\x04\x96\x58\x0d\xea\x8c\xaf\xc4\x60\x0f\x77\xfa\xfe\x97\x4b\x3b\xa1\xdf\x6c\x9d\xd0\xcb\xdd\x6f\x7e\x6d\x83\x25\x11\x94\x27\x0f\x98\xd1\xb8\x36\xa3\x33\xd7\xf8\xcb\xf5\x64\x4e\x70\x30\x1b\xec\x05\xc8\xa4\x3c\x10\xfb\x5e\x57\x6b\xd8\xdb\xff\xcc\x1a\xfe\x5e\x83\x61\xf0\x99\x35\x7c\xac\xc1\xf0\xf4\x33\x6b\xf8\xcd\x0e\xf5\x77\xf6\xf7\xe5\xd6\x21\xff\x6d\xf7\xbb\xdd\x97\xbf\xb6\x81\xaa\xfc\x01\x43\x3e\xdb\x7d\xbd\xfb\xf7\xdd\x8f\xb5\x81\x5f\x68\xe2\x43\xd9\x4a\x92\x07\x82\x98\xaa\x12\x29\x99\x70\x96\x3c\xb0\xc4\x99\xed\xcc\xe1\xd6\xce\x9c\xed\x1e\xfe\xda\x06\xa6\xd2\x07\x74\x26\xad\x75\xe3\x0f\x05\x94\xe2\x4f\x7e\xe6\x8c\xbc\x8b\x15\xe3\x77\xf0\x34\x27\x0a\xd6\x9e\xcf\x03\xe9\x67\x0b\xd2\xa9\xfd\xbd\xb6\xbf\x3f\xda\xdf\xff\xb0\xbf\x9f\xb6\x82\xfc\xf3\xee\xe9\xee\xf5\xee\x8f\xbb\xff\xb1\xfb\xe9\xd7\x36\x70\x4d\x3f\x00\xf8\x3f\x3c\xe0\x7d\xdb\x33\x94\x94\xa4\x02\xd1\x20\x15\xa4\x0f\x96\x0a\xd4\x96\x7f\x2a\xd4\xa6\xff\x20\xc9\x20\xdd\x22\x19\xa4\x5b\x25\x83\x09\x4e\xf0\x48\x33\xcb\x46\x32\x98\xa0\x89\x82\x69\x82\x9d\x24\x60\x24\x83\x06\x79\x70\xbb\x64\x30\xf3\x25\x83\x59\x5d\x32\x98\xd5\x24\x83\x54\x71\x64\x7f\x81\x64\xf0\x40\x75\x4c\x21\x21\xa0\x65\xce\x05\xfe\x53\xf2\x01\xa4\x53\xe0\xb8\x65\xf5\xec\x6b\x0b\xaa\xdf\xfe\x19\x8d\x41\xb5\x2e\x77\x86\xd9\xac\x35\x70\x07\x9c\x5b\xb4\x06\xaf\x75\xc4\x15\x2b\x2f\x94\x8f\x3e\x2b\xf5\x0d\xf6\x4d\x85\x95\xf3\x51\x55\xef\x60\xbf\x5e\xf1\x8f\x30\x67\x9a\x1f\xd6\xf7\x95\xdf\xf7\x55\xbd\xef\xab\xa6\xba\xb4\x4c\x92\x9f\xcc\x56\x20\xfe\xd2\x08\x26\xf9\xb9\xad\x02\xf5\xcb\xba\x7c\xf2\xfb\x1d\xf2\xc9\x4f\xe4\xcf\x2c\x12\x3d\xfb\xde\x32\xd1\x47\x34\x33\x2d\x5c\x4c\xf1\xef\x65\x9d\xc5\xd4\x08\x13\x33\xb3\xd8\xa7\x10\x99\x1c\x46\x78\x98\xe1\xb8\x35\xcb\x81\x79\xc0\xb2\x5b\xfa\xcb\x6e\x59\x5f\x76\xcb\xca\xb2\xab\xb8\x9a\xe2\x77\xd8\x0e\xd0\xf0\x32\x34\xc8\x84\xcc\xcf\xb9\x3e\xce\x28\x90\x4f\x0e\x83\x49\x6c\xd1\x22\x0a\x72\x04\x71\xc1\xa9\xec\x34\x88\xa1\x30\xf7\xce\xad\x05\x66\xc4\xb7\x98\xc4\xdb\x98\x1c\x21\x4d\x10\xc3\xd2\x84\x64\x47\x14\xcb\xdc\x00\x31\x8f\xd5\xd1\xa6\xac\x4d\x8c\xaa\xfa\x68\xb5\x9c\xd3\x49\x2c\x9d\x2d\x6d\x3b\x78\xdc\x13\xbd\xc7\x81\xca\x62\x20\x6d\x13\x63\x51\x12\xa9\x4f\x37\x04\x40\x5f\x81\x3d\x12\x63\x6c\xa3\x69\x31\xe4\xda\x89\x68\x86\x88\x31\xbb\x77\x56\x0f\x5a\x8d\x31\x41\xb3\xad\xa4\xc8\x58\x94\xba\xd7\xd6\xbf\xef\x5b\x6e\x41\xfa\x39\x34\xf3\xff\xe3\xf4\xd2\x5a\x6d\x34\xd3\x4b\x67\xd2\xb1\x85\x5e\x7e\xf8\x97\x53\xb5\x5b\x4d\xd6\x14\xad\x48\xf0\x8f\x65\x5a\x91\x18\x5a\x31\x31\xb4\x22\x81\xc8\xe4\x30\x53\x3a\xc1\x71\xeb\x5f\xb6\x45\x8b\x3b\xe3\xb5\x57\xa8\x84\x19\xc2\x62\xe1\xdb\x85\x2e\xff\x5b\x2d\x74\xd3\xfe\x5f\xb5\xd0\x27\xb0\x7a\xc6\xf4\x6f\xbb\xd0\x1f\xb8\x98\x4b\x0a\xb6\xfd\x66\xe4\x10\x38\xf8\x2f\xdb\x56\x70\xe2\xa9\xd7\x2c\x76\x6c\xd9\x2e\xf8\x8a\x25\x65\x2e\xd8\xbf\x14\xfc\x9b\x77\x1e\x8a\x18\xa2\x39\x59\xb1\xe7\xa1\x9a\xc5\xe5\xb2\xc2\xe2\x9a\x90\x88\x7a\x81\x50\xfc\x77\x4f\xed\x46\xf1\x3f\x4a\x6f\xdf\x79\x6f\xcf\x6a\x87\xdd\xba\x97\x14\x07\x07\x79\x2f\x69\xb9\x97\x2b\x05\x33\x2d\x16\x1f\x35\x8b\x8f\xb9\x68\xb5\xff\x0d\x9a\x37\xd3\xcb\x70\xdc\x62\x95\x7d\x7b\x02\xd8\x5d\x68\xa8\x07\xd2\x8d\x95\xd5\x6f\xaa\x01\x63\x25\x88\x59\x09\x62\x56\x82\x98\xe1\x23\xbd\x52\x58\x31\x00\xcc\x0c\x80\x0d\xd7\xcb\xe0\x9f\xa8\xce\x74\x48\x28\x54\x2d\xe3\xcf\x04\x08\xa8\xd7\x59\xc3\x45\xd6\xa3\x12\x9a\x94\x90\x57\x6b\x6d\xcd\xe9\x37\x33\x27\xdd\x79\x7b\x6f\x4b\x6f\xfa\x64\xdc\x9c\x3e\x32\xed\x05\x57\x58\xfb\x11\x3d\x86\x02\x09\xc5\xcb\x09\x33\xc8\x5b\x26\x8b\xf9\x93\xc5\x6a\x93\x85\xaa\x53\x14\x1c\x04\x77\x08\x2a\x79\xef\xde\x91\xda\x2e\x3b\x41\x49\xbd\x97\x5b\xa0\xe2\x3e\x54\xbc\x0e\x15\xcf\xa5\xc2\x9f\x3d\xc6\x76\xee\xef\x0f\xc1\xee\x8b\x26\x15\xfb\x04\x6b\x6b\x5d\xa7\x62\xaf\x1c\x10\x4e\xdd\x01\xe1\x50\x60\x8e\x47\x16\xf0\xb1\x37\x9c\xb0\x36\xb4\x6e\xba\x93\xad\xfa\xed\xea\x19\x7b\xe2\x19\x18\xe7\x54\x24\x1f\xba\x37\x55\xfa\xe1\x0f\xda\x96\xf1\x12\xfe\x78\x89\xfa\x78\x39\x40\x59\x31\x5e\x43\xf0\x6c\x6f\xdb\xf2\x7d\xb1\x6d\xf9\x5e\x3b\xe2\xe1\x61\x04\x7b\x08\x3e\xbc\xbd\xab\x53\xc1\xc1\xee\x96\xd3\x90\x83\xdd\xad\xa7\x21\x57\xff\x0e\xdd\x7a\x55\xe9\x96\x39\xcc\x2d\x6c\x21\x34\x7d\x62\xea\x89\x16\x6b\x9a\xe3\x0f\xde\x2a\x3e\xb6\x37\xe9\x35\xc0\x06\x58\xbd\x00\xfc\x84\x2d\x2b\xe1\x13\x74\xab\x9f\xeb\xd5\x4f\xfd\xd5\x4f\x11\x55\xc0\xda\x6e\xb9\x33\x91\x17\x0b\xf2\xc0\xca\x4f\xdd\x32\x1b\x32\x4c\xf1\x88\x22\x6e\x96\x01\x43\x2c\x1f\x10\xf3\x7c\x27\x35\xfd\x1f\xbd\xf3\x1e\xed\x77\x18\x2d\x6a\xc7\x61\x52\x1f\x87\x89\x3b\xed\x44\x6e\xca\x5c\xc4\x1f\x8d\xdb\x43\x81\x59\x4f\xbf\xdc\x46\x08\x76\xb7\x11\x82\xf3\xd2\x8a\x79\xd5\xa0\x4e\x63\x0f\xb6\x6a\x39\x2b\x43\xfb\x03\x29\x99\x34\xb0\x7c\x15\x68\x96\xa7\x24\x0e\xc9\xa2\x65\x73\xbb\xc5\xae\x11\xd5\xe1\x26\xf4\xf9\x43\x5b\x9d\x79\xe6\x5c\xd5\x9b\x71\xb9\x05\x1e\x59\xf8\x6c\xb9\x89\x98\x59\x32\xc3\xca\xd9\x09\xfd\xda\x2a\xbf\xe5\x23\x5c\x18\x6a\x79\xfd\x3d\x81\xc8\x33\x79\xfb\x66\x1b\x8b\xb7\xff\xf5\xb6\x59\x79\xbc\x6d\x56\x7e\xcb\x05\xc7\x6d\x1c\xe0\x51\xe3\x22\xa1\x8d\x78\x5c\x21\x6c\xef\x3e\x93\xdb\xfb\x27\x9b\xaa\x71\x76\x5b\xc6\x83\xfa\xe3\x41\xeb\xe3\x61\xd6\xad\xc2\xc8\x91\x1e\xdf\xf1\xc3\xc4\x94\x9c\x3f\xd4\x0f\xc6\x96\xc6\xef\xdd\x9b\xc6\xde\x89\xc6\xde\x55\x66\xe9\x2d\xcc\xa7\xa9\xd9\x26\xe7\xaf\x6d\xaa\x6e\xdb\x53\x20\xdf\x6b\xdf\xde\xd2\xf5\xf4\xd5\x9f\x6f\xef\x8f\x7b\x7a\xf6\xcf\x55\x7d\x57\x4f\x7e\xf4\x97\x11\xad\x9a\x7f\x4a\x9f\x74\x68\x0a\x24\x65\xa3\x35\x60\xb3\xb2\x86\xfa\xca\x1a\x5a\x57\xd6\x14\xfb\xbd\x7f\x2a\x61\xf5\x24\x10\x15\x5e\x1e\xb5\x59\xd2\xc7\xfb\x15\x0f\x9f\x67\x7e\x28\xd0\x0a\x73\x94\x5f\x91\xaa\x98\x6a\xd1\x24\x72\xcc\xe2\xea\x1e\xe3\xc3\x87\xb0\x29\xbf\x7f\xe6\x40\x37\x68\xca\xaa\x3c\x9b\xe1\xde\x07\xdb\x64\x0a\xbc\x4d\xa6\x78\xe4\x64\x0a\x2d\x4d\x16\x8a\x68\x81\x19\x1e\xe5\x4b\xdd\xf2\xd7\xe0\x8e\xcd\xb4\x50\x05\x68\xb4\x28\x0e\x7e\xfe\x75\xc8\x61\x95\xc2\xff\x83\x21\xc7\x07\x52\x31\x44\x35\x5c\xc6\x4f\x8d\xcb\x5e\x36\x2e\xfb\x8a\x41\xf3\xdf\x61\x99\x79\xf0\x3e\x7d\x5b\x6a\xfa\x51\x73\xd3\xdf\xfd\xf9\xa6\xff\x63\x7b\xd3\xff\x28\x35\xfd\x6d\x99\xbf\x52\xa4\xaf\xc6\xb6\x7f\xd8\xc2\x92\x7c\xf0\x0c\xe1\xff\x2c\xbb\xf7\x73\x99\x81\xfa\x69\x8b\x7c\xe4\x31\x7c\x5b\x35\x5a\x3b\xdb\x58\x0b\x49\x14\x69\xcf\xdb\x37\x47\x39\x05\x07\x48\x64\x9d\x03\x04\x14\x33\x38\x14\xc3\x1d\x1a\xd1\xa8\xff\x60\x76\x90\x90\x72\x77\xfe\xde\x70\x27\xa0\xe8\x4a\xf0\xf8\xf1\x16\x79\xef\xf1\xe3\xad\xf2\x1e\x23\x75\xfd\x5c\xf0\x38\xb0\x70\x29\x4a\x01\x9b\x61\x13\x15\xd8\xfe\x51\x93\xd9\x50\xfa\xd7\x30\x70\x8a\xbd\x65\x5b\x88\x67\xc5\x98\x58\x93\xcf\x92\x5c\xc2\x1a\xd1\x9b\xd5\xe5\x12\xe6\xd3\x26\x40\xb1\xd1\xb7\x61\x8c\x01\xc7\x0c\x6e\x36\x81\xd6\x7b\xf0\xcd\x26\xb8\x75\x0f\x99\x7d\x60\x12\x40\xe7\x23\x85\x57\x14\x90\x8d\x14\xb8\xa4\xed\xb8\x03\xd5\xb3\x12\x47\xaf\xc5\x3d\xae\xd6\xd0\x96\x99\x4e\xcb\x33\x9d\x36\xcc\x74\x7a\x27\x47\x9a\x36\x0e\x56\x5a\xe7\x48\x9f\xa7\x66\xf9\x72\xb3\x7c\x53\xf8\x6f\x00\x12\xa0\x98\xd7\x06\x92\xea\x81\xe4\xf0\x4e\xbe\x99\xfb\x68\xc8\xeb\x68\xc8\xb1\xdb\x92\xcc\x5a\xe7\x55\xf9\xae\x47\x73\xd3\x49\xdd\x5d\xb5\x80\xfe\xd4\x19\x40\x9d\x99\xfb\xee\x2e\x0d\xcf\x5f\x8b\xee\xf5\xbb\xe6\x1d\x60\x96\x00\x71\x58\x4f\xca\xc8\x4e\x36\x1b\x21\x73\xaf\x46\xdd\xae\x59\x11\x04\x66\x80\xc1\xcf\x5e\x07\x8e\xa2\xd6\xaf\x9a\x39\x5a\xf1\x0b\xdb\x46\x2c\x28\xc9\x05\x89\xc6\x75\x94\x0f\xe7\x7f\xdc\x49\x41\x15\xfb\x2d\x0b\x69\x43\x38\x1e\xe8\x4f\x6e\x46\xbc\x42\x22\x7f\xfe\xbc\xc6\xb7\x52\xbc\xba\x2e\x6c\xcb\x2e\xc6\xfc\x5d\x8c\x35\xec\x62\x2c\xd7\x79\xdf\xa5\x4e\xe2\xf8\x51\xa1\x11\xff\xef\xaa\x16\xba\x5b\x29\xf6\x3f\xcd\x28\xfc\x65\xda\xb1\x25\x81\xb9\x21\xd4\x9f\xac\x22\xae\x20\xb9\xc2\xe1\xbb\xf0\xf5\xe9\x57\xdb\x96\x77\x7f\xdb\xea\x9e\x37\xf0\x28\x7d\x58\x30\x27\xfe\xc1\xd5\x82\xa0\x15\x69\xdc\x49\x1e\x44\x1a\x27\x24\xc7\x31\xbb\xe7\x8e\xc6\x28\x69\xae\xf0\x41\xb3\x3a\x23\x10\x3e\xe7\x06\x53\xa9\xc1\x54\x0e\xff\xe9\x1a\x5b\x74\x2b\x4d\xcd\xf7\x17\xfd\x5a\x3d\x3a\xcb\x03\x12\x8b\xfc\xb0\x04\x0d\xfa\xe5\xd3\xb4\xbb\x66\x3b\xad\xcc\xb6\xbc\x67\xb6\x1f\xa0\xa9\xff\xf7\x59\x57\xff\x84\xc6\xfd\xdf\xa7\x13\x7f\x19\x6d\x98\x9a\xa9\xd6\x06\x17\x12\x8f\x02\xc1\xb9\x0c\xc6\x5e\xd8\x19\x59\x44\xcb\x2d\xec\xba\x84\x1c\xe5\x2c\xc1\xce\xc0\xf3\x00\x40\xa5\x17\x84\xb1\xdb\x95\xce\x91\xdb\x5b\x6b\x4f\x31\xbc\xcd\x2d\x2b\x8e\x09\x80\x59\x74\x9b\xe9\xb6\xb9\xc4\x3a\xbb\xb9\x33\x7f\x1e\x5f\xa1\xd8\xa6\xa4\x33\xbe\x9a\x27\xda\x0d\xbe\x73\xa3\xa3\x90\x0f\x08\x3c\xcf\x75\x16\x0b\xe2\x05\x25\x72\xb7\xe2\x45\xcb\x98\xf6\x0a\x97\xe7\xa0\x08\x5b\xf4\x3d\x71\xde\x6f\x08\x4b\x82\x0c\xd6\x22\x55\x94\xdc\x0c\x2c\x4a\xbe\xe5\xb4\xe2\x1c\x99\x7c\x19\x58\x13\x74\x59\xd4\x3c\xcc\x27\xf9\x92\x98\xb0\xce\xa5\xaf\x87\x04\x5c\xaa\xfc\xbd\x01\x8c\xdc\x33\x84\x19\xba\xc2\xbb\xe0\x3f\x37\xa3\xff\xfc\xe5\x97\x31\xfc\x2f\xbb\x57\x7e\x00\x74\xeb\xa5\xa9\xa4\xc3\x60\x5c\x2c\xe2\x39\xfd\x83\xbc\x8e\xd3\x99\x8c\xaf\xde\x30\x13\xb9\x21\xea\xf4\x51\xc3\x70\x45\x9d\x7e\x86\xe4\x66\x73\x9b\x19\xb7\x82\x02\x5f\xeb\x6a\x73\xd4\x09\xb7\x55\xd8\xed\x16\x04\x1f\x28\x38\xc2\x29\x17\xc7\xf1\x64\xe6\xd9\xeb\x48\x78\x5b\x44\x81\xfb\x08\x81\x84\x9b\x4d\xfe\xbe\x50\xef\xb0\xdb\xb5\xe1\x54\x3f\x92\x75\x0a\xa4\x73\xb4\x08\x1b\x6a\x13\x85\x07\x6a\x8e\x62\x9c\xe7\x1d\x89\x31\x4a\xf1\xce\x00\xcd\xed\x7a\x43\x2b\xdc\x7f\xbe\x3a\x88\x8d\x6d\x90\xf3\xec\xb5\x72\xde\xa9\x27\xd8\x7e\x19\xad\xb4\xaf\x84\x1c\xa2\x19\x04\x13\xd8\xed\x5e\x19\xca\x3c\x31\x99\x20\xbc\x4d\xf1\x0a\xcd\xf1\xc4\x18\x91\x67\x19\x9d\x82\xb9\xa9\x29\xc1\x73\xdb\x86\x63\xfe\xaf\x50\xf0\x68\x70\x1b\xf4\xac\x5d\x52\x2f\x40\x6d\x73\x4b\x33\x0b\x20\x9a\xe1\x6b\x90\xc0\xe7\x6a\x65\xdb\xba\xc3\x74\x39\xa7\x13\x12\xc6\xcb\xe5\x7c\x0d\x78\x11\x7c\x73\x02\xc1\x28\x45\x83\x31\x9a\x41\x98\x11\xe0\xf2\x67\x50\xff\xaf\xef\xaa\x96\x62\xa8\x94\x1c\x38\xe6\x71\x40\x15\x8c\x14\x71\x1b\x46\x53\xab\x20\x36\x9b\xe2\xd6\xb0\x75\xb7\x48\x37\x9b\xe0\x92\xf3\x39\x89\x3d\x1f\x8c\x74\xc8\x22\x01\x74\x3c\x61\x19\x5e\x11\x09\x78\x8e\x13\x79\xac\xa5\x58\x07\x82\xf1\xfc\x43\xea\x78\x95\x61\xaa\x72\xeb\xd0\x31\x71\xe6\x7b\x57\x34\xab\xc7\xc4\x9b\x30\x8e\xe7\x96\x82\x4b\xae\x1a\x34\x4e\xcf\x4c\x45\x79\xc0\x1f\xb4\x6f\x42\x52\x30\x25\x7f\x19\x20\x68\x1d\x08\x17\xea\xcb\x0c\x61\x19\x0a\x8a\xb8\xa2\x9a\x59\x39\x50\x96\xd9\xa7\x0a\x6f\x5a\xe1\x25\x65\x09\x90\x88\xe8\xe4\x92\x07\x43\x2f\x9b\x2e\xaa\x6a\xf7\x83\x9c\x0d\x65\x24\x10\x0d\x27\xf1\x64\x46\x42\x13\xf3\x03\x40\x44\xc3\x94\x08\xaa\x17\x8d\x28\x39\xf6\xcb\x2b\xfb\xee\xec\xf4\x5d\x68\x28\x31\x9d\xae\x8b\x2e\x7b\xb9\x63\x60\x83\x22\xeb\xca\xed\x22\x77\x6d\x68\x29\x34\x8b\xbd\x01\x9c\xc5\x69\xa3\xcb\xb5\x36\xb5\x61\x86\x75\x35\x19\xf2\xcb\x5c\x11\xd9\x54\xa6\xc8\x3e\x22\xe3\x72\x89\xb4\x54\xc2\xf8\x61\xf1\x32\x63\x69\x7c\xc4\xa5\xf8\xd6\x00\xda\x10\x7e\x57\x91\xcd\x38\xcb\x5a\x24\x24\x9f\x96\x5c\xc8\x14\x37\x9a\xf7\x99\xfd\x61\x32\x23\x43\xfb\x1b\xa5\x88\x59\xaa\x9f\x0f\xee\xd0\x7f\x89\x78\x7e\xdf\x5f\xe7\x92\x22\x96\xe4\x6a\x3d\x2c\x1e\x23\x0a\x01\x41\xb7\xa6\x3a\x81\xbc\xa2\x2c\x83\x19\xca\x21\x72\x05\x28\x49\xb1\x82\x87\xc6\x09\x9d\x44\xcd\xbe\x66\x1c\x56\x08\x24\xab\x68\x20\x4b\x68\x80\x16\x9c\x55\xeb\x11\xf5\x7a\x24\x12\xd5\x7a\x44\xa9\x1e\x17\x20\xec\x41\x11\xc2\x9a\xc3\x91\xa5\x7e\xdc\x97\xaf\xab\x11\xc2\xdc\xf2\x30\x8e\xfc\xc9\x13\x82\x62\xcc\x9f\x10\x37\xb8\x60\xb0\xb3\xff\x84\xf4\xf6\x9f\xf0\x9d\x18\x3e\x91\x3d\xf0\x74\xe7\xd9\x13\xde\xdb\x7f\x12\xc3\x27\xa2\x07\x06\x3d\xf7\x55\xa7\xb0\x5e\xfc\x84\xc2\xdd\x67\x66\x23\xc7\x02\x7c\xe5\x35\x17\x7b\x48\xe7\xef\x19\xc6\x9b\x0d\xd5\xab\xde\xba\xf7\x8d\xb1\xc2\x1b\xe3\xa6\x92\x43\x94\x96\x5f\xe7\xa5\x57\xeb\xf1\xa6\xff\x5c\x1c\xf0\xe7\xbd\x9e\x80\xb4\xd8\x22\xa7\x10\xc8\x91\x18\x43\x14\x8f\xc4\x18\xd3\x50\x6c\x36\x7d\x94\x9a\xe7\x2b\xf5\x3c\x37\xcf\x97\x9b\x4d\x3f\x77\x73\x8b\x09\xd0\x21\x2f\x09\x48\x55\x5b\x04\xcc\xd5\x1a\x77\xe1\xc8\x07\xa8\x61\x0d\xd1\x50\x60\xd5\x3d\x44\xc3\x2b\x9c\x9a\x87\x4b\x3c\xd7\x0f\xbd\x20\xc8\xb2\xcc\x0f\x07\xd7\x2e\x9c\xf8\xe0\x3c\xc2\xea\xa5\xda\x1f\x6b\xd1\xdb\x34\x49\xc7\x02\x00\x52\xea\x14\x81\x30\x14\xc8\xf7\x02\x3c\xd5\xdb\x6b\x28\x4c\xd8\x59\x12\x5e\x21\x19\x5e\xa9\x5e\xa8\x97\x4b\x24\xc3\x4b\xd5\x97\x52\x3c\x57\xd7\x25\x24\x8b\x98\xf6\x0d\xd3\x53\x38\x75\xc5\x14\x28\x76\x27\xbc\xc2\xb1\x79\xb8\xc4\xa9\x79\x70\x83\x33\xd7\xaf\xba\xc7\x45\x78\xa5\x78\xb1\x88\x31\x41\x34\x03\x03\x1b\x7f\x16\xc7\xe0\x8e\xfb\xc6\x3b\x83\x1a\x18\xf9\x46\x22\x0e\x70\x7f\x28\x70\x3f\xd2\xa1\xfe\x81\xc0\x03\x24\x77\x06\x30\xf2\xe2\xae\x89\x27\x52\xed\x20\x64\xc4\xc6\x28\x56\x3f\xbd\x81\x62\x18\xd8\x8b\xfe\xd0\x44\x79\x8d\xf6\x14\x32\x2b\x2c\x3a\x90\x3b\x03\x95\xd8\xdb\x53\x89\xf1\x4e\xae\x5b\xa6\x00\x88\x1d\xb6\x2b\xe1\x13\x89\x52\xc4\x51\x8c\xe6\x3a\xa2\x70\xeb\x4e\xc0\xb7\x83\xed\x81\x07\x80\xf8\x1b\x1e\xc0\x83\xfe\xb0\xd7\x13\x91\x80\x0e\x5a\xc0\x7a\xaa\x27\x7f\x93\x16\x6a\xf5\x90\x9a\x74\x93\x3a\x37\x2f\x7b\xea\xa5\x09\x4e\x05\x65\x6a\xe1\xbc\x3f\x0a\x69\x95\x9c\x10\x1d\x8b\x1f\xf7\x94\xcc\x08\x68\x2d\x60\x1f\x3c\xd8\xd3\x27\x47\x88\xe0\x3e\x1a\xc0\x88\x1e\xec\x0f\x07\x51\x4f\xb4\x1c\x8b\xc6\x14\x47\x46\x71\x7f\x53\x0d\xfa\x3c\x21\x74\x0e\x80\xdc\x21\x70\x57\x68\xd5\x6a\xb1\x76\x29\x7c\xde\xeb\xe9\x58\x99\x7c\xc4\xc6\x98\xf4\xd8\x93\x5c\x4d\xc6\xef\xe4\x77\x8c\x57\x33\x52\x73\x62\x26\x37\x9b\xe0\x30\x4d\x89\x50\x59\x8d\xc7\x69\x98\xe9\x60\x07\xc7\xbf\xaf\xe2\x39\xae\x46\x6c\x92\x80\x74\xb0\x7a\xca\x90\xce\x75\xfa\x11\x97\xe9\xb5\x04\x1d\xf5\xab\x3e\x93\x6d\x35\xe0\xbc\x06\xfe\x11\xcb\x62\x5f\xc1\xd2\xd1\xee\xf2\xbf\x3b\x29\x79\xeb\xf9\xee\x93\x4e\xfb\xc9\x5f\xf9\xaf\xf5\x92\x2f\xd7\x3a\xa6\x69\x1b\x4c\x60\xfb\x84\x4e\x04\x4f\xf9\x54\xb6\x5f\x72\xb1\xe4\x42\x8b\x60\x61\xab\xf5\x3d\x11\x0b\x9a\x6a\x27\xf4\x92\xb7\x57\x29\x41\xed\x09\x5f\xae\x51\x7b\xc1\x13\x3a\x5d\xa3\x76\xcc\x92\x5d\x2e\xda\x09\x55\xb0\x5e\xae\x24\xd1\xac\x43\x5b\x55\x75\x13\x0b\xd2\x9e\x72\xd1\x8e\xd9\xba\xb5\x5c\x89\x25\x4f\x49\xfb\x86\xca\x59\x9b\x0b\xfd\xcb\x57\xb2\x3d\x25\xa4\x4d\xd3\xf6\x8c\x08\x72\xb9\x6e\x5f\x89\x98\x49\x92\x84\xad\xd6\xf9\xeb\xe3\xf6\xd9\xe9\xab\xf3\x0f\x87\xef\x8f\xdb\x6f\xce\xda\xdf\xbf\x3f\xfd\xf1\xcd\xd1\xf1\x51\x3b\x38\x3c\x6b\xbf\x39\x0b\xda\x87\xef\x8e\xda\x2a\xd3\xe1\x0f\xe7\xaf\x4f\xdf\xb7\x8f\xde\x9c\xbd\x7c\x7b\xf8\xe6\xe4\xac\x7d\xf8\xf6\x6d\xfb\xc3\xe1\xfb\xf7\x87\xef\xce\xdf\x1c\x9f\xb5\x3f\xbc\x39\x7f\xdd\x7a\x7f\xfc\xed\xe1\xfb\xa3\xf6\xf9\x69\xfb\xfc\xf5\x9b\x33\xaf\xe2\x77\x2f\xdf\xfe\x70\xf4\xe6\xdd\xb7\xba\xd4\x9b\x93\xef\xdf\xbe\x39\x3e\xf2\x4b\x9f\xbe\x6a\x9f\x1c\xbf\x7f\xf9\xfa\xf0\xdd\xf9\xe1\x37\x6f\xde\xbe\x39\xff\xa9\xa5\x1a\x7e\xf5\xe6\xfc\xdd\xf1\xd9\x59\xd8\x7e\xf3\xae\xfd\xee\xb4\x7d\xfc\xe3\xf1\xbb\xf3\xf6\xd9\x6b\x55\x89\x07\xd3\x37\xc7\xed\xb7\x6f\x0e\xbf\x79\x7b\xdc\x7e\x75\xfa\xbe\x7d\xf8\xee\xa7\xf6\xd9\xf7\xc7\x2f\xdf\x1c\xbe\x45\xed\xa3\x37\xef\x8f\x5f\x9e\xa3\xd6\x9b\x77\xf6\xa9\x7d\xfa\xbe\xfd\xf2\xf4\xdd\xd9\xf1\x3f\x7e\x38\x7e\x77\xfe\xe6\xf0\x6d\xfb\xe8\xf0\xe4\xf0\x5b\x05\x82\x29\xea\x5e\x3f\xbc\x3e\x3c\x3f\x3b\x3d\xfe\xf1\xf8\x7d\xfb\xfd\xf1\xd9\x0f\x6f\xcf\x15\xf4\xaf\xde\x9f\x9e\xb4\xde\x9e\x9e\x69\x80\x7f\x38\x3b\x46\xed\xa3\xc3\xf3\x43\x55\xf4\xfb\xf7\xa7\xaf\xde\x9c\x9f\xa1\xf6\x87\xd7\xc7\xe7\xaf\x8f\xdf\x2b\x88\x0f\xdf\xb5\x0f\x5f\x9e\xbf\x39\x7d\xa7\x72\xbf\x3c\x7d\x77\xfe\xfe\x50\x41\xf0\xee\xf8\xdb\xb7\x6f\xbe\x3d\x7e\xf7\xf2\xb8\x7d\xfa\xbe\x75\xaa\x73\x9f\x9f\xbe\x3f\x7f\x73\xfa\xc3\x99\x2d\x80\xda\x87\xef\xdf\x9c\xa9\x16\x4f\x7f\x38\x57\xa5\x4f\x75\x85\x2f\x4f\xdf\xbd\x3b\x36\x35\xaa\xe1\xd6\x63\xf0\xc3\x99\xae\xe6\xfb\xe3\xf7\xaf\x4e\xdf\x9f\x1c\xea\x5a\x5f\x95\x87\x3f\x6c\xfd\xa5\x28\xdd\x7e\xb2\x5b\x66\xf2\xdd\x76\xda\xe0\x5e\xde\xc4\x26\xe9\x76\xc9\xc8\x3c\x85\xda\x86\x58\x72\xa1\xa5\xc1\x8e\x70\x4a\x02\xe2\xc2\x7e\x23\x8e\x85\x91\x4d\x88\xda\x4d\x47\xe3\x96\x14\x6b\x2d\x8b\x3e\xf7\x02\xcf\x6e\x36\x72\x67\xa7\xfd\xa2\x0f\xbb\xdd\x0e\x60\x98\x87\x8c\x7c\x92\x00\xc2\x30\xe1\x8c\x3c\x87\xb1\xd5\x23\x39\x49\x6e\x12\xdb\xe0\x66\x14\xdf\x12\x45\x98\xb4\x5b\x3f\xca\xe2\xf9\x7c\x7d\xab\xea\x67\xdd\x6e\x87\xe9\xc2\x5a\x33\xc3\x43\x03\x16\xec\x76\x2d\x30\x1c\xe6\xf9\xe9\x14\x50\x4b\xfb\x68\xa8\x6b\xcb\xf7\xdb\x58\xb3\x5e\xb4\x12\x52\xf3\x0d\x93\x44\x2c\x05\x91\x44\x9c\xc9\x58\xae\xd2\xad\xa1\x64\xf3\x00\xe2\x69\x4a\xaf\x9a\x23\x26\xa6\xb5\xc0\x87\x27\xf1\x64\x46\x59\x73\xd4\xc1\x52\xe4\x4a\x07\xc6\xf6\x70\x87\x3e\xcd\x27\x23\x12\xbe\xe3\xf2\x4c\xc6\x42\x92\x04\xf7\xc7\x38\x28\x5e\x03\xa4\x3e\xbf\x5f\x31\x46\xd9\x15\x1e\x8c\x71\x60\x9f\xcd\x87\x33\xc9\x97\x4b\x92\xe0\xbd\x31\x0e\xec\x73\x90\x01\xba\xd9\x00\x8a\x6f\x1d\x43\xcc\x9d\x5b\xe7\x4f\xa9\x8c\x25\x09\x29\xa3\x32\xc8\x9a\x39\xd6\x7c\xe6\xc9\x70\x34\x8e\x46\xe3\x70\xc2\xd9\x24\x96\xc0\xf7\x56\x99\xd6\xdc\x39\xda\x8a\xdd\x68\x9a\x5f\x7d\xef\x88\xd4\x43\xe1\x5b\xdd\x5a\x25\x7a\x1e\x20\xb8\x16\x50\x8f\x74\xbb\x4a\xea\x19\x91\xf1\x50\xfd\x89\x08\x1c\x9a\x06\x49\x16\x35\x2c\x01\xe2\xbe\xea\x88\x0c\x88\x7c\x22\x13\x95\xd3\xb3\xc4\x5c\x6d\xe1\xcd\x73\x87\x78\x18\xfb\x0e\x30\x27\x9e\x5b\xfb\x1a\x6c\x05\x28\xa4\x14\xe2\xcf\x33\x32\x75\x97\xbf\x26\x9c\x69\x4f\x9b\x12\x99\x28\x1e\x69\x34\x1a\xa3\xc9\x2c\x66\x57\x24\x89\x3a\x03\xa4\x1d\x0b\x92\x34\x52\xe0\x95\xc3\xc6\xf9\xda\x05\x89\x28\xee\x38\xa6\x71\x44\xc2\x29\x9d\x4b\x22\xca\x9c\x1a\x9d\x82\xca\x64\x68\xb9\xde\xf8\xdb\xa7\xb8\xd3\x6f\x19\x5e\xce\x0a\xde\x26\x0f\xb8\xcd\x10\xcb\x3d\xe1\x37\x8c\x6b\x58\x4c\xe8\x50\xf1\x81\xc5\x2b\x60\x48\xc0\xc8\x57\x76\xf9\x5f\x9b\xf4\x5d\x14\xde\xca\x11\x1d\x37\x91\x30\xbf\xe8\x88\x8e\x87\x95\x77\xd3\x56\x25\x31\xd3\xe7\x5c\x12\x75\x5c\x88\xf1\x4e\x5f\x27\x21\x3a\x2e\x45\x81\xd3\xb4\x33\xa7\x6a\x26\x6e\x5e\xae\x1d\x64\x60\x06\x62\x40\x42\x3d\x70\xe9\xc8\xac\x10\x1a\xcf\xc7\x21\x61\x52\xac\xe1\xd6\x48\x03\x1a\xa3\x43\x3b\xa9\x50\x35\x4c\x42\x3b\xd9\x88\x43\xb4\xa7\x55\x3d\xa3\xbe\x62\x71\xc5\x68\x30\x46\x53\x7c\x3b\xe1\x6c\x4a\xaf\x22\x82\x2e\x72\xdb\x63\x64\x9b\x53\x34\x8b\x44\x0e\x6b\x1c\x10\x39\xce\xd0\x1c\x8f\x52\x1f\x63\x5c\x3e\xc5\x9a\x89\x98\xa5\x54\xeb\x9a\x0b\xec\x76\x08\xa4\x2d\x57\xea\x6b\x4c\x0e\x6d\x83\x32\xaf\x3e\xef\x43\x16\x49\xb4\xc4\xa9\xbd\x8d\xb8\xc0\x69\xde\xb9\x6b\x7d\x59\x09\x5d\xe1\x7c\xd0\x96\x7a\x9f\xb9\x0a\xb9\xd5\xd0\x5d\xe2\x58\xbf\x8d\xae\x35\xf6\x8d\x61\xbe\xbd\xa8\xaf\x6b\x5c\x97\x2f\xee\xd8\xd4\x2a\x5b\x1a\xd2\xaa\x14\x32\x92\x63\xc4\x8c\x4f\xe0\x7c\x7b\xcb\xb7\x34\xed\x26\xaf\xdb\xad\xe9\x05\x2b\x4a\xf3\x5b\xb5\x9f\x35\x28\x74\x88\x0e\x1c\xef\x85\xfd\x27\x56\x0d\x0b\x91\x9b\x20\x05\x01\xeb\xf5\xc6\x48\xed\x66\x51\x87\x64\x59\xd6\x2a\x38\xf5\xf3\xf5\xd2\xba\xd6\x90\xc3\xc0\x2c\x10\xc5\x16\x32\x2e\xdb\xba\x1b\x97\x73\x12\x06\x51\x50\xe9\x99\xcb\x92\x90\x29\x65\x24\x09\x03\x98\x81\x4b\x88\x2e\xf0\xda\x6e\xbc\xcf\x3b\x17\x66\xeb\x2d\x92\xcc\xf8\xdd\xe0\x0b\x33\x4f\xa5\x50\xf9\x37\x6e\x5c\x12\xb0\x44\x0b\x83\xef\xc7\x75\x24\xb8\x19\xde\xca\x58\x5c\x11\x19\xdd\x64\xd1\x0d\xfa\x84\x8f\x43\xf3\x8e\x4e\xf1\xb1\xc3\x6f\x74\x86\xf3\x7a\x4f\xd5\xee\x70\x8a\xce\xf1\xb1\x42\x89\x04\x9d\x14\x9f\x3e\xe9\xc3\x8a\xfc\xf5\x7c\x58\x1b\xdc\x4e\x3f\x8b\xce\x21\x58\xa0\x6b\x0b\xfb\x61\x81\x46\x26\x3a\xfd\xa7\xe1\xa7\x68\x39\x46\xdf\xeb\x95\x09\x4e\x86\x31\x38\x83\xde\x66\x74\x15\x92\x4f\x54\xa2\x33\x74\xe8\x16\x68\x13\x2d\xcc\x7d\xcf\x42\x78\xf7\x0a\x9e\x86\x6e\x2d\x96\x96\xb2\x82\x0f\xed\x43\xf4\x12\x7f\xaf\x96\xf0\x47\xfc\xbd\x5a\xc2\xef\xf1\xf7\xa3\xbd\x31\xfa\x0d\x7b\x90\xb6\x4a\xf4\xfe\xb7\x7c\x21\x7d\xcc\xd7\xee\xcb\x9c\xdc\x7f\xea\x60\xbc\xdc\x6c\x5e\xe6\x41\x3b\x36\x9b\xf7\xde\x72\xfe\x0d\x66\x59\x76\x3f\x1b\x75\xd1\xed\x5a\x44\xd0\x8a\xe2\x75\xc1\x46\x71\xb3\x00\xd6\x77\xb3\x51\x59\x09\x2d\xb2\x3c\xf0\xef\x34\x33\xe1\x9b\x1a\xd5\x82\xc4\x0d\x4f\xf3\x31\x86\x55\x5d\x84\x6a\xdf\x75\xf5\xb1\x6e\x97\x81\x82\x26\x4a\xad\xe8\x2f\x38\x8f\x85\xaf\x5d\xf0\xa9\x20\x12\x98\x7a\x4c\x11\x62\x5a\x9e\x3e\x23\x12\xc5\xf8\xf6\x62\x61\x18\xb1\x88\xa0\x94\xb0\xa4\x58\xbd\x1c\xde\x0a\x8c\x31\x75\xfc\x92\x26\xf3\x24\x2c\xc8\x22\xd0\x64\x79\x09\x24\x9a\x00\xae\xb6\x89\x86\x9e\x78\x98\x03\x34\xbc\x30\x43\xe9\xea\x32\x9d\x08\x7a\xe9\xa9\x7e\x8b\x6c\x2c\x8c\x93\x44\x31\xd1\x2a\x3f\xba\x5d\xb1\x86\xdc\x5e\xe6\x84\xcc\x89\x24\x7a\xa7\xcf\x90\x71\x04\x9d\x67\x63\xe6\x56\x87\x19\x93\x14\x07\x5c\xd3\x8d\x52\x84\xe1\xe8\xb6\x44\xa6\xa7\xf4\xaa\x20\xca\xe6\x2a\x77\xd6\x92\xee\x5a\xb7\x23\xdd\x3e\xdb\xe1\xf6\x90\xbc\x58\x81\x7c\xa9\x63\xe3\x1d\x7a\x88\x62\x2c\xf5\xa8\x71\x88\x62\x05\x34\x5f\x36\x74\x4d\x65\xb6\x3c\x28\x62\xe1\x64\x4e\x62\x01\x74\xfe\x2b\xa2\x1d\xae\x4b\xcf\xb5\xb4\x2c\x52\x57\xa9\x57\x45\x81\x89\xf1\xc3\xa2\xe9\x5b\x8d\xef\xe8\x71\x3c\x9a\x09\x32\x1d\x47\x8c\x4b\x30\x92\xf1\x25\x65\x09\xf9\xf4\x9f\x38\xd8\x09\xc6\xf0\x31\x7a\x1c\x0b\x72\x4f\x0e\x1d\x4b\xc6\x7e\x5c\x2f\x09\x0e\x66\x34\x49\x08\x0b\xc6\xd0\x4f\x14\x71\x42\x79\x9e\x96\xd0\x54\x11\xf2\x24\xcf\xd3\x5c\x6b\xb9\xec\x83\x8a\x46\x93\x19\x99\x7c\x24\xc9\x63\xf4\xd8\x5c\x32\x78\x68\x83\x6a\x4a\x55\x67\x1f\x9a\xff\x72\x25\x25\x67\x0f\xee\xce\x54\xc4\x0b\xb2\x75\x90\x57\x09\xe5\x23\x85\x57\x82\xcf\xd3\xad\x23\x7d\x4d\x13\xf2\x80\x6c\x3a\x07\x61\x92\x24\x54\x2a\xb0\xb6\x67\x74\x49\x5b\x72\x8c\x6b\xfa\x66\x7d\xbe\x73\x91\xce\xf8\x0d\xd6\x8f\xea\xc9\x1e\x98\xcd\x68\x0a\x91\xf9\x3e\xa3\x09\x31\xdf\xd5\x53\xfd\xfb\x22\xa6\x4c\xc6\x94\xbd\xe2\x93\x55\x8a\x1b\xd2\xea\x45\x54\xc2\xdf\xc9\x7a\x29\x48\xea\x4a\xf8\x49\xf5\x02\x4b\x41\xae\x29\x5f\xa5\xf3\xb5\xae\x91\x24\x7a\xdf\x31\x1f\xd5\xf8\xc4\x94\x11\x81\xcd\x31\x4b\x98\xd0\x78\xce\x15\x4f\xf6\xfb\x8a\x88\xf5\x99\xf5\x51\x04\x1e\x9b\x74\xd4\x1e\x09\x3e\x27\x38\x30\xaf\xc1\x38\x4f\x88\xe7\x44\x48\x97\xfa\xd8\x36\xad\x3f\x79\xd5\x86\x57\x44\x1e\x4a\xab\x13\x03\x81\xfa\x1c\xc0\xcd\xc6\xd5\x66\x0a\xad\x52\x72\x64\x80\x08\xd4\x98\x06\xee\x9c\xce\x42\x60\xfa\x34\xa7\xa9\x24\x8c\x88\x14\xdf\x66\xb6\x27\xe6\x54\x48\x56\x03\x86\xb9\x88\x09\xdb\xcf\x55\x49\xe9\x70\xd1\xdf\xad\x38\x00\x72\xb3\x49\xf8\x64\x65\x44\x91\xd2\x98\x1c\xea\xa2\x55\x99\xd6\xec\x44\x5a\x21\x22\x6a\xa3\x18\x8c\xe2\x95\xe4\x53\x35\x0b\x63\xd5\x71\x39\xea\x8f\x5b\xa2\xdb\x15\xa1\x4e\xf3\x5d\xe5\xcf\x3d\xd8\x63\xc0\x5c\xc0\xab\x00\x22\x72\x17\xab\xd2\xe9\x00\x12\x1a\x0f\x41\x1f\x68\x22\x67\x9b\x8d\x7b\x7d\x4d\xe8\xd5\x4c\xaa\xf7\x2b\x22\x5f\xce\x29\x61\xf2\x3d\x99\xc8\x14\x40\xc7\xcd\x96\x82\xad\xad\x00\xbc\x8d\x41\x30\x4a\x62\x19\xef\xc4\x83\xc1\x7a\xc7\x8c\xff\x38\x68\x92\xc8\x08\xbc\x55\x9b\xab\x5a\x1a\xa4\x32\xc9\xd5\x0a\x54\xbf\x2d\x1b\xac\x1a\xa4\xde\x9c\x98\x29\xac\xb3\xf5\x9e\xa7\x0d\x3d\xf9\x86\xaf\x74\xc8\x6f\xdf\x36\x9b\x86\x7d\xf5\x1d\x4f\xc8\x5b\x9a\x4a\xaf\x11\x9a\x7e\xef\x9e\x4f\xa7\x80\xc0\xa1\xc2\x92\xc8\x86\xc7\xba\x2b\xdf\x88\x8c\xa3\x06\x11\x3e\x56\xc5\x4d\x87\x32\x1d\x1d\x1c\x00\x81\x15\xe2\xe0\xf2\x02\x83\xe1\x32\x16\x84\x49\x05\x52\xa8\x7d\xf7\xab\xa7\xf4\x4e\xbe\xd3\x9c\xa8\x33\x9e\x10\x25\x0a\x68\x26\xd4\xd8\x45\x00\x11\x6a\xf2\x74\x3a\x55\xfc\xc2\x00\x22\x61\x57\x9c\x5a\x31\xac\xb4\xe4\x66\x71\xea\xcd\x06\x5f\xea\x58\x5a\x7e\x86\xb4\xbe\x26\x8b\xd5\x0b\x2b\x6b\x72\x08\xca\xbd\xaa\x94\xae\x4e\xf6\x0e\x8b\x25\xbd\x26\x01\x0a\x5c\xa3\x45\x49\x41\x16\xfc\x9a\x78\x85\x63\x41\xe3\x1d\xbb\x63\x42\x18\x15\xfd\x19\x7e\x56\xc9\xe8\x4e\x08\xfd\xac\xa8\xd3\x77\x34\x52\x8d\x8b\xa2\x26\x31\x78\x5c\x43\xf9\x1d\x4d\xe4\x83\xc7\xbd\x4a\xc5\x34\xe9\x3d\x2e\x68\x9d\xab\x22\x5f\x1d\x25\xfd\x9c\xe2\xef\x8e\xaf\x09\x93\x6f\x2d\xe1\x02\xc1\x64\x4e\x27\x1f\xed\x50\xeb\x7d\x04\x66\x1e\xed\x76\xb5\x4e\xe6\x3c\x35\x80\xd5\xd7\xa2\xea\x07\x19\x07\xa8\x8a\x68\x56\xc4\x69\xec\x8b\xde\x90\xb6\xf7\xa5\xd2\xec\x9f\xeb\x8c\x6a\xa3\xb1\x33\x53\x2a\x08\xb0\x9a\x50\x8b\x10\x19\xf2\x29\x80\x1e\xe9\x6d\x96\x17\x1a\x17\x36\x1b\xe0\x21\x7a\xa7\xbf\x75\x8f\x73\x54\x5b\x0b\x1c\xd7\xc4\x2e\xf0\x2a\x3a\x97\x16\xc2\x8c\xdf\x9c\xf0\x24\x9e\x03\xa2\xbd\x51\xc6\x6c\xa2\x83\xae\xaa\x9e\x3a\x8b\x7d\x02\x23\xb0\x7d\xf1\xe8\xd5\xf5\xf9\xb8\x8e\x4a\x84\xac\x99\xbc\x92\xca\x42\x2e\x55\xd0\xed\x92\xfb\x16\x22\x17\xf4\x4a\x09\x73\x3b\xa5\x05\x50\x25\xd6\xe5\x25\x88\xaa\xb5\x96\xca\x06\x52\xac\x48\xa0\xa5\x1b\x94\xfa\x83\x02\x51\x3e\xf6\x97\x3c\x59\x37\x60\x8b\xde\xed\x82\x26\x16\x48\x2f\xc9\x62\xea\x6a\x25\x3f\x92\x75\xc2\x6f\x58\xd0\xc0\x0b\x95\x91\x4c\xb3\x0e\x88\xc0\x26\x2c\xd3\x6b\xe0\x4e\x2c\x1b\x96\x90\x6c\x70\x17\xd6\xe8\x95\xf2\x19\x18\x53\x43\x05\x9f\x24\x3f\x88\x6a\xd9\x81\xff\x33\x58\xf3\x30\xb4\x80\x43\x70\xe7\xcc\xdf\xb7\xc5\x6f\xa9\xd5\x84\x65\xac\xf4\xfe\xa1\x65\xa3\x86\xb2\xa5\x1c\x1a\x0f\xb7\x10\x83\x6e\x77\xcb\x07\xc3\x77\xdd\xf3\x19\x54\x11\xda\x00\xf2\x27\x71\xba\xb1\xf0\x83\xd1\x5a\xa1\x6e\x80\xec\xb6\x6c\xb6\xba\x32\x6e\x27\x24\x95\x82\xaf\x71\x5d\xb6\xce\xa5\x10\xf0\xb0\x1d\xab\x11\xd0\xcf\xda\xb4\xfe\x74\xc5\xf7\x6c\x20\xb6\x8f\xf9\x12\xa8\x09\x03\xe5\x21\xe1\xac\x59\x17\x55\xe8\xf2\xcb\xb5\x8c\xc8\xb8\xdb\x05\xf5\x44\x1d\xf1\xaa\x9e\x5c\xc4\xab\xaa\xb7\x3c\x9d\x36\x1a\xf1\x35\x54\xbe\xd9\x8c\xc6\xd0\x63\xea\x72\x5f\x7d\x2f\x76\x06\x0e\x3f\x4b\xad\x3a\x46\x50\x71\x7f\xf5\x96\xf5\x48\x55\xda\xde\xda\x6a\xe3\x34\x55\x18\x3d\x24\xcb\x13\x52\x69\xae\x24\x94\xfa\xf5\x94\x48\xa5\xa9\x2c\x05\xcd\x7b\x33\x74\xa3\xae\xc9\x6e\xb7\xbb\x67\x1c\xce\xdc\xcc\xe8\x64\xd6\xed\x96\x24\xcc\x8e\x9d\x34\xc5\xa2\x76\xbb\x80\x84\x6a\xe9\x12\x26\x8f\x4c\xcc\x60\x87\xe1\x1a\xdb\xdd\x1e\xe0\xaa\xfd\xda\xaf\xb5\x69\x76\xe6\x26\xda\x5a\xc1\x62\x6f\x01\xb7\x25\xc3\x74\x46\xa7\xf2\xef\x64\x6d\xae\x7d\xb3\x21\x10\x23\x51\x58\xf8\xe7\xe4\x43\xd6\xe0\x83\x51\x51\x78\xb3\x61\x1d\x8c\x8b\x72\x9b\x0d\x10\xa3\xfe\x9d\xa5\x33\x7f\x4b\x41\xa4\x36\x1d\x65\xb5\x42\x93\x1d\x96\xd9\x36\xee\x23\xe4\x7a\x17\x85\x2d\x7f\xf8\x3a\x95\x8d\x2a\x9f\x54\x57\x27\xec\x76\xa5\x5b\x54\x3e\x83\xd9\xed\xa6\x15\x9c\x82\x19\x0a\x56\xcc\x9e\x53\x04\x1d\x27\x53\xb9\xe1\xee\x76\x41\x30\xe7\x71\x62\x04\x2e\xec\x51\xd0\x38\x59\x6b\x15\xef\xf0\x0e\x4e\xe1\xe8\xf4\xe4\xa5\x51\xfe\xbc\xe5\x71\x42\x92\x00\xad\x60\x74\x43\x59\xc2\x6f\x42\x41\x7e\x5f\x91\x54\x1e\x32\xba\xd0\x36\x3d\xaf\x44\xbc\x20\xc3\xbb\x3e\x82\xa2\x70\x4a\xe4\x39\x5d\x10\xbe\x92\x60\x85\x06\xcf\x14\x76\x85\x36\x56\x35\xa6\xd9\xdd\xd6\x64\x97\x6b\x49\xde\x9a\x18\xd9\xf5\x49\xb1\x4a\x03\x39\xea\x8f\x11\xc3\x72\x34\xc8\x8d\xd7\xf6\x9f\x00\xd1\x63\x70\xf7\xe9\x0e\xcb\x90\x0c\x25\xff\x66\x2d\x89\xd6\x68\x34\x09\xcb\x88\x63\x6b\x90\xc1\xcd\xb9\x21\x1f\x0d\xc6\x68\x85\x8d\x84\xbe\xe5\xd2\xc6\xfe\x13\x20\x7b\x42\x35\x21\x32\xd0\x47\x31\x52\x44\x77\x82\xfb\x28\xc1\xe9\x8b\xfe\x30\xde\x79\x1a\xc5\x9e\xfd\x68\xf2\x5c\xf4\xf0\x53\x28\x31\x1b\x55\x42\x1f\x8e\x0f\x0e\x06\x5f\x6d\xaa\xc9\xbd\x81\xfe\xb0\x57\xff\xb0\xa7\x3e\x3c\xab\xa7\xef\xc3\x31\x5a\x8d\x26\xbd\xde\x18\xcb\x17\x2f\x06\xcf\xba\x7b\x5f\x7c\xe1\x25\x7c\xe5\xbf\xef\x7d\xf1\x45\x37\x77\xe8\xb0\x87\x31\x4e\xb5\xda\xbe\x09\xb6\x06\x08\x06\x70\xfc\xe2\xc5\xd3\x52\x5d\x50\x1b\xb3\x6f\xaf\x65\xd0\xdf\xd2\xc3\xa7\x8d\x1d\x7c\xf1\x62\xef\x4e\xd0\x21\x5a\xa9\x79\x9d\x0a\xbe\x68\x9e\x59\x77\xe6\x29\x75\x00\x77\x6b\xfa\x4b\x31\xfb\xdb\xbe\xb9\xf5\x1e\xe3\x3e\x4a\x31\xdb\xa1\xcf\xe3\x83\xf4\x79\xdc\xc3\x83\x67\xfb\x5f\xed\xbb\x3b\xe8\x2b\x40\x50\x8c\xe2\x9e\x4e\x7c\x91\x0e\xd3\xc8\x3e\xe7\xb1\xeb\xb5\xa6\x81\x6a\xbb\x45\x6d\xf8\x89\x6c\x49\x31\x92\x2f\x5e\xec\x8d\x7b\x62\x24\x0f\x0e\x9e\x76\x9f\xed\x8f\x7b\x01\xc6\x8a\x1d\x53\xa3\x4c\xf5\xf8\x00\x55\x64\x6f\x7c\x70\xf0\x15\xec\x35\x94\x1e\xf4\x75\xf1\x17\x2f\x4c\x71\x5d\xd3\x9e\xad\x49\xf1\x84\xbc\x70\x4d\x98\x9b\x48\xda\xab\x71\xa3\x31\xa2\xb8\x89\x42\xfc\x40\x99\xfc\x4a\x8f\xd2\xb0\x78\x8c\xf4\x5f\xc4\x71\x70\xf8\xcd\xcb\xa3\xe3\x57\xdf\xbe\x7e\xf3\xdd\xdf\xdf\x9e\xbc\x3b\xfd\xfe\x1f\xef\xcf\xce\x7f\xf8\xf1\xc3\x7f\xfc\xf4\x73\x7c\x39\x49\xc8\xf4\x6a\x46\x7f\xfb\x38\x5f\x30\xbe\xfc\x5d\xa4\x72\x75\x7d\xf3\x69\xfd\x47\x7f\xb0\xb7\xff\xf4\x8b\x67\x5f\x7e\xf5\x75\x6f\x37\xb0\xe3\xc9\xdd\x0d\x19\x35\xa8\xbd\x5e\x0c\xc5\x28\x1e\x63\x3e\x8a\xc7\x88\x8d\xb8\x3f\xcb\x31\x1c\xe3\xb8\x55\x56\xde\x55\x2c\x5e\xe9\x14\xc8\xbf\x3d\x7d\xd1\xaf\x87\x93\x7d\xc3\x74\x68\xdd\xb6\xd1\x2d\x85\x6d\x43\x20\xda\x8b\x55\x2a\xdb\x97\xa4\x1d\xb7\x17\xab\xb9\xa4\xcb\x39\x69\xf3\x69\xfb\x69\xe0\x2c\x0e\x48\xbe\x3f\xa9\x81\xb4\x13\xb9\xa3\x26\x52\x98\x0b\xda\x10\x8d\x84\xbe\x3a\x2e\x87\xfd\xe8\xe9\x8e\xf8\xdb\xd3\x71\xc9\x8c\x05\x49\xc4\x0a\xd4\xa2\x88\x6b\x13\x2e\x94\x62\xf9\x3c\x3d\x60\xcf\xd3\x1e\xde\x87\x54\x4d\x6f\xaa\x30\xfe\x59\x77\xf0\xec\xcb\xc1\xe0\xd9\x57\x7d\xd8\x53\x69\xbd\x81\x9a\xf2\xee\xb3\x2f\xf6\x74\x8a\xc2\x63\x95\xba\x37\x86\x28\x76\xd3\x0f\x38\xa6\xf0\xc5\x8b\xc1\x57\x76\xea\xf9\x8b\x17\x83\xbd\xe2\xf9\x99\x7d\x7c\xb6\xdf\xe5\xe3\x1c\x15\xe3\x02\x21\xd8\x28\xd8\x09\xfc\x71\xee\xc3\x31\x7e\xb6\x87\xd8\x28\xb8\xa8\xa7\xef\x97\xed\x60\x5b\xbb\x4f\x3a\xad\xf6\x93\xf6\x64\x4e\x97\x97\x3c\x16\x49\xf8\x5b\xda\xbe\xde\x0b\xfb\xe1\x57\x2a\x79\x26\xe5\x32\x8d\x76\x77\xf3\xcf\xbf\xa9\x9d\x69\xb1\xdb\x6a\x3f\x51\x9f\xdf\xd2\x09\x61\x29\x49\xda\x27\x6f\xce\xdb\xff\xf5\xff\x68\xff\x4c\x18\x6f\xbf\xe7\x93\x59\xdc\x6a\x3f\xd9\x35\x26\x30\x2d\xd9\xc0\x66\x57\xae\xa6\x13\x7c\x3b\xd8\x7f\x1a\x3d\xe0\x4e\xc2\xad\xdd\x44\x1a\x8e\xc5\x2e\xb3\xac\xb8\x97\xb0\xf7\xe5\xd7\xda\x26\x24\x64\xe6\x02\x90\x00\xfb\x5f\xf6\xb5\x31\x7b\xc8\xcc\x15\x00\x01\xbe\x1a\x7c\x09\xd1\x5c\xa7\xa4\x9e\xa9\xbc\x67\xbb\x04\x56\x77\x19\x4b\x04\xa9\x7e\xa8\x7e\xc8\x6d\x0c\x86\x4d\xd2\xb3\xd5\x88\x66\x4d\x07\x9c\xa4\xdb\xbd\xcb\xe0\x50\xf1\x04\xa9\x14\xab\x89\xe4\x0a\x61\xf3\xf4\x8e\x7b\x2e\x98\x9b\xa1\x83\x2d\xca\x1b\x84\x25\x15\xfe\xc4\xec\xbc\x05\x2d\x51\xfb\x95\xbb\x2f\xf1\x5c\xb8\xcb\x6e\x6a\x87\x15\xe3\x16\x0b\x89\x0e\xd7\x12\x5f\xce\x09\xf6\x5f\x36\x9b\xce\x40\x07\xef\x65\x53\x7a\xb5\x32\xdf\x3b\x7d\x14\xe8\xe3\xcd\x80\xea\x73\x69\xc0\xc2\x1b\x61\x4e\x96\xb0\x12\xf2\xac\x11\x93\xa1\x57\xdf\x0b\xbe\x24\x42\xae\x01\x41\x2c\xfc\x48\xd6\x88\x41\x73\x6d\x33\xf1\xb1\xa6\x7c\xd3\xa1\x53\xe6\x1e\x74\x40\xea\x92\x6a\x41\xfa\xe1\xa8\x0b\xfb\x90\xe0\x65\xcc\x18\x97\xed\x49\x3c\x9f\xb7\xe3\xb6\x0e\xaf\xdc\x8e\xd3\x76\x9c\xa3\x63\x60\x79\x46\x27\x3b\x86\x82\xa4\x7c\x7e\x4d\x6c\xb8\x33\x27\xbf\xe8\x13\x74\x73\x5e\xa1\xe1\xcb\x6a\xae\xae\xb5\x37\x86\xd1\xed\x47\xb2\x8e\x82\x72\x1d\x2e\x44\x41\x6d\x05\x54\x4d\xe4\x5f\xf4\xbb\xdd\xc2\xa1\x95\xfb\x38\xea\x8f\x87\xfe\x4b\x74\x9b\x19\xc6\xd3\x9c\x3c\x63\x67\x3a\x50\x3b\xb8\xf2\x85\x14\xf5\x89\x2c\xa8\x94\xfa\x83\x7d\x32\xc9\x86\x3b\xcd\x59\x5f\x9b\x48\x3e\xe9\x24\x6d\x59\xa0\x13\x04\xbd\xba\xd2\x85\xed\x93\x95\x1d\xf4\x90\x90\xe4\x5c\xe5\x0f\x82\x2c\x43\x66\x04\x4a\xc3\xd5\x30\x00\x79\x23\x43\xaf\x9a\x57\xf1\x47\x02\xac\x9e\xda\x00\x63\x25\x3c\xf3\xf9\x5c\x27\x01\x98\x37\x62\x14\xa6\xaa\x94\x15\x3d\xb6\x8e\x74\x20\xe4\xbc\xc4\x2b\xbb\x07\x77\xbe\x51\xe1\xf7\xa9\x70\xdc\xfd\xd4\xd6\x5e\x14\x35\xad\xda\x82\x20\x70\x87\xc2\x4e\xea\x76\x05\xc2\x54\xae\xe7\x24\x9c\x72\x26\xcf\xe8\x1f\x04\x07\x83\xbd\xa5\x0c\x1a\xf3\x5c\x72\x91\x10\xe3\xcd\xa0\xe9\xf3\x32\x4e\x14\xaf\xbf\xf5\xfb\x22\x16\x57\x94\x6d\x2f\xce\x8d\x81\x06\x0e\xe2\xcb\x94\xcf\x57\x92\x34\xe6\x1b\x91\x61\xa0\x4d\xfc\x83\x28\x98\x93\xa9\x0c\xc6\x38\xd8\xf9\xfa\xeb\xaf\xbf\x5e\x7e\x0a\xac\x65\xa3\x65\xf4\x97\xf1\x15\xf9\xe9\x54\x1f\x9e\x15\x87\x80\xb5\x11\x4d\x27\x82\xcf\xe7\xe7\x7c\x59\x3a\xa3\xaa\xc0\x26\xf9\x12\x07\x81\x53\xcc\x4b\x14\x2c\x3f\xd5\xc7\xb1\x7c\x0e\x43\xe2\x84\xb3\xf9\xda\x53\x27\xe7\x39\xf5\xe4\xe3\x1c\xb5\xca\x5f\x73\xac\x29\x70\x6d\x2b\xba\x68\x82\xe0\x0e\xaa\xaa\x48\x06\x3c\xcc\x78\x1d\xb3\x64\x4e\xc4\xcb\x78\x3e\xbf\x8c\x27\x1f\x1b\xb6\x3d\xa7\xd6\x31\xb8\x9d\xa1\x6a\xd1\xaa\x3c\x78\xf7\x11\x42\x43\x9b\x70\xb3\x71\xda\x7e\xaf\x96\xe5\x92\xb0\xe4\xe5\x8c\xce\x93\x9c\x82\x95\x96\xea\x1c\xc0\xfc\xc3\x84\x2f\xd7\xe7\xda\xdc\xcd\x51\x40\x0f\x60\x37\x6a\x45\xe2\xb6\xd5\xec\xc1\xe6\x14\x16\x55\x45\xff\x67\xf6\xac\x3e\x58\xc5\x01\x7d\xd3\xe8\x1b\x57\x4b\xa5\x59\xdf\x06\x89\x1d\x1a\x3f\x6b\xa5\xa4\xa9\xad\x82\x35\x86\x04\x6d\x1b\x81\xfa\x08\x17\x94\xac\x36\xd6\x05\x15\xb3\x49\xdb\xb0\x51\x1b\x77\x92\x82\xfe\x90\x4f\x64\xf2\x92\x2f\x16\xb1\xd5\x39\x59\xf2\xef\x2e\x08\x48\x78\x4b\x70\x67\x90\x19\x45\x8f\x1e\xa1\xf7\x24\x5d\xcd\xb5\x9d\xb9\x6b\xd3\x4f\xaf\xb5\xeb\xb4\x53\x76\x97\xd0\xbf\x40\xf1\x17\xab\xc9\x84\xa4\x69\x10\x05\xda\xd2\x2d\x40\xb7\xa6\xe5\xc8\x83\x02\x19\x63\xec\xea\x68\x20\xbb\x69\x44\xfe\x5e\x82\xb4\x1d\x53\xbe\x4b\xd8\xf3\xc9\x52\x9a\xa7\x59\xcb\xbc\x11\x2b\xe5\xd9\xba\xbb\x98\x56\xec\x16\x62\xdf\xea\x9a\xeb\x92\xee\x2a\xbc\x9c\xaf\x04\x80\xc8\x52\xba\x2b\xe2\xef\xf9\x4e\xd1\x3e\x9f\xeb\xe0\x6e\xa9\x37\x87\x4e\xf3\xba\x05\x94\xc6\x15\x15\x5b\xe8\x53\x22\xff\x32\xd6\x40\x23\x53\xa0\x65\x2a\xad\xd3\x74\x2c\x02\x32\x1f\x9c\x7a\xd0\xa6\x77\xbb\xc1\x64\x25\xab\xa9\x35\x41\xec\xb1\x13\xc4\x1c\xc8\x6d\x63\xf9\xa6\x43\xd4\x11\x2a\x67\x44\xb4\x4d\xfd\x6d\xae\x9e\x56\x32\x78\x0c\xb5\x11\x5a\x03\xcb\xee\xb7\x94\x0f\x85\xb4\xcb\xaa\x34\x14\xc6\xe4\x3e\xef\x34\xb1\x37\xf6\x36\x1b\x67\xba\xd7\xc1\x78\xa5\x2d\x0b\x06\x1d\xdf\x1c\xe0\x0e\xf8\x6d\x3b\x3e\xfc\x71\xdb\x7c\xb3\x08\xf0\x58\x1b\x37\x9b\xde\x38\x65\x9d\x1b\xac\xda\xa1\x91\x35\xe9\x0a\xe0\x03\x9a\x8c\x5d\xb9\xb0\xfd\xfd\x9c\xc4\x29\xd1\xad\x17\xdb\x99\x8b\xf3\xa7\x64\xd9\xa2\xe6\xa2\x98\x03\x6c\x25\x6b\x70\x81\x2a\x60\x79\xa5\x70\xb3\xb9\x03\xe8\xcf\x83\xfa\x27\xbe\x6a\x4f\x62\xf6\xcb\x63\xd9\x9e\xac\x64\x5b\xad\xf3\xf6\x54\xf0\x85\x0b\x83\x93\x9a\xdb\x7a\x5e\x8f\x14\x32\x34\xf4\x24\x7d\x6c\x37\xd0\x0b\xc7\x79\x66\x77\x23\x8b\xc9\x96\x65\x63\xd8\xed\x4e\x80\x67\x8b\x82\x04\x44\x24\x03\x9e\x20\x37\xf3\x04\xb9\xd9\xff\xa8\x82\xdc\xf4\xdf\x59\x90\xcb\xa1\x5c\xfa\x67\x4a\x60\xe9\xae\xc5\xa4\x44\x7a\xf6\x43\xbe\x71\x52\xc9\x1a\xfa\xe2\x42\x8f\xc7\xc5\x05\x96\x48\xf7\x1f\xf9\x06\x6c\x0b\x3f\x77\x47\x96\x48\x82\xda\x01\xfd\xb9\xe8\x14\xb7\x31\x1a\x49\x8b\xf6\x3e\xe8\xc5\xed\x24\x53\x22\x08\x9b\x38\x01\x52\xa1\x60\x7b\x16\xa7\xec\xb1\x6c\x5f\x12\xc2\xda\xd6\x94\x9a\xa6\x24\x69\xef\xb4\xd3\xd5\x92\x08\x00\x4b\x39\x94\xb0\xa9\x23\xec\xe6\x56\xf2\x80\xc0\xc8\xf3\x80\x75\xed\x61\xe9\x75\xf3\xc0\x0c\x6d\xea\x55\x29\xb5\x11\xf1\x8a\xb1\x72\xbe\x72\x2a\xa5\x14\xf2\x94\x31\xe8\xaa\x74\xe1\x51\x9f\x6e\xe4\xea\x9e\x9d\xa0\xb8\x97\xa6\x37\x92\x32\x01\x11\x10\xe6\x9e\x7e\x4a\x42\x93\x30\x32\xf1\x65\x49\x3f\x5b\x97\xdb\x9b\x26\xa6\xdb\x35\x06\xff\x58\x36\x0b\xf1\x67\x6a\x90\xdb\xe4\x93\x3e\x45\xd3\xf3\xbf\x4a\xa5\xdb\x79\x2e\x49\x5b\x95\x56\xd4\xc6\x97\xea\x5b\xa4\x58\x51\x15\x5f\x28\xda\xdb\x47\x41\x44\x6e\xbd\xa5\x99\xdf\x10\x42\x0e\xed\xa3\x4e\x1f\xf9\x4b\x24\xea\xf4\xb3\x0c\x22\xd9\xed\x1a\x04\xcf\x00\x47\xc4\x28\xa1\xac\x23\x8c\x86\x13\x0c\x8f\xb2\xa9\x21\x28\x34\xb7\x39\xa1\x78\x4f\xa6\x8a\xcf\xd8\x6c\x3a\xf6\xa9\x20\x18\x76\xbc\x3b\x03\x35\x1b\xb5\xaf\x61\x3a\x8b\x17\xa5\x2c\x0d\x64\xe8\x7b\xc1\x3f\xad\x5d\xa6\xbe\x66\x28\xed\x24\x1e\xc5\xd2\x1b\xa8\x50\xf2\x33\xa3\x6c\xd5\x06\xa0\xb5\xc6\x80\xca\x8e\x74\x98\xc9\xa2\x47\xda\xc0\xa0\xd3\x2f\x2e\x56\x38\x60\xb2\x0c\xd4\xdd\x41\x38\x67\x1d\x0c\x5f\x3b\x04\x73\x3e\x2a\xae\x0d\xa3\xe7\x93\xca\x96\xc0\x75\x20\x18\x2a\x3c\xfe\x50\xeb\xbc\x4e\x60\xe6\x3b\xf4\x29\xfc\xe3\x38\x00\x16\xe6\x83\x80\x59\xa6\x3d\x7e\x78\xb6\xb0\xf9\x52\xa8\x01\xfb\x2f\x53\x36\x71\x1d\xa6\x80\x16\x8e\x90\x20\x6c\x50\x3c\x89\xd0\x9c\x49\xbf\x54\x72\x92\x3e\x04\xcb\xa3\x57\x61\x8e\x98\xd3\x36\xd1\xf4\x2c\x0f\xeb\xfd\x17\xab\x9a\x46\x86\x13\x42\x9a\xef\x18\x23\xd9\x70\x8f\x54\xdb\x7f\x12\x24\x70\xa7\x93\xf3\xd4\xda\xba\xd7\xca\x28\x39\x6c\x85\x87\xb0\xe6\x8b\x21\x58\x74\xbb\xf7\xd5\xa1\x49\x99\x76\x65\x35\xfe\xef\xa5\x6e\x6b\xbe\x5c\xa9\x53\x86\xee\xc1\x88\x32\x56\x6f\x7d\xe8\x69\xe7\x2c\xc7\xd3\x58\x87\xf9\x36\x74\x0f\xa5\x3a\xce\xab\xaa\xb9\xe6\x1a\xc8\x27\x5d\x3e\x17\xc1\x5c\xe9\x5c\x19\x52\x68\x07\x8b\xfb\x2f\x78\x06\x3c\x55\x21\x1c\x7a\x2f\x51\xc9\xbe\x27\x67\xd7\x3d\xac\x6c\x12\x1e\x0d\xcd\x53\xed\x99\x81\x73\x86\x15\x38\x06\x6a\x23\x77\x62\x7f\x93\x61\xaf\x0c\x79\x8e\xed\x19\x2c\x64\x25\x7e\x5f\x6b\x44\xdf\xfd\xb9\x8a\x25\x31\x43\xa5\x18\xdf\xc9\x4a\x08\xc2\xec\xd8\xb5\xac\x74\x69\x77\xb9\x43\xc7\x3b\x37\x25\xfb\x8a\x84\xda\x27\x72\xd3\x4e\x40\x83\xe4\xab\xd5\x29\xde\xcc\x99\x67\x9d\x9a\xcf\x87\x7a\x52\x29\xc5\x00\x57\x8d\x49\x9c\x98\x8c\xac\xf0\x6d\x2c\x99\x7c\x41\xd3\xc3\xa9\xa6\xe1\xb0\x03\x79\x05\x72\xf9\x92\xd4\x4a\x6f\xd1\x62\xe4\x83\x79\x05\x72\x89\xcc\x91\x68\x77\xa7\xad\xb4\x3a\x73\xfb\x7d\x59\x6f\xa2\x49\xa1\x51\x02\x4f\xea\x1c\xe4\xc1\x32\xb4\xc3\x22\x67\xc9\x05\x9a\x27\x68\xcb\x94\xde\x53\xca\x29\x7b\x94\x88\x31\xad\x8a\x18\x4c\xa7\x21\x06\x11\xcf\x00\x05\x10\x66\xe8\xab\xbd\xaf\xaa\x82\x6a\xd3\x79\xac\x15\x2a\xbb\xdd\x4e\xdd\x8e\xde\x5e\x0d\x73\x63\x5e\xcb\xd0\x92\x2e\x0b\xce\x9f\xdc\x80\x6f\x36\x32\x5c\xf0\x3f\x4e\x1a\x52\xd3\x86\x44\xde\x90\x76\x43\x2e\x3f\x52\x59\xf9\x90\x6d\xf3\xb1\xa6\x5d\x57\x90\x6e\xf7\xeb\x92\xa4\xfd\xbc\xc2\xd1\x79\xa4\xc8\x02\xac\x24\x1f\xfb\x08\x24\x2c\xfc\x64\x10\x4c\x3c\xb3\xff\x2c\xcb\xd0\xd3\xfd\xaf\x6a\x87\x81\xee\x64\xef\xab\xbd\xaf\xee\xf2\x39\x16\x63\x7e\xf7\xde\xdf\x60\x98\x2d\x50\x8c\x28\x44\xb7\x16\x2d\x7c\x6c\x6b\x36\xc4\x33\x05\xb2\x2c\x2b\x73\x0e\x48\x78\x1e\xff\xfc\x1b\x9b\xa2\x42\x90\x30\x03\x22\x3f\x61\xd1\xee\x2c\x4a\x9f\xbb\x5d\xcb\x0c\x68\x5f\x41\x5b\xe6\x41\x77\x3a\x0f\xa1\xdd\xbc\x11\x55\x3a\x3a\xa4\x76\x68\xb4\xe6\xb4\x18\x9a\x26\x1f\x0f\x2a\xb3\xd6\xb7\xe9\xbc\xc5\xed\x9e\xe6\x0a\x40\x93\x4b\x09\xe0\xe9\x29\x9b\x2e\x05\xa1\xea\x75\xa3\x45\xbc\x74\xfd\x6e\xda\x0f\xa8\xd7\x6d\x7d\x5d\x34\x43\x5f\x7d\xf9\x75\xc5\xb3\x9e\xd4\x08\xd9\x64\xb8\x5c\x28\x8f\xba\xdd\x12\x07\xf7\xfa\xfc\xe4\x6d\xbe\x38\x2b\xb7\x49\x90\xa9\x4f\x8d\x60\x8d\x95\x77\xde\xd6\xb6\xb2\xcc\xa4\xe2\x6f\xd2\xb4\x0d\x82\x91\xd9\x6e\xf3\x8b\x37\x63\xed\xf8\x76\xb3\xc9\x3f\x28\x88\x5e\xf2\xb9\x55\x36\x9a\xcf\x4a\x8e\x35\xac\x4a\x60\x02\x13\x83\xbe\xe7\x4a\x52\xad\x62\x05\x28\x20\xa3\xfe\x18\x6a\xef\x51\x66\x46\x1a\x46\xa2\x3e\x57\x9b\x4d\x69\x40\x4c\x1f\xb4\xb1\x0d\x6b\x2a\xef\xc0\x7c\x65\x3f\x69\x00\xef\x1d\x8b\x2c\x43\xfb\x5f\xf6\xb7\xaf\x6b\x7b\x62\x0f\x9e\xee\x7f\x05\xb7\xf8\x77\x54\xf9\xb5\xde\xaf\xdb\xed\x28\x42\x2a\xea\x76\x22\x27\x34\x4d\x29\xbb\x6a\x0b\xf2\xfb\x8a\x0a\x92\xb4\x73\x2c\x0d\xf4\xee\xd5\x61\xa1\xf3\x61\xbc\x85\x71\x3f\x23\x13\xce\x8a\x72\x9e\x89\x89\xe9\x4f\x5e\xcf\x54\xad\xed\xe6\x3a\xce\x67\x54\x34\x56\xf1\xaa\x90\x49\xe9\x14\x30\x3b\x67\x39\x31\xdc\x62\x77\xd6\x40\xb3\xd4\xe7\xcf\xa0\x58\xda\xa5\x70\x96\xd9\x7a\x8b\xb6\x55\x86\xfb\xdb\xaf\x2e\x54\xcb\xb3\x37\x2e\xd6\x2d\xb0\x2a\x4e\xbd\x09\xdc\xcf\xab\x7a\x6b\xd7\x60\xad\x77\x76\x96\xef\xed\x1b\x05\x25\xbe\x36\x77\xbf\x6c\xeb\x6a\x9c\xde\x57\x54\xa4\x72\x3b\x86\x20\x9f\xa4\xa0\xca\x6a\x46\x6d\x2e\xf2\x95\x1f\x68\x22\x36\xf8\x32\x2a\x77\xb3\x8e\xfb\x2e\x1e\x93\xda\x62\xcf\x8e\xdf\x1e\xbf\x3c\x0f\x72\x42\xf5\x2e\x5e\x10\x48\x0a\x4b\x58\x4c\xac\x83\x0a\x2d\x0c\xab\x12\x6f\xde\x7d\xff\x43\xa5\xc0\x66\x13\x9c\x1f\xff\xc7\xf9\xe1\xfb\xe3\xc3\x4a\x4d\xb7\xce\x72\x6a\x9b\x1e\xb9\x25\x14\x43\x7d\xd7\x49\x2c\xb1\xe7\x3d\xc0\xde\x8e\xc9\xcf\x4d\xf4\x59\x09\xe8\x23\x52\x72\xae\x0c\x91\xae\xb1\x76\x75\xa1\x68\xb2\xe8\x94\x96\xf0\x6b\x57\x36\x2a\x37\x98\xcd\x65\x1f\x3b\x20\xd6\x26\xa8\xf1\x14\x07\xd1\xea\x51\xbe\x81\x10\xb6\xa8\xed\x82\x9a\x29\x6b\x22\xab\x1d\x71\xb2\xfa\xc1\x0f\xd2\x8e\x09\x4c\x41\xaa\x40\x65\x39\xed\x03\xb0\x08\x31\x9d\xa1\xbd\xd2\x6e\x55\x72\x42\x08\x6f\x33\x8f\x76\xe2\x5b\xdf\xb3\x4c\xd9\x39\x91\x3e\x8c\x73\x17\xbc\x88\x76\xae\x63\xb5\x87\x4c\xdb\xaa\xeb\x1f\x3c\x1a\x43\x68\x0c\xcc\x6e\xa7\x2c\x92\x68\x22\x3f\x45\x22\x73\x46\xf0\x9c\x4d\xc8\x1d\xf5\xfb\xec\x15\xbc\x65\x21\x9f\x4e\xb5\x33\x63\x24\xed\xf6\x2f\xbc\xbd\xbf\xf0\xcc\x79\x81\xad\x60\xa9\xeb\xa4\xda\xcf\xa1\x92\x5c\xa2\x46\x23\x4d\x3c\x1a\x37\xfb\x6d\x1e\x40\x24\x30\x00\x0d\x1d\x85\xb9\x31\xbe\x2e\xa8\x46\x1e\xf7\xb5\x95\x97\x55\x77\xb3\x03\xfa\x9c\xf5\x7a\x50\x8c\xd8\x38\x9c\x3a\x25\x90\x7e\x9b\xc8\x4f\xbe\x63\x72\x33\x0c\xd3\x69\xd4\x64\xdb\xde\xd0\x34\x62\x58\x8c\xc8\x18\x51\x3c\xd2\xfe\x77\x58\xb7\x2b\x61\xee\x4f\x1c\xf7\x51\x8c\x99\x83\x82\x1f\xc4\xcf\x79\xaf\x07\xd9\x88\x2b\x28\x3a\xda\x0f\x92\x7d\x09\x2f\xcc\xab\x0d\xe5\xa0\x52\x73\xa0\xa8\x73\x0b\xad\x5a\xc2\x34\x32\x0e\x2c\xda\xba\x5d\x0d\x70\xe6\x3b\x83\xf4\x1c\x0e\x9f\x53\xb6\x3e\xb6\xf6\x3c\x0a\xcf\x24\xbe\xf5\x7c\x7f\x08\xeb\xed\x42\x8e\xd8\x38\x57\xd7\xaa\x21\xb1\xc5\x5b\x46\xe1\xa6\x92\xf0\xad\x4d\x8b\x6e\x0b\x07\x11\x64\xc4\xc6\x80\x22\xea\xf2\xab\x8d\x27\x7f\xc9\x1d\x58\x84\xac\xc9\x82\x5e\x2d\xc3\x8b\x0b\x92\x9e\xf0\x64\x35\x27\x75\x0f\x35\x6d\xe2\xd4\x12\x59\x93\x6f\xa0\x1c\x06\x6b\xfc\x17\x47\x52\xe1\x70\xa6\x38\xe6\x06\xa1\x44\x63\xb0\x76\x59\x0d\x45\xc8\xb5\x94\xa6\x98\x84\x50\x31\xe7\xac\xf0\x15\x5f\x3f\xb0\x40\xb7\xc5\x49\x48\xd4\xe9\xeb\x03\x28\x35\x1e\x19\x54\x4d\xf1\xe6\x9b\x31\x35\x86\x67\x16\xa7\xa7\x37\xcc\xd5\xeb\x76\x30\xa9\xea\x00\x83\xfd\xa7\x30\x03\x30\xef\xad\x3f\x93\x00\x96\x6d\x32\x1b\xe8\x7f\xc5\x16\xd2\xda\x31\x2d\xe8\x7c\x4e\x53\xcd\xae\x04\x5a\x1d\x67\x1f\x85\xfa\xc4\xb4\x6d\x0f\xc3\xc1\x8c\xaf\x44\x80\x28\x0e\x92\x78\x1d\x20\x8e\x83\x1b\x42\x3e\x06\x28\xc6\xc1\x82\x33\x39\x0b\x50\x8a\x83\xdf\x57\xb1\x90\x44\x04\x68\x8e\x83\x35\x89\x45\x80\x56\xfa\x28\x80\x04\x68\x82\x77\xff\x13\xfc\x92\xdc\x3e\xcd\xe0\x68\x67\x77\x3c\x54\xcf\x03\xb4\x97\xc1\x61\xfe\xda\x57\xaf\xa3\xff\xec\xef\x7c\x3d\x7e\x52\x7c\x8e\x86\xcd\xcf\xa3\x30\xd2\xc5\x7a\x70\xf8\x68\x17\x25\x78\xf7\x97\x11\x18\xfd\xe7\x2f\xe3\x71\x0f\x8e\x37\x3f\xdd\x0e\xd0\xd3\x6c\x73\x62\x7e\x8e\x74\x91\x4d\x62\xde\x5e\x9b\xb7\x99\xf9\x89\x37\x87\x9b\x85\x79\x4c\xcd\xcf\xcf\xe6\xe7\xec\xec\x6c\xf7\x0a\xcd\xf0\x2d\x8b\x17\x3a\x0c\x43\x80\x54\x8f\x93\x78\x9d\x46\xc1\xd9\x8a\x25\xf1\xfa\xe2\x84\xeb\x9f\xf3\x15\x49\xd5\xef\x07\x92\x30\xf3\x74\x3e\x5b\x09\xfd\xf0\x4a\x50\xf5\x73\x16\xcb\x95\x50\x03\xa7\xaf\x12\x49\x10\x5c\x04\x10\xe9\x71\x4b\xa3\xe0\xbb\x98\xad\x62\xb1\xbe\x78\x45\x2e\x85\x7e\x38\x89\xc5\x64\x76\x71\xb8\x14\x74\x7e\x71\x12\xaf\x2f\xbe\x5b\x31\x72\xf1\xdd\x6a\xbe\xbe\x38\x5c\x5d\xad\x52\x79\x71\x46\x96\x92\x2c\x2e\x89\xb8\x38\x9d\x48\xae\x7e\xdf\xf1\x6b\x93\x70\x44\x26\xfa\xc1\x6f\x29\x43\xd3\x1a\xff\x6b\xc8\xf4\x99\xe3\x6e\xec\x0a\xe9\xb0\xcd\xc6\x11\xa0\x17\x58\x0e\x49\x14\x04\x3d\xe3\x16\x57\xf6\x06\x3b\xee\x13\x34\x66\xc3\x02\xf6\x48\x86\x96\xf8\x36\x8d\xa6\xe8\x8f\x06\xa5\xcf\x0e\x09\x57\x72\x62\xcc\xba\x80\xa2\xc7\xda\xf7\x6e\x7c\xa9\x35\xd1\x25\xff\xc3\x62\xf7\x59\x5f\xf3\xed\x7f\x7b\xd6\xcf\x3d\xa8\x1f\xe0\xfe\x30\xe8\x05\x51\xb0\x13\xc0\xde\x14\x30\xb4\x87\x82\x7e\x00\x55\x4a\x6f\x0a\xa8\x7d\xcd\xd0\x22\xf2\x2d\x3b\x2d\x77\x2f\xc3\x44\xbb\xb0\x39\x10\xf6\xc1\x12\xad\x1d\x02\x04\xca\x1d\xd1\x0c\xf6\x9e\x00\x11\xae\xb5\xef\x9b\x1d\x69\x1f\x60\x0f\x88\x50\xcf\x8e\x4e\xb4\x4f\x0a\x3c\x19\x4e\xe6\x9c\x11\x00\xb5\x0f\x21\x86\x62\x6d\x14\xbc\x43\x0f\xfa\x28\xad\x7e\xec\x01\x3e\xdc\x19\x44\x03\x88\x62\x37\xbc\x3d\xb0\xa3\xd2\xc5\x0e\x85\xbb\x80\x0f\xe9\x4e\x1a\xa5\x3b\x14\xc2\xcd\xa6\x0f\x33\x14\x37\x1e\xc5\x1d\xf4\x87\x85\xc7\x62\xa2\xb2\xfa\x6e\xa5\x09\xcc\x90\xe7\xdc\x67\x92\xfb\x32\x3c\x89\x62\xb4\x8e\xe6\xe8\x26\xe2\x28\x89\x28\x3a\x8a\x56\x68\x16\x31\xb4\x88\x04\x4a\x23\x89\x16\x69\x44\xd0\x3f\xa2\x34\x1b\x4d\xc6\x9b\x8d\xc5\x83\xc9\x66\x13\x04\x30\x94\xfc\x2d\xbf\x21\xe2\x65\x9c\x12\x6d\xa1\x62\xa2\x4a\xec\xa6\x8f\x76\x15\x5b\x96\xa1\x55\x13\xa0\xc5\xc9\x67\x96\xa1\x05\xd6\x0b\xe6\x5a\xed\x20\xd7\xa3\xc5\x18\xcf\xf4\x78\x37\x89\x91\xed\x92\xcc\x78\x93\xa1\xcb\x66\x5c\x6d\x19\xdf\xca\xee\xe8\x45\xb3\xb0\x35\x09\x14\x5e\x9b\x0b\x85\x0c\x13\x7d\x9e\x06\xae\x75\x40\x00\xa4\xde\x35\x1f\x6b\x8f\x85\x8c\xcb\xc9\xd6\xf5\x88\x8e\x31\x41\x0c\x53\xe7\x8d\x50\x74\xbb\xac\xdb\x05\x0b\xcc\x20\x62\x9b\x8d\x7a\x5f\x64\x68\x8d\x6b\xc7\x37\xbe\x48\x40\xdc\xc4\xdb\xdb\x02\x35\x3f\x50\x72\x28\xa3\x5b\x7f\x17\x8a\x25\xc1\x04\x89\x30\x16\x57\x69\x71\x4c\x80\x94\x7c\x70\x03\x14\xc3\x73\x81\x97\xad\x8b\x70\x8e\x2f\xd1\x45\x48\xf1\x15\xba\x08\x6f\x9a\xb7\x0f\xb5\xf1\xe8\x90\x35\x73\x12\xc9\xf0\xd1\x5b\xb4\x92\x13\xf5\xb0\x42\x9f\xd4\xcf\x27\xf4\xc8\xb8\x24\x51\x2f\xe6\x29\x83\x26\x3e\xc2\x4d\xa3\x69\xf4\x2c\x37\xd5\x7a\xf4\x16\x5f\x02\x12\x9a\xba\x91\x56\xd5\xe4\x3e\x1c\x74\xfc\x26\x85\x7c\xaa\xa2\x29\x9e\x79\x2a\x46\x27\x26\x99\x3c\xf5\xfb\x89\x8f\x92\xc6\x3b\x72\x89\xf1\x22\xa6\x09\x86\xe6\x8c\x74\xb4\x10\x9c\x6b\x89\xd5\xd0\x1c\xa9\x75\xfc\x2e\x7e\xa7\x45\xb3\x8b\x70\xe5\xa9\xff\xdc\x67\xad\x59\xf6\x11\x4a\x25\xd6\xea\x90\xb0\x11\x7d\x64\xb7\xdb\xd9\xfd\xf9\xd1\x2e\x35\xb1\x57\x24\xcc\xb9\x59\xa3\x70\x04\x13\x23\x14\xba\xc3\x45\x36\xda\x1b\xef\x0c\x36\x9b\x3e\xe2\x18\xb0\xd1\x97\xe3\xcd\x46\x11\x24\x2f\xc0\x51\x1f\xed\x17\xb7\x4b\x87\x79\xfb\xfa\x84\xf4\x87\xf3\x97\x80\x8d\x06\x63\x44\x11\x1b\xed\x8f\x37\x9b\x01\x62\xa3\xa7\x63\x55\x1d\x1b\x7d\x61\x7f\x9f\xe9\x5f\x0e\x61\x94\x17\x7e\x70\x99\xdc\x2d\x98\xd7\xef\x0c\x38\x9b\xf4\x47\x9f\x30\x09\x3f\x6d\x36\xce\xa7\x0f\x65\xd4\xb0\x10\xfa\xa9\x1a\xf5\xcf\x9a\xc0\x3e\x4a\xcc\x99\xc7\xa3\x35\xd6\x17\xd3\x5f\xad\xe6\xf3\x9f\x8c\xe3\x30\x93\x7e\x62\xd2\x4f\x0c\xc9\xb4\x89\x47\x26\xf1\xc8\x46\xa4\xd0\x69\x1f\x5c\x5a\xae\x3e\x7f\xf4\xda\x24\xbd\xe6\x2b\x91\xe6\x89\x0b\x5b\xa1\x66\x44\x8a\xe4\xd4\x24\x1b\x25\x8b\x97\x3b\x75\xd9\x73\x96\x26\x35\x9d\x7a\xb4\x92\x74\x9e\x36\x18\xd3\x5e\xe8\x2e\xa7\x3f\xc6\x73\x9a\xd4\x3f\x77\x8a\x2b\x43\x0a\xfc\xdc\x4e\xea\x51\xe2\x09\x67\x66\xd4\xd2\xb3\x78\x51\xbd\x06\x6c\xe8\xc1\xda\x53\xe1\x19\x33\x46\x19\x0b\xa9\xaf\x1e\x1f\x60\xd1\xed\x8a\x03\x2b\x2b\xb0\x44\x27\x9a\xea\x0e\xa7\x8a\x11\xdf\xb6\xe8\xe1\x41\xa5\x26\x53\xe8\x1b\x32\xe5\xb5\xcb\xc8\x7e\xd3\xae\x8d\x83\xb5\xde\x3b\xa6\xe1\xa3\xab\x1a\xbd\x75\x23\x13\xae\x00\x81\xda\x98\x7e\x24\xc7\xce\x00\x53\x02\x81\x4c\xc9\x15\xa3\x9f\x1a\x06\xd4\xdb\x9d\x74\x11\x2d\x6f\x9f\x4e\x01\xdc\x1d\x90\x7d\x5d\xd0\xa6\x6c\xbb\x37\xff\x28\x51\x53\x78\x4e\x17\xc4\x4c\x9d\xed\xa3\x0f\x66\xea\x82\x28\x69\xed\x7c\x82\x3b\x1d\x05\x6c\x0a\x37\x9b\x14\xcd\xf0\x45\xb8\x54\x68\xde\x7c\x1f\xfc\x22\xbc\x01\x93\xf0\xd1\x6a\x98\x2f\xc2\x49\xf8\x68\x8d\x24\x22\xde\x1a\xcb\x93\xd0\x24\x9f\xb9\x64\x28\x22\x61\xc7\x8f\xaa\x6d\xb7\x79\x94\x4d\xfd\x92\x1b\x6c\x1f\x91\xb1\x15\x1f\xf3\xb4\x20\x0d\x20\x02\xc9\x70\xd4\x47\xfa\xbf\x71\x34\xda\xdb\x47\x5f\x7c\xad\xfe\xff\xfa\xeb\xaf\x73\xb1\x54\x42\xd5\xba\xda\x4b\xed\x8a\x41\xd7\xf6\xe9\x04\x5d\xd9\xa7\x23\x74\xa9\xf8\x75\x19\xf4\xcc\x58\x3f\x5a\x0d\x83\x1f\xce\x5f\x06\x51\x10\xc0\x56\x7a\x43\x15\xd1\x9a\xc1\xdb\x49\x9c\x92\xf6\x3c\xca\x3b\x32\x05\x03\xd4\x87\xd1\x14\xec\x0f\xd0\x60\x00\x5b\xfa\x7b\x5c\xfe\x7e\xad\xbe\xf7\xd1\x75\xcf\x7d\xe7\x91\xf1\x04\x6b\x1a\x32\xdb\x02\x80\xa1\x62\x8a\xb5\xdb\x47\x45\x74\x6e\x30\x58\x1c\xac\x87\x8b\xde\x97\xd1\x02\xee\xac\xf3\xcd\x00\x24\xc3\xab\x9d\x9b\xe8\xaa\x07\x9e\xed\xdc\x40\x74\x6d\xab\xa4\x91\xfe\x59\xb9\x96\x97\xe0\xb2\x17\xe8\xf5\x1f\xa0\xbe\xcd\xc3\x4a\x1f\x2d\x1d\x08\x90\x83\x4a\x94\x3e\x5b\x7a\x10\xa0\x3d\xfb\x59\x56\x4a\x17\x64\x21\x50\xa4\xd9\x5d\x03\xf3\xd1\xcf\xee\xe5\x99\x42\x3d\x3d\xdb\xdb\xdd\x97\xd8\xc5\x47\x50\x67\x60\xd6\x52\x29\x34\x11\xcf\xd1\x14\x25\x1a\x27\x39\x44\xb3\xad\xd3\x85\xa6\x18\x4c\xf0\x6d\x86\x26\x8a\x29\x99\xf5\x82\x23\x23\x37\x8d\x56\xa5\xb7\x58\xbf\x9d\x18\x91\x6b\x32\x9a\xeb\x57\x47\x86\x55\x0a\xd3\x29\x76\x10\x27\x23\x61\xf2\xbb\x61\x9b\x8c\xa4\x4e\xc8\x07\x6a\xa2\x18\xa4\x59\x75\x68\x26\x70\x94\x8c\xd1\x12\x27\xfa\xaa\xaa\xc5\xb5\x1e\x48\x77\x2c\x2a\xc2\x48\x07\xd5\x56\x9f\xe3\xcd\x46\xfd\xd8\x60\x64\x16\x59\x1d\x23\xac\xc8\xc5\x4a\xcd\xd5\x22\x7c\x94\x8c\xa6\x63\xb0\x84\x68\x61\xb7\x1a\xe4\xd8\x81\x85\xcd\x66\x62\x74\x50\x06\x1c\x6e\x2f\x42\x25\x6d\xbd\x61\x76\x37\x81\x30\x7c\x94\x18\xd3\x9c\xa9\xb5\xc0\x76\x95\x96\xa8\xab\x57\xbd\x26\x1f\xb5\x70\x51\x0d\xb3\xad\xa7\xce\x8a\xd9\xd3\xbb\x62\x52\x8d\x0c\x71\x19\x1b\xd2\x14\x27\x49\x03\x59\x5a\x21\x43\x98\x5a\x04\xbf\xd3\xee\x8c\x81\xb5\xe6\x32\x68\x90\x2a\x34\xc8\x4b\x79\xbb\x44\x41\x6b\x14\x11\xb1\x72\x8b\x13\x5f\x7a\x7a\x78\x04\x5f\xb1\x04\xc8\x27\xc4\x10\x87\x7c\x12\x60\x09\x2f\x89\x04\xb1\xdb\x90\x7b\xe6\xb8\xdd\xcc\x51\x35\x97\xbd\xf8\xf0\x68\xed\xe5\xa2\x2e\xd7\x0c\x0c\xf2\x44\x5e\x24\x7e\x69\xfa\x32\xc5\x60\xa5\xd0\x75\xa5\x50\xec\x19\x79\x8a\x56\x0a\xf5\xf6\x9f\x91\x2f\xd0\x4a\x21\xd9\x80\xec\xa3\x95\x42\x23\xc5\xa4\x2c\x71\x8d\xb2\xf7\xc8\x93\xa9\xdf\xdd\xa5\x71\xb3\xa2\x67\x6c\x75\x29\x45\x3c\xb9\x6b\xda\x94\x84\xb5\x33\x78\xe2\x26\x6c\xca\xc5\x22\xae\x1f\xad\x59\x8b\x11\x25\x39\x18\xcc\x30\xdb\x7c\x2e\x0b\x96\xf7\x76\x77\xd7\x77\xb3\x09\x7e\xfa\xe9\xa7\x9f\x76\x4e\x4e\x76\x8e\x8e\xce\x5f\xbf\x8e\x16\x8b\x28\x4d\x7f\x0e\x10\xc3\x17\xe1\x1f\xd6\xdd\x23\xad\xd0\x41\xc4\x6d\xc2\x6b\x14\xdb\xa7\x05\x4a\x73\x82\x3d\xc7\x34\x74\xea\x03\xb4\xc2\xd4\x08\x95\x29\x9a\xf8\x7d\xd4\x51\x1e\x7c\xeb\x5f\x40\x46\x6c\xbc\xd9\x18\xa1\x16\x6e\x36\x74\xc4\xc6\x2e\xb2\xb9\xe6\xf0\xd0\xac\x09\x4f\x2f\xc2\x14\xf0\xbf\x0d\xf6\x36\x9b\xc1\x1e\x22\x56\x48\x9e\xaa\x46\x89\xa0\x09\x25\x8b\xb2\x89\x6c\xa1\x0e\x20\x07\x83\xbd\x61\x70\x78\x12\x44\xc1\xf7\x27\x81\xc7\xb8\x96\x45\xc2\x88\x69\xa9\xff\xa7\x9f\x22\xcb\x01\x59\x24\x72\x3b\xd7\xce\x1e\x44\x6a\x04\x23\x9b\x8e\x4e\xa2\xb4\x37\x40\x27\x27\x91\x82\x4c\x3d\x1a\xc9\x1d\x9d\x9c\x9c\x44\x13\xe0\x06\xe3\x6c\xc6\x85\x44\x29\x5a\xa1\x7d\xfd\x49\x7d\x5b\xa1\x14\xa2\xa3\xc8\x51\x84\xa3\x23\x5d\x85\x7b\xb5\xd5\x24\x65\x38\x3e\x40\x94\x24\xba\x5e\x37\xe2\x27\x94\x39\xb6\x13\xcd\xd1\x9e\xfa\x5e\xce\x60\x9a\x2e\xb2\xec\xeb\x2c\x49\x34\x1f\xd9\xb4\x31\x7a\xed\x1a\xe1\x10\xbd\x7e\xad\xc1\xe0\x0e\x80\x59\xa4\xd6\x0a\x9a\xa9\xdf\x3d\xa8\x04\x79\xc0\x51\xac\xc5\xa5\x43\xf7\x3c\x80\x68\xe1\xaa\x88\x21\x5a\x2c\x74\x15\xb1\xab\x22\x2d\xf7\x21\x85\x28\x4d\xbd\xbe\xa6\x2e\xdf\xd9\xd9\x99\x97\xbc\x48\xd1\xbe\x49\xff\x39\x62\x9e\x80\xe9\x64\xf6\x04\x81\xe6\x35\xb4\xd9\x2c\xb5\x16\x9c\x15\x11\xe3\x23\x7d\xe8\x92\x19\x6e\x36\x57\xdb\x34\x30\x69\x83\x2f\x9e\xec\xf8\xc4\xa8\xbc\xb2\xff\xe0\x8c\x38\x8d\xcf\xee\xe0\x0b\x5d\x5b\x42\xcb\xce\x79\x56\x68\x62\x63\x57\x5a\x6e\x6d\xa5\xb6\x3f\xc5\x91\xa2\xa5\xa2\x25\x4f\xc0\xd4\x57\x1c\x99\x5d\xc7\x4b\x80\x96\x29\xda\x99\xa2\x6b\x7c\x11\x5a\x3b\xcc\x69\x71\x4e\x8e\x41\xa2\x68\x53\xa2\xf6\xc7\xeb\xdd\xc1\x1e\x4a\xd4\xc6\x79\x8d\x92\x51\xaa\x12\xf6\x51\x32\xe2\x63\x0c\x16\x3b\x4b\xb8\xfb\xac\xff\xf4\x2b\xf2\x05\x4a\xd4\xb6\x6b\x52\xbe\x7a\xf6\x54\x27\xb0\x31\x5e\xec\x6a\x8a\x96\x28\x22\xb7\xd8\x55\x64\x2e\x51\xc4\x6d\xa1\x78\x59\x94\xc0\xd1\x6c\xbc\xd9\x2c\xd0\x64\x78\x1d\x5d\x84\x31\xb8\x36\xbd\x2d\x36\xad\x6d\x2c\xae\xe1\x22\x63\x18\x3e\x3a\xd2\x7c\x83\xa1\x22\x0d\xb9\xaf\x2d\x02\xbe\x1d\xab\x7c\xd5\x6c\x5e\xcc\xa9\x12\x03\xfd\xb6\xe5\x9d\x40\xd8\x1d\x0e\x31\xac\x83\xb5\x2a\xac\xf4\xdc\x7d\x03\xa1\x04\x7d\x06\x91\x50\x0d\xe8\xbc\x4d\x42\x52\x78\xe3\xe6\xb9\x20\xd3\x86\x9f\x6d\xc8\x5d\xc8\x9b\x25\xfe\xdf\x16\xfa\xee\xec\xf4\xdd\xb6\x71\xc9\x09\xb4\xe1\x39\x24\x7f\x73\x76\xea\xa4\x2c\x1d\xad\xd6\x54\x91\xa7\xde\x21\x42\x94\xca\x9a\x62\x0f\x28\xf3\xc3\xf9\xcb\xa2\xcc\x2c\x03\x10\x1d\xe3\x9b\xba\x76\xc3\x3b\x6a\xc6\xc7\x68\x34\x0a\x1e\x2d\xd2\x00\x91\x31\x1a\x05\x8f\xd2\x00\x49\xfd\xb0\x08\x90\xd0\x0f\xaf\x03\xc4\xf4\xc3\x87\x00\x51\xfd\x70\x12\xa0\x58\x3f\xac\x03\x34\xd7\x0f\x47\x01\x5a\x8d\xc7\xcd\x66\xac\xc7\x23\x32\x1a\x8c\xc7\x25\x9e\xa1\x04\xf9\x15\x90\x88\x8c\xfa\x63\xa4\xf2\xe9\x50\x6b\x68\x1d\x92\x4f\x92\xb0\xea\xf9\x46\xae\xb1\x7a\x44\x37\x1b\xa0\x36\x96\x1b\xb4\x86\x48\xbd\xeb\xcb\x18\xeb\x0c\xad\x1d\x9a\x5d\xa2\x75\x48\xd3\xa3\x78\xfd\x5b\x8a\xaf\xd0\xba\x22\xef\x11\x4f\x1a\x1d\x90\xfd\x27\x4a\x26\x5c\x87\x84\xe1\xeb\xd1\x62\x8c\xd6\xe1\xdb\x14\x5f\xa3\x75\xb8\x54\xeb\x70\x9d\x7d\xfe\xe1\xc4\x96\xe3\x76\xb3\x51\x05\xb3\x68\xb1\x68\x1f\x06\x88\xe2\xdb\x79\x9c\xca\xa3\x78\x1d\x05\xa3\x9f\x48\x2a\x89\x48\xe2\x75\x3b\x96\xe3\x76\xd0\x63\x28\x8d\x17\xc4\x7c\x3b\xe7\x7e\x3a\x23\x9f\xa4\x4b\x5f\x70\x21\xf8\x4d\xe9\xd3\x07\x42\x3e\x46\x81\xda\x01\xda\x23\x97\xae\x9a\x31\xe9\xa3\xb7\x71\x2a\xc7\xed\xf2\x67\xd5\xd2\xf1\x3c\x25\x51\x70\x72\xb2\x7b\x74\xb4\xab\xf6\xbf\x20\x6b\xf9\x07\x3b\x6a\x50\x59\x12\x57\x65\x7a\xab\x62\xda\x6c\x2a\x82\x95\xcb\xbe\xd9\xe8\xd8\x4f\x80\xe4\xbe\x7c\x73\xc1\x23\x48\x02\xe8\xd8\x0d\x45\x63\x01\x47\x41\x62\x5c\xad\xa6\x38\x3e\xd8\x79\x36\x0c\x1c\x5c\x41\x14\x1f\xec\x0c\x86\x81\xeb\x86\x7a\xef\x9b\xd7\xa3\x78\xad\xde\x06\x26\xb3\x7d\xdb\x1b\x06\x76\x90\xd4\xdb\x97\xe6\xcd\x14\x2c\xea\x44\x73\xcc\x46\xe9\x58\x31\x26\xe9\x78\x7b\x40\x9a\xf9\x70\xee\x85\xe7\x15\xc0\x39\x9c\x35\x5c\x1b\x98\x6b\xa3\x8b\x0a\x82\xd4\x0e\xaa\xa4\x0d\xd7\x4b\x53\xe3\x7b\x26\x37\x9b\xfa\x48\xd6\x29\x62\x75\xc3\xa1\xf2\x39\x5a\x83\x29\x50\x9b\xe8\xd8\xbc\x3a\xe0\x82\xc7\xe2\x76\x74\x84\x12\xda\xed\xf2\x6e\xb7\xa6\xc9\xa5\x0d\x69\xdc\x9a\x0c\xa2\x14\xcd\xd1\x0a\x4b\x40\xa1\x12\x00\x00\xd7\xdc\xf3\xaa\xdb\x9d\xe8\x36\x40\x8a\xdd\xd1\x2c\xec\xe4\xfe\x6e\x8a\x6b\x16\x53\x2e\x40\x8c\xd3\xe7\xfd\x0e\x8e\x77\x76\x9e\x43\x4d\xd7\x01\x1d\xc5\x63\xc4\x47\xf1\x18\x16\x39\x1d\x9c\x99\xaa\xbe\x83\x27\xc5\x17\x23\x64\xd0\xaa\x02\x14\xcd\x30\xaf\xa6\x69\xce\xbe\x83\x67\xa5\x7b\x1e\x49\xb7\x9b\x87\x27\xa7\x05\xaf\x8e\x31\x2f\x5e\x2c\xf7\x5f\x6a\xe4\x3d\xb9\x3a\xfe\xb4\x44\xcb\x72\x33\x26\x55\xd5\x3b\xed\xe0\x65\xa9\xa1\x69\xb7\xbb\x2c\x1a\x2a\x54\x69\xaa\xa5\xe2\xad\x65\x44\x4a\x01\xa8\x1e\x4a\x90\xe2\x45\x31\x82\x58\x00\x0e\x1f\x34\x8a\xcc\x86\x2a\x43\x8b\xf2\x38\x6e\x1b\xf1\x39\x56\x19\xd5\xb0\xcf\x1b\x87\xdd\xc1\xdd\xc1\x0a\x4b\x3a\xf8\xae\xa8\x90\x3e\x3b\x5f\xba\xb1\xd7\x78\xb7\xaf\x94\x23\xa4\xe9\x37\xab\xe9\x94\x88\x4a\xc9\x3c\xbd\x74\xff\x4a\x94\x62\xa8\xe4\xc9\x5a\xae\x80\xe6\x3e\x52\x9b\x62\xc0\x30\xd3\x81\xd6\xc3\x84\xcc\xe9\x82\x4a\x22\x36\x9b\x20\x0c\x10\xc7\x2c\x5c\xc4\x9f\x8e\xc8\xd2\x04\xba\x35\x51\x38\xd4\x0a\xd5\x5e\xf3\x04\x4a\x71\x71\x82\xe1\xad\x20\xa1\x70\x1e\xde\xae\xf0\x4a\xc9\x79\x7e\x64\x29\xd1\xe4\xbc\x7c\xe2\x40\x49\xb0\x18\x4d\xc6\x68\x86\x59\x98\xc6\x53\xd2\xed\x96\x56\x37\x48\x14\x43\x78\x8f\x2d\x60\xa2\xb8\x45\xa9\x7e\x16\x38\x37\x26\x34\x65\xb4\x29\xe1\xd4\x33\x85\xd4\xb5\x9a\x54\x74\x8d\xe7\xc3\x79\x8f\xf6\x62\x30\x81\x51\x6c\x95\xfa\x9d\x59\xb7\xdb\x59\x76\xbb\x8b\x72\x2c\xf8\x04\x16\x21\x85\x3a\xc5\x08\x6d\x36\xab\x03\x5e\x9c\xff\x80\x04\x5d\xa3\x55\x6f\x00\x5b\xe9\xe8\x7a\x8c\x13\x1d\x1e\x9d\x40\x94\x7a\x46\xb7\x0c\xb1\x70\x3a\x8f\xa5\x24\x4c\x3f\xaf\x98\x7b\xab\xd2\x23\x33\x40\x31\x06\x1c\xf3\xc6\xb9\x4a\x31\x0f\xf9\x35\x11\x37\x82\x4a\x73\xe5\x72\xae\x96\x4d\x65\xc2\x94\x74\xae\x8f\x43\x00\x85\xde\x48\xb8\x01\xea\xdc\x6b\x6b\x49\xf3\x0e\xd2\xc2\x0c\x44\xc7\x58\x33\x10\x4a\x4f\xbb\xe1\x32\xa6\xef\xe2\x77\x3a\xc2\xfe\x8e\xb9\x40\x9d\xbb\xcd\x0a\x03\xb8\xd9\xf0\xd0\x00\x31\x24\x91\xcc\x57\x91\x4f\xc7\x01\x85\xa1\x20\xc9\x6a\x42\x40\x45\x70\x31\x4d\xde\x6b\x2b\x4b\x47\x32\xb7\x84\x69\xea\xb2\x5a\x76\x15\x9c\xe8\x68\xa3\x59\x7f\xfd\xba\xee\xdd\x6b\x8b\x8a\x44\x23\xe2\x39\xf7\x78\x1d\xb2\xd9\x80\x06\x14\x94\xc3\x8e\xb3\x59\x8b\xc4\xb0\x53\x0a\xc7\xe6\xf0\x2d\x72\x7e\xfb\x4d\x97\x86\x80\x28\xb9\x43\x3d\x23\x02\x6b\x46\x57\x65\x5b\x12\xb7\xfc\x6a\x23\xa9\x9d\x90\xe5\xb6\x3b\xa4\x17\xf7\xd8\x18\x8b\x11\x1b\x23\x6d\x10\x03\x33\x13\x80\x5e\x37\x89\x38\x84\x19\x44\xb7\x19\x44\x95\x09\xaa\xaf\x6a\x6f\x7e\xa4\xb5\x3b\x88\x4d\x0c\xa7\x39\x6c\xcd\x89\x6c\x33\x3c\x01\xc2\x38\xe1\x54\xd2\x5b\xa2\x5e\x47\xfd\x31\x44\x33\xbc\xd2\x64\xf8\x79\x6e\xda\x9c\xd8\x1b\x00\xf9\x0d\x54\x35\x62\xcc\x62\x62\xcb\x34\x43\xee\x9b\x9a\xd9\x88\x8d\x21\x92\x8d\xb3\x43\x1a\xc9\x82\xde\x0f\x3b\xa9\xb1\x08\xce\x81\x99\x15\xc6\x4e\xcf\x81\xfe\xb8\xd9\xa8\x4c\xe6\x74\x52\x7f\xed\x76\x75\x6b\xd8\x45\x2e\x2b\x5c\x6b\x7a\xf8\x7e\x9b\x45\x23\xdd\x5b\x95\x15\x09\xef\xb2\x18\xd8\x36\x34\x30\xd3\xd5\x12\x37\x19\x8a\xa9\x5f\x7d\x4e\x90\x1d\xff\xd6\x68\xc9\xf7\x55\xee\x40\xe2\x8a\xa6\x52\xac\xf5\xf5\xa3\x0f\x24\xfe\x78\x12\x2f\xb3\x5c\x3e\x28\x46\xd6\xde\xc5\x3f\xfe\x44\x53\xd9\x18\xde\xbf\x54\x9b\x62\xbb\xf4\xc9\x12\x29\xc7\xf8\xb7\x66\xac\xf7\x97\xbf\x22\xb2\x56\x3e\x4e\x92\x7a\x79\x45\x15\x88\xd5\x03\xe7\xa5\xad\x16\x57\x93\xcd\x72\x1d\xd6\xe6\xb7\x01\x8c\x72\x0d\x45\xbc\xa7\x52\x71\x6b\x73\xfc\xde\x0d\x5a\xf5\x2a\x51\xe3\x68\x6a\x4f\x02\x88\xfb\x99\xb3\x56\xa7\x22\x07\x31\x49\x04\x0e\xf4\x4f\xa0\xed\xb9\xa8\xc4\x81\xfa\x1b\x64\x80\x6d\x36\x80\x15\x91\x41\x63\x94\x7e\xc6\x9c\xd2\xa6\xd9\x8c\x93\xa4\xee\x59\xc8\x93\xad\xb4\x6b\xc2\x16\x51\x6b\xce\x80\x36\x04\x26\x36\xe9\xc8\xbe\x8f\xb1\x40\x31\xa6\x30\x02\x80\xbb\xf4\x4f\x54\x9a\x64\x9e\xbb\xfb\xb1\xa3\x59\xcc\x1c\x90\xa8\x16\xc5\xb2\x36\xf3\x79\x5e\x88\x62\x58\x9d\x01\x9a\x2e\x63\x39\x99\x6d\x05\x9f\x4e\x81\x07\xb7\x3b\xa4\xbf\xa3\x0d\x93\xd1\x0b\x9f\x4b\x87\x3c\xa2\x10\x08\x73\x01\xd8\x5e\x04\xba\xb3\x82\x4f\x54\x7a\xe5\xe3\x21\x8f\x62\x5d\xde\x4e\xfd\x1c\x83\xb8\x51\x02\x07\xf1\x36\xe7\x05\xb7\x39\xe1\x8b\x46\xe3\xcc\xe3\xa6\x35\xad\xaa\x7a\x51\x2e\x79\x35\xc8\xaa\xae\x0f\x72\x77\x0e\xc6\x9a\x51\x56\x64\x22\x20\xa0\xd6\x31\x8b\xb1\x76\xeb\x00\x9d\x4f\x84\x8a\x5f\x5d\x8f\xc5\xb4\x68\xe6\x3b\x9e\x20\x99\x89\xe3\xe3\xcf\x15\x76\xd6\x1b\xc3\xca\x2d\x79\x18\x01\xe1\x65\xf3\x2f\xc5\x29\x8c\x15\x6a\xc7\x59\xe1\xad\xc6\xcd\xce\x58\xa4\xb8\xe2\x6c\xa4\xe6\xe2\x1a\xb0\x25\x56\xef\x4b\xeb\x00\xe5\xcc\xc6\x1c\xe8\x43\x5d\x7f\xe3\xe0\x97\x29\x11\xd7\xb5\x83\xfb\x5a\xec\x51\x44\xdc\x35\xc0\x4a\x1b\x3e\x8e\xeb\x81\x70\xa7\x2b\xab\xe5\xa9\xa9\x5b\xe8\x74\x7d\x9b\xa6\x68\x77\xc5\xb6\xb4\x5c\x68\xee\xa6\x94\x25\xfa\x36\x1d\x65\x57\xef\x39\x97\xc7\x4c\x8a\xb5\xf6\x57\xde\xed\x8a\x50\x87\x2d\x4e\x8d\x09\xba\x6b\xa8\xa8\x55\x13\x30\x59\xa1\xa1\xaa\x44\xe3\xf2\xb1\xf3\xea\x11\x07\x60\x97\x11\x32\x18\x51\xad\xe9\x13\x95\x9f\x51\xd1\x27\x2a\x1b\xea\x71\x0b\xfa\x5e\xb0\xaa\x2b\xff\x0e\xd8\xf2\x3a\xef\x01\xb0\xa9\xca\x2d\x50\xd6\x9d\xfc\x37\x62\x41\x65\x83\x00\x95\x6a\x0c\x3e\xb0\x37\xde\xa4\x6d\x3b\xae\xaa\x6a\xbe\x44\xe9\x2a\xb3\x5f\x83\xbd\xd9\xd7\xd0\x90\xc5\x87\x26\xdc\xd2\xfe\x24\x64\x28\x38\x97\x88\x63\x8f\xf6\x99\xab\x0d\x11\x75\x1a\x25\x85\x7e\x0a\xed\x5e\x09\xbe\xc8\xbb\x65\x94\x1a\xb1\x66\x5c\xcc\x48\x12\x49\xc4\x82\x32\xe2\x30\xd5\xae\x85\x14\x48\x45\xc3\x51\x1e\x1d\x91\xb9\x21\x4b\xd1\x1c\xb3\x46\xf4\x6d\xa5\xc6\x9e\x9d\x40\x34\xef\x76\xe7\xa1\x87\xcb\x39\x41\x5e\xe1\x5b\x57\x4f\xa4\x4d\xe9\x1b\xea\x89\xe6\x06\x36\x46\x6e\x4a\x4b\x10\xe5\x31\x7c\x33\x7b\x44\x6b\xef\xf7\xd0\xe9\xba\xf0\x91\xd0\x8a\x87\xf1\x68\x32\xc6\xab\xe8\xbe\xe5\xce\x11\x00\x42\x6f\x82\x2a\x3b\x12\xb0\x3a\x19\x1e\x00\xcd\xcb\xdc\x4c\x03\xb3\x0f\x27\xda\xeb\xa2\x9e\x1e\x39\x13\x24\x9d\xf1\x79\xa2\x24\x73\x72\xd3\x7e\xd3\xd0\x4d\xe0\x51\x9a\x32\x5e\x48\xe8\x87\xa6\xbb\x55\x75\x47\x02\x15\x4d\x44\x0c\xe5\x0d\x44\x34\xbf\xfb\xd1\xe6\xde\x90\x23\x5e\xee\x0b\xdf\x86\xbc\x65\xaa\xd5\x6a\xf2\xc5\x50\xa8\x39\x43\x9a\x16\xd5\xb0\x2b\xdd\x57\x7f\x0a\xdf\xc7\x92\x72\xc4\x31\x29\x46\x60\xb3\xe9\xb7\xca\xda\x01\x0e\x75\x18\x55\x3e\xe2\x45\x00\x00\xcb\x21\x61\xb1\x85\x6c\x12\xd8\x62\x9b\x0d\x7d\xc1\x87\x71\xb7\x1b\xe7\xb8\x18\xa6\x7c\x41\x1a\xa3\xbb\x69\xbf\x60\xa4\x83\xd5\x64\xd8\xfb\xff\x40\x34\x13\x2d\x83\x5c\x7d\x25\x30\xc1\xe8\xaf\xa9\xde\xa3\x5f\x7e\xed\x59\x75\x1b\x69\x5a\xa4\x25\xc2\xe2\xfc\xb6\x55\xd0\xb8\x74\x60\x54\x45\x71\x8f\xc9\xa9\x6e\x23\x8d\x83\xdb\x68\xd1\xa9\x31\x5b\x14\x04\x46\x3a\x02\xa3\xf1\x7d\x2b\x81\xb1\x17\xef\x72\x9b\xcd\x51\xf3\x32\x25\x70\x5c\xa5\xd3\x5b\xe8\xd0\x56\x4c\x2d\x94\xc6\x5a\xb2\x95\x0d\xe1\xe1\x72\x53\x4f\x7d\xd3\xc5\x52\x8f\xe2\x98\x35\x16\xce\x41\xc8\x59\xbc\x20\xfa\x72\x53\x06\xa1\x0e\x34\x58\x5c\x90\xa9\x6c\x9e\xa5\x22\xf5\xa3\x3c\xe2\x19\xbd\xda\xf0\xef\x0f\xb8\x20\xdc\xa4\xff\x2e\xe7\x31\x26\xaf\xa2\x53\xc8\xd2\xd6\xb3\xcf\x3d\x4a\x12\x2f\x39\x9f\x13\x0d\xa3\x0d\xd8\x2d\x1b\x14\xe2\xa4\x21\xad\xb8\xe6\x44\x15\x33\x4a\x20\x9d\x82\x07\x5e\x7d\xa1\xb0\xdb\xed\x0c\x72\x0f\x75\x95\x31\x1f\xd1\x31\x92\x23\xda\xa8\xa8\x2d\x6f\x8c\x15\x14\xda\x8a\xb4\x6e\xf2\xbe\x3b\x3b\x7d\x57\x94\x2a\xdf\x22\xb5\xf2\x46\xa0\xf2\x6b\xf5\x41\xb7\x9b\xd3\xb8\x3b\xc2\x5f\xca\x50\x7b\xf0\x79\x4b\x53\xb9\x4d\xd1\xe5\xc6\xb8\x27\x33\x88\x82\xc2\xe3\x97\x0c\x69\xd2\x0b\x76\x82\x1e\xcb\x2f\x4b\x19\x62\x90\x81\x14\xb6\x8a\xb0\x18\xab\xba\x8a\xc0\xdd\x8d\x7e\x66\xaf\x46\x7f\xd9\x2f\x3b\x2b\xb2\x1c\xcd\xcb\xc2\xcd\xf3\x66\x63\x0e\x59\xcc\xa1\xac\x24\x8b\x54\x6f\x42\x27\xf1\xd2\xb9\xba\x30\x46\xbf\xcd\x57\xa1\x8a\x52\x28\xf0\x44\x85\xc0\x85\x62\xe7\xc8\xbf\x27\x35\xc8\x60\xc6\xfd\x63\x32\x55\x77\x8d\xdd\x4a\xe9\x1f\x04\xf7\x5d\x30\xc5\x05\x61\xa9\xda\x84\xfa\x1e\x84\x0e\xa8\x0c\xf1\x32\x3b\xd4\xcc\x04\x61\xaf\xa4\xd1\x39\xe4\xa7\xe2\xee\xca\x5e\xde\x4e\xaf\x67\x23\x5a\x97\xc7\xc9\x6f\xdc\x28\x1e\x98\x8b\x7f\x53\x8c\x25\xc6\x67\x44\x0e\x81\xc0\x4c\xf7\xc1\xdc\xf2\xd4\x9e\x98\x0e\x4c\x8a\xf3\x47\x4d\xff\x20\xbd\x1e\x8c\x00\x2b\x05\x39\x72\xe9\xee\xca\x65\x89\xe2\xcd\x49\x53\x08\xcf\xad\x3d\xeb\x74\x64\x1e\xf6\x87\xfe\x41\x76\x70\x23\xa8\x52\x7f\x8c\x9c\xf3\xbf\xca\x90\xef\xec\xf8\xbd\xce\x95\x25\xa8\xd3\xaf\x0c\xbc\xd1\xb7\x6c\x67\x40\xb7\xc2\x48\x1d\x8c\xb5\x31\xd4\xee\xad\x6c\x93\x12\x42\x6f\xe0\x76\x76\x90\xe6\x61\xed\x80\x82\x46\x10\xab\x1d\x81\x48\xc0\x48\xeb\xa9\x01\xc3\xd4\x8b\x07\x05\x4b\xa3\xb4\xa3\xe3\x93\xe4\xb7\x2a\x1f\x56\xb7\x1a\x8f\x08\x50\x17\x39\x8a\xa1\x81\x1e\x22\x58\x19\xa4\x59\xbc\x5d\xa3\x66\x9a\x70\xea\x34\x5e\x56\xa7\xdd\x53\xca\x29\xd1\xfc\x52\x36\xb2\x05\x9d\x50\xd9\xb4\x61\x6f\x5d\x0e\xde\x06\xde\x8f\x1e\x82\x31\xe5\x66\x27\x7c\xc5\x24\xde\x06\x48\x29\xab\xe5\x1b\x9b\x70\xa6\xe5\x1d\x68\x31\x78\xeb\xc8\x29\x62\x4a\x00\x92\x75\x37\x5c\x83\xa1\x71\x8f\xe4\x23\x6b\x83\x6d\x85\x26\xb8\xfa\x12\xac\xfb\xc8\x0c\x8b\xd5\x00\xd6\x61\x9a\xf2\x09\x8d\x1b\x98\xdf\xcf\x6c\xdf\xc8\x98\x7e\x0b\x8a\xff\xd8\x6a\x12\xa3\xcb\x6a\x0e\xa5\x52\x4a\x13\xd3\xb4\x76\x53\xc3\x38\x90\x71\xf6\x88\xa6\xb8\xc9\x0a\x20\x8a\x71\xbe\x3f\xb6\x1b\xe7\x52\x51\x39\x56\x0c\x91\xd6\xf9\xd0\x29\xe8\xc4\xe6\x0c\x5b\xcd\x24\xd3\xbe\xa6\x61\x98\x70\xe6\xec\x8e\x6e\xd5\x73\xd4\xe9\x67\xad\x18\x77\xfa\x88\x60\x69\x6f\xe6\xbb\x86\xed\x9e\xa5\xe3\xfb\xfb\xe5\x87\x40\x41\x64\x6c\x02\x6c\x25\x03\xeb\xac\xc9\x56\x91\x65\xf6\xf2\x8b\x0f\x15\xfb\xa7\xa0\x42\x42\xdf\xf7\x76\x67\x30\xf9\x7e\xfa\x02\x53\x0b\x0f\x6b\x80\x87\x8c\x44\xaf\x37\xce\x6a\xe8\x41\x98\x14\xf4\x8e\x79\x70\xe2\xb4\x99\x09\x9b\x1b\x40\x94\x7e\xee\x54\xb8\x4e\xa7\xae\xd3\xf1\xdd\x9d\x4e\x55\xa7\x85\xeb\xb4\x36\x0f\xca\x5f\x06\xe3\x07\x4c\x4d\xba\x6d\x28\x46\x02\xd9\x8a\xc6\x77\x4e\xcf\x5f\x03\x29\xa2\xb8\xaf\x25\xc2\xf2\x74\xd1\x17\x98\xdf\x0d\x23\x19\xd1\x5e\x6f\xdc\x30\x65\xb9\x73\xb4\x7b\x56\x5d\x3e\x44\xa5\xd2\x71\x41\x08\xee\x29\x9f\x4f\x76\x73\xf0\x35\xe7\xb1\x17\x78\xb5\x8f\x2a\x4e\x83\xc7\xb8\x01\xd7\x60\x09\x1e\xca\xd2\x25\x99\x34\x59\x6a\x16\xa0\x7c\x3e\x00\x8a\x5d\x0f\x18\x4f\xc8\x6f\x69\xb8\x92\x74\xee\x9a\x09\x27\xab\x54\xf2\x45\x00\xcb\x90\xd9\xaf\x65\xc8\xee\x31\xf6\x33\x80\x71\x1d\x8b\xab\x51\x4a\x53\x78\xc5\xbd\x00\x8d\xb4\xc2\x84\x2b\xea\xad\x39\x2f\x89\x9c\x13\x47\xef\x46\x3c\xbf\xcb\x2a\x63\x3b\xe7\x8a\x82\x0b\xa6\xfd\xc8\xdd\x16\xfe\x5a\x07\x65\x8e\xd5\x51\x84\xcc\x6d\xfc\x9c\x19\xff\xf8\x25\xd5\xcf\xa7\xaa\x93\xd6\x3c\x6f\x6d\x01\x78\x57\xec\x2e\xcc\x4a\x29\xfc\x8c\xa9\x4c\x8e\x21\x31\x0d\xf5\x21\x22\xf7\x4c\xa8\xbc\x0b\xa3\x9a\xe7\x43\x75\x26\xe4\xd3\xfa\xcd\xbf\xe2\x7e\xaa\x28\x02\xa2\x31\xdc\x6f\x79\xe6\x9e\x12\x80\x06\x3b\xd0\x17\x58\x0c\xf3\x4e\xd6\xe9\x29\xcb\xe9\xa9\x0c\xc9\x62\x29\xd7\xf5\xb6\x4d\xdd\xda\x93\x5e\x79\x44\x34\x41\x57\x05\x69\x23\x07\x55\xf6\xad\x5a\x38\x73\xf6\x65\x54\xeb\x20\xb8\xd9\xcb\xb6\x99\xc0\x92\x83\x85\x32\x3a\x19\xae\xa9\x69\x12\xb4\xe8\x64\x2c\x74\x90\x68\xcc\x61\x66\xa4\x55\x35\xd2\xc9\xcf\xdf\x50\x8a\xe6\xf6\xbe\x73\xcd\x33\x15\xbf\x9c\xbb\x99\xdc\xb5\x1c\x45\xd4\xa6\xf6\x1e\x83\xfe\x72\x39\x27\xa1\x71\x0c\xd5\xe0\x18\xb9\xee\x8a\xbf\xb9\x46\xf2\x69\x69\x34\x74\xed\x58\x3b\x9f\xbd\x8c\x27\x1f\x6d\xad\x65\x5d\x1c\x81\x9b\x8d\xb4\xe6\x3b\xa6\xd3\x21\x4d\x7f\xa4\xe4\x46\x7f\x69\x72\x12\xe6\x9d\xbe\x5b\xc4\x32\x27\xf0\xfe\x8d\x4a\x63\x9a\xd5\x47\x69\x8e\x71\x36\xda\x5e\x0f\x32\x40\x46\xf1\x18\xc5\xb0\x70\x4c\x54\xef\x66\xce\xb5\x41\x3a\x05\xa2\xdb\xad\xac\x81\x36\xad\x78\x57\xef\x94\xe7\x5d\x7b\x9d\xab\xaf\x1c\x00\x21\xda\x5a\x46\xc3\xcc\x8d\x72\xa3\xaa\xca\xd0\x1a\x4b\x05\x38\x1f\x23\x6e\x01\x57\xd9\x29\x26\x28\xc6\xfd\xe7\x9d\xbe\x92\x42\xe6\x98\x96\xf6\xc9\xe7\x90\x81\xb9\x65\x59\x62\x88\xe2\x5e\xcf\x94\x2c\x71\xab\xcc\xbd\x7c\xa0\x72\xf6\x6e\x35\x9f\xff\xbd\xc4\x4c\xfe\x53\x88\xe5\x57\xf9\xd7\x23\x59\xb9\xf6\x7f\x7b\x84\x33\x44\xc8\xe1\x5c\xd9\xd3\x1d\x91\x90\x34\xdb\x6e\xeb\x19\xd0\x8e\x40\xe1\xff\x5c\x08\x6b\xfc\xdd\x36\xe3\xac\x47\x55\x59\xf5\xb4\xb9\x7c\x1c\x50\xd9\x41\xab\x72\xd6\xc1\x5e\x1d\xd3\x16\x8c\x2c\x38\xa3\xa9\xdc\x3d\x23\xe5\xca\xa2\x36\x23\x24\x49\xdb\xb1\x6c\xcf\x49\x9c\xca\xb6\xbc\xe1\x85\x63\xbf\xd0\x46\x7b\xd4\x8c\xbb\xde\x78\xce\x88\x44\x0c\x0f\x76\x95\xb0\xa0\xfd\x1f\xf0\x9a\xa0\xa7\x8d\x97\x24\xee\x3f\x97\x07\xfc\xb9\xec\xf5\x34\x94\x4a\x58\x06\xde\xbe\x39\x92\x63\xa8\x45\x64\xa7\x40\x15\x2d\xa2\xdf\x0f\x98\xf1\x55\x61\x34\x43\x14\x13\x98\x39\x2d\xa9\xb5\x26\x46\x13\x4c\x73\x36\xf4\x79\x07\xc4\x78\x52\x19\x71\x7d\xc8\x9f\xe2\xd8\x0e\xfb\x5c\x6d\x8c\x3e\x40\x8a\x01\x5f\x95\x61\xe9\xe8\x70\xa2\x9d\x95\x56\x2e\xa4\x10\xde\xce\x95\x28\x72\x29\x48\xfc\x31\x9b\x77\xbb\x3a\x60\x14\x28\x5c\x72\x09\xb5\xcd\xae\xd8\x5f\x31\x1b\xba\x96\xcf\x98\x06\xab\x76\x53\x13\x41\x9b\xc7\x9e\xe0\xfe\x73\x72\x40\x9f\x93\x5e\x0f\x9a\xb9\x28\xba\x4a\xc6\xfe\xd0\x29\xf9\xa2\x82\xac\xba\xa3\xc2\x64\x2a\xd4\x7f\xaa\xbb\x09\x9d\xda\x98\x0d\x4d\xb7\x6d\x4a\x93\x69\x01\x34\xb7\x0c\x9b\xbe\x00\x02\x8b\x68\xab\xa5\x1e\x91\x32\x7c\xd5\xc5\xa4\xed\x35\x72\xf8\x36\x9b\x3b\xe0\x4d\xd7\x8b\x05\x91\x82\x4e\x8e\xb6\x01\xfe\xaf\x80\xc0\x50\x04\x79\x77\x1d\xe4\xe1\xbd\xa0\xe9\xd9\xea\x72\xbb\xc6\xb6\x00\xb6\x55\x3f\x29\x51\x29\x7a\xf4\x5f\x94\x26\xc1\x9a\x79\x6b\xc8\x58\x05\x32\x33\x63\x3e\x74\xcd\x67\x08\xda\x19\xbe\xa2\x22\x25\xc0\xfc\x63\x79\x07\xb8\xf5\x8d\x20\xab\x17\x83\x2b\xe3\x5f\x19\xb1\x2a\x5c\xa4\x34\x42\x7a\x7a\x9b\x6f\xc4\x7e\x56\x9d\x56\x59\xe9\x57\x9b\x13\xc7\x3b\xea\x25\x77\xd7\x5b\xc5\x90\xc6\x76\x12\x9a\xfe\xa6\x1a\x78\x50\x33\xda\x39\xde\x03\xda\xca\xbd\xdf\x95\xd0\xf1\x01\x03\x51\x05\xb8\x86\xd2\x85\x33\x3e\x5a\x75\xc6\x97\x77\x8f\x8e\xf8\xb8\x3c\x86\x94\x33\x1d\x94\xb1\x49\x7b\x59\x45\x4e\x1d\x34\x98\x20\x82\x25\x92\x58\x40\x64\x7c\xf0\xfa\xb4\xa3\x5f\x45\xf1\xb6\xf9\x9e\x03\xc8\x4a\xab\x17\x71\xb5\x29\x6b\x3d\x76\xd3\x98\xb1\x7c\xcc\x78\xaf\x97\x1f\xf6\xe7\x74\xbd\x0a\xb7\xf0\x8e\xeb\x2b\xdd\xd3\x5f\x5b\x25\x90\x7a\xc2\x28\xca\xf5\x12\xfe\x2d\x9e\x4c\x62\x91\xfc\x99\xda\x4c\x58\xff\x7e\xc4\x76\x41\xa5\x62\x3d\xd0\xfc\x9a\x88\x79\xbc\xfc\xe7\x6a\xce\x7d\x0c\xd8\x3d\xd7\xb4\x00\x1b\xec\x6a\x9b\xdd\xa7\x1a\xa7\xec\xf4\xf7\x15\x79\x4b\xd9\xc7\x37\x49\xa0\xaa\xc2\x44\xdb\x9b\x76\xbb\x60\xc2\x59\xca\xe7\x24\xbc\x89\x05\x03\x01\xbb\x12\xf1\x72\x16\xea\xbf\x51\x5b\x3b\xc9\x50\xfc\xad\x8e\x70\x75\x4d\x84\x0e\x3b\xd3\x0f\x07\x4f\xdb\xbf\xfa\x55\xfe\xda\xa6\x69\x3b\x21\x4b\x41\x26\xb1\x24\x49\xf8\x0b\xfb\x21\x25\xed\x5f\xb5\xd6\x5c\x57\xf5\x6b\xdb\x1c\x44\xbb\xf0\x5e\xbf\xb0\x00\x05\xfa\xcf\x3b\x2e\x49\xd4\x96\x33\x22\x88\xaa\x24\x9e\xa7\xbc\x3d\x99\xc5\xec\x4a\x71\xab\x6d\x7b\x42\xd8\xbe\x24\xb3\xf8\x9a\x72\x11\xb5\x5f\x29\x48\x18\xbf\x69\x73\xd6\x26\xf1\x64\xd6\xd6\xf5\xff\xc2\x68\xda\x56\x3d\xa1\x09\x11\x24\x69\x4b\xae\x03\xe2\x70\xe9\xc2\x63\xeb\x5c\xed\xcb\x75\x5e\x23\xd0\x85\x49\x72\xa5\x9b\x35\x9d\x81\xa1\xf6\xe0\x5a\x14\xc0\x24\xf4\xbb\x09\x51\xe1\x31\xcc\xcb\xa5\x43\x8f\x79\x85\x3a\x83\x46\x0e\xf6\x24\x5e\xd6\x79\x0d\x7f\xbc\x9d\xe7\xe6\xb4\xfd\xeb\x49\xbc\xfc\xd5\x76\xc2\x4a\xe2\x79\xbc\xb4\x25\x9f\xaf\xa7\x74\x3e\x6f\x53\x35\x2c\x53\x2e\x48\x7b\xa5\xfd\x3e\x9b\xaa\x2c\x2b\x22\xf3\xc3\x4f\x1d\x2c\x5d\xbb\x3d\x30\xe1\xfa\x7d\x50\x87\xcd\xc7\xae\xc6\x79\x23\xa2\x78\x55\x65\xb1\x99\xde\xc6\xe8\x66\x73\x6e\xec\x03\x6f\xe9\x66\x03\xb4\x17\x85\xbe\x69\x97\xe3\xe0\x7f\x09\x7a\xed\x5e\x4f\x25\xb6\x74\x55\x3d\x8e\x64\x8f\x43\xdf\xb3\x53\xea\xfc\x99\xc3\x6c\xdb\xbd\x00\x3f\xdb\xdc\x19\x23\xce\x54\x5f\xa6\xf8\x04\x2d\xf1\x09\x5a\xe0\x13\x74\x8d\x4f\xd0\x15\xbe\x8d\x93\xe4\x1d\x4f\x48\x74\x81\xe2\x24\x51\x73\x55\xae\x95\xc1\xdb\x85\xbd\x99\x45\xb1\x91\xb9\x2e\xb4\xb5\x10\xbe\xd1\x17\x3f\x2e\x80\x84\x28\xc5\x89\xcd\x5c\x18\x4b\x68\x5a\x9d\x42\x14\x03\x8a\x52\x88\x88\xf1\x60\x1a\x6b\x37\x29\x68\x0a\x52\x14\xc4\x49\x12\x40\x74\x0d\x20\x4a\x33\x64\xce\x0f\x75\xfb\x67\xf6\x45\x83\x75\x8c\xae\x88\x76\xa7\x1b\xdd\xb8\xa7\x97\x7c\xc5\x64\xf4\x49\xbd\xaa\xfc\xe6\xf5\xd4\xbd\xa6\xde\xbb\xca\x9d\x56\xb2\xa7\x0d\x8e\x0b\x6f\x7c\x8f\x4d\x43\x19\xce\x75\x3e\x7b\x01\xd9\xc8\x31\x1a\x84\x97\xee\x4d\x55\x44\xcc\xb8\xf9\xf4\x29\x17\xbe\x4d\x8d\xe6\x5e\x21\x35\xd5\x35\xaa\x9d\x44\xce\x3b\x0e\xab\xf5\xe4\xf6\x13\xb8\xff\x9c\x1e\xe4\x52\x6a\xaf\x67\x43\x16\x70\x4c\x46\x54\x7b\x95\x35\x1a\xd5\x37\x89\x09\x4f\xcf\x80\x8e\xaa\x05\x78\x28\xb9\x5a\x76\xf9\xbd\xa5\x4e\x3f\xcb\x80\x05\x06\x29\x72\x59\x03\xfd\x61\x4d\xa2\x18\xfb\x2d\x0e\x4d\x43\x91\x4b\xd3\xe6\x3c\x16\x86\xf8\xae\xe6\x33\x7f\x30\xeb\x93\x82\xd8\x96\x48\x54\xc4\x32\xfe\x7d\xc4\x0a\x1f\xbe\xf2\x80\x3d\xef\xf5\x24\x24\x40\x28\x91\x27\x43\x97\xe4\x8a\xb2\x1f\x96\x49\x2c\x49\xb4\x40\x84\x25\xf6\xf9\xda\x84\x0c\xf5\xfd\xc6\x2e\x00\x44\x2f\x2b\x57\xb0\x01\x09\x69\xa2\x75\xcc\xd7\xfa\x6a\x78\x9c\x6a\x28\xcf\xd5\x53\x81\x8d\x26\x2d\xbf\x27\xc7\xc0\x15\x44\x35\x9d\xe6\x55\xc8\x59\x4b\xfd\x69\x50\xc4\x5e\x85\x1e\x9c\x78\x81\x0f\xd1\x55\x98\xc3\x8a\xaf\xf1\xf7\x68\x8a\x2f\xd1\x12\xaf\x91\xae\x80\x20\x62\xdd\x4b\x5d\xf9\xbe\x94\x33\x00\xd1\x55\xa1\x5e\xbc\x34\xac\xc8\xcc\x7a\x72\x56\x23\x1e\x11\x64\x36\x86\xf3\xf5\x92\x44\x32\xf3\x2e\x12\xae\xcb\xb9\x99\xea\xdc\xf6\xdc\x17\xb9\x2d\x4c\x63\xe8\x3b\x4b\x99\x9d\x9f\x15\x55\x59\x9b\x26\x84\x49\x3a\xa5\x44\x04\xb0\xb5\x28\x3c\x6b\xfb\x26\x18\x43\xc0\xc2\x24\x96\x31\x16\x68\x09\x18\x0a\x56\x7a\x00\x02\x08\x23\xc0\xec\xb1\x80\x8e\xa3\xa2\x3f\x6a\xba\x01\x91\xcc\x8d\x30\x34\x0d\x61\x05\x90\x37\xa5\x70\x40\xf6\x70\x3c\xff\x7a\x5c\x44\x62\x70\xab\xb4\x23\x0a\x49\xa0\x80\x50\x18\x64\xb5\x3e\x00\xed\x9b\xd6\x0c\xb4\xca\x2b\x85\xf9\x2b\xe5\x0c\xb0\x11\x1d\x17\x1e\xbc\x3d\xab\x81\x25\x10\xc8\x46\x41\xb6\x84\xaf\xd3\x2f\xe0\xfa\xe4\xe9\xe7\x35\x9b\x52\x7c\x3a\x2d\x3e\x39\x8c\x2f\x3e\x9e\x01\x52\xf6\x0a\x61\x2f\x06\x4b\x4c\x0d\x57\x44\xa7\x40\x1e\xf4\x4b\x3d\x54\x8c\x90\x31\x55\x90\x68\xe0\xcd\x88\x5d\xc3\x86\xbc\x13\x43\x41\x7c\xef\x11\xa6\x4e\x66\x86\x02\xc2\x17\xb8\xdf\xed\xda\x37\xbf\x42\xc4\xf3\xbc\xbc\x94\x97\x37\xe4\x9d\x02\x72\xc7\xa8\x9c\x97\x65\xc2\x7c\xc6\xd8\x66\xd3\x71\x70\x38\x00\xdd\xcc\x98\x70\x96\x0e\xae\x7c\x6e\xf2\x3b\x22\xf6\xcb\x48\x68\xf2\x49\x0b\x62\x46\x14\xb5\x56\x9d\xf6\x19\xf1\xfc\x5e\x8d\xde\x0f\x72\xc0\x4e\x00\xbc\x2d\xde\x0e\x01\xbc\x9d\xf4\xf0\xa0\x48\xf9\x1e\xc0\xdb\x3e\xc6\x60\xb2\x83\x07\xb0\xdb\x9d\xf9\x97\xc0\xae\xc2\x29\x15\x04\x04\x66\x95\x25\x01\x9a\x41\xe4\x32\xe0\xbe\x87\xab\x2f\x1d\x13\xda\xa0\xd4\xab\x2f\x3b\x17\x26\x42\x71\x65\x46\xbf\x6a\xd8\x39\xa3\x1f\x24\x6d\xc5\x52\x1b\x9e\x4f\xaf\xcc\xd4\x44\x64\x5d\xc6\x69\x4a\x92\x76\xd0\xf3\xf5\x16\x9e\x58\xa5\xc9\xac\x91\x32\x9e\x77\x98\x53\x43\x29\x71\x25\x97\x33\x0a\xb1\xbc\xc8\x9b\x65\x99\x5b\x47\xe0\xcb\xfd\x6a\xf0\x1d\x83\xb1\x6e\x8c\x77\x06\x26\x4c\xa4\xb5\xc9\x29\xc2\x43\x3a\x23\x1d\xeb\x50\xcb\x08\xbe\x9e\x3a\xc8\xce\xf4\x73\xd1\xc3\x03\xa8\xbd\x95\x8b\xb1\x26\x49\xb9\xe6\xcd\x35\x50\x09\xba\x63\xcd\xcc\x68\x82\x89\x39\xd3\x2b\x16\xb7\x3d\xe3\x53\xd4\xc8\x0b\xb8\x19\xbb\x0b\x38\x3a\xe3\xd0\xfe\x3a\xdb\xad\xc8\xbe\xe3\x91\x1c\x17\x65\x0a\x56\xcd\x86\x37\x37\x78\x66\x5b\xd4\x78\x26\xbd\xd6\x9c\x81\x59\x82\x3d\x5a\x36\xaf\x38\xf2\x28\x74\xd8\xbd\xe0\xff\xf9\xdf\xff\xb7\xff\xb5\x1d\xf4\xa4\x1f\x38\xe0\x5e\xbf\x1b\xe5\x90\x9a\x8e\x72\xd4\x70\x49\x47\xcb\xa0\xd3\x75\x7b\x62\x22\x12\xae\x52\xd2\x9e\xc6\xf3\x74\xdd\xb6\xca\xf5\x38\x6d\x93\x6b\x1d\xb4\x37\x5d\x99\xc3\xb6\x02\x7d\x24\x1e\x05\x5c\x49\x28\x0a\xcd\x03\x14\xf0\xe9\x34\x18\xa3\x4a\x94\x59\xb5\x20\xb5\xa0\x5c\xe1\x93\xf5\xdd\xa4\x3a\x40\x67\xa6\x15\x07\xcf\x25\x31\xcd\xab\x8d\x25\x41\xed\x94\xb2\x09\x51\x6c\x7d\x3c\x17\x24\x4e\xd6\xed\x59\x9c\xb6\x97\xb6\xca\xf6\xe3\xa0\xa7\x6a\xed\x05\x8f\x03\x7d\x53\xdb\xd2\xc7\x3a\x23\x58\xbe\xbf\xe4\x9f\x43\x96\x62\x2b\xd8\xc8\x51\x0f\x3e\x0d\x71\x07\x1c\xd5\x85\xa9\xa3\x7f\xe4\x35\x38\x29\x40\xc7\xdc\x75\x42\xfb\x66\x03\x4c\x0a\x1e\x8d\xf5\x69\xbb\xde\xa5\x5d\x85\x11\xd3\x31\x1a\x68\xa6\x8f\x88\x4b\x91\x09\x34\xda\xf9\xfb\x74\xce\x6b\x36\x76\x13\x19\x5f\xba\x6a\xec\xb7\x75\xcb\x46\x16\xd0\xe0\xe5\x27\x04\xce\x5e\x5a\x8c\xb5\x4e\x82\x1f\xd0\x62\x7e\x39\xa4\x23\x3e\x0e\x1d\xb0\x4a\x2a\x57\x04\xd6\x12\x7f\xae\x76\x9e\xdc\x83\x01\x52\xa8\x12\xf9\x97\x60\x9c\xd6\x43\x5a\x3a\xdd\xa1\x45\xf0\xaf\xba\x01\x96\xd6\xac\xd7\x4c\x71\x97\xcd\xa1\x22\x4a\x7a\x9f\x2a\xcc\xf6\x1e\xa0\x02\xbd\x15\xe7\xc0\x5b\xbe\x2b\xd6\x21\x21\x58\xbe\xbd\x13\x1d\x40\xc6\xd3\x90\x70\x45\xa1\x38\x43\x24\xe4\xd3\xa9\x7a\x9c\x4e\x11\xd1\xe4\x1e\x4b\xfd\x83\xc8\x03\x6f\xf5\x9a\x8b\xd4\xbb\x60\x67\x08\x86\xd1\x2f\x49\xef\x97\x70\xf8\x4b\xf2\x64\xf3\x4b\xf2\x44\x3f\xf5\x20\x18\x46\x64\xb4\xd3\x1b\xeb\x97\x21\xfc\x25\x7d\x02\x46\xbf\x2c\x6f\xdf\x66\xe3\x27\x70\xf7\x8a\xae\x4a\x24\x17\x07\xda\xd9\xff\x22\x0d\x72\x6b\x0b\xb5\x5d\x5a\x63\x20\x82\x01\xe9\x05\x81\xe7\xfd\x1b\xfc\x92\xc0\x11\xba\x18\xab\xdf\xdd\x2b\x14\x3c\x1a\x3c\xda\x0b\x60\x91\x81\x95\x2d\x33\x14\xb2\x01\x86\x39\x60\xda\x9c\x52\x60\x20\x36\x9b\x3e\xec\x69\xaf\xd0\xaf\xe6\x3c\x96\x6a\xb3\xef\xc3\x27\xcc\x18\x6e\x74\xbb\x62\x17\x70\x2d\x41\x0e\x60\x56\xb6\x4e\x76\xfb\xae\xf6\x58\x46\x47\xe4\x1e\x07\xe5\xe3\x8c\x86\x2c\x66\xdc\x78\xb3\xc4\x34\x64\x29\x1e\x90\x9d\x67\x88\x8e\x82\xff\xfa\x7f\xa6\xc1\x18\xd3\x51\xf0\x7f\xff\x5f\xfa\x21\x5c\xa5\x98\x86\x0b\x3a\x11\x2e\x7b\xd8\xef\x0f\x90\x4a\xca\xfd\x61\xaa\x0c\xa9\x2a\x13\x8c\xb1\xfa\x94\xa7\xa6\x64\xa2\xfe\xe2\x01\xd9\x7f\xa2\xf2\xe8\x62\x6c\x25\x89\xae\x92\xa9\xbf\xf8\x59\xff\x09\x0d\xd5\x97\x19\x5f\x09\x4c\xc3\x99\xfe\x63\x92\x17\x88\x86\x49\xbc\xc6\x34\x4c\xf0\xde\xd3\x27\x34\x9c\x21\xe3\x92\x0e\xd3\xf0\x46\xff\xc1\x5f\x3e\xa1\x61\x82\xac\x87\x3c\x4c\xc3\x4b\xbc\xdf\x0f\x9f\xee\x7f\xf9\x85\x4d\x5f\x93\x58\x55\xb8\xd6\x7f\xf0\xfe\xb3\x2f\xc2\x3d\xf3\xa9\x30\x08\xa7\xf7\x60\x97\xb9\x52\xaf\x77\xe5\x67\x10\x51\xac\xf7\x17\xfc\x42\x1b\xdc\x0f\x49\x44\x7a\x41\x1a\x34\x06\xd2\x82\xb7\x0a\x23\x9b\x8c\x1f\x1b\x63\xa0\x0e\xfc\x18\xa8\x03\x1d\x03\x55\x2d\x62\xe3\x43\x22\xa4\xe9\x2b\xca\xa8\x66\x8b\x9b\x63\x61\x1d\x3b\x32\x19\xb7\xa7\x3a\x67\xdb\x5e\xb8\x87\x2d\x19\x4e\xf8\x9c\xb3\x77\x5c\x6a\xa3\x2c\x6d\xfe\x32\xe1\x8b\x65\x3c\x91\xb8\x33\x40\xd2\x3a\x1a\x3a\x5b\x5d\xfa\x5e\x4e\xcd\xa7\x94\x2c\x63\xc5\x0b\xd5\xbf\x5c\x13\x71\xc9\x53\xa2\x35\x50\x79\x7d\xba\x6e\x9b\xed\x88\x4c\xe8\x22\x9e\x1f\xd1\x2b\x2a\x53\xdc\x47\xd2\x47\x9a\xea\x57\xd8\x72\x1e\x12\x46\x8a\x30\xda\x41\xce\xdd\x26\xf8\x2e\xfd\x9f\x0c\xfa\x4f\x9e\xc8\xde\x80\xec\x7c\x99\x07\xe5\xf1\xfc\xed\x09\xb8\xab\x33\xc0\x50\xf2\x57\xf4\x13\x49\xb4\xf3\xe7\x18\x6b\x07\x92\x1c\xc5\xaa\x5a\x1d\x5f\x58\x0d\xbf\xc8\xdd\x97\x54\x06\x69\xb3\xd1\x71\xe4\x36\x9b\xda\xe0\x05\x8b\x40\x7b\x43\x72\x2e\x17\xd4\x24\x5b\xb3\x81\x18\x83\x78\xb3\x21\xd6\xcd\x79\xc1\x64\xa0\x4a\x25\xf0\x36\xc5\x85\x93\x83\x61\x10\x05\x51\xa0\x83\x82\x04\xb9\x03\x87\x38\xa4\x6c\x32\x5f\x25\x24\xd5\xbe\x41\x86\xb1\x8b\x57\x11\x06\x70\xd4\x1f\x3b\x2f\x18\x71\x6e\x85\xee\x57\xb8\x17\x0d\x5a\x31\x0e\xfa\x81\x5a\xfb\x24\x96\x66\x78\x16\xf1\x27\xd0\x47\x72\x87\x40\xd8\x8b\x8d\x9f\xd8\x14\xeb\x76\xf3\xc9\x1c\x06\xed\xa0\x47\x01\x43\x04\x46\xbc\xe5\x74\x52\xbd\xb8\x37\x87\x19\x4a\x31\xb3\xc2\x44\x6c\x2a\x94\x62\xc5\x26\x20\xd5\x0e\xfd\x76\xf7\x9f\x7d\x01\x91\x8d\x6a\x12\xac\x03\x88\x62\xfb\xe5\x6f\xfb\xcf\xbe\x40\x26\x2a\x8a\xf1\xc7\x05\x52\xbd\xd8\x53\x64\x63\xa6\x04\x33\x9b\x6a\x88\x43\x8a\xf2\xb0\x2a\xc1\x22\x80\x5b\x70\x50\x4d\x4c\x23\xda\x6e\x36\x9d\xda\x94\x91\x83\x01\xd9\x87\x1a\xf0\xd4\x61\x27\xca\xe3\xb8\x68\x87\xd3\x5b\x6a\x83\x06\xae\x22\x01\x95\xc3\xc1\xe8\xfd\xc1\x02\x9f\xd3\x48\x9d\x29\x7f\x0b\x90\xa6\xaa\x26\x57\x41\x77\x53\x14\x14\x2f\x01\x0a\x58\x1a\xd8\x10\x0c\x0e\x05\xca\x0d\xf7\xca\x4d\xec\x0e\xc8\x7e\xaf\x54\xdf\xee\x80\x3c\x43\x22\xf7\xb3\x51\xdc\x2c\xda\xbe\xec\x86\x77\x7c\x8b\xfa\x88\x61\xf2\x02\x0f\x86\xde\xda\x22\x30\xf2\x83\x6d\x20\x8a\xc5\x90\xe4\xeb\x4c\xc0\x88\xb5\x62\x60\x29\x96\xb7\x93\x51\xb5\x93\x35\x8c\x9c\x0b\x25\x9e\x2f\x73\x0e\x88\xea\xd8\xdf\x9e\xf5\x51\x43\x3f\xb6\x74\xa1\x11\xfa\x01\xd4\xa2\xcf\x47\x42\x96\xf6\x43\x7a\xca\x3e\xcc\xf8\x9c\x58\xd7\xce\xda\x5b\x79\xbe\x35\xfe\x12\xf6\x7b\x66\x77\x6c\xec\x00\x33\x1d\xf0\x30\x46\xb1\x34\xd6\x94\x41\x94\x9d\x6c\x05\xfd\xa0\x07\xfc\x15\xe5\x0f\x71\x10\x69\x8c\x31\xd2\x9b\xa5\x99\xb9\xec\x35\xea\x6b\xbe\xad\xa1\xe7\x2b\x46\xa5\x56\xcb\xc2\x1c\x3b\x2a\x48\x3e\x0c\x82\x28\x68\x17\x3e\x69\xad\xab\xd9\x3e\xca\x97\xbe\x57\x8b\xe2\xe8\x4c\x88\x1a\xe2\xe9\x5d\xca\xf5\x09\x93\x21\x08\x60\xe4\x1e\xdb\x41\x55\x5c\x2a\x6d\x94\xc5\x1e\x48\x0c\x89\xad\xb9\x7c\x21\xf7\x6e\x5d\xf9\x9e\xe5\x7c\x0c\x91\x17\x36\xbe\x8b\x26\xfe\x05\xf6\x39\x29\x43\xc7\x1b\x92\x80\x18\xa7\xa4\x10\x69\xca\xa2\x13\xf6\x9f\x91\x2f\xe0\xdf\xf6\x9e\x22\x4b\x56\x74\xe2\x33\xf2\x14\x2a\xec\xb2\xd3\xa1\xd3\x14\x6d\x50\x69\xfe\x3c\xa9\x0f\xf0\x6f\x03\xb2\x8f\xfc\x45\x17\x49\xeb\xca\x51\x7f\xf1\xd6\x9e\xfe\xf0\xcc\x7e\xc8\xee\xe3\x57\x4d\xbc\x16\xcf\x17\xcd\x3d\x9e\x68\x96\x9c\xcf\xd5\xb6\x68\x64\xe2\xb9\xa2\xc9\xb0\xc9\x77\x89\xfe\xd4\x1c\x99\xa2\x95\x47\xe6\x13\xe4\xf7\x15\x49\xe5\x21\xa3\x0b\x3d\xd1\xaf\x44\x5c\xba\x81\x5b\xdc\xf5\x53\xcd\xb6\x48\x28\x88\x89\x4e\xb4\x25\x86\x3c\x19\x95\xfd\x33\x8d\xfa\xe3\x31\xd0\x3c\x2b\xc9\x61\xad\xba\x2a\xa9\x9f\xfe\x9b\x63\x60\xdf\xfa\x59\xb5\x6e\xf6\x1f\x77\x87\x5c\x47\xaa\x11\x50\x47\x26\xab\x7b\xae\xa9\xbb\xac\xd1\xc3\x56\xd4\x55\xbb\xbc\x9a\x6b\x09\x3a\x72\x44\xc6\x35\x20\x75\xbf\x6b\xf7\xec\xec\x5c\x94\xb3\xa6\x92\x2f\xfd\x9c\x76\xa8\x27\x31\x9b\x90\x79\x65\xa4\xb5\x79\x57\x06\xfc\x2b\x89\xf7\x71\xa0\x06\x53\x90\x89\xce\x16\x18\x9b\x3e\x92\xbc\xd4\xba\xb0\x94\x48\x3f\xac\x7b\x21\x0c\x10\x2d\x36\x98\x22\x2f\x5f\x1f\xbe\xfb\xf6\xf8\xec\xf8\xbc\x31\xeb\xb9\x9f\x53\x57\xda\x98\x8d\xd5\xb2\x6d\x6b\x3b\xf5\xdb\x3e\x16\xa2\x31\x13\xf7\xf2\x68\xa7\xb6\xb1\xbc\xaf\x4f\xb1\x5f\xef\xe5\x8a\xce\x93\xd3\x79\xf2\xa3\xd6\xba\x35\xe6\x7f\xe7\x65\x9f\xdc\x59\x33\xf7\x6b\xbe\x22\xf2\x88\x90\x65\x63\xc6\xa4\x9c\xef\xef\x64\x7d\x47\xfb\x73\x2f\x33\x4d\xef\xee\xdb\x49\x29\xaf\x59\x52\xcd\x13\x5b\xca\xf8\xbd\xe0\x0b\x9a\x36\x4f\xd8\xca\xcb\xf9\x91\xac\xdf\xb0\x3b\x6a\x3d\xf4\xf2\xce\x39\xff\xb8\x5a\xda\x39\xe1\xcd\xb3\x37\xf3\xf2\x2f\x88\xb8\x22\x5b\x47\xec\x51\x35\xe7\x3b\x92\x4a\x92\x34\xe6\x3d\xf2\xf2\x32\xc5\x8e\xcd\xe9\x1f\xe4\x0e\xa8\x2f\xbc\xfc\x46\xcb\xf6\x81\xca\x19\x5f\x35\xe7\xfe\xc1\xcb\xbd\x5c\x09\x72\xa8\xfd\x2c\x35\x66\x3d\xf6\xb2\xa6\x77\xa0\xc3\x7b\x2f\x9f\x8c\x3f\x36\xcf\xc3\x37\xce\x3d\x15\xab\xd3\x28\xad\x0e\xc6\x24\x2b\xa9\x1e\x8a\x25\x57\x58\xe0\x37\xd8\xe7\x77\xca\x46\xb6\x47\xb1\xac\x46\x98\x36\x0e\x46\x61\xb7\xdb\xa9\x9a\x08\x67\x46\x97\x53\x31\x2d\xf5\x20\x42\xee\x45\x21\x01\xe5\x0c\x4b\x25\x43\x35\x5d\x42\x69\x38\x71\x74\xd7\x2c\xea\x06\xb7\xa5\xc3\xa3\x36\x71\x9e\xd8\x10\xc7\x22\xbf\xab\x1f\xe3\xd1\xb8\x25\xc5\xda\x44\xc0\x2f\xf4\x71\x72\xb3\x91\x3b\x3b\xed\x17\x7d\xd5\x21\xc0\x2a\x77\xda\x9e\xc3\xd8\x06\xfb\x74\x86\x55\x13\x1d\x93\x8a\xc0\x5b\x8a\x6f\x89\xe2\x34\x22\x92\x65\x53\xca\xe2\xf9\x7c\x7d\xab\xea\x67\xdd\xae\xd5\xcf\x6b\x0d\x0c\x0f\x0d\x58\xb0\xdb\xb5\xc0\x70\x98\xe7\xa7\x53\x40\x2d\xf7\x42\x43\x5d\x5b\x1e\x3e\x2a\xce\x2a\x6e\xc7\xac\xaa\x8c\xe8\x3d\x5b\x9b\x9a\x56\x55\x00\xda\xf2\x94\x60\x7d\xd3\x6a\x12\x4b\x10\x83\x92\x01\xaa\xa7\xe6\x6b\x55\x15\xdb\x15\xcf\x4b\xa3\xb1\x8b\xaa\x36\x1a\xb7\x4a\xd1\x39\x09\x24\x23\x36\xee\x76\xa9\x8e\x92\x00\xbb\xdd\x07\xfa\x13\x18\xb1\x31\x0a\xf4\x10\x06\x70\x68\x45\xc0\xdb\x8f\x64\x1d\xa5\x40\x22\x55\x93\xe5\x06\xc3\x00\x16\x37\x55\xac\x25\x69\x06\x23\x5b\xb4\xa3\x75\x97\xa6\x78\x1e\xce\x36\x05\xb6\x7e\x57\x95\xfa\x97\xb3\xac\x85\x56\x6b\x55\x0e\x47\x0f\x7d\xaf\x5e\xf9\xa6\xdd\x01\xda\x65\xac\x9c\x11\xa6\x1d\xc0\xaa\xd9\xd6\xf1\x88\xcd\x8c\x6d\xb9\xb5\x62\xb2\x37\xbb\x96\x35\x35\x34\x7e\xb3\x95\x6a\x65\x78\x01\xe7\xc4\x83\xb3\xbc\x83\x7b\x8e\x24\x19\xb9\x01\x62\xb3\x01\x02\x5b\x62\x0d\xa1\xc7\x84\x68\x8f\xa6\xfe\xa1\x09\xd4\xa8\x39\x07\xd6\x2e\x8f\x40\x0f\x91\xb9\x8e\xef\xee\x1f\x97\x14\xb9\x35\x6e\xde\x99\x7d\x5e\xc4\xb7\x36\x77\x84\x86\x14\x58\x0b\x39\x18\x81\x3c\xf4\x33\x2a\xc5\x87\x13\x43\xa9\xaf\x2f\x8a\x0a\xd7\x07\xa4\x62\xeb\xa0\x1e\x4f\x10\xa3\x14\x66\x73\x00\x18\x76\xc1\x80\xb5\x8f\x41\x1d\x1d\xd9\xae\x51\xed\xf2\x55\x5f\x1f\x33\x08\xec\x7e\x6a\x8c\x27\x12\x4d\xae\xcd\xbd\xab\xf1\xfa\xc6\xe8\xed\x3c\xbe\x24\xf3\x48\x31\xf2\x4c\x46\x65\xb3\xeb\x41\x97\x8e\xfa\x63\xb7\x58\x47\x83\xfc\x6c\x40\x3d\x67\x48\x8a\x75\x1a\x8d\xc6\x88\x2f\xd5\x4f\x6e\x8b\xc0\xf1\xad\x02\x35\x4a\x81\x0e\xe2\x27\xf8\x4d\x94\x82\x01\x44\xe6\x73\x94\x82\x3d\x98\xa1\x3b\x68\x1d\xe0\x9f\x71\x91\x8c\xb7\xbc\x49\xe4\x75\x1c\x4a\xeb\x49\xc6\x11\xb7\x68\x96\xa0\xbe\x25\xcc\xdd\x83\x48\xf3\x13\x1d\xf2\x89\x4c\x56\x92\xb2\xab\xd0\x9e\x34\x3d\x8f\x9f\x43\x85\x2e\xaa\x1e\x3c\x40\xac\xdb\x05\x14\xef\x75\xf9\xa8\x3f\x1e\x32\x4b\xfc\x22\xfb\xa6\x9b\xd9\x6c\x00\xa0\x98\x15\x74\x91\x1a\x1a\xc1\x20\xea\xc3\xc8\x60\xa8\x26\xc6\x14\xbb\x2f\x88\x8f\x06\xe3\xf2\x3d\xd6\x36\x75\xa1\xb6\x74\x1c\x69\xed\x9a\x68\x64\x9a\x45\xd6\x78\x7f\x0c\x91\x7a\xb5\x91\xb8\xfa\x26\xec\xd5\x20\xa2\x98\x1b\xb3\x7b\x13\xac\xea\xa9\x8b\x43\x15\x87\x7a\xfa\x7b\xbd\xdc\x63\xc6\x68\x30\x46\xf6\xfa\x5c\x66\x32\x7f\x11\x15\xb9\x18\xd6\x19\x38\x56\x12\xf6\x84\x33\x49\xd9\x8a\x98\x6c\x5f\x46\x1c\xc7\x21\x5f\x2a\xce\x7e\x09\x20\x8a\x43\x85\x1f\xe6\xa5\xc8\xea\xe2\x60\x69\xbd\x21\xa0\x18\x50\x6c\x32\x42\xef\x94\x9a\x8e\xa8\xe7\x6e\x69\xb3\x79\xd6\xc1\x58\xf5\xaa\xdb\xdd\xb3\x4f\x10\xde\xc6\xb8\x9f\x57\x9b\xd1\x29\xd8\xc7\x2e\x13\xe8\xd0\xcd\x46\xc1\xf9\x82\xea\x77\xf5\x78\x40\x47\xfb\xba\x94\xe9\x8a\xee\x86\xbd\x88\x40\xa7\xe0\x59\x5e\xd6\x7e\x3f\x50\x18\x5e\xe4\xa6\xe6\x72\x30\x2f\x4a\x50\x3f\xeb\x5e\x29\xeb\xde\x18\xd9\x71\x50\x04\x9f\x43\x57\x68\xb4\xa7\xeb\xbf\x67\x84\x32\x8e\xa5\xf3\x47\x13\xfb\x24\x08\x8f\x9e\x21\x32\x46\x0c\xf7\xf3\xad\x54\x60\x8a\xb5\x6f\xf6\x2f\x34\x0e\x58\x8c\xe6\xc5\x42\xcd\x27\xb5\x3f\x1e\xaa\x64\xeb\xeb\x17\xb9\x9b\x92\x19\x18\x71\x94\x8e\xb5\x5b\x7c\x4d\x52\x4a\x0e\x89\x1c\xae\x99\x9e\xe5\x28\xe5\xa8\xb1\x85\x5e\x75\x72\xd4\x47\x7b\x08\xed\x8f\x21\x1a\x3d\x45\x96\x38\x87\x86\x09\x19\xb7\x2c\x0a\xe6\x47\x80\x2c\x54\xa4\x06\x40\x34\xda\xd3\xe6\xc8\xfa\xbe\x44\x4d\xa6\xcc\xf7\x83\xe0\x92\xf3\x39\x89\x7d\xfb\x83\x6e\x97\x68\x92\x69\x70\x64\xb3\x11\xb6\x91\x3d\xdb\xc8\x68\x0f\xb9\x46\xec\x97\xfd\xfc\x8b\xb9\x07\x0a\xbd\xbd\x27\xf1\x79\x30\x7d\x16\xb9\xa3\x8f\x24\x4a\x2e\xa5\x0b\xd5\x92\xf4\xb8\x03\x5c\x8f\xec\x39\x94\x9e\x7e\x39\x92\xa8\x62\xa7\x43\xed\xcd\x1d\xe3\xb7\xd2\xf1\x6f\x2d\x81\xc5\x88\x8d\xe8\x78\x9c\xd5\xf7\xf0\x59\xd3\xde\xe8\x39\x76\xfb\x48\xd6\x5a\x43\xc7\xc8\x8d\x16\xa1\x90\xc2\x20\x6e\xe5\x39\x14\x2b\x74\x32\x02\x93\x89\x1c\xcc\x99\x24\x4c\xa2\x39\x4e\x80\xb6\x26\xb6\x76\x3a\xda\x0d\x9e\xe5\x52\x15\x17\x37\xc7\xc5\xab\x71\xf1\x36\x87\x10\x75\xe6\x9b\x0d\x55\x4f\xfe\x6d\x88\x32\x4b\x3c\x87\xaa\xa6\x6d\xde\xc8\x9a\xcc\x49\xd4\x5c\xde\x55\x1f\xdc\xbe\x8d\x35\x75\x9f\xfa\xdd\xe7\x5e\xf7\x63\xaf\xfb\xa9\x3d\xb1\x9d\x0a\xbe\x00\x44\x7b\x90\x6e\x80\x56\xbb\x9d\xb7\x3b\xa5\xde\xa5\xdd\x1e\x67\xdd\xad\xad\xe0\xd0\xc7\xf6\xd4\xee\xe2\x13\xd8\x60\xe9\x49\xfe\x0c\x8e\xfb\x76\xe5\x32\xc7\x77\xed\x89\x29\x03\x73\xa4\xb9\x49\x81\x5c\xd7\x23\x86\x5c\xc7\x23\x6e\x0d\xe9\xd2\x28\x46\xb6\xd3\x51\x9a\x19\x16\x77\x86\xe7\xba\x5f\xfa\x9e\x66\xde\xc6\x0a\xcc\xe0\x70\x66\x7a\xd0\x38\x16\x19\x84\xd1\x2c\xb3\x91\x78\xff\x7f\x01\xa6\x59\x80\x59\xfe\x93\x02\xcc\x74\xab\x00\x83\x16\x77\x2b\x37\xe7\x34\x95\x44\xbb\x9a\x18\x8d\xb7\x38\x64\x7e\x6b\xb3\xdc\xe3\x10\xb4\x5c\x5d\xee\x29\xb3\x81\x09\x0b\x9d\xf1\xb4\xc9\xab\xd9\xe4\x06\x95\x62\x63\xbb\x85\xc9\x8e\x1a\x97\x4a\x9b\xde\xe0\x38\x7f\x06\xf9\xc7\x91\x2c\x59\x5a\x69\xac\xa8\x14\xf7\xac\xfc\xca\xf0\x48\x41\xaf\xae\x88\xf8\x53\x93\xa4\xda\xf5\x27\xa7\x55\x69\xb4\xd1\x1b\x65\x3e\x52\x86\x9d\xb7\x1b\xf0\x52\xcb\x17\xd0\x69\x30\xf3\xc9\xbc\xae\x88\xa6\x24\xbc\xd0\xb6\x46\x24\x79\xc7\x8d\x25\x6b\xaa\xef\x2d\xd4\x52\xf1\x6d\xe6\xc4\xd7\x86\xaf\x0a\x58\xb7\xb1\x68\x01\xaa\x39\x8f\xb6\x77\x5d\x40\x24\xf4\x1a\xbf\x2a\x05\x48\xcf\xfd\x10\x6c\x5f\xe3\x95\x15\x8e\x84\x92\xac\xd5\xa8\x69\x1f\x0e\x9a\xe7\xce\x0f\x55\xec\x0a\xb7\xbe\xfd\x6a\x07\x35\xa4\x7c\x12\x64\x04\x8a\x3a\xfe\x91\x6e\x97\xbd\xc8\xef\x51\xeb\xab\xc9\x36\x9a\x81\xe3\x67\x15\x1d\xd5\xee\x1f\x2c\xcf\x43\xb2\x2c\x6b\x35\x71\xfe\x72\x18\x18\xa9\x5e\x31\xfe\x8c\x4b\xef\xf2\x79\x14\xd4\xee\x48\x9b\x2c\xee\x92\x47\x00\x4b\x91\xdb\x73\xd7\xdb\x6b\x5c\x72\x44\x5e\x8e\xfd\x90\xa3\x3f\xd2\x22\x44\xcd\xb8\xc1\x5a\x17\xf6\xca\xee\x0c\xfd\x5b\xa7\x62\x0c\x1f\xa4\x88\x90\xda\xb1\xa1\x76\x60\x88\xb5\x03\xc3\x82\xa6\x40\x8b\x96\x9a\xf9\xf3\xec\xba\x5b\xbe\xd9\xb5\xb5\xd4\xdb\x6c\x3a\xd4\x8f\x45\xdf\xaa\x5e\x4e\x2f\xdc\x36\x1a\xba\x6b\x6d\xdd\xfe\x5f\xf6\xde\x6d\xb9\x6d\x9d\x59\x18\xbc\xf7\x53\xc4\xfc\x13\x6d\x40\x6c\xc9\xa2\x9d\x64\xad\x8f\x36\xac\xca\xc1\x39\x27\x4e\xe2\x9c\xb5\xf4\xb9\x68\x09\xb2\x98\x48\xa4\x02\x42\xb6\x95\x48\xfb\x7a\xae\xe7\x5d\xe6\x05\xe6\x51\xe6\x49\xa6\xd0\x20\x48\x90\xa2\x64\x3b\x2b\xfb\x9f\xbd\xa7\x56\x52\x65\x91\x20\xd0\x38\x35\x1a\x8d\x46\x1f\x66\xe4\xe7\x02\x6c\x0d\x4f\xed\x23\xfc\xa7\xa5\x72\x16\xd7\x6a\xa1\xf6\xb5\x7a\xa5\x0e\xc5\x99\x58\xa5\x56\x2b\xc4\x01\x8a\xda\xa8\xaf\x16\x37\x53\xc7\x4e\xea\xe5\x98\xc4\x34\xbf\x9b\x2b\xa9\x6a\x67\x93\xa0\xe5\x3c\xa8\x5b\xda\x91\xdd\x8a\x4e\xa5\xc1\x9a\xf0\x33\xb5\xb4\xb8\x31\x0c\x48\x01\xb7\xcd\x6e\xb0\xe9\xd9\x9a\xdf\x7f\x87\xce\x64\xc3\xba\xd6\x91\x63\x95\xa3\x99\x90\x27\x84\xc3\x29\x91\x26\xc4\xc6\xe2\x94\x65\x1a\x33\x69\x81\x53\x2e\xad\x11\x7e\xc8\x93\x9e\x08\x27\x32\x16\x49\xfb\xb2\x0c\x15\x5c\x4e\x1e\xba\xa7\x14\x6c\x64\x99\x38\x0a\xfa\x13\x27\xe8\x92\x5a\xb4\xeb\x69\xbc\xac\x42\x84\xba\xf8\x87\xf5\x58\xc1\x7a\x1c\xfe\x4d\xd6\xe3\xe2\x0a\xb2\xd3\x23\x9b\x21\x6c\x5b\x4c\x08\x8a\xea\x20\x8f\x50\xb6\x91\x8d\x58\xac\xe5\x14\x5d\x9a\x0d\xa7\xca\x32\xfa\x67\x6f\xb9\xea\xde\x42\x22\x0a\x53\x36\xca\x34\xe1\xa7\x1a\xd5\xf2\x24\x13\xa3\x7e\x9a\xca\x1d\xfb\x4c\x76\x7a\xdd\x8d\x8a\xe1\xec\x67\x67\xba\xb6\xe8\xf4\xba\xac\xef\x87\xa4\x4f\xdb\x9c\xf4\x41\x40\x31\x1c\x15\x1c\x92\x18\x3a\xbd\x2e\xa5\x7e\x95\x2d\x54\x3f\xf5\xdc\x6a\x05\xd2\xaa\xd5\xfa\x4d\x7e\xc6\xc5\x6c\xfd\xc1\x8f\x15\x0e\x7e\x0a\xe9\x3b\xa6\xaa\x5c\x20\xde\x65\x7d\xba\xc8\x17\x4f\xb0\x62\xf1\x4c\xd1\xbb\x44\xba\x78\x12\x36\xca\x17\x4f\xa2\xd1\x60\x54\x58\x3c\x41\xba\x78\x82\xd2\xe2\x11\x0b\xc2\xe1\xe7\x02\x8a\x34\x8b\xfa\x3f\xf5\x69\xe7\x1d\x73\x8e\x8f\xb3\xab\xdf\xe3\x63\x27\x5f\x0f\x2f\xcb\x81\xd7\x8e\x8f\xb3\x0b\xd2\xe3\x63\xc6\xd8\x3b\xdb\x52\xc3\x22\x58\xff\x10\xb1\x4a\x22\x46\x6c\xf1\x09\x1a\x80\xa0\x70\x93\x19\x35\x1c\x2f\xb7\xc1\x21\xe9\xe5\x4c\xc1\xcb\xf4\x66\x58\x0a\xd4\xb7\xc9\x3b\x51\x77\xc3\xd8\x10\x46\xd9\x66\x9a\xde\x08\x56\x85\x5e\x8c\x6b\xb5\x7b\xfa\x76\x25\xcc\x11\x52\x5f\xf4\xbd\xae\xe0\xf2\x5e\xff\xff\x80\xcb\x7b\xf0\x0f\x6a\x5e\x09\x35\x75\xd4\x71\x8f\x82\x47\x15\x5e\x16\xfd\xba\xf3\x0a\xbf\xee\x16\x75\xd8\x64\x4c\x2c\x68\x65\xb0\x34\xcb\xc3\x87\xe2\x88\x78\x47\xe8\x40\x69\x15\xd6\x12\xd9\xb4\xbe\x56\x6c\x75\x64\xc9\x31\xbf\x59\xc4\x36\x8f\x69\x96\xde\x7a\xdb\xde\xb1\xd3\xa4\x0c\x9d\x30\x21\x87\xf3\x36\xbd\x78\x8b\xad\x73\xa8\xde\xc3\x7f\x26\xc1\x80\x1f\x71\x99\x8a\x91\x17\x26\x12\x42\x55\x6f\xad\x65\xbc\xb0\x3c\xde\x7f\xa3\x90\x68\x21\x6b\xdc\x4c\xa1\xb1\xec\x69\x39\x5a\xbc\x81\xa6\x58\x62\xb1\x40\xff\xc8\x41\x71\x81\xdf\xc8\x4a\xa7\x65\x20\xf7\x5c\x31\x62\xad\xdd\xd1\x9e\x29\xb0\x3b\x72\x5d\x9a\x46\xf6\x08\x3a\xa3\x2e\xf4\x98\x62\xe7\xa7\x9a\x7f\xd7\xa1\x53\x7b\x0a\x9d\xa7\x45\xfe\xff\x67\xca\xf7\x4f\xbb\xc6\xe6\x4c\x47\x14\x67\x0f\xac\x44\x08\x28\x0c\x99\x28\x1e\x46\x52\x5f\x1f\xbe\xd8\x50\x19\x99\x76\x5e\xfa\x96\xf4\x21\x30\xd4\x0c\xb2\xde\x58\x77\xc1\x43\x88\xa9\xb9\x35\xb0\x7b\x37\x45\x06\x5e\xeb\x1b\x2f\xa5\xa3\x0c\xd7\x1a\x9e\x86\x47\x7f\x16\x33\x09\x03\x93\x33\xd5\x1c\x83\xd8\x09\x12\xb6\xaf\x36\x26\xe7\x74\xe1\xe1\xdf\x3a\xb7\x68\xd2\x91\x1f\x09\x56\x78\x2e\x4b\xbf\x7e\xad\x3e\x26\xe4\x07\x9c\xb7\x44\x80\x04\x3c\x71\x69\x19\x3e\x58\x52\xf2\x57\x05\x67\x08\x48\x6c\xaa\x4c\xaa\x6c\x16\x34\xf8\x87\x05\xbd\x32\x0b\x8a\xae\x16\x82\x8c\x05\xd5\x0e\x42\x77\xf3\x24\x3d\x7e\x23\x96\xaa\xbd\x6c\xc4\x9d\x91\x42\xa5\x2e\x53\xe7\x37\x7c\xb4\xd9\xb9\x68\x05\xad\x4e\x6a\xb5\x14\x34\xde\xa8\x06\x4b\xf7\xa5\x41\x81\x56\x67\xf6\x6e\x25\x5a\x1d\x23\x4a\x3f\xad\xd8\xab\x9f\xfe\x8f\xdd\xab\xe1\x05\xfb\x79\xca\xa5\x5f\xa5\xed\x89\x97\xa9\x4e\x82\xb3\x68\x5d\x45\xcd\xe7\xdc\xdc\x7d\x94\x5a\x81\x6a\x1e\x95\x5f\x88\xa4\xc6\xa6\x46\x5f\xcd\x71\xa4\x21\x8f\x15\x0d\xc9\x2e\x52\x24\xa5\x54\x5f\xa2\x57\x8a\x7f\x52\xb2\xa7\xe5\x25\x82\x66\x1e\x1c\x9a\xbd\x61\x38\xea\x0b\x1e\x29\xda\x60\xdb\x07\xc6\x69\xdc\x61\xc9\x23\x69\x8c\xe0\x0a\xf5\xa6\x97\x36\x92\x6e\x94\xc0\x20\x4d\xfd\x41\x04\x04\x90\x15\x40\x75\xf2\x38\xdf\x1e\x26\x22\xbe\x98\x2d\xb2\xfa\x36\x2d\x7b\xc4\xd4\x5f\x52\xa1\xea\x84\x65\x09\xa9\x37\xa5\xb4\x1d\xd8\xef\x7c\x7b\xb3\x52\x17\xab\x8f\x38\x1d\xd9\x55\xd3\xb0\x34\xc8\x6d\xf5\xc5\xec\xa3\x0b\x88\xcf\x23\x74\x4e\x59\x41\x16\xdf\xf2\xc1\x48\x61\x54\x9a\x25\x9f\x06\xba\x80\x55\x32\x13\xbf\x52\x40\x64\x20\xad\x96\xb4\x58\x33\x8c\x9e\x27\xd6\xc3\xc1\x88\x01\x85\x22\x49\x09\x41\x0b\xae\xcb\x30\x96\x7c\xf2\x31\x94\x43\xe2\x1c\x3b\xb4\x6d\xc0\x24\xd9\xd6\xed\x17\x92\x72\xc8\xa0\x77\x4e\x8c\x7a\x95\xef\x4d\x8f\x8a\xf6\xc9\x1d\xd9\xc5\x65\xff\x63\xc5\x2d\x89\xd9\x1e\x32\xd1\x3a\xd2\xd3\x9f\x0b\xcb\x3d\x50\x1e\x82\x2f\x37\x5d\x45\xa6\xf1\x91\x09\x91\xa1\x27\xdd\xd8\x4b\xa7\x0d\x34\x3a\x7e\x29\xd6\x18\xcb\x6a\xc4\x3b\x44\xd0\xd7\xea\x49\xaf\xe8\x17\xd4\x14\xd5\x38\x5c\xb5\x49\x55\x5d\xde\xac\x8b\xc4\x60\x50\xd1\x6e\x13\x94\xc3\x8a\x2e\x3b\xbb\xcb\x76\xd5\x62\x39\x9c\x48\x5e\x88\x1f\x78\x2e\x82\x49\xb5\x36\xbc\x29\x96\xca\x46\x29\xfd\xc9\xd9\x71\x6e\xe6\x6c\x0f\x8b\xce\x62\x2d\x21\xcc\x08\x4f\xc9\x53\x0c\xd0\x49\x81\x5b\xa6\xad\xa5\x6b\x91\xf7\xc5\xfb\xa2\x4e\x57\x51\xe8\x5d\xb1\xcc\x87\x28\xea\x2c\x3b\xa2\xe1\x75\x0b\x54\x79\xc3\xba\xaf\x5a\xc3\x7c\x97\x83\x8a\xaf\xd4\x73\x47\x05\x01\x6e\x05\xf2\x98\xcf\x37\xc5\xf2\x22\x57\xdc\xfe\x3a\x8e\x47\x76\x78\x97\x09\xad\x32\x8f\xfc\xfe\x4f\xdb\xe1\xc9\xfd\xf2\x5d\xd0\x2a\x84\xcd\x35\x17\x7f\x2e\xca\x9a\x8b\x18\x75\x24\x57\x65\x88\xb4\xbc\x25\xea\xe2\x59\xd8\xd2\x18\x54\x45\x9e\xfc\x73\xf2\x5b\x21\x59\xfd\xf0\x37\x25\xab\x4f\xae\x20\x59\xfd\x9e\xaa\x0e\x8b\x59\x86\x1e\x38\x85\x79\x3f\xb3\x6b\x85\x1c\x47\x3e\x96\xa8\x6c\x05\x92\x95\x4e\xa8\xe6\x9a\x79\x65\xc6\xe2\xee\xa0\x27\x78\xc5\x55\x40\xfa\xb1\xf2\xe0\x6b\x7b\x8e\x30\xde\x10\x9e\x26\x07\x99\x73\x7b\xbd\x3c\xfc\x4e\x77\x81\x57\xa1\x78\x44\x5c\x5a\x2a\xda\xd3\x41\x25\xd9\xd2\xc3\xa5\x30\x25\x6d\x5a\x75\x48\x2f\x95\x25\x67\xc9\x96\x5a\x91\x67\xa3\x0b\x0c\x00\xa6\xd9\x1a\x73\x6e\x32\xac\x4b\x49\xce\x8d\xaa\xa6\x15\xc3\x5b\xd9\x87\xc0\xb0\x15\xb2\x13\x74\x37\x92\x5a\x6d\x89\xe5\xca\x2f\xb3\x92\xe2\xf9\x31\xec\x7c\x20\x31\x74\x82\xa2\x60\x34\x65\xb1\xfd\x25\xb9\x55\x52\xab\x71\x92\x60\xfb\x4c\x39\x3c\x25\x85\x0b\x6c\xf5\xcf\x05\x74\xf4\x59\xd7\x6e\x73\x9c\x2b\xde\x21\x5f\x8b\x3c\x6d\xe6\x8a\x20\xee\x84\xdd\x0d\x61\x1d\x23\x43\x08\xe8\x42\x9f\x41\xf1\x56\xf0\x3b\x8e\xda\x7c\xbe\x59\x81\x50\x55\xaa\xc6\x95\x1a\xf8\x0b\xd4\x4c\xde\x5c\x3e\x8d\x5d\x1a\x8e\xae\x1c\x80\x5f\xeb\xe9\xeb\xd8\xf7\x96\x3b\xee\x87\x81\xe4\x3a\x11\xd5\x8e\x09\xf2\xdc\xf3\xb9\xfa\x29\x1e\xf5\xcd\x4c\x85\xd9\x96\x91\x2c\xcd\x4a\x71\x38\x12\xa3\xf7\x5b\x4c\x3e\x26\x09\xa5\x8b\x62\xda\xcd\x14\xb1\x1e\xeb\x77\x74\x85\x64\xb6\x6e\x7c\x55\xfc\x0d\xa5\x60\xc9\x62\x6e\x2e\xb1\x2d\x9a\x21\xf9\x99\x16\x34\x0a\x7d\x65\xc1\x4c\x0e\x9a\x65\x4f\xe5\x98\xcd\x36\xe3\x04\x59\x4b\x99\xb8\xaa\x34\x26\xb5\xc4\x28\xde\x02\xe4\x21\x34\x22\xc6\x58\xd9\x58\xa2\x1d\xb5\xa5\x6f\x68\x96\x2f\x71\xd7\x79\xcc\xfe\x51\xf8\xbe\x54\xe1\x1b\x3e\xaf\x8a\x6f\xf6\x8f\x12\xf7\x3f\x4a\xdc\xff\x28\x71\xff\xa3\xc4\x8d\x4a\xdc\xf0\xfc\x1f\x16\x7e\x05\x0b\xff\xe6\x6f\xb2\xf0\xcf\x57\xeb\x65\x3e\xb3\x65\xe7\xf0\x89\x39\xc7\xe9\x91\xd7\x81\x2f\xea\x45\x1f\x91\x1d\xe0\x9c\x39\xc7\xd8\xb0\xc4\x01\x3b\x9e\x66\xc6\x1e\xb5\x16\x20\x38\xfb\x99\x7c\x0b\x8d\xd5\xa8\x5e\xc2\x19\x79\x8c\x78\x41\x21\x17\x85\x90\x7c\x9d\xc0\x03\xfd\xc2\x16\x8f\x8b\x92\x2f\xc9\x37\x0a\x87\x4a\x1d\x2a\xe2\xa7\x09\x39\x65\x14\x06\x1e\x45\x46\xb0\x91\xdb\x32\xbe\x0c\x26\x46\x16\x52\xbc\xf7\x7e\x97\x26\x56\xa8\x29\xa6\xae\xe6\x52\xcb\x5c\x16\xea\xf7\x71\x30\x3b\xe1\xef\x51\xd2\xf0\x3a\x95\x9b\x80\x09\x3a\xfe\x90\xf3\x09\x7b\xab\x5f\x53\x93\x62\xd6\xc7\xd7\xce\xa7\xae\x11\xbe\x1c\x4f\x04\x3f\x0b\xe3\x69\xf2\x20\x95\xc2\xe8\xf4\xce\x97\xae\xa9\xb3\xc3\x79\xf6\xdc\x3c\x3e\x33\x56\xb9\xa6\x57\xc7\x69\xd0\x65\x76\x40\x04\xba\xf6\xd4\xa9\x62\x1a\x45\x61\x74\xfa\x21\xeb\xb3\xea\x43\x95\x84\x66\x29\x58\xa3\x51\x4f\xd5\x82\x1f\x4e\x6d\x05\x5c\x52\x16\xb2\xc4\x83\xb2\x4a\xf5\x52\xf1\x92\xaa\x6d\x19\xc2\x92\x66\xeb\xdf\x14\x99\x68\xee\x2e\xab\x7e\x23\xaa\xd5\x22\x53\x49\xca\xaa\x44\xf0\x06\x35\xcb\x8a\x82\xa6\x94\xef\x5c\xc3\x6c\x96\xb3\x1f\x95\xb2\x57\xdc\xfc\x55\x47\x51\xb3\x00\x81\x73\x7c\x12\x08\xfe\xc0\x2c\xb6\xa2\xb0\xdc\x96\x59\x75\xbe\x64\x2c\xd0\x33\xc2\xaf\x7a\x1f\x6b\x38\xbc\x15\xb7\xb2\x8b\x52\xdc\xb6\x5e\x1c\x0d\xc2\xd3\x69\xfa\xde\x5a\xac\x8a\x60\x5c\xe8\x41\x6f\x55\xe3\xd3\xc6\x8c\x48\xda\xfe\xdf\x53\x9d\x21\x45\x2b\x6a\x2b\x1e\x7a\x97\x8e\x20\x46\xea\x14\xd9\xf6\xb2\x81\xd6\xed\x54\x47\xdd\x5a\x2d\x24\xea\xf7\xca\x5a\x9d\x2a\xb3\xa5\xd8\xa9\x5e\x2d\x6e\x3a\x6e\x47\x05\x0b\x5a\x51\x3a\x17\x43\x4e\x95\x7c\x55\xd4\xa2\x52\x26\xcc\x67\x9a\x5a\x32\xae\x0d\x14\x5e\x5b\xc6\xb5\x11\x24\x84\xeb\xc6\x98\x5a\x6c\xe3\xda\x48\x5b\x4a\x29\x62\xf2\x3b\x27\xfd\x8a\x08\x7b\x9e\x61\x40\xfb\x98\x70\x54\x50\xfa\x6d\x98\xb0\x12\x11\x4c\x7f\x7f\x4b\x55\xfd\x40\x06\xeb\x6b\xfa\xf4\x7b\x2a\x0a\x13\xa4\xd9\x2b\xeb\x52\x98\x3c\xca\xe7\x32\x0b\x29\xfc\x5b\xaa\x7e\x2d\xc2\x44\x86\xd1\xca\x69\x2d\x48\x8d\xd2\x19\x85\x54\x5e\x6e\x36\xa2\x66\xb6\xa1\x3e\xe7\xb3\xcc\x36\xa3\x7c\xdc\xae\xd5\xa4\x7d\x3f\xbc\xce\xca\x08\xbd\xda\xa6\xae\xd0\x30\x8a\xa5\x09\x07\x62\xec\x8a\x36\xcf\x7f\x2f\x81\x09\x93\xd4\x1d\xf7\xaa\x49\xd8\x4c\x79\x01\x9c\xa9\xdf\x54\xe5\xc3\x50\xc8\xd9\x65\x15\x9a\xf9\xb9\xbc\xce\xd2\x1d\xca\xfb\xe8\x5b\x14\xe7\x94\xab\x92\xdd\x2e\xcc\x22\xfa\x30\x2e\xce\x24\x1e\x9b\x8a\xf3\xa8\x38\xda\x28\x17\xc4\xcd\xe7\x51\x73\x10\x46\xfd\x15\xf2\xd4\x31\xb2\xcd\x5a\x8c\x90\x3a\x96\x16\x4d\x9b\x69\x4c\x63\x32\x77\x3e\x75\x4d\x4c\x60\x23\x68\x8a\x21\x8d\x0e\x40\xed\x1b\xa4\xe3\x84\xcb\x6c\x3c\x91\xc0\x72\x43\x34\x73\x8b\xb2\xc0\x30\x89\xba\xc8\x30\x88\xfa\x23\x9e\xf3\x45\x64\xb3\x05\xc5\xa2\x0b\xba\x71\x3d\xe8\x05\xce\x8c\x3f\xe7\xda\x41\x7c\xc9\xa2\xc8\x88\x00\x97\xd9\xe7\xdc\x35\x8d\xef\xb8\x07\xc4\x8c\xc0\xcf\x85\xed\x41\xb0\x08\x6c\x22\xf8\x24\x10\x55\xa1\xed\xb9\xbe\x16\xb3\x99\x0a\xed\x6c\xcc\xe6\x5e\xb3\xd8\xf9\x56\x82\xc1\x82\x67\x44\x56\xf0\x16\xbc\xc0\xdb\x08\xa3\x14\x84\xde\x6f\x81\xeb\x2b\xa0\x0d\xc3\xb8\x8a\x85\x2d\x27\x29\x34\x5c\x4b\x33\xf8\xd2\xad\x9c\xd5\x44\x9c\x9a\x34\x74\x7d\xba\x2c\x6c\x63\x2f\x35\x34\x22\xdb\x5f\x38\x7b\x45\x64\xe1\x56\xb3\xc0\x6f\xd3\x8c\xdd\xbe\x89\xcc\x80\xdd\x30\xc3\x14\x12\x27\x6d\x94\x43\xcb\xac\xf7\x2a\xee\xbc\xcc\x0a\x96\x9c\x4f\xa5\x95\x3c\xbe\xa2\xbb\x03\x2d\x0e\x33\x84\xf2\x73\xd9\xa2\x39\xc8\x2c\x9a\x83\x92\x45\xb3\x3d\x20\xc6\x9e\x53\xf0\x24\x1e\x9d\x69\x2c\x48\x27\x39\xed\x1e\xa1\x55\x82\x2f\x89\xcd\x6f\x0b\xa6\x1f\xd4\xe6\x5c\x95\xab\x70\x5f\x0b\x8e\xca\xaa\x98\x1d\x12\xb1\xca\x63\x90\xc2\x21\x04\x97\xfa\xb6\x8d\x28\x18\x19\x85\x57\x32\xac\x0e\x6c\x7b\x6c\x0f\x76\x00\x6e\x6b\x7b\xec\xb2\x75\xf4\x8d\x90\x05\xc6\x04\x1b\x2b\x15\xb1\x76\x34\xac\x4d\xb2\xc3\xcc\x64\x3a\x95\x44\x94\x72\x97\xa7\x32\x8d\x18\x6c\x70\xa3\x32\x0f\x64\xf2\x6a\x7b\x00\x32\xa9\x75\x96\x78\xc4\xe5\x82\x52\x88\x8b\x02\x2e\xcb\x68\xbb\x80\x2f\xe8\x04\x69\x85\x29\x63\xe7\x13\x0a\x32\x5e\x12\x4e\x81\xab\x99\x2d\x11\xfe\x5a\x8d\x5b\x6f\x36\x31\xdc\xc8\x89\x78\xe7\x4b\x17\x22\xc6\xd5\x4f\xc8\x0c\xa7\x00\x31\xe3\xf8\x1b\xe0\xda\x0d\x78\xd6\xe9\xec\x48\x49\x21\x61\xef\xc9\x33\x12\x51\x08\x29\x8c\xf0\x39\xa6\x20\x28\x4c\xd9\x43\x92\x40\x4c\xa1\xc7\x1e\x92\x91\x15\xb5\x26\xc0\xd3\xe9\x14\x02\xb5\x6a\x7a\x10\x34\x8f\x23\x75\x66\x9e\x7d\x08\x85\x9c\x06\x23\xcb\x9c\x87\x42\x50\x32\xb1\x4c\xa7\x6f\xc5\x0d\xfd\xb1\xf9\x8e\xda\x23\xd4\xb6\xf1\x5c\x79\x38\x5e\x55\x37\x4f\x71\x20\x5b\xf1\xc1\x40\x72\xf1\x36\xad\x20\x5d\xf7\xd5\xad\x4b\x39\x81\x15\xd3\x05\x48\x2f\x0d\x2f\x96\xc9\x56\xda\x64\x7d\x7b\x3a\xbc\x4b\xf3\xe6\xeb\xbc\xda\x57\x38\x6e\x1e\x1c\x38\x05\x61\xb9\xf2\xdf\x6f\x78\x06\x5d\xbf\x2c\xe7\xff\x02\x9c\x52\xea\x5f\x52\x27\x2d\x8c\x97\xa8\xbe\xe0\x97\x08\xbf\x0c\x1c\x59\xae\xd5\x43\x54\xc1\x54\x14\x39\xe3\x15\x6d\xbe\x6c\x04\x96\x6b\x34\x5b\xec\xef\x31\x83\xbd\x26\x99\x2e\x98\x1a\x2f\x51\xe9\x9c\x3f\xdf\x64\x29\x4e\x14\x05\x4e\xb9\xdb\x07\xc3\xb8\xb6\x91\xef\xcd\x7c\xf6\x72\xff\x19\x39\xaa\x2a\xa8\x38\xec\x0a\x53\x7f\x8d\x85\xa2\x83\x72\xd9\xc2\x0d\xce\x8f\xb6\x4c\xb5\x5f\x08\xf5\x65\xee\x11\xb4\xc4\xa2\x68\xc7\xe2\x9d\xed\x82\xe7\x0b\x49\xbb\xd4\xb7\xd2\xcc\x7e\x82\xe2\x82\x6e\x15\x39\x0b\xfa\x7d\xbc\xbf\x58\x11\x93\x12\x47\xad\x70\x1b\x9e\xdf\x93\xe5\xfc\x07\xaf\xf4\x51\xa6\xd8\x92\xf2\x0d\x79\x76\xed\x3c\x9f\x4b\x23\xdc\xa8\xca\x92\x0e\xa0\x43\x21\x0b\x93\x9f\x65\xcf\x3f\xa7\x1e\x77\x53\x9f\xfc\x88\x8f\xdd\x0d\x53\x20\x54\x5c\x9c\xbe\x50\x36\xa8\xba\x51\x3a\x5b\x32\x5b\xd8\x47\x02\xe0\x20\xe0\x67\xf5\xfe\x50\xf6\x5a\xa9\x76\x3c\x1c\xb8\xe4\x37\xcb\xbe\x32\x8a\xaf\x7b\x64\x78\x21\x74\xea\x3c\x9f\xeb\xae\x61\xd8\x8e\x4e\x97\x62\x08\x47\x4b\xe4\x90\x64\x83\x50\x9a\x8d\x80\xd6\x6a\xf7\xb5\xb7\x07\x7c\x26\x76\x31\xd6\x09\x52\xa9\xca\xa8\x00\x6e\x23\x60\x6f\xc8\x08\x52\x27\xa7\xd3\x74\x58\x13\x08\xe8\xfa\x71\x8c\x00\xb5\xc3\x57\x8c\x63\x7a\xb1\x90\xd8\xa2\x93\xa0\xc4\x6d\x27\x51\x30\x49\x86\xb1\xac\xde\x5c\xd4\xce\x28\xcb\x73\xfa\xd3\x38\x9e\xf8\x35\xe9\xda\x4f\x75\xe8\xc2\xe9\xf4\xd7\xb0\xd0\xe9\x0c\x59\xba\x5d\xc8\x4d\xa7\x5d\x4a\x2f\x18\xec\x8e\x45\xd6\x70\x2e\x0c\xa7\xbd\xe4\xac\x20\x91\x71\xf5\x69\x20\xe3\x8a\x05\xe3\xfa\x72\x21\x81\xf0\x6f\xf0\xf8\x10\xb0\x67\x44\x54\x16\x96\xa6\x77\xc2\xb6\xfd\x35\xca\xae\xb1\xb9\x3d\x01\xbb\x47\xf9\xd9\xa1\xb4\x5f\x84\xf9\xe6\x10\x5c\xb2\xb9\x57\x6d\x14\xbd\x20\x29\x05\x2b\x29\x6a\xa3\x19\x21\xa0\xcc\x0e\x12\x15\x51\xd4\x6b\x35\x5b\xcc\x50\xc1\x6b\xdd\x27\x12\x9e\x59\x46\x22\xd5\xa7\xde\x4c\x76\x21\x0b\xae\x58\xb2\xc3\x52\x45\xf3\xd3\x43\x50\x20\x0b\xe7\xc5\x02\xe7\x51\x25\xe1\xd7\xdc\x88\xc5\x86\x08\x5b\x70\xe2\xe7\xfe\xe1\x8b\xb5\xd9\xdb\xc2\x4a\xc1\x40\x4a\xc9\x15\x4b\x5a\x41\x56\xd2\x83\x7b\x0e\x0a\xc5\xe1\x61\x7e\xf2\xcc\x38\x2f\x1d\x44\x32\x6f\xb4\xa3\x4a\x4f\x49\xe6\x4d\x3f\x3f\xd8\x3f\xb5\x06\x81\x70\xd8\x6c\x51\x88\xcb\x5e\x5e\x22\x2b\xca\x57\x55\x19\x4f\xf1\x51\xcb\x47\xfe\x68\xe9\xc4\xbf\x30\x8a\x0d\x55\x73\x28\x4a\x8c\x63\xa9\xf5\xd2\xb8\xf7\x4c\x65\x16\xcb\xf5\xc5\xcb\x12\x86\xca\x83\x68\x15\xf4\x12\xd7\xbc\x04\xbc\x7a\xc6\x32\xf7\x42\x67\xa9\x6f\xa1\x4d\xc4\xe5\xb2\xf1\xab\x42\x72\xcf\x42\xf2\x5a\x4d\xe7\xeb\xb4\x56\xec\x74\x45\x26\x4d\x50\x08\xdb\x91\xa6\xcf\x86\x0d\x20\xc2\x10\xe8\xc8\xa6\x63\x7c\x41\x57\x60\xdd\xd2\x15\x4a\xbe\x8b\x59\x67\x13\x73\x92\xd1\xe7\xa3\x8a\x23\x6a\x64\x94\xde\x22\x23\xab\xc9\xdc\x0b\x59\xe2\x1a\x91\xb9\x17\xb2\x64\x06\x99\xa3\xa1\x30\x9b\x98\x65\xcf\x46\x71\xad\xb6\x69\x36\xc0\x98\xce\xe7\xf1\x22\xbf\xfc\x2c\xf4\xcb\x92\x1a\x55\x52\x64\x35\x33\x22\x53\xbd\x09\x19\x2f\x78\x7d\xca\xc9\x51\x88\x1a\xff\x3f\x2d\xc4\x32\xdb\x63\x6c\xa9\x96\xaf\xda\x25\x33\x61\x4c\x1a\xe8\xe1\x9e\x2a\x45\xd7\x9e\x22\x96\xae\xc4\xca\x2b\x6a\x8d\xd4\xb0\x82\x18\x45\xc8\x9b\xce\xe7\xad\x0d\x39\x9f\x7b\x9b\x8c\x45\xed\x42\x2f\x04\x70\x90\xed\xc8\xf5\xfc\xa8\xe1\x51\x3f\x8d\x95\x84\x6a\xc5\xc5\x56\xac\x20\xfc\x95\xe6\x7b\xf3\x39\xa9\x3e\x3f\x62\xb8\xa7\x02\x58\xfb\xfb\x35\xd8\x84\x1b\x6f\x88\x09\x5b\xff\x86\x28\x56\x01\xb7\x00\xba\x34\x76\xd9\xc8\x96\x47\xad\x78\xab\xed\x38\xd4\x3e\xb9\x6b\x66\xde\x32\x42\x54\x98\xa0\x56\x68\x94\xad\xd0\x0a\x85\x6d\x9a\x0d\x9e\x4c\x03\x4d\x85\x03\x22\x3a\x51\xa7\xd5\xed\xe6\x56\x3f\xec\xb9\x3a\xd9\xc7\x2c\xec\xb4\xba\xc8\xf7\x19\xd3\x64\x48\x98\x80\x11\x13\x9d\xb8\x0b\x53\x16\xef\x16\x45\x83\x23\x5a\xab\x4d\x77\x8d\xad\xfe\x68\x37\xb7\x47\xe9\x69\x1c\x9e\xcf\x7b\xf6\x96\x5e\xab\xa5\xad\x49\x3a\xd3\x2e\x24\x6c\x04\x64\xca\x82\x66\x32\x0c\x07\x52\xcb\x83\x46\x6c\xd4\x99\xe6\x01\x1f\x45\x71\xe4\xca\x26\x03\x7a\xdd\x3c\x27\xbc\x60\x61\x2d\x98\xd4\x16\xd6\x32\xef\x46\xb6\x7c\x52\xe9\x71\x4a\x2c\xae\xe8\x9b\xc5\x58\xfc\x24\xc5\xed\xcd\x48\x9e\x37\x8b\xa3\x92\x50\x2b\x86\x4f\x16\x50\x31\x59\x5c\xa7\xbe\x5a\xed\x5c\x6d\x7c\xa9\x09\x5a\xdc\x11\x6a\xf8\x8f\xc9\xa8\x42\x60\x3b\xcd\x9c\x25\xac\x90\xb7\xd9\x4d\x9e\x16\x0c\xc0\x69\xc1\x66\xa9\x67\xbb\xd2\xcd\xe9\x6d\x08\xf1\x4a\xbf\x38\x69\x74\xcc\xa0\x80\x97\x68\x0e\x5b\x74\x8c\x71\x42\x82\xeb\x39\x7c\xc0\x61\x4d\x0a\x76\xf0\x41\x27\x37\x04\xed\x6e\x62\x73\x05\x49\xa0\x47\xab\x5d\xdb\x24\x4c\x7f\x5d\x5c\xae\x92\x53\x70\xb9\x10\xdb\x2e\x17\xe2\x2a\x97\x0b\x2b\x54\x72\x36\xbd\x85\xc2\x88\x82\x59\x4d\x51\x07\xb8\x6c\xcd\x59\x18\xb4\xa0\x34\x68\x09\x3b\x21\x31\x85\x11\x4b\xb2\x41\x1b\xe9\x41\xcb\x93\x8c\xed\xef\xc8\x1a\xb4\x60\x3e\xdf\xbc\x12\x9a\x05\x30\xb5\x1c\x0d\x04\x4c\x60\xca\x15\x4c\x1a\x47\xb5\x5a\xda\x14\xd4\x2f\x4c\x96\xb4\x07\x93\xab\x98\x34\x6e\xb6\x2a\x87\xab\x80\xad\x01\x64\xbe\x10\x96\xf1\xbe\xa7\x35\xdb\x7b\x95\x06\x7b\x3d\xcb\x5f\x53\xbf\x78\x5f\x14\x28\xde\x64\x58\x5c\xc9\xfd\xc2\xb2\x80\x6a\x5f\x80\xd7\x72\xa4\x19\x5e\xc1\x91\x66\x29\x5e\x5e\xbc\xda\x91\x66\xd8\x89\xbb\xdd\xa2\xca\xb6\x4e\x33\xe6\xd8\xfa\xcd\x72\xfe\x81\xb4\x29\x57\x3a\xbe\xf1\x83\x0c\x60\x58\xbc\x00\xa9\x30\x23\xec\x65\xe3\xa7\x92\x47\x85\xa1\xd5\x67\x9e\x92\x33\x8a\x1b\x29\xea\x2d\x52\xd3\x49\xe4\x09\xb5\xa7\x79\x7c\x2c\xb0\xee\x66\xb4\x65\xaa\x7f\xa3\xc6\x69\x72\x15\xaa\x85\x78\x50\xe0\x8b\x33\x2c\x98\xd0\x36\x21\x83\x65\xba\x4c\xe7\xf3\x72\x72\x89\x51\xe2\xfa\x5c\x4e\x29\x98\xf1\x99\x54\x8d\x0f\xf5\x27\x97\x99\x9d\x61\xa9\xd2\xce\xcb\xe9\x7c\x7e\xcf\xf4\xb4\x9d\x6e\xe0\xcc\xb0\x62\x4b\xb7\xae\x24\x35\x52\x2b\xd8\x88\xc5\xbc\x4a\x7f\xfc\x46\x98\x27\x6b\x11\x54\x99\x4f\xce\x23\xa7\x5b\x10\x6c\x64\xd0\x43\x1c\x42\x85\xf9\x6d\x76\x36\x3d\xe5\x92\xd8\xc1\x50\xd7\xdb\x42\xe2\xb0\x14\xf2\xab\x55\xb6\xd9\x5a\x2c\x6c\x9f\x1c\x09\xff\x6f\xd9\xc0\xe5\x10\x2b\xa9\xb4\x82\xec\xfc\x89\x71\xac\xc8\x9f\x2d\x5a\x11\xc6\xef\x06\x27\x69\xec\x5d\x9c\x68\x7b\xb5\xe4\x4e\xe5\x54\x77\xb8\x09\xe6\x23\x18\x91\xf3\x79\x21\x36\xe4\xbf\xff\xda\xc2\xd8\x52\x8a\xfb\xca\xef\x32\x82\xe6\xb1\x14\x21\x67\x31\x04\xcb\x6a\x78\x8a\x46\x34\xf9\xf7\x69\x30\x22\xc6\xde\x04\x0c\xb5\xa1\x50\xfa\x24\xad\xab\x3d\x0a\x5c\x1d\xf4\x9c\x2d\x07\x64\xf3\xf8\x3c\x98\x0d\x02\xc1\x45\xad\x26\x75\x6d\x34\x6e\x8e\xe3\x69\x84\xb6\xab\x3a\xa5\x89\xc9\xb9\x20\x54\xb0\xd8\x28\x89\x29\xf2\xd2\xec\x9d\x30\x09\xa2\x29\xe2\xa9\xe4\x8c\x5b\xba\xa9\x41\x93\x8f\x43\xc9\x02\x08\xf4\xd5\x3e\x4b\x20\xc8\x6b\x64\x9b\x2d\x08\x36\x8a\x86\x0e\x9a\x97\xc3\x0b\x19\x2d\x64\x4d\x85\x8b\x25\x01\x27\xdd\x10\x9d\x56\x97\xc9\xe6\x24\x10\xc1\x38\xb1\x1c\x17\x7b\xbb\xd1\x5e\x16\xc2\x3e\x72\x5d\x8a\x46\x81\xb9\x10\x34\xb2\x6c\x26\x7b\x27\xc6\x26\xbd\xd9\x3b\x01\x41\x4b\x66\x14\x51\x33\x8a\xe5\x01\x8e\x22\x37\x62\x7f\xe7\x3f\xb0\x97\xff\x71\x63\x3c\x4d\x30\x62\x6e\xea\x4b\xc0\x31\xe2\xa2\x38\x55\x62\xd0\x3c\xa1\xc4\xa8\x81\x27\x36\x16\x8c\xf2\x90\x4e\x26\xaf\x76\x54\x1c\xe2\xce\x59\xca\x1b\xd2\x8d\xa5\xd0\xb7\xd8\x82\x1b\xff\xe1\xb8\xdc\x75\xfe\xe3\x46\x1f\x83\xc2\xcb\x1b\x08\xca\xa1\x25\xdb\x0e\x7d\x88\x3d\x61\x5c\xf5\x30\xbd\x14\xc5\x59\xd2\xbf\xa9\x41\x2f\x0e\x22\xe3\xe9\x43\x55\x74\x2a\x6b\x29\xd8\x81\x48\x56\xe0\x7d\x58\xc0\xfb\x70\xc3\x08\x31\x38\xc3\x60\xf8\x89\xff\x73\xb1\x58\x8a\x1e\x5d\xb4\x3b\xbb\x24\x04\x85\xa2\x93\xf9\x52\x0c\x21\xb4\x65\x7b\x88\x9a\x85\x23\xc2\xca\x85\x02\xe9\x68\x26\xc3\x78\x3a\xea\xeb\xe8\xc1\x66\x0d\x6d\x98\x03\xf9\xd2\x2a\x35\x1b\xf8\x96\x43\xcb\xa1\x08\xb4\x67\xe5\x8c\xb0\xa1\x54\xb8\x56\xcb\x02\xee\x2a\xbe\x21\x53\x51\x89\x52\xb6\xd9\x0a\x1b\xbb\xf5\x6f\x7f\xfe\xef\xbf\xea\x5b\x4d\xc9\x13\x49\x42\xda\x26\x31\x51\x78\xd8\xe7\x09\x38\x37\x6f\x3a\xb4\x1d\xb0\xf4\xbd\x79\xf3\xa6\x4f\x02\x6b\x44\x21\xff\xc0\x02\x0a\x4e\xdd\x51\x95\x69\xa3\x83\xa8\x79\x1e\x8e\xfa\xbd\x40\xf4\xd9\x66\x4b\x51\x87\x28\x18\x73\x16\x5a\x5d\xd3\xf5\xaa\xde\x51\x3f\xaf\x33\xb4\x2a\xec\x84\xdd\xea\x0a\x3b\x61\x57\x55\xc8\x89\x70\x3d\x08\xe8\x82\xb4\xb2\xdb\x54\x4e\x17\x85\xb9\xd1\x64\xe0\x7f\xcf\xd4\x80\x60\x3f\x17\x10\xda\x84\xda\xc4\x98\xce\x58\x9d\x30\x93\x9f\x28\xca\x60\x9f\x83\x82\xdc\xac\x25\x1c\x90\x98\x84\xe9\x88\x04\xb9\xa1\x37\x89\x5c\x0f\xd2\x74\xbc\xe0\xc0\xd0\xf7\x6a\x64\x53\x73\xd7\x8e\x7e\xeb\xb2\x3e\xef\xc5\x7d\xfe\xfe\xed\xd3\x07\xf1\x78\x12\x47\x3c\x92\x24\x33\x9f\xb0\x76\x33\x12\xa5\x74\x26\xb7\x18\xb7\xeb\x68\xde\xbc\x89\x3e\x20\xc2\x6c\x32\xd3\x7a\xf2\xc9\xad\xa8\xc8\x9c\x7f\x23\xa3\x54\xba\xe5\xd0\x2b\xd5\x9d\xd7\x5a\x68\x0d\x5d\x14\x27\xd8\xd6\xba\x22\x61\xd1\x0f\x09\x51\x13\x40\xa9\xa1\x30\x02\xc2\x12\x3a\xa8\x8d\xa6\xb4\xaf\xfd\x12\x42\x54\xec\x77\xa9\x35\x26\x38\xaa\x95\x85\x42\xb1\x09\xae\x9e\x72\xf4\xeb\xb1\x28\xd4\x21\xec\x63\xbd\x4c\x53\x69\x4b\x16\xd1\x31\x36\x8e\xdc\x34\xa5\xd5\xbb\x62\x6c\x6d\x96\x01\x13\xf9\xb8\x6f\x54\x66\x0f\xe8\xa2\x38\x6a\x06\xd7\xa4\xfe\xa5\xea\x21\x18\xe3\x41\x4b\x2f\x5c\xfd\x4e\x33\xe4\x73\x9c\x6e\xae\x8d\x8c\xca\x97\xd6\x97\x15\xb6\xfa\x0e\x66\x48\x9d\x66\x91\x50\x31\xa6\x56\xa1\x0e\x47\x67\x44\x50\xdd\x30\x2b\xa3\x69\x62\x2a\xd3\x59\xfe\xb2\x58\xc0\x15\xff\x95\x37\x9d\x35\x21\xee\x92\x5e\x30\xe2\xf7\x83\xa8\x3a\x4a\x98\x1d\x56\x0d\x73\xbe\x8e\xc3\xa8\x3a\xe4\x57\xaf\x9c\xf5\x69\x9f\x47\x32\x94\xb3\xca\xdc\x9f\xca\xb9\x5f\x84\x11\xc6\xb3\xad\xc8\xfb\x6c\x29\x6f\x7c\x7a\x79\x30\x3c\xcc\x79\x34\x1b\x8f\x56\x64\xee\x2f\x65\x3e\x14\x7d\x75\xcc\xae\x06\xbd\xd4\xbb\xf1\x64\x14\xf6\xc2\x15\xd1\xf3\x96\x87\xed\xbc\x32\xe3\xd9\x72\x8b\xbf\x8b\x6a\x98\xa7\x4b\x59\xdf\x06\xfd\x70\x45\x73\x8f\x97\x32\xbf\x99\x06\x91\x0c\x47\xd5\x61\xd3\x2e\x56\x64\xff\x51\x9d\xfd\x70\x29\xfb\xbb\xa1\xe0\xc9\x30\x1e\x55\x63\xd1\xd1\x72\xfe\x70\x5c\x0d\xfa\xa9\x28\x67\x7d\x2f\x7b\x95\x39\x3f\x2c\xe5\x3c\xe2\xdf\xa7\x0a\xe5\x56\x8c\xc9\xcd\x35\x05\x56\x61\xd4\xe3\x35\x65\x56\xcd\xe9\xf3\x35\x65\x56\xce\xee\x9b\x75\x85\x56\x23\xf1\xe7\x35\xc5\xd6\xce\xf8\xb3\xa5\x82\x0f\xc3\x33\x2e\x4e\x71\x7b\xa8\xc8\xcf\xa3\x95\xf9\x57\x8d\x9d\x5c\x5d\x64\xd5\xd0\x45\xab\x8b\xac\x1c\xb9\x78\x4d\x99\xd5\x03\x27\xec\x52\x32\xec\x7d\x7b\x84\x21\xa9\xab\x27\x34\x0f\x2a\x28\xc8\xce\x1f\x05\xbe\x1d\x37\x5a\xa3\x34\x5a\x3e\x5b\x19\xed\x51\xcb\x24\xd7\xd3\x12\x0b\x11\x44\xa7\x78\xe6\xd3\x9f\x8c\xb9\xac\xf5\x4d\xd2\x66\x3f\x1e\x07\xc5\xb8\xc1\xc3\x30\x59\xe2\xf6\xaf\x55\x79\x95\x03\x2a\x7d\x57\x14\x46\x92\x8b\x49\x3c\x0a\xd0\xcd\x13\xbd\xbc\x99\x59\xeb\x2a\x75\x5d\x2b\x80\x4a\x5a\xec\x5f\xa1\x57\x3a\x06\x71\xc0\xb4\xad\x29\x71\x42\x43\x5e\xa9\x6d\xf9\x6d\xae\x8c\xd4\x61\xe8\x65\x30\x81\x54\x73\xa7\xd3\x85\x88\x59\x07\xe0\x98\x84\xe6\x8a\x32\x74\x1d\x07\xd4\x89\xec\x94\x4b\xc5\x4d\x68\x39\x38\x1e\xf9\x37\x2d\xd6\x34\xda\xd0\x02\x8d\x18\x23\xe0\xa0\x86\x6c\x98\xfb\x84\x17\x1d\x92\x34\x3c\x7a\xcb\xf0\x2a\x99\x60\x30\x4e\x47\x21\x67\xbc\x84\x3e\xc8\x2d\xcd\x46\x76\x54\xd6\x2c\x24\xdd\xc0\xa6\x67\x3d\xc1\x73\xb7\x1e\x83\xe8\x46\x3c\xb8\x21\x68\x16\xa7\x3b\x72\x1d\x67\x03\x0f\x6f\x44\xd0\xf9\x5c\xb7\x53\x40\xda\xca\x28\x6f\x65\xbc\x80\x58\x0f\x6e\xd5\x7d\x5d\xb9\x45\x6d\x22\x0a\x01\x6e\x28\xc4\xe8\xa1\x42\x37\x4f\x81\x9a\x6a\x91\xda\xd5\x80\x45\x8c\x2b\x00\x91\x2a\xd8\x8b\x27\x15\xb1\x0e\x6e\x24\x78\x84\x33\x60\x31\x38\x6f\x98\x8a\x0d\x62\xcb\x8f\x1d\xc4\xf6\xc9\x3b\x9d\x71\xc5\xc6\xb0\x84\xe4\xa5\x8d\x97\xc3\x98\x89\x74\x0e\x40\xf1\x87\xd8\x7d\x98\xb2\x16\xf4\x98\x07\x7d\xb6\xe9\xc1\x90\xb5\x60\xc0\x5a\x30\x61\xcd\x3b\x39\x8a\x8c\x89\x11\x43\xc7\xc4\xe8\x0b\x42\xc8\x7a\x7b\x53\x48\x58\xd8\xee\xf9\x53\x18\xb1\xb0\x3d\xf5\x7b\x1b\x9c\x91\x51\x23\xa1\x5b\x59\x74\x6f\x0f\x44\x63\xe8\x6e\xd7\x07\x14\xfa\xa8\xe3\x92\x07\xcd\x26\x9c\x52\x48\x5c\x2c\xd1\xe0\x75\x22\x1a\x43\x4a\xeb\x0a\x51\x79\x9d\x78\x8d\xa1\x2e\x91\x30\x2b\xce\xbb\x62\x4a\xed\x77\x99\x12\x9b\x71\x7a\x00\x20\x51\x33\xa0\x44\xd0\x92\x5a\x62\x7e\xe0\x48\x5c\x5e\x97\x56\x24\xa0\x80\x84\xed\x71\x53\xf0\x33\x2e\x12\x4e\xa8\x3f\xce\x30\xc4\xdc\x5d\x9a\x51\x04\xb1\x84\xbf\xeb\xe6\x38\x56\x58\x32\x26\x78\xac\xa5\x0b\x10\xd7\x41\xb6\xce\x14\x7a\x5d\xa6\xa6\xc6\x9d\x42\x8f\xb9\x3d\x0d\x08\x93\x33\x50\x6f\xd5\x00\x54\xc0\x5b\x2e\xac\x0e\xdf\x0a\x82\x2a\x7a\x12\x44\xfd\xf3\xb0\x2f\x87\x55\xee\x23\xd0\x6f\x89\xe4\x93\x8a\x6f\x7c\xa1\x45\x6d\x95\x55\x56\x74\xa1\xcf\x36\x37\xb9\x6e\x76\x5f\x15\x9d\x04\xfd\x7e\x59\x6b\x68\x65\xe1\xa1\x9e\xe2\x71\x18\x11\x0f\x06\xcc\x35\x23\x39\xb4\x20\x3d\x8d\xca\x01\x70\xae\x06\xae\x0a\xd6\xe1\x54\x5e\x15\x96\x6a\x8d\x06\x30\x50\x00\x82\x51\x78\x7a\x45\x84\x98\xb0\x6c\x4d\x98\xe0\xf7\x69\x83\xd2\x16\x4d\x14\xc0\x15\xe4\x60\x44\x62\x42\x01\xa7\x96\xa6\xa8\xdf\xa7\x85\xa1\x20\x43\x5a\xe8\x0e\x19\x50\xdd\x3a\x32\xb1\x68\xc7\x98\x50\xdb\x0b\x66\xb6\xc2\xa7\x05\xdd\xbc\x78\x32\xcb\x7d\xcc\x9a\x99\xe3\x05\xf0\xe6\xe0\xc5\x0b\x8d\x58\x4a\xd5\x79\xf9\xaa\x6e\x4d\x09\x7a\x64\xb1\x5d\xf4\xf4\xec\xaf\x23\x63\x44\xaa\x8e\xc2\x79\xbb\x8b\x1d\xf7\x52\x67\xe2\x7d\x26\xc8\x5d\x74\x1b\x4c\x3c\x8f\xc2\x80\x09\xf2\x2f\x0a\x13\xc5\x86\xdc\xa1\x76\xb4\x27\x7d\x6f\x32\x9f\xdb\xbe\xde\x20\x62\xbc\x9d\xcd\x8a\xb1\x01\x84\x4c\xcb\xce\x6f\x59\x77\xfa\x4b\xe2\x37\x12\x6b\x05\x59\xc1\x5a\xe8\xd5\xd4\x75\x05\x0d\x8d\x32\xa6\xa2\x65\x31\x75\xa5\x7a\xcc\xcc\x69\x42\xdb\xf5\xe2\x59\x49\x35\xb9\x6d\xea\xc7\x5a\xad\x76\x45\x85\x06\xc5\x96\xa8\x3a\xa4\xa9\x01\x85\x31\x80\xdb\xc8\xdb\x13\x62\x7b\x62\x0c\x0e\x42\xb4\x33\xec\x8e\xe8\xa6\x5e\x5b\x4c\x73\x03\xf5\xd9\x56\x00\x2d\x2b\xff\xda\xb0\x30\xb3\x02\x98\xfb\x8c\xba\x11\x68\xe7\xfe\xd5\xda\x38\xaa\x65\x0f\x03\xc9\x33\xb4\x52\xcb\x48\x32\x57\x42\xa5\xce\x5c\xc2\xa5\x3a\xf4\x10\xdc\x07\x22\xea\xca\x7a\x44\x41\x2c\x16\x85\x10\x4a\xf6\x85\xcc\x32\x38\xeb\xf6\x45\x01\x11\x0a\x88\x82\x50\xa9\x4a\x08\x91\x96\xd9\xa5\x0e\xff\xf0\x32\x71\x5d\x8c\x6b\x54\xe7\xf9\xb9\xa0\x90\x66\x92\x15\x99\x34\x82\xa1\xdf\x07\x8a\x00\x79\x3b\x2a\x4f\x81\x1f\x5e\x3a\xea\xd8\x14\x8d\x4c\x51\x71\xc0\xc3\xc5\x02\x8e\xd9\x56\xa7\xe1\x76\xdb\xa4\xed\xff\xd5\x77\xff\x6a\xb6\xff\xea\xd7\xe7\xf8\xe3\x52\xd2\xf6\x3b\xfc\xa0\x8b\xdf\xd5\x7b\x7b\xeb\x14\xce\x71\x26\xb4\x5b\x2f\x72\xdc\x4c\xe2\xa9\xe8\x71\x70\x4e\x1d\x0a\x07\xab\x5d\x22\xb1\xe3\xe6\x28\x48\xe4\xd3\xa8\xcf\x2f\xd8\xb9\xf5\xdc\x82\x80\x35\x3c\x48\x14\x7b\x36\x32\x86\xeb\xdc\x65\x8e\x03\x52\xfd\xdd\x25\x82\x1d\xa3\xa1\x97\xda\xeb\xd1\x2e\xeb\x5c\xbf\x4a\x4a\x77\x29\xba\xff\xc1\xdb\x6c\xba\x1f\xe3\x7d\xbe\x59\x61\x31\x84\x14\x92\x4e\xd0\x6d\xab\x3f\x2e\x0b\xfd\xa4\xe3\xba\x41\x97\x85\x14\x88\x40\x69\x16\x65\x8c\x91\x88\x45\xea\xb1\x6d\x65\x8d\x4c\xd6\xc8\x27\xe6\x49\x91\x8f\x51\x6a\xef\x1e\xfa\x01\x5c\xf8\x27\x28\x2f\x47\xeb\x28\xbb\x47\x99\xbf\xa6\x3d\xcb\x0c\xd8\x6a\xd6\xca\x46\x19\x3a\xbf\xb7\xdd\x1e\x75\x5a\xdd\x76\xc5\x96\x50\xa5\x85\x4b\x24\x75\x1d\x67\xb1\x20\xaa\x50\xf3\x82\x56\x79\xac\xad\xda\x8c\x17\xea\x80\x40\x24\x1b\x19\x42\x55\xa5\xaa\xaf\xd0\xba\xb5\x1b\xed\xc9\x5d\xd7\x8d\x68\xd2\x21\x82\x8d\x30\x4e\x76\xd8\x65\xa2\x79\x61\xa1\x52\x92\xca\x0a\x1d\xba\xa0\x0b\xb8\x50\x14\xf4\x36\xb5\x03\xe0\x14\xe9\x53\x8a\xe0\x76\xec\x07\xed\x20\xce\x68\x27\x32\xc6\xa2\xd4\xc7\x21\xb9\x50\x1c\x99\x6a\x6d\xee\xb6\x9b\x45\xed\x13\x3f\x57\x51\x60\x91\xe2\xaf\xd3\xec\x83\x26\x57\xd9\x69\x9b\x48\x26\x60\xd2\x0c\xa8\x7f\xe0\x17\xcc\x48\x06\x4d\xde\x9e\x34\x83\x62\xa2\x22\x2e\xed\xd3\xaa\xe1\x43\x82\x78\x7f\x3a\x18\x70\xd1\x0c\x93\x0f\x21\x3f\xd7\x56\x1d\x4b\x41\xea\x03\xf5\x0d\x8d\x3b\xda\x63\xbf\x6c\x17\xde\x3e\xf3\x2b\x62\x6d\xa6\x7a\xac\x87\x03\x3b\x3a\xb7\xf5\xd5\x5c\xf8\xce\xe7\x61\xf2\x2a\x78\xa5\xe0\xcc\xfc\x13\x9a\x5e\xb8\x1f\xfd\x02\x31\xb3\x78\x5f\x8b\xae\x15\x1c\xf9\xbe\xcb\x3b\xef\x6a\x9f\x36\x2f\x59\xa7\x05\x5e\x37\xcf\x72\xaf\xe0\xf6\x26\x4b\x7e\x6d\xb7\x83\xc8\x06\x53\x4d\xa1\xed\xe5\x66\x10\xd1\xe0\x74\x4b\x2e\x7c\x22\x58\xd6\xb3\x57\xc1\x2b\xbf\x79\xa7\x22\xac\xa1\x30\xb1\xf4\xf2\x9a\x1e\x14\x6f\xf8\xb8\x96\x4e\x73\xed\x47\x4b\x6a\x45\x40\x69\x3b\x57\xdb\x8b\xd4\xb1\xe9\x35\x09\x01\x75\x05\x05\x09\x20\xa6\xd4\xc7\xb4\x48\x11\x0b\x95\x16\x43\x40\x29\x54\xe0\x40\x4c\x22\x74\x48\x57\x88\xee\x60\x37\x20\xdb\x61\xcd\xfe\x0a\x66\xfd\xd3\x86\x07\x61\x61\x67\x2d\xec\xbb\x11\x45\x12\xa8\x09\x5f\x27\xea\xee\x71\x7d\xf3\xc5\x19\x37\xcc\x42\x7e\xba\x00\x99\xb3\x10\x79\x2a\xdd\x75\xdd\x60\x2f\xda\xa5\x61\x27\xe8\xb2\xd7\x84\x77\x82\x2e\xf0\x4e\xe0\x7a\xe8\xb8\x2c\xe8\x32\xa1\xfd\x67\x48\x9d\xb6\xb4\x55\x64\xbb\x6c\xba\x84\x86\xcd\x3e\xa2\x18\x78\x10\xd1\x86\x97\xd1\x34\xb5\x7d\xa8\x8d\x04\x9d\xcc\x94\x02\x54\x58\x4e\x0d\x8c\xac\xc2\x3c\x50\x6a\x44\x1b\xe9\x2f\xa5\x96\xac\x42\x25\xdb\x6f\x94\x36\x7b\xa3\x60\x3c\x21\x3c\xfd\xa5\xf9\x39\x94\x67\x4f\x76\xc0\xe0\xaf\xf6\xb9\x35\xf3\xc1\xf7\x12\x12\xf6\x12\x46\xec\x10\xa6\xec\xde\x46\x81\x3d\xcc\x33\x8f\xf2\x89\x33\xfa\x79\x60\x5d\xd6\xa7\x6c\xe4\x26\x63\xf7\x70\x4a\x02\x85\x58\x92\x05\x9d\x51\xc3\xeb\x02\xdf\x97\x68\x04\xcc\x81\x33\x09\x92\xa1\x3d\xe9\xaa\x25\xa7\xd8\x76\x9e\xb3\xed\x12\xbd\x4b\x52\x88\xd8\x68\x7f\xbb\xfd\xcd\x7f\x00\x21\xd3\x57\x35\xd0\xb7\x43\x21\xe7\xe3\x9a\x2e\x13\xe6\x4a\xda\x16\x3e\x09\xe7\x73\xb5\xfb\x91\x00\x4f\xaa\x9c\x42\x02\x23\x4a\x29\xe1\x64\x8a\x6a\xbb\xd9\x29\xb4\x19\x46\x67\x5c\xc8\xaa\x86\x29\xee\x99\xc4\xf3\x39\x89\x59\x44\x12\xc8\x40\x9d\x28\x40\x02\x55\x7f\xfb\xd7\x3a\xb3\x06\x05\x21\x07\xbc\xa3\xd0\x53\x07\x93\x20\x17\x74\xf4\xaf\x73\x8c\x4d\x4a\x32\x13\x04\x96\x2c\x01\x5b\x75\x90\xbd\x51\x2e\x3f\x62\x47\x0a\x86\x2a\x88\xa8\x75\xb5\x56\x4c\xd5\x49\x74\x3e\xbf\xa7\xab\x47\x64\x50\x10\x2c\x9c\xbd\x1a\x9c\x11\xe3\x1a\xc4\x48\x15\xbf\x96\xbc\x47\xe1\x58\x9f\xfa\xc2\x52\x70\xb0\xf5\xaa\x38\x13\x20\x59\x84\x7d\xcb\x91\xe7\x61\x4e\x40\xbf\x12\x4a\xee\xc1\x3d\x7d\xcc\x79\xc5\xb6\xfe\x4d\xda\x3e\x69\xd2\x36\xe9\xec\xed\xb3\x7f\x77\xd5\x66\xd9\x71\xff\x6a\x90\x1b\x5d\xf5\x74\xf3\x7f\xa9\x9f\x16\x6d\x13\xe4\xfa\x08\xa8\xa7\xa6\x7e\xfe\x4f\x95\x21\x68\xfc\xb8\xd5\xa5\xed\x9b\x5b\x61\xbe\xae\x9e\x9a\xb8\x94\x44\xb2\x57\x19\xc7\x46\x97\xb4\x40\x42\x6d\x77\x7c\x63\x80\x12\x60\xff\x86\xe3\x1a\xef\xe4\xb6\x0a\xd5\x0b\xf2\x73\x10\x8e\x46\xbe\x22\xe1\x80\xa7\x50\x5f\x76\xb6\xbb\x90\xe8\xa7\x9d\x2e\xe8\xe8\x0a\xbe\xec\xdc\xee\xc2\x0f\x2e\x62\x5f\x76\xee\x74\x01\x25\x13\xbe\xec\xdc\xed\x42\x2f\x1e\x8f\x03\x5f\x76\xfe\xe8\xc2\x44\xf0\x5e\x98\x68\x4f\x44\x7f\x76\x6b\x35\xf5\x37\xd7\xae\x96\x22\x1c\xfb\xb2\xf3\xaf\x2e\xa8\x6d\x57\x55\xd9\xea\xda\x7e\xbf\x5f\x64\x0a\x29\xaa\x49\xcc\x8a\x05\xab\xde\xdb\xce\x0d\xc7\xd7\x8f\xae\xe2\x5a\xd1\x64\x04\x0f\xf5\x56\x46\x4c\x68\x3b\xfb\x2a\x27\x3e\x67\x59\x93\x52\xce\x04\x33\x36\x54\xc6\xa4\x90\x0f\xbb\x5b\xc8\x89\x29\x6d\x07\xb3\xe2\x73\x96\x59\x8d\x87\x42\x5a\x7c\xd0\x49\x5a\x64\x63\x15\xc7\x84\xb6\x4e\xf0\xdd\xf4\xdd\xf8\xcd\x1f\x8f\x03\x2c\x8f\x4f\xc6\x7b\x7e\x3a\x86\x36\x90\x2c\xd1\x02\x94\xa5\x65\x77\xed\x63\x84\xa5\x1e\xd2\xa4\xd9\x84\xdb\x50\xd4\xbb\xee\x87\x7a\x52\xec\x6c\x36\xf6\x8f\x32\x9d\x31\x22\x18\xe1\x4c\xb6\x79\x53\xc6\x07\x17\x5a\x47\x20\x0c\x46\x44\x36\x3c\xea\x97\x13\x71\x83\x49\x75\x5c\xb9\x43\xe9\x5e\x8b\x5a\xac\x66\x7e\x60\x4f\x91\xa0\x05\xc2\x10\xfb\x4e\xe6\xf5\xc5\x6b\xab\x93\x81\x1b\xa5\x79\xb6\xa9\x1f\x81\x6b\x4a\x08\xd7\xa3\xdd\xc5\xd3\x5c\x25\x80\xbd\xb0\xbc\xde\xbc\xb8\x92\x7b\x94\x1b\x19\x4e\xb9\x39\xd6\xb8\x19\x56\xb8\xd6\xbc\xbb\x24\x9b\xd7\xb6\xd3\x72\x7c\xc7\xa1\xae\xe5\xe5\x31\x9b\x60\x35\x8a\x96\xe0\xb4\x35\xcf\x3f\x51\x9a\x02\xc1\x39\x6d\x3b\x50\x09\x25\x9f\x50\xc7\xf1\x9d\xa6\xe3\x5a\x22\xa7\x14\x5a\x96\x25\x83\xa8\x66\xb6\xed\xfc\xa7\x06\x98\xcd\xb0\xf6\x47\xfc\x03\xde\xc3\x7d\x78\x62\x7b\x6c\xcf\x08\x1d\xe1\xec\x11\xc1\x0a\x82\x13\x8c\xef\x47\xdb\x8a\x81\xf3\x5f\x05\xaf\x16\xf0\xbd\x52\x0c\xa0\xf1\xa1\xe4\x12\xd3\x75\x1c\x73\x61\x94\x06\xa7\x2b\x30\x7e\xad\xb6\xd3\x6a\x3a\x6e\xce\x72\x35\x42\xa3\x52\xd2\x72\xa8\x1b\xf9\xd9\x94\x87\xae\xd7\x8e\x32\x9c\x08\x5d\x8f\xba\x6a\x0c\x4c\x92\x4a\xf0\x23\x0b\x50\xd8\x30\x45\xdd\x6d\x0b\xe4\x02\x3e\xb2\x9f\xce\x2d\xc7\xc7\xc6\xb2\x7d\xe2\xb5\x5a\x75\x4e\x9b\x32\x7e\x14\x5e\x70\xb5\xa7\xc3\x89\xcf\xd9\xbe\xcd\x8a\x5b\x2e\x71\xb6\x29\xf4\xd4\x67\xd5\x2f\xe8\x57\x9d\x48\xf2\x31\x63\x05\x18\x74\x9f\x79\x7c\xdb\xc3\x35\xf2\x22\xc6\xfb\x49\x0d\xd2\xe1\x91\xad\xb5\x09\x5b\xa7\xe0\x38\x7a\xd9\xa4\x39\xbc\x16\x5d\x00\x37\x2d\x5e\x5a\x64\x14\x06\xf6\xb7\xac\x1f\xa7\x76\xea\x6b\x83\x19\xea\x4b\xbc\xa6\x87\x7f\x52\x98\x98\x82\xdf\xf5\xe8\x80\xa4\x20\xfc\xef\x50\x0e\x71\x72\xdd\x69\x87\x98\x85\x0d\xf2\x83\xed\xd4\x33\xcc\x6d\xfc\x99\xb3\x5d\xe9\xa3\xbe\x3d\x08\xb7\x76\x28\xa5\xd4\xf5\x20\xc8\xcc\x90\x72\x7f\xcb\x8c\x05\xed\xc8\x8f\xf7\x83\xb6\x3d\xe5\x71\x23\x70\x3d\x6b\xae\xfd\x78\xbf\x65\xe1\x4c\x5c\xc4\x98\x98\xfa\x25\xdc\xf3\x1a\xb1\x8d\x7c\x8f\x32\x9e\x10\x97\x98\x74\xe3\x86\x47\x69\xa7\xd5\x5d\xc0\xa7\x35\x03\xe8\xdd\x55\x2f\xef\x27\x13\x2e\x1e\x04\x78\x30\xb8\x58\x9f\x7b\x01\x37\x2b\xcd\xca\x16\xf0\x38\xe5\x91\x6c\x5d\xb7\x09\x7c\x66\x1d\x67\xe6\x80\xf3\xc3\x01\x27\x70\xc0\x19\x38\xe0\x4c\x1c\x70\x22\x07\x9c\xff\xfb\xff\x72\xc0\x19\x3b\xe0\x38\xe0\x7c\x73\xc0\x79\xe9\x80\xf3\xd8\x01\xe7\x9d\x03\xce\x6b\x07\x9c\x03\x07\x9c\x2f\x0e\x38\x9f\x1d\xeb\xc0\xf8\xbc\xa4\x3b\x9d\x85\x03\x23\xfd\x66\x8f\xa6\x67\x29\xe3\x88\x99\x44\xec\x69\x6a\x48\x10\xb5\x1d\x18\x38\x7e\x44\x29\x12\x15\x7d\xcf\xea\x24\x8e\xaf\x75\x94\xb2\xb1\xb3\xc8\x08\x64\xcf\xd2\x72\x13\x88\x72\xb6\x28\xa7\x5e\xe6\x44\x1d\x56\x9f\xa1\xad\x49\xb9\x0a\x2a\x7d\x20\x92\x22\x36\x35\x3e\x14\x29\xda\x42\x9f\x29\xe7\x73\x62\xd5\xcd\x42\x0a\x4f\x48\x04\x01\xc5\x9b\x62\xc7\x41\x8f\xd2\x0e\x4f\x7f\x4f\xd3\xdf\x49\xfa\x2b\x1c\xff\xba\xcd\x4f\x09\x43\x3a\x20\x92\x59\x43\xd2\x28\x60\x9c\x6a\x78\xe3\x83\x6a\xaa\x8b\x16\x40\x97\x0e\xe8\x72\x5f\x1a\x6a\x8f\x45\x4b\x3e\x9c\x21\x6a\xf9\xc4\x76\x06\x69\x17\x6e\x5d\xb1\x0b\x55\xe3\x5f\x31\xa4\x15\x8d\xd8\xae\x13\xe7\x96\xdd\x0c\x73\x00\xba\x4f\xec\xa0\x8c\x6f\xec\x7b\x0a\x7d\xb4\xc9\x6f\x2a\x64\xd8\xfb\x96\x2c\xd9\xe8\x09\x26\x73\x81\x7d\x86\xb4\x01\x25\x48\x76\x44\x47\xe4\x86\x5d\xa0\x91\x96\xb7\xbd\x96\xaf\x03\xfe\xe4\xca\x0e\xf6\x44\xe5\xc6\xc0\x39\xe4\xe7\x24\xc2\x10\x96\x19\x07\x52\x86\x07\x02\x21\x46\x61\x8f\x17\x0e\x73\xa9\xc5\x0d\x1e\x45\xbd\x16\xb5\x1c\x44\x4b\x42\x21\x60\x2d\x48\x58\x9c\xc1\x84\x11\x8b\x3b\x01\xda\x43\x76\x92\x2e\xf4\x98\xd7\x42\xd9\xc3\x74\x6f\x84\x92\xca\x11\x8c\xd8\x14\xa6\x2c\x84\x90\x05\x10\xb0\x04\x12\x16\xd2\xdd\x1e\xba\x91\xde\xd5\xac\x58\x98\xaf\xdd\x13\x4a\x46\x18\xcb\x90\xaa\xa1\xcf\x82\x7c\x75\x82\x2e\x1b\x81\xaa\x81\x4d\xc1\xa8\x02\x84\xfb\x2d\x3a\xb2\xaf\x6f\x47\x5b\x21\xad\x87\x30\xd5\x69\x3d\x1e\x8e\xc8\x14\x93\x36\xb2\x78\x16\x24\xdc\x6b\x51\xaa\x31\x6a\x64\xe5\x1b\xd5\x43\xba\x95\x15\xd5\xe0\xa6\x98\xb6\x88\x58\x58\x08\x5c\x94\xcd\xfd\xb3\x4c\xa3\xe1\x61\x3e\xec\x2b\xaf\x96\xde\x12\x0e\xcf\xf0\x72\x29\xcc\x22\x01\x58\xf7\xe6\x0a\x91\x72\xd0\x9f\xf2\x80\x04\x59\x9a\xb0\xd0\x59\x63\xba\x96\x86\x49\x3f\xb3\x35\x10\xe6\x70\x2e\xf2\xcb\xe1\xa5\x8b\x5e\xb9\xe6\x60\xc8\xed\x13\xae\x54\x07\x6e\xa1\xb6\xf5\xec\x84\x2c\xae\x77\xce\x94\x8c\xeb\x40\x10\xab\x2f\x12\x55\x4f\x33\x29\x0c\x5a\xfd\x2c\xc5\xe5\x6b\x97\x84\x00\x3e\x0a\x0f\xe1\x0d\xb1\x4d\x15\xbe\x14\x45\xc2\x2d\x08\x99\x2d\xf3\xa2\x39\xc2\xea\x38\xc1\x10\x30\x6e\x85\x01\x09\xf6\x62\xed\x80\x0d\x22\x44\x55\x01\x82\xc5\x10\x23\xca\x0a\x0a\xaa\x04\x93\x29\x5e\xc4\xea\x3d\x54\xef\x88\x3a\x41\x21\xa2\x07\xe7\x65\xaa\x33\x8a\x4f\x0b\x73\x2b\x97\x72\xf0\x8b\x49\x21\x87\xb0\x72\x34\x32\x18\x0d\x3b\x4b\xb4\x94\x45\x01\x29\x64\x09\x79\x01\x61\x1e\x85\x51\x88\x55\xb7\x5d\xe2\x78\x5c\x9d\x93\x7d\xbe\xd7\x6a\xb7\x7c\xab\xf5\x31\x5f\x7b\x3f\xd0\xe0\xa4\x21\x6d\x99\x40\xc0\x33\x44\x05\x3c\x01\x11\xce\x41\x72\xd4\x16\x36\x9a\x1d\x31\x92\x84\xac\x84\x75\x5e\xa9\x64\x21\x18\xd3\x6b\xf0\xa0\x6d\x7a\xee\x7b\xa9\x43\x12\x93\xe0\xb5\xe6\xf3\xed\x62\xd2\x36\xde\x80\x59\xe3\x0d\x15\xf8\x9e\x7d\x96\x74\x8b\x2f\x90\xf0\x43\xe5\x35\xbb\xae\xb0\x1d\x72\xbf\xdc\x1c\x7e\x31\xf1\x57\x41\x9e\xc4\xe7\xa9\x43\x4b\x05\x38\x24\x8a\xef\xda\x6b\xa9\x55\x10\x73\xd4\xd9\x55\xbf\x02\x0d\x04\x38\x44\x9c\x52\x3f\x1b\xae\xc8\xac\xe0\xa8\x79\x12\x24\x57\x14\x00\xc5\xcc\xe5\x10\xa0\x46\xc7\x02\xa2\x6b\x09\xd6\x42\xf4\xf2\xaf\x8a\x86\x6a\x59\x47\x2b\xb6\xaa\x08\x02\x16\x12\x0c\x0d\xaa\xf6\x92\x11\x2b\x98\x1d\xef\x92\x88\x8d\xf6\x12\x5a\xab\x91\x01\xd2\x75\x45\xeb\x07\xa9\x0f\x23\xe8\xc1\x10\x06\x4c\x92\x84\xc2\x84\x49\x32\xa2\x30\x66\xd6\xf6\xe3\x72\x38\x63\x1d\x6d\x0d\x42\xe2\x5b\x1e\xad\xd5\x26\x8d\xc1\xde\x58\x47\x84\xb2\xc9\xf0\x40\x01\xc8\x29\xf5\x84\x42\xb2\xdf\xd2\x97\x4a\xbb\x83\x3d\x36\xd9\x75\xdd\x01\x1a\xef\xf7\x98\x07\x53\xa6\x0a\xec\xf6\xf6\xe2\x5d\xd7\xed\x51\x1d\xc1\x62\xc8\xa6\xf5\x1e\xdd\x4b\xb4\x8d\xec\x70\x7f\x94\x6e\x00\x67\xfa\x06\x6e\x68\x82\xee\x56\x81\x8c\x1b\x39\xd0\x7d\xe6\xed\x36\x1a\x57\x87\xba\x5d\x3f\x33\xb7\x70\xe3\x5a\x8d\x9c\x31\x7b\xb7\x4f\x60\x04\x63\x4a\x75\xcd\xc5\x4f\x03\x98\xe4\x7c\xe1\xa4\x31\x50\xf9\x50\x96\x2a\x72\xfe\xb3\x7d\x66\x29\x09\x9d\x99\x29\x5c\x66\x0d\x42\xcb\x8a\x36\xc4\x1d\x19\x91\x3b\x6e\x3b\xcd\x16\x77\x7c\x07\x1c\x5b\x05\x30\xbb\x2a\xd2\x59\xef\x93\x90\x52\x50\x6b\xc0\xdb\x6a\xe5\x86\x20\xe9\x34\xa2\x08\xdb\x70\x08\x16\xef\xec\x41\x5c\xe7\x5b\x29\x4e\x65\xfa\x59\xcb\xd7\x04\x3c\xbb\x6d\xd9\x12\xc4\xd6\xa1\x42\xb6\x2c\xeb\x69\x3d\xde\x8b\x1b\xcd\x3b\xb5\x1a\x89\xea\x2c\xa6\x10\xed\xb1\xa0\x1d\xa2\x03\x4e\x47\x1b\xdf\x14\x38\x98\x9c\xe4\x91\x2f\x44\x21\xef\x4f\x44\xa3\xaa\x73\x6f\x5a\xab\x46\x33\x5d\xeb\x02\x14\x92\xad\xc9\x8c\x38\x98\xe6\x45\x17\x6f\x91\x65\x2e\xc7\x33\x8e\x20\xe0\xe4\xab\x8e\x8b\x81\x57\x16\x1d\x0f\xbc\x56\xf7\x6a\x4c\x02\x5e\xc1\x20\x19\x20\x5c\xff\xac\x64\x1a\x2c\xca\x3d\x5a\x4f\xb9\x35\x85\x42\xe3\x05\x49\xeb\x19\x21\x9d\xe4\xac\xb0\xdc\x2a\x5e\x48\x4d\xaf\x0d\x90\x5f\x4c\xc6\x1e\xb1\x99\xfb\x3a\xb7\x00\xf6\xf2\xbd\x82\x79\x20\x18\x27\x18\x25\x0e\xa6\xdc\x3e\x58\x29\x46\x01\x6f\x41\x2b\x6f\x18\x96\x28\x99\x06\xc2\x5c\x61\xe0\x28\x66\xa3\xc8\x19\xf4\xf3\x59\xe9\xe9\x59\xb9\xd2\x34\xf4\xf5\xd5\x51\xda\x18\x1d\x45\x56\x3f\xae\x9a\x8e\xbc\xca\xe1\x25\x63\x27\xf7\x5a\xed\x46\xb6\x67\x34\x24\x70\xea\x67\xaf\xea\xcd\x1a\xb6\x41\x21\x24\x48\x56\x30\xf9\x2e\xa4\xda\xef\xfd\xfc\xcd\xde\xfc\x27\x4b\xa5\x78\x9d\xfb\xbc\x6e\x61\xcc\x98\xdb\xde\x90\xef\xc1\x3d\xb5\x43\x79\x56\x2c\x92\x7c\x3c\xd0\xd4\xa7\xad\x33\xf9\xcd\x3b\xe9\xdb\x80\xc3\x44\x31\x11\x64\x88\xdb\xda\x90\x13\x6f\x4b\xe4\x07\x25\x89\x76\x89\x11\x8f\x2a\xf7\xf9\xaa\x4b\x09\x97\x43\xa4\xf6\x24\xb1\xc0\xc0\x13\x79\x53\xcf\xf2\x29\x1c\x5f\x63\x0a\xd1\xaf\x6e\xd6\x0a\xc2\xf3\xc7\xab\xac\xa8\x53\x6e\x5b\x7a\xac\x50\xfc\xca\x20\x36\xef\x58\xed\x3d\x59\x62\xf1\x70\xa1\x70\x5a\x2f\xcc\xc0\x6c\x65\xb6\x7c\x52\xed\xa3\x6a\x5e\xf2\x98\xe7\xd7\x8e\xea\xf4\x01\x42\xdf\xa8\x43\xc4\x36\x3d\x5b\x95\xda\xb8\x2d\x61\x33\x4e\x24\x11\xf9\xc0\xa5\x67\x65\xda\xe6\x7e\xd4\xb6\x88\x6f\x48\xfd\x30\x57\x90\x2e\xdf\xf5\x15\x7d\xcd\xab\x6f\x04\xfb\x8a\x2a\xc7\xd7\x61\x40\xa4\xa5\x81\x1e\x53\x3f\x7b\xa5\xd7\x54\x83\x96\xe9\x15\x70\x49\x1f\x1a\xde\xa5\x3b\xe6\x09\xa7\xcb\xba\xd1\xeb\x6f\xf9\xe2\x4c\x71\x3e\x1d\x92\xcd\x96\x2e\x75\x75\x65\xd3\x08\x95\x4d\x33\x8d\xea\xab\xdf\x0d\x4a\x73\x57\x9d\x8e\x4a\x7a\x63\x5d\xa9\xd0\xbd\xfe\x1c\x27\x15\x00\xbe\x46\xa1\xfb\x98\xe7\x93\xa0\x8e\x79\x69\x67\x23\x73\x5d\x2e\x2b\xae\xcb\x57\x29\x7d\xbf\x21\x31\x5d\xbc\x5f\xf6\x46\x84\x67\x02\xeb\x66\xe6\x54\xc4\xd3\x09\xaa\x9f\xd8\xd7\x35\xc3\x78\x9a\x04\x51\x3f\x69\xdf\xf4\x89\x64\x8f\x53\xd3\xe6\x2c\x33\xbc\x42\x35\x1d\x8a\xce\xc0\xb2\xcc\xae\xe3\xd8\x86\x72\x51\xae\x65\x14\x66\x5e\xda\x20\x66\x9d\x6e\x2a\xb1\x90\x9a\x81\x6d\xed\x86\xfb\xad\x5a\x2d\x51\x7f\xc8\xc8\x4d\x5c\x6f\x3f\xca\x75\xba\x35\xf7\x12\x35\x46\x0a\x69\x34\x1b\xc7\x9b\xc9\xf4\x44\x6b\x06\x91\xb0\xc1\x12\x08\xdd\x84\x52\xd8\x24\x64\xe4\xb2\xc4\xf5\xe8\x7e\x44\xe9\x2e\xc5\xf0\x9f\x8c\x04\xae\x47\x6f\x19\x4d\x8d\xec\x70\x19\xe7\xac\x9a\x96\xd5\x0a\xba\x50\x47\x24\x6b\x10\x7a\x53\x21\x78\xd4\x9b\xe9\x7b\x2b\xf3\xd6\x69\x75\x55\x3f\xe3\x2b\xe4\xf4\x30\x67\x60\xe7\xec\xf3\x5e\x38\x0e\x46\x6d\xa7\xa9\x72\xa6\x6f\xda\xa2\xc2\xca\xa5\xe3\x23\x8c\xd4\xe8\x5f\x4d\x47\x4c\xe6\x82\xff\x4e\xab\xf1\xaf\xee\xd6\x29\x54\x3a\x74\xec\xb8\x12\xfd\xe0\x2e\x48\x36\xa5\xa6\x2e\xd0\x92\x64\x4a\xa1\x70\x05\x39\xe1\xa2\xc7\x23\xd9\x76\x6e\xa9\x06\xa7\x6f\xaa\xc1\x53\x3b\xd7\x38\x8c\xa6\x49\xdb\xf9\x7f\xfe\x8f\xff\x53\xe5\xc2\x37\x95\xa7\x57\xe8\x54\x10\xb5\x9d\x57\xc1\x2b\x95\x23\x0a\xd0\x08\xc3\x52\x82\xc8\xb6\x3d\xc2\xd9\x53\x45\xbd\xf0\xd6\x0c\xf1\x0b\x2f\xcd\xa0\x9f\xde\x9c\xc2\x30\xbb\x18\x85\x01\x4b\xef\x3f\x27\xe6\xb6\x13\xc6\xcc\x5c\x69\x9e\xd9\x97\x97\x70\xca\xd2\xeb\xc9\x93\xf4\x36\x72\xc3\x41\x15\xb4\x93\x36\x19\xb3\xcd\x16\x9c\x30\xe7\xd4\xa1\xfe\xc7\xce\x49\x77\x3e\xcf\x6f\xcc\xce\xf0\x8c\xe0\x6d\x53\x38\xcd\x73\x01\x19\xcc\xe7\x4e\xcb\xd1\x8e\xd0\x1c\xa6\x1e\x84\x3e\x72\x6d\xb6\x40\x32\xa7\xe5\x80\x60\x0e\x4b\xcd\x78\x67\xcc\xb9\xa9\xb2\x0c\xdb\xa1\xef\xfc\x2f\x7c\xaa\xd5\xb6\x3a\x27\xf1\xc5\xa7\x6e\x6a\x4d\x7f\x42\xdb\x4e\xcb\x71\x4f\xf0\x52\xe7\xdc\x48\xfc\x7d\xc7\x81\xe3\xac\x70\xec\x6f\x75\x6e\x4d\xac\x12\x23\xf5\xfd\x9c\xa9\x26\xc3\x01\xdb\xea\xf4\xf9\xe0\x74\x22\x92\x5b\x79\x96\x7c\x80\x2f\xcc\x00\x87\x10\xc3\x08\x86\x6c\x06\x17\xec\x18\xdd\x11\xf6\x70\x18\xe8\x05\x3b\x27\x9c\xba\x17\xc0\x99\xe3\xe4\x36\xc2\x87\x4c\x8b\xb4\xf6\x5a\xf3\xb9\xb7\xc5\xf7\x5a\xe8\x6a\x2b\x55\xe8\xe2\xb4\xdd\xf3\xcf\x0b\x72\xe4\x33\x0a\xa7\x78\x08\xb1\x11\x97\xfb\x99\x67\x60\x9c\xd1\x94\x14\x44\xcc\x83\x90\x35\xd0\x2f\x86\x56\x3f\xd4\x77\x03\x18\x27\x5b\xdf\x02\x34\x1d\x3f\x64\x92\x45\xb6\xc0\xb9\xe5\xf8\xe8\xe8\x07\x8f\x43\x11\x85\xfc\xb3\x1d\x24\xd1\x45\x28\x98\x7e\x83\x6f\x20\x85\x21\x21\xb3\x4c\xc8\xf7\x5b\xed\xfc\x72\x38\xa4\xd9\xbd\xaf\x74\x3d\x45\xa5\xd1\xf0\xe4\x10\x7d\x0a\xb9\xbc\x56\x73\x5c\x67\x93\xb1\x7e\xad\x46\x0e\xd9\xa6\x47\x61\xc8\xc8\x61\xdb\x21\x6a\xec\xfa\xed\xbe\x3f\xf5\x9d\x06\x3e\xcf\xe7\x26\xd1\x71\xfc\x3e\x75\x87\x70\xc1\x88\x93\x68\x54\xfb\xdc\xf9\xd3\xfd\xb1\xb5\xd3\xc5\x5b\xd4\x0b\x97\x1c\xd6\x6a\x59\x6e\x8a\x77\xab\x70\xa0\x23\x02\x33\x2d\x14\x33\xde\x42\x5c\x37\xdc\x8b\x77\xd5\x21\xf7\xf6\x9f\xfb\x64\xa4\x7d\xe3\x8a\x07\x71\x9f\xdf\x93\xea\x3c\x38\x9f\x8f\xf6\xef\xfc\x41\x7f\x5e\x30\x72\xfb\x2e\x63\x6c\xd4\x0e\xb2\xfe\xe0\x95\x66\xf6\x42\xf5\x14\xdb\x3d\x4f\xe3\x2c\x2e\xc6\xb5\xda\xe6\x00\xe7\x4e\x51\x6f\x75\xba\xd4\xf8\x7b\xc4\x86\xe6\x0a\xd4\x34\xc8\xbd\x30\x73\xf8\x8e\x1d\xed\x4d\xda\xf9\xe5\xd7\xa4\x71\x94\x5d\x9e\x49\x85\xc1\xe6\xc2\x67\x5c\xab\x19\xe0\xef\x5c\x0e\xef\xcc\xbe\x38\x69\x18\x58\xbe\xaa\x12\xde\x31\x35\x0c\x22\x9d\xff\x3d\xc7\xe7\x6c\xe8\x72\xf7\xc2\x7d\x67\xe3\x00\xd3\xe9\xef\xd4\x17\x3b\xfd\xdf\x2a\xfd\x5d\xd6\xb9\x23\x66\xea\xd9\xdf\xf7\xa8\x9b\x02\x4a\x3f\x1f\x95\xad\xf0\x38\x7b\xa7\xb3\x18\x1c\x49\x2c\x53\xc1\xb3\x9c\x96\x9d\xb5\xef\xfa\x5b\x1d\xb5\xd6\xac\xd5\x68\x6d\x56\x99\x9c\x60\xdb\x83\x33\x4a\xfd\x2a\x9b\x8e\xed\x96\xfa\x04\x17\xeb\x94\x07\x50\x4f\x02\x4c\x6b\x7e\xa6\xea\x34\x7d\xd0\x0f\xaf\x05\x1f\x84\x17\x95\x77\xa9\x7d\x42\x32\x32\x8a\x9a\x0b\xce\xc0\xd1\x8e\xa4\xae\x74\x69\x9a\xdd\x74\x41\xc8\xb2\x23\x90\xd7\x82\x06\xea\x35\x2a\x24\x8e\xb6\x76\x2a\xb5\xd1\xb3\x73\x79\x58\xe7\xd4\x8d\x17\x8b\xc5\x82\xfc\xcc\xf8\x03\xdf\x01\x07\x0c\x0b\xe1\x77\x76\xba\x60\xb6\x4a\xbf\xe3\xdc\x74\xc0\x71\xba\x0b\x0a\xf7\xd9\xfb\xa6\xee\x21\x3c\xc9\x1e\x75\x67\x11\x1d\xcf\x39\x13\xc4\x6b\x51\x38\xc0\x07\x9b\xc8\xd9\x1c\x78\x6e\xc7\xd8\xe9\xda\xdc\xb7\x39\xb4\xb4\x4c\xe7\x52\x03\xb4\x4c\x24\xa2\xd6\x5f\x64\x5b\x4d\x34\x3c\xba\xeb\xba\x7c\x2f\xdc\xa5\x51\x87\x37\xbc\xae\x11\x0c\x9d\xf3\xe6\x09\x55\x67\xc3\xad\xd0\xb2\x70\xb0\xc4\xaa\xd5\x9a\x7d\xdc\x17\x1d\x5b\x0b\x33\x02\x49\x33\x03\xc8\x20\xe5\xe1\x0f\x2e\x64\xf9\x94\x76\x96\x46\x1d\xca\x63\x2b\xd8\x0a\x10\x9d\x57\xc1\x2b\x78\x15\xbc\xea\xfa\x1d\x45\xda\xa2\x4e\xd8\xf0\xba\xbe\x76\x34\xb9\x67\xee\x9b\x54\xb2\x4a\x94\xb9\xc4\xb0\xbb\x80\xa0\xea\x98\x70\x75\xa3\x4b\x1c\xb1\x11\x97\x37\xc4\x0d\x74\x2c\x95\x5e\x56\x99\xbb\x3f\xc1\x5c\x81\x0e\xef\x91\x77\xcb\xc5\x65\xb2\x99\xc4\x42\x92\x03\xde\x0c\x28\xa0\xfd\x5b\xf0\xb7\x8c\x2d\xf1\x94\x9a\x1f\x29\x82\xeb\x73\xe7\x01\x72\xe7\x41\xf3\x7b\x6a\xe7\x9d\x54\xac\xc9\xc8\xae\x61\x05\x1b\xaf\xf0\xd0\xb0\xf1\xd2\x28\xc6\x8a\x6a\x9e\x3d\xa8\x14\x56\x1c\xda\x98\xdc\x02\x8c\x95\xcc\xd4\x8e\xd0\x69\xde\x51\xdc\x73\x49\x55\x3b\x29\xc8\x31\x98\x6c\x07\x05\x04\x8b\x41\x42\x0b\x22\xda\xb5\xaf\x15\x32\x4b\x50\xa3\x99\x5c\xd4\x58\x46\x8c\x8f\x76\x69\xdc\xe1\x5d\x46\x08\x77\x3d\x5a\x17\x0d\xc2\x1b\x11\xad\x4b\xba\x85\xde\x56\x32\xcb\x80\x8c\x5e\x5e\xeb\xbc\xd9\x91\x20\x30\x96\x28\x73\x15\x5b\xe0\x0a\x18\xa1\x05\xa3\x4a\x5e\x40\x72\x1d\x64\x88\x58\x49\x2f\xd5\xbe\x5c\x1a\x95\xf4\x53\x93\xcb\x96\x58\x70\xe9\x12\x0b\xf7\xbc\x76\x47\x62\xc4\xe8\xae\x1f\xee\xb3\xa8\xdd\x89\x3b\x51\xc3\xeb\x82\xe8\xfa\x9d\x18\xd7\x1e\xc4\x9d\xb0\x8b\x1d\xb9\x36\x22\x26\xd4\x4f\x54\x41\x69\x9c\x40\x54\x61\x62\x6c\xf7\x68\x05\x26\x1e\x5a\x98\x88\xe3\x6a\xb0\x31\xa8\xc6\xc6\x37\x24\xa9\xb6\xfd\x3b\x2a\x90\x56\x85\x84\xb9\x74\xc3\x2b\xd9\x89\x67\x23\xc6\xc2\x76\x91\xd2\x49\x08\x33\x44\xcc\x7a\x71\x2d\x11\x45\x69\xd1\x5b\x4a\xf9\x99\x39\x5e\x7e\x57\x9f\x1e\xd8\xcb\x52\x86\x5f\xa3\x2f\x57\xa8\xaa\x20\xd0\x58\x8b\x63\x51\x15\x19\xef\x48\x8d\x42\xb2\x13\x29\xbc\xf9\xfd\xe2\x85\xa3\x6b\xd0\x25\x5b\x96\x80\x2a\xc5\xef\x70\xb7\xfd\x93\xc2\x4b\x9e\x59\xea\xc1\xbd\xfc\x39\x47\x82\xd7\x96\x13\xc5\xfc\xe6\xb3\x68\xd1\xc4\xd0\x8f\x55\xb9\x13\x06\x96\x6f\x1e\x88\x2b\x29\x05\x99\xbb\x7d\x42\x06\xa5\x6a\x40\x14\xcc\x72\x29\x08\xf1\x6a\xa0\x4a\x68\xcd\x49\x6e\x6f\x48\x44\xc3\x53\xf9\x89\x00\x0f\x6f\x02\x29\x08\x55\x76\x59\xb8\xa4\x4f\xa8\xa1\x76\x01\xa8\x81\x5b\x24\x82\x37\xe4\x9e\x68\xf0\xb6\xf4\xb1\x78\x3c\x18\x94\x3c\x71\x5a\x41\x38\x08\xb7\x5a\xcb\x69\xaa\x04\x22\xda\x9e\x6f\xf1\x61\x42\x7b\xfe\x0e\xcb\x68\x2b\x20\x82\x38\xf5\x0e\x86\x76\x75\x1b\x18\x4f\x3f\x6d\x90\xa0\xa9\x43\x28\xc6\xe2\x22\xbc\x98\xc2\x26\x11\x7b\x51\xad\x16\xef\xb7\x32\x5f\x61\xc9\x46\x3f\xfe\x99\x06\x31\x0b\xac\x56\x89\x74\x4c\x62\x3d\x26\x8b\xf3\x61\x38\xe2\x24\xd8\x13\xb5\x9a\xd8\x8b\x2c\xe2\x0f\x61\x1a\x44\xa2\x6a\xa0\x5f\xf3\xa2\x89\x7d\x38\x20\x72\x9f\x49\x3c\xe5\xec\xe2\x5d\xc3\xa6\x20\x92\xee\x52\x99\x19\x74\xca\x86\x47\x17\x14\x48\x51\x94\xa4\x8e\x9d\xfb\x8c\xab\x33\x50\xb4\xd7\xd2\xe5\x5d\x37\xda\x63\xad\x5d\xfd\x22\x09\x07\xb5\x10\x37\x05\xe1\x74\x97\xee\xe6\xd7\x87\x8d\x46\xb4\x5f\xc8\x66\xe5\xc2\xfb\x22\x81\xee\xab\x7a\x45\x8f\x5f\xd2\xd2\xbe\x7f\xc9\xb3\xd6\xb9\x92\xc2\x3d\xeb\x35\x52\xc3\xf3\x92\xab\xbf\xf7\x8c\x1e\x55\x3a\x7d\xe4\xa5\x5a\x21\x5a\xae\xcd\xcf\xb8\xa8\x8c\x32\x55\x72\x76\x00\x96\x56\x40\xad\xc6\xd5\x21\x75\xdf\x6b\x9b\x11\x26\x51\xbb\x02\xf7\xd5\xf3\x2d\xce\x58\x6b\x51\x75\x0f\x9e\x76\x8c\xb4\xc0\xe4\xa2\x7e\x88\xaa\x5a\x0b\x0a\x21\xae\xed\x07\x9c\x15\xe6\x49\x1d\xd9\x55\x0f\x5f\xc6\x91\x1c\x92\x16\x2e\x0b\xf5\xfe\x24\x9e\x8a\x84\xb4\x00\xff\x97\xe7\x48\xa6\x85\x1e\x4d\x47\xa3\xcf\x3c\x10\x04\x5d\x84\x64\x6f\xd4\x95\x15\x25\x32\x5e\xb0\x90\xb5\x51\x2a\x5a\x2c\x97\x0f\x5d\x39\x17\xdd\x78\xc0\x57\x8f\x74\x3e\xb2\x25\xff\x12\x7a\x9c\xcb\x98\x2a\x0b\x9d\xb1\x6f\x25\x8b\xd5\x6e\x71\x5a\xe7\x14\x64\x69\xc0\xe4\x25\x03\x86\x86\x65\xc5\x3a\x4a\x80\x5d\x51\xc7\xf8\x65\x7a\xae\xf0\xec\xf3\x8d\xb3\x07\x1c\xde\x72\x46\x1e\xa4\x86\x56\x50\x39\x71\xb8\x82\xaf\x35\x6b\xba\xe5\x38\xa2\xfa\xf1\xf2\xf9\x4a\xf3\x35\x0a\x85\xbc\xed\x7a\xb9\x1f\xe5\xd9\x5c\x3b\x9d\x29\x1c\x0c\xdb\xf6\x95\xb3\xb7\xd6\xbe\xf2\xd0\xbe\x9a\xa9\x9c\x2d\xec\x36\xd6\x8e\x4f\xb4\x61\x5e\x66\x84\xba\x7f\x34\x38\xbd\xf5\xc7\xe5\x13\x93\x8f\xc9\x43\x6d\xb9\x96\x81\x73\xff\xa8\xaf\x1e\x13\x22\x1b\xbc\x71\x97\xdf\x4e\xbb\xaf\x88\xc3\x8f\x38\xe2\x87\xb8\x0b\x98\x41\x28\xa7\x52\xba\x75\xb7\x75\xfb\x4f\x7e\x47\x91\xa1\xb7\xe9\x94\xe2\x4c\xbf\xe2\xec\x21\x27\x2d\x0a\x4f\xf1\xc1\xa3\xf0\x02\x1f\xb6\x29\x3c\xc2\x87\x1d\x0a\x3f\xf0\xe1\x36\x85\xf7\xf8\x70\x87\xc2\x7d\x7c\xb8\x4b\xe1\x09\x67\xe4\x95\x41\x91\xa7\xe6\xe1\x85\x79\x78\x64\x1e\x7e\x98\x87\xf7\xe6\xe1\xbe\x85\x58\x9c\xed\x57\x60\x10\x64\xfa\xe0\x55\x63\x24\xb3\xef\xbf\x3a\x22\x7f\xde\xbd\xcd\xef\x00\xd6\x9d\xcf\xa4\xda\xa1\x3f\x70\xf6\x84\xc3\x77\xce\xc8\x93\xb5\xd8\xaf\xdd\x02\xa4\x78\x19\x8e\x46\x61\xc2\x7b\x71\xd4\x4f\x14\x18\xbe\x53\xc7\xf4\xa3\x2c\x49\xb5\x30\xcd\x1a\x4d\x25\x4f\x96\x10\x34\xc3\x07\x4d\xf0\xb9\xbb\x73\x97\xdf\xb9\x04\x13\xe8\x96\xca\xb4\x0e\xd1\xf5\x98\x6a\x44\xff\xc8\xd9\x77\x0e\x37\x39\x23\xdf\x7f\x5f\xc7\x2e\xeb\x85\xea\xf7\x65\x9d\xb8\xcb\x6f\xaf\x5d\xac\x66\xc4\xb0\x17\x8f\x39\xbb\xc9\xe1\x33\x67\xe4\xe6\x2f\xf6\xe2\xb2\x26\xab\x4e\x5e\xd6\x64\x8f\xef\xac\x6b\xf2\xfb\x77\x0f\xb2\x11\xc2\x56\x3f\xe7\xec\x33\x87\x37\x9c\x91\xcf\x95\xad\xa6\x3f\x2f\x69\xd4\x3a\x32\xd9\xe0\x18\x36\xeb\xcd\x9a\x5d\xe9\x4a\xfb\x7f\x25\xb5\xc3\x06\xd8\xfb\x92\xde\x89\x56\xec\x32\x29\xf3\x92\x6e\x2a\xe5\x2c\xe9\x08\x8a\x86\x56\xc3\xa3\xfe\x1b\x6e\x6d\x3b\xcf\x38\x7b\x63\x11\xe2\x4f\x97\x12\xe2\xf7\xef\x1e\xe4\xb4\xd8\xbc\x18\x72\x8c\xef\x4b\x14\xf9\xfd\xbb\x07\x57\x22\xca\x06\x1a\x2f\x80\xbe\x94\x34\xdb\x84\xf6\x8d\x4d\x68\xbf\x70\xf6\x09\x09\x2d\x97\xea\x41\xed\xdc\xf8\xb0\x4d\x41\xe0\xc3\x0e\x85\x08\x1f\x6e\x53\x08\xf1\xe1\x0e\x85\x18\x1f\xee\x52\x08\x24\x23\x5f\x0c\xe2\xf0\xf4\xea\x1b\xa4\x79\x10\xe6\x21\x32\x0f\xa1\x79\x88\xe5\xba\x45\xf2\x37\x87\xe3\xb2\xc1\x40\x1a\x7b\xc9\x3a\x31\x94\x17\x97\x49\x22\x59\x20\x61\x24\x19\x09\x2e\x6b\x77\x99\x6b\xbc\x46\x57\x8a\xbc\xa3\x9d\x70\x39\x3b\x52\xc8\xdd\x58\x06\x70\x49\x6f\x0b\x7c\x24\xdd\x18\xc9\xdf\xcb\x48\xda\x35\x94\x79\xc9\x42\xed\x36\x3b\x59\x1c\xcc\x2b\x2c\x93\x7c\xb9\xdb\x30\x97\x2b\xa9\x60\x2d\xa7\x92\x8d\x2c\xcd\x76\x8c\x6b\xaa\x0e\x5d\xad\x3d\xc6\x9b\xb3\x5a\x8d\x37\x67\x7b\x5e\xab\x65\x0e\xc1\xd9\x39\xb1\xe1\x01\x6f\x8e\x81\x37\xfb\xc0\x9b\x4f\x80\x37\x5f\x02\x6f\x1e\x01\x6f\xbe\xb0\x25\xbd\x85\x63\xc1\xcc\x3a\xd2\x67\x70\x78\x73\xb6\x12\x90\xa5\x38\x76\xd5\x66\xa9\x3f\xcd\xf7\xef\x1e\xac\x6b\x5f\xb1\x81\x45\xf4\xab\x6c\x63\x06\x74\x5d\x63\x6d\x9d\x33\x59\x0c\xf2\xf0\x73\xe6\x73\x18\xfb\x12\xfa\xbe\x80\x27\x7e\x0b\x5e\xfa\x2d\x38\xf2\x5b\xf0\xc2\x6f\x2d\x16\x23\x69\x91\xa5\x81\x84\x89\x84\xb1\x84\x33\xc9\x7e\x3a\x0d\x07\xef\x82\x7d\xe7\x86\x03\x2d\xdf\x69\x39\x0b\x38\x95\x6c\xeb\xdf\x7f\x25\xf5\xbf\xfa\xee\x16\x9c\xa8\x97\x5b\x5b\x30\x93\x6c\xab\xf3\xd7\x5f\xff\xbe\x59\x77\xdb\xf3\xce\x5f\x5d\x42\x9b\x3f\x17\xdd\xad\xd3\x7c\x5e\x8f\x65\xc9\xab\xc6\x5e\xab\x9d\x82\x0f\x19\x89\xda\x0d\xee\x73\xaa\x15\x1c\xc2\x92\xbd\x5c\xe4\x92\x78\x4f\x58\x77\x7d\xa2\x11\x5b\x77\x7d\x6e\xe8\x87\x56\xdf\xcf\x65\x61\x91\x19\xfd\x84\x99\x04\xe7\xaf\xbf\x6e\xd6\xec\x70\x00\x07\x76\x56\xcb\xf7\x90\xf3\x6f\xd2\xf6\x1d\x57\xc7\x0f\x3e\x97\xc6\xa8\x6e\xee\x50\xd7\xa1\x0e\x38\xa1\x0d\xe4\xa2\x0c\xe4\x65\x30\x21\x69\xe8\x61\xcd\x8f\x76\x78\xf1\x7a\x1d\x64\xd7\x9e\xac\xc3\xd2\xc8\x9c\xca\xd4\x0b\x91\xb1\x07\x06\xe1\x7a\x96\x0e\x6c\x9b\xf0\xe6\x39\x73\xd1\xa2\x47\xe0\x4f\xe6\x76\xab\xe1\x59\x92\xd3\x5f\x00\x3b\xbd\x1c\xec\xbb\x2b\x80\xdd\x2e\x81\x7d\x7f\x39\xd8\x97\xbf\x00\xf6\xc3\xe5\x60\xef\xfd\x02\xd8\x8f\x97\x83\x7d\x7d\x05\xb0\xb7\x4b\x60\x67\x97\x83\x7d\xf0\x0b\xad\x4d\xc1\xba\x04\x7f\xf6\xef\xfe\xd9\xf6\xfe\xd5\x6a\xf9\xdb\x7c\x87\xae\xab\xea\x5b\xa9\xaa\xad\x7f\x93\x2f\x74\x4e\x3a\x6e\xa3\xfb\x57\xff\xaf\x3e\x25\x6d\xdf\x6f\x13\x7c\xa4\xed\xad\xe5\x66\xdc\x2d\x35\xe3\x0b\x8b\x3a\x5e\xb7\xdd\xf2\x1b\x24\xea\x6c\x77\x5d\x12\x75\x76\xba\xf3\xb9\xd3\x6a\x61\xe0\xb9\xd5\x0d\x79\xfb\x0b\x68\xfa\x9d\xed\xd4\x15\xc0\xc6\xce\x3a\xc8\x5f\x7f\x61\x34\xc7\xe8\xb2\xab\xe1\xad\x83\xfb\xf0\x17\xe0\xf6\x2f\x9f\xfc\x57\x57\x00\xbb\xb3\xd4\xdc\x16\x5c\x09\xf8\xd3\x5f\x68\xf3\x93\xcb\xc1\xbe\xf8\x05\xb0\x2f\x2f\x07\xfb\xe8\x17\xc0\x1e\x5d\x0e\xf6\xc7\x2f\x8c\xf0\x8b\xcb\xc1\xbe\xbf\x02\xd8\xf2\x72\x79\x61\x33\x70\x0a\xb2\x3a\x3e\xae\x5d\x27\xf7\x4b\xb5\x9c\x5c\xb6\x4e\x0a\xb0\x0a\xa0\x9e\x5c\xd6\xe0\x52\x63\xdf\x5c\x3e\x06\x1f\xae\x09\x32\xb9\x1c\xe4\x77\x59\x60\xb5\x15\xff\x90\x8b\x65\x40\xc2\xb6\xb5\x85\x7e\xac\xce\x9b\x8a\x3a\x4a\x99\x6f\xae\xcd\x7c\xcb\xdb\x9e\xcf\xbd\xed\x52\x99\xc7\x4b\x65\x3c\xf7\x03\x4f\x05\xdc\xdf\xd4\xb1\x14\x83\x1a\xc3\x8e\x55\xe6\x73\x75\x3d\x45\xc9\x43\xa9\xcc\xf3\x62\x99\x14\x84\xeb\xb4\x5a\x2d\xcb\x73\xc9\x9b\x15\x90\x8d\x28\xb4\xd4\xf8\x67\xab\x1a\x92\x0a\x51\x4a\xd9\x3f\x55\x67\x3f\xb2\x9a\x6c\x67\xff\x22\x6d\xb3\x67\x23\xf5\x34\xb3\x8d\xde\x3f\xda\x7f\xf8\xd2\xb2\x8a\x14\x65\xf8\xaf\x0a\x23\xd9\xf0\xf4\x58\xda\x95\x48\xb1\xae\x12\xb9\xcf\x6e\xcf\xe7\xba\xaa\x1f\x0a\x84\xff\x83\x9b\x4b\x32\xcb\x92\x52\x94\xcc\xd8\x11\x28\x1c\x4b\xf2\xa3\x3c\x93\x2e\xb9\xcd\x18\xc3\xb7\xac\xb2\x72\x93\x22\x51\x3e\xcc\x61\x36\xcb\xe6\x72\xa9\x9f\x4f\x2f\xed\x67\xbc\x54\xa6\x24\xc3\xbe\xe5\xb5\x5a\xa5\x32\xc1\x52\x19\x92\xf6\x8d\x5e\x5a\x36\xb9\xbc\x3e\x7e\x1b\x24\xdc\xb6\x83\x68\x89\x42\xec\xc7\xa5\xd9\xd0\x0d\x10\xd9\x9c\x88\xa5\x39\x59\x6a\xd7\x52\x1d\xd3\xf2\x7c\x97\xc5\xb5\x1b\x46\xa8\xb0\xaf\x8f\x11\x44\xd6\x59\xc3\x03\xc7\x75\x28\x75\x8f\x25\x91\x5b\x77\x5b\xf3\x16\x38\x2d\x07\xb6\x75\xc2\xad\xbb\xe6\xd5\x32\x43\xaa\xee\x7e\x26\x83\x28\x8d\x56\x7f\x65\xf6\x6a\x4a\x33\xbc\x2c\x7f\x35\xb1\x19\x2c\x15\xf3\xdc\x44\xa6\xa8\x33\x95\x95\xc4\x66\xb2\xb2\xaa\xb5\xf4\x66\x5c\x2c\x96\x42\x29\xd3\x9b\xb3\xd5\xc0\x57\x90\x9c\xd3\x35\xcd\xa9\xa6\x3a\x27\x2b\x4b\xac\x22\x3c\xb3\x32\x8e\x18\xf9\xde\x1a\xda\x73\xbc\x54\xcb\x17\x6e\x0f\x6c\xd5\x9a\x3c\xbf\xac\x1e\x9b\xfc\x44\x0a\x8a\x1f\xc9\x65\xf2\x73\x50\x26\x3f\xe7\x86\xfc\x44\xe5\xb9\xd5\xe4\x07\xdf\xec\xfa\xca\x0d\xbb\x58\xa2\x40\x26\xa7\x75\xb8\x5c\x1e\x56\x79\x59\x87\x8f\x56\x4e\xc5\x5a\x5a\xf2\xae\x8a\x0e\x9d\x67\x74\xe8\xb2\xe2\x2f\xaf\x54\xeb\x12\xa5\xb8\xb7\x4c\x8d\xca\xf3\xb3\x4c\x90\xca\xb3\x54\xd5\xc0\xa5\x9a\x5e\x8b\x4c\xa3\xc5\x71\x5b\xc5\x15\xf2\xc0\xfa\x76\xcb\x4a\xff\x26\x0a\xfe\x4e\xf3\x53\x8f\x28\x5b\x7b\x69\x56\xd0\xe5\xc8\x08\x5a\x87\x18\x51\x92\x2e\x68\x99\x95\x95\xe3\x61\x01\x0b\x96\xdc\xce\xba\xdc\x77\x6d\x8d\x0f\xeb\xc0\x21\x48\xc1\xab\x25\x7a\x79\x4c\xe3\x26\x3f\x24\x14\x7a\x6c\x9a\x2a\x13\xc1\x90\x4d\x8d\x05\xff\x80\x8d\x88\xd3\xbc\xf5\xc2\xa1\x30\x51\x8f\xfe\xad\x23\x87\xc2\x58\x3d\xde\x7a\xea\xdf\x7a\xe9\x50\x38\xd3\x2f\x37\x6e\x4d\x1c\x0a\xa7\xf8\x12\xdc\xb8\xd5\x77\x28\x9c\xe0\xcb\x89\x7e\x99\xe1\xcb\x7d\x87\xc2\x31\x3e\x7d\x76\x28\x9c\xb3\x4e\x27\x00\x0f\x3c\xbe\xd3\x85\x4e\x00\x77\xe0\x4e\xfa\xe4\xdd\x01\xcf\x3c\xef\xb4\x60\x87\xdf\xee\x42\x27\x06\x0f\xee\xa6\x4f\x77\x60\x87\xdf\xd1\x69\x77\xe0\x5f\xe9\xe3\x4e\x0b\xbc\x3f\xf1\x39\x04\x0f\x76\xee\xa6\x8f\x3b\xe0\xb5\x4c\xf2\x5d\xd8\xf6\x4c\xba\xb7\x0d\xb7\x77\xb6\xf1\x25\x02\x0f\x50\x58\x8d\xcf\xdb\xe0\xfd\xb1\xad\x4b\x08\x55\x27\x8a\xf4\xbb\xd0\x91\xe0\xc1\xf6\x9d\x7f\x6d\xf3\xbb\xf8\xb2\x03\x7f\xfc\xf1\xc7\x5d\x7c\xe1\xaa\x3e\xef\xce\x8e\x7a\xb3\x34\x26\x0f\x48\x92\x09\xc4\x03\x92\xd0\xbd\xa4\x3d\xf0\x63\xfd\x30\xf1\x43\xfd\x30\xf6\x23\xfd\x70\xe6\x4b\xfd\x20\xf4\xcf\xa9\x7f\xe2\x73\xfd\x38\xf3\x8f\x29\xb1\x35\xe5\x2e\x48\xaa\xfa\x94\x99\x78\xeb\x60\xf9\x5e\x8b\x42\xee\xdd\xd8\x78\xff\xcd\x5d\x25\x65\x46\x14\x51\x43\xd0\x2d\x09\x81\xd1\x32\x7e\xc7\x9b\x01\x25\x95\xa2\xeb\xce\x76\x77\x41\x69\x53\x84\xa7\x43\x49\xce\x21\xce\xb5\x90\x19\x63\xe7\xb9\x67\x81\x82\x1f\x26\xb1\x95\x8e\x07\x44\xd9\x93\xa4\x20\x19\xa7\x7e\xa0\x32\x93\x80\x9d\x77\xe2\xad\xf3\x4e\xd0\xf0\xba\x9d\xed\xee\xde\x79\x27\x50\xbf\x5b\x71\x3b\x68\x78\x7e\xd0\xa5\x1d\x4f\xbb\x48\x6d\x75\xa9\x4f\x2c\x35\xea\x42\x35\x10\x29\xb0\x9e\x82\x8c\x61\xe2\x50\x9c\x4e\xc2\xdc\x16\xd5\x3c\x4c\xd7\x98\x34\x66\x4b\xa6\xa7\x2d\x1a\xa7\xd7\x51\x17\x1c\x92\x82\xfd\xe1\x43\x41\xa9\x3f\x24\xda\x08\xf1\xab\x40\x68\xd5\x3e\x16\x24\x08\x36\x24\x14\x2c\xb7\x63\xb6\x07\xa0\x98\x85\x7b\x99\x4b\xa1\x18\x67\xd7\xf8\x28\xc1\x81\x24\x92\x5d\x10\xae\xd6\x33\xa5\x6d\x63\x0d\x19\xa1\xb3\x39\xbf\xd3\x85\x58\xa5\x65\x7e\x02\xa4\x69\xc6\xb2\x9f\x00\x4b\xc3\x47\x23\x52\xfb\xc0\x1f\xa1\x43\x96\x69\xc9\xc0\x3e\xdb\x18\x87\x39\x4b\xc6\xb1\x11\xa8\x00\x5e\x50\xf8\xa6\xb4\x3d\x24\x5f\xd0\xa4\x99\xfa\x53\x05\x6b\xa5\xb9\xee\x14\x2a\x89\x93\x6a\x80\x25\xd3\x10\x96\x7d\x7f\xaa\x3d\xf8\x4a\x90\x6f\x1c\xbe\x72\x78\xc5\xe1\x03\x87\x8f\x1c\x1e\x73\x78\xce\xe1\x19\x87\x49\x1e\x87\xa9\x93\xcd\xee\x36\xdf\x01\xbc\xe3\x28\xa5\x6c\xd3\x6e\x51\x1f\x75\x59\x95\x12\x9d\x3c\x05\x12\x03\xa0\xa1\x71\x91\x7a\x41\xc7\x8f\x52\xa5\x84\xda\x86\x2d\x8c\xfb\x09\x1a\xd4\xf4\x83\x59\x02\x01\xe3\xcd\x64\x18\x0b\xc5\x30\x27\x18\xcc\x68\xac\x18\xa8\x04\x46\xe6\xc3\x4b\xfd\x3e\x65\x07\x92\x84\x8a\x06\x5f\xe0\x6f\x5f\xbd\xc7\x14\x86\xea\x3d\xa6\x30\x50\xef\x81\x22\xc1\x17\xf8\x3b\x56\xef\x89\x22\xbd\x17\xf8\x7b\xaa\xde\x47\x8a\xe0\x5e\xe0\xef\x8c\xfd\x0c\xaa\x4c\xfa\x82\x4e\xce\xbf\x77\x17\x70\xaf\x2a\x4f\x5c\xcc\x73\x52\x95\x67\xd4\xb1\x4f\xa0\xdd\x05\xdc\xaf\xca\x95\x94\x73\xf5\x7c\xed\x95\xd8\xff\x2e\x81\xab\x3f\x03\xff\xb9\x84\x53\x3f\x10\xf0\xd8\x1f\x09\x78\xe2\x7f\x94\xf0\xd4\xbf\x29\xe1\xab\xff\x58\xc2\x0b\xff\xb3\x84\xb1\xff\x46\xc2\x4b\xff\x99\x84\x49\x55\x1d\x61\xc7\x2d\x9c\xe7\xf7\x99\xb7\xad\xaa\xfa\x5e\x95\xd9\x73\xff\xf3\x3f\x0b\x67\xe7\xad\x1d\xba\x80\x37\xfe\x37\x01\x89\xff\x56\xc0\x91\xff\x49\xc2\xd4\xff\x22\xe1\xbd\xcf\x05\x7c\xf0\x85\x80\x73\x3f\x12\xf0\xd1\x0f\x05\x5c\xe8\xd6\x7f\xd2\x3f\x33\x3f\x16\xf0\xd9\x4f\x04\x7c\xf1\xa7\x02\x9c\x5b\x8e\xff\x40\x2c\xe0\x78\xfd\xc8\x1b\x5e\xe5\x92\xc1\xb7\xb2\xad\x1b\xff\x9c\x23\xbf\x64\x0a\x0a\x19\xb3\x59\xe8\x09\xe0\xea\xcf\xc0\x1f\x0b\x38\xf5\xdf\xa9\x59\xb8\xa7\x66\xa1\x2f\xe0\xa9\x3f\x14\xf0\xd5\x1f\x08\x78\xe1\x4f\x04\x8c\xfd\x33\x01\x2f\xfd\x53\x71\xc9\x2c\xe4\x67\x9d\x2b\x4e\x44\xde\xb2\xa5\xb9\x38\x11\x30\xf5\x67\x02\xde\xfb\xc7\x6a\x2e\x0e\xd4\x5c\x5c\xa8\xb9\x38\x5c\x9e\x8b\x23\x35\x17\x2f\xd5\x5c\xbc\xce\xe7\xe2\xbc\x38\x17\xb6\xc0\x6a\xb0\x5e\x5e\x75\xce\x26\x18\x77\x0c\xa5\x55\x85\xcb\x9c\x2a\xa1\x5d\x61\x2a\xed\x5a\xfa\x97\xd5\x32\xbc\x4e\x2d\x27\x2b\x6a\x39\x5d\x5f\xcb\x98\x9d\x5c\xa7\x96\xfb\x2b\x6a\x19\x5f\x56\xcb\xd9\x75\x6a\xe9\xd9\xb5\xd8\xfe\xa7\x0f\x33\x9d\xee\x05\xf4\xfd\x87\x8a\x4e\x3c\x54\x74\xe2\xbd\xa2\x13\x0f\x24\x3c\xf6\x5f\x4b\x78\xe2\x3f\x55\x74\xe2\xa9\xa2\x13\xaf\x14\x9d\xf8\xa1\xe8\xc4\x57\x45\x27\x5e\x14\xe9\x84\xdd\x83\xe9\xfa\x1e\x4c\x58\xef\x3a\x3d\xf8\xee\xbf\x95\xf0\xc6\x7f\x22\x21\xf1\x3f\x48\x38\xf2\x1f\x29\xd2\x71\xa4\x48\xc7\x3b\x09\x1f\xfc\x97\x12\xce\xfd\x43\x09\x1f\xfd\x7b\x12\x8a\xe6\x73\xa5\xee\x0a\x4c\x59\xc0\xa7\x55\x21\xfb\x0f\x71\x93\x97\xe8\xb4\x6f\xa6\x06\xe1\xb3\x1a\x84\x2f\xfe\x37\x89\xa8\x7e\x5f\x2e\x6c\x86\xd3\xde\xcf\x33\x80\x66\x10\x52\x87\xf6\x9d\x2e\x24\x0c\x1d\xf8\xb5\x60\x9a\x99\x7f\x66\xf1\x66\x0a\x47\x8a\xf9\xdc\xd6\x61\x77\x05\xc6\x08\x48\xf6\xa6\xbb\x74\xe7\x0f\x6d\x95\x9e\x9b\x88\xa2\x43\xa8\x20\xb3\x9e\xc7\x71\x1e\x41\x42\x4d\x70\x1a\x12\xb2\x33\xd9\x89\xd2\x42\xf7\x24\x71\xdd\x84\x76\x69\xbb\x94\xe2\x87\x2c\xf5\x03\x89\x2e\xb1\x9d\x96\x03\x24\xc6\xf8\xd4\x3a\x6e\x4b\x4c\x84\xe2\x79\x20\x30\xa1\xf4\x60\x84\xf6\xf8\x19\x5b\x5a\xd5\x82\x20\x8f\x2b\x62\x73\xd1\x97\x0e\x17\x1b\x4a\xe2\xfd\xab\xd5\x32\xf1\xef\x3d\x74\x40\x78\x48\x62\xe0\x20\x30\xbc\x4c\x8b\x6e\xe6\xd1\x90\x2d\x4e\x0a\xcd\x9e\xdf\x38\x61\x74\x23\xa6\x65\x3e\x33\x6e\xbe\x41\x38\x4e\x52\xfd\xdd\xe3\x3b\xf5\xb8\x99\xb8\xc4\x79\x81\x19\xda\x71\xf3\x85\xdf\xa2\x26\xa4\xfe\x26\x71\xbe\xe8\x82\xb5\x1a\x89\x9b\x5f\x98\xe2\xfa\x27\x98\x82\x09\x4f\x58\xdc\x7c\x72\xcb\xdb\x76\xbd\xed\x7a\xdc\x9c\x50\xc8\x8c\x4a\xe3\xe6\x18\x73\x8c\x99\xf3\xdd\x40\xfe\xee\xab\xe2\x1f\x34\x40\x75\xa0\x88\x9b\x1f\xf6\xbc\xf9\x3c\x6e\x7e\xd8\xbf\xb3\x53\xe8\x92\x73\x8e\xb9\xe6\x73\x12\x37\xcf\x99\x47\x21\x6d\x07\x32\xf4\x11\xeb\x4b\x32\x94\x24\x6e\xce\x90\xcd\xa2\x05\x79\x86\x62\x5d\xf7\xd3\x33\x79\xd8\xe6\xe9\x69\x3c\xa2\xbe\x5a\x74\xea\x6b\x22\x53\x63\x06\x12\xc1\x1f\x75\xd5\x08\x54\xc7\x8c\x9b\x33\x16\x2d\x9d\xd8\x41\x75\x21\x2a\x6e\x21\x10\x37\xfb\x59\x5a\xaa\xa1\xa4\xda\xe9\xde\xa5\xb7\xfe\xc0\x23\x04\x89\x58\xaf\xa2\x89\x15\xed\x7b\xca\xb3\xf6\x3d\xe5\xba\x7d\x1f\xf8\xfa\xf6\x55\x35\x6e\xa9\x65\x4b\xcd\x42\x2f\x60\xc4\xf9\x98\x8e\xab\xf3\x3e\x9b\xd7\xe2\x58\x3b\x53\x33\x5d\xd3\x5b\x7f\xf8\x69\xfe\xb6\xa7\xa6\x2e\x64\x66\x16\x4a\xe3\x6f\x0f\xbf\xdf\x5b\xfe\xa6\xfb\x1d\xe3\xc5\xa2\x6a\xa1\x81\x9a\xb5\xce\xfd\xa3\x1e\x37\x3f\x36\x48\xe8\xde\xa1\xb7\xfe\xf0\x55\xb2\x4a\x79\xaf\x52\xb0\xf5\xe9\x92\xcb\xb0\x20\x6e\x3e\x71\x59\xdc\xfc\xb2\xe5\xb5\x5a\x73\x05\xf4\x25\xbe\xa2\x00\xa8\xaf\x78\x59\x6c\x47\x6c\xaf\xc1\x43\xcb\x8c\xc7\xf8\xf1\x40\x2a\x85\xbe\x3b\x8c\x0d\xd4\x28\x5b\x62\xbb\xc1\x5e\xa2\xbd\x87\x46\xfb\x6c\x94\x62\x67\xc3\x53\x2b\x03\x29\x12\xc6\x48\xb2\x88\x52\xe0\xba\x54\x3b\x6a\x33\x1f\xd2\x44\xd8\x24\x31\x3b\xef\x84\x37\xc2\xe8\xc6\x99\x6c\x17\xbe\xf9\x61\x17\x1d\xc3\xb2\x38\xdd\xa0\x72\xc7\xef\x0d\x4f\x3b\x6e\x53\x00\xd5\xc2\xb7\xaa\x8a\x54\x55\x59\x2e\xb3\x6e\xcc\xc3\xac\x79\xc1\x0e\x88\x80\x19\x85\x59\xf3\x13\x3b\x20\x91\x7e\xec\xb1\x03\x22\xd5\xe3\x71\x9a\xe1\x58\x3d\xea\x0c\xf8\xa8\x33\x1c\x53\x30\xb6\xd9\xcb\x87\x93\x83\x34\xd4\xd5\xcc\x52\x36\x5a\x67\xf2\xbd\x00\xb9\x80\x49\x20\x12\x5e\x01\xec\x22\x05\xb6\xe9\x5d\x07\xda\x54\xf6\x1e\x5d\xd6\xbc\xe3\x6b\x02\x7c\x7d\x59\x0b\x5b\xd7\x00\xb8\x58\x90\x9f\xe6\x08\xe7\x3b\xb7\x2e\xe0\xc6\xad\x4f\x0e\xa8\x14\xdf\xb9\xd5\x18\x6f\xdd\x6a\xf4\xb7\x6e\x7d\x76\x40\xea\xef\x8d\xa7\xfe\xad\x97\xfe\xad\xa3\x1b\xb7\x26\x0e\xa4\x67\x3b\xbf\xe3\xdc\x7b\xe9\x80\xf3\xfa\xa5\xd3\x05\x75\xc6\xf3\x3b\xce\xd1\x34\xea\x07\x33\x07\x9c\x97\x71\xfa\xf0\x6e\xca\x13\xfd\xf4\x91\xf7\x23\xf3\xfc\x6e\x38\x15\xe9\xe3\x23\x11\xea\x87\xa3\x40\x4e\x85\x7a\xec\x42\x76\x50\xd4\x20\x35\x3c\x0d\x4c\x03\xd2\x20\x74\x69\x5d\xd4\xe9\x82\x3e\x50\xfa\x1d\xe7\x59\x10\x4d\x03\x81\xc0\xf9\x89\x48\x1f\x5f\x06\xa2\x37\x74\xc0\xb9\x37\x11\xe1\x08\xdf\x55\xea\xb3\x69\xc4\xf1\x67\xa4\xde\xee\x4d\x4f\xa7\x89\x54\x00\xf9\x44\x72\x94\x1b\x81\x73\xd8\x93\xb1\x7e\x7a\x15\x9f\x99\xc4\x87\xbc\xa7\x1f\xd3\xc6\xbe\xb4\xea\xd6\xf5\xea\x2a\x75\x85\x76\x75\xba\x36\x5d\x99\xae\x49\xd7\xa1\xe1\x6b\xd0\x68\x94\x3f\x91\x6c\x20\x8d\x59\xfe\x40\x36\x11\x43\x61\x8c\xa9\x19\x7e\x81\x7e\x41\xdc\x40\x25\xb6\x17\xa2\xda\xae\xc8\xec\x02\xbf\xa0\x21\x6a\xd9\xa9\x58\xf7\x1e\x57\xd0\x0d\x2d\x58\xab\xd8\x57\x26\xc6\x60\xe5\x32\xfd\xd1\xcb\x14\x48\x73\xcb\x15\x78\x24\xd8\x0b\x01\x3f\x04\x23\x2f\xc4\x65\xca\xb2\xe9\x3d\xcc\xda\x7e\xff\x56\xc3\x83\xfc\x28\x88\x8a\xbd\xef\x05\xfb\x21\xe0\xbe\x60\xe4\xc7\x65\x6d\x35\x37\x40\x57\x68\xe9\x6f\x30\x2e\xb0\x2f\xa9\xb0\xa5\x4f\x04\xbb\x2f\x72\x8e\xfa\x43\xb5\xdc\x69\x2a\xe1\x91\x80\x2f\x1c\x12\x09\xef\x05\x3c\x11\xa9\xdc\x69\x6c\xc9\x9d\x32\x3d\xce\x4c\xee\x54\x4a\x59\x92\x3b\x65\xda\x10\x62\x39\x10\x15\x46\x38\xf4\x20\x61\xf7\x60\x54\x70\xf5\x36\x5d\xe1\x00\x22\xf4\x13\xa2\x2f\x40\x9a\x77\x7c\x22\x19\x89\xd0\x67\x3b\xad\x0b\x18\xb5\xab\x03\xc0\xa2\x17\x45\x5b\x5b\xb1\xb7\xc2\x21\x54\xea\x6c\x79\x63\x95\x4c\x94\x74\x04\x44\x5d\x26\x21\x61\x1c\x03\x0c\xc1\x94\xfa\x9d\x84\xb4\x28\x24\xc4\xa3\xdd\x45\x2e\x95\x2d\x4b\x5a\xc3\x75\xb6\xfc\x31\x04\x5d\x16\x02\x67\x11\x89\x99\x1b\xa3\x57\x1e\x12\x30\x37\x40\x1f\x61\x78\x27\xd7\xf2\xbd\x2d\x9c\x79\xac\x52\x15\x40\xe1\xe3\xd5\x3d\xb1\x8d\xd0\x85\xdb\x14\xa3\x2b\x4d\x0b\xa1\xd0\xaf\x1a\x6b\x0a\x4b\x27\xaa\xb4\x36\xa9\xed\x91\x43\x6a\x5e\xb4\xf3\xb9\x1e\x39\x52\x29\xd7\x72\xa9\x1d\x6a\xb8\xa1\x15\xba\x29\x1f\xab\x08\x47\x25\x24\x38\x24\x21\xa9\x1e\x0f\x8b\xeb\xfa\x28\x2e\x0f\xb5\x56\x0c\x2d\x5f\x7c\xbd\x7e\x6c\xb5\x9b\x19\x4e\xb3\x37\x44\x21\x38\xb9\x77\x05\x67\x8e\xd8\xce\x9b\x48\x17\x21\x5e\xeb\x79\xf3\xb1\xb0\x5d\xb0\x7e\x17\xbf\xe0\x83\x15\x2b\x7b\x2c\xaa\x9c\xb0\xae\xaf\xfb\xb3\xb0\x1d\x8d\x62\xdd\x57\xab\xec\xb3\x58\xe7\x6a\x74\x7d\xa5\xcf\x85\xed\x1a\xf3\x1a\x95\x3e\x17\xeb\x9c\x63\xae\xaf\xf4\x8d\x45\x0e\x9f\x8b\x6b\xb9\xc6\x7c\x96\xb7\xb7\xd3\x05\x69\x87\xd2\x13\x26\xfe\xbe\xe5\xcb\x25\xf3\x02\x43\x48\x31\x98\xa0\x00\x8f\x36\x3c\xba\x95\x05\x48\x54\xc7\xb0\xdc\x0f\x7e\x99\x9e\xc8\xf5\x4e\x66\x32\x3f\xf1\x1b\x7c\xc9\xc9\x8c\x5c\xe1\x64\x86\x97\x9d\xcc\x70\xdb\xc9\x8c\x58\x80\xf8\x05\xb2\x61\x7b\xcc\x2f\x59\xe2\x5b\x3b\x16\x2a\x9a\x2b\x82\xca\xf6\x25\x89\x8a\x63\x80\x5e\xfa\x2b\xbc\xca\xe4\xcb\xdc\xba\xa8\xfa\x99\xaa\x0a\x4a\xd7\x5b\x40\x0a\x31\x77\x38\x14\xa8\x81\x8e\xb6\xa4\x86\xb9\x02\x99\x9e\x09\x92\xef\x76\xdc\x42\x1d\x51\x89\x3a\x9f\xcc\xdd\x7d\x16\x27\x0a\xef\xb4\x38\x70\x76\xa8\xfd\x21\xe9\x5b\xfd\x16\x44\x2c\xbf\x48\x82\x50\x3b\x70\x2c\xf8\x8d\x41\xe7\xf5\x11\xc5\x88\xd1\x3a\x9a\x34\x27\x78\x2f\xd6\x71\x5d\x51\x11\x96\x32\x3b\x38\x54\x6d\x7b\x51\xc3\xb3\xed\xe9\x79\x9d\x45\x96\x13\xea\xb8\x23\xbb\x84\x17\x7d\xdf\x7f\xa9\xd8\x9e\x21\x80\x84\xb5\x60\xc4\x9a\x77\x60\xca\x3c\xe8\x31\x0f\xfa\xec\x1e\x0c\x0b\x7b\xf5\x60\x45\x24\x87\xc0\x27\x9c\x35\xef\xb8\x44\xbd\xc7\x84\x53\xda\x90\xb4\x4e\x7a\x75\xbe\xd7\xab\xcb\x76\xe4\x87\x14\xfa\x64\xb8\x62\xdb\x46\x87\xf2\x36\xad\x9d\xac\xdf\xb6\x21\x5c\xbf\x71\x43\xa8\xb6\xee\x3e\xc3\x19\x4b\x13\x28\x0c\xa8\xdf\xe9\xab\x1d\xbc\xaf\xd6\x35\xf4\x0b\xfb\xf8\x60\x69\xdd\x05\xeb\xf6\xf1\x04\x46\x30\xed\xb2\x00\x38\x8b\x49\xc2\xdc\x44\x6d\x5b\x31\x19\x31\x77\x84\xde\xf2\xc9\x94\xb9\x53\x0a\x51\xb6\x87\x35\xef\xa4\x9b\x58\xc8\x24\xf2\x34\x3a\x49\x34\x24\x85\x1e\x93\x7b\xbc\xdd\xf0\x7c\x0f\xdb\xa8\x61\x2f\x60\x70\x9d\x4d\x7f\x88\x9b\xfe\x00\x83\xf1\x0f\x7e\x61\xf5\xf6\x19\x96\xee\xab\xd2\x7a\xf5\x4e\xd4\xa6\x3f\xb0\x37\xfd\x89\xda\xf4\x07\xd7\xdb\xf4\x03\x0d\x37\xb0\x36\xfd\x7c\x60\x63\x1c\xc0\x80\xe0\xe8\x05\x04\x87\x2e\x20\xbf\x34\x6e\x16\x76\xf3\xc8\xda\xa8\xbf\x5c\x6b\xa3\xe6\xd1\x15\xb6\x10\x19\xd9\x1b\xf5\x97\xc2\x46\xdd\xf4\xe0\x3a\x7b\xb5\x8c\xae\xbf\x57\x8b\xc8\xde\xab\xbf\x5c\x7d\xdb\x14\xd1\xaf\xef\xd5\x51\x64\xef\xd5\xd7\xa8\x34\x8a\x7e\x7d\xaf\x2e\x38\x14\x8b\xae\xb2\x57\xdf\x4f\xb7\x9e\x05\x94\xef\x22\x9c\x69\xc2\x6f\x24\x52\x84\x3d\xe9\x6c\x88\xa6\xc0\xa8\x16\xcd\x3e\x91\xe0\x04\xa2\xe7\x00\x59\x6e\xff\x6b\x75\x46\xcd\xf2\xf0\xa0\x32\xd3\x0b\x2b\xd3\x28\x8c\x78\x65\xa6\xa7\x56\xa6\x49\x58\x9d\xe7\x7d\xa9\xb6\xb7\x41\x3f\x0c\x46\x95\x59\x6f\x5a\x59\x05\x66\xbb\xb7\xaa\x79\x37\x4b\xcd\x5b\x03\xf5\xe3\x12\xd4\x17\xab\xfa\x63\x67\x9d\xc4\x61\x24\xd7\x80\x7d\x5c\x6c\xc1\xb7\x27\xb1\x08\x7f\xc4\x91\x5c\x91\x9d\xf3\x52\xfe\x0f\x5c\xc8\xb0\xb7\x22\xb7\x2c\xe7\x5e\xd3\x10\x61\xe7\xd5\x9e\x71\x2b\xf3\x1d\x2f\xe7\x4b\x2a\x33\xce\x96\x33\x3e\x08\x45\x6f\x54\x3d\x66\x51\x45\x6e\x11\x27\xd5\xa0\xc3\xe5\xcc\x0f\xc3\x60\x1c\x47\xfd\xca\xec\xc9\x72\xf6\xa3\xef\xd3\x40\x54\xb7\x64\x58\x91\x5b\x06\xa2\x32\x6f\x7f\x39\xef\x3b\x11\x06\xd1\xe9\x8a\x5e\x4e\x96\xf3\x7f\x9c\x55\x67\x3d\xb1\xb3\xf6\xa6\xe2\x8c\xdf\x0f\x92\x30\x79\x30\x8a\x13\x5e\xdd\xcd\x77\xd5\x25\x0e\x27\x3c\xaa\xcc\x7f\xaf\x3a\x7f\x65\xde\xc3\xe5\xbc\xd3\xf1\xe4\x53\x65\xde\x07\x95\x79\x3f\x57\xe6\xfd\x56\x91\x37\xea\xaf\x18\xbd\xaf\x4b\x99\x1f\x04\xa2\x1f\x46\xc1\x68\xcd\xa8\x3c\x5a\x59\x68\xe5\xc0\xbc\x5f\x59\xa4\x9a\x7c\x55\x64\x97\xe3\xe9\x68\xf4\x36\x1e\xaf\x69\xd8\xc7\x35\xc5\x56\x36\xed\xf1\x9a\x42\x95\x05\x3e\x2c\x15\x50\x64\x2b\x10\x6b\x1a\xf6\x7c\x45\x91\xea\x39\x29\xe7\x7d\x19\x47\xb1\x8c\x23\x5e\x8d\x1b\x91\x5c\x95\xbf\x1a\x3f\xc2\xa5\xfc\xaf\x02\x39\x15\x2b\x66\x22\x59\xca\x7d\x24\xf9\xa4\x32\xeb\xb4\x32\xeb\xbd\x81\xe4\x2b\x56\x7a\x65\xfe\xfb\x7c\x10\xaf\x20\x23\x3d\xbb\x40\x22\x83\xde\xb7\xca\x6c\x67\x4b\xd9\xb4\x51\xc4\xc1\xc5\x24\x58\x41\xce\x4e\x57\x14\x79\x18\x9e\x71\x71\x1a\x46\xa7\xd5\xf4\x64\x45\xa9\x57\xf1\x8a\x5d\x6c\xb8\xa2\xc0\x51\x38\x1a\xc6\x53\x2e\x65\x75\xb1\xd9\x8a\x62\x1f\xc3\xd3\x55\x54\xf1\x78\xb9\x88\xe8\x73\x71\x6f\x32\xe1\x81\x08\xa2\x5e\x75\xa9\xf3\x15\xa5\x92\x1e\x8f\xfa\xab\x46\xe1\xa2\xba\xd0\x43\xbe\xb6\xd4\x51\x75\xa9\xa7\x51\x12\xf6\xf9\xe1\x54\x56\x93\xe3\xea\x42\x2b\xc7\x7b\x50\x9d\xff\xad\xd6\xf1\xac\x2c\xf2\x52\x15\xd9\x40\x3e\xf5\x46\xea\x59\xf2\xf5\x53\x08\xd9\x76\x3d\xc2\xf0\xb6\x1e\x6f\xdc\x2d\x06\x68\xc3\xa0\xcb\xc7\x17\x2d\x1d\xc4\xf9\x78\x66\x1e\x2e\x3c\x93\xe2\xa1\xd7\x3f\x1d\x7f\xfb\x98\xd9\x21\xb6\x13\x52\x50\xa8\x0d\x16\x81\x15\xd5\x3a\xb1\x9e\x7f\x62\x8b\xc4\xb4\x27\x63\xe1\x07\x30\x8e\xcf\xf8\xbb\xb8\xe4\x62\x5a\xc3\x77\x99\xf3\xd2\x49\x83\x43\xe7\xad\xba\xf0\xd4\xa1\xd9\x75\x20\xfb\x94\xb5\x73\xe6\x31\x57\xd2\x05\xf4\x14\xf9\x7a\x1d\xc8\xa1\x6f\x8d\x8a\xd6\x42\xc9\x80\xd4\x6a\xa4\xd4\xb9\x8b\x16\x64\x60\x0c\x60\xc8\x5a\xf2\xc5\xa1\x0b\x50\x5c\xe0\xea\xc6\xbe\xc8\x1b\xbb\xdc\xc6\xb4\x69\xdf\xa7\x41\x5f\x04\x32\xec\x3d\x50\x54\xa2\x04\x4b\x5f\x84\x67\xf0\xde\x38\xee\x0d\x97\x23\x94\x1b\xae\xb4\xa1\x29\xf8\x62\x09\x7e\x44\x17\x70\xc2\x7f\x84\x5c\xac\x02\x0e\x21\xc4\x56\x05\x0f\x96\x2b\xb8\xe1\x8a\xf4\x37\x2a\x57\x18\x2e\x55\x18\xd3\x05\x04\xa2\xb7\x5c\x11\x56\xc3\x99\x6b\x3b\xde\x0d\x99\x1b\x42\xcc\xdc\x38\x8d\x1b\x66\x00\x43\x92\xcd\x1e\x8c\x98\x68\x70\x98\xb2\xb0\x21\xa1\xc7\x82\x06\x87\x3e\x4b\x1a\x12\x86\xac\x57\xef\xb9\xfd\x7a\x7f\x23\x1c\x90\x78\xaf\x45\xe5\x50\xc4\xe7\x88\x68\x07\x42\xc4\x82\x38\x11\x3f\x0d\x64\x78\xc6\x6f\x28\xee\x7b\x9a\xf8\x37\x1c\x57\x47\x0b\xd5\x42\xbc\xac\x36\x5a\x85\x5a\x1e\x5b\x9a\x2c\x49\x37\xcc\x45\xff\x70\x5f\xad\x14\x1a\x0e\xf2\x20\x04\xfd\xfa\xa8\x31\xad\xf7\x28\x7e\xa9\xd5\x52\x47\x99\x03\x26\x1a\x01\x4c\x58\xd8\x48\x60\xcc\x46\xf5\x91\x3b\xad\x4f\xe1\x8c\x0d\xea\x03\x77\x52\x9f\xc0\x29\xcb\xe3\xfb\x8c\x29\x9c\x58\xaf\x43\x0a\x33\x16\x6b\xbf\xe9\x32\x88\x08\x49\xa3\x3b\x06\xbd\x38\x21\x64\xec\x0e\x1b\x67\x74\x8b\x6c\xd7\x4f\xeb\x27\x94\xd2\xad\x6d\x0a\xc7\x6c\xb6\x75\x02\xe7\x6c\xb6\x75\xba\x91\xb5\xeb\xb8\xe1\x99\x36\x91\x02\x5a\x72\xf7\xb8\xde\x33\x7d\x74\x8f\xeb\x7d\x4a\x73\xd4\xbe\xe7\xb8\x31\x7e\x52\x7f\x5b\xd0\xc2\xe9\x27\xfd\xfa\x60\xbf\x57\x9f\xd0\x12\x1a\x70\xf7\xbc\x3e\x5a\x1a\x2d\xf7\xbc\x3e\x4d\x63\xda\x55\x2f\x87\x8a\x01\x46\xdc\x29\x63\x4e\x6a\x9a\x92\xe3\xce\x88\x6d\x6e\xea\x50\xfb\x53\xa6\x45\xb0\x7a\x94\xd4\xc0\x04\x14\x7a\x4c\xa4\x51\x93\xc2\x48\xbd\xf7\x19\x77\xa7\x30\x64\xd2\xed\xc1\x80\x79\xff\x1e\xc1\x84\x8d\xda\x41\x23\xf1\x93\x46\x80\x3e\x4c\xaf\x88\x3d\x82\x6e\x94\x50\xa7\x6d\xa3\x4e\x1f\xbb\x33\xf4\xad\xb8\x67\x69\xb6\x46\x5f\x4f\xc1\x7c\x5e\xfa\x34\xf3\x1a\x43\xfd\x89\x96\xa6\x27\x05\x46\xd1\x49\xe8\x64\xaf\xa5\xfe\xb2\xc9\xad\xd0\x0d\x29\x4c\xf6\xe3\xb6\x3d\x53\x7a\x79\x0a\x9c\x29\x0f\x1c\x77\xa0\xc7\x95\x37\xa6\x66\x84\x1b\x6a\xa2\x57\xe7\xcc\xa6\xa4\x5f\x9e\x92\x21\xf5\x27\x4b\xd8\x53\x02\x84\xa8\x31\xd9\x67\x91\x2e\x5c\x86\xc9\x5d\x91\x4f\x4f\x42\x97\xf1\xc4\x9a\xad\x84\x6a\xa9\x35\xef\xc9\x75\x54\xf0\x57\xb6\x00\xd7\x19\xa6\xa4\xec\x2c\x25\x65\x43\xc7\x6d\x08\xd7\xf9\xe2\x2c\xc0\xa8\x8a\xf8\x15\x47\x62\x84\xb1\xd0\xde\x8a\x46\x2c\x81\x69\x95\xa0\xae\x4a\xc5\x64\x01\xbd\xcc\xbc\x06\xfa\xe9\xa3\x0c\xa2\x6d\x18\x32\x33\x20\x30\xc8\x44\xd0\x26\xb4\xe5\x38\x8c\x60\xcc\xcc\x90\xc0\x59\x4e\x12\x0c\xb5\x78\xfd\x14\x4e\xd8\xe9\xd6\x36\xcc\xd8\x76\xdd\x76\xb2\x63\xdf\x65\xef\x7b\xed\x96\xcf\xf7\x1a\x5e\xfb\xd4\xcf\xe9\x86\x6d\x01\x76\x5e\xc8\xce\xbc\xf6\x89\xcf\xf7\x58\xc3\x6b\x37\x4e\xd2\x12\x89\x96\xe3\x67\x25\x0e\x0a\x97\xe5\x61\x14\x71\xf1\x16\x57\x47\x41\x83\xd2\xca\x12\x4f\xe5\x72\x96\xc3\x42\x96\x44\x06\x42\xde\x53\x07\x60\xcb\x04\xb1\x90\x83\x47\xfd\xd2\xf7\x77\xf6\xf7\x5a\x8d\x37\x27\x41\x39\xcb\xcb\xb2\x01\x89\xa6\xc7\x66\x37\x89\xd2\xdd\x24\xc4\xdd\x24\x86\x21\x53\xf4\xbb\x57\x9f\xea\x28\xa4\xc3\xfa\x70\xcf\xe3\x0d\x6f\xdb\xdc\x3a\x75\xb8\x4b\x86\x8c\xf4\xea\x44\x36\x62\xda\xe8\xd7\x09\x6f\x84\x94\x6e\x0d\x69\x7d\x04\xd2\x1d\xd6\xa7\x5d\xcb\x28\xb1\x58\xb7\xae\x39\x61\xbc\x21\x60\xc4\x64\x23\x82\x29\x23\x41\x3b\xf6\x1b\x31\xdd\x3a\x23\x49\x3d\x71\x47\xf5\x11\x5a\xdc\xd5\x47\xd0\x67\x8d\x69\x3d\x81\x21\xe3\x6e\x0f\x26\x4c\xba\x7d\x18\x33\xe1\xf6\xe0\x94\x45\x6e\x1f\x4e\x18\x19\xba\x63\x8a\x93\x4f\x26\xee\xa9\x7a\x3a\x66\xe3\xc6\x10\xce\xd9\x69\x63\x02\x07\xec\xb8\x7e\xec\x9e\xd7\xcf\xe1\x82\x85\x8d\x18\x0e\xd9\xb0\x7e\xda\x18\xd7\x27\x70\xc4\xc8\xf9\x5e\x0b\xc5\xbb\xb4\x7e\x46\x06\xa4\x05\x17\xf5\x8b\xfa\x41\xe3\xb0\x7e\x48\x29\xbc\x63\xe4\xb0\x7e\xde\x38\xae\x1f\xd1\xad\x03\x78\xc9\x48\xe3\xb0\x7e\xdc\x38\xd7\xaf\xf7\xf0\xa3\x9b\x7e\x7c\xad\x3f\xba\xe9\xc7\x07\xec\x5d\xe3\x04\xbe\xb1\x97\x8d\x19\xbc\x65\xf7\x1a\x27\xf0\x95\xbd\x6e\xcc\x8c\x3c\xf3\x41\xfd\x81\xfb\xad\xfe\x6d\xff\x6d\xfd\xad\xfb\xb5\xfe\xb5\x56\x23\xef\xd8\x3d\x78\xc9\x5e\x53\xf8\xd9\xbb\xf0\xdf\x41\x6f\xe6\xbf\x84\x8b\x96\xe7\x37\x7a\x30\x53\x3f\x7d\xb8\xf0\x3c\xff\x5d\x9d\x84\x5b\x17\x0d\x8f\xc2\xcc\xf3\xfc\x97\xe6\x6d\x81\xae\x83\x5f\xdb\xf2\x51\x2d\x47\x3d\x00\xc9\x2e\x40\xb0\x29\x69\x51\x88\x34\x53\x1a\xb2\x43\x88\xd9\x11\x04\xec\x1d\x24\x98\x64\x5f\xbd\xa4\xe6\x8e\x30\x80\x03\xe6\x9a\xb0\x7e\x6a\xbd\xdb\x01\xcd\x2e\x98\x2b\x57\x7c\x3a\x64\x61\xf5\x97\xc6\x09\x1c\xb1\x78\xe5\xb7\x77\xac\x47\x8e\x1a\x87\x14\x5e\xb3\xa3\xfd\x43\x85\x71\xc9\x7c\x4e\x12\x36\x65\x23\x42\x29\x5c\xec\x1d\x60\x50\xa7\x0b\xb8\x60\x07\x70\xc0\x06\x14\x2e\xf6\x35\x36\x86\x03\xf2\x6e\x7f\xd6\xd0\x2f\x49\x53\x33\xca\xe4\xa2\x3e\x24\x87\x14\x2e\xea\x63\xa2\x66\x32\x69\x06\xa2\x87\x9a\x3d\x17\x70\x08\x47\xb0\xf9\x9a\xc2\x81\x06\x50\xab\x91\xac\xd4\x41\x7d\x48\x8e\x28\x1c\xd4\xc7\xe4\xa8\x50\xea\x00\x8e\xe0\x10\x5e\x53\x9a\x87\x63\x7a\x00\xdf\xe0\x2d\x3b\x84\xaf\xec\x08\x1e\xb2\x43\x78\xc5\x8e\xe0\x29\x7b\x07\x2f\xd8\x3b\x78\xc4\x82\xea\x9e\x6e\x6d\xc3\x0f\xf6\x28\xab\x38\x6a\xbb\x51\x75\x46\xff\x8c\x1c\xd4\x0f\xdc\x8b\xfa\x05\xa5\xf0\x9e\x4d\x48\x8f\x5c\x34\x0e\x54\x79\x57\x54\x97\xc0\x70\x2d\xf0\x84\xbd\x57\x83\xf7\x23\x1d\x1c\x6c\xe9\x07\x76\x4e\x7e\x6c\xa9\x4e\x3d\xa2\x14\xbe\xe3\xdb\x85\x7e\xdb\x25\x4f\x1b\x6c\xbb\xfe\x81\xea\xfc\x6d\xf2\xd0\x65\x1f\xea\xec\x75\xdb\xf3\x1b\x1e\xbc\x6a\xb0\x0f\xd4\x27\x4f\x59\x0b\x1e\xb2\x57\x8c\x1c\xba\x47\xc8\x54\x91\x17\xaa\xd0\xf7\xac\xd0\x5b\x97\x7d\xcf\x0a\x7d\x6d\xb0\xef\xd4\x27\x2f\x58\x0b\xde\xb2\xaf\x59\x21\x44\xd1\x8f\x4c\xcd\xcb\x5b\x0a\x37\x99\x6a\xc0\x5b\x0a\x8f\x99\x1a\xf3\x57\x14\x3e\x33\xd5\xc0\x57\xc8\x8c\xbe\xb7\x5b\xff\x1c\xde\x60\xa9\xaf\x14\x9e\x61\xa9\xaf\x14\x3e\x61\xa9\x87\x14\xbe\x60\xa9\x87\x58\xea\xdd\xde\x69\xad\x46\x9e\xb3\x97\xe4\x23\xdc\x84\x4f\xf0\x05\xde\xc0\x33\x78\x0c\x9f\x29\x4d\xd7\x03\x67\x1f\x1b\xcf\xd1\x0a\x8f\xb3\x9b\x8d\xe7\x1d\xaf\x0b\x82\xb3\x37\x3a\x2d\xe2\xec\x99\x4e\x0b\x39\xf3\xb6\xc6\xe4\x98\x10\xce\xeb\x82\xbb\x92\xd7\x23\x4e\xb7\xc8\x99\x7a\xe7\xf8\x2e\xb9\xa2\x17\x02\x3f\x47\xf8\x59\xb3\x9b\x31\x67\x67\x44\x81\xab\xab\x3f\xae\x02\x57\x57\x7f\xe8\xc6\x7d\x36\x21\xef\x81\x1c\x34\x62\x05\x2a\xe4\xa8\x17\xfd\x44\x27\x5e\x98\x44\xd7\xa3\x74\xb1\x78\x91\x8e\xeb\x13\x33\xbe\x0f\xd8\x3d\xa2\xfa\xa3\xfa\x75\x01\x4f\xe0\x35\x85\x6f\xec\x1e\x49\xbb\x67\x92\x32\x2c\x7e\xd0\xec\x5d\xb8\x0f\x9a\x17\x2d\x0f\x1e\x34\x7b\x33\xf7\x41\x73\xd6\xf2\x28\x3c\xd9\x7b\xdf\xd6\x18\xad\x32\xe0\x27\x78\x02\x7d\x82\x9f\x01\xf3\x53\xe8\x93\x6f\xf8\xfa\x4d\xbf\x6e\xbe\xa6\x3e\xb9\x42\xa1\x07\xcd\x99\x87\xaf\x9e\x2e\x54\x58\x70\xea\xb3\x6e\x06\xe6\xd1\x8d\xf3\xd2\xca\x7a\x33\xf7\x1b\x7e\xf8\xa6\x3e\x7c\x2b\x43\x50\xa9\xea\x93\xae\xd5\xe4\xcc\x4a\x17\x9b\x4a\xb1\xb1\xe9\x28\x7c\x84\x9b\xc5\x66\xbc\x85\xaf\x98\xc9\x2f\x66\xc9\xc8\xc0\xd3\x74\xb8\xef\xdb\xc3\xae\xc6\x57\x8d\xf3\x01\x34\xee\x9b\x71\x37\xe8\x65\xd2\x92\xa6\x3e\xf0\xae\x1a\xf8\xfb\x15\x03\x7f\xff\x57\x06\xbe\xa2\xd0\x9a\x81\x3f\xf8\x85\x81\xaf\x18\xf7\xfb\x57\x1a\x77\xbb\xda\x57\xf0\x10\x5e\xab\xa4\x74\x58\xd4\x12\xd4\x87\x9e\x6c\xe4\x5b\xd0\xc2\x35\x9b\x34\x33\x21\x04\xa1\x30\xcd\x02\x21\xe8\xad\x6a\xea\x3a\xce\x7c\x8e\x8e\x31\xb3\x2b\xf4\x1e\x8f\xa4\x88\xc3\x7e\x79\xb3\x13\x8c\xac\xda\xaf\xd4\xa9\x7d\x05\xcd\xdc\xda\x86\x88\x11\x77\xc5\x9e\xe5\xde\x70\x57\xec\x58\x74\x6b\xbb\x71\xba\xb5\x6d\xc2\x85\x0c\x49\x44\xeb\x02\xc6\xf8\xd3\xd5\xb7\xe3\x19\x23\x78\xd5\xa0\x21\x79\x9c\xf1\xdc\x28\xbd\x2d\xfd\x29\xc6\x39\x18\x60\x3c\x91\x81\xcd\x3d\x5e\x55\x65\xa6\x02\x2e\x6f\x73\x05\x97\x23\x5c\x89\x6a\x00\xb1\xa8\x68\xf0\xfa\xa8\x2c\x97\x01\x16\x0a\xf0\x24\xe8\x5f\x07\x6a\x94\x45\xc1\x57\xbf\xfe\x65\x55\x44\xaa\x8a\x9c\x5d\xbe\xaa\x92\xe0\x65\x60\x43\x05\xd6\xf0\xd8\x57\x03\x1a\x5f\x0a\x34\x4e\x87\xe3\x1a\x40\x83\x4b\x81\x06\x7a\xf2\x22\xc9\x2f\xae\x18\x48\x3a\x29\x8e\x30\xaa\x4e\x24\x0b\x18\x2c\xe0\x41\x1a\x67\x27\x13\x42\x6a\xb5\x2f\xf8\x56\x01\xd8\x89\x51\x0f\xca\x6a\x55\xad\xe6\xe8\x2a\x9c\x30\xc2\x36\x16\x82\xf6\x58\xf6\x77\x6f\x15\x14\x7d\x84\x34\x0d\xe7\x8b\xb7\xb6\xe8\x33\x10\x3c\x38\x52\x93\x6a\x9f\x3d\x75\x09\x45\x52\x58\x6b\x01\x2a\xcb\x41\xd4\x5f\x91\xe1\x55\xf0\x4a\x4b\x21\x57\x40\xc1\x0b\x65\x05\x46\xe5\x29\x81\x21\x39\x9c\xf9\xbc\x95\x89\x42\xd5\x7b\xad\xe6\x65\x82\x0e\x04\x41\x6b\xb5\x42\x47\x0a\xd4\xcc\x6a\x8f\xd7\xc8\x5f\x16\x80\x45\x4b\xd2\x51\x13\x6f\x33\x13\xe8\xd8\xb5\x60\x00\xc6\x1b\x2d\xdf\x6e\xbc\x67\xc1\x6f\x17\x1b\x91\x92\x5d\x05\xd7\x2f\x7e\x49\xa9\xaf\xfa\x62\x85\x6a\xbc\xe1\x15\x20\x6f\x67\x51\x18\x57\x82\x5d\xa4\x67\xff\xaf\xab\x1c\x45\xbc\x2d\x4e\xf9\xc3\x82\xab\x8c\x96\x75\x2e\x7c\x55\xf8\xe2\x75\x91\x4d\x7c\x5a\x72\xbd\xa0\xe9\xfb\x94\x6c\xda\xa7\x98\xaf\x69\x6c\x1d\x5b\x36\x6f\xce\x95\x30\x85\x1e\xf4\x19\x09\xd8\x37\x12\x64\x01\xc8\x52\x3d\xb3\x58\xa4\xd2\xce\xa8\x56\x23\x31\x0b\x49\x0f\xcf\x18\x14\x12\xd6\xda\x4d\xf6\x58\x7f\xd7\x75\x13\xba\x49\x92\xbd\x7e\xad\x26\xc8\x94\x05\x9d\xa4\x0b\x09\x04\x94\xea\x80\xb1\x84\x0c\xd9\xe6\x90\xb6\xe3\x66\x86\x62\x84\xfa\xfa\xed\x20\xea\xab\xf3\xca\xb0\x56\x8b\x9b\x38\x9c\xc4\xe5\x64\x8a\xa5\xc1\x95\xe9\x13\x6e\x7d\x3d\x9a\x69\x28\x61\x8f\x7a\x4b\x9b\x5d\xe5\x96\xa0\x56\x56\x1e\xca\xb7\xfd\xd0\x9f\x12\x4e\xa1\x92\xca\xab\xdd\x23\x57\x24\x6c\xbf\xf2\xa7\x44\x52\x08\x9a\x17\xbf\x65\x47\x32\x21\xfa\x2a\xfd\x72\x5f\x7b\x1f\x0a\x70\x1f\x0a\x9a\x7d\x3e\x08\x23\x7e\xc5\x40\xe2\x6b\xb6\xa0\xcd\x4d\x0d\x54\x60\x70\xc0\xa9\x38\xbb\xf2\xde\xc0\x53\x43\x5c\x83\x1d\x11\x45\x40\xa1\x8e\x32\x78\x0d\x42\x9b\x91\x59\xa6\x67\xd8\x47\x68\x4c\xb7\x2b\x5a\x40\xb0\x80\x17\xac\xac\x43\xa4\xed\xb0\x53\x14\xd7\x18\x9f\xe2\x47\xc0\xbe\x2e\x9d\xd7\x7b\x64\xaa\x8b\xf4\xa0\x0f\x43\x18\xc0\x04\xc6\x8c\x4c\xd9\x37\x32\xcd\xb1\xfe\x8c\x6d\x7a\x70\x6a\xa9\x86\xa2\x50\xdd\x7e\xb5\xd6\x44\x8c\xe1\xbe\x03\x32\x49\xd7\x44\x8f\xb5\x76\x7b\x7b\x6c\xbc\xeb\xba\x3d\xad\x24\x4c\x7a\x7b\xe3\x5a\x2d\x24\x03\x36\xed\xf4\xba\xd0\x83\x29\xae\x8b\x33\x75\x10\x3f\x63\x9b\x67\xb4\xcf\x7a\xc8\x44\xa6\x34\x9c\x18\x06\x39\x7d\xd3\x27\x68\x55\x63\x92\xaf\x98\x62\x16\x18\xb2\x5e\xc3\xdb\x1d\xee\xb3\xfe\x6e\xa3\x31\xa4\x49\xba\x94\x4e\x3b\xc3\x2e\x9c\x74\x86\x5d\xba\x51\x2c\x9b\xee\x06\x84\x2e\xce\x6a\x35\x72\xda\xe9\x75\x99\xcb\xc9\x00\x1b\x07\x27\xf8\x2a\xcd\xab\x01\xa6\xce\xde\x69\x9a\xaf\x4a\x80\x68\xbb\xc2\x24\xa8\x32\x94\x2e\xc2\x01\x99\x94\x78\xd2\x49\xbe\x4c\xb3\x69\xe8\x5b\x7a\x0c\x84\x1a\x1c\x26\x21\xd5\x98\x47\x02\x6a\x30\x87\xc4\xf4\xba\xab\xdb\x5d\xb7\xbc\xa7\xc4\x5a\xe0\x2d\x5f\xad\xcb\xca\x45\x21\xda\x22\x87\x2b\x90\x14\xb8\x82\x42\xef\x37\xd1\x82\x14\x63\x7b\x48\x12\x7a\xcd\x8b\xd6\x6f\x81\x9a\x81\xf3\x7e\x3f\xef\xd8\xc3\x25\xd8\xfb\x4d\xd4\x4b\x64\xfd\x97\x08\xb4\xf5\x5b\xa0\x66\xe0\xae\xd8\x7f\x71\xbd\xfe\x0b\x05\x5b\xad\xa2\x4f\x2d\xa6\x1f\x3e\xb7\x2a\x54\x2c\xfb\x84\x36\x2f\x08\xa7\xcd\x19\xfa\x3b\x4a\x73\x7a\xeb\x73\x8a\x2c\xe7\xa7\xd5\x39\xa3\x1c\xe6\xb5\xc8\xfe\x1a\xfe\x1d\xc9\x7e\x0f\xa9\x75\xef\x3a\x64\x3f\xc8\xc8\xbe\x21\x80\x31\x45\x40\x01\x02\xfa\x15\xb2\x1f\x33\x4d\x31\x7c\x84\xc6\x74\xbb\xe2\x05\xf4\x16\xf0\xa8\xda\xb5\x54\xaa\x69\x2c\xf7\x79\x5b\xfd\x65\xbc\xdd\xf2\x91\x93\xfd\x51\x19\xad\x66\x01\xef\x97\x25\xbe\x3f\x40\xb2\x47\x06\x1f\x23\x2d\xf8\x55\x1b\xc9\x4c\xed\x23\xea\xad\x92\x5d\x1a\x69\x86\x09\x86\x4b\x2c\xd3\x80\xb5\x60\x62\x6d\x16\x43\x0a\xe3\xe2\xeb\x19\x5b\x25\xc3\x34\x77\x33\xe3\x30\x22\x33\xc8\x83\x5d\xcf\x60\x95\x8c\xf8\x8c\x66\xf7\xbd\xaa\x50\x76\x33\x78\x4a\xb7\x86\xb0\xea\x28\x0e\xc7\xec\xa4\x4e\x4e\x8d\x1c\x1f\x37\x33\xcd\xca\x0d\x91\x93\x23\x7d\x36\xee\x4c\x3a\x49\x97\x25\xb8\x2d\xe4\xec\x1c\x46\xa2\x1f\xb8\xac\x9f\xef\x80\x9b\x4c\xb6\x27\xda\x52\xc5\xb6\x97\xb4\xe3\x45\x8e\x3b\xbc\x0b\xe3\x8e\xe8\x66\x61\x3b\x36\x99\xa8\xd5\x2a\x4a\xe5\x53\x2b\x48\xa0\x4a\x05\x1d\x89\xa5\xd0\x0c\x62\xca\x06\x6d\x72\xda\x18\xd6\x8f\xe9\xd6\xc0\xcf\xda\x0b\x67\xac\x47\x47\x4c\x35\x18\x7a\xec\xcc\x25\xd8\xfe\x51\x97\xee\xb7\xda\xfd\xfa\xd4\x6f\x51\xf7\x18\x54\x02\xfb\xd9\x0f\x64\xe0\x07\x9d\x51\x17\x30\x82\xa9\x9f\xc0\x59\x30\x9a\x72\xbf\x0f\xf9\x91\xd8\x3f\x03\x73\x90\xf5\x7b\x60\x8e\x9f\xfe\xc9\xc2\xdc\x45\x8c\xf3\x78\xd7\x58\xfa\xb7\x32\x87\x6a\x48\x3e\x28\xa8\x57\x96\x56\x70\x83\xbc\x86\x23\x54\x20\xae\x4a\xff\xd4\xd9\xc9\x14\x46\xce\xef\xba\xa2\x81\xe8\x52\x2e\x55\x31\x6e\xd7\x14\x0d\x5c\x22\x6f\x30\xcc\xe5\xf5\x44\x03\x97\xc8\x1b\x02\xa4\x35\xc1\x02\xee\xb3\x0f\xe4\xab\xb5\xea\x9f\x58\xa7\x6f\xa4\x8f\xd6\x05\xe1\x07\xf5\x2d\x7b\x93\x76\x5c\x4b\x7e\xae\x4a\x12\x99\x5b\x91\xc9\x0c\x00\x58\xee\x64\xbf\xdb\xce\xe0\xf0\x7b\xae\xc3\x8f\x2a\xbd\x8c\x37\x2f\xa0\xcf\x47\x5c\xf2\x1b\xea\x91\x37\xb5\x32\x01\xe3\xcd\x59\x9e\x3e\x03\x7e\x0d\xf2\x2d\x89\x6a\x39\xf5\x25\xa1\x69\xa3\x16\xc0\x17\x4f\xae\x28\x52\xc0\x02\x36\xbf\xba\x46\xba\x90\xe7\xd5\xec\xe6\x3a\x21\x83\xce\x6b\xb1\xb5\x95\xe2\x86\x72\xde\x14\x6e\x95\x8c\xc0\xce\xaa\x79\x58\x99\xab\x09\x28\x2e\xb1\xde\xc8\x94\x0a\x38\xa5\xe9\x19\xfd\x63\xc5\xfe\xfb\x9d\x28\x3e\x55\x33\xa7\xf7\x29\x5d\xc0\xcd\xe5\x9d\xe4\x85\x95\x03\xb2\xd9\x44\xbf\x7e\x9a\x69\x40\xcf\x7e\x7a\x8b\x47\xdf\x7e\x9a\x83\x40\xd7\x7e\x9a\x45\xb8\x74\xe6\xad\xd5\xc9\x9b\x17\x2d\xeb\x63\x0b\xf2\x3b\x6e\xf5\xcd\xb3\xbe\x79\x6b\x70\xc6\x16\xbb\xf2\xe6\xcc\x02\x39\x53\x20\x6d\xe9\x29\x6f\xce\x2c\xa8\x33\x05\x35\x9b\xab\xd2\x3a\xb4\xc6\x4d\x5b\xd9\x66\xc5\xd2\x91\xc8\xa6\x6e\x75\xc1\xa8\xa2\xa0\xa9\xf3\x69\x95\xb0\xd8\x2a\x1b\x2e\x97\xfd\x6c\x2a\x3d\xac\x12\x08\x5b\x65\xe3\x8a\xb2\xde\x6f\x58\x5d\xf0\xb8\x92\x89\xe9\x68\xc3\xfa\x5c\xbb\x85\x37\x8c\x82\xc6\xd6\xb6\x42\x51\x0b\x61\xbb\x96\x84\xe8\x73\x51\x01\x22\x9e\x8a\x9e\x45\x98\x9e\x17\xbe\xca\x40\x9c\x72\x8b\xe6\xbc\xc9\x69\xce\x67\x10\xec\x39\x44\xec\x21\x84\xec\x55\x85\x80\x28\x0f\xd5\xfc\xa0\xd9\x0b\x46\x23\x62\x71\x2b\x53\x56\xb8\x25\x48\x50\x6b\xaa\x98\x82\x7a\x75\xf3\x39\x89\x59\xa0\xef\xa5\x39\x89\xa1\xc8\xfe\x90\xa4\xd3\xea\xb2\x29\xfa\xd3\x2a\xde\x2b\x24\xb4\x32\x6b\xaf\x32\xab\xa2\xe0\x45\xf9\x50\xb0\x24\x1f\x0a\xd2\x71\xba\xfa\xd6\x6a\xf6\x54\x3d\x82\x57\xdf\x55\xcd\x76\x7a\xf1\x5b\x77\xd1\x2b\x9e\xbd\xae\xb8\x7d\x5e\x8b\x49\x8f\xcb\x42\x70\xb3\x5f\x66\xb8\xf2\x2c\x57\x58\xa1\x3f\xb9\x91\x9c\x4a\x10\x14\x78\xb3\xa0\x3e\x4a\x24\x23\xd2\x8d\xe8\xd6\x36\xfa\xa9\x0b\xb1\x88\x65\xd2\x7b\x0d\x40\x20\x18\x11\x6e\x88\xd7\x52\x69\x11\xcb\xa2\xd6\x06\xa4\xd0\x38\x66\x8f\x35\x9c\x40\x3f\x98\xb2\x8a\xbd\x7c\x4c\x22\xf5\x65\x84\x0f\x21\xdd\xc8\x2a\x8e\xd1\x50\xb8\xe3\x75\x97\xab\x0f\xd4\xa7\xa0\xe3\x75\x41\x21\x26\x24\xea\x69\xa4\x9e\x46\x2a\xbb\x65\xfc\xc8\x73\x02\xf3\x86\x3c\xb3\xcd\x16\x0b\x5f\x3e\xd9\x16\x85\xdc\x36\x98\xa4\xbf\xca\x14\xa0\x78\x38\xe2\xec\x67\x5f\x04\xe7\x7e\x95\x94\x38\x57\x16\x95\x5b\xa7\x56\xbf\x05\xb4\x54\x8f\xcd\x2d\xa5\x80\x16\xcc\xe8\x62\x01\xe1\x55\x81\xdd\xa1\x5b\xdb\x39\xb8\xc6\x4e\x5d\x40\x03\xe7\x30\x95\x8b\x37\x2a\xde\x77\xea\x76\x4a\x55\x82\xfd\xba\x04\x52\x25\x14\xf3\x17\xdf\x8a\xd0\x1a\x15\x09\x85\xd7\x0c\x9c\x75\x4b\xb1\x58\x40\xcc\xad\x7e\x7a\x5b\x3b\x14\x02\xce\xb6\xeb\x31\x87\xe4\xaa\x63\x13\x70\xf4\xd0\x5c\x8f\x79\x3e\x42\xad\x62\x5f\x22\x3d\xfe\xe9\x5b\xab\xd8\xb2\xf4\x63\xb1\x5d\x23\x9e\x69\xfc\x91\xd3\x2d\xaf\x45\xb7\xb2\xd7\x3f\xea\x98\x00\x53\x2b\xcb\x4c\xa5\xd4\x47\x1c\x7a\x9c\xe5\x7c\x50\x96\xda\xbf\x5a\x5f\x9a\x7f\xfe\xab\xf5\xa7\xb7\xd3\xfa\x97\x77\x67\xfb\x5f\xdb\x7f\xde\xd9\xae\xa3\x78\x6b\xca\xeb\x02\x42\xd6\xe3\x75\xb1\xa6\x87\x61\x6e\xa2\x1f\x33\x6f\x37\xde\xbb\xb3\xeb\xba\xa9\xd6\x73\xc0\x66\xf5\x78\xeb\x0e\x24\xcc\xd6\xcb\x1d\x31\x4b\x2b\x77\x23\x03\x35\x52\x98\x90\x14\x26\x33\xa9\x47\x8d\x51\x3d\x84\x51\x3d\x72\x93\x7a\x48\x17\xe5\xe1\x1a\x5e\x71\xb2\x54\x77\x1a\x02\x71\x59\xf0\x9e\x24\x11\x92\x1a\xa1\x40\x0c\x6c\x4c\xd8\xa1\x30\x59\x07\xb2\x61\x23\x00\xd9\xa9\x0f\x38\xa5\xf6\xd8\x6c\x17\x71\x71\xc0\xcb\xd8\x6d\xa5\x14\x7b\x32\x2e\x36\x63\x6b\x1b\xce\x38\xf3\xb6\x2c\x24\xdd\xa6\x70\xca\xd9\x4e\x9d\x9c\xf1\xad\x6d\xd7\xa3\x70\x72\x65\x92\xa0\x31\x75\x6b\x1b\x42\x26\xea\x67\x5c\xf1\x08\x10\xe0\xa3\x2b\x20\x61\x8d\x18\x46\x2c\xc8\xfb\xa1\x26\x35\x6f\x72\x0c\x81\x3d\x25\x30\xb2\x7b\xd8\xbc\x53\x8f\x1a\x63\x5e\x0f\x61\xcc\xeb\x91\xab\xde\xc3\xd2\xf7\x58\x7d\x0f\xd4\xf7\x18\xbf\x07\xa5\xef\x89\xfa\x3e\x52\xdf\x13\xfc\xbe\x04\xdf\x45\xf8\x08\x5a\x65\x8d\xca\xf0\x5d\x84\x8f\xa0\xd5\xf7\xb8\x0c\xdf\x45\xf8\x08\x5a\x7d\x4f\x96\x07\x7f\xc6\x59\x27\xe2\x10\xaa\xd5\x0f\x43\xb5\x6e\x60\xc2\xe1\x84\x77\xe1\x98\x57\x5e\xcb\x15\x59\x2c\x73\x7e\x88\x50\x89\x5c\x3b\x46\x4d\x59\xa5\x6a\xf1\x4d\x53\x4d\x1b\x11\xb0\x52\x45\x03\x22\xc3\x08\x19\xa9\xd6\xd5\x2f\xca\xa6\x84\xcf\xe7\xd1\x95\x05\xe8\x77\x6f\xa3\x04\x3d\x6a\xe2\x99\xf1\xef\xca\x41\x14\x24\x14\x83\x44\xcd\x24\xfc\x71\x65\x2e\x6d\x2d\xb3\x13\x21\x03\x17\x5d\x8f\xd9\x11\x65\x66\x27\x42\x76\x2e\x5a\xc0\x79\xe1\xac\x62\xfb\xc8\xe5\xe6\x42\x8a\xe7\x17\xc0\x45\x6e\x81\x6c\xd7\x79\xf3\xf8\xa2\xe5\x72\x34\x18\xd9\xda\x01\x9d\x32\xc3\x94\x99\x4e\xd1\x39\x74\xce\x2c\x65\x96\xa6\x14\xf2\xdc\xd6\x79\x5c\x49\xb7\xee\x9a\x5c\xb7\x75\x2e\x57\xd0\xad\xbb\x76\x5c\x07\x5e\xa5\x41\x70\xc1\xff\xb7\xaa\x10\x5c\x2c\x5b\x7d\x59\xca\xf5\xaf\x82\x57\x70\xb9\xaa\x41\x7a\xe9\xbf\x7c\xd5\xbf\xe3\x1f\x70\xbd\x10\x32\xf3\x1f\x03\x9a\xea\x2b\xfb\xed\xea\xcb\xf9\xe5\xec\x8b\x7f\xf4\x19\xec\x4f\xdb\x85\x4f\x3b\x50\x59\x13\xb9\x53\x37\x93\xec\x66\x16\x51\x0a\x2d\x4d\xfa\xcc\xa4\x2b\x14\xbe\x4b\x33\x85\x09\x33\x6b\xa8\x23\xb1\x84\x27\x90\xdb\x7f\xc0\x12\xca\x58\x46\x75\xa9\xe0\xe6\xb0\x92\x64\x44\xfc\x5c\x2f\x00\x6b\xb5\x1e\x55\x2e\x88\xa3\x15\x0b\xe2\x9c\x67\xa8\x7f\xce\xaf\x87\xe2\x17\xdb\xe6\x61\xc7\x3c\xdc\xae\xc0\xfe\xf4\xc1\x64\x9e\x99\xcc\xb3\xdb\x7f\x77\x61\x78\xd5\x08\x60\x5a\x67\x06\x71\x9b\xc2\x4a\x3c\xae\xc2\x86\x12\xb8\x0c\x9e\xbb\x6d\x10\x61\x07\x49\x95\x01\x9f\xa5\xcf\x54\x7a\xb9\x32\x83\x45\xa6\x68\x0e\x65\xdb\x86\x92\xa7\xcf\xb6\x2b\xa0\xac\x68\xf2\x8e\x6e\x72\x2a\xff\x5b\xd1\xef\xc2\x57\x83\xe4\xb3\x9d\xaa\xaf\xb7\xcd\xd7\xdb\x6a\xf7\xff\xad\x4b\xf9\x62\x3b\x47\xf4\x6d\x26\xd7\xac\x50\xc8\xb0\x2a\x2b\xb0\x53\x2c\x50\xbd\x6e\x2f\x6e\xe7\x05\x6e\x33\x09\x6b\x67\x53\xed\x27\x06\x9f\x5d\x8e\xeb\x39\x5b\xcd\xe6\xcb\x4c\x6f\x40\x66\xc4\xff\x4b\xd6\xf5\xbb\x95\xeb\xfa\xa8\xb4\xae\x5f\x56\xae\xeb\x97\xff\xf3\x36\xba\xb5\x7b\xd0\xce\x7f\x9f\x3d\xe8\xd7\x36\x91\x8d\x54\xff\x78\x25\x9e\x45\x6c\x25\xa6\x6d\x5c\xb6\xeb\x09\xe4\xf9\xaa\xf0\x5a\x7d\xa9\xa0\x0c\x69\xab\x6e\xff\xd7\x20\xef\xbd\x95\xc8\xfb\x52\x23\x6f\x6f\x14\x24\xc9\x8d\xd7\xdc\xb6\x5f\x2f\x5c\x5f\x18\x3c\x36\x15\x33\xb9\xb0\xee\x5e\x8a\xa8\x9b\x5d\xb4\x94\x11\xd6\xba\x55\x29\xa9\x74\x66\x77\x28\xff\xf5\x8a\x9c\x9a\x8e\xfe\xf7\x63\x77\x8a\xea\x9b\x17\x25\xf0\x25\x91\xa3\xc1\x87\x1c\x7b\xb9\x3a\x71\x1b\x54\x30\xb3\xd4\x02\x09\x15\x2d\xaa\x06\x96\x23\x52\x8e\xf7\x52\x41\xcd\x51\xac\x84\x8d\x36\xee\x59\x6e\xd6\x1e\xf0\x12\x92\xbd\x56\xe7\x92\xcd\x96\x75\x18\xf8\x56\x9d\xc5\xb3\xb2\xbc\xe5\x36\x02\x9e\x04\x49\x98\xb0\x8c\x8d\x4a\x2b\x3e\xe1\x32\x60\x72\xf1\xb6\x40\x5b\xd7\x51\x45\xf4\xcf\xa9\xdb\x9c\x3f\x22\xec\x4b\xaf\xfc\xb4\x18\x34\x85\x03\xd2\xac\x36\x7d\xb5\x96\xba\x74\xc4\xe3\xf3\x7e\x8b\x1a\x79\x52\x04\x21\xe3\xda\xc7\x23\xba\x7a\x0c\x18\xef\x88\x6e\x23\x84\x84\x49\xf5\x10\xc3\x88\x35\xbc\x5d\xd7\x1d\xed\x31\xb1\x4b\x23\x36\xda\x12\x85\x46\xd9\x9b\xbe\xea\x6c\x9d\x77\x46\x5d\x97\x18\x84\x56\x49\xb4\x4e\x42\x37\xaa\x07\xf6\x98\xd4\x65\x55\xb6\xd8\x8d\xea\x09\xa5\x1b\xd9\x12\x4e\x07\xc2\xf2\x7a\x91\x0f\xc5\xa5\x37\x9a\x17\xda\x55\xa8\x9b\x4d\xc6\x2c\x4d\x90\xe6\x0e\xf3\x6b\x4e\x75\x6e\x70\x75\x1e\xcf\xe5\xca\x76\xc8\x24\x1d\x6f\xd4\xcc\xac\x8f\x8a\xc8\x7a\xee\x73\xd7\xa7\x38\xd1\x15\x47\x7b\x8e\xd5\x81\x58\x90\xe6\x9f\x77\xac\xfb\xf2\x87\x97\x9f\x84\xf5\xc1\x95\x37\x8f\xbf\xd5\xf1\x79\xbb\x81\x47\x5a\x0a\xfa\xf4\x9a\x7d\x98\xe1\x87\x99\xfe\x70\xb1\x6d\x95\xf0\x1a\x52\xe7\xb6\x12\x67\x9e\x96\x8d\x29\xf6\x0e\x3f\xd9\x81\x2a\xf9\x3a\x92\xfa\x8d\xa9\xf9\xa2\x5b\x77\x17\xaf\xfe\xbf\x66\x15\xb2\x03\x43\xe5\xf1\xe0\xff\x65\xef\xcd\xbb\xdb\xb6\xb5\x45\xf1\xff\xfd\x29\x62\xbe\x2e\x3e\x20\x82\x14\x4a\xb6\x65\x9b\x0e\xa2\x5f\xa6\x36\x39\xcd\xd4\xc4\x4d\x9b\xf2\xe9\x7a\x51\x24\x68\xb1\xa6\x48\x85\x84\x3c\xc4\xd2\x77\xff\x2d\x6c\x80\x24\x38\xc9\x4e\x7b\xee\xb9\xe7\xde\x75\x93\xb5\x2c\x09\x04\x36\x40\x0c\x1b\x7b\xde\x7f\x93\x19\xd8\xce\x03\x6b\x44\x71\xf5\x96\x7c\xd1\xc9\x5a\xff\x2f\xaf\x3c\x6a\x21\x07\x86\x5b\x29\xf1\xe2\xb6\x79\x71\x4f\x32\xa3\xb6\x3c\x3a\x93\xd0\x4a\x78\xa8\x45\xd4\x18\x09\x85\x14\x5e\xdf\x0b\x29\x08\x24\xf0\xae\x8e\x04\x38\x8b\xb3\x30\x89\xb7\xe3\x01\xdd\x56\xee\xcd\x3d\x0f\xdc\x9b\x7f\x29\xcf\x7d\x7d\xf0\x7d\xcc\xb7\xfa\x72\xf0\x9f\xcb\x85\x37\xf8\xcd\xef\xe5\xc2\xab\xe7\xf8\xbb\xc1\xb5\x71\xc8\xf7\xe6\x81\x5b\x9e\x1e\xe4\x4f\x0f\xfe\xf9\x1c\x72\x37\xc3\xdb\x7e\x2e\xdb\x67\xbc\xca\x05\xb7\xce\x6d\x8d\x6f\x3e\x28\x5b\x1c\x14\xfd\xfe\x97\x9d\xe4\x1f\xef\x7d\x92\xdf\xfc\xed\x93\xfc\xed\x9e\x27\xf9\xdb\xff\x84\xab\xf3\x7f\x36\xdf\x7d\xe7\x2d\xd8\xa4\x04\xee\x2b\x3e\xbc\x0f\x5f\xfd\x2f\x3f\x26\xbf\xde\xfb\x98\x7c\xfb\xdb\xc7\xe4\x19\xab\x7a\x24\x01\x95\x0a\x66\x7e\x62\xb0\x09\x95\x74\xa9\x0b\xbf\x47\x82\x59\x61\x83\xb3\xc8\x1a\x9e\xb9\x7a\xe8\x86\x8c\x82\x9e\x47\x94\x8f\xdc\xde\x5e\xfe\xdd\x85\x2f\xc3\xd1\x99\xdb\x53\x5f\x46\x2e\x89\xa8\xf6\xbc\x80\x96\x57\x70\xf1\x4e\x4c\x51\xfc\x30\x93\xa4\xf5\xc3\xa2\x1d\x68\x9f\xb4\x5e\xf0\xa3\x88\x84\x14\x85\xb2\xe6\x4d\xad\xe6\x4d\xb5\xe6\x46\x8d\x7b\xb4\x57\x1d\xf7\x4a\x8d\x7b\xb4\x57\x8e\x5b\xd4\x69\x1b\xb7\x47\xb5\xe7\x05\x34\x6d\xdc\x09\x45\xc9\xc3\x95\xd4\x92\x95\x50\xfb\xbc\x1c\x19\x7e\xe4\x11\x97\x22\x57\xd6\xba\xd1\x6b\xa5\x95\x5a\x9b\x4e\x16\x24\x0f\xe9\xd3\xce\x2e\xbc\xda\x8a\xf3\xdc\x68\x39\x17\xbc\xef\xab\xff\x2e\x18\x0f\x76\x46\x8e\xca\xc4\x24\xe7\xdf\xc5\xcc\xd3\xb2\xce\x48\xaf\x34\xd2\x6b\x15\x3f\xfe\x95\x7c\x47\x93\xb2\xd0\xaa\xfe\x17\xb1\x1e\xe2\x00\xb4\xa3\x69\x29\xd3\xcc\x07\xda\x67\x24\x2e\x96\xa2\xcf\x77\xf4\x09\xd7\xcc\x2b\xf4\x09\x86\xe2\x65\x72\x85\xd2\x87\x69\x2f\x7e\x18\xeb\xbb\x0d\xe3\x4d\xe7\xec\xfe\x3b\xa8\x05\x0b\x1c\xff\xac\x89\xe3\x1b\xbb\x8f\x74\xec\x44\xd2\xb9\x13\x49\xe7\xb6\x24\xff\x8a\x7b\xe4\xf3\xbd\xee\x11\x29\x49\x51\xa8\xc3\x2e\xd8\x28\x4b\xbb\x55\x24\xe6\xd8\x2e\x4c\xd1\x65\x29\x5f\xef\x85\x87\xbe\xfe\x77\xe3\xa1\xfe\xab\xf1\xd1\xff\xb2\x63\xff\x4d\x91\xda\xbf\x27\xfb\xf7\x3f\x12\xe7\xfd\xf6\x1d\x38\xef\xab\x86\xf3\xde\xfc\x5d\x9c\xf7\xc3\xbd\x70\xde\x0f\xff\x4b\x7b\xfd\x1b\x30\xae\xff\xfe\x88\xe3\xbf\x25\xa3\xfc\x3f\x12\xa1\xfc\xf4\x1d\x08\xe5\x07\x0d\xa1\x7c\xfb\xbb\x08\xe5\x4b\xab\x51\xc8\x97\xbf\x4b\x34\x6d\x3b\x8d\x5a\x8d\x2d\x67\xad\xfd\x4c\xb5\x1e\xa8\x2d\x94\x3c\x6a\xbb\x28\x5b\x08\xfb\x5c\x35\xf8\x73\xa7\x41\xc2\x97\x9a\x35\xcd\x2f\xba\xa6\x98\x29\x77\x71\xcd\xe1\xa7\x4d\xe2\x21\xc5\x0d\x24\xa4\xbc\x2f\x25\x20\x09\x55\xba\x39\xa9\xc9\x7b\x84\xe2\xf5\x3a\x7c\x6c\x99\x66\xdf\xc2\x82\x89\x4f\xfb\xca\xb0\x15\x85\xeb\x75\x9c\x3f\xc8\x28\x4a\x1e\x86\x3d\xf7\x61\x2c\x5a\xf4\xc2\xdc\xff\x05\xfd\xc2\x50\x82\x7b\xbf\x30\xe4\x62\xe5\x33\x57\xf1\x7b\x4f\x30\x29\xbe\xbb\x98\x0c\x0e\x1e\x16\x3f\x33\x8c\xd7\x6b\x4b\x73\x33\x62\xba\x51\xb6\x36\xf8\xdc\xd5\x26\x9d\xa0\xbd\x87\xd5\xc1\xa7\x7d\x8e\x1f\x8d\x6c\xcd\x95\xee\x8f\x96\x49\xb0\x94\xd8\xc7\x52\x62\x9f\xa1\x12\xfb\x0c\xe1\xb5\xfa\x31\x7e\xb4\xb7\xd3\x2d\x98\xe8\x65\x24\xec\x65\x0f\x39\x49\xfa\x19\x71\xfb\xd9\xc3\x14\xe2\xff\x6a\xde\x44\xbc\x6d\x3f\x97\x2e\x45\x2d\x8f\xc5\xea\xa6\xbc\x12\x86\x39\xdd\x0e\x25\xe6\xb5\xcd\xc1\xaa\xcd\xc3\xfa\x73\x5e\x7d\x9e\x6c\x07\xef\xf2\xc2\x05\x91\xa4\xd2\x2f\xb6\x4c\xcd\xa8\xe5\x64\xc4\xd5\x14\x8d\x62\xc7\xe8\x3f\xc1\x7b\x24\x74\xac\x29\xb5\x48\x22\x3e\x46\xc4\x15\x1f\xcc\xb1\xa6\xbd\xd1\x43\xe6\x0c\xa7\x84\xd3\xe1\x09\x7f\x1c\x83\xae\x9f\xe3\xd0\xe1\x53\x3a\x24\x89\xf8\xd8\x87\xf0\x02\x74\xff\x21\x73\xb8\xac\xce\x7b\xc3\xa9\x82\x19\xf7\x87\x02\x5c\x22\xbf\x1c\x12\x57\x7e\x39\x7a\xc8\xe0\x4b\x8f\x39\x71\x01\x1b\x20\xa7\x54\xc0\x7e\x94\x38\xbc\x3f\x9c\x42\x07\x7d\x9a\x42\x0f\x7d\x9a\x3e\x74\xa1\x58\x87\x2d\x01\x3e\x92\x1d\x10\x4e\xe3\xfe\xe8\x84\x3f\xa1\xd6\x49\xbf\xaf\x86\x89\xa0\x71\x08\xa3\xc2\x02\xb0\x6c\xaf\x86\x84\xc4\x08\x7a\x12\x18\x18\xa0\x50\x4b\x7b\x4f\x78\xc1\xfc\x95\x14\x8c\x3c\xf8\x62\x48\x92\xe9\x86\xf1\x7f\x23\xa3\x38\xf9\x85\x5b\xff\xb9\x0a\x6e\xdd\x26\xbc\x72\x0b\xff\x51\x51\x70\x73\x8b\xfc\x5e\x2b\xc0\xff\x55\xe2\x26\x89\x9c\xde\xb9\xef\x76\xc2\x00\x1c\x85\x89\xcc\xed\xa9\x25\x1c\x59\xaf\x79\xf1\xeb\x66\xb8\x65\x72\xfe\x1d\xe4\x44\x24\x9f\xea\x7c\x86\x53\xfa\x0f\x8d\xd8\xc1\x24\xad\x5b\x92\x36\xd6\xa6\xd6\xe2\xaf\x1b\xe8\x15\x20\x69\xba\xd9\x6c\x08\xe2\xfa\x89\x90\x59\x6b\x07\x5e\xca\x5c\xce\x90\x7e\x58\x30\x96\xec\x75\xcd\xb7\x47\xaf\x22\x2b\x48\x7f\x69\x39\x78\xc2\x04\x61\x52\x39\x72\x5b\x12\xd4\xd4\x89\x48\x68\xdd\x9a\x7c\x66\x0b\x6d\x11\x75\xe7\x94\xa9\x1f\x0f\x80\x7f\xff\x0c\x2f\x1d\xb6\x6c\x84\x81\x63\x5c\x42\x42\x70\x92\xfc\x17\xe3\x97\xaa\x79\xd9\x5f\x34\x23\x03\x23\x32\x2c\x8e\xda\x5d\x67\x03\x82\x62\x3b\xd6\xb4\xeb\x84\x14\xcf\xc9\x88\x52\x9a\xe2\x0e\x28\x02\xf3\x43\xb4\x6b\x88\xf6\x5b\xd8\xae\x51\xb8\x1f\x49\x28\x3e\x39\xce\xd3\xf4\x9f\xb8\x8f\xd3\x93\x5e\x2f\x21\xbd\x9e\x8b\xb7\x2d\x45\xec\x58\x53\x27\x99\x92\x50\x7d\xc6\xce\x50\xfd\x96\x9f\xcc\x71\x45\xbf\xee\x14\x9f\xdc\x89\xd6\xd2\xbf\x82\xcc\xf2\x23\x58\xb1\x73\xfb\x7b\x16\x6d\x59\xab\xef\x96\x20\x06\x80\xd4\xd0\xc8\xd6\x88\x6f\x13\x20\x70\xca\x37\xd1\xbf\x7a\x6f\xe6\xd3\x70\xbf\xeb\xcd\x7a\xac\x86\x9a\xcf\x3c\x7f\x3c\x34\xcd\x51\xf5\x8e\xa9\xaf\x4a\xf5\xaa\xcb\x67\x11\x93\xff\x84\x7b\xeb\x09\xb5\x8a\x4c\x2e\xbc\x58\x77\xde\xb5\x19\x3a\xf8\x9c\x7f\x27\x23\xae\xe2\xb6\x29\x8e\x3e\x7f\x4c\xad\xf6\x43\x5b\xcc\x70\x87\x17\x0b\x74\x55\x24\x3d\x28\x64\x20\x0f\x0b\x93\x50\x8e\x7b\x4c\xd9\xb4\xe7\x92\x90\x86\x09\x7b\xb1\x7c\x5d\xcf\xf1\x26\xbf\xf8\xca\x5b\xae\x60\xb5\x57\x9d\x67\x05\xce\xc6\xe0\x40\x3f\x2e\x5e\x9d\x92\x87\x3a\xba\xc5\xb0\xdf\x5a\x63\x28\x33\x14\xcc\xeb\x17\x61\x18\x20\x14\x16\x18\x15\x3f\x19\x16\x26\xb9\xea\x1a\xa1\xc0\x0f\x39\x02\x3b\x4e\x49\x46\x5d\x55\xf3\x24\x79\x1c\x82\xf7\x37\x44\x16\xa3\xae\xaa\x94\x4c\xa7\x24\xa5\xd6\x49\xfa\x38\x3b\xe9\xf5\x52\xec\x3a\xe9\xd4\x19\x4e\x7b\x14\xbe\x58\x53\x2a\x33\x9e\xc7\xb2\x18\x4f\x62\x59\x6c\xab\x82\x0d\x09\xaa\x93\x91\x0f\x86\x17\x43\x24\xa9\xc6\x53\x70\x2c\xe8\x6f\x41\x86\xe3\x54\x90\xd0\xbc\xe0\x06\xb5\x29\x5b\xf2\x4a\xac\x32\xc1\x3e\x94\xb3\xb5\x80\xd9\x92\xe9\xf1\x38\x75\x72\xaa\xfb\x01\x1f\x5c\xb0\x1b\x88\xfd\x24\xba\xbf\xe4\xcd\x00\x42\x2b\xe4\x4c\x31\xe1\x34\xe0\x24\xa5\x73\x4e\x62\xba\xe4\x65\xa7\x21\xca\xa3\x58\x40\x56\x78\x3d\x58\x74\x47\x34\xb9\x05\xc7\x24\xa2\xb9\x5b\x2b\x59\xd1\xbe\x0c\xe6\x2b\xc7\xc6\x1e\x24\xc1\x83\x10\x66\x5b\xdc\x2f\xbd\xde\xea\x24\x79\x1c\xc1\x0a\xa0\xcc\x49\xa6\xce\x6a\x4a\x1d\x8b\xf4\xc4\xb2\x8a\xdf\x62\xf8\x64\x45\x42\x3c\xc5\x03\xdf\xe5\x2e\x65\x3b\x79\x5b\x97\x5e\x20\x2e\x18\xec\x02\x42\xe6\xb8\x62\xe5\x06\x10\x66\x8d\x26\xc5\x24\x22\x88\xeb\x9b\xe5\xc2\x9c\x50\x00\xfd\xfb\xf1\xde\xb5\xb9\x10\x34\x64\x08\x4e\xc4\x61\x3d\x3a\xdb\xdf\x08\xc0\x12\x42\x00\x96\x70\x90\xa4\x3e\xbb\x67\xee\x76\x5e\xf8\x10\x07\xbc\x3b\xb2\x64\x25\xe4\x37\xf4\xc3\xa1\x1f\x48\x5e\xf9\xbd\xce\xca\x73\x6e\x33\x01\x22\xdd\x90\x70\x43\xce\xdb\x0e\x66\xac\x1d\x4c\xab\x3c\x0c\xf9\xc9\xb4\xe0\xd0\x59\xd3\xf2\x48\xba\x32\x20\x03\xf0\xad\x54\x9e\xc3\x18\xce\x61\xd8\x03\x83\x7a\xb1\x51\x86\xd3\xf5\xda\x12\xa4\x93\xdc\x4d\x7a\xad\xb2\xca\x23\x1a\x6e\xe6\x5c\x05\xc3\x26\xb3\xb6\xc1\x65\x95\xc1\xd5\xc6\x26\x33\xb8\x41\x14\x40\x85\x3b\xf2\x41\x46\x8f\x57\x27\xbd\x5e\xa4\x76\xb2\x4b\xad\x0a\xbe\x40\x21\x15\x6f\xed\x70\x27\x9d\x4e\x9d\x68\x8a\x9d\xe1\xb4\x2f\x08\x24\xfc\xc4\x9a\x00\xa5\x44\x13\x20\x90\x68\xd2\xa3\x21\xb6\xc3\xc7\x50\x2c\x18\x74\x02\x4f\x5d\x28\x96\x35\x2d\x59\x33\xc4\x1b\x72\xd3\xf6\x06\x69\xe7\xf4\x52\x10\x0a\x29\xa4\x97\xd0\x30\x1f\x7c\xfc\x38\x39\xe9\xf5\xe2\xb2\xae\x18\x7f\x46\x2d\x45\xeb\xb9\x38\x13\xf3\xec\x4e\x9d\xb8\x98\x67\xf9\xb5\x47\xe1\x8b\x35\xa5\xfd\xec\xd1\x48\x9b\xda\xb3\xbb\x10\xb2\xb8\xbc\x63\x2a\xc6\x2a\x87\x83\xef\xda\x11\x82\xf0\x8c\x61\x30\xc5\xe3\x8c\x5a\x6a\x31\xac\x93\x0c\xf0\x76\x56\x3e\xf4\x00\x72\x36\x9d\x12\x9f\x7a\x62\xec\x30\x70\x32\xa7\xc8\xef\x23\xcf\x71\xfb\x43\x55\x04\xe9\x24\x02\x6a\x9d\x04\xb0\x58\x81\xc4\x6f\x4b\x68\x1e\x4c\xa7\x3b\xf3\x1e\x45\xcb\x02\x00\xee\x8b\x1f\x65\xe3\x4d\xd4\xa3\x3e\x59\xf5\xe8\xfc\xa1\xbf\x49\xf3\x27\x3d\xaa\xbe\xc2\xc2\x46\xa6\x89\x92\x3e\x5d\x3d\x8a\x70\x57\x95\x72\xe6\xae\xaa\x27\x2e\xbf\x25\x16\xee\x12\xbd\xe4\x45\x04\x9e\x40\xe0\xf7\xad\x01\x2f\x1d\x36\xed\x8b\xed\xb6\xc1\xfa\x3d\xfb\x92\x57\xae\x1f\x92\xd2\xfe\x30\xdf\x17\x39\x8a\x4e\x68\x7f\xf8\xc8\x12\xfb\xf6\x71\x78\x82\x05\xc3\xcf\xd4\xbd\xf6\x24\x81\xe8\xda\xe2\x52\x48\x8b\xa1\xc4\x70\x95\x5c\x77\x0f\xfb\xfd\xdf\x1f\xf6\xfb\xc6\xb0\x2d\x12\xd3\xfe\x50\x1b\xb6\xd8\xc0\xe5\x78\x61\x77\x62\xd3\x44\x69\x8f\x96\xdd\xa7\x30\xd4\x4f\xad\x38\xed\x1a\x86\x96\xca\x94\xb3\x82\x75\x3d\x6d\x79\xa3\x8a\x98\x10\x3a\x57\x2f\x48\x12\x7a\x05\xdc\x92\x3a\x39\x24\x12\xac\xe0\x4a\xdc\xbc\x62\xd4\x4a\x2c\xa6\x44\x74\x89\xc3\xa7\xc4\x7d\x9c\x4d\x90\x38\xd6\x4e\x3a\x25\x91\x64\x34\x52\x48\x85\xa3\xca\x56\x45\x59\x3e\xfc\x55\x39\xbc\x81\x97\xc4\x9e\xcb\x51\x84\x37\xe4\x6d\xeb\xfb\x04\xb5\xf7\xd9\x90\x2a\x37\x8d\x6f\x8d\x55\xc6\x1e\x64\x3c\x0d\x3d\x6e\xec\xa4\x83\x54\x30\x79\x79\x96\x67\x90\x38\xdc\x23\x39\xbb\xa8\x97\xb4\xa7\x8d\x8e\xf4\x04\xfc\x49\x57\x9e\xfe\x4a\x4e\xfd\x85\xcb\xbd\x79\x47\x16\xea\xa5\x56\x2f\x76\x17\x2c\x5b\xba\x1d\xd9\x91\x93\xb6\x9a\x1d\xd9\xf4\xb5\xaa\x40\x85\x77\x74\x7e\xcd\x9a\x15\xef\x91\x2d\x3e\x63\x11\xf3\xda\x53\x24\x9f\x37\xeb\x3d\x8d\xda\xa7\xe8\x53\xb3\xaa\xb8\xc4\x5b\x53\x6a\x37\xab\x76\xac\x8e\xd7\x52\xb1\x6b\x00\x41\x25\x3b\xf3\x4d\x47\x2a\xeb\x37\x5a\xad\xab\x30\xf6\x93\xab\xce\xac\xe9\x3b\x52\xbe\x60\xcc\x39\x5f\xda\x8f\x1e\x5d\x5d\x5d\x0d\xae\xf6\x06\x49\x7a\xfe\x68\x78\x7c\x7c\xfc\xe8\x7a\xce\x17\x91\x41\x42\x7a\x9b\x5d\x9e\xdb\x2d\xb5\x46\x96\x65\x3d\xca\x2e\xcf\x0d\x02\x55\xed\x98\x5c\x47\x61\x7c\xd1\x56\x55\x02\x14\x4f\x0d\x72\xbd\x88\xda\xaa\xfc\xfe\xf6\x8d\xa8\x76\xf4\x48\xdb\x56\xd7\x8b\x28\xce\x3a\xbb\x86\xa7\x8f\x8c\x0d\x49\xda\x90\x5e\x8f\x1a\x06\x49\x29\x97\x74\xe7\xfb\x00\x19\xb6\x51\xa2\x20\xe0\x5b\x0d\x80\x60\xec\x52\x8a\x04\x96\x84\x84\x2d\x10\x5d\x4b\xa0\x2c\x56\x94\xa4\xbd\xa1\xa0\xc7\x06\x73\x37\x7b\x7f\x15\x7f\x48\x93\x25\x4b\xb9\x60\x0f\x26\xb7\x30\x4e\x3b\x14\x98\x04\x0e\x97\xcd\x36\x36\xdb\xe8\x41\x13\x5b\x53\x7a\xca\x21\x02\xab\x96\x5c\xc5\x2c\x7d\x91\x78\x40\xc9\x11\xc5\x22\x16\x53\xf0\xeb\xc7\xd7\xc5\x90\x29\x24\xdd\xe0\x03\x5f\x55\x7e\x19\x31\xf1\x51\xa9\x2c\xea\x4c\x72\x51\xa5\xaa\x80\x18\xb6\x6b\x45\xef\x3e\xa1\x94\x30\xbc\xd1\x53\x6b\x6f\xcb\x3d\xda\x1c\x69\x03\x1e\x1b\xc0\x18\x08\x1b\xc0\x44\xa8\xb4\x8a\x51\xcb\xca\x24\x88\x15\x2a\x3c\x2e\x6b\x4f\x32\xdb\xc5\x88\xeb\x77\xcd\x0a\xe1\xdb\x8d\xa4\x20\xda\xf8\x57\x45\xe6\xae\xba\x12\xac\x7e\x5d\xb1\xf4\xe6\x93\x3a\x51\x48\xbc\x2a\x69\x0b\x90\xfe\x37\x32\xf1\xcc\x8b\x1e\x1d\x99\x78\x25\xd8\x36\xd0\xf9\xbd\x06\xfa\x34\x8a\xe4\x58\x97\xf7\xcb\x09\x0b\x10\x24\xba\x86\x54\xac\xda\xf0\x16\x6d\x0d\xb5\x70\xe9\x95\x66\xc0\x85\x36\x12\x18\x05\x61\xec\x97\x00\xcf\x6b\xdd\x06\x61\x9a\xe5\x7b\xf0\xf9\x3c\x8c\x7c\x80\x32\x6b\x81\x12\x71\x96\x96\x70\x6e\x6a\x70\x3c\xd1\x36\x65\x92\x7e\x39\xeb\x12\x56\x48\x8e\xbc\x20\x5c\xb5\x17\xbd\xd2\x24\x7c\x95\x2d\x4a\x59\xed\x70\x35\x8e\x16\x65\x95\x9f\x4a\x76\x12\x83\x96\xb4\x74\xc6\x5d\xba\x29\x40\x53\x3f\xcf\x04\xc3\x7b\x76\x46\xf9\xe6\xaa\x2b\xe3\xfc\x15\x71\x97\x4b\x16\xfb\x30\x2d\x76\xcb\x1b\xe9\x80\x07\x61\x9c\xb1\x94\x3f\x63\x41\x92\x82\x02\xb9\x18\x04\xde\x10\xfd\x59\x4d\x66\x76\x1f\x50\x90\x0c\x5e\xdb\x5f\x77\x8e\xa5\x71\x6c\x48\x7d\x7f\x7e\x1f\x88\x7c\x43\xc3\x55\xf3\xf2\xde\x89\x8e\xcb\xd5\xbd\xae\x2a\x1d\x0a\xce\x48\x51\x77\xbc\x14\x68\x24\x39\x05\x9a\x01\x0f\x98\x61\xe4\x52\xc1\x79\xe0\x09\x72\xcb\x55\x4b\x9c\x6c\x4a\x62\x27\x9b\x52\x17\xdb\xa9\xf8\x14\xbb\x4b\xec\x21\xf1\x44\x2a\x91\x4f\x32\x90\x5c\x94\x10\x4c\x13\x85\xb2\x49\x25\xe9\x70\x4b\x4e\x5e\x99\x0c\x00\x60\xbe\x75\x97\xc4\x2f\x07\x38\x2f\x06\x48\x02\x4d\xc6\xe4\xeb\x21\xf7\x65\xf2\x24\x14\x15\xbd\x06\xa2\xd7\x15\x75\xa5\xfa\x28\x22\x51\xf1\x22\x24\x23\x1c\xf7\x0c\x83\x78\xe2\x5a\x42\x2b\x3c\x81\x11\x46\xb6\x37\xc8\x18\x47\x2b\x12\xe1\x66\x30\xff\x02\x92\x7c\x5b\x92\x91\x04\x60\xa0\x88\x7a\x83\x73\xd1\x0c\x63\xc1\xf0\x0a\x40\x5a\x5f\x72\xd2\xbc\x81\x8c\x25\x2a\x2a\x75\xcd\x5c\xfb\x6b\x48\xd8\xe2\x5d\x30\xa5\x34\xca\x67\x33\xc2\x5d\x09\x9a\xf3\x8e\x2b\x09\x9a\x75\x21\xdb\x63\x3e\xe9\x0f\x6d\xf6\x84\x4f\xc4\x5f\xc8\xde\xf2\xce\x7d\x57\x49\xd6\xdc\xb6\xc1\x60\x9f\xa6\x6c\x91\x5c\xb2\xa7\x9c\xa7\xe1\x6c\xc5\xc1\xcc\xa5\x92\x69\xf9\xbe\x0d\x5b\xef\xbc\x02\xd0\x87\xca\x80\xeb\xa0\x32\xc6\xb5\x01\x00\xc7\x59\xb4\x7c\x7e\xef\x96\xcd\x11\x54\x21\x5d\x74\x41\x52\xc2\xe8\x76\x51\xa1\x4a\x49\x9f\x4e\x3a\x66\xcb\x6e\x7b\x83\x54\xef\xf7\xe3\x3f\xbf\xdf\x96\xc9\x6e\x8e\xa3\x65\x3e\x52\x75\xb9\xb5\xe6\x5a\xab\xdd\x0f\xa6\x59\x2b\x18\x28\x4d\xc0\xe7\x90\x5d\xad\xd7\xac\x20\xbc\x4c\x93\xc1\xcf\xf2\x69\x47\xb6\xb6\xc6\xe2\x09\xaa\x5d\xbd\x5a\x41\x46\x56\xf6\xdf\xbb\x9c\x2b\xdc\x0a\x21\x63\xbc\x6c\x0e\xf5\x35\x10\xaf\xbb\x41\x48\x7a\x7f\xfb\xfc\xc7\x93\x6d\x43\xb5\x3b\x47\x11\x57\x47\xf1\xa6\x7a\x60\x55\x93\xf3\xb2\x09\x24\xb6\x40\x1c\xaf\xd7\x7f\x0a\x0e\xf9\x9c\xf1\xe7\xc9\x62\xb9\xe2\xcc\xff\x24\xaa\x22\x99\x52\x06\xb7\x35\x29\x7b\xf9\xb1\x7d\xb2\x55\xd0\x63\x31\x56\x87\x4d\xb5\x51\x7d\xdb\x76\xb6\x1c\x36\xad\xc4\x4f\xf9\xf5\xef\x6d\xe3\xea\x20\xec\xbc\x87\x54\xeb\xe1\x59\x35\x32\x7b\x1a\x2e\x10\x1e\x64\xcb\x28\xe4\xe8\xd1\x7f\xac\xff\x5f\xd6\x7b\xa4\xfb\xa1\x55\x2a\x43\xa4\xa0\x37\x61\xc6\xd7\x6b\x81\x86\x3f\x57\x0c\xae\x3e\x97\xf6\x56\x71\xe2\xb3\x82\x74\x01\x62\x87\x3e\x43\xb0\x10\xe5\xf1\x35\x00\x98\x81\xd7\x6b\xc3\xc0\x95\x6c\x14\xe2\xfd\x0b\x29\x20\x15\x23\xc8\xe5\x3d\xbc\x26\xef\x49\x07\xae\xef\x23\xee\xc4\x7a\xac\xeb\xdf\xbe\x0f\x82\xdc\x6d\x75\x20\x3f\xb4\xaf\xf1\x57\x65\xf7\xa1\x6f\xba\x9f\xda\xab\xfe\xd6\x52\xf5\x4b\xd7\xe2\xa2\x8e\x75\x9d\x7c\xb5\x7f\xc3\x2d\x80\x7e\xce\x8f\x26\x67\xd7\xfc\x79\x12\x73\x41\x2b\x1a\x46\x2d\xc0\x7e\xc7\x71\xd6\xdb\xb0\x4d\x25\x7e\x7a\x37\xdb\xd8\xa1\xe2\xd9\x69\x40\x94\x3b\x91\x4f\x0c\xc3\xd6\xf7\xf5\xef\x79\xef\x90\xef\xe1\xd5\xe9\xdb\x37\x95\xf1\xfe\xb1\x65\xbc\x65\x0b\x7d\xb4\x8c\xfd\xe5\xe1\x96\x00\x3b\x06\x0b\x41\xd1\x25\xe1\xce\xae\xf9\xa7\x70\x16\x85\xf1\xb9\x52\x4d\x4b\x82\xf3\x5d\xe2\x43\x17\x39\xbd\x0d\x1d\xd5\x83\xa7\xcb\xfa\x29\xbb\x0c\x93\x55\xd6\x09\xa5\x42\x3e\xf3\xc2\xd2\x48\xab\x01\x4c\x0f\x74\xa3\xf5\x10\x6b\x81\xdb\xab\xb9\xed\x42\x56\x35\x35\x29\x21\xed\x30\x71\xdd\xc8\x1d\xdf\x3a\xec\xa4\xd6\xd4\x8b\x92\x98\x89\x96\x68\x77\x88\x73\x83\x15\x0d\x5e\x61\x33\xdd\xce\x50\x68\xb3\x87\x6d\xdd\xf8\xb2\xbb\x1b\xeb\x9f\xd8\x4d\xc6\xee\x46\x75\x20\xc4\x45\x4d\x79\x01\x88\x71\x58\x29\xc6\x19\xd4\xc5\x38\x9a\xf0\x26\xed\x0d\x31\x61\x55\x59\x0e\xb9\x15\x1c\x9a\xcd\x88\x40\x7f\x62\x73\x61\x6d\x9a\xa3\xad\x7b\x57\x71\x7c\x09\x04\x64\xe6\x4d\x25\x4e\x7f\x48\x92\x12\x91\xe5\xfa\x9b\x94\x0a\x14\x46\x18\x44\x42\x36\xcd\x14\x3e\x77\x29\x95\x05\xeb\x75\x0a\x5c\x27\x14\x88\x2f\x13\xee\xf4\x7a\xe1\x94\xa6\xb6\x46\xf9\xbc\xbc\x64\x31\x17\xf8\x9d\xc5\x2c\x45\x12\x04\x49\x07\x91\x2a\x21\xe9\x20\x59\x8a\xa1\x66\xf8\xa4\xd7\x0b\x27\xf9\x18\x68\x68\x6b\xf7\x0e\x0c\x7d\xa3\x9d\xa6\x15\xbb\x83\x38\x10\x78\x39\x6f\x58\x13\xab\xb5\xc8\x12\x58\xc5\xac\xad\xc2\x1e\xe3\xcd\x06\x71\x5c\x2a\x02\x4b\x75\x56\xa1\xee\x72\x41\xd1\xe3\x62\xa9\x8b\x0c\x1d\x77\x8a\x65\xec\xe8\x7c\xa6\x4c\x33\x86\x09\xa2\xf9\x4c\x61\x9d\xdf\x6c\x9b\x27\x19\x7c\x9a\xc4\xe5\x3c\xc5\xc5\x3c\xc9\xf1\xb9\xbe\x7f\x47\x13\x9a\x94\x8d\x68\x8a\xc9\x65\x12\xfa\x28\x56\x0a\x64\xae\xf0\x56\x03\x8c\x1c\x31\x49\x48\x2a\x2e\x38\xb5\xe3\x14\x68\xb1\xed\xe4\x0b\xa8\x14\x63\x9c\xe4\x9d\xd9\x09\x51\x5d\x81\xa6\x76\x12\x4a\x6d\x43\x11\xb5\xf0\x2c\x89\xa9\x13\xeb\x24\x8c\x57\x33\x32\xff\x53\x1a\x87\xc5\x83\xe7\xab\x8c\x27\x0b\x18\xd5\x4e\x8b\x8e\x39\x9c\x48\x63\xea\x10\xb2\x5e\xd8\x48\x34\xf1\x6b\xc2\x3c\xd1\x16\x19\xf0\x61\x60\x92\x4e\x50\x38\x08\xe3\x90\xcb\x72\x4e\xd2\xc1\x6c\x35\x9b\x45\x2c\x23\xe9\xc0\x73\x63\x8f\x45\xee\x2c\x12\xbd\x0f\x7c\xc6\xdd\x30\xa2\xa9\xfa\x82\xed\x6a\xc3\xdd\x21\xd9\x1d\x42\x14\x73\x3f\xcc\x96\x2e\xf7\xe6\xf2\x89\x9e\xa0\xc3\x67\x5d\x37\x72\x2e\x2a\xd7\x1d\x61\xca\x76\xf3\xef\x68\xd7\x11\x24\x7d\xb3\xf9\x5c\xb1\x01\xf3\xab\x32\x1b\x8d\x76\x2a\x90\x10\xc3\x8f\x4b\xbb\x27\xf9\x08\x16\xae\xb0\x59\x13\x74\x57\x95\x49\x52\x54\x96\x4e\x8a\x0d\xfe\x4c\xc2\x18\x19\x0f\x0c\x8c\xf1\x86\xc8\x0d\x6d\x37\x11\x60\xfb\x00\x76\xb8\x6e\x7b\x25\x9f\x0a\x84\x2a\xde\x97\x0c\xff\xc6\x38\xbc\x24\xe6\x6e\x18\x67\xdd\x92\x9e\xfa\x50\x9e\x50\x4b\x89\x78\x02\x46\x1d\x71\x05\x4e\x35\x03\x99\x8a\x0f\xdf\x79\x9a\xac\x96\x59\x41\x91\xca\x9b\x25\xa3\x9a\x17\xc5\x42\xbf\x4d\xd9\x95\x68\xef\x38\xc5\x4e\xad\x09\xbf\xa7\x53\x12\x30\xbc\x59\xea\x0e\x3c\x0b\xd6\x25\x97\x5b\x32\x22\x95\x2c\x95\x57\x2b\x0f\xcb\xae\x26\x05\x46\x8c\x7a\x88\xe1\x32\x29\x45\xbe\x0e\xf2\x0d\x40\xb3\xa0\xe4\x39\xb1\x26\xcf\x49\xc5\x61\xb4\x4e\x42\xd0\xd8\x97\xa8\x4f\xda\xe9\x70\x27\x9c\x56\xad\x70\x62\x27\x9c\x6a\xad\x23\x4c\x7c\x6a\x9d\xf8\x20\x7f\xf2\x31\x4a\x68\xe6\xf8\x20\x09\x72\xa9\x42\xb6\x09\x49\x4a\x21\x90\x4f\x32\xd0\x55\x18\x79\x89\x11\xc6\x0f\x12\x51\x5d\x13\xde\x94\x38\x99\xac\x1c\x7f\x4a\xdd\x52\x67\x2c\xa7\x37\xae\x2e\x06\xde\x90\x42\x13\x56\x99\xa8\x8e\x4c\x01\xdb\x85\x7a\xdb\x89\xc0\x8a\x94\x9c\x4f\x9c\xa9\xed\x0b\x06\x6f\x23\x58\x4d\xd8\xe4\xf7\x99\x7d\x67\x4a\x42\xf1\x27\xa1\xd6\x49\x22\xcd\x62\xb1\x2e\x28\xe4\x4e\x52\x9b\x76\xeb\x64\x05\x53\xbc\xc2\xc8\xa5\x99\xb3\x82\x29\x8e\xd5\x11\x56\xb9\xad\x48\x39\x87\x44\x66\xa4\x52\xc8\xd9\xc5\xcd\x09\x0c\x8b\x49\xdb\x2e\xf3\x95\x75\x8a\x34\xa7\xe7\x6d\x15\x5b\xf4\x89\xe5\x3d\x5b\x88\xcb\x81\x0b\x41\x1d\xc6\x44\x60\x41\x54\x1d\x52\xca\xe2\x3b\x46\xf5\x34\x8a\x8a\x81\xdd\xdc\x6f\x60\xb3\xbf\x3a\x30\xa9\x14\xb8\xdf\x31\x5c\xfe\x53\x8f\xa1\x3c\x84\xa5\xa9\x21\x89\xe4\x21\x04\x3b\x01\xb1\x2f\x32\xb9\x2f\x12\xea\xca\x7d\xd1\x76\xee\x56\xc4\xc5\xa6\xa9\xcc\x05\x92\xbb\xcf\x13\xe4\x1a\xad\x8a\xef\xc3\x00\xed\xd6\x0d\xb8\x72\xfa\x46\xb7\x61\x13\x07\xe6\x13\x56\x51\x92\xf9\xe4\xbd\x7d\x5d\xb8\xcf\x2a\xf8\x05\xcd\x26\xa7\x64\xa7\x73\x22\x5f\x56\x26\xb2\x34\x3c\xaa\x38\x52\x25\x98\x64\xd5\x9f\x51\xf5\xa7\x9c\xa5\x04\x66\x49\xa6\x4f\xa7\xb1\xb3\x9a\x92\x39\x0d\xc5\x47\x40\xe7\x39\xd8\x25\xf5\xf3\xd3\xe4\x11\xcf\x34\x3d\x7d\x02\x63\x8c\xc9\x82\x2e\xcb\x3c\xeb\xe2\x18\x56\xf3\xac\x9f\xc3\x12\xd4\x73\xaf\x47\xd5\xb2\x00\xef\xa4\xc8\x23\x73\x72\x49\xce\xc9\x8c\x2c\x09\x2f\x5f\xf1\x86\x9c\x91\x2b\x6a\x91\x53\x6a\x9d\x5c\x3d\x5e\x9c\xf4\x7a\x57\x82\xda\xbc\xa1\x97\xce\xd5\x54\x52\xf3\x57\x4f\xe8\xa9\x69\xa2\x53\x7a\xd5\x1b\xe2\x93\x5d\x74\x46\xcf\x9d\x53\xb1\xec\xbd\xde\xe9\xe3\xc5\x09\x3e\xb9\x51\x0a\xa1\x33\x95\x35\x45\x99\x2b\x22\x39\x67\x4b\x86\x5c\xf1\x2a\x83\x33\x16\x73\x96\xd2\x4c\x60\x0d\x76\x1d\x72\x1a\x11\x77\x43\xa0\xb0\x45\xf3\xa7\x9a\xca\x65\x83\x4a\xeb\xb5\xbe\x86\xc0\x0a\x9d\xe1\xc6\x3e\x12\x90\xef\x04\x77\x1d\xf2\xfb\x41\x13\xb7\x7e\xcd\xb9\xa3\x90\x11\x8a\xaa\x30\x30\x84\xd5\xfe\x12\x9c\x0e\x94\x5e\x87\x1c\x95\x5b\xbe\xc3\x58\x52\x90\xb0\xb1\x62\xcb\x11\xeb\x19\x06\x56\x29\xa2\xb9\x69\xa2\x90\x0a\xda\x4f\x96\x50\x9a\x4e\x92\x5c\xf4\x83\xed\x54\x6c\xb1\xd8\x34\xc3\x49\x3c\x58\xb0\xf4\x9c\xa1\x10\x4b\x53\x4b\x04\xa9\xea\xa0\xac\x82\x37\x20\xad\x3e\x7b\x10\xc6\x19\x17\x34\x69\x12\x3c\x58\x32\x8c\xf9\x3c\x4d\xae\x60\x62\x5e\xa6\x69\x92\x22\x23\x8c\x2f\xdd\x28\xf4\x1f\x00\x00\x63\x0b\x3e\x61\xc5\xf7\xb8\xc4\x2d\x21\x4d\x4b\xbb\xac\xc2\xd5\x14\xf2\x1b\x55\xbd\x10\x89\x54\x81\x24\xa0\x02\xc9\xfb\x88\xc8\x0a\x74\x21\xc4\xa3\xa9\xf8\xf0\xe9\xaa\x54\x0b\xb9\xb9\x2a\x25\x57\x08\x29\x2b\x38\x1f\xac\xe0\x50\x44\x57\x4e\x30\x5d\xaf\x3d\x27\x80\x5b\x6a\xee\x04\x53\x1a\x15\x8a\xaa\x18\x3a\x02\x18\xa2\x87\x1a\x26\x72\x3b\x6e\xf6\x30\x89\x3b\xf4\xd1\x1b\x02\x93\xad\x3f\xcd\xdf\x82\x55\x67\x8a\x0b\xee\x37\xd5\x0d\xbf\xf8\xe3\xf4\xa4\x16\x73\x99\xeb\x06\x8e\xfd\x21\x71\x69\xe8\x24\xd3\x93\x7e\x3f\x01\xb3\x6a\xe0\xfb\x12\x49\xe0\x98\xe6\xfe\x7f\xc4\x03\x2f\x59\x88\xc1\xe6\x22\xf8\x0f\x49\x16\xc2\x30\x04\xbe\x75\x3b\x65\x35\x31\x71\x61\x21\x8a\x6d\x29\x5f\x25\x4b\xd2\x2a\xa9\x57\x8a\x95\x90\xce\x05\x73\xd3\x4c\x27\x0c\xf1\x12\x3f\xa5\x25\xd1\x64\xef\xf2\xfe\x6e\xba\x61\xeb\x35\x62\xf4\xb4\xdc\x38\x69\x75\x3a\xe2\x72\x87\x34\xbc\x56\x05\x59\x12\x97\xc6\xb3\x39\x5d\x92\x36\xe8\x12\x31\x19\x55\x72\xd0\xa3\xd6\x89\x07\xb4\x8a\x27\x69\x15\x0f\x66\x6b\xe5\x78\x40\xc8\xad\xa4\x15\x5f\x19\xad\x4e\x2d\x7c\x58\x5b\xf8\xfc\x08\x6d\x88\x40\xc7\x4d\x47\xa8\xe2\x26\x72\xac\x62\x0f\xe9\x65\x12\x03\xe4\x54\x9c\x4c\xa9\x59\x1a\x97\xcb\xd9\x16\xac\x46\xd6\xb2\xad\x6a\xb7\x19\x96\x35\xef\xb5\xc3\x2c\x7d\x83\x71\xb8\xcc\x79\xb9\xc3\xe4\xfe\x0a\xa9\x45\x12\x1a\xe7\xb5\x42\x38\x7b\x61\x9e\x37\x4e\xdc\xed\x3b\x61\x80\x8a\x84\xa0\xee\x46\x97\xd4\x91\x2c\xfc\x56\x19\x4a\xc4\xf8\x03\x46\x2d\xcd\x36\x9e\x3f\x48\x02\xd8\x4f\xb8\xd7\x2b\xf3\x31\x6f\x08\x5b\x2c\xf9\x4d\xf3\x75\x77\xa5\x1c\x2c\xf1\xc1\x7a\x91\xb9\xde\xbc\xba\x03\xbb\xd0\x8e\xa5\xa1\x9b\xc2\x64\x3a\xaf\x1d\x42\xe4\xf2\x74\xaa\xec\x1a\x93\xba\x08\x05\x85\x34\x71\x5c\x8d\x5a\x09\x49\x58\x6e\x66\x97\x24\xb5\x83\xe1\x72\x9e\xb6\x7a\x97\x82\x6d\x8e\x98\xae\x1a\x65\xf2\x78\x54\xb9\x19\xe4\xeb\x15\x52\x38\x65\xc4\x13\x57\xd4\x0a\xef\x3e\xa1\x54\x69\xe3\xd2\x5c\x65\x57\xad\x81\xd2\x32\x1f\x36\xdc\x2c\xae\x37\x47\x28\xe7\x05\x72\xa8\x4f\xed\xb7\x6d\x36\xf3\x65\x85\x8f\xf6\x85\x9d\x7f\x7f\x6e\x7f\xc0\xe0\x12\x23\x50\x1d\xbf\x89\x58\xe3\x7e\xeb\xb0\x9d\x7f\x32\x9c\xb4\x8c\xe1\x45\x7b\xcf\xaf\xed\x77\x18\xe0\xe5\x17\x98\x61\xd8\x29\xc6\xf6\x1b\xa4\xcd\x0e\x38\x52\x2e\x95\xea\xaa\xdd\x76\xe3\x7e\x83\xf8\xb1\x7d\x10\xbf\xda\xdf\xb0\x0c\xe6\x60\x6b\xbd\x3a\x6c\xba\x21\xc0\xe1\x33\xbf\x75\x85\x9f\xc9\xdb\xb8\x6b\x91\xcb\xc3\xf5\x4a\x7f\x19\x9c\x0b\x3b\xd3\x12\xdd\x8b\x93\x26\xc8\xa9\x5d\x99\x51\xcd\x0d\xe3\x0c\xa5\x4e\x38\xc5\xea\xa8\xed\xe6\x39\xac\x77\xad\x96\x65\x6e\x7d\xa7\x2f\x36\x9f\xfc\x60\xff\x54\x2c\x21\x67\xd7\xbc\x8d\x13\x69\xa6\x59\x2e\x00\xe7\x1c\xcc\xcf\x76\x3b\x0f\xf2\x0f\xfb\x17\x2c\x33\x32\x97\x6f\xa7\x6b\x4d\x36\x04\x6c\x19\xff\x5a\xa7\xbf\x77\x74\xca\x98\xfd\x47\xb3\xd7\x42\xf9\xb1\x21\xa9\x1b\x66\xac\xcb\x44\x0c\xba\xe0\x62\x3b\x45\xc9\x55\x2b\x3d\x59\x56\x4b\x45\x35\x49\x76\xb5\x48\x92\x3a\xb8\xb2\xa8\xb4\xc8\xab\xb0\xa9\x2d\x76\xa3\x52\xfa\xa9\x6b\x5b\xba\x84\x6a\xb8\x30\x5f\x6a\xdd\x87\x5b\x86\x22\x38\x39\xb5\xf7\x63\xd6\xbe\xf9\xb9\xed\x21\xfe\x5d\x63\xae\xd0\x0b\x69\x87\x97\x54\xdc\x5e\x2e\x49\x7f\xf9\x4a\x75\x29\x5d\xcb\x1a\x84\xca\x45\x3b\x66\x77\xc9\x01\xd8\xc4\x65\x76\xc2\x24\x87\xb8\x5a\xdc\x7f\xd7\xe5\x78\x45\x93\xfc\x10\x56\xdd\x5d\x85\x11\x0d\x49\x3a\xa8\x7c\x70\xea\xc8\x98\x22\xcf\xdd\xe2\x5a\xd9\x01\x92\xba\x05\x3b\x48\xf4\x90\x51\x3e\x59\x31\x3b\x62\x24\xa6\xd6\x49\x0c\x6e\x41\x31\x2e\x5f\x3f\x43\x09\xc4\xc3\x20\x9a\xcd\x3c\x5c\x3b\xd2\x59\xa4\x3a\x46\xa9\x5a\xa9\x92\xca\x16\xf1\x0a\xa2\xe8\x64\xf5\xd8\x03\x56\x53\x7a\x02\x5a\x82\x5e\x72\x56\xd3\xa2\x5b\xe9\xd0\x22\x3a\x2c\x94\x07\x91\x52\x1e\x84\xb9\xf2\x20\xaa\x28\x0f\x22\x29\xca\xdf\x90\x5c\x16\xbd\xc5\xae\x6e\x0b\xaa\x9a\x33\xdb\x67\x0a\x01\x6f\x88\xf3\xe9\x66\x31\x4b\xa2\x41\xc8\x59\xea\xf2\x24\x9d\x16\x40\x1f\xfe\x75\xfa\xa6\xa4\xa0\x2d\x41\x38\xd7\x1d\xb1\x34\xe2\xf9\x26\x64\x91\xff\x20\xce\x0d\xed\x2e\x19\x5d\x30\x72\xde\xe6\xef\x66\x64\x3c\x0d\xe3\x73\xfd\xd0\x35\x85\xac\x75\x2b\xc0\xe9\x94\x74\x4b\x60\x65\x64\x26\x00\xc0\x94\x38\x96\xcc\x5a\x5d\xed\xce\x19\x12\xc7\x5b\x52\x28\x5d\xf0\xc4\x6c\xde\x00\x05\x96\xd3\xea\x67\x35\x81\xf0\x95\xa6\x57\xbc\x2a\x94\xbb\x67\xd4\xf8\xff\x8c\x1e\xea\xf5\x6e\x18\x1e\xf0\xe4\x13\xbc\x26\xda\x1b\xe3\xcd\x95\x2e\x0f\x3e\xeb\x14\x0e\x5f\x89\x19\xe3\x5b\x89\xb5\x93\x5d\xc4\x1f\x84\xf1\x03\x86\xe5\xc5\x07\x36\xe2\x25\x4f\x92\x5f\x7c\x05\x91\xe8\xf0\xa9\xe0\xb8\xea\x08\xb0\x7c\x0c\x50\xa7\x94\xb7\x0a\xff\x2b\x22\x77\xe8\xd6\x34\xf3\x74\xde\x79\xd3\x0d\xc9\x5f\xb5\x0b\x23\x9d\xe5\xc6\x97\xd5\x25\x11\x74\x2e\x97\x4c\x24\x68\x4f\x21\x17\x3e\x68\x65\x4e\x30\x2b\x3d\x5d\xd9\x86\x5c\xd7\x33\xd7\x42\xa0\xb7\x97\x90\xfe\xa7\x4c\xff\xaa\xb4\xb0\xde\x2a\x15\xb3\x71\x0a\x29\xf2\x71\x89\xed\xb9\xb4\xac\xfa\xf4\xf9\x27\xb5\xcc\xeb\x35\x87\x00\x0b\x4a\xf5\xf4\xe9\xf3\x4f\x1f\xca\x60\x71\x82\x97\xaa\x96\x6b\x02\x87\xc1\xb5\xe8\x27\x0a\x59\xcc\x7f\x27\xf1\xe0\xa6\xf8\xf5\x85\x38\x28\xa6\xf1\x60\xe1\xf2\x34\xbc\x3e\x4d\xdd\x38\x0b\x92\x74\x81\xb8\x20\x3a\x3f\x79\x29\x63\xf1\xf3\xd3\xb7\x70\xef\x2a\x6f\x1c\x8c\x07\xd7\x02\xc4\x74\x13\x06\xb2\xda\xb3\x64\x15\xfb\x61\x7c\xfe\x1c\x20\x7e\x64\x9e\x1a\x51\x48\x3b\x1e\x17\x03\x73\x8a\x41\xf5\xc5\x49\x0d\x78\x9f\xab\x82\x37\x2c\xe0\xa4\x18\x64\x3f\x1c\xf0\x64\x59\x3c\x3c\x4d\x96\xd3\x5c\xa6\xe4\x88\xcd\x74\xce\x7e\x27\xf2\xf3\xcb\x74\x43\xde\xd7\x27\xbf\x54\xa1\xc3\x14\x4b\xb9\xde\xbd\xd6\x42\xec\x55\x9e\xac\xbc\x39\xcb\xd6\x6b\x87\x4d\x31\xd1\x2d\xdb\x09\xa3\x4f\xae\x59\x8e\xce\x3e\x7d\x27\xea\x68\xc7\x1c\xd2\xf8\xf7\x7e\xb8\x23\xa7\xa0\x40\x03\x20\x1a\x05\xec\x4e\x67\xa9\xd2\x00\x43\xf7\x75\xdb\xbe\x4c\xb7\x57\xa1\xcf\xe7\x36\x1f\xc0\x27\x99\xb3\xf0\x7c\xce\x6d\x3e\x90\x5f\x08\x4f\x96\x36\x17\x0b\x44\x52\xf5\x00\x3e\xc9\x2c\xe1\x3c\x59\xd8\x7c\x20\xbf\x10\xb1\xc0\x36\x87\x75\x26\xd7\xf9\x97\x1b\xd9\x54\x53\x4e\x86\x4a\x40\xa5\xde\x2e\xbf\x82\xa4\x5f\x8e\xd8\xff\x86\x23\x1d\x10\x1e\xfc\x06\x45\x53\x43\x9a\x09\xe4\xe8\x0b\x97\xaf\x55\xb1\x4c\xdc\x29\x05\x17\x35\x2b\x45\x09\xba\xc8\xed\xac\xd9\x93\x94\x73\x14\x96\xe4\xde\x6d\xe6\xa5\x49\x14\xbd\x91\xaf\x03\xbb\xef\x3d\xf8\x1b\x13\xf9\xe0\x14\xe6\x03\x76\xa3\x2c\xd7\x5e\x4e\xf7\x6d\xa9\xc8\xdf\x04\xfc\x41\x71\xce\x2b\x8f\x54\x69\xbb\xdf\x49\x13\x88\x20\x8e\xdb\x01\x69\x4f\x34\x63\x0e\x6d\xb3\xae\x62\x9f\x05\x61\xcc\xfc\x52\x0a\xfe\x69\xee\xfa\xc9\xd5\xc7\x24\x81\x63\xd3\xe8\xac\x7c\x5c\xeb\xab\x7c\xa0\xe9\xab\x57\xfa\xc0\x27\x88\x01\x49\xf3\xce\x5d\x30\xb0\xa2\x1b\xf0\xe4\x8d\xa0\xd5\x9f\xbb\x02\xcf\xd8\x55\xab\x20\xaf\x6c\x8a\x90\x98\xc5\x49\x6d\x79\xed\xd2\xd6\x14\xe7\x4b\x5a\x96\xd4\x4f\x91\xa6\x43\xd7\x9d\x26\x10\xa8\x2f\x61\x67\xf6\x12\xf0\xf7\x2c\x96\x5a\xd3\x9e\x6b\x2d\xc2\x76\x3b\x4c\xed\x9d\x83\x72\x0f\x81\xaa\x1b\xf0\xfa\x25\x4b\x83\x28\xb9\x02\xf1\x45\xfe\xe3\x77\xb0\xef\xcb\x7f\x7d\x51\x9b\xed\x91\xbb\xe2\xc9\x5a\x0e\x63\x2d\x1e\x46\xee\xcd\x7a\x1e\xfa\x3e\x8b\x1f\x0d\x38\xcb\x38\x4a\x7b\x61\x2f\xd6\x3a\x5c\x16\xf4\x6a\x8e\xdc\x52\xd3\x44\x29\xdd\x1d\x4a\x8d\x88\x4b\x22\x32\xa7\x82\x15\x20\x4b\x2a\xb0\x00\x59\xd0\x4c\xfc\xba\xa4\xfa\xce\xb6\xb4\xdd\x6c\x6d\xc8\x39\xbd\xbd\xb6\x2d\x72\x63\x5b\x9b\xdc\x0f\x69\xb1\x5e\xef\x2e\x4c\x73\x37\x15\xd4\x14\x32\x66\x89\x7f\x23\x8e\xe2\x0a\x0c\x54\x03\x34\x07\x2d\xeb\x25\x45\x2e\xe5\x78\x97\xd2\x10\xe4\x91\x19\x72\xf1\x44\xef\x07\x45\xd4\xd5\xe7\x59\xeb\x36\x1a\x14\xdf\x37\x76\x82\x5c\x8c\x89\x18\xe8\x04\xa1\x73\x1a\x23\x2e\x6e\xa2\x1e\xad\xdc\x18\xe7\x83\x9b\xb2\xe4\x34\x59\x62\x7b\x6e\x9a\xe8\x7c\x70\x4d\x7d\x31\x1e\x4c\x6e\xaf\xed\xa5\x5c\xde\x4b\xad\xcf\xfe\xf9\xe0\x9a\xdc\xd8\x4b\x81\x89\x8a\x07\xa7\xc9\xb2\x7f\x3e\xb8\x21\x12\xf9\x2d\xab\xc8\x6f\xa9\x90\x9f\x76\xb4\x17\xe5\x42\xc7\x72\xa1\x99\x8a\x43\xf0\x1b\xb4\x0c\x8b\xdf\xaf\xa0\x69\x8e\x8f\x8a\x00\x8b\x0a\xbf\xf6\x53\xfc\x98\x0e\x61\xc9\x54\x89\x16\x93\x31\x47\xba\xfd\x50\x55\x12\x7b\x46\x16\xc1\xcb\xe5\x5d\xbc\x91\xb8\x35\xff\x79\x9a\x2c\xd5\x7b\xa4\xf9\x1b\x84\xda\xd0\x2f\x35\x1c\x00\x0e\x8c\x54\x2c\xa3\x38\x63\x36\x1b\xb8\x59\x16\x9e\xc7\xcc\xff\x14\xc1\x21\xd7\x68\xb7\xf5\x1a\x68\xd3\x09\x1b\xcc\x93\x8c\xc3\x81\xc5\xeb\xb5\x57\xd9\xfe\xe7\x1a\xff\xba\x53\xbb\x6e\x9d\x69\xee\x4e\x59\x9a\x45\x96\xee\x56\x8e\x1c\x0a\x91\x1b\x8b\x18\xff\x27\x3f\xc2\xc6\xb4\x30\xa3\x10\x7b\x0d\x3f\xa1\xd6\x84\xd7\xac\xd0\x45\x1b\x5b\x6c\x16\xd3\x0c\xc4\x96\xe1\x36\x43\x97\xa2\xf2\x46\x2c\x4d\x42\x63\x4a\xa9\xba\x61\x20\xe8\x40\xa5\x35\x9e\xc8\x81\xda\x29\xc0\x11\x6c\x5e\x88\x62\x4c\x22\x9a\x4c\x1c\x77\x9a\x3b\x30\xbb\x83\xcb\x30\x5b\xb9\x91\xb8\x44\x96\x49\xca\xd7\x6b\x67\x4a\x02\x14\xe3\x49\x6c\x3b\xe2\x9a\x26\x9e\xd8\x8b\xb9\xb7\x73\xbe\xde\xc9\xc4\xb3\xbd\xbc\xf8\x1c\x5d\xa2\x08\xeb\xc6\x75\xb3\x72\x2d\x1c\x83\xbb\xb3\x88\x19\xc4\xe0\xbe\xf8\x33\xaf\xbc\x39\x83\x37\x2f\x1b\xde\x68\x68\x49\xdc\x10\xa6\x69\x04\xe1\x35\xe0\x72\xc0\x3c\x83\xa5\xd2\x0b\x4c\xf2\x5d\xf1\x01\x56\xb2\x86\x68\xcf\xaa\x44\x7c\x28\xb7\xb2\x00\x7e\x92\x9a\xe6\x0c\x89\xd3\x6e\x64\xdc\xe5\xa1\x27\xb6\xc9\x1c\xa5\x25\xe4\x13\x2c\x6a\x96\xfe\xf5\x02\xf1\x68\x1b\x2a\xc5\xeb\xb5\x5c\x4d\xf5\xb3\x1b\x92\x58\xb1\x74\xbd\x6e\x67\x2c\xfa\xc3\x5d\x4a\x63\xf7\x32\x3c\x17\x6c\xe3\x60\x95\xb1\xf4\xe9\xb9\x58\xf5\xca\x05\x52\x1a\x3f\x06\x61\xca\x82\xe4\xda\x10\x2f\x22\xb6\xfa\x49\x06\x7d\x57\x37\x98\x3e\xb5\x29\xc6\x8f\xad\x93\x9c\xae\x16\x03\x03\xba\x23\x4e\x62\x26\x66\x33\x1e\xf0\x9c\x50\x5e\xaf\xb5\xd2\x25\x4b\xb3\x25\xf3\x78\x78\x29\x2e\xb4\xa5\x1b\xc6\x5c\xbc\x58\x21\xea\x5b\xaf\x61\xe4\x8e\x51\x34\x37\x88\xa1\x35\xd2\xc6\x10\x0f\xae\xc2\x28\x7a\x3e\x77\xe3\x73\x86\xd7\x6b\x0e\x8b\x19\x71\x96\x4a\x80\xe5\x43\x78\x16\x2b\x87\x41\xd3\xd4\x46\x23\x8b\x72\xf2\x29\xdd\x49\x69\xaa\x9d\xdd\x8a\x44\x1f\x41\x1f\x9b\xaa\x23\xbd\x1b\x87\x0b\x97\xb3\x1f\xc3\x0e\xd7\xea\x5f\x1a\xde\xf4\xec\x53\x18\x9f\x47\x8c\x77\x78\x78\xff\xa4\x37\x10\x4c\xd9\x79\x97\xa3\xfe\xcf\x7a\xcd\x20\x89\xa2\xe4\xea\xf9\x2a\xcd\x3a\xfc\xc1\x19\xd7\x6a\xcf\x43\x9f\x75\x39\x83\xff\xa6\x83\x0d\xe3\x28\x8c\x59\xae\x2b\x13\x34\x7a\x5b\x13\xae\xc3\x4e\x05\x89\xfc\x34\x4d\x3b\xdc\xc3\x93\x8a\x07\x3b\x0f\xbd\x8b\x9b\xd6\x7a\x29\xcf\xfd\xc8\xaf\xa8\xc1\x93\xa5\x41\x5e\x52\x43\xd2\xc8\x06\xb9\xa6\x06\x50\xcf\x06\x79\x4f\x0d\x71\x51\x19\xe4\x13\x75\xae\xc8\x4b\x72\x4d\xde\x4f\xc9\x29\xfd\x34\x48\x99\xbf\xf2\x58\x25\x0a\x85\xce\xe4\x28\xcc\xe2\xf0\x9e\xd1\xcf\xb8\x9b\x72\x83\x88\xaf\x2c\xf6\x8d\x29\xde\x60\xe2\x4c\x31\x79\x4b\x9d\x02\x8d\x7d\x22\x8e\x21\x88\x0c\x63\x8a\xef\x0d\x9a\x6c\x03\xfe\x94\x3a\xc6\x0c\x64\x86\x1f\x99\x2b\x10\x57\x2a\x3f\xdc\x80\xb3\x54\x15\xc9\xe7\x6f\xdd\x30\x36\x88\xb1\x90\x1f\xf0\x5c\x15\xc9\xe7\xbf\xa5\xa1\xd8\x21\xc6\x95\xfa\x84\x1a\xb2\x70\x0a\x13\xf8\x81\xde\x2e\x23\xd7\x03\x92\xce\x2e\xe6\x70\x91\xf8\x61\x10\xb2\x34\xb3\x9d\x29\xc9\x78\xea\x72\x76\x7e\x63\x1b\xee\x2c\x4b\xa2\x15\x67\x86\xe6\x79\xf4\xbc\x22\x69\xaa\x8b\xef\x08\xd7\x14\x8b\x80\x07\xad\x93\xf4\x31\x3b\x49\x7b\x3d\xcc\x9d\x74\xaa\xa9\x00\xd3\x5c\x05\xb8\xcb\x07\x59\xb2\x60\x55\xa3\x6c\xf5\x08\x31\x71\x8e\x9b\x32\xdc\x0e\x2e\x7a\x83\x65\x88\xb0\x0b\x7a\xbb\x14\xb7\xf0\x25\xb3\x77\xad\x0d\xf9\x48\x6f\xc1\x3c\xd6\x60\xba\x35\x6d\x66\x10\x16\x8b\xeb\xc2\xb7\x77\x2d\xb2\x9c\xbb\x19\xb3\xf3\x89\x0b\x2a\x9a\xeb\x0d\x61\x41\x50\x37\xe8\xcb\x59\x26\x81\x8f\x99\xb2\x1d\x97\xc4\x3c\x84\x0d\x51\x06\xb7\xa0\x34\x94\xe4\x11\x71\x69\x71\x9d\x27\xeb\x75\x42\x32\x1a\x0f\x52\x96\x85\xdf\x18\x89\xca\x47\xd9\x7a\x9d\x91\x15\x0d\x11\x1f\x30\x49\x7a\x67\x83\x65\xb2\x5c\xb2\x14\x13\x4f\xdb\x85\x5c\x81\x95\x77\x52\x36\x48\x59\xc0\x52\x26\xba\xaf\x3f\x51\xad\x0b\x8d\xab\x69\x7a\x83\x20\x49\x5f\x82\xd8\xb1\x62\x7a\xd7\xb4\x38\x36\x24\x28\x83\xa4\x83\xd5\xd2\x17\x6f\x7a\x21\x66\x99\x44\xa6\xb9\x6a\xa9\x2d\x5f\xa7\x52\x9b\x68\x13\xb9\xad\xeb\x36\x4b\xeb\xad\xbd\xb7\x36\x68\x19\xc0\x46\x59\x46\xdd\xea\x1e\xbf\x7f\x56\x3c\x05\xa4\x8b\x80\xd1\x37\xb0\x63\x69\x81\xd5\x5e\x74\x55\x1a\x4e\x2b\xce\x74\x1a\xf9\x21\x90\x53\x7e\xac\xa6\x55\xe3\xd5\x89\x71\x6d\xd8\xc6\x8d\x51\x71\xa2\x2b\x62\xcd\x50\xa6\xad\xa0\xd8\x40\x6a\xf1\x81\x0a\x2e\x8e\x2c\x49\x68\x38\xf9\x13\x85\x92\xd9\x13\x64\xd6\xe4\x45\xf1\x2b\xa3\xe9\xe0\xba\x97\x4a\x12\xf8\xd1\xa8\x1f\xe7\xdf\x48\x44\xd3\xc1\x4d\x2f\x55\x74\x2f\x3c\xca\xbf\xee\xa8\xa8\x88\x89\x8a\x80\x78\x65\x73\xc1\xb8\x64\xe4\xc6\x4e\x07\x37\x45\xc5\x8d\x1e\xcb\xf0\x65\xa5\x4e\x01\xb7\x52\xe7\x5a\xd6\xd1\x46\x44\x6e\xec\xa8\x52\xe5\x7d\x51\x25\x1f\xaa\x5e\xa5\x48\x91\xae\xea\xc8\xce\xa4\xa3\xe5\x8a\x26\x93\x77\x28\x91\xef\xbd\xa3\x44\x1f\xbb\xb4\x30\x15\x33\x24\xc1\x34\x31\xe4\xc0\x0c\xdb\x00\xf0\x46\xfe\xb2\xae\x7c\x59\x43\x22\x64\x9b\x3b\xab\x29\x15\x7f\xfa\x28\x75\xbc\xa9\x98\x1f\xf8\xd0\x03\x38\x1a\x02\x63\x97\x35\x7b\xb5\x9a\x9b\x42\xf9\x08\x03\x7c\x93\x63\x1c\x79\xf6\xa4\x54\xa3\x15\xe1\x48\x54\x1f\xc4\x77\xe0\x16\x01\x6d\x87\x0f\x0a\x44\xfd\xc2\xe5\xae\xc0\xa7\xaf\xd1\x6d\xb1\x6d\x6c\x3e\x48\x99\x57\x41\x05\x6a\x13\x15\x4f\xe4\x70\xda\x50\x3c\x29\xaf\x05\x5e\xee\xb7\x0d\x2e\x0f\x0f\xf9\x51\xd9\x24\xb9\xd7\xe4\x5b\x61\x9e\x44\x7e\x95\x5f\xe1\xaa\x27\xcf\xe8\x2d\x4f\x96\xb6\xbc\x1e\x95\x74\x4b\xfd\x50\xc2\x2d\xf5\x0b\x44\x5b\xf2\xbb\x76\x2a\x5f\x55\x0f\x84\x1a\x6d\x5c\x7c\x15\x48\x1e\x42\xdc\x97\x07\xc2\x2d\x98\xc4\x8c\x64\x50\x51\xd2\x27\x24\xa2\x6c\x70\xbe\x5c\x3d\xf5\x3c\x16\xb1\xd4\x85\xb2\x15\x15\x28\xce\x5d\x0a\xda\x91\xf8\xe2\xc8\x89\x51\xab\xd5\x21\x01\xdd\x15\x08\xd8\x9f\xb4\x2d\xc5\x35\x8c\xe8\x86\xc4\x34\x97\x94\xb0\xcb\xd0\x63\x1f\xc2\x6b\x16\x7d\x14\xd0\xd7\xeb\x5c\x13\x7d\x7b\x6d\xff\x8a\x7e\x45\xfc\x61\x8c\x1f\xc5\x78\xbd\xb6\xc8\x0d\x14\xa4\x45\xc1\x66\x83\x5c\xdc\xa6\x73\xf4\x27\xbe\x78\xe2\x92\x25\x0d\x06\xd7\x64\x51\x5e\x0b\xcb\x89\x65\x2f\xc9\x25\x0d\x06\x37\xe4\xbc\x2c\xbe\x9c\x58\xf6\x25\x99\x51\xb7\x1e\x37\xc6\x10\xd4\xfb\x4d\x4b\xf9\x8d\x81\xc9\x27\xfa\x9e\x9c\xd2\x2b\xf2\x96\x96\x42\x42\x75\x78\x9e\xd2\x33\x94\x62\xf2\x81\x1a\x52\x26\x20\x59\x6f\x83\x3c\xcf\x0b\x7e\x93\x27\xe9\x29\xa5\x34\xac\x70\x24\xc0\x35\x3d\xa5\x9e\x60\x06\x8a\x65\x30\x4d\xf4\x81\x2a\x34\xae\x81\x92\x05\x12\x94\xa0\x7f\x9e\x92\x84\x52\x7a\x05\x36\x92\x2f\xc9\x79\x9f\x3e\x75\x3e\x4c\x0b\xe4\x43\xce\x1f\xd2\x68\x32\xb4\xfb\x43\x0c\xf5\xde\x9b\x26\xfa\x44\xaf\xc9\x42\xd4\x7b\x3e\x2d\xb0\xc7\xa2\xa8\x26\xa9\x00\xf2\x31\x8f\xaa\x2d\x59\x72\x74\x9b\x0f\xcb\xce\x36\x64\x65\x9a\xcf\x8a\x4b\x31\x9a\xd4\x6a\x6e\xc8\x47\x82\xd0\x05\xbd\xdd\x60\xe7\x74\x4a\x6f\x26\x86\x65\xd8\x86\x41\x2e\x9c\x4f\x53\x3a\x2b\x7e\x95\x8c\x0d\x45\x6f\xdb\xf6\x04\x7e\x3c\x9a\x48\xf6\x25\x72\x39\x43\x46\x6f\xd1\x33\x96\xd7\xe4\x81\xd1\x3b\x17\x5f\xb0\x61\x97\x4f\xf7\xfc\xc6\x73\xf2\xc0\xc2\x06\xb9\xc0\xd8\x6e\x1d\x1f\x2f\xc7\x07\xd5\x61\x50\x5c\x0e\x71\x51\x16\x68\xa3\x14\x3f\x15\x95\xf4\x39\x47\x52\xa0\x8e\x06\x41\xdc\x7d\x69\xa2\x3a\x8e\xda\x51\xa3\xbb\x60\x37\x99\x46\xb8\xe0\xf6\xcb\x3e\xd7\xd6\x80\xed\x4c\xe6\xb0\xe9\x7a\x7d\xbb\x01\xd1\x9e\x9b\x5b\xed\x14\xa5\x21\x2d\xc1\x39\x6c\xba\x93\xa1\x10\x9b\xe6\x0a\xfe\xa2\xea\x9c\x84\x12\x20\x49\x31\xd1\x87\x13\x6f\x19\x05\xa7\xb1\x00\xba\x0b\x61\x89\x27\x61\x5b\x20\x82\xb0\x1e\x85\x00\x90\x84\x74\x21\x15\xc4\x88\x54\xd8\xdf\x83\x40\xbc\x95\x38\xcc\x2e\x37\x21\xcf\xa9\xc4\x41\x8e\x90\x15\x5e\xb4\x0c\xd0\x11\x88\xcf\x85\x9b\x9e\x87\xb1\xf8\xba\x21\xae\xe0\xa4\xb4\xf6\x1a\x81\x4e\xca\x5b\x40\xd0\x39\x6a\x57\x57\xe7\xa7\x41\x50\xe6\xf3\x55\xd0\x97\xf9\x92\xd0\x94\x68\x95\xa1\x5b\xd3\xec\x04\x06\xcf\x0b\x58\xf0\xab\x42\xf5\x7d\xf7\xde\x88\xab\x6b\x0e\x7b\xa0\xb9\x33\x12\x5a\x05\x2c\x87\x5e\xc7\x77\x0c\x4f\xb4\x8d\x66\xa7\x0e\xbb\x93\x6b\x73\xf8\x54\x1c\x13\xb6\xc1\xe4\x76\x83\x77\xc4\x0e\x12\x3b\x2e\x6e\xee\xb8\x58\xbd\x75\x52\xdd\x71\x61\xc7\xbb\xc5\x6d\x61\x41\xd4\x0e\x12\x2b\xf8\x75\x15\xa6\x2c\xb3\x1d\xc3\x93\xc2\x71\x75\x24\xa7\x1b\xf2\x95\xde\xca\x9d\xa1\x58\x5d\x75\xb3\x4a\x76\x37\xbf\x59\x81\xf8\x84\x7d\xa3\x08\x50\xed\x66\xfd\xad\x42\xca\xa6\x0c\x2e\x50\xf4\x48\x00\x58\x03\xb0\xb5\x6c\xb3\xe6\xc9\xf2\xd1\x39\x69\xe1\xc5\x1e\x7c\x75\xd8\x34\x67\xb0\x7e\xa0\xb7\x40\x3b\xd9\x40\x16\x11\x16\xfb\xb6\x22\xa6\xb4\x3e\x7f\x6a\xef\x13\xea\xad\x59\xec\x77\xf4\xf3\x83\xea\xa7\x80\xf3\x45\xb7\xe8\x01\x0d\xe9\xc7\x24\x01\x99\x8c\x69\x56\x7e\x22\x2c\xd3\x1c\x17\x86\x62\xbc\xb0\x12\x83\x68\xb1\xa9\x69\x46\xe2\x76\xca\x37\xd9\x8e\x9f\x80\xde\xcc\x34\xd9\x20\xcc\x3e\xb9\x0b\xe9\x93\x1c\x6b\xad\x62\x1a\x57\xe4\xb7\x31\x48\x6e\x37\x57\xf3\x30\x12\x15\x37\xb9\x11\x9a\xee\xaa\x5f\xbe\x4a\x03\x67\x33\x22\xd7\x51\xd0\x13\x62\xa5\x04\x45\x21\xd7\x92\x0d\xae\x7b\x4c\xdd\x63\x6a\x41\xd9\xe0\xa6\xc7\x72\xda\x1a\x57\x7c\xfd\xcb\xed\x6a\x5c\x2a\x61\xaa\x01\x58\xe9\xe7\x16\x14\xa7\x24\x92\x9e\x34\x7a\xe2\x35\x21\x2c\x98\xdb\x69\x57\x3b\x71\x8b\xdf\xf2\xc2\x56\x41\x90\x8a\x2c\x45\x31\xc4\x05\xcd\xef\x5c\x97\x16\xb7\xf4\xa3\xff\x40\x68\xb2\xeb\xcd\xd3\x64\xc1\xd6\x6e\xec\xa7\x49\xe8\xe3\x01\x7e\x98\xb9\x81\x9b\x86\x8f\x42\xa9\x7d\x69\x11\x43\xe2\xf5\x1a\x09\x66\x58\x93\xc4\x47\xc5\xcf\xd3\x64\x89\x31\x51\x1a\xd5\x24\x17\xc6\xbb\xe4\xda\xce\x7a\xbe\x78\x25\xc1\x33\x6c\xc0\xec\x0d\x74\x1d\x2d\x28\x5e\x37\x3c\x1b\xf0\x64\x49\xe1\x6f\x8f\x95\x6a\x0f\x22\x95\xab\x54\x7e\x14\x4f\x60\x28\xb9\x3a\xb6\xd6\x4a\x4d\x8e\xd2\xdd\xd6\x5b\xca\xa9\x54\xea\x08\x5a\x2f\x95\x2f\x41\x1b\xa0\xae\x15\x18\xc2\x07\x37\xb2\x3b\xc2\x37\x88\x63\xbb\x65\x59\xcb\x15\x4d\x94\x73\xae\x14\xce\x37\xd4\xb8\x85\x70\x5e\x0a\xf9\x89\x4b\x7f\x44\xe9\x40\xa3\xc0\x48\x75\xfd\xc3\x49\xa8\x3f\xb5\x2d\x28\xd1\x6a\xd8\x90\x2e\xab\x04\xa2\x86\x5f\xdb\x35\x25\x18\x59\x50\x81\x93\x17\x61\x12\xd1\x7e\xac\x29\x96\xe4\x92\xae\xca\xc2\xd3\x64\xa9\xd6\xce\x48\x79\x24\xc5\xde\xe1\x7a\x9d\xe2\x81\x1f\xa6\xd2\xc9\xc0\x34\x51\xd4\x83\xf1\xd4\x5f\xa3\x3a\xe8\xbe\x5b\xec\x23\x37\xdf\x47\x19\xb9\xb6\x23\x72\x63\xaf\x36\x1b\xa9\xca\xc4\x95\xf8\x18\xba\xb7\x8a\xa0\x7f\x97\xcb\x30\x3e\x57\x72\x15\x79\xe0\x9a\xdb\xed\x1c\x5d\x42\x68\xed\x94\x3a\x1a\x7b\xa5\x54\x0b\xa5\x4c\xa0\xa2\x61\xc0\xe0\x65\x9b\x89\xdb\xea\x4c\x10\x1d\x85\x09\xb8\x8b\x52\x71\x81\x49\xd1\x74\x9b\x88\x0c\x14\xe4\xa6\xf9\x05\xc2\x23\x99\xa6\xa6\x54\x84\xbb\xc5\x76\xa6\xe0\xe6\xa8\xc9\x8d\x30\xf8\x31\xe6\x3f\x63\xe2\xa4\x53\x41\x56\x87\x8e\x35\x25\x11\x0d\x9b\x97\xa3\x36\x07\xbf\x40\x37\xd5\xc3\xf4\x23\x8a\xe5\x4e\x15\x7f\x71\x71\x20\xbe\xa1\x58\x99\x35\xa8\x12\x5c\x9e\x24\xf1\x4c\xd9\x38\xe4\x65\x38\x3f\x82\x02\x9c\x3a\x03\xe2\x03\x13\xbe\xc1\x44\xf4\x9b\x94\x86\x7e\x91\x3a\x57\x91\x84\xdc\x8f\x64\x8b\x28\x3f\x58\x91\x02\xda\x8f\x60\x64\xd1\xe0\x9a\x16\x55\x6e\xa8\x2a\xd4\x63\x95\x6c\x41\xd9\xc0\xd0\x5a\x0a\x4b\x5b\x39\x6e\xb6\x24\xa5\x66\x6d\x88\xae\xbb\xfb\xa3\x6a\xdc\xd7\x31\x95\xf9\x63\xc1\xbf\x33\x78\xbd\x5b\x1d\xbd\xb3\x3c\x4d\x5c\x55\xf7\x27\x48\x11\x75\x05\x82\xa3\x90\x2e\x13\x2a\xaa\x86\x13\x8d\x37\xb6\x43\x10\x09\xcd\x04\x8f\xeb\xa6\x37\x15\x21\xe3\xa4\xb1\x9b\xed\x8c\xac\x68\x3a\x48\x93\x44\x4a\x56\x45\x0b\xbf\x6c\xb1\x9a\x94\x37\x8d\xbd\x22\x73\x9a\xe6\x24\xda\x73\x99\x2a\x82\x04\x65\xe5\xf9\x44\x09\x3e\x0c\x7b\x4e\x96\x34\x1d\xb8\x51\x09\x34\x67\x6a\x77\x29\x5d\x9a\xa6\xe0\x69\xd3\xc1\xd2\xf5\xfd\x30\x3e\x6f\xe3\x6c\x7f\x47\x46\xbc\x5a\xcc\x58\x5a\x9a\x58\x9c\x4f\xce\xed\x3f\xd0\x39\xf9\x84\x05\x8b\x9b\x77\x45\x29\x0d\x26\x46\x41\x07\x1b\xb9\xf0\xc5\x20\x67\xa5\x38\x4d\x17\x8e\xbc\x07\x99\x9b\x26\x16\x39\xd5\xea\x39\x8b\xc9\x8d\x1d\x4c\xc9\x5b\xfa\x0f\xe4\xa2\x53\x3c\x39\xb5\x4f\x07\x2a\x2b\x46\x61\x2c\xe2\x21\xd6\x14\xd2\x46\xc4\x17\x2c\x6d\x8c\xce\x04\x1b\x5d\x11\xd0\x3c\x2d\x04\x32\xef\xef\x90\xc1\x24\x1b\x4c\x9e\xd3\x9f\x51\x63\x3b\xbe\x27\x1f\x30\x26\x17\xd5\xb7\x7e\x6e\x3f\x25\x1f\xa5\xe8\xe5\x2d\x18\x7e\x5d\xc0\x55\x35\x83\x8d\xae\x76\xec\x45\x7e\x26\xde\xaa\x2f\xbd\x59\xc5\xce\xe8\xad\xb4\x27\xbb\x90\xf7\xd8\x4c\x1e\x17\xb9\xeb\x2f\xd4\x31\x7b\x2b\x3f\x7b\x33\xf9\xb9\x21\x7f\x52\x56\x15\x49\xa9\x3b\x1b\x94\x7f\xda\x00\x4d\xf3\x4f\x89\x41\x5e\xd0\x3f\x9d\x64\x5a\xe1\x16\x3f\x6e\x65\xcf\x9c\x6b\xf2\xb2\x2e\x47\x15\x1c\xbe\xc0\xae\x57\xcd\x47\xc6\x8d\x61\x1b\xd7\xc6\xce\x47\x87\x4d\x7b\xf4\x85\x93\x4e\x1f\x72\x41\x4b\xaa\x23\xf7\xb1\x12\xf2\xa7\xea\xab\xf1\x23\x62\xe4\x1b\x1c\xd0\x6a\x58\x9f\x6a\xad\x9a\x89\x48\x61\xe2\x81\x25\x9e\x60\xca\xec\x4e\xd9\x1c\xa4\x1a\x79\x27\xa7\x50\x51\x04\xbd\x74\x70\x5d\x92\x79\x6a\x61\xf2\x66\x3d\xd1\x4c\x91\x89\xca\xc6\x4f\xd9\x39\x0c\xae\x37\x95\x80\x40\xa5\xe4\xf9\x8a\x5c\x93\x97\xe4\xfd\xb4\xae\x4a\xa9\xb2\x35\x4f\xa8\x95\x53\xf0\x61\xd5\xf8\xae\x78\x2f\xe9\xc4\x9b\x23\x1b\x4e\x19\xd8\xdf\x28\x61\xec\xdb\x7c\xad\x49\x5c\x1e\xd4\x74\xe2\x4c\xed\x14\x98\x34\x55\xed\x7d\xa1\xfb\xd0\x10\xd3\x07\x3b\xdc\xa9\xbb\x78\xb7\xdb\xdd\x24\xb2\xef\x10\xd2\x2f\xb4\xa9\xab\xc0\xcd\x8c\xf9\x6f\x75\xad\x55\x1e\xe0\xa4\x71\x60\x3e\x08\xee\xac\xb2\x49\x6d\x41\x88\xab\x53\x6b\x6b\xa7\x93\x11\xc5\xa1\x73\xe9\xbb\x24\xd9\x4d\x51\x5b\xf2\x8f\x20\x04\x5d\x51\x67\x4a\x3c\xba\x3b\x24\x3e\xf0\x40\x9c\xd9\x11\xc9\x58\xfe\xce\xa5\x04\x20\xc5\xb7\x73\x84\x49\x54\x44\x79\x69\x8c\x2c\x29\x1f\x12\x81\x37\xaa\x6a\x1b\xaa\x8d\x0c\xcc\xb7\xce\x81\x30\xa8\xe1\x20\x51\x5a\x2b\x12\x97\x7d\xfe\x26\xe7\x10\xee\x58\xda\x96\x36\x0f\x57\x0b\xa9\xac\x42\x8a\xca\x04\x35\x9f\x18\x87\xc0\x07\x85\x9d\x6e\xfb\x49\xe5\x10\x0c\x54\xc5\x9e\x01\xaa\x83\x74\xd4\x4c\x21\x8c\xa8\x0a\xb3\x53\x1a\x2b\x3c\x60\x28\x14\x0f\x5d\xdf\x47\xd2\x9e\x1e\x93\x92\x42\x11\x14\x89\xe4\x8c\xc1\x5e\xa4\xfc\xf9\x3a\x78\x79\x1d\x66\x1c\x8a\xdb\x90\x48\x2c\xdd\x76\x65\xa7\x31\xae\xd8\xd8\xa2\x18\xef\x84\xa6\x29\x3a\xde\x88\x01\xab\xb0\x0c\x21\x98\xbb\x40\xc1\x46\xe3\x1a\x9e\xb6\x49\x0c\xd2\xa6\x9e\x77\x2b\xa1\xc6\x06\x20\x4f\x13\xdb\x5c\x32\xfd\xc4\x99\xe2\x4d\x0b\xce\x63\x1d\xf2\x09\x79\xfb\x33\x47\x06\xe3\x9e\x6a\x06\xe0\xb2\x80\xa6\x4d\x21\x66\x4a\x38\xb9\xed\x3c\x1b\x45\x7c\x27\xc2\xcb\x08\x46\x20\xef\x6f\xa9\x2a\xca\x09\x87\x0f\xbc\xc1\x36\x2f\x04\x24\x55\xca\x49\x4a\x63\x5a\xe2\x6c\x15\x64\x8f\x64\xef\x91\x4e\x83\x16\x07\xa1\xbc\x4e\xb0\x4e\xee\xd5\x4f\x3c\x0d\xb7\xcf\xb4\x12\x62\x82\xae\xb0\xd1\x78\xdb\x7d\xa3\x76\x71\xaa\x69\x70\x2b\xa8\xee\x76\x03\xa8\x8e\x0d\xa4\xc0\x0f\x2e\xba\xa6\x18\x3f\xcf\x9b\x44\x43\x54\xe0\x08\x19\x17\x8c\xe4\x4a\x62\xdb\x2f\x50\x56\xbc\xc1\x3b\x2a\x01\x44\xa2\x59\xf0\x60\x41\x15\x8a\x37\xf0\x95\x2e\x13\xe1\x0d\x09\x92\xd4\x63\xbf\xc2\x4f\x5d\x43\x2d\xf6\xb9\x97\xbb\xd9\x46\x05\x4d\x42\x78\x45\xad\x58\xea\x54\xc4\xb8\x9f\xcb\xcb\xee\x36\x92\x44\x90\x8e\x6f\x96\x88\x13\x50\x03\x28\xae\x05\xdc\x5b\xea\xb2\x4a\x9c\x23\x99\x05\x4a\xf1\x86\x08\x30\x19\xe3\x02\x33\x46\x25\x0d\xaa\xb5\x2b\x09\xd6\xfb\x2e\x49\xb1\xfc\x55\xb5\x17\x53\xdb\xbd\x29\x5d\xc9\x37\x67\xe9\x3f\x2d\x9d\x87\x5a\x3a\xcc\xa3\xa9\xf5\x7a\xe0\x64\x21\xa8\x51\xf5\x06\x39\x9e\x68\x36\x72\x62\xe9\x68\x1e\xc4\xe0\x29\x93\x6f\x90\xac\xdc\x20\xae\xd8\x20\x2e\x59\x51\x89\xc6\xda\x42\x64\x25\x82\x5d\xa5\x49\xb9\x31\xf2\x6d\x90\xc9\x2d\xb2\xd2\xb6\xc8\x06\xaf\xd7\x11\xde\x40\xaa\x46\x6d\x7e\x63\xda\x1f\x6e\xc4\x5d\x24\xf7\x01\x0a\x69\xd3\x66\x46\xe0\xef\x0f\x69\xb2\x08\xb3\x9a\x65\x85\x3f\xd0\xf6\x10\xc2\x84\x21\xe5\x73\xd6\x84\x91\x49\xb9\x4c\x17\x24\x55\x28\xc6\x95\x44\x97\xe0\xe1\x38\x67\x71\xc5\x37\x2e\x9f\x1a\xc2\x50\x88\xa4\xa0\x13\x63\x4c\xb2\x0d\x26\x3e\xcb\x78\x9a\x54\x7c\x9b\xc5\x7d\xe9\xd1\x5d\x6b\xb3\x01\xe7\x30\x19\xa3\x38\xb7\xc7\xf2\xab\x41\xf1\x57\x5b\xb7\x8c\x38\x2b\x18\xc3\x65\x9d\xd3\x7e\xfe\xa0\xbc\xa5\x51\xda\x18\x2b\xc3\xb7\xbb\x9e\x69\xa6\x83\x24\xfe\x31\x4c\x33\x2e\xe7\xa7\x51\xa0\x6e\x07\x7f\xb3\x41\xb7\x75\xa2\xc8\x76\x3e\x92\x37\x44\xe9\x54\xaa\x22\xdc\x16\xad\x4a\xc5\x60\xe7\x4e\xfd\x6f\x89\x8c\xd2\x86\x56\x33\x2c\xf7\x5f\xbc\x5e\xc7\x20\xd0\x2b\xb4\x9c\x4d\xa3\x93\xb4\xaa\xf5\x6c\x9a\x9e\x68\x24\xd7\x9f\x48\x53\x06\x17\x07\xbe\xa1\x48\x20\xa5\x7a\xb6\xae\x6a\xae\x0d\xd6\x0e\x37\x3b\x2a\x44\x47\x8d\x73\xa8\x68\xca\x05\xc7\x9b\x0b\xf4\xe5\x83\xe6\x69\xaf\x55\x20\xaf\x9a\xcc\xd2\x8a\xdc\x2a\xdd\xb0\xbd\xb5\x3b\xb2\x4d\x25\x93\x4f\xa5\xed\x12\x7d\xe2\xec\x48\x6c\xe5\x22\xe0\x48\x0d\xbc\xd2\x99\x94\x6f\x01\x05\x5b\x5e\x02\x9e\x7f\xe7\x3b\xc8\x36\x2d\xea\xa0\x72\xcc\xbb\xc3\xd6\x41\xeb\xfa\x94\x2d\x13\xdc\xa8\x44\x6e\x0d\x81\x62\xfb\xf2\x57\xbf\xd8\x1a\x46\xa7\xd1\xc0\xe7\xfc\x40\xc8\x97\x68\x3b\x09\xd2\x9a\x4d\x53\x7f\x54\x8d\x26\xa6\xdf\x73\x3a\xd4\xfd\x1d\xd2\x54\xb1\xa2\x55\x26\xc4\xb1\x88\x35\xb5\x43\xe2\xd2\xb7\x77\x90\x74\x4e\x3a\xa5\xad\xfe\xac\x79\x2c\x44\xe7\x3d\xb9\xd2\xcc\x4f\x81\xfd\xec\x0f\xed\x21\x49\xda\xbc\x8e\xd3\x49\xda\x5c\x5a\x4e\xb4\xa3\xc6\x36\x18\xdb\x29\x71\x69\xe2\x58\x53\x92\xd1\xc4\x19\x96\x41\x32\xa8\xbb\x5e\x5b\x24\xa3\x28\x5b\xaf\x2d\xfc\x30\x24\xce\x7b\x72\x5d\xef\x5d\x99\xe4\xb8\x1b\xfb\xf6\xda\x76\xc9\x8d\x9d\x6d\x36\x28\x25\xea\x40\x0a\x36\x48\x51\x6c\x24\xa3\xae\xa3\x2d\x98\x8c\x0f\x72\x4d\x56\x34\x1b\xdc\xdc\xfb\x78\x6e\x79\x3e\xb8\xee\xd1\x88\x6c\xaf\x72\xd3\xa3\x2b\x5c\xaf\xe3\xc4\x53\xea\x6e\x36\xf9\x9e\x09\xa2\x70\xd9\xbd\x63\xbe\x7b\x5b\xc0\xad\xd2\xec\x71\x70\x96\x5d\x84\xcb\xd2\xac\x51\x6c\x1e\xd1\xc3\xd3\xeb\xb0\xca\xc3\xae\xd7\x21\x68\x47\xdc\x88\xc3\x33\xfd\xe2\x5f\xaf\x5d\x30\xb3\x0a\xdc\x28\x9a\xb9\xde\xc5\x87\x7c\x72\xa5\x58\x2d\x17\x70\x79\xba\x40\xce\xaf\xcb\xdb\xe6\x35\x51\x59\x20\x00\x46\xe1\xf2\xb3\x9b\x86\xae\x7c\x97\x65\xd9\x67\xb0\x5e\x07\x64\x01\x4d\xa2\xe4\x8a\xf9\x4f\x57\x3c\xd1\xba\xbd\xa4\xbc\x85\xf6\x3a\xa7\x7f\xa2\x4b\x88\x70\xb5\x5e\xa3\xf3\x5d\x4a\x2f\x4d\x73\x59\x91\x62\x0b\x92\x16\x0c\x73\x28\x85\xbd\xae\x2e\x60\x67\xaa\x24\x02\xbf\x95\x8c\x91\xf3\x13\xc4\xa2\x24\x3f\x21\x8e\xa7\x1b\x74\x89\x6d\xe7\x37\x74\x89\xa7\x98\xdc\x50\xe7\xb2\xa0\xef\x67\xad\x1a\xd7\x16\xfe\x49\xeb\x37\xd5\x35\x39\x77\x88\x43\xe3\x8a\x38\x34\xd4\xa7\x38\xa9\x4f\xb1\xab\x2d\x46\xd6\x9c\xde\xa8\x73\x3a\x57\xe5\xc4\x47\x93\xb7\x76\x44\x3c\xfa\x02\xc5\x98\xf8\xd4\x9b\x64\x20\x1d\xdc\xc2\x91\xbc\x40\x0c\x53\x4a\x3d\x71\xc6\x3f\x91\x39\xf5\xb7\x55\x5e\xd5\x82\x5e\x62\xbc\x03\x42\x55\x45\xb3\x9a\x26\x9a\x53\x5f\xbe\x7d\x40\xe7\xf7\x11\x32\x33\xc4\x74\x54\x93\x92\x7c\x7e\xec\x90\xe8\xb3\x63\x27\x44\xcd\x8d\xed\x6e\xb0\x23\x56\x61\x9a\x0b\xa8\xdb\xd8\xbc\xa0\x25\xbf\x9f\x16\x25\xd5\x61\xd3\x7e\xe0\x70\xc9\xee\xf1\x8e\x11\x78\xd5\x11\xf8\xc5\x08\x56\xa4\xba\x36\xf6\x92\xb4\xae\x8c\xbd\xd8\x60\x3b\xcd\x6d\xa9\xcf\x68\xd3\x0a\xee\x29\xad\x11\x25\x1f\x0a\x41\xc7\x73\xba\x6b\x91\x0b\x7a\x23\x70\xee\x47\x6a\x9d\x7c\x7c\x7c\x93\xb3\x06\x1f\x7b\x3d\x89\x54\xde\xd1\x1b\xe7\xe3\x94\xbc\xa6\x7f\xa2\x77\x98\xbc\xa1\x4a\xd3\x4d\x29\x7d\x21\x0a\x7e\xac\x49\x22\x5f\x8b\x45\x23\xdf\xe8\x8f\x13\x65\x75\x68\xe7\x66\x88\xe4\x57\xb1\x14\x95\x89\x78\xb7\x65\x22\x34\x4c\x60\xcf\xcb\x69\xd9\x60\xf2\x8c\xfe\x38\x79\x33\xb9\xb6\xdf\xdb\x6f\x26\x2f\xed\xab\x9d\x33\xe7\xdb\xf4\xc9\x53\xe7\xdb\xd4\x34\xd1\x33\xfa\x1b\x7a\xa6\xcc\xe5\x5f\xc1\x77\xf2\x99\x3a\x10\x9e\x28\x31\xcd\xcf\x92\xcf\xfc\xd5\x79\x3d\x7d\x4c\x2d\x4c\x32\xad\xe8\x99\x28\x22\xbf\x3a\xaf\xe4\xa3\xcf\x03\x76\xc9\xd2\x9b\x76\xfa\x5a\x90\x11\xb7\x17\xf4\x9d\x98\xc0\xa1\x34\x93\xdc\x7c\x00\x39\xd0\x3b\xf2\x19\x6f\x04\x7b\x59\x84\x18\xf8\xda\x22\x68\xba\x81\xbc\x4f\x55\x41\xa5\x3c\xce\x1f\x40\x3c\x23\xa3\x3a\x97\xce\x18\x45\xa8\x6d\x86\xef\x18\x96\x38\x2e\x10\x47\x5b\x95\x5d\x50\x4e\x0c\x18\xa0\xb1\x21\x3f\xd0\xe5\x64\xcf\x1e\x9e\xfc\xf0\xc4\x32\x4d\x55\xba\x4b\xe9\x57\xf4\x03\x3e\xf9\xa1\xdf\xc7\x27\xda\xad\xb8\x4b\xe9\x45\xf3\xa2\x2b\xee\x0b\xb1\x71\xb4\xda\xf4\x02\x2e\x5a\xe0\xd0\x2c\xdd\x9c\x23\x97\x52\xd9\x4e\x4e\x02\x4d\x15\x75\x04\x60\xec\xdd\x61\x79\xdf\x2d\x53\xb0\x50\x7f\xaf\x5c\x1a\xff\x89\x57\x1f\xf9\xee\x4b\x6d\x97\x52\xd7\x34\xe5\xa5\x56\xa0\xd3\x86\x86\xc8\xab\xdd\x58\xbe\x86\x5e\xc5\x6d\xc6\x19\x9f\xb3\xb4\xa2\x1b\x5a\xaf\xa5\x4e\x48\x3e\x52\x8e\xc0\x97\x75\x4b\xc7\x73\x75\x54\x8a\xe3\x11\x55\x8f\xc7\xaa\x38\x10\xd5\x83\xe2\x6d\xc4\xe5\x56\xe3\x5b\x6e\xe8\x8b\x6a\xc1\x27\xba\x7b\x43\x4e\xe9\x3b\x34\xc3\xe4\x2d\x35\xae\xc5\x61\x3e\xcd\xb5\x07\x80\x2f\xb6\x71\x0b\x1f\x5a\x70\xcc\xf3\x3a\x8e\xb9\x68\x23\x03\x2f\x27\x97\x2d\x64\xa0\x22\xd0\x6e\x3b\x4c\x70\xb1\x7d\x49\x3e\x6a\xde\xa4\x61\x80\x9e\xc2\x35\x9d\xac\xd7\x99\x5c\xfc\xd7\xca\xe4\xf9\x74\x72\x65\xbf\x17\x28\x4a\xfd\x7a\x69\x5f\x93\x5f\x8b\x5f\x75\x73\x68\xf2\x8c\x3e\x75\x4e\xa7\xe4\x15\x7c\xf4\xce\x9d\xd7\x53\xf2\x19\xbe\xf7\xcf\x9d\x37\x53\xf2\x95\x06\x93\xfe\x73\xe7\xd7\xe9\xa3\x91\x6d\x91\xdf\x34\xc4\x77\x33\xf9\xe0\xfc\x3a\xb5\xc5\x33\xf2\x43\xa5\x1c\xea\xdb\x7d\xf1\x98\xfc\x44\xeb\x56\x62\xe4\x0b\x0d\x4c\xf3\xa7\xc9\x02\xfd\x84\x6d\xa5\x8b\xb7\x72\x5d\xbc\xb5\x21\x3f\xd7\x67\xde\x31\xa0\xdd\xff\x59\xb2\x34\x03\x23\x7f\x6e\x4c\x27\xf7\xa8\x93\x6f\x42\xfb\x2e\xf5\xed\x2f\xf4\x67\xf1\xda\xff\xa0\x3f\x8b\x37\xfe\x9d\x72\x81\x64\x60\xf4\x5f\x9c\x5f\xa7\x98\xfc\x41\x3f\xc1\xbb\x3e\x1a\xf5\xbf\xf6\x7f\xef\xff\xd2\xbf\xb0\x7f\x93\x9f\x24\x65\xf4\xd3\xa4\x2f\x1f\xf6\xbe\xf6\x7e\xef\xfd\xa3\x77\x61\xff\x20\x3f\x49\xcc\x1a\x2f\x6f\x9a\x67\x0d\xb3\x39\x4c\x42\x46\x63\x36\xc9\x97\x28\xd6\x8c\x52\xd6\x6b\xcb\x8e\x75\x53\x14\x51\x60\x91\x84\x35\xb6\xa7\x44\x2c\xf5\x79\x51\xc5\x15\x4a\xdf\x39\x9d\xda\x16\x71\x99\x5c\xf1\x3f\xfa\x09\xeb\x87\x8c\x64\xea\x77\xca\xfa\x09\x50\xc9\x89\xdc\x56\x11\x13\xf3\x11\x4c\xbe\xa1\x57\xc4\x65\xd8\x7e\x45\x9e\x91\x60\xf2\x23\xfa\x4c\x32\x86\xed\xcf\x78\x47\xb4\xa2\x11\x23\x1f\xe5\x67\xff\xd9\x06\xe2\xec\x40\xe3\x15\x2b\x0e\x96\xd8\x94\x5e\xf9\x53\xec\x4a\x5f\x74\xf9\x76\x4a\xe6\x8c\xfa\xac\x77\xee\xac\xd8\x94\x04\xe2\x7b\xff\xdc\xf1\xd8\x94\x2c\x8b\xae\xe7\x0c\xfa\x9e\x33\xe2\x33\xe8\x3d\x60\xd0\x7d\xc0\x44\xff\x6f\xa7\x74\x29\xfa\x87\xcf\xbe\xcf\x36\x9b\x16\x96\xe2\xe3\x76\x7c\x5c\xe0\x5f\x57\xba\xaa\x7d\x0f\xd6\x05\x6c\x2b\xf1\xae\x86\x6b\x75\xff\x9f\xb4\x7e\x06\x04\xb6\xdd\x86\x5e\x32\x41\xfe\xea\xd8\x2a\xa2\xef\x50\x06\xd2\xac\x0a\xd7\x97\x49\x95\x67\xdd\xc7\x41\x5e\xf4\x6e\xee\x0b\xd1\x4a\x9a\x35\x95\xea\xed\xd9\xee\xd9\x84\xfd\x15\x7c\x05\x8e\xd0\x7f\x20\x46\x3e\x09\xca\x2f\x2c\x6e\x84\x54\x90\xcb\x0b\x94\x60\x32\x57\x48\x29\x82\xbd\x11\x14\xbf\xc4\xd6\x10\x97\x43\x0d\xbd\x3a\xab\x69\xaf\x59\x18\x4d\xfb\xae\xf8\x93\x56\x30\xaf\xb3\x9a\x92\x4b\x5a\x79\xa0\x37\x21\xe7\xf4\x4c\x8c\x60\x46\xcf\x27\x79\xaf\xe7\x15\xb3\x24\x71\xcc\xce\x75\xdb\x21\x79\xee\x6e\xe8\xf2\xd1\xa8\x7f\xf9\x68\x44\x4e\xa9\xe7\xcc\xa7\xe4\x2d\x9d\xf5\x7d\x67\x35\xed\x7b\x4e\x30\x25\x4f\xe9\xec\xd1\x08\x7e\x3f\x1a\xf5\x6e\xc4\x1d\xc1\xd0\x29\x79\x4a\xde\x62\xf2\x9c\x46\x3b\x69\x73\x57\xe6\xe6\xdb\xcf\xa7\xf4\x03\xe1\x03\x0f\x22\xe1\xca\x4d\x40\x3f\xf4\x9f\xca\x14\xe1\xf7\xf2\x3c\xcb\xd9\xbc\xdc\x67\xa8\xa2\xb2\x30\x1c\x5d\x64\x03\x5b\x70\x6a\xd8\xa9\xe2\xf3\x63\xd3\x44\x79\xcc\x95\xc2\xc0\x22\x5e\xaf\x91\x6e\x84\x9b\xdb\x0b\x57\x43\x36\xc5\x18\x83\xe5\x51\x53\x1c\x08\xa6\xb2\x75\x54\x47\x63\xbc\xd9\x26\xe5\x69\x39\xa0\x75\x7a\xa8\x3c\xa9\xf3\xd0\x67\x77\xcb\x92\xb6\x81\xba\x9f\xcf\x0d\x18\x4c\xd6\xef\xfa\xb0\x7e\xd7\x27\x4d\x82\xa1\xda\x1d\x71\x15\x39\x53\xb5\x99\xb1\x35\x73\x15\x10\xcb\xc8\x4a\x3a\x3d\xb3\x6b\x6d\x04\x02\x48\x65\x08\x68\x41\x80\x31\x94\x41\x9a\x4a\xc8\x00\x29\x83\xf9\xc7\x0c\xad\x70\x9b\x7b\x50\xa9\xd3\x79\xae\xcc\x7d\x0a\x41\xa0\x92\xd9\xbe\xcc\x3c\x77\xc9\xf2\xd2\x15\x09\xb3\x8f\x79\x93\x57\x10\x34\xc3\xf6\xc8\xdc\xcd\x3e\x68\x95\x7d\xdb\x6f\x15\x0e\xfe\x15\x09\x62\x31\xbe\xbe\x0c\xd1\x61\xd8\x1e\xa9\x54\x60\xb2\x4b\xc3\xf6\x37\x78\xb3\x99\x6e\xb0\xb8\xff\xfe\xef\xe3\xec\xf2\xfc\x81\xb4\x01\x33\x86\x63\xe3\x81\xb2\xfb\x32\xc6\xc6\x03\xc8\xb6\xdc\x96\x6e\xba\x48\x24\xfd\xe4\xf1\xd2\xe5\xf3\x07\x3e\x35\xde\x5a\x0f\xc6\xd9\x70\x70\x78\x3c\xee\x0f\xac\xe1\xde\x83\xfd\xc1\xf8\xb0\xbf\x37\x18\x0f\x0f\x9e\x1f\x0c\x8e\x0e\x86\x83\xe3\x07\xe3\xc1\xf1\xde\xc0\xb2\xc6\x0f\x8e\x1e\x58\xde\x70\x60\x1d\xf6\xe1\xd7\x68\x30\xdc\x3f\x1a\x1c\x1d\x1d\x3e\xd8\x1b\xec\xed\xef\x3d\x18\x0d\xf6\x8e\x0e\x9e\x0f\xf7\x07\xa3\xbd\xbd\x07\xe3\x81\x65\x1d\x3c\x18\x8e\x1f\x8c\xe1\xcf\x2b\xeb\x9b\xf1\xe4\xb1\xe8\xfa\xc9\xff\x15\x57\xaf\xe6\x9b\x4a\x3c\x77\xc9\x57\x29\xb8\xa9\x96\xfa\x8d\xac\xb0\x3a\x11\xa4\x1e\xc4\x4f\x0a\xb3\xdc\xa7\x36\x17\x43\x32\x87\x4f\xab\x99\x0d\xe2\x49\xb5\x6e\x8a\x27\xa9\xc3\xa7\x76\x6a\xc7\x2d\xa1\x7a\x22\xa6\x6b\x95\x6f\x37\x45\x3c\x20\x95\xbc\xb3\x60\xf8\x01\x8b\x94\xb1\x01\x54\x2c\x21\x03\x9b\x66\x59\xca\x7b\xc6\xd4\xc0\x4f\xfa\xc3\x7a\x16\xa0\xc2\x4c\xb9\xf5\x6e\x51\x81\x10\x95\x8e\x88\x57\x92\x39\x79\xd5\x94\x2b\xd2\xe9\x42\x53\x7a\xc6\xf8\xd6\x8b\x98\x9b\x9e\x86\x0b\x96\xac\x38\x4a\x31\x49\x69\xc6\x78\xfe\x5b\x57\x43\x81\xa9\x36\x26\xb9\x2d\x44\xda\x4c\x08\x23\x67\xa1\xa9\x51\xd4\x6c\x1d\x5b\xf5\x4d\x2a\x54\x5a\x2a\x95\xda\x24\xad\xa6\x8c\x29\xcc\x73\x0a\x51\x58\x25\xd0\x8d\xea\xbb\x3f\x84\xdc\x43\xc5\x5c\x42\x80\x5d\xe0\xc9\xf5\x50\x40\x4b\x76\x1f\x97\xd5\x45\xb5\x57\xe0\x9a\xf3\x05\xd5\xc2\x97\x68\xc1\xee\xea\xe9\x79\x54\x3a\x6f\xc3\x0f\x2f\xf5\x3c\x7d\xe7\x3a\x60\x43\xd5\x32\x88\xf1\x63\xea\x9e\xab\x18\x23\x9d\xa6\x47\x6a\xab\x55\x8c\xfa\x67\xfa\xeb\x40\x05\xe3\x6d\xb2\xca\x98\xca\x0b\xa4\x45\xe9\x60\xba\x3f\xf8\x2e\x5b\xaf\x77\xd9\xe0\x8c\x87\xcb\xe5\xcd\x7a\x9d\x7f\x2b\x91\xf3\x2e\xa5\xfa\x9b\x9e\xa9\x39\xee\x30\x48\x01\x6b\x27\x95\x36\x12\x7c\xa4\x40\x93\xf2\x62\x25\x95\x55\x94\xf7\x8c\x45\x66\x54\x07\x7e\x75\x27\xc4\x7a\x2a\x1c\x40\x67\x70\xad\x18\xf5\x59\x80\xa0\x6a\x05\x21\x09\x5b\xa6\x8c\x8d\xad\xc2\xad\xa4\x32\x30\x28\x98\x76\xa7\x5b\x4d\xbb\xf1\xa4\xf6\xdc\xce\x17\xb7\xec\xf1\xba\x96\xd9\x89\xf7\x8c\x8a\x0b\xb5\x71\xa2\xa2\x6d\xc0\x4c\x80\x77\x87\x71\xc5\x66\x17\x21\x3f\x2d\x4a\x5f\xc6\xbe\x31\x6d\x79\x7d\x31\x2b\x4e\x3c\x05\x01\x64\x6e\x67\xf6\x9e\xd1\xdb\x30\x3b\x4d\x56\xde\xdc\xde\x1d\x42\xd0\x37\x2d\xea\xe2\xa9\xd8\x88\xef\xd9\x40\xd5\x58\xaf\x51\xf9\x83\xee\x5a\x44\xf9\x5a\x2e\x59\x1a\x24\xe9\xc2\x8d\x3d\x66\x9a\xc5\x86\x6d\xba\x9f\x2f\xc4\x0e\x5a\x24\x97\xcc\x20\x6f\x99\x3e\xcf\x6f\xcb\x04\x74\x1a\xac\x41\x9c\x5c\x21\xbc\xc3\xfa\x9f\xd8\xe3\x91\x65\x9a\x95\xce\x87\xa4\xe8\xa8\xd5\xd3\xbc\xd6\x97\x78\x31\x0d\x7b\x3d\x2d\x3b\x2c\xc7\x0b\x31\x4b\xd4\xd1\x11\x64\x3a\x6c\xed\x92\xf2\x90\x5b\x79\x87\x0d\x66\xd1\x2a\x35\xcd\x5d\x2e\x69\x91\x41\x98\x7d\x0e\xb3\x70\x16\xc1\xd6\x12\xcf\x90\xca\x37\xfb\x81\xd1\xb6\x08\x64\x72\xd2\x4c\xb3\xed\x59\x3e\x98\x49\x8b\x1b\x86\x6d\x18\xe4\x39\xa3\x8f\xde\x7e\x7a\xfd\xf2\xc1\xfa\x34\x0d\x7d\x16\xf3\xff\xf7\x48\x45\xcd\xfa\xc0\x30\xb9\x60\x75\x14\x29\x83\xf4\x9e\x26\x2d\x81\x21\x7d\x3d\xb4\xd0\x86\xb8\x69\xe8\xda\xb7\x9e\x8c\x7f\x9c\xbb\x01\xb3\xeb\xa5\x1b\xfb\xcc\xcf\x5d\x81\x89\xcf\x22\xf7\xc6\xb6\x88\xaf\x8e\xa0\xed\xec\x59\x16\x19\x1d\x58\x53\x72\xce\xf8\x47\x8d\x9a\x51\x31\x1f\xa4\xeb\xbb\x20\x07\xdf\xc7\xcf\xa3\xd0\xbb\x10\xb7\x6a\x78\x1e\x27\x69\xe9\x66\x95\xd9\xbb\x43\x12\x0a\xea\x5a\x2e\x41\xed\xe7\x33\x99\x8c\x60\xa4\x97\xbd\x60\xb3\x64\x15\x7b\xcc\xb6\x88\x58\xe3\x72\xef\x8b\x49\x92\x7c\xa3\xed\x58\x64\x68\x4d\x49\x12\x3f\x0d\x38\x4b\x9b\x46\x39\x1b\x92\xc4\x32\x14\x70\xfb\xb3\xe7\x80\x70\xeb\xa5\x2f\x9a\x76\x11\xa2\x58\x11\x63\xcd\xd2\x06\x80\xb7\xc9\x2a\xe6\xf5\xc2\x4f\xf3\xe4\xaa\xad\xac\x01\xf1\x34\x0d\xcf\xcf\xab\xe1\x9f\x45\xf1\xaf\x31\x6f\x7f\x00\x73\xfe\x7e\xc5\xb3\xc6\x48\x34\xc3\x4d\xf0\x4c\x5b\x46\xab\xf3\x30\xce\x4a\xeb\xc4\xdc\x64\xf2\x56\xb0\x05\xb1\x58\x02\x19\xc6\x60\x9e\x5c\xbd\xcf\x27\x67\x77\x48\xb8\xc4\x1d\x16\xc9\x47\x20\x8f\x1e\x70\x4b\x0f\x82\xc4\x5b\x65\x46\xfe\x48\x46\xa1\x94\xf1\x99\xc8\xad\x16\x8f\x47\xc0\xd1\xc3\xe2\xc8\x1d\x50\x8b\x67\x23\x0a\x65\x14\x1a\xc0\x54\xb7\x02\x84\x68\xf2\xea\xf4\xed\x1b\xf1\x4c\xc2\x83\x3d\x10\xb8\x82\xfd\x90\xfe\x98\x82\x8a\xcb\x77\xb5\x41\xc2\x98\xa5\x3c\x74\x45\xfd\x85\x7b\x2d\x5d\x4f\xf6\x0e\x2c\x92\x26\x11\x13\x13\x91\x44\x3c\x5c\x1a\x84\xcf\x99\x60\x63\x0c\xf2\xed\xb5\xb8\xf6\xed\xe3\xe3\xe3\xe3\x0d\x26\x1f\x59\xc5\xa9\xf1\x82\x61\x2d\x64\x45\x79\x57\x50\xc4\x06\x6a\x3a\xa5\xf1\xe3\x36\x9f\x8d\xb4\x14\x00\xe7\x41\x1c\xdd\x68\xc5\x74\x77\x2e\x2e\xd8\xd1\x42\xec\x2b\x70\xf8\x44\xfc\xb1\x43\xdc\xa1\xfd\xa9\x78\xb4\x6d\x88\x4e\xa7\xbc\xd8\x4e\x51\x71\x52\xe0\x80\x15\x43\x7c\xa0\x7e\x10\x87\x4d\xb1\x60\x18\xea\x47\x77\x72\xbb\x69\x0d\x6c\x8b\xf8\x44\x9f\xa9\x3f\x5b\xe4\x14\x17\xa0\xf4\x92\x9b\x8e\x6f\x30\xc6\xf6\x47\xb6\x7d\xaa\x1a\x39\x8b\xe1\xea\x06\xb4\xdc\x37\x7a\x29\x56\x51\x17\x21\xaf\x28\x28\x93\xe3\x22\x59\x24\x58\x02\xaa\x97\x31\x04\xc5\x2c\xe3\xdd\xc4\x3b\x60\xbc\xc5\xd3\x9b\x5b\xf8\xfd\x8f\x4f\xef\xdf\x0d\x96\x6e\x9a\x01\x49\xea\xb9\xdc\x83\xe0\x88\xb2\x6e\x19\x43\x42\xba\x84\x88\xf7\xcd\xd7\x19\x6b\x89\x10\x04\x2a\x6d\xce\xec\x05\x83\x07\x04\x8c\x35\xc5\x37\xac\x3e\xe9\x6d\x0d\xcd\x02\x41\x2f\x9e\x0c\xf2\x07\x90\x68\xb5\xc4\x8f\xb5\xa7\xa4\x8a\xb5\xcb\xe6\xaa\xbc\xda\x7a\x22\x8e\x9f\x6d\xf8\x2c\xf3\xd2\x70\xc6\xfc\xd9\x8d\x61\x57\xeb\x6f\x74\x3a\xf9\x5d\x41\x4f\x95\x69\x7a\x35\x7a\xe5\xb5\xb6\xeb\x2f\xcb\x74\x10\xe0\x84\xcd\x26\x5c\xa6\xa8\x7e\xe7\x2e\x18\x35\xe4\x3a\x49\x19\x9e\x8d\x5a\x1e\x65\x97\xe7\xea\x31\x01\x72\x76\xc2\x2b\x41\xe6\x19\xb6\xdf\x09\xfe\x5b\xdc\xe6\xda\x08\xde\xa8\x01\x9e\x6b\xdb\x15\x4f\x10\x8c\xdb\x30\x30\xa9\xe5\x05\x2e\xaa\xe8\x01\x1e\x8a\xfb\xb7\x78\x0c\x02\x92\x02\xbd\x4c\xe4\x2c\x14\x6d\x6d\x56\xc9\xb1\x5c\x3e\xd0\xb2\x92\x33\x5d\x6a\x01\x29\x83\x15\x69\x01\x03\x21\x29\x5d\xc0\x80\x55\xc2\xb4\x22\x16\xeb\x2c\xb9\xb6\x79\xb1\xa2\x69\x5d\x0f\xd7\x9a\xfe\xbb\xf4\xa8\x55\x33\x99\x6f\x74\x30\x86\x93\x68\xf0\x2f\x42\x92\xeb\x81\x05\x29\xdf\x5d\xa9\x5c\x38\xe8\x70\xe6\x7a\x17\x7e\x9a\x2c\xff\x6a\x9f\x79\x7b\x49\xd9\x6b\x89\xdb\x6b\x7b\x8d\xa4\x6a\xcb\x35\xb7\xd2\x2c\xb9\x36\x48\xba\x85\xd0\x37\x94\x3c\x03\x37\x6a\x71\x77\x06\xac\x9e\x41\x8c\xfe\xd0\xc8\x03\x3a\x42\x47\xc5\x48\x42\x94\x92\x38\x37\x44\xfd\x91\x21\x0e\x1e\x7a\x83\x59\x72\x0d\x96\xa7\x39\xd2\xcc\x68\x28\x65\x6b\x3b\xf1\x00\x6e\x94\x49\xd2\x36\x24\x78\x64\x10\x55\x07\xdb\x49\xc3\x0f\x5d\xaf\x87\x49\x23\x06\x73\x3c\x28\xee\xbe\xf6\x1e\x8a\xc7\xa2\x97\xe2\x47\x77\x4f\x65\x7d\x4c\xe2\x81\xba\x33\xdb\x41\xab\x87\x86\x38\x6b\x9d\xf0\xf2\x4a\x98\x24\x8a\x9b\xcb\x2f\x5f\x9a\x0b\xba\xb5\x97\xc9\x9f\x4d\xca\xaf\x32\x56\x46\xf9\x9b\xc4\x03\x71\x63\x37\x86\x24\x0a\x0d\xf5\xb0\x75\x38\x50\x41\x2c\xba\x5a\xa3\x22\x9c\x21\x9c\xf9\xb4\x3c\xf2\xf0\xa0\xf8\xb5\x5e\xbf\x61\xc8\x25\x10\x37\x7e\x29\x73\x44\x88\x75\x9d\x64\x13\x15\x51\x01\x22\x14\xe6\x56\x85\x49\x25\xa7\x77\x26\xde\x5a\xc7\x41\xaf\x19\x52\x75\xc5\xa5\xd7\xfd\xcc\xce\x4c\xb3\x0e\xaa\x08\x73\xd8\xdc\xf3\xf9\xa1\x27\xf1\xbd\xf6\xfd\x1b\x86\xe2\xf2\x85\xaa\xa8\x36\x85\xbb\x49\x2b\x88\x31\x09\x91\xaa\x5c\x36\xca\x43\x66\x70\x41\x81\x4a\x1a\x3a\xdc\x6c\xbe\xb1\xc1\x0f\x3f\xc0\x90\xe8\xae\x05\xc7\xe7\x57\x46\x87\xe4\x19\xa3\xce\x94\xbc\x12\x7f\xcb\x83\xf4\x59\xa7\x46\x08\x24\xa3\x20\x2e\xc9\x48\x44\x56\xc4\x23\x3e\x05\x6a\xa5\x95\x72\xd8\x90\x3f\x19\x42\x29\xe5\x95\xd0\x0e\xe9\x1d\xc1\x23\x0a\x22\x2a\x75\xf8\xd4\x34\x11\x04\x93\x10\xdf\x0b\xe3\x3b\xb0\xbf\x04\xfe\x32\x10\x7f\x96\xe2\xcf\x42\xfc\xb9\x14\xc3\x3f\xa7\x1e\x43\x5f\x88\x3f\x68\xe1\x45\x30\x99\xd1\x5f\x59\xaf\x47\x6e\x28\xf2\xa8\x5f\x50\x06\x2d\xb6\x44\xda\x88\x3c\xcd\x9a\x88\x52\x0a\xe1\x19\xcf\xe8\x6d\xe8\xdb\x33\xd2\xe2\xfb\x04\x78\x4f\x7e\x7f\x9d\xdb\xa1\x03\x59\x0e\x4b\x62\xfb\x44\x9a\xad\xdf\x86\xd9\xcb\x52\xf8\x5e\x70\xa8\x40\x57\x67\x8a\x85\x11\xcf\xc4\x4f\x60\x48\xf2\x1f\x92\xe9\x10\xf4\x75\x4e\x9a\xdd\x10\x90\xe3\xbd\x10\x9c\x9f\x12\xde\x55\x12\x7c\x55\xa4\x7c\x31\x26\x95\xdf\x21\x26\x32\x49\xf4\xd3\x1c\xa3\xfc\x98\xba\x0b\x86\x12\xc8\x42\xc7\x3f\xc0\xa0\x75\x01\x85\xa0\xda\xce\x0a\xc6\xba\x18\x29\xbe\x7d\x81\x8c\x2a\xbb\x66\x10\xe7\x8c\x88\x85\xfb\x01\xe5\xa6\x66\x67\x6a\x83\xc6\x1d\xfb\x26\x7f\x2e\xe9\xdc\x26\x17\x0a\xb6\x5c\xaa\x12\x8d\xc9\x6f\xe2\x8a\x69\x5b\x69\x38\xec\x2d\xe5\xa6\x89\xde\x20\x9c\x6f\x92\xd6\x2a\x10\x50\xb3\xc2\x0e\x99\xe6\x6e\x5c\x2d\x99\xcc\x19\xaa\x55\xea\x70\xc2\x64\x4d\x04\x27\x08\xb9\x7e\x4e\x19\xc2\x0d\x6a\xc7\xf5\x0e\xef\x6e\x46\x5e\x23\x4c\xfe\x44\x98\x5c\x9b\xe6\x35\x5c\x76\x62\xf2\x2a\xdb\xce\x34\xd1\xef\x08\x13\xc6\x50\xc7\xe0\x52\xf6\x75\xc5\x32\x5e\x5b\xf9\x42\x24\x58\x85\xa6\x7b\x3d\x48\x27\x04\x58\x70\x8d\x75\xcf\xd7\x7b\x03\x3b\x47\x91\x5e\x15\x15\xd1\xd9\x20\xdf\x52\xa8\x60\x62\xd8\x46\xec\xb4\x1a\x77\x2d\x05\x3f\x67\x75\xf9\x0d\xe1\xb4\x65\xeb\x91\x94\x6a\x3b\x52\x9d\x2a\x12\xd3\x52\x18\x65\x9a\xbb\x6a\xd3\xc8\xdc\x0a\x24\xa4\x19\x43\x79\x51\x2e\x2a\x21\x96\x60\x01\xf2\x5f\x92\x3f\x41\x6c\xbd\xe6\xeb\x75\xba\x5e\xc7\xeb\xf5\x07\x84\x07\x73\x37\xd3\x11\x77\x98\x41\x6f\x82\xfe\x42\x30\x1f\xe2\x78\x8a\x89\x98\x92\xdd\x21\x26\x10\x17\x29\xef\x47\x3e\x44\x67\x02\x81\x89\x63\xd4\x78\x3d\xba\x6b\x91\xa7\x08\x9b\x26\x7a\xa9\x2e\xe1\x4b\xf1\x20\x8c\x42\x7e\x43\x8d\x4b\x59\xc9\x90\xcb\xfe\x0c\x89\x05\xcf\x01\x28\x0c\xb1\x5e\x17\x2d\x4b\x11\x24\x95\x11\x7a\xb1\x00\x9d\xbb\x55\x5d\x20\xbc\x73\xc6\x90\x93\x00\x45\x94\xe4\xf7\xeb\x94\x58\x78\x13\xd1\xfa\x42\xec\xb4\x0d\xd6\x34\x77\x17\xf0\x1a\x0b\x31\xec\x97\x95\x40\xe3\xa4\x65\x14\xf9\x2c\x54\xa5\x41\xf2\x7d\xf3\x67\x25\xe1\xa3\x88\xc8\x0b\x24\xc3\xd7\x8b\x51\xc6\x25\x15\x0f\x63\x4f\x49\x3c\x25\x21\x26\x57\xf9\xf7\x72\x86\x36\xef\x90\x3c\x20\x01\x43\xaf\x18\x39\xcb\x73\x98\x22\xb1\xa7\xaa\xdb\x1a\x08\xe7\xaa\x43\x4f\x63\x5a\xc5\x0b\xc2\xe2\xc2\x6f\x58\x5d\x4c\x1a\x63\x36\x4d\x78\x17\x7d\xbf\x7f\x46\xac\x12\x8e\xb7\x84\x0c\x58\xbc\x80\x0b\xbf\x24\x5c\x30\xf5\x0c\x2b\x49\x35\xd4\x2a\xc0\xe6\x57\x7d\x2a\xa1\x21\x49\xe9\x07\x84\x4f\xe4\x6b\xc1\x13\x0d\xa1\x99\xa6\xa0\x9d\x2e\x58\x51\x1b\x22\x44\xa7\x8a\xbd\xe6\x13\x3d\x36\x33\x88\x12\x20\x90\x05\x2e\x89\xfd\x97\x30\x37\x3a\x91\xf1\x12\x93\xdf\x11\xde\x20\x31\xbc\x79\x4d\x5e\x25\x8f\xec\xee\xdf\x3c\xb3\x6d\xc7\x72\xd8\x7d\x2c\xc5\x59\x81\x19\x7c\x05\xea\xec\xf2\xd8\xed\xea\xc7\x4e\x3c\x84\x63\xd7\x71\xea\x86\xa4\xb1\x30\x8a\xa4\x00\x32\xa3\xfb\x48\x96\xa4\x1a\xc2\xe4\x95\x42\xc8\xc5\x31\x0b\x61\xfb\xb6\xb0\x1d\x3b\x2d\x7b\x07\xc1\x71\x24\xee\x54\x60\xf2\xab\xfc\x7b\xd1\x43\xb9\xa5\x1b\x6d\x27\xb5\x6d\x27\x48\x97\xfa\xc6\x6b\x2e\x8b\x69\xbe\xd4\xd6\xbf\xfa\x4b\xdf\x02\xa6\xc9\x91\xdc\x94\x31\x39\x1b\xac\xe2\x85\x38\x02\xd8\x2e\xbe\x16\x7b\xe1\xb7\x90\xcf\x5f\x17\xbb\x2f\xe4\xd5\xdc\xe4\xcf\x11\xde\xae\x6e\x38\x87\xc3\xfa\x8c\x89\x2f\xe7\x88\xe1\x8d\xb2\x4d\xb0\x5b\x8f\x8f\xda\x30\x74\xd7\x82\x04\x61\xcd\x8a\x62\x44\x95\xa3\x5c\xb4\x18\x6e\x88\x1a\x7a\x3b\xe8\x62\x7e\x5a\x80\x28\x7c\x60\x9a\xe8\x8f\xad\x17\x6b\x71\x85\x96\x93\x84\x31\xd9\x32\xe1\x3a\x0b\xf1\x12\x0b\x1a\xfc\x15\xdb\xea\xa0\x2b\xf6\x37\x10\xa2\x4d\x5c\x35\x24\xf9\x89\x10\x3b\x07\x90\x0a\xde\xb4\x79\x0b\xb6\x1c\xcb\xf5\x1a\x9d\x0d\x9a\xd4\x24\x4c\x42\xf1\x2e\x82\x9e\x23\x79\x8a\x2b\xf5\xa6\xa4\x05\x58\x81\xde\x54\x49\x3e\x16\xe9\x9c\xe8\x0f\xa4\xcc\x3a\x17\x00\x9e\xa9\xf8\xe4\x79\x39\x3a\xc3\xe4\x25\xbd\xca\xad\x1e\xae\xe9\xd5\x20\xe7\x61\x76\x5e\xb6\x32\xe9\xc0\x63\xa5\x49\xc2\x81\xd5\x25\x2f\x07\xa1\x9f\x73\x5e\x46\xef\x6c\x10\xfa\x05\x85\x44\x5f\x92\x7c\xe0\xf4\x8c\xbc\x2c\xbe\xc2\x10\xde\xd3\x9b\x4e\xdf\x6b\x36\x08\x62\x74\x06\xab\xf9\x89\xb2\x1a\x31\x50\xa3\xd0\x72\x71\xe3\x6f\xa8\x24\xd6\x60\x3a\xa4\x64\x5e\x5d\x23\xfe\x40\x17\xd7\x9b\x26\xdc\x40\x2f\xbb\xce\x0a\xc8\xec\x8d\xda\x9d\xd2\x82\xf9\x5b\xb7\x73\xdb\xba\xca\x7d\xd9\xd1\x5b\xc4\xdc\xcb\x4a\xb8\x7c\xd6\xd9\x9d\x22\xae\x24\x15\x5b\xda\x3a\x68\x83\x96\x11\x9a\xd0\x7d\x10\x81\x38\xff\x30\xb2\x33\x4d\xd1\xa9\x51\x85\x1a\x25\x57\x04\x18\xa8\x19\x79\x4c\x98\xed\x30\xa2\x2b\xf6\xdf\xa2\x32\xe1\x48\x12\x81\x4b\xf6\x29\xaa\xea\xfe\x9f\x16\x04\x8f\x92\x91\xee\x22\x9d\x6e\x80\x5e\xd5\xa6\xcd\xf5\xc6\x05\x27\xad\x09\x16\x3f\x94\x2a\xbc\xd5\x7a\xad\xe9\x34\x9f\x17\xef\x20\x28\xc9\xf2\xf8\x17\x81\x08\x26\xa0\xce\x6e\x51\x3a\x5f\x94\x20\x7f\x64\xe8\xa5\xd6\xd9\x47\x6d\x77\xb6\x20\xaa\x26\xe2\x5f\xaf\x75\x75\xb1\x6b\x9a\x86\x54\x01\x51\x4a\x5d\x48\xc9\x38\xb1\x6c\xfd\x16\x16\xfb\x85\x88\x42\x79\x0d\x8b\x9f\x5a\xf7\x7f\x22\x7c\x9b\xdf\x8c\xcb\x04\x36\x05\x2c\x6d\xd6\x4e\x91\x34\x46\x33\x31\x0c\x5b\xd2\xa7\x05\xcd\x28\x15\x3a\xd4\x10\x67\x56\x82\x90\x25\x95\xb0\xe2\x9a\x06\x7e\xa7\x9e\x75\xc8\xc2\xe4\x7d\x0b\x5e\x4e\xf1\x6d\xea\xb0\xa9\x69\x8a\xbf\x75\xc3\x19\xb0\x3d\x31\x4d\x54\xd0\xa9\xb8\xac\x14\x57\xd4\x33\xef\x50\x4e\x9c\x16\x37\x71\x1a\xba\xe0\x31\x51\x08\x99\xf3\xe4\xa9\x80\x11\x8c\x5e\xa9\xa4\x89\xa9\xc0\x4a\x3b\xf3\x72\x7e\x2b\x8c\xdf\x7a\xcd\xb6\x06\xf3\x61\xf5\xc4\xcc\xad\x94\x39\xae\xd9\x4f\xa4\x84\x4f\x78\xcf\x78\x60\xf4\x62\x3b\xc6\xa0\x4f\xc9\x23\x79\x98\x26\x2f\xe2\x4a\xc6\x44\xd7\xcd\x4c\x1a\x40\x42\x6c\x37\xd9\xd2\x14\x22\x2c\x6c\xf4\x90\xec\xf8\x76\xf7\x93\x46\xd2\xeb\x7a\x10\xd3\xfc\xfe\x37\x6f\xd9\x47\xf5\xb1\xd5\x30\x2f\x69\xc1\x7e\x8c\x52\x71\xe8\x26\x06\x4f\x57\xcc\xb0\x8d\xc0\x8d\x32\x66\xb4\xbd\x51\x0b\x7f\xae\xa9\x32\x90\x24\x65\xee\x32\x68\x38\xc7\xe4\x19\xa3\xcf\xee\xbc\xc3\xcf\x2b\xd0\x7f\x54\xde\x83\xbb\x48\x67\x5d\xd1\x72\xbd\x96\xb0\x7d\xc1\x25\x80\xa9\x93\x38\xa7\x78\xbd\x6e\x3d\x63\x2f\x4b\xf2\x2d\xcf\x3f\xa8\x48\x5f\x81\x75\x5a\x9e\x89\x47\x65\x87\x79\x76\xcc\x76\x9e\xaf\x13\xd3\x7b\x51\xe8\x5d\x00\x92\x57\x00\x64\xd0\x05\x79\xe1\x69\x2a\x6e\x10\x12\xb0\x29\xde\x01\x05\x54\x0e\x4e\x33\x3f\x10\xa4\x70\x17\x09\xa2\x08\xb2\x40\x50\x16\x1d\x96\x6a\x81\xa0\xf0\xda\x08\xa3\xf5\xfa\x15\xaa\x2a\x2b\x10\xbe\x5d\x0a\x0a\xb2\x28\xf9\x55\x96\x68\x36\x78\xcf\x0a\x8c\xfd\x1c\xe1\x9d\xb6\xf4\x0e\xe5\xc2\x90\x1f\x89\x40\x3d\x6d\x95\x64\x42\xc7\xd8\x17\x75\x5c\xb6\xa5\x8e\x4a\x70\xf2\xeb\xf6\x5a\x72\x8f\x7d\x13\x95\xca\xa1\xbe\xaa\x0d\xb5\x7b\x8b\x56\x47\xdb\x5a\xaf\x39\xe0\xee\x6a\xb5\x31\x77\x57\x6c\x1d\xf6\x67\x5d\xd9\x7d\x81\xb0\xe0\x95\x6a\x29\x23\xf3\x9d\xaa\x30\xfc\xb5\x40\x46\x46\xaa\x4e\x5a\x8c\x09\x17\xeb\x1a\x06\x08\x34\x9a\x85\x3e\x19\xe1\x9d\x6a\xcd\x0c\x13\x59\xe0\xfa\x3e\xb4\xcb\x68\x5c\x8e\xe3\x2b\xe2\x44\xaa\x8c\x8a\x50\x10\x70\x1d\x08\x76\xf2\xfb\x91\x56\xcb\xd2\x49\xf0\xe4\x52\x1a\x26\xde\xc6\x82\xeb\x66\x04\x8c\x9c\x4f\x6f\x96\xcc\xe6\x64\xee\xc6\x7e\xc4\x52\x3b\xd5\x03\xdb\x54\x10\xc4\x6f\x05\x81\xf2\x16\x78\xd2\xaf\xd5\x25\xf8\x89\xe8\x59\x5b\x30\xf9\xaa\x2f\xe4\xcf\xd5\x87\x98\x68\x44\x8d\x7a\x2b\x92\x5b\x45\x3e\xfa\x7f\x59\xef\x51\x21\x16\x7f\x96\x24\x11\x73\x63\xdc\xf1\xae\xa1\xa0\xf3\xdc\x78\xe5\x46\x90\x16\x13\xab\x14\x11\x5f\x11\x23\x3f\x61\xc2\x54\xa6\x08\x8d\x12\xb4\xbf\x56\xe9\xcb\x9f\x2b\x69\x22\x24\x35\x62\x7f\x45\xcf\xd9\x44\xfe\x48\x56\xdc\xb0\x8d\x59\xb4\x4a\x0d\xf2\x4b\xb3\x6e\x18\x03\xc4\xa2\x2a\xf9\x45\xde\x49\xc5\xac\xfd\x20\x66\xed\x8e\x98\x45\x89\x2f\x4d\xd6\x8b\xf5\x00\x67\x14\xb5\x22\xba\x3f\xca\x4e\xbb\x35\x1b\xa8\x46\x80\x8a\xb8\xa4\x8e\x46\x52\xfe\xa4\x9b\x27\xee\x0e\xab\x58\x55\xf1\xa4\xa6\xb9\xfb\x0f\x88\x41\xba\x1b\x14\xa1\x52\x0b\x9a\x0c\x15\xa6\x8b\xae\x66\xac\x08\xf8\x7f\xc7\xa5\x0c\x32\x32\x54\x52\xc8\x02\xaf\xd1\xc6\xef\x83\xc1\xa8\x69\x3e\x6b\xb3\xbb\xd4\x62\x6e\xaa\x00\x2d\x0a\xa1\x17\xb7\x0d\xa0\xe5\x7b\x50\xf9\x8f\xad\xf5\x7a\x2e\xde\x45\x17\xc1\x54\xd0\x7b\x93\x06\x14\x34\x9b\x0d\xa1\x61\xda\xba\x9d\xd3\xdd\x14\x88\xb3\xdd\xd8\x34\x53\x08\x20\x53\x09\x6d\x5d\xae\xa2\x44\x13\x52\x28\xa6\xc7\xb0\x5e\xaf\x5f\xea\x3f\x77\xb4\x9b\x5a\xeb\xa8\x92\xfc\x4d\x8f\x97\x5d\x64\x31\x2e\xbe\x7f\x29\x03\xba\xb5\xf8\xd2\xe6\xc3\xd1\x52\x6e\x84\xc5\xcf\x4f\xe0\x1d\x01\x29\x38\xea\x57\xb7\x34\xa3\x23\x2e\x5d\x32\x14\xea\xee\x4b\x19\x0d\x3b\xa3\x44\xee\x66\x65\xac\x6d\xf0\x38\x2b\x12\x7b\x41\x34\x25\xc1\x26\x2d\x07\x37\xb6\x45\x56\x32\xf3\x97\x2a\x95\x75\xe0\x81\x97\xe7\xff\x52\x8f\x22\x16\xf0\xc1\xb5\x6d\x11\x5f\xa5\x03\x53\xe5\x50\x09\x1e\xcc\x65\x68\xe5\x7e\xdc\x8b\x9e\x24\x24\xa0\x71\x3f\x0f\x42\xdb\x5f\x3d\x49\xc8\x52\x05\x61\xee\xa7\x3d\xef\x49\x42\x16\x34\xed\xab\x08\xb6\x7d\xff\x49\x92\x4f\xdd\x7c\xbd\x0e\xd6\xeb\xe5\x7a\xbd\x00\xe9\x12\x08\x53\x94\x8d\xf7\xcb\x96\xe0\x67\xf9\x19\xd2\x82\x34\xb7\xaa\x29\xb4\x43\x22\x13\x2b\xe4\x46\x3f\x93\x5b\x2d\xc6\x4e\x67\xfe\x61\xa2\xad\x92\x9d\xe6\x3a\xbb\x8d\xb4\x88\xc3\x0d\x94\x48\xc4\x89\x02\x95\x12\x6c\x4c\x5c\x8b\x62\xfe\x0f\xa4\x53\x69\x5b\x68\x26\xd3\x9c\x83\xe8\xa5\x49\xea\x4a\xa2\xa7\x21\x5c\x13\x6c\x62\xbd\xcb\x5f\x74\x72\xb9\xd1\x59\x8e\x2b\xf1\x63\xcb\x34\xf3\xb3\xb2\x0b\x54\x71\x07\x21\x29\xee\xf2\xc8\xe5\xcc\xcf\xb5\x52\x15\xca\xb2\xf2\x0c\xaf\xd7\x69\x35\x09\xed\x3f\x34\xa3\xf3\x5d\x9d\x9c\x7d\x8b\xf0\x6e\x7e\xe8\xca\xd1\xc1\x3d\x65\x54\xd3\x4b\xfe\x8e\xf0\xed\x1f\x28\x8f\xa3\x99\xab\x06\xc5\x89\xac\x98\x3f\xc2\xb9\xd4\xa3\x57\xf0\x32\x72\x8d\x8c\x6e\xdf\x34\x7a\x25\x2e\x38\x1c\x55\x34\x11\x19\x7d\x8a\xf0\x04\xd8\x6b\xa9\xdf\x97\x6a\xdb\x15\x4d\x26\xb7\xad\xbb\xc5\x4e\x48\x35\x70\xa4\x9d\x34\x02\xdc\x7e\x40\x78\x63\x33\xe2\x51\xa7\x16\xc5\x27\xbf\xe2\x55\x6c\x22\x3b\xdc\xe2\xc4\x5e\xd4\xad\xf8\xe4\x8e\x72\x5f\xdc\x91\xf4\xc5\x3d\x50\x3e\xba\x07\x9b\x7a\xfc\x97\x46\xfb\x83\xb2\x46\x2d\xcc\x56\x51\xb5\x0c\x80\xa4\x85\x93\x51\xb2\x8e\x3b\xa3\x71\x75\x67\x62\xd8\x9e\x04\x25\x0c\x50\x21\x3d\x2f\xa8\xc1\x13\xc7\x28\xc3\x24\x11\xa3\xe1\xf0\x44\x8c\xdc\xc5\xa9\xcd\xa4\x9e\xe1\x5b\xad\x39\xd8\xbc\xb5\x5a\x1d\x69\x5d\xe8\x8e\xee\x76\x8b\x07\x96\x53\xf1\xaf\x32\x7a\x6c\xda\x0e\xd2\xe8\x81\x7d\x9b\x9d\x76\xd8\xdc\x18\x3d\x79\xd5\xb6\x79\x82\xdd\x6e\x36\x9b\xcd\x74\x07\x44\xfb\x99\x69\x7a\x39\xd5\xa8\x7b\xd9\x16\x6b\x95\xc7\x44\xce\x0a\x97\xfe\xbd\xcd\x06\x13\xd9\x48\x09\x31\x3c\x92\x7b\x43\x94\xa9\x66\xcb\x50\x91\x60\x04\xdb\x50\x20\xd3\x90\xa1\x15\x79\xd9\x54\xd3\xa7\xba\xeb\x6a\x4c\x2a\x01\xde\xec\x48\xcb\x86\xe8\x55\x08\xb1\x3f\xa4\xb8\xb2\xae\xa4\xae\x17\x0d\x94\xac\x1a\xb5\x8c\x08\x32\xfe\x56\x42\x7d\x17\x94\xcb\x82\xa1\x97\xcd\xcc\xf6\xca\x79\xb3\x14\x0e\x4f\x0d\x7d\x48\x40\x75\xdc\x76\x30\x9c\xcc\x34\x81\x7f\x55\x26\xdd\x39\xeb\x4a\x9e\x15\x48\xe9\x23\x12\x4c\x54\x4a\x4f\x11\x26\x21\x4d\x1d\x6b\x4a\x12\x9a\x3a\xc3\xe9\x8e\x8e\xf2\x0a\x81\x63\x68\x9a\x09\x04\xdf\x49\x30\xe1\x93\xb8\xcb\xdb\xea\x0c\x64\xc2\x48\x7a\x5c\xd9\xc5\xaf\x62\xd0\x80\x6a\xa5\x2e\xab\x75\xdc\x30\xe8\xc2\xe0\xbc\x18\x76\x53\x50\x24\x85\x0d\xf7\x97\xde\xde\xeb\x26\x73\x2a\xc4\xbd\x46\x6b\x69\xb1\xa6\x25\x01\x2b\x2f\xbe\xc2\x81\xe3\x23\xda\x1d\xe2\x1d\x3e\x09\xb7\xcc\x4b\x97\x92\x46\x4e\x55\x42\xdb\x4d\x1a\x50\x8b\x6e\x08\xc4\x56\x20\xa3\x78\x85\x74\x8a\xf2\xeb\x5d\xd1\xe3\x2f\x0a\xd3\xf1\x32\x6a\xad\x6e\x4b\xbe\xb3\xc5\xbf\x46\xe7\xd6\x4e\xc1\x2d\x3f\xf7\xd0\x69\xd6\x95\x0c\xcf\x53\x96\x1b\x38\xb6\x47\x3f\x93\x26\x40\xe9\x46\xec\xbf\x16\x21\x93\x34\xd3\x75\xd8\xd4\x6e\x79\x28\xbd\xc6\xde\x25\x3e\x13\xbd\x1a\x10\xba\x77\x02\x0e\x70\x76\x8b\x3c\x7d\xc1\x50\xf1\x66\x8d\x63\xc6\x64\x9e\xeb\xad\x81\x77\xb9\x69\x7e\x66\x88\x93\x58\xcf\xd6\xac\x1c\xf5\x52\x69\xde\x25\xa6\xaf\x32\xf2\xd0\xb1\xa6\x76\xb8\xf9\xca\x72\xd3\x7b\xb0\x1e\xa1\x17\x8c\x7c\x05\x21\xe0\x0b\xbd\x54\x7f\x45\xdd\xe6\xac\x95\x4b\xe7\xf8\xf6\x02\x8c\xcb\x98\x0a\xb0\x24\x20\x2a\x4e\xea\x75\xbc\x5c\x71\xfa\x9e\xc1\xcc\xff\xc6\x5a\xc2\xef\x94\xe1\xbe\x27\xb7\xe2\x82\x17\x54\x09\xbb\xf6\xa2\x95\x2f\x3d\x9e\x73\x75\xf5\xce\xab\x0e\x37\x37\x09\x46\x72\x84\x29\xec\xb0\x1b\x86\x52\x3c\xd1\xc2\xcd\x52\x4a\x53\x3b\xe7\x1b\xc0\x66\x3c\x8f\x90\xbf\x5b\xc4\x58\x65\x35\x65\xf9\x0e\xd3\x4c\x6c\x0a\x1f\xa0\x78\x83\x09\xcb\xa5\x67\xac\x4d\xed\xd7\xda\x2c\x94\xf1\x73\x37\xe4\x87\x86\xdb\x12\xc4\x25\xfc\x37\xcb\xd9\xf5\x5f\x97\xac\x4b\xdc\xb6\x3f\x31\xda\xb2\xe9\xeb\x09\xe8\x73\x34\x12\x0b\x96\x90\x24\xd4\x99\x02\x29\x9a\x5c\xb2\x34\x0d\x7d\x96\x91\x4c\x14\x45\x62\x63\x14\x18\x69\x85\xf0\x6d\x22\x58\xc0\x4e\xa5\x64\x31\x0f\x95\xeb\xd6\x83\x5b\xa2\xc3\xcd\x70\xc2\x55\x8c\x67\x24\x68\x1c\xa5\x43\x47\x55\x71\x93\xaf\x75\x52\xef\x5e\xe3\x8f\xf3\x9d\x53\x7a\xfa\xe6\x25\xe5\x8c\x84\xf8\x36\x45\x21\x24\x37\xd1\xb6\x77\xac\x7c\x3d\xe5\xc6\x0b\xab\x31\x74\x35\x30\x69\x55\xa0\x33\xd7\xb1\x4a\xa2\xf9\xfd\x82\x16\x66\x97\xd2\x18\xdf\xc6\x94\xc3\x44\x67\x14\xb9\xd2\xc5\x27\x0f\x91\x57\x98\xde\xdf\x23\x8b\x59\xe8\xa4\x53\x79\xc2\x1c\x3e\x2d\xe2\x75\x6b\x63\x6e\x1c\x8b\x8c\xdc\x76\xf8\xd9\xb5\x78\x70\x67\x1d\xec\xc9\xa4\xeb\x41\x8b\x97\x20\xef\x62\x65\xa5\x62\xc6\x13\x97\x2a\x59\xa1\x3c\xdc\xdd\x6d\x35\x33\xb3\xf2\x69\x68\xf5\x9a\xf3\x04\x71\xd3\xee\x3a\x17\x53\xe9\x22\xd6\xe5\xbe\x06\x22\x50\x89\x99\xaa\xea\xed\xdd\x08\xa2\x37\xef\x5a\x24\x56\xb4\x5c\xc3\xb7\xee\x1e\x6d\xc5\x06\x48\x1c\x0b\x0c\x1b\x5a\x3c\xee\x60\x19\xe7\xd2\x1f\x44\x17\x8d\x61\x41\x54\x93\x25\xfd\xca\x10\x58\xe9\x36\x16\xcf\x07\x2b\x28\xa3\x38\x8d\xc6\x14\x97\x77\xac\x13\x4c\xdb\x2f\xfc\x9a\xf3\x5c\x52\xf3\xce\x6b\x09\xea\x50\xe5\x5f\x6f\xf5\xec\xe1\x79\x17\xb9\xdc\xaf\xc1\xee\xe2\x2e\xfa\x9d\x38\x3f\xb0\x29\x06\x89\x31\x59\xd0\x25\x4c\xde\x8e\xfc\xa0\x35\x79\xed\x02\x61\xb2\x1b\x9b\xa6\xec\xa3\x90\x99\xcf\xd1\x52\x4e\xab\x74\xcd\x92\x6e\xd3\xbb\x54\xc9\x78\xeb\x6e\x00\x45\xb3\x04\xb4\xaa\xb2\x31\x93\x8d\xc3\x41\x18\xc3\x65\x98\x55\x1c\x74\x8b\xb3\xbf\xa3\xf5\xc8\x0b\x93\xf9\x44\x6f\x35\x11\xcf\x18\xb6\xe5\xdb\x8a\x75\x83\x57\x79\xc7\xae\x79\xc3\x40\x11\x42\xbe\x56\xfd\xc9\x64\x6d\x64\xe5\x94\x7a\xa2\xc5\x7a\x55\xb3\x82\x12\x87\xf7\x86\xd3\xf5\x9a\xe1\x1c\xfa\x87\x94\x5d\x86\xc9\x2a\x6b\xeb\x21\x51\x71\x0d\xfb\xc3\xf6\xae\x58\x5b\x57\x24\xa5\x89\xc3\xfb\xd0\x4b\xde\x6d\xaa\xa2\x28\x5c\x8a\x45\xaa\xe1\xce\x65\x0b\xee\x64\xf8\x16\x92\xf4\xe6\xbb\x72\xbd\x76\xc9\x25\x52\x83\x66\x3c\xe7\x8d\xaa\x2d\xe0\xf0\x92\xed\x71\xe1\x55\x90\x6f\x71\x13\x15\x68\x82\xf8\x68\x89\xc9\x52\x23\x07\x6a\xbb\x1b\xcc\x75\xa9\xac\xb5\x21\x5f\x18\xbd\x05\x0a\x5f\x8c\xce\xae\x18\xa9\x28\x81\x93\xad\x64\xd9\x04\x78\x04\x5b\xb1\x0a\x5a\xb0\x8e\x9f\x2b\xfe\x8e\xce\x14\x32\x66\x90\x90\xee\x0e\x41\x80\xa3\x84\xba\x2e\x55\x87\x53\xfe\x16\x27\xb3\x25\x23\x88\x4b\x6e\x4b\x27\x57\xa9\x93\xc8\xdd\x5f\x87\x10\x06\xa6\xad\x45\xd5\x5f\xd6\xda\x60\xb2\xa2\xc0\x05\x64\x9a\x43\x91\xa7\x8e\x4e\x2e\x39\x33\xcd\xdd\xb0\xc8\x28\xa1\xca\x06\x5e\x94\x64\x2c\xe3\x28\x51\xc1\x17\xe1\xb9\x4b\xd3\x6e\xa7\xc8\x9c\x47\xc3\xeb\x35\xcf\xd9\xaa\xf5\xfa\x82\xe5\xdf\x77\x64\x02\x0e\x29\xea\x34\xcd\xdd\x0a\x0b\xa1\x09\xaf\x8d\x99\x94\x48\x96\xc7\x33\x92\x06\x32\xeb\xb5\xde\x62\xb7\x6c\xe1\x16\xbb\xf4\x0b\x73\x64\xe1\x14\x3f\xb6\xd4\x69\xcd\xc4\x0c\xa4\x24\xc2\x3b\x19\xa8\xc1\xe2\x1c\x2f\x65\x18\xb0\xa8\x4e\x23\x10\x0e\xca\x8f\x92\x63\x0a\x4d\x13\x85\xa0\x39\x6b\xd5\x83\x89\xca\x82\x0c\xbb\x4b\x0f\x16\x17\x12\x0e\x41\x88\xe6\x18\x83\xa1\xd5\x1d\x36\x12\x4a\x7c\x00\x42\x76\x49\xe3\x40\x92\x6b\x45\xe3\xec\x14\x15\xb6\xe5\xef\x01\xdd\xa8\x69\xc6\x5d\xea\xbd\x42\x44\x01\xa9\x4e\xc4\x86\x4d\xff\x65\x1a\x26\x38\x24\xe2\x82\x27\xf9\xfb\xe9\xe8\x2a\x41\x98\x74\x0c\xbb\x96\xdd\x23\x3f\xfd\xbb\x43\xc8\xfc\x20\xa7\x47\x07\xe5\xde\x03\x94\x4e\x39\x0a\x58\x96\x46\xc3\xb1\x36\xcc\xef\x23\x4e\x2a\x7c\xb0\x07\x6c\x30\x14\x17\x98\xc4\x20\x9e\x2a\xca\xc5\xd6\x45\x81\xc4\x1f\xc4\x2b\x12\xcd\xac\x20\x94\xc3\x2f\xac\x48\xc6\x5c\x7a\xad\x1b\x44\x77\xd8\x06\x1f\xf6\x16\xf1\xa3\xb4\x28\xd6\x14\x0b\xad\x96\x5e\xbc\xb0\xf4\x52\x78\xff\x56\xc5\xc2\xa1\x3f\x32\xc4\x0a\xa6\x22\x86\x68\x9f\xd7\xe0\x2d\x9e\x5b\xfd\x94\xda\x1e\x6d\x6c\x93\xc6\x15\xa3\x79\xe7\xe6\xde\x97\x15\x8f\xc9\xdc\xe9\x12\xcc\x83\x99\x66\x1c\x4c\xd8\x06\xa9\x54\xfe\x05\x3d\xd7\x8c\x8d\x90\x88\x83\x3c\x08\xe3\x8c\xa5\x5c\xba\xe9\xa0\x44\x2c\x6f\xdd\xf1\x15\xb7\xbb\xa7\xa9\xa1\x07\x30\xad\x06\xb8\x1d\x4a\x7b\xad\x44\xc9\xa9\x0b\x73\x68\xa2\x33\x93\xca\xc5\xbf\xe2\xfc\x9f\xcd\xc3\x80\xf7\xdd\x2b\xf7\xc6\xd8\x48\x12\xae\x11\x72\xa1\x0c\xa1\xc8\x68\xdc\x19\x5f\x86\x70\xfa\x0e\xa8\x12\x54\xa6\xc7\x35\x16\x19\x8c\x0f\xef\x84\xcd\x76\x2c\x72\x6f\xb4\x74\xfb\x88\x3f\x1a\x5a\x18\x62\xd4\x14\x7e\x8f\x2d\x51\x6c\x98\x34\xc8\xae\x78\x18\xb4\xc5\x84\x48\xc0\xb3\xb0\x13\x8c\x61\x41\x2c\x9c\x96\xa8\x13\x89\x69\xe6\x3d\xe4\x6b\x0a\xa4\xea\x3f\x18\xbd\x55\xda\x47\xdb\x22\x4a\xf7\x68\x5b\x1b\xf2\x7b\xd5\x49\xef\x8f\x8a\x2b\x73\xae\xaf\x4c\x8b\xef\x5f\x76\x74\x48\xbc\x80\x94\xca\x30\x28\x8c\xe7\x67\x47\x0f\xf1\x70\xbf\xc3\x53\xcb\x8f\xf3\x92\xe5\x4e\x88\x75\x53\x09\x2e\xce\xc6\xee\x30\xbf\xd8\x77\x2d\x40\xca\x50\x55\x0b\xdc\x55\x1a\x69\x86\x71\xc8\x43\x37\x92\x97\x9c\x84\xa8\x8f\x0e\x38\xc7\xaa\x34\x50\x0b\xcd\x85\x54\x36\xac\x6e\x0b\x2d\x5f\xe3\x27\x57\x50\xfd\x2e\x9b\x2e\xbf\xc2\x5a\x0b\x1e\x68\xd7\xaa\x6c\xf5\x2d\xf1\x55\x36\xf2\xe5\xf5\x6b\xb3\x88\x99\xb0\x9b\x2a\xf2\x41\x90\x00\x85\x82\x2d\x2f\xc4\x24\x6c\x7d\x7f\x2d\xeb\xf0\xef\x5a\xc6\xe1\x2f\x24\xa3\x9d\x1c\x21\x89\x68\xd2\x97\x0a\x5e\xb2\xa2\x6e\x1f\x94\xc3\x3b\xbb\xc0\x85\x37\xf4\x7f\x55\x99\xd0\xdd\xec\xa8\x3c\xab\xdd\x7d\xa7\x34\x21\x31\x75\x77\xf4\x85\x0d\xc1\x60\x53\x26\xe9\xeb\x45\x70\x21\xf2\x64\xd9\x5b\x61\xc5\xba\x1b\xf3\x24\x0d\xbf\x89\x29\x91\xd5\x27\xf0\xdc\x8e\x89\x47\x8d\x4b\x96\xf2\xd0\x2b\x1f\x48\xe5\x57\x4a\xfc\xb6\x56\x4a\x53\x16\x93\x79\xb3\x21\x48\x9f\xd2\x1c\x73\xca\x90\xba\x5e\x7f\x9e\x07\xd5\xf5\xfb\x19\xc8\xa5\x32\xa5\x5e\xf3\x72\xb5\x9b\x2f\xe5\x56\xf3\xcd\x66\x53\x91\x4d\x94\xec\x6b\x75\xbf\xa2\xdf\x95\xac\xf3\xb6\xc8\x4f\xc4\x88\x9f\x78\x20\xbc\xbd\xc3\x78\x48\xdf\x87\x7f\x30\xbc\x41\x95\x24\x8b\x01\xc2\xb7\x82\x74\x41\xbf\x33\xfa\x7b\x8b\xcd\xa1\x9e\x51\x35\xef\x5b\x50\x82\x1b\x8c\xdb\x7c\x5f\xf5\xdb\x3d\xf1\x54\xba\xb5\x22\x76\x7e\x75\xa4\x77\x1d\x1a\x35\xd8\x4d\xfd\x5e\x9a\xeb\x81\x7a\xb6\x84\xf9\x29\x70\xc4\xa6\x2b\x4c\x50\x61\x08\x2c\x0e\x84\x3e\xe3\x3b\xf1\x7a\x5d\x78\x13\x27\x82\xe0\xd5\x9f\xca\x32\x14\x20\x4c\x92\x09\x9a\x0b\x86\x98\x35\x4d\x06\xc3\xf5\x3a\x43\x78\xbd\x8e\x10\xc6\x36\x12\xec\x91\x87\x70\xc7\x95\xd5\xbe\xea\xbb\x62\x8f\x8b\x9e\x7c\xf4\x0f\x86\x05\xe2\x1b\x62\x52\xc0\xec\x16\x5f\xcc\x18\xc4\xb1\x43\x15\xc4\x5d\x1c\xf8\x1c\x81\x17\x06\x29\x20\xff\x2f\xad\x86\xa4\x85\x50\xbb\xec\xa6\x63\x77\x7a\x48\xf2\x7f\x89\x0c\xbf\xbe\xd9\x10\x5e\x5c\x0b\x8d\x48\x3f\xf7\xbb\x1b\xe0\x06\x2a\x6f\x87\x98\xf6\x0b\xf4\xaf\x00\x03\x65\xf3\xba\x09\xbd\xa9\x5f\x76\xc5\xda\xb7\x24\x7b\x2a\x33\xc5\x29\x1d\x72\x89\xca\x6a\x50\x4d\x13\x64\x83\x49\xa9\xdd\xad\x48\x1f\xef\x81\xe2\x1a\xd9\x37\x5b\x8a\x88\x32\x23\x14\xfc\x9f\x3a\x33\x8f\x47\x79\x00\x3a\xcd\x3c\x51\x10\x9d\x23\x10\xea\xe7\x07\x2b\x06\x75\x58\xea\x58\x53\x40\x49\x4f\x52\x67\x38\x55\x89\x9f\x73\x75\x89\x13\x4f\xd7\x6b\xbe\xa3\x2c\xec\x72\xd3\x3a\x9e\x2c\x0d\x1b\xbe\x29\xcb\x1f\x5b\x25\x61\xc9\xd5\x91\x69\x29\xb9\x20\x6e\x61\x06\xc4\xc0\xae\x08\x32\x39\xd3\x24\xcf\x64\xbb\xa2\xee\x24\x94\x28\x31\x91\x17\x85\x07\x25\x12\xf7\x25\xf2\x33\xc7\x95\x12\x2d\x2a\x74\x18\x49\x74\xb8\x2a\xd0\x64\x8e\x49\x57\x39\x26\x8d\xfa\xd9\x46\xda\xed\x81\x59\x91\x1c\xb2\x34\x3d\x82\x11\xfb\x92\x32\x5b\x84\xb1\xd2\x59\x8b\x9f\x24\xdd\x22\xf7\x16\x70\x36\x32\x1c\x80\x6c\xea\x5e\xdf\xb7\xa9\x4c\xc0\x2b\xda\x42\x8e\x98\x4e\x94\x59\x98\x40\xb1\x89\xca\xaf\x4d\xa9\x6f\xe7\x39\xba\x29\x9d\x0b\x16\x64\x49\x03\xb1\x6c\x62\x2e\x17\x34\x70\x82\x72\xbe\xd5\xbc\xea\x33\x56\x24\x14\x56\x79\x83\x7d\x35\x63\x73\x35\x63\xf3\xbe\x9f\xcf\xd8\xa2\xbf\xdc\xec\xa8\x93\x66\x17\xb1\x8d\x36\x08\x42\x59\x92\xb4\xf3\xae\x5d\x30\x04\x0f\xcb\xc2\x0c\x09\x3e\x15\x6f\x90\xb6\xfd\x41\x6d\xc1\x69\xb5\xa4\xa4\xc5\x5c\x54\xf0\x47\xeb\x35\xe2\xad\xda\x0d\xf5\x5a\x77\x08\x3c\xd9\xbd\x04\x9e\xa5\xc4\x93\xdd\x53\xe2\x79\xc7\xe5\x25\x50\xcc\xae\xc0\x85\xe2\x8b\x58\x26\x87\x83\x7c\x74\x53\xc4\xc9\x48\x24\xcb\xaa\x53\x71\x5c\x72\xc4\xcd\x1b\xcb\xad\x5d\x40\x6e\x1b\xea\xce\x63\xce\xce\x98\xb8\xa1\x95\x8e\x0e\x7c\xea\x0b\x34\xd8\xb2\x2e\x90\x12\xb1\x3b\x0e\x0f\xd8\xd2\x8d\x1e\x97\xf4\x1e\x98\x66\x41\xa2\xe3\xd1\x93\x6a\x29\x4f\x96\x7a\xcd\x2f\x10\xf0\x50\x26\xab\xd6\xaa\x7e\xd9\x60\xbc\x13\xd3\xb0\x90\x00\x25\x92\x9f\x69\x8d\x51\xa7\x72\x25\x6e\x48\x5a\x5c\x07\x32\xc6\xdb\x5f\xe2\x0f\x8a\xfc\x99\x9a\x89\x77\x71\xd6\x64\x4c\xaa\x5c\xf6\x0f\x9d\x08\x2a\x54\xff\x0d\x01\x38\xe4\xb4\x82\x75\x56\x02\x1f\xcd\x4d\x9b\xd1\x18\x69\xb1\xa1\xf1\xa4\x60\xd1\x73\x71\xe9\xa4\x5e\xa0\x6e\xff\x66\x9e\x73\x9b\xe3\xae\x93\x26\x4d\xc4\x22\xd1\x99\xca\xd6\x8d\x27\x9d\xc7\x12\x2a\x9f\xa0\xcc\x34\x63\x8e\x42\x22\xf6\x70\x04\xdf\x13\x12\x61\x19\xb3\xb6\x66\x1a\xd3\x18\x62\x9e\xc7\x94\x84\x34\x23\x09\x8d\x48\x83\x66\x31\xcd\x76\x13\x08\x57\xdb\xd1\x9d\xa4\x8b\x9c\x63\xd3\x74\x11\x50\x00\xda\x22\x71\x5d\x37\x06\x31\x64\xb9\x58\x1a\x9e\x2c\xe1\x84\xf1\x64\x29\x7e\xc2\xa6\x84\x82\x54\xc6\x81\xcf\x77\x1f\x94\xc9\xaf\xa2\x50\xec\x68\x28\x02\x04\xde\xd4\xe4\xa3\x5b\x15\xcf\xf0\x1b\x13\x28\x2a\xd7\xfd\xd3\xaf\x4c\x97\x2e\x49\x1f\x30\x63\x95\xb1\x07\x19\x4f\x43\x8f\x1b\x3b\xe9\x20\x15\x27\x38\x1d\x80\xa8\x28\xf3\xe6\x6c\xc1\x9e\xbb\x9c\x9d\x27\xe9\xcd\xd0\xaa\x3a\x4e\xe6\x8a\x4d\x10\xa9\xe9\x0d\x9e\x7a\x1e\xd8\x81\xb5\x54\x4e\x1a\x95\x5f\xb8\xe9\xc5\xa8\xb5\xae\xdb\xa8\xfb\xc1\x0d\x53\xe6\xb7\x56\xce\x5a\x2a\x67\x9c\x45\xc3\xd6\xda\x51\x47\xed\xf6\x81\xac\x1a\xb5\x3f\x31\xde\x0e\xd8\x6b\xab\xda\x0e\xd5\x6f\xab\xba\xd7\x5a\x75\xde\xa8\x7a\x2a\xc8\x3b\x77\xd5\xb1\x24\x81\x56\x1f\x38\xd2\x65\x12\xb9\x9c\x3d\x4b\x9f\xfd\xd4\x5a\xff\xbc\x01\xbf\xb3\xea\x65\x3b\xe8\x0f\x1f\x7f\x8a\x5b\xeb\xdf\x34\x67\xba\xab\xea\xac\x03\x74\xf8\xa5\x7d\x28\x57\x4d\xd0\x5d\x55\xcf\x3a\x40\xaf\xde\xa7\xad\xf5\xaf\x9b\xa0\xbb\xaa\xbe\x6c\x07\xfd\xd1\x7f\xb6\x6a\xad\xff\xa9\x01\xba\xb3\xea\xfb\x2e\xd0\x3f\xdd\xb4\xd6\x7f\xdb\x02\xba\xa3\xea\x69\x17\xe8\x2f\x51\xc7\x60\x3e\xb4\x00\xef\xac\xfc\xb4\x1b\x7c\xc7\xe2\x5f\xb4\x82\xef\xa8\xfc\xbc\x1d\xfc\xa7\x25\xf3\x78\xea\x46\xad\x6d\xfe\x6c\x1e\xb7\x6d\xd5\x3f\x76\x1c\xa1\x55\xc7\x90\xde\x35\x8f\x50\x57\xd5\x17\x5d\xa0\x3f\xb4\x4f\xe6\x9b\x16\xd0\x1d\x55\x5f\xb7\x83\xfe\x29\xee\x58\xa7\x6f\x0d\xd0\x9d\x55\x7f\x6c\x07\xfd\x3e\xfd\xd8\x8e\x90\x9f\x35\x40\x77\x56\xfd\xb5\xeb\x74\x76\x4e\xe1\xe7\x96\xf3\xd9\x59\xf9\x55\x37\xf8\xd6\xfa\xbf\xb5\x02\x6f\xad\xfa\xb5\x0b\x74\xc7\x9b\xfe\xd4\x02\xba\xa3\xea\x0f\x5d\x47\xa8\x63\xe9\x7f\x6e\x39\x40\x1d\x55\xbf\xb4\x83\x16\xc7\xad\xe3\x3d\xff\xd1\x00\xbe\xa5\xf2\x2f\xdd\xe0\x5b\xeb\xff\xd1\x0a\xbc\xb5\xea\xef\x5d\xa0\xdf\xa7\xcf\xda\xd1\x33\x67\x2d\xd0\x3b\x6b\x33\xd6\xdd\x41\xc7\x3a\xc5\xed\x1d\x74\xd4\x4e\x3b\x3a\x78\x16\xad\x58\xd6\x4e\x31\x35\xe1\x77\x57\x0e\x3b\xc0\xff\x94\x32\x16\xb7\x37\xc9\x9a\xf0\xb7\xd4\x76\xbb\x3b\xb8\x69\x6f\xb1\x6a\x85\xdf\x51\x39\xea\x00\xff\x61\x95\x2e\xa3\x8e\x77\xf6\x9b\x1d\x6c\xab\xee\x75\x74\xf1\x91\xf9\xed\x0d\x82\x26\xfc\xce\xba\xf3\x0e\xe0\xef\x53\x37\x3e\xef\x18\xd0\xa2\x09\x7f\x5b\xf5\x65\x47\x17\xcf\xc3\xcb\xd0\x0f\xdb\xdb\x5c\x76\xb5\x59\xcd\xd8\x9c\x45\xe1\xb5\xe2\x1d\xda\xaf\xab\xae\x09\x73\xc3\x78\x96\x5c\xb5\x5f\x16\x1d\x6d\x7e\x73\xd3\x45\xfb\xf5\xd9\x35\xc2\x24\x69\xbf\x9f\x5f\x77\x34\xf8\x14\xc6\xac\x6b\x54\xaf\x3a\xda\x9c\xae\xd2\x59\xd2\x7e\xcf\x74\xb4\xf8\x1c\xa6\x9d\x93\xfd\x5b\x47\x9b\xb7\xee\xf9\xc2\x6d\x47\xf5\x1d\x2d\x5e\xc7\x01\x4b\xe3\xf6\x91\xfd\xd4\x75\x52\x22\x37\xeb\xe8\xe6\x8b\x68\xa2\x6c\xe1\x75\x31\x43\x9e\x25\x95\x83\x22\x29\x3e\xe7\xf3\x47\xe3\xb5\x45\x52\x48\x51\x2b\xed\xd7\x41\xf7\x68\x9d\xc4\x8f\xf9\x09\x4e\x9d\x78\x4a\x8d\xff\x63\xf4\x98\x4a\x89\x3a\x7e\x18\x93\xf1\xc3\x5e\x4f\x33\x4b\xdf\x90\x50\xb0\xf4\xc3\xe0\xf0\x70\xb6\x1f\x04\x87\x81\xc5\x46\x9e\x6b\x8d\x3c\x7f\x3c\x3a\x1c\x1d\x1d\xef\x8f\x0f\x67\xfe\x91\x77\x30\xde\x9f\xb1\xbd\xc3\x43\x6f\x74\x18\x88\xff\x33\x6f\xe6\x8f\x46\xc3\xc3\x19\xf3\x02\x03\x93\x44\xc0\x38\x0c\xbc\xe3\xc3\x60\xc6\x5c\xe6\xef\x07\xbe\x67\x1d\x8d\x83\x20\x08\x8e\x8f\xf7\x8e\xc6\xde\xcc\x0a\x2c\x6b\x74\x18\xcc\x82\x83\xd9\xf0\x70\x0c\xff\x0c\x4c\x5c\xe8\x7b\x76\xcc\x0e\x0f\xfd\xe3\x83\xc0\x1a\x1d\x1e\x1c\x5a\xb3\x3d\x76\x38\x3a\x3e\x72\xc7\x63\x77\x3c\x64\x6c\xec\xce\xac\x91\x3b\x3e\x1c\x0f\xfd\xa2\x1d\xc8\x3c\xdc\xb1\xc7\xd8\xde\x30\x38\x3c\x9a\xed\xcf\x46\x7e\x70\xe4\xee\xed\x89\x91\x07\xb3\x63\xf7\xf8\x98\xed\x0d\xdd\xa1\x17\xf8\xb3\x40\x0c\xe3\x30\xb0\x2c\xcf\x9d\x8d\xfc\xf1\xd8\xdd\xf3\x8f\x5d\x39\xb2\xd9\xf0\xe0\x78\x74\x64\x60\x29\xd6\x08\x66\xb3\x7d\x97\xcd\xf6\x3c\x9f\xed\x79\x1e\x9b\x79\x07\x3e\xf3\x66\x6c\x3f\x60\xfe\xb1\x0b\xef\xe2\x79\xec\xc0\x3f\x9a\xf9\x81\xef\xbb\xcc\x0b\x46\xe2\xbf\x81\xc9\x4a\xb4\x9e\xed\xb1\x91\xe7\x07\xbe\xe7\xbb\x9e\x37\xf3\x0f\xd8\x51\xb0\xef\xb9\x6c\x9f\x8d\x83\x03\xef\x38\x08\x82\x91\xcb\x82\x21\x1b\x79\xea\x9f\x01\x49\xb9\x90\xc1\xf6\xc5\x38\xf7\x0e\x0f\xd9\xec\x68\xdf\x77\x83\x7d\xf7\xf8\x68\x9f\xb9\x7b\x72\xcc\xa2\xd7\xbd\x3d\x77\x7c\x30\x1e\x1d\x05\x87\x47\xc3\x59\x70\x0c\xff\x0c\x48\xe5\x85\x8c\xf1\xd8\x1b\xb9\x07\x81\x77\xe4\x8f\x47\x47\xbe\x6b\x79\x33\x76\x78\xe4\x7a\x7b\xee\xd8\x3f\x3a\xd8\x0f\x02\xff\x78\x14\xb0\x03\x6f\xff\x78\x7f\xb6\x27\xfe\x1b\x98\xcc\x45\xbb\x23\xdf\xdf\xf3\x0e\x05\xf4\xd9\xde\x8c\xcd\x5c\xdf\x0d\x66\x47\xd6\xe1\xe8\xc8\x9a\x0d\xfd\xbd\xc0\x9f\xed\x8f\x47\xb3\x3d\x9f\x8d\x8f\x03\xcf\xf3\xd9\x81\x7f\x2c\xfe\xcf\xbc\x23\x6b\xe6\xcb\xb9\x09\x02\xe6\x8f\xc5\xda\x07\x02\xde\x3e\x3b\x3c\x76\x0f\x83\xd1\x11\x1b\x79\x6c\x78\x70\x78\x70\x7c\x38\x9e\x1d\xce\x46\x07\xc7\xee\x50\x4c\xa0\x77\xbc\x7f\xec\x06\x87\xae\x3b\x0c\x82\x63\xdf\x3d\x3c\xf6\x0e\x0f\x0e\x82\x99\x3b\xb3\xdc\x99\x81\xc9\x92\xa6\x68\xef\x00\x93\x05\x65\xf4\x89\x14\xaa\xa2\xe5\x60\x86\x11\x73\x58\x29\x61\xc6\xe4\x52\xdb\xe9\x7b\xa5\x9d\xb3\x7f\x34\xdb\x1b\x1f\x04\xf0\xff\xc0\x9d\xed\xbb\x9e\x41\x0c\x77\x3c\x1e\x0e\x5d\x3f\xf0\x46\x87\xfe\x91\xe5\xf9\xde\xd0\x1a\x1e\x1d\x1c\x0e\x6b\x8f\x64\xab\x5a\x85\x23\xef\x60\x68\xb9\x0a\xec\x98\x1d\x79\x7b\xde\x21\x73\x99\x02\x6e\x0d\xc7\xe3\x03\xd6\x5a\x4d\x42\xdb\x52\x79\x16\x1c\x0d\x47\xbe\xea\x5a\x83\x2c\x07\xb0\x77\x70\x7c\x78\x14\xdc\xd9\x44\xef\xa5\xb5\xe1\xc1\xfe\x9e\x65\x1d\x7c\x6f\x8f\x96\xb5\xe7\xed\x59\x77\x36\xdf\xde\xbb\x02\x22\xfd\x9a\x63\x4c\xce\xe9\x42\x26\x91\x6f\x5d\x39\x37\x38\xf2\xbd\x3d\x40\x29\x87\x02\x3b\x1c\xce\x0c\x62\x1c\xce\xf6\x46\xc7\xfb\x62\x63\x7b\x81\x3b\xf6\x67\xae\x65\x59\x47\x47\x7b\x87\xb5\x47\xb2\x55\xbd\xc2\x78\xe4\x1e\xed\x49\xb0\xec\xd0\xdf\x67\x47\xfe\x71\x60\xf9\x7b\x12\xf8\x70\x76\xd8\x55\x4d\x42\xdb\x52\xf9\xf8\xf8\xd0\x72\x67\xb2\x6b\x1d\xb2\x1c\xc0\x81\xeb\xb2\xf1\xf0\xce\x26\x7a\x2f\xad\x0d\xf7\x2d\xcb\xda\x9f\x7d\x6f\x8f\x96\xb5\xbf\x3f\x9c\xdd\xd9\x7c\x7b\xef\x0a\x48\xb1\x72\x37\x74\x81\x66\x98\x9c\xb5\xaf\x1c\x3b\x76\xf7\xbc\x63\xb5\x06\x43\xff\x70\xec\x1a\xc4\xf0\xad\xa1\x77\x34\x0b\x86\xb3\xb1\xef\xce\x8e\xd8\xf0\x68\xbc\xef\xbb\xde\x68\x5c\x7b\x24\x5b\xd5\x2a\x78\x07\xc3\xd9\xa1\xaf\xc0\xfa\xcc\x62\x81\x40\x9d\xbe\x25\x81\xef\xfb\xc7\xa3\xd1\xb0\xb5\x9a\x84\xb6\xa5\xb2\xcf\x0e\x0f\x05\xf2\x85\xae\x35\xc8\x72\x00\xe2\x32\xdb\x1f\xde\xd9\x44\xef\xa5\xb5\xe1\x11\xb3\x86\x07\xa3\xef\xed\x71\x74\x38\xde\x1f\x1e\xdf\xd9\x7c\x7b\xef\x0a\x48\xb1\x72\x57\x74\x21\x63\x0a\xb6\xae\xdc\xf1\xf1\x11\xcb\xcf\x5c\x30\x74\xf7\xf6\xe1\xc8\xb3\x3d\xef\xf8\x78\x36\x72\x67\xfe\x28\xf0\x67\x47\xe3\x3d\x36\x1e\x0f\xad\x61\xfd\x91\x6c\x55\xab\xb0\x3f\x3a\x3c\x3a\x92\x60\xfd\x23\xdf\x65\xb3\x80\x31\x6b\x36\x96\xc0\x67\x7b\x07\x47\xd6\xb8\xbd\x9a\x84\xd6\x5d\xf9\xc8\x3a\xdc\x73\x3d\xd9\x75\x05\xb2\x1c\x80\x75\x34\x1a\xee\xdf\xdd\x44\xef\xa5\xad\xe1\xc8\x17\x87\xe6\x7b\x7b\x3c\x0c\xf6\x66\xd6\xd1\xdd\xcd\xb7\xf6\xae\x80\x14\x2b\x77\x4d\x17\xe8\x25\x26\xef\x3b\xce\x5c\x70\xe4\x8e\xd5\x1a\x8c\x0f\xdd\x63\x2f\x10\x1b\xd6\xb5\xac\x91\x15\xec\xbb\x07\x47\xa3\xe3\x91\x20\x5a\xac\x83\xc3\xe1\xcc\xaa\x3d\x92\xad\x6a\x15\x66\xa3\xe1\xd1\x68\xa6\xc0\xfa\xfe\xcc\x3b\xf4\x87\xec\x20\xb0\x24\xf0\xd1\x70\x3c\x86\xab\xb4\x59\x4d\x61\x92\xee\xca\xfe\x78\x6c\xed\xfb\xaa\x6b\x0d\xb2\x1c\xc0\xfe\xde\xf1\x9e\xb7\x77\x67\x13\xbd\x97\xd6\x86\xe3\x43\xcb\x1a\x06\xdf\xdb\xa3\x75\xb0\x67\x8d\x87\x77\x36\xdf\xde\xbb\x02\x52\xac\xdc\x27\xba\x40\xef\x31\x39\xdd\xba\x72\x81\xa4\x3b\x81\x82\xab\x2e\xcf\xcc\x15\xff\xf7\x2d\xf1\xbf\xbe\x72\xf0\xaf\x56\xa1\xb9\x24\xcc\x12\xff\x25\xf0\x7d\x5f\xfc\x6f\x5f\x39\xf8\xb7\xa5\x72\x73\x22\x64\x65\x39\x80\xa3\x43\xf1\xff\xce\x26\x7a\x2f\xad\x0d\xb7\x4f\x7d\x57\xc3\xa1\x2b\xfe\xdf\xbd\x72\x5b\x7b\x57\x40\x8a\x95\x7b\x4b\x17\xe8\x14\x93\xa7\xed\x2b\x27\x68\xeb\x83\x63\x58\x81\xe0\x78\x38\x0b\x7c\x71\xcd\xfa\x87\xc3\x63\xc1\x5c\x88\xcb\xd3\x9d\xf9\xc7\xec\x78\xe4\x1d\xce\x66\xe3\xda\x23\xd9\xaa\x51\x61\x4f\x70\x42\x12\x2c\x63\xd6\xb1\xc5\xac\x60\x2f\x38\x92\xc0\xf7\x0f\x0e\x0f\x66\xfb\xad\xd5\x24\xb4\x6d\x95\xf7\xc7\xfe\xfe\x9e\xea\x5a\x83\x2c\x07\x70\xb8\xef\xfa\xfe\xf0\xce\x26\x7a\x2f\xad\x0d\xdd\x03\xcb\x1a\x8d\xbf\xb7\xc7\xbd\xe1\xde\xf8\xf8\xe0\xce\xe6\xdb\x7b\x57\x40\x8a\x95\xfb\x40\x17\xe8\x29\x26\xcf\xef\xb3\x72\x5e\x30\xb6\xea\x2b\x37\xf6\x8f\xc7\xee\xd0\x3d\x1e\xef\x0f\xdb\x57\xae\x5e\xa1\xba\x24\x47\x62\x80\xc1\xd1\x4c\x02\x1f\xba\xc7\x47\x07\x56\x6b\x35\x09\x6d\x5b\xe5\xda\x44\xe4\x90\xe5\x00\xc6\xe3\x99\x3f\xde\xbb\xb3\x89\xde\x4b\x6b\xc3\x6d\x53\xdf\xdd\xa3\x65\x8d\x25\x69\xba\xbd\xf9\xf6\xde\x15\x90\x62\xe5\x2e\xe8\x02\x3d\xc7\xe4\xe3\x3d\x56\xee\xd8\x3f\x38\xde\x6f\x9e\x39\xdf\xdd\x1f\xcd\x8e\xf6\x66\x6e\xd7\x99\xab\x54\x38\xd8\x63\xfb\x81\xbe\x24\x82\x94\x3a\x3e\x92\xc0\xf7\x46\x47\x47\x33\xbf\xb5\x9a\xda\x8f\x5b\x2a\x37\x26\x42\x56\x96\x03\x90\xec\xf9\x9d\x4d\xf4\x5e\x5a\x1b\x1e\x33\x6b\xb8\x3f\xfa\xde\x1e\x0f\xd8\x7e\xe0\x8e\xee\x6c\xbe\xbd\x77\x05\xa4\x58\xb9\x3f\xe9\x02\x7d\xc4\xe4\x45\xc7\x3d\x27\x78\xc3\xe3\xe3\x63\xff\xc8\x3b\x1e\x79\xee\xe8\x40\x50\x28\xcc\x0f\x8e\x82\xd9\x6c\xc4\x46\x6c\x04\xa0\xf7\x47\x7b\x47\xb3\xfd\x83\xf6\x47\xd0\xca\xb2\xc6\xfe\xc8\x2b\x2a\x78\x1e\xf3\xd8\x58\x82\xfd\xae\x6a\xfb\x43\x97\x1d\x8e\x65\x77\x82\xa5\x1d\x89\x9d\x14\x1c\x06\x5e\xe0\xcb\xa1\xfe\x27\x34\x11\x43\xaa\xf3\x52\xef\xe8\x02\xbd\xc0\xe4\x75\xc7\xac\x59\xcc\x0b\xf6\x8f\xd9\xcc\xf3\xdd\xa3\xa3\x83\xb1\x7b\x58\x4e\x0d\x88\xa3\x44\x4f\xde\xf8\xe8\x68\x7f\x78\xec\x77\x3c\x12\xad\x8e\x86\x56\x70\x58\x4e\xc7\x2c\xf0\xf7\xd8\x58\x81\xfd\xae\x6a\xde\x78\x36\x1b\xca\xee\xc6\xcc\x1a\x8e\x67\xe5\x14\xc0\x50\xff\xe9\x4d\xe4\x90\xf6\x81\x92\x2e\x67\xed\x0d\x5d\xa0\xd7\x98\xfc\xd8\x35\x6b\xc1\x9e\x3f\x73\x8f\x7c\x7f\x76\xb0\xbf\xe7\x8e\x3c\x71\xd2\x03\x2b\x38\x66\x47\x33\x97\xed\xcf\xbc\xc3\x99\xe7\x79\x02\x09\x78\x33\xd6\xfa\x48\xb6\xb2\x8e\xc6\x47\x40\x4d\xca\x0a\x52\xbc\x25\xc1\x7e\x5f\x35\x36\xdb\xf3\xf7\x64\x77\xd6\xd1\xc1\xd1\x31\xcb\xa7\xc0\x92\x43\xfd\x4f\x68\x22\x86\x64\x1d\xed\x5b\x47\x1a\x25\xfa\x8d\x2e\xd0\x8f\x98\xfc\xda\x81\x5b\x19\x3b\xf2\x8e\x02\x7f\x36\x3b\xda\x67\x7b\xfb\xee\xde\x9e\xe8\x92\x05\x96\x7f\x1c\xf8\x9e\x77\xe4\x4a\xf4\x27\xd0\xfc\x30\x68\x7d\x24\x5b\xcd\xf6\x2c\xcb\xb2\xb4\x0a\xfe\xfe\x31\x93\x60\xbf\xaf\x5a\x30\x3e\xd8\x3f\x92\xdd\x1d\x1f\xe7\x95\x83\xe0\x90\x79\xf9\x50\xff\xc9\x4d\xe4\x90\x0e\x03\x68\x58\xcc\xda\x33\xba\x40\xbf\x62\xf2\xaa\x63\xaf\x79\x6c\x14\x58\xee\x78\xe6\xfb\xb3\xa1\x77\x6c\x01\xfd\x1e\x8c\x05\x63\x3e\xf3\xbd\x63\x36\x94\x4c\xd0\xff\x4f\xdb\xbb\x77\xc7\x71\x1b\x79\xc3\xff\xeb\x53\xd0\x3c\x39\xf2\x34\xd9\x6c\x57\xe1\x56\x00\x93\x79\xf5\x7a\x1d\x27\xf1\xf3\xf8\xb6\xb1\x92\x4d\x56\xcb\xe3\xe0\x52\x45\x4e\x42\xce\x28\x33\x23\xc9\x8a\xc8\xef\xfe\x1c\xa0\x67\x86\x43\x93\xb4\xad\xac\x2d\x9e\xf3\x53\x77\xa3\x0a\x28\x54\x03\x75\x99\xee\x06\x40\x79\xf4\xf1\xc1\xa2\x91\x0b\xd0\x65\x7b\xcb\x5b\xa0\x20\xbb\xb1\xda\xf7\x22\xd3\x2e\x40\x86\xb1\x39\x40\x67\xec\x56\x05\x92\x46\x51\x7f\x09\x96\x6c\x03\xa0\x71\xda\xdd\x6a\xed\xcf\xd3\xab\xc9\x1f\xba\xfe\x9f\x8f\x6a\x8d\x44\x8d\x35\xde\x4e\x43\x64\x16\x37\xaa\x86\x4c\xd3\x9a\x25\x68\xe9\xe8\xfd\xa2\xcd\x38\x37\x75\x0a\xec\x08\xf6\x05\x7d\x2f\xb2\x4d\x7f\x5a\x73\xa0\x0d\xb7\x5f\x1b\x77\x2a\x20\x51\x3f\x3f\x4b\x13\x09\x94\xf6\x76\x2f\xcb\xff\xaf\xe9\xd5\xe4\x9f\x5d\xff\xab\x47\xb4\x46\x8c\x2c\x39\x04\x93\xa9\x14\xcc\x44\xb7\x5d\xa2\x64\x8b\x2f\xe2\x6c\x82\xcc\xa8\xac\x7b\xb0\x68\xe4\x0a\x1e\xc0\xe8\x5b\x02\x93\x42\x89\x9b\x6a\xdf\x87\x6c\x7c\x1a\x33\x36\x17\x10\x40\xcb\x68\xa4\x8c\x84\x51\xd4\x9f\x9f\xa5\x89\x34\xe6\x78\xb7\x5a\xfb\xfd\xf4\x6a\xf2\xab\xae\xff\xeb\x23\x76\xad\x30\x94\x22\x31\x48\xb2\xd9\x62\x1a\xa7\x21\x73\x62\x25\x29\x99\x14\x84\x9c\x8f\x18\x19\x90\xf8\xc1\xa2\x91\x8b\x22\xe0\xa8\xf1\x91\x20\x67\x9b\x61\xac\xf6\xbd\xc8\x4a\xd1\x26\xd0\xd8\xdc\x2d\x71\x1d\x38\x7a\x23\xea\x2f\xc3\x62\x02\x80\xdb\xcb\x6e\xff\xef\xf4\x6a\xf2\xd7\xae\xff\xcf\x47\xc6\x5a\x11\x9f\x90\x24\x97\x94\x54\x26\x49\x7e\x6c\x52\x72\x8e\x58\x62\xaa\x51\x8c\xcb\x46\x29\xcb\xf1\x91\xa2\xc6\xa5\xac\x36\x2d\x4a\x1f\x09\x32\x71\x48\x66\xac\xf6\xbd\xc8\xb0\x04\xcc\x30\x36\x07\x59\x65\xbf\x25\x2e\x61\x14\xf5\x67\x67\x19\x45\x02\x8f\x65\x7f\x86\xfe\x9f\xe9\xd5\xe4\x3f\xbb\xfe\x2f\x8f\x8c\x35\x92\x9c\x42\x2c\xa5\x78\xd6\x18\xb5\xdd\xeb\x92\xaa\xa1\x21\xf9\xec\x28\x28\xed\xcd\x38\xb3\xee\x15\x8d\x5c\xbb\xd4\x6a\x24\x28\x41\x20\xea\xb1\xda\xf7\x22\x33\x18\x93\x2d\x63\x73\x00\x36\x6a\xb5\x21\x66\x3b\x8a\xfa\x0b\xb0\xb8\xf1\x89\x81\x55\x7b\xbf\x3b\xff\xf7\xf4\x6a\xf2\x97\xae\x67\x7e\x44\x6d\xd5\x25\x66\xe1\x6c\x8c\xb4\xc7\xbd\xbc\xbd\x53\xed\x19\xab\x67\xe1\x10\x54\xc8\xd9\x64\x50\x0f\x16\x8d\x5c\x21\x68\x03\x66\x8f\x80\x75\xc0\xb1\xda\xf7\x22\xe3\x4c\x80\x66\x6c\xce\x67\x55\x76\xc4\x6c\xb7\xa2\xfe\xcc\x2c\xa3\x48\xce\x29\x0b\x7b\x4e\x74\xcd\xd3\xab\x09\x73\xd7\x2f\x1f\x55\x1c\x97\x08\xc2\x49\x99\x2c\xa0\x93\xda\xb8\x6e\x49\x4a\xb8\xda\x04\x29\xbe\xe8\x3c\x3e\xf2\x7e\xb0\x68\xe4\x4a\xa5\x66\xf0\x7b\x04\x25\x90\xdb\x54\xfb\x5e\x64\xd9\xb0\x8a\x63\x73\x09\xf7\x88\x73\xde\x8a\xfa\x73\xb3\x34\x91\x3c\x34\xc6\x9d\xe2\xe6\x55\x71\x4b\xee\xfa\xd9\x23\x8a\x2b\xcc\x49\x28\x70\x8e\x8c\xba\xfd\x56\x58\xb3\x1e\x11\x2d\x92\x4a\x21\x26\x97\x22\x17\xa7\x90\x30\xd9\x07\x8b\x46\x2e\xf0\x16\x43\xde\x11\x64\x57\x12\xcb\x58\xed\x7b\x91\x19\x15\x54\xde\x34\x07\xde\x8c\x3f\x6c\xd4\x58\x42\x64\x14\xf5\x17\x60\xa9\x22\x81\xd7\xe0\xf6\x12\xab\x45\x55\xdc\x8c\xbb\x3e\x3e\xa2\xb8\x9a\xe9\x32\x44\x2c\x21\xa4\x9d\x85\xab\xe6\x94\x43\x4b\xa0\x34\x99\x6c\xb6\x29\xef\x83\x45\x3b\xd3\x75\x9b\xa0\x73\xa8\xa6\x38\x6f\xaa\x7d\x2f\xb2\x9d\xed\x19\x93\xf2\x8d\xb9\xaa\x89\x92\x1d\x45\xfd\x05\x58\x1e\xca\xe3\x57\x55\x71\x91\xbb\xfe\xf2\xb1\xa9\x0a\xf5\x2f\x95\xfa\xe7\x74\xfd\x1b\x5b\x25\xa1\xf1\xbd\x8f\xe0\xea\x9f\x55\xf5\xef\xc1\xa2\x91\xab\x95\xdb\x1d\xc1\xe6\xfd\x8b\x56\xed\x7b\x91\x91\xae\x7f\x63\x73\xb7\xc4\xe3\xbf\x26\xea\x2f\xc4\x02\x70\x37\xbd\x7a\x55\x15\x77\xc9\x5d\x9f\x1f\x1b\x71\xc2\x45\x6c\xca\xa9\x94\x4c\xd6\xa5\x84\xb5\x55\x25\x20\x94\x53\x0e\xac\x02\x87\x98\xbd\x8b\x16\xa3\x7e\xb0\x68\xe4\x6a\xcf\xe1\x64\x47\x50\x62\x89\x9c\xc6\x6a\xdf\x8b\xcc\x03\x95\x14\xc7\xe6\x4c\x44\xe3\x9b\xc1\xca\x92\xa4\x8c\xa2\xfe\xec\x2c\xa3\x48\x5a\x00\xa8\xdc\x2a\xae\x54\xc5\x65\xee\xfa\x8b\xc7\x46\x1c\x33\x14\x25\x39\x28\x52\x85\x55\x19\x2d\x2b\xb3\x2d\x41\x72\xe4\x80\x92\x5c\x34\x31\x27\xf4\x58\x1e\x2c\x1a\xb9\xa2\x05\x41\xbb\x47\x90\x52\xc4\xb1\xda\xf7\x22\x63\xd1\x49\xe5\xb1\xb9\x96\x9d\x97\x71\xf8\x58\x81\xad\xa8\x3f\x33\xcb\x28\x52\x4d\x17\x60\x4f\x71\x52\x15\x77\xc1\x5d\xff\xf2\x71\xc5\xb9\xcc\xed\x97\xd0\xc4\xce\x5a\xd8\x68\xa7\x14\x96\x92\xd8\xdb\xd1\x0d\x95\x60\xa8\x3d\xe6\xbe\x5f\x34\x72\x45\xa7\x1d\xe8\x3d\x82\x02\x51\x8d\xd5\xbe\x17\x99\xa0\x0b\xa8\x4b\x30\x1e\x70\x3f\xb6\xb0\xed\x19\x74\x13\xf5\x67\x66\x19\x45\x22\x51\x04\xe6\x56\x71\x57\x55\x71\x2f\xb9\xeb\x5f\xf3\x43\xeb\xec\xf2\xee\x03\xe4\x09\xf4\xdb\xcf\x98\x27\xd8\x73\xd7\xf5\x87\xcb\xf3\x34\x39\x3c\x7e\x88\x40\x59\xdb\xef\x2d\x47\x73\x62\x06\x6b\x4e\xf8\x68\xa2\xed\xa0\xdb\x81\xd2\x1e\x07\xd2\xf5\xd0\x19\x50\x03\xd5\x23\x02\x65\x06\x52\x27\x8a\x10\x06\x4b\x47\xdc\x8d\xff\x8e\x0f\xfb\x83\x9f\xd4\x8e\x56\x83\x09\xc7\x7c\x34\x41\x82\x81\x74\x3d\xb2\x6a\xf0\xaa\x56\x8e\x1a\x07\xe3\xda\x11\xb9\xc1\xfa\x13\x47\x83\xfe\x37\xda\xf0\x38\x28\x53\x6b\x36\x46\x0d\xba\x55\xa8\x8c\x57\x83\x19\x3b\x83\x8e\x06\xd5\xba\xe8\x1c\x9a\x21\x98\x13\x65\xc8\x0e\x6e\xbf\xa5\xee\xf0\xa6\x3f\xe7\xe9\x72\x42\x5d\x9f\xea\xff\xa1\x7b\x92\x17\xf3\xd5\xfa\xe0\xed\x46\xdf\x5f\x7f\xf6\x11\x7a\xe8\xbf\xe5\x29\x7a\xf8\x68\x73\x69\xdc\x48\x92\xa7\x38\x90\x57\x44\xfd\xa7\x3c\x3d\x19\x54\x50\x8a\xfa\xef\xea\x61\x00\x67\x42\xff\x55\x25\x08\xa4\x82\xe9\xbf\xe1\xe9\x57\x7c\xf4\x1d\xf7\xcf\xdb\xc1\x1b\xee\xbf\xe0\xe9\x1b\x3e\xfa\x94\x4f\x0e\x4e\x86\x6a\xb2\xf0\xe8\x3b\xbe\xfd\x1a\xf2\xe3\xed\xfa\xdb\x7c\xb0\x5d\x4e\x63\x21\x07\x9f\xec\x3e\xee\xaf\x13\xeb\x13\x9e\xf0\x70\xd1\xf3\xb0\xea\x79\xb8\xec\x79\x58\xbc\x8c\x79\xb6\x7e\xdb\x3d\xb9\xc3\x94\x78\x48\xd7\xd7\x93\xed\xfa\xba\x93\xc4\xc3\x79\x37\xe1\x6e\xbb\x96\x20\x0f\xcb\x8f\xaa\x62\x97\x53\x1e\xce\xdb\xd1\x7c\xca\x43\x6a\x47\xb3\xe9\xe4\x0b\x3e\x9a\x1f\x7f\xc3\x47\xeb\x93\xe7\x7c\xb4\xec\x3e\x9a\x7c\xc1\xc7\xdf\xf0\xc9\xf3\xb6\xd2\xc4\xfc\x64\xd6\xc7\xe9\xe4\x2b\x3e\x9a\x2c\x4f\x66\xdd\xc9\xa7\x7c\xb4\xe8\x3e\xfa\x8e\xfb\xd5\xa8\xbc\xd5\x3f\x97\xeb\x49\x3c\x8a\xc7\x8b\x7a\xbd\xd2\xcd\x8e\x26\x78\x32\xeb\xba\xfe\x72\xba\x7a\xd6\x68\xe2\x3a\xce\xd5\x24\xf6\x8b\xee\xe8\x5b\x3e\x41\x05\xa7\x5f\xc6\x2f\x9f\xdc\xed\xe7\xe5\x6f\xe0\xd9\xe5\xb1\x76\x70\x7a\xd9\xaf\xfa\xd9\x5e\x5f\xf7\xf6\x44\xe4\xdb\xa5\x11\x36\xdc\x38\x9d\x4e\xe3\xf2\xfc\xd5\xf8\xb5\xed\xf8\x3e\xe3\xb3\xa6\xda\xd3\xad\x02\x47\x8e\xf6\x59\xf8\xfc\x19\x9e\xce\xf7\x2a\xfc\x64\xaf\xc2\xf5\xc5\x6c\x35\x5c\x4c\x8f\xb9\x6f\x47\xab\xe9\xf1\x7a\x3c\xba\x9c\x1e\x2f\xc7\xa3\x8d\x44\xd3\xe3\xf9\xcd\x46\xd3\xe7\x3c\xc4\x6e\xf2\x09\xf7\x5f\x6f\xf7\xa1\xaf\x97\x52\x57\x6f\x41\xec\xdf\xa5\xf6\x05\xeb\x9d\x65\x39\xf6\x26\xfb\x66\xe1\xcc\x67\x89\x87\x7c\xda\x14\xf5\x72\xf1\xa6\x72\xe6\x9e\x6b\x04\xde\xc4\x1f\xc5\xda\xc8\xb4\x11\xe8\x88\xef\xc8\xd3\xdd\xf4\x25\x2e\xff\xf1\x13\x9a\x29\x77\x9a\x29\xef\xdd\xcc\xf2\x3c\xdd\x5f\xad\x67\xb6\xfa\x32\x7e\xb9\xa9\xa0\x7b\x06\xa7\x9b\xc3\x63\x54\xd0\x1d\xbd\xe5\x7e\x3d\x3d\x1e\xeb\xeb\x97\xfb\xb4\xab\x4a\x3b\x1e\x1d\xad\xeb\x90\x69\xef\x57\x37\xf9\xf2\x62\x35\xa9\xa9\xc7\x66\x84\xcd\x6a\x7f\xf6\x87\x4b\x1d\xef\xd5\x52\x1c\x4d\xd6\xc7\xcb\xa3\xc9\x76\x76\xcd\x8f\xdf\xf0\x51\x1d\x78\xb7\x45\x9f\xd6\xa1\xfd\xdd\xf7\xaf\x7e\xc5\x47\xf3\xae\xfb\x5e\xe7\xb6\xef\x85\xff\xa3\xda\x08\xbf\xb7\x68\xe3\x1f\xf9\x81\x35\x3a\x0e\xd6\x93\x65\xf7\x6e\xff\xfb\xf3\x7e\xbe\x5b\x4e\x7b\x32\x59\x4f\xbf\xe6\xc9\xba\xeb\x86\x8b\x7e\x32\xaf\xc7\xf3\x7a\x5c\xe7\xd3\x66\x94\xfc\xa3\x0d\x9c\xf5\xb0\xea\xe7\xc3\xaa\xeb\xe3\xf7\xaf\x5f\xf6\xf3\xe1\xf2\x76\x75\xca\xdd\xf5\x8d\xb8\xfd\xfc\xd6\x14\x3c\xbe\xa0\xc8\x7a\xb8\x98\xce\xaa\x26\xd7\xc3\x6a\xba\x18\x0f\x2e\xa7\x71\xb2\x1b\x04\xdc\x2f\xdb\xd6\x11\xdb\x81\xdd\xd4\xbe\x3e\x3e\x3c\xbc\xd9\xae\x94\xb8\xac\x83\x7f\x3e\x9c\xc7\xab\xab\x38\x5d\xf7\xf3\x9b\x09\x76\x37\x7f\xe4\x2a\x4f\x1e\xf5\xf5\x77\x9e\x8e\xe7\xb1\xeb\x7f\xcb\xd3\xbf\xf3\xe4\x6b\x9e\x68\x80\x7e\xb0\x3d\x74\xfd\xd7\x3c\x39\x51\xa6\x9d\x61\xd7\xf5\x5f\x6e\x29\x4e\xb0\x92\x90\xed\x07\x6d\x1b\x95\x87\x1e\x07\xdb\x0f\xbe\xeb\xfa\xcf\xb6\x54\xca\x3d\x4e\xf4\x39\x57\xc5\x76\xfd\xef\xee\xfa\xd2\x09\xff\x06\xae\xaf\xf9\xff\xc3\xee\xe9\xd3\x09\x9f\x8c\x63\x48\x2e\x17\x8b\xe5\x9e\x45\x1c\xcd\x52\x5a\x4d\xf8\x64\xb0\x3b\x15\x7e\xce\xc3\xc5\x54\x3b\x38\xe2\x26\xdd\xe7\x3c\xac\xa6\x38\xd8\x13\x1c\xec\xd1\xba\x9e\x5e\x4e\x07\x7f\x32\x84\x76\x52\xb5\xd4\xff\x6b\xdf\xe6\x4a\x37\xe9\xfa\x3f\xdd\x3a\x15\xdd\xff\x07\x4f\xd5\xd1\xed\xe9\x1f\x1e\x58\x04\x7e\xb7\x56\xdf\x74\x32\xd8\x13\xee\xb6\xe4\xfd\xbf\x78\x58\x4e\xc7\x31\xbb\x3f\x0f\xba\xa3\x75\x2d\x3a\xbf\x5f\x74\xfc\xa7\x5d\x69\x7a\xa0\xf4\x3f\xb6\xa5\x4d\xf0\x3f\xff\x82\x01\x88\x36\x83\xc3\x16\x18\x20\xa9\x41\x37\x57\x8d\x40\x41\x0f\xb6\x79\x70\xad\x35\xc0\x80\x2d\x50\xd0\x5e\x07\x33\x98\x70\x82\xc6\x2b\x3b\x80\x7d\xff\x18\x41\xe9\x41\xb7\xe6\xac\xa5\x41\xb7\x38\x04\x95\xb2\x9b\x86\xb5\x25\x33\x04\xb7\x91\x41\x0f\x44\xc7\x04\x34\x58\xf7\x6f\x34\x44\x83\xaa\xb5\x6b\x85\x38\x60\xab\xd1\x6a\x45\x43\x68\xf1\x94\x22\x8f\x63\xb4\xa5\xac\x0b\x03\xfa\x13\xe7\xb5\x1f\x9c\xbb\x1b\x8b\xdc\xda\x95\x7f\xde\x59\x6f\x6f\x74\x5d\xf7\x26\xf3\x72\x6f\x29\xf1\x87\x44\x5c\x9f\x60\xbf\x37\xc2\x97\x47\xeb\xae\xeb\xce\xc6\x15\xf9\xfe\x8b\xa7\xff\xe4\xc9\x7c\x72\x68\x0c\xa0\x35\xc6\x80\xb2\xce\x58\x30\x96\x8c\x05\x6b\x83\x71\x40\x36\x1a\x07\xde\x66\xe3\x20\xda\x62\x1c\x24\xcb\x86\xa0\x38\x30\x04\xec\xd0\x10\x82\xd3\x86\x10\x9d\x31\x84\xda\x59\xe3\xd1\x38\x32\x1e\x9d\xf3\xc6\x23\xb9\x60\x3c\x7a\x17\x8d\xc7\xe8\xb2\xf1\x98\x5c\x31\x1e\xb3\x63\xe3\xb1\x38\x31\x1e\x85\xc0\x78\x05\x54\x6f\x32\x92\x36\x5e\x69\x32\xc6\xd7\x60\xad\xde\x76\x72\xc6\x2b\x47\x64\xbc\xf2\xe4\x8d\x57\x81\x82\x21\x15\x29\x1a\x52\xb9\x61\xa1\x64\x48\x31\x65\x43\x4a\xa8\x18\xa7\x81\xd8\x38\xad\x1a\x6a\x12\xe3\xb4\xf1\x60\xac\xb6\x1e\x8d\xd5\xd4\xd0\x7b\x65\x8c\x0e\x5e\x1b\xa3\x63\xc3\xe4\x8d\xd1\xba\x34\x64\x6f\x8d\xd2\x52\xd1\x80\x77\x46\x19\xf4\xce\xa0\x51\x9e\x0c\x1a\xe3\xc9\x80\xb1\xde\x1b\x30\xce\x7b\x2d\x86\x1a\x7a\x1f\x34\x9b\xd0\x30\x36\xcc\x3e\xea\x62\x4a\x43\xf6\x51\x67\x23\x15\x2d\xf8\xa4\x93\xc5\x86\xca\x27\x1d\xad\x6e\x68\x7c\xd6\xc1\xda\x86\xce\x67\xed\xad\x6f\x18\x7c\xd6\x64\x63\xc3\xe4\x8b\x76\x36\x37\xac\xc9\x85\xb5\xdc\x50\x7c\xd1\xf5\x86\x55\x44\x5f\xb4\x76\xaa\xa1\xf6\x45\x2b\x67\x3c\x6b\xe5\xac\x67\x5d\x6f\x4e\x45\x6a\xe8\x3d\x6b\x70\xa1\x61\xf4\xac\xc4\xa5\x86\xd9\xb3\x62\x57\x1a\x72\x43\xf1\xac\x0a\x41\x43\xf4\xac\xf2\x06\xdb\xe7\x27\xa4\x3d\xab\x44\xa6\xa1\xf5\xac\x22\xb9\x86\xd4\xd0\x7b\xae\x77\xae\x61\x6c\x58\x5b\xf1\x94\x1b\xd6\x56\x88\xb8\x61\x6d\x85\x7c\x6d\xc5\x79\x6c\xa8\x76\x68\xbd\x6e\x68\x1a\xd6\x56\x8c\x77\x0d\x6b\x2b\xda\xfb\x86\xa1\x61\xf4\x45\x29\x9f\x1a\xe6\x86\xc5\x17\x85\x9e\x1b\x4a\xc5\x00\x0d\x6b\x0e\x07\x41\xed\xa1\xf6\x19\x25\x98\x86\xd6\x27\x94\xe0\x1a\x52\x43\xdf\x30\xf8\x88\x12\xa2\x8f\xc8\x21\x35\xcc\x3e\x20\x87\xe2\x03\x4a\xe0\x86\xe2\x3d\x4a\x84\x86\xb8\x41\x42\x89\xca\x93\x82\xa8\xbd\x53\x10\x8d\x77\x0a\xa3\xf5\x56\x61\x74\xde\xaa\xaa\xac\x8a\xde\x1b\xa5\x63\xf0\x5a\x99\x18\xbd\x56\x36\x26\xaf\x94\x8d\xd9\x2b\xe5\x62\xf1\xa8\xa8\xa1\x8f\xec\x41\x85\x28\x24\x2a\x26\x20\x51\x39\x21\xb1\x2a\x49\x51\x51\x9c\x34\x65\x25\xc9\x50\xd6\x98\x2c\x25\xad\x92\xa3\xa8\x4d\x72\x14\xb4\x4d\x44\x41\x53\xf2\xe4\xb5\x4f\x81\x48\xc7\x14\xc9\xe9\x94\x12\x59\x5d\x52\x26\xa3\x25\x65\xd2\x06\x52\x21\x65\x54\x62\x42\x63\x52\x9d\xb3\x2e\x43\x9d\xbf\x19\x1d\x9b\x98\xd1\x15\x93\xb3\x72\xd9\x70\xd6\x2e\x59\xc8\xc6\x45\xab\xb2\x75\xc1\x9a\x6c\x9d\xb7\x2e\x3b\x47\xd6\x67\x72\xb6\x76\xc2\x19\x9b\xb3\x77\xda\x72\x0e\x4e\x39\xc8\xd1\x81\xd3\x39\x59\x71\x36\x27\xcb\x8e\x72\xb6\xd9\x85\x5c\x6c\x72\x39\x17\x1b\x1d\x67\xb6\x9e\x20\x8b\x25\xd2\x05\xac\x23\x5b\xc0\x1a\xa2\x82\x56\x53\x2c\x68\x91\x72\x51\x16\x48\x8a\x36\xec\xb1\x68\x53\xbc\x29\xc6\x24\xef\x8a\xad\xf3\xb2\x58\xe3\x7d\x2a\xce\x38\xcf\xc5\x19\x1b\xa0\x90\xd1\x41\x17\x32\x18\x6c\xf1\x06\x82\x2f\x5e\x73\x48\x25\xe8\x1c\x4a\x09\x3a\x45\x28\x51\x87\xa8\x4a\xd4\x14\x6d\x49\xda\x45\x5f\x92\x36\x31\x96\xac\x55\x2c\x25\x6b\x48\x50\x8a\x92\xa4\x4a\x51\x25\xd9\xc2\x2a\x25\x5f\x58\x85\x14\x0b\x2b\x9f\x4a\x11\xe5\x32\x14\x51\x36\xab\x22\x4a\x67\xcb\xa0\x30\x7b\x06\x05\x39\x32\xa2\xe4\xc2\x88\xa5\x00\x23\xe6\xa2\x58\x61\x2a\x96\x15\xc6\x3a\x35\x30\x94\xc8\x1a\x43\x29\xac\xd1\x17\xa9\xc8\x8a\x0d\x7a\xb6\x6c\x30\x30\x35\x8c\x6c\x31\x56\x25\x61\x62\x61\x8b\x59\x90\x2d\x16\x31\xec\x90\xc5\xb1\x53\x20\x9e\x9d\x42\x49\x4c\x4a\x4b\x61\x52\xf6\xb0\xeb\xfa\x5f\x6d\x9d\x41\xfb\xf5\xd0\x00\x02\x80\x05\x04\x04\xd7\xd0\x83\x02\x84\x00\x0a\x14\xa4\x86\x05\x34\x68\x90\x8a\xa8\xc0\x80\x41\x03\x16\x0c\x3a\x70\x60\xd1\x37\x8c\x40\xe0\x30\x83\x07\x42\x86\x00\xa4\x00\x22\x78\x55\xeb\x08\xca\x40\x86\xa0\x1c\x14\x88\x2a\x00\x43\x52\x09\x01\x92\x2a\x88\x90\x95\xa0\x82\xa2\x11\x35\x14\x5d\xeb\x66\xed\xd0\x02\x6b\x8f\x0e\x44\x27\xf4\x20\xba\x60\x40\xd0\x82\x11\xc1\x28\xcc\x08\xc6\x60\xc1\xea\x94\x18\xd1\x04\x05\x88\x26\x29\x44\x34\xac\x14\xa2\x05\x65\x50\x59\xad\x2c\x2a\x6b\x15\xa1\xb2\x5e\x05\x44\x1b\x55\x44\xb4\x59\x65\x44\x2b\xb5\x7d\x87\x4a\x10\x9d\xd6\x88\xe8\xac\xd6\x08\x8e\xb4\x41\x70\x41\x3b\x04\x97\xb4\x47\x70\x59\x07\x10\xc7\x3a\x81\x10\xe8\x02\x42\xa8\x05\x84\x94\x01\x10\x32\x46\x81\x90\x35\x06\x84\x9c\xb1\x08\x44\xd5\x59\x92\x37\xa1\x61\xac\x31\x8f\xc9\x88\x14\x0d\x23\x52\x32\x82\x8a\x92\x45\x54\x94\xad\x42\x4d\xd9\x1a\xd4\x54\x6c\xf5\xb2\xc5\x12\x5a\x62\x1b\x1a\x46\x74\xc4\x36\xa3\x23\xb1\x05\x89\xc4\x0a\x7a\x12\x07\xe8\x3d\x38\x85\xc1\x83\x33\x18\x3d\x38\xdb\x90\x30\x79\x70\x1e\xb3\x47\x17\x1b\x26\x2c\x1e\x5d\x69\xc8\xc8\x1e\x09\x50\x3c\x92\x6a\xa8\x15\x78\x24\xab\xb0\xfa\xef\x86\x5e\x29\x8f\x14\x94\xf2\x8a\x92\xd2\x5e\x51\x6e\x58\x0d\xaf\xf2\x50\x15\xe9\xab\x3a\xd1\xeb\x66\xb4\x4d\x43\x57\xa3\x1e\xef\x1b\x06\xe5\x3d\xfa\xa4\x82\xaf\xc6\x36\x34\xc3\x1e\x3d\x06\x68\x88\x2a\x79\x0c\x5a\x25\x0f\xc1\xa8\xec\x21\xb8\x86\x5e\x15\x0f\x21\x34\x4c\x8a\x49\x42\x6e\xc8\x4a\x48\x22\x34\xc4\xea\xec\xa3\x6e\x68\x35\x12\x47\xa7\x91\x4a\xb5\x98\x54\x62\xd4\x9a\x4a\x4c\x5a\x53\x8e\x45\x1b\xca\x91\xb5\xa1\x94\x40\x5b\x4a\x49\x35\xd4\xda\x51\x4c\xb6\x21\x69\xa2\x90\x7c\xc3\xa8\x3d\xf9\x94\x75\xb5\xfa\x45\x07\xa2\x24\x3a\x12\x65\xd0\x91\x5c\x56\x3a\x91\xcd\x46\x67\xb2\xd9\xea\x4c\x26\x93\x2e\xa4\xb3\xd7\x4c\x3a\x47\xcd\xa4\x72\xd6\x42\x98\x8b\x01\xc2\x2c\x06\x08\x4a\x9d\x22\x52\x94\x51\xae\x9a\x28\xed\xb8\x58\x63\x5c\xa9\xa6\xc8\xe5\xe2\x1b\x06\xe3\x5c\x2a\xc9\x90\x8b\x25\x1b\xef\x42\x61\x13\x9c\x2f\x62\xa2\xf3\x0c\x26\xbb\xaa\xf8\xe2\x1c\x6b\xc3\xce\xb2\x31\xe2\x0c\x5b\x0b\xce\x30\x59\xe5\x6a\xec\xa2\x9d\xe2\x60\x8d\x53\x1c\xad\x73\xc8\xc9\x92\x03\xce\xd6\x3b\xe0\x62\xa3\x15\x66\x9b\x2c\xb3\xd8\x62\x59\xc0\x8a\x65\x41\x07\xb6\xda\x29\xd5\xd0\xd8\x2c\xda\x59\x9b\xc5\x38\x6a\x18\x6c\x16\xeb\x92\xcd\xe2\x5c\x6e\xc8\x36\x0b\x11\x34\x54\x36\x8b\x27\xd3\xd0\xd9\x5c\x7d\xa5\x2d\x12\x28\x34\x4c\xb6\x48\xa4\xda\x56\xa4\xda\x56\xf4\x68\x45\x92\xd7\x0d\xad\x03\x49\x9e\x1c\x4a\xf6\xa1\x61\x74\x4a\xb2\xcf\x4e\x4b\xf6\xec\x8c\xe4\x00\xce\x4a\x09\xca\x39\xa9\x0a\x22\x29\xc1\x39\x2f\x25\x78\x17\xa4\x84\xe8\xa2\x94\x90\x5c\x12\x0e\xc5\x65\xe1\x20\xae\x08\x47\x74\x2c\x1c\xb5\x13\xe1\x68\x09\x85\x23\x91\x12\x8e\x81\xb4\x70\x8c\x64\x84\x63\x26\x27\x1c\x99\x48\x38\x01\x79\xe1\xa4\x28\x0a\x27\x43\x49\x38\x39\xca\xc2\x89\x88\x85\x53\x20\x11\x4e\xc9\xa3\x70\x2a\x5e\x09\x27\xf1\x46\x38\xa3\xb7\xc2\x59\x79\x12\xce\xc6\x7b\xe1\xec\x7c\x14\xce\xde\x67\xe1\x1c\xab\xc5\xce\xd9\x8b\x70\x2e\x01\x84\xb3\x04\x25\x5c\x30\x18\xe1\xa2\x83\x15\x2e\x36\x90\x70\xa1\x10\x84\x8b\x0f\x51\x4a\x89\x21\x4b\x7b\x5e\x21\xa5\x70\x04\x29\x0c\x11\xa5\xb0\x8a\xd5\x70\xeb\x68\xa5\xb0\x8d\x54\x8d\x78\x0c\x52\x38\xc4\x28\x85\x53\xcc\x92\x39\x47\x96\xcc\x9c\x40\xb2\x40\x52\x92\x45\x25\x23\x59\x4c\x72\x92\x6b\x7c\x27\x59\x28\x05\xc9\x12\x52\x92\x2c\x29\x15\x69\xdf\x6c\x57\x67\xf0\xfb\x9f\xe4\x0c\x62\x73\x03\xb9\x21\x83\x06\x85\x95\x76\x74\x06\x7a\xe3\x0c\x08\x1c\x18\x0c\x40\x60\x31\x81\x07\x8b\x05\x02\x38\x14\x88\x40\xcd\x0d\x50\x73\x03\xbe\xb9\x01\xdf\xdc\x40\x68\x6e\x20\x34\x37\x10\x35\x60\x0d\x93\x14\x1a\x48\xda\xa0\x85\xa4\x09\x1d\x24\x1d\xd0\x43\xd6\x19\x03\x64\xcd\x98\x20\x1b\xc4\x0c\xd9\x68\x64\xc8\xc6\xa2\x40\xae\xd9\x04\x64\x13\x95\x86\x6c\x72\x6d\xc7\x48\x0d\x33\x2c\x2a\x0f\xc9\x6a\x15\x20\x59\xab\x12\x24\x4b\xaa\x40\xb2\x41\x09\x44\x9b\x34\x42\xb4\x59\x2b\x88\x96\xb5\x81\x68\x45\x3b\x08\x0e\x75\xb3\x4a\x3a\x40\x70\x5a\x27\x08\xce\xe8\x02\xc1\x59\xcd\x10\x9c\x33\x00\xd1\x91\x51\x10\x9d\x37\xa6\xa1\x85\xe8\x82\x21\x48\x2e\x9a\xd0\x30\x42\x76\xc9\xe4\x86\x05\x8a\xcb\x46\x2a\x5a\x04\x76\xd9\x2a\xe0\x1a\xa4\x80\xb8\x62\x6d\xc3\x9a\x5d\x55\xa3\x5f\x31\x22\xd6\xe9\x86\xca\xb1\x2d\x0d\x05\xb5\x63\x87\x0d\x15\x1a\xc7\xce\xa0\x75\xec\x6c\x43\x42\xe7\xd8\x85\x86\x11\xc9\xb1\xcb\xe8\x1d\xbb\xd2\x50\x30\x38\x26\x6c\x58\xc3\x4e\x26\xd3\xd0\x62\x72\x4c\x84\xd9\x15\xf2\x0d\x23\x16\x57\x28\x37\x2c\xc8\xae\x90\x20\xbb\xec\x01\x6b\x86\xa0\x14\xb8\xec\x8d\x02\x97\x6a\xfc\xea\x92\xa7\x86\x2d\x44\xf5\xb1\x61\x56\xda\x05\x5f\x1a\x8a\x32\x2e\x84\x9a\x6a\xfa\xa0\x1a\x6a\xe5\x1c\x05\xdb\x90\x14\x39\x17\x7c\xc3\xa8\xbc\xb3\x21\xa9\xe0\x4c\x28\x0d\x45\x45\xa7\x23\x34\x54\x2a\x39\x15\xb5\xca\x0e\x6b\x90\xe9\x20\x3a\x55\x1c\x44\xaf\xd8\x4a\x0c\x8a\x2d\xc7\xa4\xc4\x72\x2c\x1a\x6c\x0d\x9e\xc0\xe6\x04\x1a\x6d\x4a\xd8\x42\x69\xdd\xd0\x68\x6d\x43\x72\xda\x58\x9f\x48\x5b\x4b\x29\x68\x6b\x5d\x8a\xd5\xf2\xa5\x9a\x6b\x99\x54\xb4\xb7\x3a\x89\x0e\x56\x55\xd3\x6f\x31\xa3\x8e\x16\xb2\xd6\x75\x4e\x19\x5d\x23\x5e\x57\x73\xbc\x4c\x35\xdf\xcb\x35\x0f\x4c\x39\x1a\x30\x31\x27\x83\x26\xe4\x6c\x94\xf1\x99\x4d\xf5\x3f\x62\xaa\xbd\x07\x63\x8d\x2d\xca\x38\x63\xaa\x57\x32\xba\x18\xe3\x8d\x2a\xd6\x44\x83\x85\x4c\xd2\x52\xbc\xc9\x9a\x4b\x30\x45\x97\x12\x0d\xeb\x5c\x92\x05\x9d\x4a\xb1\xa8\x63\x61\xab\xb4\x2f\x62\xb5\x26\x06\x6b\xb5\x63\xb4\x35\x98\x56\x96\xb4\x61\x6d\x83\xd6\x6c\x6c\xd4\xc8\xd6\x66\x0d\xec\x6c\x51\xc2\x64\x59\x31\x7b\x07\xaa\x70\x70\xa8\x52\xf5\x96\x2a\x72\x72\x46\x05\x4e\xce\x29\xcf\xd9\x91\x72\x5c\x5c\x50\x96\xd9\x45\x65\x58\xaa\xb7\xab\x01\xa4\x42\x01\x27\x0a\x04\x09\x51\x04\x49\x63\x11\x45\x06\xb3\x68\x72\x98\xa4\xa6\xd6\x41\x0c\x05\xf4\x62\x29\x21\x89\xad\xc1\xb9\x38\x62\x34\xe2\x3c\xa0\x16\xf2\x0a\x95\x90\x37\x08\xe2\xbd\x05\x11\xef\x09\x58\xbc\x0f\x90\x25\xf8\x04\x49\x82\xcf\x10\x25\x78\x86\x20\x31\x00\xf8\x7a\x53\x81\x24\x06\x03\x24\x29\x38\x70\x92\x02\x35\x0c\x0d\x53\xc3\x02\x24\x39\x48\xc5\x88\xe0\x25\x47\x0d\x41\x72\xb4\x10\xa5\x26\x18\x59\x72\xf4\x50\x24\xc7\x08\x22\x39\xe6\x1a\x78\x47\x46\x25\x39\x01\x1a\xc9\x49\xa1\x93\x7a\xdb\xbc\xa4\xe4\x30\x4a\xb5\xf6\x45\xda\x63\x50\x49\x29\xd7\xd8\x39\xb1\xd2\x12\x33\x28\x27\x31\x2b\xe5\x25\x66\xa3\xa2\xc4\xec\x54\x91\x90\x49\x89\x84\x1c\xb4\x92\x90\x93\xb6\xe2\x73\xd1\x24\x3e\x8b\x8e\x42\x05\x75\x11\x2a\x7a\x9c\xe6\x46\x8b\x2b\x64\x9c\xd8\x12\x4c\x10\x5b\x92\xc9\x62\x4a\x31\x22\xa6\xde\x5b\x31\xf5\xae\x8a\x66\x6d\xa3\x68\xb6\xd5\x31\xb3\x73\x28\x8a\xbd\xb3\xa2\x38\xba\x20\xc8\xd9\x15\x41\x2e\x84\x82\x2c\x64\x05\x05\x29\x88\x12\x45\x45\x94\x18\xaf\x44\x8b\xf5\x4e\xb4\x54\xb7\x64\xc4\x7b\x6e\x9f\x8b\x28\x71\x12\x83\x13\x2f\x29\x44\x09\x92\x43\x91\x28\x25\xa2\x64\x91\x68\xaa\x33\xf8\xeb\xce\x19\x14\xf0\x9e\x10\x80\xbc\xaf\x21\x97\x0f\xe8\x80\x7c\xc4\x00\xce\x67\x4c\xe0\x7c\xc1\x02\x35\x19\x07\x70\x5e\xaa\x65\x08\xa0\x0c\xb8\x80\xca\x81\x0d\xd5\xec\xda\xa0\x54\x04\x1b\xb4\xca\x60\x83\x51\x0c\x36\x58\x25\x60\x83\xd3\x08\x36\x90\xd6\x0d\x2d\x98\xe0\x35\x81\x09\x41\x7b\x30\x21\xea\xd8\x30\x83\x09\x49\x33\x98\x90\xb5\x54\x34\x08\x26\x14\xa3\x41\x07\x36\xa6\xa1\x03\x1d\xc4\xf8\x86\x01\x2a\x63\x02\x1d\xd1\x64\x50\x11\x0d\x83\x8a\xca\x42\x43\x04\x15\xb5\xd5\x0d\x2d\xa8\x68\xac\x03\x8c\xc6\xfa\x86\x01\x30\x5a\x9b\x1a\x66\xc0\xe8\x2c\x57\x74\xd0\x10\x01\x6a\x9e\xdc\xd0\x34\x74\x0d\x09\x20\x7a\x17\x1a\xc6\x86\xb9\x21\x37\x94\x8a\x55\x89\xb1\xe6\xff\x18\x3d\x99\x86\xb6\x21\x35\xf4\x0d\xab\x9d\xf3\x94\x1a\x16\xd0\xd1\x13\x57\xf4\x00\x26\x7a\x8f\x60\x22\x79\x0d\x36\x92\x37\x0d\x1d\xb8\xe8\x3c\x01\x45\xe7\x3d\xf8\xe8\x7c\x84\x10\xad\x4f\x10\xa3\xf5\x05\x52\xb4\x9e\x21\x47\xe3\x05\x4a\xac\x49\x08\x47\x1d\x14\x48\xd4\xc1\x60\x4d\xc1\x2c\x62\xc4\xea\xe7\x22\x06\x8f\x26\x42\x08\x68\x83\x84\x88\x2e\x48\xc8\x48\x81\x43\x41\x1f\x4a\x60\x0c\xa1\x44\xc0\x18\x72\x44\x4c\x21\x45\x85\x25\xc4\x6a\x6b\x42\x8c\x16\x25\x84\xe8\x14\x04\x1f\x49\x61\xa0\xe8\x95\x0a\x2e\x46\xa5\x83\x8d\x49\x99\x60\x62\x56\x2e\x98\x58\x14\x05\x1d\x59\xf9\xa0\x12\xa8\x10\x30\xa1\x8a\x01\x92\x52\xc9\x4b\xd2\x2a\x7b\x4e\x46\xb1\x2f\xc9\x2a\xf1\x39\x39\x0d\x3e\x25\xd2\xe8\x63\xf2\x5a\xf9\x1a\xa1\x6b\xef\x53\xd2\x35\xa7\xcf\xda\x7a\x4a\x45\x93\x77\x89\xb5\xf7\xb6\x9a\x6c\x6f\xaa\xc9\xf6\x3a\xa3\x4e\x5e\x65\xa5\xb3\xc7\xac\x75\xf1\x35\x56\x60\x92\x6c\x0d\x10\x67\x67\x90\x4a\x26\xa3\x28\x67\x6f\x34\xa5\x1c\x8c\xa1\x98\xa3\xb1\x54\x8d\xb8\xa3\x6a\xc4\x89\x7c\xce\x26\x10\xe5\x62\x6a\x06\xc0\x26\xb5\xc0\x38\x93\x29\x60\x0a\xe9\x82\x86\x49\x15\x65\x84\xb0\x68\x8b\x84\xc5\x58\x45\x50\xaa\x7d\x96\x62\xad\xa9\x76\xd5\x5a\x57\x0a\x59\x57\xe3\x7d\x4b\x2e\x95\x60\xbd\x8b\x25\xda\xd8\x30\xb9\x50\x92\xcd\xce\x97\x6c\x8b\xa3\x52\x2c\x3b\x57\xd8\x8a\xb3\x85\x1d\x3a\x53\xc4\xd5\x18\x1f\x9c\x76\x9a\xd1\xd5\x18\x5f\x39\xeb\x90\x95\x73\xae\x26\xca\x35\x18\xad\xd1\x3a\xb3\x75\xd1\x16\xae\x31\x7b\xe1\x16\xb3\x33\x39\xb6\x89\xc9\x89\x8d\xec\x09\x6c\xe0\x40\x68\x3d\x07\x52\x96\x38\x92\xb1\xc4\x89\xac\x75\x9c\xc8\x59\xcb\x99\xc8\x9a\x1a\x98\x5a\xcd\x85\xa2\x55\xcc\x35\x4b\x65\xa1\xdc\x90\x2d\x54\x6b\x6b\x44\xc0\x83\x61\x41\x8f\xa6\x08\x7a\x6d\xb2\x28\x6f\x4c\x12\xed\x6d\x43\x32\x51\x8c\xf7\xa6\x4e\xce\x60\xbc\x58\x9f\x0c\x89\xf5\xd9\x38\x71\xbe\x18\x2b\xce\x8b\x31\x42\x01\x1a\xa2\xd1\x42\x41\x1b\x25\x3e\x18\x83\xe2\x43\x8d\x8d\x42\x0d\xdc\x25\x04\xaf\xb9\x0e\x33\xcd\x12\x43\xd2\x45\x62\xc8\x3a\x4b\x0c\xac\x93\xa4\x50\x4d\x6d\x8a\xa8\x83\xa4\xa8\x74\x73\x03\x0d\xad\xae\x8e\xc1\x69\x57\xdd\x80\xb6\x92\x63\xd0\x46\x5a\x7e\x28\x25\xe6\x86\xac\x95\x94\x28\x1a\xa5\x24\xd4\x20\x25\x29\x25\x52\x92\x69\x68\x55\xcd\x03\x48\x15\xe1\x3a\xa0\x84\x53\x6c\x98\x54\xcd\x15\x8a\xaa\x79\x03\x57\xcc\xa0\x82\x94\xac\x1a\x6a\xe5\xa5\x64\xab\x48\x4a\x76\x0d\x7d\xc3\x58\xd3\xc0\x9c\x94\x93\x9c\x8b\xb2\x92\x33\x57\x2c\xd0\x50\x29\x2b\xa9\x68\x65\x24\x15\xdb\x90\x94\x91\x58\x7c\xc3\xa8\x8c\x84\x92\x1b\x56\x5e\x5f\xa4\x22\xa3\xb2\x42\xac\x1a\x1a\x65\xdb\xcf\x3e\x4e\x1c\x7b\xe5\xc4\x72\x68\x98\x14\x89\xe1\xa2\x48\x34\x73\x45\x01\x45\xd5\x61\x28\x12\x94\x9a\x9c\xa2\x58\x65\xc7\x9f\x33\x04\x24\x28\x3c\xec\xba\xf7\x5a\x19\xf9\xeb\x8f\xff\xf8\xfc\xdb\xe7\x7f\xfd\xfa\xd3\x1f\x5d\x30\x78\xb6\xfa\xdd\x62\x79\x15\xd7\x7f\xf9\xe2\xf3\xcd\x26\x51\xbf\x7b\x78\x6d\xc3\x97\x7b\x4c\xd2\x58\x9e\x2f\xbe\x8e\xcb\xf5\x23\xab\xc6\xed\x51\x7f\x36\x5f\x5f\x7e\xc1\xab\x55\x3c\xe7\xb1\xad\x1f\x5d\x5e\xf7\xd3\xe5\x72\xb1\xfc\x64\x51\xf8\xe1\x25\x0d\xf7\x28\xc7\x0a\x1b\xfd\x8f\x2e\x78\xfc\xd9\xfc\x75\xbc\x9c\x95\xb6\x9c\xf9\xe3\x1c\xe5\x11\x8e\xe7\x6f\x5f\xfe\x00\xd7\xfe\x12\xc8\x5f\xcc\x56\xab\xd9\xfc\xfc\x47\xda\x91\xdd\x6a\x67\xfd\x6c\xba\x9c\x40\xd7\x2f\xa6\xcb\x89\xa2\xae\x8f\xf5\x7f\xdf\xf5\xab\xe9\x72\x98\x4f\x62\xd7\x5f\xd6\x0b\xdd\x93\x0f\xee\x6e\xcd\xf2\xc5\x67\xdf\x7c\xf3\xd9\x97\xbf\xff\xf6\xcf\x1f\x7f\xfe\xa7\x4f\xa7\x87\x77\x4e\x0f\x7b\x1e\x3e\xfb\xf2\xcf\x1f\x7f\xfe\xd9\x6f\xb7\xe5\x77\x4e\x6b\xf9\x96\xe1\xb3\x2f\x9f\x7f\xfe\xed\xc7\x5f\x7f\x76\x5b\xc5\xf6\xca\xe1\xcd\x64\x7e\x7d\x3d\x99\x4f\xdf\x6d\x65\x7d\xd5\xe7\xbb\x6b\xb3\xdd\x3e\x73\xdf\xbc\xab\xb1\xdd\xb6\x3a\xc7\xcb\xcb\xf6\x36\x41\xbf\xee\xae\xaf\xeb\xc1\xf6\x01\xda\x6c\xc8\x8b\xc2\xd3\x65\x3f\x1b\x16\xcb\xd9\xf9\x6c\x1e\xb7\xa3\x63\x3a\xef\x67\xdb\xa7\xdb\x9b\x67\xb7\xb3\x21\x75\x93\x75\xdf\x9e\x8f\xbf\x5c\x2e\xd6\x8b\xf5\xdb\x97\x3c\xac\x17\xdf\xac\x97\xb3\xf9\xf9\xf4\x9e\x5a\x0f\x5f\x8c\x63\xf3\xef\xab\x83\xa6\xfa\xd3\x83\xc3\xf1\x15\x87\xda\xe6\xf1\xe1\xd9\xf6\xf4\x6a\x6c\xf1\xa6\x5f\xdf\x4c\x1a\x61\xd7\x97\x1f\xea\xd9\xac\x5f\xec\xad\xd8\x7f\xdb\xb9\x0f\x37\x43\xe4\xe0\x75\xbd\xdb\xab\x03\x59\x2c\x0f\x0e\x3f\x3c\x5e\x1f\x7f\x78\x78\x5a\x0f\x96\xc7\x1f\x1e\x0e\x07\x9b\x8d\x0e\x0e\xe2\x92\xeb\xc5\xfd\xbd\xcb\x67\xdd\xf0\xf7\xc5\x6c\x3e\xf9\xf0\xb0\x3f\x38\xfc\xb0\x3b\xfe\xf0\xf0\xc3\x7e\x7e\xf7\xde\xf5\x8b\x8d\x06\x1f\xd7\xcd\xcd\x24\x77\xfd\xc5\x0f\x76\xe0\x61\xf1\xdb\x20\xdd\x97\xfa\xe0\xea\xd5\x6a\x7d\x90\xf8\x60\x21\x07\x55\xd7\x07\x1f\xb6\xb7\x0c\xee\x0a\x34\xfb\x69\x02\xc9\x0f\x08\xf4\xb0\x38\xcf\x2f\xf8\x60\x36\x5f\x5f\x36\xb3\x36\x3f\x3f\x68\x3b\xec\x7d\xb7\x3e\x78\x1d\x97\xb3\x98\x2e\x79\x27\xe5\x9b\xb8\x3a\x98\x2f\xd6\x07\x2f\x97\x8b\xd7\xb3\xc2\xe5\x60\xbd\x38\x58\x5f\xf0\x96\x6f\xa3\xf9\xaa\xca\x3b\xf3\xa2\x5f\xfe\x24\xc9\x6f\x9f\x04\xbf\xbc\x7d\x04\xff\xc0\xfe\xce\x7b\x5b\x92\x5d\x6d\x5e\x57\x9a\xf5\x8b\x3e\xf6\xab\xf6\xfa\x18\xb6\xed\x0e\xb6\xfb\xbf\x6c\x9a\xba\x1c\x2e\xba\x09\xb7\xcd\x8d\xc7\x7a\x5f\xbc\xab\xb5\x9d\xbe\x1a\x2e\x67\x6b\x5e\xc6\xcb\xbe\x0d\xa5\xd3\x4a\x32\xb4\xc3\x9b\xb3\x27\xdb\x35\x10\x5f\x4f\x5f\x9c\xf5\xe7\x53\xe8\xd3\x94\x7f\x7d\xfe\x9b\xb4\xa9\xfc\xd7\xe7\xc7\xc7\xe3\xd4\x7b\x3b\x4d\x2f\xce\xdb\xfe\xb5\xfb\xcd\xbd\xed\xba\xd7\x9b\xbd\xa9\x1e\x6c\xeb\xed\xa6\xa1\xee\x09\x5f\xae\xf8\x60\x9f\xfb\xb2\x71\xdf\xdb\x1c\x38\x3e\x7d\xfa\x83\x35\xb6\x4d\x12\xc6\xbd\xfb\x46\x13\x3d\x59\xb7\x5d\x3d\xeb\x51\xec\x36\x0d\x35\x89\xbf\x9d\x6e\x5a\x6f\xdb\x34\x2e\xae\xaf\x3f\x98\x7c\x7b\x30\x9b\x1f\x2c\xba\x6e\x7d\xb1\x5c\xbc\x69\xaf\x15\xc9\xe4\xdb\x7e\x35\x9a\xa0\x37\xd3\xc5\x8b\x6f\xef\xf6\x90\x9b\x8c\x6f\x9e\x3e\x3d\x1c\x6f\xff\xe1\x07\x5b\x31\xeb\xb5\x8d\xe8\xb7\xd7\xae\xaf\x27\x6f\xa6\x5b\xd2\xe9\xde\xe5\x7b\xbd\x7c\xf3\x6c\xb4\x33\x93\x37\xdd\xe9\xe1\x61\xd7\xdf\xe9\xf2\xfd\x1a\x9e\xed\xb4\x70\xfa\x6a\x58\x34\xe9\x36\xea\x78\xf3\x90\x6a\xa5\x89\xdd\x94\xf0\xe9\x7d\x79\xde\x8e\x1b\x0d\x3e\x9b\x0d\x25\xae\xf9\xc5\xe6\xf4\xec\x74\xc7\x7e\xde\x4d\x36\x17\xbb\x67\x9b\x83\xe1\x65\x5c\xae\xb8\x6c\x37\x6a\x19\xb7\x55\x79\xf2\xe3\x37\xea\xb7\x71\xcd\xcf\x67\x57\xbc\xbd\x55\xfd\xa7\xbb\x9b\xf5\xa6\xbb\xe9\x6e\xee\x89\xbe\x68\xa2\xff\xa0\xd4\xeb\xd9\xd5\xff\x46\xea\xfe\x7f\x2d\xf5\x7d\x85\xcf\x9a\xd4\x93\x1f\x14\x7b\x1c\x02\x0f\x08\xfe\xf7\x9f\x28\x78\xf7\xf4\xe9\xa7\xc3\x2a\xc7\x4b\x7e\xfa\x74\xf2\xe6\x68\xba\x39\xb9\xbe\xc6\xee\x27\xf4\xe9\xee\x94\x79\xa8\x47\xef\xf6\x7b\x34\xbf\x1d\x42\xdf\x4d\xdf\x0e\xf9\x62\x76\x59\x96\x3c\xef\xbf\xda\x4e\xaa\xfe\x9b\xe9\xe2\xc5\x57\xe3\x86\xd6\x2f\x27\xdf\xec\xcf\xa9\x8b\xc9\x57\xfd\xad\x4d\xdb\x4e\xaf\xe7\xd3\x6f\x26\x57\x93\xef\x6e\x6d\x59\xf7\x03\x9b\x2c\x6d\xac\x46\xd7\x3d\x69\xef\x99\x0f\xb3\xd5\xf8\xbe\xf9\xf3\xee\xfa\x7a\xf2\x7c\xfa\xe2\xf9\xd9\xb6\xcf\x9b\x6d\x9b\x5e\xf7\xcf\x1f\xab\xee\x91\x49\xc5\x8f\x4f\x2a\xbe\xa9\x4d\xdf\xec\xeb\xe3\x6a\xd4\x47\xdb\xf0\xf5\x8b\xe9\xdb\xed\x96\xbb\x2f\xde\x9c\x5d\x5f\xef\xce\x86\xc5\xfa\x82\x97\xfb\xaa\x28\x93\xad\xba\xde\xf4\xfb\xce\x79\xc7\xd2\x35\xf5\xdc\xed\xc9\xd5\xe4\x8b\x0d\xd3\x36\x40\x78\x60\xa2\xfc\xe3\xf6\x06\x7d\xf1\xe4\x9e\x58\x87\xd3\xc3\xe3\x37\x67\x1b\x81\x6b\x98\x3c\x7c\x7d\xf9\x6a\x19\x2f\xff\xf8\xea\x92\x57\x7b\xf2\xe5\xc9\x87\xdf\x2f\x3d\x98\x8d\x0e\x30\xbe\x8e\xb3\xcb\xe6\x1a\x67\xf3\x83\xea\xd9\x0e\x78\xfe\x7a\xb6\x5c\xcc\x6b\x28\x3f\xfc\xcf\xfc\xf9\xf2\xed\xc1\xcb\xc5\xe5\x5b\x99\x5d\x5e\x56\xcf\x38\x5b\x1f\xbc\x5a\x35\x17\xf9\xff\x6f\x23\xa5\x8f\xaa\xc7\x3d\x79\xd9\xea\x5e\xd6\xba\x0f\xff\x67\xbe\xef\x39\xb7\xe1\xe0\x76\x88\x7c\x3c\x6e\x78\xbd\x27\xcc\x64\xdd\x8f\xb7\xef\xed\x30\x56\x53\x83\xe5\x9b\x6e\x58\xf1\x65\x55\xc3\x9b\x93\xaa\x49\x91\x15\xaf\xaf\xaf\xa1\xeb\x9e\xec\xeb\xe0\xe3\xfb\xb7\xa6\xde\xd2\x0f\xbe\xf8\xd9\xef\x4f\xff\x7d\x39\xda\x26\x38\x8f\xbf\xa3\xc9\xbb\xfd\xdd\x9e\xf1\x29\x0f\x4b\x2e\xaf\x32\xef\x0f\xdd\xdb\x5d\xcd\xef\xac\xd8\xba\x5b\x66\xf8\xe9\xd3\x65\xdb\xa7\x6f\x3a\x9d\xee\x06\xf1\xd3\xa7\xeb\x7b\xd7\x9e\x2d\x47\x41\x8f\xa7\xeb\x61\x33\xb4\x47\x43\xb1\xee\x7a\xbe\xe9\xfa\x17\x67\xdd\xcd\xe4\xf5\xde\xcb\xd1\xaf\xf7\xa6\x4d\xbe\xb7\x11\xf0\xa6\xe0\x22\xae\xf6\x36\xae\xba\x7d\xf3\xb4\x0e\x14\xbe\xe9\xcf\x79\xfd\x50\x31\xbf\x58\x9f\xdd\xf4\xab\x3b\x85\x35\x5a\xab\xd7\xa7\xcb\xaa\xb0\x9b\xbb\x79\x48\xed\xf9\xd8\x8d\x29\x9c\x4d\x0f\x37\xc7\x87\x7d\x2d\x18\xa7\xeb\x14\xcf\xa6\x87\xe3\xe1\xe1\xcd\xe4\xd5\xf5\xf5\xe4\xd5\x6d\x46\x71\x3e\x5d\x0d\xf1\xfa\x3a\xf6\x69\x3f\x98\xdf\xf5\x94\xc7\xbc\xa2\xdf\x6c\x16\x1c\xfb\xd5\xb4\xe5\x12\x33\x99\xec\x76\xf4\x5e\x6e\x76\x19\xdd\xec\x22\xf4\xf9\xa2\xda\xdb\xcd\x3b\xc4\xe3\x18\x5f\xf3\xf2\x93\x98\x2f\x78\xfa\x6e\x34\xef\xa7\xef\x6e\xfa\xb2\xf1\x1e\xf5\xf8\xe5\xed\x50\x3e\x7d\x77\x73\xb3\xcf\x7a\xff\xb5\xd0\xe9\xb6\x68\x93\xff\x4e\xb8\xed\x06\x8f\xd3\x71\xc3\xa3\x3a\x08\x76\xbb\x00\xee\x62\xb8\xcd\x56\xd2\xeb\x47\x46\xd1\xf7\x46\xdc\x43\x83\xe4\x36\xba\xb9\xb5\x8d\xfb\xa3\xee\xd9\x9d\xb3\xfb\x43\x69\x3c\xdd\x0d\xa8\xdd\x20\xdd\x0e\xf2\x29\x3e\x5b\xbe\x80\xb3\xeb\xeb\xc3\xc3\xd3\xe5\x1d\x15\x6c\xfa\xf9\xd0\x5b\xa9\x57\x93\xd5\x10\x57\xeb\x7e\x35\x5c\x36\xad\xaf\xfa\x3d\x95\xdf\x9e\xac\x7a\xee\x37\x6e\x7d\x97\x7a\x75\x9b\x36\x96\xbc\x5a\x5c\xbe\xde\x79\xd1\xfb\x29\xdd\xbb\xb1\xea\xd3\x66\x01\xf7\xfd\xe3\xb0\x7a\xf5\xf2\xe5\x62\xb9\xe6\x32\xde\xf2\xd5\x57\x32\xd9\x09\xd2\xbd\x80\xb3\xed\x9d\x3c\xe7\xf5\xc7\xab\xf5\xfd\x9a\x0f\x9a\xf0\x37\xfd\x3d\xc5\xae\x9b\x45\xde\x4f\x14\xa7\xeb\xfe\x03\x1e\xbe\xfd\xb6\x79\xfc\x3d\xcb\xb4\xfb\x55\x60\x72\xff\x67\x8e\x2d\xf9\x2e\xa5\x5a\xf1\xba\xe6\x29\x2f\x97\x8b\xcc\xab\xd5\xc1\xdf\x36\x75\xff\x6d\x97\x6b\xfd\x6d\x14\xe4\x6f\x87\xdd\x93\xd6\x78\x5c\xad\xa7\xbb\x56\xab\x91\x9d\xd7\x8a\x2f\x67\xff\xe2\x3f\xc4\xd5\xc5\x3a\x9e\x7f\x36\x1f\xad\xf0\xe9\x07\xd8\xcf\xce\xe7\x8b\x25\x3f\x8f\xe7\xa7\xe3\x67\x05\x8b\xed\xb6\x7a\x8b\x61\x57\xb4\x8d\xe5\x76\xb5\x8f\x9b\xa3\xdf\xf5\xde\xdb\xc2\xee\xe1\x7e\x7e\x7c\xb0\x91\x7b\xd7\xaf\x5d\x12\x16\x57\x07\xf1\x60\x0c\x99\x0f\x16\xcb\x83\x8f\xbf\x79\x3e\x6c\xbb\xb2\x19\x08\xd3\x07\xc7\xfd\xfa\xd9\xbe\x55\xe7\xee\xfe\x2c\xd9\xfd\xb6\xb0\xe8\xe3\x6e\xe8\xbe\x98\x9f\x4d\x27\x8b\x29\xbf\x98\x9f\xf5\x93\x38\x5d\xbf\x98\x9f\x75\xcf\x76\x19\x5d\xec\x26\x8f\x1d\xbf\xbb\xe9\x17\xd7\xd7\xef\x6e\xba\x3e\x8e\xff\xed\x37\xbf\x78\xa0\xf9\x3b\x93\xb4\x5a\xc2\x1f\xaa\xf9\xc5\xfa\xac\xeb\xe3\x8b\xf5\xd9\x58\x77\x9d\x70\xd5\xdc\x9d\x2e\xba\x7e\xb9\x6b\x6b\x47\xce\x5d\x77\xca\x37\x13\xde\x4d\x95\xf9\xc6\x74\x6d\x06\xf2\x74\xf9\x3d\x4b\xb6\x9a\x2e\x9e\x3e\x5d\xec\x9d\x5f\x5f\xdf\xda\xc2\xaa\x86\xfb\x76\xaf\x7b\xfa\x74\x12\x7f\xa2\xf1\xeb\xfa\x77\xdf\x8b\x43\x4f\xcf\x27\xfb\xbf\x5f\x6d\x73\x51\xee\xd7\x35\x1b\x5d\x4e\xe1\xd7\xcb\xdf\x7c\xff\x43\x9f\x5f\x2f\x8f\x8f\xbb\xf5\x8b\xe5\xd9\xed\x27\x40\x2f\x96\x67\x7b\x5f\x8a\x4c\x26\x3c\xbd\x37\xa3\xbb\x21\xcd\xe6\x65\xe3\xc1\xf9\x56\x53\xb9\x9b\xbc\x18\xbb\x78\xd6\xaf\xab\xdf\xee\xfa\x77\xb9\x76\xec\xf4\xf5\x24\x6e\x42\xf6\xae\x5f\xad\x97\x71\xcd\xe7\x6f\x4f\xcf\x87\xcd\xe1\x8c\x57\x43\xfb\xe9\xa0\xcc\xf2\x4d\xd7\xdf\xcb\x19\x7e\xd9\x9e\xdd\x6d\xeb\xdf\xeb\xdb\xf6\x46\xfd\xb4\xde\xed\x85\x64\xbf\x6c\xd7\xf6\xc3\xd4\x7f\xab\x5f\x7b\x83\xee\xc7\xbb\x76\xd3\xdd\xfd\xb9\xa6\x7a\xfa\xd9\x9c\xbf\x5e\x2e\x5e\xf2\x72\x5d\x5b\x3d\xbc\xe3\xfb\x0f\xdb\x10\x7e\x60\x67\x5f\x1e\xae\xf8\x6a\x31\xfb\x17\x97\xdf\xee\xd3\x5f\x5f\x4f\x1e\x29\x99\x4e\xaa\xf1\x7b\x60\x9c\x7e\xcf\x6b\x4d\xba\xcd\x74\xed\xfa\x47\x6a\xba\xe9\x79\xfe\xea\x8a\x97\x35\x54\xaf\xd6\x3a\x2f\xe6\x32\x3b\x7f\xb5\x39\x87\x9b\x47\x19\xc7\x7d\x30\x77\x5e\x60\xba\x18\xb3\xce\x7e\x67\x30\x6e\xe7\x75\x7e\xb5\x5c\xf2\x3c\xbf\x3d\x7d\xd7\xd2\xd3\xd3\xc3\xed\x85\xc3\x9b\xfe\x25\x2f\x33\xcf\xd7\xbb\xa2\xcd\xf9\xe1\xcd\x68\x0c\x4e\xdf\xad\x2e\x16\xcb\xf5\xe9\xbb\xab\xc5\x7c\x7d\x71\x7a\xd8\x64\x9d\xe5\xc3\xbe\xc4\xb7\x7b\x67\x6f\x39\x2e\x4f\x0f\xd5\x49\x99\x9d\xcf\xd6\x87\x37\xfd\x15\x97\xd9\xab\xab\x1d\x57\xab\xe3\x61\x9e\xed\xe9\x4d\x7f\xb9\x98\x9f\xef\x38\xea\xc9\x8f\x31\xc8\xab\xcb\xcb\xd3\x77\x6f\x98\xff\xd1\xe8\x46\x96\x9f\xce\x7f\xd3\xaf\x9b\xa5\xdb\x74\xf0\x62\xf1\x6a\xaf\xb4\xbf\x9a\xcd\x5f\xad\x79\xbf\xb9\x6d\x9f\x7e\x84\xb0\x5f\x71\x5e\xcc\xcb\xfd\x9e\xbd\x2f\x5f\x13\xef\xbf\x17\x73\xfe\x72\xdc\x7c\xb5\xe9\x70\xdb\xeb\x9f\xa7\xb2\x9b\x9b\x9e\x6f\x26\xdd\x93\xdb\x9d\x36\xd3\xcd\xd9\x59\xf7\xe4\xff\x05\x00\x00\xff\xff\x87\xcf\x27\xe5\x71\x0c\x19\x00") - -func web_uiAssetsVendor11065761200f308590a78bf8e141bc49JsBytes() ([]byte, error) { - return bindataRead( - _web_uiAssetsVendor11065761200f308590a78bf8e141bc49Js, - "web_ui/assets/vendor-11065761200f308590a78bf8e141bc49.js", - ) -} - -func web_uiAssetsVendor11065761200f308590a78bf8e141bc49Js() (*asset, error) { - bytes, err := web_uiAssetsVendor11065761200f308590a78bf8e141bc49JsBytes() - if err != nil { - return nil, err - } - - info := bindataFileInfo{name: "web_ui/assets/vendor-11065761200f308590a78bf8e141bc49.js", size: 1641585, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js", size: 9627, mode: os.FileMode(420), modTime: time.Unix(1642782762, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -424,12 +635,32 @@ func web_uiAssetsVendor69ef69e98b7d14d1513f8056b6c6b48dCss() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/vendor-69ef69e98b7d14d1513f8056b6c6b48d.css", size: 8067, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/assets/vendor-69ef69e98b7d14d1513f8056b6c6b48d.css", size: 8067, mode: os.FileMode(420), modTime: time.Unix(1642782762, 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\x7b\x6d\x73\x5b\xb7\x92\xe6\x77\xff\x8a\x33\xda\x72\xd5\x6e\xad\x05\xa1\x5f\x81\xce\xda\xae\x52\x18\x39\xf1\x94\xfc\xb2\xb6\x33\x3b\xb9\x5f\x5c\x7c\x39\xb4\x78\x57\x12\xb5\x24\x6d\xc7\x93\xca\x7f\xdf\x6a\x00\x87\x3a\xa2\x74\x33\xc9\xad\xf9\xe2\x28\x0f\x71\x1a\x8d\xc6\xd3\xdd\x0f\x70\xc8\xa7\xff\xf2\xc3\x9b\xc9\x87\x5f\xde\x9e\x75\x17\xbb\xab\xcb\xe7\x8f\x9e\xfa\x7f\xba\xcb\xe9\xf5\xa7\x67\x47\xfd\xf5\x51\x37\xbf\x9c\x6e\xb7\xcf\x8e\xfa\xab\x59\xbf\x39\xbe\x5c\x4f\x17\xab\xeb\x4f\x47\xcf\x1f\x75\xdd\xd3\x8b\x7e\xba\xf0\x3f\xba\xee\xe9\x55\xbf\x9b\x76\xf3\x8b\xe9\x66\xdb\xef\x9e\x1d\x7d\xde\x2d\x8f\xf3\xd1\xf8\xa3\x8b\xdd\xee\xe6\xb8\xff\x7f\x9f\x57\x5f\x9e\x1d\xfd\xfb\xf1\xcf\xa7\xc7\x93\xf5\xd5\xcd\x74\xb7\x9a\x5d\xf6\x47\xdd\x7c\x7d\xbd\xeb\xaf\x77\xcf\x8e\x5e\x9e\x3d\xeb\x17\x9f\xfa\xe1\xc9\xdd\x6a\x77\xd9\x3f\x9f\xac\xaf\xb7\x9f\x2f\xbb\xd9\xb7\xee\xa7\xe9\xf6\x62\x35\x59\x6f\x6e\x9e\x9e\xd4\x8f\x46\x13\x5c\x4f\xaf\xfa\x67\x47\x8b\x7e\x3b\xdf\xac\x6e\x76\xab\xf5\xf5\xc8\xec\xd1\xfd\x81\x5f\x56\xfd\xd7\x9b\xf5\x66\x37\x1a\xf5\x75\xb5\xd8\x5d\x3c\x5b\xf4\x5f\x56\xf3\xfe\xb8\xfc\xcf\x93\x6e\x75\xbd\xda\xad\xa6\x97\xc7\xdb\xf9\xf4\xb2\x7f\x06\xcd\x50\xfd\x67\x6c\x6e\x5e\x7c\x3c\xfe\xbc\x3a\x99\xaf\xaf\x97\xab\x4f\x27\xfd\xf5\x97\xd5\x66\x7d\x7d\xd5\x5f\x8f\xa7\x78\x9c\xbe\x7f\x8c\x78\xb5\x5e\x7c\xbe\xec\xdf\x6e\xfa\xe5\xea\xd7\xc7\x88\x8f\xe9\xf4\x31\xe2\xde\x82\x23\x38\x79\x8c\x38\x32\xb1\x1f\x75\xb3\x59\x2f\x3e\xcf\x7d\x79\xfb\x61\x9b\xf5\x7a\xf7\xf3\xbb\xf3\xfd\x90\xc7\xf8\xc2\x8d\xbc\xd8\x0f\xb8\x5c\xcf\xa7\xfe\xc4\x87\x6f\x37\xfd\x7e\xd4\x72\x7b\x75\xfc\x75\xb5\xbb\x38\x5e\x97\x60\x4d\x2f\xf7\xc3\x2f\x56\xdb\xdd\x7a\xf3\xed\xfd\xe7\x1b\x8f\xcf\xab\xd5\x62\x71\xd9\x7f\x9d\x6e\xda\xa3\xbb\xcd\xe7\xbe\x8e\xdb\xad\x37\xab\x55\xb3\x97\xbe\x7f\x9c\x7e\xa8\xf0\x99\xd3\xe4\xec\xf5\xbf\xdd\x7e\x82\xf8\xe2\xec\xf4\xc3\xcf\xef\xce\xde\x3f\x30\xfa\xdf\x3f\x9c\xbd\xfe\xe1\xe3\xdb\x77\x6f\x3e\xbc\x71\x0a\xbe\x1f\x3f\xf6\xc3\x74\xd7\x66\x5d\x4e\x2f\xb7\xfd\xfe\xa1\x8f\xa7\x6f\xdf\x9e\xbf\x9c\x9c\x7e\x78\xf9\xe6\xf5\xc7\x0f\x67\xaf\xde\x9e\x9f\x7e\x38\xfb\xf8\x7f\xde\x9d\xbe\x7d\x7b\xf6\x6e\xfc\x40\x1d\xfd\xc3\xd9\x8b\xd3\x9f\xcf\x3f\x7c\x3c\x7d\xff\xcb\xeb\xc9\xc7\x37\xdf\xbf\x3f\x7b\xf7\x6f\x67\xef\xde\x1f\xae\xe7\xe3\xbf\xfe\xef\x9f\xcf\xde\xfd\xf2\xf1\xe5\xeb\x0f\x67\x3f\xbe\x2b\xc6\xef\xdb\xda\xcf\xf6\xe6\xf5\xf9\x2f\x1f\x7f\x3c\x7f\xf9\xea\xd5\xd9\xbb\x8f\x93\x37\xaf\xde\xbe\x79\x7d\xf6\xfa\xc3\xd8\xe8\xe0\xed\xe9\xdb\xb7\xe3\x45\x39\x5f\xfe\x60\xd3\xbf\xf4\x9b\x6d\xdb\xdd\x32\x02\x03\x86\xf8\x18\xbf\xb7\x79\x44\xa2\xf9\xd2\x3f\x18\x2c\x6f\xfa\xed\xea\x3f\xfa\xf7\xfd\xc6\x19\xfb\x43\xbf\x9c\x7e\xbe\xdc\x6d\xc7\x73\xad\xae\xff\xde\x17\xb2\xbc\x98\xce\x7d\xbb\xfa\xe1\x53\xf1\x4f\x3d\x05\xf6\xf3\x3a\x45\x37\xeb\xcb\xcb\x7e\x33\x82\xae\x6e\xd6\xd7\x8d\x7d\xf2\xc3\x7e\xda\xc9\x9b\xd7\xef\x7f\x3e\xff\x38\x79\xf3\xf6\x97\x77\x2f\x7f\xfc\xe9\xc3\xc7\x5f\xce\x4e\xdf\xdd\x3a\x1c\x11\xf6\x26\xda\xd0\x1f\x5f\x7e\xf8\xf8\xfe\xa7\xd3\xfd\x98\x61\x31\x72\x38\xd0\xf7\x65\x1f\xf7\xc7\x88\x10\x20\xfa\xf2\xef\x8e\xfa\xfe\xe5\xeb\xd3\x77\xbf\x7c\x74\xbe\xec\x47\xae\xb7\xdb\xc3\x61\x3f\xbf\xfc\xf8\xc3\xcb\xf7\xa7\xdf\x9f\x9f\x7d\x7c\x77\x76\x7a\xfe\xe1\xe5\xab\xb3\x7b\x1b\x7a\x7f\xe8\xe9\xeb\xc9\x4f\x6f\xde\x7d\x7c\x7f\x76\x7e\x36\x79\x90\x03\xeb\x9b\x7e\x33\xdd\xad\x37\x93\x92\xe8\xf7\x29\xdd\x4c\xfe\xf4\xe6\xd5\xd9\xc7\x71\x5e\x7a\x05\xdc\x96\x3f\x5f\x3c\xc6\x17\x5f\xbf\x7e\x0d\x75\xf7\xc3\x6a\x7d\xe8\xf9\xbb\xb3\xb7\x6f\x3e\xbe\x7c\xff\xfe\xe7\xb3\xf7\x7f\x60\xe2\xd3\x6a\x77\xf1\x79\x16\xe6\xeb\xab\xc7\xf8\xe2\xc2\x4b\xe3\x7c\xbd\xb9\x79\x8c\x2f\xaa\xdd\xc7\xf8\x62\xb5\xdd\x7e\xf6\x3d\x7f\x71\xed\x3b\xfd\x62\x7e\xb1\x5e\x6f\xfb\xc3\xc9\x7e\x78\x33\xf9\xa3\x59\x0e\x1c\x7d\xb1\x58\xcf\xef\x45\xba\x98\x38\x3f\x3b\x7d\xf7\xfa\x0f\x0c\x5d\xf6\xd3\xcd\x75\xd8\xfb\x59\xfd\x7e\xc0\xce\xe9\xdb\x97\x7f\xc1\x9d\xe9\xcd\xea\xd0\xca\x2d\x31\xff\xd8\xcc\xc3\xae\xcc\x36\xeb\xaf\xdb\x7e\xb3\x5a\x7e\x1b\x67\xd2\xae\xdf\x0e\xa9\x75\x27\xb9\xfb\x5f\xbd\x48\x9e\xde\xdc\x5c\xae\x6a\x91\xfd\xf1\x72\x3d\xab\xc5\xf4\xb6\x6a\x1d\x75\x27\xcf\x1f\x79\xbf\xfc\x97\xe3\xe3\xee\x2e\xd3\xbf\xeb\x2a\xc5\xbb\xe3\xe3\xd2\x51\x2f\x57\xd7\xff\xb7\xdb\xf4\x97\xcf\x8e\x56\x73\x6f\x61\x17\x9b\x7e\xf9\xec\xe8\xb7\xdf\xc2\xa4\xb6\x90\xb7\xd3\xdd\xc5\xef\xbf\x4f\xb7\xdb\x7e\xb7\x3d\x59\x4e\xbf\xf8\xa8\xb0\x9a\xaf\x8f\xfe\xf9\xa7\xb7\x5f\x3e\x1d\x75\xbb\x6f\x37\xfd\xb3\xa3\xd5\xd5\xf4\x53\x7f\xb2\xfd\xf2\xe9\x7f\xfe\x7a\x75\x79\x68\x72\x7a\x73\x73\xd9\x1f\xef\xd6\x9f\xe7\x17\xc7\x7f\xc2\xfc\xe1\xf0\xe3\x08\xf3\x05\x6b\x8e\x29\xe3\x72\x36\x93\x99\xd7\x80\x08\xc4\x69\xb1\x34\x8b\xb4\x08\x37\x83\xac\x28\x73\xae\xae\x77\xfd\xa7\xcd\x6a\xf7\xed\xd9\xd1\x51\x75\x60\xbb\xfb\x76\xd9\x6f\x2f\xfa\x7e\xf7\x9f\x4c\xfd\xa5\xbf\x5e\xac\x37\xc7\x6a\xfd\x52\xad\xb7\x3c\x4b\x0b\xe0\x05\x08\xd0\x32\x47\xd1\x99\xce\x75\xc6\x79\x11\xe6\xdb\xed\x7f\xcd\x84\xfb\x32\x7e\x2c\xb0\xb0\x98\x92\xce\x6d\x61\x82\xba\x84\xd9\x1c\x30\x2d\x88\xfa\x79\xce\x33\xe8\xf7\x73\x3e\x1a\x84\xc4\xd3\x93\x41\x45\x3d\x9d\xad\x17\xdf\xf6\x02\xe3\xe9\xf5\xba\x4a\x99\x8a\x74\xdd\xd3\xc5\xea\x4b\x57\x5c\x7a\x76\x74\x35\xdd\x7c\x5a\x5d\x7f\xd7\xc5\x6e\xfa\x79\xb7\xfe\x5f\x47\xc3\x98\x32\xee\x02\x9f\xff\xeb\xf4\xcb\xf4\x7d\x79\xba\x7b\xe7\xa2\x6b\xd3\x2f\x9e\x9e\x5c\xe0\x9d\x61\x37\xcf\xdf\x5e\xf6\xd3\x6d\xdf\xf5\xd7\xd3\xd9\x65\xdf\x8d\x9e\x59\x5d\x77\xdf\xd6\x9f\x37\xdd\xd7\x7e\xd6\xb5\x7c\xe8\x76\xeb\xee\xf3\xb6\xef\x9a\x18\xfb\xf9\x65\x78\x7a\x72\xb3\x77\xed\x64\xb1\xfa\x52\x96\x70\x72\xeb\xb5\xfb\xfb\xa8\x1b\xd4\xe3\x6c\x33\xbd\x5e\x14\xf5\xd8\x6f\x8e\x1e\x75\x77\x17\x72\x7c\xd9\x2f\x77\xdf\x75\xf3\xe9\xe5\xfc\xbf\x1f\x83\xe5\x9b\x5f\xbb\x93\x0e\xff\xc7\xd1\xa3\xe7\x8f\x9e\x6e\xbf\x7c\xea\xaa\x32\x3b\x02\xcb\x47\xdd\x45\xbf\xfa\x74\xb1\x7b\x76\x24\x74\xd4\xfd\x7a\x75\x79\xbd\x7d\x76\xe4\xa9\xfd\xdd\xc9\x89\xe7\xf4\x57\x0a\xeb\xcd\xa7\x13\x8c\x31\x9e\x14\x62\x2f\x57\x97\x97\xcf\x8e\xfe\x5b\x3e\x33\x3d\xa5\x7d\x9c\x9e\xde\x4c\x77\x17\xdd\xe2\xd9\xd1\x2b\xc2\x90\x90\x63\x8c\xf0\x24\x86\xac\x8a\x24\x51\xa0\x9b\x60\x0e\x8a\x64\x8e\x1f\xc7\x80\x90\x81\x92\xb1\x75\xc8\x81\x10\xe2\x80\x67\x61\x95\x82\xc7\x00\xd9\x9a\x1d\x4d\x31\x9a\x16\x3b\xa0\x21\x8a\x16\x3b\x10\x14\x45\x35\x46\xe9\x00\x03\x62\x14\x47\x29\x48\x12\x24\x47\x2d\x44\xc0\xa4\x11\xe4\x89\x06\x62\xd3\xe8\xe8\x44\x42\x8e\x6c\xe6\xb0\x05\x40\xb2\xe4\x30\x05\x42\xcc\xd1\x51\xc0\xa0\x64\x14\x23\x74\x10\x52\x06\x85\x82\x6a\x10\x2b\x73\x74\x93\x18\x90\x23\x13\x01\xe7\x27\x18\x83\x30\xa8\xe3\xc7\x31\x10\x10\x48\xca\x82\x4f\x90\x43\x8e\x86\x8e\xc7\x00\x9a\xb3\x61\x19\x6e\x21\xd6\x89\xdc\x8c\x4a\x34\x2e\x66\x88\x02\x92\xb2\xe3\x18\x40\x38\x26\x9f\x94\x52\x40\xcd\xc9\x51\x0e\xc2\xa9\x3a\xc8\x31\x24\xb5\x82\x4e\x34\x18\x83\x50\x81\x39\x60\x8a\x05\x86\x18\x40\xa8\x04\x84\x53\x00\xe2\xe2\x1f\x50\x28\x2b\x70\xd4\x02\x40\x73\x03\x52\x50\xd1\x32\x58\x20\x44\x2b\xdb\xd1\x21\x84\x4c\x0c\x05\x45\x8f\x53\x19\x8c\x1a\x62\x12\xdc\xa3\xc0\x1c\xad\x9b\x10\x06\x05\x94\x3d\x9c\xfd\xb9\x8e\x72\x30\x40\x68\xf3\xa9\x5a\x31\xc1\x14\x12\xa4\xea\x85\x04\xa4\xf2\x67\x77\x4e\x29\x88\x70\x2a\x7b\x98\x43\x32\xa9\xeb\x23\x09\xd1\xea\x84\x0c\x21\x02\x95\x7d\x21\x0c\x91\x85\x0b\x8a\x81\x53\x2c\xf3\x61\x0e\x29\x71\x6e\xa8\xe5\x3a\xdf\x04\x25\x48\xe4\x6a\x82\x82\x38\x95\x7c\xb0\x87\x99\x62\x43\x63\x73\x0e\x9c\x12\x89\xda\x74\xa9\x52\xb6\xd0\xce\x49\x50\xe0\x18\x28\x25\x6b\xf1\x14\x8a\xb9\xb9\x0c\xb9\x04\xbc\x03\x7f\x4e\xeb\x42\x24\x70\xac\x9b\x3a\xb1\x60\x88\x5a\xf6\xcf\xa3\x85\x56\xe0\x1c\xac\xe4\x05\x88\x33\x83\x72\xce\x87\xa8\x07\x3c\x95\xe5\x4d\xc6\x30\x86\xa4\x52\xe6\x1b\x19\x06\x0b\x82\x6c\x07\x5e\x80\x86\x54\xa9\xd3\x4d\x46\x2e\x3b\x1b\x06\xba\xdc\x2e\xcf\x9f\x4b\x4a\x07\xb1\x80\x18\x98\x62\x5d\xc8\x28\x70\x16\x62\x66\x66\xcf\x9f\x51\x90\x73\x50\xf6\x8d\x74\xf4\x76\x47\x2c\x80\xb2\xf3\x49\x0a\x5d\x86\xed\xb3\xa0\x99\x01\x4b\x0a\xde\x6e\x35\x40\x00\xae\x3c\x1c\xf1\x02\x28\x90\xe4\xb2\x7b\xe7\x23\x16\x69\xc8\x86\x5a\x52\x7e\xc2\x31\x88\x25\x2d\x1b\x15\x22\x18\x96\xfa\x40\x1a\x32\x56\x2e\x43\x30\x89\x5a\xdc\xf8\x07\xb5\xea\x6f\xdd\x2b\xd6\xa0\x84\xe5\x13\xe2\x90\x25\x95\x34\x9e\xb0\x7a\xe5\xc2\x06\x1b\x59\x89\x3f\x4b\xc8\x9e\x1c\x75\xbf\x81\x31\x35\x54\x4a\x69\xa9\x2c\x68\x8b\x99\x38\xe3\x19\xa8\xc1\x89\x2a\x0b\x58\x42\xa4\x92\x33\x4f\x48\x03\x40\x33\xcc\xc1\x44\x72\x43\x85\xa8\xc6\x9f\x39\xe4\x54\x73\x9b\x3c\xfb\xab\x73\x3e\x18\xa4\xce\x97\x02\x25\xc5\xc1\x70\x4a\xd8\xd0\xe4\xd5\x72\xf0\x82\xf2\x90\x6b\x20\x62\x83\xcb\x2d\x5d\x29\x07\xce\x06\xc3\xf2\xb4\x6e\xb7\xe7\x25\x56\x92\xd7\x58\xd0\xc0\x7d\x93\x9a\x11\x1e\xb8\xb2\x15\xf0\x84\x9c\x1c\xe5\xb9\x8e\x53\x88\xdc\xe2\x76\x8b\x4e\x38\x05\x85\xba\x2b\xe3\xc1\xee\x90\x0e\xbe\x65\xc9\xd4\x50\x11\x1d\xa6\x63\xc9\x6d\x47\x7c\xea\xda\x0e\x28\x87\x28\xb5\xee\x78\x71\xcb\x30\xc4\x42\x40\xf8\x10\xf5\xb8\xd5\x32\x30\xb9\x0b\x0b\x16\xf2\xf8\xe0\xd8\x6a\x62\xd9\x11\xc1\xe6\x45\xc6\x16\x21\x09\x49\x99\x06\x2f\x24\xa7\xfd\x5e\x43\x0d\x11\xe7\x80\xc2\xb2\xe7\x45\x1c\x62\x91\xb5\x95\x39\x0e\x96\xb2\x0e\xb1\xe0\x96\x28\xce\x38\xa8\x19\x5f\x02\x27\xd6\xd0\x96\x49\xdd\xc3\xec\x74\xda\x7a\x14\xa5\x90\x1f\x53\x10\xc5\x7d\x90\x34\x41\x6e\xb0\x72\x6d\x06\xee\x9e\xc1\x30\x38\x73\x4a\x6d\x46\xb3\x52\x63\x9f\x60\x0e\xc0\x0a\xfb\xad\xb2\x52\x58\x1c\x66\x66\x69\x83\xd9\x6a\xe8\xd0\x23\xd3\x0c\xa7\xc0\xb1\xf0\xda\x4b\x1a\x52\x96\xc1\x04\x61\x59\x96\xc3\x5a\x7a\x74\x19\x4c\x6a\x95\x30\x31\xc4\x0c\x03\xba\x2f\xac\x31\x70\x82\x91\x17\x38\x0c\xce\x1a\x6d\x70\x59\x1b\xf3\x21\x80\x31\xb4\xe5\x11\xa8\x36\x94\x71\x88\x73\x0e\xaa\x89\x1b\xac\xda\x38\x67\x21\x26\xb3\x86\xa6\xbc\xa7\x91\xc4\x1a\xb7\x11\x3a\x91\x18\xa2\xd6\xca\x53\xe0\x9a\x3c\x12\x83\xc6\x3c\x18\x16\xad\x4a\xc1\xfb\x69\xcc\xc3\x58\x68\x1e\x4f\x04\x02\xc7\x5a\xa5\xc8\x7b\x39\x60\x1b\xac\x44\xd0\x50\x84\xda\x91\x0a\x2a\xb4\x8f\x1b\xa7\xc1\xc4\x08\x46\xaa\x55\x47\x20\x08\x44\xdc\xef\x48\x1c\x0c\x63\x92\x61\x9f\x58\x6b\xd1\x71\x13\xb1\xd5\x22\xdf\x6b\xa8\x21\x92\x18\x52\xac\xb5\xa8\xf0\x42\xa0\xa1\x04\x99\x06\x0e\x65\xda\x27\x8f\x61\x5d\xb5\x33\x0e\x2b\xe3\xd8\x02\x5b\xa9\x61\x8e\x72\x8d\x6c\xf7\x30\x3b\xff\xd6\xbd\xc2\x1c\x62\xc2\xca\xcf\xe8\x33\xd6\x15\xa2\x93\x1f\xb0\xc1\x0c\x95\x47\x28\xc1\x4a\xfd\x2e\x28\x95\x9d\x00\x97\x91\x19\xaa\x8c\x74\x3d\x86\x95\x9f\x13\xf4\x26\x51\xf3\x07\x63\x48\x5c\x39\xe7\xbd\x13\x62\x1d\x0c\xc1\x27\x6e\x7a\xc7\x9a\x86\x44\x74\x3d\xd0\x4c\x40\x00\x8a\xd6\xe0\xb2\xd9\x3e\xd8\xdb\x4c\x4b\x13\x0a\x59\x65\x40\x29\xd5\xb6\x86\x1c\x8a\xde\x2c\x26\x5c\x8c\xd5\xdd\xf6\x6e\x2e\x35\xa2\x18\x03\xaa\x0d\xa1\x03\xab\x5b\x85\x31\xa8\xe9\xb0\x55\x88\x90\xf7\x5e\xb4\x56\xe5\xbb\x2d\xb5\x15\xb8\x44\xe3\x3d\x8d\x80\x9a\x61\xf4\x0e\x1e\x07\x72\x89\xf0\x3e\x16\x91\xa9\x51\x91\x2a\x1f\x3c\x70\xc9\x64\xcf\xf1\xa8\x79\x08\x72\x99\xef\x0e\xea\x3b\xc2\x55\x3d\xdd\x19\x9c\x7d\xcf\x64\xe0\x38\x60\x8d\x85\x05\x1b\xa6\x8b\x21\x4a\xd5\x6d\x13\x8a\xc1\x5a\x37\xc1\x1c\xcc\x6a\xc9\xf0\x8c\x91\x34\x54\x28\x91\xaa\x78\xc7\xa8\x86\xa8\x50\x17\x32\x86\x39\x18\x57\xbd\x43\x10\xb0\xe9\x1d\xdf\x91\x16\x21\xf2\xac\xac\xfd\x08\x31\x18\x4a\xdb\x11\x0b\x96\x75\x60\x80\x99\x6a\x73\x19\x9a\xcb\xce\x8b\x54\x6b\xc3\xc3\xec\xf4\x6a\x4b\xc1\x5a\x1d\xf0\xc0\x50\x53\x58\x2e\x31\x5b\xcb\xc5\x14\xb0\x69\x29\xa6\x00\xad\x05\x3a\x4a\xad\x48\x61\x48\xc4\x03\x07\x08\x9a\x54\x64\x0c\x34\x50\x31\x05\xb2\x76\x00\x80\x60\x1c\x87\xc1\x1a\xc1\x1a\xaa\x8c\x83\x17\x16\x63\x6b\x49\x10\x88\x69\xe0\x11\x58\xcd\x6d\x76\x59\xd5\x0c\xe7\x20\xa9\xaa\x4d\xd7\xd5\xd2\x32\xde\xf7\x04\x5b\x6e\xc7\x60\xa9\x52\x03\xcd\x75\xac\x0c\x83\x21\x0f\x65\x3c\x53\xeb\xad\x10\x20\xd9\xc0\x44\x44\x19\x79\x01\x03\x15\x15\x2a\x41\xdd\x65\x68\x8d\x31\x06\xe3\xd6\xe1\xc1\xcb\xf8\xc0\x4f\xc8\xb5\xa0\x95\x58\x80\xe2\x50\xc7\x87\xc6\xe8\xd2\x2d\x0f\x4c\x94\x96\xd8\x1e\x64\x89\x87\xe8\xa4\x48\x45\xe5\xc3\xc1\x1c\x50\x0c\x86\x7c\x80\x34\x68\x2e\x15\xc3\xc1\x37\x48\x3c\x08\xa6\x78\x0b\x0b\x24\x6a\xd2\xa8\x14\xbf\x1a\x0b\x4b\x9c\xee\xa3\x1c\x73\xde\x6b\xae\x01\xce\x4e\xbf\x41\x73\x81\x64\xdb\xef\x08\xf3\x20\xe6\x6a\x0d\xab\x55\x60\xa8\xb6\x1c\xd4\xe2\xbe\x34\xa7\xa6\x34\x39\x50\x93\x46\x9e\x3c\x66\x43\x2c\x1e\x60\xe7\x01\x6d\xbd\x3c\x44\xba\x47\xdb\x18\xa4\x1d\x44\xc6\xb4\xf5\x73\x6e\x4d\x94\x31\x6d\x63\x50\xcc\x76\x8f\xb6\x31\x24\xa8\x5d\x6d\x4c\x5b\x8f\x28\xf3\x21\x6d\x21\xe0\x70\x14\x1d\xd3\xd6\x5b\x19\xc0\x21\x6d\x21\x64\x03\x3a\xa4\x2d\x06\x8a\x02\xf7\x68\xeb\x85\xbe\x16\xec\x31\x6d\x7d\x4d\xc9\x0e\x68\x8b\x7e\x30\x4a\xf9\x90\xb6\x48\xc1\x06\x49\x78\x4b\x5b\xe4\x80\x1a\xf3\x01\x6d\x91\x03\xd7\xf3\xcb\x1d\xda\x7a\x89\x45\xd3\x03\xda\x7a\xc7\x12\xce\x07\xb4\x1d\xa1\x63\xda\x8e\x07\xdf\xd2\x16\x39\x94\x52\x7a\x97\xb6\xee\x1b\x9a\x1d\xd2\xd6\x8b\x22\xb6\x03\xf8\x88\x89\x14\x30\x27\x38\x44\xdd\x4d\xa0\x7b\xb4\xc5\x80\xb6\x3f\xb0\xec\x69\x0b\x21\x0f\x64\x1e\xd1\x16\x82\xd0\x70\xda\x18\xd1\xd6\x33\x5b\xf0\x90\xb6\xce\x0b\xc8\x87\xb4\xbd\x65\xe7\x81\xb6\x8d\x81\x32\xca\x3d\x6d\x1b\x03\x6b\x6d\x06\x63\x6d\x1b\x83\x6a\x86\x43\x6d\xeb\x6d\x68\xa8\xb6\x23\x6d\x0b\x01\xb5\xc5\x79\xa4\x6d\x9d\xab\x6c\x87\xda\x16\x9d\x7e\xf9\x9e\xb6\xc5\xc0\x09\xf5\x40\xdb\x7a\xf3\x89\xa0\x07\xda\xd6\xa3\x6f\xc0\x87\xda\x16\x29\xe8\xad\x10\x1e\xb4\x2d\xfa\x79\xb6\x25\xcf\xad\xb6\xf5\xdd\xe6\x21\xff\x6e\xb5\xad\x53\x31\xd7\x96\x3b\xd2\xb6\x4e\x98\xaa\x51\xc7\xda\x76\x84\x8e\xb5\x6d\x81\x6b\xf3\x1a\x69\x5b\xe4\x40\x39\xe6\x03\x6d\xeb\x59\x92\x6b\xba\x8f\xb5\xad\xe7\x54\x06\x39\xd0\xb6\x48\x21\x72\xbd\xb0\x19\x8b\x58\x8f\x5b\x6b\xcf\x77\xe1\x58\x2f\x1b\xee\x68\x5b\xdf\x91\xa8\x87\xda\xd6\xc5\x9c\xa5\x7b\xda\x36\x06\xa3\x6c\x87\xda\xd6\x79\x51\x9b\xd7\x58\xdb\xc6\x20\x91\xe3\x3d\x6d\x1b\x03\x71\x65\xdc\x58\xdb\xba\xfe\x8c\x78\xa8\x6d\x6f\xd9\x59\x6f\x12\x9a\x02\x7b\x02\x14\x30\x0e\xbd\x55\xbd\xc2\xe8\x00\x67\x1e\x9a\x81\x55\x95\xe3\x28\x0f\xc7\x10\x19\xce\x29\x8e\xa6\xac\x32\x24\x26\xb5\x83\x24\x70\x88\xb7\x26\x40\xdb\x4d\x0e\x07\x6e\xc2\xb4\x5c\x03\xd4\x3a\x00\x1c\x72\x1a\x68\xcb\xae\x7d\xea\x65\xaa\x04\xb4\xfd\xcd\x45\xa4\x5a\x61\x40\xbc\x10\xec\xbb\x5a\xac\x45\x0a\xfc\x40\x0c\x23\x2f\xea\x89\x18\xd4\x29\x35\x34\x46\xa5\x2a\x09\x41\x43\x26\x1e\x2e\x4a\x2c\x57\x31\x06\x29\x44\x1d\x68\xab\x81\xa8\x76\x1e\x48\x81\x62\x55\x6e\x1e\x38\xae\xf7\x27\x90\xfc\xfc\x36\x9c\x38\x21\xb5\xb8\xdd\xa2\x9e\x3c\x89\x2a\xf3\xc7\x83\xb3\x8b\x7b\x68\x28\x46\x4a\x0d\xd5\x5c\x69\xe4\xbe\xc5\xdb\x93\x4c\xcc\x91\x1a\xcc\x91\x86\xdd\xa6\x76\x63\x0a\x72\x7b\xe2\xbc\x83\xa2\x0d\x9d\x67\x04\x97\x3b\x9a\xfd\x65\x44\xcb\xbf\xb2\x23\x71\x38\x7d\x5b\x13\xcd\xc0\x01\x62\xbb\xaa\xe4\xec\x7d\x13\x86\xbd\xae\x25\xb6\xe4\x7b\xbd\x72\xac\xbc\x90\x21\x16\x96\xf3\xc0\x0b\x42\xde\xdf\xaa\x88\xd5\x96\x0d\x14\x40\x71\x1f\x38\xb5\x3d\x8a\xb5\xae\x3e\xcc\xce\xbf\xd5\x6b\xfe\xe3\xcd\xe7\xcb\xfe\xd9\xd1\xf5\xfa\xfa\x3f\xfa\xcd\xfa\xe8\xf9\xd3\x93\x9b\xe9\xee\xe2\xfe\x95\x7f\xf6\xce\x59\x22\xfe\xc4\x42\x44\x3f\xcc\x66\xee\x26\x49\x86\xec\x18\xc3\x09\x42\x6a\xf5\x1a\x30\x48\xbd\x1f\xb9\x83\xe6\xa0\x35\xcb\xbb\xf3\x11\x4c\x14\x04\x6b\x7b\xae\x30\x33\xa0\x3a\x9c\x3d\x76\xda\x4d\x92\xf7\x21\x46\x04\x79\x42\xe6\xb5\x34\x5b\x86\x2e\x49\x60\x05\x04\x28\xb7\xbc\x00\xae\x01\xa8\x1b\xb9\x3c\x42\x27\x59\x83\x34\x6a\x14\xb8\x6e\x60\x36\xf7\xa8\x44\xdf\xfb\x77\xd3\x40\x86\x41\x94\xb5\xa1\xb1\xea\x9e\xee\xdc\x20\x64\x4d\xc3\x4d\x9e\xc6\x9a\x95\xe7\xe6\xa2\x44\xa3\x24\x73\x38\x29\x41\x06\xe8\x26\x39\x07\x31\x4f\xe2\x72\xd3\x0f\xea\x0d\x9a\xba\xac\x01\xb2\x19\x22\x97\xab\xbc\xcc\x8c\x58\x7c\x4e\xa9\xdd\x48\x39\xc7\xdb\xb1\x2e\x59\x60\xa8\x1d\x69\x04\xa7\x1c\x22\x61\x55\xc2\x12\xac\xde\x16\xdd\x41\x31\x70\x6b\xb9\xe7\x23\x18\x2c\x24\xac\x77\x3e\x15\x66\xc5\x5c\x60\xb6\x9c\x53\xf6\x09\x73\x88\x26\x6a\xac\xa5\x10\x10\x65\xcc\x5d\x32\x17\x87\x18\x35\x39\x9d\x53\x7d\x15\x30\x76\x79\x84\x7a\x98\xb9\x75\x67\x87\xdb\x69\x2f\x5b\x28\x37\x1e\x35\xa9\x22\x51\xe1\xc0\x28\x9e\x20\x41\x6a\x0b\xe9\xce\x47\xd1\x87\x18\xa0\x89\xf7\x12\x7d\x64\x8d\x86\x4f\x2c\x18\x13\x8b\x26\xec\x26\x6e\x3a\x4a\x8a\xc9\xa9\x48\x84\x19\x40\xd4\xc3\x4c\xa8\x09\xa5\x12\x54\x62\x44\xb4\xee\x61\x36\xff\xad\x7b\x05\x09\x03\xb0\x39\x41\xb9\x31\xe3\x1c\x54\x43\x34\x7e\x00\x93\x9c\x7d\xa7\x11\x39\x03\x62\x37\x71\x14\x84\x4d\xca\xdb\x1b\xb2\x24\x28\xd2\x81\xa6\xa0\x40\x49\x1a\x0d\xeb\x65\x7c\xf2\x03\xee\x18\x99\x40\xe2\x60\x60\xe5\xad\x86\x0c\xa3\x72\x40\xc8\x85\x7c\xb5\x0a\x74\x90\x21\x20\x91\x4f\x20\xed\xfe\xf7\xdc\xb1\x4c\xe8\xc3\xb4\x09\xf2\x73\xf0\x0d\x60\x7a\x10\xbb\xb3\x92\xec\xad\x2c\x3f\x88\x91\x04\xb0\x76\x21\xed\xae\x40\x5d\x2f\x51\x7d\x61\x02\x9e\x77\xb9\x50\x12\xb1\x9e\xef\x7c\x0d\x31\xeb\x18\x9a\x78\x4c\xd5\x0e\x86\xd5\x30\x53\xc9\x45\xb8\x03\x79\xad\x6d\x9c\x7d\x60\x37\x7c\x8f\xa2\x93\xdd\xbc\xdc\x1b\xb4\x03\xa4\xe5\x80\x09\x8c\x13\x8c\x61\x93\x90\xb2\xd3\xa3\x0a\x58\x01\x13\x26\x47\x59\x40\x8d\xf1\x09\xfa\x62\x24\x47\xc5\xee\xdc\x61\x94\x64\x5c\x2e\x22\x52\xca\x9c\x12\x77\x93\x02\xa3\x98\x99\xc3\x59\x50\x62\xce\xc5\x06\x98\x49\x2e\x83\x0d\x55\x45\xb5\xa2\x29\x8b\x90\x1f\xc7\x62\x8c\x16\xc5\xaa\x65\xd8\x5f\xc2\x32\x0f\x3c\xbe\x85\xbd\xf0\xe5\x7a\x9c\x3e\x6f\x46\x88\xca\xc5\x6f\x24\xc8\x51\xaa\x1f\x22\x60\x2c\x5a\x6e\xe8\x33\xe4\xec\x33\x26\xd7\xe5\x9a\x0b\x93\x62\xae\x97\xc4\x35\x40\x30\x86\x26\x00\xe5\xa0\xa1\x96\xee\x8c\xf4\xe4\x96\x8c\xf5\x6e\x9e\x35\x29\x63\x01\x99\x10\x7c\x1b\xd9\xf5\x5a\x8a\xac\xdd\x79\x81\x05\x23\xdf\x71\xab\xa2\xca\x89\x4a\x99\xce\x44\x2a\x54\x4d\x48\x4e\x52\x5e\x79\xfa\x31\xd2\xa0\x81\x76\x67\xb1\x03\x36\x8e\x4b\xc5\x12\x8b\x94\x5b\x14\x44\x20\xc9\xc3\x4c\x44\x90\x6a\xc8\xbd\x18\x4b\x35\xca\x31\x99\x3a\xaa\x48\xca\xdc\xa6\x02\x8b\x54\x5e\xad\x11\xa6\xcc\x4a\xd5\x32\x25\x23\x49\x4f\x50\x3c\x70\x88\x28\x6e\x59\x82\x41\x36\x2e\x07\x1a\x15\x00\xb4\x0e\xca\x7b\x28\x01\xbc\xc3\xa8\x07\xb8\xe7\x8c\x14\x0e\xc4\xe2\x68\xce\x49\x05\xdc\xa8\x9f\x22\x84\xc6\x18\xb8\x8e\x02\x73\xf1\x18\xb1\x9e\x08\xf6\x10\xfb\xa8\x16\x93\x8a\xa9\xfb\x23\x01\x88\xc9\x2c\x35\x18\x25\x45\x72\x58\x21\x26\xcb\xd4\x60\x57\xbe\xf5\x2d\xa2\x32\x24\xf2\xd9\xc5\xb5\x67\x4a\xe4\x28\x50\xca\xca\x6d\x36\x66\xb3\xc2\x7c\x84\xa8\x04\xdc\xd0\xec\xc5\xcc\xd1\x8c\x6c\x38\xcc\x97\x38\xe7\x42\xfc\x14\xd1\xd0\xa4\x59\xce\x31\x9a\xd4\x34\x01\xa4\xd4\x96\x96\x25\x61\xcd\x12\xca\x3a\x80\x06\x19\xca\xde\x58\x14\x14\xd3\x6a\x98\x89\x8a\x17\x29\xa0\x39\xed\xa0\x1a\x4e\xc0\x90\xe9\x09\xfa\xb9\x25\x23\x11\x75\xc0\xea\xc5\x13\x49\xcb\x3d\x27\x46\x05\x74\xb4\xde\x86\x03\x95\x0b\x7e\xa3\xa8\xd9\x0d\xbb\x24\xc8\x19\xc5\xd1\x2c\x49\x54\xdd\x63\x29\xf1\x8e\x49\x1d\x36\x95\x2c\x9c\x3a\x47\x49\x55\xd1\xbb\x64\x4c\x20\x9e\xed\x0e\x26\x4a\x50\x7b\x27\x94\xae\x65\xdd\x39\x08\x04\x02\x48\x54\x60\x22\xa0\x0c\x5e\xee\xfd\xb0\x12\x4d\x59\x0b\x9c\xd1\x44\xdc\x06\xf8\x3a\x4a\xf3\x25\x26\x60\x2a\x90\x61\x79\x25\xcc\xf5\x00\xe1\x36\x31\x60\x14\x91\x62\x53\x84\x29\x6a\x83\x93\x1f\x70\x8a\x4d\xcd\x66\x24\x1e\x33\x71\xe5\xc6\xd1\xb2\xc3\x19\x29\x11\x40\x85\x95\x08\xa9\xc0\x26\x4a\xce\xfe\x09\x88\x77\x51\xc4\x5a\x58\x12\x79\x2a\x76\x20\x1a\xa2\x4b\x95\xec\x09\x0c\x89\xbc\x6d\x15\x14\x00\xd5\xc5\x89\xf8\x29\xcc\x9b\x8a\x1b\x76\xd6\x44\xce\x58\x0a\x32\xab\xe2\x2d\x6c\x12\x53\x7d\xdf\x99\x0d\x52\x43\xb9\x8c\x54\x85\xd6\x42\xca\xc8\x84\x5c\x46\x5a\x16\x4b\x59\x1b\x8c\x80\x56\x1b\x67\xa6\x6c\x6a\xee\xb0\x86\x88\x8c\x4a\xf5\x5d\x9e\x2b\x3f\x8f\xa4\x04\xe1\xc8\xbe\x47\x39\x44\x48\x08\x6c\x9d\xaf\x39\x31\xa8\x0b\xa7\x1c\x20\x26\x62\x93\x1a\x0a\x8a\x98\xb8\x0c\x06\x84\xe8\xdc\x2e\x70\x54\xa9\x58\x6b\x16\xbe\xcb\x4a\xf5\x65\x62\xbb\x76\x05\x3f\x46\xd4\xd7\xa7\xf5\x26\xac\x90\x37\xab\x39\x14\x73\x7d\x81\x5e\x98\x1b\xd9\x9e\xb0\x73\x0e\x71\x8f\x69\x42\x36\x75\x38\xe7\xc4\xae\x8b\xdd\x1e\xf8\x22\xb8\x34\x60\x32\x25\xa9\xec\x52\x33\xa4\x52\x83\x99\x14\x09\xca\x7a\x68\x5f\xc0\xa1\x79\x68\x41\x31\xe5\x9c\xc6\x30\x28\x04\xc9\xc4\x6a\xde\xfd\xcd\x45\x90\x61\x07\x8a\x21\x52\xc4\x5c\x7c\x65\xe1\x2c\xd1\x17\xee\x70\x62\x49\xa5\x19\x47\xf6\x83\x88\x2b\x14\x2c\xc5\x3f\x97\xde\x6b\x80\x84\x40\xd5\x84\xcb\x32\x2e\xc2\x35\x11\x58\xb2\x82\x42\xd4\xac\x65\xaf\x94\x10\x10\x9a\x61\x40\xef\x99\x65\x0b\x23\x45\xb5\x01\x26\x8b\xd2\xde\x9a\xa2\x40\x4e\x0d\xe6\x82\x49\x7d\x7f\x5e\x9d\x68\x18\x8b\x2a\x64\xa8\x73\x71\xcc\x58\x44\x07\x25\x25\x34\x1b\x50\xcf\x2f\x57\x05\x09\x80\x74\x98\xc9\x4f\x37\x4e\x64\x05\x14\x48\x83\x03\x90\x8a\xa0\xe6\x00\x59\x05\x13\xb4\x38\x98\x28\x97\xc6\x93\x32\x29\xa5\xdc\x60\x15\xf2\xd1\x14\x38\x62\x32\x6b\xb6\x5d\x25\x5a\x69\x67\x91\xd1\xb4\xd4\x42\x85\x60\x89\x92\x99\xe7\x59\x8a\x14\x53\xa9\xb2\x0a\x41\xc5\x80\xa5\xbc\xaa\xcc\xaa\x6c\xb9\x03\x8d\x21\x59\x84\x68\xe5\xc2\xb8\x6c\xa3\xd7\x80\xec\x27\x67\xe6\x72\x61\x1c\x39\x66\x80\x52\x5a\x72\xf0\x00\x66\x2e\xef\xf2\x72\x04\x8e\x85\xcd\x29\x68\x94\x58\xe1\x04\x66\x66\x85\x17\xa9\x7c\xf7\xc3\x2b\x6a\xf6\xba\x87\x56\x4a\x99\x77\x4f\x22\xce\x05\x75\x2d\x92\x2b\x4a\x1a\x4b\xb3\xcb\x4e\xc1\xe4\x26\x4a\x06\x66\x16\xc0\x02\x73\xca\x9c\x59\x2a\x8c\xae\x2e\xc4\x61\x02\x89\x49\x4a\xfa\x48\x48\x31\x49\x9d\x10\x38\x0b\x62\x45\x7d\xaf\xb0\xe8\x1c\x4b\x29\xa5\xa2\x10\xc4\x85\x81\x28\xb0\xc3\x29\x22\x90\xb5\xda\xc5\x48\x9a\x52\xb9\xba\x26\x14\xc4\x06\xc7\x04\x0a\xa5\x0d\x30\xaa\x17\x74\x5f\x22\x85\x08\xca\xa9\x8a\x82\x98\x33\x98\x47\x0f\xcb\x2b\xa5\x8c\xf5\x65\x09\x08\x6a\x43\x9d\x14\x5a\xd0\xc4\x14\x6b\x91\xc1\xa0\x18\x33\x54\x01\x91\x40\x18\x73\x2d\xd7\x9a\x80\xa5\xf4\x39\x03\xe4\x2c\xa5\x34\x33\x88\xd4\x76\x26\xac\xca\xa0\x05\x25\xce\x49\xc1\x7b\x6d\x12\xa6\x5c\x7a\xad\xc3\xc4\x94\x4a\x0b\x16\xd0\xa8\x9c\x1b\x8c\x49\xdd\xb0\x04\x14\xf4\xb0\xef\x61\x92\x7a\xb5\x8b\xcc\x52\x73\x1b\x5c\x58\x64\xdf\x00\x0a\x4c\x16\x39\x55\x3f\xb2\x00\x01\x95\x37\x90\xa9\xde\xb5\x7a\x44\x39\xde\x81\x4a\xad\x54\xd2\x72\xdb\xd8\x2e\x5f\x9d\x44\x59\xeb\xa5\x77\x3d\xff\x97\x5a\x11\xa5\x4c\x31\xbc\x6f\x28\x2c\x16\x2b\xa7\xef\x14\x73\x13\x5b\x1a\xdd\xb4\x58\x72\x58\x04\x40\xca\x49\x46\xb2\xb7\xa1\x84\x8e\x42\xe4\xa8\xb1\xf6\x0a\xe1\x7a\xd1\x92\x33\x68\xed\x98\xf7\xa4\x8f\x0b\x22\x4b\x21\xc1\x13\xff\x87\xa4\x7c\x47\xe8\x1c\xcc\x73\x85\x9f\xe4\x20\x54\xae\xf9\x47\x58\x3d\xa3\xb4\xbe\x58\x1f\x7d\x00\x1a\x59\xf3\x29\x4a\xf5\x28\x13\x1b\xb6\xaf\x0e\x80\xb7\xf2\xac\xee\xb3\xcb\x87\x12\x07\x4f\x9f\x7a\xbc\xb1\xfa\x25\x8b\x0e\x7c\x4b\x13\x96\xab\x64\xd1\x36\x85\x2b\xad\x3c\x9c\x34\x5a\x68\xd0\x8f\x58\x0f\x41\xd5\xb9\x01\x72\xd9\x29\x0f\x62\x2e\x32\x63\x9d\x61\xe2\x8e\x64\xa2\x72\xe3\xaa\xf5\xf0\x0d\xe5\x45\x95\xf9\x1e\xa5\xd4\x0e\x7c\x54\x76\x75\x0c\x4d\x80\x38\x10\xe2\xdd\x61\x1c\x7c\x73\x90\xcb\x31\xe4\x0e\xe4\x09\x9b\x5b\x6f\x6a\xd8\x1d\xdf\xbc\x75\xd4\x53\xe6\x3d\x0c\x25\xc4\x76\x8d\x3e\xd9\x63\x31\x94\xaf\x02\x96\x29\xcc\x8f\x03\xe3\x90\x3f\xb0\x0b\xfb\x13\x5a\xbd\x04\x4e\xed\xc6\x0a\xa2\x05\x10\x1d\x63\x00\x7e\x48\x16\x5f\x85\x48\xa3\xed\x00\xa5\x80\xf5\x6d\x89\xab\xf6\x8a\x79\xf9\x66\xe3\x11\x86\x40\xa5\x7c\x5b\xe2\x68\x45\x43\x3a\xec\x0f\xa6\x72\xb4\xd4\xc8\xea\x05\x39\x9a\xcf\x09\x56\x2e\x60\x0c\xea\x0d\xd3\xe0\xe4\x08\x9a\x40\xf4\xa3\x6a\xbe\x3b\x0c\xea\xa9\x45\xfd\xac\x7b\x17\x1a\x3b\xd4\xb0\x3b\x8e\x3b\xa6\x90\x73\xa9\x87\x11\x25\x67\xf1\xae\x11\x21\x08\x1a\xb5\xfd\x23\xf3\x56\xd0\xf9\xd4\x29\xa7\x1c\xef\x86\xe8\x7e\x24\xff\xd4\xc5\xdd\xf8\x3f\x4f\x4f\xb6\x5f\x3e\xd5\x2f\x1a\x97\x6f\x1c\x97\x6f\xd5\xd7\x2f\x1c\xb7\xaf\xb0\x4f\x6f\xbf\x8a\x7f\xf2\xf7\xed\xfa\xfa\xa8\x5b\x4c\x77\xd3\xe3\xdb\x6f\x68\xd7\xdf\x67\x3d\x7f\xf4\xdb\x6f\xfe\xf1\xd9\xf5\x7c\xbd\xe8\xbb\xf0\xfb\xef\xc5\xe8\xed\x37\xae\xff\xa2\xd5\xe5\xd6\x1f\xfa\xad\x38\x79\xb4\xeb\x7f\xdd\x1d\xf7\x6e\x79\x75\xfd\xe9\x64\xf8\xe3\x78\x75\xbd\xe8\x7f\xed\xb7\xe1\xef\xdb\xa3\xef\xba\x7f\xf4\x55\xf2\xc3\xd1\xc7\x49\xfa\x7e\x0a\x3a\x43\xb1\x04\xba\x98\xf1\x72\x01\x8a\x7d\x8f\x99\x16\x38\xed\xc5\xcd\x3d\xf9\xa3\x79\xff\xe4\x7c\xf3\xc5\x4c\xe2\x72\xb6\x98\xce\x74\xc1\x0b\x5a\x2e\x96\x92\x78\xb1\x48\x99\x97\x29\x2d\x30\x8d\xe6\x99\x6f\xb7\xa1\xdf\xce\xa7\x37\xfd\xc9\xed\x9f\x7f\x3c\xcd\xed\xb8\xe3\x2c\x90\xc9\x66\xd4\x4f\x61\x11\x67\xdc\xcf\x78\x9e\x62\x36\x66\x5d\x2c\xa5\xb7\xe5\x78\xa2\xf5\xa2\xbf\x5a\x6d\x36\xeb\xcd\xc9\xd5\x7a\xd1\x9f\xfc\x7d\xfa\x65\x5a\xf7\x65\xf4\xe7\x7f\x32\xf1\x9f\x31\x71\x9c\x12\x42\x9e\x2f\x00\x35\xf7\x53\x5d\x2c\x93\xa4\x24\x00\x3c\xed\x63\x56\x51\xfd\x03\x9f\x36\x9f\x67\xdf\xca\x3f\x7f\xcd\x8f\xfd\x63\xc7\xfd\x94\x69\x3e\xa5\x29\xcd\x16\x0b\xa5\xa9\x60\x06\xe8\x33\x2b\x2f\x54\x81\x78\xf6\x07\x73\x7f\x9b\x5e\x5d\x96\x7f\xfe\xda\xdc\xfb\xc7\x8e\x69\x09\x68\xd3\x18\x23\xb1\xf5\x14\x93\xcc\xfa\xb8\x54\x49\x60\x39\xf3\x4c\xc1\xed\x3e\xea\xba\x7f\x94\x1c\xdb\xcd\xfc\x1f\xfe\x26\x62\x75\xbd\xda\x1d\x23\xf4\x53\x37\xc7\x0b\x20\x62\x4d\x2c\x3c\xd3\x08\xfd\x72\x0e\xd2\xe3\x62\xe1\xf6\x9f\xff\x55\xcb\xed\xe7\x1d\x00\x51\xa5\x7e\x15\x6d\x49\x31\x8b\xc5\x69\xca\xb3\x65\xee\x81\x61\x36\x67\xbb\x67\xfb\x4f\x9a\xbf\xea\x77\x9b\xd5\x7c\x7b\x7c\xb3\x59\x7f\x59\x2d\xfa\xcd\xfe\xe7\x1d\x04\x8b\xd4\xd3\x2c\xf6\xcb\x34\x97\xbc\x50\x24\xca\xf3\xb4\x48\xd3\x7e\x3a\x5d\x0a\xcb\x3f\xb5\x98\xfb\xb3\xdd\x6c\xd6\x57\xfd\xee\xa2\xff\xbc\x3d\x96\x25\xc1\x6c\x4a\xb3\xb4\x5c\x2e\xb2\xc4\xe5\xd4\x40\xa7\x71\x9a\xd4\x88\x7a\xd3\x7c\x6f\xc6\xdf\x7e\xeb\x36\xd3\xeb\x4f\x7d\x17\xce\x7e\xdd\x6d\xda\xcf\x39\xb6\xdd\xef\xbf\xdf\xf3\xe5\xf7\xdf\x47\x4f\xfa\x73\xfd\xf5\xa2\xab\x55\xf0\x4f\x78\x7d\x5b\xf8\xfa\xe5\x32\x47\x9e\x03\xe4\x5e\x67\x73\x9a\xd2\x9c\x97\x36\x9f\xc5\x34\x47\xf5\xa2\x75\x7f\x17\x1e\xed\x7f\xcc\xb2\x5a\x0c\xbf\x2a\x9e\x4d\xb7\xab\xf9\xf1\x62\xb3\xbe\x59\xac\xbf\x5e\x1f\x7f\x5d\x6f\xae\x2e\xd6\x97\xbd\x3f\xb9\xff\x65\x49\xfd\x75\xcc\xd3\x93\xfa\x23\xe5\xff\x1f\x00\x00\xff\xff\x36\x19\x0b\xb0\xb5\x3c\x00\x00") +var _web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\xfd\xd9\x76\xe3\xc6\xba\x20\x08\xdf\xeb\x29\x48\xd4\xfe\xb1\x23\x92\x9f\x90\x88\x20\x09\x92\x21\x85\x58\xe9\xb4\xd2\x27\x6b\x3b\x87\xca\x94\xed\xe3\xc3\xcd\xd2\x81\xc8\xa0\x08\x27\x04\xd0\x00\x28\xa5\x4c\xb2\x96\xeb\xef\xae\x1e\xd7\xea\x07\xe8\x9b\xae\xdb\xbe\xea\x77\xa8\x37\x29\xf7\x8b\xf4\x8a\x01\x13\x09\x2a\x73\xbb\x5b\x17\x22\x10\x88\x79\xf8\xa6\xf8\x86\x87\x20\x9a\xc7\x0f\xce\xe5\xdd\x8d\x48\x2e\xdf\xfe\xc8\x17\xeb\x68\x96\x05\x71\x84\x04\x64\x78\xb3\x88\x13\x74\xef\x27\xad\xa4\x15\x44\xad\x0c\x8b\x49\x32\xe5\xd9\x24\x99\x9e\x24\x22\x5b\x27\x51\x4b\xec\xd0\x5e\x05\xdb\xed\x66\x07\x9b\x57\x97\x2f\xae\x7e\xf8\x70\xf9\x91\x6d\x76\x70\xf9\xcf\x57\x97\x6f\xbf\xbd\x7e\xff\xe1\xdd\xd5\xbb\xab\x9f\xdf\xcb\xc4\x6f\xfd\x4c\xb0\x36\xd9\xc1\xf5\x8b\xf7\xef\xbf\x7f\xfd\xf2\xc5\xd5\xeb\x77\x6f\xaf\xaf\x2e\xdf\xbc\xff\xfe\xc5\xd5\xe5\xf5\x4f\x1f\x5e\xbc\x7f\x7f\xf9\x81\xb5\x09\x5c\x7f\x7b\xf9\xea\xc5\x0f\xdf\x5f\x5d\xbf\xf8\xf8\xf3\xdb\x97\xd7\xef\xbe\xf9\x78\xf9\xe1\xc7\xcb\x0f\x1f\x59\xdb\x85\xeb\x7f\xf7\xef\x7f\xb8\xfc\xf0\xf3\xf5\xeb\xb7\x57\x97\xdf\x7d\x50\x75\xa8\x22\x45\x3d\xef\xde\x7e\xff\xf3\xf5\x77\xdf\xbf\x7e\xf3\xe6\xf2\xc3\xf5\xcb\x77\x6f\xde\xbf\x7b\x7b\xf9\xf6\x4a\x96\xdd\xe1\x13\x39\xac\x30\xf6\xe7\x22\x81\xb9\x58\x04\x91\x80\x44\xfc\xba\x0e\x12\xf1\x26\x9e\xaf\xc3\xe2\x2d\xff\xfd\x25\x85\x64\x1d\x45\x41\x74\x7b\x25\xd2\x2c\xe5\x6d\x72\x86\xca\xb9\xc2\x1b\x6b\x9d\x8a\x56\x9a\x25\xc1\x2c\xb3\x4e\xf2\x0f\xad\x0c\xe1\x8d\x6c\x48\xf0\x77\x37\xbf\x88\x59\xe6\xcc\x12\xe1\x67\x02\x45\xeb\x30\xc4\xc5\x24\x3a\xd7\xd7\xfc\x3e\x0e\xe6\x2d\x17\xe6\x22\x14\x99\x50\x49\x20\x76\x6a\xea\xf9\x46\x77\x93\xd5\x7a\xcb\x9a\x3a\xcd\x1a\x87\xc0\x0e\x86\xc2\x8a\xa7\xdd\x49\xf1\xc8\xcd\x13\xaf\x55\xc2\xab\x83\xcc\xb7\x43\xc6\x27\x53\x48\xf8\x0c\x09\xb0\x90\xc9\x8e\x2d\xc8\x30\x44\x3c\x73\x42\x11\xdd\x66\xcb\x53\x72\x16\x5d\x70\xf7\x2c\x3a\x3d\xc5\xd9\x24\x9a\x3a\xe2\xf3\x2a\x4e\xb2\x14\x15\xe3\x4e\x9c\x3b\xd5\x44\xfe\x65\x07\x7a\x84\x7c\x13\xc5\x2f\xe3\x68\x11\x06\xb3\x8c\x15\xcd\x67\x7a\x26\x23\x08\x4e\x64\x37\x22\xbd\x23\x33\x67\xe9\xa7\xef\x1e\xa2\xf7\x49\xbc\x12\x49\xf6\x88\x22\x6c\xdb\x49\x53\x22\x0a\xb8\xec\x06\x88\x49\x30\xe5\x42\x3f\x45\x53\x9e\x4c\xa2\x29\xde\xc1\x9d\xff\x49\x7c\x2b\x16\xfe\x3a\xcc\x2e\x55\x6f\xe4\x26\x51\x7b\x24\xe2\x19\xc2\x10\x70\x24\x7f\x5c\x5c\xae\x6d\x2c\x67\x24\x5b\x26\xf1\x43\x2b\x12\x0f\xad\xcb\x24\x89\x13\x64\xf9\x51\x6b\x1d\xa5\xeb\x95\xac\x43\xcc\x5b\x7a\x84\xad\x07\x3f\x6d\xe9\x05\x9b\x43\x4b\x7c\x5e\x89\x99\xfc\xf8\xaf\x3a\x09\x05\x73\x68\xcd\xc5\x2a\x05\x93\x1d\xff\x6b\x2b\x88\xd2\x4c\xf8\xf3\xd6\x6d\x9c\xb1\xd6\xbf\x5a\x1d\xd1\xb1\xfe\xb5\xe5\x27\xb7\xeb\x3b\x11\x65\x69\x2b\x8b\x4d\x75\xff\x6a\x61\xb5\x4b\x7c\x3e\xb1\xcc\x42\x58\x60\x99\x09\xb5\xc0\xd2\x15\x5a\xd3\xb2\xdb\xa9\x3c\xd9\x90\x40\x24\x3b\x1f\xa4\xce\x7a\x1d\xcc\x79\xd0\xe9\x80\x7a\x0b\xe6\x5c\xe8\x27\xd9\x21\xde\xce\x57\x53\x4e\xaa\x7e\x1a\xfb\x2c\xd3\x39\x74\xdd\x7c\x63\x5a\x63\x9b\xdd\x4e\x7f\x98\xf9\x61\x78\xe3\xcf\x3e\xf1\x44\xbf\x2f\xfd\x54\x4f\x6a\xfa\x22\xfd\x56\xac\x78\x9b\x98\xc6\xd2\x17\x61\xe0\xa7\x3c\xd2\xaf\x89\x08\x16\x81\x98\x73\x39\x9b\x2f\x92\xc4\x7f\x44\x79\xeb\x58\x67\x48\x33\x3f\x13\xdc\x8a\xc4\x83\xb5\x2b\xc6\x13\x22\xbc\x29\xdf\xd6\x7a\x51\xcc\x48\xca\xf4\x99\x1e\x75\xb9\x85\x03\x1e\x4d\xc4\x74\xbb\x8d\x26\xa2\x63\x3d\x0f\xa2\xb9\xf8\x6c\x4d\xcf\x02\xdb\x0e\xf2\x6e\x9d\x61\x99\x27\x70\x82\xb9\xca\x26\x1f\xca\x9c\xf9\x1e\x0e\xb6\xdb\x3a\xc4\x3c\xd8\x10\x2f\xe3\x75\x38\x6f\x45\x71\xd6\x5a\x04\x51\xb1\x21\xf2\x25\x0d\xee\xcc\x46\x59\x24\xf1\x9d\x4c\xcd\x3a\x96\x5c\x53\x55\x19\x24\xb6\x6d\xad\x44\x34\x0f\xa2\x5b\xab\xcd\x79\xa0\x67\xc0\xb6\xad\x45\x10\xf9\x61\xf0\x9b\x98\xd7\x92\x51\xe0\xc8\x36\xbe\x15\xab\x14\x25\x18\x12\x67\xb5\x4e\x97\x28\xc0\x18\x82\x72\x26\xe6\xba\x9f\xc1\x02\x59\x8e\x2c\x2d\x9c\xd9\xd2\x4f\x5e\x64\xc8\xc5\x38\x07\x48\x27\x05\xdc\xe7\xc2\x49\x57\x61\x90\x21\xeb\xb9\xa5\x4f\x77\xf9\xea\xa4\x61\x30\x13\xc8\x85\x53\x22\x0f\x88\x0b\x31\xcf\x37\xc9\x59\x70\x1e\x9f\x05\x9d\x8e\x3e\xb3\x3e\x4f\x26\xc1\xf4\x44\x35\xe9\x58\x9c\x73\x5f\xb5\xef\x72\xce\xa3\x7c\x85\x0f\xe7\xcd\x8f\xe4\xa4\xf9\xb3\x99\x48\xd3\xd6\xca\x4f\x44\x94\xe5\xb3\x17\x2f\x5a\x49\x1c\x67\x16\x3e\x89\x9c\x55\xbc\x42\x78\x27\xc2\x54\x98\x31\xa9\xfa\x67\x71\x94\x05\xd1\x5a\xc8\x0c\x72\x12\x7c\xbc\xdb\x99\xd1\x45\xce\x2f\x71\x10\xa9\x11\x94\xb3\xb2\x94\xfb\x46\x67\x68\xa3\xb6\xdc\x1a\xb6\xdd\xae\xed\x0d\xbc\x4b\x9d\x55\x12\x67\x71\xf6\xb8\x12\xce\x01\xbc\x28\xe1\x64\x0e\xf1\x2b\x67\x24\x87\x70\x27\x12\xee\x73\xce\xc5\x76\x6b\xc5\x0a\x21\x58\x6d\x2e\xeb\x8b\x17\x2d\xb5\xac\xa6\x8e\x4a\xea\x76\xab\x31\x83\x5a\xa9\xb9\x6e\x71\xbb\x6d\x1b\x74\x12\xa4\x97\x9f\x33\x11\xa5\xc1\x4d\x28\x90\xc0\xdb\x2d\x2a\x32\x71\x81\x77\x50\xed\xb2\xe9\x43\xb5\xa3\x72\xc2\xca\xad\xc4\x39\x2f\x8f\xd9\x76\x6b\xc9\xf3\xf8\x28\xb7\x5e\xed\x43\xbe\x49\x9a\x86\xa7\xe1\xb7\xf3\x90\xf8\x2b\x8d\x3d\x52\xdb\x46\x75\x90\x70\x98\x05\x99\xe3\x5a\x87\x1d\x18\x97\x40\xe1\x11\x69\x74\x6d\xe6\x34\xcf\xe2\xf8\xab\x55\xf8\xa8\x8a\xd7\x00\x48\x81\x60\xaa\x89\x66\x9f\x71\xb7\x06\x4a\xca\xc1\x37\x42\x2a\xdb\xd6\x93\xaf\x97\x0c\x35\x0c\x99\x0b\x6c\xb0\xd6\xe1\x96\xb0\x6d\x5d\x60\x3f\x1d\x61\x68\xa8\xa9\xbe\x58\xeb\x28\x15\xa2\xba\x54\xfb\x00\xf0\x28\x08\xae\xd7\xa3\xa6\x6f\x7f\xc9\xcd\x94\xc8\xd3\x5f\x59\xd7\x5a\x13\xc5\xda\x9f\x64\xc9\xe3\xa6\x06\x9e\xd5\xcb\xb5\x59\x17\xd8\x2f\x24\xeb\xdd\xa9\x69\x0d\x1f\x37\x47\xb6\x50\xbe\x29\x4c\x31\x21\x0f\xbc\x98\x5b\x78\xbf\xf3\xd7\x07\xbd\xcf\xe1\x92\xd9\x09\xf9\xda\x6a\x40\x84\x21\xe3\xee\x59\x76\x2e\x72\x20\x94\xe5\x00\x28\xe1\x62\x92\x4d\x4f\xe4\x3f\x9e\xe4\x13\x3e\x2e\x9e\xd8\x3e\x25\x82\xf0\xae\x20\x70\x6b\x3d\xca\xc1\x6b\x8d\x2a\x92\x53\x2a\x97\x84\x1f\x9f\xce\x1c\x88\x9f\x94\x14\x54\x81\x64\x21\xe1\xee\x59\x72\x9e\xe3\xba\xb3\x24\xef\x75\xa4\x48\x6d\x08\x6a\x63\x95\x14\x78\xb1\xdc\x86\x68\xd4\x9d\x37\x6f\xbb\x93\x02\xfd\x4b\xf8\x3a\x46\xcd\x28\xd8\x85\xa0\xd8\xc3\x0d\xbb\x11\xb3\x82\x9c\x50\xb5\xec\x67\xf6\x3f\x89\x0f\xfa\x3b\xc2\x2c\xa7\x32\x1a\x73\xea\xbe\x05\xf9\x56\x9d\xa1\x39\x8a\x72\x5a\x03\xe7\x0f\x20\x0e\x16\xbf\xd2\xc4\x11\xd8\x2a\x41\x06\xaf\xd2\x87\x39\x5d\x69\x3a\x36\x47\x19\x08\x8c\x77\x05\x38\x28\x40\x63\x06\x99\xe9\xcf\x6b\x45\xef\xc8\xe9\x69\xaa\x69\x59\xd4\x01\xd9\x0e\x90\x26\xb9\x6a\x2c\x92\x24\x29\x4a\x72\xe2\x24\xb0\x6d\xb5\x15\x4a\xac\xbc\xdd\xa2\x82\x6c\x33\x2b\x7c\x4e\x6d\x3b\x3e\x48\xc5\xa0\x68\x1e\x49\x7d\x68\xda\x47\x42\xf3\x44\x76\x95\x4f\xa6\x18\x64\xf5\x3c\x51\x74\xa1\x1f\xcd\x24\x6a\x58\x8f\x25\xb6\x4c\x51\xa2\x26\x02\x12\x68\xbb\x98\xe9\x24\x4d\xe1\xb5\x09\xc6\x3b\x7c\x08\xf7\x15\xfe\xd7\xc7\x42\x77\x7a\x81\xda\xc9\x76\x9b\xef\xe1\xa4\x06\xe7\x51\xc2\xf3\x3a\x27\x53\x08\x41\x71\x2e\x78\x1f\x0a\x66\x90\x34\x80\x54\xdd\x67\x48\x76\x86\x67\x71\x7c\x45\xee\xd5\x3b\x62\xa6\x9a\x4a\xb4\xbd\x37\x25\x63\x43\x1f\x67\x20\xbb\x20\x49\x3b\x3d\x40\xf9\xb4\x2b\xb9\x19\x47\x44\x59\x12\x88\x82\x81\xf9\x25\x75\xae\x85\xff\xe9\x3a\x15\x22\xe2\x51\x25\x9f\x5c\xe5\x65\xe5\x7d\x0f\xc8\x0a\xbc\xd1\x1c\x8d\x4a\xc7\x96\x9c\x40\x9d\x07\xd5\x9a\x9b\x85\xc2\x4f\xaa\x7b\xf2\x2b\x7b\xa2\x18\x89\x4c\xd6\x65\xc6\x65\x2d\xe2\xd8\x02\x54\xa9\x69\x87\x71\xf5\xe3\xf3\x1b\x3f\xb1\xe4\xbc\x3f\x95\xc7\x4f\xe7\x0b\x0b\x26\xf9\x21\xac\x52\xff\xf9\x11\xae\x56\x60\x36\xad\xe2\x91\xca\x46\x24\xd7\x54\x79\x3b\xec\xc7\x6f\xaa\x1f\xd5\x75\xd4\xdd\xdf\xcb\xf8\xeb\xfa\x37\xeb\xa9\x5c\xd5\x44\x30\x25\x3e\x5b\x4d\x83\x36\x59\x1c\x5d\xa5\xe5\xe8\x3e\x58\x8e\x19\xaf\x4a\x48\xe4\xaf\xf3\x5c\xe6\x7c\x7a\x8e\xee\xfc\x20\x32\x75\xaa\x62\xc7\x72\x17\x08\x40\xe5\x2c\x26\x72\xb3\xc3\xf9\xfa\xd7\xbf\xec\x25\xab\x66\x8a\x34\xb3\x77\xca\x59\xdd\xdf\x43\x08\x43\x4e\x06\xf2\x82\xe0\xd3\x35\xdb\xf6\xc1\x17\xbd\xbe\xb6\x5d\x3f\x7a\xb6\x8d\xf6\xce\xe2\x66\x9f\xed\xaf\x09\x0c\x76\x78\x87\x15\x4a\xc0\x50\x10\xbf\xf2\x84\x29\x86\xb0\x48\x09\x90\x0f\xa9\xc2\x6c\xed\x64\xe2\x4f\xf5\x53\xa6\x9e\x94\xdc\x84\x97\xa4\x6a\xd1\x3f\xd3\x9c\x6d\x9b\x07\x05\x57\x52\xdb\x0e\x73\x8a\x31\x44\xbe\x84\x51\x32\x3d\xce\xd3\x62\x93\x26\x6b\x5d\xf3\x43\xf2\xbf\xca\x33\xfd\xd5\xea\xf8\x1d\xeb\xaf\x16\x3e\xd1\xcc\xc2\xda\x99\xc5\x73\xc1\xad\x37\xef\xbe\xfd\xe1\xfb\xcb\xeb\xb7\xef\xae\xae\x5f\xbd\xfb\xe1\xed\xb7\x16\xac\x15\x4f\x3c\xe3\xb2\xef\x35\xe2\xe8\x44\x8e\x61\xe2\x4e\x15\x0d\x89\x66\xf9\x9c\x41\x4d\x94\x93\xb3\x76\x48\x65\x26\x53\xc5\x27\x0a\xbc\xc3\x30\x83\xb2\x48\xce\x45\xe7\x94\x82\x6c\xab\xa0\xe5\x72\x34\x1f\x7f\xcd\x44\x81\xcf\xdd\x33\xff\x3c\x67\x85\xce\xfc\x4e\x07\x07\x28\x92\xb3\x5d\xb0\x99\x3b\xb4\x21\x6c\x52\x87\x9c\x02\xd1\x81\x87\x41\x20\x4a\xa8\xfe\xe9\xe9\x9f\xae\xfe\x31\xdf\x86\xea\x87\x9a\xc4\x81\xfe\xe9\xeb\x44\xf3\xa3\xcb\x51\x57\xff\x10\x9d\x65\xa4\x7f\xf4\x1b\xd5\x2d\x50\x5d\x27\x55\xb5\x90\x81\xaa\x9a\x0c\x5d\xfd\xa6\x0b\x50\xf3\xa3\xbf\x8d\xf4\x9b\x6b\x2a\xd3\x2d\xb8\xe6\x47\x57\xed\xea\xaa\xdd\x2e\x3e\x91\x3f\xba\x2f\xae\xee\x99\xab\xdb\x73\x75\xaf\x5d\xd3\x1e\xd5\x3f\x5d\xfd\xd3\xd3\x3f\x7d\xfd\xe3\xe9\x1f\xdd\xc1\xa1\x29\x30\xd2\x7d\xd1\xfd\x1c\x11\xfd\xa3\x6b\x19\xe9\x5a\x46\xba\x96\x91\xae\x65\xa4\x6b\x19\xe9\x5a\x46\x7a\x06\x3d\x3d\x83\x9e\x7e\x1b\xe8\x0e\x7a\xba\x83\x7d\x9d\xd8\xd7\xc3\xf4\xf4\x18\xbc\x91\x1a\xd1\x40\x0f\xb3\xaf\x13\xfb\xba\x5c\xdf\x94\xd3\x03\xf3\xf4\x84\x78\x3a\xa7\xa7\x27\xc4\x33\x2d\xe8\x2c\x03\x9d\x65\xa0\xbf\x0d\x74\x5f\x06\xba\xd7\xfa\x8d\xe8\x2e\x91\x3c\xd1\xac\x91\x1e\x8a\xae\x9a\xe8\x0e\x12\xcf\x24\xea\x72\x9e\x4e\x1c\x98\x2c\x7a\xce\x74\xeb\xa4\x6f\xea\xd4\x53\xd7\x57\x6b\x44\x3c\x93\x45\xb7\xa0\x3b\x4f\xf4\xa0\x49\x5f\x4f\x6b\xdf\xbc\xe9\x2c\x7a\xb4\x44\x77\x9e\x98\xf1\xf5\xf4\xf8\x7a\x66\x26\x4c\xa2\x1e\x6d\x4f\xcf\x67\x4f\xcf\x67\x5f\x8f\xbd\xaf\xa7\xa7\xab\xdb\x1b\x9a\x69\xd5\x33\xa1\x57\x9a\xea\x95\xa6\x03\x33\x67\x26\xd1\x64\xd1\x0d\xe9\xad\x41\x4d\xf1\x61\x4f\xad\x91\xde\x52\x54\x6f\x22\x6a\x76\xb2\xde\xd7\xb4\x6b\x9a\xd5\x59\xba\xba\xb2\xae\x5e\xcd\xae\x2e\xd0\xd5\x0d\x75\x75\x0b\x5d\xdd\x42\x57\xd7\xd2\xd3\xb5\xf4\x74\x2d\x3d\x33\x4c\x5d\xbc\xd7\xc5\x90\x95\xac\x24\xea\xbb\x78\x07\x1b\xd2\xa7\x8c\xf4\x29\x90\x7e\x97\x91\x7e\x17\x48\xbf\xc7\x48\xbf\x07\xa4\xdf\x67\xa4\xdf\x07\xd2\xf7\x18\xe9\x7b\x40\xfa\x03\x46\xfa\x03\x20\xfd\x21\x23\xfd\x21\x90\xfe\x88\x91\xfe\x08\x88\xe7\x32\xe2\xb9\x40\x3c\xc2\x88\x47\x80\x78\x94\x11\x8f\x02\xf1\xba\x8c\x78\x5d\x20\x5e\x8f\x11\xaf\x07\xc4\xeb\x33\xe2\xf5\x81\x78\x1e\x23\x9e\x07\xc4\x1b\x30\xe2\x0d\x80\x78\x43\x46\xbc\x21\x10\x6f\xc4\x88\x37\x02\x32\x70\x19\x19\xb8\x40\x06\x84\x91\x01\x01\x32\xa0\x8c\x0c\x28\x90\x41\x97\x91\x41\x17\xc8\xa0\xc7\xc8\xa0\x07\x64\xd0\x67\x64\xd0\x07\x32\xf0\x18\x19\x78\x40\x06\x03\x46\x06\x03\x20\x83\x21\x23\x83\x21\x90\xc1\x88\x91\xc1\x08\xc8\xd0\x65\x64\xe8\x02\x19\x12\x46\x86\x04\xc8\x90\x32\x32\xa4\x40\x86\x5d\x46\x86\x5d\x20\xc3\x1e\x23\xc3\x1e\x90\x61\x9f\x91\x61\x1f\xc8\xd0\x63\x64\xe8\x01\x19\x0e\x18\x19\x0e\x80\x0c\x87\x8c\x0c\x87\x40\x86\x23\x46\x86\x23\x20\x23\x97\x91\x91\x0b\x64\x44\x18\x19\x11\x20\x23\xca\xc8\x88\x02\x19\x75\x19\x19\x75\x81\x8c\x7a\x8c\x8c\x7a\x40\x46\x7d\x46\x46\x7d\x20\x23\x8f\x91\x91\x07\x64\x34\x60\x64\x34\x00\x32\x1a\x32\x32\x1a\x02\x19\x8d\x18\x19\x8d\x80\xba\x2e\xa3\xae\x0b\xd4\x25\x8c\xba\x04\xa8\x4b\x19\x75\x29\x50\xb7\xcb\xa8\xdb\x05\xea\xf6\x18\x75\x7b\x40\xdd\x3e\xa3\x6e\x1f\xa8\xeb\x31\xea\x7a\x40\xdd\x01\xa3\xee\x00\xa8\x3b\x64\xd4\x1d\x02\x75\x47\x8c\xba\x23\xa0\xc4\x65\x94\xb8\x40\x09\x61\x94\x10\xa0\x84\x32\x4a\x28\x50\xd2\x65\x94\x74\x81\x92\x1e\xa3\xa4\x07\x94\xf4\x19\x25\x7d\xa0\xc4\x63\x94\x78\x40\xc9\x80\x51\x32\x00\x4a\x86\x8c\x92\x21\x50\x32\x62\x94\x8c\x80\x52\x97\x51\xea\x02\xa5\x84\x51\x4a\x80\x52\xca\x28\xa5\x40\x69\x97\x51\xda\x05\x4a\x7b\x8c\xd2\x1e\x50\xda\x67\x94\xf6\x81\x52\x8f\x51\xea\x01\xa5\x03\x46\xe9\x00\x28\x1d\x32\x4a\x87\x40\xe9\x88\x51\x3a\x02\xda\x75\x19\xed\xba\x40\xbb\x84\xd1\x2e\x01\xda\xa5\x8c\x76\x29\xd0\x6e\x97\xd1\x6e\x17\x68\xb7\xc7\x68\xb7\x07\xb4\xdb\x67\xb4\xdb\x07\xda\xf5\x18\xed\x7a\x40\xbb\x03\x46\xbb\x03\xa0\xdd\x21\xa3\xdd\x21\xd0\xee\x88\xd1\xee\x08\x68\xcf\x65\xb4\xe7\x02\xed\x11\x46\x7b\x04\x68\x8f\x32\xda\xa3\x40\x7b\x5d\x46\x7b\x5d\xa0\xbd\x1e\xa3\xbd\x1e\xd0\x5e\x9f\xd1\x5e\x1f\x68\xcf\x63\xb4\xe7\x01\xed\x0d\x18\xed\x0d\x80\xf6\x86\x8c\xf6\x86\x40\x7b\x23\x46\x7b\x23\xa0\x7d\x97\xd1\xbe\x0b\xb4\x4f\x18\xed\x13\xa0\x7d\xca\x68\x9f\x02\xed\x77\x19\xed\x77\x81\xf6\x7b\x8c\xf6\x7b\x40\xfb\x7d\x46\xfb\x7d\xa0\x7d\x8f\xd1\xbe\x07\xb4\x3f\x60\xb4\x3f\x00\xda\x1f\x32\xda\x1f\x02\xed\x8f\x18\xed\x8f\x80\x7a\x2e\xa3\x9e\x0b\xd4\x23\x8c\x7a\x04\xa8\x47\x19\xf5\x28\x50\xaf\xcb\xa8\xd7\x05\xea\xf5\x18\xf5\x7a\x40\xbd\x3e\xa3\x5e\x1f\xa8\xe7\x31\xea\x79\x40\xbd\x01\xa3\xde\x00\xa8\x37\x64\xd4\x1b\x02\xf5\x46\x8c\x7a\x23\xa0\x03\x97\xd1\x81\x0b\x74\x40\x18\x1d\x10\xa0\x03\xca\xe8\x80\x02\x1d\x74\x19\x1d\x74\x81\x0e\x7a\x8c\x0e\x7a\x40\x07\x7d\x46\x07\x7d\xa0\x03\x8f\xd1\x81\x07\x74\x30\x60\x74\x30\x00\x3a\x18\x32\x3a\x18\x02\x1d\x8c\x18\x1d\x8c\x80\x0e\x5d\x46\x87\x2e\xd0\x21\x61\x74\x48\x80\x0e\x29\xa3\x43\x0a\x74\xd8\x65\x74\xd8\x05\x3a\xec\x31\x3a\xec\x01\x1d\xf6\x19\x1d\xf6\x81\x0e\x3d\x46\x87\x1e\xd0\xe1\x80\xd1\xe1\x00\xe8\x70\xc8\xe8\x70\x08\x74\x38\x62\x74\x38\x82\xbe\xcb\xfa\xee\x6e\x0a\xb4\x81\x80\x90\x38\x71\x0f\x02\x39\x9a\x0f\x5d\x84\x7e\xf6\xc6\x5f\xed\x60\x43\x47\x2e\xa3\x23\xb7\xa8\xa7\xdb\x54\x0f\x39\x56\x4f\x10\xcd\xc2\xf5\x5c\xa4\xaa\x22\xc2\xe8\x88\x14\x15\xf5\x9a\x2a\xa2\x87\x15\x19\x61\xa7\x61\xae\x54\x45\x94\xd1\x11\x2d\x2a\xea\x37\x55\x74\x08\x5b\xf3\x8a\x6e\x45\x56\xb9\x1d\xfa\x56\xa4\xb3\x24\x58\x65\x71\xa2\xab\xee\x32\x3a\xea\x16\x55\x7b\x4d\x55\xf7\x8e\x56\x7d\xef\x87\x6b\xd3\xc5\x1e\xa3\xa3\x5e\x51\xcf\x60\xbf\x9e\xda\x85\x61\x81\xd6\xa8\xa4\x40\xf6\xeb\x7e\x9f\xc4\x77\x41\xaa\xa4\x4f\x7e\x18\x3e\xca\xda\xf3\x23\x3b\xea\x33\x3a\xea\x17\xad\x0c\x9b\x7a\xeb\x1d\xd6\xf8\x31\x4b\x82\xe8\xd6\x59\xf9\xf3\xcb\x68\xae\x7a\xeb\x31\x3a\xf2\x8a\x7a\x46\x4d\xf5\x0c\x9e\xaa\xe7\x63\xe6\x27\x99\xaa\x69\xc0\xe8\x68\x50\xd4\x44\xdc\xa6\xaa\x46\x47\xab\xca\x92\xe0\xee\x43\x70\xbb\xd4\x75\x8d\x18\x1d\x95\x1b\x98\x34\x91\xc0\x92\x3a\x7b\xa2\xae\xef\xc5\x42\x57\x35\x64\x74\x34\x2c\xab\x6a\x38\x0c\x5d\x77\xef\x30\x90\xde\x08\x3b\x0b\x64\xf9\xe9\x63\x34\x7b\x9d\x89\xc4\xcf\x62\xc9\x1c\xc3\x86\xf4\x46\x8c\xf4\x46\xd0\x75\x5d\xd6\x75\x55\x85\x0d\xa7\xa2\xbb\x5f\x9f\x87\x9d\xdb\x30\xbe\xf1\x43\x59\x85\x44\xba\xd0\x95\xe5\x65\xf1\x83\xb3\x90\x35\x08\x6e\x8c\xc4\xfe\xf0\x96\xc0\x5c\x9f\x5c\x3d\xae\x84\xe6\x9f\x44\xc7\x6a\x05\xa9\xba\x76\xf2\x5b\x79\x81\xb6\x55\xde\x39\xef\x76\xb0\x91\xed\x1e\x1c\x1d\x23\x2f\x45\xd4\xc3\x27\x47\xfb\xd0\x4e\x90\xc0\x4f\x36\x1a\xb5\x34\xff\xba\xdf\xa6\xc4\x45\x9e\x6c\xf8\xe0\x60\xe9\x86\xcb\x26\x37\xf7\x22\x49\x83\x38\x62\x16\x75\x3c\x87\x10\x6b\x77\x62\x45\xeb\xbb\x1b\x91\x94\xac\xd4\xf5\xb5\xb0\x6d\x74\x7d\x2d\x78\x82\xcd\x80\x0e\x0e\x5a\x3e\x20\xd2\x6b\x1e\x10\x64\x92\xf5\x0d\x16\x48\x8e\x09\x0a\x81\x7f\x56\xde\x86\xa5\x0f\x41\x36\x5b\xa2\x08\x6f\x66\x7e\x2a\x5a\x84\x99\x2f\x45\x1d\x49\xc1\x34\x0a\xcd\x59\x66\x90\xe0\xdd\x89\xca\x4d\x0f\x73\xcb\xf6\x0e\xf2\x4b\x56\x52\x97\xe8\x36\x95\x80\xa0\xb1\x0c\x04\xe5\xc5\x56\x4d\x22\x65\x72\x9a\x2b\x12\x28\x44\x6b\x4a\xce\xba\x21\x3d\x46\x7a\x72\xb6\x0e\x00\x46\x39\x43\x6d\xc9\xb0\x61\x84\x0e\xab\x1d\xb4\x73\x75\x06\x2d\x53\x28\xee\xd9\x37\x3b\xb0\x7c\x0b\x36\xb7\xa2\x72\x71\x5f\x16\xdb\xed\xb0\xe3\xef\xb0\x5c\x29\x49\xba\x10\xd9\x81\x03\x48\x53\xd9\x7f\x10\xc9\x5f\x8a\x9d\x79\x3c\x53\xbd\x87\x80\x27\xfa\x86\x1f\x45\x46\x95\xe2\x32\x14\xf2\xcb\xb1\xbd\x9a\xf3\xcf\xe3\xbd\xfc\x48\x60\x7d\x59\xb2\x51\xc4\x13\xe4\xdb\x92\x1e\x80\xab\xa2\x3f\x54\xf7\x47\xb2\xd5\x81\xfc\x1d\x60\x88\x65\x7a\x0f\x83\x2f\x7f\xbb\x18\xf6\xb6\x55\xa8\x4b\xaf\x61\x06\x73\x58\x72\x61\xa7\xce\x2b\x58\xa8\xdf\xef\x60\xa5\x7e\x3f\xc2\x9d\xfa\x7d\x0f\xf7\xea\xf7\x1b\xb8\x55\xbf\x3f\xc1\x0d\x5f\x8c\x23\x16\x4d\xb2\xe9\x76\x8b\xe4\x0f\xdf\xec\x30\x3c\xf2\x9b\x52\x46\x0e\xd7\x7c\x31\x4e\xd8\x6a\x9c\x4c\xb2\x29\x43\x89\xca\xbb\xd9\xe1\x32\x87\xba\x6f\x58\xb7\x82\xa8\xb5\xb0\x6d\x14\xf2\x0c\x43\x88\xd1\x8c\xb7\x97\xb6\x7d\x9d\xdf\x6e\xb5\x39\xbf\x9e\xac\xa7\xd8\xb6\x7d\x74\x03\x6b\xbc\xdd\xa2\x39\x9f\x8d\x65\x1a\x0b\x27\xeb\x29\xdc\x4c\xd6\x53\xbe\x68\xbc\x9f\x94\x99\xc6\x32\x13\xbb\xb7\xed\xd9\x38\x40\x73\x48\x30\xbb\xb5\x6d\xf9\x81\xf3\xf9\xb8\xba\x18\xfa\xe2\xa3\x94\xb3\x6b\xa1\x53\xb0\x50\xf2\xa8\xaa\x68\x5b\xe0\x8d\x39\x73\x07\x52\x72\x7d\x04\xdd\xfc\x88\x44\xe2\xa1\x25\x4e\xea\xc7\x52\xa5\xa1\x0c\xef\x9d\x3f\x93\x2c\x4f\xe6\x7e\x4a\x45\x8c\x23\xaa\xb7\x8a\x95\x53\x53\x5e\x22\x14\x93\xcb\x45\x65\x29\xb2\x1d\x9a\x63\x76\x57\x9d\xa4\x02\x4a\xcd\xc7\x01\x7a\x65\x52\xd5\xd9\x85\x39\x66\x73\xb8\xb3\x6d\x84\x6e\x9c\xfb\x20\xc9\xd6\x7e\xb8\xdd\x96\xcf\x72\xa9\xb1\x9c\xc0\x39\xc8\xcd\xf0\xc1\xb6\x1f\x6d\xbb\xfd\x38\x59\x4f\x6d\x3b\x46\x8f\xb0\x86\x39\xc6\x78\x77\x92\x3a\xaf\x38\x81\xd4\xf9\x8e\x53\x48\x9d\x8f\xbc\x07\xa9\xf3\x9e\x0f\x21\x75\xbe\xe1\xc4\x83\xd4\xf9\x89\x77\xe5\x97\x1f\xb8\x27\x3f\x7d\xe0\x84\x0e\x2b\x18\x29\x2d\xd0\x10\x91\x9c\x1a\x98\xa3\x20\xa9\x7e\x90\x3c\x84\x84\x10\xf4\x00\xe7\x36\x1f\xb4\x2c\x79\xcc\xef\xcf\xdb\x02\xe1\xdd\xcc\x97\xcb\x57\xc8\xf7\xdb\xee\xce\x60\x1c\x7a\x80\x79\xf7\x01\xbf\xb5\x8e\x8c\xae\x4c\xb9\xcf\xb4\x96\x99\x6d\x1b\x6d\xb3\x37\x7e\xb6\xe4\x5c\xfe\x1f\xeb\x14\xd6\x54\x28\x15\xe1\xc2\xb6\xe5\xff\x6a\x01\xf9\xce\xf2\xe5\x40\x56\xe5\xae\xd8\xc2\x08\x37\xe1\x98\x5b\x85\x63\x6e\x0b\x1c\x43\x0f\x70\xbd\x51\xd4\xda\xed\x29\x1e\x1d\xc1\x37\xe5\x4d\x95\x86\xe4\x32\x29\x9f\x9d\x03\x3a\xa0\x80\x3f\x03\x03\x0f\x87\x55\x58\x27\x10\x19\xe2\x71\x0d\xea\x04\x95\xea\x17\x1a\xbd\x21\x02\x01\xc6\x3b\x76\x70\x09\x60\xf6\xbc\xba\x17\x05\x85\x9f\x89\xe4\xad\x41\x72\x8a\x92\x91\x60\x74\x28\x3b\x75\x40\x24\xd4\xb0\x04\x19\x62\xdb\xfe\x13\xd8\x42\x20\x32\xc2\xc8\x9a\x07\xf7\x16\xfe\x5a\xbc\xa1\xbb\x47\x24\xa3\x0e\x39\x0e\xa1\x07\xa4\xc4\x53\xb8\xe0\x50\xe2\x3e\x8e\xd6\x61\xd8\xe6\x5c\xb0\x86\xb3\x9b\x13\x4a\x74\x8f\xae\xc8\x2f\xfe\x14\x4a\xe8\x6b\x94\x40\xfb\x06\x25\x8c\x24\x4a\x68\x1c\xf4\x49\xe2\x2c\xcc\xa2\x35\x7e\x3f\x58\xa2\x60\x81\x64\xe7\x21\xe3\x31\xca\xa0\xed\x62\x90\xe4\x06\x04\xb8\x3c\x70\x2d\xdf\x64\x36\x87\x2e\xc5\x9b\x9d\xa4\x13\x6f\x45\x66\x05\x51\x2b\xd9\x6e\xad\xd4\x3c\x1e\x90\x6c\xd6\x0b\xa5\x5f\x13\x27\x9a\x6c\x2b\x14\xd7\x4a\xb2\xcd\x52\x2c\x8d\x2a\x6d\xdb\xc8\x5c\xa1\xab\x34\x6c\x76\x4c\x9f\x91\x3e\x98\x7d\x23\x39\x70\xa0\x92\x6c\x97\x73\xf6\x04\x75\xd1\x74\x1e\x36\x22\x5a\xdf\x89\xc4\xbf\x09\x05\x6b\x23\x62\x0b\x0c\xb3\x38\x5a\x04\xb7\xeb\x3c\x8d\xca\xb4\x87\x24\xc8\xcc\x7b\x4f\xbe\xab\xce\xb0\xac\x00\x30\x4f\x91\x14\x47\x4f\x64\x41\xd4\x16\x54\x5f\xae\x6d\x28\xf1\x53\x13\x58\x47\x11\x17\x4e\x16\x6b\x5e\x43\x9e\x80\x04\x05\x3c\x32\x27\x1a\x17\x15\xa9\x0a\x8e\x94\x56\x3d\x7f\xb7\xf8\x42\xe1\xf6\xff\xbb\xe6\x0f\x96\xfc\xa5\x1f\xfd\x35\x6b\xcd\xe2\xe8\x5e\x24\x99\x21\xd3\x5b\x59\xdc\x5a\x25\xc1\x5d\x90\x05\xf7\xa2\xa5\x97\x1c\x57\xe9\xf5\x6e\x8d\x30\xca\x71\xb9\x40\xd4\xc5\x27\x19\xca\x9c\xef\x60\xa3\x59\x1b\xa6\x48\xa5\x9d\x22\xf2\x5c\xa6\xc4\x54\x8c\x52\x59\x03\x39\x3c\x41\x05\x82\x9d\xf4\xa6\x13\xd2\x53\x57\x33\x1a\xff\x26\x55\xe4\x5b\x12\xac\xdd\x23\xd8\x43\xa0\xde\xd3\x8b\x9b\x83\xf5\x9a\xbe\xd5\xdb\x3c\xad\x91\x9d\xc9\xf2\x23\xd0\x51\xfb\xbc\xe7\xb1\x9e\x9a\x89\x23\xd0\x5f\xc2\x01\x17\x23\x6b\x1d\xa5\xb3\x78\x25\x37\x68\xaa\x54\xe6\xb4\x18\xa4\x24\xc9\xb4\x0e\x58\x34\x49\xa6\xb6\x2d\xd0\xc0\xc5\x28\x82\x44\x5d\x31\x36\x83\x2d\x99\x73\x22\xa6\x5c\xa2\x50\x79\xda\x5c\x46\xfa\x2e\x0c\x5c\x36\x50\xc2\x98\x03\x84\x51\x13\x2c\x14\x5d\xa3\x03\x8c\xda\xee\x53\x1c\x50\x8e\x08\x3b\x28\x1a\x27\xaa\x2a\x43\x73\x31\xa2\x76\x02\xa1\x03\x46\xe8\x40\xb6\xf9\x04\x3e\xa8\xaf\xb0\xa1\xef\xda\x48\x54\xc9\xbb\x0c\x57\xb4\xda\x22\xdb\x56\xba\xbc\x87\x3c\x6c\xd2\xb1\x58\x2b\x88\x66\x71\x92\xc8\x1d\x1a\x44\xf7\xf1\xcc\x3f\xc2\xc7\x76\xbd\x2f\x6d\xae\xfe\x13\x9b\x4b\x41\xb0\xc1\x88\x0d\x24\xd4\xea\x3e\x2d\xaa\x29\xd9\x49\xd7\x30\x04\x5d\x03\xfe\x49\x77\x54\x9d\xdf\xc9\xd4\x99\xc5\xab\xc7\x9f\x82\x6c\x19\x44\xfb\x6a\xa2\xfa\x72\x30\x31\x37\xb1\x3e\x0f\x50\x5c\xe8\x81\xa4\x5c\x66\xf2\x31\x84\x5c\x12\xc9\x3e\x86\xf5\x81\x6a\xc4\x05\x1d\x97\xc3\xa3\xd3\x5c\x13\x68\xa6\x48\x1c\xe7\x2e\x88\x10\x2a\x38\xd9\xf5\xd8\x67\x11\x5a\x83\x8f\xf1\x69\x08\xfe\x69\x8a\x61\xce\x89\x62\x0d\xc2\xf3\xd4\xb6\xd3\xf3\xb0\x33\xb3\x6d\x34\xe7\xa7\x04\xc2\x0e\x9f\x9d\x12\x48\xd5\x0f\x3e\x9b\x9d\x9e\xb6\x2e\xdc\x33\x1c\xca\x25\x8a\xc7\xf1\x24\x9d\xf2\x78\x12\x4e\x99\x51\x54\x97\x09\x32\xf3\x5c\x16\x9c\xe7\xab\x12\xab\xfd\xd2\xed\x33\xd2\xed\x03\xe9\x8e\x18\xe9\x8e\x80\xf4\x5c\x46\x7a\x6a\xcf\x1e\xe0\x85\x3f\x37\xc3\xcd\xaa\xe9\xf9\xa4\xc6\x3c\xa8\x28\x10\xfb\x07\x53\xa8\xe6\xd9\xbf\x20\x95\x89\x24\xc5\x44\xc6\x72\xf6\xfd\x23\xb3\xbc\xe6\xc5\xdc\x86\xe3\x98\x45\x28\x84\x18\x9f\xad\x2f\xd2\x33\x9c\x4d\xd2\x4e\x67\xca\x45\xc1\x2e\x7c\x61\x26\x8e\xe2\x2a\xd2\x1d\xe6\x83\x1f\xe5\x83\xef\x7f\x81\xcb\xad\x70\x56\x31\xf8\xba\xae\x14\x42\x39\x23\x72\x0f\x45\x28\x2c\xa6\x63\xc6\x03\xe4\xc3\x5a\x5d\xc6\x0b\xdb\x8e\xdb\x3c\xd6\x73\x78\xb6\xbe\x98\x9d\xe1\x60\x81\x50\xca\xc3\xc9\xac\xd3\x99\xe2\x36\x4f\x71\x41\xc5\x8b\x30\x15\xad\x22\xe3\xac\xd3\x51\x79\xc5\x76\x3b\x93\x3b\x24\xc4\xb6\x1d\x4e\x66\x53\xce\x79\x71\xc5\x2f\xbf\x6d\xb7\xae\x99\x91\xb6\xb0\xed\x53\xb2\xab\x4f\xcb\x90\x91\xee\x30\x9f\x9e\xdd\x14\x7a\x47\xb9\xf0\xbe\xe1\xc2\x07\xf9\x8e\x90\x7b\x24\xce\xa7\x49\xf2\xe1\xbd\xee\x71\x3c\xa0\x26\x84\x13\xce\x05\x84\x9c\xca\x9f\x35\xef\xca\x9f\x19\xef\xc9\x9f\x39\xf7\xe4\xcf\x92\xf7\x95\xc2\xe7\x1c\x16\x3c\xdb\x6e\xfd\x93\xc3\xf9\xf5\x61\x55\xee\xb9\x3b\xb8\x87\x5b\xb9\xdb\x30\xdc\xf0\x08\xdd\x4a\x36\x3d\x41\x3e\xac\xa0\x8b\xe1\x9a\xc7\xe8\xa6\x98\xf7\x07\xee\xc2\x25\x4f\xc7\x0b\x94\xc1\x35\x66\xa1\x7a\x70\xb1\xd9\x59\x67\xd7\x17\x0f\x67\x0f\x66\x4e\x97\xdb\xed\x83\x9c\xd3\x1b\x6c\xdb\xe8\x9e\x3f\xa2\x3b\x7e\x33\x79\x98\xc2\x03\xdc\x62\x10\x58\xe6\x49\xf1\xe5\xe4\x61\xca\xef\x4f\xd4\xaa\x04\x0b\x74\x8f\x0d\xdf\x2c\x0c\xa3\x9c\xcb\x92\xda\xae\xe6\x86\xfb\x39\x37\x7c\xa7\xdf\xbd\xfc\xfd\x21\xe7\x96\x2f\xb5\xc2\xf4\x9d\xd6\xa9\x96\x95\xce\xf2\xd5\x27\xf9\x44\xcc\xc7\xa7\x84\xad\xb7\xdb\xd9\x78\xc6\x2e\xcd\x5a\xd6\xb6\x36\xf4\xba\xac\xd7\x85\x3e\x65\x7d\x0a\x83\x3e\x1b\xf4\xe5\xaa\x1e\xb0\x92\xf9\xaa\x76\x89\xd9\xeb\x72\x35\x03\xb3\xbc\xf1\x53\x07\x1e\xe4\x12\xa4\x10\xe2\x8d\xc2\xd3\x46\x7d\x44\x12\xca\x72\x67\xaf\x25\x84\x8b\xd1\xba\x98\xf6\x25\x0f\xc7\xf3\x53\xc2\x5c\x58\xf0\x50\x76\x9e\xc8\x8d\xef\x9f\x53\xac\xb6\xf2\x99\xc2\x52\x4b\x39\xdb\x33\xbc\x49\xf9\x6c\xb2\x9c\xc2\xb2\xc3\x17\x27\x37\x89\xf0\x3f\x49\x6a\x5a\xbe\x41\x38\x5e\x9e\xbb\x6c\x7e\xce\x97\x87\x84\xf4\x07\x31\x5f\xcf\x94\x6a\xba\xb8\x5b\x65\x8f\x2d\x5f\xa2\xfd\xd6\x43\x90\x2d\x5b\x51\xdc\x0a\xa2\x20\x0b\xfc\xb0\xa0\xac\x54\xb3\xe1\x78\x79\xc1\x5d\x36\xbf\x58\x9e\xc9\xea\xb1\xee\x80\x6d\xa3\x94\x67\x28\x05\xdd\x0b\x58\xe3\x02\xdb\xa5\x4d\x53\xdd\x25\xac\x4b\xca\x49\x3e\x4a\x20\x0d\x46\xe6\xe8\x0c\xcc\xd1\x51\xd4\x4a\xba\x12\xb3\x40\x52\x2a\x47\x40\x8b\x82\xa9\x79\xfb\x32\xc5\xb6\x1b\x24\xd0\x28\xe3\xc2\x99\xc5\x51\x9a\x25\xeb\x59\x16\x27\x78\xbb\xcd\xda\x5c\x93\x3e\xb6\xdd\x8e\x50\x45\x6c\x82\xb7\x5b\x94\x19\x08\x8a\x41\x2e\x9f\x6d\x1b\xbd\x78\x94\xf1\x6c\x12\x4c\x65\x1b\x45\x8e\xaa\x48\x76\xac\x2a\x64\x59\x8d\x10\x1a\xb0\xc1\xa0\x40\xde\xbd\xa3\xc4\x59\x8f\x1e\x87\x0b\xa5\x3c\x48\x09\x81\x31\xd2\xfc\x78\x8f\xb2\x9e\xa4\x5c\x7b\x5f\x47\x63\xe5\xbb\x78\x60\x00\xf6\xa0\x27\x37\xf1\x64\xaa\xd5\x93\xc1\xe7\x9b\xdd\xbe\x84\x30\x31\xe4\x91\xa4\x6e\x5a\x3e\x2e\x41\x4a\xc4\x27\x53\x08\xb8\x7b\x16\x9c\x67\xca\x90\x22\x9a\x04\x53\x6e\xf9\x13\xab\x13\x74\xac\xa9\x75\xe2\x4b\x46\xac\x94\x62\xbc\x02\x5f\xe9\xfb\x15\x72\xad\x57\xc8\xea\xe4\x96\x0e\x60\xe1\x8e\x85\xad\x42\xc6\x25\xcb\x22\xa1\x44\xd4\xe5\x8c\x14\x02\xaa\x9b\x20\x9a\x57\xc9\x95\x9c\xd6\x2f\x89\x95\x58\x73\x19\x05\x6a\x04\x22\xb1\xe5\x9e\x92\x6e\xc2\x7d\xb9\x23\x66\x7e\x86\xf6\xf3\xe3\x9a\x86\x7e\x95\x32\x0c\xc7\x29\xca\x20\xb7\x22\x81\x04\xb3\x40\xc9\xe7\x44\x29\x80\xab\xef\x25\xdb\x46\x61\x45\x22\x57\xfd\x04\xa1\x5c\x43\x73\x3a\x7a\x6c\xd0\x2b\x37\xc9\xd1\x4b\x8f\x9e\x11\x3a\xeb\xb3\x91\x73\x57\x57\xfe\xad\x25\x97\xd4\x7a\x91\x8f\xc0\xe2\x3c\x69\x10\x75\x14\x23\xdc\x21\xfc\xe4\x81\x92\xf8\x39\x1f\x50\x69\x62\x30\xb6\x7e\x28\x84\x58\x2c\x37\x15\x19\x5b\x6f\xd7\x61\x68\x31\x2b\x55\x7d\x29\xf9\xbf\x78\x6f\x13\x57\x04\x02\x92\x4b\x37\xc2\x80\x04\x6f\x76\x3b\x94\x19\x69\x84\x04\x90\x11\xc6\xe3\x98\x05\x63\x79\xf2\x98\xf5\x2e\x97\x86\x20\x5f\xd1\x09\xb8\x51\x82\x99\xa9\x15\x14\x62\x5c\x99\x02\xe6\x57\x8f\x61\xce\x1d\xf5\x8e\xdc\xeb\x6c\x76\x05\xb3\xfa\x34\x11\x93\xcb\xc4\x72\xf3\xa2\x21\x9c\x92\x5c\x3a\xd6\xfb\x3a\xd2\x7c\x34\xc0\xce\x42\xad\xe3\x28\x17\xd6\x13\x83\x50\x24\xfd\x20\xa9\x04\x49\x51\xa6\x5c\x20\xcf\x93\x5b\x57\xa0\x61\x57\x52\x48\x02\x0d\xfb\x12\x83\x48\x7e\x89\x48\x1c\x22\x50\xdf\x93\xd8\x43\xa0\x11\xc5\xce\xc2\x4f\xb3\xbf\x89\x47\x50\x12\x9c\xde\x00\xc3\x8a\xcf\xc7\xd6\x75\x2a\x17\x27\xf8\x4d\x58\x70\xd7\xa4\x64\x0d\x11\x5f\x4a\x1c\x25\x99\xd0\x57\x96\xe4\x78\x70\x69\xf8\x19\x4c\xa2\xa9\xa2\xc4\x13\x2e\x9c\xeb\xc5\x59\x72\x96\xf0\xc4\x89\x24\x72\x4f\x9c\x4f\x95\x5b\xa8\xa4\x7a\x56\x37\xb7\x22\x7b\x59\x42\xdb\xba\xd0\x28\x84\xb5\x6e\x59\x8e\xa3\xaa\xf7\x2b\x59\x22\x24\x60\x06\x19\x58\xd7\x81\x85\x41\x38\xd7\x19\xcf\xe4\x4f\xc0\x23\x6d\x93\x2a\x5f\x16\xb9\x31\xaa\x70\xae\xc3\xe2\x79\xb2\x9a\x72\x17\xb4\xa8\x2c\xb1\xed\x14\x25\x10\x82\x98\xac\xa7\xf2\x70\x96\x27\x3a\x40\xb3\x8a\x54\x7c\xa3\xf4\x5c\x59\xa3\x05\xc7\xc2\x58\xee\x60\x50\x63\x0f\xe4\x82\xc9\x29\x88\xce\x22\x1e\x39\x11\x8e\x9c\x84\xb7\x5d\x88\x9c\x95\x6d\xa3\xc8\x59\xf1\xc8\x59\x39\x51\x81\x38\x0c\x03\x92\x4c\x22\x27\x98\x9e\xa8\x6e\x1f\xf6\x77\x67\xb2\xb1\xfd\x13\x98\x54\x9a\x8f\xf8\x1d\x92\x20\x46\xae\x50\x54\xa8\xf3\x3b\x11\xc4\xb2\xc9\x93\xbc\x21\xb5\x58\x4e\x30\x05\xd3\xb1\xd8\xb6\x51\xec\x44\x3c\xc0\x10\x28\xdb\xbb\x15\x8f\x31\x24\xb2\x23\x92\xa9\x45\xea\x29\x50\x29\x61\x91\x12\xaa\x3c\x93\xd5\xf4\xf4\x74\x97\x8b\xcb\xa3\x1d\x2c\xe2\xe4\xd2\x9f\x2d\x6b\xdd\x2c\x3a\x58\x5a\xe3\x41\xc4\x63\xc9\x1a\xee\x33\x83\xcd\x3c\x4c\x17\xcb\xcd\x34\x4e\x9c\x88\x69\x9b\x9d\xc5\x99\x22\x77\x22\x94\x38\xf7\x90\x38\x9f\x94\xf5\x05\x3e\x4b\x6c\x3b\x71\x92\x33\x2c\x77\xde\x6a\x07\x4b\x3f\x65\x87\xe7\xb2\xdd\xbe\x43\xe5\x94\x09\xbc\xdb\x61\x98\xdb\x76\x52\x5b\x6e\x73\x0c\x8e\xc8\x71\x8b\xe2\x93\xd5\x54\x16\x9f\x29\x45\xf8\x03\x89\xa7\x91\xbb\x41\xcc\xef\xd4\x29\x2a\x98\xca\x71\xec\xdc\xf3\x84\x21\xb5\xcc\x31\xdf\x04\x2c\x90\x27\x4b\x09\x45\x3f\xb1\x0c\xee\x59\x02\x2b\xa6\x76\x51\x08\x51\x3e\x0b\x89\x32\x34\x97\xfb\x43\x59\xc7\x5d\x2f\xe4\x0a\x44\x6a\x4b\x45\xf2\x51\x6e\x94\x4e\x07\xf4\xd1\x94\x0b\xa9\x4e\x65\x30\xe5\x31\xc6\x20\x76\x70\x2b\xb2\xcb\x28\x4b\x1e\xd9\x1d\xa4\x22\xfb\x98\x25\x71\x74\x7b\xd0\x67\x25\xc3\x87\xbd\xc3\xa6\x27\x3d\xe3\x0b\x6d\xcc\xa9\x5f\x0b\xa3\xd8\x62\xab\xee\x70\x4d\x19\x7d\xcf\xc4\xe9\xfa\x13\x18\x5b\xa1\xeb\xf0\x2c\xb3\xed\x4c\xae\x54\x26\x11\x5d\xcd\xca\xed\x3a\xcb\x8d\xaa\xae\x43\x9e\xf1\x6c\x9c\x15\xab\x9e\x39\xd7\x0b\x3c\x5e\x23\x17\xac\x4f\xe2\x51\xa2\x2e\x31\xce\x9c\x4f\x4c\x0b\x76\xf3\xf7\x7b\x36\xc9\xe4\x8e\x70\xee\xa7\x98\xa1\xbc\xeb\x39\xc3\x8b\x94\x29\x09\x24\x63\xcb\x28\xe1\x58\x45\x71\x68\x2b\xcb\x13\x98\x29\xa2\x49\x62\x04\xd2\x67\x84\xf4\x81\x50\xc2\x08\x25\x40\x7a\x03\x46\x7a\x03\xe8\xf6\x59\xb7\x6f\x58\x82\xbe\xc7\xfa\x1e\x78\x1e\xf3\x3c\x18\x76\xd9\xb0\x0b\xc3\x3e\x1b\xf6\x61\x44\xd9\x88\xc2\xc8\x63\x23\x0f\x46\x03\x36\x1a\x48\xa0\xff\x95\xd2\x02\x09\xe2\x23\x03\xa9\x6f\x45\xf6\x93\xf0\x3f\x29\xd8\xdf\xf5\x34\xe8\x1f\x8c\x9a\x41\xbf\xe4\x39\x24\xe8\xf7\x46\x06\xf4\x4b\xc8\x3e\xe7\x21\xea\x2b\xbe\x01\x79\x18\x16\xdc\x85\x55\x13\xb2\x92\x5b\x4d\x6f\xab\x50\x29\xaf\xdf\xe1\x5d\x15\x09\x98\x3d\xe0\xf3\xc9\x74\x07\xf7\xcd\x44\xe7\x1c\x09\xc7\x6f\x54\x40\x17\x13\x57\x32\xd2\xd9\x0e\xe3\xdd\xc9\x5d\x85\xca\xa9\x9f\xaf\x82\x40\xbb\xd7\xe7\x4b\x03\xb2\x02\x71\x64\x13\x32\x3d\x7e\xa8\x8b\x32\x3b\xb9\xbb\x59\x13\xe6\x2e\xab\x4d\xc6\xc9\x84\x4c\x79\xa6\x37\x96\xaf\x19\xc5\x89\x80\x6c\x8a\x8f\x02\xda\x4c\x1e\x51\x95\xbd\x32\xc6\x72\xf4\x99\x1e\xa3\x28\x31\xc8\x7f\xcc\xed\x26\x7d\x65\x6a\x3c\x13\x28\x93\xf4\x65\xbb\xfd\x1f\x25\xd9\xff\x95\x38\x30\xc8\xef\xde\xe7\xcd\x38\x70\xde\x88\x03\x17\x9d\x4e\x0d\xe7\xd5\x90\x5d\x00\x62\x12\xee\x21\xbb\x04\xcd\xab\xc8\xae\x61\x0a\x24\x75\x1f\x97\xd7\x0a\x6d\x62\xf6\xab\xfc\x98\x4b\x44\x24\xed\x97\x8c\x57\x68\x96\xc3\x47\xec\xe8\x9a\x90\xc0\x2c\xb1\xed\x35\xca\x41\x46\x80\x6d\xbb\xc0\x7b\x26\xa9\x61\x71\xff\x64\xa3\x4b\x3f\x6d\x68\x51\x01\xfa\xe3\x90\x3a\xe6\x11\x52\x92\x8f\xb6\x5b\xab\x3b\x1e\xaf\x14\x0d\x27\x32\x75\xe5\xce\xe2\x89\x9c\x62\x7d\xcd\x08\xeb\x45\x9a\xc5\x89\x60\xab\x1a\xbc\xa8\xc1\x89\xae\xc7\xba\x1e\xf4\x5c\xd6\x73\x0d\x9c\xf0\x46\xcc\x1b\x69\x1a\x5e\xc3\x09\x09\x1b\x0e\xe4\x67\x8d\xb0\xc1\x33\xb2\x34\xcf\xcd\xc9\x41\x03\x13\x14\xd0\xf0\x35\xd0\xa8\x01\x05\x09\x24\xd6\x06\x68\x48\xa0\xe0\x51\x4d\x0e\x0e\x7b\x9a\x1c\x24\x94\x62\x45\x07\x0e\x8e\x8a\x9b\x60\x05\x4a\x30\xa4\xe7\xe9\x86\x27\x13\x31\x85\x47\x7e\x03\xd7\xfc\x7e\xac\x6e\xe4\x98\xe5\xcf\xe7\x16\x3c\xf0\x47\xdb\xae\xdc\x10\xc0\xa5\xe4\x14\x3f\x1f\x72\x0d\xfc\x41\x99\xeb\xa1\x07\x10\x60\xe9\x7d\x60\x69\x63\xf2\xa5\xaf\xe1\x78\xc3\x11\x47\xb7\xb6\xdd\x56\xb6\x73\x12\x79\x68\xcd\x21\xb9\xe2\x9a\xe3\x70\x99\xc0\x3b\xa6\xae\x0a\x9b\xcb\xb7\xf2\xe2\x63\x7d\x28\xd8\xd1\x3a\xe4\x58\x8e\xd4\xd1\x5c\x46\x6d\xb1\xda\xa5\x74\xf2\x74\x09\x48\x4c\x19\xbc\x6b\xbe\x54\x6b\x3d\xda\x36\xba\xdd\x6e\x1f\x1c\x43\x50\xd9\x76\x7b\x56\xbb\x93\x46\x12\x4a\x3f\xe2\x5c\x97\x14\x61\x27\x12\x9f\x33\x24\x0f\x35\xd6\xb3\xfc\x4e\x01\xf2\x47\xf8\xc8\xdf\x4d\xae\xa7\xe8\x76\xbc\xd9\xb1\x53\x17\x08\x6e\xf3\x77\x70\xc5\xeb\xd5\xbd\x53\x87\x86\x28\x7b\xb9\x37\x7c\x8e\x6a\x60\x5c\xd5\x83\x14\xc0\x80\xf7\xbc\x7d\x6b\xdb\xf5\xc2\x25\xa6\xd7\x2d\x66\xbc\x7f\x96\x9d\x9e\x9e\x61\x21\x1b\xce\x4a\xd2\xa7\x2d\x54\x33\xa7\xae\x82\x3d\x6f\xb6\x5b\x84\x1e\x79\x56\xa9\xcb\xd0\x20\x19\x3c\x4a\x30\xad\xe5\x07\x0b\x35\xd4\x1b\xc8\xe0\xb1\x80\x57\x35\x80\x76\x0f\xd1\xe4\x7a\x0a\x11\x86\x48\x8e\xbe\x82\x5f\x1e\xe0\xa1\x2a\xcc\xe1\x8f\x18\xd0\xd5\x76\xfb\x5e\x72\xdb\x9f\x51\xbe\xf3\x30\x7c\x46\x6a\xe3\x61\xb8\xb7\xed\xcf\xfa\xbe\x19\x63\x40\xef\xb7\xdb\x8f\x58\xa6\x5c\x63\xb8\xb5\xed\x07\x6d\xec\x56\x40\x2e\xf3\xae\xc5\x8b\x8f\xfc\xce\xa9\x03\x72\x94\x81\x80\x7b\xb8\xc6\x10\xa3\xea\xa1\x58\x61\xf0\x9d\xb7\x97\x97\xdf\xf2\x76\x2e\x4b\x6e\x2d\x91\x1c\x30\x5c\x4e\xc4\x94\x3f\x42\x84\x22\xe7\xbb\x4e\xe4\xfc\xd4\x89\x9c\x57\xcf\xd0\x63\x9b\xdf\x60\xb8\xc4\x70\xbb\xdd\xde\x39\x05\xed\x26\x8b\xc0\x3d\x86\xc7\x1a\xec\x21\x1e\x23\xc4\x03\x42\x29\x23\x94\x1a\x18\xe4\xb9\xcc\x73\xc1\xa3\xcc\xa3\x39\x0c\x1a\x32\x6f\x08\x83\x2e\x1b\x74\x0d\x24\x1a\xf6\xd8\xb0\x57\xc0\xa3\xbe\xfb\xa5\x6b\x28\xef\x89\x6b\x28\x8f\x11\xc9\x42\xf7\x0f\xe4\xa4\xc7\xb8\x5c\x2d\xab\x78\x42\xb1\x31\xc0\x1b\x25\x5a\x12\xe3\x52\x17\xc4\x85\x00\x63\xa6\x2e\xf2\x03\x3d\x07\x3d\x46\x48\xaf\xa0\xb7\xfa\xf4\x4b\x63\x18\x3c\x31\x06\xa5\x48\xa4\x84\x2e\xb2\xaa\x03\x69\x5c\x33\x78\x56\x42\xfd\x6f\xfd\xac\xa2\x50\x25\x77\xc5\x55\x70\x27\x20\xd8\xff\x90\xc5\xaf\x3f\xbe\xd3\x92\x04\x88\x1b\x89\xb2\x8b\xd1\x58\x30\xcb\xb5\x3a\xa2\xca\x34\x27\x0d\xca\x29\x96\xdb\x1d\xf6\x4f\xdd\xc1\x29\xed\x5f\xb9\x03\xe6\x7a\xac\x3b\x72\x46\xa3\xd1\xbf\x58\x6d\x1e\x68\x10\x24\x4f\x91\xec\x01\x3a\xed\xbb\x95\x3f\x45\x10\xe3\xed\xb6\x5d\xaf\x76\xbf\xd0\x5b\xff\xad\xca\x38\xae\xe6\x59\xa0\x76\x90\xbe\x0a\xa2\x20\x13\x28\x2a\x01\x1d\xce\xaf\xa0\x3f\xf8\xd1\x6d\x2e\x56\x7e\x1d\xdd\xfb\x61\x30\x6f\x65\xc1\x5d\x71\x2f\x5f\x71\x86\x01\x19\x57\x53\xf5\xc3\xd5\xcb\x57\xeb\x30\xfc\x59\x5b\x95\x26\x45\xe2\x9b\x20\x0c\x83\x54\xcc\xe2\x68\x9e\x2a\x37\x46\xd9\xb9\x3b\xb6\x4e\x2d\x96\x5d\x8c\x46\xa3\xd1\xd8\xea\x58\xcc\xb2\x0a\xe6\xbd\x83\x2c\x35\x3a\xab\xa3\xee\x11\xfd\x9b\x14\x49\xca\x40\x4b\x62\x82\xf1\xa9\xc7\x4e\x7b\xb8\x63\x9d\x5a\x9d\x18\x15\x4d\xc4\x51\xb6\x44\xb8\x43\xf6\x3f\xa8\x09\xc0\xb8\x63\x5d\x55\x53\xff\x29\x5e\x27\xa9\x4a\x66\xb5\x5a\x82\x68\x9d\x89\x86\x0f\x1f\xf3\xce\xe3\x8e\xe5\x58\x1d\x94\x5c\x8c\x46\xe3\x44\x2d\x6f\x8c\x12\x99\xfa\x2f\xd6\x8e\x05\x3b\xd8\xa8\x83\x2a\x77\xdd\x57\x8a\x6b\x73\x59\x5f\x8f\x3c\xa1\xe9\x9c\x8b\xdd\xda\x9c\x0b\xdb\x2e\xb5\x08\xd4\x9b\xf1\x27\xa0\x5e\x0f\x6f\x04\x5e\x17\x57\xd7\xcb\x20\xca\xca\x3b\xeb\x08\xe5\xa2\xd4\xb2\x3a\xa1\xaf\xd8\x7b\x84\x91\x1e\xd1\xc4\x8f\x1c\xc9\x57\x5d\xb4\x6b\x25\x21\x25\x2e\x6c\xe8\x85\xd1\xf6\xf0\xc3\xb0\x75\x27\xb2\x65\x3c\x6f\xc5\x51\xab\x65\x75\xc4\xc1\x1d\x7a\xff\x8b\x77\xe8\xc3\x27\x0e\xbe\xd2\xff\x29\x96\xa0\x41\x5b\xaa\x5e\xd5\xe8\x89\xaa\x94\x76\x97\x01\xb5\x46\x64\xdb\x7f\x42\x95\xc8\xaa\xe0\x2a\xa8\x2b\xe0\x41\x90\xbe\xcf\x01\xc7\xbb\x05\xac\x4c\xf2\xeb\xf4\xb2\xd0\x34\x82\x2c\xfe\x3e\x9e\xf9\xa1\x30\x20\x25\x97\x52\x82\x51\xce\xb1\x72\x8f\x47\x60\x19\xf5\xbf\xfe\xf1\x4b\x5b\xd7\xf0\xa0\xc4\xa5\x86\xd2\x74\x8f\xaa\xd1\xe7\x52\x75\x81\x95\xa0\x69\xa1\xed\xa2\x73\xa2\xc0\x87\x94\x4b\x1a\x1e\x42\x1e\x38\x0b\x58\x73\xf7\xac\x10\xf7\xac\xcf\x70\x98\x6b\x0e\xfa\x3c\x9d\xac\x3b\x9d\xa9\xa2\xee\x8c\xab\xa3\xfa\xe5\xb3\x4b\x19\x71\x29\x10\xb7\xcf\x88\xdb\x07\xe2\x7a\x8c\xb8\x72\x77\x79\x47\x6f\x59\x73\x7a\xb9\x9f\x5f\xc7\xe5\x97\xac\x92\x6e\xf6\x8d\x18\xf5\x49\x65\x67\xa3\xe6\xfc\xca\xa8\x39\x7f\x67\xd4\x9c\x3f\x1a\x35\xe7\xf7\x46\xcd\xf9\x1b\xb8\xe1\xab\x71\xc2\xee\xc6\x5a\x79\x59\xe9\x30\xf3\xcd\x0e\x37\x6a\x33\xc3\x23\x5f\x35\xe8\x44\x5f\xf3\x0a\x9d\xb0\xdd\x56\xa9\x06\xf9\xbd\xd4\x81\x5e\x95\x3a\xd0\x73\x8e\xd0\x8c\xb7\x17\xb6\x7d\x53\x51\x83\xbe\x99\xac\xa7\x78\x7c\xc3\x42\x3c\x59\x4f\x61\xc9\x25\xc9\x36\xf6\xb5\x4e\xf3\xfd\x11\xd5\x5e\xbf\x49\xb5\xf7\xc6\xb6\x63\x74\x03\x6b\xd0\x0a\xbc\x3f\x60\x78\x9c\xac\xa7\x6d\x3e\xb7\xed\x40\xe9\xef\x2e\x15\xd1\x74\x9d\x27\x22\xa5\x2e\x3d\xc7\xbb\x93\xc4\x99\xc5\x89\xe0\x11\xfc\x7f\xa1\xdb\x6b\xa8\x1a\x65\xf4\x62\x24\x2f\xe6\x58\x19\xed\x21\xef\xe8\x95\xac\xbe\x01\xb9\xf3\xb3\xd9\xf2\xe9\xbb\x41\xfe\xdc\x79\xae\x9c\x04\x59\xcf\x9d\xe7\xd6\x44\x4c\x51\x96\x2b\x22\x46\xb5\x4b\x89\x6c\x92\x4c\x79\x9b\x40\xfb\x30\x63\x80\x37\xb9\x15\x43\x4d\xcb\x49\xf6\xf0\x4b\xd4\x08\x25\xc7\x21\x49\xae\x21\xea\x3d\x4d\x87\x68\x2b\xe4\x8a\x24\xc9\x60\x86\x81\xd9\xfe\x92\x3e\x51\x97\x07\x86\x59\x94\x73\xa3\xb8\x45\x42\x86\x4a\x4f\xa4\x72\x8d\x0a\x6b\xde\x0e\x6a\x24\x81\x46\xd6\x72\x96\x0a\xa1\x91\xf8\x2c\x66\x87\x4e\x6d\x26\xa5\x5b\x4d\xe7\x36\x89\xd7\xab\x94\x6f\x7c\x66\x0d\xac\x9d\xe4\x99\xad\x81\x44\x33\x96\xe5\x24\x62\x15\xfa\x33\x81\x04\x58\x7f\x39\xf7\x2f\xb4\xb3\x8e\x86\xea\x9e\xa3\x31\xc3\xcf\x15\x81\x20\xdb\x3b\x39\x6c\xb6\xe0\xb5\x8e\xa8\xbc\xeb\x09\xb1\xfc\x9b\x1c\x06\x96\x38\x83\x2a\x47\x31\xb9\x6f\x40\xcb\x57\x8e\x63\x26\xee\xd4\xb6\xad\x1b\xfd\x4c\xa6\x3b\x74\x94\x2e\x9d\xeb\x4e\x2e\xb9\x2f\x41\xdc\xa2\x69\xca\x32\xbe\x29\x95\xee\x27\xcb\x69\x43\xc7\x07\x3b\x18\xb4\xb9\x95\xef\x25\x8c\x61\xc5\x17\xe3\xc6\xba\xda\x04\x12\xfe\xdc\x7f\x5e\xfa\x9e\x3c\x36\x19\xea\xce\x61\x1d\x86\x3b\xb0\xd4\xa0\xe5\x68\x84\x12\xde\x57\x59\xa2\xcd\x0e\x6a\x09\x93\xb0\xa9\x83\xc9\x0e\x43\x32\x59\x4e\x91\x65\x61\x68\x67\x3b\x9c\x2b\x7a\x28\xb5\xce\xc5\x76\xdb\x5e\x29\x3f\x6b\x6a\x41\x4d\x43\xed\xf5\x76\x5b\x6b\xb9\x3d\xd3\x83\xb8\x93\x7b\x68\xb2\x9c\xc2\x3d\x9f\xa3\x18\x96\xa0\x06\xbe\xef\xd9\xa5\x66\x29\x94\xe9\x51\x72\x9e\x8e\x17\xb6\xdd\x0e\xc6\x9b\x79\x1c\x09\xd6\x76\x8d\xce\xec\x5d\xcd\xfa\x88\xed\x7d\x35\x76\x46\x89\x52\x0f\x2c\xbe\x92\x9d\x9c\xe8\x5b\x7e\x3f\x71\xa7\x70\xc3\xef\x27\x64\x7a\x92\xa0\xdc\x10\xb0\x00\xd5\x02\x6e\x31\x44\xe8\x83\xb8\xbd\xfc\xbc\xaa\xa4\x2f\x81\x72\x9e\x8d\x1b\x45\xa1\x37\x85\x3a\xbc\x16\x49\xed\x1a\x44\x96\xf5\x4c\x78\x97\xcb\x9c\x0d\xff\x26\xc9\x10\x32\x84\xfc\x56\x32\x37\x2d\xee\xf7\x59\xbf\x6f\x38\xb9\x02\xf6\x7d\x35\x99\xd8\xb4\x8b\xf3\x53\x96\x93\x72\x19\x2f\xc9\x68\x61\xac\xfc\x6c\x1b\x65\x1d\x6e\xdd\x2a\x31\x63\x70\x1b\xc5\x89\x78\xe9\xa7\xc2\x24\x6b\xe9\xe3\xdd\x3a\xcc\x82\x30\x88\xf2\xd4\x3b\x95\xba\x8e\x82\x59\x3c\xcf\xd3\xd6\x2a\x2d\xcd\x82\xd9\xa7\x47\x93\xf4\x68\x61\x50\xe8\x3d\x27\x15\xbd\x03\x52\xb1\x71\x34\x83\x41\x5d\x47\x41\xa9\x4d\x55\x2f\x46\x35\xdc\x0f\xd2\x97\xea\xea\xfe\xe3\x2a\x11\xfe\x5c\x92\x49\x8d\x48\x40\x59\xcf\xa4\x10\x42\x81\xf5\x4b\xa9\x86\x92\x7e\xf1\x19\xdc\x72\x17\x6e\x78\xbb\xbd\x94\x28\x71\x09\x0b\xe8\xe2\xb3\xdb\xf3\xb5\x56\xb9\xb9\xd5\x4a\x63\xf2\x71\xc5\x6f\xc6\x37\x28\x9c\xdc\x4e\xe1\x16\x52\xcc\xd4\xd3\x9d\x3c\xb8\x11\x5a\x61\xdb\x46\x77\xbc\xc0\xd3\xe8\x8e\xaf\x26\xfe\x14\x8f\xdb\xed\x3b\x96\xa0\x15\xc6\x70\x67\xdb\xf3\x0b\x17\xdf\x73\xdd\xa5\x15\x04\x68\x55\xa8\xff\xdc\xc3\xfc\x94\xe0\x53\x72\x92\xbb\x89\xbc\xbf\xe0\x23\xd7\x1d\x90\xd1\x88\xf6\x7b\x83\x9e\x3b\x1a\x91\x03\xca\x19\x9f\x64\x93\xfb\x29\x5f\xed\xee\x3b\x9d\xdd\x6d\xa7\x93\x6b\x4f\xdc\xd7\x94\x70\xcc\x46\x33\x9a\x4e\x35\x5d\x14\xaf\x81\x9e\xce\x4d\x06\xfa\x86\x3e\x1c\x12\x73\x39\x61\x08\x2b\xc9\x94\xa4\xf9\xba\x84\x6a\x3d\x88\xc4\x29\x9b\x1d\xcc\xf8\x66\x77\x86\xaa\x86\x32\x7b\x27\x7f\x0e\x4b\xdd\xc0\x22\x17\x3d\xf2\xe5\xf8\x10\x28\x89\x1d\x0b\x25\xd4\xbd\xe1\x11\x92\x85\xb2\x31\x65\x04\xc3\x23\x77\x4f\x9a\xad\x4b\x6f\x9f\x32\xf4\x0c\x32\x4d\x46\xb7\x2d\xed\xd8\x07\xdd\x1a\x2d\x96\x05\x4f\x51\xee\x89\x0f\x9f\x2d\x2e\x1e\xcf\x1e\x8d\x62\xdb\x3d\xcf\xc6\x37\xc8\x47\x2b\x2e\x26\x8f\x53\x2c\xe1\xc8\x6a\x42\xa6\x98\xdd\x20\x95\x80\x39\xe7\xeb\xed\xf6\x9e\x73\x9e\xab\x9e\xb5\xee\x4b\xc5\xc3\x3b\x7e\x9b\xab\x08\x9c\xb5\xd1\x8a\xdf\x19\x11\x1e\x76\x24\x80\x3a\x33\x4d\x04\xe8\x0e\x6e\x60\xa5\x55\xec\x21\x3b\x52\x29\x76\xbe\xf9\x70\xf9\xe2\x6f\x7c\x0d\x89\xf3\xe1\xf2\xea\x87\x0f\x6f\xf9\xac\xb6\xba\x84\x91\xbe\xe1\xc7\xf2\x35\xf6\xd8\xc0\x83\x21\x61\x43\x45\x59\x1c\x68\x24\xd4\x6c\x73\x68\x0f\x23\x2b\xf2\xb3\xe0\x5e\x9c\xe6\xd9\x4e\xb3\xf8\xd4\x30\x95\x50\x90\x8e\x85\x22\xbf\x52\xb4\xee\x31\xa2\x8c\xaf\xbc\xe1\x97\x88\x1f\xfa\x04\xf1\x63\xf4\xee\xbd\xd1\x97\x2a\xe9\x3e\x51\x49\x97\xd1\xee\x6e\x2a\x81\xe6\x17\x2a\x79\x4a\x79\xdf\x48\x98\x94\x4d\x99\xb9\xfb\xcb\xa5\x4d\x83\xa3\x14\xa8\x37\x2c\x0d\x3f\xab\x62\x1c\xdb\x4e\x8a\x74\x63\xcd\x29\x99\x7f\x49\xd7\xca\xfa\xbe\x48\x2f\x3e\xa1\x08\xae\xcd\x57\x74\x07\xfb\x03\xd6\x1f\x14\x0c\xed\xe0\xa8\x5e\x59\xae\x56\x47\xa8\xab\xae\x3b\x9e\x10\xc5\xa9\xfb\x12\xf0\x79\x56\xa5\x1c\x72\xa4\xe1\xeb\xeb\xe7\x06\x1e\xc3\xb7\x6d\x14\x73\xbf\xa2\xda\xa4\xdc\x0b\x16\xaf\xb6\x9d\xa0\x18\xdb\x76\x64\xdb\xb2\xa9\x38\xb7\xcb\xa1\x2e\x23\xd4\x2d\xc0\xd1\xe0\xab\x4c\xcc\xab\x60\xaa\xd0\x4c\x4a\x72\x13\xe8\xec\x98\x19\xe6\x58\x20\x5c\x10\x0c\x78\xdf\x20\x73\x2c\x50\x36\x71\xa7\xb8\x42\x52\xc8\xd7\x7d\x03\x4d\x93\x0d\x32\x05\x0d\x6a\x79\x75\xda\x9e\x7d\x74\xad\x00\x64\x13\xda\x58\x4a\x7f\xd0\x45\x7b\xc7\x8b\x42\x36\xe9\x1e\x2f\xaf\xbf\xee\x1b\x89\x26\xa5\xe1\xde\xe0\x29\x9d\xb2\xca\x9e\x30\x7a\x58\xd6\x6f\x96\x62\x6c\x0f\xc4\x11\xc8\xcd\x2d\xc3\x1a\x88\x1f\xeb\x63\xae\x03\x96\x20\x81\xc7\x85\x6f\x66\x0b\xb3\x42\xbf\xab\x6a\xaa\x32\x38\xa2\x8c\x25\xd0\xb0\xa6\xe8\x16\x14\xbe\x0d\x20\x38\xb0\x57\x79\x52\x5b\xab\x74\x4e\xac\x48\x64\x55\x56\x7b\xcb\x0d\x26\x91\xba\xd9\xc5\x55\x2d\xb1\xa1\xc7\x86\xaa\x63\x47\xad\xf4\xeb\xb3\x55\x73\x89\x59\x57\x4a\x34\x33\xa2\xbe\x98\x09\xa9\x0d\xfd\x40\x60\x54\x3f\xb0\x4a\xbe\xb9\x08\xe3\x38\x79\x72\x80\xca\x26\xcc\xb6\x0b\x71\xad\x7c\x91\x9f\xd5\x9d\xf5\x0e\x36\xc5\xe1\xfa\x22\x90\x7d\x42\xf0\x9f\xdb\x58\x0d\x8f\x0a\x64\x72\x20\xd3\xf3\xaa\xba\xbb\x5f\xc1\x9d\x97\x37\xd5\x4a\x57\xb2\xa4\xa0\x32\x2e\x26\x81\xa2\xa0\x32\x66\x69\x2a\xdd\xe2\xea\x86\x18\x1f\xa8\xf5\x15\x20\x64\x78\x5c\x83\xfb\xa8\xf5\x95\x66\x48\x2a\x72\x80\x60\x9c\xa1\x04\x45\x0a\xef\x47\xea\xa4\x67\x28\xca\x25\x01\x7e\x7e\xab\x2c\x1c\x9d\xdd\x98\xaf\x15\x1d\x8f\x15\xb4\x2b\xcc\xdc\xc0\xdf\x55\xa9\xe0\xe1\x81\xf6\x73\xf3\xd5\x89\x57\x5e\x9d\xe8\xf9\xa4\x8a\xc5\xdf\xec\x4e\xb4\x45\x56\x0c\x0d\x47\xa3\x41\xe1\x53\xdf\x46\x36\x5b\x6e\x41\x06\x3e\xde\x54\x6e\x2e\x78\x82\x62\xd8\x48\x62\x85\x45\x88\x80\x8f\x77\x18\x02\x99\xaf\x63\xb5\x2a\xde\x45\x2a\x08\x33\xbf\x8e\xaa\x19\x7d\x69\xf5\x18\x39\xd8\xaf\xbb\x5d\x19\x0e\x8e\x5c\x7e\x0f\x5c\x4d\x73\x0e\x0d\xcd\x39\xa4\x86\xe4\x94\x93\xb1\x56\xc2\xcb\xae\x51\x89\xd9\x9f\x8a\x39\x6f\xa3\xc9\xd4\xf9\x24\x1e\x53\xe5\xf1\xf6\x73\x66\x05\x91\x49\x40\x18\xc3\xb2\x89\xb3\x96\x73\x75\x6c\x93\x2c\xca\xdb\xf2\x14\x2d\x20\x83\x95\x96\xc7\xdc\xc0\x23\x5c\xc3\xc3\x81\xff\x91\xb9\x6d\x0b\xc9\x3b\x7c\xcc\x69\xb9\x8f\x13\x31\x3d\xa9\x1b\x3f\x68\x75\x27\xa6\x1e\x8d\xb2\xd2\x81\x67\x8d\xaa\xee\x77\xae\xa0\x26\x9e\x72\xa9\xb1\x97\x0f\x2e\x79\x6d\xf9\xe0\x33\x2f\xf5\xaa\xee\xe0\x9d\xe4\x5f\x3e\xd6\x1c\x05\x5c\xf1\x8f\x93\xd9\x74\xbb\xfd\x38\xb1\xfe\xed\xbf\x2d\xa6\x74\xba\xdd\xde\xd9\xf6\xc7\xc9\xdd\x14\xde\xf0\xab\xed\xf6\x01\xdd\x61\x78\xcf\xef\xc6\x9f\xc7\x0f\xa8\x50\xba\xc2\xec\x4d\xae\xd6\xf6\x82\x17\xa0\x2f\xb3\xed\x8f\xf9\x85\xf6\x76\x7b\x25\xc9\xf0\x17\xb6\x8d\xae\xf9\x1a\xbd\x28\xaf\xa3\x04\xc6\x92\x6e\x30\x56\xc7\x15\xe2\xe1\x5a\xd1\xcf\xb6\x8d\x42\x74\x0d\x97\x4a\x97\x2b\xd9\x6e\x1b\xe8\x90\x6b\xd5\xef\x18\x5d\xc3\x0c\x96\x18\xc3\x67\xdb\xbe\xb2\xed\x7c\xb8\x6d\xce\xaf\x9c\xc8\xbf\x93\x88\xe0\x1d\x6f\xbb\xf0\xa6\x61\x0f\x5c\x55\x6e\xbb\x76\x2a\xbe\x41\xfb\x76\xbb\x95\xab\xd9\x7e\x27\x87\xaf\x1b\xf8\x08\x33\x78\x83\x41\xa9\xb8\xbf\x01\x7f\x72\x39\xe5\x4b\xb8\x93\x84\xfd\x0d\xdf\xe8\xe6\xd8\xe7\xf1\x1b\xf6\x80\xf2\xc6\x31\xc8\xb5\x66\xf7\x3a\x51\xad\x3b\x06\x33\x25\xec\xfd\x0e\x6e\x95\x5c\xfd\x51\x9b\xd3\xa8\x9f\x8f\xdb\x6d\x80\x3e\xc2\x23\xdc\x48\x96\x43\x1b\xd0\x44\x28\x72\xde\xeb\xcb\xe3\xf9\x76\xfb\x0e\x43\x06\x37\x85\xc4\xeb\x46\x0b\xd3\xbb\x8c\xb8\xdd\x83\xfb\xe2\xfc\x80\xea\x1b\x63\x7d\x4c\x87\x94\x0d\xa9\xc6\x78\x30\x1c\xb0\xa1\xa4\x76\x87\x47\xcd\xfb\x0f\x8e\x58\xc4\xdb\x44\xc9\x55\xb5\x3e\xea\x64\x30\x9d\x24\x53\x84\x4f\x02\x03\x18\xab\xb3\x1b\xf1\xb6\xbb\x33\xfe\xa3\x17\x49\x7c\x87\x82\x1a\xb0\xd2\x20\x94\xee\x70\x0e\x65\x63\xbc\xd9\x3d\x65\x08\x9d\xd9\x76\x3b\xaa\x6b\x0f\x05\xd5\xee\xf8\xb2\x3b\x90\x72\x5f\x77\x29\x55\x3b\xe8\x70\xb9\xb5\xc4\x28\xd0\x96\xab\x32\x6f\xc3\x8e\x48\x77\x20\x90\x5f\xed\x58\x8e\x26\xea\x72\xe0\xe1\x57\xda\x9c\x16\x6d\x1b\xab\x70\xd0\x52\xab\xb6\xc8\xcd\xc3\x87\x4f\x78\x0b\xd8\xe4\x79\x9e\xe0\xea\xda\xc4\xe4\x39\x42\x60\x28\xc2\x42\x7c\x5e\xdd\x91\x0a\xac\x6b\x27\xdb\x6d\x82\x88\x8b\x2f\x28\x75\x69\xdf\xe9\x79\xfd\xc1\xa8\x37\x74\xbd\x01\x19\x9a\x2f\xe7\x4d\x5f\x4e\xa9\x38\x25\x83\x36\x4f\x90\x7e\xc2\x4d\xda\x35\x2e\xe7\x48\xf0\x8e\x24\x08\x99\xb8\x38\x25\xe2\xd4\xb3\x6d\x71\x2e\x7f\xc7\xa2\x23\x9e\x89\xe7\x94\xe5\xbd\x42\x02\x9f\x92\x1d\x4b\xcc\x18\x8e\xde\x64\x8d\x48\x41\x24\xad\xe2\x07\x08\x78\x84\x28\x9c\xf6\x15\x96\x54\x8f\xb4\x2b\x91\x87\x7c\x24\x74\x80\x9f\x21\x7a\x1a\x6b\xcb\x55\x0a\xa7\xa4\x6e\x68\xaf\x49\xad\x24\x5e\x37\xda\x95\x40\x04\x21\x2f\x6e\x9b\x85\xc4\x3c\x49\x45\xd0\x1c\x9e\xa7\xe3\xf5\x33\x14\x3e\x4f\x9f\xc7\x1d\xf2\x3c\x38\x25\xcf\x03\xfc\x2c\x7d\x16\x33\x14\x49\x2a\x06\x91\x4e\x2c\x53\x42\x7c\x8a\xb2\xd3\x10\xe3\x0b\x7f\xbb\x8d\xda\x3c\x92\xa5\xc8\x73\x17\xb3\xf5\xb3\x48\x2e\xeb\x88\xb0\x91\xe4\xd8\x47\x07\x44\xd6\x5e\x4f\xc3\xf8\x96\xac\x9a\x68\x4d\x3d\xc9\x6a\x82\x87\x66\x82\x87\x63\x71\x5a\x99\xe0\x30\xbe\x45\xa4\x23\x72\x9e\x60\xf4\x84\xef\x14\x95\x3f\x0d\x6e\xa3\xa6\x96\xca\x25\xdd\x6e\x45\x9b\x0b\xb9\xb0\xe7\xae\xb2\x5b\xcb\xab\x3e\x6a\xe6\x45\x7a\x7d\x49\x1a\x8a\xcc\xb7\xea\xa2\x3e\xcf\x48\xfa\xb4\x75\x84\xcf\x5d\xc8\xb9\x91\x5a\x18\x91\x4a\x7f\x2a\xce\x5b\x20\xe4\x6d\x75\x11\xd2\xe4\xe1\x23\x45\x05\x56\x11\xf7\x92\x2b\xd7\x95\xc5\x51\x8a\x36\x3b\xa5\xfe\x00\xeb\x1a\x06\x8f\x91\x80\x04\xcc\x11\xdd\x04\xcc\x7a\x67\x75\x5a\x9d\x8e\x0f\x0f\xca\x29\x13\xde\xc1\xac\xea\x08\xec\x6f\x97\x3f\xb3\x04\xde\x5e\x5e\x7e\xcb\xda\x04\x8c\x15\x06\x3b\x04\x5b\x51\xa9\xf3\x68\xa5\x8f\x77\x37\x71\x58\xf5\xf2\x21\x18\xda\xb7\xa1\x69\x89\xb1\xf5\xd1\x62\xd6\x7b\x0b\x77\xb4\xbf\xea\x40\x69\xa1\xe9\xea\xd2\x4a\x75\xaf\x2c\xed\x89\x21\x7f\xbf\xb4\x4e\x94\x17\xfa\x42\x55\x37\x99\x3a\x81\x52\x16\xff\x49\xf8\x9f\x1a\xfa\x76\xa4\xe2\xb6\x5b\xab\xb7\x4d\x0e\xab\x7d\xd8\x41\x1c\xbd\x4a\x84\xf8\x4d\x34\xc9\xc3\x43\xdb\x9e\x29\xbd\x28\xdb\x4e\x15\x91\x6f\x9a\xb2\x6d\x59\x13\x08\xe3\xef\xab\xcf\x48\x2f\x97\x80\xd7\x34\x29\x8d\x1c\x66\x74\x54\xc0\xe1\x15\x86\xc8\x3d\x25\xe0\x80\x80\x27\xce\x9b\x75\xa6\x4c\xf1\xdf\xdd\xa4\x22\xb9\x17\x12\xbc\x39\x3f\x89\x9b\xbf\x05\xd9\xfe\x17\x15\x15\x68\x95\xc4\x33\x91\xa6\xe0\xf3\x24\xf7\x66\x08\x29\xb7\x4c\xb2\xc5\x35\x6b\x83\xe2\xa7\x44\xed\xda\xb4\xe5\xc0\xcc\x0c\x22\x75\xc1\x9b\x4a\xfe\x93\xc7\xce\x3c\xbe\xf3\x03\x1d\x04\x4c\x7c\x0e\x32\x84\xcf\xc4\x99\x44\x90\xc2\x59\x44\x20\xb8\x50\xa8\x4a\x21\xb2\x08\x55\xae\x1f\x35\x8a\x14\xe3\x10\x61\x56\xa8\xbd\x07\xbb\x5d\xf1\xac\xc4\x4e\x22\xca\x44\x82\xb4\xf6\x61\x8a\x6b\x26\x6f\xb1\xaa\xf8\x2a\x98\x7d\x42\x6b\xbc\x2b\x0c\x72\xdb\x81\x9c\x99\xc8\xbf\x0f\x6e\x25\x5e\x97\x95\x14\x2f\x4e\x9a\xf9\xd1\xdc\x0f\xe3\x48\x48\xda\xc6\xb7\x6d\xdf\x49\x44\x1a\x87\xf7\x22\x37\xe0\x29\x12\x0c\xe7\x86\x4f\x6a\x8d\xce\x9c\x6c\x29\x22\xd9\xa0\x16\x8f\xd6\x3e\x46\xb9\x24\x23\xef\x8f\x51\x88\x6e\xbb\xb0\xe4\xb9\x00\xcd\x78\x45\xbb\x12\x9f\xb3\xb7\xf1\x5c\x20\xcb\xc2\x27\x92\x5a\x0c\xd0\x1a\x3b\xb1\x5e\x42\xb4\x84\xcd\x6c\xe9\x27\xfe\x2c\x13\xc9\xb7\x7e\xe6\xab\x00\x7a\x75\x8b\xbf\xa5\x33\xf7\x33\x9f\xcf\x79\x7b\x7e\x48\x3c\x17\x02\xa5\xcd\x22\x62\x09\x28\x0e\x28\x0f\x56\xa2\xec\x16\x34\xfd\x10\x61\x10\xdb\x2d\x12\x3c\x82\x50\x32\x11\x19\x8f\x8c\x6d\x71\x8f\x91\x6e\xcf\xf0\xa2\xb9\xa0\x6f\xf4\xd5\x46\x99\x65\xec\xb3\x2a\xd6\x39\x51\x0a\xce\x2b\xbd\x19\xb9\x76\x05\xb6\xa7\x29\x1e\x2c\x4a\x86\x39\xab\xba\xac\x38\xd4\xb2\xf9\xc6\x9f\xb7\xcc\xc6\x6e\x55\x84\x7b\x92\x39\xe7\x02\x22\x9e\xec\xca\x80\x46\x6a\x41\xb5\x51\xbe\x49\x91\xc0\x53\x79\xb6\x2b\xa9\x32\x67\xd1\x24\x6e\x91\xdd\x8c\x8c\xa4\x23\x57\xb2\x1b\x7d\xdd\xcd\x4f\x3f\xe7\x79\xdd\xdc\x74\xde\x35\xd7\xda\xc4\x35\x97\x0f\xca\xfc\x3a\x35\xe6\xd7\x61\x8e\x1c\xfc\x54\xa2\xa9\x2a\x31\x13\x6e\xb7\x87\xb8\x40\x5f\x87\x6d\x76\x90\xa9\xcb\x51\xfe\x51\x01\x60\x24\x1b\xb5\xfc\x9b\xd9\x5c\x2c\x6e\x97\xc1\x2f\x9f\xc2\xbb\x28\x5e\xfd\x9a\xa4\x59\x79\x5b\x26\x09\xc3\x01\x44\xa5\x30\x2b\xd7\xde\xad\xab\xd3\x66\x13\x31\x55\x86\x02\x30\x68\xf3\x10\x6d\x76\x20\xf0\x24\x99\x6e\xb7\xa6\x9f\x8a\xf7\x54\xe9\x19\xc6\xc6\xf2\xd5\xc2\x6d\x1e\xd5\xd4\xef\x6a\xae\x22\x7c\xad\x60\x73\xe0\x19\x62\xcd\x09\xcc\x94\xde\xcd\x9c\xc7\xce\xe2\x2c\xbc\x58\x9f\x15\x9a\x39\x4b\x58\xf0\xb4\x34\x66\xd5\xda\x37\xb0\xe2\xb3\x71\x84\x16\x38\xb7\x79\x9d\xa1\x05\xc6\x4c\xa6\xc0\x1d\xcf\x6f\xa2\xe0\x9e\xbb\x67\x77\x17\xf7\x67\x78\xc9\x57\x93\xfb\x4e\x67\xaa\x58\xa0\xb9\x3e\xa9\x0b\x58\x2a\xdb\x68\x75\xd9\x3d\x59\x4e\x2b\x7a\x3c\x2c\x3c\xae\xc9\x53\x18\x82\x1b\xa3\x1a\x7d\xc9\x69\xcc\xc1\x47\x47\x25\x80\xb9\xfa\xdb\x68\xa8\xb7\x43\x7f\x68\x76\x03\xed\x62\x64\xbd\xbe\xd4\x01\x3b\x2d\xb9\x33\x2a\xab\x5c\xb3\x60\xce\xcf\x92\xda\x5e\x03\xc9\xbe\x2c\x12\xff\x4e\x28\xba\x23\x30\x43\xd6\xc6\x8d\x4e\x9a\x3d\x86\xc2\x99\x07\xe9\x2a\xf4\x1f\xb9\x15\xc5\x91\xb0\x40\xa0\x01\xc1\x8e\xbf\x5a\x89\x68\xfe\x72\x19\x84\x73\x1d\xb5\x2e\x4d\x66\xdc\xfa\xc5\xbf\xf7\xb5\x5f\x5e\x66\x01\xca\xb8\xba\x6d\xcf\x44\x94\xfd\xa4\x3d\xc0\xe5\x00\x0c\x3b\xf1\x4a\x44\x08\x43\xe6\x3c\x24\x41\x26\x90\x75\xae\x8b\x5d\x14\x20\xee\x95\xd9\xc9\xe7\x7f\x7f\x6e\x3e\x59\x32\xfb\x2c\x8c\x53\x81\xe4\x86\xcf\x9c\x57\x67\xd1\xe9\xe9\x19\x36\x1a\xca\x95\x30\x44\x93\x60\x12\x4d\x0b\xbd\x8c\x14\xd5\x4c\xa6\x6b\x31\x3d\x9b\x3c\xbc\x04\x75\xc5\x6b\x2e\xc6\xc8\xaf\xc9\x83\x84\x9c\x7b\x79\xa8\x7d\xa8\x7e\x90\xd9\x21\x98\xc4\x53\x2e\x30\x0b\x78\x8a\x6a\x46\xf0\x01\x8b\x50\x60\x24\xcf\x84\x76\x19\xa1\xdd\xfc\x86\x4a\xdd\x59\xf4\x87\xac\x3f\x84\x01\x61\x03\x02\xa3\x21\x1b\x29\x68\xf9\x25\x85\x3c\xfa\x94\x52\xaf\x51\x4b\xd4\x5e\xe1\x4c\x53\x6a\xb3\x0d\x28\x1b\x50\x59\xfd\x51\x69\x6b\xae\xa5\xdc\xcd\x25\x97\x6e\xbf\xee\xbf\xae\xef\x35\xbb\x42\x93\x9c\x7b\xbd\x4a\x65\xbe\x52\x44\xd6\x50\x4e\x73\x32\xb9\x7c\x7e\x7e\xba\x42\xee\x9e\xa5\x17\xe1\x19\xd6\xca\xce\x31\xf7\x27\xa1\x3c\x63\xd9\x24\x9e\xd6\xb5\x1d\xf3\x23\x54\x1d\x4b\x41\x09\x35\x88\x72\x0b\x4f\x6f\x6e\x61\x50\xdc\xcb\x3d\x54\x0c\x73\xe0\x49\x8c\x09\x89\xb9\xb9\x1d\x28\x29\xda\x17\x5c\x4e\x1b\x7f\x70\x72\x12\xd6\x87\x54\xa3\xd0\x2a\x80\x12\x50\x69\x33\xc7\xb0\xea\xf6\x6d\xad\x1d\x07\x96\x76\xde\x92\x2a\x51\x69\x85\xf3\x2f\xd4\x8e\x9c\x45\xe9\x64\x10\xc4\x24\x9b\xea\x7d\x93\xc3\x8e\x5c\xd2\x98\xfb\x60\x31\x4b\x6d\x60\x89\x26\x14\xcd\x22\x13\xf7\xa8\x7c\xba\xf4\x56\xe3\x12\xc9\x5d\x04\x55\x7b\x6f\x88\xf9\x81\xd3\xbd\xba\x3f\x47\xdb\x6e\x9c\xa6\xb7\xfe\x9d\x48\xc7\xc7\x3f\x99\xd8\xc3\x98\x4d\xa6\x27\x5f\x40\x9c\xb1\x6d\x5b\x13\xe3\xea\x4c\x43\x90\xa9\xc5\x73\x15\x6f\x51\xc7\x0f\x95\x29\x56\xb8\x76\xcf\x95\x65\x2b\xce\xe3\xcd\xed\x76\x48\x48\x18\x9f\x14\x52\x73\x97\x30\xe2\x92\x7c\x36\xd5\x9c\x35\x78\x3d\x2b\x77\x53\xaf\x80\xbd\x39\xde\xb0\xf4\x5e\xb6\xc0\x2a\xc0\x81\x85\xd5\x2e\x39\x3e\x0f\x8d\x2c\xa4\x6c\x2d\x30\xbd\xea\x31\xe2\xf6\x34\x5c\x50\x7d\x6a\xb8\x23\x3d\xda\x82\xc6\xe3\xa9\xf1\xae\xec\x1e\x67\x13\x46\x7b\x3e\x5c\x0e\x10\x49\x7c\x20\x7c\x3c\x84\xa5\xb7\x22\xab\x28\xec\x36\x0e\x4c\x68\x3f\x2f\x89\x1a\xdf\x58\x4c\x82\x69\xa3\xdf\xc6\xea\x1d\xab\x16\x16\x97\xee\x65\xab\xdf\xc6\xb5\xb7\xb2\x6f\xac\x56\x44\x77\x6f\x1c\x2b\xb7\x0c\x55\xc0\x9b\x23\x5f\x75\x54\xd4\x0c\x1d\x15\xf1\x15\x33\xd4\x35\x28\xb7\x3b\xc2\xa8\x4d\x9a\xd1\xee\x93\x3e\x8c\x7c\xed\x23\x4c\xc2\x19\x17\xd6\x7c\xa2\x5d\x08\xf8\xad\x20\x6a\xa5\xd8\x6f\xeb\x4b\x92\x14\x7c\xc9\x04\x16\x4a\xc1\xca\xe5\x4c\x7e\x81\xab\xa0\xa4\xcc\xc2\x33\x05\x23\xb1\x6d\xa3\xff\x18\x28\x27\x61\xdb\x6d\x51\xa6\x00\x9a\xeb\xda\x90\x0d\xac\xe8\x8e\x58\x77\x54\x19\xf8\xd1\x1b\x50\xb5\xcf\x23\xbd\xcf\x0f\x97\x5c\xd2\x6d\x8d\x0b\x2d\x57\x38\x3a\xb2\x83\x1b\x54\x6b\xe4\x0e\xde\xec\x1a\x2f\x55\xf3\xcd\x7b\xf4\xd6\xd1\x73\xeb\x0a\xcf\xde\x13\xce\x62\xf4\xfd\x14\x8a\x8c\xcb\x7f\xa5\xa3\xac\x42\x44\xe9\xf7\x89\x98\x2a\x57\x2f\x27\xbe\xa4\x57\x33\x14\xcb\xad\x9a\x38\x1f\x3b\x89\xf3\xea\x59\x5d\x35\x31\x36\x96\x63\xb9\x13\x0e\xf0\xd5\x68\xb5\xba\x6e\xc5\xf8\x48\xf5\xfd\x28\x86\x3d\x24\xec\xbb\xc3\x92\xb0\x77\x16\x5f\xeb\x33\xac\x24\x8c\xe5\xf6\x52\xb8\x35\xe4\x11\x4a\x25\x16\xcb\x1d\x87\xc1\x8c\xbb\x30\xe7\x93\xa9\x76\x13\xe6\x1b\x17\x61\x8a\x8a\x35\x97\x72\xa9\xda\x42\x73\xbd\x85\xc4\x78\xe2\x43\x3a\xf1\xa7\x53\x96\x56\xe3\x59\xcd\x77\x55\x2c\x5c\x20\x23\xb3\xb1\x14\xf2\x51\x83\x7e\x42\xd3\x9e\xec\x69\xda\xe7\x66\xde\xde\x10\x3b\x1f\xc4\x22\x14\xb3\xaa\x2a\x46\x6c\xdb\xb1\x13\x3f\x44\x7f\x3b\xd8\x6c\x46\x0d\xdf\x59\xa0\x40\x5d\x28\x6a\x5d\xfc\xc2\xe7\x40\x56\x38\xb1\x51\xe1\x07\xb3\x1a\x98\x37\x04\xb9\xa6\x22\x72\xc6\x94\x1c\x86\x3c\xa8\xaa\xb4\xac\xfc\x24\x15\xaf\xc2\xd8\xcf\x0c\x30\xa0\x58\x05\x2a\xa8\x74\x96\x3c\x4f\x90\xfc\xd2\xc5\x1d\xeb\xd4\x95\x3c\xcc\x29\x79\xee\x36\xb8\xd2\x8e\x8c\xde\xa5\x04\x05\x5d\xac\xbc\xa3\x97\xfe\x12\x24\xb1\x18\xd8\xb6\x75\x2a\x81\x62\x19\xe4\x79\x7c\xea\xb2\x40\x4b\x80\x49\x97\x32\xd2\xa5\x40\xba\x5d\x46\xba\xdd\xca\x08\x9e\x54\xca\x51\x23\x78\x1d\xed\xf5\xdf\x6c\xbd\xae\x9c\xc1\xe7\xff\x61\x72\xda\x99\x8e\xdd\xc9\xe7\x7f\x9e\x3e\xaf\x0c\x6c\xd8\xe6\x3c\x41\x41\xc7\x72\x87\x16\xde\x6e\x29\x2d\xde\x3f\x13\xcf\xc2\xe3\x06\x0a\x7a\x6f\x8c\xe5\x7d\x76\x00\xd9\xc5\xc5\x85\xbb\xdd\xa2\xd8\xc9\x44\x9a\xa1\x00\x8f\x89\xdc\x47\x18\x7f\x69\x74\x07\xb2\xd3\x2f\xb9\xb4\xde\x08\xd6\x26\x70\xcf\x14\xce\xdf\x23\x07\x36\x5a\x63\x56\xf9\x9f\x35\x70\xe6\x30\x16\xc4\x3e\xd3\x95\xcb\x64\x47\x47\x4d\xf7\xca\x88\x04\x91\xf2\x90\x55\xd3\x19\x52\x7a\x15\x39\x73\x78\xa2\x01\x52\x20\x69\xde\x7c\x7e\x90\x0b\x71\x21\x4b\x92\x27\x39\xce\x25\x1d\xc5\x6d\x79\x2e\xff\xeb\xb1\x91\x8a\x04\xb0\x1f\x81\xe2\x90\x43\x78\xc2\xfa\x27\xf7\x14\x4d\x8e\xc7\x93\x20\xe4\x09\x15\x81\x4a\x5c\x76\x1d\xd7\x5f\x61\x77\xc8\x26\xc1\x14\xa2\x3d\xd2\x5d\x5f\xbd\xa9\xc6\x8e\x32\xb7\xb9\xcc\xb2\xd0\xe0\x37\xb2\x6f\x2d\x1c\x4f\x93\x99\xa5\x89\x76\x6f\x20\x69\x76\x64\x59\x1d\x1f\xe7\xf2\x87\x9c\x6c\xb5\xf0\x89\x8e\x26\x12\x44\xe9\x4a\xcc\xb2\x8f\xf1\x3a\x99\x89\x26\x18\xea\xe7\x64\xe4\x0e\xd0\x51\x67\x75\xb9\x7d\x4c\x53\x44\x40\xff\x64\x6d\xdb\x28\x40\x3e\x58\x91\x62\xa0\xb7\xdb\xa8\x78\x91\xf4\xbc\x22\xdc\xdb\x9c\xfb\xb6\x8d\xf2\xac\xb1\xc9\x15\xab\x8f\x63\xcb\xea\xc8\x5f\x96\x6a\xd1\x87\x39\x34\x19\xc6\xb2\xb4\x32\xf6\x57\x26\x9f\x3e\x0b\xd5\x43\xfe\x96\x2b\x2a\x30\x64\x98\x5f\x99\x0e\x79\x2a\xc6\x3b\x5c\xda\xb7\x54\x1c\xbd\x14\x93\xd4\xa0\x15\xd1\xe4\x3f\x6a\x19\xa4\xda\xad\xc3\x24\x9e\x6e\xb7\x7e\xed\x1a\x18\x57\x04\xd4\x06\xf7\x0d\x98\x37\x30\xa6\x2a\x86\x07\x31\x4a\xdb\xe4\x30\xbe\x47\xa3\xb4\xab\xa7\x0c\xb1\xf6\xb5\xcf\xb5\x21\xc4\x53\x88\x3d\xc8\xad\x25\x9a\xed\xcb\x73\x25\xbe\x82\x73\x00\xe3\xd8\x69\x3f\x9a\x7b\x5c\x09\x68\x5f\x73\x12\x28\x3b\xd4\x92\x2d\xe4\xd6\x78\x7a\xce\xc4\xbc\x95\xc6\x32\x25\x88\x6e\x5b\x71\xb6\x14\x49\x2b\x5b\xfa\x51\xcb\x8f\x0c\xe9\xd9\x8a\x13\x25\x45\x28\xcd\x08\x63\xe5\xe4\xdb\xa8\xee\xb4\x79\xd5\x87\x71\x63\xab\xff\x46\xb5\xaa\xfc\x78\x29\x1b\xc0\x20\x9a\xc5\x77\x2b\x3f\x0b\x6e\x42\xd1\x4a\xc4\x4c\x04\xf7\x22\xa9\x58\x29\xd6\x7d\xd3\xf7\xfa\xac\xd7\x57\x0b\xf0\x15\xee\x58\x20\xd2\xa7\x4e\xf1\xc8\x8d\x8b\x00\x3e\xdf\x37\x19\xc8\x0d\x5b\x20\xe5\x31\x84\x1c\x29\x7b\x0d\x88\xf8\xf3\x9b\x67\xcf\x6f\x21\xce\xa5\xd9\x96\x2f\x59\x09\xa3\xd7\xa0\xdf\xdc\xb6\x32\x46\xf1\xd3\xec\x75\x34\x17\x9f\xb7\x5b\x25\xa4\x2d\x13\x70\xe1\xb1\xb5\xcd\xf9\x73\x84\xc7\xe3\xe7\xaa\x13\xc8\xb2\xf0\x84\x4c\xcf\x50\xb8\xdd\xae\xb1\xf2\xbb\x78\x78\x3d\x29\x07\x93\xc2\x4c\x59\xdb\x16\xe4\xb0\xba\x6c\x90\xb3\xac\x07\x87\xac\xff\x60\x75\x66\x4e\xaa\x20\x44\xc7\xfa\x0b\x1a\xb7\xff\xfe\xf7\x14\x5b\x60\xb6\xc9\x4c\x1e\x42\x65\x0e\xc0\x67\xd5\x6e\x45\xb9\x2b\xbd\x19\x08\x95\x21\xb2\x6d\x54\xc9\xc1\x67\xc6\x92\x60\x1c\x39\x81\x4c\xe8\x44\x12\x04\x1b\xb7\xcc\x19\x86\xb5\xd6\xfa\x2c\xfc\x40\xd9\xb6\x39\x5a\x32\x1f\x24\x07\x8e\x85\x52\x4e\xce\xd2\xf3\x7d\x79\xe7\x29\x3d\x4b\x3b\x1d\x5c\x88\x98\x4a\xb0\x9f\x4e\x6d\x1b\x45\x93\x74\x9a\xbb\xdd\x92\xe4\x6a\x54\x73\x55\x2d\x39\x43\xaf\xc7\x3c\x8d\x44\x0e\x08\xb6\x03\x72\x3f\x48\xf7\x25\x65\x05\x5f\xc7\x79\x36\x56\xba\x84\xdb\x2d\x79\x2e\x38\x27\xcf\x33\x26\xda\x5c\xd8\x76\xd6\xe6\x59\x8e\x5d\x8f\x87\x68\xc9\xb5\xe4\xb4\xac\xe9\x00\x9b\x2a\x8e\xa9\x5d\x3a\x9c\x6c\x73\x9e\x1d\x3a\xfd\xee\x58\xac\x35\x53\x36\xb3\xa9\xc8\x5a\x7e\xda\x2a\x36\x68\xdb\xaa\x49\xff\x36\xa9\xc8\x8c\xda\xa5\x93\xee\xb1\xad\xc8\xba\xbe\x56\xe5\xae\xaf\xad\x20\xda\xec\x4a\xca\xc6\x38\xc5\x96\xb4\x05\x32\x86\x00\x7b\x06\x84\x02\x8d\x54\xd8\xa9\x7d\x66\x19\x2a\x75\xea\x8b\x38\x8a\x31\xca\x60\x32\xc5\x90\x70\xed\x43\xb2\xe0\x57\x95\x2e\x48\x45\xab\x22\xe1\x6d\xf7\xe0\x5e\xa6\x3a\xfb\x81\x16\x10\x49\x76\xb8\x68\x86\x67\x1a\x3d\xa8\x5b\x44\xb4\xd9\x41\x9b\xe4\x06\x4c\x18\x66\x4b\x31\xfb\xc4\x82\x92\x9e\x30\xea\xf1\x9a\xaa\x18\xb1\x91\x62\x0a\x0f\xc3\x87\x3c\xe9\xa0\x65\x64\x7c\x93\xf6\x73\xff\x2c\x5f\xef\xa3\x54\xf9\x57\x39\x09\x6c\x3b\xb3\xed\x76\x36\x89\xa7\xf2\x5c\x2c\x94\x2b\xe4\x4d\x3d\x8a\x80\x0b\xcd\xfe\xc9\x94\x82\xda\xae\xa6\xfe\x68\xc4\x60\x0a\x11\xe5\xf2\x41\x72\x2c\x82\x49\xd5\xf1\xa0\x37\xaa\x2a\x6a\xd6\x1c\x49\x1e\x23\x82\x62\xbc\x11\xca\x57\xaa\xe0\xf1\x58\xb0\xaa\xce\x58\xa0\x42\x1e\x49\x8a\xe8\x60\x28\x79\xf0\x83\x5a\xb7\x35\xce\x2c\x3b\x7c\xdc\x63\xbd\x32\x50\x30\xfa\x52\x91\x21\x90\xbe\xe0\x9f\x51\xf1\xba\x48\xfe\x54\xd4\x45\xb5\xc9\x02\x18\x34\xae\x1a\x3d\x2a\x07\xe9\x1b\x66\xdb\x53\x62\x90\x68\x62\x5d\x5f\xcf\xe2\x44\x9c\xfe\x92\x5e\xa7\x4b\x3f\x11\xf3\xeb\x6b\x4b\x1b\xf8\x36\x7e\xe1\x9b\x1d\x3e\x3b\x42\x67\x95\xdb\x59\xf7\x52\xfe\x94\xa0\x3f\x1b\x67\x6c\xa3\x02\x60\x5b\x26\xb6\x58\x6a\xc9\xe3\xa3\x79\xd5\x22\xde\x58\xe2\x98\x27\xb8\x8b\xe7\x82\x29\x0d\xca\xb1\xb5\x5a\x27\xc2\x62\x96\x86\xc7\x16\xcc\xe2\xd5\x63\x12\xdc\x2e\x33\x66\xfd\xd7\xff\xb3\x45\x5d\x32\x6a\x7d\x2b\xa2\x20\x6d\xbd\x5f\xa7\xcb\x4f\x7e\x22\xee\x5b\xe8\xb7\x30\x0e\x92\x78\xf6\xc9\x49\xd6\xd8\x52\x11\x11\x0c\x79\xa3\xf6\x53\xae\x13\x46\x0e\xc3\xab\xec\xb3\x0b\x5d\xf2\xf5\x2e\x7b\x0b\x11\x05\xf8\x8a\x24\x68\xb2\x35\x28\x21\xfd\x76\xab\x1d\x07\xa0\x98\x27\xc8\xc7\x4a\x25\x58\x9e\xfa\xb8\xb6\x9f\xb4\x13\xd5\x5c\xc9\x96\x1c\x06\x5c\x39\xe6\xd6\xe3\x0b\x1e\x77\xdb\x6d\x65\xbc\x50\xd3\x55\x1b\x1b\x0d\x7c\x75\x07\x52\x8f\xd2\x0e\xa4\xd0\xcf\x57\xce\x2a\x77\x7a\xf3\x15\x32\x92\xfd\x18\x2d\x55\xf9\xb4\xb9\x86\xe8\xff\x03\x3e\xd4\x4b\x8b\x0d\x48\x0d\xb5\x82\x24\x33\x86\x95\x4b\xf5\x40\x52\x15\x39\x06\x2d\xb5\x95\xdc\xed\x36\xbc\xe0\xeb\xb1\x18\x5b\x96\x81\x95\x0c\xc5\x3c\x55\x0c\xf8\xcb\x78\x2e\x5e\x64\x28\xc4\xf8\xbc\xdf\xa7\x23\x6f\xbb\x8d\x2f\xfa\x5e\x97\x8c\xb6\xdb\xb0\x43\xb4\x85\x12\xf2\xf7\x32\x77\x88\xcc\xee\x75\xa9\xbb\xdd\xfa\x17\xfd\x41\xb7\xd7\x1d\x8b\x71\x9a\x73\xf4\x21\x66\x31\x93\xef\x5a\x28\x1d\x42\xd8\xa1\x98\xf9\xa7\xaa\x44\x07\xc5\xa7\xaa\xa5\xf3\x73\xe2\xe2\x8e\xd7\xef\x77\x3d\x73\xa7\x3e\x60\xa4\x3b\xd0\x86\x91\x6a\xee\x8e\xca\x97\x86\xee\xd3\x53\xa7\x6d\x5b\x14\xb7\x9a\x1d\x06\xd1\x30\x26\x0b\xff\x46\xf9\x2d\x6e\xcd\x63\x91\x4a\xd4\xea\xcf\x66\x62\x95\xb5\x12\x71\x2b\x3e\x57\xa2\x39\x14\x93\x6c\xc0\x8a\x36\xdb\x1c\xba\x6c\xa8\x63\x36\x1e\x15\x07\xe5\xf2\x3b\xcf\x08\x83\xfa\xca\xdd\xeb\x73\xeb\xf9\x6d\xf5\xfa\xb2\x08\x49\xa1\x75\x18\x4d\x6b\x5a\xec\x93\x72\xeb\xdc\xea\xe4\xfa\xf2\x96\x22\xa8\x25\x45\xd8\xe1\x56\xcb\xea\x24\x9d\xbf\x72\xeb\xaf\x9d\xbc\x7f\xb8\x30\xc2\x8e\xc1\xb2\x7f\x5d\xc7\xd9\x99\x85\x3b\x7f\xb5\xfe\x8a\x21\xed\x58\x17\x2a\x4e\xfd\xf9\x73\xab\x93\xc9\x97\x63\x3a\xcf\x39\xc3\xb1\xd9\x9d\x04\x5a\x54\xe8\x6b\x51\xe1\x7b\x25\x2a\x8c\x1a\xac\x98\xb5\xa9\xb3\x6c\xa7\xb8\x1a\x96\x60\xcd\xc9\xe2\xef\xe3\x07\x91\xbc\xf4\x53\x81\xf0\x76\x9b\x19\x56\x56\x66\xcc\x49\xc3\xae\x12\x34\xe6\x4c\x5b\x50\x99\xde\x3d\x41\x63\xf7\x89\x4b\x9e\x42\x80\x4d\x8a\x69\x3e\x8a\xcd\x8a\x00\x04\xf5\x79\x0e\x79\xe5\x96\xbd\x80\x43\xf1\xd8\x6a\x59\xcc\x64\x8c\x31\xcc\xb4\x24\x2b\x58\xa0\xd9\x39\x0f\xb7\x5b\xcb\xe2\x7c\x9d\x4b\x3c\xd2\x13\xad\xc8\x32\x3b\x0d\x61\x99\x87\xbc\x59\x83\xd2\xa8\x9b\x89\x20\x44\xf3\xe7\x85\xe7\xf7\x62\xa2\x96\xf9\x44\xcc\x6d\x1b\x2d\xf9\xd2\x1c\x17\x17\xe6\x18\x83\x3f\x5e\x76\x52\x96\x76\x96\xfa\x68\x10\x46\xba\xa4\x88\xd6\x50\x1c\x91\xfd\x00\x36\xc7\x1c\x51\x7e\x19\xd6\xe8\xd5\x2c\x41\x8a\x72\xfe\x03\x01\xb7\x2c\x88\xb5\xf6\x63\xb0\x40\xb1\x84\x25\xb1\xa4\x82\xdd\x06\xbf\x40\x2f\xe3\x75\x94\x19\x42\xf5\x46\xb4\x22\x71\xab\xac\x0c\x2d\x23\xe7\x8f\x2f\xdc\x33\x14\x5f\x5c\x5c\x70\x82\xb5\xc9\x70\x86\x31\xb1\x63\xdb\x46\x81\x7c\x3e\xa9\x69\xd9\xee\x03\x83\xe3\x51\x76\xbc\x12\x18\xd4\x5c\x23\x28\xc1\x9f\xcf\xad\x89\xd5\x89\x3b\xd6\xd4\x82\x94\x57\x58\x23\x5f\x1e\x88\x67\x96\x5c\x7d\x93\xaa\x53\xfe\x62\xd5\x35\x03\xb5\x28\x48\x9f\x4e\xa5\x6a\x10\x34\xa8\x1b\xb6\xdb\xb1\x3c\x05\x78\xbb\xb5\xfe\xf8\xfd\x7f\xfd\xaf\xff\xd9\x6a\x73\xf3\xa0\x92\x77\x6a\x93\x29\xe1\x7b\x3a\xce\xd0\x4c\xb9\x1e\x9c\x9e\x48\xce\xca\x9f\x44\x53\x1e\x56\x0f\x59\x5a\x1e\x09\x5f\x69\x1d\xae\x95\x2c\xb3\x99\xa6\x10\xbc\x0a\x9f\x80\x48\x4a\x13\x09\x5e\x30\xae\x28\x05\xcb\xc2\x18\xe8\xc1\x87\x50\x7f\xa8\xb9\xa3\x5a\xab\x89\xd7\xa2\xc9\xe6\x83\x78\x40\xb5\x55\x5c\xde\xfc\x3d\xfb\x7b\xf4\xf7\xfb\xbf\x2f\xfe\x9e\xb4\xfe\xeb\x7f\xf9\x6f\xff\xfb\xef\xff\xed\xbf\xfc\x6f\x7f\xfc\xfe\xfb\x1f\xbf\xff\xa7\x3f\x7e\xff\xff\xff\xf1\xfb\x7f\xf7\xc7\xef\xff\xfd\x1f\xbf\xff\xe7\x3f\x7e\xff\x1f\xfe\xf8\xfd\x7f\xfc\xe3\xf7\xff\xe9\x8f\xdf\xff\xe7\x3f\x7e\xff\x5f\xfe\xf8\xfd\xff\xfa\xe3\x3f\xfd\x1f\xff\xf7\xef\xbf\xff\x7d\x4d\x5d\x3a\x54\xff\x47\x7f\x5f\x2f\xc4\x62\x61\x19\xde\xea\x30\x9a\x50\xc1\xcf\xd7\xac\xc4\x07\x3d\xa3\x28\x44\xf4\x5d\x77\x7f\x60\x7c\xa8\x0e\xb1\x9a\xc4\x5c\xdf\x6f\xce\xd7\x92\x53\x79\x7d\x77\x27\xe6\x81\x9f\x09\x58\xf2\xb5\x76\xff\x56\x26\x2d\xf8\xda\x79\x23\xd2\xd4\xbf\x15\x2f\x97\x7e\x14\x89\x10\x56\x7c\xed\x7c\x1b\xa4\x2b\xc9\xbd\xc0\x1d\x77\xe1\x5e\x6e\x87\xdb\x43\xeb\xfb\x8e\xe2\xca\x83\x05\xba\xdf\x8b\xbc\x27\x57\x28\x77\x8b\x2a\x97\xdf\x08\xb7\xe4\x33\x64\x48\x42\xbf\x9b\xda\x89\xcc\x4d\x8a\x95\x1a\x1b\xde\x9d\xcc\x6d\x7b\xa9\xe2\x60\x36\x2b\x0e\x4d\xa6\x10\x71\x72\x76\xe0\x88\x39\x3a\xc3\xb9\x17\x9e\x82\x87\x8e\x3a\x9d\xf2\xe2\xe3\x7e\xd2\xe9\xdc\xd5\xf4\xe0\xfd\x26\x39\x93\x18\x8b\x32\x44\xa1\xc0\x90\xe1\x1d\x24\xe8\x0e\xc3\xdd\xae\x6a\x5b\x23\xf0\xa6\x32\xb0\x1d\x1c\x28\x54\xce\xf0\x38\xa9\x65\x9f\x95\x6a\x8a\x31\xba\x05\x01\x04\xe3\x1d\x5b\xd9\xf6\xca\x89\xe2\x87\xbd\xcc\x2a\xad\x9a\x6f\x31\x46\x01\x47\x91\x92\x7c\x2c\xb0\x23\xf7\x22\x85\x48\xfd\x12\x27\x8e\xee\xf4\x2a\xf2\x1b\x48\x78\x8c\x02\x67\x15\xa7\x99\x59\x59\x08\x64\x0d\x6c\xed\xf8\xf3\xf9\xe5\xbd\x88\xb2\xef\x83\x34\x13\x91\x48\x1a\x2d\x5e\x2b\x05\x6d\xbb\xbd\x76\x82\x3b\xd9\xc4\x47\xa5\x33\x91\x8e\x51\xbd\x97\xeb\x6a\x3b\x48\x74\x2c\x0b\x24\xac\xd9\xc1\x61\x63\xc8\x32\x5d\xb4\xe0\x46\x32\xb3\x98\x25\xdc\x8a\xa3\x44\xf8\xf3\xc7\x34\xf3\x33\x31\x5b\x4a\x10\x6b\x05\x51\x2b\x44\x96\xd6\xd1\xb0\xea\xca\x01\x69\x4d\x5f\xa9\x92\x0b\x3b\x87\x15\x55\xd7\x39\x75\x12\x71\x17\xdf\x0b\x5d\x50\x3b\x8d\x28\x0c\xd9\x77\x75\x57\x17\xa9\xf6\x7d\x17\xaf\xb3\x62\xf6\xc1\xc5\x35\xb1\x8b\x92\x3e\xcc\x41\xfb\x57\x5f\x16\x96\x8f\xb9\x7f\x65\x6d\xbc\xac\x7d\xfd\x28\x45\x20\x15\x01\x41\x1d\xf1\xe3\x12\x7a\x8d\xb8\x74\x04\x29\xff\x33\x04\x45\x30\xa9\x2f\x90\xf1\x48\xab\x32\xe1\x73\x77\x1c\x21\xd1\x51\x01\x6d\x82\x42\x72\x68\xb0\x8b\x6a\xfb\xa8\xc0\xbe\x40\x9a\x4f\x84\x78\x2a\xd4\x31\xab\xd7\x1f\xee\x49\xc5\x8f\x56\xc0\x23\x43\x36\x48\xba\x28\x68\x40\x9b\x3f\x25\x71\x74\xdb\xd2\xa7\xb5\x42\x78\xd6\xd0\x60\x19\x87\x88\x1c\xc6\x02\xab\x18\x79\x48\x5a\xe3\xeb\x2d\x49\x5b\x41\xfa\xd6\x7f\x6b\x0c\x35\x5c\x86\xc4\x85\x3b\x8e\x58\x82\x51\x61\x2e\x40\x0e\xe3\x62\x15\x92\xad\xfe\x57\xb2\x2f\xc9\x3e\xf1\x9c\x2b\x02\x92\xa7\x42\x4d\x55\xd6\xfd\xc8\x62\x57\x9c\x2b\xca\x45\x56\xb3\x7d\xe0\x41\x83\xb9\x7b\xeb\xfd\x44\x1c\xa7\x2f\x0d\xc4\xd8\x33\x27\xb5\xd1\xa8\x3a\xbf\x14\x46\x90\x3e\xe1\x5a\x4e\x45\xa6\x2c\xcc\x59\xc9\x61\xb0\x9c\x1a\x45\x17\x2c\x90\x12\x45\x55\x78\xa1\x41\x55\x74\x51\x92\x3f\x9e\x9b\x2b\x81\x19\xc4\x48\x7a\x5d\x83\x19\x8d\x2d\x65\x37\x0f\x2c\x41\x7a\xda\x93\xf0\xc0\x35\x9e\x84\x49\x5f\x7b\x12\x56\xcb\xb0\xca\xe9\xec\x3b\xf5\xe0\x61\xb8\xcf\x03\xa0\xdd\xe6\x4a\x66\x37\x46\xbe\xf4\x68\xee\x39\xae\x8d\xe8\xf3\x21\xd7\xbe\xb9\x34\x0e\x45\x3e\x1b\x53\xd7\x77\xb9\x2d\xe7\xc7\x52\x43\xeb\x2a\xf7\x2d\xf2\xc6\x48\x7d\xe0\x7d\xee\xd9\xea\x85\x71\x8a\xfe\x52\xab\xa8\xc0\x27\x25\x28\xea\x63\xf8\xa0\xc2\x5f\x53\x0c\xbf\x18\xab\xd1\x6f\x8d\x47\xe4\xb7\x79\xc4\x8c\xd7\xb2\xc8\x10\xc3\xf7\xf2\x77\x80\xe1\x95\x91\xe9\xfd\xc6\x95\x54\x13\x7e\xe0\xaf\x9c\x05\x7c\xc3\x7f\x73\x16\xf0\x4f\x3c\x72\xca\xa3\x09\x3f\xf2\xc8\x29\xd8\x46\xf8\x95\x47\xce\x0f\x41\x94\x0d\x95\x20\x13\x7e\xda\xb7\x4a\x87\xbf\xf0\x54\x5b\x9b\x7f\xb3\x5e\x2c\x44\x02\xdf\xf1\xd4\xf9\xd6\xcf\xfc\x1f\x03\xf1\x00\x3f\xf3\x17\xc8\xc5\xf0\x37\xfe\x02\x51\x0c\xff\x9e\xbf\x40\x5d\x0c\xff\x8e\xbf\x40\x3d\x0c\xff\xcc\x5f\xa0\x3e\x86\x7f\xe1\x2f\x90\x87\x41\x08\xfe\x12\xb5\x5d\x0c\x99\x7a\x20\x18\x12\xc1\x3f\x68\xaf\x21\x29\x44\xf2\xf9\x93\x78\x4c\x21\x90\x4f\xc6\xa0\x10\x62\xc1\x7f\x2a\x85\xf4\xef\x16\xe0\xcb\x84\x44\x05\x80\x82\xb4\x7c\xfe\x10\xdc\x2e\x33\x08\x65\xc2\x2f\x71\x10\xc1\x5a\x3e\xa5\x71\x92\xc1\x4c\x3d\xa9\xb0\x40\x73\xf9\x58\xa8\xca\x2d\xf5\x5b\xcd\x23\xe1\x42\xf0\xf7\x35\xd3\xc0\x95\x4a\xa8\x47\xa7\xb9\x13\xfc\x0d\xb2\xe4\xd4\xcc\xaf\x6b\x0a\xe8\x70\xaf\xbe\xcc\xc5\x62\x2f\xfd\x56\x70\xdf\x79\xf9\xee\xed\xc7\xab\x0f\x70\x23\x9f\xaf\x7e\x7e\x7f\xf9\x2d\x3c\xca\xc7\x1f\x5f\x5f\xfe\x04\xd7\x82\xbf\x40\xa4\xee\x60\xaa\x38\x9f\x1f\x05\xfa\x84\x04\x88\xc9\xbd\x98\x2a\xfa\x04\x63\x78\x10\x8d\x04\x7b\x8b\x70\xae\x48\x86\x5f\x95\x21\xaa\x5c\x56\xe2\xa9\xb5\x43\x13\x32\xc5\xce\x8d\x5a\x41\x3c\x71\xa7\xb2\x92\x4b\xc1\xdb\xed\x5f\x6d\xbb\xdd\xfe\xb5\x72\x37\x94\x8a\xcc\xb6\xeb\x95\xeb\x1a\x89\xf6\x31\xae\xc4\x7a\x18\x3e\x8b\xa6\x08\x2c\x7c\x61\x58\xaa\x44\xb2\x54\xc9\xff\x2f\x97\xfa\xff\x53\x8e\x0f\xe2\xc5\x22\x15\x59\x05\x1f\x24\x3b\x78\x27\xf6\x91\xcf\xb5\x32\xaf\xb9\x11\x3a\x5a\x65\x0e\x0f\x8d\x81\xfa\x8f\x55\xa7\x38\x7e\x4b\x2d\x84\x8e\x01\xd6\x96\xb4\xc8\xc7\xfd\x8e\x05\x0b\xd4\x96\x15\x6e\xb7\x6d\x74\x67\xaa\xc4\x79\x55\xd6\xeb\xac\xb1\xaa\xaa\x69\x41\xa5\xb7\x79\xc0\xf3\x1d\x5c\xed\x37\x63\x72\xbc\xd9\x5f\x2d\x78\xb3\x9f\xb3\x08\x32\xc2\x5d\x88\x78\xae\x27\x06\x01\xff\x28\x94\x1e\xd6\x59\x74\x91\x9c\xe1\x60\x92\x4c\x79\x36\x49\x3a\x9d\x69\x89\x3b\xe1\xbd\x38\xf0\x20\xf2\x83\x7a\x38\x12\x09\x44\xfb\x96\x9f\x4f\x92\xa9\x32\xf6\x7a\x21\x8e\xdc\xbb\x05\xa0\x85\x6f\x0f\xda\x2e\xf0\x40\x4f\x7f\xc6\xd7\x47\x62\x9f\xcc\x4b\xa9\xef\x0c\x96\xfc\x0a\xa5\x3a\xbc\x8b\xba\xf6\x59\xda\x76\xfb\x12\x2d\x8d\xa3\x22\x9f\x2f\x8d\xe6\x92\x84\xed\x93\x29\x64\xdc\x3d\x6b\x2b\x8f\x2b\x35\xc7\x42\x59\xa7\x83\x23\x4d\xdc\xc7\x26\x00\xf2\x49\xca\x23\x15\xca\x6d\x6e\xdb\xeb\x0b\x6a\xdb\x68\xc6\x43\x34\x83\x6a\xd0\x48\xa0\xca\x94\xc5\x85\x84\xaf\x50\x11\xc6\x5e\xcf\xab\x32\x23\x4f\xf0\x59\x72\x91\xa9\xea\x83\x49\x36\xe5\xf3\xf1\x0c\xa5\x93\x6c\x0a\x19\x66\xf2\xb7\x32\xcf\x2f\x6b\x14\x65\xe9\x3f\xdc\x85\xec\x70\x72\x92\xa2\x85\x0c\x9f\x65\x17\xe2\x0c\x2b\x99\x7d\xd9\x37\x51\x59\xc4\x64\x07\x9f\xcc\xc1\xab\x9f\xb2\xa5\x28\x4d\xc8\x7f\xd5\x61\x40\x30\x7c\x10\x0d\x96\xbc\xcb\xdc\x2b\xca\x27\x31\x9e\x99\x52\xef\x84\x11\x6e\xb0\xfc\xa9\x86\x8f\x7f\x11\x7c\x53\xc6\x48\x65\x8d\x5b\xf7\xfb\x7a\x4d\xa0\x14\x13\xbe\x2a\x1a\x2a\xde\x81\xb8\x17\xc9\x63\x93\xd5\xdc\xbf\xab\x56\xf8\x75\xf1\x74\xf0\x0e\x16\x41\x18\x36\x6c\xe7\xd7\x66\xe0\x8d\x63\x5c\x04\x61\x26\x92\xa6\x3e\x5c\x99\xe5\xf9\xdb\x9f\xe8\x8b\xaa\x38\x9a\x37\x55\xfb\xcf\x7f\x72\x68\xd1\x5c\xa1\xb3\xa6\x2a\xff\xe5\xcf\x55\xd9\x10\xd4\xe8\xe7\x3f\x55\x53\xa0\xf1\x6c\x53\xd7\x32\xf1\x27\x6b\x9c\x85\xeb\xb9\x68\x0a\x8a\xd2\x12\x7f\xae\x4a\x89\xe2\x1b\x36\x47\x28\x9e\xda\x1d\x15\x2a\xa2\xa1\x6c\xfc\x64\xd9\x3b\x7f\xd5\xd4\xfd\xeb\x3f\xd7\x7d\x4d\xb2\x34\x74\xc2\x7f\xb2\x13\x15\x4a\xa7\xa1\x6c\xfa\x85\xb2\xf7\x22\x49\x45\x63\x78\x30\xc8\x78\x5e\xa6\x04\x68\x25\xab\x85\xb2\xe7\xca\x69\xbc\x7b\x16\x9d\x27\x67\x58\x3b\x43\x9f\x44\x53\xd0\xbf\x9d\xce\x54\xa7\x9c\x9e\x66\x26\x2d\xab\x46\xe5\x5d\x06\xe9\x0e\xd2\xf8\xae\xd1\xa2\xf6\xdf\xff\xa9\xf9\x93\x74\x5d\x53\x6d\x6b\xb1\x0f\xc0\x64\xe6\xf5\x8d\x42\xe8\x8d\x01\x77\x8a\x9c\x51\xe1\x62\x15\x02\x7e\xaf\xb0\x70\x05\xe5\xa3\x4f\x28\x81\x44\x61\x74\x8c\x12\x43\x45\x41\xe2\xdc\x3c\x66\xe2\x9d\x22\x68\x3a\xc1\xb3\xc4\xf9\xe6\xe7\xab\xcb\x8f\xd7\xef\x2f\x3f\x5c\x5f\x7e\x7f\xf9\xe6\xf2\xed\x15\xac\x2a\xb1\xa1\xb3\x71\xc4\xee\x51\x06\x11\xc6\xa7\x81\xe2\xb4\xbe\x3d\x42\x42\xe4\xd0\x6a\x1f\xb4\x83\x32\x38\xd9\xc1\xdb\x3a\x12\xcf\x3f\x1b\xf6\xfc\xb3\x40\xd5\x69\x03\x49\x68\xeb\xb0\x56\x66\x80\x91\x46\xf2\x01\x5f\xa1\xa8\x40\x92\xb1\xf6\x49\x18\x74\xb2\x8b\x64\x9f\x66\x2b\x79\x78\x2d\xf0\x3e\x0f\xce\xb0\x5e\xe8\x4e\x3c\xe5\xd1\x24\xee\x74\xa6\x3b\x78\x2d\xf8\x26\xf7\x03\x72\xb8\x3d\x83\x7d\x34\xb5\xd3\x7e\x44\x0e\x73\x46\x87\x39\x8d\x23\x92\xc3\xbc\xc9\x41\xde\x1d\x7c\x7f\x64\x56\x35\x4d\x29\x26\x37\x62\x6a\xdb\xb9\xd1\x7a\xa1\x45\x96\xd9\xb6\x0e\xdf\x60\xdb\x46\xf4\xdc\xc9\x30\xe7\x85\x6e\xdf\x0e\x5e\x1d\xa9\xf7\x7b\x49\xb4\x65\xfc\x56\xdb\x0d\xe1\xf1\x0c\x51\x6d\xfc\xc3\xbe\xd1\x82\x19\xf8\xed\x90\x66\x33\xf2\x75\xb4\x57\xd8\xb6\xaf\x51\x22\x29\x5f\x94\x80\x65\x42\x10\xe0\xed\x56\xbd\xaa\x98\x1f\xe6\x39\xd5\xcf\xca\x52\xaf\xd0\x51\x30\xdf\x1e\x92\x20\xd3\x6e\x44\x6d\xbb\x9d\x38\xf9\xab\xf9\x2a\x0a\x4d\x7d\xf3\xbd\x4c\x18\xff\x60\x7a\xc7\x90\xd2\x58\x4c\x8c\x47\x47\x81\x77\x27\xb7\x62\xbb\x45\xbf\x39\x0b\xfe\x4a\xc0\x2b\x67\xc1\x7f\x13\x18\x62\x14\x3b\x1f\x3b\xb1\xf3\xea\x59\xfb\x56\x94\x9a\xf5\x9b\x63\x06\x58\xec\x95\x64\xc1\x2a\x76\x67\x8f\xec\x37\xa1\x1c\x33\x55\xa9\xa0\xb9\x59\x52\xcd\x66\xd8\x36\x9a\x0b\xbe\x6c\x22\x82\x42\x51\x53\x6d\x54\xbb\xff\x07\xc1\x97\x68\x23\xa9\x1d\x7c\xb2\x44\x3f\x08\x78\x2d\x30\xcc\xe5\xc3\x42\x3e\x1b\x66\x13\x83\xfa\xb6\x51\x5c\x21\xfb\x56\xa8\x78\x5c\x6f\x05\xcc\x9a\x62\x5c\xe1\xcd\xae\x70\x54\xcf\xe6\xfb\x3e\xec\xd9\x07\x39\x82\xf7\x42\xd6\x67\x69\xb8\x60\x81\x75\x63\x95\x69\x05\x88\xb0\xc0\x8a\xeb\xe9\xdf\xe7\xf6\x47\x61\x99\x5e\xd8\x24\x09\x0b\xc3\x0f\x32\x69\x25\x9e\xa2\xed\xe5\x76\xde\xed\x8e\xba\xc5\x4a\x73\x65\xd8\x19\x17\x1d\x84\x42\xde\x6e\x87\x78\x6c\xbd\x0c\xfd\xbb\x95\x98\x5b\xcc\xb2\x70\xc7\x78\x37\x82\x25\x57\x7b\xac\x23\x60\xc1\xd5\x0e\xeb\x08\xb8\xe7\xd1\x64\x36\x85\x5b\x7e\xbf\xdd\x6e\x76\x70\xc3\xef\x6d\xfb\x1d\xba\xc7\xf0\xc0\xdb\xf7\xdb\x6d\xdb\x77\x5e\x7c\xf3\xa3\x8e\xa2\x74\x25\xbf\xdd\x57\xe4\x06\x6f\xaa\x5d\x31\x7c\x4a\x72\x34\x62\x61\x2d\xab\x31\xdb\x72\xae\xe7\xa5\x8e\xe4\xfd\x64\x39\x45\xc9\xb3\xac\x13\x39\x31\x3c\x08\xbc\xcb\x69\xfa\xfd\x78\x6a\x8d\x75\x42\x54\x6a\x9d\x5e\xcf\x4f\x42\xdb\x46\x11\x47\x46\x14\xa7\x1c\xa6\xa0\x48\x89\x55\x5d\x16\x5d\xd0\x7e\x7f\x4c\xfb\x7d\x46\xfb\x7d\x3b\xc2\x10\x38\xf7\x93\x85\x6e\x3b\x70\x62\x88\xaa\xad\x2b\x1c\x53\x9e\x21\x65\xaf\xbf\x3b\x79\x18\xa3\x7b\x9e\xd6\x8d\xdc\xb5\x77\xb6\x35\x12\x70\x0f\x33\xb0\xae\xe7\x26\xba\x48\xac\xc3\x6b\xc3\x92\xbb\xb0\xd0\x50\x58\x02\x01\x13\xae\x38\xa9\xaa\x9a\xfd\x65\xbb\xb5\x2a\x92\x18\x8b\x73\x14\xf2\x47\x99\x79\xbb\xb5\x3e\x2a\xb5\x9d\xfa\xe7\xb0\xb0\x4f\xd4\xbc\x74\x32\x7e\x23\xd0\xbd\x3c\xe2\x2f\xcc\xe9\x91\x2f\x27\x31\x4f\x60\x21\x11\x47\x04\x26\xc2\xf7\x2d\xd7\xd8\x4d\x6f\xd1\x93\xaa\x3c\x58\x6b\x20\xdc\x1e\xb2\xf6\x25\x9a\x08\x16\x08\xf9\xfc\xf6\x74\x81\xcf\xdd\xa3\xb9\x8a\xa0\xe7\xc8\xe7\x2b\x14\xe0\x67\x19\xee\x2c\x2e\x6e\x8f\xd7\x9a\x72\xff\x79\xa6\x4b\xa5\xfc\x0e\x25\xca\x80\x44\x3c\xb4\xfe\x82\x7c\x9e\x3e\x33\xc1\x3b\xe7\x48\xa8\xb9\x85\xcd\x0d\x8b\x21\x66\x0b\x08\x99\x0f\x82\xa5\x70\xcf\x64\xe6\xef\x50\x8c\x77\xf8\x6c\x79\x9e\x9e\xe1\x37\x48\xc0\xb2\xd3\x51\x7c\xd6\x15\xaf\x6c\x5d\xfe\x19\xfd\xa0\x00\xc7\x15\x54\x23\x5e\x58\x70\x8f\x31\xdb\xf3\x79\xae\x0d\x8b\x9a\x24\x26\xf7\xe8\xd4\x7c\xfb\xf6\x30\x5a\xd5\x3d\xe8\x2c\x3a\x14\xac\x7e\x26\x4e\x3f\x7f\x14\x78\xa7\xe2\xbc\x6d\xb7\xc7\x36\x92\xda\x3a\x27\x15\xfb\xd4\x7b\x98\x61\x90\x3b\x67\xfc\xa5\x3d\x13\x3f\xb9\x67\xe2\x71\xc1\xcf\x07\x63\xd9\x9b\x5b\x94\x80\xd9\x1b\x10\xe4\x5a\x89\x6d\xce\xa3\xfd\xaf\x98\x99\x04\xcc\x9e\xda\x6e\x26\x97\x5c\x41\x35\xf5\x3f\xa3\x9b\x36\xe7\x87\xaa\xef\xe3\x8f\xe8\xb6\x30\xd6\xfc\x88\x6e\x30\x66\x32\xa5\x1e\xc0\x51\xb5\x73\xbf\xdd\xce\xd1\x3d\x08\xb8\x9d\x88\xa9\xaa\xb3\xba\x98\x57\x90\x6c\xb7\xe8\xaa\x66\xd5\x71\x8f\xf5\x3e\x7f\xcf\xaf\x26\x0b\x31\x85\x17\xbc\xdd\x7e\x6f\xdb\xa8\xf4\x28\xf7\x5e\x79\x58\xcb\x95\xb6\xf4\x1b\x86\x97\xbc\xc0\x22\x27\xb2\xc9\x3b\xa1\x8c\x85\xe5\x4e\xb9\x11\x72\x01\xe4\xd3\x63\x99\x78\xaf\x02\x60\xa1\x70\x6c\x56\x18\x4f\x56\x62\xca\xf9\x8c\xad\x54\xc7\xaf\xf0\x76\xfb\x03\xba\x7a\x02\xc6\xcf\x24\x70\xbf\x9c\xcc\xa6\xfc\x5e\x21\xdc\xef\x3a\xb1\xf3\x93\x42\xba\xe8\xbe\xcd\x6f\x55\xd4\x2d\x85\x88\x61\x06\x9b\x03\x02\x94\x65\xbb\x2a\x9e\xae\xef\xd1\x5b\x27\x5e\xe4\xab\xa2\xad\xe3\x66\xb0\x59\x24\xf1\x1d\x7b\x21\x20\x5e\xb0\x97\x12\xb5\x59\x07\x75\x5a\xb2\xdf\x72\xc2\xaf\x9a\x3e\xca\x4d\x22\x1b\x7c\x0f\x33\x89\x85\xe1\x2d\x9a\x99\x04\xd5\x83\x4b\x21\x1b\xd1\xf8\x76\x57\xfd\xd0\x7e\x01\x33\x85\xad\x93\xed\xf6\xaa\x10\xd2\x72\x3e\x17\x6a\xed\x8a\x84\xb9\xa8\x96\x6a\x3a\x74\x04\x17\x46\xc3\x7a\x48\x39\x9a\xaf\xb5\x87\x9a\xc4\xa7\x13\x02\x74\xba\x27\x13\x46\xb8\xcd\x75\xc5\xea\x2b\x3e\xf8\xac\x63\x53\xd5\xab\xbb\xda\xcb\xa5\xa7\x59\x57\xb0\xc3\xba\x5b\x4d\x84\xc4\x2f\x72\xa1\x5f\x8c\xdf\xb3\x97\x72\x1e\x5e\xe8\x59\x5e\x08\x78\x99\xbb\x9d\x69\xf4\xd9\x53\x37\x94\xcb\xdd\xe6\x19\x6b\xf3\xfd\x10\xb1\xb4\xcf\x08\xed\xab\xcb\x49\xd2\xed\xab\x8b\x42\xd2\xf5\x60\xef\x46\xae\x30\xb6\xcd\xad\xd4\x49\xaf\xcb\x48\xaf\x0b\xa4\xd7\x63\xa4\x57\xa8\x9f\x16\xee\xf8\x72\xff\xdd\xc4\xa3\x8c\x78\x79\x58\xb7\xee\x80\x75\x07\xd0\x1d\xb2\xc2\x86\x55\x87\x99\x54\x26\x0e\xf5\x00\xb5\xd5\x00\x70\xfb\xd6\x28\xc6\x13\x78\x35\x0c\x5c\xc5\xd9\x5f\x35\x88\x6d\xa9\x0e\xdd\xeb\x1e\x5e\x5e\x1d\x28\x11\x55\x2f\x98\x72\x45\xe8\xe1\x60\xef\x82\x69\xe0\x1a\x67\x9d\xc4\x44\xaa\xf4\xa8\xbe\x60\xea\xf6\xf5\xfd\x92\xba\x4e\x5a\xe6\xd7\x49\x8b\xfc\x3a\x69\x55\x5e\x01\xdd\x15\x1a\xcb\xf7\xe6\xda\xe6\x36\xf7\xfe\x79\xc3\xa3\xda\xed\xca\x23\x8f\xca\xdb\x95\x6b\x1e\x39\x92\x42\x81\x87\xfa\x0d\xce\x25\x8f\x9c\xd7\xd1\x22\x88\x82\xec\x11\x3e\xf3\x1b\x78\xc7\xaf\x1d\xff\x26\x85\x8f\xfc\x5a\x79\x91\xbb\xe2\xd7\x9a\x7b\x87\x37\xfc\xda\x09\xe3\x5b\x78\xcf\xaf\x9d\xef\xdf\x52\x78\xc1\x83\xb1\x75\x7d\x63\xb1\x82\x5c\x7d\xa9\x52\x42\x99\x52\x21\x4a\x3f\xa9\xd4\xd8\xa4\x1a\x12\xb6\xf4\xef\xf3\x01\xed\xc7\x90\x06\x5f\x9d\x13\x7d\xdb\x90\xc8\xa9\x1b\x3e\x4b\x4e\xb3\x53\x02\x21\x47\xe4\xfc\x3c\xc5\xa7\x04\xd6\x3c\xbc\xb8\x20\x30\xe3\xb4\xab\x58\xe2\x8f\xca\xc1\x5d\x0f\x9f\xaa\x87\xc1\x00\x33\x17\xe6\xdc\x95\xb3\x79\xee\x6e\xb7\xae\x8e\xcb\x41\x9e\x8b\x73\x77\x4c\x98\xab\x50\x3c\x12\xfc\x1d\x12\x18\xb7\xb9\xd8\x6e\x05\xe7\xfc\x72\x8c\x02\xae\x9c\xb7\x11\xe6\x42\xc4\x43\xcc\x50\xc4\xaf\xd0\x1b\x24\xf0\xf3\xf7\x18\xc4\x33\x14\x73\xd5\x80\x24\xf1\x88\x24\xfd\x4e\x4f\x21\x7e\xc6\x29\x06\x24\x3a\x3c\xea\xac\x2f\x38\x19\xcf\x9e\xc7\x6c\xf6\x4c\xe6\x23\xa7\x6b\x8c\x9f\xc5\x17\x9c\xca\xbc\x9d\x0e\xc4\xcf\x65\x5e\x95\x2f\x94\x8d\x99\x56\x4c\x41\x14\x70\x24\x9e\xc5\xa7\x04\xab\xd2\x99\xcc\xc9\xd7\x98\xc9\x5e\xa9\x94\x75\xf5\x13\x77\x31\x3e\xcb\x2e\xf8\xf0\xcc\x9f\xcc\x3b\x9d\x29\x97\x54\x66\x00\xc1\x73\x4e\xfb\x1e\x64\xa7\x7c\x88\xcf\x54\xec\x70\x1e\x9d\x9f\x67\xdb\x00\xd2\x0e\xcf\xce\xd2\x0b\xb7\x9a\x3f\x82\x48\xe7\x4f\x55\xfe\x5c\x7e\x34\x39\x3d\x9d\x4f\xb7\x9c\xd0\xe1\xb3\x25\xf8\xbb\x62\xb5\x7e\xd9\x5b\xad\x62\x69\x62\xb5\x34\x81\x5c\x1a\x9f\xc7\x72\x69\x52\x1e\x9c\x0e\x20\xe4\x89\x5a\x2d\x31\x09\x4f\x4f\xa7\x30\xe3\x84\x0e\xec\xb5\x8e\xef\x74\x71\xc1\x07\xaa\x3f\x33\xd9\x83\x67\xb3\x8e\x8a\xd6\x1b\x9e\x9e\x9a\xce\xe8\xce\xcf\x6c\x59\xf3\xa9\x5a\xf5\xd9\xc5\x05\x3f\x4d\xcb\x81\x44\xaa\x60\xb4\x5f\x30\x58\x20\x57\x05\x0d\x98\x71\x72\xea\x17\x11\x24\x66\x9c\xf3\x38\xa7\x63\xa3\xf1\x5b\xff\x2d\x5b\x8f\x4f\x2f\xd9\xe5\x49\xd4\xe1\x66\x56\x67\xa7\xdc\x37\x46\x17\x68\xad\xbc\xf7\xe1\x67\x91\x9a\xf2\xd9\x69\x86\xcb\x89\xf8\xb6\x16\xf4\xb9\x3b\x3d\x3f\xa7\xbd\xad\x98\xd0\xe9\xf9\x39\xf1\xb6\x62\x42\xa6\xe7\xe7\xc3\xad\x98\xb8\xd3\xb2\xcc\xdb\xb2\xcc\x44\xce\xbd\xa8\x7c\x7b\xbd\xff\x0d\xc4\xc5\xc5\xd0\xa6\xfd\x7e\x25\xd3\xf7\x47\x33\xc9\x07\xe2\xe5\x4f\xb4\xb7\x57\xf0\x55\xa5\xb7\xf2\xc0\xf5\x29\x0c\x2b\x83\xf9\x6d\xef\x33\xed\x42\xaf\xf2\x39\x67\xe7\x37\x77\xa8\x6a\xe1\xf0\xe4\x55\x91\xb9\x27\x2a\xea\xf8\xa6\xae\xc9\x1b\xf0\x05\xea\x24\x38\x97\x14\x89\xc9\xcb\xa9\xa1\xd7\x1f\x72\x7a\x5d\x09\x90\xdb\x39\x6f\xc3\xc5\xe4\xc5\xd4\xb9\xbe\x01\x9f\x07\x1d\x31\xf9\x34\x85\x94\xe7\x4e\x3d\x7c\xf0\x3b\xa5\x7a\x64\x34\x4e\x59\xea\x18\x39\x25\xaa\x74\xe1\x9f\x50\x11\x6d\x07\xe2\x5c\x65\xb1\xe8\x86\xff\xa5\x6e\xe4\x62\xce\xb4\xe8\x4a\xc8\x7d\xdd\x95\x35\x8f\x50\x27\x90\xb0\xdc\x3d\x9b\x9d\x67\x67\xb3\x4e\x07\xa7\x93\xb0\x33\x9b\xf2\xf5\x24\x1e\xcf\x58\x76\x3a\x3b\x25\xd3\x9d\x6c\x46\xf2\xb9\x9a\x25\x5b\xd7\x30\xfd\x8d\xa6\xff\xb7\xdb\xbd\x74\x15\x11\xd6\x30\x00\xdb\xed\xba\xe9\xae\x56\x07\x8d\xd5\x19\x0b\xd2\xff\x46\xc5\xb1\x84\x1a\xc9\xde\xe6\x37\x8a\xfc\x94\x94\x43\x21\xb6\xfd\x11\x7e\xe5\xe8\xa6\x49\x9f\xc3\xc4\x99\xbe\xd1\x15\x7e\x46\x0b\xa5\xd8\x51\x8d\x3a\xfb\xb9\xb2\x1d\x7e\xe2\x2b\xf4\x19\xc3\x5f\xb8\x7b\xf6\x53\x2e\x78\xfd\xcb\x19\x46\x3f\xf2\x9f\x26\x7f\xe9\x74\xa6\x38\x88\x5a\x37\xdb\x6d\x8a\x6e\xe0\x47\xf8\x3c\xf9\x71\x8a\x4f\xe2\xed\x16\xfd\x5a\x23\xa7\x6f\xf0\x4e\xf6\xe9\x3b\x1d\x5e\x57\x87\xc3\x45\x54\xd2\xf6\xd5\x80\x71\x4a\x3f\x31\xca\x86\x27\xdf\xe5\x4f\xc8\x05\x4a\x7a\x83\xde\xb0\xeb\xf5\x86\x18\xca\x74\x52\xa6\x8f\x30\xb4\xbf\x73\x6e\xf3\x02\xd8\xb6\xcb\x37\x82\xb7\xdb\xb0\x16\xbb\x76\x63\x6a\xd8\x13\xf7\xfe\x5c\x09\x72\x2c\x20\x93\xc7\x5e\x9e\x37\x2d\x3b\x50\xda\x0f\x5f\x5b\x60\x27\x69\x7b\x4d\x8c\xd5\x67\x3f\x9f\xf6\xfa\xda\xe5\x52\x59\x75\x2f\xae\x2f\x63\x6f\xf8\x7d\x79\xd1\xa7\xd1\x65\x86\xc1\xd5\x2e\xea\x26\x2f\xa7\x3c\xdb\xc1\xe3\x81\xc4\xd0\x54\xff\x08\x56\x4e\x1d\x58\x18\x66\x48\xc8\x06\xcb\x94\x9c\xaa\x99\xbc\x9c\x42\xc0\xe7\x46\x45\x2b\x90\xb8\x34\xb8\x88\xf6\x0f\x49\x79\x19\xaf\x0e\x34\x4a\x2a\x71\x28\xc6\xd1\x69\xc0\x96\x92\x47\x3b\x2c\x57\xf2\xe4\xaa\xcb\x2f\xa6\x5c\xc7\x88\x9a\x7c\x9a\xf2\xa0\x18\x46\xb2\x83\xc0\xb6\xd1\x0f\xe8\x66\x4f\xdc\x75\x1d\x2a\xd9\xd6\x63\x45\x62\x76\x7d\x53\x24\x1d\xc9\x59\x95\xa3\x5d\xc7\x16\xc6\xb0\xb7\xf0\xb7\x07\x0b\x5f\x9c\x88\x6f\xf4\xdc\x11\x10\x78\xe2\x4e\xf3\xb5\x54\x3e\x44\xf7\xd7\xfe\x48\x19\x95\xf7\x75\x94\x11\xaf\x21\xec\xbe\xc9\x4a\xab\x77\x18\x2a\x86\x86\x41\x48\x99\x41\x2b\x2a\x12\x87\x44\x34\x12\xe8\x17\xad\xff\x99\x2a\x5b\xd5\x2a\xf3\xbe\x75\x69\xd3\x38\xbe\x45\xa6\xae\xde\x7e\x5d\xb8\xe8\xc2\x3f\x5c\xf2\xe2\xe2\xc2\x55\xa5\x95\x77\x8d\xe6\xe2\xbf\x1c\x2d\x6e\x10\x55\x51\xde\xeb\x3d\x59\x7e\x78\x50\x5e\xe3\x41\x68\x3e\xea\xff\x54\x2c\x1c\xbc\x55\xe2\xf7\x23\x27\xbc\x29\xdf\xfe\x0a\x57\xf2\xc9\xa5\x78\x5d\xbd\x10\x9f\x48\x5e\x2e\xaf\xfc\x1f\x2f\xb5\xbf\x60\x95\x42\x72\xc2\xbe\x3f\xda\xd4\x3f\x5e\xea\x70\x91\xf6\x8a\xfd\x76\xbc\x58\x6d\x6d\x2a\xc5\xe4\xa2\xbc\x3a\x28\xb6\xc3\x27\xb7\x68\x1f\x02\xc2\x2d\xaa\x43\xad\xb4\x76\x70\x8d\x0a\x94\x72\x86\x5f\xe5\x84\xf8\x0d\x24\x05\x27\xc4\x1f\xab\x3c\x6e\xc1\xd3\x1a\x97\xf0\x47\x79\x58\xcd\xab\x1a\x5e\x54\x71\xa1\x55\xcf\x8d\x95\x00\x9d\x39\x27\x99\xdb\x71\xf6\x0e\xb4\xf3\x0b\xa5\x9d\x9a\x56\x62\x11\xae\xb5\xa7\x02\x56\xc6\xb9\x5e\x98\xba\x72\x94\x43\x95\x49\xf7\x7a\xd8\x21\x6f\xa3\x76\x8d\xd9\xdb\x6e\xdb\x25\xb3\xa7\x9c\xff\x18\xaf\x3f\xd6\xeb\x42\x1f\xaf\xa2\x9a\xa7\x1e\x8d\xe8\x5e\xa7\xbc\x2e\xf4\xbb\xa0\xa2\xeb\x05\x6a\x6f\x95\xc9\xf9\xb3\xd9\x07\x95\x17\xaf\xa7\x65\xff\x95\xc0\xbb\x67\xb3\xf3\xd1\x19\x46\x09\x8f\x26\x73\xe5\x71\x68\x8a\xc7\x28\x40\x49\x75\xc5\xd4\x62\xd5\xd3\x52\x75\x7f\xc5\xd6\xca\x77\x7d\xa9\x3a\xfd\xe2\x9b\x1f\x59\x08\x5a\xf5\x8d\xad\x41\xe9\xbd\x31\x1f\xe4\x8a\xb3\xb4\xe6\x2e\xb9\x16\x2c\x55\xa6\x36\xaa\xb3\xba\xb9\xf6\x6c\xe2\x47\xf3\xf8\xee\x48\xd8\xcb\x32\x88\x8f\xf6\x8c\x6a\xe5\x52\xc4\x52\xa9\x79\x6c\x59\x4c\x80\x85\xaf\x2d\x40\x9d\x4e\xd2\x89\x70\x21\x63\x42\x5d\x0f\x17\x8a\xc2\xbd\xa7\x1c\x9f\x94\x0e\x86\xf7\xa3\x66\xad\x53\x91\xbc\xb8\x15\x51\xb6\xdd\x5a\x56\x25\x66\x16\xe9\x1d\x35\x9c\x1c\x1c\xd1\xc6\xce\x55\xd8\x12\xa5\xc2\x26\x9c\xeb\xac\xd1\x9a\x5e\xc5\xc0\x3e\x70\x32\x01\x2d\x65\x1a\xd7\x4a\xc4\xaf\xeb\x20\x11\xf3\x8a\x2a\x5b\x2d\xa8\x0e\xe9\x1d\x55\x88\xde\x8f\x50\x3c\x1c\xe4\x5b\x7e\xa4\x05\x25\x4a\xb0\xf1\xa4\xf9\x55\xe4\xe8\x85\xd8\x6e\x51\xfe\xc8\x83\xf1\x66\xc7\x92\xe2\xc3\x66\x87\x4f\xac\x6b\x8b\x73\x51\xfa\x4f\xda\x6e\x95\x90\x34\xdb\x6e\x7d\x94\x81\xc8\xbd\x98\xc7\xca\xfd\x8e\x31\xc3\xee\x8d\x18\xe9\x8d\xe0\xc0\xda\xb7\x72\x94\x1b\x9c\x4c\x6a\x57\x90\xa4\xef\xe2\x5a\xe4\x03\xf9\xf4\xa4\xf9\xf6\xc3\xa7\xaa\xf5\xb6\xd6\x4b\x1e\x62\x33\x08\x88\x9b\x1c\xce\x04\xcd\x06\xd4\x8d\x46\xde\xb1\x6d\x1b\x6b\xea\x78\x1c\xb0\x08\x23\xb3\x81\x1d\xab\xa3\x49\xf8\x34\x8b\x13\xc1\x93\x43\x33\xf0\xd2\xe5\x52\xff\xa8\x43\xa9\x5e\xff\x68\x20\x2a\xa5\x63\x5c\xf7\x15\xea\x62\x45\x65\x9b\x5c\x6f\x94\x07\x95\xa6\x48\xe8\xed\xd2\x40\x40\x4c\xa2\xe9\x76\x2b\xf6\xa3\xad\x04\x13\xb9\x75\xa7\xb5\x58\x47\x5a\xfe\xa7\x16\x2d\x0f\x54\x45\xfa\x35\x15\xf1\x7c\xef\x28\x8d\xef\x93\x0c\x65\xce\x7b\xc8\x6f\x2a\xab\x9a\x6c\x4a\xfb\x79\x87\x41\xa0\x6e\x17\x23\xab\xfc\xa2\x62\x88\x77\xbb\xac\xdb\x35\x62\x48\x25\x62\x54\x0d\x75\xeb\x0d\x1d\x88\x05\x4d\xab\xca\xdb\x6e\xcf\xc5\xa8\x67\x3a\xd0\xc9\x9c\x57\xcf\xda\x72\x33\x78\x18\x4d\xa6\x8e\xd2\x79\x53\xc0\xb0\xe8\xd9\x51\x35\xb8\x24\xe7\x25\x6a\xa4\x8c\x52\xca\xdc\x10\xea\x31\x42\x3d\x23\x1c\x2d\xfb\xd9\xfb\xea\x09\x51\xea\x72\x4a\xb2\x58\x4e\x85\x4c\xab\x4e\x82\xc2\x7f\x65\xe5\xfd\x7f\x70\x12\xe8\x91\x49\xd0\x5a\x77\xf5\x59\x38\xae\x89\xf7\x67\xa6\xc1\xfb\x07\x7b\xaa\x4c\xf9\xad\xff\x87\xb8\x7f\xdf\x6f\x1b\x47\xf2\x07\xd0\xff\xf5\x14\x12\x4f\x2f\x17\x88\x60\x9a\x94\xe4\x1b\x1d\x58\xe3\x76\x9c\x4c\x66\x12\x3b\x1b\xbb\xbb\x67\x56\xa3\x71\xd3\x22\x64\x71\x42\x91\x1a\x12\xb2\xe3\x96\x78\x9e\xfd\x7c\x70\x25\x48\x51\xbe\xf4\xf4\xfe\x4e\xef\x4e\x2c\x82\x20\xae\x85\x42\xa1\x50\xf5\x2d\x6d\x66\x67\xa1\x08\x77\xdc\x56\xd2\x8e\x92\xd1\xd8\xb6\xc5\x89\xcb\x83\xa3\x64\x5c\x39\x95\x47\xb8\xe3\x71\xe8\x70\xdd\xc9\xc8\xec\xd0\x13\x36\x7b\x9b\x7d\x7a\xc6\x82\x49\xcf\x51\x52\x4e\x4f\xbd\xd3\x07\xaf\xec\x34\x5f\xdc\x1d\xb7\xc5\xfb\x6d\x55\xbb\xea\xb0\xb4\xaa\x7a\x62\xa3\xb3\x49\xb5\xb3\x7f\x6c\x3f\x45\xa3\xb6\x77\xf6\xf0\x95\x9d\x75\x55\x20\x48\x49\x82\xc2\xfc\x91\xd1\xa0\x49\xa3\x66\x97\x1a\x0c\x24\xff\x03\x8a\x3c\x7a\x41\x7b\xf7\x7a\xa2\xbd\xca\x8f\x57\xa3\xb5\xd6\x03\xd1\xf2\x5b\x03\xce\x73\xbd\x32\x10\x6d\xab\x44\xb2\xec\x70\xcf\x8f\xea\x15\xb2\x11\x80\x88\x08\x60\x4b\xdd\xd3\x2c\x9d\x6f\x1c\x28\x33\x15\x36\x58\x60\x99\x4e\x9b\x36\x2a\x36\x0a\x43\xf6\x8f\x2f\x04\xc4\xc5\xa6\x9d\xf3\x1c\x2f\xb6\x18\x81\xdf\x97\x46\xe0\x73\x19\x87\x38\x06\x33\xae\x57\xb8\xe7\x01\x85\x29\x98\xa3\x45\xb3\xf1\x30\x37\xdb\x16\xd7\xac\xb7\xeb\xf5\x14\x0b\x07\x14\x1e\xd6\x1f\x72\x28\xf8\xa5\xf0\x82\x04\x19\x0e\xc0\x4c\xbb\x9b\x1f\x67\x27\x77\xc7\x77\xdd\x2e\xcc\xc1\x12\xdd\xa1\xfb\xe1\x1c\xcc\x78\x48\x63\xe8\xb3\xbf\x32\xd0\x14\xb7\x09\xc0\x32\x92\xf5\x8c\xc9\xd8\xbc\xac\xe3\x0e\x98\xe0\xb0\x6a\x75\x6e\x96\x15\x81\x10\xcd\xd1\x68\x22\x4d\xa0\xee\xc6\x8c\xb6\xfc\x89\x32\x46\x57\xd7\xee\xb2\x31\xf8\x0e\x2d\x25\xc1\xd4\xaf\xcf\xe4\xb5\xd8\x9e\xe7\xb3\x7f\xf9\x85\x97\x8c\x5c\x55\x06\xb7\x15\x57\x5a\x8c\xb0\xf6\xdd\x57\x2c\x04\x85\x69\x9b\xe0\xd1\xd8\x91\x76\xbb\x8c\xd5\x75\x12\xdb\xf6\x76\x47\x9e\x4e\x04\x1e\xda\x71\xe1\x5b\xd7\x58\x1b\x20\x5a\xaf\x15\x0f\x4f\x4c\xf2\x79\xc2\xfe\x37\x1a\x26\xcd\xe1\xeb\xd7\x6b\xd7\x7f\xc9\x2a\x92\x28\xb6\x6a\x15\xed\x7b\x4f\x6f\x6f\x57\x46\xab\x44\x58\x4a\x9f\x47\xd5\xe6\x65\xca\x41\x3c\xf0\x0f\xb8\x90\xb7\xff\xb2\x68\x84\xfd\xbe\x58\x8b\x87\x7b\x5a\xea\xd1\xd0\xe2\x15\xf1\xe7\xb0\x0f\x81\x58\x06\xaa\x0d\x35\xdf\x1c\xa1\xca\xa3\x12\x35\x9c\x3f\x44\xd8\x95\xbf\xbe\x61\x5a\x54\x83\x18\x0a\xe7\x01\xf9\x11\xa2\xf2\xd7\x37\x65\x99\x79\x13\x75\xbb\x92\xa8\x3a\x64\xbd\xce\x4e\xb0\x8a\xe7\x3c\x04\xaa\x26\xb9\x58\x12\xe0\xf1\x68\x07\x2e\x12\x60\x42\x18\xd3\x61\xe6\x97\x76\x0b\x74\x48\x46\xd9\xd8\x1f\x65\x88\xfd\x1d\x33\x79\xa0\x0c\xdd\x16\x39\xa7\x6a\x7a\x70\x24\x4e\xa2\x28\xd3\xa8\x44\x99\x11\xe4\x2d\x33\x42\xe1\x71\xba\x96\x40\xc4\x9c\x7d\x1f\xf6\xfd\xc3\x3e\x3a\xdc\xf3\x0f\xf7\x4a\xf1\x6d\xff\x35\x52\x95\x44\x31\x1f\x8d\xb9\xbb\x96\x49\x98\xdc\x03\xb3\x83\x15\xe2\x6f\x23\x91\x56\xed\xbf\x0d\x20\x6e\x89\x5c\x27\xcd\x65\xcd\xd3\x1e\xb2\x7c\x52\x23\x47\xd5\x27\x49\x4a\xca\x7b\x73\x7f\xf0\xfa\x7e\xc8\x3b\x60\x23\xcc\xfb\x68\x5c\x75\x5b\xc3\x9d\x4e\xaa\x96\xa5\xf1\xa2\x69\x69\x06\x65\xaf\x53\xb3\xd7\x8d\x06\xec\x42\x10\x0f\xa0\x06\x4c\xdf\xb6\x42\xb5\xf3\xae\x18\x1b\x0e\x3b\xac\xad\x7f\x63\x9c\xef\x78\x02\xd9\x7a\x63\x6b\xb7\x6d\x10\x6b\x8f\x55\x10\xa3\x04\x54\x75\x81\x10\xc5\x6f\x5d\x9e\x29\xef\xc6\xf0\x38\x3e\xc1\xee\x71\xbc\xb3\x03\xa3\x29\x88\xf9\xf1\xcd\xb6\xe9\x28\x1e\x9b\x9e\xc4\x31\x6b\x8f\xf8\xbd\xe3\xd5\x27\x45\xe9\x70\x24\x4a\xbe\x64\xa8\x25\xd7\x78\xad\xdc\xea\x6d\x91\x5b\xe7\xc1\xa2\x2a\xb4\x6e\x31\xf2\xff\x1d\xf2\xc1\xfe\x6b\x24\xd6\x3d\xd9\xc0\x2b\xde\xc0\xcd\x68\x2f\xfa\x22\x8c\x00\x1d\xb2\xaf\x23\x98\x93\x36\xe0\x21\xd0\xc4\x5c\xaf\x0a\x04\xe9\xb4\xd1\xea\xbf\xd9\x93\x89\x03\x0e\x34\xc1\x24\xd4\xa4\x03\x08\xb4\xa7\x13\x48\x2a\x63\x43\x4c\x0c\x06\x65\x5f\x8e\x29\x4a\xc4\x88\x89\x8d\xb0\x86\xbf\xb1\xff\x2a\x61\x77\xdb\x84\x9a\x9e\xa0\x95\x89\x6d\x74\x9c\x78\x81\x58\x5b\x99\x71\x7e\xed\x53\x9d\x74\xcf\x1f\x78\xc6\xa4\xbf\x4a\x88\x7d\xba\x13\x4d\xed\xff\x4f\x9a\xee\x3d\xd3\xf4\x97\xc8\xb3\xaa\xe9\x07\x5e\x2d\x40\x72\x7f\x4f\x6d\xa2\x5c\x21\x34\x1a\x8b\xfb\x5d\xa3\x7f\x0d\xe1\xec\x34\x7c\x66\x56\xa5\x56\x61\xac\xd5\xa4\xc0\x48\x81\xe1\xc4\x20\x02\x20\x0a\xb7\x87\x68\x0a\x28\x36\xdc\x2c\x32\x9f\x22\x1d\xb1\x35\x87\x55\xe4\x60\x75\xa1\x57\x5e\x0c\xc7\x58\x44\x71\x43\x4b\xc6\x12\xd9\x8f\x09\x4e\xc1\x72\x27\x86\x28\x34\x2c\x5a\x26\x10\xcd\xb0\x7b\x3c\x7b\x3b\x39\x9e\x75\xbb\x30\x1c\xcd\xc6\xb8\x0c\x12\x2e\xd6\x86\x06\x0a\xeb\xce\xa0\xcf\xaf\xc1\xe2\xee\x6c\x6c\x20\xb1\x8b\xad\x54\x59\x5e\x09\xce\x26\x63\x6d\x19\xf6\x4f\x1c\x46\x82\xcd\xcb\xc1\x6b\xc4\x41\xc6\xeb\xfa\x5b\xa8\x2a\x4f\xe7\x35\x9a\xda\xe6\x91\xf3\x3b\xb8\xdd\x81\xf7\x1a\xa1\xd5\xab\x9d\x86\x84\x5f\x3f\x6f\x63\x46\x19\xf9\x78\xa8\x87\xfa\xe3\x8a\xac\x5a\x21\x9d\x80\xe7\x04\x25\x4a\xea\x86\xf5\x9d\xcc\xa1\x80\xeb\xb6\x6c\xa7\xdb\xbc\x88\x0c\xa9\x41\x61\xdf\x2a\xcf\xca\xea\x33\x92\x88\x09\x95\xed\x4b\xca\xfd\x02\xc6\xaf\xc6\xe6\x0e\x6a\x0a\x2e\xe1\xc9\x0f\x64\x8b\x44\x31\xdc\x4a\x8f\x67\xee\x3f\x2b\x1d\xbf\x0b\x28\xb1\xd0\x2a\x49\x1f\x36\xad\x39\xf8\xe5\x32\xcb\xc0\xd5\x78\xd7\xd1\x9c\x03\xaa\x6b\xc9\x99\xd7\xb0\x5d\xbd\x24\x36\xa6\x0a\x35\x01\x56\x98\x71\x97\x4f\xd3\x8f\x57\x97\x82\xfe\x3b\x18\x67\x50\x37\xc7\x78\xe1\x67\x82\xe7\xf7\xfd\xbd\xbe\x41\x2f\xaf\xd9\xc1\x39\x9d\x24\x12\x8f\xe1\x69\x96\x22\xb7\x1c\x01\x37\xab\xba\xcf\xcd\x29\x1c\x9a\xfe\xe5\xea\xf2\x02\xc0\xf5\xda\xeb\x60\xbc\xd1\x13\xf6\x52\x7a\x9d\x98\xad\xdf\x2c\x9c\x0b\x2b\xd0\xec\x2b\xfb\xd4\xdf\x10\xf4\x95\x94\x45\xf9\x79\x5b\x21\xdd\x25\xcb\xf9\x2d\x37\xe7\x50\x7b\xea\x7a\xad\xa3\xdd\x53\x38\xac\x8c\x29\x80\x32\xfe\x89\x80\xec\xae\x1a\x63\xd6\xe9\x6a\xbf\x79\x22\x15\x22\xea\x97\x2c\x9a\x47\x02\xb2\x0c\x65\xb5\xde\xb7\xb8\xd7\x53\xb6\x5e\x8b\x68\xec\x19\xa2\x88\x80\xbd\x01\x84\x26\x34\xeb\xc0\xdf\x1b\x94\x77\x33\x07\x07\x4d\xd5\x55\x8b\x65\x07\x9b\x12\x6a\x21\xc1\x54\x51\x61\xab\x32\x31\x5d\xcb\xea\x60\xeb\x63\x72\x1f\xc4\x51\xc8\x93\x2d\xdb\x16\x00\xf6\x80\x6e\x83\x3e\x17\x43\x9c\x18\xde\x3f\xad\x12\xd7\x98\x0c\x33\xe3\x85\x5f\x2d\x5b\x02\xa0\x97\xb0\xf6\x07\x87\xcf\x6a\x58\x95\x5d\xba\x85\x56\xb7\x51\x12\xfa\x04\x0c\x06\xe2\x08\x3a\x18\xf8\x83\x81\x41\xd6\x2f\xd9\x44\x0f\x8e\x24\x59\xbb\x7d\x53\x19\x3f\x0b\xf2\x8f\x52\x80\xe3\xfa\xf8\x4d\x63\x78\xae\xbe\x6c\x47\x6c\x9e\xf8\x7d\x0b\x88\x50\xa2\x2e\x44\x6a\x87\x81\x52\x7a\xeb\x98\xd2\xdb\x7a\xdd\xa1\x46\x34\x54\x4f\x44\x43\x05\x2a\x36\xa3\xa8\x46\xfb\x8b\x54\x42\xf2\x70\xe8\x2f\xee\xfb\x27\xe0\x87\x8e\x99\x70\x5f\xfd\xd0\x10\xef\x3b\x4a\xb6\xef\x28\xd9\x5e\xd9\x24\xab\xd8\xfa\x95\x70\xa8\xde\xa1\xdb\x3c\x09\xc2\x60\x36\x6b\x18\x0c\x94\xe0\xdd\x7f\xfe\x23\x7f\xa3\x45\x63\x30\xfa\x67\x1b\x8c\xdf\xc0\xdd\x96\x00\xf2\x57\x24\xbd\xb7\x0f\x6d\x9b\x82\x4c\xe1\xfb\x3f\x07\x4f\x5c\xc6\xa1\x00\x96\xd5\x15\x2e\xb1\x73\x0e\xec\x9c\xc0\x91\x37\x96\x20\xcf\xe5\xfd\xa2\x55\x48\xa9\xb6\x12\xd6\xcc\x3b\x7c\x19\x7c\xe1\x40\x01\x31\x0d\x0e\xaa\xda\x87\xc1\x11\x04\xd6\xe7\x60\x61\x55\x7d\x1d\xea\x6e\x4d\xa5\x25\x63\xed\xbc\xa7\xce\x6e\xae\xa1\x6e\x73\x2b\x6a\xd9\xaa\x09\xa0\x11\x9b\xe5\x8e\xd0\xf3\x84\x66\x8f\x72\x93\x43\xbc\x19\x10\x95\x3a\x2f\x76\x9c\x73\xee\xeb\x3e\x57\x86\x3f\x64\xe6\x84\x64\x5a\xfb\x5c\x6c\xa7\xae\x2f\x81\xaa\xf8\x6d\x01\xe7\x6b\x07\xbe\x37\x38\x40\x83\x03\x9f\xfd\x7b\xe4\x0f\xf8\x5d\xe4\xe1\xf6\x8b\x20\xbe\x78\x8e\x5c\x0d\xa2\x94\xff\x3b\xa3\x0a\x3d\x2b\x98\xa4\xf9\xcc\x38\x4a\x75\x40\x64\xdb\x07\x9e\x8b\x4d\x67\xe6\x08\x5c\x70\x2e\xec\x7c\x3e\xfd\xdb\xcd\xcf\xa7\x9f\x7e\x3a\x17\xce\x3b\xde\xae\x0b\x05\x00\x24\x6b\x33\x9d\x59\x68\xc5\xcb\x6b\x90\x10\x04\xb0\xd4\x5b\x8f\x5b\xa2\x92\x93\xa3\xc1\x91\xbb\xdf\xdb\xdf\x73\xf6\x7b\x83\xde\x9e\xb7\xb7\x3f\xd4\x01\xaa\x09\xec\xf2\xdf\x9f\x2e\x7a\x7e\x06\xc8\x8e\xd7\x4d\xd8\xbf\xf0\x4d\x02\x48\xd7\x83\xe6\x86\x8c\x8e\x5c\xff\x88\xf3\x91\xc3\xed\x1b\xbf\xf2\xcb\x0e\xf2\x28\xa9\xf6\x34\xb3\x6d\x6f\x37\x03\x2e\x3c\x31\x3b\xc0\xb2\xf9\xc6\xf9\xd1\x00\x6d\xd6\xfb\x0e\xee\x52\x68\xdb\x6e\x07\xd3\x21\x7d\xeb\x0e\x77\x08\xd8\xa1\xb0\x8c\xb1\x4d\xbb\x7a\x9c\x01\x7d\x43\x59\xab\x7d\x5a\x13\x24\x0e\x9f\x14\x24\x44\x8b\x69\xd0\xdc\x62\xae\xfd\x30\x9a\xcc\xf2\x35\x49\x65\x66\xe4\x75\xdd\x38\x1e\x01\x7c\x17\x78\x3b\x04\xc2\xdd\x5e\xbd\x55\x7b\xcf\x50\x91\xa7\x05\x29\x59\xf9\xe4\xb6\x59\x22\xcc\x44\xcd\x6f\x54\x8c\x76\x60\xc6\x50\xf7\x76\xfb\xd5\x79\x94\xc1\xcf\xbd\xc3\x2d\xbb\xb2\x21\xc0\xa9\x7a\xe3\xdf\x1a\x4d\xa8\x00\x39\x39\x39\xc1\x2e\x1c\xf6\xbd\x1d\x83\x84\x4b\xf2\xea\x3a\x7b\xb2\x55\x9f\x2e\x3f\xf4\xce\xa1\xdf\xdf\x18\x84\xc6\xbd\xba\x32\x35\xe4\xfb\xa2\xde\x9e\x2d\x74\x2f\xc7\xa1\x9b\x81\xe6\x01\xdf\xbe\x99\xf2\x01\x3f\x3c\x34\x15\x1d\x20\xeb\x18\x01\xfc\x4b\x0a\xe0\x8f\x52\x70\x14\x23\x7a\x78\xe8\x1f\xf2\xab\xed\xc3\xa3\x97\x8e\xa8\x08\x81\xef\x13\x70\x78\x64\xaa\x8b\x0f\x8f\xfc\x43\xce\x61\x8e\xb6\x6c\x39\x26\xc5\xde\xe6\xb5\x42\x67\x8f\x8b\xb4\xce\xf3\xd4\x21\x52\xa0\x76\xba\x32\xd6\xfb\xc6\x69\x3c\xc6\xee\x71\xf0\x36\x3f\x86\xf1\x5b\x90\x60\x43\xcb\x36\x0a\xba\xdd\x31\x84\x43\x90\xe2\xf4\x0d\x88\x70\xbc\x9b\xc0\x37\x51\xd7\x43\x31\x4e\xa0\x9f\x76\x71\x72\xe2\x0e\x41\x84\x93\xdd\x18\xbe\x89\xfc\x44\xa3\x5f\x63\xce\xac\x86\xde\xae\xeb\xc7\x6f\xca\x25\x9a\xd6\x85\xfc\xa3\xed\x4a\x76\xd5\xd3\x68\xbe\x8c\x9f\xd4\x40\x49\x4d\xdd\x5e\x07\x67\x60\xd0\x3b\x1a\x1c\xed\x1f\xf4\x8e\xf6\xd0\x1e\x5c\xaf\x7b\x1d\x0d\x9c\xc0\xe5\x62\x39\x54\xac\xc8\xc6\x43\x7c\x97\xed\xdd\x5d\xc6\xb2\xf7\xf7\xf6\xfa\x7b\x76\x86\x52\xf9\x4b\x77\xcd\x5d\x47\x6f\xd2\x2e\x00\x32\xc3\xc9\xc9\x89\xb7\x0f\xdf\xa4\xdd\xe8\x8d\x4c\x4a\x44\x92\x30\xa4\x3c\x71\x2b\xab\x4f\xcb\xc4\x47\xcf\x18\x13\x94\xd3\x1a\xa7\x77\x9e\xdb\xb4\xec\x0d\x36\xae\x17\x99\xe7\x9e\xd7\x07\xf8\xf9\x73\x9a\x51\xd1\xc2\xe7\xdb\x57\x13\xdf\x3f\x7a\xe6\xb6\xbf\x52\x50\xa3\xc5\xa5\xd1\xe0\x5d\xb5\xef\xd4\x5b\xbb\x9d\x29\xd6\x2a\xc9\xa3\xbb\xc4\xe7\x5c\xb2\x89\xb9\x1d\x6d\x67\x6e\x6a\xad\xab\x2d\x5a\xf3\x97\xa7\xa9\xab\x47\x76\xbc\x83\x0e\xee\x08\x5a\x8e\x92\x19\x10\x49\xd0\xa4\xab\xca\x86\x56\xef\x39\x67\xc8\x72\x6b\xe6\x68\x86\x3b\x8a\x51\xf9\x40\xec\xbb\x3b\x09\xd8\x61\x7f\xe1\x1b\xc1\x44\xcf\x77\x7b\x9b\xd4\x53\xf2\x9b\xa3\x27\x99\x67\x73\x27\x75\x53\x37\x36\x32\x0d\x9e\xc9\x9a\xc8\x03\xc8\xed\x18\x52\x95\x5c\xce\x7e\x24\x7e\xec\x78\x3e\xa0\x3b\x11\xdc\xe5\x20\x93\xdd\x84\x77\xa4\x68\x62\x8a\x47\xcf\x1c\x61\x8c\x16\x65\xcb\x64\xd2\xbc\xcd\xb8\xc3\x72\x7f\xf1\x35\xe2\xa6\x00\xcc\xac\xd2\xcf\x8b\x34\x85\x87\xf2\xe6\xfb\xa8\xaa\x29\x3c\xe8\x2b\xcb\x31\x4f\xc6\x04\xeb\x49\x08\x47\xe1\x25\x17\x63\x19\x90\x85\x7b\xd9\x09\xf1\x7f\x52\x09\x7c\x17\x62\xea\x08\xf9\x0d\xcd\x70\x88\xa6\x38\x34\x0e\x05\x0b\x6c\x89\x77\x16\x66\xc7\x6e\x70\xb4\x0f\xc1\x14\x42\x34\xc7\x16\xfb\x98\x1d\x0a\xea\x81\x90\xd0\x7d\x83\xb5\x5a\x0a\x08\xea\x78\x22\xd8\x54\xae\x14\x7c\x06\x4c\x88\x46\xc2\x32\x21\x9b\x03\x0c\x28\x9e\x0f\x29\x6f\x27\x80\xfe\x04\x50\xd4\x87\xd0\x0c\x2f\xe0\xf2\x22\x07\x7d\x11\x0c\x62\xb0\xc7\xfe\xf2\x03\xdb\xe1\x21\xc6\x18\x64\x32\x74\xa0\xcc\xdd\x83\x70\xbd\xf6\x7a\xdc\x16\x5f\x1d\xca\x2e\x82\x0b\xed\x35\x3f\x38\x14\xdf\xe7\x0f\x11\x0f\x92\x67\x7e\xeb\x41\xb8\x9a\x04\x39\x69\xef\xef\xfb\xfc\xef\xd1\xa1\x9f\xe0\x1e\x8a\xf0\xe0\xa8\x75\x9b\x91\xe0\x5b\x8b\x27\x1f\x1c\x89\xd7\x9e\xe7\xf9\x09\x3e\x44\x11\xde\xdb\x93\xef\x43\x32\x0d\x96\x31\xf5\x45\xcd\x5d\x5a\x68\x3f\x1a\x14\x63\x2a\x3d\x78\x38\xe0\xa6\x8b\x42\x1d\xb4\xf2\x78\xf9\x36\x3c\x5e\x76\xbb\xec\x7c\x08\x72\x1c\x9b\x8d\x5a\x42\xf8\x76\x70\xb8\x5e\xe7\x27\x91\xd1\x1f\xb5\x00\x54\xa4\x43\x10\xf3\x40\xa4\xba\x5a\x7e\x4a\x0d\x81\xd5\x76\x53\xcf\x82\xeb\x35\xfb\xed\xde\xf2\x9f\x21\xb0\xba\xee\x77\xcf\x82\x70\x15\x36\x4c\x63\x7d\x13\x7e\xeb\xf1\x03\x48\x56\x09\x2f\x55\x71\x95\x0f\x6d\x1b\x2c\x86\x41\xf5\xf6\x45\x5c\xf9\x5f\x4e\x0d\x6d\xb5\xaf\xe8\xac\x83\x13\x90\x41\x38\x8c\xb8\xb6\x6d\x06\xee\x79\xc8\x8a\x0c\x85\xd0\x67\x3f\x0b\xad\x63\xbe\xe3\x48\xa2\x7b\xfb\x70\x98\x83\x19\xf4\x2d\x7d\xf8\x40\x9f\x3f\x5e\xc8\x5f\x17\xc1\x05\xba\x38\xff\x70\x7a\xfd\xf1\xe7\xf3\x9b\x8f\x17\xef\x3f\x5e\x7c\xbc\xfe\x3b\xfa\x72\x79\xf5\xb1\x9a\x72\xfe\xe5\xea\xe3\xa7\xcb\x0b\xa4\x44\x78\x14\xe5\x1f\x13\x4a\xee\x48\x86\x38\xee\x2d\x8a\xf2\xab\x60\x4a\x54\x1a\xab\xea\xea\xf4\x3d\x2b\xe0\xfa\xfc\xc3\xf9\x57\x5e\x63\x25\xc1\x08\x93\xa9\xe3\x4d\xea\x32\x4d\xd3\x60\xf4\x88\xdd\xe3\x5b\x45\xfe\x8f\xc7\x8f\xdd\x2e\xcc\xc0\x0c\xdd\xe1\xdb\xd1\xe3\x98\xc3\xc9\x80\x10\xdd\x41\xdb\x5e\xb2\xbf\x28\x66\xef\x20\x6c\x19\x8b\x14\x4f\xd1\xb4\xe2\x39\x14\xa2\x52\xdd\x23\x47\x15\x85\xd5\x08\xcf\x42\x5d\x83\x74\x90\x49\xa9\x04\x93\x20\xcc\x1b\xf6\xdc\xd2\x6f\xb8\xef\x1f\xf4\x1b\x3d\x83\x7b\xee\x76\xe1\x4f\x71\x4c\xd5\x92\x95\x1c\x6c\x5f\x8b\xfe\x3d\xb4\xb3\xd7\x83\x15\xa6\xd8\x73\x9f\x94\xb1\x84\x89\xa8\x9a\xad\x8d\x1a\xd4\x8b\x06\xc6\xac\x14\x86\x25\x56\x39\x8f\x4d\x54\xdd\xb2\xa4\xdd\x67\xcf\x7d\x5e\xe0\x31\xea\x94\xb3\xeb\x13\x70\x70\x58\x31\xa8\x38\xf4\x0f\x44\x71\xcf\x8b\x35\x46\x71\xec\x24\xdc\xb0\x2d\x93\x0e\x26\x45\x6d\xac\x9e\x51\x3a\x1f\x94\x7b\xaa\x21\x81\x1b\x55\x19\xb4\xbd\xe5\xac\x06\x6d\x9b\xa5\xbc\xc5\x75\xd4\xe4\xa2\xb1\xa3\xcf\x4b\x44\xba\xf6\xfa\x5a\xf2\x37\x6a\xa8\xf6\xf5\xf9\x13\x60\x59\x74\x6d\x55\xfa\x3b\xcf\x94\xfd\x8c\x6c\xe2\x79\x6e\xe5\xb4\x25\xb5\x1e\xe5\x5a\xef\x70\x9d\xbd\xae\xbf\x7c\x21\xcf\x5e\x9e\xe7\xfa\x9e\x57\x5e\xf3\xf4\xdc\x67\x8e\x77\x9e\xe7\x6d\xad\xf1\x63\xd2\x58\xdf\xc7\xa4\xac\xcd\xf3\x3d\xcf\x33\x6a\x7b\xcd\x95\xa4\x86\x34\xef\xf7\xd4\x9d\x24\xb7\xb1\xf3\x1c\x87\xa6\xef\xa3\xef\x24\x44\x81\xa1\x04\x42\x39\x1e\xb9\x48\xff\xdf\x18\xc5\x4a\x72\x50\xd9\x7d\x1e\xb2\x31\xcb\xc8\x84\xb6\xa3\xe4\x3e\x9d\x04\xac\x1d\x1d\xab\x16\x42\xc3\x84\x72\xdd\xf1\x50\x82\xe9\x71\xb7\x9b\xbd\xdd\x3f\x86\x49\x17\x93\x37\xf9\x28\x1b\x23\xf6\x0f\x4e\xfe\xcb\x23\x07\x28\xc1\x01\x48\x76\x3d\x72\xc0\xe3\x5f\x98\xbd\x2b\xc3\x1d\xec\xa3\x0c\xbb\xc7\x3b\x3b\xf4\x04\xbb\xc7\x30\xeb\x62\x8e\x4f\xca\x31\xf5\x02\x90\xed\x12\xd6\xe1\xec\xbf\xc8\x1b\x8f\x1c\x14\x28\x6c\xc6\x28\xdd\x47\x14\x5b\xd6\xf1\xce\x0e\xe1\x85\x30\x39\xc6\xea\x60\x4c\xa5\x3f\xbd\x08\xda\x98\x8f\xc8\x58\x9d\xca\xe4\x95\x03\x4f\x6a\xb1\x6f\xd5\x3d\x6a\x57\x46\x55\xb4\x5c\x0b\x1d\xec\xa8\x93\x1e\xec\x66\x2a\xc0\x1d\xad\x06\x49\x30\xc1\xcd\xca\xdb\xd8\xff\xea\x61\xec\x0d\x67\xec\xf5\x8e\x87\xb2\x37\x04\xfa\x33\x40\xde\x10\x44\x77\x7b\x28\x83\x85\x79\xcb\xc4\xcd\x64\x80\xe5\x3a\xae\xeb\xb2\x46\x1f\x92\x9d\x3d\x35\x2b\xa0\x0f\xd7\x6b\xcb\x63\xc9\xce\x91\x4e\x74\x79\xa2\xd3\xdb\x63\xe9\xec\x6f\x99\xbf\xc7\x5f\xb9\xd5\xff\xbc\xde\x21\xcb\x09\xdc\xef\x21\x71\x6f\xf7\x6f\xfb\xc1\xc1\xfe\xc0\x75\x0f\x5d\x68\x14\x29\x2e\x0d\xeb\x47\x95\xd4\x84\x26\x33\xa9\x59\x91\xcd\xc6\xfa\x10\xa8\xba\x68\x2a\x2f\xab\x51\x0c\xd1\x42\x00\xe8\xcf\xb1\x65\xa1\x7b\x6c\xb9\x1c\xfc\x7c\xf1\xd6\x5d\xaf\x17\x27\xbd\x86\xf8\x33\x31\x17\x1b\xa7\x1d\x3c\x95\x62\x93\x75\x11\x5c\xf0\x8f\xa6\x6f\xf1\x8e\x47\x7a\xde\x7a\x3d\x3d\xc1\xec\x87\x92\xab\xe4\x7c\x4e\xc5\x97\xdc\x3a\x67\x8e\xad\x1d\x0b\x4d\xf1\xce\x14\xa2\xe9\x89\x47\x76\x7a\x1e\x23\x8c\x94\x89\xad\xcd\x94\xe8\xb2\xa5\x75\x9c\x9d\xe0\x81\x7b\xb4\x7f\x0c\x69\x17\x7b\x3d\x94\xed\xf2\x47\x71\x19\x90\x9d\xe0\x9e\x78\xc1\xd2\x7b\xfa\x2c\x53\x80\xe9\x9b\x19\xe8\xa1\xfd\x23\xe4\x41\xb8\xb3\x7f\x04\xdf\xba\x43\x91\xb4\x43\x91\x07\xfd\xe9\x2e\xfb\xcd\x7e\xa2\xf4\x0d\x1e\xec\xb9\xfd\xbd\xa3\xa3\xfd\xde\x41\xff\xc0\x1d\x1c\xed\x23\x40\xf1\x5e\x6f\x87\xc2\x13\x57\xb4\x67\x09\x5c\x94\xb2\x13\xc3\xe2\x38\x38\xc1\x07\xc7\x70\x09\xd8\x72\x72\x21\x0a\x76\xf0\x81\x00\x25\x00\x33\xe0\xb9\x28\x10\xe1\x1b\x50\x80\xe9\x8e\xc7\x32\xf7\xfa\xc7\x70\x02\xbc\xb7\x6f\x7b\x7d\x9e\xbb\xd7\x6f\xf1\xc7\x00\xa2\x25\xf0\x58\xee\x09\x93\x62\xef\x71\x08\xa4\x53\xaf\xac\x6c\xc9\xd1\x0b\x28\x2b\x8c\xbf\x34\x57\xc2\xa2\x8c\x31\x82\x17\x27\xee\x70\xde\x65\xc2\xee\xbd\x5a\x1d\x6f\xf1\x62\x68\xb9\x8e\x55\xf9\x64\x27\x87\xdd\x7b\xff\x5e\xc7\x42\xca\x77\x16\xb0\x6b\x39\x56\x57\x25\xb1\x04\xe8\xcf\xbb\xf7\xca\x4a\x40\x85\x46\x12\xf6\x50\xfd\x9e\xdf\xef\xd5\x2e\xfe\x7a\xde\x6b\xec\x03\xf6\x7b\x26\x8f\xe4\xac\xf1\x4b\x46\x26\x51\x1e\xa5\x15\x03\xbc\xac\xe1\x74\x2e\x16\x9d\xec\x8f\x87\x2a\x77\xef\xd5\xfc\xd1\xf6\x25\xa2\x6b\x6b\x38\x16\xab\xeb\x02\x91\xfd\xff\x63\x66\xde\xc2\x8a\xe1\x46\x84\x3d\x32\x94\x95\x53\xe8\xab\x5f\x48\x49\x4b\xcd\xe3\xf7\x9c\x05\x2a\x1b\x11\x03\xd9\x30\xc8\x95\x56\x64\xaf\xa2\x15\xd9\xf3\x8f\xf6\x78\x79\xcf\xcb\x60\xba\xac\x49\x46\x02\x4a\x7c\x7e\x4c\x35\xcb\x62\x12\x2b\x2f\xeb\x39\x01\x4c\xd9\x78\xec\xed\x43\xa3\xd8\x0a\xc0\x62\x44\x72\x56\x81\x94\xf0\x4c\xa0\x9d\xa3\x43\xff\x88\x8b\x3f\xde\x73\x5a\xa7\x17\x54\xf3\xe8\xcb\xd3\xfa\x66\x35\xf2\x46\xac\xe7\x6d\x91\xb2\xd4\x7d\xe8\x51\x0f\x3a\x69\xf2\x3e\x23\xe4\x37\xd2\x22\xc0\x73\x0f\x20\xb0\xa6\xfc\xf1\x99\x4b\xb0\xa4\x94\x36\x6d\x9b\x82\x04\x0e\x09\xc8\x40\x02\xa1\x9f\x14\xf2\xbe\xd7\x3d\xf0\x3d\xf7\x40\x5d\x3b\xf6\xfc\x23\x31\xf9\xdb\x6e\xcd\xfb\x52\x7d\xc1\x55\x11\xba\x31\xdb\x50\x2d\x9b\xc2\x72\x9b\xc8\x83\x89\x69\x5a\xc3\x83\xcc\xc3\x5a\xbb\x94\xa9\xa3\x3e\xa0\x78\x07\x1b\x76\x22\x0d\x4d\xb8\x08\xe6\x24\x6f\xac\x9d\xe5\x77\xf9\x74\x88\x6a\x5c\xdf\x73\x5d\x24\xab\xe3\x15\x6c\x11\xe5\xb8\xb1\x85\xba\x9e\x36\x7b\x6e\x44\xdc\x7d\xa6\xbf\xb5\xde\x96\x7d\x95\x57\xc0\xaa\xcf\xc2\xa2\x81\x37\x66\x8b\x56\xff\xe0\xa8\x6c\x42\x94\x9f\x7f\xa7\x24\xc9\xa3\xdb\xf8\x39\x7a\x28\xc1\x55\x3b\x94\x63\xa9\x82\x0e\x59\xaf\x09\x07\x9b\x6b\xa0\x07\xd6\x82\xde\x96\x03\x61\xb5\x05\xef\xb3\xf4\x37\x92\xbc\xb8\x76\x56\xf9\x7a\xcd\xc3\x6e\xb2\xca\xb7\xd6\xbd\x85\x05\x55\xeb\xbe\x22\x41\x4c\xc2\x3f\xbc\xee\x57\xb0\xab\x88\x71\x12\xcf\x93\xd7\x29\x9e\x77\xe4\x7b\x5e\x69\x95\xdb\xeb\x6d\xe1\x56\x06\x45\xed\x95\x1d\xe2\xf6\xe6\xbf\x93\x8e\xf6\x7c\xcf\xdd\x6b\xa2\xa3\xde\x16\x4e\xf6\x24\x8b\x59\x64\xe4\x9e\x24\x54\x52\x17\x8f\x52\xfb\x7f\xc3\x6d\x7a\xbf\x87\x01\xe6\x24\x88\xff\xcf\x1a\xf4\xfc\xe1\x54\x4f\x7e\x35\xe6\x36\x23\x84\x9e\xcb\x83\x81\x48\xdb\x37\xd7\xf7\x7a\xc6\x49\xb1\xf7\x12\x73\xde\xc1\x1e\xeb\xf8\xaa\x68\x65\xa3\xc6\xd8\xcd\x63\x6c\xfd\x66\xa1\x4c\x58\x08\x8d\x44\xd0\xff\xf6\x6f\xe3\xd2\x3e\x68\x33\x68\x77\xb3\xb9\x90\x94\x60\x54\x11\x56\x57\xd8\xbc\xc0\xae\x35\xb6\x04\xc8\x66\x69\x13\x84\x2a\x0e\xaa\xbc\x2f\xcf\x9e\x7a\xe5\x78\x7d\x10\xd2\x53\xed\x80\xfd\x82\x73\x75\x6f\xfb\xad\x66\xf5\x5c\x6d\xd6\xa0\x0e\xd4\xcf\x9e\xa3\xfb\xcf\x8a\x88\xa8\x8c\x39\xa8\xa0\xef\xf6\x0f\xa5\x43\x5a\x4f\x38\xa4\x0d\x14\xf0\x9d\x2b\x80\xef\x18\xd1\x86\xd2\x98\x73\x26\x81\xf0\xa6\xec\xbd\x42\xbd\xeb\xed\xa9\xb0\x4a\x03\x11\x3f\xfd\x9e\x91\x78\x1f\x02\x01\x7c\x77\x34\x10\xa1\x95\x3c\xaf\x27\x62\x2b\x79\x83\x7d\x11\x5c\xc9\xf3\xfa\x10\x3d\xe0\xc0\x88\x4f\x74\x8e\x03\x1d\xe4\xf0\x3b\x3e\xb7\xed\x73\x15\x34\x3a\x47\x97\xf8\xbb\x6d\x7f\x77\xee\x0f\xd7\x6b\xcb\x42\x57\x38\x70\xbe\x64\xe9\x3c\xca\x09\xba\xc6\x46\x84\xbe\x18\x9c\x43\x13\x8e\x18\xae\x0a\xf4\x05\x67\xf8\xce\x99\x72\xe4\xcf\x9a\x05\x90\x98\x81\x2b\x27\x23\x79\x1a\xdf\x13\xc0\x11\xd4\x01\xad\xe8\x2d\x57\x05\x1c\x6d\x44\x89\x1e\xe3\xea\xb6\xfd\x19\x7d\x86\x85\x42\x81\xb9\x5e\xaf\x1b\xec\xea\x65\x7b\xbf\x12\x46\x9c\x51\x9a\xf0\x20\x7a\xd0\xb6\xa9\x43\x67\x24\x01\x9f\x4d\xc3\xfe\x8c\xdb\x69\xe0\x4b\xed\xd7\x65\xed\x3b\xfb\x16\xb4\xed\x1d\x0f\x63\xfc\x58\x26\x9f\xcd\xb2\x74\x4e\x76\xf7\xf7\x2d\x15\x97\x3e\x81\xab\xa2\x00\x10\x9d\x6d\x2a\xca\x95\xb1\x16\xe8\x4c\x38\xc2\xc0\xa6\xf9\x18\xa0\x98\xf0\xe6\x40\xd6\xb0\x02\x7d\x6b\x40\x27\x20\xce\x4d\x02\x57\xec\x5f\xdc\x71\x95\x85\x93\x73\x33\x69\xdd\x57\xd5\xe9\xea\xbe\x9c\xbd\xbc\x67\xe7\x10\xcc\x7e\xe5\xf2\xf2\x5c\xe7\xd4\xe1\x30\x45\x54\x9a\x68\x48\x9d\xf4\x9b\x4f\x9d\x69\x10\xc5\xfc\x02\x42\xce\x0d\x5a\xf2\xdf\x6c\xf0\xd0\x04\x53\x27\x4c\xe7\x41\x94\xb4\xd8\x2c\xe6\x43\x10\xad\xd7\xa0\xc7\x2b\x98\xd9\xf6\x3b\x26\x7c\xb1\x9f\xd8\x63\xab\x1e\x63\x9c\x0f\x33\x9c\xf8\x60\x62\xdb\x13\x87\x24\x94\x64\x80\x4d\x74\x0e\x12\x88\x26\xb6\x0d\x26\x0e\xf9\x1e\x51\xc0\x96\x44\xc7\x85\xec\x15\xc6\x9c\xdf\xb0\x09\x1b\x2e\xc1\x03\xb0\xe4\xec\xed\x4c\x66\x41\x94\xb4\x27\x8f\x93\x98\x58\x10\xfa\x20\xc5\x67\xfc\x62\x40\x2a\x0c\x32\x14\xa3\x25\xf4\x63\x96\xe6\x2f\x41\xa2\x66\x25\x84\xab\x89\x6d\x77\x02\xde\x00\x51\xd7\x12\x84\xb0\x28\x8e\x95\xaa\xe5\x24\x3d\x86\x01\xc8\x38\xc4\x3e\x6c\xb1\x01\xc5\xa3\x31\x12\xc3\xec\x21\x6a\xdb\x1d\xd1\xb9\xaf\xc2\x0d\xb4\x28\xd0\xd7\xca\x0c\xcf\x45\x03\x82\x0d\x03\x4a\xb9\xec\xc5\x34\xa4\xf8\x5f\x2a\x12\xae\x6d\x03\x8a\x6f\xab\x60\xa6\xc3\x73\x87\xcc\x23\x0a\xac\x65\x32\x0b\x92\x30\x26\xa1\x26\x57\x0b\x45\x88\x40\x1f\x64\x38\x70\xd2\x44\xbf\xcf\xd4\x7b\x38\xcc\xc0\x4a\x0e\x99\x4f\x50\x46\x82\x3c\x4d\xfc\xa8\xe0\x08\x8d\x01\x5f\x51\x69\xcc\x35\xb6\x0e\x61\xab\x5d\xff\x00\xd6\x4f\xaa\xb0\xb6\xfc\xbe\x9d\x19\xb5\xf2\x6b\x61\x3e\x9b\xd7\xeb\x35\x6b\xfd\xb0\xe7\x7b\x3c\x25\x50\x9e\x72\x29\x5b\x45\x44\x2a\x54\xa8\x73\xcf\xb7\xc3\x7f\x35\x61\x30\x78\x1d\x45\x24\x8c\x2c\x00\x2b\x84\x23\x6d\x4c\x54\x40\x8c\x02\xbd\x7b\xe1\xb0\xb6\xca\xd1\xd2\xcd\xfd\xb3\xe8\x87\xc5\x47\x8a\xf2\x91\xd2\xef\x64\x1f\xb9\x99\xe2\xe6\x40\xb1\xd9\xe1\x27\xe9\x02\x5d\x34\x5c\x71\xf1\x9b\x2c\xea\xdc\x84\xeb\x35\x60\x7f\x70\xc7\x45\x80\x62\xea\xdc\x3c\xac\xd7\x14\x3a\x37\xf7\x98\x20\xea\xdc\xe4\xb8\xc7\xfe\x04\x22\x5b\xc0\x32\x4c\x14\x48\x2e\x44\xdf\x64\xf0\x81\x02\x7d\x6c\x0a\x0e\x85\x55\xe0\xd7\x4e\xe6\xdc\x84\x70\x95\xc9\x8a\x32\x9c\xf1\x7a\x32\xbe\xda\xa2\x29\xc8\xb8\x0d\xa8\x86\x0a\x93\x6b\xa3\x0c\x9c\x2c\x97\x6c\xd8\x8e\x68\x4e\xe2\xa9\x05\x8f\x01\xc5\x67\x4c\xb8\x1b\xde\x6f\x44\xe0\x4e\xf0\xea\xe6\xc1\xcf\xd0\x4d\xe8\x77\xbc\x82\x57\x41\xa5\xaf\x13\xca\xc1\x47\x94\x20\x0f\xa2\x1c\x5c\xf0\x1f\x6a\x3d\x45\x70\x25\xed\xb8\x13\x1e\x77\x9b\x2d\xc5\x4c\x8c\x42\xc6\x46\xc1\x43\xdf\x40\xc6\xa3\x91\x96\x6c\x51\x19\x7e\x1b\xb5\xf1\x23\x5a\xd1\x3a\x5d\xaf\xc1\x55\x65\x44\x66\x42\x4b\x71\x85\x54\xe7\x2c\x64\xdd\xcc\x2c\x88\x42\xee\x05\x6a\x5a\x24\xb3\x06\x13\xc0\x5a\x2a\x50\xa6\x44\x63\xe5\x6f\x55\x7d\xa6\xab\x57\x50\xf6\x05\x32\xf5\x71\xca\xcd\x94\x2f\x7a\xf1\x53\x53\xb7\x78\xcc\xb5\xcf\x69\xc8\x19\x02\xff\x79\x5f\xcd\x33\xd3\x79\x84\xd7\xbf\x71\x1b\x27\x40\x6d\xc1\x95\x89\xa3\xc6\x18\x7d\xa3\xed\xce\x17\xb0\x90\xfd\x2f\x63\x7d\x67\x4e\xfa\x0d\x37\x18\x1c\xb3\x23\x17\xca\x38\xbb\x6e\xf4\x35\xb7\x6d\x8a\x32\xc9\xad\x31\x5b\x32\xe2\xa7\x5f\x69\xf8\x44\x84\x00\xcb\x94\x83\x6d\x60\xdb\xf2\x47\xed\x45\x6e\xdb\xdf\x44\xd3\x78\x58\x41\xc5\xa3\x0b\xc4\x87\xb9\x31\x96\x11\xfb\x8e\xef\xb0\xb2\x46\xae\x27\x42\xc9\x66\xdc\xe3\x84\x3c\xb4\x69\x4b\x19\x3b\xb3\x62\x25\xd8\x9d\xda\x82\x30\x9b\x64\x1e\x37\x56\xa6\xb2\x95\x8d\xd9\x6c\xb3\xc4\x02\xdd\x39\x53\xfc\xa5\x31\xbe\x27\xc6\xf8\x4a\x20\xd8\x0a\xa0\x75\xf6\xd2\xcf\x04\xf6\xfb\x12\x2c\x9d\x0f\xdd\xa5\xf3\x4b\x77\x29\xd0\xb1\x57\x92\xe4\xfc\x2b\x8e\xaa\xe0\xf5\x7a\x10\x18\x84\x28\xd2\x3c\x08\x8c\x94\x48\xe2\xb8\x28\x99\x88\x95\x79\xa5\xca\x2b\x49\x78\x25\x9a\xdc\xa0\x95\xfb\x52\x31\xaf\x07\x2e\x52\x7b\x2d\x14\xf4\xae\xc6\x59\xb6\x57\x94\x0d\xd2\xf5\xba\x73\x0a\xab\x15\xf0\x91\x6a\x0c\xa1\xc4\xb6\x1c\x56\x0b\x1f\x85\x2b\x5f\x78\x1f\xc1\x6a\x91\x1d\x70\xca\xc4\xfe\x0d\x14\x84\x2b\x47\x38\x3f\x3a\x62\x39\x7d\x96\x3a\xc7\xb2\xe2\xc0\x0c\x22\x56\x61\x9b\x88\xd1\x33\x15\x81\x7f\x94\x2c\x11\xf1\xdf\x5c\x96\x48\x6b\x7b\xa0\x58\x01\xa3\xb1\x94\x53\xbc\xd6\x94\x1b\x89\x54\xcf\x66\xdc\x3c\x02\xa7\xdd\x2e\x8a\x71\xc7\x6b\x65\x82\x4a\xa5\xb2\x14\x05\xdd\x2e\xd2\x72\x0b\x6b\x34\x27\xbf\x4a\x01\xf1\x7a\x0d\x62\xce\x5b\x47\xf9\x18\x13\xb4\xb3\x13\xac\xd7\x89\xc0\xc9\x97\x5b\x9e\x4e\x2a\xca\x45\x98\x3a\xc4\xb6\x23\x90\x3a\xf7\x15\xe2\xcf\x82\x9a\xd3\xe0\xb6\xde\xf3\x1e\x47\xb5\x1e\x37\x75\x70\xb3\xf9\xe5\xe0\x25\x7c\x9b\x2a\x1b\x15\xb1\x46\x25\x20\xaa\x36\x4a\x1e\x52\x7a\xbe\xe7\xf5\x90\xe7\xf5\x7d\xcf\xeb\x37\x60\x94\x4b\x5c\x37\x8d\x55\x3e\xf0\xbd\xfe\x80\x83\x71\x79\x83\xf2\x90\x26\x9c\xac\x04\xba\x9b\x89\x28\x64\xc2\x2c\xec\xef\xfb\xfb\xfb\x0a\x5d\xcc\xc4\x0f\x17\x20\x51\x7d\xff\xa8\x8f\x8e\x06\xfe\xd1\x80\x1f\x96\x9e\xb9\xc8\x57\xce\x6b\x7d\x6e\xd0\x04\xc4\xcd\xfe\x57\x32\x8d\xb9\xab\xfa\xaa\x80\xc2\xfb\x1a\xa5\xa5\xcf\x02\x4f\xa8\x6a\x52\xeb\xb7\x4a\x55\xe7\x35\x31\x8a\xc8\x92\xc5\x32\x22\x66\x45\x54\x38\x32\x0a\x14\xb1\xf1\xab\xa4\x18\x27\x20\x28\x07\x7e\x18\x81\x1c\x51\x14\x6b\x7f\x35\xf1\x24\xf5\xe0\x62\xcc\xf6\xfd\x7e\x03\xe6\x3a\x1f\x83\xe7\x8c\xef\xf7\xe5\x18\x78\x82\xc1\xf4\x25\x84\xc2\xc1\x51\xd5\xa6\x6b\x30\x60\x0d\x6b\x1a\x23\x7d\x8c\x42\x4b\x1c\xbc\xc0\xd5\x39\xae\x8d\x0f\x62\x12\xf0\xa6\xc3\xf3\x04\x77\xaa\xa5\xd5\xbf\xe3\xd4\x69\x5c\x50\x2f\xd7\xeb\x49\x65\xa0\x75\xc3\x6a\xdb\x5f\xc2\xc3\x65\x01\x19\x1a\x25\xd8\xb4\x2c\xea\x0f\x89\x6f\xba\xc5\xf7\xc6\x5c\x98\x66\xb2\xfd\x52\xfb\xbc\xcb\x89\xe3\xa1\x8e\xab\x96\x5b\xf2\xde\x48\x98\x6c\xb9\xbe\x01\x0f\x4c\x84\x9d\x96\x57\x49\x03\x1c\x47\x54\xbc\xe9\x6d\xbe\x41\x94\x03\x85\xf2\xd7\xfd\x2d\xaf\x11\xe5\x6d\xe4\x79\x06\x4f\xe5\x41\x74\xd4\x1f\x0b\x70\xdf\x10\x8f\x92\x65\x1c\x97\xee\xac\x9c\xbd\x49\xbc\x81\x90\x43\x9b\x93\x07\x90\xcb\x04\x82\x42\x28\xbe\x9b\x89\xf3\xbb\x14\x2f\xa6\x38\x03\x29\x98\xc1\xe1\xcc\xaf\x2b\x70\x20\x5a\xd4\xd6\x8d\x12\xf8\xa6\xa8\xc4\x89\x4e\xc1\x02\x0e\x17\xfe\x74\x93\x9c\x0d\x7f\xac\x2a\xc0\xa3\x50\x7c\xa9\x8b\x95\xfe\x16\x55\xe5\xd1\x41\x15\xaf\xa7\xaf\xfc\x9b\x07\x15\x34\x9e\xcd\xf5\x2b\x09\xc8\xa9\xde\x89\x00\xea\x4c\xc1\xaa\x40\x9e\xf2\xd2\xf2\x0a\x58\x3e\xf4\x8a\xfa\x2a\xaf\xdd\xa8\x18\x14\x98\xa1\x54\xd2\x60\x86\x23\x20\x90\xb6\x12\x90\x0a\x19\x53\xc9\x33\xce\x54\xe6\x44\x1d\x57\x4a\x97\x81\xd6\x07\x7b\x85\xf2\x23\x14\xa6\x53\x9b\xcb\x5f\x5f\xd4\xf4\x9f\xb1\xcf\x11\xf6\x99\x72\x7c\x94\xa2\xd0\xec\x45\x4c\x68\x63\x2f\xa8\x42\x10\x17\x71\xd3\xcb\x19\xe5\x6e\x3a\x9d\xa8\x12\xca\x0c\xda\xb6\x28\xa9\x4d\x46\x74\x2c\xa7\xda\x68\xb4\xbe\x2a\xe9\xbf\xc6\x97\xb4\xbf\x5f\x91\xf0\x48\x89\xe2\x92\x55\x50\x5c\xa4\x5e\x2c\x51\x28\x2d\x78\x34\xe6\x97\xcc\x22\x40\x9c\x8a\x4c\x4b\x61\xd1\x22\xe0\xb0\x07\x41\x52\xaa\x4a\x37\xfc\x14\x4b\xac\x97\x56\x98\xae\x94\xdb\xdc\x4d\x74\xa2\xe3\xfe\x4a\x06\x21\x09\x43\x05\xd5\x4d\x13\x1e\x4b\xaa\x78\x98\x45\x31\x01\x1d\x00\x08\xa6\x23\x8d\x15\xc3\x51\xb9\x65\xe3\xf5\x96\x2b\x4b\x20\xf2\x63\xaf\x50\x00\x5f\x95\x19\x92\xb1\xaa\x1a\x0d\xce\xda\x4a\x0a\xdd\x1c\xf1\xc3\x9e\x7f\xc8\xf5\xc6\xfd\x2d\x7a\xe3\xa3\xa3\x8d\xe5\x23\x56\x8d\x59\xf9\xd6\xd0\x70\x26\xb9\x43\x93\xa8\x05\xdd\x37\x34\xa8\x24\x81\xe7\x2c\xa1\x94\xab\x65\x23\xc1\x56\x2f\xb7\x9a\x2d\xca\x12\xc3\xcf\x5b\xde\x63\x19\x2d\xe1\x6d\xd8\xa2\x25\x3e\xaa\xbb\x7b\xee\x1f\x49\xaf\x77\xb7\xba\x6b\xb2\xb6\x45\x20\xda\x68\x9b\xe9\xbd\x15\xa1\x5c\x94\x1c\xa3\x25\x9a\x34\xed\x42\x91\x6f\xee\x41\x8a\x63\x06\x20\x82\x18\xe3\xc9\x30\x1a\xe5\x63\x1f\xc4\x98\x72\xf7\xd1\x1c\xc2\x61\x02\x62\x1d\x67\x70\x18\x3b\x26\x09\x76\x30\x8e\x9d\x3b\x42\x87\xfc\x5f\xc1\x89\x27\x2a\xfa\x93\x9f\x82\x25\xce\x40\x04\xe1\x90\x80\x25\xca\x91\x7e\xb3\x75\x98\x94\x5d\xa6\x60\xc6\x7a\xf2\x9e\x77\xe9\x29\xc7\x63\x16\xe4\xcd\x2e\x87\x62\x61\xd6\x2c\x0d\x07\x4f\xfa\xf8\x28\x6e\x20\x37\x21\xf3\x82\x71\xb3\x62\xf3\xed\x36\xa3\x43\xd4\x49\x98\x60\xde\xb0\x76\x78\x63\x9e\xc7\xba\x2a\xab\x4b\x1f\x92\xbf\x92\x47\x7e\xe1\xe6\xaa\x0b\x37\xf7\xc8\xf7\x5c\xe3\xc2\x6d\xf0\x8c\x98\x56\xe9\xdd\xc6\x2d\xd7\x66\x9d\x1b\x59\xaa\xfd\xe4\xe8\xf5\xe5\x76\x93\x08\x13\xcb\x72\xaf\xa1\x1b\x7b\x4d\x7d\x00\x9e\xf4\x6a\x14\x37\x4a\xad\xcc\xb6\x37\x1a\x96\x6f\x5b\xa0\x7c\xfe\x9d\xc9\x8c\x4c\xbe\xf1\x07\xb3\x7d\x19\x8f\x54\xcf\x52\xcb\x26\x26\x9b\xdb\x61\xfd\xe2\x6a\xb0\x65\xf3\x53\xa2\xc1\x91\x74\x68\xe0\xcb\x39\x92\xcb\x39\x95\xbd\xe0\x50\x7e\x9e\x8c\x19\xc4\x86\x3f\x96\xd7\xb8\x22\x3c\x57\xb5\x4b\xe6\xba\x4e\xd9\x72\x16\x95\x85\x68\x86\xa6\x9b\x2b\x7b\x30\x4c\x8d\x95\xdd\x1f\xa3\x05\xce\x9c\x29\xc8\x41\x0a\xd1\x92\x4b\x94\x9d\x05\x57\xc3\xc7\x60\x86\x99\x68\x50\xba\x71\x83\x19\x87\xfe\x9b\xc2\xd6\x02\x07\xc0\x85\x45\x34\x05\x11\x58\x94\xd1\x45\xb9\xf6\xde\xc3\x18\x2f\x8c\x50\xa1\x9d\x18\x4c\xab\x9e\xe2\x21\xaf\x71\x8a\x96\xe2\x8b\x90\x31\x85\xf5\x3a\x64\xe3\xbc\x5e\xf3\xef\x43\xfd\x7d\xf9\x61\x28\x58\x0a\x9e\x20\x2a\xbe\x46\x21\x54\x81\xac\xc4\x73\x00\x5c\x34\xd1\x5b\x58\xc7\x2d\x2a\x56\x3d\x1d\xd6\xac\x9c\x50\xdb\x06\xfc\xaf\x60\x43\x53\x34\x81\x06\x1c\x4f\x2d\xe2\xd5\x56\x9e\x53\xb5\x02\x1f\x6c\xb3\xfb\x95\xd6\x1f\x07\x92\x63\x0b\x37\x94\xa8\xf4\x52\xe1\x17\x65\x72\xbe\xf7\xf9\x74\x53\xe7\x2b\xb9\x3b\xff\xbe\x40\x31\xce\xd1\x12\x1b\x5e\xf1\x68\x82\x77\x83\xdd\x3b\x14\x8a\x3f\x33\xae\x4d\xca\xc1\x04\x76\x30\x9e\xf0\x93\x80\x70\x51\x07\x9d\xd9\x7a\xbd\x15\xd2\x22\xd4\x37\x4d\xdc\x17\xdd\x82\x63\xdc\xf1\x90\x28\x66\xb2\x5e\xe7\x20\x84\x18\x87\xeb\xb5\xb5\x1b\xec\x46\x56\x07\xe7\x60\x82\xac\xc8\xe2\xda\x10\xb8\xaa\x63\x49\x0b\xed\x2a\x13\x1e\x4c\xdf\x87\x1c\x45\x02\xcb\x6e\x62\x40\xe9\xa8\x59\x49\x6c\x3b\xb2\x6d\x52\xb9\x00\xc3\x38\xb7\xed\xc9\x90\xf8\x19\x98\x71\xed\x55\xcc\xe5\xb8\xc9\x90\x38\x79\xba\xcc\x26\x84\x3b\x7b\xfb\x31\x00\x11\xae\x80\x09\xe4\xd0\xcc\x12\xb1\x42\x02\x85\x62\xe5\xb3\x53\x84\x80\x99\x5a\xa2\xdc\x70\xa0\x98\x56\x6f\xd6\x18\xbf\xcf\x19\xbb\xcd\x11\x79\xd6\xa9\x5f\x1d\xc0\x46\x64\x5c\x73\x5b\xa7\x70\xc5\x52\xb1\x70\x68\x5e\xe0\x08\xc4\x10\xcd\xb1\x7b\xbc\x50\xd7\x2f\xf3\x63\x38\x05\x8b\xd1\x9c\x5f\xbf\x2c\x2b\x03\x90\x23\x13\xfe\x60\x69\xf8\x31\x08\x6a\xb0\x58\x07\x94\x52\x4e\x26\xc1\x26\xbf\x06\xa5\xf5\x50\x68\x1b\xa6\x47\xc3\xc0\xdf\x1f\xa8\x63\x0c\xf7\x68\x38\x74\xfd\x43\xc3\xae\x6a\xf0\x12\xa4\x31\xcf\x3b\x84\x2d\xce\xa4\xc0\x8a\x06\x19\x1b\x1e\xdd\x46\xde\x03\x36\x68\xd3\x34\x9b\x90\xd0\xa7\x1d\x8c\x77\x9d\x5d\x87\x7c\x27\x93\x02\xad\xd8\x1f\x5f\x5e\xf3\x7b\x87\xbe\xe7\x1d\x1a\xdc\x72\xc3\x4c\x89\xd3\xb2\x75\x67\x75\x58\x11\x77\xce\x34\x0e\xee\x72\xdb\x56\x88\x15\xa2\x4a\xf3\xc2\x9e\x67\xd8\x82\xca\xc0\x17\x97\x69\x50\xc6\x87\xa2\xec\xf8\x4b\xd0\xb6\x18\x17\xce\x14\x32\x15\x17\x01\x07\xf2\x4c\xe7\x1d\xf0\x11\xe9\xeb\x35\x85\x2a\xaa\x2e\x71\xed\xa8\x83\x36\x6d\x5c\x4b\xe2\x32\x6e\xb8\x00\x2e\xa5\x32\x68\xa6\x4f\x47\xe9\xb8\x55\xe7\x61\xc9\x50\xa1\x95\xa8\xf0\x97\x62\x2c\x00\x85\xa3\x74\x0c\xa4\xb9\x6e\x06\x61\x81\xea\x2c\x29\xc5\x39\x08\x90\xd0\x38\x8b\x1b\x3a\x0e\x56\x5a\xe2\xfd\x71\x06\xdb\x12\x40\x56\xdc\xbe\x6c\xa9\x83\x56\xab\x4f\x3a\xb1\x73\x17\xa7\xb7\x41\xac\xbe\x8a\x40\xcc\xf6\x8d\x7b\x1e\x17\x38\x76\x96\x49\x34\x49\x43\xd2\x8a\x4b\x64\x42\xec\xea\xa5\x17\xa2\x19\x1e\x8d\xd1\x14\xbb\xc7\x12\x5b\x07\x84\x58\x94\x00\x8f\x45\x23\x17\xaa\xca\x90\x6b\x26\x66\xa3\xe9\x18\x2f\x10\x37\x23\x5f\xd8\x36\x30\xcb\x4d\xc0\x12\x65\x66\x0a\x64\xec\x1f\x4d\xbb\xdd\xc2\x30\x1b\x9f\x0e\x59\x55\xfe\xac\x18\x2b\xc8\x96\x03\xdf\xf3\xca\xc8\x0e\xfd\x81\xdf\xd7\x9c\xbe\xef\xef\xf7\x39\x49\xbc\xc4\x65\x40\x93\x84\xc6\x15\xea\x1f\x29\x9f\x01\x09\x6c\xcf\x88\x24\x90\x44\x82\x72\x09\x7d\x18\x7c\x47\x25\x0a\x22\x5a\x9a\xde\x04\x13\xbc\xfb\x8f\x1f\xc0\xe8\x07\xfb\xd7\xff\x1e\xaf\xff\x11\xfe\x23\x1c\xae\xdf\x8e\xfe\x79\x32\x7e\x73\x02\x05\xeb\xaf\xbd\x85\xbb\x77\x8a\xf6\x32\xb2\x88\x83\x09\xb1\x50\xaf\x42\x7d\x33\x34\x45\x8b\x06\xea\x33\x42\x23\x4b\xfa\x8b\x36\xe9\x6f\xb6\x49\x7f\x91\xb6\x8c\x45\x09\xa3\x40\xe9\xcc\x26\x27\x2d\x81\xdc\x6c\xdf\xa4\x3d\x55\xd1\x12\x2f\xc0\x54\x52\x1f\x12\x01\xb7\x96\x15\xfa\x5b\x1a\xf4\x37\x11\xf4\x17\x56\xe8\x0f\xcd\x9a\xee\x7f\xb2\xd6\x6c\xbd\x06\xda\xf1\x20\x93\xd1\x58\xef\xf1\x44\x52\x2a\x07\x0e\x16\x6d\xb8\xc3\x13\x4d\xa1\x13\x93\x42\xb5\x4b\xe2\x2d\x1e\x8d\x8f\x25\x29\x3e\xe2\x00\x4c\x50\xc8\x9b\x2a\x86\x06\x3f\x42\xe1\xd2\x18\x4d\xc1\xad\x38\xba\x3f\x42\xd4\xb9\x97\xa9\x9c\x4a\x65\x3b\x1e\x19\xf9\xf2\x9b\xff\xb2\x9a\x14\x84\x28\x31\x53\x20\xba\x83\x50\xd7\x7d\x83\x1e\xb0\x65\xa1\x73\xec\xa2\xef\xd8\x3d\xfe\xfe\x56\xf9\xc7\x1d\x7f\xef\x76\xe1\xea\x11\xdf\x8e\xbe\x8f\xf5\x5a\xba\xac\xd4\x84\xae\x70\x0e\x62\x10\x01\x69\xba\x01\x51\xa8\xe1\xed\x5c\x88\xae\xd9\xb2\xfb\x8c\xbd\xe3\xcf\x6f\x1f\x55\xa1\x9f\xbb\x5d\x78\x6d\xde\x2b\x60\x8c\xc1\x0d\x7e\x1c\x7d\x1e\xc3\xe1\x8d\x2f\x4b\xbf\xd1\xd1\x6d\x1f\x9d\xbb\x2c\x5d\x2e\xf8\xfd\xed\x4c\x8c\xd0\x29\x1e\x5d\x8e\x55\x40\x8c\x6b\x74\xc5\x06\x4b\x53\xca\x17\xdb\x3e\x15\xc5\x7f\x11\x45\x9c\xe9\x39\x92\x8a\x3d\xa9\xa0\x38\x85\x52\x90\x3b\xc3\x73\x70\x89\x42\x74\x85\xae\xd1\x17\x46\x23\x57\x27\xf8\xdc\xb6\xc1\x43\x17\x87\xf2\x8e\xf9\x1c\x5d\xc1\xee\x19\x3a\xc7\x57\xdd\x4b\xd5\x41\xb5\xda\x1f\xba\x3a\x17\x2c\xc6\x65\x7c\xc9\x39\x57\x97\xca\xc0\x92\x4a\xdb\x9d\x74\x49\x89\xa8\x10\xa9\x9f\x33\x1c\x6e\x50\x7c\x6a\xdb\x20\xc5\x19\x13\x90\x67\x78\x02\xd1\x54\x5d\xd8\xcf\x8c\x85\x96\xa9\x92\x27\x2d\xa9\x8b\x0d\xca\xe0\x13\x42\x1d\x6b\xfd\x60\x49\xf5\xa8\xf5\x83\xc5\xf5\xa5\x96\xad\x52\xa4\x76\xd6\xfa\x55\x27\x50\x6d\xde\x9f\x08\xe5\xaa\xf5\xdf\x1b\xef\x72\xf9\xe6\xad\xe5\x4f\x70\x3a\x0a\x64\xb2\x87\x76\x3c\x38\xae\x39\xdf\x0a\xb5\x6b\x37\x68\xc9\xc8\x88\xa1\x5a\x76\x19\x17\xc9\x4f\x64\x6c\xf7\x19\x5e\x82\x70\xd7\x73\xb5\x8e\x94\xe5\x9d\x0d\x33\x7f\xf6\x16\xc7\xc3\x32\x70\xf7\x68\xb6\xe3\x8d\x87\xba\x8f\x1e\xf4\x45\x52\xd7\x4c\xca\x8a\x09\x8e\x46\xe1\x8e\x37\x2e\xea\x06\xf6\x93\xa1\x65\xf9\x93\xa2\x34\xc6\xd4\x5c\xb9\x39\x76\x6c\x23\x97\xde\x7b\x89\xcf\x82\xe6\xd2\x9e\x3a\x71\x19\x1b\x76\x4e\x82\x6c\x73\xc7\x96\x84\xf2\x7b\x76\xec\xe8\x75\x3b\x76\xf4\xf4\x8e\x1d\xe1\x00\xa4\xe6\x8e\x1d\x55\x38\x66\x64\x70\xcc\x5c\x70\xcc\xb8\xca\x31\xd9\x09\x42\x73\x9b\x56\x06\x96\x88\xc7\x01\xcf\x4d\xde\xa7\x36\x6f\x26\x01\xc7\xe5\x6d\xbc\x99\x09\x2d\xeb\x5f\x2d\x15\xcc\x3a\x9e\x0c\x77\x3c\x7f\x22\xb8\xce\xc6\x1e\x2b\x6d\x7b\xeb\xf3\xf6\x12\x94\xc7\xc3\x8a\xf6\x41\x1a\x02\x46\x72\x4f\x35\x30\x42\xf5\xe6\x2a\x84\x53\x7e\x54\xde\xe7\xde\xe4\x7a\x8b\x9d\xe0\xd1\x98\x73\x22\x14\x62\x2b\x96\x01\xe1\x66\xb8\x13\xd7\x74\xef\x7c\x56\x0c\x54\x12\xeb\x91\x1f\x7c\x34\xb1\x2c\xe2\x88\xd6\xf7\xd7\x58\xec\xaf\xac\xd5\x73\x35\x76\x73\x6c\x4d\x2c\x8c\xad\xe0\xf6\x76\xa2\x9c\x9e\x77\xc1\x2d\x7c\xb3\x0b\x47\xde\x78\xbd\x1e\x74\xb0\x45\x49\x4e\xcb\x77\x43\x1f\xee\xb2\x55\x3b\x0a\xc7\x1c\x08\xc5\x0a\x6e\xcd\x97\x81\xf8\x36\x94\xdf\x3a\xe5\x3b\x67\x08\xd9\xff\xe4\x4b\xf3\x0d\x04\x22\xf5\xc4\x5b\xaf\x2d\x9d\xec\x0c\x79\xe2\x70\x73\x7f\x4e\x36\x64\xbd\xd2\x1b\x46\x18\x33\x29\xec\x80\xd1\x58\xe2\xbd\x95\x10\x6f\x53\x65\x2a\xc3\x8a\xd3\x5b\x14\x5f\x47\x28\x66\x7b\xcf\x12\x03\xe2\x44\x77\x49\x9a\x91\xb3\x20\x27\x43\x2b\xb2\x7c\xcb\x82\x5d\x40\x9c\xf9\x32\xa6\x51\x1c\x25\x64\x68\xcd\x75\xa2\xdc\xa5\x87\xd6\x52\x27\xe5\x34\x9a\x7c\x7b\x1c\x5a\x8f\x3c\x05\xcd\xb0\x8b\x16\x66\x90\xc1\x72\xe2\xfc\xec\xe4\xe4\xc4\x45\x73\x6c\x2c\x36\x75\x4e\x44\xcb\xae\x75\x67\xc1\x63\x10\xe1\x5c\x34\x7a\x8e\xb8\x31\x62\x07\x80\x14\xcf\x8d\xbd\xf9\x64\xc6\xe5\x4d\xbe\x83\x25\x92\xb5\xce\x50\x24\xf7\x57\x88\x22\x3e\xb8\xb6\x2d\x53\xde\x26\xa3\x70\x6c\xdb\x13\xb9\xb7\xc5\x28\x52\xec\x18\x32\x32\x8d\x46\xee\x78\x14\x8e\xd1\x0c\xa7\x28\x66\x5f\xe2\x05\x93\x79\x8d\x0a\x19\x5b\x15\x45\xd9\xb6\x91\xac\xd1\xdc\xdb\x33\x8c\x31\xab\x64\xd8\x09\x58\x0e\x46\x41\xc0\xb2\xe0\x7a\x2d\x1b\x69\x59\xd0\xaf\xb7\x17\x42\x51\xdb\x62\x18\xeb\x0d\x65\x01\xfd\xb8\xf0\x2d\x57\x11\x85\xdc\x86\xdd\x3a\x61\xd0\x06\x1c\x53\x41\x09\x74\x38\x1a\x2b\xc9\x4f\xa3\xe0\x16\xfe\x14\xbd\x56\xc0\x8c\x9f\x17\x30\xe7\xcf\x0a\x98\x54\xed\xe9\x0b\x30\x57\x02\x26\x45\xf3\x0e\xc6\xc2\x6b\x31\xaf\x30\xcd\xbc\x72\xcc\xc9\x84\x9e\xa2\xc2\x34\x43\x9c\x80\x18\x09\xba\x81\xe8\xbe\x3c\xd5\xa0\x3b\x0c\xe2\x46\x2a\x8e\x9b\xa8\x38\xde\xa4\xe2\x99\x20\xdf\x3b\x8b\x07\xeb\x26\x0f\xed\x10\xcc\x86\xb1\x6f\xfd\x13\x0c\x7d\xab\x1b\x4b\x1a\xed\x5a\xd0\x42\x77\x10\x3d\x9a\x50\xc4\x06\x79\x53\x46\xde\x6a\x23\x7f\xac\xac\x4a\xbe\xb7\x56\x6f\x83\xda\x92\x51\x07\xe0\x16\x4d\xe0\x70\x34\x19\xfb\xa3\x52\x8c\xbc\xc1\x2e\x7a\xc0\x2e\x3a\x67\x82\xef\xc3\x5b\xf5\xed\x31\x5c\xdd\x1a\xa4\x39\x1b\x3e\xf8\xe2\x2e\xeb\x3b\xba\xe4\x25\xcd\x86\x13\x5f\x19\xfe\x3d\x40\x53\x46\xbe\x5c\xaf\xc1\x77\xbc\x04\x29\x30\x4a\x60\x5d\x77\xfd\x07\x08\x91\x6e\x1d\xc4\x18\xdf\xc0\x07\x1c\x81\x09\x7a\x40\xf7\x50\x07\x69\x3e\x17\x34\xac\x4a\xbf\x41\xec\xb3\x73\x05\xff\x5d\xf6\xb8\x7d\xae\x7b\x71\x85\xbd\xe3\xab\xb7\x58\x89\x84\x3b\xde\xf1\x95\x40\x0e\x91\x65\x5d\x8e\xae\xc6\xdb\xca\x78\xc0\x37\xf8\xbb\x82\x09\x69\xd7\x2b\x67\x55\x6f\x6e\x6b\x42\x7d\x51\x1a\x95\x34\x1c\x25\x85\xd2\x85\x6d\x79\x42\xd1\xc2\x37\xbe\xde\x13\x1b\x1f\x01\xbd\xc1\x01\xdc\x90\x5b\xf6\x07\x32\x66\x1a\xbf\x43\xde\x75\x76\x4b\x2c\xd4\xb4\x62\xe4\x2c\x95\x46\x9b\xaa\x91\xd2\x97\x81\x1b\x67\x16\xad\x6d\xda\x41\x6b\x37\xd8\xbd\xb5\x3a\xca\x39\x73\x25\x35\x6b\x56\x60\x21\xae\x5e\xf1\xad\x5b\x8b\x5f\x36\x0f\xd3\x0d\x8b\x26\x82\x69\xc5\xc2\xcb\xda\xd5\x91\xf2\x34\xeb\xb5\x76\x2d\xa5\xa8\x89\x92\x36\x19\x12\xa1\xd6\xf1\x3b\x89\x6d\x57\xf4\x7a\xa2\x0f\x0a\x7e\x95\x40\xbf\xf4\x12\xf5\xcb\xee\xb0\x86\x26\xc1\x9c\xd8\x76\xda\xa4\xea\x8c\x0c\x1b\xca\x0a\x5a\x2b\x57\x37\xf5\x06\x07\x72\xa6\x36\x94\x64\x7c\xa6\xfa\x7f\x00\xec\xe6\x15\xa1\xff\x87\xb0\x9b\x41\xd8\x1c\x59\xa9\x82\x99\xc9\x9a\x00\x11\xc1\x25\x6a\x26\xe1\xa8\x99\xdb\x21\x33\x7b\xf5\x50\x61\x35\x22\xf5\x7a\xac\x6b\x41\x32\x99\x55\x1d\x16\x1b\x7a\x47\xeb\xdd\x63\x94\x24\xe1\x53\xa9\x96\xfc\x7b\x47\xbe\xd7\x13\x35\x3f\x75\x03\xaf\x6a\xbe\x8d\xee\x5e\x39\xa8\xe2\x13\x8b\xfd\x7f\x53\xa5\x4f\xa9\x3d\x75\xa5\x71\x94\x7c\x7b\x75\xb5\xe2\xa3\xad\x15\x3f\xe5\xda\xa4\x2b\x4e\xe3\xe7\x7c\xf5\x36\xeb\x7d\xa2\xce\xd7\x04\x16\xf0\x7a\x07\x3c\x2a\x90\x82\x2f\x56\x5c\x64\xc5\xf6\xb4\x2f\x69\x94\xd0\xd3\x27\x83\x20\x68\x3c\xf3\x03\xdf\xeb\x95\x31\xf3\x7a\x2f\x0a\x79\x55\xe2\x71\xa8\x63\x5b\x8f\xc7\x49\xb5\x2c\x87\x24\x61\xfe\x4b\x44\x67\x55\x08\x6f\x0f\x02\x4b\xbd\xb1\xa0\xd1\x5a\x95\xb8\xdd\x55\x9c\x20\xf3\xcb\x74\xe3\xd2\x6c\x4b\xa0\xaa\x00\x67\x46\xdc\x93\xbc\xdc\xac\xd3\x61\xe0\xeb\x28\x27\x5c\x71\x10\x18\x27\x33\x62\x9a\xd7\x29\x51\x27\x46\x39\xf4\xf5\xb9\x7e\x47\x81\x60\xa1\x9c\xed\x92\x0a\xba\xbb\x77\xe8\x7b\xbd\x5a\x1c\x13\xb4\xef\xf9\xfb\x1e\x1b\xd6\x27\x03\x3e\x29\x7a\x9a\x46\xdf\x9f\x75\xfe\xdc\x20\x28\x4a\xb7\x53\x54\x3d\xf2\x52\x73\xad\x69\x42\x27\x69\xfc\x3b\x18\x06\xfb\xd2\x42\x96\xfc\xb8\x89\x69\xec\x3f\xbd\xa7\x96\x0d\xc8\xa3\x67\x1d\xc0\xb7\xd6\x2f\xbe\x6d\xac\xfe\xb9\xcb\xe8\x3e\x8f\xa6\x27\xd1\xe2\xa6\x59\x3a\x3f\x93\x38\x66\x28\xaa\xa4\xaa\x35\x65\x9a\x15\x76\x3a\x91\x6d\x7b\x1d\xad\x9f\x32\xc9\xba\xf2\x51\x85\xb6\x35\xee\x06\x8a\x84\x99\xf1\x66\x44\x0f\xec\x1e\xa7\x27\xc1\x31\xbf\x7f\xa5\xb8\x5b\xc5\x10\x45\x19\xa0\xc8\xf3\xbc\x81\xe7\x79\xd0\x08\x10\x6b\x00\x89\xd0\xae\xd5\x8e\xf2\x76\x92\xd2\x76\xd0\x16\xa8\xe8\x8c\x29\xb4\x17\xac\x31\x16\x6c\x45\xd2\xae\xe9\xed\xfe\xde\x5e\x7f\x7f\xc8\x46\xd6\x4f\xc0\xde\x5e\xef\x68\xbf\x0b\x00\xdd\xe1\x40\x9d\xfb\xf0\xe4\xc4\x73\x21\xa2\xff\xe5\xb9\xbd\x41\x77\x6f\xbf\xdf\x73\xa1\xd6\xe6\x45\x3c\x9c\x13\x10\x44\x67\xc4\xba\xd0\x6c\xe4\x75\xc1\x95\x7a\x87\x70\x93\x5f\x44\xc9\x24\x5e\x86\x3c\x48\x55\x39\xb0\x2a\xb1\x81\xb5\x75\x3a\xff\x5f\x1d\xd4\xc2\xf8\x58\x7b\xcb\xbd\x26\x9c\xa1\xb1\xa0\xeb\x0b\xf9\x25\xdb\x60\x44\x83\x38\x9a\x3c\xe7\x63\xbc\x41\xcf\xd1\x13\x2b\xf9\x45\xf7\x7f\x7c\x4f\x70\x61\x4b\xc4\x35\x93\x82\xa8\xb5\xe9\x2c\x6b\x58\xc4\x69\xbe\x57\x9a\xc5\x35\x85\x34\xd3\x01\xcc\x4a\x73\xb9\x48\x07\xff\x39\xd1\xd8\xb0\xc3\x66\xeb\x36\x1f\x30\x09\x34\x43\x89\xae\xa5\xab\x03\x9f\xa1\x0d\x73\x36\x25\x10\xca\xad\x89\x07\x21\xe3\x63\xf0\x92\x3d\xf9\x05\xb2\x40\xb3\xe4\x33\xcb\xc8\x74\x0b\x17\x79\xce\x35\xb8\x8c\x0d\x76\xa4\xad\x7c\x34\xc5\x66\xc1\x43\x33\x03\x60\xc7\x5b\x27\x0b\x1e\xf8\xd9\xdb\xd8\xab\x1a\x59\xc2\x68\x8c\x72\xec\x1e\x47\x27\xf9\x31\x94\x5e\x31\xea\x58\x3c\xca\x39\xb4\x30\xca\xdf\xa6\xb6\x5d\x7d\x57\x52\x77\x3e\x2e\x2d\xf6\x83\x8d\xc5\xdb\x1c\x82\xab\x57\x0f\x17\x54\x37\x66\x32\xc5\x8e\x8c\x2c\x48\x40\x7d\x01\xc9\x55\x41\xb6\xd1\xc5\x3d\x19\xe5\x46\xcd\x5f\x3e\x0f\xe2\xe7\x7c\xe1\x37\xe6\x4f\x7e\xb4\x6d\xf1\xbc\x2a\x70\x4d\x83\x4c\x93\xd3\x20\xa3\x5b\xa4\x9a\xf2\x5d\x85\x4f\x95\xc9\x4f\x4a\x36\x95\xaf\x53\x2c\x31\xbf\x99\x64\xf2\x42\x31\x47\x93\x0d\x44\xc1\x93\x32\x4c\x80\xd2\x52\x86\x49\x51\xda\x0d\xd4\x97\x18\xe3\xe0\x45\x32\x4c\x3d\xac\x4d\xf3\xfc\xd1\x2c\xfa\xf6\xdc\x56\xbe\x39\x81\xf2\xab\xad\x33\xf8\x54\xcc\x41\x5d\xf5\xf2\xf6\xd5\xf5\x2e\x9f\x90\xc7\xeb\x71\x73\xb6\x54\xfa\xda\xe8\x0d\xe2\x93\xad\x95\x3e\xb3\xbf\xf4\x7b\x10\x08\x98\xdb\xd7\xd5\xda\xd7\x75\x09\x78\x4d\x5e\xd7\x8b\xc2\xd7\xd5\x40\x7e\xf7\xf6\xab\x96\xad\x9e\x27\xc3\xdb\x1e\xf5\xa0\xf3\xd7\xf3\xbf\x73\x65\xff\xbe\x04\x14\xf0\x7a\x03\x81\x28\xe0\xf5\x7a\x02\x52\x80\xc7\x53\x0f\x65\x40\x14\x0e\x2a\xc0\xe3\xcb\xf3\x30\xed\x83\x43\x01\x2b\xb0\x77\x24\x50\x05\x0e\x0e\x20\x07\x14\xe8\xef\x0b\x38\x81\x83\x23\x09\x27\x30\x70\x25\x9c\x00\xe3\xbc\x37\x0a\x69\xf8\x41\x19\xe6\x9d\x4b\xf7\x95\xef\x58\x20\xe4\xa0\x4b\x69\xd3\x77\xc5\x13\x7a\x10\x5d\x4b\x63\xbf\xcf\x12\xb1\x04\x7d\xc1\x97\x1c\x23\xe0\xda\x99\xa2\x33\xfc\xdd\x99\xa2\x6f\x98\xaa\x78\xef\x5f\x31\x75\xfe\x72\x75\x79\x81\xfe\x85\xbf\xda\xf6\x57\x47\x80\x05\x47\xd3\x47\xf4\x0e\x87\xc0\xba\x99\x45\x61\x48\x12\x0b\xa2\x0b\xf6\x58\x8d\xc3\xf3\x11\xaf\x0a\x67\x21\x0d\xa1\x3f\xe6\xe7\xc2\x2a\xfb\x36\x26\xe8\x13\x8e\x81\x95\xf3\x1a\x76\x32\x72\x17\xe5\x34\x7b\xb4\x20\x7a\x5f\x26\x33\xd1\xe7\x37\xf6\x98\x2e\x76\xca\x94\x9f\xf0\x06\x22\xc6\x8f\x4d\x77\xef\xdf\x6c\xbb\xd3\xb9\x72\xa6\xe8\xcf\x98\x3a\xff\x23\xbe\x41\x3f\xe3\xce\x9f\xd7\xeb\xce\x9f\xcb\x8f\xab\x4f\x3c\x82\xf4\xd9\x2c\x8a\x43\xf4\x6f\x9c\xd8\x76\xde\xa4\xbc\x39\xe8\xe0\x73\x70\x0a\x56\x05\xdf\x39\x57\xcd\x66\x58\xa7\xe5\xde\x2a\x77\xf8\x83\x02\x3a\x8c\xd3\xb0\x7f\x21\xac\x28\xb3\x4b\x7d\xf4\x17\xf0\x13\xa2\xb0\x95\x68\xc7\x80\x9f\x46\x74\x8c\x4e\x65\x26\x94\xd8\x36\xe9\x60\xfc\x93\x6d\x9f\xb2\x8c\x28\x81\x85\x7f\x8a\x7e\x69\xf0\x99\x7e\x3f\x22\x63\x7c\x0e\xbe\x19\x7e\x27\x1a\xb8\xce\xb9\xf9\x86\x09\xa2\x05\xfa\x01\xff\x68\xdb\x72\xb4\x8d\x91\x73\x54\x58\xfb\xe1\xe6\x12\xdb\xc8\x4d\x8a\x46\x48\x54\x53\x65\xf6\xad\x40\x1f\xaa\xe8\x89\x49\xc5\x3b\xf4\x27\xdb\xfe\x00\x7e\xe3\xc9\xe8\x9e\xcb\x62\xf8\x46\x38\x6b\xa3\x7b\x90\x40\x94\x81\xf7\x88\xc2\x21\x48\x1c\xa2\xe9\x87\x43\x9f\xa3\x77\xd0\xb6\xc9\xe8\xdd\x78\x44\xc7\xb6\x0d\xe4\x2f\x2c\xa2\x05\x9f\x83\x44\xbb\x01\xdc\xc6\xc4\x7f\x00\x2e\x8f\x10\xc8\xbd\xa5\xf9\xb7\xeb\x35\x1b\xd8\x77\xe8\x01\x78\x68\xc5\x1d\xed\x55\x01\x2e\x44\xff\x96\x0d\x85\xfe\xa9\xfc\x55\xa0\xbf\xd7\x6d\x0c\xd9\x66\xa3\xb1\x31\x51\x82\x17\x80\xe2\x47\x8e\x8e\x1c\x61\x17\xa5\x58\x05\x86\x3c\x4e\x4f\xa2\x63\xf8\x01\x30\x41\x32\x19\x45\xec\x20\x43\x47\x59\x19\x40\x92\x14\xe8\xaf\x0d\x93\xf8\xd1\xbc\xc6\xc0\x37\x80\x07\xb7\x2b\x1d\x4a\xa4\x3f\xe9\x4f\xb6\xcd\x46\x88\x08\x64\xe2\xdf\x10\x81\xdc\xd4\x12\x50\x8e\x5a\x27\xf5\x1d\xfc\xf7\x7b\xfe\x43\xa6\xb1\xb1\xe3\xc1\xfb\xde\x8d\x47\x64\x0c\xd7\x6b\x0a\x0b\xf4\x3f\x9b\x98\x17\x04\x3f\x56\xe7\x84\x53\xa0\x2c\x8f\xf2\xf2\x7e\x43\x14\x96\x14\x4c\x0c\xa7\x97\xa4\x92\xaf\x32\x61\xeb\x75\x65\x42\xf9\xa0\x27\x45\x81\xfe\xd2\x0c\xd4\x88\x12\x7c\x06\x58\x4b\xa0\x3a\x3a\xba\xc7\x89\x01\x1f\xc1\x6b\xc1\x89\x80\x90\x58\xaf\x29\xc6\xef\xf8\xbf\xc1\x7a\xad\x4e\x7c\xa5\x60\x50\xa0\xbf\x6d\xad\x85\x53\x24\x8a\xf0\x19\x48\x86\xbf\xf9\xa2\xc6\x94\xd5\xc8\x4e\xa6\xea\xb4\xcb\x0e\xa8\xa2\x63\x38\x12\xc1\x2d\xd6\xeb\x84\x8f\xff\x4f\xbc\xaf\xa9\xa8\xf2\xfd\x88\x96\x93\x9c\x16\xad\x1f\xd7\x6b\x90\x02\xf0\xcd\xf4\xbf\x96\xce\x32\x95\x05\x23\x4f\xb5\x1a\x1d\x06\x58\x82\x17\x97\x07\x5b\xc3\x44\xb3\x63\x09\xcd\x3c\xc1\x93\x4d\xb9\xa9\x59\x49\x8b\x0c\xef\xfb\x44\x9c\x86\x04\x21\x49\xd3\xe3\xdf\x10\x5f\x76\x9a\x4e\xc4\xcf\xd1\xbb\x31\xa7\x32\x50\x92\x0d\x5f\x6b\xff\x56\x02\x1d\x5b\x48\x09\xd4\x58\x30\xed\xc4\xb6\x7f\xb6\xed\x7f\x83\x9f\x9a\xcc\x57\x73\x42\x7d\x5a\x40\xf4\x0b\xf7\x04\x7f\x29\xc0\x91\x74\x07\xfa\xc6\x96\xeb\xa5\x33\xc5\xff\x83\xae\x9d\x29\xfe\x80\x94\xdd\x32\xdb\xbc\xf0\x5f\xf8\xe3\x3e\x7b\xfc\x2b\xba\x72\xa6\xf8\x6f\x8c\x73\x76\x38\xf2\x8f\x6d\xa7\xe0\x27\x64\x35\xed\x49\x16\xfa\x2b\x27\xf0\x99\x33\x6d\x72\x64\xff\x05\x84\xdc\x43\x06\xa2\x08\x44\xce\x87\x6e\xe4\xfc\xd2\x8d\x9c\xf7\x6f\x3a\x3f\xa2\x95\x98\x1e\xff\x5b\x51\xf2\x83\xff\xc5\x66\xbc\x33\x14\xe5\x67\xfc\xca\xe1\x6a\x91\x91\x20\xe4\x5b\xa0\x62\xb3\x88\xdb\x66\x22\x69\x25\x87\x84\xe1\x07\x92\x70\x3b\x88\x5f\x84\x22\x63\x5b\x45\x06\x80\x14\x5a\x26\xf9\x24\x5d\xb0\xe2\xf2\x0a\x86\x39\x21\xd8\x3d\xfe\x5f\x45\x05\x84\x1c\xc3\x10\xfc\xef\x88\x88\xb0\xb5\x9a\xdc\x09\xfe\x0c\x42\x27\xa7\x69\x46\x20\xca\xd8\x27\x54\x1d\x4c\x4f\x32\x72\x0c\xa7\x80\x92\x51\x26\x3e\xe2\x7e\x3b\xaa\xc3\x92\x1e\x2d\xc4\x96\x4e\xb3\xa2\xf5\x13\x22\x5d\x6c\x59\x70\xf8\x69\x44\xc6\x3e\xfb\x07\x7f\x63\x53\x8d\xbe\x91\xc7\xf7\xb5\x8f\xa2\x29\xe8\xfc\xc0\x06\xb7\x4e\xf7\xc4\x54\xe6\x88\xad\x87\x91\xbb\xee\x40\x3b\x4a\xda\x9f\x60\x34\x05\x9f\x18\xdf\x36\x62\x2f\xd3\x02\x2d\x73\x72\x45\x28\x35\x01\xb4\xe1\xea\x67\xdc\x71\xc5\xab\x68\xbe\x30\xdd\x5c\xf8\x2b\xaf\x90\xb3\x5b\x76\xb4\x8e\x64\xf9\xf4\x25\x34\x1d\x9e\x03\x02\xfd\xbf\x83\x73\xe1\xfc\x57\xa0\x9a\xc3\xe3\x07\xb4\x01\x5d\xf9\x77\xb4\xd5\x5f\xec\x7f\x50\x03\x18\xa2\xff\x97\x5a\xaa\x98\x8b\xdc\xff\x5b\x21\x18\x41\x42\x70\x55\x70\xb9\x72\xa6\x80\xef\x7c\xc6\x24\x26\xc4\xe8\x5b\x73\x79\x0d\xd3\xca\x4a\xba\x95\x7e\x62\xe8\xab\x6d\x97\xe5\x81\xce\x8f\xeb\x75\xde\x70\xf7\xf6\x0d\xe8\x7b\x37\xe1\x59\x6b\x75\xf0\xbf\x80\xd8\x72\xac\x55\xc1\x9f\x56\x81\x4f\x0a\xe3\x59\x34\x4c\xac\x36\x08\x91\xc5\xc4\x4f\x7e\xac\x94\x92\xe7\x16\x9d\x22\xdb\x82\x47\x64\x8c\x22\xec\x1d\x6f\x70\xc2\xe8\x58\xb9\x34\x96\x1c\x31\x12\x94\x3d\x05\x19\x66\x7b\x87\x37\x46\xe0\x0e\x30\xfe\xad\xaf\xfc\xf9\xae\xfa\x83\x61\x4e\x32\xe7\xef\x2b\x70\xc2\x72\xa3\x6c\x32\x00\xe5\x38\x43\x59\xcd\x1a\x01\xa2\xce\x0f\x4c\x48\xd0\xa4\x0a\x11\xab\x1b\x53\xf4\x2f\x69\xa1\xf1\x55\xc0\x67\x22\x43\x7c\x1b\x5d\x8c\x55\xf4\x4a\x23\x15\x5d\x98\x79\x54\x10\x07\x88\x96\xe0\x9b\x5e\xa3\xec\x89\x1d\xac\x55\x84\x14\xc6\xe2\x96\x40\xca\xf4\x72\x68\x25\x3c\x9c\xc6\xd0\x94\xb6\xfb\x6e\xcf\xf7\xdc\x1e\x2a\xe1\x08\xf7\x7d\xcf\xdd\xd7\x3e\x28\xa5\x6d\xbf\x42\x32\x18\xf8\x5e\x6f\x50\x46\x35\xaf\x05\xf4\xf4\x06\x7b\xbe\x37\xd8\x43\xde\xe0\xd0\xf7\x06\xec\xfd\x91\xef\x0d\x8e\x4a\xa4\x03\xe3\xd2\x73\xef\xc8\xdf\x3b\x6a\x70\x73\x96\xbe\x2e\xae\x7f\xe0\xa2\x83\x03\xff\x40\x21\xfe\x49\xa4\x83\x9e\x7f\xd4\x6b\x8e\x87\x50\x8f\xe7\xf9\x4c\x3c\xd6\x81\xba\x3d\xed\x57\x01\x00\xb8\xd2\x3c\x50\x9a\x92\x5c\x9e\xcb\x62\x19\xff\x80\xc7\xb8\xfd\x71\x39\x9d\x92\x4c\x1e\xfc\xf6\xd8\xc1\x2f\xa9\xbc\x08\x71\xe2\xbc\x0b\x68\xf0\x73\x44\x1e\xd0\x0c\x67\xce\xe9\x8f\x3f\xdb\x76\xec\x44\x39\x4f\x99\xe2\x89\x31\xa5\x5c\x65\xc1\x3d\xa1\x7e\xfe\x78\xfe\x8b\x46\xc8\xfb\x45\x68\xe1\xe3\x0e\xc6\x13\x88\x56\x46\xf1\xfe\xa4\x90\xfe\xb0\x02\x89\x21\x73\xce\x2e\x2f\xae\xae\xbf\xca\x90\xc0\x22\x13\xf7\xf6\x63\xb5\x35\x2d\xf2\x99\x6d\xcf\x38\x46\x5a\xce\xa3\x0c\x2c\x94\xdb\x21\x52\xea\x9f\x9f\x9e\x8c\x71\xd4\x49\xc8\x43\x7b\x02\x7a\x50\xdb\x7c\x4a\xa9\xc3\xb9\x7d\xa4\xe4\x53\x19\x45\xab\xda\x9e\xa6\x90\xd8\xda\xd2\xab\x83\xf1\xd4\xb6\x4b\x36\x5b\x33\xee\x8a\xa4\x79\x8c\x29\x8e\x63\x99\x68\xd4\x8a\x12\x1e\xf5\x26\x63\xf3\x96\x82\x5a\x2c\xed\x8c\x23\x4c\x90\x07\xb0\x14\x2b\x75\x02\x21\x08\x40\xbe\x93\x40\x28\x3d\x9a\x42\x59\xcb\x42\x3e\x49\x2f\x9a\xe4\x6d\x7e\x0c\xb9\xdf\xd6\x4f\x51\x42\x0f\xc1\xbc\xdb\x45\x33\xe7\x4e\x3d\x26\xdd\x6e\xa9\x7c\x8c\x8b\xa2\x84\xb0\x31\xfb\x6f\x84\x45\x36\x6c\x37\xaa\x21\xb4\xbd\x41\xdf\xf7\x06\x7d\xe4\x0d\x06\xbe\x37\x18\x6c\x83\xb7\x28\x91\x4f\x9f\x8b\xfb\x5a\x12\x52\x47\x90\x3c\xa3\x44\xb4\x52\xb4\xe9\x0b\xf2\xd7\xb4\x2a\x9d\xeb\xab\x8d\x28\xf5\x9b\x47\x1b\x70\xbe\x83\x1e\x04\x16\x47\x85\xec\xf7\x2c\x34\x78\x46\x2f\xcd\xd8\x77\x5d\x6f\x23\x12\x95\xee\x66\xd0\xf3\xbd\x01\xd7\xdd\xd4\x83\xa9\x56\x2a\xdb\x1f\x58\xe8\xf0\x8f\xac\xcc\x6b\xae\xec\x63\x42\xbd\xfd\x9a\xd1\xe5\x7f\x5a\xd5\x66\xec\x6c\x55\xd5\x1f\x3e\x84\xfd\xad\x55\x1d\xd6\xac\x8e\xff\xd3\x9a\x06\xcd\x35\xb1\xf5\xf1\x87\x0f\xe0\xde\xf6\xba\xfe\xf0\x11\xdc\xdf\x5e\xd7\x1f\x3d\x84\x9b\x58\xd9\x7f\x58\x55\x3a\x4a\x6d\x59\xdb\xe1\xf3\x16\x46\xc2\xcf\xff\x50\x6c\x8e\x03\x17\x82\x06\x85\x28\xdf\x1e\x8f\xf6\x24\xba\xea\xa1\xd0\x85\xb2\xed\x72\x22\xed\x92\x84\x2a\x94\xfd\x98\xe1\x4e\xe2\x9c\x4e\xd8\xf9\xe6\x6f\x42\xfa\xb3\x6d\xab\xf2\x6c\x45\x49\x3b\x41\x53\x1c\x30\xd6\xfa\x0b\x09\xbe\xa1\x45\x93\x5b\x3b\x9a\xe3\xd8\x59\x4e\xf9\x99\xa6\x16\xf7\xec\x0f\xb3\x70\x42\x77\x78\x23\xb2\x70\x34\x05\x4b\x26\x26\x4a\x26\x3b\x2d\xef\x21\x3a\x62\x8f\x99\x83\x89\xd4\x09\xb2\xc6\xf3\x80\xc1\x3c\x68\x3d\xf7\x07\x1d\x6a\xd4\x8b\xb1\x46\x18\xd8\x1e\x7b\x38\xe6\x76\x54\x1b\xc5\x21\x19\x77\xf8\x16\x6f\x98\x7b\xa9\x3c\xe8\x1e\xdd\xa1\x18\x75\x5c\x36\xe9\xad\xd0\xb6\x67\xb6\x0d\x72\x00\x32\x81\x82\x70\x56\x6a\x15\xc0\x7d\xa5\xa1\xa5\xc4\x79\x07\x51\xe0\x5c\x9c\x9f\xbf\xc3\x1d\x17\x45\x60\x64\x09\x4d\xa5\x85\xd8\x71\xd7\x42\xd6\x1d\xe1\x56\x09\x84\x5a\xe3\x4d\xdc\x30\x8a\x6f\x2b\xf1\xad\xe9\x88\x8c\x5b\x29\xa0\x88\x18\x79\x29\x8a\xe4\x78\x52\x26\x7d\x2f\x98\xac\x2c\x6f\x6c\xa7\x4c\xf4\x16\xbf\xf8\x26\x9c\x89\x13\x4f\x2a\x2f\x65\xa7\x23\x32\xe6\x9f\xab\x13\x07\x6b\x06\xc6\x44\xf8\xda\xa6\xea\xfe\xde\x08\xaa\x8e\xa8\x40\x1c\x63\xe7\x0c\x13\x20\x59\xd9\x9f\xb9\xfe\xc0\x45\x83\x43\x7f\x70\x28\xac\xd0\xaa\x60\x3b\x42\xda\x54\x71\x11\xea\x81\x5b\x9b\x01\xa1\x0f\x95\x84\xc9\x5d\x3d\xf4\xec\xfc\xff\xc5\x20\x8f\xa3\xf9\x80\xcc\x20\x24\x69\x94\x27\xfc\xce\x11\x45\x1d\xaf\x1e\xc4\xba\x1c\x0b\xd6\xe7\x7a\x88\xd9\xa7\x63\x73\xec\x29\xa1\xda\x55\xce\x88\x12\x59\xa0\x2f\x43\x25\x0e\xfa\xfa\x6e\x95\x4b\x47\x16\x5a\x4d\xe3\x80\x7e\x0e\x16\x0d\x41\x67\x72\x0e\x09\x66\x5a\x76\xb6\x53\xa1\xaa\x8c\x40\x6c\x18\x3f\x05\x20\x46\xac\x05\x20\x47\x31\x8a\x11\x45\x2e\xf2\x90\x61\x0f\x31\xf2\xc6\x10\xe5\x42\x32\xeb\xf7\x21\xb0\x64\x95\x42\x28\xab\x7b\xfb\x08\x28\xa6\xbe\xdf\xef\xa3\x41\xdf\x1f\xf4\x95\x00\xb6\xe7\xef\x73\x2a\xa8\x87\xa2\x7d\x1a\xab\xe7\x48\x98\x2c\xd4\xfa\xfc\x84\x9d\x87\x36\x61\x7b\x85\x3d\x87\xea\x57\x69\x16\x52\xa0\x95\xe8\x42\xff\xc8\x37\xef\xbc\x9f\x88\x27\x2b\x11\x5e\x0e\xcb\x06\x9b\xd8\xe9\x24\xa1\x59\xb4\xad\xc1\xda\xdc\xce\x3d\xf4\x3d\xd7\xf0\xad\x7e\x22\xaa\xac\xac\x4e\xdd\x46\xf7\xe5\x4e\x73\x24\x09\x66\xcf\xdb\x6c\xc3\x36\x35\x4a\xbe\x45\x5d\x10\xa0\x1c\x27\xc2\x33\x29\xe2\xd1\x38\x33\x90\xb3\xbd\x69\x55\xa0\x10\xbb\xc7\x4b\x35\xae\xe1\x31\xd4\xa7\x10\x10\x60\x8e\x34\x87\x97\xa3\x90\x1b\x1e\xd8\x76\x0a\x26\x02\xf2\x4c\xf6\x77\x52\x54\xb0\x4c\xd4\x61\x78\xcf\xf3\xf7\xbc\x3a\xaa\xcf\x13\xd1\x70\x8d\xf1\x6e\xe8\x2b\x3f\xe9\xbf\x7a\xb8\x5f\x03\x23\xb5\x27\x3d\x87\xd5\x1e\xcf\x8f\xb2\xa9\x04\x2f\xd7\x96\x00\x5f\x4d\x1c\xca\x69\x94\x04\x71\xfc\xd8\x70\xe7\x1f\x49\xe8\x57\x05\xd2\xb9\x5e\x27\xea\x27\x5b\xf8\x0d\xaa\x13\xd2\x32\x15\xbe\x1c\x85\x31\x28\xef\xa3\x4a\xf4\x24\xbe\x79\x00\xb8\x81\x33\x59\x8e\x07\xe3\xee\x3e\x41\xaf\xfc\x5a\x68\x22\xe5\xc7\x6a\x40\x15\x92\xa3\x3c\xa0\x09\x1c\xc6\x5a\x84\xc2\x7a\xcc\xe0\x67\xcc\x2d\x94\x7f\xb6\x88\x1e\xbb\xfb\xb3\xc0\x7c\xff\xc7\xae\xe7\xfe\xc3\xf9\x47\xd8\x05\xfc\x5f\x38\x04\xed\xcf\xe9\x6d\x14\x93\x7f\xec\xfe\xe3\xa1\x0b\x87\xed\xab\x60\x1a\x64\xd1\x3f\x76\x77\x85\xaf\x4d\x62\x5a\x90\x45\x86\x25\xc6\x22\x08\xcf\x93\x66\x63\xec\xd7\xf1\x11\x7e\x77\x26\x2d\x5b\x5c\xdf\xeb\xbb\x1a\xa7\xb2\x24\xaf\x57\x69\x58\xfe\x1f\xf4\xfc\x8a\x06\xdb\x42\xdd\xbf\xb2\xef\xee\xb3\x7d\x7f\xca\x7a\xd9\x34\x5c\xf8\x44\xa6\xaf\xdd\xe8\xf9\xc0\x23\xfe\x35\xef\x91\x55\x33\x64\x78\x32\x5a\xb1\x59\xf7\xd7\xe8\x6e\xf6\xda\xca\x7b\x65\xe5\xe7\x49\x58\xab\xba\x5f\x0f\x32\x2a\xcc\x18\x80\x15\xe4\x8f\xc9\xe4\xa3\xbc\xdf\x10\x1f\x09\x9d\x1f\xff\xa8\xb6\x43\x96\x36\x61\x04\x78\xfb\xbd\x32\x92\x8a\xf4\x89\x55\x26\x17\x87\x12\x4c\x4c\xa2\xd2\x1c\xee\x4b\xd7\x4a\xc6\xa9\x62\x9c\x03\x2b\xd2\x15\xa2\x25\x7b\xae\x44\xda\x40\x13\x1c\x08\x35\x1c\x0a\xf1\xea\xec\xea\xea\xeb\x32\x26\x9f\xa2\x9c\xfa\x1d\x17\x9d\x5d\x5d\x5d\xd1\xc7\x98\xbc\x23\x93\x38\xc8\x78\xec\x2d\xbf\xe3\xb1\xe4\x9f\x19\xa3\x15\xd9\x3c\x74\x16\x47\x24\xa1\x5f\xc9\x84\xaa\x94\x77\x97\x9f\x6b\x8f\xa2\x4a\x23\xe1\x3a\xfd\x46\x12\x55\xd1\xbb\x80\x06\xd7\x59\x90\xe4\x53\x92\x7d\xa4\x64\xae\xf2\xbd\x8f\x62\x5d\xcb\x9f\xaf\x3f\x7f\x3a\x8d\xe3\xb3\x34\x8e\x05\x7a\xba\x4a\xdc\x4c\x79\x9f\x66\xf3\xf3\x98\x30\x7a\x55\x49\x57\x84\xe5\x31\x12\x3f\x93\x30\x0a\x54\xfd\x9f\xa3\x39\xb9\x7e\x5c\x10\x3e\x10\xec\xed\x45\x30\x27\xe1\x45\x1a\x12\x26\x63\xb1\xe7\x34\xd4\xa3\xf2\x25\x88\x58\x6f\xff\xbd\x24\xb9\xee\xe1\x97\x78\x79\x17\x25\xe5\x2f\x5d\xd0\xd5\xcf\x1f\x84\x96\x4d\xe5\xbc\xfa\xf9\x83\x88\x73\x66\x24\x7c\x09\xe8\xec\x8a\xdc\x99\x29\x69\x94\x50\xe3\xb9\x3a\x7c\x57\x3f\x7f\x10\xa3\x95\x66\x7a\xa8\xae\xb8\xc7\x8e\xd0\x9b\xe9\x34\x36\x79\x57\x33\x42\xa8\x6a\xfb\x35\xf9\x4e\xaf\xb3\x60\xf2\xed\xac\x9c\x3e\x9d\xa6\x13\xd2\xe5\x44\xb5\xb7\x40\x33\x9c\x81\x10\x72\x08\x90\xe9\xdb\x99\xba\xba\x9f\x76\xbb\x12\xfe\x03\xcd\xf1\x6c\x34\x1d\xa3\x7b\x1c\x8e\xe6\x63\x74\x87\x23\xf6\xe7\x16\xdf\xd9\xb6\x11\x6c\x9b\x03\x30\xd8\x36\xb8\x1d\xc5\xe3\xf5\x3a\x05\xb7\x28\x46\x13\x88\x6e\x47\x4b\xf9\xb8\x44\x73\x88\x82\xd1\x7c\x8c\x27\xe8\x1e\x42\x46\xfd\x5c\xc5\x4a\xe1\xed\x68\x31\x5e\xaf\x13\x70\x8b\x16\x88\x8e\x16\x63\x29\x85\x97\xe1\x80\x6a\xe1\x5b\xbc\xfd\x9e\xef\x95\x6a\x3f\xae\x13\x3f\xdc\xf7\x0f\xf7\xf9\x2a\x7b\x4e\x94\xeb\x0f\x4a\x2d\xe0\x8f\x1c\xae\xeb\xe3\x7c\xce\x68\x85\x12\x9f\x23\x8b\xa1\x49\x4c\x82\xcc\x4c\xe4\x09\x92\x11\x0a\xb0\x62\xc5\x00\xfb\x5b\x23\xe9\x1e\x56\x01\x13\x25\xbb\x1f\x8d\xa5\x66\x3b\xc5\xbb\x9f\xaf\x3e\x9e\xb7\x9d\x7f\x38\x9a\xa3\x9b\x21\x32\x9a\xd5\x19\xca\xda\x60\x83\x7f\xf7\x50\x8a\x3b\x1c\xc9\x49\x42\x21\xa8\x0c\xa8\x57\x5a\x5b\x80\x64\x68\xf0\xbb\xa6\x8b\x1b\x3a\xa4\xfe\xfb\xd2\x62\x56\x22\x1e\x0b\x8e\x98\xc2\x82\xab\x8b\x8b\x82\x23\x3f\x7e\xe8\x66\xce\x8f\x1c\x33\x35\xe5\x83\x78\x1d\xcd\x49\xba\xa4\x7e\x00\xa8\x53\x3e\x42\x76\x9a\xff\x98\x50\x92\xdd\x07\xb1\x7a\xa7\x9e\xa5\xc5\xa8\xb9\xa7\x68\x79\xa2\x5f\x0d\x25\x8c\xb8\x37\x5d\xdf\xed\x73\xa1\xde\xed\x89\x3f\x1e\x44\xe6\x91\x7f\x8f\x9f\xd8\x18\x9f\xed\xbb\x1e\xa7\x84\xbe\xdb\xe3\x53\xd4\x77\xfb\x42\x6a\xe1\x25\xef\xd5\x4b\x16\x8a\xf3\x67\xf6\xf0\x0d\xfb\xab\x0c\x53\x67\x16\xe4\x86\xec\x8d\x92\x26\x91\x4e\xdc\x47\x0d\xe5\x5d\xf9\xaa\x40\x11\x4e\xb4\xad\xd1\x7a\x6d\xfd\xe9\x4f\x9a\x81\x73\xdb\x99\xca\x26\xc2\xdf\x57\xb7\x15\x14\xe0\xc4\x31\x78\x3c\xcf\x62\xf2\xfc\x12\x67\x23\x17\x16\x54\x28\x51\xe0\x05\x3c\xc2\xbd\xee\x82\x69\x7c\x31\x19\x52\x7f\x82\x52\xd5\x4d\x71\xed\x0b\x22\x13\xc0\x37\xe0\xba\x87\x73\x90\xac\xd7\x23\xc3\xbe\xc3\xb9\x89\x92\xfb\xf4\x1b\xd9\x88\x14\x2b\x68\xd5\xca\x97\xf9\x82\x24\x21\x11\x72\x89\xd5\xaa\xd3\x75\x84\x52\x71\x91\x48\xbe\x93\xc9\x92\x8a\x88\xfc\x38\x91\x97\xe2\xbc\x4a\x61\x0c\xf2\x81\x24\x62\x08\xda\x51\xde\x0e\xe2\x8c\x04\xe1\x63\x3b\x5b\x26\x09\xfb\x44\x44\xf4\x9f\xa4\xf3\x45\x4c\x28\x09\x45\x11\xbc\x58\x5e\x0e\x7b\x8e\x64\x91\xa9\x6a\xc2\x25\x10\x50\x2f\x99\x33\x27\x74\x96\x86\x38\x42\x99\x13\x64\x77\x38\x55\x80\x33\x01\xce\x9c\x90\xc4\xe4\x2e\xa0\x9c\xc3\x69\xb0\x92\x47\x10\x48\xc8\x9c\x9c\xd7\x92\x63\x8c\x97\x70\x92\x26\x34\x4a\x96\x5a\x88\xcf\x8b\x82\xb5\x20\x21\xdf\x29\x6b\x80\xaa\x07\x32\x3e\x93\x50\x9c\x39\x37\xf2\x6f\x90\xdd\xb5\x54\xec\xff\xb2\xc1\x3a\x3f\xef\x47\x6d\x1c\xcd\x31\xc2\x46\xc7\x45\x17\x5a\x99\x13\x46\xf9\x22\xa0\x93\xd9\xf9\xf7\x09\x59\x88\x03\x00\x7b\x23\x90\x5d\x2c\xa9\x29\x32\x6a\xb1\xed\xcc\x09\x6e\xb3\xe5\x82\x47\x37\xe1\x6f\x45\x59\xb0\x95\x60\x63\x72\x14\xb2\x94\x9c\x66\x3e\xee\x49\x9a\xcd\x83\xd8\xe2\xae\xce\x9c\x58\x58\x8b\x13\x36\x78\x69\x42\x86\x46\xeb\xfc\xb2\x1b\x7f\x8f\x48\x1c\x5a\x68\xc2\x47\xbc\x61\xf4\xa4\x01\x21\x7f\x2f\xdc\x04\x44\x71\x45\x51\x8e\x90\xa8\xcd\xb6\x41\x7d\x08\xe4\x84\xca\x9c\x72\x5a\x27\xa2\xff\x45\xc1\xd1\x94\x03\x88\xd2\x42\x2f\x15\xd5\x9d\x55\x09\x34\xb9\x62\x65\xfb\xaa\x6f\x4c\x68\xf6\x49\x89\x1b\x52\xd4\x91\x27\x65\x76\x59\x23\xcb\x9d\x14\x45\x41\x9c\x87\x2c\x58\xe0\xbc\x25\x10\x97\x56\x45\xb9\x3a\x27\x00\xae\xca\x06\x84\x95\xa7\x19\x7b\x12\xd8\x78\xec\x93\x51\x34\xc6\xcd\x46\x41\x45\x4b\x60\x74\xc9\x75\x5b\x45\xbc\x45\x73\xbc\xb0\xed\x05\x58\x80\xef\x60\x34\x86\x10\xb6\xe6\xb6\x3d\xef\x60\xc6\x07\x32\x85\xb5\x10\x41\xdb\x06\x53\x3c\x57\x28\x4d\x33\x03\xf8\xce\xb8\x92\xad\x71\x86\x29\x2c\x3b\x72\xc7\x58\xe6\x48\x90\x39\x52\x03\xa0\x68\x68\xec\x4c\xd3\xec\x3c\x98\xcc\x8c\x73\x26\xe3\xe6\x23\x3a\x6e\xda\xee\xa4\x3e\x98\x73\x14\x15\xe1\x15\x96\xe3\x72\x6b\xc0\x1c\xb6\xcc\xbc\xb8\xca\x4f\xf4\x07\x01\xa8\xe0\x1f\x53\xa3\x15\x09\x0a\xe0\x4a\x3f\xb6\xf9\x97\x02\x19\x4e\xcc\x55\x0c\xc8\x28\x1a\x23\x82\x52\x41\xe4\xa2\x63\x1d\x8c\x97\x92\xc6\xc5\x42\x58\x0a\x02\xc5\x13\x09\x63\x20\x6b\x0b\x6d\xdb\x12\x51\xe9\xca\xad\x20\xd4\xc3\x1e\x22\xeb\xe6\x26\x78\x08\x22\x6a\xc1\x61\x19\x79\x21\x74\x64\x6a\x53\x00\x89\x44\x72\x12\x76\x80\x43\x39\xac\x78\xec\x88\xd7\x72\xe8\xd5\x7b\xe8\x1b\x25\x37\x95\x28\x9b\x8c\x09\x0a\xc0\x64\xa3\x40\x35\x6c\x9b\xe5\x16\x39\x58\x8a\xb5\x04\xf9\xa0\xb1\x91\x2c\x4a\x47\xb1\x84\x23\xec\x08\xe5\x05\x0a\xa0\x1f\x00\x58\x94\x53\xf8\x68\x6e\xba\x44\xef\x84\x23\x2a\x17\xed\xb8\x82\x74\x92\x09\x53\x41\xcd\x85\x39\x62\x05\x2a\x39\x00\x35\x79\x64\x59\x9a\x23\x9a\x62\xdb\x80\x6a\x5e\xa0\x98\x1a\xe5\xcc\x40\x9e\x71\x45\x6b\x9a\x0a\xd4\x28\x68\x2d\x5a\x67\x27\xa2\x04\x46\x4f\x86\xad\xe2\xf5\x8c\xb4\x55\xf5\xed\x30\x25\xc2\x7e\x6b\x91\xa5\xf7\x51\x48\xda\x41\xfb\xbf\xf9\xc7\xff\xdd\x16\x65\x59\x7a\xb4\x96\x85\xd8\x28\x63\x90\xa1\xb2\x03\xa2\x0e\x93\xf0\x18\xc3\x17\x84\xa7\xd5\xd8\xcd\xcd\xe2\xf4\x58\x1f\xb1\x65\x4b\x48\x00\x89\xd8\x1d\x4a\x57\x11\xce\xa1\x01\x1d\x11\x46\x2a\xcb\x98\xb2\x93\xd1\x18\x4b\x20\x23\x44\x1d\x46\x72\x98\xf0\x3f\x9f\xd2\x89\x5e\xd6\x9d\x72\xa4\x2a\x83\x2c\x28\xd4\x1c\x62\xb8\xd9\x16\xe8\x47\x3e\x78\xd9\xa8\xea\x11\x15\xad\xd3\x66\x71\x49\x5b\x2e\xae\xa6\xe2\x4b\x62\xbb\x29\x85\x72\xc6\xd9\x3f\xa5\x13\x9f\x8c\xdc\x71\xd1\xf2\xb8\x79\x07\x6f\x3a\xe7\xe3\x9f\xd2\x09\x26\x5c\x25\xde\x2b\xdf\x48\xcd\x9e\x78\xd7\x1b\xb3\x16\x4e\x29\xc9\xc4\x73\x7f\x2c\x1d\xdb\x68\xf6\x78\x2e\xf4\xc0\x1a\x3b\x5e\xd7\xff\x60\x1c\x0a\x1c\xb9\x43\x45\x69\xb2\x5e\xaf\x8a\x16\xe5\xb3\x89\xf5\x06\x23\x6d\xdf\xf9\x30\x20\x33\x37\xa6\x65\x81\xe7\xda\x8f\xaf\xac\x16\x8f\x54\xdf\xac\x2c\x4d\xa9\x55\x8c\x11\xd1\x5c\xf7\x46\x60\x55\xe9\xa8\x46\x84\x02\x76\xbe\xd2\x05\x7e\x97\xd7\x78\x65\x3b\x47\x11\x5f\x82\xb4\xa4\x33\x09\xfa\xd0\x6a\x36\xf7\x12\xc4\xa1\x41\x89\x39\x14\x51\x94\x5f\x04\x17\x80\x68\x47\x25\x29\x0c\xee\x78\x06\x44\x46\x9b\xca\x98\x81\xc7\xdd\x6e\xf2\x96\x68\x9c\x93\x68\x0a\x14\xce\x04\x4a\x4a\x7b\x31\xc5\xab\x46\x09\x9b\x08\x46\xb6\x3c\x28\x56\xab\xf6\x5e\xfb\x48\x89\x1c\x2e\xa2\x45\x29\xaa\x72\x62\x4e\x15\xb4\xc8\x8a\x3d\xfa\x97\x06\x6f\xba\xd4\xbb\xc5\x16\xc4\x7e\xc5\xdc\x8d\x7d\xf1\xbe\x02\x1c\x3b\x43\xb3\xca\x73\x88\x66\xa3\x60\x8c\x43\x2e\x8e\xc5\x01\xb7\x65\xc4\xa5\x28\xab\x4e\x5b\x16\x5b\xfa\xf9\x46\x72\x83\x75\x7c\xd3\x04\xd4\xe0\x7b\xd5\x0d\x6c\x87\x72\x43\x3c\x01\x1f\xbc\x59\x25\xc6\x98\x31\xd6\xb2\x5d\xeb\x35\xe5\xf0\x1d\x10\x16\x88\x38\xf3\x20\xfb\xd6\xb4\x43\x4b\x39\xa0\x0a\xdd\x3d\x6c\x4c\x05\x04\xcd\xa0\x0f\x88\x73\x73\xc3\xc7\xeb\xe6\x06\xcf\x50\xc0\xd7\xd7\x7a\x0d\x08\x1b\x98\x86\x76\xf1\xd8\x7f\xdb\xe4\x8e\x7b\x88\x08\x6b\x5d\xc0\xc5\xaa\xcd\xe6\xad\xe4\x06\xea\x93\xa2\x40\x77\xe0\xd6\x3c\xc0\x18\x0f\xa3\x74\xab\x40\x85\x88\x73\x6a\x1e\xb8\xf0\x2d\xab\x8e\xa5\xe0\xaa\x69\x01\xe2\x92\x46\x89\x31\xc0\x51\x09\x95\x7a\x5f\x46\x93\x61\xdc\xec\x16\xe4\xea\x03\xc8\x64\x09\xb5\x50\x9a\x26\x1c\x64\x70\x18\xf8\x01\x27\x54\xd0\xb4\x65\xeb\x8f\x39\xdf\x96\xb6\x8f\xfa\x03\x6e\x41\x71\xc7\x06\xe9\xbe\x3a\xb8\x16\xba\x7f\x42\x86\x44\xf7\xfa\x40\xb9\x99\x45\x07\xd7\xd5\x85\x8d\x2d\x36\x48\xdf\xc8\x63\xde\x40\x9f\x06\x92\x51\x26\x42\x6a\x50\x15\xd0\xad\x5c\xaa\x19\xb9\x27\x59\x4e\x00\xd4\xa8\x51\xed\x4c\x31\x03\x5a\x02\x1e\x49\x34\x6b\x67\x91\x2e\x80\x00\x34\x12\x25\x2a\x7d\xb6\x5c\xf2\x09\xca\x34\x3f\xc8\x0a\xfd\x52\x31\x80\xac\x60\xcd\x15\x57\x47\xf8\x3b\x3a\x37\x68\x6b\x65\xac\x1a\xff\x1c\x71\xf6\x58\xb7\x6f\x90\xd1\xe1\xc8\xbd\x8a\xb4\xc7\x99\x88\xfc\xcd\xcf\x6f\x32\x4e\x1d\xfb\x69\x86\xb8\xd3\x2c\x8a\x3f\x54\xb6\x28\x9e\x54\xdb\x32\x59\x92\x21\x98\xd4\xb7\x16\xc5\xcf\x1f\x20\xea\x10\x58\x31\x05\xe7\x0c\xde\xa2\x42\x7a\xd1\x18\x97\x5a\xd6\x14\x17\xfe\xd0\xb6\x25\x57\xee\xd2\x12\x07\x4d\xb9\x35\xd0\xb1\xda\xad\x0b\x94\xd3\x74\xe1\x57\xee\x84\x74\x67\x5c\xe9\x72\x51\x6b\xdc\xc8\x1d\x1b\xdb\x55\x55\x66\x21\x42\x66\x11\x27\x55\x62\x4a\x1f\x62\x47\xba\x0f\xe2\x02\x6d\x9c\x55\x1b\x27\x81\x83\x86\xc9\x82\xa4\x56\x86\xa5\xb7\x0c\x11\xde\xb4\xf8\x09\xe4\xfe\xaa\x4e\x64\x7c\x74\xb5\x48\x93\xa1\xe4\x59\xc1\xa5\xd3\x49\x34\x16\x6c\x54\xef\x74\x89\x6c\x15\x9d\x60\xf7\x78\x67\x27\x52\xa0\xce\xf5\xd1\x89\xc6\x28\xc0\x69\x7d\x84\xf8\x56\xcd\xf8\x86\x23\x36\x6f\x58\xca\xdb\x24\x09\x2d\x89\x07\x2d\xde\xbd\xc5\x9a\x0a\x75\x70\x30\x31\xb9\x29\xb2\x94\xfc\x62\x41\x14\x1b\xc9\xa5\xf0\x22\xca\xca\x6d\x3b\xae\x12\xf4\xdb\x54\xcb\x3e\x65\xe5\x65\x1a\x37\x96\xa9\xe5\x2f\x0b\x35\xbf\x30\x52\x0b\xa5\xc6\xc8\x5f\x5d\x57\xa1\xe0\xc6\x3a\xf1\xa6\xf2\x87\x66\x8f\xed\x9c\x06\x94\xeb\xf7\xdb\x0f\x11\x9d\xa5\x4b\xda\xe6\x9f\xb7\xd3\xac\x2d\x5b\x60\xfd\x8e\x06\x17\x45\x81\x84\xde\xa3\x66\x76\x54\x86\x33\xde\x3a\xf3\x89\x98\xf9\x52\xbf\x56\x9b\xf9\x64\x2c\x30\x42\x37\x66\x51\x2f\xce\xa8\x3a\x51\x32\x08\x26\x6f\x7c\x64\x36\x53\x92\x56\x24\x40\x64\x8b\x82\xed\x36\x16\xff\xcd\x17\xd9\x7a\x6d\x29\xf5\x09\x7f\x86\xb6\x6d\xd0\x8e\x6d\xd3\xb7\xd8\xec\x35\xdf\xaa\x18\x27\x52\xfb\x54\x3a\x34\xe9\xd3\x5f\x15\xad\xea\x22\x22\x72\xf9\x50\x94\x0e\xc1\x36\xee\x25\xa4\x2b\xa3\x1a\x26\xe9\xf3\x37\x4a\x37\x03\x02\x58\x20\xf5\xb0\x69\xf5\xfc\x02\xae\x61\xf4\xd9\x11\x9e\xac\xd5\x8e\xf3\xc4\x61\xd9\x1c\xfe\xad\x6f\xa8\xbb\x64\x0e\xa0\xb9\x0f\xd6\x9c\x97\x88\x93\x93\xd9\x3b\x7d\x66\xd4\x05\x8a\xc5\xe9\x1b\x2a\x2f\x22\x95\x50\x54\x32\x53\x91\x8f\x42\xb4\x2c\xd0\x34\x4a\xa2\x7c\xb6\x05\x0b\x62\x2b\x59\x51\x41\x56\xfa\x94\x5c\x27\x2b\xca\xc9\x2a\x33\xcf\x27\xa6\x13\x50\x65\xc4\x33\x63\x5e\x51\xa6\x0f\x30\x10\x3d\x80\x8c\x35\xb1\x29\x8e\xea\x1f\xd8\x44\x41\x83\xbc\x79\x72\x3b\xcf\xb6\x6e\x15\x89\xa1\x57\x51\x27\x55\xd6\x4a\x0d\x40\x53\x14\x1b\x7c\x21\x8a\xd9\xbe\x1a\x4b\x4e\x10\x50\x4a\xe6\x0b\x7e\x55\xac\x36\x5c\xae\x66\xf4\xeb\xba\x69\x73\xa8\xf4\xd6\xbc\x52\x87\x4d\xff\x3b\x0f\x4c\xa5\xcf\xc3\x3e\x45\xf2\xfc\xeb\x67\x05\xd2\xfa\x5c\x83\x52\xd4\xd4\x9b\xbb\x07\x1b\x5b\x52\x80\x0d\x2d\x10\x1d\xea\x5b\x0b\x7f\x55\xa8\xd0\x36\x77\x4a\xba\xfa\xba\x4c\x68\x34\x27\x38\x2b\x15\x8c\x5a\x3a\xb4\x32\xae\x58\xab\xe7\x6d\xe3\x76\x66\x41\xc0\x43\x0c\xaf\xf8\x1d\xc7\xd3\x10\x6a\x7d\x57\xc1\x1a\xf2\xd8\xf7\xfc\x5a\x8c\x87\x7f\x77\x6e\x6e\x48\xfe\x39\x0d\x97\x31\x19\x52\x7f\xa5\xa0\xaa\xd9\x11\xca\x91\x0f\xce\xcd\x6d\x70\x4b\xe2\x2f\x69\xfc\x38\x8d\xe2\xd8\xb6\xad\x65\x22\x9c\xbb\xc2\x32\x42\xb0\x0c\xfd\x6d\xdb\xf2\x87\xf3\x10\x64\x49\xf5\x09\x58\x7f\xe2\x05\xed\x2e\x64\x49\xec\x68\x1f\xa7\x41\x48\xc2\xf6\x3c\xcd\x48\x9b\xce\xd8\x21\x3f\x99\x90\x76\x2a\x26\xaa\xbd\x08\xee\x88\xd3\xbe\xe6\x6e\xa3\x79\x7b\x91\xa5\xb7\xc1\x6d\xfc\xc8\xf5\x01\x21\xc9\x23\xee\xcd\xb8\x1b\x25\x94\xab\x97\xdb\x41\x12\xb6\xe7\xc1\x63\x7b\x16\xdc\x13\xde\x20\xf2\xef\x25\x49\x26\x24\x6f\x47\xd3\x76\x18\x4d\xa7\x24\x63\x5b\xc9\xbd\x30\xc0\xc8\xdb\x6c\x66\x66\xa4\xad\x9a\x93\xb7\x83\x8c\xb4\x83\xc5\x22\x8e\x48\xd8\x16\x1f\xd3\x88\x2d\x37\xa7\xfd\x71\xda\x7e\x4c\x97\xed\x30\x6d\x27\x84\x84\x6d\x9a\xf2\x86\x57\x3e\xaf\xf5\x01\xb5\xd9\x0c\xd4\x7a\xbc\x9b\xa4\x67\x69\x32\x8d\xa3\x09\xe5\x57\x31\x24\xe0\x65\xdd\x3e\x2e\x82\x3c\xe7\xa5\xb1\x81\x8a\x92\x3b\xc7\x82\x68\xdb\x04\x70\xcf\xbe\x95\xd7\xf7\xbd\x3e\xea\xbb\x07\x7e\xdf\x3d\xe0\x14\xf0\x0c\x6e\x0e\xbf\x41\x63\xff\xf0\xbb\xb4\x23\xf6\xcf\x21\xf7\xd1\xe0\x6f\x3c\x57\xf8\x6b\xb0\x7f\xf7\xd8\x3f\xfb\xec\x9f\x01\xfb\xe7\x40\xdc\xbd\x0d\xc4\x9f\x3d\x7e\x85\xe7\x7b\xc8\x73\x7d\xcf\x45\x9e\xe7\x7b\x1e\xf2\x7a\xbe\xd7\x43\x3d\xbf\x87\xfa\x7e\x9f\x5f\xe5\xf5\xdd\x01\xbf\x78\xeb\xbb\x7b\x68\xe0\x0f\xd0\x9e\xbf\x87\xf6\xfd\x7d\x74\xe0\x1f\xa0\x43\xff\x10\x1d\xf9\x47\xc5\x98\xd1\x2e\x1a\xf5\xdd\xfd\x71\x79\x2c\x00\x70\xd5\xda\x7d\xd3\x69\xb5\xdf\xb4\xff\x94\xde\x93\xec\x3e\x22\x0f\xed\xf6\xf9\xfc\x96\x64\xed\x9d\xf6\x5f\x82\xfb\xe0\x8a\x9b\xbb\xb5\x4f\xd9\x44\x4d\xb8\x09\x43\xfb\x7d\x16\xcc\xc9\x43\x9a\x7d\xe3\x9f\x4d\xd2\xc5\x63\x16\xdd\xcd\x68\xfb\x4c\xff\xea\xb9\x9e\xb7\xd3\x73\x7b\x6e\xfb\x3a\x8a\x43\xd2\xfe\x98\x4c\x1c\x4e\x30\x6c\x2f\xc9\xa2\xdb\x25\x4d\xb3\x9c\x7d\x6d\xfc\xf7\x25\xcd\x28\x27\x14\xb3\x18\x77\x7f\x87\x95\xd5\xbe\xa2\x59\x7a\x2b\xca\x79\xd1\x67\x87\xe2\x33\xd6\x6a\x59\xfb\x69\x1c\xb7\xf9\xeb\xbc\xcd\x8e\x21\xd9\x3d\x09\x79\x51\x7f\x62\xa2\x7a\x92\x93\x76\xbb\xfd\x49\xfc\x0a\xdb\x6c\xc5\x65\xed\xcf\x1f\xaf\xdb\xf2\x65\xad\xce\x2b\x42\xda\x33\x4a\x17\xb9\xbf\xbb\x9b\x05\x0f\xce\x5d\x44\x67\xcb\x5b\xc6\x77\x77\x09\x1b\xba\x7f\xe5\xe2\xaf\xf3\xaf\x7c\x77\x1e\xe4\x94\x64\xbb\x9f\x3e\x9e\x9d\x5f\x5c\x9d\xf3\x1a\xe5\x92\x68\xb7\xdb\x7d\xa7\xe7\x3a\xfb\xad\xf6\x9b\x5d\x21\xf8\x33\xe6\xd9\x9a\x07\x51\x72\x96\x26\x94\xef\x72\xec\x6c\x61\x4c\x16\x67\xf1\x28\x2a\x45\xf2\xb4\xc4\xb3\x0e\x30\x41\x39\x4e\x46\xc1\xb8\x95\xaf\xd7\x80\xff\xec\x62\x6b\x97\x63\x75\x59\x63\x28\x01\x80\x23\x96\xc1\x74\x81\xd2\x91\x4d\xe2\x96\x78\x8b\x57\x05\xca\xd7\xeb\xaa\xf8\x20\x76\x06\x3a\x34\xf6\x86\xb3\x74\x19\x87\x9c\x3d\x4c\x23\xc6\x0c\x38\x5f\x6b\x5b\x5d\xd2\xb5\xda\x19\xf9\xf7\x32\xca\x48\xd8\xbe\x7d\xf4\xdb\x56\x97\x0a\x1c\xf8\xe7\x3e\x84\xfc\xea\xa8\x74\xb7\x5a\x62\xb6\x7d\x2c\x72\x34\x91\xd8\xd5\xb7\xc1\xe4\x1b\x0a\xf9\xb1\x9f\x9b\x88\x80\xa5\xb6\xc8\x9d\x61\xf7\x78\xf6\x56\x3d\x1f\xcf\xba\x5d\x68\xc9\x6d\x80\x6d\x26\xcb\xd1\x6c\x3c\x0c\x47\xb3\x31\x8e\x99\xb8\xc2\x5b\x57\x4d\xa7\x3e\xff\x93\x02\x96\x64\x5a\x5e\x9a\xd7\xf4\x21\x44\x71\x61\xb0\x64\xbd\xeb\x3c\x44\x49\x98\x3e\x34\xb3\xeb\x45\x96\x4e\x48\x9e\xdb\xb6\x3e\xeb\xcb\x94\x31\x6b\xc1\xaa\xd0\xda\x01\x21\xb3\xca\x97\x90\x47\xf9\xe0\xdb\x1e\x5f\x90\xc6\x4f\x1e\x0b\x18\x95\x4a\x7c\xdb\x06\x19\xae\x26\x39\x37\x37\x9c\xdb\x67\x43\x90\xd4\x74\x3c\x5c\x30\x45\x51\x63\x6a\xf3\x35\x73\x84\x99\xc4\x3a\x04\x11\x9f\x0d\x4c\x51\xa4\x67\x03\x67\xd0\x57\xe9\xa3\xb1\xf9\x82\x42\x94\x8c\xc8\x18\x47\xd5\xb8\xfc\xc4\x30\x93\x24\x1c\x53\x1f\x16\x50\x31\x5f\x4c\x11\xbf\xf5\x6f\xca\xfe\x63\x9a\xc6\x24\x48\x40\x22\xbc\x7c\x8d\xc7\x6e\x49\xe4\x05\xa2\xce\x0d\x09\xbe\xdd\xe4\x84\x24\x5c\x73\xa1\xc6\x01\xcb\x28\xb1\x3e\x41\x72\xfa\x7d\x8a\x14\x46\x8c\x9f\x14\xd0\x07\xc4\x18\x36\x19\x91\x16\x51\x33\x4d\x7e\x08\x0b\xc0\xd8\xb3\xf5\x27\xbe\xca\x77\x77\xd8\x9e\x98\x25\x41\x9c\xef\xde\x66\xe9\x43\x4e\xb2\x1d\x92\xdc\x47\x59\x9a\xb0\xc3\x94\x6c\x1a\x1a\x69\x6a\xac\x79\x30\x54\xb6\x0e\x39\x27\xb5\x70\xb8\x04\x59\xa5\xe4\xa0\xb1\x5f\x3a\x6e\x01\x11\x61\xc3\xf5\xee\xf2\x33\x26\x4e\x94\xbf\x8f\x32\x32\x4d\xbf\xf3\xdf\x67\xb3\x2c\x9d\x13\x4c\x9c\x65\x4e\xb2\xd3\x3b\x92\x30\x61\x7d\x16\xe5\x34\xcd\x1e\x31\x71\xe2\x54\x70\x73\x4c\x1c\x41\xba\x52\xae\x92\x07\xff\x0d\xa9\x2a\x27\xf1\xd4\xb6\x65\x10\x23\xf1\xc0\xfe\x75\x44\x83\x31\xc6\xda\xbf\xa6\x61\x01\xfc\x22\x17\x07\xff\xa2\x1a\x08\x4d\xbd\xda\xbc\xcc\x4b\x27\xdc\xc6\x46\x57\x5a\x26\xf0\x62\xd4\x23\x36\xdf\x6c\x94\xa2\xba\xa9\x4b\x29\x13\x78\x29\x7a\x18\xcc\x37\x1b\xa5\xc8\x61\xd3\x85\xe8\x67\x5e\x86\x1a\x54\x23\x7d\xa3\x84\x24\xb8\x8f\xee\x98\x48\xa9\xcb\x30\x52\x78\x29\xfa\x19\x57\xde\x59\xc2\x3d\xbd\xa1\xa4\x72\x62\x5b\x9a\x08\xa8\x04\x6a\xa6\x43\x56\xa6\xcf\xaa\x6a\xe9\x09\xce\x5a\xf2\xb8\x3d\xac\x74\x5d\xe5\xd2\x43\x91\xc8\xbb\x2c\x99\x4f\x76\x4a\x65\x53\xbd\x8d\x94\x8f\xcc\xb0\xda\xfc\xb2\x59\xbe\xf5\xe9\x31\xf9\xde\x06\x6c\x27\x9b\xa7\x21\x81\x56\xcb\xa4\xc6\x54\x9e\x8d\x85\x1e\x5d\x2d\xe7\xcc\x99\x70\xc2\xe5\xb8\x33\x0e\xa3\xff\x00\xb6\x0c\x7a\x0e\x64\xf0\x0f\xfe\x55\x13\xad\x71\x6c\x8c\x38\xbe\xce\xa2\xbb\x3b\x92\xb5\xcc\x65\x91\x73\x38\x9e\xa6\x75\x2b\x25\xe7\xcd\xb5\x8a\x54\xe6\x90\xdc\x2e\xef\xcc\xc7\x45\x46\x26\x01\x25\xe1\xce\x94\x04\x74\x99\x91\xda\xba\x16\xcc\xf3\x3f\x5d\xdb\x8a\x2d\x1a\x6b\x33\x69\x65\xce\xa7\xcb\x0f\x1f\xce\xbf\x72\xbb\x8c\x55\x9c\xde\x95\xea\x66\x75\x02\x60\x89\x8e\xe3\x68\x3b\x35\x58\x20\x7e\x28\xd8\xc8\xc8\x53\x6b\x39\x09\xdf\xa5\x37\xb2\x8a\xe4\x5a\xde\x28\x99\xa6\x9b\x59\x79\x6a\x2d\x27\x1f\xc0\xcd\xac\x3c\x79\x58\x79\xaa\x7e\xe9\x3f\x55\x68\x90\xe7\x24\xa3\x9b\xa5\xca\xf4\x6a\x6e\x09\x64\x11\xe1\xa4\x55\x8e\x6c\xf4\x14\x4d\xd0\x20\x4a\x48\xf6\x04\x55\x18\xd9\xd3\x87\x84\x64\x8d\x6f\x96\x34\x8a\xb7\x53\x92\x3e\x10\x6d\xd2\x0f\xbf\xd2\xf8\x8f\x69\x68\x91\x45\xf7\x01\x8d\x7e\x33\xb6\x76\xb6\x83\xca\xfb\x84\xc7\x11\xa9\x5d\x47\xb2\x41\x1a\x25\x28\x1a\x63\xa2\xb0\x5f\x7c\x4b\x4b\x43\x2c\x3f\x06\x2e\xca\x1c\xd1\x41\x08\x7e\xfd\x61\x95\x14\xfe\x0f\xab\xa8\xd8\xf9\x61\x75\x53\xfc\xca\x6f\xb7\xee\x08\x7d\x1f\x30\x16\xff\xf8\x3e\xcd\x9a\x76\x73\x32\x5a\x8c\x59\xc6\xbc\x92\x71\x8e\x88\xf3\xf1\xe2\xe3\xf5\xcd\xfb\xd3\xb3\xeb\xcb\xaf\x7f\xc7\xc4\x39\x53\xd3\x80\x89\xf3\x55\x6e\xd7\x6a\x3d\x4c\x62\x76\x92\x4b\xcd\x6b\x06\x36\x72\x4c\x14\x5a\xc9\x0b\x59\xf9\x81\x88\x92\xe1\xf0\x49\xc2\x54\xfc\x5d\xaf\xcb\xcb\x82\x49\x30\x99\x11\xd1\xaf\x30\xe2\x6d\x0d\xb2\x47\xc8\x6f\xaf\x27\x33\x22\x72\xca\x4b\xde\xa9\x68\xee\xe7\x20\x09\xee\x48\x76\xb6\xed\xc3\x86\x6c\x95\x62\xa2\xfc\x1d\xc9\x69\x96\x3e\x92\x50\xdf\x62\xe8\xb4\x28\xb9\xc3\x1d\xaf\x88\xd3\xf4\xdb\x72\xa1\xf5\x77\xf5\xef\x36\xd5\xb8\x67\x41\xc2\xe5\x6a\x26\x84\xb5\x7f\x75\xc4\xf7\xbf\xb6\xb9\x56\x8a\x9f\x78\x79\xc7\xdb\xb3\x20\x6f\xdf\x12\x92\xb0\x73\xbd\x28\xaa\x9c\x60\x75\xa1\x61\x0e\x9f\x23\xb4\x71\xd1\x6f\x44\x02\xd0\xc8\xef\xd4\xed\x45\xb5\xdd\x2e\x9a\xc9\x20\x04\x5c\x81\x16\xfd\x46\xde\xe9\xec\x53\x60\x5c\x97\x57\x86\xc0\x2d\xc4\xed\x39\xa9\x97\x49\xc2\xf5\xda\x08\xcd\x33\x04\xb2\x74\x24\xcb\x82\x0d\x91\xf2\x19\xb1\xf0\x99\x1b\xd1\x71\x4b\x45\xc3\x6f\x9a\x92\x11\x1d\x23\x26\x3e\xeb\x3c\x13\x9d\xea\xc8\x4e\xda\xb6\xfe\x09\x20\x2c\x9e\x1b\x1e\x08\x0b\x3e\xc8\x1f\x93\x7f\x11\xf3\xd8\x46\xb0\xd6\xfa\x02\x17\xf1\xab\xdc\x4b\x96\x0f\x02\x93\x36\x21\x22\xc5\x54\xaf\x07\x4d\xcc\xbf\x67\xf2\xcb\x62\x5e\x48\x00\x86\xa6\xb1\xb1\x67\x22\x08\x92\x8c\x6d\x61\xdb\x1d\x71\x9b\x9d\x2f\x82\x09\x29\x8f\x2a\xfa\x4b\xf2\x7d\x11\x24\xe1\xa7\x74\x12\xc4\x9f\x4a\x32\x2e\xcd\x7e\xa4\xef\x16\x37\x41\x33\xcc\xc9\x0c\x8f\xe4\x8e\xd7\xc1\x98\x94\x25\xde\x11\x7a\xb9\x90\xf7\xc3\x56\x1e\x25\x77\x31\xa1\x69\x62\x19\xc6\x16\xf9\x8b\x3f\x17\xa6\xb9\x34\x0a\x28\x31\x0b\x90\x66\x8a\x7c\xcc\xa5\xb0\xc4\x7b\x9d\x95\xbd\xce\x2a\xbd\x4e\xcc\x1a\x36\xbb\xcc\x84\x00\x15\x26\xba\xc3\x4e\x65\xba\xd9\xea\x60\xa5\x28\x2e\xa9\x1e\xca\x23\x1d\xf2\xac\xa8\x1b\xf4\xd6\x6c\x8e\x97\x86\xa1\x68\x19\xae\x4e\x7e\xce\x12\x2b\x1f\xae\x8c\x8e\xfb\x19\xd2\xcd\x61\x07\x20\x73\xdc\x12\xdb\x16\x2d\xb6\x6d\x31\x27\xb6\x2d\x06\x57\x18\x77\x26\x50\xdd\x98\x94\x2b\x06\x47\xea\x28\x59\xb9\x83\x2f\x39\x83\x6d\x37\x18\x57\xa4\xe5\x32\x4b\xcb\x65\x86\xd2\xe2\xf7\xb6\x9c\xad\x66\xd1\x85\xf5\x5a\x34\x7d\xb3\xed\x6a\x6c\xcb\x06\xff\x27\xe3\x64\x8c\x51\xa7\x5a\x51\x55\x89\xf2\xa2\x42\x25\xa1\xac\xd7\xaa\x78\x51\x34\x87\xcd\x61\x7d\x69\xe8\x03\xdb\x04\x5b\x9b\xdc\x40\x2b\x59\x44\x27\xdb\x92\x1f\x58\xbc\x88\x44\x44\x95\x2a\x29\x7f\x59\x35\x2b\xdf\xc6\x2c\x2b\x44\x9a\xe8\x3b\xbf\x96\x22\x66\xbd\x16\x94\x61\x24\x85\x35\xba\x5e\xb9\xf2\xe0\xc0\xda\x7a\xcf\x83\x0f\x66\x25\xb6\xe3\x56\x2e\x8d\x53\x94\x1a\xcd\x9d\xa8\xe6\x96\xb7\x88\x4c\x22\x91\x2c\x37\x47\x11\x76\x8f\xa3\xb7\xda\xd6\x21\x92\xee\x36\x2b\x85\xd0\xe7\xa7\x02\x0a\x6f\x1a\x91\xcc\xcf\x91\x0c\xfc\xb3\x2c\x30\x8f\x68\x98\x8c\xd2\x31\x5e\x0e\x19\x37\xc8\xd1\x4a\xbf\x84\x3e\x4f\x81\x4c\xf8\xc9\xdf\x3d\x26\xc1\x3c\x9a\x30\xce\x57\x3e\xe1\x4e\xc0\x73\x98\x23\x1b\x9a\x21\xe7\xca\x11\x42\xa3\x68\xcc\x18\xc2\x86\x84\x65\x90\x8c\xb1\xcc\x57\xc5\x71\x6d\xdb\x88\x10\x91\x7b\x86\x1c\xd0\x55\xd9\x7f\x3f\x42\xba\x4d\x7e\xc7\x2b\x36\x82\x8e\x65\xb6\x3d\xe1\x15\xa4\x4a\x69\x24\xa8\x6d\xc2\x69\x23\x65\x0b\x90\xfd\x62\x4c\xf3\xfa\x71\x41\xf4\x66\x96\x83\x08\x8a\x64\x23\x29\x33\x4d\x88\x67\x35\xe7\x3b\xc1\x1f\x50\xa6\xd4\x4d\xdf\xc8\x63\x0e\x28\x44\x09\x07\x39\x52\x20\xf7\xc7\x89\x72\x88\x8a\x30\x1d\x65\xa3\x64\x3c\x6e\x45\x25\x6b\x88\x4a\xd6\x60\x8c\x2c\xb7\xaa\x23\xdb\x64\x37\xa9\xd0\x7a\x99\xbc\x26\xf4\x50\xa6\xb4\x99\x4a\xcb\x6f\x9e\x55\x80\x04\x42\x60\x99\xc2\xa9\x05\x6b\x21\x57\xe1\x8a\x49\xb5\x98\x16\x35\x21\x76\x21\x05\xd5\xfb\xba\xa0\x2a\x26\x58\x5e\x28\x6a\x31\xd7\x14\x55\xe5\x14\x4b\x21\x95\x95\x82\xa9\x14\x43\x97\x71\xcc\xad\xdd\xe4\x4b\xbd\x53\x87\x3c\x35\x91\x17\xad\x41\x48\xae\x95\xed\x91\x69\xfa\x52\xd2\x8a\x4a\x9e\x97\x92\x0d\x2c\x94\x46\x12\x34\xa0\x11\xd6\xcb\x55\x97\x73\x95\xba\xaa\x9d\x2a\xf9\xc2\x3c\xf8\xa6\x33\x81\xb2\x57\xd5\x3e\x41\xb8\xd9\xfa\x42\xf2\x6a\x71\x81\xb9\xd2\x45\xfb\xb4\x10\x66\x2a\xdc\x8e\xf9\x29\x01\xe9\x57\x2d\x20\x09\x86\xc8\xde\x28\x17\x9d\xfc\x05\x22\x52\x1b\x3c\xa6\x4b\x75\x07\x2a\xee\xa5\x64\x49\x3f\xac\x2a\xcd\x2f\xe0\xaf\x15\x69\xaa\x1c\xeb\xba\xed\x35\xeb\x89\xb1\x6a\x13\x63\xd5\xa6\x05\x0e\x41\x75\x14\x9b\x26\x1a\xb6\xe6\x20\x91\x36\xa8\x19\x4e\x50\xaa\xb0\x4c\x8c\x09\x4e\x60\x51\x5f\xff\x84\xab\x8c\x81\x8b\x22\x76\x56\x8e\xee\x12\x08\x56\x05\x97\xc6\xa0\x41\x6b\x6a\x7f\x64\x3b\xc5\x3d\x0f\x27\xbd\xfb\xcf\xd1\x3f\xfd\x71\xd7\xe7\xff\xfe\xb0\x2b\x09\xfb\xb6\x4a\xd8\xe5\xf9\x6b\xaa\x94\xc1\x44\xff\x34\x4f\x5d\x72\x93\xc8\x38\x5b\x14\x3f\xab\xaf\x39\xd1\x04\xa2\x17\x1b\x6b\x96\x54\x33\x54\x4e\x57\x37\xb4\xc2\xb5\xb6\x71\x07\xe5\xe2\xf0\xb2\x7c\x71\x29\xd9\x09\x36\xd2\xa4\x41\x17\x59\xf5\x24\x3d\xc5\x6f\x64\x5e\xd9\xf5\x17\xe4\x9c\x06\x51\x7c\x45\x28\xdf\x3a\xaf\x88\x64\x04\x37\xe9\xe2\x05\x6d\xe7\x16\xa3\x4f\x66\x2c\x34\x9d\x99\xde\x09\xe4\xa1\x9d\xea\xf0\x56\x62\xbc\x49\xb6\x29\x25\x57\x08\x93\x9d\x15\x2a\x0d\x76\xc4\xf1\x0a\x24\xb0\x61\x62\x47\xc9\x18\xd7\xba\xc2\x92\xb2\x62\x99\x94\xf5\x29\x75\xc5\xb6\x8a\x5e\x34\x35\xca\x02\x7c\xb3\x09\x74\x5c\x79\x59\x99\x92\x8d\x97\xaa\x91\x74\x8c\x1a\x7b\x49\xd9\x40\x09\xe9\xa7\xd1\xff\xd1\x94\xb3\x68\x45\x3a\xe2\x17\x39\xf2\xa8\xb1\x5e\x1b\x27\x0d\x1e\xae\x95\x49\x0f\xdb\x8e\x18\x52\xdc\xbf\x17\x41\x68\x31\xa9\x75\xa1\x76\xba\x48\x95\xe0\x96\xb6\xb8\x5b\x87\xee\xc1\x2c\xc8\x81\x96\x2d\x5b\xe5\xaa\xb4\x6d\x10\x19\x8b\x54\x4b\x77\x09\x54\xf1\xcf\xd9\xa1\x43\xe7\xaa\xce\xae\x99\x65\x68\x54\x16\x84\x21\x48\xa0\xbf\xd9\x56\x1c\x95\x98\xda\xc6\x71\xbb\xa6\x84\x68\xd5\x37\xa6\x52\xb7\x5e\xe1\x3d\x9c\xd3\x55\x52\x74\xf3\x2b\xfa\x41\x88\xb2\x22\xe4\xf0\x2e\xb7\xc4\x5c\x01\x46\x91\xe5\x70\x54\x1e\xa5\x9e\x45\x61\xc3\x44\x69\x32\x7c\xe6\x3d\x20\xd0\x6f\x6a\xeb\xb0\xda\x4e\xa3\x39\x3e\x29\x74\xff\xdf\xcb\x7d\xe6\x95\xad\xd4\xdf\x0f\xb7\xa4\xbf\xb0\x55\x4d\xed\x30\x9b\xb7\xe1\x6e\x56\x65\x86\x23\x32\xd6\x78\x5b\x1b\x6f\x6a\x0b\xdc\xa8\x01\x16\x15\xd1\xc1\x44\x2e\x7b\x49\xe7\xcd\x8f\x87\xdb\x5f\xf1\x72\x5f\x32\x08\x9b\x1f\x11\xa7\x14\x9a\x0a\xb6\x90\x94\xda\xae\x23\x55\x37\x3f\x07\x71\x14\x9a\x3d\x52\xe7\x48\x25\x2b\xd8\x76\xa9\x5d\xa9\x51\xbc\x7a\xc1\xe4\x66\x9e\xcf\x50\x42\x48\x65\xe8\x56\x3d\xc1\xc6\xde\x5f\x1e\xce\xf4\xe1\x26\x43\xba\x40\x76\x1a\xdd\xba\xec\x38\xba\x9f\x64\x80\xef\xd3\x8c\x9d\x0d\x94\x7d\x40\x6d\x97\xe1\x93\x59\x68\xa5\x4b\x99\xbb\xc2\xca\x6b\x5f\x6c\xac\x69\xba\x75\x4d\xd3\xda\x9a\x6e\xaa\x09\x22\xaa\x1a\x6b\xb2\xe2\x6d\x9b\x88\x62\xec\x59\xb5\xe5\x4f\xec\x3e\x3a\x84\x57\xb9\x27\xfc\x07\x6c\xa9\x52\x25\x63\x47\xa5\xca\xaa\xde\x7a\x5d\x21\x19\xd7\x77\x90\xf2\xf7\x88\x8e\xb5\x2d\x3f\x6b\x99\x3a\x82\x96\x67\xce\x91\xab\xda\x0b\xb2\x86\x09\x49\xc6\xb0\x56\xde\x90\xfd\xf3\x92\xf5\x51\x6d\xba\x82\x1f\xac\x48\x65\xda\x58\xb0\xda\xa0\x63\xd0\x24\xc1\x99\x5c\x63\xe3\x0d\x1e\x8d\x21\x14\x6e\x10\xe5\x09\x9f\x1a\x27\xfc\xac\x80\x45\x54\xaf\xb7\x51\x74\x11\x8a\xb4\x1d\x8f\x1b\x9e\xaa\x30\x77\xac\x65\x15\xf3\xcf\xcd\x7e\x24\xea\x72\x69\x83\x46\x54\x7f\x4a\x29\x73\x14\x95\x7d\xa9\xa4\x3e\xdb\x0f\xb6\x34\xbf\x25\xe9\x43\x62\xac\x26\x23\xcc\x04\x4a\xb7\x09\x81\x41\xf5\xf8\xbd\x21\x01\x41\x1e\x0a\x2d\x7f\xab\x22\x58\x1d\xe7\xea\x3c\x1e\xe3\x60\x94\x8f\x5b\x71\x75\x92\x44\x68\x74\x90\x8e\x62\x1e\xd8\xa4\x68\xe0\xc4\x4f\xac\xd5\x5a\x17\x20\x7a\x09\x07\x37\x3f\xe2\x57\x9f\xdb\x5f\xf3\x32\xeb\x87\x1b\x8a\x52\xc6\xbc\x36\xf9\xb0\x62\x90\x77\x02\x29\x84\xc0\xa2\xaa\xde\xa8\x71\xac\xc8\xa4\x3c\x15\x06\xbc\xde\xe9\xca\x62\x35\x17\x45\xa5\xdc\x56\x45\xf2\xa3\xb8\x0a\x1e\xad\xc2\x49\x67\xa5\xeb\x2f\x67\x4b\x35\x85\x4c\x03\x43\xfd\xf8\x1f\x35\x71\xa3\xfc\xdf\xd1\xcc\x66\xed\xff\x6b\x36\xec\x8d\x12\x86\xdb\x34\xe0\x64\x53\xfc\x47\x29\x8e\x18\xc7\x63\xa7\x61\xf1\xb3\xe9\x40\xa0\xbd\xc8\xd6\xeb\x0c\xe5\x38\xad\x5b\xc6\xe5\x3a\x84\xbe\xb4\x9d\x23\x4f\x34\x4f\xe2\xe1\x6a\x67\xc8\x51\x30\xc6\xf1\x76\xf1\x75\xdb\xf6\x6e\xec\xec\x2f\x92\x43\x9a\x07\x9a\x7f\x59\x14\xc6\x8d\xe9\x2d\xef\xc2\xe3\x36\xfe\x70\x83\x7f\xfd\x61\xc5\x03\xe5\x65\x41\x12\xa6\x73\x00\x8b\x1f\x56\xef\x02\x4a\x9c\x24\x7d\x00\xb0\xf8\xd5\x91\x81\x44\x80\xe5\x88\x28\x6b\xdb\xae\xcd\x9f\x34\x7d\x7a\x8d\xfd\x44\xed\xe6\xdb\xf0\x64\x33\x6e\x91\x6d\x9b\xd4\x4d\x90\x86\xca\xad\xb4\xf8\x1d\x97\xe5\x77\x84\x8a\x61\x6c\xf0\xe5\x4b\xa5\x1c\x2f\xaf\xad\xeb\xf9\x08\x5c\xa9\x1c\x98\xc8\x3b\xf0\xf3\x8b\x9f\x1b\x0a\x0a\xd8\x5b\xf6\x8a\xbb\x95\x52\xe1\x47\x71\x17\xa7\xb7\x41\x5c\xb1\xf4\x40\x11\xce\x00\x48\x36\x8d\xb1\x44\x5e\xdb\x16\x7f\xa1\x81\x61\x9f\x38\x49\x1a\x72\x2c\xae\x61\xa2\xb0\x3a\xd7\xeb\x6c\xd3\x4a\xbe\x34\xe1\x6a\x7e\xaf\xec\x19\xc5\x5f\xb8\x5e\x37\xd9\xda\x18\xa6\xaa\xb6\x6d\x3c\xac\xd7\x09\x79\x68\x1b\x66\xf5\xe5\xd6\x69\x41\x00\x5b\xba\xb7\xca\x88\xa8\x3a\xef\x1b\x42\xe0\x70\x15\xcd\x85\x41\x3f\x41\xca\xb4\x9f\x20\x31\xd6\x3e\x29\x7c\xfd\x9a\x3a\xf2\xd7\x7a\x5d\xe6\xd4\xee\x00\x2c\x51\x7e\x44\xe5\x4c\xad\xd7\xa4\x28\x40\x84\x22\x61\x58\xc9\x9a\xa6\xa6\x44\xd9\x27\xad\xce\x2f\x4e\x7f\xfc\x74\x7e\x73\xf9\xe5\xfa\xe3\xe5\xc5\xe9\xa7\x9b\xf7\xe7\xa7\xd7\x3f\x7d\x3d\xbf\xf2\x3b\x1e\x3a\xff\xdb\xf5\xf9\xc5\xbb\x9b\x2f\x5f\x2f\xaf\x2f\xaf\xff\xfe\xe5\xfc\xca\x5f\x49\xec\x32\x17\xa9\xfe\xb3\xdf\xe2\x60\xc0\xa8\x0c\x7d\xba\xfc\x70\x73\x75\x7d\x7a\xf6\xd7\xeb\xaf\xa7\x67\xe7\x37\x97\x17\x37\xef\xce\xbf\x7c\x3d\x3f\x3b\x65\xc5\xb3\xbc\x2c\xc3\xcf\xe7\x5f\xaf\xe4\xe3\xd7\xd3\x8f\x57\x9b\xd9\x3c\x74\x75\xfd\xf5\xa7\x33\xd6\x10\x5e\xfd\xfb\x8f\x9f\xce\x59\xea\xcd\xe9\x97\x2f\x9f\x3e\x8a\x5c\x37\xd7\xe7\x9f\xbf\x7c\x3a\xbd\x3e\xbf\xf9\xe5\xeb\xe9\x97\x2f\xe7\x5f\x59\x71\x65\xe2\xe5\xc5\xa7\xbf\xdf\x7c\xf8\xf4\xf1\xf3\xe7\xf3\xaf\x37\x67\x97\x9f\xbf\x5c\x5e\x9c\x5f\x5c\xf3\x6e\xdd\xbc\x3b\xff\xf1\xa7\x0f\x37\x5f\xcf\x2f\xde\x9d\x7f\xbd\xb9\xfe\x7a\x2e\xca\xfe\xcb\xff\xfc\x74\xfe\xf5\xef\x37\x1f\x2f\xae\xcf\x3f\x7c\xd5\xed\xbd\x79\x77\xfe\xfe\xf4\xa7\x4f\xd7\x37\xa7\x57\x7f\xbf\x38\xbb\xb9\xfc\xf1\xea\xfc\x2b\x6b\x3f\xff\xe4\xeb\xb9\x2c\xe4\xd3\xe5\xe5\x97\x9b\x4f\x1f\x3f\x7f\xbc\xf6\x3d\xd2\x47\xe7\x9f\x7f\xe4\x89\xa7\xef\x6e\xfe\x7c\x79\xf9\xd7\x2b\x7f\x55\x20\x3d\xb0\xab\xa2\x68\x89\x15\x12\x20\x40\xf0\x09\x77\x5e\xaa\x53\x28\xd1\x72\xb5\x21\x04\x49\x9f\xd8\x68\x0a\xea\x80\x52\x35\x30\x29\xe5\x01\x9f\x41\xdb\xb6\x36\x66\xd1\x12\x7b\x9d\x55\x6f\x25\x4f\xd7\x30\x61\xa3\x6c\xdc\xe2\x38\xdc\xc9\x90\xfd\xc6\xe2\xc6\x79\x94\x8d\xfd\x0e\x93\x1f\x13\xdb\x06\x22\x9d\x1b\x2e\x8c\xb2\x31\x2c\xee\x83\x6c\xb5\x49\x33\x51\x81\x49\xed\x9a\xac\xa9\xc7\x91\xee\x71\x04\x03\x67\xa3\x18\x47\xaa\xde\x79\x33\x22\xf9\x84\xa8\xf3\xfe\xa7\x8b\x33\x4e\x0e\x3a\xeb\x0d\xff\x96\x11\xd8\x15\x6b\x63\x43\x51\xda\x43\x5e\x16\xa6\x9e\x21\x6a\xca\xcd\x49\x5e\x65\xe5\x0f\x1c\x6e\x49\x5e\x11\x8b\xf4\xd6\x13\x2d\x4e\xff\xd3\x56\xa6\x4f\xb5\x2b\x15\xa3\x5e\x27\xb8\x5c\x0e\xfa\x26\x6b\x2c\xed\x5c\xb5\x23\x70\xcc\xe8\x2a\x7f\x31\x5d\xe5\x28\x86\x0a\xe7\x26\x1f\xc5\xe3\x16\x6f\x89\x13\xe5\xd2\x6a\x1d\x8a\x0e\xd5\x9a\xc4\x84\xe9\xa5\x33\x8d\x62\xae\xf2\xc4\x27\x4d\x58\x04\x50\xd0\x90\x5e\x2a\x93\x6d\xbd\x98\xe8\x5e\x4c\x74\x2f\x42\xd6\x8b\x09\x7c\x51\x17\x26\x28\x14\xad\x54\x55\x8d\x42\x49\xc9\x93\x51\x38\x86\x2d\xb7\x28\x20\x90\x6c\xf3\xfc\xe2\xe7\x27\x04\x82\x2c\x4b\xb3\x9d\x59\x90\x84\x71\x94\xdc\xbd\xce\x1c\x9a\x0b\xb6\xbf\xc7\xe8\x8d\x1d\x3f\x13\x5e\x73\x93\x53\xbe\xdc\xc1\x37\x72\x10\xb8\xa2\x7a\xef\x7e\x27\x9d\xa6\x2f\xef\x49\x96\x45\x21\x69\x28\x28\x93\x05\x6d\xcf\xca\x44\x15\x51\x62\x9a\xf0\x5b\xa8\xeb\x20\xbb\x23\x15\x83\xce\x0c\x25\x1c\xf8\xbf\x9d\x26\x35\xcb\x4b\xca\xd9\x60\xf5\xc3\x64\xfb\x38\x8b\x68\x05\x69\xb2\x93\x2f\x17\x6c\x68\x5f\x66\xb7\xb8\xf9\x59\x1c\xdd\xee\x86\x01\x0d\x6e\x82\x30\x58\xd0\x2d\x46\x8d\xcd\x9f\xe9\x2b\x84\x1b\x6e\xe5\xa8\x4b\xf8\xc3\x4d\x63\xb7\x7e\xf0\x2e\xa0\xc1\xa9\x6a\xb7\x19\xa9\xb3\xe3\xa2\xe6\xa0\xaa\x54\xd9\x82\x16\x4f\x95\xab\x2f\x86\xdf\xb1\x8e\xbd\xae\x86\xcc\xa8\xe1\x15\xd3\xf7\xd4\x80\x36\x4d\xaa\xb4\x14\x6f\x9a\xad\x4c\x38\x32\xfe\xbf\x32\x51\xc6\x99\x14\xca\x1d\xde\xab\x10\xac\xd4\xb9\x89\x1f\x4c\xd0\x24\x48\xce\x02\x1a\xc4\xe9\x9d\xf4\x67\xfd\xf1\x91\x89\xac\x3e\xe3\x79\xf3\x34\x24\xb1\x25\xae\x28\x2d\x4a\xe6\x8b\x38\xa0\x84\x3f\xa3\x49\xc3\x37\x40\x3b\xbe\xf2\x93\xcd\x29\x04\x99\x73\xa1\x4e\x50\xce\xc5\xe9\xe7\xf3\xab\x2f\xa7\x67\xe7\x57\x10\x45\x3a\x07\x44\xc2\xfa\xe4\x2b\xb9\x3b\xff\xbe\x00\xdc\xae\x82\x5f\x64\x46\xd3\x47\x08\x08\xec\x5a\x3f\x94\xe6\x18\x89\x86\x86\x60\x82\x88\x36\x37\x79\xad\x9c\x91\x08\x97\x71\x01\x45\xaa\x1d\xb6\x46\xc9\xb8\x65\xf1\xaa\x39\x5c\x0c\x6b\x9f\x80\x76\x81\x20\x80\xb6\x2d\x63\x8c\xf2\x06\x86\x41\x3e\x23\x59\xf4\x1b\x81\x20\xd1\x87\xb1\x94\x1d\xc5\x44\xdc\xbc\xa8\x28\xa0\x61\xd7\xfc\x1a\x3e\xb1\xb9\xe0\x5f\x65\xea\x9c\x2d\x93\x38\x4d\x17\x8d\x59\xe7\x84\x06\xf1\x7f\x46\xa2\x0a\x09\xe6\xff\x80\x50\x03\x9c\xd6\x09\x35\x4a\x22\xaa\xcc\x5a\x6f\xf2\xe5\x82\xd4\x4c\xde\xd5\x05\x66\x4c\x82\x9c\x7c\xe6\xce\xc9\xfc\x42\x35\xe5\x84\x55\xa0\x49\x13\x9f\x50\x38\x47\x01\x15\xde\x8f\xe4\x53\x34\x8f\xa8\xdf\x47\xc1\x64\x42\x16\x94\x35\x98\x70\x6d\x14\xe3\x21\xd5\xb2\x7d\x5d\x36\x63\x2e\xef\xb9\x6c\x90\xfb\x00\xe2\x93\xf2\xc5\x03\xdb\x7b\x78\x19\x6c\x45\x6c\xaa\xba\xef\x08\x35\xde\x42\x94\x94\x0d\x6e\x11\x90\x39\xf3\x60\xc1\x89\x5b\x59\xce\x7e\xe3\x16\x19\x52\x95\xf9\x90\x05\x0b\xfd\x35\xc7\x50\xe3\x18\x46\xe5\xf2\x10\xa0\x5c\xdc\x64\xe5\x96\x3b\x56\x96\xb9\x45\x5e\x1e\x9c\x30\x2a\xa0\xd2\x90\xb2\xc6\xaf\x2a\xcb\x8a\x00\xd8\x38\xb0\x4e\x46\xe6\xe9\x3d\x91\x81\x1b\xa3\x32\x06\x6c\x53\x5e\xd6\x0e\x9d\x13\x45\x05\xba\x61\x95\x5f\xa7\x67\xac\x37\x12\xe7\x64\xc3\x9b\x86\xa8\x81\xe2\x6b\xec\x4e\x1b\x57\x71\x83\x0a\xc3\x84\x16\x08\xbe\xe4\x5b\x5d\x02\x5b\x84\x9d\x0d\x32\xc1\x32\x94\xca\x8b\x14\x62\x1a\xbe\x92\x49\x9a\x85\x0a\x19\x56\x62\x96\x04\xc8\xa0\x11\x24\x21\x11\x6a\xcd\x43\x4b\x3d\x59\xaa\x8c\x98\x87\x9e\x33\x4c\xde\xe0\x2a\xe3\xb6\xfb\xdc\x18\x23\xc4\x4b\x35\x73\x20\xdf\x9c\x05\x51\x08\x20\x68\xa2\xc6\x96\xcd\xa4\x4a\x85\x3c\xfe\xdc\x2a\x8c\xc2\xb3\x59\x90\xdc\x11\x5f\x18\x83\xa1\x00\x1a\x4c\x2e\xc6\xd9\x71\xfc\x36\xeb\x06\xc7\xb1\xd2\x06\x2f\x59\x3f\x12\x47\x08\x9b\xa7\x14\x02\x82\x62\x88\x42\x5c\xaf\x60\x09\x5b\xdb\xdb\xb4\x14\x6d\x02\x4c\x8e\x2c\x52\xdb\x8e\x40\x86\x52\x58\xa0\x87\x28\x8e\x45\x73\x6a\x00\x4a\x86\xe1\x74\xe2\x04\x61\xc8\xa5\xe8\x4b\x51\x66\x06\xc1\x92\xf7\x0f\xcd\x20\x0a\x04\x71\xe5\x1b\xc4\xc5\xbf\x14\xd4\xb4\xf5\xe3\x67\x09\x30\x80\x05\xa2\x20\x6c\xce\x69\x90\x5f\x00\x51\x20\x7a\xf3\xae\x6a\x27\xff\x52\x86\x52\x6f\x7e\x81\x42\x42\xc9\x84\xf2\x75\xdf\xf1\xd0\x24\x8d\x97\x73\x7d\xd1\x55\xe3\x06\x9b\xab\x50\xb1\x83\xa8\x99\xf0\xd2\x0d\xc2\x8b\x2a\x84\x17\xb0\xe6\x83\x51\x03\x37\x60\xf9\x24\x35\xe6\x06\x31\x89\x0b\x11\x46\xfc\x20\x39\x71\xd7\xeb\xe8\xc4\x65\x47\x09\x6e\x48\x37\x99\x11\xc6\x9c\x2f\x93\x09\x81\xc0\x0a\x84\x8e\x59\x00\x80\xa0\xe0\x49\x1a\x38\xde\x32\xfb\xa9\xf8\x58\x87\xeb\x91\xa3\xb1\x65\xba\x75\xee\x02\x55\xfb\xd2\xc0\x34\x8d\xb5\xac\x0a\x5f\x25\x02\xaf\x62\x92\x2e\x13\xea\xf3\x6a\xee\x08\x85\x20\x43\x96\xb8\x38\xb1\xa0\x9a\x1d\x05\xcd\x62\x4e\x15\x1f\x6e\x4e\x24\x02\x40\xad\xca\x98\x57\xd2\x09\x5c\x37\x00\x58\x8d\xdb\x49\x29\x9c\x10\x4c\x9d\x2d\xc2\x94\xe4\x58\x1c\xff\xb4\x51\x70\x52\xef\x45\x3b\x6f\x18\xef\xe3\x2d\xcb\x2f\x13\x2d\x40\xb1\xdd\x82\x68\xd6\x45\xa0\x66\x38\x2b\xbe\x47\xf8\x8d\xf4\xc4\x87\x88\x70\xf9\xc3\xfc\xb4\x3c\xd7\xf2\xaf\x04\x45\x03\xb9\xdb\x88\x25\x2a\xb3\x16\x68\x6b\x6b\xa4\x2b\x85\xca\x9b\x6e\x91\xf5\xa8\xb1\xc3\x95\x86\xc5\x0d\x72\xdc\xef\xd2\x17\x55\xda\x3f\xca\xc6\xd0\x10\x41\x23\x53\x50\xcb\x60\x4b\xa2\xb3\x89\x98\x78\x94\x4f\xb9\x24\xab\xfa\x26\x6e\x72\x67\x85\xa9\xa9\x69\xa5\xc4\x76\x13\x04\xf5\xb3\x80\x5b\xab\x52\xea\x99\xf1\x8a\x5f\x32\x38\x22\xea\xf7\x5f\xc9\xe3\x03\xab\xb1\x96\x5d\x25\x8b\xac\x62\x7a\x1a\xcb\x7d\x6f\xbc\x12\x99\x27\x69\x9c\xd6\xd7\xc9\x19\x4b\xe3\xaf\x8d\x5e\x9a\x4d\x12\x1d\x5e\x15\x10\x6d\x34\xa1\x36\x16\x8d\x35\x37\x7c\xce\xab\xe4\xe9\xfc\x58\x51\xd9\x65\x78\xb2\x71\x16\xab\x8a\xc7\xc1\x56\xf1\xf8\x2e\x8e\xe6\xf3\x27\x9d\xfe\x4a\x8f\x3d\x64\xfd\x49\x65\x4f\x17\x93\x34\x24\x3b\x93\x74\xbe\x88\xe2\x2d\x67\xe6\x9a\x30\xfc\x22\xe7\x41\x25\x16\xbf\xc0\xb1\xd0\x78\x73\x1f\x91\x87\x26\x97\x43\xd5\xda\x8c\x70\x78\x96\x09\xa9\x24\x96\x55\xa9\xa4\xfb\x20\x8e\x42\x01\x70\xf8\x32\x6f\xf7\x32\x5f\xc4\x0d\x42\x59\x1a\xbf\x61\x36\xce\x00\x24\xbb\x8f\x26\xe4\x65\xe7\x87\x5a\xd1\xaa\x5d\xac\xe7\x4f\x5f\x26\xbd\xe4\xc8\xa1\x99\xab\x59\x74\x92\x86\xcd\xa3\x9d\xa5\x02\xa0\x5d\xbf\x63\x73\x9d\x26\x24\xa1\xbb\xea\x98\xba\x93\x26\xf1\x63\x99\x81\xab\x73\x2c\x64\x65\xf9\xfd\x62\xdb\xb9\x06\x05\x28\x47\x31\x5a\xa2\x09\x0a\xd1\x0c\x4d\xd1\x02\xcd\x79\x3c\xc5\x5b\xf4\x88\x6e\xd0\x03\x3a\x47\xdf\xd1\x25\xba\xda\x76\x1b\x76\x5d\xde\x86\x35\xa9\x0b\x7f\xcf\x1d\x98\xea\x0d\xfe\x82\x88\x33\x23\xf1\x82\x64\xf8\xaf\x88\x38\x24\x9f\x04\x0b\x72\xfe\x7d\x91\x91\x3c\xaf\xa3\xa7\x1a\xc2\x75\xc7\x10\xae\xa3\x29\xe0\x77\x74\x34\xfd\xf3\xf5\xe7\x4f\x1a\xc4\x56\x3e\x4b\xd4\xc9\x65\x1c\x97\xf8\x5a\x96\xc5\x3d\xae\x34\xdc\x96\x32\xb1\x62\x62\xb7\xfe\x5d\xb0\x2c\x7f\x53\xf7\xf5\x25\x36\xae\x2e\x5f\x1d\x90\xff\x17\x11\xc2\x1d\x52\x67\x74\x1e\x5f\x05\x53\x82\x29\xe1\x58\xb0\x3c\xa8\x0d\x7b\xce\xd8\xf3\x0d\xf7\x3d\xfc\x4a\x92\x90\x64\x24\xcb\x4d\x55\xdf\x6f\xca\x45\x01\xbb\xac\x9c\x8c\xe7\xb9\x22\x94\xc6\x24\x34\xf3\x89\x5e\xe0\x3f\x67\xb6\x0d\xfe\x9c\xe1\x2b\x8d\x27\x14\xb2\xb5\x06\xf8\xfe\x36\xe7\xe1\x30\x97\x59\x46\x12\xfa\x75\x99\x7c\x4a\xd3\x05\x04\x70\xbd\x9e\x3b\xb7\xc1\xe4\xdb\xed\x32\x4b\x48\x29\x22\x19\xd2\x11\xe7\x6e\x3f\x66\x65\xc4\xe7\x3f\x67\x6c\xa3\x9a\x47\xb9\x52\x56\x5e\xab\x39\xab\xcd\xc9\x8b\x76\xb5\x0f\xdc\xee\x5b\x16\xfd\x21\x1b\x11\xe5\x99\xdb\x50\xaa\x71\x3f\xc7\x73\x62\xae\x4c\x9d\x05\x79\x63\x0b\xaa\x98\xb6\x2f\x68\x45\xad\x3b\x79\x83\xd2\xf5\x43\x56\x6b\x5d\x15\x2d\xe4\x83\xd4\xb7\xe6\x84\x2e\x17\xe7\xc9\x5d\x94\x10\x7d\x09\x5e\x09\x2a\xe5\xd4\xcc\xd8\x4a\x65\x53\xd5\x51\xab\xe3\xf1\x55\xa1\x6d\x91\x2d\xc6\x5c\xfd\x9d\x74\x49\x63\x42\x2d\x94\x25\xd5\xb7\xaa\x94\x32\x07\xe5\x39\x4a\xf3\xa3\x5a\x01\x46\xbd\x9b\x1f\x57\xca\xbe\x29\x7d\xb9\x7f\xd5\x39\x35\x17\xca\x77\x77\x24\xc9\xfd\x8a\xfe\x37\x63\x1f\xd6\x3b\x28\xd6\xf2\x73\xdd\x13\xb9\xfc\x38\x9d\x58\xe8\x6f\x59\xf5\x9d\xae\xcc\xdf\xa1\xe4\x3b\xdd\x99\x8a\x20\x13\xbf\x6d\xcd\x35\x99\x91\xc9\xb7\xdb\xf4\xbb\x85\x3e\x6d\xcb\x13\x47\xc9\xb7\x1d\x9a\x5a\xe8\xdf\xdb\x72\x44\xc9\x62\x49\x2d\xf4\x97\x6c\xcb\x48\x1b\x43\x20\xb3\x92\x64\x5b\x59\xac\xd9\x41\x46\x02\x0b\xfd\x04\xd1\xbd\x73\x7e\xf1\xb3\xf3\xec\x8d\xe8\x7a\xbd\x65\x12\x8c\x8e\xea\xa1\xbf\x80\x9a\xfa\x0c\xd0\xac\x2d\x24\x68\x10\x45\x26\x99\x8f\x85\x2c\x92\xdc\x5b\xc8\x32\xb7\x55\x7f\x1e\x44\x49\x95\x18\x2c\xb9\x8f\xfa\x3b\x61\x3a\xdf\xb9\x5d\x46\x71\xc8\xe7\x56\x1a\xb8\xac\x6e\xd3\x54\x59\x13\x32\x61\x9c\xbb\x9a\xdc\x88\x4a\xd8\x99\xc3\xa7\x05\x26\xad\xfc\x21\xa2\x93\x19\xa0\x70\x35\x09\x72\xc2\x8a\x8c\xb8\x41\x8a\xe5\xcb\xc5\xf6\xe0\xe8\xb4\x1f\x45\x15\xce\x6d\x94\x84\xc2\x6a\xa4\xc5\x3f\xca\xc8\xec\x31\xcc\x18\xfd\xfa\x1a\x31\x49\xa5\x45\x69\xd2\xf0\x99\xc2\xbd\xd3\xd9\x27\x3c\x02\xda\x66\xce\x82\x87\x19\x35\x47\xa9\xb9\xd3\x96\xd1\xd9\xad\x23\xd7\x3c\xd6\x65\x19\x8d\x45\x3f\xbf\xfe\x76\xb2\x34\xa5\xbf\xa2\xd3\xed\x55\xb0\x0c\xd7\x7a\x8d\x3f\x51\x48\x75\x7e\x55\x09\xbc\x41\x16\xfa\x21\xdb\xf6\x9a\x49\x30\xd4\x42\xbf\x64\xdb\x9b\xa0\x10\x72\xaa\xdd\x94\x69\x9c\x60\x6f\x54\xc9\x9f\x83\x49\x96\x56\x59\xea\xbb\x4c\x1c\x62\x04\x7b\x9e\x04\x8b\xe0\x36\x8a\x23\x1a\x55\x38\xaf\xf4\x54\xe7\x87\x2a\xb5\x4d\x65\xd8\xea\x3b\x5e\x9f\x6b\xef\x4b\xc4\x26\xea\x2c\x17\x61\x40\xc9\x9f\xd3\xf4\x1b\x44\x2b\x8e\xfd\xfd\x29\x9a\x92\xb3\xc7\x49\x4c\xce\xa4\x61\x53\xee\x97\xd9\x75\x8e\x49\x25\x07\x44\xdc\x35\x4b\xa0\x4b\x97\xb9\xcb\x44\x88\xca\x8a\x7c\x01\x53\x9d\x13\x7a\xa6\x16\xad\xf4\x08\xc4\x0d\xf0\x01\xad\x0c\xdf\x3a\x9a\x01\xdc\x7c\x3e\xbd\x38\xfd\x70\xfe\xf5\xe6\xea\xfa\xeb\xc7\x8b\x0f\x37\x9f\x2e\x2f\xff\xfa\xd3\x97\x06\x6c\x1e\x32\x34\x63\xb0\xe8\x23\x9b\x84\x71\x28\xb9\xd0\xce\x5c\x54\xcd\xd5\x89\x85\xaf\xe5\x96\xab\x0c\xac\xa4\xce\xd1\xcf\x90\x12\x3d\xfd\x8e\x87\x44\xf0\x1b\x5d\x80\x55\x20\xaa\xf6\xca\x27\xfa\xa3\xce\x91\xd7\x59\x19\x38\xbc\x4d\xb9\xeb\xbe\x2a\xdc\xb6\x8d\x52\x39\xc2\xb5\x40\x78\x55\xba\x4f\x65\x4b\x25\xc6\xee\x73\x1a\x72\x43\xd4\xe6\xa1\x6b\xe8\x05\x69\xe8\xc5\x5c\x16\x62\x76\xa2\x5e\xf0\xe7\x0c\x11\x47\x65\x3c\x7b\x92\xe2\xa4\x62\x26\x8c\xf2\xe0\x36\x26\xa7\x4b\x9a\xf2\x68\x7c\x51\x72\x67\x12\xc5\xe6\x5b\xb8\x41\x10\x4f\x8b\x3b\x77\x3c\x7c\x1d\x0f\x9a\x83\x68\x7d\xec\xf5\xa7\x8f\xd9\x13\x77\x93\x97\x9f\x85\x6a\x2b\x7f\xe1\xc5\xe1\xc4\x29\x3f\x79\xf2\x76\xf2\xdd\xe5\xe7\xeb\x8c\x10\x1d\x69\x9d\x1f\xb8\x5e\x5e\x45\xfd\xdb\x27\xeb\x8a\xf2\x2b\xb9\x25\x70\xfe\xfe\x3e\xca\x72\x7a\xc1\x0f\x4d\x2f\xac\x70\x5b\x01\x4f\xd6\xca\x32\xfc\xfe\x5e\x3e\x38\x5b\xbe\x17\x1b\xcc\x25\x17\xb6\x7e\x8e\xc8\x03\x26\xce\xc7\x8b\x9f\x2f\xff\x7a\x8e\x89\x73\x7a\x9b\xff\xff\xb8\xfb\xd7\xf6\xb6\x6d\x6d\x5f\x14\x7f\xaf\x4f\x21\x73\xf7\xd1\x24\xfe\x86\x19\xb9\x5d\xff\xb5\xd6\x61\x8a\x7a\x3a\xb6\xd3\xb8\x4d\x6c\x4f\xdb\x49\x66\xa7\x96\x8e\x4b\x4b\x90\x85\x86\x26\x55\x10\x72\xe2\x48\xfc\xee\xe7\xc1\xc0\x9d\xa4\x7c\x69\x3b\xf7\xd9\xcf\x79\x63\x8b\x24\xee\x97\x81\x81\x71\xf9\x0d\xc1\xb3\x49\x7b\x83\xd1\xe4\x8a\x7e\x59\x50\xce\xe0\x76\x9b\x6b\x8a\x49\x13\x88\xbc\x27\x99\xf6\x3b\x6a\xae\x12\xf0\x96\x72\xe1\x3d\x7b\x3f\xe5\x05\x44\x9b\xc0\xd0\xe4\x8d\xba\x69\xd1\xc4\xd6\x47\x68\xf2\x96\x15\x9f\xfc\xe7\x4b\xfa\x45\xec\x73\x9a\xe9\x9f\xaf\x25\xff\x25\xb3\x68\x36\x8b\xb8\xdb\x1b\xd8\xc1\x1e\x94\x4b\xd9\x26\xd9\xb8\x73\xef\x14\xf2\x75\x60\xef\xc8\x0a\x1c\xa8\xdf\x30\x91\x0e\x31\xfc\x7c\xc7\xaa\x2a\x1d\x7a\xa1\xb4\xce\x1a\x5a\x56\x53\x87\x46\xee\x41\x31\x45\x98\x81\x4a\x55\x07\xf7\x87\x48\x7b\xb7\x54\x64\x38\x23\x4e\xb3\xc4\x40\xa6\x49\x3b\x3c\xb7\xf6\xe2\x77\x89\xad\x7a\x7b\x1b\x73\x52\x18\x4b\x5d\x50\xcc\x58\x33\x6e\x10\x94\xa4\xb4\xc6\x25\x42\x98\xc1\x86\xa4\x98\x23\x94\xea\xfc\x6f\x98\x90\xd9\x3d\x7c\xed\xab\x2b\x36\x25\x45\xc2\xa6\x58\xfe\x96\x6d\x22\x25\xce\xea\x4d\x03\xf5\x0e\x06\x65\x9f\x9c\xc5\x2b\x36\x4d\xa3\xea\xff\x5f\xfe\x5f\xd7\x5f\x2e\x8a\x08\x5f\xe7\xe5\xe4\x53\xfa\xb7\x55\xa4\x7c\xc1\xab\x28\x1d\x8d\x71\x64\x31\xd3\xe5\xf3\x68\x17\x8f\xbe\x1b\xe2\xd1\x77\xff\x89\x87\x63\x3c\x1a\x7d\xf7\x2d\x1e\x8e\xc7\x70\x7b\x1b\x8f\xc7\x38\x9a\x67\xd5\xd1\x5d\x96\x47\xe9\x2c\xcb\x2b\x8a\xa3\xe5\xe2\x2e\xe3\x32\xa3\x47\x82\xc7\xf5\xdf\xb0\x6c\x64\xba\x52\xb0\x98\xa0\x15\x8c\x16\xd9\xe4\x53\x76\x43\xab\x17\x9b\xe5\x55\x39\xbb\xb6\x72\x88\xea\x85\xe4\x27\x92\xf9\x75\x15\x29\xb1\x57\x30\xf9\xfb\xd0\xc5\x03\x39\x95\x59\xe2\x76\xcf\x85\xf1\x71\xdf\x3f\xff\xf1\x22\x42\xf8\xd3\xc6\x04\x6f\xf6\x2f\xae\x5e\xbd\x3d\x3d\xf8\x39\x42\xf8\x5c\xa5\xb2\x0e\xf2\x87\xc7\xe7\x97\xbf\x5c\x5d\xee\xff\x18\x21\xfc\x5b\xe3\xdb\xf1\xc5\xd5\xe1\xf1\xc5\xd9\xfe\xe5\xc1\x1b\x79\x8c\xee\x5f\x5e\x9e\xcb\x8a\x0e\x1b\xc9\x5e\x9d\xbe\x3f\x39\x94\x1f\x4e\x48\x95\x1c\x94\x9c\xca\x8d\x69\x14\xb4\x55\x72\x30\x67\xf9\x54\xbe\xaa\x2e\x94\xfe\x1a\x57\x89\x7c\xbc\x90\x53\xe1\x5e\x81\x38\x1a\xa4\xc3\xe6\x5d\x99\x28\x1b\x9a\x7d\x58\xd4\x2e\x65\xf3\x59\x16\xf6\x8e\x7d\x61\x05\x5e\xb1\xca\x6e\x3e\x49\x5c\x9e\xa4\x1c\x1e\xfd\x36\x36\x80\x4e\xa3\x73\xc0\xca\x9a\xea\xb5\x7c\x99\xdd\xa0\x58\x27\x3a\x1c\x03\x40\x7c\x8d\x39\x55\x7c\x5a\x8c\x56\x90\x74\xca\xb8\xb8\x87\x94\xba\x04\xe3\xc1\xab\xea\x43\x35\x1e\x15\xc9\xd9\xf9\xe9\xd9\x91\x1c\xe8\xc3\xe3\xc3\xab\x83\x37\xfb\x27\x3f\x1e\x8d\x43\x7f\xb3\xd1\x6f\x63\x5f\x9d\x31\x3a\x18\x63\x46\x9c\x1d\xff\x9e\xbc\xbb\xa7\x86\x0c\x58\xb3\x43\xcf\xdb\x87\x8d\x96\xc9\xfb\xb3\x43\x79\x2d\x3a\x3f\x7a\x7d\x74\x7e\x74\x72\x70\x74\x78\xf5\x61\xff\xed\xfb\xa3\xf1\x60\xf0\xd0\xd7\xf8\x5b\x42\x5a\x31\x54\xf7\x7c\x6d\x89\xf6\x27\x46\x4a\x05\xb2\x2f\x04\x6f\xfa\x0c\x2a\x42\x21\x47\x27\x9b\x1e\x9e\xbe\x33\x49\x14\x3b\x13\x0f\x31\xa4\x90\x13\xa5\x43\x12\x6b\x8d\x2d\xe6\x44\xe0\x82\x44\x73\x21\x16\xe9\x8b\x17\x9f\x3f\x7f\x4e\x3e\x7f\x97\x94\xfc\xe6\xc5\xb7\xc3\xe1\xf0\x45\x75\x77\xa3\x42\x32\x5a\x1b\xfb\xf7\xe7\xc7\x58\x45\x16\x64\xd8\x39\xd6\xa7\x65\x2d\x2b\x99\x38\x0b\x7d\x73\x14\xa1\x98\x63\x4f\xf9\xbd\x5e\x47\x99\x10\x1c\xc2\x5f\xee\xf1\x44\x77\x06\x54\xfc\x71\x89\x52\x3e\x2a\xc7\x35\x9e\xb2\xe9\x39\x9d\x50\x76\x47\xe5\xc7\x2a\x46\x2b\xfd\x4e\x4f\xbb\x52\x7a\x79\x8f\x53\x36\x7d\x0f\x8c\xab\x4b\x2f\x53\xa8\x77\x61\x0a\x2b\xd8\x76\x87\xc4\x09\x3e\x71\xe1\x66\x62\x44\x7e\x68\xc9\x2b\x23\x7c\x92\x70\x5a\x2e\x68\xa1\x74\x36\xfe\x32\xd7\x24\x5d\xae\xf6\x45\x59\x31\x70\x13\xc8\xcf\x32\x9e\xdd\x56\xe9\x68\xac\x21\xf4\x8e\x0d\x79\xbc\xf8\x78\xfd\x7b\xf5\x76\xfe\xe1\x49\xe4\xf1\x21\x0a\xf8\x17\x91\x3d\x7a\xbb\x10\xf7\x86\xee\xe1\xb7\xe4\xc4\xda\x75\xe4\xd9\x7d\xb9\x14\xe9\x31\x9e\x58\xba\x90\x8e\x22\x28\xd6\x09\x29\xc6\x58\x64\x37\xaa\x6a\x2d\x48\xb0\x16\x1b\xaf\x58\x31\x65\xc5\x8d\xcc\x24\x97\x4b\x84\x23\xc8\x45\xa7\x11\x8e\x58\x31\xa5\x82\xf2\x5b\x56\x28\x29\x8e\x66\x36\xe5\x27\x91\x5d\x6b\x45\x42\x24\xd7\x5c\x84\xa3\x6c\x29\xca\x59\x39\x59\x56\x00\x35\xaf\x50\x92\x23\x1c\xcd\x4a\x7e\x2b\xeb\x57\x7c\xbe\x95\x9a\x98\xa2\x24\xf7\x1c\x54\x23\x5f\x4c\xd9\xf4\xb8\xa8\x28\x37\x71\xb9\x1f\x57\x33\x53\x95\x30\x09\x8a\x22\x96\x4d\x56\xb8\x11\xde\x27\x54\xe3\x89\x51\xc6\xc2\xf6\xad\xec\xf6\x75\xfd\x0f\x4a\xd6\x6f\x91\x5e\x95\x86\x2f\x79\x8b\xdf\x3e\xb2\x28\x5f\xd8\x4e\xc3\x12\x7b\x4d\xe6\x1a\xd4\x74\xaf\xc3\x73\x47\x81\x91\xca\x74\x5f\xdd\x1c\x57\xc0\x12\x19\x3a\xfe\xe0\x8c\x7b\xc2\xab\xa7\xcd\xb9\x32\xd4\xd1\xd3\x67\x82\x3f\xe8\xc7\x2a\xbb\x53\xb3\xce\xf5\x3c\x66\x9a\x35\x85\x07\x5a\x4c\xf4\x82\x91\x4f\x3a\x3a\xa1\x7a\x28\x4a\xad\x5f\x31\x5f\x05\x9c\x4f\x11\x8e\xe6\x54\x05\xd5\x57\x4d\xba\x55\x2a\x89\x3c\x03\xed\x43\xce\x2a\x90\x1a\xaa\x42\x6f\x33\xb9\xb6\x6e\x99\xac\xee\x76\x99\x0b\xb6\xc8\xa9\x5b\x6c\x8b\x4c\xc8\x0d\x23\xaf\xfd\xec\xab\x7c\x51\x09\xba\x88\x70\x04\xf2\xfe\x08\x47\x9f\xd9\x54\xcc\xa3\x31\x56\xf2\xff\x28\x52\xeb\x0f\x66\x5a\x76\x72\x29\xe8\x14\xc5\x2b\xc9\x53\xc3\x9c\x09\x08\x46\xa2\x98\x2e\xab\x2d\x57\x6f\xdb\xee\xc7\xea\x2c\x32\xb3\x88\x1a\x28\xce\x0a\x4e\x8e\xf6\x59\xd1\x7f\x6d\xbe\xbd\x1e\xd1\xb1\xc6\x1f\x36\xc2\x09\x3d\xeb\x66\x81\xeb\x29\x52\x41\x1d\x74\x80\x3f\xaa\x03\x39\x70\xb4\xaa\xbd\x82\xf4\x4d\x96\x10\x42\xeb\x58\x20\xe5\x6e\x8b\x30\x97\x84\x41\x0e\x86\xb2\x44\xd4\x03\xa4\x1e\x6e\x99\xf9\x91\x7d\x51\x1e\x54\x72\x0d\x3b\x3e\xfb\x2b\xfe\xfa\xd8\x22\xf6\x16\x16\xf4\xe4\xfd\xc6\xe5\xb9\x69\x55\x82\x70\x72\x8c\xed\xea\xb5\xab\xd3\x49\x2e\xbb\x16\x28\x2f\x41\xe1\x37\x29\x41\x23\xa8\xa7\xbf\xa2\x3a\xb2\xff\x51\x31\xf5\x1f\x55\x88\xe3\xd6\x62\xfe\xcc\xb3\x85\x5b\x67\x6a\x3d\xab\x95\x32\xc6\xb2\x7c\x6d\xbc\x59\xe6\x55\x38\x3a\x70\x21\x79\x8f\xdf\x3f\x69\x70\xa0\x0b\x30\x36\xaf\xcc\x29\xb2\x3c\xfc\xf9\x4b\xfe\xdf\x05\xed\x3c\x45\xa2\x81\x16\x17\x46\x2d\x76\xfb\x3f\xf1\xe8\xbb\xff\x52\xac\xf6\xb7\xff\x85\x25\xbb\xbd\x3b\xd6\xfc\x36\x1e\x8d\x22\x93\x0f\x47\x10\x92\x79\x8c\x47\xab\x26\xbf\xfe\xdf\x78\x57\xb3\xe7\x72\xaf\xf0\xec\x56\x92\x3e\x75\x1e\xe1\x56\x62\xa8\x61\x88\x47\x51\xce\x8a\x4f\x97\x4c\xe4\x34\x1a\x8f\x3b\x72\x8e\x1f\x61\xf6\xd9\xec\xaf\xe2\xf2\xb5\xe8\xdc\x1e\x78\x6f\x8c\x97\xe3\x8c\x53\xfa\x95\xc6\x2b\x33\x21\x6a\xfb\xbe\x3f\x39\x3c\x7a\x7d\x7c\x72\x74\x18\xd5\x08\x7f\x68\xa6\xad\x11\xfe\xbd\x7d\x60\xbe\x72\x0b\x30\x8b\x30\x2f\x97\x82\xa6\x6f\xb0\x32\x86\xd3\xff\xab\xf4\x0d\xfe\x7d\x49\xf9\x7d\xfa\x06\x47\x13\xa5\xdd\xda\xf9\x3c\xa7\x45\xa4\x16\x8c\x90\x43\xa5\x7e\x72\x9a\xeb\x77\xfa\x5c\x34\x4f\x92\xee\xa9\xdf\xea\xfe\x0c\x8c\x49\x1a\xa9\x87\x08\xe7\x65\x26\x17\xba\x7e\xab\x9f\xdc\xe9\xa8\xdf\xbb\x73\x57\xab\xff\xe4\x21\xd9\xb5\x59\xe6\x9c\xce\x24\x09\x85\x39\x94\xc7\x70\x1e\x1e\xd5\x9a\x0e\x8f\xdd\xd1\x11\x1c\x05\xaa\x4d\xae\x19\xc1\x81\xcf\xb3\x42\xb1\x4d\xac\xb8\x39\x2e\x9a\x6f\x4e\x97\xb2\x58\x7a\x47\x0b\x15\xf9\x26\x9a\xe4\x6c\xf2\x29\x7a\xf4\x66\x21\x37\xcc\xca\x65\xa3\x1a\xf3\x4a\x19\xd7\x15\x1a\x42\xd4\xc2\x19\xdd\x95\x9f\xc0\x8a\x46\xab\xac\x25\x41\x5f\x68\xc9\x30\x8a\xa3\x1d\xa3\xc9\x46\xf8\x4a\x4f\xd7\x39\xcc\xab\x32\xb0\xca\x59\x56\xa1\x38\x32\x99\x13\x3f\x89\xac\xbc\x99\x8d\xc3\xc5\xeb\xe1\xcc\x90\x44\x66\x54\x23\xfb\x78\x3e\x95\xce\x66\xe3\xae\x7d\xee\x5c\x8a\xe0\x6d\x84\xa3\x8e\xe6\x44\x9e\xb6\x5d\xe9\x3e\x54\x11\x66\xe0\xac\xfd\x14\x21\x6f\x94\x47\x6d\x38\x14\x60\xbe\x74\xa5\x97\x77\xb3\x5e\x65\x38\x85\xd5\xff\xaa\x5d\x95\xda\x1d\xd4\xec\x0e\xd1\xa8\x73\x4b\xd6\x29\xaf\x5f\x02\x7e\x09\xe0\xab\x11\xbe\x52\x7b\xa8\x59\x19\xbc\x6d\xd7\xa1\x12\x77\x76\xe7\x43\x1a\xca\x4c\x6a\x4c\xc1\xed\xc0\xf2\x92\x9b\xce\xf7\xad\x5d\x77\xb6\x07\x00\x2e\xac\x3a\xd4\x79\x89\xc0\x80\xbc\xae\x4c\xa0\xfc\xed\x27\xe9\x8f\xda\x1a\xad\x2e\x78\x5b\x5a\xce\x96\xd9\x40\x71\x4b\x4e\xb7\xa5\xa0\x52\x74\x0a\x5d\x8b\x97\x1b\x86\x69\x43\x25\x9d\x8b\x40\x2d\x28\xf8\x61\x26\x2b\xba\xd2\x23\xea\xed\xdf\x80\x68\xb5\x86\xba\x6b\xb5\x87\x03\xbf\xb5\x65\x1a\x7b\xc5\xaa\x7d\x68\x5f\xac\xc6\x5c\xde\xdb\x5e\xd1\xfd\x67\x35\xb9\xb5\x47\xfe\x9d\xfd\xe8\xda\x92\x1e\xa2\x9e\x5c\xac\x02\x35\x16\x83\xee\xa1\x80\x1e\xfa\x3d\xb6\x38\xc5\xba\x49\x21\xc2\x8d\xb2\x6b\x1c\x85\xad\x04\x8f\xfb\xe8\x5a\x71\x85\x5e\x10\xaf\x00\x8e\xbc\xcf\xdd\x1d\x05\xf5\x04\xe1\x7b\xc2\xc0\x51\xf4\x23\x94\x2a\xd3\x54\x35\x44\x36\x3c\xea\xca\xec\xde\xc2\xec\x2c\xe6\x08\x62\xa9\x7a\x88\x33\x32\x7c\x99\x39\x98\xd0\x6c\x7b\x1b\x41\x58\x48\xd3\xa7\xd7\x25\x87\x81\x89\x0b\xcc\xb0\x18\x65\x63\x0c\xd2\x46\xdd\x2d\x83\xb9\xb3\xb5\x5b\xe3\x06\xdd\x6f\xcf\xb5\x3d\x36\xfc\x25\xd1\xb9\x09\x2c\xc8\xa2\x9f\x72\x30\x68\xec\x0d\xc3\x33\xfa\xf5\xee\xb0\x22\x92\x73\xd2\x3c\x72\xfe\x4c\x6b\x14\x20\x6d\xab\x3d\xeb\x75\xd0\x1e\xb4\xa1\x41\xe5\x52\x44\x6a\x95\xc0\xa1\x64\x6e\x05\x20\xc1\x61\xd5\x05\x93\xbc\xe7\x81\x3c\x02\x91\x07\x88\x04\x82\xe9\xd5\xf5\xf2\xfa\x3a\xa7\x55\x2a\xf0\x82\xc3\xc9\x77\x68\xd4\xc6\x7a\xf2\x34\x02\x88\xb9\x79\xaa\x75\x8c\x19\xd9\x2a\xd6\xeb\xe8\xaa\xa2\xf9\x0c\xa2\xde\xf5\x2c\xfa\xf2\x60\xc0\x06\x03\x9a\x84\xc5\xc5\x08\x83\xb7\xae\x90\x9f\x2a\x51\x2e\xce\x78\xb9\xc8\x6e\x32\x35\x0a\xb8\x49\x00\xdd\x92\xde\xb8\xd6\x21\x40\x77\xb0\xf4\x57\xfa\x00\x2b\xed\x91\x92\x99\x45\x99\x5b\x5e\x65\xa9\xbb\x35\x21\x8a\xb8\x6b\xa1\x4b\xae\x98\x2e\x38\xf6\x4b\xcf\x10\x7e\x96\xcc\xf2\xec\xe6\x86\x4e\x8f\xad\xa1\x1d\x92\xf7\x23\xad\x82\x28\x8b\xc4\x1a\x56\x4c\xb0\x31\xf1\x85\xb8\x76\xf4\xd2\x4e\x51\x3c\x01\x0b\xb4\x1c\x2f\x91\x1c\x06\x30\xbc\x6d\xa5\xf1\x62\x11\xd8\xbe\x78\x9b\xc8\x33\xbb\x5e\xd1\xc4\x4d\x3f\x44\x5e\x35\x0f\x97\xa5\x8d\xd1\x5c\xd7\x58\xf2\x5f\x7f\x01\x01\xd7\x9c\x69\x40\x02\xf5\xaf\x37\xc0\xe1\xf9\xcb\x59\x92\x99\xcc\x86\x15\xd4\x59\x37\x51\xac\xbe\xff\x4e\x96\xe5\xcf\x22\xb5\xb3\x28\xcc\x2c\x72\x47\x5a\x8a\xf0\x48\x2e\x12\x33\xa2\xef\xcf\xdf\x6a\x9f\xbb\x5a\xee\x08\x5d\x78\x7b\x18\x1a\x1d\xde\xe7\xf4\x2d\x84\xed\x73\x9d\xd3\x27\x69\x8b\xbe\x37\x9a\x67\x73\xfa\x04\x7d\x4b\x28\x9c\xcc\x66\x40\x4b\xbf\x68\x8f\xf7\x71\x65\xb4\xda\xd9\xc5\xfd\x34\x69\xaf\x3e\x26\xb1\x20\xc3\x97\xc2\xc5\xa0\x17\xc6\x9d\x84\x13\x03\x2a\xad\xda\xc4\xed\xb6\xa9\x0d\x2d\xf0\xc6\x4a\x4e\x44\x1a\xfd\xaf\xa8\x43\xa2\x2a\x2b\x35\xec\xc8\xc7\x39\x2d\xec\x01\xed\x23\x9e\x42\x47\x25\x87\xe3\x31\xec\x2a\x94\xf8\x6a\xa1\x36\x9b\x8f\x25\x3b\x18\xc8\x6c\xe6\x6c\x40\x2b\x41\x4c\x60\x67\x2d\xc2\xff\x34\x5e\xaf\x5d\x91\xee\x52\x88\x45\x52\xcd\xd9\x4c\xc4\xc8\xa2\xc0\x8e\x84\x0d\xed\x39\xee\x81\xf3\x10\xab\xfe\xe1\x36\xf9\x9e\x2b\x46\xaf\x6d\x1d\x94\x5b\x87\xd5\xd6\x36\xfa\x7e\x82\x37\x08\xc3\x39\x61\xc5\xeb\x36\x81\x5e\x3f\x6f\xfc\x4c\xfa\x9d\x6b\x18\x76\xdf\x34\x37\xfb\xa6\xf5\xae\x8a\xb0\xd0\x51\x83\x83\xf3\xd4\x8d\x51\xa1\x6b\xff\x61\x68\xa3\x8a\x8e\x0a\xaf\xa7\x0f\x21\x18\x0c\x06\x2c\x1c\x04\x03\x23\x0c\x1d\x24\x4c\x77\x1d\x17\x6a\x24\x20\x90\x30\xea\x35\x35\xa2\xbf\xe3\xdf\xbb\xa5\x0e\x7a\x3b\xaa\x2b\xb2\x27\xf9\xfe\x3d\x94\x7c\xb7\x64\xdc\xea\x32\x5f\x45\x5a\xd2\xfd\xb1\xa1\x9b\x3a\x3f\x3a\x38\x7d\x77\xf6\xfe\xf2\x48\xa9\xb8\x9c\x8a\xf4\x1b\x4f\x83\xe1\x21\xed\x69\xf0\x60\x70\x91\xf9\x91\x94\x89\x8d\x9d\xf8\x47\xdc\x0e\x47\x1f\x3b\xd4\x49\x35\xe6\x54\x6f\x4b\x25\xa4\xbd\x4d\x7e\x2b\x59\x81\x62\x6d\x52\xdf\xd2\x28\x7d\x1c\x23\x2d\x9d\xd5\x1a\xe7\x1f\xf1\x8f\x09\xab\xd4\x83\x16\xff\x93\x2d\x13\x5c\xe5\x97\x10\xda\xd7\xa2\x55\x43\x85\x06\xab\xba\x9d\xdb\xa0\x35\x5b\xf3\x0c\x9d\x23\xf5\xb3\xd7\x1e\x96\xf7\xcf\x0d\xd0\xd9\x5f\x24\x03\xad\x9a\xf0\x8f\xce\x26\x54\x5a\x6f\xde\x86\xaa\x8e\xa2\x6d\x2f\x45\x6d\x4c\x8d\x83\x2b\x8d\x07\xd5\x58\x07\x7a\xf8\x7f\xc0\xb4\xff\x44\x56\xd1\x20\x4a\xa3\x41\x76\xbb\x78\x19\xe1\xe8\x7b\xf9\x3b\x17\xf2\xe7\x0f\xf2\xe7\x8d\xfc\xf9\xb7\xe8\x6f\x69\x34\xf8\x7d\x59\xc2\xfb\xbf\xc9\xf7\xff\xeb\xcb\xb7\xff\x25\x1f\x7e\x55\x0f\xff\x39\x94\x0f\x44\x3d\x7c\x77\xf8\x32\xaa\xf1\x3f\xc9\x8b\xd1\xe0\xfb\x1f\xa2\xbf\xfd\x4a\xc6\x2f\xf0\xbf\xfc\xa7\x1b\xb7\x9a\xa8\x8f\x4b\xf6\xd3\x88\x8e\xdd\x40\x89\x26\xec\x27\x21\x74\x8f\x92\x28\x4a\xdb\xf6\xd7\x83\x41\xec\x19\x4d\x23\x2c\x07\xf6\x1f\x72\x60\x1d\x98\x52\x07\x88\x28\xed\x88\x5f\x46\x3b\x83\x37\x18\x3b\x6e\x3d\x51\x05\xed\x9c\x29\x87\xf2\xac\x03\xda\xa8\xc5\xd2\xbe\x67\x36\xf0\x52\xbd\x64\x3a\xa3\xb1\x12\x7a\x34\x6b\x90\x50\x67\xb6\x44\xa3\xe5\xea\xd5\xc8\x6c\x13\xbe\xc9\x8a\x69\xae\x3c\xc3\xdc\x11\x65\xcf\xa8\xbe\xd1\x41\xac\x8c\x35\x57\x81\x41\x62\x98\xb2\xba\x51\xae\xc1\xdb\xe4\xe0\x79\x0e\x86\x43\x9e\x49\x53\xcc\xba\xb0\xff\x5d\x1c\x13\x91\x4c\x15\x26\xf8\x5b\x10\xc9\xd5\xf1\x10\x97\x68\x6f\x05\x88\x1a\x34\xe5\xd8\x37\xc8\x4b\x4b\xac\x5c\x50\xc0\x1e\x06\xaa\xfa\x89\x81\x1c\xc5\x64\x8f\x59\x88\xbd\x8d\xea\xf4\x49\x45\x01\xa0\x98\x1a\xa0\xb3\x8c\x0b\x96\xe5\x8f\xce\x82\x9f\xce\x41\x22\x6f\xc8\xe2\xbe\xd7\x7a\x39\x31\xba\x5a\x70\xba\xc8\x38\xdd\xe7\x37\x55\x0b\x40\xae\x9e\xb2\xe9\x41\xa0\x1d\xd0\x88\x06\xb5\x55\xae\xea\x1e\x43\x4e\x97\x5c\x36\xa1\x56\x96\x81\xee\x93\x52\xa7\x36\x33\x68\x25\xab\xcc\xe0\xf6\x4c\xe9\x75\xc2\x78\x68\xfd\xfa\xcd\x4a\x39\x3b\xd7\xa9\xfc\xa5\xac\xb7\xeb\x5f\x25\x71\xd9\x68\x46\xc4\xa8\x72\x42\xa7\x64\x15\x4c\x30\xa8\xf6\xd4\x8b\xcb\xec\x46\x3e\x79\xc3\x20\x1f\x15\x6d\x85\x27\x6d\xc1\xdc\x82\x6b\x72\x62\x4f\x30\x7e\xdc\xda\xc5\xfa\x9a\x64\x1e\x55\x19\x07\x59\x9e\x53\xee\x55\x78\x31\x29\x17\x60\x47\xe5\x59\x4e\x6e\xac\x43\x95\x71\xac\x21\xf4\x65\xae\xcf\x3c\x5b\x2c\x94\xb6\xd2\x73\x7f\x85\x08\x14\x6a\x4e\x2b\xda\x57\x47\x1e\x4c\xaf\x81\xf4\x0f\xf1\xfc\x0a\x3d\x7c\x70\x05\xc0\x25\x11\x89\x64\xc0\x83\xb7\x0e\x9c\x4b\xc5\x39\xa4\x9f\xfb\x4b\xa7\x02\x3f\x2f\x4b\x71\x6e\x3c\x9c\x62\x00\x28\x14\xbc\x94\x3d\xc5\x14\x61\xdf\x38\x98\x62\x13\xa2\x2a\x85\x2b\xd5\x95\xf3\x5a\x02\x1d\x09\x32\x56\xb4\x89\xb1\xd6\x2f\x61\x31\x03\x58\xd3\x86\x61\x41\xab\x4c\xa7\x26\xda\x5b\xd4\x2c\x07\x4c\xe5\x79\xcf\x33\x15\xe6\x4e\x2d\xd1\x4b\x4e\xa9\x51\x6d\x9a\x7c\xda\x22\x21\x32\x75\x42\x29\xe6\xa3\x72\xa9\xcf\xe4\xe4\x4f\x92\xa3\x77\x67\x97\xbf\x5c\xed\x9f\xff\x78\x81\x4d\x24\x03\x83\x35\x60\x6d\x8b\xb5\x01\x27\xd2\x81\x13\x35\x63\x05\x7e\xe8\xd5\x60\x50\x69\x8f\x16\xf7\x4b\x47\x9c\x98\x92\xd2\xa4\x0c\x3e\xc8\xae\xe7\x83\x01\x44\xe4\x54\x33\x36\x27\x53\xbc\x20\xf3\xe4\xb6\x5c\x16\xe2\xac\x64\x85\xe8\x65\x09\x05\xcf\x0b\xb2\x72\x2f\xd3\xc5\x13\x06\x40\x65\x33\x03\xa0\x9e\xf4\x00\x2c\x1e\xea\xf4\xbc\xdd\xdf\xfa\xb1\xca\x4c\x2d\xc0\x1c\xef\x38\x2f\x0c\x3d\x69\x6e\x9c\x79\x32\xc9\x16\x62\xc9\xe5\xa0\xd9\x1a\x83\x65\x65\x2b\x17\xd6\xac\xac\x06\x8f\x9f\x89\xb5\xd8\x3e\x74\x66\xc9\x71\x86\xe1\xb6\x2c\xbb\x6b\xd7\xe2\x86\xc6\xfa\x5e\xe4\x19\xc2\x66\x84\x06\x83\x67\x67\xd6\x39\x55\x19\xcf\xcb\xa9\x56\x1e\xaa\x2d\xc0\x67\x56\x77\x1c\x2c\x2b\x3b\x0a\xb4\x76\xb4\x3a\x1e\xe2\x9b\x64\x59\x48\xca\x60\x2c\xd0\xc0\x1d\x38\xab\x74\x36\x80\x5b\x0d\xce\x43\x07\x94\x48\xe5\xb7\x0b\x9a\xcf\x62\xb5\xd1\x69\xed\xa0\x1f\x01\x0a\x35\xf3\x23\x94\x6c\xd8\x90\x7b\x2d\x9e\x39\x9d\x26\x07\xa7\x27\x17\x97\xfb\x27\x97\x92\x8f\xef\x3e\x30\x68\x62\x68\x43\x6c\x3d\x45\x5a\x65\x4b\x0e\xeb\x09\xc3\xe9\xcc\x7d\x64\xd1\x72\x1b\xe8\x59\x7c\x66\x66\xb3\x3f\x74\x19\xcf\xc9\xa9\x49\x8b\x40\xc8\x9e\x7d\x68\xf5\x27\xbb\x65\x0a\x32\x0b\xe4\x99\x1d\xb3\xd9\xcd\xca\x7c\x4e\x26\x84\xba\x8f\xed\xff\x4f\xcd\xd4\x0d\x15\x7a\x17\x4a\x26\xcc\xbf\x62\x6e\x5a\xeb\x86\x53\x03\xfc\x0e\x0a\x36\xb9\x15\xd5\x87\xef\x92\xb6\x22\x65\xe6\xee\x3a\x95\xb9\xfb\x9c\x66\x68\x89\xf0\x23\x6e\x81\xad\x99\x2a\x68\xda\x2a\xc8\x08\x08\x95\x44\xd6\x75\xd7\x94\x68\x6f\xe0\x26\xd4\x87\x24\xac\x26\x74\x91\xd9\x67\xdc\x44\x2d\x9a\x67\xd5\x47\xc5\x49\x68\xd6\x8e\x30\x2f\x2a\xcd\x39\x9d\x11\x2f\x72\x67\xfb\x95\x2c\xfb\x9c\xde\x31\x70\x52\x35\x5c\xfb\xde\x30\x05\x3a\x00\x67\xda\xeb\x92\x03\x25\xe0\x89\xc8\x6e\x0c\x04\x87\xe2\x1a\xc8\xc3\xcc\x84\xe4\x20\x36\xd2\x75\x90\x75\x49\xd2\x6e\xc5\xe5\x16\x00\x04\x6f\x0d\x9f\x9c\xd1\x0e\x96\x1f\x77\x32\x84\x13\x51\x21\x90\x8c\x69\x2a\x0d\x98\x9a\x46\x40\x24\xcf\x2a\x1d\x81\x80\x16\x02\x23\xc7\x91\x57\xa0\x1e\x65\xf0\x76\x0a\xbe\x1f\xe4\x34\xe3\x6a\x61\xda\x00\x91\x9d\xd6\x97\x14\xf5\xf8\x60\x10\xc3\xb7\x89\xcc\xa4\xbf\xc8\x44\x48\xde\x7b\xdc\x97\x46\x3e\x79\x4e\x1b\x4f\xa5\x24\x08\xf9\x52\x3b\xfa\x0b\xfd\xb5\xcb\xc4\x0a\xf7\x8c\x28\xce\x5b\x41\x13\x6a\xae\x0f\x73\xc7\x6a\x2e\xb5\xa8\x23\x98\xcb\xf6\x12\xb6\x90\xf0\xc6\x62\x1d\x7b\xf2\xa1\xb4\x00\xc6\x60\x0a\xb7\x3b\xb8\xc6\x19\x3e\x2a\x73\x3c\x95\x73\x7c\xa2\x46\xc8\x11\x97\x38\x43\x98\x8e\x3e\x8e\x01\x02\x65\x0a\xf1\xcf\x97\xb7\xea\x24\x92\xaf\x11\xe6\x75\x4f\x89\x7c\x4c\x54\x3e\xd5\x81\x99\xdf\x81\x47\x9a\x2e\xb9\x67\x55\x86\x30\xc1\x55\x0b\x2f\x98\x18\x2d\xee\x88\xa8\x75\x23\x83\xfb\x17\x24\xab\x95\xb9\xad\x8f\x23\x1e\x76\x08\x84\x60\xac\x52\x42\x2b\x14\x0b\xb4\x27\x77\xc9\x82\xc6\x62\x44\xc7\xb6\x0a\xac\xed\x7a\xd3\x49\x72\xc6\xd9\x2d\x53\x8e\x10\xba\xcd\x86\xed\x12\xb6\x7f\x0b\xd7\xbf\x19\x5d\x39\x4a\x73\xab\xaf\x65\x16\xa3\x83\x50\x1d\x2d\x4e\xf8\xd1\xe2\x38\x01\x83\xdb\x58\x40\x88\x19\x8b\xc8\x68\x8b\x31\xe1\x77\xac\x4f\x38\x24\xf6\x64\x1f\x37\x41\x02\x30\xe4\x05\x18\x36\x31\x1a\xca\xb9\xb2\xc2\x52\xbc\xeb\x09\x5a\xd1\x9e\x2a\x77\x34\x1c\xa3\x54\xb7\x14\x88\xed\x35\xc5\xf7\x14\x5f\x51\xb2\x5a\x64\xbc\xf2\xe2\x5c\x84\x61\x04\x6c\x74\x01\xa3\xe1\x1c\x51\x4c\xf1\xd6\x70\xdc\x33\xe8\x5b\xd5\xf2\x5a\x09\x72\xe2\x21\x86\x38\x79\xfe\x2b\xb1\xbd\x6b\xfa\x3a\x92\x24\x77\x6b\x77\x5c\x2b\x9e\x34\xcf\x0d\xe6\x14\x2e\xa1\xea\x11\x20\x0b\x8c\x09\x70\xec\x11\x9b\xca\xae\x55\x01\x8a\x13\xd8\x62\x53\x9c\x39\x7b\x66\xa0\x95\xcb\xc1\x20\x5e\x12\x6a\x14\x6b\xc7\x53\x84\x97\xe4\xa1\x29\x5d\xea\x18\x82\xe0\x8f\xe1\x0c\xa0\x65\x9d\x78\x89\xb7\x86\x58\x39\x73\x2a\xd0\xaa\xcc\x0d\x47\x12\xa1\x1f\x76\x76\xf1\x9c\x4c\xf7\x6e\x24\x69\xcd\x8c\x52\x37\x89\x10\x4a\x21\x3e\x49\x86\x7a\xd7\x1a\x27\xd5\xb9\xe3\x1d\x5f\x5c\x7d\x38\xbe\x38\x7e\xf5\xf6\x08\x7c\xf0\xee\x73\x0a\x7d\xf3\x8c\xd7\xaf\xe9\x60\x10\xcf\x81\x94\x5f\xcb\x62\xe6\x18\x4a\x8b\x58\xf5\x81\x55\xec\x3a\xa7\x11\x72\x1e\x24\xae\xc5\x15\x9e\xe3\xad\x5d\xdd\xdc\x1a\x7f\xa6\x44\x76\x63\xca\xaa\x45\x9e\xdd\xa7\xfd\xa2\x2c\xe8\xcb\xe8\xb1\x16\xc5\xd7\x94\xc0\x02\x7f\x20\xda\x9f\xda\x9c\xc2\x48\x4f\x75\xa3\xcc\x79\x28\x77\xab\x3e\x09\x45\x76\xa3\x45\xbe\xe5\xed\xb5\xe4\x91\xe2\x91\x90\x2f\x31\x9c\x5c\x80\xbd\xa4\xf6\xb4\xc2\xc5\x71\x85\x5b\xea\xa4\xf7\xb3\xad\xc4\xee\x6c\xa3\x16\x15\x0e\x3e\x81\xcd\x62\x0b\x88\x46\xb7\xa3\x7e\xa3\xe7\x76\x93\xc9\xd5\xbd\x07\x71\xe1\x52\x6e\xae\x04\x9f\x81\x21\xf7\xfd\xbc\xac\xb9\x99\x73\x11\xa8\x6b\x7c\x4f\x89\xa6\xb6\xe4\x87\x95\x68\xac\x18\x35\x99\x58\xcf\x1b\xc5\x9d\x85\x28\xd7\xbb\x38\x98\x4c\x8e\xdc\xc4\xa9\x83\xea\x88\x92\x55\xb8\x31\x94\x80\x61\x04\xa0\x1b\x8d\xd0\x9b\x72\x87\x80\x11\x3f\x2a\x1a\x2d\x52\xe0\x8c\xf8\xa1\xe5\x5f\x22\xbb\xc6\x1d\xec\x71\x85\x73\xc2\x5a\x4b\x7d\x49\xf2\x3d\xe6\xad\xf2\x74\x34\xc6\x53\x92\xab\xe5\xbf\xd4\x6b\x9e\xa1\x5e\xe5\x62\x2c\x94\x40\x6a\xbf\xd0\x78\x8a\xf3\xbd\xe5\x68\xe9\xd4\x2b\x29\x43\x20\xf9\x38\x95\xdf\xe0\x94\xd9\xd0\xf8\xca\x5b\xd4\x46\x10\xf3\xa5\x75\x88\x04\x4b\x53\x9f\x1b\x8b\x4c\xcc\xcd\x32\x95\x4b\x91\xc2\xda\x53\xc6\x3f\x06\xe6\x68\x7a\x26\x13\x01\xd7\xf9\xd8\x62\x84\x35\x07\x60\xd8\x3a\x1a\x6b\x26\xe6\xa9\xc0\x61\x51\x46\xbf\x6f\x57\x9b\x89\x95\xd2\xa8\x31\x1e\xe2\x7b\x1f\x6c\x49\xb8\xf8\x13\x74\xbd\x56\xb1\xc2\xad\xec\x5b\x73\xc5\xaa\xef\xa7\x6d\x3e\x58\x59\x27\xc2\xbf\xae\x71\x10\x7c\x29\xe6\xf7\x36\xf4\x66\x96\x57\xf7\x66\xb3\xda\x61\xf1\x7b\xbf\x82\xdc\x29\xc5\x2a\x63\x2a\x30\xe4\x69\x76\xcd\x6e\xc6\x3d\x91\x72\xc5\xb3\x5f\xd0\xa6\xd3\x14\xb8\x23\x46\xa8\x67\x3d\x13\x2f\x94\xdc\xf0\xb2\x99\xf2\xe2\xf4\xfd\xf9\x81\x4c\xa9\x7a\xf9\xee\xc9\xec\xc3\x83\xac\x43\x38\xed\xa3\x4b\x3a\x26\x74\x33\x27\x61\x3a\x64\x38\x8a\x76\x02\xed\xd9\xf3\x90\xff\x50\x57\xbe\x87\xd3\xd7\xa3\x0b\xfa\x87\xf2\xc1\x98\x9f\x35\x47\x72\x1f\x90\xc8\x7d\xf5\xde\xbe\x7f\xf9\xa2\x8e\x87\x38\x68\x4a\x2f\x31\x84\xd4\xeb\xd0\x95\x70\xd9\x44\xc4\x08\xc7\x25\x81\xdf\x8e\x56\x64\x36\x4d\xcf\xb9\x94\x93\x6c\x2f\x66\xc0\x69\x8a\x44\x03\xc1\x0c\x06\xf6\xe7\x88\x8f\x51\xea\xd7\x42\x32\x15\x7d\x4f\x96\x6e\xf6\x41\x9c\x24\x09\x45\x9a\x99\x15\x64\xa5\xcd\x6c\x99\x92\x6a\x51\x9c\x67\xd7\x34\x4f\x1d\xf4\xd1\x24\x2f\xab\x25\xa7\x3b\xda\x7f\xe1\x59\xc6\x26\xca\xf8\xc7\x78\x3e\x08\xac\xb5\x8f\x46\x19\x29\x89\x6e\x92\x24\x85\x0a\x90\xef\xc6\xef\x53\xc0\x28\x81\x5b\x16\x96\x4c\x90\x39\xbd\x8a\xce\x40\x8e\xac\xeb\x6d\xaf\x18\x1d\x8c\x09\x33\xf6\x5f\xfd\x92\x0c\x5f\x96\x8e\x65\x2c\x8d\xcd\x41\x46\xc4\xa8\x1c\xe3\x8a\xa8\x63\x24\x43\x38\x27\x7c\x94\x8d\x7b\x1d\x93\x96\x0f\x06\xf9\xe8\x8c\x8e\xf7\x38\x84\x73\x49\xab\x07\x9d\xe2\x62\x48\x25\x49\xf2\x6f\x54\x41\xc0\x63\x26\xdf\x54\xb8\x50\xd1\x60\xac\x4d\x08\xf0\x9a\x84\xe3\x02\xd6\xdf\x79\x73\xfd\x9d\x1f\xbd\xb6\xdb\xf8\xb7\x0d\x84\x7a\x54\x25\xef\xde\x5f\x42\x64\x8a\x83\xa3\xb7\x6f\xc7\x64\x6b\xa8\x7d\x0e\xe5\x0e\xc5\x8e\x89\x27\xc2\x13\xf8\x98\x14\x4f\xd9\x16\x87\x4d\x47\x78\xc5\x18\xac\xea\x5e\x03\x05\xf9\x19\x10\xc8\xc2\x1e\x89\x05\xfa\x7e\x08\x43\x56\x8c\x01\x07\x19\xb9\x38\x45\xdd\xca\x46\x5d\x8b\xc2\x68\x35\x65\x2b\x9f\xd4\xca\xa8\x0e\x86\xd0\x34\xbb\x68\x3a\xd3\xc6\x14\xbd\x64\xdf\x17\x7e\x68\x70\xaf\x55\x23\x36\x86\x86\xb5\xfa\x64\xe2\x71\x1d\x57\x47\xd6\x23\xd6\xf6\x4c\xe6\x52\x9d\x19\xb1\x31\xf4\x47\xfe\xb7\xe7\x11\xaf\x81\x62\x9f\x50\xf2\x74\x08\x9f\x63\x4a\x46\xe3\x97\xf1\x10\xe7\x4a\x58\xf4\x1a\xcc\xf4\x51\x7c\x4c\xcd\xca\x78\x1b\xe8\x52\xac\x4f\x76\xe9\x3c\x25\xad\x13\x14\xd7\xfe\x24\x60\x45\x56\xd4\x40\x26\x00\xac\xd0\x21\xde\x52\xd4\x08\x4e\x1c\x46\x7a\x5f\x19\xbc\x64\x03\x66\x61\x5b\x1f\x6d\x17\xa8\x27\x48\x06\x96\x22\x7d\xe1\x92\x9c\x50\xcd\x0f\xc9\x53\xff\x32\xb6\x76\x93\x7d\xde\x13\xc4\xf2\x8d\x22\x2e\x51\x97\x34\x99\x3e\x26\x42\xb6\x92\xf6\xa6\x2c\xf9\x27\x26\x0e\x7d\x7d\x9a\x4f\x61\xec\x50\x9b\xc8\x7d\xfe\xb0\x79\x31\x45\x37\x0a\x11\x9f\x22\xcc\xf3\xb0\xa9\xc0\x3b\x5d\x45\xf2\xbb\x54\x26\x67\x2e\x80\xb5\x85\x24\xc2\x2d\x79\x97\x64\x14\x2c\x2a\x08\xdf\x83\x88\x8f\xda\x64\x6d\xbd\x8e\xa6\xec\x4e\xb9\x56\xb4\x24\xe7\xde\x19\x15\xe0\xb4\xd4\xa1\x22\x95\x83\xdd\x9b\x72\x83\x9d\x42\xd0\xd7\xe8\x0a\x14\x2a\x57\x57\x91\x05\xb3\x34\x9f\xad\xee\x23\xb9\xcd\x16\x78\x65\x12\xa6\xac\x26\x05\x2e\xc9\x21\x8d\x0b\x3c\x72\xf9\xed\x5d\xdc\x97\x9d\x1c\x53\x2d\x3c\x69\x5a\xa6\x97\xd8\xca\x4e\x34\xd5\xc9\x70\xdb\x28\xa7\xaa\x7d\x58\x84\x03\x15\x9a\x5a\xfe\x75\x6a\xf9\x4a\xb1\x7c\x3c\x71\x99\xcd\x8d\xdd\x57\xd7\x77\x61\x40\x57\x28\x23\xab\x51\x35\x4e\x83\xcc\xb6\xdb\x35\x0e\x1a\x9d\xe1\xce\x81\xf1\x96\x7a\x1c\x06\xfb\xa8\xd0\x60\x50\x39\x43\xa9\xa6\xf5\x40\x3f\x27\x10\x77\xeb\x96\x15\xb1\x49\x86\xbb\xba\xd1\xcb\xc8\xea\xa9\x6d\x31\x04\x7a\x49\x86\x2f\x97\xdf\xe7\x2f\x97\xe6\xf0\x9b\x90\x6a\xb4\x1c\xf7\xb2\xd1\x64\x1c\x8e\x55\x26\xe2\x25\xaa\xeb\xf6\xd4\xdd\x58\x7d\xdb\xf9\xfe\x2f\x7a\x16\xb3\xba\x0e\x55\xb7\x56\xe8\xd0\xcf\x48\x91\xdc\x31\xfa\x19\xe7\x44\x34\xa6\x0c\x2f\xdb\x6b\x0a\x4f\xc9\x27\x1a\x2f\xd1\xcb\x46\xe8\x2f\xea\xaf\x4d\x36\x8d\x10\x08\x64\xac\x44\x82\x88\x84\x4d\x51\x8d\x62\x8e\xa7\x08\x4f\x13\xb9\xb6\x95\xb0\x91\x64\x78\x3a\xfa\x34\x26\x25\x9e\x26\xda\xb4\xdd\x53\x79\x3a\xf5\xdc\x60\x10\x4f\x13\x45\x14\x89\x7b\xab\xae\x8e\x73\x92\x1b\xce\x62\x8a\xf0\x82\x3c\xa2\x1a\xf6\xac\xcb\x5e\x53\x3c\x47\x3d\x35\x02\x64\xae\xc3\x1a\x66\x20\xf8\xab\x92\x6c\x3a\xb5\xd8\x05\x72\xee\xe6\x08\xcf\x9d\xb8\xb5\x61\xd3\xa8\xc5\xad\xb7\x24\x8a\xb6\x08\x99\x9b\xdd\xdf\xbb\x5d\xaf\x63\x1a\x4a\x75\x07\x83\x79\x28\xb5\x35\x02\x5b\x3c\x4f\xae\x02\x13\x5c\x70\x4a\xf3\x64\xbd\x0f\x17\x13\xf8\x16\x47\xda\x98\xf1\x06\xf8\x9b\xa9\x9c\xf9\x39\x5e\xe2\x05\xbe\x75\xb2\x37\x7f\xce\xd4\xd5\x53\x4e\xdb\x8d\x13\xd1\x9b\x14\x0a\xda\x58\xa5\xe8\x68\xc7\xed\xe6\x1e\x3d\xac\xdd\x79\x48\xdd\x7b\x63\xd4\xbd\xde\x74\x3d\x4d\xd3\x3b\x7f\xae\x7a\xf7\x06\x6b\x63\xe8\xc7\x75\xab\x37\xe0\x43\x71\xe3\xd4\x9c\x5a\x0b\x11\x6a\x3a\x5b\x96\x2e\x81\xec\xdf\x0c\x6f\x2a\x02\x35\x00\xc7\xa6\xac\xa2\x56\xfb\x13\x56\x61\xd5\x94\xdc\x63\xa6\xa5\xf3\x15\x15\x81\xd4\x9e\x19\xe3\xd8\xb6\x0b\x5d\xee\x3b\x55\x2f\x3b\xdc\xe4\xa6\x3a\x2c\x91\x64\xa0\x0d\x01\xeb\xc0\x3f\x75\x42\xde\x92\x8c\x14\x4f\x6e\xc4\x1b\x2f\x77\x76\xb7\x08\xa9\x5e\x9a\x28\xa4\x74\x54\x8d\xf1\x92\x5c\xd1\x44\xc9\x57\x01\x76\x7e\x39\xda\x1d\xbf\x04\x71\x6a\x69\x59\x38\x08\x5b\x54\x2a\xc4\xb2\x29\xc2\x57\x34\x31\x62\x20\x59\xe9\x12\xaa\x45\xb8\xda\xd9\xa9\x8d\x28\xd6\xe5\x05\x52\x63\xac\x1a\x3c\x7a\xb3\xe7\xfd\x4e\x81\x57\xbf\x59\xb2\xe9\x6b\x50\xdd\xc8\xfd\xde\x96\x7b\x3e\x24\x30\x9a\x7b\xc2\xaa\x87\x65\x89\x96\x01\xbb\xa7\x83\x41\xb3\xad\x4a\x58\x86\x06\x83\x7b\x1a\x6b\xd3\x7a\x14\xe7\x98\xe2\x02\x97\x98\x7b\xb2\xa8\xb9\x2f\xcc\xdd\xa3\x1b\xbb\x42\x51\xaf\xfc\xe3\x5d\xc1\x0f\x77\xe5\x5e\xf2\x09\xb2\x5d\x72\xd8\xf5\x65\x42\x29\xdb\xbe\xd0\x58\x60\x61\x19\xec\x9f\xe9\x7d\xbb\x1d\x5a\x92\x35\x73\x03\xb7\x1c\x0c\x8c\x2c\x4c\xfe\xf2\xc1\xbd\x37\x64\x7e\xa8\x1f\xd4\x97\x1f\xe2\xe9\x60\x30\xb5\x65\x4f\x83\xb2\x8f\xdc\x72\x62\xb8\xc0\x14\x97\x32\xc3\x1f\xa8\x51\xbb\xcb\xc8\x93\x22\xf2\x06\x31\xca\x38\xcb\xce\xcb\x9c\x46\x0c\xc2\x5b\x36\x4b\xe6\xf2\x13\xbe\x93\x83\xe9\x92\x7a\xf9\xe9\x83\x24\x9f\x37\x49\x2d\x7d\x90\xe4\x6f\x32\x8c\xb0\xd4\x67\x74\x38\x26\x02\x3f\xd1\x52\xe2\xf9\xea\x77\x63\xe2\xb1\xd2\x02\x0b\x8f\x67\xf6\xc8\xe3\x5e\x43\x40\xae\xa5\x55\xa3\xf3\xf1\x18\xa5\xf2\x9f\x67\xfa\xf7\x80\xd2\x14\xad\x44\x73\x74\xe2\xd6\x68\xb2\xe2\xf0\xf4\x5d\xa8\x27\x6d\xa2\x70\xb4\xbe\x9a\xc3\x2b\x30\xbc\x68\xdc\x00\xd4\xe9\x83\x7d\xcd\x75\x5a\x04\x0d\xb4\x31\x02\x37\x8e\x2f\x7b\xcc\x62\xc2\x9b\x28\xfe\x0c\xa6\xe6\x2b\x58\x31\xf0\xc1\x60\xcb\x28\xd0\x01\xb3\xc2\x29\xd0\xb1\x89\x68\x54\x4a\x66\x0e\x82\x68\x06\x2a\xf8\xcd\x7a\x77\xc0\x4a\x1a\x02\x50\xbd\xd0\xd7\x74\x79\x8d\x29\xcd\xa7\x5d\xc9\xb1\x79\x43\xe9\xc1\xe2\x44\xa8\xf1\x2d\xe4\x9e\x6a\xd6\x9a\x4c\x11\xae\x75\x55\x56\x58\x8c\xcf\x6b\x6c\xb0\x2f\xf9\xf7\x2d\x76\x67\x6f\xfa\xec\x55\xda\x1e\xa3\x07\x56\xe1\x46\xa3\x12\xea\x09\xe6\x5e\x07\x1f\x12\xb7\x4e\x0e\xa9\xc8\x58\x5e\x29\x97\x05\x96\xe9\xe1\x02\xec\x70\x97\xfb\xeb\x73\x73\xef\xd6\x4a\x3f\xf8\xbe\x6d\x0c\x3b\x0c\x8c\x61\x87\xa1\x31\xec\xd0\x37\x86\xdd\x1a\x36\xcd\x5e\x87\xa1\xd9\xeb\xb0\x61\xf6\x3a\x7c\xc8\xec\xd5\xa6\xee\x34\x70\x1d\x86\x06\xae\xc3\x1a\xbf\x52\xd6\x36\x6f\x8d\xb5\xcd\x9b\x0d\x6a\x7a\x10\x3b\x48\x96\xd3\x48\xe9\xc2\x5b\x92\x55\xb7\x18\xb8\x36\xee\x19\xcc\x14\xa1\x7d\xce\x2b\x5d\x82\x32\xde\x51\xd6\xa6\x14\x87\xe5\xa5\xc2\xb1\xaf\x0d\x03\xef\xf7\xb4\x36\x2a\x91\x0f\x4e\x96\xf4\xb6\x65\xc5\xaf\x91\xc7\x9a\x96\x3c\xb4\x53\x6c\x13\x58\x11\x04\xd2\x95\x20\xb7\x67\x59\xd0\x96\xed\x08\x94\x58\x89\x88\x95\xec\x74\x1b\x0b\x87\xa5\x2a\xb1\xd6\xd3\x2f\x6b\xcc\x5e\xd6\x98\x36\x28\x86\xeb\x16\xb3\xd7\xad\xac\xeb\xba\xc5\x36\x5c\x4e\xd8\xf3\xae\x5b\xec\x09\xd7\xad\xca\x5d\xb7\x98\x02\x36\x29\x3d\x7d\xfd\x83\xe4\xe7\xa1\xcb\x50\xf5\x94\xcb\x50\xb7\xa5\x2d\xdb\x70\x1b\xaa\x94\xf8\xe6\x77\x8a\x3f\x52\xfc\xcd\x63\x36\xed\xc3\x07\x6c\xda\x7d\xd0\x8e\xff\xcd\xdb\xd8\xda\xa9\xff\xd8\xed\xca\xe2\x2d\x7e\xed\xd2\x2e\xa7\xe7\x83\xa4\x76\xbd\xd0\x72\xce\x19\x4b\x5d\xc9\xeb\xee\x6b\x1b\x49\x0c\xd9\xb4\xfe\xae\xe5\xc9\x6c\x99\x43\x08\x38\xed\x63\xb8\x3b\x44\xe1\x66\xfd\xa6\xb5\xb1\x79\x6d\xf9\x23\xef\xbc\xf0\x18\x23\xc9\xfa\x38\x9a\xfc\x8b\x4f\x93\x3f\xd2\xf5\x3a\xfe\x48\x37\xe2\x2c\x65\xf2\x62\xfe\x91\x26\x73\x4e\x67\x44\x4e\xa9\x92\x84\x4f\xca\xdc\x73\xd9\xf2\x74\x37\x20\xcd\xd2\x86\x34\x2d\x54\x64\x79\xf6\x92\xdf\xcd\xc5\x8d\x22\x5b\x16\xc2\xda\x3a\x4f\xec\x45\x69\x94\x0a\x58\x41\xff\xa0\x64\xe8\x14\x6f\x3f\x79\xad\x06\x24\xed\x88\x10\x42\x01\xda\x69\xbd\x8e\x8c\x83\x5c\xf0\xd2\x5c\x24\x82\x97\x4c\x6e\x3c\x51\x72\xf7\x52\x53\xbe\x7f\x76\xcf\x34\x9b\x92\x7f\xd0\xed\x6d\x5f\x8f\xd2\x30\x70\x70\x5f\x6a\x1d\xbd\xcb\x38\xf0\xa9\xe4\x20\xa0\xf5\x9c\xd3\x94\x52\x3c\x3a\xa7\xb3\xbe\x76\x50\x63\x53\xcf\xad\xc8\xe5\xb4\xf6\x18\xdb\x51\x3f\xd6\x45\x4f\x51\x04\x98\x57\xea\xd3\xaf\xdf\xac\x68\x9d\xf6\xbf\xf1\xaa\xab\x7f\xd5\x30\x58\xc2\x3f\xce\x61\x40\xff\x65\x7c\xc0\x3c\x6d\x06\xa7\x0b\x9a\x89\xf5\xba\x23\x58\x83\x5c\xd1\x4a\x72\x49\xb7\x77\x11\xe8\xef\x14\xb8\xa2\xd9\x1b\x54\x04\x23\xe6\x0c\x48\x27\x9f\x60\x3b\xdc\x24\x17\xf2\xb7\x71\x33\x9a\x55\x01\x32\xac\xb5\xb5\x54\xaf\x2f\xa8\x3e\xef\x8a\x72\x4a\x3b\x52\x2e\x32\x31\x3f\x69\x7e\xaa\xaf\xe9\x0d\x2b\x62\xe7\x5f\x46\x83\x03\x82\x7b\x60\xb5\x81\xb4\x99\xe3\xd5\x75\xb9\x2c\xa6\x95\x41\x23\x9a\x55\xa9\x69\x84\xac\xc8\x3e\xd5\x7a\x8b\x42\xa3\x34\xca\x6c\xa1\x0f\x40\x49\x39\x0a\x25\xc9\x8b\x0b\x00\x83\x56\x36\x3b\xda\x68\x31\xd4\xb5\xb9\xf7\xa1\x52\xc0\x58\x5b\xc8\x0a\x94\xc6\xc6\x1d\xf8\xa2\x0e\x19\xc3\x56\x4a\xd5\x07\xc3\x28\xd0\x2f\x4c\xf6\xde\x97\x2a\x51\x90\xf5\xdc\x24\xf4\xcb\x42\xd9\xeb\x99\x99\xd0\xda\x77\x1c\xbd\x7a\xff\x63\xda\xbf\x65\x55\xc5\x8a\x9b\x3e\xa7\xb3\x08\x25\x76\x11\xd7\x93\xf2\xf6\xd6\xb9\xa3\xda\xe1\x35\x92\xb1\x60\x03\xe8\xb7\xe7\x74\x56\xc5\x6e\x6a\xcd\x64\x9c\x65\x62\x1e\x9c\xd8\x2b\xed\xe4\x6f\x7d\xe4\x60\xd9\x38\xd5\x1f\xd1\x11\x13\x4b\x9c\x91\x76\x17\xd4\x74\xc8\x3e\x30\xd3\x87\x7d\x21\xc7\x4d\xd0\x69\x5f\x94\x7d\x55\x69\x3f\xeb\xcb\xc9\xc4\xfd\xeb\xa5\xe8\x8b\x39\xe5\xb4\xcf\xaa\x7e\x51\xf6\x75\xdd\x7d\xc5\x0a\xf4\x21\xd2\x8f\xef\xd9\x57\xa0\x92\x64\x56\x6c\xb2\x52\xb2\xee\xaa\x26\x19\x30\x5f\x38\x27\x30\x88\xea\x1a\x5f\x79\x8a\x4c\x25\xaa\xca\xf7\x4a\xb0\xfd\x93\xbd\xcb\x34\x90\xa3\xa5\x4f\xea\x74\x8d\xfe\x1e\x6d\x2b\xde\xaf\x1a\xe5\xe3\xc6\x92\x4b\xe3\x70\xc1\x83\x1c\xb5\x40\xda\xc7\xdc\x1b\xcf\x02\x47\xf2\x95\x8e\x2c\x10\xe9\x8b\xbf\x8e\xe2\xe7\xb2\xcb\x61\x2a\x54\xb8\xf0\xfe\xd2\xb8\x22\xa9\x76\x71\xac\xdb\x59\x36\xda\xd0\x2b\xa1\x00\x90\x55\xc7\x4b\xd4\xd8\x82\x7a\x23\x2c\x51\x5d\xe7\xa5\xe6\x2a\x60\xab\xbf\x2e\xb9\x9a\x69\x27\xcf\x13\x1d\xd3\x17\xb6\x8d\x3e\x3c\x85\x79\x79\xd3\x9f\x95\x5c\x4f\x66\xdf\x0e\xbc\x9a\xd6\xa2\x84\xe9\xeb\xd3\x2f\xac\x12\x90\x4e\xcc\x33\xe1\x52\x45\x08\x73\x32\x1a\xbf\xb4\x02\x34\x31\x18\xfc\x44\x63\x81\x5e\x2a\x24\x08\xff\x38\x50\x40\x81\x86\x66\xfc\xfa\xcd\x4a\x68\x7d\x82\x72\xe8\x1b\xc9\x17\xf0\x6b\xfc\x6b\x8f\x9b\x70\x6e\x58\x10\x93\x4c\x29\x3e\x79\xb2\x2c\x94\xc1\xa8\xd0\x11\x52\xbd\x14\x66\x54\x18\x19\x71\x45\x51\xa3\x24\x42\x7e\xf3\x5e\x22\xe3\xee\xb5\x65\x5a\x34\x18\x44\x3b\xa2\x5c\xec\xe4\xf4\x4e\x45\x44\x56\x05\xef\xc5\xac\x59\x95\xd7\x18\x94\xba\xdf\x86\x4d\x64\x10\xb6\x0f\x68\x09\xf9\xc1\x1d\x21\x9c\x44\xfd\x08\x17\xe4\xdb\xff\x9f\xc0\xff\xd2\xba\x6c\xb9\x4f\x6b\x79\xba\xfc\x6a\x62\x93\xd7\xfa\x08\x88\xfe\xa7\x88\xc0\x8b\x13\xce\x40\x36\x8b\x87\x06\x16\x06\xb6\x70\x52\xb1\xaf\x14\x02\xcd\xbf\xdc\xf2\xde\xb2\xea\xe8\x76\x21\xee\x63\xf4\x12\x79\x6f\xc1\xa3\xbf\x36\xa4\x71\xe5\x7f\xd1\x71\x26\x14\x51\x5b\xb5\xf2\x38\x2a\xe8\xeb\x86\x37\x10\x89\x16\xa1\x53\x3b\xbe\xf6\x29\x78\xd3\x17\x58\x55\xa6\x29\x05\x2e\xe0\xd4\xf9\xa7\x5c\x38\x16\xef\x05\xe8\xa8\x8a\x04\x50\x20\x73\xd6\xe8\x8b\x88\x69\x1e\x47\x3d\xa6\x12\xca\x8d\x04\xc1\x68\xd4\x94\x10\xa6\xd5\xe4\x96\x54\xea\x14\xb5\x4f\x48\x2d\x5b\x35\x1a\xb7\xc3\x17\x72\x6d\xd0\x53\x68\xfb\x67\xd4\x2b\xf6\x84\x17\x6b\x55\x17\x24\x37\x9a\xb9\xf5\xec\xc8\x76\xa5\xd1\x36\x4f\xd8\x14\x17\x08\xa5\x34\x99\xd2\x9c\x82\x05\x27\x84\x25\xf4\xf3\x34\x47\xc4\xf4\x49\x20\x7d\x69\x50\x86\xf0\xc6\x8c\xa8\x74\x57\x83\x4c\x9d\xa8\x55\x4d\xb8\x09\x72\xab\x0b\xb6\x27\x1f\xb7\x71\x6e\xf5\x97\x57\x70\x96\xc9\xf7\x13\xd2\x3a\x50\x6c\x4c\xcf\x15\x9b\xa6\x14\x77\xd5\x6e\x55\x7b\x5e\x2b\xec\x05\x25\xc7\xfa\xb8\x5f\xe2\x89\x9c\x6d\x4e\x8b\x74\x52\xd7\xcd\x46\xf9\x8e\x6b\x8e\x7b\x02\xad\x5d\xa7\xeb\x1a\x50\x19\x4e\x79\xe2\xc0\x1b\x15\xa8\x4a\x1d\x76\xca\x07\xac\x76\x8b\x94\xea\xf3\xbb\xb1\x36\xd5\xcb\xc8\x69\xcf\x61\xbd\x18\x7b\x00\xb3\xa5\x2d\xd2\x2f\x9e\x99\xb0\x09\xa9\x48\xec\xef\x18\xe1\x3c\xb3\xaf\xcd\xcf\x18\xd9\x7b\xbe\x10\xdd\xdc\xae\x6f\xf1\x07\x23\x7a\x69\x0d\x8f\x81\x20\x83\x50\x29\xbb\xce\x7d\x0c\xf3\x2e\xe3\x64\xcf\x40\xd4\x14\xf3\x34\x23\x65\x30\x48\x17\xd9\xcd\xeb\x92\x1b\x2f\x03\xda\xf0\x3e\x38\xe3\xe5\x17\x88\x35\x00\xb0\x06\x10\x2d\xf2\x6a\x52\x16\x82\x16\x42\xdf\xab\x40\x91\x35\xd5\x02\x4f\x8b\x78\x61\x5b\x02\xe6\xf4\xf4\x73\x9f\x83\x05\xe2\x63\x16\x8a\x7a\xc4\xf8\x83\x23\xe6\xdd\xaf\x0a\xbf\x38\xda\x37\xeb\xb1\x9c\xf5\xb9\xd8\x6b\xc0\xe2\x0a\x42\xed\xd5\x67\xbd\x36\x68\x0b\x16\xb8\x41\xf8\x06\x50\x5b\x2d\x4c\x34\x6b\x3a\x60\x29\x7c\x68\x71\x40\xd1\x7a\xad\xc7\xec\xe8\xf6\x9a\x72\x78\x2b\xc7\x67\xaf\x12\xc9\x8c\x97\xb7\xc7\x92\x75\xd1\xc2\xbf\x34\x4b\xde\xec\x5f\x5c\x9d\xec\x5f\x1e\x7f\x38\xba\xba\xf8\xe5\xdd\xab\xd3\xb7\x83\xc1\x5c\x76\x66\x6f\xa2\x92\xcb\x54\x53\xe1\xe5\x7f\xad\x48\x91\x29\xa1\xa3\xd4\x3a\xa6\x6a\x88\x50\xda\x44\x04\x6e\xf8\x92\xd0\xd0\x22\x62\x43\x87\xf6\x4a\xd7\x94\xee\xae\x65\x2e\xc1\x03\x3d\x5a\x36\x7b\x54\x76\xf6\x08\x36\xb3\x43\x20\x61\xdd\x6b\x40\xc7\x05\x34\xb6\xd2\xda\x66\x82\x0c\x6b\x7b\xea\xad\x2c\x9c\xd1\x2d\xbd\x2d\x83\x83\xab\x4f\xeb\x82\x7e\x11\xda\x5e\x58\x15\x95\x52\x0b\xba\x1e\x78\x71\xfd\xe0\xc0\x9a\xec\xdc\x73\xef\xc6\xa8\xc9\xb3\x06\x44\x33\x55\x39\x73\xa6\xa0\x7d\xdb\xdb\x26\xde\x23\xc7\x32\x69\x5a\x58\xea\x50\x0a\x67\x51\xd6\xea\xb2\x92\x02\x1a\x05\xad\xb9\x0c\xc9\xf1\x27\xb4\xae\x40\x06\xd8\xd7\x63\xeb\x24\xbf\xc6\xec\x05\x8c\xd8\x65\x0e\x3b\xba\x5e\x8e\x70\xf0\x1f\x38\xfa\x28\xf9\x41\x18\x16\xc1\x78\x7e\xc9\x1a\x85\x26\x31\xe1\x00\xbb\x06\x8e\xe8\xd8\x74\x31\xfb\xdf\xd8\xc5\x76\x9b\x1a\xc1\xd3\x5d\xf9\xd8\x11\x9c\x6a\x73\x0b\x3d\x53\xed\xb0\x8d\x9f\xe8\x7d\x15\x90\xef\x8a\x08\xbf\xc1\xfe\xd6\xd4\xe3\xab\x0d\x1c\x65\x4e\xc9\x28\x99\x15\xc8\x6b\x22\xe4\x9a\x1b\xb6\x90\x4e\xac\xd1\x27\x19\x8d\x31\x23\xc3\x97\xec\x7b\x0e\xd6\x93\xf6\xc2\x26\x46\x6c\xdc\x2b\x09\x1d\x65\x63\x45\x88\x59\x65\x83\x2d\xc5\x48\xb9\x07\x86\xfe\x6f\xf0\x42\x51\x7d\xe5\x89\x84\x70\xb8\xf3\x4b\xd4\xe1\x35\x17\xe4\x2a\x71\x34\x1a\x47\x08\x21\x5c\xa8\xa5\x51\x5a\xb3\x4b\x3b\x21\x92\x53\x7b\xc2\x82\x83\x2b\x03\x2e\xc8\x10\x33\xb2\xb5\xdb\x5e\x7e\xbe\x01\x43\x89\x56\x31\x23\x6c\xbd\x6e\x06\xba\xf8\x81\x7c\x0b\x76\xae\xba\x2d\xd8\xc6\x4e\xc3\xc5\xf6\x76\x8d\x14\x6c\x57\xb1\x27\x87\x34\x65\x7b\x5e\x13\xb9\xf2\xe6\x28\x85\x64\xca\x36\x2d\x67\x35\xb9\x72\x3d\xb7\x09\x8a\x5d\x09\xde\x72\xcf\x3b\x56\x90\x3a\xbf\x84\x32\x61\x35\xab\x86\xd3\x6a\x99\x5b\xef\x5c\x8f\x96\x35\x96\xbd\x36\xa4\x1c\x29\x63\xda\xc4\xdc\xa3\xc6\x31\xc4\xde\x48\x14\x49\xc3\xab\x69\x59\x80\xa1\xa9\x0d\x05\xa7\x7b\x1c\xf4\xb7\x8b\x4e\x7a\x34\xd1\x34\x31\xa5\x58\xb5\x2e\x15\x8e\x3c\x72\xdf\xc9\x55\xd6\xd6\x22\x90\x45\x93\x40\x62\x8e\x30\x6b\x90\x48\xcc\x37\x12\x49\x7f\x58\xa8\xed\x98\xa2\x9c\x85\xa2\x9c\xcc\x52\xce\xa5\xdb\xb4\xb9\x58\x75\xcc\x9e\x36\x69\x77\xd3\xe6\x63\xe7\x98\x52\x26\x4f\x2c\x65\xb4\xdb\x35\xff\xe6\xe3\xd0\x97\xfa\x4e\xc5\xc3\x01\x82\xcd\xe2\x76\x39\xe6\x8f\xe4\x68\x4d\xbd\xcb\x3a\x13\x01\xa9\x0b\x98\xb6\xbd\xce\xdd\x6f\x78\x3e\x17\x5f\x85\xe2\x48\x33\x75\x11\x42\xd8\xc0\xbe\xfa\xfe\x8a\x91\x24\x2b\x4b\x31\xbf\x97\xbb\x3e\x05\x3e\x50\x93\x8b\x67\xd6\x03\x74\x03\x2b\xa0\x36\x4d\x4e\x53\x17\x9f\xa0\x86\x72\x9c\x62\xfa\xfe\x90\x4d\x55\x2c\x36\x85\xad\x16\x04\xed\xa5\x45\xb5\xe4\x56\xc5\x10\x23\x6d\x1d\x56\x51\x71\xa1\xc3\xf9\x6a\xd9\x1c\xb2\xf7\x70\xf0\x8e\x30\xc1\x7e\x51\x33\xda\xaf\x00\xd0\xe6\x4d\xa5\xd0\x29\x02\x6b\x94\x66\x19\xda\x5f\x5c\x97\x21\x4b\xd0\x32\xdb\x45\x37\x07\x03\x88\x2e\x84\x3e\x64\x56\x07\xe9\xae\x1a\x7a\x24\xb8\x16\x53\x65\xa0\xd1\x6f\x7c\x53\xd2\x81\x8d\xe8\x38\xfe\x6e\x6b\x16\xdb\x13\x73\x5e\x7e\x06\xba\x7d\xc4\x79\xc9\xe3\xe8\x20\x2b\xfe\x26\xfa\xd9\x64\x42\x01\x76\xe0\x7a\x79\x63\xa4\x77\x82\x53\xda\x2f\x97\xa2\x62\x53\xda\x97\xdc\xf1\x1c\x78\x6e\x79\xc7\x2a\x79\x3f\x6e\xd7\xdc\x9f\xe5\xd9\x4d\x9f\x55\x7d\x03\xfe\x88\x22\x64\x05\xc9\x9b\x07\x40\xb9\x9e\x35\xd4\x68\x3a\x9b\x93\x94\x3e\x33\xbf\xc9\x67\x36\xfe\xed\x26\x32\x2d\x4a\xb9\x20\xc9\xcc\x28\x85\xcb\x63\xbd\xeb\x48\xa1\x5f\xdd\xa8\x05\x4a\x8a\xe4\x4a\xff\x74\xef\xc1\x31\x4f\xfe\xb2\xd0\x8e\xfa\x55\x45\xad\xf0\x58\xf0\x0c\x66\x73\x01\xf2\x12\x75\x36\xf8\x7a\x4a\x22\x70\x2b\xa0\xa4\xa4\xba\x26\xb0\x07\x28\x77\x7e\xb1\xae\x10\xd1\xac\x2c\xaf\x33\x9e\x5e\x67\x5f\xe5\xe6\x32\x8f\x20\x67\x43\x4e\x8b\xf4\xba\xe4\xef\xcf\xdf\x92\x5f\x28\x88\x5b\xfb\x6c\x16\xb7\x20\xe7\xde\x9f\xbf\x45\xbf\x53\xf2\xfe\xfc\x2d\x6e\xe5\xfb\x99\x5a\x73\xeb\x68\x59\xa8\x68\x81\x53\x97\x55\xdd\xcb\xd7\xeb\x8e\x4b\x94\xfa\x94\xe8\xc8\x3b\xa8\xbd\xe0\xca\x65\x3e\xed\x17\xa5\xe8\xcf\x58\x31\xed\x83\xb1\x8b\x6c\x4a\x7f\x91\x71\xb8\xa7\xdf\xd2\xc9\x3c\x2b\x58\x75\x0b\x52\x47\xf9\xe5\x22\x2b\x98\xd0\xc1\x0c\x23\xd4\xfb\x9d\x92\xb0\x92\x38\x5a\xf2\x1c\x14\xc0\xad\x5e\xd4\xb5\x56\xad\x84\x5f\x82\x5b\x82\x17\x0e\x5b\xce\xde\xa1\x5c\x4a\x07\x92\x42\x7e\xf1\x09\xf5\xc7\x39\xcb\xa9\xde\x1b\xac\xb8\x49\xff\xa7\xf8\x9f\x42\xab\x99\xba\x35\xc1\x9b\x24\xb8\xbe\xa2\xa2\x5d\x9f\x0f\x93\xa0\xc4\xcf\xbd\xe0\xaa\xbb\x4c\xd4\x02\x65\x65\x71\x2c\xe8\xad\xb5\x7a\xdb\x2b\x88\x93\xb9\xa6\x8d\x2c\x86\xc0\xda\xd4\x83\x41\x5c\x10\xa7\xc7\x43\xf8\x81\x7e\x34\x14\x0d\x85\xe4\x2b\xca\x02\xe0\x8b\x15\x45\x7d\xe5\xeb\x8a\x54\x19\x66\xfb\x06\xe9\x0e\x02\xad\x87\x4a\xe8\xf6\xa9\xec\xf2\x9d\xf8\x13\x48\x6d\x6d\xe3\x94\x3f\x83\xc9\xf6\xb0\x56\xbb\x8d\xbe\xe6\x40\x0f\xc4\x46\x27\x91\x64\x43\x24\x5e\x77\xbe\x5f\x3f\x90\xd9\x35\x0e\xc6\xea\x5e\xa9\xc6\xb5\xc6\xb0\x1b\xf2\xcd\xb8\x4c\xae\xa6\x34\xa7\x37\x99\xa0\x00\x29\x8d\x2b\xe2\x9b\x61\xe7\x44\x69\x4c\xa6\x78\x49\x56\x35\x9e\x13\x4a\x7e\xc8\xb5\x8c\x46\x1e\xea\x92\x16\x05\x17\xfe\xb3\xf3\xd3\x7f\xfe\x62\xec\x4b\x57\x37\x26\xa0\x01\x9b\xc5\x39\xa8\x54\x04\x32\xe2\xcd\x5c\x43\x42\x38\x31\x53\xc8\x37\x68\x2b\x35\xe7\xd4\x0a\x92\x1b\x42\x8a\xe4\xe0\xfd\xc5\xe5\xe9\xbb\xab\xcb\xfd\x1f\xaf\x5e\x9f\x9e\x9b\x33\x6d\x5e\xe3\x79\x56\xa5\xfa\x80\x37\xb5\xe1\xf2\x73\xf1\x33\xbd\xaf\x20\xc4\x42\xae\x7d\x1c\x43\xcf\xb4\x43\x5a\x4d\x38\x5b\x88\x92\x43\xa2\xb8\x11\xd3\x74\x52\x16\x33\x76\xb3\x34\xcf\x35\xaa\x7b\x43\xbc\x84\xf1\x05\xf6\x2a\x5e\xe2\x99\x02\xea\xed\x77\xc7\x4f\x5d\xe2\x66\x93\xf1\x2a\x2c\x74\x17\xfb\x55\xee\xea\x80\x50\xf3\x1a\x61\xdd\xe2\xc0\x08\x76\x53\x2d\xb4\x19\x8d\xb5\xd1\x72\xac\x14\xe8\xea\x0e\x91\x87\xd1\x40\x5b\xa3\x2f\xb4\x8d\xa0\x1d\xfd\x5a\xb2\x33\x8c\x68\xbd\xdc\xd2\x8b\x4f\x97\x56\xbe\x2b\x8b\x49\x0f\xb7\x80\x05\x29\x35\x89\x70\xf8\x9f\x4d\xc7\x14\xe5\xa0\x80\x19\xc2\xb7\x30\xa8\x57\x22\x2e\xf1\x02\x57\x98\xe2\xe5\x13\x6c\x6d\x1e\xf3\x3c\xb8\xfd\xc3\x9e\x07\x8b\xe7\x7a\x1e\xdc\x3e\xdd\xf3\xe0\x16\x3c\x0f\x6e\x9f\x04\x06\x06\xc6\x8c\x8f\x59\x97\xf6\xb4\xcb\xa1\xdd\xcc\xdc\xb3\xd7\x2d\x54\x2f\x99\x72\x20\x92\x04\x11\x56\xae\xdc\xf0\xb4\x27\xcc\x9c\x96\xfe\x9c\xb2\xae\x39\xc5\xd7\xf2\x7a\x3c\x18\x70\x5d\xaf\x9b\xd4\x42\x9b\x50\x1a\x43\x5f\xdb\x8c\xa6\xd9\x30\x50\x40\xd9\x27\x9b\xd8\x5b\x19\x81\x15\xe6\xc6\x22\xe2\x0e\xb3\x09\x5d\x2c\x90\xc8\x1a\xb9\x2a\xde\x37\xda\xa9\x98\x66\x73\xa0\x6e\xae\x43\xc7\x97\x56\xc9\x54\x26\xe5\x21\x42\x8b\xbb\x94\x62\x9b\x4f\x78\xf9\x78\x1d\x58\x71\x3c\x00\x89\xe9\x95\xcd\x11\xa6\x0f\x1a\x85\x36\x9d\x0c\xbd\x36\xd7\xde\x6d\x2f\xb0\xb4\xb8\x13\x78\xf5\x04\x08\xd1\xf5\x7a\xf3\x29\xd2\xb4\xfe\xf6\xeb\x9a\x26\xac\x82\x30\xce\x97\xe0\x95\xae\xee\x7d\x2d\x94\x3f\x05\xcb\xd0\x69\xc3\xfe\xc7\xd6\xfa\x26\x83\xdd\xbf\xbc\xe4\x6e\xc3\xca\xe7\x7b\xc3\x1a\x93\x9d\xab\xd6\xfd\x22\x00\x6c\x33\x13\xfa\x24\xb4\x36\x0f\x9d\x26\xdc\xcc\x84\xe1\x8e\x7d\xd1\x98\x60\x17\x9d\xbf\x56\x9a\x9c\x47\x21\xd1\x2c\x88\xba\xbf\x87\xec\xcd\xe9\x73\x67\xcf\x9e\x6c\x65\x6b\x7b\xce\x1b\x56\xb7\x0d\x4b\xdb\x7b\xf1\x3c\x4b\xdb\xc2\x6d\x50\x6e\x85\x44\x47\x1d\x6d\xd5\x2d\x35\xf5\x84\x06\xbd\xad\xf2\x8d\x3b\xb7\x2d\xf2\x8b\x08\x98\xab\x07\xec\x76\xf5\x55\xbf\x13\xb8\x53\x17\x1b\x6c\xb1\xc7\x40\x3b\x81\xcb\x3b\xfd\x33\x1c\xf1\xbf\x09\xbb\x78\xf7\xaf\xc7\x2e\x06\x60\x96\x0d\x0c\xed\x23\x40\xa8\x7f\x05\x0c\xea\xa9\x70\xb6\x6d\xd6\x8e\xc7\xda\x74\xd7\x72\xb9\x3f\x88\x47\xac\x0c\x14\x56\x01\xf0\x71\xed\xc4\xdb\x0f\x32\x2f\x6c\x23\xf3\xa2\x4e\xf4\xa2\x8b\x6f\x51\x12\x2c\xd7\xc2\x07\x38\x16\xa6\x38\x16\xf6\x4c\x4c\x5a\x86\x6a\x84\x59\xed\xc3\x81\x9b\x03\xd2\x43\xa0\x3a\x79\xff\xf6\xad\x07\x3e\xf5\xd7\x01\xc6\xfe\x61\x5c\xce\x3f\x72\x18\x3d\xcf\x8b\xe4\xc9\xfc\xdc\x53\x71\x56\xff\xd0\x31\xf7\xbc\x36\x9b\x63\xea\x72\x93\x18\xcc\x27\xe4\xce\x4e\x32\x24\xd1\x17\x02\xa4\x91\x40\x3a\x43\x23\x45\x45\xab\xde\x09\x79\x75\xa4\x0d\xa7\xf7\x21\xc2\x67\x1b\x3e\x78\xe8\x3f\xc2\x8f\x14\xe2\xed\x6a\x17\xa9\x19\xcc\x8a\x21\x9b\xc5\x74\x8a\x5c\x60\xe9\x34\xf2\x43\x0e\x7b\xf0\x41\xed\x82\x0d\x52\x45\x50\x96\x07\x19\x86\x1b\xe1\x64\x00\x20\x30\x13\xf1\x2e\x6a\x60\x36\x6e\x29\x45\x53\x13\x26\x8b\xa3\xb4\x50\x58\x09\x85\x81\xc7\x2a\x50\x1a\x45\xfa\x40\xf9\xf4\x7f\xb0\x81\x48\x68\x36\xb0\xf7\x90\x58\xbf\xb1\x61\xfd\x3b\xe6\x43\xd6\x21\xf4\x71\xab\x10\x00\xec\x81\x15\x23\xaf\xc2\x3a\x00\x47\xa7\xa8\x91\xda\x28\x23\xd0\xdc\x28\x4a\x2d\x1c\x99\x5b\x5a\xbf\x6d\x5a\x5a\x0e\x1c\x0c\xac\xf7\xce\x85\xb1\xc3\x8b\x3c\x3f\xab\x43\x61\x07\xcd\xb7\x9e\xa0\xd0\xca\x13\x41\xe4\x77\x57\xd7\xf1\x23\xab\xad\xe7\x60\xa3\xb8\x86\x8d\x1a\x15\x38\x49\x12\x36\x76\x90\x4c\xbd\x8d\x9a\x21\x31\xba\xa0\xe3\x3d\xf8\x2b\x8b\x60\x18\xca\x81\x13\x22\xcf\xe3\x13\x81\xdd\x4b\x4f\x41\xf5\xf6\x89\x5b\xa0\xc7\x66\x71\x0b\x86\xd4\x82\x15\x76\xee\x00\xa7\x34\x12\x58\x0f\x3d\x77\x9c\xe3\x6b\xf1\x3c\x7c\x58\xc3\x4f\xbd\x15\x18\x1c\x22\x15\xa3\x56\x2e\xf9\xc4\x39\xf7\x92\x0e\xf2\x62\x4d\x5f\x37\xa7\xda\x7d\x14\x0f\xcd\xf3\xa9\x6a\x54\xf9\xa4\xf1\xd1\xbd\x6f\x37\xc5\x82\xaf\xbc\xf4\xc2\xbb\x63\x0e\xe6\x08\x9e\x3b\x5f\x28\xf7\x6b\x60\x78\xb8\x74\xef\x1f\x99\x4b\x6c\x67\xca\x50\xad\x6f\x03\x6a\x05\x16\xad\xa6\x45\x7b\x76\xf7\xa7\x0e\x87\x68\xaf\x68\xbc\x74\x95\xbf\x7a\x62\xe5\xdf\x22\x47\x32\x37\x57\x6e\xab\xe4\xad\x76\xa4\xb6\x0d\xae\xf2\x37\xed\xca\xe5\xf2\x29\x73\x10\xb4\x03\x10\x9b\xc3\xb9\xb1\xb9\x3e\x34\x72\x69\x78\x95\xc6\x35\xfe\x28\xf1\xa2\x64\xc5\x2d\x9f\x06\x5b\xae\xb1\x56\xfa\x5d\xfc\xb5\xc0\x7f\x92\x26\xc2\xa6\xee\x82\xd7\xbb\xa0\xe3\xbf\x00\x0d\x10\xe8\xd5\x47\x41\x46\x51\x06\x01\xbb\xc1\xba\x39\xc2\xd1\x2d\x15\x59\x84\xa3\x89\xe0\x79\x34\xc6\xdf\x08\xf2\xe2\xff\x86\x80\xc9\xeb\xdb\x72\x59\xd1\xb5\x28\x97\x93\xf9\x0b\x60\xcf\x7f\x14\x64\x65\xf8\x4b\x3a\xdd\x57\xba\xd4\xb4\x4a\xd4\x2f\x1d\x72\x25\x69\xa5\xc0\xe6\xcd\xbe\xaf\xe1\x5a\x29\x8d\xc0\x31\x44\xce\xb3\x38\x4c\x8f\x16\x36\x12\x80\xbc\x56\x63\x07\x63\xfd\x50\xb1\xca\x04\xf7\x49\xc5\x5a\x0e\xe9\x97\x0d\x17\x79\x08\xe3\x58\x61\x03\x5e\xa9\x2f\x4c\x66\x2a\x4d\xbd\xf6\x3a\x0f\xcf\x27\x92\xa9\xe2\xfe\x9b\x7d\xcf\xc7\xd4\xde\xed\x0d\xf6\xba\x5b\xa8\xa4\xd4\xcb\xe5\x76\x91\xb3\x09\x13\x97\x0a\x66\x27\xd3\x57\xea\xf2\x96\xe8\x50\xd4\x36\x60\x35\x31\x2a\xc9\x23\xf3\xc6\x67\x11\xf2\x27\x00\xa3\xff\x28\x92\xd6\xa8\x82\xea\x0c\x16\x97\x57\x6c\xb0\xc8\x6c\x27\x14\xe4\x4c\x59\x44\xf6\x8c\x58\xaf\x75\xec\x6d\x99\x7f\xdf\x76\xdf\x05\x31\xec\x2b\x2d\xb7\xb2\x43\x6a\x0c\x92\xb3\xbe\x82\xc0\x86\xdd\x5f\x21\xcc\x21\x95\x8b\xa2\xf1\x7d\x24\xc6\x4d\xc0\x70\x1d\xcd\x82\x5b\x01\xf9\x2a\x1c\x5c\x43\x1b\xe0\xe2\xdc\x08\x28\x2d\x14\xe2\x8e\x0e\x5a\x8e\xf6\x84\xea\xac\x79\xb6\xd4\xcb\x52\xa0\x5a\xc5\x7b\xe2\xe1\xb2\x3c\x51\xb7\x3a\x57\x8d\x8b\xb3\xaa\xf6\x69\xa4\x23\xb2\x46\x08\x33\xf3\x2a\x8c\xa5\x1a\x21\x5c\x9a\x2f\x59\x9e\x97\x9f\xe9\xf4\x67\x7a\x2f\x33\x64\x76\x05\x98\x4e\xe2\x9c\x00\xfc\x70\xd1\x64\x5b\x43\x20\x28\xeb\x9d\xa3\x7e\x7f\x23\x12\x41\x2b\x11\x2b\x17\x3e\x63\x3a\xda\x1d\x4e\xb6\x27\x48\x14\xd5\x0a\x05\xdf\x60\xa6\x64\xc5\x7d\x84\x7e\x20\x43\x17\x6a\xd6\xa1\x8c\x0f\x5f\xf2\xef\x3f\x5a\xbc\x48\xae\x62\x01\xd3\xd1\x47\x31\xe2\xe3\xed\xe8\x67\x7a\x1f\x8d\x35\x08\x8b\x2b\x10\x3e\x22\x17\xec\xd5\x14\x5b\xc7\x14\x5b\xdb\x74\xb4\x5e\x2b\xa8\x65\x0b\x44\xd5\x19\x86\x36\x5f\xaf\xbb\x22\xd0\x36\x42\xfa\xf9\x3c\x72\x63\xe5\x62\x4e\x0c\x52\x86\x86\xfa\xcc\xd4\x5d\x1d\xae\x9e\xbd\x2e\x93\x62\x60\xd9\xba\x3e\xec\x69\x78\x38\x02\xb0\xdc\xb4\x98\xee\xfd\x01\x18\x50\x6e\xe2\xdc\xc8\x02\x92\x6c\xb1\xc8\xef\xe3\x0c\x8f\x80\x13\xa4\x63\x54\xa3\xf4\x4f\x14\x2a\x77\x91\x29\x12\x82\x6d\xff\x89\xc2\x44\x50\xd2\x9f\x29\x48\x0e\xa8\x2e\x4c\x99\xf0\xd4\x08\xe7\x96\xe7\xfc\x59\xac\x9a\xc0\x69\xc6\x7c\xb2\xc2\x39\xee\x52\x6d\x4d\xb0\xc8\x6e\xd2\x69\xed\x2b\x45\x25\xaf\x37\x31\xf6\x86\xbb\x10\xb2\x9a\x4c\x34\x97\x13\xe7\xea\xe7\x2e\x42\x80\x38\x5b\x91\x5c\xd9\x4a\xe4\x3e\xc2\x4e\xaf\x22\x4e\xa9\x62\xb6\xc0\x9c\x8c\xc6\x78\x46\xbe\x7d\x39\xfb\xde\x94\xfe\x72\xb6\xbd\x8d\xe6\xca\x84\x11\x8a\x9d\x69\xc7\xf4\x85\xba\x90\x2d\x97\x6c\x2a\xaf\x7b\x4a\x71\xf6\x8b\x88\x29\x28\xce\xe6\x78\x89\x27\xb8\xc4\x0c\x4f\x2d\x89\xbb\xad\x2d\x1c\xb7\x8e\xd7\x5a\xde\xa6\xc2\xc8\xf6\x52\x8e\xed\xe9\x58\xc8\xd3\xf1\x47\x91\xb4\x0e\x51\xdc\xc0\x0b\xe7\x38\x92\xb7\xce\x9d\x70\x2a\xa2\xe8\x49\x09\x77\xa2\xed\x02\x17\x4d\x50\x16\x6f\xe4\xe5\x21\x0d\x46\x8d\x9a\x55\x94\xc3\x09\x70\x00\xfe\xf1\x69\xf7\x38\xa6\xde\x71\x47\x1b\x67\x9d\x11\x3d\xf9\x5c\xb4\xe6\xac\x36\x42\x71\xe8\xe0\x97\x4f\x95\x6f\x9b\x90\x87\x0f\x8a\xb7\xb5\x5c\x39\x48\xab\x69\xbe\xaf\x53\xe2\x75\x28\x5a\x29\xf6\xfe\x29\xd2\x7f\x59\x33\xc5\x9f\x1e\x6a\x53\x83\xf5\xb0\x2d\x30\xd2\x1a\x5d\x75\x17\xac\x85\x78\x58\xa4\xf0\x84\xe8\x29\x46\x55\x60\xe3\x3f\x72\x5c\x78\xfc\x31\xb0\x99\xff\xf4\x04\xb9\x6d\x73\x04\xa7\xdc\x2a\x70\x38\x4c\x3a\xee\x87\xaf\xa8\xcd\x88\xb0\x1d\xd4\x8d\xb6\x35\x33\x8f\xfe\xf7\x3c\x6e\xfe\x27\xf0\x25\xc6\x19\x2e\x5b\xf0\x46\x72\xa3\x8b\x50\xcd\xe5\xc1\xfe\x63\xaa\x21\xff\x1b\xdb\xc8\x6c\x20\x0b\x22\xe4\xf5\xc0\x8c\x76\xca\xa0\xf0\x52\xae\xe8\x55\x00\x2b\x90\xd5\x3a\x42\xba\xbc\x02\x65\x89\xb6\x8d\xdb\x5f\x8a\xd2\x99\x6e\x83\xd4\xa4\x10\xf2\x59\x9d\x41\x85\xc1\xc0\xf2\x7a\x2b\xfc\x9b\x88\x87\x83\xaf\x66\xf4\x19\x99\xf1\xd6\x2e\xdc\x46\x03\x49\x4d\x89\x2b\x54\x37\xb6\x2a\x74\x57\x78\xab\xd6\x75\xb7\x80\xee\xb2\x76\x77\xcb\x5a\xc5\xc3\x80\xee\x96\x4f\xec\xae\x51\x36\xdb\x06\x17\xce\x2a\xc1\xef\x6b\xd6\xea\xeb\x83\x39\x3b\x3b\xca\x70\x86\xea\x07\xe9\x02\xfe\x57\xc7\x02\x0e\x23\x63\x36\x05\xdd\x0d\xe9\xb5\x59\x40\x2e\x0c\x26\x5a\x35\xab\x0c\x0b\xac\x31\xe5\x20\x4c\xc2\x82\x13\xc5\x86\x08\x7e\xaf\x58\x11\x2c\x36\xa2\x48\x4c\xd9\x1d\x08\x2c\x87\x8e\x55\xcd\xa6\x53\xa0\x8b\x6f\xe5\x2e\x2e\x28\x8f\x35\x17\x0e\xfb\x97\x6f\x6f\xe3\x55\xa9\xf4\x31\x35\xc2\x1d\x32\x26\xc8\xbb\xa7\x38\x73\xf8\x6d\xf2\xa3\x34\x6e\xa3\x59\xa8\x04\xf0\x2f\x42\x28\x61\x05\x13\x41\x26\xbc\x35\x84\xb8\x4c\x42\x2e\x84\x45\x26\x26\x73\xf5\x99\x76\xbe\x92\x9c\x1f\xd7\x28\x0b\x85\x67\xb2\x5e\xa3\xd8\x98\xd9\x72\xbe\x51\xc3\x57\xcd\xcb\x65\xae\x05\xe9\x06\xab\xdb\xda\xdf\x06\x94\xb3\x43\xe7\x2a\x29\x23\x58\x23\xe9\x09\x7b\xcd\xcb\x5b\x7d\x5b\x51\x73\xa0\x37\x83\xe6\xd8\xd5\x18\x72\xbc\xc8\xaa\x8a\xdd\x49\x42\xa0\x69\x16\x10\x31\x2d\xbf\xb1\x6c\xb7\xf1\xe3\x2d\x95\xe5\x9d\xfd\x6d\x0f\x8d\xb0\xe5\x08\x17\x26\x87\x2e\xdf\x64\xd2\x8f\x86\x9c\xb7\xf2\x31\x93\x4f\xb7\xc6\xe4\xd3\x8f\xe6\xa2\xd9\xca\xc7\xd7\xeb\x62\xbd\x66\x7b\x9a\xeb\x2d\x17\x70\x2d\x26\x0f\xf5\x32\x0d\x52\x2a\xb9\x4d\x4f\x41\x94\x89\x96\x88\xce\x0e\x45\x69\x1a\x68\x4f\x72\xd3\x44\x77\xb4\x97\xdd\x8d\xd4\xf0\x41\xcd\xc2\x77\x11\xae\x48\x66\x2b\xa8\x4c\x05\xcb\x8a\xf2\x33\x5e\xde\xb1\x29\x9d\x1a\x43\x3b\x53\x57\xd7\x37\x73\xa3\xee\xac\x56\xde\xa4\xe4\xad\x84\x0f\x06\x7c\xbd\xde\xda\xb5\xae\xca\x7e\x6a\xc9\x25\xe6\x48\x81\x01\xe8\x51\xd7\x45\xdb\x0b\x97\x17\x72\x58\x16\x35\x18\x68\xd4\x26\x5c\xe2\x25\xa6\x08\x57\xda\xc8\x97\x43\x08\x54\xe7\xc7\x6c\x4b\xd2\x9a\x96\x82\x93\x21\x66\xdc\x87\x71\xf1\xd9\x04\x26\xb7\xb9\xe0\x7b\x34\xe1\xf4\xb6\xbc\xa3\x21\x3d\x50\x89\x3c\x91\xdf\x60\x60\x75\x8c\x0f\x64\xd9\x1a\xca\x0b\xee\x86\xaf\x9e\xc8\x2d\xf3\x1a\x52\xd8\x86\xb4\xa8\xd2\x23\xad\xe8\x4c\xaf\x9a\xd0\xf5\xc9\x48\xe6\xaa\x16\x79\xd0\xc4\xe1\xe2\xfd\xd9\xd9\xe9\xf9\xe5\xc5\xd5\xd1\x87\xa3\x93\xcb\xab\xd3\xb3\xcb\xe3\xd3\x93\x0b\x22\x78\xb7\x41\x76\x53\xa1\xdf\x9f\x94\x4b\x99\xc0\xe9\x8c\x57\xd9\x74\x5a\xa5\x05\xc7\x6a\x44\xaa\x94\xf1\x10\xb3\x59\xf9\x62\xb6\x4b\xef\x70\xa3\xf1\x2f\x1e\x1e\x23\xc3\x35\xa4\x97\x0a\x17\x4b\x25\x2b\xdd\xe2\x72\xb5\x8f\x2b\xdd\x0b\x4f\x20\x6d\x99\xe3\x31\x32\x0e\x00\x04\x82\xd4\x35\xa9\x5c\x2f\x64\x74\xec\x6e\x04\x44\x33\xb5\xf8\xd2\x02\xeb\xed\xae\xa0\x12\x33\x3d\x89\x1a\xde\xb6\x9b\x73\xa4\x70\xec\x94\x2e\xa9\x64\xe3\xc3\x3d\xb6\xeb\xb3\x1d\x41\x33\x9f\xdf\xa6\x76\xc7\x1a\xd5\x0d\x06\xb1\xd7\x18\x9c\x41\x20\x49\x55\x85\x7f\xbf\xc0\xd4\xee\x39\x4c\x0d\x95\xeb\x68\xfa\x23\x9c\x04\xd0\x0e\xfe\x08\xe0\xde\x5f\x6a\xd3\xfc\x27\x90\xba\xba\xad\x32\x96\xfc\x21\xab\x8c\x46\x18\x00\x07\x6c\x60\xc2\x73\xb6\xa3\x19\xc8\xab\x3b\x9b\x68\x5b\x7e\x17\x9a\xf4\xdf\x10\x18\xc0\x8f\x1f\x6c\x62\x04\x74\xdb\x7f\xe4\xbc\x65\xff\x51\x3b\x33\x7c\x63\xc0\x01\xfb\x30\xb9\x5e\xb2\x5c\x41\x5b\x1c\x41\xcb\xad\x4b\x12\xe0\x14\x5f\x97\xa5\x50\xbb\xa9\x6f\x45\xc6\xa4\x48\x66\x16\x9d\x2c\x8e\x5c\xab\xc2\xb1\x00\x97\xf2\xa3\xe4\x46\xd2\x34\x30\x68\x34\xc9\x34\xb4\x19\x02\x44\x5a\x3f\x47\xaf\x19\x63\xe0\xb6\x9c\xd2\x1c\x30\xc1\xab\x10\x0a\x5c\x7f\xd0\x61\xe4\x86\x10\xa8\x8e\x39\x10\x76\x88\x9a\xff\x90\x3d\x23\x93\xa7\x53\x46\x56\x6a\xb2\x24\x23\xe0\x3a\xc1\x30\x44\x0e\x2e\x71\xc3\xfc\xc5\x72\xed\x53\xe2\xa2\x1d\x7a\x95\xae\xa0\x51\xe9\xb4\xfe\x6b\x6a\x87\xd2\xce\xe9\x2c\xad\x1a\x0d\xa9\xff\xb4\x7d\x71\xd6\x19\x2e\x5b\x3c\x60\x57\x5c\xb4\xa3\x65\x3f\x16\x9a\x9b\x3d\x18\x2d\x3b\x98\xf8\x07\x2a\x66\x1d\x15\x6f\x24\xce\xc5\xd3\x8d\x99\xd9\xe6\xf6\x87\x01\xb4\x6b\x84\x70\xf6\x84\xa0\xd2\x56\xe5\xda\x69\x47\xd0\xa7\x89\x99\x4f\x70\x7f\x72\x8f\xca\x66\xfd\x81\xb9\x0c\x6d\x57\x51\x2c\x20\xb2\x01\x69\x59\x1c\x21\x2c\x1e\xa0\xdd\x9a\x2c\x3d\xd7\x9c\xe8\xb9\x11\x90\x83\x10\xe7\xcf\x0e\x64\xdc\x8c\x35\x0d\x90\xc7\x76\x67\x34\xc1\xea\xed\x06\x01\xe9\x9f\xcf\x78\x81\x2c\xcf\x10\x09\x4f\x9e\xf3\xd0\x30\xf3\x47\xb1\x90\x1f\x4b\xe1\xf5\xfd\xdf\x1f\x6a\xfa\x2f\x18\x68\xa3\x21\x9c\xf0\x4e\x03\x1e\x23\xca\x5b\xf2\x0e\x43\x56\x6b\x4e\x3a\xdd\x7c\x7f\x95\x29\xcf\x01\x0c\xd2\x5a\x01\x77\x5c\x54\xaf\x00\x73\x46\xde\x93\x5c\x38\x66\x78\x77\x18\x44\x68\xee\x0e\x9a\xa7\x2c\xdb\x75\x45\x96\x80\x59\x2d\x94\x68\x9a\xa0\x34\x81\x26\x8b\xbd\x46\x1b\x08\xf1\x5f\x1d\xd2\x59\x1a\x1e\x96\xf3\xac\x3a\x07\xc2\xa3\x3c\xd6\x62\x4d\x41\x21\xa4\xd1\x5e\xdc\xec\x50\xa3\x37\x40\xb7\x26\x4b\x0e\x47\x9f\xe4\x41\x78\x0c\x78\x50\x61\x32\x05\x05\x91\xc6\x9b\x46\xa2\x31\x60\x0a\x81\xfe\x29\x81\x34\x75\x90\xe3\xee\xd9\x56\x50\x62\x17\x7e\x4c\xef\x86\x70\x55\x51\x99\x86\x62\x1e\xfc\x40\xf5\x9d\x8f\xa2\x4e\xbd\xbe\x57\x72\x13\xea\xd0\xfb\xa4\x7f\xcb\x65\xc7\x0a\x42\x15\x1a\xc4\x94\x71\x71\xef\xec\xae\x24\xa5\xb4\xa1\x8e\x37\x5d\x8c\x14\xea\x11\x94\xe9\x2d\x3e\x55\xfa\x89\x5e\x91\xe2\x31\x63\xb3\xcd\xa1\x52\xc3\xe2\x3d\x6b\x33\xcb\x88\x50\x6d\x09\x92\xda\x3e\x59\x56\xd0\x24\x11\x26\x89\x18\xb5\x5b\x67\xca\x1c\x3f\x3c\xd4\x26\x24\xf2\xc3\xe3\x60\xfa\xff\x89\xde\xb7\xa2\x72\x3e\x6d\x2a\x5b\x7d\x6f\x29\xa2\x07\x03\x3a\x32\x95\x58\x18\x89\x5b\xfe\x47\x4d\x4a\xc2\x86\x77\xee\xfb\x0d\x0d\xf2\xe3\x8f\xe9\xe3\x43\xb9\xb7\x2a\xeb\x09\xff\xb3\x45\x46\x12\xea\x20\xb6\xf4\xec\x6e\xd3\x78\xaa\x39\xea\xa6\x67\xe0\xd6\xa6\xe0\x2f\xdc\x3e\x95\xdb\x54\xed\xa7\x47\xa8\x58\xdf\x8f\x9a\xe7\x4c\x90\x5a\xbd\xf2\x42\x40\x07\xa0\x3e\x3a\x18\x7a\x23\x18\x5b\xd7\xad\xdc\xb0\x52\x41\xd2\x22\x48\x7a\x19\x17\x08\x9c\x69\x8b\x98\x2b\x9a\x67\x95\x11\x2b\x2e\xc9\x21\xd6\xe8\xc3\xe0\x88\xa6\x06\x25\xe5\x7a\x74\x7c\x6f\x06\xef\xe0\xe6\xfe\x61\xa5\x98\x64\x6e\x86\x3d\x0e\x07\x17\xba\xbb\x41\x9f\x1f\x42\x1a\xc9\xd1\xf0\xc1\x70\x9b\x1a\xf5\xbe\x73\x70\x51\x88\x8d\x36\x8c\x93\x7f\x76\xc2\x27\xf7\x58\xc7\xb4\x31\x79\x28\x80\x1f\x70\x13\xdd\x6b\xcc\xb1\x46\x77\x76\xb6\x35\xc4\x44\x0f\x0b\xae\xff\xfd\x8a\xc4\xda\x2a\xcf\xf6\xd9\x04\x96\xa3\xc5\x1d\x9c\x59\x92\x02\x31\xb8\x40\xdc\x6a\x0c\x92\xb8\x54\x80\x70\x53\x36\x11\x92\xd3\x53\x83\x47\x24\x87\x9d\xdd\xa4\x45\xa0\xfc\xf5\x20\xb8\x3d\xc9\xa2\xb6\x13\xd3\xe9\x6f\xb3\x45\x5a\xc2\xab\x2a\x1d\x69\x36\x69\x8c\x1d\x52\x69\x3a\x62\x63\xac\xe1\x7d\x76\xc1\x43\x95\x92\x1f\x74\x3a\x39\x0f\x18\xec\x4b\x82\x57\x7b\x2c\xed\x0e\xbd\xac\xfc\x42\x95\x93\xaa\x9a\x7b\x6b\xd3\x50\xa3\xda\xd5\x12\x1e\x1d\x5a\xaf\xed\x4c\x72\x2c\xa5\xf5\xd5\xad\xa1\x91\x91\x73\xfb\xac\x51\x2f\x6b\x9d\xb6\x4b\x60\xe2\x2a\x8b\xf5\xd3\xdc\xb9\x59\x83\x1e\x6e\x38\x45\x21\xa4\x15\x0f\x60\x87\xaf\xb9\x17\x3e\xf2\xcc\x20\x26\x9f\xce\x9c\x30\xf3\x9e\x87\x48\xa7\xf4\xa5\x5a\x15\xe2\xa5\x91\x2f\xdc\x70\xe3\x5a\xec\x93\x29\xee\x07\x40\xbc\x96\x34\x32\x70\x60\x90\x59\xaf\x38\xfe\xcc\xf1\x11\xc7\x5f\xc2\x46\x9d\x3e\xda\xa8\x8b\x10\x53\xe6\x0b\xd7\x18\x95\x54\xde\x24\x6c\xaa\xcb\x47\x9b\xfe\xe5\xf1\xa6\x9f\xb6\x9a\x6e\xcb\x7f\xe7\x82\x4f\x12\xa8\xcb\x6a\x7e\x06\x83\x2d\x91\x80\xfd\x44\x91\xe5\x83\x41\x64\x74\x75\x0e\x81\x75\x4f\x18\x41\x44\xcb\xb6\xf3\xcc\xc3\xb9\x59\x29\xa0\x08\xcf\x23\x25\x8d\xb6\x7d\x20\xbe\xfd\x60\x24\x56\xca\x5e\xd6\x89\x72\xe9\x9e\x1f\xbb\xd2\x7c\x50\xfb\x67\x91\x4d\x68\x2a\xbc\xb2\x0e\x78\x88\x79\x10\x86\xb0\xb2\x48\x08\x41\x53\x9c\xb2\xcb\x93\xab\x14\x98\x23\x0d\x12\x29\x27\x05\x73\x2f\xde\xa9\xbc\xe4\xb8\x0b\x8f\xf2\x46\x36\x5e\x3b\xf7\x3c\x36\x6f\x02\x94\x64\xdd\x39\xdf\xc3\x56\x7b\x71\x31\xb5\xaa\xcb\x4d\x6d\xed\x0a\x3b\x1a\xb4\x5a\xcb\xc4\x3a\x5a\x1c\x12\xec\x62\x30\xd0\xbf\x4a\x05\xee\xd4\xd5\x9a\xb2\xae\xaf\x93\xb3\xfd\xf3\xcb\xe3\xfd\xb7\x17\x83\x41\x7c\xc5\x49\xe7\x81\xe0\x68\x2a\x27\x9f\x25\xa1\x3c\xe2\x10\xb1\xc6\x45\x97\xab\x6b\xfc\x99\xb7\x3a\xc5\x66\xb1\x2b\x5f\x09\xb5\xcd\x5a\x05\x3d\xaf\x0f\xf1\x71\x9a\xe8\xe8\xaa\x71\x74\x50\x16\x22\x63\x05\xe5\xfd\xcf\x59\xa5\xe0\x3e\xca\x65\x31\xed\x7f\x9e\xd3\xa2\x2f\x07\x80\x15\x37\xfd\xe5\xa2\x9f\xf5\xef\x18\xfd\x5c\xf5\xcd\xa0\x25\xfd\xcb\x39\xab\xfa\xac\xea\xdf\x96\x95\xe8\xe7\xec\x13\xcd\xef\xfb\xd3\x25\xed\x8b\xb2\x7f\x9b\x15\xcb\x2c\xcf\xef\x35\xba\x85\x60\x99\x90\xc5\x64\x45\x1f\xb0\x0a\x93\x0f\x8c\x7e\x4e\xfa\x17\x94\xa6\xfd\xb9\x10\x8b\xf4\xc5\x8b\x1b\x26\x12\x56\xbe\x38\xfa\xf9\x6c\x51\xec\x47\x8e\x09\xeb\x8a\xb2\x2a\xd0\x7a\xdd\xf9\x81\xa3\xba\xc6\x47\xbc\x93\xed\xd0\x7e\x23\x2f\xda\x7e\x23\x76\xbe\xfd\x97\x24\xba\x8a\xb6\x39\x16\xda\xd5\xe0\x45\x64\xa2\xe9\x7f\xe2\x64\xc5\x66\x69\x38\x75\x81\xab\x71\x87\x05\x7d\xfc\x5e\x80\xa4\xda\x88\x81\x84\x3c\x14\x51\xad\x0d\x7d\xd2\x8e\xe0\xc2\xc6\x02\x8a\xf9\x07\x03\x58\x2d\x64\xa4\xf4\x4a\x1a\x55\x38\xc7\x49\x92\x2c\xc7\x24\xf3\x30\xb9\xf1\x84\x04\x56\x4e\x78\x4e\x58\xc3\x38\x92\x85\xc6\x91\x69\x85\x67\x5d\x51\x8e\x31\xeb\x09\x8b\xec\x37\x18\xc4\x9c\x00\xf6\xe0\x6d\xb6\x88\xc1\x57\xc8\xc8\x20\x24\xb7\x31\xc9\xe4\x41\x83\x7a\x14\x22\x70\x0b\x6d\xa2\xc7\x5b\x2e\x13\x7d\x3e\x18\x04\x85\x8a\xd1\x70\x4c\x3c\x27\x85\xd1\x70\x8c\x39\x48\x7e\xfc\x2c\x6c\x8f\x92\x1f\x58\x2c\xb7\x03\x4a\xf9\x7a\xcd\xd6\xeb\x7d\x5a\xc7\xba\x63\x50\x45\x84\x06\x03\xdd\x31\xfd\xec\x80\x0b\x62\x4e\xba\x02\x5b\x83\xe1\xdf\x01\x8d\x73\x9c\x63\x78\xc0\x33\x3c\x01\xcb\xb7\x96\x6f\xf5\x1c\xb5\xe4\x56\xf0\x3e\x47\xb2\x00\x2b\x3c\xc5\x73\xfb\xcb\x1e\xde\xaa\xd0\xae\xb8\x7f\x43\xcf\xd9\xa4\x44\xe4\x07\x15\x48\xdd\xe6\x73\x9e\x3f\x32\xb5\x4a\x54\xfb\x75\xe1\x1c\xca\x46\xa3\x33\x0a\x21\xa4\xe4\x22\x9c\xd1\x98\xbb\x45\xc6\x79\x76\x9f\x76\x3a\x24\x77\x47\x79\x55\x33\xf9\xdc\x25\xfe\x5b\xf7\x12\x9f\x75\x2e\x6f\x72\x2c\x7a\x8f\x96\xc8\x3b\x0b\x94\x3c\x5a\x57\x89\x1d\x0e\x27\x45\x87\x7f\x89\xf6\x0e\x69\xcd\xa1\x89\xdc\xc5\x5a\x76\xb8\x9a\xca\xb3\xf5\x3a\x92\x47\x34\xdb\x6b\xba\x53\xa6\x2d\xf9\x0b\x93\xab\xd0\x9a\xda\x26\x11\xfa\x61\x67\x77\xef\x56\xf6\x88\x79\x0e\x6c\x28\x55\x1c\x86\xf6\x49\x61\x28\xc0\x6b\x7c\x2d\xe2\xae\xee\xcf\xb3\x6a\x9e\x7e\x15\x38\x2f\x6f\x9e\x3b\x43\x6f\xba\x67\xe8\x76\xf9\xd4\x01\xdd\xec\xf1\x04\x26\x81\x7b\x1c\x50\x0d\xdf\xf9\x8b\x2f\xfa\x7d\x49\xf9\xfd\xce\x02\x5c\x36\xa2\xe7\xb6\xf8\x43\x77\x8b\x39\xcd\xa6\x65\x91\xdf\x77\x36\xbb\x6b\xa1\x8f\x2e\xe9\x78\xbd\xa6\x75\xdc\xee\x53\xa0\xc9\xfd\x5d\x78\x4d\x5f\x16\x80\x44\xbd\xb9\xcd\x33\xda\x51\x9e\x17\x61\xd7\x14\x93\xd3\xaa\x7a\x6e\xcf\x5f\x75\xf7\x3c\xda\x91\xf3\x1f\xc9\x05\x10\xed\xd0\x6c\x32\xdf\x61\x45\xd4\xb5\xb7\x01\x5e\x52\x74\xf5\x57\x16\xc2\x8a\xc5\x52\xec\xc8\xb9\x7b\xf6\x94\xec\x6f\x6a\x58\x51\xf2\x5b\x88\x06\xb7\xa3\x62\x3e\x3e\xb7\xe0\x83\x4d\x05\x83\x15\xd9\x0e\x50\xb1\x8d\x5d\xfd\xb4\xb1\xab\x37\x54\xec\x68\x55\xeb\xce\x5d\xc6\xa3\x74\x22\xf7\x9c\xd6\x87\x7e\xc8\x38\x8e\x76\x6e\xcb\x65\x21\x9a\xed\x35\x42\x08\x75\x7b\xed\x20\x2e\xcc\xde\x84\x69\x87\x6a\xcf\x84\x01\x6c\xf9\x88\xa9\xbb\x6d\x56\x93\xb2\x37\xc4\x8c\xa8\xa7\xa7\xdf\x74\xcb\x7f\xd3\xcd\xd2\xa7\x3c\x53\x60\xd2\x31\x83\xf1\xd3\xb1\x18\x3a\x79\x14\x79\xab\xf7\xd5\xd8\xde\x01\x4f\x40\x64\xd8\x0e\xde\xbd\x67\x14\x88\x45\xe5\xcd\x7d\x74\x9b\xb1\x22\x42\x69\x17\x0d\xa7\x9f\xfb\x77\x1c\x6e\xba\x33\x79\x03\xf0\x64\xab\x20\x62\xb6\xcb\x24\xab\x2a\xca\xc5\x8e\xf1\x16\xd9\xb1\x2c\xf8\xce\x1c\x56\xdb\x8e\x0d\x41\x92\xbe\x13\xb0\x07\x76\x68\xbe\x23\xe7\x30\x4a\xcf\x84\x51\x1a\x9c\x6f\x92\x93\x29\x4f\x91\x8a\x8c\xd4\xfd\x64\xac\xe5\xaf\xd7\xbf\x5d\x96\x6f\xe0\x53\x3b\x62\xcf\xf5\x92\xe5\xe2\xb8\x50\x8b\xbd\x22\x9f\x78\x03\x53\xe4\xd0\x5e\xd2\x0f\xb2\xc9\x5c\x15\x60\x33\x77\xa5\x92\xeb\x94\x68\x83\x39\xd5\xa9\x0d\x1f\x3b\xcd\x64\x74\x73\x8c\x05\x66\x45\xb4\xbb\x4b\xba\xd2\x2a\x11\xa0\xde\x3f\x0b\x0c\x1a\x11\xe5\x2a\x81\x9b\x9f\x2b\x35\x26\x7e\x9a\xba\x56\xac\xb8\x43\x25\x69\x06\x4e\x68\x7c\x57\xe3\x05\xa9\x1a\x17\x29\xae\xae\x4f\x90\x89\xd3\xaa\xcc\xef\x20\x30\xc3\xe6\xfc\x7e\x2d\x7a\x86\x4c\xe4\xf8\xc2\x7f\x6b\xb4\x0e\x61\x41\x6e\xf4\x94\xea\xc8\xad\x5e\xa5\x6e\x7b\x68\x1e\xb6\xb7\x71\x51\x9b\x36\x36\x3c\xfa\x74\x4b\x46\x74\xac\x9b\xae\x96\xc0\x13\x5b\x7c\xd5\xca\xe3\x5f\x90\x83\x28\x1b\xba\x73\x45\xd0\x72\xa6\x5b\xde\xb9\x42\xb6\xb7\x1b\x60\x11\xaa\x32\x6b\x96\x1b\xa0\xf1\x6e\x18\xbf\x20\xb1\x99\x9d\xb3\x8c\x0b\x96\xe5\xf6\x2a\xeb\xdf\x45\xbd\x2e\x5f\xb5\x53\xf7\x3a\xaa\xe3\xa1\x54\x45\x4e\x02\xcb\xb5\x39\xae\x76\xda\xf2\xac\x90\x48\x07\x2a\xbc\x91\x46\xba\x0d\x1a\xa2\xac\x79\x5a\x0b\xd0\x3b\x07\x13\xa2\x81\xaa\x77\x76\x5b\xbb\x5c\x47\xfe\x11\x70\x39\x69\xcf\x94\xdf\xd5\x70\xfb\x8f\xe8\x78\x93\x1c\xe9\x2e\xe3\x2b\x17\x40\x23\x2d\x6a\x22\x30\x23\x42\xdb\x93\x95\x70\xe7\xdb\x97\x34\x59\x65\x46\xb8\x22\x2c\xb0\x54\x51\x33\x9d\x46\xdb\x25\xce\xd0\x7a\xbd\xe9\xa3\xed\x7a\xfb\x10\x6d\x61\x8e\x52\x25\xd2\xd8\x22\x44\x49\x96\x25\x71\xb4\x3f\x12\x56\xa9\x5e\x69\x8b\x97\x3a\xae\xd0\x9e\x41\xf3\x55\x23\x50\x59\x93\x15\xd9\xeb\x6f\x62\x8e\x8c\xd8\x65\x55\xbf\x7c\xc4\xd0\x81\x1b\xe7\x85\x18\x69\xa3\xe4\xac\xaa\xca\x09\xcb\x04\xf5\xad\x00\x0a\x8d\xf4\x37\xf4\x39\xb8\xf9\x86\x6b\x83\x22\x55\x1d\xab\x4f\xb7\xca\x8c\x36\x23\x57\x1c\x42\x9c\x79\x9b\x0a\x6c\xfc\x12\x9d\xc9\xed\xa7\xe3\xdb\x45\x0e\x41\xe3\xeb\xae\x7d\xd1\xb1\x12\x2c\xe5\x0d\xd6\x02\x68\x35\x5a\xad\x08\x4d\x91\xac\x39\x7f\xb4\x4d\x43\x71\xa4\xf1\x9a\x22\xef\x78\xcc\xb4\x78\xac\xd1\xf4\x7f\x08\x88\x99\x59\x76\x1c\x0d\xc8\x9e\xfb\xbc\xbe\x82\xa0\x84\x72\x05\xbe\x2e\xf9\x89\x91\x01\x7a\x22\x14\xcc\x89\x91\x10\x12\xea\x6e\x37\x69\x6a\xc5\x35\x10\xfd\xab\xd0\x86\x20\x2a\x7a\x63\xb1\xfd\xad\xf2\x37\x57\x8f\x43\x5c\x20\x64\xa1\x7b\x9c\xa4\x91\xd7\xf5\x23\xc4\xd9\xb0\x1c\x98\x11\x8a\x4b\x3b\x52\xfe\xc6\xc9\x14\x66\x66\x87\x60\x8c\x6b\xac\x80\xf5\x5a\x29\x78\xa0\x52\x33\xe8\x56\xb2\x19\x90\x59\x33\x80\x66\x80\x0e\x34\x42\x4b\x5c\x62\x86\xf7\x79\x9c\x99\xdd\xe8\xc7\x4d\xab\x02\x32\xa4\xb4\x66\xf2\xb5\x3b\x45\xf6\xe4\xd6\x50\x12\xc1\xb8\x44\xa9\xf7\x45\x1b\x30\x3f\xc8\x22\xe8\x50\x66\xc1\x0a\xc8\x4d\x9d\x79\xcf\x2d\x28\xbb\x7b\x4d\x65\x20\xb9\xf1\x6a\x56\xc2\xac\xe5\x63\x41\x62\x01\x1d\xaf\xd5\x96\x08\x9f\x49\xf6\x10\x4f\x02\x65\x50\xa3\xa3\xda\x26\xe4\xf2\xe8\xdd\xd9\xdb\xfd\xcb\xa3\xab\xd3\x93\xb7\xbf\x5c\xfd\xf8\xf6\xf8\xdd\x3b\x3f\x32\xfe\xc5\x60\x10\x4f\x80\xf3\xb9\x14\x31\xc3\x5c\x39\x2f\x7e\x49\x58\x65\xec\x03\x4f\x8b\xdc\x01\x9e\xa1\xd8\xab\x42\x2f\xf7\x56\x09\xd8\xf6\xdd\x05\xd9\xb5\x06\x6e\x8d\xdc\x78\x4e\x2e\x79\x3c\xf5\xe7\x7e\x3e\x18\x78\x18\x4f\x84\x90\xb9\x0b\x8b\xb6\x32\x72\xf9\x45\x4d\xe6\xbd\x09\x99\x5b\x41\x3e\x30\xb6\x47\x22\x5e\xc4\x25\xc2\x53\x13\xc3\xe0\xb3\x6c\x92\x1f\x96\x17\x3e\xfb\x90\x0a\x69\x69\x24\x99\x57\xc9\x82\xb3\xbb\x4c\xb0\xaf\xf4\xd7\x2e\xd1\xf4\x8e\x96\xd9\xfe\x8a\xe4\xfc\xd5\x75\xc8\x3a\x4d\xec\x30\xbc\xa1\x61\x9d\xeb\x75\xe9\x13\x13\xbf\x1a\x27\xa6\x76\x85\xc3\x08\x2e\x5b\x41\x8e\x9b\x2b\x51\x9e\x83\x05\x9e\x20\x3c\xf1\x94\x04\xbf\xf1\x2e\x93\x67\xe0\xe9\x46\x74\x34\x1c\x1b\xb1\x61\xf4\x77\x49\xc8\x30\x1d\xed\x8e\xc7\x20\xa3\x3f\xe4\x64\x34\x76\x2a\x9c\x13\xae\x21\x8c\x2d\x79\x63\x86\x1f\xe4\x4d\x6e\x52\x12\xb7\xe4\x96\x8a\xcc\x46\xa3\x0a\xb8\xca\x2d\x42\xca\xbd\x78\x88\x79\xa2\xe2\x37\x78\x4b\xa9\xc4\x23\x1b\x75\x75\x34\x4e\x05\xfe\x4d\x19\xae\xe8\x0b\xd8\xab\xb7\xa7\x07\x3f\x5f\x8c\x51\xca\x93\xf7\x27\x6f\xf6\x4f\x0e\xdf\x1e\x1d\xba\xae\x1e\xdb\x26\xe2\x12\x69\xa7\xa7\xf2\xa1\x46\x96\x0f\x37\x32\xdb\xd0\x48\xf0\x12\x56\x0d\x63\xd0\x96\x93\xd3\x93\xa3\x9a\x26\x57\xf4\xcb\x82\x72\x26\xf7\x6c\x96\xbf\xcb\x26\xbc\xac\xc8\x21\xd7\xb7\x98\xb7\x9b\x6e\x31\x10\xe1\x39\xb0\x1d\x51\x6a\x5e\x51\x43\x58\xb0\x38\xb8\x54\xbf\xd5\x76\xed\x32\x53\x2b\x4b\x27\x94\x85\x6f\x13\x63\x18\xa5\x4d\x09\xe4\xb5\xc4\x22\xd0\x74\x58\x5b\x59\x30\x07\x03\xe5\xc0\xcb\xd2\x9a\x4f\xf0\x65\x21\xd8\xad\xbd\xda\xb0\x29\x01\xcf\xf7\x1b\x2a\x3e\x30\xfa\xf9\x18\x70\x30\x83\xb8\x15\xfa\xe4\xd2\xca\x51\x1d\x3a\x00\xc2\xea\xab\x44\x92\xda\x11\xe7\x55\x8e\x2b\xd2\x89\x53\x57\xf8\x38\x75\x89\x62\x4b\x75\x2c\x37\xcd\xd4\xc8\x82\x7e\x62\xe2\x5d\xc6\x0a\x05\x20\xc3\x70\x1e\x2b\x31\x82\xb5\x91\x2f\x71\x41\xbf\x88\x0b\x76\x9d\xb3\xe2\x46\x71\x26\x60\xfd\x69\xea\x53\xac\x26\x8a\x2b\x84\x33\xd4\x9b\x96\x2b\x4a\x96\x3a\xee\x46\xfd\x79\x2e\x6b\xdc\xa2\x2a\xd4\x47\x4f\x91\x35\xbf\xa7\x5a\xd8\xde\x6b\x76\x6c\x9a\x70\xaa\x1e\xe3\x55\x96\x7f\xce\xee\xab\x73\x0a\xa0\xee\x92\xcc\x40\xd8\xf9\x9a\x55\x1d\x71\x54\x60\xd8\x09\xa1\xb5\x65\xca\xb4\x05\x0a\x04\x22\xa1\x58\x4f\x45\x0a\x46\x6b\xa2\xd6\x88\x0c\xcd\x81\x1e\x86\xf3\xe6\x4f\x07\x54\xe0\x6c\x49\x3a\x26\x4c\xf7\x42\xbf\x72\xfa\x4b\x0d\x9a\xc9\x7c\xf0\x72\x39\xe8\xa0\x95\x97\x5f\xa6\x26\xd4\x04\x35\x3e\xaf\x5f\x43\x42\xf3\xde\xd3\xd2\x7e\xe5\x96\xa9\xa1\xa8\xf7\x95\x83\xa4\x76\x42\x63\x81\x77\x3d\xb7\x99\x57\x5c\x5e\x41\x64\x8e\x37\x9c\xd8\xdb\xc6\x07\x4e\x86\xbd\x20\x0e\x46\x59\xc4\x11\xa0\xab\x47\xd8\x19\x7e\xf8\x90\x1a\xc3\x97\xf4\xfb\xaf\xdc\x78\x97\xd3\xed\x6d\xf4\x95\x8f\xe8\x38\xb9\x32\x51\x2c\xdc\xf4\xc4\x0a\xa1\xb8\x59\x3c\x2d\xa6\x4f\x2f\x9c\xcd\xe2\x2d\x5d\x01\xab\x3e\xc8\x82\x63\x04\xbc\xd1\x07\xfe\x83\x3e\xaa\xcf\x8f\xb4\xe9\xe6\xdb\xd3\xd3\xb3\xab\xb7\xc7\xef\x8e\x2f\xb5\xce\x50\x76\x0f\xab\xdc\x8e\x35\xf7\x62\x05\xb0\x02\x0e\x07\x0f\x76\xbf\xcf\x0a\xdd\x7a\x88\xbd\x42\x05\x9d\x08\x3a\x75\x8a\xbd\x0f\x7c\x7b\x3b\xec\x11\x28\xda\x60\x19\xbc\xe2\xa8\x86\x1a\xbd\xae\xb9\xe3\xf9\x0d\x37\xd6\x45\x6f\xb8\xa1\xb7\x3d\x3d\x17\x9b\x4a\x94\x8c\x2e\x0c\xa2\xa6\x8f\xbf\xb7\xe9\x8d\x31\x6f\xd9\xda\xc5\x15\x99\x24\x93\x9c\xd1\x42\xbc\x5a\xb2\x7c\x4a\x8d\xe1\xe7\x15\x2b\x8c\xd9\xa9\x5d\x6e\x96\x84\x80\xf9\xe2\x39\xbd\x63\x95\x7c\x6b\x6e\x8e\x57\x6d\x5a\x73\x25\xd7\xbb\xa1\x28\x84\x59\x42\x75\x25\xc9\xac\x36\xc2\xbc\x37\xce\x75\x90\x9f\x15\x74\xfa\xba\xe4\x87\xa7\xef\x0c\xb2\xcc\x95\x0a\x1b\x3d\x1a\x9b\x47\xf0\x6d\x9a\x9e\x87\x6f\xaf\x55\xeb\x49\xe5\xb3\x96\x57\x7a\x0b\x9e\xeb\x93\x0a\x58\x86\x73\xb8\xf3\x34\xee\x06\x1a\x58\xbd\xa0\x71\x8e\xb0\xa6\x31\x2a\xcc\xe0\x17\x30\xd3\xe6\xc9\x4f\xcc\x60\x27\xa3\x78\x89\x5e\xc6\x0d\xbd\xeb\x8a\x15\x39\x2b\x68\x95\x0a\x7c\x9d\x97\x93\x4f\x60\xc2\x4a\x7b\xe0\xfa\xfa\x4e\x05\x7b\x8c\x4f\xb8\x3c\x70\xbd\x17\xc7\x1c\x79\x01\xb6\x86\x2f\x8b\xef\x0f\xed\x3a\x2e\xb6\xb7\x21\x9e\xf3\x21\x1f\x15\x63\x14\x83\xf7\x5d\x8d\xe2\x69\x72\x0b\xe7\x9f\xa2\x86\x73\x65\x62\x24\x3a\x7a\xd4\x0b\x46\x40\x51\xec\x9f\x98\x38\x57\xcf\x28\x5e\xa9\x78\xa8\xa7\x0b\x1d\xb8\xa1\x4a\x0b\x1d\xdb\x03\xb8\xbb\x49\x72\x78\xfa\xee\x92\x53\x7a\x60\xd6\x8e\xf2\x15\x54\x9c\x5e\x72\x52\x4e\x69\x77\x02\xed\xdb\xe3\x97\x6b\x8a\x53\x71\x74\xaa\x58\xa0\x1a\xcf\xf1\x14\xe7\x9b\x22\xc9\xf8\x24\xd9\xf4\x60\x33\x8c\xb2\x8e\xec\x7a\x0a\xc7\xad\x3c\x12\xfd\x60\xe0\x8d\x38\x84\x7a\xf7\xef\x9f\x9d\xbd\x3d\x3e\xd8\xbf\x3c\x3e\x3d\x71\x4c\xfb\xc7\xf3\xfd\xb3\xb3\xa3\x73\x73\x9b\x6d\x42\x6e\x65\x14\xaf\x7c\x17\xa9\x61\xe8\xf4\xe4\x39\x2d\x0d\x6b\xa4\x63\xc8\x86\x1e\x4a\x15\x78\x28\x5d\x66\x37\x00\x0f\xe1\xe4\x11\x53\x76\x17\x75\x22\xf4\x3e\x0b\x51\xf6\xa3\xaa\xfe\x71\x60\x59\xee\x00\xd3\x8d\xcf\xb6\x31\xf9\x0e\xf1\x33\x22\xa5\xdc\xc0\x91\x02\xd0\x90\x7b\xb6\x0d\xb2\x11\x31\x49\x98\x87\x38\x4b\x6e\x96\x6c\x6a\x42\x72\xd6\x75\xa0\xf2\xa4\x31\x55\xb6\xe7\xb8\x08\xf4\x7e\xee\x03\xaa\x63\xbb\x66\xd5\x7c\x06\x77\xe2\xc0\x10\x4c\xb2\xed\x7a\xd2\x2f\x4b\x5f\x00\x21\x8b\xfc\x91\x3e\xb9\x20\x8e\xe4\xa6\xea\x4a\xe5\x59\xce\x68\xe5\x97\xc0\xad\xd5\x88\xb4\x85\xdf\x5b\xae\x08\x6f\xa7\xb1\x99\xf1\x23\x7a\xcd\x8d\x59\xa2\x29\x02\x07\x44\xa6\x83\x5e\x62\x50\x4c\x84\xf4\xcd\x6e\x6b\x58\xfd\x92\x06\xaa\xc8\x77\x9a\xd9\x31\xc4\xbb\xf3\x58\x35\x42\xa8\x20\x42\x6d\x83\x8f\xec\xb5\xc9\x33\xe0\x9b\xd5\x0e\x86\x4b\x66\xd7\x20\x66\x1d\x89\xdb\x45\x8e\x6b\x45\xb1\x63\xf0\xf1\xbc\x12\xf2\x3c\x81\x71\xbe\x2c\x6d\xe8\x2a\x56\xdc\x98\x78\x2f\x93\x9c\x66\xc5\x72\x21\xbb\xa6\x18\xb4\xce\xc3\x61\x30\xa0\x89\xe0\xec\xe6\x86\xf2\x38\x9a\xb2\xa9\x96\x95\xe9\xf5\x1c\xa1\xba\x55\x8c\xf3\x7c\x75\xe7\x14\x72\x26\x71\xde\x51\x63\x6c\x39\xd5\x93\x45\x86\xda\xd9\x79\x69\x45\x57\x23\x3e\xee\x49\x82\xab\x8a\x1e\x0c\xe2\xc2\xe3\x15\x84\x61\xa6\x38\xde\x95\x3b\xc1\xf1\x92\x8d\xea\xd7\xeb\xb8\x75\x70\x0e\xcd\xb2\xc8\x69\xc6\xf7\xf3\x1c\x8e\xb9\x58\xe1\x9d\x35\x03\x0c\xd3\xd1\xe1\xf8\xdf\x14\x38\x38\x84\x74\xa0\x0f\x90\xe4\x1b\x2a\xf6\x1b\x27\x89\xbc\x2d\x34\xf2\xd7\xfe\x8a\x35\x1d\xc0\x2b\x35\xc4\x36\xac\x9f\x8b\x9a\x08\xa8\x0b\x7a\xe8\xad\xc8\x1a\x7f\xd5\x09\x84\x89\x03\xea\x95\x5a\x79\x8c\x4a\x1c\xd4\xe7\xe1\x25\xe8\xfa\x04\x36\x5d\x48\x39\x0e\x18\x0a\x10\x48\xcb\xa6\xc0\x45\xc4\xd8\xed\xe0\x2e\xd6\x9b\xc3\x3d\x07\xae\x51\x21\x9a\x58\x00\x26\x66\x34\x18\x72\xc5\x30\x77\x49\xd8\xd3\x61\x2b\x19\x4a\xf9\x0f\x84\xae\xd7\x2c\x31\x5b\xb8\xee\x60\xb1\xc0\x88\xc3\x44\x06\x04\x67\x8a\x69\x72\xf0\xfe\xfc\xfc\x48\x39\xa8\xa1\xda\xdc\x95\xac\xa5\x11\x55\x9c\xc5\xcb\xc2\x34\xc6\x59\x7c\x40\x4c\x75\x10\x2b\x9a\x2b\x00\x43\x3d\xbb\x68\x4b\x79\x03\x00\x55\x41\x6b\x0f\x0c\x06\xef\xb9\x8e\x5c\xb5\x71\xe0\xbd\x6d\xd6\xc1\x41\x3e\xc8\x5c\x2a\xa8\x06\x4a\xb6\x76\x7b\x82\xdf\xaf\x5a\x13\x1c\x23\x4c\xc9\xd6\xb0\x9e\xb1\x22\xcb\xf3\xfb\x15\xb5\xfb\xe7\x59\x63\x65\x96\x4e\x37\x83\x5b\xd7\x75\x73\xef\x79\x57\x0d\x9f\x4a\x28\x10\x40\xea\xc3\xfe\xad\xe8\x48\x78\xb7\x86\xba\xcd\xb0\x9a\xe8\xc1\xc3\x26\x6f\x4b\x3b\xc6\xb8\x8b\x8a\xaf\x02\xae\xdf\xa4\x38\x05\xc5\xb2\x1a\xab\x08\x8a\xb6\xfb\xc3\x64\x45\xb5\xbb\x0b\x85\xbb\xd9\xa3\x47\xdd\xf3\x0e\x4e\xc0\x30\xa6\xcc\x22\xd6\x04\x63\xda\x71\x2b\x80\x25\xe2\x35\x5b\x8f\xb9\x69\xc1\x7a\xfd\xc8\xfe\xad\x69\xa2\xa6\x87\x72\xf2\xbb\x11\xf5\x7c\x74\x0e\x29\xbf\xf3\x95\x8e\x51\x6a\x9c\xa4\x0d\xbc\x98\x02\x83\x51\x9e\x86\x29\xc7\xfe\x89\x9a\x16\x38\x38\xad\xd2\x12\xeb\x73\x35\xcd\x3c\xc8\x4f\x1b\xae\x34\x1e\x62\x30\xb0\x3b\x05\x1f\x0a\x38\x8b\x40\x56\x53\xe2\xad\x5d\x9c\x29\x0c\x4a\x47\x22\x5b\x51\xe5\xf6\x21\x80\xa1\xbc\x20\xfe\xaa\x9c\x03\x54\xda\x5f\xfb\x4c\x19\x9f\x6a\xb0\xc4\x3e\x2b\xfa\x45\x59\xec\x30\xc7\xbd\xf7\x3d\x4f\xc0\xaa\x1f\x57\xcb\xc9\xbc\x9f\x55\xfd\xd7\x59\x25\x5e\x95\xa5\x40\x49\x04\x23\x74\x5c\x50\x2e\xec\x30\x7d\x34\xc3\xf4\xcd\xff\x39\xc3\x34\x6c\x0f\x93\xe5\x63\x2d\x9f\xa0\x3f\x22\xc0\x84\x95\xbd\xb2\xe3\x60\xfb\xf6\x0d\x57\x78\xaf\x9c\xac\x14\x04\xc0\x2f\x6d\x04\x83\x07\x63\x50\x0c\xff\x52\x04\x83\xdd\x3f\x81\x60\x80\x7f\xe6\x64\x34\x7e\x19\x0f\x71\xae\x6e\x32\xaf\x39\xa5\x5f\x29\x8a\x7f\xe6\xe6\xca\xfe\x0f\x37\x81\x5f\xc4\x6a\x23\x23\xff\x0b\xaf\xbd\x3e\x86\xa6\x3c\x0d\x4b\x9c\xe4\x36\x5b\x58\x56\xc1\xd9\xc8\xfc\xcc\x8d\x53\xc9\x15\xd8\xe0\x5c\x5d\xa5\x9d\x36\x2b\x92\x53\xbe\x5f\x98\xd8\x55\xda\x7f\x1f\x4c\xaa\x50\xed\x21\x8c\x3c\x10\xba\x24\x14\x1e\x17\xed\x72\x70\x45\x84\xf5\xc2\x9f\xa8\x71\x2f\x9d\x81\x99\xac\x3d\x73\x4e\x27\x38\x27\xda\x71\x54\x7d\x71\xce\xe6\x55\xfd\xe7\x63\x77\xe5\x9b\xc2\x5f\x44\x60\x4c\x16\x3d\x10\x04\xa3\x7a\x62\x04\x0c\x13\xe5\xe6\x71\xf7\xf5\x1c\x21\x84\xf3\x66\x24\x28\x5b\xa1\x78\x6a\xf4\x27\x1d\xef\xe9\x2f\x8a\x85\xf1\xef\x8b\xaf\xe4\xfc\x4b\x1d\x38\x39\x4d\x4c\x7f\xb1\x5a\x2e\x58\x41\xc1\x3e\xc5\x2b\xfc\x49\x61\xcc\xfe\xbd\x51\x9d\x36\xf9\xf3\x9b\x4e\x29\x71\xed\x4f\x9c\x94\x89\xf6\xf7\x51\xdb\x3f\x5e\xb1\xea\x40\x47\x93\x48\x61\x34\xe4\x82\x5c\x0a\x3a\x45\x7a\xdb\x04\x22\x51\x2d\x4e\xf0\xa3\x53\x28\x8f\xc5\xfb\x05\xad\x11\xaa\x51\xef\x82\xc7\x56\xab\x47\xc9\x0f\xa0\x31\x87\x3b\x96\xd1\xec\x49\xd2\xd5\x5c\xfa\x35\xfe\x89\x23\xfc\x13\xb7\x81\x0d\x40\xc4\x1e\xfd\x1d\xa4\x02\x2f\x6c\xba\x17\x6a\x6f\x00\x75\xfe\x27\x27\x3f\xc7\x5d\xf1\xd2\xee\x93\xbc\x9c\x68\xa4\x54\x1b\xad\x18\xe1\x7f\x71\x72\x16\xaf\xd8\x34\x8d\xce\xdf\xce\x76\x17\xf4\x68\x16\x29\x31\x5a\xfa\xb7\x55\x54\x41\xe4\xe9\x2a\x4a\x47\xd1\x40\x6b\xee\xa2\x31\x8e\x40\x6c\x00\x07\x64\x94\x8e\x46\xbb\xff\x8d\x77\x41\x17\x3a\x1e\xe3\x68\x9e\x55\x47\x77\x59\x1e\xa5\xb3\x2c\xaf\x28\x8e\x96\x8b\xbb\x8c\xcb\x64\xe3\xfa\x6f\xf8\x96\x8a\x2c\xf5\x55\xe9\xd1\x22\x9b\x7c\xca\x6e\x68\xf5\x42\x77\x69\xc7\x8c\x46\xf5\xe2\x26\x67\xb7\xb7\x94\xbf\xc8\xd9\xf5\x0b\xb3\xb1\x2b\xd7\xe7\x64\x7e\x5d\x45\x75\x8d\x30\x2d\x4c\x07\x8e\xbe\x14\x5f\x8f\xbe\x3b\xbd\xe8\xee\x80\x99\xcd\x08\x47\x97\xf4\x8b\x78\x0d\x91\x41\x70\xf4\x77\x43\x7e\x23\x1c\x0d\xe4\xd1\x54\xb5\x7b\xf8\x9f\x78\xf4\xdd\x7f\xe1\x6f\xc7\x78\x34\xfa\x6e\x88\x47\xdf\xfd\x27\xde\x1d\xe3\x91\x17\x6e\x64\xac\xfa\x8f\xc3\xcf\x5e\x04\x92\xb1\x19\x20\x18\xf9\xd1\x28\x72\xa3\x39\x5a\x75\xd6\x36\x84\xda\xbe\xc5\x43\x3c\x8a\xdc\x52\x8c\xc6\x1d\x65\xe0\x88\xe6\x15\xed\x2a\xea\xbf\xb1\x2c\x42\xb6\x66\xb4\xfb\x5f\xf8\x3f\xc6\xf2\x47\xf4\x77\xed\x8b\xe1\xf7\xdd\xab\x4c\x1d\x00\x91\x4c\xfb\xdd\xb7\xf8\x3b\x53\xa1\x9c\x5c\x30\xaf\xa6\x82\xea\x09\xc5\xdd\xd5\x7d\xfb\x6f\xaa\x6e\x3c\x6e\xbd\xdc\xc5\xdf\x9a\xf7\x1b\x17\x5e\xc4\x66\x11\xf6\x8f\x93\x28\xa7\x22\xfa\x8b\x96\x23\x6c\x3c\xbb\x14\x85\x5d\x8a\x77\xfb\xdb\x07\xc3\x8f\x53\xda\xb9\x14\xdb\x3b\x28\x58\x38\xe6\xf7\x50\xcf\xb4\xb7\x72\x1e\xe9\xa9\xb1\xa2\xf5\xbb\xfb\x17\x75\x54\x95\x6c\x7a\x6a\xd0\x17\x8b\x07\x70\x69\xaf\x3c\x46\xda\xea\x53\x0d\x53\x19\x40\xaa\xb5\x42\xc1\xf5\x3c\xdb\x43\x4e\x67\x20\xc5\x9b\xf3\x78\xa5\x01\x01\xd2\xd5\x6d\xc6\x0a\xe3\xb3\x88\xb5\x93\xfa\x0a\x0a\x4b\xb9\x24\xa8\xa5\x71\x32\xd4\x1e\xd6\xca\xf0\x57\x33\x12\x3b\xa2\x5c\xec\xe4\xf4\x8e\xe6\x91\xef\x66\xad\x73\x28\x27\x5b\xa3\x16\xb4\x6c\xb9\xec\x34\xb4\x47\xe3\x78\x70\x3a\xd3\xc1\x35\xc3\x02\xc3\x0a\xbb\x1d\xba\x3b\x6a\xaa\x6b\x7d\x57\xd0\xa7\x8f\xe7\x47\x1b\xc8\xb1\x79\xd1\xb8\x54\x70\x27\x5b\xde\x03\x20\x00\xc3\x48\x35\x65\xe8\x14\x8c\x5e\x82\x24\x10\x73\x44\x17\xc7\x69\xb9\xa0\x05\xf0\x8e\xfa\xfc\x77\xb9\x85\xc6\x34\xe8\xbc\xce\xf8\xd3\x9c\x0a\x6c\x66\x38\xe5\xfe\xe0\x81\x2d\x55\xfb\xae\x92\x91\x22\x2e\x43\xfb\xb7\x02\x94\xd9\xa5\xbc\xbb\x38\x31\xb3\x89\x82\x6e\x64\x85\x3e\x58\x8b\x09\x8a\xde\x72\x8e\xa1\x7b\x16\x9d\x14\x9c\x43\x2e\x68\x4e\x35\x66\x47\x4a\x71\x33\x90\xbf\x7f\x81\xb7\xcb\x14\xf0\xb5\x02\xfd\x86\xb9\xe1\x07\x82\xdf\xba\xa2\xe2\xd4\x59\x1c\x58\x7c\x0e\x4e\x67\x3e\x9b\x63\x65\x91\xf2\xa6\xe5\x8a\x24\xbc\x90\xe7\x30\x8d\xa3\xf6\x5e\x94\x1b\xf7\x05\x88\x8a\x22\x3c\x8a\xe8\x97\x45\xc9\x45\x25\x29\x69\x77\x4a\xb9\x65\x21\x82\xc7\x18\x37\x50\x00\xa2\x65\x45\xfb\x72\x84\x26\x22\xea\x75\x47\x13\xa6\x38\xba\xba\xa2\xd5\x3b\xa0\x12\x11\x5e\x29\xcf\x73\xd0\xa8\x6c\xcc\x60\x60\x10\xa3\x66\x1c\xe2\xc0\x7b\xca\x09\x3d\x12\x93\xa1\x7e\xa8\xd4\x77\x10\x84\xe4\x89\x25\xca\xc4\x0f\x96\x76\xfb\x9c\xd2\x6e\x1f\x2b\x6d\x41\xe9\xa7\x67\xb5\xcf\x64\x78\xb0\xd4\x8a\x8a\x67\x15\xaa\xd3\x3f\x58\xa6\xd5\x88\x3c\xb9\x54\x9b\x03\x22\x3f\x3f\xb4\x24\xed\x42\x7b\x64\x55\x2e\x05\xcb\xbd\x2f\xc0\xae\xcb\x47\x73\xc6\x68\x51\x70\x73\xbd\xaa\x53\xe4\xcf\xad\x59\x6a\x06\x89\x4c\x31\xb5\xb3\x40\xe6\x98\xda\x45\x48\x28\xcc\x37\xa1\xb0\x88\x08\x75\x03\xe0\x03\xd8\x32\x5c\x1a\x28\x80\x85\xc1\x01\xe8\x79\x85\xb0\x9e\x85\xa2\x16\x89\x3a\xe4\x51\x1c\x2d\x0b\xd5\xd4\x69\x84\x7a\x7e\xc1\x59\x4f\xc1\x58\xec\xea\x23\x34\xef\x84\x13\xba\xca\x35\x98\x69\xf5\x81\x72\x10\xad\xee\x5a\xd1\xe9\x9c\x72\x26\xe8\xf4\xa8\x98\x3a\xf5\xff\x2c\xcf\x84\x4c\x3f\x35\xc9\x8d\x90\x53\xa3\xc1\xf8\x56\x2e\x57\x53\x1b\xfc\xbc\x0a\x3f\xdc\xb2\x2f\xac\x68\xbc\xcb\xb3\xaf\xf7\x07\xf3\xac\xf5\x1e\x46\xba\xf1\x4e\x64\x37\x8d\x37\x5c\x8b\x24\x1b\xaf\x59\x75\x5c\x30\x61\x4d\x15\x94\xd1\xac\xe1\x11\x60\x90\x3d\x3c\xa0\xc4\x1b\x20\x87\x0d\xe4\xbd\x74\xd3\x82\x1b\x83\xa7\x4b\x01\x55\xb7\x1a\x89\x10\x00\x47\x0f\x4f\x60\x24\x6d\x55\x3c\xcb\xd8\x6b\x9c\xd1\xce\x19\x74\x1d\x63\x72\x2b\xd6\x6b\xe1\xfc\xf1\x67\x1e\x4c\x03\x58\xa6\x5d\x40\xe6\x43\xab\x69\xd3\x87\x45\xf0\x9a\x4e\xe5\x5b\x56\x75\xa4\xb5\xf2\xba\x22\x61\x95\xfb\x82\x82\x96\x35\xb3\xd2\xe9\x86\x9c\xf2\xea\x1a\x64\xac\xa8\x90\xf3\xc0\xb2\x9c\x7d\x55\x15\x86\xd3\x33\xac\x97\xc5\x63\x69\x76\x6b\xf5\xcb\x4b\x10\x48\xb8\xd5\xd7\x9a\x55\x16\x43\x43\xee\xb5\xa6\x5a\x4b\xcd\x39\xf1\xe3\xad\x69\xef\x12\xbd\x36\x08\xa1\xf5\x95\xe4\x1d\xb8\xd2\x9e\x9f\x7e\x2e\xde\x65\x8b\x46\x31\x23\x08\x17\xa1\x7f\x99\x3d\xab\xb9\x15\xc0\xf9\x42\xcd\x32\x2e\x5a\xb6\x85\x61\x19\x92\x25\xb9\xa0\x02\xd5\x57\x33\x56\x4c\x8f\xcd\xde\x83\xaa\xe5\xb1\xea\xb4\x4f\x32\x87\x86\xf6\x20\xdc\x6a\x2b\x79\xd3\x1d\xa3\x70\xba\xa0\x0e\xd0\x0f\x83\x32\xd1\x67\x35\x27\x5c\x2b\x12\xeb\xfa\x6a\x9e\x55\xc7\x85\xad\xfd\xc2\x58\x3c\x3e\xbf\xf6\xc1\x00\x2c\x4d\x62\x81\x5c\x3c\x1e\xaf\x26\x83\x01\x54\x1b\x1d\x4e\x23\x12\x9e\xde\xf5\xa1\x6b\xcb\x16\x21\x62\x4f\x8c\xe8\xd8\xb0\xb2\x15\x15\x1f\x6c\x7e\x6b\x12\xda\x31\x7b\x91\x2e\x2f\x42\x72\xac\x65\xf5\x8a\x5a\x74\x54\x6c\x09\xc9\xe3\x75\x9f\xfb\xa5\x3c\x5c\xbd\x2d\xd5\xb4\xe0\x33\x67\x10\x00\xe3\xad\xa5\x7a\x1d\x6d\xe9\x2a\xc9\x91\x49\x0d\xfc\x40\xc7\x2d\x07\x20\x0e\xc6\xf1\xf2\x13\x19\x8d\x11\xe6\x35\xa7\xd9\xf4\xd1\xda\x5c\xc9\x1b\x10\xb8\x46\x74\x5c\x83\x61\xd3\x17\x56\xb8\x03\xa4\xbd\xce\x23\x4d\xdf\x23\x94\x64\x53\x79\xc3\xa8\xe7\x59\x65\x73\x05\x9b\xb6\xbd\xde\x6c\x66\x79\x0f\x98\x95\xfc\x28\x9b\xcc\x21\x6f\x15\xc0\xdb\xe0\x8d\x4b\xd1\x9c\x2e\x01\xd0\x64\xec\xe1\xbe\x89\x3d\xbd\xd9\x52\x81\x8b\x44\x57\x11\x73\x88\x15\x24\x97\x2c\x47\x72\x5f\x42\xd3\xb9\x64\x4d\x38\x02\x1e\xc5\xdf\x27\x72\xf6\x24\x15\x34\xa7\x9b\x9a\xfe\xb8\x75\xea\xf9\xca\x7f\x7b\x12\x6a\xaf\x48\x84\xac\xeb\x55\x2d\x99\x86\xa0\xb8\x70\x66\x5a\x24\x21\xf2\x0b\x8c\x3c\x28\x15\x79\x44\x64\x16\xb4\x4e\x1b\x65\x34\x4a\x86\x32\x3b\x7a\x90\xd9\xf1\x6e\x64\x78\xd2\xa0\x7b\x0d\x7a\xe6\xc8\xc7\x92\x07\xb3\xa3\x5f\xb8\xd1\x2f\x10\xe6\x5b\x84\x64\x83\x01\x05\xc8\x9a\xd6\x34\x64\xd3\xe9\x65\x69\xd0\xd8\xab\x56\xec\xfb\xc5\xb2\x9a\x5b\xac\x76\xfd\x71\x6f\x37\x1d\x62\x86\xf4\xc8\xbc\xe6\xe5\x6d\x23\xff\xe6\xbc\xdf\xa2\xba\xab\x44\xcc\xc8\xd6\xae\xb1\xea\xb7\x63\x0b\xbb\xcd\x96\x2c\x2f\xa0\x8b\xb8\xc4\xce\x2d\x07\x3c\x8b\xb2\xc1\x20\xfb\xbe\xcd\x6d\x0d\x06\x71\x69\x34\xf5\x19\xde\x45\x1d\x0c\xd9\xce\x0e\xce\xc8\xce\x2e\xc2\x10\xb4\x2c\x43\xa5\xb2\x34\x58\x01\x8e\xb8\x0b\x12\x26\xf0\x2d\x15\xf3\x72\x9a\x72\xfc\x89\x15\xd3\xb4\xc0\xd5\x7d\x31\x49\x59\x1d\x84\x71\x29\x47\xd9\xb8\xf7\xad\x72\x11\xfd\x16\xdc\x4c\x64\xe2\xbd\xa0\x0d\x69\xac\xde\x92\x02\x57\x89\x2c\x84\x30\x54\xd7\x1d\x3d\x0d\xf7\x77\x93\x5d\x94\xa5\x6b\xb5\xb0\x3a\x6f\x6d\xbc\x09\x79\x2e\x0f\x06\x30\x2c\xed\xee\xae\xd7\xd5\xf6\xb6\xea\x6b\xe7\x70\x75\x70\xac\xc3\x16\x8b\x26\x49\x61\xe3\x5d\x6d\xdb\xe7\xf7\xc0\xc4\x58\x68\xb5\xfe\xfb\x0a\xad\x8c\x01\x83\x6a\xb5\xe5\xea\x42\xa0\x23\x41\x68\xd2\x55\x74\x83\xb0\x06\x88\x81\x61\xcb\x50\xb3\xf5\xc2\xcd\x18\x6f\x26\xee\xb5\xfb\xaf\xa0\x6d\xcc\x0c\x0e\x3b\x96\x50\xd7\xb2\x22\xc3\xa6\xad\xaa\x08\x4c\x55\x8d\x9d\x4b\x31\x7e\x09\x93\xb1\x00\x00\x10\x58\x74\x98\x25\x6a\xd1\x29\xe7\x95\x79\x39\x45\xd0\x82\x65\x01\x11\x3f\x63\xd6\x55\xdf\xf6\x36\xaa\xeb\x7a\xc3\xcd\xa2\x0a\x00\xe0\xbc\x49\xbb\xcd\xc4\x64\xce\x8a\x1b\x6f\xe7\x1a\x63\x23\x3d\x34\x8f\x8e\x3d\x47\x61\x37\x79\x47\x37\xf9\xa8\x18\xf7\x74\xef\xb6\x20\x12\x34\x70\x4e\xb0\x0d\x06\x83\x5d\xfb\x7b\xbd\x8e\x1b\xae\xb7\xb0\xd2\xb4\xed\x4f\x73\x54\xc0\xea\x49\x65\x74\xf0\x28\xa2\x2e\xaf\x2b\xca\xef\x28\x87\x00\x13\xce\x98\x49\x3c\xb1\x3f\x02\x3d\x66\x9e\xa4\x0d\xda\x14\x0e\x99\xeb\x42\xa1\xbb\x00\xd3\x59\xa8\xce\x7a\xae\x90\x13\xb0\xe6\x05\x88\x78\x77\x6f\x19\x0c\x62\x0a\x7d\xa4\xaa\x8f\x05\xf2\xee\x22\xb5\xbe\xe3\xe6\xda\x1f\xaf\x13\xdb\x0e\x4f\x7c\x70\x01\xe7\xbd\x30\x55\x07\xe9\xc4\x9d\x8c\xf6\xd3\xdc\x1d\x8a\x13\xe3\xf8\xdc\xcd\xa6\x78\x71\x1f\x97\x31\x45\xfe\x69\xe5\x67\x88\x4d\x41\x1c\x39\xec\x48\x45\x87\xb6\x14\x0b\xa5\x9f\x08\x47\x58\xf4\x64\x61\xbc\x8d\xea\x37\xeb\xc0\xe6\x9a\xeb\xb6\xe9\x8a\x05\xe0\x5c\xdb\xdb\x85\x6b\xa7\xb3\x67\xcd\x3d\x37\xee\x29\x58\x36\x63\x5e\xbb\x61\x59\x38\x51\x85\xe9\x1b\x23\xd4\x62\x7b\xbd\x64\x3f\x90\xe1\x4b\xb6\xb3\x63\x31\x3a\x46\x0c\xd8\xf1\x52\xcd\xa7\x5a\x97\xa5\x5e\x89\x8a\x3f\x2c\xf5\x72\xf4\x71\x45\x8d\x1f\xfd\xce\x6e\xad\xe5\x15\xb3\x07\x85\x33\xf9\xd3\x05\x86\xcf\x92\xd9\xb4\x12\x7a\x52\x58\xf7\x9d\x2f\x8b\xbc\x2c\x17\x5d\x42\x1e\xef\x95\xb6\x4e\x2a\xb9\xcb\xb8\x28\xf3\xfb\x19\xcb\xfd\xaa\x29\xe7\x90\x42\x3d\xdd\x29\x02\xe4\xb7\x6c\xc1\xe9\x24\x13\x74\xba\x33\xa3\x99\x58\x72\xda\xdd\x53\xd0\x0b\x74\x89\x98\x5c\x14\x5f\x88\x9e\x38\xc5\xf3\x3f\x2f\x74\x32\x5a\x62\x72\x46\x31\x4d\xb2\xa5\x28\x0f\xcc\x1b\x5b\x7d\x92\x24\x8e\xe3\x66\x14\x40\x47\x2e\x01\x5e\xf3\x1d\x45\x35\xa6\x80\x19\xd5\xcc\xe4\xfb\xb8\xbd\x2a\xcb\x9c\x66\x45\x9c\x51\x8d\x8d\x80\xc1\x65\x17\x3c\x26\xa7\xe6\xee\xe5\x67\xb5\x26\xd5\x20\xa4\x32\xc2\x30\x64\x76\x84\x75\x27\xb6\xc6\x7b\x72\x53\xc9\xf6\xe7\x2c\xab\xba\xa0\x8e\x74\xab\x3f\x41\xab\x0f\x54\xab\xed\x7c\x98\x91\x6a\xb9\x48\x6f\x1a\x4f\x81\x57\x93\xb2\x98\xb1\x9b\xa5\x95\x51\xfa\x12\xcb\x5d\x5c\xa9\x7b\xfa\x91\x02\x88\x50\xe1\xd2\x71\x00\xda\x7d\x6d\x3e\xa1\xba\x86\xd6\xc8\x1b\xd0\x59\x26\xe6\xe4\x8a\xaa\xd1\x21\xd7\xfa\xc7\x47\x26\xe6\x3a\x08\xec\x06\xc8\xc6\x6b\x6a\xf1\x30\xda\x38\xbf\xdc\xea\x2b\x6c\x35\xbc\x5c\x90\x7b\xaa\x44\x8e\xe4\x48\xfe\x10\xfc\xfe\x82\xb6\x8b\xd7\x39\x8f\x4c\x38\xd2\xad\x21\xb4\x55\xa1\x22\xec\x0b\xf2\x3b\xa6\x09\xa7\x8b\x3c\x9b\x50\xd2\x5c\xad\xe4\x03\x5a\x41\x6c\xe4\x84\x55\x2a\x46\x32\x45\x7b\x1f\x2d\x0d\x4a\x6d\x4e\x1d\x4b\xa9\x76\x65\x1d\x17\x27\x99\x60\x77\x14\xb2\x91\x8f\x18\x82\x26\xc1\xc3\xa9\x3e\xe0\x36\xb5\xf4\x1b\x5d\xfe\x0c\x6f\xed\xea\x12\x25\x87\xfe\xac\xbc\x0b\xd3\x4d\xc0\x56\x02\x4f\x9e\x42\x7c\x64\x79\xae\x9c\x52\xc8\xab\xc6\xa7\x43\x36\xd5\x5f\xde\x60\x9a\xd0\x6c\x32\x3f\xe3\xe5\x97\x7b\xa8\xd3\xcb\xd6\x16\x18\x2b\x0a\x7c\x68\x11\x38\x9c\x5c\x65\x30\x60\xaa\x0a\x97\xdf\x66\xab\x5b\x95\xb8\x06\xfc\xa1\x3a\x6c\xf6\xa0\x8a\x6c\x6a\xd9\x04\x32\xc3\x54\xde\xaa\x2c\xdb\xf0\x8c\xad\xaa\x91\x40\x1d\x5c\xb3\x11\x27\xb5\xd9\x2f\x8e\x5a\xc2\x12\x68\xa4\x01\x44\x84\x95\x57\x34\xc9\x92\x61\x94\x95\xa9\x72\x61\x6d\x0e\x95\xdb\x30\xb5\x61\xb6\x2a\x14\x0b\x5c\x20\x2c\xdc\xaa\xb0\xfd\x5b\xc0\x56\x28\x54\x5c\x2e\x72\x0b\x14\xed\xa4\x2c\x68\x17\x25\xd1\xc0\x2a\x8a\xec\x1d\xdd\x2e\xc4\x3d\x39\xa1\xf0\xf0\x2a\xcf\x8a\x4f\xe4\x98\xba\x13\x77\x26\xc7\xc7\xb9\xd0\x0d\xd1\x8a\xad\xd7\x1d\xc1\x94\x8b\xf5\x3a\x66\xa4\xc0\x0a\x19\x01\x4c\xc1\x94\x6a\x47\xf9\xeb\x84\xf7\x53\x55\xa0\x8a\x4f\x09\xb7\x6d\xff\x7c\x0f\x22\x06\x67\xbd\x16\x7e\x49\xb1\x17\x97\xa4\xc0\x19\x61\x28\x95\xbf\x96\x79\x8e\x33\x52\x34\xab\xec\xba\xd7\x6a\x2d\xa7\xad\xee\xd6\x75\xce\x63\x89\x88\xc5\xde\xc8\xdc\x8d\x1d\x3c\xcd\xc3\xc5\x91\x96\x3d\x85\x14\x06\x3e\xde\x59\xe7\x72\x30\x42\xb2\xa0\x70\x65\x79\x6c\x56\x85\x5b\x57\x86\xa5\xa9\xec\xb7\x9d\xef\x5e\x56\x92\xa5\xa9\x76\xc8\x77\xaa\x49\x39\x61\xa3\x6a\x8c\x97\xf2\xdf\xf6\xee\x18\x4f\xe0\xc7\xb7\xc0\xe5\x2c\xd1\x6a\x32\x18\xa8\x31\xcc\xf1\x12\xa2\x6d\xc7\x39\x71\xbe\xc4\x6a\x00\x97\x3d\xa3\xb8\xdd\x22\x64\x3a\x18\x68\x33\x09\x78\x5a\xaf\xe3\x25\xc9\x47\xcb\x31\xc2\x4b\x6d\xb8\x94\xcb\xdd\x64\xe4\x94\xc3\x5a\x2e\x93\x33\x4e\x2b\xb9\xcc\xda\x6b\x6b\xeb\x18\x14\xaf\x98\x26\xe0\x21\x6b\x0e\x1c\xed\x0b\x47\x5e\xcb\xe3\x1a\x7e\xeb\x2f\x8c\x56\xe4\x3d\xc4\x02\x99\x36\xd3\x7e\xc5\x34\x29\x4a\xc1\x66\xf7\xe1\x17\xf2\x16\x0e\x3e\xff\x3c\x23\x73\xb5\x7c\xb5\x69\xad\x93\xda\x90\x7f\xca\x42\x80\x10\xcb\x97\x87\x74\x52\x72\xc9\x03\x91\x7f\x41\x19\x26\xd9\xeb\x92\xbb\x4f\x15\x6d\x7e\xb3\xd5\x64\xaa\x1a\x50\xd9\x33\xaf\xb4\x5c\x1f\x44\xad\x0f\x4b\x7d\xfe\x79\xbd\xed\xc2\xa2\x5b\xd5\xb8\x20\x06\xc4\xac\xc2\x8c\xec\x82\x14\xc2\xbe\xb1\xd6\xf2\xe1\x61\x04\x71\x75\x18\x19\xfa\x99\x47\xbb\x63\xed\x0b\xc1\xbe\xb7\xde\x10\x6c\x7b\x1b\xf1\x51\x31\x62\xe3\xb1\x3a\x68\xe5\x4f\x0f\x75\x58\xb5\x7e\x63\x23\x3d\xcc\xfa\xf5\xda\xec\x47\x17\x46\xdd\xf1\xf1\xfa\xc7\xfb\x38\xf4\x13\xc1\x85\xb9\xfc\x7c\xa2\xf7\x55\x2c\x10\x66\x92\x4d\x6f\xb4\x8f\xc8\x46\x61\x38\xa7\x39\x86\x90\xf3\xb5\x26\x75\xf4\xcb\x22\xb3\xeb\x43\x36\x6f\x4a\x15\x75\xb7\xc7\xe1\x15\x56\x11\xab\xef\x32\x41\xed\xcb\x2f\x96\x4a\xda\x57\x9f\x31\x4d\x66\xf9\xb2\x9a\xef\x57\xf7\xc5\xc4\xbc\xf6\xfb\x0b\x24\xce\xba\x44\x56\xa1\x6b\x45\x15\xb8\x56\xc8\x2d\x77\xe6\x45\x2e\xe8\x9d\x11\x8e\xef\x5b\xd2\x3c\x75\x5a\x34\xa8\x47\x81\x7a\xdc\x4f\x99\xc9\x94\x6c\x16\x6f\x99\x4a\x9d\xef\x01\xc4\x44\xc5\x3c\x09\xfc\x0d\x0c\x31\xb0\x61\x6a\x6f\xe3\x02\x67\x78\x54\x60\x9e\x2c\x32\x31\x1f\x6b\x5f\x7a\xcc\x90\xf5\x20\x81\x82\xc8\x3f\x62\x93\x06\x43\x5d\x22\xbb\x91\x4d\x02\x57\x46\x43\x44\xfd\x76\xa2\x46\xd5\x1d\xc3\xc2\x75\x9c\x93\x1e\x95\x44\xb2\xf4\x6d\x3c\x94\x87\x43\x15\xe1\x1c\xa5\x79\x0c\x8c\x22\x50\x07\x90\x4c\xfb\xcb\x2c\x49\x12\xc7\x6c\x67\xea\xce\x8b\xa9\xe2\xd4\x9a\x3c\x8f\x77\x6a\x82\xdd\x7d\x66\xce\xce\x5e\x07\x7e\x69\xb6\x17\x0b\x92\xc9\x53\x15\x97\x64\x8b\x19\x1b\xd7\xd7\xfb\xef\xdf\x5e\x5e\xed\x5f\xfc\x72\x72\x70\x75\xfa\xea\xe2\xe8\xfc\xc3\xd1\xf9\x05\x4a\x65\xda\x64\x26\x8f\xb1\x4c\x32\xd7\xb4\x98\xd2\x42\xfc\x4c\xef\x2b\x5c\x92\x0c\xc4\x7d\xc8\x23\xd3\xa3\x31\xce\xc9\xf0\x65\xee\x56\xf2\xf6\x76\x8e\xa6\x34\x2e\x46\xf9\x18\x53\xf2\x83\xc5\x1b\x43\x8d\x23\xdd\x2e\x3d\x79\xa4\xaf\xe4\x6c\x54\x69\xa5\x64\x92\xa5\x59\xf6\x40\x7e\x41\xe2\x4f\x32\x21\x09\x4f\x21\xf7\x50\x7b\xd0\xd4\x6a\xfd\xa7\xdc\x57\x05\xe1\x2e\x50\xcb\x70\x8c\x19\x89\xf9\x7a\x2d\x46\xbb\x63\xec\x47\x40\xb5\xeb\x7b\xee\x19\x07\x81\x1b\x8e\x16\x49\x4e\x0c\x74\xb8\xa5\x11\x06\xca\xe6\xd7\x6f\x56\xb4\x4e\xbf\x59\x15\xeb\xb5\xa8\x7f\xc5\x21\xf2\xbc\x07\xfb\x64\x42\x9f\xd5\xa8\x67\x82\xd2\x9e\xd1\x78\x75\x43\x05\xc4\x8b\xd3\xea\xb4\xb9\xbe\x42\x50\x65\x76\x07\x4e\xdf\xb6\xca\xbd\x52\xc1\x45\x43\xf3\xc5\xe8\xdb\x31\x4a\xcb\x5a\x45\x08\xf7\x89\xf2\x6f\xf6\x95\x22\x32\x4d\x27\x68\x18\x72\x56\xa9\x8f\xe0\xae\xeb\xf9\x64\xa8\x8c\x28\xa6\xf8\xdc\x56\x5c\x85\xb6\xdf\x72\xb5\x66\xfc\x93\xca\xbf\x5f\x1d\x32\x59\xe9\x21\x5c\x38\xb2\xc9\x27\x3a\x25\xb7\x42\x51\x23\x8b\xac\x15\xb4\xe0\x15\x4d\x96\xc5\x82\x97\x13\x5a\x55\xd4\xa5\xa9\xc8\xd6\x10\x7f\xa0\x66\x7d\xc8\x5a\xc0\x3a\xe1\xd2\x58\x1d\xff\x22\x69\xdc\x8c\x15\x1b\x8a\x7d\x4f\xd7\xeb\x1f\x3d\x58\xce\xdf\xe9\x88\x8e\xeb\x5e\x23\x4b\x45\x3e\xca\x62\x74\xf5\xae\xa4\x6f\xbc\xb7\xfb\x79\xee\xa5\xff\x91\x5a\xaa\xd9\x5d\xb1\xf5\xa5\x05\x08\x29\x99\x06\x18\x65\xed\x23\xfb\x3b\x1d\x89\xb1\xec\x97\x96\xb7\x7e\xa0\x1e\xf2\x06\x48\xf0\xfb\xac\xe8\xb3\x44\xfb\x01\xeb\x55\x35\x18\x50\x60\x88\xc2\xb7\x23\x31\x96\xe7\x5b\xfb\xad\xe6\xca\xf4\xbd\xdd\x36\xf3\x82\x66\x7c\x32\x3f\x54\xe1\xce\xbd\x6b\xbc\x25\x2b\xef\xa9\x3e\xe9\x1e\xcd\x02\x03\x4c\xcc\x9d\x5f\x4e\xcf\x66\x7b\x2c\xed\x3a\x33\x99\xd3\x27\x5a\xfd\x18\x00\x3d\xc8\xf3\xa0\x3d\xd1\x8d\x56\xeb\x3e\xb9\x60\x93\xe1\xc1\x52\x35\x3c\xf6\x93\x0b\xd5\xe9\xc1\xf0\x3b\x39\xd9\x7f\x77\x74\x71\xb6\x7f\x70\x74\x71\xf5\xea\x97\xab\xe3\x43\xe2\xbf\x22\x34\x39\x78\x7f\x71\x79\xfa\x4e\x6e\x9c\xab\xd7\xa7\xe7\x84\x26\xca\x9d\xe0\xf8\xe4\xa7\xa3\x03\x00\x20\x78\xfd\xfe\xe4\x40\x45\xfe\xd5\xb2\x8e\x77\x4a\xfc\x46\x13\x45\xea\x68\x12\xd2\x64\x42\x93\xfd\xd6\x9b\xb7\xec\x9a\x67\x5c\xb2\x02\x34\xc9\xbd\xdf\x67\xe7\xa7\x67\x47\xe7\x97\xbf\x5c\x1d\x1e\x1f\x5e\x1d\xbc\xd9\x3f\xf9\xf1\x48\xbd\xfd\xe7\x2f\x57\x07\xa7\x27\x97\x47\x27\x97\xb2\x8d\x5a\xd2\x63\x49\x08\x4d\xae\x6e\xf2\xf2\x3a\xcb\x9d\x10\x48\x5b\x23\xd9\xab\xc2\x9d\xef\xca\xb0\x6d\xe5\xc1\x2a\xb8\xca\x63\xe7\x0a\xbe\x36\xba\xce\x5e\xab\x7b\xd7\x40\x1d\xef\x6d\x02\x5b\xe3\x95\xbb\x9c\x90\x1b\x7b\x1f\x91\x57\x4c\x79\x27\xcb\xd4\x15\x6a\x17\x97\x48\x9b\x37\xb5\x2f\xaf\x06\x2c\x6d\x30\x88\xab\xa4\x6d\x0e\xb2\x5e\x2b\xcc\x40\xdf\x92\x04\xad\xd7\x5f\xa0\xf4\xd2\xbb\x26\x7d\xde\xd4\x12\xfc\xd7\xd5\x7a\xa9\x6b\xc5\x0b\xd3\x39\xaf\x01\x47\x3e\xb3\xbc\xa5\x14\xa8\xd7\xe9\xbd\x3b\x9c\xe6\x59\x05\x45\xc7\x5c\x0b\xcc\x8d\x6a\x59\x61\x35\x6c\x0e\x8b\xec\xef\xf8\xeb\xa4\x62\x5f\xe9\x0f\xc3\xc1\xe0\x3a\x51\xe4\x4c\x76\xe7\xde\xbe\xbd\x77\x6f\x6b\x49\xcd\xb6\x86\xc0\x1c\x29\xa9\x84\x6b\xec\x17\x35\x5a\x56\x17\xca\xc8\x11\xc0\x4e\x4a\x76\x91\x69\xbd\x3a\x62\x5a\xe0\xae\x6c\xda\xb6\xb7\xad\x4e\x6b\x54\x8e\x09\x37\x48\xf2\x69\x84\x70\x46\xfe\x11\x53\x5c\xb6\x99\x35\xda\x62\xd6\x24\x9b\xc1\x60\x00\x38\x5e\x41\xc1\xe9\x2e\x96\xbc\x45\x5a\x62\x05\x46\xed\x33\x72\x69\x9b\x91\xcb\x10\xae\x96\x15\x70\x3d\x53\x0d\x1c\xd5\xde\x7d\xf7\xb0\xde\x4e\xc9\xd6\x2e\xbe\x08\x10\x97\x2e\x95\xf0\x05\x3a\x2e\x59\xd9\xe1\x16\x21\xa7\x46\xb4\x02\xb3\xc6\xe5\xac\x61\x63\x89\xb3\x09\xef\x92\x19\x3b\x9d\x52\x8d\xce\xce\x0e\x86\x1b\xb8\x7a\x82\x23\x41\x4f\x84\x40\x58\xdd\xa4\xe5\x14\x0d\x06\x85\x9b\x20\xd9\xf2\xbc\xa2\xfd\x0b\x75\xc0\x8e\xa0\x65\x63\x6f\x96\xde\xc9\x19\xbf\xd7\x0b\x47\xce\xad\x6a\x51\x60\x05\x61\x18\x66\xba\x91\x61\xee\x9c\x83\x27\x33\xcc\x08\x5f\xdb\x06\x5c\xff\xbf\xd2\x00\x20\x5f\x67\x7e\x10\xfb\xfd\x58\x6e\x04\x7b\x33\xa1\x98\x9b\x3b\x4c\x4b\x3c\xc6\x91\x64\x37\x5c\x4a\x66\xee\x30\x34\xb1\xab\x68\x30\xe8\xb8\xd1\xa8\x90\x85\xb4\x71\xa3\x91\xb7\x18\x2f\xa7\xe4\x8f\x6e\x63\x8e\x19\x1e\x71\xc9\xac\xf8\x97\x9a\xc2\x5d\x6a\xa8\x1e\x22\x93\xa6\x3d\x44\xbc\x35\x44\x1c\x42\xa0\x3f\x32\x44\x54\x85\xb9\x0d\x5a\xb4\xab\xee\x2f\x2e\x72\x52\x43\x86\xed\x2d\xeb\x86\xd5\xd9\x5d\x2c\xe4\xe6\x84\xc5\xeb\x0a\xe4\x1a\xba\xec\x93\xe2\xa7\xdc\x71\x7c\x61\x6c\x5a\xc3\xe3\x14\x0c\x5b\x1b\x27\xec\x27\xd8\x8e\xe7\xaa\x04\x6b\x0b\x7b\x71\xf4\xf6\xb5\x4c\x12\x21\x37\xb5\xbf\xd9\xfd\x89\x0b\xd8\xa1\x1d\xb7\x25\x3a\xfa\x34\x36\xf7\x79\xf9\x1b\xa2\xb9\xf5\xec\x15\xd6\x67\x98\x05\x76\x60\xb4\xcc\x8d\xc9\xa1\x36\x01\x92\x89\x4d\x34\x4c\x93\x03\xe1\xae\xd7\xe7\x6a\x19\x9e\x6c\x1c\x84\x8e\x53\x1d\x46\xa2\xeb\xb4\x3f\x81\xc6\x1e\xfb\x4b\xfa\x6d\x43\xa8\xe8\x84\x7a\x45\x87\x50\xaf\x30\x07\x58\x09\xd6\x27\xcd\xa3\x6a\xbd\x2e\x3b\x0e\x35\x79\xf4\x1c\x2a\x75\xe5\xf1\xf7\x64\x38\x18\xec\xc7\x08\x9f\x48\x56\x97\x0e\x06\xf1\x7f\x74\xc8\x72\xf6\xe8\xe8\x64\x2c\x97\x37\x4a\xd5\x2f\x84\xbc\x85\xf5\x3a\x46\xab\xe3\xed\x6d\x7c\x0a\x08\x10\xe6\xed\xd7\x18\xad\x76\x76\x54\x05\xb1\xac\xa1\x0d\x10\xa7\x09\x5d\x39\x8b\x15\x81\x46\xe8\xd2\x40\xe0\x4a\x62\x5d\xc7\x7e\x2d\xef\x25\x0d\x7c\x1d\x23\x00\xa0\xa0\xb1\xdb\x54\x5f\xe5\x4d\xdd\xe1\xe2\x39\x51\x7c\x0b\x60\x5b\x5e\xae\x87\x98\x93\x82\xec\xec\xa2\x34\x6e\x18\xde\xed\xec\x7a\xe1\xce\x0b\x08\xd2\xb8\xb3\x8b\x10\xbe\x95\x6c\xe8\xdf\x55\xf4\x9a\x6b\x3a\x2b\x39\x8d\xf0\x48\x57\x32\x96\xd7\x7e\x5b\xf7\x1b\x8f\xf5\x00\xc9\x8c\xad\x60\x2f\xe6\x20\xf9\x62\x8d\x9a\x6d\x35\xae\x66\xd8\x76\x50\xb3\x6f\x37\xde\x94\xf3\xcb\xf9\x8e\xd9\xf7\xc3\xf5\xba\x90\x7f\xd8\x4e\xb1\x45\x86\x68\x30\x90\xcb\x27\x52\x93\x16\xe1\x0c\x61\x78\x1e\x8d\xe5\xef\xb0\x27\x9a\x25\x94\x3d\x81\x26\x8f\x2d\x5c\x6d\x66\x22\x29\x2a\xe3\x82\xbd\x61\x5a\xe0\xdc\xe9\xad\xe3\x18\xde\xb3\xbd\x61\xca\xd0\x4e\x85\xf0\x92\xf0\xef\x87\x7b\xf9\x36\x4f\x79\x70\x44\x4a\x4e\xc6\x59\x5a\x46\x80\x6c\xa3\xd8\xfc\x08\x0d\x06\xb2\xab\x4b\xdd\x5e\xff\x93\x6c\xf4\xa6\x22\x24\x11\x34\x25\xa0\x7c\x67\xf7\xfb\xe5\x76\x65\xba\x9c\xf9\x25\x38\xbb\x06\x00\x45\x34\x02\xbd\x19\x78\xf3\xc7\xa3\xb1\x47\x67\x7e\x0f\x14\xa7\x2d\xfd\x99\xbc\x21\xa6\x4e\x01\x17\xfb\xb6\x0d\x4e\xb7\x26\xe9\x93\x5d\x78\x46\x52\x6e\x7f\x7d\x4f\xfe\x93\xfe\x07\xa2\x0e\xc7\x91\xe3\x24\x49\x0a\x6d\xcc\xe5\xbf\x77\xe2\x9a\x96\xcc\x11\xca\xd0\x24\xa1\xd0\x28\xd6\x0c\xb3\x6d\xf9\xba\xe7\xca\xd8\x66\x78\x88\x55\x70\xa6\xfa\x4d\xb3\x45\xae\xe9\xdf\xf8\x56\x77\xaa\x50\x3e\x18\x70\x70\x6e\x57\x82\xeb\xf5\x3a\x6a\x28\xc4\x22\x9c\xa9\x44\x53\xa3\xbf\x32\x69\xac\x42\x2b\xc2\xf2\x5e\x33\xcf\xaa\x40\xff\x67\x6d\x72\x8b\x8e\x9d\x24\x24\x1b\x5d\x74\x2c\x4c\x21\x57\x42\xa5\x36\x04\x4c\x71\xab\xd8\x48\x6e\x3e\x80\x9e\x50\xd6\x18\xc9\xd5\x47\x9a\x7d\xba\xa0\xc2\xcd\xee\x2f\x92\x99\x75\x7d\xa4\x49\xb7\x49\x6d\x03\xca\xba\xec\x12\xc5\x30\x64\x8d\x75\x32\x32\x7c\x99\x7d\x5f\x9a\xc9\xc9\xb4\xb1\xce\x28\xc7\xcb\x31\x98\xe5\xbd\x84\x93\x43\xb9\x76\xc1\xf9\x9c\xe3\x7f\xc4\x0c\x2f\xdb\xe7\x3d\x6b\x9d\xf7\x4c\xd2\xd6\xd2\x82\xd1\x78\xa4\xed\xe7\x2e\x7b\x92\xd1\x18\x97\x64\xf8\xb2\x74\xb6\x43\xe5\xf6\x36\xfa\x29\x66\x98\x62\x31\x2a\xc7\x90\xbe\xe7\x09\x91\x6c\x30\x66\xff\xce\xf2\x8f\x26\xd5\x0c\x93\xfe\x14\x8f\xc6\xd8\xa4\xf0\xb2\xfd\xa4\x86\x17\x14\x55\xb6\x4d\x60\x2c\x41\x0a\x3c\x25\x25\x9e\x93\x0c\xcf\xac\x82\x08\x2f\xc8\xce\xee\x4b\x6d\x7e\x7a\x4b\x16\xdb\xbb\xca\xa6\x92\x10\x12\x2f\x48\x10\xa9\x0a\xdf\x22\x34\x18\xc4\x0b\x32\x43\x38\xfa\x3b\xcd\x26\xf3\x48\xa6\xca\x25\xfb\x0c\x2b\xfd\x16\x2f\x64\x8a\xc5\x16\x21\x33\xb4\x82\xc2\x70\xbb\x0c\x20\xa1\x77\x64\xa2\x1b\x20\xab\x8b\x8a\xe5\xed\x35\xe5\x4e\x25\x70\xb7\x5e\x6f\x85\xfb\x7e\x82\x24\x27\x18\x99\x4d\x1f\xb1\xa2\x3f\x41\xe8\x9a\xd3\xec\x93\x2c\x41\x92\xae\x3b\xb4\xd2\xe2\xb0\xdf\xe2\x09\x50\x58\x84\x7a\x90\xa2\xce\x15\xe1\x5c\xec\xd9\xa6\xa2\xd4\x6f\xb5\xdd\xe3\x37\x64\xf8\xf2\xe6\xfb\xbb\x97\x37\xc6\xd8\xeb\x9a\xfc\x1e\x4f\xf0\x0d\xea\x5d\x0f\x06\xb6\xf4\x6b\x9c\xc3\xe5\xad\x6e\xd4\x87\xb7\x86\x78\x6a\x2b\x55\xd7\x72\xf9\x2d\x57\x1f\x40\xc5\x66\x14\x7e\xf3\xbd\x79\xd2\x34\x56\xce\x8d\xba\xcf\xd8\x83\xdd\x23\xbc\x20\x30\x9a\x3f\x02\xa3\xbf\x44\x83\xc1\x64\x94\x8f\x75\x0d\xbe\x52\x70\x89\x26\x24\x97\x0c\xc3\xa4\x53\xbd\x3a\x49\x96\xc5\xa7\xa2\xfc\x6c\x35\x6a\x7b\xb2\x9c\xb4\xf5\x3a\xce\x15\x0d\xec\xb3\x59\x6c\xea\x44\x13\x02\x95\x5a\xb3\xc9\x2b\x32\x77\x66\x58\x93\xbd\x79\xea\x69\x4e\x27\x08\x7f\x26\x57\xc1\x21\x91\x87\x56\x19\x9f\xd7\xeb\x0e\x9e\xfe\x1e\x7f\xd6\x4a\x89\x23\x72\x95\x74\x1b\xf5\xe7\x08\x7f\x91\xab\x6d\x79\x5d\x09\x1e\x2f\xb6\x77\x11\x3e\x55\x5c\xa5\x12\x88\x01\x24\x85\xcc\xa6\x40\x38\x7a\x47\xfa\xf2\x76\x8a\xbf\x38\x1b\xbb\x53\x33\x3f\x13\x72\xe5\x6c\x67\x72\x54\x6b\xed\x89\x4f\x60\xec\x12\x9b\x92\x16\x99\x98\x20\x3c\x6f\x32\x02\x13\xef\x98\xb3\x3b\xf2\x9f\x5a\xea\x39\x52\xec\x89\x43\x04\xfa\x0e\x5c\xa5\x2c\x6a\x5b\x07\x37\xed\xa9\xcb\xdc\x3b\x0b\xe0\x2f\x50\x87\x0b\xad\x64\x9c\xda\x2a\x6f\x9b\xa7\x58\xaf\x3d\xf3\x18\xd7\xc8\x7f\x39\xd1\x6c\x5b\x84\x47\x2d\x48\xcc\x12\xee\xcc\x42\x63\x73\xd3\x30\xb2\xb9\x36\xf8\x76\x0c\xb8\xc5\xe7\xf3\x2d\x85\x1c\x68\x5f\xa0\x1f\x69\xb8\xb5\x51\x61\x74\xe7\x75\x45\xc5\xd2\xb3\xdb\x2b\xda\x16\xf7\xca\x33\x1d\xd5\x82\x66\x7c\x5a\x7e\x76\x46\x2d\x49\xdb\x6c\x5f\xf8\x9c\xa9\xa0\x01\xab\xd1\xe5\x60\x09\xa2\x04\x13\x80\xde\x66\xe4\xb4\x33\xae\x1c\x0f\xfd\x3d\x8d\x6e\x82\x23\x0f\xdf\xd3\xb8\x43\x70\x20\x10\x05\xdd\x78\x50\x32\xda\x89\xcc\xca\x43\x6c\xa0\xef\xba\xee\x06\xde\x7e\xe4\x28\x2d\x7b\x20\xb4\x5e\x2e\x74\xde\xcc\x48\xfc\x7c\xf9\x2d\xf5\xe6\x0d\x07\x96\x5d\x34\x98\x3e\x90\xf2\x0a\x1a\x17\x98\x22\x5c\x51\x91\x72\xf5\xdb\xf6\xb0\xf2\x17\x0b\xa4\xd2\xac\x5e\x15\x18\xae\x2a\x2d\xa2\x79\x46\xb8\x50\x01\x79\x69\xb7\x39\x6b\xa6\xb4\xba\xf6\x52\xfc\xc8\x0d\xac\x1d\x04\xb8\xcf\x5a\xd4\x96\x7b\xcb\xbf\xf2\x91\x66\x4a\xda\x92\xc9\xf9\x48\x34\x5d\xb7\xde\xc1\xa0\xa4\x5a\x14\xe3\x32\x2d\x61\x91\xc0\xb5\xa3\x74\xd1\x81\xa0\x9f\x13\x4a\x5e\xfc\x4f\x02\x87\xe8\x37\x2f\x3c\xab\x5d\x1a\x46\x59\xb4\x27\xe7\x2a\x42\x3d\xc9\xd2\x8b\xd8\x99\x8c\x4d\x28\x8e\x12\x38\xe5\xac\xd4\xbd\xaf\x0d\xc9\x3c\xfb\x17\x5c\x11\x07\x5e\x1e\xd5\x11\xc2\x39\x19\xca\x0b\x82\x26\xa3\xf2\x52\x5a\x6c\xef\xe2\x0a\x19\xa1\x21\x8e\x10\x9e\x04\xdf\xab\xed\x5d\xd4\x13\xdb\xc1\xbb\x21\x2e\x10\xce\xc8\xd2\x1c\xe3\x60\x32\x90\x7f\x9f\xbd\x44\x71\x49\x26\x41\xcb\xd1\xf7\xc3\x3d\x16\xc7\x62\x7b\x39\xca\xb7\xb7\xc7\xdb\x13\xd4\xd5\x07\x6a\x13\xe0\x09\x2e\x31\x43\x75\x1c\x45\x18\x74\xf9\xbe\xf1\x32\xf5\x4d\x6e\xba\x6d\x6c\x6e\xad\x7d\x0d\xae\x88\x5e\x39\x99\xec\xb7\xe5\x26\xab\x5e\x3e\x18\x54\x89\x47\x2f\x54\x0a\x1a\x17\x68\x6f\x66\xaa\xc8\x50\xaa\xcc\x16\x8a\xbd\x85\x7a\xc7\xd4\xc1\x9f\x6e\x52\x8d\x70\x18\x94\x4e\xa1\xf5\xbb\x60\x69\xcc\x68\xc3\x3c\xcd\x0a\x42\x88\x72\x87\xb1\x82\xaa\x8d\x6a\x18\x81\x99\x24\x22\xce\xf4\x89\xfa\x7e\x34\x43\x6b\x50\x03\xbb\x64\xbd\xde\x52\x37\xc4\x3f\x66\xce\xc9\xb0\x39\x90\xe5\x07\x65\x3c\xcb\x6b\x94\xca\xab\x18\xe1\x9a\x94\xdd\xaa\xbd\xcb\x13\xd0\x4b\xc5\xbb\xf4\x3b\x0c\x61\x80\xfd\x60\xa7\xde\x2d\xcf\x8f\x8d\xd6\x06\x82\xd0\x0e\x2c\xb7\x76\x2b\x02\x77\x46\x1b\x52\xaa\x40\x31\xe3\x8b\xaa\xae\x43\xc2\x7e\x27\x8f\xad\xbd\x2b\xf5\x32\xbd\xa7\x0d\x8b\xf8\x7b\x6f\xdb\xc9\xd1\x33\x8d\xc0\x25\x71\x47\x29\xb1\x73\x54\xfa\x1c\x16\x8c\xaa\x63\x6e\xe2\x82\xc8\x41\x41\x83\x41\x29\x19\x56\xd0\x56\x52\x79\x4e\x77\x10\x8d\x26\xef\x05\x82\x87\xd6\x5b\x80\x6f\x05\xee\x83\x55\x97\x3c\x9b\x7c\x02\x6f\x62\xc9\x89\xeb\x0b\x41\x51\x2d\x6f\x15\xc7\xd3\x14\xb0\xc9\x8c\x21\x1b\x0d\x3e\x61\x8a\xc7\x81\x70\xdb\xf0\x16\xac\x34\x20\x60\xc2\x03\xc5\x15\x9a\xa3\x46\x28\x55\x5d\xc4\x85\x1b\x40\x3d\xb2\x9e\x77\x2b\xc5\x05\x69\xcd\xaa\xd8\x13\x5e\x8c\xdb\x54\x74\x99\xf1\x38\x63\x21\xbe\x5e\xf3\xc0\x13\x5a\x5b\xc9\x70\x72\x4f\xe5\x49\x36\x62\x63\xe4\x62\x54\x35\xb5\x74\x37\x14\xdf\xd3\x38\x9a\x95\x65\x84\xa3\x2c\x42\xee\x69\x17\x7e\xaf\x6a\xfb\x7a\x55\x9b\x77\xcb\xe2\x53\x59\x78\x43\x8f\x56\xb5\x97\xac\xf3\xeb\x2e\xc2\xd7\xaa\x34\x59\xb8\xff\x90\x5c\x67\x3c\x52\x47\xed\x67\x4a\x56\x9e\x17\x82\xb6\x25\x06\x32\xad\xe4\xdd\x7e\x37\xc1\x90\x90\x3a\x7f\xdf\xfe\x17\x97\xbc\xa7\xa9\xba\xda\x07\x4a\xa1\xed\xce\x34\xd4\x0a\x9c\xa8\x5c\xe3\x0a\x75\x36\x65\x80\x0e\xb7\x17\xc3\xae\x2d\x70\x61\xa5\x5e\x5b\x84\xc4\xa5\x5a\xb7\x1d\xf6\x59\x74\xbd\x56\xcb\xb8\xf3\x62\x01\x07\xdb\xfb\xc6\xdd\xc2\x54\x51\x2a\xcf\xc5\xb7\x6a\x31\xa6\x5d\x69\x95\x45\x6a\xe1\x33\x57\x5f\x9a\xc4\x91\xf8\xcb\x06\x97\x84\x69\x4b\xd7\x8c\xc0\xc2\x63\x9e\x8f\x48\x86\x9c\xbd\x76\x86\x4b\xed\x23\xb8\x55\x78\x11\xee\x97\x36\xc2\xfd\xaf\xa6\x11\xfd\x8a\x8a\xfe\x2c\x63\x39\x9d\xa6\x7d\xd5\x7f\xd9\xe3\x45\x26\xe6\xfd\xe8\x9b\x15\xd3\xa1\xde\x93\x08\xd5\x51\x7f\x52\x2e\xf3\x29\x20\x92\x5e\x53\x15\x11\x3f\xf9\x15\xd5\xc6\x30\x07\x4c\x92\x51\xfc\x99\xea\x4d\x0b\x46\x1e\x08\x0c\xda\xdc\xaa\xdb\xf4\x6d\x77\xc3\x97\x0c\xa0\xbb\x36\xe7\xcc\xd2\xcf\x54\x7f\x77\xab\xec\x14\x22\x22\x2a\x4e\xfd\x82\x5a\x38\xa2\x06\xd3\x4e\xd1\x0a\x00\x86\x62\x1b\x6b\xa2\xcc\x33\xc1\x24\x9f\x6e\xa3\x52\xd0\x6c\x7a\x5a\xe4\xf7\xee\xcd\x3c\xab\x0e\xe0\xb4\x70\xaf\x6e\xa8\x10\x2e\x10\x8b\x7a\x57\xf9\xef\x74\xe8\x45\x3a\xa2\x5e\x7c\xfd\x6e\x25\x82\x58\xaf\x9d\xc7\x4f\xfb\x02\x64\xfc\xa5\xbd\x56\x0c\x7b\x77\x36\x30\xf5\x42\x79\x74\x75\x85\xa2\x46\x41\x5b\xb9\xbb\xd1\x16\x84\xf7\x82\x6f\xa0\x75\x59\xaf\x4f\x69\xd8\x15\x00\x58\xac\x6b\xea\x45\xa8\xd7\x20\x13\x66\x39\x83\x6d\x59\xf3\xce\xc2\x66\xb1\x42\x71\x0a\xdf\xe3\x2d\xe7\x87\x69\x3b\xa3\x20\x9a\xac\x9d\x53\x5a\xd6\x84\x07\x26\xeb\x71\xd0\x50\xe6\xc9\x66\x4b\xfb\x51\x37\xb7\xcb\x56\xb4\x4c\x26\x59\x9e\xc7\x1a\x13\xa9\xcb\xdc\xdc\x93\x91\x33\x97\x18\xc9\x13\xbf\xae\x1b\x3d\xd5\x77\x46\x5f\x8d\xab\x20\x51\xac\x61\x52\xe8\x1e\x48\x7d\xf7\x40\xc9\xee\x8e\x8a\x31\xb6\x38\xfd\xe1\x8d\x50\xa8\x38\x52\x3a\x50\x5f\xb8\x3a\x51\xe0\xd1\xa8\xc6\x42\xb5\x95\x1a\x85\x93\x3c\xc9\x03\x7e\x50\xe1\x59\xb5\xf4\x9f\x59\x53\x31\xc5\x71\x29\xb9\x45\x16\x08\x31\x78\x23\xb4\x9e\x3e\x2f\x03\x19\x46\x86\x73\x84\x0a\xc2\x7c\x97\x1c\xbb\xc6\x56\xba\x95\xe9\x12\x87\xfd\x4c\x27\x0a\x44\x5d\x4b\x28\x0b\x6f\x6f\xaf\x0a\xb2\x74\xbd\xaa\xff\x1f\xee\xde\xb5\xbd\x6d\xe4\xca\x13\x7f\xcf\x4f\x21\x62\xfc\x30\xa8\x61\x19\xa6\xb2\xb3\xb3\xbb\x50\x97\xb5\x6a\x5b\x4e\x9c\xb4\x2f\xb1\xdc\xc9\xf4\xb2\x39\x34\x44\x16\xc5\x8a\x41\x80\x5d\x28\x4a\x56\x48\x7c\xf7\xff\x53\xa7\xee\x00\x48\x51\x6e\x77\x66\x9e\x7f\xbf\x68\x8b\x40\xdd\x50\x97\x53\xe7\xfa\x3b\xde\x52\xcf\x74\xff\x9e\x42\x33\xc3\x7f\x8e\xa9\xe6\x9d\x11\x06\x3b\xbe\xc5\x74\x80\xdd\x06\x8f\x7c\xa8\x05\x8e\xbb\x4c\xf8\x08\xff\x14\x33\x15\x03\x11\x28\x1e\x1d\x63\x90\x21\xdc\x64\x2b\x8e\x65\x1f\x70\xa1\xb3\x7f\x99\x73\x11\x92\x18\x73\x9c\x80\x5a\x7f\xd0\x0f\x15\x3e\x34\x18\xc7\xfa\xfe\xf6\x0e\xf6\xc0\x2c\x2f\xaf\xaf\x29\xbf\xb2\x8d\xf7\x0e\xef\x19\xf3\xd0\xab\x60\x90\x83\x82\x4d\xd3\x6b\x9b\xf0\xcc\x09\xb1\x01\xd6\xc1\x72\x9a\x4f\x08\x1e\x7a\xf4\xa2\xd3\x68\xfa\x76\x32\x18\x98\x18\x32\xc0\x00\x1c\x0c\x94\xfb\x0e\xec\x02\x6d\xe0\xab\x8d\x54\xd0\x1f\x29\x93\xdb\xab\x18\x61\x0d\xb9\x37\xb5\xb3\x2a\x37\xef\x4f\x71\x09\x59\xba\x9d\xb9\xaa\xb5\xeb\xf3\xf6\xae\xcf\x10\xde\x36\xb6\xe6\x46\xe3\xfb\xdb\x0f\xde\xb4\xf7\x5d\x0e\xfb\x6e\x03\xde\x37\x08\x97\xc7\x6c\xb2\x1c\x85\xb6\x42\x6b\x05\xee\x5e\x78\xe1\xa3\x85\x7b\xd7\xf7\x8b\xac\x90\xd7\xb0\xbc\xbc\xe5\x06\x7a\x5a\x16\xf9\xfd\x89\xa1\x4f\xf2\xe2\x16\x75\x74\x52\x16\xfa\x46\x4f\x4f\x9e\x6c\x15\xef\x5b\x54\x6b\xed\xca\x59\x7f\x42\x75\x6b\xe7\x18\xa9\xc1\xc8\x9a\x9b\x3c\x6f\xc4\x86\x78\xe7\x1b\x19\x8f\xf3\x02\x74\x18\xc1\xae\xf2\x23\xab\xfc\x8d\x6b\x8e\xb4\x7c\x5f\xeb\x95\xf3\xf9\x1d\x5c\x3a\x51\xb5\x08\xa8\x90\x00\x00\x3e\xd7\xbf\x90\x4b\xa6\x1a\x4d\x2b\xbd\x56\xca\xa9\xc0\xec\x11\x46\x2a\xaf\x3b\x88\x5e\xd1\x13\xaf\xcb\x9d\xda\xe9\x2f\x07\x83\x4c\x85\x97\xc4\x45\x40\x3d\x40\xd4\xfc\x41\x33\xa1\xf2\x93\x59\x4b\xd5\x16\x9e\x34\xa3\x64\xec\x13\xc2\x1b\xe3\x57\xc1\xf4\xe1\x16\x11\x36\x7d\x31\x6f\xf4\x6b\x12\xa9\x62\x75\x7d\x36\x7a\x95\x17\x71\xcb\x17\xef\x8a\x6a\x98\xae\x8f\x8e\xe7\xb9\x82\x54\x42\xff\x3f\xbc\x4a\xd4\x92\xe3\x19\x69\x72\x85\xcd\x9b\xa3\x65\xfe\xca\xf0\xec\xbf\xe9\x25\x01\x64\xa4\x30\xf9\x1f\xdf\xb8\x55\x7c\xa5\x09\xe7\xd6\xdc\x16\x16\x19\xac\x52\x6e\xe0\x96\x9b\xa1\x3e\xd3\xaa\xb8\x51\x7b\x34\x3d\xcf\x54\x5d\xcb\xe7\x79\x75\xe1\x06\x93\xd3\xaa\x10\xbe\x57\x75\x56\x1a\x24\x4b\x71\x44\xcd\x21\x8d\xba\xf4\xb4\x42\x69\xba\x77\xbb\x6d\x9d\xc6\xfa\x87\xc6\x54\x53\xc9\xbe\xf4\x42\x77\x8d\x59\xbd\x91\xb7\xe9\x89\xd3\xd4\x00\x3b\x6f\x8a\x78\x8a\x78\xea\x89\x57\xef\x69\xf8\x55\xff\x11\x53\x74\xae\x83\x83\xaf\xc0\x14\x8f\xdf\x50\x14\xd3\xf1\x68\x02\x69\x58\x31\x05\xd7\x79\x57\x42\x07\x3d\xcb\xef\xbc\xa0\xe4\x3d\x4d\xae\x59\x31\x57\x68\x5d\xbd\x0e\x4f\xd8\x0b\x73\x20\x5f\x1c\x5e\xca\xe6\x17\xba\x57\x6a\x7e\xcb\x82\xfe\x2d\xeb\x2a\x68\x5e\x1c\x5c\x06\x6d\x24\x6c\x2e\x81\xc3\x2b\xb0\x2b\xd1\xb3\x0b\x61\xf6\xe0\xe7\xa3\xa5\xa7\x2c\x97\xf7\x26\xa1\x4d\x01\xa0\x93\xfb\xff\x03\x98\x02\xec\x62\x7b\xda\xfe\x5f\x43\x6e\xba\xd9\x48\xa5\x10\x73\x43\x44\x35\xd2\xa9\xff\x5a\xb4\xa9\x29\x11\xec\xa5\x4f\xbb\x5d\xdc\xa6\x2a\x7f\x09\xfb\xf1\xb9\xd1\xc7\x50\x15\x2d\xe7\x36\x08\x8a\x61\x1e\xdb\x81\xd9\x5e\x8f\x80\x2d\x61\x77\x95\x42\xc8\xa1\x82\x7c\xa0\x6e\x07\xd9\x87\x7f\xf7\x0f\xc6\x07\xfa\xd5\xbc\xc6\xef\x24\xaf\xf1\xbb\x87\x79\x0d\xe7\x4b\x47\x1b\x9f\xb1\xd4\x4a\x1e\x08\x7e\x35\xc1\xe6\xea\x90\xbd\xdc\x63\x14\x79\xeb\xa5\x60\xd7\x21\xb9\xc0\xf4\xba\x78\x3a\xcf\xb6\xee\xa9\x1d\x2b\xf6\x0f\x73\xe9\xf5\xd5\x2f\x2d\x3d\x9b\x12\x50\xcf\x29\x3e\xc3\x18\xfb\x48\x56\x88\x50\x67\xdb\x36\xc6\xb9\xa8\xbb\xbb\x36\xc6\x4e\x5f\x91\x64\xe3\xdf\xfa\xd4\xf7\x09\x68\xf5\xcf\x74\xff\xda\x95\xaa\x7b\x04\xc6\xde\xd3\x67\x0e\x19\xcf\x25\x66\xf6\xad\x3c\x30\x7b\xbb\x5d\x97\xea\x19\xc4\xf2\x67\x3f\x5f\x3d\x4b\x04\xad\x40\xfb\xac\x73\x27\x77\xda\x3b\xa7\xdc\x64\xe6\xb4\xe9\x35\x67\x25\xa7\x3f\xb0\xeb\xd7\xc5\x9c\x7e\x21\x23\x40\x30\x54\x11\x07\xf7\xdf\xdf\x9b\x6c\x86\xad\x64\x6a\xba\x15\xcc\x5d\x22\x2d\x0d\xa9\x03\xc2\xb2\x5c\xd9\x71\x31\x81\x54\x20\x01\xfa\xc9\xb8\x98\x78\xc9\xea\x7c\x7f\xd2\xb0\x61\x33\xb9\x96\xcf\x69\x0e\x69\xb7\x8b\x39\xe8\xa0\xdb\x1f\x31\x1c\xba\x14\x62\xba\x35\xed\xde\x54\xe0\x91\x4e\xda\x4f\xb1\x86\xfb\x48\x45\x8d\x5c\xfe\xbc\x17\xaa\x19\xd9\x93\x87\xed\x17\x0c\xb8\x3f\x42\xf5\x9c\x7e\x68\x26\xdc\xb3\x99\xe5\x3a\xc6\xda\xe3\x36\xcf\x99\x37\x26\x63\x6a\xe0\xfb\x46\x2b\x54\x8e\x39\x3f\x00\xe4\x07\xb5\xfb\x5f\xa9\x43\xf6\x03\xed\xf9\x11\x21\xaf\x28\x7e\x45\x93\xae\x4f\x89\x40\x7f\x1e\x41\x26\x61\x20\x11\x8a\x9e\xfe\x83\xb6\x80\x67\x93\x65\x56\xbd\x73\x0a\x4f\xfc\x23\xa8\xd6\xbe\xa7\x04\x38\xf7\x74\x84\xa7\x9d\xf1\x5d\x69\xff\x14\x4b\x16\xa0\xf3\x65\x13\x1d\xac\xb3\x50\x8d\xab\xbd\xf5\x2d\xe8\x60\x45\xc5\x70\x88\x0f\xb4\x22\xaf\x41\xfc\x47\x18\xf3\x5f\x29\x19\x4f\x7a\x41\xc0\xce\x5f\xd5\xec\xfd\x42\xbb\xb0\x3b\x1d\xa9\xfa\x1b\x55\x68\x60\xfb\x82\xd9\xac\x1f\x17\xc5\xa2\x15\xc7\xd5\x0e\xff\x55\xee\x55\x85\xef\x5e\x65\x52\xe5\x8c\x4b\xd0\x2a\xc6\x94\x64\xc9\x6c\x99\xf1\x17\xe5\x9c\x5e\x88\x78\x84\xd0\x73\xf2\xef\xff\x73\x30\xa0\xdf\x91\xff\x33\x32\xee\x94\x7f\x96\x3b\x22\x43\xbd\x0a\xae\x38\x6e\x42\xbb\x50\x5c\x49\x41\xc9\xbb\x1a\x9e\xa8\x0c\x2b\x81\x9d\xd5\x73\x62\xb3\x07\x36\x23\xc2\xe9\x8a\x5d\xa0\xe7\x09\x83\x00\xbb\x6c\x42\x0a\x1c\x76\x54\x48\xa9\xbb\x90\x87\xfb\x1f\x54\xf1\xeb\x05\xae\x6c\x74\x6e\x31\xae\xe0\x6b\xc4\xb8\x9c\x90\x0a\xe7\x83\x41\xee\xd2\x8a\x10\xf2\x13\xf5\x94\x75\x61\x44\x5d\x8e\x50\xd8\x51\x8e\xbd\x91\x39\x1f\x1f\x68\xd2\x8b\x81\x83\x55\x52\x51\x26\x39\x42\x72\x1d\x58\xb1\xa1\x3d\x06\xac\x4a\x8e\xb0\xfc\xf0\x1c\x33\x54\xd7\xe6\x9b\x49\x59\xa3\x78\x4c\xed\xb8\x62\x34\xc1\x2a\x7e\x06\x50\x58\xed\x94\xfd\x81\x5a\x76\x7d\xdf\x2e\x90\x9f\x4a\x07\x83\x58\xee\x16\xbc\x3f\xee\xf1\x14\x61\xba\xdb\xfd\x31\xa0\xa1\x7f\xa5\xb8\x03\xaf\xeb\x09\x8d\x21\x10\xbc\x07\xfb\xd7\x5b\xcf\x9f\xdc\x60\xc2\x79\x0b\x78\x76\x97\x4e\x7c\xb7\x8b\x3b\xa2\x18\xc1\xb4\xf0\xa3\x9a\x33\xf9\x79\xd8\x87\xc4\x6a\x46\x38\xa2\x10\xae\xaa\x20\xb4\x37\x2f\xc1\xa9\xb1\xe8\x86\xf6\x8a\x0b\x84\x08\x21\x86\x55\x76\x04\x65\xb7\x2b\x08\x69\x91\x19\xe7\x0c\x77\x78\x14\x5b\x41\x3e\xc5\xd5\xe6\x5a\x5d\x69\xe5\xe2\x44\xb2\x2e\xe8\x93\x76\x8a\xd2\x89\x11\x9d\x83\xb6\x43\x56\xdb\xed\xa2\x58\xdb\x26\x51\x54\xab\x99\x6a\xec\x66\xed\x28\x13\x78\x60\xff\xd9\x70\x55\xfc\xde\xf8\x35\x8c\x85\x41\x5a\x35\x6e\x1a\xbc\x43\xcf\xcf\x43\x33\xab\xd5\xe1\x0f\x06\xdc\xdf\xb1\x83\x01\xaf\x67\x99\x98\x2d\xe3\x42\xc1\xf4\xb7\x22\x0c\x7f\x51\x34\xea\x2f\x14\xff\x89\x12\x25\x93\x3a\xe2\x3c\x2b\x8b\x59\x26\xf0\x56\x4b\xa9\xe9\x7f\xd0\x5a\x95\x71\xc4\xeb\xff\xb5\xec\x51\x1c\x20\x87\x0b\x0f\x31\x56\x8c\x29\x04\x9b\x12\x76\xfe\x27\x7d\x90\x19\x96\x0f\x51\x0a\xff\xc7\x5e\x84\x83\x66\x61\xad\xf9\x2f\x80\x2a\x12\x3d\xe3\x50\xac\x25\xbc\xc0\x77\xae\x0c\x8b\x65\x84\x8d\xe9\x04\x57\xa4\x33\x6e\xbd\xa2\x71\x86\xd2\x2c\x68\xa0\xda\xed\xa0\xbf\x2a\x6c\x28\x27\x55\x67\x7f\x79\x58\x6c\xa3\x34\x0d\x3c\xb9\xe3\xd9\x1a\xc5\x25\x86\xf4\xdf\x85\xd1\x6b\xe1\x25\xb1\x3a\x2e\xe5\xec\x68\xb7\xe2\xf2\xdc\xfe\x39\x3f\xf7\x9a\x98\xe3\x25\x4a\x97\xe9\x1c\xcf\xfa\x84\x94\xbb\xdd\x46\x16\x50\xd3\xbc\x90\x0d\x07\xea\xc8\xdd\x6e\x3c\xc1\x6b\x62\x04\xd5\x24\x49\x16\x18\x2c\x25\x33\xb0\x94\x6c\x6a\x87\x49\xb1\xf6\x34\x00\x85\xfb\x1b\xaf\x3d\x61\xbf\x70\x7f\xcb\xe7\x20\xf3\x15\xea\x5f\xbc\xf6\xa5\xe7\xc2\xf7\x8d\x62\x34\x5e\xe3\x2b\xea\x21\x0e\x3a\x77\xb2\x70\x61\x9d\x4d\x45\xee\x80\xe6\xfa\xba\xcd\xd3\xb1\x78\xa5\x3f\x47\x02\x97\x28\xf5\xba\xe1\xba\x1b\x1b\x21\x24\xf7\x40\xa9\x16\x66\x95\x7d\xa6\xda\xa8\xcf\x90\xde\xdc\x71\xf3\x8d\xb0\x70\x02\x27\xa5\x6b\xb6\xe8\x68\x16\x28\x1c\x6b\x03\x02\x42\x6f\xb9\x9f\xab\x84\x21\x93\x21\xbf\x71\x57\x6f\xc8\xe8\x6c\xf3\x9d\x4d\x0c\xbc\x31\x77\xf5\x8c\x54\xe3\xcd\x04\xcf\x89\x18\xcf\x26\x5d\xc0\x0b\xf3\xf3\x38\x23\xfd\x11\x2e\xc7\xb3\x09\x11\x22\x9e\xe1\x39\x66\x78\x5b\x23\x94\xc2\xa3\xb9\x59\x81\x0c\x02\x6d\xa6\x20\x63\x13\x9e\x7c\x78\xf7\xee\x23\xc2\xde\x87\x31\x11\xa2\xc7\xb9\x7b\xa3\x22\xff\x8f\xc6\x91\x9a\x25\x5a\x64\x4e\x8d\xc8\x68\x15\xe9\x95\xc4\x39\x14\x5a\x51\x7e\xd3\xf9\x7a\xd3\xfc\xe0\x19\x19\x9d\xcd\xbe\x33\x8e\x51\x67\x33\xf3\xc1\x73\xb2\x19\xcf\x26\x78\x49\xc4\x78\x1e\x62\x7c\x2f\x61\xbb\x80\x8b\x72\x69\x79\xd8\x39\x42\x5b\x0d\x46\x3b\x57\xbc\xe5\x82\xd0\x96\x13\xdb\x3c\xf4\xad\x5d\xa8\xae\xd6\xa4\x18\xcf\x27\x84\xc9\x8e\x3a\x66\x76\x3d\x18\x94\x22\x66\x78\x8e\xd7\xa0\xff\x05\x66\x80\xcb\x1a\x0b\x9c\x99\x2e\xf1\xc2\xa9\x5b\x65\x51\xad\xf1\x59\x75\xd1\x1a\x90\xd8\x56\xaa\xef\x5b\x52\xd1\x78\x19\xaa\x38\x6f\xd1\x16\x9a\xa7\x42\x1e\x78\x7c\x8b\x39\xc2\x30\x42\x6d\x1a\x36\x7c\x46\x5d\x57\x83\x41\xe5\x4d\xc1\x73\x32\xda\xed\xf6\x2d\x10\x01\xbc\xa1\xf6\xca\xc8\xe7\xe7\x4b\xc2\x55\x67\x05\x4a\x15\x93\xe3\x1a\x7d\x7a\x7a\xbe\x24\x85\x7d\xbd\x1a\x0c\xe2\xa5\xdc\x61\xf0\x1b\x14\xdc\x30\xb8\x25\xe6\x6e\x8c\x3e\x37\x58\x7a\xe7\xdc\x9e\x06\x6e\x81\x46\x0c\x7e\x93\x07\x8b\xd2\x8c\x65\xb8\xcd\xf8\xd6\x14\xaf\xd2\x0c\x5b\x48\xd6\xb4\xaa\x49\x19\xc6\xec\x58\xde\x38\x27\xec\x7c\x9a\xde\xe9\x13\x95\x41\xb8\x62\x70\xae\xf2\x98\x62\xfd\x58\x1e\x2d\x05\x89\x81\x0d\xec\x88\xdf\xa8\x63\xb8\x67\x84\x9d\x2f\xd2\x35\x9e\x93\xd1\xd9\xdc\x1d\xd3\xf9\x70\x88\x66\x31\xc5\xd5\x78\x3e\x71\xd8\x1a\xce\x1f\x53\xa8\x30\x03\x0f\xb0\xb9\x83\xff\xc7\x59\xe7\xd3\xaa\xa1\xdc\xca\xa5\xe0\xbc\x51\xa2\x45\x70\x8a\x71\xdb\xaf\x51\xa1\x3f\x06\x91\x0d\x30\x1b\xc2\x9f\x07\xc9\xd7\x12\x01\xd4\x45\x18\x56\x56\x9e\x30\x88\xf3\x56\xf0\xe9\x3e\x73\xcb\x13\x8b\xc5\x9e\xc3\x49\xdb\xae\xed\x66\x4a\x67\x58\x81\xa0\xa7\xf3\x9a\xe4\xce\x0e\x36\x3b\x67\x22\xe6\x78\xe6\x8d\x29\x75\x37\xdc\x60\x10\xd3\x78\x1e\x8c\xd8\xf1\x86\x79\x32\xbd\x63\x62\x59\x6e\x84\xdc\x96\xe6\x6f\x1b\x08\x4b\x75\xb8\xac\x20\x99\x07\x7d\x71\xa6\xf0\x9c\x07\x83\xcc\x17\x65\xa5\x9c\xad\x38\x79\x39\x98\xdc\xeb\xae\x96\x72\x04\xfc\x4d\x01\xca\xab\xe7\xd6\x5b\x52\xa7\xbc\x45\x9d\x96\x24\x97\xd4\x69\x41\xb2\xf1\x52\x5e\xb2\xe5\x78\x09\x44\x6a\x9e\x5c\xfc\xf0\xfa\xe2\x6a\xfa\xe6\xf2\xe3\x1f\xdf\xbd\x84\x6d\x73\x66\x3f\x65\x31\x18\xe4\x22\x5e\x20\x1b\x3f\xf2\x17\xc9\x2a\x2d\x80\xc8\xf6\xd6\x64\x05\x30\x58\x78\x41\x56\x4a\xd1\x57\xbb\x8a\xe7\x5d\xfe\x19\x0b\xa0\x4b\x14\x2f\xf1\x02\xf7\x47\x08\x83\x4b\xa3\xfc\x01\x1f\xbf\xb1\xd3\xb1\x44\xb8\xcf\x90\x37\xe1\xeb\xc1\x60\xa1\xca\xae\xe5\xb7\x7b\xc8\x13\xdd\x8e\x98\x98\xd6\xe1\x77\x0d\x06\xf1\x5f\xf6\x42\x07\x42\xf2\x6f\x05\xf2\x2a\xb9\x4e\x9c\x11\x3e\x2e\x25\xd7\x05\xc2\x66\x53\x56\xc8\x3c\xe3\x57\x65\xd1\x7e\x25\x37\xce\x94\x33\x6a\x89\x90\xbc\xd9\x18\x36\x3e\xef\x28\x8d\x8d\x13\x2b\xae\x08\x1d\x97\x13\x84\xf0\x56\x4e\x5d\x9a\x69\x67\xcb\xaa\xd6\xfa\xda\x4a\xe0\x5c\xe0\x8d\xc0\x33\x81\xe7\xa2\xe9\x3b\xae\x78\xfa\xa5\x68\xa6\x78\x43\xdb\xb9\x70\xca\x66\x9b\xb3\xa5\x8d\xd6\x15\xf2\x2d\xd4\xcb\xf8\xef\x5f\x72\x14\x75\x09\x5b\x1e\x38\x32\x66\x9e\x48\xe3\xe9\x3e\xdc\xcd\xa5\x10\x0d\x5c\x84\xa5\x2c\xe8\x09\xb3\xa0\x2f\xde\xed\xf6\x79\xab\x16\x06\xc1\xf5\xff\xc5\x0c\xd5\x5e\xd0\x05\x44\x27\xc8\xaf\xd3\x79\x71\x16\x22\xd6\xe6\x19\x95\xb7\xee\x85\x9b\x97\xd0\x55\x49\x9f\x42\x1b\x73\x10\xa4\x4d\x53\xe6\x12\x29\x43\x8e\x5a\xd9\x9c\xa9\xb1\x51\x9a\x3a\x2b\x9b\x62\xe1\xd6\xa0\x24\x85\xfe\xe9\xb8\x90\xa4\x2e\x80\x52\x54\xbe\x8e\x8d\x1c\x0d\xe4\xf9\x96\x7a\xab\xb4\xdb\x15\xd6\xa7\x06\xe1\xa2\x56\xd9\xdf\xf4\xd8\xd8\x22\x86\x05\x33\x56\x0d\x6b\xe5\x74\xf5\xad\xa6\x98\xde\x9d\x2c\x45\xec\x7f\xbd\x57\xa8\xd7\xdc\x1b\x7e\x39\x3d\xa9\x63\x31\x51\x54\xc7\x7b\x68\xf2\x33\x98\x22\x8e\x13\xf7\x1f\x7b\x7f\x1b\xde\x14\x56\x48\x9b\x6e\x6a\x05\x18\x08\x4e\xf3\xa7\x21\x98\xd7\x58\x16\x98\xc8\x4b\x08\xca\xbc\xcf\xb8\x60\x59\xee\xa9\x73\xbd\x52\xa8\x9e\x53\x41\x67\x42\x6f\xe7\x2e\x87\x46\x3d\xed\xd4\x61\x27\x4a\x52\x27\xb4\x0b\x3f\x6a\xc4\x83\x98\xeb\xc7\xe6\x96\x01\x27\xd5\x46\x56\x16\x68\xa2\x50\xa7\x0c\x61\xe1\xe1\xba\x69\xef\x34\x26\xa9\x88\x4a\xa8\xc1\x16\xb1\x17\x98\x50\x95\x2b\x1a\x0b\xf2\xdc\xa0\xc0\x9a\xa9\xeb\x9f\xd6\xda\xb4\x81\x7a\x7b\xf6\x52\xc3\xd7\x13\x62\x41\xed\x1d\xa7\x2c\x4b\x7a\x67\x07\xee\x5a\x7a\x0f\xe8\xe9\xea\x39\x1b\x98\x39\x06\x14\x8b\x1a\x8e\x7a\x2b\x36\x46\xcd\x85\x99\x89\xc3\x73\x12\xce\x88\xbf\xcd\x5c\xb0\x64\xc0\x3c\xfb\x45\xb4\x92\x8f\xf9\x4a\x3e\xb8\xa9\x63\x26\x29\xa4\xd2\x60\x99\x19\x1d\x0c\xcc\x5f\xf6\x1e\xed\x98\xd0\x13\xae\xd5\x16\xb5\x53\x56\x19\x0f\x74\xa3\xda\x50\xe7\x17\x45\x1e\xb3\x03\x5b\xd4\x80\xac\x0e\x06\xd4\xe6\xf9\x1f\x61\xeb\xdc\x28\xcf\xdb\xf3\x11\xda\xaa\x99\x31\xf0\x8a\xcd\x14\x00\x3e\x28\x3e\x1d\x17\x93\x9e\xde\x72\x0c\x9d\xf3\x71\x31\x21\x2c\x85\x7f\xc2\x23\xca\x2c\x7a\xe6\x09\xaf\xd9\x22\x36\x40\x47\x4b\x81\x97\xbe\x9a\x59\x78\xc8\x5f\x8d\x5b\x5b\x09\x05\xad\xeb\x22\x17\x84\x92\xe7\x6b\xb3\xed\x71\x25\x08\xdc\x20\x9d\xf9\xcd\xdc\x05\x48\x28\x5e\x7b\xd7\x89\xcf\x19\xaf\x84\x23\x48\xfd\xff\x90\x47\xc9\xcc\xdb\x78\x34\xc1\x9c\x88\x73\x91\x30\xe3\x4c\xe5\xd2\x6a\x16\xf0\x42\x91\x74\xf3\xd5\xdd\x30\xda\xb7\x42\x61\xb1\x6c\xfd\x56\xf8\x6e\x07\x76\xce\x02\xd5\x13\xe4\x87\x1f\x31\x84\x8d\x1d\x48\xd6\xf4\x23\x30\x54\x43\x10\x65\x6f\x1c\x2e\x05\xe5\x69\x89\xb5\x37\x4d\x56\x7b\x3e\x15\x74\xfe\x32\x03\x34\x43\xcc\xce\x59\xc7\x07\x78\x9a\xee\xdc\x2a\x16\xcb\x40\x99\x18\x37\xe3\xd8\x3b\x1d\xf1\xe9\xc3\x8e\xf8\xd4\x78\xd2\x79\x3a\xb6\x8d\x5c\xa5\xcc\xa8\xdf\x3a\x40\x32\xe0\x8d\xc6\xc9\x98\x91\x06\x6e\x57\x33\xf0\x43\xc7\x19\xd0\xb9\x01\xf5\xca\xb5\x7a\xa5\x11\xc4\xb6\x69\x42\xe6\xb6\x02\xf3\x0a\xd0\x03\xdf\x88\x58\xb2\xa0\x08\xcf\xea\x10\xb2\x6b\x23\x70\x8b\x0d\x6b\x96\xe8\xc4\x1f\xa6\x77\x27\xca\x2e\x87\xf0\x21\x80\xb0\x99\xe1\x88\x6e\x3a\x38\x22\x6b\x5a\x22\x9e\x8f\x2f\x11\x6d\xab\x7c\xc3\xd4\x72\x43\x85\x76\xac\x41\xbe\x35\xda\x36\xe1\x79\xdd\xd4\x7b\x41\xff\x81\x19\x39\x0e\xf4\xbf\x13\xdb\xff\x1b\x27\x0b\xa5\x16\xc6\xb1\x03\xaa\x0f\x08\x55\x23\x2f\x07\x05\xad\xba\xd5\x80\x29\x54\xbc\x66\x03\x72\x5c\xb2\x32\x11\x58\x96\x27\x50\xee\xdd\xdf\xde\x5e\x7e\x20\x34\xf9\xe1\xf2\x0f\x17\x2f\x7e\x9a\xaa\x9f\x9e\x87\xb8\xbe\xe4\x3a\x50\x5c\xfc\x1a\x00\xdf\x12\x34\xc1\xb5\x56\x3d\x4c\xe9\xe8\x0a\xab\x52\xfb\xd3\xb6\xf2\x72\x23\x58\x71\x73\xdc\x9a\x98\xc2\x39\xbb\x7e\x46\xbf\x88\x67\x2e\x51\xf0\x83\xc5\xf3\x72\x96\xc9\xe9\x79\x96\xad\xd9\xf1\x85\x8b\xb2\xa0\x53\xf3\xeb\xf8\x6a\xcb\xac\x5a\x7e\x4d\x35\x56\x89\x92\xdf\x7f\x45\xcd\x6c\x23\xca\xe3\xab\x55\xf7\x95\xa0\xab\x67\x37\xb4\xa0\x3c\x13\x74\xfa\x88\x69\xd4\x55\x5d\x8d\xe9\xa2\x3c\xba\xd6\xbc\xca\x8f\x2d\x2a\x1f\x1d\x3f\x1c\x28\x7d\x6c\x61\xc8\x70\x3c\x85\xdc\xe8\x0f\xef\xb2\x8a\xf2\x5b\x36\xa3\xf6\xe1\xe3\x2a\x3c\x62\x42\x01\x87\xf2\xa8\xc4\x1b\x78\x81\xd7\x78\xf5\x9b\xe5\x29\xfe\xc1\xee\xa2\xa3\x60\x26\xb9\xb1\xc3\x1f\x84\xae\x7c\x5b\x16\xf4\x91\x0d\x17\x47\x35\xfc\xc7\xac\x5a\x3e\xb2\x61\x76\x5c\xc3\xea\x2c\x3e\xb2\xed\xf2\xa8\xb6\x2f\x36\xa2\x7c\x64\xc3\xd9\x51\x0d\x9b\x13\xfd\xc2\x3b\xd0\x47\x82\x85\x7e\x5d\xf3\xaf\x32\x79\xb1\xdf\x3f\x02\xe7\x74\x4f\x0b\x07\xfb\x75\xd4\xe6\x55\x79\xec\x17\xe5\x47\x7d\xd1\x07\x38\xa4\x2f\xaf\x7e\x38\xb2\xd5\xcd\x23\x5a\x3d\xb2\xc9\xd9\xf1\x4d\x1e\xd9\xe2\xfc\xa8\x16\xff\x22\xc9\xe0\x7b\x4d\x05\x8f\x6a\x77\x79\xf4\x48\x59\x71\x73\xa5\xe8\xe0\x91\x4d\x2f\x1e\x31\xaf\x8f\x6b\x79\x7d\x54\xcb\xdf\x6f\x66\x9f\x75\x52\xa0\x23\xdb\x5d\x79\xed\x3e\xc8\xdc\x74\xf1\x2b\x0f\xa7\x9c\xf2\x2e\x4b\x57\x11\xda\xf2\xae\x5f\x10\x9b\x1f\xbc\x65\x14\x33\xfb\x9b\xa4\x0e\xd7\xd3\x60\x14\x56\xf6\x3e\x48\xb4\xa2\x6c\xdb\x6d\x45\x4a\xc7\xd1\x2f\xde\x0e\x9c\x60\xef\x17\x84\xff\xe3\xe9\x2f\xeb\x97\x34\xa7\x37\x99\xa0\xf6\x81\xc2\xd6\x9a\xfb\x00\x1d\x1e\xca\x02\x20\x1a\x60\x66\xd0\xda\x78\xca\x35\xd6\xd0\x08\x17\xe0\x9f\x4b\x13\xaf\x51\x14\x33\x25\x47\xdd\x50\x81\x20\x9c\x15\xd5\x58\xf0\xac\xa8\x98\x9c\xa1\x8f\x25\x6c\x37\x4f\x7f\xa3\x59\x64\x28\x0e\x82\x5d\xa4\xf2\x91\x45\x56\xd6\xe4\x49\xab\xfe\x6e\x17\x3e\x44\x3a\x3b\x07\x38\xe2\x16\xc9\x9a\xd3\x05\xfb\x02\x25\xa5\x88\x7f\xc1\x6f\x9c\x37\x47\x8d\x35\x5c\xc3\xd7\x0c\xc4\xaf\x2a\xc7\xa0\x7f\xff\x8d\x89\xe5\x63\x86\x50\x1b\x10\x49\xbb\xae\x3d\xb7\xe4\xec\xa8\x8d\x1f\x72\xde\x1d\xdb\xbe\x43\xb4\xfa\xd6\xdb\x52\x07\xc1\x6e\xb5\x62\x39\x54\x2b\xb1\xd5\x5a\xe5\x1f\x81\x61\x1a\xef\xc7\xf0\x69\xe5\x7c\x67\x4e\x78\xe2\xf4\xd3\xd6\xaf\x1d\xd5\xb8\x51\x23\xdd\xd6\xb5\x37\x59\xe2\x91\x93\x15\x72\xf4\x87\xa9\xc5\x35\x2f\xef\x2a\xca\x9f\x76\xa6\x99\xdb\x4f\x55\x5a\x89\xdf\x3a\xc9\x88\x4b\x49\xf7\xf5\xf9\xef\x3a\x3f\x51\xd6\x3e\xc4\xf2\x7e\x13\xe9\x5a\xf3\x71\x90\xde\x6c\xa6\x1f\x65\xd5\x12\x7e\xcf\xdb\xfb\x44\xe9\x2d\x72\x1b\x77\xc0\x12\xd5\x6d\xc3\x01\x59\x05\x1f\x04\xeb\x8f\x3b\x76\x0d\x89\xe4\x32\x46\x46\x2f\x1e\x24\xd4\xe7\x65\x29\x7e\xfc\xf0\x03\x16\x4d\xd1\x7f\x6b\x26\x28\x15\x78\x53\x51\x7e\x71\x43\x0b\x91\x72\xac\xa5\xc3\xb4\xc0\xf3\x72\x06\x9d\xbe\x29\xe7\x34\x65\x58\x05\x7e\xa4\x25\xd6\x4d\xa6\x59\x4d\x28\xce\x49\x24\xa5\xd7\x08\x6f\x48\xff\x54\x41\x66\x01\xce\xfc\xab\x4d\x9e\xcb\xaf\x47\x3a\xa3\x3a\x3c\xaf\x36\x6b\xd8\x5d\x7a\xb6\x10\xc4\x24\x19\x77\xa0\x59\x9c\x61\x81\x7a\x4b\x42\xc8\xe2\x3c\x27\x91\x1e\x48\x94\x46\xcf\xfe\x25\x22\x84\x2c\x0d\x32\xd8\x08\xff\x1e\x9d\xc7\x85\xa1\x35\x57\x42\x1e\x12\x48\x92\x91\x2e\x6a\x1c\x45\x78\x81\xb0\x57\x1f\xa5\xf1\x86\xf4\x47\x4a\x6d\xa6\xeb\xe8\x91\xe1\x85\xb5\xb0\x36\x47\x98\x55\x4b\x75\x0b\x48\xfa\x5d\x22\xe3\x78\x31\x77\x83\x5c\xef\x76\xd1\x33\x18\xd8\x60\x10\x3d\xfb\x17\xf8\x73\x0d\x03\xcf\xaa\x65\x74\xa0\xd3\x35\x02\x34\xb2\x8d\x33\x2d\x18\x66\xb2\x8e\xbd\x55\x91\xab\x67\x7e\xd9\x55\x81\xa7\xfa\x87\xb7\x6c\xf0\xd8\xfe\xb4\x2b\x44\xc3\x35\x84\x52\xfe\x13\xb3\xa6\xf0\x42\xfd\x5d\xa3\x9e\x0a\x5b\x57\x08\x24\xe0\xfd\x67\xc8\xff\x2c\x2b\x66\x34\x37\xec\x91\xd8\xac\x23\xb0\xe3\x0a\xbd\x05\x3c\x20\xe0\xa2\x99\x38\xc4\xe4\x07\x89\xec\xf7\x45\x43\x01\x97\xa5\xee\x81\xe1\x48\x8f\x3a\xd2\x3a\xce\xb0\xeb\xb2\x98\x71\x2a\xe8\xeb\x60\xe3\x47\x98\xa1\xfa\x8e\xe5\xb9\x86\xd7\x50\x5b\x7f\xdb\x5d\x38\xa5\x3a\x82\x12\xa8\xf1\xdc\xd4\xa8\x1b\x7a\xd6\x26\x58\x98\x4d\xa2\xb2\xaf\x59\xae\x9b\xb5\x81\x72\x65\x22\xf8\xfd\xeb\xe2\xb6\xfc\x4c\xe5\x0e\xa7\xa1\x6f\xc5\xcc\x8b\xd6\xc7\x3a\x14\x08\x4e\x8c\x39\x2d\x26\x1a\x48\x93\x10\xa4\xa2\x42\xcd\x23\xe0\xa7\xd5\xa1\xf2\xfc\x07\x8c\xab\x99\xda\x85\x65\x78\x52\x38\x89\x0b\xf7\xec\xd4\x22\x41\xfd\x4b\x84\x50\xa2\x92\x0e\x23\xac\xb6\x32\x03\xa7\xea\x0b\x11\xdb\x0c\x63\xa7\x10\xd2\x69\xb1\xa1\xe2\x53\x84\x30\x1b\x12\x3e\xcc\x2c\xca\xe9\x60\x10\xb3\x21\x89\xfe\x25\x1a\x16\xda\x07\x59\xb6\x8c\x52\x36\x24\xd9\xb0\xf4\x5d\x23\xe7\x01\xfe\x15\x2e\x88\x9a\x0c\xd3\xb6\xb5\x6f\x9a\xcf\x89\x74\x6a\xf4\xe8\x19\xfc\x35\x1e\x4d\x20\x80\x21\x7a\x16\x0d\x0b\x84\xb9\xee\x14\x61\x5e\x3b\x0a\x9b\xe3\xdc\xf2\x84\xe6\x1c\x44\xcf\x22\xcc\x0a\x26\x80\x54\xa4\x9b\x38\xb2\x3f\x22\x24\x19\x6f\x59\x66\x13\x47\xea\xaf\x08\x80\xcf\xf4\xa3\xca\x3c\xd2\x67\x58\x3f\x76\xbf\x22\x84\xcb\x02\x90\x09\xcd\x3b\xef\x67\x84\xf0\xa2\xe4\xab\xcc\xb4\x66\x7f\x44\x08\xbb\x83\xde\x71\xca\xed\x11\x37\x07\x34\xb9\x63\xc5\xbc\xbc\xf3\x8f\xbc\x77\xde\x5b\x07\x53\xa1\xf3\x3f\x8a\x13\x68\x28\x13\x1f\x25\x37\x1c\xba\xc7\xbd\xf4\xb3\xbf\xf6\xbe\xfe\xe6\xec\x9a\x76\x92\xb6\xd7\x30\xff\x95\xd7\x30\x50\xfe\x5a\x6e\xae\x18\x20\xce\x85\x4f\xc2\xdc\xdc\x2a\x63\x82\xf9\xbd\xdb\xa9\xb5\xb5\xdb\x00\x39\x18\x96\xa5\xc2\xe6\xfd\x63\x56\xcc\x73\x0b\xb5\x52\x6b\xca\x10\x7b\xd0\xb1\xcc\x23\x17\xfe\xc5\x01\x46\x8e\x1f\x3f\xfc\x10\x32\x05\xb6\x01\x77\xaa\xb1\xb0\xc8\x95\xea\xb4\x09\x75\xda\x84\x3c\x6d\x98\xca\xbf\xd4\x71\x03\x73\x7e\xad\xce\x85\xb5\x1e\x9a\xee\x12\x39\x66\x42\x71\xeb\xdb\xb3\x4a\x5c\x51\x43\xdd\x6b\x77\x7c\xda\x2d\x18\xec\x38\xd5\xd7\x43\x2d\x79\x87\xcd\x05\xbd\x28\x58\x48\x48\x75\x69\x9c\xf5\xe2\xfd\x93\x0a\xd7\xd5\x35\x2b\xe6\xba\x8b\xd8\x93\xc2\x6f\x5d\x16\x79\x33\x8f\xca\x85\xc2\x0d\x43\xe7\xc0\x3e\x34\x4e\xe5\x17\x47\x63\x8e\xe0\x4c\xea\xe5\xce\xe6\xf3\x70\x88\x91\x1b\x5b\xb4\x6f\xb4\x00\xb8\xa2\x68\x88\x87\xaf\x26\xa7\xaa\x71\x0f\x1e\x98\x89\xba\xfb\xf1\x76\x4f\x97\x83\x81\x1e\x70\x57\xad\xe3\xc6\xec\x91\xe7\xf2\x91\x54\xa9\x65\xab\xf8\x66\x84\xe9\x6b\xe9\xd0\x6f\x22\x34\x32\xd2\x3f\x75\x56\xe6\xd2\x39\x2e\x7c\xd1\xff\x3d\x85\xff\xfd\x9b\xfc\xdf\xbd\xf9\x69\xfe\x8b\xec\xa1\x79\x36\xfe\x72\x3f\x79\x76\x13\xca\xb8\x2a\x98\xc5\x58\xf3\xc8\xe9\xbf\xff\xeb\x9b\x4c\x2c\x13\x9e\x15\xf3\x72\x15\xa3\xdd\x08\xc7\xd1\x17\x79\xfb\xd3\x73\x91\xfe\x8f\x81\xd8\xfd\x6f\xe4\xc2\x7d\x4e\xff\x1d\xdc\x10\x15\xa5\xcc\xbe\x1d\xa5\xd4\xcc\x39\xf6\x85\x14\x49\x6a\xba\x88\x5b\xb1\x97\xb8\x69\x52\xab\xad\xb3\xed\xce\x7b\x8a\xe8\x19\x9e\x37\x01\xed\xcf\x15\xcd\x29\x8c\x37\xba\xce\x2a\xc9\x01\x70\x12\x45\x26\xad\x03\x30\x87\xcb\xac\xba\x10\x82\xb3\xeb\x8d\xa0\x71\xb4\xe4\x74\x11\x29\x36\x08\x04\xbb\xd6\xab\x36\x95\x92\x0d\xc3\xd1\xe7\x1d\x14\x2c\xbc\x07\x1e\xbc\x06\xd6\xe5\xba\x92\xac\x4a\xe3\x12\xb0\x2c\x4c\x48\xda\xf5\xc4\xda\xd6\xf4\xef\xb3\xe6\x28\xec\x02\xa8\xf4\xaf\x5b\xe8\x42\xf2\xb2\x92\x2d\x83\x96\x1c\xa1\x09\xe8\x1f\xc4\x66\xaa\x7c\x33\xa0\xfe\xd2\x83\xe4\xf4\x96\x95\x9b\x4a\xae\x62\x50\x3c\xd5\xf1\xa0\x9e\xa8\xd6\xb8\x94\x9c\xc8\x43\xad\xe0\x22\xb0\x9e\x41\xc3\x5d\xe3\x82\xa8\x04\x2e\x45\xb6\xa2\x3d\x41\x84\xdb\xf2\x3f\x3f\x7b\xf2\x0c\x47\xb0\x8c\xbc\xfd\xd4\x66\x63\x36\x6f\x0a\x7a\x77\xf2\x81\xde\x5c\x7e\x59\xc7\x9f\xfe\xf3\xc9\x96\xd7\xf1\x39\x79\xb6\x7b\x82\x3e\x21\x59\x7c\x5f\x31\xb1\xa7\xd8\xb3\x9f\x9f\xfd\xfc\xec\xd9\x8d\x64\x9f\x5d\xb6\x93\x21\x89\x69\x52\x41\xee\xb8\xdd\x2e\x8a\xd0\x30\xbc\x74\xbd\xcb\xd3\xcd\xbc\xa8\x83\xf5\xeb\xd1\xe6\x22\x50\x84\xc5\x60\x20\xcc\xc4\x53\x9d\x8a\x71\xbd\xa9\x96\x6a\x5a\x5b\xf7\xea\xaf\x6f\x3c\x58\x36\x8a\x6a\xbf\x33\xad\xda\x52\x72\x37\xc5\x9b\x0d\x9b\xa7\x65\x8c\xea\x9e\xdf\x93\x37\x3c\x15\xfc\x8e\xa9\xdd\xd6\xfb\x76\x4c\xdd\xe8\xf5\xb8\x8e\x82\x4a\xc7\xf7\xf5\x68\xfe\xa1\x79\x1a\x01\x80\x21\x66\x90\xde\xda\x40\x5f\x9b\xd6\x2d\x82\x94\xd7\x3f\x42\x83\x01\x6d\x9c\xa8\x7a\x3f\x4b\x60\xba\x8b\xba\xbb\x6f\xb0\x03\x72\xc5\xf7\x1e\x21\x5f\xa8\xa2\xe7\xf1\x23\xce\x10\x4a\x95\x74\xc8\x81\x25\x54\x7f\x6b\xf6\xb0\xbb\x3c\xe6\x43\xf1\xed\x38\x92\xc6\x37\x1f\xe6\x47\x1e\x9c\x30\x8f\x17\xc9\x1e\xc7\x8b\x34\xbc\x34\xbe\x19\x23\xd2\xe9\xf3\x83\xf9\x6f\x24\xed\x14\xdf\xec\x0e\x07\xa5\x4f\xa0\x74\xb4\x9b\x4f\xab\x5a\x42\x3a\xaf\x0f\xb0\xdd\xa0\xc1\xb6\x3c\xe9\xde\x8f\xf4\x48\x82\xec\xd1\xd4\xe6\x4d\x27\xbb\xdd\x2b\x2b\x28\x70\x93\x17\x59\x9e\x5f\x67\xb3\xcf\x84\xd6\x4b\xd8\x27\x0f\x34\x85\x3b\xea\x6a\x30\xc4\x3d\x87\xb1\xe3\x08\x2a\x84\x83\xae\xd3\x23\xcf\x8e\xb7\x4d\x0b\x5c\x58\x8d\x06\xcc\x61\x14\x61\x4f\xb3\xf1\x58\x41\x1f\xf8\x5a\x6f\xf7\x1e\xb2\x88\xb8\xd8\x47\xcf\x98\xe1\xee\xe1\x7d\xf2\xe2\x10\xb2\x08\x84\x90\x91\x16\xbb\x49\x5d\x8c\x5e\x60\xa2\xf7\xd6\xc5\x26\x80\x24\x79\xae\xfe\xb1\xea\x2c\x94\x46\x91\x17\xf8\xe7\x8f\xa9\xe4\xec\x86\x15\x3d\x17\xcd\x1c\x0b\xf2\xe9\x89\x72\xb1\x17\xe5\xac\xcc\xeb\x67\xcf\xe4\xcf\x65\x59\x09\x39\xf6\xfa\x13\xa6\x89\x9c\x00\x2d\xd9\xa6\xd1\x50\xfd\x06\xf1\xf6\xeb\x8c\x00\xa0\xed\x17\xea\x6f\xd0\xd3\x11\xee\x4c\x01\xa4\x50\x7f\x1b\xc5\x78\x97\xe7\xa3\x9c\xe5\xa1\x9c\xad\x61\xa1\x93\xfe\xde\x50\xf1\x0e\xbe\x8c\x30\xc8\x35\xd7\xd4\x4e\x77\xbb\xd1\x02\xae\x6a\xe1\x89\x66\x0c\x9e\xb9\x40\x42\xba\xdb\xd1\xe7\xff\x0b\x7a\x68\xe8\xe4\xdb\xb9\xdd\x63\x08\xcf\xf1\x80\xbe\x2f\x8a\x39\x97\x0d\xfd\x3e\x89\xd0\x6e\xb7\xef\xed\xbf\x25\xa3\x48\x5e\x76\xcd\xf7\x6f\xca\x6b\x96\xd3\x93\xab\x6c\x91\x71\x16\x41\x01\x12\x14\x78\xb1\xe4\xe5\x8a\x76\xbd\xf9\x1b\xd0\xfd\xea\xe4\xfd\x12\xd4\xcd\x2d\xfd\xb9\x49\xc8\x2b\x3f\xdf\x32\x1e\xf0\xed\xf0\xa5\x9e\x1a\xbe\xe9\xc6\x68\x4f\xa1\xdc\x53\x43\xc8\x33\x7d\xc4\x91\x6a\x39\x61\x3d\xe0\x56\xd8\x4d\xf8\xed\x4f\x15\xc8\xf0\x6c\xa6\x91\xb5\xdc\x8b\xca\xb8\x22\x44\xff\xf7\x26\x67\xab\x15\xe5\xcf\x34\x5a\xd3\x11\x4e\x71\x7b\x6d\xf2\x26\x5a\xb6\xfb\xc0\x57\xfe\x86\xd2\x57\xfe\x39\x4d\xa9\x39\x8b\x16\x13\xc3\x2a\x6d\xbf\xe6\xd0\x3c\x68\x16\xd3\x05\xb6\x5a\xd0\x53\x40\x5b\xf0\xa3\xe3\x82\x9a\xaa\x75\x48\xca\x22\x8e\xe0\x4f\x3f\x95\x16\x25\xcf\x15\xc9\x17\x9c\xdd\xdc\x48\x56\xa1\x5d\x04\xd5\xfb\x5a\xf2\x12\x6e\xed\x69\xc8\x2f\x81\x6a\x54\xfb\xd6\x78\xe7\x35\xaf\xf3\xcd\x56\x74\x75\x9d\x53\xe0\x07\x01\x89\x0d\x85\x28\x85\xba\xf7\xe9\xbc\xfc\xf1\xc3\x0f\x1f\x6d\x43\x71\xe4\x37\x1a\x61\xa8\xd9\x53\xf7\x8c\x36\xab\xa7\x02\xaf\xca\x39\xcd\xab\x94\x87\xae\x0e\xe0\xef\x9e\x25\xf4\x8b\xe0\xd9\x4c\x80\xaa\xf8\x82\xdf\x54\x10\xb1\x64\x40\x46\x5d\xb7\x5e\x9f\x6a\xaf\xf4\x47\x4e\xbc\x49\xa6\x9f\x29\x5d\xbf\x54\x2b\xe3\xfc\x7b\x00\x68\x10\xf2\x96\xb3\xda\x73\x03\x68\x60\xd9\x34\xa7\xc5\xad\xa1\x0e\x41\xb0\xca\xf5\x08\xd5\x1b\x9e\xbf\x02\x87\xee\x20\xfd\x7f\x30\x58\xe3\xea\x65\x0a\xd5\xac\xba\x98\x09\x76\xeb\x39\x32\x7c\xe3\xd9\x51\xff\xbe\x61\x33\x5e\xe6\xec\xda\x37\xfb\x34\x9c\xfa\x4b\xeb\xd4\xef\x37\x80\xa3\xd9\x86\x73\x5a\x28\x33\x00\xc2\xfd\x3e\x4b\xcc\x98\x5f\x17\x82\x16\x02\xf2\xd2\x0d\x06\x71\x3f\xf6\xa3\x67\x0a\x64\x51\x66\x91\x09\xc7\xb2\x63\x5a\x73\xba\xce\x38\xf5\x9c\xad\xdc\xba\xa9\x1c\xc7\xd5\x32\xcb\xf3\xf2\xee\xf2\x97\x4d\x96\x43\xa4\x43\x02\x6c\x71\xe2\x4d\x03\x02\x58\xa7\x59\x79\x53\xb0\x7f\x78\x82\x57\x65\x00\xd8\x34\xcf\x11\x86\x7e\xed\x99\x96\xc4\x35\x24\xbc\x56\x2f\x8a\xf9\x0f\x65\x36\xff\x66\x8d\x9b\xf6\x44\xc0\xd7\x7b\x26\x20\x91\x80\x7c\x40\xe7\x78\xab\xa7\xdd\x7a\xa0\xa4\xa0\x59\x32\xd0\x11\x28\x8e\x4c\x6f\xcd\x82\x11\xc2\x6e\xc9\x1e\xaa\xd5\x30\xee\xec\x2b\x6d\xc5\x08\x64\x59\xb9\x7d\x45\x8d\x59\xd4\x8e\x02\x06\x76\xd4\xe8\x23\x74\x24\x73\xd8\xf6\x3f\xee\xb8\xca\xf6\xde\x4f\xeb\x32\xbf\x5f\xb0\xdc\xf7\xd1\x30\x57\xd6\x3f\x43\x7f\xaa\x6e\x0d\x66\x6f\x0d\xeb\xd2\xbb\x5d\x66\x95\x72\x6a\x6a\x44\x79\xe8\xa9\xf2\x5e\x87\xe4\xba\x99\x9f\xc0\xab\x13\x12\x47\x9d\x3b\xd5\xf8\x12\x0f\x06\xac\x4d\xc5\x30\xab\x0b\x29\x17\xe4\xec\x1f\xc1\x01\xf5\x23\x4b\x0e\x9c\x63\x8d\x14\x68\xe8\x1c\x08\x17\x3e\x8e\x87\x57\x5f\xa5\x10\x6f\x1c\x16\x13\xc0\xbf\xad\xbd\x61\x2a\xd3\xbe\xc1\xf7\x28\xb1\x51\x36\xee\x1d\x68\x09\x28\x8f\x0d\x62\x8b\xb7\x3e\x11\x2d\x6b\x54\x5b\xea\xfb\xaa\xe4\x7a\x6a\x9b\x59\x2f\x83\xef\xdd\x77\xae\xe5\xda\x80\xbc\x5e\x29\xd4\x4a\x9c\x91\x72\x5c\xba\xcc\x02\xe6\x35\xae\x1a\x9c\x9c\x4b\x51\x32\xd2\xf0\x7a\xc2\x59\xa9\xf9\x90\x58\x8c\x3d\x03\x85\x80\xe1\x89\x6e\x0e\x82\xa2\x21\x8a\xef\xcc\x85\x14\x72\x5c\x7a\xc8\xb3\x9a\x06\x57\xa0\xfb\xc8\x10\x2e\x9a\xc4\x1b\x0c\xfe\xb8\xcf\x02\x8a\xc4\x30\xb3\x22\x9c\x72\xa2\x53\xa6\x68\x10\x30\xbd\x43\xac\xe7\xc5\x2b\xe2\x8e\xfd\xc1\x1a\x7e\x99\x06\xa5\x30\xb4\xee\x40\xb5\x0e\x52\x27\xb9\xe4\x07\x6a\xc9\x22\xc7\x53\x18\x3f\x00\xe1\x48\xe9\xf3\xd7\x93\x06\xf7\xa0\x1d\xf9\xa8\x8f\x1e\x8c\x08\x42\x27\xdf\x64\xeb\x5a\x85\x4a\x06\xc4\x02\x0a\x98\xec\x5f\x95\xc8\xaa\x65\x07\x0c\xa3\x2a\xa4\xf3\x7b\x37\x92\x0d\xeb\xb6\xb1\x57\x50\x45\x96\x15\x48\xee\x1f\xc8\x24\x27\x8f\xb8\x76\x91\xd1\x8d\xb3\x45\xac\xe0\xf0\xc3\xa0\x65\x13\x08\xd5\xee\xd5\x06\x34\xa8\x20\xdd\xf3\x42\xe7\xc9\x4f\xf9\x81\x48\xb5\x23\x82\x6e\x7e\xf3\xb5\x6a\xaa\xbd\xdc\x59\xd3\x3e\x43\x6e\x44\x69\x34\x54\xc8\xe0\x8f\xf8\x1e\x08\x07\xda\xeb\x0f\xda\x71\x89\xfd\xf6\x9a\x38\x1d\x33\xdc\x0b\x55\x19\x7b\xe1\xa2\xa8\x36\xbf\x95\x61\x98\x23\xd1\xc0\x2d\x3a\x2f\xe3\x97\x75\xce\x66\x4c\x28\x54\x52\x93\xb8\x45\xde\x26\x85\x8d\x81\xa4\x05\x64\xdd\x2c\xb3\x39\x2b\x6e\xae\xa4\x20\x97\x09\x5a\x11\x4f\x6e\x16\x7b\xca\x18\xdc\x85\x4c\xcc\x96\xb4\xb2\x50\xa8\xe5\x1a\x7c\x50\x89\xa8\xb9\xa3\xf6\x06\xe5\x38\x57\x03\xdc\x90\x4f\xcf\xa6\x9b\x62\x53\xd1\xf9\x74\xbe\x59\xad\xee\xa7\x94\xf3\x92\x4f\xd7\x99\x58\xaa\x0b\x60\xfa\x64\x4b\xeb\x67\x29\x3c\xfe\x04\x97\x98\xdc\xbf\x71\x41\xb6\x35\xce\x89\x40\x29\x8b\x39\xfc\x16\x38\x27\x1c\xa5\x05\x11\xbb\xdd\xb6\x3e\xf4\x4d\x83\x41\x5c\x69\xf7\xe2\x61\x34\xcd\xd5\xdb\x08\x6f\xa5\xe8\x25\x2c\xb8\x5c\x5a\x24\xe1\x83\x1a\x61\xaf\x1a\x0c\xe8\xe1\x4a\x18\x94\x72\x1b\xb9\x27\x73\x03\x7e\x65\xa2\x75\x71\xb3\x30\x20\xaa\xd1\xbb\x93\x32\x9e\x05\x53\x88\x7a\x55\x3c\xc7\x91\x19\xa9\x1c\xc7\x1c\x47\x66\x04\xa6\x07\x9c\xab\xf8\xd3\xb9\x1b\x27\x2e\xf0\xdc\x5d\xcc\xc6\x9f\xd1\xbd\x55\x56\x9b\x26\xa2\x91\x9f\x72\xc9\xa6\xd2\xd0\x43\x49\x68\x71\xc3\x0a\xfa\xba\x58\xd8\x1c\x7c\x42\x7b\xb8\xef\x29\x96\x2c\x36\x79\x2e\x3f\x51\x5f\x8f\xc3\x53\x0d\x03\xe4\x78\x0c\xb0\xf2\xe5\xaf\x74\xb9\x34\xab\xf1\xbe\x2e\x7b\x4c\x2e\x5e\x52\x51\xae\xa2\xb0\x75\xac\x30\x43\x61\x8d\x6c\x3e\x87\x6b\xeb\x55\xc9\x2f\xa1\x72\x2c\x70\xe5\xbc\x39\x99\x97\x12\x4a\x25\x9a\xf8\xf4\x52\x1e\x58\x56\xdc\x9c\x64\x27\xb0\xed\x4e\x6c\x17\xfc\xa4\x2c\xf4\x33\x03\xf5\xbc\x11\x15\x9b\xd3\x93\xac\x38\x51\xad\x9f\xb0\x0a\x92\x42\x81\x14\x45\xe7\xc9\x27\xd4\x33\x6a\x5c\xa5\xff\x94\x7f\xa8\xe8\xd2\x3e\x09\x99\x15\x23\xad\x35\x4e\xe8\x28\x3c\x53\x89\x5b\x26\xc7\xed\x85\xb6\x5d\x5d\x32\x10\x91\x82\x46\x8d\xd9\x0e\xce\xa2\x1e\x8d\xde\x3c\xa0\x28\xc6\x82\x3c\xf7\x59\xa4\x33\xee\x32\xf6\xf0\x21\xf9\x1f\x48\xc4\x10\xfa\x9b\x88\x52\xfe\x31\x04\x74\x78\x3e\xfc\xfd\x04\xd5\xf5\xaa\xdc\x28\x08\x39\xb2\xad\x03\xde\xd3\x2c\x08\xa7\x55\x99\xdf\xaa\x50\x80\x37\xd9\x5a\x41\x3f\xd1\x9e\x48\x32\x79\x1a\x73\x22\xff\x40\x16\x67\x50\x1f\x90\x1c\x18\x8c\xe6\x01\x31\x88\xc3\xac\xa8\x44\x56\xcc\xe8\xeb\x79\x5a\x0c\x87\x18\x86\xf0\xbe\x64\x85\x48\x67\xd8\x6c\xb9\x74\x56\xe3\x25\x51\xa6\xcb\x9e\x81\x7b\xb6\x60\x20\x4b\x00\xff\x8a\x9e\x45\xc3\xdc\xa0\xac\x1d\x41\x8d\xf2\x90\x1a\x19\xe7\xdf\xfe\x29\x5e\x91\x3d\xdb\xb6\xb7\x82\xe4\xd9\xc6\x04\xd8\x2e\x40\xe6\x26\x37\x76\x78\x2e\x5c\x89\x74\x1e\x1e\x0a\x84\x6f\x2c\xa9\xb8\x95\xf4\xe1\x26\xa4\x0f\x37\x0d\xfa\xb0\xa8\x25\x8f\x0e\x57\x85\xa2\x12\x37\x08\x6f\xc8\x8d\x47\x1c\xf0\xda\xa4\x90\xea\x18\xdf\x4a\xe1\x07\x5c\x1f\x3c\xb7\x51\xb6\x96\xfb\x4d\xc9\xae\xb5\xce\x7a\x7d\x80\x0e\xab\xa9\xbb\x27\xb9\x4f\x85\xa7\xc4\x6f\xc6\x3d\xbf\x3b\xd8\xf5\x14\xba\xd3\x84\xed\xbe\x45\x95\x9b\xfb\xa8\x7e\x90\x5e\xdc\xe3\x3b\x84\xd5\xd0\xf4\x3c\x36\x06\xa6\x9f\x1e\x31\x2c\x7c\xf4\xb0\xb0\x5d\xaa\x23\x46\x57\x3f\x50\x66\x86\xaf\x0d\xdc\x93\x24\x1e\x4b\x3c\xc3\x9b\x00\xc7\xad\xc1\x52\xb5\x4d\x0e\xc1\x7a\x82\xa2\x5e\x71\x0c\x75\x4c\xd1\x60\xd0\x87\x14\x2f\xe7\xca\x8e\xa2\x9e\x27\x92\x3e\x7e\xf2\xf1\x2a\xb5\x88\x2a\x2f\x6b\x2b\x94\xea\x8e\x9b\x47\xbb\x7d\x3e\x95\x23\x09\x64\x8d\x01\xdf\x03\x6d\x3c\xd2\xc9\xbc\xd5\x43\xcc\x70\x01\xde\xe0\x9a\x5a\xa3\x47\xbb\x93\x69\x4e\x50\x6d\xf6\x2a\xc2\xe3\x49\xe0\xe5\xf7\x98\x36\x3a\xa3\xd9\x1f\x65\x0a\x7e\x38\x0e\xc9\xb7\xba\xf9\xf9\x82\x17\x2a\x88\x55\x8a\xc4\x3e\x4f\x7c\x9d\x55\x6c\x16\x21\x75\xf2\x7b\x9c\xf0\x44\x69\x42\xe2\xad\xf1\xe2\x4a\x63\x44\x9e\x7f\x8a\xcd\xd8\xe7\x00\x0a\x7c\xe2\x9a\x40\x9f\x74\x00\x56\x41\x1a\xcc\xb6\x13\x7c\x2d\xa4\x7b\x81\xb9\x5c\x20\x6f\x30\xc5\x57\xe9\xfe\xf7\x06\xe9\x82\x09\xad\x43\x38\xe0\x68\x2b\xbc\xa4\x3d\x8d\xa1\x72\xcc\x88\x15\x19\x0a\xd4\xb3\x58\x5e\x4c\x4a\x0b\xbd\x63\xd7\x37\x0c\xdb\xff\xef\x20\xa7\x2a\x3e\x5f\x73\xf9\xac\xf2\x34\x33\xf6\xb6\xb9\x55\xaa\x77\xfa\x38\x41\x0f\x6e\xbb\xa7\xac\x58\x94\xbf\xea\x44\x68\x54\x84\x8e\x33\xd0\xa1\x17\xfc\x2f\x8b\x12\x9b\xd3\x35\xa7\x33\xb9\xf9\x9f\x2e\x68\x26\x36\x9c\x76\x6b\x36\x33\x71\xc0\x75\x5d\x53\x2f\xac\x15\x21\xd3\xbf\x3f\x8c\xec\xd0\x18\xd5\xe3\x89\xcb\x91\x60\x0d\xdf\x6c\x4b\x5e\x19\x32\x4b\x6e\x31\xa8\x3d\x5e\x36\x9f\x77\x18\xae\xa9\xa3\xce\x84\x90\xdb\xda\xdb\xe1\x34\xf9\xf0\xee\xc7\x8f\x97\x1f\xa6\x97\x7f\xbd\x7c\xfb\x71\xfa\xf2\xf2\xfd\x87\xcb\x17\x17\x0a\xc1\x47\xbf\x9b\xbe\x78\xf7\xf6\xed\xa5\x46\xf5\xf1\x44\xe4\x35\x5e\x75\xa7\x46\xb9\xb5\xc6\xe9\xbe\x35\x44\x7e\x77\x8a\x06\x03\x6a\x94\x32\xdb\x5a\x32\x26\x10\xc8\x64\x41\xf3\x6e\x33\x3e\x66\x13\x22\x7a\x0c\xf2\xdd\x9e\x17\xf2\x97\x41\x50\x57\xa1\xb9\xe9\xb3\x29\x9b\x3f\xd1\x89\x41\x18\x1a\x0c\xe2\x56\xa1\x88\xcd\x23\x23\x65\x15\xf6\x8d\x8b\x38\x6e\x64\xe9\xad\xeb\xae\x8f\x5c\x19\xe4\xa2\xaf\x8e\x00\xd4\x39\x14\xc8\xb6\x86\x14\x73\x56\x83\x67\x3d\x5b\xac\xd1\xcb\x08\xff\x92\x61\xb6\xc5\xc8\x5d\xdc\x15\xa6\x85\x29\xaa\xa7\xa0\xe3\x82\x4b\xdb\x4d\xb3\x32\xc7\x80\xe2\x34\x4c\x3f\x02\x8f\x08\xd5\x7f\xf4\x0a\x8b\x9e\x16\x17\x24\xa6\x44\xc8\x45\xd1\x2f\x77\xbb\xf1\xc4\x61\xa6\x31\x6f\x56\x95\x77\xcd\xf4\x97\x75\xf2\xcb\xba\x82\x1c\xc0\x0e\x66\xcd\xb4\x88\x70\x46\x46\x67\x99\x4b\x0b\x31\x1c\x66\xa8\x1c\x67\x13\xe5\xe6\x01\x3e\x1d\xc9\x93\x6d\x31\xce\x26\xf5\x27\x97\x9b\x81\x8c\xce\x2a\x87\x32\x37\x1c\x56\x26\xf9\x02\x1b\x57\x93\x5e\x04\xe6\xc0\x88\x10\x92\x27\xd5\xac\x5c\x53\x29\xa9\x48\x56\x47\x54\xa4\x44\x75\x5d\x4f\x33\xd0\xed\xfe\xe5\xbd\x0b\x09\xb7\xe0\x52\x46\x89\xdd\x2a\xa2\x9a\xb2\x39\xeb\x00\x55\x54\xa0\x7a\x0a\x0e\x43\xac\xb8\xf1\x8a\x36\xdb\xea\x28\x92\x6c\x78\x0e\x29\x9d\xd4\xa5\xf4\xaa\xe4\x01\xfa\xe4\xfe\x50\x3b\x68\x33\x8d\x86\x34\x04\x91\x36\xb8\x85\xdb\xba\xe7\x49\x71\xfb\x4c\x6d\xea\xe3\x9c\xc9\x03\x97\x84\x9d\xb3\xf1\x3c\xb9\xfa\x78\xf1\xf1\x72\x7a\xf5\xd3\x9b\xef\xdf\xfd\x30\x49\x0f\xb6\x01\xa2\x00\xce\x08\x0f\xf7\xa0\x41\x0a\xf6\x60\xc6\xcb\x44\x7d\xe4\x38\x9b\x48\xe9\xf1\x3e\x50\xbe\xfb\xd6\xd0\x1c\x25\x9c\xce\x37\x33\x1a\xc3\x8a\x90\xe7\x2a\x27\x75\x3e\x16\x13\x4c\x11\xae\x50\x6d\x09\x92\xbb\x30\xff\x4c\xef\x7d\x9a\xd5\x55\xa4\x33\xad\xa3\xf9\xac\xee\xf2\x1c\xd5\x73\xfa\xd8\xa6\xf6\xd5\xe0\xa8\x9e\x6a\x7e\xff\x55\xc9\xfd\x57\x9e\x3f\x7c\x70\x6a\x3c\x13\x4c\x12\x0d\xed\x6e\xd1\xf8\x73\x07\x0a\xae\x79\xb9\x46\xbb\xdd\xb6\xae\x81\x4b\x77\x6c\x58\xc7\xc0\x6b\xfa\xc5\x39\xda\xcf\x29\x6c\x0a\x25\x51\x86\x9e\x10\xee\x55\x64\x5e\x69\x90\xf1\xbf\x32\x7a\x57\xc5\xa8\x9e\x9a\x0b\xf0\x03\xd5\xf0\x6a\xa1\x1e\xdd\x8e\xa2\x57\xf8\x28\x0a\x9d\xc4\x42\x89\x98\x09\x2b\xd4\x26\x35\x5d\x36\x3f\xa7\x50\x21\x98\xb4\x50\xa9\xf6\x56\x4a\xe3\x2e\x5b\x19\x4f\x4c\x62\xb7\x7d\x1f\xe4\x3e\xa7\xf6\x3f\x7b\x5b\xfb\x7f\x77\xb8\x7a\x74\x2d\x7a\xb3\x58\x3c\xc2\xcb\xc3\xb0\x08\x30\x57\x2b\x3a\x67\x99\xf0\x8e\xa0\xed\x44\x5e\x68\x02\x27\x49\xc2\xe1\x8a\x3a\xd8\x58\x2f\x18\xca\xde\x86\x55\x73\xa8\xe6\x74\xc1\x69\xd5\x74\xde\xd8\x6f\x8f\x57\xa5\x81\xfe\x04\xce\x1f\xfb\x67\xa3\x51\xea\xe1\xc9\xb0\xe9\xf5\x5c\x16\xbd\xc6\x96\x91\x75\x7c\x15\x98\x86\x73\x6e\x94\x92\x04\x94\x81\x43\x0b\x5b\xc4\x05\xc9\x74\x8d\xb6\x38\x12\x33\x93\x91\xd8\x93\x94\x74\x6a\xa1\x8e\xed\x18\x21\xec\x65\xc4\xa8\xce\x5d\x91\x0a\x47\x6b\xef\x2e\xa8\x22\x94\x8e\x27\x67\x0d\x88\x3f\xe1\x43\x9b\x6e\x7d\x82\x1d\x2b\xb8\x13\x83\xbb\xf8\xaa\xe4\xe6\x66\x51\xbc\x86\x39\x40\xe0\x72\xa2\x88\xbf\x43\x69\xd4\xec\x88\x46\xc4\x2d\x3a\x93\xfc\x17\x0a\x9e\xb9\xf3\x0d\x00\x35\xeb\x11\xf8\xbc\x24\xb4\x8b\x21\x4d\x84\x9f\xc4\xe3\x05\xb0\xd0\x28\x86\xbc\x1d\xd0\x2e\x80\x4b\xaa\xc4\xea\x48\xe7\xd1\xcf\xe6\xf3\x77\x1a\x1d\x1f\x9a\x19\x02\xa4\x0a\xa6\x0a\x38\x45\x5f\x7c\x90\xba\x00\xd5\x28\x2e\xf0\xc6\xe3\x79\xd4\x32\x90\x42\x63\x5d\x76\xaf\xc3\x82\xcc\x34\x71\x50\x18\xb5\x3e\x21\x59\x24\xa0\xc2\x7d\x77\x4b\x39\x67\x73\x5a\xc9\xb9\x87\xcd\x07\x6c\x0f\xd0\x47\x58\xa4\x86\xd7\x8e\x68\x5e\x79\x6a\x8b\xbd\x2e\x16\xa5\xd6\x6a\xae\xf5\x45\x7a\xed\x40\x7e\xf0\x8a\xc8\x7a\xef\x2f\x3e\x5c\xbc\xb9\x32\x15\x7b\xb3\x24\xd8\x0d\x1d\xd0\xf0\xb3\x64\x95\xad\xc7\x74\xd2\x13\x46\xb4\x5b\xb9\xd8\xfa\x65\x32\xcb\xf2\xd9\x26\x07\xdf\xe3\xd9\x92\x4a\x6a\x1f\x0b\x35\x9c\xc6\x05\x2b\x14\x2b\x83\x4d\x33\x92\xb3\x5a\x1b\xfe\x80\x49\xb2\x98\x6c\x8a\x39\x9d\x95\xa0\x15\xd0\x8c\x3e\xf8\x71\xf9\xa1\xf9\x92\x7e\x96\x26\xa3\xe4\x2d\xb9\xd7\xc9\xe5\x9b\x13\xe2\xaa\xf8\xcc\x70\x81\x6f\xb5\x1a\x0b\xce\x6f\x8b\x2c\x6b\x7f\x3b\x0f\x52\xc4\xea\xbb\xaa\x65\xb9\xc9\xe7\x1f\xe4\xde\xe2\x3a\xed\x36\x87\x1f\x1f\xe9\x6a\x9d\x43\x24\x91\x85\x0a\x58\xe4\x9b\x6a\x79\x51\xdd\x17\x33\xb3\xb3\x2a\x14\xcb\x1d\x14\xa0\xf9\x18\xc3\x6a\x23\x85\x9e\xbf\x62\xfb\xa7\x98\x77\x4e\x31\xd7\x53\xcc\xcd\x14\xf7\x0a\xb5\x93\xd4\xfc\xa2\xba\xbe\xa6\x8b\x92\xd3\x37\x92\xd1\x84\x8b\x63\x21\x29\xa7\xf9\xc5\xe9\x9c\x71\xe5\x3f\x5f\x6b\x96\xde\x3a\x12\x5a\x0b\xb5\x32\xb7\x43\x1d\xe2\x33\xff\x35\x70\xaf\x60\x48\x36\x50\xf6\x52\x2c\xec\xbc\x2b\x57\xd9\xda\x4b\x59\x96\x83\x04\x84\x40\x80\x0a\x00\x92\x24\x27\xbc\xdb\x55\x83\x01\x94\x30\xa9\xca\x36\x24\x57\xc6\x87\xf8\xd9\x7f\xc6\xc9\xbf\x22\x10\x92\x90\x09\x99\xdb\x40\x66\xa4\xcd\xf8\x74\x82\x33\x42\xc7\xf9\x44\x6e\xb3\xfe\xa8\x56\xc9\x65\xe4\x7c\x9b\xbc\x46\x4d\x76\x4f\x71\xa6\x85\x31\x1d\x80\x0d\xe3\xbb\x53\x03\x2f\x6d\x44\xa8\x03\x27\x6f\x1c\xd6\x7d\x7a\x3a\xb1\x73\xe3\xdf\x39\x0b\x56\xcc\xd5\x94\x33\x9c\x05\xec\x5a\xe8\x36\x0d\x46\x16\x28\xa7\x83\x47\x2c\xc7\xdd\xb8\x54\x28\x92\x4b\xeb\x9a\xf5\xaf\xb9\xe6\xec\x57\xa2\xe4\x34\x42\x30\x08\x55\xb0\x6e\x1e\x05\xed\xd0\x43\xfd\xd4\xf3\x2e\x67\x1d\x48\x9d\x4a\x50\x91\xbd\x86\x37\x99\xa7\x20\xec\x14\xe8\x18\xe1\x9d\x02\xc1\x60\xc0\x1a\x37\xe7\x60\x10\x53\xd2\x7c\x88\x74\x3e\x23\xde\x6d\x8c\xa7\x5e\xa6\xa1\x8e\x0b\xd4\xba\xf9\x75\x0d\xcd\x79\x4e\x5a\x58\x36\x14\x0b\x29\x81\xc2\xb7\x7a\x72\x8e\xc0\x7b\x3f\xce\xa7\xd1\x26\x35\x7f\x37\x93\x72\xfe\x28\x31\x47\x23\x3f\xf7\x04\x51\xc7\x3e\xbb\xce\xfd\xd5\x61\xe7\x77\x31\xc7\x14\xa5\xb4\x35\x3f\x66\x92\x15\xec\x8d\x3a\x22\xcc\xd8\x51\xcb\xc1\xa0\x74\xdb\x68\xb7\x83\x1c\x73\x0f\x64\x94\xd4\xe9\xc6\xcc\x46\x57\x3b\xae\xc2\x19\x72\x10\xf3\xe1\x2b\x29\x01\x9b\x55\x91\xfd\xf9\xf4\xa3\x6e\x50\x50\x3f\x65\xa7\x7c\x01\xe1\x77\xf0\x87\xb7\xb1\x9a\xde\x10\x26\x6d\x46\x5f\x0c\x06\x7d\xde\x2b\x77\xbb\x36\x0a\xbf\xd8\xed\xf8\x39\x23\x22\x8d\x19\xa1\x89\xd0\xfd\xa9\xaf\xa6\xde\x49\xe2\x44\x20\xb5\xc9\x3c\x85\x56\x73\xb5\x29\xc2\x4b\xa3\x18\xe2\x60\x4c\x04\x16\xb6\x84\x5c\x71\x85\x28\xfd\x20\x9a\x67\x37\x38\x4a\x80\x17\xe3\x49\xb9\x11\x39\x15\x78\x49\xb8\xb7\xad\xf1\x8c\x70\x75\xca\x51\x6f\x43\x36\xbb\x5d\xb4\xca\x58\x11\xe1\xf2\x3c\xce\x88\x3f\xb4\xaa\x35\xf0\x0c\x72\x79\xb0\xae\xee\x2a\x92\x79\x8e\x3f\xca\xec\x58\x9e\xd3\x16\x77\x3a\xef\x3e\x48\x19\x4a\xf7\xbe\x91\x13\xd6\x6c\xc6\x1b\xa7\xca\x94\xdb\xcc\x73\xbb\x34\xb0\x4a\xcb\xde\x92\xec\x69\x7a\x81\x6a\x3b\xe2\xd9\xf9\x8c\xd0\x60\xab\xa4\x4b\x10\x94\x0c\xe5\x99\x21\xab\x93\x73\xcd\x99\xe9\x49\xa3\x61\x85\x7a\x39\x98\x40\xaf\x15\xcc\xb9\x64\x37\xd7\x6e\x94\xb0\x6a\x06\x4e\x5d\x31\x12\x5b\xd0\xf3\xa6\x73\x2c\x97\x30\xcd\xb1\x5a\xad\x74\x83\xc1\xfa\x9b\x61\x6f\xac\x4b\xe5\xb7\x9d\xce\xb0\xed\xd1\x9e\xc5\xd5\xf9\x2a\x9e\xa3\x94\x26\x53\x51\xae\x7f\xa0\xb7\x34\x97\xb2\xa6\xdd\xe1\x73\x07\x19\x7f\x5b\x1b\xaf\x08\x81\x7a\x2b\xe5\x1e\x05\x1a\x13\x65\x6c\x02\x56\x62\x93\x94\xc5\x8c\x36\x5d\xb6\xa7\x15\x15\xef\x60\x78\x95\x94\x04\x59\x35\x2b\x8b\x82\xce\xf4\x33\x8f\x4e\xf5\xe4\x87\xb6\x93\x0e\x9f\x0b\x42\xd3\x18\xe2\x94\xd4\x96\xe4\xd6\xd2\x26\x07\x7b\xee\xff\xe8\xd8\x5d\x06\x87\x1e\x61\x41\x84\xdd\xb0\x6a\x88\xad\xc1\x80\x47\xaa\xcb\x4c\x70\x90\xec\xf9\xfe\x7f\x70\xa1\x62\x46\x46\x67\xcc\x29\xd9\xd8\x70\x88\x8a\x31\xd3\x77\xee\x9e\xde\xea\xf6\x63\x8f\x7a\x5c\x1b\x72\x3f\x18\x40\xda\x8c\x60\x4f\x08\xbb\x27\xdc\x88\xbd\x95\xe9\x1a\xce\xd6\x64\xd8\x63\x93\x5e\xa9\xe7\x93\x80\xff\x45\x09\xc4\x40\x83\x57\x81\xe2\x56\x6f\xb1\x52\xa5\x87\x51\x1b\x4d\x95\x32\xbb\xcd\xb4\xa0\x36\x5d\x09\x7a\x44\x7f\xe7\x99\x04\x29\xe1\xb6\xd3\xdb\x51\x87\xe2\x1f\xb9\x6f\x50\xdd\x15\x11\xdb\x54\x90\x34\x7e\x6b\xff\x0f\x6f\x4e\x5c\x96\x2a\x2f\x5b\xc5\xf3\xd1\x60\x10\x37\x34\x1b\xc7\x8e\xea\x7a\xc3\xf2\xb9\xdd\x02\x6f\xa8\xc8\xe6\x99\xc8\x24\x47\xea\x8c\xbc\xd7\xee\x2e\x0f\x6f\x03\x32\xd2\x0a\x62\xc3\xb5\x35\x72\x62\x98\x95\xf3\x73\x5c\xc3\x38\x1a\x49\xae\x87\xdc\x00\x1f\xd6\x31\x08\x82\x87\x74\x89\x1e\x07\x88\x9f\x9e\xba\x98\x81\xc1\x40\xcb\x41\x6e\xe0\xf7\x8a\x3d\x2e\xfc\x40\x87\x57\x25\x27\xcd\x07\xbb\x9d\xd5\x87\x36\x58\x7c\xc5\xa2\x86\xa5\xc7\xcc\x66\x7c\xec\x78\xe5\xe5\x51\x0c\xcd\x97\x16\xd9\x51\x76\xe0\x19\xf2\x76\xbb\xb8\xf5\x8c\x6c\x6b\x1c\xf0\xcb\xad\x12\x98\x07\xd1\x1b\x72\xd2\x3a\xd5\x8a\x95\x11\x5d\xd4\x84\xb5\xda\x41\xa8\xfd\xac\x8e\xed\x12\xe0\x02\xe1\xac\x35\x5f\x70\xba\xea\x40\xd8\xa0\xbe\x0a\x3f\x27\xa3\xb3\xdc\x25\x9c\x1b\x0e\x73\x23\x4a\x54\xe3\x7c\x82\x67\x64\x03\x52\xb0\x94\x32\xca\x5e\x36\x56\xbf\x26\x64\x76\x5e\x9a\xbf\xd3\x69\x6c\x71\x90\x95\x4c\x6a\x33\x42\xba\xe5\x9d\x7a\x0a\xdd\x66\x0a\x8e\x73\xc0\x45\xba\x40\x31\xd5\xde\x6b\x08\xa5\xde\xce\xb8\xb3\xd6\x0d\x6a\x59\x3c\x67\x6b\x77\xbe\x46\xbd\x0e\x4f\x09\x88\x86\xe3\xe9\xa7\x27\x5b\xae\x3d\x22\x5c\xbe\xd0\x1b\xed\xe9\xfd\x22\xcf\xaa\x2a\xde\x32\x15\x63\xa0\x6d\xdb\xca\xd8\x76\xe3\x31\x7b\x95\x67\x6f\x33\x55\x63\x96\x5c\xc0\x20\x75\xd4\x3a\x66\x2e\x8c\xa5\x99\x0f\xf1\x20\xc2\xed\xb6\xc6\x3e\x07\xa3\x01\x6e\xc1\x1a\xa3\xfe\x0e\xf9\x0a\xf5\x0c\x04\x96\x14\xd6\xd5\xc4\x7a\x28\x85\x8e\x9f\x54\xb9\xcd\xce\x37\x44\xa4\x96\x10\xaa\x0f\x74\x61\xbc\x41\x2c\x60\xc6\x16\x24\x23\xcf\xa3\x3a\xf4\x74\x50\xa4\xd6\x32\xd4\x46\x94\x2c\x48\xa1\x3c\x1e\xb4\x64\x05\x09\x39\xb0\xd5\x29\x77\xaa\xac\x8c\x4f\xa4\x49\x78\x88\xf0\xf4\x97\x75\xf3\x4b\x9b\xf8\x4f\x14\x97\x47\x2a\x1a\x3b\x65\x94\x8a\x64\xdd\xdc\x57\x29\x0f\xc9\x01\x25\x7d\xd4\x4c\x3e\x9a\xbb\x08\x30\x39\x13\x95\xf1\x35\x0d\x14\x8d\x41\x03\x40\xd4\x68\x83\x08\x19\x03\x29\x66\x64\xeb\x1f\xaf\xb4\x3f\xc2\x72\x47\xca\x7f\xc1\x80\x25\xff\xc8\x2a\xb9\x63\x1d\x41\xb3\x7a\x83\xa3\x84\x16\x6a\x91\x33\x33\xb2\xad\xcf\x02\x72\x96\x61\x3a\x2e\x27\x98\x8f\xcb\x09\xc2\xc5\xb8\x9c\x90\x0c\x33\xf9\x4f\x7f\x54\x07\x99\xd5\xf9\xd1\xdd\x71\x5c\xa1\xc1\xa0\xcf\xc6\xd5\xc4\x58\xf9\x9a\xbd\xe6\x98\x8f\xab\x09\xa6\xb2\x08\x2e\xc6\xd5\x84\xe4\xb5\x35\xd5\xc6\xa0\xfa\xb1\x31\x30\x4e\x90\xf5\x89\x65\x3c\x43\x38\xd7\xf6\xdf\xcd\x60\x10\x03\x05\xf4\x24\xd8\x0c\x97\x08\x53\xa2\xdd\x0d\xe7\x04\x72\x1a\x6f\x6b\xbc\x22\x63\x77\x31\xdc\x3e\x76\x1e\x6f\xd1\x60\x10\xe9\x1c\x56\xe6\x5d\xd4\x27\xe4\x76\x30\x88\x14\xf0\x51\xa4\x12\xb1\xca\xd6\x6f\x08\x1d\xdf\x4e\xf0\x35\xb9\x51\x96\x48\xc9\x31\x2a\x26\xfe\xde\x48\x51\xde\x56\x94\xc4\xec\x7a\x30\x88\xef\x21\xad\x9b\xac\x7f\x47\x6e\x92\xac\xd2\x1b\x7c\x8f\x1d\xed\x16\xe1\xcb\x60\xe7\xdd\xa2\xde\x25\x99\xc6\x97\xaa\x89\x2f\xe4\x26\x51\xc9\xcc\x81\x08\xab\x94\xe7\x28\xbe\x44\xf8\x1d\xd9\xd7\x6c\x7c\x89\xef\xf0\x17\x84\xaf\xc8\xa7\x27\xdb\xb2\x4e\x9f\x6c\x6f\xeb\x4f\xf8\x23\xd9\xee\xd1\x51\xa6\x61\xf7\x38\xd8\xcc\x97\xd8\xf6\x10\x56\x7a\xe7\xbd\x30\x4f\x60\xdb\x7f\xc1\xca\x74\x96\xde\x61\x79\xff\xa4\xb7\xb8\x6d\xc6\x4d\xaf\x9a\x14\xb3\xc4\x4a\xe0\x87\xe3\x0b\xaa\xc0\xf4\x5e\x65\x75\xd4\x14\x56\x1d\xa5\xeb\xba\xb7\x1e\xdf\x4e\xc8\x7a\x7c\x27\xff\x77\x35\x21\x1f\xf1\x5c\xc9\x1d\x1f\x11\x5e\xa9\xbf\x6e\xcd\x0d\xb7\xfd\x65\x5d\xa5\x73\xbc\xca\xd6\xe9\x1a\x07\xca\xe2\x74\x85\x95\x62\x3b\xdd\x1a\xb3\x57\xaa\x2d\xa0\xfa\xea\x52\x7a\x63\xe0\xf7\x9a\xaa\xcf\x1a\xef\xaf\x11\x98\x68\x9a\x15\xb5\xa8\xd1\x34\x74\x73\x49\x44\x71\xa8\x4e\xff\xda\xb6\xdb\x86\x6f\x20\xe8\x35\x42\xb8\xa2\x46\x71\x66\xf3\x1e\x1e\xa5\xf1\xd9\xed\xfa\x10\xfa\xca\xaa\x8f\xb4\x92\x6d\xa3\x18\xa1\xa0\x82\x6b\x19\xf2\xcd\x59\x30\x09\x03\x8a\xaa\xa1\xff\x32\xa0\x9e\x80\xcd\x0d\xca\x63\xcb\xc6\x29\x80\x73\x6d\xa1\xaa\xd5\xf4\x02\x24\xb7\x47\x85\x9d\x3a\x57\x6b\xf9\x0e\x3a\x40\x44\x28\x59\x65\x6b\x5c\x36\x12\x72\x9a\x74\x8a\x61\x40\xb0\x71\x89\x28\x7d\x97\x08\x6d\xa0\x62\xe3\x72\x9c\x4d\x60\xc0\x95\x56\x25\xda\x9e\x92\x6e\x13\x73\x85\x70\xa4\x2d\x79\xa0\x00\x88\x50\x63\x7e\xfd\x20\x33\xab\x35\xd2\x76\xc2\xde\x35\xa7\xd9\x67\x93\xca\xae\x3f\xaa\xf1\x82\x15\x8d\x03\x1e\xce\x03\x5b\xc4\x4d\xef\xd3\xb6\x9f\x8a\xcb\xb1\x08\x77\xbf\x55\x3d\x1d\x52\x0a\x1b\x93\x9f\xe1\x5f\xe5\x0d\x3c\x0d\xb9\xd7\x18\x2e\x5f\xf9\x78\xad\x30\x61\x2a\xc0\xaf\x3e\xeb\x36\x04\x49\x92\xde\xc8\xb0\x5b\x49\x36\xd7\x4d\xfb\xcc\x68\x5b\xe0\xf9\x78\x26\x69\xfe\x42\x0d\x09\xaf\xc8\xda\xd7\x3e\xdd\x92\x85\xb6\xd1\xc3\x1d\x30\x18\x98\x9f\xf8\xc6\x24\x37\xb8\xf6\xd2\x0e\xe6\x10\xce\x65\xca\xa0\xf3\xf8\xc6\xdb\x36\x2b\xbc\x50\x66\x7c\x7c\x4d\xd6\x9d\x24\xf5\x06\xdb\xe6\x17\x40\x85\x11\x4a\x6f\x5d\xb2\xfe\xf8\x1a\xae\x0a\x34\x18\xc4\x37\x64\x9d\x74\x7b\x25\x5c\x77\xb4\x11\x5f\x93\x45\xd2\x4d\x61\xf1\x0d\x99\xc6\x8b\x90\x73\x97\x24\xae\xdb\x9a\xbf\xde\x67\xca\xbf\xee\x93\xa0\x0b\xd5\xd0\xb6\x29\x8c\xbd\x2b\xf2\xfb\xc1\xa0\x7f\xda\x27\x46\xcb\x7a\x4f\xd6\x7b\x36\xf8\x02\x19\x5f\x6e\xe8\xfa\x1e\xbb\x20\xdd\xde\xdd\x39\x23\xfd\x51\x0a\xd8\xd7\x77\x60\xd0\xe8\x9f\x6a\x73\x65\xe5\x4f\x35\x06\xa7\x7a\xc9\xa3\x34\xc7\x46\xe4\x3c\x75\x4f\x89\xba\x61\xfb\xc5\x41\xe4\x84\xdd\x4e\xa8\x6b\x40\xbb\xe5\x5d\xe3\x5b\x56\x31\x9d\x1d\xe4\x33\xbd\x4f\x6f\x77\x3b\xb3\x10\x35\xaa\xfb\x23\xa2\x4c\x2f\x87\xcc\x5f\x98\x0d\x06\x45\x47\x48\xb2\xda\xbe\x6d\xc3\xa3\x27\xcc\xe9\xdd\xab\x88\x52\x4f\xff\xf4\x36\xf2\x3e\xef\x0c\x1c\xe9\xb5\x34\x2b\x59\x23\xec\x1f\xb4\x64\x96\xd3\x8c\xc7\x8a\xb8\xe3\x43\xde\x81\x6b\x5c\x05\x6f\xaf\x20\x7f\xe0\x81\xf2\x64\xab\x9c\x12\xd5\xe9\xef\x70\x9d\xab\x6b\x27\x62\xad\xf1\xd6\xb3\xef\x04\x49\x28\xad\x0d\xe6\x31\x16\x03\x65\x5f\xf0\x7d\xb4\x52\x01\x9e\xc7\x72\x66\x2f\xc9\x8d\xe7\xe3\x7b\xf9\x68\xf7\xda\xc7\xfa\x98\x7f\x9d\x33\xed\x63\x5c\x66\x75\x6c\xc4\x01\x57\xdf\x47\x03\x3f\x1f\x93\x32\xef\x51\xee\xb4\x8f\x4d\x04\xf7\xb8\xac\x71\x53\x8d\x33\xe7\x39\x03\x1f\x9d\x58\x6d\x9f\xc3\xff\x2a\x46\xdb\x37\x7e\x1a\xef\xa9\x82\xf6\xbe\xca\xcb\x3b\xcf\x4f\x87\xad\x1c\x22\x61\x51\x0a\xb6\xb8\x37\x4c\xaa\xbe\x62\xa3\x0d\xcf\x8d\x3b\x14\x28\xf1\x83\xf8\x70\xed\xe3\xe4\x82\xcc\x91\x72\xe4\x70\xba\xc2\xc0\x0b\x0a\x47\x73\x36\x77\xbd\x47\x7e\x9a\x55\x63\x12\x3a\x5c\xff\x8e\xe5\xb9\xd7\x80\x64\x45\x6d\x13\x37\xa1\x8f\xd1\xd7\x44\x12\xe8\x7e\x40\x45\x42\xae\x3a\xc3\x6d\xb7\xa0\x01\x4a\xaf\x6b\xa2\xb4\x44\x56\xde\xd2\x8e\xb8\xf7\x1e\x7a\xc4\x23\x1d\x71\x2d\xee\x87\x8e\xc7\xf5\x1e\x3a\x77\xdb\xd6\x2b\x40\xa1\xea\xae\xe0\x3d\x96\xdc\x32\xc4\xa7\xeb\x59\xd1\x19\x61\x14\xa0\xb4\x29\xa1\x09\xab\x4d\xda\xac\x9f\x6f\xe8\x86\xce\x0d\x3b\x0d\xea\x44\xf5\x42\x94\xeb\xdc\x58\x49\xfc\xae\x14\x06\xc2\x1c\x82\x25\x9b\x8d\x99\x30\x31\x15\x8e\x57\x1d\x18\x8e\x0b\x28\xfb\xfe\x5e\x7d\xcd\xde\xb2\xfe\x9e\xf4\x06\xe2\xed\x4b\x7f\x78\xe0\xd5\xf7\x17\xf5\x51\xf6\xe6\xa4\x82\x72\xfd\x81\xca\xb7\x90\xa9\x29\xe4\x7f\xaa\x7c\x65\x55\x90\xc4\xc8\x83\x5e\x51\xd6\x11\xec\x38\xf1\x40\x73\x93\x75\x0d\x5d\xef\x97\xca\xee\x17\x9b\xf9\x6b\x7b\xa3\xdd\xb0\x3d\x58\x3a\xcc\x09\x70\xab\x1d\xf3\x22\xa5\x89\x12\x50\x24\x0a\xc8\x3a\x7b\x19\x4c\xb1\x64\x50\x05\x29\x93\x20\xd6\x4c\xdd\x25\x15\x71\x36\x66\x9c\x3b\xcb\x73\x05\xfa\xb1\x6c\x4c\xad\x6a\x3a\x37\x0f\x48\x7f\x84\xfb\x56\x01\xcb\x03\xf5\x9a\x6a\xab\x11\x43\xe4\xa2\x7d\x2a\xbc\x31\xe1\x44\x08\x85\xdd\xd5\xc0\x9e\x86\xde\xe7\x02\xe1\x72\x30\xe8\x03\x1f\xdd\x11\x3b\x80\xe2\x1c\xb5\x02\x73\x23\x2f\x30\x77\xb6\xa9\x44\xb9\x72\x91\xb9\x27\x8a\x77\x39\x29\x0b\x2f\x14\x57\x45\xea\xea\x80\x5c\x8d\x5f\x47\xe7\x89\x43\xe0\xcd\x6b\xb9\x83\x6c\x74\xaf\x5b\x90\xce\x85\xa0\x20\x25\x09\x6b\x8c\x68\x86\x1e\xef\x76\xcb\x56\x70\x44\xbd\xb1\x50\x92\x21\xf5\x03\x3c\x58\x00\x78\x50\xef\x3c\xf8\xe7\x22\x80\x7e\x92\x44\x10\xd5\x01\x65\x95\xe3\x2c\x9b\x2c\x4f\x91\x04\x65\x70\xe3\x77\x4c\x55\x06\x94\x16\x28\x4d\x57\x4b\x61\x41\xdc\x7c\x60\xd4\x04\x3e\x3d\xd5\xf7\x18\xb3\x44\xfa\x0a\xb0\xf2\xe3\x02\xd9\x37\x2a\xf6\xdf\x01\xa9\xc9\xcf\x28\x0e\xc3\xac\xc1\x33\x4f\x32\x96\x15\xfc\x7b\x4a\xe7\x21\xa4\x89\x28\x83\xbb\x09\x66\xb7\xd9\xf6\x7e\xe4\xb5\x97\x4c\x91\xb3\x80\xbd\xa3\xc9\x5d\x56\x5d\x5c\xc3\x9e\x91\x3c\x37\x33\x3f\xce\xe3\x11\x5e\x27\x79\x79\x03\xbf\x51\x2c\x50\x1a\x0b\xdb\x57\xff\xd4\x86\xdb\xd2\x04\xfe\xc0\x02\x6b\xb6\x18\xe1\x22\x99\xb2\x0a\xfa\x52\x2a\xfb\x79\xac\x0b\xa1\x73\xf0\xcd\xd3\x18\xa1\xc6\x43\x39\xfc\x7c\x08\x78\x54\xa5\x65\x8f\x99\xec\x3e\x76\xcf\x02\x5c\x67\x6e\x2c\x16\xf6\x51\xd7\xf6\x0b\x2a\x3c\xb0\x05\x55\xa6\xfd\xa5\x05\x34\x55\x95\xea\x5a\x11\x0b\x9f\x07\x36\xbc\x2f\x5c\x0e\x15\x9e\x59\xb5\xb8\xb9\x27\x93\x79\x95\x1b\x3c\xd4\x6a\xb7\x1b\xdf\x4c\xf0\xdc\xfa\xd8\xb1\x7c\xfe\xf2\xea\x87\x18\xf5\xe6\x26\x40\xdd\x97\xfe\x5d\x98\x3a\x6e\x44\xd0\xf6\x47\xb8\xd4\xda\x25\x70\x0a\xae\x2a\xca\xc1\x45\xa7\x3f\xaa\x83\xa0\x35\x23\xa1\x53\x32\x3a\xa3\xdf\xcd\x8c\x74\x4e\x87\x43\x34\x1b\xd3\x89\x52\xa5\x2a\x17\x65\x84\xf0\x26\x59\x65\xeb\x38\x84\x4e\xf0\x46\xe9\xc7\xdd\x4f\x97\x99\xe6\x3c\xbe\xcf\x2a\x3a\xff\xa0\xbc\x6d\x80\x03\x33\xe0\xe4\x9d\x17\x08\x23\xdb\xee\xa8\xe8\x94\xe2\x46\xb4\x7c\x4a\xc9\xf3\xa2\x4d\x97\x9f\xae\xb2\x35\xb8\x59\xe1\x76\xf0\xaf\x0a\x88\xec\x26\x68\xbb\x5d\xbc\xe7\x0d\x91\x4b\xdb\xf3\x32\xad\xdb\x34\x9e\x70\xbf\xc9\xe3\x7c\xc4\x55\xbb\xdd\xc7\x63\xd4\x7b\xe7\xca\xdd\xc6\xad\x89\x92\xe4\xb7\x4f\x1d\x9c\xe7\xad\x4b\xf5\x6d\x0c\x8b\xde\x56\x49\xa6\x53\x75\x3b\xf1\xfb\xe9\xd4\xb8\x3e\x81\x47\x4f\xb3\x53\x77\x21\x18\x84\x93\x02\x10\x7c\xb8\xd0\xd9\x43\xf7\xf2\x08\x92\x91\x60\x59\x0e\xb0\x6b\x36\xc2\x1d\xbc\xf6\x14\x7b\x11\x23\xb4\x75\x60\xaa\xe0\x39\xb7\x9f\xcd\xf0\xa0\xf3\xbd\x7c\x22\x3e\xd0\x30\xa8\x15\x07\x03\xae\x0f\xbc\xba\x20\xf5\xaf\xba\x0e\xfa\x75\x99\xe8\x37\x6b\x93\xdc\x37\x36\x79\x0e\xf6\x8f\x41\x4f\x44\x3f\x98\xd4\x76\x3e\x2f\x64\xf0\x01\x1a\xac\x14\xa6\x49\x80\x9e\x6c\x20\x30\xfd\x8f\xa8\x11\xee\x8f\x50\xed\x39\x17\xc4\x5e\xec\x18\xab\xb4\xdf\x03\x2b\x6e\x06\x83\xc6\x33\x3a\x0f\xcf\xdb\x43\x5e\x2a\x72\xbe\xa8\x3b\xf0\x02\x17\x8a\x53\x54\xde\x22\xb4\xc3\x5b\x84\x5a\x1f\x16\x9c\x91\x65\x3b\x22\x0f\xdc\x2b\x4a\x84\x2b\x4f\xf5\x26\xd7\x36\x33\xd1\x67\x15\xf9\x10\x17\x00\x84\x06\xaa\xe2\x13\xeb\x49\x0b\x76\x6e\x53\xec\x2c\x37\x5d\x6e\xc8\x67\x28\x9f\x8d\xf3\x09\xea\x15\x64\x93\xe4\x4c\x1f\xf7\x0a\x04\x12\xf0\x37\x99\x19\x37\x94\x79\x4d\x36\x49\x79\x57\x5c\x29\xf7\x06\x70\xc1\xeb\xcd\xfa\x84\x94\xbe\xbb\x8c\x72\xfc\xe9\x13\x32\xdf\xed\xe2\xca\xab\x81\x6a\x41\xaa\x1a\x54\xa4\x56\x45\xee\xf3\xf9\xa8\xfd\x28\xb1\xeb\x64\xb2\x32\x38\x1d\xf8\xa2\x9b\x9e\xad\xc9\x22\x20\x51\xb7\x8c\xde\xa5\x4f\xd5\x17\x44\x26\xc2\x24\x10\x2f\xd6\x86\x77\x46\x1d\xc2\x47\x7b\x04\x78\x61\x4d\xa5\x4f\xbd\x13\xff\xd4\xe0\x80\xa4\xf0\xfd\x48\x72\x40\x2f\xa0\xdd\x0f\x65\x09\x3e\x53\x5d\x9f\x5c\xd7\x75\x88\xe6\x6d\xb5\xfb\x80\x7c\xf3\xec\x5f\xe2\x64\x88\xce\x9f\xa1\xf1\xa8\x61\xa1\x68\xa1\xae\xda\x56\xc0\xff\xb6\xf5\xde\xf3\x75\xea\xda\xbe\x63\x3a\x89\x05\xe4\x0a\xb4\xe4\xe8\x7d\xcc\xb1\x9a\x52\xbe\x1f\x27\x76\xf6\x30\x4e\xec\xb7\xc6\x87\x9d\x75\x22\xa0\x36\x67\xa7\x09\x0e\x7b\x20\x4e\xc9\x20\xb7\x76\x1e\xeb\x87\x6a\xe1\x37\x47\x05\x14\xb5\x27\xb0\x03\x49\xb6\x09\x13\x7b\x60\xbd\x5a\x90\xb2\xc1\xf7\xdb\x3c\x55\x0e\xeb\x9d\x7b\xa0\xb3\xdd\xc1\x4e\xee\x93\x5d\xb9\xba\x81\x1b\xd8\x11\x2d\xe8\x0b\xc8\x4d\x98\x41\xcd\xaa\x83\x05\xeb\xe0\x2c\x1b\xfe\xd5\xe0\xe3\xee\xc3\xc4\x6c\xd6\xf3\xc1\x31\x81\x21\x88\xbb\x3b\x08\x6d\x44\x5e\x48\x18\x54\xe9\xcc\x01\xe1\x1f\x53\x7b\xe1\x04\x94\xc1\x66\x67\xdc\xa7\xb3\x30\x2f\xf6\xaa\x65\x74\xff\x3d\xff\x5a\x69\x68\x31\xac\x49\x47\x28\x6b\xbc\x05\x46\x82\x9f\x63\x31\x41\xc0\x58\xf3\x8d\x94\x75\xc6\x62\x32\xe6\x13\x1c\xe9\x91\x45\xe8\x60\x68\x70\x83\x31\x92\x7c\x97\xe8\xd6\xb1\x4d\x17\xcc\xc7\xfb\x74\xe7\xe0\x70\xbc\xb0\x53\xa7\x67\x73\xf9\xb8\xde\xdb\x8e\xf5\x33\xf4\x8f\x49\x00\xdc\xd9\x39\x64\x87\x84\x7d\x84\xde\xa5\xc1\x8d\xf8\x77\xb9\xcd\x6d\x58\x84\xf9\x68\xbb\x75\x2e\x9d\xae\xcc\x74\x30\xb0\xb8\x65\xac\x2b\x91\xa8\x1f\xe0\x2c\xaf\x4c\xa4\x39\xa1\xce\xa4\x4b\xa5\x77\xcf\x65\x64\xcb\x9a\x39\x42\x7b\x87\x2a\x5b\x87\x34\x73\xaf\x65\x08\xd5\xb5\x4b\x1d\x65\xdc\xe0\xfd\xb1\xc7\x05\x18\x69\x84\x0d\xe5\xb0\x79\x4e\x0b\x84\xbb\xd0\xfe\x12\x95\x52\x43\x65\x29\x55\xc9\x35\xba\xcb\xd9\x14\x50\x90\x5e\xda\xe5\x83\x82\x15\xe9\x70\x03\x84\x0d\x7a\x61\x7d\xa0\xb1\x14\x21\x30\x43\x2a\xdc\x90\xa1\x39\xcd\xa9\xa0\x27\x62\x4c\x27\x58\x8c\x99\x36\x35\x4d\x08\xd3\xb6\x9f\x2e\xdb\x20\xc7\xa6\x9c\xf6\xf2\xd0\xb3\xdb\x15\x70\xde\x13\x70\x0e\x34\xff\xda\xd5\x16\x38\x50\x19\x5f\x11\x0e\x79\xc1\x3b\x3f\x25\x90\xe7\x55\x68\x23\x3d\xa7\x69\x94\x71\x9e\xdd\x2b\xe7\xbc\x3f\x5d\xbd\x7b\x9b\xa8\x9d\xc4\x16\xf7\x31\x45\x69\x14\x0d\x69\xbd\xcf\x43\xb2\x73\x6a\x0a\xd0\x36\x0c\x06\x71\x38\x33\x85\xf6\x55\x2c\xf4\xbc\x74\x5b\x4d\x39\x2e\xcc\xcc\x14\xda\x6a\x2a\xbf\x66\x6f\xa8\x78\xd7\xf7\x5c\x2b\xb1\x45\x7d\x51\x24\xf8\x86\x42\x9a\xb6\x34\x2a\x36\xab\x6b\xe5\xb9\x23\xce\xdf\xc2\xdf\x31\x45\x2a\x02\xed\xdd\x22\x46\xc1\x4c\xc0\xa4\x5e\xa0\x18\x66\x64\x9d\xf1\x4a\x92\x74\x94\xd2\x7a\xba\xe6\x9b\x82\xee\xb1\x46\xb6\xb9\x9a\x86\x05\x9d\x7a\x2e\xdb\x27\x90\x63\x41\x63\x3f\x71\x08\x5e\x2c\x26\x2a\xc6\x68\xaf\x41\x54\x8c\x8b\xc9\x60\x60\x67\xb6\x98\xd4\x75\x07\xb6\xb2\x83\x94\x52\xae\x44\x33\x48\xc0\xa6\x4c\x6f\xa0\x27\x06\xbd\x68\xdc\x75\x05\x21\x0c\xa0\xc7\xea\xd5\x9a\x97\x33\x5a\xe9\x2b\xd4\x75\xe2\x6f\x01\x26\xb9\x7b\x9d\xb0\xad\xf2\xb0\x91\xb9\x97\x45\xaa\x09\xce\xac\xea\x38\xe9\x52\x47\xb2\x74\xf3\x15\x01\x05\x66\xdd\x08\xca\x8e\x43\xcc\x34\x87\x98\xd5\xc7\x0c\xde\x4e\x56\xc3\x43\x66\xaf\xb9\xd2\x4c\xeb\xb6\x36\xee\x8d\x9e\x2f\xc4\x9e\x0f\x68\xb6\x31\x5e\x27\x7f\xf9\xf1\xf2\xc3\x4f\xd3\x46\x80\x6b\x10\x65\x98\xa1\x12\x5c\x18\x72\xb4\xdb\xc5\x6c\x9c\x4f\x88\x12\x89\xf4\xed\xb7\xc9\xf3\xfb\xab\x59\xb9\x6e\x21\x4e\xdb\xfc\x77\xfb\x8b\xb0\xc6\x5a\x81\x32\xb2\xde\x0b\xa2\xed\xf6\xd2\x47\x2f\x0e\x44\x6b\x78\xee\xe7\x80\xae\x5d\x54\x1b\x29\x77\xf8\x77\x9d\x5c\x65\xee\xaf\x31\xde\x4b\xc2\xaa\x98\x05\x9e\xd6\x08\x17\xda\x8b\xee\xf0\x59\x6b\xd4\xaa\xa7\x37\x54\xfc\xe5\xfd\x1b\x2a\xb2\xd8\x73\x49\x86\x32\x66\x83\x70\x7d\xa9\x80\x2c\xcf\xb5\x99\xbe\x6e\x1f\x52\x2b\xf5\x68\xb8\x6b\x4e\xe8\x58\x3c\x3d\x55\x20\xd8\xe6\x52\x36\x66\xa6\x31\x9f\x04\x37\x69\x61\x9d\xdc\x1d\x6c\x0b\x2e\x71\x46\xfa\x23\x9c\xcb\xad\xb3\x21\xe3\x09\x56\x1e\x31\x02\xdc\x60\xe4\x45\xa2\xdb\xf4\xbe\x61\x3c\x9b\x20\x27\xae\xcf\xc9\xe8\x6c\xfe\x1d\xf3\x3d\x68\xe6\xc3\x21\x92\x97\xfb\x2f\xeb\x6a\x3c\x9f\xe0\x8d\x72\x84\x28\x21\xa4\xb8\xf2\x9c\x37\x99\xa4\x2d\x5a\x65\x99\x11\xad\x2a\x5a\x12\xf0\x97\xdb\x80\xbf\x5c\x6e\x95\x5b\x99\x65\x2d\xdd\xd7\x91\x25\xc2\xcb\xfa\xc0\x96\xe2\x6e\x98\x05\x0e\x36\x8a\xbf\x44\x25\x19\xe1\x8c\x58\x54\x99\xf2\xbb\xec\x6c\x38\x2c\x11\xe0\x09\x34\x3f\x9e\x8d\xcb\x09\x42\x0e\x8f\x46\xfb\xf8\x98\x60\x28\xbc\x21\x23\x3c\x23\x85\x3f\x1b\x9b\xef\x66\x67\xc3\xe1\x06\xc5\x39\x89\x2b\xf5\x6a\xbc\x99\x20\xeb\x30\xcf\x07\x83\x0a\x7e\xec\x76\x55\x07\xd6\x8c\x2d\xd2\x7e\x25\x2b\x38\xe7\x23\x28\xa4\x1d\x8b\x06\x03\xc9\xc2\x74\xd5\x19\x0c\x62\x3e\xee\x7a\x31\x21\x7c\x9c\x4f\xb0\x26\xe1\xf2\x6f\x54\x1f\x3e\x48\xed\x19\x86\xdd\x14\xc4\x73\x54\x1d\x41\xd9\x0d\x25\xcb\x70\x98\x77\xcf\x35\x50\x16\x3b\xd7\x72\x66\xe7\xcd\x99\x9d\xc3\xcc\xc2\x36\x35\x13\x8b\xe5\xce\x33\x73\x2b\xe4\xa5\xa5\xe6\x96\xed\x99\x5b\x28\xd2\x35\xb7\xcc\x9b\x5b\x28\xa4\xe7\xb6\xec\x13\xd2\x55\x43\x6e\xd0\x71\xd7\x8b\x09\x11\xe3\xd2\xce\xac\xfc\xdb\x63\x5a\x97\x4a\x52\xef\x88\x50\x67\x9d\x11\xea\x4c\x47\xa8\x53\xed\x9c\x82\x7a\xfb\x3a\xad\x0c\x73\xbd\xc4\x6a\x0e\x30\x6b\x04\x60\xd4\xd3\x6a\xb6\xa4\xf3\x8d\x55\x69\x5b\x1b\x91\x11\x4c\x1e\xf4\x57\x98\x56\xed\x77\x04\x44\x23\xd3\xf4\x3b\x10\x91\xb4\x5b\x85\x2b\x59\x29\xbf\x05\x1c\x69\x4b\x75\xd8\x47\xa4\xa2\xed\x3b\xdf\xd9\x40\x8f\x47\xdc\x8c\x1c\x8c\x1c\xd6\x8d\xcd\x97\xd8\xc2\xfa\x9d\x0f\xbb\xae\xca\x10\x2c\xa1\xe7\x7c\x33\x7c\xb4\x7f\x85\xad\x68\x6d\x4e\x23\x87\xf8\xaa\xd1\x04\x0e\x4d\xf0\x76\xef\x04\xc3\x65\x91\x27\xaa\xae\x61\x97\x3a\xca\x1d\x5a\x23\xc9\x97\xd6\xd3\x55\xc6\x3f\x83\x9d\xeb\xa2\xb2\x96\x2e\x97\x3a\xda\xf3\x20\xb0\x82\x69\xd3\x2e\xd6\x50\x3b\x84\x95\x34\xcc\xfe\x14\x9c\xc4\xfe\xe8\xbd\xda\xd7\x8b\x3a\x23\x50\xa7\x6d\x44\xef\xc0\x11\x16\x3e\x8a\x70\x11\x22\x19\xb7\x14\x04\x4c\x99\x52\xe4\x3f\x5d\xbe\x00\x26\x38\x5e\xbe\xd7\xce\xc1\x7d\x0b\x99\xdd\x25\xde\x9e\xc5\x25\xc9\x12\x30\x32\xbd\x58\xb2\x7c\xde\x18\x2e\xc5\x5b\x13\x88\x94\xf6\x47\x8d\x81\xa2\xe4\xba\x2c\xa5\x28\xa8\x7b\x23\xa5\x0d\xf2\xae\x83\x78\xa8\x30\x0d\x06\xb5\x38\xd4\x67\xfc\x39\x19\x9d\x3d\x7d\xea\xc2\x6c\xc6\x7c\x82\x99\x11\x63\x82\x8b\x9f\x69\xec\x57\x11\x33\x5c\x18\xa5\xa3\x32\x09\xde\x91\xed\x1d\xcb\x73\x6d\x63\x79\xa3\x11\x28\x5c\x2a\x93\x6e\x0a\xa1\xdc\xcf\xa9\x31\xc6\x86\xd9\x13\x30\x23\x74\xec\x06\x3a\xe9\xc9\xaf\x00\xfb\x96\x12\x4d\xb9\x73\xee\x2c\xc9\x17\x29\x42\x2b\x43\x2c\x88\xfd\xa5\x0b\xc4\xeb\xda\x9c\x02\x52\x74\xec\xd3\x34\x96\x58\x20\xdc\x3f\xad\xd5\x92\x5d\xfa\x4d\x6b\x83\x49\xb6\xdb\xc5\x5f\xd3\x72\xa6\x5a\x46\x35\xc2\x21\xce\x0f\x2c\x0b\x2e\xc8\x78\xd2\xe3\xfb\x54\x06\xed\x67\xca\x16\xf4\x71\xc9\xcb\xbb\xe2\x3c\xf8\x95\xd2\x9e\x18\x0c\x0a\xc5\x31\x09\x08\xb3\x8d\x79\xb2\xa2\x55\x95\xdd\x50\xfb\xc2\x3e\x41\x98\x27\x95\xc8\x66\x9f\xbd\x57\xf0\x1b\xe1\x96\xe2\x85\xbb\x32\x08\xf5\x66\x65\x51\x95\xb9\xee\x3b\x4e\x92\xa4\x40\x75\x2c\x70\x04\xd3\x72\x72\xb7\x64\x39\x3d\xd1\x92\x0a\x2b\x6e\x94\x93\x46\x7a\x12\x0d\x4d\x3a\x13\x90\xd4\x6a\xac\xe9\x59\x53\xbe\xc4\x45\xf7\x1e\xb0\xea\x09\x60\x47\xfd\x3d\x60\xa1\xb0\x83\x5d\x70\x00\xdb\xaa\x6c\x2e\xb5\x6b\xc1\xb0\x8c\xe7\xf1\x81\xfa\x19\x2c\x68\x2a\x92\x35\xbb\x2d\xc5\x1f\x5d\xca\x98\x1a\xd5\xb5\xf3\xe1\xbb\xf4\x41\xcd\x1a\x54\x80\x22\xec\xe9\xe2\x19\x0e\x6e\xea\xb4\xc4\xfa\x1a\x49\xb3\x9a\x50\x5c\xa9\x38\x98\x29\xc4\x17\x5a\x10\xbc\xb8\xc0\x19\xfe\xf4\x64\xcb\xf4\x0b\x5c\xa1\xf3\x2a\xc8\x8b\xf9\xe5\xdb\x0d\xa0\x19\xf4\x58\x9e\x8b\x14\x06\x95\x74\x0c\xaa\x59\x98\xa9\xc2\x4c\x17\x6e\x0f\xf4\x5d\x2b\xd1\x92\xd3\x3a\x17\x52\x7c\x87\x68\xa8\x0f\xca\xd8\x9b\x69\x0b\x87\x43\x1c\xe0\x80\x8c\xd0\x2a\x61\x9c\xa3\x5c\x5e\x26\x36\x18\x94\xae\xd7\xab\x40\x58\xee\xeb\xa8\x12\xab\xa3\xb2\xce\x49\x99\xbd\xfb\x3f\xbd\xc8\x8a\xdf\x89\x13\x7d\x2b\x9f\xa8\x28\x8f\x93\xdf\x3d\xd9\xf2\xfa\x77\x27\xd7\x74\x96\x6d\x2a\x7a\x72\x5f\x6e\xf8\x49\xb6\x5e\x9f\x2c\xb3\x4a\x96\x5e\xb0\x82\x55\x4b\x3a\x3f\x71\x62\xbf\x3c\x16\xac\x10\xe5\x09\x13\xd5\xc9\x82\xf1\x4a\xa8\x53\x92\x9c\x7c\x2c\x5d\xeb\x85\xe9\xa0\x2c\x4e\xe6\x10\xb8\x02\x1f\xa6\x8a\x56\x27\xf3\x0d\x57\xae\x52\xae\x5d\x2c\x3b\x3f\x99\x65\xc5\xc9\x2c\xcb\xf3\x93\x9f\x3f\xa9\xc0\x16\xf4\xf3\x27\xd9\x86\x58\xd2\x93\x9f\x3f\xb9\x9d\x2c\x9f\x02\x79\x39\x59\x67\x55\x25\x07\x58\xea\x32\x60\x19\x7a\xe6\xe1\x15\x3d\x73\x60\x45\x3f\x7f\x3a\x59\x96\xe5\xe7\x2a\xf9\x84\x6a\x5f\x16\xac\x48\xff\x14\xe7\xfe\x35\x93\xcb\x6b\x26\x7f\xfa\x54\x32\xd9\x25\x89\x19\x40\x02\x69\x3f\x19\xc9\x14\xeb\x20\x19\xef\xcf\x31\x9f\xa8\xb5\x00\xed\xad\x8e\xaa\xf1\x2e\x1e\xf0\xc8\x8e\x35\x65\x26\x84\x70\x59\xd7\xfa\x65\x77\x90\xe6\x02\x4c\x65\xbd\x8a\xf4\x47\xda\x8d\xe5\x4e\x8b\xb6\x1b\xb4\xf1\xa3\x76\xc6\x60\x15\x29\x34\x7b\x7d\x22\xc7\x50\x0d\x06\x7d\x81\x3a\xb7\xc1\xdb\x52\x2c\xe5\xdc\x6b\x0e\x04\x66\x2d\xd8\x0c\xc9\xc9\xeb\x05\xac\xc5\x9c\xcd\x75\x29\xaf\x10\x06\x8e\xe7\x04\x3e\x03\x56\xeb\x9a\x9e\xc0\xde\x99\x9f\x5c\xdf\x9f\xa8\x4f\x95\xcd\x0b\xbe\xa1\x27\x0b\x5e\xae\xbc\xbd\xa0\x13\x54\x81\x42\xc5\x03\xee\xc6\xd0\x00\x54\x72\x63\x11\xe5\xc9\xf5\xe6\xfa\x3a\xa7\xb0\x56\x66\xdb\x7f\x6c\x49\x5f\x84\xb6\xd9\x56\x39\x35\x5e\x16\x42\x4d\x2c\x40\x32\x4b\x19\x5e\x1b\x3d\x15\x29\x74\xe8\x11\xeb\x0c\x3d\xca\x26\xbd\x2a\x61\x95\xe6\x11\xe6\xe7\xe5\xb8\x02\x7d\x83\x14\x31\x4c\x1b\xde\x23\x87\xc6\x64\xa1\xad\x90\x8b\xca\xb4\x5f\xf0\x26\xa6\x2e\x42\xf8\x28\x1f\x01\xd0\x61\xf8\xf8\xbf\x27\x8c\xdc\xeb\xaa\xef\x33\xb1\x8c\x55\x68\xfb\xb8\xf0\x32\x8b\x15\x06\xfa\xe5\x46\xf2\xe6\x1d\x5e\x1c\x67\x81\x32\xdf\xcf\x85\xa5\x15\x52\xad\x97\x2e\xbd\x16\xce\xba\x4b\x80\x39\x40\xe3\xc8\xe5\x6d\x9a\xdd\x15\x40\xec\x13\x5b\x80\x5e\x29\x93\x8b\xf7\xef\xa7\x2f\x3e\x7e\xf8\x61\xaa\x1d\xff\xde\x7f\x78\xf7\xfe\x6a\x30\x88\x83\x41\xb2\xe2\x24\xdf\xed\xba\xbd\xac\xf3\xc6\xf7\x00\x8a\x5f\x8c\xc8\xf3\xd0\x6d\x24\x4c\xff\xa5\x3e\xa8\xcb\x0d\x1d\x35\x1b\x44\x1d\x53\x72\xdc\x78\xbc\x29\x3c\x38\x28\x2f\x93\xd9\xb1\x23\xf3\xaa\xf8\xb9\x13\xde\xfb\x1c\x4a\x43\x16\xc4\xa2\x25\x05\xd2\x0e\x09\x2f\x30\xe0\xee\x76\xa2\xcb\x15\x5f\x8a\x5c\xfb\xc4\xc0\x35\x2f\x57\xac\xa2\x84\x26\x33\x00\x5f\xa3\x8a\x15\xea\x8b\xb6\xb3\xa1\xf1\xaa\xa5\x3d\x91\x74\x0a\x4f\x35\x8e\xdc\x15\xa0\x1c\x6f\x7d\x47\xfe\x8b\x96\xba\xbd\xa5\xf0\x17\x28\x0c\x03\x57\x9e\x88\x47\x06\x66\x97\x08\x15\x71\x09\xd1\xde\x4a\x89\x37\x2e\x27\xfe\x6c\xbf\x70\x60\x0c\xce\x0e\x4b\xc6\x74\x72\xc6\x6d\xd0\xfb\x99\x39\xfd\xdc\x04\x68\x1a\xf4\xb8\x62\xae\x81\x05\x08\x21\xc2\xe9\x2c\xd5\x97\x14\x1a\xe1\xa5\x0a\x87\xcf\x10\x57\xbc\x2d\x6b\x0c\xe5\xb3\xb6\xfd\xd8\x58\xc3\xad\xea\x20\x2d\xb4\xb3\x4e\x95\x76\xb9\xb4\xdf\x65\xd5\x8f\x15\x9d\xa7\xfd\x53\xa3\x81\x04\x15\x93\xbc\xef\xcf\xe5\xd7\xa9\x3f\x51\xca\x01\x97\x42\x53\x00\x66\xc6\x86\xcd\x28\x71\x89\x52\x4a\x4a\xbc\x75\xee\x42\x29\xc5\xc6\xcf\x27\xf5\x65\xbd\x0f\xb0\x66\x1e\x3b\xc7\x6b\x33\x43\x2f\x54\x9e\x04\x33\x13\xe0\x0e\xa8\x7b\x4a\x56\x19\x2b\xec\x37\x29\x09\x99\x1b\x37\x24\xe5\x60\x54\xdb\x0f\xdd\xd6\x35\x16\xa8\xbe\x0f\x21\x2d\x56\x90\xdd\x27\x10\xe3\x43\xc7\xcf\xb8\xf5\xcc\x66\x0c\x0b\x1a\xf2\x4b\xa4\xad\x3a\xb5\x51\xb5\xfb\x0f\x75\x9a\x24\xf5\xa6\xc6\x1e\x2d\x77\x20\x4c\x4a\xba\xf2\x93\xab\x35\x52\x43\xfa\x79\x8f\x86\x43\x00\x18\x90\xc2\x30\x64\xb1\xe7\x93\x66\x5e\x71\x0f\x90\xa0\x24\xa7\x67\xa5\xab\x5b\x0e\x87\xaa\x5d\x41\xe8\xb8\x54\x77\x87\x97\x58\x0b\x73\x72\xad\x0e\x40\x81\xec\x3e\x1e\x0c\xfa\x0c\x22\xa7\xcf\x90\xdb\xc7\x5a\xcc\x4a\x92\xc4\x64\xda\x32\xc5\x91\xbb\x09\x93\xbf\x97\xac\x80\x86\xeb\x1a\x61\xb3\x26\x71\xe1\xb0\x41\x02\xcf\xf0\x74\x85\x43\xf7\xee\xf4\xd6\xe6\x9a\x8d\x9e\x45\x2e\x47\x6d\xb4\xcc\xaa\x65\x84\x37\x3c\x57\x09\x1f\x0f\x40\x61\x1c\xf2\x30\xf4\x4c\xf7\x16\x05\xce\x22\xfc\x50\x7b\x7d\xd6\x48\x52\xe6\x96\x73\xba\xfd\x9c\xe5\xfe\x08\x3f\x75\x3f\xfe\x9d\xdc\x7b\xb1\x74\x7f\x7f\x7c\x2c\x9d\x09\xdc\x7a\x74\xc6\x8a\x76\x20\xda\x6f\x9f\x2a\xf0\x60\x66\x10\x4f\xed\x02\x83\x55\x0e\x9b\x84\x7a\x5e\xe6\x9c\x08\xff\xd7\x9f\x2a\x15\x58\xc3\xdb\xee\x47\xa0\x8d\xb7\x09\xdf\x5a\x55\x7a\xd6\x95\x53\x33\xde\x1d\x0d\x68\x93\x46\xe6\xa5\xe6\x97\x42\xc0\x60\xe0\xc7\xad\x33\x2f\x91\xb5\x43\x53\x0e\x70\x41\x59\xe8\x73\xe5\x7d\xdb\x9e\x14\xb9\x05\xae\x34\x10\x6c\x98\xe7\xba\xc2\x59\x80\x91\xe4\xc2\xd3\x1f\x95\x29\x45\x78\x6a\xe6\xaf\xc9\x94\xa2\xa3\x16\xbf\x51\x08\xe7\x81\xd0\xcb\x07\x43\x11\x7f\xfd\xfe\x6c\x7a\x08\x06\xe9\x40\x6e\x0d\x5a\xa7\x64\x5a\x0c\xe8\x52\xa0\xd6\x11\x52\x7a\x3b\x92\x69\x08\xc1\x6c\xce\x69\xb2\x2e\xd7\x31\x4a\x42\x80\x23\x03\x22\xe4\xae\x41\x87\xdf\xa0\x5d\x1d\x69\xe0\xea\x28\xea\x1a\xb2\x0f\xb5\xdc\x08\xda\x5f\x42\x68\x3b\xcc\xb7\xfd\x68\x5c\xee\x85\x22\x90\x63\x69\x00\x96\xd9\x9d\x3d\x16\x0d\xa9\x43\x0e\xab\x81\x3d\xd0\xc8\x6e\xcc\x16\xb1\xd0\xc9\x34\xae\x64\x41\x3a\x6f\xa2\xae\xc9\xbb\xaf\xdd\x32\xa4\x46\x3a\x32\xd9\x32\x28\x5e\x46\x67\xa5\x83\x6e\x1b\x0e\x1d\x59\x90\xfc\x1b\x80\x4b\xe8\x2c\xca\xbd\xca\x4b\xaf\x4c\x32\x08\xf5\x56\x29\x41\xe4\xd1\xd3\xa0\x81\x5e\x42\x91\x0c\xe2\x8b\xc2\x6f\x90\x52\x3a\xa6\x6d\x83\x56\x80\x5b\x24\x19\x88\x00\x3c\x23\x8a\xf4\x38\x79\x6b\x9c\x39\x01\x3e\x73\x03\xd9\xe5\x73\x84\x67\x9e\x53\x37\x38\x48\x6f\x06\x83\x8d\xe4\x01\x35\x93\x37\x27\x23\xc8\x00\x02\x09\x13\xdf\x2d\xe2\x0d\x3a\xcf\x93\x6a\x73\x5d\x09\x1e\x6f\x5c\x4a\xcb\x34\xef\xcd\xbc\x0b\xb0\x18\x6f\x26\x78\xae\x8d\xd1\xc1\x0b\x9c\xa3\x1e\x1b\x92\x4f\x69\xfa\x64\x9b\xd7\xe9\x93\xed\xcc\xe1\x83\xd1\xa1\x83\x0f\xcd\x70\xf4\x34\x42\xf2\xdb\x0f\x63\x0e\x05\x1b\xd3\x3a\x2d\x92\x6d\x8d\x3b\x78\x99\x1c\x58\x19\x2f\x05\x8d\x90\x1d\xf8\xae\xc4\x64\x03\xb2\x45\x13\x6a\x9f\xb4\xf5\xd4\x8c\x88\xf1\x68\x82\xcb\x0e\x2d\x62\x46\x4a\x1f\x23\x4d\x92\x79\x0f\x28\xb7\xa5\x4a\x56\x38\xd0\x9b\x98\xf9\xe1\x7f\x36\x51\x7b\x1c\xbd\xe7\xe5\x0d\xcf\x56\xab\x4c\xb0\x99\xa7\xd9\xaa\x4e\xae\xef\x4f\x7e\xfc\xf0\xc3\xc9\x2c\x2b\x8a\x52\x9c\x5c\xd3\x13\xd0\x97\xdc\x31\xb1\x64\x5e\x48\x60\x72\xf2\x3e\xa7\x59\x05\x6f\x41\x15\xa2\x42\x04\x0b\x65\xb1\xad\x04\xcd\x20\x3c\x90\x91\x4f\x4f\xb6\x59\x9d\x3c\xd9\xb2\xfa\x13\x96\xdf\x46\x58\xed\x4f\x93\x7f\x7b\x74\xcc\x87\x3c\x5d\x23\xcc\xc8\x08\xce\x1b\x7f\x2c\x88\x13\x47\x4a\xc2\xe9\x62\x35\x8b\xe1\xb0\xb6\x8d\x0a\x74\x54\x8b\xf2\xf6\x1f\x0c\xd8\x70\x68\x19\x7d\x42\x08\xab\xb5\x0f\xd2\xb3\x9f\x93\x67\x37\xbd\x30\x4d\x5f\x68\x19\xf2\x38\xd5\x42\x9e\x27\x15\x3e\xc1\x3b\xc2\x27\xb8\x26\xe6\x23\xcc\x86\xa7\xc8\x31\xa2\x46\xc9\x22\xec\xd9\x29\x11\x02\x24\x98\x5e\xe1\x0c\x54\x9e\x0e\x27\x0f\x27\x93\x06\x32\x59\x6b\xd7\x40\xa6\x7a\x4e\xb6\x35\x1a\x17\x13\xb2\xcd\x14\xa4\x52\x8d\x0b\xc2\x91\xd1\xdf\x1e\x35\x53\x85\x14\x40\x35\xa9\x54\xb3\x53\x8c\xcb\x49\xaf\xd5\x61\x36\x18\xc4\x19\x74\x94\xd5\x00\xff\x33\x2e\x27\xbb\x9d\xe9\x58\x63\x39\x69\x30\x2d\x80\x67\x64\x9e\xf3\x51\x86\xb0\x2c\x4f\xb8\x27\xa3\x6d\xbc\x54\x8b\x1d\x7e\xad\x71\x04\x0e\x7d\x10\x1d\x20\xff\x18\x8f\x26\x87\x92\x5b\x2b\xc0\x86\x67\x3a\xb1\xeb\x61\x76\xc2\x14\xf6\xd8\x18\x6d\x55\x7a\xa8\xf4\x8a\x7d\x61\x45\xf5\xcc\x06\x59\xad\x79\xf9\xe5\xfe\xd8\x5a\xb3\xb2\x10\x19\x2b\x28\x3f\xb2\xda\xac\x5c\x1f\x53\x68\x25\x79\xbe\x07\xcb\xb1\xea\x29\x95\x47\xf7\xd8\xc1\x2a\x2f\xc9\xa3\xbf\x4c\x0e\x42\xd2\xb7\x63\xe7\xdb\x41\x1d\x1e\x59\x01\xc6\x73\xe4\xc4\x05\x6b\xfa\xb8\x3a\xb3\x92\xd3\xe9\xe3\x36\x83\x52\x2d\x6b\xdb\xfb\x41\x38\x91\x70\xca\xd6\xf7\x47\x4d\x98\x2e\x4f\x8b\xcd\x8a\x1e\x37\xc5\xba\xc6\xd3\x47\x6d\xce\x12\xc0\x71\x1e\xd3\xfe\x4a\xdd\x68\xd3\xc7\x8f\x4c\xa9\xf3\xa6\x7a\xe2\x74\x94\xfa\xd1\x13\xa1\x24\xfa\x63\x8b\x6b\x45\xe1\x91\xbb\x80\x7e\x11\xcf\x78\x75\xbb\x07\x99\xc5\x2b\x28\xe9\xd4\xd3\x72\x71\x54\x83\xd6\x3f\xfd\x68\x0c\x14\xbc\xc2\xb7\xf8\x06\x5f\xe3\x7b\x3c\xc5\x77\xf8\x12\x7f\xf9\xb5\xc2\xc9\xde\x0a\xef\xf4\x5e\xdf\xba\x65\x4c\xfb\x23\x7c\x43\x45\xea\x89\x72\x36\xfe\x5f\x73\x25\xf5\xa1\x26\x5f\xf1\x6c\x45\xef\x4a\xfe\xf9\x91\x6d\x37\xea\x1d\xec\x43\xdb\x35\xef\xdf\xcb\x65\x7d\x23\x97\xfa\xc8\x6e\xf8\x51\x9f\xf0\xc2\x90\xea\x47\xb7\x5f\x1c\xd5\xbe\x22\xed\x47\x35\xc8\x8e\x6c\x50\x5f\x03\x47\xb5\x59\x1e\xd5\x26\xab\x2e\xd5\x8d\x71\x54\x9b\xd9\x51\x6d\x5e\xa8\x6b\xe5\xa8\x16\xab\xa3\x5a\x7c\x9b\x49\x91\xf3\x71\xed\x7a\x75\x0e\x8f\xf6\xe8\x16\x2f\x0e\xb6\xf3\x46\x91\xca\xc7\x0d\xd2\xaf\x74\xb0\x75\x4e\x57\xe5\x2d\xbd\x38\xf6\xa0\x55\x89\xa9\x70\xb0\xd5\x4d\xc1\x7e\xf9\xfe\xf8\xd1\xaa\xe2\x0f\xec\xa7\xc7\x4d\x80\x2e\xff\xc0\x41\x75\x9c\xc7\x51\xcd\xe6\x47\x6e\x2a\xcb\x9e\x1c\xd5\xea\xe6\xf8\xcd\xff\x5e\x5d\x44\x47\x35\x3b\x3b\xaa\x59\xf5\xe2\x31\xed\xce\x8f\x24\x82\x9c\x3e\x8a\x84\x2f\x8f\x9b\x05\x1f\xbe\xfb\xc8\x96\x17\x47\x0e\xd8\xf0\x54\x47\x35\xba\x3e\xaa\xd1\x4b\x8f\xbd\x39\xaa\xd9\xd5\x51\xcd\x4e\x1f\x7d\xb3\xdc\x1e\xd7\x2e\x78\x09\x14\xe2\x55\x79\xec\xdc\xde\x26\xae\xca\x03\xfb\xcc\xb1\x88\x47\xb5\x7c\x73\xd4\x88\x35\x9d\x7b\xf4\x3c\x5f\x1f\xd5\xba\xd2\x61\xaa\x3d\x77\x65\x38\xcd\xa3\xda\xbf\x3f\x6e\x7b\x18\x76\xf4\xa8\x36\xa7\x47\xb5\xf9\x5e\xf1\xac\x8f\xde\x21\x77\x5e\xeb\xfb\x59\xc4\x0f\x57\x7f\x7d\x7f\x64\x83\x97\x47\x0d\xb7\x2c\x40\xed\xae\x23\x78\x8e\x6e\x3a\xac\x76\xb0\x07\x15\xf7\x78\x64\xcb\x5f\x74\x98\x64\x5d\xa3\x07\xd5\x05\x81\x04\x7d\xbc\xd2\xe0\x58\xee\xbf\x2d\x1e\xff\x86\x56\x31\xab\x58\xa1\x71\x89\x33\x95\x5c\x8e\x10\x92\x19\x3b\xe3\xa8\xe7\x59\x94\x4c\x24\xa9\x41\xda\x77\x4f\x32\x65\xae\x34\x7e\xe1\x11\x21\xa4\x1a\x0c\x2c\xdb\x6c\xe2\x6e\x4b\x04\xf9\xb3\x3c\x80\x23\x3d\x8f\xc8\xf2\x98\x1d\x2f\x61\x64\xad\xf6\xf3\x8e\xf6\x33\x34\x18\x64\x07\xda\x7f\x7a\xfa\xaf\x9d\xaf\x15\x22\xb1\xf2\x6c\x63\x71\x31\xae\x26\xb8\x80\xa0\x3a\xad\x8e\xdb\x98\xf1\x6d\x7a\xd5\x1d\x13\xb3\x65\x5c\xa1\xed\x2c\xab\xa8\x8d\x28\x4d\xe1\x97\x0e\x23\x4d\x0d\x17\xae\x46\x0e\xaf\xb4\xb2\xca\x7b\xa5\xb0\xe8\xe8\x0b\x33\x04\x84\x47\xba\xac\x52\xa3\xa4\x0e\x21\xd9\x00\x52\xe3\xb9\x05\x50\xc1\x4b\xf2\x26\x13\xcb\x64\xc5\x8a\x78\x86\xe7\x08\x2f\xc8\xe8\x6c\xf1\xdd\xf2\x6c\x61\xb4\x8c\x6b\x42\xe3\x72\xbc\x98\xe0\x6c\xbc\x70\x9f\xb2\x36\x9f\xb2\xae\xed\x50\x64\x7d\xd5\xb3\x9d\xe0\xb4\x29\xf9\xb8\x25\x3c\x2f\x83\x85\x49\x47\xaa\xea\x3c\x13\x34\xf8\xbc\x1b\x2a\x3e\xb2\x15\x8d\x11\xce\xdc\xdf\xa8\xa7\xdb\x33\x25\x47\x75\xad\xf1\x89\x00\x96\x5e\xee\xe0\x79\x3a\x82\x94\x12\xe9\x29\xd6\xd3\x9b\xfe\x1e\xab\xa9\x4d\xff\x07\x56\x13\x99\xfe\x1b\x86\x59\x4a\xff\x27\x56\x8a\x97\xf4\xdf\x6d\x54\x42\xfa\xbf\xac\x8b\x78\xfa\xbf\x31\x98\x79\xd3\xff\x83\xe5\xf8\xd2\xd3\x51\xdd\xf2\x63\xd0\xda\xdb\xa7\x26\x31\x49\xcc\x9f\x8f\xd0\xd3\x98\x7f\x37\x3a\x42\x75\xe8\x54\x6e\x1d\x84\xa0\x81\xff\xfa\x2d\x95\x89\x56\x13\xd4\xa1\x1e\xf8\xf6\xd4\xc1\x5a\xcb\x5a\x69\xe9\xe8\x6e\xa7\x53\xe1\x3a\xd7\x04\xb0\x6c\x37\x93\xc7\x00\xf0\x5e\xb8\x95\x28\x72\xde\x0c\xf2\x7b\x62\x67\x63\xf1\xc8\x12\x60\xe2\xe1\xb2\xbb\x7b\x61\xbb\x77\x70\x83\x26\xf9\x9d\x06\x81\x8a\x2b\xc2\xac\x36\x5d\x20\xf4\x9c\x8c\x2c\xb5\x19\x57\x93\x1e\x38\xbf\x1a\x67\x7f\xb6\x88\xc3\x81\x0b\x65\x62\xc8\x88\xf1\x23\x41\x98\x83\x43\x55\xa9\xea\x64\x3a\x21\x89\xd2\xf0\x3f\x7d\x5a\x3d\x27\xa3\x33\x94\x8d\xab\x09\xa1\xb1\xfc\x47\x8f\xbe\x36\xfe\xb0\xad\x59\x10\x08\xc9\xd6\x61\x02\x54\x59\xcc\x25\x95\xd4\xcd\x5b\x47\x5a\x71\x62\xf6\x77\xb9\x38\x79\x99\x09\x8a\x32\x70\xa3\x93\x7f\xc6\xc2\x3b\x61\xed\xea\xca\x88\x07\xa6\x01\x15\x42\x0c\xa6\x2e\xaf\x14\x3e\xda\x40\x92\xa3\xc1\x20\x9a\x4e\xa3\x3e\x64\xf8\x07\x93\x1e\x2b\x6e\xe2\x11\xfe\x3d\x1a\x0c\x20\x5e\x90\xf0\x73\x1a\x8b\x71\x6e\xbe\x3c\x15\x10\xc8\x68\x53\x0d\xc1\x2e\x15\xe7\xe3\x89\x32\x01\xd8\xbf\x8e\x3c\x6c\x81\x6e\x0c\x8f\x3b\x4a\x7b\xa9\x6f\x8f\xf1\x0b\x38\x02\xa4\xf9\xe1\x33\x56\x24\xaf\x7e\x7c\x0b\xc8\x57\xd3\xf7\x1f\xde\x7d\x7c\xf7\xf1\xa7\xf7\x97\xd3\xcb\xff\xf8\x78\xf9\xf6\xea\xf5\xbb\xb7\x57\x83\x01\x4d\x2e\xdf\xfe\x35\x81\x27\x2f\x5d\x91\xab\xe4\x95\x6e\xd7\xda\xf0\x83\x63\xca\x68\x15\x9b\x12\x6e\x69\xf0\xd6\xa4\xb0\x48\xb7\xb3\xb2\x58\xb0\x9b\x8d\xe5\x6e\x7c\x5e\xe7\x14\xdf\x71\x66\xa3\x9f\xd4\x01\x6f\x71\x3e\x0d\x0f\x25\x1f\xf9\x45\x05\xcc\xd7\x35\x56\x6a\x5e\x5a\x7d\xab\xee\x4a\x9b\xac\xba\xbb\xbb\xe2\x9b\x75\x54\x74\x77\x71\x24\x93\xe7\x14\xbb\x3e\x71\x0f\x55\xbd\x87\x50\xb9\x81\x55\x7d\x0a\x3a\x7e\x88\x38\x0c\xb7\xdc\xc3\xbb\xca\xbf\xa9\xda\xd9\xe2\x4c\xb8\x85\x36\xc3\x01\x8a\xa5\x17\xc7\x84\x1a\xa4\xd4\x77\xc2\xf0\x8a\xb5\x6d\x76\x02\xd2\x08\x3a\x38\x59\x81\x2c\x59\xee\xbe\x4a\x84\xbc\x4a\x38\xcd\xaa\xb2\x98\xde\x31\xb1\x9c\x42\xf3\x53\xb0\x4b\x17\xd3\xa9\xbd\x5c\x68\xb8\x8a\x35\xc2\xa2\xd6\x60\x7d\xd1\x8f\x85\x75\x9f\x98\xff\xf8\xe1\x87\x4b\x13\x9a\x40\xc1\x2d\xc2\xfb\x46\xcf\xeb\x56\xc3\x8c\xb6\x8b\x99\x5b\xc5\xb4\xde\xca\xe8\xfb\x92\x55\xeb\x4c\xcc\x96\x26\xcb\x0a\x52\xae\xaf\x7d\x03\x15\x28\x7a\xf2\xb3\xeb\xaf\xc1\xce\x0e\x05\x14\xc2\x5a\x1e\x68\x70\xdc\xd4\xe6\xa6\x71\x94\x55\xf7\xc5\x2c\xc2\x26\xc9\x0b\x4f\xae\xb3\xd9\xe7\xeb\x0d\x2f\x28\xb7\xf1\xbb\x71\xa4\xe3\x3a\x22\x95\x69\x0b\x02\x57\x51\xa3\x9d\x05\x80\xda\xd3\xbd\x6d\xf0\x64\x2a\x37\x2e\x4c\x2c\xa0\x0f\xe9\xb6\x54\x4b\x65\x61\xc2\x41\x30\x33\x51\x98\xc2\xf3\x95\x2b\x8f\x3a\x2f\xce\x5c\xe8\xce\x4b\xb0\xcb\x7f\x43\xce\x84\xfa\xf9\xf6\x7d\x4c\x1f\xa5\x8f\x76\x9c\x86\x7e\xa0\x6f\x7b\xda\xbc\x55\x07\x83\xf6\x45\xeb\xfb\x5c\xaa\x4b\x56\x32\x1c\xee\x97\xdd\x70\xf2\xf1\x71\xd7\x58\xc3\xdc\xf6\xb0\x27\xdb\x23\x5d\xdc\x1a\xb8\xfe\xf6\x92\xbb\xc9\xd9\x6a\x45\xf9\xb3\xdb\x2c\x67\xf3\x4c\x94\xfc\x48\xc7\x36\x4b\x8a\xb2\x20\x09\xb5\xcb\x54\xa8\xd5\x41\x91\x97\x86\xba\xd4\x00\xb8\x1f\xb3\x1b\x14\x43\x61\x91\xdd\xbc\x2a\xb9\x5a\x76\xf0\x7a\xe9\x78\x2a\x90\xa4\x0b\x5f\xb1\x35\x9c\x42\x8a\x64\x9d\x98\xf5\x27\x15\xe1\x09\xa8\x46\x8c\xa7\xf9\x56\xd7\x51\xac\x08\x2b\x98\x03\x65\xeb\x02\x42\x03\xf2\xa1\xf2\xf1\x7f\xb9\x37\x20\x8e\x5d\x9f\x00\xb7\x0c\xee\x80\x6a\x53\x01\x0b\x7a\xaa\xf0\x03\xc0\x6b\x35\x66\xd5\x47\xbe\x11\xcb\xfb\x66\x4a\x3d\xd7\x44\xdc\x56\x65\x18\x64\x95\x66\x36\x24\xbb\x42\x70\xf9\x8d\x79\xf2\xe2\xc7\xab\x8f\xef\xde\x4c\x3f\x5e\xfc\x61\xfa\xea\xdd\x87\x89\xef\xa6\x04\xab\x27\xb2\x9b\x37\x54\x64\xaf\x4a\x2f\xf7\x9e\x79\x61\x1f\x62\x2a\x29\x86\x3e\x49\xe0\x5e\x6a\x8e\x4b\xa5\xa3\x6f\xc6\x15\x6e\xd7\x72\x5f\xc0\xd0\x04\x6f\x48\xd6\xcc\x61\x5e\x24\xac\x32\xf3\xb9\x41\x83\x41\xae\x78\x55\x6f\xb6\x5d\x1a\xc2\x0d\x90\x44\xa4\xba\x99\x95\xab\x6b\x56\x00\x32\x7a\x8d\x1b\x19\xde\xdc\xde\xcd\x1c\x3e\x9a\x70\xc9\xf4\x6d\xce\x15\x8a\x20\xf5\xe1\x8f\xcd\xea\x2e\x9e\x03\xf8\x0b\x79\xfe\x3c\xa4\x35\x96\xb0\xea\xb5\x42\xba\x65\xff\x00\x38\xdc\xdd\x4e\x3e\x7b\x6f\x38\x37\x00\xd5\x80\xe2\x7e\x9f\x87\xb2\x2a\x16\x08\x17\x9a\x1e\xb7\xa6\x48\x67\xd2\x29\x65\x59\xc9\x3d\x7b\xf4\xba\x7a\x0c\x11\x6a\xfa\x22\x3c\xca\xad\xb6\x93\x97\xf9\xe6\x5e\xdb\x3a\xae\xb9\x71\x7a\x3b\x52\x77\x9a\x9b\x72\x82\x1d\x92\x23\x77\x58\x15\x36\x56\xd2\xff\x35\xa6\x93\xc1\xa0\x1f\x43\x02\xa0\xc6\x73\x3f\xb6\x91\xa3\xc0\xe5\xa9\x68\xf9\xee\x2b\x0f\x85\x08\xf5\x0a\x29\xec\x9a\x5c\x68\x7e\xb6\x1c\x7f\x89\xf8\xa3\x96\x48\xd9\xc0\xbe\xd6\xe1\x79\xdf\x6d\xf0\x8d\x7d\x48\x0e\xb9\x15\x3d\x24\x95\xfd\x57\x79\x97\x18\xad\xec\x03\x6e\x16\xbf\x7e\x47\x2b\x5b\x27\x59\x82\xf3\xa8\x32\xa5\x92\x7b\x4c\x8d\xa6\x81\xdc\x79\xbb\x9e\x06\x76\x5c\x42\x7d\xdb\x33\xa1\xc9\x85\x7f\x2c\x66\x06\x49\x63\xc1\x29\xfd\x07\x8d\xc7\x13\x84\xe7\x84\x92\xe7\xd4\x5d\xda\x4b\xf0\xf8\x9d\x9b\x68\xa6\x37\x31\xc2\xcc\x66\x24\x29\x49\x07\xe3\xc4\xcf\x79\x4a\xc3\x90\x40\x17\xff\x44\x3b\x32\x5d\x95\xc0\x6b\x03\xde\x88\x00\x64\x32\xc0\x2b\x01\x4c\x07\x1d\x61\x24\x39\x4d\xcf\x73\x71\xe1\x67\x4f\xfd\x3d\x21\xc4\x1e\x14\xad\x4d\xb1\x4e\x98\xe7\x05\x79\xce\x09\x09\x3c\x82\x29\x4a\x39\x79\xee\x5d\x75\x16\xb9\x4b\x76\x64\x3b\x59\x9b\xd8\x33\xe7\xe7\x6c\x91\xbb\x4a\x52\x9c\x95\xdf\x31\x15\x74\xc4\x16\x31\x8f\xb5\x70\x2a\x67\xf3\x02\x3e\xb9\x44\xb8\xc4\x4e\x4d\x65\x1c\x30\x9f\x9e\xd6\x5e\x86\x21\x3f\xba\x8d\x40\x87\x26\xa3\x03\x1e\x99\x29\x7b\x7a\x0a\xf1\xfb\x6a\xd9\xd2\x56\x3f\xac\x2b\x05\x90\xa9\xd9\x27\xd0\xaa\x50\xad\x72\xd9\xaa\x9f\xed\x27\x44\xff\x30\x85\xfc\x7e\xd7\x0a\xf9\x41\x00\xfe\x47\xdf\x98\x10\x82\x66\xae\x4d\xf2\x71\x3f\x60\x31\x5c\x06\xfe\xdd\x68\x30\x88\xf9\x90\x30\x84\x65\x8b\xc5\x60\x20\xfa\x44\x9c\xcb\x9d\xd6\x27\x54\xee\x16\xe0\x7f\x83\x64\x44\xf7\x6a\x76\xc8\x69\x20\x96\x6b\x7f\x6d\xa4\x5e\xe2\x19\xc2\x34\x44\x5c\x81\x09\xdd\x57\x61\x84\xc7\xc5\x24\xd8\x4a\x77\x9e\x6c\xab\xc2\x6a\x74\x70\xe8\x6b\x79\xe4\x6f\x2d\xf7\xaf\xc2\x67\x9a\x0a\xbe\xdd\xee\x9d\xa7\x8b\x33\x01\x2d\x3d\x2b\x31\x6e\xac\x95\x43\x89\x0c\x0e\x0b\x92\x87\xa5\xe5\xf4\x07\x73\xe6\x60\x25\x9d\xff\x6d\x41\x48\xe1\x03\x92\x10\x5e\x7b\x48\x17\x41\x58\x58\xb7\x56\xc6\x3b\x85\x8e\xcc\x91\xfe\xa9\x3f\x87\x5f\x9a\xe1\x84\xab\x6c\x1d\x73\xff\x38\xab\x73\x22\x3b\x7b\xd7\xbc\x56\xad\xef\x10\xde\x1e\xc3\x11\x03\x17\x72\x29\xbf\x13\x26\xd4\x72\xbf\xea\x0b\xab\x0b\xe1\x8d\x85\xc2\x40\x0c\x5d\x71\x27\x40\x71\x3c\x08\xd5\x38\x1a\x4f\xa2\xf4\xd2\x64\xc7\xf6\x3e\xc1\x4b\x45\xed\x7f\x98\x71\xfd\x1f\x29\x36\x5a\x1f\x6d\xa1\xc3\x19\x6b\x84\x01\x16\x42\x51\xc8\xf4\x32\x6e\xb3\xcb\x5d\x23\x19\x49\x0e\x39\xe1\x34\x9b\xbf\x2b\xf2\xfb\x18\xe1\x3c\x7b\x74\x1b\xde\x70\x9e\x9e\x36\xdb\x53\xaa\x64\x4a\x46\xee\xe4\x2a\x9a\xec\xd5\x02\x75\x2d\x85\x43\x47\x09\x1b\x52\x84\x1d\x00\xec\x6e\xc7\x9f\xb3\x73\x4e\x58\xaa\x4f\x25\x61\x43\x8e\xce\xe8\x77\xfc\x0c\xb9\xe8\xfb\x09\xe9\x9c\xe6\xe1\xd0\x05\xb2\xd6\xd8\x68\xc6\xfd\x99\xbd\x76\xb8\xad\xfd\x53\x54\xc3\xe7\xbf\xb6\xe5\x02\xa8\x21\xa3\xf9\x8e\xc3\xc1\x91\x02\xa9\x54\x4c\x4f\x4f\x11\xb6\x94\xa3\x70\x11\xcf\x8c\xf0\x33\xf6\x9c\x8c\xce\x98\x02\xb6\xe8\x1a\x29\x43\xbe\x59\x81\x59\x92\x56\xe3\x6c\x3e\x87\xcd\x66\x92\x33\xaa\x51\x79\x8b\xd1\x2c\x60\x99\x6a\x8e\x6a\xac\xaf\xdf\x83\x0d\x74\x94\x09\xda\x58\x66\x55\xf0\xb2\x52\x44\xbd\x80\x7b\xfa\x25\xad\x66\x2f\x55\x86\x65\x29\xf0\x3c\xa0\xcc\xf4\xb7\x3a\x34\xb2\xcc\xaa\x1f\x58\x25\x68\x01\x59\x27\x15\x6f\xf9\x7f\x95\xb5\x6b\xa6\xf2\xf2\x20\xc0\x6e\x3d\x58\x52\xa1\x8e\xa8\xd0\x56\x78\xf2\x42\x09\x5c\x7e\x5a\xa1\x16\x9d\xed\x2e\xe8\x3e\x5c\xca\x19\x41\x6b\x7e\x32\xde\x43\x8d\xd9\x72\x8d\xb6\x2c\x1f\x81\x85\x82\x21\xf7\xe2\x29\xfc\x03\x5d\x90\xd1\x59\xf1\x1d\x3f\x2b\x8c\x71\x53\x1f\x15\xb3\x63\x20\xdb\x82\xb1\x51\x30\x5c\x68\x45\x6f\x40\x3f\x6e\xa8\x90\x7d\xa5\x5f\x24\x25\xd1\xbd\x36\x00\xe2\xcd\x70\x0a\x4d\xa1\x74\x8e\x1f\x88\x34\xa9\x31\xd0\x2e\x3b\x50\x35\xc8\x37\x71\x18\x5a\x69\x5a\x88\x95\x12\x85\x3c\xe7\x63\x36\x21\x76\x68\xea\x29\xc2\x1c\x5a\xfb\xfe\x3e\xfd\x82\x17\x2c\x17\xb0\x01\x1f\xd9\xf0\xb6\xd1\xe8\x60\xa0\xe3\xef\x0b\xc9\x68\x71\xb9\xcd\xff\x0e\x56\x36\xdb\x70\xd0\x9c\xea\xb5\x4d\xcb\xfa\xd4\xc8\x3c\xd8\x93\x5c\xe4\xe7\xab\x2a\xdf\xdf\xc7\x9d\x2d\x2d\xc2\x9b\x01\x99\xfe\x5b\xe5\xf5\xb0\xda\xe5\x17\x0c\x04\xb6\xc6\x68\x57\x0e\x31\x54\x15\xf1\x1b\xd4\x2f\xdb\x6d\xd1\x5b\xca\xef\xdb\x8d\xdd\xf8\x8d\xb1\xea\x12\x4a\x35\xdf\xb6\x5b\xcb\x8a\x8e\xb6\x6e\xc3\xb6\x2e\x0a\xaf\xa5\xdb\x7d\x2d\x71\x3a\xdf\x00\x30\x9d\xc3\xea\xea\x5e\x65\xbb\x2e\x90\xda\x99\x13\x1a\x73\x2c\xec\xbe\x46\x36\xdb\x05\x66\xc5\x6d\xf9\x39\x4c\xc3\x50\xec\xdd\x3c\x8c\x3c\x2f\x7c\x3d\x0a\xbf\x7f\x0d\xd5\x51\xcc\x94\x0a\x45\xb2\x55\x58\x94\x8a\x35\x6a\xb3\x10\x92\xc7\x43\x35\x06\x39\x6f\x26\xba\x37\x02\x25\xcf\x15\x7e\xbb\x2c\xc9\x8a\x59\xbe\x99\x1b\xf4\x6b\x8f\xa3\xf5\xaf\x98\x11\xaa\x71\x55\x72\xb5\x55\x14\xff\x63\x27\x2d\xf8\x0c\x3b\xb0\x44\x16\x8f\x63\x8d\x28\xee\xee\x94\xee\x6c\x35\x19\x64\xab\xc1\x15\xf1\xd9\x9f\xcc\xfa\xb0\x68\x89\x22\x43\x78\xa3\xd4\x5b\x9a\xfd\x41\x71\x05\x81\x87\x8b\xd8\xb9\x7f\xd4\xd6\x6b\x01\x94\x4b\xec\x17\xcf\x8f\xd1\x30\x3e\x4a\xd0\xf3\xb8\x9e\xa5\xcd\x68\x8e\xef\x98\x58\x96\x1b\x61\x8c\x37\xf0\x55\x6e\x8e\x82\x6c\x24\x3d\xcd\xd0\x12\x42\xcf\x05\x79\x2e\xfa\xc4\x32\xd9\xb4\xd7\x31\xef\x02\x48\xfd\x55\x93\x9b\x7b\x87\x73\xc7\xcf\xe9\x54\xc1\x41\x3e\x81\x80\xc9\x1f\xa9\xe8\xa9\x06\x6b\x45\x25\x8b\xae\x88\x28\x2b\x2a\xca\x25\xc1\xf5\xf9\x85\xa9\x3b\x0a\xba\x98\x91\x70\x83\x62\xf7\xfe\x89\x91\xbb\x50\xb1\x54\xde\x4c\x4d\x5b\xbc\x13\xcc\x9a\x2b\x5b\x35\x19\x5b\x33\x48\xbf\xca\x08\x5b\x38\x8b\x75\xb9\xd6\x9d\x74\x7d\xb4\xce\x49\x64\x59\x0c\xb9\x6f\x1d\xdf\xdf\xe6\x9c\x9e\x9e\x86\xc7\xca\x7d\xe5\xd3\x53\x7c\x0a\xc7\x11\x22\xa5\x6d\x97\xba\x03\xaf\xcf\x56\x57\xb4\xb3\xab\xd1\x9e\x8e\x46\x52\x54\xc2\x9b\xc2\xef\xa6\x35\x7d\x23\x98\xb4\xa0\xd0\xde\x79\x1b\xf9\xb3\xc5\x25\xd9\xac\xa8\xa9\x72\xcc\x94\x79\x3b\xb5\x71\x44\x75\x63\x71\xf3\x4b\xdc\xa6\xb2\xbb\xa5\xa2\xfe\x30\x4d\x17\x8d\x19\x83\xea\x7a\x03\xfb\x3d\x86\x1b\xb8\x29\x14\xf8\x1f\x27\xe7\xd0\xcd\x59\x27\xa3\xb1\xdb\x01\xa2\x27\x38\x71\x6c\xbb\x16\x86\x23\x95\xa0\x2c\x5c\x16\xde\x60\x35\xfc\xbe\xe0\x9b\xa0\xa9\x6b\x7a\xc3\x8a\x10\x37\xa9\x42\xb1\xe3\x89\xdb\xe0\xa2\xfc\xe9\x53\xe4\xf5\x64\x06\x3f\xe6\x13\x4f\x0d\x2c\x12\x5a\xcc\xdb\xcd\xea\xcf\xce\xe6\xf3\xd6\x3e\x69\x92\x1d\x7d\xe0\x83\x23\xd9\xac\xee\xed\xa0\x43\x1f\x83\x03\xdd\x90\xd2\xa6\x7a\x23\xd0\x10\x52\x07\x06\x0c\x3a\xd2\x40\xfb\x75\x05\xab\xfd\xb1\x49\xd8\xae\x70\xe5\x08\x9b\xe5\x03\xc3\x8f\x1c\xd3\x89\x5c\x0c\xb5\x1b\x94\x26\x62\xd6\xa5\x58\x78\x5d\x78\x0a\xb6\x80\x45\xf5\x06\xe5\xeb\xe0\x3e\xc2\x98\xde\xe0\xf7\x64\x1c\xa9\x25\x8b\x26\xbd\x8f\x0a\x8f\x03\x05\xda\xb1\x46\x7a\x64\xd0\x35\xbf\x37\x2a\x31\x50\x0c\x06\xed\x92\x8f\x89\xb9\x23\x92\x24\x79\x2f\xdf\x5f\x90\x37\x38\xdb\xe3\x3e\x02\xb5\xce\xe3\x8f\x9a\x67\x6b\x74\x26\xaf\x56\xd5\x40\xe0\x36\x60\x84\xf1\xdd\x6e\x3c\xa9\x51\x7a\xa8\x40\x4c\xc9\x78\x82\xf0\x3b\xe7\xb2\x75\x4e\x53\xd3\x1b\x45\xca\x75\xef\x82\xbc\xf3\xf4\xda\x17\x8f\xd1\x6b\xfb\x31\xa0\xc7\x28\xb7\xff\x6b\xec\x0c\x5a\xaf\xad\x82\xa5\xbf\x5a\x87\xdf\x8a\xe4\xed\xf8\xe0\x43\xde\x24\x9d\x33\xf0\x1b\x20\xe4\x68\x6f\xcc\xe9\xd4\x0d\x78\xaa\x0c\xa4\x80\x9b\xf2\xba\x90\x1d\x84\x51\x78\xa0\x1f\xf2\xcb\x27\xcd\xa2\x35\xd6\x90\x7b\x2d\x0d\x4e\x58\xcf\x2b\x55\x63\x9b\xb5\x2a\x48\x66\xe8\x97\xef\x51\x9d\xb6\xe1\xef\x25\x2b\x6c\xb6\x56\x97\xed\x4a\x49\x71\xda\x07\x02\xc5\x36\xdb\x14\xa6\x38\x5a\xb0\x02\x20\x22\x5e\xda\x0c\x54\xa1\x2d\x56\xca\x1b\x2e\x39\x9f\xe4\xff\xb7\xf5\xa1\xa1\x87\x85\x51\x5d\x63\xd6\xb4\x37\x17\xfe\xe6\x61\x8f\xdb\x3c\x26\x4a\xe5\xbf\xf3\x31\x59\xdf\xff\xca\x33\xe2\x1b\x6e\xfe\xdb\x7e\xe8\xd7\x7f\x9d\x09\xfb\xf8\x6f\xfb\x69\x5b\x05\x0e\xd3\xd4\xe4\xcc\xe7\x46\xcd\xd4\x71\x39\xe2\xb2\xe8\x54\xff\x74\x57\x82\x3b\x49\xd5\x0b\x32\xe9\x71\xcd\x24\x55\xb4\x98\x43\x78\x4c\xa0\x6e\x2b\x17\x8b\x4e\xb3\x80\xe4\x8a\x0e\x0d\x4d\xc1\xdf\x3f\xa0\x5c\xa3\xbf\xc6\x32\xdb\x65\x72\x3c\x3e\x26\xe4\x38\x1b\xeb\x3f\x97\xf2\x37\x68\x96\x0d\xdf\xf6\xa7\xa8\x78\xcc\x14\xf9\x76\xdc\x6f\xe3\xe8\xb4\xc7\x81\xf2\x9f\x33\x21\x60\x9b\xf0\x37\x95\xef\x65\x23\x25\xaf\x1b\xf0\x10\x32\xfe\xbb\x7e\x82\x4d\x53\xd8\xbd\x06\xdb\xce\x58\x56\x9d\x24\xb3\xb2\x98\x65\xc0\x25\xb7\x8c\x1d\xce\xdb\xc3\x13\xa1\xab\xa0\x1f\xda\x2c\xeb\x77\x62\xc7\xd6\xc5\xb6\xc7\x41\xcd\x7d\x8c\xbd\x3a\x50\x6d\xce\x3d\xac\x7d\x48\x14\xe9\x02\x8e\x6d\x0c\xbb\x1b\x5b\x56\x8f\xde\x17\x49\xac\xda\x1e\xd4\x9f\x41\x1b\xde\x7b\x37\x5d\x50\xaa\x21\x09\x1e\x68\x23\x2c\xd2\xdd\xcc\x32\xab\x4c\x01\x9d\x1a\xca\x6b\xa0\x8b\xcc\x0c\x23\xab\xbf\x87\x4d\xf2\x37\x26\x96\xda\x4f\xb4\xb5\xd6\xe1\xeb\x60\xd9\x59\x31\xe3\x90\x61\xd1\xdb\xd2\x22\xb0\xb0\x86\x5b\x25\x86\x1c\x75\xaf\xf2\x32\x13\x4d\x9f\x30\x8a\xd0\x6e\x37\x42\x43\xc5\x6c\x3d\xb2\xd9\x56\x5b\xb2\xa9\xa7\xb2\x29\x51\xde\xdc\xe4\xd4\x77\xba\xda\xd3\x46\xbf\x3d\x9e\x1a\xcf\xb2\xd9\x92\x7a\xc9\xb6\xb4\x32\x66\x4d\xe9\xe7\x37\xa1\xbf\x95\xce\x13\xc9\x5d\xae\x02\x38\xcc\xaa\x6e\x48\xd3\x1f\x45\xb0\x1a\xf0\x1f\x8f\xf2\xba\x51\x5e\xb4\xff\x2c\xd2\xd4\xbc\xbe\x95\x17\xb6\x76\x67\xac\xde\xd3\x62\xce\x8a\x9b\x26\x0a\x69\xc4\xaa\x2b\x2a\x44\x2e\x39\x91\x0e\x03\x40\x2b\x77\xbb\x2d\xdd\x34\x63\xda\x37\x1d\x3d\x7c\x00\x35\x3f\x40\xae\xb0\xea\xd5\x26\x5f\xb0\x7c\x4f\x87\xed\xfe\x6c\x5d\x63\xe7\x0a\xde\xba\xc6\xda\xe3\x31\x35\xd3\xfe\x29\xf6\x4a\xca\x9f\x7a\x51\x9b\x43\xd5\x96\x66\x07\xa2\xc6\x03\x10\x35\x1b\x52\xfb\xbb\xea\x44\xb7\x70\xb2\xda\x54\x80\x9c\x56\x51\x11\x59\x52\xed\x2c\x49\x3e\xca\x5e\xf0\x8d\x0d\x9a\x4c\xf1\xb6\x31\xc4\x60\xfc\x35\xc2\x3c\x11\x4b\x5a\x80\xe1\x9e\xfa\xc9\xdd\x77\x3b\x1a\xe4\x7f\xd7\xb3\xd4\x6e\xdf\xb8\xb7\xf2\x70\x32\xe4\x86\xe2\x08\x73\xc8\x3a\x0f\x28\xd7\x5f\xd5\xba\xde\x6c\x3c\x18\xf7\x48\x19\x9f\x22\xf0\x08\x48\x4f\xfc\x29\x8c\x50\x6d\x94\x68\x35\xc8\x5a\xb4\x48\x59\x1c\xc9\x7f\x23\x84\x01\x92\x5b\xfe\x86\x3f\x22\x84\x41\x3e\xcb\xef\xe5\x23\xfd\xa7\x5c\xf0\x46\x50\x44\x73\xce\x03\x92\xe1\x6d\x1b\xbd\x76\x2e\x35\x09\x1f\xd3\x49\xd3\x3d\xef\x2b\xc9\x45\x13\xd8\xeb\x51\x91\x80\xff\xa5\xbc\xdd\x76\x3a\xb5\x83\xd7\x32\x3e\x57\x39\x06\x82\x14\x20\x1d\x32\xbb\xab\x96\xe8\x1a\x5a\x66\x57\x2f\x28\x97\xcb\x66\xfe\x8e\x10\xde\x14\xfe\x0b\xf7\x2b\x42\xb8\x91\x70\x44\xbe\x5f\x66\x55\x84\x6c\x53\x74\xfe\x6e\x6d\xde\xdc\x50\xa1\x7e\x78\xef\xd5\x83\x4a\xbe\x2e\xd5\x9f\x1d\x95\xab\xa0\x76\xd5\xae\xfe\xaa\xe4\x1f\xef\xd7\xd4\x6b\x45\x3f\xe9\x6a\xcc\x2b\xec\xda\x74\xe5\x19\x28\x3e\xe4\x5b\x66\x54\x20\x47\xed\xdd\x7d\x73\xfc\xed\xf6\xea\x1e\x14\xad\xc3\x57\xdc\x57\x45\xd4\xfd\x57\x6d\x69\xf5\x85\x6a\x33\xab\xcf\xf4\xff\x7e\xa1\xd2\x61\x74\x3c\xd2\xfe\x3d\x4d\x4f\xfb\xa0\x4c\x78\x7d\x59\xf3\x4d\xe0\x66\x1f\x56\xd8\x93\x81\xbb\x99\x4d\xc8\xf2\x3f\x86\x3c\x59\x77\x9a\x62\x30\x88\x83\x72\x26\xa3\x87\x56\x95\x49\x9e\x09\x17\x16\x0d\x15\x30\xde\x95\x5c\x7d\xa1\xe7\x1e\xd4\x56\xb7\x19\xdf\x9a\xd9\xc0\x7a\x8a\x58\x63\x4e\xca\x5a\xb9\xcf\xc5\x05\x29\x80\xe8\x77\x7c\x97\xdc\xdc\x84\xed\x76\xcd\xa8\xb2\x22\x8c\x06\xb1\xae\xd0\x80\x10\xbb\xed\x9a\x03\xdf\x93\xde\x56\x2c\xda\x13\xc0\x06\x83\x98\x1d\x9a\x80\x02\x21\xcc\x1c\x34\x26\xc4\xc1\x4d\xd5\x00\x5c\xe4\x8e\x7e\xd0\xf3\xcc\x6f\xb5\x0e\x6a\xb0\x3d\x95\x83\x41\x5c\x1e\x5e\x4f\x8d\x6c\xa3\x2d\x26\x08\xb3\xc1\xa0\x40\x83\x41\xff\xb4\x4f\x48\xcc\x40\x79\x71\xce\xac\xeb\xf7\xb8\xb0\x42\x5d\x89\x50\xca\xc6\x05\x1c\xe3\xb1\xff\xd4\xf3\x38\x34\x4e\x8a\x5f\xc3\xb9\x76\x01\x1e\x7e\x23\x6f\xf1\x6f\x19\xb6\xde\x00\x88\x7c\x7c\x58\x12\xce\x7e\x13\x32\x52\xa9\x24\x7c\x4a\xe0\x4c\xa3\xa9\x1c\x67\x71\x43\xe7\xda\x7d\x09\xec\x2a\xce\x21\x2a\xc2\x73\xe3\xcf\xb4\xa7\xac\xf5\x77\x8a\xea\x1e\x00\x10\x9c\xe4\x27\xf4\x8b\xa0\xc5\xbc\x72\x60\x6f\xc6\xbd\x12\xd4\xcd\x90\x6f\xbe\xe1\x5d\xa9\xee\x01\xed\x48\xf9\x92\x71\x71\x0f\x5e\x78\x64\x14\xbe\x21\x2a\x90\x1a\x1e\x29\x63\x14\x94\x25\xfd\x51\xf0\xd0\x56\x6b\x0c\xd8\xaf\xde\x78\xf5\xba\x82\x0c\xd6\xac\xb8\x21\xfd\xd3\xee\x22\x1f\xb3\x9b\x03\x0d\x7c\xa0\xb7\xac\x62\x65\xd1\x1e\x62\xbb\x9e\x79\x52\x8f\x45\xf2\xfe\xc3\xbb\xf7\x97\x1f\x3e\xfe\x34\x7d\xf9\xfa\xe5\xf4\xc5\x1f\x2f\xde\xfe\xe1\x72\x62\x1d\x51\x39\xd5\xdb\x84\xc6\x48\x16\x6e\xc5\x31\x59\x84\xd8\xf1\x04\x82\x43\xcf\xe3\x76\xc5\xa0\x5f\x94\x1a\x2b\xde\x03\xc5\xed\xd8\x91\xbc\x28\xb2\x46\x24\x14\xaa\x3b\x42\xbe\xa6\xce\x95\xb0\xb9\x4b\xac\x0a\x02\xd5\xc6\x80\xa9\x5f\x37\x94\x96\xce\x08\xdd\xe4\x6b\x1b\xf3\x1d\x21\x39\x0a\x67\xf1\x74\xf9\x0c\xf4\x33\xdb\x3e\xbc\xaa\x5b\x4f\x41\xc5\xda\xec\xc4\x46\x8e\x25\x81\x2d\xd5\x8d\x5a\x9b\xed\x3b\xa6\xcd\xa0\x33\xf8\xfb\xd5\xe6\x91\x36\xfb\x77\x3c\x41\x18\xbc\x82\xf6\x6c\xf8\xc1\x80\x3e\xdf\xf7\x6e\x1f\xc3\xdf\x9a\x18\x80\x83\x40\x2e\x59\x57\xd0\x9e\xb6\xbb\x07\x1e\x42\x66\x4b\x58\xbf\xdc\x76\xe7\x67\xec\xbb\x02\xfc\x8c\x82\xf7\x63\x36\x09\xbd\x13\xcd\xf4\x32\x8d\xe6\xd0\xd9\xf5\xa8\xb7\xef\xb8\x3f\x3d\xad\x03\xc6\xd0\x74\x43\x27\xf5\x0d\x15\x27\xaa\x7e\xbc\x6f\x05\x5a\x74\x61\x5f\xea\x91\xf6\x8c\x05\xd4\x83\x9e\x07\xf9\xa1\xcc\xe4\xa4\xa3\x2e\xca\x63\x46\x0c\x87\x64\x56\x16\xd5\x66\xa5\xc2\x40\x9b\xc7\x28\xa8\x5c\x57\xee\x73\xa8\x03\xb5\xf6\xfc\x33\x9e\x52\x9b\x86\x0c\x6d\x0b\xed\xfb\x2c\xa5\x76\xe5\x75\xf2\xb4\x40\xb8\x20\x23\xd4\xf3\x62\xf4\xba\xf6\x71\x4f\x32\x15\x61\x64\x01\xc3\x14\x17\xd8\x26\xec\x65\x85\x9b\x42\x54\xd7\x53\x15\xc9\xda\x75\x88\x9d\x9a\xaa\x6b\xaf\x9f\x8f\xd2\xae\xd5\xc6\xc5\xfe\xf9\xec\x1d\x4f\x36\xd4\x60\xf7\xb8\xf7\x8e\x9c\x21\x24\xfc\x9e\x76\x2d\xe7\xc6\x1b\x54\xd2\x5e\xd4\x7b\xfb\xa7\xa8\x3e\xa2\xcc\x96\x0e\x06\xfd\x40\xc3\x60\x26\xbf\xed\xa5\xad\x32\xad\xe0\x0a\xed\xb9\xaa\x64\x8f\xc7\x4c\xcc\xb6\xb3\xba\xb6\x15\xef\xf5\xed\x6e\x55\x30\xa3\xa9\x1f\x60\x08\x62\xb4\xed\x2e\xd2\xf0\x8f\xc6\x4c\x8f\x6c\xcf\x92\xa9\x22\x3a\xde\x93\xf7\x4a\xd8\xe0\xe5\xb0\xb1\x91\xdb\xc3\xb4\xbb\x67\x58\x3c\x65\xe8\x2c\x86\xb0\x9f\x3d\xe4\x44\x3b\xfb\xb4\x5f\x3c\x2f\x51\x93\x32\x7b\x44\xa8\xec\xa0\x24\x96\xc3\xe8\xde\x4b\xea\x6b\xea\x60\xef\x6d\x1f\xe2\x69\xc2\xe6\xeb\x80\x96\xd9\x9c\x96\x0f\x30\x2b\x52\x64\xf2\xcf\x62\x9b\x65\xd9\xed\xfa\x40\x9a\x4c\xdb\x1e\x6d\x6a\x17\x3e\xcc\xda\x20\x14\xb8\x27\x40\x96\xc3\x36\x29\x7d\x60\x3c\xe7\xc7\x1e\xb8\xb4\x7b\x94\x3e\xa3\x66\x66\xf2\x20\xc9\x3a\x82\xdf\x43\x3d\xff\xa2\xec\x60\xfb\xda\x1c\xd0\xde\x3b\x64\x1f\x5b\x68\x16\x01\x94\xf6\x07\x17\x41\xc7\x1a\xb9\xa0\x70\x8a\xce\x9b\xb7\x09\xd1\xd7\x8d\x0e\x00\x1f\x17\xca\xff\xa3\x19\x2e\xee\x51\xdb\x49\xc8\x07\x1e\xdf\xc0\x78\x22\x2b\xa3\xb4\x39\x82\x90\x9b\xad\x7d\x3d\x4d\x8e\x73\x93\x93\x8b\x05\x1e\x6e\x78\xdb\xf8\x5c\xa5\xa3\xce\x72\x96\x55\x5e\xac\x3f\xfa\x76\x91\x17\x10\xd6\x73\x24\x08\x4e\x17\xc6\xfd\x61\xc9\xd2\x3a\xc5\x1c\x93\x7c\xe9\x70\x86\xb0\xfd\xa2\xe8\x57\x60\x62\x3c\x02\x86\xbf\x25\x98\xea\xba\xbf\x7d\x98\x70\x87\x70\x3a\x23\x99\xd6\x71\x39\x74\x2e\xb5\x91\xf0\x9c\xa8\xbc\x2f\xd3\xbf\xd1\xec\xf3\x15\x15\x78\x09\x0f\xe4\xaf\x37\xd9\x1a\x2f\x4c\x90\x6f\xcf\x8f\x88\x45\xdb\x45\xa2\x1c\x23\x76\x3b\xcf\x59\x2a\x8c\x69\xf5\x31\x73\x4a\x0d\x74\xa0\xd0\x74\x6c\x52\x7b\x61\xb9\xe9\x8a\x50\xad\xd2\xa0\x45\x26\xfc\x90\x7c\x48\x65\xdc\x8c\xd3\xc7\x1b\x62\x1b\xa9\x06\x83\xca\xe6\x2f\xb3\x99\x85\xfa\x80\xef\x98\xbb\x17\x73\xe2\xa7\x3c\x13\x08\x2f\xc9\xe8\x6c\xf9\xdd\xdc\x38\xfb\x2f\x8d\xb3\xff\x82\xcc\xc7\xcb\x09\x5e\x13\x31\x5e\x4c\xf0\x4a\x9d\xe8\x39\xad\x66\x9c\xad\x45\xc9\x1b\xe7\x78\x21\x39\xbe\x5b\xd7\xe9\x0a\xc2\x47\x6f\x55\x72\x1d\x39\x32\x13\x1e\xb7\x40\xcf\x9f\x9e\xaa\x1e\x6e\x08\x1d\x2f\x26\xbd\x35\xb9\x39\x87\x84\x25\xab\xec\xb3\x71\x1c\xbd\x41\x46\xb3\xb3\x06\x01\x31\x78\xb9\x46\x35\x5b\xc4\x33\xf9\x59\x1d\xad\x5e\x9b\x56\x01\xfb\xc2\xcb\xdd\x76\x8d\xd7\xa8\xae\x6f\xcf\x57\x89\x32\x34\x2d\xf0\x1a\xa5\x2e\x62\xdb\x21\xf1\x25\x6d\xc0\x8a\xdd\x6e\x01\x39\x75\xce\x65\xdb\x64\x9d\x76\x95\x89\x65\x83\x35\x55\xfa\x07\x81\x30\x4f\x36\x05\x84\xce\xfa\x38\x16\xb0\x0f\xef\x09\xb7\xd0\x5d\xe0\xa2\x53\xc5\xe1\x86\xb8\xb7\x1b\x62\x4a\x46\x67\xd3\xef\xee\xcd\xea\x4c\x87\x43\x04\x0b\x01\xa9\xbe\x32\x41\x7d\x8e\xef\x7e\x3c\x9d\x24\xe0\x1a\xa5\xfe\xac\xee\x8b\x19\x24\x05\xce\x7c\x67\x20\x8a\x23\x39\xc2\xc8\xe4\xc4\x0b\xff\xe1\xa8\x56\x6a\x96\xdb\x30\xa1\x9f\xe2\x37\xc6\x3c\x79\xf7\xb7\xb7\x97\x1f\x26\x26\x93\x9f\x0f\x01\x0a\x67\x2a\x70\x29\x3f\x83\xa0\x5f\xa3\xf3\x07\xae\x15\x8a\xa2\x58\xe0\x35\xf8\x2f\x1d\x28\x10\x23\xf2\x5c\x24\x81\x1e\x40\x03\x93\x68\xb0\x10\x94\xb4\x66\x57\xca\x3d\x63\x9e\xfc\x70\xf9\x87\x8b\x17\x3f\x4d\xd5\x50\xe5\xd8\x6b\x7d\x5d\x34\x5c\x48\x32\xe5\x7f\x0b\x24\xa1\xe1\x1c\xa1\x35\x4a\x20\x17\x7a\x0c\xb7\x6f\x6b\xdd\xf8\x9c\xb8\x89\xd6\xad\x1a\xe5\x69\xb3\x0d\x18\x67\x67\x23\xac\xb8\xe9\x6c\x45\xd6\x90\xcd\x38\x27\xce\x85\x82\x04\x00\xeb\xbd\xe0\xf7\x5b\x68\x47\xbf\x36\x4d\x68\x4b\xdf\x76\x91\xcc\x69\x4e\x05\xd5\x8f\x7d\xef\xfa\x50\xc7\x52\x8b\xf2\x4a\x61\x10\x1a\x36\xac\x03\xcd\x40\xa8\xd0\x04\x55\xf0\xf2\x8b\xa0\x85\xe4\x3e\xce\xa3\x34\x1a\x76\xbf\x8a\x51\x1a\x45\x5a\x21\xfb\xe9\xbb\x27\x5b\x38\xcb\x3a\xad\x9d\x1e\xaa\x33\x4d\xbf\xb2\x8e\x9f\xf6\x55\x6b\x97\xb9\x51\xd6\xa9\x69\x6e\xc3\xe6\xae\x4e\xfd\x64\x4b\xeb\xe7\x9f\xea\x4a\x40\xca\x2e\xa5\x2c\xb4\xdf\xa4\x36\xb7\xd6\x20\xaa\x0a\x36\x53\xdf\xc9\xcc\xf8\x63\x27\x0e\x68\x46\xee\x0d\x2f\x80\x0f\x53\xd3\xb0\x36\x93\x38\x24\x9b\x50\xe1\xde\x07\xfd\x97\x02\x87\x90\xdd\xc4\xad\x4c\x65\x2e\xe1\xb6\xff\xdd\x0c\x77\xcd\x06\x45\x08\xa5\xae\x31\xbc\x8a\x99\x53\xb7\x17\xe7\x34\xbd\xf1\x01\x56\xbc\x48\x39\xcc\xcc\x78\xf5\x11\x08\x6d\x63\x72\x0b\x7c\xd0\x2f\xf0\xcc\x6b\xe3\xc0\x0c\xc0\xde\xd1\x8d\xfa\xf5\x7d\xe6\xdd\xde\xaf\xbd\xb9\xbe\x21\x07\x83\x78\x6e\xb6\x22\x45\x78\xa9\x00\x2e\xe4\xfc\x0f\x06\x4b\xa0\xc8\x6a\xe8\x0d\x9f\xb9\xf6\x50\x10\x42\xe1\x27\xa9\x94\xbd\x87\x8f\xf5\x9e\xe1\x5b\x67\x7c\x30\xac\x74\x5c\x05\x0e\xef\x40\x12\xe4\x33\x7a\xa6\x20\xd2\xb4\x00\xe2\x2c\x0e\x90\x55\x72\xb3\xa6\x1c\xf6\x57\x6d\x0d\x10\x41\x3f\xaf\x35\x1a\x9a\x1f\x19\xe0\x43\xa4\xf9\x23\x5b\x29\xbc\xa8\x36\xde\x92\x9b\xde\x18\x61\x7e\xf0\x56\x16\x9e\x19\x8c\x27\x53\xd9\xe4\x6e\xb7\xad\xed\xc9\xc8\x66\xcb\x17\xda\x3e\x17\xb8\x2a\xa9\x53\xe1\x77\xa4\x7d\x5c\xb7\xf5\x99\x4f\x80\x83\x85\xb6\xc1\x1a\x2f\xed\x60\x2a\x88\xb1\x45\x2a\x37\x38\xf3\x40\x16\x4c\xf2\x36\x66\x06\xc5\x7b\x5e\x0c\x6e\x09\x1c\xb5\x1e\xa4\xa4\x9d\xe1\xfa\xdb\x8d\xb6\x04\x11\x51\x78\x50\x4e\xce\xd6\x45\x07\x83\x38\xa6\xa4\xb1\x9b\x10\x52\xee\xf4\x2f\x1c\x3d\x81\x8f\xc5\xde\x06\x94\xe7\x92\xfa\xbd\xbb\x65\xb5\x3d\x6b\x0e\x4a\xf9\x1f\xaa\xa1\xbd\x5b\x84\x23\xa1\x7d\x42\xda\x80\xa3\xe7\x34\x55\x43\x34\x1d\xe8\xf9\xed\x3e\x3a\x92\x83\x32\xc7\x07\x6d\xe7\x40\xf4\x69\x10\xb2\xe5\xc6\xd6\x13\x83\x81\xb0\xfb\x22\x38\x5d\x1d\x67\xc8\xc5\x9d\x58\x73\xa7\x8f\x84\xa2\xae\x49\xcd\x82\x6c\xbb\xf9\xd1\x54\xe0\x16\x6a\x14\xaf\xd5\x74\x96\x8e\x0f\x84\x61\x59\xe6\x33\x73\x2f\xf8\x60\xe0\x12\xa8\xe3\x8a\x6c\x6b\x9c\x93\xd1\x59\xee\xc2\x4e\xf3\xe1\xd0\xb2\x41\x1b\x42\xc7\xf9\x04\xcf\x02\xe6\x75\x83\xf0\x9c\x8c\xf0\x92\xcc\x4c\x95\xf9\x77\xcb\xb3\xb9\x63\x60\x67\xe3\xb9\x64\x60\x37\x92\x1f\x54\xe9\x7e\x45\x17\xc7\xb8\x22\x95\xe2\x18\x57\x2d\x3e\x74\xf5\x30\x1f\x9a\xc9\x0f\xe9\x68\xf5\xd6\xb4\xda\xe4\x43\x6f\x25\x9b\x58\x01\x1f\x69\xa6\xbf\x92\x0d\xdd\xda\xbb\x8d\x64\x09\x2c\xea\x47\xfd\x5b\xe5\xf3\xab\xcc\xad\x79\xab\x9d\x82\x12\x2f\x45\x08\xc2\xb7\x09\xab\x80\x14\x92\xfe\x08\x7e\xbc\xa1\x62\x59\xce\x49\xff\x14\xf7\x59\xf2\xc7\x8b\xab\xe9\xdb\x8b\x8f\xaf\xff\x6a\x92\xc1\x1a\x66\xd9\x97\x72\xee\xfd\x5f\x7b\x64\xae\x5b\x2f\x2a\x4a\x73\x83\x38\x04\x19\xb9\x76\xe7\x52\xfb\x74\xa1\xed\xb5\x7f\xc0\xf6\x27\x1b\xf0\x1b\x17\xc9\xeb\xb7\xaf\x3f\x4e\x5f\x5d\xbc\xf8\xf8\xee\xc3\x4f\x8d\x3e\xee\x3b\xfa\xb8\x6f\xf4\x51\x2b\xfe\xf9\xd6\x33\x01\x4f\x1f\x23\xa8\x7b\x49\xf2\xfe\x99\x06\xe0\xdf\x14\x87\x5c\x0b\xc3\x8a\x0b\x62\xfb\x2d\xa9\x46\xab\x6c\x33\xf1\x18\xe6\xaa\xc5\x24\x36\x4d\x03\x72\xd6\xba\xdc\x0d\x57\x30\xae\xf7\x90\xdc\xd5\x39\x8f\xd1\xdd\x4e\x69\xb0\x17\xac\x70\x9d\x81\xab\xb3\xa5\xe5\xb1\x73\x0d\xf1\xb8\x46\x04\x70\x2e\xea\x45\xc0\xff\x59\x28\x1d\x57\x58\x11\x75\x54\xcb\xb1\xc1\x11\x01\x67\x6b\xe5\x0c\xcb\xcb\x19\xad\xaa\xd6\x77\x3a\x66\xdb\xd3\x74\x37\x4b\x61\x65\x70\x76\x82\xbf\xa7\xa4\x62\x98\x79\x5a\x06\xe6\x7a\x90\xc7\x93\x25\x6f\x2f\xde\x5c\x5e\xbd\xbf\x78\x71\x79\x45\x84\xf7\x23\x78\x33\xfd\xfe\xa7\xe9\xeb\x97\xc1\x7b\xf5\x48\x35\x2d\xc7\x7d\x91\xe7\x44\x78\x3f\xdc\x14\x62\x96\x5c\xdf\x43\xf2\xe8\xc6\xe4\x3e\xe6\x08\x7c\x0b\x35\xd5\x61\xcd\xd3\xc3\x0a\xa6\xaf\x4f\x0d\xd9\x05\x7b\xb7\x17\x31\xfa\xdb\xe4\x20\x6f\x24\xd1\x23\x7b\x4e\x5e\x66\x4f\x9e\xc5\x88\x92\xf4\xed\x64\x0a\xc3\xb3\xe9\xef\xfe\x4c\xef\x5b\xe7\xac\x25\x23\xb5\xc5\x8e\xc1\x80\x26\x8b\x8d\xda\x0c\x35\x50\xc1\xca\xa3\x81\x59\xe3\x80\x64\xe6\x36\xb1\x37\x89\x05\x6e\xd0\x6c\x42\xe6\x71\x79\x1d\xdf\x58\x75\x3d\x0b\x05\xad\x7f\xc2\x67\xb6\x46\xed\xf3\xa6\x35\x42\xbd\xc7\xed\xf9\xe3\x5c\x7f\x7e\xb5\x1b\x8f\x86\x2d\xfe\xed\x5d\xfc\xd4\x72\x14\x76\x41\x6c\x30\xd2\xd6\x77\x80\xc4\x45\x93\x51\xd4\x52\xa3\xf5\xe5\x3e\x4e\xd5\x6d\x33\xf4\x3c\x7a\xfa\xfc\x63\xfe\xcd\x03\xf7\x14\xa3\xde\x44\x7e\x6f\xa4\xdd\x88\xe4\xef\xc8\xa9\xe3\xfc\x57\x36\xb1\x4a\xa4\x0d\xe3\x7c\x5c\xe8\x1c\xda\x68\xb2\xdb\x19\x30\xba\x9e\xaf\x39\x21\xec\x5c\xb4\x13\x76\x80\x2f\x5e\x04\xab\x12\xa1\xd4\x43\xb1\x63\xf2\x5e\xf3\xa5\x42\x00\x1a\x3f\x67\x44\xc3\x8a\xa7\xa1\xc8\x68\x5a\x96\x05\x5c\xce\x99\x0e\x30\x6e\xd9\x1d\x64\x96\x71\x20\xf4\x3a\x21\x37\x27\xdb\x68\xac\x06\x60\x20\x8f\x27\x51\x6a\x13\xf2\x60\xfb\xf2\x2d\x80\xf0\xc9\x77\x1a\x8e\xcf\xbd\x52\x4c\x81\x7c\xa5\xbd\x13\xdd\x2b\x23\x05\xc9\x97\x2e\xdf\x84\x7d\x7d\x51\xdd\x17\xb3\x87\xca\x48\x7e\x5b\xbe\x33\x5e\x6f\xe6\x85\xfc\x34\xf9\x1c\x3e\xcc\x3d\xfe\x40\x6f\x2e\xbf\xac\xe5\x0b\x4e\x6f\xe8\x97\xb5\xf7\x4a\xed\x1a\xf9\xca\x1e\x54\x3b\x50\x96\x43\x08\x24\x0c\x82\xe5\x34\x67\x95\x88\x6a\xbc\x35\x2c\x4f\x5a\xd4\xa4\x99\xdc\x63\xef\x69\x80\x5b\xef\x40\x3e\xec\x0e\x6b\xcd\x31\x00\xc0\x56\x48\xe3\x4e\x23\xb0\xad\x1d\xf0\x05\x40\x47\x8f\xe9\x84\x9c\x62\x81\xd8\x22\xe6\x3e\xc4\x08\x77\x78\xfe\xb6\x1d\x1f\xa6\x40\x47\x01\x41\xf6\x6f\xbb\x21\x5d\x7a\x9a\x2e\x54\x78\xf4\x35\xf8\xe2\x4e\x11\x70\x75\xbf\xba\x2e\x73\x32\x07\xf4\xd6\xd7\x7a\xf2\xf4\xc3\x36\x8e\x02\x78\x36\xcd\xac\xac\x45\x51\x2d\xe9\x1c\x83\x52\x19\xbf\x27\xed\x04\x0d\x7a\x70\x46\x55\xe7\x10\x54\x92\xa9\xac\xa7\xfc\xe6\x94\x52\xca\x3c\xc3\x90\x6e\x7f\xb3\x61\x73\x52\x62\x9a\xdc\xd0\x82\xf2\x4c\xd0\x3f\xc8\x07\xfe\xc2\x90\x08\x56\x2d\xb2\xf0\x53\xc3\x32\x46\xbd\x02\x8e\x76\x96\x98\x50\x16\xab\x7e\x91\x8d\x6a\x3e\xb5\x3d\x4e\x70\xee\x95\x42\xbe\xe3\x79\x05\x81\x5c\x4f\xf2\x21\x64\x91\xd0\xbd\xc9\x4e\xb0\x69\x5e\x20\x97\xd4\xc6\xaf\x59\x99\x9a\x76\x6c\x7a\xb5\x7a\x82\x38\xef\x61\xc2\xcf\xa3\x4a\x40\x8b\xa9\xc3\xd7\x94\x4f\x8b\x8d\x7e\x5a\xc1\x4a\x98\xb2\xf7\xfa\x69\x1c\x0d\xe9\x30\x42\x11\xae\xec\x38\xac\x5a\x59\x7e\xa6\x3a\x04\x84\x63\x9a\xdc\xf1\x6c\xdd\xce\x30\xd0\x9f\xfa\x19\x8b\x40\xcd\xf1\x4e\xe3\xdd\x0e\x06\x53\x87\x1d\x7a\x72\x15\x53\x7c\x15\x0b\x7c\xef\x68\xd6\x95\x8e\x8e\xa0\xd6\x80\x62\xa2\x03\x35\xc2\x7a\x17\xfe\xc6\xa5\x9e\x10\x59\x0d\x20\x72\x34\xd4\x60\x63\x68\x5f\x62\x8a\x6c\xb3\x15\x11\xba\xb8\x0d\x3f\xec\x2a\x9e\xdb\x97\xfa\xdb\xab\xb5\xe4\x7f\x1a\x57\x4c\x0b\xbf\x94\x0e\x06\x5d\x48\xbd\x01\x18\x90\xfe\xfb\x43\x4c\xf1\x08\x86\xae\xdc\xb4\x9d\x7e\x8d\xbc\xc4\x34\x99\x65\x85\x82\x1e\x23\x6f\xe5\x0d\x67\x80\xc8\x48\x93\x9f\x60\x8b\xf8\xad\xda\x33\x56\xf7\x38\x16\x06\x96\x1b\x62\xc3\x65\x17\x56\xbb\xd1\x7d\x49\x1a\x52\x32\x9e\x98\xd1\xbd\x56\x48\x26\x80\x0f\x43\x8d\x88\xd6\xb5\x06\x3f\x84\x6b\xd0\x28\x26\xe7\x53\x9d\x9d\x1f\xdc\xa6\x92\xdf\x63\x34\x22\x7e\x1e\xab\x6e\x37\x78\x2f\x6f\x95\xbb\xd4\xc5\xfe\x4b\x5d\x74\x5c\xea\x9d\x59\xab\x1c\xaa\x50\x14\x69\xfc\x44\xa3\xd2\x02\x18\xc5\xe2\xb9\x46\xe5\x8c\x70\x84\xf0\x3f\x62\x31\x2e\x26\x52\x00\xe6\x43\x42\xd5\x0f\x8f\x0c\x04\x7a\x66\x37\x76\xfb\xa1\xf6\x23\x3c\x43\x87\xa9\xfd\x4a\xeb\x48\x61\x66\x8c\xff\x06\x29\xe0\x07\xc4\x85\xb5\x16\xcd\x3b\x67\xdf\x6b\x45\xa2\x73\x8e\x57\x0b\xd1\xae\xa8\xd6\xe1\x7b\xad\x6e\xd4\xc5\x1c\x2e\x6d\x50\xf6\x6f\x5e\x29\x56\xed\x29\xa4\x47\xf0\x37\x3d\x02\xdd\xe2\xdf\x98\x58\xbe\xc9\x0a\x70\x52\xbf\xbf\xa2\x42\x50\x4e\x68\x22\x68\xc6\xe7\xe5\x5d\xd1\x7e\x53\x51\xb1\x59\xb7\x1f\xbf\xc8\x66\x4b\x4a\xa8\xaf\xe0\x7a\xff\xe1\xdd\x7f\xfc\x14\x3e\x52\x3a\x2f\x42\x93\x0f\xef\xde\x7d\x24\x34\x99\x2d\xe9\xec\xf3\x1f\xb3\xea\x4a\x0a\xf0\x84\x26\x7f\xf8\xf1\xf5\xcb\xe9\x9f\x2f\x65\xad\x1b\x2a\x5e\xca\x9b\x18\x76\x28\x4d\x14\x0d\xf4\xbd\x08\x18\x19\xb9\x7b\xb8\xb4\x3a\xa9\xe1\x90\xd5\x0a\x24\xcf\x57\xa9\x55\xf0\x4b\xfe\x95\x13\x1e\xcb\x4b\x51\xd1\x71\xc9\xb9\x24\x45\x79\x17\x4b\x1a\xee\xba\xcf\x75\xee\xc4\x8e\x3d\xa2\xae\xc5\xc1\xc0\x51\xe5\xe0\x05\x80\x69\xb4\xbf\x78\xa3\x1d\x1f\xc6\x13\x37\xe6\xb9\xbb\x20\x79\xfc\x69\x3a\x7d\xb2\xa5\xf5\x93\x6d\x3e\x84\x34\x88\x8b\xbc\x2c\x79\x0c\x7f\xf2\xac\x98\x97\xab\x18\xfd\xab\x37\xd8\x7a\x3a\xfd\xe4\xae\x51\xf8\xe0\x25\x5e\x90\xcd\xb9\x1a\x45\x3a\xef\xd9\x29\x5b\xf4\x54\xf2\xc4\x65\xaf\x31\xa9\xeb\x9e\xd2\xba\x3e\xfb\x39\x89\x15\x44\xcc\x4e\x6e\xec\x9f\x41\xd0\xdb\x01\x45\x52\x7f\xa3\x67\xf8\xb6\x43\x8b\x6e\x8f\x06\xbe\x21\xb7\xea\x4c\x74\x64\xef\x00\x6b\x0a\x42\x96\x5d\x88\xbc\xe7\x11\x7a\xfe\xf4\xf4\xbc\x63\x8f\xae\x12\x41\x2b\x11\xdf\x1a\xa6\x1e\xd5\xed\x84\x58\xfd\x51\xdd\x6b\xee\xa0\x9b\x5e\x97\x36\x35\xc4\x93\xf7\xc7\x28\x05\x52\x1f\xa8\xdb\xac\xc7\xb5\xa6\x92\x2d\x83\x86\xca\x25\x75\x13\x53\x84\xaf\xdd\xf5\x8f\x45\xad\xb7\xf4\xbd\x7e\x7c\x8f\xfb\xa7\x48\x4b\x7b\x77\x81\x09\x5f\x5b\x74\xdc\x85\x65\xb2\x28\x29\x07\x6b\x73\xeb\x69\xfb\x04\xac\xec\x65\xa0\x0f\x0e\x41\xb1\xd5\x78\x2f\x0f\x8f\x57\x56\xbf\xc3\x97\xc1\x80\x15\x54\x36\x58\x32\xad\xb7\x8d\x6b\x5b\xdd\xef\x5b\x8f\xcf\xb5\x4c\x8c\x43\x14\xea\x79\x7f\x13\xa1\xbd\xeb\x68\xb7\x05\x34\xc0\xb3\xd3\x55\x38\x2e\xea\x77\x40\xb9\xb8\xf1\xcd\xeb\xfe\x90\x3e\x84\x8d\xa9\xf1\x83\x3b\x2f\x97\xc3\x77\x12\xc1\xc7\xb6\x44\xe0\xc9\x0b\x6f\xea\x8e\xcd\x8b\xb7\xfa\x6e\x49\xdf\xd7\x44\x7b\xad\x7d\xa6\xf7\x55\x7a\x61\xda\xc2\x5b\x75\xb5\xb1\xc5\x7d\xfa\xa2\x26\x7f\xba\x7a\xf7\x16\x7f\x26\xcf\xfe\x73\xfc\xf3\xdd\x93\xc9\xf0\xc9\x33\x37\x59\x1f\x42\xc8\xfc\xfe\xa9\x49\xaa\xea\xa2\xe3\x20\xa3\xa8\xbb\xe1\xd2\xf6\x9d\x07\x25\x34\xbb\x9f\x1e\x12\x87\xdf\x83\x19\x8a\x91\xfe\xa8\x77\xcd\x69\xf6\x59\x05\x88\xd9\x1b\x9a\x90\x8f\xbb\x9d\x13\x99\xdd\x8d\x06\x85\x1d\xd6\xba\x77\xaf\x41\xd7\x96\xd2\xa5\xad\x22\x84\x90\x37\xe7\x2a\x23\xd9\xf9\xa7\xb1\x99\xcb\xf4\xc9\x56\x3d\xab\x27\x9f\xd2\x68\xec\xc9\x8e\xed\xc6\x1b\xc9\x62\x5f\xc8\x15\x56\x2f\x14\x11\x4d\x0f\xe4\x9e\x6d\xe4\x57\xf5\x1b\xaf\x7d\x46\xa2\x40\x45\x73\x3b\xbb\x1c\x95\xda\x7a\x67\xc2\x68\x5e\x30\x3e\xdb\xe4\x19\x9f\x44\x36\x80\x4e\xdf\xa0\x98\x9d\x77\xb0\x6c\xe2\xf9\xbf\xd9\xba\x5a\x0a\xee\xb9\xc8\x8b\x68\x1c\xe1\x2e\xac\x56\xd9\xf3\x90\x40\xcc\xdf\x79\x74\x12\xa5\x11\x3e\x89\x30\x7b\x4e\x4e\x47\x23\xb4\x2d\x86\xe4\x53\x92\x24\x27\x72\x16\x0d\x48\xe2\x68\x54\x9f\xac\x4a\x4e\x4f\x98\xa0\xab\xea\x93\x5e\xdf\x62\x48\x3e\xc4\x80\xf8\xaa\x43\x5c\xd4\x80\x87\x24\x3a\x99\x44\xb5\xdc\x7b\xc3\x53\x5c\xa0\xff\x8f\xb9\x77\xff\x6e\xdb\x46\x16\xc7\x7f\xf7\x5f\x21\xf3\x9b\xd5\x12\x6b\x98\x91\x92\xb4\x4d\x99\x32\xbe\x4e\xe2\xb4\xde\xf5\x23\xd7\x76\xba\xdb\xab\xea\x3a\xb4\x04\x5b\x68\x28\x42\x0b\x42\x76\xbc\x32\xff\xf7\xef\xc1\xe0\xc9\x87\x64\x39\x8f\xde\xcf\x39\x39\x31\x45\x02\x83\xc1\xe0\x35\x33\x98\x47\x7c\x0f\xde\x46\xe4\xf6\x11\x5f\x48\xc4\x77\x65\xb7\x59\xd2\x7b\xc1\x7e\xa2\x06\x7f\x56\xc5\x9f\x39\xfc\x59\x03\x7f\xda\xc4\x5f\xae\x24\x83\xbe\x3a\x8c\xe9\x80\x0d\x37\xf2\xad\xe4\x8f\x30\x45\x5b\x41\xdc\x09\xb6\x64\x9f\xd2\x96\x3e\x95\x5e\x9f\x9c\x80\xfc\x87\x77\x3a\x7c\x54\xa7\x03\x70\xbc\x72\x2a\xb9\x52\x6f\x2a\x19\x70\x37\xc6\x4c\xfb\x72\xba\x9b\x62\x2f\x05\xa8\xe3\xe0\x43\x8e\x45\xd5\xf2\xcb\x66\x1b\xcc\x37\xf8\x92\x7b\x66\x8e\xca\x9b\x09\xcd\x88\x8b\xda\x51\x71\xc6\xb4\x38\x1d\x55\xdc\xcd\x75\x28\xe1\xf6\xe4\x6e\x03\x31\x84\x8d\xcd\x6c\x4d\xfb\x7a\x6b\x82\xcd\xf1\xa0\x72\x0a\xc8\x37\x6f\x1b\xbb\x9e\x5d\x1b\x6e\x73\xfa\x4f\x4d\xb3\x90\x24\x04\x86\xe4\x7d\x1b\x73\x03\x5c\xe8\x46\x0b\x17\xf7\x1e\x1a\x7c\xd5\x58\x60\x9a\xef\x83\x83\xae\x6a\xa9\xe6\xb9\x6a\x65\x74\x4a\x85\x31\x55\x93\x8d\x26\xca\x11\x21\x2a\x04\xe3\x24\xe1\xfa\x07\xfd\x0f\x31\x56\xf3\x53\x5a\x14\xa4\x30\xbf\x26\x54\xd8\x67\x5d\xe5\xee\x4e\xf3\x73\x65\x25\x78\x51\xc7\x95\xd1\x4b\x5e\xdb\x54\x4b\x10\x5b\x5b\x1e\x08\x23\x9b\x6b\xfb\x73\xd5\xa0\x2d\xa1\xce\x49\x83\x2e\xc8\xf0\x65\x6b\xba\x06\xe8\xda\x4b\x8b\xbf\xf1\x37\x90\xcf\xd5\xe6\xfc\xa3\x77\x36\xe7\x57\xd6\x75\x40\x7d\xd6\x71\x60\x9b\x94\xf0\xfb\x6e\xa8\xa2\x33\x4c\xff\x82\x7f\xc5\xff\xc6\xff\x6c\x8e\x49\x2b\x8b\xfe\x0b\x5e\xce\xd5\xff\xba\x5c\x14\xf8\xf7\x52\xd5\xda\x35\x25\x37\xab\x54\x6b\x8d\xa2\x9e\x7a\xf9\x8f\x7f\xcf\x09\xbf\x5d\xaf\xec\xf2\x8b\xab\x46\x51\x30\xba\x3c\x1f\xeb\x64\x98\x4b\x2e\xc2\x5c\xad\x11\x9b\xce\x58\x2e\xab\x28\x91\xfe\x9e\xe2\x26\xe2\x00\xf9\x24\x5c\xa0\x81\x95\x35\xd4\x13\xe8\xd2\xe5\xe3\x7a\xf0\x61\x2d\x9d\xc3\xad\xf7\x9a\xcd\x98\x8a\x13\x9a\x8d\xa1\xa1\x07\x56\x94\x2f\xce\x0b\x91\x0a\xf2\x39\xf5\x1e\x52\xa3\x1e\xa6\xe1\xde\xe1\x49\xc5\xe3\x54\x08\xbe\xe6\xf8\x6b\xf0\xd3\x34\x4f\xaf\xc8\x0a\x97\x6b\x65\xdb\x8e\x47\x78\x8c\x27\xf8\xf2\x4b\x2f\x34\x96\x56\xf8\xe3\xbf\xd5\x2c\x5f\xf8\xf9\x31\x7a\xf8\x8a\x88\xa6\x34\xd3\x11\x91\x2a\xbe\xdc\x2a\xc3\x42\x7c\x43\x0b\x09\x6b\xfc\x40\xc8\xa6\xda\xca\x16\xd2\xf1\xf8\xb5\x9c\x47\xbf\xc2\x7c\x5d\x0b\x3e\x44\x28\xb3\x95\x56\x42\xa7\xc5\x29\x9d\xce\x32\xf2\x3a\xa3\xa3\x8f\x6b\x83\xaf\xd4\x5a\x09\xff\x8a\x08\x89\xc3\x2b\x36\xcf\xc7\xc5\xda\xf0\x2b\xb5\xd6\x81\xff\x3a\xa3\xe0\xf4\x33\x12\x0f\x6e\xc4\xab\xba\x76\x4f\x68\x7e\xe5\xaa\x7d\x56\xaf\x2a\x10\xee\x6b\xf7\x84\x31\xa8\xf9\xa0\xbe\xd9\x4a\xf7\x41\xb7\x13\xe5\x41\xe0\x5d\xad\x75\xa8\xb6\xbf\xee\xd2\xb0\x54\xda\x5f\xbd\x2a\xae\x88\xd8\xcb\x20\x98\xdc\x83\xd6\x45\xb5\xda\x3a\x98\xeb\xe2\x0f\x45\x5f\x57\x5b\xd9\x42\xf1\x79\x7d\x28\xd6\xef\x43\xf1\x79\x7d\x28\xd6\xef\x03\xb0\x49\x9f\xd3\x8b\x7a\xc5\xfb\x5b\xf9\x9c\x9e\xd4\x2b\xae\x6e\xc5\x70\xcb\xa7\xe2\x36\x23\x6f\x74\x9a\x7e\xca\xf2\x43\x52\x14\xe9\x15\x59\xbf\xd5\x7b\x00\xad\xc4\x02\xbc\x51\xde\x78\x1c\xd3\x5a\x8d\x5a\x43\xb5\x95\xb0\x5f\x1b\xfe\xea\x40\xb3\x57\x6b\xc1\xa6\x6b\xc1\x3e\x23\x9f\xc4\xa9\x61\x23\xd6\x82\xcb\xd6\xc4\x99\x93\x07\xcc\xac\x74\x3d\xa0\x92\xa5\x03\xcb\xaf\x87\xa1\x5c\xac\x07\xdd\xee\x8d\x0f\x83\x9e\xad\x05\x5d\x02\x3e\x95\xbc\xe1\xc3\x80\xcf\xd7\x06\x0e\x06\x2e\x6b\x42\x1d\xad\x05\x55\x05\x8a\x7a\x18\xbe\xe3\xb5\x20\x1f\xbe\x3f\xdb\x7d\x75\xb0\x77\xfe\x7a\xef\xe0\x60\x4d\xc0\x93\xc8\xaf\xb4\x06\xde\x87\x9a\x7b\x5d\x0f\xfc\xa5\x87\xf7\x3d\xa2\x5a\x93\xa7\x5e\x2d\xb5\x29\xc1\xeb\xab\x5b\xff\xf8\xe4\xa8\xc6\xee\x56\x7e\x38\xa0\x11\x44\x61\x95\xd6\x90\x44\xc3\xaf\xb8\x3c\xa6\x75\xa3\xb3\x97\x69\x96\x5d\xa4\xa3\x8f\xdb\xf2\xcb\xb6\x09\x42\xf7\x7f\xd4\xfb\xd6\xa0\xe5\xd0\x71\x67\x41\x81\x40\xa5\xb4\x5e\x04\xef\x55\xd2\xec\x5a\x56\x5f\x7f\x5a\x5c\x76\x0d\x49\x3b\x82\x2d\x2c\xba\x6f\x9d\xb6\x48\x6b\x25\xed\xa7\x38\xd8\x72\xa9\xa1\xfc\x7c\x04\x39\x04\x51\xcf\xd2\x5b\x36\x6f\xa9\x2f\xc8\x74\x96\xa5\x82\xc4\x16\x50\xf1\xb8\x02\x49\x27\x65\xc8\x55\xe0\xce\x07\xd2\x79\x89\x28\xbb\xce\x6c\x5a\x3b\xd6\xe0\xe7\x08\xc6\x63\x7d\xf0\x93\xf1\xf6\x25\x49\xc5\x9c\x93\xc6\xf4\xfd\x7a\x06\xb6\x2d\x63\x9c\x26\x0b\x97\xa2\x5c\x54\x72\x6a\x2e\xcb\x52\x0e\x16\x02\x36\x55\x79\xee\xdf\x1c\x89\x6a\x72\x72\xda\x08\x63\xe7\x22\xf2\x75\xbb\xb4\x35\x39\x39\xf8\x9a\x44\xa7\x7b\x47\x6f\xce\x77\x5f\x9f\xed\x1f\x1f\x29\x9c\xea\xf6\x23\x66\x56\x74\xbb\x62\x40\x2b\x9b\xcc\x10\x2e\xcf\x84\x8a\xe7\x80\xb0\x28\x37\x94\x07\xaf\xda\xa7\x7d\x30\x5e\x8f\x37\x2a\xce\x4f\x24\x71\x71\x06\x1b\xd1\x11\x03\x18\xc1\x28\xd8\x22\xa8\x11\x9e\xd0\xa6\x47\xdd\x4c\x92\x30\x4f\x94\x17\x11\xce\xc1\x0c\xa9\x45\x71\x9b\xef\x80\x57\xad\xd0\x01\x1c\xaa\x11\x13\x5d\xa0\xc4\x6a\x7c\x44\x51\x22\xa4\x6e\x18\xb3\x7a\xd4\xc9\xd4\x5f\x15\xd9\xfa\xab\xa2\x55\x07\xf5\xb9\x6e\x1b\x4b\x54\x81\xff\x57\xb1\xa8\x47\x96\xcf\x5a\x3f\x37\x6a\x7f\x75\x6e\xd4\x9a\x6c\x6b\xbc\x1e\x4a\x84\xd3\xd9\x8c\xe4\x4a\xab\xa2\xf3\x6d\x55\xd5\x2c\x4b\x52\x3d\x2c\x0f\xae\xb8\x9e\x9e\xf1\x41\x43\xb5\x8e\xa5\xe4\xd7\x3a\x3f\x9a\x39\xe1\x5b\x06\xa8\xdd\x43\x6e\xa0\xec\x7b\x81\xff\x0e\xb0\xfb\xf1\x8a\x82\x62\x44\x4e\xa8\xfb\xf2\x42\x97\xd8\x81\x88\x39\x6e\x80\x88\xf9\xe7\x8e\x42\x55\x9b\xfc\xb9\x2b\xc5\x9c\xe5\xcb\x8e\x91\xb6\xb3\x61\xe9\x8a\xfb\xb3\x4f\x8d\xfe\xd3\x38\x50\x69\x18\x8f\xc8\x4d\x46\x73\x12\xe0\x27\x3f\xc4\xc1\x28\xcd\x47\x24\x0b\x4a\x5c\xd4\x07\x9a\x47\x67\xb0\xf9\x57\xf8\x7c\xd3\x54\x10\x60\xb9\xad\xd2\x8b\xb9\x70\xc3\x33\x08\xd2\xb9\x60\xa3\x74\x46\x05\xa4\x48\x0a\xb0\x7a\xc1\x38\x57\xc6\xc7\xf2\xd7\x25\x1b\xcd\x25\x59\xc6\x56\xbd\x1a\x5c\x32\x3e\x0d\x70\x30\x4d\x3f\xe9\x00\x3b\x38\x98\xd2\xdc\x3e\x43\xa8\xb5\x09\xcb\xc6\x70\xd5\xc0\x49\x3a\x66\x79\x76\x0b\x8f\xff\x9e\x53\x0e\x20\x0a\x92\xa9\x80\xc9\x6f\x28\x27\xc6\xa2\xba\x98\x91\x2c\x03\xd3\x95\x40\x9e\x64\x17\xfa\x16\x25\x10\x54\x64\x92\x23\xf3\x00\xab\xc8\xbe\x06\x27\xb9\x87\x58\x6c\x74\x58\xfc\xfb\x72\x9a\x2b\xcb\x92\x3c\x0c\x66\x69\x21\x48\xa0\x62\x80\xa9\xe2\x44\x6b\x44\x24\xe5\x5c\x60\x1d\x57\x63\x34\x17\x0f\x2a\x4f\xf3\xd9\x5a\x35\x4a\x7c\x31\xbf\xb8\xc8\x48\x01\x51\xe2\xe5\xf4\x9b\x71\x22\xfe\x41\x6e\x75\x18\x0e\x6b\xd8\x92\x0e\x48\xf4\x91\xdc\xbe\x66\x63\xc5\x2d\xac\x00\x1a\x22\x2c\x7c\xc3\xcd\x81\x18\x82\x95\xdb\xb2\xd2\x0b\x97\x11\x59\x9d\xc6\x30\x7f\x14\xf2\x91\xae\xa3\x8f\xfe\x12\x8f\x6c\x72\x8f\x55\x18\xa8\x0c\xb1\xde\x4c\x96\x15\xb2\x30\x20\xb2\x87\x9a\x2c\x04\xe1\x2c\xd4\xf3\x7d\x3b\x37\x13\xde\x6c\xe6\x58\xcd\x7a\x53\xaf\x18\xa5\x33\xb2\x3d\xe3\xa4\x28\xbc\x32\x30\x51\xf7\x73\x5d\x08\x7e\x6d\x4b\x11\xba\x5a\xe0\x58\xa5\x65\x5d\x8d\x2f\xb6\x00\x98\x1d\x38\x09\xe1\x23\xb9\x7d\x27\x5b\xd5\x6d\x7c\x24\xb7\x0d\x2c\x3e\x92\xdb\xf7\x33\xdb\x42\xeb\x20\x62\x5d\x55\x0a\x23\x7e\xbd\x37\xec\x26\xf7\x20\x8f\xd9\x8d\x87\xbd\x1f\x56\x3c\xf3\x2d\x6b\xd2\x6a\x34\x4b\xc7\x3c\x6d\xe8\x1b\xf8\xb4\xdb\x6d\x18\xcc\xa7\xdd\x2e\x30\x97\xe9\x80\x35\x78\xbb\x34\x49\x0d\x6f\x67\x99\xb6\x14\xde\xfb\x0d\x11\x84\x74\x48\xdd\x4a\xf3\x6a\xb6\x80\xd5\x00\xf5\x99\xcc\x6e\xb7\x61\x12\x9b\xa2\x05\x5f\xc2\x92\xa5\x35\x96\x6c\x50\xe0\x7c\x58\xa2\x92\x64\xbe\x49\x8e\xdf\x9b\x34\x94\x6c\xe0\x86\xec\x57\x05\x1f\xbd\xa0\x02\xd4\xed\xe6\x51\x21\xd8\x4c\x6e\xc9\xe9\x95\x0a\x78\x8f\x3c\xef\xa2\x62\xfd\xc3\xa9\xed\x62\xf0\xff\xdd\x54\x5f\xe7\x82\xa7\x79\x41\x65\xab\x67\xac\x16\xa9\xe1\x7c\x34\xe7\x9c\xe4\x02\x34\x59\x98\xb7\xbc\x34\x86\x6d\xf2\x19\x64\x13\xef\x77\x42\x30\x38\xd0\x93\x4f\xd4\xfe\xd5\xae\xa7\x3c\x82\xc5\xdd\xed\xea\x07\xcb\xc1\x7d\x9e\x54\x59\xbd\x52\xfd\xe6\x32\xe5\x05\x67\x37\x05\xe1\xdb\xf7\x05\xc4\xff\x92\x4b\xf9\xfa\x5d\xff\x03\xe4\x54\x9c\xe2\x62\x99\xe7\x4d\x56\x33\x31\xfd\x3a\xb3\x6a\x9e\x2c\xe7\x22\x1b\x6c\x45\x30\xc4\x39\x49\x39\x29\xc4\xf1\xe5\xd9\xed\x8c\xf8\x59\x78\x4d\x84\x90\x94\xeb\x1b\x07\x9c\x27\x15\x77\x30\x2d\x70\xed\x88\xe4\x25\x31\xfe\x68\x52\x7c\xf3\x7f\xfa\x11\x77\xd0\x0b\xf1\x42\x5b\x93\x3b\xcf\x0c\xb1\x21\xe5\x53\xd7\x48\x59\x1a\x8c\xfe\x49\xc5\xc4\x8f\x5a\xb2\x14\x2f\x03\x96\x80\xcf\xd2\x0a\xc0\x9c\x70\x92\x8f\x21\x18\x69\xc5\x96\xd3\x5f\x44\x91\x2d\xa4\x63\x02\xe8\x73\x47\x65\x21\xf8\x52\x81\xc9\x24\x43\x96\x0d\x10\xff\x76\xad\x2e\x36\x79\xcb\xdf\x2a\x7d\x12\x1a\x4d\xd2\xe2\xcd\xf1\x61\xcb\x06\x4d\x76\xc6\x6c\x04\xec\x52\x04\x93\xf5\x14\x78\x36\x88\xb7\x15\x6b\x3b\x20\xdb\xaa\x6d\x41\xab\x29\x4c\x12\x2f\x78\x5d\x43\xd5\x96\xb5\xe0\x2f\xd8\xf8\xd6\x91\x65\x7f\xac\x58\xb8\x1b\x9a\x65\xfb\xc0\x11\xe8\x0e\xc5\x92\xe3\x1b\xd7\x5f\x41\x44\xf7\x8c\xa4\xfc\x04\x90\x91\x85\x6a\xa1\xb9\x97\xb2\x7f\xd5\x51\x32\xd5\xf4\x20\x79\x01\xa8\x2a\xed\x37\xde\xb9\xf9\x60\x79\x88\x38\xc3\x22\x05\x7b\xf2\x87\x70\xa3\xb6\xff\x77\x77\x41\x60\xc2\x88\x6a\x38\x77\x77\x61\xb5\x8c\x3e\x77\x2b\xd1\x05\x50\x89\x55\x8c\x43\xe0\x35\x5a\x12\xba\x54\xfa\xeb\x17\x15\x36\xf1\x58\xb9\x51\x44\x7f\xff\xef\xf7\x7b\x27\xbf\x9d\xef\x1f\x9d\xed\xfd\x7c\xb2\xab\xce\xef\x70\x1e\x3d\xaa\xbb\x70\xf8\x18\x59\x97\xa9\x1d\x88\xfa\xa3\x8c\x2b\x4c\xa8\x5f\x5b\x28\xae\x7c\xac\x7c\x2a\x91\xf6\x06\xa8\x29\x5d\xe6\xfe\xa1\x31\x5a\xe3\xd0\x68\x37\x7b\xf1\x8e\x8d\xca\xbe\xba\x6c\x27\x85\x00\x6b\x5f\xb0\x7d\x0a\x08\xcc\x60\x12\xca\x28\x06\xa7\x48\x16\xe5\xfa\x1d\x68\xda\x6d\xad\x3e\xf9\xee\x0f\xb9\x79\x5f\x7e\xa2\xb5\x84\xe8\x86\x60\xfc\xd5\x6d\xdb\xea\x23\xb7\x3e\xfc\x73\x4d\x33\x77\xdb\xfb\x59\x07\xf7\x03\x0f\x63\x63\x36\xf5\x4d\x38\xba\x49\xb2\x98\xb2\x79\x41\x80\x8f\x8a\x03\x78\x66\xd7\x92\x2c\xf0\x98\x91\xf4\x9a\x98\xd7\x73\x11\x94\xf8\x32\x61\xf5\x5b\x05\xa0\x4a\xa1\x8e\x1b\x1b\xeb\x47\xb0\xf9\x68\x52\x88\x94\x8b\x38\x80\xe7\x53\xf9\x1c\x60\x78\x9e\x32\x09\x15\x1e\x0f\xd9\x35\xd1\x6f\x49\x3e\xd6\x2f\xf7\xf2\xb1\x7e\xa7\x44\x33\xfd\xfa\xb5\xd2\x4e\x48\x69\x46\x8a\x2f\x71\xa0\xc5\x1a\x78\x33\x9f\xc1\xef\xf7\x33\xf8\x05\x82\x13\xbc\x78\xa7\x44\x28\xe8\x82\xaa\x05\x8f\xaa\x1e\x3c\xca\x9a\xf0\x20\xeb\xea\xbc\x30\x53\x92\xcf\xe3\x40\xff\x38\x24\xf9\x3c\xc0\xa3\x8c\x8e\x3e\xc6\xc1\x48\x99\x51\x8d\x2f\x32\xfd\x62\xcc\xe6\x17\xd6\xba\x0a\xe4\x3a\x9a\xc7\x81\x96\x17\xf5\x1b\x36\x17\xfa\xd5\xb1\x14\xf9\x8a\xf9\xc5\x94\x8a\x38\x50\x7f\x03\x0c\x22\x7c\x6c\x24\xf9\x91\x4e\x0a\x32\x32\x79\x42\x78\x7a\xa5\x29\x29\x1f\x35\x21\xe5\xa3\x7a\xa1\x9e\xf5\x08\xca\xc7\x3d\x25\xfa\xca\x47\x3d\x80\xf2\xf1\x40\x3e\xaa\xb7\x72\x84\xd5\xcb\xe3\x6b\x55\x92\xcd\xe4\x6f\x36\x33\xb0\xc6\x06\xd2\x38\x28\xf1\x38\x3a\x3c\x7e\x7f\xba\x77\xbe\x77\x74\xb6\x77\x72\x7e\xb0\xb7\xfb\xeb\xde\xf9\xe1\xf1\xaf\x7b\xe7\x7b\xbf\xee\x1d\x9d\x9d\xee\x34\xa7\x90\xc6\xa0\x31\x87\x34\x0e\xf0\xac\x26\x01\x3c\xc2\x24\x28\xe3\x45\x89\x30\x67\xcc\x9e\xbe\x81\x3c\xb9\x83\xb6\xe3\xcd\x9c\xb0\x30\xf5\x7e\x51\x81\x77\x8b\x9a\xcb\x33\xdc\xe7\x41\x84\x24\x93\x31\xdc\x0f\x45\x0d\x31\x22\x95\xd0\x9c\x54\x67\x6e\x89\x4d\xa0\x46\xa3\xa4\x50\x13\x1c\xd2\x62\x68\xb1\x57\x45\x81\xa7\xbe\x26\xc3\x43\x3c\xc0\x42\xc7\x5f\xc7\x20\xd6\x56\x80\xf9\xe5\x90\x8e\x73\xd6\x3c\x11\xef\xee\x8a\x9a\x05\x21\x0a\x99\xf5\x60\xb6\x41\xfa\xd2\x9d\x34\x5e\xc2\x46\xa5\x08\xa9\x48\x5a\x07\xb4\x80\x78\x46\xa1\xf2\xa3\xde\x4e\x67\xb3\x8c\xea\xed\xcb\x39\x51\xab\xa4\x45\x85\x3d\x3c\x65\xf5\x74\x3c\x56\x01\x06\xdb\x6a\xe2\x4d\x16\xd1\x22\x0c\xa2\x96\x6f\xc8\x65\x42\x94\x3c\x3a\x84\x71\x08\x3f\xbc\xcf\x65\x47\x3a\x82\x75\xd2\xf1\xb8\xf3\xd7\x46\xbd\xbf\x76\x94\xef\x96\x60\x1d\x49\xa4\x8e\x3e\xba\x3b\xe1\xa3\x05\x8b\x0a\xdd\xaf\xbb\x3b\x36\xe8\x0d\x0d\xdf\x52\xa2\xa8\x73\x98\x7e\x24\x9d\x62\xce\x49\xe7\x96\xcd\x3b\x05\x11\x1d\x8f\xc4\x12\x98\x98\x90\x8e\x9c\x49\x1d\xc6\x3b\x69\x6e\xc1\x4a\xd6\x5b\x7f\x89\x3e\x20\xeb\xa1\x91\xc9\x0f\x39\x6a\x58\xf9\x4f\xd2\xc2\xf3\x63\x50\x4e\x72\x39\xce\x4c\x90\x39\x98\x66\x7a\x26\x86\x0c\x67\x38\x1f\x64\x43\x33\xfd\xcc\x7b\xe7\x24\x62\xfd\x17\x1e\x30\x01\x4c\x8e\x2c\x39\x97\x93\x97\x2e\x63\x56\x5a\xb3\x79\x43\xe0\x52\x93\xd8\x64\x50\x9d\x1c\x42\x60\xe4\x15\x96\x8c\x83\x5d\x3c\x2d\x31\xad\x01\x04\x2b\xfd\x5d\x23\x76\x85\xc1\x38\x15\xe9\xb6\x1e\x2b\x73\xab\x46\x13\x6b\xc7\xd2\xe4\x42\x06\x39\x68\x0d\x81\xc7\xcc\x4d\xb8\x43\x12\x59\x49\xae\xc0\x69\xc2\xb4\xfb\xca\x06\x05\xef\x4c\x1b\x01\xba\xf7\xa2\xf8\x29\x7d\x51\x98\x30\x76\xf3\x84\x45\x54\x90\x69\x58\xa0\x8d\x5e\x92\x24\x73\xf0\x7d\x72\x6e\x8d\x0d\xdc\xb6\x03\x15\x5d\x84\x9a\xd0\x75\xab\xf0\x9c\x2b\x45\xd4\x10\xa1\xb2\xa4\x97\x21\x75\x02\xdb\x28\xd9\xec\xe1\x71\xd2\x7b\x31\x76\xde\x39\x36\xb6\xde\x24\xa1\x83\xf1\x70\x63\xd2\xed\x4e\x54\xc4\x61\x70\xec\x84\xa8\x7e\xe1\x28\x99\x68\x2a\x73\xf0\xe8\x1f\x59\x37\x9b\x91\xba\x1b\xbd\x67\x2b\xed\x76\xed\x05\xe4\x64\x20\x86\x86\x7a\xf2\x19\x5f\x26\x02\xcf\x2a\x83\xc5\x13\xbb\xf6\xd5\x9e\xa7\x86\x36\x38\x84\x2d\xf8\x5a\xed\x30\xce\xa2\x37\xa7\xc2\x7d\x09\x09\xde\xec\xcb\x7f\x22\x92\xfc\x0a\x86\xf8\x2c\x29\xcd\xb0\x88\x8a\x11\x27\x24\xff\x97\x7d\xfa\x0d\x8b\x68\x04\x96\xac\xff\xb2\x4f\xf0\x4e\xf0\xec\x1f\xe4\x16\xa2\xcc\x0b\xf5\x50\x4c\xe8\xa5\x7e\x94\x3c\x9f\x7a\xba\x98\x0b\xc1\x72\x60\x58\x33\xc9\xf5\xa8\x8b\x84\x65\x36\x39\xdc\x5e\x33\x1b\xee\x45\x44\xea\x45\x45\x4a\xd5\x29\x42\xa7\x49\xcb\x41\x30\x60\xc3\x84\x24\x2f\x3d\xf9\x9b\x18\x10\x3c\x21\x55\x34\x5e\x88\x6e\x17\x12\x5d\x44\x39\x1b\x13\xb9\x5b\xb9\xc4\x0f\xfc\xee\x8e\xab\x38\x8e\x9b\x61\x0f\x8f\x22\x1d\xec\xab\x40\xa1\x5c\xc6\xe8\x05\x6a\x5d\x7c\x02\xed\xe4\xa1\xc0\xb3\xf0\x12\x13\x84\x62\xc8\x16\xbf\x7a\x3d\x75\xbb\xd4\x55\xc0\x4e\x09\x70\xc4\xc6\xa4\xdc\x20\x72\x1f\x86\x31\x33\xd1\x18\x42\x86\xa7\x4a\x5d\xa9\xa3\x2d\xb6\xd1\x40\x28\x1a\x54\xfb\xbf\x31\x66\x72\xf7\x59\x82\xb7\x8a\x50\x21\xa9\x91\x43\x00\x55\xb4\x20\xd1\x8c\x03\x58\x93\x62\x5a\xb2\x91\x0d\x45\xa7\xf3\x89\xdc\x54\xfe\x8f\x8a\x6b\x7b\x05\xda\x51\xe5\x03\x59\x9a\x73\xa6\x35\x02\x80\x4f\xa1\x6e\x77\x2d\x8a\x01\x9a\x54\xa1\xa9\xbc\x2c\x6b\x74\x53\x7e\x62\x8d\xd1\x45\xad\x04\x15\xf8\x1a\x95\x0a\x47\x12\xb1\x3c\x14\x5b\xfa\x5c\x0b\xb0\x39\xe0\x94\x33\x49\xd8\x0c\xb4\xd2\x4e\x4c\x50\x54\xe6\xde\x26\x2c\x20\x07\xa3\xa8\x6d\xc2\x3a\x7c\xb5\x4e\xd0\x4d\x10\xe4\x61\x94\x32\x5c\x1d\x8b\x41\x83\x0a\xc3\x00\xfb\x03\xac\x85\x6f\x35\xab\xfd\xdd\x36\x97\x5b\x2c\x44\x17\xab\xb4\x64\x77\x5d\xe5\x45\x29\x2a\x5e\x94\x6a\xdb\x11\x6a\xf3\xa5\xc0\xa6\x40\x04\x1a\xa6\x36\xe0\x2c\x2d\xc4\xfe\x8a\x4d\x18\xf7\x90\xb9\x3e\x58\xb5\x01\x33\xbd\x01\x6f\xa4\xdd\x6e\x5a\xdf\x4b\x21\xfd\x4c\x6e\xf7\xfa\x54\x6e\xec\xa9\xdd\x5c\x09\xc2\x79\x34\x9b\x17\x13\xc9\xa8\x94\x65\x09\xb9\xc7\x8d\x5e\x06\xc2\xa9\x61\x71\x3f\xeb\x45\xbc\x89\xb1\x23\x96\x71\x52\x66\x61\xac\x79\x4c\x57\x03\x12\x35\x57\x26\x22\x3a\xa4\x62\x75\x0a\xf2\x36\x96\x76\xc0\x87\x8a\x45\xab\xf0\x66\x02\x45\xec\xf2\x32\x74\x93\xe3\x6f\x7f\xf3\xc2\x4a\x7a\x5c\x9f\x6a\xa7\x9d\x7d\x5b\x7e\xef\x5e\x62\xeb\xc6\x1d\xa2\xe4\x65\x10\xd6\xec\x95\x51\x50\xd1\xb4\x5f\xae\xaf\x73\x30\x62\xfa\x97\x65\x8a\x5d\xa9\x40\x5f\x53\xb8\xae\x09\xd3\x2a\x88\xf9\x67\x88\xd4\xd5\xb1\x4f\xcc\x0b\x13\x60\xc0\xfe\xa6\x3a\x1f\xd3\x66\xde\x3a\x89\x36\xd5\x26\xb5\x77\xf4\x6b\x74\xde\xfc\xbe\xd1\x68\x87\xe1\x36\x38\xdd\x2e\xb7\xfa\xd6\xd0\x35\x9d\xb8\x6c\xa7\x74\x0a\x64\xd7\x9f\xf0\x26\xeb\x76\xe9\x0e\x55\x4b\x4f\xee\x8a\xb2\xd3\xf5\xdf\x6a\x85\x9f\xf1\x34\x2f\x2e\x09\x0f\x50\x3c\x08\xac\x44\x1a\x60\x2d\x81\x06\x56\x04\xd5\xcf\x99\x92\xf4\x02\x23\x6e\xc2\xa3\x94\x2f\x75\xc9\x71\x30\x34\x51\xb3\x43\xb9\x8d\x99\x46\x2f\xe9\xa7\x5f\x18\xfb\x58\x0c\xc8\x30\x59\xcc\x38\x9b\x15\xb2\x3d\x1f\x81\x61\x59\xa2\xd8\xef\x5e\x8d\xd6\x8e\x48\xc9\x66\x0f\xad\x63\xa0\x7b\xaf\x92\xe7\x41\xc9\xb8\xef\x9b\xbe\x0f\xd5\x06\x7d\x3d\xbd\x4f\x4b\xd0\x0f\xf2\x00\x8d\xa1\x46\xfc\x41\x6a\xc2\x55\xfd\x5e\x27\xc1\x73\x5b\xb0\xb6\x20\xd8\x84\x20\x0b\x4a\x04\xec\x76\x89\x53\x5b\xef\x78\xcf\x71\x35\x40\xee\xe7\xc5\x6b\xab\xb8\xc1\xb5\x44\x59\x23\x96\xe5\xbd\xbb\x23\x86\xe7\x95\x8f\x8a\x25\x96\x4f\x86\x4d\x96\xac\xe7\xcd\x84\x8e\x26\x2f\xfb\x26\x10\x91\xe4\x2c\x21\x3c\xda\x7d\xee\x24\x2d\x43\xf7\x57\x7d\x23\xd6\x29\x64\x95\x8e\x3b\xf0\x3b\xd3\xf4\xb6\x43\x73\xc1\xd9\x78\x3e\x22\x9d\x11\x67\x45\xb1\x5d\x50\x41\x3a\xca\xf5\x5e\xd6\xb9\x9e\x67\xb9\xe4\xa4\x69\x46\x05\x25\xc5\x8b\xce\x2c\x23\xa9\x64\x7e\x72\x10\xa4\xc5\x24\x15\x1d\xa0\x43\xd1\xb9\x20\xb2\xc2\x05\x9b\xe7\xe3\x4e\xca\x49\x67\x06\x74\xcb\x6e\x3b\xca\x50\x62\x1c\x75\xde\x32\xae\x23\x28\xe4\x97\x8c\x4f\x01\x6f\xdc\xa1\xf9\x28\x9b\x03\x82\x13\x76\x23\xc5\x70\x6d\x4e\x03\x47\x62\xe7\x26\xe5\x39\xcd\xaf\x70\xa7\x20\xa4\x33\x11\x62\x56\xc4\x8f\x1f\xc3\xc4\xf8\xa3\x88\x46\x6c\xfa\xd8\x5b\x7f\xc5\xe3\xeb\x7e\xf4\xe9\xf1\xff\x27\xd8\xe8\xfc\x42\x75\x7a\x1b\x3a\xbd\xed\x3a\x1d\x75\x4e\x15\x19\x2e\x2f\xc9\x48\x90\x71\xdc\x09\xfe\xba\x45\xb6\xfe\x1a\xfc\x55\xc7\xe6\xb2\xbe\x72\xad\x83\xa8\x8d\x93\x83\xaa\xb9\x7a\x3c\x4d\x29\xe4\x88\x4f\x5c\xd0\xaf\x6a\x06\xa1\xca\x16\xa6\xd5\x4b\x03\x32\x34\x99\xda\x72\xef\x36\x4f\x6e\xce\xc0\xb0\xe4\x48\x89\x2e\xc4\xf9\xc1\x41\x20\xab\x2a\x0b\xd9\xb6\x58\xa9\x76\xa0\xbf\xbb\x83\x68\x07\x0e\x82\xae\xd7\x56\x87\x35\xea\x14\xcb\xda\x81\x10\x75\x95\x10\x64\xc5\x32\xf0\xb2\x28\xab\x14\xad\x3b\x7b\x55\x2f\x73\x5c\xf6\x0b\x5b\x76\x19\xde\xac\x5a\xb6\x62\xab\xd9\x18\x3b\x97\xb2\xd5\xa6\x16\x59\x3d\x96\x66\x18\x33\x15\xf7\x0d\xab\x94\x45\x5e\x0b\x05\x26\x15\x9b\xcf\x5a\xa7\x55\xa3\x26\x3e\xa1\xb3\x3b\xe6\x90\x44\x14\xe2\x9d\x6c\x80\xd1\xa8\xba\x32\x56\x6b\x3b\x93\x8c\xa4\xd7\x46\xe6\x46\x4e\xf9\xbf\x26\x73\xf7\xe6\x24\xcd\xaf\x48\x32\x72\x2f\x3c\xef\xd5\xb6\x01\x1e\xc9\x3e\x4b\x2a\xb9\x62\x21\x2a\x6b\x2d\x54\x7c\x51\x57\x41\x69\x96\x56\xc0\xa6\xc0\xfa\x2d\x31\xe3\x1e\xeb\x90\x51\x66\x2a\x68\x31\xb9\x19\xfd\xd0\x05\x30\x76\xb2\xb4\x63\x5b\xf5\x9b\x50\x20\x6b\x6c\xe2\xe4\x39\x95\x84\x44\x91\x99\x7b\xef\xd1\x8b\x7a\xac\x4f\x3f\x09\x3a\x96\xe7\xc1\xa1\xc6\xbd\x12\xc7\xcc\x8f\x56\xc5\x1a\x51\x3e\xd2\xf6\xe8\x4f\x9e\x91\x9c\xc9\x89\x66\x7d\xd2\xcc\x62\xc0\xa2\xac\x98\x52\xd9\x49\x33\x18\xe2\xdc\xcd\x9c\x96\x58\x4b\xf9\xb2\xdd\x64\x33\xbf\xbb\xcb\x2b\xc9\x92\x2a\xbf\xc9\xf8\xee\xae\xba\xb7\x58\x04\xe6\xfe\x51\x5f\xb9\xc5\x57\x13\xaf\x12\xc8\x65\xe4\x7a\x27\xeb\xe1\x86\x7a\xe9\x44\x19\xf1\x6d\xf8\x5e\xa4\x70\x1b\xf1\x8a\x5c\x32\x4e\x42\xc9\xbd\xf1\x42\x0d\x8b\x0a\xb3\xbd\x97\x8f\x77\x2f\xc1\x42\x07\x64\x46\xfd\x05\xcc\xdf\xc7\x89\x17\x89\xc9\x2a\xb4\xf5\x8e\xb0\xa3\xff\x7a\xfa\x57\x3d\x03\xef\xee\x96\x7e\x3a\xb5\x2a\xe2\x96\x22\xec\x3f\x87\x6b\x94\x2a\xd6\x28\xc4\xd6\x28\x73\x43\x2e\x3e\x52\x51\x2b\xa8\xf3\x9f\x6c\xf8\x73\x72\xbc\x06\xfb\xd5\x88\x68\xb1\x9e\x8f\xd1\x3a\x61\x32\x94\xe5\xd5\x9f\x68\xdd\x5f\x0b\x96\x6e\xee\x10\x45\x04\x32\x26\x19\x63\x11\x29\xed\x80\x96\x80\xf1\x82\x16\x72\x17\x8b\x37\x7b\x58\xdb\x89\xc5\x36\x20\xb7\xb9\x19\xb2\x36\xaa\xcb\x4d\x31\x94\x49\x59\x30\xe3\x44\xd9\x71\x04\x2d\x26\x1a\x15\x6b\xb4\xc8\x16\xc5\x9b\x15\x63\x14\xef\x6e\x43\xdf\x6b\xbc\x4e\xf3\x9c\x09\x6d\x67\x24\x68\x2a\x48\x27\xed\x58\x37\xa8\xce\x0d\x15\x13\x36\x17\x9d\xb4\x63\xd7\x5f\xe7\x5d\x93\xdd\xba\x65\x73\xe0\xaf\x60\xa9\x49\xb6\xe9\x11\xdc\x78\x95\x50\xbf\x93\x6a\xbe\xab\x63\x13\x0e\x3c\x36\x27\x5b\xf4\x01\x95\x9e\x95\x88\x31\x09\x91\xfc\xe4\x14\x34\x77\x22\xa5\x59\x51\xd9\x08\x94\xc1\xa6\xb6\x00\xb1\x91\xbd\xdc\xd6\x0d\x71\xe9\x35\x39\x1a\xf1\xea\x31\x01\x8d\xb1\x4a\x77\x43\x4a\xac\x8d\x2c\xad\x47\xce\xd2\xa1\xd8\x70\xc1\xec\xb4\x1f\x52\x8b\x32\x90\x23\x17\xe1\xc2\xf7\x4c\x2a\xb1\x8a\x2d\x64\x64\x80\x16\x35\xa2\x82\x6b\x52\x13\x2b\x04\x94\x6d\xab\x89\xe5\xae\x6e\xb3\xf4\x94\xd2\x61\xf6\x61\xc2\x9a\x43\xc1\x53\x6b\xd0\xb5\x57\xa6\x5e\x44\x6b\xc7\xe3\xf1\x6b\x3d\x9e\x71\x72\xce\xf5\x94\x5c\xbf\xd6\x24\x2d\x8c\x79\xf1\x43\xaa\xd1\xfc\x7c\xcc\xa6\x0f\xa9\x31\xb6\x47\x4e\xbb\x89\xc2\x37\xd9\x28\x58\xcd\xf3\x64\x61\xd7\x62\x2c\xbc\xb5\xff\xe6\xf8\x30\xb6\x4e\xf1\x72\x7a\x98\x7b\x63\xb7\x41\x38\xf4\x63\xe7\xe2\xee\x2b\xaf\xd8\x03\x47\xf9\xb1\xae\xd8\x3a\xda\x2a\x4a\xfd\x9f\x63\x88\xbb\xf0\x9d\x95\xe4\xa2\x33\x9b\x92\xa5\x50\x18\xfc\xc6\xe6\x9d\x51\x9a\xff\x55\x74\x24\x06\x5e\x85\x0e\x9b\x8b\x82\x8e\x49\x07\x96\x0d\xd1\x1b\x93\xdc\x74\x74\x3a\x95\xa0\x6a\xeb\x05\x7a\xc0\xcd\x9e\x6f\x8e\xe8\xeb\x5b\xcb\x12\xe7\xb5\x21\xe3\x0f\x75\xcd\x59\x36\xeb\xd6\x0c\x20\xaf\x48\xff\xa0\x89\xad\xc6\xf1\xcf\x48\x39\x64\x9d\x29\x85\x6f\x65\xe0\xa6\xee\xd2\xb1\xe4\x6d\x63\x29\x79\xed\xea\x60\xe6\x9d\xb4\x23\x3b\xa7\x65\xf5\xb1\x61\x0b\xe5\x28\x7a\x43\xb6\x0e\x5c\x53\x7c\x25\xd0\x12\xe1\xfa\x12\xa5\x5f\xb4\xa8\x2a\xdb\xd9\x7a\x03\xfe\x80\x95\x6a\xaa\xf0\x79\x9e\x31\xe6\x45\x1c\x73\x87\xa4\xd2\xf3\xfd\x99\x3b\x5c\x7d\x36\xb8\x3d\x6b\x61\x87\x8c\xa0\x85\xc7\xb4\x7b\xaf\xdd\xe2\xab\x17\x01\x7d\x3f\xa9\xaf\x5e\xc5\xd3\x25\x2f\x37\x89\x8e\x35\x0f\xae\xaf\x34\xba\xcc\xd2\xab\x2b\x32\xde\xb7\x74\x40\x61\x00\x74\x55\x17\x39\x51\xb0\x25\xb0\x32\xef\x8a\x39\x96\xc4\x8d\x49\x09\xc9\x69\x21\xaf\xdb\x1f\x8c\xe6\x28\x24\x10\x7a\x1d\x58\x00\x68\x45\x4a\x20\x69\x6d\x76\x30\x7f\x76\xa4\x0f\x9d\x1d\xe6\xd4\x7a\x90\x65\xfe\xd7\xd8\x23\xfc\x69\xf9\x27\xcf\x8d\x8a\x3d\x12\x75\x73\x43\xf9\x3b\xd4\x47\x5d\x5d\xac\x29\x66\xe7\x2b\x13\xdf\xe7\x4f\x3e\x8b\xc1\x69\x2c\x43\x37\x32\x7f\x96\xd8\x51\xa7\xa7\x3d\x22\x11\xa6\x35\x62\xe5\x68\x39\x0b\xe8\xdd\x9f\x3d\xbe\xca\xd8\x45\x9a\x15\xdb\x9c\x14\x2c\xbb\xbe\x9f\x38\x9f\xeb\x37\x62\x53\xca\x3c\x4c\xce\xd3\x19\xe7\xbf\x96\x03\x08\xd8\x45\x7d\xf9\x70\xe0\x22\xfa\xf9\xe0\xf8\xd5\xee\xc1\xe9\xf9\xc9\xde\xe9\xf1\xc1\xaf\x7b\x27\xdd\x6e\x98\xd5\xf2\x65\x19\xfb\xd2\x45\x2d\xd9\xb0\x8b\xd0\x03\x99\xe7\xec\xeb\xb2\x62\x1f\x38\x4b\x79\x01\xc9\xea\x54\x90\xd4\xf6\x28\x1f\x65\xce\xf8\x14\x9c\x52\xb5\xca\x63\x20\x30\x1f\x26\x24\x2a\x66\x19\x15\x61\x10\x5b\x45\xa1\x8d\x6b\x11\x6c\x26\x89\xd8\xf9\xf0\x68\x21\xca\xf8\xd1\x42\x2e\x3a\xf0\x17\x0d\x1f\x87\xbf\x47\x77\xe7\x77\xdb\x28\x7a\x7c\x85\x49\xf2\x92\x44\xa3\x49\xca\x77\x45\xd8\x47\x91\x60\xef\x67\x33\xc2\x5f\xa7\x05\x09\x11\x2a\x3f\xc4\xa4\xd4\xf3\xc5\x6a\x5a\x8c\x5b\x94\x45\x1b\x6e\xb6\x13\x09\x1f\x0a\xaa\x44\x96\xf2\x83\x1f\xcc\x7b\x90\xeb\x30\x09\xea\x39\xe4\xca\x6c\x44\x8b\x3e\xba\xea\xb1\x98\x10\x1e\x72\x54\xfa\xb0\xab\x06\xfb\x55\x62\x81\xf0\x14\x2e\xf9\x92\xd4\xde\x43\x80\xf8\xca\x4f\x4d\xc7\xbc\x4a\x47\xcc\x92\x5c\x59\x41\xf2\x7a\xaa\x44\x95\x60\x12\xe1\x22\x61\x55\x8b\x82\xc7\x01\xc2\x59\x02\x06\x07\xc5\x0e\x8b\x8a\x8c\x8e\xe0\x02\x1c\x81\x6c\x0b\x82\x63\x65\x58\xba\x5d\x55\xd6\x19\x8d\xe9\xf6\x1f\x07\x68\x83\x25\xf3\xc1\xdc\x46\x4b\x1e\x6a\x2f\x00\x38\xfe\x9c\x6f\x32\x0a\xe7\xb6\x99\xed\x3e\x82\xa3\x2d\x0c\xa2\x00\xa1\x0d\x8d\x7b\x25\x8f\x20\x0a\x47\xc8\x28\xb1\x40\xaf\x0c\x99\xa8\x83\x43\xf9\xa8\x52\xa5\xc2\x94\xa6\x97\x70\x59\x0f\x46\x9e\xec\xee\x6e\x53\xb4\xdb\x45\xee\xe7\xd7\x69\x46\xc7\x1d\x93\xd0\x2d\xee\xfc\xfe\xe1\xd1\x82\x94\xbf\x7f\xc0\x9d\xe9\xbc\x10\x9d\x0b\xcb\xa8\x5f\x32\x3e\xed\xfc\xfe\x41\x4a\xbc\xb1\x24\xe1\xef\x1f\x3a\x36\x25\xc1\xc2\xd6\x27\x18\x0a\x08\x6c\xde\xfc\x53\xa9\x20\xce\xa0\x1a\x1e\x53\x2e\xeb\xc6\x19\x86\x3f\x0c\x6c\x6e\xe3\x14\x37\xa6\x5c\x1c\xe8\x57\xc1\xd6\xb8\x2c\xab\x29\x58\xfc\x0b\x94\xb6\x49\xdc\x58\x3f\x49\x92\x70\xc8\x42\xb6\x63\xdf\x75\x52\xd1\x09\xb6\x78\xd4\x82\xa6\x5b\x5f\xbf\xcb\x85\x25\x47\x32\x0e\x45\xf2\x01\x96\x1e\x63\xa2\x8c\x74\x02\x74\x47\x68\x0e\xb6\x29\xa8\x5e\x33\x40\xe5\x07\x48\xc1\x49\x32\x39\x59\x14\x0e\x72\xf5\x6c\x25\x0d\x00\x90\x30\x0f\x61\x81\xca\x69\xfa\x91\x98\x14\xb4\x15\xd5\x89\x17\x08\x7d\x5e\x90\x13\x36\x17\x84\x1f\xa5\x53\x5d\x2c\xb8\x48\x0b\x3a\x0a\xc0\x08\x0a\x42\xb7\xab\x3f\x49\x10\xc4\xfa\x49\xfd\xa9\x23\x79\x1e\x20\xb3\x35\x9c\x69\xe2\xf8\xd7\x53\xeb\x11\x68\xc3\x86\xb8\x00\x2d\xb3\x01\x84\x0c\xbf\x57\x7b\x0b\xbd\x1f\x93\x51\x3a\x25\x6a\x09\x08\x64\x91\xf8\x95\x92\x9b\xfa\x6e\xd1\xec\x2e\x6e\x6e\x37\xc4\x82\x78\xcd\x72\xc1\x59\xa6\x8c\x75\xbe\x04\x10\x94\xfd\x42\x18\x87\x72\xf8\x2b\x26\x5b\xfe\xc0\xab\x31\xf1\xe8\xa7\xb7\x2a\x02\x53\x4d\xe5\x78\x02\x30\xbf\x90\x6c\xd6\xec\xcf\x92\x36\xcd\xef\x95\x6d\x6e\x35\x5e\xc3\x1c\xbc\x1f\x15\xb9\xd7\xac\x00\x7e\x1f\x94\x8f\x39\xbb\xc9\xdf\x32\x5e\x77\xa1\x6c\xc6\xcb\xf1\x77\x6a\xd6\x68\x48\xb2\x9b\x72\x3b\x53\x69\xe7\x42\xb6\x15\x3c\x82\x1d\xbd\xfd\xdc\xc5\x59\x25\x89\x75\x8e\xf0\x3c\xe9\xbd\x98\xff\x94\x19\xe3\xb3\xb9\x31\x3e\x1b\x25\xd9\x60\x0e\x3a\xc2\x54\x05\x9e\x1f\x21\x54\x0c\x74\x9c\x9d\x34\x2f\xe4\x14\x3e\x63\x56\x2d\xf9\x76\x9e\x65\x39\x6c\x3c\x78\x84\x86\xc9\x66\xcf\x65\x97\xbe\xa7\xb8\xf0\x2e\x12\x6b\x3d\xcb\x13\xe1\x1d\x0a\x7f\x33\x29\xbb\x0d\x59\x61\x8f\x8e\xf5\x36\x34\x4e\x8b\x09\xe1\xb0\x8c\x72\x54\x7e\x28\xb5\x4a\x71\x9e\x64\x1e\x3f\x39\x5f\xce\x4f\xae\x15\xd2\xbb\x66\x5b\xe1\xd7\x97\x6c\x77\x96\xfe\xe7\xf6\x3c\x63\xe9\x78\x79\x11\xdf\x04\xec\x1b\x68\x3e\x56\x45\x5a\x3d\x56\xc8\xaf\x19\x3d\xd9\x54\xb8\x2f\xf6\xe9\xc3\xa0\x16\xeb\x40\x65\xf9\x01\xd0\x70\xcd\x48\xa0\xaa\xf8\x4a\x88\x7c\x0e\x65\xc0\xae\x69\x6d\xb8\x7e\xa5\x95\xd0\x61\xc8\xd7\x0e\x4c\xcd\x23\x5d\x7e\x25\x4c\x2b\xb4\x3d\x38\x32\xe9\xaa\x29\xae\x53\x74\x3e\x5c\xc3\xb3\xdc\x7f\xf0\x41\xce\xf4\x9e\x2a\x20\xbf\xa2\x39\xf1\x50\x5a\x21\x43\x2d\x15\x93\xbe\x89\xb4\x2a\x99\x61\x63\x31\x6b\x1c\xec\x3c\x2a\xaa\xdb\x9d\xd1\xbc\x10\x6c\xaa\xbc\x97\xd4\x1b\xdf\x6d\xea\x01\x3e\xc1\x1e\xe4\xe8\xfc\x26\x15\xa3\xc9\xbe\x26\x89\xb6\x60\xd6\x07\x9c\x56\x30\x04\xbe\x0d\xe9\xb6\xa1\x9e\x32\xad\x50\xb1\x44\x16\xde\x2d\x58\xbc\xd9\x2f\x51\x89\xcf\x2f\x18\x13\xa7\xb7\x90\xd2\xa1\x2a\x7e\xc8\x0f\x64\x7c\x77\x17\x12\x38\x43\x32\x7b\x8a\x83\xd3\xcc\x89\xbe\xdf\x0a\x21\xf3\xb2\xd7\xc1\x1d\x85\x94\x7b\x91\x54\x3e\xc7\x8d\xcf\x8d\xae\x7a\x1f\x21\xb7\xa0\x7a\x0d\x3e\x5d\xdc\xf9\x74\x45\x1c\x38\x0c\x1c\x98\x02\x81\x57\xb8\x85\x80\x7c\x9e\x1b\xea\xed\xe7\x54\x50\x90\x2c\x78\xa1\x29\x69\xd3\x7c\xa6\x23\x41\xaf\x89\xef\x36\x54\xb3\xaf\xb5\xde\x6d\x8a\x3e\xc9\x66\xcf\x38\xbc\xd7\xe9\xa2\x86\xd7\x0b\x58\x50\xa3\x9c\x02\x73\x6e\x6e\x0a\xcf\xcf\x21\x18\x8c\xea\x96\x32\x8f\x1b\xb1\xe9\x6c\x2e\xc8\x18\x2d\x4b\x23\x66\xcd\x69\x74\x2d\x65\x46\x53\x22\xc9\x67\xa7\xe3\xe3\x3c\xbb\x0d\x11\x1e\xd3\xf1\x6b\x65\x21\xa0\xad\xac\x94\x86\xaa\xe2\xb6\xef\x13\x1d\x95\x18\xcc\x47\x25\x0b\xa7\x12\xea\x7b\xf4\x8e\xaa\x9f\x34\x2d\xc6\x74\x7c\x0a\x7d\x83\x32\xf2\x84\xd7\xd4\x80\xdf\x76\xa6\x57\x8b\x59\x71\xb6\x51\x1b\x57\x1a\xf4\x01\x59\xdd\xe9\xfb\x93\x83\x46\x92\x13\xbf\x60\x05\x84\x5f\x45\x63\xd6\x18\x55\x9d\xe6\xbb\x42\xd5\xba\x17\xb6\x31\x39\xab\xf3\x61\xfe\x44\xc3\x81\xbf\xfe\xc1\x1d\xab\xce\xb4\xd5\x0a\x34\xd5\xcd\x39\xa6\x9e\xc5\xb8\xf2\x91\x64\xb8\x31\x4e\x98\x94\x72\xcf\x97\xfd\xaa\xf1\xbc\xaa\xdb\x73\x9e\x95\xf8\x9a\x16\xd4\x85\x3d\xaa\xd0\x68\xc3\x0f\x07\x73\x6e\x6f\x97\xcf\xcf\x9d\x95\x96\xb7\x73\xbb\xce\xfb\xcb\x8f\x26\x21\x4a\x5e\x8a\x88\x81\xd0\x59\x44\xc5\x84\xcd\xb3\xb1\xba\x0f\x54\xd1\x00\x94\x7e\xf2\x94\x08\x01\x7e\x92\x28\x12\x13\x92\x87\x50\x4b\x2e\x3d\xd8\x10\x30\x03\x77\x18\xc8\xdb\x05\x8a\x60\x2d\x8b\xeb\x5f\xa0\x54\x38\xb3\xb1\x6c\x76\x2f\x18\x17\x64\xec\x04\xb9\x6e\x37\x8f\xce\x15\x42\x87\x74\xc4\x59\x46\x2f\x22\xb5\x90\x5d\x25\x9b\xbe\xe8\xde\x92\x0a\x41\x8a\x19\xda\x00\x2c\x56\xb5\xbc\xe3\x2c\x0d\x48\x34\x55\xe6\xa0\x28\x26\x25\x2e\xbc\x51\xcf\xbd\x4d\xca\x8e\x2b\x8c\x85\x9a\x92\x38\xf7\x66\x28\xe4\xc8\x85\x21\x45\x0e\x91\x4a\x44\x8a\x07\x1e\x1c\xf3\xbc\xe5\xe8\x90\x2c\x70\x51\xbd\x77\xaf\x6d\x5f\x58\x24\x8b\x12\x2d\x44\x24\xd8\x9e\x9b\x04\x72\xcd\xea\xe3\x40\x80\x23\x8c\x77\xfa\x34\xe6\x0a\xae\x55\x0e\x51\xf3\x04\xaa\x80\x28\x08\xbf\xa6\x23\x12\x6f\x1b\xd3\x26\x09\xc2\x3c\xb7\xd4\xad\xd8\x12\x40\x00\x0b\x93\x61\x30\xab\xa6\x5e\x52\x5d\x91\xa5\x8d\x5d\xba\x31\xb2\x57\xa1\xba\xfc\xbd\x1f\x5c\x31\x8b\x37\xc7\x87\x1a\xbc\x9a\xbf\x52\x46\x4d\x88\xff\x0b\x7b\xf6\x72\xb4\x78\xa5\x58\x9d\x1d\x0d\x4f\xff\x4c\x74\xda\xf2\xd0\x2b\xa2\x03\x92\xba\x32\xd5\xf6\xec\x7b\xb3\x3d\x6a\x8c\x81\x6f\x68\xc1\x76\xb3\x8f\xf5\x9e\xa5\x06\x3c\x09\x72\x96\x4b\x71\xd0\x43\xaf\xb2\x28\xd5\x3e\xe0\xbd\xf1\x90\xf4\x5f\x6b\x3c\x2b\x25\xcd\xd6\xec\xbf\x5c\x1b\x4f\xe0\xa9\xf4\x60\x2a\x2c\xcc\xaf\xc4\x7d\x88\xab\x1f\xda\xac\xd0\x2c\x0c\x5b\x07\xda\xac\xb0\x19\x26\xed\xd4\x52\x3e\xa4\x42\x1f\x8f\xc7\xa8\xd2\xd2\xe7\x28\xbc\xf2\xaa\xab\xa6\xb4\xee\xb8\x79\x8d\xaa\x13\xa3\xc2\x55\x84\x2d\x84\xf1\xa7\x88\xf7\x1e\xa1\xb2\xb6\x78\xf4\x09\xd5\x38\x2c\xbc\xa3\x42\x4d\xa4\xa4\x3a\x91\xea\xcc\x4d\xd2\x44\x02\x57\x66\x76\x52\x9f\xf8\x98\x98\xfd\xdd\xd8\x15\x95\x4a\x7e\x2e\xd6\x93\x9f\xeb\xc2\xed\x67\x5f\xc7\x7c\xa1\xf3\x51\xe5\xf2\xa6\x71\xe1\xbc\x5c\xa4\x59\x43\x96\xff\xe2\xa8\x29\x5c\xb1\x54\xed\x8d\x36\x45\x21\x25\x23\xb5\x42\xb2\x07\xf9\x37\xb9\x7c\xf2\xf3\x44\xe1\x19\x9e\x7e\x13\x39\xeb\x5a\x6e\x6b\x57\xc9\xa4\x21\x6c\xb5\x04\xa0\x20\x55\x4e\x6e\x99\x0c\x96\xce\x05\x93\x2c\x3b\xd8\x2a\xea\x0b\x42\x39\xb7\xe1\xb7\x47\x6b\x73\x4e\x16\x0f\x91\xd4\x1e\x99\x4d\xf0\x51\x32\x77\xdb\xc0\xdd\x5d\x78\x2d\xb7\xcc\x69\xab\x37\x58\x6e\xbd\xc1\x36\xe7\x35\xe7\xa8\x6e\x37\x8d\x32\x7a\xc1\x53\x4e\x89\x13\xf0\x5e\x33\x4e\x0e\xe0\xed\x6d\x68\x33\x69\x81\xe3\xa8\x71\x3d\x44\x91\xf2\x92\x42\xc8\x9e\x5d\xe9\x98\xe6\xa4\x28\xde\x90\x4b\xc2\x79\x9a\x15\x49\xbf\x26\xbe\x98\xdf\x6d\x24\x30\x76\xd4\x9a\xab\xd0\x14\xd4\xdb\x83\x47\x43\xbb\x87\x55\xca\x19\x24\xbc\x82\x5a\xae\x3a\x9f\x71\x32\x4b\x39\x79\xcb\xf8\xcf\xee\xa3\x61\xda\x4d\x7d\x5d\xf8\x26\xa5\xe2\x2d\xe3\x6f\x8e\x0f\x4f\x48\x3a\xbe\x0d\x21\x54\x2a\xcd\xc6\x96\xa1\x51\xa7\xbb\xdd\x03\x2f\xd2\x82\xe8\x6d\xca\x67\x84\xd4\x2b\x9b\xd4\xc2\xbb\xa1\xc4\x35\xd9\xda\x86\x08\x6d\x23\x89\x4d\x2b\xde\xe0\xab\xea\xf2\x73\x6b\x6d\xcf\x7b\x62\x19\x11\x54\xe3\x5a\x16\x0a\xbd\x1f\x77\x77\x23\xfd\x84\xcc\x7a\xb0\xb2\xa8\x24\xc8\x1b\xbb\x90\x2d\x4e\x20\xe0\x2f\xfb\xe6\x4b\x3c\x55\x8a\x22\x1d\xea\xf1\x7c\xdc\xa8\x76\x7e\x6e\xd2\x56\x56\x24\x06\xc9\x1a\xf9\xbf\x4b\xdc\x18\xb6\xc5\xa6\x59\x2a\xea\x6f\x44\x0b\xf8\x22\xa5\x04\x16\x15\xa3\x09\x91\x9b\x03\x0a\x75\x78\x78\x13\x58\x35\x18\xb3\x29\x94\x0b\x34\x43\xf2\x28\x54\xd2\xed\x6d\x08\x15\x2f\x68\x3e\x36\x82\x95\x2b\x8a\x4a\x6c\x7e\x18\x8a\x56\x2d\xf4\xab\xaf\xc8\xd8\x18\xa6\x5a\x75\x08\x98\xf1\x5c\x12\x7e\x62\x96\x90\xdd\x05\x9a\x8b\x6a\x6b\xab\xc4\xe9\xf8\x5a\xd2\x67\x9d\xe2\xdb\xdb\xb8\x67\x42\xbc\xb5\x7c\x06\x4d\x07\x8b\x58\x3e\x22\xba\x63\x8a\x27\xa2\xe3\x57\x64\xc4\xa6\xd0\xc4\xad\x5c\x05\x8c\x55\xec\xab\xe5\xef\x77\x9c\x4d\x69\x41\x50\x43\x93\xa3\x3f\x6c\x08\x7e\xbb\x68\xf4\x74\x24\x27\xb2\x9c\xc0\xe5\xb2\x7a\xbe\xa2\x48\xf9\x5b\x87\x55\x2d\xd1\x1a\x24\x46\x95\x19\x07\x35\x4f\xb4\x81\x46\x92\x45\x27\xa7\xbf\xbe\x8b\x80\xe2\x76\xfa\x79\xed\x27\x24\x9a\xd5\x7b\x00\x1a\x1d\x4f\x93\x83\x30\xf8\x61\xfb\xaa\x59\x39\x9b\x7c\xbe\xc3\x53\x9b\x35\xc7\x4b\x93\x41\x18\x5b\x3c\x29\x99\xfc\xa1\x82\x50\x62\x51\x42\xbc\xc7\x82\x88\xea\xba\x69\x5f\x22\x1b\x6b\xed\xbe\xa6\x6b\x8e\x63\xae\xd2\xa4\xf6\x5e\x6d\xd6\x30\x35\x94\x6d\x17\x4c\x0d\x5f\x31\x04\xdf\xf8\x1c\xcc\xbe\x02\x6d\x83\x16\xdc\xbb\x45\xe0\x7b\xd6\x9f\x1d\x78\x50\x2c\x95\xb8\x3a\x0f\xf5\x6c\x68\x0c\x7f\xb7\xbb\xd9\x18\x7f\x39\x72\x40\xbb\x0d\x15\xe5\x82\x46\xb4\x38\x23\x85\x64\x7b\x50\x88\xee\xee\x54\xe4\x0b\x6d\xe4\xba\xab\x2e\x55\xe1\x72\xab\x40\x0a\x4d\xf0\xe3\xb1\x6f\x4f\x49\xca\x47\x13\x17\x81\x69\xb3\x87\x6a\x27\x08\x0a\x49\xf3\xb0\xda\x59\x31\x70\x71\xdb\x66\x88\xfc\xb5\x62\x74\xae\xd0\x75\x08\xb7\xe1\xab\xc3\x36\x9a\xc3\x68\x2e\x20\x7d\x95\xad\xd3\x1d\xd6\xe7\x5c\x6b\x7d\x6f\x12\x62\xdd\x72\x25\xd0\xeb\xda\xca\x81\xfb\x49\xd8\x47\xb8\x30\x77\x10\x95\xd3\x53\x6d\x57\xdd\x6e\xd8\xfe\x59\xf1\x6e\x68\x05\x2f\x51\xc9\x06\xdc\x5e\xc2\x73\xb0\x72\x11\x39\xd1\x4a\xa0\x3a\x4b\x30\xb2\x7a\xae\x7a\xd8\x4b\xb5\x49\x3a\x9d\x93\x9f\xb3\xbf\x7e\xe8\xd9\x4b\x18\xa8\x24\xbc\x5a\x3c\x32\x6a\x34\x14\xe9\xcd\x32\x79\xa9\x86\xcc\x2d\x3a\xee\x2f\x3a\x52\xa2\x12\xf4\x11\x57\x55\x2d\x0b\xb4\x69\xb5\x2c\xd5\xbd\xa4\xcd\x2b\xc3\x24\xb5\xf2\x9c\x02\x7d\x8d\x89\xaf\xf7\xc5\x86\x3d\xb0\xdc\x41\x4d\x41\xd3\xe2\x72\x89\x17\x8a\x0f\x8a\xb5\xdd\x68\x9b\x39\x56\x15\x0a\xb4\x18\x2b\x4b\x0a\xd3\x62\xb5\x44\xbb\xd6\x14\xcf\xa3\x7a\xa4\x0a\xf0\xef\xfc\x43\xa5\x00\xa8\x75\xc5\xbb\xd8\xc6\xfe\x16\x6e\x94\x90\x7e\x7b\x46\x44\x8f\xe5\xb2\x97\x38\xed\xce\x05\x3b\xb0\x72\x7b\x6b\xd1\x49\x5a\x4c\x64\xd1\x5f\xd2\x62\x72\x5f\x51\x5a\x08\x26\x59\xed\x51\xf4\x8b\x7a\xbc\xa7\x02\xe8\x5f\xf0\x28\x3a\x62\x39\x69\x2d\x7a\x19\xcd\x38\xbd\x4e\x05\xfd\x0f\xf9\xb0\x7d\x31\x1f\x7d\x24\x62\x7b\x94\x8e\x26\xea\xae\xe6\x43\x65\x4c\x24\x07\x3e\x8a\x5e\x41\x21\xb0\xf6\x5a\xa2\x32\x53\xd4\x73\x73\xe0\x54\xbd\xaf\xd1\xb8\x5e\x3a\x38\xb7\x4f\xd5\x1b\x84\x90\xc0\x6e\x31\x53\x0a\xe3\x5d\x37\x00\x66\xea\xc2\x1d\x3c\x31\x37\xe9\x17\xc9\x95\xa7\x09\xb8\x58\xad\x09\xf0\xa4\xe7\xaf\x1f\x6a\xe4\x1b\x58\xad\xaa\x3b\xe4\x56\x57\x63\x0a\xee\xe4\x03\x32\x4c\x72\xb0\xcf\x1b\x0c\xb1\x7c\x50\xee\x9e\x02\x61\xde\xed\x8a\x50\x79\x32\xfb\x6c\x49\xd3\xf7\x96\x82\x11\x1f\xe6\xd1\x0d\xcd\xc7\xec\xa6\x35\x19\xfe\x6b\x27\xd3\x9a\x18\x40\x72\x76\x78\xaf\x43\x82\x17\x2a\x50\x58\x2c\x94\xf9\x18\x29\xd1\x86\x01\x1a\x99\x25\xa9\xca\x32\x54\x4a\x5c\xbb\x5d\xc0\xd8\xdf\x7b\x8d\x6f\xb4\xde\xe8\xeb\x5e\x82\x7b\x47\xbf\x46\x7b\x87\xaf\xf6\x4e\xce\x0f\x8e\x77\xdf\x9c\xff\x72\x7c\xfc\x8f\xd3\xbb\xbb\x45\x89\x69\xb2\x28\x31\x4b\xe8\x86\xab\xca\x4a\x84\x36\xdc\x54\x18\xa5\x72\x63\xb1\x7a\x86\xf5\x0c\x2b\x5a\xa7\xc1\x37\xb5\x53\xa6\xc5\x5e\xae\xa2\x94\x34\x5d\xda\x61\xc8\x8d\x2f\xb3\x0a\x43\x06\xf1\x61\xf8\x0e\x8f\x37\x37\x35\x75\x8e\x20\xab\xc2\xf1\x3b\x29\xe9\xef\x1e\x9c\xbf\xdd\xdb\x3d\x7b\x7f\xb2\x77\x2a\x89\xaa\x28\xf7\x7a\xf7\xf5\x2f\x7b\xe7\xbb\xef\xf6\x13\xf3\xe6\xe7\x83\xfd\xc3\xc3\xbd\x93\xf3\xfd\xa3\xf3\xbd\x83\xbd\xc3\xbd\xa3\x33\xfb\xe9\xe4\xf8\xfd\xd9\xfe\xd1\xcf\xe7\x87\xc7\x6f\xf6\x0e\xce\x77\x4f\x7e\x6e\x54\x3a\xdd\x3b\x3b\x7f\x7d\x7c\xf8\xee\xf8\x68\xef\xe8\xec\xfc\x6c\xef\xf0\xdd\xc1\xee\xd9\x9e\x2d\xf6\xfa\xfd\xe9\xd9\xf1\xa1\x57\x62\xf7\xe4\xe7\xf3\x77\x27\xc7\xff\xfa\xcd\x16\x39\x3c\x7e\xf3\xfe\x60\xef\xfc\xfd\xd1\xfe\xdb\xfd\xd7\xa0\xa1\xb0\x9f\x8e\x76\x0f\xf7\xde\x9c\xbf\x3a\x38\x7e\xfd\x8f\x53\xfb\x72\xff\xf0\xdd\xc9\xf1\xaf\x7b\x6f\xce\xf7\x8f\x4e\xcf\x4e\xde\x4b\x7c\xab\xb5\x0e\xf6\x5f\x9d\xec\x9e\xec\xef\x9d\x9e\xef\x9f\x9e\xec\xfd\xbc\x7f\x7a\xb6\x77\xb2\xf7\x26\x21\x91\x21\x46\x42\xa2\x37\x7b\x6f\x77\xdf\x1f\x9c\x59\xfa\x54\x67\xda\x62\x15\xa0\x78\xb3\x8f\x57\x63\xe2\x4a\xf8\x1d\x70\x6f\x9b\x3d\x76\xdf\x96\x13\x2c\xde\xec\xe1\x75\x68\xef\xca\x35\x46\xaf\x09\xc2\x8d\xb9\xfb\x66\x67\x48\xbc\xd9\x2f\x37\x5a\x68\x55\x49\x03\x67\xf4\xc1\x39\x56\x33\xd0\x94\xf2\x32\x87\x30\xa7\xa1\xd8\x0c\xef\x99\xa8\x2a\x1e\xc5\x66\x92\x10\x74\x77\x47\x4a\x6f\xd0\xa8\xf6\xc0\x67\x21\x5d\x39\xd0\x68\xe3\x9e\x89\x90\x1a\x83\x0a\x0b\x68\xd9\x40\x3a\x50\x4b\x27\x5d\xa1\x8c\xe0\x3d\x60\xfe\x98\x3b\x00\x95\xa9\x9c\x69\x23\x30\x57\xa9\x39\x25\x5c\xd5\x96\x05\x32\xd7\xe6\xca\x0e\xc0\xf2\x79\xe3\x00\xad\x58\x8c\xa3\x0d\x65\xb6\xec\x00\xae\x9e\x64\x0e\xe8\x3d\x1b\xc1\x58\x87\x93\x76\x80\x1b\xb3\xd2\xc1\x6a\x6e\x37\x13\xa8\x7e\xd9\x82\x97\x9b\xb9\x4d\x5c\xbc\x9d\xec\x12\x00\xcc\x7c\x4a\x99\xe9\xed\x11\xc6\xee\x89\xb3\x2a\x03\x61\xbd\xb5\xd7\x3b\x2f\x96\x98\x06\x7d\x33\xf3\x39\x9b\xd4\x79\x6d\x4b\x37\x5b\xa3\x61\x92\xe5\xba\x6a\xcc\xb0\xb7\x55\x02\xad\xf5\x22\xd8\x7f\xdd\xf0\x53\xe0\xb0\xaa\x23\xbd\x48\x49\x5d\x21\x74\x9c\x67\xb7\xb6\x03\xad\x51\xab\xfc\xa4\x1e\x42\x56\x6e\xaf\xaa\x37\x7b\x1d\x56\xb8\x76\x61\x7b\x1f\x41\xb4\x98\x3b\x85\x3e\x41\x5c\x42\x52\x3a\xeb\xef\x8a\x08\xe8\xca\x94\xe5\x32\x5c\x44\x7d\x18\x8c\x79\xf4\x7a\x53\x6e\xd5\x95\x4f\xed\x2e\xc9\x03\xad\x32\x97\x9a\x9f\xe7\x90\xf0\xe6\xdb\xb8\xbc\x2a\x11\x20\x69\xcc\x45\x38\x3b\xd4\x47\x14\x06\x0e\x97\x00\xd7\x92\xfd\x2d\xf1\x9a\x5d\x1a\x32\xc2\x1a\x1d\xae\xf0\xd8\xba\x8f\x12\x5f\x2f\xf7\xdf\x7d\x49\x8c\xbf\xad\x5f\x71\xee\x65\x70\x96\x5b\x2a\x98\xfc\x34\x12\xf8\x35\x02\x6b\x38\x13\x7d\xb9\x95\xa8\x08\xb1\xea\x4e\x4a\x0a\xa1\x3a\xb9\x08\x78\x4e\xa8\xe4\x9b\xce\x58\x6c\xd1\x48\x11\x33\xa0\x43\xb0\x7b\x6a\xe8\x47\x06\x74\x98\xa8\x5d\x68\xb9\x87\x30\xdc\x9b\xae\xb7\x0e\x56\xde\xbf\xd6\x3c\x3c\x15\x58\x39\xf2\x56\x13\xd7\xf6\x51\x28\x05\x61\xdb\xa7\x9b\x94\xe7\x6d\xef\x47\xe9\x4c\x8a\x17\xdb\xea\x02\x7b\x5b\x70\xd2\xc8\xe9\xfc\xf5\xec\x44\x97\xdb\x15\x6b\x19\xdd\x8b\x17\xa7\x47\x77\x6d\xc3\x5d\x03\x42\xd7\x5b\x69\x14\x6c\x55\xa9\x6b\x42\xf7\x94\xaf\xf7\x99\x71\x3f\x14\xb0\xab\xb2\xda\xf0\x5a\xf7\xee\x9f\x29\x7f\x20\x65\xd8\x83\x28\xa3\xa7\x83\xb2\x56\x39\x93\x93\x61\xbd\x56\x52\x3f\x01\x3e\x89\xce\xe5\x74\xdb\xbf\x7c\x5f\xd0\xfc\x4a\x9e\x33\xb3\x19\x19\xbf\x55\x82\xec\xdb\x2c\xbd\x2a\x54\x6c\xf6\x37\x72\x16\xbe\xd5\xb0\x12\x30\xde\xab\xbf\xb2\xd3\x5d\xbe\x4b\x88\xba\xc7\x80\x42\xf0\x51\x16\x06\x77\x57\xf3\xeb\x94\xa4\x99\x5f\xcd\xbc\x4f\x48\x24\x51\x4a\xe4\xf6\x7e\x09\x41\xdc\x8b\x82\xf0\x9a\xbd\x32\xe8\x3c\x4b\x9c\x81\xa9\x86\x2e\x60\x18\x5f\xf9\x0a\xaa\x1a\x46\x56\xbe\x00\x90\x86\x11\x55\xf6\x1d\xb2\x2d\xc3\x41\xaa\x37\x06\x13\xc3\x18\xda\x72\x80\xab\xe1\xf6\xec\x5b\xdd\x1f\x15\xbd\x6b\x0a\xef\xbd\x4e\x4f\xf5\x95\xbf\x7c\xdd\x20\xd7\x35\x7c\xbc\x82\x8f\x0d\xf2\x5e\x69\xe5\x53\xcb\xd8\x99\xb3\x6b\x60\x9f\x9c\x97\x61\xb9\x51\x1f\x84\x8b\x75\xc6\x57\xd1\xb5\x6d\x6f\x5c\xb6\xe9\x54\x77\x4b\xcd\x97\xc2\x11\xf4\xed\xe2\x90\x2c\x09\xc2\x47\x3e\xcd\xe0\x90\x27\x2b\x6d\x3b\x83\x57\xef\x7f\x8e\x3b\xe0\xc9\xd2\xa1\x45\x67\x4a\x0b\x49\x8d\x4e\x4b\xd1\xaa\xfd\xd0\x4e\x60\xfc\xdd\xe3\xed\x31\x9b\x06\xb1\xf7\x9b\xe6\x84\x8b\xc0\x79\x3b\xb5\xe0\xc2\x97\xb6\x1c\x6c\x71\xa4\xe6\x90\x5b\xbe\x91\x26\x75\x88\xca\x65\x83\xe1\x9d\x28\x9f\xa1\x5b\xaa\x1c\x78\x4d\xe0\x3a\xca\xf5\x57\xe7\xc4\x75\x9f\x8f\x95\xa5\xd5\xfb\x5c\xd0\xcc\x3b\x3b\x92\x7a\x81\xfd\xf1\xaa\xaf\xd5\x6f\xb5\xed\x32\x69\x65\x56\xf4\xa1\xa8\xb7\x8c\x8d\x66\x2d\xda\x40\xd2\x6f\x45\x34\xbe\x56\x31\xe4\xf7\x77\x31\x37\x21\x16\xd4\xa6\x95\x26\x6c\x79\x70\x84\x96\xf1\xf8\x76\x42\x12\xcd\xaf\xd9\x47\xd2\x4a\xc8\x5f\x76\x8f\xde\x1c\xec\x9d\x54\x74\x57\x22\x01\xfa\xd9\x4f\x42\x87\x05\x5a\x4a\x59\x6e\x62\x21\x98\x02\xba\xc1\x7c\x59\x9f\x2d\x57\xf4\xed\xba\x6c\xb8\x83\x96\xdd\x55\xe8\xf0\xa3\x8d\x12\x04\x2d\x84\x33\x68\x44\xa5\xa6\xc6\x66\x7f\x59\x3f\x14\x0b\xb7\x2c\x82\xf3\xff\xf5\x1a\x7c\xc8\xf2\x5b\x6f\x89\x2d\x9f\x02\x7a\x8e\x54\x57\xe0\x72\x74\x9a\xab\xa9\x8a\x90\x59\x4a\x74\x15\x5f\xdf\x30\xfc\x6b\x72\xf9\x5f\x99\xbe\xf5\x08\x13\x09\x89\xde\xed\x9e\x9c\xed\xef\x1e\x38\xd5\xb2\xd3\x5f\xed\x9f\x9e\xff\xba\x7f\xba\xff\xea\x60\x2f\x21\xab\x53\xb3\x24\x24\x7a\xfb\xfe\x08\xd2\x0d\x9f\xbf\x3b\x39\x3e\x3b\x3e\xfb\xed\xdd\xde\xf9\xde\xbf\xce\xf6\x8e\x4e\xf7\x8f\x8f\xe4\xf7\xdd\x77\xef\xce\x5f\x9f\x9d\x1c\x80\x7e\x6b\xef\x44\x16\x7b\x07\xef\x0f\xf6\x77\x4f\xcf\x0f\xf7\xce\x7e\x39\x7e\x93\x90\x16\x53\xbd\x84\x44\x0e\xa5\xc3\xdd\xa3\xdd\x9f\xf7\x4e\xce\x4f\xcf\x4e\xf6\x8f\x7e\x3e\x3f\x38\x3e\xfe\xc7\xfb\x77\x09\x89\x34\x50\x8b\xcd\xe1\xde\xc9\xcf\x12\xeb\x83\xe3\x9f\x7f\x86\x6e\xaa\xbe\x01\x46\x6f\x1c\x8a\xb2\xa8\x97\x2a\x39\xb1\x41\x28\xfd\x97\x9b\xbd\x8d\xe5\xf5\xe1\xa3\x6e\x05\x9e\x55\xcb\xf0\x58\x45\x0a\x5e\xdd\xd7\x13\x28\xd4\x42\x03\x78\x5f\x21\x95\x7a\xd3\x4a\x54\xf8\xb4\x7a\x3c\x14\xaa\x2b\x87\xd4\xeb\x76\xeb\x94\x80\xef\x76\xf6\xc0\xaf\xc6\xf4\xda\xac\xf1\x6b\xd6\xb5\x70\x99\x30\xab\x0b\xc8\x3d\x46\x3d\x6e\xab\xe0\x8d\xeb\x18\x2a\xfb\xfa\x93\x07\xaa\x25\x7c\x9b\xdd\x71\x7a\xb5\x3d\x4d\x67\x9f\x91\xba\x71\x75\x0c\x9c\x87\xb8\x57\x36\xac\x91\x7d\x9e\xe9\x93\x20\x79\x41\x59\xbe\x6d\xd3\x32\x3f\xc8\xd2\xf9\x5e\xd7\xcd\xba\x91\xf1\xb7\x74\x7c\xde\x03\x62\xbc\xd3\x63\xbc\xbe\xff\xb3\x5f\xef\x3e\xf9\xf9\xb3\xda\x28\x9a\x6d\xb4\x1e\x29\xd3\x84\x46\xd6\x9e\xc7\xa8\xdf\x68\x64\xee\xe9\xdf\x71\xf6\xe9\x16\x54\x4d\x78\xb1\x9e\x2d\x73\xcd\x42\xa5\xc4\xe7\xd4\xb3\xb2\x3b\x49\x73\x95\x92\xb8\x98\xf3\xaa\x23\xa5\x01\x5c\x2b\x6d\x2c\xa3\x9b\xd6\x7a\xad\xc5\x93\xcd\xde\x6a\x03\x5f\xa8\xd5\xd6\x3c\xf6\x4d\x7f\x47\x6d\x76\xbe\x75\xdb\x9b\x8a\xb1\xa3\xe7\x87\xa9\xcc\x71\x7c\xc7\xcd\x6a\x4d\xe5\x41\x85\x3d\xcc\x5b\xbd\x3d\xab\xdf\x4b\x4c\x9b\xee\xa7\x4b\xea\xb5\x95\x2b\x71\x83\x82\xc6\xc0\xb4\xf2\x3e\x0c\x7c\x8a\x06\xd8\xa4\x24\x13\x1e\x3e\xba\x07\x06\x66\x8b\x57\x2c\x59\x0e\xbc\x59\x3a\xc0\xa1\x8a\x60\xb7\xf0\x3b\x2d\x71\x96\xb3\xa7\x06\x01\x84\x5d\x9b\x85\x47\xb9\x52\x66\x9e\x2b\xa5\x47\x09\x0c\x99\xf2\x9a\x19\x01\xbc\xa4\x74\x90\xc6\x87\x20\xa1\x2c\x2e\xb8\xb5\x97\x12\x65\x98\x23\x1d\x3a\xdc\xea\x71\xb0\x4a\x61\x67\x93\xc6\x15\x5b\x5b\x88\x27\xf9\x80\x0e\x8a\xe1\x10\x33\x30\xed\x56\x71\x6a\x30\xc7\x3c\xba\x80\xb8\xd9\x98\x47\xe9\xa5\x20\x1c\x6d\xb0\x48\xb0\x59\xc1\xb8\x08\x95\xa7\x99\xbd\x59\xbd\x76\xa8\x2d\xac\xdd\x52\x4c\x4a\x23\xf3\xba\x1e\x12\x1c\x18\xbb\xbe\x00\xdd\xdd\xb9\x94\x4f\x66\x9a\x0a\x2f\xe2\xb7\x1f\xda\xc6\x12\xa1\x16\xaa\x5d\x79\x63\xc9\xa5\x0c\xd7\x28\x60\xcf\xd1\x7c\xa7\xad\xf7\x06\x64\x68\x74\x02\x8b\x72\x83\xcb\x0f\xd5\xa4\x9c\xa6\x90\x31\x72\x74\x76\x6b\x1c\x95\xfa\xe3\x40\x00\x85\x40\x6d\x3c\xad\x45\xee\xf5\xe6\x44\xdc\x92\xee\xb3\x6d\x05\x2c\x2b\x68\x0b\xc4\x57\xf5\x19\xed\xff\x0c\x5a\x81\xaa\x3a\x6d\x13\xd5\xbe\xee\x54\x81\x54\x17\x78\x25\x8e\x3c\xb3\x7b\x69\xb8\x30\x87\x69\x7c\x0d\xb3\x7b\xc3\xdf\xad\x93\x4c\xfe\xef\x65\x7e\x0e\x9b\x86\x6b\x98\xb4\x78\x31\x56\x6d\xfb\xb4\xa3\x95\x89\xfe\x12\x8c\xbc\xdb\x45\xc9\xed\x67\x44\xb0\xdc\xb8\x4e\xd6\x0b\xab\x08\xe4\xcd\x72\x0e\x25\xc7\xa3\x18\x1b\x3e\x2f\xd2\x69\x8b\x73\xa6\x67\x3c\xa6\x80\x07\x10\xe6\xdc\x90\x24\xc0\x4b\xb2\x72\x54\x4d\xfb\xb4\x32\xe8\x33\x6b\xb3\x39\x5c\x0d\x9c\x0b\x36\x3b\x20\xd7\x24\xfb\x95\x92\x1b\x73\x8d\x17\x60\x1b\xb0\x2a\xde\x66\x73\x91\x11\x51\xaf\x0f\xa1\x31\xcd\xb7\x35\x2c\x0b\xbd\xaa\x15\x8e\xce\x24\x3e\xac\x9a\xca\xad\xa8\xf0\x90\x96\x9c\x45\xde\x85\xb3\xf5\x0b\x30\x5b\x6d\x2a\xb8\x8c\x52\x5f\x03\x46\xbb\x65\x60\xbb\xbf\xae\x65\x17\xc7\x91\xb6\x85\x5e\x6d\x7f\xe8\x2a\x04\x6b\x34\x63\x56\xdd\xf6\x25\xe3\xdb\xc0\x0c\x5f\xd1\xfc\xca\xac\x28\x63\x60\xcd\xef\x9b\xbf\x96\xc7\x56\x30\xb6\xd3\x71\x3a\xf3\x2c\x4e\x3d\x46\x79\x55\x83\x35\xa0\x90\x5f\xaf\x06\xc9\x36\x04\xda\xea\x5d\xf5\xd1\x7f\xdf\x86\x40\x73\x99\x2e\xc7\x75\x12\xbd\x6e\x6b\xa2\x0e\x42\x6f\x1c\xdb\x4a\xcb\xaa\xeb\x5e\x3a\xeb\x83\x03\x78\x8f\xca\x50\xf8\xc6\x9e\x8a\xeb\x74\x76\x9e\x60\x78\x8e\xed\xce\x07\xd7\x8e\x27\xfe\x2f\x6b\x03\x3a\x5d\x6e\x03\xda\x90\x39\x1e\x78\x9f\x5e\x13\x81\x96\x07\x8b\x5d\xed\xfc\x58\x13\xd8\x96\x0a\x7b\x7f\x76\x54\x19\x11\xd5\x33\x2e\xb4\xf0\xef\xc2\x8d\xba\xcf\xd5\x4b\xa6\x77\x4d\x5f\x45\xb0\x55\xb7\x39\xb7\x80\x09\xdc\xf0\x9d\xc0\xd2\x82\x6c\x10\x88\xf8\x22\xea\x51\x2d\x6c\x81\x84\xd4\xe2\x46\x78\x7c\xb3\x3c\x2e\xa9\x77\x5c\x5e\xa6\x59\x76\x91\x8e\x3e\xc6\xa4\x52\xae\xb4\xfe\x65\xbe\x07\x99\x70\xf9\x0d\xc2\x05\x5c\x04\x80\x37\x46\x59\xf7\x99\xe8\x6b\xcf\xa7\xb6\x78\x35\xda\xa5\xc6\x46\x16\xa9\xb8\xd9\x40\xf8\x75\x70\x33\xd2\xaf\x42\x91\xbc\x14\x61\xcd\x1b\x8a\x20\x84\x50\xd3\x4b\x67\xad\x48\x39\x8a\x81\xcd\x98\x11\xda\xde\x90\x99\x3c\xf9\xf2\x11\x25\x56\xe0\x69\x44\xcf\xb1\x94\xbd\x27\x44\x4d\xcd\x73\x64\x49\xd4\x99\x07\x46\xf3\xf8\xcc\x20\x35\xf3\xdc\x0b\x6b\xbc\x68\x69\x52\xb9\x4a\x91\x55\x89\x2c\x15\xcf\x05\x41\xd2\xd5\x96\xe3\xe4\x3d\x1d\x7b\xc2\x73\xd5\xb0\x11\x59\xa0\x64\x1c\x6c\x11\x15\xb8\xd3\x4f\xf8\x61\x19\x99\xf0\xc3\x6f\x6c\xde\x49\x85\x64\x0c\x04\x19\x77\x04\xeb\x4c\xd9\x3c\x17\x10\xa4\x53\x41\xe8\xfc\xf5\xd1\x82\x94\x7f\xc5\x9d\x8b\xb9\xe8\x50\xd1\xa1\x45\x27\x67\xa2\xe3\xb2\xa0\xaa\xc4\x1e\x54\x14\x1d\xb5\x25\x44\x1f\x4c\x1a\x0a\x5e\xf3\x1b\x11\x95\xd0\x8e\x35\xb1\x1d\x85\x54\x3b\x9d\xd1\x12\x2f\x9d\x19\xce\xb3\x3f\xad\xeb\x16\xf4\x32\x7d\x31\xa8\x3a\x5e\x34\x4f\x52\x67\xc2\x2d\x54\x64\x15\x77\x14\x08\x77\x48\xea\x71\x4d\xb5\x2c\x81\xcc\x5a\x5e\x79\x2d\xb8\x51\x05\xd7\x1a\xe9\xa3\x79\xf8\xea\x3b\x8f\x41\xd5\xb1\x83\xde\xe3\xfb\xd0\xee\xa5\xe2\x5d\x27\x06\x5b\xa1\xa8\x5f\x3e\xaa\x2b\x47\x75\xd1\x88\x70\x4b\x18\x91\xe1\x86\xa8\x87\x62\xd0\x39\x99\x96\xc6\xf8\xe1\xab\xe9\xa9\xc9\x25\x5a\x42\x9a\xe8\x49\xaf\x98\x04\xc7\x36\x57\xaf\x1a\xdb\x6e\x5f\x2b\xd5\x2c\x1f\x76\x6f\xbd\x75\x62\xb9\xa0\x85\x80\xac\xa3\x2d\xec\xfc\xfd\x78\xb5\xf3\x87\x6b\xf4\xa7\x36\x4e\xad\xed\x7b\xb2\x41\xf5\x0e\xb9\xc1\xbd\x59\x39\x68\x45\x1d\xc8\x3d\xba\x66\x23\x66\xbe\x3c\xac\x19\x5d\x0b\x21\xe3\xfb\x92\x55\xa2\x60\x64\xad\x7c\x4f\x8b\x3a\x79\x9d\x10\x18\x5f\xdd\x48\xa0\xb6\xb9\xb4\x5a\x6f\x0e\xf8\xd0\x24\x22\x6c\x2f\x2a\x11\x91\xa5\x12\x51\x6e\x78\x16\x06\xd6\xc8\x6d\xef\xe8\xe7\xfd\xa3\xbd\xf3\x77\xbb\x27\x7b\x47\x67\x41\xcd\xc0\x15\x38\xb7\x6f\x7e\xcd\xd4\x7a\xf5\x06\x61\x9a\xbc\xa1\xaa\xd9\x7c\xd6\xf2\x4d\x3c\xdc\x37\xe5\xab\x8f\x96\xc3\x08\x52\x10\x9e\xbb\xdf\x90\xd7\x2d\x99\xc8\x61\x9a\x5f\x14\x23\x4e\x2f\x48\x6d\x80\x6c\xfe\x70\xcc\x5c\xc4\xef\x28\x40\x38\x4d\x06\x43\xad\x08\x63\xbe\x22\x2c\xf8\x5b\x90\x24\x49\x48\x13\x36\x28\x86\x68\x27\xd5\xdb\xe3\xe0\x7f\x7f\xff\x3d\x1a\xfe\x2d\x40\xb1\x7e\x43\xcd\xac\x4f\x75\x1c\xee\xdf\x7f\x8f\x02\xb4\x91\x6d\x25\x41\xf8\xfb\xef\x51\xf4\x37\xb4\x13\x68\xfb\xa2\xc5\x4c\x9e\xc1\x3c\x8f\x09\xe6\xe4\x8a\x7c\x8a\xbd\x58\xb4\x1f\xfe\xf7\xd1\x22\x2b\x1f\x7d\x40\x58\xa5\xbb\x8a\x45\xe9\xfc\x2f\xa1\xa1\x39\xc2\x79\xb2\x28\xf1\x5c\xce\xc6\x79\xde\xd6\x51\xd7\x4d\x91\xf4\xb0\x4a\x95\xce\xfd\x54\xe9\x7c\x40\x87\x49\x92\x80\xdf\x69\x42\xd1\x06\x07\x4a\xc8\x43\x1b\xf7\x15\xf8\x52\x9d\x8d\xa4\x6a\x1c\xab\x61\x24\x3d\x5b\xa6\x91\x8c\x23\xf1\x68\xcf\x8b\x6a\xfa\x9f\xc1\x70\xa3\xfa\xd5\xdc\xef\x2f\xd4\x8a\xd1\xb7\x1c\x92\xda\x6d\x01\x8e\x8c\x0f\x98\x76\xdb\x9a\x11\x0e\x99\x5b\xf3\x11\x01\x37\xab\x90\x25\x34\xca\xd9\xcd\xdd\x1d\x8d\xa6\xec\x3f\x47\xea\x49\x25\xb5\xd3\x3f\xa6\x85\x7e\x60\x47\xec\x06\xed\xa8\x28\x09\x21\x45\xf1\x9b\x54\x10\x59\xd7\xd3\x5e\x66\x2b\xf3\x76\x91\x4a\xba\x42\x2c\x54\x62\x0d\xb8\x5b\x96\x5d\x80\x18\xc0\x35\x0b\xab\x9f\x92\xa7\xdd\x6e\x16\x0a\xb4\x13\xa6\x89\xc0\x45\x92\xa3\x38\x64\x89\xc0\x69\x92\xe3\x22\xa1\x08\xa2\x1f\xd8\x80\xbd\xd6\xda\x0e\xd2\x54\x16\x26\x34\x2f\x83\xbe\x5e\x26\x93\x90\x40\x52\x93\xb9\xf3\x85\x4d\x92\x64\xbc\x63\xcb\xc7\xa3\x30\xc5\x97\x78\x8e\x8b\x6a\xb6\x44\x63\xd6\x2b\xf8\xad\x0b\x0e\x02\x75\x72\xe3\xea\x4f\x8d\xdb\x35\x8f\xc8\xa7\x11\x01\x65\x5a\x42\x31\x2d\x2f\x69\x9e\x66\xd9\xed\x42\x84\xa8\x74\x40\xc7\x21\x5a\xb8\x5f\x12\x31\x8a\x19\xe8\x63\xdb\x3a\x34\x36\xb9\x2a\x75\x3a\xb5\xf4\xee\x2e\x4c\xdb\x27\x2f\xa6\x72\x51\xb2\xa4\xf7\x82\xb9\xf9\xcb\xb6\xb6\x50\x28\x12\x3e\x60\x43\x14\xc1\xfa\x51\xb1\x96\x09\xea\x76\xa9\xf6\x30\xd4\xb9\xe2\x2c\x69\xc0\x15\x51\x76\x40\x8a\x31\x40\xe6\xb4\x15\xab\x0c\xcf\x13\x1a\x32\x84\x47\xda\x9f\xef\xf4\xec\xe4\xfd\xeb\xb3\xf7\x27\x7b\x70\xb7\xfc\x76\xff\x60\x6f\x63\x04\xd9\x1f\x54\x1c\xe5\xce\xa3\xc5\x5c\xb7\x55\x7e\xc0\x52\x5a\x60\x19\x89\xa4\x88\x1e\x66\x08\x59\x6d\xfc\x44\x76\xe3\x32\x91\xb2\xce\x2c\xe9\xbd\x98\xfd\x64\x5a\x7f\x31\x33\xa1\xa3\xa7\x49\x3a\x98\x0d\x37\x26\xaa\x03\x53\xad\x64\x0f\x89\x1c\x41\x88\x70\x5e\x55\x77\xfb\x2b\x5c\x82\xe5\x49\xef\x05\x77\x60\xb9\x01\x9b\x27\xe9\x80\x0f\x37\x5a\x26\x70\xae\xd4\xf7\xdd\xae\x7e\x80\x89\x31\xc7\x93\x01\x1f\xa2\x72\xd4\xed\xfa\x9d\xd9\xcb\xc7\x61\x86\xca\xb2\x6d\xb9\xa7\xad\x9b\x40\x9a\xd4\x7d\x0f\xcd\x26\xd6\xb0\x4e\x9b\xb2\x31\xbd\xa4\xeb\x7a\x14\xfc\xd9\x4e\x2c\x05\x11\x87\x1a\xc1\xc3\x34\x4f\xaf\x1e\x16\xb7\xb9\x56\xf5\x3e\x73\xdc\xf4\x82\x66\x82\x92\x75\xc3\x2d\x8b\xc8\xd0\xee\xb5\xaa\x0b\x69\xb1\x1b\xbe\x33\x6a\x7e\x82\xc7\x48\x7a\x2f\x83\xb5\x2c\xb1\x8b\x31\xd2\x84\xa4\x0f\xa9\x68\x66\x8c\xfb\x5a\xbe\x02\x4a\xfe\x13\xff\x20\xe0\x85\x92\x8a\x84\x69\xf9\xb2\x3e\xa1\xae\x53\xbe\x90\x74\xa1\x65\xc2\x1b\x89\x69\x69\xb7\x1b\x42\x94\x49\xff\xf8\x02\x69\x12\x73\xe5\x7b\x20\xd2\x2b\xab\xed\xc1\x42\x47\x1b\xcd\x23\xc1\xd3\xd1\x47\xa4\x42\x22\x90\x84\xaa\x8d\x51\x5f\x0b\x3a\x79\x36\x8f\xe6\xb3\x71\x2a\xc8\x59\x7a\x85\x42\x8e\x19\xa8\x90\x72\x50\x17\xcc\xa7\xea\x2d\x83\x58\x07\x98\x97\x15\x4f\x43\x45\x25\x88\x13\xd3\x03\x39\x40\x07\xed\x32\x09\x2a\x24\x46\x03\x28\x35\x44\x68\x91\x27\x44\x9b\x2b\xb5\x66\x30\xa6\x12\x06\xce\x51\xe9\x1b\x91\x16\x44\x80\xb0\x43\x47\x6f\xc8\x88\xf1\x14\x40\x32\x84\x59\xe9\xd5\x92\x58\x94\xab\x8a\x2f\x9d\x41\x73\x41\xda\xfd\xd3\x75\x19\xe5\xb1\xa2\xca\xd9\x87\xf3\x69\x3a\xe2\xec\x9e\xc2\x9c\x8c\xe7\x23\x72\x5e\xaf\xf3\xd5\xdd\x98\x97\x56\x20\xd3\x99\xb8\x5d\x7b\xe9\x41\xe9\x95\x0b\x3a\x67\x62\xef\x41\x20\x4d\x85\x7b\xa0\xe6\xeb\x1a\xea\x4b\x88\x39\xb9\x0f\xc7\x87\xa0\xb7\x12\xd6\x05\x63\xd9\xda\xc0\x64\xe1\x95\xd0\x20\x3d\xf2\xfa\x1b\xa1\x2c\xbd\x12\x1e\xf9\xf7\x3c\x5d\x1f\x3d\x28\xbd\x12\xde\xd5\x03\xcc\x62\x56\xd3\xed\x4a\xac\x3f\xa0\x57\x62\xf5\x78\xae\x1d\xfd\x5e\x44\xd9\x6a\xac\xb2\x07\x60\x95\xdd\x83\x15\xcb\xc9\x3f\xd3\xf5\xd7\x81\x2a\x7e\x8f\x8f\x8c\x0a\xe3\xbd\x36\x4c\x53\xe1\x9e\x04\x02\xda\x50\x34\xbf\xda\xcd\x68\xba\xfe\x39\x5c\xaf\xb8\xb2\x95\x34\x5f\x37\xed\x81\x88\xd2\x7c\x75\xca\x03\xb6\x3e\x3b\xc2\xee\x49\x4b\x31\x9f\xae\x9d\x8c\xa1\x98\x4f\x57\xaf\x5d\x88\xa0\xb3\x1e\xac\x29\xcd\xef\xd9\x07\x3e\xad\x0f\x2b\xfd\x74\x0f\xac\xd9\x03\x60\xcd\x56\xd3\x0b\x0c\xfc\xd6\x25\x18\xe3\xf7\x5a\xc3\xbd\xa1\x97\x97\xeb\x03\x54\xe5\xef\xeb\xed\xab\x75\x17\x08\xf4\xf7\xd5\xea\xd5\x71\x49\x33\xb1\x36\xfb\xcb\x23\x55\x7c\x0d\x88\x0f\x40\xd2\x54\x58\x09\x75\x9e\xd3\x7f\xaf\x0d\x51\x16\xbe\x17\xda\x03\x30\x54\xc5\xef\x83\xc8\xd6\x5f\x1f\x50\x7a\xb5\x87\xa3\x64\xde\x0b\x32\x5a\x7f\x3a\xda\x1a\x65\x89\x96\x33\x50\x23\x96\x65\x0f\x81\xaa\xcb\x2f\x93\x3f\x96\x8b\x77\xb5\x4b\xec\x75\xb2\xaa\x7c\x13\xe1\x43\x05\xf8\xd3\x11\x38\x28\x5c\x8c\xfe\x93\xa4\x1f\x0f\xd3\x59\x95\x87\x17\x9a\x87\xf7\xe2\x59\x7b\x17\x85\xad\x31\x8a\x2a\x25\xa2\x19\x67\x82\x75\xbb\x2d\x2f\x43\x84\x37\x35\xe6\xf0\x5b\x56\x8f\x26\x69\x71\x7c\x93\x9b\x3e\x28\x91\x44\x9e\x23\xd0\x46\x11\x20\x13\xf5\xc8\xf4\x00\x5c\x1a\xd5\x53\xc2\x76\xea\x79\x44\x19\x8a\x17\x65\x69\x35\x3f\xba\xe0\x40\x0c\x93\x1c\x6b\x0f\x69\x75\xed\x46\xa5\xfc\x64\x6e\xc3\xa1\xab\x5a\x65\xa8\xee\x8c\x0f\xd3\x19\x06\x9f\x56\x25\x42\x11\xef\xce\x4c\xd6\x73\xe1\xb7\x6d\x5d\x88\x3e\x9e\xe4\x4a\xe9\x26\x74\x7e\x11\x09\x20\xc7\x02\xa9\x58\x92\x96\xce\xa9\x27\xe6\x75\xe8\x86\x96\x98\xf2\xa5\x12\x93\xc0\x5c\x4a\x4c\x54\x4b\x4c\x69\xbb\xc4\xa4\x46\x8f\xfa\x12\x53\xde\x2e\x02\xa5\x08\xa7\x65\xb5\x56\xc2\x23\x98\x2e\x20\x39\x2d\xad\xd6\x3a\xf7\x57\x4b\x45\x9f\x21\x91\xaf\x56\x7f\x58\x2a\x72\x29\x71\xda\xa0\x06\x51\x14\x11\x13\xea\x2f\xf7\x09\xc4\x8d\xb2\x68\x30\x74\x75\x69\x48\xd0\x22\x57\xfa\x28\x82\x4a\xa3\x6f\x6a\xd1\xc6\x2d\x14\xc5\xf9\x80\x0d\x5f\x18\x47\xc6\x34\x1f\xeb\x09\x4b\x49\x81\xc2\x54\x12\xdd\x28\xe3\x24\xfd\xfc\x3c\x6f\xbe\x8f\x7e\x14\x45\x79\x25\x78\xa7\x69\x97\x24\xb9\xf5\x54\xd5\x2a\x6d\x02\xba\xec\x85\x97\x9a\xda\x25\x13\xc9\x07\x74\xa8\xaf\xc2\x43\x86\x8c\x96\xcf\x08\xc1\x8d\xc2\x64\x08\x41\x3c\xcb\xcf\xd8\x35\x40\x10\x6c\xb9\x31\xaa\x75\x8c\x6c\x05\x1a\xff\x00\x37\xb3\xd6\x18\x6d\x80\x84\x05\x49\x0e\x7d\xf4\x08\x52\x11\x46\x89\x95\x10\xbf\xb4\xb9\xcd\xb5\xdb\xcb\xc9\x1a\x6d\x2d\xef\xd0\x11\xcb\xc9\xea\xfe\x7c\x1e\xf8\xcd\x06\x48\x0d\x51\xca\x95\x9f\x07\xb2\x63\xfc\xf3\x96\x62\x0b\x42\x66\x6d\xdd\xac\x01\xde\x66\x28\xac\x42\x75\xd7\x3a\xa0\xbe\xce\x4d\x2b\x20\x7a\x3e\xbc\x95\xd6\x89\x4d\x50\x92\x24\x5c\x03\xbe\x12\x5f\x0d\xea\x4b\x07\x93\x7c\x3d\xa0\x16\xd3\xec\xeb\x61\xfa\x93\x83\xf9\xf5\x30\xfd\xc9\x62\xaa\x44\xd5\x65\x13\x2e\x95\xb2\x20\x0a\x09\xd2\xe5\x42\x15\xf1\x50\x8b\xa2\xf7\xd7\x72\xc9\xaa\x54\xa4\x99\xaa\x90\xb9\xce\x34\x87\x03\x9d\x2f\xed\x88\x0a\x7e\x02\xcc\x53\x55\x85\x68\x4a\xe0\x1c\x61\xc9\x7d\x42\x5f\xb9\xe4\x30\xf2\x5a\xdc\x43\x2e\x37\xf3\xe4\x25\x41\x1b\xea\xa3\x09\xbf\xa6\xdf\x6f\xc2\x07\xc6\xeb\x41\x6e\x1e\xa0\x01\x5c\x83\x65\x7c\x50\xf8\x9b\xfb\x79\x47\xff\x0c\x54\xdc\x9e\x17\x16\xa8\xba\xc7\x0e\x86\x41\x63\xb1\x37\x32\x5b\xb9\xc5\x9e\xcf\xb3\x2c\x49\x12\x7a\x77\x17\x28\x0a\xb8\xdb\x4d\xba\x93\xc7\x34\x52\x34\x08\x05\x56\xa6\x85\xb5\x9c\x65\x65\x8d\x0f\x35\x57\x8e\x1a\xfc\xe3\xff\x22\xe9\x68\xf2\xd8\xdc\x87\xed\xb0\xa4\x92\x71\x17\xbe\x46\x7f\x7b\xf4\x18\x07\x01\x5c\x3d\x12\x4c\xb6\x12\xe8\x03\x28\xb0\x2b\x7d\xc3\x51\x14\x89\x46\xd7\x48\xbd\x6b\xac\xa2\x15\xa7\xc5\x2e\xe7\x29\x04\x41\xdd\x81\x17\xbb\x28\xf4\x74\xe8\x72\x2f\x8d\xcd\xfb\xa5\x5d\x4b\x5d\x24\x51\x9a\xc8\x5d\x77\x06\xd1\x37\x15\xb1\x2b\xe9\x61\x2b\x6c\x03\x6d\x5f\xb9\xd0\x96\xa8\xe2\xb0\xac\xe5\xa2\x76\x59\x65\x39\xd7\x76\xa6\x5e\xf2\xb3\x3c\x11\x58\x24\x83\x21\xc2\x6a\x44\xc2\x36\xd3\x11\xe8\x03\xb7\x03\x5a\xfa\x77\xcc\xdf\xa6\x41\x25\x28\xb7\xb6\x39\x57\x7c\xa0\x8d\x08\x52\xd9\xf2\xfc\xdc\xbc\x6a\x94\x30\x35\xd9\x2e\x5c\x3a\x1d\x2f\x28\xaa\xe3\xbe\xaa\x13\xfe\x45\x75\x3e\x30\xd4\xed\xb2\x4a\x3d\x2a\xc5\x9a\x90\xa0\xbb\xbb\x90\xea\xe4\x11\x58\x18\x6e\x13\x49\x19\x12\x0b\x89\xf7\x67\x70\x64\xc5\x7c\xda\x66\xc1\x23\x17\xb3\xf6\xfa\x22\x5b\x02\xf7\x94\xce\x4b\x9f\xec\x9f\xee\xa9\x71\x98\x8a\x89\x2c\x06\x3f\xf1\x76\xff\x71\x4f\xa9\xa6\x54\x75\x9a\xaf\x55\x9d\x2a\x66\x1d\xab\xda\x60\xa3\x06\x8d\xcf\x92\x42\xfd\x7d\x75\xdb\x2e\xb7\x14\x21\xdc\x37\xeb\x15\xfc\x68\x21\xca\x0f\x72\x73\xf5\x72\x24\x63\x1d\x9b\x56\x0d\x7c\x92\xd9\xc7\x1a\x48\xb9\x99\x69\x91\x2a\x79\x92\x24\x49\xdd\x48\x61\xa7\x01\x36\x6e\xbc\x49\x92\x24\x37\x93\x21\x6b\xc1\x8c\x22\x65\x9a\x42\xff\x0d\xf6\x39\x4a\x25\xd2\xda\xb1\x2f\xde\x50\xab\xb3\x8c\xea\x5d\x47\xb5\x08\x36\xa6\xcb\xf7\x1b\x30\x24\xd2\x7a\x10\x87\xdc\x3a\x6b\xc3\xee\x49\x6e\xad\xac\x81\x9c\x40\x3b\x22\x1e\x0c\x4b\xb9\xa2\x44\x34\x63\xb3\x10\x99\x65\x2a\x41\x59\xcf\x3d\xb8\xc9\x17\x95\x9b\x7c\x97\xe7\x7a\x53\xca\x3e\x62\xc0\x8d\x55\x04\xf5\xe5\x30\x88\x97\xcc\xc0\xb0\x07\x2d\xf2\x64\xb3\xb7\x71\xc1\x49\xfa\xb1\x94\x52\x50\x5f\x0e\x9a\x16\x83\x36\xfb\x5a\x0c\x92\xeb\x65\xa3\xba\x53\x52\xb9\xf0\x3c\x95\x12\xd2\x36\x6f\x6f\xe8\xe5\xe5\x43\x86\x50\xac\x3f\x94\xb8\xb1\x7d\x88\xd5\xc3\xeb\xed\x2a\x3b\xd4\xa3\xe1\xb6\xec\x24\x8b\x40\xd1\x74\x7c\x19\xfa\x87\x0d\x5d\x39\x0f\xb4\xe6\x6a\xad\x59\xf0\xd0\x49\xe0\xa9\x3f\x76\xe4\xe9\x1f\x8b\x06\xcd\x05\xd0\xdc\xa8\xdb\x14\xc5\x19\x17\xcd\x1b\x6f\xa3\x6f\xe2\x77\x77\x40\x01\x43\x09\x95\x2b\xdf\x9e\x0c\x1b\x4b\xad\x96\xf8\xce\x58\x03\x8b\x27\xc0\x04\xeb\x85\x6a\x33\x15\xe8\x80\x57\xf3\x0d\xcf\xb8\xa7\x7a\x44\xad\x3a\x75\x54\xde\x71\x04\xd8\x87\x7a\xe7\xe3\xfe\xd1\x0b\xbb\x94\x7f\x18\x4d\x1a\x53\x29\x9d\x0b\xf6\xba\x35\xbf\x6b\xeb\xf4\x81\x9b\xfb\xe0\xbf\xe4\x33\x64\x9f\xc4\x69\xab\xf1\xa6\x3f\x58\x03\x81\xf9\xd0\x19\xff\xc5\x96\xa7\x90\x1f\x24\x6d\x83\xb4\x18\x05\xc3\x12\x95\x21\x45\xb8\x48\x18\x64\xc6\x88\xd7\x5b\xe5\x05\xda\xf1\xcd\x8b\x2c\x17\x54\x18\xe2\xa0\x78\xc9\x2a\x82\x62\x4d\x1a\x52\xe4\x6d\x0e\x6a\xd1\x8b\xba\xf2\x65\x90\xe2\x62\x98\x88\x01\x1b\xe2\x2c\xd1\x96\x08\xd3\x59\xca\x95\xe8\x6d\x77\xee\x54\x73\x79\xf0\x93\xe2\x14\x81\x82\x44\x4e\xa8\x4c\xef\x0c\xc1\x98\x14\x23\x49\xc7\x62\x67\xbb\xff\xb7\x2c\xce\x8c\xce\xa6\x27\x47\x2d\x2c\x70\xba\x7c\x1d\x99\x89\x34\xaa\x32\xfa\x56\x9b\xbb\x52\x01\xdc\x4c\xb5\xd6\x54\x07\x83\xb0\x30\x25\xfc\x8a\x2c\xfb\xa8\xb4\x9c\xcb\xbe\xde\x90\xf4\xe3\x79\x41\x96\x78\x31\x7d\x33\xb3\x02\x83\xd4\x83\x93\x92\xdf\x07\xf2\x9d\xee\xdd\xda\xa0\x55\xb5\xd5\x69\xd9\xff\x49\xd2\x8f\xa7\x64\x5d\xa5\x3f\xad\x86\x02\x84\xc1\xf1\x77\x12\x88\xe7\xb9\x77\xf2\xf3\xde\x0e\x37\x25\x63\x1b\xca\x45\x95\x66\xcb\xa6\x8b\x3f\xa0\xeb\x19\x44\xdb\x5d\x45\x54\x4d\x60\xfb\x2f\xc4\x4f\x75\x3e\xe7\x85\x30\xaa\x43\xee\x78\xa0\x81\x00\x8b\x44\x8e\xdc\x81\xab\x29\xf5\x91\xdc\x16\x21\x47\x5a\xf1\x98\xfb\xb6\xb4\x26\xe5\xc0\x80\x0e\x37\x88\x3c\x7e\xf9\x80\x0d\x9d\x82\xfd\x73\x18\x58\xd5\x6d\x88\x1c\xd6\xb4\xd8\x5e\xa8\xaf\x31\x2f\x35\x72\x38\x97\x9b\x96\xf0\x2c\xb8\xf3\x55\x34\xd5\x2b\x68\xa9\x50\xfd\xcd\xe3\x28\xeb\xd4\x0e\x5a\x14\x16\x2d\xa2\xb0\x30\xfa\x5a\xb2\xe1\x47\x44\xf0\xc7\x42\xb4\x8e\x05\x44\x2d\x18\x62\x65\x85\x3f\xe0\x43\x2b\xb2\x94\xab\x28\x62\x37\x86\x3f\xd9\xf0\xbe\xe5\x80\xd6\xcb\x6f\x47\xff\x8d\x21\x52\x41\x25\x04\xb4\x71\x2b\x93\x52\x83\x77\x43\x55\x2a\x11\xaa\xea\x80\x37\x4d\xc1\x77\x35\x24\xd8\xfa\xc5\xd9\x44\x7b\xcd\x92\x2e\x07\x9f\x92\xcc\x9a\x25\xd4\xfb\xb2\x5c\xee\x2c\xa0\x93\x87\xae\x7f\xd9\xe7\xfb\x0c\x70\xce\xf8\x36\x44\x30\x5b\x16\x62\xc7\x28\x77\x2e\xd2\xd1\xc7\x8b\x39\xcf\x97\x45\xcb\xf9\x2a\x1e\x21\xaf\xe7\x9c\x93\x5c\x9c\xcc\xf3\x03\xc6\x66\x2d\xe1\xde\x98\xce\x5f\x02\x52\xce\x1f\x8c\xe6\xc9\x18\x93\xe8\x82\x5c\xf9\xe2\x20\x5a\x64\xea\x95\x62\x35\x49\x3e\xae\x7e\x83\x84\x44\xc0\xf2\xe9\x4c\x63\x2d\x0d\x65\xf6\x63\xdd\x57\x10\x2e\x07\x4f\xf5\xc7\xf1\x19\x9d\x12\x5e\xb4\x02\x98\xa4\x85\xfa\xaa\x39\xde\x34\x1f\x91\xac\x59\x3e\xab\x7c\x51\x65\xb3\x54\x4a\x94\x6d\x40\xe1\x4b\x13\x25\x96\x8f\xc8\x12\x5e\x1a\x3c\x16\x26\xf4\x52\xb8\x74\x6a\x08\xbb\xee\x1d\xe7\x23\xa2\x2a\xf8\x14\x39\xae\xc0\x6b\xa1\x8a\xa9\x56\x45\x23\x27\x9f\x96\xb1\xf4\x44\x29\x1a\xfa\xb2\x6d\xdb\x09\xe2\x51\xa6\x8d\x89\x34\xb4\xd1\x91\xdf\xc7\xe4\x82\xcd\x97\x61\x66\x3e\x36\xb1\x12\x13\xce\x84\x58\x32\xcc\xe6\x63\xb3\xda\x05\xcd\xc7\x09\xb1\x09\xdb\x4e\xe6\x79\x42\x22\xb7\x0c\x12\x12\xfd\x7b\x4e\xe6\xa4\x80\x5c\xdc\xc5\xf5\x0c\x9c\x7a\xfe\x5b\xbe\xaa\x9e\xc7\x72\xd7\xd5\x37\xa4\x1f\x1e\x2d\x40\x2d\xc1\xd3\x7c\xcc\xa6\x21\x2a\x1f\x2d\x8c\x1b\x44\x88\xca\x0f\x56\x73\x18\x44\x01\x0e\x02\xb4\xd1\x84\x6c\x72\x55\x0c\x5c\x6e\x3c\xed\xd5\xe8\x52\xc3\x17\xd6\x4b\x2c\xc0\x01\x58\x9a\x9f\x98\x5f\x26\x2b\x18\x4e\x87\x1b\x16\x7f\x93\xb2\x42\xf9\x4c\x1b\xcf\xd5\x02\x2f\xf4\x23\xb4\x1c\xbb\x06\x59\xfe\x4a\xae\xae\xd8\x1f\x30\x96\x90\x12\xb3\x7c\x2f\x1f\xd7\x98\x6d\x96\x08\x65\xa9\x7b\x99\xcd\x8b\xc9\x6e\x71\x9b\x8f\x8e\x2f\x0a\xc2\xaf\x09\x2f\x24\x47\x2b\x2b\xc9\xee\x9d\xa9\xa8\xe2\x3c\xaa\xfc\x36\x5f\x0f\x89\x98\xb0\x71\x1c\xb0\x5c\xfb\xdb\x03\xb4\x5a\x53\xa6\xd3\x9b\x70\x67\x4e\x36\x93\x24\xbd\xbb\x5b\xd1\x36\x06\x9f\x0a\xcf\xff\x64\xee\x4f\x0c\x3e\xcf\x6b\x73\xa2\x32\xfa\x99\x91\xdb\xd4\xdd\x3a\x04\x8b\xf1\x45\x38\x0f\x12\x38\x27\xd5\x41\xf9\xd3\x6a\xb4\xa1\x67\x9b\xb9\x2f\x96\x7f\xa5\x24\x37\x86\x17\xd1\x88\xe5\xa3\x54\x84\x4a\x92\xf3\xb6\x7e\xed\x5d\xfa\xb5\x12\x03\x7c\x8b\xf4\x45\x6b\x45\xfb\xd7\xfd\x58\x2f\xd4\x7f\xbe\x3c\xd4\x3f\xda\xc8\x6b\x61\x80\x0a\x1d\xfc\xe3\x6d\x2a\x4f\xf2\x5b\x40\xcb\xd8\x9a\x2c\x4f\x07\x50\x40\xee\x86\x15\x64\xd5\x05\x24\x27\xa3\x1e\xad\x57\xfa\x67\x65\x0f\xfb\x86\x99\x00\x32\x36\x4a\x6e\x30\x89\x6e\x92\x3d\x20\xe7\x28\x9d\x92\x8c\xfe\x87\x24\x9f\xe4\xcf\xb4\x98\x10\x2e\x7f\x1d\xc3\x36\xac\x3f\x9d\xca\x1f\x60\x67\x71\x79\x9b\x9c\x81\xba\x62\x4c\x78\x31\x62\x9c\x24\x87\x50\x70\x46\x45\x0a\x45\xdf\xad\x90\x6b\xae\x88\x50\x49\x30\xd6\x37\xea\x74\x55\x56\x8b\x4c\xc5\xc3\x41\x17\x3e\x68\x3d\x05\x1e\x0f\x3a\xe7\xc3\xc7\x57\x3a\x38\x57\x1e\x41\x94\x9a\xb0\x4f\x9e\x62\x92\xbc\xfc\xa4\xae\x03\xd5\x86\x4c\x71\xb0\x1d\x20\x84\xd3\xe4\x71\xb8\x7d\x77\x7e\xf7\x7b\x74\xf7\x7b\x81\xb6\xc2\x08\xed\x3c\xbe\xc2\x45\xf2\x38\xfc\xdf\xbb\xdf\x1f\xa3\x70\xb0\xbb\xfd\x3f\x43\xf4\xf8\x0a\x67\x6d\x20\xdd\xd5\x50\x8a\xf5\x0a\x4b\x5e\xf2\x1d\x1e\x09\xf6\x7e\x36\x23\xfc\x75\x5a\x90\x10\xc5\x41\xe0\x1a\x2e\x54\x3d\xc1\x0e\xd8\x8d\x29\x80\x10\x9e\x27\x8f\xff\x57\x22\xa2\x51\xc0\xa3\xe4\x71\x18\xa1\x16\xd4\xc6\x1a\xb5\xbb\xdf\x23\x14\x0e\xd2\xed\xff\x00\x76\x93\x36\xec\x3c\xf1\xcd\x43\x2e\x38\x0f\xb6\x9a\x08\x62\x9e\xd8\x39\x9a\xbc\x14\x5b\x61\xbe\x93\x37\x7b\x81\x73\xa7\xf3\x79\x1c\xb4\x8a\x0f\x52\x78\x00\x09\xc2\xf6\x78\x8e\x85\xeb\xfe\x08\xbb\x40\x6a\xb9\xf6\xf2\x7c\xec\x91\x67\x6c\xc8\xe3\xb5\x8c\x4a\x84\x2f\x93\xc7\xd0\xdb\xdf\xc7\x43\x3d\x28\x5b\xb2\xdf\xb3\xe4\xf1\xf6\xdd\xef\xc5\xd6\xe3\x2b\x3c\x5d\x3d\x40\x97\x38\x78\xd4\x3f\x7f\xf4\xc4\x6b\x6b\x86\x83\xf3\x00\xd5\x86\x02\x5f\xbb\xb1\x97\xed\xcd\x7b\xbd\xd7\xbd\xed\xdf\xe7\xbd\x27\xcf\xde\x02\xa9\xaf\x56\xb7\x73\xdd\xd6\x01\x84\x2f\x1a\xf8\x4b\x58\xb7\xab\x61\x5d\x38\x9c\xab\x48\xba\x73\xe9\xdc\x4f\x19\xd8\x73\xd7\x4b\xf6\xca\xf2\x2f\xff\x15\x0e\x7a\xdb\x3f\x0e\xb7\x60\xf6\x84\x04\xc6\x57\xeb\x01\xf3\x9d\x59\xca\x0b\xb2\x9f\x8b\x30\xc7\xfd\x1e\xda\xee\xc7\x7c\x6b\x0b\xb3\x84\x5a\xfd\xd8\x8e\x18\xd0\xa1\xd1\x37\x68\x05\x97\xda\x21\x9d\xc0\xc5\x76\x58\xac\x25\x51\xb6\x13\xa8\x93\x33\x88\xad\xce\x96\xed\x04\x41\xac\xb3\xe7\x30\x54\x7a\x9a\xcb\x9b\x8a\x11\xc1\x66\x55\x1f\xcb\xd1\xdd\x5d\x5d\xe3\xf0\xf2\x09\x82\xeb\x3b\x55\xd2\x59\xf7\x81\xc2\x4f\x29\x49\x6d\x15\xdc\x47\x08\x9f\x87\xc4\x5a\x8d\x28\x14\x10\xdc\x97\x81\xde\xd6\xe2\xb1\x57\xd5\xc0\xc2\xfc\x7e\x2c\x67\x95\x57\xe6\x93\x57\xe6\x16\xac\xf3\x88\xf7\xf5\xd8\xfb\xca\x1a\x5f\x4f\x2b\x1c\x70\xfd\xeb\x99\xf7\x75\xd2\xf8\x7a\xe8\x7d\x9d\x36\xbe\xbe\xf3\xbe\x5e\x99\xaf\x5c\xe5\x5f\xab\x87\xf3\x8d\x14\x01\xba\xdd\xb6\x6d\x98\x92\x22\x54\xdf\x1d\x59\xf1\xe2\x26\x96\x72\xf3\x25\xbd\x9a\xdb\xed\xd8\xdf\x9c\xfb\xf8\x86\x53\x41\xcc\x27\x38\xa7\xdc\x16\xbd\xa7\x7d\xbe\x4a\x9c\xb1\xd1\x67\x00\xaa\x48\x1b\x37\xd6\xdc\xa2\xc4\xe6\x5c\xfb\x12\xe4\x4e\x2d\x72\xee\x08\xfd\x12\x78\x9f\x1c\x3c\x73\x06\x7f\x09\xb8\x63\x0b\xce\x1d\xd5\x5f\x02\xef\xd0\xc2\x33\x7c\xc0\x97\x40\x3b\x73\xd0\x2c\xe7\xf0\x25\xf0\xde\x19\x78\x60\xf6\xbc\xd1\xe0\xdb\x5a\xd9\xb2\x6f\xa6\x67\x72\x8c\x45\x2d\xf8\x3c\x29\x95\x52\xa3\xf1\xd5\x71\x25\x95\x12\x6d\x02\xb0\x18\x90\x61\x69\x03\xf9\x1b\x2e\xd5\x78\x86\x92\x7c\xc4\x40\xae\xfb\x66\x9d\xdb\xd7\x5a\x30\x2a\x45\x3b\x68\x6c\x7f\x3a\xcb\x5c\x6c\xf0\x25\xdf\x9b\x3a\x34\x13\x9b\xe9\x62\x7e\x79\x29\x65\x67\x1d\x81\x4a\xf2\x90\xbd\x52\xf5\xc3\xaa\x29\xc9\xcb\x27\xdf\x7d\xe7\x45\x53\x02\x09\x30\xfc\x70\x3c\x93\xa5\x3a\x72\xab\xe9\xb0\x6b\xc2\x3b\xcf\xb7\x2f\xa8\x28\xa2\xce\xcf\x4c\x74\xe0\x46\xfc\x83\x89\xf4\x43\xee\x44\xe3\x30\xd8\x7e\xf2\xd3\x4f\xcf\x37\x3c\x24\x6c\xa0\x56\xa7\x7a\x7e\xf2\x22\x6f\xaa\xad\x73\xa3\x71\xa6\x9e\xda\x3a\x07\xb5\x75\x90\xcf\xe5\xc4\x73\x67\x1b\xed\x76\xe9\xcb\x27\xfd\x67\x3f\x3c\x7b\xfe\xf4\xfb\x67\x3f\xb4\x75\x82\x48\xe1\x5f\x75\xe0\xe9\x93\x4a\x0f\x28\xf4\xa0\x81\x21\x55\x01\x4f\x15\xb1\xfc\xaf\x0a\xbf\x72\xa6\xb2\x80\x6b\xe2\x6d\xf7\x4d\x2c\x56\x55\x6a\x40\xb6\xfa\xc3\x06\x1e\xc1\x19\xbf\xa5\xf9\x55\x47\xb0\x0e\x54\xef\x30\x8d\x17\xcd\x3b\x33\x36\x9b\x67\xa9\x20\xe3\x4e\x91\x31\x01\x19\xf4\x48\x3a\xee\xb0\xcb\x4e\xda\xe1\x04\xc4\x67\xf5\x29\x0a\x2a\xd8\x42\x4b\x89\x28\x5b\xa6\xe9\xf5\x37\x9c\xa2\xaf\xf7\x21\x7d\xeb\xab\xf7\x3f\xbb\x69\xa9\x7e\x6e\xf6\x37\xe0\xb3\xcb\xf9\x60\x30\xca\xd8\xcd\x76\x46\xae\x49\xf6\x0d\xf1\x3a\x15\xe9\xe8\x63\x22\xff\x32\x9e\xba\x3b\x1a\xf7\x62\xa9\xa2\x39\x95\xec\x4a\x32\x18\xaa\x35\x02\x3a\xb5\x9e\x51\x36\x5f\xa7\x7c\x21\xdf\xc4\x02\x43\xb1\x98\x97\x30\xda\x72\x36\x0a\x3f\xf4\x83\xad\xbb\xb5\xb5\x41\xb2\x82\x68\x9b\x58\x3e\x10\xc3\x0d\x07\x37\x2f\x7d\x8d\x33\x40\x1c\x88\xa1\x5c\x9e\xe5\x98\x70\x72\x59\xd7\x49\xab\x12\x64\x58\x8e\x39\x9b\xd9\x45\x6d\xde\x26\x16\xb0\x87\x3a\x29\xcb\x25\x89\x15\x07\x43\x5d\xff\x9a\x8c\x12\x52\x42\x4c\x32\xef\xf2\x0c\x52\x3e\x9a\xef\xf6\x2e\xb7\x84\x87\xb7\x9c\x4d\x1b\xe9\x21\x6b\x65\x89\x29\xec\xb3\x8d\x4b\x8a\x62\x8e\x50\x39\x62\x33\x13\xa1\x4a\x7f\x96\xb4\xb0\xcf\x64\x58\xc2\xa9\x74\x92\xde\xd4\x4a\x41\x08\xe2\x2b\x22\xe0\x4b\x95\x60\xba\xa2\x0a\x42\xe7\xaa\xd8\xa8\x2e\x65\x46\xf2\xb0\x51\xc5\x2c\xed\xd2\x4c\x23\x51\x9f\xc1\x39\x1b\x2f\x4b\xea\xe4\x29\x7a\x0a\x3a\x9d\x65\x64\x7b\xcc\xa6\x8f\x5d\x00\xb2\xaf\xaf\xe5\x29\x08\x57\x11\x02\x5f\xcd\x69\x36\xf6\x35\xd7\x15\x4f\x90\xe8\x92\x71\x1d\x4d\x50\x29\x24\xe1\xb3\x3c\x03\x8f\xd8\x98\xbc\x39\x3e\x3c\xe3\x84\xbc\x66\xee\x48\xa9\xe6\xe5\xcc\x3b\x4a\xcd\x53\x74\x44\xd4\x52\xb8\x7e\xdc\xa8\x40\x7f\x04\x34\x80\xf6\x2a\x14\xc1\x0c\x22\x62\x3e\x7b\x5f\x90\x8c\x14\xc6\xb5\x25\x44\x8b\x92\xe6\x05\xe1\xe2\x97\xb3\xc3\x83\x57\x26\x12\x08\xb7\xb6\x5b\x6a\x1a\x18\x22\xea\x10\xd1\x27\xe9\x8d\x2c\x7e\xaa\x23\x76\x39\xff\x1b\x08\x98\x44\xb8\xd0\x80\x28\xe6\x08\xab\xa0\x8f\xaf\x59\x3e\xe2\x44\x90\x57\x6c\x9e\x8f\x0b\x88\xdb\x42\x51\xa9\xc0\x19\x5c\x6a\x53\xa8\xd6\xa8\x2b\x25\x3b\xb2\x2b\x04\xa7\x17\x73\x41\xcc\x58\x02\x43\xe2\xde\xca\x77\x72\x1a\x2d\xa3\x70\xde\xe2\x79\xa5\xc8\xcd\x3c\x72\x1f\x91\x1b\xdd\xac\x1e\xe1\xda\xb6\xb5\x34\x82\xbf\x9b\x19\x19\x1b\x7d\x7c\x43\x66\x30\xe7\xcf\xcf\xd9\x8c\xe4\xf0\x4a\x19\x99\x2c\x44\x7a\x75\xa4\x92\xc4\x2b\x42\x13\xd5\x1a\x9c\xb1\x67\xfb\x67\x07\x7b\x5a\xa9\x1b\x9c\xbe\x3e\xd9\x7f\x77\x66\x7f\x9d\xfd\xa6\x3f\x19\x1b\xa1\x65\xad\x6e\x6d\x99\x40\x9f\xe9\x6c\x46\xf2\xf1\x6b\x36\x05\x2a\x7e\xf8\xcb\xd6\x45\xfc\x68\x21\xca\xbf\x7c\x40\x25\x74\x23\xaa\x60\x57\x9e\x9f\x8f\x32\x56\x90\x35\x91\x35\x10\xfc\x3a\xf8\x61\x3d\xd8\xde\x5e\xd6\x87\x65\x3d\xd8\x76\x3d\x28\xcd\x57\x39\x2f\xcd\x79\x61\xf0\xe5\x4b\x89\xab\x92\xc7\x1b\xd4\xcc\x2f\x40\x4d\xfe\x30\x77\xc3\xa6\x77\x95\x26\x8c\x52\xb6\x0d\xb7\xe0\x2f\x57\xd9\x94\xff\x25\x40\xaa\xad\xdd\x57\x06\xa0\x35\x35\x36\x96\x63\xc1\x4f\xaa\x10\x7d\xb9\xdd\x47\x81\xe0\x60\x59\xa4\x77\x67\xba\xd5\xc7\x74\xeb\x29\x02\x3f\xb8\x0f\x3f\x89\x0b\x36\xbe\x7d\x29\x19\xbe\x9f\x1e\xab\xe7\x0f\xa8\x0c\xa0\xc2\xce\x12\x2c\x3a\x7f\x09\x50\xbc\x1c\x7b\x76\x1f\xf6\xfe\xd9\x51\x5f\xc2\x3e\x49\x71\x8e\x19\xb2\x63\x70\x46\x3e\x89\xfa\x18\x88\xea\x18\x60\x5e\x4f\x2a\xb0\xd0\x5f\x62\x81\xe5\xf1\x79\x4a\x2f\x32\x9a\x5f\xc9\xb1\x23\x35\x8b\x76\xbe\x23\xa2\x2c\x2d\x04\xc4\x2d\x8d\x79\x34\xe3\xe4\x9a\xb2\x79\xa1\xab\x94\xda\x8f\x50\x6b\x61\xec\x40\x8b\xca\x40\x0b\x7f\xa0\xc5\x4e\x95\x46\xba\x03\xf1\x1a\xc4\x0d\x79\xb7\xfb\x14\xf8\x0f\x79\x32\x9d\xdd\xce\x88\x8e\xfe\xdf\x2c\x7f\xf7\x97\x00\xe1\xd6\x86\x50\x09\xeb\xc6\xed\xc9\xd6\xe6\x65\x92\x56\x09\x2d\xe7\x02\x35\xd7\xe7\x95\x0f\x1a\x72\x15\x50\xfb\xdb\x52\xae\xf3\xc6\xa6\x6b\x26\x5f\xb7\x1b\x9c\xbd\x3a\x7e\xf3\x5b\x60\xf8\x69\xdd\x42\xa4\x87\x52\x7e\xff\x65\x6f\xf7\xcd\xaa\xef\x6f\x8f\x8f\xcf\x96\x7f\x57\x88\xfb\x48\x04\x30\x9f\x03\xe4\x79\x79\x3a\x87\x55\x9a\x5f\x59\xa3\x02\x75\xa3\x65\xaa\x81\x0a\xcd\xf4\xb1\xda\xa9\x52\x8a\x10\x27\x64\xca\xbc\x83\x43\x1e\x14\x70\x2b\xa9\x26\xdc\x98\x4d\xe3\x5c\x4d\x4b\x4c\x93\xbc\x76\xcc\x04\xca\xe7\xd3\x2d\x02\x5a\x3d\x60\x02\xb9\x46\x02\x2c\x10\xce\xab\x87\x9e\x3c\xda\xb8\x41\x6a\x09\x16\xa8\x29\x2c\x30\x90\xf2\xb6\x47\x6c\x3a\xa3\x59\x55\xb6\xf5\x63\x22\x4d\x1b\x69\x2c\xbd\xdf\x33\xce\xae\x78\x5a\x29\x62\x44\xe5\x75\x6c\x17\x7c\x8f\x0f\x33\x2b\x16\x52\xc0\x8b\x03\xe0\x74\x03\xa5\x90\x88\x49\xd5\x79\xb6\x56\x54\x69\x20\xb6\x97\xd6\x28\x1a\x35\x6c\x5a\xf1\x29\x11\x69\x5b\x95\xac\x51\x85\x89\x89\xa4\x51\xb3\xe8\xbc\x51\x34\x4b\x2f\xa4\xbc\x63\x8b\x7e\x06\x9f\xa7\x07\xe5\x54\xa4\x02\x06\xb1\x48\xfe\x6e\xdf\xa6\x17\x19\x49\xfe\x5b\x32\x83\x22\x15\x74\xd4\x96\x96\x5d\x6b\x9e\x07\x40\xf3\x61\x02\x07\x90\xde\xcb\x88\x39\x62\x4e\xc0\xde\xca\x81\x8c\x19\x1e\x79\x91\xb6\xe2\x14\xab\x7c\x7b\x71\xe1\x6d\x88\x6c\x67\x50\x90\xf0\x79\x0f\x17\x08\x5f\x92\x70\x51\xad\x71\x77\x37\xc2\x59\x7a\xcb\xe6\x22\x66\x38\x15\x82\x17\x2a\x46\xf9\x2c\xe5\xe9\xb4\x88\x39\x9e\xa4\xc5\x24\xce\xf1\x85\x3c\x68\x8b\x98\x96\x68\x18\x3b\x78\xd3\x56\x78\x2b\xc0\xa4\x02\x72\x20\xc5\x9b\x3d\x1f\x62\x69\x53\x37\x9e\x02\x7d\xe0\x54\xff\x27\x15\x13\xc5\xdf\x9f\xb7\x7d\x4e\x6e\x7d\x9a\x8f\x93\x1b\x02\x06\x7f\x22\x4d\x46\xf2\xc9\x4c\x17\x7d\xb7\x99\xbc\x93\x2f\x57\xd0\xbd\x93\x27\xef\x48\xf8\xf7\xd3\xe3\xa3\x08\xf4\xf8\x72\xc3\xf5\x5d\x7b\xe6\xf9\x0d\x4f\x67\x26\x9b\x05\x0a\x73\x97\x09\x06\x45\x69\x71\x00\x24\x34\xfe\x74\x10\xc2\x59\xbd\x7a\xcb\xf8\x59\x7a\xa5\x42\x80\xde\xe6\x22\xfd\xf4\x5a\x8d\x9e\x6c\xfc\x35\xcb\x45\xc5\x26\xc4\x13\x08\x16\x7a\x99\xc6\x04\x2b\xb7\xb3\x58\x40\x7c\xcb\x66\x9d\x64\x51\x62\x91\x04\x29\x13\x81\xdc\xb9\xc8\x4d\xe7\x3f\x0d\x20\xf2\xed\x31\x09\xe5\x1f\xe5\xd8\x82\x0c\x54\x0e\x50\xff\x4e\xc5\x32\xc0\xcb\x01\x9e\x3a\x80\xa8\x8a\xe4\x2e\xfb\x0c\x70\x3e\x7e\xd0\x9b\x1a\x50\x33\xa2\x2d\x04\xfc\x05\x93\xe8\x8d\x92\x61\xd4\x57\x72\x46\xa7\xc4\x24\x3f\x78\x43\x32\x72\xa5\xf2\x31\x1f\xee\x1f\xed\x1f\xee\x1e\x9c\xbf\xde\x7d\xb7\xfb\x6a\xff\x60\xff\x6c\x1f\x32\xfb\xbd\xd9\x7b\xbb\xfb\xfe\xe0\xac\xfe\xfa\xef\x54\xbc\x53\x08\xb6\xb4\x49\xa2\x55\xdf\xf6\x0e\xdf\x9d\xfd\x76\xfe\xea\xe0\xf8\xf5\x3f\x24\xa4\x7f\x72\x79\x94\x8f\x8d\x04\x48\xa2\x77\x29\x97\x92\xde\x1b\xb9\xbf\x80\x59\x0a\x68\x06\xa5\x40\x3b\x3e\xa0\x17\x26\x73\xb4\xee\x8c\xac\x70\x74\x7c\xb4\x97\x90\xe8\xfd\x91\x4a\x56\xfa\x46\x76\x06\xa8\x53\x55\x39\xb6\xf6\x64\x31\xbe\xcd\xd3\x29\x1d\xa9\x19\x29\xd7\x9e\x7e\x71\x96\x5e\xc9\x5f\x33\x4e\x66\x29\x27\xbb\xfc\x0a\x16\xa6\x9a\xd8\xe6\x57\x6a\x0e\xb3\x5f\x18\xfb\x08\x29\xc5\xd4\x19\x65\x7e\x6a\x50\xa7\x23\x36\x23\xae\xf6\xeb\x54\x25\xc4\xef\x63\x15\x98\x4e\x95\x36\x5f\x4d\x4c\x76\xf9\xe6\x46\x91\x06\xd4\xda\x34\xcb\xde\x28\x1b\x9c\x78\xb3\x5f\x6a\x1b\x92\x3a\xf6\xfd\x0a\xf6\xfd\x2a\xf6\xfd\x0a\xf6\xfd\x07\x62\xdf\x5f\x89\x7d\xbf\x81\x7d\x7f\x15\xf6\x4b\x66\xdb\x48\x4b\x90\xe3\x56\x0d\x30\xcd\xc1\x78\xaa\x54\x61\xcb\x7f\x21\xd9\xcc\xa4\xe2\xa2\x97\xa1\x2b\x11\xf9\xdf\x2b\x01\xf8\x9b\x9f\xa1\xfa\x86\x0d\x0f\x02\x12\x46\x43\xf3\xfa\x3e\x57\xc9\x9e\xc9\xb8\x33\x81\x5a\x9d\x50\xca\x10\x9d\x4b\xce\xa6\x9d\x47\x0b\xd8\x17\xd5\x99\x4d\x2f\x6f\xc1\x41\xa4\x13\xfa\x8d\x74\xd4\x82\x26\xe3\x8e\x8d\x93\x8b\x3e\x38\x97\xf2\xb2\xa1\x62\x7d\x9d\xe6\x7f\x15\x1d\xbd\x7f\x77\x94\xb9\x8f\x69\x5a\xee\xf5\x2a\x9d\x45\x01\xe1\xfd\xd9\x5c\x74\xd2\xbc\x03\xea\x1a\x1b\xf7\xb9\xc3\x2e\x3b\x3e\x06\x01\xd2\x44\x33\x31\x2e\x97\x93\xcd\x94\x58\x4a\xb8\x0a\x88\x07\x90\xce\x84\xbf\x5c\x9b\x78\xa6\xa1\xaf\x43\x3e\xdb\xfc\x03\x09\x68\xb0\xb0\x24\xb4\xe7\xe4\x72\x1a\xda\x22\x4b\x89\x58\x05\xf2\x00\x2a\xda\xd0\xee\x6b\x93\xd1\x36\xf5\x75\xe8\xe8\x10\x78\x20\x21\x2d\x1e\x96\x92\x7a\x9f\x5f\x4e\x47\x5d\x60\x29\x15\x7d\x00\x0f\xa0\xe1\x4c\x55\x5b\x9b\x82\xba\x99\xaf\x43\x3f\xd3\xf8\x03\xa9\xa7\x71\x08\x50\xa9\x39\x28\xb9\x2b\x56\x69\xa6\x3f\x20\x5f\x03\x58\xf9\x12\x12\xb4\xd1\x44\x52\xa1\xb7\x2d\xe8\x94\x74\x6c\x9a\xa8\x0e\x27\xff\x9e\x53\x4e\x8a\x76\x9c\x34\xc0\xc0\x0f\x2c\x3d\x09\x09\x76\xb9\xe5\x04\x96\xec\x66\xbc\xe0\xe4\x92\x70\x4e\xb8\xe4\xa5\x0c\x2f\x29\x5a\x16\x01\x47\x1e\x4f\x6f\x7c\x1f\x3b\xa0\x63\x5c\x68\xbe\x9d\xe2\x15\xcc\x7d\x69\xbd\x5c\xd7\x2a\x7e\x77\x37\xf2\x50\xf7\x2e\x2b\x06\x33\xc9\x62\x15\x24\x7c\xda\x47\x43\x57\x62\xe6\xa9\x56\xe5\xc7\x1e\x6e\x5c\xe0\x49\xb1\x1c\x6c\x13\x8b\xd3\x69\x9a\x65\xfb\xb9\x00\xcf\x7a\x2d\x43\x49\x59\x72\x4c\x21\xd7\x9b\x91\xa3\xe2\xe6\xad\xad\x2e\x3c\xe3\x74\x4a\x05\xbd\xf6\x0a\x43\x30\x6c\x87\xcf\x34\x34\xdd\x24\x75\x31\xc2\x66\x19\x95\x92\x48\x0f\xfa\x12\x9c\xc2\x10\xca\x73\x3f\xc0\x8b\xa5\x62\x47\xbf\x84\xd2\xfd\xef\xb1\x22\x41\x5f\x11\xe2\x7b\x2c\xa2\x47\xd7\x3d\x9f\x1c\xd7\x3e\x37\x2e\xdb\xf9\xee\x47\x28\xfb\xdd\x73\x9c\x02\xc7\x2b\x42\xf8\xfd\x7d\xa5\xd6\x55\xbd\x56\x2b\x5e\x42\xe3\x25\x25\x24\x27\x11\x29\xd4\x9e\x3c\xd3\xa8\x3d\xf9\x4e\x75\x4c\xa5\x0d\x0f\xe0\x19\xf8\x74\x98\xcc\x20\x03\x05\x48\xa1\xf0\x0c\xfe\x3c\xeb\xe9\x2e\x79\xf8\x5c\x78\xc3\x7e\x13\x92\x6e\x97\xe8\xfc\x0f\x67\x72\xce\xa8\xda\x4f\x54\x3b\xef\xe6\xc5\xe4\xb5\x9d\x4e\x01\x26\x3e\x9c\x5b\x0f\x8e\xa3\x79\xb3\x4a\x3b\x96\xd0\x9d\x26\x72\xe7\x36\xd4\x93\x22\x0c\x11\x44\xca\x8d\x65\x52\x41\x12\xd4\x2e\xea\xca\x07\xb3\xc4\x3a\xae\x73\x4c\x95\xbb\x60\x92\x24\xcc\x2c\xa6\x5b\xa3\xb4\x4c\x93\x81\x0a\xe6\xae\x6e\x89\x01\x65\x84\x19\x5a\xb8\x17\x4f\x7f\xf4\x22\xa2\xeb\x44\x0b\x90\x61\xc1\x2b\xf2\x54\xce\x8b\xcb\x19\xe6\xdb\x05\x42\xd8\x7d\xe8\xff\x88\xf3\x41\x31\x74\x81\xd0\xdd\xa7\x16\xa2\xf8\x35\xdb\x86\xd0\x7d\x7d\x22\x91\xec\x76\xdd\x8b\x67\xbd\x6a\xbb\xf2\x57\xc5\xe6\xcb\xd9\x5a\xed\xc8\xb1\x7c\x8a\x8d\x82\x45\x6b\xc8\x15\x0e\x66\x89\xa1\x78\xa6\xf4\x61\x35\x7b\x2d\x93\xaf\x15\xf3\xa4\xb7\x41\x42\x5f\x0b\x94\xa3\x85\x0e\x83\xb0\x80\x78\x43\x31\xc1\x23\x93\x2e\x2c\xc7\xa0\x37\x89\x83\xd7\x07\xbb\xef\x4f\xf7\x82\x2d\xbe\xb5\xa5\xcc\x4e\x74\xf8\x2e\x89\xd2\x8f\x58\x0d\xfd\xf7\xcf\xd5\x5a\xd3\xd3\x0d\x52\x63\x1c\xc8\xea\x45\x80\x5c\xa2\x58\x2a\xf7\x5e\xa1\x75\xdb\x3d\xbc\xdd\x47\x28\xb7\xdd\xff\xfe\x07\x3c\x0f\x69\x04\x8d\x22\x4c\x55\x00\x24\x6f\x14\x59\x22\x6c\x4c\xae\x17\xec\x65\xd2\x7b\xc1\xb6\xb7\x4d\x38\x30\x31\x60\xc3\x0d\x07\x2b\x38\x50\x2a\x9f\xd4\x80\x93\xb8\x3d\x93\xb8\xaa\x8c\x05\xb2\x83\x21\x42\xb8\xb7\x99\x24\xac\xdb\x75\x15\x9f\xe1\x79\x18\xec\x1d\xbd\x81\xdc\x32\xd6\xfa\xb2\x0e\x56\x95\xd0\x3d\x65\x33\xd3\x51\xf9\xe2\x07\x39\xa6\xb9\x6f\x0d\xb7\x48\xa5\xb8\x42\xf0\x05\x1b\xdf\xc6\x42\x1d\x22\x8b\x11\x9b\xe7\x22\xe6\x58\x7b\x16\xc0\xba\x08\xad\x6b\x70\x83\x84\xd8\x2e\xcb\xef\x35\x82\xfb\x47\xfb\x67\xfb\xbb\x07\x72\x86\xe5\x58\x8d\x04\xb7\xdb\x96\xc5\xf3\xed\xfe\xd1\xee\xc1\xc1\x6f\x16\x35\xd8\xe3\xaa\x45\x7c\x58\x6e\xd3\xac\xf4\x6b\xe8\x9b\xef\x99\xee\xd0\xcb\x33\x3e\x27\xb1\xc0\xf4\xf2\x6d\x9a\x15\x24\xe6\xa5\x67\xe3\x55\xe9\x74\x68\x0c\x29\x89\x9a\x34\xaa\x0f\x07\xa7\x7b\x81\xdb\x69\x81\xf0\x16\xdd\x1a\x8a\x50\xd4\xfa\xd7\x71\xb9\xd1\x29\x0b\x16\x39\x86\xa4\x2c\xab\x16\x84\x5a\xe9\xb3\xd0\x8a\xcf\x38\xc7\x4a\x39\x13\x5b\x8d\xc4\x62\xca\xc6\xea\x80\x55\x59\xa3\x8a\x98\x95\x65\x99\x90\x8d\xe2\x86\x8a\x11\xa4\x74\x98\xa1\xc5\x28\x2d\x88\xd9\xa0\x63\xdd\xf6\x7e\x48\x70\x5b\x8c\x06\x36\xeb\xd7\xee\x28\xc4\xce\x49\x2c\xca\x50\x20\xb4\x01\x80\x54\x67\x62\x3b\xa7\x60\x62\x42\x4b\x7d\x5d\xc2\x1f\x71\x57\xae\x70\x6f\x43\x5b\xd0\x8e\x8d\x5f\xce\xbc\x34\xc5\xea\x9b\xd1\xb2\x3e\x68\xe5\xff\x1f\x54\xa8\xcb\x0e\x39\x44\x7d\x14\x9f\x94\x21\x35\xc8\xff\x4c\x84\x4b\x58\x09\xa2\xba\xd7\x32\x0c\x05\x6b\x03\x99\x32\x0d\xf2\xc7\x67\xf1\x8f\xdf\x81\x87\x7b\xa5\xc3\x44\x54\x31\x5b\x0b\xd6\x93\x5e\xfc\xa4\xef\xc3\x32\xbe\xbe\x9e\x42\x8f\x7c\x9a\xa4\xf3\x02\x9c\xfa\x85\xcf\xe3\x9d\xa9\xd9\xf1\xb6\x42\x01\xf9\xa6\x39\xf0\xad\xa4\x6b\xbd\xdd\x6f\xaa\x79\x4d\xaa\xca\x21\x84\x08\x10\x24\x64\x58\x80\xfa\x12\xe1\x22\xe1\x24\xe4\xfa\x27\x0e\xf6\x0c\x4f\x0f\x0a\xd3\xce\x84\xa4\x90\x29\xef\x82\x74\xd2\x8e\xb6\x1e\x56\x37\x88\xfa\x87\xf5\x5a\x2d\xec\xcd\xa4\x97\xff\x18\xa6\x79\xa4\x14\x6b\x91\x52\xc1\x1a\x2d\x6a\x58\xe0\xfc\xee\x6e\x30\xc4\x14\xa7\x58\xa0\x52\xcd\x3c\x4c\x50\xa9\xa4\x0f\xbf\xcf\xfb\x79\x46\x73\xb2\xa4\xd3\x72\x65\x51\x28\x10\x73\x4c\x2f\xdf\xe7\x8a\x8f\x1b\xc3\x45\x0a\xc0\xa4\xed\x46\x10\x75\xfc\x14\x10\x87\x20\x58\x44\x84\xdc\x0b\x66\x71\x14\x52\xb4\x43\xe3\x3c\xe4\x15\x2c\xf7\x3d\x6d\xf1\x72\x24\xa5\xbc\x05\xcb\x52\x52\xcf\x4c\x9e\x48\xef\x00\x91\xdc\x00\x0c\x3b\xcf\x1d\x0a\xf6\xce\x50\x33\xc7\x96\xdc\xb9\x5c\x15\xc1\x9e\xf2\xc0\x92\xfb\xc8\x45\x46\xa6\xb1\x44\x25\xcd\xa8\x1e\xbd\x00\xc3\x5a\x8d\x7b\x98\xe4\xe3\xb8\x57\xa2\x58\x9e\x3a\x38\x4f\x92\xe4\xb7\x9d\x50\x45\xa7\xb0\x0d\xc5\xb9\x39\x5f\xe4\x96\xf8\xe4\x47\x6c\xf6\x02\xb5\xcb\xf7\x35\x5b\x35\x2c\x43\xa3\x5b\xb6\xfd\x07\x76\xb3\xd1\x6f\xc3\x7e\x12\xc5\x7e\x0a\xa3\x82\x77\xfc\x31\x2d\x91\x17\xdb\x01\x12\x50\xe5\x90\x46\xbc\xc0\x59\xd2\x7b\x91\xfd\x64\xed\xfe\xb2\xad\x2d\xc4\xd4\x5a\xbc\x08\x73\xb0\x96\x2e\x06\xd9\x50\x67\x2a\xd4\x87\xd7\xdc\x1e\x5e\xa3\x32\x99\x03\xf1\x74\x9d\x91\x62\x11\xc6\xc9\xfc\xa7\x9f\x9e\x6d\xd0\x6e\x37\x1c\xdf\x25\xcf\xd1\x46\xae\x9e\x7e\x50\x9f\x27\x09\xd7\x9a\xd4\xdd\x93\x93\xdd\xdf\xc0\x8c\x0b\x2d\x26\x89\x18\xf4\x1c\xc7\x70\x99\x88\x41\x7f\xa8\x13\xd9\x5c\xfa\x89\x6c\x98\x3b\x95\xf7\x3e\xcd\x78\x80\x2f\x07\x33\x8f\x67\x73\x9f\x9f\x3f\xc3\x69\x38\x41\x38\x0d\x0b\x84\xc7\x92\x07\x2b\x2b\xdb\x6e\x8d\xa5\x6b\x9f\x50\x2d\xf7\x35\x9a\xd9\xf2\xe7\x97\x68\x99\x5f\x3c\xb1\x37\x19\x2e\x4b\x65\x63\x7e\xf1\xf6\xf9\xa5\x17\xa4\x92\x75\x3b\xe1\xd9\xf1\x9b\xe3\xb8\x23\x26\x5c\x6e\x13\x17\x44\x08\xc2\x51\x73\xd6\xcd\xe4\x7a\x71\xb2\x1e\xcc\x2d\x29\x7c\x99\x25\xaf\xe7\x93\xee\xfe\x1b\xa5\x24\x75\xda\x8d\xe5\xcb\x7e\x6c\x15\xda\x92\x73\x51\xf7\x40\x46\x7a\xa3\x18\x4e\x7c\x66\xa6\x5d\x6a\xa7\x5d\x61\xf6\x85\x2c\xc9\x25\xab\xa5\x1d\x14\x7a\x3b\xff\x0a\x73\x7d\xab\x83\x94\xb4\x34\x4f\xaa\x8e\x0d\x29\xba\xbb\xd3\x54\x4f\x77\x04\x09\x53\x5b\x3c\x35\x5b\xc4\x8c\x84\xea\x1d\x6e\xc3\x2e\x73\xd8\xc1\xa2\x60\x0e\x29\x83\xe7\xbc\xac\xee\x2d\x97\xfa\x62\x61\xbc\x0e\x41\x72\xb0\x2d\xb1\xa4\x30\x97\x5e\x58\x5d\x04\x9a\xfb\xa4\x98\x59\xa5\xb6\x79\x93\x62\xc6\xf7\x24\xd3\xe4\x11\x67\x12\x72\x4f\xff\x60\x46\xc9\xce\x28\x5e\xbb\xf0\x50\xfa\x09\xd5\xf9\x12\xe1\x05\xfc\x9c\x4b\x26\x46\xcf\x55\x88\xb4\xb2\xf0\xf4\x0f\xa3\xaa\x0e\x61\xec\xeb\x17\x2e\xcb\x24\xc3\xb3\x44\x0e\xc9\x1c\xe1\xa9\x3c\xb3\x28\x9e\x57\x22\x09\x6e\x26\xc9\xe5\x0e\x0b\x47\x78\x8c\x2f\xf1\x42\xf5\x79\x66\xfa\x3c\x2d\x51\x9c\xc2\xb7\x96\x2f\x25\xbd\x0c\xdd\x79\x15\x2e\x57\xe2\xa8\x9f\x71\xe7\x75\x9a\xe7\x4c\x74\x2e\x69\xee\x2b\x0c\x83\x2d\x7b\x0e\xdc\x7f\xe4\xeb\x20\x65\xbe\x77\x48\x3d\xae\x51\xc4\x66\x4f\x77\x34\x27\x29\xb0\xfc\x09\xff\xf5\xe1\xff\x27\xf0\xff\x53\x14\x57\xca\x3f\x59\x5e\xbe\x56\xb2\xdf\x56\x12\xc5\x95\x97\xa8\x5c\xeb\x66\x6b\xac\x2f\x15\xde\xb5\x59\xcc\xc2\xfe\x0d\xb7\x6f\x60\x1b\x31\xcf\x47\x45\x32\x18\x2a\x9b\x59\x6b\xa9\x09\x85\xac\x95\x2a\x14\xd2\x78\xa0\xed\x7e\xe9\x1f\xc0\x66\xcb\x1a\xf4\x86\x58\x5b\x36\xa9\xca\x36\xbc\x45\xd8\xf3\x9a\x1a\xe4\x43\x15\xa5\xad\x2c\x65\xc5\x5d\xb8\x01\x7c\xe7\xcc\x08\x5e\xdb\xdd\xd3\x05\xa6\xba\xbb\x83\x3f\xb5\x94\x68\x64\xa3\xba\xf6\x21\x56\x1f\x49\x06\x64\xe8\x24\xc0\x96\x68\x65\xc4\x49\xd7\x4f\xb1\x18\xf0\x21\x72\x96\x88\x6e\xf0\x3f\xba\xa4\x79\x9a\xd1\xcb\x1d\xa3\xe7\xe9\x70\xe2\x03\x28\xd8\x1a\xc2\x4e\x1e\x98\xfa\xe4\x63\xf6\xe4\x2b\xcc\xc9\xa7\x73\xc1\x15\x26\x2f\x23\x93\x27\x9f\x3c\xef\x32\x38\xf9\x54\x36\xbd\xb6\xf3\x6e\x5e\x3d\xef\x46\xea\xbc\x1b\x27\xbd\x17\xe3\x9f\x8c\x31\xec\x8b\xf1\xd6\x16\xa2\xf5\xf3\x6e\x34\x18\x7b\xe7\x1d\xad\x9e\x77\x73\x79\xde\x55\xda\x43\x38\x43\x08\xd3\x12\xba\xde\x8f\xd4\xc6\x88\xd5\x0f\xb9\x39\xea\x47\xbd\x41\x22\x4c\x91\x0a\xe8\xa6\xf6\x45\x68\x52\x93\x27\x9c\x24\x50\x16\x5f\x26\x9a\x8d\xad\x0e\xdd\x04\xed\xec\xda\x23\x6f\x82\x2f\x51\x3c\x98\xc9\x03\x58\x2b\x25\xeb\xa0\xdd\x96\xdb\x42\xff\x05\x9b\xf5\xad\xd0\xfc\x91\xe6\xe3\x98\x63\xd8\x75\x73\x9c\xe6\xe3\xb3\x09\xc9\x63\x6a\xf6\x52\x86\x8b\x59\x9a\xc7\x69\x09\xf9\x0e\x9b\x0e\xc5\x86\xc7\xd7\xe3\x6e\x2f\x46\x62\x6b\xba\x5a\xbb\x20\x92\xb5\x14\x8e\xfa\x16\xaa\x5e\x52\xdf\xc1\xb9\x72\xf6\xd0\x70\x77\xbf\x41\x6c\x0c\xfe\xea\x4a\x63\xa8\x66\x86\xaf\xdb\xa5\x91\xda\xa7\x4b\xc7\xf2\x2d\xdf\xfc\xa5\x80\xa1\xf6\xfe\xc8\x68\xa8\xeb\x9b\x75\xb1\x43\xc3\x02\xc5\x6c\x87\x85\x28\x4e\x49\xe5\x06\xe1\xd1\x82\x97\x9d\x47\x8b\xbc\xfc\x80\x53\x25\x61\xe2\x34\x22\xf9\x58\x32\x09\x38\xaf\x8f\x90\x1e\x9f\xb7\x9c\x90\x20\x6e\xec\xdd\xef\x73\xab\x5f\x27\xe3\xce\x2f\xf4\x6a\x72\x40\xae\x49\x06\x95\xe6\x92\x02\xca\x7b\x25\xf2\xa1\xa0\x0a\x60\x7d\xb3\x3e\x4f\x33\xd5\x84\x1c\xeb\x4b\x4e\xc8\xaf\x29\x8f\x99\x14\xd2\xe5\x57\xb9\xd6\x72\xc3\xd0\xab\x79\x17\xa5\x85\xbd\x61\x51\x33\x47\xf2\xd2\xfd\xde\x77\x5a\xbc\x8a\xe6\xb3\xeb\x94\x17\x03\x36\x44\x43\xdb\xa5\x52\x4f\x83\x42\x4d\x83\x4e\x3f\x56\x2b\xb6\x5e\x65\xc3\x41\x7c\xf2\x04\x2b\xd5\xc9\x93\xa7\x38\xf3\x40\x41\x27\x3a\xbd\x58\xad\x6e\x71\xef\xa0\x8d\x1a\x8d\xe0\x71\x32\xaf\xce\xa5\x91\xc1\xdd\x0d\xab\x42\x64\xbc\xe3\x74\xe6\x63\xc3\xd7\x00\xdb\x64\xd5\xcd\x25\x8a\xeb\xe8\x8e\x7c\x74\xcd\xa9\xd9\x18\xc2\xb9\x3f\x84\x70\xfc\xfe\x55\x74\xc8\x75\x9a\xcd\x53\x41\x3a\xe4\xd3\x8c\x93\xa2\x80\x10\xc5\x79\x47\x0f\x47\x27\xd8\x2a\x50\x59\x85\xdb\x7e\x1a\xe7\x08\xce\x86\x09\xbe\x2c\x77\x21\xf6\xea\xd3\x3e\x0e\x07\x98\x0c\x91\x0d\x67\x38\x70\x1b\x20\xef\xb0\xcb\x0e\x41\xa2\xbe\xdb\x71\xb7\xb1\xbb\x6f\x4f\x9e\x63\x62\xce\x11\x88\xe0\x8a\x75\x0b\x3d\x68\x01\x32\xdb\xa9\x98\x76\xf4\x32\x6c\x30\xf4\x9b\xf5\x13\xc7\x46\xac\x04\x16\x2a\x21\x38\x1f\xf4\x86\x2f\x93\xa7\xcf\xdc\xb1\xd8\x37\xc7\xe0\x66\xb8\x29\xf4\x38\xde\xdd\x79\x09\xab\x37\xe5\xd1\xa6\xc7\x97\x0f\x55\xd7\xcd\xcd\xce\x66\xbf\x84\x18\x7b\xaa\x75\xae\x0e\xc2\x7a\xc6\xd2\x56\x39\xc0\x31\x41\x13\x73\x23\x6f\xae\xb7\x44\x27\x23\x69\x21\x3a\x2c\x27\x1d\x63\x83\xde\x90\x09\xe4\x01\x34\x60\x10\x64\x62\xe8\x12\x18\x3a\xd9\xd1\xe3\x9d\x1b\xf7\x31\x9e\xfc\x88\xd9\xe7\xde\xcd\x50\x75\xff\xf1\x5c\xa9\x89\xf5\x98\xaa\x1b\x85\x1f\x7e\xc4\x45\xc8\x50\xfb\x8d\x4d\x05\x35\x66\x50\x4b\x5b\xae\x7e\x30\x75\x4b\xa6\x54\x4b\x5a\x9b\x62\x3a\x25\xcb\x28\xcd\xb2\x25\x3a\x96\xaa\xc7\xb6\x95\xcb\xb2\x9d\x4c\x4a\xf1\xfe\x21\x85\xd5\x39\x64\xce\x04\x75\x1c\x65\xf6\x38\x22\xc9\xcb\x95\x97\x5b\xea\x90\x5a\x54\x07\x08\x22\x10\xeb\xb9\xfb\x44\xcd\x5d\x21\xd7\xc7\xeb\x50\xad\x67\xb0\xea\xb2\x25\x9e\xd6\x4b\x54\x76\xe8\x5a\xe1\x67\xcb\x0a\xd7\x76\x5d\x6c\xb7\x5c\x62\xb7\xdc\x5e\x59\x01\xf5\xdd\x17\x80\xea\x57\x41\x7d\xff\x05\xa0\x9e\x54\x41\xfd\xf0\x05\xa0\x9e\x56\x41\x3d\xff\x02\x50\xcf\xaa\xa0\x7e\xfc\x02\x50\xdf\x55\x40\x3d\xf9\x11\x52\x2f\x1b\x16\xda\xbd\xff\xc1\x6e\xa3\x83\xfa\x9a\x7a\xf2\xbd\xe4\xb3\x74\xb9\xe7\x2b\xca\x7d\xb7\xea\x52\xef\x07\x34\x54\xac\xeb\x49\xb2\x08\x72\xb6\xad\xb8\xde\x20\xde\xec\x95\x1b\xda\x68\x0d\x8c\x56\x3b\x7f\xc0\x77\xb1\xad\x55\x81\xaa\x84\xe5\xbe\xdf\xf8\x17\x59\xdd\xee\xe6\x26\x19\x78\xd0\xbc\xcb\x85\x23\x57\x70\x93\xdc\xdd\xa9\x72\x0e\xaa\x57\x72\xdf\x6d\xe2\x6f\x42\x81\x10\xbd\x0c\xeb\x31\x6a\x51\xe5\x44\x11\x68\x5f\x5d\xd2\x93\xcc\xb2\xfc\x4a\x63\x23\x17\xfa\x8e\xba\x35\x88\x0f\x43\x12\xe9\x5b\x03\xdc\xe0\xc1\xec\x65\x81\x14\x77\x2c\x26\x07\x4e\xb4\x50\xd8\xe4\x2d\xd8\xe4\x0e\x1b\x26\xb1\xc9\x91\xaa\xc6\xe4\xd9\x2c\x31\xea\xd0\xcb\x30\x38\x32\x17\xf2\x49\x0e\x58\xa1\x43\xd8\xbe\x72\xaf\x88\x63\xaa\xbc\x62\x4e\xba\x71\x05\x5d\x0f\x75\xa1\x53\x60\xec\x94\x3f\xa4\x2c\xa0\x8e\x98\x4d\xfb\x1d\x78\x02\x93\xbd\x89\x70\x71\x44\xae\x09\x47\x61\x8e\x83\xb9\x63\x1b\x53\x2d\x4e\xd1\x7c\x0c\x21\xba\x20\x22\x55\x68\x8f\x29\x2d\x59\xa8\x5f\x95\x7d\x4e\x7d\x51\x8c\xa6\xdc\xf1\xd4\x6f\x02\xf9\x06\x3d\xf5\xfc\xdb\x07\x0c\x6b\xae\x86\xf5\x2d\xdc\x62\xb6\x11\x51\x58\x22\xae\x37\xa6\x0e\x86\x5e\x0a\x1e\x10\x75\x6f\xb0\x6c\x1c\x84\x1d\x07\xd7\x12\x16\x2b\x5a\x6b\x1d\x28\x61\x06\xaa\xda\x94\x1d\x28\xb1\x72\xa0\x44\xdb\x40\xc9\x0a\x01\x2a\x7d\xcb\xd2\x3f\xb4\x32\xe1\x3f\x35\x65\x82\xe4\xb9\xb5\xc6\x86\x60\xad\x9a\x8f\x79\xd9\x9a\xc5\xa4\x43\x60\x63\x09\xe8\x65\xe0\x82\xf9\xc0\xa8\x91\xbb\xbb\x3e\xa4\x28\xb3\xae\xb8\x35\x4e\xf3\xf4\xb7\xa3\xb3\xdd\x7f\x75\xf6\x4e\x4e\x8e\x4f\xe2\xce\xff\x47\x2f\x3d\x4e\xa6\x53\xd0\xfc\x2a\xf3\xb8\x18\xcb\xf1\x99\x5b\x47\xb9\x0f\x86\x5a\x08\xef\x5b\x21\xdc\xdf\xd5\x06\xbd\xa1\x62\x2a\xfa\x08\x82\x9f\xab\x4b\x4a\x59\xef\x56\xa5\x68\x0e\x03\xcd\xad\x06\x52\x1a\xd6\x57\x97\x4a\x39\x3f\x49\x8b\x30\x80\xfd\x01\xed\xd8\xd2\xea\x37\x8a\x4f\xe0\x88\xd6\x1d\x9f\xe7\x19\x29\x8a\x2f\xed\xbc\x82\xf2\xa7\x11\xe0\xbe\x0e\x56\xa8\xd1\x42\x2d\x9f\x00\x37\x14\x52\x3d\x11\x1d\x05\xe9\xb3\xba\x2f\x61\x7c\x76\xe7\x9f\xac\xec\xbc\x32\xed\x28\x66\x5a\x0e\x6a\xd2\xe2\x5c\xdf\x6a\xb8\xee\xe1\x7e\x75\x3a\xe4\x35\x6a\xe5\x2b\xa6\x43\x46\x44\x63\x2e\x18\x76\x3e\x25\xf0\xdd\xeb\xa8\xf1\x13\x0d\x70\x0f\xf7\xfc\x0b\x95\xdc\xf6\x89\x1a\xb5\x92\x66\xb6\x29\x3e\x6f\x8c\x07\xce\xa1\x53\x1a\x05\x92\x8e\xfc\x01\xd1\x17\xf0\x26\x7e\xbc\x51\xdd\x09\x48\xf5\xf1\x91\xdc\x82\x2b\xe2\xa0\x37\x1c\xf4\x86\x3b\x1e\x01\xf9\xa0\x2f\x5f\xa1\x61\x3c\x50\x3a\x64\x34\x44\x75\x41\x0c\x88\x8c\x70\x63\x1c\x44\x59\xc2\x6d\xbf\xcd\xdd\x22\xe1\xfe\xa0\x8c\x97\xaa\x37\xfe\x56\x74\xb0\x16\x38\x7d\x67\xda\xb0\x7f\xb6\x77\xa2\x0b\xfd\xf0\x44\xbe\x00\x47\xb4\x9a\x41\x80\x2a\x04\x65\xbe\x83\x32\x27\x7b\xbb\xff\xa8\x17\x52\x15\x71\xcb\x50\x3f\xf1\xec\x41\xee\x31\x3d\xd0\x90\xa1\xa9\xa7\x9e\x88\xf2\x00\x73\x85\xca\x4c\xb2\xa6\x0b\xf5\x19\xa5\xec\x18\xec\x78\xd2\x7c\x5b\x1b\xb3\x7f\xe9\x32\x73\x90\x1e\xb2\xd8\x5c\x2e\xbc\x01\x78\x2c\x71\x0c\x37\x86\x69\xd2\x7b\x91\xba\x30\x66\xa9\x89\x0f\x52\x24\xf9\x20\x55\x71\x41\xae\xe6\x74\x2c\x8f\xab\xa2\xdb\x0d\x7c\xaf\x38\x78\xd7\x34\x6b\x5d\x8e\xed\x98\x91\xa2\x93\x33\xd1\x11\xe9\x47\x29\xaa\xfd\xfe\xe1\xd1\x42\x0a\xe4\xe5\xef\x1f\x3a\x0c\xac\x32\x3e\xd8\x1b\x47\x37\x3d\xe9\x20\x6d\xbd\x05\x5c\xb1\x45\xd8\xc9\xfc\xcc\x4e\x66\x56\x96\xfe\x76\x01\x16\x82\x3d\x84\x6f\x1b\x73\x49\x59\xd4\x7c\x2f\x97\xa2\x5b\x8c\xdb\x72\x6b\xdb\xd6\x77\x3e\xdb\xd7\x29\xaf\x1f\x15\xda\x4c\x40\xf9\x82\xe1\x85\x6b\x55\x2e\x7b\x6a\x97\x3d\xc3\xd7\x61\x8e\x97\x6c\xc7\x68\x58\x5a\xbb\xb8\x96\xbd\xda\xe0\xe2\x34\x13\xd8\x0b\x5b\xb7\xf0\x4c\x0a\x9c\x01\xa8\xa4\x8d\x56\x76\x4f\x48\x98\x03\xb1\x64\x95\x3a\x74\x39\xce\x47\x21\xb5\x89\x0e\x69\xe9\xab\x17\xac\x6f\x9a\xa4\x7a\xe3\x76\x11\x57\x05\xfa\xa6\x37\x59\xaa\x2e\x12\x85\x27\xdb\x9b\xab\x24\x0e\x44\xe6\x2b\x3b\xa6\x43\x16\x74\xbb\xa0\x56\x6f\xeb\xa6\x49\x63\xa5\xfa\x48\x65\x45\x73\x8f\xcb\x36\x93\xe4\x0f\x97\xbe\x51\x25\x3b\x88\xa2\xa8\x18\x26\xc2\xbb\x71\xcc\x9b\x37\x8e\x69\x4b\x4f\x0a\x25\xf3\xf3\x96\x9e\x10\x02\x5d\x69\xe3\xb8\x4a\x70\x94\x7a\x0f\x41\x13\x5e\x99\x28\x33\x50\xcc\x84\x0e\xd2\x65\x13\x5e\x96\x15\x3f\xa1\xff\x68\xd6\xee\xfd\xf2\x7b\x22\x15\x10\x82\x8e\x04\xc4\x80\x5d\x71\x63\x54\xb9\x23\xc2\x4b\x2f\x91\x8c\x3d\x9e\xac\x7d\x48\x0b\xb9\xab\x58\x6f\x97\xa9\xfa\x9d\x10\xff\x82\xc9\x78\x9d\x7a\xbe\xe7\x06\x2e\x4e\x13\x77\xfd\x49\xd7\xbb\xfe\xa4\xea\xfa\xb3\x91\xfd\x04\x12\xd1\xfa\x58\x20\xdb\xb8\x4a\x2a\xe1\x5d\x61\xb1\xa1\xe4\x9e\xd5\xa7\xb2\x54\x24\x7c\xf5\xff\x30\x09\xb5\x32\x12\x2c\x8c\x06\x60\x63\xb4\xd1\x54\x66\xba\x2c\xa4\x7f\xc8\xaf\x4f\x81\x28\x76\x7d\xa7\x09\x27\x21\x1b\xf4\x87\x4d\x3b\xa4\x89\x0e\x78\x04\xaa\xb2\xb5\x2c\x91\x52\xcb\xea\x6c\xf0\x24\xc5\x79\xc2\x06\x4f\x86\x98\x26\x6c\xf0\x74\x58\x1a\x79\x73\x93\x92\x0a\x4e\xfa\xd0\xf0\x2c\xa3\x3c\xf3\xf9\xc2\x95\xe3\x49\x81\x73\xf0\xd8\xc6\x14\xfe\x68\xd5\x5e\xe5\x66\x12\xcf\xbd\x99\x73\xbf\x1a\x1e\x66\x8e\x58\x32\x73\x32\xed\xbc\xaf\x49\xdf\x9c\x47\x8a\xf0\x73\xef\xba\x37\xdb\xa9\x4e\xa8\x6c\xe8\x95\xfa\xc3\x13\x6f\x7f\xa9\xf8\x80\x6a\xa3\x44\x82\xad\x9d\x22\xb9\xe9\x64\x06\x3d\x75\xa1\xfa\xab\xba\x50\xc5\xff\x4e\x06\x01\xcc\xcc\x00\x07\x74\x1c\xe0\x00\x6c\x7e\x03\x1c\x48\x12\x04\x38\x00\x41\x0f\x07\x85\xb8\xcd\xe4\xdf\x09\x27\x97\xc1\x10\xff\x33\x19\x04\x63\x7a\x2d\x3f\xcc\xd2\x3c\xc0\xc1\x2c\xc0\x41\x1a\x78\x69\x77\x1f\x79\x06\x76\x8d\xe3\x60\x87\xc4\xff\x1c\x10\x4f\xeb\xf2\xf3\x3d\xa5\xff\x2d\x4b\xff\xaa\xf4\x5f\x98\x24\x2f\x25\x9f\xf4\x04\x93\x41\x5f\x32\x8c\xea\x7d\xff\x29\x9c\x67\xf2\xd0\xfc\xce\xbd\x7c\x62\x5f\x3e\xb3\x2f\x9f\x99\x6c\x66\x9e\x45\xdd\x30\x21\x98\x69\x03\x3a\x6f\xce\x5a\xd7\xa8\x07\xa9\x76\xd9\x0e\x5b\xa6\xda\xb5\x57\x83\x4a\xb9\xcb\x7c\xe5\xee\x3d\x9a\xef\x5c\x6d\xfa\xb4\xe1\x95\xf0\xdd\x0f\xd6\x2b\x61\xb8\x5c\x07\xac\x09\x62\x94\xb6\x98\x0f\x35\x61\xfa\xf8\x67\xf0\xed\xc5\xea\x76\x8f\xef\xf0\x58\xc7\x3e\x50\x55\x9e\x34\xaa\xf4\x7b\xcf\xef\xa9\xd3\xff\xae\x52\xc7\x13\x04\x84\x42\xf9\x89\x02\xb0\xd9\xaf\x43\x18\xda\x66\x9f\xac\x09\xa2\xb7\x14\x44\xff\xfb\x7b\x40\x3c\xbd\x1f\x8b\xa7\x6b\x82\x58\x81\x45\xcf\x6a\x49\xe5\xb4\x7d\x8e\xe5\xd2\x70\x94\xea\x57\x74\xa8\x3f\x6a\x21\x40\x97\xb2\x40\x9e\x5b\x34\x70\x2e\xcb\xb6\xac\x92\xea\x8c\xf3\xf9\x22\x98\x6a\x44\xf3\x11\x9e\xf9\x5e\xcd\x98\x48\x2b\xfb\x16\xd6\xd8\x48\x55\x60\xa5\xc6\xed\x79\x4f\xce\xb3\x46\x2c\x00\x61\x02\x01\xe4\xa6\x42\xf3\x0e\x91\xfb\x6e\xfb\x0d\x9b\x25\x68\x78\x51\xb7\x75\xaa\x36\xdb\x08\x19\x20\xea\x76\x62\x7e\x6b\x4b\xe2\x05\x80\xdd\xe4\x3d\x9c\xa3\xa3\x93\x0f\x17\x38\x47\xde\xb4\x7c\xdc\xec\x95\x6e\x28\xb5\x66\x9e\x0f\x81\x61\x5c\x5f\xb9\x50\x17\x1b\x6a\x2a\x05\x75\xf5\xfc\x0c\x17\x61\xee\x2e\xa2\x70\x1a\xe6\x11\xb9\x4e\xb3\x53\x70\x79\x29\x10\x66\x21\x47\x75\x87\x1e\x87\x9b\x7f\x01\xa1\xbc\x8d\xec\x27\xa7\xed\x97\x1f\xaa\xa6\x1d\x76\x1d\xa8\xa5\x34\x84\x7d\x13\xf0\xf9\x1e\xa7\xa1\xa8\x63\xe0\x4f\x6c\x6c\xf2\x94\x61\x51\x63\xdd\xab\xc6\xc0\xd8\x18\xfd\x92\x8a\xd1\xaf\xe9\x79\xcf\xbf\xd7\x53\x8b\xce\x79\xab\x88\x71\x46\x2f\x8c\x9f\x4a\x30\x4a\xe7\x82\xb2\x79\xb1\xad\x02\xe0\x04\xa5\xa3\x83\xdd\x00\x9f\xb4\xa2\xd5\x58\x4e\x42\x2e\xa7\x67\x7d\x2c\xd4\xc5\xf7\x03\x90\x10\x7c\x5e\x08\x08\x52\xd2\x40\x42\xa3\xf0\xbd\x3e\xc1\xaa\x86\xe0\x98\x68\xff\x97\xdf\x92\xed\xbe\xe6\xb7\xff\x51\x75\xf6\x56\x66\x66\x2a\x92\x95\x0b\x17\xa2\x79\x77\x88\x61\xa1\x63\x04\x7a\x6e\x50\x89\xca\x9d\x6a\xac\x66\xc6\x8a\xd5\x71\xd6\xc2\xed\xa6\xe6\xce\xd0\xcf\x9a\x98\x8e\xad\x3d\x95\x7d\xb3\xe1\x1e\x93\xdf\x40\xdd\xe4\xd0\x8a\xb9\xe6\xa3\x4b\x38\x59\xff\x1e\x72\x4c\x6b\x09\x11\x21\x48\xe6\x29\x50\xaf\x40\xa1\xb5\x70\xf5\x82\xa2\x8c\x13\x06\x36\xb5\x26\xec\xb0\xe5\x17\xfe\xdb\xf7\x90\x80\x45\xe9\x87\x93\xfa\x47\x28\x3c\x02\x61\x08\x5b\x88\x17\x8a\x28\x05\xb0\x71\xf0\x24\x37\x8b\xbd\xeb\x34\x8b\x45\xa4\x9f\x7c\x77\x8f\xbf\x1b\x7a\xbb\x48\xa6\xbf\x62\x9a\xfc\x22\x39\x04\xa4\xd3\x56\x12\x3f\x83\xdd\xdb\x90\xea\x8c\x75\x40\xd9\x01\x1b\x62\x25\x44\x20\x2f\xcc\x8f\xe6\xc8\x64\xb1\x29\x15\x21\xb7\xbc\xe4\x84\xa4\x33\x2c\x20\x1e\xa9\x87\xc4\xbf\xfc\x40\x23\x75\xa3\x82\x1d\x9f\xdc\xfa\x3e\x58\xf9\xc2\x55\xd6\x70\x19\x93\x2a\x71\x72\x9f\x38\x02\x57\x9c\xe8\x22\xf7\xa3\x44\x5a\x64\xf9\x9f\xf6\xa0\xb3\x15\xc9\x51\x49\x30\x64\xc7\xcf\x6d\x45\x50\x3c\x18\x96\x2a\x20\x76\x25\xf8\x9e\xaa\xaa\xd9\x61\xf5\x63\x40\x86\xca\x22\xd7\x24\x6d\xf2\x6e\x0d\x74\x78\xaf\x9a\x11\x92\xe8\x76\x49\x87\xe6\x1d\x51\xde\x50\x31\x71\x96\xb3\x66\x8b\xae\x55\x22\x37\x9d\xff\x09\xf3\x1d\x73\xbd\x41\xaf\x72\x14\x2e\x4a\x79\xdc\x0d\xc8\x30\x16\x25\x8a\xcd\x83\xc4\xb8\x33\x49\x8b\xdd\xfc\xd6\x0b\x9c\xa9\x1b\x75\x18\x2b\x36\x9a\x90\x44\x83\xae\xe6\x2a\x11\x64\xa9\x75\x37\x21\x5e\x70\xdc\x8a\xcc\x37\xb0\x8e\x1d\xbd\x17\xa9\xcb\x89\x9a\xaa\x90\xfe\x83\x74\x38\x4c\xfe\x15\xb2\x41\x3a\x74\x0b\xc9\x74\xcc\x9b\x33\xdc\x86\x2d\x94\xd2\x91\x31\x19\xf1\xb4\xc6\x7c\x2b\xc0\x9d\x8b\xb9\xe8\x88\x09\xe1\xa4\x73\x23\xff\xcb\x59\xe7\x92\x13\xd2\xb9\x4e\x39\x95\xdb\x46\x01\xa4\x9d\x90\x8e\x09\x9f\xa2\x75\xca\xad\xc6\x2d\x0d\xd5\xdb\xa3\x05\x2f\x71\xe7\x0a\x02\xf0\xd6\xbc\xc7\x09\x2a\x3f\xa8\xa0\x74\x10\x2b\x47\x4f\xed\x9c\x58\x4f\x75\x4d\x69\xe7\xe8\xdc\xf0\x1e\xbf\x17\xbc\xa3\x85\x86\x6b\x46\xf1\x69\xe2\xd4\x9b\xdd\x2e\x19\x3c\x19\x3a\x9b\x71\x48\x6a\xda\x12\x2d\x9a\x28\x4b\x9d\xa7\xa5\x5c\x71\xd6\x00\x47\x8a\x1e\x43\x65\x1a\x65\x1b\xa3\xa4\x12\xc3\x5e\x43\x4e\x9e\xc8\x96\x00\xc6\x93\xb2\x1e\xe1\x85\xe0\x7a\xc8\x96\x4a\x74\x4e\x46\xda\xb4\x05\xe0\xdf\xd5\xa6\x2e\x10\x90\xde\x07\x14\x06\xca\x07\xcc\xa9\x0c\x54\x1d\x15\x54\x55\x15\xf3\x3e\xea\x7a\xda\x5d\x33\x15\x31\xc1\xea\x15\x2c\x07\x1d\x0a\xd9\x6e\x84\x0b\x5d\x1c\x18\x3f\x09\xd5\xc4\x40\xc4\x79\xd2\x7b\x91\x3b\x2b\x5a\x13\xe3\x59\x42\xa4\x06\x22\x2b\x13\x31\xc8\x87\x38\x85\xfc\x82\xdb\x74\x83\xa8\x73\x00\x12\x79\x96\x7e\xf0\x2f\x52\xcb\xd8\xda\x66\xbe\x44\xb4\x39\x92\xba\xfb\xe5\xfe\xfe\x5d\x10\x67\x9f\xd9\x16\x55\xda\xae\x47\x2b\x6d\xe7\xc6\x23\x5d\xdf\xf4\x62\x36\x8b\x09\x06\x33\x51\xcc\x66\x4f\x62\x8e\xd9\xec\x69\x9c\x97\x9e\x39\xf6\x7d\x35\xbc\xb2\x62\x79\xd9\x32\x6e\xf9\xa4\xe2\xd8\xd0\x8d\x8a\x7d\x99\x15\x92\xab\x2c\x94\x9c\xd6\x77\x77\x55\x7e\x42\xbf\xab\xb8\x34\xe9\x77\x35\xbf\x14\xfd\x16\xa4\x4d\x53\xab\x45\x8e\xd0\x9f\x1a\xdc\xb3\x7c\x0f\x3e\xf8\x34\xb1\xf7\xdb\xf6\x92\xb9\x05\x75\x4f\x2a\xd6\x20\x81\xad\xd2\xcf\x9e\xe4\xab\xdf\xf8\x16\x48\xd5\x57\x35\x83\x17\x1f\x11\xef\x1a\x7d\x15\x2e\xea\x62\x45\x43\xd5\x0e\x99\xfa\x57\x8b\x63\xa2\x41\xd1\xf3\xa6\xb4\xaf\xac\xdf\xe4\xd2\x7e\xd4\x2d\x61\x4c\x41\xe3\xaa\xe8\xa3\xaf\xef\xee\xad\x51\xc5\x66\x0b\xee\x6a\x2d\xd8\x5a\x8d\xdb\x9a\x3d\x63\x28\xd9\x09\xb6\x08\xda\xa0\x89\xae\x51\xd6\x15\x53\x66\x66\x52\x37\x25\xd5\x37\x33\x2f\xa9\x3f\x57\x35\x53\x90\xad\xd8\x9a\x54\xf8\x35\x89\x0a\x57\xa1\x96\xd5\xf6\xa4\x79\x1f\x9d\x12\xad\x3d\xca\x7d\x38\x18\xea\xcd\x0c\x2c\x40\x60\x2f\x53\xb6\x20\x86\xef\x30\x1c\x94\x8e\x6f\xff\x54\x1e\x4b\x7e\x0d\x93\x7b\xbf\xd4\x2c\x96\xdb\xe6\x6a\x35\xbf\xc3\xfd\xde\x93\x67\x26\xba\x7d\x3d\x7c\xb3\x3b\xa2\x49\x34\x4d\xb3\x8c\x8d\x42\x93\x6b\x87\xb7\xa4\x4d\xe5\x03\x3a\xdc\x68\x49\x84\xc9\xb4\xb3\xc6\xbb\x2c\x1d\x91\x09\xcb\xc6\x84\x87\x0c\xc5\x26\x55\x68\xa3\x9c\x62\x87\x65\x11\x7d\x9b\xc7\xec\x8d\x13\x89\xa4\x8c\x5a\x4c\x0e\x15\x36\x39\x84\x87\x04\x6f\x94\x0a\x79\x75\xe0\x78\x67\xd3\xea\x91\x46\xe7\x93\x59\xa8\x9f\xb1\xf7\xc9\x44\x00\xe4\x65\xcc\x4b\x45\x41\xcc\x71\x14\x45\x6a\xf7\x84\xfc\x2d\xb4\x38\x4c\x47\x13\x9a\x93\xe3\x19\x92\xb2\xa6\xc9\x60\x03\x49\xa9\x43\x75\x07\x65\xa2\x6f\xf2\x34\x37\x19\xb7\x6b\x98\x54\x07\x81\xc3\x20\xc8\x86\xa8\xb2\xad\x64\x5f\x0a\xaf\x27\x81\x31\x88\x43\x6a\x2b\xe5\x8e\xff\xec\x76\x1b\xb4\x97\xef\x32\xb3\x11\x68\xb3\x2d\x1d\x26\x54\xa5\xce\x54\x2b\x5b\x1f\x93\x61\xa5\x59\xc9\xaf\x6f\xe5\x58\x44\x20\xfd\x21\xbc\xdd\xaf\x27\xc6\x6e\x3b\x7b\xc4\xdd\x5d\xcb\x5c\xb1\xe9\x62\x55\x14\xe1\x0b\xc6\x32\x92\xb6\x7c\xdf\x54\x8b\xb6\x1f\xf7\x5a\x6f\xa1\x5c\xd6\x59\x85\x54\x28\x7c\x0d\xb8\xfd\xda\x73\x2e\xe9\x60\xfd\xa3\x5c\x17\x2a\x01\x36\x9d\x53\x42\xaa\x6c\xa4\x74\x2f\x95\x89\x7d\x25\x54\x84\x2b\xea\xbf\xae\xd7\x50\x92\x72\x6c\xbb\x09\x6f\x5d\xfc\x97\x8a\x99\x37\x10\x78\xdf\x7c\x43\x35\x50\x2e\x0e\x4c\x0c\xbf\xab\x61\x3e\xd5\x3b\xdd\x09\x78\x56\x31\x3d\x9b\x0d\xfc\x02\xd3\x1e\x85\x96\x56\xba\x15\xdd\x8c\x32\xa0\xd7\xae\x09\x3a\xa0\x23\x27\xe9\x68\x02\x61\x50\x42\xfd\x1d\xee\x92\xed\xeb\x60\x6d\x27\x32\x90\x34\x2a\x73\xac\x16\xb5\xde\xdb\x4e\xcd\x5c\x34\x9c\x9d\xde\xd3\xaa\x33\xd4\x72\x7d\xf5\x29\x8a\xca\x8a\xb3\x7f\x63\xb3\x56\x7b\x8d\xdc\x98\x19\x94\x75\x0e\xff\x2d\x45\xd9\x2c\x44\x9a\x69\xf3\x1b\xf2\xe5\xf3\xb9\x09\xc2\x64\xcd\x55\xb4\x02\xac\x67\x15\x60\x27\xe5\x86\xcb\x8d\xa6\x42\x88\xbc\xe0\x4e\xa2\xe6\x5b\x5b\x4d\x53\x7d\xe2\xbb\x61\x69\x88\xa6\x86\x6f\x2e\x62\xf1\x18\x79\x2c\xf9\xc2\xfa\x74\xc4\xc4\xf9\x77\xdc\xdd\x6d\xf6\xb1\xa7\xc5\x8a\xc7\xa0\x2d\x50\x6c\x7e\xac\x95\x0b\x9a\xeb\xc7\x36\x64\x13\xb1\x8a\x38\x2c\xc9\x6b\xcb\x69\xcd\x82\x4d\x35\xe0\x72\x57\x92\x8a\x50\x2b\x65\x5a\xe2\xbc\x0e\xb4\xfa\x61\xc7\xaa\x26\x6a\x92\xc5\xc4\xe3\x65\xf5\x2d\x7a\x28\x30\xf1\xe5\x25\x6a\xa2\x7f\x78\x81\x9d\xf4\x9e\x9e\x56\xbd\x33\x8b\x32\x01\xae\x92\xc1\x00\xb9\x24\xe1\xca\x53\x9b\x3b\x4f\xed\xe4\x09\xe2\x83\x6c\x38\xe8\x0d\x93\xe0\xbf\x82\x2d\xfd\xac\x3d\xce\xb4\x66\x36\x75\xd6\x28\x73\x35\x5a\x0d\xfd\x70\xb1\x2a\x50\x6c\x8b\x8a\x58\x49\xb4\x26\x4f\x6a\x9c\x43\x64\x18\x3c\xb7\xa9\xc8\xff\xf0\xa2\x53\xd5\xdb\x22\xa6\xad\x16\x2f\x62\xed\xa7\x6b\xbc\x88\xb5\xe7\x97\xa7\x2a\x93\x94\xe1\x10\x70\xde\x0c\xc8\xdd\x1d\x89\xbc\x38\x91\x66\xeb\x6c\xe8\xa2\xc9\xd2\xd6\x9a\x8a\xe8\xd4\xa2\x58\x1a\x97\xbe\x81\xf5\x4c\x28\x7a\x55\x5d\xb0\xf6\x5a\xf8\x4e\x7f\x1b\x3a\x2d\xd6\xbc\x4c\x8a\x0d\x12\xb9\xb0\x95\xdd\x6e\xe6\x05\x2d\x5a\x7a\x8b\xd4\x82\x99\x24\xaf\xab\xdb\xef\xf5\xc0\x58\xc8\x0f\x71\xe9\xc3\xfe\xee\x47\xf8\x5c\x8d\x69\xe9\x17\x78\xfe\x23\xee\xdd\xa5\xca\x34\xc9\x59\x46\xa9\x0e\xb8\x9a\x75\x94\xfb\x15\x24\x54\x07\x7e\xec\x99\x6a\x3a\xa6\xe7\x60\xb8\xe1\xca\xfc\xf8\xc4\x02\x1d\x69\xd1\x55\x11\x27\xee\x61\x5a\x00\x4f\x0d\x57\x64\x76\x9b\x51\xae\x8f\x73\xdf\xf5\x71\xa1\xc2\x05\xcc\x07\xe3\xa1\x39\x0e\x27\xd1\x68\x92\xf2\x5d\x11\xf6\x90\x3e\x13\xbb\xca\xd1\xee\x52\xcb\xe6\x2f\xc2\xcb\x24\xe8\xc2\x80\x4b\x86\x61\xb2\x93\xc7\x29\xd8\xb1\x4c\x74\xf8\xa1\x3e\x42\x68\x27\xcc\x4c\x94\x83\xcb\x26\x82\xe3\xad\xbe\x43\x51\xd2\x3f\x76\xc5\xf5\x3d\xda\x7d\x35\x7c\x2f\xba\xff\x0a\x62\xb9\xd5\x32\xa4\xde\x5d\xa7\x7c\x30\xc3\xd3\x61\xc2\xf0\x75\x32\xc1\x57\xc9\xcc\x66\x04\xb8\x46\x2f\x20\x97\xd1\x55\xb7\x1b\x66\xf5\xdd\x75\x3a\xb8\x1a\xde\xd3\x72\xbf\x44\xa8\x2c\x5d\xcd\xa7\x3f\x60\x43\xcf\xad\x3e\xf6\x95\x7f\x29\x72\xaa\x95\x7e\xdc\xf3\xa2\x2d\xdd\x26\x23\x17\x6d\xe9\xf6\x65\xd2\x7b\x71\xab\xa3\x2d\x99\x26\xcf\x6d\x83\x37\x65\x32\x1a\xdc\x0e\x37\x6e\x76\x3c\x6c\xad\xc4\x84\xcf\x11\x8a\x33\x3f\xba\xd6\xb9\x33\xd0\xf2\x2a\x54\x64\x60\xc9\x41\xae\x9c\xbf\xfd\xde\x53\x3b\xb1\xfc\xf9\x89\x4d\x5c\xad\xe5\x6b\xe3\xfb\x5a\x9d\x5e\x6d\xfd\x22\xec\x6d\xea\x33\xb9\xa9\xdf\x13\xf9\xa0\xb6\x56\x53\xb3\x89\x64\xcd\x88\x48\xf7\x5e\x33\xf1\xb6\x6b\x26\x1b\x45\xa9\x19\x3e\x49\x2e\xe5\xa7\xb8\x08\xdd\x59\xa7\x5f\xf6\x5b\x6e\xe3\x74\xc4\xdf\x75\x91\x6f\xb3\x6a\xf4\x95\x37\x4b\x77\x58\x8e\x97\xdd\x86\xb3\xc6\x06\x5b\xe8\xb0\x8a\x59\xb2\xb9\x99\xe2\x79\x02\x7c\x33\xa9\xed\xe9\x77\x77\x9b\xe1\x26\x55\x0e\x73\x74\xd0\x33\x0a\x41\x84\x47\x49\x1a\x81\x66\x39\x50\x4b\xdd\x25\x4d\x5d\x7b\xbb\x76\xf6\xa8\xc1\x92\xab\x7c\x8d\xf2\xc8\xf5\x42\x7b\xb3\xfd\x60\x40\x5c\x93\x70\x54\xdf\x4b\x33\x3c\xc7\x2e\xf2\x95\xb9\x52\x21\x49\xb1\x33\xb8\x09\x8b\x46\xa4\xbe\x46\x68\xb9\x62\x89\x6b\x8e\x0a\xd1\xde\xa6\xf9\x30\xe7\x8f\xb3\xd9\xfd\xf1\xb9\xdb\xd2\xcb\xda\x29\xe5\x45\x43\xd4\x09\x7f\xb4\x89\x8d\x91\x96\x07\xfa\x9c\xc1\x2e\x3e\x22\x9c\x1a\xc4\x40\xf0\x9c\x97\xb5\xa1\x25\x0d\x11\xc2\xce\xe8\xd2\x1e\x0d\xd8\x3f\x09\x00\x8d\xe7\xde\x8f\xfe\x8f\xda\x50\xfb\x47\x4b\x50\x88\xb7\xd3\x37\x3f\xe3\x13\x0c\x01\x52\xfa\xcf\xdd\x0b\x65\xc1\xab\xc6\xf2\xc7\x1f\x7d\x68\x76\x67\xc0\xfe\x8e\xa0\xc3\x39\x62\xbd\xe2\x11\x66\x5e\x60\x47\x5f\x27\xfc\xaf\xd0\xf2\x89\xb5\xdb\x29\x73\xd5\x72\x41\x96\xde\xf8\x4d\x53\x9a\x9b\xdb\x16\x73\xc7\xf8\xf3\x3c\xe5\x63\x32\xde\x85\x9b\x46\x73\xf9\x67\x6e\x41\xab\x1f\xb9\x14\x36\x1a\x97\x93\x35\x79\xa3\x15\x2e\x54\xac\x5f\xad\xd6\x2a\xb6\xb6\x29\x2b\xaa\xa7\x4a\xbc\xc1\xe5\x2d\xc5\x2b\x60\x79\x31\x25\x5d\x3e\x33\x30\x04\xff\xde\x5b\x2a\x9b\x7d\x2c\xff\x55\xe6\xe0\x39\xa9\x06\xa1\xfc\xe1\x39\xc2\x7b\x21\x4f\x5e\x2e\x78\xd8\x87\x75\x44\xc0\x52\x5d\x07\x1a\x7c\xf6\x14\x0d\x63\xf9\xf7\x07\x84\x30\x0f\x7b\xd8\xec\x8e\xcf\x9f\xd8\xed\xef\x33\x76\x80\xe7\xdf\x35\x17\xb6\xc1\xd6\x36\xb1\x62\xe9\x61\x7f\xcd\x0d\x6b\x0b\x6e\x28\x31\x7d\x6a\xc1\x98\x9e\x3c\x43\xf0\xe1\x59\xe3\xc3\x77\xea\xc3\x77\x8d\x0f\xdf\xa3\x21\x2a\x7d\xe2\xdd\x10\x77\xd3\xfa\x49\x2e\xe6\x5b\x82\x30\x57\x8f\xe0\xee\x40\xc2\x4d\x88\x4b\x58\x7d\xd5\x47\x95\x0b\xaa\x0b\xa2\xec\x20\x51\x69\x43\xd5\x5f\x10\xe0\xe9\xf6\x48\xe2\xc9\x65\x35\x51\x4c\x85\xee\x51\x92\x18\x3c\x5b\xf9\x6b\x51\x2a\xb9\xcb\x77\x06\xfc\x54\x89\x33\xa2\x4d\xde\x72\x95\x39\x60\x63\x3f\xb4\x41\xfb\xf4\xc5\xf4\x1e\xb1\xc1\xfb\x74\xbe\x80\x1c\xdb\xe4\x09\x65\x89\x45\x88\x4c\x4a\x73\x7b\x5d\x4b\xfe\x7f\xea\xde\xb5\xbb\x6d\x5b\x69\x14\xfe\xae\x5f\x21\x6b\xf5\xd1\x22\xb6\x61\x55\x4a\xd2\x34\x95\x83\x78\x3b\x8e\x93\x3a\xdb\x97\xd4\x76\xda\xdd\xaa\x3a\x2e\x2d\x41\x36\x1b\x8a\xd4\x06\x21\x3b\xae\xcc\xff\xfe\x2e\x0c\xee\x20\x29\x3b\xe9\x7e\xce\x7a\xcf\x87\xa6\x16\x71\x1b\x0c\x80\xc1\xcc\x60\x2e\xf2\x99\x56\xbe\x83\x55\x22\x2d\x25\x55\x1d\xac\x13\x18\x41\xea\xd9\x54\xcc\xe3\x24\xbb\x6a\x17\x7c\xea\x24\x80\x51\x04\xe0\xa4\x42\x00\xf4\xf1\xcf\xa7\xd4\x9c\x70\xed\xed\xa5\x52\x57\xff\xc2\x12\x4e\x4f\xb2\xf4\x6e\xcf\x3a\x9d\x89\x7a\x02\x58\x55\xe5\x47\x1a\x2f\x0e\xe6\x8b\x54\x16\x84\x86\x8b\x26\x75\x28\x28\x68\xc8\x2d\xd5\xc9\x60\xd7\x65\x2b\x38\xa1\xea\x95\xea\x8c\xd6\x3e\x10\x87\x50\xca\x64\x11\x8f\x82\x0f\x26\x0b\x61\x03\xbf\x18\xde\xb5\xc9\x17\xce\x68\xab\x29\x87\x42\x4d\x76\x55\x2f\xc8\x8d\x21\xbd\x4a\xd1\x24\x93\x13\x9a\x30\xdb\xfa\x8c\xd4\x26\xfd\xf0\x1a\x22\xab\x7b\x88\xc4\xb9\xe1\xd5\x18\x71\x9e\x50\xca\xbd\xa0\xb6\x4a\xa4\xcf\x4a\x93\x00\xf2\xbc\x1e\xfb\x92\x07\xd2\x50\x7b\xd6\x1f\x2d\x5f\x0d\x81\x19\x31\x7a\x07\x9d\x11\x12\x67\x84\xd9\x34\x62\x4a\xd8\x51\x26\xe3\xf0\x03\x38\x06\xf9\x5c\x45\xb6\x06\x84\x90\x6c\x47\x65\x56\x35\xb5\x87\xd9\xe6\xa0\x6a\x8e\xb2\xaa\x18\x5d\x60\x2d\xd2\xb2\xd2\xb5\x4b\xb1\xaa\x0d\x6f\x06\x5e\x0c\x6f\x63\x88\x02\xe7\x14\xe7\x38\xc6\x05\x4e\xc9\x44\xa5\xaf\x92\x38\x10\xac\xdc\x8f\x11\xc5\x29\x6a\xbd\x8d\x26\x38\x52\x69\x07\x65\x21\x56\xa6\xe2\xe1\xa4\x70\x4d\xa4\xd4\x28\x26\x82\xde\x0e\x70\x41\x34\xdd\xfc\xc1\x65\x08\x9e\x0e\x2a\x1c\xb6\xbe\x29\x62\x84\x8b\x48\x13\xed\x58\xd1\x6f\xc9\x6e\x3b\x5e\x48\xea\x4a\x51\x9c\x87\xe2\x2f\x7e\x50\x8c\x85\xe1\x71\xae\xa2\x3c\x30\xd2\xc2\xd2\xbe\xb5\xce\x47\xe9\x2e\xba\xa2\x51\x52\xd3\xfd\xf3\xe7\x36\x1e\x2d\x96\x46\xb3\x61\xf0\xd6\x8e\x7b\xcb\xd4\x05\x6f\x45\x3a\x1a\xdf\x24\xb4\x6b\x99\x84\xa6\xd2\x40\x37\x53\xa9\x8b\x6c\x8a\x54\x37\xbd\xbf\x8f\xfc\xdd\x3a\xc5\x35\x86\x42\x61\xdf\x08\xe1\xa9\x38\xf9\x41\xb2\x94\x73\x79\xc1\x1c\x51\xd2\xb7\x77\xc4\x07\x1a\xad\x92\xe9\x50\x9b\x42\x4b\xfe\x1b\x02\x83\xab\x1d\x04\x4f\x72\x93\x34\xa1\x19\xdf\xea\x6c\x1e\xd1\xcd\x4d\x7d\x26\x93\xe9\x30\xd7\xcd\xa4\xf0\x38\x54\x96\x64\xed\x98\xd0\x8a\x61\x09\x78\x7d\x1b\xd7\x8e\xe4\xfe\x3e\x4a\x88\x93\x26\x28\x43\x32\x79\xe5\xae\x04\x48\x09\x2f\xc3\xc4\x5e\x71\x71\x89\x4a\xfd\xd8\xb6\x5b\x7f\xc6\xa1\xab\xe9\xa1\x77\xd2\x19\x2d\x96\x29\x27\x9d\xfc\x93\xa2\x9d\x8a\x10\xc0\xfd\xa9\x5b\x09\xe2\xe3\x7c\x51\xd9\x48\x0e\x6d\xcd\x80\x44\xb4\x9c\x63\x5c\x58\x6a\xa1\xa8\xb8\x3c\xc6\xc4\x1e\x68\x05\x88\x9c\x08\x71\x74\xa5\xd2\xc9\x64\x4a\x68\x2f\x99\x86\x78\x2e\x6d\x36\xa4\x40\x07\x2e\x3e\xee\x38\x7f\x0f\xdd\x79\xfd\x14\x85\x98\xaf\xa0\x06\x7b\x1c\x46\x89\x50\xe9\x50\x60\x6f\x2c\x85\x9a\x1d\xf7\xc7\xdf\x1a\xad\x2f\x47\xfb\xc5\x45\x70\x30\xa6\x87\xfc\x9d\xea\xa7\x61\xdd\x12\xd1\xdb\xf6\x39\xfd\x9a\x99\x57\x52\xc3\x99\xb4\x6e\xb5\x29\xe1\x20\x09\x5c\x90\xde\xed\xef\xa7\xb6\xbd\xbe\x9b\xb2\x98\x53\x71\xe7\xd7\xe5\x67\x17\xb3\x9b\x44\x14\x92\x62\xa9\xaa\xea\x4a\x0f\xf3\x3a\xb6\x25\x2a\x26\x8a\x31\x43\x2a\x91\x55\x1c\x51\xd7\x23\xde\xe9\x76\x0a\xd6\x7b\xa2\x63\x97\xa6\x78\xdd\xca\xae\xbc\xf2\x88\x2a\x4e\x43\xb6\x94\xb0\xec\x32\x9e\xcc\xe2\x09\x2f\xc8\x1c\xd3\x5e\x6c\x7e\xd5\x4c\x68\x1e\x99\x56\xd0\xc3\xa9\x4c\x26\x7c\xb2\x50\xd9\x9b\xd4\x6f\x35\x49\xf5\x51\x73\x44\xb6\xdc\xf9\xe2\xf2\x52\xb6\x82\xf9\xa4\x6a\x55\xf9\x42\x6d\x5e\x24\x79\x64\xb5\x74\x33\x46\xe9\x5f\x14\x5e\xde\xc1\x20\x8d\x3b\xc8\x8b\x18\x82\x40\xfa\x9a\x17\x60\x48\x9b\x26\xd5\x3d\xff\xc3\x2a\x17\x24\x33\x6c\x84\xf2\x2a\x9b\xd2\xcf\x47\x8a\xd5\x3b\x8a\x17\x91\x53\x57\xbe\xf5\x4a\x77\x8c\x11\x98\x27\xa3\x52\xbe\xc4\xf9\xd9\x67\x75\x1f\xc0\xac\x48\x93\xc2\x8a\x83\x0d\xeb\x76\x23\x95\x0a\x45\x75\xae\x4c\x01\xb6\x06\x98\x43\xee\x47\x48\x49\x8d\x59\x19\x2b\xcb\xb5\x95\x4a\x04\x40\x83\x48\x49\x89\xf3\x34\x05\x54\x5a\xd6\x37\xba\xa1\xba\xb7\xaa\x11\x1b\x3b\x63\x47\xf0\x54\xe5\xbd\x54\xeb\xc7\xd8\xd2\x7b\x21\x35\xd3\xac\x18\xb2\xd5\x37\xe6\xf9\x87\x3c\x0f\xe9\x96\x9c\xae\xbc\x04\x2b\x4b\x9e\xab\x15\x8b\x6b\xef\x10\xb5\x64\x54\x70\xb3\x3f\x6b\xc4\x57\xfb\x1e\x51\xb0\xe4\xd4\x26\x7f\x2b\x8b\x1f\xa8\xe4\x34\x56\x67\x50\x45\xd5\x30\x28\x6b\xb0\x0d\x6b\x27\x60\x0e\xd6\x62\xa3\x6c\x1c\x74\x95\x18\x55\x2e\xe8\x2e\xce\x02\xac\xa9\x32\xe7\x4e\xf5\xc1\x05\x69\xa0\xf6\x60\xc4\xad\xe0\x00\x49\xfc\xe8\xcc\xcc\xe1\xce\x6e\xcc\xc3\xcc\x68\x32\x4b\xe8\x74\x97\xb1\x82\xac\x46\xc9\x58\x30\xb0\x9a\xcb\x3f\xa2\x3c\xae\xc5\xa4\xa0\x6b\x5f\x86\x6a\x07\xcd\xce\x88\xe2\x20\x8c\xe8\x38\xc8\xed\xb3\x72\xf2\x06\x3b\xa3\xb4\xdc\x35\xd1\x3e\xd6\x56\x23\x2f\xcd\x5a\x32\xd7\xac\x85\x8d\x92\x70\x3d\xb2\x51\x32\x46\x2d\x31\x28\x61\x5f\xb3\x32\x0e\x3c\xc8\x48\x2f\x45\xed\xa6\x04\xc1\x50\x31\x34\xf9\x6c\x56\x50\x4e\xfa\xf0\x58\x2e\xf8\x47\xbb\xf7\x07\x9b\x51\xf4\xfd\xf3\x17\x5d\xd3\x46\x8c\x71\x79\x17\x4f\xa7\x2c\x72\xda\x22\xf4\xea\xd5\x0b\xf9\xd8\x6e\x4c\x58\x9c\x4e\xfa\x4f\x9e\x3d\xd8\xc3\xce\x60\x28\x01\x10\xac\xaa\x6d\xfb\xe4\xbb\xef\x1e\x6c\x0a\xcd\xf2\xc5\x20\x38\xb2\xcd\x2d\x36\x07\xba\xcd\x93\xc7\xb7\x79\xa2\xdb\x3c\x7d\x7c\x9b\xa7\xc8\x4f\x83\xea\x46\x54\xbf\xa7\x2f\x5f\x3e\xf1\x32\x9f\x3a\xa5\xf4\x9e\xbf\x7c\xf9\xb4\x5f\x86\x37\x59\xa1\x16\x75\x12\x2e\x2a\x70\x93\x60\x96\x34\xe4\x98\x83\x58\xcb\x0c\x5b\x69\xb4\x00\x07\x19\x7f\xfa\x44\x47\xe3\xd1\x16\xad\xe0\xc2\x20\xe6\x06\xe0\x07\x07\x06\x8a\xd5\x79\x51\x13\xa4\xd5\xe9\x8b\x0a\x62\xe3\xe4\x33\xd7\xdf\x21\xb2\x3d\x60\x8a\xca\x62\x92\x2f\x68\xa5\xd6\x22\xa8\x55\x56\x2f\xe3\x49\xcb\xb9\xab\xab\x5a\x04\xcd\xaa\x5b\xfb\xaf\x82\x8c\xc6\xae\xfa\xc2\xfe\xd6\x5b\x5d\xf3\xd5\x42\xd4\xd7\xbf\x26\xf1\x22\x9e\x24\xfc\x8e\x0c\xfa\xcf\x5e\x7c\xf7\xfd\x73\xdc\x88\x3b\x55\xc1\xc3\xe0\x68\xac\x8c\xba\xb4\xfb\x48\xf2\x17\xdd\xbb\xa6\x90\x49\xdd\xe2\xc9\xdd\x1c\x9b\x63\x42\x4b\xa7\x9a\xbe\x2a\x3d\x60\x74\x40\x0e\x65\x08\x22\x95\x63\xee\x5c\x50\xf3\x12\x53\xf3\x6e\xe8\xc1\x0b\xfb\x55\xde\xd5\xda\xae\x2f\x9c\x7a\xe9\x7d\xdd\xda\x7a\xc4\xea\xdb\x0a\x46\xa9\xa3\xca\x08\x2f\xb5\x79\xdf\xca\x22\x4c\x39\x57\xdb\x89\x98\x88\x2a\x6d\x4a\x9c\xd5\xf1\xee\x68\xf9\x69\x93\x3c\xc5\xb4\xf4\x4c\xf5\x5c\x4b\x6b\xd8\xb0\x9b\x83\x31\x49\x23\x8e\xfb\xa8\xf4\x29\x9a\x33\xe2\x63\xf6\xbc\x1c\xd1\xac\xaa\x03\x3a\xc5\x69\xd4\xc7\x4f\x91\x86\x9a\x3f\x02\x6a\xfe\xdf\x3a\x25\x82\xa1\x0c\x6e\x2e\x3b\xf1\x56\x88\x88\x65\xc4\xf1\x00\xcc\x35\x17\xf1\x84\xdb\xf0\x20\x6d\xb1\xf7\x57\x92\x5a\x68\xaa\xb1\x92\x7b\x66\xc8\x4a\x2c\xd6\xcf\x49\xb1\x0d\x86\x99\xdb\xc9\x26\x79\x6a\x42\x00\x8c\x92\x31\x8e\xc5\xff\x36\x07\x63\x5c\x90\xb8\x7b\x96\xfc\x45\x7b\x67\x07\xbf\xed\x5f\x1c\xed\x9e\xfd\x0b\xa7\xa4\xdf\x8d\xc5\x05\xfa\x04\x02\x9a\x27\xb3\x68\x40\xc4\x1f\xb2\x05\x59\x46\x31\x7e\x82\x30\xdd\x24\x85\x31\x21\x06\x3f\x6e\x0b\xe1\x84\xe4\xdb\x93\x97\x24\xd9\x2c\xb6\x27\xe0\xa4\x31\xd9\xa2\x63\x92\x8d\x26\xe3\x96\x18\x9d\xe4\x5b\x14\xfc\xd4\xc1\xf1\x20\xed\x76\x23\xfd\x15\x95\xee\x81\x77\xfe\xde\xa2\x65\x68\x2e\x5a\x73\x66\xdd\x25\xd5\xe7\xb5\xe5\x9c\xe3\x31\x79\x32\x78\xf6\xfd\xb3\x17\x4f\x9f\x3f\xfb\x1e\x57\xe8\x8f\xdc\x21\x23\x8e\x05\x93\xe4\x18\x9d\xfe\x57\x06\x52\x34\xcd\x1f\x43\xc8\x52\xce\x94\x9c\x18\x30\x2b\x17\xb0\x21\x55\xcb\xc9\x49\x7f\x9b\x5b\xfe\x9a\x2b\x66\x71\xc4\x70\x36\x26\x74\xc4\xd5\x26\xb2\xc7\x9a\xe1\x2c\x12\x5c\x85\x2f\xb5\xd9\x51\x14\x54\xda\x95\x08\xd7\xc4\xfb\x56\x71\x53\x94\xa4\x9a\x94\x63\x22\x58\xfa\x70\xa0\x0c\x53\xc1\x06\x95\x01\xfd\x2e\x27\xf1\x82\x2f\xa5\xe7\x8d\x8b\x2d\xa3\xa8\xa9\x20\x00\xdb\x02\x0b\xaf\x92\xcb\x02\x72\x8a\x94\x49\x6f\x90\xc5\xcf\x39\xbd\xea\x74\x38\xa7\x50\xdd\xb6\xcc\xea\x89\xa7\x0d\xca\x6d\xab\xa6\xa7\xce\x9d\xa2\x5e\x1a\x2e\x64\xe6\x78\xa0\xdd\x85\x85\x0a\xcc\x09\x79\x32\x69\x2b\xf1\xfc\x6f\x8a\xe3\x72\x90\x90\xd0\xa9\xb1\xf5\x21\xa1\x1e\x44\x41\x76\x45\xed\xee\x64\xbc\x2d\xa8\x14\x41\xad\x29\xac\x94\x48\x45\x3d\xc7\xfb\x2a\xb8\x92\x18\xda\xe6\x2f\x19\x6c\xb7\x4c\xec\x6d\xd8\x69\xc6\x0d\xc9\xc9\x89\xa8\x01\xdd\x1a\x78\x79\x10\x5d\x16\x69\xc4\x37\x07\xe3\x57\xaf\x9e\xb8\x89\x09\xad\x29\x22\x10\x2f\xa5\x69\x30\x5b\x47\x2b\x19\x9c\xe4\x51\x0e\xe2\x7a\x5a\xf2\x73\x98\x10\x57\x63\x30\x0d\x35\x3b\xa0\x75\xa3\xd9\x84\xae\xd3\xed\x38\xbf\x21\xdf\x4c\xcc\x73\x16\x2a\x7c\x04\x6e\xff\xae\xca\x27\x29\x54\xe4\x83\x69\x9d\x82\x84\x6e\x10\x92\x95\x98\xf6\x0e\x38\x65\xf0\x62\x73\xc0\xe9\xfc\x54\x4f\x40\x26\xcd\x86\x51\xdc\x6f\x32\x4c\xee\x69\x9e\x73\xf7\xab\x79\x3f\x0d\x0b\xc2\xdf\x1f\x3f\xbc\xd9\x3d\xdf\xbf\x38\xdd\x7f\xbb\x7f\xba\x7f\xbc\xb7\xff\xe6\xe2\xe7\xdd\xc3\x8f\xfb\x44\x41\x71\x99\x52\xbf\xdb\xac\xf0\xbb\xd3\x7f\xef\xc5\x93\x6b\xa8\x21\xfe\x3f\xb5\x55\x4c\x72\xed\xb0\xa0\x91\x49\x4c\x63\x31\xc4\x4d\x52\x24\x79\xe6\xa8\x67\xc5\x67\x90\x9c\x74\x98\x12\x21\x44\x49\xa6\x9a\xc7\x57\x60\xf3\x68\xdb\x81\x57\x96\xaa\x5f\x71\x82\x34\x9e\x93\xa0\x39\x54\x0b\x4e\xcf\x63\x19\xc4\x06\xdd\xdf\x47\x19\x09\x86\x34\x0a\xf9\x25\x37\x0a\x1d\x0f\x4e\xdd\xd5\x92\xca\x9c\xf5\x08\xb2\x5c\x66\x65\x92\xe9\xfe\x1b\xa7\x57\x96\xad\x0a\x1e\x6b\xde\xe1\x9c\xe6\x16\x0d\x35\x90\xd8\xcf\xf0\xb0\x27\x44\x52\x3a\x25\x1b\x03\xcd\x08\x5f\x11\x2a\xfe\x75\xd4\xd3\x72\x29\xcb\x05\xa5\x9f\x02\x1e\xcc\xe9\x61\xc7\x1f\x7d\x18\x94\x47\xa8\x64\xd4\x99\x2a\x38\x5d\x06\x5d\xa0\xfa\xae\xe5\xfd\xba\x32\xa0\x54\x96\xd2\x70\x37\x00\x78\x4b\x3a\x62\x04\x0b\x97\x60\x8e\xfc\xa4\xb0\x16\xd4\x5c\x75\x10\x13\x6d\xdf\xee\x6b\x95\x1e\x58\xc8\x04\xe1\x18\x42\x1e\x65\xc3\x28\x58\x82\x18\xc7\xa8\x74\x67\xb2\x0a\x66\x62\x6e\xf2\xa0\xe1\x57\x01\x02\xd3\x47\x35\x6b\xdb\xc7\xbc\x2c\x5b\xc6\x95\x56\xbf\x4c\xa0\xa8\x73\x7c\x72\x7e\x71\x74\xf2\xe6\xe0\xed\xc1\xfe\x9b\x8e\x7e\xc8\x87\xdb\xa9\x71\x83\xa9\x24\xea\x76\xbb\xb0\xde\xde\xc9\xf1\xd9\xf9\xee\xf1\xf9\xc5\xf9\xee\x3b\x73\xf0\xfc\xc5\xcc\x28\x0b\x7c\x9c\x93\xb2\xd4\x11\x95\x5b\x15\xc2\xf1\x7f\x65\xf8\x96\xe4\x80\x7d\x8c\x34\xd0\x3b\x08\xb7\xdb\x44\x0b\xd7\xeb\x0e\x69\x76\x63\x1e\x98\xaf\x93\x74\xca\xa8\x5a\x85\xc0\x2b\xb5\x32\x15\x05\xb0\xc3\x5c\xea\xf6\x23\x3a\xae\xe8\x75\x05\xbd\xaa\x56\x73\x78\x12\x6c\x3c\x1e\x6e\x20\x58\x7f\x19\x12\xfb\xb8\xd5\x78\x2f\xf8\xba\xbf\xb8\xca\x24\x49\xf5\x1f\x37\xbb\x4f\x26\xda\x6f\x5e\x8c\xb2\x55\x7f\x33\x3d\x30\x90\xca\x21\x03\x83\x65\x3a\xfc\x97\x31\xf8\x8a\xd9\x55\x61\xad\x3f\x80\x18\xd7\x90\x3d\x55\x72\x1e\x5f\xc9\x8f\x2a\xe9\x32\xec\xc0\xf3\xf8\xea\x4a\x3a\x9f\x28\xbf\x7b\x43\xd3\x5b\xfa\x22\xc9\xb1\xed\x00\x72\x9d\x88\xab\xc3\x3e\xc3\xc7\x26\x8b\xb3\xee\x10\x45\x31\x42\x39\x69\x58\xe5\x7a\x68\xab\x87\x3b\x57\xb1\xa3\x65\xe0\x2e\x6e\x14\xa1\x62\x1a\x50\x5b\xbe\xb6\x7e\x5c\x4c\x63\xe0\x6d\xa1\x11\x6a\x39\xe3\xca\x5a\xf9\xfc\x32\xc9\x28\x8a\x46\x1c\xa8\x7c\x31\x46\xd8\x81\x5c\x1a\x66\x2c\x0c\xd9\x2c\x70\x8c\x1e\x0f\x21\x92\xa6\x09\x4b\x7b\x99\x39\xb8\x86\x06\x9c\xc5\x93\x4f\x28\x02\xb3\x4c\xb7\x82\x73\x8b\xce\xb2\xc8\x2c\x26\x2a\xf1\xc6\x00\xd5\xdc\xe5\x01\x34\xcd\xc1\x0f\x1a\xaf\xf0\xe0\xc6\x0e\x27\xee\x21\x38\xdc\x37\x8f\x46\x09\x64\xb2\x0e\xa7\xd9\xa4\xd5\x95\x7b\x5b\x09\x3c\x4c\x1c\x41\x7b\xf9\x2a\x39\x48\xb1\x77\xff\xa2\x77\x24\x33\x87\x99\x24\x0f\x12\x97\x0a\x03\xd0\x72\xe2\xff\x3d\x62\x1b\xc1\xd5\x28\xee\xd6\xa6\xcd\x14\xe3\x7c\x5c\xb7\x4e\xde\x45\x9d\x39\x3c\x57\x82\x83\x39\x0e\x73\xac\x01\x19\xc6\xd8\x99\x29\xa4\x68\x73\xce\x18\x21\x24\xbb\xbf\xdf\xa8\x5b\xd8\x0c\x69\x53\xe6\xdc\xdc\x9f\xd6\x2d\xf3\x0d\x60\x24\x55\x75\x96\xd5\x0d\xa9\x4c\x5e\x68\x76\xd3\x03\xa3\x25\x7e\x1d\xa5\x58\xed\xc1\xed\x70\x83\xc4\x78\x89\xa4\xd6\x22\xd1\x3c\x6c\x70\x87\x27\x8f\x64\x03\x4d\x06\xa9\xff\x6d\x82\x3f\xca\xc7\x5a\xcd\x1c\x22\x9f\x7b\x18\xb7\x91\x0a\xb8\xc1\xa3\x41\x4d\xa1\x50\x93\x61\xa6\x74\xbd\x55\xa9\x43\xab\xb8\xd3\xea\x0e\xc7\xf9\xfa\x3d\x9e\x70\x3a\x57\xfc\xab\xdd\xe1\x39\x0e\x36\x5e\xed\x26\x6d\x3e\x05\xf5\x17\x91\x1e\xa9\x94\xcb\xaa\x71\x63\xbe\x1b\xaa\x42\x15\x2d\x51\xb1\x24\x18\xbf\xb3\x34\xc2\x61\xb9\x0c\xe4\xf2\xf1\xea\x7f\xf9\xee\x6e\x10\x02\x53\xe5\x79\xb6\x2a\xf1\x84\xa8\x27\x63\x8e\xa7\xfa\xcf\x33\x78\x3a\x15\x17\xf5\x35\xa1\xe4\x95\x8e\xba\xb2\xb3\x1c\xd2\x96\x23\xba\xbb\x39\x79\xb5\xd3\xeb\x3f\x3f\x51\xeb\xec\x7a\x13\x4d\x94\xf3\xe7\x3f\xe1\xd1\xd9\x29\x98\x9a\x82\x29\xcd\x78\xc2\xdd\x46\xd7\xa1\xd7\x67\x7d\x46\xdf\x9b\x88\x91\x57\x1c\x72\xd1\xaa\x8c\x83\xda\xc6\x67\xb1\xba\xa2\xbc\x7d\x4b\xe3\x4f\x47\xf1\xc2\x2e\xa8\xc5\x24\x68\x3f\x54\xb9\xc0\xaa\xfb\x1b\x10\xfa\x8b\xfc\x5b\x2d\x9a\x2e\x82\x77\x21\xe3\x2e\xbb\xae\x6f\xb7\x92\x19\xc0\xfd\xa8\x1f\xf0\xf5\x08\x6e\x59\xa9\xdf\xd7\x57\x8a\x28\x49\x25\x01\x82\x74\x7b\x35\xce\xce\xca\x0e\x5c\x01\x69\x5e\xe7\x87\xea\x3a\xb0\x1d\x9b\x22\x9f\xcd\xfd\xaa\x51\x64\x0f\x35\x63\xc8\x02\x19\xd2\x67\x0e\xd3\x5c\xd8\x4d\x73\xe3\xab\xb7\x16\xda\xe1\xc2\x8b\x0b\x4c\xe1\x27\xce\x95\x79\x42\x82\xee\xef\xfb\x4e\xfe\x64\xf1\x09\xe7\x9b\x03\x84\x65\x10\xd9\x64\x58\x97\x56\x78\xae\x4d\x1b\x02\x9b\x86\xd1\x18\xcf\xad\x01\x83\x92\x77\x98\xa3\x9d\x32\xf5\xb3\x6e\x37\xca\x88\xd2\xbd\x08\x6e\x62\x99\xf1\x21\x2f\xb1\xa8\x4c\x32\x08\x18\x20\x08\x95\x39\x66\x9e\x96\xa3\xd6\x06\xd6\x38\x20\x18\xb2\xa6\x09\xda\x27\x7a\x47\xb8\x25\x65\xcc\x10\x0b\x16\xf3\x9c\x39\x7c\xa9\x11\xbd\x03\x6a\xa5\xe4\xe4\x62\x7f\xbe\xe0\x77\x11\x2a\xcd\x5f\x7a\x8d\xfd\x0e\x25\x15\x91\x7e\x5b\xea\x5b\x84\x90\xd3\x3e\xa3\x9f\xb9\x09\x12\xef\xb5\xed\xc9\xa2\x20\x91\x3a\xd5\xbb\xdc\x83\x19\x61\x5a\x86\xa3\xf8\x57\xcb\x90\xe2\x4f\xe2\x32\xc1\x34\xbb\x71\x9e\x20\x8c\x68\x8b\x73\x32\x13\xdb\x41\x5f\xb6\x70\x57\xfb\x51\x93\x6c\x88\x6b\xb0\x8f\x87\x45\x69\x49\x5b\xc2\xac\xc7\x73\x33\x72\x12\xc2\x1c\xef\xc8\x06\xdc\xb5\x00\x05\xbb\x7b\x80\x1d\xbc\x67\xaf\xa2\x58\xac\x31\x10\xdc\x53\x3a\x7b\xab\x45\x19\x7f\x12\x1e\xf8\xae\x56\x36\x95\x41\x50\x3b\x38\xb3\xef\xf4\x57\x0d\xda\x63\x4f\x68\xfd\x44\xef\xde\x8a\x75\xaa\x2c\xa4\x23\x1f\xad\x5f\x2e\xa8\x51\x5d\xab\x0d\xb9\x56\x54\x6e\x39\x3b\x94\x76\xdb\x87\x84\x85\xf3\x5c\x86\xba\x57\x9e\x34\x4d\x00\xeb\xa5\x0e\x60\x56\x7c\x68\x5e\x90\x3e\x76\x4d\x82\x24\x01\x51\x6e\xf6\x44\x45\x71\xa5\x62\x06\x9d\x72\x58\x57\x36\x4b\x58\xc1\x75\x34\x40\x3a\xd2\xdd\x8e\xcb\x0a\x56\x54\x37\xe6\x51\x55\xf6\xd3\x13\xdd\x78\xb8\xd1\x4a\x14\x55\x01\x7c\x0f\xe4\x28\x10\xaf\x42\xd4\x47\x75\x90\x80\xc9\x19\x2d\x8a\x4e\x89\xa9\xe6\x77\x4c\x44\x19\x0d\xd7\xab\xe0\xa0\x68\xcf\x4c\xe4\xa0\xbf\x15\x9c\xa6\xd1\xe6\xa6\x9d\x16\xa4\xcf\x04\x24\x6a\xee\x4a\xbf\x53\xc0\x19\xd1\xd1\x08\x16\x79\x81\x34\x52\xb0\x58\xac\xa1\xfe\x5c\x56\x8d\x12\x99\x54\x6f\x3f\x52\x71\xed\x28\xba\xeb\xb4\xd9\xb8\xc6\xd8\xd1\xa9\xe7\xfd\x4a\xf3\xdb\xad\x94\xde\xd0\x8a\xd1\xa3\xce\xbb\x8f\xe3\xbf\xaf\x0b\x9f\xa4\x34\x66\xe4\x52\xfc\xa5\x5d\x1c\xef\xde\xa6\xf1\x55\xf1\x96\xe5\x73\xc2\x38\xa6\xbd\xeb\xb8\xd8\x33\x65\x24\x11\x9f\x18\x2d\x28\x7f\x43\x2f\x97\x57\x57\x94\xed\xc5\x69\x7a\x19\x4f\x3e\x59\x65\x3a\x5a\x7d\xe0\xe4\x88\x97\x98\xf6\xd6\xd6\xa3\x50\x91\x8a\x7a\x62\xbb\xdc\x79\x81\x6f\x94\x93\x9e\x43\x0b\x0a\x19\x40\xa7\x04\x15\xfe\xde\x92\xb1\xc4\x09\x09\x65\x5d\x28\x48\xcc\xa1\xc6\x2f\xd7\x09\xa7\xc5\x22\x9e\xd0\x3a\x35\xff\xaf\x3d\x4e\x0b\xae\x2c\x3b\xb3\x9c\xcd\x41\x8d\xa7\x91\x46\x16\xe2\x1c\xef\xe6\x5c\x3d\x6e\x04\x21\x79\x04\xdf\x97\x91\x95\x71\x7c\x5d\x01\xf5\xa2\xb7\xed\xd7\x14\x04\x24\x6c\xe2\x74\x8b\x8f\xbf\xd2\x88\x21\xe3\xcf\x93\xd4\x3c\x98\x68\xd3\x52\x08\xc7\x81\xc1\x22\xac\x6e\x60\x31\x2c\x5b\x33\x30\xb7\xa3\xc8\xb8\x46\xd5\x91\x9c\x28\x8f\x36\x2b\x94\x1f\xf9\xb1\x0a\x7d\x26\xa1\x4a\xb2\x73\x16\x67\x85\x74\xe7\x25\x95\xc8\x32\x74\xf4\x96\x8e\x91\xa0\x96\x70\xae\x69\xef\x92\x5e\x25\x99\x10\x6a\xd8\xdd\x8a\x47\xa8\x9c\x25\x59\x9c\xa6\x77\x2b\xaa\x2d\xf3\x51\x09\xfd\x5e\x51\xae\x02\x79\xfd\x1c\x33\x52\xc7\x8b\x70\xcf\xcb\x19\x5c\x42\xa8\x38\xae\xb0\xde\x71\xda\x8b\x79\xd4\xf7\x1e\xf3\xde\xc8\xbc\xb3\x25\xec\xd5\x6c\x4a\xd9\x6e\xce\x2b\xb9\x72\x49\x46\xb5\xdd\xdf\x61\x6f\x96\xb3\x03\xa9\xcd\x3d\x85\x06\x90\xe5\xea\x06\x33\x71\x81\x8a\x1e\xff\xe4\x38\x26\x29\xd3\x2a\xdf\x88\xe2\x55\x41\xd3\xd9\x30\xc3\x2e\x68\xc3\x1c\x73\x46\xa9\xb2\xfb\x07\xbf\x63\xf9\x3e\x5a\x7a\xe0\x5d\xb3\x28\xf6\x81\x33\xfb\xb8\x02\x25\x4e\xc4\xb2\x6b\x20\x54\x64\x7b\x5c\x08\x58\x80\x66\x0b\x48\xdc\x31\xb9\x09\x9f\x14\x40\x56\x22\x9c\x92\x94\x47\x45\x4f\x91\x34\xe3\xca\x24\x76\xec\x6a\x1e\x67\xf1\x15\x65\xc3\x25\x84\x62\xa6\xc3\x49\x49\x52\x08\xb1\xb8\xcf\x23\xc6\xa3\xa5\x58\xa6\x3d\xc7\x0d\x3a\x9a\x20\x84\x97\x35\xb1\xbe\x54\x5a\xf3\x04\x1c\xdd\x6d\x62\xf3\xa2\x0d\xa9\x90\x14\x4c\x6d\x69\xc4\x5e\xb4\xe3\xa2\x1d\xb7\x59\x9e\x73\x5b\xb3\xd7\x41\xad\x98\xc0\x80\xbb\x39\x97\xae\xf2\xca\x5c\x7d\x82\xab\xd0\x1b\xcc\x2e\x58\x54\xe0\x18\xa7\x38\xf1\x71\x7b\x14\x27\x59\x1d\x5a\x5d\x8c\xe6\x75\x6b\xcb\x7d\x0c\x26\xde\xda\x32\xeb\xff\x14\xae\x6d\xee\x8c\xaf\x1c\x9b\x2b\x6b\x6b\x68\xb8\x58\xdd\xc2\x83\x25\xc5\x4b\x32\x6d\x58\x5d\x33\x6a\xe2\xc3\x56\x94\x62\x11\x27\x62\x7d\x97\xd5\xf5\xcd\x9d\xf5\x9d\xaa\xf5\xbd\x2e\xc9\xc4\x59\xdf\x69\x65\x7d\xaf\x11\xc2\xd3\xff\xad\xf5\x95\x41\x2c\x60\xd0\xf7\x89\xbf\xc6\xd7\xb8\x3a\x03\x84\x17\x52\xd5\x20\xdd\xd9\x74\xa4\xa4\x99\xf1\x57\xcb\x50\x0d\x63\xbb\x50\x5a\xa8\x39\x59\x8c\xfa\xe3\x4a\x3e\xfe\x3f\x82\x7c\xfc\xdf\xac\xe6\x3a\xad\x5f\x09\x3f\x8a\x45\x9c\xc9\x74\x7e\x65\xaf\x67\x3e\xd0\x6c\x5a\xb6\x87\xc3\xf6\xf9\xc9\x9b\x93\x76\xc4\xaf\x19\x8d\xa7\xed\x4b\xca\x39\x65\xe8\x0f\x54\xa6\x44\x1b\x45\x2c\xb0\xeb\x3b\x37\x73\x5d\xcf\x4a\x67\xcf\x2e\x71\x8a\x27\x38\xf6\xf7\x4c\xc3\x9e\x0d\xe9\x80\xd8\x27\x76\xd7\x72\xb5\x6f\xc3\x93\xef\xed\xdb\xcc\xec\xa0\xb5\x34\xe9\xec\x2e\x9b\x90\x19\xb3\x01\x26\x76\x39\x67\xc9\xe5\x92\x53\x72\x44\x81\x71\x48\x68\xc6\xb5\x83\x53\xad\x7e\xa1\x8e\xa8\x9a\xfb\xdb\x18\xea\x8a\x66\x6f\x05\x07\x79\x9c\x4f\x29\x99\x33\x80\x40\xde\x87\x49\x9e\xad\x1d\xe0\x8a\x35\x8f\x30\xa5\x05\x67\xf9\x1d\xf9\x04\xfd\x5d\x25\x05\xa7\xec\x0d\xd5\x4c\x38\x39\xc3\x14\xc2\x67\x55\x0a\x82\x8b\x7e\x63\x80\x56\x7d\x25\xe4\x7e\x8e\x28\xc2\x89\x0c\xdd\xc0\x76\x3a\x54\x1c\x27\xdb\xb2\xe8\x0c\x3b\x53\xe7\x57\x2b\x1b\x25\x63\xb2\x0f\xa6\xca\x98\x83\x86\x1d\xd3\x5e\x5c\x14\xf9\x24\x89\x39\x7d\x23\xe1\x13\x9b\x61\x4f\xc8\x46\xe4\x04\xd0\xa2\x3e\x27\xd9\x15\xf9\xd3\xfd\x10\xd8\x2a\x48\x0d\xc0\x5d\xad\xf7\x81\x54\xa3\xa9\xa8\xd3\xaf\xc8\x93\xb2\x05\x6c\xd8\xd9\xe4\x9a\x0a\x0e\x50\x75\x68\xbb\xe3\x68\x45\x7b\x17\x45\x50\x7c\x4e\x34\xff\x16\x34\x74\x21\xa9\x6d\x4a\xa7\x64\x4f\x36\xbe\x50\x8b\xb0\xa7\xb5\x85\xa7\x98\xf6\xce\xf7\x8f\x3e\x1c\xee\x9e\xef\x5f\x9c\x1c\x1f\xfe\x7a\xb1\x77\x72\xf4\xe1\xe4\x78\xff\xf8\x9c\xd0\x9e\x0c\x11\x64\xa8\xe5\x91\x24\x58\xa4\x76\x84\x1a\x88\xa9\x4a\x15\xe9\x60\xb6\x70\x1b\xd0\x4c\x7c\x72\x4a\xcf\x59\x3c\xf9\x04\x89\x67\x7a\x67\xfb\xa7\x07\xbb\x87\x07\xbf\xed\x9e\x1f\x9c\x1c\x5f\xbc\x3d\x38\x3d\x3b\xbf\x38\x3e\x79\xb3\x7f\x71\x76\x7e\x7a\x70\xfc\x0e\x4c\x2c\x14\x8f\xa6\x77\xa4\xf8\x34\xcf\x39\x3d\x4c\x6e\x64\xcc\x0a\x42\x7b\x46\x57\x0a\x1f\x94\xe7\xcb\x31\xbd\xdd\x97\xc9\xbe\x6c\x53\x39\xd5\x37\xe1\xc9\xa2\xbd\x9a\x4f\x7b\xd2\x26\x67\xfa\xc1\xf0\x3b\xbb\xda\xf8\x5f\x8d\xa0\x6b\x1c\xc7\x73\x3a\x6d\x2a\x0c\xbf\x6b\x91\xfd\xdd\x19\xa1\xbd\xc3\xfc\x16\xd2\xd9\xff\x7c\xa4\x67\x91\x64\x57\xf2\xc7\xf1\x9b\xfd\xb7\x07\xc7\xfb\x6f\xec\x83\x2c\x98\xc0\x28\x85\x95\x6b\x85\x72\xfc\xf1\xf0\xd0\xab\xb5\x97\x67\x53\x05\xb2\x5b\x0f\xa8\x92\x86\x22\xbb\x49\x58\x9e\x09\xc0\xd4\x97\x37\x52\x73\xf9\xc6\xa1\x60\xe2\xeb\xc9\xd1\x39\xa3\xd2\x79\x42\x45\xea\x24\xb4\x77\xf0\xe6\xe4\x68\xef\x3a\xce\xae\x68\x21\xeb\xd8\x1f\x47\x07\xc7\x07\x47\xbb\x87\x17\x7b\xbb\x1f\x76\x5f\x1f\x1c\x1e\x9c\x1f\xec\x8b\x89\xbe\xd9\x7f\xbb\xfb\xf1\xf0\x3c\xfc\xbc\x46\x9a\x80\xc2\x22\x67\x1a\x9d\x79\x36\x61\x94\xd3\xd7\xf9\x32\x9b\x7a\x3e\x4c\x45\xf0\xc6\x7d\x70\x7c\xbc\x7f\x7a\xf1\xf3\x51\x47\xf0\x5d\x7e\xd1\x9b\xfd\xb3\xf3\xd3\x93\x5f\x77\x5f\x1f\x8a\x1d\xb6\xbb\xf7\xaf\x0e\xc2\xcb\xa0\x0e\x7c\x3f\xeb\x88\x4b\xdd\x2f\x38\xdd\x7f\x77\x70\x76\xbe\x7f\x2a\xca\xa6\x41\xd9\x8f\xfb\xbb\x1f\x3a\x08\x5f\x07\x9f\xf5\x53\xa8\x68\x32\x0b\xca\xc4\x0e\xe8\xc0\xcb\x8b\xf3\xf1\xc3\x5e\x47\x3b\x57\x2d\x1a\x94\x17\x2a\x81\x9d\x09\xba\x4e\x3f\xf3\xb3\xe4\x32\x15\xe7\x09\x34\xe7\x0e\xd6\x16\xaa\xab\xf9\x03\xfa\x3c\xb8\x01\x54\x7f\xa0\x54\xd0\xaa\x90\x34\x2e\x38\x61\xa5\xac\xa5\x0e\x53\xd5\x5d\x52\xf5\x50\xce\xf4\x6d\x12\x54\x81\xef\xa5\xe8\xab\xa6\x50\x7c\x06\xb0\xfd\xf5\x9d\x2b\xd0\x6f\x1a\xb0\x50\x05\x3c\x83\xe0\x08\x7f\x17\x56\xd1\x4b\x13\xa8\x99\x6f\x73\x28\x33\x68\x18\x3b\x60\x41\x5e\x82\xc1\x41\x5c\x72\x46\x02\xfd\xa0\xed\x5c\x30\x15\xdb\xdb\x9a\xa3\xc8\xdd\xa5\x14\x3c\x95\xe0\x30\x6c\x82\xc3\x28\x97\x29\x07\x08\x49\x6c\x46\xac\x9c\xc4\x0e\x40\x97\xbe\x53\x56\x15\x1c\x16\x80\x93\xf9\xe0\x24\x84\x69\x70\x72\x92\x84\xe0\xf0\x1e\xa3\xf3\xfc\x46\xde\x9a\x51\x22\xaa\x3b\x11\xda\xf3\x56\x42\x72\xa9\x3b\xbf\x73\x1f\x22\xac\x06\xfd\xc2\x63\x21\xcc\xd3\x0c\x1f\x56\x52\x1a\x44\xd4\xe4\x35\xa3\x68\x08\x1e\x81\x4e\x30\x12\x23\xf7\x56\x42\xd0\xdb\x95\xa8\x7a\xe6\x29\x5f\x3c\x78\xd2\xb4\xda\x44\xd0\x43\x98\xae\xf7\x1b\xbb\xee\x76\x4d\x28\xf7\x81\x96\x8d\xa9\xf1\x87\xb4\x81\xf8\x69\xaf\x58\x80\x8d\x29\xc3\x03\x84\x69\xe9\x4c\xd6\x0e\xf3\xf9\x21\x46\xc2\x3c\x99\x29\x45\xad\x0a\x7c\xa2\xdf\xce\xe4\xaf\x90\x0b\x92\x5f\xa7\xe1\x07\x29\x73\xf4\x4b\x7c\xa7\xde\x0e\x38\xbc\xb0\x19\x60\x4e\x5c\x71\x1f\x18\x2d\xc1\x6f\xd9\x19\x31\xfb\xe4\x78\x11\xd9\x1f\x10\x77\x58\xed\xaf\x82\x5c\x44\xe6\x6f\x4c\xbd\xee\xcf\x1c\x76\xee\xab\x98\x39\x8d\x41\xc1\xd3\x5d\x28\x9e\x4e\x8c\x20\x3a\x3b\x87\x10\x0c\x2b\xc1\x67\x55\xd9\x28\xe9\xf8\x8f\x3f\xe0\x5d\xbc\xa7\xeb\x19\xb0\x3e\x39\x01\x6d\x22\x19\x42\x73\x23\x32\x9c\xdb\x00\xb9\x6a\xf2\x62\xc8\x1c\xd4\x57\xf1\x9e\x78\x48\xcf\x4b\xc2\x5b\xaa\x27\x32\xc0\xb7\x51\x86\x3f\x21\x7c\x1b\x25\x98\x93\x57\x1c\x4c\x26\x6e\xc5\x51\x26\xaf\xce\xd5\x62\xec\xc9\xe7\xf9\xdb\x88\x89\xaf\x75\x5a\x18\x58\x0f\xc0\x97\xec\xb7\xdb\x75\x56\x82\xec\xbb\xcb\x62\x5e\x14\x11\xd6\x40\x3c\xf1\x72\xa0\x9f\xea\x77\x60\x33\x25\x5e\x4a\x1c\xdc\x46\x1c\x7f\x72\x4e\xc3\x9f\x5f\xc8\xef\x0e\xca\x7a\x96\x14\xaf\xe3\x00\x8f\xf0\x7a\xee\xf1\x83\xba\x06\xde\xd4\xda\x9e\x01\xc9\x7f\x80\x96\xab\xa7\x80\xe3\x75\x1d\xac\xa5\xf7\x02\x05\x07\xe1\xbd\xfe\xf1\xf4\xec\xe4\x54\xb3\x10\x0a\xc6\xc3\xe0\xaa\x82\x48\xad\xca\x3e\x46\x73\x4f\xd9\x95\xf3\x24\x06\xd1\xa9\x21\x44\x9f\xfd\x38\xda\x95\x0f\xe3\xdc\x0d\x9a\xae\x33\xd0\xd9\x98\xea\x5e\x31\xc4\x68\x68\x28\x13\x84\x54\x5f\x00\xa0\x6f\x0a\x8d\xf6\xa6\xf9\x9c\x80\x2a\x50\xc6\xd8\x3a\x31\x30\x69\x93\x03\x69\x3e\x60\xbf\xcb\xda\x6f\x4e\x8e\x22\xe3\x01\x50\x2b\x0c\xba\x1a\x64\xd1\x91\xf8\xa8\x99\x17\xcc\xdd\xdb\x05\xf9\x96\xb4\xaa\x53\x46\x8b\xe5\xbc\x12\xce\xc9\xf4\x14\xde\x6d\x5c\x2a\xc7\xc5\x09\xf3\xad\x6b\x0d\x21\x13\xa8\x30\x42\x83\xb8\x5c\x98\x6f\xbc\xea\x71\x0a\xcb\xe2\x5a\xca\x0a\xb2\xb6\xc4\x45\x09\x69\x3a\xe0\x4b\x18\xa5\xd9\xae\x41\x8f\xe7\xf2\xda\x90\xde\x98\xb4\x8e\x13\x19\x1d\x8c\xcd\x53\x8f\xaa\x00\x95\x1d\xa4\x34\x37\x70\x2a\xe9\x34\x35\x0f\x81\x54\x24\x7f\xd1\x57\xfd\xf2\x52\xce\xa5\xa9\x96\x8e\x2e\xbd\xc8\x17\x96\x7f\xd2\xa3\x43\xc4\x67\x1c\xc0\x52\x56\xf0\x54\xc1\xa2\xc5\xb8\x58\xbe\xb7\x91\xcb\xc3\x22\xe9\x7a\xe4\x4b\x6f\x0f\xf6\xf1\xb1\xae\x0f\x28\x3e\x4c\x8a\x4a\x9e\xa1\x6a\xfb\xd7\x5e\x7b\x20\x99\x7e\x25\x8a\xb9\xb9\xb0\x18\x69\xc0\x52\xf0\x34\xc9\xc4\x85\x7d\x7f\xcf\x7a\xd3\x44\x45\xab\x93\x8c\xac\x35\x92\xbb\xb8\xc8\x17\x34\x73\xb7\x93\xdb\xab\xf2\xcc\xc4\x54\x60\xbf\x0e\x0f\x6a\xed\x7a\xa0\xcc\x17\x1b\x56\x7c\x35\x5d\x4f\xd2\xbc\xa0\x8d\x7d\x8b\xa5\x2b\xbd\xf1\x57\xa5\xdf\x66\x55\x8a\x42\xbd\xea\xbe\x69\x8f\x6c\x68\xcb\x3c\xa3\x6d\x8f\xb4\x71\xcc\xcb\xb0\xb6\x37\x89\x69\x3e\x57\x8f\xf7\xa6\x02\xf6\x16\xb3\x9c\xa5\x0e\xc1\xf2\xe1\xd0\x0b\xa6\x8d\x00\x9c\x91\x5b\x0a\x50\xaf\xb5\x90\x72\xf0\x97\xd2\x5f\x58\x08\x9d\xa0\xb3\x80\xfc\x96\x35\x64\x14\x2c\x04\xe4\x8c\x12\x41\x32\xcd\x7c\x99\xc0\xb3\x3f\x07\x23\xb2\x88\xc9\x7b\x1c\xbd\xc9\xda\xe0\xd2\xc2\x12\x96\xa5\x5e\x7e\xb9\x4d\xd2\x74\xcf\x2b\xd6\xef\xaa\x8b\xea\x17\x3b\x09\xb9\xbf\xa5\xd6\xc4\x01\xcb\x49\xab\xa3\xd0\xd7\x54\xad\x6c\x2e\xb2\xcf\xc8\xde\x9c\x19\xc2\x4e\x44\x02\xc1\x98\x6f\x4b\x51\x03\xa4\x87\x6d\x44\x3d\x61\xc2\x29\xd2\x86\x2d\x10\xb1\x2f\xdc\x6c\xc1\x59\xc6\x1b\x7d\x24\x8e\x8b\x0f\x97\x16\x10\xcd\x31\xaa\xe2\xa8\xf4\x81\xd5\x4f\x9e\x86\xd4\xe9\x38\xf8\xd2\x9d\x4b\x56\x77\xf7\xc4\xaa\x7a\x2b\x9b\x8c\x23\x3e\xe6\x3d\x04\x07\x0d\xe0\x54\x56\xc9\x45\xed\xa9\xaf\x56\xc3\xd4\xb6\x3d\xae\xf1\x9c\xab\xb4\x54\x95\x64\xbb\x93\xe6\x33\xaa\x1b\xfa\xc7\x18\xd3\xb2\xba\xfb\x56\x5e\x03\x7f\xe3\x96\x32\x48\xe8\x39\xfd\x5c\xa5\x02\x1e\x48\x6a\xef\x79\xd5\xc5\x8e\xf3\xdb\x0b\x96\x75\x9a\xcf\x87\x1c\x2b\x32\x30\x64\xd8\x39\x36\x8e\x05\x0e\x57\x14\x46\xb4\x54\x73\xb6\x36\x58\xde\xf9\x63\x38\x11\x1c\x51\x62\x06\xab\xc3\x63\xe5\xd4\xfa\x97\x47\xf5\x00\x63\x6a\xfa\x7b\xcb\xe2\x2b\x9f\x90\x29\xf9\x1b\xb6\x7a\xcb\xa4\xea\x57\xbc\xcd\xdc\xef\x9b\x63\xef\x5c\xfc\x3d\xa0\x4c\xb4\x0e\x31\xd0\x4d\x30\x90\xbb\x02\x7b\xf9\x1c\x40\xee\x74\x9c\x55\xf8\xf1\xfc\xe8\xb0\x19\x31\xa2\xb4\x0e\x8e\x10\x0a\x4c\xf5\xae\x50\x4a\x46\xdd\xad\xeb\x23\xce\x20\x41\x06\x04\x6b\x94\xb7\x8d\xbf\x65\xd4\xfe\xe7\x41\x4f\xce\x36\xd1\x3d\x2d\xb3\x6a\x5f\x6b\x76\xa1\x10\x2a\xbd\x2e\xab\x8b\xe7\xe1\xc9\x29\x7e\x1c\x88\x7a\x73\xd5\xf4\xa5\x8f\xa6\xdc\x06\xe1\xea\x34\xf4\xcf\x50\x59\x99\x60\x40\xcf\xbd\xc5\x2b\x6b\x10\x52\x5b\x5f\xe1\xb2\xf4\xf7\xc3\xe3\xcf\xb0\x6d\x61\x37\x90\xd3\xcb\x97\x9f\x64\xdb\xf8\xe1\x83\x5c\x50\x6e\x74\xf8\x9e\xa6\x53\x6c\x57\xaf\xb0\xc2\x19\x60\x73\xd9\x15\x94\x3b\x56\x3c\xbc\x46\x8a\x93\x41\x23\x0a\xaa\x5e\x50\xeb\x87\xac\x85\x46\x34\x0a\x1f\x1b\xc2\xc4\x1e\x55\xd0\x72\x6b\xbc\x1f\xeb\x56\x6f\x73\x16\x25\x58\xca\x99\x1a\x31\x39\x68\x79\x00\x7f\xd6\x2a\x13\xe1\xbc\x2c\xeb\xde\x43\x0e\xf1\x2e\x39\x50\xd2\xeb\xdb\xa6\xe8\x82\x8e\xae\x59\xea\x86\x7d\xcf\x4b\xe7\x67\x46\x21\x9c\x33\xe9\x3f\x42\x09\xbb\x5e\x59\xec\x6a\x29\xd7\x29\x8e\x1d\xed\x65\xc8\xc0\xd6\xec\x52\xcd\xcc\x29\x38\x37\x37\x43\x5e\xcb\x2d\xdd\xda\xaa\xde\xaf\xc6\x4c\x5a\xd5\xd1\xa6\xa3\x00\xad\xf6\xba\x51\x48\xa2\xb7\xed\x37\x96\xf9\x97\x98\xa2\xb7\xed\x63\x38\x16\x35\xb7\xfe\x17\xf4\x4d\xdd\x4e\xa9\xb2\xef\x11\x22\x01\x45\x2b\x9d\xe1\xc9\xd4\xee\x76\x69\xaf\x42\xd9\xb5\x56\xe4\x2f\xe3\x8b\x56\x59\x7e\xe9\x85\x46\x11\x3e\x93\xdb\xc9\x3a\x35\x05\x8b\xeb\x8d\x26\xd7\xc2\x51\xb4\x77\xbb\x97\x2a\x2e\xaf\xf4\x59\x0f\x9e\xee\xfe\x52\xbb\xef\xa3\x03\x88\x94\xe3\xd1\xea\x93\x6c\xa8\x02\xae\xa8\x6e\x5a\x95\xbd\xf2\x88\xfd\x88\xa9\x18\xbb\xe6\x91\xf0\xa3\x1a\xfe\xf5\xda\x57\x06\xbd\xfd\x2f\xc5\x62\x09\x19\xd3\x58\x8a\x36\x15\xff\x9d\x03\x60\xba\x19\xf5\xc7\x4d\xe7\xc0\x31\x97\x35\xd5\x8d\x0e\x7a\x44\x8d\x01\xe7\x78\xcd\x01\x09\x37\x7f\x75\xbb\xd7\x6d\x53\x6f\xb3\x49\xe5\xd8\x8f\x64\x25\xa8\x70\x72\x95\x49\x3b\xc8\xe1\x00\x4f\x69\x31\x19\x0e\x30\x4f\x78\x4a\x87\x83\x12\xff\xac\xc3\x0c\x4a\x82\xae\x12\xe5\x4a\xdc\xff\xa7\x96\xf0\x4c\xf3\xc9\xd2\x7d\xe6\x2a\x28\x5f\x2e\x3e\x16\x34\xa5\x45\x61\x79\xcc\xda\xaf\xb2\x83\xa5\xf7\x95\x78\x9d\x06\x32\x68\x67\x9a\xdc\x74\x50\x59\x11\x4c\x15\x6f\x86\x33\xe0\xd4\x76\x22\x46\x3a\xd7\x9c\x2f\x86\xdf\x7e\x7b\x7b\x7b\xdb\xbb\x7d\xda\xcb\xd9\xd5\xb7\x4f\xfa\xfd\xfe\xb7\xc5\xcd\x95\xb4\xc3\x85\x14\xc8\x8b\x78\x42\x3f\x9e\x1e\xdc\xdf\x77\xd4\x77\x8a\x33\xb2\xb1\xf1\xa3\x74\x4a\x3c\x8e\xe7\x74\x8c\x86\xa2\x37\xb7\x78\x80\x30\xeb\x76\x37\x64\xaa\xbd\x9f\x47\x74\x5c\xcd\xa8\xab\x0c\x80\x24\x9c\xed\xb8\xfd\xcd\x8a\x96\xed\x24\x2b\x92\x29\x6d\xc7\x59\xfb\xec\xe7\x77\xed\x89\x0c\x72\xfd\x47\xc8\x2e\xd6\xcd\xfb\xf8\x2c\x5a\x37\x1f\x6c\x7d\xb7\xd6\x21\x8f\xa2\xb2\x22\xd4\x32\xb4\xa2\x01\x7f\x2a\x6e\xbe\x0a\xb7\x68\x45\xc8\x4e\xa7\x12\xba\xce\xbf\xfb\x3b\x1d\xe7\x91\xc5\xeb\x5a\xbe\x45\x00\xfb\x4c\x71\x86\x33\x99\x42\x30\x11\x57\xe6\x0e\xef\x2d\x18\xbd\x49\xf2\x65\xa1\xb9\x0b\x87\xa5\xf6\x12\xe2\xe9\x4e\x77\xa7\x7f\xc6\x13\x9a\x01\x94\x51\xe7\x12\x86\xa0\xd9\x14\x32\xa7\xe8\xd7\x3b\xd9\x5a\x87\x03\xe2\x62\x09\x20\x81\x4c\x3e\x6b\x8b\x66\x0a\x33\x88\xaf\xe9\x12\x4c\x34\x55\xa7\x15\x20\x8d\x2b\xec\xca\xdf\xc4\xc6\x1f\x37\xc0\x40\x2c\x30\x10\x3f\x72\xb4\x38\x1c\x0d\xfb\xb2\x78\x2c\xf1\x57\x90\x7c\xc7\x7b\x91\x1c\x7a\xa2\x8b\x23\x4c\x08\xb4\x17\x38\xd1\xe7\xc7\x11\xbb\x56\x6b\xb6\x8f\x53\xad\x0c\xb9\xbc\x75\xed\x6c\x2d\xe7\x51\xe3\x17\xad\x6d\x77\x93\xcd\xb5\x21\x8d\xd7\x46\xdd\x83\x0a\xad\x1c\x04\x8e\xe1\x30\x4a\x9b\x59\xf6\xd0\x5e\xe8\xbc\x9c\x24\x6c\x92\xd2\x57\x2f\xbf\x55\x7f\x08\xf2\x01\xc9\xf0\x32\x4d\x22\xd3\x3b\x13\x5c\x70\x83\x10\xf5\x44\x23\x66\xac\x13\xc3\xdd\xdf\xaf\x3b\x7d\xd0\xc6\x22\xdc\x23\x2c\x90\x39\x30\x43\x76\x9e\xca\xfb\xa8\x96\xac\xe9\xa5\xf2\x5d\xcf\xd9\xaa\xe6\x30\x32\x9c\x1b\xb7\x04\x71\x1e\xf3\xfb\x7b\xea\x0d\x0c\xf9\x91\x81\x31\xa8\x4a\x7e\xb2\xf9\x30\xb4\xb4\x54\xcf\xc9\xe0\xaf\xf0\xf6\xe4\x74\xff\xe0\xdd\xf1\xc9\xeb\xf7\xfb\x7b\xe7\x40\xf8\x34\x3d\xec\xf1\xfc\xe3\x62\x41\xd9\x5e\x5c\xd0\x08\xe9\x17\xf1\xce\xcb\xe2\xe6\xea\xd5\x4b\xef\x72\x79\xd5\xd9\xcc\x36\x3b\x2f\xbf\xf5\x3f\xbe\x14\x38\x7b\xd5\x91\xc6\x14\x60\x5a\xaf\x0f\x61\xc4\x10\xae\x5f\xcf\x78\xc6\x29\x53\x27\x23\x46\x38\xf7\xf1\x6d\xff\x2c\x1d\xc7\x74\x09\x91\x02\xe1\xef\x0d\x59\x84\x43\x96\x35\x2e\x83\x61\x12\x5a\x5b\x1b\x27\x24\x03\xfb\x81\xbc\xc1\x80\x80\x87\xd6\x03\x70\xfa\x73\x9c\x93\xb8\xf4\x4e\xaf\x8c\x3a\x50\x46\x39\xa6\xf0\x7f\x0a\xe6\xb1\xcc\xcb\xc3\xfd\x8d\x1f\xd7\xa8\xdb\xad\xda\xc4\x35\xec\x3e\x30\x1c\x50\xfc\xa7\xd2\xf5\x05\x04\x40\xb9\xb1\xc0\x8b\xe5\x43\xe7\xae\xa0\x93\x3c\x9b\x76\x10\x7e\x02\xb7\x6d\xe5\x4c\xe9\xe4\xa8\x03\xb5\xeb\x37\xfa\x90\xb1\xdd\xdf\xfb\xbc\x91\xd5\x75\x19\x07\x45\x68\xcc\xbc\x5c\xee\xf9\xe1\x8b\x4c\x61\xaa\xf1\xac\x40\x0c\x2a\xb9\xaa\x1b\x03\x71\x07\x3c\x74\x55\x75\xbb\x89\x7b\xcf\x08\xec\x81\x97\xdf\x46\x1f\x87\x57\x6d\x75\x12\x98\x2b\x87\xc1\x9c\xac\x87\x48\x6f\x0c\x21\x34\xb8\x97\x42\x4d\x9f\x20\x54\x0e\x79\x39\xea\x5c\x76\x70\xe7\x32\xb9\x12\xff\x0a\xc6\xfa\x3f\xcb\x9c\x53\xf1\x23\x9f\xde\x89\xff\xb1\x0e\xee\x88\xd5\xa4\xf0\x47\x3e\x15\x65\x53\xb1\x98\x62\x83\xe0\xce\x34\x15\xff\xf0\x0e\xee\xd0\x39\xfc\x73\x49\x45\xe1\xf5\x40\xfc\xf3\x44\xfc\xf3\x54\xfc\xf3\x4c\xfc\xf3\x9d\xf8\xe7\xb9\xf8\x87\xc6\x50\x49\x74\x99\x88\xff\xe6\x62\xf8\x34\x81\x7f\x80\xe9\xef\xe0\xce\x3c\x16\xe7\xac\x03\xc9\x60\x71\x27\xcb\x01\x92\x5c\x0c\xb7\x10\xff\x31\x01\x08\x5b\x5e\x0a\x20\x0b\xf1\xdf\x3c\x4e\x45\x61\xb1\x88\x45\xb3\x82\xb3\x1c\xba\x29\x38\x4b\x3e\x89\xba\xc5\xf2\x12\xfe\x15\xad\xb9\x4c\xa2\xd5\xe1\x02\xf0\xa5\xf8\x4f\x34\xbd\x89\x59\x67\xdc\x9b\xe5\x6c\x3f\x9e\x5c\x47\x94\xbc\x12\x7c\x1c\x19\x48\xdc\xbf\xc3\xbf\x92\x6f\x47\xbf\xf3\xad\xdf\x59\xfb\xf7\xcf\xbb\xfd\xdf\x97\x83\xe7\x2f\xc4\xbf\x2f\xfa\xfb\xbf\x2f\x05\xe1\xdf\x82\xff\xed\x8a\x7f\x9f\xbc\x80\x7f\x7f\x80\x7f\xdf\x8a\x7f\xbf\x7b\xfb\xfb\xf2\x69\xbf\xdf\xff\x7d\xf9\x76\xff\xed\xdb\xf1\xb7\xf8\x5f\xa4\xb3\xcc\xa4\xcb\xd1\xd4\x3a\xbb\xea\xeb\x72\x47\x70\x36\x43\xfd\x6b\xdb\xcb\x7b\x2e\x8f\x03\x37\x07\xe2\x3f\xab\xf0\x3a\xf4\xc2\xc0\xae\xe5\x20\xc1\xec\xb7\xaa\xe6\xc0\x99\xd2\xa9\x67\x3b\xd4\x53\xbb\x1c\x9f\x09\x86\x0d\x33\x34\xa4\x81\x3a\x06\x48\x0e\xed\x55\xac\x0d\xb9\x0a\x88\xc7\x5b\x8c\x7c\x13\xfd\x4b\xd0\x31\x46\x7e\x11\x7f\xe0\x75\x17\x28\xc2\xf5\xc6\x8b\xac\x44\xd1\xbb\xfb\xfb\xe8\x1d\x59\x95\x48\xcb\x20\x3f\xb9\xb8\x58\x47\x1c\x42\xb1\xc4\xdc\x8e\x32\x96\x55\x9d\xf6\xa9\x6e\x9e\xf2\x6c\x79\x55\x45\xc5\xf0\x33\xd7\xa4\x66\x57\x5c\x1c\x9e\x6e\xa9\xca\x73\xfb\xaf\x48\xa5\x6f\xa4\xf9\x13\x20\xf1\x3d\xf9\xa9\xf5\x1e\x90\xf8\x5e\xee\xc9\x7f\x93\xf7\x80\xca\xf7\xeb\x51\xd9\xf2\x6c\x3c\xff\x0d\x4d\x7f\x23\xef\xea\xf0\xdb\xaa\xc7\xfa\x6f\x0a\xd1\x94\x5a\x16\x24\x88\x8a\xb4\x52\xef\xfe\x4a\x44\xa4\x55\x0f\x75\xba\x93\xd1\xa1\x31\x1c\x4b\xe8\x50\x26\xf3\xdb\xc9\xe9\x70\x63\x00\x7f\xc5\x74\x58\xc9\xb3\x4d\xc1\x59\x56\x60\x49\x3a\xc6\x72\xc9\x73\xd6\xaf\x72\x10\x46\x29\xa3\x32\x02\x44\xd5\xe8\x56\xe7\x3d\xe2\x76\x42\x34\xcc\x86\xdf\x18\x34\x5c\x5e\x56\xb6\x37\xd8\x3b\x6a\x64\x71\x87\xc8\x72\xe0\x90\xa4\xbe\x34\x68\x50\x17\x10\xc6\x8f\xb3\x50\x19\x41\xa2\x40\x6d\x9d\x8c\x6a\x1f\x4f\x30\x06\xf3\x2e\x2b\xed\x05\x2f\xa7\xc7\x1a\xa7\xe7\x22\x0d\x24\x86\xcc\x8c\x62\xe3\x5e\xd5\x19\x31\x67\x32\x27\x4b\x62\xaa\x4b\x65\x40\xc5\x8c\x39\x91\xf5\x72\x53\x6f\xa3\x8f\x70\x6c\x7f\x0d\xf4\xe1\x2d\x2a\xe9\xb2\x48\x5a\x1f\x4f\x2b\x7f\x9d\xe7\xa9\x09\x6b\xa9\xe2\x6d\x64\xeb\xe2\x6d\xd8\x3a\x26\x18\x8c\x13\x3f\x4e\x74\xe1\x07\x86\x69\x53\xbc\x92\xc3\x0c\x39\x86\xc1\x4d\xb8\x91\x44\x76\xe4\x84\x64\xa1\x84\x47\x4c\xfb\x8b\x9b\x64\x69\x50\x2b\x8c\xd5\x23\x46\xc2\x09\xb8\x36\xdb\x68\xdd\xce\x21\xd9\xd8\xa0\x61\xe2\x6d\xcd\xf7\x8b\x1f\x3b\x9d\xce\x50\xc5\xc6\x70\x0d\x1e\xdd\xcc\xd8\x6a\x13\x51\x37\x84\x82\xc9\xca\x23\x18\x74\xd9\x3e\xcc\x66\xad\xc4\x85\x30\x9d\x3e\xed\x76\xad\x95\x65\x5d\x4c\x86\x1e\xcf\x05\xfb\xe1\xa7\xb7\x7e\x64\x77\x95\x13\x0e\x96\x5a\xe7\x77\x0b\xea\x65\x85\xb6\xdd\x85\xd9\xf1\x69\x90\x80\xd5\x6a\x7a\xa4\x6b\x58\x4b\x89\xf5\x6d\x8a\x32\xc2\x31\x23\x9d\x05\xcb\x17\x1d\x2f\x44\x55\x8f\xe7\x87\xf9\xad\x16\x59\x5a\x05\x54\x07\x1d\x11\xd4\xc5\x19\x29\xa4\x92\x27\xe6\x9c\x89\x9f\x5c\xab\x53\x64\x05\x15\xd7\xa1\x53\xf0\xbb\x94\x8a\x5f\x99\xdf\x23\x24\x0b\x32\x02\x92\x60\xf5\x71\x14\x93\x39\x1d\x25\xbe\xb0\x34\x46\xdd\x6e\x3c\xca\xfd\xc6\x63\x84\x20\x66\x84\x1c\x1c\xe1\x95\x71\xb4\x9d\x0e\x33\x2c\xb0\x30\x64\xca\xe8\xba\xea\x28\x50\xc8\x83\x37\xa7\x64\x75\x70\xfc\xe1\xe3\xf9\x50\x88\x20\x73\xc8\xee\xba\xe4\xf9\x24\x67\x8c\x4e\xb8\xf8\x29\x58\xad\xe1\x46\xbf\xc4\x67\xfb\x87\xfb\x7b\xb6\x5e\x89\x4f\x3e\x9c\x1f\x9c\x1c\x3b\x1f\xce\xf7\xff\x7d\xbe\x7b\xba\xbf\xeb\x7c\x3a\xdc\x7d\xbd\x7f\xe8\xfc\x7e\x7b\xb0\x7f\xf8\xe6\x6c\xdf\xed\xe6\x70\xff\xdd\xfe\xf1\x1b\xb7\x5f\x10\x1d\x9d\x0f\xaf\x3f\x9e\x9f\xbb\x03\xc9\xa8\x77\x37\x14\x5f\x51\x32\xea\xfc\x19\xdf\xc4\xc5\x84\x25\x0b\x3e\x14\xdc\xd9\xa5\xfe\x7b\x8c\x2f\x45\xf1\xae\x4e\x91\x85\x3b\x87\x07\xc7\xff\xea\xe0\xce\xc1\xd1\x3b\xf1\xef\xdb\xd3\xdd\xa3\x7d\x51\xb8\x7b\x26\xfe\xf7\xf6\xe4\xf4\xa8\x33\xc6\x77\xa2\xcd\xfe\xd1\xeb\xfd\x37\x9d\x31\xbe\x10\x3f\xae\x19\x9d\x09\x96\x90\x4d\x04\xa3\x1b\x4f\x3e\x5d\xb1\x7c\x09\x82\x8a\xf4\xd5\xed\x8c\xf1\xad\xa8\x27\x2a\x8c\xad\xf5\xe9\x3e\x75\x19\x2c\xc8\xc5\xec\x1a\x13\x97\x95\x6c\x86\x8a\x30\xe8\xab\xef\xfe\x7e\x9f\x46\x97\x14\x53\xb1\xca\xfb\x34\xba\x00\x26\xcc\x9a\xf4\xd2\x8a\xa5\xb5\x8a\x9d\xb0\x4f\xa3\x3b\xd1\x0c\x5a\xdd\x4a\xdb\x06\x6b\xaa\xeb\x37\x53\x63\xdf\xdf\xab\xee\x6c\xc5\xf3\xca\x7b\x15\xc4\x07\x30\xda\xb4\xcc\x46\xa2\x4c\x66\xd1\x14\x7c\x04\xf5\x17\x75\xec\x23\xd4\x92\x32\x4f\xad\xfc\x3f\x74\x62\x78\x2d\x45\x73\xd1\xcf\x67\x1a\x25\x98\x19\xdd\x00\x24\xd3\x11\xbb\x31\x7d\x9b\xb3\x8f\xa7\x87\x51\x0e\xb5\xf6\x69\x74\x45\x71\xac\x07\xec\x2c\xb3\x22\x9e\xd1\x61\x67\x33\xd7\xb7\xdc\x89\xec\x67\xc7\x29\x1a\x3a\xb9\x5a\x8f\x0c\xdf\xa6\xc2\x7c\x09\xf0\x86\x19\x76\xd5\x20\xc3\xa4\x24\xe2\x44\xae\xf4\x03\x26\x85\xe2\x21\xb7\xb5\x86\xac\x04\x95\xc7\x7a\x7d\xb1\xb1\xe4\xff\x00\x6a\x4c\x15\xfe\x63\x05\xe7\x33\xc6\xce\x99\x2d\x4a\xa2\x08\x95\xce\x9b\x06\x07\x1b\x42\x81\x40\xdb\x22\xd0\xbd\x68\x71\x54\x2d\xaa\x1b\x67\xe4\x54\x45\x40\x4e\x66\x51\x9d\x73\x5f\xd4\x81\x43\xdf\x91\x1b\xad\xa3\x0f\xae\x64\x46\xba\xdd\x0e\x5c\x57\xa0\xec\x2e\x2b\x5d\xbf\x59\xdf\x75\x47\x92\x85\x8e\x8c\xba\xd2\x11\xe2\xe4\x84\x83\xf0\x52\xd7\xd9\xb1\xea\xcc\xf9\xf4\x49\xb1\xcf\x6a\xc2\xa5\x9b\xd2\xcd\x37\x68\x52\xf3\x06\xd6\xef\x4f\x1a\x31\xc9\xfa\xed\x89\xbf\xd6\xa7\x53\x8b\xad\x03\x98\x20\x90\x15\xb7\xb0\x5d\xcd\xf8\xed\x59\xce\x68\x97\xae\x94\x6d\x3d\x36\x2a\xec\x03\xc1\xbd\x3b\x81\x13\xe5\x59\x59\xc1\x3e\x49\x9c\x7d\xa2\xa2\xb3\xda\x71\x5b\x34\x7c\x37\x4e\x70\x06\xd1\x7a\x74\x1c\x2f\xab\xc7\x3c\x80\x37\x4d\xb3\x0d\xe5\x2e\x15\xbb\x33\xe8\x52\x11\x0e\xb6\x93\x55\x44\x8c\x04\x0d\xb3\x5e\x30\x9c\x14\xc4\x1a\x5c\xe5\xf6\x34\x02\x3e\x79\x08\x78\x20\x64\xa6\xdd\xcb\xc7\x90\x47\xb3\x74\x10\x26\x31\xc4\xf5\x83\xe7\x8d\x0c\x96\x88\x15\x1e\xcc\x43\x7c\x4d\x3f\x40\xc0\x02\xb4\x18\x6c\xb0\x0a\x1a\x6c\xf7\x8a\x1e\xb2\x51\x4d\xa7\x6e\x06\x27\x42\xb1\x62\x8b\x54\xc0\xcc\x10\x7d\xa8\x2a\xcb\xf9\x50\x50\x67\xad\x79\x15\xa2\x9d\x8a\xd0\x07\xca\xe8\x1a\xb0\x84\xc0\x5c\x91\x0f\x6b\xaa\x69\xce\xfd\xd4\x2e\xcf\xa7\x70\x7f\x3e\xb8\x63\x70\x4e\xce\x21\x98\x15\x4e\x04\xcd\x91\x92\x81\xec\x03\x54\x83\x8d\x38\x97\xfd\x65\x95\xfe\x12\xd1\x9f\xf4\xa5\xa6\xba\x3f\xd5\x49\xe2\xc4\x3f\xfb\xd3\x02\xbd\xf7\xff\x0c\xd0\x6f\xea\x30\x0d\x0e\xba\xde\xfe\x55\x94\x13\x43\x0a\x2f\xe4\x47\xe5\xd3\x06\x41\x66\x6c\xd7\xd8\x55\x85\x37\xca\x88\x4a\xe3\xb4\x21\x23\x7c\xa9\xef\x24\x33\x80\x1c\xd7\x03\x62\xce\xd7\xc6\x40\xba\x6c\x54\x20\x33\x94\x18\x2c\x2a\x1f\x07\x59\x8b\xf7\x74\x33\x22\xa4\x0f\x4b\x8c\x0f\x5c\xb9\x64\x20\xef\x11\x23\x5c\x58\x61\xde\x88\x14\x52\x55\xa5\x64\xf9\x4e\x67\x58\x1b\xc2\x0d\xea\x58\x11\x46\x79\x5c\xd4\x64\x4a\x37\x4e\x17\x45\x9a\xdb\x7c\x06\x93\x38\x4d\x29\x93\x4e\xad\xda\x30\xe6\x26\x4e\xe5\x07\x66\x5e\xf3\x79\x12\xa7\x10\xe3\xce\x38\x21\xe4\xb9\xb4\x10\xed\xbb\x8e\x7e\x4e\x6e\xb3\xcd\x81\x4e\x6b\x46\x38\x24\x34\x83\x24\x66\x19\x75\xaf\xad\x43\xaa\x6c\x86\xed\x3f\xd2\x47\x21\x92\x61\x03\x68\x69\x9c\x1e\x0a\x71\x8e\x23\xea\x0e\xe7\x65\x9f\x13\xc3\x49\xf7\x36\x42\x6d\xca\xb9\xca\x70\x3c\x1c\xae\xf4\x87\xf3\x74\x7b\x80\xa8\x51\x7f\xac\x70\x25\xb3\x79\xa5\xb3\xc0\x2c\xe1\x8a\xf2\xa8\x0f\xfa\x11\x99\x99\x3b\x7c\xa7\x53\x7a\x83\x2b\xca\x95\x11\xbd\xb7\x7d\x7c\xff\x21\x2e\xc4\x1d\xb5\xa6\xe0\xf8\xb0\xaf\xd7\x22\x18\xd4\xac\x91\x93\x67\xd9\x8b\x5e\x18\x2c\x5c\x79\x99\x64\x53\xc7\x7e\x43\x9f\x01\xf8\x0e\x93\xa2\x4e\x49\x1f\x53\x55\xa2\x66\x54\xdf\xce\x38\x05\xd4\x15\x5a\xc8\x4d\x40\x6c\xb3\xaf\x28\xd4\x70\xc0\x76\xac\xaa\xf4\x4e\x93\x75\xf6\xec\xf6\xb4\xa9\xb3\x9d\x2d\x0b\xf3\x77\x2b\x85\x99\xf7\x4d\x89\x0c\xf8\x16\x79\xde\x37\x87\xea\xa6\x80\x85\xf6\xd3\x32\x3a\x2d\x83\x53\x11\x9e\x09\xe4\x28\xa8\xa8\x0a\x18\x26\x3b\x54\x9a\x24\x6b\xae\x70\x1a\x67\x57\x54\xd9\x2c\xbc\xfe\xf8\x6e\xd8\x9e\x48\xc3\x85\x2b\xca\xdb\xdf\x80\xd1\xc2\x8c\xe5\xf3\x36\xe4\x11\xda\x6e\xcb\xe6\xe4\x9b\x55\xa5\xcb\x32\x30\x63\x90\x1b\x55\xa6\x72\xb2\xd1\x8f\xfe\xef\xc1\xe2\x01\x21\x9d\xad\xad\x4b\xfd\xa1\x94\x9a\xdf\xd2\xc0\x55\xec\xfc\x74\xf7\xf8\x6c\x77\x0f\x18\x5f\xad\xb1\xfa\x2b\xd4\x14\xca\x9e\x95\xef\xdc\xf4\x20\x2b\x78\x9c\xa6\x2a\x0e\x83\x93\x2a\x2c\xac\xa0\xed\xcc\xab\x35\x40\x99\x45\x75\x85\xe6\x9e\xfc\x7a\xb6\x82\x54\x89\x59\xbf\xfc\x4a\x49\xa5\x4b\x79\x6b\xd4\xb5\x50\x25\x4e\x8b\x72\x9a\x4c\xf7\x94\x9a\xd7\x9a\x57\x86\x43\x1a\x9f\x98\xba\x71\xb5\x87\xb0\xe8\xea\xa3\x73\xb1\xd7\xc3\xe2\x77\x15\x00\x64\xba\xd2\x58\x09\xd0\xeb\x1e\xfd\xa6\x15\xf0\x07\x68\x5a\xc9\xca\x48\x3e\xfa\xeb\x06\x0a\x16\xa8\x61\x9c\xfa\xe5\x36\xc3\xe9\xb0\x5f\x26\x15\x52\x05\xd7\x43\x8a\x03\x04\x07\x69\x92\x68\x98\x26\xa9\x9d\x11\x0a\xb9\x91\x46\x6c\xdc\xb3\xeb\x99\xa1\x52\x0f\x52\x59\x85\x61\x82\x03\xd4\x3b\xc9\x29\xfa\xdb\xf1\xcb\x44\x0f\x12\xeb\x41\x0a\x92\x8c\xe2\x71\x2b\x1f\xc5\x30\x88\x5a\xe9\xc2\x0e\xd2\x84\xea\x61\x8a\x1b\x17\x6b\xb8\x54\xa3\x4e\x48\x7f\x7b\xf2\x32\xd5\xa3\x4e\xf4\xa8\x53\xb2\x1c\x4d\xc6\xad\x74\x34\x19\xf7\x12\xd9\x38\x9a\xd6\x8c\x59\x8f\xf6\xe1\x35\x6e\x5a\xbe\xe1\x4c\x8d\xbc\x20\xfd\xed\xc5\xcb\x6b\x3d\xf2\x42\x8f\x3c\x27\xb3\xd1\x62\xdc\xba\x1e\x2d\xc6\x9a\xd5\x9c\x7b\x2f\xf1\x1f\x3d\x01\xd0\xa6\x3a\xda\xa1\x36\xd1\x38\x53\xec\xd1\xeb\x1a\xb1\x4c\xbe\x62\xd1\x94\x5e\xc5\x5c\xb3\x42\xa3\x1b\x3a\x76\xcc\x26\xe9\x67\xce\x62\xe2\x55\x94\xdf\x54\x6c\xd7\xe2\x20\xe3\x94\xc5\x13\x9e\xdc\x50\xd2\xb9\xcc\xf3\x94\xc6\x8e\xae\xd8\x6f\xe8\xd5\xbe\xbf\x5f\x53\x68\x82\xc0\x3b\x5a\x1d\xf2\x51\x5d\x5d\xa6\x89\x5f\x8e\x7f\xd4\x47\xc1\xb5\x8a\xae\xb6\x72\x4b\xf1\xcf\xba\xcd\x95\xe4\x81\xab\xd5\x55\x01\xfe\x8f\x5b\x33\xe6\xd7\xf5\x35\x63\x7e\x6d\x6b\x16\x4d\x35\x55\x01\xfe\x45\xd7\x54\xaf\x11\x95\x8a\xf2\x3b\xfe\xc6\xd6\xd3\x81\x60\xeb\xea\xea\x32\xfc\x8e\x22\xac\x2d\x7d\xad\xb3\xee\x8e\xca\x36\x10\x7c\x26\xd5\x9a\x8d\xce\xbe\xe1\x27\x21\x88\xea\x67\x50\x2d\xb3\x57\xfa\x17\x57\xef\x6f\x91\xad\xd8\xe4\x4b\x2c\xea\xfd\xe4\xd6\x03\x36\xe3\x5c\x25\xd0\x15\x08\x83\x28\x96\x7b\xd2\xac\xb1\xf2\x28\xb8\x41\x48\x65\x3d\x9a\x1a\xef\x3c\xba\x66\x44\xd1\xb0\xd3\x11\x5c\x46\x73\x0d\x25\x96\xd6\x43\xb1\xa6\xa5\xd2\x23\x3c\xa6\xaa\x76\x18\xe0\x79\x9d\x9a\x3e\xc8\x95\x5e\x50\xed\x4a\x19\x6c\x24\x40\x68\xd5\xb7\xdb\xe3\x1f\xc3\xe5\x2b\xb5\x83\xb7\x57\x2b\x5c\xbc\x52\xc5\x99\x6c\xc2\x42\xee\x86\xad\x7c\x2d\xea\x86\x93\xaf\xd6\xd0\x2e\xc6\x6f\x55\x7c\xf8\xbf\xa8\xcc\xb8\x6b\xab\x05\x7e\xd1\x6f\x69\x3d\x37\xe1\xb4\xe8\xf9\xe5\xb5\x1c\x43\x50\xdd\x29\x7f\x04\x57\xe0\x91\x31\x35\x47\xb7\xc3\x75\x3d\x3c\xcc\x0a\x3c\xb6\xf7\x9a\x0e\xec\xc5\xef\x18\x8c\x3b\x6d\x5b\x16\xd7\x10\x52\xc4\xc4\x07\xc5\x8f\x59\xd2\x3d\xa8\xbc\x76\x4d\xf7\x4c\xbc\x51\x73\x81\xfd\xb8\xee\x9d\xef\xe3\xe9\xe1\xfd\x7d\x9d\x59\xcb\xc7\xd3\xc3\x1d\xd7\x84\x25\x99\x45\x75\xd5\x6e\x93\x6c\x9a\xdf\x6a\xc9\xf3\xdb\xff\x13\x8d\xe2\xad\xbf\xc6\xe2\x9f\xfe\xd6\x0f\xbd\xcd\xad\xf1\x3f\x86\x68\x27\xfa\xfd\xdb\xdf\xbf\x45\x3b\xd1\xe8\xf7\xb3\xdf\x8b\xf1\x3f\xd0\xb7\x49\x8f\x7e\xa6\x13\x57\x3e\xed\x76\xf9\x68\x30\xde\x11\xff\xf8\x0f\x6b\x82\x2e\xc8\xab\x57\x0e\xd5\x68\x52\x1e\x77\x9c\xc8\x03\xd7\x0c\x02\xa6\x33\x73\x7b\x95\x40\x62\xec\x04\x36\xaa\xe6\x3b\xf4\x56\x4c\x3a\xa2\xd8\x8c\x70\x19\x17\xf4\xe3\xe9\x01\x32\xbd\x0c\x6d\x25\x78\x68\x28\xd4\x4b\x03\xfd\x1c\xcf\x17\x29\xac\x66\xc7\xd6\xb6\x4b\xf0\xb3\xf3\x80\xa3\x60\x54\xcf\x1e\x99\xa3\x53\xff\x8f\xff\x1e\x44\x47\x6e\x14\x9e\x5f\x42\x85\xbb\x28\x26\xcc\xb1\x18\x74\x09\xd4\x6b\xc9\x23\x78\x6f\xcf\xef\xdc\x0a\xb4\xdb\xa5\x23\x29\x85\x9b\x00\xd3\xe3\x9d\xea\x27\xf5\x36\x54\x56\xe3\x97\xbd\xa6\xf8\x86\x92\xb7\x5a\x39\xfd\x6b\xbd\x76\x5f\x67\x6e\x4a\xf3\xfc\xd3\x72\x61\x38\x53\x23\x4c\xba\xf6\x11\x7e\x15\x2f\x1a\x40\x6d\x0d\xf9\x3c\xe3\xa7\x62\xaf\x98\xf0\x7f\xcc\xe8\xe7\x05\x28\xcd\x6c\x58\x4e\x69\xc7\x1f\x81\x1c\xfa\xcd\x8a\x97\xa8\x1d\x05\x5d\xb7\x25\x9a\xe8\xb4\x6d\xb6\x0c\xb2\xb2\x31\x2b\x2b\xa1\x42\xc3\xf6\x10\x37\x54\xec\x09\x81\x2f\x3a\x6d\xe7\x59\x5b\x85\x28\x3e\x55\x81\x3e\x7b\x1d\xa4\xb0\xa2\xf4\x15\xcd\x38\x51\x15\x1a\x31\xe2\x76\xf0\x05\xf8\x50\xaa\x86\x46\x6c\xa8\x6e\xbf\x12\x17\xba\xf5\xe3\x30\xa1\xc2\x9f\x2a\x4a\xe3\xcc\x50\x15\x78\xba\x2d\xaf\x44\x45\x13\xb2\x81\x9c\xd6\xce\x59\x46\x04\x55\x53\x56\x3d\xac\x9f\x20\xaf\x4e\x50\xb7\x7b\xdc\xd4\x64\xe0\x56\x9d\xa6\xdf\x9f\x9d\x2d\xab\x99\xa0\xd7\xf0\xe1\x39\x8a\x8a\x6d\x9e\xb7\x55\xa0\xd8\xf6\x37\xf0\xf6\x55\xb6\x23\xdb\xcf\x17\xcf\xd4\x69\xfa\xb8\xc9\x5e\x51\x7e\x90\xdd\xe4\x93\xd8\xb9\x37\x9c\x29\x79\xc5\x35\x53\x0e\x9b\x3f\x7e\xd6\x82\x69\x49\x4c\xd3\xf6\x2c\x67\xed\x6f\x56\xef\xcf\x4e\x8e\x7b\xd2\x16\x25\x99\xdd\x09\x6a\xd8\x8e\xbc\x21\xbe\x18\x21\x7e\xeb\xc7\xe1\x04\xee\xaf\x7f\x51\xfc\x13\x6d\x48\x85\xe8\xe8\x31\x97\xc0\xf0\x41\xf6\x5f\xd0\x6a\xcd\x92\x34\x3d\x5e\xa6\x69\x81\xa2\x41\xff\x7b\xa4\x75\x89\x65\x3c\x9d\xaa\x40\x5f\x9d\xe2\xae\x98\xc4\x69\xda\xa9\xed\x65\x44\xc7\x64\xa5\x6a\x0c\x3b\xf3\x78\x72\x9d\x64\x14\x7c\x1d\xb0\xae\x38\xe4\xa5\x0a\xb3\x63\x6c\x1b\x4d\xd0\xf5\x62\x31\x94\xe8\xc7\x8b\xc9\x90\xf6\x66\x94\x4f\xae\x21\x27\x51\x94\xf7\xbe\x59\x4c\x90\x7c\xc8\xd1\x55\x62\x16\xcf\x0b\xfd\x0b\xde\xd4\x79\x4f\xfc\x0f\x27\xc5\x91\x1c\x79\xc8\x7b\xe6\x6f\x5c\x24\x7f\x89\x0f\xe2\x7f\x2a\x6a\x9a\x6c\xaa\xc0\x31\x26\x98\x68\x55\x6a\x58\xfd\x27\xdf\xba\xf9\xb2\x71\x2b\xeb\xa9\x09\xef\x64\x3d\xb7\x21\x1a\xba\xbf\x47\xc5\x18\x9e\x94\xd4\xfd\xf5\xde\x3e\xe5\xd4\x2d\x90\x4c\x7c\x63\x82\x17\xbd\x5b\x26\x53\xa4\xdc\x2c\xcb\x95\xbd\x63\xff\x4d\xfd\x88\x80\xa3\x71\xa3\x36\x27\x01\x6d\x8e\xcc\x30\xba\x41\x48\xe6\x65\xf1\xeb\x76\xb9\xd4\x25\x25\xda\x86\xc9\xb1\x9b\xdb\x03\xcb\x38\x71\x3d\x4b\x73\x35\xfd\x38\xf3\x9b\x67\xea\xe9\xa7\xbf\xad\xb7\x24\x44\x56\xe7\x5c\xb8\x39\x30\xff\xad\x2c\x36\x75\xee\x3d\x9b\x1b\xde\xbc\x8c\xa8\x6c\xe1\xb6\x7d\x98\x36\x5c\x5f\x54\x50\x38\xe2\x63\x93\xf9\x4b\xbe\x8e\xb1\x6e\x37\x02\x16\x86\xf2\x88\x21\xe3\xf8\x66\xa2\xfe\xf5\x77\x68\xef\xcf\x3c\xc9\xa2\x4e\x47\xb1\x20\x16\xcb\xae\xc5\xe8\x5a\xdb\xb9\x06\x2b\x3c\xee\xca\xb5\x14\x9e\x46\x6c\x21\x73\x0b\xfb\xf7\x91\x09\x0b\x2d\x83\x76\xef\x0c\x86\x7d\xe4\x7c\x3d\x8f\xaf\x76\x9e\xa8\x4f\x0b\x46\x17\x31\xa3\xbb\xec\xaa\xd8\x79\xa6\xbe\xc9\x25\x83\x4f\x2f\xd4\x27\xa3\x1b\xf9\x31\xcf\x3f\xed\x0c\x9e\xab\xcf\xea\x99\x0f\x3e\x3e\x7d\xe2\x8f\x02\x5a\xef\x9d\xe7\x7e\xa7\xf2\x79\x62\x67\xf0\x44\x77\x2c\xe5\x45\xe8\xe0\xc9\x77\xcf\xbd\xba\x07\xca\x93\x61\xe7\xbb\x81\xee\xfa\x96\x09\x29\x74\xba\x33\xe8\x3f\xd1\xfd\xde\x26\x69\xaa\x42\xc1\xed\x3c\xe9\x3f\x13\xfd\x5a\xc4\x84\x31\x6c\x36\x36\x22\xde\x65\x4e\x85\x84\xbb\xb4\x63\x63\x23\xa2\x5d\x8e\xca\x9f\x68\x4f\x10\xab\xc1\x73\x1c\x51\xbc\xca\x17\x83\x21\x2f\x75\x02\x27\x46\x68\xaf\x80\xd0\x69\x19\xa1\x95\x50\xe8\xe6\x86\xe7\x28\x62\xbd\x45\xbe\x78\x5f\x44\x08\x53\xd4\xa2\xbd\x34\x8f\xa7\x86\x0e\xdd\xf4\x05\x1b\x8d\xb0\x1a\xe9\xc9\x93\x86\x91\x4c\xc6\x92\xb7\x39\x53\x0f\x50\x5c\x74\x56\x98\x70\x32\xef\x21\xc8\x83\xe9\x69\xf0\xc3\x3a\x98\x65\x3c\x19\xd1\x5e\x3e\x10\xf5\x9c\x87\x2d\x50\x23\x58\x88\x06\x0f\xf5\x03\x33\xcb\x2a\x5f\x92\xca\x97\x9c\x24\x3b\x23\x78\x71\x1f\x4b\xa3\x2d\x7f\x78\x15\x69\x0d\xe7\xa8\xc4\x9d\x3f\x13\xde\xb1\x30\xf4\x1f\x82\xe1\x6c\x1e\xa7\xe9\x81\x89\xa2\xfa\xdf\x83\xc4\xe2\xb3\xff\x5d\x3d\x10\xa3\xeb\xb1\xb8\xfa\xe5\x8a\x72\x35\xbe\xea\x2c\x78\x87\x14\x04\x3e\xc8\xbb\x05\xaa\x25\xf9\x80\x0a\xcf\x9e\x0c\x21\x1c\xac\xaa\xbb\x3f\x9e\x7e\x1f\x00\x21\x83\x9f\x9e\xe6\x39\x97\x4f\x7d\xdc\x5d\xba\xa7\x5f\x00\xb1\x8b\x9f\x70\x5f\x65\x1a\x34\xa7\xef\x67\xd5\xbe\x57\xd0\x68\xc8\x4a\xf0\x51\xf6\xb0\xa0\xa3\xe8\x69\xe3\xa2\x6c\x47\x46\xd8\x13\xec\x41\x84\x86\xac\x6e\xae\x4f\xbe\xc3\xd4\xeb\x98\x8b\x8e\x19\xe1\x06\xcc\x64\x16\xb1\x6e\x77\x83\x03\x6c\xa2\xe2\x08\x4c\x72\xc7\x84\xb5\xb8\xee\x31\x47\xd8\xfc\x9d\x20\x5c\x31\x07\xce\x76\x64\xb1\xd9\x41\x19\x1a\x72\x07\x1c\x70\xdc\xe5\x0e\xb0\xb8\xf1\x87\x03\xfa\xf3\x35\xa0\x47\xa8\x65\xa0\xde\xb1\x70\x52\x67\xdc\x98\xba\x9d\x7d\x0f\x9d\x79\x27\x17\x87\x2b\xa6\xdd\xea\xfc\x7d\xce\x64\xcc\x4d\x60\x6e\x28\xa7\x4c\x5f\x74\x15\xc2\xb1\x93\xd3\xa1\x3f\xe8\x8b\x60\x7d\x6b\xed\x19\xc4\xde\xe1\xdb\xd9\xab\xfe\x76\xb6\xb5\x85\x56\x6c\x94\x6d\x0d\xc6\x3e\x8d\x29\xc3\xbd\x44\x6f\xdb\xbf\x51\xb9\x99\xa4\xd5\x26\xaf\x86\xcb\x3c\x3d\xd8\x7f\xd3\x36\x41\xe7\xdb\xe0\x16\x70\xa0\x1e\x45\x0d\xc9\x8e\x9d\xcb\x6e\x23\xda\xa0\xf7\xf7\x1b\x74\x94\xf3\xb1\x66\x29\x0a\xfe\x98\x0c\x64\x4e\x9e\xe4\xd1\xbf\xe8\x98\x6c\xf4\x4b\x99\xbd\x42\x74\x2e\xe8\x6e\x9c\xa6\xf9\x44\xca\x01\xf9\x6c\x56\x50\x8e\x5a\x96\x47\x12\x9f\x55\x14\xe4\x95\xe8\x69\xc8\x94\x1d\x7f\x56\x12\xae\xf6\x67\xe4\x25\xc1\x11\xf7\x2c\xcd\xa6\x70\x29\xe8\x8f\x62\x39\x05\x33\x3a\xed\xcd\x29\xbb\xa2\x11\x93\xbf\x10\xc2\x1b\x31\x77\x0d\x62\x5b\x9c\x64\x25\xe8\x38\x25\x28\xca\x7c\x4c\x0e\x49\x31\x40\x60\x5f\xe2\xc0\x4d\xd0\x8e\x2c\x97\x7e\x68\x72\x0c\x02\xfe\x76\xd8\x26\x55\xf3\x1a\x32\xd7\x5d\x20\x0c\xfa\x46\x2b\x1a\x0c\xb8\x27\xd6\x06\x65\x2f\x38\xfe\x17\x25\x39\x57\x6c\xea\xb2\xe2\x4b\x09\x58\x4d\x93\x82\x57\x18\x38\xec\x14\x19\x97\x09\xcb\xca\x8d\xc6\x78\x05\x06\xe5\xfe\xbb\x23\xaf\x79\x77\x14\x34\x4e\x30\xab\xda\x73\xa2\x05\xfe\x8a\x32\x6a\x9b\x61\xdd\xbc\xfc\x6d\x60\x69\xa2\x39\xb8\xb6\x8d\x7f\x32\xa9\x6c\x28\xc7\x80\xc8\xdb\x54\x9a\x0b\xd0\xd6\x43\x73\xca\x63\x6d\x38\x04\x1b\x2e\x0b\xd2\x1c\xda\x88\x24\x2a\xdf\xab\x17\xa5\xc4\x41\x29\x70\x93\x6e\x6e\x61\xbd\xf6\x36\x9d\xb0\x45\x09\x75\x33\xff\x32\x90\x42\xc3\x98\x38\xb6\x6b\x1d\x4a\x4f\x59\x67\xc7\x40\x54\x33\xc2\x4c\xe8\x82\x8a\x63\x04\xeb\x76\x99\xce\xe2\xaf\x52\x51\x25\x58\x4c\x55\x3f\xd4\xb6\x32\x92\xf2\x28\x01\x5f\x6f\xe3\x46\x6c\x33\xd3\xdd\x99\xb4\xe5\x76\xe2\xac\x7e\xd6\x38\x03\x83\x12\xd7\xd5\x4a\xf6\x40\x9d\xb3\xe7\xfb\x39\x6d\xf0\x6e\x57\x6e\x71\x3a\x94\x5e\x5d\x2a\x33\x99\xe2\xc8\xe5\x9a\x4e\xad\x63\xe3\xfb\x1a\xfb\xb0\x40\xd8\xc8\x9c\x08\xf2\x86\x23\x73\xc3\xdf\x7b\x93\x10\x68\x22\x1d\xc5\x05\x6f\x71\xfa\x99\x77\xec\xb2\x73\x7f\xd9\xdd\xac\xc8\x99\x9f\x15\x59\x37\x41\x56\x92\xd4\x58\xd7\x1e\x5e\x14\xf3\xf8\x4a\xcf\x7f\x5b\x77\x61\xd3\x41\xf3\xea\x40\x26\xef\xf7\x43\xa3\x7b\x8f\x71\x11\xb5\x1e\x48\xa1\xe9\x1f\x5e\xd9\x3d\xc8\x9c\x6c\xc1\x82\x04\x46\x9c\x18\xd7\x22\x70\xb6\xd9\xa1\x56\xb8\x41\x3a\x22\xaa\x46\x31\xfc\xe3\xa4\x41\xb7\x98\xe5\xc8\x9c\xc6\xeb\x7a\x6a\xe2\xfb\x70\x55\xd2\x88\x7a\xe9\x11\xa5\xde\x46\x9f\x91\x8a\x47\xbd\xd9\x6d\x00\xf1\xfd\xfd\x44\xfe\xcf\x3c\x62\x5b\x83\xc3\xfb\xfb\xaa\x9b\x51\x19\x71\xb4\x33\x18\x46\x02\xe8\x6e\x17\x6e\xa6\x9d\xfe\x10\x82\xc7\xed\x3c\x1d\xd6\x8c\x02\x3e\x4d\xdd\xee\x00\x8c\x20\xad\x93\x92\xa8\xff\x6c\x78\x0d\xed\xbe\x1b\x0e\x4a\x2d\x94\x3c\x7b\xaa\x79\x8c\xea\xc5\x6f\xd2\x8a\x32\x81\x76\xee\x7a\x74\x81\xd4\xa0\xc4\x35\x51\xb3\x1a\x62\xcf\xe5\xfe\x9f\x3d\x7b\x78\x10\xe3\xa5\xe1\x8e\xc6\xbf\x68\x94\xef\x9b\x47\xb1\x36\xad\xc0\xc9\x4f\x04\xeb\xe0\x4c\x07\x32\xbf\x35\x0f\x05\xd1\xe9\x12\x24\x8f\x44\x52\x80\x0f\xe9\x79\x7c\x75\x45\xa7\x62\x67\xdf\xdf\x6b\xb9\xf3\x97\x84\xcb\x20\x9e\x53\x1e\xe5\x98\xe3\xc4\xe5\x75\x9f\x7d\xf7\x30\x12\xd6\x4c\xd7\xc4\xfe\x73\x79\xf3\x67\xcf\xff\x56\x9f\x2a\x0a\xa1\x23\x18\xfc\x20\xfa\x93\xf7\x1a\x78\xe1\x2b\xcb\x3f\x3b\x60\x5f\x55\xc8\x17\x61\xd1\x77\x4e\xdb\x37\x5e\x06\x3f\x53\xe5\xb9\x6d\xdd\x50\xe3\x89\x95\x37\x99\x92\x4c\x3c\xbe\xcf\x97\x3a\x64\x42\x72\x3a\xc9\xa7\x54\x67\x09\x63\xc8\xc5\xf9\xd3\x7e\xd0\x9d\x0e\x6a\x01\x9d\x3a\x99\xec\x8f\xf3\xcc\x78\xdc\x3a\x5d\x19\x35\xd5\xc3\xa3\xb6\x32\x2b\x1f\x48\x76\x5f\x7e\x38\x8d\x6f\xbd\x5d\xfa\x74\x50\x5d\x32\x2b\x67\x50\xad\xad\x88\x14\x93\xef\xcd\xe6\x49\x63\x53\x23\x77\xf0\xde\x82\xd2\x4f\xee\xfa\xbb\x1d\x38\xa2\x1c\xce\x17\x4f\x02\xa4\x38\xba\x4d\x8e\xb6\x98\x61\xef\xa7\xcb\x85\x2f\x3e\x86\x52\x9b\xcb\xaa\x7b\xdb\x29\x14\x76\xa5\xda\xc2\xaf\x13\x6a\x45\x14\x1c\x5e\xa5\xef\x42\x39\xc2\x97\x41\xb5\x1c\xd1\xa2\x20\x78\x7b\x7b\xcb\xc5\xfd\xf3\x50\x9b\x41\x7b\x10\x24\xc2\x1b\xeb\xfb\xbe\x12\x94\xe8\x67\x78\x46\xb6\xad\x43\x41\xb8\x61\x6f\x9a\x6c\x67\x97\xa9\x34\xbb\xb7\x3d\x3c\xf1\x65\x30\xd5\x4e\x8b\xb8\x6e\xcd\x9a\x5d\xe2\x4a\x7e\xa1\xb8\x49\x4d\x72\x3c\x86\xb4\x04\xa8\xc4\xc9\x40\x0b\xf2\xfc\xd9\x5a\xa1\x52\x88\x62\x8e\xca\x83\x3b\xca\x0e\x3d\xb8\x0d\x61\x65\x7c\xc9\xe4\xa9\x7f\x2b\xe4\x43\xfd\x90\x2f\x3f\xc9\x35\xc8\x4c\x8a\x69\x5c\x90\xc4\x11\x24\x71\x4a\x8c\x30\x99\xcc\xa2\xf4\x55\x1f\xad\x62\x12\xf7\x94\x41\xb1\x11\x91\x96\xa4\xbf\xbd\x7c\x99\x6e\x2f\x37\x37\x51\xec\x6a\x99\x8a\xd1\x72\x8c\xf3\x5e\xcc\xa3\x25\x12\x62\x84\x0b\x86\x0b\x41\x0c\xf9\x6f\xe3\x34\xf5\xf7\x43\x9d\x32\xa6\xa2\xe7\x51\x64\xa2\x42\xf9\x13\x84\x12\x7d\xc8\x84\x30\x70\x95\xf3\x1c\x36\xa1\xf6\xd8\x95\xf9\xfb\x58\xcf\xa8\xa0\x41\x23\x1d\x25\xa8\x95\xc3\x29\xf5\x9a\xe1\xca\x25\x32\xe3\x51\x2e\x18\x15\x0b\x6e\x9d\x02\xf1\xab\xc0\x15\x57\xd6\x57\x80\xeb\x34\x7b\x0c\xb8\xdf\xd7\x52\x1b\x03\x2e\xa5\x9f\xac\xc2\x4d\xba\x26\x9b\xee\x9d\x5e\x5e\xd4\x5d\x71\x8a\xc6\x3d\xee\x46\x9e\xb9\xef\x16\x51\xed\x24\xb9\x47\x68\xbf\x37\xa7\x0f\x72\xee\x72\x6c\x55\x52\x2d\xa3\x64\xe2\xbd\x06\x23\x29\xa3\xa8\x05\xe5\x84\x64\x33\x67\xcd\x02\x42\x20\x1c\x48\x76\x5f\xe6\x27\xe9\xd4\xca\x77\x13\x01\x31\xa1\xda\x7d\xc3\x99\x9a\x79\x42\x55\xeb\x41\x9d\xf8\x75\x72\x05\x31\x77\x1e\x92\x54\x52\x16\xd1\x9d\xcb\xf5\xb3\x5e\x52\x28\x93\x1e\x81\xcd\x1e\xa3\x5a\x0a\x88\x10\xec\x58\x78\x12\x8c\x0c\x0b\xbd\x78\xf4\xdc\xc0\xdf\xd8\x70\xd5\x30\xd1\x3f\x97\xf3\xc5\x56\x32\xdb\xca\x72\xbe\xa5\x62\x95\x4f\x9d\x69\xfb\x6f\x42\x35\x82\x4e\xd6\x03\x9d\xce\xee\xa1\x13\x24\xd2\x5a\x58\x09\xc4\xe9\xce\xd8\x15\xe5\xa4\x3a\x7d\x10\x79\xb0\x2c\x1e\x32\xec\x76\xae\xdd\xbd\x5a\x1b\xb4\x17\xa7\xb7\xf1\x5d\x71\x6a\x50\xd1\xed\xd6\xc9\x47\x89\x3d\xd1\x0c\x8c\xbe\x00\x8f\x77\xfa\x79\xf3\xd1\x22\x9a\xc2\xec\xfc\xf1\xbb\x46\x4e\xcf\x43\xed\x34\x99\x4a\x94\xde\x35\x22\xd4\x95\x05\x9d\x7e\x7a\x0e\xe4\x56\x52\x08\x55\xf8\x35\x7c\xa5\x0c\xe3\x1c\x68\x86\x5d\x7e\x35\x7c\x98\xa8\xe9\xc3\x44\xdb\x5b\xd3\x4d\xc8\x0e\x78\xdd\x78\x31\x47\xd7\x74\xf2\xc3\x97\xf2\xce\x6e\xc7\x1e\x77\xd2\xb7\x3d\x41\xda\xd6\x50\xf8\x88\x2b\x5f\x8a\xc6\x11\x1b\xa8\x77\x8e\x10\x27\xb9\x85\x4b\x13\xed\xb4\x9e\x68\xe7\xa8\xc5\x49\xaa\x0f\x7d\x1d\xad\x4e\x11\x2a\x8d\x69\xc1\x06\x21\xb1\xe1\x17\x1b\x20\x88\x11\x4a\x6c\x2d\x0b\xc1\xb2\x1e\x82\x18\xb5\x12\xb2\x5c\x07\x81\xb8\xb1\x45\x07\x13\x5f\xf2\xaa\x66\x7d\xe0\x10\xeb\xb1\x35\x81\xb0\xc2\x35\x39\x55\xa3\x89\xbb\x18\xcf\x35\xfb\xe6\x74\x59\xc9\xd7\xe0\xd4\xf7\x65\x53\xff\x7d\x9f\xf7\x21\x40\xfa\x32\x4d\x5b\x1c\x82\x5b\xf0\x1e\x24\xda\x80\xe4\x04\xfe\x13\x1c\xef\x4b\xaf\x37\x51\xe0\x0c\xed\xe5\xe5\x70\x79\x8f\xef\x7c\x71\xd0\x69\xe2\xc7\xc8\x6d\x81\xee\x5d\xc7\xf7\x8a\x46\x1c\xb3\xb1\x66\x5d\x6f\x1a\xcd\x3c\x19\xe6\x3a\xd6\x1b\x87\xd4\x49\x0e\xb6\x98\x52\x5e\xd6\xa2\x52\xf0\xf9\x0e\x90\xe1\x43\x91\xa0\x98\x3a\xb9\x34\x53\x26\x0b\x49\xb9\xfe\xe5\xb2\x66\xfb\xaf\xdc\x40\xe3\xc3\x02\x87\x66\xbe\xc3\xb4\xf4\x70\x82\x97\x84\x86\x69\xe1\x27\x84\x69\x59\xa9\xc0\x09\x8e\xf1\x12\x43\x48\x9f\xca\x0a\x8a\x99\x38\x88\x99\x48\xc4\x4c\x09\xd8\xda\x9c\xc7\x57\xd1\xa4\xc2\x47\xa0\x68\x5a\x27\xd6\xdf\xf0\x68\x8a\x45\x0f\xf6\x62\xbf\xf9\x22\xcd\x9f\x73\x21\x29\x2c\x1a\xdd\xae\x02\xd0\xd7\xfa\xc9\xf1\xf5\xc5\xc8\x3a\xf6\x02\x94\x96\xb7\xd3\x9a\x5b\x84\xa2\xca\x1d\xa7\x57\x8c\x63\xdd\xd3\x90\x81\xae\x2f\xc1\x4e\x5f\x5a\xdf\x5a\xa3\xf9\x4b\x70\x8e\xee\xef\x23\x7f\xcf\x05\xc6\xbf\x0c\x73\xf4\x18\xf8\x12\x64\xef\x94\xef\x06\x21\x8b\x88\xf3\xc5\xd3\x61\xe6\x72\xb7\xe1\x3b\x63\x1e\x7c\x62\x62\x83\x65\x3b\xfe\xc7\x0c\xe9\x17\x59\xe7\x60\xd5\x84\xce\x87\xd0\x3b\xee\x86\x7f\x52\x0b\x50\x62\x00\x0a\x47\xaf\xdd\xde\x85\xa5\x93\x38\x25\x49\x00\x5b\x22\x61\x83\x3d\xed\x43\x57\x89\xd1\x9f\xe3\x02\x6f\x6c\x30\x9c\xd6\x73\xba\x71\xdd\x26\xbd\xe2\x51\x8c\x97\xce\x16\xbd\x5a\xb7\x45\x83\x0d\x6a\xd5\xd1\x34\xf0\x71\xd1\x1b\x55\x6e\xcc\x45\xcc\x27\xd7\x5b\x0a\xfa\x4e\x4b\x33\x52\xc0\x21\x9b\x9d\xce\x1e\xa5\x98\x66\xd5\xfd\x6a\x06\x1d\x72\x6c\xd5\xd3\x6a\xcb\xae\xd9\xa4\xf5\xea\x69\xad\x74\x36\x3a\x5a\xc8\x0e\x78\x83\x1e\x05\x1d\xec\x56\xb1\xf0\x97\x95\x07\x46\xfd\xb0\x78\x71\x00\x0c\xd5\xde\x7e\x07\xb5\xb4\x00\x51\xa3\x8a\xf4\xde\x9c\xb9\xfb\x90\x59\xd0\x88\xe1\xd8\x63\x4e\xbe\xaf\x91\x7a\x64\x07\x4a\xf2\xf1\x7b\xb8\x0e\xde\xd5\xbf\x0f\xd5\x68\x9e\xde\x0b\x27\x24\x73\x78\x93\xcc\xe5\x4a\x1e\xa1\xe9\xc2\x69\x0d\xbd\xaf\xb3\x48\xa1\xb7\xed\x09\x8f\x12\x9c\xe2\x02\xc7\x2e\x78\x2f\x9a\x2c\x31\xd6\xdd\x22\x86\x8a\x65\x25\x61\x38\x21\x8c\x4b\x8b\x82\xbd\x78\x11\x5f\x26\x69\xc2\x13\x5a\x44\x2a\x5b\x25\x12\x64\x62\x35\xba\xe4\xe3\xe1\x46\x1f\x4f\xcd\x13\xd0\x90\x61\xd3\x0b\x9e\x38\x0d\x87\x89\xba\xcc\xe0\x64\xaa\xa4\xf9\xf2\xf9\x0c\x12\xfa\xc3\x9f\xf2\xe9\x52\x3e\xfc\x84\x6f\xdf\xae\x91\xc7\x8b\xa7\x75\xd8\xb7\x06\x24\x38\x26\x49\x45\xc7\xfe\x38\xdc\x0b\xf6\x30\x64\x3c\x06\x2a\x37\x58\xe5\x65\x2d\x46\x2b\x78\x3a\xab\xe2\x15\xc7\xb8\x90\x5a\x4a\x08\x5f\x1d\x73\xc1\xdd\x49\xb1\x4e\x0c\xbb\xcc\x18\x8d\x27\xd7\x60\x94\x1b\xa1\x56\x46\xe2\x32\xa9\xb3\xad\x78\xe1\x68\xa9\x30\xc3\x4a\xa1\x94\x95\x84\xea\x2d\x16\xa1\x56\xcc\xa3\x04\xed\x30\x22\xb3\x24\x0c\xb9\x58\xb8\x88\x91\x44\xdf\x80\xa8\xb2\x88\x89\x59\x44\xa3\x53\x5d\x39\x6b\x98\xf8\x2b\xc7\x71\xc8\x90\xac\x59\x43\x97\xb9\x79\x61\xd5\xa9\x0c\xd7\x1e\x0e\x97\x29\xdf\x80\x79\x34\x23\x89\x91\xc4\x82\xeb\x32\x7a\x2f\xac\xb6\x94\xc1\x95\x92\x55\xaf\x14\xb3\x2f\x7c\x8d\x26\x13\xdb\x22\x79\xf5\xea\x19\x4e\xc9\x8b\x6e\x82\x97\xe4\xfb\xae\xbd\x4d\x64\x1d\x30\x34\xd1\xf9\xdd\x4f\x77\x7f\x6d\xd1\xd1\x6c\x2c\x53\x17\x44\x39\x70\x45\xe2\x0a\x49\x11\xce\xad\x9e\x72\x36\x76\xe1\xab\x33\x90\x71\x34\xd2\xa2\x3b\x3a\x5f\xf0\x3b\x5f\x7c\x7a\xd1\x48\xa1\x14\xee\x26\x32\x17\xbd\x4b\xaa\x3c\xb4\xd4\xb0\x96\x81\x35\x9c\xa7\x8f\x16\x27\xde\xf2\x8f\xce\x76\xc8\x4b\x92\x89\x4d\x96\xa3\x6e\x37\xca\x49\x18\x90\x4a\x53\x3e\xdb\x82\x88\xb5\x03\xdb\x0c\xe6\x50\x15\x4d\x00\xa0\x3b\xa3\x35\xd1\x5c\x5a\x02\xea\x43\xbb\xeb\xc4\x26\x4e\x2a\x1b\x37\x17\x5b\xb6\x8c\x32\x9c\xe3\x44\x46\x3f\x36\xdd\xc7\xaa\xfb\xa2\x24\x10\x98\x3c\xe3\xd2\x9c\xd5\x69\x8e\x9f\xa9\x07\x87\x94\x24\x32\xc1\x99\x8a\x08\x54\xe0\xa5\xfd\x02\xa1\x7d\xf0\x44\xc6\xd4\xd7\xb6\x96\x11\x08\x48\xc9\x2c\x9a\xa0\x55\x22\x23\x83\x3b\xda\xd3\x29\xe9\x6f\x4f\xad\xcb\xf1\x54\x5b\x35\x5c\x93\x74\x34\x1d\xb7\x2a\x8f\x8e\xd7\xca\xac\xca\x68\xe7\xae\x1d\xdb\xaa\x6b\xeb\x93\x6c\xad\x42\x86\x33\x30\x83\x9e\x0e\x17\x25\x99\xe0\x39\x99\xa9\xb1\xf0\x0d\xe9\x6f\xdf\xbc\x9c\x6f\xdf\x6c\x6e\x22\xd3\xc5\x6c\x74\x33\xb6\xd0\x5d\xe9\x3c\x1d\x9f\xe8\x5d\x11\x2d\x10\xbe\x24\xfd\xed\xcb\x97\x57\x1a\xdc\x4b\xb7\xe9\x62\x74\x35\xba\x1c\x8f\x51\x2b\x51\x5b\x9c\xe1\x2b\xbc\xc4\x73\xbc\x31\x40\x25\x0b\x5f\x60\xdc\x0f\x76\xe3\xfd\xd0\xf8\x08\x92\xf8\x9b\x8e\x05\x1b\xcd\x10\x9a\xb8\x24\x09\x68\xb2\xc3\x2d\x11\x57\xb7\x84\xa6\x65\x40\x43\x60\xd5\x0b\xfc\xdd\xe0\x09\xaa\x58\xf2\x77\x5e\x7f\x7c\xd7\x91\xb2\x49\x2a\x45\x4e\x55\xfb\xf9\x33\xb1\xb3\xd3\x8a\x04\x24\xeb\x2e\xc9\xa0\xcb\xf1\xc4\x6b\xf1\x42\x34\x98\x54\xb4\xa5\x5a\xf0\x71\xab\x0e\x9e\x40\xe5\xa9\x6b\x42\x28\xeb\x5d\x93\x58\xcb\x57\xc0\x2f\x61\x35\x15\x3c\xc1\x29\x9e\xe2\x8d\x8d\x25\xac\x02\xe4\x7b\xbe\x86\x16\x33\x12\x6b\x91\xea\x1a\xe9\x01\x9e\x7c\xf7\x1c\x75\xbb\x1b\x15\x01\x6b\x06\xaa\xb2\x80\x77\x3d\xe3\xd1\x0c\x5f\xe3\x18\xa7\x2e\xa9\xf9\xa1\x86\x5d\xa8\x48\xa1\xe1\x7d\x5e\x56\x08\x48\x2e\x25\x3e\x5f\xda\x6d\xe5\x8d\xa2\xb0\x6f\xb7\xa9\x5f\x85\xc0\x01\x15\x54\x1c\xef\x58\xbe\x94\x46\x74\x81\xf6\xc2\x4b\x4e\xeb\x4c\x63\xa0\xba\xa8\xe8\x0d\xe8\x6d\xfb\xce\x53\x28\x55\xde\xe9\x1e\x16\x8b\xea\xa4\x90\x66\xa9\xa8\x2a\x24\x07\xf1\xd8\x62\x90\x3b\x0a\x0f\x05\x2f\xbe\x0a\xaa\x50\x58\xfb\x62\xb0\xaa\x32\x1b\x70\x2f\x5a\xbc\xb9\xe3\x75\x9e\x24\x46\x84\x28\x24\xdb\x3e\x4d\x26\xdc\x44\xd8\x85\x86\xd4\x46\x0b\x99\x3b\xb1\x48\x6a\x03\x8b\xeb\x87\xe0\xd5\x8d\xb4\x8d\x72\x02\xac\x65\x18\x32\xdc\x25\x99\x90\x7e\x5a\x1d\xe8\x5a\x45\x1b\x74\xc7\xd2\x71\x31\x02\xa9\x0a\xa2\xba\x24\x6b\x92\xba\xc9\xeb\xab\x66\xdc\xaf\x1d\x2c\x2b\x5d\x75\x88\xd5\x95\xcf\xfd\x70\x1f\x23\x8a\xf9\x58\xa5\xc6\xb5\xb6\x39\x2c\x08\xcc\x55\x18\x2a\x9e\xb5\x13\xed\xd8\x6d\x0a\x51\x32\x8b\x3a\xe2\x4e\xe9\x98\x60\x84\x3a\xd1\x9c\x03\x53\x36\x76\x26\x92\xed\xdc\xf2\x88\x62\xf5\x01\x5f\xf0\xc8\x9d\x17\xc2\x89\x8d\x7e\x8e\x93\x9e\xc6\x3c\x1a\x42\xab\x0c\xab\x07\xae\xa6\x6a\xca\x0c\x97\x30\x31\x68\xc5\xa9\xbf\xdb\x95\x63\x03\xc4\x58\x87\x40\x73\xf2\x2b\x61\x6e\xbb\x0a\x36\x8e\x63\xf3\x78\xe1\x79\x4f\xb8\x16\x81\x9d\xce\x70\xe0\xfe\xa6\xa3\xfe\xd8\x33\xe1\xb1\x16\xa1\xfd\x6d\x6e\x1d\x66\xf8\xe6\x26\x72\x2c\xe7\xac\x97\xc7\x88\x8f\x1b\xb2\x4f\x38\x76\x87\x8f\x1d\xc1\xbc\xa9\xf3\x71\xab\xce\x48\x4f\xf9\xaa\x18\x03\x05\xc7\x65\x45\x10\xb0\x25\x84\xe2\xf2\x9c\x4c\x6e\x95\xf5\x27\xe8\xc4\x37\x06\xd2\x83\xba\xd2\x33\x7a\x48\x47\x03\x3d\x38\x0a\xe7\xf8\x61\xbd\x09\xc7\x56\xd8\x17\xbc\x58\xad\xf6\x84\x35\x68\x4f\x18\x08\xab\x76\x1a\xfb\x3c\x88\x2d\x07\x37\x1b\xc5\x03\x37\x6a\xae\x5b\xa7\x5f\x5f\xe7\x44\xa3\xc3\xa6\xa8\x21\xac\x07\xb2\x89\xd2\x2a\x14\x26\x22\x2f\x95\x82\xf9\x15\xe5\x11\x47\xdb\x10\xae\x37\xef\x76\x93\x1a\xff\x82\x7c\x73\x80\x63\x84\xb5\x23\x6c\xb7\x1b\xe9\x3f\xc5\x69\x8f\xad\xf7\x49\xbf\xc6\x29\x64\xe5\x89\xc6\xea\x22\xad\xde\x9c\x96\x49\x16\xa2\x77\x5c\xa7\x26\x6f\x25\x36\xe4\x81\xd6\x5d\x67\xfe\xd5\xe8\x25\x97\x74\x95\x6e\x3f\xfc\x97\x20\x0b\x65\xf2\xc4\xb0\x34\x99\xc7\x4e\xd4\x38\x34\x7c\x15\x22\x72\x92\x28\x7e\xe7\x38\x9e\x03\x33\xb1\x46\x29\xf0\xc3\x77\x8d\x4a\x01\x9f\xe5\xcc\xad\x68\xec\xb1\x9f\xc0\x74\x2a\x11\xad\x10\x22\xf6\xca\x63\x78\xd2\x92\x24\x10\x8d\x98\x47\x29\xce\x11\xca\x48\x2e\x80\x7b\x9f\xa8\xf3\x24\x7d\xb7\xa2\x58\x31\x71\x55\x9d\x80\x3a\x61\x82\x4d\xfd\xac\xfa\x68\x14\x76\x25\xe3\xa9\x4a\x84\x28\xa5\xe3\x89\xa0\x48\x8f\xfa\xc6\x75\x19\xd3\x22\x7d\xdd\xb0\xa8\x95\x91\x44\x0c\x38\xe8\x3f\x79\x86\x76\x96\xbd\xb8\xf8\x45\xfa\x65\xa9\xb6\x68\x28\xbe\xe9\x1f\xea\xc9\x28\x33\x06\x2f\xb4\xa7\x12\xd0\xa1\x56\x61\x5d\x4d\xe4\x81\x3a\x07\x80\x71\xe1\x8b\x33\x93\x8a\x51\xcc\x0f\xcf\x1e\xb9\x38\x66\x03\xe4\x78\xed\xd2\xc8\x1d\x94\xfa\x3c\xe9\x52\x57\xe3\x74\x38\x29\x49\xac\x96\x6b\xe9\x2c\xd7\x6e\xee\x2f\xd7\xe4\xc1\x85\x5a\xae\x5d\x28\xdb\xad\xbf\x1e\x69\x5d\xbf\xe5\x23\xf1\x97\xf5\xa4\x72\xc5\x55\x38\xae\xf5\x6d\x5b\xe3\xdf\x15\x9e\xa8\x5a\xb9\xda\x6a\xf5\xe2\x07\xb4\x7a\x81\x6e\x28\xaf\xd3\x08\x29\xe8\xb5\x56\xc8\x9d\x6a\xa8\xe2\xb3\x9c\x3a\xf7\x29\x56\x8d\x3d\x9a\xef\xb7\xc4\x02\x7f\x32\x57\x7b\x91\x87\x74\xa5\x95\x2b\x98\x48\x86\x73\x79\x23\x90\xc4\x31\x91\xab\x1d\x4d\xde\x18\x30\x9e\xdf\x9b\xec\xa0\x15\xfa\x74\xe9\xf4\x1b\x9b\x03\x77\x22\xdf\x37\x28\x8a\xbd\x6d\x0f\x0a\x0b\x75\x53\x5d\xc7\xc5\xfe\x8d\x8e\xc4\x90\x90\x4c\x5d\x36\x1e\x97\x1d\x38\xc2\xd9\x78\x95\x89\x6b\x1f\x34\x08\x35\x40\xd6\x39\x28\xa4\xbb\x8e\x1f\x98\xeb\x87\xa7\xe4\x5a\x20\x99\xd2\xf3\x25\xe6\xc7\xa0\x1f\x89\x49\x6e\x12\x92\x6e\xc7\xaf\x48\x7f\x3b\xde\xda\xd2\xe1\xdd\xf2\x51\x3c\xc6\x69\xe3\xdd\x2b\x8a\x11\xa8\x5c\x64\x9f\xe2\x12\x2e\xf0\x46\x5f\xdd\xc3\x69\xb7\x9b\xb9\x26\x68\xe9\xe6\x00\x2f\xeb\x2f\xe0\x62\x4c\x96\xde\x8c\x9b\xdd\xa1\x2a\x37\x8d\x54\xf7\xc8\x4b\x28\x98\x6e\x42\xfa\xdb\xc9\xcb\x4c\x32\xa6\x9a\x85\x4b\x36\x37\xd1\x09\x37\x27\x17\xd0\x30\x4a\xc6\x58\x55\x13\x7f\xca\xa0\xc2\xce\xe2\x37\x39\x77\xfa\x9b\x53\x1b\xce\x55\x4f\xfd\xa0\x5f\x77\x95\x7e\x8d\x64\x1e\x3e\xd7\x2b\xe1\xd9\x2a\x4d\x92\xb5\x4a\x13\x26\x98\x8f\x53\x9a\x4d\x29\x53\x04\x2e\xc3\xb9\x7a\xe7\x71\x03\x05\x62\x56\x63\x8a\x70\xce\x21\x80\x73\x8e\xbc\x99\x69\x61\x5d\x86\x27\x72\x05\x7e\x23\x79\x9e\xad\x7f\xfb\x15\x62\x63\xd3\xeb\xaf\x09\xc4\x62\xde\x7f\x95\xa2\x51\xbd\x99\xb9\x9a\x1e\xe3\xe6\xe3\x3e\x09\x9b\x0e\x3a\x55\x83\x2e\x5d\xe4\xa9\xc6\xdd\x1e\x75\xdc\xe9\x96\x89\x2d\x0d\x61\x78\x94\xd5\xd1\xf9\x17\x3d\x69\x6b\xc0\x9b\x26\x06\xb9\x82\x8b\xc0\x99\x25\x99\x6e\xa9\x79\xa4\xb0\x5c\x8f\x30\x50\xaa\x3c\x65\xdb\x69\x32\x2c\x07\x31\xd3\xe2\x36\x9e\x96\xda\x0e\x62\x31\xec\x76\x50\xa1\xb6\x18\x44\x3f\xb0\x69\x18\x94\xf3\xb6\x98\x71\x9e\xd2\x5e\x92\xcd\xf2\xa8\xf3\xb1\xa0\xed\x3f\x74\x8a\x5b\xdc\x8e\xb3\x69\xfb\x0f\x41\x11\x5e\x2e\x62\x7e\xfd\x0a\xfd\xd1\xe6\x79\x1b\x82\x35\x80\xf4\xdb\xe6\x8a\x11\xea\x75\x10\xe6\x51\x47\x7c\xeb\x48\x9e\xe5\x03\x27\x47\xda\x87\x6d\x37\xf4\x01\x73\x42\x48\xcb\xe0\xbb\xea\x71\x32\x9f\xc4\xa9\xaf\xc1\x30\x12\xb7\xa6\x02\xce\xf9\xd7\x66\x9c\xe2\xb0\xc7\x84\x8d\xf2\xad\xc1\x18\x4c\x8d\x6c\x04\xe5\x5c\x85\x94\x95\x3d\x8f\xe2\x31\x29\x4a\x1d\x65\x57\xf9\xdf\x00\x04\x43\x86\x65\x15\x27\x37\x3e\xed\x15\x8b\x34\xe1\x51\x47\x4c\x6e\x94\xe3\x5e\xaf\x17\x8f\xfd\xaf\x85\xd4\xb1\x39\xb1\x95\x75\xf2\x08\xc0\x04\x21\x24\xdf\xe1\xb2\x8e\xd4\x35\x0e\xb3\x51\x3e\xde\xe1\x44\xfc\x6f\x28\x04\xa7\xdc\xd0\xe1\xce\x3f\x3b\xa8\xdb\x2d\x64\xb9\xf8\xdf\x50\x67\x9a\x02\x08\x6d\x1f\x38\x26\x09\xc2\x71\x8f\xd1\xe9\x72\x42\x23\x58\x45\xf2\x8a\x2a\xe9\x09\x16\xd9\x1c\xeb\xe7\xe1\x63\x4c\x8d\xf6\xca\x3c\xbe\x84\x8f\xfd\x35\x6f\x72\x19\x30\x25\xe0\xcc\xca\x23\xe7\x92\xc2\x39\x6a\x7d\x10\x5f\xac\x63\xb6\x79\x7d\x26\xaf\x62\x15\x9c\xba\xc6\x46\x7f\xd0\x7f\xe0\xbd\x68\x35\xba\x1e\x4b\xc6\x66\xf2\x49\x70\x9e\x14\xcc\x0d\xc2\xe7\xc4\x54\x32\x7e\x6b\xdf\x71\x97\x8a\x39\x54\xef\x48\x78\xf2\x40\x9b\x04\x21\x3c\xad\x7b\xa5\xf5\x63\x30\x15\x38\x45\x78\xb6\xee\x35\x77\x8a\xf0\xca\xe1\xba\x86\x0b\xcd\x9b\xcd\x4b\x32\x73\xdc\xdd\x1d\xde\x1e\xdf\x90\x85\xbe\xa9\xf1\x95\xc3\x0e\x5c\x92\x90\xd1\xb9\xd1\x11\x99\xf1\x1d\xb9\x0a\x77\xe3\x65\xc0\x91\xdc\x21\x2c\x3f\xc1\x22\x5d\xb9\x4a\x70\x7d\xd0\x2e\x82\x44\xe2\x57\xa1\x43\x3e\xc2\xb7\xa4\xbf\x7d\xfb\x72\xa2\xcf\xe2\xad\x3e\x8b\xfb\x64\x32\xba\x1d\xe3\xcf\x64\x39\xda\x17\x67\xf1\x44\x02\xa4\xce\xe2\x3e\x6a\x5d\x8c\x3e\x8f\xc9\x49\x99\xcc\xa2\x3b\xa4\xc7\x3b\x23\xfd\xed\xb3\x97\x7a\x16\xdb\x67\xba\xb3\x73\x72\xb6\x39\xc0\x47\xe4\x6e\x74\x33\x3a\x1b\xeb\x18\x00\x1b\x84\x1c\x75\xbb\x72\x0e\xd1\x39\x3e\x42\xa5\xfc\xdb\x01\xf0\x42\xdb\xc2\x5b\xcb\x78\xb8\xd1\x1d\xf9\x4d\x2f\xf1\x1c\x55\x64\xa3\xef\x6b\x9c\xb7\x9a\xbc\x04\xac\xd2\x85\x68\x17\x81\x9d\xce\x3f\x93\x29\xcd\x78\xc2\xef\x8c\xbb\x55\xa2\xcf\x0c\xeb\x41\x2c\xd1\xcb\xd4\xa6\xb9\x83\xd7\x33\x69\xa0\x61\x1f\x0e\x63\xc7\xfd\xde\xe5\xc3\xbf\xaf\xb1\x27\xcd\x38\x65\x87\x49\xe1\x9b\x68\x7e\xff\xd4\x71\xea\x80\x52\xb7\xb0\x21\x26\x43\xc8\x77\x09\xae\x3e\xa3\x9f\xb9\xf2\x81\x30\xde\x41\x72\xcc\x03\x4e\xe7\x70\xcf\xb4\xc4\x8e\xbf\x4a\x0a\xfd\x4d\xbf\x46\x39\xc6\xed\x2d\xda\x7b\xb3\xff\x76\xf7\xe3\xe1\xf9\xc5\xde\xee\x87\xdd\xd7\x07\x87\x07\xe7\x07\xfb\x67\x64\xe5\x05\x5a\x01\x29\xc7\xc4\x58\x11\xbf\x9c\x27\x3f\xf1\xd3\x46\x56\x81\x4c\x59\x6e\x50\x95\xe1\xc6\x00\x3b\xe1\x54\xc4\x4f\x8f\x03\x30\xad\x65\x08\x15\x51\x6e\x63\xa7\xd8\x52\x1d\x34\x45\x7c\x51\xd1\x52\x44\x55\x27\x4a\xca\x70\x63\x20\x13\x60\xed\xf1\x0a\xf8\x03\x0f\xfc\x81\x0f\xfe\xc0\x03\x7f\xf0\x85\xe0\x0f\xd6\x82\x3f\xa8\x80\x3f\x58\x07\x3e\xed\x1d\x1d\x1c\x1f\x1c\xed\x1e\xfa\xab\xb1\xa7\xaf\xeb\x4f\x7c\x15\x8a\xa4\x56\xc5\xbb\xc7\x4b\xf7\x25\x56\x69\xd4\x03\x36\xf5\x63\xe6\x06\xc9\x72\xea\xb7\x93\xac\x2d\xdf\x8b\x8c\xeb\xbb\x8a\xe9\xdc\xd1\x49\xca\xad\xd6\x10\xe7\x0f\x76\xad\x12\xf5\xaf\xeb\x55\x93\x38\x2f\xe5\xa4\x7a\xb7\xa3\x0f\x0e\x20\x2b\xae\x1d\x20\xe4\xc5\x1f\x83\x92\xa0\xcd\x43\xfd\xef\x99\x84\x9d\x0f\xf7\xbb\xf7\x30\x4a\x96\x5e\x6c\xd6\xb5\x1d\xca\xaa\x0f\xc1\xe7\x31\x9f\x8f\x9c\xbf\xdb\xe6\x71\xfd\x3f\x6e\xfe\x1f\x1f\x86\x38\x78\x16\xf5\x13\x34\xda\xc4\x4c\x61\x4b\xf2\x49\x26\xca\x3d\xe5\x64\xe5\x28\x5a\x8c\x89\x15\xbd\x6d\x7f\xe2\xe2\x78\x9d\xef\x1f\x7d\x38\xdc\x3d\xdf\xbf\x38\x39\x3e\xfc\xf5\xc2\x58\xce\x91\x53\x7d\xc2\xfe\xac\x77\xc3\xbe\x5c\x4e\x3e\x51\x4e\xe8\x0e\x5c\x55\x71\x51\x24\x57\x19\x8a\x56\x25\xa6\x68\xb8\x2a\x83\xc4\xa9\x4e\x0b\x2f\x61\x43\x6d\x31\xe1\x75\x59\x2b\xfe\x54\xef\x4d\xb2\x1a\xa4\xa4\x7a\x43\x67\xf1\x32\xe5\xae\x4f\x21\xf9\x53\x83\xfd\xa6\x29\x38\x88\xc7\xc5\x0b\x01\xfc\x94\xce\x6c\x56\xe1\x6b\xc8\xf5\xc4\xce\xd7\x26\x03\xb5\x76\x94\x41\x32\x50\xe9\xf3\xcf\x9c\x24\xa0\x41\x4e\x94\x9f\x63\x66\xaf\xe2\x3a\x24\x99\x3a\x36\x81\x0a\xfc\x56\x21\x7b\xb5\x8f\xb7\x03\xbb\x61\x54\x71\xc8\x82\x5b\x27\xa3\xda\x24\xa2\x72\x9a\x18\x60\x46\x98\x9b\xb4\x41\xb5\x8f\xb6\x70\xdf\x3a\x51\x2b\xac\x81\x09\x70\x0b\x07\xdc\xe2\x73\x0a\x5f\xde\x6a\x21\x13\x94\x25\xf0\xe9\x35\x2f\xa5\xb5\x92\xcd\x12\x3f\x9a\x8c\x47\x79\xef\x9b\x62\x31\xde\x1c\x78\xc9\x3d\xa4\x7e\x47\x55\x37\xe6\xcb\x4e\xb0\x93\xb0\x48\xd9\xe0\x04\x9f\x4b\x69\x8a\xe2\x3c\xee\x38\xb3\xa1\xca\xf5\xd1\x0e\x88\x0b\xa2\x23\x8c\xe0\xd4\x85\x6e\xab\xd8\x1c\xb4\xe2\x9e\xee\x2d\xc5\x05\xf8\x90\x2b\x6d\x7b\xba\x25\x63\x27\xbb\xf0\xe9\xaa\x4b\x9c\x69\xe3\x0e\x07\x4e\x7c\x4d\xb4\xd2\x0f\xcf\xc8\x72\xeb\xe9\x3f\xae\x5b\x53\xd3\x66\x86\xaf\x31\x43\x32\xd4\x75\x7c\x65\x77\xd1\xbf\x69\x34\x0a\xc6\x71\xd0\x3e\x96\x2d\x2e\x21\x32\xb1\x7f\xb4\x24\x6e\x44\x09\x54\x91\x03\x87\x69\x73\xc2\x40\x32\x9b\xce\x42\xa8\x2f\x4f\xff\xe1\xf6\xa7\x52\xa1\xc4\x95\x4d\xec\x74\x05\x85\xa5\x0e\xb2\xa3\x34\x05\xc6\x98\x0d\x54\x02\x90\xb5\xa5\x6f\x52\xba\x72\x9b\x97\xc2\xb1\x62\x62\xca\x8a\xc9\x8a\xbc\x0c\xe6\xb3\x49\x85\x38\xad\xe1\xcb\x6a\x34\x8b\xbc\x37\xc9\x17\x77\x51\xbc\x29\x1b\xe0\x78\x33\x41\x2d\xd5\x98\x50\x9c\x99\xbf\xb8\xb3\x19\x09\x2d\x4b\x63\x25\xa7\xce\x1e\x44\xf9\xac\xc5\xd4\xce\x3b\x3e\x0c\x4b\x4c\x6b\xcc\x6d\x4b\x17\x99\x3b\xdf\xa8\x46\xf2\xa3\xb5\xc9\x73\x88\xde\xcf\xdc\x78\x9e\x61\xb1\x87\xa5\x7e\x40\x8a\x50\xa5\xb2\x25\x73\x30\x4a\xb1\x0a\x01\xa4\x51\xcb\x1d\xbc\x52\x88\x8a\x23\xdd\xc0\xd5\x51\x3f\xa8\x3d\xea\x02\x1f\xa4\xef\x8e\xa5\x7f\x85\x44\x00\x72\x26\x3b\x3f\x8d\x41\x78\x21\xc3\xd8\xe8\xc3\xc8\xfc\x63\x87\xed\x30\xac\x6e\x98\x8b\x26\xf7\x42\x77\x00\xcf\xb2\xd2\x1c\x73\x16\x1e\xf1\xc6\xb1\x12\xdc\x07\x19\x28\xfa\xca\x21\xd1\x30\x7a\x0c\x0e\xdc\x53\xec\x44\x5d\x17\xad\x8c\x29\xe3\xfd\x7d\xe4\x7c\x26\xff\x56\x69\x1d\x6c\x4f\x08\x61\xaa\x8e\x99\x58\x6c\x31\x9b\x21\xd7\x6b\xcd\xb0\xb1\xed\xe5\x4e\x12\x70\xfa\xb2\x7f\x7f\x4f\x5f\x11\x06\x59\xd2\xe5\x75\x00\x31\xe0\xcd\xae\x76\x53\x42\x39\xfb\x2c\x1c\xbb\xd4\x01\xad\x2c\xd5\x76\xfc\xc2\xf9\xab\xbe\x03\x14\xd3\x40\x65\x0a\x28\xed\xa6\xe9\xac\xc2\x16\xf1\xf6\x31\xc9\x36\xb9\x91\xe7\x73\xd2\xdf\xce\x5f\xf2\xed\x7c\x73\x13\x25\x32\xb3\x56\x0f\xec\x47\x21\x65\x5f\xeb\x51\x9b\x0e\x10\x6e\x3f\x06\x78\xb7\x05\xa0\xc0\xf6\x09\x12\x0e\x26\xa1\x63\xdc\x54\xda\x12\xae\x62\xdd\x32\xcc\x36\x6d\x90\x29\xaa\x0f\xd6\x61\x4d\x20\x29\x73\xb3\x54\x3d\x60\xdd\x8e\x3d\xdc\x30\xed\x49\x2c\x4f\x52\xb8\x66\xe1\x86\x75\xf7\x27\xee\xa3\x1a\xca\x6c\x47\x12\x7c\x58\x1d\x93\x62\x6b\xf4\xe6\xf1\xc2\xc9\xc1\x79\x32\x43\x8e\x36\xd2\xc6\x26\x2a\x9c\xad\x68\x29\xba\x97\xb4\x5e\xa3\xc7\x31\x50\x51\x1e\x70\x8b\x98\x15\x14\xa2\x24\xe0\x41\xdf\x92\x3e\xb1\x77\x33\xb5\x77\xf9\x28\x53\x90\x9e\xb8\x82\x91\x89\x53\x04\x89\xab\xe5\xa6\x9e\x7e\x30\xf4\x77\x57\xe7\xd8\x97\xd9\xb8\x34\x57\xf8\xf6\x0b\x29\x5e\xb8\xbb\xd4\x57\x78\xb7\xf1\xe9\x81\x2a\x51\xaf\x5c\x01\x79\xfa\x5a\x42\xd8\x44\x7c\xbe\x12\x0c\x4b\x25\x8d\xc4\xfa\x08\x60\x32\xa0\x94\x99\xa6\x94\xff\x5d\x98\x0c\x19\x0d\x11\x9d\xeb\xf1\x64\x87\x0e\xf2\x75\x3f\x89\x69\x2b\xab\x24\x41\xb9\xf4\xf9\xac\xe5\xa2\x2a\x34\x4e\x54\x82\x5e\x02\x72\x01\xdf\xea\x08\xb5\x9a\xa6\x3b\xa0\x3d\x2f\x3c\x3f\xbb\xcb\xf8\x35\xe5\xc9\x04\x92\xb0\x0a\xf2\x2d\x46\x50\x15\x83\x31\xd4\xd7\xba\x51\x0c\xca\xec\x98\xee\x28\xbb\xdc\x74\x7f\x1d\x3b\x8a\x0f\x78\x0c\x35\xbc\x85\x6b\xba\x54\xaa\x7b\x00\x6c\xbe\x1c\xb2\xed\x5d\x21\x38\x21\x91\xca\x8f\xa3\x00\xb0\x8c\x4a\x81\x9c\xde\x5a\x7a\x38\xb8\x49\xcd\x3d\x03\x29\x83\x6b\xef\x99\xbf\xc2\x7b\x46\x9a\xcc\x57\x96\x43\x46\x49\x54\x94\xc6\xf2\x34\xd4\xdc\x38\x9a\x43\x84\xf6\x8d\xd7\x0e\x56\xe5\x79\x49\x24\x9b\xa8\x93\x1d\x16\xa4\xbf\x5d\xbc\xe4\xdb\x85\x56\xe0\xa6\x24\x1f\x15\xe3\x6d\x98\x49\x6c\x66\x98\x22\x08\xe1\x1a\x4b\xbb\xcb\x14\xe1\xc4\x06\x86\x71\x28\x69\x31\x46\xa8\xf4\x4f\xcc\xc3\xc4\x23\xae\xd9\xad\x5f\x75\x77\xad\xe7\x06\x6a\xee\xae\x4c\xa1\x81\x63\xbe\xc9\x9c\xbb\x2b\xd8\xb5\x1e\xad\x95\x2d\x06\xa8\xd4\x9b\xce\x89\x71\xfd\xcf\xce\xa6\xb9\xf8\xfe\xaa\xb9\xf8\xaa\xf7\x9d\x3a\x3c\x95\xcb\xcf\xa7\x3b\x46\x12\x93\x33\x98\xc7\x0b\x89\x24\x81\xa3\x39\x64\xfd\x74\x91\x33\x8f\x17\x2e\x56\xf4\xc6\x70\xae\xa9\x10\x25\xa2\xc3\x35\xcf\x77\xcc\x7b\xbe\xa3\x23\x36\x4a\xc6\x63\x78\xc0\x2b\x2d\xce\xbe\xe8\xd8\xb9\x90\x71\x17\x32\x75\x6f\x82\xea\xbe\xfe\x74\x65\xe2\x74\x31\x73\x13\x46\xe1\x09\xa0\xf5\xdd\x79\xf6\xd5\x72\x5a\xd4\x9b\x56\x36\xa2\x30\x2d\x31\x39\x73\xa1\xea\x03\xeb\xe6\x99\x73\x83\x9a\x77\xc5\x82\xdb\x4b\x57\x6c\x87\xa9\x7f\xdf\xfe\xa5\xef\xdb\xd7\xb5\xf7\x6d\x92\x71\xca\xb2\x38\x85\xe7\x2c\xef\x6c\x38\x16\x12\xce\x67\x5d\xff\xdc\xe3\xfc\x1a\x6f\x1a\xff\x12\x95\x97\xfb\xfa\x2b\xb8\xb1\xab\x35\x77\xf3\x23\x40\xad\x91\x27\x82\xa9\x37\x4a\x31\xf5\xb7\xb3\x84\x33\x5f\x23\xd4\x34\xc0\xe6\xca\x3a\x7f\x07\x44\x7d\xe5\xd6\xaf\x48\xcd\xba\xca\xab\x55\xfa\x4a\xf9\x27\xd6\xaf\xfc\xc5\x14\x2d\x1c\xcb\x21\x6a\x4f\xff\xe1\x92\xb5\x2f\x3f\xa2\x3a\xeb\x47\x58\x45\xc0\x08\xa7\xd1\x44\x59\x05\xdf\x88\x35\xd7\xa8\xbc\x0f\x9f\xfe\x43\x50\x41\x9c\xdb\x9f\x9b\x03\xcc\xac\x19\xb1\xf8\xf0\x44\xc8\x37\x4e\xaf\xe2\x1e\x92\x71\x6a\x47\x31\xce\x71\x32\xae\xbf\x50\x7f\xe4\x51\x78\x8f\x4a\x5c\x4b\xbc\x3b\xfb\x20\x20\x97\x4e\x49\x30\x2c\xed\x76\xa3\x9a\x5a\x2e\x4a\x04\xf5\xfd\xc8\x81\xef\x50\x74\xff\xc7\x26\x6d\xab\xdc\xb1\xd4\x05\x2d\x90\x71\x34\x41\xfa\x6f\x2e\x94\x43\x39\xb9\xc2\xa2\x03\xc0\x08\x10\x3e\xc6\xe1\xa7\x41\xe5\xd3\x78\xac\x27\xf8\xf3\xba\xd0\xc0\xce\xd5\xe6\xe8\x45\x3d\x95\x68\xc0\x52\x07\xa2\xd7\x4a\x2a\xb7\x6c\x7d\xf3\x5a\xeb\xa8\xc0\x82\xfe\xad\xfc\xe3\xd0\x62\x9f\x0c\xff\x2c\xd5\xda\xff\xe1\xf8\x17\x8e\xbf\x91\xb1\xa7\xfe\x7a\x40\x6c\xf4\x8f\x3b\x7e\x27\x5b\x3d\x20\x6c\x22\xfc\xab\xac\xf7\x73\xa5\xde\x3b\x31\x32\xee\xa3\x16\x35\x0d\xde\x9d\x91\x5f\xf5\x05\xf1\xaf\x5a\xbc\xd6\x6b\x71\xae\x69\xbc\xd0\x58\x5d\xb0\xfc\x8a\xc5\x73\x8d\x57\xfa\x59\x50\x03\x13\x76\x59\x3f\xf2\x1a\xa1\x60\xb2\x64\x8c\x66\xfc\x64\x71\x96\xfc\x25\x6e\x03\x30\x72\x3b\x55\xb5\xaa\x42\xb2\x6a\x2d\x64\xe4\x34\x8f\xa7\xb6\xa2\xd9\xd7\x6e\x1d\xc2\x05\xe5\xfe\x30\x31\x6f\x23\xb6\x10\x12\xd1\x8c\x09\x2d\x9d\x37\x7e\x67\x66\x41\x80\xc8\x4a\x5b\x16\x8f\x11\x7e\x7c\xf5\xd9\x62\x8c\x70\xed\x67\x52\xfd\x5a\x2c\xc6\x5b\x83\x72\x91\x2f\x3c\xb0\xc2\x2a\x35\x0d\x67\xa2\x61\xcd\x30\x2c\x56\xb5\x25\xac\x32\x43\xfc\x3a\x70\x6c\xbd\x01\x2a\xcd\xd4\xbe\x0e\x4b\xa5\xb6\xe9\x6d\x9e\x4d\x00\x9f\x67\x04\x5c\xc2\xfb\xbf\x93\x0d\xfe\xc3\x44\x4b\x2a\x4c\xd2\x1b\x54\x9a\x3f\x1b\x36\x8b\x5c\xeb\x4d\xba\x55\xdd\x71\x25\x18\x75\xd4\x6e\x0f\x03\x55\xd8\x11\x0e\x41\x11\xdb\x5f\x60\x2b\x9e\x4e\x19\x00\x24\xc1\x38\xcf\x1f\xe8\xd8\xc0\xad\x93\xf5\x54\x67\x59\x45\x67\x46\x3f\x83\xb9\xbb\x0a\x75\xa4\x54\x3e\xaa\xd6\x90\x62\x75\xfe\xdc\x58\xe4\x0a\x6e\x73\x4b\xb2\xf0\x96\x84\x88\x47\x39\x64\x42\x8a\x18\x18\xa7\x54\x8f\x66\x06\x19\x97\x5a\x6b\x31\x4c\x12\x9c\x19\xeb\xc3\x93\xa5\x7f\x30\xf5\xf7\x83\x2c\xd3\x69\x2f\xab\x9f\x56\xd4\x66\x7a\xda\xf1\x9a\xa9\x8f\x11\x45\x43\xef\xfb\x99\x4c\xda\xe4\x77\x68\x2b\xaf\x8a\xdb\x84\x4f\xae\x23\x0a\x66\x94\x68\x35\x89\x0b\xda\xee\x0f\xbd\x47\x11\x4b\x01\x5a\x50\x3c\xf0\x8b\xcd\x41\x94\xa5\x4f\x87\x61\x4a\xff\x88\xf6\xf2\xc5\x40\x15\x3f\xa9\x16\x37\xed\x6d\xd5\xe2\x99\xd7\x42\xee\x77\xa7\xc3\xef\x86\x3e\xce\xe5\x4e\x91\x65\xcf\x6b\xca\xce\x75\xf3\xb2\xac\xc3\xd1\xea\x27\x6a\xd3\x59\x71\x4c\xb1\xc2\x8c\xbe\x4f\x7f\x0a\xe9\xfe\x2a\x0c\xe3\x37\x64\x64\x63\x50\xaa\x55\x9d\x09\xd4\x9c\xc9\xe7\x07\x7a\xdb\xe6\x3d\xf8\x5b\xd1\xfe\xec\x46\xdf\x10\xd3\x7c\x2e\x4d\x2a\x21\x5d\xad\xf2\xb1\x0c\xfa\x25\xac\xa4\x9f\xe9\x64\xc9\x6d\xea\xec\x95\xed\xde\xe8\x30\x85\x7c\x25\x8f\x0f\x93\xef\x89\xdb\x1b\xac\x97\x14\xfb\x52\x11\xbb\xed\x65\xf9\x82\xe6\xbd\xe0\xc8\x58\x23\xb0\xcc\x4d\xf5\x25\x1a\x80\xcf\x3e\xe4\xce\x00\x2e\x6d\xa6\x48\x96\x8b\x64\x0b\x91\x3e\x20\x3e\x89\x92\x43\xaa\x4f\xa5\x86\x31\x44\x96\xca\x82\x40\x6f\xdb\x4c\x6e\x7c\x54\xaa\x08\x91\x6e\x2f\xd2\xc2\x6f\xff\xf3\x84\x2e\x64\x4a\x5d\x5c\xe9\x46\x02\x4b\x7b\xf0\x10\x9e\x64\x57\x3f\x1f\x91\x9f\xf4\x15\xfe\xbe\xf1\xa5\x1d\x1c\xd0\x6d\xc6\x84\xe5\x1c\x6c\x82\x2e\xc5\x2a\xf2\x52\x7e\xa8\xda\x01\xf8\x15\x75\x1a\x63\xe9\xa3\x64\x9f\xae\xfe\xfd\x85\x06\xde\x3e\x2c\xd2\xfa\xd1\x8f\x9b\x04\x8f\x9a\xca\xda\x19\xec\x0f\x18\xcd\x34\x3f\xa1\x2d\xa5\xcb\x45\x2c\x96\xc2\x44\x80\xf3\x5f\x59\xa1\x52\x2f\xa8\x52\xce\x12\x56\x70\x08\xe7\x5d\x5b\xdd\x29\x2e\xd3\x78\x5d\x4d\x5b\xea\x99\x5e\x53\xd8\xa1\x1e\xd8\x32\xea\x8c\x46\xd5\x6f\x16\x55\xff\xae\xe3\xb6\x12\x8d\x2a\xfd\xd3\xc5\x0a\x67\x6e\x88\x4a\x29\x15\xf0\xb5\xc6\x11\xe5\x34\x99\x1e\x98\xc0\xa7\x7b\x0a\x24\x99\xa5\xae\x6a\x84\x20\x3a\xc3\x5a\x23\xab\xe1\x47\x0f\xcf\x10\x8e\x51\x59\xd9\xb9\xfa\x35\x87\xd3\x21\xd5\xa6\xe7\x1c\xab\xf5\x36\x67\xfb\x54\x9e\x42\x75\x27\x1d\xaa\x2d\x17\x31\x88\xa5\xc0\xa5\x1f\x8b\xfe\x86\x33\x21\xb9\x8d\xc6\x58\xd9\x09\x98\xad\x31\x1a\xb7\x4e\x22\x29\xe7\xf5\x0c\x41\x31\x09\x9b\xf4\x41\x89\xf2\xc0\xad\x01\x46\xc6\x41\xa5\x18\x95\xa8\x37\x65\xf9\xc2\x2c\x1a\x65\x66\xd1\x7e\x6b\x60\x91\x71\xee\x2f\xdc\x48\x33\x7f\x9f\xe8\x9d\xde\xb8\x73\x3a\xcf\x35\x0f\x0c\xf2\x82\x56\x1e\x30\xca\xe3\x24\xa3\x53\xb2\x31\xd0\xb2\xfb\x94\x7e\x26\x5b\x03\x65\x70\x75\x6a\x95\x90\x96\xbb\xd0\x4d\xfa\x4e\x87\x41\xde\x08\x64\xc7\xb5\x25\xe2\x17\x2a\x8b\xeb\x7c\x99\x4e\x4f\xe9\x3c\xbf\xb1\x3b\x7c\xc3\xeb\x5a\x10\x05\xc8\x02\x12\xc2\xa8\xd1\xc2\xd9\x03\x7b\x39\x44\x8a\xde\xcd\x89\x35\x66\xd5\x28\x90\x1b\x3c\x4d\x0a\xbe\xe5\x9e\x7d\x71\xcc\x64\x1a\x7d\x3a\xb5\x31\x6c\x65\x99\x64\x5e\x8e\xe2\x05\xdc\x42\x47\xf1\x42\x3b\x5a\xb0\x4f\x54\x05\xa3\x74\x4c\x4a\x1e\x38\x28\x8d\x56\x44\x39\xe8\xc7\x05\x17\x96\xf8\xe7\x48\x1e\x06\xb9\x52\xde\x66\x34\x66\x0f\x01\x98\xea\x09\xf5\x13\xbd\xc3\xb4\xf9\x60\x56\xa7\xbd\x26\x00\x2e\xfe\xea\x63\x0c\xc9\x6c\xec\x32\x0c\x39\x76\xc7\x74\x1f\x0f\x37\x6a\x02\xf8\x4a\xcb\x2a\xa4\x34\x44\xf2\x64\x1b\x35\xff\x34\x9f\x6b\x25\xbf\xbb\x20\xb9\xcd\x49\x29\xd3\x70\x77\x50\x2b\xef\x25\x59\x41\x19\x97\x09\x3c\x93\x90\x5c\xe3\x18\x27\x0e\xa5\x95\x34\x42\x29\x3f\x8a\xbb\x6c\xa2\x97\x2d\x68\xd6\x63\xb0\xad\xe5\x2a\xc5\xa8\xb2\x2d\x70\xa1\xa2\x12\x3f\x12\x71\x35\x5b\xb1\x61\x4d\x1c\x8c\xca\x00\xc5\xb0\xfb\x9d\x54\xa2\xa8\x94\x70\x57\xf0\x4f\xb1\xd9\x27\x43\x8e\xf5\xd8\x8e\xf6\xb8\x8f\x13\xd2\x87\xf8\x00\x96\x1b\x32\xe4\xcf\xbd\x99\xe0\x7f\x87\x49\xc1\xc9\x68\xac\x92\x65\x41\x28\x00\xc7\x22\x5b\xa9\xb4\xd0\x25\xa3\xf1\x27\xa3\x69\x2f\x20\xde\x03\x5e\x7d\xa2\x77\xc3\xb4\x24\xf1\xb6\xe1\x99\x8a\x6e\x17\x9c\xf5\x2d\x15\xd8\x46\xa2\xf6\xe6\x66\x36\x6e\xb9\xc1\x71\x8b\x6e\x57\x52\x3c\x42\x52\xe4\x90\x0d\xb0\xef\x2e\x70\x8c\x70\xb6\xb9\x69\x52\x1c\xf1\xde\x75\x5c\x44\xa9\x8a\xe6\xb4\x94\x11\x58\xa3\x14\x60\x5c\xca\x93\xf5\x32\x91\xdd\x88\xf5\x84\x4e\x96\x10\xd4\x44\x79\xf6\x12\x55\xcb\x4c\x61\x22\x28\xe8\x94\x64\x9b\x83\xed\xe9\xcb\x04\x22\x38\x89\x1d\x0c\x02\xd0\x68\x3a\x36\xe0\xa3\xd5\x84\x6c\xf4\x5b\x30\xff\x12\x8a\x27\x3b\x51\x08\xef\x12\xe0\x25\xc9\xe6\x40\x2b\x5a\x03\x28\xc4\x64\x04\x23\x26\xa6\x93\x1b\x42\x2c\x77\x34\x54\x83\xf8\x2b\x1a\xb6\x6b\xd2\xdf\xbe\xb6\x0f\x19\xd7\xfa\xb5\x6b\x46\xd8\xe8\x7a\xdc\x02\x28\x66\x06\xc2\x9d\xc8\xf6\x38\xa5\x29\xe5\x72\xe0\x19\x42\x43\x51\x09\x08\xb3\x56\xab\xe6\xa5\x03\xb5\x61\xa3\xc3\x3d\xd4\xa2\xde\x45\xc0\xe5\x45\x80\xa9\x7f\x73\x70\x7d\x73\x50\xef\x8a\xd1\x84\xce\xd8\xc9\xc9\x90\x51\x62\x43\x3b\xf3\x35\x63\xdb\xbd\x6c\x7d\xce\x74\x14\x5c\xc3\x00\xe4\xd8\x3d\x00\xb1\xdd\xf4\x85\xa6\x24\x6a\x27\x52\xbc\x24\x36\xb5\xf3\x8e\x73\x9c\x87\xdc\x65\xd9\xf0\x84\x1c\xf6\x66\x39\x53\x74\x55\xda\x49\x47\x39\x30\x12\x2b\x65\x25\x3f\xcc\x2a\x44\x06\x44\x85\xe4\x32\x4d\xb2\xab\xe1\xb2\x44\xad\x44\xb3\x1b\x39\x9e\x20\xc3\x4d\x70\xf2\x6a\xc5\x7d\x46\xc1\x46\x0e\xb6\x8e\x0d\x31\xa6\xa8\x95\x29\x6c\x69\x15\xa3\x72\x0c\x8f\x32\x84\x19\xdc\x02\xa9\x60\x64\x14\xc3\x02\x91\x84\xcd\xce\x72\xc3\xd9\x60\xbb\x86\xc9\x7f\x61\x0d\x6d\xae\xf7\x9d\xab\x88\xba\x54\x11\x0d\xa9\x43\x66\x7b\x0e\x42\x36\x08\x89\x32\xc2\x5c\x2c\xa3\x6e\x57\x34\x07\x3f\x41\x39\xcd\x44\x4f\x33\x31\x9b\xc2\xd9\xb2\x14\xad\x3e\x45\x14\xe1\x4b\x93\x67\xce\xde\x88\xb2\x9a\xbc\x14\x0d\xb7\xc5\x58\x83\x08\x93\x2f\x8c\xf2\x9a\x6a\x2e\x53\x3a\xe4\x98\xf0\xc0\x4a\x3c\x23\x7d\x5f\x40\xd3\x9f\x69\x45\x95\xe2\xb2\xf6\xf9\xa2\x18\xb9\xd5\x37\x37\xc7\x35\x4c\x6d\xed\xf8\x2a\xae\x50\xf8\xb9\x2a\xcd\xe9\x49\x66\x95\x49\x3a\x2a\x6c\x47\x88\x5e\xaa\xcd\x56\xef\x26\x2a\xb8\x54\x92\xd9\x9d\x84\xcf\xe4\x5f\x11\x22\xaf\x2e\x23\xa7\x01\x28\xa8\x98\x3c\x10\x55\xe1\x9e\x0a\xa6\x8e\x54\xbf\x83\xc8\x6f\xb3\x3b\x68\x58\x0c\x45\x11\x7c\xd7\x4f\x3c\xe2\x35\xfa\x02\x5a\xda\xa3\xc3\x94\x80\xf0\xff\x13\x79\xad\x6e\x49\x59\x7e\x0b\x9e\x97\x6d\xc9\x17\xb7\x33\x7a\x43\x59\xfb\x1a\x22\xed\x77\xf4\x9a\x25\xc1\x9a\x01\xdf\x19\x2b\xed\x07\xab\xcb\x88\xf6\xa7\xf2\x49\x85\x66\x71\xc6\x0b\xa4\xd3\xbe\xf4\xdd\x2c\x6c\x7f\x2a\x9e\xe6\xcf\x42\xd4\x9c\xc8\x64\x80\xa5\x7c\x43\xd3\x34\xb5\xcd\x84\x90\xa3\xd5\x79\xc6\x8c\x8b\xd9\xc8\x52\x84\x6e\x67\x2f\xf9\x76\x66\xe2\x00\xca\xce\xc5\x9d\x9a\x21\xf3\x9e\xc5\x4a\xb0\xc0\x0d\xf2\x73\xf6\xcc\xc7\xf2\x96\x25\x9c\xbe\x2f\xe4\xeb\xac\xa3\x57\xf9\xd3\x64\xa0\xd1\x3f\x61\x0c\x66\x72\x56\x88\x6e\xa0\xf1\x69\x7c\x1b\x51\x0c\x13\xa7\x59\xe0\x04\x2a\xbb\xb7\xf9\x78\x7c\xbc\x35\xb4\x3f\x98\xcf\xe9\x34\x81\xb0\x29\x4c\x77\x71\xce\x96\xd4\x4f\x43\xe7\x36\x1e\xa8\x5a\x6f\xe3\xb4\x58\x53\xad\xaf\xaa\x41\x0a\xa0\xc6\x5a\x4f\x54\xad\x8f\x3a\xf1\x7f\x73\xd5\xa7\xaa\xaa\xfc\xc5\x9b\xaa\x71\x78\x38\x7b\x5f\xe8\xa7\x33\xe6\x66\xc8\xbb\xa2\x1c\x6a\x21\x4f\xf1\xfa\x67\x31\xaa\x75\x4f\x1d\x83\x9f\x92\xc1\xe7\x23\xfa\x73\xba\xf1\x10\xeb\xbe\xe5\x31\xd2\xbf\x7f\xa8\x8b\xa4\xb0\x50\xec\xac\x87\x71\xd8\x38\xa6\x27\x63\xca\xc1\xd4\x27\xec\xef\x3a\x41\xd2\x9b\xac\xe5\x65\xbb\x94\x3a\xf4\x35\x67\xb5\x8e\x13\x32\x4e\x40\xa8\xb4\xf4\xa3\x08\x84\xa5\x86\x04\x57\x4a\x64\x86\x99\xca\x67\xc8\xa3\xea\x7c\xd5\x30\xc5\x21\xcd\x5f\x2d\x26\x43\x86\xa5\x1f\x79\xe6\x3b\xee\x25\xc6\x71\x19\x2f\xb4\x04\xae\x14\x65\xfa\x0a\x94\x44\x52\xea\x61\xa5\xec\x3b\xfa\x0f\x1f\xc3\xc0\xb9\x24\xb9\xa3\x5f\xd4\x6f\x0f\xbc\xa2\xef\x58\x09\x14\x03\xe7\x07\x77\x4b\xb8\x5b\x72\xd3\xb7\x02\xf5\x9c\xc0\x74\x9a\xf5\x8c\xe6\x91\x70\x34\x81\xe7\x38\x69\x35\xcb\x68\xc1\x73\x46\xdd\xe8\x6a\x32\xbb\x71\xc2\x84\x78\xb3\x9d\x59\x6b\x98\x4c\xf3\xc6\x09\xa1\x10\xf7\x2e\x8c\xbc\x9a\x80\x00\x27\xb6\xa0\xde\xf9\x08\x82\x27\xdb\x33\x96\x35\xd0\x8f\x04\xa1\xe1\x86\x34\xc0\x50\xb5\x81\x90\x64\x68\xb8\x31\x70\xbf\x4a\xc2\xa1\x22\x2e\xba\x05\x40\x2a\x32\x34\x34\xdc\x94\x29\xb1\xe4\x21\x43\x43\xf5\xed\x7d\x11\x65\x38\xf1\x02\xc0\x09\xc4\x44\x0c\x8f\xfa\x78\x6b\x80\xa9\x55\x16\xf4\xc7\xf2\xdd\xed\xbd\x55\xf2\xc8\xf7\x03\xdd\xd1\xe6\xa6\xc2\xa9\x7a\x0d\xc4\xd4\x79\xa8\x53\x87\x3f\x6c\x66\xca\x9a\x1a\xc3\xec\xab\xed\xe0\x73\xd8\x46\xb6\x90\x98\xa9\x36\x91\xdf\xeb\xdb\xc8\x14\x6b\x95\x26\xf0\xb9\xbe\x85\x45\x66\xb5\x99\x2d\xab\x6f\x2b\x49\x55\xa5\x99\xf8\x5c\x87\x86\xe9\x72\xa1\x6c\x2c\x9c\x8e\xdc\xd6\xea\x6e\xac\x0e\x16\xdc\xa4\x5e\x6d\x0e\xaf\xa0\x62\x31\xc9\xc0\xb3\x8f\x30\x0f\xad\xef\x8b\x28\xe8\xd0\x25\xf8\x8e\xbb\x93\x38\x4d\xa5\xfb\x8a\xd4\xd8\xa5\xf7\x2e\xfb\xf8\x8e\x9b\x3b\xfc\xa2\x8e\xa4\xff\x37\x25\x7d\x9f\x3a\x37\x4f\x78\x4b\x6c\x42\x37\xbd\x59\x73\xdb\x86\x99\xe9\x1e\xd6\xb4\xac\x69\xa1\xed\x6e\x9d\x92\x99\x58\xf3\x86\xf6\x9b\x14\x69\x2f\x49\x15\xd9\xd3\x6d\x54\x73\x52\xd9\x26\x17\x1b\xcb\x61\xe0\xaa\x3d\xdb\x42\x63\x4c\xe4\xd9\xd1\xb8\xce\x78\x62\xd4\x2d\xff\x1d\xd6\xed\x04\xe2\xb3\x78\x17\xa9\x2c\xd5\x6a\x02\x9e\xcb\xd0\x15\x06\x0c\x1d\xb9\x25\xcd\xaf\x34\x76\x3c\xcb\x06\x65\xbd\xe5\x4d\x14\x87\x40\xa1\xb2\xec\x69\x9a\x1e\xa3\xd6\x5c\x95\x2d\x26\x63\xc2\xf0\xdc\xd6\x24\xb1\xa5\x71\x73\xdb\x1f\x51\xfa\xd1\xd1\x54\xbd\x8c\xab\x47\x6c\x78\x59\x97\x25\xd7\x41\x89\xe1\xa2\x9b\x2f\xc0\xe5\x58\x79\x5c\x6a\x79\x5b\x7f\x75\x2f\x57\x59\xa8\x94\xd1\xa3\x99\xbc\x22\x8f\x55\x56\xfa\x42\xfe\xfc\x17\x8f\xe6\x1a\x3e\x4c\x35\x08\x78\x05\x21\x6c\x5e\xd3\x59\xce\x84\xd8\xf4\xea\x27\xda\x73\xbe\x48\xe1\x8b\x22\x0c\xdf\x40\xa9\x29\x2a\xad\x74\x2d\xa9\xe6\x54\x95\xca\x12\xd0\x81\xb4\x8e\x47\xdf\xa5\x64\x55\xca\x81\xd3\xb1\xc3\xc5\xdb\x72\x65\x4c\x26\x66\xed\xb3\x41\xa3\x62\x2c\xd7\x0f\x2a\x2c\x26\xd5\x52\xdf\xd0\x06\x16\x0b\x49\xeb\x9b\xc0\x86\xcb\x09\x3b\x45\x95\x8e\xd5\x0b\xd8\xc8\x11\x98\xe2\x04\xad\x6c\x72\x53\x13\x3c\x47\x87\x85\x83\x7d\xee\xf5\xba\x92\xe9\xb3\xf2\x5e\x52\x1c\xe6\xb7\x87\xf4\x86\xa6\x1a\x32\x14\x51\x84\xd6\x82\x4e\x51\x4b\xbf\xf1\xab\xe7\x7d\xb1\xd7\xfc\x27\xfe\xa2\xdf\x32\x25\xfe\xeb\x7e\x31\x30\x25\xdc\x6f\xc3\x6d\x1b\xee\xb7\xe1\xb6\xcd\x8d\xdf\xe6\xa6\x5f\x96\xfe\x44\xb5\xfd\xc1\x9a\xe9\x49\x7d\x81\x98\x58\xc5\xa4\x09\xfb\x53\xd2\x2c\x1b\x97\xda\x4a\x77\x4e\x9a\x81\x0b\x8b\xb8\x6a\xc5\xab\xad\xb8\x6a\xc5\xab\xad\x6e\x54\xab\x9b\x3e\xe1\x65\xc5\x44\x4a\x80\xea\x7c\x0b\x4d\x95\xa0\xd8\x7c\xf2\x94\x2f\xa2\x48\x3f\x8d\xbb\x96\x37\xe2\xbb\xfa\x5d\x31\x9e\x11\x65\xce\x37\xdf\x56\xc6\x16\x4a\xaf\xed\xb6\x3a\x9c\xa1\xef\x94\x8a\xaa\xa3\x4a\xa1\x26\xcd\x6e\x1a\x6a\xd1\xec\x46\xd3\x61\x50\x0f\xd9\xfb\xa1\xe1\xdc\x18\x6b\xc1\xc5\x64\xc8\x7d\xde\xbd\x22\x53\x44\x48\x31\xf9\x56\x08\x11\x9f\xa4\x9f\x9b\xc3\x39\x98\x7b\xa0\x2c\x2b\xe1\xd3\x5d\x83\xd1\xa5\xd1\x40\x62\x29\x68\x2c\x78\xa4\x39\x49\xa4\x02\x1a\xea\xb0\xd6\x82\xf8\x81\x9c\xa2\xbf\x96\xd5\x48\x6d\x8d\x7d\x07\x1d\x40\xe2\x5b\xe6\xa5\x8e\x70\x99\xf9\xd1\x18\x27\x84\x57\xcc\xda\x75\x3a\xa8\x64\xdc\xe3\xf1\x55\x2b\xdf\x20\x81\xa5\x73\xb7\xab\xf4\x15\xb9\x59\x69\xfb\x4e\xb7\x07\x2f\x71\x31\xb7\x59\x90\xc4\xb0\x52\xf3\x68\xe6\x2a\x70\x30\xe7\x11\x47\x08\xf3\x9e\x49\x70\xc9\x0c\x7b\x8d\x4a\x99\xbf\xd8\xa7\x57\x16\xdf\x3a\x60\x77\x10\xa0\xde\xbc\x11\xaa\x30\x7b\x38\x03\x6c\xff\xc6\x75\x8a\x7f\xb5\x7b\xe4\x7b\xaf\xa4\x79\xd3\x64\xba\x0f\x63\x65\x6a\x50\xa5\xd6\x05\x65\x36\xc7\x32\x40\x39\xc3\x73\x3a\xcf\x87\x59\xe9\x7a\x3c\xea\x07\xb4\x9c\x50\xf9\xb2\x73\x4a\x67\x6f\x73\x16\x71\x69\x9e\x1c\x7e\xcc\x50\x2b\xb1\x01\x74\xad\x37\x4c\xec\x3d\x93\xe9\x39\x3e\x41\x38\x7d\xdc\x1c\x65\x9e\x42\xca\xa2\xc2\x9f\x63\x8a\x39\x8e\x71\xee\x6b\x25\xcc\x6c\x97\x08\x2f\x4b\x2f\x9c\x8f\xe6\xc0\x85\x34\xac\xfa\xee\x55\x9f\x50\x4b\x1b\x87\xc8\x2c\xce\x68\xac\xd9\xac\x62\x6c\x0d\xe6\x70\xe6\xcf\xa8\x8f\xad\xd9\x5a\x30\x27\x18\x4e\xc5\x36\xc2\xb9\x77\x39\xe9\x18\x45\x32\xae\x12\x67\x51\xe6\xcf\x32\xc1\x1c\xab\xd8\x6f\x62\xe3\x0b\xe0\xe5\x16\xd3\xef\x88\x66\xc6\x31\xbc\xe1\xee\xeb\x7d\x05\x85\xb5\xf9\x11\x94\xda\xdb\xdc\xe7\x5a\x0d\xee\xd8\x21\xe8\x4f\xde\xf3\x02\xb5\x4f\x90\xa5\xcc\xb1\xbd\x32\xfd\xc0\x49\xac\x4c\xdd\xc4\x83\xd4\xe6\xcf\x8b\xe0\xad\xa2\x72\xc6\x5b\x74\x64\x45\xd0\x71\xaf\xe1\x51\xba\xb4\xd1\xa0\xb4\xfa\x3b\xd1\x1a\x1a\x8b\x25\x30\x4b\xf2\x67\x40\x46\x8a\x41\x16\xb5\xf4\xa8\xe6\x91\xc0\x83\xcf\xe3\x55\xbc\xda\xd0\xaf\x87\xac\x55\x30\x0b\xd3\xa3\xb3\xd7\xc2\xfe\x00\x46\x6d\xbd\xd5\xb0\x4e\x2b\xa9\x48\x17\x18\x56\x35\xb1\xb4\xe7\x7a\x04\x98\xba\xeb\xe5\xe3\xab\xda\xa5\xf3\xae\x24\x97\xaf\x2d\xd5\x65\x11\xf6\x25\x99\x5c\xdd\x91\x7f\xd7\x84\x75\x3d\xd6\x57\x37\x11\x18\x83\x05\xd6\x8d\x6a\xd8\x67\xf7\xb6\xd2\xa9\xc6\xe5\x0a\xbf\xf1\x07\x74\xb6\x96\x0f\x8a\x49\x50\xbe\x0e\x24\x7d\x28\xa4\x5d\xb6\x8d\x4f\x67\xe8\xc1\x21\x05\x3b\xd4\x69\xa0\x12\x0d\xa1\x45\x58\x4e\xcb\xb4\xae\xa9\x24\x77\x5d\xc3\x9c\xe5\x06\xce\x17\xc1\xec\xea\x81\x86\xca\x26\x0a\x9e\x2f\xe0\xa9\xc9\x9b\xd2\xd2\xf8\x83\xbd\xcd\x99\x0a\x6a\x47\x9b\xdb\xe8\x0a\xd6\x34\x52\x61\xa2\x45\xbb\x5d\x65\xb4\xd8\xe2\xec\x0e\xae\xde\xed\x0d\x1d\xed\x51\x3e\xf0\xa3\xde\x34\xcf\xe8\x36\xda\x96\x89\x9e\xd3\x3b\xe7\x82\x0e\x08\xc6\x36\xeb\x5d\xc7\x05\x9c\x97\x62\x1b\x31\x87\x7e\x68\x7d\x95\x7a\x49\x2c\x65\xd7\x72\x9d\xb1\x7a\x0d\x72\xb7\xa9\xeb\x34\xa7\xe8\x76\x68\x80\xe9\x98\x1f\x6f\x18\x07\x66\x51\xd1\xb7\x1d\x56\xc6\x64\x98\x92\x95\x98\xc7\x70\x63\xa0\xae\x4c\x99\x95\x6c\x18\x55\xe5\x5b\x5b\xb7\xaf\xeb\xd2\xdb\x76\xc6\xf4\x25\xed\x91\x19\xcc\x2a\x64\xd2\x15\xad\xc4\x2e\xbc\x4c\xb2\xa9\xb7\x05\xbc\x7c\x10\x75\xcc\x1d\x23\x96\x88\x6e\xb3\x57\xa4\xbf\xcd\x74\x14\xe5\x8c\xd0\x11\x1b\xb7\x38\x3c\xfb\x66\xd8\x97\x93\x20\xd9\x50\xe9\x78\xf6\x15\x20\x02\x88\x0d\xcf\xf2\x9c\x47\x19\xc5\x7d\x84\x99\xcb\x6a\x52\xcd\x49\xfa\x2c\xa7\xf6\x76\x1a\x8d\xcb\x92\xf6\xb4\xc4\xf1\xf3\x11\x89\x19\xfe\x0f\x27\x4b\xfc\x0b\x27\xa9\x32\x11\x4d\xad\xd9\x96\xb2\xcf\x33\x31\x0d\x28\x5e\xa9\x08\x93\x1c\x73\x46\xe9\xeb\x65\x92\x4e\xeb\xc2\xe2\x6a\xf5\xec\x52\x00\x2c\xa0\xf6\xc4\x77\x63\x18\xcf\x11\xf6\xe7\x92\x21\xc7\xb5\x2a\x09\x9e\xd3\x71\x12\xe4\x6a\xf7\xe0\x29\x68\x3a\x1b\x32\x0f\xac\x50\x67\x5e\x1a\x66\xd3\x07\x07\x50\x26\x48\x48\x3e\x93\xc9\x76\x34\x50\x0c\xe7\x32\xc7\x74\x13\xf4\xa9\x99\x61\x81\x63\x9c\x88\x09\x68\xe8\xd3\x10\xfa\xd4\x2a\x72\x1e\x29\x3b\x80\x3e\xf8\xbd\xce\xdd\x12\x48\x1f\x08\x2f\x99\x1b\x76\x77\x69\x3c\x78\x9d\xc6\xa9\xfe\x68\xeb\x4d\x1c\x17\x9a\x48\xbe\x2a\x93\x57\xa2\xee\x94\xc9\x9f\xe2\x4e\x93\x3b\x61\xea\xed\x84\x35\x76\xbb\x72\x0c\xf5\xe8\x21\x23\x8d\x5a\xef\x9e\x62\x39\xa7\x64\xa2\x4d\x92\x54\x1c\xd2\xea\x4a\x72\xb3\x96\x4c\xae\x65\xe5\xc5\xc3\x5d\xda\xbc\xb4\x96\x4b\x8d\x6b\x09\x59\x92\xcc\x06\xc3\xb1\x58\xaf\xe6\xcd\x28\x6a\x8b\x25\x5c\x02\xb0\x08\x22\x47\x59\x76\x76\x19\x2e\xe7\xb2\xfc\xba\xa3\x61\x93\x96\x4c\x58\x94\xa0\xbf\x71\x3e\xf2\x10\xa4\xfc\xbf\xbd\xc3\x9c\x15\x04\xb9\x50\x26\x8a\x30\xbb\xa7\x1a\xf7\x94\x9a\x74\x12\xde\x6a\x9b\x67\xb7\x6b\x56\x1b\x9f\xee\x66\x4e\xcc\x25\xe2\xe9\x4e\xe6\xea\xd6\xd2\x66\x71\xaa\x70\xa6\x76\xd3\xcd\xdc\x15\xd0\x95\x19\x81\xdd\xea\x33\xfd\xf0\xc4\xee\xe4\xab\x65\x4b\xe5\x1d\x8b\x50\x6b\x9a\xaf\x18\xe1\xba\xfb\xdb\x6b\x01\xf3\x06\x83\xcb\xd1\xbe\x85\xab\xeb\x4d\xdf\x94\x3a\x8a\x79\xe4\x0e\xb2\x60\x61\x76\x2b\x37\x0f\x5f\x86\xc0\x01\x93\x92\x57\x23\x8a\xb3\x11\x1d\x8f\xc1\x42\xb9\x33\x8f\x93\xac\x83\x3b\x34\x2d\x68\x07\x77\x62\xce\x59\xd1\x19\x43\x42\x53\x51\x3d\x1a\xd1\x31\x22\xaf\xc0\x5b\x5f\x0b\xb1\xda\xe1\xc4\x9a\xe3\xf5\xb7\x8b\x97\x4f\xff\xa1\x03\xf4\x43\x7c\x04\x37\x71\x8a\x7c\x54\xb1\x39\x18\xc3\x12\x9c\x38\xe9\xd0\x31\x57\xd9\xd0\x43\x3d\x1e\xc2\x4e\x22\x4c\x93\x60\x13\xe7\xb8\x8f\x37\xfa\x08\x07\x0d\x20\x27\x66\xf8\x91\x57\xbe\x30\x04\xc9\xda\xae\x99\x97\xe7\x68\xee\x50\xa6\xce\xff\x6c\x5e\x0e\xfb\xff\x03\x21\x69\x7a\x59\x3e\xa5\xa0\x3e\x2b\x69\xef\x6c\xff\xf4\x60\xf7\xf0\xe0\xb7\xdd\xf3\x83\x93\xe3\x8b\xb7\x07\xa7\x67\xe7\x17\xc7\x27\x6f\xf6\x2f\xce\xce\x4f\x0f\x8e\xdf\x11\xdd\x50\xe7\x15\xb7\x24\x6c\xd1\x1c\x83\xdd\x6e\xf6\x82\xc7\x4c\x9c\x26\xe0\x00\xde\xd0\x05\xbf\xd6\xb6\x34\x93\x38\x9b\x4a\x9f\x14\xd7\x87\x5a\xac\x34\x9d\x9e\xcc\x13\xce\xe9\xf4\x38\x9f\x52\x63\xa3\x9d\x2f\x68\xe6\xf6\xb2\x65\xec\xa2\xaf\x2c\x4c\x87\x75\x30\x25\xb3\xa8\x4a\x56\x97\xd9\x3c\xe6\x93\x6b\x3a\xdd\xb5\x19\xd9\x2c\x20\x97\x76\x20\x21\xf7\x56\x82\x59\x9e\xd2\xeb\xbb\xa9\x4c\x0a\xdf\xbe\x4d\xf8\x75\xdb\xb1\xe1\x6a\x67\x39\x6f\x17\xcb\xc5\x22\x67\x9c\x4e\x3b\xc8\xb1\x18\x91\x13\x97\x22\xc1\xde\x92\x15\x39\xd3\xec\xa1\x34\xad\x01\x09\x61\x7b\x43\x5b\x8c\x66\xf7\xf7\x97\x2c\xca\x50\xb7\x3b\x17\xff\x43\xdb\x28\x23\x99\x6b\x2e\xd6\x0a\x31\x09\x5a\x37\x6f\x80\x40\x3e\x39\x18\x5b\x97\x1a\x51\x55\x37\x0d\x08\x85\xd7\xc5\x4e\x0d\xd8\xa6\xa1\x64\x14\x0b\xaf\xaf\xc0\x0c\x2c\x6c\x42\x68\x39\x4d\x0a\x69\x88\x68\xd0\x18\xea\x8a\xdc\xa6\x2d\x5e\xd9\x2d\x2e\x16\x08\x2d\x69\xf6\xb5\xdd\xd1\xa0\x2f\x98\x8e\x38\x56\xda\x28\x4a\x90\x7e\x70\x29\x59\xd9\x27\xf4\x1b\xb9\x97\x82\xad\x72\x7f\xdf\x47\x2d\x1d\xc8\xcf\x5b\x18\x48\xbe\xe1\x8c\xe9\xac\x76\x78\x18\xa8\x0b\x8d\x12\xf9\x0f\xc6\xda\xf6\x47\xc6\xbd\x3b\x4a\x0a\xd8\xbc\x4e\x54\x32\xad\x51\xf3\x27\xaa\x8c\x8f\x37\x08\x31\xb6\x45\x2c\x38\x48\x50\xe7\x15\x61\x35\x27\x15\x22\x7f\x6f\xf3\x6d\x38\x41\x77\xe2\xf6\x44\xb2\xf2\x05\xfc\x2d\xd5\xd9\x5c\x3b\x70\x82\x67\x03\x57\x31\xa5\xa1\xa5\x46\xc5\x36\x0a\x2b\x69\xd5\x5d\x65\x13\x70\x54\x96\x17\x17\x06\x42\x65\xb8\xed\x4d\x6a\x48\xad\xad\xbc\x8e\xee\xe7\xad\xb5\x5d\x90\x56\xf0\x7b\x73\x13\xe2\x15\xd8\xbd\xcb\x54\x58\x9d\x00\x49\x78\xc5\x65\xee\x2c\x99\x14\x44\x1d\xd1\xd6\x0b\x22\xad\x33\x11\x10\xd0\xf3\xbb\x05\xed\x76\x21\x3a\x94\x25\xa8\xd2\x6a\x5d\x27\x0a\x10\xa4\xb3\x83\xfb\xa8\xdb\xbd\x10\xec\x10\x58\xd3\x46\xc1\x7a\xbb\x88\x81\x2c\x20\x01\x9d\xe3\x68\xd8\x39\x3f\x38\x3f\xdc\xef\x6c\x10\x92\x74\xbb\x9d\xb3\xbd\xd3\x83\x0f\xe7\xe6\xd7\xf9\xaf\xa6\x48\xf6\xec\x6d\x10\xc1\xd1\x96\x17\x17\x93\x34\x2f\xe8\x57\x61\x34\x84\x27\x44\xe9\xd6\x56\x0d\x4a\x71\x46\x36\x06\x1e\x5e\xc5\xdf\x64\xa3\x8f\xef\x04\x1e\x1c\x74\x78\xc9\x17\x0d\x16\x42\xb2\x96\x54\xd0\xb2\xb5\xa5\x72\x26\xd6\x4d\xd9\x0c\x2f\xb3\xe2\x59\x21\xc5\xa5\x9c\x16\xba\xbc\xdb\xbd\x63\x90\xa6\xf9\x42\xfc\x4f\x87\xab\xb4\x73\xd4\x9c\xb1\x0b\xa4\xce\x57\x51\x25\x3c\x71\x75\x11\xb7\xb6\x4a\x58\x06\x30\x6f\x84\x5b\xcd\xe4\x44\x31\x78\xe3\x7e\x04\x43\x7e\x7f\x2f\x7d\x19\x82\x56\xa6\x97\x1f\xcf\x8f\x0e\x03\x22\x27\x8d\x8b\x5f\x83\x01\xa6\xf4\x3c\x30\xa6\x8c\xbe\xdd\x76\x46\xb8\x63\xa0\x89\x13\xa0\x69\xf3\xc8\x55\x57\x60\xe6\x62\x0b\x67\xbd\x05\xa3\x37\x49\xbe\x2c\x0c\x65\xca\xc3\x45\xf3\xfd\x18\xe1\x6b\x86\xb0\x45\xf2\x67\x89\xe4\x75\x07\x20\x37\xf5\x43\xfa\x59\xb3\xd0\x7e\x15\x24\xc4\x59\x05\x82\x8f\x39\x85\xa9\x52\x8d\xe1\x6c\x6d\x69\xfd\x2a\xb0\x00\x2a\x05\x77\x7b\x18\x85\x8c\xeb\xdb\x42\x11\x66\xa5\x8f\x65\x57\x17\x67\x60\x81\xa8\xae\xdd\xee\x3e\x78\xaa\x3b\xba\x0c\xa0\xd2\xee\x30\xdb\xac\xdb\xdd\xd8\x17\x87\x61\x1b\x31\xc2\xea\x20\xa8\x59\x1a\x90\x3f\x1d\xfd\x8e\xd9\x13\xe7\xf4\x33\x7f\x78\x67\xed\x3c\x15\x5b\xdc\xd0\xb0\x9d\x88\x5b\xfa\x25\x43\xa5\xba\x5f\x88\xd6\x95\x3b\x2b\xe6\x6d\x0d\xee\x67\xf2\x54\xa3\xbc\x30\x8c\xa6\xa4\x93\x9d\xff\xb9\xaf\x30\x9f\x11\x47\xf7\xf7\x9f\xc5\x5d\xd2\xed\x76\xa0\x70\x2d\x75\xd4\x2c\x65\x30\x5b\xad\xa3\x0a\x36\x07\xc2\xfe\x2e\x30\xb5\x6b\x3f\x1b\x14\x6a\x6f\xa9\xf0\xe5\x4a\xaf\xac\x46\x62\xb7\x7b\x29\x00\xff\x2f\x20\x2f\xe2\xf5\xbb\x3b\x9c\x80\x85\x0c\xa9\x2b\xd2\x70\x28\x0d\xb0\x0a\x02\xd0\xed\xde\x4a\x04\xfb\x8f\x88\xc9\x2c\xea\x5c\x73\xbe\x18\x7e\xfb\xed\xed\xed\x6d\xef\xf6\x69\x2f\x67\x57\xdf\x3e\xe9\xf7\xfb\xdf\x16\x37\x57\x6a\xa1\x74\x7e\xd9\x8f\xa7\x07\x26\x8a\x65\x4f\xdd\x8c\x62\x0b\xb5\xea\x3e\xf6\x78\xfe\x71\xb1\xa0\x6c\x0f\x22\x31\x97\x11\xc7\xbe\x71\x41\x2d\xe3\x3d\x1a\x4b\x1b\x18\xe5\xcb\xef\xe6\xea\xc5\x5c\x11\xb2\x64\x16\xa9\xa9\x74\xce\x5f\x9f\xbc\xf9\xb5\x23\x47\x93\x23\xa3\x30\xd8\x80\xc6\x0d\x97\xee\xc0\xb8\x86\x1f\xad\x15\x36\x74\x80\xab\x00\xc1\xad\xda\x15\x0a\xe9\x8d\xdf\xa6\xbc\xb8\xa8\xe6\x6c\xf6\x4c\xbc\x6b\x50\xe1\x65\xf0\x38\x61\x51\x86\x65\xe8\xa5\x04\x19\x25\xde\x8d\xda\x6b\xbc\xdb\x8d\xd4\x2f\xc2\x95\x99\x7b\x06\x49\x8f\x26\x34\xca\x4c\x44\xa0\x04\xe1\x41\x05\xd2\x1a\xc0\x24\xb8\x1f\x58\xbe\xa0\x4c\x45\x11\x77\x6d\x9b\x1b\x60\x35\x13\x3a\x61\x11\x53\xb0\x66\x26\xf6\x85\x07\x6b\x16\xc0\xca\x34\xac\xcc\xc0\x9a\x35\xc0\xea\x41\x55\x5e\x5c\x40\xfa\x67\x87\x41\x97\x24\xaf\x06\x44\xd7\xb1\x92\x59\x52\x2c\xed\x5f\x99\x6b\xff\xaa\xf5\x2b\x26\x15\xac\x22\x3b\x16\x4d\x6c\x94\x8d\xe1\x50\xa8\xdd\xd0\x24\x41\x4a\xce\x44\x43\x5f\x01\xb5\xbc\x4d\xd2\x74\x4f\x30\x64\xd6\x33\xc3\x27\xd8\x14\xfb\xec\x99\x26\xe0\x36\x96\x75\xcd\x6e\x14\x94\xa6\xdb\xe5\x75\xbb\x5a\xd5\x5f\xe4\x0b\xeb\x84\x25\xc1\xab\x82\x22\xa4\xc2\x23\xb8\xe1\xdc\x1d\x40\x7b\xff\x59\x52\x76\x77\x46\x53\x0a\x82\xf5\x1f\xc5\x84\x25\x0b\x3e\xba\x4a\xe7\x8c\x74\xbe\x59\xf1\xb2\x33\xfe\xc3\xaa\x79\xee\xef\xd5\xb5\x04\x0f\x4c\x74\x9e\xdb\xdc\xbb\xd5\x43\xe0\x0f\x68\xdd\x1b\x21\x88\xca\xca\x15\x24\x5c\xb1\xa9\xdb\x75\x7f\x6d\x10\x92\x6d\x23\xf7\xb2\x70\x4b\x51\x4b\xfa\xa1\x96\x2a\x35\xa4\x16\xe0\xea\xc4\x7d\xf5\x14\xad\x25\xae\x44\x32\x24\x10\x84\xb0\x49\x66\x61\x2a\x5a\x4a\xfd\xad\xa5\x02\xe0\xe7\x32\xfe\x54\xe8\x65\x20\x06\x39\x4c\x6e\x14\x6f\x9e\xe3\x8d\x3e\xbc\x72\xef\x02\xc5\x57\x3c\x06\xb5\x1a\x8c\x5e\xb5\x2c\xb8\x5f\x9c\x30\xd5\x86\xc1\x0b\xd9\x69\xd8\x27\xce\x2d\xe4\x44\x70\x36\xba\xa3\x4b\xd6\x78\x99\xdb\x4a\x77\xcd\x95\xa4\x64\x44\x1b\x25\xa3\x2d\x29\x19\x39\xe9\xc9\xdd\xbe\x6c\x64\x64\xa7\x03\x69\x25\xf9\x0c\xe1\x81\xdb\xee\xd6\x6d\x37\x68\x00\x74\x7f\x1d\xa0\x9d\xff\x11\xdb\xb8\xc2\x9d\xd8\x1c\xda\xeb\x1b\xb7\x9b\x5b\x9e\xb0\xd0\x64\xa7\xbf\xcd\xac\xb5\x0e\xd3\xd6\x3a\xea\xd1\x0a\xb2\x99\x66\xea\x1e\x45\x36\x10\x25\xed\xe9\xed\xa6\xb5\xe0\xe4\x8a\x95\x08\x61\x1a\x75\xfe\x79\x95\x26\xf3\x39\x65\xdf\x2e\x79\x92\x76\xf0\xa8\x43\x3f\x2f\x72\xc6\x8b\xce\x18\x47\x2e\x5b\xd6\x59\x0a\x9a\xc4\x59\x32\xe1\x9d\x96\x52\xa8\x4a\xab\x6e\x87\xb6\x76\x2e\x2e\x68\x71\x94\x4f\x97\x29\xed\x60\x95\xdb\x7f\xa3\x5f\x0a\x81\x26\x2e\x0a\xca\xf8\x31\xbd\xa1\xbe\x3d\x12\xe9\x2c\x33\xfa\x79\x01\x24\xa7\xed\x24\xf9\x6d\x5f\xb2\x38\x9b\x5c\x77\x6c\xda\xc2\x34\xbf\x8a\x3a\x4e\x8d\x0e\xa6\x08\xeb\x42\xce\xe2\x09\x8d\xfe\x10\x94\xa4\x3d\x1c\xb6\xbf\x59\xbd\x3f\x3b\x39\xee\xc9\x9c\xec\xc9\xec\x4e\xdc\xa6\xed\xe8\x9b\x15\x2d\xd1\x1f\xa8\x34\xe0\x90\x0a\x53\xb3\x41\x2b\xba\x3a\x7e\x7f\xdf\x91\xd5\x41\x85\x1d\x27\xe9\x92\xd1\x0e\xf4\x32\xa5\x0b\x46\x27\xe2\x48\xb8\xa8\xd2\x30\xdd\xc6\x2c\x8b\x3a\x6f\xf6\x3f\x9c\xee\xef\x81\x76\x74\xd8\xee\x6c\x52\xd9\x30\x99\x70\x92\x63\xda\x4b\x8a\x37\xe2\xcf\x1a\x06\x58\xd2\x2c\x5a\x42\x25\x89\xf0\x9a\x6a\x9d\x1c\x4a\xac\xa7\x05\xb5\x29\x0b\x4a\x48\x37\x56\x2c\x19\x7d\xb7\x4c\xa6\x20\x04\x5b\x7b\x1e\xf8\x94\x41\xe7\x67\x94\xc1\x37\xa0\x46\x6f\xb5\x98\x57\x37\x58\xbd\x0e\x58\xa2\x33\xb9\xca\x48\x7d\x46\xfe\xc1\x36\x7f\x19\xeb\xd0\x7a\x35\x99\xf9\x4d\xd9\x88\x8f\x5d\xa1\xbf\xdb\xad\xcc\x8e\x21\x7b\x03\xc7\x32\x0c\xd6\xba\x64\x91\x2d\x3a\xca\xc7\x84\x8d\x72\x37\xea\x2c\x16\xa4\x3d\x4d\x8f\x97\x69\x5a\x34\x40\x0c\x69\x0f\xc1\x04\x1b\x4c\xcd\xe0\xd0\xc1\x69\xe3\x23\x36\x96\x8e\x35\x9a\x08\x97\xda\x99\xd7\xef\x4b\x1b\x46\x19\xdd\x2d\x6b\x27\x59\x9b\x22\x65\x9c\x24\x8e\x2b\xf2\xfa\x80\xcb\x58\x5d\x72\x35\x3d\xb9\xd7\x51\xcb\xa8\xd5\xb4\x6c\xee\x8a\x7d\xd4\x93\x38\x85\xcc\x43\x58\x29\x46\xf8\x44\xef\x8a\xba\x8d\xe6\xbe\x8e\xc8\xdd\x29\x9f\x90\xbc\xba\x26\x0a\x41\xf5\x7c\x74\xf6\xf5\xf1\x05\x3c\xb4\x79\xde\xbe\xa4\xed\x05\xa3\x05\xcd\x78\xc7\xbe\x77\xc0\x76\x84\xaa\xd5\x63\xd7\xd4\x37\xf7\x9b\x3b\xa7\xdf\xe9\x83\x78\x54\xc1\x7b\x49\x93\xbd\xc8\x59\xd1\xcf\xd7\xf1\xb2\xe0\x74\xea\x4d\xac\x66\x36\xaa\x9a\x39\xac\x82\x8a\xb8\xd8\xc0\xbd\x5e\xcf\x23\xca\x9d\xce\x03\x0e\x51\x38\x27\xc6\x89\x94\x8f\xb2\xf1\x8e\xce\x44\x34\xca\xc6\x68\xd8\xe9\xb4\xd8\x26\xf9\xe3\x9b\x55\x52\x7e\xb3\xca\xcb\x3f\x4a\xa9\x2d\x62\x3a\xff\xe8\xef\x99\x7a\x03\xd8\xd6\x96\xf9\xdd\x6e\x3c\xea\x8f\x7b\x92\x71\xfb\xf6\xff\xfc\x5e\xfc\xe3\x9b\x6f\xd1\x36\x8a\x7b\xc5\x75\x32\xe3\x51\x4d\xed\xd8\x31\x1a\xab\x36\x93\x26\xe0\xf2\x11\x6b\xf0\x6d\xdf\x6c\xda\xb4\x9d\xcf\xda\xb1\x0e\xf7\x90\xba\x2d\xbf\x45\x02\x02\xe5\x60\x5a\x90\xa3\x98\x5f\xf7\xe6\x49\x16\x15\x78\xa9\x53\xd9\x3b\xbb\x7f\x2a\x3b\x9a\xc8\xdd\x3f\x55\x57\x71\x61\xbd\x5c\x27\xbd\x3f\xf3\x24\x93\x73\x95\x24\x4f\xbe\x60\xd6\x6d\x58\xfa\x8a\xf4\x65\x9d\xe3\x3c\xfb\xc0\x92\x79\xc2\x93\x1b\xba\xae\xfe\x53\x38\x61\xda\x1b\xc1\xd6\xe9\xf5\x7a\xa6\xda\x68\x63\x80\x37\xfa\x92\xa7\x93\x8b\x25\xd6\x99\x8e\xe5\x48\xda\x9d\xa5\xb6\xff\xff\x19\x10\xd2\xef\x76\xe9\x4b\xf2\xdd\xd3\xe7\x2f\xbe\xef\xff\x30\x18\x74\xbb\xf4\x15\xd9\xd2\x3f\x9f\x48\x52\x3c\xc9\xa7\xf4\x98\x5e\xc5\x02\x5c\xb2\x84\xfb\xc3\xfb\x34\x31\xb5\x64\x2a\x86\x1b\x4a\xa6\xa6\x96\xf9\x74\x6d\x6a\xad\x99\x72\x69\xda\xad\xab\xd4\xa2\xa1\xc3\x1d\x99\x99\x86\xf6\xdb\xc2\xd0\x84\x9a\xce\x92\x59\x54\x71\xf7\xb3\x49\x2b\x5a\x9a\x7c\x51\x71\xba\x8a\x51\x7f\xdc\x0a\x4f\xdc\x1f\x7b\xf2\x85\x5a\xfe\x14\x77\x37\xef\x2d\x58\x7e\x99\xd2\x79\xd9\xfe\x27\xfc\x2c\x16\x71\x26\xdf\x17\xca\x5e\xcf\x7c\xa0\xd9\xb4\xfc\xc3\x21\x58\xe7\x2a\x45\x71\x05\x3c\x18\x5b\xde\x5a\x8c\x16\xcb\x94\x57\xe8\x4c\x15\x06\xea\xc3\x40\x43\x18\xa8\x0b\x43\x40\xe3\x04\x33\xc2\x1b\xf1\x5e\xc5\xd6\x0e\x1d\xea\x38\x72\xea\xba\xff\xf4\x05\xad\x65\x93\x7d\xc6\xbe\xb0\x8d\x0c\x4f\x4c\x68\x8f\x2f\x17\x29\x25\xb4\x77\x43\x59\x32\xbb\x3b\xe3\x74\x51\x10\x60\xb7\xc4\x9f\x90\x05\x74\x7a\x4e\x0b\xae\x0b\xe0\xc1\xde\xfd\x00\xae\x32\xe7\xb9\xa4\x69\xe4\xe1\x17\x61\x2a\x9d\x5b\x09\xed\x09\xde\xe7\x8c\x8a\xed\xe1\x84\xc3\x55\xa4\x52\xed\x1c\x75\x3b\xcd\x18\xa5\x7f\xd1\x68\x34\x76\x43\xe1\x8a\xca\x3a\xf7\x5c\xbf\x65\xb8\x66\x6f\x8f\xf7\x2e\xae\x04\xa7\xb3\xb9\xc9\x2c\x5b\x9d\x54\x2b\xdc\xdf\x67\xde\xd3\x77\x1e\x85\xf7\xa3\x4a\xbe\x22\x83\xc3\x59\xd0\xab\xae\xb5\xea\xed\x52\xb2\x78\x11\x2a\xe3\xe9\xd4\x59\x0a\xc9\x92\xba\x8b\x6f\x6a\x8f\xe8\x98\x68\x67\x04\xf1\x53\x80\x39\x56\x9e\xb9\xa5\x8e\xbc\x81\x56\x35\x5d\xc8\xc2\xb6\xdb\xd3\x50\x4d\xac\xdb\xad\x16\xca\x92\x71\x29\xce\xbf\x5c\x8a\xc6\x59\x48\xef\xe0\xd1\xd8\x8f\xd6\x61\x32\x09\x14\xc9\x5f\xe1\xcb\xaf\xb4\x2b\x50\x51\xa9\x95\x0d\xe7\xff\xc7\xdc\x9f\xb6\xb7\x6d\xa4\x09\xa3\xf0\x77\xfe\x0a\x8a\x93\x66\xa3\x86\x25\x98\x94\xdd\x99\x0e\xe5\x32\x5f\xd9\x96\x13\xbf\x63\x59\x6e\x49\x4e\x4e\x2e\x86\xa3\x40\x44\x51\xac\x18\x02\x98\x42\x51\x1b\x89\xe7\xb7\x9f\xab\xee\xda\x01\x50\xf6\xf4\x33\x3d\xd7\xf9\x42\x02\x85\xda\x97\x7b\xab\x7b\xa9\x39\xf5\xa8\x3b\xe5\xd5\x5a\x9e\xa1\x30\xdc\x33\x4e\xc2\x81\xbd\x92\xc6\x39\x2d\xb7\xcd\x2a\x54\x98\x72\x59\xed\x0a\x4c\xc5\xfe\x68\xe6\x9c\xa9\x50\xf5\x9d\x56\xb9\xa8\x5b\x51\xb5\xd6\xff\x92\xb6\x54\x48\x67\x95\xf5\x66\x69\x46\x6f\xe3\x94\x05\x33\xd0\xb0\xe5\x73\x59\xd4\xfc\x7f\xab\xfa\xc4\x6d\xc2\x37\x92\x46\x1b\x27\x95\x3e\x14\x1d\x73\x74\x15\x1e\x23\xaf\x14\xb4\x2d\x71\x26\x29\x22\x6d\x72\xdb\xdb\x33\xdb\x44\xa9\xa9\x4e\xd4\xdf\x98\x92\x57\xbf\x5f\x5e\x4a\x8e\xe8\xbb\x0d\x20\xef\x45\x56\x14\x3c\x82\x47\x9e\xe4\x69\x71\x13\xa1\x7f\x7f\x9b\x08\x49\xe8\xdf\x45\x20\x32\xfe\xdd\x1d\xb1\xb5\xe7\x6b\xdc\x20\xb9\xe7\x7d\x8f\x73\x9d\x7b\x47\xcc\x62\xc1\xad\x97\xc1\x3b\x13\xff\xc7\x4b\x5e\xb6\x27\x7b\xb1\x8b\x22\xba\x25\x43\xf4\x72\x38\x91\x7d\x18\xa7\xc1\xa9\x5d\xd5\xb3\xbd\x72\xbd\x9b\xc8\xaa\xc7\x73\x50\xd3\x35\xb0\x2f\xc3\xd3\x11\x96\x24\x91\xd1\xbb\xa1\xe4\xd5\x2a\x92\x8d\x69\xdf\x65\x37\xa4\xec\xd4\x01\xdc\x0d\x6e\xc0\x40\x4d\x2f\xd4\x40\xa5\x4d\xf5\x01\xab\x4d\x34\xf0\x55\x25\xd4\xb9\x71\xed\x97\xa5\xe0\x3e\x4b\x8e\x7b\xff\x3f\x2a\x01\xf9\xb3\x55\x91\x3d\x48\x1e\xe6\x7f\x9c\x4b\xbf\x5a\xdf\x78\x94\x2e\xda\x24\x83\x81\x22\x9d\xc0\xbb\x1e\x39\xc6\xb4\xcd\xca\x87\xdc\xdb\x74\xf9\xe6\x95\xf7\x48\xf1\x65\x34\x04\x5c\xdd\xf4\xe6\x07\x33\xca\xca\x37\x12\xfa\x5c\x24\xd7\xd7\x3e\x85\xbe\x11\xc9\xf5\x98\x56\x0e\x5c\x13\x42\x6e\xab\x20\x3f\xb9\x56\x2c\x98\x71\x77\x07\x94\x95\xe7\xea\x8d\x64\xc0\x70\x73\xf1\x70\x91\x5c\xbf\x2b\x38\x39\xc2\x70\xe1\x20\x1f\xbf\xa8\xc7\x13\x2a\x12\xf9\xfa\x46\xa2\x45\x27\x2d\x7e\xcb\xd2\x37\xcb\x24\xbf\x0e\x71\xea\x89\xe2\xac\xd5\x16\xe0\xc9\xfc\x0b\x28\x82\x91\x8f\x7a\xf9\x5d\xca\x7b\x4d\x74\xae\x6f\xa0\x5b\x1f\xa0\xd7\xf0\x5d\x6e\xa3\x96\x59\x52\x7c\xef\x1f\xb2\x76\x49\x42\x7c\x69\xf2\x81\x9d\x8f\x91\xd2\x24\xa7\xe0\x6b\x47\x69\xc1\x09\xf2\xde\xd3\x00\x97\xa5\xc1\x71\x65\xc8\x64\x29\x2c\xf9\xb3\xd2\xac\xca\x49\x84\xc8\xab\x3f\xbd\x4b\xd7\x7c\xfa\x6e\x46\x38\xce\x15\x35\xd5\x6c\xfd\xad\x02\xd4\x7f\x20\xfc\x87\xe2\x7f\xeb\x9d\xf8\x83\xbc\x35\x8e\x6e\xdd\xea\x9c\x84\xfd\xb0\x6e\x2b\xf7\x5a\xa8\xd1\x77\xc0\x20\x57\x60\x6b\xf9\x4b\x44\xa7\xef\x66\xde\x76\x01\xe3\x37\xf2\xb3\xab\x99\xfc\x82\xa9\x8d\xe9\x4f\xfe\x34\x33\x46\xd3\xb7\x89\x48\x5a\x87\x2e\xf7\xe0\x2f\x34\xf9\x72\x92\xac\x70\x4e\x7a\x26\x8b\x43\xa3\xe6\x3a\x6a\x73\x4d\x85\xa0\xdc\x5d\x4a\x1a\xfd\x50\x33\x57\x1f\xa2\x2f\x11\xc3\x14\x21\x9c\xf7\xfb\x7b\xa0\x93\x1f\x31\x34\x89\x0a\x22\xd4\xfd\x13\x33\x6e\xc3\x18\x2e\x10\x1a\x17\x84\xab\xc8\x4e\x08\x17\x15\x2e\x6b\xb5\x0b\x9c\xa3\xcd\x11\x5c\x73\xe9\x52\x32\xa5\xaa\x02\xf9\xd2\xc9\x5a\x80\x74\xa6\x7c\x9f\x1f\xad\x45\x21\xf4\x26\xba\xe0\x49\x5e\x26\x50\x8f\xa4\x6d\xd7\xf9\x53\x9f\x4b\x2a\x76\x7c\x3c\xce\x6f\x09\x8d\x7f\x3e\xfd\x70\x74\xf1\xfe\xc3\xb1\xf7\x78\x79\x71\x24\xc9\xb5\x9f\x8b\x2c\x11\x4c\x9d\x55\xea\x9c\x30\x12\x6a\xfc\x7b\x12\x77\xc0\x08\x8d\xdf\x7c\x3e\x3b\x3b\x56\x96\x82\xf2\x4d\xe1\x66\xfd\x49\x5b\x11\x7a\x8f\x26\xdb\xe9\xc9\xa7\xcf\x17\xb2\xf1\xa3\x0f\x1f\x4e\x7f\xb9\x7c\xf3\xeb\x9b\x0f\xc7\xe7\x01\x2d\xa8\x1c\xb7\xfe\x8b\x70\x1b\x2e\xbe\x5e\xb1\x44\x13\xb2\xf2\xde\xe5\xe5\x8f\x1f\xde\x9f\x9c\x1c\x9f\x5d\xfe\x7c\xf4\xe1\xfd\xdb\xa3\x8b\xd3\xb3\xcb\xf3\x5f\x4f\x5e\x9f\x7e\xb8\x7c\x77\x7a\x76\xd9\x1b\xd0\xce\x57\x96\x43\xfc\x37\x57\x97\xe3\xaf\x2d\x60\xde\xf1\xa6\x77\xd8\x71\x6b\x33\xea\x78\x6b\xfb\x31\xf9\xa8\x9d\xac\x8e\x34\xbf\xcf\xa2\xde\xc5\xd1\x8f\x97\x7a\xfe\x7b\xc8\x21\x79\xdf\xe6\x85\x4e\xcb\x59\xe4\x61\xda\x75\xe8\x26\xe1\x15\xd1\x19\xdc\x42\x96\x50\xff\x1c\xa7\xa6\x85\x8b\x5f\x3f\xc9\xea\x6b\x0b\x3c\xd7\x7a\xa1\xcb\x56\x3d\x64\x4e\x6f\x59\x29\xc7\x3f\x72\x3e\x3d\xdf\x2c\xa9\x3c\xe8\x7e\x92\x82\x02\xc6\x17\x6f\x69\x34\xb0\xad\xea\x67\xb9\xbe\x0a\xe3\x5e\xaa\x84\xd7\xeb\xc5\x82\x72\x05\x5b\xec\xb7\x69\x3a\x23\xb4\x82\xd1\xa8\x00\x6a\xae\x49\x5f\xcf\x69\xcf\x92\x7b\xae\x3d\xd4\xe8\xe3\x60\x90\x58\xef\x99\x74\x8f\x90\xc4\x38\x4e\xf2\xfa\x38\x6c\x0e\x2d\xe9\x68\x0d\xe9\x8d\xea\x28\x04\xbc\x52\x33\xe1\x5f\x48\xda\x98\xbf\x6c\x11\x01\x95\x19\xb3\x52\x51\x9b\x02\xa1\xf0\xaa\x52\xb4\x48\xa6\xc4\x34\x9f\xc1\x38\x3b\x5c\xcb\x6f\x92\x7b\x15\x7e\x0e\xbc\x75\x2a\x31\xaa\x50\x39\x0a\x4b\xdc\xd6\x67\x6e\xe2\x15\xe6\xb5\x25\xb1\xe6\x3f\xed\xd3\x1d\x94\x2c\x6c\x18\x38\xbb\xa0\xdc\xa1\xb8\xc6\xc2\x5a\x81\x6e\x58\xc6\xd8\x00\x58\x20\x15\xdc\x42\xe2\x9c\x88\x4e\x2e\x49\x88\x09\xf7\x37\xc5\x38\xe2\x6d\x7d\x84\xa1\x63\x97\xd3\x1a\x49\x18\x60\xa7\x5c\x0a\xdb\x4d\x3a\x18\x24\x55\xa5\x5c\x84\x2e\x2d\x40\xec\x78\xb0\x71\x01\x67\x62\x45\x96\x0e\x88\xba\xe3\x76\x53\xa7\x97\x46\xf2\x38\x39\x68\xbb\x82\xc2\xb7\x44\x7d\x7c\xee\x1d\xd4\x6b\xff\xa0\x02\x81\x54\x03\xaf\xb7\xfa\x90\x5d\x6d\xd4\xbe\xd6\x79\x3f\x26\x1f\xab\x2a\x04\xef\x57\xd0\xc8\x03\x34\x72\xd5\xa9\x61\x82\x07\x5d\xcd\x65\x58\x4d\x02\x31\x74\x1c\x98\xbf\x84\x3a\xee\xa0\x8e\x4b\xd7\xcb\xe3\x50\xc6\x0e\x46\xc3\x43\x9c\x13\x77\x9d\xf5\x32\x77\x57\x5a\x4c\x5f\x69\xed\x11\x72\xdb\xef\x0b\x73\x9b\x6a\x56\xfd\x3e\x12\x1e\x34\xba\x0f\x82\x48\x98\x40\xb1\x61\x18\x89\xdb\x5a\xdc\x08\x3a\x1d\xce\x3a\xa9\x0a\x82\x3f\x76\x62\xff\x65\x74\xe0\x04\xf3\x66\xe5\x29\x16\x30\x46\x0f\xb1\xdd\xc1\x20\x4f\xc9\x4d\x84\xf0\x39\xfc\x5e\xc8\xdf\x4e\x16\x9d\x22\xbc\x90\x3f\xf0\xb4\x8a\x4e\xf1\x71\x34\x3d\xc7\x17\x33\xa4\x93\x16\xd1\xb9\x7d\xba\xf0\xb2\x5d\xd4\x53\xa1\x85\x13\x9f\x50\xac\x20\xe9\x93\x4f\xcb\xb8\xf9\x3d\xf2\xb7\xfa\x27\x13\xc2\xde\xf7\xf6\xeb\xe9\xf0\x82\x9f\x1c\x3f\xca\x42\xbf\x1f\x81\xfa\xc4\x09\x58\xb8\xd9\x4a\xdf\x38\x16\xf9\x53\x18\x15\xbf\xeb\x3c\xbc\xf6\xfb\x91\xb0\x3e\xbd\x3f\xc5\xda\xf5\x0e\x42\x58\xb8\x8a\xbe\x84\x37\xf7\x9e\x6f\x53\xd9\xc4\x98\xdb\x78\x5f\xa2\xd9\x00\xeb\xf7\x23\x06\x73\x9c\x6b\x02\x89\x81\xb6\x9e\xda\x8d\x67\x6d\x72\x0b\x91\x5c\xab\xb0\xf9\xe7\x54\x38\xa0\xa4\x04\x17\x5a\x20\x63\xf3\xc5\x2a\xc1\xcb\x46\x2b\xcd\xf1\x68\x1c\x20\x73\xf9\xc0\x5f\x5d\x4d\x97\xec\xd1\x0a\x3a\x6f\x65\xf2\xa8\x91\x6c\xab\xec\xd8\x0b\x21\x2b\x77\xf2\x78\x4e\x73\x2b\x84\x10\x3e\x06\x15\x66\x99\x5b\x11\xda\xf8\x2d\xc8\xd1\xcd\x34\x7e\x8c\x6a\xb4\x38\xbd\xeb\x9e\xb9\x59\x7e\x6f\x65\x28\x7f\x98\x86\x2c\x61\xee\xf8\x38\x1f\x91\x83\x0e\xa8\xe1\x3c\xfa\xfd\x3f\xf4\x64\x40\x0f\xde\x49\xd4\xfd\xe6\xe8\xcd\x4f\xc7\x97\xff\x79\xfc\x6b\x4f\x6d\xc8\x47\x99\xf8\xee\x63\x0f\xe1\xcf\xf2\xe9\xc3\xd1\xf9\x85\xa4\x82\x3e\x1f\xf7\x10\x7e\xad\x71\x7d\x0f\xe1\x9f\xe4\xe3\xf9\xc7\xa3\x4f\xe7\x3f\x9d\x5e\xf4\x50\x87\x45\xbd\xb7\xc7\xaf\x3f\xff\x78\xf9\xe1\xe8\xf5\xf1\x07\x9f\xcc\xf8\xd9\x6d\xb1\xcd\xf4\x71\x36\xa6\x78\xfa\x79\xa6\xdd\xb5\xe1\xe9\x6b\xf7\xf8\xd3\x6c\xbc\x3f\xaa\xdc\xad\x99\xad\xe1\x4f\x59\xc3\x77\x92\xb3\x35\x1c\x81\xee\xab\x20\x74\xfa\x38\x83\xf0\x3a\xaf\x67\x12\xd4\x4c\x7f\x0a\xfd\x5f\xf3\x7e\x7f\x0d\x51\x0a\xd0\x07\xc9\x0c\x01\xde\xb3\x2c\xd6\xf4\xf3\x8c\x08\x8f\xc5\xe1\x92\xcf\xc2\xb2\x2a\x49\x8e\x4d\x7f\x9a\x91\x2c\xe2\x08\x7f\x00\x25\x69\x0b\x55\x3e\xcf\x5c\xc7\x7e\xb1\x1d\xd3\x6c\x8b\xd7\xaf\xd7\x76\x2b\x5c\x07\xb0\xec\xbb\x08\x6d\x86\x30\xfd\x3f\xfa\x47\x9f\x2d\xa2\x36\xfa\xf4\x3a\x2b\xae\x92\xec\x62\xc9\x4a\xb3\xe5\x5c\x4a\x67\x47\x99\x92\x66\x0b\x93\x5b\x3e\xef\xca\x77\xc7\xf2\xb4\xb8\x33\x39\xd5\xdb\xae\xbc\xaa\xd5\xb0\x0f\x0d\x49\x7f\x6f\x0d\xca\xce\x5d\x51\x74\xb3\x42\x12\xbe\x3a\x63\x57\x5f\xf3\xa2\x2a\x42\xf8\x57\x52\x44\xbd\x26\x79\x7d\x76\xfc\xe3\xfb\xf3\x8b\x33\x10\x93\xf5\x90\xa5\xc0\x7e\x9c\xfe\x3a\x6b\xde\x48\x5e\x2c\x69\xf7\xf7\xa6\x2c\xe5\xf7\x6e\xc6\xae\x78\xc2\x1f\xba\xcb\xa4\xec\x5e\x51\x9a\x77\x59\x3e\xcf\xd6\x29\x4d\xbb\xe2\x8e\xcd\xa9\x64\x41\xe5\x91\xed\x26\xab\x55\xc6\xe6\x40\x94\xc7\xdd\xf7\xa2\x3b\x07\x27\xb3\x57\xb4\x9b\xb2\x05\x58\x86\x8b\xee\x2d\xe5\x12\xe9\x97\x5d\xc9\x3a\x2e\x69\x77\x95\xcc\xbf\x24\xd7\x14\x77\x0b\x0e\xef\x65\x72\x43\x4d\xa6\x7a\x33\x57\x0f\xdd\x1b\x56\x8a\xe4\x0b\x8d\xdb\xfb\x99\x42\xd0\xf8\xb2\x5b\xe4\xdd\x65\x72\xcb\xf2\xeb\x6e\xd2\x2d\x59\x7e\x9d\xd1\xee\xbc\x58\x3d\xd4\xda\x94\xdd\x5e\x97\xb4\x9b\x88\x6e\x92\x3f\x74\x05\xbb\x81\xa4\x24\xf7\xc7\x81\xbb\xf4\x56\x0e\x18\x4a\x3e\x74\x13\x4e\x1b\xdd\x8c\xbb\xbf\x16\xeb\xee\xcd\xba\x14\xdd\x94\xa6\xeb\x15\xed\x3e\x14\x6b\xde\xbd\x5a\xb3\x2c\x95\x8b\xa6\x2e\x96\xa1\x58\xba\x56\x15\xdb\x3e\x94\xb2\xc5\x82\xa7\x94\xcb\x9c\x2b\x2e\x1b\x13\x6a\x32\xe1\xfa\x25\xee\xa1\x8e\x5c\x2c\xb2\xd7\x94\x75\xdd\xfc\x0b\xf5\x4e\x6c\xa4\xaa\xd3\xd5\xae\xbb\x44\xb8\xb9\x1b\xfd\x4d\x5f\xbd\xec\xca\x36\xfa\x5e\x65\xa8\x7b\x87\x6a\xcd\xfe\x92\xc0\x95\xe3\x77\xb7\x43\x42\xe3\xef\xc4\x08\x7e\xe1\xb9\x84\xe7\x52\x3d\xaf\xe4\x2f\x4f\xe4\xef\x02\x9e\x57\x73\x42\xe3\x0b\x7a\xb3\x2a\xe4\x36\xb5\x4d\xd0\xf8\x3c\xb9\xa5\xd6\xed\x94\xe1\x8a\x55\x01\xf8\xe7\x09\xf0\x79\xb2\x9a\x83\x8e\xaa\xfa\x79\x47\x35\xf4\xa2\xa3\x9a\xfd\x5b\x47\x75\xe2\xfb\x8e\xea\xd2\x7f\x18\xae\xba\xa3\x3a\xfa\x77\x5c\x6f\x46\x60\x7f\x6c\x74\x4a\x63\x59\xdd\x8c\xf4\xca\x61\x0f\xc3\xeb\x88\xfc\x4d\xbe\x8e\x7a\x55\x24\xb6\xdb\xa8\x51\x01\xd9\xc0\x62\xb7\x0c\x89\x37\xea\x96\x5d\x9b\x91\x9e\xd0\x75\xcb\x1e\xca\x57\x59\x37\x87\xba\x5b\x2a\x81\xfa\xeb\xfb\xe9\x8e\x71\xba\xbf\x28\xf8\x4d\x22\xbe\x75\x63\x59\xe8\xeb\x47\xa8\x73\x22\x1a\x9b\x54\xe7\xb2\xfa\x7d\x31\x1d\xce\x24\xda\xaf\xaa\x7f\x6a\x73\x82\x20\x80\x95\x56\x03\xb4\x6d\x37\x8d\x5e\xc8\x06\xa6\xc3\xd9\x76\x3b\xfa\x9b\x7d\x3c\x38\x70\xa9\xdf\xbb\x54\x97\xf7\xe0\xb9\xcb\xf0\x1f\xf6\xd1\x7c\x57\x9b\xd9\x44\xbc\x6c\x6b\xf6\x60\xe4\xaa\x1a\x06\xa5\x7e\xa2\xd9\xaa\x7d\xe3\x87\xf3\x43\x51\xbf\xff\x3c\x2c\xfa\x23\xdc\xf6\xb1\xf2\x9d\xa7\xd5\xea\x0b\x79\x38\x11\xd1\xe8\x00\x75\x1a\x79\xb8\xf1\xdd\x1f\x3d\xd7\x9f\x65\x55\xb9\x59\xfb\x92\xdd\xac\x32\xba\x9f\x16\x37\xcf\xd2\x62\x0e\x63\xfa\x17\x02\x15\xcd\x36\x84\x37\x95\x3e\x99\x66\x4d\x47\x43\x2e\x7c\xa7\xc3\x5c\xb6\x88\x58\xa0\x2f\xaf\xc8\x6a\x16\x4b\x3c\x99\x69\xd5\x78\x17\x12\x50\x53\x1b\xfb\xa3\xca\xbf\xf4\x74\x02\x99\x16\xd5\xfc\xd1\x0f\x3f\xfc\xf0\xec\x7e\x29\x6e\x32\x65\x28\x21\x62\x51\x7c\x28\xee\x8c\x9e\xfd\x58\x04\xd7\xa3\x58\x38\xeb\x69\xae\x5f\x6b\xf1\xea\xe1\x12\xcd\x06\xbe\xf6\x6f\x4e\x5b\x4b\x1f\x42\x4c\x5a\xd6\xef\x53\xa3\xb5\xcd\xf0\xc8\x23\x7b\x92\x88\xaa\xb0\x4c\x38\x71\x57\x9c\x96\xbc\x48\xfa\xfd\x28\x21\xbd\xde\x40\x39\xcb\xda\x38\xfd\xfe\x71\xa9\x4d\xf0\x4a\x50\x7a\x2c\x09\xf5\x94\xff\xe5\x9a\x58\x59\x46\x46\x78\x54\xe2\x1c\x17\x3a\x14\xf1\x1e\x21\x96\x60\x91\x0b\x19\x81\x1f\x21\xa5\x62\x9e\xa0\x4a\xbb\x4b\xdf\xd8\x15\x18\x17\x58\xae\x90\x73\x30\x5c\x8c\xd9\xa0\x37\xee\x0d\x54\xba\x59\xb9\x71\x8e\x57\x9c\x2e\xd8\xfd\x98\xe1\x72\x45\xe7\x6c\xc1\x68\xea\x5c\x9d\x24\x95\x71\xe6\x50\xb6\x4a\xbc\xf2\x22\xa5\xde\x0d\x69\xe6\x99\x14\xb4\xfb\xd5\x66\x8b\xc8\x65\x76\xb7\xb6\xb2\xe0\xc8\xea\xdf\x50\x32\x34\x97\xa8\xb2\x01\xdf\x58\xd8\x1a\x59\x52\xad\xc4\x0e\x31\x59\x65\xee\x40\xad\xcc\xd3\xe4\xd7\x1d\x71\x61\x6d\x4c\xcf\xe8\x21\x7d\xc9\xa1\x1e\xef\xce\x79\x4a\x67\x81\xa8\x46\x67\xae\x98\xf6\x39\x66\x51\xa6\xe2\x95\xe0\xe3\x44\x17\x54\xb6\xc1\x95\x2f\x91\x74\x2c\x64\xfd\x72\x84\x77\x46\x35\xdd\xda\x88\xd7\xad\x50\x34\x10\x51\x8c\x3e\x8d\x8b\xbb\x9c\xf2\xb7\x1a\x5e\x60\x57\x54\x3f\xca\x55\xc7\x9e\xa6\x23\xe6\xa8\xd9\x46\xee\xef\xb7\x9a\xe6\x49\xa0\x88\x2b\x3a\x81\xe7\xbd\xaf\x40\x04\xde\xd8\x7e\x1e\x30\x50\x1b\x51\x41\x8c\x70\xf3\x85\x50\xc4\xee\xc4\x58\x3d\xb4\x6d\x48\x6d\x01\x52\x59\xd1\x0a\xaf\x22\xff\x0c\x39\x1d\xad\xbc\xd2\x02\x05\xa7\x85\xc9\x42\x53\xe4\x82\x30\xb3\x9f\xd8\x21\x2a\x08\xab\xd9\x00\x6a\x43\x24\xd0\x4c\x64\xf1\x3c\x2b\x72\x0a\x1a\xe6\x7b\x43\xc9\xcf\x93\xc2\xb5\x14\x0a\x9a\xe5\xa2\x03\x8b\xee\x5f\xec\x28\x0f\x0f\x92\xed\x1e\x05\xf6\x68\xfe\x99\xee\x36\x0b\x34\xbb\xed\x85\x58\x32\x56\x32\x1d\xff\xbb\xe2\xc3\xa9\x96\xd0\x9a\x04\xad\x95\xcf\x70\x42\x58\x87\xd5\xcd\x1b\x09\x37\x7a\xff\x7c\xe2\xdb\xe6\x13\x36\x0e\xac\xf4\x08\xeb\xf8\x16\x0a\x09\x68\xe3\x59\xab\x42\x22\x70\x41\x12\x9c\x90\x24\x38\x8b\x45\x68\x70\xee\x59\x18\x78\x7d\x2c\xc6\x0d\x9b\x4b\x52\x80\x39\x15\xcc\x83\xb5\x33\xf7\x9a\xeb\xf7\xe7\x91\xff\x8e\x05\xea\xf8\xef\x60\xeb\xde\x1c\xa8\x68\xef\x0e\x9f\x04\x93\x28\x6a\x03\x17\x1d\xdb\x6d\x7f\x6a\x45\x4b\xb7\x45\xa5\x90\x88\xab\xd7\xe6\x1f\xf3\x7a\xee\xd0\xb7\x8e\xc2\x8a\x3b\xf6\x4e\x30\x36\xed\x16\xa0\xde\x76\x8b\xb7\x00\x48\x6a\x1f\x64\x5e\x1b\x64\xde\x3e\x48\xde\x32\x48\xae\x06\xd9\xe8\x41\xd8\x38\xaa\x69\x50\x18\xf5\xba\x4b\x70\xdc\x26\x07\x52\x3a\xa1\x1e\x08\xe6\x2c\x16\x31\x78\xa7\x76\xd3\xe2\xc2\x21\x02\x00\x0e\x40\xa2\x41\x44\xe6\x68\x19\xd7\x1b\x06\x38\x1a\x9f\x42\xce\x5e\x51\x47\x4b\x0c\x48\x19\x1d\x31\xb0\x31\xd7\x90\xd8\x3a\xdd\x4b\xed\x1d\xad\x99\x5a\x3f\x95\xde\xd5\x49\x98\xe6\x01\x65\x2d\x00\xf4\xa6\xc8\x28\x5d\x48\x44\xaa\x0d\x00\x6b\x0a\x3a\x66\x84\xca\xc9\x85\x2d\x18\xaa\x28\xf9\x93\x5e\x97\x59\x4a\xd4\xd0\xcc\x06\x98\x47\x79\x55\x97\x84\x6b\xe5\x40\xa0\xc3\x84\x2a\x16\x31\x06\xf1\x06\x45\x95\x0f\x33\x5d\xa6\xb5\xf6\x4a\xad\xad\x13\xa9\x8e\xea\xa5\xdd\x5a\xfb\x77\x73\x36\xa7\x90\xd9\x42\x6b\x64\xeb\x5f\xdc\x3a\xc2\x36\x15\x1d\xa5\x7f\x24\x73\x9a\x0b\x65\xfb\x6c\xe5\xca\x70\x01\xab\xb0\x67\x73\xb7\xe0\xfd\x11\xee\xfd\x1b\x4f\xee\x7a\x58\x68\x7d\xab\xba\xdb\xe7\xde\x15\x74\x10\x74\x27\x7a\x63\x4d\x4f\x78\x00\x47\x99\x74\x79\x8e\x8e\x7b\xc9\x42\x50\x1e\xe4\x37\x7e\x45\x3d\x00\xee\xe5\x57\x0d\xd0\x3c\xf5\xb2\x03\xb8\xae\xd7\xe9\x65\x69\xf6\x20\x00\xb7\xaa\xa4\xb9\x2a\x68\x08\x9b\x58\x0e\x82\x9b\xee\x0a\x14\x74\x8b\xbc\x87\x2a\x87\x50\x9a\xae\x5f\xe8\xa0\xd7\xe5\xf4\xcf\x35\xe3\xb4\xec\x26\x5d\xd7\x74\x0f\x75\xd6\x11\xc7\x0c\xe7\x60\x44\xe7\x99\x57\x9a\x63\x9e\x47\x8d\xc3\x85\x9d\x3c\x9e\x45\xb5\x8d\xaf\xed\xd3\xc2\xda\x3e\x9e\x07\xbb\xa3\x59\x08\x4c\x0c\xeb\xe6\x9d\x68\x93\xe8\x90\x55\x06\xf6\xe1\xf6\xce\xd4\x0b\xab\xe6\x34\xd1\x36\xcd\x31\x9b\xb5\x19\x37\x60\x1d\xe7\x31\x27\xd4\x9a\x72\xf6\xc6\x3d\xc7\x72\xe8\x1b\x0a\x49\xcf\x29\xd5\xf1\x21\xce\x11\x16\xf6\x35\x1f\x8c\x10\xc2\x53\x8e\xc5\xac\x8a\x04\xea\x24\xf6\x78\x60\xa6\x8c\xdd\x43\x53\xcc\xaf\x4d\x69\xb1\x73\x2e\x6b\x35\x99\xe9\x6c\x16\x30\x41\x83\xba\x69\x31\x97\x5c\x4c\x3d\x44\xb5\xdd\xbd\x26\x13\x9c\xa1\xf6\x60\x5b\x16\xc0\x41\xde\x25\x4d\xd2\x5a\x86\x5a\xf1\x7a\xed\x57\x45\x5a\xd7\x40\xac\x97\x70\x4d\x28\x8d\x1b\xcf\x36\x3c\xb8\x94\x84\x79\x1d\x61\x1a\x9a\x69\xab\xe9\x79\x9a\xed\x44\x61\xcd\x66\xe6\xb4\x09\xc5\xb7\x71\xac\x5e\x93\x63\xd1\x69\xeb\x98\xa2\xbb\xc0\x65\x9e\x52\x48\xa3\xf7\xa2\x06\x60\xbd\xfc\xcf\x71\xef\xdf\x04\xbd\x17\x3d\x4c\x0d\xc4\xaa\xc2\xa8\xa7\xad\xc5\xfe\x8e\x7b\xff\x36\x57\x19\x9a\x25\xcf\x92\x3b\x09\x35\xcf\x69\xc3\xa2\xcb\x55\xe0\x20\x65\xbd\xb4\x01\xa6\xef\x78\x72\x1d\xee\x04\x7f\x98\xb2\xb8\x59\xc1\xfd\x85\xce\xda\xf3\x8d\x17\x90\xb9\x89\xf6\xee\x10\x14\xea\x52\xf5\x40\xd6\x1f\xbc\x6a\x7a\xdf\xb4\x86\xd8\xdc\x92\x52\x3c\x1a\xca\xcc\x37\xd9\x37\x16\xe4\xae\x20\xee\xc9\x09\xfa\xc6\x72\x79\x50\xee\xf8\xe8\xed\x37\x96\x63\x7e\x39\xb0\xf7\xff\xa6\x72\xce\xd5\x9c\x8f\x78\x21\x10\x64\xc0\xbd\x80\x4d\xa3\x97\x20\xea\x09\x5c\x22\xd3\x8e\x93\x15\x2d\xb4\xa8\xea\x2a\x99\x7f\xb9\x5a\xf3\x9c\xf2\x7f\xa1\x80\x0a\x44\xf6\x9f\xb2\x44\x2c\x0a\x7e\x03\x96\x7f\xad\x22\xab\x92\x8a\x0b\x76\x43\x8b\xb5\xc0\x1c\x54\x02\x37\x55\x4d\x8d\x9e\x2d\xa2\x16\x55\xb9\x4f\xbc\xb8\x61\xa5\x0d\x3d\xa6\x5f\x63\x4e\xcb\x22\xbb\xa5\xd6\xc7\x9d\xac\x91\xc7\x62\x49\x41\xb7\xbe\xbd\x2a\xa3\xfb\x74\x7a\x55\x52\x7e\x4b\x2d\x77\x3f\xd4\x0b\x58\xff\x2e\x29\xf9\x82\x98\x4d\x1b\xd7\x0e\x79\xaf\xe7\x39\x2b\x2d\x54\x91\xa8\xc0\x9b\xf9\x32\xe1\xc9\x5c\x50\xfe\x36\x11\x89\x9a\x24\xd9\xb9\x28\x27\x83\x41\xfe\x97\x03\x5c\xc4\x69\x22\x40\xc0\x94\x4b\xf4\xeb\xba\x2f\x54\xd0\xb9\xd0\x74\x40\x4d\x1e\x37\xfa\x82\x6e\x16\xc7\x00\xd2\xc8\x2b\x97\xa2\xf4\x2d\xc1\xb8\xcf\xe4\xa1\xe4\x95\xff\x0e\x9e\xd2\x8b\xbb\xb1\x6c\xcd\xe9\xa4\x41\x90\xd3\xb1\x9c\x37\x55\xf8\xa3\x7c\x15\xea\x4c\x17\xe4\xd9\x6f\xe9\xe0\x59\xc7\x97\x9d\x59\x3d\x76\x6d\x12\xd0\xa9\x5b\x7e\x48\x66\x80\x12\x42\xb7\x5b\x67\x3f\x20\xd3\x8a\x58\x50\xf0\xe5\xee\x39\xb5\x0d\xcc\x23\x8a\x1c\xe8\x96\xed\xd6\x3e\x5e\x80\x87\xf7\x7e\xbf\x96\x30\xb5\xef\x27\x54\x2c\x8b\x74\x16\xca\x6d\x6a\xe2\xd0\xfd\x91\x8e\x8f\x6c\x9d\x28\xb0\x97\xc5\x21\x1b\x90\x17\x88\x2d\x22\x3e\x65\x33\x45\x44\xf3\x29\x1b\x8c\x66\xca\xd5\x53\x4e\x98\x0e\x01\xfc\x84\x9c\xa0\xd6\xc4\x41\x4b\x13\xdf\x3f\xd9\xc4\xfe\xc1\xce\x46\xe6\x3a\xa4\xd0\xd0\x6f\x06\xa2\x28\x0c\xc3\x28\x0a\xc6\x31\x15\x84\x51\x18\x3c\x1f\xf0\x19\x4e\xc8\x46\xb9\xc6\x1f\xcb\xa4\xa1\x4c\xba\x81\x79\x82\xf7\x11\x64\xe1\xd7\x25\xbc\x1d\xc8\x37\xe5\x20\xd8\x32\x73\x45\xbf\xdf\x83\xa4\x1e\xcb\xbb\xc5\xa4\x50\x36\x04\xe3\x5e\xaf\xea\xe4\xc6\xe3\x7d\x4b\x97\xd3\x9a\x05\x39\x50\xf0\x72\xde\x8d\x46\xd8\xfe\xf7\x30\x2d\x88\xbe\x22\x62\xca\x09\x1b\x44\x39\x89\x8a\x7d\x86\x9e\x7d\x8f\xf6\xf3\xbf\x7c\x3f\x9b\x30\xc2\x07\xdf\x8f\x0b\xbb\xe1\xbb\x90\x95\xcd\x26\x6c\xf0\xfd\x98\xed\xe0\x2a\x05\xd9\x54\x18\xee\x67\x14\x5f\x79\xf9\xe7\x9a\xae\xe9\x6b\xca\xf2\x6b\x90\xeb\xd3\xd4\x5a\x95\xa8\x69\xf9\x87\xfc\x5e\x86\xa1\xe1\x55\xb8\x5a\x23\xff\x84\x1a\x6c\x29\xb0\x73\xa7\xc6\xb5\x23\xa8\x4f\x1a\x4e\x4f\xdd\x2a\x9f\xea\x44\x5e\xc1\x4c\xbd\x53\x42\x56\xb6\x88\xb4\xa8\x51\xd5\x67\xb5\x85\x3c\x3b\x10\xf5\x65\xfa\xfc\xdf\xe9\xe0\xc5\xcc\xb9\x3d\x12\x7a\xca\xb5\x50\x32\xd3\xb6\x2d\x46\x37\x75\xa3\x58\x8f\x71\x8e\x81\xbf\x30\xe1\x21\x4c\xe7\x3a\x8d\xb1\x2a\x9b\xdf\x08\x61\xab\x4a\xd8\x9c\x24\x6b\xc2\x19\xed\x9a\x45\x2f\xbd\x36\x4f\x5e\xe4\xd2\xbc\xdf\xcf\x23\xe3\x48\x62\x47\x4d\x1d\xb6\x88\x8c\xef\xd2\x57\x43\xe3\xb3\xac\x8c\x9a\x53\x8a\x3a\x9c\x24\x13\xbd\x42\xb7\xc5\x17\x70\xf3\x7f\xaa\xce\xfe\xd8\x4b\x76\x76\xa4\xc4\x2d\xe7\x61\xf6\xd2\x7a\x48\xcd\xf4\x71\x77\x5f\x07\xe4\x85\xf1\xe0\x15\x09\x52\x4c\xb3\xc1\x68\x86\xfa\x7d\x1e\x15\xd3\x6c\x86\x05\x96\x29\x07\x33\x9c\xc0\xc3\xf3\x19\xf2\xf6\xc9\xde\xd7\x27\xb1\x39\x94\xf8\x66\x5d\x8a\x5f\x19\xcd\xd2\xa7\xbf\x46\xd6\x07\xd1\xa8\xb2\xb3\xca\xfa\x7d\x66\x9c\x92\xef\x6c\x95\x0c\xc3\xbd\xbc\x37\xf2\x5c\xb0\x04\x7b\xf0\xd5\x50\xa7\xaa\xad\xb5\x37\x44\xd5\x32\x29\x7f\x29\x78\x2d\x3a\xc2\xee\xb6\x5e\x0d\xb7\xdb\xb6\x7a\xab\x79\x92\xcf\x69\x16\x59\x08\x64\x40\x8f\xa8\x02\x1f\x3d\x7a\x1b\x69\x1e\x38\xd8\xab\x5a\xf7\x2b\xd8\x51\x26\x1c\xb4\x50\x3b\x8b\x11\x03\xe7\x2d\x0e\x7e\xb5\x3f\x9a\x44\xdc\xdd\xf8\xbc\x40\x78\x6f\x88\xc6\x91\xcd\xba\x6b\xc9\x10\x7a\xb5\x3f\x92\x1c\x9f\x82\xcd\x40\xb9\xc9\x09\x51\x7a\x52\x46\x80\xd7\x9c\x94\x38\xc8\x80\x37\x90\x08\x7b\x12\x37\xc7\xae\x03\x17\xb2\x3f\xd7\xb4\x2e\x1f\xfe\xca\x04\x58\xa5\xb4\x00\x5c\x05\xf9\x95\x16\x1c\x43\xe6\xd4\x31\xa3\xdd\xe6\x3b\xa8\x29\x02\xd7\x80\x6d\x43\xd8\x7f\xd1\x61\x5a\xe9\x2d\xf1\x14\x73\x4b\xbf\x44\xa7\x9c\x16\x83\x83\x19\xe1\x58\x3e\x3c\x9f\x11\x73\x41\xf8\x95\xe1\x5f\x5e\x53\xf1\x96\x5e\xad\xaf\xdf\xe7\x8b\xc2\x00\x47\x14\xc8\x84\xcc\x96\x78\x81\x2a\x75\xa6\x2d\x3b\xef\x14\xf8\x84\x09\x0b\x35\x16\x92\x02\xce\x1e\xe0\x96\xa6\x6a\x80\x06\x33\x26\xcc\xb4\x07\xe8\xaf\x56\x31\x07\x7b\xf3\x02\x6d\xf2\xa8\xc0\x0c\x55\xc6\x61\xef\xa2\x16\xd7\x59\xe2\x04\x8d\x67\xfe\x54\x68\x44\xc7\x64\x53\xaf\x1f\x93\x1b\xfa\xde\x47\x25\x36\xb5\x24\x14\x82\xae\xa7\xeb\x39\x8d\x3c\x0a\xdc\xf3\xda\x4e\xc1\xe5\x03\xb0\x12\x1c\x8b\x29\x9f\x29\x41\x1a\xf2\x6a\x2a\x51\x55\xce\x97\x54\x12\xe2\x6e\x8c\x38\x5c\x5b\x95\x71\x4a\x67\xc1\xfa\x27\x4d\x4b\xe4\x5f\x8b\x75\x37\x11\x82\xde\xac\x04\x05\xad\x1b\x53\x35\xe8\xf3\x68\x2a\x34\xef\x26\x5d\xa8\x51\x3b\x35\xe9\x8a\x65\x22\xba\x69\x41\xcb\xfc\xaf\xa2\x4b\xef\x59\x29\x7e\x47\xee\x5e\xa3\x29\x85\xfa\x27\x9b\x59\x14\xbc\x9b\x74\xd5\x0e\x6a\x6f\xd3\x3f\x92\x8d\xc9\x67\x93\x24\xf6\xce\x9c\x9a\xa9\x02\x8d\x13\x1d\x11\x44\xbf\x1b\xdc\x4a\xf6\x46\x9e\xc6\xb0\xfc\x48\x6a\xcb\x67\xbd\x89\x34\x9b\x7b\x99\x1f\x02\x99\x57\x2f\x32\x6d\xc9\x3b\xc3\xe0\xe9\xd3\x04\xe6\xd0\x6b\xc5\x67\x28\xb6\x00\xd8\x5d\xb4\x86\x45\x07\x03\x6c\x80\x79\xbd\x7d\x87\x31\x8c\x09\x80\xba\xa8\xd2\xe0\x7d\xe4\xa1\x94\xf6\x93\x58\x1b\xfb\xa6\x32\xe1\x93\x1a\x13\x80\x0b\x32\x3c\x2c\x5e\xb2\x43\xd4\x1c\x6f\x31\xc3\xf5\x71\xe1\x5c\x6e\x6a\x11\xd7\x9b\xc5\xc5\x60\xe0\xee\xe0\xaa\x9a\x61\xa5\xe7\x87\x12\x62\x68\x18\x67\xed\x87\x30\x79\x5c\xc7\x31\xd1\x3e\xda\x83\x1c\x95\xb2\xa5\xf4\x35\x99\xf1\x6d\x8b\x69\xb7\xa7\xd1\x6e\x82\x97\xa8\xa1\xd7\xdd\xc7\x18\x25\xdc\x1c\x1d\xfa\x73\x9b\x23\x2d\x48\x14\x9e\x53\x99\xa1\xa7\x03\xa0\xf8\x01\xff\x1b\x4e\xbc\xd7\xd1\x0c\x97\x56\xe5\xa0\x53\x63\x58\x49\x39\x89\x38\x29\x64\xdd\x2a\xca\xb0\x25\xca\x0d\x3b\x55\xf6\xfb\x09\xa8\xc1\x4d\x04\x91\x59\xd1\x34\x99\x8d\x5b\x78\xde\x02\x50\xc7\x08\xdb\xce\x16\x08\xe7\xaf\xb4\x99\x59\x46\xf2\x7d\xd6\xa1\x9e\x0f\x9a\xcc\x79\x00\x5f\x93\xe1\xe1\xfa\x65\x76\xb8\x1e\x0c\x10\x9d\xae\x67\x5e\xdf\xd7\x03\x66\xbd\xdc\x4c\x39\x16\x98\x7a\x0c\xd8\x55\x38\x9f\x98\x99\x55\x3e\x90\x40\xa8\x36\xb9\x93\x28\x9c\x3e\xcc\xc2\x29\x52\xf7\x37\x68\x1c\x4d\xe1\x56\x6e\x46\xae\xa3\x38\x8e\x6d\x16\xe4\x6c\xad\xf3\x09\x23\xc3\x71\x22\xf1\xa4\xd2\x41\x46\xdb\x6d\xc4\x89\x8a\xe7\x8c\x5d\x2a\xc2\xaa\x2a\xcc\x88\xf5\xdc\xc5\xf0\x68\x88\x30\x9f\x55\xca\x20\x61\x88\x2f\xc9\x10\xdf\x91\x21\x3e\x26\x43\x2c\x81\xc9\x29\x19\xe2\x73\x32\xc4\x17\x64\x88\x4f\xc8\x10\x7f\x22\x43\x7c\x44\x86\xf8\x0d\x19\xe2\x2f\x64\x88\xcf\xc8\x10\xff\x41\x86\xf8\x2d\x19\xe2\x8f\x64\x88\xdf\x93\x21\xfe\x40\x86\xf8\x1d\x19\xe2\x47\x32\xd4\xb6\x0c\x9f\x77\x84\xc5\x06\x65\x65\x6b\x40\xa4\x0d\xcc\xdf\x83\x07\x91\x79\xe8\x71\x5e\x25\x9d\x07\x86\xf2\x97\xa0\xfe\xf8\x26\xc9\xb2\xab\x64\xfe\xa5\x24\x1b\x9a\xa7\xe3\xe9\x0c\xc3\x45\xc6\x78\x3a\xd3\xd8\xe9\x52\xb0\x1b\x6a\x04\x01\xef\xfd\xeb\x2b\xf5\xa5\x74\x15\x26\x6b\x51\xf0\x75\x6e\x7b\x64\x12\x54\xbb\xae\x60\x80\xda\x42\xe6\x68\xbb\xdd\x54\xb8\xe1\x3d\xc0\xcf\x63\xa4\x44\x40\xc2\x28\x02\xff\xd2\x4f\x22\x3b\x33\x8f\x77\x65\xf6\x00\xd1\xd0\x8c\xa5\xc8\x5f\xcb\x79\x08\x6b\xd3\x89\xdb\xed\x8d\xcd\x75\x9c\xa7\xf5\x3c\xc7\x79\xea\x72\x5c\x15\xeb\x3c\x3d\x5b\xe7\xc7\xf7\x2b\xc6\x69\x7a\xa1\xa6\x4c\x7d\xe3\xb5\xe4\xf8\x8a\xe5\xa9\xba\x78\xf3\x4b\x1f\xa9\x59\x94\x2d\x81\xfc\xeb\xc3\x60\xa0\x28\xf4\x60\x92\x2d\xfb\xf5\xad\xab\x70\x49\xf3\x14\xb4\x1a\x2a\x5f\x71\xc6\x0c\xe3\x32\x10\xcf\x6d\xb7\x4c\xf1\x86\x97\x2b\x23\xb0\x33\x7a\x35\xb5\x2e\xaa\xfb\x84\x79\xb1\xce\x05\xe5\x2e\x0a\xd9\x46\xed\xaa\x4b\x2c\x37\xd9\x1d\x86\xad\x57\x8e\x75\xea\x31\xa4\x0e\x2b\xac\x7b\x5a\x8e\x37\x4a\x66\x96\x8e\xdf\xe3\x79\x71\xb3\x92\x14\x7c\x3a\xfe\x50\x61\xbe\xce\xc7\xf7\xf8\x8f\x82\xe5\xe3\x53\x9c\xd2\x05\xe5\xe3\x73\x6c\xa8\x82\xf1\x85\x7d\x7c\x2f\x28\x4f\xae\x32\x3a\x3e\x51\xb9\x4e\xf3\x39\x1d\x7f\xb2\x9f\xe1\xf5\x08\x7b\x42\xb1\x37\x38\x4b\x24\x43\xfc\x05\x4b\x2a\x44\x88\x8c\x8e\xcf\x70\x4a\xe5\xe0\xe6\x74\xfc\x07\x56\xcc\x89\x5a\xa6\xf1\x5b\xfd\x3a\xfe\x88\xb3\xa2\x58\x95\xe3\x8d\x28\x44\x92\x8d\xdf\xe1\x9c\x96\xb2\xa7\x8f\x55\xa5\x6e\x4c\xbc\xad\x56\xe7\x8f\xfc\x6f\x95\x0e\x30\xb2\xb9\x54\xde\xdb\xbb\x26\x14\x8b\x59\x8e\x9a\xe7\x7b\x73\xc6\x35\x84\x6c\x6e\x86\x49\x64\xef\xc1\x2f\x55\x5f\xf5\x0a\x45\x08\x8d\x3d\xe7\x65\xd1\xe3\x60\xd0\x02\x23\x8c\x27\x7e\x84\xdf\x49\xda\xa1\xb5\x6d\x00\xfe\x75\x72\xa3\x94\x84\xe7\xb1\xa9\xf3\x52\x70\x76\x7d\x4d\x79\xd4\x53\x97\xa3\x58\xd2\xac\x28\x3c\x60\x40\xc7\x62\x5a\xc9\xcd\x88\x36\x77\xb6\x28\x6c\xce\x11\xaa\x7c\x67\xbe\x16\x4b\x59\x9d\x3b\xdf\x4b\xce\xc5\xc3\x8a\xea\xeb\x4e\x03\xd4\x94\x9e\xf8\x15\xed\x26\x56\xc9\x46\x5b\x37\x18\xa6\x2e\x84\x81\x75\xd2\x97\xb7\x56\xff\xfb\x9b\x24\xcf\x0b\xd1\x95\x44\x42\x57\xe9\x90\x4b\xca\xb3\x7b\x45\xe7\xc9\x5a\x22\x7a\x45\x71\x42\x88\x0c\x4b\x72\xda\x48\xa9\xc5\x62\xd1\xf0\x3b\xdb\xde\x8d\x3d\xba\xdd\x7e\x6b\x57\x16\x8b\x6f\xef\x8b\x12\x09\x2a\xef\xf1\xc2\x53\x93\x1a\x1e\x32\xe7\x2e\x96\x0d\x06\x48\x8b\x1f\xc1\xaf\x2d\xd9\x1b\x62\xee\xab\x45\x62\xb6\xbf\xaf\x6c\x1c\xf2\x5d\x8b\xe0\x75\x6d\x6e\x56\xc4\x12\xe4\xae\x4b\x3d\x54\xc1\xce\xdc\xdc\xab\xdd\x0f\x78\x96\x37\x50\x76\x40\xb6\x4b\xd8\x69\x7c\xfa\x82\x57\x2e\xb4\x39\xfd\x6f\x94\x86\x22\xba\x38\x00\x08\xcd\x13\xc5\x71\xec\x58\xf6\x73\xb3\x19\x6b\x8c\x13\x64\xf2\xb9\x29\xe5\x6b\xed\x42\xb7\x0f\xb4\x8b\x6e\xdf\x85\x0a\x05\x5c\x3d\xb1\xcc\x8d\x96\x99\x86\xbd\x52\x8e\x10\xcd\x01\x8b\x90\xdf\xb0\xe2\xd7\xf6\x46\x92\xf5\xa8\x43\x39\xb5\x9f\x4e\x34\xec\xe0\xff\x33\x0d\x02\xa2\x58\xe1\xa9\x90\x8c\x87\x9d\x27\x09\x39\xdb\xe6\xea\x53\x7d\xae\xea\x19\xab\xda\x07\x35\x67\x47\xff\x1b\x73\x36\x84\x39\x73\xd7\x1d\xb6\xd3\x6f\x4c\xa7\x01\xf6\x87\xfb\xa5\x52\x69\x68\xf3\xc5\xdf\x56\x92\x92\x0c\x2f\x2b\x77\x6c\x37\xac\x6e\x87\x9c\x11\xd7\xc4\x9c\xac\xf1\x10\x34\xa9\x8d\xf4\xb2\x20\x7c\xca\xf6\x47\xb3\x4e\xa2\x02\x07\xe4\x8e\xba\xe4\xda\x26\x6e\x24\x71\xb4\x26\x9a\x4d\x2f\xaa\xa7\x76\xb7\xea\xba\x91\xce\x54\x06\xa3\x45\x68\x73\x66\xf1\xcb\xd4\x8a\x00\xc8\xde\x70\x46\xae\x6a\xdd\x4f\xc8\x1a\x58\x5d\x9f\xd0\xd3\x3a\xc9\x20\x12\x30\x6a\x43\xaa\x29\x99\xb3\x98\xdc\x8e\x73\xcc\x10\x2e\x8c\xdc\x10\x0e\x99\xea\x83\xe2\x6e\x4c\x21\x55\xdd\x34\x19\x8c\x66\xda\xc0\x3f\x19\xbc\xe8\x04\xdf\xca\x99\x32\xaa\x8d\x6a\xa9\xc4\xde\x7c\x75\x69\x65\xf0\x73\x84\x36\x7f\xb4\x0e\x6c\xd4\x36\x30\xbf\x46\x5c\xea\x71\x26\x6e\x70\xe5\x3f\x37\x38\x4f\x86\x6c\x89\x24\x75\x4f\x36\x60\x78\x4e\xca\xc1\x8b\x4e\x32\x9d\x4b\x78\x7a\x0b\xcb\x7c\x8b\x30\x25\xc9\xb4\x34\x93\xb0\x24\x69\x94\xe9\x7e\x94\x83\xef\x09\x21\x4b\x94\xc8\x11\x67\x18\xca\xe5\xae\x99\x45\x38\x8f\xe5\xe0\x6f\xb3\x60\xf6\x0c\x98\x5e\xe2\x21\xce\xb0\xe1\xa7\x16\x08\xb7\x65\x2a\xf1\xf7\xa8\x1a\x2a\xce\x50\x83\x56\x0a\xc4\x40\xa6\xc8\x1d\x7b\x6a\xdc\xbc\xfb\xc4\x50\x84\x36\x6f\x2d\xd2\xb6\x77\x86\xae\xd4\x0e\x56\xa1\x46\x94\x54\xcb\xa4\xb4\xf5\x05\x7b\x59\x77\xb6\x2e\x3b\xd6\x74\x8e\x11\x1a\x2b\x69\xc4\xc7\xc1\x00\x1b\x2f\x9d\x86\x32\xea\x7c\xf5\xce\x71\xe2\xf7\xe8\x83\x5c\x72\xe8\x49\x44\xd1\x78\x2f\x32\xde\x5d\x25\x81\xb5\xdd\xee\x51\x45\xea\xc0\x93\x92\x30\xa1\x7e\x5f\x27\xc6\xb6\x2f\x55\x1d\x28\x6d\xda\x61\x55\x15\x88\x36\x9c\xf4\x06\xe0\x9e\x1e\xc1\x46\x8f\x74\xdc\xa4\xe5\xb1\xa1\xb2\xb5\x6b\x6e\xfd\x86\xd5\x94\x8d\xe7\xc1\xd9\xc1\xdf\xe3\x03\x84\x03\x2a\x6f\x3c\x6d\xa3\xeb\x00\x32\x37\x28\xc2\x99\x89\x48\x47\xe5\x78\x43\x99\x8c\xd7\x67\x54\x55\x40\xb9\xb5\x06\xa6\xb2\x2d\x28\x99\x82\xa7\xd2\xdc\x74\x76\xd8\xa3\x79\x0a\x44\x03\x4d\x21\xf6\x58\xb1\x96\x74\x9c\x24\x22\x35\xfd\x82\x99\xa4\x60\x04\x7f\xd8\xe4\x56\x5c\x45\x9d\x1d\xac\xa4\x4b\x18\x92\x80\x56\x12\x2e\x41\x88\x9c\x86\xac\xad\x2e\x68\xd3\x67\xc9\x20\x12\xb3\x49\x0b\xe4\x87\xe3\xf9\x36\x66\xdb\xbb\x35\x31\x52\xbe\x1a\xa1\xed\x82\x6e\xd7\xab\xe4\xa8\x4e\x45\xd3\x3c\xed\x79\xd1\xdd\x14\xf7\x09\xa1\xdc\xab\xca\x27\x69\x7c\x67\x4d\xe6\xda\xae\x56\xfb\xa4\x4e\x45\x8d\x7d\xad\x50\x5f\xea\x1d\xd5\xe4\xdd\x5e\x19\xad\x06\xa1\xaf\xdf\x0a\x73\xf1\x66\xb6\xb1\x66\x6a\x70\x8e\xe4\x32\x59\x7f\x05\x0d\xd9\x39\x43\x9b\x3c\x62\x28\x74\xa4\x01\xfc\x80\x9e\xf0\x1d\xa5\x5b\xf2\x57\x75\xc0\xb2\x69\xe7\x91\x2d\x80\xb6\x8a\x0b\x16\x52\x7d\x9d\x7d\x46\x55\x0d\xc3\xfa\xf7\x31\xed\x34\x8b\xa1\x68\xea\x98\x21\xc7\x09\x79\x18\x0c\x8c\xa8\xb0\x05\xe4\xa1\x20\x0d\x98\x88\x02\x27\x1a\xa8\x33\xd3\xe9\x56\x80\xdd\xf1\x6e\x62\xd2\xa8\xa8\xe1\xf2\x76\x5c\x30\xc4\x2d\xb5\x7f\x05\x21\x24\x55\x1b\xf0\xac\x39\xd7\x6e\x19\xda\xa1\xd0\x6a\x0e\x01\x36\x13\xa0\xf1\x80\xda\x90\x80\xee\xa5\xd8\x1f\xe1\xef\x11\x1c\x6a\xf1\x15\x9c\x85\xf7\x86\x96\x47\xae\xec\x41\x6a\xc6\x67\x78\x8a\x0f\xdc\x93\xb0\x23\xe4\x92\x02\x5f\xde\xf9\x94\xcd\xd4\x21\x6c\x08\x74\xec\xfe\xfb\x9a\x0c\xcd\x87\x13\xc1\xd9\x09\x41\x51\xad\x72\xec\x76\x3e\xaa\x76\x65\xda\x38\xfb\xaa\x00\x1f\x08\x32\xf4\x62\x4c\x9b\x6b\x8b\x40\x2c\x61\x44\xf9\xb5\x5d\x7b\x28\x5e\x72\xb5\x76\x70\x05\x30\x15\xb3\x57\x4c\x07\xca\x33\xfa\x24\x62\xf0\x02\x66\xb0\x90\x54\x9c\x0d\xba\x3b\x15\x83\x83\x19\x2e\xe1\xe1\xf9\x0c\x67\xf0\x60\x68\x97\x1a\x80\x72\x74\x7c\x8e\x13\x5c\xe2\x42\x72\x21\x19\xaa\x2a\x6b\x9b\x37\xb4\xf1\x37\xdb\xb7\x7f\xb5\x6b\x53\x6c\xbe\x46\xac\xec\xa8\xae\xa5\xc0\xc6\x8f\xe4\x55\x5b\xe5\x1d\xc0\xc6\x94\x6d\x2b\x82\x76\x8b\x5c\x51\xd5\xde\x2d\xb9\x04\xc3\xbd\x76\xd0\xb1\x69\x2e\x3b\x08\x38\x5b\x57\xd5\xf7\x74\x34\xc4\x74\x5f\x04\x20\xc2\x75\xa6\x56\xd6\xe3\xab\x9e\x10\x78\x2a\x14\xd5\x20\x8b\xbc\xfe\xb5\x4b\xb6\x0c\x0a\xa3\x75\xe9\xa6\x82\xc6\x4f\x41\x5c\x5d\x6f\xfb\x41\x32\xf8\xa1\x29\xfe\x05\x93\x87\x46\x3e\x8a\x36\xef\x35\x87\xd1\x9c\x3d\x7a\x6f\x95\x04\x8c\xf4\x14\xe8\x91\x0e\x9f\x28\x69\xfd\xb8\x05\xbb\x0c\xab\xea\x73\xac\x64\xd0\x4b\xfc\xb9\xa1\x0c\xa9\x53\x3e\x42\x50\x6c\x68\xf7\x35\xf9\xec\x69\x6a\xbe\xd6\x9a\x9a\x69\x72\xbd\x7f\x93\xac\xfe\xb7\xed\x88\x3d\x1e\xd8\xde\xdf\x38\x3a\xf7\x96\x72\xc1\xe6\x5a\x51\x8a\x5b\xbe\x21\x5e\xf1\x42\x14\x92\x12\x8f\x93\x34\x25\xad\x76\x72\x2d\xb1\x2d\x7a\x86\x7b\xeb\xfe\xfe\x85\x3e\xfc\xde\x65\xa5\xb1\x4d\x48\x7b\x46\xa9\x23\x6c\x17\x17\x84\x69\x1f\x31\x4a\x61\xe8\x36\xc9\x88\x84\xd0\x6c\x11\x35\xee\x16\x38\x82\xbc\xc7\xe9\x35\x8d\x0a\xac\xca\x71\xa4\x90\x67\xd7\xc0\xce\x84\x0c\x0f\x13\x27\x1c\x4b\x06\x83\xb6\x52\xd3\x64\x86\x74\x70\xa8\xb6\x96\x72\xaf\x8c\x2a\x91\x23\x5c\x78\x2d\xa9\x56\xf2\xf6\x56\x74\x09\xd9\x06\x2e\xc0\xed\x64\x30\x9d\x32\x4f\xd9\x32\xa7\x30\x33\x30\x17\x46\x1c\x10\x94\xa4\xc9\x7c\x59\x8b\x35\xe0\xcf\x64\x7c\x97\x64\x5f\x74\x6c\x02\x57\x48\x14\xab\xb2\xe0\xa2\x59\x8e\x82\xaf\x20\x99\xbb\x92\xe4\x87\xdd\x3b\xc6\x01\xf6\x93\xdb\x26\x54\x45\x52\x4e\x9d\xe5\x2e\xc8\x8d\x69\x96\x58\xfa\xef\xca\x4b\xba\x4a\xf9\xfa\x16\xdb\xb9\xb9\x6e\x58\x59\xb2\xfc\xba\xfb\x85\x3e\x78\x51\x8c\x41\x81\x72\xeb\x75\x4b\x9b\xc2\x72\xb0\x81\x65\x8b\x48\x5f\xc3\x4f\xf3\x19\x8a\xbf\xd0\x87\x80\x64\x09\x84\x31\x7a\x54\x7c\xa0\xc8\xc9\x29\x9f\x91\x0d\x4b\xef\xc7\x1c\x7f\xa1\x0f\x63\x8a\x6f\x93\xcc\xd2\x88\x6b\x31\xde\x1b\xe1\x45\x96\x5c\xcb\x7f\x23\x2e\xaa\x5a\xd7\xba\xe6\x3f\x54\xc1\xd0\x25\x9d\x83\x0f\x2b\xd9\x25\xe4\x99\xf2\x0e\xb7\x62\xc7\x38\xc4\x34\x07\x7a\x2b\x66\xe9\xbd\xb1\x2b\x15\x41\xa7\x65\x8f\xe1\x33\xa6\x71\xb1\x16\x12\x72\x05\xfd\x91\x3b\xa4\xb9\x13\x38\x2d\xa9\xf0\x02\x8f\x0b\x32\x34\x44\x60\x33\xb8\x0a\x4c\x8c\x98\x75\xb8\x6c\x40\x73\xf8\xb7\xac\x64\x22\xe2\xb8\xd7\xd3\x2e\xf7\x60\x6f\x79\x2b\x8f\xeb\xbb\x12\x46\xdf\x0c\xdb\x41\xf5\xfa\xb4\xf0\x98\xf3\x87\x79\x46\xbb\x29\x15\x10\x1a\x64\xdc\xed\x0d\xc4\xa0\xd7\x7d\xb9\x2f\x1f\xe0\x1c\x0f\x21\x20\x97\xc1\xa6\x4f\x45\x38\xd2\x54\xec\x94\x4e\xf9\x6c\xf6\x4f\xb5\x08\xfd\x74\xcd\x57\x86\x2e\xd6\x33\x89\xbd\x59\x71\x91\xc7\xe5\xa1\xa8\xa9\x43\xe6\xa4\xad\x15\xed\xe7\xa8\x36\x93\xb2\x78\x88\x2d\xf2\x01\x31\xfd\x91\x18\xc6\x75\xdd\xb8\x7b\x75\xf3\x0d\x1d\xf3\x8f\xb4\x3b\xb7\xb5\xb3\xec\xf5\xd2\x24\xa9\x35\xb4\x89\x6d\x4e\x00\xf4\xf4\xd2\x97\x81\xd9\x7f\x2c\x8f\x07\xd9\x1b\x85\x7d\x81\x79\x69\x75\xa9\xeb\x3a\x65\x48\x5c\x18\xb4\x8d\xc6\x2b\xbb\x01\xad\xeb\x1b\x1a\x75\x12\x0e\x2d\xa8\x37\x52\x83\xe1\x56\x8b\x63\x01\xa3\xbc\x22\x43\x5f\x73\x6a\x5a\x00\xb5\x9b\x40\xe7\xd0\xbc\xc8\x05\xcb\xd7\xd4\x25\x91\xbd\x21\xd6\x0a\xd0\x05\xc2\x82\x10\x92\xc0\x11\x55\x44\xb3\x6e\xf9\xff\x14\x66\x51\xd7\xe5\xf2\x7d\x3e\x2f\x6e\x58\x7e\x1d\x69\x85\xba\xae\x56\x43\xc0\xcc\x66\xae\x2d\x87\x5f\x6a\x47\xc8\x20\x6f\x2e\x1c\xe5\xbf\x3f\x3a\xe4\xaf\xe4\x8e\xde\xdf\x0f\x02\x75\x69\xf0\x06\xfd\xdf\x6e\xb5\xf7\xb7\xbc\xde\x6a\x0d\x7f\xd4\x02\x81\x3d\xe1\x39\xd1\x9d\x96\x8e\x88\x98\x9c\x0d\x0c\x56\xfe\xd0\x40\x05\xf1\x7b\xbf\x09\x5b\xb4\x81\x7e\xd9\xd5\x06\x48\x9a\x7a\xc5\x06\x83\x19\x19\x6e\x69\x6d\x02\x8b\x55\x8b\xc3\x6b\x85\x05\xa6\xfb\xfb\x5e\xf1\x99\xea\xa2\x26\xc1\xc0\xdd\xf9\xfe\x55\x72\x45\xff\x95\xb1\xc9\xee\x78\xb2\xfa\x08\x21\x58\xce\xd7\x75\xc7\x36\xe0\x99\x65\x99\x94\x91\x8b\x42\xca\x8c\x2e\xa8\xe7\xee\x05\x6d\xac\xfb\x04\x37\x6c\x12\x86\x8e\xf0\x26\x04\xfb\x5a\x27\x63\xdd\x1b\x8e\x69\xbe\xbe\xd1\x97\xeb\x7b\x23\x7c\xc7\x99\x50\xcf\x43\x3c\x2f\xf2\x05\xbb\x5e\xeb\x6f\xc3\xaa\x92\xbb\x55\xa9\x98\x72\x84\x05\x84\xce\x54\x61\xa4\x92\xb2\x94\xbc\xf6\x9b\x10\x62\xa3\x8d\x0a\x99\x93\x2f\x29\x67\xa2\xfc\x50\x14\x65\x80\xe6\x38\xda\x0c\x3b\x74\x67\xd7\xad\xb5\x3b\xb8\x7d\xe1\x5f\x19\x08\xfd\x5a\xd7\xdd\x25\xb9\x1a\x40\xa5\xdc\xb0\x5f\xd3\xd4\xc4\x70\xf9\xc0\x04\xe5\x49\xd6\xe8\xa7\x44\xc7\xdb\x6d\xe4\x2c\x3f\x87\xce\x3f\x05\x8d\x79\x72\x47\x04\xa6\x9e\xdf\x70\x39\x1d\x35\xca\xcd\x30\x96\xa2\xdf\x2f\x82\x35\x11\xc6\x29\x02\x87\x2f\x9e\x1e\x33\x75\x21\xe3\x2e\x96\xac\x7c\x6f\xa3\xa8\xa5\x24\x91\xfb\xbc\x28\x4b\x76\x95\xd1\x37\x6e\x2a\xce\xa0\x20\x29\x25\x62\x87\x99\x7c\x4b\xd5\xa7\xb5\xa4\x5b\x21\x72\x44\x63\x71\x54\x97\x9b\x5b\xb0\xee\x8e\xca\x98\x1c\x80\x73\x1d\xe4\x05\x7c\x2d\xb4\xe2\x08\x8a\xbd\x45\xe9\x08\x72\x46\x17\x19\x2c\xa6\x49\x8d\x18\xb6\xd7\x36\xd8\xca\x5e\x25\x61\x0f\x12\x40\x59\x07\x6e\x5e\x80\x29\x59\x24\x16\x0a\x4e\xa9\xde\xbe\x2b\xf8\xe9\x02\xee\x4a\x45\xc1\x95\x5f\xa8\xfa\x9a\x19\x71\xf5\xb0\xe6\x3b\x90\x84\x3e\xb6\x55\xcc\x4f\x42\xe8\x54\x3b\xdb\x66\xba\xd6\x19\x1c\xc2\xba\x67\xa9\xed\x36\xaa\x6f\x0c\x45\x85\x6a\x42\xab\x8d\x49\xb0\x64\x64\xa6\x42\x85\x2a\x48\xaa\x77\xba\x4f\x82\xab\x48\x0f\x46\x27\x59\xef\xb4\xbf\xe3\xfd\x11\xea\xf4\x4e\x4d\x48\x3a\xb9\x4d\xa8\x3f\xd3\xda\x40\xd9\x4b\xd1\xd1\x5e\x65\x5f\x4e\x92\x15\x94\xd9\x6e\x7b\xe7\x54\x15\x47\x81\xd3\xac\x05\x2f\x6e\x22\xae\x32\x1b\xb7\x5c\xa5\x2e\xf2\xec\xbf\xa2\xc9\xf8\x33\xdb\xbe\x47\xb9\x88\x26\xe3\xbf\x6f\x47\xdf\x6f\x9f\x1f\xa0\x68\x32\x7e\x93\x25\x37\x2b\x9a\xa2\x09\x54\xf2\xdd\x33\x65\xcd\xc5\x51\x38\xd2\x0a\x22\x5a\x34\xf7\x91\x21\xa6\x5f\x59\x54\x32\xd9\xa4\x45\x0e\xc7\x74\xac\x9f\x46\xda\x4f\x0c\x9d\x8a\xc1\x60\x56\x55\x9d\x56\x85\x84\xf7\xda\x08\x5e\xab\x14\x77\x45\xd1\x55\xeb\x47\xbb\x79\x91\xef\x33\x7d\x9b\xde\x35\x12\xfa\xf8\xb7\xdf\xf2\xf7\x9e\xc3\xc0\x2b\xda\x35\x79\x30\x94\x48\xe4\x78\xb4\x63\xc8\x52\xe9\x9a\x2c\x93\x5b\xda\x4d\xba\x8d\xfd\x11\x21\xad\x91\x1c\xf7\xac\xe9\x9e\x68\xd9\x47\x11\x42\x20\x50\xd0\xaa\x60\x5a\x37\xcb\x86\x18\x52\x81\x1f\xd4\x1e\x38\x5d\x60\xbb\x31\xae\xc3\xf4\x9c\x34\xa2\x12\xea\xf3\xd5\xef\xb7\xe8\x7a\x36\xce\x1e\xb6\x46\x03\x9d\xd0\x67\x56\x9d\x08\x16\x2d\x61\x3e\x25\xc7\xd0\xc9\x63\x87\x27\x88\xff\xb2\xdd\xee\x8d\x70\x1e\xfb\x00\x57\x52\x47\x3d\x58\xc0\x1e\xcb\xbb\x39\xf8\x2b\x32\xc0\x99\xec\x0d\x11\xde\x85\x2e\x73\x20\x1b\x72\xdf\x17\x70\x12\xc4\x0e\xf3\xcd\x05\x3d\xcf\x63\xf5\xb9\x11\x36\x1e\xa5\xd8\x6e\xdb\xa2\x2e\x4c\xc4\x98\xd6\x2c\x05\xd1\x46\x23\x1c\xc9\xb0\xbc\xb2\x4c\x02\xb8\x19\xb6\x6f\x1e\x0b\xe6\x54\x65\x21\xb6\x05\xf8\x3b\x07\x26\x8c\x4b\x0e\x4c\xb9\x53\x32\xbe\x8d\x7c\xc2\xe2\x19\xd8\xe4\x84\x11\x56\xb4\xf8\xc3\xc5\x5a\xd9\x67\xb9\xa0\x3c\x4f\xb2\xf2\x19\xcd\x6f\x19\x2f\x72\x65\x2d\xdd\xcb\x8b\x94\xee\xdf\x68\x82\xa2\x25\xf7\x5a\xb0\xac\x6c\xfd\x22\x89\xd8\x84\x81\x05\xb0\xf9\xca\x60\x77\xc8\x9a\xc1\xda\xb5\xb5\xd8\x0d\x15\xc9\xce\x0f\x99\xfb\x32\x4f\xf2\x84\x3f\xec\x2f\x68\x22\xd6\x9c\x7a\x5d\x80\x38\x36\x3d\x1c\x98\x20\xb7\x77\xaf\x2c\xfc\x41\xc9\xfe\xf2\x22\xcb\xfc\xfc\x2e\xed\x59\xc6\xae\xbc\xd7\xcb\x1b\x76\xcf\xbc\x01\x68\x20\xec\xde\x29\xbf\x65\x73\xaf\x76\xbd\x63\x6a\xef\xcf\xe6\xc5\xcd\x2a\x69\x4f\x5e\x0b\x9a\xb6\xf6\x9c\xaf\x73\xc1\x6e\xda\x97\x43\x7b\x87\xec\x61\xbd\xf6\xda\xe7\x69\x6b\xde\x5b\x46\xef\xda\x97\x8e\x17\x6b\x11\x0c\xc7\xdf\x1e\xf7\x82\xe6\xb2\xce\xfd\x72\xbd\x92\xfb\xc9\xe5\x52\x11\xe8\xec\x2b\x5f\xe7\x59\x51\xac\xda\x6b\x91\x59\xf7\x21\x1a\xdc\xae\x86\xc0\xeb\x8a\xfb\xe2\x39\x79\x6d\x4d\x7c\xa6\x6c\xda\xca\x7d\x6d\x9f\xdd\x5e\xf4\x99\x01\xcd\x5e\xaf\xf3\x6b\x96\x37\xde\x5b\x32\xba\x78\x44\xde\x5e\xd3\xc1\x2d\xd2\x96\x8d\x28\x17\xb1\xc8\x69\x2e\x9e\x09\x4d\xef\xed\x17\x79\xf6\x20\x33\x18\x27\x9e\x66\x29\x03\x52\xdf\xd9\xd6\xc0\xbd\x45\x86\xd7\x78\x8e\x53\xbc\xc4\x0b\xbc\xc2\x37\xf8\x16\x5f\xe3\x2b\xfc\x80\x2f\xf1\x1d\x3e\xc6\xf7\xf8\x14\x9f\xe3\x0b\x7c\x82\x3f\xe1\x23\xfc\x06\x7f\xc1\x67\xf8\x0f\xfc\x16\x7f\xc4\xef\xf1\x07\xfc\xee\x5f\x22\xbd\x7d\x6c\x22\x07\x2e\xe1\xb1\x90\x68\x87\xdd\x00\x90\x89\x8f\xe5\x1c\xf4\xfb\x3b\x3e\x6c\xb7\x9b\xaa\xf3\x18\xb3\xf2\xa3\xf1\x49\x22\x61\xf8\xa3\xa5\x4a\x9a\x7c\x54\x0f\xca\xf5\xaa\x1d\xb0\xfc\x11\xf7\x8e\x3f\xfe\xdc\xc3\x9b\x6b\x2a\xc6\xe0\xf9\xfd\xf8\xe3\xcf\x21\xab\x51\xed\xc2\x03\x8f\xb8\x97\x15\xc5\x97\xf5\xca\x2f\xfe\x01\x52\x70\x09\xef\xa5\x7d\xaf\xd7\xf8\x3e\x3e\x3e\x79\x7d\x7c\x76\x79\xfc\xff\x5c\x1c\x7f\x7c\x7b\xf9\xe9\xec\xf4\xe2\xf4\xe2\xd7\x4f\xc7\xe7\xfd\xfe\xee\x8e\xd6\xf3\xf6\xf0\x26\x64\x8a\x64\x2f\x94\x5f\x81\xe3\x8f\x3f\xc7\x8d\xfc\x15\xc2\x8f\xb2\x8f\xa7\xf2\x88\x90\x23\xfb\x88\x1f\x65\x4f\x4d\x6a\xe9\x52\x8f\xdc\x09\x20\x6f\xcc\x92\x86\xe9\x56\x6b\xe0\xcc\x7e\xdf\x39\x80\x33\x7b\xc4\x36\xa6\xa7\x5f\x4c\xa9\xa7\x66\xf9\xad\xca\xd2\x52\xfc\x31\x36\x89\x30\xb6\x63\x38\x83\xe4\x0f\xaf\xab\x2a\xc9\xf6\xf2\xad\xf7\x49\xc7\x65\xfe\xa8\x1f\xf0\x63\x7c\x43\xf9\x35\x25\x1f\xd5\x3f\xcc\x55\x0e\x64\x9a\x0a\x11\x1d\xbc\xe2\xc7\xf8\xc7\xcf\xef\xdf\x5e\xfe\xe7\xf1\xaf\x84\xd9\x47\x59\x66\xcd\xd2\x77\x05\x97\xd9\xd5\x13\x7e\x8c\x59\x5e\x42\x68\x5f\x66\x9e\x64\x5b\xc9\x17\x0a\x78\x99\x30\xf7\x8c\x1f\xe3\x79\x92\xbf\x07\xe3\x40\xc2\xdc\xb3\xdc\xe2\xfc\xc1\xa6\xdb\x67\xfc\x08\xfc\x39\x61\xf0\x87\x1f\xe3\xb5\xea\xe9\x5a\xf5\xf0\x8d\xc1\xa5\xa4\x70\xcf\x58\x4e\xda\x35\x2b\x05\x7f\x20\x85\x7d\x54\xf3\x41\xb9\x20\x73\xfd\x20\xeb\x4e\x78\x4e\xe6\xf0\x87\x1f\x55\xa4\x37\x32\x57\xff\xf0\x6e\x02\x7c\xcf\xdd\x73\xc7\x4b\x7f\xb7\xce\xe7\xfe\x37\xf9\x8e\x1f\x55\xec\x9f\xb7\xba\x32\xf7\x22\x17\x4b\x82\x77\x72\xe1\xad\x91\xca\xb6\xe1\xda\xa9\xf1\x5b\x5d\x15\x2b\x72\x15\xd0\x93\x8f\xe7\xf1\xee\x8f\xd8\x7c\xfa\x25\xe1\x2d\x05\xbc\x54\xcc\xca\x37\x1a\x79\x8e\xb3\xd8\xbd\x54\x6a\xf5\x34\xf9\x41\x12\xef\x45\x9e\x9a\xf5\x55\x39\xe7\xec\x8a\x92\xc4\x3d\xe3\xc7\xf8\x7d\x48\xb0\x90\x8d\x2b\x35\x0e\xaa\xb0\x85\xc6\x7e\x05\xeb\xdc\x4f\xf7\xde\x30\x88\x3e\xc7\x89\x12\x81\x56\x6a\x2e\xc9\x49\x7c\xa9\x91\xd8\xd9\x3a\x57\x69\xb1\xa3\x62\xc8\x89\xf7\x62\xbe\x82\x85\xc9\x89\xfa\x37\x69\x2c\x4f\x65\x12\xcb\x53\x9d\xa2\x74\x2b\xc8\x89\x7e\xd0\xa9\x46\xf7\x91\x9c\xd8\x47\xfd\x85\x42\x05\xd4\x96\x5f\x26\xe5\xb9\xbe\xce\x34\xe6\x27\x27\x2d\x89\x3a\xf7\x1f\x05\x74\x49\xfe\xe9\x14\xd0\x75\x21\x27\xea\x5f\xa7\x49\x16\x85\x9c\xa8\xab\x4f\x95\x52\xa8\xbe\x14\xae\x1f\xe6\x0e\x95\x9c\xd8\xc7\xda\x97\x53\x55\xc6\x7f\xd5\x39\x8c\xca\x2a\x39\xb1\x8f\xc1\x6c\xd8\x71\xf8\xaf\xbb\x20\x97\x2c\x87\x7b\xfa\x82\xf9\x6c\x9d\x7f\x00\xb2\x06\x80\xd7\x89\x04\xbe\x6f\x82\x2f\x75\x1c\x01\x38\xf3\x33\xc9\xec\xea\x9a\x3d\x29\xb9\xe0\xc7\xd8\xd0\x7a\xe4\x33\x7e\x8c\x2f\x53\x2a\x77\xc8\x4a\x14\x9c\x64\x71\x0e\xe2\xba\xb7\xb4\x9c\xbf\xa5\xf3\x02\xf8\x3b\x99\x47\x07\x81\x23\x99\x09\x07\x87\x3f\xc7\x49\xc6\x92\x92\x64\xea\x1f\xa0\xcf\x7c\x49\xdf\x41\x2d\xb2\x83\xf2\x2d\xfd\x59\x87\x0b\x04\x80\xa2\x1a\x35\x63\x24\x59\x23\x49\xb6\x54\x52\x01\xc2\x25\xe6\x3a\x40\xb2\xb8\x25\x15\x60\xae\x48\x48\x09\x7f\x0a\x3b\xa9\xa6\xd5\xf3\x2f\x4c\x2c\x35\xf4\x57\xc9\x5e\x82\x6c\x48\xb2\x9f\x89\x58\xc2\x24\xa9\x47\x85\xcb\x54\x6b\x0a\x6a\x9e\xc3\xab\x7a\xc0\x8f\xf1\xbb\xe3\xa3\x8b\xcf\x67\xc7\xe7\x24\x1a\x62\x03\xfa\x51\xb4\x61\xe5\x31\xc4\x5f\x48\xc7\xeb\xd8\x3e\x57\x78\x6d\xf3\x4b\xfc\x72\xa9\x62\x1f\xb1\x18\xfe\xf1\x63\x5c\xe4\x24\x8b\x0b\xb9\x61\x93\x34\xfd\x20\x81\x8a\x3c\x71\x99\xff\x26\xb7\x0f\xb8\x45\xf3\x3e\x87\x09\xd0\xe5\x3c\x3d\xbe\x95\x10\x26\x73\xcf\xf8\x51\x9e\x16\x93\x4b\xae\x92\xff\x8a\x1f\x55\x8c\x6f\x4a\x32\xfd\x00\x29\x4a\x7a\x96\x99\x27\x48\x7b\x9d\x25\xf9\x17\x48\x83\x27\x48\xfb\xa4\x42\xd0\x43\xaa\x7e\xc6\x8f\x71\x5e\x08\xb6\x78\x30\x4b\xa9\xe3\x3b\x66\xad\xc9\xf8\x51\x81\x8f\x30\x55\xf6\xb2\x2d\x19\x3f\x4a\xc0\xd0\xcc\xdb\x4c\x94\x9b\x10\x9e\x74\x3a\x83\x7c\xf5\x24\xfc\x18\x5b\x83\xb0\x4d\x78\xee\xc6\x7b\x43\xbc\x4c\x4a\xf3\x7a\x34\x9f\xd3\xb2\x2c\x78\x29\x29\x53\xc0\x5a\x7e\x66\x92\xd5\x12\x20\x47\x29\x78\xf1\x40\xde\x99\x27\xfc\x18\xab\xd8\x18\xaa\x2f\xf6\x59\xed\xd1\xa0\x9f\xc1\xbb\xda\x8b\xc1\xf7\xb2\xf6\x9d\xde\xaf\x12\x3b\x05\x2a\x4b\x3d\x49\x6d\x2e\xe3\xe2\x49\x6d\x2e\xf3\x66\x37\x97\xf7\x39\x4c\x90\xa5\xe5\xd9\x56\x6e\x87\xcc\x49\x57\x6f\x72\x03\xbb\x72\x85\x2b\x01\x5c\x2a\xc9\xd4\x3f\x7e\x8c\x4f\xf4\x3b\xfc\xef\xa6\xd3\x8a\x5c\xb3\x72\x00\xe2\x20\x24\xd2\xa9\x4a\x02\x7a\x18\x82\x1f\x99\x84\x6f\x26\xb1\x05\x2d\x15\x53\x09\x95\xce\x63\x56\x5e\xa8\x14\xa8\x73\x0e\x7a\x40\x3a\xa1\x5e\xe7\x63\x7c\xf9\xda\xe1\xc1\xd4\x92\x15\xef\xe3\x0f\xa7\x3f\xfe\x78\x7c\xd6\xef\x47\x8f\xf1\x87\xe2\xfa\x9a\x72\xb2\x34\x5f\x65\xb1\x23\x72\x19\x1f\xe1\xc7\x58\x33\x15\x9b\xac\x98\x8f\x6f\xe2\xac\x98\xe3\xbb\xf1\x4d\x7c\x87\xd3\xa4\x5c\x52\xce\x1e\xe9\xf8\x26\xb6\xcf\x38\xa5\xf3\xe4\x86\x66\x3a\xd9\xbe\x60\x2f\xd5\xa5\x01\x20\x5c\x3c\xc8\x34\xfd\x88\xd7\x79\x4a\x79\x39\x2f\xb8\xcc\xe9\x5e\xf0\x3c\x59\x31\x91\xd8\x1a\xcc\x8b\xdc\xcc\x6a\xd6\xc8\xa5\x7e\x90\x23\x36\x04\xdd\x27\x5e\xdc\x3f\xa8\x85\xbb\x8c\x9b\x89\x00\xcd\x0c\x49\x18\xe4\x6d\x49\xc5\x0a\xdd\x24\x9c\x92\x4b\xf3\x04\x69\xab\x07\x48\x58\x29\x38\x73\xfc\xe7\x3a\xc9\xc8\xa5\x79\x02\xd2\x09\xfa\x17\xd8\xb6\x9b\xd4\x58\x0b\x3b\xc8\xad\x4e\x70\x5f\x9c\xc0\x84\x2c\xdc\x47\x45\x2d\x5f\xc6\x86\x52\x7e\x03\x1d\x01\x61\xdd\xa5\xf7\x02\x44\xbf\x15\x01\x5e\x7a\x2f\xa6\x0e\x18\x98\xa9\x08\x5e\xec\x54\x9a\x4f\xde\x9b\x2c\x35\xf7\x88\x4a\x59\xd0\x7f\x87\x9e\x70\x6a\x97\xc2\xbd\xe0\xc7\x58\xdd\x9c\x99\x9e\x7b\x6f\x50\x6a\xf5\x60\x7b\xaf\x1e\xe5\x59\x5b\x83\xfc\x31\x18\x42\x23\xcd\xe5\x33\x55\xfb\xaf\xf8\x31\x56\x5e\xc7\x54\x3f\xcf\x95\xc0\x85\x5c\xb6\xa5\xca\xd9\x92\xc8\x86\xa6\x72\xaa\xd4\x13\x7e\x8c\xb5\xd7\xba\x60\x63\x34\xd2\x60\xd6\xe4\x2a\xea\x6e\xba\x17\x89\x79\x41\x22\x4c\x2e\xf5\x03\x6c\x10\xd3\x59\xfd\xd4\xba\x81\x8b\xfc\x43\x91\xa4\xe4\x8d\x7e\x50\xd4\x97\x7c\xfa\xa9\x28\xbe\x94\xe4\x4d\xf0\xaa\x79\x1c\xbb\x57\x1c\xe3\xe0\x92\x55\xf7\x57\xde\xb7\x73\xbb\xf1\x5c\xda\x65\x30\xd4\xcb\x60\x90\x67\xe7\x3f\x7f\x92\x87\xe8\xfc\xe7\x4f\xb0\xa4\x46\xf4\x70\xe9\x9e\x65\x0d\x3a\x1a\xe9\x75\xac\x1e\x14\x59\xb6\xa2\x79\x4a\x73\xf1\x9f\xf4\x01\x76\xa8\x20\x57\x71\x33\x11\x7f\x8e\x29\xe0\xed\x07\xf5\x8f\x3f\x4b\x94\x7b\xac\x93\xcc\x23\xa4\xe6\x14\x52\x72\xaa\xf2\xa8\xcf\xf8\x73\x7c\x55\x14\x19\x79\x80\x3f\xfc\x39\xbe\x49\xc4\x7c\x49\x1e\xd4\xbf\xac\x1d\x4e\xe6\x83\xfa\xc7\x9f\xe3\x6b\x59\xf0\x5a\xc0\x13\x85\x47\x59\x5f\x26\x53\x33\x01\x4f\x14\x1e\x65\x6a\x91\xd3\x5f\x12\xd9\x0f\xf5\x80\x3f\xc7\x9c\x26\x69\x59\x4f\x38\xcd\x33\x99\xc9\x3c\xe2\xcf\x96\xef\x63\xf9\xf5\x11\x90\x99\x0f\x8d\x24\x49\x81\xe6\x29\x79\x90\xbf\xb2\x29\x2e\x6b\xe5\xf8\x73\x5c\xae\x6f\xc8\x83\xfc\x95\x83\x61\xb9\x1c\x0a\xcb\x61\x60\xf7\x30\xac\x7b\x78\x5e\xc1\xf3\x4a\xe6\x97\x1b\xfc\x01\xfe\xe4\x1b\x15\x6f\xd9\x62\x21\x13\xd4\x93\xca\xfd\xfa\x41\xe5\x7f\x2d\x7b\xb7\x60\x99\x64\x2f\x1e\xf4\x83\x4d\x81\x4c\xe6\x11\x7f\x8e\xd7\x39\xfb\x93\x3c\xc0\x9f\x7e\x83\x1c\xea\x41\xa5\x14\xb9\x4a\x28\x64\x0f\x41\x12\x59\xca\x4d\xfd\xe0\x9e\xf1\xe7\x78\x2e\x37\x23\xa4\xea\xa7\xdd\x28\x4f\x45\xb7\x3f\xef\xc1\xfd\xb1\x77\x3d\xac\x04\x3c\x37\x40\xeb\x2a\xd4\x54\x02\x12\xbc\x01\x8a\x5b\xa7\x3c\x85\x4b\x5f\x9f\x9e\x5e\x1c\xbf\x6d\xa9\xb7\x29\x46\xca\x7c\x21\xdb\x39\x4d\xf8\x7c\xf9\x96\x95\x40\x15\x43\x9b\x40\xca\xec\xc8\x00\xa8\xf7\x8d\x11\x63\x92\x3b\xf7\x8c\xef\x62\x75\x0f\x1a\x2f\x55\x98\x9c\x3b\xfd\x80\x1f\xf5\x07\x62\x72\xc8\x2a\x96\x74\xfe\xe5\xaa\xb8\x97\x35\xe8\x47\x09\xda\xe8\xbd\x78\xc7\x68\x96\x92\x3b\xf7\xac\xd3\x8f\x38\x4d\x74\xb2\x7c\xc4\x8f\xf1\x07\x96\x7f\xf1\xbb\x12\xbc\x1b\x5e\xc5\xbc\x9f\x24\x79\x72\x0d\x7d\x68\x49\x95\x99\xe7\xb5\xb4\x37\xc9\x2a\xb9\x62\x19\x03\xd2\xed\x4e\x22\x67\xfb\xaa\xeb\x3e\x29\x52\xb6\x60\x94\x07\x55\xd7\x12\x65\xd6\x9b\x30\xa9\x56\xb1\xf9\xfa\xa6\xd6\xc0\xb5\xd7\x4d\xa3\x1d\x40\xee\xe2\xb6\xe4\xfa\x58\xbd\xec\x6d\xc9\xc0\x30\xea\x67\x79\x9e\xdd\x1c\x7e\xf0\xa1\xe6\x3c\x59\x89\x35\xa7\x67\x12\xa0\xf1\x0b\x4e\x29\x99\xc7\x8d\x34\xb9\xb8\x80\x2b\xaf\x12\x5e\x92\x8d\xa9\x76\x7c\x17\x9b\x47\xfc\x59\xb0\xac\x1c\x6f\x68\x39\x4f\x56\xf4\xf8\x7e\xc5\x69\x09\x01\x7d\xef\xe2\x7a\x52\x25\x29\x88\x9f\x2e\x4e\x3e\xbc\xde\x55\x59\x85\x77\xc8\x3f\x35\x3d\xd7\xef\x47\xfa\x0e\xdb\x5d\x6b\x2f\xc5\x4d\x76\x9e\x2c\x68\x53\x80\x1c\x0d\xf1\x9d\xfd\x8c\x94\x0a\x01\x6c\x70\x5d\x87\x2d\xe9\x72\xb9\x8f\xac\x04\x6f\xc7\xea\xb3\x7b\xd9\x7d\x42\x2f\x8e\x4f\x3e\x7d\x38\xba\x00\xd9\xae\x3c\x86\xb0\x96\x66\x4d\xd4\x69\xbf\x53\x24\xaf\x49\x7a\xf2\x28\x43\x47\x7f\x3e\x3e\x3b\x7f\x7f\xfa\x91\x1c\x7b\x04\xf0\xff\xff\x1f\x9f\x8f\xcf\x7e\xbd\x7c\xff\xf1\xe2\xf8\x47\x15\x37\xb0\xdf\xdf\xbb\x8f\xff\xf8\xc7\x9a\xf2\x07\x73\x8e\x9f\x90\x45\x7f\xe7\x09\x61\x4d\xb1\xba\x32\x4b\xd0\x95\xa1\xea\x0a\xa3\x77\xb0\xd4\x64\xc3\xca\x73\x08\x4b\xf5\x26\x63\xf3\x2f\xe3\xfb\x38\x78\x97\x20\x48\xbb\xc2\x96\x45\xc6\xf7\x71\x98\x20\xbf\xcb\x7f\x9d\xa4\xbe\x7b\x09\xe6\xfb\xeb\x62\x9d\xa7\xa5\xfb\xac\xde\xcd\xd7\x37\x19\xa3\xb9\x38\xa3\x73\xe1\x65\xf1\x12\x83\x5a\x58\x7e\xed\x3e\xd5\x6a\x0c\xbe\xc9\x52\x67\x45\x01\x5f\x75\xbd\xf6\x55\x7e\x03\x0f\xc8\xde\x47\xf7\x8e\x59\x79\x4e\x39\x28\xcf\x80\xdc\xf0\x1d\xe3\x25\xb8\xee\x1d\xcb\xcd\xd3\xfe\xa9\xd2\x90\xcf\x10\x79\xf7\xfe\x9b\x0f\x86\xd5\x45\x04\xb9\xaf\xa7\x18\x02\xf0\x2d\x2b\x57\x92\x5a\xa0\x9c\xdc\xd7\x53\x24\x1c\x2d\xf4\x3d\xc0\xa9\x7d\x94\x84\xf1\x5a\x14\xde\x17\xff\x15\x0e\x7d\xb9\xf4\xbe\xfa\xaf\xf2\x2b\x2b\x45\xc1\x1f\xfc\x0c\x61\x8a\xa4\xb5\x8a\x9c\x7a\x19\xfc\x57\xe0\x3f\x0c\x8d\xf7\xae\xe0\xe4\x34\x7c\xf7\xc4\xf7\x8e\x16\x7c\x97\xcc\x65\x0b\xe4\x74\xf7\xb7\xd6\x72\xad\x05\x24\x65\x58\xac\x05\xe5\x6f\xcf\x3f\x90\x53\xf7\x6c\xd3\x6d\xa2\x49\x31\x09\x38\x1a\xe2\x90\x90\x45\x91\xba\xa8\xf2\xaf\x56\x7a\xf8\x8d\xcf\x94\xbe\x4d\x44\x72\x94\x26\x2b\x59\xf1\xb9\xff\xe6\x0b\xfa\x41\x5e\xee\x72\xb5\xa6\xcb\xd6\x45\xbc\x4c\x64\xa3\x4a\x87\xd0\x5e\x34\x4a\xfc\xc6\x32\xca\x7b\xa8\xdf\x87\x5c\xa6\xfd\x27\x72\xb6\x55\xa7\x58\x76\xa4\x34\x33\x5e\x93\x1d\x55\xe9\x5c\x1d\xb9\x83\x4b\x41\x5e\xc3\x1f\x56\x6f\xb1\x19\xc4\xeb\xd8\x0d\x13\x3e\xfc\xe3\x73\xce\x84\xfb\xea\xbf\x2a\x81\xcb\x7a\xf5\xae\xe0\x5a\x26\x40\x5e\xd7\x53\xaa\x9d\x73\xaf\x8d\x3a\x7e\x22\x8f\x9e\x05\xc1\x4f\x38\x8f\xdf\x9f\x5f\x7e\x3c\x7d\x7b\x3c\xc9\x63\xa5\xd1\x10\x6b\x8d\x08\xf2\x38\x76\xf7\x94\x3a\x4d\xdd\x53\x92\xb6\x74\xf2\x18\xe8\x57\xd8\x3b\xf6\xff\x2d\x0b\x1a\x97\xd0\x7b\x1e\x1f\x0c\xe3\xef\x7b\xba\x3f\x9e\xb2\x46\x53\xeb\xe3\x7f\xb8\x4f\x5a\x85\x84\x50\x3d\x97\x84\x9a\xe9\x0d\x0c\x7d\xc0\xb1\x5d\xe3\xba\x58\x15\x69\x55\x25\xd2\x2b\xa3\xab\xef\xb8\x5a\x73\x6c\x9b\x12\x5e\xfb\x1c\xe7\x93\xc8\x7d\x21\xea\xc1\xcf\x40\xc2\x2a\xd1\xd8\xcf\xae\xa3\x5e\xb9\xcc\xca\x54\x4e\xcd\x27\x97\x67\x7c\x9f\xd3\x79\x71\x9d\xb3\xc7\x7f\xa9\x2f\xfb\x56\x23\xa9\x40\x3d\x35\x54\xc4\xd5\x86\x6f\xa0\x42\xe4\xe9\x86\x5e\x5e\xea\x1a\xb0\x0e\x4e\x27\x93\x30\xad\xea\xc1\xe4\x94\x8a\xa8\x33\x8b\xd1\x5e\xd4\x6e\x34\xe2\xd0\x2e\xa6\x65\x1d\xd7\x92\xb4\xe4\xe0\x7e\xdb\xd3\x1d\xdc\xad\x29\x6f\xca\x40\x08\xb5\x7e\x9f\xc7\x77\x2c\xcb\x8e\xd2\x14\xe0\x25\x84\x0b\x0a\x93\x22\xbf\x61\xed\x5c\x16\x53\xe3\xe4\xc9\xa4\x27\x69\xea\x19\x1c\x40\x04\x96\x8d\x31\x79\x76\x76\xce\x35\x5b\x09\x1b\xe7\x57\xe9\xd4\xe5\x5d\x6b\x07\x06\x11\x90\x69\xd7\x79\x7e\x4c\xca\x52\x39\x08\xfd\x5d\x14\xbf\xf7\xb4\xe1\xa2\xd7\xb8\x0e\x7f\xe0\x7a\x80\x6b\x53\x84\xaa\x4a\x5b\x92\x35\x2d\x59\x0a\x08\xd0\xc4\xad\x99\xbe\xac\x8b\xd3\xdc\xa5\xa8\x51\x13\x5a\xd5\x94\xe5\x3c\x4b\x7c\x5b\x2b\xc3\x09\xd2\x26\xd9\x74\xc0\xc0\x7d\x52\x82\xbc\xe0\x19\x79\x54\x2a\xef\xc4\x49\x54\xe8\xc7\x9a\x7a\x5b\x23\x66\x67\xd3\xb3\xfb\x00\xe5\x03\x02\x71\x2f\x3d\xcb\x0b\x6d\x9b\xbb\x91\x49\x63\x41\x04\x5c\x74\x0a\x1e\xe5\x08\x2f\xf5\x95\x2c\xaf\x3a\xd4\x58\x29\x54\xec\x09\x73\xbd\x60\x6a\x20\x16\x63\x85\x6b\xf9\x55\xac\xab\xf6\xd0\x76\x09\x68\xc3\xb1\xc8\x98\x98\x9a\x29\x95\x35\x25\xda\x23\x8c\x9c\xc1\x04\x62\xc0\xf5\xfb\xb9\x81\xe2\xc7\x92\x91\x97\x04\x71\x3d\x25\x12\xb8\x44\x98\x47\x25\xf2\x16\x21\x8c\x11\x50\xae\x32\x26\xa2\xde\xb3\x1e\x02\x57\x16\x6b\x04\x77\x9c\x90\x50\x29\xdf\x2d\xcf\xfe\xb2\xfd\xed\xd9\xb3\xeb\x8e\xef\xaf\xdf\xab\x40\x4d\xe3\xcb\xe7\xdb\xed\xbe\x0a\xb0\x68\xa3\x00\xfd\xa5\x87\x26\x74\x9c\xd2\x79\x91\xd2\xcf\x67\xef\x2d\x65\x17\x51\x14\x73\xba\xca\x92\x39\x8d\x32\x4c\xf3\xfa\x77\xd5\xf0\x9c\x3c\xfb\x4b\x34\x19\x1f\x44\x93\xf1\x8b\xed\xf7\xdb\xd7\xdb\x37\x68\xfb\x3c\x9a\x8c\x5f\x6f\xdf\x6e\x8f\xd0\xf6\xc5\x10\xf9\x7d\xf2\x43\x62\x35\x6b\xf4\x5b\x9c\xe3\x66\x8f\x54\x8b\x4b\xf2\x2c\xfa\xed\xd9\xf6\xb7\x78\xfb\xdb\xbf\x6f\x7f\x1b\x6c\x7f\x9b\x6c\x7f\xdb\x6e\x7f\x8b\xb6\xbf\xa1\xed\x6f\xd3\xed\x6f\xb3\xed\x6f\x9b\xed\x6f\xd5\xf6\xb7\xdf\xd0\xb3\x6b\xbc\x20\x81\x5e\x33\x5e\x35\xb5\x91\x97\x49\x79\x7a\x67\xef\x9a\x5c\x67\x6f\x9c\xef\x36\xeb\x47\xc5\xe8\x39\x1b\x5d\x6a\xd2\x62\x94\x67\x8f\xbe\x3c\xd9\xf2\xe8\xab\xd2\xdd\xa4\x54\xf1\xc0\xe9\xbc\xc8\x53\x07\x0f\xe4\xc1\x37\x74\xe1\xef\xb1\x8e\xbc\xbe\xd2\xaa\xd1\x58\xa0\xa7\x1a\xe0\xc5\x2d\x4b\x69\x77\x95\xf0\xe4\xa6\xfb\x3b\xd8\x63\xfd\xde\xac\x50\x41\x48\x3a\x15\x33\x89\x0f\x1b\x26\xa4\x13\x3e\xee\xf5\x06\xdc\x7a\x7c\xfd\x3a\x4c\x33\xed\x26\x61\xcb\x71\xcf\x8b\x64\x29\x1b\xbd\x25\xd3\x59\xe7\x76\x3a\x9c\xed\x34\xb2\x11\x60\x64\x03\xd8\x08\xb7\x78\x27\xd0\x4a\xf7\x79\x3c\x5f\x26\xfc\x4d\x91\xd2\x23\x11\x31\xd4\x91\xa4\xd1\x6a\x2d\x22\x30\xab\xdf\x1b\x79\x81\x35\xf1\xed\x74\x54\x6f\xcd\x7a\xdf\x90\x45\x5e\xfc\x07\xde\x1b\x82\xa3\x73\x7c\x3b\x3d\x78\x32\xeb\xfe\x08\xaa\x57\x59\x5f\xec\xca\xaa\x40\xef\xb5\x1c\xe9\x75\x38\x52\xef\xf4\xc1\x00\xed\xde\x5e\xe2\xde\x6f\xbf\x7d\x37\xea\xa1\x0a\x5f\x07\xdd\xb5\xfa\x66\xd1\xf4\xbf\x9e\xcd\x06\xa8\x27\x33\x1c\xb4\x66\x88\xf5\xd7\x17\x6d\x5f\x7b\xaa\x53\x57\xb2\x53\x57\x4f\x77\xaa\xc2\x57\xcd\x19\x53\x6b\x73\x13\x49\x5a\x07\x72\xd9\x75\xfd\x14\x1f\x7f\x7c\x73\xfa\xf6\xf8\xf2\xe8\xe3\xdb\xcb\xb7\xc7\xf0\xf8\xe9\xe8\xe2\xa7\xcb\xf3\xe3\x1f\x4f\x8e\x3f\x5e\x9c\x4f\xd2\x88\xa3\x31\x97\xd5\xee\x9a\x5d\xbf\x5e\x99\xef\xa9\x21\x3c\xd4\x7c\x18\x6f\x2a\x84\x2f\x9f\xf2\x6b\x7c\x67\xe9\x0b\xcf\x2b\xc5\x8b\xff\x00\x5c\xed\x6d\xa2\xa1\xd2\x75\xb6\x78\x64\x84\x9c\xba\x73\x2e\x93\x2d\xbc\xb5\x7e\xd0\x70\x61\x1e\x5a\x2c\x9d\x15\x56\xc4\x19\xc9\xa7\xc9\x0c\xcf\xc9\xb0\x33\x3a\xe8\x47\x25\x39\x78\xf9\x32\x9a\x93\x5e\x8f\x10\x92\x4d\x5e\x8c\xff\xf6\x77\xf9\x10\x76\x64\x32\x1a\xbf\x38\x68\x49\x3e\x18\x0f\x91\xec\x65\x46\x32\x6d\x1f\x31\x42\x38\x62\x84\x6d\xb7\xd3\x19\x52\x98\x2e\x43\x38\x2a\x48\xe1\xa5\x0c\xf7\x48\xf4\xa2\x5f\x22\x84\xf0\xe8\x45\xbf\xec\xf7\xf9\x74\x3e\x1b\x0c\xb0\x46\x8d\x1b\x79\xe8\xc7\x73\x6d\x71\xb0\x8e\x24\xb9\x69\x5c\xd9\x43\x88\xb6\x31\xdb\x6e\x2f\x71\xb9\x2c\xd6\x59\xfa\x16\x20\x70\x39\x2e\xb6\xdb\x4b\x0f\x8d\x1f\xd7\xc8\x03\x0a\x1d\xd7\x01\x70\xe2\x5c\x51\x6d\x84\x70\x00\x01\xf7\x0d\x2c\x0a\xce\xe9\xb5\x2d\x9f\x70\x4e\x74\x59\x6a\x28\x3f\xa8\xcd\xc4\xc1\x54\xb5\xe5\x5e\xc4\x4a\x55\x8a\x4d\xc4\xd8\x0b\x72\x99\x08\x41\x79\x4e\x7a\x3d\xeb\xf4\xe5\x9a\xde\x9b\xf5\x82\x24\x4d\x26\x94\x41\xa2\x9c\x0d\x1b\xab\xd2\x6d\xa2\xd3\x60\xbf\x9a\x31\x4d\xd4\x40\x55\xd8\x4f\x88\x98\xa7\x12\xc6\x6e\x02\x2c\x76\x95\x09\x6e\xc6\xce\xeb\x60\x4f\x45\x27\xc6\xcc\x19\x18\xe6\x2f\x99\x8b\x50\x5c\x68\x95\x7a\xc5\x01\xce\x13\x11\x15\x8a\x20\x8c\x04\xf2\x80\xdd\x7d\x60\xcf\x2a\x07\xdc\x62\x79\xe2\xa6\x63\xbb\x8d\xfc\xc9\x91\x80\xfd\x8c\x5e\x1f\xdf\xaf\x22\x7f\x0e\x11\xf2\xa7\xb0\xc2\x7e\x23\xd7\xf4\x09\x33\x55\xb7\x38\xc6\x37\xd6\x1e\x21\xe0\xb5\x60\x11\x71\x84\xc2\x38\xed\xbc\x25\x2a\xb3\xb7\x29\xa6\x7c\x9a\xcf\xc0\x2a\xf5\x38\x62\x10\xe8\xcf\x9a\x06\xba\x08\x0d\x45\x58\x42\x67\x2f\x82\xec\x45\x15\x8e\x60\xb5\x16\x0d\x4e\x04\x7a\x05\x7d\x56\x15\x82\xed\xa1\x57\x47\xde\x69\xf4\xcf\xa2\x39\x98\xc5\xfb\x88\x61\x66\x4c\xd4\x55\xa5\x98\x4d\x4d\xca\xcc\x06\xec\xad\x4d\xd3\xa4\xbe\xa7\xf3\x98\xa5\x63\x6d\x38\xed\x92\x51\x3d\x9f\x36\x66\x8d\x59\x8a\xc6\xf5\x2a\xa6\xb5\x04\x2c\xb3\xcd\x70\x1e\xce\x82\xba\xd9\x6b\x1a\x90\xb5\xac\xe3\x9e\x89\xae\x3d\x9d\x75\xcc\xde\xed\xc0\x9a\x8a\xfa\x9a\x8a\xaf\xac\xa9\x80\x35\x3d\x95\x0b\x8a\x24\x73\x06\xc3\x60\x68\xd7\x82\x0a\x99\xb7\xf0\xf3\x16\xde\xde\x87\xce\x5c\x34\x19\x9e\xd0\x50\xfb\xcf\x35\xe5\x0f\x9f\x24\x8d\x52\x12\xba\xdd\x6e\x2a\xef\x90\x9f\xd8\x71\x77\x28\x71\xc8\xf9\xd9\x6f\x83\x67\xd7\x37\xb8\xf7\x97\x83\xa1\xe4\xc5\xf8\xc3\x46\x90\x56\xe2\x58\xfb\xff\x92\xa8\x86\xf4\x7a\x36\x02\x7b\x75\xe1\x4d\xb4\x72\xf6\xa3\x49\xd0\x7a\x32\x0e\x72\xb6\x67\x6c\xe4\x03\xeb\xe0\x7a\x36\x99\x08\x13\xf2\xa9\x61\xd1\x0e\x40\x5d\x72\x7b\xca\xc1\x24\xf8\x30\xd4\x9b\x96\xe2\x21\x96\x34\xce\x50\x92\x50\x1d\x2a\xe9\x04\x81\x5b\x20\x33\x2f\x0a\xb5\x21\x88\xa8\x3a\x9f\x9e\x64\xac\xbc\x20\x58\x24\x2c\x8b\x19\xe9\xfd\x57\x0f\x17\x64\x3a\xc4\x43\x0c\x51\x01\x9c\x51\x91\x35\x39\xc2\xe0\x64\x31\x23\x7b\x43\xbc\x26\x43\x89\x47\x0f\xe7\x8e\x37\x9c\xcb\x7d\x65\x9a\x48\x09\x9d\xce\x67\x78\x49\xee\xa2\x12\xa7\x8a\x33\x2e\x10\x5e\x90\xa5\x1a\x33\x5e\x91\x65\x1c\xe0\xb1\xc3\xf5\x4b\x6b\x97\xbf\x36\x5b\xf4\x86\x94\xd3\xf5\xac\xf3\x62\x8f\x90\x1b\x40\x07\x80\x71\xf7\x46\x38\x27\xb9\x25\x18\x81\xc8\xc4\x6c\x40\x7a\xcf\x7a\x38\x27\xb7\x53\x95\x75\x16\xdd\xe0\x1c\xd2\xaf\x5d\x0a\x42\x15\x78\xbc\xdc\x18\xbe\x34\x35\xa8\x47\xc5\x91\x1f\x2f\x6a\xd8\x75\x55\x55\x19\xf8\xd4\x6c\x6f\x0f\xe1\xdc\xe1\xae\x04\xe7\x16\xd7\xb1\x41\xef\xbb\x1e\xce\x35\x0e\x2b\xf0\x53\x86\x61\xfd\xbe\x88\x93\x52\xb9\xf1\x8b\x13\xc9\x6c\x1a\x97\x44\xd0\x27\xf0\xeb\x51\x52\x88\x71\x59\x8e\x4b\xc3\x52\x97\xe3\xa4\x42\x15\xfe\x14\xf0\x4a\xea\xcb\xbb\x82\xef\x84\x1f\x50\xa3\x76\x02\xdd\xe2\x45\xe2\x62\x49\x39\xed\xb2\xb2\x9b\x17\x5d\xe0\xc1\xbb\xb2\x44\xda\xed\x0d\xe8\x0e\x93\x33\xdb\xaa\xdd\x26\x06\xe0\xd4\x3e\x04\x90\xc7\x7e\x04\x54\x3a\xcd\x67\x84\x79\x7c\x42\x38\xa8\x52\x49\xd6\x9b\x64\xf2\xde\x5e\x30\xa6\xb0\x9c\x61\xb2\x9e\xc0\x89\xba\x9c\xe4\xbb\x7a\x30\x21\xcd\x40\x31\xdf\x36\x21\x8c\xf0\xd8\xac\x90\x89\x45\x62\x46\x5d\x98\x51\x27\x84\x4d\x0b\xb5\x99\x13\xb3\x99\x73\xbd\x6b\x07\xe4\x6a\x9a\xe8\x4d\x9a\x60\x47\x47\xf4\x9e\xf5\xf6\x88\xe6\xb0\x0c\x61\x9c\xcb\x22\x83\x1c\x61\xd8\x38\x1e\x10\x55\xf5\x69\x2c\xa9\x06\x0f\xb7\x76\xea\xa6\x32\x0a\xf2\x22\x24\xd1\x4e\xdb\x7c\x79\x45\x5a\x36\xd1\x74\xe6\x2c\x43\xbf\xd0\x87\x32\x92\xdc\x07\x28\x65\x44\x3e\x8d\xbe\x8b\x8a\x90\x2b\x8d\x21\x2a\xe0\xcc\xd1\x21\x36\x52\x50\x8b\xd0\x81\x21\x85\xcf\x0a\x87\xcf\x4a\x32\x3c\x2c\x5d\x10\xb5\xd2\xd4\x9e\xc9\x43\x37\x9d\x91\xde\xa0\xa5\x9e\x62\x5a\xce\x20\x9a\xbf\x22\xcc\x95\xc9\x77\x32\x20\xbd\x1d\xd9\x11\x16\x36\xaa\xa0\xd9\x98\xbe\x4c\x71\xd2\xeb\x8d\x7b\x93\xde\x40\x68\x51\x4f\xbf\x57\x3b\x8b\xe0\x6a\x79\xd7\x5c\x7a\xa1\x64\x0c\x33\xd3\x87\x18\xb1\x9b\x0a\x3f\x81\xae\xa7\xf9\xcc\x64\x27\x3d\x84\x0b\x72\x12\xb1\xe9\x70\x86\x70\x42\xcc\x74\xe0\x52\x82\xc7\xcc\x48\x8b\x25\xbd\x6b\x76\xe2\x24\x23\x3d\xc1\xd7\xb4\x37\x8e\x92\x57\x07\xfd\x7e\x6f\x3a\x93\x9c\x4f\xa1\xf9\x97\x64\xff\x40\xee\xae\x12\xbc\xb1\x4f\x0b\x9b\x3e\xc4\xf2\xcb\x6c\xbb\x8d\xf8\xb4\x98\x91\xe9\x0c\x21\x9c\x11\x36\x1d\xcd\x26\xb2\xf9\xd1\x0c\x8d\x7b\x3d\x84\xcb\x89\xfc\x6c\xe6\x77\x0c\x79\xb3\x1d\x47\xda\xca\xcd\x9b\x1b\x0c\x73\x4d\x25\x59\xdc\x34\x33\xa1\x7f\xf6\x46\x72\xe7\x38\xd1\xd8\xbf\xf5\xd0\x21\x10\xfa\x05\x08\x8f\xa9\xe1\x16\x87\xb8\xd0\x51\xc7\x12\x3f\xfb\xa4\xa7\xfd\x30\xcb\xf3\x67\x76\x8c\x2d\x94\x0c\x46\xd8\xd9\xd6\x06\xb5\x25\xc8\xb9\x77\x09\xd7\x54\x6e\x24\x75\x42\x69\x70\x42\x29\x9c\x50\xaa\x3a\xb1\x26\xb4\xf3\x75\xc6\x9c\x12\x79\x94\xc6\x11\x75\xe4\x4c\x44\x11\x5e\x7b\xaf\x6b\x3d\xaa\xb9\xe5\x4b\x3a\xf3\x57\xa3\x7e\xbf\xf7\xac\x47\xbc\x1e\xcc\xf7\x47\xa8\x3e\x21\x32\x0d\xaf\xc9\xda\xa5\xac\xad\x8b\x16\xc9\x43\xef\x0d\xdd\xe1\x4d\xc9\xf0\x30\xb5\x68\x1d\xb0\xd2\x79\xc4\x31\xf5\x19\xe0\x14\x21\x64\x36\x68\x3a\x18\xa0\x43\x53\x78\x29\x01\xc4\x82\x0c\x0f\x17\xee\xf8\x2f\xc0\x12\x79\x31\xb3\x20\xbf\xdf\x5f\xea\x28\x10\xd3\xc5\x0c\x75\x5a\xbd\x3d\x50\x05\x53\xa2\x36\xe0\x4d\x15\x56\xdd\x6e\x0d\xb5\x92\x13\xae\xe2\xf4\xf0\xe9\x48\x82\x17\x3e\x3d\x90\x24\x8c\xa8\xe7\x2b\x49\x22\xf3\x65\x24\x91\xf9\xd6\x24\x99\x1e\x58\x57\x92\x6b\xcb\x94\xec\xaf\x21\x0d\x64\x8b\xf9\x1e\x21\xa5\xf9\x52\xee\x03\x23\xc2\xf6\x08\xc9\xac\x83\x81\x7d\x8b\xb7\x20\x7d\xc2\xf6\xb3\x31\x94\x9a\x94\xfb\xf9\x78\x58\x21\x54\x45\x4b\xb5\x70\x2b\xb2\x9c\x0e\xad\x2d\xf6\xaa\xdf\x5f\x79\x53\x12\x31\xf9\xae\xc9\x87\x7e\x1f\x64\x48\xdf\xc9\x85\xb5\x89\xfa\x3c\xee\xff\x4d\x2e\xef\x5a\x93\x1f\x3b\x18\x26\xe2\x88\x01\xe0\x63\x81\x5d\x54\x0e\x86\xf6\xd8\x76\x1b\xc4\x55\xd0\x88\x0e\xc8\x4a\x88\x9c\xc0\x9c\x7f\x8f\x9e\x0d\x9a\xa9\x59\x5c\x26\x81\xcd\x08\x2b\xff\x7b\x17\x11\x47\x1d\x4b\xd5\x1b\x91\x8b\x17\xf6\x72\x78\x98\x39\x49\x4c\x66\x20\xd9\x9a\xe4\xd3\x6c\x86\xe7\x64\xad\x89\xc1\x54\xee\x4c\x9f\xec\xc2\x4b\xf2\x80\x17\x3a\x8e\xc4\x7c\x8f\x90\xcb\x7e\x3f\x95\x7f\x16\x09\xac\xc8\xf0\x70\xf5\x72\x6e\xea\x5e\x01\xf1\x49\xf6\xd4\xfd\xd8\x0d\x99\x4f\x57\x33\x7c\x2b\x21\x43\x31\x4d\x06\x83\x59\x67\x49\x08\x79\xe8\xf7\xa3\x25\xd9\x54\x08\x7f\xf5\x3c\xf6\xfb\xe9\x74\x35\x9b\x2c\xa7\x37\x33\x72\xdb\xef\xb7\xb0\x18\xb7\x68\xac\xbe\x56\xe5\x34\xf3\x08\xca\xb5\x25\x28\x41\xfa\x5a\x8e\x97\x98\x95\x6f\x1f\xf2\xe4\x86\xcd\xc7\x0b\x8b\x4b\xca\x2a\x5a\xe1\x35\x06\x86\x5e\x02\x47\xa3\xc1\xd3\x1b\xc6\xcf\xe3\x17\xbd\xaf\xf7\x50\x82\xe9\x4f\xf1\xc7\x82\xdf\xc0\x4a\x71\xb2\xc9\xcd\xf3\xb9\xa2\x44\xc6\x6b\x6c\x93\x3e\x25\x62\x39\x2e\xf5\x3d\x81\x7c\x31\x79\xd2\x10\x32\xdf\x24\xab\x56\x7a\x09\x2e\x55\x3a\x34\x2a\xa2\x5e\xcf\xb8\xee\xb7\x17\x5c\x08\x7b\x3e\x94\xac\x14\xc9\xac\x54\x41\xb8\xbe\xcd\xc1\x65\x40\x39\x14\x12\x8f\xc8\x1d\x52\xb6\xec\x90\x52\xed\x10\xa1\x37\x3d\xea\x24\xd1\x1c\xaf\x71\x31\x5d\xcf\xd4\x96\x4c\x09\x77\x97\x3b\xeb\x59\x27\x9d\xc0\xb5\x04\xb4\x3d\xce\x95\x80\x9e\xe1\x39\xaa\xaa\x48\xd2\x2c\xe1\x9d\xac\x98\x28\x97\xa2\x98\x6a\x26\x5d\x79\x74\xd4\x51\x0d\xb5\x67\x8c\x23\xf2\xc9\xbb\x50\x3f\xf2\x6f\x7e\xf9\xe5\x1f\x65\xe8\x37\xa1\xc5\x12\x9c\x97\xb7\x2b\xf9\x57\xbf\x2a\x6e\x31\xe9\xfe\xbf\xbf\x25\xce\x8a\xeb\xa3\x2b\x50\x01\xc7\x34\x7e\xaf\x4d\xe5\x81\x6e\x7e\x9f\x2f\x24\xda\xbc\xe0\x49\x5e\x32\xd9\xa8\x32\xc1\xf4\x53\x14\xff\x48\x63\xa5\x31\xf6\xe9\xe8\xec\xe8\xe4\xfc\xf2\xfc\xd7\x93\xd7\xa7\x1f\x08\x8d\xeb\xef\xe7\x17\x47\x17\xc7\xee\xd5\x34\xe6\xaa\x23\xad\x97\xd6\x6c\x87\xd3\x2d\xbb\xc7\xa0\x5f\x6a\xe1\xb4\xa3\x9d\x8e\x25\xd3\x49\xcf\x55\x0f\xe3\xa4\xa9\x16\x26\xde\xd0\xb2\x4c\xae\x29\xb8\xd7\x68\xc9\x63\x2a\x05\x7d\x45\xf0\xec\x7a\xc1\x93\x39\x9d\xec\x48\x0f\x77\x85\x72\x14\xc9\xd5\x7f\x8b\x37\xb0\x9a\x97\x28\x55\xa7\xfd\x8a\x42\x17\x82\xce\x2d\x0e\xa1\xca\x0d\x59\xb1\x43\xa2\x90\x7c\xfb\x2d\x58\x59\xe3\xec\xe1\xfe\x1a\x25\x7a\x16\x31\x07\x4a\x00\x82\x1d\x4e\xf9\x0c\x05\x7e\x46\x1c\xc1\x05\x7e\xf7\x5d\x60\x41\xde\xef\x73\xe7\xf1\x8f\x4e\xf9\xfe\x48\x09\x95\x5a\xb0\x74\xbf\x9f\x98\xbb\xb0\x9e\xc7\x5d\xf4\x50\x15\xe5\x56\x44\x27\x48\xee\xb3\x1e\x78\x5a\x98\x32\x43\xcc\x25\x01\x22\x66\x2e\x06\x89\x64\x09\x66\x55\x78\x4f\x6a\xc9\x65\x39\x3c\x1b\x76\x9f\x4e\x05\xf4\xcb\x05\x5c\xb0\x6e\x57\xe5\x27\x02\xd7\x66\x26\x3c\x62\xe8\x3f\x29\x94\x78\x4a\xc2\xa1\x2e\xe9\x05\x96\x54\xd6\x30\xcd\x67\x55\x18\x01\x5d\x85\x97\x01\xf7\x8f\x59\x71\x8d\xd8\x22\x3a\xf0\x95\x0d\x36\x3a\xe8\xcc\x8c\x88\x0e\xe4\x88\xbc\x7d\xd9\xfd\xb7\xde\x80\x0f\x7a\xe3\xae\x64\xe0\xac\x6c\x6d\xca\x5c\x66\xe6\xdf\xc9\x7b\x37\xb2\x4d\x6f\x4e\xdb\xad\xf3\x27\x54\x2c\xba\x8a\x24\xdd\x6e\x1b\xd3\x51\xcf\xf8\x11\xbe\xbb\x46\x96\x5f\xf3\xad\xd7\xef\xab\x28\x60\xb0\x93\x10\xf8\xe3\x39\x74\xc5\xfd\x90\x53\x92\x54\x4f\xb2\x6c\xbc\xa9\xb0\x32\xe7\x4b\xe5\xa3\x32\x57\x93\x8f\x55\xa7\x8c\xf2\x38\xc9\x32\x6c\x63\x26\xef\x8d\x94\x8b\x44\xb9\xb4\x6b\x20\x79\x23\x81\x30\x45\x76\x5f\xc1\x1e\xf6\x76\xf4\x76\xab\x02\x2f\xe4\xda\x0c\x2e\x05\x2f\xa2\xb2\x67\xc8\xd5\x24\x10\x38\x48\xb4\x85\x9c\xe4\x9e\x4b\xfa\x4f\x68\x81\xf4\x0a\x02\xe3\xac\xa2\x0c\x21\x2f\xfa\xb7\xa4\xe3\xcc\x6a\xe6\xda\x2e\x31\x35\x87\x08\xa8\xe5\xd0\x83\xef\x9c\x0c\x71\x6a\x39\xb0\xc3\xf9\xcb\x14\x84\x61\xc5\x74\x3e\x93\x55\x4d\xe7\x33\xf0\x3b\xd4\x56\x91\xf6\xd0\x2b\xbb\x25\x67\x78\xca\x9f\xc8\x6a\xe9\xcc\x49\xae\xdd\xba\xd6\x02\x94\x06\xfe\xb4\x9c\xab\xb0\xca\xbf\x33\xb7\xdb\x49\xa9\x2d\x8e\xc1\x1b\xa7\xba\x0d\xee\x5d\x5e\x2a\xd0\x7e\xb9\x7f\xf0\xfd\xe8\x87\xbf\x7f\x3f\x1c\x0e\x47\xcf\x5f\xfc\xed\x87\x83\xe1\xfe\xf3\xe7\x07\x07\x77\xcf\x7b\x9d\x1a\xf4\xbf\xd5\xd7\xab\xbd\x4b\x83\x35\x4c\xd9\x83\xe7\x07\x3f\xfc\x70\xf0\xf7\xe7\xc3\x83\xe1\xf3\xfd\x83\xe7\xcf\x0f\xa0\x70\x88\x4a\xae\xf5\x3d\x68\xef\xf2\xf2\x1f\x9f\x5c\xd1\xe7\x3f\x1c\xfc\xf0\xf7\x83\x17\x7f\x7f\xf1\x62\xff\xf9\x81\x2e\xd8\x86\x99\xae\x74\x08\xcb\x87\x7a\x08\x4b\x13\x7e\xd8\xb8\x39\x5d\xf0\xe2\xc6\xf3\x8b\x2f\x8a\xe0\x96\x89\x95\x1a\x59\xd8\xb0\x0c\xac\x3c\x9a\x0b\x76\x0b\x8e\x47\x20\x61\xcd\x33\x6d\x5c\xd9\x5b\xaf\xd2\x44\xd0\x9e\xf5\x34\x5a\x64\xb7\x8d\xd8\xca\x06\xd0\x81\xbd\x8c\xab\xd4\x43\x90\x7b\xb6\xed\x37\xc9\xba\xa4\xe9\xeb\x07\xe8\x03\xcb\xaf\xfd\x4c\xa3\x7a\x26\xed\x78\xef\xc9\x3c\xa6\xa2\x33\x25\x31\x6f\xc9\x7b\x79\xcb\xc0\x5d\xdf\x3f\x3c\xf1\xbb\x8e\x17\x3d\xbd\x9d\x91\x7c\xbb\xa5\x4a\xc6\x6c\x82\x8e\x08\x9a\x0b\x23\x7c\x56\xe4\x8f\x11\x3e\xa7\x89\x48\x94\xfc\x52\x3e\x41\x80\x4d\x7f\x62\xd2\x93\x22\xa5\x99\xab\xfd\x6a\x66\x03\x53\xaf\x94\xa5\x59\xb0\x12\x60\x36\xea\xa7\x4c\xaf\x5d\x01\x6e\x68\x19\x17\xe9\x47\x29\x47\x7d\x94\xe4\x81\x5f\xcd\x8a\xdd\x16\xc2\x58\xf2\xf9\x1f\x4a\xfa\xe7\x9a\xe6\x73\x4a\xf6\x47\x98\x05\x51\x20\x4c\x6f\xb8\xb1\x80\x8b\x39\x95\x18\x58\xb2\x3b\xb2\x86\xc8\xeb\x1f\x73\x51\x48\x9e\x5e\xbe\xbd\xe2\x1b\xd6\x6f\xaf\xe8\xf7\xa3\xe2\xa9\x3c\xdb\xed\x50\x49\x69\x74\xef\xd1\x7f\x63\xc5\x65\xed\x3d\x7d\x77\xa2\x64\x3d\x76\x2b\xf7\xfb\xd1\x5e\xf1\xe4\x08\xb6\xdb\xb6\xef\x8d\x56\x90\x71\x05\x2e\x57\x2b\x8f\x15\xd7\x63\xd7\x3b\xc4\xfc\xf5\x95\xcc\xbd\x17\x2d\xb1\xf1\x93\x0c\x51\x92\x18\x79\xb8\xb7\xe2\x7e\xbe\x69\xb2\x3f\x9a\x69\x67\x83\xa1\x94\x30\x39\x1c\x0c\x4a\x1b\x58\xd8\x2f\x52\x2a\x11\x78\x16\xb3\x52\x3b\x98\x49\xb5\xcf\xdc\xe6\x26\xca\x54\xc1\x2a\xdc\x45\xd4\x04\x16\x38\xd7\x29\x26\x56\x95\xd9\x4d\xb9\x39\x07\x51\x84\xc8\xab\x10\xd8\x4c\x1a\x5b\x6d\x6f\x84\x6f\x02\x52\x21\x51\x39\xbb\xfb\x5d\x95\xa3\x87\xd0\xd8\x2f\xa5\xaa\xde\x1b\x6a\xa6\x25\x56\x37\x5e\x94\xbc\x6a\x54\xed\x9d\xdc\x58\xd8\x06\xde\xb2\xd4\xc6\xa5\x97\x15\x20\xd9\xbe\x1a\x72\x17\x7a\xd9\x43\x7e\x58\xa2\xb6\x33\xa2\xba\xa0\x21\x07\xf2\xce\x6c\x25\x96\xb4\x1e\x32\xc8\xaf\x25\xf6\xbe\xeb\xab\xba\x40\x6f\xc7\xcf\xea\x3e\x9b\xb0\x3c\xbb\xf3\xfa\x19\x2a\x98\xc0\xc8\x2a\x14\xaa\x00\x2c\xf6\xae\x4d\xb2\xb4\x0f\xfe\xd4\xe8\xb8\xcd\xe1\x9f\xa7\x41\x2b\xf4\x0d\xa8\x44\x27\x98\x2a\xac\xe2\x27\x78\x88\x64\xe8\x03\x4b\xf5\xf7\x0b\xcb\x32\xe5\xff\x20\x32\x47\xd8\xff\xfc\x96\xa5\xe1\xd7\xca\x75\x78\x13\x6e\x9d\xed\x36\x9a\x07\xfd\x0e\xb6\x65\x1d\x34\x4a\x62\xd3\xad\x79\xf7\x2e\x29\xcd\xc6\xea\x99\x48\xd5\x26\xc4\x87\x82\xf4\xee\x5e\xca\x4f\x8b\xbc\xb7\x78\xc5\x69\x9d\x79\xf4\x07\x04\xc8\x03\x35\xb0\xeb\xb0\x8e\x5d\x47\xc1\x34\x24\x90\xea\x41\x2f\xbd\x00\x15\xa7\x29\xe3\x72\x1b\xd3\xc6\x52\x7e\x65\x9a\x25\xc5\xc4\x1f\xcc\x04\xea\xed\xa0\x97\xbf\xfd\x4c\x48\xf8\x2b\x87\xe8\x0f\x17\x2e\x60\xbd\x98\x21\x66\x6a\x3c\x50\x6a\x22\xb6\x45\xe1\x07\x84\x69\xa5\x3f\xd0\x70\xbf\x3a\x8a\x42\x2d\x58\x55\x42\x68\x33\x98\x93\x40\x0d\x27\x88\x2b\x04\xe9\x95\x4d\x52\xb9\xe3\x38\xe6\x68\xd3\x64\x0f\x94\xbb\x48\x2c\x73\x85\xf3\xa4\xcb\x83\x01\x90\x39\xbb\x3e\xd0\x35\x62\xff\x06\x89\x33\x18\x21\xad\x40\x51\x2d\x8a\x2c\x2b\xee\xce\xf4\xca\x94\x61\xbc\x15\xd5\x4e\x67\xf7\x59\x76\xac\xa4\xaf\xc7\x53\xdf\x00\x93\x66\x52\xdc\x68\x77\xdc\x04\x76\xa8\x42\xa8\x32\xee\xe2\x9c\xce\x9a\x07\x59\x23\x73\x58\xba\xbd\x41\x70\x78\x06\x3d\xd4\xab\x24\x17\x46\xd1\xe6\xa9\x33\x46\x7d\x26\xed\xd2\x5b\xdc\x79\x44\x4d\x09\xea\xb2\xf7\x8c\xbf\x7c\x75\xf4\xe2\x9e\xf2\x7e\xcf\x2a\x5f\x31\x6e\xa7\x0b\x51\xc9\x9e\xfb\xfc\xdb\x83\xdc\x6f\x3e\x39\x59\xb5\x0a\x61\x1e\x60\xa3\x1f\x03\x9c\xfb\x85\x26\x5f\x02\x8f\xab\xf7\x92\xb1\x52\xb7\x4d\x7b\x23\x6f\x0d\x6e\x92\x55\x14\x49\xe2\x99\xbc\x92\x2b\x0a\x5a\x67\xe3\xc4\x88\x32\x4b\xf5\x00\x36\xc1\xe3\x0c\x6b\x3d\xe9\xf1\x1a\xc3\x90\xc7\xf3\x8a\x80\xda\xf9\x31\x38\x0c\x67\xa8\xdf\xd7\x4a\xd9\x29\x39\x06\xbd\x1d\x86\xf0\x92\x9c\x46\x69\xcd\xf3\xb6\x62\xc3\x37\xd7\x54\x74\x6f\xa8\x48\x24\x29\xe9\x54\xa4\xce\x23\xd0\xa0\x97\xb8\x5a\x4b\x45\x58\x79\xac\x3c\x4d\x5e\x65\x34\x92\xfc\x20\xaf\x89\x47\xa2\x9e\xa9\xa6\x67\x65\x10\xa1\x52\x22\x58\x2b\x59\xc7\x40\x15\x88\xe0\xcc\x19\x0f\xbe\x41\x54\x93\x68\x8e\x53\x84\xd7\x16\x08\x1c\x83\xe7\x71\x86\x97\x08\x2f\x81\x77\x5a\x90\xcd\x82\xe9\x70\x79\x6a\x34\x98\x91\xe9\xac\xf3\xdc\x93\x0b\xf4\xfb\x11\x23\xd4\x84\x3a\x3c\xd6\x3e\xd4\x3d\xc5\xc6\x82\x0c\x0f\x0d\xd7\xfd\xaa\x80\x6b\x63\xd0\x7a\xd2\x59\xa7\x85\x44\xb0\x8a\xa3\x95\x80\xa0\xc0\xcc\xe9\x40\x55\x58\x4e\x9e\x5c\x2c\x37\x71\x89\x4a\x74\x2b\xe6\x3e\x65\xea\x53\xdb\x64\x33\xb5\x7d\x91\x2d\x2c\x81\x84\xb9\xfc\xa5\xd3\x62\x7f\x64\x2f\x30\x6c\x24\x3f\xa1\xdc\xa2\xab\x8e\x0a\x5d\x14\x64\xb3\x7e\xc9\xc1\xb7\x96\xcc\x8a\x79\x92\x7d\x54\x63\xf1\xa0\x8a\x1c\x9d\xb9\xfd\xf4\x74\x99\xe9\xd4\x45\x1b\x98\x79\x43\xf6\x86\x5b\xaa\x64\x8f\x10\x75\xdf\x78\x55\x59\xd8\xde\xef\x47\x0b\x72\x1a\x2d\xf0\x1a\x21\x6c\x16\x79\x81\xf0\xa2\xf2\x78\xe8\xd3\xc6\x9e\x4d\x84\xe0\xec\x6a\x2d\x68\x6b\xb5\xad\xbb\x96\x22\xc9\x64\xd5\x77\xad\xab\xa8\x87\x26\x4f\x6f\x58\x2a\x37\xec\x38\x48\x95\x49\x81\x52\x63\x10\xab\x71\xcf\xc5\x5e\x84\xeb\x4a\x08\x01\x65\xe5\xc3\x27\x7a\x27\x4c\x76\x7d\x88\x10\xe8\x73\x56\x8a\xe3\xbe\x68\x70\xdc\x2e\x1e\xd0\x25\xec\x9f\x4f\x2d\xec\x9d\xfa\x42\x7c\xbd\x50\x9f\xf7\xf4\x08\x71\x4b\x1a\x80\xe8\x57\x78\xb9\x3f\x2a\x85\xa9\x1a\x2f\x9a\x9b\x50\x7d\x2b\x5e\xcc\x69\xa9\xf4\x45\xa2\x1c\x82\xa0\x02\x0b\xea\x4d\x46\x3b\xf9\x6a\x6c\x3e\x50\x55\x6a\x1b\x5c\x5a\x47\xd9\xaa\xb7\xa0\xa6\x66\x4a\xfa\x64\xe8\x8e\x7a\xfd\xd9\x40\x8a\xea\x15\x9a\x17\x80\xa0\x32\xef\x0a\x0e\x04\x92\xd2\x69\x54\x19\x2c\xb7\xc0\xd7\xf9\x6b\xba\x28\x38\x85\x41\xfc\x54\x14\x5f\xa2\x66\xa6\x7a\x35\x60\xf7\x55\xcf\x64\x27\xc2\x96\xff\x6a\x2f\xa8\xeb\xc4\xd1\x42\x50\xee\xf5\x01\xd3\x7a\xa6\x2b\x3a\x2f\x6e\xa8\x59\x3f\x95\xa3\xaa\x25\x06\x62\x42\x8d\x4f\xcd\x5c\x0b\xd4\xb1\x71\xd8\x4a\x91\x94\xcb\x33\x5f\x82\xa0\xa2\xd2\x50\xc9\x5a\xc8\x1f\x90\x33\xc8\x87\xa9\xdd\x24\x33\x92\xdb\x78\x5d\x36\x2c\xa9\x5a\xd2\xce\x5e\xd4\xd3\x8f\x3d\xa6\xd6\x12\xf5\xfb\x6c\xbb\x8d\x38\x11\xe6\x7a\x53\x43\x20\xf9\x4d\xeb\xbe\x9d\x34\xd1\xbf\x6c\xa8\xbe\x17\x71\xee\xed\x45\x2f\x64\x82\x3d\x6a\x45\xbf\xaf\x40\x49\x82\x0b\x84\x93\x4a\xdd\x73\x42\x94\x83\x39\x4d\xa9\x0b\x1f\xa5\xc1\x85\xb1\xf0\xa3\xa6\xff\xf5\xe1\x38\xbd\xe7\xe4\x86\x1a\x5a\x54\x3e\x6f\xb7\xf5\x71\xf6\xfb\x7b\x26\xe6\x51\x1d\xd6\xac\xb4\x9c\xbe\xdf\xdf\x6b\x89\x22\xb0\x47\xac\x66\xa9\xba\x83\xf5\xfb\x17\x5c\x36\x50\x04\x82\xf0\x5a\xf5\x1c\xf5\xfb\x9e\x4c\xd3\x55\x65\x2a\xa9\x22\xef\x4c\x61\xaa\x1f\xe0\xc0\x2a\x2d\xab\xa8\x06\xbd\x88\x07\x42\x26\xde\xb3\xba\xa8\x59\x50\x31\x5f\xaa\x53\x0f\xe1\xd8\x75\x1d\x34\x80\x49\x84\xba\xea\xf5\x89\x6c\x68\x62\x7b\xdf\xf4\xc4\xf9\x55\xe3\x66\x2e\xd7\x9a\xa9\x92\xb6\x02\x42\xaa\xc8\x4a\x39\xc3\x20\xe7\x87\x2b\x97\xe2\xda\xa9\xf9\xa9\x4b\x01\x81\x2a\x25\x61\x3c\x33\x03\x70\x06\x9c\xc6\x01\x36\x88\x3f\x6a\x1b\xd2\x0c\xb0\x05\x62\x58\x3d\x5a\xc7\xc8\x2a\x06\x40\x76\xc1\xf0\x12\x7b\x43\xdc\xbb\x63\x59\xa6\x8f\x1d\x94\xee\x61\xbf\x72\x9f\x87\xf0\x30\x89\x4b\x8c\xaf\x5c\xc3\xca\x7c\xa3\xf5\x93\x24\x7a\xf0\x5d\x24\x94\x89\x07\x00\x2b\xdc\x02\x3b\x51\xd5\x84\x3b\x16\x80\xa8\x10\xec\x76\x0a\x02\x4e\x63\x17\xf4\x68\xe9\x71\xfb\x30\x12\xdb\x28\xe8\xda\xb5\x7e\x51\x00\x0e\xe7\xe4\x2e\x62\x24\x47\x8a\x8a\x61\x2d\xe3\xc8\x3d\x40\x4c\x6b\x62\x51\x49\xd1\x55\x4d\xf0\xbb\x1b\xa1\xd0\xc8\xc2\xf5\x16\x53\x02\x1d\x57\x06\x55\x3b\x66\x60\x53\x6f\x9f\xd4\x13\x14\x5c\xad\xf7\xd2\x83\xb1\xa2\xf2\x4f\x43\x93\xe5\x53\x8e\x30\xac\xe9\xae\x12\xc8\x05\x07\x2c\x40\xd0\x14\x55\xf5\x84\xe0\x38\x06\x07\xa8\x65\x3a\x6c\x20\x1d\xc9\xe8\xa2\x7e\xbf\x4d\xc7\xb6\x2d\xe4\x02\xcc\xe1\xa4\x89\x9f\x49\x23\x25\x44\x72\xe1\xc9\xf4\x0f\x84\x91\x55\x8c\x35\x6c\x0a\x73\x8e\x7d\xd3\xed\xaa\x6a\xbb\x9f\xbf\xd0\x77\x19\x27\x5d\xf0\xa2\x9f\xee\xa0\xb1\xd4\xbd\x46\x29\x91\x47\x14\x06\x52\xd6\xb4\x54\xde\x24\xa5\x34\xf5\x65\xb0\x49\xd1\x4a\xbd\x80\x0c\x3f\x5c\x78\x79\x3e\x9f\xda\x0b\x3e\xd5\xd4\x76\x82\x41\x91\x42\x13\x8c\x9f\xbe\x36\xac\x27\x07\x65\xef\x0c\xf4\x18\x03\xb2\xce\xd3\x6d\x56\xdf\x25\x21\x41\xa7\x57\xb3\x7e\x3f\x2a\x23\x51\x2b\x2c\x59\xa8\xc0\xec\x60\x7a\xa5\xf5\x49\xfc\x93\x6e\xad\xca\x2c\x6b\x10\xa7\xd4\x12\x2b\x13\x46\x82\x77\x00\x06\x63\xf0\x1c\x01\x30\x43\x7e\xbe\xf1\xa0\x04\xeb\xf7\xef\x80\x1b\x8e\x4c\xb5\x6d\xf3\xc5\xec\x64\x1d\x3d\x3d\x59\xc1\x54\xa1\x70\x71\x73\x1c\xd2\x55\xbc\x7e\x3a\xcf\xed\x17\x09\x62\x5b\xc8\xe3\x16\x88\xc8\x15\xbe\xaa\x25\x84\x98\x4b\x8d\x82\xe5\xd7\xc6\xfa\x34\xed\xc2\x14\xf4\x10\x86\xde\xc6\x5e\x53\x21\x89\x7d\x9b\xf0\x8d\x27\x55\x10\x56\xaa\xc0\x2b\xe8\x43\x87\x42\xa8\x23\x6e\x56\x69\x03\xb2\x80\xd4\x8b\x47\x96\x4f\xc5\x74\x38\x9b\x49\x3e\xc0\xde\xcc\xb8\x19\x08\xee\x79\x5c\xb2\x62\xa4\x95\x8f\x07\xac\x22\x32\xb6\x62\x08\x0f\xfc\xdb\xc2\xa8\x01\xa4\x3c\x4a\xd6\xd4\x36\xaa\xeb\x04\x80\x02\xaf\x55\xff\x7b\x76\xc9\x52\x13\xae\x88\xa1\x49\x3e\x65\x2a\x14\xe6\x58\x3d\xe1\xbc\x32\xdb\xe1\x4d\x7d\x13\x90\x4d\xe5\x1b\xc9\xd7\x2e\xe3\x4c\xb1\x2f\x41\x31\xbf\x40\x78\x89\xf6\x67\xf3\x16\xd0\x9d\xbb\x4a\xcb\xed\x3e\x24\x57\xfe\x69\xeb\xf5\xcc\xc1\x58\x46\xb5\x7a\x71\x8b\x9a\x48\xaf\xa7\xac\x1c\x22\x31\x20\x92\x75\xc7\x62\x40\x14\xf9\x8a\xf7\x86\x95\xba\x77\xf8\x2b\x18\x29\xff\x15\xee\xa3\x51\x08\xa2\xbc\xd3\xa9\x4f\x78\xb3\x55\x4a\x5e\x45\xf9\x94\x6a\xd8\x44\x3d\x66\x0d\xef\x0d\x25\xa8\xae\xdd\xd5\x7a\x46\x63\xb8\x20\x96\x30\x6d\x41\xba\x1e\xbb\xea\xcf\x45\xef\x5c\x24\x5c\x78\x92\xf5\x9e\xc1\xcd\x19\xde\x55\x44\xc3\x64\x45\x2e\xca\xfc\x75\x69\x28\x35\x83\x65\xfe\xd8\x12\x12\xf6\xfe\x95\xd5\xb4\x9c\xe4\x56\xf4\x31\x0e\xf3\xb4\x8d\x07\xa4\xa3\x60\x57\x18\x51\xcc\x82\xeb\x33\x2d\xff\x55\x42\xa5\x0a\xb5\x75\x5e\x5f\x0c\x29\xf7\xbf\xc8\xb3\xe9\xf5\xc4\x47\xad\x24\x8b\xf2\xde\xe0\xd5\x04\x8e\xfe\xba\x6c\xd1\x55\xac\x50\xd7\xc4\xb4\xdc\x31\x23\x46\x2d\x17\xf4\xd2\xeb\xc3\x01\x9d\xbd\x7a\x03\xba\xab\x89\xb9\xc3\x0a\xbd\x36\x28\x1d\x97\x60\xfc\xe1\xdc\xcd\x3c\xf4\x09\xfa\xbe\xbb\xb3\x0e\x06\xf2\xac\xee\x29\x79\xd0\x46\x31\x24\x79\x45\x68\xc7\x85\xf7\xef\xf7\xf3\xd8\xdc\x60\xf8\xcf\x91\x65\xf0\xb0\xb0\xaa\x1d\x49\x14\x6e\xa2\xfa\xc8\xea\x3b\xc8\x57\xe8\xf2\xec\xe3\x83\xbd\x4e\x82\xb1\x9a\x9d\xc3\xc6\x4f\xce\x80\x59\xbf\x04\x0b\xdd\xa3\xb2\xbd\x47\x9f\x24\xfd\x46\x53\xd9\x17\x49\xd9\xd4\xaf\x85\xbe\x68\xba\xe6\xec\x09\x89\x91\xba\x56\x0f\x18\x19\x2d\xf2\xb9\x4b\xec\xed\x11\xf7\x6c\xdf\x48\x1e\x36\xa5\x14\x1a\xcf\x74\x53\x7f\x58\xf4\xd9\x80\x9c\xe0\x72\x68\x3a\xc3\x4c\x42\x3a\x8f\x90\xb2\xd1\x51\x9b\xf7\x5a\xbe\x00\x2b\x90\x46\xf9\xf7\xc3\x3c\xc0\xc2\x96\x0a\xf3\x41\x2b\xab\x20\xb6\xe0\x45\x01\xd5\xfa\xaa\xb5\x59\xe4\x91\x55\xc6\xa2\x38\xa8\x0f\xa1\x29\x28\xb9\x07\x97\x5d\x56\x9f\xd4\xb7\xfa\x8a\x38\x98\x83\x30\x92\x4f\x1d\x68\xb0\x8a\xf7\x01\x29\xae\xbb\xa3\x87\x50\x46\x14\xa8\x4b\xb8\xec\xaa\x9a\xdf\x2c\x99\x06\xe2\x12\x9c\xe0\x0c\x84\x24\x5f\xf0\x3a\x20\x04\xed\xe5\x11\x02\xdd\x5d\xa7\x53\xd8\x98\x33\xd0\xbf\x2b\xc8\x10\xa0\x9b\xb1\x94\x82\xeb\xfa\x42\xc5\x8e\x2e\x6c\xb7\x8d\x00\xc4\x2f\x1e\x72\xc3\x68\x33\x27\x45\x07\x6e\xef\x2b\x55\xaf\x70\x11\x68\x8b\x57\x64\x78\xb8\xbf\x5f\x98\xab\x08\x59\x35\x5e\x12\x67\xf8\xb7\x20\xd4\x3f\x0a\xc5\x0c\xaf\x80\x2f\x05\x05\x31\x92\x2a\x1d\x75\xeb\xaf\x60\x52\xbc\x22\x73\x45\xe5\x2b\xb5\x4f\x58\x60\xdd\x2d\x59\x43\xb4\xc4\xba\x0c\x5e\xe3\x85\xd6\x24\xbd\xa6\xc2\xcb\xf2\xae\xe0\x5a\x23\x5c\xab\x61\x87\x65\x30\xc7\x85\x2e\xf7\x4d\x4d\xc8\x75\x59\x91\x55\x5d\x08\x07\xe7\x75\x65\x69\x74\xad\x19\xbf\xe8\xf7\x17\x56\x96\x54\x1f\x9c\xc7\x11\xdb\x4c\xfd\xfe\xca\x13\x45\xdd\xf4\xfb\xd1\xca\x10\x08\x50\x97\x21\xac\x5d\xae\x1b\xad\x50\xb6\x38\x8c\xe4\x64\x6d\xb7\xab\xb8\x2e\xf5\x5a\x80\xf3\x84\x39\x39\x49\xc4\x32\xbe\x61\x79\x54\xe0\x39\xc2\xb7\x64\x85\x70\xde\xef\xef\xb1\x7e\x3f\xba\x25\xb7\xad\x23\xba\xb5\x23\x42\x38\xf3\x21\xdb\x3a\x2f\x97\x6c\x21\xa2\x5b\x08\x70\xbd\x76\xb1\xab\x1b\xa6\x0e\x27\x05\xa7\x5d\x5d\x8b\x8d\xb1\x78\x47\x39\xb5\xee\x9e\x96\x09\xf8\x81\xe2\xb4\x9b\x70\xda\x4d\xd5\x62\x75\x8d\x89\x5f\x77\x51\x70\xf0\x16\xa3\x20\x7e\xb7\x37\x70\x82\xbf\x5c\xcb\x8d\x98\x8a\x08\x99\x08\xfa\x46\x6b\xa9\x47\x7e\x6f\xe5\x70\xcb\x28\x6b\x6a\xc7\x78\x09\x92\x7c\x41\x38\xab\x5a\xaa\x6a\x75\xd4\xe2\x45\x43\x1e\x0c\xb8\x52\x51\x9d\x72\x1f\x9d\x21\x77\xa9\xc7\xcc\xa5\x5e\xa1\x6f\xef\x12\xff\x72\xaf\xac\x54\xa4\x66\xd0\x1d\x96\x33\xf7\x29\x10\x87\x32\x5c\xe2\x02\x27\x12\xe6\x7f\x6d\x67\x07\x9c\x2b\xa8\xf8\x80\x8e\xb1\x17\x59\x1c\xc8\xf9\x84\xf0\x29\x77\x20\x0b\x05\x34\xf6\x8e\x53\x60\xd0\x48\x47\x87\xcf\x56\xfa\xb4\x6c\x11\x01\xd2\x05\x68\xed\xc5\xce\xcf\x95\xc9\x6b\x3b\x9c\x0f\xbd\x09\x94\x64\x47\xb6\x10\x4e\x74\x12\x52\xf6\xfb\x16\xf8\x55\x9e\xaf\xad\xa3\x60\xba\x64\x47\x13\x54\x7d\x65\x18\x1b\x67\x4d\x2a\xd1\x93\x85\x61\x38\x21\xd3\xd9\x61\xb1\xbf\x7f\x68\xdc\x7b\xe5\xfd\x3e\x05\x5f\x40\x72\x8c\x72\xac\x1e\xb9\x9b\x85\x13\x29\x01\xb4\xec\x6a\x1a\x65\x68\xc2\xa6\x6b\xa5\xd4\xac\xe6\x6b\xdc\x10\x0b\xaf\x75\x9e\x72\xba\x9e\x8d\x13\x65\xa4\xb5\x86\xe3\x94\xec\x3e\x4e\xbf\xff\x5a\xac\xbb\x29\x4b\xf3\xbf\x3a\xdf\x43\x34\x2f\xd6\xd7\xcb\xae\x52\x4a\x78\x06\x4e\x62\xd9\x5c\x5d\xcc\x51\x41\x79\xd9\x15\x45\xb7\x4c\x04\x2b\x17\x0f\xdd\x24\xcb\xba\xc5\x02\xce\x53\xeb\x41\x53\x56\xb7\xdf\x6d\x68\x15\x77\x4f\x58\x59\x02\x97\xa9\xf6\x6e\xf7\xf7\x41\xe2\x4e\x5e\x63\x9b\xca\x99\x95\x7c\xb5\x9c\xb5\xb7\xff\x77\xe6\x07\x9f\x73\x8b\x71\xd3\xcf\x67\x1f\x8e\x55\x14\x0c\xc8\xe0\x5b\x20\xd4\xb2\xfd\x7f\xda\xfe\x40\xd3\x4b\x1f\x9f\xa2\x97\x1c\x8d\x64\x44\x0d\x6b\x9e\x59\x1a\x68\x17\xb9\x54\xa3\x75\xac\xa5\x01\xce\x35\xd5\xc0\x76\xd1\x32\xf6\xd1\x6a\xd2\x68\x9b\x35\x6f\xd7\xbd\xf5\xbe\xa9\xdb\x9b\xbd\x11\x4e\xac\x4e\x4e\x27\x34\x72\x90\x40\x10\x14\x26\xf2\x04\xc2\xc4\xb0\xab\x8c\xbe\x7e\xf8\x7c\xf6\x21\xa8\x31\xf1\x62\x5d\xcb\x63\x28\xc8\x10\x73\x6b\x39\x7b\x28\x5e\xf2\xc3\xc1\x40\x18\xe3\x24\x36\x15\xca\x7c\xcd\x90\x10\x29\x99\xaa\xa8\xf6\xad\xe4\x99\x96\x6e\xce\x25\xca\x4b\xbf\x85\x8a\x9b\xa3\xa9\x50\xfa\x8c\xa5\x1a\xe2\xb2\x05\x06\xcf\x71\x8a\xd7\x16\xfb\x2e\xc8\x52\x7d\xe8\x2c\x26\x59\xb4\x40\xe3\x65\x28\xda\x5c\xb6\xc8\x35\x33\x63\x96\x18\xc0\x35\x31\xeb\x14\xdb\xed\xb2\x81\xb2\x57\x68\x12\x15\x5a\xf1\xde\xcf\x4d\x96\x68\x5c\x4f\x5a\x59\x33\xb7\x28\x54\x00\x65\x81\x0d\x3a\xce\x3d\x35\x9a\xf7\xf6\xfe\x89\x3a\x3d\x7c\x2b\x41\xb1\x37\x48\xbb\xcd\x14\x00\xe9\x69\x9c\xb7\xfb\xe2\xc9\xb6\xf7\xc1\xbb\xef\xea\xf7\xdd\x7d\xd7\xb0\xa3\x93\xc4\x76\x1b\x7c\x18\x85\x01\xb3\xb5\xf5\x3b\xce\x83\x04\x25\xfc\xe1\x6e\x04\xf9\xce\x11\x30\x32\xc4\x85\xb3\x3c\x61\x2f\x8b\xc3\xc1\x80\x19\x5b\x78\xae\x4d\xe4\xe9\x34\x51\xa3\x49\xdc\x68\x2a\x3b\x1a\x99\xf7\x1d\x81\x83\x1c\x1e\x5e\x73\x09\x95\x25\xa5\x68\x51\xf4\xd6\x8c\x94\xcf\xdd\x14\x59\xda\x64\x79\x76\x28\xe5\x69\x7e\x47\x07\x37\x73\x42\xa5\xe0\xba\x5f\x1b\x31\xf8\xad\xb7\x94\x36\xca\xb3\x46\x7f\x3e\x2b\xae\x2d\x2f\x68\x4f\x07\x6c\xff\xdc\x3a\x37\xd7\x5f\x4b\x2a\x22\x54\x81\x46\x8d\x91\x6f\xb9\xf3\x04\xc9\x38\xda\xe9\xda\xce\xa2\x48\x9c\x93\xbd\xe1\x21\x7f\x45\x86\xfd\x7e\x7e\xb8\xbf\xcf\x9d\xb4\x8e\xcf\x70\x41\x98\x65\x9f\xa8\x72\x36\x8a\x37\x49\x39\x2e\x2a\xb9\xf2\xca\xf4\x9a\x81\x7f\x93\xed\xb6\x17\xbc\x28\xcb\x73\xdf\xc2\x7e\xff\x7b\x54\x55\x08\x55\x16\x22\xd4\xef\x3b\x5a\x80\x06\x45\x95\x77\x62\xdc\x42\x38\xaa\xc1\x5a\x39\x30\xee\xa9\xf4\x3b\x7d\xd2\x1c\x53\x84\xf7\x84\x16\x65\xd6\x17\x34\xa0\xb3\xea\x1f\xb5\x94\xcc\x69\xca\xee\xd0\x8d\x65\x4d\xab\x87\x21\xe6\x01\xff\xab\xbb\x98\x83\x90\xd4\x75\xd3\xf4\xd1\xa7\x8c\x6b\x10\x03\x61\xb6\x43\x91\x5c\x14\x67\x3a\x14\x09\x14\x8c\x18\xce\xfd\x4b\x19\x4f\x15\x94\x79\x42\x22\xc2\x6a\x4a\xc8\xe4\x55\xc4\x02\xed\x5a\xb5\x7d\xd5\x1d\xce\xe7\xb3\x0f\x11\xb3\xc8\x2f\x65\xa9\xb7\x04\xed\x87\xc0\x78\x6e\x2d\x6c\xa7\xfc\xc1\x19\x75\xed\xba\xd6\x2f\x43\x08\xeb\x0b\xad\x9a\x1a\xf8\xbc\xb8\x59\x65\x14\xc4\x3d\x98\x55\x2d\xaa\xaa\xca\x69\x2a\x7f\x08\xf6\xd2\x35\x15\x17\xed\x59\x9d\x67\x24\x8f\x6e\xd2\xcb\x4b\xcd\x02\x1b\x65\x68\x70\x7e\x61\x50\xb2\x95\xff\xca\x12\x1f\x0d\xa9\x82\x79\xe8\x72\xe4\x23\xbd\x53\x78\x5f\x81\x42\xed\x89\xd3\xca\xe1\xb9\x96\xe3\xdf\x47\xdc\x9f\x97\x60\xb7\x38\x92\xce\x17\x63\xb8\x9e\x1c\xe5\xe9\x87\x22\x49\x77\x75\x28\xff\x96\x0e\xd9\x9d\xdf\x90\x29\xfe\xfe\xf9\xec\x03\x90\x9b\xa0\x2c\x9d\x17\xa2\xeb\x68\xba\xdf\x51\xf3\x4c\x08\x9c\x37\x0f\x84\xbd\xf5\xd5\xb7\xa4\xf7\xe1\x1e\x97\x5b\x5a\xee\x85\x76\x2d\x36\x54\x35\xfa\x4e\x83\x25\xa6\x71\x40\x61\x39\x88\x0e\xe2\x9b\xb9\x76\x46\xe7\x6b\x50\x00\xa3\xb6\x63\x47\x58\xa5\x1c\xed\x4f\xa7\x0e\x06\x30\x23\xf9\xa4\xf5\xcb\xf4\x76\x36\xf6\x1a\x2f\x48\xad\x63\x0c\x0b\x84\x13\xb2\x88\x02\x08\x81\x8b\x70\xb1\xd9\x22\x7a\x1f\x15\xc1\xf4\x78\x2f\x08\x40\x9c\x75\x6d\x5c\x67\x92\xbd\xf3\x98\x68\x36\xd3\x4c\x6a\x8b\x31\xd6\x10\x97\xd5\x53\x10\x6f\xbb\xdd\x09\xec\x24\x17\x24\xac\x29\xc9\xd7\x40\x62\x2b\x80\xca\xac\xa4\x11\x3c\xd6\xbf\xd1\x42\xb3\xa8\xd8\x01\xb6\x32\xd4\x8e\x85\xad\x5b\x15\x12\x9c\xdd\x02\x3f\x85\xba\x9d\x95\xfe\xff\x08\xa1\x65\xa5\x0b\x46\x0d\xc9\x3c\x87\x7a\x43\x1f\x54\x26\x63\x15\xe4\x9e\x51\x0b\x35\xf3\xc4\x26\xe8\xf7\x23\xde\xb2\x9c\xa8\x1d\x13\x70\x3b\xd1\xf5\x59\xd8\x81\x06\x9d\x58\x9e\xef\x28\x48\x38\xe6\x9e\x0d\x4c\x1d\x85\x04\xf8\xcd\xdb\x93\xdc\x87\xea\xe7\x54\x88\x8c\xfa\xe6\x18\xba\x9a\xee\xdd\x92\xe6\x7e\x3a\x2b\xbb\xa6\xb2\x54\x02\x7e\x23\x55\x52\x61\x3a\x8f\xef\x19\x04\x3a\xb0\x02\xda\xc2\x62\xa8\x5d\x54\x40\x81\x13\x84\x79\x95\x16\x21\x09\xa1\xfc\x39\xed\x8d\x9c\xda\xb2\x98\x0a\x4f\x7a\x50\xe8\xfb\x56\x2b\x16\x64\xfd\x3e\x6b\x28\x93\x05\x96\xdf\xfd\x3e\xc8\x5f\x41\xc2\x10\x52\xfb\x56\xed\xd7\x6a\xd7\xe3\xde\x67\x89\x65\x25\x47\x0f\x39\xbb\x46\x2d\xad\x63\xef\x53\x60\x41\xc7\x49\xe5\x79\x1f\xec\x28\x36\xf2\x0f\x55\x45\x32\x4d\x3c\x51\x37\xdc\x2a\xea\x63\x30\x9d\xe1\x42\x09\x85\x6a\x2e\x72\x86\x68\x12\x99\x0e\x1c\x09\x41\x6f\x56\xd0\x05\x09\xf7\xbd\x35\x10\x05\x5c\x46\x6a\xa6\xd5\xa2\x17\x34\x6e\x2b\xbb\xb3\xdc\x1f\x35\xcc\x2a\xc0\x3b\x51\x00\x25\x9a\x50\x39\x07\x1b\x8b\xe6\x6e\xb2\xa8\x7e\x87\x9d\x81\x91\xf3\x81\x4c\x05\x2e\xe0\xcb\x6e\x91\x77\x53\x88\x8b\x01\x11\x47\x94\x34\xe5\xd0\xec\xae\xb0\xeb\xc6\x1d\x75\x4e\x84\x6f\x98\x17\xde\xa0\xfb\x80\x4b\x60\x90\x32\x38\xab\x36\x0f\x15\xf9\x97\xcd\xed\x94\x52\xf3\x3a\xef\x12\x54\xe2\xc7\x0d\x0a\x4c\xe9\x7f\x36\x4d\x87\x9e\x64\x4f\x1a\x76\x2e\x2d\x3d\xd8\x1b\xe2\x5e\x40\xd4\xf5\xf0\x74\xf6\xcf\x13\x7b\x14\x8b\x6f\x21\xf6\x28\xc2\x7a\x0b\xf9\x8b\x77\x71\x76\xf4\xf1\xfc\xfd\xc5\xfb\xd3\x8f\xdd\x37\xa7\x27\x9f\x3e\x1c\x5f\x1c\x83\xa5\x48\x70\x95\xa3\xb5\xf3\x15\x8a\x4f\x14\xfb\x1a\x25\xbe\x79\x08\xf3\x8c\xdd\x03\xc3\x9e\x4e\xa8\xee\xa7\x03\xb9\x26\x12\x71\x4c\x8b\x46\x13\x98\x1a\x83\xa9\x4a\x09\x4a\x92\xaa\x0a\x17\xdf\x27\x1d\x9c\x42\xde\x2a\xe1\x02\x66\x0c\x26\xa9\xf4\x69\x13\x6d\x9d\xa9\x10\x4a\x11\xd3\x7b\x26\x68\xea\xe3\x15\x3e\x18\x20\x15\x9d\x22\x62\x36\x83\x44\x19\xaa\x4b\xf6\xc2\xd4\x87\x46\x1e\x68\x72\x97\x42\x67\x92\x37\x94\x90\x2a\x4c\x91\xe3\xf6\x55\x01\x19\x34\x21\xf3\xc9\xff\x48\x58\xb7\x61\x21\x43\xec\x41\x1e\x8f\x77\xa6\xbe\xa8\xb8\xc9\x0a\x17\xf1\x3a\xd7\x1c\xb0\xf5\x61\x23\x4f\xae\x3f\x03\xc0\xc2\xd6\x27\xc0\xf6\x0e\xe6\x00\xb2\xb8\x29\xf0\x2e\x68\xbe\x65\xb8\x23\x2c\xc2\x39\x57\x47\x2a\xd5\x6b\x58\x6f\xda\xed\x55\x1d\xfb\xe0\x94\x7f\x56\x05\x22\x49\xb4\x85\x85\x25\x77\xdc\x6c\x80\xaa\x82\xff\xcd\x9a\x75\x29\xa8\x72\xe8\x78\x94\x4c\xb2\xf5\x72\xef\x79\xd3\x9e\xec\x92\x3d\x24\xfe\xc9\xcb\x2a\x0f\x10\x7d\x3b\x1f\x2a\x0f\x64\xc0\x66\x4a\x28\xdc\x8e\x50\x15\x28\x36\x3a\xeb\x6d\xc2\x0e\xa1\x1c\x5d\x34\x40\x11\x0d\x41\x44\xe0\x38\xc5\xd6\xdf\xc3\x53\x61\xdc\x40\x60\x5d\x93\x71\x78\x61\x00\xd4\x6e\x09\x0b\xaa\xda\xe7\x3a\x08\x95\x51\x18\x28\x0f\x77\xb0\xe6\x4a\xd0\x53\x96\x50\x2e\x14\xb8\xb7\xe7\xf4\x4a\xf5\xfb\xfa\x21\xca\xe1\xbe\x2e\x77\x18\xc0\x93\xaa\x82\x2d\x58\x61\x6f\x05\x13\xec\x55\xa3\x13\xed\x70\x65\x8d\xf5\xb4\x08\xf9\x25\x00\xf6\xc8\x6c\xf0\x20\x69\xfd\x27\x9b\x76\xc2\xf2\x75\x29\x79\x21\x5c\x54\x75\xe3\xa3\x62\x22\x6a\xea\x9f\x2d\x32\xd2\x12\x8d\x81\x3e\xdf\x1b\x56\x75\xc8\xd6\x80\x7f\xb4\xa1\xb5\xe3\x5e\x4b\xb2\x09\x8f\xcf\x78\x3a\xc3\x0a\xc0\xc1\x93\x5a\x29\xf9\x68\xc1\x86\x7c\x81\xe3\x3f\x9e\xce\x2a\x9c\x19\x4f\x29\xca\x61\x4d\xd2\xea\x9a\x7c\x4d\x8a\x69\x3e\xc3\x73\x92\x4c\xf3\x59\x67\xdd\xef\xaf\xb5\x42\x05\x21\x73\xf5\x04\x66\x0f\x12\x2f\xf1\x49\x54\xda\xd3\x0a\x93\x34\x47\x78\xdd\xef\x97\x06\x2e\x9b\xeb\xd4\x35\x42\xe3\x6c\xbb\x5d\x9b\xf5\xd9\x93\x75\xe9\xe7\x49\x04\xde\x80\xcb\x3a\x5c\xd1\xf5\xa1\x71\xe9\x41\x41\x73\x9b\xa4\x06\x61\x06\x80\x99\xf3\x9c\x62\xc6\xd2\xe8\x83\x1c\x95\xc7\xd6\xc1\xac\x90\x46\xab\x1a\xcc\x62\x9d\x21\xe6\xf4\x96\xf2\x12\x52\xaa\x1a\x31\x61\x3d\x09\x5a\x43\x5c\x10\xdb\x5a\x09\xa1\x4f\x7b\xe6\x15\x11\x58\x5f\x9a\x56\xa1\x66\x05\xd0\xc7\x38\x21\x2e\xe9\x30\x51\xea\x06\xd6\xc3\x64\x3e\x4d\x66\x1d\x49\xa1\x67\x56\x56\xaf\xef\x81\x9b\x57\x12\xe0\x6c\x51\x29\x71\xab\xde\x14\xa1\xb2\x6a\x9b\xeb\x8e\xed\x36\xd0\x68\xd5\x2e\x27\xeb\xf2\x44\x23\x4f\x00\xdb\x4e\x3c\x27\xf4\x29\x8f\x13\x38\x25\xbe\xd3\x08\xde\xef\xef\xd1\x27\x3d\x45\xe0\x25\xa1\x75\xe6\x2c\x74\x3c\xc1\xf1\xa2\x5e\x67\x5b\x95\x0d\xe7\x12\x9d\xf9\x76\x9b\x6e\xb7\xcb\xed\x76\x31\xd1\x63\x82\x1c\x72\x1d\xd7\xfa\x96\xcc\xad\xec\x1a\x55\x55\xb5\x13\xb8\xd7\xc3\x1b\x29\x3f\x41\xa2\xce\xcd\xe4\x48\x59\xc0\x13\x02\x0e\x57\xfb\x7d\x1d\x2f\x4b\xbe\x68\xe1\x8f\xb9\xec\x09\xc1\x3a\xc0\xf2\x5d\xad\x4b\x78\x8e\x19\xe6\x33\xe5\xdd\x99\xef\xf0\xc2\xe2\x9b\x83\xc2\xce\x1a\xe2\xd2\x5d\x43\x25\x2f\xcb\xc3\xc1\xc0\x6e\x2d\x26\xb7\x56\x31\xcd\xe2\x2f\xf4\x61\x46\x32\x1d\xa8\x85\x6b\x77\x4d\x59\xac\x5b\xd8\xd5\x5c\xad\xa0\x55\x42\x2b\xaa\x3a\x3b\x5d\x77\x9c\x5c\xa7\xef\xd5\x6c\x2c\x78\x71\x63\xf2\xf3\x27\x09\x63\x83\xbf\xea\x97\x13\xc1\x4e\xae\xc2\xfa\x36\x3e\x17\x4a\xfb\x7d\x5f\x83\xc0\x4a\x14\x71\xdd\x4e\xb2\xb5\x1d\x04\x92\x37\xed\xc1\x21\x38\xcf\x2a\x70\x50\x55\xb9\x6e\x73\x6d\x21\xfd\x95\xd6\x59\x6b\xeb\xa0\x5d\x8e\x73\xd9\x96\x28\x88\x0b\x3a\xe0\xb5\xb4\x83\xa1\xaf\xe3\x16\x73\xbf\xd9\x98\xf9\x1a\x30\xe5\x64\xa8\x3c\x76\x45\x8c\x24\x92\x9c\x8a\x42\xb4\x34\xe5\x33\x24\x09\x45\xad\x1c\x51\x28\x89\x0d\x90\x68\x85\xaf\xf6\xd8\xdc\xde\x09\x36\x36\x42\x01\xb3\x24\x66\x3b\x64\x57\x42\xa7\x87\x25\xa2\x04\x07\x58\x12\x54\x1f\xe1\x1e\xc7\x8b\x3a\xd2\xef\x2f\xdb\xf9\x48\x03\xe1\x3d\xc8\xde\x50\x9e\x15\x66\xbc\x0d\x4b\x3c\xe1\xdb\xfb\x68\xca\x5f\xfd\x47\x48\x2b\x22\xef\xbe\x08\xd3\x8a\x87\x70\x7b\xfd\xe4\xe5\x57\xa5\x6e\x8b\x00\xd1\x58\x05\xe8\x27\x7c\x04\x6b\x5e\x33\x90\xcb\x20\xe3\x4e\x42\xe1\x02\xc7\xa0\x5f\x14\xd6\xff\xdc\x2e\x67\x01\x93\x48\xa3\xdf\xd6\xaa\xad\x10\x62\x6f\x84\x34\xf8\xac\x8b\x84\x50\x05\x4c\xc4\x0d\x4d\x59\x22\x3c\x50\xdc\x68\xbb\xdb\x5a\x1c\x2b\x4f\x65\x0b\x4e\xa1\x0f\xbe\x7d\x46\x43\xae\xcc\x89\x98\x88\x9a\x0c\x39\x27\x3c\x70\x0a\x64\x65\x46\x30\x67\xf9\x74\x68\x19\x54\x23\x85\x01\x4d\x6c\x96\x5f\x77\x93\xae\x6e\x37\x50\xcb\x36\x02\xfb\x80\x8d\x06\x31\x51\xe1\x0b\x68\x18\xa6\xd8\xe8\xc4\xb7\x10\xd6\xdb\x6d\x78\x43\x61\x0e\x64\x8b\xf0\xa6\xf0\x1d\x86\x88\x10\x0f\x0a\xdf\x6b\x48\x62\xbd\x86\xf8\x2e\x43\x92\x4a\xe7\xff\x85\x89\x65\xfd\x8a\x70\xc7\x3e\xb1\x4d\xb8\x9b\x03\xbb\x58\x4e\x8e\x9b\xc9\x43\x59\xf7\x95\xdc\x26\xa3\xca\xd1\x53\xf7\x0b\x38\x91\xa8\x49\x45\x80\x28\x9a\xaa\xc5\x87\xeb\x97\xf3\xc3\xc1\x60\x8d\x36\x65\x94\x60\x3f\xc3\x74\x3d\xf3\x0c\x25\x5c\xac\x9c\x24\xd4\x94\xad\x5f\xfe\xc6\xde\x90\x12\xad\x9c\xda\xb8\xbd\x68\x97\xb5\xd9\xbb\xa0\x6f\x14\x03\x4f\x6f\x67\x5a\xd0\xaa\xd8\x7d\x7b\x45\x14\x4c\x47\x0e\xb7\x2c\x46\x18\xe5\xba\xe2\x58\x2b\xc9\x0d\xe4\x7e\x4d\xe0\xa1\xdd\xdb\xd6\x10\x9c\xb1\x21\x72\x57\x68\xbd\x45\xa0\xd9\x24\xe8\x7c\x75\x91\x0c\x41\x4c\x2b\xb9\xd0\x8c\xac\x9d\x1b\x42\xd6\xef\x27\xd3\xb9\x95\xd0\xd3\xc3\xc1\x60\x8e\x0e\xd9\x22\x9a\x13\x62\xf3\x85\xad\xa7\x0a\xc4\x75\x52\x5f\x7a\x97\x58\x97\x30\xf3\x81\xf1\x23\xee\x25\x68\x0d\x95\xf7\x91\xb7\x04\x99\x5b\x82\x86\xa6\x71\x8a\xd7\x38\xd3\x71\xde\x7c\x5c\xe0\xb7\xa9\xb4\x7e\xf8\x76\xbb\x67\x3a\xd8\x5d\x6a\x65\x95\x4d\xd5\x29\xa3\x15\xe6\x46\xa1\x35\xa0\x91\x2d\xf9\x74\x2b\xa9\xbb\x1b\x74\x53\xa7\xee\x6e\x91\x72\xbb\xdd\x48\x8c\x56\xd3\xdb\x19\xb9\x99\xde\x3a\x46\x63\xd9\xef\xef\x2d\xa0\x29\xbb\xd8\xf6\x54\xb9\x13\x15\x88\x47\x1b\x9b\x02\x0e\x9b\x3c\x6a\x9e\xdf\x1e\x5d\xc5\xb7\x0b\x29\x47\x60\xa3\x54\x55\x9e\x3b\xe2\x77\xc6\x1d\x31\x38\x19\xfe\xb6\xe0\xb3\x5e\x98\x58\x0f\x59\x5e\xea\x3b\x88\x37\x89\xf2\xaa\xe4\xe4\xbd\xdb\x6d\xd4\x9a\x01\x5c\x68\x8b\xea\x9f\xf0\x52\x9c\x94\xc9\x8a\xfc\xa7\x7c\xc8\x32\xf2\x46\xfd\xab\x4b\x91\x94\x9c\x49\xca\x20\x99\x53\xf2\x07\x06\x7b\xf2\x25\xf9\xa8\x1f\x4c\x8e\x0f\x60\x9c\x0a\x5c\x3e\x79\xa7\x22\xe3\x52\x4e\x1e\xe1\x29\x2f\x52\xca\x16\x0f\xe4\x04\x83\xaa\x1b\x04\xa9\xa7\xa4\xc0\x34\x2e\x72\xb2\xa0\xf2\x7f\xb1\x20\x2b\xea\xec\x5b\xc9\x4f\xd8\xc8\x9d\xc9\xcf\x58\xb9\xbe\x7e\x8d\x69\xbc\x60\x99\xa0\x9c\x7c\x07\xdd\x7d\xc8\x25\xaf\x04\xab\x73\xa1\x43\xb1\xc6\xd6\xa4\x3b\x9e\x27\xa5\x68\x77\x76\x9c\x93\xcd\x0d\xbb\x67\xa1\x47\xfb\x42\x03\xa3\x22\xd7\xdd\x51\x6f\x8b\x05\xb6\x92\x59\xe2\x6f\x0a\xdc\x36\xf7\xfa\x5c\xd1\x0a\x7b\x17\x79\xce\xca\xd5\x06\xc1\xf4\x63\xbb\x5c\x3c\xac\xa8\x56\x7d\x36\x15\xa9\x50\x91\x57\xb4\x9b\xd8\x00\xb2\x56\xf8\xcf\xb5\x23\x04\x89\x34\xe9\xac\xc3\xc0\xe3\x2a\x44\x50\x9d\xce\x10\xde\x57\x31\x25\x4c\x5c\x05\x01\xf4\xa4\x96\xb2\x54\xb8\x58\x2c\x7c\xab\x2d\x5d\x55\xc7\xdd\x9d\xaa\x9a\x40\xaf\xc6\x55\x61\xe3\x38\x30\x1d\x7d\x29\x2a\xf0\x48\x3b\x9f\xd3\x0d\x57\xd8\x77\x85\x95\xdb\x80\x22\xaa\x01\x1d\xd1\x86\x21\xdf\x9b\x4e\x2d\x08\x4b\x34\xc4\x6c\x5a\xcc\x50\x24\x8b\xc3\x61\xf2\xd7\xd5\x28\xbb\x6c\x18\x68\x51\x81\x73\xf4\xbd\x51\x3d\xee\x2e\xcc\xf6\xc1\x1e\x21\x26\x40\x68\x19\x82\xd1\x2e\x83\x9e\xa8\xb8\xb5\x79\xac\xf6\x00\x33\x62\xe5\xe9\xac\xe6\xb9\x59\xf2\x35\x72\x3a\xb5\xaa\xad\x12\x32\x50\xbc\x4a\x1e\xb2\x22\x49\xc7\x9b\x2f\xf4\x61\x2c\xe2\xcb\xeb\x35\x4b\xff\x93\x3e\x60\x96\xca\x37\x96\x62\x2a\x3b\xfe\x51\x65\x4e\xa9\x48\x58\x26\x3f\x70\x5a\xae\x33\x81\xc1\xf3\xce\xfb\x74\x0c\x31\x96\x65\xee\x2c\xb9\xa2\x90\x01\x1e\xb0\x60\x37\xf4\x5c\x24\x37\xab\xf1\x5b\x49\x5e\xe7\xc5\x5d\x84\x30\xdc\x06\x8c\xd9\xb4\xe7\x86\xbf\x7f\xc7\xc4\x72\x1f\x74\x4f\x7b\xb3\x89\xd3\xf7\x35\x15\x69\x97\x30\x15\xea\xf7\x4b\x2a\x2e\xd8\x0d\x2d\xd6\x42\xe9\x3c\x98\x55\xa0\x64\x78\x48\x5f\x5a\x59\x15\x35\x72\x2a\x41\x12\xb9\x09\x38\x11\xb1\x1e\x6b\x87\xc7\x72\x94\x84\x4b\x9e\x74\xc0\x63\x96\x62\xed\xdf\xfd\x47\x3f\x59\x8f\x0d\x73\x65\x35\x04\xac\xad\xd1\x92\x85\x14\xf5\x86\x30\xb3\x77\x1d\x42\xbb\x49\x30\x2d\xa1\x2a\xb1\x71\xc8\x2a\xfc\xb7\x61\xe8\x15\xdb\xdc\x8c\xb7\x58\x93\x83\x1a\xa9\xaf\x46\xab\xec\x52\xcc\xca\xd3\x8e\x23\x44\x64\x7a\xb4\xc6\x0e\x39\xa4\xea\x22\x98\xfb\x8e\xad\xd1\x26\xf4\x2b\xad\x03\x63\x86\x2d\x04\x2d\xf6\xfb\x32\xe9\xaa\xd6\x0f\x0b\xd0\x08\xc9\x26\xe1\x1d\xbf\x32\x42\xbd\x04\x12\x64\x02\x07\xd3\xec\x12\x34\x3e\xf0\xbf\xc9\x45\x35\x86\x54\xca\x6e\x24\xc8\x8c\xc6\x37\x91\xb0\xba\x41\xe4\xd5\x46\x10\x42\x38\xd4\xc8\xd1\x38\x85\xbf\x0a\x0b\xf2\x6a\xa5\x3c\xc8\x54\xf0\x37\x6e\x31\xbe\xe7\x93\x7a\xbc\x0a\xa6\xc0\x6c\x44\xb5\xae\x0c\x38\xaa\x65\x2d\xe1\x9d\x05\x7f\xd8\x50\xeb\xd2\x59\x9e\xe1\xb9\x0e\x49\x61\x40\x2c\xab\xaa\x88\xcb\xec\xe4\xd5\x26\xdf\x6e\x23\xe5\x68\xb7\xd9\x55\xd5\x57\x97\xc5\xf4\x5a\x02\x5c\xb5\xb5\x3b\x7b\x79\xbf\xcf\xc0\x01\x84\xfe\xce\xe0\xbb\x1a\x99\xac\x69\xa1\x3d\x52\x7a\xae\xba\xcd\xde\x91\x13\x8b\xd4\x77\xeb\x7f\x9c\xe9\x09\x88\x72\x22\x10\x36\x3a\x48\xdb\xad\x0b\x5e\x4c\x98\xef\xad\x40\xbe\xfb\x75\x28\x82\x03\x6e\x90\xe4\xa9\x11\x4b\x9a\xeb\xe1\x17\xa1\xed\xf6\x0a\xec\xd9\x2a\xb3\xa1\x2a\x7d\xaf\x1f\xb8\xfb\x46\x1b\x6a\x97\x5b\x6e\x26\xf3\x1c\x51\xbb\xe2\xf8\x36\xf0\x1c\x6d\x80\xba\xe5\xc6\xf4\xc6\x91\x4c\x99\x29\x03\xc1\xf7\x55\x32\x19\x61\x93\x6b\x7d\x55\xce\x39\xbb\x72\x61\xc0\x26\x12\xf0\x1b\x18\xd3\xef\x97\x12\x79\x65\x0b\x96\x65\x34\xed\x61\x8a\xc6\x66\x3f\xdc\x82\x0f\x21\xdf\xc3\xf5\x13\x3d\x50\xad\x1e\x60\xbf\x33\xa6\xa2\x65\x58\xd1\x4d\xfd\x16\x24\xec\xa5\x17\x4b\xa9\x43\x6b\x87\xa2\x98\x26\x33\x22\xe4\xdf\x60\x34\x23\x1c\x1e\x0e\x66\x24\x87\xc1\x26\x30\x93\xba\x4f\xfe\x20\x5c\xd3\xb7\x01\xdd\xe5\x37\xca\xed\x78\x94\xc5\x69\x38\x43\x23\xd8\xc2\xde\x3c\x8d\x7b\x8a\x70\x51\x53\x86\x87\xbe\x02\x8f\x13\x70\x82\xd8\xc8\xce\x88\x0e\xb6\x21\x5c\xb0\x0d\xf2\x1c\xe5\x44\x4c\x33\x89\x8d\xc5\x34\x1b\xf0\x19\xce\x27\xd7\xda\xbb\x5c\x82\xc6\x45\x94\xa0\x4e\xeb\x1a\x92\xa1\xa7\xb8\x7d\xdd\xe0\x7d\x70\x42\xda\x8e\x3e\x2e\x89\xd2\xae\x4e\x90\xdc\xc7\x12\x79\xe7\xde\x55\x5f\xa9\x22\x3c\x65\x0a\xed\x33\x89\x91\x9d\xb8\x46\x4d\x0e\x50\x22\x84\x88\xc9\x4a\x22\xf1\x90\xb2\x39\x32\xca\x34\x65\x77\x6e\x88\x9c\x79\x92\x2b\xfd\x3d\x4d\xa1\x27\xa2\x5b\x26\x37\xd4\xe4\x8c\x7b\x08\x8d\xf7\xe4\xec\x96\x50\x63\x81\xc6\xc9\x24\x8d\x04\x66\x68\x0c\x91\x62\x27\x0b\xf5\x72\xa0\x04\x10\x2b\x78\xf3\x16\xf4\x2a\x0c\xba\xa3\x84\x07\x76\x19\x65\x15\x79\xbf\xbf\x47\xb7\xdb\x03\xfd\x28\x2c\x9d\x50\x3f\x04\xf3\x65\xc2\x72\x13\xd5\x42\x39\xe4\x85\x5f\x25\x8a\x0b\xf6\xa1\xb6\x7a\x30\x88\xc6\xc7\x05\xd1\x1a\x73\x2b\x9b\xd0\x0b\xdf\xb6\xa3\x6a\xcd\x15\x9e\x72\x4e\x8e\x6e\x14\x0f\xa7\x62\xb5\x3a\xe8\x93\x11\x18\xd0\x84\x8e\x45\xc7\xec\x6f\x89\xed\xaf\x23\xb9\x5f\x32\x9c\x20\x4f\x84\xbc\xcb\x35\xbb\xe7\x28\xce\xe8\x2c\xbc\x09\x2c\x53\x94\x12\x81\xf1\xa0\x4c\xef\xba\x34\x5a\x5b\xbd\xde\x4b\x50\x49\x38\xcd\xcf\x14\xd9\xae\xed\x6e\x2f\x59\xf9\xb9\x64\xf9\xb5\x62\xe9\x14\x6d\x4e\x08\xb9\x6f\x7c\xd5\xe2\x4d\xe7\xf8\x46\xa2\x4c\x93\x2b\x67\x22\x8a\xe3\xd8\x12\x76\xa8\x52\x69\xbe\xf0\x5b\x6f\xff\xed\x76\xa8\x96\x45\x9f\x06\xd3\x0f\x4e\x6f\x12\x96\xb3\xfc\xda\x4b\x01\x60\xe4\xc2\x25\x1a\xc1\xf8\x25\x05\xa3\x28\xa5\x96\x5a\x79\x6f\x41\x74\x38\xaf\x11\xa3\x66\xab\xa7\x06\xc2\xc4\xd9\x35\xe3\x16\xf0\xe4\x2f\x05\x5c\xa1\xe9\x46\x92\xf9\xf2\x38\x17\xfc\x21\xa2\xd3\x7c\x86\x73\x10\x7c\x1b\x11\x17\x9d\x7f\x79\xb7\xce\x00\xa4\x80\xa5\x1e\xaa\xda\x12\x37\x3a\xf0\x7c\x6d\x84\x81\xf7\x1f\xb3\xd1\x8c\x9d\xaf\xee\x22\x45\xb5\x59\x00\x72\xf1\xb2\x04\x76\xee\x24\x79\xb8\xa2\x17\x4b\x9a\x27\xe0\x10\xb1\x79\x8c\x5a\xb6\x87\xb5\x24\x6e\xae\xa9\x0f\x7b\xf6\x86\x1d\x05\x5f\xa8\x8f\x27\x33\xb4\x49\x0c\x84\x01\x84\x0c\x94\x94\xe7\x12\x51\x4d\x21\xaa\x03\x7d\x7d\xa8\x15\x0f\x7a\x24\x2c\xb6\xc1\xc2\x61\x1b\xcc\x1d\xa6\x6f\xe1\xc5\x18\xaa\x57\x32\x92\xa5\xfd\x52\x3b\x36\xb2\xb5\xf8\xa3\x77\xdd\x3c\x5a\xa3\x0e\x40\xab\x64\xb2\x8a\xe4\xa1\x1d\x47\xf3\xa8\xc4\xd4\xfa\xcb\xb9\xbc\x63\x86\x9f\x3e\x12\x51\x09\x73\xea\xbb\xf0\x0e\xbf\xab\x3a\x05\x79\x25\x94\x37\x23\x49\x2d\xec\xcc\xeb\x7b\x5d\x82\x9c\xfe\xde\x52\x8b\xa7\x9d\x31\xb5\x92\xce\x13\x7f\x02\xda\x96\x7e\x6c\x33\x9c\xc1\x8c\x7a\x73\x54\xf9\x93\x1f\x60\x9a\xe0\x44\x38\x51\x31\x73\xa4\x41\x0b\xd4\xe8\xf7\x01\x9a\x4f\x56\xa0\xd7\x6f\x74\xcd\xfc\x86\x4d\x23\x78\xe7\x49\x41\xaa\x53\x8d\x12\x9b\xda\x29\xd9\xdf\x0f\x4e\xc0\x54\xcc\x08\xaf\xc2\x99\xd5\x93\x27\xa9\x12\xc3\xda\x6b\x6d\xd2\x96\xed\xd2\xf6\xed\x40\x7f\xab\xb9\x24\xd6\xec\xc4\x57\xfb\xa3\xf0\xdc\x06\x26\x6c\xec\x93\x62\x4a\x70\xc3\xab\xb1\xf9\xe6\x48\x0e\x4e\x93\xb2\xc8\xc7\x5c\x59\x56\xde\x11\x90\x42\x5d\xf6\x06\x8e\x9f\x1c\xf4\xf6\x7b\xf8\x98\x0c\xb5\x8d\xe1\x7d\x1d\x0f\x58\x1c\x90\x92\x63\xe3\x36\x5f\x91\xde\xc6\xb8\xf0\xb2\x69\xa1\x64\xe0\x48\x90\xe6\x11\x27\xe0\xda\xa1\x81\xe8\xc0\x36\x52\x23\x3a\x84\xd7\x6a\x87\xb6\x9d\x52\xda\xef\x07\xf1\x99\x5b\xa4\x27\xbf\x16\x6b\x25\x38\x59\xc9\x51\x25\xda\xed\x11\xe5\x5d\xe7\x0d\xa5\x04\x43\xd6\x05\xe3\xa5\xe8\x1a\x5c\xd2\x15\x05\xa4\x1a\x6d\x5f\x6f\x32\x7a\xa8\xd2\x7e\x05\x7d\x1d\xbe\xfb\x49\x5b\x10\xb6\xbd\x91\x8a\x78\x2d\xcf\xec\x86\x6b\x4d\x0e\x9c\x1a\xe6\x25\x48\x35\x2c\x8d\xa1\xaf\x72\xb4\x59\x29\x17\xb1\x95\xb5\x31\xfd\xda\x68\xdf\x25\x2c\xa3\xa9\xec\xbc\xed\x70\xf7\xaf\x1a\x30\xfd\x75\xdc\xfd\x94\xd1\xa4\xa4\xdd\x35\x40\x0c\xda\xfd\x6b\x4e\xef\xfe\xda\x2d\x56\x12\x8d\x15\x1c\x03\x14\xd1\xc6\xf5\xfe\x80\x0d\x4d\x76\x45\x81\x4c\xa3\xa9\x9c\x32\x27\x84\x8a\x61\x42\x50\xe5\x58\x12\xe0\x10\x17\x82\x72\x25\x5a\x08\xc8\x21\x49\x68\x1b\x3e\xdf\x28\x34\x52\x7f\x37\xb9\x09\x68\x84\x0c\x00\xf5\x1e\x73\xe4\x1a\xc1\x05\xbc\xdb\x6e\xaf\xf3\x9a\x9d\x6f\x21\x6e\x35\x84\x33\xae\x55\x79\x9b\xd3\x3e\x44\x5e\x09\x84\x9f\xf8\x6a\xb4\xdd\x2a\x73\x37\xa7\xa3\x24\x04\xee\xc6\x4f\xeb\xa6\x6c\xe0\xc5\x9b\x3a\x75\x1a\x47\x6c\xe4\x48\x07\x23\xce\x95\x3b\xe9\x69\x31\x23\x74\x5a\xcc\xac\x94\x3c\x21\xc3\xc3\xc4\xb1\x04\xc9\x60\x80\x36\x7c\x2a\xa6\xc9\x6c\x46\x18\x70\x39\x2e\x82\x6b\xe8\x5a\xd8\x8f\x60\x6b\x09\x14\x2f\x2a\xf4\xfe\x08\xe1\x9c\x8c\x0e\x0d\x3d\xc2\xa7\xf9\xfe\x48\xb6\x9e\x5b\x2f\xd0\x5e\x95\x17\xfe\xf2\x6c\xe4\xa8\xc7\xe0\x7a\x9b\xbc\x0a\x19\xfe\xca\x8f\x0f\xef\x96\xc9\xb7\xec\xb6\xd3\x52\x97\xd0\x69\x7d\x6c\x4d\x86\x0d\x54\xdc\xd3\x91\x9e\x20\x0e\x8e\x47\xb4\xe9\xa5\x2d\x29\xa7\x4a\x59\x1f\x6f\x6c\xb0\x62\xc9\xe7\x35\xf0\x5b\xa2\xc3\x4d\x05\xa2\x9b\x7b\xe4\x42\x45\x29\x7a\x24\xf1\xe9\x91\xb9\x8f\xdb\xef\x23\xe7\x5e\x5c\xe2\xf6\x39\xc2\xa5\xe1\x83\xf6\x46\x1d\xd6\xef\xef\x19\x7d\xd7\x84\x5c\x44\x0c\x88\xed\x5c\xae\x67\x52\x39\x8b\x14\xbf\x96\x7c\xca\x67\x35\x3f\xeb\x12\xe7\x65\xd8\xfa\x23\x04\x46\x2a\x8d\x32\x89\x05\xff\x5f\xde\xfe\x6d\xcb\x6d\x5b\xf9\x17\x85\xef\xf5\x14\x2d\x8d\x39\x39\x88\x08\x92\x25\x67\x66\xae\xf9\x67\x37\x5a\x9f\x8f\x89\x13\x9f\x62\x3b\x07\xa7\xdd\xcb\x83\x4d\x41\x2d\xc6\x14\xa1\x80\x50\xb7\x3b\x4d\x8d\xf1\xdd\xed\x8b\xfd\x06\xfb\x6a\x3f\xcb\x7e\x94\xf5\x24\x7b\xa0\x0a\x00\x01\x92\x6a\x27\x6b\xaf\xb1\x7c\xe1\x16\x71\x3e\x16\x0a\x85\xaa\x5f\x0d\x9b\xaf\xb7\x71\xc3\x02\x93\x24\x74\x26\xa5\x08\x24\x79\xd5\x24\xd1\x44\x26\xc1\x42\xf6\x34\x5f\x3c\x88\x0b\x5a\x9a\x2d\x48\x92\xd7\xfe\xd7\xbe\x79\x4d\xfb\xf8\x11\xec\xd2\x3f\x7e\x64\xdc\x17\x89\xbd\x0e\x65\x3d\xe6\xd5\x2d\x2e\x1b\x85\xd0\x1c\xa9\x58\xee\x2e\x1a\xbc\xc9\xfd\xa0\xc9\x6d\x22\x3f\x4f\x61\xe9\x34\x80\xc7\x4d\x05\xde\x1d\xee\x51\x40\x1a\x30\x0f\xd0\x83\x46\xd2\xff\x99\x7e\x46\x59\x7f\x41\x21\xbe\xe5\x22\xd3\x64\x6d\xfb\xdd\x5a\x04\xc6\x39\xa0\xd7\x6a\x79\x95\xc4\x3c\xe7\x39\x48\x2e\x8f\xea\x5a\xf5\x43\x50\xe1\x37\x42\x7a\x43\x29\xaf\x73\xb5\x3e\x4a\xcb\xa3\x54\xd7\x30\x22\xba\x91\xf4\x33\x3e\x9a\x1c\x72\xda\xd9\x48\x22\xf5\x42\x6e\x37\x91\xb8\x25\x27\xdb\xd7\x69\xa7\x99\x9f\x66\xfc\x0b\xed\x20\x54\x06\xae\xbf\x7b\xaf\x25\xdc\x77\x68\xbd\x31\x96\xec\x96\x0a\x9e\x95\xe7\xc4\x63\x7f\x8c\xb4\x94\xb3\xd3\x2d\xfc\x22\x0d\xc9\xd0\xfd\x35\x77\xb7\x02\x7e\xc3\x45\xf0\xcb\xbd\xf7\x3a\x0a\x72\x58\xfa\xd9\xc3\x46\xb0\x02\x76\x76\x1d\x04\xeb\x65\xe3\xbc\x8c\x7d\x72\x30\x09\x3d\x97\x5a\x1f\x93\x71\x38\xd7\x7b\xa1\x59\x5f\x6f\xbe\xbc\x48\x3e\xc5\x9f\xe1\x08\x72\xcb\xe3\xf3\x97\xd7\x86\x79\x14\xfb\x0b\x4b\xc4\xb5\xe4\xf7\xd6\x4a\x07\xc0\x09\x58\xea\x9f\xfc\xc1\xf0\x18\x5b\xf6\xd1\xf4\xfe\xf1\x5d\xbd\x07\x50\x80\x10\xc1\xb3\x0c\x6e\xcf\x01\xf7\xe6\xb4\xb2\xee\xb8\x01\x37\x78\x11\x2d\x63\xfb\xdc\xa9\x5a\x3a\x7b\x03\xc3\xfd\xb7\x6f\xe0\x79\x70\xc8\x35\x4a\xbf\x6e\x49\xa6\x27\x39\x1c\x78\xe0\x48\x12\xd4\x34\xad\xf6\x47\x73\xb3\x91\xa8\xcf\x72\xc7\x95\xb9\x19\xdd\x97\xed\xd1\xf5\x30\x0c\xdb\xa8\xbd\xdc\x1d\x28\x9a\xfb\xf6\xa5\xc0\x96\x9d\xe8\x7f\xbd\xb3\xf3\xbf\x4e\xab\xf5\xa1\x99\x37\x45\x05\xb0\x28\x8f\x5b\x0b\x6c\x4f\x88\x91\xd0\x3c\x73\x13\xfb\xf8\xef\x2d\xeb\xe7\xff\x1b\xba\xeb\x3d\xfe\xfe\x9d\xde\x3e\x83\xde\x82\x6d\x82\xdf\x61\xd7\xf4\xa7\x88\x17\xa0\x2b\x6c\x3f\x5c\x61\x28\xdf\x13\xea\x9d\x2c\x7f\x36\x62\xdb\x5b\xd3\xcd\xc4\xbe\x85\xc0\x36\xb5\xee\x18\xdd\xcb\x79\x20\xc0\xfa\x1c\xc3\xf1\xab\x4b\x77\xb4\x0b\xf4\x21\x8d\x10\x6b\x0f\x82\x92\xfd\xb3\x2f\xed\xc1\x9f\xee\xda\x83\xe1\x06\xd4\x1b\x12\x6e\xce\x76\x0f\x06\xf0\x6d\x07\xe5\x58\xa2\x23\xc7\x12\x87\xe4\x58\xd6\xbe\xf2\xe3\x26\xdd\x3e\x2d\xad\xd2\x4e\x6b\x4f\xf7\x5e\x91\xf5\x4a\x00\xf9\x6f\x7b\xb3\x79\xe5\xe9\x8d\x47\x0c\x18\x9d\x3b\xf9\xfb\x2e\xbe\x39\x24\xf1\xa4\x16\x77\x5f\xbd\x9b\x39\x7d\x18\x07\xce\xc9\xfa\x1e\xd0\x17\x87\xa8\xf0\x26\xdd\x1e\xf1\xcf\x5b\x40\x0d\x4b\x83\xab\x5f\x7a\x54\xf1\x4c\x94\x4b\x77\xf3\x1b\x11\xcd\x5d\xf9\xbb\x43\x1e\xd8\x1d\xdd\xb3\xb9\x77\x4b\xe8\xba\xef\x26\xf9\xfe\x4e\xf8\x09\xf7\xbd\xae\xb4\x6f\x23\x7c\x77\xc7\x1e\x6e\x52\xfd\xdc\x49\x85\xd0\x9b\x3a\x91\x5e\x4f\x7f\xb0\xdb\xbd\x59\xa2\xbf\xb8\x25\xfa\xd3\xed\xdf\x10\x26\x86\x2e\xc7\xec\x13\x54\x8f\x84\xd1\x28\x67\xc4\x9c\x9d\xf2\x21\x63\x7f\x90\xbf\x2e\x72\x3c\xb0\x10\x6f\x3b\x8b\x64\x60\x15\xb8\x9c\x18\xb1\xbd\x30\x1b\xeb\x3b\xd1\x38\xd5\x0c\xd7\x65\x0a\xeb\x52\x58\xbf\x24\xcd\x22\xb7\x10\x8b\x07\x96\xac\x74\xf0\x13\x4d\x8b\xfe\xf0\xc9\xee\x3f\xfe\x3f\xac\x5b\x1c\x3c\xb7\x74\xff\xf7\x2e\x5c\x53\xf9\x5f\x5f\xbb\xbf\xf4\xae\x5d\x3d\x39\xdf\xd2\xf7\x6c\xd6\x68\x52\xfc\x80\xeb\x73\xc7\xcf\xde\x9f\x33\x4e\xf5\xdf\xf1\xfc\x9c\x29\x7a\x9f\x31\x16\xbf\x1f\xb3\xfb\x24\x8a\x24\x8f\x31\xf3\x8f\x6c\xb4\x2b\x51\x67\x69\xd9\x0c\xda\x75\x5e\x2e\xc5\xf5\x02\xff\x58\xe2\xfe\x3d\xfb\x11\x20\xd5\x7e\x65\xdf\x4f\x5f\xec\x14\xd8\xcf\xbe\xba\xa8\xb8\xbc\xe2\xb2\xae\xbf\x9f\xfe\xc2\x2f\x7e\xc8\x55\x3b\x86\xfe\xe6\xd7\xe0\xae\x88\x15\x2f\x56\x51\xd4\x57\xb7\x81\xc0\x8f\xa2\xd1\x99\x11\x97\x98\x90\xf3\x11\x63\xec\x76\x3f\xb5\xbe\xcc\xf0\x2a\x6c\x22\x09\xe5\xbc\xb7\x2b\x3f\xe5\xa5\xfa\xcf\xa3\x22\xdd\x6c\xf9\x12\xa6\xa4\xbf\xd6\x7c\xb3\x15\x52\xbd\xcd\x64\xbe\x55\x55\x7f\x92\x17\x08\x6c\xf6\x68\x9d\x96\x25\xf7\x70\xb5\x3c\xef\x1c\xfa\xd0\xf4\xce\xd0\x8c\xd3\x39\x0e\xb3\xe4\xb4\xe4\x34\xe7\x54\x70\x9a\x72\x5a\x71\x5a\xe8\xa9\xf1\x4e\x90\x39\xff\xda\x43\x11\xce\xb8\x77\x79\x47\xb5\x91\xf7\xc7\x5c\xcf\xdd\x6d\x3c\xd3\x73\xca\xcf\x49\xac\xff\x8c\xe7\xe7\x04\xbf\xad\x1c\xd0\x84\x5a\xfd\xeb\xf7\x6c\xb6\xff\x6d\x11\x57\x9c\x99\x91\x9a\x96\xfc\xb3\x7a\x97\x67\x9f\x68\xd1\x84\x5d\x71\x59\xe5\xa2\xac\xa6\xa5\x58\xf2\xe9\x06\x36\xf4\xbd\xff\x1e\x2f\x92\xf8\xc3\x72\x4c\x3e\x4c\xc9\x22\xf8\xfd\xe1\xab\x5a\xff\xfe\xc7\x3d\x42\xc3\xe5\x5e\x80\xe3\x81\x99\x9e\xa9\x82\x9f\xcd\xcf\xa3\x68\x34\xb7\x5f\xf7\x01\x83\x9e\xb3\x8a\xab\x67\x1b\xa3\x4f\x4d\xa8\xe4\x0c\x47\x2d\xce\x38\x21\xc9\xaf\x8b\x38\xe7\x6c\x46\x05\x8e\xcd\xaf\x3a\x94\xa6\x9c\x2d\x45\x06\x1b\xd1\x80\xbb\xbd\xe3\x9f\xd5\x4b\xb1\xe4\xf1\x68\x44\xa8\xe0\x53\x81\xab\x2d\x4e\x39\xbd\xcd\xd6\xa9\x4c\x33\xc5\xe5\xe3\x54\xa5\xa8\x6a\x67\x2a\x49\x39\xa2\x82\xe7\x9c\x8d\xc7\x39\xff\xe7\x7d\x92\x70\xbe\x88\xe3\x12\x2b\x0b\x27\x98\x4c\xf5\x8a\x98\x4f\x45\x69\x11\xed\x32\x6e\x0b\x2a\x39\x44\xde\x9f\x6e\x45\xa5\x4c\xb6\x78\x46\x48\x22\xad\x88\x96\x31\xf6\x63\xbf\xbb\x85\x85\x2f\x67\x94\x37\x86\xac\x3f\xb5\x81\x23\x4f\x28\x37\x22\xa0\xdc\xff\xc7\x2e\x97\x3c\x1e\x5d\x71\xa9\x3e\x8f\xba\x2e\x75\xe2\x6f\x19\x9f\xca\x5d\xf9\xaa\x7c\x2e\xc4\xb6\xae\xcd\x87\x31\x03\x23\x7e\x7d\xdf\xea\xe1\xdc\x27\xe0\x17\xa6\x0d\x8b\x02\x81\xfb\x98\x40\xac\xd5\x16\x60\x3f\x50\x23\x6e\x64\x3c\x58\xda\x9c\xce\x50\x8d\x6b\xc9\xd9\x77\x03\xa3\xfb\xb7\x44\xa5\x9f\x35\x67\x40\x83\xd8\xa9\x53\x66\x01\xbb\x58\xa7\x3d\xa1\x17\x77\x3e\x15\x65\xeb\x81\xb1\x51\x6e\x30\x09\x56\xab\x56\x0a\x00\xe9\xc0\x86\xad\x39\x3d\x4c\xb9\x7a\x64\x52\x18\x31\xfd\xf8\xf1\xf5\x9b\x57\x2f\x9e\xbd\x7d\xf2\xf1\xd9\xcb\xb7\xef\xde\xfc\xf4\xe2\xc9\xcb\x77\x0f\xde\x3d\x7b\xf5\xf2\xe3\x47\x3c\x61\x37\x9c\x7d\x39\x69\xa3\x57\xcb\x8f\xf2\xf2\x48\xc4\x9e\x9e\xd8\x08\xec\xdc\x37\x9c\x6c\x3a\x7e\x80\xae\xf4\xee\x58\xf1\xf8\x8a\xd3\x0d\x3f\xbb\xe2\xe7\x48\x1c\x2e\x39\xbb\x4d\xab\x74\x9b\xfc\x40\xf5\x30\x26\x4b\x4e\x5f\xdb\x9b\x2f\xf5\x94\xf2\x92\x92\xa6\x45\x91\x3c\xa2\xcd\x7d\x37\x79\x43\xf5\xb5\x35\xf9\x9d\xea\xcb\x41\xf2\x92\x7a\x77\x84\xe4\x39\x35\xea\xa1\xc9\x53\x0a\xca\xa1\xc9\x9f\xd4\xa9\x86\x26\x2f\xa8\x53\x0c\x4d\x04\x15\x65\xb2\xe2\x54\xac\x56\xc9\x56\xaf\x72\xe4\xea\xbf\xb3\x0c\xfd\xcf\x74\x93\x6e\x93\x87\x14\x86\x3e\x59\x73\x8a\xc7\x57\xf2\x0f\x5f\x07\xf7\x92\x83\xcd\x48\x3c\xe2\xe0\x70\x1f\x24\xf9\x78\x8d\x08\xd4\x6e\x91\x59\x3f\xe2\xec\x89\x4e\x36\xfd\xf8\xb1\x10\xe9\x12\xc0\xff\xcc\x3a\xff\xff\x5d\x16\xf9\x66\xc3\xe5\x3d\xb9\x2b\x55\xbe\xe1\x23\x32\x30\x49\x25\xbf\xcc\x2b\xbd\xb1\x79\xf3\x42\x3e\xed\x06\x52\x93\x7c\x57\xf6\x66\xe8\x0b\xb6\x59\xd2\xaa\x12\x99\x26\x4c\x10\x25\x6e\xd2\x8b\x02\x51\x66\x99\x5e\x77\x07\xe2\x6c\xe6\xbc\x32\x31\xfa\xaa\xc0\xa7\xfe\x67\x27\x09\x5f\xfa\x29\xf8\xd2\x6b\x00\x97\xca\xab\x21\xc8\x70\x47\xac\x2d\x00\x9f\x11\xbd\x24\xef\x64\x9a\x7d\xc2\x16\x1d\x8c\xdb\xef\x49\xec\x03\xe2\xa0\x16\x6d\xe7\xd9\x12\x95\xaa\x7b\x36\xd7\x06\xd4\x9b\x09\xfe\x99\x9a\x74\x8c\xc7\x46\x5d\x22\x78\x06\x76\x99\x70\xef\x46\x11\xfe\x9d\xa6\x9b\xa5\x95\xbf\x61\x48\x7c\x76\x4e\x39\x39\x06\x06\xb0\xae\x71\x53\x92\xe9\x23\xb1\xe4\x2f\x72\xc4\x48\x07\x82\xe5\x3b\xff\x09\x16\x1a\x12\xd6\x32\xbd\xca\x2f\x53\x25\xe4\x74\x57\x71\xf9\xe0\x92\x97\x8a\x2a\x2f\x74\x5b\xa4\x6a\x25\xe4\x86\x4a\x76\xef\x92\x67\x9f\xc4\x87\x7b\x1f\x96\xf7\x72\x74\x45\x01\xb0\x25\xf7\x5e\xbc\x7d\xf6\xe4\xe8\xc3\xf2\x9e\x0b\xcb\xd9\xbd\x77\x32\x5f\xf2\x52\x7d\xb8\x17\x2f\x92\xb3\xff\x36\xf9\xaf\xf3\xfa\xc3\xf2\xf6\x3e\xdd\x93\x0f\xd3\xe9\x57\xf2\x0a\xcf\xca\x7b\x53\xfe\x99\x67\x3a\x07\xd8\x3f\xe4\x34\x65\x22\x8a\xe2\x72\xe1\x4e\x33\xfb\xe3\x85\x58\xf2\xba\xfe\x77\x92\x9f\xe9\xf3\xbc\x62\xf7\x90\x99\xfa\x70\xaf\xa9\xb4\x60\x55\x14\xdd\xfb\x51\xe9\xf6\x8d\x3f\x4c\x3f\x2c\xc7\x4d\xdc\x8e\xdd\x7b\xb4\x96\x62\xc3\xfd\x0c\x19\xbb\xf7\x6a\xcb\x65\xea\x87\x2d\xd9\xbd\x07\xdb\x6d\xc1\x8f\x1e\x89\xcd\x76\xa7\xb8\x34\x51\xcd\x78\x5c\xf1\x72\x29\x24\xa1\x6b\x76\xef\x45\x9a\x1d\xbd\x7a\x7b\xf4\xeb\xd1\xfc\xc3\xf2\xc3\xe3\xf8\xec\x3f\xd8\xcd\x0f\x4b\xf2\xe1\x71\x53\xe4\x8a\xdd\x7b\xbd\x4e\x4b\x25\x36\xdf\xbf\x6d\x42\xb7\xa6\x22\xec\x87\x0b\x8f\xa2\x7b\x2f\xc4\x45\x5e\xf0\x0f\xf7\x3e\x5c\x7b\x1d\xd8\xb0\x6d\x5d\xdf\x7b\x50\x2e\xa5\xc8\x97\xf5\x35\xbf\x78\xf5\xb6\x7e\x58\xa4\xd9\xa7\x87\x5c\xca\x9b\x1a\xfa\x71\xf4\x22\x2f\x73\xfb\x53\x5c\xe4\xf5\xb3\x27\x58\x96\x37\x5b\x57\x50\xce\x8b\x34\x33\x45\x2b\x42\x2f\xd9\xbd\x0f\x17\x8f\xe4\xab\xb7\x1f\x2e\x9a\xfa\x2e\xd8\xbd\xeb\xbc\xb4\x19\x15\xa1\x37\x2c\x03\xbf\xc5\xc8\xf9\xfc\x8c\xec\xd0\x87\x7b\xf1\x87\xe5\x57\x7a\xac\xbf\x22\xf7\xc8\xe0\x26\x8a\xe2\x1b\xf6\x72\xa7\x37\x5a\x7c\xa3\x67\x8a\xd0\x9b\x28\xba\x39\x65\xf3\x6f\x00\xbe\x7b\x38\x07\x9d\x2e\x3c\x18\x3f\xb2\xab\x28\x8a\x8b\xba\xce\xf4\x94\x83\xb0\xe7\xa6\xae\x6f\x4e\xe6\xf7\xa7\xf3\x39\x21\xf4\x9a\xc9\xba\x16\x51\x94\x9e\xb2\xff\xa2\x4f\x74\xde\xcf\x60\xd3\xde\x7a\xd8\x02\x44\x93\xf6\x83\xe8\xab\xc6\xdb\x0b\xbf\x36\x29\x51\x74\x21\xb6\x3a\x73\xc5\x14\x53\x8b\x27\x22\x56\x24\xb9\xdd\xd3\x27\x22\xfe\x55\xe2\x4d\x8b\x3e\x8b\x0d\xf6\xb9\x64\x0a\x2d\x5d\x07\x1d\x67\xc9\x12\x2d\xaf\xf9\xf5\xd1\x65\xae\xaf\x78\xe0\xbf\xc7\xf8\xf1\x98\x16\x79\xc9\xdf\xf2\x6d\x0a\xef\x9a\xc4\x59\xd5\x65\xcc\x42\xd9\x41\x93\xa6\x79\xb9\xdd\xa9\xb7\xea\xa6\xe0\xd5\x99\xf2\xbe\xce\x9d\x36\x3d\x66\xcc\xab\x6d\x91\xde\x40\xa6\xb7\x68\x60\x4a\x06\xf9\xf4\x5a\xa6\xdb\x2d\x97\xfe\x6e\x87\x87\x83\x37\x26\xf7\x23\xf3\x17\x9b\xf3\x8b\x4e\x0d\x17\xe7\xd8\x2f\xd4\x95\x02\xb7\x71\xf0\xfe\xcd\x46\x47\x4d\x91\x13\x1d\x3f\xd2\x85\xa4\x3b\x25\x56\x22\xdb\x55\x51\x34\xdc\x44\x51\x8e\xed\x9d\x42\x50\x4c\xe8\x4f\x71\xa3\x80\x66\x4c\x1f\x6f\x3f\xf1\x9b\x17\xe9\xb6\x4a\xce\xce\xa9\xb8\xe2\xb2\x48\x6f\xe0\xb7\x1e\xa9\x6f\x79\x99\xcc\x20\xf4\x5a\xe6\x8a\x27\xc3\x39\x5d\xf2\x22\xd5\xe7\xc0\xc3\x62\x87\xc6\x2d\x3a\x10\x8a\xe7\x4b\xfd\xb3\xda\x6d\xb7\x92\x57\xd5\x93\x65\xae\x2a\x1d\xb0\x4d\x2b\xc5\x9f\x95\x99\xd8\xe4\xe5\xa5\x0e\xc8\x76\xca\xff\xac\x78\xc1\x33\x30\x3b\xe7\x9f\xa1\xb0\xa5\x4c\x2f\x2f\xbd\xef\x75\x7e\xb9\x2e\xf2\xcb\xb5\x4a\xf4\xd0\x66\x82\x7e\xe2\x37\x6f\xf9\x1f\xa0\xa4\x4e\xab\x2d\xcf\xf2\xb4\x78\xb4\x4e\x65\x85\x6a\xeb\xc6\xd8\x0a\x54\xec\x2c\x73\xb3\x03\xde\x26\x8a\xd2\x93\xf9\x3c\x54\x6a\xf7\x48\x6e\xe1\x46\x1b\xc7\x4c\x1a\x64\x19\xb2\x27\xf4\xfe\x2c\x3c\x54\xec\x0b\xa9\xc9\x31\xf8\x36\x8f\xd5\xb4\xca\xa4\x28\x0a\x2e\xe9\x68\x23\xf4\x70\x88\xeb\x72\x44\x7f\xd0\x1c\xe6\x4e\x2f\xaf\x56\x9a\xe5\x45\x91\x15\x79\xf6\x69\x44\x4d\xc3\x16\x90\x34\x70\xa1\x0d\xc0\xe6\x68\x9f\xe0\x2c\x93\xa4\xf3\x44\x24\xa3\x68\xb8\xc4\xcf\x28\x1a\x56\x32\x76\xed\x81\xf4\x0f\x73\xbb\x41\x4a\x06\x0e\xf4\x97\xbf\x08\xb9\x7c\xa0\x62\x49\x06\x0f\xb9\x4e\x2c\x32\x5a\x4e\xd3\x32\x5b\x0b\x49\xcb\xe9\x9a\xa7\x4b\xb2\xdf\xef\x89\xa7\x40\xa0\xc8\xad\xa9\xbf\xae\xa1\xbc\x3d\x19\x5c\xd7\x75\xab\x2b\x06\x34\x62\xc3\xcb\xdd\x28\xec\xc0\x27\x6c\xde\xde\x00\xf0\x48\x5a\xb2\x5b\x5e\x2e\x93\x99\x67\x7f\x91\xeb\xeb\x83\xb5\xd8\x13\xbb\x6c\x0d\x7b\xf6\xc0\x24\x05\x09\x51\x0a\x44\xa8\xbe\x71\xd2\xb8\x64\x41\x24\x99\xf2\x72\xc9\xc6\x20\x25\xd7\xf7\xb3\x7d\x68\xa1\xe1\x49\xae\xd5\xb4\xe0\x2b\x15\xfa\xe9\x94\x26\x74\xc2\xe1\x0f\xd5\x85\x2b\xb1\x9d\x70\xfd\xbf\x7b\xb5\xfa\x4a\x8e\xcb\xaf\xca\xd3\x7f\xcd\x66\xfb\xd6\x90\x28\xdd\x84\x4a\xa5\x52\xf9\x23\x92\x7b\x53\x9a\x87\x2e\x3a\x21\x66\x3e\x64\xba\x82\x5d\xb6\xe6\x55\xaf\x19\x9f\x6a\xe2\x1b\x97\x53\x47\x6a\x2a\xd3\x65\xbe\xab\x7e\x3d\x61\x73\xf0\xf7\x06\x5f\xef\x4f\xd8\x7c\x1f\xe7\x84\xdc\x66\x05\x4f\xa5\x1d\x4d\x69\xc1\xb5\xdd\xd0\x0c\xc2\x41\xbd\x85\x66\x27\x82\x02\x26\x0d\x6c\x61\xc9\xaf\x12\x31\x29\xf5\x88\x9e\xb0\xaf\x67\xb3\x45\x89\x7b\x8d\xce\x19\xcb\x5b\x0d\x06\xf7\x72\x5e\x79\x30\x7e\x4d\xaa\xb3\xd9\xf9\x74\x9b\x5e\xf2\x5f\x69\x98\x4a\x89\x6d\x37\xd1\x7b\xc0\xd5\x6d\xef\x1c\x48\xa4\x1b\xe7\x0f\x6d\x77\x0d\x85\xe5\x43\x67\x18\xec\xe6\xfe\x02\x79\xb9\xf4\xcb\x6b\x94\x16\xfd\x62\x06\xe8\x84\x40\x6f\x36\x45\x25\xb1\xf2\xcd\x12\x3a\x19\x45\xc3\x12\xeb\x89\x22\x3b\xb6\x93\x72\x0a\xc3\x79\xf2\xf5\x6c\xe6\x9c\xac\x80\xf1\x87\x90\xcb\x4a\x93\xad\xb0\x9d\x74\xa4\xfb\x3d\x22\x03\xc1\x86\xe5\x54\x0f\x7c\x5d\x57\x71\x49\xf1\x37\xbe\x2a\xfe\xce\xe3\x94\xa6\x24\x31\x09\x3a\xa9\x4c\xd2\x60\xcf\xa7\x24\x31\x59\x57\x3c\x4e\xe1\xac\xa1\x33\x42\x9f\x5b\x3a\xe0\x42\xc7\x73\x3a\x23\x84\x00\x80\x99\x7a\x8b\xb4\x59\x94\xb1\xb0\x74\x42\x20\x9d\xa0\xdc\x9d\x29\x0f\xf3\x58\x92\x7d\x1e\x1f\x1c\xd9\x4c\x9f\xf5\xc5\x88\xe6\x9d\x68\xfc\xd5\x9e\x46\x1b\x3f\xcd\x8a\x9c\x97\xea\x3b\xae\x89\x7f\x14\xc5\x1b\x20\x26\x4d\x34\xfe\x78\x27\xb6\x84\x5e\xf5\x46\x3d\xd7\x3b\x57\xdf\x61\xbf\xcf\x63\xde\xd4\xc6\x49\x5f\x53\x81\x66\x5f\xaf\x39\x2f\x5a\x34\xec\xa3\xa3\x61\xed\x2c\x8f\x5f\xbd\x78\xa1\x73\xbd\xed\x74\xa3\x27\x9b\x39\xc2\x0f\x75\xda\x9e\xf0\xae\x53\xac\x1d\xa6\x7b\xc3\x10\xcd\x60\xaa\xcf\x48\x2b\x68\xa9\x34\x49\xd5\x77\xd8\x5e\xaa\xfd\x47\x8e\xe6\x7b\x57\x87\x12\xc4\x7d\x6f\xec\xde\x29\x33\xb4\x08\xbf\xe6\x28\x69\xc9\xaf\x1e\x9b\xcf\xa7\x32\x45\xbf\x20\x64\x00\xfe\x4e\x41\xcf\xd2\x1d\x48\xd0\xe0\x47\x3b\x59\x09\x59\xd7\x71\x5f\x30\xfb\x24\xe2\xd1\x32\xbf\x1a\x21\x77\x36\xf2\x98\x9b\x0c\x12\x54\x3e\xbf\xa3\xf3\x99\xe0\x91\x5f\x0d\xb0\x74\xdb\x34\xe3\xd3\xbc\xd4\x17\x4c\xf4\x99\xdb\x5b\xa1\x97\x0b\x4b\x7a\x9c\x5f\x11\x32\xf8\x5d\xf4\xa7\x2e\x8d\xed\x13\x85\x01\x25\x7b\x8a\x54\xd2\x1f\xd2\xb8\x83\xc3\xaa\xef\x48\x43\x6e\xe0\x2e\x7c\xbe\xa6\xae\x1d\xf5\x9d\xac\xe5\xc9\x7c\x36\x73\x7c\x30\x48\xc3\xa0\x12\xd0\x8a\xb6\xd3\xd4\x3e\xde\xcd\x9c\xe8\x24\x20\x0a\x04\x5b\xf7\x95\x5e\x2c\x5c\x3d\x4e\x55\x1a\x8f\x74\x3d\x23\xca\xd1\x3b\xa4\xdd\xc7\xb8\x7a\xfc\xf4\x7c\xb5\xe2\x99\x7a\x50\x14\xe2\x9a\x2f\xd9\x28\x13\xdb\x9b\x17\x40\x5b\x7b\xca\x95\xe9\xe5\xb3\x4d\x7a\xc9\x35\xe3\x61\x97\x8a\x9e\xb7\x7c\x73\x69\xe6\x0d\x27\x6f\x2b\xd0\xec\x3e\x39\x5a\xe5\x9f\xf9\xf2\xf8\x48\x93\xc7\xe4\x68\x76\x7c\xa4\xc4\x56\xff\x1d\x91\x81\x9c\x56\x32\x63\x23\x5d\x47\x92\xeb\x42\xef\x5d\xe6\xab\xe3\x8b\xb4\xe2\xff\xfe\x17\x7d\x33\x2b\xbe\x7d\xf5\xb8\x58\x3f\xf8\xf1\xc1\xc3\x07\xfa\xdf\xa3\xef\xbe\x79\xf8\xe0\xc9\x0f\x0f\x1e\x3c\x79\xf0\x1c\x02\x74\xf8\x93\x07\x0f\x1e\x3c\x7b\xf4\xee\xc1\x93\x07\xaf\xae\x19\x1b\xd1\x0c\xcc\x06\xaf\xf3\xa5\x5a\x33\x39\x5d\x03\xdd\x60\x73\x6f\xa2\xed\x86\xd2\xff\x97\x4b\x10\x79\xc4\x92\x50\x39\xfd\xa8\x8f\x1f\x39\x15\xab\x95\xe6\x3b\x34\x45\xb9\xa3\xf7\xb1\xa4\x33\x4d\x3c\xb3\x28\x92\xd3\x6d\x2a\x79\x09\x12\x5c\x83\xe2\x66\x4b\xdd\xef\x09\x12\x00\xba\x94\x62\x9b\x00\x73\xb7\x92\x84\x16\x3c\xbd\xe2\xfd\x5b\x71\x2b\x63\x4e\xf6\x8e\x83\x35\x7c\xe8\x25\x57\x4f\x73\x5e\x2c\x63\xa2\xd9\xcc\x82\x8e\x3e\xf1\x9b\xdd\xb6\x45\x6d\x5e\x18\x0f\x27\x1e\xc9\xc1\x94\x1e\x17\xfa\x4e\xfa\x11\xc0\xa5\x9b\x98\xd7\x4d\x0c\x50\xf5\x11\xfd\x2c\xe2\x07\xa0\xa1\x63\x82\x2f\x8a\x9d\x84\xd0\x47\x10\xba\x37\xf7\x08\x8f\x84\xe5\xab\xf8\xa1\xb0\xcb\xf2\xdb\x3c\x46\x31\x07\x1d\x49\x5e\xe5\x7f\xb6\x8e\x6a\xe4\xbb\x10\xf9\xe3\x00\xa3\xc7\x51\x49\xff\x27\x11\xa7\x52\x73\xe0\xb0\x45\x4c\xcf\x6c\xd1\xd8\x28\x3f\xd7\x4f\xba\x81\x90\xec\x21\xbc\xf3\x81\xe4\x64\xaf\x0f\x29\xe5\xdf\x7c\xb2\x9d\x7c\xb5\x9d\xae\x84\xcc\x38\x22\xe8\xb1\xe1\x8c\x5e\xe7\xa8\xd2\x25\x3b\xf7\xa8\xba\x2e\xa6\xeb\xb4\x7a\x8a\x07\xde\xc2\x6b\x31\x0e\x13\x96\x7c\x7f\x46\x92\x47\xd6\xc4\xfa\x37\x49\x7e\x93\x5d\x2f\x3c\x51\xf4\x9b\x3c\xdb\x9d\x1b\x7c\xf1\xb3\xdd\x39\x55\x25\x19\xfc\xe2\xee\x80\xab\xbc\xcc\xab\xf5\xb3\x12\x21\x6c\x9a\x2f\x63\x6d\x6d\xef\x33\x6b\x36\x3b\x5e\x9f\xa4\x56\x65\xe6\x78\x3c\x5e\x93\xb4\x3c\x5b\x9b\x2b\xe9\xe0\x3b\xdb\xdb\x4a\x17\x13\x5e\x2c\x47\xfa\x62\xbd\xc9\xff\xe4\x05\xbf\xcc\x2f\xf2\x22\x57\x37\x23\xc6\x2e\xb9\x32\x82\x94\x25\x5c\x6e\xe3\x1c\xb2\x69\x9a\x38\xd5\xbc\xfd\x1b\x5e\x2e\xb9\xc4\x9b\xa9\x8b\x9a\x56\x3a\x69\x18\xcf\x46\x7a\xe8\x46\x24\x50\x2b\xf5\x0d\xbb\x1b\xdb\x27\x58\xde\xac\xa4\xb9\x39\xe0\x2e\x52\xf9\x34\xd7\x27\xeb\x1d\x67\x81\x4b\x39\x01\x75\x76\x39\x22\xdd\xec\x7a\xb3\x3e\x50\x4a\xe6\x17\x3b\xc5\xe3\x51\xb6\x99\x94\x42\x4d\xe0\x92\x52\xaa\x11\x1d\x29\xb9\xe3\x90\xef\x72\xa7\x14\xff\x72\x9d\x98\xcc\xaf\xd0\xcf\xf8\x97\x6b\x33\x83\x76\xd7\x41\x27\x96\x98\xb4\xb2\xf4\xba\x9b\xbe\x4d\x60\x25\x2f\x52\xcd\x3d\x1e\x1f\xfd\x39\x01\xbb\xfb\xe4\x68\x0e\x65\xb8\x43\xed\xcb\x27\x2b\xa4\xdf\xf0\xb4\xda\x49\x7e\x47\x6a\x93\xc2\x75\xe6\xc5\xdf\xce\x01\x47\x73\x93\xfe\xcc\xd5\x1a\x96\xd8\x1a\x01\xbf\x33\xcd\x38\x9e\xdf\x31\x14\x62\xa7\x74\xaa\xe4\xa8\x14\x25\xd6\xae\x29\xb3\x37\xc7\x67\x7e\x1b\x5c\xcb\xce\x83\xc6\xeb\xe0\x6a\x44\x0e\xd7\x83\x53\x05\x6e\x4c\x82\x2e\xe9\xaa\xc2\xa2\x20\x51\x93\xfc\x17\x38\xa1\x8c\xdb\x4d\x3c\xa6\x9e\x6a\x5a\xd4\x5e\x84\xed\x8a\xd3\x8b\x4a\x14\x80\xf2\x8c\x99\x92\xa3\xd1\x58\x88\xf1\x68\xfb\xf9\xf8\x08\x4e\xbd\xe4\x68\xbe\xfd\x7c\xec\x2d\xd1\xea\x8b\xcb\xba\x72\x93\xf3\x2d\x7c\xdb\x66\x59\x2e\x37\xe8\x1a\xb4\xbe\xd5\xe6\xa6\xae\xf3\x9e\x9d\xea\xed\xcf\xce\x56\x51\xe9\x05\x78\x25\x1d\xd1\xd1\x04\xd7\xac\x39\x9f\xc3\x3a\xc3\xcd\xdd\xda\x7d\x5e\xe9\x41\xf5\x23\x82\x62\x95\xff\x00\xbd\x32\x0d\x34\xf4\xea\x4f\xf4\x9f\x3a\x99\x07\x4d\x83\xa8\x6d\xba\x5c\xe6\xe5\xe5\x1b\xe0\x1c\x66\x84\x56\x75\x2d\xa3\x68\x53\xd7\xb1\x97\x14\x18\xb9\xf4\xa2\xe0\x80\xb7\x89\x86\xca\x1e\x47\xb1\x08\xbe\x62\xd7\x2b\x92\x70\xef\x43\x77\xf7\x2a\xe7\xd7\x4f\xa5\xd8\x30\xfc\xf9\x4e\x30\x4d\xf3\x65\xa5\x68\x3e\x95\x7c\x0b\xe0\xa7\x3f\x37\x69\xfc\xa0\x20\xad\xce\x8c\x36\x32\x12\xc8\x30\x26\xb1\x33\xc9\x3f\x23\x74\xb0\xd9\x5c\x4b\x1b\xae\x73\xbd\x02\x86\x87\xcd\xf4\x12\x48\x2b\xa5\x4f\x09\xbc\x6e\xb1\x26\x00\x57\xeb\x6c\x90\x1b\x40\xc6\xe7\x79\xc9\x51\x74\x5c\xd9\xa2\x4a\xd8\x0f\x0f\x53\xb3\xb2\xf3\xe9\x45\x2a\x5d\x39\x17\x36\x78\xe6\x93\xea\xea\x51\x91\x6f\xb7\xfa\x4a\x3e\x37\xeb\xef\xe5\x6e\x63\xb3\x9b\xcf\x67\x65\xc9\x65\x2b\x0c\x24\x7d\xb6\xde\xb4\xc8\x2f\xcb\x5f\xf2\xe5\x25\x57\x15\x16\x94\xa5\xd9\x9a\x2f\x75\x22\x9b\x0f\x43\x34\x33\xec\x5a\x84\x41\xaf\x71\xae\xbf\xb3\x85\x6d\xd2\xcf\xba\x6b\xad\xcf\xe7\xc6\x2e\xba\x09\x41\x1c\x3c\xd3\x70\xb8\x30\x3e\xfe\x95\xd9\x5f\xef\xed\x2f\x00\x2f\xfb\x35\xf8\x7a\xef\xf6\xd6\x3a\x5f\x29\xcc\x5f\xf1\xe2\xa9\x90\xe6\x85\xfb\x05\x2f\x77\xae\x6b\x2d\x31\x17\x2d\xa7\xa0\xf3\x97\x93\xc0\xba\x82\xdc\xc2\xfd\x1d\xe4\xda\xec\x95\xf5\xc6\x1e\x73\x2b\x3e\xa7\x4d\xf4\x2b\x08\x21\xf4\x45\x00\x00\xf0\xa2\x29\x23\x07\x5b\x1c\x5f\x24\x65\xae\x2e\x0f\x56\x80\x0d\x1c\xfb\x9f\x08\x67\x4a\x39\x6e\x9c\xca\xc4\xea\x9f\x06\xe8\x14\x64\x08\xba\xd8\x95\x14\xa5\xca\xb9\x64\xe6\x13\x16\xad\xd0\x6c\xa7\xe6\xe9\xa8\xbd\x1e\x19\x79\xf3\x78\x4c\x39\xf2\x67\x51\xc4\x65\xd0\xd4\xd7\x8d\xe4\xf5\xa5\x6a\x6e\x43\x04\x8c\xec\x4d\x7f\x03\x66\x87\x96\x4c\x46\x11\xba\x22\x4d\x3f\xc7\xdf\x78\x37\x81\x96\x8c\x01\x16\xcb\xbd\x67\x7e\xa9\x93\xaf\x9d\x82\x42\x4b\x7e\xf7\x5d\x69\x84\x26\xb9\xbb\xb4\xcd\x8c\x4c\x6d\x86\x36\xd9\xd7\xb8\x24\x49\x68\x8e\xe3\xc2\x7d\xb3\x1c\x17\x78\x96\x9e\x1b\xba\x1a\x45\xb1\x18\xb3\x9e\x88\x46\x5d\x7e\x21\xc6\x31\xf4\x2b\xe3\x79\x11\xe7\x53\x0f\xf4\xfb\x5e\x49\xea\x7a\x4e\xbe\x52\x89\x18\xab\x7d\x60\x46\xe1\xc9\xad\x45\x46\x25\xd3\x03\x3a\x50\x3d\xf3\x8e\xc9\x24\x44\x0f\x19\x77\xed\x7a\x9b\xdb\x0b\x46\x60\x66\x01\x0b\xe8\xd0\x4b\x05\xbb\x23\xce\xa2\xbe\xc6\xf7\x3e\x54\x5f\x65\x9b\x49\x35\xf9\xf0\x76\x7c\xef\x92\x8e\x46\x64\xdc\x4c\xa9\x5a\x73\x3f\x69\xfc\xdf\xeb\x0f\x15\xf9\x50\x7d\xa5\x13\x1e\x41\xae\x11\xa1\xaf\x54\xb0\x56\x3e\xe9\x56\xbd\x89\x39\xa1\xb0\x88\xe8\x81\x5b\xc6\x1f\xe8\x68\xfc\xbe\x0f\x16\xf3\xa6\x47\xc0\x6f\x4f\x90\x60\xa9\x99\xb0\xc1\x1b\x11\x2b\x12\x18\x4a\x94\x27\xb2\x61\xcd\x1b\x48\xa3\xb3\x12\x10\x19\x82\xe3\xe1\x4b\xe7\xf3\xd1\x68\x9c\x13\x32\x68\x33\x26\x25\x12\xe0\x11\x9a\x0e\x85\x02\x10\x73\x90\x0b\x2a\xcc\xa9\x86\x37\xe2\x56\x2a\x4b\x6e\xf5\x62\xd1\x2c\xc4\x88\xec\x95\x49\xef\x9e\xb2\x16\xa3\x51\x32\x02\x1e\x8a\xfe\x1e\x0c\xef\xef\x77\x8c\x91\xb9\x45\x43\xe1\x03\x6f\xc7\x01\xbc\x1d\x56\xb0\x49\xe5\x65\x5e\x82\x40\x4b\x41\xdd\x4d\xc9\x8f\x8d\x28\x7c\xc6\xdc\xba\x6b\x36\x99\x33\x4e\x83\x79\xf0\x16\x3d\x2d\x19\x3f\x56\xec\x59\x19\x97\xe4\x98\xdc\x96\x2c\xce\xe1\x7c\x2c\x97\x31\xc0\xd1\x11\xc0\x84\x45\xb1\xa7\xd4\x7b\x0b\x3e\xb3\xf5\x24\x9f\x2a\x31\xcd\xd6\x06\xbb\x5a\x97\xf1\xdc\x94\x61\x6e\x2b\x5e\x21\x03\x39\x61\xa5\x5f\xeb\xc4\x95\xa3\x0b\x8d\x4b\x10\x60\x43\x25\xa4\x95\x0c\x2b\xe9\xda\xc7\xbd\xec\x19\x47\x6a\x28\xe5\x40\xb9\x23\xe9\x49\x1e\x4b\x2a\x91\x74\xea\x6b\x62\x78\x36\x3d\x8e\x5d\x88\x17\xe9\x8e\xa9\x19\x95\x07\xb6\xb8\x64\x7a\xb4\x07\xf2\xb4\x55\x22\x08\xcf\xc3\x3a\x64\x53\x30\xe3\x21\x01\x78\xd6\xf4\xe1\x42\xc4\xdc\x6d\x95\x43\x4b\x96\x1c\x4f\xe6\x00\xda\xca\xed\x3a\xd4\xc1\x0b\x97\x91\xb9\x5f\xd6\x69\xfa\xd9\xa1\xa2\xce\x49\xa2\x4e\x27\x73\xc0\xb1\xf6\xca\x82\x1d\xd1\x2d\xcd\xb9\x30\xf7\x82\x10\x94\x4c\xd1\xb9\xdf\xa3\xe7\xfd\xb3\xa2\xfa\x56\x38\x2d\xd1\xd7\xb5\x14\xbb\x72\x89\xe7\x82\x59\xb6\xe3\x9d\x7f\x9c\x58\xda\x7d\xeb\x0b\xb5\x93\x03\xc2\x6e\xaa\x79\x33\x97\xa4\x21\x9b\x5e\x0a\xcc\x07\x4d\x48\x3a\x82\x6f\x6c\x99\x77\xb4\x75\x2b\xc2\x24\xba\x1e\x9b\x20\xac\x06\xe3\x2f\x52\xa9\x77\x69\xd2\x10\x3d\x10\xe8\x21\x85\x59\xc8\x64\x46\x97\x22\x33\x0d\x2d\x4d\x9b\xec\xe7\x78\xa9\x49\xf2\x58\x35\xcc\x20\x0d\xf9\xc4\x44\xb5\x18\x47\x8a\xe3\x8b\x91\xbe\x52\xff\xd3\xc0\xec\x3d\xdb\xb8\x17\x7a\xf8\xbe\xe2\x52\xf5\x5d\xed\xbc\x3b\xd4\x26\x2f\x27\xcd\x0d\x49\x5f\xea\xfc\x25\x75\xe5\xb8\xd2\x91\x7b\xce\x5f\x0b\x99\xff\xf9\x85\x52\xed\x2d\x6c\x3e\x9b\xfd\xf3\xf8\x48\xd7\xe1\x42\xba\x95\xac\xbd\x4a\x06\x3c\x2e\x09\x05\xf7\x85\xdf\xe6\x71\xd9\xff\x26\x50\xb6\xde\x3f\x54\x5c\x36\xaf\x03\x14\x94\x28\xf3\x2c\x2d\x46\x56\x2a\x96\xf7\x17\x93\xfb\x13\xaa\x4b\xc9\xfd\xd7\x91\x11\xf4\x53\x94\xca\x16\x84\x23\xbc\xe6\xd9\x27\xbe\xfc\x8d\x4b\x81\x6c\xf4\x70\xde\x5c\xa7\x9a\xe1\xb1\xd4\x3c\x2f\x0d\x6b\xed\xa6\xa3\x89\xc1\xfc\xa3\xf9\x7f\xe0\x84\xf1\x4c\x6f\x7c\x94\xb4\x9f\x42\x1e\xa2\xb9\x24\x04\x67\x5b\x13\x3c\x85\x17\xcd\x98\x74\x18\x3a\x88\x4c\x97\xcb\x47\x9a\xc3\x88\xa2\xe7\xbe\x30\xdf\x3e\xc0\xdc\x99\x87\xf4\x97\x69\x54\x41\x5c\x80\x66\xb2\x8b\xb3\x66\x57\xb8\x08\xa3\x19\x12\xc8\x66\xbb\x0c\x50\xf0\x38\xa1\xfa\x6a\xc4\xdb\x2d\x3e\x1d\x05\xfa\x04\x81\x8c\xd4\xb0\xce\x46\xfd\xe2\xa0\x66\x03\x6f\x69\x36\x98\x97\xbb\x3d\xa1\xf8\x1c\xaa\xfe\x9a\x0c\x6b\xef\xa3\x72\xc3\x76\xf4\x57\x0f\x63\x72\x81\xcf\x70\x24\xd9\xd8\xb7\x2f\x74\x23\x75\xe7\x1c\x3d\xfd\xfb\x73\xd4\xb2\xf6\x21\xb7\x88\x68\xaa\xc9\xb6\xd5\x08\x6a\x0a\xb0\xd7\x4f\xb0\xa5\xf7\x02\x71\xc9\x0e\xbe\x33\x2a\xbd\x8d\xef\xde\xe3\xfc\xe4\x5f\x51\x24\x87\x3d\x65\xd4\x75\x39\xec\x2b\xe5\x38\x1f\x8f\x49\x6f\x0e\x7d\xca\xf5\x5d\x4d\xa2\xe8\x37\xcd\x96\xea\xda\xa1\xd9\xf4\xaf\x37\xb9\x63\xe6\xd3\xea\x31\x20\x6d\x7b\xc3\x86\xb7\x76\x00\xb4\x0d\x98\xb0\x40\xd6\x11\xcb\xe6\x9e\x5e\x4e\x25\xb0\x5d\xc0\x99\xd1\xde\x4c\x0f\x85\x52\x62\x63\x72\x99\xcd\x5f\x4e\x2f\x20\xd4\xe5\xf3\xa5\x44\x26\xfb\x85\x90\x4b\x2e\x4d\x6e\x9b\x41\xa7\x3f\xaa\x44\x91\x2f\x11\xdf\x1b\x9f\x54\x46\xd4\xb4\x23\x8a\x6c\xc2\x45\x2c\xbb\xb2\xde\x80\x63\x1d\x5d\x14\x22\xfb\x04\x8d\xee\x4d\xb7\x0e\x9b\xea\x7a\xd8\x9b\xf8\xda\x1f\x0d\x64\x91\x93\x2f\x36\x40\x37\x1b\x0b\xf7\xa7\x3e\x13\x57\x5c\xe2\xa9\xf9\x92\x7f\x56\xef\xc4\x5b\x5b\x8a\x9f\xca\x3f\x5b\x63\xd9\x92\x32\x1f\xe8\x67\x4f\xa2\x03\x9d\xec\x49\x89\x3d\xb4\x7c\x0d\xcc\xbe\xeb\xe7\x5d\xb5\x8f\x5a\x46\x64\x0d\xc4\x93\xb4\x2a\x11\x72\xaa\xc4\x76\xe1\xee\xde\x9a\x09\x55\x62\x4b\x12\xde\xf3\x7e\x3f\x30\x3c\xd4\xaa\x10\x9a\x0d\x9f\x14\xca\xed\xe4\xdc\x2f\xd1\xac\x02\xfb\x23\x29\xc7\xbc\x9f\x39\x12\xec\x45\x0e\x68\xb0\x34\xc5\x5f\xb9\x55\x98\x92\x53\x5e\x56\x3b\xe9\xf0\x97\xec\xb7\x77\x3f\x28\x9a\x40\xc3\xcd\x0f\xaa\x13\xb1\x88\x05\xab\x6c\x71\xaf\xf3\xf8\x89\xfe\x5b\x11\x72\xa0\x09\x84\x24\xd8\xf7\xbc\x8c\x41\xd7\x30\xad\x94\x66\x9e\x63\x42\x4e\x59\x0a\xae\x14\x83\x92\x0a\x42\x26\x07\x4a\xa2\x29\x2b\x2c\x2e\xc2\xad\x6e\x66\x22\xa8\x12\x89\x1b\xda\x94\x8a\xf1\xdc\x37\x25\xfb\xe3\x10\xfb\xaa\xb9\x3d\x7c\x31\xf6\x05\x67\x75\xdd\x30\xb6\x70\xc3\x80\x8b\xe9\x81\x75\xe9\xa1\x10\xb2\x6f\x63\x45\x26\xbd\x4a\x17\x63\xe4\x83\x3d\x3e\x23\x3f\xc0\x3d\x0b\x56\xe2\xfa\x44\x11\x89\x0c\x44\x23\xab\x78\x28\x41\xfa\x91\x2f\x97\xbc\xd4\xe7\x58\x4f\x8b\xa2\x08\xd2\x5c\x9a\x8f\xd8\xfb\x32\xcb\x16\x14\x90\x04\x31\x6e\xdd\x20\x1e\xfa\x9f\x5e\x14\x00\xe7\xd7\xc8\x69\x10\x49\xb1\x6a\x90\x14\xc7\xa4\x3a\x2b\xce\x83\x72\xf6\x07\x5a\x11\xab\x96\x98\x19\x92\x97\xe3\xdc\x5c\xae\x9b\xf9\xf9\xc5\x1a\xd8\x85\x47\x83\xb9\xbc\x74\x15\xbe\x50\x58\xf3\x0f\x4f\xa8\x67\x44\xbf\x63\x05\xb4\x19\x21\x59\x1a\x65\xc4\xc0\x4f\x7d\x19\x08\x4e\x1d\x54\xb3\x7d\x78\xe9\x97\x45\x34\xdc\xae\x24\xdd\x47\x11\xbc\x7d\x1d\x75\x5f\xc8\x78\xa1\x46\x84\x00\x04\x74\xb3\x90\x82\xe9\x4e\x59\xee\x7f\x4f\x84\x33\x0c\xf4\x24\x17\x01\x71\x02\x82\xda\x95\x07\xbb\xd5\x2f\x68\x90\xd5\x2f\x3c\x25\xe3\x79\x93\xd9\x9e\x6d\x9d\xb2\xc6\x29\x2d\x5b\xd2\xe5\x6e\xa2\x85\x1d\xd1\x64\x32\xa7\x07\x1b\x1b\x56\x86\x0b\xfb\x77\x7d\xce\x0f\x67\x7b\xe7\x15\x37\x34\xf9\x74\x56\x4b\x68\x0a\x18\xfb\x17\xd9\xa7\x42\x6e\x52\x5d\x49\xac\x77\x14\x0c\x69\x23\x7c\xf7\x2f\xac\xdf\x06\x70\xe4\x6e\x43\x5e\x72\xf5\x50\x5f\x4b\xf3\xf2\xf2\x11\x50\x94\x37\x3c\x53\x31\xb1\x8a\x8d\x95\x71\xc2\x70\x38\x51\x53\xc3\xfb\x90\xcc\x37\x8b\x0d\x59\xfe\x9c\x5f\x6f\x85\x54\x16\xe3\xcb\xf8\x24\x62\x3f\xc7\x25\x0a\x81\xa9\xf5\x1a\xc3\x97\xb9\x12\xf2\x59\xf5\x1d\x6c\x69\x36\x2c\x1d\xcd\xf3\x97\x09\x24\x35\x11\x8e\xbb\xe8\xa5\xf4\x7e\x4a\x3b\xc3\x7d\x17\x59\x65\x1c\xc0\x3c\xc6\x66\x63\xd2\xb5\x72\xce\x54\x40\x17\xc0\xa2\x3b\x2e\xf3\x4d\xc5\x14\x77\x91\x80\xca\x5d\xb1\xb3\xf3\x7d\xdb\x36\xb5\xcb\x7a\xa1\xe8\x06\x88\x6c\xd8\x57\xe7\x96\x1c\xe4\x91\xc6\x8b\xb2\xc2\x8a\xa3\x48\xd9\x31\x83\x83\xe8\x94\x49\xf7\x38\xe4\xc7\x29\x71\x62\x62\xde\x09\xa7\x8b\x2f\xbb\xef\x32\x75\xdd\x13\x78\xea\xb2\x12\x7d\x0e\x06\x4f\x45\x26\x2a\x8a\x66\x8c\x01\x36\x57\x43\x85\x7e\x01\x63\x87\x18\x9b\xad\xbc\xb1\x71\x0e\x58\x0c\x31\x2a\x61\x41\xe9\xb3\xd7\xee\xcd\xb0\x53\x93\x86\xdc\xd9\xf5\xf2\x02\xe4\x80\xb4\xb4\x92\xad\x94\xb9\x43\x33\xa7\x7e\xb7\xc7\x87\xf2\x6a\xa6\xd6\x8e\xd4\x89\x88\x22\x31\xf1\xbe\xef\xcf\xf0\xa0\xb5\xed\x31\xf5\xd0\x26\x89\x66\xbc\xcd\xa0\x9c\xa6\x7a\x54\xf0\xf7\x24\xc5\xbc\x41\x7b\xdc\xe8\x11\xfa\x19\xca\xfd\xc9\xbe\x03\x08\xdd\xf2\x87\xf6\x2b\x35\x23\x53\x30\x31\xf4\xe6\xb1\xae\xd3\xa1\x9b\x01\x3d\x41\xe1\x83\xdb\xb0\xd1\xf7\xc3\x00\x3f\x09\x2c\x57\x2f\x05\x7c\x1f\xc7\x6d\xc4\xed\xf6\xde\x9c\x31\x56\x42\x85\x0e\x16\x42\x9d\x9a\x10\x68\xc2\x89\xf9\xd0\xcd\x5b\xc4\xf8\x9b\xfd\x66\xa1\x0b\x69\x13\xc9\x14\x49\xe2\xe6\xf3\x54\x2d\xc2\xc4\x4d\x14\xb1\x32\x3b\x0c\x22\x49\x13\x75\xa2\xf4\x92\xc5\x7c\xa6\x59\x28\x91\x2b\xf1\xb6\x48\xc2\x1a\xa9\x6d\xe8\x89\x5c\x84\xb9\x4c\x0d\x50\xb7\x4d\x44\x25\xb1\x75\xbd\x13\xa7\xf2\x40\x4d\x33\x0a\x75\x49\x42\x08\x19\xd8\xd4\x4c\x82\xa6\x16\x3a\xd2\xf6\x5f\x45\x91\x37\x33\xe7\xaf\xbf\x64\x9a\x4b\x19\xbc\xf5\x5b\x35\x18\x50\x21\x6b\xf2\x03\xf9\x37\x6e\xfb\x60\x4f\xc1\x8e\x2f\x60\x8f\xed\xa2\xa8\xd9\xfb\x87\xf6\xe2\xff\xfc\xfe\x0e\x79\x88\x8c\xbd\x14\xb1\x7b\x3b\xda\x9d\xfe\x0b\xd4\xe4\x42\x1d\x1e\xc7\xda\x1b\x8d\x89\x2f\x2c\x2d\x9a\xb3\x5e\xe6\x45\xf3\x73\xb6\x64\x00\xdc\x6e\xf8\x80\x46\xe1\xbf\x88\x3d\xe0\xdd\x92\x7f\x56\x6f\xf3\x8b\x22\x2f\x2f\x9d\x1f\xc8\x28\xba\xd2\xec\xa7\xa7\x9e\xa9\x2f\x84\xbf\xac\x39\x2f\x8c\x53\x07\xa6\x16\xed\xc7\x0a\x6c\x79\xa2\x0e\x69\xe4\x29\x40\xe9\xb7\x06\x21\x66\x5d\xd0\xcc\xdb\x02\x74\xc9\x66\xc7\xcb\x13\xe7\x68\x67\x69\xbd\x1a\xac\xd9\xee\x6c\x09\x88\x71\x6b\xcb\x8b\x1e\x5b\x7c\xd7\x35\x18\x9a\x47\x11\xfe\xf5\x2a\x67\x4c\x20\xb3\x7c\x9c\x0e\x19\xc6\x1e\x93\x94\x15\x71\x8a\xe4\x61\xc5\x72\x7b\xb3\x51\x51\xa4\x4e\x58\xa6\x0b\x69\xc6\x72\xb0\x36\x6e\x62\xab\x28\x8a\x2f\x44\xec\x3e\xe9\x08\xd9\xad\x11\x01\xd1\x77\xbc\x62\xc3\x39\xa1\x92\xc7\x9c\xae\x69\xa6\x17\x37\x5d\x45\x51\xfc\x46\x67\x69\x8a\x23\xd4\xff\x0a\xd8\xbe\x43\x16\xe9\x3e\xc7\x99\xe9\x2d\x43\x53\xd3\x11\x7f\xd6\xf6\x0e\x47\x7a\xcb\x76\x4d\x23\x06\x22\x94\x72\x6d\x69\x4a\xf6\xd9\x98\xad\xe1\x94\xd8\xe3\xc0\xd8\x01\xd9\xeb\x4d\xd9\x5d\xd1\xe6\xb8\x21\xf4\x0b\x6b\x76\xa4\x37\x6e\xb0\x87\xa4\x99\xdd\x28\xd2\x4b\x7f\xa8\xc7\x36\x33\x1c\x86\x15\xa7\x66\x4e\x81\xfd\x8d\x88\xa5\xa7\x03\x8c\xdf\xbe\x02\x12\x71\xb7\xe7\x2a\xbc\x62\x87\xb2\x91\x46\x0e\x3a\xa3\x05\xb6\x37\xd4\xa9\x68\x51\x78\xda\x22\xf0\x2d\xfa\x8e\x6f\xe4\xff\x9a\xcd\xe0\x90\x3a\xa0\x7b\x31\x9c\x35\x3c\xc9\x8f\x6d\x00\x49\xe5\x0e\x4b\x5a\xb2\xe1\xec\x38\x2e\x0f\x8b\xa3\x54\x9b\x3b\x1a\x22\x7b\x54\xd7\x71\x78\xa7\x07\xeb\x9c\x5b\x25\xb6\xcd\x05\xf7\xf0\xab\xc7\x64\x05\x2c\x16\xde\xfd\xf7\xa4\x39\xd3\xd9\xcf\x9e\x3a\xb3\x21\xb1\x84\x0e\xe3\x36\x1f\xd4\x50\x81\x43\xfc\x50\x98\x42\x13\x3f\x12\x45\xc8\x9e\x1d\xa3\x8b\xc7\xdf\x34\xed\x45\x5e\xe5\xb9\xfe\xc9\xa1\x4d\x0f\xc1\x06\x87\xfe\x8a\xb0\x83\xfa\x26\x75\x59\xa6\x45\xcc\xe9\x08\x87\x7a\x14\xca\x2e\xdd\xc1\xe4\x55\xd8\xd6\xd1\xf1\x89\x96\x39\x5b\x0e\xa4\xd6\xc7\x6f\xec\xd7\x69\x27\xca\x3a\x15\xe5\x3d\x55\xd3\x4e\x57\xe9\xe1\xb6\xf4\x8c\xdc\x81\xd4\xef\x44\x77\x0c\x9b\x45\xf5\x7d\x1b\x7a\xef\xbd\xb3\x0c\xf8\x01\x8f\x52\x18\x5f\xfa\x23\x7c\x98\x67\x99\xd6\x30\x97\x38\xcc\x25\x81\x37\xcc\x32\xaf\xd6\x01\xc0\xda\xaf\x58\xc5\x81\xa7\xe2\xe6\x71\x61\xea\xde\x9a\xf0\x66\xd5\x64\xe8\x91\x34\x2a\xb0\xa0\x38\x98\xa3\x77\x3b\xfb\xe9\x7b\x04\xaf\xe6\x41\x2b\x7c\xaf\xfe\xad\x0d\x9a\xea\x0b\x5c\x2c\xbd\x72\x7a\xe5\x14\xb5\x03\x94\xcf\x95\x35\x5e\x9e\x73\x5a\x99\x3d\x7b\x56\x22\x40\x69\xe5\x64\x1f\x68\x4d\x90\x9e\xfc\xc7\x3a\x89\x35\x08\x27\xae\xe8\x71\x10\x60\xa4\xdb\x39\x2b\x26\x92\x4a\xe3\x7b\xc1\xb8\x92\x36\x09\x0f\x5c\xfc\x06\x39\xdb\x19\x01\xdb\x64\xa7\x87\x71\x8f\x3c\x04\x12\x0c\x33\x54\x13\xf0\x01\x9e\x9f\xdc\x07\x87\xa4\x2f\xc1\xc5\x3e\x8d\xb3\xd3\xe9\x6c\x36\xaf\xeb\xec\x64\xa2\x7f\xe8\x6b\xc3\xdb\x3c\xc6\x8c\x7a\xaf\x71\x6e\x3e\x8c\x2b\x67\x45\x9c\xe4\x05\x8f\x5e\x0c\xf5\xcf\x5f\xc8\xa2\x03\xcf\x96\xe7\xe0\x04\xd8\x8e\x3b\xe7\x46\x8a\xc2\x3b\xda\x36\x8a\xcd\x8e\xd5\x09\x6f\x6b\xdb\x8c\xc7\x8a\xb8\xc0\x33\x65\x95\x6a\x58\x10\xd6\x3a\xc4\x83\xd1\xdc\xfb\x40\x39\x07\x67\x1d\x50\x7b\x6f\xf7\x81\xc4\x0b\x6f\xa2\x20\x08\x13\xac\x4f\xda\x06\xe2\x2f\x71\x2c\x98\xf0\x8f\x56\x3a\x1e\xa7\x44\x9e\x75\x34\x4e\x00\xc6\x57\x98\xb6\x81\xbc\x4d\x78\x55\x8c\x73\x5a\x1e\xcc\xe3\xdd\x89\xed\x83\x34\x48\xb1\x5e\x8b\x2a\xf9\x16\x8c\xcc\x21\xf9\x3b\xa1\x52\xf7\xb8\xdc\x27\xb7\xc3\x30\x78\x1b\x96\xc1\xb3\x6d\x49\xfd\x33\xac\xff\x59\xd9\x9b\x46\xc9\x1b\xdc\xae\xf0\x0d\xc6\x7a\xc9\x77\xf3\x97\xdb\x6d\xa2\x87\xd0\xc4\x9d\xe5\xe7\x83\x91\xe2\x9f\xd5\x88\x31\xb1\x10\xdc\xb8\x27\x32\x0c\x92\x0e\xab\x9a\x0a\x92\x11\x28\x1e\x41\x70\xca\x63\x9d\x10\x67\x7e\x04\x2e\xca\x0c\x64\x7d\xa9\x0f\x03\x53\x3c\x1a\x98\xba\xc6\x96\x3c\x90\xb3\x94\xc0\xe5\xa1\x1e\x0a\x3c\x54\x42\xc0\x5f\x53\xd7\x06\xab\x25\x74\xa9\xee\x16\x9b\x3e\x3e\x5a\x41\x56\xeb\x09\x19\x35\xac\xc1\x64\xd4\x05\xc0\x6a\xf5\x59\x39\x1b\xe5\x1e\x6b\x4d\x9a\x40\xf1\xf5\x3e\xb1\x79\x9b\xae\xe5\xbc\x57\xa0\xd1\x51\x1e\x75\x1a\x68\xe0\x2a\x39\x2f\x39\x33\x64\x6e\x11\x1f\xce\x64\xfc\x2d\x38\x15\x73\xe9\xd4\xbe\xe5\xf4\x62\x97\x17\x8a\x24\x69\xde\x02\xa7\x13\x3c\x74\xd0\x01\x03\xe3\x14\xc7\x68\xc9\x4c\x8b\x07\x18\xa5\x9b\x81\x8c\x78\x8c\x3f\x18\xd8\x42\x6a\x8e\xe3\xce\x21\x85\x54\x26\x91\x4d\x8c\x59\x69\x39\xbd\xb8\x84\xf7\x46\x7d\xf1\x36\x3f\xeb\x1a\x15\x80\x5c\xb8\xfb\x58\xc4\x2e\x11\x73\x39\xa9\x97\x80\x79\x39\x29\x2c\x3f\x92\xa0\xd8\x38\xec\x1a\x93\xde\x28\xa4\xb0\xe2\x7a\x7d\x21\x9b\x2a\x16\xee\xd7\x78\x74\x34\x1a\x1b\xf9\x61\xd3\xde\xd1\x88\x24\x61\x18\x08\xa7\x74\xc5\x2d\x0c\x01\x9d\xe6\x22\xcd\x3e\x5d\x82\x2a\x0b\x2c\xd0\xe6\x93\xa8\x85\xff\xe9\x35\x57\x25\x71\x10\x73\xe0\xfa\x15\x14\x16\x14\x8d\xfa\xa2\x8d\xc3\x8c\x86\xd9\x00\x2e\xc2\x4f\xd9\x7a\x39\x0f\xb7\x9a\x22\x56\x45\x0a\x6a\x44\x03\x2c\x5d\x15\x74\x5e\x93\x21\x1c\x30\x28\x37\xd0\x4f\x0c\x13\x24\xb8\x37\x86\xed\x9d\xed\x65\x19\x19\x97\x8a\xca\xa4\xb1\x33\xe1\x7e\x07\x73\xe1\x42\x83\xd9\x70\xa1\x03\xde\x5e\x01\x4a\x27\xf4\xec\xd5\x79\x80\x6d\xa8\x9a\xb7\x0e\x5c\xea\xe1\x35\xd7\xc4\xea\xc5\x7c\xd9\x68\xf4\x37\x9f\x0f\xdd\x70\xde\x5d\xc0\x43\x6f\xba\xba\x61\xae\x50\xe8\x0b\xc6\xe2\xe3\xbc\x7d\x61\x80\x17\xe7\x9e\x8c\x5f\xb4\xb3\x69\xe6\xfb\x68\x34\xee\x56\x40\x47\x68\x4c\x08\xe3\xdb\xf7\x72\x5a\x4e\xdd\x89\x36\x29\xa7\xed\xf3\x8c\x04\xe6\x12\xa3\x71\x37\x05\xbe\xd7\xa0\xc3\x09\x4f\x4b\xa3\xd3\x13\x4b\x35\xf6\x0e\x7b\xb5\x69\xe9\x8b\x54\x7e\xe2\x12\xb6\x5a\xaf\x9c\xa4\xae\x05\xb9\xb5\x83\x84\x1a\xc2\x6e\xba\xbe\x38\x40\xe6\x44\x1d\xfd\xaf\x18\x89\x11\xc1\x36\x86\x0a\x22\x15\x57\x3f\x95\x7c\x99\x2b\x70\xe4\x92\x76\x06\x23\xf5\x28\x66\x7b\x7e\xa2\x28\x4e\x43\x9c\x92\xbe\x59\x24\xb4\xff\xf5\x0b\x80\x64\xc4\x61\x85\x3f\xb8\x36\x35\xe9\x59\xda\xff\x80\xe5\x8b\x2e\x24\xf9\x7b\x2f\x58\xcd\xb0\xda\x31\xd3\x6c\xce\xe1\x26\xb5\x16\x54\x47\xcb\xd6\x7b\x69\x82\x01\x27\x84\x0a\xc7\xab\x56\x6c\x76\x5c\x9d\x74\xb8\xb5\x86\x67\xad\x2c\xbf\xdf\xe5\xe8\xaa\x73\xba\x63\xa2\x6d\x64\x58\x10\x3d\x80\xc5\xf9\x60\x17\x45\x07\x46\xe7\x6c\x77\xde\xb7\xae\xee\xe8\x7c\xd1\xee\x65\xe9\xeb\x0c\x98\xe8\x11\x09\x38\xf4\xc6\xfb\x93\x6a\xde\x5b\x11\x97\xc1\x7e\x19\xd2\xdf\x3c\x29\x1b\x7a\xd4\x50\xf1\xe3\xf2\xb8\x64\x79\xf3\x6c\xe9\x8b\x0b\xdb\x33\xe2\x98\xb9\xb2\x59\x7f\x51\xd4\x43\xe2\x4a\xb2\xcf\x6c\xe3\x3c\xc7\x9d\xbc\xed\x85\xc8\xb2\x18\x0e\x66\x03\xb8\x03\xc3\x5f\xe4\xc0\x24\xe4\xf6\x54\x85\x8e\x59\x06\xc0\x85\x82\xbf\x52\x4b\xe8\xdd\x61\x6f\x13\xb9\xdf\x04\x19\x02\xea\x51\x7a\x9a\x59\x76\x94\xaa\x16\xaf\xe6\xda\xae\x4f\x83\x25\x7c\xe0\x15\x4b\xe7\x1c\xce\x08\x40\x50\x57\x8a\x84\x1a\xe9\x2a\xb8\x5b\xe9\x3b\xa7\xc9\x0a\xb7\xab\xf2\x1c\x73\xcf\x7d\xcf\x97\xdc\x47\x98\x86\x93\xa7\x7d\xd5\x12\x9a\x84\x81\x63\xba\x19\xdc\x5d\x4d\xfc\x71\x7a\xe2\x2d\xe1\xd4\x5d\x59\xcf\x52\xbd\x64\x9b\x75\x58\x40\xcf\xba\x2f\xcc\x66\x26\xc9\xa0\x30\xfe\xd0\x01\x66\x01\xe0\x86\xaa\xba\xde\x75\xd5\xd5\xf2\xcb\x52\x48\x3e\xc1\x87\xba\xc6\xe8\x72\xcd\xe3\x82\xee\xda\x58\x04\x7d\x34\x6e\x47\x68\x1e\x45\xc5\x34\xbd\x10\x57\x7c\xd1\x92\x5d\xee\x9c\xfc\xaf\xae\x25\x12\xbe\x44\x04\x5b\x6b\x47\xe8\x6f\x60\x27\x2d\xf9\x52\xa6\xd7\xc1\x73\xff\x3a\x3c\xbe\x35\x33\xf1\x1d\xaa\xff\x90\xdb\x58\x36\x9b\xa1\xae\xfd\x2f\x76\x76\x4e\x88\x75\xbf\xec\x5e\xda\xfc\xbb\xd5\x40\x05\x8a\x06\x8e\xd6\x5b\x51\x87\xa7\x73\x54\xd7\x71\x3e\x61\xdd\x23\x80\xaa\x50\xad\xeb\x39\x96\x74\xe0\x44\x54\xc1\x5b\x37\xea\x35\xec\x83\x7a\x60\x85\x07\x77\x8d\x6f\x9a\x2a\xcc\x1d\x88\x8d\xdc\x1d\x88\x7a\x63\x81\xf2\xb0\xb6\x75\x40\xcf\xb1\x65\x29\xcd\xd3\x06\x56\x9d\x3d\x11\xf1\x2d\x4a\xed\x92\x3e\x56\xd9\x53\x8a\x3e\xe5\xfe\x45\x74\x3c\x07\xbd\x3b\x5f\x6f\xd9\x25\x30\x32\x9f\x39\xbc\xe9\x86\x7a\xca\xa0\x61\x61\x94\x91\x3d\x6d\xd7\xb6\x72\x56\x3b\x1e\x85\x2a\x4c\x2d\x50\xe5\x25\x19\xcd\x46\x66\x62\xf9\xb4\x51\xf8\x9e\xc4\x6a\x51\x26\xd6\x37\x01\x64\xf7\x94\x29\x02\x79\x95\xa7\x5d\x15\x76\x62\xd2\xea\x44\x6e\xa4\x56\x0d\x38\x75\x5f\xb3\xfd\x16\x1f\xaa\x52\xb7\x19\x99\xf4\x8e\x1a\x70\x6f\xf7\xfd\x04\x12\x65\xe6\x5e\xf7\xbb\x69\x60\x2d\x6b\x9e\x1f\xce\x9d\xe6\x09\x4d\x98\x31\x42\xcd\x0e\x97\x60\x12\x4b\x6f\xb0\xb0\xa0\x4e\xd3\x71\xbd\x06\xcb\x60\x12\x2e\x03\xd1\x1e\x9e\xde\x7e\x05\xcd\x3d\x50\x8b\x1e\x1f\xf3\xf8\xd6\xab\x49\x0d\x2e\x9e\xbd\xa9\x39\x9d\x45\x51\x3c\x03\x1f\xa2\x90\xfe\x4f\x9b\xf0\xbb\x34\xfb\x14\x1f\x54\xc7\x9e\x11\x7a\x0b\xc3\x99\x40\xff\xa9\x51\x88\x83\x95\xb3\xdf\xd3\x8a\xab\xb7\x4e\xf7\x2a\xd8\x12\x7e\xef\x5c\x8a\x21\xe3\x2d\xbd\xee\x06\x70\xc6\xea\x40\x2c\xf3\x4a\x93\xa5\xef\x74\xbc\x69\x2b\x82\x70\xba\x56\x3d\x4c\xa5\x57\x46\x37\x17\xf1\xda\xf5\x4e\x6c\xbb\xcd\xc2\x35\x69\xe3\xbd\x46\x85\x11\xed\x26\xfd\xcc\xa5\xfa\x42\x8b\x74\x01\x9d\x3c\x64\x4f\x83\xd1\xf6\xdd\xa6\x21\xe2\xe6\x55\x14\x0d\xd7\x8b\xd1\xfc\x3e\x2c\x57\x50\x61\x1f\x74\x96\xc7\xba\x5f\xf5\xdd\x2c\xba\xee\x0a\xdf\x8a\xbc\x54\x1c\xb1\xf3\xaa\x4e\xb6\x30\xd6\xd8\x5e\x75\x86\x92\x19\x24\xbc\x76\x97\x4c\xf8\x9e\x76\x07\x22\x09\xc1\x69\x78\x7f\x7d\x80\xdd\x80\xfa\xe0\xf1\x9c\x7f\xdd\xe8\x7b\x1f\xc9\xb8\x79\x04\x3e\x24\x39\x76\x0f\x89\xbc\xe0\x88\x09\x24\x36\xaf\x75\x05\x31\x02\x64\x81\x3a\x96\x11\x2d\xcf\xc9\x90\xf1\xc5\x81\x66\xd8\xa7\x5c\xdb\x0c\x80\xf4\xd8\x53\xd0\xfa\xef\x4e\x93\x37\xc4\x8d\xf0\x61\xd0\xba\xd5\xba\x34\x9a\x13\xe8\xc4\x5c\xc1\x7a\xd8\x53\xef\x50\x21\xf4\xcf\x2f\x9c\x30\xce\xaf\x99\xd9\x7d\x33\x8a\x5b\xf2\x8e\x1d\x48\x6e\x0f\x6d\x02\x1d\xd3\xe9\xdf\x7e\xef\x37\x82\xd0\xb6\x05\x02\xbb\xc5\x83\x29\x79\x0a\x97\xc5\xe4\xcf\x3d\x7d\xef\x79\x1b\xc1\xe7\xa5\x96\x13\xa5\x52\x18\xc4\x40\x4f\xb5\x09\xf9\x0c\x0f\x9e\x3a\x28\x06\x9f\x6c\xfa\x9c\xb1\x21\x9e\xbb\x5f\x90\x61\xfa\xf8\x78\x4c\xbe\xcf\xad\x9f\x2f\xe7\x6d\x15\x13\x9d\xf1\x73\x82\x20\x37\x2b\xce\x5e\x4d\x5f\x8b\x8a\x75\x90\x93\xba\x48\xa1\x2b\x1e\x40\x85\xae\xb8\x87\x15\x0a\x82\x48\x6e\x89\x25\x53\x7b\xba\xd5\x25\x67\x9b\x6d\xb7\x70\x27\xbe\xd5\x99\x26\xc8\x39\xd7\x35\x9f\x66\xeb\x89\x9a\x66\x6b\x0f\x98\x70\xe3\x8b\x7b\x75\x7d\xc8\x65\xeb\xa4\xbe\xef\x6f\x1e\x94\xbb\xc5\xcf\x93\xd9\x42\x25\x1e\xcf\x7e\x79\x28\x15\x4f\xbc\x77\x85\x0b\xee\x59\x5d\x5b\xb3\x8e\x00\x30\x2b\x84\xf3\x7c\x00\xaa\x5a\x20\x80\xb8\xc1\xcb\x54\xd3\xfa\x8f\xbc\xeb\x1f\x06\x95\xd3\xbc\x87\x36\x6b\x88\x8e\x1e\xf3\xc5\xb4\xe2\x85\x95\x47\xd8\x56\x04\xf8\x9d\x75\x3d\x82\xef\x11\x63\x39\xad\x74\x86\x6d\x91\x83\x52\x62\xa5\xef\x2f\x05\xb6\x21\x5f\xc5\x69\x14\x95\x53\xe9\xcb\xef\x4f\xe7\x24\x5f\xc5\x37\x3c\x8a\x6e\x8c\xc0\xeb\x77\x91\x97\xf1\xe8\x43\x39\x22\x8c\x19\x3c\xc6\x30\xcb\x3f\x6f\x02\x23\x4f\xc6\x66\xe4\xb6\x60\x67\x8d\x9b\xc3\x1d\x9b\x1d\xef\x4e\xc2\x54\xc7\xbb\xf1\x98\x14\xb8\xa2\x83\xf6\x99\x64\x67\xbb\x73\x7d\x4f\x85\xb3\xde\x39\xc8\x61\xad\x9a\xa3\x28\x2e\xd8\x8d\x88\x2b\x1a\xc8\x5e\x71\xf6\xce\xf8\xf9\x9e\x10\xbc\xb6\xee\xda\x39\x27\xf3\xe3\xdd\xa9\x6e\xd6\x64\x82\xa3\x9e\xb9\x14\xfa\xda\xbd\x64\x60\x10\xbf\x89\x09\x5d\xb3\x6c\xaa\x44\x4c\x06\xd9\x94\x6f\xb6\xea\x26\x06\x35\xbb\x28\x92\xa7\xb3\xc5\x92\xad\x78\xbc\xc4\xf5\xb6\xd4\x4b\x53\x82\xe6\x3c\x4c\x88\x83\x63\x8d\xa2\x61\xba\x58\xeb\x94\xa8\xda\x41\xdd\x83\xfc\x93\x3c\x16\x46\xdf\x23\xb0\x44\xa5\xeb\x69\xb6\x1e\x5f\x89\xb8\x22\x16\x5e\x92\x24\x66\x4a\x40\x1d\x20\xaf\x0e\xcd\x4f\x14\xc5\x4b\xb6\xf6\x9a\x35\x23\xc4\x2a\xb2\x18\x83\x7d\xa3\xa3\xf0\x4c\x2f\x51\xba\x65\xa8\xab\xbe\xa4\x4a\x24\x6b\xaa\x0b\x4c\x8a\x45\x71\xb6\xfb\x67\x61\xaa\x3e\x4f\x2a\x2a\x64\x7e\x99\x97\x49\x5e\xd7\x71\xba\x30\x4b\xcb\x75\xd4\x03\x8a\x5d\x8c\xb2\x9d\x1a\x25\xa3\x31\xac\xff\x11\xd9\x0f\x9e\x4b\xa3\x99\xb5\x85\xab\x17\xa7\x23\x88\x7a\xc3\xd3\xe5\x88\x72\xba\x25\x7b\xa5\xc7\x27\x8a\x9e\xe0\x56\xa3\xbf\x48\x94\x06\x77\x9a\xca\x56\x2e\x54\xdd\x6c\xf3\xf2\x92\x0d\x67\xb4\x77\xf5\xb3\x9e\x96\x31\x5f\xa3\xf7\xba\xf5\x8a\x92\x15\xf9\xf6\x42\xa4\x72\xf9\x38\x55\xa9\x61\xfd\x9a\x00\x7d\x8e\x22\x54\x9b\x1e\x9d\x7b\xdb\x22\xcd\x4b\x94\xc7\x59\xc8\xbd\x23\x0e\x58\x8e\xbc\x54\x8f\x11\x9a\x5e\x73\x84\xd3\xbc\xd2\xbd\x7c\x55\x16\x37\x31\xa9\x6b\xe5\xe4\x42\x86\x11\x80\x4e\xd5\xf5\x7b\x15\xab\xc0\x5a\xec\x23\x07\x6f\x9b\x33\xfb\x26\x05\x83\x0d\xf6\x5f\xbe\x12\x89\x19\xae\xdb\x40\x72\x09\xba\x30\x32\xcf\x40\x3d\xda\xd7\x21\xa9\x36\xa9\x54\xfa\xa6\x57\x36\xe2\x06\x0b\xf4\x50\xf1\x02\x4c\x91\xda\xdb\xa3\xd4\xdb\xa3\xb4\xdb\x23\x77\x29\xec\x9b\x77\x9c\x03\xc4\xe4\x34\x5b\x9f\xce\x67\xb3\xba\x2e\x41\x43\xce\x24\x99\xcc\xcf\x31\x16\xdf\x9e\xf2\xe6\x83\x34\x44\xce\xa0\x60\x3c\x50\xa6\x28\x42\x53\x86\x0a\xb7\x22\xec\x4a\x73\x92\xa1\x1c\xae\x15\x6d\x29\x4a\x85\xc6\x08\x6a\x0a\x00\x4b\xaf\x3a\xc5\x4c\xb3\x75\x2a\x1f\xa8\xb8\x22\xe4\x74\x32\x27\xb7\x29\xfb\x56\xc6\x9c\x7a\x8d\xa3\x23\x18\xa9\x11\x19\x5c\x48\x9e\x7e\x32\xe4\xa7\x29\x06\xe6\x2c\x8a\x5a\x01\x88\xe9\xed\x74\x10\xfd\xce\xe2\x0e\xb5\x5a\x8d\x6e\xc4\x08\x01\xad\xd5\x83\xd5\x93\x41\x1a\x45\xb8\x5d\x82\x9a\xf4\x96\xf1\x8b\xf7\xe5\x78\x9f\x5b\x8f\xdd\x67\xe7\x54\xea\xff\x50\xac\xe4\xe6\x3a\x9c\x67\x4f\xa9\x81\xb5\x93\x9c\x95\xde\x1c\x52\xc1\x6e\x11\x5a\x34\x59\xf1\x38\xa7\x33\x42\x75\x1c\x7c\x00\x16\xe9\x7e\x20\x0d\x31\xd7\x6b\x1f\x7e\xc1\x0c\xbf\xd1\x65\x75\x70\x49\x9d\xa1\x0c\x10\x1c\x45\xb1\xc6\xc0\x98\xf8\x95\x3d\x64\x03\x21\x92\xe6\x7c\x33\x21\x25\xcf\xd4\x88\x8e\xc4\x6a\x35\x32\x18\xa8\xed\x34\xe9\x36\x57\x69\x01\x90\x76\x07\x92\x55\x5b\x5e\x14\x70\x67\x1b\xd1\xd1\x2a\x2d\x2a\x1e\xc0\xa1\x71\x77\xe1\xc9\x36\x96\x69\xd1\xbb\x1c\x89\x91\xbd\x65\x6e\x45\x51\xe4\xe5\xe5\xd3\xb4\x52\xce\x17\x95\x09\x0b\xb8\xff\xbc\x4c\xb3\x6c\x27\x53\xc5\x1d\xc8\xa3\x4b\xbf\x4e\xab\x6e\x60\x26\x36\x5b\x51\x41\x31\xc1\xe3\xf6\x3b\xee\x18\xea\x4f\x02\x49\x52\x2a\x79\xfa\x45\x28\x2a\x23\x3a\x02\x74\x47\x0f\x84\xca\x41\x54\xcd\xf9\xa6\x0b\xc8\xe5\xdb\x6b\x73\x8b\xb0\xa5\x0f\xb6\x55\x21\xae\x93\x23\x54\x7a\x39\x3e\xea\xc3\xf6\x32\x75\x7c\xed\xd7\x31\x03\xd4\x2b\xa7\x3f\xea\xae\x15\xe6\x4e\x3e\x9f\xcd\x66\xfa\x0a\xd7\x9e\x28\x40\x4d\xb7\xb3\xb8\x6d\x20\x6c\x8c\x99\x22\x1b\xcd\x9d\x61\xe2\x45\x91\x66\x9f\x46\x84\xbe\x42\xab\x00\x0f\x3f\xa7\x6f\x3a\x8b\xb4\x52\x0f\x60\x5d\x82\x26\x68\x2b\xcc\xa8\x17\xbb\x50\xc0\x15\x0c\x13\x42\x90\x49\xd7\xb0\xcf\x7d\xf3\x7f\x29\xd3\x8c\xbf\xe6\x32\x17\xcb\xe0\x28\x7a\x1d\x1c\x45\x57\xca\x49\x89\x0d\xa8\x6b\x5d\x4b\xab\x5b\x64\xb9\x6a\xcd\xba\xe1\x15\xcf\x91\x1c\x93\x85\xe6\x6c\xab\x62\xcd\x4a\xda\x00\xc1\x1e\xe4\x31\xd8\xd7\xc1\x83\xc1\x68\x20\x80\xf0\x54\x69\x2c\xa8\x66\xa3\xc9\x3f\xef\x2f\x46\x70\x1d\x1a\x25\x98\xc2\xda\x5f\x5d\x6b\xaa\xbc\x49\xb7\x90\x8c\xa6\xcd\xac\x19\xfd\x12\x66\xb2\x31\xa6\xd7\x6a\x51\xa4\xdb\x8a\x2f\xf4\xd5\x7e\x99\x54\x88\xa5\x4c\x2b\x0f\xd5\x26\xe4\xab\xf1\xb5\xf6\x22\x5d\x22\x34\x97\x87\x52\xc3\x03\x4d\x66\x90\x61\xf9\xca\x79\x16\xec\x10\xef\x1e\x65\x37\x66\x9a\xe9\xdb\xa2\x9e\xa5\xea\x4c\x9e\xbb\xab\x88\xae\x1f\x4e\xf5\xd7\xa2\x8a\x57\x3e\xd2\xac\xb1\x24\x98\xc3\xf9\x4a\x06\x66\x1e\x25\x9b\x21\xed\x47\xc0\x11\x75\x7c\x5c\xb2\xd2\xbb\xb6\x62\x03\xca\xba\x2e\xfb\x5a\xe7\xcf\x14\xb0\xcb\xbe\xf2\x48\x19\x28\x1f\x77\x33\xe3\xc9\x13\x2a\xd9\x84\xcd\xed\xd1\xb4\x09\x13\x9c\xe5\xe7\x78\x8a\xa2\xea\x8b\x5b\x3a\x9f\xb8\x9e\xf6\xd0\x8f\xe8\x27\xde\xd6\x1d\x87\x23\xcb\xd3\x79\xca\x99\xb5\x82\xa9\xeb\xe1\x63\x01\xfe\xa0\xbd\x71\x5d\xf1\xf8\x5d\x6e\x2e\x5d\x44\x9f\x0b\x7a\x18\x71\xde\x4a\x50\x3b\x1b\xce\xa8\x62\x65\x38\x31\x7a\x80\xe9\x50\x79\xcc\x80\xe4\x95\x5a\x5c\x89\x18\x7f\xd9\xe7\xf7\x41\xbb\x1e\x41\xa8\xf0\x59\x65\x42\x73\xbc\x58\xa5\xec\x6b\xab\x5c\xf2\xee\x66\xcb\x17\xca\x38\x1e\x60\x0a\x2e\x00\x69\x5d\xcf\x87\xa0\x90\x64\x5b\xe1\x8c\x2d\xbe\x1e\xb2\x40\x90\x6a\x8b\xd0\xcc\x6e\x10\x43\xd1\x4d\x45\x0a\x29\x7e\x4e\x8b\x1d\x77\xdc\xf9\x71\xe5\xcd\xea\x90\x95\xc7\xa4\x62\x7e\xd0\xc0\x3e\x0e\x5a\x8d\x9a\x1d\x2b\xf4\xee\xaa\x3c\x0f\x6c\x71\x47\xbf\x6a\x32\x3f\xce\x4f\xe2\xdd\xc2\xaa\xba\x27\x33\x02\x93\xde\x3c\xeb\xe4\x27\xb3\x05\x14\x94\xec\xce\xf2\x73\x63\x9d\x29\x1a\xeb\x4c\xf6\xb5\xb5\xa0\x15\x67\xe9\xf8\x3e\x2c\x8b\x8a\x31\x55\xd7\x15\x63\xd2\xde\x7c\xde\xe5\xb1\x2e\x08\x87\x3c\xc1\x19\x38\xcb\xcf\x09\x5d\xea\x6c\xe7\xe3\xd2\x4c\x43\x5c\x9e\xcc\xea\xba\x1a\x32\x45\xe0\x9e\xa1\xcb\x8c\xcb\xc5\x3c\x99\x91\x73\x42\x57\x3c\xce\x28\xb8\x26\x40\x4d\xc1\x2c\x4e\x69\x45\x25\x2c\x86\xa5\xb7\x60\x96\x34\xf7\x21\x52\xab\x40\x95\x6e\xc5\xd2\x45\x77\x80\x27\x32\x99\x1d\xaf\x8f\xd7\x6c\xed\x27\xc6\x87\x35\x96\xc5\xfa\xc2\xe4\x4d\xd3\xac\xb5\x3c\xfd\x0b\xda\x8a\x40\xed\x63\xb6\xc6\x67\x3d\xc4\x4e\x30\xd5\xec\x51\x3d\x1e\xcf\xf9\x5c\xec\x2a\xfb\x84\xa9\x5b\xbb\x62\xf2\x78\x7b\xbc\x65\xdb\x76\xac\x6b\xc6\x96\x6e\xfd\x66\x68\x9a\x72\xa8\x1d\xe3\xbb\xdb\xe1\xa1\x5c\x71\xcf\x85\x33\x72\x49\x0d\x33\x92\x6f\xf0\xf5\xc6\x3b\xe7\x7e\xf7\xd3\x23\xcf\xe5\xa4\x9b\x3c\x5d\xfa\x49\x1f\x87\xb7\xa0\x33\x75\x3e\xe0\xd3\x4a\x48\x1f\x94\xa2\x2d\x0c\xb1\x97\x62\x65\x7e\x20\x2e\x05\x00\x0a\xe9\x99\x6e\x9e\x32\xe7\xc7\x2d\x97\xe3\x96\xc9\x44\x70\x2d\x0e\x57\x04\xbd\x32\xb6\x9a\x39\xd4\xf7\x6b\x9a\xdb\x32\x4f\x99\xc1\xe0\x4f\x19\xb0\x8e\xa6\x4e\x17\x4f\x2b\x76\xe5\xe5\xd2\x7f\x08\x2d\x98\xb0\xf7\xf3\x85\x4d\x69\x2f\x1e\x89\x70\x01\xc8\x7f\x0e\xca\x13\x7d\x55\x9e\x4c\x94\xe6\x0a\x11\x5c\x68\x32\x29\xe9\x7d\x6a\xd0\xf7\x8b\x45\x95\xa4\xb4\x58\xa4\x49\x45\xc8\x7e\xef\x09\xb4\xde\xb4\xdd\xb3\xbe\x0c\x8f\x36\x93\xe6\xcc\x14\xc4\xa9\xaa\x6b\x4e\xce\xa9\x0f\x5d\xf6\x2c\xcc\xe2\xde\x87\xcc\x8b\x7a\x23\x20\xd0\xcd\x43\xab\x3d\x6e\x4d\x88\x7d\xfc\xa3\xe6\x0e\x88\xe7\xfd\x89\x49\x4d\x7c\x61\x18\x16\x39\x6b\x10\x37\xc2\x02\x9b\x57\x73\x5d\xc2\xa9\x5c\xac\x78\x2c\xa9\xe6\x2c\xc0\xe3\xa8\x47\x69\x93\x3e\x04\x7a\x3e\xcd\xd6\x03\xef\xbc\x63\x4c\xb3\x2c\xa7\x6a\xd1\x08\xe2\x14\x49\xe4\xc9\xcc\x0b\x98\x91\x84\xef\x63\x85\x95\xa8\xae\xf8\xc3\x77\x15\xdd\xe2\x1b\x4e\x6d\xfb\xa3\x48\x9d\x84\x5d\xf1\x40\x6b\x78\xdb\xc2\xc2\x5d\x83\x82\x87\x75\x79\x56\x9e\x33\x1c\xc4\xb3\xf2\xdc\x73\x72\xdf\x00\xde\xb4\xdf\x84\x33\x30\x1e\xc8\x36\xa1\x68\xae\xae\xf9\x14\x1d\xef\x36\x78\x64\xb8\xf7\x06\xe8\xe4\x16\x89\xf5\x56\x8f\x6c\x4e\x4e\x66\x03\x31\xd4\x1f\x25\x7c\x2c\xe2\x9c\x49\x2a\x59\x49\x12\x0c\xd6\xb5\x9d\xcc\xd0\x23\x12\xf1\x97\xde\xef\xfa\xe2\x25\xdb\x41\x65\x5d\xcb\x40\x41\xe2\xa1\xd7\xe8\x7f\xe8\xdf\x76\x49\x42\x6f\x38\xdc\xf0\x34\xed\x48\xe5\x8d\xde\xc9\x60\x3b\x3e\x23\xb4\xf4\x1d\x13\x3b\xa6\xa0\xd9\xd1\x67\xe7\xd4\x32\x23\xdd\x6b\xa4\x3e\x95\xca\xb3\xfc\x9c\x79\x75\x48\xab\xfa\x4b\xf5\x61\x42\x51\x87\x04\x1a\xf4\x98\x83\xc1\xb1\x6d\x08\x10\x31\x12\xf4\xe1\xe7\x8e\x92\x47\x50\xab\x85\x08\x1b\xe4\xe0\x32\x98\xda\x52\xf3\x6e\xa9\x7e\xb7\xfe\x68\x8f\xcc\x4b\x90\xb5\x84\x89\x7e\xe9\x30\x44\xeb\xbc\x52\x42\xde\x4c\x97\xa2\xe4\x34\x67\x57\x22\x2e\xc9\x20\x8f\xa2\xdc\x34\x67\x11\x97\x67\xa5\x13\x9c\x9c\x33\x45\xbf\xb5\x65\x90\xe4\x1f\x5d\x0d\x16\x17\x74\xeb\xd2\xb5\x0c\xf9\xfc\x6e\x9b\xda\xa9\xd0\xec\x54\x39\x45\x51\xdc\x40\x32\x03\xfd\xfa\x96\x17\xaf\xb6\xa0\x8e\xd5\x7c\x43\x12\x50\x96\x8e\x31\xf0\x85\x58\xbe\xcb\x37\xdc\xcb\xa3\x3f\x6d\x16\x97\xbe\xae\x0f\x35\x43\x59\xd9\xc9\xcc\x6e\x93\xd1\x57\x23\xc6\xf2\xba\x1e\x8d\x11\xdc\xb0\x25\x40\xea\x11\xd5\xca\x69\x25\x36\x5c\xad\xf3\xf2\x12\xaf\xbb\x7c\xa9\x29\x72\xd9\x17\xec\x79\x66\x69\xc6\xdf\x6b\xfa\x09\x83\xcd\xb8\x80\xbd\x68\xa5\x5c\x26\xdd\x13\x14\xc4\x15\xe9\x4d\xf2\xcd\x6c\x06\x46\x6b\x82\x5e\x89\x38\x87\x09\x24\x9a\x7b\x5d\xe0\xef\x33\xfc\xe3\x4f\x5d\xf2\x18\x70\x48\x30\xe9\x20\x18\xae\xc6\x13\x0f\x6d\x0f\xb5\xf0\x42\xb6\x4c\xd2\x32\x8a\x86\xf3\x21\x6a\x38\xf1\x54\xbe\xe1\x4b\x11\x45\x6f\xf2\x38\x9f\xee\x4a\x28\x79\x6f\x77\x09\x6d\xba\x81\xb2\xcd\x7c\x99\xbc\x4c\x5f\x06\xeb\xc5\xad\x92\xdb\x18\x5e\x85\x46\x17\xa0\xef\xe2\x64\x06\xc6\x18\x89\xc0\xf3\xc8\x26\x8a\x74\xa2\x69\xb6\x39\x98\x4e\x33\x6f\x8a\xf5\x9b\x8e\xde\x1a\x49\x8c\x32\xb3\x47\xdb\xaf\x69\x2d\x5e\xc4\x93\xf2\x4b\x36\x3b\x96\x0d\x85\x95\xe3\x31\xf1\x52\x9e\xc9\x73\x66\x28\x96\x21\xb9\xf2\xdc\x10\x49\xf4\x6f\x83\x21\x46\x3a\x64\x25\xce\xa0\xbf\x8e\xbf\x9d\x77\x7f\xf4\x12\xd3\xdf\x37\xca\x51\x87\x48\x0f\x83\x4e\x77\xc7\x30\x40\x2a\x9d\xda\x2e\x54\x7d\x0d\x30\x1b\x5a\x13\x28\x3b\x00\x9d\x87\x03\x92\xa8\xbd\xdd\xde\x03\x07\xa7\x23\xa7\x17\x79\x5a\xd5\xb5\x66\x68\x54\x43\x5f\xa1\x43\x6d\xa2\x8b\xbd\x3c\x99\x2d\x26\xf3\x64\x4e\x06\xef\x75\xef\x7f\x34\x7a\x64\x00\x83\xa9\x6f\x1a\xc3\x39\x63\x0e\x21\xaa\xae\x87\xba\xb9\x75\xfd\x8b\x84\x4e\x79\xab\xe3\xbd\xe5\xf8\xa6\xfc\x8f\x5d\x5a\x54\x31\x54\x46\xe0\x39\xaa\xe2\x05\x53\x66\x38\x62\x6f\x91\xf9\x62\x75\x2f\xb8\x0a\x87\x08\x41\x29\x71\x31\x11\x2b\xbe\x47\x03\xcc\x07\x99\xca\xaf\x72\x75\x83\x5e\x7a\x1a\xb8\x05\x90\xb2\x34\xfd\xc1\x25\x8e\x16\x90\x01\xeb\xf2\x63\x9f\x3d\x09\x15\x6c\x76\x2c\x4e\x54\xeb\x6c\x11\x96\x7b\x4c\xdd\x04\x9d\x89\x73\xd0\x63\x6b\x91\x9c\x9e\x93\x49\x1f\xd7\xde\x61\x24\xce\x69\xc1\x7e\xd5\x95\xa7\x56\x22\x59\x45\x91\xe5\x94\x51\x03\x6d\x67\x13\xc0\xd4\x41\x34\xfc\xd2\x91\xc7\x71\x5e\xd7\xc5\x90\xd9\xdc\x75\xbd\xd3\x1f\x30\x9f\x9a\xda\xd6\x35\x20\x9a\x86\xc7\x14\x15\x84\xd0\xfc\x4c\xb8\x0d\x50\xd0\x9d\x93\x80\x1e\xe5\x0b\x38\xb8\x94\x77\x68\xf9\x6f\x8d\xdf\xf7\xbc\x0f\xfa\x8c\x13\x5e\xf4\x37\xa9\xfc\xc4\x97\x6f\xb7\x69\xd9\x46\x33\x0e\xe2\x3a\xca\x7e\x15\x0b\xe2\xcf\x52\x3d\x3e\x15\x06\x01\xf3\x62\x8c\xdb\x2b\x60\xa0\xeb\x3a\x2e\xa6\x79\x99\x15\xbb\x2a\xbf\xe2\xcf\xf9\x4a\x2d\x30\xe2\x04\x0e\x88\xc4\x7c\x28\x2b\xe1\xb6\x79\x95\x08\x73\x02\x96\xd9\x42\x87\x9f\xda\x8c\x4a\x9c\x62\x36\x60\xb4\xf2\x28\x8a\xbf\x47\x87\x26\xb0\x77\xd1\xb9\xcf\x93\x12\xcc\xa9\x69\x31\xe5\x9f\x35\xcf\x9e\xab\xe2\xe6\x91\xa6\xaf\x7c\x89\xd9\xc2\x71\xb8\x9d\x4c\xd2\x41\x26\x4a\x95\x97\x3b\xbe\x47\xb1\x0a\x98\xf6\x4f\x53\x25\x36\x79\x46\x6c\x9c\xd1\x13\x83\x97\x4a\x9a\xb1\x02\xb1\x64\xcb\x93\xd9\x62\x9e\x4c\xe6\x04\x87\x01\x2e\xda\x61\x0f\x92\xd6\x60\x10\xf0\xc9\xf9\x9b\x9e\xb0\x8c\x4e\x4a\x0a\xd6\xcc\x81\xf1\x8d\x00\xa1\x04\x21\xdd\xa8\x28\x8a\x77\x9a\xf9\x03\xc3\x70\x3d\x74\x27\xb3\xc5\xee\x64\x96\xec\x4e\x9b\xdb\xec\xf7\x58\xb2\x82\xa5\x60\x2e\xd9\x5e\x63\x91\x98\x34\x37\xf5\x45\xab\x79\x49\xbb\xfd\x78\x89\x87\xf6\x2e\x69\x49\x97\x07\xda\xba\x5c\x7c\x8f\x49\xb0\x62\x74\x29\x67\x57\xaf\xb7\x52\x7f\xed\x59\xa9\x65\x5d\xcf\x69\xca\xdc\x22\x16\x34\x27\x75\x3d\xcc\xa3\xc8\x0b\x1a\xce\x48\x5d\xbb\xef\x49\x4f\x9a\x89\x40\x60\x5f\xac\x33\x05\xda\x96\xa5\xa5\x7a\xb2\xcc\x95\x26\x52\xc1\x45\xc7\x23\x33\xbf\x79\x64\xc6\x72\xf7\x9a\xb5\x9e\x31\x58\x77\x0b\x73\xe9\x31\x79\x17\x70\x0c\xad\xb8\xb9\x4d\xe9\xcb\x16\x74\x36\x91\xa7\xb3\x28\xd2\x19\x18\xd3\xec\xb6\xbf\xfd\x82\x8b\xcb\x22\xbc\x86\xb9\x3b\xd6\xc2\x95\x09\x4f\x25\x58\xa8\xd1\x8e\xb0\x3a\xc1\xd3\x6c\x3d\xf6\x0f\x7d\x30\xcb\xed\x40\x42\x56\x6b\x71\xdd\x78\x89\x6a\xc7\x6e\x25\xdf\xa6\xde\x49\x17\xfb\x63\xa1\x54\xfb\x56\x64\x5c\x4b\xa2\x15\x64\x69\x4c\xeb\xab\x2f\x7b\x0e\x03\xf4\x08\x77\x56\xfc\x85\xf4\x16\x34\xac\x7b\x6f\xb0\xf8\x61\x9a\x59\x52\x06\x7a\x25\x64\xe0\x1d\x00\x9c\x47\xc5\x53\xf3\x02\x59\x99\x6b\x3d\xce\x62\xc7\x3c\xba\xae\x2b\x10\x0e\xd8\x49\x69\x1b\x5a\x93\xc6\x46\xd7\x48\x0e\x8e\xe3\x42\x33\x51\xee\xd9\x74\x2d\xae\x91\xf4\xfc\xb2\xe6\xe5\x5b\xeb\x01\x95\x44\x11\xf8\x4e\x33\xe7\x42\x4e\x68\x51\xd7\x25\x84\x50\xe1\x49\x0b\x3c\xf3\x49\x15\x72\x59\x8f\xf0\xbb\x6d\x80\xe8\xd9\x5a\x54\x79\x79\x59\x18\xba\x87\x2a\x88\xaf\xb9\x7c\x6e\x84\xfc\xb2\xdf\x5e\x60\xf4\xff\xfc\xdf\xa3\x1e\xbf\x31\x23\x42\x10\xee\x3e\x50\x43\x2e\xac\xde\x26\xcd\x3d\x53\xec\x52\xff\x1f\x06\x77\x95\x58\x9d\x72\x18\xa4\x26\x5f\x79\xf8\x89\x5e\x7b\xb1\x94\x72\x2a\xd4\x9a\x4b\x4b\x0f\xfe\x5e\xcb\x7d\xcb\x8f\x8a\x67\xa2\x5c\xa6\xf2\xa6\xe9\x94\xe8\x6a\x7e\x8a\xb0\x93\x50\xb7\xd7\x55\x11\x74\x15\x63\x5d\x87\x45\xd8\xe1\xe9\x7f\xbe\xf9\x2a\xb6\x89\x5c\x87\x5d\x1e\xa3\xaa\xeb\x59\x9d\xaa\xbb\x40\x58\x00\x7f\xe8\x2f\x6d\x95\x2c\xf0\x99\x50\xb1\x14\x3d\x9b\x16\x3e\x3e\x52\xe3\x9e\x86\x02\xfa\xc3\xc4\x04\x79\xb6\xc6\x64\x92\xa2\x26\x6f\x23\x61\xde\x35\xc4\x50\x81\x80\x01\x7c\xa7\x28\x1f\x18\x5b\x91\x10\x28\xbb\x24\x54\xfc\x45\x1c\xfc\xca\x5c\xde\x46\xfd\xef\x8f\xd6\x5e\x85\xa3\x85\x0a\x38\x98\x1b\x8d\x55\xcb\x5e\xc5\x62\xe9\x2c\x8a\x09\x4f\xa4\x31\x02\x6b\xbc\xe8\xc4\xe5\xc4\xe0\x9d\xfa\x94\xcd\x49\xce\xaf\xd0\x6f\x27\xcd\x34\x87\x94\x53\x45\x40\x8f\xc7\x23\xd0\xcd\x58\xac\x63\xff\x50\x78\xa0\x0c\xe1\x07\x2b\x24\xe8\x5f\x46\x1b\xe1\x4b\xf7\x56\x0c\xb0\x80\xee\x9d\x07\xea\x1f\x15\x4a\x8e\x7c\x84\xda\xe1\xdc\x30\xb4\xbc\x61\xbb\x84\xe5\x64\xf9\x99\x38\x3f\x8e\x53\x64\x98\x64\x14\xa5\xc0\x01\xd5\xb5\x62\xcc\x7c\x31\x94\xb2\x97\x71\x83\x20\x09\xa9\x75\xb7\x9c\x80\x50\x27\xd4\x6d\x9e\x33\x58\x27\x57\xbc\x58\x8c\xa4\x2a\x46\x09\xb6\x86\xe6\xe0\x4a\x35\xaf\x6b\xbf\x8d\xfb\xf8\x41\x1e\x67\x84\xca\xba\x46\x2d\x13\xc6\xca\xc5\x32\x29\x69\x88\x54\x65\x0e\xf1\x8c\xae\xe8\x96\x6e\xd8\x5a\x73\xff\xe6\x89\x30\x5f\xc5\x9a\x51\x20\x19\xdb\xd0\x15\xdb\xb2\x0d\xac\x51\xe7\x7b\x3f\x63\xeb\x58\x4d\xe6\xd4\x3c\x11\x12\x0a\x6d\x62\xd6\x40\xe8\x8a\x6d\x06\x1b\x96\xd1\x8c\x5d\xed\x57\x26\x2f\xdd\xb2\x0c\xd7\xeb\xde\x2c\x01\x38\xa5\x39\x00\xe7\x54\x84\x66\xe0\xd6\x77\xa3\xff\x3f\xfd\x5a\x33\x4b\xf1\x8a\xc2\x17\x2e\xc4\x8d\x05\xb5\xa5\x2b\x56\xb9\xaf\x93\x0c\x91\x50\x30\x31\x86\x61\x7a\x88\x20\xc4\xf6\x3e\x8a\x14\x63\xcb\x28\x8a\xb7\xac\x20\x34\x1e\x8a\xba\x86\xc2\x4f\x84\xfe\xdf\x7c\x30\x26\xb0\x38\x6c\x31\x3c\xb3\x20\xd3\x27\xd8\x46\xe7\x4a\xeb\x3a\x33\xb5\x9c\xa6\xe6\x47\x13\xa4\x67\xc8\x22\xce\x9a\xae\x9e\x9a\x2d\x8a\xda\x20\x19\xa1\xab\x93\x6a\x3c\xb7\x5d\xd6\xad\x86\x76\xd2\xed\x44\xff\x32\x3d\xdc\x13\x42\x9d\xef\x5f\x5e\x2e\x93\xd4\x3e\xb8\xa8\x46\x65\x4d\xa1\xca\x5a\xbe\x8a\x2d\x57\x67\xd4\xcc\x32\xff\x15\x02\xf4\xcc\xd0\xa4\xf7\x16\x55\xc4\x60\xdf\x18\xe5\x12\xba\xc5\x4f\x93\x93\x6e\xd8\x9f\x65\xbc\x22\x4c\xff\xd9\x12\x7a\xc5\xc2\xb2\x36\x8b\x95\xbf\xd5\xc6\x73\xe4\x1f\xa7\xbc\x5c\xd2\x4b\x96\x59\xe5\xb7\xcd\x62\x86\x2f\x73\x50\x37\xbe\x14\x0f\xf4\xf5\xf4\x0a\x06\xfc\x12\xe6\xf9\xfe\x22\xde\xc5\x57\x38\x38\xf4\xaa\x99\xe6\x2b\x37\xcd\xbb\xb8\xa2\x90\x96\x5e\xe2\xfa\xb9\xb4\x51\x24\x69\x67\xc5\x14\x93\x26\xd0\xa6\x74\x3f\xb1\x5a\xbd\x50\x2a\x17\x86\x35\x5e\x22\x24\x4e\x78\x6e\xf9\xc0\x2b\xb9\x72\x00\x17\x81\x3a\x68\xd7\xf9\x38\x88\x82\x9e\xe9\x3b\xcc\x55\x5a\xc4\x6a\x7a\x51\xe4\xe5\x27\x2e\xad\x60\x7e\x38\x1b\xa8\x06\xde\xc8\x9c\x45\x80\xa0\x03\xce\xff\xf4\xe9\xd6\x3e\x68\x1f\xea\x12\xde\xa4\x8a\x9f\xce\x16\xae\x3c\x56\x71\xe5\x6a\x09\x9d\xd7\xde\x51\x7a\x2c\xd9\x50\x12\x70\x24\x82\xea\x06\xa3\x3d\x39\x5c\x1f\x49\x0e\x46\xe1\xc1\x72\x67\x47\x4c\x05\xfe\x2b\xb4\x50\x0e\x5c\xc6\xb8\x41\xc2\x95\xf1\x56\x0f\x29\xe0\xf5\x78\x1e\x8a\x4e\xda\x8c\x1e\x5c\xf2\x61\xf0\x9d\x13\x7a\xd0\x49\x57\xf4\xb3\x88\x53\x15\xca\x28\x52\xd5\xf2\xb0\x83\x28\x90\xae\x70\x65\x1f\x18\xbc\x40\xfb\x0c\x8c\xd0\x47\x36\xb4\xcb\x71\x3a\xf7\xef\x4e\x54\xe8\x21\x22\x5e\x0b\xf9\xe9\x5d\x0e\xa0\x08\x45\x19\x2b\xe8\x25\xad\x50\xe3\xc3\x16\x49\x34\xc9\x3e\x3b\xb7\xde\x7e\x9a\x08\xef\x4d\x28\x00\x95\xed\x80\x0d\x8d\xbf\x99\xcd\x7c\x00\x78\x61\xde\x87\x0e\x35\x1a\x18\x61\x73\x28\x19\x0e\xa8\x02\x95\x61\x6f\x2f\x9f\x36\x9d\xd8\xa4\x9f\xbf\xb3\x63\x8c\x3e\x47\x68\xc1\x78\x0e\x32\xd6\x6a\xd1\xf4\xab\x24\x09\x88\xb2\x2c\x93\x56\xb1\xc2\xfc\xb0\x50\x7b\xf8\x09\x76\x95\xbc\x82\x6b\x77\x86\xbf\x07\xd9\x22\x8c\x64\x59\xb2\xd3\x54\x36\x0c\x0c\x6d\x52\x97\x4c\x93\xdf\xd4\xe1\xe9\xda\x6a\xdd\x2b\xff\x0e\xd0\xc5\xe2\xe1\xae\xae\x87\x59\x5d\xef\x1a\xd4\x88\xac\x41\x61\xd8\xf9\xa8\x11\x99\x6f\xf8\xb9\x66\xb3\xe3\xe1\x32\x8a\xd6\x27\xa9\xef\xcd\x73\xc9\xd2\xb3\xf5\x79\x53\xdd\xd9\xfa\x7c\xb0\x8c\xa2\xdc\x58\x04\x36\xf3\x0a\xdc\xa5\x73\xca\x55\x2d\xca\xc4\x1f\x2b\xab\x67\xe8\x8d\xf9\x09\xbb\x6b\xd0\xa3\x48\xc2\x98\x43\x0e\x5a\xb6\x8a\x6f\xea\xfd\xe7\x37\x8c\xcd\x5a\xd3\x62\xb4\x52\xc6\x63\x6f\x75\xb9\xf5\x7a\xea\x74\x5a\x61\x4b\x86\xab\x17\x84\xea\xa0\x87\x0a\x7e\xf1\xac\x84\xed\xbd\x4e\x19\xf7\xd8\x1d\x20\xc2\x8f\x4d\x78\xac\xc6\x63\xa2\x40\xe5\xf1\x4c\x9d\x53\xc4\x83\x01\x8b\x11\x0f\x43\xa1\xcb\x44\x8b\x0c\x19\xe8\x06\x35\x19\xdc\xb7\x07\x14\xc2\x02\x29\x5a\xff\x5e\x6d\xd9\xb6\x7b\xc5\xa2\x39\x35\xea\xf5\x34\x65\x72\x31\x99\x27\x6a\x12\x7b\x44\x27\x2f\x4b\x0e\x36\x1b\x8b\x39\xff\x3a\x01\xc7\x67\x15\x53\xc7\xd5\x69\x7a\x3c\x99\x54\xb0\x95\xaa\x13\x8b\x97\xe8\x46\x0a\x3f\x8d\x8e\x07\x28\x75\x57\x46\x6e\x54\x84\x9e\xd9\x86\xb2\xae\x31\xbf\xdb\xef\x56\xad\xca\x6c\x8b\xb5\x88\x0b\x33\xa9\xfa\xf8\xf1\xbc\x6b\xa5\x17\x6f\xf3\x3f\x39\x39\x36\x2c\xb2\xe6\xe9\x4e\x77\x20\x74\x64\xd5\x64\x4e\x4b\xb6\x6b\x44\x8a\x56\x3e\x4d\x53\x26\x4e\x4b\x4b\xd0\x9e\xe4\x71\x49\xc5\x64\x4e\xbc\x46\x39\x99\x0a\x4b\xf5\x32\xc1\x91\xa5\x29\x49\x76\xf6\x83\xd0\x12\x89\x91\xa0\x2a\x74\xbc\x0f\x4b\x10\x0d\x6d\x69\x6a\xf5\xc6\x34\xdf\x3a\x99\xd7\xb5\x80\xa5\x57\xd7\xe2\x94\xe5\x1e\x28\x9c\x38\xb1\x4e\x14\x07\x32\xdc\x11\x41\xed\xd0\xf9\xf1\x58\xec\x51\x16\x1e\x97\x0d\x29\x16\x84\xa6\x9e\xf5\xba\x0a\xb0\x7e\x9c\x8f\xd0\x06\x70\xcb\xb3\x1c\x0f\xd3\x22\x28\xa8\x8f\x1c\x35\xe9\x16\xd0\x86\x94\xca\x9a\xe3\x3e\x74\x4f\xd8\xa8\x82\x87\xe1\x06\x80\x04\xfc\x95\x5b\xe5\x1f\x7d\x89\xda\x4a\x3e\xa2\x23\x7d\x91\xa1\x92\xa1\xa7\xe4\x69\xdb\xbb\xef\xe2\x40\x78\xac\x48\xa2\x2c\xde\x26\x84\xd0\x92\xdd\xc2\x0d\x6b\x9b\xca\x8a\x3f\x2b\x55\x2c\x7d\x63\x61\x62\x4c\x9e\xba\xb1\x28\x08\x74\x6f\x2b\x79\xf5\x32\x7d\x69\xcc\xc0\x48\x5d\xdb\x4f\xe4\x52\x8d\xd8\x2d\x74\xca\x48\xa8\x27\xe7\x58\xfa\x23\x2c\xc4\xa4\x39\x6a\x42\xcb\x5c\xcf\xea\x3a\x9c\x93\xbb\xfc\xfe\x4d\xa0\xf4\x49\xd7\xff\x46\x53\xda\xea\x2f\x95\x66\x26\xbb\xa7\xb8\xf6\x6c\x6f\x95\x67\xc2\xcf\xad\x7c\xd4\x4c\xf5\xed\x26\xdd\x26\x6e\x52\x41\x57\x12\x06\xc7\x0b\x83\xef\x7d\xcb\xe7\x1c\xef\x58\xf8\x43\xe1\xc6\xbe\xff\xae\xf2\xab\xb3\xf2\xbc\xbf\x0e\x1d\x83\xf5\xdc\x51\x07\xa8\xe9\x99\x6a\x88\x23\xf4\x7f\xb7\x1a\x8a\x22\xf9\x64\x38\xf3\xe8\xf6\x46\x75\x04\xad\x17\x3a\xe8\x12\xf9\x3a\x88\xf0\x6c\xb1\x54\xa3\xb8\x72\x00\x3b\xb2\xc3\xe3\x91\xce\xac\x22\x00\x1f\x82\x12\x9f\x77\xfc\xc9\xdc\x81\x88\xa5\x4e\x19\x82\x62\xbd\xd4\x15\x99\x9f\x63\x04\x09\x5d\xc8\x04\x3c\xfb\x7b\xa6\x16\xa6\x0f\x86\xb3\x7b\x97\xa3\x90\x04\xfa\x20\xc9\xa0\x8c\xa2\x21\x42\x46\x2d\x4a\x86\x82\xdd\x28\x2a\x3d\x4c\x58\x80\x4e\x2b\xa9\xa4\x88\xc6\xed\x8c\x58\x42\xb7\xe6\xc4\xd8\x76\xf5\xe9\xd8\xe8\x2a\xf5\xa5\x4b\x91\xc0\x81\x40\x0f\x7e\x17\xbf\x3e\xfa\x55\x59\x9d\x60\x68\x1d\x76\xce\x38\xe2\xca\x59\x89\x40\x5e\x0c\x70\xbc\x4a\xd2\xc0\xfa\x03\x64\x06\x62\x65\xfc\x2e\x5a\x2e\x08\x1b\x77\xcf\x00\xd5\x55\xee\x11\x07\xda\x14\xb9\x55\x71\x89\x95\x99\xf5\x04\x4a\x84\xe8\x1b\x2d\x29\xa9\xe4\x99\x51\xc5\xd4\xeb\x2c\xf7\xb6\x89\x71\xf0\x6a\xd7\x53\x3e\xc5\x1f\x74\x9d\x56\xb8\x0f\xab\x64\x38\xf7\xd6\xd8\x85\xf2\xdf\x17\x94\x49\x0e\x7a\x32\xfa\xb4\x85\xe3\x87\x16\x4c\x8e\xe3\x12\x10\x9c\x1a\xcd\x26\xa8\xa7\x0b\xc0\xb2\xa8\x98\x89\x3b\x2b\xce\x93\x58\x4d\x75\x5b\x01\xe0\x40\xff\x30\x10\x8f\xc8\x93\x1d\x30\xa5\x25\x54\x4d\x9b\xe6\xd6\xf5\x41\xa8\xef\x5e\xb7\xa7\x39\x2b\xa3\x08\x08\xa0\x01\x99\xb7\x7b\x6d\x6d\xcb\x2b\xa3\xa8\x09\xbd\x46\xb8\xd7\xbc\x41\xd7\x6b\xa5\xd7\x17\x07\xd4\x37\x6a\x65\x62\xf9\xa0\x79\x14\x54\x6d\x05\x5f\x38\x5e\x5c\xa7\xaa\x58\xb3\x3c\xb3\xe3\xca\x31\xba\x93\x39\x58\xd6\x18\x59\x79\x8a\x78\x36\xe9\x59\x35\x9e\x9f\x0f\xe0\x56\x92\x5e\x54\x71\xd1\x60\x51\x9a\xdb\xf5\xe9\xfd\x28\x12\xc8\x07\xbb\xd8\x31\x20\x55\x92\x7b\xf7\x27\x06\x6a\x76\x6f\x52\x38\x09\xab\x0d\x87\x5b\x11\x80\x03\xe3\x6c\x84\x23\x0d\x1b\x26\xae\xd8\x01\x75\x15\x0a\xea\xeb\x0a\xd6\x1a\x3c\xe9\x5a\x18\x4e\xba\x63\x56\x39\x3d\x63\xa0\xac\x4e\x97\x9e\xfe\xba\x1e\xbd\xaf\x19\x2b\x9c\x0a\x70\xc3\x39\xa2\x2b\xff\x7f\x1d\xaf\xf5\x48\x00\x2a\xf2\x2e\x8a\x1e\x09\xf3\x7c\x63\x90\xc1\x8c\x79\x11\x42\x6d\x80\x2f\xe1\xf1\x8e\x90\x63\x32\x99\xec\x60\x02\x8e\x83\xa8\xec\xc4\x7c\x3e\x29\x97\x7f\xa9\xac\x4c\x97\x35\x1e\xc3\x85\x15\x90\x03\xff\xcb\x82\x94\x67\xa8\x85\x8f\x65\x4d\xfc\x4c\x24\x67\x85\x8f\xf5\x76\xc8\x26\xdc\xc2\xba\x89\x43\xd0\xc3\xc4\x48\x88\x5e\x0b\xc0\x6a\xc9\x48\x67\xd9\x0c\x72\xb6\xb2\x0f\x61\xab\x33\x67\x1e\x50\x2e\x56\x6e\x21\x25\xb3\xf3\xe4\xa3\xc2\xdb\x4e\x1e\x16\xd5\xd7\xaa\xba\xfe\xa8\xf0\xe9\x42\xf3\x23\x75\x9d\x23\x23\x52\xd7\xba\xd7\xa8\x28\x3f\xc8\xd8\x8e\xee\x26\x6c\x4e\x97\xd6\x22\x61\x0f\x63\x33\x9f\x03\x6b\xdc\xb5\x58\x36\x3c\x55\x95\x49\xce\xcb\xba\x36\x6f\xd4\xf0\x35\x2d\xc4\x65\x9e\xa5\xc5\xaf\x8f\x5f\x3f\xab\xeb\x6e\x98\x4b\xb7\xe4\x57\x79\xc6\x31\xd9\xd0\xb7\x3c\xd5\xdb\x0f\x30\x98\xbf\x77\x07\xd6\xf7\xc2\x63\x01\x81\xf5\xab\xb6\x69\xd9\xf0\x7e\x07\x89\x0b\x2d\xf5\x08\x29\x3a\xa3\xf3\x83\x23\xe4\x74\x62\x8c\xfb\x04\xbd\x15\xf1\xc1\x63\x62\x98\xb8\xd3\xf9\xbe\xf1\x13\x71\xa4\xcc\x39\xd9\xed\xdb\xbd\x4e\xd7\x68\xd9\x4a\xf6\xbe\x93\x4c\x87\x38\xb2\xaf\xd9\x4f\x05\x95\x7e\x25\x0d\xbf\xa9\x70\xc2\xbe\x92\x54\x89\x6d\xa2\xf4\xde\xfe\xaa\x74\x28\x18\x66\xcf\x7f\x55\xea\xed\xde\x60\xf5\xdb\xd3\x86\xe0\xb5\xf8\x76\x07\xe0\x1b\x4b\x56\x32\x27\x4f\x6e\xc3\xda\x37\xf8\xd8\xf1\x8a\x15\x9d\x95\x49\x9c\x6d\xf3\x5d\x0b\xb3\x38\x34\xc8\x7b\x6f\xbf\x0d\x77\xfa\x1a\x97\xd7\xf5\x10\x17\x65\x14\x0d\xcd\xaa\x34\xb2\x9f\x6d\x67\xbf\x05\x4d\x39\x9b\x9d\x0f\x72\xb6\x5d\x18\x6e\x1d\x65\x97\x86\x39\xc7\x87\xaa\xc0\xbb\x35\x8c\xdb\x16\xa4\x98\x66\xd4\xb6\x66\xd4\xf6\x7a\x23\xe9\x0a\x37\xe0\xce\x76\x3b\x41\x3a\x09\x49\xaf\x58\x6e\xe9\xa9\x17\x7a\xc9\xe2\xcd\xf8\x8a\xdc\xbb\x4f\x2f\xec\xd9\xd6\x3a\x40\x80\x48\x21\xa5\xbb\x70\x43\x13\x45\xc3\xf8\xf2\xe4\xe2\x6c\x7d\x4e\x80\xfa\x1d\x83\x19\x3b\x5b\x2f\x2e\xce\xd6\x93\xf9\x79\x32\xa3\x1f\x99\x8e\xa5\xd7\xe6\x0a\x12\xbb\x11\x5e\x2e\xcc\xd8\x24\x38\x58\xc4\x36\xc7\xeb\x75\x8c\x6f\x0a\x98\x18\xf2\xdb\xf1\x0c\x12\xeb\x71\xb8\xb1\x63\xf0\x71\x3f\xe8\x90\x84\xf8\x7a\x7a\x21\x2e\x77\x70\x34\x0c\xfe\xc2\x3b\x2a\xe4\x90\x4a\x6c\xd9\x86\x5e\x4f\xa5\x91\xd1\x5f\xb9\x1d\x75\xbd\x77\x87\x0a\xc1\x92\x81\x33\xb0\xec\x02\xab\x08\xa1\xd8\xdf\xca\xef\x4e\x65\x84\xcc\xba\xbd\xf9\xa2\x82\x1a\x40\xbd\xc5\x4d\x20\x84\x9a\xdf\x95\x9d\xcc\xfd\x5b\xde\x42\xb1\xc8\xcb\x5c\xf5\xa0\x24\xa9\x75\x5e\x69\xa2\x81\x86\x6c\xd4\xb8\x56\x35\x78\x53\xec\x1d\x8f\x9d\x67\x54\x6b\x19\x68\x1d\xbf\xb4\xbc\x3b\x54\xd6\xbb\x95\x12\xb1\xa4\x1c\x15\x68\x7a\x55\x34\xc9\x0d\x67\xb7\xd6\xec\x3c\x19\xce\xd1\x48\x1c\x3c\x12\x39\x4d\x83\x2a\x26\x7b\xaa\xfa\xac\x1c\x41\x8e\x1a\xda\x4d\x1e\x32\x86\xcc\xa7\x57\x69\xb1\xe3\xac\x6b\xd8\x4e\x2f\x45\x9c\x13\xe2\x1e\x98\x86\x32\xdc\xfe\x79\xc5\x1f\x89\xed\xcd\xa3\x9d\xbd\x3b\x19\xbd\xbc\xcf\x3c\x96\x64\x10\xb6\x7f\x86\xed\x47\x96\x77\x4f\xc1\x62\x1d\xe0\x81\x6f\xb6\x7c\x21\xa7\x55\xd0\xab\x46\x0b\x10\x8c\x89\x04\x49\xda\xbd\xb1\x8d\x2e\x0f\xb4\x79\x1f\x54\x00\xee\x06\x7a\x8c\xd3\x67\x64\xbf\xe7\xfd\x7e\x47\x4b\xda\x44\x78\xb0\xa9\x60\x08\x99\xb7\x40\x8d\x00\xff\x0b\x7d\xcc\xa2\x05\x7e\x20\x96\xd3\x34\xec\x94\xfd\x97\xe6\x29\x7d\x93\x53\x98\xa1\xc0\x06\xd5\x82\x86\x6e\x45\x51\xc4\x9e\xdf\x5a\xb4\x45\x0f\xb1\x16\xcc\xf2\xa9\x6b\x30\xaa\x97\xe0\x88\xa0\xd7\x28\x5f\x0f\xfc\x74\x95\x56\xea\x35\x94\xea\x15\xab\x07\x88\x56\xee\x4b\x6c\x6f\xec\x67\xe3\x24\xab\xa7\xf2\x92\xdc\x56\x12\xae\x31\x75\x0d\xad\x28\xbf\x54\x39\xc2\x71\xd8\x9a\x3d\x61\x0f\x1d\xe1\xeb\x35\xb0\x86\x7e\x1d\xca\xd4\xa1\x48\x5d\x3f\xd4\x37\x3f\xaf\xd5\x68\xa0\x0b\xeb\xa4\x9d\xcd\x5a\xe8\xc2\x26\x41\xe2\x13\x8f\x56\x52\x6c\x46\x64\xa0\x1a\xd3\x5e\x50\x2a\xb2\x1f\xb8\xd2\x9c\xcb\x5c\x2f\x86\x99\xe7\x3e\x8e\x66\xd2\x89\x04\x35\xb7\x77\xfc\x33\x5c\x41\xfd\x2a\x94\x18\x11\x7a\xeb\x50\x15\x93\x40\xa5\xc2\x16\x37\xda\x93\x7d\x6f\x37\x78\xb9\x0c\x3b\x11\x34\x35\xb6\xeb\x81\xfe\xb5\x46\xc3\x22\x02\x3c\xa0\xb6\x5a\xd2\x01\x68\xa0\x6c\x43\x7b\xdc\xab\x6b\x12\x67\xaf\x48\x9e\x44\x5c\x5c\xa1\xfa\xea\x2f\xb9\x5a\x63\xef\xad\xaa\xfa\x23\x1c\x95\xae\xc2\x2d\x3e\xec\x13\x80\x76\xb7\x1b\xea\x10\xeb\x95\x7a\x5e\x01\x0e\xb1\x5e\x7a\xc7\xbf\x13\x5b\x5f\x33\xc6\x7b\xa4\xe9\x73\x83\x36\x99\xcf\xc0\x5e\x69\x3b\x4e\xe1\xc8\x16\xf6\x15\x7a\xaa\x40\x43\xef\x2f\x15\x85\xb2\x30\x28\x09\xf8\x05\xd4\x0f\x99\x98\xd7\xe8\xc6\x3a\x64\x4f\x03\x65\xb1\x03\x67\x89\x67\xcb\x32\xf8\x5d\xf8\x0f\x77\x28\xa8\xa8\x84\xac\x08\x85\x18\xdf\xd5\x0a\x6a\xf6\xe2\x27\xbe\xa2\x23\x0e\xf3\x3b\x70\x3c\xe2\x9f\x49\x9e\xc6\x8d\x49\x80\xda\x36\x3d\x69\x0c\xa8\x1c\x8e\x85\x71\xc7\x48\x25\xaf\x78\x78\x10\xc2\xa1\x85\x26\xf2\xa5\xa6\xb9\x2f\x78\xb9\x7b\xcd\x61\x7e\x4c\xcf\xf4\xa9\xed\xd6\x54\xce\x4a\xfb\xca\xd7\x6b\x6a\x60\xf4\xd9\x7d\xa2\x6e\x44\xd9\x79\xcb\x54\xa6\x60\xb1\x62\x3f\x8a\x28\x8a\x3d\xbd\xb2\x49\xa8\x84\x06\x50\x18\xb1\x64\x65\x70\x3c\xfa\x2c\x28\xff\x9a\x90\xc5\x68\x32\x4a\x64\x5d\xb7\x53\x0d\x82\x93\xdb\x9c\x2c\x05\x2d\xdb\x0e\xa4\x2f\x45\x1c\xa4\x44\x24\x79\xa0\xed\x71\x17\x52\xa0\x30\xef\x4b\x9a\xe7\x69\xf5\xb5\xaf\xbe\xd1\xe8\xce\xd2\x50\x2b\x74\x70\x10\xd5\x40\xed\xf7\xf4\x92\xab\xa7\x39\x2f\x96\x5d\x10\xae\xa3\xa0\xc6\x3d\xad\x76\xdb\xad\x90\xaa\x7a\x27\x76\xd9\xba\x9b\x7c\x38\xdf\x53\xe8\xb5\x1f\x95\xaf\xe2\x51\x29\x8c\x1e\xd8\xd0\x2d\x63\x4b\x1b\xa4\x41\x5d\xd1\x8c\xfa\xa6\xae\xd1\xb3\x50\x38\x5c\x44\xc9\x9b\xdb\xb0\xef\xd6\xd9\x76\x96\xaa\x6c\x1d\x7f\x2b\x00\xd5\xeb\xa2\xd8\x05\x40\x5f\x61\x16\x1d\x1b\xdb\x25\xfa\xda\xea\x3c\xb5\x93\x77\xf7\xc1\xa1\xa5\x3f\xd3\x45\x65\x3c\xbf\xe2\xcb\xa7\xed\x3e\x43\x9e\xaa\x10\xd7\x78\x7a\xee\xa9\xfd\xdd\x4f\x4c\x07\xdc\x47\xa6\xa8\x6b\xf7\x89\xef\xe2\xad\x11\xd3\x71\x56\x65\xa0\xe5\xb9\xdc\x90\x7c\x30\x12\x68\x2d\x42\xee\xb7\x47\xd3\x79\x7b\xb8\x77\x9b\xa4\x99\x46\x6c\x97\x0a\x11\x33\x66\x54\x05\x2d\xbb\x3f\x6b\x61\xd9\xd9\x43\xa7\xae\xf9\x22\x56\x1d\xb8\x0d\xaf\x09\x24\x89\x79\xb7\xc0\x7f\xcf\xa8\x24\xe6\x18\x3a\x38\x5a\x78\xf4\x04\x93\x6b\x79\x6c\xb7\x55\x40\x4b\xa0\x9f\xea\x80\x71\x46\x0b\x0b\xec\x07\x11\x2b\x12\x45\x43\x19\x45\xc3\x10\xcf\x43\x4f\x46\x08\x0d\xc4\x0f\x40\x03\xd9\x42\x3f\xf1\x9b\xb7\xfc\x8f\xd0\x59\x5c\xa9\xaf\x70\x7a\xbb\x02\x5d\x03\x75\x29\xdd\x88\x1e\xf2\xe6\xb2\x99\x5b\x2c\x72\x80\x9d\x6d\xcd\x58\x59\xd7\x57\x51\x74\xef\xec\xc3\x6e\xf5\xdf\x66\xb3\x89\xfe\xb3\x5a\x9d\xdf\x43\x74\x9b\x92\x74\x05\xf0\xa8\x74\x0c\xab\x3f\xb6\xae\x32\x1d\x88\x8c\x0f\x6d\x50\xf1\xe2\xa9\x90\x8f\x9a\x81\x6b\x80\xa2\xb3\x75\x2a\x1f\x21\x08\x10\xc2\x06\xfc\xe7\xfe\xec\xeb\x21\xcb\xeb\x5a\x02\x1d\x1d\xfd\x8f\xff\xff\xff\x39\x22\xf4\x3f\xff\xfe\xf7\xbf\x19\xcb\x89\x4f\x44\x6c\xc5\x76\x35\xf3\xcf\x3c\x7b\x24\x36\x9b\xb4\x5c\xc6\xa3\x5d\xb9\x14\x23\xb2\xf7\x70\x83\x9c\x06\x65\x5e\x3a\xbf\xbb\xd4\x9a\xed\x91\xe3\xea\xa4\x88\x22\xe9\xb7\xa7\x02\xe3\xb4\x20\xe0\x98\x8c\xc7\xf6\xa5\x16\x96\xb3\x69\x4f\xe7\x05\x1c\x50\xdd\x4a\x63\x00\x52\x11\x6a\x2b\x9c\x98\x9b\xc4\xae\x59\x0f\x8b\xd1\x57\xf8\x9b\x8f\x50\x63\xca\x35\x4a\x9f\x15\xfa\x8c\xb0\x70\x46\x70\xad\x38\x9d\xcc\x17\x66\xea\xd9\x2e\x38\xb5\x12\xff\xb3\xf4\xab\x88\xa2\x78\x77\x90\x67\xeb\xc4\x30\xde\xf0\x97\x7e\x24\xca\x4d\xf9\xff\x0c\xbf\x69\xe1\xab\x28\x3a\xec\xd6\x1b\x96\x2f\x3b\xe4\xcd\xdb\xdc\x66\x85\xe2\xde\xb7\xc7\x50\xb8\xf9\xc9\x9e\x8a\xf2\x07\x7e\xf3\x5a\xf2\x2a\x20\x95\x5f\x3c\xbc\x8c\x2b\x59\x77\x15\xd1\x05\x79\x8b\xf3\x8e\x5b\x37\x5e\xb9\xa5\xa7\xd9\xab\x1a\x8a\x51\xb0\x42\xc2\x5d\x88\xee\x58\xd9\xe7\x3e\x3d\x5f\xc5\x45\x14\x0d\x33\x72\x2b\xbd\xc3\xca\xbf\x70\xbe\xf2\xdb\x11\x45\x93\x39\xd3\x95\x19\x54\x26\x4d\x78\xd2\xbc\xac\x00\x3a\xfe\x07\x15\x4b\xfa\x0f\x4e\x62\x88\xa7\x2f\x79\x5c\x10\x7d\x3f\x1d\xa0\x32\x8c\xbd\x18\x66\x55\xa5\xe7\x91\x7a\x4e\xeb\xc2\x98\xc1\x81\x70\xd6\xa3\xc4\x3b\x32\x38\x72\x5f\x64\x9f\x7d\x75\xf3\x3b\xca\x6b\x40\x82\x66\xbe\x9a\x2f\x7e\x19\x05\xe1\xd8\xe2\xf0\xbe\x9f\xac\x80\x67\xfe\xc6\x28\x05\x7b\x3e\x15\x30\xc1\xaf\x93\x15\x72\xc2\x36\xc5\x9f\x13\xd8\x38\xc9\xd1\x7c\x36\x9b\x1d\x1f\x35\xfe\x2a\x20\x9b\x58\x8c\xe4\xe5\x45\x1a\xdf\xff\xe6\x1b\x7a\xd4\xfc\x37\x9d\x7d\x43\x46\xc9\x48\xc9\xb4\xac\x50\x8c\x37\x22\xe3\x51\x0b\x19\xe9\xf8\x08\x91\x87\x26\xa6\xfd\xb3\x4e\x7c\x17\x23\x49\x6c\xd3\x2c\x57\x37\x89\xae\xe1\xf8\x68\x95\x17\x8a\xcb\xe4\x28\x2d\xb6\xeb\x34\x36\x71\xec\x1b\x72\xac\x6f\xbe\x28\x46\x6c\xe4\xd4\xa2\x28\xde\x23\xfb\x1a\xc2\x4a\x56\x51\x14\x24\x7a\x27\x10\xc3\x73\x0b\x2a\x1b\x01\x71\xee\x15\xec\xd4\x75\x6c\xa5\x17\x81\x50\xe3\x68\x84\x37\xb9\xf6\x39\xa7\x4f\xd7\xb2\x4b\xcc\x9b\x25\x8a\xc8\xa8\xef\xf2\x0d\x17\x3b\x15\x97\xd3\x25\x57\x68\x31\x81\x75\x3e\xd0\x7b\xcf\xed\xce\xab\x98\xd0\x6b\x72\xfb\x47\x6e\xdd\xfe\x6d\x7c\xe8\xd2\x1f\xf3\x18\xfb\x46\x47\x1b\xb1\xab\xf8\x6e\x3b\xa2\x1b\x42\x2b\xae\x6c\xf1\x97\xf4\xfe\x8c\xec\x07\xdf\xf6\x26\x34\xb8\x91\x7e\xea\x6f\x7c\x04\x86\xab\xd8\x93\xd5\xe7\xcd\x5d\x06\xdf\x4c\xdc\xed\xbd\x67\xd0\xa8\xc0\x33\x69\x1c\xf3\x85\x19\xbd\x64\x34\x22\x03\x3b\x92\xa3\xff\xf1\x7f\xfc\x5f\x8d\x54\x48\x50\x7f\x64\x39\xe8\x57\xea\xdc\xb4\x5d\x27\x9b\xfb\x41\x4f\xca\x25\x13\xcd\x19\x75\xc7\x90\x7b\xef\xa3\x97\xb1\x51\xf5\xeb\x9b\x39\xcd\x2b\xf5\x6f\xf4\x35\x6d\x6f\xd5\x25\xb5\xd2\xee\xb2\x01\xb2\xad\xa6\x3e\x20\x6e\xdc\x47\xe0\xd8\xce\x5e\x05\xbb\x23\x0a\x3a\xd5\x58\x2c\x81\xb9\x1f\x18\x60\x5a\x5a\xf9\xd3\xde\xd7\xd7\xa6\xb3\xf0\xdc\xd5\x2e\x3b\x8a\xc2\x81\x3b\x9d\x45\x11\x8c\x31\xf3\x57\xf5\x02\x08\x66\x66\xed\x96\xf4\x52\x8c\x25\x49\xf8\x78\x7c\x32\x9f\x2d\xfa\x96\x2a\xf3\x56\x4f\x45\xbf\x99\xcd\x48\xd2\xda\x55\xfb\xc1\x97\xf3\xdd\x9f\xcd\xc8\x7e\xaf\x19\x7b\xe4\xf7\x8c\x65\x6d\x70\xc6\xf0\xba\xf6\x19\x1a\x80\x1e\x6e\x7c\x1e\x24\x1f\x05\x2d\x39\x5f\x56\x06\x23\xc6\x01\xa3\x25\xfa\x72\xe4\xcb\x8d\x09\x7d\xf1\x37\xa5\xc8\x46\x84\x3c\x5d\xe6\x57\xc6\xbf\xd2\xe3\xfc\xaa\x91\x11\xe7\xff\xeb\x65\xc4\x2d\x69\xa8\xb4\x6e\xbe\x9a\x4b\xf0\xc8\xda\x96\xe8\x94\x7f\x57\xe4\xab\xee\x12\xf9\xaa\x3e\x91\x2f\x18\x98\x6f\xb9\x4c\xa1\x72\x9f\x87\x6b\xcb\x82\x9d\x49\xfc\x4c\x1f\xb4\xf4\x8b\x4d\xd7\x6c\x0f\x2a\x8a\x85\xf0\xa2\xc3\x2d\xe9\xc1\x0b\x6d\x83\x8e\x02\x29\x05\xd8\xd1\x6e\x5c\xd5\x03\x48\x4a\xbb\x52\x73\x4f\xb3\xbf\xb4\x4f\x03\xc1\x63\x80\x0c\xd4\x3c\x50\xed\xad\x25\x7b\xee\x4b\xe2\x4b\xa1\x0f\xcb\xec\x8d\x2a\xa6\x33\x79\x4a\x33\x95\x5f\xf1\x27\x08\x39\x3e\x00\xe1\xb8\x4f\xce\xc3\x91\xef\x56\x1a\x3a\x86\xa1\xc2\x5d\xd8\x09\x50\xf6\xfd\xfe\x15\xd7\xe1\xdf\xe6\x71\xf9\xd7\x04\xd5\x46\x04\x5a\xde\x2d\xc9\xe5\x9e\x26\x6a\xaa\xd2\x81\x21\xb0\x8d\x64\x96\x17\x49\x73\xfe\xe9\x24\x49\x49\xa1\x94\xc7\xf0\x7b\xdf\x60\x68\x34\x9c\x5c\x23\x52\x12\x28\x22\x7e\x9e\x97\x3c\x0e\x70\x43\x2d\xcf\x5f\x52\x4f\x26\xe8\xf0\x43\x27\xee\xde\x42\x06\x02\xdc\x4b\x8b\x13\xe6\x62\x51\x01\xbf\xe1\xdb\x79\xc1\x5e\x02\x00\x95\x0f\x35\x2a\x00\xb0\x2b\x08\x19\x37\xa5\x3a\x09\x71\x38\x3c\xd6\xe5\x6e\x38\xb0\x5e\x5d\x7a\x00\xcc\x50\xf5\x16\xd0\x12\x31\xf3\xc6\x71\xa0\x2b\x63\x20\x01\xab\x00\x4a\x62\x72\xea\xc6\xb2\xae\xef\x7d\xd8\xdd\x9f\xcd\x2e\xcc\x8d\x14\x93\xa0\xc8\xdf\xab\xf6\x8e\x45\x85\x3e\x6a\x96\x75\xad\x10\xf1\xfc\x51\xd3\xae\x58\x86\xc2\x6b\x26\xc3\x41\xb4\xd2\x6c\xbd\xd6\xbc\x95\xa3\xc4\x2e\x5b\xf7\x48\xff\x8d\xcf\x78\xaf\x82\x27\xe5\x32\xf6\x32\xf6\xbc\xce\x28\x5f\x44\x30\x94\x81\x8c\x20\x8a\x50\xaa\x61\x8e\x00\xcd\xba\xbd\x57\x31\x90\xef\x40\x5c\x23\x63\x84\xe0\xf7\x86\x7e\x7b\x33\xa2\xb9\xfb\xd4\x95\xe6\x7f\x4d\x24\xef\xc4\x44\x74\xe8\xcc\xca\x8f\x8c\x84\xc3\xc9\xdc\x02\xa9\x07\xe5\x87\x65\xce\x60\xdc\x61\x6e\x75\x1e\x7c\x92\x07\x67\x18\x45\x71\x6c\x8a\xaa\x6b\x07\x7c\xaf\xcb\x7b\x8d\xdb\xc5\x93\x93\x52\x17\xf7\x62\x57\xa8\x7c\x5b\x70\x8f\x4e\x73\x42\xb0\x1d\xed\x7c\xdd\x4e\x36\xfa\xb5\x41\xe1\x8d\x64\xbc\xb3\x61\x4b\xf6\x88\xbb\x81\xe1\x06\x05\xe2\x25\xba\xfb\x4c\x3d\xd8\x50\x4d\x6b\x83\x94\x2b\x8b\x1e\x6a\x7f\x9b\x74\x03\x0b\x24\x39\xbd\x48\x97\x75\x3d\xcc\xeb\x3a\xc7\x9f\x33\x40\x83\xba\x44\x9c\xa8\x06\x71\xcd\x46\x5c\xb9\x08\x00\x40\xb3\x5a\x61\xaf\x9b\x4a\x5d\x16\x9a\x86\xc1\x90\x01\xe4\x41\x75\xed\x80\x20\xfa\xa6\x86\x16\x8c\xe3\xa9\xf7\x48\xec\x4a\x15\x45\x0d\xa4\xaf\x13\xd8\xa0\x81\xc9\xd0\x94\xb3\x63\xd5\x59\x03\x95\x72\xee\xb4\x39\x32\xb6\x03\xd5\xd2\x05\xfe\x39\xc3\x3f\x4d\xc2\x04\x02\x06\x29\xbb\x2d\xc5\x92\x27\xd9\x59\xd6\xc4\x51\x54\xc5\xf6\x03\xef\x9f\x4f\xbc\xaf\xaf\xcf\xf7\x16\xaa\xd9\xe4\xaf\xce\x66\xe7\xbe\x4a\xeb\xd9\x7d\x57\xca\x6c\x3f\x50\xf2\xe6\x16\xef\xc9\xaf\x85\x41\xc9\xa4\xd6\x4f\x2f\x4d\x9b\x1f\x3a\x22\x90\x08\x2f\x41\x87\xbf\x59\xc6\xc1\xf2\x5f\xe8\xa3\xde\x68\x92\xb5\x4b\x25\x74\xe9\xe2\x96\x75\xcd\xa7\xe9\x72\x89\xc8\xc8\x4b\x10\x5c\x9a\xe3\xed\x41\x51\x40\x68\x05\x87\xbe\x9f\x86\x16\xe8\xdd\x5d\xb3\x2d\xcd\xa2\x5b\x78\x89\x0a\xf0\x53\x8a\x1b\x43\x53\xa4\x6f\x1b\xc4\x59\x50\x54\x44\x0e\x73\xc3\x37\x17\x5c\x7a\xab\x5d\x33\xa7\xed\xf4\x07\x64\xca\xc1\xed\xae\x8d\x6a\x4b\xba\x38\xb7\x07\x08\x31\x6f\x81\xe1\xfa\x6f\x49\x86\x3d\xd6\x14\xcf\x40\x3b\xf5\x71\x66\x77\x43\xd6\x00\x01\x84\xcb\x21\xed\xa7\x10\x01\x43\xfc\xbb\x88\xdb\x2b\xff\xe0\x13\x58\x2b\xdd\xc1\x07\x31\xcd\xee\xb7\x06\xfa\x2f\xd2\x9e\x41\x1f\x2e\x71\x40\x66\xfa\x41\x8a\x43\xe2\x43\x7b\x30\x8b\x7d\x0a\xd4\x8b\x5f\x1c\x90\x25\x7d\x07\x31\x8d\x7a\x56\x3e\x59\xe6\x4a\xf4\x38\x74\xe9\xef\x01\x98\x46\x7b\x44\x23\x94\x5b\x2b\xd6\x22\x21\xfa\xd4\xdb\x88\xf2\x41\x99\xf1\x4a\xe1\xc5\x2f\xcd\xcb\xc6\x30\xe5\xb1\x19\xf7\x65\x7e\x45\x15\xe9\x79\x0d\xfa\x6b\x4f\x41\xb6\x0c\xc7\x36\xf6\xbf\xed\xe8\x14\xf6\x59\xe7\x4b\x8f\x58\xcb\xfc\xea\xcb\xef\x57\x77\xbd\xe9\x78\x5b\x0b\xb7\x6d\x7b\xc8\x63\xb2\x70\x82\x4f\x6f\x88\x93\xf7\xcd\xd9\xfc\xb7\xb6\x45\x00\x4f\xfd\x37\x5e\x82\x8e\x94\x2d\xbd\xf5\x04\x14\xf3\x76\xdb\x68\xf8\xd2\xc4\x0f\x16\xae\xcc\xab\x4c\xbb\xa5\x7f\x75\x99\x39\x86\xa4\xd9\x1b\xc3\x36\x82\xb7\x0e\x04\x62\xeb\xed\x8d\x4e\x22\x0c\xd6\xc9\xdc\x06\x19\xf6\x80\x7e\xbb\x04\x9d\x62\x9e\xfa\xdb\x26\x18\x8e\xd6\xa3\x65\xeb\x21\xc8\xbe\x0c\x79\xd4\xd0\xd2\xef\x0e\x39\xfc\x8b\x0c\xcb\xe0\x10\x95\x37\x6a\x9f\x9a\x23\xb9\x9b\x6b\x29\x6d\x9a\x83\xfc\x8a\x8c\xa2\x12\x6c\xfe\x42\xb7\x15\xff\xe0\xb1\xb2\xa2\x68\xd0\xb9\xd6\x77\xe4\x58\x22\x2b\x03\xcc\x0d\xb1\x86\xc1\xfd\xeb\x13\x2d\x01\xa9\xc7\xe6\x76\x96\x42\xd3\x51\x10\x5e\x58\x29\x3c\x48\x30\x3a\x9c\x1a\xdc\x75\xd1\x1e\x5e\x00\xae\x89\x95\x4b\x03\x1a\x8c\x74\xc6\x26\x75\x2d\x0c\xf4\x69\x83\x05\xee\xbf\x99\xe5\xc6\xec\xc7\xcf\x31\x63\x2c\xe6\xac\x94\x00\x15\x88\x38\x40\x04\xb5\xeb\xdf\xe5\x31\x26\xd4\x0c\x08\xda\xcd\x57\xac\x09\x29\xc1\xe5\x95\xe6\x54\xfc\xa4\xbc\x93\x94\x6b\xde\x09\x1c\xa2\xfa\x9e\x54\x51\x03\x1f\xaa\x15\x0d\xfa\x57\x61\xdb\xd6\x20\xd4\x21\x27\xd6\x74\x88\x66\xc6\xe2\xe5\x71\x7e\x05\x6b\x16\xef\xff\xd0\x90\x9d\xd7\x90\x62\x3c\x37\x4d\x31\x79\x9a\x50\x68\x4c\x1f\x2e\xb2\xc5\x1e\x80\x19\x68\xdc\xf8\xb4\x55\xf3\x1b\x4c\xa8\xd1\x08\xfc\x7c\xd0\xca\x78\x9c\x80\x3b\xbe\xbe\x8e\xa4\x40\xf2\x1a\xf1\x53\x11\xa3\xca\xf6\xdc\x07\xf6\x6e\x6e\x8c\x97\x6d\xef\xa2\x68\x50\x3a\x70\x72\x5d\x6b\xe1\x34\x1a\xe1\x7d\xce\xfa\xa7\xb7\x60\xcb\x46\x7e\x13\xdb\x7b\xe5\x25\x1d\x8d\x08\xa1\x57\x22\x5f\xc6\x62\xcc\x8c\x65\xfe\x8e\x66\x7d\x95\x21\x44\x1a\x56\x97\x11\xc3\x4e\x82\x13\xae\xe5\x8b\x54\x7e\x02\x94\xf9\x92\xce\xf0\x96\x0d\xb0\x4f\x34\xde\xb2\x71\x46\x7d\xe6\xc3\x11\xb1\x7c\xc9\xd8\x76\x4f\x1c\x59\x83\x36\x2c\x9b\x9b\xd1\x8e\x2d\xf5\xf2\x01\xac\x2f\xc0\x07\x13\x63\xf6\xd9\xa2\xff\xef\x10\x17\x64\x37\x55\x82\xa0\x00\xa6\x22\x28\x7b\x32\x6e\x2d\x58\xb7\x03\x38\x04\x56\xc6\x38\xb2\xaf\xbb\x83\xd0\xde\xa1\x07\x2f\x1d\x74\x80\x8b\xd8\x8f\x01\xd5\xe0\x7b\xff\x3d\xde\x4a\x5e\x2f\xf3\xab\x7a\x4b\xfe\x71\x2f\xc7\x4b\x3a\xce\xdb\xcb\x74\xc3\x11\xe3\x42\x6f\x73\x6b\x6a\xf0\x75\x77\x5a\x57\x26\xe4\x67\xfb\xb2\x3d\x5c\xd9\x86\xa5\xd8\xe9\x0a\xd6\x0e\xa1\x62\xcc\x56\x08\xd7\x0d\x6f\xbc\xc7\x7a\xad\x50\x35\x64\xf2\x98\x80\xeb\x5f\x6f\xd7\x58\x73\xc4\x7d\xac\x68\x45\x33\x9a\xd2\x1d\x21\x74\xad\xc7\x0f\x29\xd6\x8a\xc7\xa9\x99\xa9\x1d\x7d\x62\x43\x77\x21\x26\x31\x39\x5e\xba\x67\xd9\x28\x5a\xbb\xdf\xc7\x24\x5f\xc5\x57\x22\x5e\x12\xc6\xae\x44\xbc\x26\x64\x39\xdd\x8a\x6d\x4c\xe8\xda\xfc\xdd\x4d\x26\x4e\x8a\xa9\x67\x71\xc8\xd6\x67\xb3\x73\x63\xbe\xb0\x44\x04\x61\x48\x6e\x7f\xa5\xe3\xb1\x7b\xb8\x5e\xb1\x19\xdd\xb2\x19\xdd\xc0\x02\xa0\x57\x90\x97\x5e\x36\x4f\xd9\x1b\xfb\x4c\x70\xe5\x9e\xb2\x57\x27\x97\x51\xb4\xf1\x5f\xae\x57\xba\x71\x61\xc0\x31\x19\x8f\x57\x6e\xba\x2f\x18\x74\x81\xde\x60\x1f\xe8\xc7\xa6\x02\xa7\x09\xae\xf7\xe1\xd2\x19\x78\x24\x33\x42\x6f\xfc\xa8\xb5\x1f\x45\x8e\xb7\x27\x1f\xa3\xe8\xc2\xaf\xd3\x15\xb4\x9d\xcc\x09\x63\x37\x7e\xdc\x8d\x1f\xa7\x9b\xb6\x1d\x2c\xcf\x96\x1e\x30\xeb\x85\x03\x53\x6c\x8a\x21\x54\x8f\x09\xee\x0c\x8c\x5d\xe1\x96\xbd\x66\x30\xa5\x2b\x42\x9f\x30\x98\x54\xd7\x36\xe8\x9d\x2b\x20\x69\x30\xe5\x9a\xc9\xad\x6b\x5d\x60\x5d\x6f\x79\x7c\x4d\x9f\x90\x45\xfc\x9d\x34\x2b\x62\x49\xaf\xe9\x13\xea\x9c\x5b\xd1\xe1\x8c\x58\x63\xc1\xbb\x1f\xb6\xfb\x85\x41\x6d\xd5\xb6\xbb\x13\xf7\x04\x77\xb2\x76\x58\x8b\x46\x30\x67\x64\x5f\xf6\x51\xbc\x23\xff\x0a\x93\x13\xda\x9f\x1d\xf4\x6b\x42\x3e\x99\xb6\x39\x6b\xb2\xa7\xed\xd2\xbb\x3e\x44\xb3\x4d\x20\xdf\x5a\xfc\xd0\x70\xb4\x5c\x12\xfb\x9b\x24\x28\xd3\x03\x00\x90\x54\xa5\x43\xc6\x1b\x79\x20\xbc\x81\xdb\x4c\x1f\x39\xf1\x64\x2d\x3a\x2d\x9d\xe1\x95\xac\xf3\x9c\x12\xbc\xbc\x4c\x0d\x21\x7c\x62\x62\x99\xa1\x98\xfd\xba\x05\x90\xa3\xeb\xe9\xab\xa7\x43\x75\x7d\xa0\x71\x6f\x95\xd4\xe3\xa9\x09\xf6\x23\xb3\xfc\x63\x7b\xaf\xb7\xfb\x61\x01\x2a\x3f\xfa\x57\xd2\x04\x12\x3a\x23\x77\x3f\x23\xb9\x89\x68\xf7\x09\xeb\x0c\x74\xe6\x78\x47\xe9\xe1\xa3\x68\xe9\xb1\x1d\x7e\x76\x9a\xed\x83\x87\x26\x42\x5f\xe1\xbb\xd8\x5b\x04\xfa\xb8\xb5\x1a\x11\xc9\x5b\x4e\x5b\x07\x4d\xf2\x82\xef\xe9\x1b\xff\x95\xea\xd6\x70\x6c\x87\x6e\x59\x06\xf2\x2f\xf4\x78\x70\xbe\xa7\x08\x76\xdb\x56\x0c\xe5\x0c\x38\xc4\x06\x0f\x02\x1e\x60\x5c\xbe\x21\x0b\xcb\xd1\x4c\x7d\x00\x48\x68\x12\x04\x61\x0d\x37\x18\xe2\x5a\x74\x53\x02\xc2\x85\xe5\x4f\xfc\xc6\x9f\x83\xdd\xae\xfb\xd2\xad\x42\x21\x9e\xb4\xc8\xb3\xa5\xc5\x42\xb6\xe2\x3d\x89\x3a\xcb\xa5\x41\x44\x76\xea\x90\xcd\xbd\x72\xc9\xf9\xf6\x91\xd8\x06\x23\xd7\x78\xfc\x3c\x3b\xa7\x77\x36\x93\x9f\x29\x87\x47\xbb\x31\xc2\x41\xd7\x40\x07\xcc\xdc\x8d\xc1\xe6\x0c\x3a\x1e\x11\x82\x71\xd5\x9b\xae\xfd\x48\xd8\xdf\x4c\xe7\x98\x34\x6c\x21\x37\xb8\x90\x7e\xe5\xfc\xdc\xc2\x34\x36\xd3\xdb\x68\x89\x5a\xed\x98\x96\xcc\x19\xec\x79\x19\x27\x6d\x94\xea\x6e\x95\xd2\xce\x5d\xc9\x42\xd8\x6a\xe3\xa5\x42\xd1\xd2\x73\x50\x11\x45\x5b\x54\xf1\x02\x59\xea\x09\x9b\x11\xe7\x3d\x00\x7f\x4c\xe6\xfb\x3d\xfd\x3d\x58\xe9\xe0\x68\xb1\xbb\xcc\x2f\xcd\x18\x9b\x95\xe0\x7c\x75\x90\x3d\x55\xa2\x27\xfd\xd5\xe1\xf4\x30\x3e\x87\x76\x92\xe7\x8f\xcf\xcb\x6f\xd0\x67\x9b\x14\xd9\x3a\x8c\xcf\xd6\x7b\xf4\x02\x7b\xa3\xe8\x47\x65\x6c\xbc\x9c\x0f\x5d\x30\x74\x72\x8e\xad\x67\x9e\x5b\xd6\x6b\xd5\x8b\xbe\x42\x53\x63\x5e\xcc\x1b\xb7\x7d\xd6\x4b\x4d\xc1\x38\x5a\x17\x73\xb4\x2e\xce\x57\xb1\x3a\x29\x16\x71\xce\x66\x54\xb0\xb9\xf3\x62\x45\x12\x75\xb2\x5b\x08\x16\xe7\x4c\x4d\x0a\x32\x9e\x27\x71\xa5\x09\xa8\x15\x07\x03\x8c\xde\x2e\x8a\x74\x31\x5f\x9f\x9f\x2a\x44\x49\x89\x05\xdb\x4d\x0a\x7d\xb3\x51\xa7\x3a\x36\x4e\x9d\x41\xa1\xd3\x5b\x40\xad\x10\xa8\xff\xfe\x39\x2d\xa0\x14\xc9\x18\xa8\xde\x54\x5c\x02\xb2\xe2\x02\x1b\x91\xd8\xcc\x50\x92\x24\xd4\x1a\xb2\x21\x72\x5d\x4e\xd0\xe2\x17\x5a\x31\xb9\x7f\xce\x74\xa1\x93\xaf\xcf\xf1\x7b\x7e\xee\x15\x78\x4c\x74\x8d\xf7\xc7\x71\x35\x61\x5f\x93\xf3\xc6\x59\x97\xe6\xe0\xad\x2d\x9d\x8c\xa2\x9c\x41\x07\xb0\xdc\x93\xa6\xbb\xb6\xa3\x50\xc5\xf8\x5f\xe7\x51\x34\xd4\x3f\xbe\xe9\xd6\x11\xc3\x58\xeb\xae\xb9\xbe\x5b\x4f\x87\xc6\x8a\x13\xa4\xe7\xe6\x05\x33\xc9\x01\x5f\x4e\x50\x2b\xb9\x4e\x52\xda\x58\x16\x27\x05\xb5\x16\xc7\xc9\xce\x53\x43\x79\xd2\x20\xa4\x18\x01\x3c\xc8\x89\x02\x1c\x09\x76\xbb\xa7\xbc\x63\xbe\x6e\x10\x6f\xc0\xff\x13\x09\x69\x6d\x88\x67\x01\xf4\xab\x8d\x4c\xa1\xce\xd9\xad\xef\x0e\xb1\x85\x9f\xdb\x02\x4b\xc0\xca\xde\x1c\x80\x3a\x20\x83\x76\xf5\x7d\xfe\xb7\x74\x33\x9e\xa8\x96\x2f\xb1\x33\x75\xee\xe9\x19\xbd\x82\x56\x40\x5b\x3c\xa4\x2e\xc4\x50\xd1\xe7\xff\x2f\xc6\xe7\x7d\x18\xf3\x8e\x7f\x36\x16\x23\x9d\xa8\x06\x78\x25\x84\x07\xf2\xad\x60\x03\x4f\xc4\x9b\xf4\xb3\xbe\x90\x7b\x72\x16\x1a\x76\xf9\xe5\x0e\x38\x91\xaa\xe5\x67\xf0\xad\x6a\xc8\x87\x91\x3a\x6d\xd3\x4b\xfe\xab\x15\x97\xc5\xee\x61\xdf\xfe\x30\x4f\xfb\x75\xed\x62\x2e\xc4\xf2\x86\x78\x5e\xea\x3d\x2f\x86\xfd\xa5\xbf\xff\x9f\x2d\x3d\xc0\xf9\x79\xa1\x02\xa0\x4e\x35\xbd\xce\x97\x97\x5c\x35\xc8\xe8\xe8\xc7\xc4\x85\x37\x80\x5e\x39\xf1\xd3\x9f\xe5\xe7\xd3\xf4\x42\x5c\x71\x2b\xb9\xf8\x47\x19\x44\x92\x01\xa2\xc7\x32\x41\x2d\x7e\xc1\x98\x09\xb8\x77\xeb\x81\x1d\x79\x9e\xd7\xe4\x00\xe1\x3d\x46\x85\xc8\xd2\x62\x64\x9d\x37\xbf\xce\x63\x7c\x01\x34\xe1\x8c\x95\x8b\x74\xcc\x0a\xdf\x04\x38\x49\x27\x2d\x88\x14\x23\xe4\x1f\xe9\x11\x1b\x81\xde\xf6\x08\xc7\x10\x6a\x34\xcf\x79\xbc\x47\x87\xe2\x90\xba\x66\x3a\x06\x90\xf6\xed\x38\xf6\x0a\x5a\xcc\x12\x3d\x4b\x64\x60\x31\x92\xc1\xda\xa8\x95\xe2\x2d\xa4\x30\x10\xbb\xac\xa0\x12\xcd\x5f\xc7\xac\xb0\x76\x48\x66\x88\x52\x6f\x88\x52\xea\xb9\xd8\x79\xed\x43\xec\x80\x85\x16\x73\x82\x1b\x63\xae\x5e\x32\x63\x04\x0c\xea\xb6\xa8\x48\x6b\x3b\x2f\x49\x39\x61\xba\x15\x34\x9f\xb0\x77\x3e\x92\x81\x1b\x52\x59\xd7\x43\xd9\x75\x94\x87\x80\xb9\x07\x8d\xbb\xc6\x4c\x98\x4a\xc7\x88\xfb\x69\xbc\xcc\xfd\x9d\x71\xf5\x2d\xe3\xcb\x49\xda\x58\x32\xe7\x13\x30\x00\xf3\xc8\xd5\x83\x00\xdc\xc4\x72\x57\xb0\x66\xda\x5e\x1e\x09\x85\x05\x5e\xd2\x0d\xfe\x01\x07\x8d\x79\xe8\x3f\xe7\x91\x57\x1c\x15\xe4\xb6\x41\x3f\x8c\x15\x75\x4f\xbe\x80\xa8\x92\x53\x45\xd3\x96\x13\x48\x2a\x1a\xb0\xf5\x05\xce\x3c\x33\x96\xcd\xd6\xc2\xd9\x2c\x08\xdb\x96\x2a\xa8\xbe\xf2\xe1\x6b\x0a\xe4\x7f\x25\xe2\xd3\xfe\xf3\xbe\x13\xdd\x33\xc6\xd3\x58\x92\x28\x52\x51\x64\x62\x4f\x8a\x33\xa5\x0f\x47\x84\xb2\x8d\x39\x53\x69\xac\x4b\x98\x4c\xd4\x39\x99\xc4\xae\x8c\xc5\x2c\x99\x13\x5a\x6a\x72\x96\x68\x7e\xc6\x94\x73\x52\x78\x66\xeb\x5e\x91\x63\x5b\xa4\x3e\x8a\xa0\x56\x56\x9c\x8d\xc7\xba\x4c\x57\xa4\x2e\x4d\x97\x19\x45\x20\xec\x55\x22\x8a\xf8\xa9\x04\x96\x6f\x91\xc6\x7c\x32\x27\x49\x0a\xd6\xa6\xfb\x92\x19\x10\xf8\xd0\xf7\x26\xf8\x7e\x00\xb0\xa0\xd2\xed\x1a\xf4\xbe\xb9\x03\xb4\x79\x90\x67\x15\x76\x69\xa7\xf1\x0e\x13\x65\xac\x8a\x77\xb4\x4a\xd1\x2b\x84\xef\x4b\x6b\xc8\x7e\x15\x51\x14\x67\x08\x3a\x0d\xc9\x7e\x15\x84\xd0\xcc\xf3\xde\x18\x60\x13\xcd\x06\x0a\xfc\x59\x61\xbb\x7c\x33\xf8\xd6\xf1\x20\x59\x80\x32\xf0\x15\xb8\x5e\x38\xec\x54\xf4\xb5\xee\xc5\x38\xa0\x4a\xc1\xda\xb6\x70\x0f\x08\xf3\x90\x3b\x4b\xf7\x71\x69\xce\x76\xdf\xa1\x9d\x6a\xfb\x16\x5a\xa1\x03\x13\x07\x41\x36\xfd\xfc\x86\x17\xac\x04\xdc\xb7\x7c\x2a\x76\xaa\xca\x97\x08\x91\x94\x7b\x7e\xee\xfa\x80\x02\xc1\x53\x83\x1c\xf7\x92\x4b\x72\xe2\x58\xf4\x37\x2a\x2e\xad\xb7\x00\x3a\x9c\x51\x8b\x1e\x94\xb3\x17\x79\x5c\x52\x89\x0f\x06\x88\xb2\x59\x5a\x37\x69\xf9\x2a\xce\x4f\x45\xb7\x08\x97\x82\x22\xbc\x5e\xe8\xc8\x7d\x38\xa3\x73\x32\x68\xd0\xb6\x3d\x1c\x1e\x48\x9e\x93\xe3\x63\xbb\x1b\x1f\xeb\x2e\xa5\xb0\x1f\x25\xa1\x05\x7b\x5e\xc6\xa9\x5e\x3b\x45\x14\x19\x2f\x0f\x33\xeb\x5b\x73\x58\xd4\xf5\x30\xae\xa6\xd9\xfa\x14\x85\xbf\xd3\x6c\x5d\xd7\x15\xf0\xee\x2e\x20\x8a\x2a\x18\x4a\xcf\x83\x44\x35\xc8\xd9\xbb\x3c\x4e\xd9\x6e\xaa\x84\x75\x21\xed\xc6\xf4\xb1\xea\x0a\xeb\xf3\x09\x9c\x51\x56\x62\x7f\xff\xab\x66\x6c\x7b\xcc\x52\x69\xc1\x0c\x5a\x96\x8f\x3a\x5e\x06\xa6\xb9\x2b\xf3\x3e\x84\x67\x24\x55\xb4\x68\x68\x0d\x1b\xce\xa8\x38\xb5\xe0\x15\x06\x10\x62\x52\x25\xe2\x04\xcc\x66\x4d\xc0\xb8\x4a\xe2\x14\x01\x03\xc0\xe6\x75\x8f\xdb\xe8\x01\x34\x74\x69\x01\x8e\xac\x2b\x7d\x26\x53\x1d\xbe\x62\x25\xfc\xdd\xb2\x5d\xbc\x26\x74\xc3\x52\x7a\xc5\x76\xf1\x8a\xd0\x4b\x06\x6a\x7d\xe5\xe9\x95\x37\xbb\x92\xae\xe8\xa5\x9e\x3b\xe0\xb6\x8f\xe1\x74\xca\x16\x2b\xc6\xd6\x75\xbd\x62\x6c\xa7\xe9\xe8\x9a\xce\x49\xb2\x9a\xac\x4f\xd8\xbc\xb9\xe4\x5c\xb0\xf2\x64\x5b\xd7\xe5\x64\x7b\xc2\xae\x26\xe5\x62\x9d\xac\xe8\x0d\x2b\x27\xf1\x05\x63\xeb\xc5\x36\xb9\x22\xc7\x00\xf5\xe3\xa3\xfc\x5c\x20\xb0\xcf\xc5\xc0\xaf\xff\x82\x42\x8e\x4d\x72\x49\x6f\x4e\x26\xf3\xc5\x64\x9e\xdc\x9c\xce\xc1\xd9\x26\x74\xd8\x88\x68\x33\x9e\x17\xf1\xf2\xde\x7d\x42\xaf\xd9\x7a\xfc\xd1\x3c\x47\x5c\xb3\xb5\x5b\x6a\x4f\xd8\xec\xf8\xc9\xc9\xc7\xe3\xf1\xf8\x09\xb9\xc6\x96\x5f\xd3\x39\x16\xf2\x99\xed\xe2\x6b\x32\xf8\x7c\x5a\x2e\xe2\x15\xbb\xa6\x57\xec\x33\x8d\x2f\x59\xaa\x2f\x35\x57\x63\x36\xe7\x5f\xeb\x11\xfd\x48\x92\x78\xcd\xae\xe9\x96\x7d\x86\x81\x5b\x4e\xd8\x47\x7f\xe1\xbc\x54\x01\xf6\x0d\xef\xb0\xb1\x6d\x70\xc4\x26\xc6\xbe\xd6\x30\x76\xa3\xc8\xed\x0d\x3a\x9c\xde\x4a\x3e\x6a\xb3\xe0\xff\xfa\xaf\xe3\xf1\x58\x91\x1b\x15\x20\x31\xb7\x00\xf5\x75\xb9\x2f\xc5\x92\xc7\x08\xae\xd3\x4a\xac\x8b\xbe\x00\xcf\x01\x7f\xa7\x94\x7d\x00\xdd\x78\xa3\xec\x5b\xea\x8d\x0a\x20\x22\xef\x7d\x33\x73\x10\x73\x80\x50\xde\xed\xab\xbe\x24\xbe\xf1\x0a\x03\x04\x76\xcf\x17\xf4\xb3\xfe\x61\x74\xf7\x84\xf6\x28\xba\x08\xa3\x59\xe1\x63\x0b\xb9\x7f\x23\x42\xa5\x1b\x54\xaa\x6f\x27\x83\xa0\x43\x92\x38\x1e\xeb\x90\x31\x7c\xce\x2c\x04\xa4\x05\x15\xba\x37\x77\x9d\xcd\x4f\xef\x7b\x9d\x6d\xee\x34\x39\x9c\x88\xf3\x19\x2c\xb3\xe7\x8a\x3e\x55\xf4\x4f\xe3\x5c\xf9\x27\xc5\x66\x0d\x7d\x78\x68\x2e\x6a\xf0\x30\xcc\x6e\xb3\x4d\xc2\x01\x3b\xce\x8a\x38\x35\xdd\xd1\xf7\x4d\x1c\xc3\x04\xdf\x0c\xf1\x58\xa1\x1e\x86\x9e\x4e\xe7\xb9\xb5\x42\xc8\x39\x75\xa3\x0f\x3c\x1d\x85\x78\x7c\xaf\x2e\x7e\xaf\x30\x26\x74\x63\xf5\x1d\x88\xb7\x65\x6f\xdc\xa3\x14\x64\xfa\xb3\xae\xa6\x82\xab\xf1\x05\xde\xb1\xa0\xa9\xee\xb2\x63\xfc\x0f\xdb\xeb\x49\xf8\xf9\x5a\x98\xba\x50\x9d\x45\xd3\xb2\x65\x32\x1e\xff\xa4\xf6\xf4\x4f\xb5\xf8\x53\x4d\xc5\xb6\xb2\x4e\xf4\x61\x60\x48\x62\x71\x03\xc5\x75\x59\x7d\x2b\xc5\x6e\xcb\xfe\x54\xec\x56\x6c\xab\xe4\xcc\x44\x9d\xd3\x25\x2f\xd2\x1b\xbe\xd4\x4d\xbe\x48\xb3\x4f\x55\x72\x76\xee\x6d\xd3\xef\x02\xe4\xeb\x56\x69\x20\x6c\x01\xbb\xe8\x8e\x7a\x2e\xdc\x42\x5b\x25\x53\xcd\x6d\x2c\x05\x42\xa1\xb5\xbd\xbe\x9d\xc9\xf3\x69\x96\x16\x45\x1c\x62\x34\x5b\x68\x4a\xe1\x14\xff\x02\xcf\xb0\x3a\xfc\xac\x3c\xc7\x37\xf7\xfe\xf9\x41\xd9\x47\x3b\x16\x67\xe8\xe4\x50\x26\x5b\x17\x39\x94\xe0\xac\xbf\xc0\xf1\xd8\xeb\x05\xcd\xc1\xeb\xda\xfe\x7a\x9d\x17\x3c\x6e\x3a\x4c\xf6\x24\x56\x64\xbf\xca\xcb\xb4\x28\x6e\x6e\xcd\x12\xef\xf8\xc4\xf3\xba\x0c\x23\x04\x7d\xd5\xa3\x64\x14\x76\x20\xd7\x71\x30\xf2\x0d\xf9\x83\x91\xa1\x3d\xee\xf5\x7e\x56\xb1\x1e\x6b\x1c\xe1\x9e\xf8\x3f\xbe\x10\xff\xcb\x17\xe2\xff\xf1\x85\xf8\x6f\x4d\x3c\x8e\x81\xe7\xbd\x33\x5c\x68\x81\xb6\xc6\x71\xff\xf2\x32\x10\x14\x43\xe5\x59\x1c\x3d\x2a\xf2\xed\x96\x2f\xa3\x48\x35\xc6\x46\x48\x72\x81\xc4\x80\x3a\x49\x88\x2b\xcb\xfa\x53\x4e\x54\x2f\xa0\x2c\x55\x86\x8e\x3c\xd5\x64\x44\x86\xee\x5f\x00\x1d\xd6\x40\x55\x98\xbb\x22\xc6\x6f\x52\x79\x99\x97\x0f\x11\x2f\x6a\xd2\x6e\x41\x5f\x0e\x34\x16\x04\xa4\x5d\x6c\x65\x58\x76\xbb\xbf\xa8\x0b\xa3\x79\x15\x3e\x0d\xe8\x4b\x14\xbd\xc4\xd0\xcd\xae\x52\x06\x39\x94\x4f\x3d\x5a\x89\x3a\x4a\x8e\x24\x22\xb8\x1d\x3c\x9a\x59\x2a\x04\x46\xe5\x0d\x0d\x02\xca\xed\x7d\x23\xeb\xd8\x51\x90\x09\xd3\x18\xce\xf1\xd4\xe9\x97\x90\xba\x96\x2d\x39\x93\x9e\xb3\x5e\xcc\x4b\xdb\x25\xe6\xf7\x02\xbd\x7d\xbe\x07\xbd\x23\x3f\xf4\x56\x5f\x27\xbc\xd6\x9b\x57\xd6\x24\x68\xcf\x9e\x06\x9d\xf6\xdd\xbd\x9a\x93\x05\x6b\x5c\x3e\x36\x6e\x82\xc2\x3a\x7e\x40\x27\x91\x36\x95\xef\x08\xf6\x8e\x55\x3c\x68\x97\x1a\x45\xbf\xe1\xdc\x5c\xa4\xd2\x8a\x18\x9f\xeb\x90\xee\xc8\x0c\xfb\x87\x06\xe6\x22\x5d\xfe\xbe\xab\x70\x95\xbc\x13\x6c\xa3\x62\xd5\x14\xd0\xfc\x0a\x14\x13\x90\x25\xfe\x9a\xaa\x50\xb2\x61\x25\x8b\x41\x89\x41\xfb\xcc\x20\x62\x42\x67\x65\x22\xfb\xb7\x8a\xec\x38\x18\x1a\xb7\xca\x1e\x2f\x55\xac\xc8\x58\x75\xe0\x99\x61\xc5\xa6\x9f\xdf\xba\x93\xd1\x87\xb9\xf9\x72\xb9\x93\xb5\x2e\x97\x10\x1a\xb7\xc7\x1c\x16\x66\xeb\x50\x26\xa8\x94\x88\xe6\x0d\xcb\xc6\xf0\x5b\x1e\x72\x91\x66\xb4\xdb\x7c\x0f\x11\xff\x68\x4d\xfc\xc0\x6e\xa3\xa0\x5d\x40\x7e\x42\x61\x92\x21\x10\x79\xd9\x3b\xf8\xb8\xe1\x5b\x63\x71\x62\x14\xa7\x5c\x40\x14\x5d\xc9\xd8\x77\x01\xde\x45\xb1\x6e\x12\xb7\x4b\x03\x9d\x04\x6f\x25\xb4\x85\xbf\x73\xcf\x0b\xb8\xee\x75\x14\x59\x83\x0e\xf6\x52\x80\xa1\xfd\xd0\xf1\xc2\xeb\xb4\x7a\x8a\xc6\x18\x9d\xa0\x98\x90\x41\xcf\x20\xeb\x4d\x7f\xb7\xbb\xba\x4e\x16\x7d\xd3\xed\x9f\xd7\x86\xe5\x1b\x1a\xe5\x32\x24\xcc\x24\x8a\x1e\x02\xa1\x68\x16\x72\x43\x28\x9b\xdd\xf8\x6b\x4f\x9a\xf6\x5a\x89\xa2\x5c\x81\xda\x50\x17\xd9\xc4\xe3\x24\xbb\xbd\x42\x3b\x4d\x30\x1f\x04\x5d\x09\x19\x45\x17\xbc\xed\x96\xf5\xdb\x3b\xa8\x87\xd5\x58\xc4\xd7\xe9\x76\xd3\x7f\x84\xa6\x1b\x72\x64\x3c\x14\xc9\xe9\xf5\x9a\xf3\x02\x1e\x5e\x7e\xb5\xa0\xa5\x1e\x65\x6c\x8c\x03\xfc\x95\x34\x0c\x08\x25\x58\x4a\x79\xc5\x04\x85\xbe\x37\xd0\x08\x9d\x92\x35\x6d\xef\x31\xf5\x0d\x2b\x1f\x1a\x12\xfc\xd6\x38\xab\x75\xe6\xc1\x87\xf0\xb1\x3a\x65\x1a\x80\xac\x0e\xf5\xc1\x70\xea\xd5\x46\xc0\x9a\xfd\x0b\x66\xc9\x3a\x1d\xed\x6d\x78\x90\xa2\x3b\x68\x3d\xdd\x05\x92\xd5\x1d\xd9\xfe\x0e\x1f\x84\xf1\xea\x14\x8b\x9c\xc9\x01\x72\xeb\xd7\x76\xb0\xc3\x3a\x32\xa8\xb8\xa7\xcb\xcf\xd1\x11\x9e\x47\x32\xfe\x00\x1c\xf1\x60\x65\x38\x49\x5c\x07\x4e\xd9\xf9\xc7\x8a\x4b\x5f\x7a\x85\x0f\x28\xdf\x80\xdb\x77\x23\x28\x1a\xce\x69\x6a\xfc\x1a\x82\x1e\x6b\x14\xc9\x21\x53\x0b\x44\x63\x23\x49\x4a\x0b\xf6\xb3\x8c\xb9\xef\xba\x0c\xe4\xc7\x28\x46\x6e\xb9\x34\xdb\x52\x78\x8f\x20\x13\xcf\xfc\xb1\x37\x3d\x84\x1b\x7f\x4d\x16\x4c\x93\x8c\x41\xe4\xca\x3d\xc2\xaa\x79\x87\x2c\x08\xd1\x43\xd1\x68\x8a\x16\xfe\x62\x8e\x37\xba\x9d\x85\xbf\x4e\x1c\xb6\x6e\xab\xd0\xc9\x8e\x9c\xce\xc1\x01\x18\x78\x6d\x0e\x0b\xc3\x95\x12\x5f\xf9\xa5\x3d\x6f\xda\xde\x2e\x4e\x47\x4d\xb2\xa0\xbc\xa1\x40\x2d\x41\xfb\x96\x92\xee\x63\x45\x9f\x1b\xe7\xf9\x2d\xae\x8d\xf4\x45\x28\xd1\x9a\x69\xc3\xbd\x6a\xf2\xed\x87\xe6\x15\x22\xba\x00\xab\x1d\xd2\xc2\x0e\x80\xb2\x02\x17\xe4\x98\x1b\x73\x3d\x2b\x95\xf8\x39\xe7\xd7\x8d\x16\xe9\x55\x08\xc6\x0f\xd2\xff\x3b\xdf\x5b\x68\x8e\xf7\x26\x78\xdf\x19\x83\x5f\xc9\x93\xd9\x22\x67\xc3\x99\x83\x09\xc6\xd0\x53\x83\xf6\x80\x9e\x5a\x90\x3a\x78\x27\x54\xeb\xb5\x30\x20\x22\xa8\x05\x30\x9c\x7b\x1a\xc2\x79\x14\x0d\x57\x76\x05\x37\xde\x28\x01\xa1\x01\x2d\xb9\xfb\x50\x4b\x2c\x34\x09\x34\x76\x22\x3d\x21\xf3\x24\x90\x91\x77\xdd\x17\xaa\x06\x96\x57\xf7\x13\xef\x01\xb2\xf1\x3c\xd1\xc2\x36\x51\xce\x75\xa5\x83\x4a\xb9\xbf\xfd\x7c\x3c\xd2\xd3\xd7\x7d\x85\x0a\x3d\x94\x51\x61\x66\xd8\xce\x4e\x9c\xb7\x5f\x7e\xbb\x86\xd5\x82\xec\xf5\x12\x33\xde\x85\x05\x20\x01\xdd\x5c\xf0\xef\x00\xc3\xe4\x05\x68\x3c\x57\x34\xb5\xc1\x3f\x95\x6b\x3f\x02\x8d\x01\x3d\xc4\xa5\xe3\xea\x44\x34\x6f\xab\x15\x11\x67\x15\x6a\x97\x37\x5e\x99\xbe\xcf\x63\x1d\x4a\x47\xeb\x7c\xc9\x51\x99\x3a\x85\x22\x42\x08\x7a\xc8\x9e\xb6\xb3\x83\x8b\x77\xc0\xa3\x1f\xed\x4a\x53\x80\x74\x62\x69\x5f\x38\x07\x1e\x64\x9a\x33\xe0\x20\x4f\x05\x9b\x9d\x4f\x1b\x61\x11\x54\xa1\xe8\xc8\xb8\x73\x18\x51\x15\x44\x37\x9c\x47\xc3\x34\x4c\x57\x79\x99\x57\xeb\xd8\x77\xd1\xde\xf8\xbb\xb0\xe2\x1c\xfb\xc0\x19\x93\x01\x08\xc0\xc0\x26\xb1\x09\x74\x02\x05\x90\xd9\x78\x57\xeb\x1f\x4c\x51\x6d\xcf\x94\xbd\x85\xa3\x9a\x67\xcc\x69\x2a\x2f\x61\x5b\x54\x7d\xb5\xf5\xa4\x6a\x57\xef\x39\x6e\xf7\x3d\xac\x84\xb5\xa3\x8a\xa3\xdf\x00\x6e\x8a\x06\xb8\x89\xb0\x0d\xa0\xa5\xe7\x37\xe3\x40\x5a\xbf\x25\x90\xc7\x6f\xcc\xf7\x07\x1a\x13\xc0\x5b\xa2\x6f\x85\xba\x56\x7f\xbd\x6d\x7f\xbb\x61\x41\xab\x7e\x75\x4f\x53\x68\x22\x94\x97\x9c\x29\x6b\x7f\x59\x29\xd6\x91\x7f\x50\x89\xaf\x0c\x8a\x3d\xd7\x81\xc7\x84\x83\xbf\xb9\x72\x19\xcf\x35\x3f\x8f\xd6\xf9\x31\xe2\xa1\x9d\x9d\x13\x62\x04\x83\xee\xd9\x44\xee\x81\x8b\x05\xcb\xa1\xfc\x4f\x03\x69\xa7\xab\x5a\xbc\xcb\xe3\x2b\x63\x3f\x87\x5a\x35\x13\x39\x9e\x27\x73\x4c\x5b\x8a\x25\x6f\x40\xef\x50\x34\x8b\x6a\x60\xb0\xab\xd9\x77\x48\xf3\x3d\x6f\xda\x7d\x1a\x5d\xec\xec\x9c\x0a\xa6\x8e\xc5\x89\x3c\x16\x56\xfd\x20\x0d\x5d\x91\xb8\x27\x45\x4d\x96\xc8\xa0\x64\x62\x9c\xa2\xf7\x3a\xe3\x28\x2d\xf5\x5c\x57\xb9\xea\xb8\x6c\xf3\x21\xe0\x94\xcf\x1c\xe3\xc6\x1f\x9f\x73\x16\x1a\x4b\x3f\x62\x6c\x4e\xd6\xfc\x4f\x6e\x3d\xab\xcc\xec\x23\x5f\xe0\x4b\xac\x8c\x22\xe9\x5c\x52\x39\x97\xf5\xb9\xd9\xcb\xcf\x51\x3f\xe6\x82\xcb\xaa\xae\x7b\x02\x8d\x6a\x59\x37\x82\xa9\xc6\xd1\x8b\x27\xa0\x01\xfd\x69\xeb\x10\xeb\x9d\x20\x9f\xa3\xe8\xa7\xd2\xbd\xd7\x7a\xed\x90\x52\xcf\xaf\x55\x65\x90\x27\x9e\x0f\x2d\x9d\xe9\xa1\xcd\x24\xc7\x25\x39\x6d\xe2\x16\x90\x2f\x89\x9b\x90\x31\x2b\xa9\x2d\x76\xcc\xca\xa6\x4c\x75\x12\xf8\xe5\x92\x5e\xab\xc2\xca\x83\x84\xe4\x36\x16\x2c\xd7\x13\x23\x75\xdd\x74\x4e\xc8\xc2\xd4\x66\x52\x19\x4d\x7c\x81\x08\x16\x84\x36\x79\x19\xca\x8d\x5e\x06\xed\x49\xa0\x32\x67\x13\xe2\x37\x03\x8f\xe5\x63\x5b\xa1\xa2\x8a\x4e\x0e\xd6\x37\xa3\xad\x1a\xdf\x09\x5b\x9f\x5f\x87\x59\x9d\x7e\x81\xb4\x0a\x3b\x34\x48\xa3\xa8\x3a\x54\x49\x6a\x2a\x99\x66\xa2\xcc\x52\x15\xc3\x96\x48\x4d\xbf\x2a\x53\x9f\x8b\x0d\x32\x57\x26\x2b\xe9\xeb\x3f\x6a\x0b\xe4\x5d\xaf\x45\x85\x5e\xd9\x27\x05\x96\xbc\x30\x7f\xc7\xac\x4c\x94\x0d\x1c\x17\xb0\xcc\x61\x1d\x76\x3d\x02\x01\x58\xab\xe7\x04\x5e\xda\x2d\xdc\xbf\x3a\x07\x57\x7d\xbe\xab\x0f\xb9\x54\xca\x57\x71\x0e\xee\x94\xf2\xc6\x9d\x92\xf9\x39\xce\x6d\xab\xca\x03\xad\xa2\xc3\x58\x9d\x94\x9e\x94\x51\x9d\xb2\x32\xf4\xa3\x29\x4c\x40\xe3\xe5\xc9\x71\x6e\x68\x5f\xdf\x38\xae\x34\x07\x74\x5d\xc7\xee\xb7\xa6\x95\xc7\x93\x39\x63\x17\x22\x4e\xa9\x24\x51\x94\x1a\x67\x33\x01\xb9\x86\x09\xb8\xed\x3a\xa1\xea\x38\xf7\xf4\xe9\x4b\xcb\xed\xa6\x26\x82\x7d\x4a\x07\xcc\x73\x23\x65\xfa\xd0\xeb\xf4\xaa\x71\x6f\x65\xbd\x33\xc6\xaa\xad\xf5\x05\xdb\xaf\x51\x62\x68\x3d\x33\x84\x69\x29\x3e\xb5\xc8\x96\x03\x30\x5d\xa8\x3c\x2b\xcf\x91\x2e\x7a\x65\x79\xee\x6c\x65\xdb\x97\x8e\x60\xa6\xe5\x34\x6d\xd5\x02\x27\xeb\xe7\xba\x96\xec\x10\xe9\x35\x4a\x22\x88\xc3\x27\x28\xac\x8c\x44\x36\x0e\xd1\x10\x96\xb3\xdb\x4f\xcd\x39\x82\xd3\xa1\x62\x0c\x0e\x87\xa0\x34\xb0\x75\x1c\x32\x1c\xc2\xf2\x74\x06\x7f\x05\x3a\xbe\x36\x76\x8f\xc1\x20\xb2\x62\x9c\x9e\x09\xcc\x3b\x51\x54\x8c\xc7\xd6\xf1\x4c\x31\x51\x03\x35\x66\x39\x95\x63\x96\xa3\xfd\x98\x23\xc3\x92\x80\x11\x99\x29\x3b\x2e\x4f\x66\x8b\x59\xe2\x55\x11\xd4\x21\xc7\xac\xfc\x2a\x3d\x13\x13\x48\x37\x4f\x66\x04\xab\xa3\x7a\x6f\xef\x0f\xf4\xde\xf3\x7a\x2b\xdb\x0f\x3d\xc1\x24\x4a\x36\x33\x13\xa9\x7a\xde\xcb\x14\xbc\x95\x99\xc3\x5a\x9f\x4e\x7a\x43\x80\x3b\x12\xb7\x17\xc6\x63\xe9\xd4\xf0\x3c\x07\xb8\xb2\xef\xe5\x45\x81\x5d\xe8\x2f\x32\xdd\x9a\xc7\x6a\xd6\x8f\x61\xae\xaf\x88\x36\x25\x8a\x39\x3b\x09\x21\xb8\xf1\x96\xe1\x3d\x0a\xab\xee\x9b\xb8\xea\x55\x6c\xed\x7d\x16\x41\xa4\x08\xf5\x36\xff\x93\xc7\x3e\x51\x33\x08\xfd\xb7\xcd\x6e\xf8\x25\x8f\x15\x39\x96\x43\xe6\x5c\x27\x1c\x4b\x26\x3d\xbf\x2c\x60\x5c\x20\xeb\x1a\x00\x36\xad\x0d\x62\x14\x8d\x94\xdc\x81\x56\x61\xd7\xde\x33\xbf\x2c\x85\xfc\x7f\x79\x7b\xfb\x2d\x37\x6e\x64\x4f\xf0\x7f\x3e\x45\x31\x8f\x6f\x4e\xa2\x09\x52\xa4\xfa\x7a\xe6\x4e\x56\xa1\x78\x64\x4b\xb2\xdd\x96\x2c\xb7\x25\xdb\xed\xa6\xd8\x3a\x59\x24\x58\x84\x95\x04\xd8\x48\xb0\xa4\x72\x91\x8f\xb0\xe7\xcc\x23\xec\xd9\xb3\x4f\xb2\x8f\x32\x4f\xb2\x07\x11\x00\x12\xf9\x51\x25\xdd\x9e\xd9\xfd\xa7\x8a\x89\xef\xcf\x40\x20\x10\xf1\x0b\x3e\x06\xdb\x9f\x2a\x81\x27\x8f\xba\x38\x10\x0f\xd9\xfb\x2d\x48\x3d\x9c\x6b\xc9\x60\xa5\x10\x79\xab\x6c\xef\xae\x96\x63\x53\x5d\x37\x01\xba\xd0\x6d\x86\x54\x66\xec\x6c\x6a\x92\xe6\x5a\xbc\x71\xce\xef\x2b\x47\x8d\x1f\x56\x4d\xb4\x0c\xae\x62\x26\x60\x67\x3a\x6d\xbe\x22\x04\xfd\x36\x06\x11\x8c\x43\x3f\xa9\x6f\x1c\xa0\x25\x0c\xc7\x15\x3d\x30\xd0\xc2\x52\xb4\x20\x8e\x95\x9a\x31\x76\x00\x9d\xa3\x34\xcd\xca\x5a\x93\xec\xe0\x40\xad\x2c\x9f\xe9\xad\xef\x6c\xca\xd5\xd6\xb9\x98\x07\xb7\xa7\xd4\x2b\xef\xf5\x78\x3d\x1d\xfb\xb8\xc1\x01\x2c\xfa\x90\x27\x6e\xcb\xd9\x00\xdd\x33\xcb\xd4\x78\x15\x5f\xc3\x9d\xca\x42\x43\xe3\x8d\x8c\x57\x35\x54\xfe\x21\x72\x11\xaa\x7b\x40\xf2\xe2\x19\xca\x8c\xca\x0c\xc0\x88\x69\x87\x68\x06\xc8\x0f\x69\xea\x1f\x18\x1a\x80\x10\x19\x21\x04\x21\xf3\xb6\x02\xb0\xed\xe1\xff\xf7\xfc\x96\x56\x08\x15\x4b\x50\x2a\x1b\xae\xa1\x6b\x5d\x5c\x5f\x83\xd1\xd6\x70\x76\x3f\x90\x55\x5f\xf2\xe9\x89\xd0\xd9\x74\x4a\x6a\xc6\x6d\xb8\xd6\xd0\x54\xaf\x22\x57\xe2\xe7\xa0\xfa\x20\xec\x94\x3a\x39\x8a\x07\x13\xfd\x42\x64\x36\xe9\xaa\xa8\xf8\xd9\x2c\xf7\x62\x20\x27\x32\x97\xd7\x76\xc7\xce\x7b\x43\x2d\xc3\x29\xe7\x4d\xd1\x21\xb9\x53\xf3\xa8\xf5\x1f\x55\x76\xc5\x29\x98\xb0\xe5\xb5\xfb\xc3\xd5\xa1\x82\x57\x87\x81\xbf\x49\x04\x27\xc4\x83\xe7\x26\x4d\x9f\x9b\x89\x11\x3b\x7e\x29\xc6\xff\x3e\x9d\x82\x49\xc5\x9e\x67\xcf\xcd\x64\xaf\x2a\xaa\xc9\x5c\xb2\xc4\x68\xb1\x2f\x79\x92\xbf\x30\x69\xfa\xa2\x2f\xf5\x8b\x90\x3a\x93\x2c\x59\xab\xc3\x55\xc9\x13\xfa\xdc\xb0\x3b\x9b\x36\x17\x74\xaf\xaa\x5c\x9f\x48\x6e\xa3\xd1\x53\x50\x42\x5f\x74\xa2\x07\x7e\xb9\xf3\x1a\xe8\x94\xdd\xcc\xcd\x64\xc7\x4d\xf1\x3d\xbf\xcd\xcd\x64\x65\x74\xf9\x3d\xbf\x8d\x34\x2e\xed\xd4\x3c\xd5\x6a\x9f\xa6\xff\x54\x20\x2f\x6e\xe2\x79\xf9\xea\x50\xb8\x5a\xda\xcd\xe0\xe1\x7d\x35\x21\x00\xe9\x96\xed\x79\x06\x31\xce\x12\xa9\x5c\x12\x0f\x68\xa0\xc9\xc5\xd4\xae\x40\xa7\xde\x87\x69\x4b\xb0\x45\xa2\x9a\x5c\x86\xb8\x8b\x29\x99\x77\x85\xba\x2d\xca\x43\xcb\x7a\xe4\xe9\x81\x7d\xdf\xc4\xb2\x5e\x91\xbb\x0a\x3d\xcd\xf4\xad\x51\x10\x2f\xc2\x9a\x80\x50\xb7\x24\xec\xe2\xfd\xab\x08\x6a\x55\x11\x32\xeb\x81\xd8\x08\x11\xb9\x75\x59\x6b\x85\xe1\x41\x28\x5a\x13\xa5\x95\xff\x45\x46\x9d\xd8\xdf\x42\xec\x6f\xe4\x62\x36\x4d\xd3\xec\x2b\x91\xad\x08\x1d\xca\x34\x0d\xdd\x19\x3f\x9e\x4e\x2f\xca\x34\xfd\x8a\x87\xd3\x9d\x56\x80\x43\xfa\xdf\x19\x2b\xe6\xf7\x6c\xb0\x86\x85\x41\xd8\x20\xa2\x89\xbe\x8b\x10\x43\x79\x2b\x94\x9c\x08\x19\xdc\x3f\x5e\xe0\x9a\xaa\x67\xbc\x0e\xb4\x95\x1e\x57\x4e\x4f\x60\x46\x06\xdf\xdc\x37\xb2\xdf\xf4\x8f\xac\x77\x64\xb5\x22\xf9\xfd\xa0\x0c\xf5\x6a\x28\x9c\x2e\x2d\xb8\xbb\xf1\x5e\x35\xe9\x81\x15\x6e\xe1\xfb\xf5\x38\x10\xf0\x94\xed\x29\xda\x3c\x2b\x31\x49\xbc\x90\x69\xc5\xca\xcb\xf1\x6c\xbe\x5a\x94\xcb\xdc\x19\x1b\x6a\xaa\x09\xc9\xb3\xca\xa5\x8e\xdd\x6b\xd4\x21\x68\x45\x68\x29\xee\xf5\xbc\xae\x03\xbd\x61\xfa\x3d\x57\x94\x36\x8c\x48\x96\x68\xbe\x32\x09\x28\x60\x57\x2c\xae\x85\x6a\xe6\x4e\xdc\x21\xa8\xce\xd2\x92\x8d\x67\xb5\x81\x80\x23\x08\xc1\x68\xc2\xe3\x37\xfc\xaa\xf4\xfa\x89\xc9\x34\x19\xc4\x66\x14\xd0\x88\xe3\xb1\x80\xeb\x8c\x5c\xcf\x7f\xe6\x59\x41\x2b\xba\xf6\x76\x78\x6b\x34\xc2\xcb\xd7\xe1\x32\xeb\x09\x54\xa8\x60\xeb\x5b\xb7\xe1\x19\x1a\xde\xd1\x29\xc8\xed\x0b\x1a\x42\x00\x2a\x82\x7c\x56\xd5\x5b\x5f\xf5\xd6\x55\xbd\x75\xb0\xc7\xcc\x25\xd0\x64\x20\xe6\xf6\x06\x54\xda\xd9\xf1\x70\x69\xf4\x0b\x1b\xfb\x94\x67\x2b\x7f\x4f\x5d\x54\x4b\x42\x4b\x42\xef\x70\xf1\xe4\xc3\x19\x55\x5a\x5c\x0b\x99\x27\x7f\x82\x05\x96\x9c\x08\xc9\x57\x11\xfe\x81\x9d\x50\x6f\x8d\xd9\x22\x66\x8d\x35\x51\x57\xe5\x6f\xd0\x65\xb8\x1d\xfb\xb0\x72\x34\x23\xf6\x68\x78\xb0\x7a\xbf\x00\x49\xfe\x8b\x2d\xb2\xa4\x15\x2d\x15\xc9\xb3\x92\x4d\xb1\x3f\xce\x12\x75\x51\x2d\x6d\x51\xa5\xaa\x73\x38\xd4\x72\x74\x81\xbb\x67\xea\x93\xce\x7f\x76\xb1\x7a\xe2\x4d\x66\x3c\xc5\x1c\x8d\x76\x74\x15\xad\x28\x5c\x77\x76\x76\x51\xeb\x36\x58\xf5\xae\xe8\x86\xd4\x37\xec\xfa\xa4\xab\xb1\x3f\xf0\x12\x83\xa9\x37\xd4\x00\x97\xb0\x61\x26\x2a\xf2\xae\x7e\x6b\x03\x09\x5b\x87\x27\xa2\xc0\x35\x3d\x13\xf6\x6e\x1b\xf1\x57\x54\x4f\x56\x5b\xaa\x08\x5d\x87\x68\x13\x47\x1b\x17\xbd\xad\x11\x1e\x56\x74\x4d\x68\xf4\x4e\x0b\xdf\xbb\x86\xb7\x04\xbb\x54\xbd\x3d\xc0\x4d\x1d\xc3\xe1\x2a\x00\xe8\xa5\xd1\x8b\x5c\x33\x3d\x39\xdf\x5d\xb0\x9b\xf3\x9d\xbf\xb9\x5c\x33\x68\xd4\xce\xb5\xe7\x8a\x6d\x54\x76\x4d\x6d\x9b\x06\x5b\xc6\xf6\x73\x27\x12\xac\x77\xca\x8e\x5e\x01\x36\x87\xfd\x4f\x48\x7e\xed\x97\xe1\x95\x25\x90\xf7\xa6\x85\x52\xf7\x54\x11\x80\x42\x09\x0f\x0e\xcd\x1c\x48\x25\xfc\x22\xf5\x94\xad\x67\xad\x0a\xdc\x1f\xad\x65\x49\xc3\x82\x3d\xd5\xef\x6c\xe1\xbd\xc5\x44\x22\xa7\x5b\x56\xd1\x77\xec\xd6\x6f\xd8\x0f\x0c\x1e\x1f\xfd\xbe\x19\x32\xe9\xcc\x9f\x6a\x8a\x84\x9a\xdb\x0d\x82\x64\x1c\x6f\xf7\x2c\x22\x23\xa6\x43\x46\x4c\x83\x8c\xec\x79\xf6\xcc\xd7\xfa\x8e\x5c\x4e\xe7\xd9\x07\xf6\x0c\x4d\xcb\xdf\xb1\x6b\x9e\xdd\x7a\x96\xc2\xa7\xb2\xb4\xd9\x26\xf1\x79\xd8\x8d\x4d\x04\x9c\xc5\x33\x67\xfc\x7d\xca\x04\x6b\x8f\x15\x21\x8b\x32\xd8\x93\x43\x53\xde\x11\xfa\xa1\x1e\x5b\x61\xc7\xaf\x84\xf7\xa5\x95\x77\x52\xf0\x4b\x66\xaf\x0e\xe7\xd9\xca\xe9\x93\xad\x27\x46\x1d\x8f\xf8\x75\xb1\xc6\x57\xcd\x34\x8d\x0e\xe9\xef\xdb\x6e\x36\x76\x8c\x89\x34\xbd\x71\x7e\xd9\x66\x5f\x4e\xa3\x21\xdf\xd6\x57\x99\x0b\xf0\xa0\x39\x1f\x3f\x9e\xe6\x21\xec\xd2\x3b\xd2\x9c\x3f\x9e\xe6\xd3\xc1\xf6\x73\x2a\xca\x54\xcf\x83\xd1\x88\x6d\xa9\x6d\x01\x34\x01\xa0\x88\x03\xed\xb8\xb2\xfb\x9c\xf7\x31\xcd\x96\x43\xda\xb1\xd9\xa3\x29\x85\x63\x16\x84\x97\x31\xb4\x7f\x97\x7b\xb2\x57\xca\x84\xde\xf6\x45\xd9\xe3\xff\x1d\xa1\xc5\x64\x2b\x2a\xa3\xf4\x2d\x6c\xca\xd7\xbc\x7c\x05\xab\x95\x85\x1b\xdb\x6d\x9b\xb7\xe3\xe4\x0e\xd8\xfe\xf9\x8d\x65\xe2\xaf\x32\x0e\x7d\x78\x87\xc9\xae\x6a\x5e\xa5\xd9\xf4\x77\xb4\xcb\x81\x84\xd6\xf5\x33\x27\xef\x02\x13\x22\xe9\x8a\x9c\xec\x3d\x84\x4a\x92\xff\x6a\x2b\x07\x90\x5f\x37\xaa\x69\xfa\x15\xb8\x03\x70\xae\x7d\xed\x5d\xe4\x71\x5e\x81\xa6\x15\xb6\xc4\xf6\xec\xa5\x58\xaf\x4b\xfe\x54\x7d\x90\x35\xdf\x0a\x76\x5b\x5f\x79\x08\x32\xf9\x00\x08\x70\x0f\x13\x47\x3b\x95\xfe\x39\xff\x30\x7f\x8f\xd7\xa5\x16\xfa\x87\x63\xde\x78\x59\xdc\x0a\x79\xfd\x55\x79\xd0\xcf\x6e\xb8\x04\x4f\x46\xf7\xc2\x5d\xde\x93\x07\x95\x2f\xef\x2b\x6f\x46\xbf\xd6\x00\x65\x8b\xd7\xba\x53\xeb\x91\x69\x15\x49\x12\x3c\x9c\xa9\xa8\xef\xf3\xb4\xbe\xdb\xff\xd6\xbe\xc2\x0f\x67\x27\x30\x66\x42\x32\xbe\x29\x95\xd2\x91\xbd\xf0\xf5\xc1\x18\xae\xab\xfb\x0e\x47\xef\xeb\x36\x60\x62\x48\x98\x33\xe3\x2d\x5a\x6b\x3e\xd2\x32\x78\x9f\x72\xa1\x27\x36\x99\xba\xf4\x7a\x1b\xc7\xe3\x50\x2a\xd0\x16\xf1\x72\x8d\x5f\xa0\x60\x35\x46\xeb\xd4\x71\x11\x49\x56\x83\x08\xb1\x64\xd3\xf3\xf2\xa2\x3e\x1d\x7d\xfb\xc3\xc3\x71\xe9\x81\x69\x8b\x10\x17\x41\x57\x95\x20\x53\x3e\xa4\xe9\xe1\xe1\x1e\x5f\x7a\xbf\xeb\x2b\xf6\x32\x7a\xcd\x5a\xb3\x4e\xcd\xb6\x48\xef\x95\x59\xc0\xbb\x02\xa7\x2b\xba\xa6\x86\x50\xe8\x4f\x3c\x8b\x6b\xdd\x78\xcd\x75\x93\x9a\x60\x49\x5f\x97\x62\xf5\x3e\xb1\x7c\x2b\xec\xde\xad\x8e\xd9\x92\x4d\x4b\x50\x01\x20\x15\xda\x92\x92\xa1\x93\x50\xa4\xe9\xb0\xd2\xb5\xfa\x20\x08\x02\x60\xa1\x53\x95\xa6\xd9\x56\x47\x9b\xc7\xe9\x6b\xa0\x80\x00\x18\x65\x8f\x77\xfe\x46\x17\xb2\xda\x80\xe7\xd1\x92\x43\x25\xe0\xd0\xaa\x71\x99\x25\x28\xfb\x91\xe1\x55\xde\x49\x16\x9e\x8b\x92\xdb\x54\x76\x5b\x47\x41\x91\x15\xb6\xcf\x42\x0b\xf6\x44\xeb\xe2\x16\x20\xe1\x41\x24\x1c\x5d\x54\xa4\xc3\x4e\x0c\xe3\x5c\x94\xa5\xfa\x60\xef\x42\xb6\xb4\x37\xb7\x7b\x5e\x1d\x8f\xe3\xd9\x90\x5d\xa9\xec\xa1\x44\x14\xf1\xfe\xeb\xa7\x05\xfe\xe1\xac\x6e\xe2\x40\x4d\x94\x2c\x55\xb1\xb6\xc4\xcf\xf4\xb8\xf2\x54\x13\xcd\xab\x43\x09\xe7\xf6\xa3\xc5\xdb\x8f\xd3\xe9\xf8\xed\xc7\xe9\x7f\xbc\xfd\x38\xe5\xe3\xb7\x1f\x67\x9b\xe5\xdd\xe3\x93\x47\x26\x07\x25\x54\x96\x24\x84\x16\x0b\xb9\x64\x9c\x8e\x46\x15\xf3\x0b\xa8\x74\x40\x20\x9a\xbd\xf0\xf4\x4a\x13\x6a\x54\xae\xbd\x97\x82\x16\x92\x5e\x81\x98\x6e\xa6\x0f\x2c\x8f\x90\xc0\x2a\x23\xe6\xfd\x69\xf0\xc2\xc3\x55\x95\x84\xfe\xda\x00\x65\xfc\x49\x67\xa5\x87\x76\x57\x80\x8d\xfa\xa4\x72\x12\x9c\xd3\x89\x1e\xd8\xf4\xfc\x70\x21\xce\x47\xa3\x03\x29\x33\xb9\x38\x2c\xe9\xa1\x76\xbf\x60\x7a\xae\xad\xa0\x19\xd9\x76\x4e\xa4\xc9\x65\x2d\x88\xef\xcb\x65\x57\x20\xa0\x66\xdd\x43\x2f\xdb\xda\x96\x0d\x52\x0d\x72\x4b\xb1\xc9\x8a\xf6\xfa\xbc\xf6\x2e\x11\xde\x00\x08\x20\xb9\xbf\xcd\xc3\xec\x66\xce\xdd\xe5\x31\xe7\x5e\x72\x83\xf8\x8d\x2b\x70\xfb\x59\x35\x7c\x56\xd8\x09\xff\xa6\x31\x8e\x96\x67\x5c\xc1\x32\xc6\x31\x5b\xd5\xc4\xe6\x40\x02\x5a\x58\x92\xd0\xd5\xe2\xe0\xa1\x74\xf0\xb7\x73\x43\xaa\x8b\x6b\x70\x04\xdb\x71\x20\x51\xd0\xa4\x00\x21\x66\xe2\x7d\x18\xc4\xda\xbc\xcd\xf1\x70\x64\x9d\x93\xbb\x53\x4c\x52\xf6\xad\xe7\x2c\x5b\x99\x57\xee\xca\x3e\xa5\xff\xd3\x97\x2d\xd6\x1a\xaa\x43\x1d\x20\x7e\xa8\x76\xe7\x28\xd9\xbd\x9a\x72\x86\x5c\x3c\x46\x60\x8a\x38\x98\x19\xaa\x8f\xc7\xbf\x64\x9c\x82\xae\xbf\x39\xc5\xb5\x75\x79\xad\x21\x33\x8d\x5e\xf4\xe8\x77\x9a\x6e\x09\x5d\x35\x51\x03\x4a\xbb\x7f\x01\x62\x68\x79\x1d\x10\x9c\x46\xde\x81\xc2\x2b\x69\xa6\xe7\x86\x75\x14\x07\xf3\xfb\x15\xf8\x6c\x37\x09\x60\x0e\xd5\x1a\xdc\xf7\x77\x09\x75\x40\x7b\xa2\xa3\x87\x14\xe8\x4f\xa3\x12\x66\xe8\x3f\x9b\x80\x22\x3d\x4a\x9f\x9f\x18\x2a\x2c\xe7\x53\x63\x05\x1a\xa6\x96\xb5\x85\x8b\x9b\x66\x53\x7a\x85\x33\x3f\x50\xf3\x2b\xcd\xc6\x93\x2f\xff\x9c\x6b\xfb\x6b\xf6\x65\x7e\xc0\x90\xff\x96\xaf\xd3\x34\xb3\x3f\x67\x8f\xfe\x8c\x27\xcb\xad\xee\xea\xbc\x30\x8e\xca\xc7\x4f\x79\x69\x8a\xbf\x81\xb3\xdf\xfa\xfb\xb7\xd8\x0a\x1e\xd4\x3e\x2c\x8b\x64\x0a\x51\xda\x5f\xc5\x47\x01\x68\x3f\xdf\xbe\xfa\xe9\xbb\xbf\xbf\xfa\xe1\xcd\x93\x17\xef\x9e\xfc\xed\xbb\xd7\x5e\x37\x04\xd2\x45\x8a\x21\x7d\x59\x7f\x79\xf6\xd3\x9b\xef\xbe\x76\x19\xe7\x3a\x64\xcb\x9b\xea\x24\x75\x8b\x08\xbd\xfb\x98\x1b\x7a\x9b\xeb\x53\x04\x71\xf4\x4e\xd7\xd6\xf7\x92\xdd\xc2\xf1\x6b\x4f\xb5\x8f\x60\x40\x7e\x1b\x3f\x98\xa2\x74\xcb\xcb\xe6\x0e\x41\x49\x14\xa6\xf8\xb2\x6c\x28\xff\xae\x43\x2c\xbe\x91\x85\xe8\xda\x64\x56\xa4\xe9\x01\xe4\x98\x6b\x7c\xa9\x4c\xd3\x9b\x34\xad\x08\xcf\x6b\xfc\x4e\x33\x31\x85\xbe\xe6\x86\x6e\x18\x32\x4e\xe7\xdb\x21\x2b\xcf\xb7\x6c\x1b\xbf\x83\xf9\xf4\x7b\x36\x3d\xdf\x5f\x6c\x3c\x25\xdb\xe3\x83\xf1\x66\xb1\x47\xe4\x57\xc6\xb6\x31\x51\x59\x1d\xb4\x2d\xe1\x57\x3b\x3e\x6f\xa0\x16\xb6\x45\xfe\xf9\x8c\x9f\xb0\x79\xe0\xf9\x72\x85\x7a\xe9\x43\x76\x15\x20\x3d\x6c\x9b\xd3\x74\x57\xab\x02\x37\xd5\xa4\x23\xb5\xdb\x91\xfa\xd3\x95\xa6\xcd\xa1\x18\x37\x87\xc2\x9e\x7f\x37\x9f\x2a\x0a\x8c\x4a\x44\x5c\x16\x6e\xbb\xc6\xa0\x83\x81\x89\xf3\x51\xb5\x26\x8e\xa7\x45\x28\xd8\xa2\xa1\x34\x8f\x26\x8d\x38\xe6\xa1\x6f\xb0\x02\x76\x0c\x1a\x7c\xdd\xd1\x3c\xbe\x62\xd7\xa3\xa2\xf7\x31\x75\xb0\xbb\x98\xce\xaf\x63\x7d\xf1\xeb\xd1\x6e\xfc\xe5\x94\xe4\x57\xb1\x90\x25\xb2\x78\xbd\x1a\xed\x46\x5f\x4e\x09\x0d\x24\xf3\xda\xa3\x2d\x5c\x9d\xc8\xe9\x5a\x5f\x3c\x9e\x06\x2d\xa6\x46\xc3\xe7\xad\x7e\xc4\xa3\x43\x8b\x86\x25\x40\x34\x07\x3e\xe6\xe9\xdf\x98\x08\xbf\x7f\x63\xea\xbe\xcb\x4e\xd0\xcf\x68\x54\xe6\x79\xa8\xb8\xce\x71\x23\x05\x35\x71\xad\x8d\xb8\xdf\xa8\xb6\x14\x20\x54\x9e\xa6\xe6\x51\xf8\x38\x1e\x79\x1d\xf5\xb7\x34\xe5\x21\xea\x6f\x83\x66\x7f\x8b\x8e\xb1\x03\x00\x4c\x5c\x69\x96\x5d\xe9\x3f\x5d\xeb\x91\x26\x8f\xb2\x6b\x3d\x9a\x11\x3a\x1a\x5d\x6b\xcb\x25\x81\xf3\x2e\x92\x67\xa1\xc8\x51\x3c\x08\x23\xa6\x48\x7c\xd9\xff\xa0\x63\x20\x9b\x0a\x30\x17\x13\xc6\x2c\xcf\xa9\x36\x67\xc0\x78\x18\xb6\x92\x0b\xb3\x8c\x6e\x4f\x6d\x67\xaa\x31\x8c\xa8\x7f\x19\x6b\x0b\x82\xa9\x60\xc3\x19\x30\x42\xed\x47\xa5\x70\x9f\xac\x0e\xfb\xbd\xe6\x55\xf5\x6c\x2d\x4c\x05\xd0\x19\xcd\xd3\x1f\x9f\x23\x87\x33\x4b\xae\x2c\x43\x36\x64\x85\x0a\x0a\x8d\xed\x64\x92\xde\x53\xec\xac\x56\xda\x7b\x85\xa3\x02\x77\xd7\x1f\xc5\x47\x5e\x56\x3d\x24\xff\x56\x47\x4a\x8b\x66\xf2\xf1\x4f\xec\x4a\x53\x33\xb9\xc5\xff\x08\x32\xf7\x4c\x03\x63\xbe\x52\x35\x95\xfd\xd8\xf3\x68\x1e\x3b\xc6\x05\x7a\x08\xa3\xbe\x97\x59\xb8\x9a\x26\x0e\xb2\x34\x19\x3c\x03\x47\x5e\xd9\x97\x53\xda\x77\x2d\xc7\x32\x50\xbc\xd3\x0a\x73\x10\x5b\xbd\xee\x6e\x41\x52\x62\x98\x18\x25\x67\xc9\xc8\x38\x75\xe9\xf6\x23\x68\xdb\xf0\x39\x94\xfe\xb2\xe8\x35\x81\xde\x20\xb3\xd0\x48\xb6\x90\x4b\x7b\x85\x44\xec\x72\x12\x06\x3c\x28\xa7\xfa\x0b\x0f\xff\x68\x74\xf1\x3d\xbf\xad\xd2\xd4\x15\xd3\x89\xa1\xe8\xff\xaa\x15\x8d\xf5\x40\x1c\x0a\x69\xa4\x9f\xa3\x64\x77\x28\x8d\x48\x18\x53\xdd\xb1\x31\x84\x86\x11\x86\x04\x7f\xb7\x77\xdd\xe4\x3d\x77\x56\xd5\xeb\x84\xe2\x20\xd4\xc9\x86\x36\x99\x2b\x73\xc8\xd4\xf1\x98\x7d\x25\x32\x4d\xa8\xb0\x2b\x90\x50\x7b\x66\xa8\x34\x7d\xf4\xf6\xbf\x7c\xe1\xee\x51\x86\xcc\x5d\x92\xe1\x94\xe4\xc3\xa1\x8a\x70\xd5\x74\x8c\x7b\xb3\xb3\x3d\x1a\x06\x30\xdf\xe1\x10\xbd\x37\xd5\xcf\x46\xc3\x66\xeb\xe7\xb0\xa4\x92\xd7\x36\x7e\x9c\x8c\x34\x8d\x2f\x7c\xf5\x75\xfc\x83\x97\xf4\xdb\xc9\x3e\x1e\x3f\xa2\x96\x60\x2b\x6d\xef\x66\x9f\x3f\xfa\xc7\xb5\x5a\x3c\x19\xff\x7d\x19\xba\x92\x9b\xc9\x4e\xd9\x4c\xa4\x51\xba\x2d\x3a\xef\x2f\xb9\x93\x0e\xd9\xb0\xd7\x8e\x03\xab\xb1\xd4\x7a\x44\x01\xa6\xfb\xf6\xe0\xe5\x02\xe8\x20\xf7\x62\x36\x4b\xd3\xc7\xff\xcd\x32\x43\x0e\x6b\x16\xe6\x18\xeb\x04\xf8\xed\x86\xb5\xa0\x4b\x33\x30\x2d\xda\x30\xfb\xaf\x80\xaf\x55\x2b\x36\x38\x92\xf5\xca\xe9\x1a\xac\xd2\x34\xb3\x0d\x9e\x6b\x84\x3b\x90\xc7\xe3\x7f\xfc\xc7\xd0\x66\xf9\xab\x3a\x1e\xf1\x2a\xe6\x5f\xf4\xea\xbb\xd8\xf1\xd8\x73\x37\x6a\x3a\xd7\x23\x74\x86\xe5\x3c\x7a\x7b\x15\x3b\x1d\xd6\xaa\xaa\xb6\x85\xd0\x6f\xbd\x9b\x30\xd3\xb8\xf2\x3c\x15\x37\x93\xe0\xae\xd8\xee\x85\xfb\x6d\xd1\xbb\xee\x10\x61\x9c\x6d\xb5\xd1\x98\xf9\x9b\xe4\xf1\x98\xbd\xb0\xe3\x9b\xf4\x35\x26\x69\x49\x6d\xdf\xf3\xdb\xc3\x3e\xb1\x9b\xa3\x2b\xcc\x55\x37\x5c\x27\xe0\xb3\xfc\xf9\x43\xe5\x7d\xd3\x5f\x5e\x57\xfc\xea\xcb\x3b\x35\x4d\xf4\x5f\x62\x67\xfe\x6b\x73\x01\x20\x84\xb0\xbb\xd2\xd7\x87\x84\x41\x1d\x72\x1a\x5b\x47\xff\xd8\xb3\xea\x86\x59\x4b\xe2\x74\x3c\x06\x75\x99\x30\xbb\xb0\x1b\xfd\xa0\xdd\xd8\x11\x74\x0b\x80\xf8\xed\x1c\x5a\x04\x62\x28\x0f\x80\x0c\x6f\x6c\x80\xc6\xf9\x3a\x30\x93\x6e\x2f\xa0\x3c\x01\xa5\xb8\xb6\x19\x2b\x5b\xdd\x87\xad\x58\x6d\xed\xa9\xeb\x7e\x5e\xcc\xa6\xe4\x78\x1c\xba\x95\x49\xb2\x36\xb1\x76\x45\x22\x69\xf8\x2f\xc9\x48\x8f\x92\xff\x92\x7c\x0e\x65\x38\x11\x10\x9b\xdd\x8f\xec\x0c\xab\x9f\xc0\xaa\x6e\x9e\x25\x35\xc6\x74\xd3\xc8\xe3\x89\x7e\x50\xd8\xfc\x09\xc1\x31\xa1\x0d\xa4\xe7\x1e\x67\x38\x59\xc7\x5d\x7d\x06\xa2\xca\x04\xbe\x13\xca\x6b\xb5\x0e\x97\x82\x0d\xa7\xf4\x79\x0c\x96\xe9\xb8\xd9\xc6\xfa\x74\x69\x93\xa0\xfa\x6e\xa7\xe1\x5e\x1f\xf0\xac\x56\xa7\x69\x00\x56\x36\x1d\x17\x57\x8d\x77\x99\xe6\x01\xde\x97\x03\xa6\x84\x3e\x9e\x12\xd2\x73\x72\x47\x7e\x78\x32\xe2\x0f\x9e\x08\x34\xef\xe1\x61\x87\x56\xb6\x1d\xe0\xe0\xb8\x5d\x95\x07\xdd\x3f\x6c\x33\xfa\xe2\xb3\x87\x8d\xa0\xff\x64\xef\x22\x27\xca\x76\x55\x0a\xf9\x9e\xeb\x7b\x9f\x35\xba\xf3\xd9\xc3\xeb\x9d\xf0\x85\x2c\xea\xf0\x7b\x77\x8a\x56\xd1\x03\x00\x35\x0d\xb2\x58\x4b\xa7\x87\x28\x9d\xf7\xc2\xe9\x7a\x22\x13\x92\xa6\x2d\xc9\x75\x14\x49\x6d\xcd\x50\x0e\x10\x03\x48\xe5\x1c\x14\xef\x20\x73\xbc\x48\xfc\xb6\x88\x0a\xc8\x1c\xbe\xd7\x4f\x9a\xbd\x72\x9a\xad\xcf\xe4\x9a\xf5\x7a\xd1\xb0\x79\xe6\x1b\x9e\xf1\x1a\xc7\x62\xd4\x00\x4b\x18\xcf\xe8\x8d\x9d\x8e\x58\x11\x71\x94\xcd\xc0\x17\x6c\x9d\x6a\xce\x3d\x84\x5a\x6e\xf9\x7f\x3e\x31\x2a\xba\xf4\xff\x5e\xeb\x71\x03\x04\x34\x7a\xd9\x8b\xb4\xa9\xf9\xa0\x8e\x32\x2a\xc6\x86\xfe\x49\x67\xa6\x3e\x53\xa1\x79\x0d\xb0\xb2\x31\x98\x14\x42\xc4\xd8\xd4\x7d\x20\xe3\x99\xa3\x84\xb5\xd7\x23\x87\xe3\xec\x93\xdb\x3b\xdf\x88\x41\xf9\x93\xd5\x16\xcc\x0b\x27\xab\x2d\xf1\x60\x6b\x11\xc6\x5b\x47\x57\x76\xb1\xa4\x81\x3f\xe5\x65\x0b\x14\xbb\x81\xcf\x53\x47\x2f\xe4\x72\xa0\x1b\x2f\xe9\xbf\xeb\x4c\x04\x44\x6a\x42\xe1\x13\xa4\x9d\xf6\x8e\xee\xb9\xd5\xa7\xb6\x35\xbc\xa5\xe4\x13\xc1\x88\xe9\x16\x2d\xae\xbb\x69\xff\xcf\x6b\xad\x19\x8e\x9d\x5c\x6d\x47\xda\x76\x33\xaf\xb5\x67\x32\xee\x87\x0f\x95\x15\x6c\xca\xa8\x8a\xef\x74\x13\x36\xf0\x6e\x55\xc8\x15\x2f\x11\xcc\x09\xc4\xf2\x38\xee\xd4\xa8\xdc\x0e\x62\xec\x38\xd8\x4b\xda\xcd\x04\x7f\x50\xcc\xdb\xf5\xc2\xe0\x8a\x64\xc3\xe9\xe9\x14\x6c\xb4\xc0\x12\xc2\x61\x9f\xd4\x27\x8a\x57\xc2\x32\xfe\xf0\xb5\x95\x03\x86\x23\x05\xbb\x6f\x1f\x6c\x14\x06\x6a\x02\x2f\x9d\x59\x64\xb6\xe5\xa4\xe9\xd3\x21\xde\x61\x20\x06\x1b\xc8\x84\xdd\xf3\x8e\x42\x81\x43\x5f\x34\xf4\x48\xe0\xf5\xd5\x0e\xcd\x0e\xec\x1b\x01\x9e\xa0\x9d\x02\x5c\x43\x13\x2a\x43\x77\xe6\xf6\x30\xcb\xf1\xed\x42\x86\x41\x92\x61\x90\x64\x63\x90\xa4\x6b\x43\x74\xaa\xbd\x88\x2f\xc8\x80\x96\x70\x87\xbe\xe2\x3c\x08\x92\xdf\x26\xdf\xa3\xdf\x30\xfa\x42\x13\x97\x63\xe0\x72\xf4\xdd\x43\x5d\xae\x13\xf0\x1f\x48\xa2\x1a\x5d\x41\xde\x63\x97\xa6\x36\xae\xdb\x53\x82\xd2\xda\xef\xc2\x89\x1e\xf4\x65\x9f\xa1\x10\xab\xcd\x27\x60\xa4\xb7\xd3\xe0\x13\x61\xb8\xf6\x6a\x18\x41\x85\x2b\x6b\xfb\x25\x98\x80\xbf\xa0\xf5\xeb\x7d\x21\xab\x0e\xb6\x75\x14\x57\x3f\x25\x98\x9a\x1d\x8a\xe2\x17\x66\x89\x9f\x7a\x30\xd4\xe1\x48\x3f\x1e\x65\x9a\xba\x37\x30\x49\xb5\xed\x12\x1a\xbd\xd5\xe6\x82\x1a\xdf\x7d\x86\xb2\xd7\x80\x44\xb0\x05\xce\xac\x81\x97\xa8\xd3\x92\x2a\x36\x3d\x57\x17\xb2\x6e\x4f\x6d\xda\x5b\x30\xb9\x50\x4b\x78\xe0\x45\x58\x4a\x42\xf1\x15\x56\xf4\xbc\xba\x0a\xf7\xc4\x3a\xb4\x24\xf1\x60\x57\x4b\xe5\x09\x26\xf8\x58\x71\xce\x8b\xc0\x56\xfd\x72\x4a\xfc\x23\xeb\xa2\xa4\xb3\x25\x5d\xb3\x38\x05\x9a\xb9\x6f\x59\x5d\x90\x51\xe4\x3c\x5b\xdb\x92\x86\xc5\x44\xc8\x55\x79\xa8\xc4\x0d\x77\x10\x0d\x6b\x7b\x2e\x61\xe7\xb1\x6f\x87\xb0\x6a\xb1\xac\x13\xa1\xd9\xf6\xb2\x95\xf9\x27\x34\x72\x18\x6e\xdb\xb9\x2b\x58\xe9\x2a\xb7\x55\x9f\x08\x15\xf0\x44\xb7\xf2\xd6\xa1\x82\xae\x08\x2d\x47\xac\x76\x5b\x7a\xaa\xa5\x23\xe1\x94\xc0\x13\x01\x94\xe5\x7b\x9e\x41\xc7\xb3\x73\x71\xc9\xa6\xe7\xe3\xb1\x20\xcf\xed\x7a\x74\x9b\x6d\x21\x96\xf5\x7e\xb3\x1f\x7e\xcb\x89\xf9\x22\x49\x96\xde\xaf\xb9\xd3\x0e\x7a\xee\xee\x8b\xf5\xc6\x7b\x5e\x9f\x58\xb3\x61\x13\x1e\xf3\x78\x4c\x12\x1f\x04\x5e\x6f\x50\x25\x2d\x6e\xad\x5f\x86\xee\xe4\x18\xfc\x2e\x9c\x38\xc6\x6e\xa6\x79\xe4\x73\x50\xac\xf3\x1f\x8a\x1f\x08\xfd\xca\xcb\x6b\x5e\x22\xff\xe0\xc5\x58\x8b\xe5\xe0\x9d\x68\xea\x9f\x00\xad\x0f\xaf\xb7\x92\x72\xaf\xc2\x62\x57\xf0\xcf\x96\x32\xb9\x6f\x7b\xa6\x48\x0f\x88\xe7\xd3\x84\xaa\xe0\x0e\xe0\x6b\x3b\x35\xa4\x72\x7f\xc4\x44\x07\x68\xcd\xf1\x38\xbc\x97\x94\x34\x0c\x5b\xeb\xca\x15\x1e\x7e\xb4\x60\xc9\x41\xae\x95\xbd\xe8\xcf\xc5\x64\xad\x24\xcf\xc5\xc4\x86\x48\x4e\xab\x46\x1c\x06\xe6\x98\xc8\xed\x8e\xa2\x76\xe7\x25\x59\xb1\x28\x97\x54\xcf\x87\xd2\x9d\xa8\xc7\xa3\x9c\xa0\x4b\x93\x0c\xdd\xd6\xe4\x3e\x86\x9c\x97\xa3\x11\x39\x47\xe3\x27\x5f\x06\xb6\x54\x80\x3e\x8c\x53\xf3\x11\x3d\x6a\x3f\xe7\xb6\x26\x74\x43\x45\x5c\x71\x68\xda\xf4\x54\x64\x92\x56\x70\xc0\x0c\x5b\x15\x93\xc8\x05\xd9\xd9\x17\xe0\xe4\x82\xde\x01\x63\xfa\x13\x5f\x2b\xd0\x75\x1b\x28\x26\x4f\xb8\xbd\x17\xcb\xc1\x53\x91\x29\x5b\x96\x03\x2c\xbc\x73\xe6\x47\xf9\x81\x5e\x73\xe9\xdc\xb7\xe6\x62\x52\x7f\xc0\xee\xa9\x3f\x99\x8c\x3e\x8e\xc7\xd1\x48\x4c\x76\xc5\xc7\x6f\x42\x90\x43\x49\xfe\x17\x48\x3b\x90\xb7\x92\x49\x6f\x11\x55\xef\xb3\x12\xf7\x59\xe9\x15\x7f\x43\x12\x47\xad\xd6\xfe\x08\x35\x74\x95\xa6\x43\x38\x1d\xd6\x96\x95\x8d\x47\x27\xf3\xb3\xc1\xa6\x64\x70\xc0\xde\xbf\xb7\x2b\x7c\xed\xd6\xfc\x96\x95\x73\xd8\x36\x6b\x92\xdf\xa8\xac\x20\x83\xaf\xb0\xa0\x2d\x7d\x22\x31\x1d\x1d\x96\xe8\xea\xd6\x39\xbc\x6d\xe9\x10\x22\x05\x58\x87\xed\xff\x93\xce\xd6\xe4\xe4\x55\x5a\xfb\x76\x14\xfa\x3c\x71\x3b\x6a\xf3\xc0\x8e\x5a\x13\xba\xb9\x67\x47\xad\x71\x47\xf9\x36\xc2\x8e\x8a\xf6\xd4\xcf\x35\x3d\x99\xfa\x67\x46\x34\xfd\x63\x06\xd9\x3b\xe6\xb4\x71\x6f\x55\x16\xb3\x8d\xcd\x63\x31\x72\x21\x83\xba\x8c\x3c\x76\x49\x32\xaa\x1d\x55\x7a\x4e\x96\xd7\x2e\x4c\x20\xd6\xb9\x2b\x41\x59\x6c\x9b\xad\x04\xf2\x44\xc0\x27\xba\x03\x78\xf3\x86\x9b\xf0\x7f\x6c\x00\xa4\x38\xb2\x9f\xac\x1d\xfb\x02\x5c\x49\x30\x45\x94\x17\x1e\xe7\x0e\xb8\x61\xe3\xca\x93\xfe\xb2\x93\xc4\xe4\xe6\x2b\xdd\x70\x3d\x80\x13\xfb\x00\x8b\xf3\x95\x67\x71\x28\x2a\x11\x07\x86\xfe\xc2\xb5\x93\xe0\x60\x37\x2f\x31\xf7\xdd\x13\x22\xdb\x9f\x2c\x0a\xbf\x8c\xd5\x74\xbd\x6a\x44\x8d\xf4\xe7\x6b\x0a\x3a\x64\xad\xba\xc2\x88\x45\x35\x0d\xa0\x59\x82\x50\xe3\xdd\xda\x70\x9f\x8e\x4e\x41\x9b\x05\x34\x51\x5d\x23\x47\x82\x86\x1b\x09\x1c\x5c\x8b\x1b\x0f\x81\x4c\x96\x6d\xb6\xfa\x14\xb0\x47\xea\x46\x0f\x42\x51\x97\x80\xbb\xe6\x2a\xad\x79\xf5\x0d\xcf\x14\xc0\x0c\xb4\x00\xb8\x7d\x7d\xe1\x84\xeb\x56\x47\xa8\x71\x3a\x10\x6b\x70\xa9\xd8\x38\xaa\x29\xa2\x2e\xb8\xb3\x0f\x17\x55\xc7\xd6\xe9\xa6\x46\x20\x8f\xed\xa5\x41\x07\x0f\x8a\x2a\xe0\xa2\x46\x2b\x36\x9c\xd1\xd2\x99\xa5\xdf\x0f\xce\x5e\xb2\x37\x22\xfb\x43\x66\x88\x27\xee\xdd\x8b\x52\x89\x9c\x66\xe9\xcc\xcd\xfb\x98\x4c\xc6\x84\x87\x7c\x0b\x88\xdf\x0c\x4c\x1f\x4e\x84\x90\x81\x6c\x6a\xea\xc4\xfd\x04\x83\x23\xad\x32\x4e\x06\x1b\x5b\xad\x5d\x91\x3f\x82\x58\xfe\xde\x66\x86\xf6\xa8\x9e\x9b\x2c\xed\x41\xf9\x7c\x0a\xc0\x23\x97\xa1\x89\x2f\xfc\x69\x18\x42\x18\xa7\xad\x58\x66\xea\x90\x08\x43\xa1\x42\x79\x06\x88\x87\x3c\xea\x49\x13\x2b\x13\x00\x94\x06\x70\x4f\x91\x46\x70\x5d\x3f\xa7\xd6\x61\x7e\x70\x51\x07\xe4\xdf\xa7\x0e\x21\xe2\xd0\xda\x02\x19\x0e\xf8\x58\xf9\xcb\xf8\xc0\x4c\x36\x87\xb2\x9c\x73\x00\x5b\xc0\xe0\xa1\xd3\x76\x3c\x1e\xbb\x2c\xd6\x36\x20\xea\x13\xc8\xe3\xea\xad\x27\xf2\x40\x72\x13\x85\x27\xce\x91\x69\x7c\xee\x79\x00\x1a\x42\xd7\x8d\x10\xc4\xcc\x59\x1f\x8f\x2b\x6f\x62\x82\x5b\x03\x58\xd5\xa2\x71\x7d\x75\x8b\x3c\x0f\xcb\xbd\xb3\x15\x06\x6b\xff\x8e\xb3\x0a\x17\xc5\x2d\xb1\x27\x60\x18\xe4\x1a\xfb\x06\x84\x4c\xed\xc0\xe8\xc2\xb1\x25\xa7\x87\xa4\x7f\xa0\x95\x8c\x44\xd0\x50\x49\xf2\x8d\x70\x8f\x4f\xf4\x1b\xb8\xe8\xd2\x4a\xc5\x84\xf5\x5b\x1d\xdb\x2c\x59\x06\x1a\xee\x37\x9a\xd0\x3d\x87\x2b\xcf\xc5\x34\x28\xf6\x0d\x24\xd3\x54\x33\x75\xea\x7b\x85\x05\x25\x91\x48\xbb\xce\xee\xea\x17\x35\xb3\xad\x81\xc9\x76\xe3\xe6\x07\x48\x9c\x22\x11\xc2\x2f\xfa\x61\xeb\xa9\x1f\x9a\x6e\x12\x00\xfa\x5f\x7b\xf4\x91\xca\x03\x2f\x7b\xe5\x01\x3f\x84\xe1\xed\x7b\xde\x09\xc9\xfb\xb4\xce\x69\xc9\x36\xa0\x4a\x77\x60\x77\xa7\x81\x18\xeb\xcb\x12\xe0\xad\xf4\xa8\xf4\x0b\x27\xd6\x1b\x18\x1d\x4c\x06\xea\xaa\xfa\xa2\xa0\x5b\x26\x2e\x57\x63\x00\xbd\xd7\x17\x15\x39\x44\xda\x53\xeb\xf9\x34\xd7\xe1\x14\x11\x97\x95\xbf\xc8\x6d\x22\x73\x10\x9a\x6d\xe7\xab\x5c\x90\x71\x49\x06\x9b\x21\xb3\x7b\x30\x2e\x63\x83\x02\xbb\xfd\xc3\x5d\x05\x4f\x5a\xdd\xa0\x6e\x67\x41\x41\x61\xc7\xb6\xb6\xb7\xf6\x30\xf2\xe4\x68\x23\x3e\xf2\xf5\x37\x70\x04\xcf\x55\x50\xed\x8d\x50\x7f\xf3\x29\xa1\x37\x4c\x8e\xcd\xe5\x2e\xb8\xd5\x05\xde\xdb\x8c\x76\x84\x9a\x8b\xd9\x74\x7e\x88\xb5\xa1\xa6\xb9\xb9\xd8\x37\x83\x22\xc5\x0c\x33\xce\x6e\xe6\xd3\x7c\x36\x25\x24\x97\x97\xbb\xd1\x7e\xfc\xe7\xa8\xdf\x08\xb3\x37\xf2\x49\xc6\x3b\x42\x23\xab\xe2\x7f\x86\x4b\x48\x50\x68\x72\x8a\x46\xc7\xe3\x17\x96\x88\x38\xe4\x38\x13\x6d\xb4\xa8\xdc\xda\x41\x64\x77\xfc\x5a\x8a\x69\xdd\x34\x64\x64\x7c\xf1\xba\x53\xbc\x9d\xae\xde\xd2\x71\x21\x36\xd4\x58\xf2\x4e\x0a\x32\x8a\x7d\xbe\xfc\x0a\xd2\x73\xe8\x4e\xec\xe9\x1f\xd5\x05\x33\x42\x35\x33\x54\x32\xf3\x90\x53\x12\x33\x59\x6d\xe7\xb5\x51\x8b\xfd\x1c\xcf\x48\x6e\xf3\x35\x43\xc1\x62\xac\xdd\x9e\x1f\x55\xc5\x1a\x9b\x18\xb1\xee\xf2\xba\x42\x7c\x14\x41\xd5\xb6\x97\x10\x49\x3d\xf2\x5d\x3e\x9c\x46\xd4\xe6\x0b\xdd\x45\x4a\x8f\xaa\x41\xac\xf4\xbb\xbe\x06\x04\x53\x7c\xcd\xd0\x37\x8b\x93\x5a\x48\xff\x69\x99\x0a\xd1\x82\x42\x44\xff\x49\x54\xb6\xa1\x10\xc1\x77\x12\xf8\x18\xdc\x93\xb1\x71\xd8\x7d\xb1\x9d\x15\xa8\xa6\x53\x07\xce\xdf\xb0\xc0\x72\x98\x88\x32\x60\x22\x9a\x1e\xe8\xbf\x60\x2e\x0a\x7b\x4c\x44\x33\x1b\x8d\xc5\x37\x3d\x88\x20\x68\x21\x1a\x2b\xcb\x25\xc5\x7a\x9d\x10\x9a\x54\xbb\x42\x3b\x77\x75\x99\x9a\xec\xd4\x9a\x03\xec\x8d\x34\x73\xc1\x2a\xc4\x2e\xcb\x35\x4b\xf6\x9a\xdf\x24\xb5\xcd\x40\xdb\xb4\xad\x62\xcf\xec\xa5\xd2\x10\x5a\xb2\xad\xca\x50\xd4\x89\x97\x92\x82\x0c\x2a\xbc\xbb\x3f\xd9\x18\x6e\xab\x89\x3f\x9d\x7a\xd6\x8d\xf3\xdb\x8d\x19\x27\x3b\xd0\x94\x7d\xf4\x8f\xb7\xd5\x9f\x1e\x91\xc5\x14\x61\x64\x8e\xc7\x47\x6f\x5f\xbb\x47\x62\x4c\x47\xdc\x6b\x7e\xd4\x85\xec\xc0\x1a\xbd\xc8\x04\x75\x65\xa2\xdd\xd3\x2a\xf0\x99\xbe\x08\xc6\x0a\x75\x3c\x1e\x2e\xe1\xa9\x05\x84\x0e\x5e\xe2\x36\xf0\xfd\x3e\x9d\x9c\xe3\xf5\x29\xd5\x2c\x91\xca\x24\x03\x8c\x60\x4c\xcf\x0f\xcc\x5c\x2a\xe4\xa4\xe7\x68\xc0\xa7\xa8\x19\xcf\x48\x63\x08\xf2\x69\x0e\x03\x8e\x19\xca\x51\x3d\x82\xd8\xcc\x9f\xa5\x30\x79\x52\x1d\xae\x8c\x2e\xc0\x9e\x10\x92\x8d\xfb\x93\x49\x80\xac\xaa\x0f\x49\x0d\xfe\xc6\xcb\x91\xb6\x87\x4b\x44\x01\x0f\xde\x6e\x2b\x49\xe8\x96\x39\xd7\xaa\xcd\x02\x7f\x15\x66\xfb\xa6\xb8\xaa\x25\x9c\x9b\xd8\xc8\xe4\xf0\xa8\x20\xe7\x9b\xf3\xf1\x78\x43\xb6\x23\x56\xd0\xf5\x88\x25\x6f\xd1\xcd\xe1\xf6\xe2\x90\xa6\xd9\x7a\xc4\x76\x2a\x3b\x8c\xb7\x84\xd0\xf5\x90\xad\x3c\x13\xfb\xad\xce\x14\x5d\x83\x71\x9b\xf3\xd3\x6d\x68\x3d\xf2\xb5\x43\xe6\xce\x4a\xa0\xc3\x29\xdc\xf1\x36\x6c\x7a\xbe\xb9\x50\x3d\x0f\x1c\x1b\xff\xc0\xb1\x67\x71\xf4\x62\x83\x6e\x3f\x1b\x4e\x33\xd3\x74\xef\xef\x9c\x41\xe7\x9b\xdc\xfd\x62\xaf\x1e\x1b\xea\xae\xb1\x5b\xd6\x6a\xdd\x96\x10\xef\x62\x31\x02\x04\xec\xa8\x34\x19\x7b\x5b\xf0\x7a\x37\xed\x19\x31\x73\x05\x60\x1a\xf4\x3b\xf7\x30\x90\x83\x1b\x9f\x00\x7f\x26\x50\x36\x9f\xc9\x4c\x51\x41\xbc\x3c\xc1\xdf\x54\x05\x78\x34\x8a\x28\xf5\xf7\x9d\x37\xa0\xf0\x12\xeb\x2f\xea\x92\x2d\x96\x14\x51\x5e\x03\x88\x10\x80\xbd\xfa\x3c\x8a\x99\x4c\x2f\xc4\x92\x9c\xd7\x76\x1f\x7b\x9e\x29\xbc\x53\xdc\xa8\x4c\x12\xf7\xf8\x75\x1e\x20\xe1\x50\x10\xe5\x5e\xc7\x0a\x4c\xa9\xc2\xeb\xd9\x1d\xfe\x64\x18\xe1\xc7\xcc\x09\xfd\x14\x39\xfd\xd6\xb6\xc9\xab\xa5\xe8\x91\x00\xd5\x5c\xb2\xe9\xb9\x19\x8f\xc9\xb7\xda\x31\xdd\x49\x42\xe5\xc2\x38\x09\x2a\xfc\x32\x8a\x26\xa3\x35\x2f\xb9\xb1\xec\x33\x9c\x5b\xa7\xf8\x59\xf4\xaf\x3d\x1c\x9e\x3b\x7c\x00\x1f\x65\x4b\x2b\xa6\x29\xe2\x9b\x50\xd5\x70\x75\xe4\x95\x81\x69\xc5\x32\x31\x3f\x14\xf9\xaa\x20\xf6\xca\x46\xb5\x77\xdd\x84\x33\x56\xe1\x2d\x1c\x78\x58\x35\xd2\xc4\x5f\xc2\x8f\x47\x79\xc9\x78\x00\x52\xaa\xc4\x1f\xfc\x78\xcc\x14\x93\x74\xe8\x00\x55\xa8\x24\x24\x52\x20\x2c\x98\x98\x67\xfa\x62\x3a\x97\x45\xae\x6d\x5d\x24\xb7\x5f\x65\x7c\x03\xc9\xa7\x48\x70\x0a\x56\x0d\x02\x26\x8d\xa5\x74\xab\x6d\xa1\xc1\xd8\xf4\x10\xfb\xcd\x5b\xa9\xf2\xb0\x93\x2e\x1c\x20\x0b\x7c\xcc\x07\xa5\xd7\xce\xe1\xe0\xb5\x56\x87\x3d\xa4\xf1\xd3\xb0\xc2\x1d\xb7\x66\x75\x1c\xdd\xb2\x48\xb4\x75\xcd\xcd\xb7\xbc\xdc\x73\x9d\x19\x0a\x45\x81\xdb\xc9\x84\xd0\x0d\x1b\x4e\xcf\x87\xb6\x17\xe4\x78\x3c\x64\xc3\x0d\x39\xdf\xd8\x0b\x9e\xdb\x97\x65\xc3\x57\x52\x41\x8e\xc7\xe4\xad\x4c\xe8\x8e\xbd\x51\xd9\x9e\x6e\xc9\x3c\xf9\x90\xe4\xeb\x34\xb5\xa1\x8c\xed\xe7\x89\x4c\xf2\xe1\xda\x92\xf7\xca\x91\xf7\x3d\xc1\x0d\x92\xec\x81\xd8\xd8\xc8\xcd\xf1\xb8\x3b\x1e\xb3\x1d\x4b\x6c\x0b\x56\x69\xba\x1a\xb2\x1d\xb9\xf3\xec\xfa\x8c\x1e\xb2\xb0\x71\xc5\x26\xdb\xa5\x69\xb6\x62\x3b\x42\xf5\xe5\x34\x4d\x87\xd0\x48\x87\xcd\x6b\x1b\x79\xc3\xfe\xc6\xd1\xb5\x95\xa2\x05\xa1\x86\x56\x91\x3a\xda\x19\x38\x0f\xbe\x21\xc7\x63\x76\x33\xd9\x0a\xf3\xda\xbb\x33\xbb\x89\x90\x2c\xef\x3b\x64\x61\xc5\x95\x0e\xac\x38\x78\x7c\xf4\x2e\xc3\x62\x1d\xe1\x5e\xaf\x5c\x0e\x3e\xfb\x5f\xc7\xcc\x1d\x38\x9f\x8b\x23\xfd\xa7\xac\x1a\xc3\x4a\x9b\x4d\xbe\xcc\x27\x5f\x92\x3f\x35\x2e\x3a\x68\x78\x1b\xfc\x5e\xe2\x5d\xe4\x72\x3a\x0f\xe8\xbd\x7f\xce\x11\x2e\xf7\xcf\xb5\x4b\x2d\xb4\x86\xfa\xdd\xb9\x3d\x73\x8e\xcd\xbc\xc3\x37\x1c\x5d\xbc\xa3\x4c\xe7\xe2\x82\x4d\x73\x71\xc9\x94\x47\x81\xbf\x2b\xa3\xa1\xf4\xf3\x34\x62\x5f\xfe\x29\x20\x5e\x95\xa7\x57\xb1\xf3\xe5\x95\x92\x95\xd1\x87\x95\x51\x3a\x7f\xe5\xdc\xee\x44\xc4\xa4\x85\x86\xe3\x7c\xa9\xf7\xd9\xdd\xd0\x8a\x9b\x57\x70\xea\xb5\x5c\x4d\xdf\xd4\x7e\xbf\xdd\xa9\x48\x25\xd3\x0b\xbe\x1c\xd8\x3f\x70\x7e\x24\x96\x95\x48\x86\xcc\x6e\x6a\x08\x34\xf4\xef\x7a\xb2\x2d\xaa\x57\x1f\xe4\x8f\x5a\xed\xb9\x36\xb7\x60\x3e\xe6\xbc\xc7\xd3\xbf\xdb\x54\xe8\x3d\x1e\x2e\xc7\xe4\x44\xaf\x7b\xaa\x6f\x3a\x7a\x76\xb5\x2f\xf8\x12\x52\x3f\x55\xab\xfb\x5c\x42\xaf\xd5\xea\x44\x8b\xf5\xfa\x7b\xd0\x01\x6d\xbb\xce\x06\x40\xd1\x86\x2e\xaa\x99\x27\x96\x1c\x27\x79\x72\x90\xa0\x57\x92\x2c\xb3\x1b\x09\x5a\x34\x4e\xbc\xd0\x29\x29\xa6\xd3\xdd\x12\xdb\x5e\x6d\x46\x23\x0d\x2e\x58\x17\x7a\xc9\xec\x28\x81\x2b\x21\x59\xec\x38\x63\x3c\x32\x2a\x83\x97\xb7\x4c\xd3\x19\xa1\xc3\x29\xf4\xe0\xd5\x0d\xd7\x65\x71\x9b\xff\x35\x56\x8c\x89\xa6\x85\x4f\x8c\x7a\xcf\xe5\x9c\xe7\xaf\x2c\x21\x7a\xa9\xd6\xce\x8b\xb6\x9f\x2a\x54\x1d\xd3\xe8\x78\xe0\xb5\x6d\x23\x31\x5b\xad\x3e\x80\x7c\xfa\x99\xd6\x4a\x67\x89\xab\xa4\x3a\xdb\x15\xb7\x67\x52\x99\xb3\x2b\x7e\x06\xdd\xd9\x1c\xca\x49\x42\x06\x51\xff\x94\x4b\xea\xde\x44\xec\xbc\xe7\x9a\xda\x7f\xaf\xf7\x7c\x95\x73\xaa\xf6\xc5\x3f\x0f\x3c\x37\xe8\x29\xc5\xfe\x3e\x79\x0c\x57\x28\xc0\x26\xfd\x86\xcb\xd1\x88\x5a\x82\x09\xc8\xb7\x84\xb8\x41\xee\xef\xec\x3d\x23\xed\x5b\xd2\x37\xd4\xde\xdf\xb9\x1d\x65\xdf\x36\x38\xa4\x60\xf0\x3b\xe2\x13\x9e\xa6\xf2\xe1\xd9\xe8\xed\x00\xbc\x24\x85\x5e\xd8\x6e\x20\xb7\x08\x3e\xb3\xda\x13\x66\x6f\xc9\xbe\xe2\x61\x24\xb7\xf1\x4c\xd1\xb0\x29\xcb\x71\x17\xea\x79\x3c\x97\x13\xe0\xe0\xbf\xc3\x6b\x87\x63\xe7\x73\xe4\xb0\x73\x33\x07\xc6\x39\x62\x8e\x09\x7d\xce\x83\xe2\x23\xd8\xcd\x7e\xa3\x9d\xba\x23\xb4\xa6\x6e\x6f\xd0\x45\xfd\xd4\xc0\xb7\x98\x29\xcd\x40\x81\xe7\x61\x20\xbf\x4d\x26\x82\x7b\x7b\x51\xb3\x9d\x97\x96\x1b\xf7\x0d\x8a\xc2\x9d\x9d\xae\x66\x71\x98\x64\xcd\xfa\xc3\x6b\x48\x9a\xfe\xea\x86\xdf\x59\x74\x22\x53\x23\x3c\xf8\x43\xc1\x04\x42\x3c\x54\x91\x23\x18\x2f\x1e\x1d\x44\xc2\x53\x44\x34\xae\x31\x3f\x9c\x68\x34\x2b\xec\xcd\x7d\x9a\xcf\x08\x19\xcd\x22\xd3\xec\xea\xbc\xbc\xd0\xa0\x0d\xe0\xbb\x50\x52\x1e\xa4\xac\xdd\xa1\x1a\x4c\x19\x60\x79\x02\xc8\x60\x80\x89\xf3\xfc\xe5\x61\x21\x97\xae\xc5\x93\xd5\xd6\x1e\xc4\xbf\x44\x33\x27\x3d\x0b\xae\x28\x24\x04\xc7\xfc\x28\x45\xb4\x53\x78\xcd\xcd\x1b\x4b\x01\x9e\x98\xbc\x4f\xbb\xed\xec\x6f\x32\x4c\x3a\x12\x59\xdb\x43\xc8\x51\x3d\x9c\x61\xc3\x33\x4e\x9c\x32\x68\xa8\xe5\xcd\xed\x9e\x37\x6a\x22\x77\x1c\xec\x7d\xeb\x75\x86\x42\x12\xaa\x99\x11\x58\xd0\x33\x11\x45\x7b\x57\xbf\x92\x4d\xa9\x60\x99\xae\x01\x28\x1f\x3d\x06\xde\x00\xfd\xc9\xda\xf1\x22\x86\xe9\xc5\xe3\x25\xb2\x69\xf1\xd9\x5a\x30\x39\x12\x97\x97\xe0\xbb\x34\x2b\xe6\x7a\xf1\xf8\x4f\xc5\x78\xb6\xcc\xa7\xe4\x92\x29\x22\x58\x11\xac\x7b\x87\x19\x44\x8e\x66\xcb\x0b\x45\xc8\x1d\x14\xf8\xa7\x62\xf4\x78\xe9\x4e\x56\xc9\x8a\xd1\x0c\x1f\x66\x2a\xbb\xd9\x10\xca\xf6\xd5\x06\x20\x09\x1d\x81\x39\x4b\x48\x3e\x9e\x79\x9e\xa7\xba\x98\xce\x4d\x3e\x65\xac\x42\xd6\xcb\x04\x50\x95\x6a\x3c\xc3\x81\xb2\x34\xb8\x35\x46\xad\x3d\x64\x49\x48\x6d\x2f\x02\xdc\x8b\xcd\x34\x7f\x55\xff\xce\x1c\xb2\x76\x3d\xbd\x19\x27\x48\x81\x08\xe4\xcf\x0d\x54\x86\x9c\x67\xff\x4c\xfa\x02\x30\x0d\xfa\x2e\x5e\x4c\x97\x51\xbe\xf6\x12\xf0\x9a\x73\xc0\xb2\x54\xb2\x7d\x82\x07\x23\x94\x33\xed\x74\x1f\x2a\x7b\xf1\xa0\x82\xf9\xaa\xb0\xef\x4e\x5f\xb9\x43\x67\xc5\xc2\x2c\x89\x5c\xd8\x7f\xcb\x34\xf5\x8a\x76\xf8\x5d\xb3\xe3\x90\xaa\xbe\x8f\x4d\xcf\xd5\x85\x0d\xf2\x14\x46\x79\x0a\x53\x30\xcc\xba\x50\xcb\xe5\xa0\x08\xe5\x15\x1e\x75\x79\xb2\x85\x3e\x22\x02\xa6\x5c\xc4\xdf\xcb\x79\x5d\x79\x1c\x4c\x72\x1b\x60\x4f\x82\x46\xfb\x30\x04\x19\x3c\xaf\x3f\xf4\xee\xba\x54\x57\x45\xd9\x69\x55\xc5\x42\xdc\x42\x2d\x07\xd5\x64\xaf\xf9\x3a\x13\x30\x9b\x24\x4d\x1d\x6e\xaf\xa6\xd5\xe4\xa6\x28\x49\xa8\x05\x3f\x6b\x54\x53\x3b\x47\xaf\xc3\xa5\xff\x7e\x8e\x6c\xad\x56\x61\x69\x3a\xde\x2a\xe3\xec\x3b\x50\x8f\x44\xf9\xe7\x5c\xbb\x6b\x97\x76\x0e\x7d\x73\x6e\xa9\x19\x90\x03\x14\x1c\x7e\xad\x94\x5e\xf7\x2f\x85\x0e\xd9\x05\x48\x33\x5f\xe3\xd7\xae\xc6\xba\x26\x4b\xb3\xf3\x44\x5d\xfd\x8e\x70\x4f\xfe\x7c\x9d\x37\x49\x44\x0e\x8d\x02\x82\x97\x6b\x24\xd0\xe6\x78\xc4\x5b\x80\x6d\x15\xa8\x99\xf7\xb4\xc9\x55\xfb\xc4\x55\xdb\x2c\xb4\x59\x04\x64\xb7\x17\xb1\xfe\x22\x7e\xaf\xc7\xea\x47\x13\x08\x64\x28\x00\xb1\x35\x29\x07\x09\xe5\x09\x10\x6e\x9f\x78\x47\x9d\xbd\xe5\xd5\xc5\xa0\x6f\x37\x0a\xae\x2e\xa6\xa7\xa8\x4c\x90\x79\xbe\x8c\x69\xe1\xa8\xc1\x8d\x47\x2e\x9d\x4f\x14\x6f\x03\x4f\x90\x95\xe8\x99\x18\x70\xea\x0d\x7b\xac\x2d\x53\xe1\xe1\xf8\xf5\x53\x87\xb3\x5f\xcf\x24\xfa\x7d\xe6\x17\xcd\x04\x73\xde\xca\x91\xf3\x4b\xb0\x1d\x63\x02\xfd\x91\x53\xcd\x1a\x94\xdc\x6d\x33\xcd\x02\x29\x7b\xe9\x86\x40\xe3\x20\x4c\xef\x19\x84\x51\x26\xe7\xa1\x2a\xec\xe8\xf8\x47\x91\x69\x92\xdb\x93\x66\xcd\x37\xc5\xa1\x34\x35\x92\x6e\x0f\x8f\xff\x83\xc9\xe2\xa1\xab\x73\x05\x44\xde\x9e\x4c\xdf\x75\x32\x55\xdc\xe0\x3b\x0b\x3a\xfa\xe8\x65\xd9\x5c\xe6\xdf\x74\xd4\xf3\xa0\x21\xd1\x7d\x0d\x96\x8c\xbb\x27\x1b\xe7\x3c\x04\x5e\x13\x1b\x21\xec\xee\x54\x7b\x43\x5f\x98\x25\xd3\x74\xa8\xd3\xf4\xa5\xca\x24\x9a\x3a\x36\x53\x3b\x4c\xf1\xe9\x09\xd5\x41\x40\x61\x09\x5b\xdd\xe1\xd6\x6e\x5a\xf0\xae\x96\x79\x60\x6e\xf7\x0f\x34\x3e\x6b\xd7\x19\x6c\xe7\x9a\x75\x59\x62\xd4\x08\x58\x58\x32\x98\x75\x03\x1d\x96\xb1\xce\x4c\xac\x2e\x42\x5f\xaa\x76\x5a\xd2\xcd\xee\xa0\xdb\xe9\x68\x24\x5d\x97\xec\xee\xfa\x4e\x6e\x54\xde\x7a\xf6\xef\x5b\xda\xf6\x5c\x6a\xb2\xb5\x1d\xac\x60\xc3\x38\xea\x65\xf2\xd6\x7a\x6d\x24\x3d\x79\x16\x01\x69\x57\x66\xd8\x1b\x00\x8a\x6d\xa4\xf1\xbe\xe0\xed\x26\x34\x14\xed\xfd\x72\x8e\x8f\xa8\xa8\x59\x4f\x1b\x7d\xcb\x5b\x93\x07\x29\xbf\x2e\x8b\xaa\x72\xc9\xe1\x37\xbd\xba\xf6\x61\xee\x17\xfd\xa0\x8b\xbd\x0f\x0b\xbf\xe9\x07\xb1\xbe\xe6\x06\xc2\xf0\xd7\x09\x8e\x85\x5f\x04\xff\xb0\x57\xba\x67\x63\x38\xed\x91\x36\x55\x79\xee\x15\xbf\xdb\x11\x6f\xd4\x09\x2e\x99\xbf\x42\xf1\xf7\xa3\x68\xd2\x82\x02\x56\x26\x5d\xd1\x35\x8b\x4b\xa1\x5b\x96\x71\xf6\x75\x2f\x3d\x26\xc4\x3f\xd6\x6c\x18\x0f\xa2\x1e\xe3\x9c\x09\x7a\xff\x43\x2c\xf1\xfe\x87\xc0\x67\xe8\xc3\xe8\xd4\x14\x41\xa4\x7b\xc5\x18\x15\x37\x3f\x4b\xbe\x16\xa6\xb8\x2a\x39\x38\x4c\x77\x9e\x99\x62\xf7\x41\x86\xd0\x04\x0c\xc7\x18\x93\x64\x0b\x97\xe7\x7d\x2d\x06\x2c\xae\xd4\x0d\x77\x72\x40\xc9\x9d\x08\xd1\x09\xeb\xc2\xf5\x61\xdd\x2f\x89\x6a\x11\xb4\x1a\x67\x10\xb2\x60\x4b\x1a\x58\x08\x11\x52\x49\x6c\xae\x7f\xde\x68\x06\xf7\x52\xa6\xa6\x4f\xee\xcb\x3d\x08\xc3\x8d\xda\x5f\x36\x23\xe6\xae\x4f\xe3\x66\x70\x7e\x4f\x39\x17\x6c\x9f\xa6\x99\xcd\xe3\x5e\xd3\xe8\x26\xa4\x40\x00\x87\x5d\x9a\x66\x1b\xb6\x1b\x37\x42\xc9\xc9\xcf\xa2\x51\x7b\x56\xbb\x86\x85\xa0\x12\x00\x38\xdc\x07\xbc\xdf\xb1\x24\xa1\x09\xfc\x4a\x18\x13\xf3\x6c\xc3\x7a\x06\xa4\x59\x03\x6d\x15\x30\xdd\x7f\x4c\x48\x9e\x25\xb6\x70\x28\x64\xc3\xa6\x79\xb2\x03\xc0\xb4\x04\xed\x03\x36\xac\x6f\x9c\x5b\x0d\x7f\xf4\x98\x34\x1b\xba\x81\xc6\xa3\x41\x82\x42\xd2\x59\xb0\x0d\xad\xd8\x96\x96\xac\x35\x18\xf4\xc0\xb6\xad\x01\x74\x0f\xd0\xd9\x8a\xfd\xa2\xb3\xb0\x4d\x08\x89\xdd\xae\xed\x6c\xcc\xaa\xed\x9d\x6f\xc8\x3a\xce\x31\xeb\x54\xe8\x1d\xef\x44\x8d\x16\xd7\xd7\x5c\xbf\x92\xdf\xf3\xdb\xa7\xea\x03\xdc\xcf\xdf\x68\xd2\x08\x07\x33\x3b\x1b\xf1\x63\x2b\xe2\xe7\x7d\xfe\x52\x53\xfe\x91\xaf\xbe\x56\xbb\x5d\x21\xd7\x6d\xfa\xba\xea\xf0\xf7\x35\x35\x5d\xc9\x05\x8f\xbd\x44\xa3\x88\xc3\x97\xff\xac\xe4\x2b\xa3\xc5\xaa\x73\x02\x3d\xe3\xc1\xa0\x92\x10\xba\x11\x72\xfd\xa3\xaa\xbe\xed\x10\x16\xcf\xa2\xcc\x06\x06\xe4\xd2\x82\x8d\x67\xd4\xb0\x71\xa4\xb9\xa8\xd8\x94\x16\xad\x9b\xe5\xb9\xba\x00\xb8\x81\x82\xfd\x35\x3a\x8e\x0b\x2a\xa0\x4c\xe2\x05\xa7\xa0\xd3\x7f\x1e\x5c\xcb\xd1\x9d\xba\xe1\xdf\xde\x2b\x40\x03\x1b\x4f\xed\x10\x68\x6b\x7c\xa4\xaf\x6e\xa3\xe4\x32\xf0\x01\xba\x8d\x5d\xab\x61\xd3\x63\x6e\xd0\x75\x46\x51\xc7\xfc\xaf\x3a\xd3\x78\x02\xa3\xb9\x10\xf4\xbc\x36\x59\x34\xe5\x4b\x75\xc3\x7f\x11\xd5\xa1\x28\xcb\x5b\x92\xf3\x8b\xe9\x5c\x7a\x96\x58\x02\x4b\x7c\x22\xf4\xa0\x60\x1c\xf1\x49\xe7\xe1\x2e\x04\x04\x6f\x19\xdd\x0b\x26\x95\xda\x71\xb3\x15\xf2\x1a\x3b\xc6\xd7\x19\x99\xcb\x07\x4c\x90\xc3\xeb\x51\xfe\xbd\x93\x6b\x34\xf8\x05\x9c\xb5\xbf\xea\x4c\x52\x5d\x77\x6b\x38\x0b\xfc\x8c\xed\x06\x1e\x42\x02\xec\x2d\x20\xd1\xc9\x19\xd7\xb8\x2c\x46\xe5\xe2\xe4\x8e\x7e\xb7\x42\x7e\xb9\x7f\x85\x50\xc5\xe4\xfd\xab\xa4\x60\x53\x5a\xb5\x57\x49\x71\x61\xce\x47\xa3\xc2\xcb\xe1\xfd\xe9\x54\x51\xf0\x82\x17\x3d\x56\xa9\xb9\x62\x25\xd0\x81\x1c\xff\x31\x45\xb3\x8a\xfd\x25\x88\x74\x04\xd5\xf5\xb2\x6a\xba\x2c\xac\x70\x5d\xfd\xf2\xe0\xa4\x44\x93\xe1\x1d\x4a\x0d\x5b\x2b\x08\xf5\xd4\x61\xf9\xa4\x29\x2a\x32\xf6\x4c\x1a\xb4\xf9\xe1\x35\x5a\x20\x60\x0e\x89\x66\xa2\xf0\x0b\xaa\x80\x05\xe5\x14\xb5\xbe\x36\x99\xa6\x85\x87\xec\x82\x11\xf1\xd0\x26\xd7\xaa\x28\xbf\x86\x57\x32\x50\x3f\x80\x21\x89\x43\x89\xf7\x6b\xe5\x9c\x55\x22\x80\xbc\x1d\x30\x4d\x51\xc2\xe4\x5f\x7a\xdd\x83\x8e\x49\xd3\x82\x31\xd9\xbc\x3d\xa6\xe9\x3f\xb5\xbb\x9e\xd2\x27\xb6\x31\xa5\x6b\x07\x9c\x5c\xe8\x20\x93\x96\xb8\xfc\xa9\x37\xbd\x89\x8c\x74\xa6\xe7\xc5\x85\xec\x79\xf2\x2e\x46\x23\x12\x87\x2f\x8a\x65\xd4\x76\x26\x16\xc5\xd2\xaf\x39\x04\x9e\xed\x11\xd1\xf4\xc8\xaa\x9c\x92\x21\x88\xa6\xbc\xb9\x22\xea\xc9\x44\xf7\xac\xfa\x0d\x90\x37\xde\x00\xcf\x33\xee\x00\xeb\x8f\x47\x09\x06\x7f\xd8\x9b\x34\xd5\xf3\xf1\x58\xe7\xa3\x91\x8c\x48\x5e\x78\x0c\xd4\x84\x16\xec\x8d\x82\x67\xef\x79\xcf\x73\xc8\x1b\x05\x5a\xca\xa7\xbc\x7e\x0b\x54\x7d\x09\xeb\x68\x4e\x4e\x3d\xef\x2a\xc3\x38\x41\x9a\x0e\x6d\xb9\xe4\x74\x0e\x8f\x81\x45\x56\x37\x67\x3c\x23\xe4\x9c\x8c\xc7\xce\xa1\x5b\x2d\xef\x6d\x24\x93\x36\x91\xe5\xeb\x7b\x34\xe0\xd1\x8c\xcc\xa9\xbb\xa3\x50\x17\x4e\x38\x75\x7d\x5d\x82\xdc\xff\x83\x16\x86\x37\x9a\xe8\xb4\xeb\xd2\x94\xb3\xb6\xdc\x1f\x12\x1f\x8f\x59\xd6\x17\xce\x86\x7d\xa1\x64\xfe\x5c\x35\x2e\x80\x4e\x6b\xea\xa9\xb8\x69\x58\x2d\x87\x0c\x09\xc9\x5f\xfc\x67\x73\xd0\xbf\x38\x99\x67\x12\x02\xdf\x40\x0f\x13\x8a\x4f\x5d\x7d\x0d\xb3\xd7\x7d\xe7\x80\xfa\xde\xf7\xac\x06\xab\x7b\xcd\xcd\x73\xc1\xcb\x75\x46\xd0\xbd\xf5\x89\xd6\x70\x39\xdd\x12\x86\xd9\xb0\xf1\x88\x50\x9b\xcb\x0f\xc3\xc1\xb1\x2a\xa4\x79\xb6\x16\xc6\x5e\x8a\x1d\x9f\xd2\x43\xd8\x9c\x98\xc7\x2b\xf9\x19\x50\xf2\x03\xce\x80\x86\xb9\x8a\xbc\x25\xc6\xaa\x7e\x0d\x55\xc0\x4e\x12\xc4\xb7\x73\xd2\xec\xd7\xce\x52\x24\xbe\x10\x7a\xa0\xa5\xc6\x60\x78\x7d\xca\x81\xbf\xa6\xa1\xa2\x60\xa4\xf9\xd5\x76\xb3\xbf\xf5\xdc\x70\x03\x7a\x6b\xed\x3c\x30\x8e\x1b\xa5\x07\xdf\xa5\x14\x3d\x94\x36\xdc\xca\xdf\x9f\x07\x39\xc5\xf8\x6a\x90\x6f\x5c\x5a\x1a\xf1\xa5\xf9\x36\xb8\x7d\xa4\x4d\xd3\x98\x9e\x71\x0f\x07\x16\x9f\x67\x9c\xc5\x97\xbc\xb6\x60\x2e\x9c\xb0\x70\x7d\xa5\xb1\x77\xc1\xc6\x1a\xe8\x2a\x0c\x12\xd2\x55\x98\xe2\x73\x1e\x59\x41\x38\xfb\x07\x28\x39\xf7\xba\x95\x1b\x70\xb2\x17\x5a\xc5\x43\x0a\x02\xc2\x33\x90\x7e\x18\xe5\x12\xa2\xc3\x7c\x0d\xe6\x47\xc7\xe3\xd4\x2f\x9a\xc8\xfc\x22\xac\xa7\x9e\x25\xf2\xa3\xaa\x18\xaf\x5f\x79\xb4\x65\xb9\x61\x53\x45\xca\x02\x58\x92\x17\xdd\xb5\xd5\x0e\x5d\xbc\x51\x7b\x8c\x06\xf5\x43\xde\x51\x3f\x74\xc9\xb4\x73\xd0\x6d\x54\x47\x0d\xd1\xa5\x70\xd7\x5b\x48\xe2\xd5\x11\x79\x50\x47\xc4\xbd\xee\x35\x12\x1b\x5a\xbf\xba\xa1\x91\x48\x00\xfe\xe0\xb5\xf8\xa3\xfb\x68\xd8\x60\x52\x83\x52\x45\x44\xc0\xbb\x73\x76\x3c\x3e\xfa\xc7\xdb\xf5\xc8\x63\x0d\x21\x7a\x87\xe5\xec\xe7\x1c\xee\x3a\x39\x3f\xd5\x9b\x55\x77\xd4\x2b\xf0\x6e\x04\x4b\x9e\xc1\x03\x78\xb4\x6f\xef\x4b\x8d\xdb\x8a\x01\x48\x55\xc4\xe4\xc6\x6a\xb0\x69\xfa\xd1\xfb\x46\xc5\x53\x53\x77\x24\x14\x03\x64\xa5\x41\x4a\x25\xa8\x6e\x09\x2a\x7a\x2c\x8f\x9d\x50\xa4\x63\x75\xec\xc2\x3d\x5b\x60\x10\xf2\x2f\x84\x2f\xcc\x72\x22\xd5\xb7\xb8\xf8\xc9\x9d\xb1\xbc\x88\xa0\x09\xc6\x26\x5e\x37\x66\x34\x12\xf0\x2e\x1d\xf0\x86\xf4\x8a\xff\x8c\x56\xee\xc3\xa9\x25\xf3\x9a\x26\x9a\x6f\x34\xaf\xb6\x09\x0d\xcf\xd8\xf6\x1e\x55\xdc\xa7\xc3\xf0\x9b\x09\x97\x23\xea\xb2\x36\x27\xbc\x97\xca\xb5\x1d\x8b\x0d\x78\xcf\x1e\x69\x35\xef\x95\x89\x93\x84\x35\x58\xd3\x8c\x88\x44\x36\xc3\xe0\x7e\xfa\xbb\xcb\xed\xa9\xce\xf1\x58\xe3\x82\x8e\xdb\xb2\x57\x72\x39\xf9\x92\xa4\xe9\x13\x97\x27\x1c\x80\xdd\xc1\xa9\x3e\x14\xfb\xa7\xaa\x7b\x69\x6c\x3e\x8e\xd5\xef\x62\xab\x1d\xca\x19\x3f\x08\x3f\x6e\xad\x8e\xf5\x23\xab\x34\xfb\xdc\x38\x0f\x62\x6f\xfb\x9d\xe1\xc3\x05\x61\x87\xef\xef\xbe\x0f\xae\xc5\xfe\xf0\x26\xd4\xb8\x33\xea\x3b\x5b\x23\x9c\xc1\xff\xd9\x13\x1b\x24\x78\xbf\xe2\xf6\x71\x8a\x49\x9f\x2a\xc2\x6d\xb6\x53\x7d\x38\x7e\x76\x56\x7f\x44\x42\x5e\x94\x1a\x7f\x66\x4e\x67\x77\x70\x3a\x51\xa1\xb2\x57\xb8\x6b\xff\xa6\xd9\xab\x89\x93\xb4\x57\xec\xee\x44\xff\x6e\x03\x70\xbb\x23\x3a\x1a\x48\xb7\x6b\x42\xc5\xa3\xfb\x5c\x9d\x13\xf5\x83\x74\x9a\x66\xa0\x05\xc4\x5a\x4e\xb6\x24\xb9\x93\x43\x66\x64\x9a\x3a\x23\x68\x72\xca\x35\x9a\x5e\x18\xc9\x5e\x4d\xbe\x93\xc2\xb0\x3b\xa3\x90\xb2\x75\xfb\x11\xb1\x66\x90\x36\x39\x9d\x06\x5c\x66\xc9\x4d\x51\x1e\x78\x42\x93\xa4\x6d\x56\x0a\xce\xf7\x00\x1a\x0c\xfc\x2d\x80\xfe\x81\xcd\x00\x3a\x4d\x78\x4d\xe9\xe4\xf0\xaf\xb8\xa8\xb1\xc4\x0c\x7d\x03\xca\x96\x21\x6f\xad\x87\x9c\xd0\xc7\xf4\x4d\x2b\xdc\xab\x13\x03\x88\x0c\x84\x47\x9a\x1d\x49\x48\xec\xb4\xc6\x13\xfa\xef\x4d\xea\xf7\x32\xc3\xad\xc0\x09\xe5\xba\x59\x6f\x03\x46\xbb\xbf\xf1\x40\x0b\x23\xc8\x6d\x66\xe2\x97\x5f\x2a\x63\x9f\x97\x03\x5e\xd3\xe4\x5e\xc5\x10\xc1\xa6\xfe\x55\x5e\x79\xb0\x19\xff\x86\x6e\x9c\xee\xdb\x78\xc6\x98\xf2\x6a\x6f\x4c\x8d\x82\x2d\x9d\x7b\xfa\xdc\xf0\x4c\x52\x45\xc8\x49\x8e\x46\x27\x42\x22\xec\x06\xdd\x02\x10\x10\xb1\xfe\xab\xa1\x7a\x21\x96\x80\x04\xb3\x10\x4b\x77\xc1\xb0\xbf\x56\xdb\x50\x85\x03\x05\x87\x11\xde\xf3\x95\x28\x4a\xbc\x97\xd1\x47\x8b\xb7\x87\xe9\x74\x3a\x1d\xdb\x7f\xb3\x8d\xfd\xfb\xdf\xe0\x6f\xb1\x7e\x7b\x78\x3c\x9d\x5e\x8d\xe1\xdf\xc6\xfe\x7d\xfc\x1f\xf0\xf7\xbf\xbf\x3d\x6c\xf8\x66\xb3\x7c\x74\x4d\x3b\xaf\x44\x01\x48\x32\xaa\xc4\xd9\x0a\x5f\x3f\xfb\xb8\xcf\xcc\xa4\x52\x07\xbd\xe2\xe0\x5b\xdf\x1e\xcb\xc9\x5b\x93\x90\x79\x92\xe4\xc9\xd1\xfe\xa2\xc9\x75\x42\xa8\x1e\xba\xe5\x9d\xa6\x7c\xe2\xe8\x67\x46\x7a\x3a\xf0\x63\x59\xac\xf8\x56\x95\xeb\xde\x37\x28\x03\x1e\xff\xab\x7d\x21\xc1\xe5\xff\xff\x95\x50\x90\xa4\xcb\x9b\xa2\x14\x6b\x50\x8d\x8d\xc0\x2a\x8d\x30\x25\x67\xc9\xdb\xb7\x87\x64\x54\x63\x92\x3d\x31\xd9\xd4\x5e\xc7\x1d\xf7\x30\xfb\xaf\xa4\x23\x9c\x2f\xb4\x28\xc6\x65\x71\xc5\xcb\x84\xba\x62\x80\x3e\x36\xdb\xd3\xe8\x47\x58\xa5\xdc\xc9\x0f\xdd\x64\xd4\x9b\x63\x7f\x30\xaf\x2d\x4b\x91\xd0\xdd\x3c\x71\xee\x20\xbd\x4c\x3f\xc9\xc1\x7e\xb0\xd0\xbc\x48\x1a\xfa\xd2\x1d\x75\xb6\xba\x9c\xb3\x55\x21\x41\xa1\x2d\xbb\xe5\x86\x9c\x5d\xf1\x33\x34\xe9\x5b\x9f\x09\x79\x56\x9c\xe9\x83\x94\x42\x5e\x9f\xd9\x2a\x94\x4e\xe2\x26\xb6\x24\x74\x09\x1d\x5e\x61\xc4\x87\xad\x2a\xc1\x23\x36\x1e\xb7\x5f\x81\x61\x7e\xb4\x67\xb7\x7c\x67\xa9\x8c\x23\x76\xad\xe9\xf9\xda\xee\xd9\xf7\xcd\x2d\x8b\x1a\x83\xf7\x64\x89\x0d\x71\x6f\x24\xe2\x30\x47\xcb\xe4\x46\x66\x9a\x0c\x44\x9a\x0a\x00\x7a\x5e\x6d\xeb\x5f\xa0\x51\x4d\xe5\xa4\x30\x18\xee\x7f\x65\x9c\x8a\xe3\x11\x51\xce\xdd\xca\x0a\x40\x9a\x48\x30\x6a\x4a\xe2\xb9\x37\x4b\xa7\xda\xf3\xda\xc7\xe5\xcd\xb3\x4f\x62\xa9\xd9\xb0\xa4\x01\xcf\x0d\x22\x7b\x64\x24\x77\x42\xa2\x3f\xd5\x24\x69\xa7\xc0\x70\x68\x5e\x9e\x7d\x12\x7a\xcc\xd5\xf2\x03\x30\xb0\x4f\x02\xa1\x74\x44\xf3\x1e\xb0\xb1\xaf\x70\x5e\xc0\x2b\x49\x3d\x3d\xee\x20\x4c\xe8\x62\xd9\x1c\x82\xef\x6a\x2b\x91\xce\x9c\x46\x36\x7c\x76\x69\xf4\x9c\x1f\x2d\xaf\x24\xf1\xdb\xc9\xfc\x9b\x48\xff\x18\x79\xf6\x64\x6a\x07\xa4\x6f\x2b\xad\xd4\x0d\x77\xef\xc1\x3f\xf0\x8f\xe6\x8d\x7a\xed\xe1\xce\xbb\x93\xf6\x55\xb3\x91\x01\x18\xdd\x6d\xb9\x44\x16\x46\xdc\xf0\xd6\x92\xfd\xd9\x8e\xd8\x57\x7d\xb0\xec\x5d\xf8\x79\xde\xe6\x24\x3f\x03\x85\xbd\x6d\xea\xd7\x3e\xcd\x9c\xe3\xf9\x6e\x6f\x1e\x1e\x7f\x8d\xaa\x7c\x98\x3b\xa1\x33\xfa\xbe\xa7\xd4\xe7\x4a\xef\x8a\x9e\x97\x7c\x2f\x43\x3d\x91\x28\x5b\xb5\x55\x1f\xd0\xa6\xee\xd7\x2d\x97\xaf\xbd\xeb\x20\x68\x18\x37\x35\xe1\xb0\x6c\x68\x90\xd1\xbe\x92\x4d\xcc\xb8\xa8\x09\xbf\x8a\x8a\x7f\xad\xf6\xb7\x5f\x1f\xa2\x23\xdf\x0b\x67\xda\xdd\xb5\xab\xa6\x46\x3f\x64\xcc\xcc\x33\x40\xf5\xeb\x80\x01\x5e\x95\x07\x9d\x35\x5c\x1b\x88\xca\x52\xcf\x35\x1b\x82\x93\xd2\x6e\xf0\xac\x07\x50\x10\x1b\xe1\x0c\xd3\x9d\x17\x2a\xdb\x3c\x97\x0b\xd8\xdf\xbe\x26\x9a\x2e\xe8\x9d\x63\xcb\xa3\xc9\xf1\x2e\x1f\xbb\x3b\xc3\xc3\xd9\x98\x21\x1b\x66\xe8\x73\x18\x29\x1d\x89\xc0\x08\x22\x97\x0d\xcf\x5d\xde\x8a\x0a\xbb\x6d\x44\xfe\x57\x31\x10\x3d\xbe\x01\xd0\x35\x05\x68\x40\x27\x54\xa2\x2a\x34\xa1\xf7\xa7\xb4\xa7\x8e\xe5\x9e\x26\xf0\xe3\xa1\x94\x88\x42\x2a\x41\x9a\xf7\x50\xba\x92\x17\x76\x67\xc9\x09\xfc\xb8\x3f\xa5\x1d\x15\x39\xb1\xff\x81\x73\x01\xc6\xb5\xeb\xf2\x25\xa6\xd3\xb8\x24\xbe\x2a\x85\x7c\xff\x53\x61\x78\x42\xbf\xfc\xf3\x34\x8e\x89\x85\x3c\x09\x6d\x44\xe1\x85\xd2\x6e\x8e\x68\xfd\xa2\xeb\xb6\xaf\xa3\x04\x3f\x72\x6d\xb7\x12\x4c\x57\x94\xf0\x83\xd2\xef\x2d\x19\x4d\x80\x62\x86\xa0\xa7\xbc\x2c\x6e\xa3\xb0\x4d\x69\x77\x98\x04\x90\x2f\x28\xe2\x65\x28\xa1\x58\xaf\x5f\xaa\x35\x07\x65\x07\x58\x4d\x75\xd4\x1e\x25\x62\x80\x17\x19\x15\x76\x90\x6b\xf5\x94\xef\xcd\x36\xa1\x8f\xa7\x7d\x64\x55\xad\x82\xb3\xb0\x90\x96\x19\xbf\x7c\x5d\x14\xa0\x5e\xfa\x76\x3e\xfe\xd2\x95\x7d\xe3\xd4\x2a\xfc\x50\xcd\xa6\x9f\xc3\xca\xec\x8a\x8f\xdf\x8a\xeb\x6d\x69\x07\x0a\xa1\x1d\x12\x3a\xe3\xff\x1e\x75\x65\xa7\x6e\x70\xc3\x58\xae\x1f\xc7\xb5\xef\x4c\xb8\x6f\xeb\xfc\xe8\x14\x25\x6a\x46\xd0\x14\x57\xc0\x62\xdf\x7b\x37\xb9\xe7\xea\x39\x31\xc5\x15\x68\x4d\x33\x73\x3c\x26\x89\x2f\xae\x38\x18\xe5\xf0\x51\x6b\x23\x53\x6d\x6f\x5a\xf6\x82\x03\xf7\x3c\x09\x5f\x62\xc7\x5f\xba\x90\x01\xdc\xe6\x84\x84\x00\xd6\x6c\x40\x7d\xd1\x83\x02\x8e\xc7\xc4\x16\x9b\x80\x1c\x21\x6b\x45\x32\x4e\x68\xa1\xaf\xc1\x4c\xc7\x0b\x6c\x2e\x1f\x03\xc8\xf5\x9a\xef\xb9\xbd\x0f\xad\x04\xaf\xd0\x8b\x52\x6d\xf5\x82\x3a\xb7\xf8\x3c\x1d\xb2\xd3\xc7\x84\x50\x2d\xe1\x76\x79\xa2\xa1\x81\xdf\xbd\x7c\xd6\x6a\xa0\xac\xd3\x68\x5e\xa9\xf2\xa6\xdd\x8b\x7e\xf0\x6b\x9e\xa6\xb2\xef\xc5\x9c\x33\x28\x30\xa8\x91\xf0\x34\xed\xe6\x05\x0d\xd2\xde\x02\x20\x86\x78\xce\xdd\x16\x85\xda\xa6\x83\x7b\x40\x1e\xee\x6c\x2c\x38\x94\xc9\x38\xfb\xe0\xa0\xaf\xd1\x78\xc1\xc0\xbf\xda\x4d\x6b\x4f\x0f\x1e\xfd\x63\xf1\xf6\xc3\xdb\xf1\x72\xf4\xf6\x91\xff\x31\xfa\xb8\x2b\xbf\x08\x8f\x40\xfe\xfd\xb0\x31\x36\x59\x52\xec\xf7\xa5\x58\x81\x68\xeb\xd1\xc7\x5d\x19\x6e\x10\xdd\x3a\xe6\xd8\x40\x7e\xca\xf9\xf1\x88\xbf\x71\x01\x9c\xec\x80\x3b\x15\xe1\xd6\x8c\x18\xd6\xac\x2e\x80\x89\x6a\xb9\x30\x6e\x38\xc0\x8d\x7c\xdd\x3a\x6f\xeb\xe2\x50\x45\x1e\xed\xcb\x42\xc8\xc4\x43\xb2\x39\x48\x37\xb1\xc9\x54\x57\x89\x39\x1e\x71\xc1\x54\x5d\x45\x78\x88\xb3\xb7\x03\x41\x44\x3b\xa7\x22\x00\x76\xd9\x1b\xba\x48\xde\x25\x23\xb5\x04\x04\x41\x42\xed\x5f\x26\xec\xcf\x13\xbc\xdc\x46\xd3\x43\x4d\x43\x2f\xd9\x96\x17\x3e\x59\x1c\x67\xaf\x5c\x76\x8f\xd8\x8a\x6a\x21\x27\xb4\x2d\x8e\x80\xaa\xa2\x80\x85\x0a\x6e\xda\x64\xb4\x0d\x60\x16\x61\x1e\x1a\x77\x27\xf7\x74\x02\x36\x44\x6d\x8f\x80\xef\xc5\xfe\x8d\x7a\x26\xd7\x99\xb3\x34\x88\xb7\x54\x16\x8f\x3a\xc5\x82\x71\xf0\x95\xa7\x1c\xcf\x3e\x1a\x2e\x2b\x7b\x3a\x23\xc1\xc0\xd7\xeb\x9e\xd9\x7f\x66\x17\x71\x77\x9e\x38\x99\x2b\xbb\xb1\x72\xf8\xcb\xee\x4e\xa4\xee\x4e\x28\xbb\x43\x7b\x02\x8d\x68\xd1\x81\xa7\x6a\x75\x5f\xa6\x6b\x71\x6f\x2e\x27\xde\xe1\x88\xd5\x56\x00\xd6\x9f\x8f\xb3\x7c\xc9\xb7\x4a\xbd\x6f\x10\x8e\xc2\x83\xf9\x11\x74\xfb\x50\xd9\xd1\xc0\x39\x75\xc3\xa0\xf9\xb5\xa8\x0c\xd7\xf8\x5c\xdc\x71\xad\xd0\x55\xba\xe7\xe4\x78\xcc\x2a\x18\x83\x57\x30\x10\x4e\xbb\x3c\x5f\x2c\x4f\x84\x42\x04\x68\x91\x22\x3d\xc3\xc2\xbf\x81\x14\xbd\x55\xa0\x2c\xae\xd9\x0a\x8f\x50\x03\x85\x05\xcd\x76\xb4\xf0\xda\x6b\xbe\xce\x35\xbd\x29\xca\x5c\x9e\x5c\xaf\x4a\xdb\xab\x95\xda\xdf\x82\x86\x3a\xeb\xc8\x97\x86\x53\xc6\x98\x09\x96\x54\x0e\xe5\xd4\xa7\x0f\x2a\x0a\x75\x50\xbd\xe3\xef\x4e\x61\x1b\x4a\x58\xea\x4d\x6b\xa2\x33\x21\x2b\x53\xc8\x95\x25\x35\x70\x28\x80\x5e\x88\x08\x0e\x9f\x97\xf6\x0c\x58\xc8\x25\x13\x91\x2a\xfd\xc1\x36\xb7\xb6\x7f\xeb\x8c\xb9\x7b\x27\xe5\x51\x1a\x80\xfe\x0f\x5f\x19\xd8\x4b\x0d\x22\xf3\x8c\x56\x9f\xe1\x55\x9c\xd7\xd1\xe7\xb5\x79\x5e\x64\xd1\x81\x96\xa0\xfa\x78\xd4\x78\xf8\x31\x6f\x0c\x6a\x98\x46\x01\x12\xe5\x0c\xe3\x42\xeb\x8f\x47\xb4\xb1\xe3\x14\x12\xe4\xe6\x84\x53\xb0\xc2\x29\x00\xc5\xae\x8a\xdd\xa1\x27\xd3\x27\x65\xd9\xde\xc4\xd1\x5d\x24\xab\xb1\xcc\x9c\x95\xd3\xd4\xbf\xc7\xd7\x28\x6a\x60\x58\x44\x91\x09\xac\xed\xc2\x1e\x28\x34\x06\x43\x49\x10\xd7\x0e\xee\xf7\x51\xe8\x96\x17\xeb\xc4\x95\xfc\x5e\x94\x65\x4b\xa9\x9d\xdc\x81\xe1\x7e\xdb\xfb\x84\x09\x66\x63\x6e\x2c\x9f\x05\xb8\xa9\xda\x34\xac\x01\x8a\x56\x4b\xb5\x1c\x9a\x01\x60\x5d\x44\xa9\x2f\xe2\xae\xce\x3d\xd6\x9a\x7f\x33\x05\x28\x96\x1a\x89\x6f\x46\xa7\xc4\xab\x2e\xdd\x97\xc8\x2e\x8b\x53\x43\xf7\xd6\x5b\x9e\x39\x9c\xe5\x0c\xd8\xf8\x93\x53\xe1\xfa\x8c\x8e\xc7\x85\x6d\x3c\x60\x69\x46\x82\x37\x64\xa3\xf2\x17\xde\xe9\xbf\x83\xa2\x73\xb1\xe8\x19\x39\x54\x87\x58\x63\x1b\xf3\x50\x7d\xbc\x53\x1f\xef\xa9\xcf\x87\x85\xa2\xf1\xf9\x62\xfd\x39\x35\x44\x76\xaa\xb5\x55\x87\x1b\xc1\x48\xeb\x67\xf4\xe5\x20\x6e\x88\xa5\x0c\xde\x7e\x23\xc3\x77\xfd\x29\x3c\xe6\xeb\x93\xcb\x84\xe3\x7b\x7f\xbb\x7e\x6a\x99\x6a\xfc\xeb\x0d\x43\x95\x9f\x76\x73\x3a\xde\x34\x62\x45\xd1\xd1\x6c\xda\x6a\xee\xe0\xbe\x35\x22\xb1\xf1\xf6\xae\xd2\xda\x64\x36\x28\x83\x97\xc2\x4e\x94\x0d\xca\x5c\xae\xfb\xf6\x68\x23\xce\x97\x73\x5f\xe2\x46\x1c\xbc\x51\xa9\xa7\x6a\x05\x2e\xa5\x5a\x29\x5b\x2a\x68\x7d\x24\xc5\x67\x7f\xd6\xd2\x38\xbd\x27\x73\x8c\xe0\x68\x73\xda\xdf\x9f\x51\x73\x53\xf9\xad\x36\xc4\x11\x45\xc6\x1b\x04\xe2\x14\xb9\x37\x1f\xa1\x3b\xe7\x2b\x51\x54\xf9\xec\xd4\xac\xee\xf5\xee\x5f\xae\x53\xd5\x75\x7e\x4e\x75\x9f\x1c\x98\xfb\xea\xe9\xb7\x03\xaa\xc9\xa2\x43\x20\xd0\xec\x85\xcc\x24\x39\x27\x68\xfc\x21\xd7\xd9\xcc\x5e\x46\x1d\xca\x54\x8d\xe4\x24\xd8\x13\x91\x49\x42\x15\x13\x73\xb1\x98\x2e\x27\x25\xbf\xe1\xe5\xbf\x3d\x9e\xeb\x22\x93\x24\x97\xf8\xb7\x8f\xc0\x6e\xbc\x07\x10\x33\x7f\x63\x8b\xc8\x0d\x55\xe8\x0c\xe1\x33\x06\x7e\x1c\x0d\x45\x77\x9b\x7e\x7a\x30\xfe\x53\xf4\xe4\xec\x7f\x7d\xef\x3a\x3d\x5c\xd7\xe2\x0e\xc1\xfb\xff\xa1\xc1\x9f\x6c\xd0\xbf\xb2\x76\xff\x57\xa8\x5f\x3f\x75\x3b\x93\x93\xd5\xf6\x02\x4e\x7e\xd8\xd0\xd2\x9d\xd0\x15\x2f\xf4\x6a\x9b\x3d\x7a\xfb\xfa\x11\x99\xc7\x7b\xc5\x32\x94\x71\x57\x7e\xde\xb7\xfa\x00\x1a\xb6\xd9\x78\x46\x11\x7f\x23\x24\x04\x5d\xf8\xbe\xa4\x8d\x94\x3f\x16\xd7\x0f\x15\xe9\x4d\x05\x31\xe1\x43\x45\xd6\x29\xed\x18\xf4\xac\x00\xd0\x30\x87\x42\xf1\x79\xcd\x27\xed\x5b\xde\x98\xb6\x99\x14\x14\x54\x1f\x2e\x17\xb1\x6b\xa2\xe4\x0f\x97\x1d\x25\xff\x55\xe9\xf5\x83\x65\x03\xfa\x0d\x24\xfd\x46\xab\xc3\xfe\xc1\x82\x11\x02\xa7\x4e\xfc\x60\xc1\x51\x62\xdb\x88\x07\x0b\xf6\x8d\x58\x73\x78\xe1\xc4\x67\xb5\x56\x62\xa7\x07\xdf\x18\x68\x97\xbe\x6d\x25\x1b\x27\x6f\xa6\xb6\x2d\xf9\x64\xe9\x51\x6b\x40\x55\xf8\xe1\xd2\xa3\xd4\x30\x28\x9f\x2c\x3e\x0c\x8c\xcf\xf1\x89\x0a\x42\x7a\x54\x1f\x78\x72\x30\x6d\x96\xa0\x05\xe4\xe0\xc1\xde\x42\x96\x97\xdd\x06\x75\xb2\x00\xd2\x9d\xcf\xf0\x82\x57\xd5\x27\xeb\x08\x50\x13\x36\x57\xc5\xb5\x79\x53\x5c\x75\x58\x8b\xb6\xad\xc1\xdb\x28\xfd\x6b\xb5\xe9\xe4\xa9\xd5\xb9\x16\x4b\x8a\xfe\x64\x9a\x8e\xab\x81\x26\xb5\x91\xf5\xfa\x30\xbd\x50\x2b\x41\x7b\x37\x03\x80\x07\xb1\x55\x59\x4d\xa1\x02\x4e\x2e\xa8\x76\x93\x81\xc1\x3b\xef\x4e\x65\x72\x5c\xfc\x9b\x24\xe4\xd4\xed\x40\x95\x99\xc8\x4a\xb5\xd3\xdf\x3e\x8b\x8b\xfb\xc6\x3a\xb7\x54\x3a\x98\xe7\x64\x49\x18\xc3\x04\x4c\x6d\x0a\x59\xed\x55\xc5\xe1\x91\xbc\x51\xcb\x03\x88\x61\x3d\xa3\x15\x79\xc2\xb9\x0f\xa5\x03\xe9\xbe\xaa\x59\x09\x11\x5d\xae\x40\x8a\x46\x00\xc7\xc3\xde\xa8\x54\x8d\xf6\x2f\x40\xc5\x61\xc3\x33\x4c\x4e\x05\xe2\x5a\x12\xf8\x71\x39\x25\x7d\xf1\xa3\x19\xa1\x61\x50\x7f\x2a\xe4\xb5\x9d\x05\xa7\x3f\xee\xf2\x8f\x9a\x01\x8f\xe1\x92\x1a\x57\xf1\x98\x50\x41\x93\x51\x18\xa1\x24\xc2\x0e\xf0\xc0\xe0\x41\x85\xc5\x63\x05\xb4\xfa\xe6\x91\x07\x07\x05\x2a\x5b\xf4\xb5\x67\x4a\x46\xbc\xcf\x39\xfd\xa8\x08\xa0\x5d\x35\x7c\x45\xdd\xc8\xf1\x8c\xf6\x86\xd3\x19\x69\xb6\xfa\xd4\x74\x35\x24\xa8\x80\x15\x17\x5f\xaf\xab\x0c\x80\x5a\x4e\x54\xf2\x0f\x60\x85\x2e\xd7\xa8\x25\xf4\xaf\x2f\x88\xa0\x7d\x83\xb0\x39\xe7\xda\xaf\x05\xd9\x93\x78\xa1\x97\x83\xd6\xf0\xf4\x0e\x09\x95\xde\x49\x92\xb3\x77\xaa\xc1\x0b\xfd\xea\x77\x3c\x41\x74\xbf\x1c\xcd\xa8\x03\x33\x24\xa7\x80\x56\x47\xd5\x9e\xcb\xce\x45\xb9\x97\x90\xc8\x84\x26\xf8\xa8\xf7\x09\x4b\x02\x3e\x69\xc5\xda\x4b\x23\x5d\x4b\xf6\xca\xe1\x35\x35\xb4\xd6\xb6\x4d\x32\x84\x96\xb0\xe8\x2b\x63\x5f\x0a\x93\x3d\x1a\x67\xf3\xe1\x17\xe4\x91\x25\x27\x19\x67\x6a\xa1\xc2\x6c\x2f\xe9\x94\x9c\x17\x17\x75\x00\x18\xa5\x38\x5c\x08\xb5\x28\x40\x8c\xfd\xe8\x1f\xd9\x6a\xb7\x3e\xee\xb8\x29\x8e\x3b\xf2\xc5\x23\xe1\xb0\x3a\x09\x11\x6c\x38\x0d\x4b\xf9\xd1\x3f\x8a\xac\x34\x64\x1e\x27\x30\xcd\x04\xd9\xea\xb8\x32\xba\x3c\xae\x94\x34\x5a\x95\x8d\xb2\xb4\x4f\x0a\x02\xb9\x47\xff\xa8\xb2\xad\xd8\x98\x46\x92\x8e\xe2\xcc\xcf\x52\xf3\x95\xba\x96\xe2\x0f\xbe\x3e\xdb\xa9\xb5\xd8\x08\xae\xcf\x40\x86\x7f\x96\x8c\x2a\x32\x90\xe0\xfb\xc9\x8b\x59\x40\xf1\x3b\x79\x52\x9a\x71\x32\xe2\xce\x15\x2f\x4b\xbe\x36\xba\xc4\x00\xe1\x02\x76\x6b\xfc\x96\xf8\xed\xdd\x93\x72\x42\xf9\x69\x2d\x27\x57\x45\x25\x56\xec\x0e\x58\x89\xa4\xe6\xb1\x12\x8a\x0c\x43\x12\xf1\x52\x09\xfd\x79\x6f\x03\x90\x5b\x4c\x28\x70\x6d\x49\xcd\x14\x26\xd4\x5e\xae\x92\x70\xcf\x4a\xe8\xb7\x6a\xc7\x7d\x40\x7d\xcf\x4b\xa8\x63\x0e\x13\xcf\x26\x62\x88\x2f\xcf\xff\x4e\xe8\x53\x38\x85\xf3\x24\xe6\x33\x12\xfa\x55\xb1\x7a\x5f\xed\x8b\x55\x1d\xe1\xf5\x80\x5c\xef\x42\x82\xa4\x93\xc2\x9e\x19\x49\x7d\x7e\x84\x2c\xf6\x77\x9e\xd4\x27\xbc\xed\x8b\xe5\x0a\x92\xf6\xd6\x4f\xe8\x77\x70\x50\xe4\x49\x6b\x55\x27\xf4\x59\xb5\xca\x93\x96\xf0\x2e\xb1\x2b\x7d\xb2\x5f\x3d\xc5\x2a\xd9\x1d\xce\xd0\x93\x24\x4f\x82\xd4\x30\xa1\x18\xf8\x14\x9b\xeb\x44\x55\x3e\xf4\xef\x80\x8b\xb6\x56\xa1\xa9\x21\x54\x73\x08\x85\xef\xdf\x5a\xdf\x76\xe4\x13\x3b\x98\x5e\x94\xe0\x23\xec\xbc\xb8\x70\x98\x22\x0c\xfd\x79\x9f\xc4\x33\xeb\xda\x63\xe7\xa0\x39\xc1\x18\x01\x0b\xc4\x46\x04\x2e\xd4\xc7\xe0\x3a\x09\x51\x6e\xd9\xc0\x2a\x0d\x99\xc2\x62\x70\x11\x75\x9e\xb0\x6e\xb0\xb0\xd6\x34\x46\xdc\x5d\x68\x21\x1a\x4c\xd6\xd1\x6e\x85\x60\xec\x6b\x3b\xc8\xf0\xf2\x8f\xdf\xcf\x93\x3c\xb1\x37\x72\xff\xfd\x8d\xfb\xfe\x81\x7f\x34\xcd\xd1\xf5\x31\x3f\x6a\x7e\xd3\x8c\x79\x0e\xe3\x0c\xc4\xb0\x19\xf1\x53\x1d\x11\x4d\xe9\x22\x2c\x2a\xcb\xd2\xf9\xd0\x65\x08\x7d\x19\x75\xe6\x67\x37\xd1\xf5\xda\x69\x54\xf0\xb3\x9b\xe1\x38\xda\x0e\x5f\x4f\xf8\xa6\x28\x4b\x4b\x5e\x0e\xd7\xdb\x3c\x81\x0d\x8e\xcb\x90\xef\x8a\x55\x75\xeb\xd7\xe0\xf3\xa4\xb5\xbb\xdd\xa8\x27\x4d\x3a\x80\xa1\x3f\xf6\xac\x8f\x1f\xda\x8b\xc3\x36\x07\x4b\x0d\x37\x0e\x17\xfa\x55\x08\x8d\x0b\x7d\xd2\x59\x0f\xb8\x44\xfb\x16\xc3\x2f\x49\x93\x34\xc4\x43\x53\xc7\x45\x8b\x37\x69\x93\x0d\xb7\x31\xba\x34\x01\x5a\xe8\xd2\x87\x0b\x87\x6f\x78\x73\x0d\xd6\xf7\x17\x5f\xde\xf7\x49\x9e\x78\xb1\xba\x0f\x7b\x93\xe4\x49\x93\x83\xf4\x31\xaf\x92\x3c\xf1\x47\x2c\xce\xc9\xae\x88\x69\xc3\x6e\xdd\x25\x0d\xbb\x75\x0f\x65\xd8\xad\x7b\x08\x83\x0b\xf4\x74\x60\xb7\x6e\x90\x85\xdd\xba\x9f\x2a\xec\xd6\x7e\xfb\xb7\x42\xbb\xa4\xc2\x36\xc5\x13\x85\x10\xda\xd8\xdc\x31\x45\x68\x6e\xee\x06\x41\xb0\x25\x35\x08\x82\x5f\x16\xbb\x75\x8b\x1e\x34\x56\xd1\x27\x09\xc2\x7d\xa9\xe2\x29\xbd\x9f\x68\xec\xd6\x0d\x9a\xb1\x5b\x37\x48\xc6\x6e\x7d\x0f\xc5\x88\x22\x1c\xc1\x80\x79\x74\x9b\xa1\x43\x2d\xba\x71\xf5\x44\x77\xe9\xc5\x6e\xdd\x43\x2e\x76\xeb\xce\xc2\x6c\xbe\x0a\xf8\xc9\x8a\xba\xda\x96\xcf\xfb\xa9\xbf\x9f\xea\xb8\xd8\x36\xd1\x89\x0f\x8c\xf6\xe9\xd2\x59\x1d\x31\x29\x5a\x38\x5a\x44\x13\x24\x44\xc9\x12\x76\x80\x3b\x8d\xd9\xcd\xbc\xb1\x1d\xf2\xf8\xdc\xa4\xaf\x26\x52\xe9\x5d\x51\x8a\x3f\x1c\x18\x28\xeb\x2a\x5e\x47\xaf\x97\xfa\x4c\xc8\x33\x8e\x96\x47\xad\x17\x5d\x5d\xab\xb3\x59\xfe\x1a\x59\x39\xcb\x65\x1d\xa3\xb6\x1e\xb3\x35\x3f\x16\x86\x98\x62\xb5\x25\x5e\x3f\x43\x13\x62\x79\x3d\x21\x0f\x80\x71\x93\x4c\x26\x13\x04\x29\xc1\xad\x79\x06\xe5\xf9\x14\xa7\x5a\x91\xfe\x16\x0c\xd0\x80\x7b\x4d\xce\x12\x42\xb7\x20\xf6\x05\x64\xb5\x2e\xac\x1a\xad\x06\x8a\x31\x11\x78\xd8\x79\x56\x31\x31\xf9\x5d\x09\x89\x99\x0b\x26\x49\x0e\x61\x1e\xfa\x4e\x8d\x66\xa4\x91\x00\x1a\xe6\xcd\xc3\xcd\xa2\x82\x4e\x96\xf0\xac\x57\x0e\x59\xd1\xe5\x3c\xbf\x93\x2b\x25\x2b\x51\x19\x2e\xcd\xd9\x95\x90\x6b\x21\xaf\xab\xb3\x8d\xd2\xc0\x77\xa2\x4a\x8b\x2d\x87\x15\xa7\xa8\xab\xa1\x87\x07\x7c\x2a\xe6\x8b\xc3\x92\x99\xc5\x21\x68\x40\x70\x7c\x2c\xdd\x58\x4e\xbf\x54\xea\xfd\x61\xff\x3d\xbf\xed\x79\x10\xc7\x51\xca\x0c\xea\x58\x13\xd0\x2c\x9a\x1b\x54\x30\xe2\x54\x92\xdc\x2c\x9c\x0a\xca\x8c\x31\x26\x88\x37\xbe\x53\x70\xd5\x4f\xa2\xb9\xa8\x23\x77\x87\xd2\x88\xc4\xa3\x0d\x0c\x99\x48\x53\x9d\x09\xaf\x60\x93\x20\x9a\xd0\x3a\x41\x50\x9c\x68\xe2\x51\xfb\x68\x81\x18\x6a\xf8\xc8\xbd\x4c\x86\xec\x15\x7c\x47\x3a\x50\x5e\x3b\x1f\x5b\xd9\x2c\xc2\x3f\xb1\x6f\x24\xba\x6a\xa8\xa3\xd0\x23\x57\x13\x5d\xaf\x91\xa0\x07\x66\xaf\x5b\xca\x42\x2d\x83\x6b\xaf\x82\x04\xa8\x8d\xd3\x89\xee\xed\x50\x8b\xea\xa5\xbb\x3c\x34\x87\xdb\x6f\x93\x1e\xad\x21\x9e\xff\x5d\x2d\x82\x83\x74\x3f\x81\xb0\xa5\x13\x30\x35\xb6\x84\xd3\xfd\x02\xe2\xe0\x7e\xbf\x54\x6b\xfb\xeb\x44\x77\xee\x36\xf7\x43\xb1\xeb\xd1\x48\x58\xa5\xe9\x9f\xff\x9d\x35\x1d\xdc\xdb\x3b\x7c\x0d\x38\x8e\xf2\xf0\x46\x23\xa8\x64\x7a\x10\xe1\x41\x0d\x99\xf4\x4e\xde\xbf\xd1\xc5\x7e\x0b\x4e\xdf\x33\xef\xf4\x3d\x4d\xa1\x89\xe8\x8e\x44\xfa\x7b\x91\x24\x34\x7b\x37\x0f\xbe\xe0\xf3\xe0\x2e\x9e\xa4\x29\xf6\x2e\x64\x70\x17\x27\x9f\xc3\xa5\xcb\x6b\x3f\xf2\x36\xc7\x6e\x1d\x65\x80\x8b\x95\x24\x74\x08\x16\x23\x80\x27\x81\x0d\xc1\x11\x0a\x09\xfd\x8d\x4b\x12\x2a\x49\x74\xd3\xbd\x89\x2d\x49\xbb\x73\xb2\x06\xf5\x1b\x7e\x7a\x05\x97\xf6\x37\xfc\xa3\x79\xa2\x79\xd1\x1d\xdc\xcc\x30\x33\x7f\xa6\x32\x43\xf2\xbb\x13\x99\x80\xa1\x15\xe3\xf8\x9f\x0e\xcd\xc4\x2b\x2c\x02\x66\x91\xd3\x41\x04\x1d\x3f\x1f\xc1\xea\x70\xdb\x99\xc9\xbe\xb6\x6f\xb1\x79\x1a\x9f\x59\x23\x9a\x35\x62\xbd\xdf\x00\x33\x09\x4a\x8d\xfe\xa1\xe3\x07\x05\xde\xd6\x42\x38\xd3\xa0\x90\xe8\x4d\x90\xaf\x9b\xb6\x2d\x41\x25\x92\x80\x63\xfe\x00\x29\x7e\xa5\xd6\xb7\xa7\xc8\x0e\x97\xdc\xb9\x6e\x32\x80\x80\x40\x23\x32\xd0\xf9\xe2\x93\x8d\xd2\xbb\x34\xcd\xbe\x11\xee\x37\x4d\xaa\xc3\xd5\x4e\x98\x84\xc2\x8c\xa1\x26\xf0\x6b\x08\x7a\xc9\xcd\x56\xad\x9f\x94\x4a\xd6\x7a\x69\x2e\x93\xb2\x64\x16\x12\x0d\x8c\xbe\x75\x1b\xd2\x07\xb1\x48\xe4\x23\x33\xf0\xdd\x8a\xe1\x2a\xfc\x8c\x43\x8b\xd3\x69\x05\x1e\x43\xbe\x51\xe4\xee\x74\x32\x93\x8d\x90\xa2\xda\x82\x41\x5d\xfc\x34\x64\x26\x96\xff\x60\x92\x82\xf6\x68\x77\xde\x23\x05\x79\x70\xfc\xd2\x97\xa2\x11\x2e\xaa\x1f\x8a\x1f\xa8\x04\xbd\xf4\x7d\xa1\xb9\x34\x3f\xa8\x35\x77\xee\xba\x1c\x32\xd7\xa4\x63\x17\x99\xa1\xf7\x43\xb0\x8c\x70\x2f\x76\x68\x18\xe2\x46\xf6\xaf\xbd\x23\x9b\xf8\x46\xc4\xda\x97\x36\x95\x1b\x05\xf4\xea\x58\x7f\x33\x45\xc8\xe9\xd4\xad\x48\x2a\xc9\x13\x07\x99\xf2\xaa\xf9\x74\xd6\xe8\x04\x0a\x6d\x91\x07\xcc\x0c\xe5\x13\xc9\x3f\x9a\xd7\xe2\xaa\x14\xf2\x9a\x9c\x48\x8d\x89\x72\x56\xe1\x61\x74\x6d\x09\x15\x92\xee\xd7\x46\xf3\x62\xd7\x56\x86\xdc\x8a\x6a\xb2\x57\x55\xc0\xbc\xd0\x86\x4d\x3d\x72\x84\xcd\xc5\x38\x7e\x39\xd1\xb7\x25\x83\xff\x41\x03\x80\x31\xbe\x0e\xfd\xe8\xf3\xd7\x41\xb0\x38\x7d\x49\xa5\xbf\xf1\xb0\xe9\x69\x70\x2d\x63\x40\x79\xae\xca\xfb\x8c\x43\xf7\xaa\xba\x64\x51\x4b\xdc\x59\x71\xa2\xd5\x83\x79\x1c\x7c\x47\xa8\xf3\x44\xf7\x9c\xbf\xbf\x2f\x83\x2b\xda\x49\x58\x7d\x19\xe4\x78\x44\x77\xe0\x27\x6a\x07\x38\xce\x6c\x0f\x50\x97\xea\xa2\xdb\x38\xf2\xe9\xb2\x47\x23\x72\xa2\xbc\xb8\x17\xb2\xf7\x9e\x16\xf5\x42\xdc\x72\xe2\x2c\xf6\x99\x03\x2b\xb0\xbf\x61\xcd\x59\x06\x6e\x8e\xff\x2c\xa5\xe4\x96\xd1\x00\x68\x76\xd7\xc2\xd1\xc8\x97\x4c\x0d\x34\xe7\xd7\xad\x28\xf9\x43\x88\xf3\x7b\x55\x9d\xc3\x0f\x5e\x98\x8c\x93\xf3\x00\x7a\x15\x26\x0b\x0b\x02\x94\xb9\xbc\x47\x3c\xcc\xeb\x72\x1e\x2d\xde\x56\x60\xff\x38\x5d\x3a\x5e\xf3\xa1\xae\x03\xce\x8b\xff\x1a\xb4\x6b\xe5\x27\x1a\x94\x47\x3b\x5e\xe4\xa3\x95\xdd\x5c\x42\x90\xe3\x13\x53\xe0\x4d\x4b\xdd\x0e\xf0\xb3\x60\x2e\xc7\x33\xd2\x5e\x74\x06\x20\xf4\xaf\x8a\xd5\xfb\xd6\x23\xb0\x4f\x31\x66\xfc\x44\xf1\xa5\xf4\xbe\xb5\xd8\xd8\x50\x17\xf5\x86\xf4\x20\x26\xed\xdd\xb5\x55\xf1\xb0\xd1\x3a\x43\x63\xc7\xf6\x6c\xd6\x76\x10\x14\x47\xee\xdd\xd5\xce\x82\xa5\x2f\xd3\x38\x6b\x6e\xb6\x79\x5f\x9b\x42\x6c\xa3\x5d\x08\xc0\x8a\xf7\xbc\x16\x8a\x41\x18\x96\x56\x69\x01\x1c\x2e\x94\xf1\xbf\x5c\x3f\x38\xb5\xca\x7b\xcc\x82\x3a\xe8\xf9\x01\x73\x35\x5e\x22\x78\x27\x09\xcb\xc3\xf9\xc8\xe2\xb5\x92\x42\x9a\x4a\x5c\x47\x97\x53\xef\x5e\x28\x4d\x87\xb3\x21\xab\xb1\x69\x2c\x4d\x60\x12\x55\x62\xd0\xdb\x91\x44\x03\x74\xc1\x7a\xcc\xc4\xb4\xdd\xd5\xea\x85\xfa\xc0\xf5\xd7\x45\xc5\x33\x92\xf3\x13\xe0\xde\x37\xb6\x50\x75\xb8\xaa\x8c\x0e\xe5\x53\x1e\x4c\x94\x19\x13\xb5\xe2\x7d\x4f\x43\x42\x4a\x58\xd0\xab\x83\xd6\x0f\xd8\xef\x77\x47\x21\x5a\x7f\x76\x40\x4e\x74\x2b\xd6\xfc\xb9\xd0\x95\x69\xbf\x2c\x86\xd3\x27\x4c\xcf\x88\x71\x60\x3b\x7c\x0d\x19\x39\x6d\x84\x2c\xca\xf2\xb6\x95\xd0\xee\x25\xa7\x99\x7a\x25\xd9\x94\xde\xda\x43\xce\x9e\xff\x88\x84\xda\x77\xc4\xd9\xbc\x15\x5b\x2c\xdd\x12\x00\xf5\xf7\x00\x47\xe1\xcf\x38\xb1\x66\xa3\xd1\x95\x3c\x0d\x84\xca\x6e\x25\xa1\xb7\xd1\x51\x35\x01\x2c\x5c\xd6\x3c\x09\x10\xd3\x88\x7f\xdc\x97\x62\x25\x4c\x79\xfb\xb5\x4d\xc3\xd7\x4d\x68\x0d\xb5\x02\xf7\x9c\x8c\xa3\x0f\xe3\x83\x7e\xb5\x07\x32\x92\xa6\x5f\x81\x81\xa8\x54\x0e\x00\x02\x6a\x48\x48\x03\x68\x0f\x34\xaa\xc8\x40\x83\x4b\xd1\x38\x19\x45\x4c\x6b\xaa\x27\x46\x91\x70\x35\x45\x87\xe5\x54\xe0\x3f\x77\xe1\x0a\xfd\xaf\x9d\x56\x28\x7f\xdb\xaa\x23\xed\x2d\xab\x62\xaf\x65\x56\x4c\x76\x76\x18\xd7\x60\x44\x85\x80\x1a\x03\xee\xf1\x9b\x56\xaa\x2c\x8b\x7d\xc5\xd7\x73\xf0\xb5\xfa\x46\x64\x05\xf1\xae\x56\x73\xb0\x30\x00\x1e\xb7\x9a\x18\x05\x6f\xb6\x90\xc0\xc3\xba\x54\x1e\xc1\x47\xba\x70\x42\x1b\x95\xb1\x37\xed\xda\x2b\xcf\x64\xfb\xac\xcd\x46\xa4\xe9\xf0\x5b\x19\x81\x33\x92\x34\xe5\x69\xfa\x5a\x64\x05\x6d\xf9\xd5\x41\x53\x99\x4e\xee\x7e\xcb\x62\x52\x43\xaf\x3f\x30\x78\x25\xfb\x43\x66\x8d\xf1\x23\xf4\xc0\x9e\x66\x25\x19\x1c\x2e\x6b\xb5\xaf\xb6\x9f\xde\x4e\x0c\x2b\xe9\x3d\xa9\xd9\xa1\x1b\x53\xfb\xef\x25\xa7\x70\x4d\xec\xe9\x1a\xe8\xd9\x4b\x2a\x46\xde\x9f\x48\xdc\x09\xcf\x98\x75\x56\x2e\x1b\xba\x98\xc2\xa8\x9d\x58\xb9\x62\x63\xd0\x2e\x4f\x2c\xe2\x30\x30\xeb\x4c\xd3\xef\xdd\x73\xad\xe5\xa4\xbd\x0b\x5c\x98\x4c\xed\x4a\x4f\x28\x6e\x34\x42\x4d\x9a\x7e\x0b\x8b\x1f\x29\x05\x30\xb8\xae\x32\xfc\xc0\xed\x06\x2f\xa7\x8d\x5d\x68\xf7\x03\xeb\x55\x4d\x1c\x04\xc0\xb0\xe4\x4a\xa9\xf7\xb6\xe2\xc4\xf1\x82\x06\x8d\x5f\x38\x9b\xc5\x78\x0f\xd3\x73\xd1\x3b\xbd\xb5\xb7\xb2\x7a\x6e\xc5\x92\x16\x76\x6f\xa8\x9e\xbd\x11\x64\x2e\x85\x5f\xde\x1a\xdc\xd7\xcd\x55\xfe\x46\x64\xca\xae\x71\xc4\xa3\x1a\xcf\x18\xe3\x91\x53\x83\x28\x23\xec\x16\xd9\xce\x66\x14\xa1\x8d\x3c\x01\xec\x4e\xa7\x69\xec\xa4\xb3\x3d\x4a\x0e\x77\x20\xa6\x56\x11\x45\x02\x9a\x32\x06\x35\x4d\x5a\x23\x78\xd7\xb4\xca\xee\x76\x9d\xa6\xbf\x99\x4c\xd3\x36\x5e\x10\x3e\xdb\x4b\x4e\x61\x6b\x73\xaf\xd2\xc2\x6e\x6c\x62\x44\xe0\xb0\x5d\x79\x06\x8e\x72\x3d\x9e\x51\xe5\xa5\xa9\x7e\xf1\xf6\x03\x1d\xd5\x19\xda\x4e\xa8\x29\x6c\x73\x44\x38\x25\xde\x13\xae\x09\x5e\xac\x1c\x29\x73\xdf\x03\x13\x30\xa2\xbc\xf2\x69\xc5\xbe\xb0\x77\xa9\x71\x31\xa8\x80\x3c\x48\x50\x1c\x00\x97\xbe\x95\xd3\xe8\x6e\x8c\x1f\x82\x17\x40\xe5\x2d\x43\xbd\x61\x67\xc5\xc4\x7b\x64\xd7\x71\xbe\xe1\x5d\xd6\x0f\xcc\x64\x57\xdc\x5e\xf1\x6f\xc5\x7a\xcd\x65\x80\x40\x1f\xcf\x86\xec\x4a\x65\x7d\x91\xb8\xba\x8e\x47\x1f\xf9\xb3\xdc\xc6\xd1\xf7\x46\x44\xce\xa3\x11\x0c\x29\x6a\xb1\xb7\x16\x6a\xf6\x16\x21\x1c\xfa\x7a\x1b\x65\x75\xfe\x89\xae\x54\x14\x48\x39\x01\xe7\x51\xff\xe2\x98\x9c\xf7\xf6\xbb\xee\xd8\xb7\x0f\x76\xeb\x34\xb0\x67\x7f\x2d\x5e\x7a\x27\xdb\xbe\xad\x01\xe2\x74\x0b\x07\x72\x8f\x4e\xb3\x4f\x99\x49\xf6\x4c\x65\x92\x10\x97\x96\x39\xf1\x9c\x62\x8b\x46\x91\x96\x02\xa8\xc5\xd4\x1e\x92\xd2\xa1\x7b\xfd\x10\x79\x56\x79\x27\xda\xc6\x0e\x15\xd8\xdb\xd5\x29\x59\x35\x59\x95\x4a\x72\xfb\x3b\x1b\x4e\x09\xa1\x0a\xfb\x03\xd5\xbc\x40\xa7\x94\xf8\x5f\x13\xa8\x92\x44\x4e\x80\xa6\xe7\xe5\x05\x6c\xb7\xf7\x7c\x5d\xd3\xaa\x12\x45\xfe\x18\xbc\x28\x97\x13\x51\xfd\x08\xf4\xd3\x7b\x4b\x2d\xd8\x8d\xca\x10\xd8\x57\xf2\x0f\x67\x1f\x24\xf8\xd6\x3b\x45\xfd\x72\xf6\x52\x3b\xe4\x4e\xdc\xd4\xf8\x01\xfb\xde\xa0\xf7\xcb\x77\x92\xc4\x59\x70\x7c\x6c\x81\xb7\x12\xb0\x41\x69\xc1\xf6\x68\xb8\x34\xc0\x91\xb7\x43\x4a\x15\x20\x0e\x15\x97\xd3\xe3\x71\xca\x58\xe1\x18\x5f\x85\xb4\xfd\xd7\x2d\x97\xcf\x76\x7b\x73\xeb\xeb\x52\x40\x3c\xbc\xea\xcd\xfa\x57\x01\xc7\xa5\xaa\x0f\x35\x4b\x08\x54\x3c\xa0\x35\xf2\xcc\xa2\x99\x6f\xd9\xc4\xe7\x70\x60\x6b\x76\xd3\x83\x1c\xfc\xa5\x3a\x54\x1c\xec\xb2\xab\xe3\x31\x2e\xf1\xb3\x21\xe1\xa5\x93\xc4\x20\x9c\x76\xd6\x28\xa3\x8e\x61\x6e\x96\x43\x0f\x60\x5d\x3e\x47\x01\x37\x2a\xc8\x53\x4d\x15\x39\x1e\x8d\x73\x7f\xaf\xe1\x7f\x9a\x42\x1a\x1d\xa7\xe9\x7b\xc5\xb0\xf5\x08\x79\x7d\x16\xca\x3f\xc3\xe3\xf6\x6c\x5f\x68\x23\x2c\xe3\x7c\x86\x6e\x85\x80\xab\x39\x2b\xe4\x19\xff\x28\x2a\xc8\xa2\x24\x4f\xc8\xe0\x23\x1b\x4e\x4f\x6a\x52\xac\xd7\x6f\xd4\xb7\x68\xae\x9e\xa6\xbf\x8b\xe0\xc7\xdd\x00\xae\xb2\x77\xe0\x0e\x87\xb9\x65\xb3\x13\x90\x60\xf1\x92\xfe\x50\xfc\xe0\x80\x7e\x69\xe9\x9d\x7b\x1e\xc0\x5b\x25\xae\x2a\x80\x72\x2a\x5d\x47\x46\x2d\x48\x8d\x43\x9a\xaa\x06\x33\x76\xb8\x07\xcc\xef\x0f\x9b\x9c\xb1\x43\x9b\x15\x4a\xd3\xac\x82\x63\xa3\x51\x0c\x9c\x0c\x38\x8a\xaf\x05\x02\x49\xb6\x6d\xd6\x63\x96\xb3\xf1\x35\x6f\x7c\x05\x3b\x3f\xb3\x24\xf9\xc2\x2c\xa9\xc1\x58\x1d\x9d\x0f\x96\x9a\x5a\x46\x8b\x7f\x38\x7b\x65\xf7\x16\xc8\x83\x6d\xed\x73\x33\x59\x6d\x01\x9d\xd2\x86\xe1\x08\xcc\xb5\x0f\x03\x97\x14\xe5\x89\xb4\xda\xee\x46\xcc\x8d\x64\xcf\xb0\x19\x72\xf7\x2d\x76\x03\x7a\x67\xe8\x94\xb8\x42\xec\x96\x7a\x25\x41\x89\x27\x4d\xbf\x11\x99\xa2\xc9\x15\x88\x09\xd1\x2e\xee\x99\x6c\x01\x8f\x90\x3b\x15\x78\x2c\x28\xa1\x46\x6a\xcd\x9e\xd9\x9d\x96\xf1\x00\x6e\xb0\x56\xd2\x5f\x0b\x8f\x47\xde\xc0\x3c\x08\x11\xe8\x30\xd7\x16\xe8\x16\x52\xd6\xee\x5c\xa6\xfc\x05\x8b\x2a\xc7\x5f\xc2\xec\x1d\x60\x57\xa0\xff\xfb\xfe\xe3\xbf\xb9\x87\xb8\xce\x0e\xb4\x35\x44\xb5\x4e\xa6\xed\x55\x51\x55\x3f\x14\x3b\x6e\xf7\x36\x40\x45\xd9\x1f\xce\xbe\xf2\x16\xbf\xb8\x5c\x87\xdf\xab\xaa\x8a\xdc\xaf\x62\xc1\xe7\xab\x0b\x37\x67\xe7\xab\xd1\x88\x18\x5b\xe5\xca\xdf\x73\x06\x2a\xb0\xc7\xdf\xf3\xec\x00\x2c\x2f\xfd\xbb\xc8\x0e\x9e\xdd\x7d\xb2\x5e\x5b\x66\xf7\x40\x55\xf0\xb1\xa4\xe0\x46\xff\x01\xa4\xb1\x70\xcc\x3c\x7c\x5d\xdd\xb9\x43\xcf\x8b\x9e\x10\x72\x95\x99\xfa\xc1\x17\xf4\x29\x79\xec\x86\x90\x2f\xf4\xd2\x71\xcf\x70\xd6\x46\x4f\x2f\xcf\x1a\x40\x33\xc0\x00\xda\xba\xab\xc8\xa2\x0a\xc0\x3a\x26\xab\x52\xec\x7f\x54\x55\xd7\x58\xaa\x1f\xb2\xc6\x55\xd7\xf0\xfb\xfb\xb1\x25\x3c\x44\x98\xcc\x08\x1e\xd3\x1b\x83\xd8\x1d\x25\xd9\x42\xfb\xde\xd9\x71\x5c\x0e\xde\x89\xac\x11\xd2\xac\xb8\x36\x78\x26\x6d\x56\x5e\xfb\x41\xeb\xd3\xca\xf6\x71\x0b\xb1\x3c\x77\x4e\xb1\xec\x2a\xb4\x33\x07\x0b\xd3\x0d\x1b\x6c\xd7\xba\x20\xc7\xf3\x88\xf1\x98\xce\x08\x89\x5d\x4f\xbf\x0a\xa2\xa2\x68\xba\xfc\x6c\x81\x03\x66\x2f\x6c\x52\x4c\xd7\xd9\x5e\x47\xa8\x78\xe4\x81\xa9\x6c\x3d\xd8\x4b\x5f\x41\x6d\xe6\x2c\xa3\xc6\xbc\x91\x2d\x4f\xd4\x4e\x01\x3b\x2a\x52\x12\xbe\x90\x4b\x07\xac\x7a\x3c\x66\x3a\x62\xa7\x6c\x4c\x10\x58\x45\x8d\x7d\x59\x37\xd6\x4c\x36\x96\x68\xb5\x9d\xdf\x68\xf6\x9c\x07\xef\xfc\x78\x15\x48\x53\x70\xaf\x1c\x07\x35\xae\x4c\xd2\x67\x31\xaa\x95\xc1\x07\xc4\xc9\xd1\x84\x39\x4d\x83\xf7\xf7\xb3\xc8\x9e\xcc\xd5\xb1\xda\x52\x05\xde\x75\xed\xaf\x82\x4d\x19\x70\x22\x28\x1c\x31\x70\x85\xaa\x3a\x36\xd8\x8d\xf1\x97\x4e\x9d\x9f\xf7\x5c\x01\x39\xde\xfc\xdc\xb5\x4f\x47\x68\xfe\x50\xc1\xf1\x98\x15\x13\x21\x57\xe5\xa1\x12\x37\xa0\x88\x32\xc7\x88\x0b\x66\x72\xf7\xcb\x10\x4b\x64\x60\x4d\x80\xf3\xda\xe8\x72\x5a\xf8\x9b\xe9\x50\x1f\x8f\x43\x5f\x49\xc4\x40\x90\xe0\xe5\xcd\x55\x0a\x20\xc7\x51\x95\xa0\xd9\x32\xb7\xe1\x97\x50\xa3\x51\x97\x86\x9c\x67\x12\x5c\x62\xd7\x53\xec\x8e\xa7\xc2\x39\x0a\xa7\xce\x9d\xa0\x4d\x4f\x82\x4d\xf1\x99\x3c\x01\x38\x6d\x41\x68\xf9\xff\xc9\x88\x7d\x56\xe3\x3f\x6f\xb0\x3e\x67\xac\x3e\x7f\x82\x1e\x18\xb0\x30\x52\x36\xe9\xd8\xd0\xba\x2f\xf5\x10\x8e\x4d\x73\x10\x2d\xe3\x5b\x10\x7a\x60\x33\xcb\x0c\x44\x16\x8d\x74\x65\xb9\x71\x0c\xf2\x9a\xf1\xa3\xec\x30\x17\x39\x7a\x35\xaf\xcf\xa1\x35\x9b\x9e\xaf\x2f\x22\xa1\xc4\x3a\x02\xe6\xce\xb6\xac\x5a\xac\x97\xe0\x1a\x3e\xdb\xb0\xd7\x32\x2b\xe9\xd6\x0d\x08\x21\xf3\x43\x9a\x66\x5b\x4b\x78\x30\xf5\x26\xb4\xd5\xfe\x1a\xad\x48\x0e\x91\xe2\x04\x4a\x32\xb6\x42\xac\xac\x6c\x54\x66\x1b\xb1\xa5\x9b\x5a\x46\x91\x6d\x59\xe9\x2a\x75\xe5\x8f\xd8\xca\x4b\xe7\xb6\x28\xe1\xc0\xc6\x54\x51\x63\x8e\xc7\x0c\xe3\xd8\x8a\xda\x76\xd9\xdb\x5d\x7c\x95\xdb\x3a\x57\xaa\x67\x98\x6a\x74\x6f\xb2\x53\x05\xdc\xde\x8f\x32\xab\x08\xa1\x25\xb0\x79\x36\xa8\xb4\x41\x25\x41\x2e\x74\xcf\x9c\xf2\xcf\xf0\x80\x3d\xd8\xd1\x9b\xe6\x0c\x8c\x1f\xdb\xe8\x9b\xcb\x69\x9a\x56\x51\xdf\x1b\x03\xed\x04\x8e\x8b\xf5\x12\xfb\x8a\x1e\xce\x3b\x6b\x03\x12\x60\x3f\xf1\x61\x02\xf9\xba\x41\x5d\xea\x0d\x14\xb7\x77\x66\x3e\x64\xe0\x7e\xd5\x8e\x17\xf7\x35\xb1\xfd\xf1\xa1\x53\x73\x34\x32\xf1\xa9\xe9\x3c\x68\x68\x27\x6e\xd2\x6e\xbf\x68\x68\x2e\x5c\xb1\xfc\x11\xd6\xba\x69\x81\xde\x06\x9e\x69\x06\xce\xb4\x53\x38\xc8\xb1\xa6\x39\x47\x3c\xf5\xd0\xac\x27\x0d\x60\xf0\x1e\xb9\x1b\x33\x0b\xb8\x82\x55\xef\x92\x11\x9f\x88\x75\x0b\x3a\x07\xc8\x75\x2d\x9c\x9e\x82\x63\x12\xb0\x0d\x8a\x26\x05\xce\x27\xe7\xeb\xe3\x3b\x91\x69\x7b\x1e\x85\x03\x49\x9c\xf0\x5e\x2c\x99\x3b\x8f\x5a\x15\xc0\xa7\xac\x85\x6a\x6d\xa6\xa0\x4b\xa1\x34\x52\x28\xb9\x10\x4b\x27\xae\x2a\x08\xcf\x7d\xbe\x8a\x4d\xcf\xab\x8b\xa2\xce\x57\xd5\xd3\x52\xb2\x62\x51\x2d\xe9\x81\x4d\xcf\x0f\xc1\xec\xe2\x7c\x34\x3a\xd8\x5b\xb8\x5a\x1c\x96\xe1\x9c\x2e\xfd\x0e\xf0\xea\x71\x67\x7c\xa0\xc2\xf4\xc3\x8a\x2f\xec\x51\xbc\x10\x4b\x56\x44\x8e\x38\xc3\xc0\x7f\x1d\xbd\x49\xf2\xf6\x91\x18\x9f\xf5\x5d\x77\xd4\xe8\x87\x1a\xe7\xbf\x16\xed\x64\x9c\x0c\x9a\x37\x1f\x98\xe9\xba\xc6\xf7\xd1\x71\xff\xd9\xe5\x37\x2e\x42\xad\xf2\x4d\x54\xf8\x4f\x4d\xb6\xb1\x49\x91\xc7\xb3\x7c\x5a\x27\xfd\xfd\x9e\xa4\x78\x5a\x34\x92\x3e\x6d\x39\x27\x8f\x45\x50\x63\xd3\xf8\x04\x37\xbf\x43\xa6\xdb\x2e\x65\xb9\x7b\x61\xa1\xc0\x4f\xe0\x4f\x65\x39\x08\xb4\x1d\xa2\xe8\xdc\x99\x1c\x8f\xd0\x83\xf1\x4f\xd2\x01\xab\x78\xd7\x37\x63\x85\x60\x3d\x98\xc5\x28\x2a\x2c\x55\x3e\x1e\xa1\x17\xe3\xdf\x21\xb9\xd7\x58\xb3\xd7\x7c\xb1\x1e\xdb\x6d\x52\xf7\xe1\x87\x96\x81\x3d\xe8\x2d\xb5\xe6\x5b\x86\x73\x41\x50\xef\x11\x36\x7a\x8d\xc8\x04\x02\x41\x85\x4d\x5f\xdf\xb9\xbc\xbf\xc1\x39\xf6\x23\x87\xd6\xb9\x33\xf4\xa9\xb4\xc7\xbd\x5f\xa8\x17\x53\x70\x9f\xc8\x42\x40\x0f\x47\xf8\x5d\x3c\x35\xd0\xf0\xe1\x34\xe2\xfc\x5f\x74\xa3\x67\x51\xf4\xf3\xae\xab\x3f\x86\xbc\x1f\xa1\x85\xed\xb7\x6a\xf7\xbb\x20\x0f\xed\xca\x7a\x47\x82\xbe\x67\xa7\xf7\x98\xe2\x10\xf6\x22\x4e\xef\x94\xd0\x95\x9d\xac\x83\x7b\x3e\xc3\xa9\x0d\xfb\xd5\xce\xb0\x20\x74\x8d\x49\x8c\xa2\x12\x27\xb3\x4e\xf0\xbb\x4d\x80\x3e\x1f\x57\x97\x6c\x9a\xa6\xeb\x0b\x36\x3d\x1e\x57\x17\xf0\xfb\x92\xc1\x38\xe2\x57\xdd\xa8\xe6\x2a\x4e\x53\xd1\xda\x02\xbe\x36\x4d\x2e\xd9\x34\x8f\xbe\xa6\xe4\x78\xc4\x6a\xfe\x93\x85\x41\xef\x24\xb9\xf0\xc5\xf9\xef\x69\xf0\x3a\x39\x9c\xc6\x37\x9a\x3f\x9a\x07\xd0\xb9\x61\x30\xdb\xe7\x84\xfb\x8d\x31\xae\x81\x1d\x6a\x8d\xd7\x90\xff\xe7\xc6\x5e\xf4\xf3\x2a\xd9\x1f\x00\x1a\xec\xd7\x12\x63\x72\x6e\x72\x80\x71\xa8\xb3\x7e\x15\x51\x9e\xcb\xc6\xb5\x33\x60\x3a\xc5\xf0\x13\xfe\x0c\x00\x41\x88\x8c\x12\x7d\x12\x8f\xc2\x37\x03\xea\x1f\xcd\xea\x16\x7c\xdb\x68\xfc\xc7\x34\x35\xed\xa5\xa8\x3b\xcc\x6f\xe3\x68\x11\x9b\x2c\x93\x70\xb2\x74\x77\x61\xc4\xb9\x21\x51\x09\xe3\x8f\x67\x97\xcf\x50\x8b\x10\xd3\x74\xea\xd3\xa6\xa9\xec\x4c\x3b\x0a\x1d\x7f\xf1\x00\xf6\xd1\x74\x86\x0e\xfd\x12\x33\xee\x58\x37\x3c\x14\xbb\x8b\xa5\x6e\x6c\x09\x18\x20\x3f\x36\x90\x13\xc1\x14\xe8\x6b\xe9\x60\x15\x1a\x57\x38\x1d\xb8\x3b\xcb\x42\xea\xfb\x56\xa5\xad\xaf\xc5\xff\xd6\x1d\x6f\xd3\xb3\xc6\x78\xc7\xb4\xcd\x0e\xac\x25\xcd\x51\xf4\x3d\xa4\x6e\x28\xfa\x06\x52\x34\x98\x23\x37\x14\x02\xae\x22\xf6\xaf\xe7\xa2\xec\x9e\x15\xbd\x03\x0d\xf8\x59\x7d\x3d\x24\x61\x0a\x44\x34\x05\x42\x65\x1f\x24\xa1\x1f\xfe\x65\xcd\x81\x7b\xdf\x65\x07\xb5\x1e\xd5\xf4\xdc\xf9\x53\x6e\x49\x3c\x46\x23\x4e\xe2\x70\xf0\xaa\x88\x32\xbe\x41\x4b\x7d\x80\x9c\x4e\xcd\x46\xf6\x3c\xac\x36\x74\x9c\x9c\x44\x06\x16\x0c\x78\xf7\x87\x3d\xf9\x4f\xc9\x5e\x4d\x5e\x00\xbe\xb0\x1d\xf3\xbe\x6b\x63\xb4\x73\xce\x84\x3c\xd3\x44\xb7\x2d\x14\xc0\x13\xb1\xad\x65\x21\x97\x0c\xb8\xbf\x41\x5b\x33\x43\xaa\x35\x67\x26\x92\x68\xfd\x1a\xaa\xf8\x51\x64\x86\x5c\x64\x4e\xb3\x02\xa4\x90\x4d\x67\x4f\x00\x75\xda\x40\x8a\x06\x9f\x70\x1c\xb9\x76\x1d\x11\xa2\x2f\xfc\xbb\x97\x57\xd4\x75\x0f\x8c\x81\x19\x71\x0f\x8c\x9e\x2d\x73\xcf\xa5\x30\x9d\x3e\x11\x6e\xea\xa7\x2a\x6b\xa8\xf1\x52\x0e\x5d\x08\xba\x1d\x89\xf7\x48\x9b\x9f\x69\x5e\x02\x12\xf6\x79\x32\xe0\x93\x08\x60\xdb\x9e\xc6\x23\x96\xa0\x83\x9f\x31\x20\xa1\x9c\x8d\x93\x91\xe9\xa0\x79\xc7\x78\x32\xc9\xfe\xe3\x39\x58\x41\x07\x9f\x33\xae\x18\x74\x2b\x75\x16\xe7\x6f\x7a\x96\x6d\xe4\xff\xdd\xde\x52\x83\xb4\x9d\x17\xd5\x41\x73\xfa\x5e\x65\x80\xc0\x42\x17\xd8\x99\xa5\x1f\xc0\xe8\x1a\xe1\x1e\x5e\x31\x41\xac\xb8\x1a\xfb\x31\xb5\x9b\xe4\x9f\x92\xd0\x7f\x3e\xb8\x49\xfa\x54\x68\xc2\x43\xa3\x77\xaf\xe3\x1f\xae\xd1\xc7\x1b\x7b\x23\x32\x1d\x3d\xc8\xcb\x34\x35\x4d\xef\x11\x22\x66\x65\x05\x31\x96\xff\x86\x12\x2c\xc9\x6f\x88\xfb\x06\x26\x48\xbc\x33\x4f\x52\x9c\x3b\x69\xf7\xfc\xf5\x85\x74\x3e\x86\x5e\x8b\x4c\xd7\xee\x9a\xa6\xe0\xad\x12\x7c\x7d\x29\xd4\x84\xe8\x18\xcc\xc3\xe2\xd5\x74\xac\x08\x35\xa8\xa6\x11\x1c\x02\x9d\x40\x3f\xf8\x9f\x9f\xff\x98\xbf\x75\x1e\x81\x1b\x23\x15\x8d\xca\x20\x4a\x55\x3f\x88\xcb\xd0\xfa\x31\x1f\xc8\x34\xcd\xa0\x0f\xbe\xe1\x23\x09\x1a\x1a\xbf\x99\xcc\x34\x7d\x1f\xf4\x3b\x00\xfa\x55\x66\x68\xd9\x72\x22\xc4\xd1\x85\x6f\x3c\x5d\xe8\x50\x04\x94\x8a\xf2\x8f\x86\x71\xfa\x1e\xdb\x40\xbd\x72\xa1\x6b\xa5\x9e\x3b\xa7\x43\xf9\x2c\xda\xf1\xbf\x39\xe3\xfa\x58\x54\x0b\xb7\xa4\x7a\xff\x7e\xdf\x16\xaf\x9e\x47\xd0\x88\xa8\x9a\xf7\x28\x9b\xe7\xff\x38\xbe\xad\x46\x04\xc0\x13\xb2\xab\x62\xf5\xfe\x5a\xab\x83\x5c\x8f\xc9\x3c\x7b\xfb\x7a\x44\x1e\xf9\x1b\x26\xa2\x25\x72\xc6\x83\xe5\x91\x46\x55\x3e\x32\xf2\x41\x2e\x60\xa4\x23\xed\x3d\x0f\x0a\xbb\x98\x2d\xe7\x89\x73\xb9\xed\xbc\x49\xe0\x6f\xa7\xa8\x62\x16\x72\x39\x37\x48\xf2\x1e\x2f\xf3\xc8\x7f\x47\x02\x6d\xac\x48\x32\xb2\x31\x23\xfb\xf9\x85\xfd\x24\x4e\x55\xd6\x52\xc8\xe3\x11\xfe\x8f\x58\x72\x86\xc9\xea\x4d\x58\x8f\xc7\x5f\x63\x27\x2c\x57\x65\x21\xdf\xdb\x29\xa9\xc9\x59\x08\x72\x97\x9a\x08\x3f\xd2\x8f\x5b\x84\x42\x99\x45\x2e\x37\xcf\x10\x38\xb2\x2e\x61\xde\x0e\xc8\x1c\xc8\x24\xc9\x9d\x26\x75\xdd\xac\xbf\x44\xb6\x50\xcd\xcd\x39\x9b\xa2\xd4\x5e\x02\xc8\xed\x74\xd9\xaa\x5e\x13\xa8\xc4\x6f\x40\x3e\x01\x24\xd9\xf0\xec\x6c\x50\x0b\xd9\xe9\xab\x86\x87\x97\xce\xc3\xa9\x2d\xed\x2c\x19\x21\xf4\xf1\x28\x39\xdb\x14\xa2\xe4\xeb\x33\xa3\xce\x8a\xf5\x4d\x21\x57\xfc\xac\x02\x55\xf9\x49\x12\xad\xad\xbf\xc5\x8d\xf6\x81\x22\x02\x35\x84\x5a\xf3\xb5\xd3\x80\xe4\x72\x9d\xaf\x41\xf5\x12\x75\x24\xf3\xf5\xc4\xe9\x52\x66\x84\xda\x6d\x9d\x2b\xb4\x07\x71\x48\x9b\x7c\x5e\x82\xee\x9b\x5a\x73\xba\x22\xf9\xea\x04\xef\x45\x8a\x16\x78\xcc\xd0\x8a\x61\xe4\xc0\xb0\x17\x3c\x2b\xa8\x77\x87\x4a\x0f\x96\x27\x2e\xdc\x7b\x98\xbd\xdb\x54\xa6\x7e\x5e\xd6\xf6\x26\x63\x7b\x7e\x2d\xed\x8d\x82\x7f\x34\xb4\x03\x66\x83\x12\x2b\x09\xb2\xb4\xc5\x12\x65\xa1\x6b\x54\x6f\x9f\xac\xb6\x24\x4d\x87\xeb\x09\x57\x65\x46\xce\x89\xeb\x1c\xc3\x8e\x29\xf6\x17\x99\x55\x74\x4d\x57\x00\xb6\xe0\x20\x5c\x05\xa8\x36\x04\xfd\xd7\x79\x99\x8b\x2c\x1a\xc6\xbf\x47\x97\x40\x10\x93\x3a\xa1\xad\x9e\xc4\xd0\xed\x6e\x8b\xa0\xcc\xaf\x6e\x71\x9c\xa4\xee\xff\x94\xae\x90\x1a\x84\xae\xf6\xf5\x92\x6e\xa3\x82\x62\x2c\xf8\x34\x5d\xd8\xdc\x08\xc8\x9c\xa0\x1b\xd9\xef\x65\xf6\x57\x7b\x3b\x96\x84\x2a\x72\x5e\x0f\x80\xdd\x49\x6b\xd4\x3a\x0f\x65\x75\x31\xd9\xe7\x59\xc5\x86\x33\x5a\xa4\xa9\x16\xc8\xa3\x53\xc8\x44\xf0\x5f\xf0\xcb\x4a\x4b\xe7\x62\xa4\x64\xdf\xcb\xec\x2f\xb6\xc2\x35\x95\x74\x6b\x2b\xa5\x5b\x1c\x99\x0d\xdb\x5a\xda\x62\x57\xea\x60\x03\x73\x94\xec\xc6\xc9\x28\x2b\xe7\x9b\x91\xdd\xfa\x65\xbe\x41\x3e\x7c\x58\x1d\x8f\xab\x21\x2b\x1d\x3c\xec\xe1\xc2\x4d\xd6\x39\x11\xd9\x81\x05\xaf\x84\x7e\x7d\x1e\x46\x5f\xf2\x7f\x27\x74\x45\x06\x2b\x56\x9e\x1a\x13\x7b\x0a\x05\xec\x55\x75\xde\x74\x49\x0f\x25\xd8\xc9\xc7\xfc\x03\x91\xed\xed\xf4\x1f\xd8\x3e\xda\xdf\x5c\xb4\x6d\x1d\x17\xde\x65\x91\x5d\xc2\xdf\x70\xb9\xa4\x8a\xdd\x9d\x06\xb8\x18\xfc\xba\xf4\x5e\xae\xa8\xee\x38\x91\x72\x0f\x55\x14\xfc\x75\xa8\xd8\xa6\x10\x1d\xf4\xf2\xc8\xcd\x69\x59\xdc\x46\x0c\x71\x58\x60\xed\x24\x8b\x62\x49\x4b\x36\xb3\xeb\xa7\xd1\x0e\x84\x8a\xef\x81\xcc\xaf\x25\x62\xe5\xf9\xe1\xc2\x83\xee\x4a\x26\x16\xe5\x72\x20\x2f\xe1\xae\xe1\x38\x88\x92\xce\x28\xa7\x62\x51\x8e\x66\x4b\xbb\x86\xca\x11\x7b\x4c\xa3\x49\xb0\xd7\xd6\x13\xc8\xd9\xc4\x26\xab\x26\x6a\x5f\xfc\xf3\xc0\x49\xc8\xae\x69\x39\xd6\x94\x83\x23\x25\xd7\x5c\xcb\xb8\x11\x5a\x32\x3d\x7a\x8c\xf2\x72\xbc\xeb\x5e\x94\xe7\x7a\xc4\x1e\x7b\x69\x8a\x58\xe8\xd1\x6c\x39\xc0\x7f\x2c\x53\x73\x65\xd7\x48\x9e\x24\x64\xd4\x2a\xeb\x64\xc7\xd1\x1f\x19\x77\x60\x8c\x54\xe5\x82\xc2\xd3\x39\xaf\x72\x35\x71\x07\x17\x3c\xa1\xfb\x93\x6b\xee\xbc\x6d\xd6\x33\x6d\x44\xc3\x91\x06\x5a\x35\x55\xc7\xa3\xff\xb5\x98\x2e\x87\xac\x35\xf7\x7e\xdc\x80\x4e\xbd\x11\xe0\xc6\x51\x30\xb7\x66\x1a\xd7\xc5\x87\x37\x59\x29\xb3\x68\xcd\x48\x92\x03\xa4\x16\x54\x05\x06\xee\x60\x51\x86\xcd\x60\xc2\xfd\xa0\x62\xe2\xba\x38\x77\x71\x5f\xe3\x27\x0b\x11\x79\x33\x02\x4c\x00\x1b\x29\xd1\x19\x86\x66\xcc\xbb\x2e\xd3\x4a\x1a\x81\xb6\x83\xf1\xf7\x68\x14\xa0\x6b\x5c\xed\xf5\xb8\xe9\xce\x0e\x89\xba\xa2\x1e\x22\x63\xb0\xf0\x9d\x36\x03\x53\x40\x4e\xe4\xf1\x38\xa5\x8e\x70\xfd\x55\x66\x82\x6a\x72\x3e\x54\x9e\x64\xfd\xc5\x86\x28\x7b\x12\x34\x72\x59\x1e\xfc\x1b\x49\xe8\x37\x31\xa7\x09\xbe\x6a\x54\x8f\xe9\xdd\x1b\xe1\x94\xee\x90\xb9\x11\xec\xee\x44\x85\x68\xe0\x18\x29\x51\x03\x72\xa3\x5b\xd0\xea\x4f\x5d\xa0\xff\xe8\xe9\xd8\x34\xa8\xf0\x5c\x88\x5c\x8a\xc0\x5d\x2c\xf8\xd2\xf2\xdd\x0b\xbe\x64\x01\x8c\x29\x7b\xf4\xf6\xf5\xe8\xd1\x35\x6c\x8b\x2f\xd2\x24\xd6\x39\x28\x44\x2c\xbf\xa9\xd5\xc2\xc2\xbb\x0c\xad\xe6\xc9\xbe\x58\xaf\x85\xbc\x1e\x83\x7f\xd5\xfc\x6c\x32\xdb\x7f\x4c\x50\x19\x87\x4a\x76\xb7\xd7\x3c\xb7\x19\xf7\x9a\x27\x74\xa1\x9b\x1a\x64\x08\xf3\x48\x9d\x8f\xb0\x5c\xd3\x95\x2a\xf3\x29\xdd\xab\x2a\x9f\xd2\xd5\x2e\xe7\x14\xcc\xdd\xc1\xf4\xa9\xca\x33\x75\x3c\x56\xa0\x0f\x73\xcd\x0d\x82\xba\xb7\x3c\x5c\x91\xd3\xc0\xf8\x7b\x55\x6c\xc6\x8f\x5c\x10\xcb\xc0\x1b\x87\x99\xe3\x3f\xb7\x1b\xf2\x29\xa9\x55\x1a\x0a\x5a\x32\xe1\xe2\x17\x62\x3c\x5b\xe6\x78\xe2\x0f\x24\x2c\x89\x29\x95\xa8\xd4\xf5\x9e\x4b\x56\x09\xfa\x45\xec\xc2\xca\xd5\x6b\x2f\xdd\x05\x7b\x22\xb2\x92\xa0\xa7\x81\x90\xe1\x20\xa2\x2f\x0a\xea\xfb\x93\x5d\xb1\x67\x8b\x25\x5d\x8b\xac\xa4\x92\xc2\xbe\x2f\xa9\x19\x46\x2e\x72\xf8\x47\xc3\xb5\x2c\xca\x97\x58\xfc\x3a\x4d\xdf\x40\xd9\x84\x96\xed\x1d\xd5\x0c\xf0\xb4\x06\x1a\xe1\x7e\xb3\x3f\xd4\x3d\xa9\xa8\xac\x69\x53\x92\x74\x4a\xaf\xa9\x15\x14\x17\xbe\x7a\x0a\x0c\x71\x34\x4a\x87\x85\x12\x0a\x02\xb8\x5d\xb1\x0f\x0a\xad\xf8\x05\xe7\xd0\x94\xda\xf1\x75\x8b\x61\x62\x2f\xd1\x72\x8d\x76\xa5\xbf\xf6\x8d\x33\x96\x26\xe6\x59\x98\x72\x18\x4d\x28\x90\xd6\x61\xe0\x7a\x95\xdd\x9d\x48\x9e\x35\x53\x3a\x8d\xd8\x28\x20\x7e\x8c\xb4\x01\x84\x66\xad\x72\x9a\x79\x30\x28\xca\x75\x77\x42\xa6\xa1\xf2\x32\xf2\xba\x3b\x60\xe0\x65\x3b\x73\x9e\x3d\x7a\x7b\xb5\xda\x8d\x4d\x71\xf5\xf6\xca\x6d\xe4\x43\xad\x5c\x45\x8e\xc7\xc3\xe4\x9f\x07\xae\x6f\x11\x2b\x43\xe9\x34\x6d\x05\x64\xc9\x04\xf3\x27\x6e\x85\xf9\x3a\x42\x21\x2c\xc1\x04\xe0\x42\x6d\xbc\x2d\x56\xef\x93\x70\x8f\xf9\x0b\xd8\x0f\x68\x2e\xd7\xde\x23\x50\x60\x6b\x2d\xcd\xe2\x04\xff\xd5\x85\x75\x27\xbc\x95\xa0\x3b\xcf\x54\xd6\x34\xa4\x12\x11\x67\x5a\xd1\xd2\xbf\x84\xe1\x00\x39\x38\x36\xdc\xe1\xb0\xf1\x1c\x4d\x3a\xbb\xfb\x33\x3d\x3d\xba\xa6\xa5\x20\xb9\xa1\x2b\x50\x7e\xec\xf1\xcf\x48\x41\xaf\x58\x6c\xb2\x95\xb7\xc9\x24\x77\x57\xb5\xa9\xf7\x4a\xf3\xc2\xf0\xa7\xee\xf3\xb9\x2e\xae\xd1\x26\x39\x50\x86\x2d\xba\xbe\x5c\xc1\xfc\xa0\x5f\x9d\x2d\xa2\x4d\xb0\x15\xe0\x3a\x66\x86\xd0\x3d\xdb\xcc\x37\x78\x25\x1d\x6f\xf3\xf0\xe6\x0d\x8f\x5f\x7b\xf7\x22\xde\xae\xf3\x0d\xff\x08\x12\x9a\xec\xe0\xee\xb4\x5b\xba\x1d\xed\x09\x19\xa8\x34\x2d\x2e\xfe\xfb\xfc\xaa\xb1\xc0\x23\x8d\xdb\xdd\x92\x90\xbc\x19\xeb\x7c\x6e\xbb\x6d\xc2\x9d\xe5\xd9\x5e\x55\xa3\x3d\x85\xb8\x95\x2a\x47\x6c\xef\xc2\xd8\x1e\xf8\xd6\x8d\x77\xd6\xb9\xc9\xb6\x23\xb6\x1f\xcd\x68\xf2\xd6\x24\x8c\x6d\x16\xd3\x25\xb6\xf9\x06\x07\xb5\x0d\xc2\x79\xcd\x6e\xc6\x50\xe4\xbf\xdd\x9c\x67\x3b\x76\x5f\x43\x77\x2a\xbb\x26\x34\x09\x2b\x91\xb4\x94\x7c\xb5\x02\x77\x74\x7b\xcd\x2b\x6f\x89\x98\x10\xba\xeb\xaa\x02\x1b\x04\xc1\x79\x8b\x30\x83\xd0\x95\xeb\xda\xfd\xcd\x5b\xed\xda\x7c\x3c\x26\x6f\x65\x68\xff\x03\x0d\xab\xb3\xcc\x93\xff\xf9\x3f\xfe\x8f\x24\x4f\xfe\xe7\xff\xf8\xbf\x7b\xdc\x67\x76\x5a\x1c\xda\x02\x55\xf8\xb6\xcc\xa0\x2d\xb6\xc2\xc6\x68\xf5\x3b\xf2\xcc\x20\xeb\x27\x0a\xfe\x57\x57\x80\x6f\x4e\xff\x52\x98\xe1\x52\x00\x4b\xe8\x13\xb6\xd9\x65\x09\xc0\xdf\x60\xd8\x77\xff\x42\xc5\x87\xe6\x9e\xa2\xc3\xc5\xea\xca\x37\x3e\x4d\x33\x30\x95\xf2\x4b\xce\xa7\x80\x97\x8b\xe3\x51\x1e\x8f\xe2\x78\x5c\x1f\x8f\x25\xae\xb4\x5b\xa6\x2d\x61\x00\x89\xd8\xed\x88\x49\x44\x15\xbc\x1d\x31\xa7\xf3\xfe\x2e\x56\x39\xbf\x5a\xd2\x5b\x5a\xd6\x06\xf7\x69\x9a\xbd\x73\x1e\x4e\x2b\x1c\x86\xee\x01\xf1\x8e\x9c\xfa\x23\xae\x48\xc4\x56\x97\xa2\xa9\x0c\x92\x9c\x25\xb4\xa9\x25\x38\x7e\x8c\x4f\xf1\x23\xa6\xff\xed\xf1\x1c\x98\xfc\xff\xe7\xff\x4c\x82\x6d\x34\x88\x85\xea\xf2\x0e\xa2\x21\xd0\x0f\xfc\x5d\xb8\x85\x3b\x7a\xc7\xc4\x5c\x8c\x92\xb3\xd5\x6e\x0c\x12\xbe\xf1\x95\xd2\x6b\xae\x93\x3c\x69\x87\x04\xb2\x74\x60\x1a\xc6\x7f\xc5\x0e\xa3\xf0\x26\x7d\x5e\xb7\x1d\x15\x61\x82\xcc\x75\xed\xf9\x97\x2d\x33\x0b\xd4\x15\xd9\x4e\x8c\xba\x3c\xa4\xe9\xd6\xa9\x65\x1d\x90\x1c\x9c\x7c\x14\x5b\x05\x79\x55\xab\xbd\x03\x08\x08\xc2\x39\x9b\x7a\x7c\x20\x90\x00\x59\x3e\x5a\x12\x8a\x5a\x50\x54\x32\x9f\xd0\x27\x3b\x30\xfb\x2b\x7e\x01\x5d\x75\x98\xf2\xa1\x4c\xd3\xf8\x39\x69\x20\xf0\x71\xbe\x6f\xe9\x51\x41\xa8\x4d\x0f\x9b\xaf\xe9\x14\x4d\x72\xbe\xae\xbe\xc6\x49\x0f\xbb\x2d\x4d\x33\x71\x3c\x66\x82\xf5\xaf\x87\xd6\xe2\xf7\x20\x15\xb8\xf6\x08\xa0\xde\x76\xf6\x2e\xbe\xfa\x24\x54\x4f\xc4\x9a\x38\x40\xcc\x6e\x6b\x2a\x6e\x7e\x96\xde\xcd\x6d\x26\xee\x5b\xa9\x82\xd4\x9b\xa6\x1e\xa3\xb5\x68\x7a\x89\x6d\xbe\x0c\x0a\xe7\x94\x99\x2a\x36\x6d\xea\x2d\xc0\x8c\xd1\x03\x5d\xd1\x35\xdd\xd2\x4d\xc0\x7b\xa2\x7b\x36\xa5\x3b\x96\xbd\x66\x33\x9a\x24\x84\xde\xe0\x31\x27\x36\xd9\x0d\x63\x7b\x72\x57\xb2\x03\x5b\xb1\x35\xab\x58\x92\x50\xf4\xc8\x4a\x6f\xd8\xec\x51\xfd\x1a\x76\x4d\xaf\x2c\x63\x7a\xcb\xa6\xe7\xb7\xb1\x5a\xc4\x2d\x36\xf1\x1d\x93\x8b\xdb\x25\xfd\xc0\xde\x79\x85\xc4\x58\xa7\xf0\x83\xd3\x29\x7c\xe7\x5e\x09\xf7\x69\xfa\x21\x9a\xef\xf9\x15\x4e\xf4\x07\x92\xbf\x73\xcb\x73\x1f\x1e\x11\xdf\xc1\x23\xa2\xfd\x7b\xb9\x3f\x1e\x3f\xc4\x4f\x91\xef\xe0\xe9\x73\x1f\x95\x4b\xe6\xee\x49\xe2\x1d\xbc\x43\xbe\x83\xa7\xc7\x7d\x9a\xde\x5c\x62\x40\x76\x03\x31\xf4\xc0\xec\x28\x7c\x68\x30\x35\x25\x0a\x79\xa3\x40\x48\x51\xa1\x74\x2c\xab\xe6\xd5\x28\x39\xc7\x5b\x3e\x04\xdb\xd8\x5a\xdb\xbd\xd1\xb9\x6c\xe5\xcb\xaa\x13\xd8\xe4\x5e\x1d\xde\x37\xfd\x26\x4d\xb3\xeb\xe3\x31\xbb\x8e\x78\xc6\x3a\x15\x7d\x07\x6a\xb5\x1f\x90\xd8\xa5\xe9\x70\x0d\x64\xf6\x83\xf7\xcb\xdc\x18\x8b\x6c\xb8\x05\x55\x13\xaf\x13\x48\x3f\x38\x55\x93\x2d\x7b\x47\xfc\xb8\x5e\xba\xa1\x70\xf6\x93\x76\x30\xe0\x55\xd6\x52\x01\xb4\xc6\xc5\xf9\xf5\x00\x0e\xe7\xb7\x23\xf6\x98\x5c\x2f\x6e\x47\xb3\x25\xb6\xf6\x80\x1d\xbb\x5e\xdc\x2e\x51\x7e\xbf\x3d\x1e\xb7\x61\xf4\xeb\x12\xae\xe2\x15\xb2\x02\x0b\x0a\x7a\xe5\x33\x6d\x41\xb3\x11\xf5\x46\xa7\x04\x16\xa0\xe5\xd8\x6c\xaa\xcc\x2b\x3a\x1a\x35\xdf\x8c\x66\xa0\x43\x49\xc6\xfb\xa0\xea\xd8\x54\x84\xa4\x75\x6a\x6f\x88\xb5\xf5\x6b\x22\xdb\xb2\xe1\x8c\x9c\x6c\xd7\xf6\x97\xcc\x73\x3f\x7e\x39\x3f\xab\xa5\x44\x1b\x7a\x43\xdc\x66\x70\x36\x74\x1f\xd9\x7e\xb4\x8b\x14\x9a\x86\x4e\x48\xf8\x8a\x7d\xbc\x7c\x36\xdf\x05\x52\xf8\x6c\xbc\x27\xf9\x6e\x60\xc2\x25\x2e\x33\xf4\x15\x2d\xe6\xc5\xa8\xcc\x4b\xba\xa2\xfb\xd1\x2b\x6f\x08\xcc\x6e\xe6\x87\x3c\x49\xe8\x9a\x56\x30\xda\x1f\x2f\xd9\x33\x72\xb7\x63\xbe\x30\x5b\x14\xdd\xb3\x67\x03\xa4\xca\x7b\xf6\x91\xae\x58\x92\x9c\x76\x01\x90\x4d\x51\xc5\xf4\xe2\xf5\x68\xb4\x24\xb4\x60\x4a\x64\xf8\x41\x4d\xc4\x85\x10\x3c\xe8\xcf\x7c\x2f\x5f\xb3\xd9\xf9\xeb\x5a\x83\xe2\xb5\x9d\xcd\x46\x6b\x5b\x85\x5b\x66\x04\x0b\x9e\xb5\x0a\x8e\x84\x00\xdb\xe6\x29\x37\x65\xb5\x86\x38\x28\x54\x38\x1d\xf1\x34\x4d\x12\x16\xe9\xe1\xda\x25\x6a\xc9\xe4\xf1\xd8\xe0\x9b\x7a\x3d\x6f\x47\xb5\x6d\xc4\xc3\xef\x01\x67\x7a\xae\x17\x7c\xd9\xd2\xa7\x54\xf0\xf0\x27\xc8\x5d\xd6\x85\x85\x43\xda\xc9\x0c\xe5\x91\x14\x0b\x68\x78\x2c\xd4\x42\x57\xac\x4e\xa2\xe4\x62\x41\xc6\xe5\x24\x19\xee\xe5\x1a\xce\x69\x88\x86\x5f\x2e\x16\xde\xcb\x28\x68\xfa\x69\xe2\xd4\xe8\xe5\xdc\x06\xe6\xb3\x81\xa8\x5f\xbc\x9d\xe9\x94\x20\x27\x82\x0d\xa6\x12\x2c\x5c\x38\x38\x37\x90\xd7\x78\x19\x8b\x05\x30\x6d\x19\x29\xa7\x8a\x2d\x96\x00\xf9\x6d\x19\x15\x55\xab\xce\x7e\x23\xb3\xc3\x42\x2f\xa9\xc8\x34\xa1\xb2\x7e\x2a\x40\x0b\x99\xca\x4d\x1a\xd8\x93\x01\x41\x74\x72\xd9\x15\xea\xfe\x54\xee\x9d\x63\x8d\x9f\xa5\xfb\xdc\xda\x09\x3d\x10\x7b\xb2\x64\x87\x08\x0e\x7d\xcf\x30\xc5\xd8\x3d\x86\xd6\xb6\x0c\xde\x4e\x2f\x9b\xd2\x22\x9b\xd2\x43\x00\xc8\xa0\x1e\x2a\x2a\x14\x64\x87\x5b\xfc\xc1\xc7\x21\x4d\x30\x36\x72\x4b\xce\x5f\xad\xe2\x82\xc6\x33\x32\x50\xd9\x9a\xae\xb1\xf9\x1b\x42\xf7\x88\xfd\x0e\x45\xbb\x17\xeb\xbd\xbd\x68\x78\x09\x43\x68\x91\x8b\xdc\x91\x70\xbb\x58\x31\x86\x6a\x44\x33\xc6\x42\x2b\x54\xb6\xa2\x2b\x94\x97\xfa\x8d\x5f\x4d\x56\x5b\x32\xda\x8e\x1a\xc1\xa5\x0d\xa4\x1b\x6c\x75\x66\x5b\x39\x8b\x5b\x49\x1a\x53\xd3\x9f\xd7\xce\x13\xbd\xb7\xbe\xc3\x62\x6a\xa7\x73\x4a\x10\x7e\x3d\xea\x03\x30\xfb\xa1\x17\x9f\xd5\x78\x5b\xd8\x68\xdd\x6d\x83\x2f\xbf\x31\x80\xa3\x19\xdd\x63\xbf\xee\x3e\xa7\x75\x76\x3e\xb6\x7d\x85\x6f\xc8\xa0\x33\x2e\x83\xfd\xe5\xac\x33\x63\xb6\xc2\xf1\xec\x9e\x7e\x3e\xb4\x41\xf6\x22\x80\x01\x21\x14\x09\x8f\xa1\x0f\x58\x43\x4f\xda\xb0\x29\xb0\xfb\x2d\x0d\x70\xbe\x30\x0d\xfb\x2e\xaa\x47\xa0\x0e\x1e\xcc\xde\xe3\x27\xf4\xba\xe6\x5d\x5d\xf3\xca\x72\x76\x9a\x4b\xc6\xdb\x75\xf5\x59\x0c\x79\xc9\xf4\x42\x2e\x07\x66\xc4\xc4\x64\xb5\x3d\xc8\xf7\xf6\xea\x9d\x11\x5b\xb7\xf0\xba\x07\xa2\x61\x75\x86\x30\x30\x00\x15\xd6\x7c\xd5\xef\x74\xf8\xb4\x17\x31\x14\x58\x28\xfe\x5e\x7c\xa4\x48\x9f\xf7\x44\x71\x5e\xbe\x93\xb2\xe1\xcb\xa4\x4d\x85\x24\xe3\x23\x73\xae\x2f\x64\x6d\x57\x25\x62\x60\x07\xbd\x8c\xc7\x6d\x5c\x77\xea\x37\xd0\x03\xfd\xbb\xc8\x04\x75\x50\xc4\x49\xc3\x94\xde\xbd\xd5\xc0\x2c\x53\xcf\xef\xb4\xfc\x00\xd8\x8d\x65\x99\xea\xf2\xd6\x63\x48\x41\xde\xe0\x90\xa4\xdb\xf8\xa0\x21\xe1\x14\x31\xfc\xa8\xe1\x9a\x89\xab\x77\x6b\x9c\x13\x6f\xa5\x6a\xea\x5f\xed\x64\x3c\x32\x96\x6b\xf9\xe6\xb0\x13\x0d\x4e\x39\xe2\x29\xa4\xc2\x70\xfd\x43\xa7\x61\x75\x11\x76\x4c\x39\x8c\x29\x60\xce\xea\x18\x06\x85\x2f\x63\x8d\x44\xba\xfb\xcf\xcd\xb1\x5d\x38\x0f\xcd\x6d\x48\x34\xee\x18\x43\x36\x96\x78\x8f\x35\x5d\x23\x1e\x4e\x20\x26\xe3\x35\x0d\x1a\x10\x17\x41\x35\x39\xf0\x61\x86\x8a\x31\x07\x20\x5a\xbf\xd3\xc0\x24\x2f\x6a\x63\xc6\xa9\x6a\xa8\xb0\x8c\x59\x31\x96\x61\x7b\x30\xa6\x3c\x6a\x4a\x68\x9e\x7f\xea\x03\x5d\x23\x2a\xe3\x6d\x01\xe2\xe2\xcc\x8c\x99\x22\x41\x07\x65\x8a\x44\x94\x8f\xd1\x6e\xa7\x1e\x05\x73\xf1\xf8\xcb\x4e\xe1\xee\xf9\x6c\x76\x3c\x0e\x9b\x31\x8b\xe9\x32\x72\x69\xba\x17\x24\x18\x4d\x2d\xdc\x3e\xf0\x2b\x39\xab\x5c\x87\x02\xcd\x58\xd8\x13\x62\x2f\xb2\x8a\x2c\x69\xbb\xd0\xc6\xea\xb9\x67\x3b\x34\x6d\x5b\xee\x99\x2c\x43\x9a\x45\x9b\x65\xdd\x22\xfe\x39\xfb\xc6\x0e\x4a\x2d\xe6\xa1\xcd\xbd\xd4\xde\x04\xfd\x6d\x90\x0d\x32\x11\x9a\x02\x8f\xd6\xa2\xbb\x60\x98\x82\x93\x59\x4c\xa2\xb6\xb9\x26\x39\xef\x2f\x55\x9a\x8a\x06\xf1\xba\xfc\x72\x5a\x8f\x47\xc1\x9a\x91\xff\xf6\xf8\xcb\xd1\xe3\x2f\x69\xc5\x8a\xf3\xea\xa2\x19\x75\xee\x95\xde\xdd\x54\x88\xc6\x2e\xaf\x68\x35\x62\x8f\xbf\x24\x64\x20\xc2\x32\x2c\x83\x7e\x58\xdf\xea\x1b\x8d\x24\x9d\xd2\x92\xd0\xb2\x31\x81\xae\x58\x26\x5a\xb4\xa6\x70\x4b\x02\xc0\x39\x5e\xef\x45\x59\x66\xe4\x84\xf7\x02\x3e\x66\xca\x6e\xf6\x10\xd3\x82\x4c\x1c\xf6\xae\xd0\x0b\x36\x9b\x92\x58\x9b\x6d\xb0\x56\xde\x35\x39\xff\x00\x27\x57\xa7\xcd\xbc\x5d\xc8\xf8\x4b\xfa\x25\x71\xea\x4b\xd8\x0b\xf0\x8c\x84\x24\x02\xfe\x53\x1e\xc6\xc3\xc4\x2a\x9c\x9a\x5d\xa9\x90\x29\x14\x4b\xc1\x90\xa5\x15\x18\xf6\xeb\x68\x46\xa7\x96\xe4\x03\xcf\x81\x4b\xa9\xd3\x54\x32\x08\xfb\xd9\xd6\x1d\xed\x20\x6a\x96\x94\x33\x79\x32\x21\xde\x5b\x50\x7f\xd8\x8a\xb2\xa7\x73\x97\xb3\x69\xd4\x9a\xc6\xc0\x7f\x9a\x4a\xff\xef\x5b\xe3\x01\x2e\x2c\x22\x8a\x6a\xcc\x21\x56\x00\x66\xc1\x0f\x19\xa7\x05\xd5\xa4\xa1\xdb\xee\xe8\x58\xd1\x47\xc7\x94\x47\x70\xbb\x11\x6c\x4a\xaf\x05\x7b\x35\x79\xaa\x56\x3d\x68\xd9\x61\xf5\xc4\xde\x98\xaf\x45\xfd\xa4\xcc\x3f\x9c\x5d\xd7\x97\x31\xa7\x3a\x04\xea\xb3\x6c\x4a\xec\xf9\x83\x90\xd5\x96\x63\xf2\x34\x6c\xe1\xb8\xdd\x04\x9f\x88\xc9\x92\x2c\xdd\xda\x06\x5b\x78\x7f\xea\x06\x8d\x61\x16\x7d\x02\xb0\x87\x43\xc9\x8a\x01\xb0\x30\xa0\xe4\x85\xfc\x86\x4b\xae\xe1\x21\x81\xcd\x82\x45\x38\xe8\x04\x30\xed\x2e\x5d\x1b\x9e\x69\x3a\x75\x7a\xce\x15\x2f\xd9\x0f\x20\x8a\x43\x72\x85\xf8\x09\xb0\xae\xbe\x16\x19\x1e\x09\x26\xe0\xd3\xdd\x08\xb7\x0b\xd5\xda\x7b\x0c\x37\x11\xce\x21\xdf\x33\xe9\xc1\xbd\x0c\x97\x6b\xdb\xb4\x3e\xdf\xfc\x99\xd3\x1f\x85\x67\x2d\x7b\xcf\xad\x2c\x9b\x40\x37\x4e\x4d\x1c\xf1\x3f\x04\x35\xca\xfe\xe1\x1f\x4d\xce\x4f\x84\x7e\x81\x28\x7f\x14\x5b\x5b\x29\x72\x1a\xc4\xfe\xcc\xd9\x07\x95\xc5\xe7\x3d\xbd\x5b\x29\x59\x19\x7d\x58\x19\xa5\xf3\x6b\x01\x2b\xb6\xb3\x60\xf5\x1c\x3b\x87\xab\x68\x5c\x4f\x03\x35\x63\x7b\x4f\xcd\xa3\xe8\x38\x32\xfc\x1c\x05\xca\x4f\xeb\x33\xe2\x5e\x9e\x70\xda\x76\x4f\x66\x77\x83\x1e\x79\xd7\x64\x35\x2b\xdd\xa0\xe7\x8d\x66\x51\x4d\x3c\x8f\xd2\xc7\x9e\x34\x38\x83\x46\x46\x72\xa2\x1e\xb8\xb9\x07\x7b\xf4\x95\x1b\xfb\x4f\x74\xd2\xdf\x98\x01\x1d\x9e\xcf\x4d\x6e\x10\x0d\x9f\x1f\x8f\xf1\x32\xf0\xce\xb2\xc8\x89\x56\xbe\xce\xbf\x98\x2c\xeb\xd6\xbb\xe1\xf1\xb8\x4e\x09\x0d\xd8\x83\x8d\x7a\xc7\xb3\xc1\x0b\x1d\xaf\x0e\xe3\x5c\x54\x6b\xfa\xcc\xb5\x5c\x37\x3c\x64\x13\x5c\x38\xdd\x65\x16\x00\x65\x7c\xc3\x12\x6a\xef\xe4\xf9\x70\x7a\x02\x50\xb2\x68\x99\x19\x02\xf0\x24\xb1\x4f\xb0\xbc\x4b\x23\xbe\x75\xed\xe2\x14\xd4\x23\xbd\x52\xb1\x66\x7a\xee\x3f\xed\x3a\xa2\x12\x27\xa0\xaf\x18\xcf\x25\x7e\x74\x5d\xf1\xf9\x38\xa1\x75\x89\x8d\xa1\xd7\x73\x99\x4b\x1c\x7a\x7d\xef\xd0\x3b\xe7\x7f\xf7\x21\xcd\xba\xe8\x6f\x01\x96\x28\xc2\x0d\x35\x69\x8a\x72\x8f\x50\x02\x26\xc9\x5b\x00\x5d\xcf\x43\x2b\x3d\x39\xf4\x53\xc1\xeb\xca\x7f\x38\xec\xae\x5a\x0e\x1f\x6b\xbd\x9e\x28\x1d\x56\xf1\x8b\xa8\x0e\x45\xd9\x75\x8a\xec\xbd\x10\x40\x61\x6d\x52\x52\xd7\x4a\x28\x58\x92\x9d\xa8\x1d\x8b\xaf\xd5\xe1\x01\xf0\x50\x60\xf5\x83\x3b\xe7\xfb\x92\x41\x82\x13\xf5\x56\x61\x0f\x26\x8b\x17\xeb\x89\x3a\x30\x93\xbe\x8e\xd7\xb3\x0b\xbd\x47\x8c\x9c\x7b\xe1\x80\x79\xe9\xed\x5f\x32\x12\x43\xf4\x03\xa8\x3b\x3a\x9c\x87\x9d\x08\xce\xe8\x72\xef\x97\x1e\x83\xf0\x23\x4f\xb8\x84\x44\xc7\x63\x62\x14\xfe\xf0\xfb\x17\x9c\xaa\xd7\xfe\xc5\x69\xd3\x2b\xde\xbd\xa3\xc7\xcb\x89\xb6\xeb\xb8\x3a\xd1\x8e\x1b\xc8\x87\x32\xf5\xf8\x8c\x04\x0a\xe1\xc6\xa0\x49\x22\x70\x67\xfc\x93\x37\xf7\x44\x77\x11\xcc\x37\x70\x15\x3e\x1e\xa7\x24\xe7\x24\x58\xd6\x10\x42\x63\xff\x82\x9f\x55\x78\xbc\xe1\x8e\x47\x4e\x5c\x39\x2d\x0f\xc3\xbd\x45\x7d\xd5\x2d\xca\xa4\x69\x4c\x10\xfa\x8a\xaa\x3a\x65\x91\xbb\x6f\x5d\x9e\x3f\xa2\x92\x7a\xf3\x7e\x75\xfb\x19\xb9\x6f\x3d\x28\x71\x98\x33\xd8\x28\xa6\x33\x40\xdd\xa6\x78\xec\x0d\x4f\x52\xef\x7a\x8c\xe9\x79\xec\x68\x53\x2c\xe4\x92\x39\x1f\x8f\x61\x1c\xec\xd1\x86\x0b\xb1\x1e\x5c\xee\x5d\x71\x12\xcf\x33\x01\xb6\x67\xa4\xa5\x1a\x64\x61\xb4\xb1\x0d\xd0\x73\x42\x4d\xa5\x9f\xf2\x4c\xb8\xc1\xb5\xfd\x29\xd6\x9f\x98\xa5\xe8\x36\x5e\x0f\x88\xbf\x64\x00\xef\x1c\xb9\xa9\xbc\x6f\x55\x34\xeb\x97\x54\x46\x42\x5f\x9c\xe5\xeb\x78\xe1\xf5\x5e\x44\xfd\x39\x17\x4d\x0b\xb2\x06\xba\xc7\x73\xa9\x3f\x17\xb4\x1d\x36\xe7\xe0\x15\x7e\xdb\xdd\x4b\x06\x86\x99\xb9\xf1\x02\x18\x41\x72\x71\xfa\xcf\x1e\xd2\xd7\xbc\x77\xd7\x77\x7d\xd4\xfe\x6f\x6b\x33\x40\x45\xc0\x43\xb4\xf7\xb8\x73\x5f\xeb\x08\x05\x43\x15\x11\x34\x5a\x4f\xb4\xed\x21\xf3\x81\x7b\xc8\x62\x49\x23\xb4\xd5\x68\xce\x23\xa0\x26\xb9\x10\x4b\xe6\x8c\x95\xba\x4e\x70\xa5\x2d\xf2\x78\x0c\x6e\x3e\xbb\xd5\xf7\xef\x9c\x56\x1b\x7c\xfd\xc1\x1b\x51\xb3\x1d\x91\x13\x1a\x1f\xb5\x50\xcb\x81\x5c\xa8\x25\x43\x8e\xa7\xf0\xa3\x68\x54\x5e\xc0\x28\xde\xc3\xe2\x00\x18\xb0\xe3\x72\xf4\xc9\xbf\x6c\xa4\x29\x1c\x03\x00\xc3\xf4\x89\xa6\x36\x81\xb9\x14\x13\x14\x35\xdd\x03\xd7\x1a\xb9\xfa\x34\xa8\xcb\xfe\x83\xce\x2a\x07\x5a\x40\x15\xa1\x07\x1b\xf0\x93\xce\x2a\x50\x89\xc0\xab\x1a\xe0\x32\x53\xc5\x0e\x34\x29\xc0\xe8\x29\x61\xcc\xed\xc8\x15\xe3\xd1\xd4\xd8\x12\xc1\x06\x7e\x85\x0e\x56\x57\x9e\x7c\x5c\x4c\x07\x72\x51\x04\x0a\xb3\x9e\x1f\xf2\x92\xae\xe7\x65\x7e\x70\x72\xfe\x38\xb6\xa4\x35\xd6\x09\xda\x37\x65\x12\x91\x03\x23\x42\x72\xc2\x35\x2a\xa9\x71\xca\xcd\xac\xde\xcb\xe7\xea\xd2\xce\xd4\x78\x4c\x3c\xe7\x09\x40\x07\x83\x6a\xfe\xab\xdb\xfc\x95\xbb\x1e\xac\x76\x69\xfa\xab\x93\x43\xae\x76\x40\x00\x0e\x72\xad\x9a\xab\x82\xdc\xfd\xe1\x8a\x41\x47\x72\x8e\xb5\x7c\x20\x19\xf8\x92\x0b\xa5\xdd\x43\xd7\xda\xc5\x02\x2a\x82\x2b\xf9\xd3\x59\xd0\x5d\x9d\xcb\x52\x71\xf3\x0c\x4e\x18\x21\xaf\xbb\x6e\x04\xdc\x8d\x8e\x03\xb1\xe8\x49\xd7\x3c\xec\x31\xf5\x89\xba\xfb\x64\x5b\xea\xda\x72\xcb\xe0\x52\xd1\xf6\x83\x40\x04\xf1\x07\xa4\x05\x43\x2c\x11\xc1\x95\x72\x3c\x8e\x46\x28\x89\xf5\x39\x1a\xb0\x80\x2e\x0f\x86\x35\x73\x79\x6f\x47\x77\x30\x51\x06\x27\x42\x9f\x2c\xdf\x56\xa3\x08\x76\x3c\x3a\xb4\x6e\xc7\x71\xd8\x64\x57\x7c\xac\xef\xde\x00\xee\xaf\xdf\x7f\x6d\x6f\xe4\x9d\x52\xda\xf7\x74\x27\x06\xb1\x6d\xab\x43\x33\x3b\x29\xb4\x1d\xda\xc7\x4e\x72\x2f\x82\xf5\x2d\xb1\xdc\xea\xab\x3d\xeb\x84\xbd\xe6\x65\x5f\xf0\x2b\xa0\x14\x2c\xba\xea\xfb\xd8\xeb\x50\xef\x89\x8a\xaa\xd5\x19\xde\x9c\xf0\x6e\x1e\xc6\x02\x49\x6f\xf5\x18\x0f\x9c\x9e\x41\x76\x73\x62\xa7\x2b\x7f\xd1\x1a\x5f\x1b\x88\x3b\xa1\x27\x12\x83\xc9\x09\x98\xc9\x4e\xc1\x4d\x8e\xfa\xf3\x27\x71\x60\xa0\x56\xf6\x02\x1d\x6a\xcb\x60\x8c\xf9\xff\x92\xf7\x66\xdb\x6d\xe4\xd8\xa2\xe0\xbb\xbe\x82\x8a\xae\x64\x07\x0e\x41\x8a\x94\x6c\xcb\x0a\x19\x62\x7b\xac\xf4\x29\x0f\x59\xb6\xb3\x86\x4b\xb3\x9c\x50\x04\x28\x22\x1d\x0c\xb0\x10\xa0\x6c\x95\x18\x6b\xdd\xf7\xfe\x89\xfe\x82\xfe\x88\xfb\x15\xfd\xdc\x5f\xd2\x0b\x1b\x43\x00\x1c\x64\x57\x9d\x3c\xb7\x57\x9f\xf6\xf2\x0a\x31\x02\x33\xb0\x01\xec\x79\x23\x1f\xcd\x19\x2b\xdb\xb6\xc9\x64\xc1\x6f\x2b\x5b\xa3\x31\x13\xf0\xa0\x5e\xd2\x7a\xf7\x75\x61\x27\xf3\xaf\x9e\x9a\x4c\x8c\x8d\xb5\x46\x74\xc7\xee\x77\x96\x80\x1e\x4e\x82\xb7\x28\xe9\x8a\x18\x07\x91\x90\xbb\xb5\xf7\xcc\x92\xd6\xc8\xd4\xa4\xb5\x56\xa1\xdb\xf5\xbb\x94\x2f\x92\x2e\xad\xbd\xa8\xc6\xff\x26\xd5\x14\x10\xc1\x97\x22\x95\xd6\x0e\x14\xbe\xb5\x21\xc5\x58\x6b\x0e\x6a\x99\x6c\x60\x5b\x7a\xe0\x65\x31\x8e\x92\x5e\x88\x6b\xf6\xff\xc5\x79\xc0\x56\x16\xc9\x67\xe9\x21\x6f\xc7\xdd\x3a\xb8\x00\x1f\x87\x46\x94\xea\xd9\xb3\x02\x1c\xda\xa8\x7c\x6e\x66\xce\xe8\x06\x89\x38\x10\x1b\x25\xc2\xda\xf1\x8a\xd6\x8e\x17\xe6\x33\x8c\x3a\xe8\x6c\x7f\x53\xfb\xab\xdb\xa5\x87\x5e\x8f\x6d\xec\xec\xac\x5c\x01\x8a\x8c\x79\x67\xb3\x31\xfd\x16\x06\x8d\xbb\x84\xbb\x26\x7f\x9b\xc9\x61\xd5\x35\xd8\x97\xce\xdf\x8d\xfd\x38\x84\x55\x04\x67\xbb\x4e\x85\xa2\xdb\xe5\x91\xe5\xbf\xf0\xba\x7f\xb4\xe4\x57\xd5\x9f\xad\x15\xbb\xde\x34\x7f\x35\x42\x0a\x67\x78\x1e\xfb\x98\x75\x16\x3a\xd6\xec\x1d\x8c\x09\x9c\x09\xfc\x64\x8a\xda\x39\x77\x52\x8f\xc7\x6a\x6c\xc3\xcb\x73\x94\x49\xc7\x2d\xf7\xa4\x84\x6c\x49\x89\xc0\x4e\xbe\x2d\x8c\x10\x1e\x62\xee\xe4\x25\x44\x61\x61\x22\x3b\xb4\xca\x15\x15\x31\x7e\x1e\x58\xcb\x94\x3d\x00\x07\xb8\x8e\xa3\xdf\xfb\x5d\x05\x3a\x8b\x15\x38\x77\xb0\x2a\xa0\x4e\x10\x02\x0e\x64\x77\x98\xae\x87\xab\x83\x79\xe3\x99\x48\x96\x84\x68\xf7\x8a\x5d\xaf\x58\xbc\xeb\xdc\xe7\x62\xe7\x17\x79\x9b\xb5\x69\x7d\x83\x57\x77\xf0\x94\xb0\xc4\x12\xbc\xa5\xdc\x2c\xd9\x7a\x9d\xc0\xfd\x98\x18\x92\xfc\x89\xd5\x54\xcc\x76\x39\x5e\xbb\x0d\x1d\x5e\x67\xca\xeb\x25\x2a\xf0\xbd\xf0\xe1\x66\xc9\xc6\x6e\xd1\x32\x85\x70\xeb\x28\x31\x03\xe6\x52\xfb\x8e\x63\x27\x71\xd9\xe1\x08\x1b\x4f\xe8\x26\xa3\xf9\x8d\xb7\x3c\x67\x9b\xd4\xad\xcf\xcd\xc1\xc6\xa0\x19\x09\x86\xad\xc1\xb6\x55\xc0\x44\x0d\xf6\xae\x68\x1f\xef\x0a\x88\x05\xf4\x8e\xe3\x2d\xa5\x61\x4d\x68\xb7\xb3\xd0\xc0\xd9\x48\x4c\x15\x05\x22\x0f\x4d\x01\x9d\x7b\xf8\x35\xda\x7e\xdc\xaa\x77\x32\x63\xf2\xbc\xe5\x27\xe6\xc2\xa5\x28\x0b\xe5\xce\x27\x8c\x91\xcc\xe8\x4c\xd6\x29\x4e\x40\x22\xf9\xb1\x6d\xc1\x45\x34\x27\x21\xcb\xf2\x20\x20\x01\x58\xe4\xb3\xc8\x33\xc1\x6d\xd0\x05\x6b\x0b\x13\x79\x87\xf6\x62\x9a\xef\xf7\xa4\x55\x3b\x32\xc2\x7a\xd2\x32\xfa\x63\x25\x28\xa5\x72\x62\xfb\x60\xe2\x57\x5e\xc0\x67\x73\xac\x11\x52\x5a\x65\x4d\xd0\x1a\xd3\x99\x5c\x78\x43\x9f\x40\xbc\x1f\x6e\xf3\xe9\x82\xa8\x41\x3e\x5f\xaf\x65\xb7\x7b\x28\x5b\x87\x5a\xeb\xb5\xa5\xf8\xcb\xcd\x39\xf5\x59\x9a\x5e\x8f\x83\x07\x7b\x40\x5a\x1e\x97\xe5\xc6\xac\x3a\x11\xe2\x64\xba\x3d\x5b\x3b\xcf\xb5\x7f\x06\x6a\xac\xb3\x45\x47\x42\x43\x88\x48\xdd\x5d\xf8\xe2\x3a\x88\x10\x66\x0d\x5e\x8a\xfa\x85\x14\x86\xae\xd9\x86\xe6\x88\xad\x8e\x2b\xb2\x8b\xd2\x76\x97\xcf\x1d\xc3\xf0\x0a\x0a\x3c\xe4\xb5\xf7\xc0\x11\xa2\xb8\xf0\xde\x1d\x14\x61\xf8\x70\x78\xc0\xfa\x44\xe0\x5e\x4f\xea\x1e\x3a\x30\x03\x96\xbd\x42\x36\xfa\xd6\x57\xdd\xe5\x4d\x36\xa9\xd9\x7e\x1b\x3b\x2e\x9f\x1f\xb8\x68\x03\xd6\xff\x10\x0c\x05\x14\x27\xe7\x8f\x86\xad\x07\x9c\xeb\x36\x7e\xd1\xf7\x8e\x2f\x98\x19\x0b\xdf\x11\x5a\xa1\x7a\x56\xb5\xdc\x0d\x17\x06\xa4\x1a\x9c\x8b\xe5\x2e\x2c\xd3\x0a\x05\xbf\x57\xa2\xb2\x29\x51\xdb\x2a\x60\x87\xd1\xf2\xe7\x77\xcb\x06\x3f\x88\x25\x56\xa1\x9c\x50\xc5\x72\x43\x9d\xc8\xca\x96\x0f\xa1\x02\x21\x1d\xd0\x10\x11\x36\xfd\x8c\x2d\xd5\x9c\x6c\x21\xd9\xf0\x19\x6a\x72\x68\x76\xea\x64\x09\xad\xeb\x75\x98\x1c\x13\x16\xe2\x99\xc8\xe3\x8b\x6b\xbd\x4e\xc1\xd0\xf0\x20\xc0\xc8\xcd\x58\x77\x0b\x7e\x0e\x9c\x52\xa9\x83\x7f\xd8\xcd\x86\x5b\xc8\x02\x85\xe7\x43\xf0\xc8\x01\x71\x57\xc5\x23\x23\x80\xd5\x3f\xdd\xa1\xb6\xb9\x26\x58\x82\xb9\x98\x28\x1c\x89\x12\xce\xff\xee\x69\x67\xf6\x36\xd2\xe3\x04\x73\x3f\x47\x48\x84\x93\x84\xb0\x57\x47\xfa\xcc\x0a\x8d\xbb\xb4\x6f\xa1\x0d\x64\x21\xf2\xac\xc2\x6d\x85\x59\x58\x7b\x83\x8c\x13\x34\x28\x03\x59\xa1\xd3\x2e\xbc\x46\x76\x38\xdc\x5b\x72\x8a\xf7\x8a\x1e\x43\x57\x9a\xd2\x9d\xbc\x15\x51\x4e\x1b\xc9\x3b\xa0\x6c\x3d\xb1\x5b\x07\x94\xe0\x08\xa4\xfd\xa6\x0c\x43\x67\xc9\x20\x9c\x87\x63\x04\x41\x20\x11\x81\x29\x58\x46\x82\xbc\xa2\xfd\x05\xf8\x05\x3a\xa8\xbc\xcf\x30\x98\x84\x1a\xe1\x56\x25\xaf\x69\x9a\xb4\xc2\xcf\xad\x63\x20\x38\x6e\x57\x95\x9e\x83\x4d\x08\xd2\xa7\x40\x28\x8d\x7f\x0b\x32\x20\x13\xfb\x09\x07\xb3\x8d\x76\xe8\xfc\x6c\x46\x30\x51\x51\xa0\x99\xcf\xac\x98\xa8\x29\x78\xfe\x22\x81\xbe\xa4\x2e\xe1\x1c\xd7\x62\x50\xbf\xf4\x1d\x33\x9d\xc5\x5f\xab\xd4\x77\xdc\xea\xaa\x9b\xc0\xb8\x0e\x42\x62\x10\xb1\x37\xc1\xc4\xb8\xac\xdd\x8e\xdd\x22\x9d\x85\x0f\x2f\x50\x83\xb0\xb1\x20\xdb\x29\x98\x8f\xa3\x24\x90\x5d\x24\xb3\x01\xf4\x98\x4e\xde\xca\x68\x3e\x03\x13\x1d\xc4\xe4\xaf\xdc\xde\x8d\x0f\xe6\x4f\xb1\x78\xef\xb5\x28\xf6\x4a\xc4\xf4\x76\x32\x9c\xa2\x82\xab\x50\xba\x15\x67\xcb\x17\x0d\x6e\x59\x97\x7b\x99\x0b\x76\x2b\x8e\xad\x21\x6c\x1a\xed\xcf\xec\xaf\xc2\xcb\xfc\xfc\x69\x7f\x97\x1a\xe7\x7b\xb6\x34\x76\x92\x4d\x83\x70\xa8\x42\x30\x60\x2e\x14\x51\xf4\x55\xcf\x88\x31\x0b\xe4\x24\xd1\x2f\x1d\x83\xbf\x76\x0c\x8a\xde\xd1\xd7\x40\xc7\x0f\xb5\x13\xa8\x1d\x24\x41\x24\x7a\xaf\xff\x75\xc3\x3b\xbc\xea\x84\x2d\xa0\xa8\xb9\x0d\x07\x75\x37\x1c\x75\xbb\x97\x22\xbd\xe4\xf8\x86\xa3\x47\xc3\x6e\x37\x7d\xdb\xe6\x9e\xdc\xf0\xe9\xae\x48\x8d\xdb\xc3\x67\x56\x19\x14\xa6\x01\x02\xd6\xc9\x2b\xb0\xf2\xaa\x51\xd3\xa4\x61\x0f\x74\x9d\x08\x05\xc1\x8d\xbc\xdd\x55\xda\xba\x59\x49\xc1\x1a\xce\x38\xac\xdb\xdc\x71\x86\x5b\x5c\x6d\x6d\x37\xef\x0f\xc5\x25\x4d\x28\x50\xd4\xd0\x9f\x43\xc2\x1d\x32\x28\xba\xdd\x3a\x38\xd4\x0e\x34\xd2\x56\xea\xb3\xd4\xe4\xc4\x1a\xf2\xed\xcf\x0a\x97\x10\x1c\x01\x39\x97\x7a\x91\x53\xd8\x2f\x3c\x88\x22\x90\x2f\xb6\xc3\xd8\x7c\x98\xf3\xba\xe3\xcc\xdd\x3a\xbc\xee\xd0\x52\x32\x5a\xdc\xe8\x15\x5a\xd5\x6c\x90\xa0\x03\x38\x59\x88\x02\xcb\x0f\xc2\xf0\xe3\x94\x21\xfc\x41\x3f\x76\x87\xef\x5b\xaf\xdf\xc4\x89\x0b\xf0\x1e\x18\xde\x2f\x1a\x8d\x0e\x3a\xf9\x9c\x07\xe1\xc5\xfb\xc4\x72\xde\xd1\xa3\xe1\x7a\xad\x34\xea\x0f\x48\xc2\x8e\x9e\x33\xc9\x74\x8f\x2b\xd1\xd1\xed\x77\x92\x5e\xaa\x7a\xae\x70\x2f\xd1\x23\x50\x73\xe6\x07\x37\x08\x20\x50\x12\x76\x7e\x68\x22\x8c\xd4\xe7\x11\xfa\x19\x91\x2a\xdf\x52\xcd\x52\x8f\x04\xba\x95\x84\xdb\x23\x4f\xf5\x89\xf0\xce\xa4\xad\x3e\xae\x9a\x06\xb1\x39\x36\xcc\xf7\x8c\x54\x24\x76\xe9\xfa\xad\x10\x34\xcc\x7b\xfa\x07\x84\xec\x80\x13\x1f\xb5\x28\x15\x44\x04\xce\xd2\xf2\x39\xb8\x76\xf1\x64\x40\x90\xac\x4c\xa2\xc5\xfc\x05\xc2\x1e\xc3\xf7\x7d\x7d\xbb\xd5\xd7\xcd\x2e\xc6\x8e\x82\xda\xe0\x20\xc6\xae\x67\xa3\xba\xf7\x91\x8b\x10\xd5\x67\x81\x32\x6f\x88\xff\xb3\xf3\xea\xbc\x22\x4e\x81\x0f\x55\xad\xf6\x68\x10\x70\x83\x07\x7e\x22\x89\x57\xe2\xdb\xe9\xf4\xbc\xd5\xf1\xc3\xd2\x84\x7a\xf3\xa1\xd3\x2a\xe2\xf4\x00\xcf\xab\x73\x45\x2a\x1c\xb4\x1b\x7a\x04\xa9\x5a\x28\xe0\xd3\x43\xa2\xc0\x75\xa1\xec\x91\xe8\x7b\x04\x19\x0e\x04\x7a\xca\xaa\x4f\xf8\xae\xbf\xe6\xb1\xcb\x6c\x48\x3e\x60\x59\x21\x36\x14\x07\xb7\x54\x11\x23\x9b\x80\x2d\xb8\x6c\x27\x13\x40\x92\x11\x7e\xd0\xba\x3e\x07\xb8\x34\x26\x03\x41\x2f\x5b\xaf\xe7\x46\xf9\xf1\xd0\x3a\xf0\x46\x91\x34\x61\x23\x38\x63\xe5\x48\x5c\x9b\x12\x28\x6d\x41\xdb\xd4\xaa\x1a\xaa\x3e\xa1\xbe\x81\x5e\x00\x07\x3f\x6d\xd8\x56\x0f\xb1\xd4\x74\x0e\x28\xad\x20\xb7\x52\x9e\x0c\xdc\xd9\x38\x27\xd2\x37\x6e\xc4\x6a\x84\xb9\x66\x5b\xb3\x08\x1f\x93\x55\x10\x47\xd2\x9e\x8b\x73\x41\x52\x49\x04\x0a\x97\xd9\x34\x26\xf6\xcf\xb7\xa6\xe7\x83\xf9\x06\x7a\x9e\x10\xd9\x36\x49\x5d\x93\x9e\xf7\xe0\x87\xfb\x98\x87\x7e\xe4\xc1\x16\x2c\xd6\x60\x71\x68\xbc\x31\x13\x2b\xa8\xdb\x3e\x9a\x80\xf0\xb5\x3c\x6d\x6d\x48\x00\x79\x71\x71\x74\x2d\x2e\x13\xbe\x1a\xa2\x65\x74\x34\x6c\xe3\x45\xbf\x16\xc5\x07\xbe\x60\x6d\x88\xf8\xf7\xac\x84\x0f\x41\x1e\x27\x15\x69\x85\x24\x6d\xb0\xe7\x40\x42\x12\xe5\x69\x85\x26\xd8\x12\x40\xb1\x3c\x27\x92\x24\x10\xb6\x5e\x07\x1e\x9f\x3f\x47\xfb\xc0\x48\x77\x17\x2e\x6e\x0c\xc8\x77\xdf\xc9\x54\x59\xf1\xee\xd7\x36\xa4\x8d\x09\x29\xe3\x99\x5c\x6f\x38\x70\x62\x83\x70\x37\x6d\x24\x9b\xde\x08\xe1\x6d\xcc\xf2\x1b\x25\x2c\xb2\x19\x1c\x36\xef\x3c\xc0\x9e\xb3\x56\x0f\x9c\xcf\xd2\xc3\x6b\x8d\x74\x59\x81\x9a\xd3\xb0\x1d\x2c\xc5\x32\x0d\x7d\x09\xfc\xba\xc3\xd5\x94\xc5\x39\x0f\x78\x2c\xab\x23\x86\x72\x17\x98\x92\x9e\xbe\xe6\x9e\x51\x05\x16\x73\x29\x77\x4b\x44\xaa\xf5\x9a\x87\xeb\x41\xd4\xc0\x48\xb9\xbb\xdd\xf6\x57\x9a\xf4\x92\x36\xc5\x85\x73\x1f\x9a\x08\x61\x0b\x50\x86\x6f\xa1\xe2\x82\xf6\x23\xbb\x4b\xdb\x37\x60\x26\x3e\x63\x25\xbd\x59\xaf\x93\x7f\xdb\x59\x1d\x38\x95\x11\x7b\x7c\x16\x8f\xd3\x77\x4e\x62\x84\xf0\xb5\x70\x3f\x51\x16\x49\x34\xbb\xdd\xc3\x36\xcd\xce\xe4\xb8\xfd\x12\x67\xbe\x18\x41\x88\x44\x10\x64\x46\x09\xfd\x63\x27\xd6\x1c\x3b\x21\x15\xac\x42\xd4\xae\xf5\x82\x99\x72\x1c\xcc\x66\x6b\x7f\x71\x2d\x52\x61\x05\x90\x35\x3a\xd8\x0e\x62\x04\x16\xac\xed\xb7\x5a\x7f\x1b\x43\x78\x29\x80\xd3\xcc\x17\x36\x77\xa0\x05\xef\x40\x4f\xbd\xd4\x4d\x70\xd3\x1b\x38\x60\xcb\x6e\xb7\xf4\xd2\xd8\x67\x7a\xb2\x6a\x56\x62\x9b\x03\x0b\x72\x6b\x2b\xcc\x26\xb6\xb2\x29\x6e\x37\x58\xc6\x63\xc9\xa4\x1d\xb5\xb9\xcc\xcf\x79\x34\x6d\xbc\x3d\x17\xce\x91\x4d\xaa\xe7\x7c\xa6\x52\x64\x0b\x4e\x86\xad\x5c\x38\xce\xd0\x84\x35\x83\x41\x45\xb0\xc9\x7b\x3d\x1e\xef\x71\x1c\x41\x16\xe1\xd1\x61\x43\xdb\x89\xe7\xe1\x31\x83\x23\x80\xe6\x1b\xa7\x8b\x03\x3b\x5c\xaf\xd7\xc6\x23\x91\x05\x50\x13\xe3\x2d\xc0\x21\x9f\x45\x27\xca\xb5\x80\xc8\x0f\xdd\xae\xb4\x23\xd3\xbf\xd8\xdf\x57\xb4\xac\x53\x06\x01\x1f\x5d\x20\x33\x5f\xc1\x9b\xad\x9d\xba\x19\x5b\x05\xfc\x2a\x58\xec\xc7\xcb\x51\x9c\x9a\x88\x44\x38\x50\xdd\x32\x2c\x1c\x83\xb9\xe2\x2a\x0c\xdf\x26\x35\x75\x1b\x30\x40\xbb\xdd\xd4\x7a\xa2\xd8\x6c\x8e\xdc\x36\x08\x4d\xc4\x94\x44\xf9\x35\xae\x26\xa2\x88\x6f\x2f\x1d\x3a\x74\xc8\x76\xa3\x40\x78\x5f\xb4\x3a\xcb\xf0\xdd\x72\x77\x3e\x56\x9a\xd4\x08\x3d\xef\x22\x64\xe4\x0d\x36\x62\x99\x6c\x23\x96\xa9\xb1\x63\xa9\x8c\x15\x58\x5b\x67\x81\x07\xdc\x57\x7c\x87\x59\xc4\x96\xde\x9c\xbf\x69\x85\x97\x30\x0a\x77\xae\x5a\xdf\x93\x72\xfc\x8e\x45\x21\x73\xd9\xf2\xa9\x58\xde\x18\xdb\x02\x81\x32\x81\x5a\x99\xa3\xb9\xaf\x8d\x72\x16\x58\x56\xd9\x3a\xfc\x8e\xaa\x9b\xcd\xc8\xae\x34\x0c\xe9\x6a\x5c\x4e\xe1\x9c\xd0\x49\x69\x89\x33\x53\x1e\x6e\xa9\xdc\x9e\x0a\x22\xcb\x07\x4a\x98\x0b\xca\x18\xbe\x36\x08\xb7\x88\x63\xa1\xa9\x8f\x1c\xa5\x2b\x52\x38\xd7\xc7\x7f\x33\xab\x9b\x7e\x2c\x7a\xe8\x77\x47\xc8\xd0\xb4\x0a\x1b\xf5\xe0\x74\x35\x19\x4d\x11\xba\xe8\x8f\xba\xdd\xf4\x5a\xa4\x35\x9a\x14\x53\x92\x4f\x8a\x29\x36\xe6\x8f\x1d\xfd\x5b\xd3\x79\x3e\x30\x8f\x9f\xe5\x17\x01\xe4\x4a\x8b\xb3\x8d\xcd\x9f\x1e\xa9\x32\xf5\xc8\x89\x11\x2c\xf3\x18\x6c\xdc\xf3\x39\x09\xe9\xc4\x7f\xf0\x7d\x4e\x81\xef\x88\x32\x66\xcc\x4c\xfc\x5a\xdd\x8a\x41\x2e\x96\x1c\x98\x7e\xa9\xc9\x44\x84\x5f\xab\x14\x21\x9b\x4c\x0e\x87\xed\x02\x18\x81\x88\xd8\xd0\x05\xab\x7b\x3d\xf4\x82\xfb\xaa\x27\xb5\x53\xa0\xb4\x7d\xc4\x1b\x89\xa0\x25\x65\xbd\x60\x03\x20\xe8\xea\x5d\xd5\xee\x68\xde\x8e\x5e\xe2\xd3\x6c\x14\x13\xf9\xa8\x0c\x22\xe7\x99\xdf\x64\xc6\xd2\xe0\x6b\xaf\xc2\xa5\xf3\x6b\x80\x70\xa9\xaf\x00\xc8\xe0\x70\x88\x0a\xbe\xe9\x44\x6f\xa6\xae\x1e\x11\x9f\x8e\x6e\x29\x39\x1c\x39\x16\x19\x5d\xaf\x53\x1f\x13\x6a\x68\xa2\xc5\x73\xbd\x2e\x01\x06\xf1\x73\x4c\x39\x05\x88\x4b\x45\x3c\xea\x02\x74\x64\x18\x68\x2b\xad\xfa\x12\xf5\x47\x07\xff\x70\xd7\xb0\x0d\xfc\x82\xff\xd1\x2a\x69\xd8\x4f\x0d\x17\xe9\x95\xf5\xb0\xf4\x84\x93\xb7\x03\xf6\x69\x29\x99\x41\x00\x66\x74\x55\x2a\xb2\x61\x56\x1b\x25\x8e\x37\x3f\xa4\xfa\xde\x36\x40\x0a\xc6\x05\xe4\x70\xd4\xe0\x1f\x4d\xbd\xb5\x12\xcb\x9f\xa4\x58\xd2\x2b\x73\x85\xc4\x15\x6f\xa4\x8e\xb7\xbe\x40\xd5\x39\xad\x72\x56\x3e\x59\x5d\x5e\x96\x20\x43\x6e\xb9\x34\x7f\x0a\xfd\x3f\x38\x8e\x78\x61\x7a\xf5\x93\xe9\x23\x2b\xc6\xdb\x9f\xb2\x21\x21\x51\x97\x41\x61\xf0\xef\x6d\x97\xa3\x7e\x3e\xd1\xad\xe0\x1f\x41\x75\x3f\x08\x88\xc0\xa3\xb0\x49\x8a\xca\x2b\x06\xa2\x99\x5a\xe6\xd6\x7b\x50\x10\xe8\x20\xa2\x0a\xbe\xcc\x79\x3e\xdf\xa6\x0a\x46\x5d\x36\xb8\x5c\x29\x25\xaa\xb1\x22\xa3\xec\x38\x7c\x3d\xc9\xee\xf9\x57\x20\x20\x8e\x11\xc2\xd7\x80\xe0\x29\x59\xfe\x81\xdd\x74\xbb\x23\x47\x5b\x9c\x68\x52\x42\xb7\xf5\x7b\x3d\xa0\x68\xd2\x03\xfd\x66\x5a\x14\x80\xf3\xbd\xe2\xb5\xd2\x17\x3a\xda\xfe\x04\x14\xff\x61\x10\xeb\xd5\x05\x6a\x87\x5c\x28\x7a\x4b\x13\x51\x25\x3d\xf0\x0c\x1e\x98\xea\xb1\xc1\x27\x23\xb0\x86\x30\xe3\xc1\x9b\xbe\xea\xce\xd3\x6a\xa2\xa6\xeb\x35\xfc\x09\x04\x05\xc0\x92\xfd\xab\xbe\x33\xda\xd9\xfe\xc3\x96\x1f\x24\x5f\x95\x9e\x04\xff\x32\x51\x9e\x6b\x21\xc7\x10\x90\xdc\x22\x45\xc3\xb1\x73\x48\x85\xb2\xbf\xf2\xac\x5a\xaf\xff\xca\x61\x92\xfe\x08\x93\x34\x9b\xed\x9e\x25\xc3\xee\xdc\x9c\xa8\x1d\x5f\x77\xcc\x95\x89\x05\xe6\xe6\x2a\x78\xdb\x98\xab\x4e\x7b\x55\xda\x61\x1e\x9a\x53\xe1\x9c\x87\x0e\x96\x20\xe8\x0d\xa8\xed\x12\x89\x6e\xbd\x85\x24\xc7\x23\xcf\x80\xc7\xff\xae\x07\x53\xf3\xab\x8a\x96\x3b\x83\xc7\xb9\xfa\x4d\xf8\x43\x27\x76\x0d\xb8\x31\x8f\xa5\xa4\x37\xc1\xbd\x0b\x53\x66\x2e\x5d\xcf\x3b\xc5\xc7\x68\x57\x48\x1e\x39\xe1\x53\xcb\x6f\x35\x2e\xc0\x50\x83\xff\xc2\xad\xa7\x05\xb7\x8e\xff\x8d\xef\xea\xce\x28\xee\x8e\x59\x63\xcc\xbf\xb7\x37\x07\xff\x50\xe3\x8a\xfc\x43\x0d\x0a\x4d\xbf\xb0\xe2\x29\x2d\xcb\x4b\x9a\x7f\xae\xb3\xbf\xf0\x71\x45\xfe\xc2\xb3\x54\x3f\x35\xd9\x5c\x33\xa5\x91\x53\xb1\x52\x29\x13\x78\x18\xd8\xe9\x1b\x15\x65\x19\xc6\xc2\xb1\xfc\x2d\x9a\xca\x89\x98\xa2\xd8\xfb\xca\x2e\xae\x33\x0b\x87\xcf\xa3\x33\x9d\x09\x2f\x34\xff\x0b\x3f\xf0\xd3\xb2\x3f\xfc\x20\x9b\xa8\x69\xe8\xc7\x5d\x89\x58\xc7\x65\xcb\xc4\xd0\xec\xfd\x5b\x70\x75\xaf\x70\x7c\x42\x6f\xa9\x63\x6e\x1e\x88\xfa\x58\x6d\x10\x06\x84\x5b\x6a\x64\x19\xac\x09\x21\xa2\xd4\x9f\x78\xaa\x00\x7f\xce\x45\xc1\x16\xe0\x9e\xf7\x25\xc4\x68\x0f\xbc\x2b\x8b\xf0\x74\xdb\xbd\x31\x07\x39\x98\xbb\x3c\xce\x15\xbf\xe6\xea\xc6\x44\xd5\x0b\x98\xb3\x56\x5d\x28\xce\xf5\x63\x78\x76\xdc\x95\x41\x9f\x1e\xbb\xcc\x0c\x6d\xe8\x61\x09\xea\xf4\x48\x93\x04\xb0\xa2\xf0\xd6\xf6\xbf\x12\x11\x2d\x6b\xa0\x12\xf9\x93\xa3\xcd\xc8\x85\xbb\x10\x1d\x44\x6e\x9c\xae\xe8\xf6\xf7\xdc\x2b\x35\xa1\x06\x47\x59\x37\xce\x18\x74\xfb\xc7\x30\xaf\x89\x3f\x20\xc8\xc9\x10\x53\x41\xde\x0e\x7e\xa2\x75\x4d\x6e\x95\x78\x6f\xc2\x19\x6c\x09\x37\x02\x77\xc9\x90\x37\x69\x1a\x5c\x0b\x72\x6b\x84\xdf\x99\xbe\x83\x4b\x41\x6e\x9d\xe5\xdf\xbf\x2d\xc4\xaa\x66\x49\x83\x57\xc1\xc7\x9e\x3e\xc6\x92\xe0\x52\xcb\x85\x83\x10\x5e\x18\x97\x21\xb9\x08\xf7\xdf\x46\xc4\x21\x74\x0b\xaa\x4c\x6e\x47\xd9\x82\xad\xf1\x6c\xb0\xdb\x14\x66\xd6\x9b\xf5\x5c\x8f\x2e\x17\xab\x4a\x3d\x15\xe5\x6a\xb1\x79\x3d\x99\x68\x75\xfe\x56\xd4\x2b\x68\x28\x13\x46\xa5\x46\xaa\x27\x7f\xfb\x58\x7f\x5c\x0d\x87\x74\x38\x05\x94\x1a\x12\x9d\x9f\xa0\x76\x33\x83\x93\x6e\x4a\xf8\x7a\x3d\x74\x41\x49\x6a\xc2\x8c\x26\xe1\xdb\x59\x9a\x7c\x54\x89\x55\xd2\xaf\x1f\x0d\xd7\xeb\xfa\xa2\x0d\xf5\x4c\x7b\xa9\xea\x0b\x74\x40\x7b\xa4\xee\x0b\x4c\x7b\x44\xf6\xe9\x0f\x12\x0b\x52\xf7\x46\x4d\x83\x67\x7a\x00\x33\x5e\x15\x3b\xfb\xbf\x49\xf9\xf8\xe6\xc5\x66\xf3\x15\x82\xd0\xd8\x02\xb8\x2a\x2c\x0a\x67\x42\x89\xe8\x1b\x05\x13\x42\xda\x48\xf0\xbc\x47\x83\x6e\x56\x3d\x4f\x7e\x52\xac\xfa\x26\x46\x1e\xef\xe9\x92\xb8\x22\xa2\x37\xc2\xfa\x4d\xf6\xf9\x0f\x12\x5d\x44\x81\xac\xf1\x52\x90\x49\x92\x04\xd7\xeb\x42\x78\x9e\xd7\x52\x78\x67\x01\xec\x1c\x2d\xad\x23\xa9\x6b\x91\x2e\x05\xea\x81\x50\xcf\x56\xb4\x14\x13\x16\x88\x3a\x80\x39\xe6\xf1\xa1\x49\x6b\xcc\x34\x05\xc8\xbe\x12\x9b\xb8\x1f\x28\xea\xa7\x21\x4a\x75\x29\x76\x09\xf0\x23\x2a\x16\x54\x73\xe5\x34\x08\xcc\xed\xd8\xab\xfd\x80\xd9\x78\xb3\x55\xd1\x64\xba\xe9\x71\xa7\xea\xf5\x90\x9c\x54\x53\x62\x14\x7b\x71\xb5\x2b\x00\xe3\x27\xbd\x1f\x02\xd9\x9a\x08\x6e\x2f\x97\xfd\xed\xe5\xaf\x2c\x77\x7e\x23\xc7\x92\x44\xef\x29\x43\x59\xfa\x29\xd8\x43\x84\x61\x09\x02\xed\x4f\x02\x8c\xe5\x9e\x0b\x08\xa7\x12\x32\x20\x9f\x8b\x2d\x48\x02\xc9\x16\x90\xe8\xb7\x0d\xc2\x0c\x1d\x6e\x89\x4c\x2b\x64\x0d\x1c\xa5\xd1\x12\xdc\x4a\x84\x43\x8f\x44\xb1\xc7\x03\x04\xf5\x6b\x70\x84\x7f\xd7\xad\x3b\xf2\xb5\xec\x17\xbb\x1a\x4e\x31\x6a\x9a\xe5\x78\xcf\xf2\x73\x51\x81\xe1\x2b\x19\xe2\xe0\xd3\xf3\xaa\x20\x6c\x70\xad\x11\x73\xe7\x7d\x28\xd3\xbb\x64\xa3\x12\x25\x6f\x42\x38\xca\x81\xe8\x56\xe8\xb6\xb1\x9a\x36\x6f\x05\x39\x9a\xe8\xa3\xa2\x98\x7d\x5c\x0d\xef\x3f\x3c\xd5\xcf\xb3\x61\x5f\xff\x99\xdd\xfb\xb8\x1a\x3e\x18\xc2\xcb\x83\xd9\xec\xe3\xea\x64\x78\x4f\xbf\x9c\x0c\xcf\xe0\x85\x9a\x17\x48\xb9\x07\xd9\xee\x15\x97\xf7\x3f\xae\xee\x31\x78\x39\x9b\xe5\xf9\xc7\x15\xcd\xe1\xa5\x38\xa5\xb3\xe9\x11\x7e\xaf\x8f\x05\x5e\xff\x59\xc8\xe2\xe9\x3c\x0c\xad\xe5\xb7\xc5\xd1\xc7\x2f\xde\x41\xff\x7a\xcd\x2e\x92\xff\xf1\xdf\x13\xa0\xd1\x95\xf8\x79\xb9\x64\xf2\x29\xad\x59\x8a\x8c\x56\xcf\x2b\xf1\xc5\x7d\x58\xaf\xdf\x0a\xef\xd7\x3f\xd8\x2e\x1f\xc4\x06\x0b\xf6\xf0\x30\x55\x83\x5a\xac\x64\x1e\x9e\x34\x1f\xbf\x24\x86\xcb\xf0\x5e\xaf\x31\x5c\xe5\xb6\xb2\x0c\xbe\x04\xb2\x2a\x11\x89\x6a\x34\xd0\x81\xbb\xa1\x2d\x60\x53\xa8\xdb\xd5\x08\x4a\xab\xd6\xed\xf5\x7a\x75\xc9\x9f\x04\x7e\x6c\xe7\xfe\xc4\x4c\xf1\xc9\x03\xbd\x04\xf7\x1e\x9e\xf4\xe1\xcf\x19\xac\xc4\x08\x56\xe2\xb2\x80\x27\x2c\x51\x3e\x82\xe7\x31\x3c\xef\xc1\xf3\x3e\x3c\xf5\xd2\x3d\x18\x99\xd5\x1a\x51\xfd\xbc\x77\x09\x2f\xf7\x99\x7e\x9e\x0e\xf5\xb3\x78\x00\x9f\x8a\x1c\x9e\x0c\x5e\x18\xac\x33\x83\xf2\xec\x21\x3c\xa9\x49\xd0\xcd\x9e\x8e\x74\x83\xa7\x27\x50\xf1\xe9\x3d\x5d\xf1\x29\x85\x5a\x4e\x2f\x75\x95\xa7\x0c\x5a\x39\x9d\x9d\x7c\x5c\x0d\x1f\x8e\x20\xe5\xe1\xe8\x0c\x9e\x90\xf2\xf0\x18\x52\x8e\xef\x9b\x97\x53\x78\x9e\x99\x17\xdd\xc0\x99\x19\xfe\xd9\x50\x0f\xe9\xec\x44\xf7\xec\xec\x1e\x8c\xfb\xec\xde\x43\x78\x42\xae\xfb\xe6\xd3\x7d\x3d\xd8\xb3\x07\x90\xf7\x81\xae\xf8\xec\xa1\xee\xdf\xd9\x25\x94\xbb\xd4\x43\x3d\xcb\x4d\x56\x98\x9d\xb3\x1c\x4a\x17\xba\xd9\x33\x06\xc5\x98\x2e\x46\x87\x23\x78\xea\x2f\x14\x1a\xa5\xf7\xe0\xcb\x3d\xf8\x72\xef\x14\x9e\x0f\xe1\x09\xc3\xa0\xd0\x0d\x7a\x1f\x32\xc1\x64\xd2\x53\xf3\x5b\xf7\x88\x42\x2f\xe8\x43\x28\x0c\x7d\xa1\xa6\x17\x14\x56\x87\xc2\xea\xd0\x1c\xea\x83\x1e\x51\xe8\x0b\x85\xbe\x5c\x42\x5f\x2e\xa1\x17\x97\x27\x0c\x9e\x7a\xad\x2f\xcd\x34\x5c\xde\xbb\x07\x4f\x5d\xec\xf2\xfe\x03\x78\xea\xea\x2e\x61\x16\x2e\x61\x16\x2e\xa1\xe5\x4b\x18\xff\x65\x3e\x84\x27\xe4\x87\x81\xe7\x27\xb0\xd2\xf9\xbd\x21\x3c\x1f\x98\x97\x87\xf0\xa4\xe6\x45\x67\xce\x61\x72\x73\x68\x22\x87\xca\x73\xa8\x3c\x87\x01\xe5\x00\x7f\x39\x40\x5e\x9e\x43\x9e\x1c\xbe\x43\x43\x79\x01\x65\x0b\xf8\x0e\x63\xcb\x61\x6c\x05\x8c\xa7\x30\x23\x29\x60\x24\x05\x34\x56\xc0\x18\x0a\x68\xa6\x80\x66\x8a\x9c\xc2\x53\x37\x53\x14\xc7\x50\xa0\x80\x02\x50\x6b\x01\x47\x14\x3b\x19\xc1\xf3\x5e\x1f\xfe\xe8\x12\xec\xde\x29\xbc\xdc\xd3\x2d\xb1\x4b\x48\xbf\x34\xe9\x97\x67\xf0\xbc\x84\xa7\xee\x2c\xcb\x1f\x42\x02\xf4\x79\x36\x7a\x08\x4f\x9d\x69\x76\x72\x1f\x9e\xa7\xf0\x84\x2f\xa7\xd0\xe7\xd9\xa9\xae\x76\xf6\x10\x80\x74\xf6\xf0\x1e\x3c\x1f\xc0\x13\xf2\x9a\xc3\x72\x76\x66\x5e\x00\xae\x67\xd0\xd4\x4c\xcf\xd1\x68\x78\x5c\xf4\xf5\x9f\x93\x21\x3c\x8f\xcd\xcb\x29\x3c\xcf\xe0\x49\xe1\x59\xc0\x93\xe9\xe7\xfd\x87\xf0\x84\xd4\xfb\x0c\x0a\x3c\x80\xd2\xd0\xa1\xd1\xf0\xf4\x9e\x7e\xea\x05\x1f\x0d\x1f\xde\x87\x27\xb4\xf4\x10\xea\x38\xd3\xcf\x93\xfb\xb3\x8f\xab\xd1\xe9\x08\x9a\x3b\x1d\xe9\x02\xa7\xa6\xed\xd3\x13\x78\xb9\x7f\x0c\xcf\x13\xfd\x3c\x85\xdf\xa7\xf0\xfb\xf2\x14\x32\xe9\x03\x67\x74\x0a\x03\x38\xcd\xcf\xe0\x53\x01\xe9\x85\x4e\x78\x38\xd4\x3b\x62\xf4\x70\x08\x2f\x54\x77\xf4\xec\x58\x4f\xc3\xe8\xec\xf8\x18\x9e\xa7\xf0\xd4\xe3\x38\x3b\x81\x2f\x27\x50\xc9\xd9\xc9\xe5\xc7\xd5\x88\x8e\x4e\xe1\xa9\x93\xa9\x06\xb6\x11\xbd\xaf\x57\x65\x44\xf5\x49\x35\xa2\x30\x58\xaa\x01\x63\x44\x1f\xdc\x87\x84\x07\xb9\x7e\x9e\x9e\xc0\xcb\xa9\x79\xd1\x23\xbc\x84\xb3\x63\x74\x39\xd4\x9d\xbb\x84\xa1\x5d\x9e\x3c\x80\x4f\x30\xaf\xb0\xa7\x46\x97\x7a\x4f\x8f\x2e\x1f\x40\xaf\x2f\x61\xa0\x97\x0f\x87\xf0\x1c\xe9\x27\x85\x99\xb9\xa4\xf7\xe1\xf9\x10\x9e\x7a\x50\xf9\x71\xae\x13\xf2\x93\x13\x78\x3e\x80\xa7\xee\x7b\x5e\x40\xb3\x79\x71\x0c\xcf\x7b\xf0\xc2\x86\xf0\x3c\x36\x2f\x0f\xe1\xa9\x27\xa8\xc8\x21\x73\xc1\x74\xf9\x62\x06\xe0\x50\xe8\x4b\xf3\x78\x38\xcc\xe1\x59\xe8\x27\x54\x79\x3c\x9c\x0d\x3f\xae\x8e\x73\x36\xd3\x2f\xf9\x6c\xf4\x71\x75\x5c\x30\x48\x29\xcc\x0d\x7c\x4c\xe1\xd2\x3d\x86\x97\xb3\x33\x78\xd2\x8f\x2b\xfa\xe0\x81\x2e\x42\x1f\xe8\xc5\xa4\x0f\xf4\x14\xd1\x07\xa7\x85\x7e\xea\x1a\xe9\x03\x5d\x15\x7d\xa8\x8f\x3b\xfa\x70\xf8\x00\x9e\x97\xfa\x79\x7c\x1f\x9e\xf0\x45\x1f\x98\xf4\x21\x34\x47\x1f\x42\x81\xb3\x63\x3d\x99\xf4\x4c\x1f\xd4\xf4\x0c\xf6\x19\x3d\xbb\x0f\x29\xb0\x21\xe8\x99\x06\x43\x7a\x76\x79\x02\x4f\x93\x59\x6f\x3a\x0a\x07\x32\xa5\x70\xd0\x53\x7a\xcc\xf4\x53\x6f\x5d\x4a\x35\x40\x50\xaa\xb7\x1b\xa5\x7a\x4e\x29\xbd\x77\x02\x4f\x28\xa0\xef\x14\x4a\x2f\x8f\xa1\xd8\xe5\x3d\x78\x9e\xc2\xf3\x21\x3c\xa1\x22\x7d\x12\x51\xaa\x6f\x42\x7a\xc9\xee\xc3\xf3\x21\x3c\x8b\x8f\xab\xc2\x22\x1c\x33\x3d\x5f\xb3\xcb\x11\xfb\xb8\x9a\x19\x84\x64\xc6\x86\xfa\x13\x3b\x36\x2f\x7a\xcc\xb3\xd9\x19\x83\xe7\x6c\x7a\xd4\x22\x0d\x4f\x23\x34\x1d\x84\xbb\x9a\x90\x04\x01\xef\x05\x39\x7d\xf0\xb0\xdb\x7d\xec\xb1\x8d\x40\x7c\x2f\x36\x65\x65\x7b\x1c\xa6\x1b\x1f\x55\x12\xc2\xfb\xb6\x61\x47\x24\xd8\x09\xa5\x36\x2c\xd4\x20\xaf\xeb\x0f\xec\xab\x22\x15\xda\x76\x95\xa4\x10\xbf\xcb\x31\xbb\x8f\x4a\xa0\x50\xc0\x6f\x47\x31\x17\x47\x45\x11\x8d\xa3\xea\x14\xd8\x33\x6f\x8b\x54\xde\xc5\xb8\x8f\xd3\xb8\xd1\x4d\x79\x39\x82\xba\x18\x9e\xf7\xfb\xca\x33\x00\x4d\x8d\x56\xf6\x07\x2f\x68\x47\xa0\xee\x5f\x63\x34\x0d\x1a\x8a\xbb\x84\x9a\x9f\xc4\xe6\x7c\x82\xcb\x9c\xf1\x3e\xa3\xb4\x5d\x99\x5b\x35\x24\x70\x55\xff\xbc\x2a\xd2\x6a\xbd\x66\xc6\x2d\x5e\xcd\x14\x20\xda\x26\x4a\x38\x6f\xf6\x38\xe3\x89\x62\xe8\x06\x33\xee\x1a\xd0\x28\x77\x35\xd0\x63\xff\x20\xec\x8a\xeb\xe4\x34\x0c\x3d\xeb\x30\xf1\xdf\x8b\x96\x35\xef\x8d\xd2\x5b\xef\x82\x87\x43\x08\x73\x24\xae\x99\xee\x69\xa2\x01\x91\xe6\x0a\xdc\xe9\xbb\x04\xd3\xe3\x30\x49\x21\x5c\x19\x2e\xc2\x33\xc3\x45\xa8\x14\xe5\x55\xbd\xc1\x94\xe0\xb3\xf4\x24\xb4\xcb\x02\x26\x81\x0a\xbb\x68\x7d\xf0\xeb\xb2\x6d\x74\x4e\xf7\x25\x55\xe8\xa0\x10\xe0\xfd\x77\xb4\xa3\x9a\xb9\xa8\x15\xc2\x8a\x10\xd6\xba\xdd\x34\x0a\x55\x1b\x8d\x04\xa8\xfa\x1b\x11\x19\x80\xfb\x69\xa6\xb9\xe2\xd7\x6e\xef\x9c\x83\xdd\x8f\x14\x42\xb9\xbf\x1b\xe9\x88\x91\x5d\xdf\x77\xc0\xdc\xcb\x70\x97\x47\x91\x4e\xff\xb6\xfe\xf8\xb1\x46\x49\x8f\xd9\x30\xa7\xfa\xed\xe3\xc7\xfa\xdf\x12\xd4\x40\x04\x8f\xd1\xa8\xdb\x4d\xe3\x98\x64\x7a\xd1\x6d\x55\xbb\x3b\xbe\xbd\xe0\x11\x1c\x39\x7a\xec\x95\x5e\x32\xb9\x30\xd1\x82\x76\x71\xa7\xa3\xd0\x41\xe4\xa5\x48\x15\x32\xa1\x76\x6c\x8c\xe1\x56\x1b\xcc\x70\xf2\x2b\x6b\x45\x5a\x85\xd1\x60\x59\x78\xec\x78\x79\x76\xe5\xad\x49\xf9\xb8\x9a\x8c\xa6\x3d\x9e\x25\x10\x93\xfb\x85\xee\x14\x2d\x8a\xef\xea\xd5\x81\xe9\x13\x9c\x8e\x12\x19\xae\xa4\x4b\xeb\x91\x54\x7a\xab\x54\x15\x2e\xfe\x3f\xb6\xb8\x11\x2c\xd0\x91\xde\xe5\x4e\x44\x4e\xaa\x69\xb7\x7b\xf8\x52\x80\xd1\x93\x0b\x43\x0b\xcc\x2e\x17\x80\x76\x37\x19\xff\xb3\xb0\x9a\x01\xf1\x46\xbe\x62\xca\x2e\x55\xfd\xe4\xe6\xa9\x8f\x6a\xd0\x9e\x76\xdf\x93\x3d\x0d\x38\x8e\x09\xc2\x77\x5b\x57\x0c\xda\xbc\x07\x55\xb7\xcb\xd2\xca\x72\x38\x9f\x08\x62\xad\x80\x7f\x14\xf8\x4f\x02\xff\x5d\x6c\x04\x6a\x37\x71\x64\x62\x83\x61\x46\x5c\x2c\x6c\x37\xe8\xa4\x90\xf4\xea\x8a\x5e\x96\x2c\xd1\x54\xea\x7a\x0d\x1f\x9e\x49\xb1\x84\xf7\x26\x0d\x74\xb9\xff\x2c\x22\xed\xd1\x1f\x85\x63\x74\x04\xa1\x81\xfe\xef\xff\xfe\xbf\x27\xe8\x00\x8e\xea\x20\xe2\x8c\xc2\xfb\x6e\x9f\xe4\x6b\x82\xa6\x08\xe1\xe1\x21\x09\xcf\xff\x28\xec\x76\xb7\x9b\xfe\x28\x88\x0a\xe3\x85\x3f\x22\x23\x50\xdc\x0a\x72\x5d\x1c\x77\xbb\x87\x66\xd4\x0f\x11\x6a\x0c\x80\xfc\x28\xc6\x9b\x9d\xcb\x82\x0f\xff\xe3\xff\xb0\xa1\xf6\x12\x6b\x6e\x9c\x75\x78\x05\x6e\xd7\x2f\x4b\x91\x7f\x3e\xef\xd8\xe8\xe3\xa3\xe5\xd7\xf3\x8e\x0d\x68\x6e\xa3\xf0\xf5\x47\xcb\xaf\x49\x10\x55\x78\x5f\xd4\xa5\x24\x62\x49\xfd\x4e\x44\x81\xda\xff\xe4\x0c\xba\x3b\x7f\x12\xd6\xa8\x09\xa6\x6e\xef\x6c\x3d\xfe\xbf\xfe\xcf\xc7\x09\xd2\x40\xf3\x93\x80\x10\x10\x23\xa4\xa1\xec\x89\x58\x81\x47\x8d\xa7\x10\x11\xfd\x1d\xf0\x71\x4c\x30\xe8\xf5\x5a\x6f\x88\x99\x22\x44\x0e\x64\x10\x13\xde\x02\x44\x65\xea\x19\xe1\xe3\xfd\xf5\xf8\x1e\x92\xca\x54\xd1\xb7\x55\x3d\x3a\x31\xd2\x51\x81\xff\xaa\x37\x7f\x6b\x8b\x41\x4e\x0e\x49\xf2\xb1\xfa\x58\x5d\x3a\x23\x86\xa3\x8f\xd5\x91\x13\x04\x8c\x43\x86\x4e\xac\xcf\x0a\xdc\x45\xcf\x59\x54\x8f\x48\x75\xde\x2a\xff\xb5\x9c\x98\x4a\x5f\x60\xc0\xf3\xe5\xe0\x04\x28\xe6\xf9\x0a\xaf\x7e\xa3\x6c\xa8\x2a\xe6\x74\xef\x78\x7f\x84\xc6\xbc\x3f\xca\x38\x84\x7c\x08\xaa\x94\x89\xae\xf0\x90\xd0\x71\x6a\x65\x1b\x22\x70\x1f\x8b\xb0\xea\x11\xda\x1b\xa1\xcc\xa7\xea\x9b\x8b\xf7\x46\x81\x32\xf0\x4e\xff\x1a\x7e\xfc\xf2\x63\x35\x5e\xeb\x59\x68\xf0\x1f\x04\xf9\xc2\xab\x42\x7c\x19\x84\xae\x93\xc6\x9b\x2c\xb9\xb6\x8a\x88\xc5\x77\x48\x62\x0e\xdf\xd6\xa5\x71\x38\x6a\xe2\xbe\xe8\xca\xbc\x22\xed\x97\x8a\x49\x17\xae\xad\xad\x27\xc6\x7f\x82\x2a\x9d\xa1\x79\x7a\xa8\x40\xf7\x0b\x6e\x65\x87\xa3\xa2\x43\xc2\x50\xb7\x3b\x3c\x24\x6a\x90\x8b\x85\x4e\x7c\x5e\x15\x3f\x09\x5e\xa9\x3a\x4d\xa0\xb7\x1f\xc4\xf3\xaa\x48\x40\x86\xf3\x47\x41\x12\x51\xe5\x62\x79\x93\xf0\x2a\xfd\xbd\x68\xcf\x22\x7d\x03\xfc\x5e\x6c\x6c\x21\x9b\x15\x27\xa6\x07\xe7\x09\xc2\x89\x1b\x55\x8b\xe5\xfe\x5e\x0c\x4c\x46\x84\xff\x5d\xb4\x61\xe2\xff\x22\xf0\x7f\xd3\x30\xf9\x99\xdd\xe8\x23\xb7\x26\xb7\x27\x59\xf2\xbc\x02\xdc\xe7\x61\x96\x3c\xa1\xf9\xe7\x7a\x49\x73\x96\xe0\xb3\x2c\xf9\x40\x2f\x13\x3c\x6a\x33\x8c\x1e\x64\xc9\xfb\x39\x9f\xa9\x04\x8f\x4e\xb3\xe4\xa9\x92\x65\x82\x47\x0f\xb3\xe4\x71\xa9\x3f\x9d\x65\xc9\x4f\x74\x55\xb3\x04\x1f\x0f\xb3\xe4\x29\x5d\xd6\xaf\x44\xfe\x39\xc1\xc7\xa7\x59\xf2\xbc\xce\x13\x7c\x72\x9c\x25\xef\x4d\xed\x27\x27\x3a\xf3\x15\xfb\x79\x99\xe0\x93\x7b\xe6\xf7\x33\xf1\xa5\x4a\xf0\xc9\x7d\xdd\x5e\x91\xe0\x93\x07\x59\xf2\xa3\x58\xe8\xcc\xa7\x59\xf2\x8a\xe9\x66\x4f\x1e\x66\x09\x14\x39\xcb\x92\x77\x7a\xab\x25\xf8\xde\x30\x4b\x4c\xc9\x7b\xba\x1e\xc9\x2b\xf5\x3e\x97\xfa\xf5\x7e\x96\xbc\x04\x9b\xa2\x04\xdf\x7b\x90\x25\xcf\x8c\xcf\x77\x7c\xff\x2c\x4b\xce\x13\xfc\x60\x94\x25\x24\xc1\x67\xa3\x2c\x79\x2d\x8a\x04\x9f\x1d\xbb\x1f\x27\xf6\xc7\x68\xf8\x20\x4b\xfe\x4d\xff\x3d\x85\xac\xa3\xe1\x59\x96\xf4\x13\x3c\x1a\x0d\xb3\x64\xa0\xff\x8e\xb2\xe4\x28\xc1\x23\x3d\x40\x57\xfb\xe8\xf4\xc4\x64\x7a\xf8\x00\x9a\x19\x3d\xb4\x85\x1f\x3e\xcc\x12\xac\xff\xda\x4a\xce\x6c\x25\x67\xb6\x12\xdd\xfe\x2f\x09\x3e\xd6\xd3\x38\x49\xf0\xb1\x9e\xc3\x8f\x1f\xf5\x8f\x51\x96\x4c\xf5\xdf\xe3\x2c\xf9\x5f\x13\xfc\xe0\xe4\x58\xcf\xa3\x9e\x05\xfd\xf3\xc4\x8d\x5e\xbf\xdc\x73\xf3\xa4\x5f\xee\xfb\x29\x7a\x70\x72\x7c\x7a\xdc\x76\x51\xbf\x9e\xb8\xb9\xd5\x2f\x6e\xc6\xf5\xef\x07\xed\xba\xe8\xd7\xd3\x70\x69\x1e\x9c\x9c\x0c\x8f\xfd\xa4\x06\x08\x08\xa3\xd1\xd6\x2e\xd9\x35\x2b\x7f\x38\x1e\xb3\x81\x12\x99\xb1\x27\x0d\xe4\xcc\xfb\xf2\x82\x2e\x9c\x2e\x12\xc8\x7d\x69\x20\x34\xe0\xa1\x37\xcd\x31\xa3\xa9\x9a\x0c\xa7\x28\x0b\xa4\xa7\xd5\xfe\xec\x8a\xa6\xa0\xc0\x89\xb2\xc8\xea\x38\x90\xbc\xd2\x10\x25\x7b\x6e\x74\x9c\x72\xa0\x07\xc8\x3f\x2a\x8d\x20\x56\x87\xe0\x83\x58\x91\x0f\x3c\xad\x90\x0b\xb6\xf2\x58\xbf\x60\x41\xf8\x98\x1b\x24\xd1\x0c\xa7\xa2\x69\x85\x32\x09\xcf\xa1\x17\x64\xe8\x93\x57\x04\x44\xaf\x88\x1a\x35\x5d\xb0\xf1\x4f\xaa\xb6\x0f\xd2\x7e\xb2\x8d\x19\x77\x29\xeb\xf5\x90\x90\xb6\xc9\xd8\xc7\x3d\x38\xe3\xa8\x6c\x54\x0c\x2b\xd6\xfc\xf8\xfe\x08\xe9\xc3\xdd\x34\xd0\x9a\xf8\xa8\x41\x3e\x7f\x44\x84\xf9\x11\xf4\xd4\xa4\x63\x3a\x1e\x66\x22\x38\xcc\x5b\x15\x05\xba\xa1\x30\xe3\xfb\xe2\x67\x1d\xb4\xcb\xe5\x21\xa9\xba\x5d\xf5\x28\x28\x5a\xdb\x61\xff\x45\xc4\x5a\x0a\xf2\x5b\x41\x2b\xc0\x39\x35\xf8\x75\x50\xdd\x2e\x78\x71\x68\xa5\x8e\x6d\x22\x21\xca\xf8\x78\x20\x44\x05\x38\x85\xf4\xe2\x57\xdd\x3c\x37\x7d\xc5\xa0\xb5\x6a\xa6\x70\x6c\xcb\x1f\x82\x9b\x88\x6e\x37\xfd\x8b\x00\xbe\x02\xca\x76\x24\x54\x08\x4b\x74\x20\x49\xd5\xec\x98\x9b\x92\xc6\xde\xae\x2b\x6f\xc3\xdf\x93\x9a\xf2\x03\xe3\x23\x4b\xd2\x5d\x0c\xbb\xdd\xa7\xc2\x1a\x69\xb8\xfb\x58\x21\xb4\x0b\xfb\x5e\xd1\x4d\x3a\xdd\x80\x79\xe8\x40\xa7\x93\xb7\x99\x02\x71\x75\x4d\x8d\x4f\x47\x4a\xf8\x44\x4c\x71\x4d\x6c\x1f\xa9\x07\xd9\xbe\xcc\x74\x19\x1b\xa0\xaa\xbe\xa0\xd6\x3a\xbc\x7e\x44\xdb\xa8\x57\x1d\x70\xaf\x50\x13\x42\xad\x9f\x0d\xf8\x19\x24\xeb\x66\x6a\x44\x88\x18\xd7\x99\xbc\x18\x12\x92\x42\x8b\x3d\x22\xa7\xc8\x37\xa5\x4b\x58\xd7\x7b\xd0\xf7\x20\x4f\xa4\x6f\x5c\x13\xa8\xa2\xed\x23\x74\x5a\x97\xc6\xfd\x91\x5e\x18\xfb\x0e\xfa\xb3\xfa\x43\x18\xfc\x6f\x6b\xae\xf4\xe4\xfb\x18\x76\xe7\x7c\xe7\xc4\x73\x84\xce\x11\xef\x79\x2f\x4b\x1d\xfe\x68\xb8\x5e\xf3\x8b\xe8\xd4\x18\x83\x52\x32\x6f\x42\xef\x6f\x2d\xed\x3d\x3c\x67\x8f\x46\xc3\x73\xd6\xeb\xa1\xff\x26\x26\xac\x77\xef\xe1\x94\xc0\x8f\xb3\x07\x53\x62\x94\x2d\x52\xab\xb1\xcf\xc8\x83\xfb\xe7\xec\x11\x39\x6b\xb3\xbb\x2c\x30\xa6\xa7\x96\x79\xd6\xe6\x1f\xe9\xec\xa3\xe3\xb6\xf6\xd1\x68\x64\xab\x87\x33\x7f\x4a\x92\x17\x49\x8f\x35\x28\x35\x07\x54\x41\xc9\x96\x53\x0d\x90\x9b\xed\x95\x53\x0e\x4f\xcd\xcb\x43\x9a\x4f\x8f\xb0\x22\x47\x93\x5a\x7d\x79\x33\x3d\xc2\x92\x1c\x4d\x5e\xbd\x93\xd3\x23\x5c\xe9\x5f\x97\xa3\x6a\x7a\x84\x39\x39\x9a\xe8\x1f\x41\xd8\xf0\x28\x7a\x03\x2c\x9c\x0b\x8d\x03\x9b\xd3\x3a\x02\x50\x82\xc8\x66\x53\xc0\x4b\xad\xd2\xb9\xa1\x47\x69\xe0\x0b\xcb\xeb\xf6\xe2\x92\x38\xd5\x6a\xbc\xd2\x78\x71\x4e\x86\xe7\xf9\xa3\xf2\xbc\xd7\xcb\xd1\xca\xea\x12\x90\xb4\x26\x34\x64\x3d\xe6\x08\x3d\x22\xc7\xf7\x4e\xc7\xc9\xa5\xfb\xa7\x6a\xf5\xa5\xbe\x8c\xfe\xd5\xb5\x1e\xea\x9b\x1f\x7e\xf8\xe1\x0d\xfc\xc3\x6f\xf0\x9b\x91\xff\x67\xbe\xbd\x79\xb5\xf7\xdf\xf7\xa4\xdb\x86\x2e\xf7\xfe\xc3\xba\x79\x68\xdf\xd4\xf7\xc3\x0f\xa3\x11\xfc\x1c\xbd\xba\xab\xfa\x3b\x9a\x35\xe9\x89\x83\xf0\x1a\x65\xa3\x7b\xc7\xf7\x1e\x91\x5a\x6f\x6d\x32\xba\x7f\x7c\x6f\x9c\xbc\x4b\xb2\xd1\xfd\x93\x07\xfe\xe3\xe9\xe9\xc9\x38\x91\xc1\x3f\x2c\xdf\xbc\x59\xc0\x3f\xf9\xaf\xfc\x5b\x44\xff\xec\xc7\xca\xff\xfb\xa1\xaa\x74\xa6\x7f\xa9\xea\xff\x58\x57\xe0\x1f\x8c\xac\x9d\xa0\xbe\x9e\x0a\x94\x8d\x4e\x4f\xfd\x2c\x1d\x1f\x1f\x0f\xc7\x89\x4c\xb2\x87\xa3\xb3\x63\xf7\xf1\xe1\xf1\xf0\x64\x9c\x7c\x49\xb2\x87\xc7\xc3\x7b\x84\xd4\xe3\xe4\x32\xc9\x92\x57\x09\x3a\xc8\x49\x1b\xce\xb2\x20\xc9\xab\xc4\x43\xe8\x6d\xb2\x48\x08\x49\xaf\xc9\x6a\x92\x4f\xd1\x58\x3f\x49\x91\x15\xe4\xba\x09\xcb\xcc\x37\xca\x8c\x82\x32\xdd\x6e\xa2\x49\xb7\xb9\x29\x9b\x54\x49\x26\xcd\x76\xb9\x36\x31\x18\xaf\x31\xa4\x43\x08\x45\xc8\xf1\x0e\x02\xeb\x0b\x99\xe6\x64\x84\x0b\xb2\x9a\x0c\xa7\xba\xea\xfe\xc8\x56\xde\x8b\x2b\xd7\x6d\x15\xf6\xef\x6a\x92\xf7\x46\x53\xdb\xd2\x28\xd1\x08\xec\x21\xb9\x5e\xaf\x8b\x43\x9b\xb4\x5e\x27\xa3\xe4\x10\xf2\x57\xfa\xef\x7a\x6d\x1a\x2d\x10\xd6\x63\x32\xad\xb6\xfb\x53\xef\xee\x04\x07\xed\x21\x53\xf5\x9b\xc4\x73\xda\x93\x1f\x74\xe7\xdb\xf3\x74\x46\xf2\xde\xe8\x7c\xf6\xa8\xec\x76\x21\x69\x35\x99\x4d\xcf\x7b\xbd\x19\x3a\x77\x39\x96\x24\xef\x76\x93\x43\xd3\xdd\xbe\xee\x93\xc9\x3d\xb2\xb9\xc7\xd0\xf3\x37\x09\x5e\x90\xfc\x7c\xf1\x68\x76\xde\xeb\x2d\xd0\x6a\xb2\x98\x92\xe5\x41\x4e\x66\xfd\x51\xe3\xfa\x89\x37\xe6\xfd\x1a\x42\x55\xeb\x2e\x1e\x24\xaf\xf4\x9c\xdb\x5a\xaf\xed\x8c\xbc\xda\x9a\x7b\xb4\x35\x64\xb0\x92\x37\xa1\xd6\x61\xc0\x30\xb0\x60\x50\x3e\x71\x36\x45\x66\x5c\xa0\xcc\x44\xa0\xc1\x34\x1f\x9b\x31\x01\x58\xe1\x4b\xfb\x75\xf6\xa8\x1c\xeb\x02\x06\xd8\x74\x85\x4b\x72\xb5\x5e\x5f\x8e\x75\x8f\x92\x77\x77\x8c\x14\x5c\x25\xe0\x4f\xa0\xf9\x1c\x74\x14\x14\x7f\xa3\x5e\xea\x8c\x5f\x48\x0e\xb9\x7a\xbd\x5c\xe7\xea\x76\xc3\x2c\x30\xb8\xf3\x4f\xad\x6b\x67\x91\x0e\xf1\x17\x9c\x87\x16\x6a\xcf\x49\x8e\xbf\x92\x4f\xce\x45\x50\x54\x57\xf2\x2a\x01\x20\x9a\x9a\x8a\x74\xda\x82\x3c\x3f\x5f\x3c\xca\xa1\x37\xdc\x35\xb5\xd0\xbd\x79\xfe\x68\xd1\xed\x7e\x72\x0a\xc9\x5f\xf1\x10\x9b\x16\x47\xf8\x39\x5e\x58\x54\xfc\x2d\x59\xd8\x16\x16\xba\x16\xc0\x0f\x7d\x15\x30\x13\xe7\x3b\x6a\x38\xc6\x6f\x75\x0d\xf8\x39\x59\x40\xbf\x7b\xbd\xc5\xc1\x73\x5d\x7a\x4f\x6b\x7a\x7c\xf6\xd6\x1a\x11\xf2\xc9\xe3\xbc\xdd\x6e\x7a\x43\xa8\xb7\xcb\xf9\x58\xf7\x8c\xee\x20\xe4\x80\x7b\xef\xa6\xe5\x21\xe3\x4f\x83\x55\x65\xec\xe1\xdc\xcc\x0d\x71\x90\x8e\x10\xc2\x23\x88\x68\xf9\x09\xed\xaa\xfe\x63\xdd\x33\xd6\x3e\xa9\xc9\xa2\x44\x7f\xa3\xfa\x68\x55\xca\x7e\x98\x58\xea\xda\x8f\xe3\xbe\x6f\xf6\x67\x84\x21\x55\x09\xf7\x17\x21\xdc\xe6\x3f\x8c\x7b\x16\xb5\xd6\xe6\xc2\xa5\x6e\x0a\x7f\x6a\x9a\x96\x55\xf6\x76\x70\xcd\x64\xcd\x45\x45\x92\xfb\x83\xd1\xfd\xc1\x71\x82\xdf\x36\x08\xe1\x90\x29\x93\x08\x50\x6f\x0b\x5c\xd1\x7f\x5d\x0a\xa9\xea\x6e\x77\x2b\x65\x21\x8a\x55\xc9\xc6\x2c\x95\xec\xef\x2b\x2e\x59\x9a\x0c\x06\x47\x83\xc1\x51\xc9\x2f\x8f\x5a\x65\xe2\x04\xa1\x6c\x07\x83\xa4\x60\x33\xa0\x7f\xcc\xdf\x01\x5d\x14\x63\xf3\x33\x9d\xec\xae\x66\x8a\x19\xca\x58\xda\xf2\x9d\x51\x13\xc7\xde\x48\x56\x35\xeb\xd4\x4a\xf2\x5c\x25\x96\x69\x19\x70\xb4\xfb\x25\xaf\x94\x8d\xe8\x5c\x27\x2d\xbe\x24\xad\xc6\xaf\x17\xeb\x80\x3f\x32\xff\x16\x4b\x02\x43\x9d\xe2\x54\x19\x4d\x56\x83\xdf\xb7\x4e\xd1\x76\x08\xdb\x36\x42\x4e\x1b\x3e\x77\x4b\xfa\xa6\xca\x92\x29\xa1\x70\xc9\x53\xe8\x62\xd6\x72\xfb\x71\x02\x5a\xbe\xa0\xd5\x8b\x39\x3a\xa8\xac\xbc\x55\x89\x65\x48\x7a\xaa\x41\x0e\x8c\xd2\xbf\xf6\xab\x88\x15\xdd\xbf\x8f\x7a\xc9\xf2\x6b\x82\x5d\x39\xe0\xc0\xba\xdc\x7f\xe9\xdd\x87\xd4\x40\x96\xe7\x05\x2d\x5b\x13\xa9\x84\x28\x15\x5f\xea\xaa\x42\x51\xa7\x1c\xe4\xa5\xa8\x18\x30\x85\x0f\x87\x08\xe1\x58\xf0\x10\x66\xad\xc0\xa1\x48\xb5\x6f\x6c\x58\x4f\x8b\xf5\x82\xe5\xba\x2b\x96\x34\xe7\xea\x06\x1c\x55\x45\x5f\xc8\x08\xe1\xaa\xd1\x2b\x12\xcc\x2b\xb5\x18\xb7\x3a\x30\x93\xc8\x6d\x0b\x62\xa5\x12\x4c\x21\xa0\x7d\x9a\xaa\xd6\x77\x80\x59\x7c\xef\xf4\x71\xa3\x49\x63\xbc\xbe\xd1\xec\x30\xb4\x37\x08\xc9\x11\x9d\xbb\x41\xf8\xc1\x10\xa2\x64\x1a\x3f\xc4\xd6\x69\x79\xcd\xd4\xcb\x4a\x31\x79\x4d\xcb\xa8\x08\x9f\xa5\x02\xb5\x64\x0c\x3f\x3f\x67\x24\x12\xbb\x82\xc1\x4a\xb7\x3b\x1a\x11\xc2\x42\x99\xa5\xce\x66\x64\x96\x8c\xc4\x82\x1e\x17\x2a\xd9\x58\x92\xde\xd2\x34\xf4\xe4\xe4\x9d\xb6\x76\x40\xc7\xdb\xf7\xa9\xd6\x1d\xbf\x37\x84\x30\x59\xa2\xda\x9c\xb5\x80\x63\x13\x11\x1a\xc6\x9e\xd5\x3b\x2e\xb0\xc6\xe7\x9e\xda\x30\x53\x14\xb8\x16\x98\xd3\xfa\xf7\xe0\x96\xd6\x85\x86\x12\x15\xf8\xbc\x7c\x7b\xcd\x02\xcd\x4a\xb5\x11\xd7\xb7\xb5\x99\x73\xe6\x58\x2a\x30\xc7\x82\x71\x1e\x7d\xbc\xdc\xb5\xe9\xfb\x56\x31\x53\x06\x41\xbf\xdd\xf4\xb4\xd6\x91\x72\x9f\xb0\x01\x0b\x92\x72\xd8\x2e\x3d\x6e\xe5\x15\x47\xc7\x98\x12\xf0\x1c\xb6\xec\xf1\xc1\xa5\x50\x4a\x2c\xf4\xc7\x12\x04\x46\xde\x09\x67\xca\x06\xb9\x10\xb2\xa8\x35\x31\x99\xde\xea\x2a\x32\x81\x95\x58\x66\xb4\xc1\x89\xd9\x79\x09\x42\x11\x31\xd5\xf2\x5f\x2c\x16\x54\x90\x72\x92\x4f\x07\x9f\x3e\xd1\xaa\x12\x0a\x2c\xe7\x0e\x8a\x6e\xd7\xd2\x5b\x05\x6a\x56\xde\xfe\x7e\x9f\xab\xb4\xdd\x53\x86\xb7\x54\x0d\x1c\x0f\xfe\x85\xa4\x57\x86\x99\x6e\x9d\xfb\xb3\x1d\x5e\xfd\xd9\x44\x4c\x0f\x62\xfd\x8b\x5a\xd3\x8d\x0d\x04\x79\xc4\xfa\x88\x5e\x41\x54\x0e\x1b\xd6\x13\x56\xfa\x0b\xe5\x8a\x57\x57\x2f\x84\x24\xc3\x28\x90\x73\x2b\x90\x85\xf8\xcc\x03\xbd\x78\x07\xb2\x05\x15\xb0\x86\xd3\xb0\x6a\x5e\x53\xb5\x19\x84\xd3\x99\x55\x47\x81\xa8\xec\xb7\x49\x35\x75\xfe\x65\x0f\x36\xf2\x85\xdd\xa0\x60\xe7\x05\x5e\xa0\xcc\x10\xef\x3c\xc4\x71\x4d\xa8\xbb\x5c\xe9\x5d\xc7\xa5\xb9\x77\xfa\x49\x4f\x62\xae\x8f\x1d\x4d\x1f\xdf\xa1\x04\x13\xb7\x82\xd0\x77\x54\xbd\x58\xe9\xf3\xb8\x64\x09\xc8\x2c\xc1\x69\xa0\xa8\xd2\xda\xed\xde\x6b\x26\x37\x1c\x4b\x1b\xcd\x90\xda\x38\x51\x0e\x98\x83\xa1\xa9\x4f\xcd\xae\x99\xe4\xea\xe6\xc0\xe8\xa6\x27\xcc\x5c\xe8\xd6\x1f\xe5\xdd\xf7\x9b\x97\x40\xde\xd5\x77\x56\xd7\xf4\x8a\xf5\xc1\x58\xee\xbb\xb4\x82\xd8\xc0\x96\x41\x91\xfc\xb2\x0c\x9d\x91\xb6\xd0\xe3\xce\x21\x5c\x11\xe9\x7e\xaf\xd7\x12\xdb\x9d\xfe\xd8\xef\xa6\x5a\x6f\x8b\x2b\x7d\x4f\x96\x4b\xf0\x08\xfb\x93\xa8\x35\x5a\x88\x70\xa2\xeb\x49\xd0\x81\x5e\x36\x39\xa0\xf5\x4d\x95\xaf\xd7\xdc\xfc\x18\x87\xb7\x7e\xc0\xe8\x0a\x7a\x80\x05\x78\x55\x68\x61\x3e\xbe\x9f\x04\xe9\x8f\x30\xc8\x8b\x53\x1f\xe7\x98\xa2\x46\xe9\xb5\x0b\x3e\x60\x99\x42\xf7\xc0\x96\x35\x8d\x9c\x0f\xe8\x66\xb7\x2a\xc0\x61\x8b\xc6\x02\xa5\xea\x76\x65\xe8\x62\x90\x81\x3b\xc9\x0a\xe1\x15\xa0\x2c\xfa\xd0\xaf\xf4\x1e\x85\x8d\x5b\xa1\x4c\x7f\xe6\x71\xab\x3a\x3d\xb4\x92\x5b\x41\xd4\xf3\x5b\xe1\xd8\x63\xd6\xaa\x0f\x4e\xc0\x60\x06\x56\xa4\xf4\xeb\x90\x93\xdd\x42\x56\xf0\x4b\xbc\x65\x0c\xe2\x59\xdb\xce\x9b\xa3\x33\x94\x3e\x4f\xd5\x84\x4f\xc1\xe6\x81\x87\x96\xa5\x55\xe0\x2d\x38\x95\x9a\x08\x1e\x9e\x17\x8f\xf2\xb6\xce\xc2\xd4\x39\x07\x3b\x7c\x7d\x5f\xcc\x43\x52\x17\xae\xa7\x25\x29\xc3\x23\xe7\xdb\xc7\xe3\x82\x0c\xcf\x17\x8f\xe6\x6d\x23\x0b\x47\xba\xce\x27\x8b\x29\xbe\x22\xd7\xed\x3e\xba\x5a\xaf\xd3\x2b\xbf\x8f\x30\x27\x57\x78\xe6\x5e\x09\x49\x2b\x32\x43\xe3\x2a\xe3\x78\x35\x98\x09\xb9\xa0\x01\x84\x6a\x6a\x83\x6c\x7f\x4e\xaf\x11\xc2\x51\x87\x97\x1b\xc7\xb1\xce\x70\x0d\x7c\xf3\xd2\x1d\x7b\xd6\xab\x97\xf3\xb2\x9d\x5e\x1b\x0e\xae\xce\x85\x6f\xfd\x76\xcd\x76\x1e\x35\xfd\xa4\x77\x85\xc3\x8b\x28\xbb\x6e\x10\x6a\xca\xf8\x98\xae\x99\x32\x2f\xaf\xe1\x74\x4a\x0b\xac\x30\x4d\x97\x78\x86\xe7\xde\xf9\x0b\xf6\x60\x31\xb0\xd8\x64\x8d\x50\xd3\xac\x06\xa2\x32\xfe\xc4\x5f\xf1\x4a\x83\xb0\xbe\xe7\x36\x3e\xa5\x12\xe7\x38\xc4\xc6\xf3\xe8\xd4\x6a\x6f\x0f\xd5\xed\xa6\xb1\x09\x9b\xc3\x45\x34\x32\xe7\xd0\x92\x3d\x48\x5c\xa9\x11\x7e\x9d\xcf\x75\xb3\x30\xee\x73\xee\x6b\xac\xae\x01\xab\x73\x5e\x59\x07\x78\xa9\x39\x27\xf0\xe1\x28\xde\x9c\xd8\xf0\x54\x29\x38\xb7\x67\x83\x97\x15\xd7\x5d\x12\x1a\x38\x21\x5a\x90\xdc\x71\x5a\xc1\xcb\xdb\xea\x29\x6c\xe7\x6e\x57\xc6\xbb\x3b\x07\xbc\x79\x36\x4b\xe1\x08\x03\x17\x7d\x4c\x7a\xc9\x77\x74\xde\xc7\x95\xb7\x08\x16\xc2\xd1\x9c\x44\xd9\xfc\xf4\x58\x27\x15\x61\x22\x0a\x7d\x49\xd4\xe6\x0c\x75\xc3\x37\x41\x06\xea\x44\x63\x32\x87\x23\xbb\xf3\xea\x70\xe7\xd5\x93\x62\x6a\x4c\xd8\x57\xe0\x2f\xc2\x6c\xc4\xb0\x7e\xb0\x9b\xe2\xa9\xc4\xe9\x8c\x54\x28\x38\xac\x5e\xd8\x19\x1d\xdf\xc6\xa7\x76\x36\x6b\xb2\x74\xd6\xed\x1e\x0e\x0f\x09\x99\xad\xd7\xe9\x0c\xec\xa7\x66\x08\xaf\x6c\x34\xa6\xf9\xfe\x49\xad\xa2\x39\x1d\x1e\x06\x79\x1d\x3c\xda\x5b\xf4\xdb\x33\x3d\x8f\xa7\xb7\x4c\xa5\x41\xf7\x67\xe0\xc8\xda\x42\x0a\x04\x98\xa9\x61\xb6\x96\x4c\xea\x9d\xfc\x0a\x60\x26\xdd\xb4\xde\x6d\x67\xa4\xdb\x35\x81\x56\x91\x8d\x76\xf0\x5f\x90\x52\xd7\x24\xf6\x15\xaf\x15\x93\xf6\xf2\xb5\x3b\x29\xf9\xb5\x16\xd5\xce\x30\x0a\x93\xe9\x81\x4e\x03\x70\x5d\x52\x59\x33\x70\x1f\x19\x92\xe0\x6d\x70\x87\x41\x29\xf2\x03\x19\xba\x7b\x31\x77\x3b\x37\x4a\x5d\x9f\x40\xa9\x6a\x84\xdd\x6b\x0e\x16\x9f\xe0\xae\xcc\xe5\x2b\x69\x98\x0d\xde\x5c\x2e\x8b\x8a\x64\xaa\x41\x0d\xa8\xce\xc6\xdd\xd2\x34\xa0\xd1\x58\xa9\xbc\xc2\x4a\x47\xfe\xff\x70\x25\x6f\xe8\xa2\xdc\xb7\x92\x66\xda\x74\x8e\x41\x29\x68\xd1\xce\x19\x77\xd7\xbf\x89\x04\xb0\x6b\x11\x2b\xeb\x35\x65\xb0\xb5\x6c\x5b\x29\x6e\xa9\xb8\xc3\x1f\x1b\xf4\x3f\x79\x45\x70\x92\xff\x5a\x27\xbf\xd5\xba\x44\x93\x09\x1a\x65\x74\x51\x40\x60\xad\x68\xbd\x70\xb2\x2c\x29\xaf\x92\x78\xdd\x30\x44\xf4\x5e\x88\x82\xfd\xfc\xee\x15\x68\xb9\xda\xdf\x44\x37\xa7\x7f\x1f\xfd\xf0\xe6\xe8\x87\x37\x03\xdd\x61\x8b\xec\xdf\x06\xfa\x26\x11\x97\xcb\x14\xae\xc1\xcb\x34\xd3\x88\x07\xab\x72\xce\x40\x4e\xdd\x0a\xde\x35\xd5\xd5\x92\xd9\x93\xa9\xa5\x29\xab\x50\x8f\xdf\x56\xb4\x65\xdb\x3a\x11\x53\xa4\x51\x6e\x83\xe1\x81\x7a\x3f\x08\xdc\x1d\xb7\x36\x68\xc2\x90\x6c\x3b\x39\x06\x3b\xac\x59\x87\x84\xf4\xfb\x1a\x5d\x49\x51\xd3\xa4\x12\xf3\xc8\xcc\xdc\x85\xb4\x8b\x7a\x68\xd7\xf8\xb5\x26\x45\x40\x90\x4f\x35\x22\x10\x7c\x6d\x1b\x77\x9e\x84\x9d\x01\xc4\xa1\x5b\x6d\x6e\x03\x04\x56\x74\xc1\x9c\xc3\xf6\xad\x51\x07\xe1\xb8\x53\x17\x6d\x4e\xee\xcf\x04\xbe\x39\xac\x02\xa0\x9d\x05\xbf\xa8\x2e\xfc\x5f\xaa\x17\xf5\x0a\x1b\x3b\x72\x0b\x17\xa0\xa2\x61\x6e\xf3\x7d\xd4\x5c\x9d\x4b\xbe\xd4\x14\x50\x3d\xa8\x65\x4e\xe8\x81\x71\xb4\xe4\xb3\x47\xca\xc4\x1f\xe8\x95\x51\x25\x76\xa5\x26\xc3\x29\x5e\x11\x09\x68\xba\x98\x1e\x38\xa2\x54\x6f\xf5\xf8\xe2\xd3\xc3\xdc\x2f\xd0\x5f\xb5\xcb\xc0\xd0\x6a\xc2\xa6\xa9\xbb\x11\xcb\x90\x59\x6b\x7c\x58\x3f\x61\x33\x21\x59\x5a\xe3\xd2\x08\x43\x60\xe3\x11\xa2\xc6\x7e\x8b\x52\x84\x45\xaa\xcf\x48\xbd\x69\x00\x27\xb1\x29\xbf\xd6\xe9\x84\x4e\xb1\x00\xd7\x0e\x74\xa5\xc4\x2b\x41\x8b\x78\x5d\x4d\xbc\x91\xdd\xab\x26\xd1\x7a\x1d\x03\x89\x8c\x6f\x77\x8d\x18\x3b\x8c\x49\xd7\x90\x60\x15\x22\x51\xf0\x09\xc6\xd5\xfc\x17\xbd\x23\x5a\x3d\x34\x6f\xca\xb1\x6d\xeb\xae\xd0\xb6\x6f\xe8\x9f\x2b\xd3\x8d\xa2\x03\xd8\x51\x27\xe9\x29\xe3\x10\xba\xe6\x8b\x65\xc9\x3a\x66\xea\x9a\x90\xaf\xef\xeb\xb7\xbb\xe4\x28\x1d\x67\xe8\xc8\x9e\x67\x49\xe2\xcd\x2a\x42\xb2\xd8\xd8\x51\x8c\x53\x36\xe0\xe0\x04\xe5\x29\xad\x0d\xa5\x9c\xf0\x04\x61\xa6\xa9\x0b\xb0\xbf\x46\x19\x6b\x95\x49\x70\x60\x81\x91\x82\x91\xbe\x1a\x27\x49\x96\xfc\x2d\x41\x60\x85\x01\xd6\x18\x28\xc1\x32\x92\x1f\x30\x8d\xa6\xa4\x6c\x50\xb1\xaf\xe0\x57\x4a\x6f\x5f\xd4\xed\x2a\x08\xe9\x18\x7d\xc4\x36\x8a\xe7\x15\xfb\x4a\x24\x38\x2d\xba\x62\x5f\x91\x53\xe4\xf8\xcc\x62\xb7\x5b\xdb\x7e\x03\x83\x53\xa8\x05\x9f\x56\xc2\xe0\xcf\x87\x8f\x83\xa3\x2b\x1c\xf9\x75\xdf\x45\x99\xcb\x5e\x0f\x05\x7e\x03\xbb\x5d\xd0\xe1\xda\xae\x24\xd0\xa0\x02\x13\xf8\xcf\xac\xb2\x7d\x2e\xa8\xa2\x84\x6d\xb0\x92\xb7\x1d\xee\x38\xfd\xad\x6a\xb0\x34\x81\x19\x5b\xac\xce\x7e\x70\x5e\x2d\x5d\x4b\x43\x12\xa4\x39\x8e\x68\x5b\xde\xc6\x03\x94\x83\xa5\xa8\x7b\x71\xb8\x17\xcc\x4d\x0f\x1b\xe3\xfb\x5d\xe4\xb4\x74\x7e\xe0\xf5\xef\x01\xab\x0a\x4d\x34\x18\x09\x60\xf0\x11\x39\x01\x50\xf0\xed\x83\xae\xc8\x44\xef\xf1\x4e\xc0\x4c\xaa\xcb\xf5\x5e\x83\xb0\x61\x37\x08\x23\x16\x38\x68\x6b\xd0\x90\x6c\x3a\xa3\x67\x20\x28\x80\x36\x6a\xd3\x6d\xbd\xcf\x69\xd5\xed\xa6\x35\xd9\xf8\x66\xed\x6a\x06\xf9\x4a\x4a\x20\x57\x40\x5e\x09\x23\x37\x24\x97\x54\xbd\xda\xda\xcc\x60\xd1\xb4\xce\x13\xd9\xa4\x32\xf4\x87\x3e\xb7\x87\xe7\xab\x96\x1b\xbd\x72\x7c\xdf\x9c\x94\x93\xd5\x14\x17\x24\x3d\xcc\x61\x2d\x07\xb5\x28\xd7\x6b\xa9\xff\xa4\x08\xb5\xf3\x94\x5b\x48\xd5\x00\x58\xc0\x74\xda\xfc\x1a\xba\xc7\xb6\x1d\x12\x7c\xcb\xec\x6f\x0d\x5c\xe3\x14\xa4\x3c\x34\xff\xbc\x5e\xbb\x5f\x21\xab\xc7\x94\x46\x78\xa3\x1a\xd8\x30\xbe\x1e\xb1\xec\x76\x6d\x59\xff\x23\x04\x0c\x53\xd4\x25\x80\x93\x59\x84\x6d\xe1\x05\xc8\x83\x28\xc8\xf9\x82\x4f\x38\x77\xb0\x6c\x3f\xea\x49\xd4\x94\x5a\x65\x7f\x59\x27\x67\xf6\xcd\xba\xb9\xeb\x29\xfb\xfe\x73\xc5\x95\x2f\x5a\xb0\xcd\xa2\xe0\xe6\xd6\x31\xa6\x2f\x8e\xc1\x07\xbb\x05\x5e\xab\x34\x60\xc8\xe6\xe3\xf3\xf9\x23\xcf\xe7\x9e\xf7\x7a\xa8\x98\xcc\xa7\xba\x22\x07\xfd\x06\x59\x06\x67\x96\x3a\x09\x43\x9f\x33\xdb\xf7\x09\xb8\x6d\x09\x78\xb4\x97\x34\xff\xfc\xf3\x32\x2d\x5a\x41\x75\x3f\x2d\x26\xa3\xe9\x58\x3f\xec\x97\x6c\x08\x73\x63\x2a\x18\x4e\x1d\xfa\x6c\xbf\x74\xbb\xf6\x07\x04\x3e\x1e\xb7\xf9\x5c\x9b\xad\xa2\x26\x2c\x75\x6a\x84\x7b\x4d\x13\x6b\xae\x19\x29\x17\x69\xfd\xbf\x18\x8f\x94\x87\x6c\xbd\x76\xf7\x9c\x47\xa4\xd8\x7a\x7d\xa8\x76\x7c\xdf\xb0\x25\x91\x81\x66\x4f\xb5\xdf\xe7\x45\x85\xcc\xd1\xb9\xd3\xb9\xca\xa1\x30\x4e\x64\x54\x1c\x22\x52\xf6\x7a\x4d\xec\xc3\x05\xed\x28\xde\xed\xca\x7e\x3f\x38\xa2\x64\x2c\x6e\xa8\x30\xc7\x2e\x8a\x84\xd1\xa2\x5d\x32\x59\x83\xdb\xb9\xd6\xee\xb5\x84\x83\xcd\x7d\x86\xe3\xa0\x3e\x2f\xbb\xdd\xc3\xfa\xbc\x24\x25\xcc\x28\x4a\xf9\xa0\x5e\xb2\x7c\x2c\xec\x0f\x5c\xc2\x1f\xa4\x89\x1e\x8d\xc2\x10\x73\xb6\x20\x38\x2f\x4a\x83\x27\xae\x48\x3d\x36\xf1\x1c\x6c\x2e\x7d\xe9\xd8\x38\x28\xa9\xc2\xa6\x22\x84\x73\xc8\x06\xbb\x25\x63\xe6\xf8\x80\x3e\xa4\x2b\x74\x10\xf6\x57\x77\xc8\x9e\xb8\x71\x5f\xc9\x2d\xb4\xb1\xc2\xba\xbe\xcc\xf6\xcf\xd4\x97\x63\xd8\xfa\xdb\x65\x4c\xc8\xa0\xf6\xbc\xcc\xdd\xab\xaf\x8c\x55\x45\xc6\xed\xd9\x9c\xc2\x0f\x84\xed\x01\xe8\xbe\x03\x17\x88\x9b\x30\x85\xcf\x83\x8c\xe0\x83\xcf\x1d\xd6\x19\xed\x76\xa9\x01\x5c\x3a\xa1\xad\x67\xa3\x8c\x36\xa1\x64\x64\x67\x38\xc9\x28\x66\x88\xee\x1d\x38\x25\x6c\x4f\x72\xb3\xb3\xd1\xc6\xd1\x1d\x24\xa5\xe1\x20\x7d\x68\x69\x23\x86\x76\x07\xc3\x7a\x6d\x33\xe9\x63\xb6\x10\x95\x7a\x09\x9f\xcd\x3c\xed\x17\xfa\x6d\x59\xf0\xf1\x59\xaa\xc0\xbd\x52\x68\xdc\xea\xce\x41\xbc\x5d\x35\xba\xe8\x8f\x5a\x44\xe1\x27\x5a\xd7\x96\xba\xf0\x27\x96\x8f\x43\x59\x13\xe5\xaf\x8e\x03\x96\x81\x92\xef\x79\xdb\x19\xe3\x96\xd7\x33\x04\x4b\x77\x99\xac\x48\x6d\x9d\xf2\xae\xe2\x33\x11\x16\x2e\xfa\xf6\x72\xf6\x8a\x57\xc6\x68\xd8\x5d\x44\x2b\x73\xc3\x98\xdb\xce\x50\x36\x79\xb7\x9b\x4f\x86\x53\x74\x4b\xfb\x7d\x9c\xae\x2c\x26\xb5\x72\xe8\x55\xaa\xfb\x19\x7f\x9d\x22\xcc\x7d\x60\xd2\x3c\xb4\x35\x0d\x22\x2e\x34\x8d\x11\x9d\x3b\x69\xdf\xa3\xe1\x78\x98\xb9\x59\x98\xd0\x69\xe3\x19\xc2\xef\x01\x21\xdd\x49\x34\x98\x0c\x76\x6f\x45\x24\x7c\x6b\x54\xe5\x4b\xa7\x36\x6a\xa6\x26\x45\xea\x1d\x75\x4a\x0d\x76\x2a\x15\x38\x81\xfd\x98\x38\xc2\xef\xb6\xc1\x25\x11\x83\x05\x53\x74\xbd\xbe\x6d\x80\x1f\xeb\x0f\xc0\x5c\x9f\x52\x42\xc3\x41\x7e\x48\xca\x6e\x57\x6c\x1e\x57\x39\x6a\x3d\x1e\x13\x3a\xc9\xa7\x1a\x03\x9c\x13\x31\xc9\xa7\x78\x46\x86\xe7\xb3\x56\xd2\x31\x73\x6b\xb8\x24\xf3\xc9\x6c\x7a\x50\xb4\x9a\x48\x55\xba\xc4\x02\x21\x9c\x2e\x3d\x00\x2f\xed\x2a\x22\xc7\x00\x06\xc4\x67\x41\x6e\xdb\xd3\x64\x47\xd8\x64\x73\x44\xd8\x11\x62\x7b\xb9\x81\x57\x6a\x0c\xfb\x21\xf8\x69\xaa\x30\xbe\x19\xa1\xcd\x6c\x35\x9e\x4c\x33\x73\xcb\x40\x5c\xbb\x8d\x46\xda\x68\x05\xa6\x15\x2b\xb7\xf3\xad\x28\x77\x99\xda\xa6\x94\xd9\x82\xfb\x5a\x53\x1e\x13\x70\xbf\x7c\xcc\xe4\xe6\x40\x05\x7b\x1c\x10\xb1\xe0\x5c\x63\x03\xdf\xb9\x54\x05\xe7\x03\x0e\x0b\x21\xa3\x7d\x02\x88\x8c\xe1\xd8\xe7\x9f\x89\xfd\xe2\xdb\x09\x05\xe2\x6a\xfb\xbe\x30\x81\x58\xe0\xae\x90\xfb\x4e\xe8\xca\x34\x0d\xc7\x74\x15\x1e\xd3\x0e\x59\x22\x61\xaf\xc6\xe1\x40\xb2\x70\x20\xb6\x9e\x16\x4d\xd3\x67\xfc\x76\xab\x4d\xeb\x94\xcd\xa2\x28\x3c\xa5\xe0\xd2\xa0\xaa\x98\x8c\xa3\x71\x45\x76\x4b\xe6\xa4\x35\x7d\x66\xe1\xa4\xb9\x4b\xaa\xed\x57\xd3\xb8\x25\xaa\x53\x8a\x4b\xd4\xe8\x63\xa2\xf4\x60\x7e\xad\xb7\x44\x89\xca\xcd\x9d\x00\x4a\xa5\x8b\xc9\xf5\x94\x94\x93\xeb\xd6\x1a\x7b\xf1\x5f\x95\x34\x67\x03\xa7\x43\xf0\x95\x57\x57\x1b\xe7\x97\xdb\x2a\xdf\xeb\x3b\x2e\xa2\x73\x5b\x53\x9c\x1d\xde\x40\xb6\xec\x68\xc1\x6f\xae\xbb\x2e\xbb\x5d\x7e\xd1\x1f\x8d\x79\xcf\xdd\x34\x99\xf1\xea\x2b\x88\xb2\x24\xce\xd8\x59\xd5\x4a\x94\xb5\x24\x92\x18\xbb\x10\xd4\xb2\x97\x56\xe3\x20\x0e\x75\x36\x44\x59\x7f\xd4\xb4\xe7\xcb\xfe\xc3\x47\xac\x14\x93\x31\xbe\xa3\x2c\x64\x82\x83\x52\xbf\xff\x2b\x26\xef\x38\x67\xe4\x56\x85\xc1\x7e\xc7\x72\x00\x5f\xe3\x7a\x35\xf5\xe0\xdf\x6c\x03\xd1\x37\xd0\x85\xf1\xb5\x44\x49\x66\x1b\xd8\x4f\xa8\x71\xfb\x6a\x8b\x31\x29\xc2\x42\x6d\x60\x9c\xe0\xe3\xc1\x4a\x5f\x8b\xb0\x62\x80\x84\xd3\x41\x5e\x8a\x9a\x75\xbb\xdc\x92\x7a\x6e\xb2\xc3\x42\xae\x8a\x40\xd9\xcb\x10\xb3\x0e\xb3\x49\x0b\x62\x2b\x1a\x57\xe9\x0a\xdb\xdf\x98\x6b\xda\x14\x53\x23\x3a\x79\xc6\x4a\xbe\xe0\x8a\xc9\x5a\x2f\x16\xd2\x18\xdc\x52\xd4\xdd\xee\xe1\x76\xba\xf7\x89\x62\x68\x4e\x5b\x1d\xc2\x77\x74\x4a\x23\x14\x25\x5f\xbc\x57\x37\xa5\xa6\xf0\x82\xb7\x5e\xd2\x49\x7a\xf1\x87\x3e\xd4\x97\x1c\x14\xc6\x93\xbf\x9b\x10\xb2\xf2\x76\xd8\x85\x55\x81\xae\x09\x0d\x89\x77\xee\xba\xe0\x81\x72\xab\x0a\x84\x0b\x3f\xb4\xad\x91\x41\xb8\xf1\x7d\x63\x40\x98\x9a\x37\x3b\x88\xb4\xd6\x18\xba\xed\x7e\x9b\x90\x85\x2f\x08\xd7\x01\xa1\x3f\x3a\x1a\xe2\x76\x7d\xad\xea\x99\xdc\x56\x3d\xc3\x73\x22\x27\xf9\xd4\xae\x9c\x5e\xb1\xf9\x40\x2c\x59\x65\x16\x0c\xb9\xb5\x71\xeb\x30\xdf\x1c\x86\x09\xe5\xac\x97\xc6\x94\xdb\x5c\x99\xb9\x7b\x27\xd1\x46\x9b\xbb\x2b\xd0\x1c\xdd\x63\xf7\x23\x15\x66\xbf\xe0\x24\x41\xd9\x10\xe1\x79\xb4\x96\xf3\xcd\xb5\x8c\x3f\xf4\x75\x07\x12\x30\xa8\x2f\xba\xdd\xe2\x51\xd9\xed\xa6\x25\x29\x50\x53\x1e\xea\xf9\xd8\xbd\xbc\xa5\x5d\xde\x19\x38\xe7\x77\x2b\x6b\x36\xad\x5b\xd9\x1d\xe5\x11\x9e\xf9\x7b\x27\x66\x69\x39\x5d\xc3\x60\x16\xc6\xdb\x3b\x38\x53\xad\xbb\x1f\x3b\x07\xee\x47\xba\xb3\x6c\x66\x4f\x12\x5c\xa1\xcc\xe0\xea\x0d\xbe\x2c\x69\xf5\x59\x63\xcd\x6d\x17\x02\xd9\x68\x58\x49\xb5\xab\x03\x40\x8d\xfa\x3a\xf4\xbe\xf7\x2f\xe9\xce\xe2\x59\xe5\x4e\xb3\x28\x19\x25\x1f\xf5\x3d\x16\x37\xe9\x0e\x93\xb8\x26\x97\xc7\x40\x79\xec\x3f\x7d\x87\x0b\x6f\x7b\x6c\xc9\x89\x98\x1e\xd8\x46\x28\x80\xd9\x56\xbd\xd4\x75\x29\x86\x33\xcb\xd4\xd9\x9e\xe3\x2a\x82\x33\x7d\x8e\x82\x53\x02\xc9\xf3\xa7\x73\x2a\xeb\x4c\x0d\xa2\xf7\x6f\x21\x2c\x90\x3c\xbe\x75\xd8\x09\xbc\x62\x8b\xbd\x6c\xce\x7c\x93\xf9\x7c\xa6\x0f\x66\x39\x1a\xfd\xef\xb7\xc4\x3d\x2e\xc5\x17\x26\x3f\xe5\x62\xb1\x14\x95\xbe\xb8\x03\xdc\x61\x5b\x7c\xf9\x5d\xa5\x68\x51\x88\xca\x48\x10\x0d\xc9\xf2\x2f\xa0\x32\xff\x44\xaf\xf0\x3f\xd9\x99\x7f\x16\x21\x0a\xe8\xb5\x64\xae\x16\xa5\x71\x76\x7e\x49\x65\x9d\xec\x21\xdf\x36\x51\xa8\x34\xe4\xa6\x24\x8a\x7d\x55\x47\xba\xa2\x04\xe1\x5b\x0d\xa5\x59\x72\x7b\x9b\x60\xd8\x08\x59\xd2\x34\x89\x83\x88\xa0\x4c\xd0\x26\xc2\x1b\x67\x6b\x76\x38\x6c\x50\xa8\x62\xf2\xfa\xe5\xeb\xe7\xa9\x69\xe6\x6b\xbf\x2d\xd9\x57\x6c\xb1\x2c\xa9\x62\x09\xde\x1c\xc7\x6f\x2e\xfa\xde\x0f\x38\x83\x81\x5d\x12\x63\x13\x6f\xff\x18\x87\xef\x3b\xf3\xb1\x82\xab\x23\xb8\x3b\x2e\x25\xcd\x3f\x33\x55\xff\x6b\x98\xf1\x16\xd4\xdc\xd9\x13\x7c\x67\x07\xfe\x15\x33\x14\x36\xf8\xcc\x6e\x5e\xd3\xe5\xa0\x5e\x5d\x96\x7c\xc1\xc8\xed\x8c\x96\xa5\x9a\x4b\xb1\xba\x9a\x67\x89\x75\xd6\x9f\x34\x18\x9c\x51\x89\xc5\x82\x56\x45\x0d\x1e\x67\x7e\x12\x35\xe6\x6d\x79\x9b\x93\xb4\x5f\x16\x34\xb7\x31\x00\xc0\x09\x42\xf2\x74\x51\xf4\x13\xe3\x1b\xa4\x9f\x1c\xc4\x6a\xcd\xe8\xd6\x85\x47\xf7\xce\x5d\xea\x27\x37\x71\x24\x7c\x27\xb2\x19\x58\xc7\x43\x46\xc2\xb2\x5e\xab\x41\x21\x72\x5b\x5a\xdf\xe8\x6c\xb1\x54\x37\x29\x8a\x35\x60\x39\xe0\x95\xfc\xd1\x10\x82\xab\x41\xbc\x52\x5f\x9f\x0b\xb5\x5d\x59\xcf\x06\xfd\x11\x72\x6e\x71\x40\x04\x0a\x77\x8a\x75\xb5\x00\xf7\xce\xc5\xb0\xdb\xd5\x55\x5c\x10\xb1\x21\xe9\xdf\xae\xac\x37\x8a\x42\x3d\x50\x5c\x13\xc7\x32\x28\xa1\x1f\x1a\xd3\x01\x8e\x8d\xab\x0b\xf0\x9d\xf2\x90\xac\xce\xcb\x1e\xe1\x38\x77\xac\x8c\xc2\x44\x10\x02\x5b\xf4\x47\xc3\x71\xd9\x1f\x65\x25\xc2\x73\x92\x7c\x32\x76\x96\x2c\xf0\x00\x9d\x16\x08\xec\x4f\x13\x91\x80\x88\xed\x8b\xb1\x51\x2c\x62\x77\xcf\x60\xce\x99\xce\x49\xf2\xe7\x04\x39\x56\x0d\x21\x35\x4a\x44\x72\xa8\xb3\xa7\x35\x49\x78\x95\x60\x4a\x82\x00\x43\x09\xc8\xe6\x6b\xd0\x1a\x9c\x1b\xca\x49\xd7\x4e\xbb\xdd\xe4\xcf\xa6\x15\x98\xe5\xb2\xdf\xc7\xf0\x41\x27\xd8\xe6\xf9\xc5\x10\xdd\x52\x92\x7c\x49\x3c\xfb\xca\xb2\xae\xbc\x61\x8f\x73\x2e\x51\xa2\x26\x85\x85\xc5\xdc\xc4\x5b\x92\x28\x93\x8f\x86\x63\xe3\x6e\x21\x45\x19\x1f\x28\x61\x24\xed\x72\xa2\x26\xc9\xe3\x52\xf5\xc1\xc1\xc9\x94\x24\x57\xe2\xfd\xea\xf2\x8b\x90\x85\xfd\x10\x6e\x01\x9a\x32\xdc\x1f\xa1\x06\xfb\x52\xc6\x13\x4a\x58\xcc\x7d\xd9\x2c\xa7\x8b\xf1\x6e\x37\x55\x13\x80\xe5\xb6\x39\xcf\xfb\x7b\xbf\x68\xb9\x5d\x35\xc0\xbc\x06\x76\xdd\xca\x0e\xc0\x2f\x53\x17\xeb\x45\x0d\x78\xfd\x8e\xd1\xe2\x6d\x55\xde\xb4\xa4\x8b\x65\x6a\x2a\x8d\x33\x98\x98\x77\xe9\x6e\x2d\x04\x35\x28\x79\xdd\x7a\x45\xaa\x53\xe4\x25\x87\x46\x9f\xa5\x3f\xc2\x26\x46\x34\x3b\xa7\x0e\x9a\xea\x1d\xc5\x26\xd4\x04\xb7\x32\x9e\x17\x4c\xa0\xe5\x47\x44\x20\x17\xc1\xaa\xb2\xdf\x7a\xa9\x1c\x0f\xb3\x11\xc2\x43\x74\xa0\x9c\x78\xd5\x38\x42\x02\x4f\x53\xa5\xf5\x10\xd6\x33\x4a\x0f\x7a\x7a\x12\xe4\xf1\x65\xd8\x4e\xa5\xd5\x82\xb2\x31\xa4\xb1\x0b\x9b\xa6\x9b\xcf\x4a\x6c\xe2\x6f\x65\x65\x83\xb0\x20\xb6\xd1\x51\xd3\x80\x92\x42\xd0\x63\x0e\x57\x84\x21\xb7\x9f\x9a\xc3\x49\xc3\xa7\x6e\xe5\xf1\x4a\x89\x24\xd2\x08\x8f\xdc\xda\x9b\x78\xcb\xfa\x60\x02\xc7\x27\x1b\xbb\xfc\x9c\x6f\x6c\x27\x1a\xba\xc3\x42\xe7\xa8\xdf\xe7\xb0\xa5\xcf\x85\x0f\xe7\xb6\xaf\x84\xd0\xf9\x7b\x3d\x61\x51\x66\xa3\x24\xe6\xe1\x9c\x83\x66\x98\x7f\x15\x08\x6b\x08\xcc\xa8\x45\xf1\x35\x61\xda\x00\x84\xd7\xbd\xe4\xe7\xa5\x06\x37\x13\x64\x43\xf7\x16\xde\x43\x20\x75\x47\xfa\x15\x53\xef\x21\xd7\xcb\x6a\x26\xac\x5b\x33\x36\xa8\xc5\x82\xa9\x39\xaf\xae\xcc\x04\xb2\x22\x45\xad\x59\x8b\x6e\xfd\xb1\xb5\xc5\x4b\x15\x58\x0e\x39\xe3\x3b\xf3\x11\x27\xc0\xb5\x82\x08\xdd\x57\x4c\x3d\x85\x0b\x49\x43\x1a\xaf\xd8\x05\x01\xcd\xea\x68\x15\xcc\xae\xf8\x79\x99\xa0\x86\x0d\x4c\x9f\x3f\x08\xeb\x96\x5f\x57\xdf\xf7\xa1\xb1\x3e\xb0\xaf\xae\x61\x64\x37\x66\xdd\x33\xae\x8b\xa2\xe1\xda\x2f\xff\x69\x03\xf6\x23\xec\x8d\x76\x8c\xf1\xd1\xde\x31\x42\xbf\xf6\x8c\xb2\x77\xd7\x28\x8d\xc7\xac\x7e\xd2\x13\xbd\xe4\x15\x8c\x75\x59\xf2\x16\xbc\x9f\xdc\xc0\xc6\x99\xee\xb1\x4b\x60\x5b\xdb\xd7\x78\x83\x33\xe1\x91\xbc\x68\x85\xf7\x7a\x81\x87\x5a\x35\xe1\x53\x7b\x82\x6a\xb8\xd7\x6f\xfa\x18\xc5\x35\x31\xa1\xdd\xce\xeb\x47\x84\x9a\x5f\xbd\x5e\x8d\xcc\xcf\x0b\x61\x1d\x02\x81\x47\x17\xf3\x13\x7c\xaf\xe4\xf3\xf5\xda\xe9\x3e\xda\x1d\x5b\x13\x5b\xd3\x58\x43\x75\x8d\x35\x19\xac\xb7\xb4\x2f\x3a\xa6\xfa\x3b\x6a\x34\x1c\xc5\x9b\x59\xe2\x21\x6a\xb0\x9f\x96\x0f\xf4\x52\xcf\x89\x3d\x33\x58\x5d\x27\x7a\xd2\x06\xcf\xeb\x9c\x24\x35\xaf\xae\x4a\xe6\xcb\x7e\x10\xfb\x76\xc2\xd6\x09\x37\x9c\x6e\xb4\x9b\x2a\x1f\xec\xcf\x5c\x34\x41\x14\x1b\xbb\x4e\x7e\x79\xa0\xcc\x6f\xb5\x28\xb7\xed\x8a\x1c\x6c\x4c\x62\x95\x0a\xbb\x48\xe6\x54\x70\x93\xa8\xbf\xeb\xe5\x6a\x11\x8b\x06\xe0\x2e\x9e\xc6\x70\x12\xe1\xce\xf9\x83\xee\xbc\xd1\x99\x87\xce\xbb\x41\x19\xdf\x6d\x30\xc7\xee\x98\x7e\x3c\x33\x9f\x76\xd0\x89\x65\xca\xf0\xe1\x68\x07\xe8\xee\xa8\xc6\xa8\xb9\xdd\x51\xcf\xb0\x9d\xda\x67\xed\xd4\xbe\x61\x5f\xd5\xdb\xdc\xe8\x85\xe4\x51\xf1\xc0\x84\xaa\xdd\x98\x89\x9e\x23\x30\x55\x89\xbe\xea\x73\x1f\x0b\x6f\xea\x64\x11\xdb\x17\xbc\x2a\x5e\xac\xca\x52\x1f\xd0\x84\x18\x9c\xb1\x66\xa0\x80\x04\x11\xf9\xf2\x05\xa0\x6d\x1a\x53\x74\x94\xbb\xb9\x32\x2c\x7b\x51\x1f\xcb\xce\x2a\x33\xbe\x86\x52\xeb\x65\x08\x9c\x1d\x61\x41\x0e\x87\xad\x9f\x83\xda\x74\xcd\xdc\x8d\xba\x6e\x5c\x12\x31\x0e\xbd\xe2\x7e\xfc\x78\x99\xf4\xea\x1e\xfc\x45\x59\x8d\x73\x53\xe2\x3d\xa0\xfd\x76\x48\x25\xe6\xe8\x3c\xcd\xc1\x76\xf3\x0d\x28\x28\xac\xd7\xe9\xee\x8c\x1a\x9e\x41\x5f\x1c\xae\x33\x7d\x43\x23\x14\x94\x43\xdd\xae\x1a\xd0\xa2\xc5\xb2\xd3\xdc\x1d\x07\x39\x80\x16\xb8\xe2\x4d\xef\x9a\x3b\x3f\x75\xa1\x9f\xd9\x7c\xe3\x34\x76\x47\x27\x90\x0d\x75\x4e\xab\x17\x42\x3e\x31\x74\x4a\xaa\x34\x02\xd6\x86\xe2\x3f\x0f\xfc\x55\x6e\xe5\x1c\xc5\x1e\xac\x0c\xd7\x27\x9f\x13\x92\xa4\xe8\xb6\x99\x4c\xbd\x6b\x16\xff\xee\x58\xf5\x80\xe2\xf7\x46\x01\x36\x15\xad\x59\x65\x14\x8e\xcc\xfe\x32\x3f\xf3\x39\x44\xc4\x04\x5e\xef\xe1\x08\xe1\xc3\xe1\x81\x22\x55\xca\xdb\x7c\xbc\xcd\x67\x2e\xe5\x70\x1b\x18\xf7\x85\x1e\x96\xdf\xe7\x62\xb9\xb9\x03\x72\x13\x7c\x25\xbe\x44\x4c\xf6\xc7\x65\x99\xec\xd8\x5b\xaf\xdb\x0a\x9f\x30\xf5\x85\xb1\xea\x89\xa7\xf6\xa2\xdd\xa1\x67\x29\x4f\xd5\x06\xf2\xe8\x37\xd9\x6b\x83\xa8\x7e\x10\xb6\xf8\x46\xe9\x6f\x10\x5f\x32\x30\x1f\x8c\x57\x48\x9a\x33\xd3\x2c\x13\x07\xbf\x96\x7e\x2b\x99\x99\x34\x39\x50\xcb\x0b\x5f\x8a\xda\x13\x57\xbb\x6b\xeb\xb7\x01\x7e\x44\xb7\xab\x0f\x3d\xbf\x02\xa2\x5d\x01\x7d\xf5\xe8\xec\x9a\x04\x30\x0e\xad\x1c\x91\x69\x10\xed\x2c\x3c\x02\x03\xb4\x7b\xfe\x7d\x68\xb7\x47\x14\xe1\x28\xd9\x3a\xd5\x29\x44\xf4\xb3\x31\x5f\x83\x38\xb2\x2e\xd6\xab\x8d\xf1\x7a\x58\x3a\x72\xb4\xbd\x25\x56\xa4\x8c\x4e\xf7\x1c\x02\xb6\xda\xb7\xa0\xbe\xfe\xa8\xdb\x15\x93\xba\x37\x9a\x86\xd9\x09\xc9\xcf\x51\x4e\xca\x49\xaf\x57\x4f\xdb\x72\x07\x46\xbd\x2c\x5d\xe1\x1c\x35\x8d\xc3\x49\xc7\x9c\x1c\x0e\x33\x9b\x14\x1f\x0c\x0a\xec\x45\xcc\x8b\x31\x24\xbb\x9b\xc8\xf0\x8a\xf1\xb4\x35\xb6\x26\xc7\x8e\x96\xa0\x13\x31\xc5\xa5\xfe\xd3\x1b\x4d\xf1\x8a\xd8\xab\x3f\x27\x55\x5a\x22\x5c\x84\xa7\xe0\x0a\xe7\x10\x75\x51\x8e\x8b\x41\x2d\xa4\x4a\x51\x66\x7f\xec\xb4\xa7\xdf\x88\x50\x64\xe3\xd0\x06\x5f\xbc\x94\x16\xbc\x09\xa6\x8c\x48\x0c\xde\xfd\xd9\x23\x35\xee\x8f\x32\x46\x88\xd2\xc4\x8a\x21\x14\x22\x5a\xa5\xc0\x7a\xb6\x30\xe0\xfa\xd1\xfd\xbb\x32\xd7\x6d\xde\xa0\x86\xeb\x03\x33\xbe\x60\x19\xdc\xbb\x86\xee\x2c\x3c\x56\xfe\x85\x2e\xb7\x71\x72\xf5\xfd\x70\x26\x77\x41\x99\xa5\xdf\xa2\x95\x03\x62\xce\x03\x9f\xdc\x01\x7c\x72\x52\x4f\xf1\x06\x94\xf5\x47\x31\x9c\x39\x78\x69\x51\x8e\xd2\xe2\x41\x2e\xbb\x7f\xcf\xe7\x1e\xfd\x28\x61\xc7\xb5\x39\xe0\x2d\x9f\xa3\x06\x8c\xd4\x6c\xf5\x1a\x2b\xf4\x60\xbf\x5e\xf7\xfb\x39\x5e\x5d\x88\x31\x6f\x01\x34\xe3\xad\xa2\x23\x9f\xf0\x56\xa9\x89\xe4\xfa\x02\xcd\x9b\x6f\x83\xe3\xf0\x9c\xb5\x06\x10\xcc\x43\xa2\x24\x7c\xc2\xf4\x94\xf1\x09\xd3\x90\x58\x87\xb4\xdd\x36\xb1\x9a\xe0\x0a\xd0\x4e\xfd\x07\xf0\x29\x9c\xf4\xdc\x4a\x6a\x24\xe2\x22\xdc\x25\xe3\x1d\xa4\x6e\xaf\x86\x1b\x37\xdc\x4a\x96\xf4\x6d\xab\xc9\x36\xca\xe9\xcb\xbe\xd2\x2d\x0b\x68\x79\x33\xfb\x16\x91\x4b\x41\xbd\xc2\x92\x37\x4a\xfc\x89\xb3\x2f\x86\xf1\x81\x2d\x04\x7a\x52\xc9\xd6\xb1\x49\x28\xfd\x66\x50\xd8\x0e\xb3\xa7\x81\x50\xfa\x85\x3b\xa7\x17\x64\x78\x4e\xfb\x7d\x77\x1e\xc8\x09\xd5\xe7\x41\x1d\xa1\xab\x2b\x52\x87\x20\x79\x30\x3c\x74\x19\x34\xc8\xd4\x2d\xc8\x94\xfd\x3e\x2e\x1f\x79\x90\x29\xf1\xea\x0e\x90\x59\x69\x90\x59\x7d\x07\xc8\xf8\x42\xc7\xe7\x4c\x77\x97\xf5\xf7\x41\x0d\x8d\xa1\x46\x12\x72\x27\x1c\x00\x14\xf5\x47\x00\x45\xe8\xce\xa5\xff\x16\xc0\x6d\x64\xa7\xdf\x86\x94\x7d\x60\x21\x7a\xc9\x91\x86\x09\x25\xae\xae\x4a\xa6\x91\x0d\xe6\xd4\xe7\x58\xb1\x81\x96\xe8\x23\x36\xc8\x95\xde\x5a\xd1\x20\x70\xf0\x5d\x6d\xff\xae\x6b\xfb\x55\xf0\x0a\xdc\x95\xff\x26\x04\x50\x4c\x96\x82\x77\x71\x8b\x8b\xd6\x96\x58\x04\x6d\xb1\xf6\x6e\x6c\x2b\xd0\x77\xa3\x9a\xf0\xad\xbb\xb1\x3c\x47\x25\x51\x93\x5e\x8f\x87\x77\xa3\x23\xaf\x80\xc3\x99\xd5\xa0\x9b\xe9\x79\x4c\x87\xc2\x01\x5e\xb7\x4b\x81\x9e\xba\x1b\x90\x14\x84\xd6\xf4\xd7\xa1\x8c\x7c\x8f\x84\x6c\x5e\x69\xee\xc4\xda\x9e\xa3\x1a\x93\xa9\xa3\x33\x56\xe1\x3a\x3c\x63\xf5\xf6\x80\x1e\x9e\xaf\x1e\x91\x7a\xc0\xaa\x22\xd4\x6b\x5f\xf5\xd5\xc1\x8a\x98\xef\xdd\x6e\x4a\x49\x95\xe6\x98\x79\x30\xcd\x1d\xcf\x4f\xa3\xbc\x38\x7f\xc4\x02\x80\x85\x38\x7f\x31\x1c\x76\x34\x54\xe5\x1a\x0c\xf3\xde\x08\x1f\xfd\xed\x63\xfd\x6f\x47\x46\x69\x25\xa8\x52\x57\x15\xba\x1e\xc3\xbd\x9e\x42\x0d\x8f\x2f\x8e\x72\xbd\xa6\xe6\x7a\xa0\x3b\x88\x51\x6e\xef\xca\x2d\xc4\x16\xa8\xbe\x62\xb5\x2c\x79\x4e\x2d\x59\xba\x09\x94\xdf\x5a\x86\x6d\x50\x73\x6c\x4f\xab\x5d\xda\x06\x86\xe0\xbb\x58\x01\x72\x7a\xd0\x0a\x0b\x36\x26\xa8\x9d\x05\xde\x5e\x79\xc8\x6d\xc7\xe0\x9b\x26\xb0\xb2\x5d\x85\xcd\x4f\xc7\xae\xc6\x86\x5d\xad\xff\x9a\x0f\x2d\xbf\x68\x63\xf3\xc2\x66\xfb\x00\x5b\x57\xd2\xaa\x5e\x8a\x9a\x81\x10\xd7\x70\x3f\x5e\x9c\x91\x44\xe3\x4a\xbb\x36\xe1\x7c\x83\xb0\x7e\x71\x06\x97\x82\xcb\xfd\xb2\xaa\x59\x55\x73\xc5\xaf\x37\xa7\x7a\x1e\x50\xf6\x83\x17\xc7\x24\xa9\xd8\x57\xf5\x44\x88\xcf\x0b\x2a\x3f\xef\x61\xac\x44\xf4\xa1\xcb\x5b\xb7\xa1\x95\xcf\xfd\x56\x0f\x9c\x9f\x18\x8b\x18\xf0\x78\xa2\x49\xd2\xd4\x86\x56\xf1\xb2\x13\x1b\x82\x1d\x6f\xd2\x6a\x86\xbe\xae\x34\x7d\xdd\x44\xa0\xf4\xe2\x58\x0f\x71\x29\xd9\xf5\x6f\xd8\x5d\xe5\x5d\xde\x59\xa3\x07\x67\x67\xaa\x26\xed\xf1\x33\x0d\x46\x20\xf7\xd0\x98\xd2\xf4\x5b\xea\x7e\x1f\xd8\xba\x9a\x76\x79\x8e\xdb\xf3\x79\x4f\xef\xbf\x71\xac\xee\x1b\x16\x98\xcd\xee\x4e\xda\x15\xac\xba\x0a\x0f\x2e\x4e\xd4\xa4\xf2\x2c\x42\x61\xde\x80\x45\x48\x43\xe7\x51\xc0\x98\xb6\x28\x28\x0d\x51\x50\x3e\x4b\xe9\xa4\x9e\x6e\x36\x8c\x6e\xe1\xab\xf3\x72\x14\x6b\x5e\xcb\x50\xf3\x5a\x4e\xca\x29\x21\x3a\x77\xb7\x2b\x9d\xa7\x45\x8d\x10\xf8\x50\xf3\x86\x95\x68\x91\x01\xb9\xe5\x31\x84\x63\x81\x6f\x37\x9a\xcf\x0e\x87\xc6\xaf\xc4\x9f\xe7\xac\x7a\xae\xb7\x3c\xb0\xf7\x36\xa0\x09\x0e\x26\xb3\x2c\x90\xd9\xcf\xda\xbf\x08\x54\x7b\x14\xdd\x21\x46\x8d\x9b\x09\xd5\x3a\x7a\x6a\x45\x52\xa6\x0f\x96\xec\xff\x97\x3a\x01\x97\x6e\xdc\x93\x5d\xab\x1e\xae\xb8\x05\xe7\xf1\x06\x2f\xd2\x1c\x58\xe6\x84\xd7\x87\x58\xa3\x91\x1a\xbb\x2c\x55\xbf\xaf\xcf\x77\x19\x48\x40\xf6\xb0\x74\xf5\xa8\xfe\xa8\x07\xf5\x45\x1a\xec\xa5\x4e\xac\xe2\x92\xe8\x25\x7f\xe8\x04\xe4\xf9\xd2\x89\x83\xef\x3e\xfe\xab\x3b\x10\xd5\xc9\xd4\x8a\xbb\xbc\x0d\x37\x48\xbd\xd2\x92\x54\x13\x3a\x45\xfe\xcc\x4f\xed\x55\x46\x11\xb6\xa1\xa6\x93\x04\xa1\xcc\xfe\xb6\x7e\x8d\xcc\x39\xee\x68\x29\x6c\x68\x1c\x84\x34\xf2\x65\x0f\xfd\xa0\x0b\x02\x27\x54\x8a\x55\x55\x24\x38\xc9\x69\xcd\x9c\x28\x10\x00\x9e\xb6\x18\xe8\x26\xc2\xac\x7b\xc6\x27\x74\x3a\xb5\x92\x37\x50\xa1\x34\x5c\x14\x43\x64\xe1\x1a\x5d\x0c\x91\xc7\x05\x52\x65\x89\x2f\x74\x50\x13\xc3\xc1\xdb\xc4\x1d\x65\x9a\x1b\x9e\x25\xb6\xe9\xb9\x39\x3e\x9b\xd0\x4d\xd2\xe2\x6e\xc6\x6a\xb5\xcd\x58\xdd\xe6\x97\x56\xc8\xc1\x51\xc0\x2f\xe5\x11\xbf\x54\x12\x0b\x45\x15\xb8\xc9\x6f\x42\x49\x98\x04\xf9\x17\xfe\xfb\x8a\xc9\x9b\x2c\x62\x96\x56\x56\x16\xc6\x03\x43\x97\xeb\x90\x35\xb0\x70\x11\xff\x5a\xbd\x35\xa8\x06\x0b\x2b\x12\x0a\x59\xa3\x1c\xab\xb1\x3e\x89\x33\x73\x2a\xa3\xf3\x54\x8d\x45\xc0\x19\xcd\xcc\xcb\x4f\x92\x5d\x73\xb1\xaa\x53\xa4\x71\x82\xe8\x38\xf7\xd8\xa9\x41\x49\x51\x96\xee\x6b\xa7\x72\x81\xf9\x3c\x13\x36\x63\x81\x62\x40\x88\x9b\x21\x84\xf0\x7f\xbc\x27\x12\xa6\x7b\x73\xff\x45\x17\x10\x6a\x1a\x35\x99\xe9\x13\xae\x8d\xe4\x62\xc4\x02\xba\x23\x26\x36\x88\x3e\x80\x20\xcb\x1f\x82\xa4\x5d\xd2\xf0\x7f\x05\x39\xc3\x40\x5b\x3a\xf8\x97\x1a\xfe\x65\xbf\x8f\x36\x31\xd3\x04\xc3\xf9\x68\x65\x32\x15\xd8\x04\xb5\xa8\xbc\xa6\x97\x8c\x24\x03\x04\x91\x7b\xc9\x1f\x18\xc5\xcf\x7a\x14\xab\xa5\xde\x88\x8f\x2d\x10\x6f\x8c\x63\x99\xb2\xd8\xf3\x9c\xbf\xc8\x23\x16\x53\x5c\x2d\xc8\x82\x0a\xf1\xa5\xfa\x17\x2b\x0e\xc2\x6b\xc7\x15\x07\x1c\x64\xf5\xde\x1c\xe8\xaf\xb7\x91\x82\x8d\x23\x5f\xe7\x80\x85\xdf\xfc\xe8\xae\x18\xbc\x23\x0d\xfc\xe7\xf9\xab\x25\x8d\x58\xf6\x61\x8f\x1e\xb7\xf7\xd0\x07\xb1\xbf\x4b\x3b\xef\xa2\xfd\x1d\xb3\x57\x8d\xda\x82\xd7\x58\x74\xa0\xc2\x9e\xfc\xb9\x95\x61\xed\xed\xc9\x96\x9f\xbd\xa8\x27\x3b\x3e\x46\x38\x9c\x8b\x20\x17\xf5\x81\x13\x08\x0c\xe1\x8f\xbb\x0a\x73\x7d\x10\x5b\xd9\x1d\x3f\xe0\xa4\xc2\x15\x11\xcd\x46\xe5\x7f\xe0\x65\xc9\x22\xae\x67\x05\x92\xfe\x6d\x6e\x00\xe6\x0e\x09\x81\x61\xfe\xc5\xf1\x71\xfe\xcc\xd5\xfc\x3f\x61\xc2\x37\x11\xc3\xff\x10\xa0\x18\x3c\xdd\xbe\xaa\x08\x70\xfe\x0a\xe3\x30\xf5\xfc\x95\x56\x9b\xfd\x37\xbe\x73\xd9\xae\x49\x83\xf8\x93\x1b\x17\xeb\x66\xaf\x4d\x4e\xcb\x10\x59\xd2\x5a\x9f\x06\x1a\xcd\x80\xa6\x7f\xbf\x03\x7f\x6b\x3b\xf6\x14\x3a\x36\x17\x5f\x5e\x56\x4f\x59\xb5\x2d\xec\x74\x33\x6b\x14\xee\x9e\x82\x7b\x54\x23\xcf\x0f\xf4\x1f\x62\x41\xbf\x57\x97\xf0\x8e\x56\xfb\x5b\x1a\x09\x91\x2a\xc5\xd1\x71\x4c\x10\x6b\xe4\xc8\x72\x91\xbd\x84\xb9\xfe\x79\xf9\x85\xca\x6d\x4e\xcd\xbf\x74\xee\xee\x8e\x96\xc8\x21\x5a\xe2\x41\x40\xcc\x5e\x44\xd7\x96\x5e\x89\x48\x54\x18\x11\xbe\xe0\x72\xca\xf1\x7f\xc1\x27\xc8\xd6\x98\x3c\x5f\xb2\x1d\x95\xfe\xf4\x3f\x7f\x5c\x1b\xdc\x90\xbb\x86\xd5\xdb\x33\x2c\x4d\x19\x9c\xe8\xc1\xe8\xbd\xf4\x73\x55\x6c\x03\x4e\x48\x7d\x47\x04\x45\x5c\xcc\x5d\xeb\xbb\x8a\x47\x7a\x69\x6d\xb9\xc7\x65\xb9\xb3\x45\x98\x18\x87\x04\x6d\x04\xf9\xdc\x44\x4b\x94\x41\x8d\x34\x4e\x07\xdc\x38\x7d\x05\x07\x38\xc7\x39\xaa\x62\xb4\x5f\x3a\x14\x03\x10\x7f\x69\x95\xed\xb0\x0c\xd9\x6d\x8f\x88\x6a\xfd\x5e\x6a\x52\xcc\xa6\xe5\x73\x9f\x92\xcf\xbb\x5d\xde\xeb\x6d\xe9\x7a\xd8\x73\x2f\x9e\xa9\x09\x0c\x58\x94\x45\xb2\x91\x30\x85\x8b\xbc\x72\x49\xb0\x91\x87\xc9\x94\xd8\x9f\xbf\xb6\xc9\x8f\xcb\x32\x31\x2c\x94\x97\x6e\xf6\x5e\x56\xb9\x04\x1f\x40\xb4\xdc\xac\x77\x57\x9e\x77\xec\x9a\xc9\x9a\xd9\x5a\x7e\xd4\x39\xec\x71\x94\x60\x35\x78\x71\x62\x0a\xbc\x81\x48\x95\x2d\x1f\xc2\xaf\x95\x5e\xde\x04\xb3\x41\x25\xe4\x82\x96\xfc\x1f\xec\x0f\xa0\x0c\x0b\x3e\xb7\x11\xb6\x9a\xbf\x49\xa8\xf1\x3b\x99\x46\x7e\x78\x22\x1d\x5d\x8b\x28\x5b\x15\xa2\xac\xd5\xec\x6d\xc2\xda\xfe\x37\xb6\xb8\x64\xb2\x5f\x50\x45\x8f\x68\x41\x97\x8a\xc9\xa3\xfe\x52\xf2\x6b\xd0\xaa\x9e\x24\x56\x4b\x1a\xe2\x02\x82\x1e\x73\x82\x13\x53\x84\x57\x33\xbd\x24\x1b\x6e\xbb\xac\xf3\xec\x2d\x6d\xe1\x8a\x78\x7d\x60\x0e\x91\xd3\x9c\x6e\x53\xa6\x30\x27\x47\x1f\xe5\xf8\x63\x75\x64\x65\xbb\x47\x1f\x27\x1f\xa7\xbf\x3b\x0a\xd5\x7c\x5d\x4c\x30\xc1\x8b\xce\xf0\x90\x40\xc8\x34\x63\x4a\x0e\x3f\x25\x81\xc0\x9f\x64\x87\x0e\xb5\x1c\xcb\x14\x65\x12\xb3\x89\xf3\xf4\x32\x25\xbf\xfc\xee\x96\x55\x39\xb8\x91\x7a\xf9\xd4\xe9\xd8\xeb\x69\x26\x3b\x13\x24\x6a\x7e\x71\x6e\xce\x7d\xc8\xc3\x92\x3c\xd7\xd3\x30\x78\xcd\xbf\x72\x17\xcf\x31\xbd\xbd\x5c\xf1\xb2\xf8\xf9\xdd\x2b\x67\x1d\x88\x39\xba\xad\xbf\x70\xeb\x2c\x0f\xc8\x3a\xbd\xd2\xef\x58\x2e\x64\x91\x64\x8e\x7b\x35\xe7\xf5\x60\x25\xcb\x17\x42\xbe\xf0\xa9\xa9\xc2\x4c\x93\x44\xbe\x90\x86\xcf\x3d\x25\x1e\x97\x65\xda\x66\x86\xdd\xba\x2b\xeb\x1f\x75\x42\xca\x31\x0b\x33\xee\xef\xcb\x1f\xdb\xe4\xa0\x90\xe1\xe3\x54\x3b\x1b\x78\x61\xd3\xb6\xfa\xfe\x23\xad\xef\x2a\x63\x93\xb7\x8a\x3d\x61\xa5\xa8\xae\xea\x0f\x62\x5f\x41\x9f\x21\x2a\x6a\xa3\x6b\xee\x1d\xd8\xd3\x20\x3d\x98\xb7\x15\xf8\x62\xdd\x5f\xec\xe7\x20\x3d\x6a\xcf\xe0\x96\xfb\x0b\x3e\x0b\xd2\x5d\x41\x07\xfe\x61\xee\x4f\x21\xf8\xe8\x33\x2e\xfe\x60\x30\x54\x77\x0a\x1b\xf0\xbb\x62\x0a\x3c\x69\xe2\x64\x2e\x6a\x65\x94\x97\x6c\xc3\x3f\x49\x36\xe3\x5f\x5b\x21\xb7\x71\xf8\x04\xa9\x4b\xaa\xe6\x2f\x84\xfc\x70\xb3\x64\x29\x43\x08\x1c\xac\x58\xfe\xa9\xf2\x2f\x3b\xb7\x08\xc4\x17\xa8\x3c\x97\x53\xe8\x4b\xc1\xf8\x46\x49\x93\xa3\x04\xe1\x43\xde\xed\x56\xdd\x6e\x72\x94\x1c\x12\x52\x39\x0d\x9b\x21\xd2\xfb\x95\x24\x47\x49\xaf\x42\xb8\x6a\xf0\x16\xb0\xdb\x0d\xbe\x7b\x36\x14\x66\x28\x2c\x63\xc0\x5d\xed\xcb\xde\x66\x36\x00\x7f\x47\x56\x15\x67\x6d\x3b\xf3\xed\x02\x1e\xd6\xef\xee\x7a\x94\xdf\xc1\xf9\x3f\x35\xda\x16\xc6\xbf\xbb\xd8\x06\x80\x7f\xc7\x4c\x45\xb0\xfd\xdd\xed\x44\x80\xfd\x7d\xa5\x2c\x54\x86\x51\x31\x77\x03\x72\xb5\x95\x50\xd1\x05\x33\xcc\x07\x43\x76\x39\x30\x93\xeb\xb5\xbd\x01\xbc\x4b\xb4\xbf\x7d\x3c\xfa\x78\x64\x63\x23\x30\xb4\x5e\x1f\xcd\x95\x5a\xa6\x35\x1a\x67\x51\xc2\x98\x65\xc9\x51\x42\x82\x90\xc5\x43\x34\xfe\xe5\x77\xb7\xb2\xf9\xdd\x2d\x6b\x7e\xc9\x7e\xf9\xdd\xad\x6a\x8e\xe0\xb7\x0d\xcc\x39\x99\x7a\x9d\x91\x6e\x97\xfb\x5d\x53\xf9\x97\x0a\x61\xde\xee\x87\x06\xc7\x5b\xcd\x22\x5e\x66\x64\x36\x24\x5f\x4e\x17\x4c\xdf\xf6\x41\x64\x51\x39\x58\x96\x2b\x09\x38\x80\x86\x20\x50\x78\x7d\x62\xa7\x12\x2e\x1c\x52\x82\x6d\x94\x62\x72\xc1\x2b\xf6\x44\x14\x37\x3f\x49\xb1\xe0\x35\xdb\xf0\x12\x69\xea\x4b\x41\x15\xc6\x78\x27\x32\x4d\xbf\x7b\xff\xa7\x9f\x06\x92\xd5\xa2\xbc\x66\xa9\x44\x03\xe3\x9b\x94\x91\x0b\x86\xd0\x40\xcd\x99\x2e\x72\xb1\x79\xa9\x5f\x1b\x47\xe8\x86\xac\x3d\x64\x03\xf1\xd9\xfb\x69\x6c\x23\x41\x2b\xaa\x56\x35\xa6\x24\xd1\xd3\x2a\x8d\xbb\x30\xfd\x0b\xd7\x04\xe2\x99\x11\xb1\x5e\x1f\x0f\xef\x9b\x1f\xc9\x8f\xcf\x1f\x3f\xd3\x19\xd5\x60\xc1\xd4\x5c\x14\xbe\xe6\xf5\xfa\x10\xec\xa2\x4d\x38\x65\x4e\xfe\xfd\xfd\xdb\x37\xd6\xfd\xac\x74\xae\x54\x8d\x2b\xb3\xc3\xb4\x0c\x3d\xdd\xbd\xbf\xa9\x14\xfd\x0a\xde\xf5\xbc\xa2\x42\x79\x50\x0e\x96\xf4\xa6\x14\xb4\x20\xfa\xfc\x2c\xbd\xc9\xc8\x7a\xcd\x9b\xc6\x8e\xcf\x8a\x6a\x1a\xcc\x06\x33\xa6\xf2\xf9\x46\x80\x77\x43\x77\x12\x6f\x11\x5c\x1b\xe2\x1f\x1c\x23\xa5\x09\x94\x48\x90\x0b\x86\x58\xf9\x2f\x0e\xcf\x39\xa8\x49\x8a\xc8\x05\x33\xfa\x9d\x7c\x96\xb6\xb8\x8a\xf7\xf0\x04\x45\xb6\x7d\x04\xe6\xe0\x95\xbc\xa3\x2f\xc4\x8e\x9a\xb3\xce\x2f\x90\xef\x17\x6b\xa7\xd6\x11\x32\xfa\x7a\x55\x8a\x4b\x5a\x0e\x3a\xcf\x78\xd1\xb9\x11\xab\xce\x82\xd1\xaa\xa3\x84\x99\xa3\xb2\x34\x79\x0d\x0a\x67\x4b\x80\x51\xd8\x38\x41\xb6\x8b\xf0\xb5\x69\x47\xa9\x27\x04\x66\xfe\x1d\xab\x97\xa2\xaa\xd9\x8f\x8c\x16\x4c\xd6\x3b\x08\x8a\xb7\x60\x49\xe7\xb0\x21\x63\xea\x1a\xf9\xed\x53\x07\x21\xa1\x61\x82\x75\x73\x27\x55\x92\x3b\xa5\x4a\x82\xc8\x49\x05\x5c\x79\x5c\x93\xc3\xd1\x39\x6d\x95\xe6\xa8\x11\x1a\xdd\x7f\xa8\xa1\x29\x0c\xcc\x48\x11\xba\xad\xc9\xe1\xd0\x4a\x7d\x74\x17\x46\xb0\x76\x4e\xc5\x6e\x50\xaf\x2e\x8d\x45\x33\x04\x1c\x1f\x28\xc9\x35\xc1\xb2\x8a\x52\x68\x6f\x84\xbd\x91\x96\xcd\x02\x1e\x7d\x90\x9a\x94\x31\x33\x6e\x4a\x56\x58\x4d\xca\x29\x59\x35\xad\xab\x7e\xe0\x71\x48\x0e\xdb\xf8\x65\xa5\xc4\x8f\xb4\x9e\x93\x78\x53\xe1\x8a\xdc\xf2\x2a\x2f\x57\x05\x7b\x59\x80\xd2\x44\xab\xcf\xea\x8a\xca\x17\x40\x83\x2d\x44\xc1\x4a\x08\xf0\x72\x10\x41\x8f\xc7\x74\xf9\x76\x6b\x8e\xd9\x74\xdb\xb4\x46\xd7\x5b\x99\x52\x61\x3d\x59\x60\xc7\x5d\x0f\x73\x01\x33\x3d\x1a\x0a\xdc\x94\x3f\x51\x49\x17\xbb\x40\xa0\x3d\x20\x3d\xfa\xce\x02\xfb\x70\x5c\xe3\xd2\xf0\xcc\xf8\x2c\x35\x5e\x37\x78\x0d\x7f\xd3\xca\xb8\xe8\xe1\xb0\xd0\x5e\xfc\xc2\x1f\xd5\xa0\xf1\x21\x6c\xa0\x1b\x34\x36\xb1\x4c\xaa\x09\x9f\xa2\x8c\xa5\x52\xd3\x7e\xbd\x74\xcb\x88\x53\xa7\x8f\x79\x96\x24\x48\xd3\x80\x26\xbb\xb7\x43\xdb\xe6\xae\x26\x13\x53\x41\xc7\x80\xf0\x54\x1f\x4a\x16\x9a\x5b\xaf\x20\x4a\xf8\x23\xbb\x04\x2f\xfa\xae\xcf\xfa\x04\xea\x54\xc8\xf5\xa6\xb4\x4d\x96\xae\x49\xdb\xe5\xb6\x03\xff\xcc\xc8\xc1\x99\xda\x84\x4f\xc1\xb3\xae\xf9\x75\x4d\xcb\x15\x0b\xac\xc8\x7d\xfb\xa5\x6d\xb5\x75\x51\x99\x24\x98\x21\x7b\x21\x75\x13\x14\x78\xcd\x3d\x1e\x1e\x5d\xe1\xa4\xa7\x2f\x29\x3b\x52\x43\x14\x7a\x4f\x31\x0c\x27\x9f\x3e\xb1\xfa\x35\x1c\x33\x09\xbe\x85\x56\xbd\x6d\xee\x5d\x14\x24\xb3\xe4\x69\x40\x3e\x86\xd9\x6a\x25\x24\x6b\xc9\xcc\x0d\xfa\x71\x9f\x6b\x55\x70\x7d\x4a\x92\xc7\xa6\x8d\x8e\xe7\xfa\x74\x66\x94\x97\xac\x48\xac\x97\x79\x5e\xdb\x1c\xc6\x7d\xfa\xe1\xf0\x20\x44\x33\xe0\xa3\x59\x3f\x40\x2a\x14\x3a\x80\xf0\xdb\xd6\x3f\x7d\xfe\x99\x58\x27\x44\xd6\xa5\x27\x33\x1e\x7f\xb9\xa8\x88\x0c\xdf\x6c\xe8\x59\x5e\x32\x08\x01\x23\xfd\x4f\x93\x50\xf2\x8a\xbd\x59\xe9\x16\x6d\x44\x6c\xf3\x62\x12\xad\xab\x6e\x22\xdd\x2f\xf3\xb9\x32\x15\x55\xbe\x92\xca\x55\x60\x7e\x58\x2f\xa3\x30\xb7\x35\x61\xeb\xf5\xe4\x56\x71\x55\xb2\xcc\x4f\xc9\x73\x33\xed\x05\x53\x94\x97\x99\x6a\xa6\xcd\x3f\xbb\xb0\xfb\x21\xc1\x34\xab\xcf\x8b\x0f\x02\xa0\x36\xc1\xb7\xac\x5a\x2d\x98\xa4\x97\xa5\x2e\x8c\xaf\x98\xda\x76\x36\xd3\x51\x83\xad\x92\xcd\xb7\xdb\x81\x7c\x1f\xe0\x78\xfa\x27\xdb\x09\x4a\xea\x76\xd8\xe0\x3d\x93\xd7\x0e\x18\xd8\xe0\xa9\xa8\x66\x25\xcf\x95\x7b\x7f\x23\xd4\x0b\xb1\xaa\x0a\xf7\xfe\x42\xc8\x4b\x5e\x14\xac\x72\x1f\x7e\xae\xe8\x4a\xcd\x85\xe4\xff\x60\x3e\xd3\xe3\x4b\x21\x7d\x0d\x36\xdc\x84\x7b\x7d\x59\x5d\xd3\x92\xfb\xac\xce\xb4\xd9\x70\x2e\x2c\x2b\x44\x86\x51\xf2\xd8\xb6\xef\xbd\xdb\xd6\x03\x3f\xb9\x6d\x7c\xba\xb0\x64\xe1\xa6\x6b\x49\x03\xdf\xb1\x33\x0e\x16\xc0\xb8\xc4\xd5\x7a\xad\x50\x13\x60\x97\xee\x48\xdb\xb8\xb1\x59\x9b\x82\xb0\xb4\x8a\xfd\x84\x6b\x0c\x57\x36\xed\x60\x2a\xbc\xbf\x8a\x70\x9b\x45\x95\xb5\xc7\xa8\x26\x2b\xfd\x3e\xb6\x30\x1b\x35\x66\x3d\xbe\x89\x54\xe2\xe4\xc3\x9c\x75\xec\xb1\xd2\x91\xec\x57\xb0\xc5\x03\x1c\x26\x17\x8b\x05\x57\x9d\x4b\x96\x53\x7d\x5c\x70\xd5\xf9\x42\xeb\x0e\x37\xd3\x0f\xac\xf6\x68\x29\x28\xa6\x5b\x5d\x08\x33\x24\xd6\xf0\x76\xab\xd1\xf6\x9c\x51\x7c\xc1\x8a\x8e\x58\x29\xa8\x3d\x5a\xf7\x1a\xd7\x5b\xb5\x87\x19\x12\xcb\x33\xba\xa3\x76\xdd\x7b\xaa\x01\x8b\x99\xde\x07\x40\x56\xe2\x72\x7b\xfa\x7c\x72\x62\x3d\x5e\xde\x51\x37\xaf\x3b\xab\x00\x8e\xa1\xfe\x6d\xc0\x5e\xe1\xd5\x56\x33\x5b\xb9\x4c\x6b\xf9\x37\x5a\x9b\xb9\x6d\x04\x4d\x6d\x6c\xaa\x1c\xe7\x5b\xed\xc4\x59\x12\x6b\x94\xb1\xd5\x48\x2e\x56\x65\xd1\x89\xb0\x61\x4d\xc5\xac\x64\x6e\x84\xba\xf1\x76\x2e\x70\xb1\xd5\x50\x94\x23\xb1\xd1\x5a\xee\x18\x8c\xb9\x5c\x3a\xc5\x8a\x69\x24\x9a\x76\x72\x7b\x80\x40\x73\xf1\x69\x32\xc7\xf3\xad\xe6\xa2\x1c\x5e\x6f\xe5\xfb\x9b\xab\xe1\xf4\xea\xb8\x08\x65\xf1\x71\x36\xc3\xb3\xad\x06\x83\xf4\xe4\x5b\xd7\x34\xd8\x3b\xed\xbf\xa6\xb7\xf8\xc1\x77\x5f\xd4\xbf\xdd\x5d\x13\x91\xba\xdf\x7d\xfe\x47\xa5\xcc\xd9\xbf\xe3\xf4\x75\x88\x80\x6d\xdc\x9c\x3a\xa9\x63\x93\xbf\xf7\x48\x77\x96\xf4\x1d\xc3\x1a\xb7\x2c\x5b\xe3\x19\xcd\x72\x63\xcd\x8b\xd1\x3e\x69\x7f\x86\x19\xaf\x58\xa5\x17\x96\xbd\x2c\x5e\x08\x19\x26\x78\x64\x3a\x83\x89\x24\x17\x01\x7e\x9d\x2a\x84\x43\x0e\xa6\x29\x11\x32\x27\xcd\x97\x90\xeb\x68\xbe\xe4\x82\x96\xac\xce\x99\xe1\xab\xfd\x7d\xc5\x6a\x55\xeb\x19\x73\x2c\x5b\xdb\x29\x29\x56\x4b\x53\xac\x0e\xf8\x58\xae\x27\x13\x35\xc5\xf5\x5c\xef\xb3\x77\x4c\x53\xcc\xb6\x01\x4d\x19\x1e\x8e\xa2\x14\x3d\x05\xb6\xd0\xa1\x77\x38\x6e\x32\x3c\xa1\xf9\xe7\x2b\xd0\x66\xda\xae\x64\xb8\x27\x0f\x54\x07\x19\x80\xdf\xe1\xd6\x4e\x7e\x0b\x8a\x7f\xad\x45\xd5\xa7\x4b\x1e\x03\xf2\xa6\x90\xe2\x1b\xa0\xbd\x3b\x59\xb2\x5a\x6d\x8b\x37\xf4\xfd\xfa\x1f\x83\xfc\x9d\x90\xc9\x49\xe5\x3e\xdf\x09\x96\xed\x78\x3f\xd9\xe4\xa7\xa2\x52\xac\x52\x1f\x6e\x96\x2c\x4b\xe8\xd2\x28\x46\x73\x51\x1d\x5d\x57\xc5\x80\x2e\x79\xcf\xc4\x1c\xa2\xbf\xd2\xaf\x26\x24\x43\x6d\x06\x02\xc8\x85\x55\x5d\x00\x76\x5d\xbd\x82\x30\x81\x38\xf2\x55\x08\x22\x4d\x26\xeb\xc1\xe3\x3c\x67\x4b\x45\x36\x3f\xac\xd7\x77\xb4\x59\x35\x7b\xa0\x72\xe4\xa1\xb2\x9d\x54\x2b\x81\xd5\x5d\x69\x19\x87\x2d\xe1\x0b\x02\x95\x56\xfe\xd0\x52\x39\xba\x80\x1e\x5c\xca\x71\xf2\xfb\xe7\x1f\x12\x7c\xab\x57\x31\xbb\x9d\xf1\x52\x31\x99\xdd\xf2\x22\x93\x96\x04\xc2\x09\xe8\xb1\xed\xe4\xcb\xc9\x98\x2f\x57\xd0\x7a\xce\x64\xc4\x98\x83\x20\xc4\x9e\x35\x87\xc0\x5e\x7a\xb5\xc9\x39\xf5\x03\x49\x87\x58\xee\xa0\xc9\x6d\x26\xc7\xa9\xdf\x39\xd2\x6a\xc0\x0b\x3d\xd8\x48\x24\xb1\x63\xc0\x02\x27\x3f\x3d\xfe\xf0\xf4\x47\x37\x64\xde\x58\x6e\xa1\x83\x2f\xfe\xad\xdd\x03\x20\xfe\xad\x2b\x60\xcf\xf6\xb0\x64\xde\x3f\x75\x69\xfc\x36\xdb\x07\x78\x54\x16\x96\x49\xb1\x6f\x3f\x25\x2b\x17\x5d\xa3\xe5\xb1\xfd\xfa\x47\xab\xe6\xb7\x2b\xb1\xd2\x93\xba\x25\x77\xf4\x2b\x7a\x60\x78\x91\x6c\x60\x1c\x4d\x39\x7e\x98\x75\x34\xbd\xaa\xb1\xdf\x1a\xb0\x83\x2c\x9b\x52\xf8\x3b\x2a\xe0\xbd\x5a\x76\xed\xc0\xa0\xb4\xa9\xf0\x61\x9b\x78\xb7\xcb\x37\x68\xd8\xf1\xfe\x72\x1c\x65\x3c\x0a\x72\x8a\xc3\xf0\xdd\xc6\xe4\x19\x56\xe9\xc3\x5c\x8a\x2f\x55\xc8\x28\x85\xaa\xbb\xdd\x24\x39\x24\x44\x21\x41\xa2\x8c\xad\xc7\x1e\x1b\x38\x2f\x21\xc4\x46\x96\x78\x0f\x43\x45\x02\xa2\xda\xc9\x08\x0d\x6e\x4b\x01\x22\xbb\x59\x66\xbd\x1e\xc2\x97\xda\xd5\xb0\x65\xb3\x79\x6b\xb8\xc0\x59\x85\x57\xb2\xcc\x38\x0e\x7a\x94\x89\x86\x30\x7c\x6b\xca\x66\xb4\x21\x0a\xd7\xe4\x1b\x14\xf0\x2f\xf6\xb8\xb1\x58\x55\xd6\xf9\xdd\x6d\xd5\x74\x7e\x77\xcb\xf5\x43\xac\xd7\x49\xd2\xfc\xe2\x58\x7f\xbe\x62\xcf\xbf\x32\xe3\x6b\xf1\xec\xb4\x46\x0d\x28\x1f\x98\x61\x6a\x58\x10\xdb\xb0\xe0\x86\x67\x55\x41\x00\x16\xc0\xb3\x54\x3b\x14\x5c\x39\xd0\xa0\xe8\x56\x10\xea\x96\x5e\x84\x81\x5f\x59\xe4\x2b\x7a\x55\x67\x9e\xb7\xde\x4e\x68\xc6\x82\xd9\xc5\xb6\xb9\x2c\x4f\x99\x6b\x3a\x24\x16\x57\xdf\x5b\xa5\xf9\xf6\x81\x7d\x55\xbe\xca\x74\x88\xab\x9d\x3c\x60\x64\xd4\xba\x1e\x97\xe5\x46\x42\x8a\xc2\xb6\x03\x13\xff\x96\x15\x09\xce\x5e\x67\x42\x3e\xa7\xf9\x3c\x05\x31\x2c\xb9\x00\x2f\xee\x0c\x61\xd5\x96\x2d\x6c\xf0\x17\xa6\x29\xcc\x82\x55\x8a\xd3\xb2\x26\x49\x4d\x17\xac\x2f\x24\xbf\xd2\x18\x22\x03\x7f\xea\x48\x43\x9e\x3e\xff\x41\xa0\x63\x40\x29\x90\x31\xb8\x4f\x50\x9b\x3d\x73\x3e\xb3\x9b\x3a\xb5\xa5\x1d\xa7\xd7\xeb\x71\xad\x64\xe9\x5d\x02\x24\xe3\x04\x5d\xf4\x47\xe3\xa4\x9b\x64\xc9\x38\x39\x80\xd4\x1e\x01\x01\xd1\xef\x6e\x61\x7e\x76\x31\x48\x91\xab\xbc\xf9\xa5\x31\x41\x9b\xfe\x05\x3e\xa3\xa9\x61\xcc\x20\xf8\xb9\x91\x84\x18\x0e\x35\x9f\xdd\xb8\xd4\xcc\xa6\x9a\x57\x3f\xc5\x8d\xa1\x6f\xd4\x26\x62\xb1\x81\x2d\xe3\x9d\x88\x86\xb9\x1a\xbe\x89\x64\xe8\x8b\xfe\xbc\x93\xcf\x35\x78\x28\xb2\x52\xb3\xfe\xc3\x04\xcf\x68\xad\x2e\x85\x50\x99\x39\xbb\x72\xb1\x58\xae\x14\x2b\xd2\xdb\x2b\xa6\xd2\x0d\x21\xa1\xcb\x3b\x8e\x5f\xb3\xf8\xb5\x15\x07\xbe\xfd\x52\x31\x69\xe2\x47\x0e\x4a\x21\x3e\xaf\x96\x69\xa2\xe9\x24\x9e\xb3\xcc\xe5\x4e\x50\x83\x6b\xa6\x76\x08\x3f\x7d\x7d\x4a\xd3\x08\xab\x9a\xbd\xd0\x77\xc9\x66\x3f\x43\xb5\x1a\x23\xd2\xd9\xd9\xbc\x15\xa1\xbd\x83\x00\x81\x56\x09\x2d\xd1\x24\x22\xbf\xca\x58\x75\xcd\xa5\xa8\x16\x10\x09\xdd\xae\xc8\xe1\x61\x0a\x60\x0f\x95\x3d\x7f\xf3\xa7\x6e\x17\xe2\x2a\xb5\x1f\x06\x9f\xfe\xfd\x8f\x3f\x3f\x7f\xf7\xd7\x4f\x2f\xdf\x7c\x78\xfe\xfb\x77\x8f\x3f\xbc\x7c\xfb\x06\x02\x75\x74\xbb\x87\x70\x97\xd7\x42\xaa\x00\xc0\xb6\x64\x2f\x06\xa2\x43\x8d\x69\x60\xb7\x3f\x3a\xf6\x86\x46\x81\x33\xf5\xdb\x06\x1c\xa0\x18\x53\x7a\x67\x94\x08\xd6\x88\xd5\x84\x4f\xc4\x74\x4a\x98\xf9\xeb\xcf\xc4\xbb\xd1\xb9\x50\x12\xfc\x4f\x21\x74\x0e\xc3\x89\x90\x22\x23\xbd\xaf\xbe\x89\xe7\x09\x8d\xcf\xcd\x5a\xbd\x80\xdd\x6d\xbb\xda\xee\xc6\xbb\x34\x81\x64\xfb\x04\x6e\x35\x02\x69\xaf\x3e\xda\x79\x95\x33\xe2\x38\xb1\x0e\x03\x0b\xba\xa2\xf1\x2f\x43\x06\x46\x42\xd3\x6f\xb6\x08\x4a\xa2\x46\x6f\x27\x40\xbd\x0d\x57\x3a\x5e\xf0\x56\x89\x63\x13\x12\x24\x0a\xfb\x55\x45\xfd\x92\xbe\x5f\xb1\xb0\xfe\x9f\xed\x9d\x5d\xa7\xff\xbc\x3e\xfe\xe7\x13\x05\xbc\xa8\x33\xd9\xb8\xb6\x22\x8d\x8c\x30\xd6\x39\x2f\xc0\x6c\xdd\xb7\xe3\x01\x61\x53\xbf\xc6\x32\xf5\x7d\xdf\x04\xe6\x58\xe1\x48\xeb\x29\x1a\xb4\x34\xdd\xb1\xed\x6f\x28\x77\xfc\xd6\x3d\x68\x15\xa8\xf6\xf4\x21\xdf\xd0\x14\xc1\xf2\xdb\x33\x0e\xf0\x20\x71\xac\x66\xa5\xf7\x55\x7c\x0d\xc6\x04\x8f\xdc\xbd\x32\x3f\xbd\x7d\x1f\xef\xe3\x2d\x72\x4a\x06\xe4\xd4\xfe\xda\xf1\x2d\xb8\xfb\x93\x7a\xd6\xe8\x1d\x7d\x17\xba\xe3\xdf\xa2\xaa\x28\x4e\x7e\xfa\x39\xde\xd3\xc5\x0e\x4d\x17\xcb\xcc\x1f\xf0\x62\xbb\x8a\x3b\x66\x4f\xf7\x20\xd2\x18\x43\x38\x79\xf6\xfc\xd5\xf3\x0f\xcf\xf5\x82\x7c\xd2\x57\xfb\xf2\xe5\xb3\x17\x52\x2c\x36\x15\xbf\xf0\x5d\xab\x02\x00\xa3\x90\x15\xaa\x83\x32\x96\x20\x91\xbb\x03\xf0\x4d\xd0\x76\xb6\x60\x5b\xfa\x5d\x02\x11\x42\xe8\x38\x76\x92\x90\x24\x59\x2a\x89\xc0\x15\x49\xc6\xbc\x20\x49\x8f\xe2\x5d\xca\x0b\x16\x65\x69\xb1\x18\x56\x15\xf5\x9f\xb9\x9a\x8f\xfb\x26\x22\xb8\x43\xa5\x2a\xec\x9d\x3f\x38\x59\x27\xca\xa4\xcf\x9e\x56\x10\xd3\x2d\xee\x43\x2c\xb0\xf7\x5e\x6e\xda\x98\x46\x08\x6d\xe8\xdd\x2c\xe8\xd7\x9f\xdf\xbd\x7a\x65\x62\x23\x1c\x0f\xef\x3d\xdc\xc7\xf7\x0a\x65\x28\x1a\xe5\x7f\x4d\x97\xd8\x1c\x89\x6e\xba\xc3\xaa\x0e\x94\x47\x59\x15\xb9\xf0\x2e\xc7\x77\xad\xda\x01\x04\x36\x4d\x39\x78\x1b\xd2\xb8\x08\xc7\x93\x29\xc2\x46\xa3\x89\xdb\x78\x6f\x0a\x35\xce\x5f\x6c\xa0\x5a\x14\xb5\x91\x6e\x3a\xa3\x35\xd9\x87\x98\xee\x6e\x78\x32\x9c\x22\x4d\x1b\x4d\xda\x6b\xbb\xed\x34\xb3\x9d\x56\x64\x87\x7a\x1f\x1b\xf0\xc2\xfb\x02\xe0\x07\x6e\x76\x7b\xa2\xa7\xc0\x4d\x63\xaa\x5b\xad\x4d\xc7\x27\x53\x84\xb0\xe8\x11\x65\x65\x5a\xb5\x5f\x8a\x83\x7a\x52\xd9\xa8\xad\x10\x68\xbe\x6e\x50\xaa\x30\xc7\x49\x97\x17\xf5\x0f\xf7\x9f\xfc\x70\xff\x19\x49\xbc\x5a\x45\xd0\x31\xe1\x0a\xe9\x52\xa2\xc1\x1b\x94\x95\xa7\x6d\xf9\x2c\xb5\x92\xde\xf7\xab\x3c\x67\xb5\x25\x7b\xdb\xd0\xb2\x07\x6d\x0e\x2b\xe2\xd9\xcc\x01\xa4\x5d\x28\xfe\x49\x2b\x2b\x3f\xf4\xde\x7b\x41\x02\xeb\x34\xb1\x21\x4f\xdc\x13\xe4\xce\x19\xc7\xe4\x2d\x9e\x01\xd5\xc9\x8a\xd7\x46\x7a\xe7\x3b\x7c\x60\x35\x80\x99\xd1\x00\xee\xdc\x1b\x8e\xb2\xa8\x23\x5b\x42\x96\x54\x60\x6a\x74\x4b\x3b\xf7\x86\x27\x71\xe6\x58\x52\x12\xe5\xbc\x17\xe7\x8c\x44\x1d\x51\xc6\xb3\x38\x63\x24\xa4\x30\x19\x9d\x7a\xaa\x26\xbc\x2e\xc8\xfd\xe1\x30\x9e\xba\x40\xca\x00\xf9\x9b\x28\xd5\x16\x36\x29\xd8\x2f\x53\xc6\xc8\x05\xbb\x20\xc7\xc3\x61\xb7\xcb\x1e\x9d\x0c\x87\xeb\xf5\x09\xa8\x84\x31\xec\x17\x4a\xe7\xb9\x77\x7c\x0c\x1f\xe1\x20\x0d\xaf\x00\x8b\xba\xe1\x7c\x4b\x35\xd0\xa1\xf1\x09\xc2\x05\xb9\x5d\xc9\x32\x63\xd8\xf2\x12\x54\x83\xe7\x44\x0c\xb6\x98\x9f\xfe\xdc\xcf\x1d\xdd\xa1\x2b\xb0\x18\x6d\x3a\xb7\x6a\x70\x8c\x5c\xa4\x9c\x30\x0c\x97\xcf\x2e\x85\x3b\x7d\xff\x14\x08\xb5\xd9\x6f\x8d\x0d\xab\xf8\xbc\x5e\xb3\x2d\x7e\x8b\x55\xee\xda\x64\x88\xb5\xbb\xba\x4c\x25\x3a\x38\x1e\x0e\x41\xa3\xc9\x50\xe2\xdd\xae\xda\xaa\x67\x9c\x8a\x90\xa3\x40\x14\x56\x24\xfa\xe2\xf4\xdd\x50\xb6\x91\xb3\xc2\x9a\xb4\x6d\xe3\xcb\x7b\xa0\x56\x6d\x64\x53\x33\x43\xe0\x3f\x36\x15\x98\x61\x6e\xae\xfc\x02\x6d\x45\x9b\xde\x40\x5a\xa0\xf7\x36\x0f\xf5\xf0\xef\x2a\x29\x50\x83\x32\xd0\x6b\xdb\xe2\x67\x6d\xfa\xef\x9a\x0f\x6a\x03\x33\x51\xac\xb1\xb6\xa1\x7d\x1d\x58\xed\xed\x80\xfe\x55\xa0\x03\xd3\xb4\x5c\x59\x9d\x65\x18\x17\xd3\x59\xf0\xdc\x4c\x53\x58\xf5\x77\x35\xa8\xd0\x41\xc4\xdd\x21\xad\x32\xe4\xae\x59\xd6\x24\x23\xfc\xfc\xc0\xbe\xaa\x68\xc6\x45\x30\x59\x7b\xfb\xaa\xa0\xaf\x62\xf0\x09\x36\x07\x78\xcf\x4a\x9e\xbd\xcf\x3a\xef\x9e\xbf\xff\x60\x99\x60\xff\x8b\x4e\xb2\x81\x84\x95\xe8\x24\x3d\xa6\xd1\x0a\xfd\xd1\x01\x37\x43\xb7\x86\x0d\x6a\x70\x15\x48\xaf\x36\x32\x68\x28\x16\xdb\xba\x88\x90\xad\x53\x08\x56\x83\x14\xb6\x66\x6c\xa1\x1b\xb9\x64\x1d\x17\xc7\x98\x57\x9d\x1b\xb1\x92\x1d\xba\x5c\xb6\x4a\x88\xe2\x9a\x49\xc9\x0b\x10\xd3\x5f\x73\xda\xf9\x85\x16\xc5\x5b\xf9\xd6\x7e\x7d\x4f\xab\xe2\x52\x7c\xfd\x3d\x68\x2e\xd6\xbf\x40\xc4\xc9\x39\xeb\x38\x4a\xdd\x0a\x41\xc7\x09\x3a\xa8\xda\x0e\x47\xdb\xd5\x53\xc1\xb0\x4f\x8d\x1e\xa5\xd5\xcf\xf4\xaa\x87\x29\xf0\x6c\x30\x43\x07\xff\xaf\x69\x58\xda\x75\xd0\xdd\xdd\x7f\x82\xed\x3a\x8e\x18\xca\x36\x0b\xb8\xd9\x19\xf0\xfa\x05\xad\xd5\x13\x60\x7a\xd8\xb2\x1b\x8b\x69\x39\x29\xf1\xc7\x66\x5b\x1e\x84\x6e\x9d\x08\x84\xd6\x35\xbf\xaa\xd2\x8d\x93\x14\x6b\xbc\x4e\x1f\xa8\x56\x45\x63\x5b\x45\xdb\x32\x0c\x13\x74\xe0\x4d\x75\xaa\xb1\x74\xec\xc8\x8d\xca\x1b\x8d\x0b\x7b\x56\x65\xe6\x7f\xae\xd7\x69\x5b\xe4\xd6\xe2\x47\xe0\x74\xbb\x65\x41\xad\xd7\x66\x4c\xdb\xcc\xa9\x83\x88\xd9\xbe\x73\x82\x53\x09\x5c\xb2\x6e\x17\xa8\x20\x40\x4e\xf5\xc8\x20\x02\x9d\x6d\x77\x92\xd8\x2a\xfb\xba\xce\x64\xea\x3c\x46\x42\x92\xed\x47\x5f\xd9\xa4\x74\x6f\x1a\xe1\x08\x61\x49\x0a\x4b\xa3\x21\x94\xdd\xd1\x76\x3c\x3d\x12\xdf\x06\xe3\xcd\x80\xf9\x23\x37\x58\xe6\x86\xdb\xa7\xd3\x49\x62\xe4\x6d\xcc\x4c\xd2\x57\x45\x94\xe5\x8a\xb6\x2d\x31\xd7\x92\x49\xd8\xc3\x49\x6c\xed\x45\x06\x97\xe0\x8a\xf7\x3d\xab\x8a\xc8\x50\x3a\xe6\x9d\xba\xf5\xf3\x98\x9c\x24\x17\xe0\x86\xce\x82\x9a\x61\x08\xa7\x12\xfb\xac\x13\x39\x85\xf0\x8f\x8d\x9f\x15\x2c\xf5\xd6\x24\x2d\x98\x6a\x54\x16\xbe\x21\x2c\xed\xa6\x31\xf6\x0a\xfa\x5c\xfa\xae\x9d\x10\xab\xda\xef\xc8\x2c\x4d\xf7\x0c\xc1\x92\x8b\x12\x0c\xc8\xbe\x99\xdb\x18\x27\xe8\x83\x65\xc3\xc6\xc0\x1e\x33\x96\x21\xcc\x9a\x5f\x40\xf1\xf9\xe8\x6f\x73\xa5\x96\xf5\x86\xd9\x01\x52\xf2\xe6\x36\xc8\x7f\x74\xe4\x4d\x0e\xac\x60\xa0\x42\xb7\x5b\x87\xd4\x5f\xc5\xaa\x43\x25\xeb\xac\x6a\x5e\x5d\x19\xf0\xee\x3c\xa3\x8a\x76\xbe\x70\x35\xef\x54\xa2\xa3\xfb\xb6\x7d\x0c\x9b\x4b\x61\xd0\xf9\x30\xe7\x75\xe7\x0b\x2f\xcb\x0e\x55\x8a\x2d\x96\x4a\x1f\x59\xab\x9a\xc1\x71\x05\x45\xc5\x0c\x7e\xbb\x39\xec\xd8\x31\xe3\xce\x97\x39\xcf\xe7\x1d\x6e\x8e\x7c\xc3\xdd\x5c\x49\x56\x74\x66\xf6\x60\xb4\xd1\xb8\x83\x5a\x78\xed\x4a\x0f\x3a\x3f\x95\x4c\x63\x9d\x35\x53\xbe\xa9\x3f\xcf\xb9\x62\x25\xaf\x55\x67\x69\xc5\x7d\x50\x97\xeb\x73\xc0\x39\x1d\xfc\x5a\x0f\xda\x1e\xc1\x4c\x64\x9d\xa4\x57\x39\xd5\x49\xe4\xf5\xad\x59\x83\x77\xdc\xb7\xad\x59\x36\x08\xef\x54\x68\x48\xc0\x9c\x18\x46\xa2\xdb\x40\x6b\x7b\x37\xd2\x9f\xd9\x23\x92\x5c\xc8\x1d\x21\x63\x64\xb7\x2b\x2d\x01\x31\x76\x3f\xb2\x89\x93\xb3\x24\x49\x8f\x61\x2b\xa9\xfa\x30\x67\x9d\x4b\x9a\x7f\x66\x55\xd1\x31\xa8\x40\xc1\x0a\xb3\x84\xb4\xb2\x7a\x3e\x4e\x7e\x95\x24\x3d\xd9\x4c\xf1\x3e\x02\x23\xdb\x83\x94\x80\xeb\xa5\xad\x43\x2a\x01\xdf\x45\x9d\xe8\x58\xf3\x5a\xe1\x24\x88\xe1\xa3\x51\x4f\x3d\x1c\x17\xac\xfb\xfe\x70\x9c\x4c\xde\x2e\xb8\x52\xac\xe8\x18\x2a\xf8\xa6\xf3\xe3\x87\xd7\xaf\xa6\x49\x26\xf1\x24\x09\x20\xd1\xc9\xdb\x92\x5e\x5a\x59\x69\x0b\x84\x2b\xab\x60\x2b\xf7\x92\x8e\x69\x8f\x15\x1d\xaa\xf1\x12\x9c\xfc\x64\xb0\xd4\x4e\x0a\x36\xb5\x28\xc1\x7c\x6a\x89\xf8\x8f\x95\xbe\x2e\x03\xce\x6d\x28\x41\xd2\x54\x89\x11\x18\x5a\xe5\xf9\x4c\x36\x84\x19\x4d\xde\x81\xfd\x44\x24\x6a\x17\x35\x92\x89\xcf\xf7\xc9\xc4\x0b\x76\xb9\xba\xfa\x96\x56\x94\xc9\x54\x33\xb5\x5a\xfe\xd6\x0a\x51\x77\x2a\x2c\xe9\x09\xb6\x18\x9e\x57\x0f\x01\x45\x6a\x8b\x19\xf0\x0a\x5a\xb3\x82\x90\x34\x81\xb4\x04\xe1\x2b\xa6\x5e\x80\x1e\x44\x0d\xda\x35\x93\xdb\x8a\x2e\x58\x96\xf0\xfa\x0d\xfb\xa2\x21\xad\xce\xb3\x44\xff\x6c\xb0\x4f\x79\x2d\x0a\x3e\xe3\xac\x70\xc9\xfe\x3d\xc8\xf3\xb4\x64\xb4\x72\x19\xcc\x4b\x33\xd5\x68\xe4\x82\x7d\x10\x4f\x4b\x5a\xd7\x81\x66\xeb\xe6\xb1\x6a\xfb\x66\xb8\x57\x2f\x84\x04\x74\xe4\x8b\xde\x8b\xaf\xf5\x17\x0d\x9b\x35\x48\x04\x6f\x77\xa3\x19\x6e\x6c\xc0\x7a\x09\xd9\x90\x7a\x92\x9c\x17\x27\x50\xd6\xd0\xd0\x5f\xbf\xa6\xcb\x17\x42\xa2\xb4\x42\x07\xb4\x95\x38\x6a\x54\x9a\x5c\x18\xa5\x71\x68\x5b\x37\xfb\x72\xf6\x73\x55\x33\x56\xa5\x15\xa6\x98\x63\x4d\x03\x08\x04\x11\xbb\xb7\xda\x21\x8a\x5c\xa4\x77\x94\x36\x8d\xdb\x2a\x30\x37\xc2\xbc\x0a\x2b\x1f\x56\x51\x2f\xc7\xad\x08\x39\x20\xc6\x09\xec\x8e\xa6\x38\xa6\xa1\xa8\x54\xe9\x92\x14\x98\x4a\x0a\x4c\xff\x2d\x73\x57\x32\x38\x6b\x5f\xc3\xce\xd3\xaf\x0b\x71\xcd\x0c\x18\xa6\x75\xab\x00\xbc\x2b\xef\x72\x55\xcf\x7d\x4e\x5c\xdb\xe5\x88\x06\xe5\x89\x55\x1b\x69\xf3\x50\xa3\x77\xe0\xa7\x24\x95\xde\xf1\x3d\x6b\x17\x55\x22\x5c\x9b\x3b\xfd\x8b\xa4\x4b\xbf\xb2\x10\x08\xf7\xc0\x32\x7b\x20\x59\x5c\x02\x86\xdf\xe6\x00\x4f\xfa\xb8\x4a\x27\xf5\x14\x1c\xd8\xea\x16\xc0\x43\x42\x83\x73\x51\xae\x16\xd5\x1b\x00\xb3\x67\x1a\xf8\x18\xb9\xd8\x30\xa7\x5b\x72\x65\x14\xe9\xa2\xef\xab\x4a\xe3\x1e\xb9\x90\xfa\xe0\x6f\xcd\x20\x3e\x1d\x5d\xe1\xa4\x93\x38\xfb\x1e\x64\x1b\xa8\xb7\x6c\xf6\xfc\xc6\xf1\xdb\xe2\x65\xa1\x41\x5e\x92\xa1\xe5\x17\x6e\x63\x9e\x0c\x27\x54\x29\xc9\x2f\x57\x8a\xd5\x09\x0a\x97\x10\x60\x8f\xcf\x52\xd9\xeb\x5d\x54\x03\x9f\xeb\x15\x5f\xf0\x8d\x40\xff\x96\x17\xb5\x39\xf0\x94\x83\x63\x40\x70\xbc\x00\x3d\xe3\xa6\x5b\xa2\x01\x70\x68\xf4\xc6\xb7\xdc\x4e\x73\x36\xf1\x59\x1b\xcb\xd6\x1e\xee\x8f\x8e\x5b\x57\xd9\x9f\xe0\x60\xd3\xd7\x03\xe5\x15\x93\x7f\x60\x37\x91\x6f\x1b\x69\xa3\x5d\x42\xe0\xb9\x32\x4b\x07\xff\x86\x8e\xd0\x81\x35\x8a\xab\xf4\xc1\x4b\xaa\xc9\x68\xda\xde\xc7\x96\x37\xa6\xfc\x49\x34\x58\x32\xf6\xf9\x71\x59\x82\x4d\xac\xef\xdc\x53\x18\xd6\x9f\xf4\x21\x18\x08\x33\x87\x58\x92\x5b\x5e\x64\xd1\x54\xf2\x22\x69\x61\x98\x0d\x18\xcd\xe7\x8f\xdd\xbc\xa5\x95\x99\x4e\xd5\xeb\x5d\x18\x2e\xfc\x9e\x19\x95\x93\x6a\x4a\xc2\x6a\x2b\xf0\x4d\x11\xf4\xe8\x0f\xec\xe6\x8b\x99\xb5\xd6\xa6\xc9\xa3\x86\x8f\xd3\x89\xee\xc7\x14\xed\xeb\x07\x23\x17\xd2\xf3\x31\xb1\x8c\xb1\x62\xf8\x1e\x36\x2e\x11\x8a\xd7\xca\x1c\xd5\x66\x3a\x34\x68\xa7\xb7\x70\x50\x9b\xd8\x79\xa9\x3d\xb5\x11\x6e\xcf\x68\x97\x32\xa7\xf5\x33\x2e\xd5\xcd\xe3\x00\xde\xba\xdd\xc3\xad\x72\x70\x54\x67\x87\x77\x94\x6a\x50\xb4\x3a\x70\x3a\xdb\x89\x48\x2e\x4b\x9a\x7f\x4e\xda\xb1\x87\x95\x8f\x15\x49\xae\x24\x63\x55\x72\x77\x9f\x52\xa8\x67\x05\x3e\x8b\x1b\x6c\xf7\x7e\x68\xab\x1c\xde\x7a\x8f\xd3\xd6\x12\xd8\xce\x3d\x76\x77\xd7\xae\xfa\xa7\xfa\xa2\xdf\x5a\x91\xca\xaf\xc8\x41\x2b\xdc\x3a\xa8\xda\xfd\xb8\x19\x46\x54\x84\xc6\x9f\x2a\xe5\x70\x82\xb9\x3e\x22\xd4\x58\xde\x0c\x2d\x8a\xb7\xa6\xff\x52\x43\x92\x3e\xe7\xed\xe2\x87\xfa\x03\x96\x8f\x63\x0f\xe3\x28\x7b\x83\xf4\xff\x2d\xb6\x1a\xba\x95\x9b\xd7\x42\xd3\x7c\x9f\x56\x6c\x88\x9e\xdc\x6d\x80\xf5\xdb\x63\x2f\xc1\x65\x4b\xaa\x7d\xd8\x8c\xa6\x68\xfe\xcc\xe8\xe7\xd7\x74\x19\x85\xd3\x76\x30\x66\xb7\x86\x9f\x14\x53\x98\x10\xa2\xcc\x21\x63\x45\x34\x46\xa4\xa2\xbb\xad\xc1\xc8\xc9\x4c\x9d\x9a\x4b\x2b\x85\xda\xba\x4b\x0f\xbe\x2b\xd7\x0e\xcb\xc6\xca\xe8\x7c\xb4\x32\x95\x39\xd5\xf4\x2f\xd8\xb7\xac\xd7\xe6\x96\x32\xaf\x10\x02\x84\x07\x16\x38\xcc\x86\x99\x10\xc4\x5e\x22\xd1\x8a\x51\x45\xfb\x5e\xd1\x92\x57\x5c\x59\x3d\x70\x74\xdb\x34\xc1\x92\x8b\x7d\x4b\x0e\x27\xf2\x1e\xaf\x2d\x77\x98\xdd\x7d\x07\x48\x6c\xb9\x72\x89\x17\xcc\x2a\xc5\x0e\x06\x03\x8d\x90\x6c\xcc\xd8\x04\x90\x85\x29\xf1\x0c\x99\x13\x50\x74\xf1\x9e\xd8\x77\x58\xb0\xaa\xf5\x7a\x8b\xb2\x52\xdd\xae\xbd\x64\x14\xea\x76\xb7\x02\xad\x6b\x94\x7f\xdb\xf6\xd3\x97\xa9\xba\xdd\xa4\xb5\x1e\x48\x38\x84\x5e\x4f\x1c\x09\xeb\xbf\xad\xd7\x1e\xca\x2a\xd4\xa4\x0a\x8d\x59\x8a\xcc\xb8\x32\x66\xfe\x5a\x10\xab\x22\x4e\xb5\xdc\x15\x57\x74\x9c\x4a\xc2\x30\xb3\x50\x8f\x32\x49\xe4\x7a\x7d\xdb\x58\x8e\xd9\x2d\xf0\xd0\x18\xe6\xb5\x3f\xa1\xb2\xc3\x21\xfe\xcc\xab\x22\x6b\x91\x85\x04\x0b\xc3\x98\xcb\x64\x13\xa3\x15\xb1\x26\x15\x8b\xf5\xb7\x79\xa5\x98\xac\x68\x09\x98\xd4\x0e\x66\x7d\xe0\x9e\x61\x20\x3d\xac\x1b\x04\x5c\x83\xb3\xee\x52\x2a\x41\xcd\x91\xa1\x71\x05\xaa\x7d\xae\x4b\x70\x27\xa5\x0c\x65\x9b\x00\xb2\xdb\x1a\xd9\xef\x32\x28\xd7\xfa\x69\x0e\xbf\x0e\xe8\x72\x59\xde\x18\xc6\xb6\x47\x4d\x1c\x6b\x31\xce\xda\x2a\x20\x39\x9b\x36\xb6\x57\xc3\x2b\x9a\x05\xbd\x2d\xe3\x4b\xc2\x5a\xd1\x21\x4d\xa0\xd2\xb4\x82\x03\xd8\x6c\xce\x6a\x57\x18\x91\x0a\xf3\x83\x5d\x8b\x5c\x11\x86\xb9\x5f\xe4\xb4\x22\x0a\x73\xc2\x20\x16\x66\x0c\xa2\xbc\xdb\x4d\x39\x91\xad\x30\xf1\xb5\x93\xd9\xa7\xdc\x37\x6d\xc0\x82\x63\x5e\xbf\x63\x25\xe8\x91\xd5\x73\xbe\xd4\x90\xe1\x00\xa1\x22\x95\x06\x23\x0b\x29\x97\x5e\xb1\x03\x9b\x13\xc5\x6a\x7a\x74\xf4\x97\xcf\xcc\x98\x7a\x7c\x0b\x74\xee\x98\xb5\x2b\xa6\x02\xd5\x94\x7f\x72\xaa\x23\xa5\x16\x4b\x9a\x7c\xa3\x7e\xb7\x1c\xc2\x2f\x07\xdd\x5e\x8e\xed\x65\x80\x2b\x21\xd8\x6c\x58\x11\x05\xb3\xb4\xb5\x0a\xcc\xc4\x77\xd9\xb5\x0a\x0e\x2d\x68\x37\xa7\x9b\x73\xb5\x63\x3d\xcc\xfc\xcf\xad\x6a\x8f\x9d\xfd\x1f\x69\xdd\x31\xef\xbf\xcd\xdc\x7b\xb5\xa4\x70\xe6\xad\x83\xca\xfd\x3b\x5d\xfa\x15\x08\xd4\x9a\xac\xc6\x41\x50\x63\x04\xfa\xd8\x71\xe5\xc1\x70\xf6\x27\x29\xbe\xde\xb4\x4a\xa2\xcf\xd8\x52\xb2\x9c\x2a\x56\x3c\xbf\x86\xe8\x0f\xf8\xf6\x93\x04\x5d\x47\x26\x7f\x04\xe9\xbc\xb4\xc4\x85\xe9\x95\x4b\x63\x85\x4b\x25\xb7\x97\x2c\xa7\x0b\xe6\xc5\xbb\xd8\xbc\xff\x09\xde\x54\xd3\x18\x1d\xef\xfa\x49\xbb\x3f\xf5\x9a\xdc\xa5\x8e\x19\x88\x9a\x5f\xd3\x25\x84\x89\x86\x2a\x5e\x84\x98\xea\x26\xc7\x60\x67\x2b\x89\x51\x93\xdc\x83\x6f\xc8\x80\x27\xff\x38\x75\x74\x28\xe0\xec\xb8\xad\x5e\xe2\x64\x32\x4d\x80\x82\xb0\x2c\xc9\x7a\xa3\xf3\x83\x05\x5d\x3e\xb9\x49\x1d\x43\x2e\xc1\x89\xcd\x98\x68\x62\x13\xbe\x7d\xc7\x70\x7d\x3f\xf4\x80\x57\xd5\xe7\x4a\x7c\xa9\x5a\xac\xcc\x0d\x3b\xb0\x10\x37\xd3\x01\x3e\x97\x81\x4c\xdf\x08\x36\xdc\x60\x5e\x1b\x6f\xe6\x1b\xbd\xad\x84\x4a\x13\x93\x19\xdc\x05\xb8\xa8\x2f\x98\x16\x3b\xf0\xf3\x76\x86\x6d\x75\x09\x3a\xb0\x6c\x7c\x9b\x1d\xcb\x6e\xf7\x70\x6f\xe6\x6e\x77\x1f\xe4\xec\x4f\x19\x44\x20\x95\x82\x54\xcd\xf5\xcd\x4e\xc1\xa7\x19\xaf\x8a\xb7\xd6\x0f\x92\x65\x97\xd6\xc1\x69\x04\x88\xbb\x3e\x4b\xea\x54\x45\x76\xf5\xf6\x2e\xdc\x91\x5e\x09\xc5\x67\x37\x6e\xca\x9f\xce\x4d\xb8\x06\x90\x44\xee\x6b\x2b\xf0\xaa\xb8\xd5\x84\xa7\x6a\x16\xf4\x33\x33\x6e\x20\x14\x30\xb4\xd8\x97\x8e\xf5\x0a\xe1\x96\xcc\x2a\xe6\x56\x51\xb4\x10\x7b\x44\x4e\xc4\x14\xd7\x36\x26\x82\x06\x32\x07\x5a\x98\xa2\x03\x3e\x11\x53\x52\xaf\xd7\xb7\x1e\xad\x00\x59\x9e\xe1\x1d\x53\x4f\xa8\xf3\x06\x1b\xda\x64\x97\x58\xd2\x2f\xd4\x7a\x9d\xba\xf5\xb0\x79\xf1\x7f\xc6\xa2\xfe\xc9\x2c\xa9\x9e\xd6\xb6\x53\x7c\x96\xee\x87\xa0\x08\xf4\x8d\x59\x8c\x9e\x88\x00\x95\x62\x4e\x94\xde\x96\x76\x7b\x11\xe9\x3d\xdd\xae\xf4\xc1\xdd\x0b\xb6\xe5\xa4\x46\x4e\xaa\x69\xcb\x69\xd0\xf8\x6d\xb7\x2b\x3d\x6f\xa9\xc2\xa3\xed\x96\xf7\x1c\x44\x03\xa3\x11\xa8\xdb\xb9\x0b\xda\xee\x48\xf4\x7b\xb6\x69\xb0\xf5\xca\xfb\x1d\xab\xe9\xfc\xf7\xfe\x16\x0b\xe6\x5a\xfd\x8e\xe5\x62\xdf\x7d\x40\x83\x47\x19\xb6\x83\x52\x67\xc6\xd5\xbf\xf5\xc0\x05\xd7\x80\xf7\x46\x1c\xeb\xbb\xdd\xb9\x7d\x1d\x18\x07\xd7\x5f\x60\x52\xad\xeb\x6b\xe9\x38\x3d\xb5\x40\xf4\xc5\xd7\x77\x74\x72\x58\xa9\xc9\xb0\x69\x10\x76\x3e\x22\xef\xb0\x2a\xb0\xb7\xd8\x3e\xa1\xb5\x0c\x90\x8f\xfa\xc9\x8d\x85\x95\x0d\x0d\x44\x83\xb5\xc8\x86\xa8\x03\x06\x44\xa9\x84\x48\x91\x86\x6b\x3a\x99\x22\x13\xea\x27\x95\x81\xca\x21\x66\x0d\x8a\x0e\xf7\xd5\x5d\x5d\x35\x5a\x90\x5e\x0f\x39\x5c\xc0\xc7\x69\xac\x3f\xcb\x68\x3e\x7f\x6a\xeb\xf0\xd7\x13\xb8\xa4\x30\xfc\xb9\x6a\x10\x63\x54\xe8\xb6\x1a\x7c\x66\x37\x56\x69\x46\x93\xf0\x7a\x30\x60\x2d\xdd\x66\x7a\x6d\xb0\x95\x03\xe6\x64\x3b\x46\xab\xd2\x46\xde\xe3\xa8\xd9\x31\xa0\xfc\xdb\x73\xbf\xc3\x5b\x15\xb6\x1b\x7f\x4b\xe9\xfa\x8e\xc1\x55\x96\x97\xbb\x31\x32\x30\x18\xd0\x43\xab\x30\x37\xbe\x5d\xf4\x8f\x25\x95\xac\x52\x1e\xf7\x24\x12\xb3\x49\x35\x25\x9a\x1c\x6b\x8b\xbe\x90\x62\x01\x63\xe6\xc8\xad\x15\x2e\xee\x1a\x4f\x1b\xa8\xcc\xb1\x47\xb6\x31\xa0\x08\x94\xcc\xd0\x01\xff\x09\xa5\xf9\x6a\xb7\x2b\x2e\xef\x19\x79\x52\x4d\x6d\x0c\x64\x33\x36\xcc\x51\x2b\x7e\x8d\xe7\xff\x36\x87\x2d\x66\xa7\x89\xb3\x3a\x9b\x37\xa6\x4f\xc6\x09\x02\x5e\xe2\xc5\xe6\x90\x12\x2b\x48\x7e\xaf\x80\x3f\xb1\xcb\x09\x7e\x3c\xaa\x4d\xcc\x39\x2c\xaf\x09\xc4\xb8\x4b\xd7\x24\xdd\x6c\xd0\x6c\x5d\x3b\xd8\x04\x6f\xe3\x5d\x87\x69\xcb\xc7\x8e\x33\xa3\x8b\xe1\x66\x03\x0b\x74\x30\x23\x0b\xbc\x24\x0b\x18\xe3\xd5\x4e\x57\x03\x3b\xb1\x6a\x5e\x71\xe5\x36\x9a\xb5\xc2\x1e\x0c\x06\x2d\x4d\xdc\xe0\x4f\xe6\x00\x7b\xc3\xd4\x17\x21\x3f\x9b\xf3\xab\x0e\xfd\x20\x4c\x12\x5e\xc3\x61\x9c\x4c\xc3\xd3\xef\xae\xc3\x0f\xb5\x48\xe0\x02\xf3\xfa\x95\xa0\x05\xaf\xae\xfc\x6f\x56\x64\x0b\xbc\xcd\x63\xdd\x44\x56\xa3\x55\x1b\x70\x93\x7d\xd7\x5c\x06\x22\x81\x9d\x45\xe0\x10\xe7\xf5\x7b\x7a\xed\x7a\x61\xfc\x4b\x16\xd9\x0c\x1b\x2e\xf8\x12\xdb\x31\x66\xd7\xf8\xd3\x82\xca\xcf\x16\x07\xb4\x72\xe7\xc7\x86\xbb\x9d\xa2\xdb\x06\x17\xba\x4a\xd0\x9c\xd1\x15\x19\xc5\x81\xc3\x91\x29\x65\x05\xfb\x1b\x65\xcc\xe4\xb3\x20\xad\x26\x93\xa9\xbd\x19\x4b\x5a\x5b\x2f\x1f\x46\x0d\xcf\xa8\x59\xed\x58\x92\x14\x26\xd5\x78\x34\xd0\xc3\x38\x1c\xe1\x70\xb0\x99\x1a\xbc\x13\xc2\x0e\x1c\x82\xc9\xe0\x18\x86\xad\x7f\x08\x10\xec\x1a\xed\x44\xa3\x4c\xf0\xcd\xd3\xac\x76\x07\x59\x20\x9a\xd8\x26\xd6\x52\x2f\xf2\xac\x35\x30\x26\x11\x2a\x9d\xa0\x06\xef\xce\xf0\x27\x9b\xbc\x7d\xce\xf2\x40\x89\xba\x36\x73\x00\x16\x9b\x06\x29\x87\xcf\x16\x27\xfe\x20\x62\x16\xcc\xed\xe6\xce\x4a\x50\x4b\x35\x38\x74\x22\xac\xa0\x4e\x77\x97\xb1\xb7\x7e\x83\x69\x60\x34\xbd\xe1\x67\xe3\x1b\x24\xb7\x99\xba\xf7\x15\x5d\xd6\x73\xa1\x52\x34\x08\x0b\x6a\xfc\x98\x16\xd6\x7b\x46\xc1\x0b\xbd\x37\xfc\x8b\x71\x9c\xea\x5f\x0d\x15\xe0\x5f\x0d\x00\x9b\xd7\x98\x10\x0e\x3e\x05\xfd\x95\xa2\x2c\x19\x78\xc6\x70\xfd\xaf\x76\x39\x70\xdd\x64\xbb\x54\x6e\xd2\x20\xee\xdb\xff\x43\xdd\xbf\xb6\xb7\x71\x63\x09\xe2\xf8\x7b\x7e\x0a\x8a\x93\x87\x29\xac\x10\xb6\xd4\xb3\xdd\xff\xf9\xd3\xa9\xe8\x71\xec\x78\xda\xdd\x49\x9c\x89\x93\xce\xce\x72\xb9\x72\x99\x05\x49\x68\x97\x50\x6c\x14\x68\x47\x4d\xe2\xbb\xff\x1e\x1c\xdc\x51\xa8\x22\x95\x38\x3d\xb3\x6f\x6c\xb1\x0a\x85\xcb\xc1\xc1\xc1\xb9\x1f\x2a\xa0\xae\xfd\x91\x25\x27\x4d\x93\x10\x17\x7b\x1c\xe2\x6f\xe2\x26\xea\x93\x4e\xf0\xd6\xc5\x94\xc5\xe3\xc5\x8d\xf5\x91\xe9\xaa\xf7\x1a\xa2\x3b\xe6\xd3\x82\x14\x2e\x73\xdb\x73\xdd\x1f\xa9\xad\x7b\x5f\x3c\x7c\xfc\x91\xa3\x89\xfe\x8e\xd1\x15\xe9\x00\x85\x5d\xfa\x7f\x63\xa0\x25\x2e\xd7\xff\xe7\x4c\x97\xd2\x2a\xc9\x8a\xaf\x47\x18\x6a\xc5\x27\x49\xac\xaf\xb1\xda\x93\xbf\x34\x7a\x35\x41\xa4\x7e\x73\x09\xbb\xfa\xb6\xda\xbc\x8b\x3a\xc9\x7d\x9d\x6b\xa8\x4e\x42\x82\x9d\x8f\xc1\x64\x89\x6d\x34\xf1\x57\xea\xfe\xe9\xfa\x04\x39\xee\xc0\x32\xfc\x71\xaf\xb4\x96\xd8\xec\x9d\xd7\x20\x1b\xdf\xed\x98\x8d\xda\x6f\xf5\xd3\x65\x16\x53\x75\x17\xda\x57\x5e\x6d\x93\xe6\xaa\xe1\x84\xa9\xad\x75\x99\x38\x0c\x09\xcb\x29\xfc\x8c\x66\x9f\xe8\x5a\x0c\x70\xe0\x8d\x13\x2b\xe8\x6b\xf6\xf1\xb3\x65\xda\x48\x2a\xe9\xe0\xf1\x33\x37\xf3\xe3\xb9\xb9\x2b\x01\x10\xee\x9c\xb7\x81\x46\x73\x6c\x8f\x38\xb9\x21\x9c\xb0\x8d\xe2\x73\x8b\x50\x95\xab\x4e\xc6\x9d\x53\xd4\x9d\xde\x85\xd3\x46\x82\x3e\x02\x4c\x80\xba\x76\x88\xb9\x1b\xb4\xcd\x1a\x8b\x72\x2f\x75\x75\x37\xc7\xce\x7a\x92\x2c\xca\x2f\x88\x15\x10\xac\x3e\xd4\xfa\x3c\x04\x06\x56\xbc\xf5\x1c\x1d\xc1\xe4\xe7\x6d\xc5\x20\x71\xe9\xba\xc7\x29\x87\xcc\xb0\xf3\x78\x78\x6f\x6b\xb6\x2e\xde\x51\x56\xaf\x27\x4e\xdb\xd6\x42\x78\x91\x7b\xa1\x6e\x5e\x16\x79\x37\xc0\xf3\x70\xf4\x36\x18\x1d\xb9\x32\x6c\xc4\x99\x60\x89\xf6\xdb\x09\xfa\x98\xbd\x68\xaa\xdb\x78\x09\x8a\x6b\xd2\xbc\x4e\xde\x9e\xac\x24\x57\xcd\x90\xc0\x9f\x86\x21\x81\xbf\x4d\xae\x09\x67\x8d\x76\xec\x97\x44\x78\x6f\xfd\x1a\xd5\x36\x2c\xad\x97\xda\x2b\x71\x47\x78\xc0\x11\x9f\x5d\xe8\xa0\xb4\x6e\xc9\xd4\x5a\xd4\xe9\x7c\x1f\x72\xcc\x5c\x4a\x89\x35\x6d\x72\xca\x72\xc7\xbc\x8d\x8b\xb5\xb8\xb7\x03\xfe\xca\xdd\xb4\xac\x13\x7c\xb7\x11\x2d\xef\x6f\x94\xbe\x47\x22\x69\x44\xeb\x55\xf3\x0c\x78\xd0\xd7\x90\xb4\xaa\xd5\xab\x52\x71\x0a\x84\x77\x24\xee\xae\x37\xa1\xb0\x55\xd6\x72\x00\xac\x11\xb2\x70\x31\x6a\xed\xa7\x75\xad\xd9\x8e\xe3\x40\xc9\x31\x21\x29\x44\x7a\xb6\xa2\xc9\xed\x82\x93\x76\x4b\x58\xb1\x17\x9c\xde\xde\x12\x1e\xeb\x5c\x57\x64\x3d\x90\x95\x37\xd2\x02\xa6\xfe\x37\x98\x05\xfa\x3e\x28\x03\x4d\xcb\xcb\x27\xf4\x73\x0e\x89\x5f\xd9\x8a\x7e\x76\xb9\xf6\x1f\xad\xe8\x7a\x22\x8c\xcd\x0c\x64\x3a\x86\x24\x4c\x5f\xeb\x24\x2c\xe5\xce\x89\x0f\x83\xd9\xd6\x82\x80\x4d\x3c\xab\x2b\x51\xcd\xc0\xed\xdc\x99\x47\x15\xff\x1a\xa7\x6c\x48\x0c\x87\x40\x05\x17\xd7\xea\x53\x35\x4a\x00\xa7\xf6\xcf\xaf\x5f\x7d\x9b\xa8\xa6\x73\x7b\x99\x64\x3a\xf6\x79\xd7\x9c\x34\x7e\xe4\x8a\xf3\x16\xf9\x30\x6b\x31\x18\x3a\x80\x8e\xbd\x2d\x7b\x4b\xea\xbc\xed\x94\x97\x62\xb1\x69\x09\xdf\x90\x97\x0a\x83\xac\x4b\x13\xcf\x5f\x84\x1d\x11\x2f\x6b\xc8\xfb\x14\x41\x65\x54\x2c\xc5\xb3\x6b\x51\xdd\xce\xf2\x86\x30\x5a\x4b\x39\xe0\x6b\x11\xed\x0d\xad\x67\xf8\xad\x87\xaf\xf6\xb0\xdc\x83\x1f\x10\x69\x14\x25\x71\x2a\x0b\xcd\x39\x66\xd4\x28\x63\xda\xfb\xb1\xa3\x1b\xe4\x40\x10\x81\x77\x9f\xf6\x7c\x70\xe7\xfa\x9b\x6a\x7b\x82\x19\x23\xa3\x73\x01\xa9\x2f\x3a\xf5\x83\x26\x06\x37\x92\xa9\x00\xb0\x22\x6b\x97\x82\x5e\x1d\xc1\xd0\x16\xae\x6b\xf3\x44\xdd\x4e\x82\xb6\x25\xc3\xcc\xe8\xee\x5f\x66\x07\x87\x5e\x86\xa0\x08\xce\xfd\xae\x76\xaf\x2b\x0a\x03\xbe\x91\xb8\xb2\x6e\x8f\xf7\x04\xce\x48\x60\xa6\x81\x9a\xde\xc6\xba\x38\x31\x49\xe5\xcb\xb2\x6c\x2c\xd9\x8b\x7a\xa4\x37\x85\x7f\xc1\x7c\x23\x4c\xcb\xa2\x2d\x23\x13\xd4\xf0\xf6\x31\x84\xf4\xcd\x59\x95\xad\x1b\x19\x72\xd0\xeb\xd5\xe1\x2e\xd5\x49\x99\x74\xa2\x41\xfa\xee\x24\x46\x91\x1e\x0e\xe0\x60\x3b\x3c\x03\xbd\x3d\x67\x95\x5d\x4e\x6b\x3c\x5e\x2b\xbd\x99\x41\x2e\x73\xdc\x94\x71\x2e\xec\x0e\x5d\x41\x5e\x65\xa1\x48\xac\x0b\x56\xe6\x7d\x58\x82\x4e\x0d\xb9\x25\x19\x75\x8d\xb0\x40\xf2\x6e\x23\xf6\xc9\xe1\xc0\xca\xe0\xa7\x44\x70\x50\x2c\x4e\x34\xf3\xb9\xe6\x20\x0c\x81\x6d\x71\x03\x26\x3f\x45\x4c\x37\xea\xb0\xcd\xe7\xa4\x08\x7f\x03\x4c\x5a\x84\xdb\xc0\x23\xc1\x54\x38\x2d\x77\x89\xb5\xcd\x21\xc8\xa6\xdc\xd9\xc5\xd9\xf0\x71\x96\x59\x9c\xc8\x2e\x6e\x4a\xca\xb2\x64\x7e\xfe\x93\xcb\xb2\x2c\x37\xde\xa3\x66\x57\x6e\x10\x66\xe5\x6e\x75\x61\x72\x85\x53\xfd\xb7\xd9\x7e\xf8\xdb\xf4\x68\xcb\xa8\x6a\xcd\xb1\x36\x62\x33\x6d\xda\xa6\xce\xfa\x5d\xc9\x98\x11\xe8\x96\x4d\xf4\x5b\x6d\xe0\x09\x8a\x89\xbd\xe1\x4e\x97\xab\xb5\xe7\x90\x97\xab\xb5\x3c\x41\xb7\xaa\x23\x2e\xf6\xbc\xa7\x5b\x25\x2b\xae\x19\xc5\x44\xa7\xad\x27\x48\x6a\x70\x21\x5f\xee\x70\xe6\x60\x2c\x6b\x9c\xd1\x85\x2e\x37\xf8\x86\x92\xa6\x3e\x61\x41\x89\xce\xfe\xf1\xd3\xd7\x35\x59\xd5\x5b\x58\x03\x5a\xaa\x06\x8e\xe7\x30\xa5\x2d\x0b\x11\x38\x0f\x67\x55\x2f\x79\x16\xef\x71\x26\x04\xab\x9a\xb7\xf9\xa2\x31\xc3\x1c\x84\x1a\xd7\xb9\x86\x65\x6a\xcf\xcc\x8e\x62\xc0\x3e\x1b\xd3\x22\xf3\x15\x5b\x4f\xdc\x68\x50\xc9\xcd\x85\x55\x87\x8b\xf1\x83\x5a\x07\xe5\x77\xe4\x01\xe4\x78\x40\x67\x93\x9a\x21\xb8\x37\x78\x40\xe0\xe9\x55\x20\x55\x41\xce\x39\xf5\x51\xf2\x90\x5d\xcd\x5a\x46\x7e\x68\x5f\x31\x32\x5b\xce\xee\x2b\xf6\x60\xff\xce\x36\xd3\xf5\xab\x4c\x3b\xf3\x23\xdb\xf0\xdb\x36\xe8\x10\x7e\x68\x11\x31\xaf\x3d\xfd\x48\xe8\x15\x60\x4f\xa1\x73\xc8\x43\x00\xa0\x41\x33\x94\x43\x1f\x50\x00\xdd\xb4\xfc\x3e\x54\x57\xfc\xf2\xe9\x79\x9e\xd9\xcf\x4b\xc7\x1b\x7a\x6c\xd7\x1c\x43\x1e\x93\x13\xbe\x3c\x45\xb0\xbc\x1f\xfd\x18\xf6\xfe\x90\x59\x5f\xbe\xef\x2c\x24\x4e\x19\xc6\xaa\x56\x1c\x7f\x33\xd3\xde\xf1\xb3\xf3\x74\x08\x77\xe3\xcd\x1c\x5b\xfa\x90\x35\x0f\x98\xaa\x72\x3b\xa1\x58\x55\xb8\x12\x71\xde\x0f\xc7\xa0\xfe\xcb\xee\x69\xf7\xc0\x36\x8a\xa9\x75\x5a\x7b\xf5\xf7\x11\x83\x02\x36\x1a\x37\xfd\x45\x19\xfd\x3a\x1c\xce\x2e\x4d\x19\x03\x53\x5f\x5e\xff\x32\xfa\x91\x40\x03\xae\xee\x2d\xcf\xea\xe8\x62\x3f\xb6\xe7\xef\xda\xe6\xe1\xbe\xe5\xdb\x3b\xba\x29\xfb\x8f\xfc\x18\xa1\x76\xdc\xe9\xdb\x6f\x9a\x5d\x77\xf7\xac\x62\x2d\xa3\x9b\xaa\x31\xc9\x3c\xb4\x67\xac\x36\xee\x9c\x5d\xda\x25\x04\x4f\x8d\x17\x98\xc4\x15\x7b\xf8\x11\x74\x85\xa4\xf6\x96\x9c\xb3\xde\x70\x01\x9f\x41\x16\xd7\x4a\xba\xbf\xaf\x84\x11\x21\x28\xbb\x3d\x1c\xce\x88\x03\x4a\x81\xd0\xea\x62\x6d\x5d\x25\x6c\xef\x2f\x43\x5e\x3e\x32\xc4\x5d\x3c\x21\x9f\xf7\x07\x34\xf4\xf0\xfc\x3c\x16\x8b\xc2\x36\x46\x94\x14\xf9\x09\x89\x70\x42\x51\xd6\x21\x85\x2a\x26\xb8\xef\x27\xda\x34\x56\xea\xc5\x97\xf8\x02\xf5\x21\x6d\xcb\xf0\x13\x6c\x01\xa9\xce\xa8\xf5\x21\xc8\xb4\xb7\xbe\x28\xbd\xc1\x9e\xd3\x3a\x1e\xeb\xec\x42\xda\x68\x0b\x89\xb5\x02\xef\xa9\x28\x8e\x2e\xd8\x05\x8c\xfb\x88\xfd\x85\x8b\x43\x28\x90\xc4\x09\x4e\x10\xcc\xcb\xb3\x0b\x9d\x0d\x66\x71\xad\xc7\x79\xd9\x3d\x6d\xe8\x7b\xa2\x85\x52\x5f\x95\xb9\xa6\x37\x37\xc6\xc5\x26\x1d\x1c\x7b\x89\x8f\xe9\x02\xb6\x7a\x31\x2f\x59\x4d\x7e\xb6\x85\x41\x06\x60\xdb\xff\x00\x33\xe3\xe6\x5f\x3f\x6b\x77\x4c\x60\xb6\xa8\xea\xda\xfc\xc8\x81\x39\x01\x6b\x74\x14\xc8\xa2\x83\x1d\x1a\x05\xf9\x63\xa7\xc0\xe7\xf3\xf0\xc1\x17\x17\x46\xca\x8d\x65\x52\x75\x75\x01\xbc\x34\xf0\xb5\x72\xc5\x5b\x5e\xde\x91\x87\x19\x42\x50\x7b\xda\x78\xba\x84\xa9\x32\x26\x5c\xf5\x5a\xd0\xfe\x46\x9b\x05\x11\x4c\xce\x6d\x0a\x3d\xe8\xcf\x2b\x14\xc0\xe1\x4c\x4d\xfe\x05\x6f\xef\x5d\x51\xc8\x78\x60\x4c\x17\xf7\xd5\x16\x4c\x9b\x3d\x1f\x66\x84\xa0\x14\xdb\x40\xd7\x55\x5d\x43\x61\x90\x6c\xaf\x6c\xa4\x57\x4c\x5c\x7c\x9d\xe0\x94\xbc\x27\x5f\x57\x10\xc9\x0d\x8a\xb2\xf8\x89\xb9\x24\x07\x66\x10\xf8\x61\xa6\xe0\xc4\xe6\x64\x68\x95\xc8\xb5\x6f\xf9\xe5\xc3\x9f\xbb\x96\x3d\xdd\xd2\xef\x4d\xa1\x03\x25\x91\x43\x2e\xd3\xca\xac\x14\x50\x4a\xfd\x56\x08\xa5\xfe\x47\x0a\xb1\x28\x7b\xd7\x85\x0d\xe0\xc1\xcc\xbe\x41\x79\x3a\x6b\xca\x10\x3b\x65\xfc\x60\x2c\x97\x6e\xf2\x8d\x45\x14\x53\x4c\xc7\x35\x8b\xf0\x69\x16\x6e\xb6\x86\x36\xf8\xb5\x56\xef\x49\x04\x30\xcc\x4b\xc8\x65\xe2\x7a\xfd\x17\xd5\x64\xda\xbf\x4c\x21\xa4\xd9\x7b\xd0\x41\x22\x19\xeb\xa3\xa3\x58\xc2\xf6\x1d\x29\x66\xea\xdb\x19\xc2\xa1\xc6\xde\xa4\xae\xcb\x0d\x62\x16\xea\x9e\x06\x69\xe1\xac\xb5\x40\xcb\xa9\xa9\xb1\x80\xc9\x5e\x16\xbd\x21\x1f\x54\x1b\xb5\xda\xe7\x9e\xdd\x82\xac\x66\xc4\x74\xc5\x83\xfc\x6e\x24\x76\xb4\x09\xe2\x35\xa1\xa4\xa6\x44\xf8\xba\x4c\x2d\x1b\x36\x4e\x58\x21\xc5\x18\x67\x67\x04\x27\x6f\x81\xd9\xbf\x23\x0f\x4b\x61\xcc\xd0\x1c\xeb\x3c\xbb\x95\xa0\xec\xf6\x65\x6c\xac\x96\x46\xdb\xe2\x38\x61\x38\xe9\xde\x21\x59\xf7\x1a\x94\x69\x05\xbd\x25\x16\xb8\x6f\x05\x92\x08\x7f\x28\x13\x68\xdb\x05\x00\xce\xa6\x9e\xaa\x8a\x81\xec\x9c\x5f\xad\xc6\xeb\x19\x1a\xc0\x5e\x38\x03\x66\xd3\x66\x01\x3e\x7a\x4f\x40\xf7\x9d\x46\xd7\x78\x57\x97\x5f\x15\xbd\x7c\x87\x4c\x3d\x6c\x19\xfc\x49\xf4\xdf\xe0\xb1\xa6\x15\xc4\xea\x81\xf9\x53\xb5\xb8\xb9\x81\x16\x37\x37\x33\x84\xef\xaa\x4e\xfd\xb8\xab\x20\xda\xce\x07\xd5\x7c\x95\x2b\x06\x34\x18\x44\xed\x66\xbe\x22\xeb\x54\xdd\x4b\x74\x05\x9e\xae\xec\x30\x59\x38\xa4\x2e\x1f\xd4\x2f\xb5\x71\xe5\x2d\x26\x16\xd2\x6e\x73\xca\x6b\xff\xd0\x7f\xf3\x01\x93\xc5\xb5\xd5\xfa\xe9\xe2\x93\xfd\x20\x09\x9e\xa6\xc7\x05\x7f\x49\xbe\xb8\xa9\x36\xa2\xe5\x0f\xa0\xd7\xbd\x57\xdf\x2e\x67\xe7\xda\xcd\x55\x5d\x44\xa0\x47\x81\x24\xe5\x56\xb5\x74\x6b\x77\x9c\xa2\x49\x1b\xab\x3a\xaf\xaf\x69\x07\xc3\x2f\xcf\x2e\xf0\xf5\xb5\xee\x8d\x42\x5d\x71\xeb\xe5\x50\x38\xf6\x5b\x60\x9f\x51\x3d\x99\x85\x6d\x01\x45\xed\x94\x54\x51\x52\x4c\x16\x0e\x7f\xcb\x16\x83\x13\x9d\x02\x40\x59\x7d\xb4\xca\x68\x3a\x46\xeb\x48\x6a\x81\x24\x90\xeb\x9f\x55\x6e\xc5\xd5\x39\x39\xb1\xd0\x0a\x60\xd0\x68\x11\x2f\x05\xd6\x93\xbb\x53\x8d\x47\x7b\x0b\x0c\xa4\x27\x76\xe9\xbe\x18\xed\xd7\x59\x4d\x4f\xec\xd5\xb4\x97\xc3\xbb\xac\x2f\x7b\xfd\xf7\x2f\x8e\xc7\xfb\x5d\xcb\x6b\xc2\x49\xfd\x59\x47\x32\xc5\x47\x4e\x08\xc8\x9b\x6a\xad\x32\x39\x1c\xa0\x08\x2b\xb9\x52\xbf\x97\xfd\x88\x98\x2b\xb2\x9c\x75\x0f\xf7\x6f\xdb\x26\x7a\xb8\xf0\x52\x2d\x64\x2e\x91\x71\xb1\x32\x93\xcc\xd0\xb6\x37\x55\xcd\x8d\xa1\xde\xe6\x15\x24\xba\x30\xb6\x19\xd2\x3c\xdd\xdf\x71\x72\xb3\x24\xce\xf1\x1c\xc2\x64\x78\xc9\xe7\xf3\x5e\x06\xf4\xbb\xaa\x7b\xe5\xe3\x1b\xb4\xd8\xcd\x3d\xa6\xa2\x2b\x97\x64\x70\xc9\x27\x40\x46\xa6\xed\x54\x93\x8e\x6e\xca\x21\xef\x0a\xdd\x4c\xad\x43\x54\x18\x32\x02\xa4\xbd\xaa\xeb\x9f\xa8\xb8\x03\x86\x39\x43\xc4\x76\xb4\x76\x3e\xdf\x46\xf2\x25\x1d\x61\x1b\xf2\x9a\x08\xab\x79\x6a\x68\x27\x26\x36\x09\x02\x5b\x71\x67\x88\x50\x7f\x97\x67\x17\x58\x6f\x82\xb8\xa2\xd6\x1a\xbd\xa4\x56\xe8\x12\xf8\xc2\xb1\x94\x1d\xfd\x07\x39\x2f\xb5\x2c\x2c\xb5\xcb\xcc\xc7\x9b\x5a\x69\xa6\xb6\xd7\x1d\xc3\xdc\x4c\xc0\x99\x17\xb7\xae\xc4\x92\xba\xe4\xac\x9e\xcb\x68\xbf\xf8\xec\x72\x3e\x77\x73\x6e\xbd\xa0\x48\xff\x41\x4a\x9b\x9c\x35\x92\xf6\x64\x58\x39\xc3\x85\x87\xf6\x19\xea\xc3\x81\xa0\xc5\x75\xa4\x98\x4c\x8a\x58\xb8\x2d\x53\x1d\xe9\x3b\x0f\x45\xd5\x11\x82\x50\xc6\xbe\x97\xe8\xe0\x90\xf4\x5e\x2d\x86\x8a\xef\xa3\xa1\x0b\x82\x56\x7c\x2d\x35\x1a\xed\xf6\x81\x31\x38\xcc\xcf\x18\xea\x1b\x8d\xd2\xc5\x00\x51\x83\xe5\x1d\x65\x75\xf4\xc0\x4f\x21\x7a\x7c\x0f\x87\xbc\x8b\x9e\x6d\x2c\x07\xfe\x4d\xe6\x25\x90\x89\x78\x28\xf2\x10\xfd\x36\xb3\xfa\x4b\xfa\x38\x33\xcb\x58\x2f\x13\x4f\x37\x76\xb8\x1e\x18\xe1\x45\xcb\x5f\x1a\x28\x26\xcb\x4a\x3e\xb9\xb6\x1a\xaa\x5e\x67\xd7\x82\xdc\x6f\xbd\x0b\x74\xb4\x56\xa8\x0c\xf5\xa2\xe5\x1b\xa2\x5d\x28\x4b\xab\x26\x0a\xa7\xf7\xb2\x7b\x2d\xaa\x26\xfe\xf2\xae\x8a\xb4\x25\xc4\x5a\xf5\xd2\x46\x4f\xd9\x43\xb8\xfb\xbd\xed\x89\xc7\x01\xe7\xd8\xb4\x8b\x17\x90\x84\xe9\xeb\xb6\xaa\x9f\xea\x4c\x5a\x6e\x92\xc0\x82\x46\xcd\x3f\xd0\xa6\x79\xdd\xdb\x84\x18\x8b\x68\x80\x40\xda\x22\x60\x02\x20\xb9\x35\xd7\x2c\x2a\xd5\x10\x02\x7d\xec\x93\xad\xdf\xc6\x49\x8a\x6e\x2c\xc6\x34\x45\xf6\xda\x01\x44\x0b\xde\x69\x3c\x23\x1e\xc5\xb8\xfa\x37\x52\xea\x79\x3c\x13\x39\x14\x2b\xcb\xb2\x3a\x1c\xaa\x61\x4c\x3b\x2b\xcb\x6e\x3e\xef\x06\x10\x8e\x8f\xe1\x5a\x06\x73\xce\xed\x4c\x03\x0c\x0c\xbc\x73\x07\xf1\x2f\x87\x4a\x76\x07\x07\xd1\x28\x68\x90\x43\xa1\x3c\x9a\x6a\xf4\x39\xbb\x90\xb7\x44\x4c\xc1\x4f\x28\xf1\xbd\xf3\x9b\xb6\x30\xaf\x65\xa2\xd8\x4d\xf5\x97\xf1\xdb\xa0\xf5\xeb\xa8\x71\x71\x96\xc0\xd2\x78\x54\xc6\x9f\x23\x79\x7d\x57\x75\xaf\x77\x5b\xc5\x9e\x04\xd0\x8e\xe8\x63\xc0\x58\xb8\x5d\x24\x03\xb4\xd4\xbb\xe7\x0d\x11\xdb\x78\xc0\x53\x06\xe2\x43\x03\xc4\x17\x88\x02\x71\xb8\xe5\x3a\x10\xc9\x67\x8f\xe8\xe1\x84\x33\x68\x18\x5b\x7b\x02\xb0\x24\xae\x2c\xc6\x55\x6d\x3a\xe7\xa1\xca\xc6\x39\x46\x08\x34\x21\xa7\x5a\xe7\xd3\x31\x65\x06\x75\x49\x94\x51\x27\x7a\x27\x3d\xfe\x3c\xa7\x75\x84\xb8\xb1\x2a\xca\x0f\x31\x21\x46\x29\x74\xd3\xf2\xa7\x8d\xa5\x03\x60\x8d\xb6\x30\x18\xdb\x22\x81\x2c\x43\xd2\x15\x4a\x88\x07\x9d\x45\x12\xcc\x1d\xef\xcc\x04\x44\x3d\x33\x01\x9f\x60\xc3\xcc\xc2\x2f\xe0\x2c\xb0\x6d\xfb\x66\x87\x83\x73\x09\xeb\xad\x30\xe9\x00\x29\xc6\x3c\x5e\x15\xf1\x1a\xf9\x6c\x71\x7a\xcc\xcb\x8b\x27\xfc\xf3\x90\x5a\x02\xf7\xe4\x7c\x85\xad\xdd\x92\x95\xbd\x36\x2b\xbe\xc6\x34\x61\xcb\x18\x9a\x88\x15\x5d\x1f\x0e\x85\xfa\x4f\x71\x81\xa4\x60\x08\x66\x65\x6a\xd9\x5f\x3c\x69\x3f\xcf\x52\xe2\x68\xdc\x20\xc2\x73\xb8\xb1\x0e\xfd\x8c\x27\x50\xa9\x09\x74\x7a\x02\x9d\x99\x40\x85\x90\x94\x43\x30\x24\x68\x7f\x16\x52\xf2\xc3\x01\x0c\x76\x86\x18\x5d\x59\x18\xdf\xb7\xef\x83\x4d\x79\xc1\xdb\xfb\x57\x1f\x58\xe1\xd5\xa2\xea\xbd\x53\x23\x0e\x37\x84\xac\xa0\x3d\x02\x59\x9c\x5d\x20\x93\xa3\xb6\x03\xb5\x67\x96\x02\xab\x56\x52\x57\x6e\x80\xe3\x6d\x9d\xfd\xee\xf5\x19\xb1\xc1\x87\xde\x02\xd3\xdb\xb1\x27\xc4\x45\xe7\x3d\x71\x69\x21\x57\x17\xeb\x49\x76\x91\xc0\x71\xc6\xe1\xa0\xd9\x6d\x78\xc2\xd3\x5e\x59\xc9\x93\x5e\x33\xa0\x29\x18\xa4\xca\x52\x6f\xa1\x7a\x96\x7d\xde\x59\x98\xa1\x7d\x1e\x64\x70\x5f\x29\x60\x44\x97\xbc\x0d\x7d\xf4\x5d\x66\xc6\x4c\xfb\xee\xad\x27\x8a\x06\x8d\x75\xc3\x5f\xab\x1d\x71\xfd\x07\x7d\xaa\x8d\x20\xbd\x88\xa3\x1e\x34\x09\x42\x4a\xec\x8a\x3e\xd4\x29\x6c\x7b\xa1\x9a\x51\x33\x1d\xb4\xed\xa5\x95\xf9\x5c\x9c\x9f\x4b\xe8\x2b\xb7\xc2\xd4\x4f\x41\x1d\x6f\x12\x1e\xe7\x50\xee\x31\x83\xe5\x76\x07\x62\x03\xf8\xb9\x30\x78\x39\xd2\x6a\x68\x2a\xa1\x7b\x69\x0a\x67\xed\xb0\x69\x83\x70\x7b\xaf\x21\x08\xc6\x1f\x99\xdd\xf6\xa5\x25\x8b\xa1\xb3\x07\x1a\xdb\x27\x1c\x1c\xa7\x0c\xbf\x02\x87\x69\xa4\xeb\x7d\xee\x3e\x54\x22\xe5\xd1\x0b\xc2\x65\xc2\x9d\x74\xd6\x81\x37\xe8\x63\x08\x90\x3d\x52\x0e\x1e\x6a\x03\x03\x0e\x71\x29\x76\x60\x73\xb2\x07\x38\x10\x75\x6b\xaf\x86\x19\xcd\xf5\x84\x1f\x0e\xc5\x91\x36\xc0\x36\xef\x0a\x7f\xfb\x3b\xa6\x19\xef\xad\xf7\xd4\x1e\x78\xf6\x65\x48\x5c\xa5\xc4\x3a\x29\xdc\xa9\x50\x90\x83\xe4\xe3\xf1\x88\x3e\x4c\x89\x12\x5c\x1f\x6f\x88\x86\xe7\x74\x1c\xe3\xad\x41\xf5\xf8\x85\xe1\x32\x35\xf8\x0d\x38\xb2\x0c\xf5\xa9\xbd\x2a\x5c\xca\xf3\x93\xf0\x46\x5d\x78\x79\x5c\x19\xc3\x81\x5f\xf6\xd5\x08\x74\xd3\xdd\x1f\x25\xc3\x7d\x1a\xb9\x8f\xae\x83\x98\xc2\xdc\x7b\xc2\x12\x2b\x97\xc2\xf0\x27\xdd\x5f\xb8\x12\xe3\x55\xef\x73\xf8\x8c\x9e\x7b\x67\x4a\x76\x1b\x36\x44\x01\x46\x16\xfd\xb8\x7d\x2b\x7e\xc9\x16\x1c\x0e\xbf\xe8\xb3\x5f\x71\xe6\x23\x59\x19\x12\x15\xfc\x02\xc4\x19\x87\x1b\x3a\x89\xe2\x67\x6e\xe5\x1c\xda\xc4\xc7\x74\x98\x9d\xcb\x9f\xcd\xff\x47\x8f\xe4\x18\x70\x7b\x80\x8b\x57\x76\x92\xe4\x94\x39\x20\x96\x09\xcd\x9d\x93\x89\xe2\x74\x06\x77\x60\xe8\xa6\xc8\x53\xd2\x78\x8f\x5d\xa6\x91\x61\x4a\xfe\xcf\x5d\xde\xc8\x3d\xf0\x88\x1b\xb1\xbf\xe0\xde\x25\x94\x53\xaf\x1f\xe7\x75\x9f\xb5\xf7\x5b\xf5\x5d\xf3\x10\x82\x25\xc7\x22\xc5\x3a\x96\x18\xcd\x8c\x38\x8e\x87\xe4\xd0\x64\xa5\x93\x9e\xe0\x7e\x45\x9c\xc3\x78\x6a\x0b\x98\x9c\xba\x41\x5e\x1b\xb2\x62\xeb\x2c\x93\x97\x25\xd9\x39\x38\x28\x50\x73\x25\x6d\x32\x25\x66\x4a\xb9\x1c\x99\xde\xa3\x0e\x7e\x34\xc7\xf9\xbc\x68\xfa\x33\x0a\xc1\x3a\x32\x39\x6c\x26\x87\x64\x2c\x2a\x39\x81\x03\xe5\x95\xa2\xbd\x06\x4e\x36\xd6\xcd\x8d\xa4\x95\x45\x0f\x4d\x1e\x47\xf1\xcf\x75\xdb\x3f\x90\x89\x3b\x4e\xa4\xc2\x09\x25\x59\x0d\x51\xa7\x5b\x3e\xbb\x9c\x78\x35\x07\x24\x2b\xee\x71\x83\x8a\x75\xb3\x52\xbd\x3a\x79\xda\x26\xa5\xf8\xb9\x49\xd8\xfb\x80\x9c\xbb\x69\xb7\x0f\x05\x0a\x0a\xc7\x5e\x3c\x61\x9f\x8b\xd0\xbb\x3b\x65\x33\x0a\xc0\x30\x99\x3d\x57\xfb\x68\xf6\x96\x47\xf1\xab\x09\xed\x1e\x8b\x6b\x5b\xac\xd1\xe3\x09\xb8\x98\x18\x1f\x3f\xa3\x11\xf8\x9a\xb2\x77\x9d\x03\xbc\x56\xc3\x13\x19\xd6\x79\x74\xf2\xaf\xc9\xa1\xef\x1a\x8f\xde\x98\x06\x41\xb4\xc7\x89\xcd\xf0\x40\x90\xec\x3d\xd9\xcb\xe3\x4c\xd4\x5e\x0e\x8f\x65\x67\x33\xa0\x5e\x26\x72\x4c\x33\x12\x7c\x9c\x57\x5e\xc3\xe7\x39\x35\x82\xfd\x32\xa7\x12\xcf\x7c\xa4\xd5\x35\xf9\x8f\xb4\xae\x1b\x3e\x7a\x9d\x5a\x71\x3c\xb0\x7b\xf6\x1d\xbb\xb2\x9e\x51\x25\x5c\x55\xdf\xe2\x42\xa4\xc6\x60\x6f\x20\x3d\xbb\xc4\x4c\x9d\x04\x28\x15\x1e\x78\xc7\x85\x2a\x23\xe3\x1d\x17\x68\x97\xa1\xe4\x0d\x77\x38\xa7\x1b\xeb\x1d\x81\x77\x58\x20\x57\xd5\x1e\x4a\x35\x87\x04\x61\x3e\x3f\x1b\xd9\x34\xb4\x57\xfd\x1a\x73\xab\x73\x36\xb0\x5d\x40\x40\xc2\x6a\xad\x63\x90\xd2\xb1\x5b\x2c\x90\x84\x85\x68\x67\xbd\x50\x17\x08\x4f\x1c\xc5\x8f\xd0\xdf\xba\xf6\x99\x3f\x16\x26\x28\x43\x7f\xde\x95\xb4\x48\x5f\xe0\xa6\xac\xe6\xf3\xca\xfe\xbe\xa2\x85\xfb\x5b\x47\x47\xe1\x5d\xd9\x5c\x35\x0b\x30\xdc\xc3\x4c\xbb\xf9\xbc\x83\x9f\xf6\xff\xb3\xb2\xdc\xcd\xe7\x05\x03\x3a\x2b\xed\xb4\x86\xf6\xf4\xec\x12\xd9\xaa\x0e\x9b\xd2\x04\xbf\x69\x40\x1f\x0e\x71\x1c\x98\xd9\x9a\xf9\xfc\xc2\x35\xb1\xf5\xac\x4f\x3d\xb6\x43\xaa\xb3\xcb\x88\x57\x1e\x50\x36\x5e\x8e\xab\x2c\x37\x5a\x45\xa1\xd0\x82\x59\x76\x79\x44\x55\x77\x66\xf5\xe6\x75\xef\xa2\x4f\x7e\x6b\xb2\xf7\x13\xaf\xb6\x5b\xc2\xf3\x91\xcc\x75\xe0\x15\x58\x2f\x68\x8d\xeb\xc5\xa6\xa1\x84\x89\x97\xb5\x93\x49\x90\x94\x4d\xbb\x31\x7e\xf1\x76\xd2\x68\x2f\x43\x04\x07\x92\x64\x52\x78\x40\xb2\x69\x6d\x01\xdf\x38\x47\x8a\x41\x5b\xb8\x0e\x28\xf0\x0f\xa2\x0b\xfa\xfb\xbc\xdd\xdb\x5d\x2a\xa1\xab\x7e\xde\x9e\xed\x8c\x8f\x43\xfd\x7a\x2b\x5f\xd2\xab\x7f\xe1\xfa\xd0\x54\x2c\x94\x78\xc8\x55\x4e\xcd\x68\xe4\x93\x61\x43\x45\x4e\x48\xe8\xb5\x3e\x45\x0c\x3b\x19\x3b\xb3\xba\xf2\x4b\x50\xdc\x65\xd5\x2f\xe1\xd2\xf2\x0d\x96\x19\xa0\x45\x0b\x1c\x54\x4c\xc4\xdf\x8c\xb2\xcd\x1d\x11\x2f\x75\x54\xc6\xd0\x2c\xed\x89\x19\xd5\x7c\xde\x67\x9e\xf5\x51\x21\x87\x05\xe4\xb8\xea\x74\x50\x69\xfb\x48\x95\xed\xaf\x85\x60\x6f\xe6\x70\xb4\x86\x37\xf0\x97\xa3\x97\x43\x1f\x34\x68\x0c\x32\x07\x7b\xdc\xe0\x36\x84\xf2\xf9\x3c\x15\x79\x21\xca\x70\xc9\x7a\xb4\xe1\x06\x59\x10\x41\xea\x97\x1c\x44\x4b\x2d\x4a\x0d\xe0\x49\xf0\xd9\x18\x3d\x19\x58\xc5\x31\x59\x70\x78\x25\xae\xcd\x18\x2d\xeb\x33\xfe\xa3\xb4\xa8\xf7\xdc\x73\xf6\x67\x19\xc0\x5c\xa5\xd2\xc2\x72\x00\x0e\x67\x65\xee\x38\x0d\x83\x2d\xd3\x78\x1c\x8a\x06\xbb\xd3\xd5\xf6\xd4\x99\xa3\xca\xcc\x8f\x43\xa1\xfb\xab\x09\xce\x5e\xe6\xc8\x1d\x41\x8c\x9c\x92\x6c\x4c\xb5\x36\x80\x83\x21\x1e\x0d\xeb\xdd\x8e\xcc\x65\xc8\x9e\x18\x76\x3e\xd0\xe6\xf8\x85\x3b\x74\xcc\x07\x9e\x87\x12\xec\xe3\x98\x9e\x5e\xc6\x9b\x30\x16\x42\x71\x3d\x24\xc7\xf5\xfc\x1a\xf5\x50\xbc\x43\x83\x9c\xc5\xaf\x20\xbe\x17\x28\xda\xe1\x23\xd3\x3c\xd9\x98\x9b\x6c\xec\x68\xe3\x41\xb6\x49\xde\x12\x01\xab\xf0\x9a\xaa\x7d\x1c\xa2\x9f\x39\x78\x45\xac\xa6\x0a\x28\x12\x84\xee\xe9\x80\xa5\x97\x35\x61\x82\xde\x50\xc5\x1c\x20\xe3\x17\x3b\xf0\x99\x39\xca\x79\x81\x0a\x86\x0b\x88\xbc\x09\x71\x2a\x4c\xe8\x47\x20\x1e\x85\x22\x1e\x34\x80\x7a\xa7\x9e\xb1\x80\xbe\x44\x12\xbe\x8a\xb0\x88\x3d\x57\x74\x50\x92\xe8\xf1\xcc\x3a\x43\x99\xa9\xba\xd7\x7d\xdb\x32\xa2\xd1\x86\x9b\xc9\xf9\x0c\x32\x45\x4f\xaf\x17\x63\x7a\xe2\xa5\x6a\x0a\xc6\x2d\x68\x8d\x10\x36\x66\xbb\x71\x66\x8a\x7b\xbf\x89\xfc\x6b\xcb\xd4\xd7\xbf\x94\xa9\x1f\x61\xdb\xa3\x70\xc5\xc8\xc1\x53\xdd\x35\x3a\x31\xa2\x8f\x23\x89\x1a\x6c\x09\xab\x29\xbb\x75\x6f\x75\xe3\x6e\x54\x2a\x48\x66\x62\x43\x85\xb3\xf1\xc3\xd9\x19\x58\x1f\xbd\xc1\xd1\x73\xd2\xc3\xaf\x30\xee\xa7\x16\xd8\x78\x01\xb1\x33\x78\x8e\x31\x77\x09\xcd\xc6\x79\x42\xa0\x14\x23\xfe\x3d\xe3\x3c\x5d\xa2\xe3\x34\x07\x50\x93\x60\x07\x20\x2b\x9c\x3c\xc2\xee\x98\xbd\x4b\xbd\x2b\x87\xab\xe7\xd4\xdb\xc3\xe1\x90\xd8\x9c\xfb\x7c\x94\x05\xac\xc7\xad\x1d\xb9\x06\x8c\x6b\xcf\xe4\xc8\x75\x90\x54\x84\xc8\xed\x94\x77\x9f\x47\x98\x83\xe3\xfc\xc8\x8e\x73\x7c\xf9\xdf\xee\x1e\xc8\x7a\x00\xe5\xa7\x9f\x3d\x8e\x6e\xd7\x1e\x33\x87\x5f\x23\x1b\x4c\xc2\x68\xf2\xa1\xcd\x78\xf2\xd9\xa5\xf1\x19\x1a\x3b\x7f\x97\x91\x1b\x5b\x8e\xed\x1a\x55\xcc\xa7\x0c\x70\x06\xa5\x7d\xca\x1f\xe1\x59\xf5\xcf\x2e\x41\xb3\x65\x67\x2b\x10\x9a\x90\x12\xea\x77\x6f\x2a\xe1\xca\x4e\xc4\x31\xe1\x03\x0c\xf4\xc8\x59\x18\x37\x0c\x1e\xe1\x37\xb1\x40\xa6\x6a\x9b\xb0\xc6\x8f\x28\x71\x73\x02\x68\xee\x78\xa7\xcc\xa9\xe5\x0e\xce\x03\x67\x76\x5c\x81\x1e\xa5\xf6\x4b\xd7\x98\xaa\xe3\xcb\xd5\x3a\xf4\xfc\xcc\xa3\xba\x68\xb5\xa6\x51\x17\x81\xd1\xf8\xfb\xd9\xe5\x13\xfe\x45\x79\xf1\x84\x7f\xf6\x19\x3a\x26\xd3\x83\xd7\x4c\x64\x14\xc1\xd4\xa7\x99\x65\x9f\x53\x6f\x18\x19\x74\x1f\x63\x6b\xcc\x42\x85\x49\xe2\x57\x07\x4a\xe7\xb3\x32\x49\x91\x05\xe6\xf1\xf9\x5c\x2b\xb0\xcd\xb9\x0b\x56\x7b\xf1\x44\x78\xdb\x8f\xb0\x9e\xa4\xbc\x24\x2b\xb1\x1e\x21\x75\x7c\xdc\x1f\x8d\x67\xb4\x32\xfc\x98\x8f\x1a\x47\xc6\xa3\x39\xb9\xbb\x8f\x6c\x88\x94\x43\xf7\xcf\x80\x38\x41\x4e\xd0\x9a\x9e\x26\x3f\x64\xf1\xeb\x31\xa3\xc6\x9f\x9e\x36\x68\xc2\x79\xa7\x7c\xf7\x30\x37\xac\xf9\xda\xfe\x91\x33\xa9\x0c\xc8\x20\x17\x9e\x70\xd0\x24\xc3\x41\x87\xac\x32\xe9\xb1\xca\x24\xc7\x2a\x93\x01\x56\xd9\xd5\xec\x77\xdc\x32\xe2\xb6\x28\x24\x38\xfa\xf1\x20\x0d\xa6\x43\xe9\xc4\xdc\x48\xd2\xc2\x2b\x8f\x62\xad\x57\x6c\x6d\xb8\x6b\xf5\x17\xad\x91\xec\xf1\xd7\xe1\xd9\xb3\x7c\xf5\xa8\x05\xd1\x73\xd7\x77\x31\x4f\xed\xec\x63\x81\x6e\x41\x73\x9e\xfd\x58\xae\xeb\x70\xd6\x49\x94\x90\xad\x04\x19\x91\xc3\xee\xb4\x46\x39\x2f\x83\xcc\x80\x62\xb1\xdb\xde\xf2\xaa\x26\x2f\x5a\x6e\x43\xfb\x8b\x18\xb1\xa3\xef\xca\x7e\x1f\xe6\x97\x8c\x2a\xa3\xb8\x68\x95\xfc\xf4\x56\x64\x2d\xbd\x95\x3d\x8c\xb4\x18\xfa\x62\x12\xd7\xa9\x08\xeb\xea\xee\xd5\xe5\x22\xc0\x37\x11\xce\xd2\x89\x3d\x82\x23\xa8\xce\x3d\x73\xc6\x23\x37\x7f\xbf\x71\x36\xa4\x72\x18\xcb\x82\x0e\x9f\x93\x1b\x18\xab\x65\x36\x31\x6a\xf8\x9d\xcf\x79\x08\x83\x6a\x56\x72\x45\xd6\xe5\x40\x15\xff\x92\xc7\x43\xf9\x54\x67\x31\x89\x0d\x28\x0c\x43\xb8\x1d\xf8\xcc\x04\xfc\x8c\x7f\x6d\xb3\x6e\x07\xb6\x4a\x9d\x6e\xed\x4a\x1d\xcf\xba\x10\xae\x22\xfa\x52\x3d\xd8\x04\x0f\x64\x41\x43\x34\xc1\x0c\x13\xe4\x23\xf0\x25\x54\xcf\xbc\x29\x2f\x4d\xac\xee\x36\x95\x41\xad\xc2\xd3\xd1\x28\xa7\xc3\x8f\x90\xd5\x0c\xa1\x53\xff\x27\xd1\x86\x7c\xf0\x8c\x5c\xe7\x7d\xc2\xe2\xf0\xc5\x6c\x38\xa2\xa5\xd5\xf1\x91\x4b\x7e\xfa\xac\xf5\xf1\xa8\xc0\xe8\xc5\x8f\xde\xde\x74\x49\x67\xd7\xd7\x3e\xb1\x59\x2f\x7c\xf2\x45\x43\x6f\xef\x7c\x05\xce\xb4\x41\x9d\x9a\xd8\xae\xbb\xcd\x1d\xa9\x77\x0d\xa9\xcd\x94\xd2\x09\x99\xf4\xd5\xd9\xc7\xb4\x65\xcf\xda\xfb\x7b\xda\x7b\x5f\x53\x4e\x36\xa2\x79\x30\xd9\x00\x03\x62\xf8\x52\xe8\xa0\x79\x5d\xc9\x3e\xb8\x24\xe3\xcd\x18\x3e\x81\x22\xaa\x3e\x43\x10\x5c\x5c\xa2\xfc\x42\xb1\x2a\xc8\x24\xee\x57\x5c\xd5\x85\xc1\xcc\x3d\x55\x23\x8a\x96\x2f\xd5\x88\xc5\x9e\x91\x9f\xc5\x32\x18\xdc\xa7\xfe\x7f\xc2\xbd\x7f\x8a\x66\x8e\x9e\xb0\xcf\x7f\xff\x24\xca\xd0\x05\x39\xfb\x14\xdd\x88\x7c\x6b\x96\xf0\x24\x1f\xea\x41\xfd\x2d\x64\xc3\xbd\xc9\x8a\x9e\x9f\xaf\x27\x54\xcd\xf5\xfc\x5c\xaa\xf9\xf2\xf3\x73\x29\x91\xcb\x4b\x6c\x72\x30\x10\x5c\xb7\x8c\x2c\x9d\x30\x49\xa4\x94\x48\xca\x14\xfd\x8c\x12\x28\x46\x3f\x75\x3f\xd7\x0e\xfb\x80\x91\xc8\x62\x7d\x14\xfd\x98\xc5\xf9\x30\x43\x9b\xc7\x5b\xa7\x19\xd1\x38\x1b\xfc\xb4\x18\xe3\x1e\x69\x14\x76\x91\x94\x1d\x11\x05\x10\xdd\x1c\x9b\x11\x85\x3a\xfa\xb3\x0d\xae\x1b\x29\x8f\x10\xe7\xba\x57\xd3\xb0\xc2\x44\x32\x29\xcd\x66\x01\x9f\xe3\xed\x0a\xc2\x4b\xe6\xd7\xa6\x04\xc3\x5f\x00\xa5\x7c\x75\xb6\xce\x95\x6d\xac\xba\x8e\xde\x1a\xdf\x42\x38\x44\x38\x6a\xd6\x3f\x98\x36\x15\xb4\xe6\x06\x9e\xf5\x4b\x3c\x60\xb2\x48\xa2\x14\xcd\x79\x54\x8c\x71\xea\xe2\x06\x8c\xa0\xb3\x03\xd4\x25\x2b\x8c\xc6\x8f\xcb\x0f\xb4\x69\xf4\x21\x0c\x0a\x44\xf4\xa8\x80\x7e\xe1\xa7\x87\xd3\x07\x5a\x9f\x7b\x57\x75\x99\xa9\x86\x39\x22\xce\x5c\x58\x64\xb8\xd6\xe8\xa2\x4d\x5f\x07\x05\xce\x82\x02\x2d\xaa\x5f\x85\x04\xee\x87\x1e\x64\xb5\x96\xd4\xb9\x1e\x44\xb9\x29\x72\xe3\xc6\x6f\xfa\xeb\x4e\x5b\x40\xca\xf1\x7c\xd1\x12\x8f\xb6\x17\x83\x48\x23\x5d\xab\x5e\x3d\x0c\xfb\x02\x04\x33\xd7\x8a\xf4\xbb\x27\x38\xc2\x57\x83\x51\x8e\x9a\xb2\x1b\xca\xef\x49\x1d\xcb\xe7\xd9\x49\x38\xe2\x3b\x3c\x9d\x80\x3e\x4b\x73\xee\xf6\xfd\x2b\x24\x8e\x7f\xee\xa1\x4e\xf8\xba\x8e\x0d\x3b\xf1\xad\x2a\xf3\xb8\x9b\x0a\xd5\x8f\x62\x86\x82\xac\xcf\x8f\x28\x3b\x06\x09\x63\xc1\x17\x2a\xea\x7f\x45\xd7\x36\x69\x50\xff\xcd\x24\x77\x0b\x29\xce\x90\x9a\x1a\x78\x2d\x92\x52\x0e\x9f\xe7\x34\x8a\x30\x53\xd5\xa5\x77\x77\xb9\x64\xf5\xc1\xc1\xd4\xb7\x97\x48\x75\x02\xae\x0a\x06\x5b\xe3\xaa\x24\xab\x76\x3d\xa9\x56\x17\xeb\xb2\x2c\xab\xd5\xe5\x7a\x3e\x37\xd9\x3a\xf8\xaa\x5d\x4b\x99\x2b\x40\x93\x4c\x4f\x13\x31\xd1\x1f\xdf\xe7\xcf\x4f\x31\xc1\x25\x4f\x33\xc4\x70\x2f\x31\xc7\x90\x99\x29\x27\x38\xb4\xd1\x5a\x19\xc2\x55\x79\x81\xbb\xb2\xb5\x0b\xab\x3e\xef\x9e\x54\x76\x61\x4d\xd9\xae\xaa\xf5\x84\xae\x9a\x75\xb9\x22\xab\x66\x8d\xd9\xaa\x59\xaf\x7d\xb9\xd1\x5c\x20\xbc\x3e\x42\x32\x5b\x29\x07\x56\x9a\x5e\x10\xe9\xc5\x94\xa7\x76\x60\x32\xea\x13\xb4\x3e\xb5\x4f\x8e\x90\x53\x8a\x1b\x5d\x5d\x18\x0f\x11\x58\xf5\xe3\xe3\xe1\xcc\x7f\x19\x02\xe4\x2e\x31\x5f\x05\x60\xec\x70\x46\xa4\x75\x90\x7a\x60\x22\x73\xd4\x66\x7f\xca\x64\x91\xac\x69\x6d\xee\x9a\x3e\x65\x73\x77\xef\x20\x31\xcb\xb1\x8d\x21\x00\xf4\x6a\x8d\x96\x16\x5c\x07\xa1\x02\xf7\x2f\xbd\x27\x23\x42\xe3\x3c\xba\x5e\xd6\x09\x65\xc1\x9e\x37\xb2\xcc\x13\xc2\xbd\x8b\x56\x94\xe1\x85\xaf\x33\x5c\x38\x45\x67\x8f\x87\xf0\x69\xa5\x87\xd8\x87\x41\x7a\x1b\x56\x3f\x1f\xdb\xee\x61\xc6\xe2\x51\xe8\xc0\x65\xe6\x29\x5c\xcc\x7f\x1a\x28\x2a\xd4\xa7\x90\x3a\xdd\x8e\x56\x47\xc9\x5c\x39\xf1\xa8\x0c\x79\xee\xfb\x09\x77\x56\x84\xc4\x00\xa4\x60\x29\xa3\x2c\x9c\x26\xa5\xd5\xc8\x64\xd2\x0e\x30\xb7\x2a\xed\x30\x47\x68\x54\x83\x3c\xd3\x4b\x3f\x6a\x59\x80\xd6\xf8\x9e\x8a\x9f\xaa\xee\x7b\xa8\x1a\x4c\xa2\xf2\xd6\x7d\xa2\xd1\xdf\x42\x5d\x84\xc2\x71\x44\xc8\x2b\xac\x7a\x94\x98\x96\x17\x4f\xa8\xbf\xdf\xa8\x0b\xd0\xd4\x29\x9a\x56\x74\xbd\x9e\xcf\x0b\xf3\xd7\x20\xd5\xd6\xaf\x6d\x40\xc5\x00\x4e\xc9\x24\x1d\xc3\x2f\xda\xf1\xb8\x84\xff\x18\x68\x63\xf7\x4a\xe1\xbb\xc8\x15\xda\x09\x40\xb2\x22\x6b\x25\xd0\x97\x65\x59\x90\x29\xf5\x55\xae\xd2\x35\x5d\x0d\x02\x83\xac\x97\xfe\x10\xae\xc8\x1a\xb9\x9b\x33\x33\x96\xbc\xbe\xd6\xb5\x5b\x88\xd3\x35\x9c\x85\x3e\x61\x75\x49\x40\x8e\x51\xfd\x07\x40\x0b\xa6\x56\xa5\x53\x8a\xfa\x5f\x7e\xa4\x45\x28\xb6\xfd\x94\x39\x1c\x0e\xa3\x03\x46\xaf\x81\x53\x3e\x5a\x71\xcf\x51\x7c\x53\xd3\x2f\xba\x2d\x22\x79\x6f\x40\xdb\xe0\xba\xe8\xa9\x21\x34\xe1\xe4\x3b\xb6\x50\x97\xfb\xdb\x1d\x67\x8a\x8a\x9b\x56\xc5\xcc\x0c\xa9\xd3\x72\xe2\x19\x90\x3b\xb6\xdb\xbe\xe2\xdb\xbb\x8a\x45\x1a\x07\xc8\x3b\x3c\xf2\x3e\xd6\xd5\x5f\x57\x4d\xd3\xd7\x5a\x14\x70\x6c\xc3\xac\x61\x03\xb6\x93\xf3\x73\x81\x14\xe3\xb9\x12\x6b\x28\xe0\x00\x37\x0e\xfb\xb1\x23\x2e\xf5\xf6\xd9\xa5\xad\x3b\x72\x21\x0b\x82\xd0\x48\x47\xa1\x11\x86\xc7\x80\xe7\x0b\xe7\x84\x2d\x07\x00\x08\xe7\xda\xbb\x6a\xe7\x8e\xa3\x4b\x56\xaf\x4e\x5b\xf9\x85\xf0\x9d\xa2\x8c\xc0\x7f\xd1\x57\xaf\x2d\x6a\xda\x6d\x5a\xc6\xc8\xc6\x26\xdd\x4e\xee\x56\x73\x50\x92\xeb\x55\x26\xa0\x89\xb3\xae\x46\xaa\xc8\xa8\xe1\x69\x9d\x0f\x6d\xa1\x2d\x6c\xb7\xc6\x26\xe2\xe9\xe6\xfc\x1c\x0c\x06\x26\xb4\x49\x75\x83\x22\x95\x05\x7f\x22\xfa\x89\x3a\xc4\xa2\xbb\xa3\x37\xa2\x40\x13\xe3\x6d\xc1\xbc\xd9\x81\x96\xa7\xea\xbf\x0a\xb4\xb0\x8a\xa9\x42\x31\xcb\x74\xc1\xc8\xcf\xa2\x40\x4f\xce\xda\x45\xdd\x32\xf2\xc4\x3f\xb2\xa1\x1c\xed\x02\xb4\x42\x93\x6a\x4a\x59\x27\x2a\xb6\x21\xed\xcd\x74\x3b\x9f\x57\x66\xba\x9f\x83\x2d\x55\xcf\xa9\x42\xb8\x72\xab\x40\xd2\x57\x5c\xd6\x65\x1f\x80\xd8\xe6\x72\x27\x65\xa8\x94\xf3\x66\x70\xaf\xb3\x24\xe9\x11\x34\x37\x3f\x8e\xce\xc6\x54\x0d\xe8\x1d\xf2\xf2\x7f\x5f\xd9\x90\x93\x45\x32\xea\x19\x75\xe3\x44\x83\x91\x9c\x64\x4c\xf4\x9c\x78\x4c\xd7\xf2\xd3\x4a\x98\xd4\x22\xf7\x18\x4c\x56\x06\xd1\x50\x56\x1d\xa7\x07\xac\xb5\x65\x2f\x3b\x4e\xad\xed\x78\xa1\x40\x3e\xb6\x64\xa0\xe3\x9d\xeb\xd4\x2f\x53\xbb\xb7\x99\x14\x58\xd9\xc8\x4a\xb0\x25\x27\x1a\x96\x5c\xc3\x91\xda\xe8\x93\x24\x0d\x55\x56\xbf\x48\x70\x2f\x5d\x55\x36\x0d\x98\xc9\xd6\x95\xe2\xd7\x10\xa0\x72\xda\xa0\x62\x58\xcd\x31\x06\xc4\x7e\x73\x0d\xd2\xcc\x64\x3c\x80\x33\x63\x10\x79\x4d\x19\x35\xa4\x52\x97\xfd\x35\x25\x46\xbd\xfd\x69\x2f\xa3\xca\x06\xc4\x5e\x10\x7b\x5f\xac\x8d\xe3\x90\x46\xda\x84\xda\x98\x96\x2c\x10\x51\x62\x65\x0a\x57\x34\x86\x8d\xa9\x5b\xb8\x92\xd0\x33\x97\x04\xee\x52\xa5\x45\x53\x5e\x3c\x69\x3e\xb7\x95\x3e\x9e\x34\x56\x88\xdf\x95\x9d\x92\xdc\x37\x25\x59\xed\x74\x69\x43\x5a\xcf\xce\xca\x72\x67\xc3\x98\xda\xd5\x6e\x7d\x38\xd0\xd5\x6e\x8d\xef\xac\x2d\xd7\xa4\x86\x75\xeb\xad\xaf\x6a\x30\x1f\x41\xe8\x98\x49\x14\xeb\x4b\x1a\x39\xcf\xc5\x84\x5b\xdc\xe1\x0d\x9a\xbc\xe5\xa4\x7a\xa7\x93\xc8\xfa\xf4\xbf\xf1\x17\x9e\x45\x55\x5f\xe0\xe2\xce\x94\x17\xdb\x21\x74\xc4\x47\xf7\x6e\x24\x3a\x22\x1c\xd9\xda\xc1\xe2\x71\xad\xcc\xf1\x1b\x8c\x6a\x73\xda\x8a\xd5\x6e\x5d\x6e\xa4\x0e\x31\xb3\xfc\xe9\xc6\x1d\x2c\x79\x44\xb6\x27\xe5\xd9\xe5\x11\x26\xc1\x95\xe8\x19\x8f\x59\x80\x14\xb2\x64\x3e\x77\x22\x9d\xcc\x93\xba\xd2\x55\x38\x73\x85\x1e\x73\xc7\x7e\x32\x4a\x3b\x40\x20\x1e\x31\xf3\x9a\x2b\x7b\xc5\xd7\x13\x76\xe2\xbc\x99\x9f\xb7\x1c\xe0\x6c\x4f\x61\xa6\xee\x5d\x4d\x5c\xf2\x11\x97\x47\xfc\xf2\x44\xf9\xc5\xfe\x1e\x38\x4d\x35\x53\xcd\xfe\x3c\xb7\xd5\xc4\x03\xbd\x36\x68\x55\x2e\x64\x6c\xe3\xb0\xd4\x66\xa5\xf5\xa4\x86\xd5\xc4\xbe\x18\x61\xef\xcc\xbb\xfa\xa3\xbb\x72\x44\x79\x06\x9c\xd0\x6e\x3e\x2f\xaa\xde\x15\xef\x8b\x18\x18\x6d\xc8\xb0\xbb\xc1\xb8\x86\xc4\x6a\x7e\x1b\x50\x8c\xd2\x92\xac\xda\xb2\x5b\xb1\xf5\x5a\x6f\xe1\xce\xe6\x03\x38\x2b\xcb\x6a\xd5\xae\x0f\x07\xeb\x48\xf2\xd5\xdf\x77\x55\x53\xf0\x55\xbb\xc6\x14\x1d\x0e\xc2\xe9\x75\xdd\x21\xe9\x15\x67\x7a\xf3\xf9\x27\xfb\x98\xeb\x94\xcb\x4f\xac\x30\x28\xbf\x78\x13\xe4\x2f\xbe\xd7\x59\xcd\xc6\xd2\x2b\x42\x16\x97\x38\xf9\xa6\x51\x70\x8d\xc5\x57\x90\x13\x5d\x23\x91\x24\x0b\x47\xe0\x42\x3c\x2a\x37\x26\xa3\x7f\xf4\xb0\xc6\x64\x11\x84\x6b\x6c\xe1\x67\xf0\x7e\x97\x58\xa8\x40\x43\xf4\xa2\xe5\x50\x1f\x20\x42\x7d\xf5\xf0\xe3\xa5\xbd\xf7\xa5\x5d\xb3\xf9\xd0\xa3\xec\xe6\x49\x66\xf3\xb0\x86\x06\xe4\xfd\x77\xa5\x37\x58\xcb\xef\x8d\xf3\xb2\x56\x1f\x85\x3a\x97\xc0\x8b\x3d\xe1\x58\xc8\xcf\x82\x57\x1b\xa1\x7a\xac\x6b\xcb\xc7\x77\x41\xe5\x12\xed\xb9\x40\x30\x43\x12\xbf\x83\x2c\x13\x69\x75\x3d\x9f\x75\x7a\xe6\x56\x36\x2b\x7d\xb1\xd8\xbb\xaa\x7b\x6d\x9f\x9b\xfe\x35\x4f\x00\x3e\xd1\x4a\xce\x1d\xf8\xea\xb9\x7f\x93\x7e\xa7\x79\x71\x3d\x9f\x50\xa5\x62\x5d\x94\xa2\x15\x1f\x0e\x44\x62\xd7\x55\xa4\xc4\xf1\x80\x02\xc7\x76\x17\x41\xce\x5a\x37\x65\x3d\xe6\xeb\x2d\xd9\xd0\x1b\x4a\xea\x82\x21\x94\x01\x2a\x78\x6c\x05\x02\x52\xb8\xe8\x97\x6e\xe2\xe0\x8b\x72\x04\x28\x60\x48\x08\x6a\x2f\x28\xe9\xcb\x57\x83\xb0\x86\xce\x5b\x22\xbe\x51\xcc\x91\xa2\x76\x85\x0e\x0b\xd6\x46\x72\x34\xe9\x14\x14\xd5\x13\x03\xc9\xfe\xae\xcd\xe7\x85\xe9\x27\xb3\xa3\xba\x33\x9d\x72\x19\x07\x3b\x8a\x10\xae\xae\x74\x06\xcd\x4a\xc9\xa4\xd9\xac\xcb\xae\xb6\x8e\xf9\x2a\xc8\x76\x6c\x6b\x17\x62\x8e\xd0\x12\xba\x01\xf9\x1d\x6e\xf3\xd6\xeb\xbc\xcd\x87\x16\x21\xd3\xdd\x92\x12\x1f\x6f\x64\xb6\x34\x04\x22\xac\x0a\x59\xcf\xa5\x31\xf0\xd1\x53\xc0\x47\x7f\x09\xf8\xd8\x95\xce\x80\xca\x82\x92\xcc\xb6\x0a\xfa\x4b\x5d\xb1\x3d\xf4\xb9\xb6\xab\x7b\xd1\x72\x42\x6f\x99\x9a\x29\xc1\x0c\x73\xac\x3a\x41\xbf\x16\xfe\xd4\xc0\xdf\x1f\x8c\x44\xfd\xfc\xd1\x8e\xc5\xd4\x7e\x3d\x74\x26\x50\x78\x70\xfe\x6b\xb6\x06\xe0\xe1\x4a\x9c\x14\x0c\xef\x69\xdd\x69\x22\xee\xd9\xcd\xb1\x33\x7b\x35\x80\xbf\x31\x50\x97\x39\x38\x3c\x65\xba\x42\xa8\xeb\xab\x77\x18\x6c\x3d\xf7\x2e\x68\x6d\xcf\x03\x3e\xa9\x59\x78\x1b\xa4\x54\x53\x83\x25\x84\x07\xb8\x6c\x5b\x58\xe8\x93\xa3\x73\x1a\xe9\x8b\xe7\x69\x41\xb5\x53\x52\xd1\xaf\x32\xb0\xa7\xf5\x52\x9b\x9b\x1e\xb6\x64\x19\x78\xfa\x4a\x89\x50\xee\xec\x66\xb1\xee\x28\x26\xb0\x53\x30\x81\xfd\x32\x4c\xb0\x4e\xb4\xd7\xb7\x84\x11\x5e\x09\xe2\x36\x2b\x98\x2c\x40\x7e\xac\x41\x94\x87\xd2\x43\x53\x68\x3a\xc4\x1c\x28\x39\x14\xfe\x71\x8e\xbe\xcc\xc5\x8c\xe8\xb4\xc8\x2c\x93\xfd\x98\xe9\x24\xc7\xd5\x30\x19\x99\x1c\x23\x23\x15\x16\xb8\x43\x98\xae\xda\x75\xd9\x79\x23\x34\x1e\xf9\xc4\xb8\x61\x2a\xa9\x37\xaa\xf0\x6a\xca\xf5\x9a\x33\xac\x37\x28\x2a\x41\xeb\x73\x56\x00\x2f\x81\xa2\xda\x46\x54\x17\x65\xae\xc2\xa4\xe1\x71\xe9\xfb\xb0\x30\x76\x6e\x2f\x5b\x4c\xcd\x3e\x86\x9c\x04\x9a\x54\xce\xf0\xc1\x56\xd5\x5a\x4a\x89\xef\xaa\xce\xae\xec\x69\xf3\xa1\x7a\xf0\xec\x44\xe8\x19\xab\xf8\x79\xff\xc6\x71\x4b\xf3\xf9\xac\x82\x8f\x20\x59\xcd\x82\x98\x8e\xa0\xd7\x41\xf6\x26\xec\x77\x78\x74\xeb\x91\x30\x30\xf2\xe1\xc0\xe7\x73\x53\x32\xaf\xd3\x10\x77\xeb\x8c\x87\x7f\x39\x30\xf4\xe0\x92\x8a\x19\xad\xcd\x82\x5c\x97\x87\xc3\x8c\xd6\xc9\x33\xd4\x1b\x27\x21\x5a\x8f\x19\xef\xb3\x8a\xd5\x9f\x09\xa8\x89\x9c\x19\xd9\xbd\xed\x4f\x61\xe4\xf6\x39\x61\xfc\xb3\x02\x62\xeb\xc2\xe1\xfc\x36\x22\xbd\xc2\x11\x8e\xf3\xb7\xda\xca\x00\x69\x75\x45\xe4\xfc\x90\x50\x96\x0d\x5e\xcf\x22\x80\x8a\x95\x26\x24\x5a\xaa\x5b\x6c\xaa\x7b\x62\x22\x18\xd7\x87\x83\x58\x91\xb5\xa2\x53\x03\x4c\xbe\x3b\xd3\xae\x26\x58\xaf\x78\x76\xc1\x31\xd5\x45\x7e\xc7\xa0\xc3\x95\x90\x17\x3a\x48\xeb\x13\x69\xef\xb1\x64\x78\x57\xec\xd1\x86\xd4\xe6\xca\x52\x0f\x7c\x1b\xd4\xcc\x33\x5f\x23\x89\x30\xeb\xaf\x31\xba\x56\xbc\xfb\x78\x58\x81\xe0\x0d\xa4\x4f\x8a\x55\x1c\x9f\xec\x85\x84\xf8\x91\x37\x96\x4c\xf9\x2c\xf5\x9e\x48\x53\x47\xa4\xab\xf2\xe2\x49\xf5\x39\x75\x2e\x3f\x96\x48\x77\x25\x5d\x55\x6b\xbc\x57\x5d\x2d\x1b\x6c\xa8\x73\xbd\xdc\xd9\xd2\x80\x4e\x5c\xf3\x9b\x12\x49\x55\x0c\x77\x68\xc2\x17\xf6\xc3\xd2\xff\x79\x38\xac\xd6\xd8\xff\xd4\x22\x7e\x83\xf0\x6e\x3e\x4f\x9f\x2e\x16\x8b\x1d\xc2\xed\xaa\x5a\x97\xea\x5e\x6e\xdc\xbd\xdc\x00\x95\xd6\x0e\xe8\x9b\x52\xcf\xb2\x95\x26\x7a\xbb\xd3\xf5\x19\x32\xd0\x99\x9d\x0b\xbc\x01\x16\x7c\x70\x5b\x7e\x35\xbc\xdf\x57\xdc\xcc\xc7\x43\xad\x3a\x1d\x6a\xf4\x31\x50\x6b\x11\xae\xb2\x50\xab\xb4\x5e\xab\x33\xa0\x51\xc0\x6b\x1d\xf0\x5a\x03\xbc\x93\xc0\xd5\x01\xb8\x8e\xcd\x3b\x64\x7d\xa0\xf7\x89\xc8\x73\xf7\x85\xe2\xc8\x35\x0b\x64\xef\x5b\x57\x62\xc3\x85\x2a\x4c\xd3\x2b\x94\xa1\x85\x57\x0f\x50\xb5\x3f\xbb\xa6\x41\x12\xd3\x2e\x21\x09\xb6\x94\xa0\xb4\x8e\x3f\xb9\x62\xdc\x7b\xd7\xb9\xce\x86\x16\x50\x30\x78\x20\x75\x95\x43\xdb\x3a\x78\xad\xd9\xa2\x7e\xe0\xd3\x7c\x0e\x7a\x2d\xb1\xa8\x9a\xa6\xfd\xf0\xad\x9a\x5c\x60\xf0\xb0\x3e\x48\xa6\xb6\x9a\x8d\xc7\x78\xdb\xb6\x0d\xa9\x18\x50\x51\x28\xda\x66\x2b\xb9\x95\xfc\xea\x77\xff\xb7\x10\x7c\x47\x0e\xe2\x70\x89\x3e\xf9\x1d\x5d\x40\x19\x5a\x82\x96\x33\xb6\x53\x23\x1b\x3d\x03\x84\x9a\x06\x02\xd0\xd2\x28\x36\x8f\xce\x4e\xd7\x8e\xfb\x52\x4f\xa0\x80\xe2\xed\x74\x68\xc5\x8e\x8a\xdb\xe9\x2b\x06\xca\xcf\x35\x28\xe5\x6f\x03\x47\x67\xe7\x8e\xc4\xdb\x00\x52\x6b\x34\xff\xec\x0f\xb0\xbc\x82\x9f\x97\xff\x8a\x15\x3d\x7a\x5e\x09\x52\xd8\x1a\xc2\x17\x98\xa3\xf3\xd9\x72\x76\x6e\x1f\x70\x84\x74\x50\x8a\x6e\x66\xd5\x80\x01\x14\xc4\x55\xf0\x7a\x69\x4a\xe4\x5d\x99\x7d\x0c\x20\x43\xca\x2f\x48\x68\x94\x7d\x0e\x29\x70\xce\x68\xf7\x6d\xf5\x6d\x41\x10\xd4\xc7\x7b\xf9\xfa\x95\x2b\x91\xa7\xf1\xc0\x17\xe2\x0b\x5d\x6e\x08\x28\xa1\xc9\x59\x59\x5e\xfe\xee\x42\xff\xf1\xd9\xe5\xef\x2e\xa4\x2d\xef\x34\x06\x46\xbb\xf9\x10\x85\xa3\x7d\xd4\x5c\x2d\xbf\xb6\x10\xe5\xb7\xb0\xb2\x82\x20\x74\x25\xd2\x45\xfc\x8a\x4e\x24\x82\x32\x53\x99\x99\x29\xc8\x24\xf8\xa2\x3b\x32\xa0\x20\x08\x3f\xa2\xad\x44\x13\xb2\x30\x78\xe5\x2a\xf5\x97\x0c\x93\x85\x02\xb8\x7f\x42\x31\x59\xe4\x8e\x6e\x29\x30\x59\xe8\xe9\xfb\xc6\x15\x26\x86\x3d\xf0\xcf\x3a\x4c\x16\xfe\x17\xc7\x86\x8c\xfc\x49\xbb\xd9\x80\x5c\xf8\x2a\x62\xb3\x15\xfb\x0d\x1c\x5f\xd9\x97\xf9\x82\x22\xac\xa6\xcc\xa5\x56\x63\xcf\x10\xc4\xd0\x9a\x42\xbe\x56\x4b\x6d\x9a\xe5\xcb\xff\x04\xed\xe5\x6f\xa1\x6f\xed\xd5\x1a\x1d\x53\xb6\x3e\xba\x98\x28\xb1\xf5\x17\xad\xed\x2f\x54\xd7\x26\x44\xd4\x11\xe4\xef\x49\xb7\x6d\x59\x67\x88\x69\x42\x5b\x5d\x2b\x4b\x9b\x04\xa0\x88\x1d\x46\x9c\xb0\xe4\xbf\x75\x2d\xfb\xac\xda\xd2\xb8\xe4\xa6\x6e\x4b\xd9\x4d\x43\x36\xa2\xe5\x69\x11\xce\xf8\xf3\x5c\x89\xce\x7e\x11\x4e\x75\xeb\xff\x06\xf0\xa3\xa5\x2b\x6b\xe9\x80\xe7\x2f\xd4\xe7\xed\x06\xea\xfb\xfe\x89\x34\x5b\x9d\xbf\x56\xd1\x57\x53\x78\xb3\x2c\x0d\xec\x15\x46\xbd\xba\xb1\xe9\x33\x51\x18\x22\x7c\x1d\x6e\x04\x04\xeb\xd8\xae\x74\x63\xa7\xc2\xca\x66\xe2\x0c\xdd\xa4\xc2\x68\xdd\x20\x33\x27\x72\x99\x87\x83\x87\x61\x11\x25\xfd\x62\xc5\xd7\x13\xb1\xe2\xeb\x23\xb3\x62\x48\xda\xd9\xcb\xcc\xa4\x2c\x27\x13\x4c\x2c\xd0\x2e\x18\x9d\x82\x6f\x96\x51\x2e\xf8\x97\x5a\xcb\x30\x3e\x9d\x0a\x4d\x4c\xcc\x4c\x37\x9f\x9b\xa2\x9e\x9d\x9a\xa2\x63\xc1\xa8\xf7\xcc\xc1\x61\x37\xb1\x2d\xd8\x6f\x9f\x63\x61\xd4\x9e\x95\xb1\x65\xea\x05\x6f\xef\xbf\xab\x1e\x9a\xb6\x02\x95\x90\x51\x06\xe1\xa4\xe7\x78\x17\x2d\xcd\xa7\x37\x36\xaf\xca\xb1\xee\x66\x03\x0d\x66\xf8\x2c\x50\x52\x5c\x2b\x71\xc7\x57\x37\xcb\x31\x2c\x77\xb9\x32\x68\xb6\x44\x69\x56\xd5\x81\x8c\xc4\x40\x65\xc9\x02\x96\x8d\x07\x75\xce\xa9\xc4\x0a\xca\x66\x5a\x7d\xe7\xe3\xa1\x93\x21\x9c\x37\x17\xa8\xae\x7a\xe4\xc7\xe7\x38\xc2\x6d\xe2\x1d\x3b\xd4\x25\x07\x99\xdc\xbc\xfb\x8f\x1d\xe1\x2e\x4f\x85\xe9\x32\xf6\x3b\xd4\x8a\xe1\xa8\x26\xf7\xc4\xe3\x86\x91\x28\x42\x47\x13\xbf\xb4\x20\xf6\x7f\x11\x7a\x47\x11\x90\x58\x03\x03\x90\x37\x88\xe7\xed\x43\x89\x8e\xc8\xbb\x7d\x05\xdd\xea\x0c\xeb\x1c\x5c\x71\xe3\xc7\x8a\xd1\xe3\x6e\xaa\x99\xea\x40\x47\x08\x4f\x92\x9d\xe0\xf8\x71\x30\x44\x06\xff\x97\xd1\x9e\xec\xb4\x42\x1a\xd4\xdb\xc0\xc4\xe9\x22\xbf\x87\x89\x2b\x19\xc9\x28\x1e\x08\x66\x36\x84\x75\x58\xa3\x4f\x30\xcb\xea\xfe\x42\xff\x22\x31\x18\x22\xd5\x7f\x33\xd1\xbb\xae\x46\xcb\x6d\x72\x0b\xf5\xf8\xb9\x97\x7f\xad\x4d\x25\x3e\x30\x43\x04\x46\x8b\x76\x48\xe2\x81\x06\x8a\x3f\x2c\x2e\xb0\x58\x74\x94\xdd\xee\x9a\x8a\xd3\x7f\x10\x54\x14\x17\x38\xa0\x05\xae\xce\x27\x82\xb4\x4a\x5b\xf7\xb1\xea\xca\xbd\x74\x3d\x6d\x9b\x1d\xd7\xea\x33\xa8\x8e\x1c\xda\x88\xd1\x3e\x3e\x4b\xc6\xc0\x63\x5a\xfc\xa8\xe6\xf0\x9c\x6c\x9a\x8a\x93\xfa\x9b\x6a\xbb\x05\x06\x15\x8b\x38\x26\x34\x1b\xb8\x72\xbc\x8f\xe8\x2b\x2b\x6a\x2a\x21\x3b\x84\xfc\x4b\x5b\x64\x47\xc9\xdc\x91\x32\xc8\x41\x1d\xfb\xc9\x44\x9f\x26\x44\x04\x47\xe3\x2d\x87\xb6\x57\x37\x8e\xb3\x8c\x54\xdb\x6d\xf3\xe0\x18\x65\xd5\x82\x47\x10\xd0\xe4\x9a\x4b\x6b\x1b\x77\x23\x7b\x5e\xdf\x68\xe6\xea\xaa\xbb\x23\xdc\x24\x17\xeb\xa3\xf2\x78\xfb\x44\x82\x0e\xe9\xfd\x08\x55\xe5\xc1\x1d\x3a\x80\x28\x61\x2e\x96\x70\x35\x6e\xc0\x28\x5e\x21\xd4\xec\x30\xad\xa7\x70\x45\x36\x36\x15\x73\xda\x59\x25\x78\x46\xd8\x15\x11\xd2\xc3\x61\x2f\x27\x36\x48\x51\x3d\x2e\xb8\x51\xfe\x18\xdb\xb8\xb0\xf0\x56\x77\x22\x45\x81\x99\xa3\xc5\xcc\xea\x45\xd0\x24\x48\xff\x9e\x98\x8a\x9c\x99\xa8\x32\xf9\xc9\xaa\x01\xcb\x57\x6a\xfb\x09\xc9\x7d\xb5\x2e\x5b\xf9\x58\xbf\x81\x18\x0c\xce\xb4\x89\xdb\x9c\x45\xbf\x6c\xe7\xf3\xd6\xb8\xd3\xcc\xe7\x67\xf6\x4f\xad\xeb\x05\xb7\xa6\x99\xcb\x0c\xd9\x1e\x0e\x54\xc1\x34\x76\x30\x4b\x7e\x3b\xc8\x66\xc1\xc2\x22\xb0\xb0\x14\x2c\x11\xa5\x63\xa1\x52\x36\x86\x92\xd1\x8c\xd9\x02\xb1\x2d\xea\xca\xbd\x3f\xa3\x43\x78\xd6\x86\x78\x66\xd4\x69\x72\x92\x52\xe0\x6a\x6d\x34\x6e\x9d\x94\xf2\x71\xa6\x69\x5d\x44\xe1\x75\xff\x0b\x86\x39\xf2\xd6\x29\x67\xe1\x8d\x2f\x89\x47\xc0\xb6\x1d\x87\x6d\xab\x61\x3b\x6c\x95\x6c\xc7\x80\x6e\x75\xe8\x09\xc8\xed\x45\x5f\x95\xd4\xa6\x4d\x83\x4c\x46\x0e\x77\x48\x0e\x77\x10\xee\x02\xc6\xc0\xf3\x04\xda\xbd\xb5\xca\xb8\xb7\x52\xed\xde\x3a\xba\x93\xbb\x60\x27\x27\xdd\xaa\x59\x9b\xed\xdf\xa8\x6d\xdd\xa9\x6d\x95\xe9\xb6\xb6\xd1\xb6\x1a\xe5\x62\x5b\xd2\x40\x92\x6d\x4f\x94\x64\x63\x29\x36\xdf\x30\x2b\xae\x66\x9e\x05\xde\x57\x47\xfd\xb3\x32\xd2\x2e\xa6\xbf\x89\xbc\xab\xf8\x92\x54\xde\xdd\x72\x7a\x5f\xf1\x07\xc5\x23\xcc\x68\x3d\xc3\xf7\x84\xdf\x92\xda\x0c\x41\x49\xb7\x5c\x19\xdb\xd0\x1a\xf7\x6f\x2c\x77\x61\x0c\xaa\x69\xbc\xde\x58\xf1\x61\xee\xe3\xc0\xf1\xd1\xf1\x63\x11\x67\xb5\x22\xeb\xc8\x77\x23\x22\xdc\x26\xef\x8e\x09\x7f\x84\xa4\x3e\x34\xb4\x76\x15\xea\x11\x6e\x1d\x3d\x57\xac\x95\x08\x04\x8a\xbe\x60\x82\xf6\xc6\x97\x9a\x1a\xb7\xe9\x1b\xca\x8c\xfa\x6b\xb6\x0c\x6f\x6d\xd7\xc7\x0b\xd7\xc0\xf5\x16\xdf\x94\xd0\xcd\xdf\xbd\xe8\x32\xd0\x4f\x4e\xb8\xc9\x74\xa4\xe6\xf3\xb4\x69\x46\x26\x03\x1e\x90\xe3\x1d\x7c\xe9\x3d\xbb\x07\xbb\x09\x9c\x20\xc7\x3b\xfb\x93\x75\xd6\x1e\xec\xca\xb4\x38\xd6\xd1\x91\x5e\x8e\x75\x01\x20\x1e\x07\xee\xf0\xc7\xda\xc5\x71\x74\x83\x9e\x05\x4d\xc6\xba\x0a\x33\x63\x0c\x74\xf5\x3c\x68\x32\xd6\x55\x98\x05\x6d\xa0\xab\x1f\x83\x26\xf9\xae\x64\x80\xf0\x19\x64\x0d\x50\x3f\x3b\xc0\x6b\xca\x6e\x1b\x32\xd0\xf5\xb8\x6c\xfe\x91\xba\x4e\x91\xfa\x58\xb7\x70\x17\x9d\xd4\x6b\x1f\xc7\x3f\xe2\x94\x53\xac\xff\x78\xd3\xfe\x0d\xba\x8d\x0f\xc8\xc7\xe9\x33\x7b\x60\x8e\x02\xb8\x7a\x7f\x1c\xbc\xd9\xf3\xf3\x51\x7a\xce\x1e\xa7\x8f\xd2\x73\xd4\xe8\x23\xa1\x59\xd2\x6c\xa0\xd7\x51\x45\x1c\x54\xe9\x1b\xd8\xd8\x5f\xd4\xdf\xe5\x09\xaa\x3f\xcd\x67\x6a\x7e\x0d\x6c\x10\xce\x0c\xbf\x5a\x4b\xab\x10\x36\xe2\xb3\x2e\x20\xa6\x5d\x3d\xe9\x4d\xd1\x29\x99\x42\x67\xc5\xec\x90\xe9\x6b\xd0\x05\xc2\x2b\x23\xe0\xf3\x4a\x6b\x94\x1a\x0c\xb1\x15\x5e\x7f\xbc\x33\x65\xaf\x2d\x0b\xbc\x09\x58\x5a\xee\x58\xda\xba\xbc\xc0\x77\xa5\xcb\x24\x50\x7f\x7e\xf7\xa4\xb6\x6c\xed\x4d\xc9\x57\xb5\xf5\xc5\xd8\xfa\x89\xdc\x67\x26\x72\x83\x26\xf7\xf3\x79\xd5\xf7\x08\xb8\x47\x78\xb3\xaa\xd7\xe5\x56\x9a\x89\xba\xc0\xa3\x4a\xa6\x7a\x15\xcd\x6d\x81\x80\x14\x7a\xea\x9c\xa4\x1b\x41\x78\x48\x87\x68\x12\xfa\xa3\x93\xb5\x2c\x26\x65\xe9\x11\xcd\x4a\x98\x8c\xf5\xb7\x50\xa7\xe0\x53\xf4\x28\xa1\xea\x21\x9e\xa4\xd5\x75\xac\x3c\xf3\x0a\xb1\x09\x33\xcf\x12\xcf\xd0\xda\xc0\x19\x54\x65\x9b\x96\x40\xc6\x35\x04\xfa\xe9\x31\xb5\x32\x66\x81\x52\x32\xa7\x4a\xe6\xa7\xa9\x91\x83\x42\xfc\x2b\xae\x33\x56\x90\x75\x69\x72\x6f\x62\x36\xa0\x30\xce\xb9\x42\x24\x76\x84\x11\x8d\xb2\x00\x0d\x8b\x4e\x05\xb3\xa0\x75\x99\x2c\x5d\x40\x4e\x97\x11\x43\x44\xe0\x94\x06\x5d\xce\xe7\x67\xc5\x05\xa6\x27\x9b\x81\x91\x76\xfa\x12\x27\x98\x69\x8c\xda\x53\x71\xf7\xde\x47\x38\x9d\xaf\xc5\x46\x8f\x00\x81\xeb\xfa\x70\xc4\xc9\x74\x50\x57\xab\x91\xef\x74\xa5\xf4\x51\x1d\x34\xd0\xc2\x61\xe1\xfd\x24\x55\xf4\xaa\x5d\x3b\x27\x5e\xb0\xf6\xc2\xa3\x49\xcf\xa7\x56\x77\x85\xaa\x92\xe5\xdc\x80\xae\xc2\x45\x0f\x81\x49\xeb\xe7\x70\x87\xf7\xef\xc8\xc3\x92\x60\x6e\xed\x62\x55\x77\xb7\x14\xd1\x19\x56\x54\x7c\xc9\x24\x1a\x3c\xca\xae\x33\x6f\x0d\x0d\xbd\xfd\x98\xf1\xd8\x3b\x8b\x70\xb9\x43\x88\xde\x14\x55\x40\xae\x3b\x47\xae\xb3\xcb\x72\x89\x22\x9a\xf2\x02\xef\x4a\x1f\x7e\xfb\xf9\xce\xeb\x28\x36\x10\x82\x3b\xa9\x56\x4d\xac\xa7\x3f\x02\x86\xcd\x23\xc0\xa0\x3d\xfe\xed\x64\xf4\xcd\xd2\x0d\xdc\x2c\xdd\xaa\x56\x93\xa9\x47\x8c\x06\x66\x06\x37\x48\x52\x73\xab\x56\xda\xf1\x6e\x1b\xe2\xd2\xd7\x94\xbd\x73\x38\xa4\x6b\x17\xdb\x44\xd4\x81\x25\x03\x9e\xac\xb6\x06\x89\xee\x83\x27\x4f\x0a\x5a\xd2\xc3\x61\x2f\x91\xc9\x5a\xbd\x37\x25\x2b\x97\xf7\x52\x52\x6b\xcf\xa2\xc6\x82\x35\x6e\x80\xe0\x03\xe6\x06\x9c\x35\x0c\x85\xe7\x69\x32\xa8\xf6\x1a\x39\x5e\xe4\xac\x2c\x0b\xfe\xd8\x83\x85\x42\xc0\x68\xb2\x2b\x2c\xd9\xc5\x36\xe3\x8d\x49\x7f\x8c\x8f\x5f\xbb\x3e\x3c\xb4\x4c\x6f\x1a\xeb\x75\x0b\x2a\x6a\xe7\x0e\x3a\xa5\x6c\x4a\x11\x2f\xb3\xc1\x0a\x2d\x26\xd1\xad\x00\x16\xc5\x71\x2f\x99\x16\xf9\x6c\x9d\xe9\x85\xd3\xba\x2c\x9d\x47\x9d\x67\xfa\xdd\x24\x16\x2c\x84\x99\x2d\x4a\x00\x16\xbf\x15\x0b\xc0\xc5\xd6\x48\xc7\x35\x04\x6b\x89\xee\xcb\x21\xd8\xd8\x5b\x6b\x3e\x67\x3a\xa1\x46\xc1\x4b\xf5\x17\xd2\x31\x1a\x05\x2f\x4d\x00\x96\x77\x7d\x33\x0e\x71\x1c\xb2\xd1\x71\xa4\xcd\xf8\x91\xfa\xdc\xf9\xce\x8d\x8f\x7a\x26\x0e\x87\x33\xb5\xf7\x87\x03\xd4\x05\x50\x7f\x86\x1e\xf2\xd7\xf7\xbb\x4e\x3c\xba\x57\xc5\xb3\x09\x58\x8b\xf6\xfe\x4b\x3a\x1d\x54\x37\x47\xf1\x67\x10\x0b\x51\x13\x41\xf8\x3d\x65\xd1\xa9\x01\x1b\x16\x8f\xc2\x22\xa2\x1c\xe1\xc9\xa4\x05\x32\xa5\x26\x62\x08\x09\x70\xbc\xbe\xaf\xd8\xc3\x0f\xad\x22\xba\x40\x8d\x0f\x07\xf3\xc4\xd1\x67\x24\xf3\x16\x24\x9d\x89\x01\x8a\xce\xbb\xf8\x11\x3f\x79\x5a\x4f\x18\x10\x8e\x51\xd6\x4b\xf5\x3e\xc0\x42\x15\x42\x1f\xf0\x38\x24\x2d\x0a\xd7\xc4\xaa\x09\x68\x42\xfb\xe4\xc1\x7c\x9d\xbb\x19\xaf\xe2\x2e\x43\xd3\x0c\xc7\x0c\x2d\x73\xb7\x53\xfc\x49\x10\xc9\xa3\x67\xc0\x03\x18\xbd\x64\xa2\x55\x17\x84\xb7\x79\x45\x61\xdd\xae\x92\xa6\x33\x77\x61\x86\xd0\xb8\xd1\x6c\xd8\x4e\x16\x9a\xd3\xf0\x3f\xcd\x24\x96\xa3\x33\x8f\x30\x94\x7d\x54\xeb\x58\x6c\x1b\xc3\x8a\x3d\x04\xf5\xf8\x6f\x6a\x69\x19\x32\x6f\xe1\x88\x89\xa1\xe8\x4a\x71\x68\xc0\xad\x2d\xe1\x2f\xfa\x6b\x02\x2f\x7f\x63\x9b\x96\x8f\x5a\x4c\x8d\x5b\xff\x45\x86\x2b\xac\x41\x16\xd9\xf2\x52\xc8\xa0\xbd\x63\xd3\x03\x75\x82\x3a\x30\x3c\xb8\xe2\xb9\x2e\xb1\xe1\xc0\xa4\x7e\x59\x4a\x6d\x33\xc3\xc2\x43\xcc\xbc\x08\x61\x92\x43\xea\x43\xe8\x15\x25\x7c\x3e\xf7\x62\x95\xbf\x86\xf8\x42\x27\xfb\x85\xeb\x0a\xe4\x13\xfd\x1b\x98\x57\xc8\xce\x78\x87\x0a\xdb\xc8\x25\x9c\x1c\x63\x2c\xd4\x42\xb0\x18\xf0\x51\x12\x27\xfa\x28\x09\x9d\x91\xcf\x43\x62\x25\x9c\x7f\x92\xfa\x1b\xbb\xc4\xb8\x90\x27\xc3\x8c\x17\xb3\x50\xb9\x21\x13\x26\xeb\xd7\x8d\x0a\xf4\x33\xe3\x02\x41\x06\x5c\x1d\xec\x73\xc5\xf6\xea\xdf\x11\x85\xcb\x19\xad\x5e\x7d\x60\x44\xe7\x4c\x46\x8b\xa6\x6d\xdf\xed\xb6\xc5\xcc\x7d\xb4\x9c\x9d\x7b\x89\x96\xcb\xc8\x49\xf6\x14\xd3\x22\x27\x9d\xf8\xd8\x0e\xb2\xbf\x85\xc5\x11\xb7\xbf\xd6\xe6\x38\xf8\x41\xce\x9f\x7c\x86\xf7\x84\xed\xee\x75\x42\xb7\xe5\xd9\x05\xbe\x25\x62\xe9\x66\xe5\x0e\x54\x9b\x75\x46\x97\x43\x16\xce\x2a\xe3\xd1\xab\xd1\x21\x4f\x35\x23\x59\x3f\x87\xbc\xe8\x7c\xa6\x9a\xcf\x42\xe5\xa6\xf1\x86\x8b\x9d\x56\xb4\xfc\xb5\x5a\xc7\x3a\xcd\xb6\x8c\x3d\x34\xab\xb2\xef\x98\x19\x67\xbb\xbd\xaf\xde\x99\x01\x78\x9c\xae\xc6\x29\x3c\xb9\x1f\xa2\xeb\x45\x2f\x45\xc2\x2a\x24\x15\x54\xf3\x64\xb8\xc5\x15\x9a\x50\xed\xab\x67\x5c\x35\x31\xf8\xd5\xf6\xd4\x91\x1d\xc4\x9c\x84\xeb\xcd\xf7\x69\x34\xc4\xc6\x77\x00\x77\x25\x83\xca\x2e\xc5\x05\x6e\x1f\xa1\xea\x81\x90\x74\x7d\x4d\x98\x64\xd6\xa7\x28\x7c\x26\x89\x93\x6c\x83\x80\xc1\x48\x61\xdb\x20\xdc\x85\x1b\xd0\xf8\x12\x29\x55\xa0\x9b\xed\x6c\xb8\xfb\xb0\xfa\x5a\x81\x6f\x1f\xc6\x6d\xf5\xd5\xd7\xcd\xa0\xfa\xba\x99\xcf\x0b\x5d\xc7\xa9\x6c\xbc\xc3\xc5\x2e\x4a\x13\xc4\x11\xde\x94\x17\xb8\x2e\x77\x56\x1d\xb0\xf9\xbc\x7e\xb2\xb1\xea\x80\xbb\x72\xb7\xda\xac\xf1\x4d\x79\x87\xb7\xe5\xd9\xe5\x64\x76\xad\xf8\xcf\xbb\xc5\xe6\xae\xe2\x4f\x45\x71\xa1\xd6\xbf\x2d\xcf\x2e\x54\x8b\x45\xb7\x7b\xdb\x09\x5e\x5c\x1a\x2d\xdd\xfd\x38\x48\x6f\x90\xce\xf6\x1e\x01\xf4\xde\xf0\x00\xef\xcb\xb3\xad\x2d\x82\xdd\x7d\xa7\x99\x73\x73\x7c\xee\xb1\x40\xf8\xb6\xe4\xab\x3b\xd0\x32\x19\x5f\xed\x5b\xa4\x90\xe0\xfd\xe1\x10\xfb\x95\xde\xa2\x40\x63\xff\xd6\x03\xee\xa1\x87\xc0\xf6\x70\xdd\xe3\x5b\x7c\x87\x26\x0f\xf3\x79\xd7\xc7\xd1\x07\x84\xab\xab\xb7\xee\x78\xf8\x4b\xe8\xfd\x7c\x0e\xba\x46\xaf\xfe\x83\x14\xd4\x8a\xff\x98\xbc\x9f\xcf\xcf\xd8\x7c\x7e\xd6\xc1\x29\x38\x1c\xc4\x55\x67\xea\xd4\x2e\xd3\x21\x08\x92\x68\xf9\xde\xbe\x7f\xbb\x7c\x9b\x9d\xc5\x5b\x63\x3f\x70\x0b\xbb\xf6\x0b\xfb\x70\xd2\xc9\xbc\xc5\x77\x58\x17\xd9\x41\x13\x33\xd8\x35\xfe\x90\x1d\xec\x03\x92\x2e\x13\x65\x27\x71\xb4\x1b\x4b\x83\x69\xa0\x62\xc9\x7b\x74\x0a\x04\x21\xc1\x5e\x21\x3f\xe0\xe9\x9d\x25\x63\xbe\x32\x18\xe4\xb8\x8d\x1c\x33\x86\xd0\x8a\xe5\xd0\x8a\x22\x5f\x43\xe0\xde\x3f\xcc\x90\xc5\xd0\xa9\x6b\x92\x52\x46\xd0\x26\xa4\xbb\xaf\x67\x2e\xfc\xc4\xa9\x2c\xc3\x53\xde\x62\x5d\x72\x29\xa0\x81\x02\x61\x9a\x0d\xd2\xa4\x48\x22\x29\x03\xa7\xf6\x8f\xe7\x56\x9b\x48\xcb\x91\x81\x2d\xe3\x70\x39\x2a\x3a\x92\xd5\xa8\x3b\x55\x98\xde\xc0\x68\x11\x63\xc1\x52\x8e\x39\xf9\x0e\x05\x7f\x0f\xb3\xdb\x7d\x71\x03\x47\xfe\xd5\x69\x7b\x86\xb5\xcd\x21\x4e\x10\xd2\xf3\x67\x8c\xa4\xa6\x56\x49\x4d\xd4\x49\x4d\xd4\x26\x0e\x49\xe7\x19\xe2\xcf\xa9\x7a\x7f\x85\x44\xef\xc8\xc3\x92\xc5\xaa\x5c\xda\x57\xe5\xb6\xb2\xe4\xb8\x2a\xdb\x9c\xb8\x86\xbb\xf1\x35\xf7\xf8\x61\x7b\x23\x05\x2c\x31\x5d\x75\x6b\x2f\x49\x9c\x59\x49\x42\x5c\x81\xbd\x2d\xf0\x5b\x1e\x3a\x7d\xaa\x03\x24\x97\xc3\x68\x25\xad\xb3\x65\x15\xb0\xb3\xdd\x09\xec\xac\xe3\x8b\x4f\x71\x97\x1b\x64\x39\x7f\x13\xf7\x36\x5e\x0a\x1f\x79\x18\x2c\x8b\x4b\x84\x26\xd9\x65\x25\x8c\x73\xb8\x20\x4e\xfe\xbe\xa3\xc0\x6a\xa7\xec\x7a\x8f\x7b\x4e\x16\xe3\x22\x53\xc3\x38\x46\x13\x09\x7a\x38\xe8\xd0\x50\x1d\x9c\xd9\xd3\x58\x12\x88\x36\x7e\xb8\x7f\xdb\x36\xd1\xc3\x85\xcf\xad\xb7\x9c\xcd\xce\x89\x4f\x9c\x47\xbd\xd2\xd1\xd9\xf5\xfa\xbd\x0a\x57\xb8\xf4\x8b\x0b\x13\x82\xeb\x02\x96\x1d\x76\x91\xc3\xc1\x06\xdd\x1e\x0e\x85\x28\xd5\x40\xbe\x7c\x3c\x12\x77\xbc\xfd\x30\x65\xe4\xc3\x14\x64\xdf\x62\xf6\xd5\xcf\x5b\xc8\xe2\x3f\xa5\xf5\x54\xb4\xd3\xb7\x64\x5a\x4d\xf5\xd0\xd3\x96\x4f\x75\xef\x78\xca\xc9\x86\xd0\xf7\xa4\x9e\xce\xce\x5d\x2c\xaa\x57\x84\xca\x6c\x18\xef\xa0\xb7\xba\x14\xa5\x70\x05\x93\xb6\xbc\x15\x2d\xa8\x41\xef\xaa\xee\xd5\x07\x66\xf1\x66\xb1\xa9\x9a\xa6\x10\xea\x98\xc1\xfe\xcf\xd0\x95\x73\x7b\x5c\x0a\x23\x26\xcc\x76\x4c\x63\x44\xed\x01\xf0\x1a\x00\x7f\xa5\xff\x53\x24\xf0\xcd\xf5\xf5\x27\x7b\x22\x3f\xd9\x7f\x53\x89\xbb\xc5\x4d\xd3\xb6\xbc\x80\x3f\x79\xc5\xea\xf6\xbe\x40\xff\xe3\x79\x25\xc8\x82\xb5\x1f\x0a\x84\xe4\xf5\xf5\x1b\xbf\xf7\x41\x69\xc6\xfe\x7e\xf8\xa8\xeb\x2f\x74\x6c\x72\x03\xa6\xac\x9f\x48\xf5\xee\x9b\x6a\x3b\xd1\xdc\x61\x11\xd4\x59\xcb\xcd\xf6\x03\x65\x75\xfb\x01\x36\x3c\xf3\xf6\x45\xd5\x89\x2f\xdb\x56\x18\xa3\xef\xfe\x96\x88\xef\x61\xd2\x7f\x55\x87\x48\xa7\xda\xe5\x0f\x16\xe0\xb6\xf5\xc2\x60\x7d\x31\xdb\xf0\x87\xad\x68\x67\xc8\x2c\xf5\x05\x6d\x1a\xc8\xb9\x48\x90\xdc\x54\x42\x89\x24\x68\x9f\x62\xc4\xa7\xa0\xa9\x98\x86\x3e\x75\x8a\x5f\x50\x9d\xbf\x6d\x5b\x31\x35\x9d\x77\xd3\x87\x76\xa7\x30\xa6\xaa\xeb\xa9\xb8\x23\x53\x3b\xd8\x74\x5b\x6d\xde\x55\xb7\x44\xbd\x9b\xdd\x98\xaf\x9e\x93\x2d\x61\x35\x61\x1b\x4a\xba\x99\xea\xee\xa1\xdd\x71\xdb\x72\xa1\x24\xe4\x4f\x15\x67\x04\xcc\x46\x40\x41\x35\x74\x16\xba\x67\x6b\xf9\x8e\x1e\x0e\x7c\x71\xdf\x3d\x83\xd7\xf3\xf9\xcc\x6e\xa6\xdf\xb9\xa4\xcd\x22\x81\x6a\x32\x8e\x6d\x36\xe9\x1d\x1d\x4f\x83\x96\xd3\x67\x15\x63\xad\x98\xde\x50\x56\x4f\xab\xe9\xfb\xaa\xa1\xf5\xf4\x43\xf5\xa0\x80\x60\x93\x40\x4d\x9b\x76\x53\x35\x53\x5f\xd1\xad\x9b\x21\x28\x78\xe7\x3c\x57\x70\x8d\xef\xf0\x0d\xde\x96\xab\x35\xbe\x2f\x2f\x9e\xdc\x7f\xfe\xfb\x3f\xfc\xf1\xc9\xf9\xf9\x3d\xda\xae\xee\xd7\x65\x71\x7f\xfe\xfb\x3f\xfc\x11\x79\x32\x72\xf9\x47\xe4\xc5\x04\x8f\xb5\xef\x6d\x5c\x9d\xe6\x30\xca\x82\x00\x62\xfe\x48\x99\xf8\x37\xcd\x7a\x5d\xfe\x11\xe1\x5d\xba\xee\xf0\x48\xb3\xd5\x1f\xd7\xe5\xe5\x1f\xe6\xea\xff\xc3\x1f\xff\x27\x66\xab\x7f\x5b\x97\x7f\xfc\xd7\xb9\xfa\xff\x70\xf9\xfb\x7f\xc3\xab\x82\x97\x5b\xb4\x2a\x44\xc9\xd0\xea\x62\xbd\xc6\x7c\x25\x56\x97\xe6\xff\xdf\x9b\xff\xff\x75\xbd\xc6\xb3\xcf\x66\xf0\xf7\xff\x34\xcf\xfe\x10\x3c\xfb\xa3\x79\xf6\xff\x0b\x9e\xfd\x9b\x79\xf6\xff\x0f\x9e\x5d\xba\x01\xec\x08\x97\x76\x88\xcb\x7f\xb5\x7f\xd8\x01\x2e\xff\xb0\x5e\xaf\x17\x7f\x6b\x29\x2b\x66\x33\xe4\x49\xd3\xad\x09\xc1\xeb\xa0\x6e\x6f\xed\x1c\x29\xe0\x97\x3a\xad\x26\x48\x01\xd3\x7a\xc9\x65\xe9\x4a\x27\x29\xa9\xee\xea\x4d\x70\xe1\x2c\x1b\x5a\x7f\xf6\xc9\xbe\x2d\x04\x92\x9f\x7d\xb2\xe7\xf2\xcd\xf2\x7d\x81\x80\x02\xbc\x8d\x28\x80\x1b\xfa\xc1\x93\xf7\xb7\xae\xdc\x4b\x98\x76\xde\xd5\xf5\x57\x9f\x7f\xc0\x6f\x21\x67\x08\x14\xb1\xc7\x01\x71\xbd\x2e\xd0\xde\x94\xce\xfd\x10\x95\x02\xb5\x99\x6e\x37\xd5\xe6\x8e\x94\xfb\x86\xd6\xdd\x32\x9b\x5a\xf6\x61\x4b\xb2\x6f\x8c\x13\x8e\xcb\x57\x16\x97\xb2\xd4\x8e\xac\xf1\xb3\x9b\x96\xdf\x12\x11\x3f\x83\x3a\x17\xf1\x23\xf0\x43\x8f\x1f\xb9\x31\xea\xc3\xe1\x36\x1e\xe1\xe6\x70\xb8\x8e\xfb\xdf\xf8\x27\xba\xf7\x3b\xff\x40\xf7\x7d\x2d\xaf\xaf\x37\x2d\xbb\xa1\xb7\x3b\x4e\xbe\x51\x8f\x7c\x02\x72\xdd\x82\x1c\x0e\xd7\xf2\xfa\xd6\x57\x3f\x72\xa5\x16\x09\x16\x90\xf3\x39\x29\x6c\x61\xb6\xa6\x59\xe8\xda\xbc\x50\xa3\xc2\x22\x8b\x61\x51\x98\x41\x22\xac\xdd\x3e\xce\xca\x92\x5f\x05\x7b\xa0\xde\x75\x2b\xbe\x36\x75\x2b\x13\x65\xbb\x0d\xd4\x35\x97\x58\xeb\x02\x8b\x3b\x5b\x6c\x69\x62\x4b\x98\x8b\xc3\xa1\x9a\xcf\x3b\x1b\x7e\xf1\x55\x11\x0e\x02\xdb\x09\x1a\x21\x27\xb8\x73\xc8\x6f\xb8\x53\xe3\xaf\xf8\xda\x9a\x98\xcb\xb2\xa4\xba\x0e\xa0\x8e\xc3\x86\x26\xb4\x56\xdc\x65\xd0\xc2\xfa\x4f\xc4\xdb\xa4\xad\xc9\xe0\xc3\x9c\x0c\xb4\x51\xff\xf5\x19\x8a\xff\x6c\x77\x53\x6d\x97\x98\x2a\x8a\xa8\x73\x2e\xc3\x0d\xf1\x79\x43\xeb\x2f\xa6\xed\xcd\xb4\x9a\xa6\x5b\x31\xd3\x61\xe2\x65\xbc\x82\xcd\xda\xe4\xa4\x16\xae\x02\x83\x5e\x4a\x41\xcb\x9f\x8b\x0e\x57\x78\xe3\x26\x87\x7d\x91\xb0\x60\x0b\xa8\xfa\x6f\x5d\x52\xac\x3b\x0c\x7e\x5e\x57\x4d\xe3\xc7\xef\xb4\x90\x48\x91\x66\x95\xd4\x36\x69\xdf\x29\x80\x93\xfa\x7b\x5d\x52\xaf\x77\xa2\x52\x6e\x09\x79\xd7\x47\xa8\x44\x14\xcc\x23\xdd\xd9\x25\xd4\xcc\x79\xc5\x43\x1f\xdb\xc7\xf7\x72\x81\xa4\x3e\xc3\xfe\xf1\x8b\x96\x7f\x4b\x3e\x58\xc5\x44\x94\x1f\x2c\xbb\xa1\x98\x97\x3f\x03\xc6\xe9\x24\x27\xd8\x96\x51\x0d\xa0\x7a\x01\xb9\x08\x33\x78\x67\xcd\x42\xd1\x54\x43\xec\xd7\xb0\xe6\x98\x01\xe8\x85\xfe\x33\x0b\x76\x8e\x30\x97\xa1\xbb\x7c\x7c\x46\xa3\x78\xc6\x71\xc0\x41\x9a\x1d\x5a\xe3\xaa\x64\xda\xc5\x0d\x77\xd9\xc9\x9b\x1c\x49\xb8\xe9\xd5\x91\x36\xda\x50\x25\xa2\x55\x5a\x44\xeb\x70\x43\xeb\x65\x23\x4b\x11\xe0\x7f\x35\x9f\x57\x67\x60\x0f\x33\x0f\x98\x3f\xa3\x04\x1b\x05\xa7\xc2\x1d\xb6\x9e\xa4\x15\x46\x76\xf3\xf9\xce\x64\xd6\xe2\xc6\xb7\xae\x2d\x6c\xd6\xa6\x78\x08\x6d\x72\xdb\x94\x70\x6c\x01\xa2\xe6\xbf\xb3\xb2\x6c\x6c\x51\x01\x6a\x60\xdd\x1b\xa8\x9e\xcf\x6b\x99\xed\x50\x9f\xde\xa4\xcf\xd2\xf5\x79\x07\xab\xd8\xc0\x02\xaa\x7e\xbf\x77\xf3\xf9\x9d\xb4\xb5\x7c\x64\x0e\xbc\x58\xe0\xaa\x77\x1a\x61\x71\x4d\x50\x73\x16\xe8\x73\xba\x8b\x5d\xa1\xbe\x6f\x54\x0f\xc8\xed\x67\x2a\xaa\x99\x1d\xa2\xb0\x35\x95\xda\x1a\xe1\x20\x69\xb5\xcb\x3a\xc7\xac\xc7\x75\x4f\x81\x21\xcc\x1e\x4a\xdb\xa9\x33\x5d\x70\x2c\xa2\x7b\x08\x61\x7a\x56\x96\x45\x05\x43\x23\xb7\xc3\xd5\x18\x15\xb6\xdb\xb7\xd3\x20\x2b\xb9\xa3\x23\x2e\xcb\xa4\x26\x25\x6b\x5f\xde\x7b\x68\xfd\x89\x5e\xbe\x0d\xa1\xa5\xd3\xda\x21\x5c\x95\x2d\x64\x67\xe2\x4b\x11\x9d\x40\x7d\x6f\xf6\x4e\x46\xa5\xeb\x02\xae\xe8\xba\x6c\xf1\xc8\xfc\x5d\x1b\x38\xb4\x65\x0b\x15\x94\x5b\x39\xd0\x6b\x2f\x03\xe1\xd8\xc9\xe4\x59\xb8\xd9\xcd\xb2\x85\x75\x81\xea\x3a\x7b\xad\xa2\x1b\x8a\xf6\xe2\xa8\x42\x59\x40\x64\x04\x20\xbe\xb3\x35\x6a\x4a\xa3\x0f\x83\x55\x60\xa5\x14\xc7\x66\xd1\x12\x68\xd2\x7f\xd9\x6d\x21\x2f\x16\xc3\x97\x08\x87\x2c\x41\xb3\xd0\x43\x18\x76\x20\x62\x52\x8a\x00\xc9\x32\xd5\xa6\x74\xad\x67\xcf\xc5\x7d\x15\x92\x34\x5d\xd8\x2a\x61\x05\x39\x1c\x11\xc5\xc6\x65\xb9\xb8\x81\xc7\xc9\x52\xc0\x9a\x41\x80\xec\x2a\xea\xea\x86\xff\x39\x52\xf0\x61\xaa\xc7\xe1\xaa\x57\x62\x54\x52\xce\xe5\x95\x95\x14\x37\xc0\x8b\x32\x3c\xa3\xdd\x67\x34\xb8\xaf\x31\xf5\x7d\xbe\x0a\xfb\xa4\x8a\xf4\x6a\x0e\xa6\x03\x55\x31\xf0\xdc\xdc\xb2\x50\x9a\xcb\x26\xd8\x9d\x5e\x2e\xfb\x92\x95\x53\x4a\x10\x2a\xee\x08\x9f\xd2\x7a\xda\xf2\x69\x13\xa8\x28\xb4\x84\x65\x64\x72\x77\x2f\x03\xaf\x9e\x19\x61\x19\x3e\xd3\xce\x95\xaf\x6d\x82\x5d\x25\x10\x7d\xc7\xdb\x9f\x1f\xac\xa9\x51\x3f\xff\x8e\xb7\xf7\xb4\x23\xf0\x06\xac\x95\x78\x7f\x4f\x44\xb5\xd4\x6f\x37\xed\xfd\x76\x27\x48\xbd\xe0\xa4\xaa\xbb\x62\xb6\x69\x99\x20\x4c\x80\x79\x48\x49\x75\xf8\x87\x28\xa9\xd3\x29\xfd\x07\x02\xdc\x37\x91\x56\xf9\x07\x97\xc2\x7f\xab\xbf\x31\x73\xf8\xfe\xf5\x5f\xbf\xb3\xdd\x2c\x38\xe9\xda\xe6\xbd\x56\x47\xcb\x40\xea\xf9\x2e\xea\xea\xf5\xaf\xe9\xea\x69\xd4\xd5\x37\x8a\x6b\xbd\x23\x4c\xc7\x19\x3b\xea\x00\x75\xd3\xb4\x30\xf4\x0c\xbf\x03\x79\x46\x0f\x71\xfd\xa5\xab\x61\x57\xac\x66\x79\x47\xd1\x19\x9e\x75\x0f\x6c\x93\x3e\xbb\xa1\x8c\x76\x77\xa4\x9e\xad\x11\xfe\xbe\xfc\xdd\xff\xfd\x3f\xbf\xbb\x52\x72\xd8\xff\xf9\x5d\x11\xe4\x0c\x88\x53\x46\xfc\x9f\xdf\x15\x8b\xff\x81\x7e\x87\xff\xe6\x9b\xff\xce\xc3\xf7\x79\x54\x6b\x28\x52\x57\xd1\xee\x3b\x75\x64\x99\x80\xbc\x7e\x24\x32\x4f\x80\x25\x44\xab\x94\xd5\x2b\xfd\xd7\x62\xdb\x52\x26\x08\xf7\x69\xfa\xe2\xe7\x8b\x7b\x50\xb4\x7c\x8f\x26\xfc\x8a\x97\x7c\xf5\xfb\xf5\x12\x92\xf6\xf5\xda\x75\xa4\xe2\x9b\xbb\xe2\x6f\xda\x3f\x73\xf6\xb6\xea\x88\x62\xd0\xbc\x1f\x26\x5f\x43\x8e\x4a\x28\xb4\xaf\xed\x5b\x8b\x9a\x88\x8a\x36\x87\x03\x59\x08\x2a\x1a\x82\x4c\x8c\xac\x5b\xe8\xb7\x9e\x97\x2c\xa0\xf0\x86\x20\x9c\x55\x0d\x58\x08\xd4\x57\xe9\x03\xa4\x08\x96\xad\x87\xa1\x79\x42\xdf\xd9\xcb\x68\xff\x33\x02\x53\x3a\x42\xd8\x59\x52\x2a\x46\x9a\xfa\x99\x4a\x86\x8e\x64\x2f\xb2\xd8\x12\x56\x53\x76\x5b\xce\xcc\x1f\x33\x4c\x16\x37\xbb\xe6\x86\x36\x0d\xa9\xcb\x99\xfb\x73\x06\x35\x38\x74\x09\xd2\x72\x66\xff\x9a\x49\x54\x3c\x3b\x1c\x8a\x67\xe5\x5e\x22\x34\xd1\xd2\xf2\xd7\x91\xb4\x1c\x55\x4f\x05\xe5\x71\xc9\xfb\xe5\xd1\xc2\x42\xb3\x6f\x73\x25\x45\xb2\xf5\xb2\xd2\x0f\x5e\xd6\x63\xcd\xee\x6c\x90\xe1\x69\xbd\x9a\xe6\xe3\x7d\x46\x3b\x10\x4b\xde\xbd\x9a\xd8\xd1\x6b\x4f\xdc\xa3\xc7\xce\x36\x91\x34\x8e\x7f\x6a\xd3\x5b\xf4\xac\xaa\xab\xad\x20\xdc\x54\xf7\x0a\x35\xfc\xac\xcc\x4d\x95\x27\x0f\xc0\x89\x43\x9f\x11\x75\x9f\x24\x93\xd1\x7c\x03\x66\x4a\x46\xff\xde\x24\x39\xd0\xbd\xa6\x15\xfe\x69\x0d\x5c\x45\x76\x52\x24\x79\x10\xaf\xc6\x25\x29\x4b\x21\xc1\x02\x0b\x6c\x34\x83\x62\x08\xd0\xdf\x16\x0c\xe5\xea\xa1\x83\x20\x38\xe5\xb6\xbc\x68\x24\x4b\xc5\x67\x29\xa0\xb0\x99\x32\x81\x9e\xc9\xef\x21\x32\x8a\x0b\xcb\xf9\x17\x61\x65\x26\x3d\x03\x57\x0c\xfd\x48\x35\x41\x4b\x32\xfb\xd5\x7e\x4d\xea\xb3\xa1\x1a\x6c\x31\x1c\x91\x75\xeb\x0d\xfc\x48\xcb\x2f\x80\xda\x85\xce\xec\x1c\xb4\x60\x6a\xcd\x42\xbb\x03\x8e\x40\x09\xfa\x7e\xa6\x0e\x3d\x7c\x60\x6b\xa6\xf7\x18\x0c\x78\x31\xa5\xdd\xb4\x65\xcd\xc3\xb4\x7a\x5f\xd1\xa6\x7a\xdb\x90\xe9\x87\x3b\xc2\xa6\x9b\x5d\x27\xda\xfb\x29\xf4\x35\xd5\x14\xe4\xe6\x46\x37\x9e\x21\x59\x99\x32\xb3\xea\x36\xc8\x95\x98\x8d\xe1\x1d\xd7\x77\xcc\x95\x76\x4c\x0b\xca\xf7\xfa\xcb\xd6\xb2\x7f\x3f\x58\x6f\x50\x31\x5e\x03\x68\xe8\xb5\x58\x3e\x31\x58\x7f\x0f\xfb\x9f\x61\x5e\x5e\x60\xe6\x2b\xf2\xf3\xcf\x99\xcf\x11\x46\x75\x6d\x31\xa2\xe4\x86\x81\x0e\x56\x74\x6d\x12\xce\x7a\x57\x70\xf9\x36\xae\x95\xec\xc3\x2b\xce\x0a\xed\xb0\x0f\xe2\x7b\x9b\xa3\x15\xda\x21\x1e\x56\x6a\x14\x42\xc1\x4e\x84\xb4\x37\xde\x8b\xf0\xcd\x8a\xac\xb5\x92\x6d\xf8\xfb\xb8\xc2\x63\xbe\xa7\xa8\x8d\xea\xb3\x8d\x2f\xba\x6f\x88\xa8\xfa\x88\x8f\xb5\xb2\xc5\xba\x63\xbf\xd4\x6e\xf3\x61\x45\x69\xdc\x81\xb4\x0e\x5e\x0e\xce\x6b\xb1\xec\xae\xda\x11\x22\xd9\xe9\xac\xba\x38\x34\x41\xeb\x1e\x74\x5a\xe8\xf9\xfc\x4c\x97\xd0\x85\x5a\xf5\x05\xba\xa2\x57\x4a\xc2\x5a\x72\x83\x3f\xaf\x59\xb5\xed\xee\x5a\x61\xb2\xf3\x22\x4c\xaf\xb2\x70\x2b\xd9\xf2\x08\x14\x4a\x86\x99\xbc\xeb\x55\x3f\xc7\x2c\xdc\xdb\xce\x17\xdb\xf1\x17\x1b\x64\xfc\x28\x87\x6f\x47\xbb\x6d\x17\x5a\x8f\x11\x6c\x9b\xef\xc3\xeb\x57\xed\x06\x67\x5b\x66\xb7\xb7\x8d\x3c\xe4\x33\x48\x87\xbb\xb2\xa8\x1e\xb3\xc7\x38\xb3\xbb\x8e\x80\x76\x76\x7b\x78\xb9\x5a\x63\xfd\x2b\xe3\x0f\x55\x8d\xec\x3a\x41\x13\x11\xee\xea\xe1\x50\xb0\x2b\x6e\x19\x44\x5a\xa3\xa5\xf9\x21\x7a\xdb\x8c\xc0\x2f\x97\x5d\x65\x36\xa1\xe4\xcb\xd1\x4d\x28\x39\xe6\x32\x71\x5b\x76\xe5\xca\x4d\xa6\xa1\xfe\x6b\xd9\x77\x3c\xce\x7d\xd4\x0f\xd3\x8c\x52\x34\xc7\xce\x36\xb9\x2c\x99\xf1\x2d\x13\xb8\xcb\x98\x9d\x08\xa4\xf1\x17\x05\xc1\x8b\xc5\x22\xc3\xd7\x06\x6c\x2d\x04\x27\x17\x96\xb9\x09\x3f\xff\x47\x24\xcc\x2f\x6e\x28\xab\x9a\xe6\x41\x1b\x7d\x05\x6c\x06\x5f\x5c\x77\xbb\xb7\xdd\x86\xd3\xb7\x84\xdb\x28\xc1\xf2\x02\xc9\xc0\x1b\xd9\x75\xf7\xa3\x5f\xdf\x59\x1c\x0e\x16\x94\xa1\xee\x65\x4a\x76\xef\x40\x16\x0e\x24\xb6\x2f\x13\xff\xd8\x7f\x14\x81\xb8\xe7\xc5\x3c\x8e\xb4\x24\xa7\x66\x4d\x10\x56\xff\xfd\x58\x88\xb0\xa3\x3f\x65\x93\x7f\x92\x45\xdf\xd5\xd2\xb7\x92\xb9\xf2\xe5\x86\x21\xff\x6b\xcc\x90\xa3\xa4\xc0\x60\x49\x2c\x33\x5b\xff\xd0\x6a\xee\x70\x98\xe1\x85\xaf\x3a\xa8\x69\x6d\xd4\x64\xa2\x02\x1f\x3c\x5b\xd5\xbf\x87\x33\xae\x57\x08\x09\x83\x66\xda\xd2\xb3\x8f\x23\xac\xc2\x76\xc0\x4e\xe8\xcd\x4b\x39\x10\x3d\x01\xb3\xb3\xd2\x5a\xee\xf6\xfd\x3e\x4a\x21\xab\xda\xf8\xe9\xb9\x80\xff\xa0\x85\x58\x97\x24\x5e\x95\xf3\x63\xd4\x65\x77\xf4\xa7\x91\x2e\x2c\xfc\x3a\x8c\xe6\xb6\x1d\x58\x6d\x17\x41\x4f\x6c\xae\xf8\xe8\xbd\x51\x78\x71\x7c\x89\xe4\xa6\x65\xa2\xa2\x2c\x80\x04\x7c\x32\xd0\x1f\x40\x44\x3f\xcd\x43\x44\x37\x30\xbb\xd1\x6b\x62\x9e\xbb\xea\xf7\x6e\xdb\x72\x55\x88\xa5\xa9\x47\x1a\xa5\x8b\xd5\xa3\x4c\x12\x2c\x98\x0c\x54\x93\x17\x8a\x5f\x81\xa2\xf4\x71\x49\x7f\x99\xc3\x1a\x63\x65\xfd\x7b\xd6\xca\x7a\x5f\x6d\x73\x93\x54\x9c\x0d\xa7\xe4\x3d\x49\x0d\x2f\xf7\xd5\x56\x5d\x5b\x79\x83\x6f\xd8\x04\xb4\x25\x7f\x2d\x74\x24\xbc\x5d\xb1\x5d\x0e\xf1\x4d\xb1\x48\x6b\x93\xea\x24\xae\x22\xca\xdf\x4a\x56\x8a\x2f\x5b\xbb\x52\xae\x5a\xed\xf5\x53\x68\xa1\xc6\x9f\xe4\xed\xd5\xff\xee\x97\xf0\xd3\x71\x7b\xf5\x7f\xaa\x19\xfc\x14\x99\xac\x35\xf8\xfe\x33\x7b\xca\xb5\xc4\xed\x4f\xb8\x92\x3a\xc5\xc3\x37\xd5\x36\x16\x56\x19\xf9\xd0\x3c\x68\x6d\x72\x3d\x20\xa7\x3e\x03\x73\xf7\xd8\xbb\x07\xa7\xab\x4d\xde\x2c\x7a\x46\x63\xe7\x7c\x6b\xc3\x1b\x27\xea\xf6\x34\x2a\xe9\x2b\x1d\xee\x08\xce\xb7\xb4\xbe\x22\x4b\xb1\xd4\x0a\x6c\x78\xaf\x0d\x0f\x85\x8d\xe7\x84\x56\xea\x0f\xd5\xce\x95\xe1\x50\x6c\xc8\x95\x58\x12\xcb\xde\x00\xc2\x7e\x53\x6d\x21\x9a\xc5\x58\xa3\xaa\x12\x9c\x51\x0a\xa6\x6d\xcb\x9d\xf9\x09\x56\x4b\x60\xec\xab\xf9\xbc\x53\x6c\x61\x20\x72\x76\xfe\x47\xcf\x16\xfb\xe6\x45\x45\x1b\x02\x4a\x53\x6d\xd9\x00\x33\xec\xa7\xb4\xfe\x74\x7a\xd3\x72\xf8\x91\x6a\xea\xa7\x9f\x7e\xb2\x27\xf2\x53\xf5\xc9\xa7\x9f\xec\xd5\x6a\xe5\xa7\x78\xfa\x96\x6c\xaa\x1d\x54\xb9\xab\xc4\x94\xd6\x4a\x16\xaa\x1a\x4e\xaa\xfa\x41\xb1\x55\xea\xcd\xdb\x07\xd5\x5e\xc8\x4f\xdf\x78\xe6\x46\x27\xaf\x04\xc2\xd5\x61\xbd\x08\xeb\x88\x56\x69\xab\x4a\x59\x96\x9d\x62\x58\xa2\x87\x67\xf0\xb0\x9a\xcf\xcf\xe2\x85\xc6\x6b\x9d\xcf\x15\x34\xdc\x00\x15\x36\x40\x2b\xaa\xb2\x43\x0a\xaf\x4a\xa6\xa4\xfe\x76\xa1\x48\xae\x7d\x8b\x30\x73\xa5\x98\x43\xcc\x53\x20\xfb\xbb\x34\x41\x43\xfa\x46\x77\xb1\xd9\xd6\x71\x3e\x41\xa0\x31\x6b\x87\x88\x12\x6b\x3c\xe6\x4b\xe2\xd2\x7f\x6f\x09\x79\x57\xf8\x62\xac\xec\xaa\x00\x4d\xc3\xeb\xcd\x1d\xa9\x77\x0d\xa9\x9f\x5b\x43\x03\x94\x6b\xae\xd8\x86\x34\xee\x11\x66\xb6\xca\xe9\xdb\x1d\x6d\xea\x82\x83\xc9\x19\x7a\x24\x99\x4c\xc4\x31\x16\xea\x03\x0f\xe0\x52\x14\xfc\xcb\x87\x80\xd5\x34\x44\xe1\x95\x69\x0b\x36\x25\xac\xdb\x46\x56\x28\x03\x49\xe0\xdc\x9c\xd9\x28\xf6\x2c\x0e\x34\xf2\xc0\x29\x6b\x45\xbd\x15\x09\x1e\x03\x33\x5f\x33\x15\x56\x48\x9d\x0d\xb5\x2c\xcb\xb6\x7f\x26\x8c\xa7\x56\x47\x04\x1c\x00\x5a\x4f\x15\xde\x4e\x5b\x06\x3f\x35\x1b\x3a\x55\x87\x60\xf9\xc9\x9e\xcb\x69\xd5\xa9\xe7\x9c\x28\x9c\x67\xed\xb4\xdb\x6d\xee\x6c\x23\xaa\x3f\xd1\xe6\xa8\x37\x56\x9a\x83\x3a\x40\xea\xe8\x3a\x76\x26\x98\x8f\x51\xaa\x9e\x41\x5d\x17\x37\xe7\x2f\x1f\x5e\xd6\x45\x87\x85\x73\x82\xd0\xce\x07\x59\x48\x0c\x98\xc9\x29\x0e\x00\x2a\x24\xc2\xad\x22\xc8\x2f\x6b\xb5\x07\xd2\x8d\x91\x1a\xd3\xd3\xce\xb3\x4e\x0d\x49\xc7\xcc\xba\xba\x44\xb8\xa3\xd1\x06\x0c\x70\x5a\x7c\x0c\x23\xfe\x87\x10\xb7\x60\x0b\x63\x2f\xd3\x95\xa0\x31\x2b\x35\x67\xc7\xa4\x46\xdc\x94\x73\x33\x4f\xc1\xf7\xc1\xfd\x70\x3e\x3c\xd6\x55\x04\xc4\x9e\x18\xb8\x01\xbe\x9a\xb3\x89\xf7\xc9\xe2\x97\x4c\x07\x7b\x4c\x78\xa9\x3b\xba\xb2\xb5\x93\x07\xfd\x2b\x96\xc4\x50\x77\x70\xdb\x22\x85\xbf\xdf\xd2\x32\xca\xb9\x73\xa6\x08\x13\xc5\xdc\xf8\x11\x39\x16\x2f\x62\x1e\xe2\xef\x82\x0c\xb9\x50\x0f\xc8\xcd\x0b\x5c\xd8\xc4\xc2\x71\x89\x1c\x16\x19\xac\x50\x2d\x8e\x4c\xb2\x7b\x3e\x60\xdb\x65\x48\xc6\x1b\x9c\xf2\xd0\x8e\x7a\x2e\x02\xc6\x47\x46\xf7\x36\x30\xa6\x5d\xee\xf3\xb0\x55\xf4\xbd\xe6\x56\x88\x25\xc0\xe0\x65\xdd\x1f\xd1\xf0\x34\xcb\x1c\x1e\x3a\x7e\xc7\xb1\x33\x7f\x09\x6d\x14\xe0\xb5\xab\xf3\xa6\x98\x3f\x16\x26\x11\x0a\xf0\x47\xff\x11\x71\x44\x9a\x8f\xf9\x73\x6a\x3e\xc8\x71\x32\xde\xd4\x61\x39\x92\xff\x00\x96\x08\x44\x4e\x81\xe4\xb5\x8d\x46\x28\xd0\x1e\xf6\x5a\x90\x1f\x22\x75\xe6\x5f\x0a\x67\x31\x36\xed\xd0\xd5\x4c\x4d\x70\x06\x29\x5d\xa5\xfa\xd3\x3b\x76\x96\x69\xe3\x89\xef\x06\x82\xf1\xcc\x1a\x0b\x52\x16\xc4\xa6\x81\xb1\x2b\x45\xf3\xb9\x75\x67\x3e\x0b\xfd\xd3\xef\x38\xb9\x59\x12\x84\x4d\xcd\x23\xa9\x98\x62\xc7\x74\x6b\x7b\xc8\xe0\xb8\x90\x24\x42\x7d\x90\x89\x9d\xb6\x2f\x60\x26\x10\xa6\x8d\x89\x94\x7f\x0e\x7c\xbf\x75\x4a\x9a\x40\xf6\x0e\x59\xde\xfe\x60\x7e\x17\xaf\xcc\xff\xa6\x96\x53\x3e\x04\x21\x18\x09\xcf\x22\x4d\xca\x0c\xef\x15\xdd\x72\x9b\xf0\x1f\x2e\x8b\x05\x04\x57\xe8\xfd\xff\x5f\x53\x6d\xb9\xcd\x60\x82\x8e\xe0\x71\x15\x8d\x0d\x6f\xf1\x8e\x3c\x94\x4c\xff\x99\xd5\x91\x59\x7b\x13\x70\x8b\x7c\x91\x2a\x93\x8c\x13\x16\x10\xb0\x8a\x13\x26\x20\xd5\xb4\x4e\x6a\x78\x43\x38\x61\x9b\xe8\xed\xcb\xc8\x8c\x22\x24\xad\x1f\xb5\x67\x46\x03\xa5\xb6\x06\xd4\x4f\x8a\x1a\x91\x08\x5d\xa1\xaf\x49\x14\x02\xa1\x90\x2a\x80\x15\x3a\x1c\x82\xf3\xaa\xff\x5c\x92\xc8\xfe\xa7\x58\x09\x5f\x9b\xd1\x40\x09\x49\x23\xe0\xc6\xca\xf0\x58\x3f\x81\x9c\x9d\x39\xaa\xce\x35\x15\xb9\x4a\x53\x9f\x18\x79\x45\x42\xd1\xb1\xa5\x3f\xa7\x56\x94\x1e\xd9\x16\x75\x5e\x9f\x55\xac\x65\x74\x53\x35\xdf\xbb\xa9\x17\xdf\x16\x5a\xaa\x41\x12\x62\x57\x62\xec\xcc\xec\x81\xb9\x02\x32\x70\xb7\xc9\x54\xa0\x3c\x87\xd3\x1a\x8d\xd8\xbd\x4c\x89\x21\x9d\xeb\x80\x2f\x68\xf7\x75\x5b\xd5\xa4\x2e\x9c\x43\x2a\x8f\x0c\x43\xc1\x1e\x49\x1d\x13\x18\xd3\xdd\xdc\x64\xb3\x1b\x83\x41\xe7\x70\x6a\x17\xba\x65\xb6\x17\xaf\x59\x82\x87\x06\x80\xc8\x4a\xd8\xff\xfb\x57\x1c\xad\x8c\x6a\xf2\xb7\x3d\x58\xbf\xc5\x99\x70\xb5\x4e\xdd\x89\x88\xee\x86\x53\xc9\x60\xef\x32\x0b\xae\x8e\x6e\x26\x69\xdd\x0d\x76\x86\x45\xb9\x5a\xfb\x24\x77\x86\x1c\x08\x53\xf9\x05\xca\x78\x83\x8b\x07\x88\x4f\xe2\x97\x1c\xd8\x92\x4c\x7a\x57\x02\x4c\x3d\x19\xcb\x4a\x4d\x01\x10\xc1\xea\x64\xa6\xf0\x6d\xd1\x3f\xcd\x28\x66\xb3\x32\x28\x61\x5d\x75\x9e\x81\x51\xaa\x53\xd2\x02\xef\x01\x3e\xf7\x1d\x6c\x06\x92\xd7\xfe\xcc\xc5\xea\xc1\xdc\x37\x77\x55\xf7\x34\x7e\xf4\x1c\x96\x38\xf8\xc1\x3d\x84\x15\x74\x0b\xd1\xea\xc0\x0c\xb4\x20\xef\x09\x7f\x50\xcb\xd5\x4c\xe8\x28\x89\x19\x33\x0b\x68\xba\xa0\x7f\x05\x6c\x1d\x42\x21\x11\x49\x08\x5a\x00\xf8\xd8\xad\xd7\x7f\x72\x05\x1d\x43\x15\x79\x1d\xc4\x6b\xf1\x76\x99\x23\x3a\x41\x87\x39\x64\xcf\x52\x99\xf0\x1b\xfd\x32\xf7\x99\xa1\x1f\x84\x04\x04\xa4\x6f\x22\x0e\xfb\xf2\x85\xe6\xc1\x7c\x4e\xeb\x7c\x33\x5a\x4b\xda\x37\xc5\xd7\x39\x96\x6d\x66\x59\xd2\xd9\xe3\x4e\x45\x06\x8d\xdd\x46\xa4\x86\x7c\x5a\xe7\x36\x47\x07\x3d\x91\xcc\x7d\x40\xc6\xef\x83\xec\x00\xe1\x52\xf5\xb4\x7c\xde\xfc\xc2\xd1\x53\xa7\x36\x41\x3d\x7f\xbd\x37\x3f\x32\xb0\x9e\x8b\x76\x7a\x43\x84\x17\x90\x15\xeb\xf7\xb0\x25\x4a\xc0\xb6\xbd\xc8\xe9\x07\x2a\xee\xda\x9d\x98\x56\x6c\x4a\xeb\x37\x0e\x01\x3e\xc6\xcc\xf0\x5e\x77\x66\x4b\xdc\x7f\xc4\x59\x7a\x69\xc2\x99\xba\x16\xb4\x7b\x4e\xb9\x78\xb8\x22\x8b\x8e\xb0\xba\x98\xbd\x25\x9b\xf6\x9e\xc0\xb3\x19\x5a\xda\xa7\x5b\xc3\x85\xfe\x54\x75\xdf\x93\x8e\x88\x99\xf6\x8e\xe3\xa4\xdc\x83\x67\x44\xd5\xbc\x16\x95\x20\xcb\xd9\x8e\x6d\xda\xfb\x7b\x2a\x04\xa9\x67\xd8\xf4\xbd\x3c\xbb\xc0\xc1\xf3\xe5\xbe\xa6\xf5\x6b\x22\x2c\x67\xbb\x14\x04\xab\x05\x53\x76\xab\x2d\x8b\x7b\x89\xd3\xf1\xf4\x6c\x21\xbc\xf2\x59\xdf\x91\xe0\x70\xb0\xf3\xe4\x6d\xd3\x90\xfa\xcb\x6a\xf3\x6e\x86\x74\x09\x39\xa2\xd9\x1f\x32\xfe\x35\x84\x12\x83\x87\xc7\x0f\x6d\x31\x6b\x00\x1f\x17\x5d\xf5\x9e\xd4\xaa\x9f\x00\x26\x30\xbb\x0f\xb4\x69\x9e\xc1\x72\x74\xbf\xf1\xd7\x94\xbd\x68\xe8\xed\x9d\x82\x11\xd6\x5b\xe9\x92\x2c\xec\xcd\x41\x5a\x0a\x6c\xc2\xb5\x97\x5c\xa2\xbd\x28\x88\xa5\x85\xc9\x07\x1c\xa9\x4e\xdc\xa2\x72\xc3\xc5\x93\xc5\xea\x35\xbd\xbd\x25\xfc\xeb\x4a\x10\x9e\x42\xe4\x2d\xd9\x54\xf7\xe4\x25\x03\xcf\xd3\xfc\xe4\xe1\xd5\xcc\x0c\xfb\xd6\x0d\x6a\x7f\x85\x90\xeb\x0f\x46\xaa\xfa\x61\x86\xa4\xc4\x16\x08\xcb\x3d\xed\x5e\x57\xef\x29\xbb\x55\x58\xd0\xdf\xf8\x14\xb4\xc1\x96\xa9\x9f\xa1\x99\x63\xd9\x90\x10\xf2\xea\x75\x4d\xeb\xe1\x7d\xf0\x10\xd1\xb8\x41\xd9\xfb\xf6\x1d\xf9\x9a\xde\x90\xcd\xc3\xa6\x21\xcf\x2a\xbd\xa0\x6e\xa6\x8f\x5e\xad\xe6\xf0\x83\x2e\x5d\xd6\x87\xf8\xc7\x00\xe9\xf1\x99\xb8\xee\xf4\x61\xcf\x74\x16\x9e\xaf\x3e\xfc\x83\x8f\x67\x70\xc1\x60\x33\xb8\xda\x86\xbf\xc2\x1f\x67\x97\x38\x2c\x0f\x91\x1b\x43\xbf\xaf\x17\xd1\x58\x32\xd9\x3c\x7b\x22\xb5\xba\x06\x86\xfc\x86\x74\x5d\x75\x0b\xf1\xff\xde\x64\x2e\x16\x0c\x74\x3d\x86\xe2\x60\x38\x85\x26\x65\x99\x4d\xf7\xa8\xa7\xfd\x57\x03\xc0\x14\xa4\x6a\xa3\x8f\xa0\x49\x7a\x20\x41\x7d\x12\xce\xc9\x22\xeb\xe0\x39\x4d\x36\xfc\xa4\x0e\x8e\x9d\x3c\x73\x18\x70\xbc\xbc\xf1\x2d\x85\x1d\xcb\x22\x47\x0e\x13\x23\x40\xe9\x1d\x97\x41\xd0\xbf\x21\xf2\xd6\xfa\xc6\x75\xca\x14\x62\x3d\x71\x7d\x5d\x4a\x1f\xc3\x1f\x3a\x27\x30\xe2\xbc\x5a\xa7\xa4\x88\xf3\x89\xbb\xba\xab\xba\x4f\x5e\x8a\x15\x5d\x63\xb6\xa2\xeb\x32\x9b\x78\xee\x8a\x14\x1c\x2d\xb9\x13\x36\x64\xc1\x09\x52\x13\x86\xe0\x10\x52\x52\x52\xec\xdd\x09\x5c\x9a\x62\x28\x70\x85\x7c\x4b\x3e\x28\xd2\xd1\x11\xb1\xdb\x6a\x18\x84\xda\x63\x60\xe0\xba\x02\x14\x1d\x2d\x59\x18\x74\x5f\xf8\xfd\x2c\x63\xc7\xdc\x3c\xa6\x9f\x46\x3c\x5b\x12\x1e\x89\xdf\x64\x0c\xad\x7e\xef\x81\x43\xaf\xb8\x9e\x85\xc5\xc6\x3b\x72\xda\x68\x47\x49\x8e\xeb\xb1\x01\xb5\x5e\xb2\xca\x90\x58\x94\x1d\xc1\x01\x90\x33\xaf\x52\xf8\xbc\x4d\xa1\xc3\xf3\x6d\x8c\x77\x0a\xe8\x19\x7d\x6a\x90\xde\x89\x4b\x56\xd7\xdb\x12\x4f\x16\x46\xb7\xc4\x1c\x5c\x03\xd5\xc5\x38\x4d\xad\x69\xad\xf8\xd3\xdc\x68\x09\x93\x12\xaa\xfe\x24\xae\x3c\xa0\x02\x02\x70\xca\xbc\xdc\xea\xa0\x0b\x4d\xa4\x22\x83\x7f\xd9\x10\xf5\x6e\x70\x9b\x4e\x41\xc7\x84\xea\x54\x27\x9c\x9d\x8f\x42\x14\x7b\xd8\xbe\xf3\xc5\xd6\xa7\x36\x32\x6c\x1f\x92\x17\xb0\xd0\x17\xfc\x2a\x76\x57\xe0\x68\xb9\x97\x58\x20\x64\x24\x4b\xe0\x3f\x4b\x8e\xc5\xa2\x53\x7f\x69\x17\x67\x2c\xd0\x89\x19\x3a\x28\x9a\xcf\x67\x41\x4f\x33\x1d\xf5\x36\x73\x9d\xd9\x07\x3d\xb5\xf0\x8a\xea\xac\xdc\x74\x5d\x12\xf8\x0f\x0b\xcc\xce\x67\x8b\xd9\x39\x0d\xb3\x8b\x14\x7b\xda\x7d\x75\xbf\x55\xdc\xf0\x25\xd6\x22\x0f\x30\x45\xf6\x07\xa9\xf5\xdf\x86\x63\x56\x7f\x5a\xbe\x09\x1e\xeb\x6d\xd3\x3f\x80\x24\xaa\x3f\xcc\x95\x7e\x11\xde\x5f\x29\xdb\xa4\xf6\x2e\xc3\x50\x43\x42\x52\x98\x8f\x9f\xd8\x45\xc4\x87\x9b\x0b\xfe\x7a\x1b\x04\xf9\x40\xe9\xfd\xfe\x86\xeb\xf8\x25\xac\xf7\xde\xf3\xdb\x59\xcc\x30\xa4\xfd\xc8\xa9\x73\x97\x67\xca\xc3\x3f\x0a\xdb\xdc\xd9\x1d\xee\x9f\xb5\xe2\x45\xbb\x63\xc0\x66\x48\xbb\x7e\x05\x13\xb7\x43\x17\x98\xfc\x6c\x19\x8b\x18\x18\x5a\x5d\xdf\x93\x5d\x7e\xd3\x19\x63\xb2\x50\x5c\x6f\x43\x2a\xa6\x99\xc4\x3c\xcf\x38\xc6\x15\xfa\x35\x67\xe6\x07\x38\x01\x2c\xbc\x9e\xe9\x32\x11\xf0\xf4\xc4\x03\xa4\xbd\xe8\x01\x00\x9a\x2c\xf7\xc1\x8d\x9d\x17\xbc\x94\xf0\x6f\x42\x17\x9e\xd3\xda\x30\x77\x29\x9f\xa9\x84\x84\x84\xdb\x0b\x99\xc1\x1c\x3f\x95\x23\xeb\xc7\x84\x36\xfb\xd1\x47\x17\xde\x7e\x21\xb3\xdd\x3f\xc1\x5e\xd6\x51\xbf\x62\xb4\x35\x67\x6a\xd9\x12\x6c\x16\xb2\xac\x88\x1d\xbb\xb7\x85\x91\x8c\x1e\x70\x19\xa6\xf9\x2c\x24\x37\x17\xd1\x4e\x07\x02\xfd\x31\x7e\x2c\x96\xf8\x1f\x21\x31\xff\x72\xa9\x73\x0c\x4f\x00\x82\xe1\x56\xa8\x07\xbf\x4e\xb0\x76\xe7\x71\xe4\x86\x1b\x12\x84\xff\x29\x72\xed\xc7\x96\x26\x1f\x27\xea\x1e\x95\x54\x2c\x9d\x08\xee\xbc\x00\xa9\xb4\x5c\xa9\x64\xc9\x97\xec\x3d\xe1\x5d\x52\x8d\xe3\x91\x82\x52\x4d\x6b\x8d\xd2\x6a\xe8\x1c\xd1\xd5\xe0\xd6\xcb\x1c\xdc\x8c\xbe\xe4\x39\x20\x60\xff\x37\x92\x94\x7b\x48\x9f\xac\xee\xbf\x8f\xe4\x2b\xc7\xb6\x14\xf2\xf4\x59\xa9\x10\x1c\x5b\x72\x9b\x08\xef\xd5\x26\x2e\x33\x6f\x75\x61\xbd\x13\x10\x40\xea\xb0\x87\x19\x6f\x5b\x31\x0b\x24\xae\x0d\x39\x16\x3c\xfa\x6d\xa1\xa3\x4f\x07\x82\x44\x21\xd3\x05\xc1\x77\x04\xdf\x10\xbc\x25\x78\x1f\xf3\xa2\xcb\x7b\x22\xcb\x94\x5f\xc5\xef\x49\x79\x76\x39\xd9\x92\x50\xba\x80\xc4\xb6\xc4\x2a\xd5\x5d\xa6\xb4\x30\xa1\x20\x58\x0a\x7c\x42\x41\xf4\xa4\xd8\x3b\x83\xc7\xb2\x26\xd8\x04\x4a\x3b\x7b\xe7\xf2\xce\x3d\xf3\xed\x6e\x88\x2c\x09\xc2\x35\x99\xcf\xef\xc8\x7c\x7e\x43\xe6\xf3\x42\xcd\xe7\xc2\x69\xe5\xdf\x13\xcd\xc5\xdf\x66\xe3\xb8\xf0\xdb\xfc\xe3\x87\x7c\xd4\x97\x4f\x12\x15\xaa\x21\x1e\x08\xb8\xb8\x17\xf0\x7f\x49\xc0\xdb\x5b\x14\xb3\xc5\x0c\x5c\xaa\x21\x91\x14\x39\xc5\xb9\x25\x88\x0d\x15\x4e\xdb\x1e\xfb\xeb\x8a\xea\xb6\x1c\x0d\x19\xdd\x34\x94\x30\xf1\x32\xf9\xec\xba\xef\x37\x63\x4d\x4e\x2e\xe0\x21\x76\xf1\xd5\xe7\x3a\x6e\x6c\x42\x85\x83\x7b\xf4\x9b\x8a\x55\xb7\x84\xbf\x68\x76\xdd\x5d\xbf\xe3\x7b\x85\xbb\x10\x13\x42\xd9\x6d\xd2\xfd\xf7\xc4\x30\x65\xf1\x67\x75\xfb\x6d\x2b\xcc\x94\x92\x2f\x7c\xf4\x45\x32\xab\x90\xe1\x4d\x32\x65\x81\xb0\x19\x3d\xeb\x12\x07\xb9\x24\x91\x96\x0b\x6c\x4c\xe0\x57\x93\x1b\xc2\x39\xa9\x7f\xd0\xa7\x32\x7d\xcd\x03\xd6\x22\x9d\x83\x31\x79\xf7\x9e\x47\x06\xf1\x64\x1a\x16\xbf\xb5\x7f\xf5\x70\x54\x06\x27\xa2\xa2\x8c\xd4\xdf\x9c\xfe\x81\x3f\xf9\xe6\x30\x75\x8f\xfc\xe6\xe7\x63\x83\x6c\x76\xdc\xcb\xbb\xe1\xba\x48\x88\x52\x5b\x30\x8a\x5b\x24\x17\x0b\x5a\x0f\x04\x1f\xc7\x68\x0d\x69\x47\x32\x58\xed\xe2\xc8\x4d\x99\x9c\x7f\xff\xf1\xe5\xf3\xeb\xbf\x7c\xf5\x9f\xeb\xe8\x8b\x9e\x70\x14\x63\x4a\xf0\x24\x3c\x18\x67\x97\xf1\xa1\xb0\xbf\x8f\x1d\x08\xd7\xae\x7f\x18\xdc\xab\x1e\x3e\xfa\x39\x40\x52\x13\x7b\x2f\xf6\x11\x34\x98\x6c\x1f\x3d\xc3\x97\x11\x72\x46\x8b\x76\xa8\xd9\x03\x85\x47\x4c\x1b\xdf\x33\xed\xd9\x6b\x03\xc7\x48\x5a\xcb\x4e\x37\x31\x21\xbb\x3d\xcb\xaa\x30\xae\xc8\xe9\x97\xb0\xc5\x8d\xad\x8c\x19\xfb\x5a\x42\xb6\x14\x39\x79\x08\x3c\x12\xd0\x90\x67\x6e\xf2\xb9\x62\x4f\x34\x22\x38\xef\xc0\x99\x22\x9e\x33\x4f\x47\xcf\x2f\x91\xf4\xd1\x35\x00\xd3\xc2\x17\x08\x8a\xeb\x34\xa2\x7e\xe0\x0d\x7c\xe0\xe3\x6a\xfc\xbe\x64\x3e\xef\x45\x64\x0f\xc5\x59\x27\x81\xd5\xc9\x5e\x14\x49\x86\xdc\x32\xbb\x63\x2e\xe4\xa9\xb7\x93\xe4\xc3\x94\x44\xee\xb3\xda\x83\x26\xbf\xf1\xda\x7e\xef\x4f\x98\x37\x1d\xbb\x81\x83\xb7\x91\xdb\x8b\x11\x36\xc3\xdc\xa6\xd0\x43\xb2\x47\x89\xf7\x43\x70\x98\x09\x26\x32\x8e\xa7\xf7\x2f\x01\xd1\xc2\x79\xb9\x3c\x84\x51\x0f\xe1\xf4\xad\xc8\x97\x85\x5e\xd4\xc6\xc1\x2e\x39\x34\xe4\xc3\xf4\x35\xb1\xce\x51\xf1\x4b\xb3\x51\xf6\x28\x0d\xee\x91\x6d\x10\x6c\x8f\x3b\x7e\xb9\x60\xac\xde\x21\xd5\x2b\x4a\x4f\xfa\xd0\xaa\xd2\x76\x7e\x65\x3d\x5a\xb1\x5a\xa3\x21\x3a\x22\x69\xf7\x27\x5a\xd7\x84\x29\x41\xe0\xfb\x1c\x30\x8d\x9b\x8e\xd1\xd0\x41\x2c\x26\x29\x81\x31\x5d\xc4\xba\x70\x3b\xb5\xf0\x76\xf0\x9a\xd0\x21\x42\x69\xa4\x8a\xac\x67\xbb\x79\x17\x50\xea\xc3\xc1\x44\x7b\x13\x79\x4d\x4d\x08\xcb\x8b\x5d\xd3\x3c\xb8\xb8\xdd\xbd\xcb\xa7\x66\xdf\xbf\x64\x3f\x76\x7d\x1f\x30\xf5\x26\xf0\xff\x3a\xd3\x9e\x3e\x45\x1a\x20\x9a\x3e\x35\xa1\xa1\x0e\x1a\xd1\xe1\x8e\x56\x6e\x9a\x48\xa7\xc6\x1b\x6f\x6c\x1a\xc9\x9e\x9b\xd4\x60\x6b\x52\xcb\xbb\x4a\x0b\xae\x4f\x33\xf9\x10\xfa\x9f\xf5\x5b\x4b\xab\x10\x18\x1f\x4d\xb7\x91\x41\x74\xf4\x58\x6b\xd3\x48\xda\xa4\x11\x23\x4d\xbf\x25\x1f\xa4\x11\x5a\xc7\x1b\x42\x13\xe9\x14\x45\x63\x8d\x5d\x23\xe9\x3d\x78\xf4\x9d\x75\x16\xee\xfd\x7c\x7e\x36\x80\x91\x3a\x2b\x1e\x90\xb8\xa5\xd0\xb1\x0c\x98\x97\xf6\x01\x8e\x7d\xc5\xe0\x56\xc3\xe1\x04\x96\xbd\x29\x41\x3a\x66\xee\x98\x8b\x90\xd3\xc0\xdc\xaa\x1f\x83\x77\xc0\x45\xf9\x34\x7b\x7a\xf2\x33\x5a\xcf\x28\x9b\x12\x9f\x1c\x4c\x07\x61\xf8\xf4\x78\x9a\x32\x43\xb0\x0a\x35\x46\xcd\x52\x24\xa2\xe0\x68\x1a\x91\x20\x67\x62\xeb\xea\x6f\x56\xb8\x4b\xa3\x24\x9b\xf2\xe2\x49\xf3\xb9\x2f\x1b\x6b\x33\x58\xec\xa0\x64\x2c\xde\x94\xed\x6a\xb7\x9e\xb8\xf9\x6f\xa0\x1a\x4d\x58\x29\x70\xa3\x6b\x0b\xfe\x4c\x0a\xb2\xda\xad\xd1\xf2\x95\xf9\x03\xab\x7f\xcb\x0a\xe9\x10\xcb\xba\x4c\xaf\x8d\xc5\xb5\x9a\xbc\xde\x53\x2d\x68\x9b\x7c\x33\x85\x2b\x8b\x61\xf2\x7f\x70\x5c\x07\xec\x81\xae\x68\xc5\x71\x5a\xe2\x2a\xb9\x19\x15\xb4\xf4\x85\x5e\x29\x21\xee\x21\x17\x03\xef\x4c\x3f\xf8\x2e\x9a\x1e\xbe\x49\x23\x81\xf0\x27\xc0\x99\xdc\xe1\x1b\x3b\x8a\x11\xf8\x9f\xf7\x08\x3c\x2c\xf7\x0e\xdf\xe4\xae\x4b\x19\x31\x89\xfb\x01\x6e\x36\x14\xb7\x2c\xe7\xa9\x99\x71\xdf\x26\xe2\xda\x77\x64\x01\x6a\x76\x59\x07\xc8\x4f\x92\x61\x32\x5c\x6d\x56\x8c\x73\xbc\x2e\x8f\xf3\xf7\x98\x5c\x04\x2e\x97\x1f\xee\x27\x49\xc9\x8b\x1e\x71\x39\x93\xb1\x96\x2b\xb2\xb6\xfd\xdb\x88\xec\xa3\x0d\x0b\x14\xe7\x41\x1c\xfc\x40\xe6\x66\x1c\x8b\x6e\xbd\xc2\x2b\x53\xef\xae\x9e\x93\xdc\x20\x7c\x3d\xd3\xcf\x8a\xac\x27\xd1\xa4\x7a\xaf\xb1\x50\x24\x4b\x1d\x01\xd0\x45\xbe\xec\x9e\x76\x0f\x6c\x33\x9f\x0b\x17\xa9\x93\xa0\x33\x9c\x98\x38\x48\x7b\x50\xec\xc8\xea\xcf\x13\xbd\x9d\xa1\x2f\xac\xb6\x16\x83\xef\x6d\xb2\x46\x75\xff\xfb\x80\xab\xd9\xf3\xd7\xcb\x29\x10\xc7\x7f\x51\x2f\xa6\xb3\x73\x43\x42\x03\x6f\x4e\x60\x43\x82\x6a\x5f\x01\x57\x69\xe5\xa5\xd7\xaa\x53\xfd\x25\x26\x08\xf3\x85\x11\xed\x64\x27\x2a\x2e\x48\xed\x10\xde\x4e\x2d\x3a\x03\x17\xce\xb7\xdd\xc6\xbd\xc6\xc2\x82\x3b\xb7\xb3\xe0\x33\x48\xd3\x2b\x6d\x9a\xbc\xf1\x01\x2e\x7f\xe1\x00\x97\xa1\xab\xae\x59\x76\xba\x9e\x89\xc7\x23\xcc\x43\x78\xea\x2f\xa7\xed\x8d\x01\xaa\xf3\x65\x71\xe9\x01\xc3\x0c\x84\x85\xcf\x08\xc7\xd1\x5e\x58\xff\xc4\xc0\x42\x34\xf3\x16\x25\xee\x2c\x4a\x44\x42\x99\x56\x1b\x72\xd0\x4f\xe4\x21\x52\xf3\x1f\x16\x12\xe1\x28\xfd\x9c\xf6\x19\x85\x86\x56\xf3\x8f\x89\x44\xb8\xbf\x96\x4d\x7b\xbf\x55\xc8\x84\x6d\x68\xf5\x4d\x53\xdd\x76\x33\xe4\x73\x80\x04\x13\x10\x8b\xcc\xe6\x48\x84\x64\x8c\xe6\xfb\x3e\xdb\x58\x04\xd8\x1b\x36\x9e\x99\x03\x90\x25\x83\x38\xe2\xb8\x53\x41\xde\x91\xb9\x9e\x84\x9f\xcb\xd8\xe1\xf0\x5a\x9d\x1e\x68\xa6\x25\x55\x3c\xbb\xde\xdc\x91\xcd\xbb\x17\x2d\x7f\xc5\xb7\x77\x15\x23\x75\xe4\xa1\xde\xcd\x10\x42\x32\xcb\x1e\x27\x69\x36\xd2\x69\xc8\x24\x9a\x79\x9f\xa3\xdc\xc3\xda\xbc\xb3\x4b\xec\xd7\xa1\xbb\x1a\x58\x2f\x1a\xd3\x74\xc8\x28\x32\x75\xe8\x62\x31\xb4\x3b\x8d\xbf\xd6\xad\xc7\xe1\x63\x9b\x45\xdb\x1d\x3f\xf1\x62\x86\xbb\x01\xe4\xd1\x5e\x87\xef\xc0\x13\x34\x3b\xc1\x64\x06\x92\xf5\xe4\x95\x02\x03\x79\x7b\xae\x6f\x28\xab\x93\xca\xbf\x98\xc5\x9d\x18\x99\x3c\x6a\xf9\xe5\xc3\x9f\xbb\x96\x3d\xdd\x52\x1f\x09\x85\x0d\x49\x65\xe6\x7c\xf3\xf2\x8b\xaf\x6c\x42\x1f\x9c\xb0\x8b\x58\x67\x5f\x46\x78\xb4\x11\xac\x9a\x6b\x95\xc7\x97\x99\x64\x64\x7d\x36\x2e\x6e\x08\xa1\xd0\xf3\xb9\x2e\x45\x76\x15\xeb\x82\xc6\xe2\xd5\xf5\x07\x26\x59\x17\x8d\x14\x13\x8f\x48\x2b\xd5\x06\x1f\xe2\xaa\xa4\xae\x88\x55\xa5\xae\x57\x6c\x95\xba\x3a\xe6\xbc\xc2\x4d\x09\x45\xb1\x08\xd6\xe2\x40\x8b\x5b\x4e\x6f\x29\xab\x04\x65\xb7\x2f\xfb\x82\x81\x1b\x6f\x49\xb5\x43\xbc\xe2\xb1\x5d\x19\x02\x9b\xf2\x7c\x34\x1d\x19\x33\x71\xe0\x20\x43\x44\x2b\x53\x97\x8f\xce\x4c\xa1\xc4\xc1\xa7\x42\x28\x8e\x0e\x25\x3c\xe4\x00\x6b\x33\x09\x6b\x14\xa4\xd8\xc5\x31\xc5\xc9\xdd\x6c\x52\x7a\x87\xd9\x76\x15\x50\xc3\xea\xce\x04\xbb\x6c\xb8\x1b\x6c\x12\xf9\x2e\x77\x57\xbb\x30\x92\x42\x6f\x96\xcf\x78\xa6\x25\xa6\x46\x46\x21\x16\x90\xe2\x03\xaa\x32\x8d\xc3\x25\xcd\xe5\xe8\xa3\x69\x6c\x30\x7b\x80\x7f\x8f\xc7\x0c\x96\x45\x5c\x57\x1b\xda\xa7\x5d\xeb\x73\x72\x4a\xd8\x8c\xb3\x8e\x9b\xe1\x7d\x07\xfd\xa3\x09\xd9\xc8\xcf\xce\x58\x3c\xc9\xf9\x3c\x79\x90\x72\x80\x05\x9a\xd0\xb2\x26\x2e\x23\xb1\x91\x53\x03\x1d\xa0\xd3\xca\x26\x3a\x4b\x9b\xbc\xdf\x2f\x70\x99\xae\x18\x43\xae\x66\xa6\x0b\x3e\x9b\x00\x61\x1d\x20\x87\xf5\x31\xa0\x5d\x50\xd3\x6d\x99\xad\xd8\x8d\x23\xd7\x8f\xd6\x66\x30\xc4\xc9\x3a\x96\x15\xce\x48\xd6\xde\xf5\x43\xb8\x8c\x23\x3d\x78\x97\x54\x26\x58\x3f\xc0\x7a\x07\x92\xc9\x40\x8b\x61\x19\x61\xe0\x03\x48\xe0\x4d\xc4\xe6\x0e\x16\x11\xd5\x1a\xef\xa7\x9e\x1f\x34\xce\x04\x89\x8d\xda\xc3\xa1\x88\x91\x46\x1d\xcf\x41\xac\xd1\x91\x9a\x58\x60\x1a\xc4\x88\x16\xcc\x25\x03\xf8\xba\x12\xa4\x13\x8a\x97\x01\xd6\x74\x66\x01\x6a\x4a\x52\x20\xf3\x95\x08\x29\x7c\x42\x67\xb0\x30\xd7\xc0\x68\x23\x7d\xf9\xa1\xa3\x76\x28\xb5\x5f\x2d\x6e\xe1\xc4\xfe\xa9\x97\xdb\xf0\xd8\x99\x63\xbf\xf4\x34\xd3\x92\x25\xa4\xbd\xf5\xa4\x9d\x1e\x0e\x14\x57\x2e\xfd\x7e\x48\x48\x5a\x50\x8b\xb4\xba\x4e\xfa\x47\xa6\xbf\xc6\x94\x90\x43\x1f\x86\x39\xae\x4e\x25\xc2\xae\x26\x7c\x40\x82\x3b\x47\x82\x2b\x4f\x5d\x2b\x39\xd0\x45\x94\x52\x66\x74\xea\x42\xd7\xb7\x45\x41\xc1\x78\x33\x90\xa2\x54\x80\x62\xe6\xf7\x0c\xbb\x57\x0e\xfb\xcc\xec\x66\x5e\x9c\x43\x13\x5b\x35\x76\x4a\x23\x25\x11\xb9\xba\x21\xcb\x3b\x93\x6c\x63\x78\x36\x25\xf5\x3a\x99\x94\x0a\x0c\x7c\x22\xe3\x70\xc8\x0c\xf2\x8d\x9c\x52\x85\x06\x2e\x68\x7c\x12\x03\x2c\x8f\xb3\x93\x1e\x45\x2f\x52\x92\xde\x41\xfb\x1e\x2e\x15\x67\x97\x0a\x72\xbd\xb6\xaf\xa1\x2c\xd0\x8b\x96\x6f\x88\x96\x83\x8a\xb3\x0b\x64\x33\x64\xfd\x3a\x3e\x28\xc6\x7e\x64\x0f\x45\x0e\x45\x29\x54\x82\x4e\x51\x74\x10\xe3\xaf\x1e\x8d\xc2\x95\x44\xcb\x4a\xa6\x41\xf1\xbf\xcd\x76\x85\xfc\xe8\xff\x53\x1b\xd6\x63\xde\x58\x86\x79\xfb\x85\x9b\x92\x67\xee\x5a\x89\x96\xad\x15\xeb\xbc\xd9\xc8\x98\x10\xfb\x42\xe6\x55\x56\x63\xb8\x4c\xe4\xb1\xa4\xe0\x47\xe4\x0d\x72\x76\x91\xd5\x1c\xe6\x6e\xe4\xbc\xe6\xf0\x63\x5d\xf6\x12\xe1\x7f\x8f\xe4\x13\x93\x29\x48\x40\x8c\xbd\x17\x18\x9d\x5f\xc1\x45\x2e\xb9\xeb\x88\xe8\x97\xe4\x79\x35\x1c\x52\x26\xf3\x4f\xf0\x5d\xd4\x48\x82\xff\xa2\x35\x9b\xc6\xfa\x48\x87\xef\xdb\x5d\x77\x67\xfd\xeb\x23\x25\x96\x49\x0f\xdf\xcb\x05\x6f\x14\xb9\xd7\xac\x15\xf4\xe6\xc1\x38\x8b\x51\xd2\x15\xd6\x62\x1a\xba\x24\xaa\x8b\xdd\xad\x03\x4a\x22\xf6\xd2\x16\xc5\x67\xef\xa9\xce\x04\xae\xa6\x0e\xf6\xa9\x88\x30\x0f\x7d\xd7\x6f\xfc\x33\x81\x64\xab\xf6\x45\x42\x31\x8e\xf5\x13\x36\x7f\x15\xf7\x94\x6c\x9f\x75\x20\x08\xcc\x61\x61\x76\x34\xd0\x99\x98\x48\x69\x43\x16\x74\xea\xc0\x8e\x88\x38\x2b\xa0\x90\x9f\xda\x74\x69\xc6\x92\xea\xd3\xa6\xa9\x11\xe4\x1b\x9d\xe9\xc4\xd0\xe5\x1e\x4c\x83\xec\x67\xb9\x15\xc5\xd3\x9e\x0c\xb0\x57\xb4\x53\xed\xac\x27\xfb\x24\x54\xf2\x46\x2e\xa4\x33\xbc\x67\x50\x0b\xdb\x79\x60\x73\xcf\x57\x08\x93\x25\xde\x61\x7e\x2f\xf0\x3f\xd0\x87\xa8\xa6\x0e\xc3\x7a\x5a\x2c\x63\xf5\x48\x72\x2c\x87\x11\x81\x1f\xa6\x5f\x17\xe4\x70\xb0\x29\xde\x43\x97\x10\x7f\x32\x65\x14\x46\x12\x29\xaf\x83\x37\xe0\x6b\x19\x84\x8c\xf4\xda\xe9\xe7\x33\x24\x03\x67\xf7\xa0\x89\x7d\x3a\xd3\x09\x78\x72\xbd\xf8\xe7\x33\x50\xe3\x65\x82\x10\x5c\xa6\x62\x83\x56\xce\x5e\x6c\x6d\x94\x81\x06\x19\xc5\x47\x12\xb6\x30\xdf\x6b\x36\xdd\x7d\xe4\xdd\x33\x3a\xd0\xd5\x5e\xf6\xa4\xc1\x5c\xe5\x05\x69\xec\x97\x3f\x85\x3e\xbd\xbd\x0f\x43\x8f\x5f\x1c\x40\xc7\x3f\x9f\xb9\x9e\x7c\x20\x46\x08\xc7\x28\x29\x80\x84\x67\x29\x27\x10\x1a\xb8\x5c\x52\x68\x70\xdc\x34\xb7\x1c\xbb\xab\x58\xdd\x90\xfa\xab\xf7\x84\x89\x82\x63\xf0\x71\x56\x2d\x5c\x76\x31\x27\x5a\x1a\x53\x48\x5d\x13\xaf\xa8\x1f\x22\x8b\x9a\x2a\x1a\x42\x64\x3f\x91\xd1\x53\xbd\x3f\xc6\x0e\x9d\xd0\xdc\x24\xc9\x6d\xaa\x4b\x80\x44\x47\xa9\x34\x27\x4d\xf7\x8e\x6a\xf9\x01\x4e\x98\x6a\xef\xab\xc8\x6e\x84\xa4\xcb\xb0\x72\xdf\xbe\xaf\x9a\x67\x77\x44\x7b\x66\x8f\xce\xd3\x02\x79\xf0\xee\xc4\xbc\x3c\xbb\x0c\x32\x66\x15\xbc\xb4\x99\xf6\x7e\x64\xfa\xac\x45\x0a\xb4\x62\x50\xdc\x9f\xcf\xf9\x71\x41\x7e\x68\x9e\x78\xdc\xca\x86\x10\xe6\x32\xba\xe6\x1e\x1e\x05\xda\xde\x47\x93\x5f\x07\x35\xb8\x00\x1c\x96\x8f\xc3\x6b\xf2\x5f\x01\x2f\x8b\x89\x70\xea\x86\x41\x55\x90\xf9\x5c\x57\x0b\x99\x9d\x41\xe5\x77\x7b\xab\xd9\x6b\x20\x0f\x3f\xf3\x09\xc2\xfa\x73\x73\xe1\x3e\xb6\x0b\xfb\x19\x8a\xfa\xa1\x2d\x7b\xe6\x7c\xff\x83\x1e\xf3\xb6\x50\xeb\xda\x9f\xb5\xc4\x6b\xe2\x08\x1e\xac\xcf\x6d\xc3\x02\xc9\x5c\xe8\x50\xc6\x0d\x09\xbe\xce\xb5\x9d\xf8\xf4\xf4\x40\xa0\x66\xc6\x6b\x64\x66\x6f\x81\x9e\x1d\xce\xd3\xcb\x30\x06\x28\xb1\xce\x47\x15\xd7\x8f\xb2\x78\x04\xc9\x28\x64\xc2\x12\x02\x9b\xa0\x3e\x97\x3d\xee\xad\xf1\x97\x87\xff\x4b\x70\xa5\x5f\x5d\xac\x75\xc9\xbf\xaa\x4f\xac\x71\x57\xbe\xf9\x64\x5f\x79\x67\x31\xf9\xd9\x17\x8a\x51\x7a\x33\xa9\xdb\x7d\xb5\x20\x3f\x53\x31\x9f\xeb\xff\x0d\xab\x5d\x95\x55\x18\x74\x2b\x3f\xdc\xd1\x86\x14\x67\xd5\xaa\x5d\xeb\x13\xd7\x94\xb7\x64\xd5\xc1\xf1\x69\x90\x28\xa1\xfa\xde\x6e\xdb\x61\x5e\x36\x0b\xa2\x8e\x4d\x87\x2b\xf5\x14\xee\x0a\xd0\x40\x88\x72\xa5\x68\xd4\x6a\x6d\x2a\xce\xc3\xac\x21\xc9\x00\x2b\x2f\x30\x94\xd2\xd5\xfe\x2e\xec\x73\xfa\x84\x9d\x9f\xa3\xa2\x2a\xab\xd5\x6e\xc5\xd6\x6b\xa4\xbb\x9c\xcf\x4d\x89\x88\x0a\xe1\x4a\x0f\xa8\x68\xb7\x79\x34\x81\x09\x95\x3a\x26\xb1\x5b\x0a\xac\xa7\xb1\xe4\x18\x26\xb1\xac\xa4\xf4\x83\xf1\x74\x30\xbe\x62\x6b\x3d\x8a\x49\x5d\x74\x63\x25\xc3\xc8\xad\xa3\x3a\xd9\x2a\x1d\x7e\x36\xc3\x15\xc2\x7a\x60\x91\x0e\x2c\xd4\xc0\x3a\x28\x0a\x06\x96\xe9\x35\x1a\xa9\x8e\x66\x11\xc7\xab\xdb\x4d\x89\x6a\x37\x7d\x33\x3b\x17\xe7\xb3\x37\xd3\x99\x4d\x28\x74\x5e\xce\x5a\x36\x9d\x9d\x9b\x22\xec\xd0\xfb\xf9\x6c\x0a\x5b\x39\xa5\x6c\x0a\x60\x99\xce\x30\x3b\x2f\x03\x3f\xc2\xf3\xd9\x62\x3a\xf3\xce\x51\x8a\xb2\xa9\x9e\x9e\x55\x0a\xdd\x21\xdd\xd0\x74\x76\x6e\x6a\xd0\xb1\x6e\x4b\x36\xa2\xe0\xe8\x7c\xb6\x98\x21\x9c\xb2\xe7\x4c\x61\x76\x10\x83\xb3\x58\x2c\x08\xda\x5f\x3a\x83\x6f\xea\x2b\x69\xb3\x4c\x59\x57\x2b\x2d\xb2\x6b\x72\x11\x93\x62\x03\xa9\x41\x87\x9f\x21\x2e\x80\x0c\x8c\x8c\x63\x21\x0e\xab\xab\xc0\x74\x6e\x72\x1a\x66\xca\xf3\x73\xe7\xc3\xa5\xb7\x96\xa4\x5b\x6b\x54\xd3\x04\x6a\xeb\xda\xf4\x07\xb8\x45\x92\xb8\xf2\x1a\x52\x1e\x09\x82\x23\x60\x67\xe9\x53\xb3\x23\x5f\x21\xb9\xd5\x7a\x9d\x58\x52\xdd\xcb\x49\xec\x6b\xe6\xa4\x79\xee\x12\xca\xc7\x25\xad\x26\xa9\x34\x7c\xaf\xb5\x26\x2e\xf2\x8d\x23\xcd\xd5\xba\xd1\xaf\x0a\x11\x25\x34\x04\x17\xef\xf8\x49\xb9\x97\x08\x27\xcf\x20\x63\x09\x2c\x73\x6b\x3d\x28\x02\x2b\x2d\xc7\x0c\xa1\x65\x21\x16\x41\x25\xc5\x43\xf4\xd3\xf4\x19\xd4\xb1\xe2\xeb\x92\x21\x99\xf1\xd9\x71\xe2\xb9\x40\x32\x3b\x5a\xca\xf8\x8e\x2c\x5f\x5b\x57\xc1\xd0\x63\x78\xaf\x3d\xd4\xde\x0f\x35\xad\x5c\xbb\xe3\xb9\x04\x81\x7a\x42\x9b\x56\xed\x9c\xf8\xae\x3f\xfe\x0f\xed\x9f\x5f\xbf\xfa\xb6\x20\xb0\xe6\x13\x1b\x0b\xcc\x90\x94\xa7\x74\xea\x64\x75\x9b\x5a\xd7\xe7\x3a\x3c\x1c\x66\x6c\xa7\xb6\x3f\x78\x66\xca\x94\x0a\x1d\x4a\x60\x0a\x94\x16\xfd\x74\xa0\x57\xe9\x83\x25\x09\x72\xd9\x61\xa8\xdf\x44\x6b\x1d\x49\x16\x17\xd1\x76\xfe\xd0\xc1\xa9\xe7\xbd\x80\x10\x9b\xb8\x98\xd6\x86\xef\xd0\x34\x40\xfb\x63\x3a\x04\x0f\xc3\x26\x26\xf6\x8f\x92\x9c\x10\xc9\x80\x85\xcb\xea\xef\x02\x00\x6c\xd1\x1e\x9f\x1a\x3e\xd1\x15\x26\xb1\x35\x19\x5c\xbb\xbe\x86\x19\x66\xa4\x4a\xf3\x46\x97\xd1\xf0\xa9\x17\x23\xde\x77\x80\xe1\x82\x02\xbe\xde\xf3\x47\x03\x4e\xbb\x23\x92\x24\xd0\xa6\xef\xa7\x15\xb1\x23\x9d\x53\x40\x28\x56\x64\x6f\x3e\x5b\x9e\x5d\xe0\xd0\x6d\x16\x5c\x96\x12\x5e\x28\x1c\x34\xf4\xcb\x88\x03\x7c\x1e\x3b\xee\x65\x3c\x2e\x38\xb8\x84\x82\xab\x0f\x99\xce\xf1\x67\x93\x01\x7d\x5c\x18\x6b\x9d\x68\x60\xac\x70\x3c\xec\xa6\xa7\x58\xda\xa3\x5a\x3a\x59\xd5\x75\x18\x51\xfb\x43\x9b\x28\xb5\x62\x4e\x33\xe4\xaa\xf1\x0c\x80\xd8\xcd\xd0\xe2\xda\x96\xdd\x91\xc7\x02\x89\xc9\xa9\x3d\xba\x6c\xed\x32\x17\xf5\x7b\x62\x27\xd6\x01\x32\x08\x56\x8e\x33\x48\x1e\xe9\x00\x5c\xfc\xf5\x95\x37\x43\x5f\x5c\x04\xfb\x69\xc2\x9a\x2b\x0b\x26\xa0\x0e\xc0\x7b\x41\x26\x2b\x82\xee\x89\x4e\xdf\xa2\xee\x22\xb3\x0f\x23\xa0\xe6\x98\xac\xf8\x3a\xda\xe3\x38\x2a\x3d\x73\x42\x75\x7c\x32\x24\x4d\xd1\xa5\x59\x0b\xab\x5b\xd0\x6b\x35\xa7\xce\xa6\xd2\xcd\x29\x58\x75\x43\x9d\x9c\x7a\xf0\x75\x2f\x78\x47\x57\xc9\xf5\xc7\xdc\xcc\x31\x1a\x95\x20\x3b\x99\xfc\xdb\x7d\x4f\x46\xa3\xfd\x76\xa0\x2e\xf1\x30\x8f\xc9\x46\x08\x25\x23\xfc\xd8\x64\x79\xde\xb5\xf0\x24\xa0\x89\xd6\x70\x9a\x16\x39\xde\x7c\xfe\x49\x52\x30\x4b\x2e\xcd\x13\x5a\xcb\x2f\xde\x48\x17\x9a\xf3\xc2\x86\xf4\x06\x97\xae\x8f\xdb\x31\x36\xd1\x33\xc7\x05\x6f\x88\x55\x28\x81\xd9\xb9\x97\x3e\x59\x5d\xb7\x93\xc0\xba\x52\x96\x25\xbd\xe2\x10\x84\xf4\xbf\xd2\xe8\x2d\xcc\xb0\x40\xd1\x75\x4d\x41\x77\xa2\x1a\xff\xef\x6c\x63\xe7\xe5\x1b\xcc\xaf\xe4\xbe\x5c\x7e\x50\x42\x9d\x84\x8e\x0a\xf4\xa6\x30\xb2\x3e\x19\x33\xaa\x89\x35\xe6\x03\x36\xad\x4b\xa4\xfa\xe1\xc3\xd6\xb1\x0b\x4d\x02\xdb\xb2\x3f\x42\x60\x5f\xd6\xf2\x41\x3b\x9f\xc7\x20\xd2\x6c\xca\x7c\xde\x7a\x83\xb3\xfb\x33\xb2\x17\xa9\xe7\xb1\x21\xda\xd4\x61\x74\x30\x18\xb5\xdf\x71\x7d\xa3\xfa\xd9\xbd\xec\x5e\x8b\x4a\x89\x97\x97\x08\xb3\xa0\x02\x3c\x89\x6a\x36\x2b\xe6\xe9\x15\x09\x72\x99\xbd\xb2\xfa\xbe\x33\x82\x02\xef\x26\x48\x3a\x0b\x4e\x17\x8e\x29\x50\x07\x44\xc9\xe4\xb7\xe1\xa4\xbd\x09\xef\xea\xdb\x42\x98\xbc\xc0\x41\x90\xbf\xae\xbe\x4e\x32\x75\x16\x7e\x18\x8a\x45\xbf\xbe\x8e\xa2\xd1\x83\x40\x5c\x50\xca\xdf\x50\xd2\xf4\x12\x5c\x3f\xb2\x14\xad\x2f\x7d\x9b\xb1\x68\x1e\xf9\x54\x23\xb5\x5a\x87\x59\xe6\x80\x2c\x40\xca\x2f\xb8\x29\x93\x35\x73\xd3\x9a\xa1\xc4\x59\x3f\xdb\x5e\xac\xc8\x1a\xd0\x08\xf4\x7c\x6a\xd1\xd5\x90\x6e\xe6\x91\x0b\x0f\x5d\xb1\xbf\x51\xa8\xa0\xe7\x42\x98\xe0\x5a\x8b\x62\x4b\x14\x07\xe0\xf8\xf2\x41\x7d\x3a\x30\xee\x23\xe2\x76\x8e\x0f\x9d\xb1\x42\x86\xf6\xa0\xc7\xae\x35\x04\x34\xf7\x80\x66\xe5\x17\x7b\x62\xd3\x99\x31\xcc\x57\x6c\x8d\xe4\x50\xb5\xca\xdc\xf8\x8f\x58\xf3\xe3\xa7\xf0\x03\xaf\x58\x77\xd3\xf2\xfb\xc0\x80\xf1\x5b\x4f\x05\xd4\x36\xba\xae\x59\x66\x56\x70\x84\xbf\x21\x46\xa4\x05\x75\x0a\xa9\xcd\x21\xfe\xae\x77\x88\x31\x57\x32\xa4\xad\xb7\x6e\x2c\x63\xd9\xa4\x03\xc0\x1a\x26\x69\x25\x1e\xb6\x71\xa8\xbe\x91\xf0\xa3\x12\xe5\x24\x49\x1e\x91\x2d\x3d\x6e\x18\xe9\x4c\xa5\xf2\x60\x52\xbd\x70\x73\x3d\x25\x12\x8d\x4d\x62\xc6\x2b\x9c\xa9\xff\x1e\x26\x25\xb2\xf3\xe1\xa3\x55\xc7\xb9\xfd\x6b\xb0\xe4\xb5\x7a\xe6\xe2\xbb\x61\xd8\xde\x8c\xf5\x0c\xd5\xbb\x19\x0a\x2a\x35\x9a\x63\x9b\xb1\x29\xeb\xaf\x3c\x43\xe1\x40\x12\x87\xf1\x3a\x31\xd0\xbd\x77\x13\xf1\x40\xec\xf7\x7b\x2d\xaa\x77\x61\xe1\xd9\x14\xee\x1a\xa3\x9e\x5a\x8c\x82\x8f\xe0\x6e\x5d\xe8\xec\xee\xc5\x37\x04\x43\x26\x2e\xa7\xbf\xd6\x75\x21\x16\x8b\x45\x90\xf2\xd2\xf0\x5d\xe1\x05\xaa\xc5\x48\xfd\x4b\x17\xb5\x71\x5e\xf7\xda\x9d\xb0\x8c\x7e\x1d\x0e\x3e\xa3\x02\xe4\xbc\x09\xfd\xe6\xf5\x1d\xe4\xff\xd4\xfd\x99\xa5\xec\x4c\x6b\xc3\x73\x98\xfc\x76\x9c\x6c\x9b\x0a\xc2\xe3\x7b\xc9\xc8\x7f\x80\x62\x63\xdd\xae\x11\xd3\xf6\x66\x5a\x4d\x3b\xc2\xdf\x13\x3e\xfd\xfb\x8e\xf0\x87\x69\x71\xd3\xf2\x69\xd5\x34\xd3\x1e\xa3\x07\x08\xd1\xa1\x29\xed\xa6\xf4\xfe\x7e\x27\xaa\xb7\x0d\x59\x4c\x7f\x68\xd5\xfe\xd2\x9b\x87\xa9\x59\x6b\x87\xa1\x2a\x9f\x2b\x2b\xf0\x06\x49\xed\x4f\xab\x01\x6c\x6a\x22\xd4\xc5\xcc\xf5\x3c\xc3\xb9\x88\x99\x68\xf0\xab\x40\x78\x1f\x4a\x20\x60\x44\x4b\xb4\xe0\xa4\xaa\x5f\xb1\xe6\xa1\x40\x58\xe7\x7d\x7c\x2a\x9e\xe9\xb9\x79\xad\x42\x6a\x26\x70\x2c\xc4\xc2\x7e\x12\x54\x9e\x04\x7b\x62\xe8\x39\x6d\xf2\xb5\x69\xad\x64\xdf\xe2\x60\xf7\x6f\x86\x50\xdf\x17\xd1\xef\xd4\xc4\x63\x4d\xf0\x0d\xb6\x2c\x9f\x3d\x5b\x76\xac\xa4\xc4\xef\xe0\xde\x63\x2b\x40\xa4\x31\xd8\xde\xfc\xd3\x8b\xd9\x1e\x98\xc9\x65\x50\x2b\x38\x3f\x20\xc1\x44\x62\x37\xc5\x4c\x74\xc5\x0d\x65\xf5\xd3\xa6\x49\xd5\x2c\x61\xba\x7c\x89\xaf\xb7\xbb\xee\x2e\x89\x26\xe9\xc9\xc3\xe1\x26\xa9\xf6\xfa\x0e\x01\xcd\x28\x36\x42\xf1\x63\xba\xd0\x5f\x84\x9d\x40\x4c\x9e\xe5\x2c\x20\xec\x2a\x50\x1b\x84\x81\x79\xc1\x3a\x44\xd9\x0f\x22\x5b\x54\x76\xbd\x3a\x33\x96\x4e\xfe\x36\x43\xbd\x9a\x34\x26\x63\x55\x76\x24\x03\xc9\xe0\xb9\x67\x6f\x5f\x3b\xcf\x75\xeb\x60\x26\x00\x8a\x35\xed\xba\x76\x43\x2b\x01\xaa\x85\x57\x1f\x98\xfe\xda\x29\xe2\x62\x66\x39\x13\x86\x49\x92\x3c\x0e\xda\x92\xae\x45\x1c\xa3\x9d\x53\xe3\xec\x18\x27\xb7\xb4\x13\x84\xab\x71\x8c\x36\xcf\x0e\x72\x6f\x94\x7b\xbe\x51\xb0\x06\xd3\x09\xa4\x33\x4b\xa3\xac\x06\x7a\xb5\xd1\xb3\x83\x6b\xeb\x69\x02\x13\x19\x26\x7d\x6d\x2e\x4f\x7c\xe1\xee\x82\x3e\x41\x97\xf8\x7a\xd4\x9d\xe6\x3b\x2b\xae\x3a\xb0\xaa\x4b\x17\xb6\x58\xe2\xe4\xca\xc9\xeb\x55\x42\x54\x74\x85\x6e\x7a\x65\xd2\xa5\x44\xf8\x19\x29\x9f\x12\x7b\x1b\x45\x57\x51\xe6\xc2\x89\xb7\xd8\x56\xeb\x7e\x1a\x5c\x7c\x43\xb7\x17\x90\xff\xd2\xff\x19\xde\x31\xba\x46\x9a\xff\xd3\x14\x69\xfb\xe5\x97\x4c\xcb\xfa\xf7\x4b\x72\xb3\xbc\x41\x21\x61\xd1\x87\x32\x05\x21\x90\x18\xc5\x06\xf5\xde\xc0\x38\xfe\xc4\x90\xc5\x35\x3c\x49\xc9\x90\xe6\x92\xd4\x48\x1d\x11\x29\xf5\x70\x42\x60\x72\x6e\x3a\x22\x3c\xd9\x70\x57\x7f\xac\xfc\x0c\xb3\x6f\x5a\x82\xba\x3c\xbb\xd4\xc1\x21\x51\xdc\xfd\x5e\x62\x5b\x99\x4e\x47\x8b\xf4\xdf\xc2\x73\x67\xf7\xb0\x07\xec\xba\xb2\x27\xe2\x27\x2a\xee\xc2\x43\x66\x92\xd8\x38\x7d\x6d\x90\xa0\xd6\x5a\x37\xf9\x8e\x2d\x5a\x66\xb5\x2e\x33\x63\x19\x9b\xe1\x20\x71\xb6\x44\xf8\x1d\xc9\x06\x66\x1a\x7e\xfb\x7b\x32\x56\x65\x39\xd0\xb1\x24\xae\xa9\x97\xbd\x80\x3f\x1f\x20\xd8\xd0\xf7\x91\xb2\x76\x24\x05\x97\x49\x34\x35\xd2\xc2\xf0\xba\xdf\xb5\xdb\x1d\x54\xa6\x8a\x3a\x5e\xad\x65\x6a\x7f\xf0\x36\x87\xb8\x82\xea\x19\x39\x96\xd6\x4a\x67\x19\x3e\x92\xf9\xea\x22\x72\x28\x34\xad\x27\x97\x65\x59\x16\x1c\x14\x4e\x2b\xb1\x3e\x1c\x56\x6b\xe4\xad\xa6\xef\x48\x10\x04\x5b\x01\x8b\x64\x2a\x5f\x98\x25\xde\xc0\xe8\x52\xea\x3f\xbe\xd3\x7d\xc6\x88\xfc\xa2\xe5\xdf\x38\x0e\x3c\x2e\x2d\x50\xae\xd6\x98\x95\x17\x4f\x98\x2f\xe0\xed\xac\x9c\xb4\x14\x2b\xb6\x9e\xd0\x53\x32\x7a\xd1\xc5\x70\x4e\x1c\x67\xe2\xf7\x19\x36\xb2\x3b\xbd\x22\xeb\x49\x3b\x9f\x7b\xd7\x88\xcc\x4c\x57\x6b\x4c\xcb\x8b\x27\xd4\x4f\x97\x7a\xa3\x2c\x64\xf1\x86\x22\xb8\x83\x73\x81\xe2\xb8\xf1\x0d\x57\x1d\x0e\x6d\x98\xa9\x47\x1f\x18\x82\x0e\x87\xc2\xcc\xbb\x45\x18\x34\xd4\x60\xd6\xa9\xc0\xb3\xdd\x3f\x37\x77\x23\x41\x48\xf2\xc0\x41\x44\x61\x43\x9f\xa5\xe1\x68\xc2\xe2\x46\x59\xb6\x85\x21\x59\xb4\xe0\x67\x17\x34\x0e\x5d\x46\x46\xea\xcc\x3f\x27\x05\x59\x89\x35\x92\x05\x47\x06\x29\x12\x65\x89\xc5\x3b\xd7\x89\x2e\x26\x7c\xec\x44\x11\x14\x20\xdc\x71\x3c\x13\x58\x4f\xe3\xba\x7b\x60\x9b\xaf\xe3\xad\xee\x6b\x10\xcc\xc0\x2b\xa1\x36\x59\xcb\x6d\xb4\xd3\x6d\x39\xc2\xb4\x3c\x63\x87\xc3\x05\xe8\x33\xf5\x52\x71\x5b\xc6\x4e\xe5\x61\x21\x56\x81\x70\x15\xdc\x07\xad\xbb\xf1\x51\x59\x46\xa6\x70\xf7\x5c\x07\x1f\x1e\x0e\x67\x15\xda\x33\xe7\xf7\x75\xf2\x4a\x79\xe2\x0b\xef\x57\x83\x1c\x94\xad\x68\xfa\x9e\x76\xf4\x6d\x93\xec\xf8\x97\x3a\x43\x8f\x40\xb8\x51\x28\xbe\x2b\x2f\x9e\xec\x7c\xb2\x98\x9d\x45\xf1\x4d\xd9\xad\x76\x6b\x5c\x97\x9b\x04\x87\xcf\x14\x0d\xa9\x0d\xe2\xce\xe7\x45\x6d\xd0\x15\x37\x1a\x53\x37\x08\xc9\xc6\x74\x37\x84\x9b\x8d\x22\x22\x2e\xdf\xaa\xe2\xd8\x13\xf7\xc5\xdc\x79\x15\x91\xb3\x0c\xee\x09\x0f\xc9\x37\xc6\x29\xff\x58\xaf\xe0\xbf\x67\xb8\x95\x0c\xf6\x08\x1c\x46\x40\xf1\x13\x00\x4b\xd0\xc4\x8c\x17\xa6\x5f\xb3\xb8\xc8\xd1\xc0\xdd\x03\x2e\x7e\xde\x5f\xfb\xc8\x10\xc1\xa9\x1c\xc6\x4d\x82\x4c\xbe\x9c\x0e\x9f\x42\x7c\x61\x63\x4f\x25\xae\xce\x5a\x91\x5b\xa4\x3b\x70\x4f\x7d\xd8\xab\x8f\xb4\x26\x2e\xf2\xcd\xf2\x8b\x02\x2e\x22\xdc\x8b\x8c\x0d\x39\x1b\xc3\x88\xc0\x6b\x2f\x27\xc6\xc7\x57\xa0\xf9\xfc\x5b\x73\x48\xec\xcc\x9e\x0e\x5f\xcb\x3e\x4e\x1f\xa0\x90\xef\x93\xa3\xab\x6f\x49\xc1\x31\x2d\x9f\xe5\x17\x03\xac\xde\x52\xf4\x16\xc5\x33\x0b\x0a\x17\x81\x1f\xc9\xb7\xb1\x51\xbe\x8d\x39\xbe\x0d\x2d\x1f\x3d\xd5\x23\x33\x95\xa7\xb0\x38\x16\x33\x30\x95\x79\x61\x6c\x90\xdf\x89\x2f\x61\x5b\x2c\x96\xb2\x9a\xfc\xfc\x4a\x1d\x4e\xd5\xe8\xb3\xcb\xb3\xb2\xe4\xbe\xf8\x5f\xb7\x85\x20\x65\x8e\x2f\x11\x3e\xbb\x98\xb8\x9c\x72\xc5\xf1\x89\x62\x82\xe2\xfb\xa0\x77\x12\xc5\x7a\xc2\xe7\x73\x52\x82\xf7\x5a\x44\x6c\x33\x4d\xa5\x1c\x65\x8d\xd1\xfe\x5b\x13\x2b\x14\x4b\xa1\xfd\x78\xa9\xb4\xef\x48\x64\x1e\xa4\x19\x3e\x44\xea\xa4\x4d\xb2\x5d\xfe\x8d\xf4\xb3\x72\x94\x67\x17\xc7\xa2\xbc\x8e\x71\x88\xc1\x1a\xc3\x52\x82\x7f\x33\x75\x88\x7c\x34\x99\x7b\xf5\x3c\x62\x84\x13\x7d\x80\x9b\xae\x57\xd9\x41\x41\xc2\x3c\x27\x03\xde\xce\x0a\x0c\x2e\xe1\x92\x1b\xe5\xdb\x1e\x2f\x7a\x81\x99\x77\xb8\xe3\x9f\xb3\x27\x5c\x51\x43\xb2\xe2\xeb\x78\x12\x70\xb9\x89\x70\x31\x2f\x03\xa3\x2c\x6e\xf5\xdc\x2d\x0b\xf0\xb4\xa0\x83\xf2\x75\x6b\x2a\x36\x23\xa4\x38\x43\x11\x84\xf9\xab\x9b\x58\xeb\xae\x74\xf9\x4f\xdc\x61\x86\x2b\x84\x77\xe5\x9b\xe7\xaf\x97\xd3\x3f\x69\x2f\x4d\x43\xc8\xfe\xc5\xb6\x53\x92\xee\xa7\x9f\xec\xb9\xfc\xf4\x8d\x3a\x21\x2e\x56\xba\x41\xa9\x78\x3c\x33\x28\xe1\x86\x30\xfa\x1e\x52\x4f\x77\x4c\x97\x10\xaf\x31\x60\xf8\xf4\x43\xd5\x4d\xdf\x2b\xa1\xb9\xa1\xef\x48\xf3\x30\xad\xa6\xf7\xb4\x13\xd5\x3b\xe2\xa4\xdb\xa2\x29\xbf\x2c\x1a\x2c\xf0\x0e\x25\xf5\x6f\x59\xf9\xa7\x42\x2c\x3a\x9b\xa4\x87\x9b\xb5\xa9\xe5\x98\xa8\xc8\x99\x9d\x40\x60\x3c\xd5\xfc\x81\x62\x43\x03\x05\xd5\x57\x3f\x0b\x5e\x6d\xc4\x74\x5b\x3d\xf8\x84\x4a\x3c\xd8\xd0\xaf\x49\x42\xbc\xcb\x98\x8a\x64\x49\x39\x41\x57\xda\x0c\x2c\xd0\x52\xd7\xce\xd6\x75\xa7\xb1\xd0\x2b\xd8\xd3\x7a\x49\xb5\xfa\xb8\x95\xa5\xab\xbf\x1d\xf6\xec\x46\x8c\xdb\x92\x09\xe9\xf9\x2c\x92\xbe\xcf\xa2\x12\xc9\xf6\xd1\xd3\x65\x25\x4b\x82\xbb\xb2\x3f\x46\x3a\xf8\x5e\x1b\xbe\x7e\xe2\xd5\x76\x4b\xf8\x92\xc8\x70\x32\x10\xf9\x45\x65\xc9\x71\x40\xef\xd5\x1a\x70\x05\xa4\xd4\x06\x20\x46\x56\xbe\x16\x53\xa0\xad\x3a\x75\xec\x1e\x2e\x9d\xfd\x3b\xca\xea\x65\x27\x65\x99\x4c\x3f\xb6\xb0\x31\xb4\xaa\x6c\x42\x84\xbd\xe9\xfe\x2f\xe4\x61\x59\x61\xfb\xbd\x74\x2b\x91\x05\xc7\x02\x33\x13\xa8\xdf\x19\xe8\xf9\x6f\x1a\xfd\xcd\x4e\x96\x1d\xde\x94\xd5\xaa\x59\xcf\xe7\xea\x5f\xd8\x9a\x49\xe8\x58\xb1\x9b\xcf\x1d\x96\x6f\x0e\x87\x42\xb5\x82\x0f\x20\xd8\xcc\x7d\x13\x03\x53\x6d\x14\x0f\xf2\xbc\x30\x69\x30\x06\xb7\xa5\x7e\x07\x9b\xc8\x64\x34\x94\xb8\x2a\x68\x49\x02\xf9\xb8\x45\x4b\xfd\x64\x2f\x71\x74\xf7\x2a\x1a\xe0\xb0\x99\xca\x62\x83\x77\x58\x20\x24\x25\xd4\xa9\x22\x98\x21\x1c\xe1\x8a\x44\x76\xe0\x05\xad\xf5\x43\x1e\xe8\x88\x62\xec\xd8\xaf\x98\xba\x22\xd6\x4b\xbd\x3b\x22\xcc\xf3\x61\x34\x35\x18\xdc\x45\xa9\x94\x72\x80\x27\xb2\x66\xb6\x1a\x81\xc7\xab\xfd\xa5\x93\xce\xba\x9f\x4e\xca\x14\xfe\x90\xbd\xe8\x1d\xb2\x98\x6a\xb5\xa5\x58\x6c\x09\x79\xa7\xf8\x77\x8e\x40\x1a\x4e\x15\x99\x4c\xd1\xba\x8c\xd2\xda\x56\x0b\x0e\x74\xd4\x81\xf6\x1e\x53\x4d\x0b\x2a\x07\xd9\xa2\x2b\xbf\x2c\x3a\x2c\x34\x79\xc8\x50\xc4\xa7\x4d\xa3\xa9\x04\x3d\x99\x2c\xd1\x88\x2c\x3d\x6d\x9a\x1c\x55\xc2\x62\x11\x0b\x2a\x6a\xdd\x47\x48\x95\x9d\xcf\x27\xfe\x30\x4a\x53\x0d\xf7\x1f\x04\xff\x48\xca\xaa\x98\x3d\xff\xea\xcb\x1f\xff\xfd\x33\xd1\x7d\xf6\x96\x57\xac\x0e\x4b\x48\x7c\x19\xb9\xad\x98\xf2\x05\x7f\xca\x6b\xbf\x22\x7f\x91\xd5\x8f\x64\x1d\xdb\x7b\xd5\x75\xac\x67\xee\xc2\x89\xba\x6c\x41\x01\xf7\x5a\xb7\xee\x4e\xe8\x26\x4d\xc1\xde\xeb\x62\xb5\x36\x49\xcb\xad\xc3\x1a\xf8\x0f\x79\x0d\xf5\x43\x11\x2c\x01\xc9\x6b\x75\xfa\x2c\x72\xa5\xf1\xc8\xc6\xe6\x1f\x37\x91\x2e\xc1\x57\x32\xb6\x0b\x03\x2e\xc6\x67\x38\xfa\x36\xd4\x8d\x61\xa1\xb8\x4c\x67\x13\xce\xc1\xc3\x6e\x48\x1e\x56\xb1\x32\xce\xac\x26\x50\x71\xf2\xc5\xdf\x5a\xaa\x8f\xc1\x3e\xcc\x44\xa7\x24\xd2\xc8\x33\xbf\xaf\x8e\xfb\x2e\x3f\x7d\x70\x5f\xc8\xb8\x21\x46\xd1\x20\xaf\xcc\x4f\x4c\xcb\x78\x37\x46\xf3\x7a\x31\xe4\x35\x22\xb6\xbd\x22\x03\x05\x45\x93\x76\x3e\x6f\x17\x39\xef\x47\x39\x3a\x5b\x53\xaf\xe4\xf2\x08\x88\x33\x9a\xa5\xb4\xa7\xc9\x31\xa4\x1c\xc7\xe9\x49\x4f\xae\x36\x2b\xc4\xbc\xbc\x78\xc2\xbd\xfa\x8b\x9f\x97\xbf\xb7\x60\x54\x5c\x23\xa6\xea\xbf\xf3\xcb\xb5\xa3\x8a\x05\x8b\xc0\x11\x07\x9a\x52\x24\xa5\x1c\xf2\xe6\x19\xc0\xfe\xe1\xe6\x72\xe4\xaa\x1e\xe8\x6c\xf4\x0b\x39\xc0\x31\xf4\x54\x69\x89\x8d\x9c\xc4\xf6\xdb\xd1\x31\x56\x62\xed\x32\x65\xfd\x85\x44\xe8\x87\xb9\x9b\x81\xc9\x3d\xf5\xcf\x9a\x88\x4d\xd9\x95\x4c\x26\x1f\x3a\x1a\x5f\x8d\xee\x2c\xb5\x8f\x39\x4b\x54\x5d\x9b\xb9\xb3\xd4\xa2\x49\x35\x9f\x57\x79\x0f\x7e\x36\x10\xbd\xfc\x71\x66\x64\x8e\xd0\x10\x71\x6d\xb1\x1b\x3e\x13\xa7\xfc\x4f\x03\x49\x3a\xb6\x9b\x54\x14\xe8\xfa\x4f\x9c\x50\x38\x2e\x43\xd2\x3b\x3b\xa7\xf9\x9b\x30\x55\x84\x86\xde\x14\xe2\x70\xe0\xd6\x9e\x60\xa7\x36\x61\x8f\x99\x5a\x8b\x24\x69\x3a\x32\xa5\x4a\x38\x67\xa6\xc0\x07\x91\x93\xcc\x89\x8f\xe7\xc3\x30\x85\xd8\x17\x17\x98\x62\x26\x18\x7e\xd1\x7f\x9d\xa4\xec\xff\x8d\xef\x12\x9b\x77\x02\x88\x68\x52\x2c\x40\xd6\xb4\xdb\xb4\x8c\x91\x8d\x4b\x21\xff\x4f\xb8\xd8\x06\x72\xea\x68\xaf\xae\xbf\x12\xfc\x77\x82\x7f\xca\x1b\x31\xf1\xfe\xab\x6f\xff\xba\xfc\x84\x48\xfd\xd6\xd8\x34\xff\x9d\x4c\xb5\xa5\xbd\x33\xf6\xfa\xd7\x84\xbf\xa7\x9b\x98\xd7\x43\xfb\x41\x2b\x7a\xc0\x42\x94\xef\xac\x57\x79\x6a\x37\x03\xa7\xdd\xef\xa3\xc4\x83\x4e\xa1\x07\x98\x4b\x37\x40\x1c\x6d\xf3\x88\xf5\x33\x9a\x83\x63\x05\x8a\x3c\x77\x7d\xb4\x65\x20\xc4\xc2\xcc\xfe\x14\x67\xe7\x31\x17\xf7\xeb\xea\x3d\xf1\x97\xb5\x29\x58\x19\x71\x42\xbd\xb7\xb1\x36\xc8\xbf\x36\x3d\xbe\x20\x62\x73\x67\x1d\x98\x2d\x03\xa5\x9e\x65\xd7\xad\x88\xdf\x7d\xe5\xaf\x0a\xb3\x31\x89\xcf\x26\xaf\x36\xef\x48\xfd\x54\x73\x69\x7f\xdf\x91\x2e\x71\xf7\xec\xc0\x05\xff\x69\xd7\x11\x2e\xbe\x21\xe2\xae\xad\x9f\x55\x4d\xd3\xbd\x62\x4e\xe7\xf6\x1a\xf8\x77\xe7\x79\x07\xed\x7f\x50\xdd\xc6\x9d\xda\x06\xb7\x84\x11\xae\xe4\x2b\x51\x6d\xde\xa9\x76\xa4\x7b\xd1\xf2\x1f\xf4\x3c\x7a\xad\xf5\x04\xc3\x9e\x5e\x8b\x8a\x8b\xcc\x22\xc2\x36\x5f\xb1\xb4\x74\x19\xa4\xe3\xfb\xa9\xa2\xc2\x41\x49\x97\x6e\xb0\x5d\x0a\x62\xc0\x53\xa0\xfd\x29\x3c\x3f\x92\xd7\x94\x75\xa2\x62\x82\xfa\x80\xfd\x20\xd0\x41\xba\x40\xc0\xe7\xbd\xca\xa8\x71\xce\x73\x39\xcc\x14\x85\x39\x85\xae\xac\x63\xc5\xeb\xfc\xb6\x16\x68\x31\xe8\x59\x6d\x22\x28\x7f\xd1\xc7\x4a\x46\x19\xe3\x3d\x1e\x39\xc7\x31\x97\xe7\x53\xa6\x39\xce\xf3\x59\x9d\xfd\xd0\xf7\x5e\xe6\x1c\x38\x1b\xe0\xc8\x3b\x38\xfa\x5e\x66\x93\xa7\x19\xb2\x3d\x98\x0d\xad\xcf\xae\xf1\xb5\xbc\xef\xcb\x89\x39\x23\xc2\x6b\x62\x54\xae\x13\xa7\x36\xe2\x10\x9b\x93\x23\x4f\xaf\x89\x09\x41\xe0\x26\xf1\x1b\x03\x17\x09\x7b\x95\xba\x1e\xd8\x7c\x5e\xe8\x57\x40\x4c\x7e\xd0\xd2\x26\xc2\x4c\x9a\xc4\x9b\xe3\xa2\xec\xe8\x06\xd5\x2d\xe9\x7e\x78\xd8\x92\xaf\x7e\xa6\x1d\x28\x28\x43\xe3\x5a\x84\x2e\x3f\x11\x2f\x31\xa6\x57\x41\x20\x4b\x6a\x38\xb4\x3a\x19\x6e\xcf\xd5\xc7\xe6\xaf\xa0\xdd\xb7\x2d\x23\x05\x5d\xd0\x1a\xcd\xe7\xf0\xbf\x61\xab\x2d\xbd\x79\x59\x17\x1c\x53\x84\x30\xbc\x63\xba\xe9\x44\x6b\xbe\xf5\x85\x89\x16\x6f\x77\xb4\xa9\x0b\xcd\x82\x70\x4c\xeb\xa5\x6a\xe4\x2d\x75\xd5\x22\xcc\xe3\x84\x75\x50\x65\x94\xb1\x03\x57\x81\xdb\x2b\x85\xb4\xf1\xe1\x04\x52\x9e\xdf\x5c\x4d\x31\xbb\x0f\x39\x1e\xfc\x47\x20\x37\xa8\xfe\xae\xb2\x4f\x5d\xc6\x6c\xe3\xce\xdb\x2f\xc4\x9c\x90\x9b\xb4\xe4\x32\x49\xea\x37\xc8\x1b\xca\xea\x1c\x4e\xab\xe7\xc1\x36\xca\xf8\xb7\x67\x5c\x5a\x9d\x81\x83\x16\x02\xe1\xae\x7c\x55\x80\x1d\xa0\x71\x30\x6e\xda\xf6\xdd\x6e\x5b\x74\x7e\xbd\x25\xf7\x99\xb6\x5c\xb0\xec\x8b\x96\xbf\xac\xe1\xdb\xab\xa7\xd6\xbf\xc0\x0f\xd8\x28\xc6\x08\x2c\x0b\x70\xfb\xfc\x8b\x7f\x35\xfd\x64\xcf\xa4\xce\xd1\x40\xeb\xe5\xf4\x93\xbd\x90\x6f\x6c\x04\x39\xa4\x31\x7c\x88\xd3\x28\xa8\x9e\xe4\x75\xb2\x36\xc8\x9d\xb0\xd0\x1e\xb7\xb1\x47\xb2\x95\x28\xe0\x2a\x0e\x93\x9e\xf5\x6c\x25\xc2\x25\x92\x0d\x77\x39\x13\x52\xe3\x8e\xa5\x1d\x11\x92\x9c\xc2\x35\xfa\x7d\x50\x47\x21\xff\xd4\x54\xaf\x40\x57\x43\xd3\x5b\x16\x60\x13\x17\xc0\xc8\xdd\xf2\x76\xc7\xcc\xf7\xa0\x49\xed\x3f\x3c\xb3\xa3\x7c\x99\xbc\xd2\xe3\x1d\x0e\xe3\xef\xed\x7c\x5c\x0e\xb1\xfe\x8c\xf0\x88\x2e\x95\x20\x9b\x88\x3e\xd9\x26\x82\x05\x44\xa6\x38\xe5\xe6\xd6\xc2\x8a\x2c\xc2\x34\x0f\xee\x05\xc2\x21\xda\x80\xb7\x52\xaf\xc7\x61\x14\x22\xa1\x1b\x7f\x80\x4c\x44\xd1\x83\x37\x66\x8e\x03\x9d\xfa\x70\x3d\xe7\x25\x35\xbc\x3b\x24\x4c\x91\x76\x95\x54\xde\x5f\x8e\x42\x4a\x1a\x38\xd5\x5d\x6a\x18\x54\x44\xdd\x6a\xce\xb5\xae\x47\xe1\xa2\x21\xa1\x3d\x6f\x30\xbe\xa2\x26\xed\x44\x70\x0a\x18\x16\x2b\xba\x76\x38\xfa\x5d\x11\x4c\xa5\x02\x15\xb2\xd6\x50\x1b\x9b\xa1\x56\x26\x27\xd0\x84\xb9\x4d\xdb\x1b\x7d\x24\x6d\x11\x8e\x37\xb0\xc5\x0a\x02\xe1\x81\xb3\x87\xc8\x9b\xd5\x07\x2c\x57\xa1\xc1\x92\xf6\xec\x93\x28\x34\x1e\x75\xb2\xa4\xb8\x79\x94\xea\xde\x22\x31\x8c\x54\xa1\x31\xfb\xa5\xc1\x15\x6d\xc1\xec\xe4\xa7\x1e\x4d\x3e\x55\xeb\xfd\xf4\x0d\xde\x7b\x1e\x72\xb9\x91\x25\x3d\x6a\x7d\xa4\x19\x35\xbf\x92\x2a\xb4\x11\x46\xeb\xf8\x6d\x49\x11\x67\xae\x01\x7b\xd1\xa2\xa1\x75\xb9\xd1\x35\x4a\x8d\xde\x9f\x22\x89\x75\x7e\x52\xde\x7e\x98\xd2\x85\xcf\x2e\x08\xde\x87\x06\x33\xe7\x73\x9a\xd6\xef\x21\x52\x6f\x64\xc6\x2a\xa0\x57\xfa\x06\x19\x1f\x85\x80\xb0\x19\x9f\x20\x4c\x74\x2d\x4e\x75\x4e\xb0\x2e\x2b\x11\x21\xbd\xcf\xb9\x99\xc3\x56\x12\x60\xeb\xc5\x13\xe6\x35\x95\x36\x3b\x51\x99\x3d\x47\x2b\xb6\x0e\xb2\xd1\x0e\x84\x17\xf0\x74\x2a\x3f\xdc\xf1\x76\x77\x7b\xf7\x22\x90\x9f\x1c\x95\x09\xae\xe8\x93\xc4\x95\x09\x59\x84\xb9\x20\x2d\xf3\x45\x82\x50\xf7\x3e\x3e\x23\x4d\x4d\xc0\x40\xd3\x13\xe5\x16\xf1\x1a\x19\x5c\xb0\x2e\x8d\xfa\x5e\x1b\x7d\xe7\xf3\xb3\xd4\x50\x06\xe5\x2a\xe6\x73\xf3\x17\xa0\x05\x53\xff\xc6\xb9\x39\x01\x41\x44\xc8\x71\x9c\xf5\x3c\x86\xb4\x7d\xd6\x21\x10\x09\x11\x88\x84\x08\x94\x32\x10\x58\xc8\x14\xd6\xee\x52\x4d\x08\x9c\x77\x86\x89\x1e\x4f\x8c\x71\x3a\xb6\x79\x96\xc4\x31\x80\x41\x7d\xa7\x37\x30\x00\x65\xb7\x40\x65\x3e\x0d\x89\x35\x97\x6f\xb4\xa1\x32\x4e\xc9\x82\xcd\xe9\xe7\x4b\xea\xea\x11\x09\x09\x75\x39\xcc\x24\x92\xed\xac\x10\xbe\x70\x09\x9b\x42\x51\x7c\xd1\xd1\x7f\x90\xf9\xfc\xa7\x23\x1e\x25\x60\x35\x78\xda\x34\xdf\x05\x9f\x92\x0e\x85\xe9\xd9\xa3\x6e\x71\x53\x6a\x17\x7a\xd6\xe7\x11\x9a\xf9\xbc\x00\x9f\x47\x1d\xcc\xc0\x70\x83\x9c\xd7\x62\x8b\x70\x25\xf3\x83\x65\xeb\x15\xf5\xdc\x63\x5c\x7c\x60\xb4\x48\xeb\xc0\xd2\x37\xd8\xc0\x7b\x75\x1a\x6c\x85\x65\x94\xd1\x57\x58\x4f\x96\xc4\x7c\x12\x7e\x9b\x52\x04\x00\x1d\xf3\xb1\x97\xc6\x49\x95\x42\xe5\x0a\xeb\x7f\xa1\xf8\xa1\x4d\x5b\x35\xa4\xdb\x90\x17\x40\x18\xf5\x59\xc4\xad\x73\x8a\xc1\x55\x40\x5c\x5a\x84\xf3\xce\xf1\x4d\x18\xde\x6e\x7c\x49\xdb\xd0\x89\x94\x58\x27\xd2\x08\x91\x26\xd5\x6a\xb7\x2e\x6b\x0c\x69\xdf\x8a\x1a\x6f\x6c\xea\x7f\x84\xbb\x55\xbd\xa0\xf5\xba\xdc\x78\x3b\xf4\x9d\x77\x11\xe2\x8b\xf8\xfa\x8b\xbb\xc5\xc4\xf5\x33\x71\x17\x15\x77\x37\x96\x08\x1c\x48\x6e\x52\xb8\xe5\x56\x77\x3c\x2f\x17\xae\xca\x6e\xd5\xaa\x09\x43\x9e\x2f\xfd\x67\xd9\xe2\x0a\x55\xfd\xf1\x5b\x24\xed\x78\xd6\xf5\x16\x6f\x7c\x46\xb7\xdd\xe7\x1b\x0f\xb9\xba\x14\xab\xdd\x7a\xc2\x35\x34\x0e\x07\x83\xa6\x75\xe8\x5b\xbb\x2d\x9a\x60\x45\xdb\xd3\x5c\x9c\xf4\x5d\x09\x26\xab\xb6\xec\x56\x14\xe6\x0e\xda\xcd\x60\xbe\x0a\x14\x85\x38\x1c\x82\x10\x9b\xaf\x7e\xde\x42\xa2\x0e\xb8\xa2\xa9\xce\x91\xfc\x96\x4c\xb7\x9c\x74\x84\x19\xb7\x6e\x32\x35\x48\x37\xdd\xf2\xf6\x3d\xad\xff\x3f\xf6\xde\xbc\xbd\x6d\xdc\x5a\x1c\xfe\xdf\x9f\x42\xe2\xaf\x8f\x4a\x5c\x43\x8a\x9d\xcc\x56\x65\x18\x4f\xb6\x69\x73\x3b\x99\xe4\x26\xe9\x92\xab\xea\xf5\xd0\x22\x24\xa1\xa1\x40\x15\x84\xec\x78\x24\x7e\xf7\xf7\xc1\xc1\x4e\x52\x8b\xed\x64\xa6\xed\x6d\x3b\x4f\x2c\x62\xc7\x01\x70\x70\xce\xc1\x59\x48\x66\x2e\x40\xdc\xb9\x58\x89\x0e\x15\xa0\x60\xc4\x0a\xd1\x99\x4a\x6c\x38\x90\xf4\x4c\x45\xa7\x31\x75\xe3\x5e\xe0\xcb\x70\xe3\xcd\x92\x93\x87\xb3\x6f\x8b\x87\xb3\xe3\x63\x74\x39\x9a\x8d\x93\x74\x34\x1b\xd7\x89\x97\x1c\xce\xfc\x5b\xe4\x74\xa0\x2f\x92\x13\x7c\x9d\xc4\x8b\x84\x0d\x24\xa5\xbd\xd4\x16\x5c\xdf\x17\xfc\x7b\x7d\x08\xce\xb6\xe6\x28\x42\xfc\x12\x0d\x47\x97\x63\x64\x20\x78\xf1\xed\xf5\xc3\x0b\x09\x41\xd3\xc3\x79\xb2\x18\x5d\x8c\xf1\x15\xfc\x31\xa7\xe6\xb9\x37\xf8\x2b\x84\x3f\x86\x9f\xaf\x92\x93\x87\xaf\xbe\xbd\x7a\xf8\xca\xac\xc4\xdb\xe4\x7c\xf4\x6a\x5c\xf3\x7c\x75\xf4\x71\xf4\x6a\x9c\xbc\xc5\xcf\xe1\x8f\xbc\xe7\xe8\x34\xbe\x7a\x74\x8a\x82\x10\x6e\x2f\x48\xcc\x30\xc7\x02\x3f\xc7\x04\xe7\x8d\x68\x70\x72\x2b\x80\xf6\x72\x85\xd0\x60\x92\x8a\xba\x16\x9d\x8e\x5c\x85\x50\x85\xe2\x8f\x4a\xc5\xb9\x43\xa7\xb1\xe4\x77\x9e\x1b\x52\x62\x3d\x8f\xcb\xd1\xc7\xd1\xc9\x58\x6e\x12\x54\x55\xea\xb1\xc1\xcc\xff\x5d\x72\xf2\xf0\xdd\xb7\xc5\xc3\x77\xc7\xc7\x48\x52\x12\xef\xc6\x48\xc9\x05\x4d\xb0\x6c\x8f\x38\x7d\x15\x2b\x0a\x3a\x16\x4e\x59\xa6\xc6\xd4\x72\x34\xa8\x07\xc0\x5e\x12\xf2\xa1\x49\xe8\xea\x90\x54\x54\xab\x86\xb6\xb1\xbe\xe0\xee\x4d\x13\xba\xaf\xe0\x6b\x4b\xa7\x69\x18\xa4\xc8\xb3\x00\x07\x71\x95\xc7\xec\xeb\xfe\xdb\xae\xd6\xa3\x3a\x41\xc7\x6a\x76\xac\xcd\xfb\xbc\xaa\x0d\xd8\x9b\x9e\x92\xa0\x28\x70\x65\x43\x39\xcb\x0a\x9b\x47\x21\xf5\x1e\xd1\x8c\xb4\x85\x24\xb6\xee\xf5\x7e\xef\x15\x72\x83\xe8\x76\xe1\x95\xca\x05\x2e\xd6\x6f\x53\x8d\x9e\x5f\xc5\x64\xdf\x0a\xf9\xc0\xb2\x0a\x8b\x77\xa6\x49\xb7\x31\x84\x87\x12\xa7\x5e\x00\x9e\xed\x0a\x74\x2d\x3c\x10\x6f\xe1\x81\x02\xd5\x4c\xaa\x23\x30\xe5\x60\x14\xd2\x70\x78\xc7\xce\xd8\x90\x0d\xe6\x9c\x4c\xf1\x4a\x6b\x70\x9a\x61\x08\x9c\xe2\x1c\x53\x84\x27\x5b\x99\x20\x5d\xd4\xe8\x71\x7a\x5c\xf3\x6f\x3b\x0a\xcb\xaa\x90\x64\xbf\xfd\xc9\x30\x3f\xab\xe4\xe7\x78\x95\x3c\x89\x57\x58\xe0\x09\xc2\xdf\xc7\x7f\xc2\x1c\x1d\xa2\xef\x64\xe6\x51\xd7\xc5\xd4\x43\x70\x1c\x11\x4b\x7e\x20\xca\x05\x86\x1c\x7b\x43\x39\x73\x07\x6f\x53\x1f\xbf\x56\xa6\x0b\xe6\xd1\xc2\xfb\x90\xc0\x37\x8d\x16\xc7\x29\xbd\xc1\xdd\x71\x95\xec\x3a\x07\x0e\x7c\xbc\x3d\x62\x6e\xdd\xd1\x38\x08\xe4\xe1\xf3\x5d\x1a\x2a\x81\x4a\xa6\x76\x26\x34\x2c\xf0\x3c\x0d\x42\x0b\x92\x4c\xbb\xca\x1c\xa6\x32\xeb\x31\xbb\xf6\xdf\xa3\x20\x3a\x57\x89\xc3\x96\x60\x4f\x0f\x73\x5c\xd6\x5d\x31\x0d\x57\x55\xdd\xc5\x12\x9e\x24\x7f\x34\xb1\x9b\x90\xf2\x41\x04\xfa\x7d\xe0\x0b\x58\xfe\x50\xe2\x7b\x92\xf5\x7a\x71\x8b\x33\x51\xea\xef\xbe\xcd\xc6\xd2\xbc\xc4\x72\x35\xab\xcd\x26\xdd\x6c\x8a\xcd\xa6\x3b\xe9\xf5\xba\x79\xe8\x2d\x20\xdc\xba\xb5\x1e\x01\xce\x47\x8a\x2a\x29\x65\x5d\x3c\x4f\xd2\xcd\x26\xef\xf5\x6a\xfa\xb5\xa6\x2f\xa2\x19\x28\x6d\x4f\x06\x5a\xfe\xab\x5e\xaf\x5b\xf4\x7a\x71\xb6\xd9\xcc\x35\x6e\x9e\xea\xd1\x85\x7e\x2d\xb7\x06\x94\x23\x28\x44\xab\x16\xff\x4c\xe5\x6e\xa1\xd3\x18\xc6\x26\x9b\x87\xd6\x97\x77\x6b\xbd\x85\xf7\x5e\x62\x66\xaf\x88\xf6\x8d\x56\xed\x0c\x20\x67\xa9\xd8\xd1\xd8\x8b\x6c\x4f\x34\x3b\x1a\x8b\x1b\x0f\x18\xb4\x35\x77\x46\x9e\xfc\x85\xb1\x9f\x1b\xc8\x01\xf8\xcf\x16\x56\x62\x2e\x1f\x81\x74\x24\x0b\xaa\xd1\xc6\xe7\xc3\x7e\x76\x00\x1e\xfe\x53\x41\x2e\xe3\x6d\x78\x50\x3f\x14\xec\xc6\x86\x3b\xe6\x72\x53\x0c\x28\xf7\x9e\x1d\xe6\x0f\x94\x7d\x50\xba\x07\x75\x1c\xe8\xef\xa6\x76\xac\x71\x66\x8f\x8c\xbf\x46\x6d\x07\xdd\xc2\x93\x9c\x91\x46\x68\x48\x34\x6c\xd9\xf8\x90\x51\xed\x8b\x6c\x7a\x30\xc2\x86\xe6\x34\xca\x56\x27\xe2\x6c\xdf\x51\xf0\x23\x8d\xfe\xf3\x61\x73\x9c\x25\x3b\x90\x79\x1d\x2f\x4b\x6c\x49\x7b\x3d\xea\x0b\xb7\x91\x15\x58\x06\xb2\x1e\x27\x81\xa5\xfe\x4a\x41\x13\xb5\xb7\x97\x03\x77\x12\x80\x7d\x2e\xb1\x3c\x0c\x06\x4f\x35\xa2\x57\x10\xc6\xcb\xa4\x76\xb1\x28\xdf\x0c\xf6\x33\xc0\xf4\xf3\xcd\x66\x6a\x47\xbe\x3c\xdb\xb6\xd2\x3b\xde\x97\xa8\x19\xd1\x22\xe9\x2e\x95\x7b\x5d\xdb\xd5\x80\x66\x56\x8c\xdb\xeb\x2d\xda\x9a\x0f\x81\x32\xa4\xbd\x5e\x77\xd9\xfa\x9a\x40\xed\xb6\x6f\xc2\x72\xfb\x86\x57\x3e\x1e\x82\xe7\xbb\x75\x75\x04\x2f\x90\xa1\xdf\x2b\xb0\xe2\xde\xe3\x1b\xcb\x6c\xf8\xa2\xae\xbb\xa8\x5d\x49\x50\x1d\xe4\x11\xd0\x82\xd7\xb3\x77\xfa\x5f\xc7\xbb\xb0\x7d\xa0\xba\x7f\x44\x13\xba\xd9\x88\x36\x37\xc9\xfb\xad\x26\xed\x3e\x39\x5c\xb3\x5f\xbb\xc3\xc0\xa9\x1e\xd3\x41\x6a\xfd\xca\x7b\x87\x36\xfd\xa9\xa1\xf9\x62\x9b\x52\x7f\x6a\x31\xbc\x76\xca\x01\x57\xda\xb9\x96\xf1\xd9\x1d\x73\x46\x07\x2d\x4e\x38\x4a\x5c\xa0\x21\x4d\x6e\x0f\x17\x2c\x5b\xc0\x74\x8f\x7d\x80\x9a\x18\x18\x34\x35\x6f\x83\xda\x1d\xa0\xb7\xd9\xd6\xb7\xe2\x26\x55\x0b\x61\x6a\xd7\x55\xf0\x22\xde\xd8\x8f\xe9\xde\xfd\x88\x5f\xb6\x6c\x27\xeb\xfd\x20\xb0\x03\x49\x6f\xb6\x0f\xec\x3b\x51\x01\x4d\xda\xbd\x90\x26\x4f\xe2\x74\xd7\x5e\x70\xaf\x46\x2d\x3b\x62\xab\x99\x47\x11\xee\x88\xfa\x1b\xd0\xc1\x06\x68\xfe\x10\xd4\xda\x51\xeb\xd3\x15\xa7\x7b\xae\x4d\xc5\xa3\x82\xa1\x7b\x28\xc8\x38\x6a\x62\x69\xb0\x32\xd1\x61\xdb\x9c\x75\x8d\x30\xe4\x80\x6e\x44\x7b\x1b\xbc\x74\x11\x13\x43\x85\x08\x08\x87\x1a\xbe\xc2\x6f\xb7\x9e\x3f\x41\xf8\x75\xfc\x3d\x89\x99\xd9\x7c\xdc\x45\x3f\x6c\xd8\xf4\x70\x2b\x58\x00\xa3\x5c\xfb\xf0\x1e\x87\x6f\xec\x8f\xf3\xbc\xfe\xec\x6e\x5c\x73\x61\x8a\xbc\xc7\x72\xaf\x38\xc4\x7a\x35\x42\x83\xb3\xf8\x66\x03\x36\xcf\xf5\xbc\xed\xb9\xbe\x2d\x71\xeb\x73\xfd\xe3\x3c\xdf\xfe\x56\xef\x4d\x42\xb2\x55\x3b\xc7\x58\x1b\x21\x0e\x9e\x82\xeb\x27\x45\x20\x84\x9a\x5e\x11\xb6\x68\x75\x0e\xea\x05\x2b\xb3\x57\x2c\x97\xd1\xd8\x5e\x2d\xad\xb4\xf8\x4c\x10\x46\xcd\x25\x68\x4c\x8b\x82\x02\x4b\x53\x82\xac\xa9\xad\xef\x22\x01\xfa\x35\x39\x1c\x55\xd5\x94\xe6\x02\x5c\x76\x55\xe6\xda\x7d\x9b\x5e\xd6\xd4\x87\x1b\x2a\x20\x5c\x33\xc1\xe7\x46\xf3\xf7\xfb\x55\x9e\x5f\xbb\x88\x7e\xf6\xf8\x5a\x44\x83\x85\xf7\x06\xd5\x12\xf5\xac\xa9\x61\xaa\x64\xea\x6b\xe3\x9e\x71\xc8\xdc\xf3\x96\xa8\x10\xf6\xde\xa6\x5e\xb1\xc9\x8e\xf7\xa9\xd7\xae\x49\x54\xd5\x53\xda\x3d\xa2\x40\xf7\x3a\xd2\xf6\x51\x9b\xea\xab\x67\x89\x72\x82\xb9\x13\xe4\x8b\x6f\x39\xf8\x5e\xb1\xb6\x27\x62\x0c\x4e\xac\xcd\x24\x70\x01\x1e\xad\xd5\x34\xe0\x61\x2e\xa4\x9b\x71\xd9\xc0\x16\xa9\xcf\x81\xe4\x9a\xc4\x3b\x8a\x78\x51\x18\x77\x6c\xd9\xa0\x4c\x2f\x55\x14\xa6\x34\x08\x68\xe3\xe2\xbe\x9c\xc5\x79\x92\x0e\x20\x1c\x54\x8c\xce\x22\x5f\x73\x2d\x1a\xa6\x7e\x30\xc6\xb3\xc8\xd7\xaa\x8a\x86\x91\xef\x35\x3f\xc2\xf6\x21\x22\x7e\x4f\x62\x05\x65\xe0\x24\x11\x1a\xba\x2c\x54\x55\x19\xcd\x24\xa8\x5a\x6e\xc6\x23\x01\x3a\x7a\xfa\x41\x57\xe3\x31\x2d\x40\x85\x17\x2e\xef\x65\x39\x1c\x8b\x0a\x58\xc3\xe0\x61\xdf\x1b\x94\xaf\x71\x8f\x19\xc2\x76\x7b\xb9\x88\x02\x56\xe3\xff\x2f\x69\xa9\x5d\xad\x9b\x31\xf9\xa5\x3d\x7f\xf5\xc2\xab\xa1\x1d\xa5\xcb\xab\xc1\x2f\xad\x92\x45\xab\xa6\xbe\x91\xcd\xb6\x68\xe9\x9f\x83\xb7\x6f\x7b\x74\x41\xf6\xae\x59\x60\x1a\xcb\xd9\x23\xcc\x40\xbc\x04\x5e\x96\xeb\xca\x65\x02\x83\x0a\x9a\x5a\x7e\xfd\x94\xab\xdc\x7b\xb7\x2f\x3c\x2e\x13\x8d\x76\x83\x7c\xfd\xc8\xdd\xeb\x75\x81\x2b\x28\x37\x1b\x65\x67\xdc\xc9\x13\xee\xc7\x84\x5c\x59\xd1\xf6\x16\x88\xe7\x98\xa0\xa3\x55\xd7\x3c\xdf\xae\x9a\x23\x96\xd7\xab\xef\x39\xdc\xc6\x57\xc5\xa5\x7e\xa8\x3d\x20\x1c\x08\xb8\x0c\xd1\xae\xb0\x02\xa7\x31\x3a\x6d\x9b\xc7\x11\x17\x96\x85\x84\x7c\x83\xe6\x56\xc4\x99\xfc\x31\x0c\x5d\x7a\x9a\x46\x43\xbd\xd7\xad\x2a\x9c\x40\x7d\x81\x21\xb7\x32\xd6\x55\x11\xbe\x21\xc2\x14\x20\x07\x56\x47\x0e\x6e\xe4\x21\x43\xc5\xc0\x4d\x10\x9d\xc6\xad\x82\x3b\xb4\xe6\x49\x20\xba\xd3\x47\xc7\x09\xf4\xb9\x8e\x6b\x05\xae\xa0\x54\x57\x74\x24\xc6\xc9\xb6\xfe\x54\x6b\xd0\xa9\xb5\x90\xf6\xde\x58\x2c\x33\xa7\x61\xb4\xb3\x15\x54\x69\xb8\xd5\x32\xe5\x91\xf1\xc2\xe7\x18\x4f\x1d\xea\x08\xc0\x8a\xbe\x56\x44\x9c\x47\x7a\x61\xa6\xe3\xf6\xb1\x44\x04\x8c\x97\x76\x7b\x1b\x8a\x8f\xb4\x91\x0d\x4b\x08\x6e\x2d\x10\xa5\xcb\x65\xae\xad\x28\x24\x61\x39\xf0\x3b\x55\x24\x22\xd2\x61\xb2\xfd\xc8\xf5\x21\xf7\x66\x14\x18\x8d\x14\x96\xbb\x4a\xdb\xc5\x7b\xa6\x92\x2b\xa1\xe4\x46\x3b\x84\x86\xeb\xda\xdb\xce\x8c\x88\x27\xd7\x5e\x7e\xb3\xf2\x8b\x2d\xc6\x35\x5b\x5e\x89\x98\x44\x57\x1a\x3c\xfe\xe3\x59\x55\x06\xd8\x1a\xad\x03\xab\xc5\x37\x8d\x50\x0e\xd5\xb9\x7f\x87\x98\x38\x54\xfe\x22\xd7\xf3\x95\x34\xcd\xd3\xa1\x52\x3a\x5d\x0d\xbb\x93\x50\xaf\xda\x99\x68\x19\x16\xc7\xd0\x37\x3f\x93\x5e\x2f\xfe\x99\x24\x22\x8e\xbe\x23\x92\x6e\xeb\xcb\x7d\x78\x4f\x61\x0e\xf5\xbb\xbf\xe4\xf4\x32\x15\x24\x42\x03\xd7\x9a\x09\xa2\x70\xed\x40\xbc\xd5\xe6\x48\x9b\x6c\x41\x7c\x23\x9c\xd3\x6c\xc8\xaa\xc0\x5f\xfc\xcf\x04\xfc\x34\x54\xe7\xe7\x35\x83\x32\x83\xa4\x0e\xe9\xa4\x95\x0e\x34\x2d\x09\x70\x9e\xd5\x30\x57\x33\xb1\x54\x34\xa9\x7f\xa2\x9c\x22\xc4\xbc\x55\xdf\x5b\x43\x5d\x0e\x5f\xbb\x45\x0e\x94\xbd\x79\x53\xd9\x1b\x0d\x1b\x68\x9c\x20\xfc\x63\x0c\xd6\x96\x7c\x01\xbb\xa7\xe5\xd1\xb7\xe5\xf4\x71\xcb\x04\xfb\x02\x0e\x2b\xcf\x75\xad\x51\xc9\x43\x31\x72\xf5\x54\x47\x5b\x8a\x7d\x4b\x13\xeb\x6b\xad\xe5\x88\x84\x3e\xb5\xaa\x80\xcf\xf2\x68\x6d\xbc\x0e\xcc\xa5\x86\xbc\xb2\xca\x38\x3a\x02\x09\xb3\x71\x26\x34\xd2\xb1\x0e\xe2\x5e\x5d\x31\x1b\x39\xd0\x92\xd8\xdd\x24\x89\x99\xe4\x87\x14\x7c\x8c\x1b\x97\x61\x74\x2c\x59\x85\x06\x53\xc7\x8c\x8b\x52\xad\x4e\xa4\x6c\x14\x14\xaa\xf3\x1b\x54\xa1\xe4\x34\xbe\xda\x6c\x9a\xed\x07\xe8\xec\xf0\x8e\x82\x76\xa1\x63\x2d\x79\xf2\xc8\xcd\xcd\x26\xea\xff\xbd\x2c\x58\x3f\x5d\xd2\x28\x54\xd0\x52\x83\x4b\xcf\xf8\x28\x1d\xb7\x8d\x2a\x3a\x4e\xd1\x50\x15\x0d\x58\xc3\x6d\xa3\x19\xa5\x30\x7b\x34\x04\x73\x0d\xaf\xdb\xd6\xd6\x5d\xb6\xef\xc3\x77\x6b\xdb\x7e\x73\xd0\x4b\x15\x6e\xca\xfa\xc6\xa8\x19\xc8\x1d\xb0\x37\x7c\xb7\x82\x3b\x76\x47\x6a\x67\xe2\xba\xf8\xc4\x1b\xa4\xb5\x8b\x4f\xba\x47\x9a\x2c\x49\x5d\xc3\x5f\x0d\x2c\xf6\x4e\x4c\x5c\xe2\x28\x23\xd3\x74\x95\x8b\xb7\x76\x58\x11\x42\x67\x7c\x44\xc7\x5b\x06\x1d\x1d\xd3\x9b\x6d\x21\x1a\x6e\x21\xdd\x5f\xb4\xad\x7d\x5b\xe0\xc0\x3d\x64\xdb\x53\x5b\xc8\x39\xdf\x32\xbc\x1f\x71\xee\x32\x7d\xd4\x12\x12\xa8\x7e\xce\x88\x8c\x8f\x5a\x5e\x87\x85\x31\x5d\x55\x1e\xb6\xad\x17\x2e\xa3\xb3\xe1\xba\xa9\x6d\xd4\x40\xc0\x54\xcf\x1c\xf1\xd6\xce\x98\xeb\x8c\x79\x9d\xe9\xf5\x04\x63\x56\x2f\x39\x74\x8b\xa6\x72\x83\xb4\x6d\x76\xad\xae\x0d\x6c\xee\xc0\x2c\xac\xe3\xc4\x18\xa8\x3a\x37\xdc\x85\x23\x39\x80\x4f\x89\x83\x88\xa2\x6d\x86\xa6\xb5\xa8\xa2\xed\x54\x7a\x23\xeb\x46\x3e\x3c\xfe\xd4\xd2\x2d\x90\xbb\x5b\x73\xfd\x3d\xb2\x63\xec\x78\x8b\xf0\x80\x8c\xc4\x58\x89\x2e\x9e\xa6\xac\x60\x74\x92\xe6\x31\x3a\xf2\xc2\x8a\xb6\x46\x4d\x6d\x03\x55\x28\x41\x77\xb0\xda\xa7\xd7\x1b\x4c\x2d\x6c\xa4\x36\xef\x9a\x8c\x7e\xeb\xc4\xc3\x72\x3b\x67\xbe\x3d\xf0\xab\x0f\x03\xa7\x5a\xf9\xbe\xe1\x49\x80\xd5\xa5\x2a\x45\xc2\x3c\x2f\x4e\xc1\x73\x4b\x71\x03\x1f\x48\x23\x3e\x56\xcf\x24\x08\xe1\x3c\xa9\xcb\xb3\x0b\x6b\x53\x61\xe4\xd3\x29\xcb\x3a\xca\xfd\x40\x27\xbd\x28\x56\x02\x34\xb7\x8d\xb9\x88\x1c\x3a\x3c\x47\x53\xf7\x88\x5e\x26\x3f\xdb\x47\x97\x95\x7a\x44\xa7\xfe\x23\x7a\x2c\x76\xf0\xa1\x05\x2e\xf1\xea\x48\x52\xc5\x71\x91\xfc\x01\xec\x30\xe0\xbd\x45\x12\xdb\x1c\x21\xcb\x9f\xf6\x7a\xf1\x2a\x29\x9c\xe3\x29\xf0\x84\x0c\x3c\x1c\x16\x83\x50\x6e\x43\xb1\x8a\x77\x5a\x56\x98\x23\xbc\x92\xf8\x49\x31\xc7\x2a\x19\x24\xf2\xa6\x9d\xe1\xaa\x42\x15\xc2\x14\xe1\x40\x11\x52\xd1\xa9\xa4\xd7\xeb\xaa\x77\x49\x5a\x3e\xf6\x62\x40\xf6\x7a\x91\x1f\xfa\x2e\x82\x22\x93\x22\x23\x67\x31\x4f\x5a\xb0\x57\x3e\x20\x0a\xb6\xca\x7f\xcd\x59\xed\x3b\x76\x53\x46\xc3\x67\x31\x51\x11\x2c\x4b\x15\x8e\xb6\x26\xff\xa1\x98\x63\x82\xd0\xd0\xcb\x52\x12\x1d\x8a\x21\x8e\x24\x98\x06\x54\x08\xaf\x3c\x2d\xde\x3f\x06\x54\xef\xf5\x76\xc1\x83\x82\xe7\x59\x57\x1b\x2b\x70\x92\xad\x26\x24\x86\x38\xae\xc9\x23\xb1\xd9\xfc\x0f\x51\x1c\x0d\x72\xe6\x06\x92\xd0\x1f\xea\x0a\x9b\x4d\x57\x97\xd0\x2d\xb9\x62\x6e\x30\xff\x53\x13\xd2\x8a\x9d\x5c\x06\xf7\x1d\xe0\x6f\xe5\x40\x99\xd7\xfe\x7f\xd7\xdb\x97\x37\x0a\x9d\xc6\x5d\xa5\x25\x10\xb3\x76\xaf\x7e\x35\xba\x88\xa0\xc1\x34\x9d\x88\x82\x83\xf8\x5a\x45\x7a\x01\x12\xa8\x52\xd6\xbc\x9b\x4d\xcc\x92\x3f\x13\xf5\x81\xbb\x2c\x08\xf6\x66\x8e\x33\x38\x64\x80\xa7\xf7\x01\x55\xc6\xbb\x88\xba\x03\xdd\xeb\x69\xf5\xf0\x25\x2f\x44\x21\x77\xca\x60\x9e\x96\xaf\xae\x98\x71\xcc\xa2\x62\x47\x51\xec\xc5\x99\x41\x9b\x8d\xae\xa4\x5c\x2c\xda\x90\xbf\x41\x29\xbc\xbe\x4c\xf3\x95\x24\x08\xd1\x91\x80\x90\xc3\x56\x40\x52\xa9\x79\xd6\x6a\xff\x9e\xb8\x41\x58\x0a\x48\x6f\xf8\x08\xd7\xc3\xde\xa4\x26\xc3\x0f\x7a\xe3\x21\xcf\x5d\x64\x79\x93\x26\xab\x10\x42\xf8\xcf\x24\x69\x06\xd0\xf9\x07\xd9\x6c\xe2\x7f\x34\x58\x65\x98\xa7\xcf\x24\x9f\x1b\xac\xf8\x92\x7e\xa4\x0c\xe1\x7f\x90\x5a\x28\x0c\xe7\x07\xed\xaf\x4e\x61\xca\x8e\x28\x29\x40\x4b\x4a\x05\x86\x22\x83\x0f\xe4\x1a\x61\xdf\x6d\x1f\xd1\x21\x08\x63\x91\xf0\x41\x49\xd9\x6c\x95\xa7\x5c\xf2\x7e\x10\x75\x51\xfb\x52\xfb\xdf\x76\x5f\x6a\x10\xc8\x6a\x9b\x27\x35\x88\x3e\x15\x99\x88\xbf\x9e\xdf\xa2\x66\xa2\xf6\x21\x64\x43\xe7\x9e\x9f\xcf\xd3\xf2\x69\x9a\x4f\xd4\x8b\xb1\x56\x3b\xb1\x4e\x1a\x54\x94\x7c\xeb\xe1\xbb\x16\xc4\x4b\x95\x6d\x49\x33\xbd\xf8\x59\xf5\xa6\x48\x3d\x05\x9c\x33\x7c\x20\xd7\xf5\xc0\x47\x10\xf3\x92\x5c\xab\x6c\xca\xb2\xd6\x7c\xca\xb2\x1b\x44\xea\xfa\x2b\x89\x6d\x5d\xe4\x87\x0e\x83\x36\xb4\x95\x46\x5b\x3f\x3a\x0b\x8a\xb1\x66\x18\x2f\x28\x23\xd3\x2b\xdf\x79\x94\x87\x1d\xba\x8e\x44\x69\x05\xbc\x21\xe3\x26\x26\x43\xa7\x2b\x9b\xd6\xc6\xfa\x56\x75\xd7\x50\x9f\xa9\x2b\xdd\x7c\xd5\x5e\xd8\x4a\x2d\x77\xee\xa8\x13\xcd\x39\x16\x38\xc5\x25\xce\x13\x15\xcd\x32\xb1\x70\xc3\x71\x91\x50\x6b\x21\x63\xf5\x69\x0a\xb3\xa7\x36\x9b\x58\xd2\x1c\xce\xf9\x97\x5a\xc2\x0f\xe4\x5a\x5e\x63\x38\x97\x37\x66\x0e\xc0\xc7\xcc\x29\x02\xc5\x65\x12\xa7\x49\x8e\x4c\xc3\xbd\x9e\x5d\xc4\x01\x78\x0e\x41\x9b\x4d\x89\x86\xb1\x0e\xf3\xcc\x92\xee\x69\x0b\x9c\x13\xbe\xe5\x18\xb1\xaa\x22\x83\x1d\x6a\x17\xc9\x53\x82\xc9\xe0\x19\x59\x72\x32\x91\x59\x3a\x4a\x5f\xf2\x52\x26\x07\x34\x61\x72\x25\x93\x34\xf5\xa5\xea\xbe\x75\x09\x0a\x57\x27\xef\x30\x19\xf8\xad\x3f\x26\x61\x82\xf1\x16\xf3\xc6\xa5\x3f\x4b\x45\xfa\xd6\x77\x6b\xf3\x07\xc8\x2b\x0a\xf5\x12\x92\xac\xe4\xa7\x79\xd7\x4c\x7e\xf0\x3e\xfc\x8e\x5e\x43\x29\x70\x07\xa3\xd0\x94\xf1\x0c\xf4\xfb\x10\x5d\x0d\x06\x03\xe2\xb9\x04\xb2\xc1\x75\x15\x62\x55\xf7\xe0\x3e\x27\x3c\x75\x07\x1b\xfb\xca\x07\xfe\x4d\xb6\x16\xae\xb6\x3a\x75\xb1\x56\x47\x4a\x4c\x68\x82\x72\xec\x90\x52\xe3\x34\xf1\xfc\x15\xe1\x5a\x64\xf8\x02\xfb\x4f\x4d\xc3\x22\x78\x79\x02\xef\xe6\x29\x65\x44\x87\xff\x3e\x0a\xfc\x5e\xa4\xce\x88\xbe\x34\x04\x44\x8a\xdb\x24\x2d\x36\xce\x42\x3a\xb0\x2d\x06\x66\x87\x3e\xc4\xd5\x3b\x81\x01\x47\xea\xc9\x1f\xcb\xd5\x45\x39\xe1\xf4\x42\x1e\x64\x38\xcb\xc9\xa3\xa6\xb3\x5f\x3a\x8d\x5d\xa4\xd4\x12\x1c\xd0\x22\x3e\x08\x83\x82\x8a\xe4\x91\x0e\x30\x36\x91\x2b\x00\x72\x4e\x2c\x50\x37\x69\x30\x23\x21\x28\xeb\xd1\xa4\x65\x8b\xe0\x29\x9f\xb7\x3b\x97\x13\xa8\x72\xe6\x40\x51\xb0\x55\xfc\x81\x05\xfe\xf8\x62\x81\xa9\x65\x12\xf6\x8c\xa7\x1e\x58\x19\x6e\x96\xb3\xad\x83\x09\x43\x2b\x9b\xfb\x9d\x86\x28\xa6\xd7\x8b\xb7\x36\x80\x8b\x81\x6e\xe1\x0d\x59\x14\x97\x69\xfe\x74\x4e\x26\x1f\x80\x22\x28\x06\xe7\x0b\xf3\x20\x63\xa2\x1b\xf7\x7a\x6d\xa9\x03\x4e\x04\xa7\xe4\x92\xfc\x90\x0a\x52\x42\xb0\x2c\x0f\x48\x3a\x50\x39\x40\x67\x0b\x83\xb8\x7b\x4d\x34\x6f\x21\x89\xfd\xf6\x00\xdc\xfa\x0d\x2a\x82\x57\x57\xed\xa0\x78\xcb\x8c\x23\x78\x83\x8f\x10\xde\x9e\xaf\x9f\xe2\x23\x84\x86\x91\x7a\x8a\x15\xca\xeb\xf1\xd6\x4d\x11\xd1\x2c\x42\xca\xa7\xb3\x62\xe0\x11\xc2\x65\x25\x48\xca\xb3\xc2\x44\x47\xab\xfb\x78\xf7\xbd\xf4\xf8\xf2\xaa\xfa\xb9\x01\xe7\x9a\x10\xfb\x0d\x10\xdf\x99\xfe\x3b\x14\xa0\xc3\x24\x87\x64\x28\x72\xf3\xc8\x7b\xe4\x79\x38\x57\xa1\x59\x95\x8d\xe2\x8f\x85\x0a\xff\x09\x56\x86\x60\x61\xd8\x99\x16\xbc\xf3\xdb\xdf\xac\x49\xf5\x5b\xcd\x2b\x77\x94\xfb\xa2\xce\x1c\x14\xcc\x4a\xb0\x5a\x94\x58\xe9\x27\x54\xb5\x8c\xac\x45\x95\xe6\xbf\xfd\x68\x6c\x4d\xb4\x0b\x8a\x5a\x35\x07\x40\xcd\x46\x74\x8c\xd1\x43\xda\xda\xe1\x35\xc9\x93\xcd\xb5\xb8\xbe\x74\xa2\x52\x86\xa3\x96\xb8\xc6\x3a\xb0\x3e\xdf\xe7\x45\xcb\x37\x7e\x6f\xde\x04\x3a\x86\x8a\xf3\xb0\xb4\x6d\x58\xd8\x17\xde\x32\xec\xe3\x3b\x74\xd4\x6e\x7f\x4b\x5d\x00\x00\x85\x39\x41\x76\x4a\xb6\x5f\x4b\x23\x12\x44\x52\xdf\xeb\x7c\xcb\x9f\x5a\xeb\xa5\x78\xf0\xec\x8e\x78\xb2\x1d\xde\x6a\x6e\x92\x23\x0c\xe2\xee\xb6\xf7\xe7\x4f\x60\xa7\x43\x2d\x38\x04\x91\xde\xce\xa5\x4a\xee\xd0\xb2\x53\xb0\xfc\xba\x93\x5e\xa6\x34\x4f\x2f\x72\xd2\xb9\x9a\x13\xd6\x99\xac\x4a\x51\x2c\xf4\xe9\x50\xf4\xc5\x94\xa4\x62\xc5\x49\x67\x9a\xa7\x33\x55\x2d\xaa\x2a\x4c\x06\xe7\x17\x94\x65\xc9\xf7\xf2\xd7\x6c\x95\xf2\x2c\xf9\x59\xfe\x54\x81\x4a\x5f\x94\x8f\x73\x7a\x49\x92\x3f\x61\x32\x98\x14\x84\x4f\xc8\x8b\x2c\x61\x98\x0c\x32\x3a\x9d\x2a\x3a\x66\x5b\x48\x2d\x6b\x57\xce\xac\xc5\x33\xa6\xc9\xcb\x54\xcc\x07\x0b\xca\xe0\xdd\x1a\x17\x8a\x44\x4c\x93\x93\x87\xe9\xb7\xf4\x61\x7a\x7c\x8c\xe8\x34\x26\xa3\x74\xdc\x4d\x12\x31\x4a\xc7\x68\x5d\x24\xe9\xd1\x05\x27\xe9\x87\xca\x50\xaf\xbd\x1e\x53\x6a\x3b\x92\xba\x35\x8a\xc9\x27\x38\x4f\xc0\xee\x48\x1f\xb4\xc2\x0d\x65\x95\xd0\x7e\x81\x27\xc9\xe9\xc3\xc9\xb7\x09\x7d\x38\x31\x9d\xf0\xfe\x44\x75\xc3\xfa\x93\x31\x5a\xaf\x92\x49\xff\x54\x77\x55\x26\xac\xbf\xea\x17\x38\x4f\xb8\xfc\xab\xd7\x67\x3d\xa5\xbc\x14\x0a\x41\xbe\x60\x19\xf9\x38\x2c\x70\x9a\x65\x24\x7b\x5a\xac\x98\x00\xf3\x81\x45\x71\x69\x3e\x73\x00\xae\xba\x29\x00\x52\xef\x8a\x3f\xa4\xe5\x3c\x79\x66\x53\xe5\xe7\xbb\xa2\x0e\xc5\xa6\xcd\x90\x71\xda\xf5\x5a\x99\x5e\x83\xb8\x75\x4b\x24\x76\x9e\x3c\xb2\xf3\x66\x7a\x83\x2e\xd2\x0f\x44\xab\x20\x8c\xf8\xd8\x78\xb5\x61\x2d\x31\xce\x8c\xe0\xac\x63\x89\x90\x08\xa7\x49\x74\x0f\x58\x7b\x77\xf8\xee\x45\xc7\xfc\x28\xba\x48\x4b\xb8\x98\xd4\x42\xd8\xaa\xcf\x8a\x09\xb0\xf6\xae\x66\x04\x8a\x7a\x20\xe2\x13\x54\x80\x6d\x46\x46\x44\x4a\xf3\x21\x1b\xd1\x31\x56\x77\xe4\x70\xbd\x2c\xe0\xfe\x1c\xa6\x55\x05\xd1\x01\x85\x04\x1f\x6c\xc8\x9a\xf3\xc4\x27\xd8\x57\xe8\x7a\xaa\x69\xa3\xe4\x1a\x13\xf7\xf6\xeb\x78\xe2\x02\xd7\x5c\xa1\x26\x3f\xda\x14\x27\xcb\x92\xe9\xfe\x12\x68\xc8\xff\x46\xfb\x93\xab\x70\x18\x1d\x01\x42\x88\x92\x20\xf2\x40\x10\xc0\xf3\x7f\x89\xae\x54\x12\x11\x74\x32\x23\xda\x2f\x64\x50\x73\x92\x90\x46\xe1\xdf\x2b\x57\x2a\xb4\x60\x2d\x15\xb2\x96\x0a\x6f\x48\xd9\xda\xf8\xbc\xa5\xac\x76\x84\xdd\x2c\x3c\x55\x85\xe5\xfd\x58\x73\xc1\x0c\xd3\xfd\x2b\x39\x22\x83\xd5\x72\xc6\xd3\x4c\xe6\x1b\x6e\x2b\x79\x42\x70\xbb\xe8\x8b\xe0\xe8\xfc\x9c\xc8\xbb\x71\x95\x3b\xd9\x17\x84\xe5\x05\x7a\x5b\x16\x0e\x25\x48\xc0\x04\xdc\x83\x60\x40\x11\x1e\x45\xe4\xe3\xb2\xe0\xa2\x8c\x70\x4b\x21\x2b\x66\x1a\xe3\x38\xc4\x42\xd1\xaa\x24\x9d\x52\x70\x3a\x11\xd1\xd1\x4d\x47\xb6\x7d\x2a\xe6\xf9\x0e\xaf\x09\x5b\x2d\x08\x97\xe8\x76\xd8\x3d\xc1\x33\x22\x86\x2d\x31\xa6\x15\x77\x57\xed\x6a\xb1\xb9\x61\x0f\x6e\xbc\x59\x75\x67\x4f\x3b\x37\xd7\xc1\x9d\xee\x6c\xe5\xf0\xfe\xfd\xfd\x77\xbb\xbe\xfd\x16\x0e\xef\xd7\x3f\x81\xb7\xeb\xd7\x6f\xe1\xf0\x7e\xbd\xb3\x79\xbb\x6e\xbd\x06\x76\xf6\xda\x82\xd7\x0e\xee\xb0\xa5\x6e\xd5\x7e\x4e\x65\xc1\x54\x14\xbc\xbc\x37\x29\x16\xcb\x82\x11\x26\x76\x9d\x58\x57\x7c\x25\x68\x2e\x2b\xe5\x79\xba\x2c\x49\x1f\xe4\xda\x3b\x0a\xda\x84\xfa\x09\x97\xb4\xf0\xdd\xce\x38\x19\xe4\xe9\x75\xb1\x02\xe1\x72\x3a\xd3\xd2\x53\x7b\xc5\x3d\xa1\xa0\x99\x5d\x26\x44\xb1\x26\x32\xbf\x2d\x2d\xf8\xf0\x1b\x30\x3a\xd5\x20\xc8\xe9\xb0\x24\x3e\xc1\x7c\x60\xa7\xf3\x17\x2a\xe6\xaf\x53\x9e\x2e\x4a\x14\x1b\x35\xb4\x64\x34\x96\x0c\x35\x9d\xc6\xf1\x09\x86\x99\x48\x54\x83\x24\x1d\xdd\xad\x3f\x3e\x78\xb2\x03\x33\xaa\x08\xa1\x75\x4e\x04\x04\xd5\x6a\x64\x1e\xb5\x4d\xad\x45\xaf\x55\xab\xa7\x0f\x47\xe3\x4a\xb6\x55\x24\x74\x74\x32\x3e\xfb\xe9\x37\x6b\x5e\x0d\x7f\xb3\x96\x1f\xd5\x4f\x43\xee\x1e\x7d\x1a\x8d\x5a\xd7\x4a\xe0\x34\x75\x30\x29\xd8\x94\xce\x56\xb0\xf3\x92\xee\x09\xc2\x4c\x32\xd1\x1e\x94\x98\x06\x10\xfd\xe4\x00\x6a\x2c\x9b\x0f\xa0\x46\xe6\x51\xdb\x3a\x1f\x04\x20\x6b\xf3\xee\xc0\xa4\xde\x50\xa3\x61\x84\x42\x68\x35\x7a\x38\x04\x5a\xf6\x75\xa4\x70\x24\x46\x13\x56\x6f\xc8\x3f\x56\x94\x93\xcc\xc2\x8c\xc3\xab\x60\x13\x58\xdc\xbd\x25\x21\x0c\xca\x26\x7e\x8a\x06\x90\x97\x24\xd9\x21\x36\x58\x49\x0a\x60\x2a\xe2\xc1\x60\x20\x3c\xcd\x6b\xbf\x54\xc2\x30\xaf\x30\x41\x95\x7f\x20\xa8\x5e\xde\x34\x29\xbc\x15\x91\xec\x5f\x70\x86\x52\x5d\xac\x0c\x8a\xb9\x85\x6b\x5d\x9d\x52\x57\xca\x65\xa5\x96\xe3\xd0\xba\xe7\x73\x5d\x69\xd5\xb2\xdf\x1a\x30\x54\x1c\xa8\x84\xc9\x88\x8f\x5d\x74\x30\xef\x39\xce\xa2\x0e\x8e\x49\x85\x23\xfd\x05\x7d\x9b\x9c\xd5\x91\xc5\x34\x4a\x7a\x9b\x3c\x12\xae\x51\xa7\xc3\xec\x35\xaa\x8b\x73\x2c\xaa\xdd\xc8\x57\xb1\x68\x37\xc1\xbc\x5b\x11\xea\xdd\xd1\x69\x31\x9d\x26\x64\x50\xb0\x84\x0c\x56\xac\xb8\x80\x80\xec\x12\x3d\xda\x9f\x01\x46\xe4\x89\xde\x97\x7b\x16\x00\xeb\x8d\x2c\x79\x1a\xb9\x39\x69\xa7\x98\x76\x18\x52\x8c\x0d\xf9\xb8\x4c\x59\xe6\x45\x46\xa7\x98\x5b\x99\x69\x9a\x65\xaf\x54\xd7\x5a\xd3\x17\x18\x71\xe4\x94\x6d\x79\x85\x23\x33\x38\x58\x32\x3b\x52\xee\xa3\xed\xcf\x3a\x48\xc5\x30\xee\x1f\xa7\x83\x28\x8c\xd4\x03\x70\x80\x41\xef\x3a\xd6\x34\xcb\x7e\xa0\xa5\x20\xf0\xc8\x6e\x62\x72\x89\x10\x62\x4c\xc1\x8a\xd9\xc3\x5d\x7c\x8a\x9e\x15\x20\xf6\x76\x3e\x9d\xaa\xde\xa7\xd3\xa4\xd8\x7d\x36\xd4\x7e\x37\x1c\xc2\x3d\xc0\x1f\xfd\x29\x25\x79\xd6\xcf\x48\x39\xe1\x74\x29\x4f\x81\x77\x68\xc6\xa1\x8e\x49\x70\x1c\x2c\x12\x96\xbc\x20\x9c\x5d\x98\x8d\x77\x7e\x1f\xc0\x5b\xb4\xf1\xd3\x16\xa9\x93\xe9\xa9\xe3\xa9\xb7\xb7\x2e\x48\x5c\x1b\x7e\x35\x24\x07\xdd\xa8\xc2\x6c\x15\xd6\xeb\x45\x8e\x82\x8b\x28\x93\x79\x91\x7f\x5b\x40\x9a\xe7\x03\x86\xa1\xea\x16\x27\x98\x96\xdf\x4b\xf8\x3c\xb3\xe0\x49\x04\xa4\x7a\x09\x2d\xec\xae\x80\x68\xe6\x7e\x06\xc0\xc7\x83\xcd\x69\x08\x9b\x16\x65\xc5\x5e\x2f\xb2\xe8\x4f\xce\x45\xf4\x7a\x5d\x31\x38\x3f\xa7\xe5\x53\xad\xd8\xf0\xcc\xac\x6c\x25\x19\xeb\x43\x96\xbe\x4e\x64\x1e\xb6\xd2\xb7\x00\x9b\xbe\x5b\x03\xd8\xb4\x4c\x92\x0c\xbc\x47\x3d\x85\xed\x7b\xbd\x96\xc4\xf8\xb0\xe9\x39\x4c\x7e\x10\xe2\xdf\x77\x10\x3e\xf9\x75\xd0\x42\xca\xb5\xed\x1e\x9b\x34\x18\x0c\xb8\x47\xdf\x88\x60\xdf\xa1\x98\xa3\x33\xa2\xca\x0c\x15\x15\x92\x3c\x82\x6f\x30\x7f\xab\xea\xfd\x85\xe8\x67\x5f\xbf\xf6\x79\x5f\x75\xa0\x5b\xe6\x12\x09\xb7\x2c\xc5\xbd\x82\x67\x84\x93\xac\x5f\x92\x96\xab\xf7\x53\xee\xad\x23\xa0\xc6\x8e\x84\x7a\x1e\xae\x85\x88\x51\xf6\x30\x3a\xec\x6d\x29\x52\x41\x27\x1d\x2d\x4a\x0f\x24\x51\xb2\x5c\xa5\xcb\xa9\x4a\xca\x81\xe3\x84\xbc\x25\x62\xfb\x0b\x70\x4e\x4b\x61\x23\xaa\x94\xf4\x67\x92\x9c\x54\x10\xf5\x5d\xee\x0d\x39\x2e\x9e\x88\xcd\x46\x0b\xc0\x57\x34\xd3\x12\x7f\x2d\x26\xf7\xba\x30\xa6\x1a\xb2\x41\x6b\x5a\x22\x91\xda\x88\x8f\x25\xd5\x2b\xa9\x20\xa3\x38\x03\xfd\x50\xa3\x52\xaa\x46\xa2\x5d\xf4\xdf\xb1\x63\x3a\x8d\x41\x57\x50\x76\x87\xd6\xfa\x99\x57\x7e\x28\x18\x27\xd4\x46\x9f\xf6\x2c\x67\x1e\xf5\x4f\x7b\x3d\x6a\x22\x4f\x0b\x6c\xb4\x18\xf4\x30\xb5\x48\xbb\x7b\x52\x19\xe5\x90\xca\x6a\xd4\x99\x15\xb0\x9e\x70\x65\x9d\x4a\x45\xd0\x97\x44\x79\x90\x8e\x4c\x7d\x3d\x98\xfa\xe4\x02\x8b\x9c\xda\x2c\x47\x62\x5c\xd9\xa8\xd1\x5b\x9b\xd6\x0d\x07\xf0\xb8\x9f\x24\x89\x55\xc3\x32\x16\xf8\xe6\x6e\x56\xb1\xef\x84\x8b\x7d\x77\x8c\x88\xd2\x78\xb3\x55\x46\xa7\x63\x2c\x69\x58\xfd\x2a\xba\xab\x66\x0c\xe5\x2a\xa1\x44\xdd\x35\xfd\x1e\x39\x1e\xc3\x57\x55\x93\x62\x29\xf3\x65\x43\x24\x61\xe4\x2a\xd6\x3b\xc3\xdb\xfb\xf2\xfe\xdf\xb3\x85\x8f\xcc\x60\x84\x55\x73\xf7\x6a\x20\x52\x03\x60\x1b\x50\x1d\xb1\x0f\x27\x01\x4a\xd8\xf1\x63\xa2\xf6\x80\x05\x33\x26\x1a\x07\xa9\x9b\x40\xb4\x60\x0d\x4e\x58\x46\x78\x7f\x51\x64\x20\x5b\x29\xef\xb9\x5f\x19\xcd\xfa\x94\x95\x84\x8b\x5f\xe0\x96\xd2\x54\xb8\x7a\x62\x50\x3b\xed\xbc\x24\xe2\xa5\x1e\x8d\xf1\xed\x1d\xa3\xe4\x51\xbc\x9e\xa4\xcb\xf4\x82\xe6\x54\xd2\xad\xda\x2d\xce\xf9\x22\x2c\xf9\xd4\x2b\x12\x47\x0f\x06\xa7\x0f\x22\xbc\xce\x68\x29\xc9\x92\xc7\x2b\x51\x80\xef\x6f\x88\x72\x2f\xc7\xa1\x56\xc9\x74\x16\xa3\x75\x85\x41\x87\x24\xcf\x6d\x9a\x96\xee\x48\x22\x82\xe1\xc1\x60\x40\xc7\x92\x1f\x2d\x4a\x78\x0b\x4b\xf3\x23\x06\xd1\x62\x39\x68\x25\x65\xa8\xc2\x4a\x19\x3c\x68\x52\xbf\x48\xfb\x69\xb2\x6f\xc0\xa2\x20\x80\xb8\xc3\x42\xa9\xee\xfe\x8f\x2d\xd4\x50\xf5\x42\x72\x22\x8f\xbe\x36\xf9\x6b\x5b\x39\xb4\x26\x03\x5d\x2a\x11\x8d\xb5\xb1\x0d\x90\x4a\x63\xf3\x11\x97\x4b\xcc\xc6\x89\xf0\x97\x58\x36\xc5\xb0\xb0\x4b\xfc\xb9\xd6\xf3\x8a\xe6\x79\x5f\x37\xfe\x9f\x15\xbd\xcd\x8a\xb6\x9d\xb6\x5b\xae\xf2\x81\x2b\xca\x0b\x9a\x11\x7e\x6f\x91\x4e\x78\x51\xde\xe3\x2b\x26\xe8\xe2\xe0\xe3\x18\xf2\x71\x56\x63\x6b\x99\x4e\x3e\xa4\x33\x52\x8e\xc8\xd8\xa9\xaa\x73\x8f\x8e\x1a\xcc\xf2\xe2\x22\xcd\x6f\xc3\x54\x91\x74\x32\x0f\x08\x50\x49\x8a\xd4\xa3\xd4\x37\x03\xf8\x83\x6b\x6d\x7d\xd5\x76\x44\x01\x4a\x2b\xb2\xa9\x18\x75\x60\xea\x9d\xc5\xaa\x14\x9d\x0b\xd2\x49\x59\x27\x95\xad\x38\xff\x46\xf0\x80\x07\x85\x9e\x16\x2c\x03\x68\xb7\x51\xc0\x50\x4c\x31\x91\xc0\xe7\xcd\x88\xf8\x3d\xcc\xf2\xa9\x4a\xe3\xc0\xfb\xbd\x23\xa5\xa0\x6c\xe6\x2b\x80\xeb\xcb\x59\xc3\x04\x8b\x84\xf4\x7a\x64\xd4\x5c\x9c\xc8\x5e\xa2\x4f\x8a\x22\x27\x29\x8b\x41\xe5\xc7\xb6\x89\x2a\x2b\x66\x59\x9b\x15\x18\xae\x2b\xac\xda\x1d\xae\x5b\x5a\x1c\xae\x6d\xed\x61\xf7\xb4\xaa\x2a\x20\x6c\x68\x12\xad\x98\x5a\x93\x2c\xea\x1a\x7e\xeb\x8a\xb2\xac\xb8\x3a\x53\x7f\x06\xe7\xb6\xad\x73\xd5\xd6\xb9\xde\x3a\xe7\x0a\x04\xda\x48\xf0\x48\xb9\x26\x57\x53\x5c\xeb\x2c\x81\x6b\xb0\x19\x72\x5c\x12\xa1\x7e\xab\x33\x12\xec\x21\x79\x4e\xca\xb0\x86\x29\xa5\xe6\xa6\xca\x54\x1e\x99\x52\x4c\x3b\x14\x89\x36\xd6\x56\x03\x40\x72\x71\xf7\x14\x6f\xa7\x39\x39\xd0\xdc\x3f\x70\xdf\x2b\x46\xe2\x36\x6f\x24\x60\xf2\xf8\x74\xc5\x39\x25\xd9\x53\xf3\xd6\xe3\x74\x53\x6a\xca\x1f\x8a\x00\xac\xc9\x02\x40\xe2\x6e\x6c\x27\x15\x36\x06\xcb\xc9\x62\x11\xa1\x81\x59\x86\x37\xda\x7f\x8d\xf2\xd2\x60\xe8\xc3\x23\xd5\xa0\x1e\x38\x61\x82\x4b\x54\x47\x06\xe7\xe7\x56\x41\xf3\xfc\x5c\x69\x47\xa2\x81\x8a\xc4\x95\x3c\x22\xa3\x93\xf1\xa0\x14\x29\x17\xa5\xe4\x05\xe3\x48\x90\xc5\x32\x97\x10\x9b\x14\x8b\x25\xcd\x09\x1f\x2e\x52\xca\xfa\x91\x72\x9b\xc8\xad\x92\xd9\xe8\x74\xdc\x70\xe1\x1f\x68\x9e\xa9\xa3\x59\x5b\x95\xce\xa4\x58\xe5\x19\xfb\xad\xe8\xe4\xc5\x24\x15\x04\x8e\xaa\x9e\x55\xc7\xb4\xd2\x29\x14\x1d\xda\x81\x25\xec\x5c\x12\x5e\x82\x1d\x6d\xa5\x5d\x9a\xb7\xc8\x0b\xb8\x01\xbe\x81\xba\x72\x90\xa6\x40\x4a\x93\x2d\xd9\x31\xc1\xcd\xb3\xbe\x2e\xae\x18\xe1\x43\x52\x55\xe0\xeb\xdb\x2a\xc9\x50\xe4\x31\x8a\x2c\x76\x71\x0b\x28\xc2\x5a\xc1\x77\x1a\x77\x1b\x3d\xa9\xf8\x77\x75\xb8\xfc\xf4\x58\x48\x40\x0b\x92\x49\x7c\xa5\x5b\xea\xfc\xed\xa7\xdf\xac\x49\xf5\xb7\x9f\x3a\x97\x34\xed\x10\x56\xae\x38\x79\x9b\x4e\x89\x6d\x4b\x85\x09\x60\x85\x80\xa0\x24\x56\x8b\x6f\xf0\x93\xf3\x1f\x12\x9f\x80\x6f\xbc\x35\xdc\x13\x12\x41\xb8\x3b\x64\x38\x1a\x57\xa0\x66\x41\xcb\x1d\x7b\xd4\x58\x4c\x24\x1a\x17\xe8\xdb\x14\x3c\x86\xc0\x4a\x83\xb0\x20\x8e\xbe\x9b\xe5\x74\xb1\x90\x24\x83\xbe\x55\x80\x03\x5f\xef\x6a\x7b\xc8\xf1\x8e\x4c\x06\x5a\xcb\xd7\x43\x6a\x0a\xfd\x19\xce\x56\x51\x25\xe2\x68\xcf\x98\x39\xe6\x9b\x4d\xbc\xaf\x50\x2b\x5e\xef\x28\xad\xec\x89\xdc\x44\x45\xf3\xfd\xd6\x47\x28\x5b\x5e\x0e\x76\xe3\x9c\xdd\xa2\x22\xef\xfe\x24\x2e\x26\x5e\x43\xe4\x49\xce\xbc\x36\x14\xb9\x6f\xf5\x95\xac\x56\xb6\xb5\x2f\x03\x81\xd0\x3e\x5c\x84\x24\x3d\xa1\x4d\xc0\x86\x5a\x84\xb4\xb3\x34\x32\xbe\x4c\xc9\x19\x19\x1e\x34\x1c\x4c\x5b\x11\x9e\xf0\x4d\xc3\x2f\xe9\x84\x0c\xfb\x6a\xab\xf7\x4d\x88\x4d\xe2\xf9\x1f\x94\x3b\x4e\xa5\xaa\xc0\x00\x30\xec\x9b\x4d\x94\xda\x89\xde\x8a\x24\x69\x1e\x43\xb8\xed\x9f\x37\xd3\xff\x40\xf2\xa5\x8d\x01\xab\x63\x18\xb3\x5a\x08\x63\x55\x66\xad\x4d\xd0\xe2\x11\x19\xdb\xbd\x08\x33\x84\xf8\xaf\xd5\xae\xe6\xd9\xae\x3d\xaa\x41\x5a\xde\x6b\x82\xf4\x16\x54\x5f\x18\xa8\xb1\x43\x59\x87\x9c\x6d\x03\xa1\xb0\xa6\x7a\x38\x54\xa0\xf0\x45\xef\xf2\xfb\x8a\x53\xa1\x7f\x57\x68\x48\x46\x62\x0c\x0f\x82\x77\x67\x15\x14\xc0\xf9\x01\x31\xa3\x5b\x8c\x44\x94\xa2\xb1\x7e\x4f\x2d\xd8\x84\x94\x11\xf6\x62\xf7\xb8\x12\x4c\x66\x82\xce\x22\xe1\x11\x3e\x71\x81\x61\x21\xc2\x57\xab\xa5\x84\xd9\xf8\x4a\x08\x69\x3b\x30\xd1\x57\x03\x8f\x4f\x2a\x02\x6b\xa4\x8f\x44\x74\x0c\x95\xfc\x3e\x8f\x8f\x71\xa3\x21\x13\x99\x15\xac\x6c\xf5\x68\x22\xab\x6c\x32\x8c\x8e\xc1\xd0\x16\x73\xb9\xb1\x0c\xd0\x78\xb0\x8d\x0c\x32\x77\x1a\x2a\x56\x06\x7e\x91\x96\x8a\x18\x80\xf4\xfe\x42\xb1\x53\x35\x3c\xb8\xa3\xbe\x4d\xfa\xfc\x4f\x09\xc1\x7e\x55\xfc\x51\x28\xec\x25\x0d\x69\x6f\x2c\x20\x30\xa4\xbf\x3b\x04\x5a\x37\xd4\x67\x3e\xe7\xe6\xaf\x90\xd9\x7c\x1e\x8b\x1a\xc9\xe5\x34\xea\xef\xc6\x23\x93\x4f\x54\xf0\x60\x2a\x24\x16\xda\x81\x9f\x95\xf5\xcc\x80\xe8\x16\xe4\xa3\x08\xf8\x98\x9a\x94\xfe\xa0\x85\x3b\x78\xad\x81\x74\xda\x53\x46\x73\xc0\x12\x0a\xe5\x5e\x4d\x25\xb8\x5a\xee\xb2\x39\xc8\xe0\xf1\x9b\xdf\xbf\x3d\x7f\xfb\xfc\x9d\xa1\x6c\xbc\x14\xe6\xf1\xce\xcd\x67\x03\x62\x6d\x08\x30\xc5\xc5\x51\x61\x1a\x88\x69\x12\xa5\x7c\x56\x46\x88\xb2\x58\x89\xd2\xd1\x96\x9d\x21\x6b\xea\x71\x15\x37\xda\x19\x6c\x44\xc7\x49\xa1\x4e\xba\xec\x2b\xe1\x18\x6e\x3b\x63\x94\x85\x6c\x34\x65\x08\x28\xee\x05\x5a\x8b\x03\xbd\x17\x3f\x07\xe9\xe8\xe2\x41\x0d\x92\x6d\xa9\x40\x32\x53\x3e\x74\x41\x72\xf8\xfe\x09\x16\xfa\xf3\x09\x8c\xbc\x11\x27\x24\x98\x70\xa8\x44\x61\xa5\x48\x07\x90\xb2\x41\x33\x47\xb5\x56\x85\xd5\xca\xb8\x4d\x83\x24\x3b\x0a\xc7\x7c\x30\x22\x56\xc4\xe5\x1d\x30\xf1\x36\x4c\xfe\xe9\x8e\xeb\x27\xb8\xc4\x25\x68\xd7\x25\x11\x16\x40\x43\x86\xdd\x27\x65\xb3\x21\xad\x12\x8e\x0b\x03\x7c\x3b\xe4\x9d\x72\x3e\x62\x4e\xb5\x3c\x6a\x60\x13\xf7\x03\x9d\x92\xc9\xf5\x24\x27\x4f\xd3\x3c\xbf\x48\x27\x1f\xca\x61\xf7\x54\x4b\xec\xfe\x50\x14\x1f\x86\xdd\xd3\xca\xf9\xee\xd6\x50\xb0\x9e\x4a\x0e\x5a\x73\x73\x17\x3f\xb3\xbd\x6b\x1a\x25\x37\x34\x4a\x4d\xdf\x2c\x34\xbc\xac\x99\x5d\xe2\x02\xa1\x75\xf3\x1e\x10\x68\x6d\xb6\xa3\xf2\x0e\xd4\x56\xc4\xd0\x18\x65\xcc\x31\xb8\x2b\xa9\x39\x11\xaa\x24\x71\xa0\xe7\xe8\xd5\x44\xeb\x14\xa4\x2c\xca\x2e\x24\xf7\xb0\xe5\xea\xd0\x4d\xab\x6f\x84\xcf\x76\xfa\x0d\xb0\xda\xe4\xc5\x26\xef\xc8\x2b\x26\xf6\x0c\xbc\x8d\xc9\xbb\xcd\x99\xbc\x0d\x49\xf4\x59\x0e\x94\x62\xce\xb8\x49\x3e\x72\xa2\xf4\xa7\xb5\x93\x13\x93\xe4\x11\x90\x45\xa6\x2c\x3c\x15\x1b\x07\xc1\xfe\x5d\x49\x7d\x20\x5e\xe4\xc5\xe4\x43\xbf\xcc\x0b\xe1\x29\x38\x97\xf7\x5c\x72\x08\x4d\xbf\xb8\x91\x35\x6d\xad\x18\x94\x5e\xd0\x8f\x94\x95\xf7\xe0\xa3\x96\xe5\x55\xbf\x06\x65\x0d\xa8\xde\x00\x2e\x66\x9f\xe5\x7d\xc2\x58\xee\x59\x80\x0e\xd4\xf1\x8e\xd7\x4a\x39\x71\x68\x21\x8a\xb5\xa2\xe3\x30\x8a\xf0\xb9\xa4\xd3\x86\x75\x8f\x24\x0c\x8c\x1a\xe2\x16\x8d\x73\x60\x04\xd2\x05\x01\xd8\xd3\xec\x05\xbc\x81\x3e\xd7\xaf\x07\x5e\x79\x85\x0d\xf4\x7b\x2b\x23\x29\x27\xa5\x78\x35\x85\x58\xa8\x76\x17\x80\x58\xab\xab\xbd\x87\x1b\x0e\x51\xfb\xa7\x90\x7d\x20\x2f\x7a\x6e\x3a\x11\xb0\x6b\xdf\xe6\x85\xf0\x8b\x60\x80\x80\xe7\xdf\x1d\x68\x58\x09\x78\xe1\x31\xe2\x11\x26\xc8\x5e\xc0\x2d\x43\x62\xc1\x90\x04\x5a\xd7\x1b\x3c\x87\x05\x7d\x0b\xdb\x41\x98\xa6\x88\x67\x4d\x28\x70\x04\x03\x8a\x90\x75\x37\x21\x3f\x8f\xea\x0d\xd1\xf2\x5d\xca\x67\x44\xc8\xa6\xde\xcb\x36\xc1\x0d\xbd\x1d\x1d\xaf\x35\x09\xdb\x4b\xa9\xc4\x44\xe8\x88\xf4\x7a\x75\xbb\x32\x0e\x36\xe2\x35\x0b\xcc\x75\xab\x53\x1a\x35\x80\x65\x74\x2c\x6a\x1e\x68\x06\x9c\xa4\xd9\x2b\x96\x5f\xc7\xde\x3c\x07\x7e\xdf\x03\x70\x56\x58\xa1\xaa\xc2\x1e\xc6\x6e\x59\x76\xf5\xbc\x5e\x83\xbe\x76\xb1\x51\x4f\x1e\x9c\x67\x64\xdb\xb2\x56\xc1\x8b\xd2\x21\x27\xdd\x3b\x71\x37\x3b\xe9\x7e\xc5\xed\x27\xfd\xf3\xa3\x48\xdf\xfc\xef\x97\x3b\xc3\xfe\x2a\x37\x9a\x58\xaa\x8d\xb7\xb5\x11\x95\x0f\xcd\x28\x27\x36\x7f\xa6\xe4\xaa\xde\xca\xd6\x11\x6c\x41\x0a\xb2\x39\x5a\x3e\x96\x1b\xa3\x39\x29\xaf\x9f\xc1\x39\xac\xcc\x60\x34\x8e\xcc\xd9\x6b\x1b\xa8\x77\x9e\xd4\x49\x6e\xb4\x10\x59\x9f\x68\x65\xdc\x28\xad\xce\xb4\x0a\xc1\xea\xed\x48\xb6\x6d\x47\xce\x41\x3c\x66\xee\x0f\x03\xc0\x3b\x3c\x75\xaa\x11\x3d\x8e\x6d\x20\x82\x5b\xc9\x0f\xbd\x55\x86\x97\xc3\x96\xbd\x67\x50\x8f\x12\xf0\x0d\xd4\x44\x62\xe1\xcf\x9a\x6f\x9b\x75\x0b\xbd\x72\xe8\x49\xfa\x2c\xe7\x88\x27\xf6\xa0\x1c\x32\xfc\xf0\x4e\xff\x35\x94\x0a\xc0\xd3\x96\x51\x88\x5a\xab\x7d\x79\xc0\x41\x32\x9b\x03\x0e\x4d\x78\x47\x12\x73\x89\x79\x9b\xd9\x6c\x77\xd0\xb3\x87\xf0\xd1\x04\x55\xb8\x8e\x86\x77\xd5\x34\xca\xef\xae\x72\x70\x77\xd7\xb7\x6d\x4b\x0b\xf6\xa8\xd5\x91\xbc\xd8\xb6\x3a\x7b\xe9\xb3\x5f\x63\xc1\xfe\xf0\xee\xe5\x0f\x4f\x52\x5e\x0e\xcc\xe8\xe2\x35\xcd\x86\xd1\x9f\xbe\x98\xbe\x7f\x22\xde\xbf\x8a\x30\x0c\x70\xf8\xdb\x75\x54\x5e\x2f\x2e\x8a\xbc\x8c\x86\xa3\xa8\x67\x7d\xc9\x62\xe5\x24\x04\xb4\xf2\xa2\xe1\x68\xf4\x15\x1e\x3d\xf8\x1a\x9f\x9e\x8e\xf1\x68\xf4\xe0\x4b\x7c\x7a\x32\x1e\x2b\x65\xfa\xd1\x28\x72\x95\x46\xeb\x5a\xb5\xfb\x38\xea\x74\x64\xc6\xe9\x37\xf8\x54\x55\xfd\xdd\x18\xcb\x3f\xdf\xa8\x3f\x5f\xab\x3f\x5f\xa9\x3f\x5f\xaa\x3f\x5f\xa8\x3f\x0f\xd4\x9f\xfb\xea\xcf\xa9\xfa\x73\x32\x1e\x8f\xb1\x6c\xf7\x6f\x7f\x63\xd1\x78\x8c\xd5\x1d\x40\x04\xe1\xb2\xc3\x71\x35\x96\xf9\xd1\x3c\x2d\x9f\x5f\xa6\x79\x34\x9c\xa6\x79\x49\x70\xb4\x5a\x5e\xa6\x50\x20\x5a\xfe\x2e\xc2\xd1\xf2\x1b\xf9\xcf\xd7\xf2\x9f\xaf\xe4\x3f\x5f\xca\x7f\xbe\x90\xff\x3c\x90\xff\xdc\x97\xff\x9c\xca\x7f\x4e\xa2\x6d\x14\x51\x44\xa7\xd1\xb8\xfa\x2d\x5e\x10\x91\x0e\xd7\x0b\x58\x1e\x75\xdf\xdd\x60\x6b\x0c\xe6\x17\x65\x74\x97\x5d\xd6\x4e\x54\xfc\xea\xbb\xec\xfd\xd3\xff\x79\xf9\x6a\xf6\xf4\x8f\x5b\x76\x19\x38\xa1\xc1\xfb\x77\x9b\xde\x6c\x6d\x7b\x0d\x47\xd0\xc8\x9e\x2d\x77\x1f\xea\xed\xdc\x2f\x78\xf7\x96\xdd\x5b\x7f\xdf\x7e\x33\x94\xc2\x9d\x76\x8c\x5b\xe6\x7d\x3b\x46\x71\xda\xca\x4d\x55\x5f\x5d\x91\xf6\xca\x57\xa9\x9f\xe0\xb2\xd7\x5e\xb0\xd6\x15\x86\x67\xa1\xdb\xdc\xf7\xaa\x89\x4f\x75\xd5\xab\x59\x5f\xa4\x25\x9d\xf4\x33\x5e\x2c\xb3\xe2\x8a\x05\x27\x2e\xc8\xe9\x4f\x0a\x26\x0e\x10\xd8\xcb\x4d\xd6\xd6\xb0\xb6\x05\x31\xae\xf3\xfa\x46\x77\x60\x77\xf9\x72\xc2\x8b\x3c\xd7\x6b\x52\xee\x2e\x3b\x4f\xcb\x3e\x78\xfd\x68\x63\xce\x31\xad\xad\x94\x72\xaa\x0b\xde\xfa\xf0\x0a\x4f\x70\x86\xe7\x78\x8a\x97\x78\x81\x2f\xf1\xcc\xad\xe3\xc5\x2f\xfb\x52\x69\xfb\xbd\x6e\x46\xfe\x73\x81\x05\x7d\x97\x23\xcc\xb9\x1c\x09\xb6\x65\x01\xa6\xa0\x23\x32\xae\xc0\xdb\x96\x1b\x4d\xd2\xed\xfa\x9f\xb8\xa8\x99\xbb\x76\xc3\x04\x1c\x47\x30\xa3\x88\xb2\x4e\xb1\xd9\x14\x03\x78\xfb\x56\x8e\x91\x51\xaf\x17\x17\x03\x33\x15\xb0\x94\x2d\x12\x6e\x48\xda\x01\x27\xca\x8d\x22\xb2\x2e\x72\xed\x00\xfd\x48\x2a\x86\xf5\xda\x6c\x78\x85\x20\x88\x63\xaf\x67\x5d\xcf\x07\xfd\x41\x77\x30\x9a\x30\xfd\x2c\xf8\xd2\x0e\x61\x8d\xbb\x79\x1c\x64\xea\x03\xa3\x25\x0c\x27\x49\xb3\x87\xed\x4b\x5b\x18\x37\x39\x08\x17\x9f\xe0\x4d\x39\x27\xa2\x73\x9e\xc4\x56\xda\x2c\x78\x3a\xf9\x40\x32\x2b\x17\x3e\x57\xbe\xbb\x9d\x5c\x58\x7f\xe7\xb5\xef\x55\xed\x7b\x52\xfb\xce\x6a\xdf\xf3\xda\xf7\xb4\xf6\xbd\xac\x7d\x2f\x6a\xdf\x97\x35\x2f\x89\x96\x28\x6f\x79\x07\xb7\x21\x94\x30\x3d\xf2\xdf\xc4\x2f\x34\x01\x29\x78\xca\x14\x1e\xa0\x6c\xf6\x82\x3d\x95\x0d\x47\xee\x69\x6a\xd0\x96\xbf\xd9\xb4\x62\x81\x7e\x3f\x28\xdc\xa7\x2c\x6a\xeb\x87\x64\x3b\xbb\xb1\xd9\x07\xf4\x42\xb2\x6d\x9d\x50\x36\x7b\xb5\x12\xbb\x67\x63\x0a\x1c\x38\x9d\x62\x25\xbc\xae\x68\xf9\xae\x58\x4d\xe6\xcf\xc8\x25\x9d\x10\xbf\x8b\x20\x63\xb3\x31\x0a\x9f\xdd\xae\x52\xb9\xea\xf5\xa2\x82\x09\x59\x02\xf4\xf2\xe4\xa1\x56\x19\xc8\xb5\x6d\x46\xf0\x22\xdb\x82\x6f\xcd\x55\xd0\xd7\x2a\x04\xd0\xb1\xc9\x1c\xac\x18\xfd\xc7\x8a\xbc\xc8\x3c\xb8\xc8\xfe\x5e\x16\x97\x04\x1c\x84\x46\xd8\x1c\x41\x93\xaf\xfc\xc1\xbd\x29\x0a\xf1\xb2\x58\x95\xe4\x59\x71\xc5\x9a\x85\xd4\x4d\x00\x1a\xd5\x6c\x42\x4a\x51\xc8\xeb\x60\x34\x76\x05\x16\x2b\x01\x1e\x50\x8c\x0d\xaf\x6b\x42\x09\x07\x31\x4f\xa2\x94\xd1\x05\x14\xd2\x4b\xa3\x2c\x93\x70\xcc\x92\x99\xf3\xe4\x54\x17\xb0\x61\x1e\xf8\xed\x60\x3e\xf2\x0c\xd0\x7a\xe8\x38\xc0\xa1\x78\x66\x51\x24\x56\xf8\x80\x05\xc8\x8b\xed\x40\x5e\x95\x7a\x52\xcd\x40\xd5\x16\x46\xae\xc5\x73\x8e\x5b\xcc\xb4\x9b\x27\x70\x66\xa8\x32\x9f\x5c\xbf\xd0\x12\x57\xb5\x34\xae\xb6\x6a\xce\x82\xe1\x39\x93\xa3\x72\xcf\xb4\xdd\x93\x8a\x15\xc5\x12\xe2\x45\x12\x01\x81\x81\xb4\xe2\xa8\xed\x05\x62\xb1\xbe\x25\x39\x81\x53\xfe\xd3\x28\x4b\x45\xda\x27\x17\x59\x9f\x66\xc9\x6f\xd6\x3b\xf6\x43\xd5\xd7\xae\xff\xc7\x3f\xe9\xb0\x8b\x2d\xeb\x9e\x70\xe5\x2b\x41\x7b\x18\xe3\x03\x01\x5c\x84\x6f\x3d\xc5\x6c\xea\xc3\xf8\x04\x53\xcf\xa3\x02\xd6\xc6\x41\xfe\x6e\x43\x9b\x0d\x31\x4e\x44\xe5\x65\xb9\xd9\x28\x77\x87\x2e\xe5\xac\xa5\x96\x46\xd1\xc3\xae\xbd\x8f\x49\x2c\x3c\x75\x34\xad\x2c\xaa\x47\xc9\x9c\xdd\x98\x86\x16\x73\x1e\x0f\x4a\x4c\xb7\x03\x2f\xe5\x34\xed\x17\x57\xac\x94\xa0\x1b\xd0\x4c\x5d\x6e\x95\x84\x90\x6b\x9e\x86\x66\x69\x45\xf2\x3c\xa6\x7e\x7e\x11\xe6\xa7\x49\xe1\xf5\x6e\x48\x86\xa2\xd7\x4b\x6d\x07\x12\xb2\x9b\x0d\x89\x0b\xb0\xd9\xd4\x71\x52\x07\xee\xdc\x6b\x98\x84\xeb\xa8\x23\x49\x0c\x26\x79\x51\x92\x98\xe3\xee\x89\x8e\x1f\xde\x0a\xba\x0a\xdb\x49\xa7\x99\xf2\x0c\x6c\x6d\xca\x5d\xe3\xbc\x28\x04\xe4\xbd\xbb\x5e\x2a\x05\xb5\xb6\x4d\x01\xf1\x5c\xb5\xca\x68\xa3\xb1\x88\x93\x92\xfe\x6c\x70\x20\x5f\xb1\xbc\x28\x96\x8f\xaf\x52\x4e\xde\x10\x43\x63\xee\xa8\x5d\x70\x4a\x98\x42\x1c\x13\x70\x27\xb7\xa7\x21\xc8\x0c\x90\x6c\xaf\x17\x6f\x9f\x6a\xe4\xe1\x5a\x6f\x7b\xbe\x95\x09\x4a\x4f\x18\x00\xb9\x03\x58\xaa\x05\xc2\xb2\x68\x27\x7c\x94\x9e\xb0\x32\x6b\x57\x00\x6e\x41\x98\x2d\x0a\xe1\x23\x70\xb2\x48\xcc\xce\x36\x7e\xcb\x7f\x2c\x32\xe2\xf9\xf0\x63\x46\x13\x1f\xf4\x38\xc0\x35\xa2\x6c\xfc\x35\x94\x45\x31\x53\x86\x7e\x0f\x49\xaf\x17\x3d\x79\xf5\xec\x7d\xd4\x4d\x9c\x37\x9f\x81\x28\xfe\xb4\x5c\x12\xfe\x34\x95\xa4\x60\xaf\x17\x49\xf6\x77\x47\x89\x87\x68\x2d\x8c\xe5\xe9\x51\xcb\xa8\x48\x62\x8e\xdd\x99\x3e\xa5\xdb\x06\x55\x55\xc6\x43\x8a\xa8\x94\x1b\x7a\xe5\x56\x3f\x53\x05\x01\xfe\x94\xcd\x62\x82\xac\x3b\xd5\xd8\x46\xfd\x95\x9c\x84\x32\x1c\x80\xf5\x28\x5d\x34\x1c\x99\x53\x6b\xc1\xd8\xa3\xb6\x80\x7c\x34\x76\x8b\xab\xea\x7e\x82\xc3\xb0\x7b\x17\xb6\x75\x73\xe3\x8d\xb8\xbd\x91\xfd\x7b\xb1\x52\x17\x0c\x79\xc1\xac\x8b\xff\xfa\x95\xd3\xeb\x7d\x8c\x09\x76\x01\x7c\xc2\x9b\x59\x9b\x79\x36\xa9\xb2\xca\xb6\xfd\x6a\x25\x8c\x11\x4f\x6b\x07\xa1\xc1\xad\xd9\x41\xfa\x82\xf4\xb0\xa7\xbd\x5b\xe8\xd4\x5f\x0b\xb0\x8e\x78\xc1\x5e\xe7\x29\xc0\x56\x24\x22\x6c\x41\x9d\x37\xbf\xbe\x52\xc4\x24\x12\x3f\x32\x22\x77\x6a\xdc\x3d\x01\xa7\xc2\x19\x44\x5d\x3d\x8e\xfa\x7d\xc8\x8a\x30\x57\x0a\x96\x12\xac\x1a\xcc\x60\xfc\x1e\x4e\xd9\xd1\xbb\x60\xf7\x2c\xe2\xa8\x13\x21\x14\xd4\x4d\xb3\xac\xbd\xa2\x21\x2d\x83\x9a\x62\x90\x2e\x97\x84\x65\x4f\xe7\x34\xcf\x20\xac\xf9\x0d\xe0\x8e\x3f\xc6\x3c\x78\x87\x31\x23\x37\xad\x55\x08\x29\x92\xe1\x65\x8d\x0c\x73\x41\x1e\x6a\x19\x10\xdb\xb4\x59\x5a\xb9\xe4\x81\x25\x2b\x8b\x05\x91\x09\x57\x31\x19\x80\x77\x4f\x09\xd5\x12\x6d\x36\x32\x41\x7b\xf8\x54\x49\xe8\xc8\x3c\x47\xc2\xea\x99\xe0\xe6\x06\x6d\xab\x05\xdc\x9a\xad\x75\xa3\xc3\xfb\x4e\x42\x4c\xb7\xd9\x7e\x17\x80\x66\x4b\xeb\xcc\x8c\xff\x9a\x98\xe0\xf5\x44\xc2\x47\xae\x96\x64\xfa\xcb\xd5\x85\xe0\x44\x7b\x5d\x34\x28\xa7\x01\x02\x13\x06\xb3\xab\x9f\x9c\xeb\xcd\x1b\x04\xdf\xe8\x36\xa3\xe5\xa4\x60\x8c\x4c\x6c\xc4\xed\x06\xcc\x35\x49\x5c\x35\x0e\x7f\x8c\xd6\xfb\xee\x20\x09\xef\xa8\x46\x63\x79\xa8\xa3\xaa\x27\xda\x95\xaf\x11\x08\xe4\x10\x24\xb3\xaf\xb3\x6d\x6b\x62\xdc\xf9\xac\x98\x72\xfe\xb5\x83\x90\xe1\xee\x5a\xaf\xda\xf0\xfd\x5a\x13\x0d\xad\x83\xbc\x09\xd5\xd1\xda\xc0\x0d\x09\x8f\xaa\xed\xda\x5a\x1b\x6f\x0a\x6e\x96\x4b\x4e\x64\x3f\xaa\xa8\xb9\xe4\x45\x40\x54\x8b\x16\xa2\x9a\xdb\x54\x15\xfa\xdd\xd2\xc7\x5c\x12\xd0\x7e\xa5\xb5\xe7\xe5\x88\x81\x53\x7b\xe3\xee\x58\xf7\x19\x73\xac\x2e\xee\x75\x46\x72\x91\xfe\x15\x9c\xcc\xe6\x22\x7d\x3f\x4c\x2b\x5b\x49\x95\x7d\x26\xd3\x4b\x24\xa9\xe9\xe2\x5b\x49\xc9\xcb\xf2\x3f\x92\x59\x2a\xe8\x25\x39\x83\x90\x19\x61\x1a\xc4\x99\x87\x09\x3e\xd3\x6a\x44\x08\x0d\x8b\x47\xa6\xd8\x6b\x80\x56\x58\xd5\xa4\xb5\x56\x4d\x4d\xaf\xef\x5d\xaf\x69\x52\x4f\x6b\xaf\x6a\x7a\x7d\x6f\x7a\xe8\xf5\xbc\xba\xbb\xba\x75\x6a\x79\xaf\x55\x16\x84\xed\x2a\x36\x9b\x14\xf5\x7a\x00\xa1\x8c\x96\x9a\x80\x37\x40\x2d\x70\x0a\x21\xad\x54\x3c\xe4\x66\xa3\xd5\xd1\x8e\xe3\x7b\x35\x27\x24\x8f\xb0\xc0\xeb\x49\xba\x14\x2b\x0e\x12\xc8\x65\x5a\x96\xf4\x92\x28\x5d\xc4\xad\xa4\x4d\x02\x57\xf4\xee\x03\xdb\xd6\x7c\x85\x2a\x3d\xd4\x80\xe6\xda\x4f\x4b\x25\x8d\x1c\x55\xa7\x6a\x27\xbc\xd6\x55\xa3\xed\xf5\x56\x62\x5f\xd1\x67\x87\x50\xf8\x2d\x94\x9c\x15\xb3\xca\x2b\x8a\xdc\xb2\xf5\x0a\x55\xcd\xa9\xed\x41\x35\x9f\x72\xd4\xb7\xee\x00\xb4\x84\x66\xc9\x75\x7c\xe9\xc7\xc0\xaa\xcb\x53\x46\xc5\x18\xaf\xeb\xa2\xee\x50\x10\xee\x09\xbe\xb1\x27\xf7\x68\xf3\x83\xda\x46\xd6\x9d\x6d\x25\x93\x86\x51\x54\x55\x08\xd7\x46\x08\x34\x49\x84\x47\xe9\xd8\xb8\x6a\x55\x3a\xaf\x46\xbc\xe3\x5c\x1b\xb5\xd5\x43\xf8\xd2\x77\xd3\x58\x6b\xdb\xdc\xe0\x11\x1e\x95\x37\x6c\xde\x56\xdd\xdd\x83\xa5\xa3\x23\x3c\xca\x6f\xd8\x85\xab\x7b\x50\x1f\xaf\x56\x22\xc2\xa3\xd5\xed\x3a\x79\x05\xc2\xc9\x5d\xbd\xb4\xd2\x86\x11\x1e\x4d\x6e\xb3\x2e\x8d\x76\x0e\x5b\xa7\x96\xee\xb3\x5b\xae\xdb\x4d\x47\x50\x27\xb7\x22\x3c\x9a\xdf\xb4\xeb\x46\x1b\x07\xf4\xe9\x91\x4d\x11\x1e\x4d\x6f\xd3\xa5\xdf\xc4\xee\x1e\xdb\x51\x47\x84\x47\xcb\x1b\xf6\xbb\xa5\xa1\x3d\xbd\x37\x48\xb8\x08\x8f\x16\x37\xed\xb9\xd9\x48\xad\xd7\x4b\xcf\x13\xec\x15\x38\x6a\x37\xbe\x03\x92\x93\x87\xe2\x5b\x17\xf5\xf4\xf8\xd8\x69\xcf\x13\x1d\x69\x3a\xfa\x7f\x93\x62\x01\x3e\xf9\xbb\x49\xc2\x07\xac\xc8\x88\x8a\x71\x18\x47\xff\x4f\x90\x8f\xb5\xe4\xcd\x26\x72\x09\x60\xb1\x6c\x74\x67\x7d\x57\x57\x76\x34\xcf\xcd\x68\x1e\xca\x06\xbb\xc4\x71\x8a\x9b\x8d\xff\xe5\x88\xbb\x9d\xd2\xfd\x08\xa1\x87\xc8\x23\x1b\x6b\x2c\x74\x10\xca\x91\xd4\x73\x2b\x6b\x13\x66\x87\xf7\x51\xe9\x85\xd9\x9b\xee\x1f\x2b\x52\x8a\xc7\x06\xbd\x7f\xcf\xd3\x05\x09\x94\xa1\x14\x59\xaa\x8b\xcf\x94\x4a\xf9\x4a\x90\xec\xad\xb8\xce\x21\x98\x91\x84\x27\x93\x0c\x35\xc0\xc8\x5e\x14\x0a\xa0\x72\x0f\x31\x65\xe8\xec\x67\xbe\xce\xd3\x6b\x08\x55\xd5\x70\x91\x80\xb6\xdd\x8e\xb6\x2e\xc8\x3d\x24\xdf\x2c\xa9\xad\x36\x02\xa0\x5e\x52\x13\x40\xa0\xc7\xe5\x59\x47\x9e\x57\x08\x1d\xdd\xf2\x11\x5e\x85\x5e\x4a\xf3\xbe\x48\x67\x7b\x5f\xe2\x3f\xb7\x4e\x5e\xdd\x28\xd6\x3d\x04\x6e\xb3\x05\xbd\xe1\x6c\xf5\x83\xc1\xdd\x54\x0e\x76\xa8\x05\xb4\xa8\x04\x80\x3d\x9e\xaf\x16\xe0\x4e\xfb\xfc\x57\x52\x05\x98\xfe\x47\x15\xe0\xff\x82\x2a\xc0\x32\x89\x59\xed\xa5\x9d\xd6\xbe\x8b\xda\xf7\xa7\xd6\x14\x98\xc6\x71\x76\x83\xc7\x7d\xff\x41\x7f\x6e\xdf\x7a\x67\xb3\x9c\xbc\x28\x9f\x10\xca\x66\x8a\x6c\xc8\x9e\x5c\x83\xa0\xda\x5c\xca\xdd\x53\xbf\x78\xeb\xd3\xb0\x7d\x85\x54\x12\x66\x2b\x5d\x76\xe2\xe4\x40\xa2\xa3\x5d\x6d\x65\x9b\x4d\xb4\x90\x45\x81\xb2\x0e\xc4\x22\xc4\xc8\xd5\x7b\x3d\x15\xa9\xfa\x62\x25\x84\x12\x0c\x3a\xb1\xa0\x28\x96\x72\xf5\xd2\x59\xaa\x84\x86\xa4\x9e\x64\xf8\xd6\x73\x99\xfe\x8e\x7c\x14\xea\x29\x8f\x16\xec\x4f\x4c\xd0\x1c\x86\xb9\x5a\x9a\x52\x7b\x41\x71\x76\x58\xb1\xa4\x7b\x3a\xdc\x21\xc6\x52\xf5\xc1\xd2\x5c\x41\xeb\x69\x4e\x27\x1f\x94\x66\x5a\xd3\x19\x93\xe1\xe4\xcd\xcc\x3d\x6b\xd1\xcd\xa6\xdb\xec\x66\xb3\xd9\x09\xef\x50\x52\x59\x07\x75\x34\x91\x43\x89\xda\xb3\x37\x9b\x93\xae\x5b\x09\x13\xc2\xf6\x86\x2b\xf1\x8b\xc3\xd8\x00\xf9\x8f\xe4\xfa\xa0\x0d\x19\x9f\x2a\x87\xd4\x1f\xc8\xf5\xd3\x22\x23\xbb\x1e\x56\x6d\x27\xc3\x07\xf7\x83\x3a\x31\x69\x88\x7b\x5a\x04\xd6\x2d\x83\x1d\xde\xff\xda\x6f\xc8\x17\x91\x6f\x79\xd6\x75\xbb\xe8\x9d\x65\x37\x6e\x26\x1a\x3e\xaf\x33\x0d\x41\x83\xcf\x59\xa6\xe5\x96\x87\xae\xcb\x09\x26\x72\xfd\xeb\x02\xb3\x9d\xfb\x52\xd3\xa6\x0f\x75\x68\x01\x13\x9e\x62\x8b\x7e\xc0\x21\xa0\x6c\xab\x6a\x6c\xf6\x6f\x26\xcd\x6e\xc2\xc7\x3e\x51\x69\x01\xac\x7b\xc8\x15\x83\x69\x31\x59\x95\x31\xc2\x25\x11\xef\xe8\x82\x14\x2b\x11\xd0\xc8\x20\xab\xd5\x82\x59\xc1\xaf\xeb\xba\x1a\xca\xf2\x00\x06\x14\x47\x80\x9d\x0c\x4f\x73\x24\xe0\xaa\x73\x69\xb1\x3e\xab\xb8\x7b\x22\xff\x53\x64\x37\x3e\xb1\xff\xef\x9e\xba\xff\x4e\x94\x4f\x2a\x6c\xba\x96\x70\x5f\xa6\x42\xaf\x59\x2c\x50\x35\x91\x5f\x10\x94\x12\x00\x05\xbe\xa9\xfc\x5e\xb6\xd6\x85\xf2\xe0\x82\xf0\x44\x96\x69\x48\x39\x7d\xfe\x4c\xc3\xaf\x8c\xf7\x62\xba\xbb\xae\xd0\x9e\x25\x5e\x28\xbc\x1f\xd9\x58\x92\xf0\xe9\xbd\x56\x40\x7c\x4b\x3f\xd1\x3f\x52\xb7\x6b\xd2\x0d\xe9\xa2\xc8\xae\x9b\x0f\x8a\xed\xac\x9d\xe4\x31\xfb\x25\x5c\x5a\x7d\x73\x58\x22\x54\x35\x66\xfc\xa9\x9e\x6e\x5a\x90\xc1\xbe\xbb\x73\x17\xae\xb9\x3d\x54\xd2\x2c\xbb\x19\x48\x2a\xe4\x8b\x05\x6a\x64\x48\x84\x47\x6c\xbf\x60\x21\xdb\xd5\x02\xc2\x99\x2f\x55\x98\xb6\x95\x7e\xaa\x4e\xe4\x88\xde\xaa\xaf\xa7\xfa\xa4\xed\xef\x47\xdf\x65\x4a\x7c\x7b\x8b\x9e\x4c\xfd\x43\xfa\x72\xd7\xca\x61\x42\xd9\xdd\x4d\x1c\xdc\xe3\x73\xc9\x91\x1f\x22\xa5\xdd\xd5\xc0\xee\xde\xda\x50\xd3\x61\x62\xdb\xfd\xcd\xec\xee\xb9\x76\x10\x0e\x13\xe3\xee\x6c\x61\x4f\x7f\x2d\xa2\xc5\x03\xe4\xb8\x7b\xda\xa8\xf5\x99\xf9\x76\x0b\xcb\xdb\x0b\x11\x3e\xb9\xbd\xc2\xad\xa4\x08\xbe\x71\x01\xbe\xc0\xd7\xf8\x1c\x5f\xe1\xe7\xf8\x23\x7e\x85\xdf\xe2\x77\xf8\xa5\x93\x32\xbc\x76\xee\x04\xf8\x36\x95\x54\x10\x2e\x78\x42\x05\xbe\x55\x25\x95\x6f\x51\x49\xe5\x75\x95\x54\x1e\x30\xd1\xbc\xc9\x44\x33\x4f\x25\xd5\x0e\xf6\xf1\xaf\x24\x12\x79\xfa\x1f\x91\xc8\xbf\xbb\x48\x44\x89\xce\x3f\x24\xeb\x0a\xbf\x49\x46\x91\x28\x96\x11\x8e\x72\x32\x95\x07\x96\xd3\xd9\x5c\xfe\xbd\xa2\x99\x98\x47\x38\x9a\x13\x48\x50\x31\x24\xfe\xee\xc9\x51\x8c\x49\x05\xad\x27\x6c\x37\xba\x30\x09\x65\x3d\x21\xaf\x27\xac\xea\x09\x93\x7a\x42\x56\x4f\x98\xd7\x13\x6e\x6e\x7b\x11\x7e\xcf\xb6\x8a\x6b\x66\x44\x74\xe6\x05\xa7\x3f\x17\x4c\xa4\xf9\x6b\xa7\x20\x13\xbc\xae\x4a\xae\xa7\x59\x6a\xb3\x89\xd2\x95\x28\x22\x50\x16\xbf\x24\x5c\xd0\xc9\xee\x26\xea\x65\x82\x06\x3c\xf5\xf3\xb6\xba\x5e\xb6\xe6\xc5\xce\x67\xca\x27\x93\x4e\x7d\x91\xc5\x5a\x0b\x5e\x93\x67\xd6\xf5\xb5\xd7\x88\x65\xb8\xbb\xa7\x47\x7e\x17\xe7\x92\x85\xa0\xc5\xaa\x7c\xa6\x4b\x74\x93\xe4\x83\x66\x84\xdb\xf2\xac\x33\x0e\xbe\x62\x83\x72\x32\x27\x72\xab\xc6\x91\x66\x08\x23\xa5\xb1\x68\x38\xe9\xe5\xea\x22\xa7\x93\xc7\xaf\x5f\x0c\x68\xf9\x6a\x49\x98\x13\xaa\xc8\xaf\xa4\x7b\xea\xf3\xe9\xc6\x63\xd3\xe3\xd7\x2f\x7c\x46\xdc\x4b\x8e\xc3\x46\xad\x7e\x59\x63\x9c\x09\xc1\x04\x20\x62\xcb\x5a\xc0\xae\x8d\xba\xbd\x12\x67\x9c\xaf\x68\x86\xd5\x70\x86\xde\xd0\xb0\x81\x97\x4a\x34\x5f\x58\x4f\x53\xd7\xd5\x5f\x55\x15\x7a\xae\x13\x46\xf2\x27\x7f\xe2\xd7\xc6\x88\xe3\xb5\x7d\xef\xbb\x50\xae\x46\x6d\xd6\xa5\xcb\xba\xae\x65\xc1\xb1\x3e\xaf\x25\xaa\x53\x7e\x55\x4b\xd5\x87\xfe\x79\x2d\x59\xe3\x80\x8f\xb5\x64\x8d\x12\xf0\xab\x5a\x7a\x21\xe6\x84\xc3\x13\x52\x19\xe1\xb7\xb5\x4c\x05\x9c\x08\xbf\xab\x77\xed\x6b\x83\x46\xf8\xa5\xce\x7e\x6c\x9c\xaf\xe8\xe5\xf9\x73\xed\x14\x38\x0b\x94\x7a\xc9\x3f\x34\x8e\x5c\xb3\x6c\xd3\xe6\xa3\x59\x46\x2e\x6f\x84\xc3\x30\x35\x30\x36\xaf\x88\x6f\xce\xd3\x14\x75\xbc\xc8\xb6\xd9\x1f\xd5\x8c\x7c\x64\x57\x5e\xab\xf5\x2d\x19\xe1\x0f\x5e\xae\x3d\x2e\xeb\xc2\xee\x3c\xf9\x0b\x83\x94\x49\x7d\xc3\x4f\xac\x24\x2c\x43\x4f\x1a\x84\x9d\x5e\xde\x50\xeb\x02\x99\xef\xca\x3f\x4f\x05\x7b\xc1\x68\xa0\xf6\xa9\x52\xea\xa7\xe8\x6e\x47\x30\x74\x50\xa8\xbc\xa0\x05\x69\x37\x6b\x5e\x39\xf3\x96\xa0\xb0\x2c\x76\x20\x81\xad\xa1\x15\x87\xd6\x5a\xf1\x8d\x2f\xbb\x2a\x98\xc2\x40\xdd\xd3\x40\xf0\xad\x92\x6b\xd3\xc2\x04\x19\x79\xab\x41\x55\x27\x77\x02\x13\xaa\xb4\xf8\x50\x22\x07\x23\xdc\xf3\xdd\x3d\xd6\x74\xac\xdb\x66\xd8\x6d\x9d\x62\xab\x76\x76\xc1\x9e\xca\xee\x5a\x26\x0b\xe9\xcd\xd9\xd6\x5b\xd9\x31\x34\x8b\xc7\x54\xbb\x16\x77\x25\x2a\x0a\xa2\xda\xa7\x4b\x1d\xc1\x89\x4c\xb5\x5e\x31\x20\x27\xf5\x13\x10\x92\xfa\xa9\x90\x90\x75\x7b\x3e\x57\xc1\x8d\x5a\x71\x45\x12\xe4\x36\xf1\x43\xd0\x88\xbd\x5f\xee\xb4\x68\xb8\xa6\x01\x7a\x13\x13\x2f\xb7\x4c\xad\xe6\x5d\xbc\xd7\xe3\x03\x91\x5e\xbc\x60\x19\xf9\x08\xd1\xbb\xb8\x11\x65\x56\x56\xa6\x5a\x6f\x49\xcd\xea\xcc\x21\x87\x98\x20\x87\x3a\x62\x82\x2a\xee\x2b\xfa\x5a\xcd\xff\x6d\x5b\x46\xd1\x08\x3b\xcd\xe3\x3c\xe4\x88\xf0\xcd\x8c\xdc\xf6\x40\x00\x7c\xa0\xc9\x4d\x6d\x46\xa3\x2e\xda\x06\x4e\x4f\xb6\xa4\x6f\x36\x3b\x07\xee\x9b\xf4\x81\xae\x6d\x93\x88\x1b\x32\x5c\x27\xcb\x86\x14\x6f\xdf\x61\xc3\x02\x6f\xdb\x9c\xc3\xb4\x52\x86\x92\xeb\xe0\x26\x1c\x96\x72\x0b\x2e\x52\x31\x99\xbf\x53\x33\xff\x8b\xdc\xfb\xc3\x3c\xe9\x9e\x56\xee\x58\xe2\x55\xe2\x9d\x5d\xcb\x51\x3b\x5a\xd1\x93\xd1\x0b\xac\xa5\xf4\x4d\x88\xe0\xcf\x3d\x47\x5c\x9b\x5c\xdb\xcc\xb0\xd9\x30\xb0\x31\x5d\x68\x58\x35\xbf\xe5\x32\xbf\xf6\x94\xd1\xe5\x64\x56\xa8\xaa\x27\xbb\xb8\x5a\x1d\x96\xac\x2d\xbe\x19\xf2\x16\x4a\x1c\x5f\x7a\xd9\xf5\xa9\x62\x8f\x98\x19\xd6\x9d\x4c\xa8\x83\xe3\x0a\xa0\x0a\x62\x6c\x0c\x4a\xf9\xd5\xeb\xc5\x96\x87\xd4\x49\x12\xab\x41\xf0\x6b\x89\xdd\xbc\xb4\xe3\x68\xf9\x31\x32\x0c\xa1\x57\x5c\xe2\xbe\xb3\x98\x29\x1c\xe8\x27\x42\x05\xcc\x34\x4a\xd4\x68\xab\x51\x1d\x72\x7b\xbd\x38\xf8\x36\xec\xa7\x61\x4e\x5b\xca\x9b\x76\x83\x74\xd3\x25\x8c\x25\x64\x61\xbd\x26\x00\x31\x43\x13\x0a\x45\x07\xe9\xdb\xa6\xa9\x50\x38\xd4\xd2\xd8\x3c\xcc\x09\xea\x99\xcb\x48\x14\x4b\x84\x5c\x74\x5d\x88\xed\x0d\x95\x50\xbd\xfd\x11\x1d\xf7\x7a\x71\xc4\x56\x72\xf5\xfc\x90\x23\x26\xf7\x4c\xe8\xee\x4a\x22\x2c\x1f\x4d\xb1\x2b\xa0\x06\x30\x6c\x2f\x16\x45\xc7\xae\x24\x72\xe1\xf8\x82\x31\xf5\xe5\x25\xfa\xc6\xc6\x5d\xa4\x08\x66\xeb\x6d\x1d\x1c\x7c\x8d\x20\x0e\x9c\x6d\x34\x38\x01\xee\xf2\x64\xee\x37\xae\x5f\xa4\xee\xb7\xbb\x4f\x61\xdf\x61\x77\xab\xaa\xc5\xc4\xde\xe5\xaa\x57\x1e\x7b\x97\xac\x5e\x49\xec\x5f\xb6\x66\x9d\x1a\x07\x20\x09\xe7\xb4\xef\xbe\x6d\x3d\x8d\xbb\xaf\xf0\x96\x13\xca\xaa\x16\x66\x56\x73\xaf\x6d\xfe\xfc\x4d\xe0\x17\xe5\x7d\x8b\x2b\xa6\x59\x47\x18\x1e\x12\x76\x49\x79\xc1\x80\x15\x70\x41\xa6\x46\xad\xe4\x7b\x34\x86\x58\x50\xed\x59\x21\xcf\xdd\x4e\xfe\x5f\x15\x7c\x31\x2f\x72\x12\x55\x15\xbe\x48\x9e\xc6\xb3\x40\x30\xee\xd8\x96\x11\xfb\x84\x2a\xdf\x10\xfd\xac\x42\xf8\xba\xde\xa1\xc7\x42\x8e\xe8\x67\xe8\xf0\xbc\xde\x21\x30\xa6\x77\x50\x67\xd7\x71\xdc\xae\xea\xed\x2a\xde\x76\x94\xde\xb5\xe1\xe7\xf5\x86\x35\x7b\x3c\x2a\xef\xda\xf2\xc7\x7a\xcb\x9a\xc3\x1e\xe5\x77\x6d\xf9\x55\x63\x1b\x69\x26\x7d\xb4\xba\x6b\xd3\x6f\xeb\x4d\x07\x7c\xfe\x68\xf2\xe9\xb6\x0c\x38\xa9\xc7\xef\xea\xfd\x19\xd1\xc1\x28\xfb\xe4\x16\x10\xe0\xd6\x43\x95\xcb\xaf\x65\x2f\x4a\xcc\x25\x87\xf1\xb2\xb1\x0b\x42\x49\xc5\x68\xfe\x09\x47\xd3\xa2\xeb\x53\x33\x93\xdd\x92\x21\x47\x5a\x5f\x1e\x05\xac\x03\x14\xd2\x9b\xd5\x10\x9e\xf9\x0f\x45\xb5\x96\x81\x73\x38\x4c\xe7\xbc\xa5\xde\xee\xb6\x15\xeb\x72\x98\x5a\x79\x5b\xc5\xdd\xad\x73\x5f\x65\xfe\xf2\x86\x3d\x70\x5f\x4d\x3e\xe8\x65\xe6\x3f\xa4\xfd\x7d\xef\x43\x5a\xbb\xf3\xbd\xbd\xae\xc0\x7e\x75\xef\x79\x6f\x1e\xb0\xd7\x57\xec\xe3\x3f\xda\xbd\xe7\x7d\x57\x3b\x18\xd1\x77\xc5\x25\xe1\x79\x7a\x2d\x7f\xce\xc5\x22\x7f\x97\xce\xe4\x4f\xdd\xaf\x36\x67\x8a\xbe\xf3\xee\x9d\xe8\xbb\xb9\xff\x91\x51\x1e\xe1\xa8\x97\x0a\x01\x7e\xc9\xbe\x33\xb8\x2c\xfa\xce\xbc\x4a\x7c\x67\x9e\x29\xbe\xd3\xcf\x16\xdf\xa9\x47\x8c\xef\x02\xdc\x14\x7d\xe7\x5e\x2a\xa3\xef\x0a\xf6\xbd\x64\x93\x5f\xf8\x1f\x60\x99\x23\xbf\x94\xb6\x8e\x0a\x0e\x64\xbf\x7f\x20\xe9\xe5\x21\x7e\x01\xef\x83\x5f\xc0\xfb\xf8\xf4\x4b\x3c\x32\xd8\x6a\x7c\x4b\x1f\x81\x27\x38\xca\xe8\x25\xfc\xfc\x02\x9f\xec\x71\x12\x64\x08\x89\x7e\xc1\xe9\x8c\x32\xa8\x75\xdf\xf3\x0e\x88\x47\xdf\xe0\x68\x91\x5e\x5f\x90\x3e\x65\x7d\x62\x44\x9d\x23\x39\x5e\xb9\x20\x4d\x29\x68\x7d\x35\xf5\xcc\x4e\xf0\xa8\x4d\x68\x3a\x1e\x63\x98\x37\xb8\xc0\xdc\xe9\x77\x33\x04\xd4\xfd\x1b\x38\xeb\x54\xff\x3b\x1c\x36\x66\xf3\x19\x58\x9c\x3e\xd8\xe7\x2e\xd1\x64\xbb\x9e\xbe\xc1\xd1\x6e\xe3\x80\xd1\xe9\x57\xf8\x14\x5b\xc8\x38\x31\x30\x34\x77\xfa\x95\x4c\x7e\x70\x8a\xdb\x89\x44\xb3\x7c\x9d\x9d\x6b\xdb\x8f\xa0\xfd\xaf\xc6\xde\xd8\xe4\xff\x0e\xa9\xf4\x65\xbd\x52\x64\xc7\x5a\x33\x2b\x84\x15\x94\x83\xfd\xca\xed\xe2\x31\x8e\xf6\xf4\x42\x59\x7f\xa9\xb7\x87\xf2\x47\xd9\xd6\xdb\x17\x63\x03\x8c\x08\x0e\xb4\x4c\xfb\x1a\x52\xbe\x06\x67\xab\x5f\xe0\xd1\x83\x6f\xb4\x4f\xcd\xfb\xf8\xf4\x0b\x37\x92\x13\xb7\x3b\x0e\x7a\x9b\xd4\x2d\x3c\xd0\xbb\xf1\xbe\xfe\x7b\xaa\xff\x9e\xa8\xbf\xbf\x1b\x8f\xcd\xa1\xb4\xbd\x3f\xf0\xf6\xb7\x32\x4b\xdc\x5a\x04\x0e\xb7\x15\xbe\xfb\x97\xc2\xfe\x56\x1b\x26\x6d\x3b\xab\x38\xeb\xc2\x46\xb1\x2f\xbc\x62\x5b\xed\xe5\x76\xd6\xf2\xac\x0a\x0f\x6a\xbd\x59\xea\xeb\x31\x1e\x45\x20\x71\xa4\xf2\x36\xd5\x6b\xf6\x15\xd4\x55\xbf\xbf\x34\x20\xfb\x6a\x6c\xf7\x1d\x2b\x8a\x00\xb8\x00\x51\xf3\xb9\xb5\x87\x02\x2c\x27\x77\x75\xf1\xf5\x1d\xba\x00\xcd\x1c\xa2\x90\xfe\xce\x4e\xbe\xb9\x6b\x27\xb9\xba\x49\x76\x76\xf2\xbb\x9b\x75\xa2\x70\xb8\xb9\x5f\x75\x23\x0f\xf6\x63\xe2\xfb\xc1\x61\x35\x7e\x69\x4f\x42\xc7\xb2\x26\x73\x27\xbe\xdc\x95\xad\x5b\xde\x8d\x7b\x77\xb8\xba\x3d\x75\xa8\x7e\x17\xa6\xbd\xbf\xff\x8e\x04\x44\x35\x2f\xf2\x4c\x9e\x8c\x10\xeb\x34\xb0\x4d\x46\xcb\xa5\xbe\x3b\x94\xf9\x9b\x8f\x31\x0e\xbc\x4d\x76\x3a\xdf\x9d\xa7\xa5\x44\x5c\x20\xe1\x51\x0e\x78\xe5\x3c\xb3\x3e\x85\xa8\x20\x80\xda\xfc\x68\xed\x51\x21\xc9\x91\xa9\xa4\x58\x24\x9e\x69\xf5\xd5\x7b\x57\x4a\xf3\x30\x07\xbe\xb7\x68\x7f\x9b\x3d\xdd\xaf\x4e\xce\xfe\xcf\xef\x9e\xfd\xfe\xf2\xbf\xbf\x7c\xd2\x4e\xce\x3a\x52\xc8\x12\xa0\x3d\x47\xc0\x79\x07\xae\x95\xc2\x31\x28\xf4\x8b\x1b\x91\x7f\xaa\xee\x03\x6f\x53\xde\xf7\x7e\xd7\x36\x6b\xd0\x7e\x80\x0d\xb4\xcf\xaf\xc8\x95\x69\xa3\x42\xb7\x13\x5a\x8a\xf4\xd1\x34\xc0\x48\xde\xd3\xf7\xa1\xe1\x31\x1e\xdd\x08\xad\x68\xa4\xf2\xa0\x89\x53\x6e\x8c\x51\x4e\xcd\x99\xba\x15\xea\x50\x14\xa7\x47\x12\xef\x1a\xdd\x01\x08\x6b\xdf\xf1\x76\x24\x76\xa4\x03\xb9\x96\xe9\xd4\x8b\xdd\x16\xe1\xc8\xff\x9d\x13\xb1\xcb\x0b\xf7\x27\x39\x79\x9f\xed\x78\xb7\x18\x90\xfe\xea\x27\xfb\xef\xff\xfb\xe6\xe7\x9f\x5f\xce\x8e\xb7\x30\xaa\xb7\x62\x46\x1b\xdc\xad\xc7\x53\x3a\x16\xb5\x60\x56\xd3\xdb\xb2\x8f\xee\xd3\xe9\x49\xcb\x2f\xad\x7b\xbe\x97\xed\x34\x4c\xaa\xfa\xf9\x24\x5f\xf1\xdd\x6c\xec\x76\x36\xf5\x20\x7e\x66\x27\xcb\xa2\x57\xdb\x1c\x21\x1c\xe2\x26\xc5\x71\xb4\x33\x0d\xba\xe6\x0e\xa6\xa1\xd9\x5a\xc8\x0b\x8c\xf6\xb5\x6c\xf9\x8d\x90\x0a\xdb\xde\xfe\x83\xdb\xb4\xff\x60\x57\xfb\xc0\xd3\x6a\x8a\x24\xe2\x05\xdc\xee\xca\xfa\x4e\xd3\x30\x91\x48\x2f\x4c\xd0\x97\x1a\xc3\xf5\x15\x06\xca\x43\xe9\xfa\x48\x04\x73\x12\x39\xac\x0e\xec\x93\x7b\x22\x8f\xd4\x22\x99\x6a\xe6\x7d\x1c\xaa\xd9\x23\x69\xf9\x2e\xeb\x03\x35\x3a\x80\x1d\x35\x0c\x67\xd8\x6c\xd8\x16\xf9\xb8\x4c\x59\x46\xea\xc3\x70\x32\x8f\xa0\xb4\x9d\x54\x63\x01\x1a\x53\x16\x7c\x45\xfc\x59\x7f\x0d\xc4\x73\x93\x37\x6a\x55\xe1\x6f\x65\x64\x3c\x73\x55\x4b\x3e\xd6\x2d\x45\xda\x2b\x6a\x6b\xad\xb0\x92\x3a\xb4\xed\x15\x3e\x90\xeb\xb6\x7e\x0c\x46\x68\xaf\xe4\x3b\x8d\x0c\xeb\x79\x46\x18\x3b\xaa\x82\x23\x84\x96\x8a\x12\xcd\xec\x1d\xe6\x76\x36\x64\x37\xab\xf3\xd5\x16\x4e\xa7\x09\xf0\xed\x3d\xec\xe6\x73\x76\xf6\xe0\x4f\x7c\x07\x27\x75\x72\xfb\x1e\xec\xda\xef\x68\xfe\xf4\x8e\x20\x3a\x84\xe3\xbc\x7f\xc7\x3e\x0e\x61\x38\x1f\xdc\xbe\x8f\xa9\xba\x97\x76\x36\xff\xc5\xed\x9b\xbf\x80\xbb\x6e\x67\xeb\x5f\xde\x71\xf0\x77\x94\x5d\xec\xef\xe0\xae\xa2\x8b\x7a\x0f\xad\xfc\xfe\x01\x92\xd7\x80\xbc\xfd\x06\x9f\x7e\x73\xf7\x10\x32\x93\x82\x4d\x52\x61\xf8\xd7\x15\xcb\x09\x10\x51\x75\xde\x95\x79\x0c\xec\x27\xa6\x70\xf5\x4d\xf7\xb9\x88\xdb\x7f\x2a\xa2\xf6\xfa\xea\xc5\xdf\x4f\xbe\x98\x7e\xd3\x4e\xd4\xa6\x4b\x1a\x72\xa8\x8e\x26\x0d\x9c\x1e\xcb\x84\xc0\x81\xa5\x4c\xd0\x37\xbf\x17\xf5\x33\xfa\x4e\x83\xf6\xa9\xe7\xea\xa6\x95\x5b\xfd\xda\xdb\xd2\x5f\x39\x2e\xd3\x92\x0e\xee\xdd\xd6\xdd\xf4\xd8\x13\xa0\xbe\x33\xfc\x43\xf4\x54\x3f\x79\x79\xd7\xbc\xd5\x00\x84\xfd\xe5\x68\x9c\xb6\x7c\x4b\x7c\xb4\xe6\xfa\x54\x46\x5b\xbe\x19\xd0\x38\x24\x09\xeb\x87\x55\xce\xf6\xfe\xef\xbc\x03\xaa\xb2\x15\xb6\x6a\x67\x8c\xd4\xc1\x74\xcc\x82\xcf\x55\xd4\x99\x0a\xc7\x7e\x34\xf8\xfe\xfa\x90\xc7\x8d\x41\xf8\xe5\x5c\x27\xbb\xcb\xd5\x5e\x79\x76\x96\xbd\x6c\xb6\x39\x1e\x87\x30\x30\xbf\x1f\x58\x70\xf9\x58\xeb\xdf\x17\x08\xf5\x1a\x6d\x5b\xe7\xab\xc3\xb7\xce\xc4\x3b\x09\x87\x42\xad\x7e\xa8\xeb\xa7\xde\xe7\x6c\xbd\x27\xbc\x08\x1f\xf4\xb6\x12\x6a\x7b\xfc\x93\xad\xcb\x97\x8d\x9c\xfb\x8e\x81\xd4\xa4\xdc\x0d\xd7\xb4\xb5\x9c\x0f\xb6\xdd\x25\x45\xed\x1a\x6f\x96\x00\x70\xef\x99\xbe\x7a\xd5\xda\x59\x46\x2d\xd3\x1e\x70\x93\x03\x1a\x0a\x96\xf7\xd0\xe3\xfd\xd5\x6d\x8e\xf7\x7f\x36\xea\x7f\x36\xea\x67\xd8\xa8\xf5\x5f\x07\x29\x22\x9c\xec\x5d\xc4\x1b\xe8\x6d\x34\xe4\xce\xdb\x5f\xa5\xb4\x54\xfa\x81\x7d\x4e\xfa\x06\xdf\xf7\x29\xf9\x5b\x3d\x98\x79\xd1\x25\xbd\xa6\xf6\x91\xf7\xed\x62\xf6\x1d\x71\x23\xa7\x70\xa6\xd3\xac\x60\xb9\x7d\x9a\x3a\x44\xca\x4d\xfe\x11\x61\xf3\xf0\x75\x45\xe5\x66\xf8\xa4\xbc\xc0\xad\x78\x80\xed\x11\x13\x3f\x1b\xe1\x5f\x0b\xa2\xd2\x12\x2f\x66\xbb\x3f\x4e\x88\xaf\x75\x51\x16\xf9\x4a\x10\x70\xbe\x36\x58\x5a\x2d\xe8\xe4\x5e\x9c\xae\x44\xb1\x51\x9e\xa6\xd1\x3d\xf0\xdd\x39\xa5\x1f\x49\x16\x96\x44\xf5\x98\x56\x17\x45\x76\xed\xb4\xd6\x13\xf2\x90\x26\x34\xf4\x34\xfa\x10\xd1\x69\xbc\x7d\x5c\x14\xe1\xb8\xcb\x37\x1b\xd8\x93\x74\x02\xbe\xc8\x5c\x77\xbd\x1e\x1b\x08\x52\x8a\x58\x0c\x8a\x4b\xc2\xa7\x79\x71\x75\xec\x7e\xbe\xf7\x7e\xff\xd5\xd8\x90\x75\xe8\x51\xdb\x20\x2b\x8f\x6d\x22\xce\xc8\x45\x9f\x58\xab\x22\xee\x65\xfd\x45\xeb\x45\x65\x35\x13\x2f\xed\x0e\x4a\x7b\x38\x38\xd8\xe8\xa5\x69\xac\x52\xec\x32\x84\x49\xb7\x1b\xc2\x94\x15\xd2\x41\x38\x72\x03\xd6\x65\x3a\x23\x7f\x7d\x35\x9d\x96\x44\xe0\x95\x9f\xf8\x5e\x27\xae\x25\x26\x1e\x4e\xb0\x28\x96\xc3\x0c\x03\x3e\x1d\xce\xb1\xc2\x99\xc3\x69\x95\xc0\xd6\x7a\x52\xac\x58\x46\xd9\xec\x69\x4e\x09\x13\x6f\x54\x9c\x8a\xb5\x2e\xb4\xd4\xb5\x16\x55\x22\xb6\x16\xbe\x4c\xea\x0e\x7e\x64\x26\x4c\x77\xb3\xd1\xc3\xa2\x8c\x69\x08\xe0\x59\xb2\xae\xf0\x45\xc2\xbd\xf0\x41\xf8\x7a\xeb\x56\xb9\x40\x76\x63\xa8\x70\x46\x11\x27\x39\x04\x00\x90\xbb\xe6\xba\xd7\x73\xdb\x5b\x7f\x9b\x58\x47\x17\xdb\x22\x19\x5d\x24\x17\x37\xef\x5b\x9e\x0d\xdb\x73\x92\x24\xd7\x9b\x4d\x70\xb0\xae\x8d\x01\xc1\xc5\x36\x38\x1d\x4d\xfa\x89\x32\xc6\xc1\x99\xfc\x25\x8a\x25\x18\x89\x15\xb0\x58\xea\x6c\x0f\x45\x95\x5c\x1c\x89\x5e\x2f\x9e\xf4\x13\xa1\x5d\xc7\xff\xa0\xab\x98\xef\x77\xc5\x12\x55\x8b\xa4\x38\x9b\x0f\x17\xb8\xe8\xf5\xe2\x99\xb6\xbc\x58\x20\x1d\xbe\x72\x72\x9c\xc3\x80\xc1\xdc\x3f\x49\x12\x63\xfa\xdf\x87\xab\x39\xf1\x42\x47\xbd\x4c\xc5\x7c\xb0\xa0\x2c\xbe\xc4\x93\xe3\x05\xea\xab\xef\xf4\x63\x7c\x82\x27\x08\x8b\x30\x7f\x1e\xe6\x1f\xcf\xfb\x0b\x74\xc4\x92\xc5\x23\xd2\xeb\x89\x47\xe4\x4c\x5f\xeb\xc3\xc5\x23\xd1\xeb\x91\x47\xe2\x4c\x91\x02\xc3\x74\xb3\x51\xbf\x94\xef\x5d\x33\xb2\xbe\x2a\xfe\xe9\x87\x13\xf6\xde\x18\x9e\x1c\x8e\xfa\x59\x45\x6e\x08\x67\x33\x63\xee\xd4\x8f\xcf\x8f\xe7\x68\x38\x53\x36\x2f\xd1\x44\x49\x5d\xa1\xcc\xf9\x71\x2c\x7b\xb9\x77\x7f\x78\x0e\xa0\xbe\x4a\xb2\xc6\xce\xd8\xb6\x9b\x82\x43\x82\x64\xbe\x41\xff\xe0\x45\x3a\x8e\x9c\xae\xf0\x66\x13\x5f\x1d\x27\x2b\x84\xa3\xf4\xa2\x50\xad\x52\x34\x03\x93\x9c\xab\xfe\xf2\xc8\x42\xf1\x82\xe4\xc5\x55\x90\x7b\x3c\x85\x5c\x0d\xce\xab\xe3\xe9\xf1\xf2\xdb\xd5\xb1\x7f\x08\xff\xa0\x0d\x71\x92\xec\xd1\xf2\x88\x26\x64\xb3\x11\x67\xae\xa1\xb2\xd7\xeb\x4a\x70\x9d\xe9\x9e\x87\x6e\x04\x32\x4b\x42\xd6\x94\x1e\x96\x9b\x4d\xec\xbe\x74\x41\x34\xd4\x09\xd8\x8c\xc8\x1f\xe6\xd9\x74\xd8\x5f\x22\xed\x87\xfa\x60\x2c\x0a\x4a\x2f\xc3\x59\x55\x1d\xed\xc4\xd4\x42\x9b\xcc\xde\x10\x49\x5b\xc4\x5a\xe0\x34\x69\xab\xa4\xf9\x87\x46\x4d\x33\x51\x35\xbc\x75\x55\x85\x67\xce\x38\xb3\xde\x8a\x65\x8f\x8a\xed\x48\x55\xc7\x58\x6b\x62\xfa\xe3\x06\x42\x3d\x4a\x5b\x8c\xa2\x12\xae\xcc\xfe\x0a\x85\x1a\x1e\x31\xbb\xfb\xeb\x27\xd1\xdb\xde\x30\xe2\xb5\xc2\xf8\x7c\xe7\xf5\xa0\xca\xb0\x1d\xb7\xc2\x51\xaa\xac\xd1\x12\x75\x09\xc5\xbc\xcf\xd0\xbd\xfb\xd5\x1e\x0c\xb0\x03\x5a\x98\xed\xec\xac\x15\x04\xd0\xfc\x23\x6d\x90\xd6\x06\x01\xef\xfc\xf7\x7a\x71\x6b\x2b\xba\x88\x31\xed\xf2\x4e\xe4\x59\x9c\x36\x6c\xcb\x12\x8a\x8b\xa4\xd8\x6c\xb6\xdf\x96\xa9\xb3\xe2\x4c\xfa\x85\xb6\x8b\x43\xc3\x96\xa6\xcc\xfe\x4a\x83\x7d\x5f\x27\x5e\xb8\xf2\x6d\x25\x77\x3d\x38\xb8\x42\xc9\xa3\x22\xb4\xf4\x38\xe3\x90\x77\x82\x0b\x34\x14\xb6\x98\x47\xf5\xb2\x03\xa9\x5e\xe7\xb4\xfb\xf3\x4b\xb9\x43\x1f\xe9\x10\x49\x1d\xcc\xb7\x85\x8b\xab\xe9\xbc\xe0\xc7\x10\xe2\x0d\x02\x36\x65\xf0\x94\x09\x01\xc9\xac\xf9\x27\xdf\x6c\xba\x7c\x74\x32\x06\x82\xf3\x3a\x5f\x95\x8a\xe0\x0c\x2b\x8c\x4e\xc6\xca\xb1\xe2\xbb\xeb\x25\xb1\x1e\xfd\xf5\x39\x84\x7b\x26\xbd\x28\xe3\xb6\x5a\x70\x3a\xfb\xf5\x01\xd8\x1c\x84\xe9\xfe\xfa\xef\xb7\xd6\x7f\x6f\x8d\x0a\xd9\xa3\xe4\xcb\xcd\x86\x3e\x4a\xbe\xac\x0e\x5c\xb0\x7a\xa0\xf6\xcf\xcf\xa2\xa8\xe0\x51\x6e\xf5\x4c\xb8\x29\x92\x9c\x98\x80\x53\xc2\xfc\x7c\x59\x64\x64\xc8\x92\x93\x0a\xdc\x06\x9c\xa8\x88\x96\xf7\xf5\x59\x24\xff\x95\x3c\xc0\xe2\xbf\x92\x07\xe8\xc8\xc4\xb6\xe2\x31\x3a\xb2\xe6\x4e\x54\x95\xa1\xb2\x0c\xb5\x37\x8a\xe9\xcd\xf6\x55\x55\xfe\xe8\x7e\xa0\x8c\xfc\x41\x1b\x0c\xab\xf4\x5a\x9c\xac\xda\xb6\x33\x91\x22\xd6\x61\xc0\xab\xa1\x9e\x80\x0d\x63\x65\x12\xde\xd7\x4b\xbc\x77\x25\x2a\xb5\x95\x30\x55\x64\xac\x17\xf0\x81\xa0\xcd\x46\x24\x49\x42\x1e\xa2\xb5\x64\x46\xd4\xaa\x01\x6e\x97\xbb\xc2\x51\xd3\x98\xda\x5c\x35\x0b\x9b\xad\x2f\x75\x5e\x8b\xcc\x75\x9c\xf4\x89\x4f\x44\xf2\x5a\xf8\xad\xe3\x84\xb5\x16\x78\xdf\xd2\xc0\xbb\x62\x69\xb3\x5d\x7d\xea\xe7\xd7\xc2\x3a\xfa\xe1\x4a\x21\x26\xe3\x05\x27\xe9\x87\x23\x92\xd8\x40\x14\x1c\x18\xb4\x5a\x58\xad\x24\x74\xe4\x87\x99\x8b\x6e\x16\x06\xfe\x55\x88\x2c\x19\x8d\x4d\x81\x34\x59\x6b\x35\xba\x21\xc3\x6e\x56\xc3\x13\x6c\x87\x38\x3c\xa9\x70\x99\xb0\x00\xc6\x2c\x80\x71\x6e\x73\x35\x8c\x59\x08\xe3\x55\x63\x37\xf4\x59\x40\xa8\x87\x3b\xa3\x6c\xc9\x7d\xdf\xac\x2a\xa1\x5b\xdb\x31\xb9\x9f\x59\xe1\xc9\x56\xc2\x92\xa1\xa3\x68\x4e\xb3\x8c\x30\x89\xd7\x26\x8e\x3b\x86\x2b\xcd\x75\x9e\xf8\x23\x39\x16\x58\x3c\x5a\xd5\x43\xb4\x89\x7e\x52\x4f\x1b\x8a\x6f\x57\xf5\x20\x70\x5e\x31\x3b\x15\x91\x9c\x6c\x19\xc7\x7b\x6f\x1c\xef\xc0\xaa\xdc\xfe\x3e\xe6\x98\x9b\x51\xd8\x99\x9f\x71\xdb\xbc\x83\x06\x37\xa3\x70\x41\xe1\xbc\x62\x76\x14\x5c\x8e\x42\xee\x39\x8d\x22\xc4\x66\xc3\xad\x90\x40\xef\x1a\x9f\xf9\xa3\xca\x97\xe0\x24\x15\xf1\x28\x1d\x23\x8b\x6b\x83\xd4\xca\xee\x44\x15\xeb\xd9\xca\x3e\xd2\xe4\xe4\x61\xfa\x2d\x35\xd1\x65\xd2\xe3\x63\x54\x24\x74\x94\x8e\x71\x31\xd0\x3b\xd1\x87\x7f\xe1\xef\x84\x7a\x09\x09\x99\xc2\x5f\x70\x32\xf8\xe1\xc5\x8f\xcf\xdf\x9e\xbf\x7e\xfe\xe6\xfc\xf5\xe3\xdf\x3f\x4f\xc8\xe0\xd9\xab\x97\xe7\xcf\x9e\xff\xf0\xee\x71\x33\x41\x96\x0d\x4b\xbc\xf8\xeb\xf3\x1f\x8c\xf4\xa2\x99\x11\xa6\x41\xed\xd3\xa3\x46\x0f\xf7\x8f\x1a\xa3\x78\xa0\x4f\xb9\x6e\xd9\x1e\x49\xae\xbc\xbf\x38\x9f\x0b\xe6\x54\x92\x86\xeb\x6b\x1d\x2c\x3d\xa2\x53\x9e\x2e\x48\x24\x49\x91\x92\x4f\x92\xe8\xff\x45\x98\x68\xea\x68\x69\x89\x20\xcb\x64\xdb\xbc\x4b\x5a\xd2\x0b\x9a\x53\x71\x9d\x98\xfd\x66\xf3\x14\x23\x1c\x9d\x2c\x3f\xba\x34\xed\x83\x20\x4c\xbc\x28\x78\x46\x78\xa2\x94\xf5\x6b\x1e\x8a\xfd\x90\xac\xc4\xdc\x3f\x40\x62\xa8\x57\xb6\xbf\xa8\x83\x68\x2a\x1d\x71\xe5\x0b\x07\x61\xe5\xc0\x93\xc4\xd1\xb7\xdd\xac\x98\x88\xeb\x25\xe9\xcc\xc5\x22\x7f\xf4\xad\xfe\x97\xa4\xd9\xa3\x6f\xef\xa9\x3f\xb2\xa7\x47\xdf\x96\xcb\x94\x3d\xfa\xeb\xb7\xf7\xe0\xef\xb7\xf7\x54\xe2\x3d\x28\x1e\xa9\xb8\xb2\x45\x49\x2c\x3b\xc0\x95\xe8\x4d\x9e\xe4\x29\xe5\xa5\x91\xb6\xc1\x48\x07\x4a\x8e\xa0\xb1\x54\x38\x21\x3f\x2a\x2c\x41\x2e\xfe\x72\x93\x8c\x98\xa4\xec\x5e\xaa\x80\xfb\xeb\xa8\x32\xe8\xd6\x94\xeb\xc4\x78\xbd\x28\x32\x92\x83\x3d\x39\x5e\xa6\xbc\xb4\xed\x0f\x49\xf2\x48\x55\x78\x2b\x38\x65\xb3\xc1\x24\x5d\x90\x9c\xfe\x4c\xe2\x68\x92\xb2\x7e\x74\x4c\x10\x96\xd7\xbb\x9a\x8a\x1c\xb3\x6f\xbd\x3d\x23\xc6\x21\x99\xdf\x26\xf8\xd9\xdf\x27\x0e\x96\x00\x9a\x68\xf4\xfb\x19\x21\xa4\xd7\xa0\x46\x8f\x98\x39\x24\x62\xb3\x21\xda\xc3\x9c\x19\x4c\x2c\x82\x50\xc0\xba\x68\xab\x3b\x8b\xbc\x28\x3e\xac\x96\x71\x54\x12\x7e\x49\x27\x64\x38\x49\x59\x84\x4c\x97\xdf\x2b\x77\x82\x16\x4c\x08\x55\x08\x0d\x38\x49\xb3\x57\x2c\xbf\x8e\xd1\x96\x4d\xa3\x69\xcc\x7b\xb2\xad\x5f\x47\x07\x06\x06\x60\x37\xce\x24\x65\xda\xfb\x0e\x65\xd0\x8d\x9e\xac\xe4\xc0\xd4\x44\xf5\xae\xd2\xfd\xc2\x53\x02\xa4\x68\x80\xc6\x23\x82\xc5\x58\xfb\x04\x5a\xeb\x3a\xaa\x54\x58\x89\x6a\xaf\x4a\x93\x94\xa9\xfd\x14\x13\x84\x0b\x97\xe6\xc1\x95\x81\x93\x21\x73\xc7\xd0\xa4\xa8\x6d\x40\x6a\x7c\x4b\xaa\x03\xab\x77\xaf\x8b\x41\xac\x73\xd3\x2c\xab\x67\x15\x98\x22\x5c\x8c\xe8\xb8\xc2\x99\x75\x8c\x17\xb8\xdc\xdc\xdd\xa4\x8d\x1a\x93\xf2\x19\x20\x8e\x12\x55\xb8\xad\x23\xd8\x87\x0a\xb0\xce\xab\x0d\x25\xa5\x72\x32\x68\xe0\x34\x24\x21\x8c\x44\x85\xf4\x76\x4d\xb3\xcc\xb6\xa5\xfc\x12\xea\x2a\x83\xe8\x58\xb9\x87\xc1\x11\x27\x7a\x0d\x22\x39\x88\x2d\x03\x37\x31\x85\x21\x77\x7b\x93\xca\x37\x8c\x1b\x4a\xb3\x0b\xed\xae\x4d\x55\x31\xee\x12\x74\x03\x16\x96\x78\xff\x94\xdb\xb7\x53\x75\x18\x4a\xf1\x8e\x0f\x2b\x44\xe8\x1e\xbb\xfd\x90\x7d\xee\x38\x62\xc0\x72\x27\xd6\x75\xad\x3b\x58\xfa\x78\x98\xed\xd5\xdd\xbe\x81\x82\x89\xb7\x84\x1c\x93\x53\x32\x9a\xed\xad\xf3\x35\x37\xd1\x27\x9e\xeb\xd6\x0a\x8f\xcd\xcd\xb7\x0e\xdd\x71\xcc\x88\x68\x73\x04\x62\xe6\x56\x55\x68\xdb\xe4\xac\xeb\x8e\xf2\x1e\xd8\xf3\xf6\x6d\x66\xdb\x9c\xb5\x9f\x21\xbe\x67\xc2\x01\xcd\x75\x1b\xaf\xce\x6e\x5c\xc0\x07\x87\x2b\xef\x02\x21\x0f\x38\x01\xc2\x66\x2d\xcb\xc7\xda\x35\x60\xdb\x4a\xeb\x40\xb7\x44\xc4\xd1\x32\x5f\x71\x68\x39\x7b\x77\xbd\x24\xf6\x24\x45\xe6\x50\x52\x52\x42\x20\x07\x2d\xb5\x5a\xbb\xa1\x0c\x79\xb5\x5b\x26\x25\x21\xaa\xb1\x78\xe3\x9e\x69\xdb\x35\x7e\x9a\x92\x87\xb0\x82\x2f\xa0\xaf\xbd\xfe\xe2\x3f\xcd\xf9\x31\x2e\xaf\xdf\xaa\x51\xdb\x33\x04\x58\x5f\x92\x30\xb5\x58\x38\xf6\x6e\xd2\x97\x30\xe6\xc9\xba\x32\x4e\xe9\x5a\xaf\xf2\x69\x3a\x11\x05\x87\xf2\x06\xeb\x0d\x25\xf1\xe3\x04\x25\xe0\xcf\x2d\xa9\x3b\xa2\xd3\x84\x95\xa8\x30\x47\x8a\xba\xa4\x09\xd3\xf4\x79\xec\x5d\x51\x95\xf2\x44\x6f\xc7\x83\xb5\xa0\x96\x26\x3e\x9e\x04\x0f\xb7\x90\x89\x8b\x84\x0e\x02\xc2\xcb\x36\xe5\x21\xd3\xa2\xc2\x93\xd4\xf7\xb9\xb7\x0e\xf1\x26\xf6\xaf\x5b\x73\xbf\x9a\xbb\x55\x37\xd8\x55\x88\xc7\x0e\x8f\x61\x0a\xcd\x41\xd3\xac\x10\xa1\x13\xfc\xae\xb9\x8e\x75\x72\x88\x9b\xb6\x6c\xb6\xfa\xa6\x69\xd9\x6f\x94\x4d\x95\x3f\xca\xcf\x87\x8f\xeb\xcf\xfd\x20\x22\x5a\xe6\x54\xc4\x51\x27\x42\x18\x62\xbe\x8b\x41\x49\xd9\x6c\x95\xa7\x9c\xfe\x4c\x50\xcc\x06\xcb\x62\x19\x23\xf0\xfd\x3e\x62\x9a\x3d\xed\x9f\x8e\x8f\x24\x35\x34\xc9\x57\x19\x29\xe3\x02\xde\xd9\xa1\x9c\x86\x68\xb8\x08\xed\xd4\xb5\x0e\xe0\x2f\x7b\x46\xb5\x55\xaa\x2c\xa3\x34\x8a\x8a\x69\x84\x23\xca\x22\x1c\x4d\x41\xdb\x43\x14\xf2\x27\x2f\x16\x46\xbb\x3b\x2d\xa3\x71\x0b\xd0\x41\x02\x5a\x12\xd1\x9f\x14\x2c\xa3\xda\xd0\xec\x32\xcd\x69\x06\xaa\x49\xe5\x3d\xfd\xbb\x90\xf8\xb4\x58\x10\x41\x17\xe4\x73\xca\x35\xdb\xa5\xd1\x74\x1a\x3f\xe6\x3c\xbd\x1e\xd0\x12\xfe\xc6\x16\x13\x8e\x4e\xc6\xc8\xde\x0f\x7e\xea\x60\x91\x2e\x63\x6e\x59\x2f\x1e\x56\xf1\x31\xba\x63\x55\xfc\xc8\x03\x2a\x74\x85\xda\x00\x65\xb2\x96\x94\x39\xd1\x91\xa6\xec\x8a\x46\x83\x08\x19\x8d\x10\x8b\x2c\xe2\x02\xab\xa8\xac\x0e\x21\x18\x71\x88\x79\x2f\xb3\xdb\x69\x10\x21\x2c\x99\x4c\xd8\x14\x98\x26\x5c\x2f\xb6\x4c\x2f\x83\x26\xa9\x3d\xd6\x65\xaf\x57\x0e\xe6\x69\xe9\x79\x43\x6a\xa6\xc4\x0c\x9d\x89\xa1\x6b\x20\xc5\x8e\x0b\x2d\xea\x65\x09\x3a\x0b\x47\x5f\xaf\x68\x62\x4a\x74\x85\x0a\x9b\x50\x02\x68\x36\x1b\xe2\x01\xaa\xaa\xda\xf8\x14\xbb\xbd\xfc\x2d\x65\x89\x2a\x93\xdb\x7a\xaf\x98\xcc\x96\xe2\x07\x5f\xd6\x23\x82\xf9\xd8\x45\x91\x80\x73\x6b\x9b\x41\x36\xfb\x36\x37\xba\x6d\xa6\xe5\x42\x0f\xae\x22\xcd\x26\xa9\x59\x48\x4c\xbf\x1b\x0b\xb6\x42\xac\x85\x66\xd3\xd9\x24\xeb\x1f\x0a\x97\x4f\x47\xa1\x2a\x76\xf6\xcf\x06\x33\xec\xa1\x39\x5b\x67\xa4\x30\xfd\x8c\x88\xfe\x82\x94\x65\x3a\x0b\x91\x8a\xd9\x04\x33\x85\x98\xa6\x74\xd6\xdc\x17\x2d\xcd\xb9\xa6\x0e\x28\x7c\x45\xc5\xbc\xaf\xc7\x5d\x36\xc9\x13\xb9\x6b\x3e\x3d\x32\x4b\x38\xf9\xc7\x8a\x72\xf2\xf7\x72\x40\x98\xe0\x94\x94\x58\x24\xdd\x13\x83\x66\x2c\x69\x02\x7e\xb8\x4d\x0c\x06\x5a\xbe\xe6\xa4\x24\x4c\xc4\xa9\x95\xac\xa6\x47\x4a\x33\x49\x95\x78\x1c\xd3\x98\x20\x34\x98\x52\x96\xc5\x24\x79\x44\x92\x24\x29\xd0\x51\xbd\x7a\x8e\x7a\xbd\xb8\x94\xd7\x17\x73\x34\x90\x1e\x91\x9a\x41\x9c\x23\x93\x83\x4b\x27\x9c\x4d\x93\x12\x97\xfa\xba\x59\x7f\x20\xd7\xa5\xa4\x11\x14\x40\x24\xe3\x6d\xc9\x57\xa5\x24\xf8\x9a\x93\x29\xfd\x78\x1c\xdd\xf3\x81\x6e\xd7\xe6\x48\xc9\x71\x15\xab\x76\x93\xcd\xa2\x0c\x27\xfb\x8b\x55\x2e\xe8\x32\x27\x7e\x89\xbb\x1e\x0d\xff\x36\x80\xe7\x0d\x1f\xa7\x3f\x8e\x09\x1a\x70\x22\x27\x2b\x61\x1b\x5d\x14\x45\x4e\x52\x88\xac\xaa\x0a\x88\xeb\x25\x79\x35\x8d\x09\xea\xf5\x1c\xf5\x75\x62\xb3\x41\xa8\x83\x23\x45\x13\x44\x68\xb3\x11\x77\x89\x0b\xe3\xcd\x42\xae\xc4\x90\x61\x46\xae\x40\x9f\x65\x48\x71\x91\x67\xea\x67\x81\xf5\xd4\x87\x29\xd6\x32\xd4\x61\xa9\x09\x5b\xb7\x69\x08\x5c\x92\x72\xbf\xc4\x36\x54\x13\x42\x70\x79\x99\x22\x39\x1a\xa4\xec\x3a\x16\xb0\x8b\x8a\x05\x2d\xad\x17\x79\x2d\xe9\x7a\xf3\xf6\xcf\xaf\x07\xf2\x52\xc8\xd1\x40\xcc\x09\xf3\x68\x59\x1e\xe7\xad\xc2\xab\x83\x4e\x70\x13\x19\x78\x94\x88\x2d\xf6\xd9\x63\x7b\x6b\x02\xab\xe1\x56\xda\x9e\x9f\x00\xd7\xeb\x02\x1c\xaf\x2f\xf2\x94\x7d\x18\xba\x93\xb1\x54\x47\x10\xeb\xbf\x5e\x0e\x94\xc4\xca\x3d\x2e\xf8\x34\xa4\x05\xfb\xbe\xe0\xc3\x98\x24\x51\x84\x1a\x42\xd7\x25\x15\x40\x1b\xc7\x41\x7a\x96\x96\x73\x22\x49\x51\xb9\x57\x15\x71\x71\x6f\x34\x38\xef\x8f\xef\xcd\x90\x47\x40\xee\xa5\xc1\x77\x2c\x8d\x28\xfa\xf2\x50\xfd\xa2\xb4\x9f\x79\xd1\x10\x1a\xd9\x38\x87\x8e\x03\x51\x58\x90\xe4\xb9\xc7\xf5\x90\x0e\x65\xa5\x48\xd9\x84\x14\xd3\xce\xb3\x54\x90\xcd\x26\x2a\xa0\xb2\xf3\x2b\x4d\x7a\xbd\x68\xa4\x12\xa1\xc8\x18\xd4\x6f\xcf\xc8\xb0\xe1\x81\x5a\xd6\x36\x25\x7f\x84\x3c\x5d\x96\x91\x2b\xa8\x1a\x13\x34\x8c\xa3\x12\x86\xe2\x82\x6e\xfa\x1d\xa8\x61\x8e\x41\x03\x62\xb3\xf1\x42\x74\xda\x4e\xe4\x1c\x8b\x9c\x6c\x36\xb1\xfe\x35\xb8\x4a\x39\x8b\xa3\xd7\x39\x49\x4b\xd2\x91\x50\xfd\x49\xf6\xa5\x18\xb2\x9f\x3a\xa2\xe8\xc0\xaf\x8e\xea\xb6\x94\xd4\x62\x50\x33\x86\x48\xa3\x9c\x17\x1c\x0d\x4a\x91\x4e\x3e\x20\x84\xed\x80\x7f\x4c\x7f\x44\x37\x3d\x96\x2e\xa5\x4f\x64\xb3\x9f\xe2\xb2\x0e\xee\xfe\xcf\x28\x1d\xf0\xda\xb5\xac\xb4\x87\x98\xed\x75\x17\xb5\x0e\x76\xc0\xd3\xab\x57\x2b\xb1\x5c\x09\x89\xb9\xbb\xa7\xb8\x48\x42\x11\x02\xc2\x69\x52\x0c\x1a\xc7\x37\x56\x3c\x00\x1b\xe8\x29\x1a\xa4\x69\x13\x40\x13\x55\x6e\x80\x61\xa9\x63\xcf\xe5\x0a\x53\x7f\x14\xc3\x55\xb2\xae\xaa\x04\x54\x60\x57\xb6\x01\x7d\x27\xd9\x04\xa5\x3c\xae\x27\xe7\x36\x93\x30\x7a\x5d\x92\x1f\x87\xc0\x7b\x0e\x1f\x3b\x0e\x60\x2a\x59\x6c\xf1\x52\xb5\x14\x0b\x1c\xe2\xb7\xcc\x4d\x65\x98\x56\x78\x85\x50\x25\xdb\x9c\x04\x1c\x49\xe9\x04\x0d\x67\xf1\xaa\x81\x21\x57\xb8\xd6\x0c\x32\xeb\x93\x63\x3d\x6d\x3d\x91\xe1\xc4\x4d\xbc\x42\xc3\xfa\xe0\x26\xfb\x07\x77\xb3\xcd\x1c\x12\x7e\xbf\x24\x3a\x4b\xe4\xcd\x01\x02\xa6\xe0\x0a\xd5\x33\x6b\xdc\x31\x08\x78\xaf\x9b\xcd\x8d\xa7\xcb\x5f\x18\x43\x5b\x62\xc1\xf0\xe6\x75\x0a\xe1\xb1\x87\x9d\x4d\xca\x88\x8c\x0f\x9f\x9a\x77\xf1\x03\x7e\xe1\x8b\xb4\x6e\x00\x72\x08\xc2\x69\x41\x62\x0d\xca\xe2\x97\x41\x44\xde\x16\x70\x84\x97\x4c\xb4\x06\x07\xf5\xbd\x50\xe2\x14\xe1\x95\x42\x3d\x86\xbc\x45\xda\x23\xbe\x05\x07\xc5\x04\xe7\x98\x59\x79\x9d\x24\x41\x57\x9b\x4d\xec\x09\x98\x51\xcc\xf0\x0a\x1d\xce\xaa\x7b\xa0\xaf\x5f\xfe\x77\x03\xf9\x0d\x0e\xe8\x0d\x68\x93\x5f\x8a\x8b\xf3\x8e\x30\x49\xea\xe1\xd5\xd7\x69\x9e\x17\x57\x4f\x80\x00\xec\x9e\x62\x98\xf8\xf7\x80\xd2\x86\xd1\xcb\x97\x2f\x3b\xcf\x0a\xdc\x79\xff\xfe\xfd\xfb\xa8\x42\x38\xe6\x98\xea\x55\xf7\xab\x15\x55\x42\xf0\xfa\x82\x4c\x0b\x4e\x86\x29\x2e\xd8\x2b\xfe\x44\x7d\x94\x38\x9d\x0a\xc2\x87\x39\x24\x3e\x86\xdf\x2b\x87\x49\x65\xbd\x2c\x89\x00\x18\xf2\x82\x28\x7a\x3d\xa5\x0c\x46\x43\x05\xcb\x79\x8d\x09\xb4\xe2\xa5\x78\x9a\xcc\x51\x8d\x82\xea\xf5\xba\xb4\xfc\x31\xfd\x31\x9e\xa2\xb3\xb4\xd7\x8b\xd3\x5a\xe5\x14\xe1\x49\x32\x91\x94\xd2\x93\xe7\xdf\xbf\x7a\xf3\x7c\xdc\x91\xfd\x77\x68\xd9\xf9\xf1\xd5\xbb\x8e\x9a\x45\x27\x3a\xa6\x72\x64\xea\x2b\xc2\xf3\x47\x49\x8a\xce\xc2\xad\xc9\xb1\xba\x10\x33\x7d\x21\x52\x7b\x2f\x38\x50\xb8\x99\x56\x68\x58\xb6\xb0\xb3\xa5\x1d\xcc\xab\x1f\x3b\xaf\xde\x74\xda\x86\x54\xb0\x4e\xc1\x6b\x03\x73\x30\x96\x83\x2b\x6f\x30\xb6\x60\x75\x82\xf1\xe5\xbd\x5e\x9c\xd7\xc6\x97\xdb\xf1\x3d\xfe\xfe\xdd\xf3\x37\xe1\xc0\x60\x6d\xcd\x88\xe0\x23\xc2\xf3\x6f\x93\xfc\x06\xa3\x31\xdb\x23\x18\x48\x37\x5e\xf5\x7a\xf1\xaa\x36\x94\x55\x0d\x54\x2d\x03\x52\x90\x0a\x86\x65\xf7\x9d\x1c\xda\x0a\xa1\x3a\x82\xd9\x03\xa9\xe6\x96\xad\xd0\x70\x77\x0b\x11\x2b\x44\x27\xed\x28\x04\x64\x1b\x33\xad\xfb\x0d\x01\x33\x36\x05\x15\x54\xef\xd8\x39\x9d\x2c\x3f\xb1\x7e\x16\xd1\xd1\x0d\x11\x22\xf9\x38\xc9\x57\xe5\xbf\xfe\x45\x44\x06\x39\x2d\x45\xaf\x07\x92\xed\x44\x7d\x59\x74\xc0\x2c\x7e\xea\x14\x8d\xeb\xc7\x83\x80\xbc\x7b\xe0\x3d\x3e\xbc\x7e\x8a\xe6\xf5\x53\xdc\xee\xfa\x51\x44\xe1\xbf\x38\xa8\xd5\x6b\x52\xd7\xd0\x4b\xcf\x17\x4b\x71\x1d\xfb\x81\x9a\x89\x95\xb9\xc5\xca\xb2\x00\xe2\xbb\xb1\x10\x79\xa7\x8d\x85\x30\xc0\x29\xcc\x2a\xd0\x60\x15\xd2\xfa\x2a\x50\x25\xb0\xbf\xf9\x2a\xc0\xd3\xc7\xff\xe9\x3d\xef\x41\xe0\xb3\xef\xf9\xed\xaa\x1a\x87\x11\x6b\x87\x96\x56\x42\xa9\xc9\x0d\x6a\x68\x61\xe6\xc1\xe5\xb5\x5c\xe5\xe0\xf2\x66\x43\xdf\x62\x5f\xde\x02\x7d\xdf\x8a\xfb\x68\xa1\x35\x5d\xb8\xfb\xcf\xa6\x30\x63\x76\xe2\x33\x58\xe0\x1b\x6b\xcd\xec\x6f\xf8\xb5\xdd\x0b\x07\x35\xce\x6f\xd4\xf8\x0f\x7a\xdb\x1c\xd4\x34\xbb\x51\xd3\x3f\xea\x1d\x76\x50\xd3\xf4\x46\x4d\x7f\xaf\x37\xe3\x41\x4d\x17\x37\x6a\xfa\x85\xdb\xb7\x07\xb5\x9e\xde\xa8\xf5\xe7\x1f\x6f\xd6\x7a\x79\xa3\xd6\x9f\x06\xcc\xe7\x41\x1d\xe4\xbb\x15\xb8\x0e\xc5\x3a\xbf\x1e\x13\xba\xeb\xb2\xfa\x55\x78\xcd\x55\x49\x9e\x10\x71\x45\x08\xd3\xf2\x32\xd5\x92\xc7\x57\xaa\x3b\x8c\xf9\x77\x98\x81\xa3\xbd\xc0\xf8\xee\x0b\x8c\xdf\xf6\x02\x33\x68\xff\xff\xdc\x82\xc5\xdb\xc4\x02\xea\x35\x40\x9e\x10\xf8\xfc\xb1\x60\x64\xd8\x3d\xad\x10\x1a\x38\xf6\x1f\xc8\x12\x9b\x9d\x74\x4f\x2c\x65\xb2\x73\x55\x0d\xb0\x3f\xfb\xaa\x3a\x72\xe1\x5f\x95\x06\xd4\x94\xf8\x91\xf7\x96\x6b\x5e\x6e\xce\x48\xb2\x36\x13\x1c\x92\x6a\x48\x7a\x3d\xab\xc8\x43\x06\x05\xeb\xf5\xec\x73\x8f\xab\x34\x28\xd8\x19\x4b\x46\xf2\xef\x78\x18\x6a\x2a\xc9\x34\x08\x25\x0a\xb5\x25\xac\x73\x22\x08\x54\xf1\x49\x7d\x4d\x36\x28\x82\x9f\xf5\x7a\x5d\x36\x28\x8b\x05\x89\x49\xf2\xa8\x1c\x91\xb1\x67\x5b\x2b\x3f\x7b\xbd\x7c\x44\xc6\x28\x64\x0b\x9a\xe2\x41\xb7\x50\x4d\xc6\xa0\x39\xf5\x15\x58\xeb\x86\x33\x5b\x9d\xad\x86\xa6\x1d\xb0\xda\x5e\xc1\x6b\xf7\x99\xfa\x93\x44\xf0\x78\x19\x0d\xf5\x5f\x9b\xdf\xeb\xc5\xa6\x84\xa9\x8b\x70\x9d\x05\x01\xc9\xfd\x8e\xed\xd7\x54\xfc\xe9\xcf\xc8\xc1\xd1\xd6\xec\x93\xbe\x50\x76\x05\x0e\x89\x6a\x2b\x8b\x3b\x29\xfd\xfc\x9e\x88\x44\x6c\x53\x90\x69\xd3\xfb\x11\xfb\x34\xb3\x77\xcc\xba\xa1\x21\x75\x27\x05\x07\x50\x7a\x02\xb1\x3d\x2c\x08\x2d\x9f\x3a\x85\x28\x27\xba\x17\xc9\x23\x88\xa2\x1b\x73\x7c\x47\x50\xbd\xfd\x6c\x2a\x52\x37\x54\x24\x3b\x0c\x70\x0d\x84\x63\x41\xc7\x24\xe8\xd8\x18\x53\xc0\xf0\x74\x1a\x9b\x47\x3d\x38\x76\x35\x38\x9e\x91\xa1\x4e\x56\xb0\x43\x31\x03\x21\x1e\xf7\x14\x29\xa0\x98\x52\x9a\x50\x9a\xc9\x62\xe0\xb7\x81\xa1\x78\x4d\xd7\x4a\xb6\x23\x19\x0d\xa4\x85\x66\x87\x57\x18\xb6\xf4\xae\x7f\x9b\x70\xbb\x31\x41\x3b\x86\xc3\xf0\xba\xda\xd2\xb1\xce\xba\x9b\x1e\x1d\x6b\xdf\x24\xb4\x75\x93\x30\x7f\x93\xd0\x5d\x9b\xe4\x40\xdd\xb9\xa6\xde\xa1\xd1\x48\xe1\x33\xd2\xcf\x08\x59\x6e\x2d\x42\xcb\xbe\xd6\x30\xd8\x4f\x62\xc0\x8c\x0c\xba\xc7\x2b\x3c\xc1\x19\x9e\xe3\x29\x5e\xba\x7d\xb6\x70\x55\x79\xaf\xb7\x0d\xa4\x22\xa0\xb8\xf9\xc0\x7d\xe0\x20\xd2\x29\x1f\xf8\x9f\x2e\xce\xa9\xb2\x9c\x84\x34\xb5\x1e\xdc\x33\x52\xe0\x67\xc1\x97\xd2\xb1\x60\x26\x1e\x79\x85\x2a\x3b\xd8\xcb\x50\xeb\xbb\x23\x3a\x94\x75\xc8\xd9\x8e\x51\xeb\xde\x6a\xf1\x57\xeb\xd1\x59\xbd\x78\xac\x15\x1a\x92\x91\x18\x4b\x24\xe2\xfa\x9d\x39\x9e\x5b\x39\xab\x28\x92\xb5\x51\x53\xed\xf8\x12\x35\x86\x06\xd3\x82\x3f\x4f\x27\xf3\x38\xb8\x2c\x8a\x11\x19\x27\x6c\x44\x40\x29\xba\xf0\xc0\x97\x74\xbb\xfe\xa7\x32\x57\xb6\x63\x83\xdc\x00\xa2\x71\x04\x33\x8a\x28\xeb\x14\x9b\x4d\xe1\xc3\x4d\xde\xfb\x85\x85\xb3\x24\xe4\x70\x91\xf0\x41\x99\x83\x59\xdc\x80\x93\x4b\xc2\x4b\xf5\x2b\x5b\x4d\x88\x37\x40\xee\x94\x56\x3b\x06\x2d\x6d\x36\xbc\x42\xb8\x40\x98\x7a\x24\x49\xd0\x1f\x74\x07\xa3\x09\xd3\xcf\x8a\xe6\x6a\x52\xb3\x9a\x38\xc8\xac\xc5\x8d\x4f\x9a\x3d\x6c\x5f\xda\x02\xd4\xdf\x57\x79\x8e\x70\x71\x1b\x54\x70\xb1\xa2\x79\xf6\x4a\xab\xb0\x95\xc9\x75\x80\x1d\x9e\x63\xe2\x70\x4e\xa0\x1e\x9e\x5c\x80\xd5\x06\x66\x80\x97\x8d\xe7\x82\xe7\xce\x84\xdc\xc0\x91\x5c\x75\x5e\xf3\xe2\xe3\x75\x4c\xf1\x5a\xf2\xa7\x70\x4f\xca\x7b\x4e\x29\x82\x18\x8d\xa2\x18\x21\x5c\xea\x6c\xcc\x51\xf2\x28\x56\x37\xa1\x5f\x02\x73\x84\xbb\x27\xa8\x42\xa1\xc3\x3b\xc0\x54\x6e\x94\x81\x12\xd9\x45\x12\xa3\xe4\x51\xd7\x33\xe0\xbe\x36\x67\x47\x15\x60\x46\xc9\x49\x1b\x85\x00\x24\xbd\x58\xf5\xa0\xdc\xc1\x46\x54\xee\xeb\x71\xc2\x63\x82\xe1\xa7\x9b\x9f\x3b\x1d\xe7\x6d\x4a\xed\x36\xa9\x1b\x77\xc9\x66\xd3\x8d\x03\x55\x29\xdf\x18\x18\xa0\xb4\xd9\xb4\xe4\x03\x4d\x0b\xd9\x08\x55\xf2\x06\x39\x8f\x9d\x4e\x08\xc1\x91\xf1\x8a\x8c\xd0\x90\x54\xca\x5f\x57\x6c\x10\xf8\xb9\xe0\xe9\xe4\x03\xc9\x70\x51\x4f\x48\xeb\x09\x46\xf7\xfd\x3c\x23\x4b\xc2\x32\xc2\xc4\x1f\xc9\xf5\xd3\x62\xb1\x4c\x05\xce\x77\xe4\xad\x76\xe4\x4d\x76\xe4\x65\xc9\x24\x4f\xcb\xb2\xa3\xcc\x85\xca\x8e\x18\x3c\x59\x4d\xa7\x84\x93\xcc\x2e\xa6\x5a\x24\xbe\x9a\x88\x02\x6c\xb1\x08\x5a\x5b\xbb\x2c\x82\xf0\x42\x1b\x42\x9e\xeb\x1d\x1b\x61\x15\x8f\xdf\xcb\x31\x3c\xcf\xb4\x9e\x61\xe3\x08\x2f\x75\xce\xa5\xce\x31\xc4\x43\xe4\xbd\xda\xd9\x4c\x88\x15\xfb\x27\x76\xc5\xd3\x25\x2c\x48\x84\xcf\x5d\x26\xe8\x23\xc9\x2b\xcb\xae\x0e\xaa\xca\x74\x4a\x7e\x0f\xcb\x24\x9a\xd6\xca\x90\x0a\x45\xde\x92\x9a\x25\x4f\xc7\x5a\x62\x1a\x53\x9e\x99\xdc\x8f\x25\x90\x18\x9e\xf0\x48\x42\x63\xa0\x93\x75\x91\x17\xec\xb2\xbd\x90\xce\xd0\xc5\x5e\x73\x5a\x0a\x79\x79\x37\xca\x99\x1c\x5d\xf0\x19\x95\x48\xa4\x51\x0a\x92\xa1\x88\x5c\x59\xca\x66\xcf\x52\x91\xc6\xc6\xc5\x9d\x32\xa2\xd3\x40\xc6\xc2\x7c\xab\x75\xc2\xac\xc6\xa8\x87\x67\xd0\x05\x9f\x7e\x6d\x34\x0f\x41\xd3\x17\x61\x82\xd7\x1a\xa0\xce\x5a\x02\x6b\xf8\x0d\x2d\xc4\x2a\xcb\xe3\x05\x9d\x30\x79\x11\x1e\x54\xbd\x4a\xb3\x0c\x34\xf9\x82\x65\x53\x13\x0f\xb2\xf4\x4a\xb3\x42\xd0\xe9\xb5\xc1\xb7\x6a\xf7\xaa\x3d\x41\x10\x16\xd5\x72\x55\xce\xa1\x4e\x19\x13\x3c\x18\x0c\x8c\xcf\x08\x7b\x2b\x3b\x1e\x7d\xc8\xaa\x44\xf5\xd3\xac\x14\xaa\xf3\xec\xec\xb3\xbd\xe5\xea\xdc\x19\xf6\x5e\xc7\xa0\xc8\x6c\xe8\x10\xe1\xb4\x98\x79\xa5\x0f\xd9\xe0\xd0\xe2\x07\x40\xa1\x3a\x57\xb9\x7f\xa6\x5c\xac\xd2\xdc\xb3\x2e\x26\x68\x1d\xc7\x44\x4f\x7a\x47\x29\xb4\xd9\x8c\xc6\x8e\xac\xb0\x8e\x11\x76\xf5\x8a\xaa\x73\xc5\xf9\xff\x91\x00\xda\x4f\xa2\xc8\x79\x3b\xd2\x3d\x06\x05\x0e\x86\xb1\x40\x98\x57\xe4\x23\x99\x28\x1b\x61\xd8\xf3\x60\x3e\x20\xb7\xb9\x3e\x8e\xda\xc8\x5a\x9f\x14\xa3\x4a\x18\x1e\x0c\x16\x1e\x8c\x23\x92\x5c\xc7\xca\x3e\xdc\xdc\xc2\xd6\x47\x81\x44\x2d\xc6\x8e\x5d\x57\xaf\x9d\x22\x21\x59\x82\xc3\x36\x78\x60\x33\x6f\xbc\xb1\xea\x38\x13\x89\xb2\x1e\xaf\x2a\x3c\x4f\x66\x71\xe6\x47\x7a\x77\x88\x76\x44\x6f\x1d\xdd\x5f\x19\x21\xe0\x69\xa3\x71\xab\xe5\x5a\xdc\xb5\xed\x65\x73\xe0\x36\x6c\x7c\x7a\xd7\xc6\x6b\x4d\xeb\xd5\x8e\xf0\xa8\xdc\x1f\x37\xbf\xb5\x26\xc2\x59\x10\x34\xbf\x5e\x4a\xe3\xed\x08\x8f\xf2\x1b\xf7\x60\xea\xee\xeb\xc3\xe0\xfc\x08\x8f\x56\x37\xee\xc4\x56\xde\xd7\x0b\x9c\x84\x08\x8f\x26\x37\xee\x42\xd5\xac\xb5\x9f\x79\x26\x85\xcf\x9b\x54\x29\xa8\x02\x3b\xcb\x33\x8f\x22\xf5\x92\x5b\x29\xd6\x2b\x9b\x5a\x35\xe8\xcb\x2b\x8f\x07\x06\x02\x26\x20\x52\x7e\x75\xd2\x78\xa7\x70\xaf\xce\x3a\xff\xb2\x4a\xab\x66\xde\xab\x3c\xef\x26\x09\xe9\xf5\xda\x6c\x04\x6a\x14\xb2\x32\x26\x08\x92\xde\x90\xd9\xf3\x8f\x4b\xd4\xeb\x75\xeb\x2a\xb0\x07\xcc\xdd\x97\x2c\x7c\x3a\xf3\xa5\x5d\x74\x7f\xb7\x75\xa2\x15\x58\x2e\x75\x9b\x4e\xce\x0f\xb5\xb9\xb0\xa6\x0e\x0a\x1c\xca\x42\xc2\x33\x9c\x70\x26\x16\xb2\xab\xca\x13\xa8\xc1\x54\x04\xbf\x0e\xa5\x07\xd5\x24\x15\x93\x79\xec\x4c\xc9\x4f\x2b\x57\x89\xd6\xcc\xcc\xeb\xb2\x3b\xe3\xb7\xc9\x51\xbb\x91\x77\x28\x06\x53\x4a\xf2\xac\x8c\xdc\xce\xf7\x97\xf3\x65\xba\xec\xf5\xd8\x60\x9e\x96\xb1\x30\x3e\xc8\x40\x76\x0f\x03\x95\x1b\xa2\x01\x92\xd0\x94\x56\x03\x06\x0a\x37\x8a\x1a\x63\xef\x17\xe5\x73\x8b\xe3\x5d\x05\xe4\x01\xa6\x88\x09\x2e\x70\xb9\x63\x29\x3b\xa1\xd2\x50\x15\x17\x8e\x1e\xc9\xd5\x23\x82\x04\x54\x8e\x4b\x04\xc8\xa7\x1c\xe8\xab\xd7\x11\x1d\x9e\x6b\x3f\xad\xba\xd0\xda\x38\x77\x0d\xa7\xfa\xe9\xa9\x4c\xf8\x28\x1d\x1f\x95\x2d\x73\x6c\x03\x47\x89\xb5\x84\x04\xf5\x7a\xa5\x0f\x6e\x23\x44\x3c\xa3\xa3\xd1\x60\x30\x28\x70\x3a\x76\xf6\xcf\xe3\x44\xbb\x1a\x18\x96\x2d\x9b\xb6\xec\xf5\x48\x5c\xc2\xb0\x4d\x55\x54\x21\x4c\xab\xb8\xc0\x25\x5e\x57\x78\x34\x06\xfb\x8b\xda\x4c\xd4\xc3\xe7\xa3\x13\x04\x5c\xb5\xdc\x6c\xdc\x99\x18\xf1\x51\x3e\x3e\xb2\x80\x02\xe8\x09\x89\xc4\xc0\xbd\x33\xa8\x61\xc9\x34\xb4\xd9\x74\x79\x5c\x8c\xf2\x31\xda\x6c\xe4\x9f\x96\x09\x19\x13\x0c\x99\x6d\x8d\x2f\x7a\x3d\xde\x3a\xf9\xb0\x47\xae\x26\x8d\x86\x61\x32\x88\x5c\xad\x5f\x04\x23\x52\xe6\x08\x55\x61\xb9\x54\xaf\xb4\xda\xf9\x39\xc2\xee\xb3\x80\x4f\xb0\x96\xf0\x05\x69\xa9\xe7\xf6\xc2\x9e\x1a\x77\x7e\x36\x9b\x56\x87\x58\x64\x24\xc6\x15\xe6\xa6\xef\xc4\xfe\x0a\xcb\x7b\x4c\xa4\x12\xe1\x69\x9f\x9c\x49\xf8\x46\x26\x60\xad\xba\x31\x4b\x92\x5a\x0e\x41\xee\x45\x02\xec\x69\xdc\x97\x87\x36\x0a\xc3\x98\x2a\xc4\x41\xd1\x5a\xcc\x79\x71\xd5\xb1\x66\x50\x71\xf4\x27\x26\x8f\x5b\x47\x14\x9d\x9f\x00\xef\x4a\x12\xf6\xa7\xce\x15\x15\xf3\xce\x75\xb1\xe2\x9d\x2c\x15\xe9\xa0\xf3\x98\x13\xf9\xd9\x11\xfc\x9a\xb2\x99\x2c\x0d\x85\x3b\xe2\xaa\xd0\x71\x67\x65\xb9\x8e\xda\x8d\xe5\x59\x47\x5b\x68\x4d\x69\x4e\x3a\x29\xeb\xd0\xb2\x5c\x11\xd5\x68\x0d\xe5\x0f\x22\x54\xdd\xc5\xea\x33\x6d\xb9\x4e\x72\xda\x4f\x97\xcb\xfe\x25\xe1\x25\x2d\x02\xd7\x37\x7d\xed\xa4\xe4\x97\xf5\xd3\x60\x91\x6f\xf7\xf4\xa8\x8e\xb8\x90\x3a\x40\xbd\x1e\xe9\xf5\x78\x68\x85\x65\xae\x14\x49\xbf\xd0\x29\x38\x30\x11\x03\x4e\x66\xb4\x14\x84\xc7\x54\x92\x13\x2c\xe9\x9e\x54\xd6\xdd\x85\xb1\xcb\xcd\xe9\x05\x4f\x39\x25\xe5\x7e\xd8\xa8\x0b\x97\x93\x19\xf9\xf8\xd9\xcc\x63\x8e\xc8\x40\x77\xa7\xae\xc1\xe4\xde\xdf\xb2\xe3\xd1\x60\x6c\xff\xbd\x87\x6d\x89\xe7\x20\x67\x22\xd9\x96\x92\xfd\x51\xda\xff\x79\xfc\x5f\xb1\xfa\x42\x67\xb2\x66\x39\x4f\x4d\x69\x99\xfb\xb7\x6c\xbc\xfe\xa6\xfa\xcd\xbd\xf6\xb9\x4f\xf3\xb4\x9c\xfb\x71\x58\x20\xc1\x98\xdb\xb5\xbe\x92\xd9\x5a\xad\x71\x5c\xc2\xfa\xbb\xa9\x11\x78\x04\xf5\x95\xe1\xfc\x67\x0e\xbc\xc0\x97\x78\x86\x2f\xf0\x35\x3e\x77\x74\xcb\xd5\xbf\xd2\x93\xc7\xf3\x5f\xe9\xc9\xe3\xe3\x7f\x9e\x3c\xfe\xed\x9e\x3c\xda\xcc\xcd\xd7\x8c\x7c\x14\xc3\x57\x78\x22\x29\x85\x7c\xf8\xb6\xd2\xf8\x8e\xaf\x18\xdc\x9e\xef\x12\xeb\x5e\xca\xb8\xa2\x74\xde\x22\x23\x38\xa9\x83\x72\x5e\x5c\xbd\xe6\xc5\x8c\x93\xb2\x04\x1f\x33\xb5\xf2\xac\x10\x71\x44\x3e\x52\x41\xd9\x0c\x5c\x1a\xd5\xf2\x53\x96\xc5\x51\xd0\x08\x8e\x58\x21\x9e\xdb\x1a\xc5\xbe\x11\xb8\xc6\xd3\x7a\xd1\x8b\xa2\xc8\xe3\xc8\xe0\x19\xcf\xd5\x8d\xf5\xac\x19\x69\x4c\x03\xee\x96\x23\x64\x65\xfe\xae\x80\xea\x44\xa8\x70\x74\x7e\x69\xe5\x7c\x22\xc2\xd1\xb9\x86\xed\xcb\x66\x26\xb2\x0f\x05\xad\x0d\x22\xfb\x56\x50\xcf\x5e\xfb\x20\xc1\x82\x2e\x48\xb1\x12\x55\x84\x70\x66\x1e\x17\x54\x8c\x52\x3c\xaf\x7d\x4f\x6b\xdf\xcb\xda\xf7\xa2\xf6\x00\xa1\x72\x6d\x60\xd7\x3d\x8f\x0f\xcf\xb5\xd4\x5f\x87\xdf\x89\x70\x14\xb9\xc4\x3c\xbd\x86\xf8\xc6\x4e\xf7\xc6\x66\xc9\xce\x2f\x49\x84\xbb\xa7\x2e\x2d\x80\x3c\x8e\x2e\x8a\x42\x94\x82\xa7\xcb\x08\xe1\x2b\x5d\x24\xdc\x17\x97\xfa\xd1\xc2\xe4\x7a\xdb\x04\xcf\x6a\x79\x7e\xcd\x27\x29\x8f\xf0\x45\xad\x80\xd9\x35\xf8\xba\x96\x31\x4f\xcb\x27\x79\x31\xf9\x10\xe1\x73\x95\x03\xe2\xfe\xed\x6b\x6c\x1f\x09\xa2\x69\xb1\x62\x4a\xee\x0c\x2c\xe8\x9c\x96\x03\x7f\x8e\x67\x51\x9a\x13\x2e\xfa\x17\xc5\xc7\x4e\x34\x54\x1f\x1d\x95\x14\x41\x1f\xf0\xfb\xdd\xf5\x92\xc4\xce\xbf\x32\xb4\xe2\x76\xcc\x66\x13\x45\x1a\x11\xff\xf4\x9b\x75\xa3\x0b\x35\xa2\xcd\x46\x89\x38\xb7\x0e\xb9\xfa\xcd\x9a\x54\x3f\x41\x9f\xd0\xb4\xee\x33\x10\x03\xd7\x89\xa5\x96\x81\x28\xc8\x2c\x35\x94\x9f\xad\x78\xaa\x29\x30\x79\x65\x10\x2c\xfc\x28\x0e\xfe\x4c\xfc\xf8\x0d\x64\xb3\xe9\x92\x00\x89\xb8\x20\x10\x86\x7f\xb4\x8d\x88\x2d\x8d\x88\x33\xf5\x73\x28\x06\xfa\xa4\xa0\xcd\xe6\xe4\xa8\x6d\x3e\x73\xb1\xc8\xdf\xa6\x53\x12\xff\x24\x78\xca\x94\x23\xea\x7e\xa6\x87\x3e\xec\xfc\x66\xcd\xab\x45\xf9\x13\xaa\xce\x21\x60\xfa\x73\x26\x3c\x7f\xa4\xce\xbd\x8d\x37\x0c\x2d\xf0\x56\x90\xd1\xd1\x2c\xe5\xae\x8c\x4d\x1b\x3f\x90\xf4\x92\xec\x6b\xa3\xeb\x35\xa2\x77\x66\xd0\x30\xe8\x68\x9a\x66\xb5\xb3\xbd\xef\x65\x8e\xb1\x5d\xd7\x1e\x1c\xa1\x74\x50\x53\x17\xb6\xe5\xaa\x82\x3d\xcd\xe9\xe4\x83\x5b\xa6\x87\xde\x22\xdd\x00\xd2\xba\xe1\x57\xaa\xb9\xda\x9a\x12\x03\x97\xf6\xc1\xc2\x20\xc0\xfb\xf5\x7a\x77\xa9\x67\x34\x7b\xc1\x4a\xc2\x45\xe0\xa1\x43\x9d\xd4\x18\x25\x8f\x9c\xbb\xda\x3a\xa2\x39\x41\x95\x71\x4b\xe4\x72\xf5\xa3\xdd\x5b\x22\xb1\x94\xe7\xf8\xd5\xbc\x8f\xba\x45\xff\x03\xb8\x00\xe2\x91\x7e\x7b\x70\x19\xdb\x6a\xc1\x32\xb7\xd5\x82\x0c\xf0\xfb\x9c\x65\x10\xd9\xf4\x07\xc9\x6f\x30\xc2\xe3\x20\xf0\x7f\xbd\x1f\xdd\xd4\x8e\x8a\x3a\x9a\x7f\xbd\x2b\x53\xb1\x2a\xd8\x5f\x68\x9e\x3f\xd3\x9e\x19\x09\x5a\x13\xed\x51\xf7\x76\xa3\xd8\x5e\x77\xcf\x40\xf0\x5b\xed\x90\xdb\x02\xdf\xbc\xe8\xb4\xaf\x7a\x85\x2f\x93\x8f\xf1\xc2\x17\x85\x87\xf7\xc0\x88\xdf\xf9\x35\xa3\xde\x81\x7f\x95\x8c\xd8\x5d\x9b\xbf\xd8\x35\x7e\xb8\x8d\xee\xfe\x92\x74\x5d\xef\xc3\x5e\x68\x77\x7f\x49\x3a\xaf\xb7\xed\xee\xc4\xbb\xbf\x24\xd5\x9a\xde\x41\x3c\x1d\xf4\xb8\x74\x68\x63\x08\x2f\xfc\x57\x94\xda\x28\xec\xd5\x7b\xd8\x7b\xd3\x96\xba\xbb\xfb\xb0\x57\xed\x61\xcf\x4d\x5b\xea\xee\xee\xa3\x7e\x19\x1f\xf6\xec\xb4\xbb\x89\xdd\x3d\xea\xeb\x24\xc2\xa3\xec\x86\x1d\x99\x9a\xfb\xdb\x2f\x4a\x09\xb3\xf9\x2d\xda\x97\x35\xf7\xb5\x6f\xef\x98\x08\x8f\xa6\x37\xee\xc3\xd5\xde\xd7\x8f\x87\x8d\x23\x3c\x5a\xde\xb8\x27\xbf\x7e\xad\xaf\x85\xaf\xa3\xfa\x6e\x97\xa4\x46\xfd\xdb\x7c\x09\x6b\x4a\x67\x74\x34\x5c\x13\x0f\xe1\x40\x49\xcc\x51\xf0\xb4\xf0\x0b\x0a\x2f\xee\xce\x12\x6b\x83\x67\xae\x9c\xee\xce\x56\x34\xfb\xbe\xe0\xc8\x72\x88\x91\x1f\x29\x01\xb3\x90\x8d\x8a\xdb\x22\x5c\xa8\x34\xb8\x31\x49\x86\x50\x0b\x6b\x05\x41\x0e\x40\xd0\x92\x1e\xf9\x6c\x56\xe1\x31\x29\xef\xe8\x42\xde\xcc\x9a\xf5\xaf\x73\x2f\x92\xa1\x2a\xac\x12\x97\xbc\xc3\x24\x6c\x80\xfe\x71\xe9\x16\x09\x67\xb2\x31\xd3\x96\xa2\xf1\x30\x4f\xa2\x73\x39\xd9\x08\xa7\x2a\x21\x66\x09\x45\xdb\x64\x63\x10\x7d\xd1\x5b\x20\xb6\x55\x36\xc6\xb6\xc8\xc6\x58\x5d\x36\xc6\x02\x69\x0a\x6b\x4a\x53\x52\x4f\x36\xa6\xdd\x95\x6b\x7d\x2c\xf9\xd1\xe6\xad\x5c\xd0\xc9\x87\xeb\xcd\x46\xd1\x1d\x92\x25\xe0\xef\xd2\xf2\x83\x8b\x88\x40\xc4\x8b\x10\x26\x31\x42\x55\x9d\x52\xd6\xa4\xa9\x12\x8e\xc0\x2a\x98\x06\x60\x59\xd2\xf2\xc3\x0b\xfd\xc8\x72\x16\x5b\xb9\xc9\x40\x15\x8f\x5b\xcb\x99\xfe\x05\x49\x79\x56\x5c\xb1\x18\xa1\xa1\x2b\xe8\x86\x59\xc9\xef\xda\x38\xdc\xe2\xf6\x7a\x71\x5b\x25\xd5\xb6\x50\x01\x89\xe3\x28\xa3\xd9\x73\xd7\x4a\x84\x50\x75\xe5\x51\x83\xba\xd1\x82\xe9\x04\x4d\xad\xdb\x6f\x0b\xaa\x96\xd9\x07\x69\x51\x7d\x8e\x11\xc2\x6a\x71\xfc\xee\xc2\xd8\x01\x01\x97\xd4\xa0\xe0\x83\x5d\x7c\x8a\x2a\x8f\xf5\xd9\x5d\xf6\xc4\x8e\x6f\x4e\x26\x1f\x5e\x4c\xdf\xce\x8b\x55\x9e\x69\xa6\xc9\xdb\x04\xf0\x40\x60\x77\x86\x64\x16\x15\x86\x3a\x32\x3c\xb7\x5b\xcc\x3c\x95\xfc\x1f\x30\x1a\x16\xe4\x8e\x50\xc5\x41\x23\x0d\x66\xc3\x76\x69\x41\x83\x89\x5a\xda\x77\x6d\x83\xa1\xa5\x86\x16\xc9\x90\xf5\x74\xe5\x5a\x73\x27\xfe\xc4\xee\x42\x25\xda\x7f\xa7\x07\xa0\x95\x10\xb7\x8f\xde\xdb\x77\x55\x7b\x13\x8d\x39\x34\x56\x17\xa6\x90\x97\xa4\xd3\x68\xb1\xf5\x54\xe9\x31\xc5\xc6\x27\x20\xc4\xc6\x55\x59\x47\x0d\x9d\xcf\x2d\xd8\xca\x1c\x9b\x5a\x46\x75\x3e\x23\xe2\x79\x9e\x2e\x4b\xdb\x99\xf1\xaa\xd0\xec\xac\xdf\xde\x82\xbf\x93\x49\xd2\xb2\x62\xea\x9c\x80\x1d\x5c\xeb\x11\x07\xef\x62\x6d\x1b\x4e\x43\xbc\x3e\xc4\x47\x89\xbf\x67\x0c\xdf\xaf\xf0\x95\x39\xd7\xdb\x30\x8e\xdd\x78\xa8\xf2\xe0\xae\xb8\x78\xfb\x60\xd5\x26\x6f\xd1\x21\x0a\x02\x16\xdd\xf0\xf1\x64\xf0\x8f\x15\x59\x91\x23\xd1\xeb\x09\x1b\x70\x05\x1c\xd0\x2a\xa9\x18\xb4\x92\x85\x48\xc1\xc7\x31\xcf\x02\xa4\x19\x49\xee\xad\x4c\x98\x47\xb8\xe4\xf6\x7a\x59\x25\x92\x71\x9b\x24\x77\x61\x1f\xf0\x3c\x59\x57\xd8\x7f\x82\x98\x6c\x79\x82\x98\x8f\xc8\x38\x99\xe8\x27\x88\x79\xf8\x04\xe1\x7f\xe2\x79\xfd\x09\x62\xbe\xf5\x09\x62\xbe\xd9\xcc\xeb\x4f\x10\xf3\xf0\x09\x62\x9e\xac\x0e\x79\x82\x08\x42\x3e\xc5\x25\xce\xb1\x5c\x1e\x52\x21\x3c\x47\x38\xf3\x9e\x20\xe6\xb5\x07\x82\xb9\x7e\x82\x08\xd2\xcf\xe6\xcd\x4b\x33\xb3\x4f\x10\xf3\xdd\x4f\x10\xf5\x1e\xda\xef\x7d\x39\xc4\xb9\x9c\x9e\xa2\x1d\x68\x32\xc7\x4c\x39\x41\xf2\x9e\xdd\x8e\xf6\x3e\x23\x2b\xd2\xd2\x46\xfa\x08\x1e\xfb\x5a\x5d\x7d\x6e\xa3\x5c\xb7\x90\xab\x2a\xbb\x7f\x45\xc5\x1c\x44\xd1\x5b\x8a\x05\xfd\xf6\x0b\x70\xf1\xb8\x9d\x06\x9e\x11\xd5\xa2\xb1\xf9\x6e\x77\xc8\xd1\x42\x11\xd7\x5e\x25\x1d\x6d\x3c\xfd\x57\x7a\x85\x5c\xfe\xe7\x35\xf0\xdf\xfd\x35\x50\xde\xd2\x8b\x24\x6e\x3c\xb5\x91\x7f\xac\xd2\x3c\x8e\xe0\x8a\x18\x18\x5f\x0e\x27\x01\x23\xd4\x78\x73\x5b\xa4\xcb\x27\xd7\xba\x4e\x84\x35\xf2\x0f\xaa\xd4\x1f\xe1\x06\x65\xc1\x85\xad\xd1\x8e\x24\xc9\x60\xc9\x69\xc1\xa9\xb8\xfe\x56\xd8\x9f\x67\xa7\x43\x97\xfe\xc8\x4b\xef\x9f\x0e\x4f\xc2\xd0\x76\x8d\x87\x3d\xbc\x6a\x7d\x08\xd3\x77\x65\xc0\xab\x79\x4f\x60\x1e\xa7\x31\x75\x34\xe8\x62\x29\xae\x23\x3c\xd1\x0f\x49\x26\x03\x66\x5e\x46\x38\xab\xa5\xa7\x9c\x43\x30\xe8\xff\x51\xf3\x35\xd6\x3b\x96\x35\x79\xa6\x3d\x4b\x98\xeb\x16\xe0\x62\x3d\xa9\xd7\xe9\xf8\x3d\xc4\xb6\x56\xab\xcf\x49\xca\xf5\x1d\x5d\xc6\x60\xea\x11\xfa\xfb\x50\x9d\x13\x06\x7d\x69\x32\x84\x91\xab\x40\x32\x4b\x90\x6a\xad\xaa\xb5\x16\xbe\x55\x29\x72\x42\x52\xb5\xe6\xc1\xe3\xc7\x82\x11\xcf\xde\x9b\xf8\xe6\x0c\xa4\xf1\x3e\x01\x96\xba\xb2\x03\x3d\xfd\xca\x28\xe8\x40\xcc\xa9\xd8\x03\x84\xb7\x37\xbc\x16\x85\x8e\x88\xe7\x2a\xb9\x81\x2f\x09\xf9\xf0\x3d\xe5\xa5\xa8\x05\xd0\x53\xfb\x1b\xc2\x6e\xaa\xb3\x04\x25\x7f\x48\xb7\x14\xcc\x53\x5b\x6e\x46\x04\xc0\x48\xd3\x4c\x61\x69\xd7\x48\xd5\x04\xa6\xa7\x27\x0d\x86\x41\xd4\x33\x69\x80\x6d\x32\xf5\x8a\x3f\xb3\xce\x46\xd6\x12\x2f\x25\x75\x1b\x9f\x51\x24\x69\xad\x12\x02\xf3\xc8\x81\xd0\x82\x7d\x0f\x8a\x59\x14\x12\x35\xc3\xf5\x6c\xb5\xcc\xe9\x24\x15\xa4\x8c\xc6\xee\xe0\x3a\xd7\xaf\x05\x5e\xfb\xf4\x22\xb0\xa6\x95\xb3\x0b\x54\x02\x1c\xa7\xd6\x19\x5a\x74\x59\xab\x8e\x19\x11\xaf\xe0\x42\x7d\xc5\xf5\xb0\x63\x88\x8c\xe8\xe8\xfc\x14\x0b\xcc\x9c\x39\x86\xf5\x4f\xaf\x2d\xa1\x52\x54\xb5\x35\x12\x44\xed\xbe\x19\xc0\xbc\x00\x5b\x31\xc7\x4e\x9b\xd8\xf7\x90\x1e\x46\x58\x10\xe8\x8c\x0d\x85\x7b\x21\xad\x35\xeb\x6d\xfa\xd6\xd0\x5d\xda\xca\xfd\x0d\xec\x42\xfd\x2c\xaa\x5c\xe8\xce\x86\x84\x5d\x52\x5e\xb0\x85\x72\x55\x21\x6a\x53\x21\x3b\xe6\xe1\x0c\xbc\x3c\xd7\x9a\x42\x71\x5e\x2d\x23\xbb\x11\x8c\xb6\xae\x72\x64\x88\x9e\xe3\x2d\xef\xc2\x0d\xa6\x91\x63\x32\x12\x63\x54\xc1\x76\x08\x4f\x6f\xdb\x90\xf4\xe7\x3b\xb5\x81\xdd\xe9\x46\x55\xfd\x14\x1b\x5e\x2c\x89\xb5\x1a\x69\xf2\xc8\x9e\xa0\xfa\x5e\xe6\x4d\xfe\xd2\xb3\xac\x62\x78\x6d\x9c\x79\x0a\xe5\x23\x5c\x92\xde\x30\x60\x89\x1a\x19\xaa\xaa\xf3\x79\x5a\xda\x03\x53\x0f\x32\xab\x50\xbb\x0b\xcf\x44\x50\x65\x91\xa7\xf7\x50\x49\x06\x8d\x93\x07\xbe\xd4\x1b\x0e\x51\xc4\x99\x18\x6a\x4e\x0b\x80\xf1\xba\x5e\xcd\x6f\x13\x3a\xb7\x76\x57\xe1\x38\x85\x41\xb3\x55\x13\x6d\x2d\x57\x16\x4f\x11\xc9\xa7\x4d\x92\x65\xbc\x0a\x0d\x4e\xf4\x4d\x76\xf7\x17\xa4\xac\xde\xb6\xb9\x0c\xef\xfe\x7e\x34\xaf\x37\x5d\xbb\x4f\x47\xe5\x9d\x0d\xa9\xc2\xf6\xdb\xcf\xcc\x21\xcf\x44\xfb\x9b\x41\x78\xe5\xcb\xf1\x57\xbe\x1c\x7f\xb1\x8b\x85\x3a\x40\x77\xf2\xd7\x09\xd5\xfb\xee\xe5\x0f\x4f\x52\x5e\x0e\xcc\x00\xe3\x35\xcd\x86\xd1\xcf\xaf\x5f\x9f\xfe\xfd\xeb\xbf\x7e\x88\xf0\x45\x5e\x4c\x3e\x0c\x7f\xbb\x8e\xca\xeb\xc5\x45\x91\x97\xd1\x70\x14\xf5\x0c\x8e\xc1\x51\x2f\x15\x02\x7c\x33\x45\xa5\x48\x05\x84\xc0\x96\x45\x46\xa7\xa7\x38\xca\xe8\x65\x34\xc6\xa3\xd3\xaf\xf0\x09\x1e\x3d\x38\xc5\xa3\x28\x98\x70\x27\xc2\xa3\x07\xf7\x65\x9e\xf7\x24\x37\x1e\xe3\x08\x32\x64\x95\xaf\xf0\xc9\x18\x8f\x4c\x21\x23\x51\x93\x45\xec\x6f\x90\x8d\x6f\xaf\xa3\xd5\x0b\x64\x15\xf3\x53\xd5\x18\x8f\xc7\x78\x74\xff\x0b\x1c\xf1\x02\xb4\x99\x60\x04\x30\xda\xaf\xf1\xfd\x31\x1e\x7d\x81\x47\x0f\xbe\xc1\x0f\xc6\x78\x14\x4d\xf4\x7b\x99\x6e\xd2\x3c\x83\xc9\x16\x54\xe7\xba\xf0\x17\x5e\xbf\xfe\x3b\x53\xa3\xe0\x97\x41\x41\xff\x99\xc8\x2b\x7a\x2a\x47\x71\x1f\x47\x7f\xfb\x1b\x93\xc3\xfa\x0a\x8f\x1e\x7c\xad\xa6\x76\xff\x6b\x18\xcb\xa9\x29\x8c\x47\xa3\xc8\x2d\x08\xc9\x4b\x39\xc9\xd1\xba\xb6\x20\xf7\x71\xd4\xe9\x74\x3a\x30\xc5\x6f\xf0\xa9\x1e\xc1\x18\x8f\x1e\x7c\x09\x13\xd6\xc0\x3b\x1d\xdb\x1c\xfb\x20\x67\x41\xe6\x06\x34\xc6\xd1\x32\xe5\xe9\x82\x08\xc2\x65\xf3\xe3\x0a\xef\xea\xd0\x02\x0f\x36\x80\xd3\xcb\x8b\x82\x46\x83\x59\xea\x0a\xf5\x97\xf8\xb6\x49\x6f\x9f\xad\xee\xfe\xc4\xed\xc5\x2f\xf0\x89\x5e\xec\xbe\x79\x38\x8d\x42\x68\x77\x3a\x07\xd7\x84\x01\xe1\xd1\xe9\x97\xf8\x4b\x3b\xc3\xc6\x73\x2c\x4c\x11\xda\x3f\x7d\x50\xeb\x24\x0a\x13\xdb\xc0\x0a\x1b\xb5\x25\x11\x2a\x8e\xe1\xa5\xff\xf9\x65\x9a\x47\xc3\x69\x9a\x97\x04\x47\xab\xe5\x65\x0a\xa5\x22\x3a\x8d\xd4\xa6\x07\x3f\xa6\x06\xf0\xf0\x91\xd1\xac\x4f\xf5\x13\x6a\x24\x59\x91\x7e\x66\x36\x60\xf5\x5b\xbc\x20\x22\x1d\xae\x55\xc0\x2e\x88\x27\x79\x0b\x64\x36\x98\x5f\x94\xd1\xfe\x68\xcb\xdb\x1e\x2f\x3f\x63\x30\xf7\x2c\x73\x96\x09\xea\x51\x2f\xb4\x1d\xb0\x8a\x9d\x10\xd8\xd1\xbf\xc7\x75\x44\xac\x5a\x79\x13\xbf\x5e\x87\x76\x74\x71\x82\xea\x04\xaa\xb5\x4f\xa9\x1a\x31\x2f\x04\x82\x6e\x53\xc9\x91\x58\x81\x87\xb6\xb3\x3c\x16\x10\x20\xd5\x12\xdf\xc6\x56\x6c\x90\x2e\x97\xf9\x75\x2c\x30\x01\x4f\x23\xfa\xf9\xb3\xcd\x94\xb1\x36\x2f\x82\x6b\x33\x6b\x9d\x47\xc8\x0d\x8a\x5a\xe0\x0e\xdd\x5b\x68\xff\x59\x55\xad\xb6\x8d\x87\x89\xf2\x7e\x0d\x1b\xcf\x90\x06\xd5\x32\xfe\xe1\x03\xf2\x00\xd7\xde\x59\x86\x27\xd8\x88\x2a\x86\xa7\x27\x27\x58\xc9\xff\x87\xdd\x53\xec\xa3\x27\xf9\x0d\xb4\x69\x44\xd9\xb4\x88\xe0\x77\x39\x1c\x45\xe5\x6a\x32\x51\x7a\xd2\x2a\x3d\xba\x4a\x39\x83\xa7\xa1\x28\x93\x84\x10\xb7\xd7\x0f\x8e\x4a\x32\x29\x58\x96\xf2\xeb\x68\x8c\x9b\xac\xe1\x70\x14\xf1\x62\x05\xfe\x9b\x27\x05\x13\xbc\xc8\x41\x79\x2d\xba\xa4\xe4\x0a\xd2\xf4\x61\x8c\xc6\xb8\x41\xc8\x0e\xbb\xa7\xd5\x96\xa8\x31\xfb\xc4\xa7\xbf\x6c\x4c\x57\x67\x2d\x14\x32\xac\x2e\x70\x6a\x92\x24\xd6\xda\x8b\x3b\x1f\x37\xfb\x67\xa6\xa5\xcd\xfa\xac\xfd\x4a\xf1\xca\xd6\x95\xe5\xdd\x78\xc0\xbb\xb1\x84\x8c\xf8\xb8\x11\x9a\x11\x7c\x44\x8a\x11\x1f\x27\x1e\x0f\x7e\xf8\x64\x0b\x96\xff\xb2\xd6\x5e\x2a\x94\x91\x09\x95\xc8\xfd\xf9\x32\x35\xdf\xfe\x69\x37\x49\xc4\x00\xdc\xaf\xbd\x9a\xaa\x09\xf2\x11\x1b\x27\x64\xc4\xc6\x5e\x4c\xaa\x83\xe7\x68\x9f\x0f\xfe\xc9\xa6\x99\xdc\x61\x9a\xca\xdf\x66\xdf\x38\x32\xec\x2f\x39\xbd\x4c\x05\xb9\xa7\x84\x2e\x61\xf6\xaf\x83\x3e\x6d\xd2\xc8\xf3\xa1\x19\x08\x1d\x68\x29\xd9\x0b\x50\xdf\x16\xb0\x8b\x13\x31\x50\x03\x47\x98\xc8\x2f\xa5\x95\x7e\x18\x04\xac\x4b\x47\x1b\xe8\x70\xdb\xfb\xd3\x8d\x40\xf7\xd9\xe2\x44\x12\x2f\x24\x63\x3d\x68\x64\xe8\xf0\x74\x4b\x1c\x47\x49\x3c\x79\x4d\xf0\xbb\x38\xc6\xdc\x01\x4e\x2d\x18\xfa\xa7\x07\xa6\x1e\xe7\x4d\x40\xa9\xab\x00\x20\x4d\xf5\xcf\x04\xc6\xf9\x6a\x91\xb2\xda\x9e\xfc\xc4\x47\xd1\x74\xd1\xe6\x33\xd5\x5c\x2e\xf7\xce\x8f\x37\xfd\xe3\x7b\xb3\xd0\xad\xeb\xd8\x8b\xc5\xd6\x3c\x9a\x44\x1e\x4d\x92\x10\x7b\x34\x95\x4e\x82\xf1\x61\x1a\x45\x36\x36\xb9\x28\x7e\x28\xae\x08\x7f\x9a\xea\x97\xb9\x65\x9e\x4e\x48\x2c\x24\xf7\xed\xf0\xd9\x60\x32\x4f\xf9\x63\x11\x9f\xa0\x81\x28\xfe\xb4\x5c\x9a\xf2\xc7\xe6\x75\xef\x14\x55\x9f\x65\x09\x72\x39\xb6\x49\x5a\x1e\x8a\x17\xd4\x15\xe2\xd5\xfa\x44\xbb\xfe\x53\x3a\xa6\x26\x03\x3b\xbe\x70\xa9\xeb\xce\xc9\xbc\xb0\xb3\x7e\x1d\x76\x13\x47\xa9\xf5\x30\x47\xdb\x41\x2d\xa8\xc8\xc9\xe1\x18\x58\x87\x62\xb3\x95\xfe\x29\x01\x6d\x86\x77\x03\x38\xdb\x2a\x37\x02\xf3\xe1\x3b\x5a\xf0\x15\x9b\xdc\x20\xb2\x6e\xcd\xb3\x75\x72\xfa\xc5\x09\xe6\x49\xf7\x64\x6c\x9d\x9f\x9c\x89\xfe\x83\xa1\x68\xb5\xb4\xda\x85\x11\x48\xaf\x67\xde\x93\x1f\xb1\x33\x7e\x46\x06\xe5\xea\x42\x65\xc6\x27\x98\xa1\xe3\x68\x30\x18\x44\xc3\x7a\xf2\xf0\x56\x6a\xbe\x66\xd6\x9f\xd8\x8d\xf6\x76\x30\xaf\x24\x92\xba\x31\xe2\xf0\x6a\xfd\x53\xee\x67\x3b\xbe\x1b\x6c\x68\x57\xe7\x13\xef\xe8\x06\xae\xfd\x25\x29\xf5\x28\x82\xfb\xaf\x19\x8b\x19\x39\x67\x20\xef\xae\x97\x44\x3b\x04\x79\xfe\x71\x49\x26\x82\x64\x9d\x54\x87\x51\xc6\x9d\x19\x84\x99\x8b\x8e\x6d\x45\x1b\x53\x3a\xbc\x13\x0f\xa3\x64\xeb\xe8\xf0\xdf\x13\x16\x96\x3e\xb8\x17\x9f\x0d\xff\xbf\xcd\xdf\xca\x4d\x7f\xf3\xb7\x7b\xe8\x6f\x6f\xef\xcd\xc2\x59\x7a\xd5\x3d\x72\xa1\x6a\x8f\xde\xbb\x15\x9a\x9c\x2e\xfe\x9d\x20\xc9\xe9\xe2\x66\xdb\xa9\x15\x89\xfd\xab\x43\x21\xd8\x10\x2d\xc0\x28\xf2\x5c\x89\xc8\x7c\x41\x74\x3d\xaf\x15\xab\x1f\x54\xd3\x0a\xba\xdb\xea\x69\x37\x75\x19\x61\x82\x8a\xeb\xed\x25\x18\x21\x59\xd9\xe7\xc4\x38\x6f\xfb\xbc\xd1\x66\x0c\xae\x07\x55\x29\x5a\xf7\xfa\xa7\xfa\x82\x37\xe6\x0f\xe4\x5a\xfb\xd0\x1c\xcc\x69\x96\x11\x96\x74\x4f\xb5\xde\xb6\x20\x8b\x44\x18\x1d\xee\x8c\x7c\x4c\xb8\x31\xd3\xb8\xce\x49\xc2\x2a\xdf\x1d\x19\x5a\x03\x31\x6f\x94\x53\xac\x5f\x02\x63\x53\xb3\x56\x4e\x06\x86\x2e\x9a\xba\xb6\x08\x51\x8f\xe1\x17\xe0\x4c\x59\x8f\xda\x98\x03\x90\x3c\xff\x01\x6a\x85\xe9\x3c\xbd\x7a\x21\xc8\xa2\x0c\x53\x69\x33\xa9\x9c\xf0\x22\xcf\x7f\x20\x53\xd1\x96\xfe\xae\x58\xd6\xfa\xcb\x29\x61\xe2\x2f\x34\x13\xf3\xb6\x8c\x3f\x10\x3a\x9b\xd7\x5a\xd2\x8e\x3a\xdf\x3a\x72\x51\xeb\x6d\xa9\xf4\xe7\x39\xbc\x44\x35\xa7\x55\x3a\x6d\x28\x2f\xf5\x65\xba\x6c\x73\xf0\x6d\x46\x0d\xba\x6c\xe8\xc8\x73\x59\x3c\x23\xe2\xb1\x10\x3c\x8e\x14\xf8\x22\x74\x14\x40\xd3\xbd\x41\xb8\xd0\x35\xc3\x2f\x9b\xc0\x39\xd9\x84\xad\xa9\xac\x7e\x4e\xa6\xa0\xe9\x52\x83\xd9\x96\xd2\xa2\x58\xda\xc2\x3e\x24\xeb\xc5\x49\x29\xe8\x02\x7c\x17\x5e\xc9\xfc\x5a\x1d\x0d\xe4\xed\x95\xe6\x50\xa0\x36\x2c\xe5\x27\x2d\x69\x1d\x97\x72\xb0\x15\xa1\x0a\x9f\xc3\x09\x7c\x63\x0f\xa0\xb3\xd0\xb1\x06\x1c\xda\x03\x83\x4d\xa1\x6c\x66\xac\x91\xce\x69\xf9\xfb\x9c\x2e\x16\x84\xdf\x8f\xd1\x99\xd6\x91\xe1\x84\x65\x72\x51\x86\x35\xdd\x9e\x39\x2d\x11\xaa\x70\x46\xb3\x37\x64\x42\xe8\x25\x91\x43\x2a\xed\x6e\xd7\x4b\xa9\xe6\xb0\x5a\x42\x98\x37\xb9\x7d\xc3\xa4\xb7\x30\x81\xd7\x85\x72\x76\x10\xa3\x0a\x7b\xda\x82\x7a\x6b\xd9\x26\x61\xfb\x1b\xdb\x7d\xf8\xd0\x56\x01\xe0\x25\xed\xd5\x45\x49\xf8\x25\xe1\x7b\x0b\xa8\xa7\x9f\xb5\xec\x48\x01\x75\x58\xc8\x59\xe8\xdf\x51\x1d\x84\x51\x85\x2a\x1c\x4c\x60\xdd\x38\xbb\xe1\xaa\xc8\x8c\xbe\x76\x38\xa2\xf4\xd0\xeb\xeb\x06\x63\x8b\x90\x53\x94\x31\xe7\xbd\x9b\x24\xe4\x57\x9f\x6e\x1d\x07\x91\x40\x8b\x02\x02\xd9\x2b\x1c\x49\x44\x1c\xa9\x8e\xc1\x65\x01\xd8\x69\xa4\x59\x56\x1f\x5f\x23\xed\x16\x2b\x60\x96\xa0\xbe\x61\x9c\x8d\x52\x70\x4e\x8c\xd9\x54\x1b\x22\x09\x8e\xfe\x91\x0b\x6b\x05\x7c\xe0\x32\xe5\x25\x79\xc1\x44\x4c\xf0\xe9\x09\x6a\xe0\x11\x55\xce\x9b\xbd\xcb\x8a\x30\x41\x0a\x73\xd5\xf7\x83\x8f\x3d\x5c\x7f\x02\x84\xc4\xb6\x3f\xd1\xe8\xef\x5d\xb1\x54\xc5\x1a\xdd\xbd\x2b\x96\x12\xe0\x76\x5f\x3e\x75\x28\xda\x18\xdd\x24\xf5\x3d\x3a\xf0\xf0\x78\xdc\x40\x61\x2d\x08\xca\x1f\x6a\xfd\x22\x90\x2c\x32\xa0\xb6\xa4\x25\x53\xe5\xc8\x22\x0a\x91\xb5\x96\x51\x59\x1a\x17\xa9\xb9\x79\xd9\x60\xca\x05\xa8\xe0\x0d\x60\x1f\x3f\x88\xa2\x87\x3d\x9e\xca\x6b\x26\x44\x28\x01\x28\x2c\x7c\x54\x39\x6f\xaf\xc0\xa6\x6d\xb7\xad\x33\x8f\xc3\xba\x10\x36\x71\x02\xcd\xc5\xe3\x81\x54\xe5\xe8\xbd\xb3\x25\x37\x21\x0a\x05\x88\xff\x9f\xbd\xb7\xff\x6e\x1b\xc7\x12\x44\x7f\xd7\x5f\x21\xf3\xd4\x53\x13\x6b\x98\x91\xab\xdf\xec\xec\x28\x8d\x68\x52\x89\x33\x9d\xe9\xaa\x24\x1b\xbb\xba\x77\x8e\x5a\xeb\xd0\x22\x64\xa3\x43\x83\x1a\x10\x4a\xe2\x96\xf8\xbf\xbf\x83\x4f\x02\x24\x28\x51\x8e\xed\xee\x9e\x37\xe7\xd4\xa9\x58\x04\x70\xf1\x75\x71\x71\x71\x3f\x21\x35\x91\xe0\x90\x77\x1d\xc2\x75\xf0\x42\x5c\xb4\x77\x50\x32\x28\x2f\xcd\xe8\x6a\xcc\x6b\x62\x4d\xfb\x86\x0a\x6d\x2f\xcc\x42\x38\xb2\xa6\x0f\x06\xff\x06\xb9\xcb\xb8\x44\xbf\xa4\xfc\x26\xb9\x25\x34\x5e\x40\xf7\x0a\x07\x83\xc5\x09\x5a\xc2\xec\x58\xfc\xaf\xae\x94\x1d\xbb\x95\xea\x0c\x0e\xf1\x4d\xbd\x23\x27\x0b\xb5\xb6\x2b\x34\x9b\x4b\x8d\x14\x47\xe3\xe7\xfc\x77\xd9\x73\x7e\x7c\x0c\x0a\xb4\x38\xe6\x30\x6d\x88\x00\x6e\x12\xa5\x47\x7b\xc9\xe3\x02\x00\x98\xcb\xdc\xf9\xf9\x2c\x9d\x03\x58\x4e\x63\xda\x5e\x12\x95\x83\x57\x10\x42\x19\xb1\x21\x2e\x7a\xce\xbe\x36\x3c\x2d\x61\x54\xaa\x38\x52\xb4\xf1\x59\x31\xa3\x3a\xf2\x94\x5b\xf0\x19\xdf\x45\x30\x6d\x7c\xd4\x29\x9c\x0a\x00\xd7\xb3\x74\x8e\x4a\x30\x59\x49\xbb\xc9\xb8\x00\xce\xe4\x1d\x06\x4c\x63\xa0\x5c\x0d\x81\xfa\xeb\x59\x5c\x3a\x13\x2c\x67\x7c\x0e\x64\x1a\x15\x51\xba\xd2\xb5\xc1\xa6\x40\xab\x64\x55\xac\x2c\x1b\xe6\x2d\xd9\xa0\xb9\xa0\xb8\xb6\xae\x7e\xa2\x55\xdb\xb3\x38\xfe\x67\x8e\x6f\xa5\x97\x66\xe7\xba\xab\xb5\x54\x7e\xa3\xe1\x4a\xe3\xf0\xb0\x22\x45\xc2\x26\xc3\xf1\xf3\x61\x46\xca\x55\x9e\xde\x4d\x86\xb4\xa0\xf8\x79\xe4\xee\xc7\xca\xdd\x05\xb1\xb6\x33\x3e\xff\x1b\x2c\x6c\x89\xc4\xeb\x94\xc4\x29\xc4\xb0\x10\x4b\xaa\xe6\xed\xf2\xeb\xae\x11\x6e\xa9\x4d\xa4\x2d\xcf\xbe\xae\xa0\xc7\x1d\x9a\xc0\xd3\xc6\xa5\x41\x50\xe9\x77\x45\x86\x2b\xa8\xcc\xb0\xca\xc9\xc6\xbd\x8f\x75\x8c\xeb\xd6\x3d\x3d\x6d\x7f\x92\x55\x27\xd8\xde\x1a\x35\x1d\x1a\x8d\x78\xe3\xeb\x45\xb1\xda\x6e\x5b\xee\xc8\x8d\x4b\xb9\x1d\x14\xc9\xbb\x45\xf5\x12\xb4\x18\x67\x50\x41\xb5\x84\xe2\x2e\x69\xcf\xc2\xe5\xff\x6b\xa6\xc0\x67\xf1\x65\x00\xf0\xf6\xf0\x9c\xa6\xe1\xf1\xb9\x40\x76\x0f\xd1\x37\x3b\x0b\x39\x36\x1e\xfa\xf8\xff\x3b\x32\xcc\xfd\xcb\xd7\x3c\x1f\x13\x4e\xc2\x86\xb9\x02\x33\x23\x58\xdb\xe7\xb6\xcc\x72\x95\x81\xe5\x3f\xd7\x36\x94\x9a\xc1\x38\x29\x95\x62\xc6\xe5\x03\xa1\xcb\xa4\x99\x1f\x6a\xd3\x23\x18\x35\xf1\x20\x92\x46\x9b\xff\x04\xff\xa7\x32\x29\xfd\x27\xf5\xcf\xff\x5b\x5b\x96\xfe\xd6\xb1\x2c\xf5\x60\x59\x93\xd7\x40\xc5\x40\x2f\xd6\x16\x75\xbf\x01\x68\xd3\x84\xf3\x47\x6b\x62\xfa\xa3\xec\xc3\x35\x79\x75\xff\xfe\x27\x38\x36\x86\xb8\xde\x3f\x7b\xfa\x74\xba\xfa\xf1\x47\x6d\x12\x7a\x0a\x67\x9a\x38\x3a\x76\xa0\xff\x0b\xfe\xa8\xa6\x28\x4a\x25\x39\x16\x65\xe6\xb7\xa4\xda\x73\xc7\xc6\xd3\xb3\xfe\x3c\xad\xcd\x3f\xf7\xdb\x8d\x76\x5b\x87\x2a\xf2\x16\xc1\xe8\x44\x66\xd6\x3a\x49\xc5\x5b\x24\x82\x11\x4e\x17\x37\xae\xdd\xa8\x4b\x17\x7c\x22\xd2\x60\x4e\xf5\xd9\xa2\x29\x27\x5f\xf0\x89\xaa\x28\x03\x3d\xec\x34\x29\x3d\xec\x24\xf6\xb4\x2a\xdd\x01\xb4\x3d\xbc\xdd\xc2\x41\x23\x5c\x4e\x69\xb9\x5b\x0e\x28\xf7\xf8\x64\x65\x5d\x56\x1e\x53\xb7\x13\xd2\xe7\x94\x2a\x74\x96\x02\x03\xe2\xa8\xf8\x82\xd9\x32\x2f\xbe\xaa\xb7\xa1\x0c\xb7\xea\x69\x74\xda\x82\x3a\x4f\x2e\xe7\x49\x72\x82\x92\x9a\x80\x38\xa9\x2d\x32\xd2\x5f\x52\x4a\x54\x32\xf8\x37\x02\x47\x1b\x42\x39\x25\x13\xe9\x16\x9a\xb8\xb2\xb6\x86\x4c\xc1\xa5\x5d\xed\x77\xe9\xae\x27\x6e\x6b\xa8\xdd\xaf\x53\x39\x32\x65\xca\xdf\x10\xbe\x34\xa4\x7d\xf2\x1b\x56\x3f\x94\x73\xa2\x2e\x79\x75\x43\xf2\x4c\x7b\x2b\xad\x56\xf9\x9d\xe2\x52\x80\xf3\xc5\x7b\xa1\x69\x61\xeb\x1d\x5d\xa8\xcd\x7b\xc3\x8a\x5b\x39\x2c\x1b\x2d\x27\x65\xfc\x5c\x53\x50\xbc\xf8\xac\x17\xef\xd7\x95\x2b\xdc\x3a\x04\xec\x2e\x01\x93\x8a\x6d\xe1\xf5\xb6\x43\xd4\x59\x41\x77\x82\x1b\x3a\x8d\xbd\x45\x91\x48\x9a\x18\xd4\x44\x7a\x99\x75\x24\x42\xaf\xd2\x8c\xce\x51\xc4\x8b\xf5\xe2\x26\x32\x21\x77\x3a\x60\xa4\x6b\x5e\x44\x2a\x0b\x82\x3d\xa6\xc0\xeb\x16\x8e\xa1\x0d\xc1\xe2\x01\x59\x69\x89\x09\x8a\xd2\xab\xb2\xc8\xa5\x61\x6d\xa0\x5a\xee\x20\xb7\x5f\xc2\x6b\x1c\xf7\x0b\xae\x0a\xce\x8b\xdb\x70\x19\x53\xe7\x47\x2f\x95\x2f\xa6\x08\xac\x6c\x6b\xac\x0c\xe7\xa9\x8a\x99\xd9\x5d\x5b\xc9\x21\x3a\xa4\x10\xc7\xd1\xea\xdb\xae\xc6\x5a\x42\xd1\x25\x9f\x90\xcd\x2b\x18\x42\x24\x7d\x62\xc5\xc4\x08\xce\xce\x5d\x89\x8d\x7f\xdc\xac\x68\xa0\x59\xb5\x59\xb1\x79\x4e\x5f\xa0\xb1\x0d\xa7\x64\x06\xdd\xd5\x16\x98\x53\xee\x75\xa2\x25\x56\x6d\x3e\x3a\x34\xa2\x9a\x8c\x74\x3d\xfd\xc5\x87\xce\x41\x05\x9b\x0b\x26\xba\x7d\x84\x3d\xa7\x6c\xd7\x90\x03\x6c\x70\x52\x7a\xc7\x4f\x9c\x58\xc7\xbc\x0b\x6c\xbe\x12\x9a\x15\x5f\x13\x86\xff\x73\x8d\x4b\xfe\xd2\x23\xb6\x53\xdc\x22\xbf\xc1\x7a\xb1\x78\x5f\xb4\xaa\x96\x2a\x1e\x4f\xb1\x96\xb2\xb8\xff\x09\x2a\x49\x2d\x02\x34\x61\x13\x22\xf4\xa3\x51\xbc\x73\x68\x0a\x4e\x73\x1c\x01\x40\x60\x22\x3d\xcc\xed\x50\x42\x55\x76\x5d\x35\x62\xc5\xbd\xd1\x3a\x22\x50\x43\x24\x38\xc2\xce\xae\x41\x66\x7f\x0a\x2c\x94\x99\x2b\xea\x87\x56\x0b\x47\x46\x23\x16\x2e\x54\x8f\x31\x8a\x8e\xc6\x5d\xb8\x68\x34\x6d\xed\xa3\xc0\x94\xb0\x81\x48\xe3\xc7\xfa\x25\x5b\xd8\xdf\xea\x2a\x86\xa9\x18\x1c\xa9\x25\x8a\x75\xdd\xd1\xa8\x68\x7c\xfe\xbd\x16\x31\xc6\x69\x3d\x24\xf7\xae\x27\xa1\xbb\xbe\x00\x30\xa6\xdb\x6d\x0a\xdc\xa0\x4a\x32\x1d\x8f\x7c\x9b\xc5\x8e\x20\x92\x1a\xc9\xac\xfb\x78\x15\xcc\x0f\x4c\x75\x49\xeb\xfd\x48\x60\xa1\x95\xfd\x7b\xac\x4a\x6a\x96\x4b\xe9\x11\xca\x67\xd7\x8c\x64\x3e\x03\xa7\x4a\x4e\xae\x08\x3d\x59\xa5\x8b\xcf\x98\x3d\x5b\x92\x6f\x38\x3b\x51\x35\x77\x33\x6f\xd7\x98\x62\x96\xf2\x82\x3d\x05\xf3\xb6\x3b\x3d\x1b\xd3\x07\x4a\x8b\x4b\xf5\x4e\x5d\x11\x2a\x25\x16\x56\x97\xaa\x1d\x76\x64\x7e\x1b\xe7\x1e\xb1\x36\x15\x1b\x49\xef\x27\x18\x6a\xb1\x8c\x81\xa2\x29\xb9\x74\x2b\x36\x02\xd4\x3a\xc0\x8d\xe3\x88\x2c\xea\x7e\x21\x25\xb9\xca\xf1\xb9\x20\x59\x84\x5e\xbf\x15\xf5\x63\x9d\x77\xce\xdc\x4a\x2f\xfd\xdc\xb1\xb6\xad\x29\x57\x39\x64\xe5\x68\x5e\xf2\xa6\x73\xb6\xa8\xa8\x8b\x14\x70\x0c\x2a\x35\xc0\x70\x5d\x53\x66\x2b\x2b\x09\x6d\xe7\x04\x94\x36\xf4\x8f\x6a\x1a\x7f\x22\xfc\x46\x20\xae\x8c\x8f\x73\x34\x06\x55\x53\x78\x84\x65\xb0\x03\x9d\x87\x46\xc2\xf0\x27\x09\x29\x80\x85\x2a\xb0\xf3\x51\x5f\x55\x38\xc6\xa4\x1e\xba\xfc\xec\x66\x79\x55\x7d\x7d\x20\xdf\x70\x2e\x3b\x03\xb1\xcc\x84\x12\xb6\x80\x6f\xa3\xfb\xad\x83\xca\xbb\x91\xbe\xbc\xc1\xf9\xf2\x44\xf2\xa0\xff\x80\x58\xbf\xf0\x52\x7c\x06\xd0\xfe\xef\x06\xe3\xdd\x70\xa9\x21\x9c\x17\xe3\xfc\x6f\xac\xff\x3e\xac\x5f\x61\xb6\xc0\x94\xa7\xd7\x58\x94\xae\x6f\x69\xf9\x5f\x14\xfb\xe5\x2e\xee\x0e\x3d\x87\x8f\x79\x05\x0c\x5b\xa0\xf5\x3b\x2a\xc2\xd7\x18\xa6\x68\xfc\x3c\xfd\x1d\x7e\x9e\x1e\x1f\x03\xa2\x94\x20\xfa\x34\xb0\x59\x31\x37\x07\x82\x42\xbd\x9e\xf2\x6b\x05\xe0\xf1\x71\xf1\x02\x31\x7d\xd3\x8c\x46\x71\x81\xc6\x5a\xab\x67\x30\xa0\x34\x5c\x41\xfb\x20\x12\x78\x3a\x1e\xdf\xf3\x28\xca\x96\xf7\x3e\x8c\xa7\xe3\xf1\xc1\xc7\x51\xb4\xf9\x7b\x3b\x90\x72\x1e\xf7\x39\x92\x6a\x01\xcc\xa1\xb4\x7b\x35\xc3\xf3\x44\xef\x70\xe0\x68\xea\x46\xa5\x52\x29\x2e\xf3\xa2\x60\x31\x49\xbe\x3d\x3b\x1d\x8f\xff\x07\x0f\x1d\x5a\x7b\xf6\xf4\xc9\xdd\x7c\x9b\x94\xf0\x6e\x42\x92\xbb\xaa\xcf\x19\x6e\xda\xc8\x3d\xa9\x9b\x9a\x34\x3b\x80\xcc\x1a\x41\x0d\x38\x32\x66\x8a\x08\x21\xb6\xdd\x3a\xbe\xda\x6c\x8a\x27\xbe\x6b\x73\x6d\x87\x18\x74\xb6\xdc\x6b\xe5\xf7\xb4\x73\xc5\xae\xbe\xc9\x64\xf3\x16\x2c\xbe\x5f\x50\x7c\xa5\xfa\x2f\xac\x90\x11\x7f\x4d\xca\xc5\x0d\x16\xdd\x38\x4a\x14\xaf\x11\xc4\x6e\x0a\xdf\xc8\x18\x3f\x11\x7a\x3d\xfc\x42\xd2\x61\xd3\x2e\x65\x8f\x9d\x66\x07\xf1\x3d\x4c\x0a\xfb\xe0\x6e\x66\xcd\x2b\xca\x4b\x5e\x58\x9f\xc2\xc8\x1c\xb3\x89\x11\x18\x3d\xe7\xc5\x6a\x32\x7e\x9e\xe3\x25\x9f\x8c\x9f\x9b\x54\x3f\x43\x72\x8c\x7c\x89\xd4\xab\xf3\x73\x10\xe3\xe4\x1b\xc4\xc9\x1d\x80\xe4\x18\x45\x8a\x3a\x46\xc7\xec\x38\x5a\x7d\x7b\xae\x69\x64\x74\x4c\xe5\xcf\x08\x92\xaa\x1e\x96\x7f\x08\x9f\x76\x6c\xff\x4f\x68\x68\xbd\x77\xd8\x91\x87\x3f\xde\x79\xf0\x44\xdf\x21\x47\x55\x12\x63\x19\x99\x1a\xe2\x64\x51\x96\x7b\x6b\x8e\x41\x9d\x4f\x72\x16\x7d\xc5\x57\x9f\x89\xe0\x23\xfe\x64\xfe\xb8\x15\x38\xfa\x4b\xf1\xd7\x08\x46\xef\xa3\x39\x64\x68\x16\x9d\xa8\x5a\x27\x11\x8c\x4e\x6e\x4b\xf5\x4f\xf1\x57\xf9\x6f\x71\x12\xcd\x21\x45\x4e\xec\x32\x6b\x23\x9d\x15\x0b\x19\xf5\x6f\x34\x32\x7f\x25\xe6\x0f\x2d\x91\xeb\x2e\x51\xb3\x1e\x78\xc9\x8f\x89\xc2\x85\x02\x91\x69\xc3\xa5\xf4\x16\xe7\xea\x6e\x9e\xc8\x50\x7f\xc5\x90\xd0\xa1\x75\xa1\xc7\x3a\x92\x7e\x87\x1b\xaa\x31\xa5\x50\xf9\x7d\xc7\xcf\xcb\xdf\x19\x33\x9e\xe7\xe5\xf1\xb1\xe9\x92\xcf\xca\xf9\x71\xda\x06\x4e\xa6\x4c\x94\xe0\x49\xd1\xeb\xaa\x70\x34\x2d\x3d\x28\xc2\x3e\xa5\xcb\xf7\xe3\x96\x1d\x8f\xb1\xae\x43\xa9\xfb\xf5\x42\xfc\x21\x4e\xe9\x8f\xaf\x51\x19\x2c\xf8\xed\x6b\x94\x87\xe0\xbc\x3a\x3f\x47\xeb\x0e\x50\xa2\x6c\xd1\x01\x4d\x94\x65\x6e\x99\xf8\xe0\xfc\x44\x38\x29\xd7\x2b\xb9\x6e\x3f\xbe\x76\x7e\xfc\xf6\x75\xd0\x71\xd6\x39\x0f\x20\x8e\xb8\xe9\x47\x26\x06\x94\x15\x9a\x7a\x25\xb7\x0a\x41\x47\x47\xc1\x4a\x2b\xcc\xca\x15\x96\xf1\x96\xde\x33\x72\x4d\x68\x04\x06\xde\x50\x88\x1e\x45\x81\x8e\x8e\xe8\xa0\x99\x71\x58\x8a\x3c\x6b\xd1\xbb\x92\x38\x9b\x83\x2e\x85\xee\x4c\x09\xa1\x6d\xc3\xb2\xd1\x70\x46\xe7\xe8\x46\xca\x9d\xea\x3a\x79\xa0\xce\xb2\x51\x67\xed\x72\xdb\x9f\x24\xe5\xfc\x61\x83\xab\xd5\x37\x49\x4b\x7f\xd8\x70\xf1\xe7\xa7\xba\xfe\xc2\xab\xff\xc3\x86\x55\x93\x1f\x36\x37\x4a\xda\xe1\xd6\xcb\x42\xf5\x96\xed\x7a\x37\x5e\xbd\xdb\x94\x33\xf2\x2d\x3e\x85\xc3\xb1\xfc\xef\x14\x0e\xc5\x68\xc4\xff\x79\x05\x9c\x66\xcb\x40\xb3\xdf\x66\x75\x43\xdb\xbc\xfd\xb3\x06\xa8\x3e\x82\x4f\x95\x87\x41\x85\xde\xa9\x15\x22\xd3\x7c\x52\x4c\xcb\x49\x3a\x70\xd1\x6d\xa5\xcb\x6f\x11\x99\x66\x93\x62\xba\x98\xac\x07\x0d\xec\x0c\xc5\x45\x2b\x6e\x57\x45\x99\x5e\xe5\x38\xe0\x29\x97\x17\xe5\x9a\xe1\x93\xb4\xe5\xbc\xf1\xb8\xc6\x17\x2a\xc3\xe6\xe5\x65\x5e\xa4\x19\x66\x13\xae\x93\x6b\x6a\xe7\xe7\xcd\xcb\x57\x17\x6f\xdf\xbf\x53\x21\xe7\x06\x7a\x1a\x37\xfc\x36\xbf\x4a\x59\xf9\xec\x33\xbe\xfb\x5a\xb0\xac\x6c\x0e\x9e\xd0\xa1\xc9\x58\xcc\xee\xa6\x0c\x71\x29\x09\x27\xcc\x2e\xc4\x5e\x08\xc0\xa8\xca\x59\xb1\xe6\xd2\xeb\xe7\xa0\x3e\x47\xa3\x38\xd0\x6b\x6f\x58\x00\x68\x6f\x79\x96\xa8\xf9\xef\x71\xce\xde\xb1\xad\xd7\x98\x9f\xc8\xe5\x57\xa6\x06\x27\x29\xcd\x4e\xd6\x25\x3e\xc9\x30\x5e\x9d\xc8\xb8\xc5\x27\x4b\x56\xdc\x9e\x48\x3b\x86\xa7\x0e\x08\x64\x9e\x0a\x78\x36\x9e\x2b\x61\xff\x8f\x08\x21\xe3\xf2\x3a\xe5\x08\xcf\x4e\xe7\x93\x98\xca\x7f\xa1\xf8\xf9\xa3\x8d\xe0\xb1\x59\xac\x19\xc3\x94\xff\x51\x67\xc3\x91\xd3\x9b\x70\xb8\x2e\x65\x2a\xf1\x33\x31\xb5\x09\x0d\xdf\x7e\xad\xe5\x32\xff\xa6\xab\x15\xa6\xbd\xe3\x60\xb9\x7e\xbf\x49\x92\x60\x1b\x8e\x63\x36\x4f\x16\x05\x5d\xa4\x5c\x85\xba\xba\x8f\x37\xae\x1a\xc9\x03\xfb\xe2\x76\x4f\x7c\x71\xb3\xa6\x9f\x1f\x71\xf7\x25\x7c\x44\xbb\x8e\xff\x6d\xfa\x6d\xc2\xe1\x02\x93\x7c\xc2\x2a\xf9\x4a\xae\x17\x57\xb0\x14\x96\xdd\x6e\xd8\xc4\x17\x88\xc7\x04\x8e\x01\x4c\xd1\x78\x60\x63\x2d\x98\x5c\xf5\x32\xf4\x4b\x8a\xa8\x31\x27\x85\x47\xe9\x76\x5b\xfc\xee\x14\x98\x5d\x1a\x68\x8d\xd4\x18\x72\x74\x72\x0a\x89\x14\xb3\xa8\xb6\x2c\x4e\x9f\x15\x40\xb1\x60\xcf\xf1\xef\xd2\xe7\x80\xcc\x8e\x8f\xf9\x1c\x51\x1d\x4e\x01\x43\x7c\x8c\x0a\xfb\x5a\x25\x55\xd5\xed\xb9\x5b\x2f\xe5\x0c\x43\x27\x6a\x8b\x16\xd0\x83\xbd\x2a\x98\xee\x7d\x3b\x2c\xa6\x92\xe7\xa9\xae\xdd\xd3\xad\x5b\x3a\x6f\xa5\xfa\x9f\xe2\xc9\x0c\xcf\x21\x4f\x96\x24\xe7\x32\xf7\xc7\x8b\x66\x98\x24\x0c\xee\x85\xde\x7a\xdc\x4f\x87\xdf\x2a\x0c\xdb\xfd\x3c\xfa\x93\x24\x71\x36\x0d\x8b\x43\xcd\xef\x3d\xeb\xf5\x83\x7b\xd8\xef\x9a\x35\xe5\x29\x69\x4a\x6e\x3b\x9b\x69\xb1\x91\x8e\xd6\xbb\x87\xab\x77\x54\xe1\xb8\x16\x00\x86\xc2\xc2\xbc\x8c\x19\x80\xd8\x61\xf7\x3c\xe1\xea\xd1\x91\x7f\x68\x65\xc4\x22\xff\x93\x40\x44\x27\x3e\x1f\x05\xe8\x05\x1e\x8d\x58\x4c\x21\x07\xe2\xdd\x38\x91\x4e\x96\xf7\x45\x44\xb5\x44\x21\xda\xf4\xb7\x38\xd0\x19\x5e\xdc\x33\xec\x84\x1b\x6d\x46\x87\x28\x36\xe1\x9f\x30\xb4\x2a\x79\xc8\xd1\x3b\x29\x7e\x8b\xc5\xda\x91\xf2\x5d\xfa\xce\x09\x33\x58\x27\xbe\x91\x1e\x48\xa7\x00\xf2\x93\x7b\xe6\x8c\x5b\x3c\x19\x96\x67\xac\x58\xdd\x7f\xcd\x0c\xf1\xdb\x6e\x63\x19\x57\x4c\xbc\xab\x14\x81\xbf\x17\x3e\x89\xc1\x3c\xd9\xcc\x31\xe5\xec\x00\x21\x4f\x93\xfa\x1b\x82\x66\x92\x0d\x6a\x70\x52\x5e\x71\x9f\xb9\x7f\xc6\x77\xe5\x93\xcd\x5d\x5d\x49\x27\x57\xe1\x08\x5a\x9d\xc4\xad\x54\x4c\x6f\x7f\xe2\x36\x93\xe2\x3e\x75\xb8\x8e\xda\xfc\x85\xff\x45\xe6\x57\xa1\x88\xc1\x3a\x6b\x89\x7f\x20\x31\xd8\x6e\xfd\x2f\x14\xd4\xec\x88\xe4\x71\x2c\x47\x81\x9a\x77\x2d\x03\xd3\xc8\x8c\xac\xf6\x32\x66\x53\x8e\x5e\xb0\xd8\xf1\x18\x83\x18\x80\x09\x45\x2f\x42\xc4\x58\x54\xa0\x10\x03\xc8\xc0\x84\xa3\x17\x86\xfa\x9a\x76\x90\x9a\xbb\x9e\xdc\x0b\xfd\x55\xe3\x9f\xee\x42\xc1\xb2\xbe\x23\xfa\xd4\x3e\x34\xf8\xee\xe3\xdf\xde\xa5\x23\x3e\x9d\xcd\x27\x35\xeb\xf3\x1d\xcb\xf1\x9d\x67\xa2\x19\x1f\x6a\xd7\x62\xd0\xac\x71\x22\x0e\x58\x0d\xc8\xba\xd7\x43\xac\x45\x7d\x9b\x27\xa2\xa3\x9f\xee\xd4\x65\x77\xaf\x65\x11\xcd\x9f\x8e\x54\xe4\x29\xe7\xb8\xb7\x4c\xc3\x59\x96\x66\xd0\xda\x0e\x8e\x84\x09\x8e\xc4\x3c\xf9\xc4\x39\x05\x70\x36\xbf\x27\x11\xd5\x83\x3d\x6c\x71\x5c\x7e\xc4\xb9\xd3\x04\xd6\x82\xef\x58\x37\x56\xdc\x9e\x1c\x78\xc7\x3c\xb0\x37\x4e\x8f\x59\xda\xeb\x4b\x0c\xf7\xcc\xbd\xc2\xc0\x5e\x8f\x85\xce\xa9\x5f\xb3\x62\xbd\xba\xff\x51\x72\xc3\x93\xda\x10\xd2\x26\xfb\x0e\x47\x2f\x5a\x91\x76\x25\xed\x25\x88\xcd\xe8\x7c\xe0\xbf\xc2\x08\xd8\x6e\x63\x82\x66\x73\x28\x83\x98\x12\x00\xb5\x95\x81\xe0\x33\x21\xbb\x0f\x8a\xc9\xc9\x3d\xe1\xf9\xbb\x49\xcb\x13\x8a\xbf\x85\x13\x29\x77\x37\x53\x4d\x7a\xdf\xe8\x3b\x6a\xde\x57\x1a\xb6\x3f\x64\x8c\xa7\x08\xa2\x90\xa0\xa3\x53\xb0\xa1\xd2\xf6\x74\x36\x57\x16\x23\x85\x92\xe8\x8b\xd9\x00\x55\xc9\x08\x0d\x8e\x7c\x2f\xcb\x02\x62\x48\x1c\x96\xc2\x5c\xfb\xc5\xbd\x68\xec\x4d\x5a\xbe\xc3\xdf\x38\x22\xe1\x4d\x2e\xf6\x9c\x30\x25\x9d\xf3\x85\x6c\x5c\x0b\xd9\x98\x2f\x64\x2b\x2a\xe4\xc7\xe3\xa8\x75\xf8\x44\xda\x3e\x15\x0d\x2a\x54\x1c\x8c\x3d\x2b\x86\xbf\x90\x62\xdd\xf7\x21\x6b\xfe\xad\x9b\xfd\x57\xc1\x22\x33\xa3\x27\xc6\xa4\x0f\xba\xdb\x7f\x7c\x6c\x22\xf4\xef\xec\x7d\x7d\x7c\x2f\x2e\x81\xd0\xa7\x7b\x5f\x13\xca\x31\x2b\xf1\xfd\xa4\x8c\x9e\x5c\x7c\x68\xb3\x39\xb4\xd9\xa9\xc9\x6c\x0e\x94\xaf\xbf\x61\xb9\xc5\x3d\x69\x43\xb6\xa3\xf1\x73\xf6\x3b\xa3\x19\x78\xce\x8c\x06\x5c\x86\xcf\x22\x2a\x82\xbb\xa9\x8b\xd1\xf8\x39\xfe\x1d\x31\x75\xb1\x0a\x39\x40\x66\x78\x8e\x10\xe2\x60\x43\xd1\xd1\x78\x70\xc5\x70\xfa\xb9\x12\x6f\xba\x53\x27\xae\xfd\xd1\xa9\x0e\xf5\x2e\x96\xf9\x7e\xfb\xa2\xd7\xea\x09\x77\xe7\x4b\xf1\xf9\x31\xed\x9e\x54\x07\x9d\xd1\x8f\x37\x69\x9e\x5b\xad\x5d\xf2\xf1\xfc\x8f\x1f\x1a\xaf\xe7\x24\x49\x58\x1d\x09\x55\x87\x73\x08\x72\xd5\x14\x4c\x1d\x9f\x06\x25\xf0\xa7\x12\x63\xb8\xc1\x18\xce\xee\xde\xca\xf1\x08\x8e\x09\x32\x50\x5b\x8b\x89\x07\xab\x1b\x9b\xc5\xeb\xa1\x6e\x46\x95\xdd\xfe\xf7\x84\x42\xee\xde\x8b\xbf\x14\xe4\x3e\xaf\x8c\x2e\x49\x54\xf3\x90\x58\x5a\x13\xc1\x08\x40\xae\x7c\x41\xee\xf7\x30\x15\x4d\x9f\x0c\x45\x3f\xe3\xbb\x07\x93\x51\xc9\x0c\xba\xff\x10\x02\xaa\xdb\xf4\xfb\x1e\x10\x3b\x5e\xe2\xb1\x2b\xad\xf4\xce\x87\x95\xff\xdc\x0b\x2b\x64\x4e\xda\xa7\x5c\xa0\x47\x59\x1d\xb5\x24\xf7\x3b\x17\xb7\xe9\xd3\x49\x6f\x0f\x78\x12\xd5\x19\x62\x74\x70\x99\x27\xe0\x52\xbb\xb6\x40\x1b\x40\x4a\x1e\x95\x6d\xb7\x31\xb3\x3c\x2a\x69\x64\x05\x60\x10\x2b\x5b\x69\x63\xe7\x7e\x72\xea\xe5\x38\x52\x9b\x46\x2c\x77\x44\x10\x42\x85\xb5\x08\x96\x82\x26\x1b\x95\x86\x1c\x9f\xde\x6b\x43\xc5\x22\xdf\x57\xb7\xb3\x8b\x6b\x25\x21\xae\x95\x85\xb8\x56\x1a\x73\x48\x5a\x5c\xeb\x61\x5a\x21\x5a\xdc\x4b\xc5\x61\xb5\x72\x00\xbd\xd8\x54\xf7\x5a\xbe\xe2\x09\xd5\x19\x3a\xad\x4c\x7a\x1f\x46\x53\xca\xf0\x5b\x16\x00\x35\xe7\xdd\x0a\xa7\xe7\x24\x01\xb3\x48\x76\x3f\x9a\x61\x9a\xdf\x5f\x64\xe7\x4a\x5e\xb5\x9b\xd5\x77\x88\xed\x54\x72\x2f\xf1\x96\xfd\x9e\x2b\x37\xa0\x69\xc0\x53\x3c\xc1\xe8\xc5\xbd\xae\x5e\x33\xa8\x27\x43\xa6\x15\x59\x85\x8c\xd9\xfa\x48\x0d\xc8\x0a\xf7\xa2\xb0\x0d\xab\xad\xa7\x0b\x3d\xc2\x13\x31\xc6\x81\x25\x37\xa3\x51\x4c\x67\xf6\xd7\x1c\x1d\x8d\xc1\xf7\xc4\x91\xdf\xb7\x34\x87\xe9\xdb\x56\xac\xb8\x25\xe5\x3e\xef\x81\x3e\xe6\x04\x52\xea\xce\x6f\x30\x8d\x99\xd4\xf9\xfb\x26\x05\x32\x29\x54\x33\x47\x92\x34\xd5\xa8\x5f\x9f\x8e\x11\x01\x24\x00\xbd\x10\x4f\x71\x32\xd5\xd5\xa4\x19\x01\x05\xd0\x38\xaf\xdf\xef\xfd\x27\x5e\x19\x6f\x74\xf7\xf2\xd1\x24\xd6\xec\xb0\x1b\xe8\x7b\x36\xe8\x30\x41\xd9\xdf\x2b\x5f\xd1\xcd\x4d\xec\x64\x20\xd4\x76\x76\x30\x10\x27\xf7\x63\x20\xcc\x8a\xfe\xe3\x33\x11\xff\xa9\x13\x3f\x3f\xf2\xe9\xed\x3a\x87\xac\xdf\x39\x64\x60\xe2\x74\x44\xf7\x51\x02\xc1\xda\xe8\x76\x60\xa2\xff\xa8\xbe\xff\x1c\xcb\xb5\x7a\x32\x25\x36\x53\xc1\xdd\x0e\xd8\x19\x69\x3f\xc7\x48\xd9\xbe\x76\x7a\x58\x32\x50\xe4\xa4\x56\xf7\xf3\xa5\x52\x30\x1a\xd1\xda\xd1\x95\x2c\x63\xfc\x3b\x66\x9c\x4d\xe8\x94\x27\x39\xc7\x13\xf1\xff\x3a\x11\x3e\xc2\xcf\x0b\x69\xcf\xaf\x82\x7b\x5a\xe5\x94\x68\xfb\xc2\x6b\x7b\x2d\xdb\x5e\x87\xdb\x9e\x9c\x38\x6d\x2d\xd3\x86\x10\x1b\x8d\xe8\x68\xa4\x8b\x18\x80\xe4\x3e\xdb\x29\x17\xf8\xe9\xb6\x53\x62\xf7\x23\x69\xe1\xad\xab\xf2\x7d\x95\xef\xaa\xf9\x93\xf1\x61\x0c\x4b\xa6\xfe\xe9\xec\x74\x5c\x23\x9a\xfb\x18\xec\x58\xbd\x0b\x3c\xc8\x02\xe7\x28\x68\x82\x73\xd4\xc7\x06\xe7\x61\x4d\x70\xd4\x82\x3f\xa1\x09\x0e\xc3\x2b\x7c\xaf\x37\x9b\x27\xca\x31\x5e\xc1\x47\x0d\x8a\x24\xb0\x9e\xcf\x27\x4a\x29\xae\x92\x2f\xcb\x98\x90\x1b\x25\x52\x98\xe0\x0a\x48\x79\x8f\xb8\x08\xee\x7b\x20\xc4\xf8\x9f\xf0\x40\x7c\xc1\xac\x7f\xbe\x98\x0e\x81\x68\x4b\x81\x52\x47\xc4\xd7\xf6\x8b\x63\x90\xe8\xae\x62\x30\x99\xe1\xf9\xfd\x96\x46\x02\x78\xb2\xb5\x29\x6f\xd6\xcb\x65\x7e\x9f\xb5\x91\xb4\x41\x6a\x8a\xa4\x02\x55\xa5\x51\xd3\xeb\x00\xb4\xf8\x49\x87\x42\x76\x4f\x70\x33\x5b\xf8\x68\xc4\xb7\x5b\xe9\xa5\xcf\x52\x9a\x15\xb7\xcf\xc9\x8b\xd3\xe7\x80\xb9\x8e\xfb\x3c\x06\xff\x83\x9c\x9c\x00\x48\x11\x9e\x91\x39\x14\xff\x93\x0a\x28\x88\x65\xb6\x60\x9b\x47\xe7\x3e\x0b\xae\x17\xe0\x61\x44\x09\x56\xdb\xc8\xa4\x3f\x92\xab\xa5\x6c\x52\xc1\x29\x17\xfc\x35\x98\xcc\xd8\xfc\x7b\x44\x0f\x72\xc5\xbf\x43\x4d\xa8\x99\x02\x5f\x49\xd4\x36\xcd\xbd\xb7\x57\x8d\x6c\xfe\x74\xd8\x5c\xb0\xe6\xc5\xf7\xe4\xa6\x53\x26\xcc\xa8\x76\x3d\xb0\x5e\x57\xf6\x78\x00\xc8\x10\x57\x0b\x0e\x67\x74\x8e\x8c\x3b\x48\xdc\x7d\x4c\xa8\x63\xc4\x6a\x2e\x56\xa5\x9c\xa2\xed\x08\xd2\x3a\xc2\x2d\x6b\x97\x88\xe5\x11\xd3\x54\x19\x3b\xda\x8a\x75\xf5\xa5\xb1\x1c\xaa\xa9\x8e\x7c\x12\x41\x81\x15\x81\x1b\x99\x4f\xfb\x34\x56\x75\x4c\x86\xfe\x44\x8c\x27\x36\xe3\xe5\x00\x4c\xbe\x17\x86\x33\x43\xe0\x87\xef\xec\x11\x4c\xb7\x13\xab\x78\xda\x5f\xdd\x7b\x80\xb9\xfb\x18\xde\xef\x48\x89\xe1\x3c\x99\x81\x2b\x2f\xae\xaf\xf3\x7b\x8a\xf5\x54\xdb\xbf\x77\xc1\x9e\x1a\xe5\xdf\x40\xb4\x67\x96\xe7\x7e\x8f\x16\xad\xe4\x6f\x3e\xfb\x41\xd0\xd0\xd1\xf5\xd4\xab\x39\x6b\x23\xf5\x61\x4e\xea\x76\x58\xa0\x50\x40\x26\x95\xe2\x7d\xbb\xe5\xc7\xe2\x0f\x3c\x1d\x4f\xf8\xf1\x69\x15\x1b\x35\x53\x6d\x17\xe5\xa4\x51\x90\xf6\x02\xb3\x62\x6e\x1f\x97\x7e\xd1\x11\xbd\x9f\xa0\x40\x2d\xdb\x93\x5d\x29\x6b\x7a\x80\x73\x76\x5f\xff\x54\xf3\xde\xd0\xc8\x8d\x5e\xd4\x5b\x80\x81\xb4\x99\xb9\xcf\xca\xc8\xa1\x3e\xd9\xc2\xc8\xae\xff\x11\xac\x94\xd5\x40\xbf\xdb\x40\xf9\x2b\xe1\x37\xc5\xfa\x30\xfd\xf1\x77\x79\xf6\x35\xfd\xf4\x58\xc8\x4f\xaf\xce\x57\x3c\xad\x43\xaa\x31\xe9\xb1\xe7\x86\xcf\xe9\xe3\x2d\x28\x5f\xc8\x53\x36\x61\x06\x55\xa9\x32\xaa\x77\x64\xbb\x7a\x0d\xee\xeb\x83\xaa\x9b\x1f\xf6\x4e\xee\xf2\xfc\x63\x01\xcf\xbf\x7e\xcf\x68\x2d\x79\x3f\xe8\x2e\x33\x7e\xea\xbd\x1d\xbb\x0f\xf0\x24\x3e\xc0\x99\xf6\x10\x0f\xd4\x9e\xae\x8f\x7d\xdd\xfd\x0e\x72\x10\xeb\xef\x46\x74\x80\x8f\xcd\x01\x7e\x27\x87\xf8\x1b\x1c\x62\x4e\x7f\xa8\xf1\x74\x4f\xf3\xd8\x83\x4c\x42\xfb\x5b\x28\xf6\xb5\x9f\xeb\x6f\x5a\xd5\xd3\xc6\xe8\xfb\x5d\x0d\x02\x16\x0a\x87\xe8\xe1\x0f\xd4\x56\x7f\xbf\x8a\xba\xad\x0e\xec\xad\x1e\xea\xad\xad\xe8\x2f\x07\x3f\x48\x48\xdc\x5f\xde\x78\x80\xa8\xed\x00\xc9\x53\x6f\x21\xc7\x01\xef\xff\xbe\x8f\xba\x83\x1f\x40\x0f\xf1\xea\x69\xb0\x96\xfd\x59\x8f\x80\x5f\x03\x24\x26\xb1\x20\x5c\xc3\x05\xcc\xe0\x0d\x5c\xc2\x15\xbc\x85\x5f\xe0\x35\xbc\x82\x77\xf0\x12\x7e\x85\x67\xf0\x1b\x7c\x0f\xcf\xe1\x05\xfc\x05\x7e\x80\x2f\xe1\x2b\xf8\x19\x7e\x84\x7f\x81\xaf\xe1\x3b\xf8\x16\xfe\x0c\xdf\xc0\xbf\xc2\x5f\xbf\x97\x61\xeb\x6c\xf0\x52\x5e\x9d\xea\x52\x8f\xe0\x06\xd3\xf5\x2d\x66\x62\x9e\x93\xa3\x31\xbc\xc6\x3c\x60\x43\x6c\x79\x94\x6a\x17\xe0\x57\xe2\xa6\x3d\x08\x2e\xeb\x07\x57\x5d\xcc\x07\x41\xa6\xbd\x21\xaf\x39\x3e\x08\x32\xe9\x09\x59\x5d\xfb\x07\x81\x2e\x7a\x81\x7e\x8d\x17\x07\x41\x4d\xfb\x41\x65\xc5\xea\x20\xb0\x65\x2f\xb0\x6f\xb4\x3b\xf4\x41\xa0\xf3\x03\x40\x1f\x04\x78\xdd\x13\x30\xcd\x0e\x1c\xf1\xa2\x1f\x60\xc5\x0e\x1d\x04\x39\xeb\x05\xf9\xdf\x94\x43\xe3\x41\x90\x6f\x7a\x41\xfe\xbd\xf2\xa2\x3b\x08\xf2\xb2\x2f\x64\xe3\x55\x75\x10\xf4\x55\x2f\xe8\x6f\xe9\x61\xa7\xe4\xb6\x27\x54\xcd\xf6\x1d\x04\xfb\x4b\x4f\xd8\x82\x4b\x3c\x08\xf0\x75\x2f\xc0\xff\x5e\x90\xc3\x70\xee\xaa\x17\xd8\x5f\xd2\x43\x31\xee\xae\x2f\xdc\x83\xa0\x5e\xf6\x82\x7a\x30\x12\x7f\xed\x05\xf6\xbd\xb6\xae\x3a\x08\xf4\x59\x3f\xd0\x9a\x7b\x3e\x08\xf4\xb7\x5e\xa0\x3f\x90\x15\x7e\x29\x5b\x1e\x04\xfc\x7d\x6f\xe0\x07\x81\x3d\xef\x07\xf6\x3e\xb4\xe2\xa2\x17\xe8\xff\x2d\x18\xff\x83\xe0\xfe\xd2\x0b\xee\x47\xf1\x4e\x38\x08\xee\x87\x7e\x70\xe5\xb3\xe2\x20\xc0\x2f\x1d\xc0\xdd\xbc\xe4\x47\x6d\x39\x71\x10\xe8\x57\x3d\xc7\x2c\xde\x2c\x07\x01\xfe\xdc\x13\xb0\x7c\xe2\x1c\x04\xf9\x63\x2f\xc8\xe7\xea\x45\x74\x10\xe4\xbf\xf4\x83\x2c\x1e\x50\x07\xc1\x7d\xdd\x0f\x6e\xc1\x0e\xdd\xbd\x77\xbd\x00\x5f\xa4\x07\xde\x4c\x6f\xfb\x81\x95\x6f\xb3\x7b\x50\xa2\x9f\x0f\x00\x7f\x10\xe0\x37\xbd\x00\xff\x4a\x0f\x1d\xf0\x5f\x7b\xc1\xfd\x93\x7a\x58\x1e\x04\xf9\x57\x07\x72\x2f\x71\x6b\xcb\x7e\xf2\xf1\x54\x06\x39\xc7\x41\xf5\xd5\x10\xff\x0e\xf1\x4a\x56\xe8\x2a\x97\xc5\xd7\x9d\xed\x5f\x20\x5d\xa1\xab\x3c\x9c\x3c\x61\xbf\xfd\xf7\xc3\x9b\xe8\x3d\x48\xa8\x58\x37\xe2\x3e\x1b\xd0\xd1\x28\x36\xfa\x4f\x69\xf0\xb4\x24\x34\x8b\x71\x33\xe0\x95\x6a\x05\x4c\xfc\x04\xa7\xbe\xd1\x6e\xd5\x7a\xc2\xe2\x05\x1a\x4f\x0b\x15\x66\xf8\x80\x95\xb3\x1a\x95\xa7\x8c\x9b\x0b\x5d\xa7\x86\x58\xc6\x02\x90\x83\xd8\x6e\xeb\x70\x86\x40\x9b\xca\x49\xa5\xc4\x21\x13\xb2\x71\x30\x9e\x72\x42\x1c\x32\xe5\x4e\xa8\xe5\x22\xd3\x7f\x3f\x7f\xff\x2e\x51\x49\x43\xc8\xf2\x4e\x69\x21\x1b\xdf\xb8\x51\x05\x91\x52\x5a\xcf\xcb\xa9\x3a\xc1\xd5\xe4\x37\x0e\xf1\xa1\xd3\x57\x22\xde\x27\x0e\x84\xac\x4d\x20\x75\xdf\x4d\x7b\x1b\x0c\xb6\xdb\x88\xd0\x92\xa7\x74\x81\x03\xa5\x07\xce\xd0\x98\xf4\x1f\x78\xd8\xf5\xe0\x9e\xe0\xb4\x77\xd9\xfc\x8f\x46\x75\x1d\xb4\xa9\x42\x9e\x6a\x8d\xa5\x91\x3e\x02\x60\x34\xda\x55\x65\x91\xf2\xc5\x0d\xa8\xba\xd6\x91\x2a\xcf\x8d\xc5\xdd\x49\x86\x17\x85\xca\x9b\x12\xd2\xd9\xfd\xab\x6a\xe0\x54\x52\x2b\x67\x3f\x38\x8b\x6c\x61\x86\xbe\xb9\x20\xf2\xb4\xd4\xce\x36\x07\x46\x91\xd9\xe5\xc5\x57\x7b\x4d\x15\xa2\xa2\xc9\xb9\x11\xc0\xc7\x40\xe3\x84\x50\xc2\x49\x9a\x93\xbf\x62\x36\xf5\x7e\x25\x8b\x34\xcf\x63\x6d\x60\x38\x09\xb6\xbd\xc6\x7c\x2a\xff\xef\xd7\xc5\x4a\x29\x3e\xd5\xff\x4e\x74\x52\x63\x3f\xf2\x0b\xd8\x6e\x77\x9d\x18\xd3\xc7\x68\x24\x68\xf8\x91\x8c\xb0\x42\x62\x9c\xac\x30\x5b\x16\xec\x16\x54\x31\x07\x53\xe9\x5d\xc3\xd3\xf2\x33\x10\xe4\x43\x77\x63\x57\x23\x8d\x1d\xc4\x53\xf5\xa4\x60\x09\xb8\x89\x5f\x4b\x71\xad\x38\xc8\xa7\x71\x54\xef\x98\xe0\x60\x3e\x48\xbf\x27\x10\xc7\x5c\xca\xc3\x67\xc5\x1c\xcd\xe6\x00\xbd\x50\x0b\xbd\x71\x56\x6c\x92\x42\x35\xe1\xb2\x42\x36\xec\x63\x86\x73\xcc\xf1\x90\xb8\x4b\x0b\xed\x47\x59\x1f\xfa\x07\xd0\x64\x96\xf0\x23\x24\x48\x63\x57\x6d\x57\x34\x2c\x96\x43\x56\x57\xc4\x33\x3a\x1f\x1c\x49\xc3\xd0\x29\x9f\xd1\x79\x0c\x26\xf2\x1f\x66\x6d\x63\x78\x15\x6f\x92\x24\x61\xe2\xaa\x29\x2a\x88\xe5\x2f\x02\xc3\x63\x07\x40\x4d\x15\xdc\x27\x64\x4a\x67\x03\x81\xfa\xd2\x5b\xea\x3e\x22\x6f\x9c\x60\x2a\xf5\x59\x17\x66\x13\x11\x4e\x3e\x63\xbc\xfa\x39\xe5\xb8\xe4\xee\xd7\x8c\x15\x2b\xf7\x37\xc3\x32\x4b\xb0\xe8\xcc\xfd\xcc\x9d\xbf\x1d\xd8\x2d\xb0\x0e\xc4\x36\x30\x0d\xc7\xb7\xfa\xca\x51\x19\x17\x60\xa0\x8b\x72\xfd\x75\x2d\xbe\xc2\x8d\x03\x40\xae\xd7\xa0\x0d\x73\xad\x5b\x2c\x54\x0b\xd1\xbb\xa9\x6a\x47\xb2\xd0\x75\x32\x55\xa7\x1e\xb2\xa9\xd9\x98\x44\xa6\xeb\xdf\xa8\xfa\x7a\xc2\xa6\xb2\x3b\xff\x1b\x5d\x73\x89\xca\x38\x35\xb3\x50\x0b\xb5\xb4\x39\x2c\xca\x38\xed\x33\x15\xd5\xac\x4e\x6d\x21\x9b\x85\xe6\xa3\x2a\xde\xea\x8a\x5f\x54\xc5\x7d\x93\x52\x8d\xbe\xe8\x46\xd7\xaa\x51\xf7\xcc\x54\xf5\xeb\xde\x57\x82\x43\xaa\x0f\xbc\x17\x1e\xed\x46\xf5\xec\xad\xda\x84\xea\xa3\xca\x4e\x91\x59\x82\xd5\xb8\x5f\x66\x74\x0e\x02\x44\x8b\x54\x88\x0d\x34\x41\x62\x2e\x95\xf2\x6d\xee\x8c\x49\x6c\x4c\x8f\xa3\x44\x2c\xce\xf9\x7a\xb1\xc0\x65\xb9\x5c\xe7\x91\x97\xbb\xd8\x64\xe0\x76\x6c\x04\x6f\x48\x09\x03\xcd\xec\x75\x80\xa7\x75\x65\x0c\x23\xb5\xea\x60\x42\xa6\x44\x5d\x2c\x02\x80\xa5\xef\x00\x98\x94\xa0\xfb\x0d\xdb\xed\xce\x3a\xb6\xa0\x32\x5b\xb6\x64\x89\x34\xe3\x64\x58\xa3\x30\x03\x15\x00\x21\x8e\xc4\x89\xe5\xdf\x76\x56\xc5\xdf\x38\x66\x34\xcd\x9f\xdd\x11\x9c\x67\xa2\xd7\x47\xc9\x90\x79\x93\x96\x37\xe7\x98\xf3\x1c\x67\x48\xfd\x12\xc4\x2a\x5d\x60\x84\x93\x34\xcf\xeb\xa2\x34\xcf\x9b\x36\xaa\x8b\xb8\x0e\xf5\x94\x7c\x50\x4b\x02\xa3\x34\xcf\x23\x98\x8b\x05\x16\x4d\xa8\xae\x4d\xbc\xda\xb2\x96\x86\x5d\x57\x36\x9d\xd5\xc9\x89\xc2\x3d\x88\xe1\xe9\x56\x72\xa4\x26\x45\x4e\xda\xe8\x43\xcc\x26\x82\x6b\x51\x4f\x4e\x2c\xd5\xf5\xca\x40\x3d\x3b\x98\x35\xa8\xd9\xa7\xdc\x09\xfb\x8a\xbd\x24\x45\xb5\x28\xd8\xbb\x6a\x4d\x08\x1e\x3c\xe3\x73\xe0\x67\x29\x12\xd7\x62\xcb\x2a\xb6\x50\x4f\xd9\x14\x11\x41\xf8\x53\x1b\x18\x14\xa3\x17\x1b\x3c\x1a\xe1\xa1\xc1\x95\x62\x39\xe4\x89\x20\x46\x6f\xf5\x87\xd1\x28\xc6\x09\xfe\x86\x17\x6b\x5e\xb0\x24\x2d\xef\xe8\xe2\x8c\xb1\x82\x95\xbf\x4f\x69\x26\x16\xf1\x68\x0c\x2a\xf5\xe0\x2d\x9d\x88\x5c\x02\x37\x30\x8b\xc1\x40\xdc\xfc\x71\x01\x94\xeb\x6c\x29\xe8\x6f\x91\x7f\xc1\xb0\xd4\x4e\x63\xaa\x65\x8e\x8e\x4e\xe1\x1a\xc9\xa0\x21\xf9\x76\x1b\xe7\xe8\x68\x0c\x5b\xa3\x8c\x77\x0c\x73\x2a\xb8\x6a\x71\x6c\xe2\x30\x23\x38\x63\x49\x7d\xac\xce\xef\x6e\xaf\x8a\x7c\x3e\x1a\x05\x3f\xc7\x40\x66\x29\x87\x0b\x54\x26\xfa\xfc\x89\xe7\x7e\x9a\xe7\x77\xf1\xda\x12\x84\x45\xa8\x29\x5a\xc3\x45\x55\xf9\xc8\x5e\xf6\x3c\xf5\xaa\x08\xd3\x2f\x84\x15\xf4\x56\xb9\x1a\xf4\x3b\xec\xf6\x04\xbb\x8d\x1f\x9c\xc4\x9f\xfd\xf2\xd3\xd9\xc7\xcb\xb3\x77\x7f\x7c\xfb\xf1\xfd\xbb\x5f\xce\xde\x5d\x20\x9c\xc8\xfd\x3e\xab\x7b\xb5\x07\x37\x4f\xcb\x72\xc8\x86\xca\x15\xa4\x1c\xf2\xc4\xa9\xb4\x49\xcb\x12\x33\x6d\x08\xbc\xa9\x24\x4a\x09\x44\x57\xc8\x63\x33\xce\x0b\x64\xa8\x3f\x15\x74\x81\x95\x17\x1e\x06\x82\x67\x14\xcb\xf2\x2b\x5d\xa4\xeb\xeb\x1b\xae\x84\xe8\x9a\x4b\xaf\x9b\x50\xfc\x8d\xab\x26\x2e\xed\xaf\x9d\xf9\x0b\x8a\x05\x22\x03\x7e\xc3\x8a\xaf\x43\x3c\xf0\xbe\xaa\x38\xc6\x95\xc6\x62\xdf\x05\xce\xc5\xef\xea\x3a\x2f\xae\xd2\xfc\x35\xbe\x5a\x5f\x5f\x13\x7a\x7d\x46\x05\x3a\x64\xcd\x26\x67\xef\xfe\x98\xbc\x3e\xfb\xe9\xd7\x7f\xbb\xbc\x78\x79\xfe\x87\x73\x81\x23\xad\xb5\x63\x96\xde\x51\xfc\x75\xc8\x06\xa1\x25\x0f\xda\x77\xf6\x45\x89\xc7\x13\x30\x04\x50\xc0\xff\xa8\xd2\x20\xeb\x8d\xb7\x9b\x0e\x36\x9d\x3b\x09\x36\x76\xed\xbb\x97\x38\x9c\x6a\x69\xd7\x72\xd8\x44\xa4\x27\x25\x7f\xdc\xdc\xad\xff\x66\x7a\x3a\xe7\x2a\x59\x9f\xf3\x01\xaf\x3e\xe2\xd2\xf5\xc5\x90\xc7\x85\x37\xd2\x44\x73\x9b\x26\x5d\x02\x36\x49\xd2\xb3\x82\x62\xc4\xd5\xdf\x12\x55\x71\x86\x98\x40\xa8\x50\x07\x7c\xd0\x1a\x49\x20\x23\xb5\xee\x46\x42\x3e\x3a\x55\xa0\xed\x4a\xbd\x49\x45\xa5\x3b\xd3\x3d\xe1\xea\x33\x92\x82\xcb\x92\xe3\x95\xce\xe7\xce\xee\xb4\xe7\x85\x6e\xce\xdf\xea\x9a\x31\x30\x4b\x43\xa0\xe8\x62\x52\x54\x88\xce\xd8\xdc\x79\x6c\x17\x53\xd9\x48\x52\x59\xf2\x57\x1c\x13\x78\x74\x0a\x26\x32\x03\xb5\xfc\x5b\x26\xf5\x94\x52\x93\xb8\x91\x6f\xd9\x36\x51\xa9\x95\x2b\xaf\x5f\xaf\xa6\x19\xf8\x76\x6b\x27\xbb\xdd\xc6\xfe\x9c\x82\x33\x8f\x8d\x27\x95\xa9\x56\xd9\x4e\x71\x33\x0f\xb5\x5a\xc2\x71\x60\xa9\xa0\x9a\x0d\x86\x47\x32\x35\xf5\xc1\x98\x6b\x92\xf7\xb2\x67\xab\x22\x27\x0b\x82\xcb\x67\x57\xc5\x9a\x66\x38\x3b\x91\x1f\x9e\xdc\xe7\xaf\x1b\x8f\x6e\xd3\x6f\xaf\xea\xb9\x20\xbc\xdd\x9e\x56\xd5\x3e\xb7\x83\x03\xe7\x2e\xde\x65\x81\x89\xf7\xbb\x27\x7b\xac\xe5\x7d\xe1\x28\x4e\x89\x14\x54\x11\x98\xa7\x48\x36\x6f\x6e\x0d\x29\x42\xba\x4d\x3f\xe3\x57\x92\x2d\x91\xa7\x1d\xc4\x11\xe1\xc3\x2b\x9c\x17\xf4\xba\x1c\xf2\x62\x98\x0e\x7f\x23\x96\xee\x37\x43\xc1\x3c\x0d\xf9\x4d\xca\x87\x5f\xd3\x72\x98\xe6\x0c\xa7\xd9\xdd\x90\xad\x29\x25\xf4\x3a\x02\x9a\x26\x91\xe0\x06\x33\x7c\x9b\x12\x51\xef\x3c\x2f\x78\x89\xb0\x22\x03\xfe\x49\xf0\xeb\xbc\x18\x4f\xe3\xc0\xe7\x93\x13\xc8\x92\xf3\x8b\x97\x1f\x2f\xce\x5e\x83\x09\xad\x2a\xd5\x6b\xe1\x30\x0e\x7a\xb2\x1b\x31\x31\xa5\x86\x77\x0e\xb6\x38\x53\x24\x0e\x20\x9d\x0e\xb7\x9a\xa2\xc2\xc1\xbb\xf4\x01\xf0\x4e\x3f\xd7\x43\x87\xee\xff\x97\xb8\x27\xf7\x8b\x3e\x25\x96\xb0\xe4\x7f\xff\x7a\xf6\xeb\xd9\x6b\x83\x2c\xe4\x10\x64\xa1\x3b\x90\xa5\x40\x64\x5f\x8c\xef\xef\xdd\x90\xc7\x23\xd1\x8d\x73\x8f\xb0\x5e\x25\x84\xcd\xca\x21\x9c\x5c\xfc\xc7\x87\xb3\x4b\xfb\x5d\xfe\x6a\x14\xbe\x7a\xf9\xee\xd5\xd9\xcf\x3f\x9f\xbd\xae\xd9\xb8\xc6\xf7\xc8\xfe\x19\x0d\x1a\x30\x22\xfd\x87\x2d\xd0\x5d\x45\xea\xdf\xc8\xe6\xda\xde\x88\x57\xd9\xc4\x56\x17\x77\x83\x81\xc1\x6d\xd6\x62\x5d\x49\xb7\x15\x75\x34\x38\xc1\x19\xb7\xa6\x8b\x5e\xc4\xba\x41\x3d\x3e\xc8\x70\x5a\x16\x74\x82\xc3\x7a\xfa\x03\x37\xf3\x33\xc6\xab\x93\x5c\xca\xf6\xfe\xfb\xf0\xdf\xeb\xe2\xa9\x85\xa3\xf7\xbc\x7e\xc4\x33\x36\x48\x5a\x14\xbf\x45\xd7\xb7\x17\x85\x1a\x03\xe2\x0f\x44\x6d\x9a\x80\x6d\x23\xe7\xdb\xc9\x09\xa4\x6d\xba\xb4\xef\x12\xab\xc3\x87\x20\x7c\x6c\x33\x62\x76\xde\x68\x90\x9d\x04\xbe\x9e\x9c\x3e\xda\x4d\xe7\x48\xca\xff\x1b\xdf\xef\x85\xef\xce\x0a\x36\x11\xde\x28\x09\x63\x80\xb3\x61\x7a\x9d\xca\xc4\xe9\xbb\x58\x2e\x17\xb7\x83\x37\x69\x4f\x1c\xd5\x88\x7d\x10\x92\x7a\xa8\x89\x8f\x79\x08\x11\x1f\x0d\x0d\xd7\xb4\xfb\x99\xf3\x68\xc8\xf3\x48\xa8\xc3\xa4\x64\x47\x3d\x9c\x1a\x5b\x58\x6f\x8c\xf6\x04\x56\xb5\x82\x8c\x0c\xf3\x5e\x53\x07\x8b\x84\xea\xf5\x60\x78\xc9\x70\x79\xf3\x8f\xb9\xa4\x4a\xc7\x14\x78\x85\x3a\x82\x13\x39\x94\x0b\x96\x2e\x3e\xcb\x94\x78\xea\x9b\x19\xfb\x07\x89\x4f\x56\xae\xa1\xb4\x4a\xae\x4c\xb9\x44\x0c\x1a\x30\x8c\x13\x7a\x5d\x17\xcc\xe6\xd5\x8a\x15\x0b\x5c\x96\x2a\xe0\x84\x0e\xa3\x87\xb4\x4c\x22\xe7\x98\xbd\x21\x94\x94\x37\x38\xf3\x20\xc6\x00\x6a\x01\x49\x63\x18\x89\xbb\xd3\x62\x02\x90\x20\xec\x24\x41\x56\x6d\x30\x77\xa1\x9d\x99\x25\x97\x14\x28\xc6\x90\x26\x0a\xab\x9c\x1c\x15\xcd\x55\x30\x4a\xb2\x37\x84\xa6\x8a\x72\x95\x16\xbc\xb4\xdf\xd2\xb0\x8c\xcc\xa3\x35\x75\x57\x28\x8f\x55\x71\x0c\x00\x24\xd5\xce\x59\x3b\x59\xaf\xc7\x7a\x6c\xb3\xce\x65\x37\xd3\x66\x36\x6b\x59\x7b\x1a\xf2\xc7\x9b\x82\xc5\xda\xba\x02\x12\xc4\x6a\x35\x85\x2c\xb5\x96\x1c\x09\x29\xcd\xb0\xa6\x31\x4d\x0a\xfa\xaa\xb8\x5d\xe5\x58\x62\x26\x03\x52\xd4\x14\x93\xe4\x26\x2d\xcf\xc5\x6c\x70\x36\xc5\xc7\xe8\x74\xc2\x8f\xd1\xa9\x94\x29\x01\x88\x21\x9f\x57\xfb\x16\x9f\x81\xfd\x83\x55\xba\x6a\x30\x28\xbf\x12\x2e\x96\xb0\x1e\xf1\xa2\x58\x53\x8e\xb3\xed\x36\xf0\x11\x1d\x8d\xa1\x18\xf6\x07\x75\x67\xe0\x4c\x6e\x8f\xb2\x27\x02\x9b\x45\x5a\xe2\x21\x6f\xb0\xe9\x13\x1b\xf7\x54\x6b\x45\x58\xa2\x98\x61\x31\xdd\x81\xdb\x44\xd3\x9d\xba\x81\xbf\x88\xce\xb2\x18\x69\x59\x1b\x25\x64\xa0\x4c\x19\x46\x50\x2e\x07\x93\xf1\x11\xe4\xaf\x8f\x8a\xa1\x13\x85\x47\x63\xaf\x5f\xc5\x2c\x4d\xac\x29\x45\x41\xa5\x53\x40\xa6\xaa\x56\x95\x87\x8c\x32\x9e\xad\x58\x3a\xa9\xca\xe7\x15\xc2\x32\x28\x2f\x4f\xf4\xf2\xeb\x68\xbc\x03\xc5\x4e\x69\xda\x92\x96\x25\xb9\xa6\xf1\x86\xae\x6f\xf5\x30\x26\x38\xa9\x7f\x40\xba\xbe\x55\x5d\xaa\xcf\xea\x6f\xf1\xd5\xae\xf3\x5b\xba\x50\x65\xee\x97\x0a\xe2\x24\xe5\x9c\x95\x60\x60\xfb\x8f\x99\x34\x7a\xbc\x87\xae\x37\x40\x52\xed\x5f\xdf\x43\x97\x2d\x69\x3f\xb4\x73\x31\x9d\x13\xae\x10\xd7\xff\xf5\x9d\xb0\xe8\x3a\xcf\x4f\x7c\x80\xfb\x0d\xcc\x1e\xe6\x9a\x20\xe1\x6b\xc2\x5c\x12\xe1\x0b\xa1\x3e\xc1\xb5\xce\xc1\xdc\x21\xdc\xbb\x25\x66\xf3\x4a\x9d\xb2\x97\x79\xee\xb2\xf5\xed\xaa\x52\x6d\x2b\xc8\x9a\xa2\x5a\xc9\xf5\x9a\x64\xe5\x0c\xcf\x47\x23\x87\x78\xe9\x13\xcb\x41\x05\x9c\x0b\xe0\xe8\xa8\x16\x97\x6b\x05\x75\x92\xe6\x79\xcc\x40\x65\x78\x49\x0c\x36\x38\x29\xe8\x1b\x23\x9d\x96\xf1\x29\xdd\x19\x7e\x54\x48\x61\x05\xda\xfe\xd8\xcc\x29\xd6\x6f\x22\x5d\xb5\x6a\x35\xde\x54\xb6\x50\x93\xf5\xce\xf5\x9a\x4a\x4d\x96\xd9\x12\x29\xd0\xb7\x46\x53\x90\x48\x6e\xc8\xf2\x9d\x71\x68\x33\x20\x0e\x8c\x14\x0c\x02\x9b\x40\x12\x7b\x21\x7b\x07\x31\x18\x92\xea\x81\xf0\xf7\x3b\xce\x67\x17\xec\x27\xe5\x44\xed\xda\x7b\x3c\xa7\xbd\xad\x1c\x86\x33\xc0\x35\x80\xcd\x43\xb1\xa1\x9d\x6b\xf1\x37\xd1\x68\x78\xec\x01\xd8\x54\xee\xbd\x2b\x7f\xaa\x1b\x4e\xfe\x69\xae\x37\xf9\x43\xdf\x5f\x8d\x75\xf9\x0e\x65\xc7\x4e\x5a\xfc\x50\xa8\xf7\x34\x58\xd7\xc5\xac\xbb\x7c\x7a\x89\x36\x55\x55\xb3\x4a\x56\x38\x22\xa9\x24\x74\xf9\xaa\x72\xc6\xe6\x56\x60\x22\x63\x27\xfb\x65\x0d\xc2\x22\x99\x91\x10\x0a\x9b\xc7\xb5\x2e\xfa\x88\x17\x6b\x56\x92\x2f\x58\xdd\xe9\x9a\x12\x6a\x7e\x57\x7d\xe3\xe8\x05\x8e\x39\x00\x55\x47\x93\x4d\xbb\x09\xd6\x5c\x2c\x47\x58\xda\x1f\x8a\x06\xb5\xb9\x5f\x69\xcb\x99\x33\x09\xb5\x00\x03\xe6\xb0\xe4\x6f\x58\x71\x1b\x73\x00\x25\x6b\x51\x81\xca\xef\x03\x6c\x5c\xfb\x20\x67\x35\x80\x9b\x03\x18\xbb\x25\x33\x3e\x07\x6d\x9e\xa5\x15\x18\xf1\xfe\x38\x75\x30\x8a\x7a\x46\x6b\xd2\x5f\x4a\x9d\xc2\xbf\xf9\x8b\x52\x6f\xab\x61\x40\x0d\x87\x70\xad\x8d\x73\xe5\xbf\x56\x04\xa9\x69\x02\x1a\xdb\x2f\x8a\x30\x38\x1f\x5c\x76\xd2\x7c\x96\x2c\xa5\x38\x01\x1e\xfd\x71\x4e\x41\xbd\x1e\x72\xcf\x07\x75\x2b\x69\xb4\x68\xba\x95\xba\xe6\x46\x99\x06\x28\x06\xce\x10\x42\x3c\x79\xf5\xfe\x97\x0f\x3f\x9f\x5d\xbc\x7d\xff\xee\xf2\xfc\xd7\x57\xaf\xce\xce\xcf\xa7\x8d\x26\xb5\x0d\x24\xc2\x93\xb8\xd5\xea\xec\xe3\xc7\xf7\x1f\x9b\x6d\xce\xb4\x35\x02\x9e\xb4\xea\xab\x87\xc9\x68\x14\x37\x47\x26\x79\x1d\xd1\x06\x34\x07\xfd\x96\x2e\xec\xb0\x41\xe5\xbf\x7e\x36\xa1\x95\x14\xef\xb5\x06\x0c\x5b\x8c\x70\x55\x3f\x4d\x36\x8d\x5a\xb2\xb0\x7e\xa9\x34\x8b\xcd\xca\xe2\xe6\x16\x1f\xa3\x53\x97\xec\xfb\xdb\x2d\x0a\x03\x87\xdd\xc4\xc2\xad\x11\x48\x5a\xcd\x3f\xe7\xcf\x01\x56\xc7\x9b\xab\xcf\x55\xe3\xe8\xd7\x47\x5c\xbf\x6b\xea\x51\xda\x07\x49\x7b\x80\xde\x83\xa7\x39\x40\xf7\xd9\x13\x5e\xd0\xf6\xe3\xe7\xbb\xde\x38\xfe\x01\xbf\x4a\xbb\x3c\x82\xfa\xc3\xd0\xe2\x03\xc3\x2f\x1c\x6a\xe7\x7a\x2f\xba\xa4\x8c\xfe\x78\x30\x4c\xeb\x43\x3c\x60\x7e\x4a\x15\xca\x18\xde\xd6\xd7\xb5\xfa\xe2\x61\xf9\x28\x9e\x60\x98\xb2\xeb\x72\xc2\xa1\x79\x43\x4c\x18\xd4\x8f\x82\x8b\xbb\x15\x9e\x50\x78\x93\x96\x9a\x25\x3f\xfb\x82\x29\x2f\x27\xa4\x72\x88\x9a\x41\x6d\x01\xc5\x3c\x71\x9c\xf6\x88\x6a\x6b\x23\x0d\xdd\x88\xc5\xec\x8b\xc5\xe5\xc4\x25\x66\xab\xf2\x66\xa7\x88\x54\x25\xe6\xe6\xa6\x34\x07\xd2\xb2\x55\x8a\xe2\xa8\x1f\x92\x94\xa8\x3f\x5f\x69\xb3\xce\x8d\xb8\xf2\x6e\x53\x4d\x32\x3e\x4a\x69\x86\xf8\x5a\xe2\x7c\xa9\xbe\xfd\x5c\x14\xab\x3f\xa5\xac\xe6\xc8\xec\x4b\xc8\x1c\x6a\x3b\x62\xaf\x4c\x89\xf2\x04\x61\x71\x44\x87\xb6\xaa\x2e\x7c\x75\x83\x17\x9f\x6d\x9d\x6a\xc6\x12\x8b\x47\xc6\x6e\xd4\x15\x96\x37\xbb\xfb\x0f\x51\x59\x35\x07\xfa\xb5\x18\x63\x14\x59\xa3\x55\xa9\x15\xc0\xdf\x56\x39\x59\x10\x9e\xdf\x0d\x17\x69\x9e\xe3\x2c\x6a\x0e\x46\x57\x57\x0f\x29\xb3\x12\xff\xb9\xc6\x25\x8f\x69\xa2\x88\xec\xe5\x1f\xde\xbe\x7b\x7d\x79\xf6\x7f\x3e\xfc\xfc\xf6\xd5\xdb\x0b\x69\x2e\x29\x6d\x6f\x95\xb9\x65\x70\x78\xda\xca\x35\xd6\x56\xba\x2a\xd6\xb9\x32\xb7\xea\xd5\xca\xa9\x5a\x19\x4b\xd9\x5e\x0d\xbd\xca\x15\x2f\xce\xa5\xaf\x65\x43\xb3\x21\xb0\xeb\x38\x1a\xba\x47\x22\xaa\xb4\xe0\x31\xdc\x81\x2e\x94\x58\x58\x55\x81\x13\x45\xa0\x4f\x4b\xe5\xe3\x91\x17\xfc\x6e\x85\x21\x4f\xde\xbe\x7b\x7b\xf1\xf6\xe5\xcf\x97\xe7\x17\x2f\x2f\xce\xc0\x8e\xaa\xea\xa9\x34\x89\xbe\xa6\x84\x13\x7a\x1d\x41\x52\xbe\x66\xc5\x6a\x85\xb3\xc9\xd1\x29\x24\xa5\x11\x3b\xc9\xd4\xce\xdf\x45\x2b\x5d\xa2\xf3\x88\xaf\x22\x92\x69\x15\x53\xdb\xef\x6d\x88\x47\xa3\x48\x2c\xe2\x2b\x67\x28\x08\x89\x2b\x22\xbd\xc5\x15\xc4\x3e\x3a\x22\xec\xa1\xe3\x87\x97\x1f\xcf\xde\x5d\x68\x36\xa0\x51\xf6\xf3\xdb\x37\x67\xe7\x1f\x5e\xbe\xbb\x3c\x7b\xf7\xba\x51\xf4\x1f\x6f\xcf\x7e\x7e\xfd\xf2\xa7\x9f\xcf\xc2\x2d\x0d\x92\x23\x9c\x5c\xbc\x3c\xff\x83\xae\xf4\x52\x72\x1c\xef\x5e\xfe\x72\xe6\x18\x31\x04\x8b\x5b\xf3\x19\x74\xc0\x8f\xcc\xc9\x6c\xd6\x68\x0d\x30\xba\x53\x07\xbd\x59\xd1\x9b\x64\x94\x93\x25\x2e\x57\x29\xbd\xc4\xb4\x55\xd3\x5f\xaa\x68\x95\x32\x4c\xf9\xa5\x42\x00\x59\xd7\x5b\xe6\x5d\x82\xad\xcf\x84\x66\x86\xb4\x2b\xe9\xaf\x25\xee\xea\x04\xca\x77\x92\x16\x26\xc9\x77\x88\x67\x52\x89\x70\x75\x0f\x3b\xc5\x7d\x4c\xfc\xe3\x61\x6f\x8b\xdd\x44\xb8\xc5\xb2\xfa\x9f\x34\xef\xeb\x7f\xfc\x70\xf6\xee\xf5\xdb\x77\xff\x56\xe3\x4e\xa0\xac\xf1\xd9\xc0\x39\x1d\x04\x7a\xfc\x71\x10\x1a\xda\x6f\xbf\x6f\x5d\x0d\xa9\x3b\x9c\x7f\x6a\x59\x40\xff\x83\x70\x5d\x6d\x44\x7a\x78\xde\x4d\xe6\xbb\xfb\x6e\x3c\xbc\xc6\xe6\xc9\x60\xef\x9b\x40\x30\xbf\x59\x69\x33\x14\xcf\x05\xf5\x6c\xeb\x96\x0a\xf1\xea\xfb\x70\xf6\xf1\xcd\xfb\x8f\xbf\x5c\x4a\x9d\xc9\xcf\x6f\xdf\xfd\x41\xda\x6a\x79\x5f\x7f\x7d\x17\xfe\xfe\xfa\xec\xcd\xcb\x5f\x7f\xbe\xa8\x11\x39\x58\x1a\x85\xbe\x46\xcd\xda\xb6\x8f\x28\xf8\xb9\x55\x3f\x58\xdb\xd4\x35\x4e\x54\x9b\x4a\xbb\x0d\xcd\xe6\x83\x8e\x05\x68\x93\xb7\x4d\xd3\x3c\x7b\x82\x21\xa6\x5f\x26\x14\x66\xf8\x6a\x7d\x5d\x33\xb6\xd7\xbe\xd9\xbb\x12\x09\xf9\xb6\xf0\x56\xda\x2d\x51\xaa\xa9\x37\xaa\x20\x6b\xb2\x02\x5a\x65\x99\xe1\x6f\xe6\xad\x99\x91\x72\x55\x94\x98\x89\x49\x40\x8f\x7c\xbe\x4a\xf3\xfc\x2a\x5d\x7c\xae\x4b\x30\xfd\x62\x58\x69\x39\x56\x44\x74\x86\x0e\x8f\xa2\x6b\xbb\x7a\xc5\xde\xd4\xa3\xf3\x14\x71\xed\x66\x56\x39\x67\x18\xec\x4d\x5d\x5f\x21\xa6\x21\xfc\x82\x99\x3d\xbf\xa3\x8b\x98\x26\xce\xed\xf5\xfe\xdd\xc5\xdb\x77\xbf\x9e\x99\x0c\x86\x6d\xa9\x7b\xe2\xb0\xeb\x35\x07\xdb\xb4\xaf\x92\x63\x79\x65\x0a\xa7\x71\x70\xfc\x53\x77\x28\x7f\x22\xfc\x46\x35\x78\xa9\x7c\x42\x26\xde\x2a\xd6\xc5\x46\x1e\xe7\x4d\xdb\xdc\x64\x60\x12\xe3\xda\x17\x40\x25\xd1\x54\x05\xf5\x93\x23\xfc\x82\x96\x83\x83\x38\x34\x63\xdb\xb2\xae\x68\xdf\x0a\xfe\x73\xc0\xdd\xa7\x5a\xd9\xac\xf7\x29\xcd\xbe\x08\x70\x6f\x05\xda\xc8\x90\x12\x31\x47\x08\x79\xab\x2f\xef\x04\x6b\x8d\xe6\x2e\xa2\x40\xdb\xa2\xc1\xe9\x17\x3b\x59\x10\x00\x99\xbf\xd9\xad\x15\xd6\x4b\xac\x8b\xd5\x47\x31\x0b\x3b\xb9\x56\x8b\x4d\xbb\x81\x3b\xfe\x8f\x67\x17\xbf\x7e\x7c\x07\x53\x0b\x40\x55\xa9\x39\x11\x6f\x09\xea\x43\x04\xec\xb9\x50\x8e\x85\xb5\xc6\xca\xc5\x53\x01\xc6\x42\x3e\xf7\x01\xb7\x97\x3c\x76\x8f\xa5\xc1\x19\x9f\x16\x48\x2f\x8d\xa9\x7e\xa2\xd2\x2c\xc7\x1f\x95\x53\x62\xf6\x51\xe2\x32\xce\x64\x10\x00\xd9\xcb\x24\x50\xeb\x55\x41\x39\xa1\x6b\x5c\xd7\x02\xd5\xbe\x1a\xae\x84\x57\x4e\x1d\x52\xd4\x1c\x19\x5e\xa9\x54\x25\xed\x15\x53\x29\x03\x8d\xb7\x4f\xc3\x57\x86\xea\x08\x0d\xa4\xc5\x7a\x78\xa3\xd7\x0f\x50\x35\x24\xda\x1a\x72\x7b\xea\x1b\x63\xa4\xa0\x4d\x0c\x42\xe4\x62\xd2\x2a\x51\xa8\xe0\x9f\xe1\x98\xfb\x83\xd3\xec\x12\x18\x5c\x31\x9c\x7e\x1e\xb4\x60\x5c\xfc\xfe\xe3\xfb\x3f\xed\x06\xa1\xe6\x57\x55\xde\xdc\x7e\xa5\x9f\x69\xf1\x95\x5e\xdc\x60\x29\x75\x68\x08\xdb\xe4\xb2\x0f\x74\x0e\x57\xcb\xec\x36\x8e\x33\x87\x41\xaa\x88\x41\x05\xfb\x35\x91\x63\x17\xf5\x41\xd5\x38\xf7\x1b\xb2\x74\x50\x5f\xbc\x9c\xb4\xd5\xc2\xf1\x71\xfd\xb9\x0a\x6c\x96\x93\x3f\x4b\xee\xf4\x80\x6b\x4a\x91\x66\xd9\x6b\x7d\xfd\xc4\x7c\x46\xdb\xee\xa8\x00\x8a\xcf\x4d\x39\xc5\x54\x77\xf7\xa5\xf8\xac\x3a\x92\x8b\xc5\x83\x7e\xb3\x5c\x2e\xd7\xb4\x8d\x47\xcd\xb5\xe6\x3e\x51\x11\x14\xe4\x9c\x08\x96\x4d\xcd\x81\x83\x7d\xe5\x55\x47\x09\xde\x47\x7c\xdc\x4d\x72\x57\x44\xbc\x28\x02\x8e\xc0\xa3\x91\x7f\x6f\x1b\xb5\x77\x65\x49\x86\xab\xd4\xb6\xd5\x06\xe3\x23\xf1\xd6\x55\x2c\x9b\x91\x63\x7b\x97\x3f\xf6\x2c\xa3\x62\x00\x40\xe5\x1f\x6e\x75\xa8\x74\xc2\xd9\x1b\x52\x82\x81\x43\x14\x1a\x14\xaa\x34\x0d\x06\x64\x19\x97\x3a\x57\x9a\xac\x78\x89\xbf\xad\xf0\x82\x97\x3f\x13\xfa\x19\x67\x72\x37\xcc\x88\x99\xc6\x0f\xf1\x52\x0f\x31\x5e\xf2\xb5\xee\xc8\xf5\xb6\x5b\xc1\x58\x15\x39\x4e\xbe\xa6\x8c\xc6\xd1\x7f\x14\xeb\xe1\xca\x08\x7b\x87\xe9\x30\xc9\x65\x1f\x31\x18\x8a\x6b\x71\xa8\x83\xb0\x0f\xc9\xed\x2d\xce\x48\xca\x71\x7e\x37\x94\xb8\x45\xe8\xf5\x33\x85\xca\x84\x5e\x0f\x09\x4f\x86\x17\x37\xa4\x1c\x92\x72\xa8\x53\x50\xe7\x77\xc3\x35\x2d\xd7\x2b\xf1\x4e\xc1\xd9\x30\xbe\x5a\xf3\xe1\x2d\xb9\xbe\xe1\xc3\x2b\x3c\xac\xbf\x13\x3a\x5c\xae\xf9\x9a\xe1\xe1\x17\xcc\x4a\x19\x2d\x68\x39\x6c\x31\xf9\x20\x89\xba\x97\x02\x1d\x9d\x56\x56\x69\x7d\x9b\xde\x5d\x19\x02\xf7\x5a\x3b\x93\x6a\xee\x6b\x89\x99\x46\x84\xe6\x0d\x62\xf6\x56\x7d\x6f\x28\x5d\x10\x42\x21\x4a\x36\xad\xa1\x1a\x07\x77\x17\x88\xdc\x15\x8d\xff\xa6\x92\xe0\x43\xdc\x3a\xca\x15\x19\x84\x84\x96\x2d\x86\xd2\xb7\xd4\x68\x4f\x40\xb1\x11\x6b\x0b\xc9\x36\x8c\x41\x15\xfe\xdc\xd5\x51\x03\xa3\xf7\x31\xb8\x81\x05\x77\x0a\x2e\x6e\x58\xf1\xf5\x57\xaa\xc8\x88\x34\x10\x94\x52\xde\x9f\x53\x2e\x1d\xa9\xad\x54\xd0\x77\xa8\x14\x60\xec\xad\x2e\x7e\x20\xcb\x33\x64\x6e\x17\xc1\xc8\x04\x9d\xc3\x02\xd0\xd9\x0d\xdd\x73\xd5\x63\x94\x9b\x8e\xbe\x34\xab\x17\x44\x9a\xa3\x06\xd2\xc8\xbb\x6b\xbb\x8d\xc7\xb0\xa8\x25\x6e\xa0\x8d\x0c\x1a\xa6\xcf\x1d\xed\x19\x80\xa8\xdc\xe5\x52\xdd\xea\xa0\x02\x55\x93\x63\x37\x99\x97\xda\x9c\xf6\x68\x74\xb4\xf3\xbc\xf8\x8f\x18\x2c\x2d\x27\x1d\x3f\x59\x5e\xdf\x7f\x5e\x4d\x10\x72\xe6\x75\x99\x7e\x4d\x24\x37\x8d\x45\x9d\xf0\x6a\xc0\xbb\x8e\x63\xcc\x12\x52\x3a\x1a\xcc\xa3\x31\x64\xc6\x89\x1a\x4c\x5a\xcd\x94\x32\x53\x36\x92\x6b\xaa\xea\xcb\x35\x0a\xd6\xb7\xca\xcc\xba\x92\x7f\x32\xce\x6f\x52\x86\xb3\x98\xd5\x2b\xe0\xce\xc8\xbd\x5f\xbc\xf7\x46\x40\xbf\x11\x78\xf1\x18\x3b\x4e\x2e\x9f\xb4\x67\x3a\x58\xc1\xa0\x7e\x56\x5a\xff\xf8\xd1\xc8\xd0\xf7\xbc\x90\x26\x98\x5c\xca\x6a\x51\x11\x16\x87\x06\xe7\xb0\x21\xa5\xd1\xd1\x4e\x8e\xc6\xb0\xb9\x0b\x81\x75\x81\x72\x4d\x26\x1c\x2e\x9c\x89\x4c\x70\x15\x7c\xbe\xd5\x4f\xb6\xca\x1f\x7b\x83\x08\x5c\xad\xaf\x1d\x0c\xef\x0a\x08\x50\x35\x06\x6f\x28\xa8\x64\xad\x8e\x8f\xa1\x8b\xb7\x96\x3a\x38\xef\x43\xb8\x83\x72\xd6\xcf\xfd\x94\x2f\x6e\x4c\x05\xa5\xd8\x8a\x5b\x67\x5e\xb1\x13\xa1\x9a\x2d\xbe\x3a\x84\xc1\x93\xe0\xf3\xdb\x28\xc8\x5c\xbe\xb9\x8d\xc8\xc1\xb6\x0a\x4d\x5a\x14\xa0\x13\x92\xda\xca\x20\x28\x8d\xc6\x2e\xbd\x73\x36\x1a\x54\x55\x93\xb3\xc4\x75\x70\x00\x8e\x70\x80\x21\x8d\x5b\xdd\x38\x82\x16\xfb\x1e\x72\x78\x5d\xa3\x9c\x32\xaf\xc0\x9d\x54\x0f\x54\x95\xaf\x7e\xeb\x22\xa1\x16\x23\x1a\x26\x94\x2d\xeb\x9c\x96\x29\x06\xeb\x22\x44\xd8\xb0\xad\x5d\x0f\x8b\x36\x97\xd0\x82\xa5\xa8\x53\x17\x24\xf5\xde\x68\x6d\x6c\x1b\x8c\x21\x5a\x9d\x43\x52\x87\x97\xae\xf3\xdc\xc4\xf3\xb1\xac\xa9\xb1\xa3\x10\x4c\x63\x2c\x59\xd2\x0e\x31\xe0\x11\x42\x4c\x53\xf4\xfa\xb2\xca\x30\xc7\x0b\x7e\xee\xa9\x69\x65\xea\x67\x97\x20\xf4\x10\x74\x78\x8a\x11\xa0\x62\x3d\x78\x03\x6b\x69\x0d\x2d\xd6\x7a\x4c\x6f\x58\xe2\x59\x05\x87\x69\x2e\xae\x70\x9b\xa3\xfa\x11\x67\x16\xcc\x2a\x21\x47\x23\xde\x54\xdb\xea\x69\x0d\x8e\xd8\x76\xcb\xa4\x76\xe6\x08\xa1\xa2\x53\x4d\x14\x16\xf3\xed\x92\x34\x35\xa4\x57\x21\xbd\x38\xff\x6e\x95\x4e\x43\xf8\xff\x77\x6f\xe4\xe5\x89\x70\x9b\x56\xb0\x6d\xb6\x22\xa0\xee\xd1\x61\x27\x55\xf4\x21\x79\xb9\xc9\x3f\x5d\x16\x43\xe9\x7b\x25\x39\x51\x7f\xd6\x97\xe6\x29\x74\x25\xb1\xa2\xcc\xec\xda\xe4\xe8\xb4\x1a\x34\x07\x78\x2f\xa3\x9a\x67\xda\x24\xe7\xd1\xed\x66\x35\xe6\x87\x16\x93\xa3\x4d\x9e\x96\x5c\xad\x8d\x63\x37\x55\x7f\x30\x8b\x60\x3f\x58\xcb\x22\xa7\x4e\xbd\xa4\xf6\x9b\x31\x5f\xab\xbf\x68\x4b\x33\xa7\x8a\x59\x6e\xfb\xa5\x36\x1f\x53\xdf\x34\x09\x78\x55\xac\x29\x9f\x8c\xc5\xba\xfb\x73\xe1\x46\xcf\xbf\x64\x18\xff\x55\x4a\x24\xee\xb3\x11\x12\xbd\xa5\x01\xd7\xfd\x8e\xc6\x33\x63\x64\xf8\xf0\x07\xc1\x89\x48\xd9\x15\xa5\xeb\x42\x77\xbe\xa9\xdc\xea\xf7\x43\x49\xf1\xbf\xef\x5d\x83\xfb\x90\x14\xab\x1a\x7d\x04\x87\xe0\x0b\x37\x94\x6a\x28\xf4\x85\xa3\x0d\x70\x0d\xab\x5c\x63\x2a\xad\x82\x57\xb2\x15\x35\x06\xc4\xac\x0f\x47\xdb\x6c\x46\x3a\x8a\x5c\xea\x72\xc3\xd8\xb6\xc0\xb6\x81\x82\x50\x80\x0c\xbb\xc1\x0d\xfb\xd6\x72\xbd\x92\x22\x33\x0f\xae\xba\xfe\x4d\xd7\xc9\x15\xa1\x99\x12\x5c\x55\x46\x30\xa4\x9f\x32\xd2\x21\xba\xad\xf6\x04\x8a\x57\x38\xc2\x3a\xc4\x5a\xfd\x5e\x91\xa2\xa6\x45\x4a\x87\x05\xd5\xb6\x4e\x8e\xb0\x69\xc9\x8a\x5b\x29\x6c\x22\x74\x98\x4a\xd1\x53\x52\xc7\xe1\xac\x83\x78\x40\x16\x52\x39\x42\x0c\xaa\x35\xb5\xe3\xdb\xdb\xca\xb0\x2e\x9a\xf1\xb9\xb4\x7e\xd9\x9b\x4a\x9f\x81\xc3\x3d\x48\x1a\x38\x7c\xaf\x23\xd0\x20\xe8\x0f\xad\xeb\x7e\x98\xa3\x20\x8d\xa1\xf5\x71\x50\xbe\x8f\x61\x2b\x45\xf3\x0e\x53\xe9\x49\x4b\x84\x61\x5b\x11\x67\xf9\xc1\xeb\x35\xc9\x50\x84\x17\x97\xd1\x31\x3d\x3e\xae\xbf\x95\x68\x53\x39\xbf\x66\xf6\xcf\xb9\x65\xdc\x25\xdd\x1d\x8d\x02\x5a\x3e\xd9\xc4\xa9\xa4\x3e\x00\xd7\x6f\x4b\x39\x19\xea\x90\x21\xf5\xeb\x55\xb2\x5d\x7f\x20\x34\x9b\x50\xc8\xb0\x79\x2c\x4e\x48\x85\xf0\x76\xbb\xa9\x06\x1c\xf1\xed\xd6\xd8\xf1\x09\x40\x1d\xa6\x7c\xc3\x42\x9c\x67\x2c\xcd\xd8\x22\x9d\x1f\x42\x79\x47\x35\xcc\xf8\x04\x6f\x18\xb4\xe4\xe3\x0d\xaf\x5e\x63\x7c\xef\xf4\x6d\xe7\x0a\x4d\xc4\x4d\xc9\x86\x13\x2d\x13\xbc\xac\x27\x10\x83\x0a\x54\xde\xef\x8d\xff\x1a\xe6\xfe\xfd\x08\x3c\xd3\xcd\xca\xd9\xff\xdd\xb6\x74\x3e\x90\x5d\xb6\x74\x8e\x9b\xe6\xd8\xf1\xcd\x1c\xbb\x76\x74\x82\x7b\xd2\xdf\xe5\xdf\x6f\x33\x15\x9f\x5b\xdb\xe1\x91\x2c\xc7\xd1\xe1\xa6\x76\xae\x69\xca\xa3\x71\x4e\x29\x25\xb7\xf2\x30\xbe\x61\xe9\x6d\xc8\x22\x44\x22\x43\x05\x71\xc2\xd2\xaf\x17\xe4\x16\x17\xeb\x50\x80\x7c\x4d\xca\xa4\x42\x2a\x59\x16\x32\xdd\x2c\xc2\x89\x7d\x6d\x8b\xbf\xdb\x46\x73\x4d\xfd\x9c\xf7\x49\x3e\x21\xfd\x76\xfa\x79\x8a\x70\xf3\xad\x8e\x70\x4b\xcb\x54\xdb\x97\xb4\x4a\xc4\x72\x2c\xb4\xe9\xda\xe5\x65\x34\x68\x83\x53\x35\xec\x57\x55\x29\x30\x90\x48\xa6\x4b\x1e\xb4\x87\x1d\xc9\xab\xc5\x2f\xd1\x73\x8c\x74\xc0\xfe\x41\x60\x49\x22\x63\x4f\x17\x0a\xbd\xa8\x8f\x42\x73\x68\x28\xf8\xd5\xb9\x16\x61\x5d\xc1\xcc\x19\xb5\x3f\xb9\xf7\xe8\xa5\x14\x40\x4b\x29\x89\xb9\x4b\x37\x5a\x81\xa0\x63\x49\x43\xa5\x2a\x30\x91\xa5\x6d\x38\xea\xa0\x09\x9f\xd4\xe2\xa3\x17\x1b\x6c\xb4\x10\x88\x0b\x7c\xc2\x9a\xc7\x00\x10\x57\x97\xbc\xf8\x60\x05\xed\x8e\x20\xd2\x1d\x09\xe4\x68\x53\x0b\x09\x94\x4d\xbb\x5c\x7f\x84\xd8\x76\x6b\x96\x15\x21\x36\xb5\x1d\xc5\x14\x4c\x4c\x4f\x31\x05\x55\x05\x59\x78\xb9\x62\x0e\xc7\xa0\x35\x8b\xc6\xa2\x99\x18\x8d\xde\xd7\xda\xa6\xa3\xcb\x9e\xd9\x9d\x5b\x1f\x4b\x66\xaf\x7e\x3f\x1b\x66\xaf\x89\x6f\xbd\xdc\x9a\x29\xd8\x54\xde\x04\x34\xe1\xac\x8f\x2a\x6f\x73\xe0\x0d\x3c\x54\x6c\x99\xb1\x4d\x21\xb7\x98\xbd\xcd\x94\x81\x50\xab\xb7\x5a\xb2\x65\xea\x69\xd9\xfe\x4b\x8f\xf0\xa8\x0b\xc1\x15\x02\xa9\xad\x85\x58\xde\x0e\xeb\x9c\xcb\x8b\xa1\x31\x6e\x7d\xc3\xf8\x90\xdc\xce\x42\x43\xd4\xec\x27\xed\x98\x1d\x6e\x4c\xef\xd6\xc6\x71\x3a\x74\xa2\x25\xe6\x9a\x60\xf6\x99\x9d\xe9\x2d\x30\xcb\x1c\xa7\xcc\x40\xda\x3f\x3b\x1d\x6e\xdc\x86\x74\x71\xe6\xd9\x0f\x17\x06\x35\x05\xef\xcb\x63\x06\xe2\xc0\x3f\xf0\x3d\x25\x98\x48\x95\x0e\xed\x55\x5e\x94\x6b\x86\x51\xdb\xc3\x45\x67\xc5\x9a\x8d\xe7\xb0\x40\x2c\x91\xd9\xc9\xe3\x53\x7b\xac\x6d\x03\x75\x7e\xc8\x32\x26\x7e\x3e\x1c\xad\x8b\x27\x33\x3e\x97\xc5\x74\x34\xd2\x56\x2c\xb5\xa9\x83\x54\x79\x0f\xb0\xd2\x75\x3a\x81\xfa\xa1\xa9\x69\x33\x87\x08\x30\xa2\xab\x02\xaa\x83\xd8\x5b\xc0\x55\xbb\x2f\xaa\x4a\x0f\x12\x78\xa1\x06\xf2\xe8\x9e\xdc\xad\xe7\xbb\x89\xe0\xd4\x76\xd9\x6f\x04\xd2\xe6\xd6\x47\x47\xbb\xf2\xeb\xf0\x4d\x54\x06\xd7\x3b\xd4\xa5\x5b\xbe\x3b\xea\x6c\x13\x87\x25\x29\x58\x2a\x2b\xce\xdd\x35\x65\xfe\x8a\xbd\xaf\x18\x1b\x06\x5f\xa7\x6f\x83\x04\xcd\xe6\x0a\xa3\x0a\xd8\xc8\x82\x73\x8d\xf9\xa4\xd4\x82\xbd\xbc\x42\x74\x90\x4e\x0b\x94\xfa\x49\x82\xca\x69\x81\x4a\xff\x53\x3e\x1a\xc5\x05\xca\x81\x54\xdd\x96\xab\x3c\xbd\x7b\x27\xb8\x39\x76\x1c\x0d\x63\x19\xda\x45\xb1\xf6\x6b\x49\x15\xfe\x84\xd3\xcf\xbf\xa4\x2b\xb8\x40\x64\x36\x9e\x8b\xd7\x02\xcc\xb4\x1d\xaa\xe0\x9e\x4d\x78\x61\x06\x0b\xb8\xb0\x87\x27\x4b\x2e\x4b\xcc\xd7\x2b\xb9\x63\x7f\xf8\xe3\x7b\xf1\x28\xdf\x08\xcc\x37\xd7\xf5\xda\x26\xac\xa8\xef\xd1\xed\x36\xc6\x28\x4b\x16\x0c\xa7\x5c\x7a\xba\x68\x86\x64\x2d\xf8\x79\xf3\xbc\x12\xd7\x7f\x55\xb9\x29\x9b\x9a\x8b\xe4\x8d\x3a\xad\x47\x5d\x3a\xa3\x96\x22\xa1\x7a\xe8\x52\xb6\x96\x9a\x91\x78\x03\x2d\xba\x06\x5a\x3a\x03\x95\xe0\xf4\x68\x8b\x1d\xa3\x2d\x1c\x16\xd8\xa5\x2f\xbc\xfd\x55\x11\x91\x99\xa4\x55\x73\x64\xc3\x00\xfd\x16\xb9\x06\x3c\xad\x34\x4e\xdc\xa6\x71\xe2\xa3\x51\xa4\x92\xbe\xd5\xa5\x6c\x34\x8a\x5b\x4d\xa8\x6d\x42\x47\xa3\xa8\xce\x18\x14\x11\x2a\xca\xa2\x45\x41\x97\xe4\x7a\x5d\x7f\xdb\x6e\x15\x1e\x21\x84\xa8\x4a\x0f\x85\xd5\x1c\x26\xe2\x1f\xc1\xba\xc9\xdf\x2a\x98\x8c\x93\x24\x0a\x0b\x8e\xac\xaa\xb3\xd6\xc7\x31\x6b\x24\x7a\x52\xc9\x1d\x5a\x06\xcc\x1b\x01\x5d\x65\x54\xaa\xf7\xc0\x34\x4e\xe7\xf7\x4a\x9f\xd4\x99\xaf\x28\x9c\xec\x28\x90\x15\xa9\x99\xff\x88\x77\xe7\x42\x0a\x25\x3b\xf2\x73\x21\x39\xa9\x8f\x94\xc4\x2d\xb1\x69\x9c\x7c\xf9\x74\x89\x8a\x58\x92\x0d\x0a\x67\xa4\x3b\x41\x56\x21\x88\x01\x59\xc6\x3a\xdd\x0c\xf5\x92\x62\xb1\xe4\xd7\xf3\xb3\xcb\x8b\x8f\x2f\x5f\xfd\xe1\xec\x35\x08\xe0\xbc\x40\xde\x19\x99\x37\x5c\xa8\xeb\x24\x32\x26\xdf\x58\x31\x2d\x02\x79\x63\xaa\x8e\x7c\x36\x64\x4f\x3e\x1b\xd5\x77\x23\x9b\x4d\xa0\xd1\xbe\x6c\x36\xe1\x51\xe9\x6c\x36\x14\xc8\x7c\x45\xf5\xea\x96\x36\x9b\x54\x1a\xd3\x40\x36\xa9\x34\xa6\x1d\xb9\xa1\xea\xfc\x51\xb2\xce\x8e\x5c\x4f\x75\x16\x29\x59\xf3\x80\x2c\x52\xb2\x7e\x8f\x5c\x56\x75\x36\xa9\x34\x26\x5d\xd9\xa4\xd2\x98\xec\x4a\x0b\x55\xe7\x8f\x92\x15\xf7\x65\x78\xaa\xb3\x48\xc9\xea\x87\x66\x91\x92\x8d\xfa\xa6\xb6\xda\x9d\x4d\xaa\xeb\x2e\x7e\x80\x78\x80\xed\xb8\x8d\x0f\x16\x72\xfb\x41\x62\xc6\x3f\x64\x18\xe0\x87\x0c\xb1\xba\x6f\x93\x7a\xb0\x54\x2b\x45\xc5\xc9\x3e\x27\x29\x57\x57\x75\x3f\x3e\xb9\xc3\x87\x0a\xa6\xb0\x84\x39\x5c\x77\xf1\x67\x0b\xc3\xbe\x99\xa7\xf5\x90\x08\x9a\xd4\x75\x15\x71\x73\xff\x30\xe8\xa7\xe5\x73\x2f\x58\xf1\xfb\x2b\x23\xf5\x89\x98\xe0\x19\x9f\x23\x06\xf1\x7d\xae\xb8\x26\xa7\x83\xb0\xcb\xb2\xb9\x32\xef\x0c\x8d\xeb\x89\xdd\xf8\x9e\x64\x64\x19\x33\xb0\x2c\x58\xac\xae\xe7\xf1\xf3\xf4\x77\x4c\x73\x20\xcf\x8f\x8f\x53\x45\xb8\x4b\xc4\x66\xe9\x1c\x2a\x59\x98\x58\xdf\x4b\x67\x13\x2e\x95\x1d\x22\xbb\x8c\x8e\xb3\xe3\xe3\x01\x9f\xe5\x73\xb4\x8c\x15\x78\x88\x63\x0e\x4b\xc5\x81\xe5\x2e\xc3\xb0\x6c\x2c\x6f\xe3\xa6\xa0\xcd\x9b\x02\x83\x01\x9b\xd6\x2f\x04\xb3\xbd\xef\xc5\x4b\x21\x4a\x65\xd3\x32\x82\x14\x4a\x4e\x22\x65\xd7\xeb\x5b\x4c\x79\x09\x26\x74\xc6\xe7\x3a\xe9\x2f\x85\xf5\x77\xf3\x34\x5e\x21\x8c\x5e\xbc\x64\x2c\xbd\x4b\x48\x29\xff\x8d\x31\x98\xe2\xc9\x0c\xcf\xe1\x2d\xd2\x32\x85\xf7\x74\x22\x1f\x47\xe8\x05\x4e\xd2\x4c\x1b\x43\x6a\x5b\xa9\x24\x49\x56\x31\x17\x9c\xa0\x26\xa8\x2a\xe4\x24\xe6\x3f\xad\x97\x4b\x13\x21\x2c\xb6\xe1\xc5\x00\xc4\xa2\x1d\xce\x6c\xbd\x33\xf5\x3b\x3e\x1a\x03\xed\x1d\x66\x4a\xa4\xed\x98\xfa\x2e\xa8\x7a\x10\x30\xad\x01\xcb\x43\x52\x0f\xb4\xc4\x5c\xf3\xad\x00\x3a\xd4\x3b\x08\x85\xd4\x50\xfc\x88\xb9\x1e\xb8\x5f\xbc\x22\x01\xb7\xb8\x2a\x31\xfb\x82\x4b\x6f\x79\xde\xab\x8f\xec\x0f\xf8\xce\x59\x9e\xc2\x5f\x43\xad\x55\x6f\x2e\xa2\xb1\x70\x70\xbb\x7d\xaf\xc3\x17\x72\x00\xdd\x0b\x25\x38\x91\xc2\x4e\xa4\xd2\x4f\xcf\x2f\xbe\x3c\x07\x45\xbf\x5b\x2b\xaf\x80\x17\x11\x34\x49\x4f\x24\xdf\xba\x50\x78\x16\x69\xf1\x87\x1c\x99\x78\x37\x89\xa7\xe2\x1c\x40\x5b\x2c\xf7\x28\x52\xaa\xb8\xfa\x2b\xee\xaa\x7e\x93\x96\xbf\x96\x38\xfb\xa5\xc8\xc8\x92\x88\x57\xfb\xd1\xa9\x5f\x7a\xee\x4f\xa1\x5d\xc1\x0b\x4f\xd1\x28\xf6\x77\xab\x35\x2a\xb3\x3f\x8d\x31\xe9\x55\x36\x86\x83\x11\xd4\xcb\xcd\x5d\x3b\x43\xa7\x7e\x23\xde\xdd\x2b\xb1\xb0\x91\x93\x83\xb8\xae\x69\xf9\x92\x0f\x29\xbf\x31\xc3\x91\x6f\x78\x69\xd4\xe9\x04\xca\x7b\x2d\x08\x1d\x11\xc7\xd6\x44\xea\xb8\xd4\xb1\xf1\xde\x2b\x05\x5c\x4c\x41\xe5\xbc\x15\x7d\x3f\x99\xcb\x52\xea\x98\x45\xc9\x07\x7b\x91\xd4\xb9\x7a\xda\x0f\xa7\x76\xb7\x32\xec\x5f\x9a\x9c\xd1\x45\xba\x2a\xd7\xe2\xb2\x94\xe0\xe2\xc6\xfb\x44\x34\x7a\x7f\xf5\x97\x49\x00\x42\x05\x39\x50\x09\x80\xd2\x24\xd4\xb4\xe5\x04\xca\xb5\xe3\x98\x0f\xc6\x4d\x49\x2e\xfd\xb4\x02\x24\xa6\x29\xe1\x6d\xe2\xa8\x92\x40\xc9\x8a\x2a\xa0\x44\xe0\x1c\x36\x61\x18\xe4\x08\xb5\x6d\x1d\xcf\x66\x63\xdc\xdd\x75\xf3\x4c\x36\x9b\xb6\x71\xde\xea\x46\x9b\xa7\xa5\x2e\x08\xa1\xa0\x46\xa7\xca\x92\xca\x66\x4f\xca\x81\xb5\xae\x65\x48\x6d\x60\x44\x7e\x0c\x98\xba\x49\x83\xe6\x05\x5a\x86\xc7\xdb\x4c\x2f\x64\x01\x2a\x9a\xdc\x92\xd8\xbb\xe7\xc6\xa9\x2d\x56\xb8\x59\xd9\x39\x49\x95\x43\x1e\x5b\xdb\xeb\x1f\x72\xa7\xc5\x85\x87\x7e\xcd\x86\x8d\xc3\xa9\x9b\x35\x0f\x27\x06\x1b\xc3\x33\xf0\x61\xb1\x6c\x64\x7e\xb4\x01\xc1\x66\x7c\x3e\xb8\x9d\xf1\xf9\x54\xfc\x4f\x3d\xdb\x6c\xec\x2f\xc8\x82\xde\x5c\x65\xe2\x9c\xea\xbb\x5a\xf9\x3a\xe3\xf3\xd1\x68\x47\x61\xfd\x28\x94\xa9\xab\x5a\x02\xaa\x8d\x91\xd0\xa6\x59\xf6\x33\x29\xb9\x38\x9c\x26\x72\xa7\x83\xce\x35\xb5\x82\x91\xb6\xb3\x50\x34\x77\x57\xf3\xe6\x71\x74\x81\x58\xc5\x77\x0b\x8c\x39\xa0\x16\x8c\x39\x91\xe1\x31\x8c\x41\xd5\x45\xf6\x14\x69\x14\x3c\x1d\x0a\x6e\xfe\xc0\xb8\x35\xf8\x88\x06\xb8\xd8\xa1\xf6\xf7\x39\x64\x88\xd7\xba\xfb\x01\xce\x4b\xac\xdf\xef\x52\xc6\xd6\x79\x22\xe3\x10\xf2\x83\x81\x0a\xe4\xb9\xae\x63\x1d\x8a\x77\xba\x16\x4c\x2c\x0a\xca\xf1\x37\x3e\xc1\x9a\xf9\x71\x4e\x2e\x14\x2b\x30\xa9\xd7\x42\x31\x38\x1c\xda\x9e\x27\xac\x1d\x33\x2a\x7c\xa2\x61\x63\x41\x26\x54\x5a\xe6\x4a\xc3\x9d\x37\x34\x60\x95\xeb\x50\xf9\xb2\xae\x87\x6b\x03\x84\xd6\x21\x32\xf6\x06\x96\xfd\x1e\x04\x38\x74\x5f\x07\xf3\x65\xd3\x94\x31\x1e\x74\xcb\x49\x35\x7b\x9e\x38\x12\xca\xfe\x76\xb3\x0f\x62\x02\xd8\xe7\x5d\x66\x4c\x8c\x4e\x6e\xc9\x37\x42\xf7\xd4\x95\xa1\x19\xb3\x70\x90\xd9\x87\x89\x5b\xd6\x61\x5f\xd8\x34\x3f\x93\x55\x7c\x03\x43\x02\x69\xa2\x85\x6a\x97\xc6\x1a\x56\xba\xa8\x48\xab\x11\x6b\xd0\xe3\x0d\x46\x6c\x97\x6b\x3f\xb2\x0b\xc2\x2e\xbb\x13\x26\x9d\x61\xa4\x6d\xc0\x2f\x6f\xff\xcf\xdb\x77\x7d\xad\x47\x1a\x19\x96\xbf\xcf\x0c\x5a\x85\xc2\xeb\xbf\x7f\xf7\x51\x96\x3c\xd4\x16\x77\x84\xa5\x73\x76\xb9\x19\x6e\x6b\xe3\x86\x60\x70\xcf\x20\xc3\x5a\xc4\x69\x4a\x9f\xc7\x63\x48\xf5\x2e\xd5\xfb\xac\x7c\xe3\xa4\x30\x1b\xbb\xd6\x40\xae\x05\xbc\x13\x7a\x2b\xca\xd4\x1f\x11\x42\x88\x6b\xd3\x20\xae\xac\x9d\x1a\xdd\xd9\xd0\x56\x89\x6d\x3d\xb5\xad\x27\xe2\xab\xb1\x2b\x9e\x7a\xf1\x2b\xf4\xc5\x23\x2a\xf9\xd5\x6d\x9a\x81\x68\xa9\xff\x12\xdf\xdd\x96\x26\xc3\x51\x1d\x34\xcc\x8b\x83\xa7\x88\x24\x23\xd7\xd7\x98\x49\xf2\x1a\x47\xa5\x2a\x8c\xa0\x32\x19\x71\x03\xe5\x85\x6a\x8b\x42\x9c\xb9\xf5\x8d\x8b\x58\xa8\xba\x0e\x29\xa0\x2a\x43\x19\x67\xb3\xf6\x05\x0c\xd4\xb7\x13\xb7\x0d\x02\x4e\x6b\x76\x61\x3f\xb9\x58\x30\xfc\xcd\x0f\x26\x30\x8b\xe2\xbd\x40\xf5\x1b\x69\x2a\x67\x60\x0e\xaf\xf0\x22\x15\x08\xfa\xc3\x06\x57\xc9\xf0\x4d\xc1\x86\xb7\x05\xc3\x43\x42\x55\x1f\xa4\xa0\x70\x58\x62\x3c\x19\xde\x70\xbe\x9a\x3c\x7b\xd6\x3a\x03\xc9\xa2\xb8\x7d\x96\x15\x8b\x52\x1d\x2f\xc7\x02\x52\x26\x50\xff\x54\xd9\xae\x5b\x5c\x9f\x71\x31\x95\x1c\xa0\xbd\xaa\xb4\xdd\x9c\xb4\x41\x55\xb5\x9c\x37\xae\xf3\xfa\xea\x08\x42\x68\xd1\xfd\xd3\x9f\x3f\xfd\xb0\xc1\xce\xcc\xff\xfc\xe9\x13\x64\xea\x73\x63\x4d\xfe\xfc\xe9\xd3\xc0\x73\xcb\xfe\xd4\x9a\xe6\x50\xb9\xaa\x48\x1f\xed\x55\xc1\x31\xe5\x24\xcd\xf3\xbb\xe1\x4d\xfa\xd7\x94\x65\xc5\xba\x1c\x46\x62\x3c\x7a\xfe\xc3\xbc\x28\x56\xd1\xf0\x0a\xf3\xaf\x18\xd3\xa1\x8a\x27\xa6\x3c\xba\x7f\xd8\xf0\x6a\x98\xd2\x6c\xb8\xb8\x21\x79\x66\xbe\xb1\x2a\x19\xbe\x5d\x0e\xef\x8a\xf5\xf0\x6b\x4a\x79\xb3\x70\xc8\x8b\xe1\x15\xae\x77\xed\xeb\x4d\x08\x2a\xa9\xf7\x15\x0e\x57\x39\x4e\x4b\x3c\x5c\xdc\xa4\xf4\x1a\x0f\xff\xfc\xa9\xce\x7e\xf4\xe7\x4f\x02\xdc\x9f\x3f\x59\xeb\x5f\xb7\x68\xef\x30\x3e\x63\xbc\x32\x39\xc3\x86\xe9\x92\x63\xb6\x67\x20\x7a\x04\x84\xeb\x5e\x6b\x4b\x61\xb7\xdf\x4f\xa0\xf2\xb0\xde\x9a\x31\x28\x0f\xd8\x26\x03\xe4\x7a\x00\xf1\x1a\x77\x24\xa3\xa7\x59\x30\xc1\x3c\x8e\x46\xca\xfd\x52\x30\x8c\x6c\x34\x62\xe6\x64\x8d\x46\xd4\x28\x2c\x93\x24\x21\x52\x63\x69\xca\xe2\x4f\x3f\x6c\x68\x35\x11\x13\xf9\x24\x4b\x05\x17\xd2\x20\xc3\x44\x5c\x61\x8d\xab\xef\xed\xbb\xf3\x8b\x97\xef\x5e\x9d\x1d\x72\x81\xee\x83\x72\xd0\xc5\xe8\x8a\xa0\x1f\x22\xb9\xd0\x7f\xab\x00\xba\x6c\x2d\x7a\x2b\x75\x3a\x65\xf5\x0f\x63\x33\xf4\x4a\x2b\x2b\xd1\x52\x7f\x40\x4d\x5b\x0d\xb2\x8c\xd7\x31\x06\xdb\x2d\x1f\x8d\xac\x97\xe0\x18\x16\x2a\x27\x4e\xec\xc9\x96\x07\x9a\x70\x2e\xe3\xb8\x6d\x29\xcb\x67\xe5\x3c\xf0\x4e\xe0\x89\x7a\x4a\x00\x28\x2b\x34\x8d\x21\x2a\x27\x2b\x92\xae\x29\x5e\xe0\xb3\x52\x85\x8b\x4f\xdd\x17\x86\xe1\x17\x4b\xcc\x3f\x98\x03\xf2\x7e\x19\x73\xb8\xa8\x0f\x0c\x80\xbc\xaa\xa0\xa7\x2f\x3c\x64\xc2\xb2\x49\x70\xd6\xd8\x9b\x75\x6d\xe0\x80\xf5\xb4\xe5\x45\xc1\x01\xc4\xfe\x2c\x1d\x4b\x0a\x67\xaa\xd8\x9f\x9f\xfb\x62\xea\x98\x24\x86\x99\x3b\x49\x5c\x55\x2e\x6f\x6f\x10\x42\x2b\x44\x9c\x9f\xfa\xc8\xdf\x19\x81\x4d\xe9\x6a\x49\x4a\x6d\xe9\x2b\x66\x7e\x69\x30\xd2\xea\x8f\x5d\x6d\xa6\x7f\x37\xeb\x29\x77\x49\xd4\xa5\xfc\xc4\xa8\x07\xf6\xb7\xe4\xcd\x96\x82\x1c\xec\x6f\xc6\x9a\xcd\x6a\x99\xff\xfe\xc6\xb4\xd9\xf8\x76\x97\xd8\x4b\x43\x68\x89\xc6\x74\xdb\xeb\x80\x84\x4b\x37\x31\x8f\x5c\xb3\x26\x5a\x1e\x17\xaa\xea\xaa\x45\xf4\x3a\x48\x19\x5f\xa8\x6e\xad\x28\x51\x35\x8b\xa0\x48\x4c\x57\xae\xe5\x65\x3a\xf4\x6e\xad\x19\x5b\x3b\xc1\x25\x8e\xf0\x68\x14\xd7\xe2\xa9\x23\x27\x36\x4f\x6c\xad\x6c\xea\xaf\xdb\xed\x51\x6c\x65\x35\x84\x0e\xc5\x89\x0a\xb5\x36\x57\x38\xb0\xf7\xdd\x75\x03\xb3\x01\x42\xc6\x46\xa6\xc6\x70\x50\x09\x04\x5d\xc0\x6c\x10\xc2\xe1\x1c\x36\x10\x7d\x11\x3c\x0d\x59\xab\x9a\x0e\x5d\x18\x3e\x3c\x99\x2d\xf5\x1f\xa6\xce\xc9\x83\x79\xf3\xd5\xba\x70\x0b\xe1\x46\x0a\xe1\x1c\x6b\xd8\x45\x9a\xe7\xe7\xeb\x15\x66\xe7\xa2\x40\x73\xae\xfe\x47\x9f\xda\x40\x67\xe7\x0c\x4d\x31\x9f\x5a\x22\x3e\xb1\xf3\x6d\x04\x09\x89\xb3\x1b\x1d\x54\xd0\x28\xfa\x82\xcd\x9b\xd2\xf8\x56\x6b\x23\xb8\x0b\xb6\x6e\xca\xe1\x9b\xad\x2b\x60\xed\x41\x94\x68\x50\xcc\x4b\x8a\xd3\xc8\xe2\xb5\xb9\x44\xb7\x5b\xa7\x4c\xdf\x62\xb6\x70\xe0\x6a\x55\xc1\xc6\x5c\x4b\x86\x3a\xcb\x57\xb5\x1e\x97\x22\x77\x47\x08\x49\x92\x2a\xb7\x40\xfd\x21\x6b\xc1\x86\x4d\x0f\x6e\xd0\x7e\x6b\xfb\x73\x23\xf7\xe1\x20\x69\xd3\x77\xc8\x99\x7a\x30\x10\xb5\x90\xe3\xbb\x02\xd5\xee\x6c\x2c\x8b\x30\xfd\x42\x58\x41\xc5\x7a\x3c\x96\xe0\xeb\x91\x82\xc6\xc2\x14\x96\xdf\xcf\x46\x35\xf5\x65\x28\xe4\x70\x9a\x37\xc4\x69\x9d\x9e\x9c\x1a\xa9\x49\xf9\x1a\x97\x9c\x15\x77\xd2\xfb\x5f\xd2\x04\xf5\x26\x01\x16\xef\x19\xbe\x26\x25\xc7\x4c\x56\x54\x80\xdc\x8a\xb0\x0e\xe5\x50\x7b\x9a\x19\x47\xb9\x88\xdf\xe0\xa1\x22\xd9\xe2\x59\x95\x93\x2f\xb8\x1c\x16\x54\x3e\xec\x33\xd5\x31\xce\x86\x05\x1b\xae\x29\xc3\x34\xc3\x52\xd8\xd0\xf6\xad\x2b\x3b\xa3\x20\xc8\x64\x37\x97\xdd\xee\xb1\x2d\xcf\x58\x1a\x8c\x73\xdb\xf0\xef\xac\xfd\x68\x4d\xde\x46\xa2\x65\x52\x02\x2d\xee\x5e\xb2\xeb\x72\x3a\x4b\x92\xa4\xf1\x4d\x5a\x98\xcf\x27\x18\x16\xa8\x96\xed\x9b\x97\x98\x31\x8a\x25\x12\xa8\xe5\x35\x65\xac\xcf\x80\xa7\xaa\x8c\x1f\x14\x0c\x61\x36\xee\xb1\x79\xa3\x51\x61\x73\x07\x34\xf2\x9a\xda\xa7\x6c\x01\x60\x51\x05\x87\xd8\x4c\xeb\xcb\xbc\x27\xa5\xce\x2a\x21\x25\x3c\x32\xb1\x04\xae\x13\x4b\xa8\xcc\x03\xa1\x58\xbd\x01\xa5\xac\x0d\xe7\xd9\x2c\x11\xf8\x89\xe9\x97\x09\x49\xce\x7e\xf9\xe9\xec\xe3\xe5\xd9\xbb\x3f\xbe\xfd\xf8\xfe\xdd\x2f\x67\xef\x2e\x5c\x5d\x85\xfc\xb3\x02\x5e\x2e\x0b\xde\xa1\x97\x68\x7e\x15\x58\x23\xf7\x4d\xe3\x8c\x2b\x77\x5c\xe4\x05\xc5\xb1\xf3\x1c\xa8\x77\x18\x05\x76\x7d\xbb\x9d\xcd\xd5\xce\x43\x5e\x99\xc6\xee\xf2\x69\xc7\x4b\xed\xde\x1a\x48\x64\xf0\xe9\x77\x62\xc5\x26\x5a\xd8\x23\x25\x46\x2f\x3e\x59\x07\xe3\x1c\xa6\xf7\x12\x7f\xe7\x0e\x43\xb0\x0b\x42\x93\x91\x70\xdb\x15\x4d\xf1\xf7\x20\x40\x87\x7c\xd5\x4a\xbe\xdb\x79\x5c\x6b\xf5\xb5\x3d\xee\xfb\xab\xbf\x18\x3d\x60\x03\xaa\xca\xc1\xe5\x99\x9c\x87\x2b\x1a\x44\xfb\xc0\x8a\x6f\xc4\x6f\xb1\x03\xbb\x95\x41\xbb\xb5\x74\x7a\xff\x95\x62\x9f\xac\x01\x98\xea\x62\xbd\x3a\x6a\x7e\xb1\x3b\x09\xa0\xdf\x57\xb1\xd5\xa5\xb9\x10\x2a\x30\x50\x00\x4a\x03\x3f\x85\x05\xd0\xef\x9d\x47\x3e\x56\xa9\x39\xe5\xda\xc4\x21\x85\x4f\x71\xa4\x06\xbe\xa1\x42\x70\x47\xa5\x11\x7f\x09\x53\xe3\x0e\xf9\x95\xa5\xab\x15\xce\x9a\x48\x65\x57\xa5\x04\xd5\xde\x3a\x5a\xfc\x66\x82\xed\x0c\x05\x31\x77\xe5\x6d\xfb\x70\x46\xca\xe2\xa4\xb1\xb3\x8a\x48\xe0\xe7\xea\xed\x9a\x88\x6e\xc0\x8c\x8f\xe5\x37\x81\x5a\x9b\x6b\xcc\x8d\x0d\x95\xb6\x5b\xc4\x33\x3e\x9f\xd4\x36\x75\x14\xf2\xa4\xa6\x00\x40\x2c\xae\xdf\x60\xbb\x95\xff\x52\x58\x7c\xa5\x82\x73\x9d\x60\xf4\xe2\x23\x5e\xe6\x02\x09\xf5\xa7\x18\x03\x81\x65\x8b\x94\xc7\xcd\x12\x6a\xf9\x42\xcb\x55\x30\x65\x6e\xa8\xac\x0c\xed\x44\xf5\x5a\xa5\xa3\x51\x2c\x5d\x31\xa6\xf2\xff\xca\x2d\x43\x39\xa1\xa6\x60\x92\x8a\x8b\xa4\xc4\x5c\x56\x2a\x65\x71\x59\x17\x03\x00\x89\x18\x2a\x9b\x9a\x51\x04\x7b\x9e\x74\x94\x2a\x3b\xc5\x0a\xaa\xf3\x67\x3e\xbf\xc6\xe5\x82\x91\x95\x40\x7b\x7f\x1d\x0d\x94\xae\xea\x2a\x22\xf3\xde\x5a\x14\x72\x50\x01\x28\x99\x6f\x99\x97\xb9\x8e\x08\x7a\x08\x53\xed\x32\x98\x3d\xd9\xeb\xa0\xe6\xed\x01\xb4\x6e\x1e\x85\x6e\x85\x30\xba\xf4\x43\xdb\x40\x57\xdb\xe6\xb1\x48\xb2\x02\x6a\x7f\x3a\x8e\x5b\x79\xbe\xb6\xdb\xb1\x89\x01\xe6\xa6\x10\x7b\x31\x86\xd4\x4d\x1b\xf6\x62\x0c\x49\xdb\xeb\x04\xc3\x8d\x37\xa4\x76\x8f\x8e\x16\x8f\xd5\x2e\xfd\xd4\x7a\xf4\xb3\xd1\xe8\x88\x6a\xd5\x1d\x73\x95\x66\xda\xc3\xff\x79\x3c\x86\xbc\x4b\x4f\x48\x80\x23\xa6\x90\xcf\xe3\xa4\x61\xa2\x20\x5e\x66\x8d\x4f\xca\x46\xac\x1a\xb4\x56\xbb\x6f\xf0\x9b\xc6\x3b\xe3\x6f\x14\xf4\xe3\x80\xcc\x1c\x7d\xd5\xc4\x9e\xc3\x58\xcd\x36\xfa\x56\x49\x09\x93\xa9\xeb\x8d\x07\x7a\x53\x12\xaa\x70\x95\xa2\x5a\x2e\xd3\x75\xc0\x19\x18\x78\x2e\x37\xc8\xfb\xb5\xdd\x4a\x0f\x5f\x3c\x63\x73\xb1\x29\xda\x43\x47\x45\x3d\x36\xfe\xb8\x9a\x75\xd6\xfb\xa1\x1d\xd8\xed\xc5\x35\x63\x73\x44\x20\xaf\xf4\xc8\xc4\xa6\x2b\xff\xc0\xf4\x5e\x27\x73\xa7\xc6\x04\xb5\x2b\xd4\x4c\x99\x3e\xc6\x01\x20\x4e\x9d\x62\x7f\x1f\x29\xa4\xae\x53\xd2\x68\x14\xef\x86\x88\x48\x33\xb4\x07\xdc\x04\xe7\xd2\x68\xf4\x70\xf1\x39\xa4\xe9\xfa\xde\x69\x21\x12\x37\xd2\x6f\x74\x8c\x33\xd0\xb0\x77\x5e\xae\xd3\x4a\xf0\x29\x7e\xe0\xaf\xa2\xf9\x21\x05\x7d\x55\x5f\xea\x48\xf5\x3e\xfb\x87\x09\x3d\x42\xe1\x4a\x1e\x21\xae\x0f\x29\xb5\x78\x58\x87\xa6\x0a\x67\x02\x8b\x43\xa1\xd5\x93\x82\xe2\xa0\xa3\x37\x4e\x8a\xe5\xd2\x15\xda\x7a\x6d\x0e\x6e\x92\x66\x8a\x21\x35\xb6\x82\x1d\x00\x18\xbe\x2d\xbe\x60\xaf\xa6\x8c\x9a\xc2\x77\x07\x57\x29\x74\x70\x95\x0c\xaf\x18\x5e\xa4\x1c\x7f\x50\x1b\xa0\x96\xcb\x6b\xe5\xeb\xe9\x53\xed\xb7\x37\x4c\xb3\x4c\x90\xcb\x72\x48\x6e\x05\x1a\x48\xe5\xf4\x50\x6f\x63\x3b\x9e\xf9\xf0\x56\x02\x1e\xfe\xe6\x87\x0d\xae\x7e\x33\xe4\x37\x29\x1f\xde\xa4\xe5\x50\x0c\x3e\xfb\x24\x87\x22\xc1\xba\x21\x5e\x9a\x37\x1f\xc2\x2e\x0d\xa8\x23\xb2\xb8\x1f\x8f\x0c\xcb\x40\xfd\x1b\x7b\x10\x00\x47\x5b\x56\x3d\xac\x8e\x5b\xb1\xf1\xa2\x96\xd8\x37\x74\xeb\xd9\x61\xe2\x73\x8b\x77\x6e\x63\x06\x44\xc3\x2f\x2c\xfc\x56\xc0\xa8\x3e\xb1\x21\x3a\x93\x30\x7a\x55\x6b\xcf\x96\x5c\x06\xf1\x6e\xc5\x88\x60\xc1\x6c\x02\xa1\x88\x11\x33\xd6\x4e\xb2\xe0\x79\xd7\x2f\x9c\xe0\xb8\xbb\x82\x47\xf4\x24\x28\x82\x80\x9d\x2c\xef\x93\xe6\xab\x6f\xba\xad\x7e\x9e\xf5\xf7\xa0\x23\x62\xe8\x6f\x0a\x26\x6f\x83\x7d\x71\x8c\x74\x5d\x79\x54\x91\xcf\x3b\x3b\xb5\x89\xb6\xe3\xb7\xf5\xad\x3a\xa5\x39\x76\xff\x34\xab\x84\x9d\x83\x66\x34\x12\xd6\x40\xca\x9d\x08\x28\x15\x8c\xef\x5c\x3f\x0b\x0f\x0f\x79\x08\x0f\x99\x8a\x7b\xdc\x81\x8b\x46\x5c\x17\xfb\xf0\x61\x03\x3b\x19\xe4\x21\xec\xd4\x61\x7a\x75\x68\x1b\x0a\x3a\x5b\xa8\xf8\xc0\x14\x54\x62\x90\x0f\x83\xbb\x6d\xd2\xb0\x6b\x21\x65\xd2\x0b\x77\x29\x95\xb0\xd8\xac\xa3\xb5\x0e\x37\x71\x11\x97\xd4\x49\x61\x9d\x91\x4c\x99\xd4\xa1\x23\x9d\x6f\x6b\x5d\xe2\xf2\xf5\xfb\x5f\xb4\x33\x81\xf9\xca\xf0\x7f\xae\x09\xc3\xe5\xab\x1c\xa7\x74\xbd\x42\x47\xa7\x3b\xf6\xc4\xf4\x62\xe3\x13\xd7\x9d\x28\x17\x83\xf0\x4a\xc1\xfd\x9b\x02\x2a\x18\xca\xa1\x52\xcf\xba\x75\x75\xe9\x4c\x2e\x8d\x59\x8d\xe1\xae\x36\xb1\xbf\x70\x66\xd9\x40\x38\x81\x8b\x03\xc8\x66\x3d\xaa\x7f\x77\xc1\x9a\xc4\xe1\x75\xf5\x47\x66\x02\xd4\x07\xc6\xd2\x85\x6e\xba\x82\xc9\x1a\xe0\x4d\xdc\x1b\x5c\xe0\xf6\xee\x1c\xac\xbf\x8d\x26\x53\x41\x63\xf0\x3a\xa6\x94\x19\xfa\x72\xd9\x05\xce\xc3\x43\x1b\x45\xb3\xe8\x8d\xef\x90\xa1\x9f\x8a\x42\x74\xba\x13\xf3\x3f\xe3\xbb\x3a\x1d\x27\xce\xc8\xc2\xf5\x28\x09\xec\x24\x9b\x32\xe9\x98\x87\x90\xf1\xea\xd2\xaa\x51\xf6\x53\xb1\xa6\xd9\x7e\x9c\x37\xd5\xdf\x50\x64\xc3\x9a\x37\x7d\x41\xf5\x18\xed\x08\x81\x75\x6f\x68\x8d\x31\xa6\x00\xb8\x71\xbc\x76\x9f\x0c\x78\x34\xae\x60\x63\x18\x31\xd8\x6e\xdb\x2e\x1b\xc1\x71\xc0\x9a\x26\xd4\xed\x41\x70\x19\xc6\xbb\x71\xcf\xab\xad\xb5\xe4\x35\xc8\xd1\x48\x0f\x48\xa1\xdf\x77\x8f\xe9\x8d\xc5\xa2\x3d\x37\xfe\xfd\xcc\xc9\x0f\xd0\xcf\x3e\xda\x45\xef\x47\x25\x82\x32\x16\x6c\x98\x77\x06\x3d\x66\x0e\x06\x2a\x0e\x11\xf7\x84\xe1\x07\x04\x25\x72\xcd\x0f\xfb\x47\x32\x78\x60\xcf\xfa\x47\x33\xc1\xef\x6c\x20\xc3\x8a\xc2\x8d\xef\x1f\x7f\x8d\xf9\x24\x60\x3e\x27\x97\xb6\xda\x07\xed\x83\x5d\xc3\x5e\x50\x99\x67\xff\x22\xa0\x4b\x5b\xfe\x83\x31\xc1\x6e\xdd\x9e\x47\xb7\x8e\x84\xa6\xb5\xf3\x27\x69\x9e\xf7\xde\x6c\x13\x44\xed\xc1\x05\xb5\x6a\x2c\x2a\x7a\x1a\x62\xed\x88\x5d\x56\x94\xc6\x8c\x69\x38\x43\x78\x36\x9e\x6b\xe9\x94\xca\x0b\x60\x75\xec\x50\x0a\x39\x5b\xf1\xd8\x80\xb1\xc2\x57\x73\x76\x9d\xe0\x66\x0c\x7a\x7a\xf9\xdf\xd4\x15\x7f\x33\xe4\xf8\x76\x25\x1e\x40\x43\x35\x7d\xa9\xa1\x57\xa9\x3a\xb2\xa8\x9a\x03\x1d\xff\x4b\x51\x3f\xd5\x61\xa2\x6a\xc6\x0c\xf4\x3f\x7f\x66\x5b\xac\x6f\xdd\x83\xee\x89\xbb\x80\x35\xa3\xdf\xb9\x4e\x76\x10\xf5\x5f\x52\x1f\x70\x8f\xad\xd5\x00\xba\xf7\xf6\x61\x97\xaf\x69\xd5\xf3\xd0\x89\xde\xdb\x63\xe7\xc1\xb1\xd7\xbd\xce\x30\x4c\x92\x84\xcf\x1d\xa7\x99\x5a\xbf\x2e\x83\xe5\x3b\xb3\xe4\xbb\x67\x29\x13\xbb\x1c\xa8\x55\x79\xe0\xb0\x27\xfd\x2e\xcd\x9a\x8b\x38\xd1\xb1\x47\x4f\x6c\x04\xc6\x7e\xef\xf6\xef\xcd\xf5\xff\xa0\x8f\xfd\x9e\xb7\x5c\x4f\xd7\x43\xd7\x0c\x7d\x4f\x20\x18\xb8\x78\xb4\x8b\x4f\x4b\xf3\x7a\xdf\x7d\xba\xfe\xe3\x5f\x7f\x3b\xa1\x7b\xe6\xa0\x07\x75\xe1\xb5\xdc\xd9\x0f\xef\xcf\x12\x30\x49\x3e\xf7\x42\xfb\x37\x85\x18\x07\x80\x94\x2d\xf6\xae\xc6\x5b\x7b\x18\x7b\x81\xf6\x0d\x25\x76\x42\x97\x57\x64\x2f\xa0\x24\x49\xf3\x7c\x1f\xac\x73\xcc\xb9\xf4\x7e\xeb\x0f\x52\x37\xd9\x09\xf9\x26\x2d\x6f\x7a\xc3\x14\x95\xf7\x42\x3b\x74\xa0\x4e\x9b\x9d\xb0\x59\xda\x7b\x97\x48\x22\x2a\xef\x84\xe6\xca\x08\x7b\x42\x2d\x3c\xc1\x62\x1f\xe8\x52\x84\x70\x28\x74\xd9\xa8\x0f\xf4\x03\xcf\x70\xd1\x94\x5d\xee\xec\xc3\x66\x87\xec\x09\x3d\xad\xf3\x49\xee\xc6\x64\x2f\x90\x73\x4f\xe0\x65\x23\x84\xfd\xce\x1e\x74\x5c\xe3\xde\xa0\x75\xfd\x3d\xb8\x67\xe2\xe2\xf7\x06\x5b\x37\xd9\x4b\x83\x7a\xc2\xcc\xfb\x3d\x9e\x0e\xa1\x94\xeb\x9a\xae\xef\xc6\x06\x1d\x73\xb0\x27\xd8\x85\x0d\x52\xd8\x0b\xea\x21\x23\x5e\xf8\xf1\x0f\x77\xc2\x77\xa2\x1f\xf6\x86\xee\xb4\xe9\x0b\xfb\xb0\xe1\x37\x1b\xee\xec\xc5\x46\xbc\xec\x0d\xde\xb6\xd8\x09\xd7\x8f\xf2\xd8\x1b\xb8\xdf\xec\x80\x1e\x0e\x5b\xa2\x40\xdb\xdd\xa7\xd3\x8f\x3e\xd9\xbb\x9f\x46\xbb\x43\xfa\x38\x6c\x42\xa1\xc6\x55\x38\x59\xc8\xea\xee\x99\xf8\x5f\xf8\x85\xa2\x0b\x1f\x27\x47\x97\x79\x40\x39\x50\x95\x23\x61\xc8\x2d\x8a\xae\xf3\xdc\xc9\x23\x3f\x94\xae\xc5\x47\xcd\x88\x7b\xa3\x91\x75\x7b\xd3\xa9\x18\x63\xec\x48\x6e\xc5\x5c\x62\xd6\x8a\xdd\x6e\xc3\x04\x17\xe1\xee\x99\xed\xde\x78\x36\x0e\x99\x34\x18\x4b\x61\x39\x50\x21\xdd\xe3\x12\x11\x95\xc3\xf3\xfd\x32\x66\x00\xbc\x40\x63\x53\xb5\x98\x95\x73\x51\xcb\x1f\x2b\x03\xb2\xaf\xd4\x86\x94\x07\x90\xca\xf0\x89\x25\x4a\x4d\xd8\xc4\x93\x93\xf2\x05\x1a\x3f\x07\xe9\xac\x9c\x23\x1c\x8b\x7f\xf4\x30\x2b\x9c\x97\x78\x48\x96\x71\x6b\xba\x0c\x00\x01\x53\xce\x54\xd5\x1d\x98\xba\x6c\x68\x9e\x5d\xc5\x72\xf8\x3a\xe5\x18\xa4\xd2\xda\x53\xfc\x19\x4b\xb1\xb8\xb8\x3f\x62\x00\xea\x40\x3d\x7c\x20\x86\x24\x4d\x16\x53\xb4\xa9\x20\x03\x4d\x97\x32\xc1\x4d\x39\xf6\x4d\x2a\x7a\x12\x83\x1c\x8c\x46\xd1\xe5\x65\xa4\x3c\x84\xd6\x57\x2a\xc6\x74\x3c\x86\x3f\x82\xd1\x28\x4e\x67\x7c\x8e\xe8\x14\xc7\x6c\xc6\xcd\x94\x26\xe2\x6f\x50\x89\xb5\x24\x2a\x16\x18\x03\xb0\x50\x7f\xa5\xb5\x8f\x67\x5a\xc9\x50\xde\x6c\x3a\x9b\xab\x5c\x77\xf6\x2f\x50\x89\x77\x79\x07\x7a\x37\xb3\x53\x3d\x92\x8c\x41\x89\x15\x7e\x21\xdf\x08\x75\xac\xa9\x57\x77\x72\x80\x9d\xe7\x6f\x87\x88\xc0\x9e\xce\x3e\x47\xf2\xfb\x25\xdc\x9d\x0d\xd4\x20\x7a\x3e\x3b\xf5\x6a\xec\x24\x6f\xaf\xec\xa6\xf4\x7c\x61\xd5\x40\xdb\xab\x98\xa5\x3c\x3d\xb9\x2d\x32\x9c\x9f\x2c\x59\x7a\x2d\x9d\xcc\x9e\xa5\xe2\x9c\x3d\x33\xbf\x43\xcb\xbb\xa3\x99\x34\xaa\x92\xb1\xa7\x77\xd5\xad\x81\xef\xaa\xb5\xe6\x24\x7f\x66\x8e\xde\x49\xb1\x3c\x11\xe7\xe6\xb0\x00\xff\x5c\x1c\x12\x13\xdd\x3f\x45\x5e\x40\xeb\xe2\x2b\xc5\x2c\x02\xb0\x74\x3e\xa7\x30\x2a\x79\xc1\x70\x04\x60\xee\xd7\x96\x7d\x03\xb8\x6e\xc0\x50\xde\x1c\x11\x80\x0b\xbf\x80\x0a\x9e\xb9\x0e\x14\x95\xdc\xa6\xab\x38\xa6\x30\x03\xe8\xc5\x26\x00\x57\xd0\x39\xa9\x14\x21\xe5\x1b\x3d\x7f\x10\x53\x00\x36\x05\x52\x31\x23\x74\xfe\x3c\x42\x95\x34\xe7\x17\xb1\x54\x6f\x0a\x06\xe2\x02\xa8\x10\x39\x2c\x7b\x9d\xf2\xb4\xf6\x62\x00\x03\x2c\xd3\xc7\x4b\xc7\x03\x03\x53\x16\x81\xb8\x80\x29\x5c\x68\x5a\x58\x20\x3e\xcb\xe6\xb0\x98\x92\x69\xb3\xb6\x00\x28\x2a\x53\x30\xb1\x2e\x0c\x8e\x67\x89\x2c\x28\xd4\xb8\xd4\x99\xad\x87\x5e\xc2\x5c\xf4\x01\xd7\x8e\x59\x65\x71\xbf\x40\xf2\x01\x31\x24\x41\x35\xf9\xd6\x0e\x19\x1b\xb1\x8e\x8a\xb0\xe9\x3d\x51\x3f\x2e\x69\xc1\x6e\xa5\x5d\xa8\x98\x8d\x6b\x5a\xa2\xec\x80\x1b\x51\x6e\x23\xe9\xb5\x41\x79\x04\xa0\xca\x4e\x0f\x2f\xd5\xd4\xce\x69\xba\x2a\x6f\x8a\x86\x2f\xb7\xdc\x56\x19\x08\xb5\x55\x4d\x34\x5d\xe6\xeb\xf2\xe6\x95\x0c\x27\x92\xbd\xe4\x9c\x91\xab\x35\xc7\x36\x26\x8f\x6e\xbb\xc1\x49\x67\xc5\x4a\x40\x11\xcf\xb5\xe2\xf6\x96\xf0\xda\x56\x5b\x69\x8c\xdb\xbe\xac\xe2\x89\x74\x96\x2e\x6e\x6c\x92\x27\x9e\xb8\xcd\x47\x23\x69\x14\x2b\xa1\xa6\x59\xba\xe2\x98\xbd\x26\x99\x1f\xfa\x67\x3f\x6c\xae\xe0\xb6\x01\x08\xb8\x37\x69\xf9\x9a\x30\x7e\x57\xcf\x62\xd2\xf0\x69\x8d\xfe\x15\xa7\x8b\x9b\xa4\x5d\x31\x82\xd1\x65\xc1\xc8\x35\xa1\x69\x7e\xae\x4c\x93\x43\x71\x1d\xba\x06\xa9\x55\xf7\xa4\x7c\x49\xef\xe2\x28\x00\x5e\xd2\x3f\x56\x28\xc5\x74\x7b\x3b\xba\x27\xae\x14\x20\x71\xd4\x6e\x1b\x81\x0a\x96\x98\x11\x9d\x9e\xde\x1b\xa3\x69\x65\xcb\x45\x65\x86\x57\x79\xba\xc0\xaf\x14\x96\xf9\xae\x85\xdd\xa8\x58\x20\x8d\xad\x44\xf3\x3c\x18\xe2\x63\x0e\x1c\x07\x42\x92\x68\xc8\x12\x64\x01\x2a\x98\x66\x99\x39\x8e\xcd\x08\x93\x52\x8f\xfe\x17\xc5\xe3\x89\x21\xdd\x16\x5f\x70\x57\x5d\xa3\xe2\xb6\xd5\xfd\x93\x5e\x47\x2f\x6a\x8e\xde\x50\x57\xe6\x96\xd4\xd4\xb5\x15\x5f\xda\x10\x58\x82\x9a\xd4\x24\xa6\x10\xfb\x4e\x45\x82\xb7\xd1\x43\x22\xa0\x82\x5f\x49\x9e\x6b\x17\xc8\xfd\x9b\x69\xb0\x58\x9d\xbc\xcc\x34\xab\x8c\x27\x92\x87\x81\xdd\xb5\xab\xca\x55\x65\x04\x32\x33\xf5\xba\x23\xc3\x9c\xcb\xee\x5b\x31\x9c\x02\xfb\xe1\x95\xf4\x9e\xb2\x4a\xf2\xde\xd2\xbb\xc9\x7a\xc0\x25\x86\x13\x81\x1b\xb9\xd7\x8a\xde\xca\x90\x91\x2a\xf3\x35\x25\x7c\xff\x76\x5c\xae\x30\xcd\x08\xbd\x16\xd4\xd9\x58\x07\xd8\xcb\xc6\xc6\x4b\xf6\xa9\xc2\x6c\x2e\xf0\x50\x9d\x8e\x26\x75\x09\x50\x0c\x3d\x83\x58\x9e\x7f\xc9\xdf\xb7\x69\x38\x97\x8c\xbf\x3c\xcd\x7c\xbd\x32\x57\x85\x8d\xda\xe9\x0e\xd2\x49\xe7\xde\x2e\xc4\x9e\xc3\x99\x7f\xf7\xa8\x71\xdc\xa6\x9f\xb1\x79\x75\x35\x4e\x87\x7f\xea\x07\xfb\x96\x41\x10\x00\x7b\xec\xc7\xce\x4d\xc6\x60\xa4\x1e\x42\x11\x80\xbc\x7b\x9d\xab\xc6\xe5\x28\x0d\x87\xf6\xdc\x77\xbc\x50\x63\xdf\x79\xbb\x35\xef\x2c\x6d\x50\xe6\x2e\xed\x64\xef\xe4\xbc\xde\x42\x17\x96\xe8\xa7\xc7\x6d\x33\x9b\xf7\xbb\x57\xc6\x47\x08\xd5\x6d\x53\x66\x52\xd7\x99\x21\xb4\x38\x85\x06\x4c\xb0\xe7\x7a\x29\x31\x57\x47\xb2\x8c\xf7\x43\xea\xbc\x54\x9c\xf5\x97\xb4\x44\x5f\x24\xaf\x49\xa6\x36\x62\xd7\x81\x1b\x04\x33\xc0\x58\x42\xdd\x26\xe1\x9a\x87\x6d\x7e\x0e\x5d\xad\x8a\x77\x34\x44\xea\x35\xc9\x64\x0d\x95\x13\x86\xcb\x3c\x31\xcd\x0a\x1f\x71\x89\x39\x30\x51\xb7\xb5\x27\xe4\x99\xa0\x2d\xa5\xbb\x2f\x9f\xe4\xf0\xe2\x1f\x36\xc1\x61\x27\x24\x13\xd7\xfa\x27\x9f\x1a\x07\xd4\xe7\x61\x6a\xec\xb0\x1e\x3d\x1f\x39\xf6\xe1\x72\x80\x09\x82\xbd\xe2\x29\x8a\x4e\x6e\x97\x27\xd1\xb1\x94\xc1\xf0\xd1\x28\xa6\xc7\x28\xfa\x21\x92\x57\xf9\x68\xc4\x92\x55\x91\xdf\xdd\x16\x6c\x75\x43\x16\x60\xa3\xcb\x62\x96\x88\x9b\xf1\x0f\xf8\x6e\xbb\xd5\x77\xa4\x71\x55\xa4\x55\x20\x99\xd9\xd1\x29\x2c\xd0\xd1\xa9\x71\xf4\x54\x7c\x31\x86\xa4\xb4\xdb\x25\x1e\x8b\xf5\x33\x43\xfc\x32\x1c\x33\x43\x6c\xbb\xdd\x74\x66\x18\xda\x28\x9f\xd1\x8d\x96\xe0\x20\x69\x52\xd1\x7e\x91\x70\x37\x99\x57\x8a\xc8\xb4\x6c\xbe\x50\x4c\xdf\x9a\x0e\xca\x91\xcb\x5d\x2d\xc0\xa4\xb3\xb2\x53\x0f\xc0\x54\x52\xea\x18\x43\x93\x1f\x03\xe6\xbd\x86\x43\xa6\x71\x89\xf2\x03\xc6\x03\x9b\xd5\xcb\x46\x75\x29\xc2\x8d\x31\x2c\x61\xaa\xda\x50\xc8\x60\x01\xc0\x64\x57\x47\xde\x5c\x76\xf4\x10\x02\x0e\x00\xf4\xeb\x5b\xec\x9c\xe1\x39\x2a\xab\x0a\x24\xb7\x98\xa7\x71\x0a\xfc\x34\x6e\x1c\x32\xf1\x14\xb6\xcf\x1f\xf5\x45\xe0\xc2\xbd\x9e\x65\xa6\xd7\x0e\x53\xfc\x98\xc5\x51\xfd\xca\xc7\x50\x66\xc0\xde\x08\x2e\x0b\xea\xb4\xc4\xee\x22\x86\x81\xf0\xed\x36\x96\x39\xcd\x20\x71\xc1\x9d\x48\xca\x27\x81\x4a\x70\xea\x9d\x86\x93\x34\x00\xa9\x95\x88\x00\x4f\x63\x8e\x30\x34\x81\x69\xc1\xc4\x76\x62\x51\x44\xf4\x65\xba\x10\x1d\x48\x6e\xe6\xe8\xd4\x1b\xb5\x7c\x48\x07\xf2\x33\xef\xe5\x46\x76\x21\xa9\xb7\xab\x97\x92\xc0\x55\x40\xef\xe6\xa6\x3e\xb1\xb2\x6f\xb9\x0d\x09\xc3\x69\xf6\x9e\xe6\xe2\x3e\xe8\x49\xf3\x64\xa2\xd3\x30\xb1\x7b\xa6\x78\x73\xef\x93\x6c\xee\x7f\x32\xe6\x1d\x8d\xb6\xe6\xc2\x62\xe5\xb3\xbf\x94\x8e\x51\xca\x2e\x1e\x76\x67\x1d\xb5\x16\xb2\xec\x7e\x34\xf9\x21\xe3\xee\x74\x36\x38\x57\x6b\xf6\x80\x02\xbe\x5f\xd4\x92\x1f\x2c\xdd\xeb\x86\xf8\xef\xe7\xef\xdf\x9d\xdb\xfd\xe9\xad\x99\xaf\x41\xdb\x18\x7c\x34\x79\xeb\xa2\xae\x13\x22\x64\x8d\x68\xf2\xb1\xc6\x5e\x5b\xa0\xb9\x07\xed\xf7\xbd\x86\x1b\xf1\xf8\x37\x98\xfc\x07\x7c\x57\xcb\x1d\xec\x86\xa2\xc6\xef\xed\x56\xcf\xcc\x08\x86\xeb\xb9\x4a\xc7\xe2\x46\x75\x50\x3f\xda\xc4\x91\xf5\xbb\xd3\x04\x55\xf7\xd9\x1c\x0b\x37\xc9\xfe\x86\x3a\x31\xb5\x4b\xb2\x39\x18\xb0\xd1\x08\x4b\xc9\x4a\x65\xe3\x15\x60\xd6\x14\x4d\xa8\x73\x0b\x6d\xb8\x0f\x3b\x41\x59\x80\xb0\x2c\x32\x79\x25\xf4\x3b\x41\xfa\x0c\x49\x90\x81\xc8\xc3\xb2\x58\x16\x76\x3d\xd2\x0f\x5b\xbb\x46\x95\x19\x9e\xcb\x21\x39\x77\x13\x7f\x58\xf0\xc6\x83\xa1\xd1\x67\x40\xae\x45\xca\x77\xf8\xab\x60\x61\xf0\x34\xc6\x09\xd3\x06\x6e\xe5\x0d\x59\x95\xda\x0a\x5f\xc5\x9c\xfb\xe8\x96\xc8\x38\x41\x09\xc9\x8c\xbb\x88\x24\x63\x7f\x92\xc1\x42\xe4\x0b\x43\xa1\xe5\x5b\x1d\xb4\x45\x52\x0f\xe9\xca\x21\xda\xa8\x81\x2d\x72\x82\x29\xb7\x9e\x4c\x24\x43\xd2\x2c\x79\x51\x60\xb6\xc0\x6f\x33\x10\x8b\xaa\x00\x40\xe9\x55\x69\x99\x46\x18\xc2\x21\x85\x60\x5a\xfc\xc6\x3c\xe9\xdb\x8c\xcf\x01\xd0\x7e\x28\xe1\x56\x26\x0b\x90\xd3\x0a\x98\xc3\x67\xc3\x12\xa9\x07\x97\x8e\xff\xe1\x73\x6a\xfa\x94\xa9\x8a\x82\x56\x9a\x64\xf3\x84\xbe\xc9\xc9\xf5\x0d\x7f\xd9\x18\xfc\xa5\x33\x1b\x13\x9a\xc7\xf9\xe6\x38\x59\x05\x40\xb8\xa5\xeb\x55\x96\x72\x1c\x78\x0c\x42\x49\x9a\x6a\x71\x2d\xc3\xc5\x0a\xd3\x58\x27\x5e\xa8\x29\xc6\x1b\xe3\x16\x63\x53\x47\xdb\xfb\x18\xe9\x4d\xc1\x94\xcb\x78\x8b\xaf\xd2\xc5\x8d\x0c\x93\xfd\x9e\xbd\x72\xa0\xbc\xb5\x15\x62\xcb\xf4\x66\x13\x0e\x73\x92\x4d\x58\x05\xa0\x8a\x6f\x6a\x52\x60\x10\xe9\x88\xd5\x14\x66\x99\x98\x40\x6c\xb0\xf1\x56\xbd\xd9\xb9\x6a\x57\xf7\xf8\xa6\x60\xef\xf0\x57\x35\x0e\xd3\xbb\xe0\x28\x90\x59\x3b\xff\xbe\xff\x88\xcb\x62\xcd\x16\x38\xe6\xa0\x62\x89\x32\x9c\x54\xe1\x38\x50\x51\x0b\xb6\x6f\x57\xfc\x0e\x32\x9f\x29\x90\x94\x42\xa9\xef\x02\xdc\x82\x29\xc9\x8b\x34\xc3\xb2\x20\x56\xaf\x3e\x8a\xe4\xd3\x49\x0f\xb0\x16\xa6\x8d\x46\xb4\x21\xd4\xe7\x00\x52\x1b\x58\x3a\x12\xfc\xc5\x5d\x24\x3e\x5d\xd6\xfc\x07\x3a\x1a\x43\x5a\x39\x4f\x08\x2d\x2a\x89\xd2\xd5\x2a\x27\x8b\x54\x7b\x24\x21\xbc\xdd\x46\x27\x7a\x36\x91\x23\x36\x39\x3a\x75\x85\x24\xb7\x7a\x4d\x1c\x64\x2e\x9b\xba\x59\xee\xbe\x88\x99\xaa\xdc\x14\x3b\xd6\xb1\x9b\x00\x64\xea\xfc\x5a\xe9\xc6\x2f\xe6\xcc\x83\xb8\x21\x49\x74\x26\xc1\xc0\xd4\xe7\x1d\x4d\x64\x93\xbc\x28\x3e\xaf\x57\x8e\x20\x97\x4d\xc4\x93\x6d\xd0\x8c\xe8\xc8\xa6\x6c\x12\x77\x34\xb0\xec\x4a\x04\x60\xdd\x60\xbb\xed\xac\x6f\xd6\x0d\x00\x71\xdd\x48\x7a\x32\xe9\x7c\xd9\x8b\x23\xc6\x5a\x47\xac\xaf\x58\x34\x1e\xc3\xb2\x17\x4b\xca\xb0\x73\x4d\x94\x71\xb0\x5b\x95\x86\x66\xb3\x24\x38\xcf\x5a\xc2\x98\x76\x3a\x5a\x71\x28\x7f\x49\x57\xde\x9e\x08\xda\x68\x42\x6c\x5a\x36\xc6\x28\x34\x5c\x0d\xd9\x14\x2b\x01\x12\xac\x5f\x1a\x60\x22\x2a\xb8\xd7\x83\xad\xc4\x92\xcf\x84\x66\xaa\x82\xa5\x50\xa3\x91\x85\x61\xc9\x5e\x04\xc4\x03\x47\x70\xde\x0e\x7b\x0d\x60\x53\xda\xaa\xce\x95\xcc\xb0\x24\x93\x48\xb6\xe7\xa6\xa3\x6e\x71\x1d\xcb\xcb\x88\x61\x2c\xef\x56\x27\x4c\xc2\x5e\x66\xc4\x38\x87\x91\x2f\x85\x8b\x7c\xad\xbb\x49\x7f\xef\x90\xea\x41\x20\xe2\x0a\x07\x9e\xfc\x5a\xe1\x33\x9f\xe1\xf9\x20\x1c\x0d\x81\x35\xb5\x58\xe2\x46\x15\xf7\x77\xab\x20\x06\x66\x8d\x20\x69\xe1\x1d\x67\x29\x2d\x97\x05\xbb\xd5\x07\x95\x2c\x63\x81\xed\xd8\x9a\x79\x28\x29\x88\x35\x2f\xe9\x16\x58\x19\x1a\xdc\x71\xc8\x23\xdb\xd3\x44\xcb\x54\x8e\x78\x72\x93\x96\x1f\x65\xa8\x4a\x96\xaa\xe0\xab\xa0\x8e\x2c\x83\x93\x5b\xe9\x0a\xfd\xec\xff\x8a\x11\xc4\x06\x6b\xb6\xfe\xcb\x72\x2b\xff\x0f\xe2\xe9\xe4\xcf\x3f\xc4\xb3\xff\xfb\xc3\xfc\x18\x80\xa9\xfa\x95\x88\x3f\x7f\x78\x06\x20\x41\x74\x76\x3a\x87\x05\xa2\xb3\x1f\xe7\x30\x45\x74\xf6\xdb\xb9\x8e\xe9\xc6\x13\x1d\xba\x5a\x4c\xdf\x1b\x22\x01\x83\x12\x95\xa3\x91\x60\x38\xd2\xb2\x84\x25\x2a\x7d\xf5\x65\x01\x1d\x09\xd0\xc5\xdd\x4a\x72\xf1\x93\x14\x4a\x8e\x66\x52\x33\x37\xf2\x46\x35\x01\x39\x63\x06\x4b\x2b\x12\xe2\x86\x98\x30\xd0\x5f\xe1\xbf\x4b\xd5\xbf\x5f\x1f\x21\x5e\x94\x8f\xa0\x8c\xb8\xc6\xfc\xe5\x82\xaf\xd3\xdc\x9c\x76\xb1\x1e\x88\x0a\xae\xad\x41\xaa\x10\x81\xb8\xa5\xe4\x96\x51\x71\x1a\xba\x6c\x94\x42\xdc\xd0\x2d\x35\xa2\x02\x40\x02\x4b\x98\xab\x03\xb6\x46\x54\xa6\x4e\xcd\x01\x5c\xa0\x66\xbb\x78\x5d\xab\xb5\xe3\x85\x94\xac\xc0\x34\x5e\xc8\xca\x95\x0c\x90\x12\xe8\xc1\x8d\x8d\x82\xdd\x1b\xb5\xda\xe1\x05\xe6\x06\x8a\x3f\xe2\xae\x88\x70\xbb\x3d\x62\xb5\x55\x97\xa1\x2a\x33\xde\x94\x17\xce\xb7\x5b\xec\x89\x82\x5c\xef\x1c\x6f\x31\xbd\x4c\xfa\x2e\x95\x23\x6e\xd2\xab\x10\xe3\xc1\x21\x0d\x30\x2a\xcc\x11\x9a\xe3\xc4\xf1\x80\xae\x29\xb6\xdc\xac\x9a\xff\x88\x80\xa7\x66\xc6\x09\x2d\x38\x59\xde\x19\x94\xd1\x42\x6e\xae\xa8\x8f\x9f\xfc\x1e\x6c\xc4\x28\x1d\x2d\xc3\xa6\xa6\x8e\x32\xb5\xcf\x97\x94\x0d\x4b\xc4\x12\xf5\x74\xd5\x07\x4f\x0d\xf0\x95\x14\xf9\x4b\x65\x96\xab\xd7\xd2\x9a\x00\x9b\x0d\x15\x21\xc4\xa7\xe3\xc9\xa9\xd1\x22\xd5\xe9\xdc\xbd\xc9\x31\xe4\xbf\x8a\xa4\x91\xd5\x00\xcb\x8b\xcd\xde\x3c\x92\x24\x33\x41\x5d\xa5\x48\x48\xaa\x9f\x9a\x9a\x01\x2c\xc8\xac\x66\xe0\x70\xfd\x72\xd1\x9a\x6e\x7f\xef\xea\x62\xef\x32\x95\xf4\xa2\xad\x50\x65\x3b\x15\x38\x24\x70\xf9\x0b\x6e\xc2\xbc\x49\x9a\x0a\x1e\x53\xbf\x56\xd1\xe8\x32\x77\x0b\x70\xf3\xb1\x68\xc2\x53\x84\x54\x3b\xa1\x11\x2c\x24\xcc\x3f\x09\xfa\xfe\x17\x99\xd9\x26\xee\xd0\x1c\xa8\x6d\xd1\x20\x20\x47\xea\xb8\xb5\x90\x56\x0a\xe1\x77\xe9\x19\x60\x64\xd4\x0b\xaa\x4e\x14\x55\x52\xe6\xe6\xf2\x39\x61\x34\xde\xcf\xf8\xcc\xe6\xf7\xe3\x79\x64\x47\x62\x3e\xd2\xbe\x8f\x07\x59\x15\x47\x15\x52\xf6\xbc\x02\x3a\x2d\xe9\x82\xb5\xbf\x60\x56\x92\x7d\x32\xbe\x7e\x36\x5e\x4d\x63\xb3\x5d\x75\xed\x5d\xda\x17\x78\xa0\x81\x11\x1e\xf7\x6c\xd6\xa3\xb6\xa3\x45\x7a\xd4\xc0\xdf\x8d\x0b\xc2\x88\xe4\x14\xa6\xc9\xac\x97\xab\x74\x81\xad\x24\xe6\x8f\x67\x1f\xcf\xdf\xbe\x7f\x37\xb1\x4f\x6f\x68\x35\x3e\xac\xf5\x49\x0a\xe1\x27\xb4\xf5\xfd\xc2\x72\x2f\x24\xdc\xa6\xae\x60\x1f\xae\xb0\x51\x60\xdf\xdc\xd0\xac\xd9\xa4\xb4\x72\x74\xe8\xa9\x01\x9c\x02\xf9\x5b\xe9\x38\x27\xa5\x12\xed\x43\xef\xb0\x39\x75\xdf\x2b\x49\xb9\x16\x35\xe6\xe4\x8a\xa5\x8c\xe0\x72\x34\x6a\x7c\xa8\x59\x26\x25\x64\x1d\xda\xb7\x4c\x04\xf3\x44\x2f\x98\x8a\x2d\xb0\x46\xb9\x73\x8a\xd6\x3d\x4f\x91\x27\xb2\xee\x10\xb2\xb7\xc4\xe7\xfb\x39\xac\xb0\x1d\xe4\x77\x0b\xd8\x0f\x31\xd8\x3c\xe4\x98\x3e\x85\x3c\xbe\xd6\xc4\xd4\x22\xa4\x12\xb5\x0e\x89\xa0\xb5\xb9\x1b\x0b\x7a\x10\x6e\x98\xeb\xc0\x4f\x6b\x27\x6e\x7e\x5d\xde\x15\xab\x08\x5b\xeb\x8a\xa5\xcb\x65\x06\x6e\x39\x1d\x7c\x5d\x45\xfb\xb0\xc2\xd4\xce\x8a\x46\xd6\xd6\xa3\xea\xb2\x7f\x15\x49\x23\xc4\xc5\xa3\x1f\x82\x8e\x28\xb3\x4e\x90\x24\xdf\x6c\x92\x83\x54\xf2\x51\x9c\xe4\x24\x03\x03\xf7\x59\xc9\xfc\x67\xa5\xe0\x61\x9c\x0b\x4a\xcb\x69\xbd\x4e\xd5\x65\x85\xc5\x65\x95\xeb\x80\xbb\xf2\x6e\xae\xae\x7d\x06\xfd\x4f\x84\xdf\xbc\xb6\x39\x6a\xb9\x15\x05\xa2\xd6\x22\xcb\x47\x6c\x43\xfe\x42\xa6\x64\xd2\x96\xe0\x50\x71\xcd\x07\x43\xff\x69\x5c\x91\xb2\xd7\xda\xd5\xc1\xfd\x1a\x4b\xbb\xdc\xc8\xfd\xa4\x72\xcb\x50\xe4\x57\x54\x86\xff\x52\x06\x26\x2f\x8c\x23\x84\xb8\x17\x86\x9a\xa2\xd9\xbc\xb2\x1a\x40\xa6\xd9\x3d\x2a\x55\x97\xb1\x98\x68\x25\xf9\x56\x57\x12\xe9\x88\x42\x5b\xca\x88\xd0\x62\x19\x55\x27\x30\x79\x07\x5c\x69\xbb\xa3\xff\x2e\xb6\xdb\x58\x5a\xed\x96\x2d\xab\x5d\xaa\xd8\x45\x79\x50\x05\x48\x12\x46\x5c\xc1\xb4\x16\x00\x16\x26\x00\x54\xa0\x98\x40\xe2\xed\xee\xbe\x09\x89\xc9\x14\x6b\x2e\xe5\xb9\x2a\x29\xa2\xbf\xbd\x48\x6c\x6f\x6d\x45\xd4\x02\x3b\x21\x55\x97\x62\x5e\xd1\x1d\xe9\x61\xde\x50\xd3\xd6\x2e\x25\xd3\x58\xa9\x81\xd7\x53\x7b\x5b\xd9\x8b\x54\xbe\xcc\x4b\x6b\x23\xa1\x4d\xdc\x30\xd4\x46\x6f\x15\xa8\xaf\x3e\xdb\xa6\xbb\xb2\x0e\x39\x6d\x4c\x81\x18\x00\x13\xe3\x22\x33\x1a\xc5\xdc\x91\xa9\x7b\x1a\x94\x6e\x2a\x32\xc3\x73\x81\x6d\x26\x4f\x87\x66\x5c\xbb\x6c\x74\x48\xc0\x46\x47\xee\xb5\x34\xd0\x21\x01\x03\x1d\x2a\x15\x03\x55\xc0\x28\x41\x2d\x6c\x61\x4c\x30\x72\xa4\xd1\x47\xe6\x2e\x04\xca\xa0\xbd\xf4\x0c\xda\x19\x00\x5c\x61\x5e\xdb\x26\x5d\xe2\x1c\xb0\x07\xc9\x1e\x9f\x90\xe5\xb9\x0a\xca\x3b\xe0\x61\x2c\xce\x61\x21\xf1\x37\x15\xaf\x1c\x69\xe3\xae\x96\xd5\x63\xb8\x7d\xdc\x4c\x45\x13\x20\xd6\x51\xc7\x5a\x6b\xa8\xaf\x76\xae\xdc\xbe\xa5\x0b\x18\x98\xe8\xbb\xd0\x24\x20\xe8\x75\xbc\x15\x65\x01\x30\xbd\xcf\xe1\x49\xa7\xb1\x6e\xe7\x9d\x1f\x33\x1e\xb1\x8d\x4c\x1d\xf8\x14\x4c\xd2\x2a\x58\xc9\x5c\xe0\xa5\xde\xef\x81\x43\xe0\xa4\xf8\x3b\xce\x51\xd9\x75\x80\xa8\x3d\x40\xc4\x3f\x13\x7c\xe7\x01\x6a\x57\x56\x37\x88\x7e\xe2\x8b\xe3\x93\x3b\x67\x26\x40\x89\x72\x98\x57\x3b\xd7\xaa\x9d\x99\xa9\x89\x00\xd3\xd6\x97\x89\x5f\xb9\x75\x5f\xdb\x46\xa1\x92\x46\xe3\xf6\x98\xa7\x1d\xdf\x75\x43\x7f\x77\x94\x41\x65\xad\xaf\xa8\x1f\x96\xae\xae\x32\x78\x2b\x9b\x5b\x9c\xa2\x17\x1b\x65\x90\xe6\x8f\x6c\xc7\xb2\x51\x20\xed\xd5\xc4\xb5\x4e\x01\xa4\x32\x34\xbf\xd3\x9d\x09\xe1\xe7\xde\xd8\x74\xee\x69\x4f\x67\xd4\x32\x22\xa1\xd9\xd2\xb9\x22\x23\xfa\xbe\x10\xb3\x72\xbd\xf0\x2c\xc6\x4c\x99\x6b\x57\xea\xc3\x07\x13\x82\x58\x53\x4c\xe2\xca\x01\xc4\xf8\x5b\xa2\xa2\x06\x90\x4a\x32\x79\xa3\x11\x71\x99\x1e\x16\x96\x4b\x61\xa0\x09\x4e\x4d\xd2\x75\xfc\xf1\x8e\x39\x4a\x0d\x4a\x65\x87\xe1\xaa\x9d\x20\x45\x9b\x6a\xc0\xfa\xee\xa1\x34\x50\x97\x59\x18\xbc\x16\x31\x55\xf2\x7b\x67\x4a\x78\x6e\x82\xa2\x37\x3e\x1b\x59\x13\x09\x10\x8a\xd6\x2a\x51\xb9\x2e\x05\x92\x9c\x70\xbd\x90\x0c\x72\x47\xc1\xe1\x8e\xc4\xd3\x50\xbb\x45\x90\x02\x48\x4c\x1e\x8b\x02\x54\xae\xa0\x49\x09\x4b\xa0\xf2\xa6\x94\xd3\xf3\x8f\x22\xe0\xed\xd3\x0a\xa5\xda\x22\xd1\x76\xd4\x53\xfb\x57\xc3\x96\xdf\x47\x0b\x25\x90\xed\x44\x14\x4f\xf8\x05\x26\xbc\x6f\x5d\x1b\x7f\x3e\x30\xca\x2e\xf2\x80\xf8\x40\x2d\xaa\xd7\xe9\x4d\x5a\x86\x24\x75\x3e\x09\xd6\xda\x7e\x77\xd9\xdb\x86\x32\x4e\x31\xd0\x0e\xb3\x2f\xc6\x95\xd4\xed\x19\xfd\xb0\x7a\xdf\x24\xde\x37\x13\x43\xb5\xa1\x02\x6c\x7e\xf8\x8e\x1d\xb3\xde\x15\x9d\x8b\x06\x1a\x50\x5b\xcb\x67\xa0\x87\xd6\x75\x67\x2f\xa1\x06\xcd\xde\x1a\xc7\xd7\xf4\xd5\xa6\xd3\x3b\x7b\x6a\x57\x07\xd5\x22\xb0\xb3\x4a\x4c\xa8\x36\x22\x50\x2e\xc7\x26\xf5\x80\x43\x13\xc0\xd5\x23\x0c\xc6\x8e\x81\x2c\xe3\x7d\x77\x15\x9f\x8f\x46\x31\xeb\x2e\x75\x34\xd6\x8d\x1d\x71\x5b\x2e\xc3\x2d\x18\x90\xca\xd1\x59\x70\xee\x7c\xde\x64\x75\xf9\x7c\x5e\x3b\x51\x33\x48\xc3\x4b\xcc\xe7\x03\x3a\x1a\xd1\x8e\x0b\x01\xb9\x59\x76\x82\x9c\xf0\x84\xca\x71\xd3\x5d\xc7\x38\x7c\xe0\xa4\xa1\x76\xac\xa6\x44\x21\x9d\x83\xca\x68\xde\x70\x15\xb4\xfd\xb7\xd2\xde\x7a\xbf\xda\x67\xc2\x4a\x73\x3b\x30\x9f\xfb\xc2\xe2\xf0\x0d\xc0\x6b\x15\xef\x9e\xcb\x5b\x59\xb2\xc5\x2c\x09\x8d\x18\xda\xc1\x00\x15\xae\x50\x11\x66\x4d\x11\x02\x0d\x40\xe5\xe9\x02\xe4\x1c\x21\x1b\x30\x25\x76\xaf\x89\xcd\xd4\xfd\x31\x09\x69\x48\xcc\x12\xd1\xfb\x1c\x70\x3a\xdf\x73\xa0\xe9\x3c\xcc\x23\x52\x41\x71\xf7\x2f\xaf\xb8\x35\x76\x9e\x78\xcf\x6c\x8b\x89\x73\x6d\xef\xd9\x19\x9e\x57\x00\xaa\x25\x74\x17\xab\x0a\xa8\x34\x3a\x08\xe8\x61\xa4\x6e\x1f\x69\x83\xf6\x61\xd0\xa2\xb1\xc6\x8a\xce\x7f\x01\x81\xc7\xb8\x55\x43\x0a\x9d\x3d\x97\x6b\xa0\x49\x6d\x36\xa4\x68\x65\x00\x68\x89\xa5\xd9\x9a\x67\xd9\xa8\x6a\xbb\x25\xe2\x99\xa0\x7e\x34\x2a\xd5\xdf\xc5\x35\x1c\xac\x52\x7f\x97\xa7\x41\x62\xf5\xcf\xc5\x22\xcd\x73\xc7\xdb\xac\x46\x00\xbf\xbc\xaa\x0e\x17\x35\x1b\x01\xef\x3e\x29\xf3\x83\x07\x1f\x69\xbe\x82\xa5\xa2\xbd\xf9\xf6\x95\x9a\xf6\xa0\xc2\x82\xa1\xa0\x21\x4b\x5b\x39\x87\xdb\xfa\xe4\x01\x1f\x8d\x8a\x98\x83\x4a\xab\x44\x37\xa4\x3c\xbb\x5d\xf1\x3b\x95\xaf\xe5\xe7\x22\xcd\x6c\x7e\x99\x9f\xa5\x05\x9c\xfa\x5b\x0e\x53\xfd\x79\x9e\x7e\xb1\x55\x5e\xcb\x33\xa2\xeb\xbc\xc3\x5f\xd5\x1f\x7f\x4c\x73\x92\x4d\x8e\xc6\x30\x23\xd9\xb9\x15\x3a\xdc\x4d\x78\xf2\xb1\x28\x94\x8d\x9e\x36\xaf\x4b\xca\xf4\x0b\xce\x12\xbf\x1e\x34\x91\x69\x25\x02\x96\x98\x4b\x37\xb5\x2b\xbc\x28\x6e\xb1\x1c\x87\xfc\x2d\xc8\x28\xce\x7e\x4a\x17\x9f\xe5\x4f\x69\xe9\x37\xa9\x67\x33\x86\x8e\x01\x1f\x06\x1b\x9c\x48\x8d\x94\x94\xcf\x5e\x14\x71\xa4\xfb\x57\xb4\x33\x8b\x40\x05\x05\xc5\xde\x5b\x5f\x8e\x37\x02\x55\xa5\xc1\x4f\x36\x6b\x2a\xfe\xb2\x5c\xdf\x3e\x38\x06\x00\x94\x7f\x4c\x4c\x72\xe9\x5d\xdb\x08\x59\xf3\xb3\xda\xc8\x5d\x67\x7c\xc7\xcd\xc5\x80\x8d\xbd\xad\x04\x5d\xec\x38\x0a\x79\x92\x83\xed\x36\x95\x52\x22\x7f\x6d\xc4\x14\x1d\xd3\xda\xc6\xce\x04\x66\xac\xcc\x5a\xd5\xa2\xe9\xe5\x16\xfb\xa4\x31\x6a\x6c\x10\x67\xac\xdc\x46\x27\xcc\xb7\x69\xee\x5a\xbf\x0a\x6a\xb8\x1e\x2c\x03\xa2\x89\x41\x21\xd4\xd3\xed\x93\x35\x55\xe4\x4e\xfc\xdd\x6c\xd7\x6f\x2c\x2e\x2e\xee\x1a\x72\x55\x0d\x28\x72\xe2\xfe\x68\x69\x6e\xdc\xf4\xff\x31\x77\x38\x93\x37\x17\xc0\x33\x36\x47\x7c\xc6\x6a\xa1\x44\x15\xb3\xa9\x7f\xf9\x33\x30\xd9\x88\xd7\x24\x48\x56\x69\x6d\x08\xcb\x20\x4f\x24\x91\x93\x79\x1f\xa8\x65\x0e\x88\x02\xcc\x1b\xf1\x73\x62\x02\x46\xa3\xc8\x01\x10\x1d\x21\x44\x46\xa3\xc8\xc2\x30\x1f\x9a\x1e\x41\x7c\x46\xe4\xa5\x37\x23\x73\x84\xe5\x3f\x90\xc3\x4f\x3f\x6c\x68\x95\xfc\xb0\x21\xd5\xa7\xfa\x82\xe1\x55\x4c\x95\x37\x50\xc4\x8a\x82\xeb\x30\xe4\x44\x0c\xce\xb1\x9b\x11\x8b\xe8\x9a\xf4\x26\x96\xd4\x6c\xb7\x38\x29\x31\xcd\xe2\xc8\x41\xbb\x08\xb4\xec\x58\x5a\xed\xdf\xe1\xaf\x75\xdb\xe6\x3e\x47\xe2\xea\x3a\xdc\x15\xbd\xad\xe4\xee\xb8\x4a\x6c\xc5\xc7\x0b\x64\xe5\x38\x9c\xb3\x40\x68\x0f\x65\xfe\xa6\x65\xf6\x54\xf6\x22\x58\x30\x15\xfc\xa9\x8e\xfb\x91\x61\x6b\x40\x3b\x71\x2f\x19\xb2\x8c\x95\x3c\x26\x94\x19\xb4\x15\x85\xc0\xce\xd6\x6e\xbb\x71\x99\x75\x3d\xb7\x21\x9f\x62\xed\x38\xee\x74\x0b\x39\x98\x60\xc7\x54\xf9\x81\x87\x81\x8d\xfb\xef\x14\xd7\x8e\xc0\x13\xec\x8c\xa5\x39\x92\xda\xfa\xb0\xe9\x16\xad\x54\xc8\x6d\xbb\x14\xf3\x76\x88\x9d\xc0\x34\xc1\x94\xaa\x21\x9b\x4c\x6b\xc9\xec\x19\x66\x3a\xe7\x07\xf8\xd6\x29\x81\xb4\x89\x87\xda\x71\xf4\xb4\x58\x09\x99\x8e\xfc\xad\xd0\xb9\x0b\x4f\x9d\x35\x46\x08\x4f\xc5\xbf\x13\x6c\xa2\xc4\xc8\x7d\x71\x5a\x9e\x13\x7a\x9d\x63\x93\x4f\x19\xec\x40\xba\xee\x84\xb8\x4a\x5b\x63\xa5\xc5\xa6\xa7\xa4\x61\x6a\x5f\x5b\x96\x81\xba\x48\xca\x3a\x1f\x6a\x33\x7b\xd0\x9e\x9d\xce\x86\x27\xe9\x8a\xfc\xbd\x53\xa7\x90\x65\xef\x4e\xb2\x15\x42\x87\x4e\x2c\xe8\xbf\xff\x6d\xe3\xc0\x9e\xdb\x5d\x41\x5b\x10\xf6\xc0\xf0\xe3\xb8\xb4\x23\x5b\x04\x56\xc0\xa1\x6e\xa3\x11\x53\xe1\x89\xa4\x1a\x54\x25\xef\xe4\x15\x0c\x4d\x76\xd3\xc4\x61\xc8\x90\xef\xdb\xa5\x06\x08\x29\x6a\x22\x33\x03\x90\x20\x5e\x3b\x9d\x30\x19\x5c\xa7\xf6\x14\x89\x09\x6c\x3a\x55\x89\x09\x14\x30\x12\x88\xe7\x08\x30\xa2\x7b\x62\x7f\x87\x2d\xcf\xa3\x07\xd8\x0b\x3b\x58\xbb\x12\x34\xdc\xd7\x85\xd8\x5a\xff\x3d\x55\xe6\x81\xfa\x43\xf4\x4f\xc9\x38\x19\x9f\x5c\x61\x9e\x26\xe3\x28\x3c\x5e\xc7\xc2\xca\xa5\x2a\xff\xba\xdb\xd1\xb9\x36\x69\xfc\xd7\xa6\xfb\xb3\x6b\xb2\xd5\x82\xd2\x55\xe8\x98\x82\x75\x3e\xc6\xa1\x0d\x9e\xe9\x2d\x18\x47\xdc\xca\xed\x77\x87\x8b\xe4\x30\xb2\x7e\x42\x53\x4b\x99\x26\x1c\x32\xc4\x7a\x82\x60\x2e\x08\x6b\x18\x38\x61\x92\xdc\xa5\x7b\xad\x0b\x99\xd2\xcf\x46\xaf\xcf\xa3\x43\x0c\xf0\x5e\x15\x0c\xff\x2c\xbf\xde\xc5\x91\xca\x87\xf9\x5a\x1a\xcd\x31\xb1\xfd\xd2\xa7\x1a\xf1\x6e\x87\x66\x69\x25\x5c\xf6\x0e\x04\xaf\xaa\xef\x76\xba\x4e\xe9\xdd\x4b\xc5\x51\xf4\x04\x6a\x5b\xec\x84\xfb\x41\x25\x84\x38\x1c\x7c\xb3\xe1\xce\x5e\x5e\x2a\xfb\xe9\x0f\xc5\x4a\xa5\xa7\x57\x2f\xfa\x43\x3a\x24\xc9\x0e\x18\x3b\xfb\xf6\x1c\xc2\x7b\xf7\xe6\xb5\xea\xb3\x82\x87\x4d\xc6\x6d\xd4\x07\xba\x2a\x3f\x14\xbc\x6a\xb5\x13\xfe\x7d\x76\xa2\xef\xca\x3b\xf5\x7e\x49\x69\x7a\x7d\x80\x6b\x7f\xbb\xe9\xee\x9e\x8c\xfc\xa1\x7f\x07\xa6\xc5\x4e\xb8\xb5\x7b\x5b\x4f\xb0\xa6\x41\x2f\xa8\xf7\x59\xfb\x40\xdb\x9d\x7d\x19\x17\xf1\xde\x1d\x98\x06\x3b\xa1\xb6\x1d\x57\x7b\xc3\x6f\x37\xed\x81\x43\x8a\xf6\xf6\xcc\x4d\x50\x37\xd9\x03\xb9\xf6\xc1\x3c\x00\x76\xdd\xa8\x92\xac\xc0\xeb\x73\x94\x76\x77\xd2\xc1\x42\x74\x30\x06\xda\xcd\xa4\x9b\x2f\x30\x15\x1e\xf8\x29\xd1\x1d\x56\x5f\xdf\xbc\x87\x87\x0f\xd9\x3d\xc3\xf2\x19\xd6\x37\xe4\x9e\x99\xaa\x7a\x4f\x36\xdf\x97\x57\x05\xe3\xf2\x36\xee\x3d\xe5\xba\x49\x9f\x1b\xf0\x30\xd8\xfd\xc2\x2d\xd3\x65\x4e\x16\x07\x8e\xda\x6b\xb5\x13\xfe\x9b\x82\x5d\x91\x2c\xc3\xf4\xb0\x0e\xfc\x66\x7b\x2e\xe8\x2f\x69\xae\x3d\xab\x7a\xc3\x77\x1b\xed\x84\xfe\xae\xe0\x6f\x8a\x35\x3d\x10\xbc\xd7\x6a\x37\x31\x97\xba\xd6\xc3\xa0\x3b\x6d\x76\xe7\xe0\x50\x59\x3f\x0e\x03\xee\x36\xda\x09\xfd\x57\x9a\xae\xf9\x4d\xc1\xc8\x5f\xf1\x81\xab\xd3\x6a\xb9\x3b\xbf\x85\x3c\xea\xca\xe9\xa6\xf8\x7d\xff\x24\x41\x3c\x69\xb5\xec\xd1\x8f\xa8\x76\x51\x1c\x72\xa9\x9a\x7e\x9c\x96\x3d\x08\x98\x15\xeb\xec\x25\x61\x8f\x25\x00\xfa\x1b\x50\x6d\x86\x4b\xbe\x7f\xc2\xb2\xd6\x3f\xee\x64\x39\xdf\x71\x03\xab\x78\x63\x7f\xaf\x93\x13\x63\xef\x9e\x59\xa7\x0f\x25\xa1\xcb\x1c\x2f\xb8\xcc\xf4\x17\x62\x37\x76\x5d\xcd\x7b\x70\x7e\x07\x86\xf8\x45\x19\xbe\x5a\x5f\x07\x17\xbb\x21\xd4\x70\xe2\x84\x75\x14\x74\xca\x43\xea\x1a\x3a\x02\xdc\x8e\xd2\xc0\xe8\x9d\x1a\x81\x09\x38\xa5\xae\x54\x78\x8f\x58\x27\x1c\xac\x4e\xfa\x3a\x49\x60\x27\xb2\xcd\x89\x16\xd8\x36\xa5\xcc\x7c\xbd\x3a\x59\x14\x94\xa7\x84\xb6\xb9\xc2\x76\xfa\x42\x98\xc1\x1b\xb8\x84\x2b\x78\x0b\xbf\xc0\xeb\x06\xd6\x92\x65\xfc\xfd\x79\x93\x95\x3c\x45\x0b\x5f\x6c\x30\x8b\xd3\x3f\x27\xf1\x6c\x7c\xf2\x2f\xf3\xed\xe9\x6c\x7c\xf2\xe3\x1c\xfc\x39\x79\x06\x00\xbf\x61\xc5\xd7\x21\xc5\x5f\xb5\x1c\x53\xb9\x56\x3b\xd2\x96\xa1\xc9\x7d\x3e\x4c\xf9\x30\xc7\x69\xc9\x55\xcd\xe1\x69\x72\xfa\xdb\x64\x0c\x87\x57\x6b\x3e\xbc\x2b\xd6\xc3\x9b\xf4\x0b\x1e\x46\xc7\x5e\xe7\xc7\x51\x32\xfc\x20\x1a\xe1\xe1\x7a\x75\xcd\xd2\x0c\x8b\xaa\x6c\xa8\xe5\x68\xc3\x62\xa9\x80\xc1\x21\xbf\xc1\xd4\xd6\xa9\x7b\x4f\x22\x30\xb8\x4d\x5e\x9f\x6b\x69\xcf\xca\x7a\x89\xca\x8f\xee\x03\x1e\xdd\x7a\x3f\xbd\x0a\x6a\x49\xeb\x1a\xea\xb7\x57\xc5\x8a\x50\xea\x5a\xf6\x93\xaa\x28\x9f\x4a\xa8\xf4\x47\x60\x5f\xb0\xe8\xb6\xfe\x5b\x15\x09\x32\x80\x4a\xf9\x8f\xfa\xa0\x04\x4c\xe8\x56\xff\xa1\x3e\x7a\x22\x0e\x74\xeb\xff\x56\x55\xcc\x6b\x13\xdd\xda\x3f\x55\x81\x66\x67\x11\xf3\xc7\xe4\x72\xb9\x88\xfa\x65\x2e\xc7\x26\xe3\xf4\xd5\x3f\x55\x05\x97\x71\x41\xd4\xfb\xa9\xa1\x5b\x56\x1b\x51\xe7\x87\x2a\x6c\xf1\x24\x88\xb6\xbf\xa9\xaa\x3e\x6f\x8a\x68\xe3\x83\xaa\xe4\x71\x80\x88\xfa\xbf\x55\x15\x8f\x89\x46\xd4\xff\xad\x17\xb0\xe6\xf4\x10\x75\x7f\xa9\xe2\x16\xe3\x81\x68\xfb\x9b\x5b\xd5\xe1\x85\x6c\x55\xe7\x9b\xed\x54\x53\x22\x94\xfb\x7b\xf0\x5a\x10\x59\xb3\x77\x69\x03\x9f\x6a\x89\x82\xc0\xa8\xfa\x97\xb7\xb5\x21\xf1\x1b\xba\xdd\x55\xaa\x51\xd8\x41\xf2\x06\x76\xb7\x65\x3d\x7e\xff\xfa\xa3\xae\x7c\x76\x7e\x61\x26\x50\xf8\x13\xf8\x69\x4d\xf2\xec\xd7\x8f\x3f\xcb\x24\x3d\x88\xf9\xbf\x07\xb6\xb5\xb3\x3a\x37\x3e\x00\x3f\x0c\x25\x5a\xb4\x4b\x5f\x7e\x78\x6b\x3a\x27\xc1\x52\xa7\x79\xe6\x57\xb0\xfe\xe6\x68\xd9\xd8\x93\x94\xe3\xba\x70\xed\xff\xd6\x1b\x2a\x23\x48\xb8\x95\x1a\x5f\x34\xca\xae\x05\xf1\x72\xab\x35\xbe\xe8\x75\x2a\x8a\x1c\xa7\xd4\xad\xd7\xfc\xa4\xa9\xc6\xed\x15\xce\x32\xb3\x99\xa5\x5a\xd7\x9b\xe0\x67\xd5\xe0\x0a\xe7\x05\xbd\x2e\x2f\x0a\x54\xd6\x7f\xab\xa2\x9b\xb4\x14\xdb\x8e\x4a\xf3\x97\xd9\xfb\x5a\x9e\x22\x77\xbd\xfe\xa9\x2a\xa8\x70\x8a\xaf\xcc\x1d\x87\xae\xfd\xc5\xbb\xac\x6f\x4a\x49\xa6\xcf\xd5\x3d\x89\xbe\xd8\x6a\xe1\x3b\x4d\x34\xee\x25\xc6\xfa\xca\x08\x57\x7f\x9f\xc2\x45\x41\x97\xe4\x7a\xcd\xcc\x6f\x75\x11\xae\x42\x22\x2d\x65\x79\x73\x85\x44\x3f\x8e\x7a\xe8\xaa\x93\x33\xeb\xba\xef\x9f\x50\xef\x06\x36\xb1\x09\xf5\x36\xc5\x13\x69\x58\xad\x16\x1d\xb8\x01\xe0\xc4\xb0\x26\x3a\x49\x46\x87\x42\xce\xf0\x6d\xff\x98\x3c\xf4\xde\x07\x82\x17\xf5\xf3\xef\x65\x96\xf6\xb8\xf5\x9e\xa7\x6d\xb1\x2f\x0d\xaf\x38\xad\xbd\xa1\xea\xfa\xdd\xab\xe7\xf2\xef\x9d\xea\xcf\xba\xce\x3f\x2c\x96\xb8\x26\x20\x58\x53\xcc\x13\xa5\x74\x2d\x4f\x6e\x05\xcd\xec\x33\xff\xbf\xef\xb7\x74\xe8\x26\xe8\xb7\x22\xfb\xa5\x27\xa1\xe7\xd8\xdf\xeb\x3a\x1c\x84\x0c\xea\xe9\xd9\x73\xda\xff\x35\xa6\xbc\x5b\x6c\xf4\x8f\x82\xed\xde\x94\x07\xc1\x29\xfb\xef\xf1\x3d\xe6\x1d\x4f\x90\x76\x15\x6c\x3c\x9e\x41\xf0\x24\x5c\xc6\xb9\x14\xb0\xb7\x5b\xf3\x17\x29\xe8\x80\x2b\x73\x0b\xac\x12\xfc\x48\xa3\x6b\x16\x99\x74\x58\xb0\x79\xf3\xc3\xba\x3a\x2b\xd6\x52\x7c\xd1\x51\xb3\x02\x31\x76\x63\x93\x82\xcd\x78\x80\xad\x9d\xc5\x7b\xe5\x46\xff\xa6\x60\x17\x77\x2b\x37\x17\x19\x8b\xe0\xa6\x94\xf6\x54\xbc\xa0\x93\xa3\x53\x39\xc1\xae\x56\x56\x4e\xd5\x6e\xd2\x8c\xb6\xd9\x1c\x9e\x58\x84\x3a\xea\x92\x5f\x58\x47\x85\x06\x55\x8c\x3b\xb9\x1d\x5d\xf9\x49\x37\xfb\xe9\xce\xb1\x23\xcb\xea\x71\x80\x1f\xcd\x16\xfb\xe9\x26\xfc\xb7\xb4\x1e\xfb\x6d\xf2\xe3\x38\xf9\xa7\x80\xdd\x18\xce\xb1\x34\x2a\xbe\xc1\xf9\x0a\xb3\x67\xea\x9f\xf2\x99\xf9\xde\x77\xb0\xd6\x90\x5f\x3a\x97\x3c\x54\x8c\x37\x63\x49\xf9\xaa\xb8\x5d\x15\x14\x53\x6b\x7a\x5a\x67\xd1\x6b\x17\x69\xd7\x04\x55\xfc\x7b\x39\x1f\x6b\xb1\xda\x2f\x33\x1b\x4f\xaf\xa5\xeb\x85\x0e\xde\xbf\x30\x5d\xc8\xc8\x87\x32\xe6\x46\x05\xb5\x3d\x79\x1d\xb8\x80\x20\x3c\x1b\xd7\xd1\x86\x8c\xcb\xb0\x86\x65\x7c\x0b\x0d\x68\x22\xc8\x9a\x78\x69\xd7\xde\x18\x3a\xca\x4f\xa3\x37\x84\x58\xf0\x3b\x9d\x84\xbe\x32\x1d\x97\x28\x30\x64\x2d\x41\x65\x6b\xfa\x96\x4a\x69\x4d\x1c\x03\xed\x37\x8b\x51\x74\x71\x83\x87\x66\x19\x86\xab\xb4\x2c\x71\x36\xe4\xc5\x90\xdf\xe0\xe1\x27\x8d\x0a\x9f\x86\x0a\x39\x86\xb7\xeb\x92\x0f\xaf\xf0\x30\x1d\xea\x29\x0c\x38\xbb\xdb\xe0\x63\xf4\x69\x18\xdf\x15\x6b\xd3\xfc\xcf\x9f\x7e\xd8\x90\xea\xcf\x9f\xc0\xa7\x6a\x21\xc5\xb5\x1c\x6c\x04\xa5\x03\xa1\x55\xdd\x9b\x54\xb0\x03\x4f\x0f\x44\xd3\x87\xb1\x85\xe6\x3e\x72\xa9\xb1\x84\xf2\xef\xa9\x14\xce\xee\xcc\x78\x7b\x66\xd7\x98\x9f\x28\x01\x40\x48\x8f\x22\x0e\xc2\x3a\x3f\x59\x93\x67\xba\x0e\xa6\x5f\x08\x2b\xe8\x63\xd8\xf1\x3f\x09\x29\x24\xf4\xe4\x0b\xc1\x5f\xc5\xfc\xac\x8e\xe2\x59\x71\xa5\x3c\x8b\x4f\xd2\xec\xb6\xf9\x7e\x91\xee\x72\xa5\x62\x26\x4e\x1a\x15\x1f\xdb\xf2\xbd\xfe\x20\xa3\xe4\x79\xe1\xf0\x34\x19\x31\x76\xc4\x32\xd6\x5e\x3d\xf5\x34\xcb\xea\xc8\x5f\x26\x2c\x88\x8e\x63\x92\x66\xd9\x99\x98\xd4\xab\x54\xf9\x94\xcb\x2c\xf6\x90\x3a\xa5\xdf\x08\x77\x0a\xa9\x0d\x8e\xa7\xba\x4a\xf4\x2a\x28\xdf\xdd\x00\x34\xde\x18\x5b\xa8\x47\xdd\xd2\xef\x29\xd8\xb0\x59\xa5\x5a\x53\x33\x80\x24\x49\x70\xb3\x49\xa3\xb4\x32\xc1\x20\x42\x75\xbd\xb2\x2a\xc0\x07\x05\xb1\x85\xa5\xcb\x10\xa2\x88\xcf\xab\xa2\xc8\x1d\xed\x63\xdd\x78\xcd\x49\x5e\x3e\x23\xa5\xfb\xf1\x31\x82\x77\x97\x3c\x65\xfc\xe3\xcb\x37\xbe\xc7\xe0\xa6\x5c\x08\xc6\x57\x9c\x9b\x97\x0c\xa7\x13\x0a\xcd\x18\x2e\x8a\x1c\x33\xb1\x16\x13\x62\xbf\x9d\xaf\xee\x26\x05\x3a\x3a\xad\x8c\x82\xcd\xc4\x71\x5f\x20\x3a\xcd\x8a\x85\xa4\xd2\xc9\x7f\xae\x31\xbb\x3b\xc7\x4a\xbf\x1a\x53\xa0\x63\x24\xc1\x0c\x2d\xa6\x8b\xa4\x58\x2e\x4b\xcc\x7f\x8f\xc9\xf5\x0d\x3f\x5e\x24\xd7\x98\xff\x54\xac\x65\x1e\xcc\x57\x32\xe5\xcb\x47\xbc\xe0\x31\x48\x78\xb1\x9a\x7c\x25\x34\x2b\xbe\x26\x84\x52\xcc\x54\x03\x78\x83\xa8\x85\xf1\x27\x92\xf1\x9b\x1d\x20\x72\xbc\xe4\x1e\x0c\xd9\x00\x2e\x11\xef\x6a\x32\x20\xcb\x78\x59\xcf\x89\x1b\x37\x73\x15\x1d\x5a\xfa\x1b\xb8\xdb\x74\x82\x05\xea\xe2\x2c\x02\xcf\x83\x6a\x48\x99\xf3\x4f\x01\x4b\x51\xc4\xd9\x1a\x47\x08\xa1\x62\x34\x3a\xe2\x83\x62\x34\x8a\x96\x69\x5e\x4a\x1f\xc8\x62\xbb\x3d\xe2\xdb\x6d\x8c\x8d\xf3\xfb\xbe\x0e\xe1\xd1\x18\x40\x1a\x03\x30\x48\x47\xa3\x98\xc4\x32\x06\xc6\x01\xad\x4f\x81\x78\xa5\xc8\x20\x6a\x56\x9f\x05\xe2\xa5\xd4\x96\x12\xa0\x15\xa8\x0b\x00\x8b\xed\x56\x8d\xfb\x08\xa1\xc5\x34\x8f\x71\x72\x45\xa8\xca\xda\x03\xef\x85\x3c\x35\xe6\x80\xc9\x3a\x06\x55\x20\xcc\x7a\x0f\xd2\x76\xc9\xd2\xe5\x87\xa2\xc8\x7d\xd2\xa6\x93\xff\xa8\x8b\x57\x3f\x81\xee\xdc\x48\xa3\x92\xf6\xa9\xd3\xee\xe5\x39\xd0\xd0\x12\x5b\x5c\xc9\x30\xdc\xcd\x9c\x4f\xa6\x9a\x2e\xac\x54\x1e\xe6\x5d\x00\xdd\x1a\x2a\x2c\x8f\x4b\x6c\x9c\x6a\xb6\x04\xfa\x25\x25\x2f\x56\xba\xf9\x0e\x6a\xda\x98\xb2\x0e\xe7\xa9\x69\x84\x0e\xef\xb4\xa9\x82\xcb\xa3\xe2\xc0\x03\x71\x7f\x3a\xb0\x27\xd2\x2d\xb0\x9b\x0a\x3f\x48\x87\x0e\x68\xd5\xdf\x1e\x2a\x7b\xc5\x70\xfa\x79\x55\x10\x19\x1b\xf8\xe9\x5f\x2a\x9b\xdb\xe2\x8a\xe4\x78\x12\xc5\xb7\xe9\xb7\x93\xaf\x82\x94\x4c\x86\xff\xfc\x3f\xff\x79\xf5\x0d\x44\x50\x2a\x4c\xb8\x28\x23\xb4\x2e\xfb\x5f\xab\x6f\x60\x98\xd2\x6c\xe8\x36\xf9\x97\x7f\x39\x95\x4d\x32\x5c\x7e\x16\x44\xce\x6b\xf3\x2f\xff\xf2\x63\xa8\xcd\xe9\x8f\xe3\xb1\x68\xb4\x67\x85\x76\x58\xbb\xd4\x95\xa4\x20\xb6\x7c\xb6\xe3\xb6\x79\x6c\x37\xbd\xdd\x2e\x5a\xfe\x84\x8c\x92\x88\x95\xcf\x2c\x19\x53\xfc\xe6\xbe\x79\xaa\x7b\x75\x91\xd2\x93\x75\x89\x4f\xb2\xe2\x11\x7c\xa5\xeb\xe1\xc9\x24\x18\x1d\x2f\xc5\x8d\x19\xd2\x19\x15\x58\x22\x23\x59\x98\x4f\xaf\x49\x76\x2e\x69\xa8\xfb\x51\x10\xca\xa3\xd3\xfa\xa7\xac\x70\x8e\x65\x08\x80\x2f\x84\xdf\x4d\xea\xb2\x8f\x78\xc9\x70\x79\xf3\x31\xe5\x78\x72\x3a\xae\x41\xfc\x4c\x4a\x8e\x29\x66\xe5\x64\xb6\x91\x51\x61\xbe\x99\x9b\x10\xe2\x2f\x98\xf2\x49\xa4\x48\x77\x54\xc1\x8e\x72\x86\x4b\xf2\x57\x1c\x55\xf3\x00\x4d\xdf\x08\xbc\x1d\x43\x79\xbf\x8e\xe1\x55\xc1\x79\x71\x3b\x19\x43\x26\x6e\xe8\xc9\xb8\x82\x2e\x63\x7c\x71\x23\x06\x58\xe4\xd9\x64\x0c\x9b\xd7\x85\x78\x84\xb8\x59\x35\xcc\x65\x89\x91\x7d\xf8\xce\x4e\xe7\xdb\x6d\xfd\x6b\x3c\x87\x1c\x61\x41\x30\x8b\xfc\x0b\xf6\xc5\x5c\x0a\x2d\x26\xee\x33\x04\x40\xbb\xf8\xaf\x54\x29\x45\x9b\xaa\x42\x1c\x9a\x67\x78\x4d\xac\x04\x3f\x3c\x70\x25\x63\x1a\x9e\x7b\x50\x20\x81\x1b\xc5\x22\x72\x22\x96\xfc\xe8\xb4\x02\x95\xc5\xeb\xd1\x88\x25\xad\x0d\x50\x91\x9b\xec\x22\x1b\x26\xc9\x2c\x33\x2f\xd6\x8b\x1b\x71\x49\x44\x95\x91\x0f\x6c\x94\xfb\x56\x0b\xdd\x6b\x6c\x9b\xd0\x6a\xf7\x9b\x74\xcf\x79\xdf\x73\x72\x42\xec\x6c\xaf\x03\xb6\xbf\x16\x4b\x97\x3b\x6a\x2d\x09\xcd\xe4\x7b\xba\x07\xa4\xe0\xe3\x6b\x57\xbb\x1b\xbc\xf8\x7c\xa2\x30\xf0\x24\x23\x4c\xb5\xec\x36\x20\x7b\xa4\xe4\x00\x25\xda\x54\x30\x47\x9b\x4a\x87\xb4\x57\x58\x28\xd5\x48\xd6\x91\xef\x32\xc3\x57\xc5\x9a\x2e\x70\x76\x26\x90\xe4\xf7\x29\xcd\x72\x93\xcb\xff\x52\x70\x04\x0a\xb9\x4c\xd4\x1c\xfa\x47\x3d\xd3\x2e\x87\x67\x4b\x7f\xbe\x11\x8e\xb3\x46\xd8\x81\x84\x16\x3c\x8e\x6a\x12\xa5\x19\x5a\x27\x79\x05\xdc\x27\x9b\xf2\x92\x98\x9b\x03\x65\x20\xfe\x5a\xe2\x8f\x2f\xdf\x4c\x64\xf2\x37\xcb\x68\x3a\x63\x52\x1d\xba\xf4\xce\xa1\x5d\x73\xcd\x43\x5c\x5e\xad\x49\x9e\x69\x19\xb8\xe0\x7a\x1b\xbd\x61\xe8\xf6\xf7\xd6\x41\x8d\xf7\x1a\x33\xc4\x00\x0a\x67\x00\x95\x49\x1e\xdf\x88\x62\xac\x52\xbc\xc0\x56\x2a\x7c\xfc\xc5\x8e\xeb\x55\x5e\x94\x6b\x26\x03\x3d\xcd\x81\x0c\x5e\xf3\x96\x96\x98\xf1\x33\xc5\xe8\xc4\xd2\xc3\xbb\x5b\x90\x77\x54\x33\xdc\x8a\x67\x6c\x25\x73\x6f\xdc\x17\x11\xd0\xef\xef\xaf\x29\x5f\xdc\x98\x5e\x9a\x8d\x8c\xbc\x09\x80\x0a\x3a\x59\xe6\xea\x41\xed\x11\x2d\x5e\xae\xa9\x60\xed\xed\xe2\xef\xec\xc0\xdf\x0f\x8c\x36\x15\xd8\xec\x4a\x0c\x36\x68\x47\x8f\xb6\x3b\x67\xd3\x63\x85\x08\xae\x9c\x8d\x3b\x6d\xcb\x3b\x97\x98\xbf\x55\x04\xd1\xa0\x7f\x5c\x67\xcb\xcc\x32\xb3\xef\x6f\x97\xef\x0a\x71\xa1\xea\x18\xcc\x5d\x4b\x6d\xef\xe1\xa8\x8e\x66\x24\xcd\x73\xe3\x68\xd6\xaa\x33\x1f\x5e\xdc\x90\x72\x28\x56\x79\x78\x85\x87\xf2\x15\x37\xbc\xba\x1b\xea\x6d\x55\xf1\xe1\xf0\x90\xe2\x6f\x7c\x78\x9b\xfe\xa5\x60\x43\x86\xa5\x59\x66\x64\x06\x28\x56\x5a\xc1\x7a\x6d\x28\x91\x59\xf8\xd6\xba\x77\xb2\x01\x11\x00\x00\x76\xd5\xee\x38\x06\x11\xf0\x82\x92\x37\x9b\x7c\x7c\xf9\x66\x57\x0d\x8b\x1c\x8d\x94\x50\x39\xe6\xf6\x82\x63\xfa\x66\xa3\x15\xe2\x83\x76\xc0\x01\x9f\x05\x10\x9d\x31\x67\x4d\x6a\xec\x53\xa1\xc7\x75\x26\xa2\x8e\xdd\xdc\x74\x2e\xd5\xea\x4e\x40\x36\x42\x2b\xd3\xba\x4d\xe6\x54\x02\x77\x2b\x7f\x76\x1e\xb7\x91\x3e\x0f\x6f\x97\xb6\x2e\x96\x98\x1f\xc4\x3b\x3f\x43\x31\x29\xf5\xe1\xc3\x99\x1e\x84\xfd\x42\xe8\xb5\x8a\xde\xb2\xdd\x9a\x3c\x61\x03\x93\x09\xaf\x39\x9b\x9a\xb0\xab\x90\x2f\x07\x6f\xb5\x7f\xe0\xc4\xfc\xca\xc5\x0d\x16\x57\xd5\x7b\xba\xc0\x71\x94\x2e\x39\x66\x1f\x31\xcd\xc4\xc5\x29\x61\x4a\xc1\x7b\xeb\x20\x77\x6c\x5d\x20\x9c\x44\x8b\x55\x8c\x80\xe5\xb4\xdc\x89\x05\xd8\xc3\x08\x0c\xa8\x4f\xe1\xb0\xe0\xb5\x42\x8c\x24\x09\xb0\xa4\xac\xc9\x5c\xf2\x2a\xb8\xaf\x0a\xd7\x0a\x2a\x77\xd5\x5d\x36\xb0\xbb\xfa\x37\xc2\xbd\xda\xa0\x52\x61\x78\xf6\x1d\xa6\x7b\xee\x81\xa5\x71\x7f\xf4\x31\x56\x26\xec\x18\x6c\xa8\x95\xe6\xc5\xa0\xa1\x91\xda\xb1\x5f\xed\x9d\x08\xed\x57\xd1\x59\x4b\x1e\x2b\x98\x22\x0f\x4b\x7a\x60\xbc\x4a\x0b\xa9\x84\x5f\xb8\xb7\x48\x6d\xc0\xb7\xdb\xa3\x62\x34\x3a\x62\xdb\x6d\xdc\xbc\x8f\x5b\x07\xf9\x68\x6c\x54\x64\x26\x4f\x6e\x46\x94\xbc\xe4\x8f\xee\x5d\x52\xaa\xc1\x1f\xc5\x3d\x86\x0d\x46\xa3\xc2\x5e\x06\xbb\xba\x3e\x0d\x75\xfd\x8d\x70\xb7\xe7\xe7\x32\xa3\x9c\xd9\x35\x20\x90\xbb\x81\xb0\xac\xaf\xf0\x8c\x0a\x9a\xf6\xf1\xe5\x1b\x85\xa6\x32\xfb\x62\x06\x20\xd5\xc2\xa6\x66\x01\xa8\x14\xd1\x6a\x23\x52\xef\x83\xde\x25\xd9\xdd\xd7\xce\x0a\x7e\x19\xe2\x53\xee\x0b\x7e\x3b\x45\xb0\x5d\x82\x5f\xea\xc0\x50\x82\xdf\x6e\x10\x1d\x82\x5f\xa2\xb0\x2f\x2c\xf8\x35\x7a\xd0\x4b\xbd\x8b\xaf\x49\xf6\x72\xb1\xc0\x65\x69\xc9\xfc\x2e\xfa\x9c\x90\xf2\xed\xff\xc7\xde\xbf\x6e\xb7\x71\x23\x8d\xc2\xf0\x7f\x5d\x45\x0b\x5f\x1e\xa6\x7b\x04\xd2\x92\xed\x64\x12\x26\x6d\x8d\x63\x3b\x13\x4d\x7c\xfa\x6c\x65\xf2\xcc\x70\xf8\x28\x2d\x12\x14\x31\x6e\x02\x0c\x1a\xb4\xa4\x90\xbd\xd6\xbe\x8b\x77\xed\xeb\x79\xef\x64\x5f\xc9\xbb\x50\x38\x34\xd0\xdd\xa4\xa8\x83\x35\x87\x3d\xfe\x61\xb1\x71\x46\xa1\x50\xa8\x2a\x14\xaa\xdc\x67\x4c\x41\x8c\xd8\x62\xb3\xad\x3f\xbf\x1d\x23\xbe\xf1\x88\x07\x12\xd3\xe9\x34\xa8\x50\x28\x25\xa8\x22\x1b\x07\xaf\xf1\x69\x1d\xc7\x77\x34\x46\x9b\x88\x63\x13\xb7\xd4\x49\xa9\x8e\xca\x16\x2a\xeb\xee\xa6\x36\xee\x3c\xcb\x81\xdc\x72\xbf\xeb\x21\xd4\x28\xf7\xdd\x8d\xe0\xea\x6d\x5f\x62\x0f\x9b\x6a\xfc\x5e\x6c\x62\x86\xcb\xf4\xa0\x62\x1f\x36\xad\x00\x4b\x8b\x81\x18\x62\x9a\xe6\xea\x0f\x4f\x41\x09\x43\x7a\x7a\xd3\x1d\xf3\xb9\x56\xc7\xd8\x84\x97\x64\x22\x4b\xbc\x48\xe3\x7d\x9c\x55\x62\x8f\x92\x6c\x65\xb2\xb3\xe8\x74\x16\xbb\x69\xca\x9a\x68\xd1\xce\x0f\x37\xa6\x69\xf2\xf0\x22\xc1\x6a\x50\xe9\x22\xc1\x6a\x54\x29\x0f\x66\x5c\xdb\x3f\x24\xdd\x3d\x80\x90\xa0\x93\xad\xa8\xaf\xe1\x8e\xb4\xfb\x6c\x84\x76\x76\x65\xa7\x43\xc0\x47\x78\xcb\x52\x63\xd9\xe9\xec\x7a\xb9\xc1\x32\xe0\xb5\xa7\x34\x9c\x68\x9d\x8e\xdc\x62\xb9\x09\x5c\xb1\x04\x90\x80\x80\x9d\x35\x36\x71\x13\x5b\xea\xf6\xb4\xa3\x35\x75\x99\x8b\x38\x97\xfe\x8a\x94\x5f\xc5\xb7\x36\x79\xd4\xa6\xe0\xda\x86\xb6\x10\x2b\x34\x50\x31\xc4\x04\xf7\x7a\x3d\x69\x87\xae\xb6\xb9\x2d\x10\x3b\xa6\x44\xfd\x18\x90\x61\x0c\x25\xd7\x52\x25\x4f\x23\x69\x44\xc5\x0d\xb2\x0e\xa9\x90\xff\xea\x63\x68\xb5\x32\x1a\x4a\x08\x25\x4f\x2b\xac\x96\xc9\x8e\x06\x67\xab\xde\x24\x6d\xcb\x0b\x38\xfd\xb5\x7b\x14\x61\x01\xeb\x0e\x97\xcd\xaa\x9a\x1b\xb8\x55\x9f\xe2\x0d\x1d\xe3\xe5\x5c\x09\xb9\x1f\x8d\xff\x0b\x8b\x2a\xeb\x60\x51\x29\x3f\x37\x51\x81\xdb\x81\xc9\xb8\x98\x07\xec\xba\xed\x84\xac\x43\xf3\xdc\x73\x6e\xae\x43\x27\xe0\x9a\x2c\xe7\x28\x1d\xfc\x11\x3a\x70\x96\x89\x62\x1c\x0e\x91\x28\xf6\xd3\xe2\x5a\x7d\x14\x31\x6a\x39\x6b\x10\x16\x76\xf5\x5b\x54\x34\x46\xf9\xaa\x25\x52\x89\xbd\x12\x7d\x5e\x26\x9a\x93\x0a\xe1\x20\x31\x57\x5b\xc4\xad\x96\xbf\x37\x97\x4e\x08\x2b\xd6\x9d\xb4\x70\x2e\x5d\x5b\x50\x5b\x4f\x87\x3d\x15\xd0\xc6\x13\xdc\x99\x36\xb4\x75\xa0\xc0\xba\x49\x50\xb9\xee\xa0\x9c\x6c\xb3\x0d\xc6\x36\x54\x2e\xc1\xb8\x1d\xcf\xaa\x04\x9b\x7f\xb8\x2e\x83\xd4\x74\x19\x56\x4b\x2f\xca\x94\xec\x6c\xb3\xf3\xe4\x4e\x1b\x56\xcb\x04\x2f\x43\xd4\x4b\xd7\x63\xec\x44\x11\x26\x92\x3e\x11\x20\x2c\x41\xff\xc9\x6a\xb5\x2c\x77\x58\xeb\xbe\x15\x06\x5f\xb7\x54\x6d\xf9\xc7\xce\x5a\x42\x14\x9a\xbc\xb5\x78\xbf\x0f\xae\x17\xf8\x98\x4e\x28\x11\x57\xde\x30\xd8\x82\x08\xa3\x49\x56\xc8\xee\x98\x90\x79\x97\xfc\xba\xc8\x1a\x2f\x86\x1a\xd6\x2e\x1f\x33\x11\xb9\x77\xdd\xd5\x85\x51\x6e\x0b\x7b\xae\x13\x23\x72\xb8\x4e\x55\x2f\xad\x7e\x5e\xe0\xd0\x58\x2c\x7c\xe4\xe6\x3f\x80\xdb\x2f\x93\x3e\x04\x16\x11\x7e\x68\xf3\x85\x1f\x2d\x4e\x8d\x8d\x43\x58\x28\x3d\x08\x3f\xb8\x0f\xab\x50\x2b\xb8\xa3\xe6\x10\x3e\x10\x22\x50\x24\x98\xf7\xaa\xd1\xa4\xbb\xbb\xfe\x27\xe6\x3d\x7f\x6c\x90\xeb\x27\xe0\x18\x7d\xb4\x01\x30\xf9\x6a\xc5\xbd\x0b\x49\xf0\xca\xce\x7b\x76\x2a\xa9\xa2\x4b\x3c\x15\xbd\x22\x87\x3b\x81\x9e\x20\x1f\xd5\x86\x82\x5f\xe3\xc5\x88\x78\x03\xf4\x0d\xc3\xec\x7a\xac\x56\xa2\x4c\x30\x4f\x30\xf5\x02\x92\x05\xfd\x41\x77\x30\x9a\x30\xfd\x30\xf8\xd2\x26\xf4\xd4\x49\x86\x41\xa6\xb9\x29\x49\xaa\x48\x18\xf5\x1e\xd6\x2f\x2d\x07\xa7\xa1\x10\x91\x91\xdf\x81\x95\xaf\xda\xc6\xa3\x34\xb6\x4a\xb9\xf0\x4a\xc5\x29\x52\x4e\x32\x80\x98\x53\x99\xd8\xef\x4c\x5b\xae\x78\x81\x6b\x4d\xf3\x81\x2d\x8b\xb6\x04\x01\xb3\x4d\x8d\x4c\x3b\x4e\x39\xaf\xf8\x40\xa0\x11\x58\xa4\x3e\xc1\xc4\x3a\x0e\x18\x8e\x59\x5a\x24\xce\x9b\x64\x6d\x9e\xaa\x35\xdf\x1c\x92\xf9\x18\x15\xe0\x3a\x0b\xb1\xc9\xe1\x3d\x73\x78\x63\x1e\x7c\xb2\x60\x45\xd9\x86\x15\x2d\x13\x9c\x1b\x02\xc4\xe0\x71\x29\x0a\xd4\xf9\x2e\x33\xcf\x0a\x69\xee\x0f\x90\x59\x6f\x08\xf6\x11\x71\x7b\xc9\xa3\x61\xb5\x34\x42\x64\x9f\x60\x2d\xcb\xf5\xa5\x62\x55\x85\x21\xa1\x99\x38\x2b\x7a\xaa\xa3\xb1\x8b\x70\x06\xad\x4c\xb3\xe2\xbd\xcc\x72\xe2\xae\x8c\x0c\x42\xef\x86\x06\x4f\xd0\x86\xe9\x51\x73\x3e\xde\xb8\x92\x12\x9e\xeb\x67\x92\x3c\xb5\x77\x25\x71\xb2\x2c\xcd\x80\xac\x1c\x59\x8d\xa0\x67\x72\xac\xb5\x64\x23\x43\x83\xaa\x8a\x8c\x68\x4e\xc9\xa4\xd4\x33\x6b\x6f\xf1\x82\xca\xd6\x06\x2f\xa8\x5c\xdb\x1e\xbc\xca\xf9\x39\x93\xa3\x29\xf1\xac\x41\x2d\x16\x85\x5a\x56\xbf\x26\x6e\xc2\xc3\x0c\xdd\x7d\x5c\x50\x1b\x5f\xd9\x83\x54\xea\xd7\xb3\x66\x95\xeb\xfb\x57\x2c\x13\xe4\x42\xe0\xa3\x60\xe4\xfa\x32\x4d\xaa\x79\x99\x7a\xe1\x5c\x54\x81\x9f\xe6\xf5\x35\x81\x82\xb5\x25\xb7\x32\x56\x7d\x34\xb8\xa5\x55\x68\xf6\x1d\x19\x11\xfa\xb1\xd9\x6e\x0b\x12\x40\x3c\xbc\x77\xda\xb6\xcb\x94\xaa\x77\x53\x96\xb8\x48\x17\x71\x56\xb9\x7a\x0d\x38\x1f\x3c\x60\x43\xb0\xbc\x08\x0e\x9e\x75\xef\xb0\xf7\xbd\xbb\x7f\x7d\x0f\x5c\x26\xb8\xd6\xb8\x59\x28\x84\x07\x74\x68\x2d\xb1\xf4\x25\x9c\x25\x0c\xcf\x49\x31\x12\x74\xae\x48\x4f\x6b\xcd\x04\x7b\xc9\x6d\xed\x5f\x50\x35\x70\x7e\xfd\xe6\x55\xc5\x5a\xeb\x99\xcf\x62\x8c\x36\xb3\x18\x86\xec\x5e\xcb\x86\xa1\xd5\xaa\xf6\xb6\xf6\x09\xd7\xb7\x3d\x58\x6b\x47\xbe\x9d\xd9\xc5\x76\xce\x89\xef\xca\x36\xc1\x68\xf6\x4b\x13\x78\xbd\x3a\xbf\xf4\xe9\x66\x1c\x0d\xd8\xa7\x2a\x3a\x72\x12\x7c\x84\xd7\xc9\x75\x11\x49\x18\xcb\x3f\x84\x3d\x53\xcc\x6d\x8d\x06\x84\x7f\x67\x7f\x97\xc6\x00\x6c\x6b\x63\x80\x12\xb4\xf6\xad\x82\x95\xd9\xfc\x76\x71\x9f\xaa\x45\x03\x83\x53\xc7\xfd\x97\xd5\x45\x8d\x2e\x2b\xb2\x49\x55\xcc\x59\x24\x94\xb5\x9b\x2f\x99\x1a\x8b\x24\xa7\x2d\xbb\x62\x4a\x6d\x23\x31\x5a\xb5\x0d\xc3\x37\x0b\x6f\xa2\x8b\x6a\xb8\x9a\x4c\x0b\x5f\x69\x25\x0b\xff\xee\xaa\xed\xde\xaa\xa2\xab\x6d\x7d\x61\x82\x41\x2b\x6e\xa3\x3f\xfb\xa0\xf0\xc7\x09\x90\xc2\xd7\xe8\xf1\x44\x57\xcb\x26\xd8\x3e\x6a\x30\x9c\x80\xe3\x1c\x64\xdb\xcb\x06\x4f\x01\x44\x12\xc7\x5a\xb4\xbc\x72\x08\x0a\x96\x9b\xac\x70\xaf\x58\xa1\xc3\xe6\x02\xb5\xbf\x7e\xe8\x07\xc0\xb9\xf6\x0b\x89\x1b\x0e\xa3\xde\x58\xcb\x28\x1a\xcf\x2d\xb2\xf1\xf8\x98\x5b\xc3\x5e\x6f\x08\x76\xc7\x1b\xc6\x45\x84\x66\xc2\x4b\x1e\xa2\x58\x5f\x96\x86\x65\x69\x57\x5e\xd8\xb7\x2a\x5b\xa9\xed\x63\xbb\x86\xb5\x81\xe1\xf6\x69\xbb\xd6\x93\xb2\x15\xfb\xd7\xdc\x40\x93\xb4\x61\xcc\x68\xb4\x5b\x2d\x37\xd3\xe9\xb2\x74\xe6\x31\x2c\x6d\xbc\xae\x93\xeb\xae\xd7\xd4\x1a\xf8\xc1\x00\x7e\x38\x7e\xf5\xd2\x50\x88\x43\x69\x05\x28\xb8\x05\xa0\xa9\x31\xc6\xe4\xa9\x33\xc7\xcc\x52\x6b\x90\x59\xa4\xfb\x65\x2a\xec\xae\x10\x9c\xcb\x3e\xc3\xea\xcf\xab\x4c\x9c\x51\xd6\x87\xd7\x70\xf3\x8b\xe8\xb3\x65\xa1\xff\x64\xfa\x0f\x2f\xe7\x17\xbf\x60\x59\x4d\xba\x2c\xaf\x52\x33\x05\xb1\x2d\x76\x82\x2b\x62\x11\xda\x7f\xef\x34\x63\x3e\x19\x6c\x09\xd7\xa8\x7a\xb3\x43\xb0\xec\xd5\x30\x07\x30\x10\x94\x47\x15\xea\x79\x08\xab\x91\xd4\x57\x31\x85\x65\x2c\x7a\xda\x2a\xc6\x5a\x9f\x24\x65\x70\x9b\xe7\xdb\xf7\xc3\x2d\xae\x3b\x38\xb4\x61\x7e\xc0\xce\x92\x36\x42\x6c\x3a\xba\x52\x49\xd7\x3a\x3a\x5f\x43\xe6\x19\x76\xc5\x56\x59\xdf\x7a\xd0\x82\x20\xdc\x36\x90\xb8\x05\xc6\x55\x50\xdc\x7a\x8b\x41\x39\xd3\x6c\x63\x98\x71\x1d\x8a\x10\x62\xaf\xc9\x06\x98\x02\xb6\x99\xf2\x3e\x8d\xc8\xdc\x29\x71\x5d\x72\x22\x52\xb1\x5a\x65\x98\xa5\x4c\xfd\x01\x23\x42\xff\x12\x5f\xb3\x64\x96\xe6\xb8\xbb\x77\x7d\x5c\xc0\xbd\x7c\xb8\x88\xf5\xec\x24\x08\x34\x59\x6c\xe6\x83\x5b\x0c\x6e\xef\xf7\x71\xe9\x6e\x8c\x16\x4c\xb7\x32\xae\x36\xae\xbe\x6e\x58\xad\x76\xcd\x8d\xbb\x25\x67\xcd\x14\x63\xe1\x6a\x88\xd8\x15\xaf\x4f\xaf\xcd\x7e\xff\xc3\x9f\x03\x34\x9c\x51\x68\x7a\x28\x6b\xf6\x9e\xbb\x07\x56\x57\x51\x8b\x0a\x84\x5a\xb5\xdc\x14\x02\xf1\xb4\xe6\xbd\x60\x6a\xb7\x9b\x02\x3e\x54\xde\x65\x92\x72\xc8\xe8\xad\xad\xe7\x49\x63\x7a\x38\x48\x51\x3d\x5b\x98\x9d\x6d\x5d\x7d\xb5\x5a\x03\xab\x6d\x2a\xe3\x7a\xaf\x78\xb9\xe6\xed\xae\x56\x22\xd4\xe6\xf8\x64\xbf\x2c\x13\xbc\xbb\xbf\x63\x41\x5b\xc6\x1a\xe7\xda\x5c\x57\x5c\x21\xf6\xfd\x2b\xe3\x8f\xd6\x83\xc3\xe5\x03\xa6\xe9\x00\xcd\xd4\x24\x66\xfc\x37\x84\xd1\x39\x39\xfd\xa0\x04\x77\xc4\x91\x8e\x78\xcd\xd2\xfd\x6f\xd8\xb7\xd4\xc4\x99\xef\x74\x76\xc9\x40\x0e\xbf\xd9\xdb\x63\x3a\x2c\x38\x19\xd0\x01\x1b\xee\xa1\x77\xe4\xd7\x05\x29\xe4\x53\x46\x67\xf0\xc0\xe2\x7b\x91\xcd\x08\x1a\x62\x08\x1f\x69\x0b\x3d\x53\xbc\x49\x5e\x2f\xb3\x5a\x85\xf9\x6b\x9a\xb2\x8b\x16\xc3\x08\x56\xab\x5d\x88\x30\x65\x57\x50\x9d\x67\x6d\xd5\x30\x1a\xb5\x75\xba\xe5\x82\xb7\xbf\x02\xb8\x4f\x9f\x73\xf6\x16\x74\x59\x62\x96\x1e\x84\x2c\x13\x62\x9c\x11\xa4\x19\x27\xcd\xd9\x19\xbe\xae\x4c\x85\x66\xf5\x32\x9d\x50\x94\x29\xc1\xb9\xb6\x01\x91\x71\x4c\xbb\x59\xf2\x80\x25\xbf\x63\x3a\x57\xc6\x31\xef\x16\x3a\xa5\x54\xc7\x66\xde\x93\x7c\xfe\x64\xdf\xf6\x32\xe6\xe7\x0c\xb9\xf4\x6f\x5d\xfa\x62\x6e\x52\x55\x2b\x55\x71\x60\x23\xbd\x9c\xaa\x82\xfa\x42\xa5\x19\xef\x24\xe7\x5c\xf4\x65\x99\xbe\xca\xe4\x74\x9b\xc5\xf0\x9e\x7b\xdc\xab\xcf\x3f\x08\x55\xb6\x23\x53\xd2\x63\x7c\x4c\x8e\x2f\xe7\x24\x4d\xd3\xd7\x7c\x4c\x7a\x2f\x5e\xbe\x78\xf5\xe2\xf5\xf1\xc9\xeb\x37\xcf\x5f\xac\x56\xcd\xfc\xe7\x6f\x9e\xfd\xe4\x17\xf0\xd9\xf3\x9f\x01\x6b\x0f\x49\x7f\x0d\x3b\xef\xc7\x5c\xdc\x06\x3a\x75\xdd\xd5\x7d\xa2\xe8\xb2\xc4\x22\xdd\xc7\x2c\xdd\xc7\x34\x95\x56\x15\xaf\x90\x8d\x6b\x0c\xcb\xac\x98\x51\x18\x21\x23\xc7\x53\xb0\xd3\xeb\x2f\xb0\x7e\xb3\x38\x52\x18\x3a\x0e\x35\x33\xf5\x27\x57\x32\xc1\x34\xd1\x78\x3d\xd5\xed\x4e\x6c\xbb\x73\xd3\xee\xac\x4c\x9d\x6a\x9f\xef\x4d\x9f\xa4\xfb\x9d\x4e\xb6\x37\x81\xbf\x0a\xcf\x7a\x82\x2f\xd8\x38\x2e\x92\xee\xbc\xbb\xf8\x36\xf5\x92\x44\x12\x94\xc8\x93\xee\xac\x3b\x0a\x4a\xb0\xa4\x74\x32\xca\x15\x4f\xda\xda\x16\xcc\x38\x10\xdf\xc2\xc7\xf8\x83\x9c\x9e\x3e\x28\x2e\x0b\x49\xee\xdd\x49\xd0\xbb\x45\x4e\xb6\x8d\xca\xe5\x0e\x1a\xa8\xb4\xd1\x47\xe2\x3c\x5f\x08\x50\x47\x6f\xdd\xb4\xab\xb1\xb1\xdd\x82\xb2\xb3\x45\x9e\x89\xeb\xb4\xec\xd5\x29\x37\xbd\x3e\x3d\xb2\xcb\x71\xd5\xfb\x53\x7f\xd5\xc8\x85\x7c\x60\x24\x76\xb5\xc2\x6b\xd7\xd5\x16\xda\xb0\x37\xbf\x89\x77\xf7\xd3\xd4\xec\x88\x17\xaf\xff\xdc\x7b\xf1\xdf\xc7\x2f\x5e\x3f\x3f\x79\xfb\xee\xcd\xf1\x9b\xe3\xbf\xbc\x7d\xf1\xde\x5a\x2b\xb4\x66\x1a\x07\xb8\xc9\xda\x6b\x50\x9d\xef\xb3\x56\xfe\x2a\x29\xe8\xc5\x49\xfa\xc4\x3d\x6e\x99\x0b\x32\xca\x24\x89\x51\xbd\x5e\xb5\x54\x71\x12\xd1\x22\x72\x45\xc7\xce\xbd\x38\xb9\x98\xe7\x74\x44\x65\x7e\xd9\x8f\xe8\x4c\x61\x7d\xb4\x8c\x5c\xb5\xa8\x8c\x26\x82\xcf\xa2\xcf\x6b\xe0\xfa\xfc\x1b\x84\x77\x0f\xf0\x92\x8e\xfb\x75\x48\xf6\xce\x72\x7e\x9a\xe5\x05\xc2\x0b\x26\x69\xde\x47\x8f\x7a\xfb\x10\x4d\x10\x37\x56\x3c\xde\xc7\xde\x10\xf5\x1d\x1e\x3c\x14\xa9\x5f\xa7\xac\xc5\xb3\x26\xa0\x42\xb4\xbb\x06\xa8\xbc\x8a\xd7\x03\x96\x57\xf1\x1e\xc0\xe5\xf5\xb6\x11\x60\xad\x5e\x71\x7c\x64\xb7\xde\x8d\x3c\xcc\xda\x1c\x5b\xa1\xad\x11\x7d\xbe\xcd\xb2\x0f\xc4\x38\x4d\xfa\x14\xee\x4e\x5a\x88\x00\xd8\xe5\x78\x17\x0a\x7e\x9f\x96\x7b\x06\xb5\xbc\x0e\xe3\x0c\xda\x1d\x7b\xf6\x3c\x4c\xd3\x94\x39\x96\x99\x19\xc3\xb2\x73\x13\x0b\x9f\x2f\x98\xec\x8b\x01\x32\xdf\xdd\x91\x4a\x40\xc3\x32\xc1\xa0\x30\xf2\xb0\xb5\xd7\xeb\xb1\x24\xf4\xbc\xc4\xb6\x05\x7a\x80\xa5\xff\x16\x60\x0f\xd4\x6a\x01\x92\x92\xc1\xfe\xf0\xba\x70\x32\x27\xec\x96\x27\xf1\x83\xab\xe0\xb5\x81\xb0\xdf\x05\xac\x36\x04\x87\x72\xe3\xba\xc3\xa0\x59\xd7\x3d\xb1\xc5\x27\x3b\xb1\x45\xed\xc4\xde\x6e\x59\xed\x72\x69\x8b\x91\x7f\x80\xfb\x0f\x0d\x8e\xa2\x3f\x18\x3c\xf8\xec\x01\x46\xaa\xe7\xc1\x83\xe2\xb3\x07\xd4\xfe\xfe\x9f\x38\xbb\x58\x49\x52\xc8\x84\xea\xe4\xcf\x0e\x88\xce\x89\xf9\x48\xf2\xf9\xea\x23\x15\xc9\xc2\x66\xd1\x7a\x0e\x0d\x33\xb2\x9c\x66\xc5\xaa\x90\x99\x5c\x14\xab\x53\xce\x16\x45\x52\x6b\xf4\x74\x91\xd8\xc6\x8a\x2a\x6d\x32\xc9\xf2\x95\xe4\xb3\x4c\x26\xdc\xe4\x72\x9b\x3b\x90\x74\x98\x2c\x66\x26\x39\xf3\x12\xb3\x20\xad\x30\x13\x70\xcd\x1e\xf6\xe3\xc1\xff\x4c\x86\xc9\x84\xac\xe2\x41\x2e\x86\xc9\xc4\x0e\xe6\xb3\x87\x1f\x6d\xa1\x29\xfd\x48\x6c\xb2\xed\xf0\x7f\x32\x42\xf9\xe2\x72\xb8\xfa\x75\x91\x5c\xda\x09\xda\x0a\x17\xab\xd1\x74\x55\x14\xab\x62\x5a\x9f\xda\x2c\x93\x62\xf5\x91\x08\xb9\xa2\x6c\x9c\xc4\x87\x7d\x7a\xb1\x22\x17\xb6\x14\x1d\x11\x0b\xf1\xd9\x2a\x4f\xf8\xa2\x20\x55\x8e\x97\x41\x47\xcd\x74\xee\x5a\x21\xcc\x25\x11\x66\x13\x75\xf7\xbf\x2e\xe8\x6f\x36\xe5\x37\xd5\xd7\x10\x5b\x94\x55\xcb\xaf\x81\xa3\x8b\x16\x45\x58\x95\x25\xe4\xdc\xad\xfe\x79\xd1\x02\xe2\xc5\x4c\x27\xc6\x59\xc2\xb2\xfc\x72\x15\x9f\x26\xd9\x2a\x1e\x27\x34\x3b\x63\x7c\x15\xcf\x93\x4c\x10\x26\xa7\x44\xfd\x14\x1c\xd2\x8a\xe4\x92\xf1\xf9\x2a\x96\xc9\x94\x24\x71\x41\x8b\x55\x41\x5c\xbf\x05\x35\xbd\xfc\x4f\xa6\xda\x5b\x9f\x0f\x2b\xf8\x91\xd8\xd1\x4d\x88\xb7\x6c\x45\x30\x09\xd9\x4c\x82\x55\xf7\x2a\xb7\xac\x2f\x75\xb9\x97\x06\x36\x09\x11\x55\x22\xfc\x36\xcb\x9b\xf0\x8f\x55\x86\xfa\xdd\x40\x08\x12\x74\x5f\x5f\x4f\xb5\xe4\x16\xe1\x8b\x24\x26\x45\x72\x18\x8c\x96\xd7\xea\xc7\xc5\x94\xd7\x67\x34\x12\xb4\xd0\xdb\x35\xa6\xc5\xaa\x82\x17\x75\xbb\x39\xb9\x18\x50\x32\xb4\xb5\x2e\x68\x63\x33\xc7\x8b\x62\x45\x6d\xbd\x45\xb1\x76\xe3\x36\x06\x08\x78\x48\x98\x3f\x1c\x87\xed\x0a\xbb\x2d\xc8\x2e\xaa\xed\xe0\xa7\xd3\x0b\x0f\x4f\x7f\xab\x4d\x75\x9c\xc9\xec\x34\x2b\xfc\xe9\x0e\x31\x15\x82\x00\xfe\xbe\xcd\xa8\x50\x34\x0c\x29\x8e\x02\x02\x42\xcd\x09\x9f\xe7\x00\x4d\x34\xcb\x54\xc2\x4c\xef\x0c\x34\x9a\xd2\x7c\x8c\xb0\xfe\x2b\x4c\x62\xa1\x44\x5d\xf5\xbf\x5e\x4b\x04\xae\x4b\x30\xfc\xd1\x09\x23\x7e\x8e\x30\xfa\x40\x99\x6e\xf2\x37\x3e\x3b\xa5\xaa\x84\xfe\x01\x7b\x69\xc1\x80\x3f\x82\x53\x62\x80\xc8\xaf\x0b\x3a\xd7\xae\x32\x11\x65\x13\x2e\xb4\x56\x0f\x61\x24\x74\xf8\xa7\x19\x67\xe4\x52\x75\x3a\x27\x23\xd5\x02\xf8\x5b\xd6\x3f\x26\xb4\x98\xaa\xef\x29\x21\x73\x84\xd1\xdf\x49\xa6\x0e\x07\x34\xe7\x39\xec\xf8\x8d\x62\x7b\x3b\x27\x70\x3d\xde\x01\x0e\xa3\x4f\xed\x3d\xc9\x3e\x0e\x7b\xf0\x3f\x7f\x2b\x7e\xf7\xd9\x03\xcc\xd2\x07\xf1\xe0\x6f\xe7\x0f\xba\xc3\xbd\xc1\xc9\x83\xbf\x15\xdd\x61\x12\x0f\xb2\xee\x6f\x7f\x1b\x0f\xf7\x3e\x4b\x1e\x60\x6a\xf2\x55\xce\x5e\x12\x0f\x9e\x76\xff\x3a\x34\xf9\xbf\x53\xf9\x3c\x7d\x10\xa6\x3d\xa8\x4c\xaa\x33\x3d\x83\x09\x17\xb1\x7e\x78\xb5\x0f\x01\xfb\x35\xdf\xfb\x8d\xf8\x96\x7d\x23\xf6\xf6\x12\xd2\xf3\x96\x70\x20\x07\x62\xd8\x93\xfc\x25\x3f\x27\xe2\x59\x56\x90\x38\x19\xa6\xbb\xfb\x95\xb9\x74\x51\xb9\xa2\x15\x3b\xb6\x65\xa3\x5a\xb2\x2d\xb3\x6f\xe9\x37\x6c\x6f\x2f\x11\xa9\x1c\xb0\x21\x26\x3d\x87\xb0\x03\x31\xd8\x6f\x34\x2f\x06\x07\xf5\x42\x07\x57\x16\x3a\x62\x60\xf2\xbc\xa6\xec\xfe\x9a\xb2\x6d\x9d\xef\x0f\x4b\xdf\x08\x3d\x59\xc6\x24\x25\xab\xd5\xb2\x4c\x7c\xc0\xa4\x01\x98\x56\xab\x45\x9c\xf8\x5d\xc0\x4e\x4c\xeb\x09\x50\xac\x76\x73\xbe\xc8\x49\x51\xf1\x1f\x56\xf8\x2d\x56\xab\x81\x77\x2e\x55\x42\x1e\xa4\xbb\x56\xfb\xaa\xdb\xfa\xbc\x20\xd1\xdf\x86\x8b\x38\x29\x77\xb2\x58\xe2\x60\xcc\x09\x2e\x20\x29\x1c\xa2\xb9\xd3\x24\xf0\x34\xe5\x59\x36\x9a\x92\x38\x29\xe9\x24\xde\x35\xa8\xae\x2f\xf9\x3a\x9d\xf0\x1b\xec\x54\x93\x5a\xbc\x7b\x3f\x20\x9a\x0e\x85\x06\x9e\x35\x4e\x05\x3f\x2f\x88\x88\xc6\x9c\x14\x11\xe3\x32\x2a\x16\x73\x90\x9b\x5b\x5a\xc4\xd1\x5c\x8b\xd9\x73\x9e\x5f\x4e\x68\x1e\x29\x19\x2c\x22\xc5\x17\xdd\x62\x9a\xcd\xfa\xd1\x54\xca\x79\xff\xc1\x83\x33\x2a\x7b\x94\x3f\xb8\xfc\xee\xa7\x87\xe2\x0c\x25\x3b\x9e\x31\xbf\xb6\xc1\x26\x69\x4b\xe3\x56\xfa\x23\xbd\x93\x31\x1d\x19\x13\x0f\xf3\xd6\xc9\xa4\x61\x52\xe6\x95\x42\x20\x5d\x06\x60\xd1\x97\xcc\xf3\x85\x38\xb3\x29\xc6\x4c\xaa\x62\x80\xd3\xa6\x34\x64\x9c\x08\x8e\x54\x8d\x9f\x0a\x32\x4e\x77\xf7\xad\xad\x13\xb4\x32\x20\x43\x6b\xe8\x52\xa5\x98\x27\x25\xbe\x42\x02\x1c\x56\xe8\x11\x58\x56\x3e\x0d\x65\x18\xb8\x73\x6f\xf6\x66\xc4\xb6\x01\x94\xe9\xf9\x42\xae\x73\x23\xad\x2b\xcd\x75\xef\xac\x1a\x8f\x4b\x31\xe3\xa9\x74\x49\x5a\x68\x4a\xca\x12\xfb\xf0\x68\xf6\x7e\x10\xcc\x35\x5d\x58\x98\x99\xa6\x55\x42\x89\xc7\xb4\x68\x80\xd9\xd6\xa8\x0c\xa2\x6d\x95\x2a\x65\x2b\xc0\x87\x30\x5c\x0f\xc2\x5a\xb5\x6a\xaa\x81\x3d\xa4\x9a\x30\xe4\x78\x56\x2a\xd5\x7c\x8d\x95\x47\x13\x45\x60\xd7\xdb\xad\xae\xd5\x0d\x6a\x3d\x6a\xc4\x28\x29\x1d\x05\xb8\x49\xf3\xb6\xee\xa6\xf6\x3d\x7a\x50\x79\xdf\xd9\xd8\x41\x16\x57\x5d\xe0\x01\x69\x36\xe9\xe8\xc9\xd6\x63\x2e\x82\x26\xd5\x40\x87\xaa\x21\x4f\x53\xb9\xdd\x5a\xe0\x3a\x42\xc2\x0e\x30\x55\xdd\xb3\x13\x79\x68\x6e\x9b\xe1\x90\x57\x05\x1b\x2b\xe2\x27\xb9\xe9\x24\xfd\xf8\x60\x37\x4d\xe7\x99\x28\xc8\xf7\x39\xcf\x64\x4c\xe0\xad\x6f\x1a\x34\x27\xb7\x6e\x2e\xa9\xed\xbe\x43\xd9\xff\xe5\xb3\x25\x29\xa3\xcf\x96\xb2\xfc\xc5\x5b\x7b\x8d\xa9\x9b\xb1\xf8\x64\x43\xe1\xd6\x99\xda\xf2\xad\x63\x33\x07\x89\x5a\xcc\xaa\x2e\xce\xf4\x31\xdf\x12\x7b\x13\x3c\xeb\xa6\xe0\xf7\xa6\xa7\x98\xee\x98\x24\x78\x9e\x72\xf7\x7b\x62\x0d\x7b\x88\x2a\x39\x4a\x6b\x58\x83\xc7\x29\xeb\x91\x0b\x32\x8a\x49\xb2\x5a\x51\xfb\x13\x8f\x3b\x9d\x78\x9a\x8e\x07\x0f\x6b\xa7\x74\x82\x3f\x7a\x87\x67\xc0\xae\x8c\x86\xc6\xd2\xa7\x99\x35\x1d\xe2\x8f\xd5\x38\x14\xab\x32\x8b\x28\x8b\xb2\x44\x0d\xc9\x84\xf6\x9c\xed\xa1\xcf\x2a\xb7\x2e\x79\x9a\x0d\x66\x43\x3c\xef\x74\xb2\xc1\x74\xd8\xe9\xc4\xb9\xd1\xef\x1b\x4d\xf1\x28\x9b\x53\xa9\xd1\x2d\x4f\xf0\x6c\x6d\xe6\x2c\xd1\xc1\x3e\xe6\x79\x36\x22\xb1\x3a\x0f\xdf\x91\xb3\x17\x17\xf3\x78\x86\x11\x45\x09\xce\x13\x18\x8e\xa2\xcb\x67\x15\xd7\x74\xf6\x64\xbf\xd3\x89\x8b\x54\x0e\xce\xba\x07\x43\x3c\x4b\xc1\x41\xe2\xee\xcc\x42\x35\xf9\xe6\xac\xdb\x4d\xbe\x31\x63\x2d\x52\xcd\x32\x98\x62\x79\x5a\x28\x06\x69\x91\x56\xfd\xce\x70\x9e\xe0\x45\x59\xe2\x3c\xb8\x09\xaa\x3c\x77\xe2\xbc\xe7\xd8\x61\xd0\x94\xe6\x71\x65\x9d\x00\xa7\xc6\x28\xcd\xaf\x32\xec\x5f\xaf\x63\xbb\xbe\xe6\xee\xce\x79\xef\x8d\x64\xde\xce\xab\x02\x42\x6f\x2d\xa1\x21\x57\x9e\x35\x2d\xad\xd5\xf6\xec\x55\xd0\x6b\x6a\x74\xef\xf7\x22\xdd\xbd\x87\xd6\xf1\x06\x42\xdb\xbc\x30\x06\x01\xf1\x5c\x58\xfd\x70\xfc\xea\xe5\x77\x99\x28\x6a\xe5\x4d\x6a\x4f\xcd\x07\x7c\xb4\xfc\xe0\xaa\x86\x05\xe1\x35\xfa\x69\x7b\xd1\xb2\x19\xa8\x88\x32\x99\x57\x8f\x2b\x20\x80\x68\x57\xf1\x6a\x45\xc3\x9b\x7f\xde\x9d\x91\xa2\xc8\xce\x88\x96\x42\xef\x1e\xbb\x5e\x1d\xbd\x7f\x7f\xf4\xfa\x8f\x27\xc7\xef\x9e\xbe\x7e\xff\xf2\xe9\xf1\xd1\x9b\xd7\x69\x95\x7a\xf4\xfa\xf8\xe5\xc9\xd3\xb7\x47\x75\xc1\x4f\xea\x18\xb6\xcf\xf8\xb8\x59\x76\xa7\xa5\xba\xd8\x69\xef\x09\xb5\x24\xb6\x04\x5e\x09\xe1\xa5\x41\x01\xa1\xd0\xbb\xa7\x59\xb1\x75\x7c\x46\x2f\xee\xca\xbd\xbe\xd2\xbd\x3b\x79\xbb\x4d\x1e\xd0\x2f\x63\x58\xf0\x8e\x53\x31\x45\xc6\xc6\xd5\xba\x6a\xb5\x0f\x59\x2b\xcb\xdc\x6c\xfc\x3d\x00\xf2\xd9\x9a\x12\xba\x97\xd7\x99\xa4\x1f\xc9\xf7\x16\xe4\x5e\xb1\x29\x04\x26\x51\x75\x53\x7b\x48\xd7\xda\x04\x3a\x1e\x26\xd5\x1e\x54\xea\x05\x18\x0c\xcb\x09\xcd\x25\x11\x3f\x32\x7e\xce\x9c\xf9\x6d\x68\x88\x14\x89\xca\x32\xa2\x84\xa3\xc7\x40\x05\x16\x2f\xf1\xdf\xfb\xf5\x28\x1b\xe5\x8b\x31\x29\xc0\xe2\x22\x96\xda\x3c\x4c\x0c\x3d\x73\x17\xf0\x25\x5a\x75\x04\xf6\x37\xfa\x78\x6e\x1d\x89\xa2\x14\xa4\xd3\x41\x66\x17\x42\x8f\x4b\x99\x2e\x7b\xbd\x1e\x54\x3a\x23\xf2\x75\x36\x23\x66\xaa\x31\xe9\xe9\x82\x09\xf8\x30\x29\x4b\xd7\xad\x7d\xb9\xe7\xe0\xe9\xba\x50\x7b\xb9\xac\x37\x93\x2c\x6b\x06\xeb\x21\x30\xe3\x64\x60\x57\xc1\x2e\x7d\x4f\x91\x91\x21\xd8\x25\x77\x3a\x72\x40\x86\x16\x7a\xea\xb7\x6f\xd8\xcb\xb0\x8c\x19\x46\xaa\x78\xf5\xda\xf5\x1a\x1b\x4f\xff\xee\xaa\xc9\x48\x3a\xab\xdd\xfe\xc1\x6b\xfa\x19\x99\x71\xb8\x82\xd9\x6e\x13\x5f\x75\x9b\xe5\x39\x65\xfe\x97\xdc\xbd\x34\x1d\xa0\x9c\x8f\xb2\x9c\xbc\xd2\x2f\x32\x15\x9c\x00\x08\xd5\xb7\x82\xe4\x5f\x39\x53\x30\x9b\xf2\x85\x38\x78\x08\xc6\x92\xe4\xc3\x38\xbb\x54\x60\x14\x19\xc2\xe8\x92\x64\x42\xab\x20\xe5\x14\x61\xa4\xb3\x54\x69\x95\x48\x99\x09\x03\x47\x46\x9c\x8d\xbd\x16\x75\x58\x5d\x28\xf7\xec\x72\x94\x13\x34\x34\x84\x83\xbb\x27\x75\x62\xc3\x93\x70\xff\x19\x38\xdb\x4c\x1f\xc2\xf7\x08\x80\xd8\xe9\x13\xc5\x98\x1d\x31\x99\xeb\xb8\xca\x74\x46\x2c\x86\x63\x99\x24\xf5\x57\xd6\x36\x2c\x54\x39\x71\x85\xd4\x72\xdb\xe7\x2a\x6e\x2b\xd8\xbd\x63\xdd\xad\x6c\xd8\x5c\x2c\x09\xb4\x04\xad\x43\x87\x62\x66\xe3\x02\xbf\xab\xc6\x1a\xcb\xd0\x1e\x9e\x63\x16\xf3\x9b\x6f\x1b\x6f\xd7\xb4\xb3\x96\xdb\x6e\xb7\x4f\xae\xe1\x05\xe4\x10\x2d\xfe\x02\x4a\xe7\xfa\xc2\x37\x5a\xc2\x3c\x45\x7a\x56\x31\x4d\x35\x78\x12\xca\x62\x96\x8a\x64\xcd\xce\x54\x4d\x98\x21\xf0\x6b\xed\x4c\x36\xa0\xc3\x94\x5f\x1f\xe8\x86\x91\xda\x48\xa9\x5a\x38\xae\xf6\xb5\xd1\x7c\x2e\x88\xd5\x6d\x4f\x62\xd7\xd1\x2e\xfa\x2f\x49\xbb\x96\x15\x7f\xdb\x5f\xfe\xa4\x66\xde\x5f\x92\x62\x94\xcd\xc9\x8b\x8b\xb9\x20\x45\x41\x39\xeb\xf3\xb2\x2c\xb5\x30\x69\x90\x27\xab\xb3\x24\x74\x0d\x4b\x42\xaf\x64\x49\xe8\x75\x49\x0e\x66\x86\xe8\x38\xa2\xa6\x53\xf1\x92\x9e\x31\x2e\xc8\x71\x76\xa6\xad\x8b\x6e\xcc\xc7\x84\xb4\x49\x07\xb5\x93\x3b\xcd\xa7\x74\x9d\x4e\x4c\xd3\xf0\x71\xaf\x4c\x12\xf7\xbc\x59\x74\x3a\xa2\x37\x95\xb3\xfc\x7d\x36\x21\xd8\xb8\x2d\x68\x27\x4f\x14\xaf\x19\x5e\x9c\x24\x38\x4f\xb3\xc3\xfa\xdb\x0d\xf3\x9c\x6d\xd7\x8e\xa5\xf1\x0a\xae\xdd\x45\x0c\xa9\x5c\xc4\x08\xe7\x55\x95\x01\x03\xb5\x13\x28\x0b\x68\xa1\x04\x24\x35\xf0\x98\x25\x87\xc0\x65\xb1\x9e\xe4\x2a\x31\x4e\xfa\xf0\xdd\x80\x07\x3b\xe4\x31\x4b\xfa\xac\x4c\xb0\x2c\x63\x91\xf4\x05\x5e\xa4\x85\xa5\xba\x95\x7a\x3b\x3b\x0c\xba\xb2\x10\x8a\x17\x49\x7f\xe1\xd3\xe3\x0c\xd3\x38\xb3\xf4\x18\xd9\x2d\x7e\x03\x92\xcc\x20\x48\xff\x7f\xd8\x98\x9b\xb0\x31\x85\xbc\xcc\xe1\x15\xc4\x42\x08\xc2\x46\x97\xde\xcf\xe7\xb4\x98\xe7\xc0\xa2\x2c\x18\x3c\xf9\x50\x7f\xbc\xc4\x82\xfc\x51\xf0\xc5\x1c\x54\x2d\x8a\x7d\xa1\xb3\xc5\xec\x88\x49\x02\xce\xef\xce\x28\x2c\x83\x49\xfe\x5e\x68\x5f\x36\x55\x7a\x76\xd1\x9e\xae\xcb\xbf\xa7\x67\x8c\x4e\xe8\x28\x63\xb2\x5e\xa5\x2d\x6b\xc4\x67\xf3\x6c\xe4\x8d\xad\x39\x05\x9b\xa2\xaa\x23\x8c\x18\x97\xf6\x5e\xb8\xa0\x67\x2c\x9c\x6a\x6d\xe2\xff\x20\x76\xeb\x35\x60\xf5\x3f\x3b\xb3\x25\xd7\xb3\x58\xc8\xec\xcb\x1b\xec\x68\x41\x72\xe8\xf3\x6e\x0e\xfc\x40\x49\x73\x43\x52\xa0\xdd\x73\xb5\x93\x03\xfe\xaf\x49\x0e\xb2\x74\x80\xa0\x7f\x3a\xf2\x08\x41\x80\xf2\x95\xd3\x0e\xba\x25\xca\xf3\x1b\xa0\x3c\xe8\x0a\x14\xce\xaf\x56\xf0\xa7\xf7\xce\x2c\x7f\x25\x6d\x54\xce\x01\x35\x67\xa0\x53\xf5\x2d\xef\xe7\x6b\xea\x44\x54\x5f\xf7\x66\x1f\x33\x0a\x2f\xeb\x75\x28\x05\x5a\x44\x5e\x50\x9f\x5e\x74\x2c\x2e\xed\x6d\x6f\x4e\xd9\x59\x44\x65\xb4\x28\xd4\x0f\xf4\x07\x8d\x16\x7f\x2f\x1e\x00\xaa\x59\xa4\x54\x4c\xbc\xc1\xb7\xcf\x31\x6b\x28\xcc\xd4\x26\x13\xfc\x3c\xf2\x98\x93\x1e\x67\x7a\xa8\xcb\x0f\x94\x8d\xfb\xcd\x3a\x18\x50\xb4\x4f\xd4\x62\x59\x8d\x83\x23\x04\xcd\x99\xe9\xa7\xe8\xeb\xe8\x41\x56\xa3\x07\xc0\xf4\x87\xbe\x39\xae\x49\x15\xa8\x65\x7a\xb4\x53\xb4\xdd\x34\x8d\x19\xfc\x4a\x53\x71\xa8\x71\xaa\x2f\x7a\x0a\x73\x12\xcf\xa1\x1b\x3b\x64\x7d\x0a\xa9\x5b\xd1\x14\xea\x68\x8a\x25\x1c\x9e\x53\x03\xd9\xf7\xa4\xba\xde\x19\x91\x0a\x18\x71\x82\x79\xf8\xe2\x19\xf3\xb8\x70\xe4\xc7\x11\x91\x1b\x10\xa0\xa6\x5e\xe4\xdf\x41\xca\xd3\xb3\xfa\xe7\x93\xf2\x36\xbc\x79\xda\x66\x99\xae\x25\xb9\x5f\x93\xa7\xbc\xae\x80\x7a\xdd\x03\xee\x13\xf9\x64\x5a\x5b\x41\xef\xb8\x63\x80\xdb\x1d\xda\x83\xeb\x66\x9f\x03\x84\xb7\x34\xdb\xde\xbe\xd9\xd7\x66\x2d\xb6\x6a\x98\x5d\xa3\xe1\x57\x76\xd5\xb6\x6a\x99\x5e\xa3\xe5\x77\x8e\x81\xd9\xaa\x69\xde\xdb\x1c\x4a\xda\x47\xa6\x42\x72\x41\x1e\x8c\x38\x93\x19\x65\xeb\x3c\x15\x34\x2b\x48\x91\xb1\x22\xd7\x4c\xef\xfd\x44\x68\xd4\x52\xa0\x69\xcd\x46\xa6\xd7\xf2\x47\x51\x0b\x1b\x16\xa3\x13\x6f\x7c\xaf\xf8\x98\xe4\x05\xc2\x2d\x91\xc6\xe1\x2d\x4d\x6f\x22\xf8\xcc\xc5\x57\xa8\x55\xd3\x82\x30\xbc\x3d\xba\x22\xea\x98\xb5\x04\x6a\x34\x01\x3c\xc6\xab\x6c\x5e\x62\x7d\x56\x1d\xd7\x0a\xf8\x21\x7a\x82\x90\xb1\xfe\xab\xdc\x35\xa3\xd3\x4e\x8b\x84\xe9\x9b\x71\x49\x27\x97\x16\xc6\xcf\xa6\x19\x3b\x23\xb1\x91\xd1\x0a\x94\x60\x51\xe2\x09\x65\xe3\xb6\x01\x5c\xd1\x8f\xf6\x8b\x53\x62\x30\xc5\xa9\x2c\x26\xed\x3d\x49\x6b\x9b\x3b\x02\x5c\x94\x78\xa7\x74\x4b\x21\xe3\xc0\xdc\xcb\x29\x94\x10\x80\xa7\x99\xb9\x09\x09\x82\x17\xad\xeb\x89\x4e\x62\x77\xc1\x2b\x7a\xaa\xae\x6a\xe3\xc4\xb8\x5d\xb9\x5e\x3b\xa0\x86\x81\x16\xaa\x16\xc1\xef\xb1\x6a\x52\xb7\xf8\xb4\x90\x2d\x8d\xfa\xdd\xd5\x46\x94\x15\xd2\xd6\xbd\x5e\x45\x2e\xe8\x19\x65\x59\x1e\x7a\x3d\x6e\x7d\x18\xba\x79\x8f\x5e\xb9\xad\xcd\xab\xf7\x5c\x1d\x2c\xec\x26\xaa\xce\x7f\x1b\xed\x86\x0e\x74\xa9\xc3\x3b\x2b\x8e\x58\xef\x9f\xd7\xd9\xac\x61\xc8\x55\xe5\x94\x35\x05\xa7\x15\xd5\xbd\x25\x28\xb4\x8b\xc1\x57\xd9\xbc\x92\xe4\xb3\x42\xb6\x25\x7b\x0d\xd7\x6e\x59\xbd\x9c\x94\x94\xf5\x8d\x43\x2a\x69\x3d\x94\x8c\x48\xe2\x5d\x93\xc2\x02\x30\xbd\x83\x49\xca\x06\x72\xe8\x94\x95\x95\x82\xb0\xd3\x89\x49\x8a\xd0\x1e\x71\x71\x44\xaa\x7e\xb4\xdf\x24\x6c\xb3\xd4\x24\x4c\x52\xf8\x96\x8e\x24\x49\x59\x6a\x97\xe1\x95\xab\x40\xd8\xd8\x76\x6b\x2d\xb3\xc2\x3a\xb6\x53\x8d\x98\xe8\xcb\x16\xe9\xfb\xcd\x9e\x0d\x1d\x2a\x75\x2b\xc1\x6a\x04\xe5\x74\x7e\x79\x65\x24\xd2\x26\x76\x93\xd9\x5c\x5e\x76\x8d\xc2\xf4\xde\x9e\x72\x59\x3d\x6c\xf3\x5a\x1f\xfb\x12\x72\xdf\x34\x62\xfc\xab\xf9\x1b\xe4\x20\xd8\x10\xa5\x67\x44\x2c\xe2\x64\x59\x0a\xcf\x0c\x58\x1a\x13\x5a\x71\xd5\xfb\xc5\x0d\xf4\x61\x3b\x72\x12\x00\xf3\x93\xbb\xa4\x89\x48\xcc\xec\x0e\xa0\xe1\x51\xda\x82\xfe\x74\x12\xef\x5a\xaf\xc7\x58\x26\x89\x62\x81\x28\x5b\x90\x4a\x36\x55\x3b\xc3\xd3\x9e\x3b\xf9\x91\x77\x3a\xbc\x22\xe1\x24\xe6\xfe\xee\x02\xb5\x80\x48\xe8\xe0\x97\xcf\x96\xb2\xec\x7d\xb6\x24\xe5\x2f\xc3\x54\x0c\xc8\x50\x3b\x97\xa4\x8a\x50\xf1\xd2\x29\xdb\xea\x16\x1d\xd5\xf3\xed\xd0\x1a\x7d\xbb\xf5\x39\x23\xf2\x9e\x7c\x6f\xd5\x7c\x96\x2c\x05\x38\xbf\x24\xe0\x63\x05\xcc\x24\x77\xe5\x6a\xb5\x2b\x7b\x27\x63\x3e\xb3\xdc\x42\xe8\x38\xed\xb0\xe6\x47\x8d\x24\x7d\xd2\x73\x8c\x28\x66\xa9\x70\x7e\xd3\x8c\x93\xdd\x7e\xd7\xba\x2f\xd1\x41\x07\x99\x3d\x28\xd9\x8e\xf4\x4a\xbb\xa1\x00\x28\xc0\xfc\x5f\x8f\xa3\xd3\xd1\x7f\x9d\xcf\x2f\x67\x12\x11\x26\x5b\xae\x0b\x9c\x19\x6f\x07\xf8\xe9\xe5\x58\x6c\xba\xca\x0d\x0e\x82\x4f\xef\x9c\x89\x24\xcb\xca\x84\xcf\xb9\xf9\x1f\x48\x2c\x86\x49\xfa\x64\x49\x9a\x3c\x17\x16\x49\xd9\x6e\xd4\xd7\x9c\x2c\x2d\xba\x99\xe2\x9c\x4d\x84\x84\xfb\x44\x36\x13\xa3\xc9\x44\x0c\xa1\x85\x7e\x0d\x4f\x92\xd5\xaa\x96\xe4\xd8\xb7\xdd\x03\x30\xd9\x49\xd3\xd4\xf9\xa8\xda\xaf\x9e\x4e\x48\xae\xef\x95\xe2\x44\x15\xf0\x3e\xb7\x04\xc5\x8c\x16\x05\x65\x67\x6d\x57\xca\xf7\x05\x0b\x3b\xef\x17\x8a\xd8\x56\xf3\xfe\xe5\x35\x37\xac\x4b\x64\xbc\xe2\xf5\xa2\xe8\x27\x78\x00\x12\x49\x1e\x99\x28\xe5\x91\x87\x98\xfd\x08\x29\x72\x85\x7e\xf1\x8c\xfb\xfe\xce\x29\x8b\x11\x8e\x90\x15\x45\x7e\x79\xa5\x67\xec\x57\x34\xf5\xa2\x09\x17\xb6\x4b\xf4\xd9\x52\x94\xe8\x97\x2d\xa1\xc8\x94\x94\x9b\xd3\xdf\x48\x57\x57\xbf\x7f\x53\xd1\xc6\xf5\xa4\x33\x36\xab\x2c\x90\x1f\x9c\x3c\x38\xc3\xa8\x8b\x92\xd0\x9c\x7b\xcb\x39\x6a\xb6\xf9\x0a\xab\xce\x2e\x94\xfa\x04\xa6\xc3\x6d\xd3\xf6\xdc\x1b\x40\xb7\x10\xf8\xd1\x2d\xc5\x0f\x59\x31\x95\xd9\xd9\x11\x7b\x0b\x56\xc4\x10\xcd\x3b\xb8\x31\x5f\x37\x6f\xeb\x11\xc2\xea\x30\xaf\x63\x98\x79\x77\x9c\x54\x60\xe7\x6b\xd5\x05\x6a\x7c\x3a\x54\xb9\x11\xe0\x2d\x57\xea\xf1\x58\x40\x28\x1a\x4f\xbf\xb4\x1e\x46\x37\x17\xd1\x22\xca\x58\x94\x9d\x16\x52\x64\x23\x19\x81\xa8\x80\xa3\x51\xc6\xe0\x82\xe0\xd4\x7a\xde\x82\x30\xfc\xe3\x48\x7b\x72\xcb\x2f\x7b\xc8\x06\x83\x0a\x14\x06\x6a\x4c\xad\x2e\x45\x1b\xa7\x9f\x2a\x89\xbc\x5a\x3d\xce\xac\x74\xaf\x65\x7d\x17\x7b\x4d\x10\xa3\x0a\x41\x49\x89\x8d\x1a\x3c\x59\x36\x26\xa5\x46\x4b\x67\x73\xed\xf1\x92\x8c\x55\x61\x53\x2f\x1e\x90\x61\x2b\x79\x21\x89\xbe\x01\x10\x70\xfe\x1a\xed\xbd\x22\x14\x59\x9e\xf3\x73\x28\xe3\x2b\xed\xc5\xa1\x75\x71\x5d\x65\x1b\xd3\x03\x3a\x89\xdd\x9b\x16\xd2\x00\xb8\xaa\xb4\x87\x22\x8d\x4b\x91\x20\xbf\x2e\xa8\x20\x45\x04\x2b\x1f\x65\x36\x44\x6b\x0f\x25\xa5\x2f\x03\x4c\xbc\xfb\x0c\x1c\xfa\xa3\x5d\x03\xf9\x1e\x9f\x4c\xb6\x00\x62\x99\x58\x4f\x4d\x5b\x88\xe1\x76\x03\x6c\x63\xe2\xd5\xba\x59\xee\x47\xa1\x56\x31\x08\x76\x7b\x54\x8b\xa4\x04\x6c\x0f\x98\x75\x3f\x97\xb9\x81\x34\xdc\xa0\x00\xb4\xb7\xd2\x4f\xd4\x00\xd3\x6a\x86\xf5\xcf\x0a\x9b\x2d\xa0\x61\xf4\xbf\x37\x07\x48\x9b\xe5\xc9\xbf\x30\x3c\xb4\xa2\xfd\xe6\xe0\x68\xbf\xb6\xff\x17\x06\x88\x55\xe3\x1b\x02\x65\x69\xad\x8e\xa8\x50\x7f\x21\x07\x94\xea\xc6\xb0\xdb\x78\xe3\xf8\xaf\x06\x37\xb8\x9d\xbd\x3e\x28\xd6\xc4\x61\xf9\x97\x02\x80\xbc\xc6\xbc\x37\xdf\x7b\x7a\x81\x6a\x64\x1e\x66\xcd\xb2\x91\xe0\x0d\xb1\xf4\xd6\x5e\xa4\x8c\x9a\x69\x69\x62\xb3\xa8\xb4\xf5\x6d\x98\x42\xb7\xb8\x46\x84\x9b\x1a\xd1\x16\xd5\x4e\xad\xa5\x29\x8f\x76\xd3\x54\x76\x3a\xfe\x90\x75\x4a\x7c\x85\xfe\xa5\xd2\x14\xad\x56\x5a\x85\xdd\xe9\x80\xd2\x39\x4d\x05\x38\x08\xde\xa0\xd0\xde\xea\x06\x73\x20\xc1\x25\xc8\x1a\x3f\x77\x6e\x95\xae\x58\x65\x57\xa8\x7d\x8d\x1f\x34\xd4\x70\x9f\xd0\x57\x98\x1e\xc4\x1d\x5e\x0b\xcb\x3b\xbd\x0d\x16\xd9\xf9\xd6\xed\x89\xec\x7c\xfd\x5d\x6a\x00\xf3\xfb\x13\x5c\xb5\xb5\x94\x53\x43\xf6\xe6\x7c\x1e\x27\x98\xa5\x24\x7c\x91\xe8\x2e\x45\xe5\x1e\xea\x59\xf1\xba\xd7\xeb\xb1\x70\x78\xb5\x08\x9d\xd2\x45\x27\xad\x07\xf0\x83\x5c\x3b\xb6\xeb\xc8\x2d\x81\xb6\xba\xb4\x36\x40\xac\x1e\xb9\x54\xba\x4b\x4f\xa3\x9d\x85\x54\x66\x4c\x9e\x61\x7f\x60\xd2\x3b\x39\x51\xad\x1e\x41\xe8\x43\xca\x19\x5c\x88\xd4\x24\x40\x2d\x5e\xa3\x3d\xc5\xa4\xf6\x18\x3f\x87\xf0\xfd\x46\xbd\xf3\xe8\x4b\x45\x50\xdb\x1a\x69\x75\xf6\xef\xef\x9f\x9b\xa8\xbe\xd7\x6e\xd1\x6b\xdd\xa2\x79\xc6\x98\xa1\x72\xbb\xc5\x74\xdb\xa3\x83\x32\x7d\xb2\x64\x8a\x52\x55\x80\x26\x58\x91\x9b\xa4\x4c\x30\xbb\xc9\x85\x99\xc8\xce\xdb\x1e\x0d\x43\x6c\x29\xb8\x26\x6e\xd5\x56\x39\x9d\x79\x96\xf2\xd5\x2a\x98\x01\x1e\x14\x38\x1f\x06\x6d\xb6\xde\x88\xe3\x2d\x66\x4e\xc2\x99\x5b\x6d\xbe\xa2\xd5\x3b\xdc\xf7\x89\x4d\x0f\x01\x2a\x26\x30\xe8\x9b\x49\x9c\xf4\x85\x56\xce\x27\x78\x20\x30\x1b\x96\x71\x96\xe0\x85\x55\xcc\x43\xa9\x22\x2e\x2c\x7a\x86\x77\x5d\xbd\x5e\x6f\x81\x21\xba\x25\x4d\xd2\x27\x12\xce\xed\x65\xaf\xd7\xcb\x61\xab\xc5\x14\x6b\xcc\x35\x76\x56\xb4\xfe\x20\xa2\x81\x05\x9f\xf2\x96\xb4\x4c\xec\x3d\xa3\x0e\xd0\x5a\xbb\x62\xd4\x71\x52\x49\xe9\xc0\x12\x32\xa6\x90\x5c\x56\x8a\x52\x9b\x6b\xbe\xbd\x42\x49\xb9\xee\xc1\x73\x8d\x17\xd9\xde\x52\x6b\xe3\x96\xab\xab\xa5\xaf\xa5\x70\xdc\xe6\x52\x65\x1b\xfd\xff\x56\x46\x36\x6b\xcc\xb4\x70\xf6\x49\x98\xce\x22\x0d\x62\xe4\x59\xc6\xd3\xb8\x73\xfe\x08\xba\x1f\x6c\xd8\xd0\x42\xab\xc7\xda\xed\x6a\x2a\x0b\x98\xc0\xc0\xe6\x99\x9d\x57\xaf\x32\x35\xd1\xbf\x9a\x76\x39\x16\xdc\x4b\x6d\xb9\x22\xab\xfb\x3a\x5d\x74\x96\x7d\x20\x56\x81\xdf\x9b\x65\xf3\xb8\x7a\x2d\xd3\xba\xef\x68\x70\x2f\x9e\xac\x56\xcd\x20\xe8\xb6\x4b\xea\x87\x6e\xd3\x61\x1a\xac\xd5\x0f\x9d\x11\xe1\xec\x77\xd4\x47\x5a\x95\x64\xe4\x42\xc6\x10\x7b\xd0\x5c\x33\x43\x3c\xfe\xba\xce\xc8\xd6\x5e\x40\xfc\xcf\xe7\xe6\x22\xe9\x65\xc6\xce\x16\xd9\x19\x89\x83\x41\x96\x49\x78\x9b\x5f\x2a\xb6\xa3\xda\x48\xf5\x58\xd9\x76\x02\x4a\x0a\xc0\x73\x41\x67\x99\xb8\x7c\xd9\x06\x5e\x6f\x79\x74\x95\xde\x3e\x4a\x70\x28\x7a\xf6\xf3\xd8\xb3\x64\xc5\x81\xe2\x42\xe5\xb9\x77\x33\xd8\x97\xe1\x55\x8e\x35\xbf\xc7\x95\x4c\xa6\x92\x41\xd0\xb4\x89\xea\xa8\x55\x89\xa0\xf2\x4a\x70\x2b\x92\x68\x04\x33\x93\x32\x1f\x00\x73\xf3\xbb\xda\xec\x81\xa6\xd6\x97\x8a\x03\x6f\x16\x3b\xeb\xe2\xbc\x5b\xb0\xad\x56\x03\x44\x58\x77\x51\xa0\xa1\xd6\xbf\x16\x44\x6a\xf8\xb9\xb0\x56\x27\x5c\xb1\x2f\xad\x5a\xd8\xa6\x55\x97\x9b\x49\x9a\x39\x59\xce\x5c\xd8\xdb\xd2\xd5\x1c\x8c\x85\x8f\xce\x77\xf6\xc9\x85\x2d\x69\x36\x9d\xf5\x50\x65\x3e\x53\x6f\x50\x3d\x73\x51\x63\x02\xc6\xc1\x08\x62\x64\x37\xeb\x2c\xa3\x0c\x41\x08\xf6\x44\xc7\x7f\x0a\xa2\x07\x6f\x54\x82\xb6\xc5\xc5\x5c\xb3\x33\x4a\xec\x2c\xce\x9d\x65\xb9\xd1\x26\x93\xcd\x76\x4d\x0a\xca\x3f\x53\x39\x7d\x6e\x2c\xda\xa4\x0e\xad\xc9\x9c\xab\x3d\x9a\xee\x7f\x43\xbf\x15\xce\x79\x75\x6c\x1e\x9a\xac\xa3\x2f\xd0\x95\x18\xd0\x21\x26\x5e\x28\x6e\x96\x7c\x43\xf7\xf6\x9c\x33\x19\x56\x33\xd4\x32\x9e\x94\x82\x97\x2c\xeb\x07\x47\xdd\xe0\x78\xba\xff\x0d\xff\xb6\xf2\xac\x1d\xd3\xab\x07\xa7\xba\x64\x03\x1e\x8e\x8f\x26\xdf\x70\x35\x3e\x5f\xe7\x4d\x3b\x9d\x5d\x50\x91\xab\x15\xa6\x39\x25\xac\x26\xff\x6f\x5a\x7f\x75\xe8\xf4\x35\x37\x59\xbb\x80\x4c\x3c\xa6\x99\x60\x86\x45\x52\xd9\x1a\x60\x6b\x94\xff\x23\xb9\x2c\xfa\x24\x7d\x42\x2a\x61\x19\x82\xab\x26\x58\x3a\x6d\x94\xbe\xb2\x1f\x90\xe1\x8e\x63\xb7\x3a\x9d\x58\x5b\x4c\xba\x4b\x56\x87\x6f\x87\x22\x1d\xf4\x7a\x3d\x01\x6e\x0e\x6c\xea\xb0\xdf\x7c\x05\xe9\xb5\x65\xab\x54\xe5\x2d\x61\xf4\xc7\x19\x8b\xc4\x77\xcc\xf8\x0d\x73\xd8\x02\x4e\x19\xdd\x4b\x0e\x31\x60\x43\x13\x82\xbc\x17\xac\xbe\x39\x95\x80\x1d\x93\xd8\x01\xbb\x6f\x9b\xe9\x1e\xec\xa6\x29\x2b\xc1\xa2\x80\x26\xcd\xeb\x04\xab\xd6\xa5\xa0\x88\xc1\xe4\x82\x16\xb2\xcd\x38\xb1\x1d\xa3\x2a\xbf\xd2\x7c\x46\x14\x47\xba\x01\x83\xc0\xec\x10\x83\x67\x3c\x9f\x46\x35\x62\xe9\xd9\x13\x4d\xb1\xda\x0d\x1b\xb0\xca\x69\x59\x6b\x1f\x60\xc1\x19\xbe\x42\x55\x54\x30\x29\xb1\x6f\xa2\xf0\xbd\x66\x4b\xd7\x59\x85\x56\xcd\xb5\x5a\x52\x36\x9a\xdf\x3d\xd0\xe6\x98\x75\xf8\x54\x5d\x90\xc3\xe6\x0d\xec\x61\x9d\x25\x20\x75\x96\xa0\x1f\xa2\x23\x49\x0e\x49\xbd\x84\x79\x4f\xb2\xf6\x50\x5d\xad\x06\xc3\x12\xaf\x3b\xb7\x3d\xbf\x1b\xf1\x3e\xa6\x35\xf2\xaa\x83\xfe\xe9\x12\xe0\x59\x44\x6d\x15\xd3\x84\x89\x23\xa7\x56\xed\xa9\xbd\xae\x8a\x51\x9e\xb1\x33\xa4\xf6\x64\x89\x5b\xce\x04\x87\xcb\x4b\x43\x6f\xf5\xdd\x99\xf9\xa8\xc2\xf3\x25\xb8\xfe\xf0\x17\x42\x42\xf8\x47\x88\x7d\xcf\xbb\x34\x74\xa1\xaf\xe5\xa6\xef\xc3\x8b\x0a\xd5\x90\xe1\x0b\xfc\xfc\x4a\x4f\x9d\x60\x7d\xec\x07\xd9\x56\xaf\x9f\x60\x75\x3c\x04\x59\x5a\x53\x9b\x60\x05\xcc\x20\x43\xdf\x14\x81\x44\xb0\x13\xba\x27\xad\x87\x0b\xab\x82\x85\x39\x33\x1c\xfd\x36\x5a\xaf\xd8\xe1\xba\xbd\x66\x0b\x24\x8d\xb5\xb6\x4b\xdd\x38\x9c\x07\x64\xe8\xbc\x3c\x80\xd8\x75\x65\xbc\xc3\xba\x25\xcf\x3f\xc0\xd7\xfb\xc0\x72\x33\x78\x39\xe2\xb3\x19\x67\xfd\xe5\xa9\xc8\xd8\xb8\xbf\xcc\xce\x8b\x3e\x7a\xfa\xf3\x7b\xa4\xa4\xc0\x62\x91\xf7\xd1\x33\xf8\x0b\x4f\x5a\xd5\x8f\x6e\x36\xa7\xdd\xb3\x4c\x92\xf3\xec\x12\xd9\xdc\xe8\xe9\xdb\xa3\xe8\x8f\x26\x11\xff\xfd\x5c\xf6\xd1\x9f\x7e\x3e\x46\xf8\xc3\xe2\x94\x08\x46\x24\x29\xfa\xe8\x47\xf7\x1b\x61\xc6\x67\xd9\xb8\x8f\x5e\xab\x3f\x08\x73\x3a\x1e\xf5\xd1\x9b\xa3\xe7\xcf\x10\x96\x44\x88\x4c\xc1\xb3\x8f\x8e\xed\x4f\x84\x3f\xaa\x51\xf7\xd1\x9f\x41\xfb\x5a\xda\xa1\x2d\xb3\xd1\x88\x14\x05\x17\x74\xdc\x47\x4f\xcd\xef\xa3\xe7\x08\x8f\x04\x95\x74\x94\xa9\xc1\x9b\x5f\x48\x61\x53\x36\x22\x10\x2f\x19\x3d\x77\xbf\x11\x1e\x93\x42\x52\x06\x4b\xc1\xb2\x19\xe9\xa3\xe7\x55\x42\xa4\xad\x67\xc7\xfa\xf1\xad\xc9\xd6\x1f\x26\x0b\x34\x34\x6a\x22\x11\x04\x5e\x2b\x10\x36\xa0\xe9\x23\x07\x0e\x44\xd9\x99\x20\x45\xe1\x41\xed\x48\xa7\x54\x20\x03\xf4\x52\x7b\x33\x1b\x8f\x55\x4e\x1f\x01\xe5\x8e\xbe\xa3\x6c\x1c\x3d\xd5\x69\x5e\x29\x85\x2d\x41\x91\xb7\x10\x41\x6b\x46\x8a\x69\x1f\xbd\x22\xe0\x33\x5a\x7d\x78\x5d\xaa\xd4\xaa\x3f\x3d\x17\xe3\xc6\x85\xf1\x31\xe9\xaa\x14\xa4\x66\x32\x26\x91\x97\xde\x9b\x11\x99\xd9\xf4\x57\xea\x37\xbc\x54\xee\xea\x50\xac\x44\x90\x31\x64\xca\xe8\x5d\x95\x80\xe7\x19\xf0\x13\x7d\xf4\x56\xff\x40\xb8\x2a\xde\x47\x7e\x49\xab\xde\xab\x54\xf7\x56\xe3\x67\x07\x64\x32\xec\x98\x4c\xae\x1d\x96\xcd\xd5\x23\x2b\xf8\x42\x8c\x88\x9e\xdb\x7b\xf8\x6d\xaa\x69\x67\xe5\x7d\xf4\x03\xc9\x72\x39\x8d\xde\xc3\x27\xc2\x32\x3b\x2b\xfa\xe8\x38\x3b\x2b\x10\x46\x92\x88\x19\xac\x3b\x3b\xf3\xc0\x76\x5c\xa5\x56\xd0\x3b\xcf\x04\x83\xf9\xfd\xac\x7f\x20\x75\xd6\x66\x62\x34\xed\x2f\x2b\xd4\xfb\x3e\xa3\xb9\x7e\x88\x4e\x99\xe2\xac\xa6\xb0\xee\x91\x99\x40\x04\x29\x98\x32\x49\xce\x34\x43\x56\xf4\x21\x04\xa6\xfd\x32\x70\xae\xea\x2a\x20\xd3\x7a\x7d\xd3\x2d\x7a\x0f\x7f\xed\xf7\xdc\x50\x07\x9b\x1e\x3d\x1d\x09\xae\x10\x48\x03\xc8\x02\x47\x0d\x5b\x21\xd2\x52\xd1\xf6\x65\x56\xa8\x4d\x98\xab\xfd\x10\x49\x1e\xbd\x26\xe7\xa4\x90\xb0\x3f\x46\x7d\xa4\xbf\x54\xba\x2e\x81\x4a\x9c\xe5\xf3\x69\x66\xaa\x3d\x55\x39\x7f\xb5\x85\xff\xaa\xbe\x9e\xa2\x12\x8f\x17\x7a\x32\xa6\xd4\x4b\xce\xce\x4c\x2b\xc5\x94\x0b\xe9\xb5\xff\xde\x7c\xab\xbc\x5c\x17\x43\x25\x36\x4f\x81\x6d\x27\xc5\x88\xb0\x31\x80\x54\x57\x7a\x4e\x5c\x4a\x69\x97\x58\x17\xfd\x89\x4d\x61\xa5\x2f\x55\x7b\x7a\xd1\x2f\x6d\xad\x1f\xaa\x1c\x57\x0c\x95\x25\x5e\x50\xb5\x7a\x44\x0f\x18\x3d\x33\xbf\xc0\x07\x7b\x0e\xd8\xda\x3d\x55\x08\xf1\xbd\xf9\x8a\x4e\x2f\xa3\x25\x95\x64\x56\x22\x3c\xcb\x2e\xa4\xcc\xfb\xe8\x55\x76\x11\x1d\x1f\xbf\x0c\xb7\x97\x0e\x8d\xab\xd0\x5e\xfd\xb5\x75\x4a\x7d\x75\xcb\x99\x12\x9d\xfa\xcb\x6c\x3e\xef\x2f\xd1\x88\xe7\x79\x36\x2f\xe8\x69\x4e\xba\x8c\x4b\x08\x03\xd1\x5f\x9a\x54\xa2\x88\xad\xfe\x15\x7d\x97\x31\x06\x9a\x2c\x72\x31\x57\x64\x1b\xbd\x80\xbf\x2e\x5d\x37\xae\xb9\x87\x4c\x5c\xaa\x9a\xde\xa7\x1a\x30\x65\x6a\xb8\x94\x21\x5c\x7c\xa0\xf3\x13\xc9\x4f\x46\x9c\x49\xc5\xd2\xa2\xf7\x1f\xe8\x5c\x41\xe7\x99\x4e\x40\x58\xf2\xb3\xb3\x9c\x9c\xcc\x08\x5b\xf4\xd1\x31\x7c\x44\xaf\x08\x5b\x04\x94\x38\xef\x2f\x91\xc6\xbe\xee\x69\x26\x50\x5f\xbf\x2b\x5e\x6a\x48\x1c\xc3\xf3\x57\xf3\x2c\xb8\xbf\x1c\x69\xe6\x19\x3d\x83\xbf\x6a\x38\x2c\x3b\x83\xd1\xa9\x41\xd9\xdf\xa8\x2c\xcb\x12\xa3\x6c\x21\xa7\xdd\x19\x91\x53\x3e\x46\xfd\x25\x52\xe4\x4f\x6d\xd1\x9c\x16\xd2\x7e\xc3\x43\x7a\xd4\x5f\x2a\x82\xd5\x47\xc7\x53\x12\xa9\xd4\x48\xf5\x6d\xac\x7d\x68\x11\x2d\x0a\x32\x8e\x32\xb0\xba\x7a\xfa\xec\xa5\xa2\x67\x47\x63\xc2\x24\x95\x97\x3d\xf5\xa1\x16\x2b\x9a\x50\x92\x8f\xf5\x9b\x6c\x12\x49\xfe\x81\xa8\x5f\xfa\xd9\xb6\xe6\xb4\xc6\x3d\x84\x05\xcf\xb7\xea\xe5\x1d\xcf\xc9\x4b\xca\x3e\xf4\xb6\x6f\xda\x91\xc3\xad\xe6\x60\x88\x9f\x9b\x86\xf9\xde\xba\x3b\x05\xdd\xcd\x4b\x56\xea\x23\x87\xca\x4b\x9b\x6c\x28\x47\xb5\x96\x3a\x50\x97\xd9\x30\xa4\x88\xf4\xb7\xee\xd2\x1e\x59\x55\x2e\x7c\xda\x4c\xbd\xbe\x7a\x0b\x76\xe1\xfc\x44\x75\x24\x82\xd4\x35\x58\x04\x71\x28\xfa\x08\xfe\x20\x3c\xe6\xa3\x0f\xea\x6c\xd7\x7f\x11\x3e\x13\xf3\x51\x1f\xa9\xff\x11\x06\x17\xe9\x48\xfd\x8f\x70\x31\x12\x74\x2e\xfb\x48\xff\x05\x90\x4f\xfa\xea\x58\x99\x20\x2c\x47\xf3\x3e\x92\xa3\x39\xc2\xb0\x9d\xa5\xcc\x15\x8c\x7c\xa8\xfc\x48\xd9\xd8\x1b\x82\x46\x38\x38\x1b\x9f\xc1\xf8\x1b\x07\x9a\x49\x2f\x2d\xa9\xd5\x8d\x01\x91\xb2\x25\x14\xb1\xe5\x63\xe2\x48\xad\x6a\x4d\xf2\xc8\x9d\x88\xba\x67\x68\x27\x32\xab\x02\x49\x4b\x3f\x03\x68\x0d\x00\x94\xc2\xae\x05\xaa\xab\x69\x48\x7f\x39\x57\x87\x18\xf8\x55\x2a\xfa\xcb\x53\x3e\xbe\xec\xa3\xb7\x55\x52\x94\x09\x12\xbd\xfc\x7d\x65\x11\x57\xf4\xa2\xa3\x49\x94\xb1\xcb\x48\x09\xdb\x53\x12\x4d\x78\x9e\xf3\x73\x75\x04\x7a\x2d\x45\xe0\x2e\x18\xf2\x4d\x1c\x5b\x0c\x1f\x47\xb6\xff\xe8\x9c\xe6\x79\x94\xcd\xe7\xf9\x65\x2f\x32\x11\x72\x0b\x8d\x85\x93\x8c\x2a\x2c\x30\x4d\x78\x3d\xcd\x05\xff\x48\xc7\x64\x1c\x09\xae\x06\xa2\x9b\xd0\xdd\x43\xbe\x61\x60\x15\xf6\x47\x10\x04\xe3\xb2\x87\xf0\x84\x73\x60\xeb\x5e\x92\x4c\xb0\x68\xc6\x05\x89\xb2\x53\xbe\x90\xfe\x68\x9b\xc8\xae\x99\x47\x0b\xc5\x0a\x1e\x01\x86\xe5\xfc\xbc\x8f\x9e\xaa\x3f\x08\xa3\x6c\x3e\xef\x66\xe7\x99\x50\x6c\xc9\xd3\xf9\x3c\xd2\xbf\xf1\x98\xb0\x4b\x75\x18\xb1\xcb\x6a\x99\x6d\xe3\xfa\xe0\xd2\xc3\xe7\x11\x94\x71\x87\x17\x83\x33\xc8\x34\xde\x18\x45\x89\x91\xc7\x9a\x1a\x6e\x48\xb7\xe7\x71\xa8\xfd\x28\x3c\x7a\x83\x2c\x73\x0e\xe3\x06\x5f\x8b\x4a\x3c\x17\x64\x44\xc6\x84\x8d\xc8\x16\xa7\xab\x1d\x9d\xab\xa3\x46\xa7\x79\x89\x60\x60\x9a\x38\xd4\xc7\x64\x53\xc3\xe1\x58\x16\x44\xa1\xec\x87\x8f\xd7\x38\x3c\x26\x3c\x1f\xab\xd5\xfe\x1e\xfe\x22\xfc\x81\x5c\xf6\xd1\x8f\xe4\xb2\x75\x8f\xe9\x42\x85\xea\xf9\x47\x72\x59\xd8\x21\xa9\xdf\x2a\xcd\x64\xeb\x51\x68\x7c\xba\xc6\x48\x90\xa6\x75\xdd\xea\xf8\x42\x7d\xf4\x47\x4d\xff\xbc\x63\x4c\xb1\x26\x6c\x9c\x89\x71\x1f\xbd\x37\xbf\x74\x87\x96\x56\xd4\x7a\xdc\xc4\x2f\xc2\x68\x1c\xe5\x38\x36\x4e\x6d\xae\xe4\x13\x35\xf2\x6b\xbe\xda\xde\x5e\x36\x68\xad\x06\x9e\x4f\x5a\x02\xde\x5b\x0f\x59\xaf\xe5\x72\x4a\x32\x58\x04\x88\x66\x61\x9d\x9a\x44\x15\x97\x1f\x19\xb9\xd0\xb2\xeb\xd1\x91\xfc\x3f\xff\xeb\x7f\x17\xaa\x0c\x5f\x00\x33\xed\x2e\x19\x81\x54\x00\x55\x30\x7b\x5e\x8a\x6c\x32\xa1\x23\xfd\xc0\x20\x73\x6d\x14\x6a\x56\xba\xd9\x5e\xf4\x3d\x17\x7a\xa3\x7b\x01\x75\xb0\x2a\x3e\x8e\xf8\x42\x44\x56\x81\x02\xe9\x3d\x84\x73\xca\x3e\x14\xfd\x65\x90\xdc\x47\xcf\xfd\x4f\x85\xd2\x8a\xc3\xe9\x4a\x2a\x73\xd8\xe1\x40\x42\xde\x99\xe1\x6a\x15\x89\xe2\xac\xe0\xf0\xba\x06\x96\xd8\x03\xd2\x20\xc6\xfb\x11\x87\x45\xdb\x12\x77\xcc\xf9\xa9\x45\x3d\x5d\x57\xa3\xce\x48\x10\x79\xf4\x5c\xad\x91\xfa\x15\x1d\x3d\x57\x13\x90\x7c\xce\x73\x7e\x76\xa9\xf8\x25\x41\x47\x05\xaa\xce\x00\x94\x8d\xf2\xa2\x6b\xc2\x4a\x28\x4e\x4a\x9f\x03\xb0\x80\x23\xce\x18\x19\xc9\x2e\x03\x8d\x4d\x85\x3a\xd9\x65\x34\xcd\x3e\x2a\xaa\x3b\x27\x4c\x6d\x7c\x4a\x0a\x1c\x9d\x2e\xa4\x5d\x5e\x5a\xb0\xcf\xa5\xa6\x83\x86\x82\xcf\xa2\xf3\x29\x01\xee\x44\x9f\x2b\xb6\xc3\x5e\xf4\x42\x3f\x1b\x81\x1c\x20\xfd\x1f\x88\x76\x7d\xf3\x91\x92\x73\xbd\x98\x8b\x82\x4c\x16\xb9\x47\xd1\xdf\xa9\x05\x05\xba\x1f\x2c\x15\xb6\xe8\xe7\xb5\xa9\x09\x26\x9c\x0e\x5d\xa0\xdb\x6e\x8a\x7f\x51\x18\x51\x9d\x4a\x05\x91\x6a\x45\xf5\xf0\xb4\x0f\x2e\x99\x5f\xaa\x64\x35\x2c\x7b\xc0\x40\x13\xbd\x08\xc0\x33\x23\x19\x33\x07\x57\x35\x60\x38\x99\x8a\x29\x3f\xb7\xd0\x83\x33\x51\xf2\x88\x7c\x24\xe2\xd2\xc1\x90\xb2\xe8\x52\xf5\x3f\xca\x17\x6a\x67\xf4\xa2\x9f\xd5\x71\x39\xe2\xb3\x19\x61\xe3\x68\x34\xcd\xd8\x99\x42\xaf\xcb\x35\x63\xf4\x46\xa4\x8e\x99\x48\x31\xf9\x5a\x48\x61\x67\x11\xc4\x8b\x52\x3b\xc5\x55\x2c\xe0\xf9\xcc\x62\x5e\x48\x41\xb2\x19\x94\x1e\xf3\x73\x66\x3e\xdd\x46\x52\x85\xaa\x99\x48\x1e\x9d\x36\x61\xbf\xfc\xe9\xdd\xcb\x3e\x1a\x8f\x7a\xb6\x56\x4f\x4d\xb6\xe7\xb8\x8b\xc2\x12\xf2\x17\x63\xaa\x08\x8e\x4b\x2e\xdd\xea\x78\xc3\x52\xb0\x6e\x83\xb0\x5a\xb5\x9c\xce\xa8\x24\xe3\xae\x3e\x33\x43\xcc\xdc\x88\x8a\x0a\x6a\xd1\x39\x67\xff\xe7\x7f\xfd\x6f\x19\x15\x84\x44\xa7\x64\x94\x2d\x0a\x02\xe9\x63\x93\x0e\xb5\x74\xd3\xaa\x77\x85\xa2\xbd\x0a\x81\x5e\xea\xbe\x23\xad\x3d\x52\xa3\x61\xbc\xeb\xf7\xe1\x0d\xa7\xda\x18\xaa\x7d\x35\x23\x05\x3e\xa0\x65\x0e\x8b\xa6\x99\xa2\x85\xc1\x28\x7b\xd1\x5f\xd4\x30\x15\xba\x70\x06\x88\xa6\x88\x32\x6c\x4f\xb3\x10\x0e\x0d\x5d\x07\x10\xf4\x36\x9c\xab\xea\x2f\x1b\x8f\x41\x4c\xd8\x76\x7b\xbc\x0e\x47\xa2\xa7\x27\xbb\xe6\x29\x57\xd7\x2d\x9a\x3f\x49\xd5\xcd\x7c\x4e\x32\x7d\x68\x9e\x12\x25\x6b\x54\x88\x99\x59\x46\xd0\x10\x69\x4d\x0d\x64\x05\x1b\x3d\xd0\x85\x7b\x22\xa6\x30\x7d\xc1\xe8\x28\x93\x76\x56\xb0\x8f\xaa\x3d\x13\x81\xf3\x2b\xa0\x11\x4a\xa4\x86\xb1\xa9\x0e\x32\xe6\xe2\x0a\x57\x08\xcd\x85\xe2\x10\x2f\x2c\x3c\x0c\x46\x7d\x0e\xea\xd4\x39\x84\x15\xfc\x3c\x9a\xf1\x31\xb9\x06\x8c\x9e\x79\xbb\x57\xb5\xa9\x4e\xb2\x2a\xa0\xb1\x7d\xf6\xa6\x40\x77\x4e\xf3\xf1\x28\x13\x6d\x70\x7b\xc3\x48\x64\x4f\x24\x3e\xa9\xed\xe6\x60\xac\x99\xe6\x05\xab\x23\x2e\x63\xe3\x07\x5c\xe8\x00\xc9\x99\xc2\x11\x39\x25\x22\x38\xf3\x32\x10\x02\x8b\x79\xa6\xce\x51\xd8\x15\xc7\x86\xcc\xd7\x29\x11\xd4\x57\x64\x98\x17\x24\x20\x4b\x74\x62\x4e\x58\xa2\x24\xff\x22\x5a\xb0\x91\xb6\x39\xa8\xd1\x23\x43\x77\xf4\x44\x6e\x4c\x5e\x6a\xd4\xfd\xb7\x45\x96\xd3\xdf\xf4\x39\xdf\x4a\xe6\xef\x80\xd4\x58\xc6\xf9\xa3\x27\x7f\x20\xe0\xe9\xe6\xfc\xa3\xea\x02\x98\xf4\xa5\x76\xed\xd8\x5f\xd2\xe2\xc5\x45\x36\x92\x8e\xb5\x67\x5c\x9a\x04\x2d\xa8\xa2\x12\xc3\xc2\x56\x05\xb5\x8d\x06\x20\x52\x66\x5c\xec\x4d\xf4\x04\xdd\x78\xdc\xf2\xf6\xfc\x06\x9f\x8e\xc7\x0a\x97\xbd\x52\x6a\x21\xa0\x9c\x3a\x53\x48\x41\x22\x79\xce\x03\xe0\x99\x95\xeb\x79\xf3\xab\xb0\x54\x09\x11\x14\x10\x32\xff\xbd\x9b\x10\xfa\x33\x25\xe7\x48\x8f\x19\x3d\x23\x42\x66\x94\x45\x3f\x1c\x1f\xbf\xb5\xa2\x19\xf0\x49\xd1\x6c\x51\xe8\xa7\x65\xa0\x31\x98\x50\x20\x26\x8e\x14\x66\x97\x44\x44\xbf\x0f\x85\xa6\x80\x60\xa0\xaa\xbf\x90\x75\xd2\x1d\x7f\xae\xa6\x8a\x96\x16\x3d\x4a\x64\x34\x15\x2d\xdb\x78\x12\xa1\x65\x85\x39\x25\x52\x9b\x07\x36\xc8\x94\xd4\x73\xd4\x7e\x07\x41\x09\x79\xbb\x1c\xc1\x2e\x87\xd3\xd6\x50\x1a\xbd\xa1\x7a\x9f\xfb\xb4\xcf\x24\x6a\xee\x57\x4b\x2b\x46\x51\x84\xa0\x55\xa3\xc4\xd6\x2c\x28\xea\x2f\x25\xb9\x90\x4a\xee\x81\xc9\xaa\x9d\xa7\xfb\x0e\x4a\x61\xc9\x79\x2e\xe9\x3c\xe4\x9c\x40\xda\xcd\x0a\x4b\x2d\xf4\xae\x6d\xd6\x56\x2b\x8a\x0c\x03\xdc\x35\x7e\x8b\x6d\xb7\xef\xda\xf8\xe2\x7a\x77\xf7\xcf\x69\x83\x54\x65\x54\xab\xda\x6e\x03\x55\xef\x7f\x73\x9e\x8d\xed\x59\xd6\x7a\xcf\xf1\x67\x73\x40\xfa\xe7\x5d\xed\xee\xc3\x4d\xca\x63\xc5\x74\x30\x3c\xe2\xf4\x57\x3f\x1d\x29\x1e\x9e\x67\x63\x50\xba\xbf\xd4\x3f\xbc\x8e\x05\x99\x71\x49\xba\xe3\x11\xf2\x47\x37\x21\x72\x34\x0d\xba\x56\x70\x53\x25\xa3\xea\x32\x08\x90\xc3\xc3\xac\x2e\xac\x1a\xea\xa3\xe3\x2a\x2d\x7a\x0b\x69\xd8\xe2\x6f\x9d\xf9\xb7\x12\x55\xa8\x3a\x03\xe5\xd6\x88\xcf\x2f\xbb\xa7\x0b\x29\x01\xc1\x0c\x00\xf5\x29\xab\xf0\x05\x90\xe4\x34\x07\x96\xa4\x58\x68\x9d\x01\x7a\xc6\xe7\x94\x8c\x23\x68\xac\x44\x18\xe4\x11\x48\xbd\x34\x69\x86\x8f\x89\x46\x39\x9d\x9f\x72\x2d\x4e\xe2\x19\x38\x59\x52\x7c\x7e\xa0\x2f\xfd\x8e\xb2\xf1\x6b\x7b\x7c\xf4\x11\x5c\x16\xb9\x6f\x84\xcd\xcd\xef\x12\xe8\x20\x19\xbf\x23\xfa\xa1\xe9\x4f\xef\x8e\x0a\x43\x1c\xc9\x38\x12\x26\x35\x52\xc9\x08\x43\x3c\x9a\xa7\x8b\x31\x25\x6c\x44\x8a\x3e\x82\xef\x28\xb3\x09\xa6\xc0\x51\x51\x2c\xd4\x3e\xd4\xb9\x14\xbe\x10\x7e\xf6\x54\x51\xa7\x3e\x7a\xf6\x34\x52\x3f\x10\x7e\x96\x67\x74\xf6\x2a\x9b\xcf\x15\xbb\xdb\x47\xf0\x19\xd9\x6f\x95\xcd\x47\x1f\xde\x7f\x20\xe7\x2f\x89\xbe\x55\x83\x84\xa8\xf8\x40\xce\xa3\x9c\xe8\xdb\x98\x17\x17\x73\xaa\x91\xdb\x16\xaa\x52\x5c\xa1\x1f\x78\x21\xfb\x48\xfd\x8f\xf0\x9f\x7e\xfe\xf1\xbd\x1d\x88\xfa\x1d\xb9\xd1\xa8\x2f\x38\x8c\x20\xf9\xa7\x77\x2f\x55\xd2\xf1\x7b\x8b\x8f\x4f\x73\x35\xc6\x3f\xfd\x7c\xec\xa1\x68\x96\x9f\x71\x41\xe5\x74\x56\x40\xd9\x3f\x6b\xab\x13\xca\xd9\xdb\xc5\x29\x98\xc8\x40\xf9\x8f\x2e\x39\x9a\x2f\x4e\xa3\x0f\xa0\x8b\x78\x49\x0b\x59\x9b\xbf\x4a\x8a\xea\x40\x78\xcd\xe5\x77\x64\xc2\x05\xb1\xf3\x7b\x0d\x2f\x84\x55\x8a\x9b\xdf\x9b\xa3\xe7\xcf\xb4\x3a\x5d\x09\x85\xfa\x97\x12\x0a\xbd\x0c\x2d\x29\xba\x4c\x2d\x42\xea\x02\xcf\x69\x31\x52\xe7\xe4\xa5\x05\x8b\x4a\x54\xb2\x9b\x4e\x55\x00\x1a\x01\x80\x82\xc2\x00\x29\xf7\xa5\xc1\xa5\x0a\x80\x98\x5a\x98\x46\x0a\xf8\x40\xd8\xe8\x12\x9e\x8e\x20\x1a\xd9\x9f\x7e\x3e\xae\xd4\x0b\x99\x4e\x8b\xfe\xf4\xfe\xcd\xeb\xe8\x67\x72\x1a\x1d\x2b\x11\x1b\xe1\x3f\x13\x71\xca\x0b\xa2\x9a\x79\xc9\xcf\xce\x60\xf3\x9b\xb4\x08\xda\xce\x75\x2a\x2a\xf1\x73\xa2\xf5\xb9\xfa\x70\xaa\x3e\x10\x36\xf7\xb5\xaf\x83\xcb\x5b\x50\x5a\xe1\x57\xd9\x05\xf4\x74\x7c\xfc\x12\xee\x6e\xe8\x6c\x31\x33\xba\x72\xb8\xc5\x79\x4f\x74\x28\x2a\x35\x52\x1b\x3e\x17\x2a\xbc\xb4\x4a\x71\x04\x9f\x91\x55\x92\x23\xac\xb6\xbe\xd3\x9d\xbb\xbb\x0a\xb1\xc8\x89\xd9\x8b\x5e\x81\x0d\x83\x6e\xe9\xb9\x2c\xb1\xa6\xda\xfd\xe5\x78\xa4\x35\xcf\x45\x7f\xa9\x18\x25\xd0\xc6\xe4\x72\xaa\x6f\xa0\xfb\x4b\x64\xef\x20\xbb\x05\x11\x13\x73\x91\xe4\x58\xd5\x6f\xe7\x4f\xfe\xc6\x22\xcd\x47\xaa\x46\x40\x64\xc9\x40\x23\x0b\x32\x25\x11\x13\x9d\x0e\xcd\x29\x86\x93\x44\xba\xfd\x48\x9f\x03\xa4\x00\x66\x93\x45\xdc\xb8\xae\x9d\x67\x67\x04\x58\x5c\x10\x03\x6c\x99\x0c\xb8\x9b\xcb\xe8\x5c\xd1\xba\x0f\x4c\x55\x30\x28\xab\x8a\x41\x0f\x4a\x5c\x9b\x29\xb1\x40\x90\x6c\x34\x55\x64\xbb\xf7\x37\xf6\xed\x03\x35\xc0\x8a\x2d\xf9\xde\x1f\x98\xbe\x24\x28\xed\xb5\x7b\xeb\x5c\x18\xb7\xe3\xd5\x00\x81\x0b\xb7\x02\x47\x05\x40\x12\xab\x0a\x51\xb4\x1f\x2d\x4b\xfd\x4b\xf3\xdb\x4b\xad\x8a\x06\xc9\x46\x1d\x90\x9a\xbe\x43\x91\xb2\x1a\x14\x90\xf4\xc6\xf9\x6d\x2f\x55\x43\x55\x91\x3d\xc1\x9d\x9a\xaf\xf0\x0f\x8a\x9b\xae\x98\x6d\xe1\xdf\x65\xd5\x82\xf9\x7c\xca\x95\x73\x87\xb7\x02\xb7\xd4\xec\x9f\x3a\x32\x2d\x94\x3f\x57\x10\x73\x65\xa2\x5c\x71\x57\xe3\x10\x58\xa0\x49\x38\x25\x84\x5d\xc9\xe6\x45\xfa\x84\x9f\x65\x97\x8a\xdb\xd6\x32\x8f\x6d\x1a\x2b\xf1\x6c\x71\x36\xc5\x0a\xd6\x2d\x3c\xad\x27\x0e\xbb\xde\x55\x0f\xbd\xcf\xb7\x16\x69\x7d\xd6\x45\x8f\x0e\x66\x0a\x7a\x43\xa0\x17\x1e\x2c\x28\x93\x82\xf7\x3f\x37\x6b\xf2\x93\x03\x80\x16\x59\xad\x4c\xa2\x00\xab\x66\x23\xc8\x88\xd0\x8f\x8e\xdd\xd6\x52\x2b\x8c\xd1\xf0\x7c\x70\x73\x64\xd5\x23\x8a\xab\xd3\x7e\xab\x0d\x8f\xfa\xfc\xf5\x7b\x17\xcd\x18\x24\xc4\x62\x21\x88\x96\x96\xbf\x1d\xf1\x31\x79\x02\xa7\xf4\xb7\x0f\xe0\x77\xa4\xa7\x13\x01\x5e\x02\xbb\xc3\x05\x70\x21\x63\xae\x84\x58\x7d\x33\x6a\x15\x28\xa6\x7b\x2d\x3d\x09\xed\x2b\xa3\x12\x1d\xa8\x2c\xaa\x05\xe8\x45\x8d\x7b\x22\xcb\x21\xab\xa1\x9e\x39\xb6\x94\x81\x2a\xf9\xdb\x2c\x9a\x0a\x32\x49\xd1\xf2\xd9\x9b\xd7\xef\x7f\x7a\x79\xf2\xfc\xcd\xb3\xf7\x27\x3f\xbd\x7b\x59\x3e\x30\xcc\xff\x83\x1a\xdf\x5b\xa0\x48\x66\xe2\x8c\xc8\x14\x9d\x9c\xe6\x19\xfb\x80\x22\x41\xf2\x14\x31\xce\xe7\x84\x11\x11\x31\x2e\xc8\x84\x08\x41\x04\x7a\x12\x2c\xe1\xb7\x0f\xb2\x27\x0e\x67\x3f\x2f\xe1\xdf\x70\xd8\xb4\x21\x53\xac\x70\x97\x32\x2a\x29\xbc\x3f\x69\x77\x57\x6c\xfc\x5d\x5c\xf1\x24\xd9\xf3\xf0\x46\x8c\x57\x8e\xba\xdf\x3f\x0c\x26\xf4\xf0\xdf\xee\x3e\xd8\x2b\xee\x8a\x86\xaf\x0d\xb2\x87\xb4\x78\xa9\x07\xa0\x45\x5e\x37\xc0\x1e\xb2\x0f\x79\xdd\xb3\x0b\x68\x87\xad\x6f\x47\xeb\xed\x9c\xb6\x50\x37\xeb\x3c\x08\x45\xac\xa7\xd6\x7f\xb5\x8a\xf5\x8f\x94\xf4\x8a\x9c\x8e\x48\x4c\x7a\x79\x56\xc8\x23\x05\x8e\x37\x93\x18\x3d\x40\xc9\xde\x41\x92\x60\x56\x86\xbe\x24\xad\xc9\x20\xd8\xed\x92\x1e\x35\xe5\x25\x26\xd6\xa0\xd7\xc6\x20\x4d\x6e\xe3\x0d\x32\x04\xbc\x0d\x70\x4a\x53\xb9\x87\x1e\x04\xeb\x87\x30\x37\x89\x9a\x1e\x76\x6b\xb9\x59\x3a\x18\xe2\x42\xfd\x97\xa7\xc1\x13\x3d\xbd\xc8\x7f\x2f\x7a\x27\x24\xfb\x70\x52\x10\xc2\x12\xbc\x48\xf7\xbf\x59\x7c\x9b\x5b\x0b\xe7\xc5\xde\x9e\x5e\xd9\x51\x9a\x0f\x16\xc3\x9d\xfd\x34\x4d\x47\x01\x98\x28\xde\x4f\x0e\x59\x3c\xc2\xa8\x0b\x46\x39\xc9\x6a\x95\x69\x23\xdf\x51\xd2\x6f\x16\xe7\x78\x3f\xe9\x74\xe2\xb0\x42\x61\x2b\x24\x65\xdc\x3e\x6d\x6d\x78\x2d\x7d\xc3\x6b\x05\x79\x37\xcf\x58\xc4\x72\xc0\x86\x49\x52\x2a\xa4\xcb\x12\x7c\xad\x66\x34\xdc\x8e\xda\x9a\x8b\x09\x2e\xda\x3c\x0d\xcd\x32\x39\xed\xda\x67\xfc\xf6\x6f\x76\xba\xb5\x45\xa6\x17\x01\x72\x40\x86\xce\x0a\xf5\x55\x26\xa7\xbd\xec\x14\x9c\x47\xde\x00\x77\xb2\xd3\x22\x95\x9b\x1d\x18\x87\x91\x47\xe5\x15\xef\xfa\xdb\xa7\x39\xe2\x77\x33\xcf\x11\xbf\xf1\x44\x47\xfc\xbe\x66\x3a\xbd\xab\xa9\x4e\x6f\x31\xd7\xe9\x7d\x4c\x76\x3c\xbe\x49\xfc\xd2\xca\x84\xbe\x27\xc8\x78\x31\x22\x36\x0e\x86\x33\xd3\xde\x33\xbf\x64\x72\xb3\xf9\x8f\xc7\xf7\x31\xfb\x82\xb2\x3b\x59\xe9\x82\xb2\x9b\x2e\x74\x41\xd9\x3d\xcd\xf4\x6e\x90\x5a\x35\x74\x8b\xb9\xde\x0b\x52\xcb\xec\x6e\x96\x55\x66\x37\x5e\x56\x99\xdd\xcb\xb2\xca\x8c\x3d\xbc\xd1\x54\xb1\x6c\x99\xec\x43\xed\xf8\xe5\x86\xf3\x7d\x78\x4f\x13\xbe\x1b\x3c\x56\x0d\xdd\x62\x71\xef\x03\x8f\x47\xa7\x62\x6b\x77\xd0\x9b\xe6\xaa\xda\xb9\xe1\x54\x55\xd5\xfb\x98\x29\xa1\x5b\xbb\x31\xd9\x38\x53\x42\xf3\x9b\xce\x94\xd0\xfc\x3e\x66\x9a\xff\xf6\xe8\x66\x3b\xb6\x3e\x55\xd5\xd0\x4d\xe7\xaa\xea\xde\xc7\x64\xef\x86\x67\xbc\x39\xcb\x78\x3f\x1c\xe3\x5d\x31\x8c\xb7\xe0\x17\xef\x89\x5d\x1c\xd3\x8f\x9f\x86\x5d\x7c\x70\x3b\x76\x71\x4c\x3f\xde\xc3\xec\xc9\xc5\xfc\x2e\x96\x99\x5c\xcc\x6f\xb8\xca\xe4\x62\x7e\x3f\xd3\x9c\x1d\xdc\xd1\x44\x67\x07\x37\x9f\xea\xec\xe0\x1e\x26\x3b\xc9\x39\x17\x77\x31\x59\x68\xe8\x86\x93\x85\xba\xf7\x31\x59\xc1\x17\xec\x26\x02\x5f\x73\xb6\xd0\xd2\x4d\xa7\x0b\x95\xef\x61\xbe\x67\xa3\x9b\x4d\x36\xdd\xc7\x22\xdd\x1f\x56\xde\x1b\x3c\x15\x0d\xa6\xd5\x97\x70\xea\x45\x70\x08\x71\x48\x41\xf9\x45\x0f\x59\x5f\xc6\x03\x8a\xd9\x7f\xd1\xe1\x8d\x00\x74\x36\xba\x0f\xe8\x4c\x2f\xe7\xfc\x26\xfc\x25\x09\x51\x01\x9a\xd1\x8e\xe1\x6e\x32\x57\xa8\x7e\x0f\xb3\xa5\xb3\xc5\xcd\x58\xcc\x86\xa4\xa4\x5a\xba\xb1\xa0\xa4\x2a\xdf\xc3\x6c\xf3\xd1\xac\xcd\xc5\xd5\xda\x5d\xb2\xb5\xd2\xdf\xdb\x1c\x1e\xea\x93\xd5\x4a\xfd\x11\x87\xfb\xfd\x6a\xab\xfc\x4e\x24\x0f\xe0\x6a\xe0\x6c\x34\x4e\x14\x20\xc5\xcd\x76\x43\x3e\x9a\xa5\xa2\x1d\x62\xac\x15\x62\x22\xd9\x1c\x64\xa6\x1d\x62\xfc\xac\xbb\xb5\xcb\xf8\x4d\xa4\x31\xe7\x67\x37\xa4\x8b\x39\x3f\x7b\x71\x1f\xb8\xc1\xcf\x0e\xf6\xef\x68\xa6\x07\xfb\x37\x9f\xeb\xc1\xfe\x3d\x4d\xf6\x4e\xb8\x36\x68\xe8\x16\x93\xbd\x0f\xce\x2d\xe7\x67\x77\x22\x5b\xaa\x76\x6e\x3e\xd5\xdb\x4a\x96\x3b\x5b\xcc\x74\x96\x5d\xdc\xfe\xe4\x9a\x65\x17\x37\x3f\xb7\x66\xd9\xc5\x3d\xac\xe8\xec\x46\x0a\xea\xfa\x3c\x29\xbb\xc5\x3c\xef\x45\x3f\x3d\xe3\x9f\xe8\x1e\xe2\xbf\x6e\x27\x58\xce\xf8\x7d\x70\x62\xb3\x45\x7e\x3b\x46\x6c\xed\xf4\x7f\x77\xcb\xe9\xab\x59\x7c\xfa\xf9\xcf\xf9\xf9\x9d\x4e\x1f\xb0\x7e\xce\xcf\xe1\xf3\x46\x13\x9f\xf3\xf3\x7b\x98\xb7\xc8\xd8\xa7\x0d\x9c\xa6\x3b\x48\xe9\x9a\x90\x35\xcb\x19\x65\x7d\x89\x67\xd9\x45\x5f\x94\x20\xd6\x60\x96\x2e\xc7\x64\x44\x67\x59\x5e\xf4\xf7\xcb\x0a\xdc\x34\x26\xb8\xca\xa1\x65\xaa\xa3\xd9\x35\xe2\xd4\x91\x4e\xa7\x11\x27\xcb\xfa\x37\xa3\xa9\x8b\xd1\xa2\xc6\xa3\xdb\x3a\xac\x7e\xf6\x99\xfb\x89\xf7\x60\x0d\xf5\xf8\xc1\x89\xf2\xf7\xf4\x82\x8c\x63\xa1\x18\xca\xf8\xe1\x3e\xa6\x49\x02\xa6\x25\xa4\xd3\x39\x50\x0c\xa8\xb5\xbe\x30\x8e\xb1\xd8\xd0\xb9\xa4\xde\x8b\x83\xa6\x7e\xc7\xd6\xb4\x56\xea\xd6\x1e\x06\xad\xe5\x44\x0e\x18\xe6\x55\x6b\x11\xff\x96\x75\x3a\xb1\x4e\x1c\x70\xcc\x86\x09\xde\x8b\x59\x38\xdc\xdf\xc5\xbc\xcb\x92\x75\xfd\x98\x61\x6d\x31\x41\x08\x83\xce\x5b\xf1\x8d\xfa\xf8\xd6\x12\xa8\xbc\x1d\xdf\x6e\x28\xfe\x13\x2f\x94\xaa\xf3\x25\x28\x80\xe7\xdf\x13\x87\x7a\x22\x46\x1f\xd0\x8f\x45\xba\x27\xb0\x8e\xac\x9f\xc6\x24\xdd\x23\xc9\x6a\x45\x8b\xd7\xd9\x6b\x88\x98\x66\x5d\x7a\xba\xa8\x9f\x62\xb5\x12\xff\x75\xb0\x9b\xee\x1f\xbe\xce\x5e\xf7\xc9\xb7\xfb\x87\x5d\x19\x77\x55\x8f\xfd\x98\xa4\x7e\xb0\xb4\x5e\x31\xcf\xa9\x8c\x11\x41\x09\xde\xfb\xe5\xb3\x65\x4c\x54\xfb\x5e\xef\x2a\x91\x0c\xf6\x87\x25\x51\x7f\x0f\x86\x87\x7b\xea\xff\xae\xe8\x77\x45\xf9\x4b\x92\xb4\x37\x95\x34\x2a\xec\x89\x3e\x94\x2f\x7d\x5b\x27\x05\x01\x08\x93\x0b\xff\x3b\x3c\x75\xae\xfb\x62\xd5\x31\xee\x7a\x39\x10\x55\xb7\x47\x2e\xe6\xb5\x32\x3a\xad\xf4\x0f\x68\x03\xbc\xc1\xfe\xcd\x04\x24\xad\x4e\xf9\xf4\x22\x52\x41\xcf\xee\xe4\x5e\x55\xb5\x73\x43\xf6\x52\x55\xbd\x07\xc2\x7c\x47\x76\x01\x37\x37\x0b\xb8\x1f\xab\x80\xe2\xd7\xbb\xb9\x60\x54\xed\xdc\x74\xa2\xbf\xde\xcb\x05\x63\xb1\x38\xfd\x34\x0c\x56\xf7\x76\x0c\x56\xb1\x38\xbd\x87\xd9\xdf\x91\x3d\xc4\xcd\xcd\x21\xee\xc7\x1a\xe2\xae\x6c\x03\x6e\x61\x1a\x70\x4f\x96\x01\x52\x2c\xd8\xe8\x4e\xa6\xaa\x1a\xba\xe9\x5c\x55\xdd\xbb\x9e\xec\xe5\x29\xe9\x52\xd6\x25\xda\xf9\xd8\x83\xca\xe7\xd9\x83\x7a\xde\x3f\x2c\xbc\xe3\xf1\xab\x97\xdf\x65\xa2\xe8\x49\x32\x9b\xe7\x99\x24\xf1\x92\x8e\xfb\xe8\xeb\xbd\x1f\x1f\xf2\xbf\xd3\x1c\xe1\xd3\x9c\x8f\x3e\xf4\x3f\x5f\xa2\xe2\x72\x76\xca\xf3\x02\xf5\x07\xa8\x63\x43\x01\x61\xf4\x07\xcf\x4d\xcf\x0b\x3b\x15\xf4\x07\x1d\x40\xf8\x88\xbd\xcd\xb3\x11\x41\x43\x8c\x0a\x99\x49\xc8\x55\x0d\x0c\xbe\xc4\x83\x47\xbf\xc7\x07\x43\x3c\x18\x3c\x7a\x88\x1f\x0d\x87\xda\xc0\x7a\x30\x40\x55\xcb\x24\x87\x88\x52\x83\x65\xad\xee\xc1\x57\xf8\x00\x8a\x0f\x87\x18\xcd\x33\x91\xcd\x08\xc4\x35\xe8\x0f\x86\x25\xae\x17\xd6\x1d\xed\x9b\x8e\x1e\x0e\xd5\x0f\x74\xb6\xa0\x63\x78\xb0\x59\x10\x61\xde\x96\xa9\x8e\xd0\x7f\x8d\x16\xa2\xe0\xa2\xbf\xff\x5f\xc8\x76\xe0\x8d\xe8\x9a\x43\x19\x0e\xd7\x26\x4e\xb3\xe2\xc5\xc7\x2c\x47\xfd\x49\x96\x17\x04\xa3\xc5\xfc\x63\x06\x05\x90\x8f\x0f\x88\x4e\xd0\xb0\xfc\x1c\xcf\x88\xcc\xfa\xcb\x19\x2c\xad\x7e\xc7\x75\x7d\xec\xea\x4d\x4f\x0b\x54\x85\x60\xd4\x4b\x7f\x52\x10\xf9\xcc\xd6\x39\xb6\xcb\x2f\x8d\x23\xf3\x13\x8b\x10\x6f\x58\x7e\xe9\x8a\xc5\xc9\x55\x38\xcf\xc7\x74\x42\x89\xa8\x22\x37\x40\xbc\x8e\x07\x36\xdd\xb8\x7c\xb9\xc9\x25\x25\x49\x96\xa4\x77\x4e\xf3\x5c\xfb\x12\x8c\x15\x6e\x07\xce\xd9\x6f\x63\xab\xde\x70\x12\x0b\xc3\xae\x07\x19\x51\xe0\x83\x58\x13\xda\x0d\xbe\xf6\x79\x4f\xb0\x04\xf7\xd5\x58\xa4\x68\x94\xcd\xb3\x53\x9a\x53\x49\xc1\xd1\xab\x85\xb4\x9d\xbd\xf6\x6d\x23\x9e\x79\xa5\x62\xf4\xa8\x77\xf0\x08\x25\x58\xc0\x7b\xdf\x35\xf1\x4a\x54\xa7\x66\xe0\xec\x5a\xf1\x4a\xc0\xab\x32\x2b\xb5\xd7\xbb\x57\x66\x18\x8d\x48\x38\xf1\x3e\xd8\xd1\x64\x45\xa1\xfd\x32\xeb\x99\xe1\xea\x46\xd0\xcc\xc3\x3e\xbc\x06\x90\x6b\xa8\x30\x2c\x13\xcc\x4a\x30\x41\xcf\x73\xaf\x07\xa9\x96\xcb\xe0\x9f\xa6\xab\x74\xfc\x4e\xbf\xa0\x79\x6a\xbd\xe6\xc7\xda\xdc\x61\x7c\xa4\x6b\xc7\x49\xa9\xbd\x48\x87\xcd\x54\xce\xbb\x09\x46\x99\x38\x2b\x90\xea\x13\x2a\xfe\x04\xc5\x1b\xed\x35\xfb\x29\xc7\x1a\x4b\xaa\x96\x6d\xbb\x26\xc3\xb8\x56\xbe\x2e\x3e\xb7\xde\x4b\x6d\xbb\x07\xb6\x7f\x9c\xa2\x43\xda\x58\xd1\xeb\x13\x46\xb6\xc1\xe4\x0e\x76\x91\x0e\xd1\xc3\xc2\xdd\x03\xcf\x4e\x8c\x3f\x69\xbd\x88\x36\x68\x8e\x4d\x75\xa4\x4f\x91\x54\x1b\x50\xa1\xf0\x63\x49\x60\x1b\x6e\x42\x35\x90\xca\xb2\x75\xa9\x97\x65\x1b\x62\x40\xaa\xc3\xb3\x65\xe9\x13\x12\xfd\x55\x05\x79\x28\xcf\x88\x8c\x68\x61\x12\x82\x18\x3d\x66\x23\x04\x99\x3a\x50\x44\x50\x87\x8c\xd7\x57\x21\xc6\x05\xb9\xef\x2a\x9b\xe1\x8a\x26\xbf\x0a\x89\x45\x4c\xd2\x27\x41\xc8\x26\xf0\x29\xde\x12\x49\xad\x89\x76\x16\x83\xb2\xfc\xc6\xf4\xf7\xee\xf8\x0d\x35\x87\x9f\x49\xf6\xe1\x55\x36\xc7\xc2\xff\x0a\x42\x74\x55\xde\xe2\x4d\x9c\xad\x64\x47\x76\x3a\xc8\x16\xf1\xc2\x20\x74\x3a\x32\xf6\xb4\x1a\x14\x30\x9f\x99\xfa\xcb\x39\x2f\xa8\x9e\x7a\x9f\x82\xff\x94\x71\x9f\x97\x29\xc3\x59\xaa\x8e\x38\x8a\x79\xb2\x63\x49\x4a\x66\x35\x53\x6a\x4c\x4d\xb2\xaf\xa9\x3e\xec\xc0\x1d\xa2\x09\xbd\xac\x13\x7a\x71\x1d\x42\xff\x49\x03\x53\xd5\x09\xbd\x8b\x51\xde\xeb\xf5\x94\xa8\x67\xc8\xbc\xfe\x6c\xa1\xda\x42\x81\x50\x1a\xc8\x88\x04\x53\x93\xd6\x24\xcc\xee\x04\xe1\xa9\xb4\x4b\xc5\xc0\xa4\x24\x26\x98\x63\xd1\x4a\x72\x41\xe4\x2a\xaf\x50\xf6\x6d\x83\xc7\xdb\xd1\xdd\x4d\x1b\xe0\x1e\x03\xc4\x47\xeb\x37\x37\x44\x1d\xb0\x55\x31\x69\x7d\xa8\xd5\x98\x16\x65\x92\x88\x49\x06\xee\x26\x06\xfe\x3c\x92\xe5\x86\xea\x6b\xc3\x5e\x5e\x7d\xc6\x5d\x6f\x65\xb6\x19\x77\x4b\xfc\xae\x4f\x16\x45\xd3\xc9\x14\x77\x18\x48\xb3\x9a\xed\x1d\xc6\xd3\xb4\xc8\xf1\x14\x8e\xc7\xad\x1a\x66\x3d\xbf\x52\x6b\x84\x4d\xa0\x7e\x5d\x90\xe3\x8a\xee\x9c\xe7\x97\x13\x9a\x7b\x01\x7c\xa7\x59\xa1\x33\xbb\x20\xac\x14\x6d\x18\xd2\xda\xc4\x27\x3e\x37\x80\xd7\x6e\x95\xbb\x83\x5e\x73\x22\x07\x80\x3e\xde\xad\x86\x3c\xd4\xcc\x74\xa7\xa3\xd8\xdf\x27\xfb\x7d\x56\x06\x72\x4b\x4b\x84\xca\x6d\x81\xf4\x6f\x04\x9d\xdb\x43\x85\x16\x7e\x89\x2e\x65\x1f\xf9\xc8\xbc\xc6\xbf\x11\x94\x3e\x59\xc8\xe8\x2b\xe1\xe4\x02\xe3\xc9\x1e\x2d\x94\x94\x3d\xfe\x4e\x0d\xf4\xc8\xcd\x28\xd1\xd7\x1d\x64\x70\x30\x4c\xca\xab\x84\xe0\x2b\xc0\xf6\xef\x07\x33\xb6\x16\x62\x37\x05\x56\xe3\xb0\xba\xe3\xed\xd4\x36\xe2\xb4\xb6\x73\x22\x61\x5f\x9b\x9b\xe0\x74\x20\x97\xd4\x22\xa6\xd6\x3a\x15\x18\xd9\x8b\x39\x08\x2f\x13\xb2\x6c\x41\x00\x5f\x8f\x81\x3b\xc0\x7a\x70\x8a\x1b\xf8\x65\xb9\xbc\x04\xf7\xf5\x92\xa7\x9f\x2d\xff\xf4\xfe\xcd\xeb\x9e\x8e\xeb\x44\x27\x46\x48\xfd\xa5\x4c\xb0\x66\xd1\x84\x12\x88\x44\x89\xc9\x1a\xac\xf5\x9f\xe0\x3b\xf9\xb1\xed\x96\x5b\xcd\x6c\x37\x4d\x49\xa7\x23\x21\x86\x16\x49\x0e\x45\x9a\x3a\xc6\xae\xef\xce\xd0\x34\x4d\x4d\x7f\xd0\x55\x71\xc4\x26\xbc\x85\xe3\xd9\xdc\x87\xb9\x4f\x35\x10\x3c\x23\xf2\xad\x0d\x19\xfe\x66\x12\x93\xa4\xd3\x09\x03\xc6\x92\xa4\x07\x6e\x65\x95\x24\x64\x6f\x5c\xab\x86\x93\xb2\x4d\xc4\x68\xe2\x19\x67\x46\xf1\xec\x36\x22\x67\x5d\xeb\x80\xa2\x6d\xf3\xb5\x55\xf8\x87\x85\xb8\x37\x11\x2a\x9b\x31\xee\x4d\x2c\xc2\x81\x9d\x09\xee\xf5\x7a\x64\xb8\x4d\xc4\xfb\x56\x80\x9c\x53\x36\x0e\xed\x57\xfe\x35\xc1\xa1\xe7\x71\x3b\x60\x6c\x86\x82\x09\x52\xfd\x91\x30\x09\xe1\x38\x48\x4b\x58\xda\xdb\xc3\xe3\xe4\x04\xbc\x83\x15\x69\x83\xf5\x5b\x66\xe3\x71\xd1\x17\x26\xc2\x4a\xd1\x67\x65\xd9\x84\x9f\xa6\x62\xfb\x98\xa5\xfb\xa1\xf5\x8b\x00\x19\x78\x49\x3a\x1d\xd1\xe9\xd0\x4e\x27\x66\x7b\x7b\x18\x68\xb9\x6e\x0f\x82\xda\xbe\x34\xd3\x4a\x5c\x85\x56\x23\x0e\xbb\x28\x00\x8b\x63\x70\xfe\xa2\x03\x8f\x42\x02\xe8\xac\xf5\x70\xf0\x28\xcb\xf3\xd3\x6c\xf4\xc1\x7e\x43\x81\x37\xc6\x57\xb8\x2d\x63\x96\x76\x40\x30\xc3\x7c\x88\xb3\x64\x49\xb5\x52\xd2\x6b\x1f\x57\x09\xaa\x7d\xfd\x69\x5b\xf7\x32\x4d\xdb\x09\xae\x37\x90\xd6\xea\xf8\x94\x92\x69\xd8\x58\xd6\xdd\x02\x26\x1b\x8f\x1b\x50\xd1\x45\x31\x2d\x9b\x23\x64\x10\x8d\xb8\x36\xd0\x94\x35\x07\x97\x66\x9b\x82\x8c\x2a\x79\xfa\xb6\xb3\x0f\xb1\xbf\x45\xe4\xbe\x02\xab\x3f\xdd\x31\x5c\x87\xe9\x1b\x36\x22\x60\xfb\x51\xcf\x68\x59\x1f\x1b\x0a\x9d\xee\xc8\xc3\x66\x85\x98\xe1\x0c\xf3\xa4\xcf\x3b\x1d\xde\xe3\x6c\x44\x0e\x05\x54\xcd\xf0\x77\x9c\xe7\x24\x63\x31\xef\x8d\xb2\xb9\x5c\x08\x92\x24\xfd\x35\xf5\x5d\x51\xd5\x88\x2b\xad\xf6\x59\xcb\x2e\x09\x0e\x5b\x35\xc8\x64\xa9\x06\xd6\x52\x32\xd6\xd9\xfd\xf5\x99\xb6\x63\xda\xe9\xd0\xb0\xe3\xf7\x3f\xbd\x7d\xfb\xe6\xdd\xf1\xfb\x93\x17\x7f\x7e\xf1\xfa\xf8\xe4\xcd\xdb\xe3\xa3\x37\xaf\xdf\xd7\x95\x6d\x26\xdc\xb2\xb8\x74\x01\x11\xed\xf9\x60\x78\x19\x73\x57\x17\xa3\x31\xfd\x88\x74\xd4\x56\x89\x45\xba\xbf\xe3\x4c\x04\x1a\x00\x41\xa3\x9c\x2a\x01\x48\x35\xad\x36\xc5\x52\x41\x55\x2f\x64\x8b\x7e\x0e\xea\x1e\xea\x33\x19\x7e\xdb\xfa\x49\x3f\x96\x8d\xd1\xe8\x02\xf0\x07\x29\xe6\x86\x32\x2a\x83\x5a\x78\x77\x1f\xef\xee\x27\x5a\xbf\x5f\xcc\x33\x39\x9a\xea\x7c\xd9\x9a\x74\x00\x7c\xca\x48\xa5\x55\x4c\xc9\xee\x41\x59\x26\x71\xd2\x50\xac\x63\x96\xee\x1e\x24\xcb\x96\x29\xcb\x0a\xdb\x23\x1a\xab\x22\x6d\x0b\x26\x31\xc5\x2c\xc1\x22\x4e\x4a\xd0\xcc\xae\x5d\x24\xd9\xb4\x07\xe7\xac\x2b\x48\x41\x7f\x23\x95\xba\xc4\xfe\x80\xf3\x58\x67\x6e\xd2\xda\x5c\x71\xe6\xc0\x09\xaa\xb7\x4c\x35\xf1\xac\x8a\x99\xae\xd5\x9b\x3c\x5d\x96\x35\xc6\x16\x3c\x2c\xb1\xa4\x8a\x6f\xeb\xef\x7b\x3e\x20\xc3\x94\x0d\x08\xb8\xe7\xe2\xbd\x8a\xaf\x4d\x77\x77\xfd\x4f\xcc\x7b\x3e\x0f\x0c\xb9\x7e\x02\x8e\x91\x8e\xa0\x4f\x59\xc4\x57\x2b\xee\x7b\x44\x4a\x3a\x9d\x98\xf7\x2c\x93\x9c\xee\xee\x27\x98\xa7\xc2\x78\xba\x4a\x7a\x42\xf1\x84\x85\xfe\xa5\x8d\x59\xdc\x00\x41\x99\x64\x15\x24\xe6\xf2\x64\xb5\x12\x65\x02\xb4\xba\xd3\x71\x86\x9b\x41\x7f\xd0\x9d\x0e\xdd\x1f\xa4\x1f\x06\x5f\x3a\x38\x30\xb5\x61\x51\x71\x90\x99\xda\x2b\x0d\x67\x57\x58\xef\x61\xbd\xd6\x97\xab\xe9\xe9\x9b\x0f\x7e\x07\x77\x30\x6a\x47\x17\x69\x6c\xe5\x38\xca\xa0\x41\xe3\xd4\xae\xba\x99\xd4\x2e\xad\x31\xd5\xf7\x9d\x91\x3e\xca\x8b\x4a\x09\x16\xa8\xc2\xc1\xec\xbe\xba\x04\xc5\x74\xc7\x05\xc2\x26\x89\x77\x0b\xaa\x91\xf6\xcd\xa9\xea\x4d\x1d\x1f\x3a\xa6\x30\x8e\x59\xca\x2b\xe6\xbe\xed\x86\xd3\x93\x8f\x98\x8f\x45\x81\x1c\xc5\x42\x0c\x72\x52\x14\x73\xb8\x62\xa4\x29\x16\xac\x22\xdb\xb0\x8a\xa5\xbe\xbe\xb1\x47\x68\x1c\xf2\x94\x99\x38\x2b\x7a\xd5\x85\xc2\x60\x7f\xb8\xe1\xe2\xa9\xba\x62\x82\xba\x21\x28\x7a\x5c\xff\x30\x27\xba\xa6\xc1\xfa\xc0\x9e\x66\x6c\x9c\x93\x77\x50\x3c\x09\x6f\xa7\xda\x1a\x5a\xb0\x6d\x9b\xf2\xbf\xcc\x0a\x06\xfc\x82\x79\x4c\x51\x62\x9e\x66\x31\xed\xcd\xad\x28\x86\x1b\xcb\x38\x10\xc3\xcd\x22\x6d\x70\x27\x81\x3d\x70\x03\x3b\x58\x26\xb8\xd6\x81\x3f\x34\x84\x07\x6c\x88\x2b\x91\xf0\xcd\x39\xb3\xb8\x61\x9d\xc3\x72\xb1\xa1\x7a\x82\xbd\xbc\x04\x07\x16\xc5\x2d\x81\x68\xe7\xd9\x19\xd1\xc1\x6e\x2a\xbb\x7d\x97\xb4\x2d\xc3\x53\x99\x03\xdc\xcd\x7e\xa5\x69\x2c\x5b\xf7\x6b\x8c\xaa\xc1\xe9\xd8\x7f\x09\x16\xb5\x2d\xeb\xb3\xe4\x1b\x76\xad\x3a\x07\xda\x77\xad\x0d\x5a\xc7\xcd\x6e\xa5\x29\xdb\x7a\xb7\xd2\xb5\xbb\x95\xae\xd9\xad\xb4\xbe\x5b\x69\xb0\x5b\x69\x73\xb7\xf2\xda\x6e\x85\xf1\x1e\x35\x2e\x5a\xcf\x16\x74\xfc\x3d\x17\xe6\x8e\x55\xb5\x12\x27\x4b\x98\x31\x34\x59\x8b\xda\x0f\x5b\x41\xcf\x5c\xbb\xf0\x5b\xd2\x71\xbf\x4a\x3c\x1a\x97\x49\x19\x08\x9b\x5a\xa2\xd2\x5d\x65\x05\x18\xff\x2e\x4b\x2c\x71\xbd\x9e\xf1\x5c\x4e\x7a\x7f\xe7\x94\xc5\x08\x25\xa5\xd3\x1c\x35\xfa\x14\xe1\x38\x8a\xd1\x94\x28\x8c\x39\x56\x2d\xe8\x8b\xec\x38\xc1\x08\xd5\x6e\xa9\xf5\x9c\x82\xb4\xa0\x19\xcd\xaa\xc4\xfe\xa0\xb6\xe8\x07\x08\x81\xf0\xb6\x59\x56\x61\x46\x91\x0e\xe4\x10\xe7\xe9\x6d\x88\x00\x1e\xa5\xcb\x12\xfb\x3c\x46\xbe\x86\xc7\x18\x29\x1e\x23\x37\x3c\xc6\x28\xe4\x31\x46\x01\xbe\xd5\x79\x8c\xd1\x5a\x1e\x63\xb4\x5a\x8d\xea\x3c\xc6\x28\xe4\x31\x46\x69\xb1\x0d\x8f\x11\x68\x1e\x62\x8e\x33\x4c\x92\xd5\x8a\x94\x09\x1e\x25\x78\xe1\xf1\x18\xa3\x1a\x07\x30\x32\x3c\x46\x90\x7e\x38\x6a\xe2\xfb\xc2\xf1\x18\xa3\xcd\x3c\x46\xbd\x87\xf6\x2d\xab\x86\x38\x52\xd3\xd3\x3c\x06\x4b\x47\x58\x68\x83\x30\x95\x53\xe0\x1c\x2f\xf0\xc8\x23\x9a\x74\x23\xd1\xb4\xde\x71\x1f\xd4\x09\xd3\x75\x49\xa7\x22\x48\xaa\xff\x20\xa6\xb9\xbd\x10\x14\xeb\xe8\x0f\x5c\x93\x7b\x58\x27\xd6\xd2\x1f\xb1\x86\xfe\x88\x3a\xfd\x11\xc1\x7a\x88\xe6\x7a\x30\x8f\xfe\xb8\xc1\x2e\xee\xd7\x36\xc7\xf5\x3b\xfa\x0f\x07\xff\x7f\x03\x07\x3f\x4e\xd1\x82\xe9\x36\xc6\xd5\x2b\xa3\xef\xb3\x42\x7e\xc7\xb9\x34\xe2\xfe\x34\x05\xb7\xec\xe4\x39\x1d\xeb\x40\x3d\x08\xea\x4e\xd6\x71\x13\xf8\x0a\xa1\xa0\xce\x7b\x54\x5a\xf2\xa4\x21\x28\xe8\x1a\x26\x96\x41\x0b\xdb\xe1\xb3\x1a\xb9\xb1\xf3\x52\x24\xe3\x58\xf3\x59\x1c\x0e\xa4\x2a\x0b\xe6\x21\x10\xce\x6a\xe9\x95\x9e\xbe\x30\x39\x0b\x93\x63\xcf\xa6\xc1\xb0\x4a\x3b\x31\x90\xd4\xbe\xe8\x11\x5e\x16\x64\x9e\x89\x0c\x42\x0a\x44\xab\x08\xe1\xb9\x80\xc0\x60\x6a\xa3\x09\x32\xcf\xb3\x11\xb1\x1c\xaa\x6d\xa2\xe5\x6c\xd4\x9a\x0f\x63\x35\x28\x16\xcc\x9d\x9f\x6f\x98\x82\x52\x36\x91\x44\xbc\x03\xbb\x67\x84\xb5\x99\x10\xa8\xf1\xb4\xe1\x0c\xb4\x93\x94\x6d\x0c\x89\x39\x94\x4f\x4c\x94\x0c\xf2\xe2\x82\x16\x92\xb2\x33\xa8\x62\xf5\x34\x5a\x45\x43\xcc\x0a\x9d\xf9\x46\x71\x6a\xfb\x14\x3c\xff\x48\xde\x79\x5e\xd8\x63\xa4\x37\x69\x9f\xb0\x8f\x54\x70\xa6\x97\x6f\x87\xf4\x1c\xf0\x3b\x9d\x01\x72\x70\x41\x18\x19\x98\x80\xef\xec\xb9\x36\xdb\x76\x94\x43\xba\x79\xd3\xe2\xc5\x6c\xae\x10\xb9\x6a\x68\x20\x87\xc9\x6a\xa5\xf9\x8c\x10\xf2\x8a\x6a\xd5\x0a\x96\x66\xb6\x7a\xa1\x7b\x9c\xc5\x53\x9d\xd0\x02\xf0\xa4\x84\xf0\xb9\x10\x65\xe2\xb9\x6e\xb7\xb0\x57\x73\x9a\x6d\xad\xf5\xd7\x73\xf3\xc1\xa2\x35\xdf\xcc\x11\xb3\xd6\x5c\x33\xef\x1d\x7d\x3d\x45\xaa\xd6\x3a\x9d\xd8\xfb\x4a\x65\x82\x6d\x11\xd3\xa0\xbd\xdc\xd2\x25\x4d\x62\x2a\xaa\x72\xa6\x69\x5b\x8e\x41\x39\x93\x98\x32\x85\x15\x53\x22\xa8\xfc\x5e\xf0\xd9\x5b\x41\x3e\x52\xbe\xf0\x66\x0a\x2d\x42\xda\x8e\xec\x74\xe2\x2b\x87\x57\xfd\x6e\x19\xa8\x37\x3e\x69\x7f\x25\x49\x09\x7c\x68\x0d\xb6\x13\xca\xc6\x00\xfc\xef\x2e\x8f\xc6\x31\xe9\xd1\x31\x3c\x03\x74\x4c\xb0\xcf\x4b\x3a\x1f\xe2\x8a\xb3\x18\xf4\x7a\x3d\x2f\x73\x88\xa9\xee\x4b\xcf\xc1\x69\x18\x6d\x0a\xbc\xe8\x65\xe4\x42\xa6\x12\xfe\x68\x84\x68\x07\x89\x31\xff\x6c\xc3\x0b\xcc\xe0\x21\xe4\x88\xc4\x02\x1f\x60\xa2\x49\xb8\xc7\xfe\x16\x0a\xd0\xcd\x91\xeb\xd3\xa8\x7b\x90\x0c\xf6\x87\x3b\x6e\x01\xf5\xc0\x04\x16\x7a\x60\x64\xd3\x98\x36\x0e\xca\xef\xbf\x06\x17\x4c\x86\xa5\x61\xd2\x37\x43\x3e\xc1\x4b\x35\x8a\xbe\xc0\x76\x64\x7d\x56\xa6\x12\x46\x2b\xaa\xd1\xb2\x04\x2b\xc4\x62\x7a\xc8\x4a\xa8\xa8\xf2\x34\x64\xe1\x74\x32\xa2\x66\x7d\x91\x76\xa8\x05\x1f\xf5\x57\xf3\x20\x9c\x02\x05\xd1\xeb\x23\x85\x30\xfd\x30\xc4\x22\xd6\x63\x27\x3e\x54\xb1\x4c\xc9\xa1\x7d\x78\xdc\xdf\xc7\x22\x1d\x0c\x77\x26\x5c\xc4\xdf\xc8\x6e\xf7\x1b\x5d\x81\xa5\x8a\x22\x28\x8c\x62\x76\x2b\x24\x4b\xd1\x5b\xb0\x62\x4a\x27\x32\x66\xc9\xce\xa9\x20\xd9\x87\xd2\x4f\xb2\x0f\x4d\x05\x0c\xa3\x80\x20\x44\x6d\xa3\x08\x06\x88\x65\xba\xab\x87\xa0\x70\x53\x28\x74\x1c\x0c\x2b\x34\xb4\x44\x8e\xa4\x4f\x96\x74\x12\x83\x47\x2f\x26\x13\xea\xba\x25\xc9\x0e\xc9\x0b\x12\x41\xa6\xdd\x32\x4b\xb5\x15\x65\xba\x7b\x60\x1a\xb6\x92\x5c\x62\xc0\x2b\x14\x3a\xd1\x4e\x27\x8e\x49\x43\x5a\x24\x49\xe2\xed\x57\xea\xef\x57\xe1\xf5\x5a\x42\xaf\x52\xd1\xd6\x6a\x02\xae\x1f\x2c\x7a\x66\xd3\x96\x09\x06\x29\x7b\x94\x49\x00\xa5\xff\xb4\x8f\xd8\x0c\x99\xa8\x23\x32\x29\xab\x67\xc3\x3e\xbc\x7c\x48\x62\x69\x17\xab\xba\x3d\xb4\x4b\xf9\x8d\xf8\x96\x7d\x23\xf6\xf6\x74\x65\x9a\x92\x81\x50\x88\x23\xf5\x81\x12\x4b\x3d\x24\x93\x90\x60\xb1\x77\xf0\x2d\xeb\x74\x5c\x72\x35\x51\xb7\x92\xb2\x12\x90\xb7\x14\x6f\xed\xd1\x31\x99\x6c\x3c\x3b\xfc\x83\x37\x4e\xdc\x3d\x88\x41\x52\x0b\x84\x9d\xf1\x21\xa4\xe8\xc2\x8a\xb1\x3a\xe5\x5c\xea\x4a\x24\xd1\x12\xbd\xbb\xac\x80\x59\x59\x5a\xe0\x8e\x35\x9d\xfc\xdc\xda\x9c\xab\x05\xb9\xe2\x2c\x5f\x96\x8d\x1d\xbe\x6c\xd1\x0d\x4c\x68\x2e\xd5\x19\x9f\x3e\x91\x3d\x3a\x4e\xd3\x94\xc0\xf3\xee\xf6\xa1\x2a\xd4\xdd\x1d\x9b\xd7\xd9\xee\x1e\x28\x1c\xff\x94\x64\x63\x75\x32\xf6\x46\x53\x9a\x8f\x5f\xf3\x31\x29\xdc\x3a\xf3\x74\xff\x1b\xfe\xad\xb0\xeb\xcc\xed\x1a\x93\x54\x0c\xf8\x70\x07\x69\xc5\x18\xb8\x13\x60\x7c\x0c\x2f\x91\x7a\x92\xbf\xe4\xe7\x44\x3c\xcb\x14\x13\xaf\x96\x59\x53\xb3\x67\xaa\x75\x05\x06\xbd\xcb\xc3\x31\xd4\xae\x9f\x74\xb3\x89\x51\x11\xd7\x8b\x1d\x93\x0b\xa9\x86\x09\xb6\xc5\x8a\xc0\x12\x36\xd6\xad\x53\x45\xdd\xfc\x04\xa6\x35\x17\xa3\x50\x45\xe8\xb1\x9a\x03\x79\x6b\xed\x65\xbd\x75\xcb\xad\xde\x5e\x31\x5a\xd4\x9b\xf6\x0c\x53\xd8\x6d\x1b\x0f\x74\xa1\x93\xeb\x8a\xf5\xf7\xf8\x52\x00\x24\x0b\xb9\x46\xb6\xa8\xed\xb2\x64\xe9\xbf\x9f\x68\xb1\x5d\x9c\x2b\xd4\xec\xea\xe8\x49\xdd\x73\x2a\xa7\x5d\x8d\x53\xfe\x3b\xb9\xa0\xcc\x6c\x91\x4b\x3a\xcf\x89\x5f\xb8\xed\xe2\xed\xda\x0d\x07\xed\x5d\xd5\x88\x7d\x76\x57\x6c\xd5\x5c\xc3\x8c\xfa\x93\x58\xe0\xb0\x16\x0b\x9c\x3c\xbb\xe4\x0b\xd9\x77\x86\xcd\x18\xc6\xa8\x03\xb6\xb9\xe7\x82\xfa\xbd\x62\x2b\x94\x11\xd6\x57\x4f\x45\x7f\xa9\x73\xde\x08\x1d\x7d\xd6\x57\xb3\x12\x4b\x03\x89\x3a\xc9\x4e\x4e\x68\xf1\x7e\x71\x76\x46\x0a\x55\xf1\xe4\x44\x73\x6c\x9a\x7e\x73\x66\x6a\x8b\xde\xc9\x09\xcc\xe7\xe4\x04\x4b\x43\xc0\x39\xd3\x72\xb1\xf6\x73\x18\x5a\x43\xb4\xb8\x8b\xb8\xdd\x02\x5f\x03\x61\xae\xb7\xd6\x6d\xcd\x19\x7b\x8d\x33\xc1\x17\xf3\x2e\xfc\xbe\x37\x94\xd0\xbb\xd3\x2d\xb5\x43\x0c\x99\x9d\xe9\x65\x47\xd8\xe0\x48\xf5\xbe\x01\x82\x95\x11\x51\x61\xcd\x2b\x9d\x80\x0b\xbd\xac\x64\xac\x4d\x56\x5c\xab\x35\xe4\xf1\x81\xe7\xaa\x74\xb9\x89\x1b\xb8\x1d\x06\x22\xac\x83\xa4\xe9\xe8\xf9\x63\x4b\x33\x6b\x66\x37\xc1\x2d\x41\x89\x75\x17\xda\x07\x50\x5f\xcf\xdc\xdc\x0a\x8c\x63\x64\x32\x7b\x83\x21\x0a\xde\x62\x78\xfc\xd5\x19\x91\xae\x5c\x15\xc6\x49\xb1\xc8\x72\x4a\x98\xf9\xa3\xb0\x5c\xb7\xfd\x34\x26\x49\x4f\x72\xed\x72\x28\x49\xfa\x6d\xa9\x2e\x11\x4c\xfe\x8b\x29\x5f\xe4\xe3\xf7\x53\x7e\xae\xf7\x81\x86\xa3\xaf\xa5\xde\xad\x06\x52\xb8\x62\x3f\x4f\x09\x43\xc9\x6a\xb5\x3e\x4f\xef\x19\x9c\x8d\xc7\xcd\x86\x35\xf3\xb5\xbe\xe7\x4e\x27\x46\xa7\x5c\x4a\x3e\x53\x8c\x43\x5b\x1f\x6f\xcd\xad\x2a\x4a\x0e\x0d\x93\x08\xa5\x4e\x17\x34\x1f\x57\x5b\xfd\x7b\x2e\x8e\x89\x98\x29\x51\xab\x2f\x1d\x83\x7c\x45\x49\x35\xe8\x8a\xc2\xa8\x15\x7f\xca\x6c\xc9\x40\x7b\xaf\xe1\xf8\xee\xfd\x9f\xdf\x5a\x45\x4a\xdc\x58\x33\x80\x39\x4a\x12\xbd\x4e\x42\x4b\x0a\xfb\xbe\x73\x25\x2b\x98\xec\x78\x4c\x8f\x9e\x2c\xf4\xed\xc5\xee\x3a\x6c\xe9\x50\xc3\xcb\x34\x2f\xd3\x27\xb1\xb4\x0b\x0d\x52\x86\xf4\x90\xc1\x08\x9b\x2d\xeb\xa1\x5a\xe8\xc7\x46\xba\x35\x84\xd3\x22\x89\x48\xaa\xb7\x93\x8d\xaa\x4a\xee\x48\xca\xa4\xc4\x4d\x4a\xac\xc8\x07\xe9\x74\x9a\xc4\xb7\x46\x76\x89\x4f\x76\xb1\x68\x21\xbc\xaa\x8b\x12\x5b\x7a\x6e\x69\x3c\x73\x60\x31\x82\x08\x40\xeb\x7b\x4a\xf2\xf1\xa1\x11\x61\x20\xdd\x50\x8e\xd8\xe9\xbf\x62\xc3\x86\x7b\x15\x14\x00\xfa\x6d\x95\x00\x38\xf1\x3e\x16\x06\x2a\xd6\x2e\x2e\x26\xab\xd5\x60\x08\xcf\x06\x4b\xbc\x16\x93\xac\xbd\x65\x1d\x02\x8a\x72\xb8\x49\xf7\x09\x86\x48\xd6\x6d\x48\xf9\x32\x3b\x25\x10\xc8\xa1\xd1\x89\xcd\x09\xb8\xff\x5a\x99\xc3\xb6\x44\x25\x9b\xfc\x02\x11\xc7\x3f\x5b\x92\x12\xf5\x7a\xbd\x5f\x3e\xe9\xb1\xd6\x42\x6d\x3f\xd5\x39\xd7\xec\xea\x3e\xdf\x3b\x5c\xeb\x3c\xbb\xca\xa8\xf8\xae\x0e\xfe\xfb\x62\xc0\x83\x47\x45\xed\x8e\x41\xe4\xdb\xa7\x3f\xfd\xfd\x2f\xf2\x79\xbb\x63\x90\xf7\xe6\x84\x45\x16\x49\x90\x24\x62\x86\x70\xe0\x31\x04\x14\xe5\x66\x0b\x3a\x70\x43\x46\x9e\xf3\xf3\x67\x39\xc9\x04\x7c\x09\x9a\x69\xcb\x8f\x53\x32\xfe\xee\xd2\x26\x1d\x31\x90\xad\xed\x27\xec\xa0\xe0\x23\xb7\xa5\xf5\x96\x81\x11\xe9\xb1\xfc\x61\x94\xe5\xa3\x45\xee\x1f\x3b\x2a\x51\x49\x1d\xfa\x07\x2f\xc8\x1b\xe6\xe6\xf0\x07\x33\xe6\x1f\xe8\xd9\x34\xa7\x67\x53\x49\xc6\x35\x87\x27\xf0\x49\x85\xfe\x53\x00\x3b\x01\xbf\x05\x9f\x8f\xf9\x39\x7b\x66\x5b\x26\x17\x52\x64\xea\x07\xf0\x69\xc1\x9c\xa7\xb6\xf1\x37\xec\x07\x0e\x56\x36\xe8\x0f\x53\x2e\xe8\x6f\x9c\xc9\x2c\xf7\xc7\x69\x04\xbb\xfc\xf2\xcd\x9c\x30\xdd\x91\x09\x0a\xff\x8a\x14\x45\x76\xa6\x18\xc4\x3f\x00\xc5\x3b\x16\xf4\xec\x8c\x88\x9f\xe9\x58\x4e\x55\x22\xe3\x9a\xcd\x2a\xbc\x82\x9c\x7d\x97\x2f\x84\xfe\xf5\x4c\x4d\x5c\xff\xfc\x9e\x8f\x16\x85\xfe\x79\xc4\xe6\x0b\xa9\x7f\xfe\x48\x2e\xd5\x7c\xf4\x87\xea\x1e\x7e\xb5\xac\x20\x28\xf1\xa6\x3c\x1f\xeb\x89\x78\x9f\x61\x31\x01\x06\xc6\xef\x47\x82\xe7\xb9\x76\x17\xa3\xfd\x4a\x3c\x7d\x7b\xd4\xf4\x1e\x83\xd1\x1f\x0a\x28\x79\xcc\xe1\x77\x45\xf0\xab\x4f\x6f\x66\x41\x42\xd0\xad\xce\x79\x1b\x8e\x51\xef\x37\x32\xf6\x7f\x1f\x49\x32\x0b\x6a\xca\xec\xd4\x3c\x48\x42\x7f\x90\x1a\xba\x6e\x71\xcd\xf7\xd1\xd8\xfb\x78\xc7\x73\x18\x8b\x92\xe5\x9f\x4e\x49\x36\x36\x7c\xae\x4a\xfb\x48\x04\x44\x3b\xf6\xd6\xb6\x93\x49\x29\x8a\x75\x6e\x72\x1e\x81\xf7\x9a\x7d\x3c\x78\xf4\xa5\xf3\x64\xb3\x8f\x07\x68\x1d\xbb\x8b\x86\xc6\x9f\x4e\x8b\x5b\x9d\x16\x27\x36\x0f\x31\x8a\x22\x95\xf1\x15\x56\x2d\x83\x53\x9e\x83\xdf\xe3\x2f\x1e\x69\xf7\x37\xf7\xb7\x5d\xc1\x11\x4f\x5b\x47\xff\xd9\xc8\x66\x23\xcf\x2a\x2c\xba\x72\x4f\xeb\x8b\xe0\xdb\xef\xef\x7f\xfc\x56\xaf\x7e\x19\x91\xed\x9f\x98\x0a\x84\xe5\x6f\x4b\x19\xcc\x66\xff\x62\x08\x3b\xf3\x4b\xfd\xe7\xf7\xfa\xcf\x57\xfa\xcf\xd7\xfa\xcf\xc1\xbe\xfe\xab\xe8\xc2\x9a\x8d\x34\x34\x25\x0f\xcc\xdf\x87\xe6\xef\x23\xf3\xf7\xb1\xf9\x6b\x7a\x3b\x30\xdd\x1d\x98\xfe\x0e\x4c\x87\x07\xa6\xc7\x87\xa6\xc7\x87\xa6\xbd\x87\xa6\xbd\x87\xa6\xbd\x87\xa6\xbd\x87\xa6\xbd\x87\x5f\x56\x23\xb4\x78\x6c\x86\xf4\xd0\x74\xf1\x10\xba\xd0\x84\xce\xfa\x06\xdb\x57\x44\x31\x90\x4a\x90\x21\x6e\xba\x8a\x19\xcd\x23\x33\x9a\x47\x66\x34\x8f\xcc\x68\x1e\x3d\xaa\x7a\x0d\x44\x39\xd3\xf5\x23\x33\xca\x47\x66\x94\x8f\xcc\x28\x1f\x99\x21\x3d\x32\xb3\x7e\x64\xfa\x79\xbc\xbf\x6e\x88\xa1\x80\x19\x0c\x52\x75\x1e\x22\xb0\xe9\xfd\xb1\x19\xed\x63\x33\xda\xc7\x66\xb4\x8f\xcd\xa8\x1e\x9b\x51\x3d\x36\xa3\x7a\x6c\x46\xf5\xf8\xab\xaa\xe1\x06\xe2\xd9\xb6\xcd\x88\xbf\x30\x90\xf9\xc2\xf4\xf5\xc5\xc3\xe1\x95\x7e\xcd\x1e\x62\xf4\xb7\xbf\x01\xfa\xe9\x13\xe8\xa1\xf5\x9f\x86\x07\xa8\x2e\x05\xb9\xd3\x66\x3b\xef\x6d\x70\xda\xa8\x7f\x2a\xf3\x00\xb7\x9d\x6b\xeb\x74\x41\xc8\x0c\x3c\xe4\x2d\x9d\x6b\x37\x6c\x5c\xc9\x41\x29\x3b\x83\x2d\x5c\xc4\x85\x23\xfa\x0a\x3f\x6e\x34\xb8\xa9\x39\x9b\xad\xaa\xd7\x73\x55\xed\x72\x63\xfd\x83\xab\x5d\xc2\x8d\x3c\x8a\x92\xd9\x03\x90\x4e\x10\x46\x39\x91\x1b\x1d\xc4\xdd\x8d\xf4\xe1\x5c\xc7\xdd\x4c\xd9\x7e\x4b\xd1\xef\x9f\x49\xf4\xf9\x6e\x7a\xfc\xfc\xd5\xa3\x8b\xac\x55\xf4\x69\xf0\x6e\x0a\xb7\xbf\xd0\x3b\x94\x5c\x18\xdc\xf5\xd0\x60\xfd\x82\x5b\xa1\xf7\x93\xaf\x6c\x03\xda\xd7\x5f\xea\x2b\xef\x52\x42\x35\xc1\x1f\xce\x72\x3a\x9b\x11\x51\x55\xfb\xcf\xe3\xa5\xff\x98\x3e\xae\xf5\x19\x56\x6c\xde\x8f\x97\xfc\xf4\xbb\x9f\xe4\xe5\x1a\x55\x84\x3b\x25\x0a\x27\x06\xd4\x58\xb0\x5b\x4b\x2c\x5b\x4a\x46\x77\x20\xd8\xdc\x4c\x9e\xb9\xa1\x20\x73\x4b\xa1\x45\xf3\xb2\x5b\x2b\x22\xea\x69\xc1\x58\xb6\x90\x68\x2a\x31\xe6\x1f\x23\xaf\x08\xf2\xeb\x82\x0a\x23\x39\xdc\xa5\xec\x72\x13\x09\x45\xbf\x11\xbf\x9c\x6b\x11\x43\xdf\xde\xb7\xc8\x2a\x2d\x72\xcc\x5a\xb9\x65\xbd\xba\xc2\xd3\xea\x35\x4e\xbf\xaf\x70\xed\xce\x4d\xeb\x14\x1e\x1b\x9d\xc2\x7f\x76\xe2\xbf\xe1\x4e\xfc\xe7\xd7\x2d\xfc\x2b\xee\xd5\x1b\xec\xcf\x6a\x83\x3b\x07\xdb\x5a\x24\x34\x12\xe0\x55\xea\x84\x50\x24\x3b\xd8\xb7\xb2\xac\x95\x68\x6b\xf9\x07\x95\x30\x6a\xb6\xc3\x77\xe1\x6e\x72\xfa\xc8\x7f\xa8\xe2\x21\xd4\x32\x54\xaa\x03\x35\x6e\xfd\x92\x54\x23\xf0\x30\xd4\x28\x54\xd9\x16\x93\x87\xf5\x0c\xc0\xea\xe1\x66\x05\xc4\xcd\x14\x0d\xb7\x55\x11\x1c\x28\xf6\xbb\x29\x32\x38\x4b\x27\x83\x49\x11\xb2\x2a\x83\x61\x5d\xbd\x11\xae\xf5\x17\x07\x43\xdc\x6e\xce\xf3\xc0\x34\x85\x86\x9e\xeb\xf4\x3a\x1e\x7e\xb1\xaf\xa5\x73\xad\x86\xd0\x7f\x3d\x05\x8d\xb5\xa8\x38\xce\x4e\x8f\x74\xb5\x6d\x55\x15\x4e\x78\xff\xe2\x0b\x83\x94\x66\x8d\x37\x4b\xdf\xf8\x61\x53\x3e\xdf\x20\x98\xa9\xbd\xed\x49\x2e\x5b\x0a\x68\x57\xca\x48\x4e\xec\xca\x89\x8c\xf2\xea\xc9\xbe\x7d\x9b\xdf\x7c\xab\x1f\x7e\x67\x71\xcc\xd7\x3e\xdf\x87\x67\xed\x35\xb8\xc6\xcd\xf0\x47\xd5\x3b\xf7\x3a\xc1\xe9\x74\xaa\xbc\x80\x3a\x1e\xa2\xee\x01\xea\x7b\x15\xcd\x62\xaf\x56\x68\x1f\x95\xd5\xce\xd0\x62\x1d\x9d\xc4\x55\x51\x7d\x10\x74\x3a\xbb\x07\x41\xd7\x3a\x59\x5b\x42\x58\x8f\x1d\xda\xd1\xfa\x44\xed\x4c\x38\x54\x62\xf7\xa2\x1d\x76\xab\x67\x87\x62\x9a\x80\x64\x7f\xd0\x26\xc9\x58\x48\xac\x6b\xcd\x6c\xee\xa6\x43\x29\xd3\x86\xc9\x6f\x19\xb3\x5f\xf3\x30\x96\xbd\x42\xf2\xb9\x12\x7a\xb2\x33\xfd\x10\x27\xc1\xbb\x07\x49\xff\xe0\x11\xb8\x53\xfb\x40\x2e\x9f\xf1\x31\x18\x54\xd0\x42\xcd\xb6\xbd\x86\x17\x59\x6c\x5a\xb1\x16\x87\xa4\x67\x4f\x93\x4e\xa7\x7b\xb0\xab\x1f\x81\xe8\x04\x67\xb2\x1f\xd4\x48\x0e\x63\xd2\x33\x56\x30\x3d\x60\x5e\x62\xa9\xc7\xe3\xa7\x4f\xb9\xca\x08\x2a\xe2\x96\x62\x5e\x75\xf7\x12\xb2\x95\xe0\xfb\x16\x7c\x6a\x7a\x66\x88\xab\xd5\x60\x98\x18\x09\x78\x3f\xc1\x2c\xed\x1e\x38\xeb\x63\x9a\xee\x7f\x43\x2b\xeb\x63\xba\xb7\x97\xd0\x49\xec\x9e\x1c\xfd\xba\xc8\xf2\x58\x0c\xe8\x10\x93\x24\x59\xb2\x94\xda\xa7\x01\x46\x4c\x7e\xd2\x3d\x38\x14\xf6\xf9\x02\xc3\x07\x49\xdf\x19\xc7\x63\x51\x06\xeb\x0d\x26\xfe\xf6\xb5\x85\x33\x37\xfe\x75\x41\xc4\xa5\x9e\x00\x17\x31\xfa\xff\xb5\x10\x4d\xb3\x31\x2a\xe2\x49\x55\x8b\x5d\xb4\x47\x7a\x0b\x46\x7f\x5d\x90\xa3\x31\xf8\xaa\x96\x1a\xbf\x62\x30\x34\x6c\xba\x2b\xd0\x2c\xd0\x40\x5c\xed\xeb\x80\xaf\xa9\x9c\x60\xee\x7b\x3a\xc8\xda\x0a\x1a\x5e\x6c\x1b\x97\x0a\x6b\x6b\x6f\xd3\x8f\xe3\xee\xd4\xda\xdc\xa0\x27\x5b\xbf\xd6\x17\xf7\x75\x50\x39\xde\x14\xaf\xa2\xc0\x79\x8b\xcf\xdb\x6b\x11\x60\x77\x76\xdd\x99\xb2\xca\x3e\xa8\xde\xa9\xbf\xd7\xbd\xf7\x77\xc2\xe3\xff\x28\xcb\xfe\xef\x50\x96\x4d\x37\x2b\xcb\xde\x4e\xf7\xbe\x58\xf0\x71\xb1\x56\x59\x86\x30\xa2\xe3\x8b\x4a\x62\x01\xb9\x92\x16\xf2\x94\x5f\x98\x0b\x4c\x4f\x6b\x10\x08\x7b\x56\x30\x9c\xd7\x85\xa0\x50\x94\xf2\x4d\x80\x9c\xd0\xbb\x4e\x3a\x5a\x67\x11\x71\x70\x80\xd1\x22\x07\x66\xef\x4b\x7c\xb0\x05\x87\x6b\xc4\xcb\xae\xe6\x70\x1f\xe1\x01\xb2\xc4\x1a\xd9\xab\xa2\xc7\x78\xbf\xd5\x82\xad\xde\x06\xf4\xfa\x7b\x2d\xb7\x3c\xc6\x83\x47\x5f\x81\xec\x54\xdd\x2e\x12\x23\x18\xbb\xeb\x3d\xd5\x9b\x3e\xe5\x7d\x11\x48\x57\x55\x1c\x35\x92\x7c\x31\x9a\x16\x32\x83\xb8\x75\x96\x09\x86\xd3\xf8\xcd\xbc\x2e\x39\x79\xd5\x66\x7c\x51\x10\x43\x76\xaf\xa8\x05\xc2\x56\xfd\x3a\xef\x6b\x8f\xb3\xff\xaa\xf1\x5b\x8f\xdb\x89\xb0\x35\x63\x92\x9b\x5c\xf6\x01\xe0\xf6\x31\xca\x29\xfc\x82\x5b\x91\x2d\x17\x0e\x24\x13\x3d\xba\xc7\x56\xde\x54\x72\xa6\xd5\xa8\x28\x8e\xfd\xea\x56\xba\xdd\xaa\x82\x99\xc5\x70\x1d\x70\xbe\xf4\x80\xe0\x75\xb3\xbd\x29\x8d\x77\x99\xb8\x8f\x51\x31\xcf\xa0\xf1\x83\xc7\x18\x09\xad\xee\x3a\x5d\x48\xc9\x5d\x62\x26\x68\xd6\xcd\x8d\x6a\x4b\xbf\x9f\x8a\x6c\x20\x14\x5d\xe4\x0a\xec\xd4\x75\xba\xa7\x92\x19\xe8\xa2\x71\x26\xb3\xae\x5d\xc0\xae\xf5\xa4\x6c\xe3\x5f\x79\xb3\x8e\xdc\xbf\xff\xf7\xff\xf1\x3e\xa1\x9d\x47\x57\x5f\x7b\x6a\x80\xb9\x75\x79\x78\xb3\x8b\xe0\xfa\x55\xf0\x17\x7e\x7b\x03\x75\x22\x6b\x5a\x51\x57\xe8\xd7\xd4\x0f\x07\xb7\xbf\x00\x76\x52\xe4\xc1\x7e\x20\x45\x6e\x7f\x07\xbc\x05\xec\x40\xe8\x5c\x13\xa7\xec\xb1\xb7\x19\x1f\x99\xf9\x79\x36\x11\xf6\x1a\xfe\xeb\x2b\xb7\xe4\x95\x17\xef\x21\x66\xb6\x63\x98\x4f\xcf\x2d\xde\x1c\x18\x65\xd1\x56\x18\xb2\x15\xda\x7c\x7d\xad\xe1\xc3\x40\x0e\x30\x02\xde\x1b\x6d\xa2\xde\xed\xec\xba\xa9\x82\xb2\x85\xe4\x8a\xaf\xcb\x09\x3c\xac\xe1\x93\x49\x98\x23\x84\xb1\x63\xad\x65\x64\x73\x2a\xe1\x84\xaf\xf2\x0e\xbe\x54\xb0\x24\x79\x3e\x9a\x92\xd1\x07\x84\x41\x6f\x70\xe5\x01\xb5\x4e\x9a\x58\x7b\x4c\x1d\x7c\x89\x1f\xe2\x8a\x3a\xab\xb3\xf5\xd8\x5d\x2c\xab\x31\x00\x21\x19\x71\x26\x85\x3a\xd4\x8d\xc2\x4f\xe7\x7d\x51\xb7\x16\x79\x65\x7a\x05\xa1\xe8\xbd\xbc\xcc\x49\xd5\x4e\x70\x8c\x57\x16\x3b\x97\xa7\xc4\xd7\x72\xba\xe2\x95\x72\xbb\x95\x6a\x42\x99\x8a\x75\xd0\xfa\x47\x0d\xd1\xc7\xd6\x6c\x06\x85\xc7\xdb\xc4\xc8\x2e\xa0\xa3\x6c\x3b\xff\x4e\x81\xe1\xd0\xca\xcb\xb6\x7c\xbd\xd2\x35\x25\x9d\x56\x49\xb7\x1f\xa8\x1f\x9c\x14\xb3\x46\xe1\x57\xab\x74\xe0\x5b\xab\x48\x2e\x3c\x38\x16\x8d\xd3\x77\x1b\x4a\x1a\x94\xd9\x72\x7b\xaa\xfd\xb1\x28\xba\x74\x64\xce\x92\xb6\xbe\x36\x28\xb3\x14\x25\x1d\x53\x75\x3c\x14\x44\xf1\x1f\x88\x71\x30\x31\x01\x0f\x20\x60\x5f\xe2\x5b\x9e\x2c\x58\x4e\x40\x21\xad\xaa\x2c\x8c\x3b\x14\xd4\x95\x22\x1b\x7d\xe8\x66\x60\x51\x85\x11\xc9\xd4\x5a\xde\x95\x5a\xcc\x4a\x65\x56\x3d\x86\x27\xa9\x76\xea\xdd\xe9\xe8\xbf\x3d\x96\x7d\xa4\x67\x99\xe4\xe2\xb0\x9e\xd0\x5b\x14\x44\x3c\x3d\x83\x07\x64\x08\xcf\xd3\x89\x53\x8f\xa0\x57\xef\x8f\x5e\x44\x28\x79\xd2\x3d\x58\xad\xbc\xe4\x63\x41\xc7\x84\xc9\x07\x90\x03\x9a\xb8\xd9\x35\x9c\x67\x86\xdf\xbc\xae\xa0\xab\x7d\x17\xb5\xef\xfc\x0e\x9c\x6f\x8e\x8c\xdf\x1a\xc0\xfd\xef\xb9\x5a\x34\x2b\xa1\xd8\xac\x93\x3c\x2b\xe4\x91\xe6\x47\xb1\xaf\xd4\x53\x60\x37\xea\xa8\xc0\x1f\x20\xb9\x90\xaf\x48\x56\x2c\x44\xe8\xc3\x73\xf1\x4f\xed\xc3\x73\x2d\x85\x8b\x41\xf5\xb3\xd6\x7b\xcf\xc8\xdc\x48\xc1\x59\xd4\x80\x8e\x55\x82\x09\x62\xfd\x80\x26\xcd\x42\x95\x72\x4e\x49\x9c\xd5\x4b\xa5\xb5\x05\x31\xd2\xfa\x2e\x94\xd8\xc7\x82\xfb\x81\x8f\x40\xb7\x98\x9d\x4e\x6c\x3d\x17\x78\x8b\xd2\x3b\xa7\x63\x39\x6d\x6b\xde\x9e\x0e\x38\x6c\x26\xb1\x41\xf5\xb4\xf7\x83\xde\x54\xce\xf2\xf7\xd9\x84\xc4\xbf\x40\x4b\xfd\xe8\xb3\x25\xd9\x7b\xf8\x45\x39\xbf\xf8\xc5\xf9\x67\x68\xaf\x80\x4c\x85\x83\xfd\xfd\xff\xfa\x06\x69\xc8\xd7\xcf\x08\x0d\xf0\xdd\x2a\x62\xfc\x1d\xc2\xeb\x10\xf9\xaa\x67\xef\xc8\x5a\xad\x10\x2a\x3d\x59\x2c\x26\x78\x20\x87\xc9\x52\xab\x6d\x3b\x9d\x5d\xa7\xed\xf6\xb6\x43\xa7\x73\x4b\xb4\xd0\x10\xc7\x08\x59\x5f\x4e\x55\xdb\xa9\x2c\xeb\x47\x84\xd1\x3f\x2e\x27\x9c\xe9\x94\xbe\xc4\xea\xf7\x9f\xd5\x11\xce\x64\x5f\xc0\xd7\xcf\x84\x9e\x4d\x65\x9f\xc1\xc7\x7b\xfa\x1b\xe9\x53\x9c\x53\x46\x7e\xd0\xe9\x1c\xd2\xbf\xcf\x66\x34\xbf\xec\x67\xa5\xa1\x8d\x0a\x7e\xcf\x8c\xba\x5f\x63\x3d\x49\x76\x42\x24\x48\x7f\xf9\x6c\x29\xcb\xe8\xb3\xa5\x50\xff\x31\xf5\x1f\x2d\x1f\x7c\xb6\xe4\xea\x57\x56\xfe\x52\xfa\xb2\xa4\x51\x98\x9a\x80\x1d\xa4\x27\xc1\xff\xbc\xf5\x32\x61\xdd\x13\xe9\x54\xd5\xf7\x53\x29\x05\x3d\x5d\x48\x12\xb7\x4a\x21\xa1\xff\xa0\x79\x26\x0a\x72\xc4\x64\x2c\xf1\xc1\x7e\xb2\x43\x5a\x14\xe1\xda\x17\x0f\x61\xd2\xb8\xd4\x31\x7e\xb0\xdc\x63\x41\xdd\xba\xa6\x46\x1b\xf0\x46\x18\x20\xb4\xad\x9d\x51\x7f\xb3\xa4\x2c\x3d\x4e\x21\x26\xe1\xb5\x02\x24\xb6\x68\xff\x6d\x61\xf3\x84\xb6\xad\x03\x0e\x97\x1a\x8d\x8b\x06\x07\xd8\x5d\x0f\xb0\xf5\x7b\x92\x2d\xae\x1d\xec\x5d\x49\xd4\x06\xbf\xdd\x03\x05\xf1\xaf\x60\xed\xcc\xdd\x83\xd6\x80\xb7\x94\xb5\xda\xf6\xef\xf2\x8c\x7d\x88\xdd\xaa\x02\x1d\x4e\x02\xff\x44\x6d\x30\x1e\xac\xcd\x31\x4a\xfd\xee\xc1\x10\xdc\x57\x6d\xd8\x44\x79\xb8\x8a\xa1\x51\x46\x2c\x1b\xfb\x0f\xde\xb4\x22\x1d\x1d\xc7\x8b\x0c\x79\x78\xc5\x3e\x8d\xad\x5f\x80\x0d\x45\x3c\x6a\x84\xeb\x17\x60\xfa\xb1\x69\xcb\x01\x50\x5b\xf1\xa4\x04\x0f\x3e\xb1\x03\xfd\x93\xf4\xf1\x57\x9d\x8e\xfb\xfc\x36\xfd\x7a\x7f\xb5\x7a\xf4\x30\x58\x1d\x95\xdf\x58\x9b\xb2\xac\xa1\xba\x77\x4d\xd5\xe2\x7b\x9f\xf4\x74\xf8\x9d\xa7\xf2\xb0\xfa\xa9\x66\x1d\xbc\x9e\x4d\xca\x12\x2f\xd2\x71\x9c\xfb\x6a\xf9\xf0\xd0\xbf\xbd\x63\x93\x5a\xf3\xbe\x96\x6c\xab\xdb\x89\xb5\xb5\x13\x9c\xfb\x37\x06\xb5\x7e\x1a\x5c\xf9\x56\x17\x14\x9b\x9b\xd8\xdc\x63\xa0\x81\xc3\x03\x7e\xcd\xde\x82\xea\x9b\x7b\xf2\xe5\x19\x3c\xc8\xae\xd9\x91\x5f\x7b\x9b\x7e\xaa\x1b\x9e\xe2\x46\x3d\x55\x37\x3c\x41\x5f\xb9\x7f\xc3\x33\xdb\x78\xc3\x33\xc5\xb3\x1b\xde\xf0\x5c\x79\xa1\xb3\xa5\x4b\x0d\x5b\x6c\xc4\xd9\x68\x21\x04\x61\xa3\xcb\xee\x98\x8c\x38\xb8\xb2\x6a\xcd\x6e\x8b\x6f\x89\x69\xcb\x85\x91\xe7\x7b\x17\x8f\xf1\x14\x4f\xf0\x1c\xcf\xf0\x47\x7c\x86\x4f\xf1\x25\x3e\xc1\xe7\xf8\x05\xbe\xc0\x6f\xf0\x7b\x7c\x8c\x5f\xe1\xb7\xf8\x29\x7e\x86\x3f\xe0\x77\xf8\xef\xf8\x39\x7e\x8d\x8f\xf0\x4b\xfc\x3d\xfe\x0d\xff\x84\xbf\xc3\x3f\x54\x97\x4d\x7f\xfe\x57\xf2\xa0\xfb\xeb\x3f\xe8\x66\xec\xe7\xff\xdc\x8c\xfd\xdf\x71\x33\xf6\xd9\xe6\x9b\xb1\xd9\x6f\x97\xa7\xc5\x57\x0f\xde\xb7\xdf\x8c\x59\x7b\x4d\x84\xd1\x7c\x71\x9a\xd3\x91\xb6\x2d\xf4\x6f\xc6\x9e\x7a\xc6\xa7\x08\xa3\xea\x57\xd3\x04\xfd\x75\xd3\xec\xf2\x7d\xcd\xa2\xf0\x3b\xdf\x46\x15\x61\x74\x6c\xef\xa6\xcd\x25\x9d\x79\x50\x5f\x5d\xa1\x35\x8d\x3f\x1b\x96\xa4\xfe\xd5\x5b\x9b\xbd\xe5\x46\xcb\xcf\xab\x5e\x52\x7a\xc6\x92\x8d\x1b\xc0\x35\xa6\x8f\xad\x46\x93\x35\x53\xdd\x86\x41\x6e\xcd\x12\x33\x34\x9f\xac\x59\x4d\xde\xda\xa0\xd8\xb7\x14\xad\xbf\xdc\xac\x99\x6a\x36\x6f\x47\x7d\x7b\x5f\xcf\xd2\xd5\xb7\x0a\x6d\x33\xeb\x6c\x98\x06\xaf\x37\x57\x5e\x6b\xef\xdc\x6e\x32\x5c\xb3\x47\x6e\xb1\x20\x6e\x31\xa5\xad\xd9\xce\xb6\xd9\x99\xb6\xd9\x48\xaf\xbb\xb9\xfd\x0a\xa3\xd3\xac\xa0\xa3\x6e\xb5\xa3\xc2\x77\xe6\x37\x1d\x7a\xab\x7d\x73\x63\x3e\x81\xa5\xb2\x35\x43\xde\x6a\x92\xfe\x6a\x36\x27\x6c\x34\xc1\x9b\x5e\x68\x36\x07\x38\x6c\x5a\xd1\x3e\xfe\x7a\x68\x6f\x0e\xc2\x87\xa3\x9a\x8b\xd2\x83\xdf\x68\x79\x5a\x7f\xe8\x69\x2d\x49\x6f\xfe\xe0\xd3\xd8\x81\x5a\x6d\xf7\x81\x67\x1b\xfa\xb0\xba\xb4\xf1\xd0\x7a\x1a\x98\xc1\x57\xa8\x2f\x48\xb1\xc8\xa5\xf7\xeb\x19\x5f\x00\xbe\x1a\xda\x85\x30\xa2\xc5\xd3\x91\xa4\x1f\x09\xc2\xfe\xe5\x06\x46\x79\x56\x48\x4d\x22\xc9\xd8\x24\x59\x9d\x8c\xaf\x84\xaf\x6e\xab\x2b\x08\x79\x83\x19\x36\x5e\x01\xfb\x49\x76\x78\xcd\x24\x3d\x4e\x2f\xdd\x0e\xd8\x4b\x72\x23\x1f\xd6\x5f\xfb\x9a\xfb\x99\xaa\x72\x7d\x2e\xbe\xb5\xed\x81\x77\xbd\xed\x66\x58\xd5\x3d\x71\xa7\xcf\x53\x97\x59\xdd\x65\xd7\x6d\xb3\xe1\x39\x78\xdb\xa5\x41\x68\x0e\x71\x50\xbb\x67\xba\xfe\x75\xa2\xe7\x37\x02\x0f\xdc\x59\x05\xf8\x76\xf0\xe5\xa6\x7b\xfe\xd0\xf2\xf8\xa1\x67\x77\xfe\xc8\x7b\x6c\xec\xc3\x16\x45\x1b\xae\xd1\xba\x99\x29\xe7\x5f\xef\xdb\x4b\xb1\xb1\x3d\x09\x4e\x2f\x91\xb5\xed\xf6\xf3\xa9\x3d\x16\x8c\x01\xb7\x9f\x67\x6e\xe6\x8d\x49\x77\x23\x27\xf7\x1a\x7d\x14\x64\x57\x27\x88\x31\xff\x36\x99\xda\x08\xa0\xbe\xfd\x1f\x7d\x31\xf4\x0c\x03\xac\x05\x35\xdc\x9d\x19\x1f\x9c\xda\x66\xbc\xba\x57\x04\xd3\xf1\x96\xfb\x35\xff\x12\x3d\x34\x9c\x78\xf4\x75\x03\x4f\x5c\xf7\x5f\x0d\x31\xda\x47\xf5\x6b\x65\x73\xdd\xf5\xa5\xb7\xd3\x8c\x57\xdd\x37\xe1\x2e\x7a\xbc\x5f\xbf\x22\xfb\xfd\x0d\xea\xb4\xf4\xf3\xbe\xb6\xb1\x1f\x1f\x6c\xd1\xd1\xd5\x95\x82\x9e\xfc\x57\x23\x43\x67\x37\xbe\xa1\x97\x6b\x57\x98\x13\x31\xe1\x62\xf6\xde\xdc\x76\xae\xa1\x13\xb5\x16\xbe\xda\x70\x33\x69\x36\xda\xda\x0b\xca\xaf\x6a\xf7\xa8\xcd\x37\x0e\x6d\x15\xaa\x7b\xd5\xaa\x3c\x18\x77\x79\xa4\x41\x9d\xd4\x15\xeb\xd5\xf2\x44\xe0\xa1\x42\xa5\xca\x42\xc9\x6d\xc8\xdb\x9c\x40\x2d\xdd\x3c\x7e\x58\x7b\x89\xd0\x7c\x80\x70\x03\xdb\x88\x80\xa0\xa9\x6e\x8d\x0b\x9c\x2b\x58\xd3\x26\x0b\xbe\x81\xf5\xb5\xc6\x75\x57\x3d\x35\x6a\xb5\xb1\xab\xb8\x7e\xdf\x34\x6f\xdd\x83\xab\x6d\xde\x51\xd9\x65\x0b\x5e\xcb\xd4\x5e\xf8\x28\xe2\xf4\x52\xcf\x31\xb2\xce\x2e\x7b\xbd\xd0\x11\x87\x7d\x7d\x53\x7b\x9c\xf3\xfb\x8d\x8f\x6c\x1a\x78\x16\xbc\x08\x7a\x54\x2f\x64\xef\xf0\x37\x3f\xcc\xb1\x0f\x82\xc0\x47\x52\xeb\x94\xb7\x7f\x56\x52\x37\x0c\xfa\xbd\xb3\x4d\xb2\x6f\x98\x86\x0d\x6b\xaa\x16\x9b\x1f\x28\x79\x85\x2b\x88\x83\xba\x21\xd1\x7a\x43\x23\xd3\x59\x78\xf8\x3e\xe3\x4c\x5a\xff\x1f\x57\x1c\xbe\x1e\x0b\x7e\x93\x43\xd7\x56\xaf\x9f\xba\x18\xd9\x87\x44\xd6\x0a\x4b\xed\x9f\x3b\xdb\xfa\xbe\x1f\xac\xaf\x2d\x19\x50\xa8\xf2\xb0\x3a\xd8\x42\x92\xa0\x05\x28\x67\xbf\x69\x1f\x4e\xdd\x19\x85\xd8\x77\x14\x62\xc3\xb6\x5e\xff\x1a\xf2\x6a\x1b\xda\x75\x2f\x1f\xdb\xc9\xc0\x35\xe4\xed\xd0\x6b\xca\xc3\x83\x9b\xed\xb4\x6b\xed\xea\x2d\xb6\x65\xdb\xee\xf7\x9e\xf5\x55\x87\xd6\xda\x4d\xb4\x1f\xd8\x98\x3d\xf2\x0e\xe1\xd9\xa2\x90\xef\xa7\xfc\x3c\xd4\xb7\x5c\xcf\x79\xcd\x76\x47\xd3\xc3\xfd\x3a\x1e\x6a\xf8\x77\x67\xb6\xd3\x5b\xe1\x9f\x8f\x81\x5f\x7b\x08\xd8\x78\x98\xea\x5b\x49\x56\xcc\x46\x35\xf3\xea\x85\xdc\x15\x50\xfd\x7a\x8d\x35\xdf\x1a\x2b\xc6\x36\xa8\xbf\xe6\xa6\xdf\xe2\x93\x80\xfc\xe0\xeb\x3a\xc8\x19\xef\xea\x37\xd0\xc5\x27\x00\xfb\x57\x0e\xec\x6d\xef\xa8\x9b\x90\x6f\x94\xba\x06\xf0\xbf\xba\x1e\xf0\xaf\x84\xd4\x57\x75\x48\x55\xd6\xed\x77\x05\x9e\x2f\xcc\x09\x74\x60\xad\x67\x37\x98\x69\xfa\xe2\xf8\x60\x3d\x27\x55\x53\xa5\x81\x86\xf3\xc8\xbd\x46\x68\x51\x84\x39\x0a\xd9\xe6\x97\xaf\xa6\x20\x6d\x03\xd3\x36\x2c\x8f\xf9\x13\x6a\x10\x10\x72\x30\xf0\x88\x59\xa0\x90\xb0\x23\x69\x51\x03\x1d\x7c\x59\x5f\x9e\x00\x5a\x30\xf0\x6b\xf2\xd4\x51\xb4\x96\x8d\x71\x4f\xc0\x9b\x4c\x4c\x1b\x03\xf2\x25\xfe\xfd\x15\x4c\xcc\x17\x21\x0f\xb3\x96\x8b\xd9\x68\x19\xdc\x44\x61\x78\xe6\x7c\xeb\xe3\xfa\xb1\xdb\xb5\xb5\xe7\x27\xce\x94\xfc\xf1\xf6\xdb\xf2\xf1\xb5\xb8\xb5\xf5\xbe\xc1\xda\x3d\x82\xdd\xec\x45\xb2\x76\x09\x66\xac\x37\x7d\x73\xce\xc0\xce\x33\xb0\xe0\x04\xf9\x85\xfc\x0a\xcd\xb0\x51\x06\x55\x20\x4c\x11\x82\x7e\x6f\x6f\xce\xe9\xac\x37\xff\x98\x92\xf4\x49\xab\xad\x82\x9c\x12\x86\xff\xa2\xb2\xff\x18\x93\xca\xb6\x70\x9a\x15\xde\x25\xb3\xbe\x72\x22\x30\x4e\xa9\x43\x11\xfe\xb8\xb6\xc5\x51\xc6\x46\x44\xc7\xb9\xfa\xff\xa7\xb1\x33\xc7\x04\x6b\x55\x32\xae\xec\x31\x6d\x42\x51\x4f\xc8\xeb\x09\x8b\x7a\xc2\xa8\x9e\x30\xae\x27\x4c\xeb\x09\x93\x7a\xc2\xbc\x9e\x30\xab\x19\x86\x7e\xac\x7d\x9f\xd5\xbe\x4f\x6b\xdf\x97\xb5\xef\x93\xda\xf7\x79\xed\xfb\x45\xed\xfb\xa2\xf6\xfd\xa6\xf6\xfd\xbe\xf6\x7d\x5c\xfb\x7e\x55\xfb\x7e\x5b\xfb\x7e\x5a\xfb\x7e\x56\xfb\xfe\x50\xfb\x7e\xb7\x95\x61\x2c\xd8\xc2\x68\x5b\x58\x78\xe3\xfd\xab\xb5\x77\x6d\xa8\x4c\xb1\x09\x04\xd0\x37\x91\x1e\xb4\xd5\x9e\xa3\xcb\x26\xd9\x7d\x1b\x77\xf8\xae\xb4\xfa\xc0\xda\x50\xc3\xa4\xe9\x0f\x6c\x7d\x89\xd8\x92\xe6\xb3\x4c\xf0\x9f\xed\x58\x8c\xa3\xff\xb1\xbb\xd8\xfb\xbb\x89\x63\xd9\x28\xe1\xb4\x57\xf8\x79\xb3\xc8\x9c\x64\x92\xb2\xb3\x67\xd3\x4c\x20\xfc\xba\x9e\x4f\x2e\xe6\x14\xae\x94\xdf\x7b\x2a\xf4\xa3\x7a\x29\x3d\xed\x77\x70\x64\x21\xfc\xb2\x96\x5d\x29\xe2\xbf\xaf\xe5\x38\x65\xfd\x6f\xb5\x0c\x5f\x61\xff\x53\xbd\x52\x43\x7f\xff\x5d\xad\x44\x70\x69\xf0\x83\xc9\xb4\x6b\x08\x46\x38\x63\xb8\x73\xb5\xd7\xca\xbf\xfa\xe6\xcc\x06\x9c\x6f\x05\x9f\xd1\x82\xac\x29\x64\x21\x7a\x55\x29\x10\x92\xd6\x96\xd1\xa1\x03\xde\x99\x8b\x81\x6c\x34\x25\x08\x2f\xcd\xc1\xdf\x1f\x0c\x6d\x88\x10\xf5\xb3\x02\x48\xdf\x8b\x51\xa0\xbe\xcb\x7a\x94\xb3\xca\x5c\xb4\x36\xca\x4e\xe7\x2f\xf1\xda\xcc\xa4\xd3\xb1\x96\xcc\xf0\xfa\xcb\xc6\xe8\x5f\x5f\xa3\x22\x9c\x7e\x6c\xd2\xca\xaa\x4c\xd7\x7f\x96\xe5\xf9\x69\x36\xfa\xe0\x9b\xb1\xd6\x1a\x72\xd7\xfb\x8d\xf8\x6c\x3a\x00\xa2\x06\x97\x17\x3b\xe5\x8c\xc8\xa8\xce\xfa\x6c\xf4\x40\x51\x2f\xec\x9b\x56\xd6\xf3\xa0\xf5\x36\x69\x32\x6e\xf1\xe2\xd0\x56\x6e\xb5\xaa\xb1\x5b\x9e\x90\xac\x63\x0c\xfa\x52\xd3\xc6\x71\x07\x25\x0f\xd1\xf1\xe5\x9c\x44\x92\x9b\x06\x50\x7f\x4d\x41\xe8\xa4\x2e\x20\x6c\xec\xa7\x5e\xf8\x10\xbd\xe6\x91\x41\xc4\x68\xc2\x17\x6c\xec\x77\x56\x2f\x6d\x4c\xb5\x6b\x57\x92\x1b\x3b\x6c\x94\xf6\x57\xa4\x91\xa9\x3b\x68\x93\xb6\xe3\x30\x14\x8d\xa1\x27\x9d\x8e\xeb\xad\xda\x27\xc6\x66\xb4\xd3\xd9\xdd\xad\xc3\xcd\xa5\x05\x60\xf4\x5a\xf1\xef\xee\x82\xc1\x54\x42\xe8\x95\x23\xf1\xdb\xe8\x74\xe2\xc6\x20\x0c\x04\xea\xd4\xcd\x0c\xfb\xc9\xbe\x46\x7b\xd3\x4a\x5c\x99\xf5\x36\x66\xf8\x64\xbf\x66\xf3\xab\x4b\x58\x9b\xde\xbf\xc6\xfe\x51\xa5\x89\x8f\xe9\xdb\xd0\x9b\x64\xc7\xd5\x6f\x21\x51\xb6\x94\x9d\x97\xf9\x34\xfe\x51\xda\x2a\x54\x23\x6c\xae\x4a\x60\xc9\xdf\x56\xd9\x4c\x78\xc7\x8b\x7c\x74\x62\xa3\x18\x7a\xdd\xe3\x7a\xbb\x3b\x57\x34\x9c\x3a\x42\x4b\x1c\x9d\x0d\x1a\xdc\x40\x71\x31\x29\x4b\xbf\x79\x53\x05\x16\xc8\xfc\xae\x11\x8b\xfa\x61\x7d\x68\x57\xa1\x96\xee\x5b\x11\xf3\xb0\xa8\x9f\x96\x28\x61\xc0\x43\x07\x40\x2a\xd7\x25\x84\xa5\x19\xa9\x24\x17\x95\xc6\xc7\xc0\xc4\x10\x21\x4d\x83\xd7\x0d\xd4\xd2\xe8\xc6\x48\x6d\x46\xd3\xe0\x99\x8c\x3b\x9d\x8a\x79\x76\xa1\xc5\x9b\xc5\x74\x84\xaa\xbf\x36\xec\xb6\x55\xa3\xc6\x9a\xef\x16\xce\x7e\xf4\x6a\xd9\x53\x3e\xf4\xfc\xd3\xe9\xc8\x88\xb2\x42\x2a\x6e\x9e\x4f\xa2\x1f\xc9\xe5\x29\xcf\xc4\xf8\xc5\x47\x70\x4b\xe4\xee\xc6\xc0\xb1\x8e\x1a\x7e\xa7\x13\x3f\xfa\xca\x77\xb3\xb3\x5a\x3d\xde\xf7\xbf\x21\x46\x65\xfd\x41\x01\x76\x10\x23\xbe\x1f\xbf\xd8\x1a\xec\x83\xe9\x45\xeb\xbc\x20\xa7\x65\x62\xba\xc6\xa6\x99\x85\x7c\x66\x6c\x8e\xd4\xfa\xfb\x83\x2b\x1e\x5e\x60\x91\x86\x46\xfa\x3b\x2d\x0f\x16\x62\xd9\xf2\x5c\x41\xe0\xda\xe0\x48\x82\xf5\x2c\xec\x3b\x86\x06\xef\x6c\xed\xe2\xdb\xac\xed\xfb\xa2\xe5\x71\x83\xc1\xee\xdd\x96\x37\x0b\xab\xd5\xee\xc1\x6e\xfb\x6b\x86\xc6\xb8\x12\x4b\xaa\x20\xd6\xe6\xda\x62\x65\xdb\xbd\xa8\x81\xe1\xf5\xde\x53\x34\x47\xa0\xed\xf1\x8f\x66\x33\x32\xa6\x99\x24\x81\x61\xbe\x17\x18\x78\x24\x45\xfe\x23\xb9\x5c\xad\x48\x4f\x09\xcc\x3f\x92\xcb\x6d\x6b\x6e\x7a\x1d\xf0\xdf\x31\x49\x12\x18\x93\xb9\xdf\x3c\xbe\x9c\x53\x76\x76\x9c\x15\x1f\x7a\xe6\x5a\xd9\xc6\x27\x56\x73\x7d\xf4\x70\xd7\x7f\x4c\x10\x12\x8b\x8d\x10\xb4\x48\x69\xd7\xf1\xfd\x3c\x1b\x35\x90\x98\xb8\x47\x32\xc6\xa7\x96\x61\x60\x69\x61\x78\x40\xca\xce\x56\xab\x2b\x1f\x53\xc9\x7a\x74\xfc\x23\x23\x74\xe0\xdd\x7d\xff\x59\xc5\x06\x6f\x5e\xeb\x30\xe0\xbb\x7c\x21\x3e\xc1\xb0\x0e\xc2\x61\xa9\x5e\xc2\x51\x41\xbf\xcd\x41\x99\x83\xdb\x8d\xa8\x3a\x97\xd4\x3a\xd9\xd7\x30\xde\x99\x4b\x1a\xaf\x4d\x6c\x68\xfd\x3a\xaf\x61\x8b\xb6\x50\xae\xc4\x45\x3f\x7e\xe3\x0e\xb8\x70\x23\x98\xa3\x86\x4e\xe2\x3f\xb6\x24\x57\xa5\x5b\x84\xac\x70\xdf\x98\x1a\x1e\x5d\x22\xcd\xec\x9d\xb5\x6d\x99\x39\x18\x06\x2c\xdd\xdd\xc7\xeb\x8a\xba\xd0\x78\xcb\x0d\x03\x73\x10\x75\x0d\x1e\xe0\xd6\xa3\x3b\x95\xeb\x81\x57\x26\xbd\x91\x62\x6a\xe3\x38\xb9\x76\x6f\x49\x69\xa2\x76\x5f\x07\xd9\xea\x63\x70\xab\x17\x8c\x6b\x19\x62\x97\x79\xb0\xeb\xc8\x63\xf3\xf8\xaa\x59\xc3\xd4\x71\xc0\x9d\xe2\x74\x12\xb7\x68\xd1\xd6\x30\x02\x35\xd4\xa8\x0b\x87\x69\xe3\x81\x18\x71\x31\xa9\x6f\x2c\xea\x7e\x52\x49\xb7\x81\xb3\xb6\xe4\x8e\x41\xb9\x0a\x0b\x1c\x39\x21\x63\x73\x4c\x86\x04\xe6\x2f\x71\x35\xda\x6c\xec\xba\x8a\xaf\x3b\xa4\x72\x93\xf8\x4d\xd6\xe7\xb5\x6d\x91\xe6\x02\x39\xac\x6d\x30\x89\x6e\x53\x54\x9c\x89\x4c\x1c\x46\xaf\xa9\x63\x9e\x00\x34\x2a\x36\xd1\xa0\x5c\x3b\x63\xa7\x07\x69\x8e\x68\xed\x2a\xb7\x76\xd8\xe4\x7b\x4b\xaf\x08\x81\x50\x96\xfe\x1b\xb8\xca\x57\x45\x62\xc9\xac\xa7\x8e\x4a\x89\x1b\xb3\xe6\xff\x42\x7f\x84\xb5\xfd\xe8\x1e\x9b\x86\x8f\x41\xfd\x10\x98\x75\x8e\xb0\x3c\xb1\xbe\x17\x2b\x87\x89\x55\xcd\xd0\xce\xe8\x70\x5d\x46\xa3\xe1\xa4\x6f\x38\xc1\x6a\x6c\xb5\x27\x96\x42\xbb\x77\x0c\x78\xb0\xc0\xb5\xb5\xa1\x2a\xcd\x06\xac\x13\xc8\xd2\x29\x39\x2b\x67\x8a\x61\x95\x1d\x88\x47\x6f\xfc\x2b\xae\x56\xbb\x96\x19\xd9\x09\x89\x90\x69\xa5\xe5\x8d\xb8\x6b\x1f\x4b\xfb\xe8\x77\x8d\xbb\xc6\x5f\x06\x81\xef\x93\x74\x93\xbf\x95\xcf\x96\xd2\xb9\x6b\x2c\xd1\xf0\x17\x78\x91\xbc\xcb\xfc\x03\x8c\xa6\x20\x93\x19\xd7\x10\x9a\xea\x27\xb1\xb4\x12\x99\xe2\x95\xe8\x24\xee\x2a\x06\x92\xfa\xf5\x78\xca\xc2\x81\x3d\xcd\xf3\x18\x0d\xe0\x1d\xb4\xf1\x43\x05\x6d\x0e\x51\xd2\xa3\x92\xcc\x62\xaa\x3b\xe7\x7e\x23\x59\xca\x7b\x7c\x32\x29\x88\x3c\xe6\xf3\x2e\xab\x7e\xe3\x22\xcd\xf6\x6c\x9e\x7e\x03\xbe\x53\x3c\x61\x41\xc2\x1e\x73\x60\x9b\x1f\x7a\xbf\xd3\xa2\x1b\x16\xec\x67\xdf\x7a\xd9\x9d\x4e\xec\x17\xce\x92\xd2\x37\x71\xb4\x2f\xe8\xc3\xe5\x4d\xfd\x67\xb1\x5e\xe9\xeb\x3f\xa5\xf7\x2a\xc3\x96\x08\x8c\x25\x6d\xe7\x0a\x4e\x6b\x74\x24\x0a\x86\x08\x84\xc0\x00\x89\xea\x1c\x40\x83\x7d\x92\xa0\xe2\x8d\xdd\x3b\x28\x9f\xd4\x78\x9a\xe0\x4e\x27\xfe\x31\x5e\x93\xe7\x84\x93\x46\x8e\xb9\x82\x8a\x43\x4a\xee\x15\xb0\x6a\x54\x8d\xda\xa2\xa1\x46\xb4\xcf\x8e\xab\x5d\xbd\x23\x3a\x9d\x3f\xc6\x22\x39\x8c\xeb\x2c\xd3\xd5\x53\xf8\x24\x33\x10\x58\xb8\xb0\xd5\xcb\x75\x85\xd2\x54\xb8\xf3\xc6\x57\x62\x35\x38\xbf\xf5\xcb\x74\x6d\x46\x6d\xed\x08\xae\xee\x2c\x29\x93\xa4\xbf\x86\xdf\x96\xb8\x65\x1a\x62\xc3\xf0\x4e\xd6\x78\xc7\x75\x4a\x1c\x52\x86\x42\x99\xef\x7c\x78\xb3\x26\xe3\xb0\x26\xad\xfd\x34\x7f\x6e\x1b\xa8\xb9\x1a\xae\x97\x7c\xc1\x6c\xfc\xe5\xfe\xd7\x9b\xca\x1d\x67\xa7\xba\xd4\xc3\xdf\x6f\x6c\xee\xfd\x33\x5d\xcc\xa8\x82\x9a\x0d\x2c\x9b\x2e\x84\xcb\x66\xfd\x2b\x4a\xb9\x41\x6b\xe7\x05\x96\xf7\x6d\xf7\x93\x5c\x39\x44\xb8\xca\xc5\xb1\xdc\x20\xa0\xe3\xdd\x83\xb2\x2e\x0e\xc3\x08\x8c\xcf\x06\x69\x74\x2f\x9d\xce\x00\x1d\xbf\xf8\xef\xe3\xa7\xef\x5e\x3c\x45\x18\x1d\xbd\x7e\xfb\xd3\x31\x1a\xf6\x28\x1b\xe5\x8b\x31\x29\x62\x5b\xae\xc7\xf8\x18\xae\xcf\x93\xc3\x4d\xdd\xf6\xaf\x9a\x9d\x42\xe6\x4d\xc3\x6e\xd1\x70\x5d\x09\x08\x1f\xd6\x1e\x2a\xf9\xc0\x4e\x96\x6d\xaa\xb3\xa6\xab\x02\x73\x54\xd7\xd0\xf5\xa0\xdf\x3d\xc0\xe6\x60\xcd\xc6\x1f\x15\x69\xd1\x1b\x42\x71\x5f\xf6\x88\x25\xd5\x11\x1b\x8c\x8f\x25\x3b\xd5\x0c\x2a\x76\x8e\xfa\x13\x73\xec\x02\x35\xec\x2a\x09\xbd\x31\x48\x38\xd4\xea\x7b\x54\x7b\xdd\xc1\xbe\x8e\xac\x19\xd1\x63\xb5\x12\x2d\xa9\x3b\x24\x6d\x93\x9a\x0e\x65\xec\x74\xd5\xd0\xa8\x9d\x92\x37\xa1\x7e\x9d\xd1\xc4\x96\x77\xb4\xca\x6b\xfd\x55\x26\xfd\x26\x47\xae\x78\xd2\x2a\x88\x3a\x66\x4a\xe8\x5c\x6a\xb6\xe5\x4f\x1e\x63\x65\x02\x80\x78\x63\x37\x81\x26\x71\x23\xa1\x7e\xf4\x68\xf7\x16\x3b\x9e\x7a\x7a\x4d\xd4\x74\x8a\x99\x93\x32\xad\xaa\xc4\xd3\xbd\xe8\x84\x94\x94\x13\xca\xc6\x3f\x53\x39\x7d\x03\x1c\x88\x1e\x36\xa6\x6e\xe0\x3c\x18\xb8\x0b\x8c\xa9\xbb\x7b\xd5\x98\xc7\x71\x2d\x72\x26\x5e\x9f\xb3\xcd\xcc\x98\xe9\xa8\x1a\x60\x35\x41\x0e\x8f\xc3\xcb\xdf\x35\x54\x6f\x8e\xe9\xc5\x2c\x3d\xc0\x3c\xb5\x67\x80\x77\x3d\x8f\xb3\x4a\x0f\xb7\xf3\xdf\x20\x19\xc6\x59\x37\x7d\xfc\x95\xde\x21\x45\x6a\x5c\x2a\x4d\x04\x9f\xa9\xf2\xaa\x5c\x9c\x25\x3b\x32\x75\x97\x35\x61\x83\x87\x06\xa1\xda\x6e\xf9\xf7\x0a\xec\x2e\x94\x0e\x0e\x63\x96\xee\x63\x9e\x22\x94\xf4\x79\x5a\xe0\x4d\x7a\x83\x2a\xd9\xf7\x33\xcf\xf6\xda\x59\xe0\xb0\x46\x78\x99\xd3\xd6\x50\xd2\xdf\xdd\xd8\xb9\xbd\xb5\xb8\x49\x7f\xee\x0e\x42\x4d\x76\x2d\x60\xd2\x8d\x20\x6b\x02\x39\xe5\x26\x0a\x03\xe4\xd5\x10\x77\xdd\x78\x30\xc3\xbb\xfb\xc9\x8e\x23\xd7\xb9\xd3\xeb\xd5\xe6\x7d\x58\x4f\x6e\x12\xb5\x3c\xa9\xc3\xb3\x41\xe1\xf2\xc4\xdc\xe6\xac\x95\xef\x72\x4c\x92\x04\x5f\x2a\x6c\x8f\xf7\x31\xed\x49\x3a\x23\x7c\x21\x93\xf8\x80\x3c\x4a\x36\x00\x0b\xa1\x56\x98\x20\x54\x96\xf8\xef\xe9\xcf\xf1\x3b\xdf\xbd\x47\xd3\xa4\x65\xc0\x6f\xeb\x2d\xe6\xf9\xda\x4e\x2a\xab\x98\x41\x76\xdb\x5e\x5e\xb7\xf4\x12\x18\xd6\x0c\x8a\x1b\x77\xe1\xfc\x2f\x38\xf7\x3c\x60\xfd\x76\xd4\xe8\xb2\xd5\x56\x67\x90\xdf\x75\xc7\x2f\x1b\x1d\x87\xe6\x3f\x83\xc5\x6d\xa1\xf9\x7d\xbd\x87\xca\x82\x68\x30\xba\xbb\xe9\xec\x1e\xa8\xe9\xfc\x56\xef\xcc\x19\x25\x0d\xc6\x77\xdd\xd7\x4f\xf5\xbe\x7c\x3b\xa7\xc1\xf4\xae\x57\xea\xbb\xc6\xd4\x1a\xa6\x53\x83\xc9\x5d\x77\xfa\x43\xbd\xd3\xc0\x1a\x6b\x30\xbf\x2d\x72\xd4\x5b\xf7\x43\x60\xcc\xae\xf6\x27\xb4\xae\x72\x82\xdf\xf9\xce\x84\x5a\x7b\x31\xef\xfd\x07\x1f\x6f\xd4\x8d\xae\xbd\x4d\x3f\xd6\x11\xd3\xd9\x8d\xfa\xb1\x8e\x98\xae\xee\xa7\x72\xc4\x74\x7a\xa3\x9e\x2a\x47\x4c\x57\xf7\x55\x7b\x5f\x8a\x07\x97\x37\xea\xb2\xd6\xcc\x36\x3d\xdb\xc0\x25\x27\x37\xea\xd0\x06\x2e\xb9\xba\x1f\xfd\xe0\x6a\x70\x7e\xa3\x6e\xa0\xf2\xe6\x5e\x4e\x6c\x4c\xb9\xc1\x8b\x6b\x76\x61\x6b\x5e\xd1\x7e\xf8\xa6\x1a\x0f\x2e\xae\xdb\x4d\xd8\xc0\x56\xbd\x05\x61\x0e\x07\x6f\x6e\xd6\xa3\xdf\xc8\x56\xbd\x7a\x47\xff\xfb\x9b\x75\xe9\x5a\xb8\xa2\x3f\x47\xfc\x10\x1e\x1c\x5f\xb7\xab\xaa\xf2\x95\x98\x61\x7c\x93\xbd\xba\x3e\x66\x40\xcd\x2b\xda\xd7\x32\x3e\xc2\x83\xb7\xd7\x6d\xdf\xd4\xbc\x6a\xfc\x2e\x72\xe2\xe0\xe9\xb5\x67\x60\xeb\x5e\xd1\x47\x10\xc9\x71\xf0\xec\xba\xdd\xf8\xd5\xaf\xe8\x29\x7c\x9b\x8f\x07\x1f\xae\xdb\x57\xd8\xc0\xe6\xde\x1a\x82\x24\xc2\x03\xd6\xfb\xff\xd8\xfb\xb7\x3e\x37\x8e\x6a\x61\x1c\xbe\x9f\x4f\xa1\xe9\x1d\x94\xae\xa8\xa4\xd1\x38\x90\x0d\xb2\x7b\x66\x3b\x8e\x03\x86\x38\x09\xb6\xc3\x49\x56\x9c\x1e\xa9\x34\x6a\xdc\x53\xa5\x54\xb7\x6c\x0f\xa3\x7e\x7e\x1c\x92\x70\x08\xb0\x21\x06\xc2\x21\x36\x10\x02\x24\x9c\x0d\x04\x7c\x00\x72\xe1\xf3\x73\x91\xfd\x19\x66\x2e\x7d\xf3\x7e\x85\xf7\x57\x87\x55\x5d\xdd\x6a\x69\x34\x07\x0f\xd9\xff\x27\xbe\xf0\x2c\x55\xd7\x61\xd5\xaa\x55\xab\x56\x55\xad\x5a\x8b\x13\x19\x03\x44\x2c\xa3\x22\x6d\x8b\x08\x8c\xd6\x99\xc3\xe1\x18\x4a\x3d\xc3\x7d\x3c\xe7\x6c\x8d\x97\xcb\xf2\xd2\x76\xd1\x8d\x31\x45\xde\x02\xc9\x38\xbe\xe4\x08\x53\xd4\x90\x80\xf8\x24\xfe\xa6\xfe\xd3\x3e\x63\x1f\x64\xa6\x36\x2c\x1f\x79\x24\x63\xc3\x32\x5f\xff\x50\x92\xfa\xe5\xfa\xa4\x76\xc9\xf5\xb9\xf1\x8f\x41\xd8\x41\xce\xfd\xd5\x45\x03\xb9\xa8\x41\x66\x26\xb9\x07\x7c\x00\x7f\x72\x9b\xee\x01\x47\xdf\x07\xbf\x1f\xab\xfc\x7d\x27\x73\xf7\x25\x56\xf9\xc7\x0f\x9d\xf9\x2c\xed\x3d\xfc\x7c\xb1\x93\xb9\x71\x21\x97\x0a\xfd\xa4\x65\xde\x93\x17\x3c\x21\xcf\x3e\x40\x1f\xf1\xc3\x95\x7d\xa3\xfb\x9f\x5b\x78\x4f\x07\x91\x09\x3a\xc1\x99\xc9\x81\x09\x4c\x50\x87\x5c\xa8\x99\xa2\xe0\x1d\x7b\x11\x89\x63\x5f\x1a\x7b\xa7\xcd\x56\x96\xd8\x12\x3b\x37\x31\x74\x88\x7e\xae\x6d\xd0\x34\xa1\x37\xe6\xa7\x0f\xbd\xb1\x6f\x6c\x38\x8d\x87\x37\x09\x7f\x61\x45\xaf\xf8\x60\x61\xb4\x0a\xcb\xaf\xcb\x87\x36\x89\x8f\x51\x1c\x3f\x63\x27\xe1\x2e\xd2\x58\x8a\xa3\xf9\xf6\x59\xf9\xda\x21\xf1\xb9\x71\x78\x33\x36\x22\xc6\xb4\xc1\x86\xb6\x18\xcb\xe2\x6c\x10\x86\xd5\x8e\x32\xcd\x51\x0f\x22\x77\xfa\x8e\x31\xb7\x56\xdc\xd7\x98\xad\x16\xed\x5c\x30\x3a\xd9\xc4\x92\xac\xc8\x0d\xb5\xe1\x2f\xec\x38\xc5\xde\xc7\x37\x77\x2a\x3e\x3b\x3f\x23\xaf\x13\x49\x1a\xb9\x74\x5c\x73\xfa\xde\x8e\xa0\x5c\xbc\xcd\x14\x7f\x21\x0e\xb9\xba\xac\xcd\x19\x9f\x88\x19\xdd\x55\xa6\x9e\xc4\x84\xcf\xc4\x75\x94\x8b\xa0\x69\x33\xd5\xd6\x43\x68\xda\xa5\xb7\x16\xdb\x72\x7b\x51\x34\xc7\xc4\xb6\xcc\xb5\x65\x4d\xa8\xad\x07\xd1\xb4\x0a\xff\x3b\x22\x68\x16\x79\x59\xb0\x94\xa8\x8c\xbe\x94\xd3\x96\x76\x6b\xdd\x8d\x27\xaf\xbb\x1f\x39\xdd\x39\xf3\xf1\xcf\xef\x5b\x1a\xb3\xee\x8e\x3a\x66\x28\x5e\x2e\xcd\xf3\xfc\x6d\x2c\x97\x3a\x5c\xe1\xa6\x0e\x10\x32\x31\xe2\xb4\x1a\x30\x6e\x11\x4d\x83\xe9\x4d\xae\xb6\xc8\x7b\x0f\x84\xc4\x2b\xf4\x90\x61\xe3\xa0\xdd\xd7\x16\x85\x8c\x73\x4c\x28\xb0\xf9\x51\x97\x44\xbb\x2d\xde\x77\x43\x7a\x8f\x76\xd6\x48\x70\xa9\xb7\x7b\x93\x26\x48\x0c\xd3\x07\x78\xeb\x29\x1a\xae\x5a\x2f\x0d\xed\xa9\xc6\xb7\x39\x93\x76\x79\x0f\x92\xee\x40\xd8\xbf\xc9\xbd\xf6\xfb\x3b\x9f\xf7\x77\x3e\x32\xf0\xec\xb1\x87\x07\x9f\xeb\x9e\xfd\x6c\xb1\x04\xfe\xa8\x74\x68\x92\x73\x9a\x2d\x34\x36\xed\xdb\xc5\xb8\xd0\xb6\xb6\x48\x19\xe7\x2f\x85\x51\x65\x8b\x1c\xc2\x8c\x38\xc5\xb6\xfd\xc9\x8c\xb8\x9d\xd9\x3c\xfe\xec\xbe\x62\x61\x5d\xb4\x1b\xd8\x24\x04\xa0\x56\xd5\x8b\x62\xfe\xfd\xa7\xf2\x49\x32\xea\xb4\xd2\xef\x74\x3e\x26\x95\x0c\x5e\xe0\xcc\xd1\xf6\x3d\xa9\xac\xe6\x8b\xf2\x16\x46\x3f\x05\x55\xff\x91\x8c\xaf\xdb\xa9\x16\xbd\x6c\x05\xf3\x0f\x6f\x33\x2c\xe5\x8e\xd7\x35\x8d\xf6\x74\x8b\xda\xbc\x71\xe3\xb7\xe3\x80\x96\xa3\x51\x75\xa5\x0f\xc9\xbc\xcb\x55\xf3\xa9\xbe\x25\x8f\x36\xaa\x8d\x51\xb7\xae\xb9\xd8\xb8\xfb\xb6\xe3\xdc\xce\x1e\xb9\xac\x3b\xc0\x87\x77\x10\xf5\x37\xe7\x2b\xcf\x38\xdf\x59\xd6\x53\xde\x9a\xd1\x6a\xe2\x9a\x36\xb1\xe5\x9b\xe8\x23\xdb\xf3\xd5\xf8\x61\xe3\xa1\xc9\x9e\xa8\xe0\x3e\x69\x6a\x77\x54\x23\xde\xdb\xa7\x73\x3e\x35\x2a\x6b\xb2\x3d\x1c\x75\x43\x2d\x7b\x3b\x0f\x67\x32\xe0\xae\xc8\xa9\x19\xa7\x78\xda\xb9\x37\x44\xbb\xdd\x06\x59\x8c\xf7\xa7\x0f\xab\x66\x3e\x04\x2d\x4f\xe7\xfc\xe9\x43\x23\xee\x27\xb7\xe5\xf7\x68\x8a\xf8\xbb\xd3\x0a\x01\x08\x77\x2c\xe5\x6d\xea\x85\x5c\xd3\x31\xe7\xe0\xb8\x65\x84\x6c\x41\x64\xeb\x96\x5d\x93\x1d\xd0\x34\xeb\x84\xea\xe1\x7c\xe4\xe9\x98\x0f\x88\xed\xae\x19\xaa\x50\x51\x60\xe2\x1c\x2e\xfb\x46\x71\xc9\xfa\x28\xcf\xa3\x33\xf2\x72\xc0\x29\x60\x12\x93\x3b\xeb\x58\xda\x9e\xcd\xd3\x36\x8c\x1d\x3f\x54\xe7\x27\x86\xc0\xa6\x6b\x45\x41\xa3\xb3\xfc\xf4\xf0\x78\x7e\x9a\x7a\x13\x90\x49\x7c\x18\x7f\xb0\xd8\x45\x16\xde\x57\x14\x36\x75\xe2\x1e\xa2\x80\x89\x82\xc8\x62\x1a\xe5\x33\x4b\x3a\xc2\x2a\xce\x0a\x52\xab\x28\xe4\xe9\xe4\xc3\xa7\xbc\x7f\xae\x1d\xef\x65\x72\x47\x50\x38\xf4\x66\x67\x21\x32\xaa\xc3\xa8\x15\x54\x3e\xa0\x25\xf5\x41\x6e\x0c\x06\x33\xce\x80\x2a\x75\xaf\x93\x5e\xb9\x3c\xee\x47\xf1\xa3\x8c\xc5\xe5\xb2\x3b\xea\x0e\xc0\x1d\x40\x5c\xc1\xc3\x2a\x24\xb9\x75\xc4\xa0\x4d\x4c\xa3\x72\xd9\x1d\x00\xec\x0d\x6a\x2b\x91\xde\x52\xc3\x2b\x98\xe1\x70\x50\x5b\x61\x5f\x28\x48\x3d\x4b\x96\x4e\x07\x71\xee\x03\xc2\x05\x5e\x09\x06\xea\x70\x29\x8a\x65\x63\x1a\xf6\xec\xdd\x42\xfa\x04\x69\xa6\xcb\xb8\xbb\x1f\x8c\xb4\xcb\x65\x79\xc6\x25\x8d\xaf\x4f\xac\xf6\xc9\x7e\xf5\x80\x11\x10\xb6\xc2\xe7\xc5\x33\xb1\x17\xd7\xfa\xbe\x98\xb9\x4f\xb2\x0e\x01\xa7\x11\xca\x92\x45\x9d\xf4\xb5\x37\x3f\xe9\xf3\x5d\x37\xd8\x42\x3c\x57\x3b\x86\x2b\x33\x2e\x98\x4e\x88\x31\x7c\x8c\x9c\x09\xda\xc4\xc1\x61\xfa\xa5\xe7\x47\x47\xd9\x19\xc1\xb0\xb3\xf3\x69\xaa\xf4\xb6\xfd\xd4\x19\xc2\xb5\x9a\xe7\x60\x79\xc6\x96\xe4\x72\x3c\xd3\x1f\xfb\x5d\xf2\xcc\x61\xda\x99\x9c\xe1\x68\xaa\x49\x8e\xc9\x71\x5c\xb0\x5d\x3e\x4b\x62\x29\xab\xe9\x50\x91\x5c\xb8\x48\x29\xbe\xe4\x83\x28\xbd\x4c\x5b\x2f\x7a\xf4\x1b\x19\xbd\xcd\xf2\x16\x2c\xcf\x08\xbc\xc0\x33\x02\x35\xa9\xc0\x2a\x63\x9e\x61\x65\xdf\x7e\x89\x4a\xad\x02\x99\xc5\xc0\x13\xa2\xbe\xe5\xa0\xec\x3b\x31\x5a\x14\xf2\x32\x23\xb0\xd1\x8c\x66\xc4\xa0\x5c\xd6\xaf\xe9\x4f\xa9\x0c\x8f\x73\xb6\x22\x95\x08\x37\x40\xb2\x5b\x89\x7a\xb4\x97\x1d\x2a\x8f\x78\x0b\x7c\x7c\xc8\x44\xed\x7f\x2c\xff\x1d\x13\x69\x1a\xdf\x51\xae\x32\x9e\x08\xa2\x98\x50\xc2\x5d\xc5\x06\x42\x8c\x15\xb4\x64\x3f\x70\xcf\x7b\x59\x02\x7b\xd6\x3c\xa3\x6d\x82\x5d\xea\x48\x6d\x4b\x08\x2a\x2f\x9d\x85\x0d\x42\xd0\xc5\xcc\x0c\x01\xec\xf2\x3c\xea\xa5\xcf\x82\x60\xde\x78\xb3\x75\x4c\xca\x65\xa2\x1f\x13\xe7\x5a\x97\x15\x88\x74\xdd\x7a\xbe\x42\x94\x58\xe9\x36\xab\xab\x96\x8a\x3a\xb4\xa5\x2a\xd3\x09\x28\x08\x3b\x7d\xdc\xd5\xcd\x99\x5c\xd7\x13\x5b\xac\x3e\x1a\x59\x15\x67\x48\x85\x2c\x7f\x50\x6e\x8e\x88\xf3\x2a\x8e\xeb\x56\x26\x0b\xf7\x0a\xe3\xc3\x16\x4f\x16\x3e\xe9\x96\x41\xbd\x60\x29\x9e\x4a\x1c\x61\x82\x92\x42\xd6\xb2\x96\xc5\x31\xa3\x58\xcc\x92\x32\x1b\xa1\x1d\xa7\x70\xa0\x10\x82\x5d\x85\x5a\x6c\xc6\xa2\x6d\xac\xb7\x47\x72\xd8\xf6\xf2\x49\x76\xbb\x2e\x5f\x2c\x17\xf3\xea\xe4\xa9\x3c\xa9\xd0\xa4\xe9\x35\xae\xe0\x74\xc4\xdb\xde\xa4\x9a\x58\x70\x3c\xe1\x93\x91\xc1\xb7\x96\x96\xa8\x1f\x06\xb1\xeb\xd4\x1c\x84\xf9\xa8\x3b\x8a\x66\x1a\x78\xb8\x59\x6f\xe1\xf9\x3a\x6a\x49\xa5\x41\xad\x1d\xf3\xfb\xe9\x01\x78\x4c\xb1\x9f\x56\x2a\x88\x7b\xbc\xa8\x24\xd5\x25\xc1\x92\x26\x77\x57\x65\x9f\xd0\x4c\x75\x57\x15\x8c\x2b\x8d\x70\x90\xbd\x3f\xca\xe4\xcc\x1d\xf0\x4c\x75\x59\x35\xa9\x82\x5c\x6b\x81\x7d\xb8\xdd\xde\xe4\x1e\xa9\xbd\xdd\x7b\xa4\xec\x25\xf9\x7b\xe9\x02\xa9\xbb\xfa\x99\x8f\x3f\xbf\xef\x83\x7e\xf1\xf1\xa5\x3e\x26\xcc\x39\xee\xdf\xe4\x12\x69\xdf\x56\x2f\x91\xe6\xb1\x13\xf5\x7d\x3a\xf1\xe0\x22\xdb\xbe\x3c\x39\xcc\x9e\x71\xed\x9b\xfa\x88\xeb\xfe\xde\xc4\x58\x88\xbe\xc7\xae\x60\x0a\x3c\x6d\xbf\xb7\x78\x71\xf9\xd8\x91\x2f\x7c\xe2\x58\xfd\xc8\x98\xcb\x4c\xd8\xa2\x96\x53\xa6\xca\x9f\x5e\x6f\x7e\xb4\x62\x8e\xc8\x26\x9c\x87\xd4\xad\x50\x65\x13\xcf\x43\x36\xbd\x4b\x84\xf3\x1e\x60\xef\xc9\x68\x55\xa9\xbf\x42\xf2\x47\xb7\xb8\xa9\x16\xe0\x27\xe5\xb7\x56\xe1\xfd\xe3\x87\xf1\xbe\xbc\x3f\x6f\x99\xed\xfe\x33\xfb\x48\x1f\xde\x63\x3c\x9f\x8b\x4c\xf1\xde\xe2\x77\x46\x2a\x1f\x7c\xe2\xdc\xe9\xfa\x58\xa3\xb9\x4c\x3c\x8b\x22\x66\xdf\xd5\xbb\xf7\x5d\xbb\xa1\x18\x09\x07\x32\xd5\xad\xfb\x98\x3b\xf7\x91\xb3\xb5\x4d\x39\x7b\xc7\x5c\x9d\xc5\xff\x3d\xc6\xd1\x10\x06\x6c\x57\x2e\xd2\x77\x8d\xd3\x83\xc9\x9c\xde\x3f\x73\xb8\xfb\xa1\x68\x35\x18\xc3\xe9\x53\x46\x05\x32\x57\x14\x85\x97\xa2\x63\xa3\x03\x59\xd1\xcd\x36\xb1\x16\x7d\xb8\xe8\xf8\x7c\x2b\x71\x5c\xa0\xa2\x47\xb6\x73\xa1\x04\x13\x20\xbb\x08\x3d\xa2\x2e\x42\xa0\x9b\xf9\x98\xcb\x05\xc7\xe0\x1f\x1a\xb9\x93\xdb\x37\xa9\x7f\x05\xd9\x32\x91\x37\xb7\x71\xd5\x31\xf5\xb2\x07\xc8\x54\x83\x98\xac\xa4\x2b\xdf\x87\xf1\x07\x0b\x11\x06\xfb\xd2\xa9\x34\xbd\x6c\x90\x24\x3b\x6c\xa4\xbe\x5d\xc8\x45\x8f\xcc\x2e\xf6\xdb\x8f\x16\x33\xb5\x4a\x2b\xed\xf5\xaa\x4b\x31\x75\x32\x96\xa8\x56\x70\x41\x9c\xb1\x36\x2d\x36\x5c\xcd\xec\x5d\xc7\xe6\x07\x59\x7b\xfd\xd5\xed\xdd\x55\x8c\x1b\xeb\x62\x9e\xdd\xa7\x78\xb6\x3f\x1a\x90\x6b\x7e\x53\x9e\x52\xa3\x3b\x15\xf3\xc4\x7e\x3c\x88\xaa\x41\xdb\xbe\xef\x9e\xfa\xc6\xc4\xbe\xb6\x90\x13\x8a\x13\xbf\xc3\x68\xb8\x3a\x1a\x60\x64\xc7\x0b\x8a\x96\xd9\x19\xa3\x5a\x56\x74\xd4\x3e\xd1\x62\x56\x1b\xb5\x92\x51\x9f\x24\x63\x4d\x64\xe1\xc1\xbc\xb2\x89\xb1\x59\x45\x9d\xba\x89\x2d\x70\xfa\x24\x18\xfb\x1e\xb5\x76\xce\x91\xa7\xf9\x08\x87\x9e\xd8\xe0\x0f\xbc\xcd\xf6\xdd\x74\xc4\x1c\xd5\x41\xb8\x9d\xa9\xb4\xe3\xad\x25\xd8\x36\x8f\x1a\x8c\x31\x8f\xea\x34\x49\xcb\x1b\x68\xf3\xa8\x4e\xd6\x3c\xca\xfe\x89\x3b\x79\xf3\xa8\xce\x58\xf3\xa8\xce\x70\xd8\xc9\x9b\x47\x75\xb2\xe6\x51\x1d\x2f\x9c\xc6\x3c\xca\xf6\x64\x14\xbb\x3e\x8e\xa4\x57\x3c\x92\x20\xdc\x41\xb8\x6d\x99\x47\x75\x72\xc6\x4b\x1d\x6d\x1e\x95\x49\x5f\xec\x8c\x9a\x47\xb5\x8d\x79\x54\x67\xb2\x79\x54\xbe\x85\xe2\x25\x5d\xa0\xd8\x11\xdd\x53\xac\x40\x95\x3a\x23\x52\x43\x3c\xc0\x6d\xdc\xb1\x54\x13\x36\xf1\x18\x24\xc0\x6c\xb3\x63\x90\x1e\x09\xfb\x84\x47\x73\x13\xaf\x1a\x6d\xfd\xa5\xa0\x8e\x41\x1c\x84\xd1\x9c\xda\x17\x49\x78\x13\x8d\xc6\x18\xe6\x71\xb7\x49\x5a\x96\xf7\xf1\xb8\x16\x44\xd2\x0c\x0b\xb9\x04\x6d\xc7\x2a\x4c\x22\xf7\xb4\xc0\x4d\xdd\xe1\x1d\x51\xd5\x79\x7c\x54\x19\x12\x34\x85\x0b\xb3\x8f\x49\x22\xd4\x14\x2d\x5c\x6e\xeb\x7e\x74\x47\xf4\xb3\x4c\x01\xa6\xda\xcd\x18\xca\xc4\x6e\x93\x60\xed\x6d\x4e\x9d\x98\xc7\xa9\x19\x7c\xd0\x75\xc1\xfd\xa3\x7a\x97\x16\x23\xb4\x06\xa7\x86\xdc\xab\xef\xe7\xe9\xa9\x21\xaf\x54\x90\x95\x5f\xbb\x8b\x14\x32\x22\x35\xac\xaf\xcf\x18\xc1\xa2\xe7\x49\x36\xbb\x18\xc1\xdd\x19\x0d\xcb\xbd\x67\xe1\x80\xf0\xc2\x01\x89\xb7\xa2\x8c\x2b\x66\x14\xe2\x7d\x20\xb4\x95\xae\xf6\xeb\x59\x0d\xba\xd5\xf4\xca\xf9\xfe\x6f\x2e\xed\x3a\x33\x44\x05\xcc\xdc\xb5\x65\x12\x37\x5c\xe4\x2d\x10\x1c\x09\x48\xdd\x27\x1a\x59\xc1\x17\x49\x83\x27\x28\x99\xaa\xbb\xf6\xdc\xdb\x3a\xab\x19\x14\x67\x67\x49\xb9\x3c\x3b\x9b\x71\x4b\x9a\x9e\x68\xa0\x91\x6f\xb0\x69\xb5\x9e\x62\x72\x38\xfb\xe6\x1e\xb0\x55\xc9\x7c\x24\xae\x72\xda\x4b\x11\x70\x6b\xe0\xd5\xf7\x07\x07\xd2\x4a\x29\x76\x14\xe3\x3a\x68\x7f\x50\xa9\x80\x57\x26\x5a\x63\x72\x28\x0e\xc6\x8b\x29\xe8\x06\xa8\x41\x9b\x41\x6b\x26\x76\x19\x5a\xb4\x9f\x8b\x32\x0b\x35\xd4\xe0\x95\x4a\x92\xb8\x04\x61\x9e\xa2\x29\xc4\x12\x57\xb5\xd3\x42\x44\x03\xf5\x2a\x05\xbc\x6a\x56\xe7\xcd\xb1\x3c\xf3\xea\xfb\x99\x85\x72\x60\xa1\xcc\x00\x65\xdf\x0b\x52\x94\x53\xd0\x65\xa8\x11\x34\x59\x4b\xde\x59\xb9\x3e\x32\xd7\x04\x16\xf2\xbe\x8d\xbc\xcc\xb8\x50\x9d\x37\x96\x01\x09\xb8\x57\xf7\x05\x8f\x40\x32\x9d\xa1\xa2\x93\x80\x6b\x22\x9f\xbe\x40\x67\x82\x4d\xfb\x8a\x99\xee\xed\x70\xc8\x0f\xd4\x75\xa5\x6b\xa0\x62\x37\x66\xe7\x75\xa4\x0b\xf0\xac\xa7\xdd\x83\xd6\x4d\xb4\xb2\x1c\x1d\xb4\xdd\xc3\x01\x8f\x97\xcb\xfe\x81\x68\xbf\x6a\x3c\x1a\x43\x13\x5f\xd0\xc4\xd7\x34\x89\x0a\x69\x12\x59\x34\xc1\x6c\x38\xb4\xf9\x30\xb2\x5d\xe7\x2a\x82\x8d\x52\x8b\x5a\xd4\x4a\x3b\x36\xa9\x26\xe8\x72\x94\x48\xda\xfa\x8a\x89\xf0\xec\x3c\x1a\x0e\x27\x90\x26\xc9\x5a\xbb\xc3\x5c\x58\x33\xd3\xa8\x41\x6a\x06\x4e\x03\x88\x18\x73\x74\x92\x0b\x36\xe7\x5a\x28\x95\xcb\x2e\xaf\x99\x9b\x4d\x62\xc0\x0c\x67\xfb\xda\xbc\x5a\xb3\xa1\x98\x8f\x38\xf2\x8e\xfa\x71\xaf\xb6\x12\x50\x57\x01\xfe\x39\x57\x2d\xcc\x15\x86\xeb\x08\xfb\xd5\x79\x84\xd3\x4e\x85\xd0\xa7\x41\xe2\x09\xe6\x89\xf4\x80\x0e\xca\xe5\x70\x3f\x0c\x8f\xfc\x50\xf1\x18\x9a\x09\xbd\xd8\xa0\x82\x07\x5e\xac\x6f\xa8\x60\x2d\x19\x6c\x67\xe9\xd0\x7a\x80\x5c\x27\xec\x88\x24\x72\x25\xcf\xf8\xe6\xf2\x28\x86\xd0\x32\x07\x63\x79\xfb\xe6\x05\x98\x14\x7a\x53\xb3\x84\x32\xd6\xcf\xa3\x8d\xe7\x37\x1f\x47\x5e\x1d\x87\xde\xec\x3c\x1e\xc8\x3b\xf4\xd9\xd9\xb0\x60\xaa\xb4\x71\x47\xe5\xef\x59\x9c\xdf\xce\x71\xbe\xf8\xde\xf5\xea\xfb\xbb\x07\x7a\xfb\xbb\x20\x11\x7a\x5e\x3b\xe5\xfe\x14\x74\xbb\xa8\xd1\x6e\x76\x5b\xb8\xef\xd9\xac\xd8\xb3\x59\x51\xb9\xe6\x1d\x0e\x67\xfb\xca\x62\xc8\xed\x29\xb7\xf8\xf6\x0c\xe9\xd9\x33\xa4\x33\x1c\xf6\x11\x1e\xb8\xb0\xc2\x2b\x37\x84\xd4\xed\x61\x8e\x16\xbc\xfa\xa2\x1b\x1d\x08\x16\xfd\xe1\xd0\xf5\xbd\x1e\x6a\x84\x5e\x0f\x47\x95\x0a\x6a\x44\x95\x8a\x68\xca\x2a\x07\x2c\x8f\xc3\xe1\xd0\x4f\x24\x59\x2d\xf7\x7b\x9e\x45\x18\x45\x4f\xdf\xd0\x13\x24\xc3\x41\x17\x99\x10\x86\x02\x4f\x5e\x40\xab\x81\x57\xdf\x3f\x38\x10\xee\x1f\x00\xad\x42\x8f\xa7\xb4\x4a\x41\x77\x80\x1a\xbc\x39\x90\x92\x62\xd6\x1f\x0e\x2d\x7a\x85\x19\x21\x20\x89\x14\x16\x4a\x92\xd0\xa6\x93\x44\x19\xcd\xd8\x7e\x06\x0c\x76\x0b\xf5\x72\x39\xaa\xf5\x07\x51\xcf\x65\x6e\x28\x1d\x53\xaa\x30\x19\x6e\x88\xa9\xa0\xa2\xf9\x1c\x22\x60\xf5\x28\x49\x35\x00\xcb\xb7\x48\xca\x77\x56\xec\xa0\x8c\x13\xc6\xd4\xeb\x22\x4f\xc0\x85\x62\x3c\x1c\x72\xd1\x53\xa3\x11\x04\xc3\xa1\xf4\xf4\x2c\xd8\x37\x30\xb6\x62\x62\xbe\x07\x78\xde\xc4\x2d\x0a\x94\xcd\x41\xa1\x5f\x4b\xcf\xc7\x62\x4b\xca\x83\xfe\x63\x81\xdf\xe6\x41\x1c\xb4\x23\x2f\x4c\x71\xd6\xce\x0a\xbd\xc2\xbd\x53\xe8\x12\x54\x8b\xd9\x33\xfd\x3e\xe1\x87\x7c\xb9\xd7\xd2\x13\xd1\x0d\xdd\x38\xf7\x09\x59\x94\xc8\xfb\x42\x9c\xba\x7a\xb9\xfd\x8d\xc4\xfc\x2d\x6a\x41\x3a\xf2\x4c\xcc\xcb\x8f\x35\x67\xe3\x95\xbf\x39\x0d\xe7\xa0\x83\x9d\xff\xdf\x3f\x7e\xae\xa1\xeb\x5f\x04\xe0\x4b\x00\x7c\x59\x03\xeb\x57\x7f\x65\xa0\x37\x0c\xf4\x1b\x03\xbd\x09\x05\xbe\xa2\x81\x1b\x50\xd7\x8d\xb4\x8a\x3f\x19\xe8\x0f\x06\xfa\xab\x81\xfe\xac\xa1\x3b\xd0\xd2\xed\x9f\x41\xa5\x2f\x40\xca\x45\x93\xfb\x75\xf8\xf6\x22\x7c\xbb\x0a\xc0\xb7\xa0\x22\x40\xe1\x4e\x8a\xc2\xcf\x0c\xf4\x3b\x03\x01\x21\xd6\x2f\x1b\x9c\xa1\xc1\x3b\x50\xe9\xc6\xa5\x3f\x6a\xe8\xde\x6b\x12\x51\xd9\xf6\x4b\x02\x3a\x2c\xda\xfc\x87\x81\x5e\x07\xe8\xde\x6b\xb2\x6f\x4f\x49\x50\xb6\xf1\x8c\x04\x2f\x0b\xf0\x53\x12\xbc\x9a\x82\xb2\x82\xcf\x8a\x96\x5e\xf9\xbb\xd3\x70\x1e\x95\x03\xf3\xba\x86\xd6\x2f\x7f\xd9\x40\x2f\x18\xe8\x25\x0d\xdd\xfd\x8a\x06\x6e\x41\xae\x5b\x5f\xd2\xc0\xc6\x2b\xa2\xb5\x43\xb2\xb2\x5f\x68\xe8\xc6\x4b\x00\x7c\x0d\x80\x6f\x00\xf0\x4d\x0d\x5c\xff\xaa\x06\xd6\x2f\x43\xa6\x5b\x90\x74\xe7\x9a\x06\xee\xbd\xf6\x2f\x0d\x6d\xbc\x72\xc5\x69\x38\x8f\xc9\x66\xde\xd0\xd0\xfa\xe5\x6f\x68\xe8\xc6\xb7\x4d\xd2\x37\x0d\xf4\x1d\x03\xbd\x62\x20\xc8\x77\x03\x3e\xde\x7a\x19\x00\xa8\xeb\xd6\xd7\x35\x70\xef\x02\x34\x79\xfb\x92\x00\x3e\x27\xa0\x17\x0c\x24\xc6\xe8\xb1\x2f\x08\xe8\x45\x80\x36\x5e\x11\xe4\x3e\x2c\x91\xfc\xa5\x86\xae\x7f\x0d\x80\xaf\x03\xf0\x0d\x0d\xac\x5f\xfb\x22\x40\x57\xff\x65\xd2\x5e\x30\xd0\x97\xcd\xd7\x7f\x68\xe8\xc6\x2b\x90\x74\xf9\x7b\x06\xfa\x01\x7c\x84\xa4\x1b\x90\x72\xfd\x65\x53\x03\x20\x76\xe3\xc7\x1a\xb8\x03\xed\xdc\x79\xc9\x64\xba\x6c\x9a\x86\xb4\x3b\x6f\x9a\x66\x5e\x83\x1a\x7e\x68\x92\x52\x08\x6a\xbd\xf5\x1d\x00\xbe\xad\x81\x8d\x57\xc4\x60\x3e\x2e\x69\xf2\x2b\x0d\xad\x5f\xbe\xa8\xa1\x5b\xdf\xd5\xc0\xbd\x0b\x90\x6d\xe3\x15\xd1\xdb\x8f\xca\x02\xbf\xd6\xd0\xed\xbf\x6a\xe0\xc6\x6b\x1a\x58\xbf\xfc\x33\x48\xba\x08\x00\xa4\xdc\xfe\x15\xa4\xbc\x0e\x29\x6f\x68\xe0\xd6\x79\x0d\xdc\xbb\x08\xb9\xef\x5d\xf8\xa7\x81\xfe\xa5\xa1\x8d\x57\x44\xda\xc7\x24\x0e\x6f\x6a\xe8\xc6\x1b\x1a\x58\xbf\xfc\xba\x81\x7e\xa5\xa1\x3b\x17\x4d\x52\x9a\xed\x4d\x03\xfd\x06\xea\x80\xfc\x1b\x97\x7e\x6d\xa0\xb7\x35\x74\xef\xe2\xb7\x20\xed\x15\x81\xc8\x11\xd9\xfc\x5b\x1a\xba\xfe\x4d\x00\xbe\x05\xc0\xb7\x35\x70\xe3\x4d\x00\x7e\x03\xc0\xef\x00\xf8\x13\x64\xfe\x6f\x0d\xac\x5f\xfe\x03\x40\xd7\xbe\xa6\xa1\xdb\xf0\xf1\x0e\xa4\xdc\xf9\x86\xc9\x04\xd0\x0d\x53\xee\x32\xd4\x7e\xeb\x55\x0d\x6c\xbc\xf2\x8e\xd3\x70\x3e\x2e\x11\xfe\x8d\x86\x6e\xfc\x55\x03\x77\xbf\xa6\x81\x8d\xf3\x82\xdf\x3f\x21\x73\xfd\x56\x43\xeb\x97\xff\xa4\xa1\xdb\x6f\x9a\xa4\x3f\x6b\xe8\xc6\xdf\x4c\xd2\x5f\x35\x74\xeb\x87\x1a\xd8\xb8\xf4\x96\x86\xee\x5d\xf8\xa2\x81\xbe\x6c\xa0\x17\x00\xba\xf8\x3a\x94\x38\x2f\x64\xd6\x13\xb2\xf9\xdf\x69\xe8\xc6\x3b\x00\x5c\x01\xe0\x9f\x1a\x58\xbf\xfc\x37\x03\x5d\x86\x8f\xd7\x4c\xd2\x3f\x0c\x74\x55\x43\x37\xa1\xfa\x3b\x50\xc5\xc6\xa5\xd7\x0d\xf4\x33\x0d\xdd\xbb\xf0\x35\x03\xbd\x04\xd0\xc5\x2f\x6a\xe8\xb6\x10\x81\x4f\x08\x62\xdd\x96\xd9\x3e\x2f\xf1\x16\xbd\x3a\x2a\xf1\xfe\xbd\x86\xd6\x2f\xff\x0b\xa0\x2b\x5f\x34\x10\xe4\xdb\xb8\xf4\x07\x0d\xdd\x7a\x0d\x92\xce\x0b\x11\xfe\xa4\xac\xe4\x0f\x1a\xba\x7d\x59\x03\x37\xe1\xdb\xf5\xef\x6a\x60\xfd\xca\x0b\xf0\xed\xab\x26\xe9\x25\x48\x7a\xd1\x24\x7d\xc3\x40\x5f\xd3\xd0\x9d\x9f\x69\xe0\xd6\x05\x0d\xdc\xbb\xf8\x1d\x03\xbd\x01\x4d\xcb\x82\xb2\x9f\x42\x46\x3d\xa9\xfa\x29\xda\x7c\x4a\xa2\xf8\x47\x0d\x5d\x7f\x05\x80\xf3\x00\x7c\x4f\x03\xeb\xd7\x5e\x31\xd0\x77\x0c\xf4\x03\x03\x41\xbe\xeb\xdf\x87\xa4\x2b\xdf\xd4\xd0\x9d\xdf\x99\xa4\x6f\x6b\xe8\xe6\x37\x4d\x92\xa9\xec\x0a\x34\x70\x13\x72\xdd\xf9\x03\x00\x7f\x82\xda\xa1\xc1\x3b\xbf\x31\x2d\x9b\x3a\xa1\xa6\xdb\xdf\x85\x4c\x06\x03\xc8\x73\xeb\x67\xa6\xd8\x6b\x06\xfa\xb1\x81\xd2\xaf\x17\x0d\xf4\xba\x81\x0c\xce\xd7\x7e\x08\x2d\x01\x16\xb7\xa1\x8b\xd7\xcd\xa7\x7f\x41\x93\x2f\x01\xf0\x53\x0d\xdc\xbb\xf0\x0d\x03\x41\x9d\xb7\x64\x33\x47\x64\x9a\x44\x56\xa2\x2d\x13\x9f\x91\x83\x25\x98\xe0\x69\x39\x58\x7f\xd2\xd0\xfa\x95\xef\x19\xe8\x07\x1a\xba\xf5\x86\x06\x36\x2e\xfd\x42\x43\xf7\x2e\x7c\xc7\x40\xaf\x18\x08\x8a\x6e\x9c\x17\xe8\x7d\x52\x56\x7c\x49\x43\xf7\x2e\xfc\xc0\x40\x3f\xd4\xd0\xdd\x6f\x68\x60\xe3\xbc\xe0\xd0\x63\xb2\xc0\x9f\x35\x74\xf3\x7b\x1a\x58\xbf\xf2\x43\x48\x02\xe0\xce\x77\x00\x78\xc5\x64\xfa\xb1\x81\x5e\x83\xec\x3f\x30\x49\x17\x35\x74\xf7\x9b\x1a\xd8\xb8\xf4\x86\x86\xee\x5d\x80\x92\xf7\x2e\xfe\xca\x40\x5f\x86\x7c\xe7\xc5\xa4\x38\x2e\x31\xfb\x8b\x86\xd6\xaf\x5e\xd4\xd0\xcd\x1f\x43\xd2\x95\x37\x20\xe9\x35\x93\xf4\x33\x48\xfa\x99\x49\xfa\x95\x81\x5e\x37\xd0\x9b\x1a\xba\xf3\x43\xc8\x0f\xd5\x6f\x5c\xfa\x97\x86\xee\x5d\x7c\xd3\x40\x2f\xc0\xd7\xf3\x42\x1b\x39\x21\x51\xfb\xab\x86\xd6\xaf\xfc\x46\x43\x37\xdf\x30\x49\xbf\xd3\xd0\x9d\x1f\xc3\xb7\xd7\xcd\xb7\x3f\x19\xe8\x0f\xf0\xf1\x57\x1a\xb8\x05\xe5\x6e\xc1\xa7\x3b\xff\xd2\xc0\xbd\x8b\x2f\x01\xf4\x9a\x40\xec\xc4\xe7\x24\x3e\x62\x38\x9f\x91\xf8\xbc\xad\xa1\xeb\x3f\x02\xe0\xc7\x00\xfc\x44\x03\x37\xdf\xd4\xc0\xfa\x95\xcb\x90\xf4\x1b\x93\x74\x15\x92\x7e\x07\xe5\x5e\xd3\xc0\x6d\xa8\xe0\xf6\xab\x00\x7c\x1f\x00\x68\x6d\xfd\xda\xaf\xa0\xfc\x1f\x00\xf8\x13\x64\x3a\xaf\x81\x3b\xdf\x03\xe0\x07\x1a\xb8\xf5\x47\x53\xde\x60\x72\xcd\xa0\x79\xed\x0f\x06\xfa\x9d\x81\xfe\x64\xa0\x37\x0c\xee\x7f\x86\x26\xff\x6c\x92\xfe\x66\xa0\xbf\x6a\xe8\xee\x0b\x1a\xd8\x38\x2f\xa4\xe7\xa7\x24\xd9\xfe\xa6\xa1\xf5\x2b\xff\x30\xd0\xbf\x34\x74\xeb\xcf\x1a\xb8\x77\xe1\xa2\x86\xee\xbe\x68\x92\x04\x8b\x7d\x4a\x6e\x0c\xce\x0b\x16\xff\xb4\xac\xee\xef\x1a\x5a\xbf\xfa\x45\x03\x7d\x59\x43\x37\xff\x6a\x92\x5e\x32\xd0\x0b\x06\xfa\x9a\x86\x36\x2e\xfd\x19\xa0\xf3\x42\x69\xf9\x8c\xac\xf8\xb2\x86\xd6\xaf\x7e\xc3\x40\xdf\xd4\xd0\xc6\x79\x21\x6a\x3e\x2b\xf3\x5d\xd1\xd0\xfa\xb5\x3f\x6b\xe8\xfa\x05\x0d\xdc\xfc\x9b\xf9\x76\x59\x43\x77\x20\xd3\xfa\x55\xa8\xe2\xe6\x65\x93\x2b\xcd\xff\x57\x0d\xdd\xfa\x8b\x06\xee\x7e\xdb\x7c\xfb\x97\x86\x36\xce\x0b\x7d\xe8\x73\x12\x8b\xab\x1a\xba\x79\x45\x03\xeb\x57\xbf\x03\x49\xd7\x00\xf8\xa7\xf9\xf6\x8a\x81\xbe\xa7\xa1\x5b\x6f\x6b\xe0\xce\x1b\x1a\xd8\xb8\xf4\x8e\x81\x7e\xab\xa1\x7b\x17\x5e\x87\xb4\xf3\xa2\x7e\x5f\x34\xfe\xcf\x2f\x69\x68\xfd\xea\x8f\x35\x74\xfd\x67\x00\xfc\x1c\x80\xd7\x4d\xa6\x5f\x1b\xe8\x97\x06\xfa\xad\x81\xde\x82\x02\xbf\xd0\xc0\x0d\xa8\xfe\xc6\x57\x4c\xa6\x4b\x06\xfa\xa3\x81\xde\x36\xd0\x5f\x34\x74\x07\x5a\xba\x6d\xb0\x78\x03\x52\x7e\x6a\x72\x43\x3b\xd7\x01\x9b\xdb\xd7\x00\xf8\x36\x54\x04\x28\xdc\x49\x51\xf8\xb9\x81\x7e\x6f\xa0\xbf\x03\x74\xd9\xe0\xfc\xa2\x06\x36\x2e\x41\xf5\x77\x81\x70\xf7\x5e\x93\x88\xca\xb6\xc5\x5c\xf6\x89\x68\xf3\x9f\x06\xfa\x05\x40\xf7\x5e\x93\x7d\x63\x12\x94\x6d\x0c\x24\x28\xc6\xda\x3f\x23\xc1\x6b\x29\x28\x2b\x58\x95\x43\x24\xd6\xf3\x25\x39\x44\x5f\xd6\xd0\xfa\xe5\xaf\x18\xe8\x45\x03\x7d\x55\x43\xb7\xbe\x08\x00\xe4\xba\x7b\x5e\x03\x1b\xe7\x05\xcf\xb4\x65\x65\x5f\xd1\xd0\x8d\xaf\x02\xf0\x75\x00\x5e\x06\xe0\x5b\x1a\xb8\xfe\x6b\x0d\xac\x5f\x86\x4c\xb7\xbe\xa6\x81\x3b\xff\xd0\xc0\xbd\xd7\xde\xd1\xd0\xc6\x4b\x2f\x00\x74\x5e\x34\xdd\x91\x0d\xbe\xa0\xa1\xf5\xcb\x2f\x6b\xe8\xc6\x7f\x9b\xa4\x6f\x19\xe8\xbb\x06\x3a\x6f\x20\xc8\x77\x03\x3e\xde\xfa\xa6\x06\xee\xfe\x00\x80\x57\x35\x70\xef\xc2\x55\x0d\xdd\x16\x23\xd3\x91\xbb\xe6\x97\x00\xda\x38\x2f\xe6\x0a\x91\x08\xbd\xa8\xa1\xeb\x6f\x02\xf0\x16\x00\xbf\xd1\xc0\xfa\xb5\x2f\x01\x74\xf5\x1d\x93\xf6\xa2\x81\xbe\x62\xbe\xfe\x53\x43\x37\xce\x43\xd2\xe5\xef\x1b\xe8\x55\xf8\x08\x49\x37\x20\xe5\xfa\x6f\x4d\x0d\xd7\xe0\xdb\x4f\x34\x70\x07\xda\xb9\xf3\x55\x93\xe9\x8a\x69\x1a\xd2\xee\xbc\x65\x9a\xb9\x00\x35\xfc\xc8\x24\xa5\x10\xd4\x7a\x17\x0a\xde\x85\x94\xdb\x50\x6e\xe3\xbc\xc0\xaf\x2b\x89\xf3\x92\x86\xd6\x2f\xff\x54\x43\xb7\x5e\xd1\xc0\xbd\x0b\xff\xd0\xd0\xc6\x79\x41\xfe\x65\x59\xe0\xab\x1a\xba\xfd\xb6\x06\x6e\x5c\xd0\xc0\xfa\xe5\x9f\x43\xd2\x4f\x01\x80\x94\xdb\xbf\x86\x94\x5f\x40\xca\x2f\x35\x70\xf7\x67\x1a\xb8\x77\x11\x72\xaf\xbf\x7d\x05\xd2\x2e\xbc\xa3\xa1\x8d\xf3\x82\x96\x3d\x89\xc3\xd7\x34\x74\xe3\x97\x1a\x58\xbf\xfc\x0b\x03\xfd\x5a\x43\x77\x7e\x6a\x92\xd2\x6c\x6f\x19\xe8\xb7\x00\x5d\xfd\x01\xd4\x06\x25\x37\x2e\xbd\x69\xa0\xbf\x69\xe8\x2e\xd4\x71\x4b\xd0\xae\x77\x46\x62\x24\x14\xa4\x40\x62\xf4\x75\x0d\x5d\xff\x1d\x00\xbf\x07\xe0\x0f\x1a\xb8\xf1\x16\x00\xbf\x05\xc0\xe4\xf9\xa3\x06\xd6\x2f\x1b\xe8\x1a\x54\x79\xfb\x3b\x1a\xb8\x03\x29\x77\x5e\x36\x99\x00\xba\x91\xd6\x00\x95\xde\x7d\x13\xbe\x5d\xd2\xc0\xc6\x79\xc1\x26\x9f\x97\x08\x7f\x43\x43\x37\xde\xd6\xc0\xed\x3f\x69\xe0\xee\xd7\x35\xb0\x71\x5e\xac\x10\xa7\x65\xf6\x97\x35\xb4\x7e\xf9\x92\x86\x6e\xbf\x65\x92\xfe\xa2\xa1\x1b\x7f\x37\x49\x6f\x6b\xe8\xd6\x8f\x34\xb0\x71\xe9\x37\x1a\xba\x77\xe1\x4b\x06\xfa\x8a\x81\x5e\x04\xe8\xe2\x2f\xa0\xc4\x79\xc1\xb8\xa1\x6c\xfe\x9b\x1a\xba\xf9\x45\x0d\xdc\xb8\x0a\xc0\xbf\x34\xb0\x7e\xf9\xef\x06\xba\x02\x1f\xff\x61\x92\xfe\x69\xa0\x6b\x50\xd7\x3b\x00\x7c\x59\x03\xb7\x7e\xac\x81\xbb\xbf\xd5\xc0\xc6\xa5\x9f\x6b\xe8\xde\x85\xaf\x03\x74\xf1\x4b\x26\xed\xab\x1a\xba\x2d\x3f\x2a\xa2\x09\xbd\x70\x45\x62\xfd\x2d\x0d\xad\x5f\x7e\x07\xa0\x2b\x5f\x32\xd0\x57\x34\x74\xf7\x12\x00\x7f\xd4\xc0\xc6\x79\x31\xa5\xa8\xac\xe3\xdb\x1a\xba\x7d\x45\x03\x37\x5f\xd0\xc0\xf5\x4b\x1a\x58\xbf\xf2\x22\x7c\xfb\x9a\x49\xfa\x2a\x24\xbd\x64\x92\x5e\x36\xd0\xd7\x35\x74\xeb\xa2\x06\xee\xfe\x19\xb2\xc3\xa7\x7b\x17\xbf\x6b\xa0\x5f\x02\x0e\x62\x18\xa8\xea\xa5\x28\xc9\x24\x86\xff\xad\xa1\xeb\x7f\x06\xe0\x2f\x00\xfc\x55\x03\xeb\xd7\xce\x1b\xe8\xbb\x06\x7a\xd5\x40\xdf\x87\x02\x6f\x43\xd2\x95\x6f\x69\xe8\xce\xef\x4d\x12\x34\x74\xf3\x5b\x26\xc9\x54\x76\x05\x1a\xb8\x09\xb9\xee\xfc\x11\x80\x4b\x50\xfb\xdf\x20\xe5\xb7\xa6\x65\x53\x27\xd4\x74\xfb\x15\xc8\x64\x30\x80\x3c\xb7\x7e\x6e\x8a\x5d\x30\xd0\x4f\x0c\x94\x7e\xfd\xa9\x81\x7e\x61\x20\x83\xf3\xb5\x1f\x41\x4b\x80\xc5\x6d\xe8\xe2\xf5\xcb\x90\xf2\x8e\x06\xee\x7e\x4f\x03\xf7\x2e\xbc\x6c\x20\xa8\xea\x2e\x50\xeb\x96\x6c\x46\x4a\x06\x09\x49\x85\xe3\x82\x44\x9b\xc9\xc1\x12\x08\xf5\xe5\x60\x7d\x47\x43\xeb\x57\xbe\x6f\xa0\x57\x35\x74\xeb\x97\x90\xf4\xf6\x3f\x35\x74\xef\xc2\x77\x0d\x74\xde\x40\x50\x74\xe3\xbc\x10\xdd\xcf\xcb\x8a\xbf\xab\xa1\xbb\x2f\x6b\xe0\xde\x85\x57\x0d\xf4\x23\x0d\x6d\x9c\x17\x44\xe2\xb2\xc0\x2b\x1a\xba\xf9\x7d\x0d\xac\x5f\xf9\x11\x24\x01\x70\xe7\xbb\x00\x9c\x37\x99\x7e\x62\xa0\x0b\x90\xfd\x55\x93\xf4\x53\x0d\xdd\xfd\x16\x00\xff\xd4\xc0\xbd\x0b\x50\xf0\xde\xc5\x5f\x1b\xe8\x2b\x1a\xda\x38\x2f\x34\xde\x48\x22\x76\x5e\x43\xd7\x7f\xaa\x81\x9b\x3f\xd1\xc0\xfa\x95\x5f\x42\xd2\x05\x93\xf4\x73\x48\xfa\xb9\x49\xfa\xb5\x81\x7e\x61\xa0\xb7\x34\x74\xe7\x47\x90\x1f\xaa\xbf\xf3\x8e\x06\xee\x5d\x7c\xcb\x40\x2f\x42\xc1\xab\xd0\xf8\xc6\x79\x51\x59\x2c\x51\xfc\x9e\x86\xd6\xaf\xfc\x16\xa0\xab\xaf\x6a\xe8\xe6\x2f\xcd\xc7\xdf\x6b\xe8\xce\x4f\xe0\xdb\x2f\xcc\xb7\x4b\x06\xfa\x23\x7c\xfc\xb5\x06\x6e\x41\xb9\xff\xfb\x35\x0d\x6c\x5c\xfa\x95\x86\xee\x5d\xfc\x2a\x40\xaf\x09\x6c\x63\xa5\x6c\x09\x4d\x7d\x20\x51\xfb\xbe\x86\xae\x5f\x01\xe0\x2a\x00\xd7\x34\x70\xf3\x2d\x0d\xac\x5f\x81\x4c\x37\x7f\x6b\x92\x4c\xae\xdf\x43\xb9\x7f\x68\xe0\xf6\x6b\x00\xfc\x10\x80\x1f\x00\xf0\x63\x28\x7f\xed\xd7\x50\xfe\x8f\x00\x5c\x82\x4c\xdf\xd3\xc0\x1d\x40\xf2\xce\xab\x1a\xb8\xf5\x27\x53\xde\x60\x72\xcd\xa0\x79\xed\x8f\x06\xfa\xbd\x81\x2e\x19\xe8\x97\x06\xf7\xbf\x40\x93\x7f\x31\x49\x7f\x37\xd0\xdb\x1a\xfa\xbf\x5f\xd7\xc0\xc6\x79\x51\xf2\x8c\x24\xdb\x0f\x34\xb4\x7e\xe5\x9f\x06\x7a\x47\x43\xff\xf7\x65\x0d\xdc\xbb\xf0\x53\x48\xfa\xa6\x49\x12\x6c\x77\x46\xed\x20\xc4\x20\x9d\x95\xd5\xbd\xaa\xa1\xf5\xab\x5f\x32\xd0\x57\x34\x74\xf3\x6d\x93\xf4\x55\x03\xbd\x68\xa0\x1f\x1a\xe8\xeb\x1a\xda\xb8\xf4\x17\x80\xce\x0b\xea\x9e\x93\x4d\xfc\x50\x43\xeb\x57\x5f\x36\xd0\xb7\x34\xb4\x71\x5e\xe8\x1e\xab\x32\xdf\x8f\x34\xb4\x7e\xed\x2f\x1a\xba\xfe\x4f\x0d\xdc\xfc\xbb\xf9\x76\x45\x43\x77\x20\xd3\xfa\xd5\xff\x86\xec\xef\x98\x5c\x26\xff\xd5\xb4\xd6\xb7\x35\x74\xeb\xaf\x1a\xb8\xfb\xdf\xe6\x1b\x94\xdc\x38\x2f\xc6\xf2\x0b\x12\x9f\x1f\x6b\xe8\xe6\x55\x0d\xac\x5f\xfd\x2e\x24\xfd\x03\x80\x7f\x99\x6f\xe7\x0d\xf4\x7d\x0d\xdd\xfa\x9b\x06\xee\xfc\x52\x03\x77\xbf\xa8\x81\x8d\x4b\xbf\xd3\xd0\xbd\x0b\xbf\xd0\xd0\xbb\x62\x01\x7e\xf7\xbb\x02\x12\xd3\xe9\xdd\xef\x0b\x48\x90\xf6\xdd\x57\x05\x24\xf4\xb0\x77\x7f\x24\xa0\xdf\x18\x48\x0c\xee\xbb\x3f\x15\x90\x58\xfd\xdf\xfd\xa5\x80\x7e\x6b\x20\xd1\xbd\x77\xdf\x12\x90\x68\xec\xdd\x4b\x02\x12\x6c\xf9\xee\xdb\x02\x12\xda\xe6\xbb\x7f\x17\x90\x60\xda\x77\xaf\x38\xd8\xf9\x9f\x6f\x00\xf4\xee\x77\x4c\x9a\x6c\xe3\x1d\x01\x89\x41\xfb\x9f\x17\x05\xf4\x32\x40\xef\xfe\xc9\xa4\x09\x4c\xff\xe7\xeb\x02\x12\x5a\xd2\xff\x7c\xc5\x49\x52\xab\xc2\x30\xb5\x2a\x74\x1d\xa7\x42\x50\x8d\x13\xf9\xc8\xc0\x9d\x6b\x3e\x7b\x72\x50\xaf\xd7\xeb\x55\xf1\xe7\x3f\x0f\xb7\xe6\x96\xb3\x66\x8a\x60\x4c\xd1\x24\x2d\x69\xa7\x5d\x64\x03\xc9\x49\xb7\xba\xc2\x3a\x41\x37\x20\x7c\x0e\x80\x68\x8e\x93\xee\x4e\xec\x1f\x1d\x65\x69\x62\x05\x81\x28\x97\xb5\x1f\x08\x52\x2e\xcf\x4a\x63\x5b\x63\x74\x4b\xf2\x56\x8f\xba\x8e\x48\x06\x53\xb4\xea\xb0\xad\x0e\xb5\x55\xaf\xce\x5a\x10\x75\x62\x71\xad\xbd\xd4\x20\x49\x63\x4d\x39\xd4\x68\x10\xdc\xe7\x4c\x19\x8e\xc5\xc9\x2e\x38\xca\x3c\xe3\x73\xf3\x02\xec\x54\x44\xe2\xa3\x9a\x76\x47\x7d\xea\x2f\x6b\x97\xd8\xee\xda\x29\x3e\xa0\x87\xfc\x76\x8f\x34\x28\x39\x5b\x3a\x4e\x62\xdc\xf6\xfb\xfe\x52\x10\x06\x71\x40\xa2\x86\x2e\xbe\x92\x2d\x7b\xc8\xca\xb2\xb8\x79\x16\xd7\x79\xb8\x36\xff\xb0\x63\x6c\xe7\xdb\x9c\xf8\x31\x01\x7c\x1a\x0a\x11\xa2\x7c\x3d\x41\x1e\x43\x0b\x28\xb3\x04\x90\x26\x97\xb6\xc2\x43\x38\xa0\x51\xec\x87\x21\x54\x27\x8d\x64\xd6\xfa\x2c\x0a\x04\xbd\xfd\xb0\xc1\x12\xa4\x5c\x20\xad\x99\x3a\x7d\xa8\x24\x12\xf5\x86\x89\x47\x5d\x26\x6d\xaf\xc2\x34\x8a\x6f\x7b\xc9\x0b\x95\x3d\xbf\x8e\x4e\x38\xa0\x47\xe8\x21\x46\x63\x72\x2e\x76\x43\x1c\xa0\x19\xee\xfa\xa8\x5c\x8e\xdd\x08\x59\xc1\xa6\xe3\x34\x53\x84\x7d\x2c\xc3\xc5\x42\xbb\xd2\x28\x47\xb5\xec\x45\xd2\x6c\x5a\xf5\xd9\x0b\x12\xac\x62\x06\x59\x9d\xb0\xbb\x10\x8c\x76\x81\x41\x17\x7c\xd1\x85\x48\x74\x41\x45\x76\x8f\x32\x5d\x88\xc6\x76\x21\x4a\xdb\x17\x5d\x61\xb2\x2b\xbe\xb4\x3c\x74\x53\x94\x65\xaa\xf1\x04\x03\x71\xd6\x95\xf1\x2a\x43\xb3\x9e\x65\xef\x05\xb9\x70\xb6\xf4\x28\x5d\x0a\x32\x62\xf5\x00\xa2\x20\xb3\x8f\x99\x85\xa8\x4d\x4c\x96\x12\xd3\x47\x09\xce\xb5\xa1\xdc\x0f\x2b\x93\x21\x30\xfe\xe7\x03\x5a\xa3\xe2\xab\x72\x1e\x25\x4a\x7c\x4a\x4c\xa0\xc8\xc1\x2a\xff\x8c\xa1\x93\x9c\x12\x35\xbf\xd3\x71\xa9\xa8\x3b\x43\x39\x69\xcb\xa4\x6a\xe6\x63\x6a\x16\x35\x2c\xc9\x5a\x0b\xeb\xe4\xba\xce\x43\x10\xac\xda\x8d\x75\x0f\x14\x3e\x80\x3e\xa9\x05\xd1\x63\xca\xa7\x1b\xe9\x0c\x87\xd6\xcf\x80\x2e\x0f\x87\xaa\x6d\x88\x6e\x2b\x2a\xd5\x0e\xe0\x0c\x1b\x15\xc8\x16\x2a\xf8\x45\x30\x54\x0e\x2f\x78\xef\x43\xbc\x85\xb4\x4f\x3a\x1c\x3b\x41\x08\x07\xc3\x21\x77\xa9\xe2\x87\x31\xe3\x8a\xa9\x1a\xc7\x24\x41\x58\x3e\x9a\x5a\x4b\x6c\x7b\xfe\xa0\x48\xb8\xd3\x0e\xe1\x55\x78\x5a\x01\x7f\x6d\xcf\x76\x7b\xf6\x38\x5c\xbe\xf2\x8a\xcd\x3b\x2f\xfb\x79\x42\x81\x0b\x35\x21\x5d\xa5\xa7\xe9\x19\xdb\x99\x1a\xf5\x66\xe7\xb1\xcb\x3d\xa7\x13\x74\x8e\x0d\xa8\x83\x02\xea\x2a\x07\x71\x68\x8c\xf3\x6b\x51\x87\xc6\x8b\x6e\xc9\xf9\x75\xdc\xe4\x2d\x8f\x26\xfa\x91\x41\x96\x29\x49\xb3\xde\x52\x7c\xa7\xf0\x18\x0e\x5d\xeb\x97\x37\x5b\xc7\x62\x8e\xab\x17\x55\xf3\x48\x5a\x3c\x5a\xf1\x92\xe2\x2d\x8d\x93\x12\x5c\xef\x8f\xd3\xb6\xc7\x29\xe8\xba\xb3\xd6\xe8\x18\x8b\xf6\xec\x80\xa5\x13\x14\x7c\xe0\x49\x7a\x68\x64\xcf\x28\xb1\x21\x25\x79\x66\x60\xb7\x37\xae\x59\x67\x92\x5b\xd7\xb2\xf6\xd2\xf7\xfb\x6e\x71\x14\x9f\x96\xa3\x6c\x3e\x02\x81\xdf\xa5\x0e\x86\x37\x80\x90\x96\xae\xdf\xa3\xdf\xa8\xbf\x42\x3a\x26\x79\xb3\x49\xdc\xa5\x9e\x0e\x2b\x9e\xd6\xe9\xd9\xc3\x2c\x3e\xc9\x2a\xbd\x38\x11\x63\xa7\x17\x09\x57\x19\x91\xab\x2a\xb4\xc8\x4e\x6b\xd0\x09\xb2\x1c\xa8\x17\x5d\xda\x20\x89\x72\x68\xa9\xbd\x9d\xa5\xf9\xad\x66\x50\x22\x89\x50\xcb\xb4\x65\xb3\x5a\xc1\xd3\xad\x1c\xab\x09\x2d\x38\x72\x70\xd3\x66\x29\xb4\x56\x54\xec\xf9\x41\xc0\x49\x55\x3d\xf2\x9d\x03\x8f\xb4\xd6\x33\x45\x9d\x63\x93\x97\x88\xbb\xf2\xc0\x0b\x0b\x89\xa1\xdf\x9a\x6b\x97\x9e\xfa\x67\xad\xe7\x5b\x6e\x3d\xe5\x03\x47\xfd\x05\xb9\x04\x35\x79\xab\x70\x67\x13\x05\x5f\x20\x55\xb6\x14\x11\x7e\x46\xbe\xf3\xe2\x67\x82\x36\x99\xd3\x7f\xc5\x1e\x27\x93\xa1\xe8\x75\xe6\xb8\x3a\xd4\x63\xb1\x60\x99\x32\x4e\xaa\x9c\x55\x09\xe7\x8c\xef\x99\xfb\x09\x65\xd6\xbe\xe9\x53\x6a\xf5\xf5\xb8\x42\x79\x2d\xa0\x41\x6c\x4f\xb1\x5a\x9a\x00\xd1\xd7\xe3\x41\xdf\x45\x89\xfe\xab\x14\x98\xb6\x7e\xf5\x17\xc9\x37\xb4\x2a\x23\x50\x43\x25\x4d\xf6\x3f\x6b\x7d\x35\x8e\x5f\xc1\xaf\xad\xf6\x42\x7b\x4c\xd2\xf8\x29\x5d\x69\xb9\xec\x66\x87\x57\x63\x67\x21\x42\xce\x96\x3e\x4d\xfc\xd3\x47\xfd\x7e\x1e\x1f\x72\xb6\x54\x58\x29\xf8\x3a\xa4\x9d\x90\xa8\x2f\x08\x25\xcb\x82\x8a\x91\x8e\xa9\x96\x86\x89\x9e\xcd\xd4\x99\x68\x40\x8d\xa7\x59\x4b\x4c\x39\x70\x87\x08\x52\x25\x8b\xab\x52\xdc\xd1\x0c\x5f\xe4\x52\x31\x8d\x51\xc3\xcd\xe5\x50\xea\xa5\xde\x1c\xba\xcd\xb8\x05\xee\x30\x01\x83\x9a\xc1\x00\xa1\x64\x40\x77\x07\x1f\xf5\x00\x8a\x84\x24\x16\xba\x31\x8e\xcb\x65\x5e\x13\x64\x01\x4d\x26\x2d\xa1\x33\x91\x3c\x56\x16\x26\x08\xa1\x44\x3d\xd6\xd7\x4c\x63\xb0\x81\x8d\xdb\x14\x83\x57\xeb\x04\x51\x9b\x51\x4a\xda\xb1\x8b\x50\x4e\xcc\xaa\x4a\x54\x13\x89\x3d\x8c\x62\x99\xec\x32\xee\x6a\xd7\x43\x25\xb1\xf1\x07\x11\x4f\x8a\x3a\x1f\xc3\x5e\x4b\xba\xcb\x44\x69\x59\xae\xca\x72\xb1\x55\x48\x12\xcc\x32\x0f\xf8\x7d\xcf\xb1\x5b\x75\x70\x24\x9d\x03\x84\x5b\x73\x0e\x90\xa9\x02\xe1\x41\xa6\x89\x76\xde\x47\x40\x38\xc6\x47\x40\xbb\x49\x5a\x5e\xa8\x7d\x04\xb4\xb3\x3e\x02\xec\x9f\xb8\x9d\xf7\x11\xd0\x1e\xeb\x23\xa0\x3d\x1c\xb6\xf3\x3e\x02\xda\x59\x1f\x01\x6d\x2f\xda\xba\x8f\x00\x86\x7d\xe3\x23\xa0\x8d\xf0\xc0\xf2\x11\xd0\xce\xbd\xe0\x6f\x6b\x1f\x01\x99\xf4\xc5\xf6\xa8\x8f\x80\x41\x7a\xce\x31\xd9\x47\x40\xbe\x85\x62\xb9\x2b\x50\x6c\x4b\x87\x0d\xb6\x8f\x00\x91\xaa\xbd\x04\xe4\x76\x58\x33\xd3\x2d\x32\xc5\x0b\xc4\x1e\xbe\x96\x96\xc2\xa1\xc0\xeb\xb6\x96\x8f\x8c\x4a\x8c\xb2\xe2\x82\x78\xd9\xaf\x33\xd9\x9f\x9e\x1b\xe3\x5a\xad\x06\xce\x9a\x9d\xac\x8c\x2d\x85\x8c\xf5\x4b\x61\xb0\x12\x88\xcd\x43\x9b\x90\x8e\x5c\x11\xd2\xe7\xf6\x75\xa1\xf3\xa8\x0a\x92\xe2\xe5\x9a\x85\x67\x08\x9f\xeb\x12\x3f\x1e\xf0\x29\xb5\x17\x5d\xa6\x40\x6f\xc9\xe5\x00\x20\x9a\x93\x8b\x64\xd0\xde\x6d\x85\x66\x6c\x01\xe3\x0b\x69\x2d\xab\x80\x2f\x93\x78\x34\x82\x7f\xea\xff\x24\x49\x0a\x3c\x4e\x8c\x74\xe7\xff\xc5\x3e\x9b\xee\xcc\xb5\x19\x8d\xfd\x80\x12\x5e\xed\x90\xa5\xc1\x72\xd5\xef\xf8\xfd\x78\xab\x44\xd1\xcc\x33\xb5\xa7\x0d\xbd\xfd\x52\xaf\xc0\xb5\xd3\x79\x57\xac\x6b\xc7\xc8\xf2\xe1\x73\x7d\xd7\x79\x76\x6e\xd1\xa9\xf0\x8a\x33\xe7\xd6\x2a\x68\xce\xa9\x90\x8a\xf3\x80\x7e\x50\xad\xcf\xc0\xcd\x2e\x94\x36\xe7\x5b\xbb\x74\x16\x0d\xa7\x70\x87\x80\x26\x8f\x09\x92\x1c\x54\x14\xa9\x29\x9d\xd0\x5d\x3b\xa5\x14\xfd\x63\x32\x96\x36\x5f\x6d\x48\x15\x4e\x6a\x82\x70\x62\x65\xf6\x5f\x3e\x5f\x1e\x48\xc7\x47\x70\x70\x98\x2d\x0a\xaa\x42\x2e\x59\xae\xf0\x71\xed\x68\x26\x11\x25\xb8\xed\xd3\x43\x7e\xec\x87\x6c\xf9\x30\x8d\x79\x40\xa2\x47\x57\x4f\xac\xf6\x89\x75\xdc\xbf\xc2\x3a\x24\x94\x3e\x7a\x86\xc3\xb1\xa8\x88\x8a\x8a\x6b\x49\x83\x05\xe4\x51\xaa\xa5\x1e\x8c\x22\x17\x19\xe7\xfe\x07\x5d\x84\x03\xcf\xec\xba\xa2\xbe\xdf\x26\x3a\xeb\xd3\x9c\x74\x83\x73\xb6\xa3\x02\xec\x7b\xc6\x13\x08\x3b\xe0\xdb\xfe\x09\x62\xed\x86\xa0\x3a\x3f\xeb\x79\xbe\x79\xca\x49\xcc\xab\x59\xc1\x32\x3e\xce\x35\xd4\x67\x9d\xa3\x56\x5b\xc3\x61\x80\x66\x62\x41\x53\xcf\xd7\x9e\x8e\x49\xc5\x89\xe6\x1c\x54\xeb\xb3\xbe\x8b\x10\xa6\x42\x83\x54\xac\x22\x75\x14\xe0\xa0\x24\xd9\xc4\xcb\xca\xa6\x9c\x3f\x69\xb6\x68\x27\x20\x22\x7f\xb5\xeb\x8b\x6d\xfa\xea\xfd\xdb\x09\x92\x1c\xdb\x68\xf6\x4e\x97\x74\xbd\x17\xfd\x7c\x54\x23\x6a\xf8\x85\x1e\x9b\x4f\xb3\x72\x9d\x22\xfe\xe9\x53\x11\x21\x14\xc1\x29\x44\xe6\xc0\x81\x00\xcf\x43\x49\x32\x1c\x8e\x54\x97\x64\xb8\x67\xad\x20\xd8\x5d\xa6\x0e\xa1\x9f\x46\x76\x14\xf5\x52\xa0\x0f\x9b\x20\x47\xa2\x94\x70\x13\xad\x5d\x35\xe8\x12\xb9\xc3\xcf\x11\x80\xcf\x64\x8f\xd8\x75\xb3\x30\x9b\xf5\x30\x3d\x15\xf7\x08\x6f\xe4\x23\x67\x68\xe5\xbf\x1b\x50\xcd\x69\xa2\x0b\x42\xfb\x0f\xba\x6e\x2a\xbf\x14\x66\xe7\x62\xee\xb7\xc1\x6b\xfc\x61\xc9\x0c\x2e\xc7\x2a\xaf\xa1\x3e\x45\x71\x8f\xb3\xb3\x25\x31\xc3\x0f\x0b\x85\xc0\x7d\xae\x74\xf8\x5c\x5f\x3e\xb7\x2e\xc5\xac\x24\x5a\x6a\x94\x1e\x7c\x60\x8d\xd4\xba\x83\x30\x14\xcd\x25\x0f\x96\xce\x06\x71\x2f\xa0\x22\x99\x27\x0f\x96\x96\x06\x71\x69\x99\xc5\xa5\x07\xcd\xbe\xf0\xc1\x5a\xe9\xb1\xa0\x53\x5a\x65\x83\x52\x97\x09\xd5\x5c\x54\xf5\xa0\x62\xc8\x92\xe6\x8c\x5c\x2d\x8b\xcf\x99\x47\xda\x6a\xe7\xda\x63\x83\xb0\xf3\x69\xee\xf7\x8f\xd0\x43\x62\x9c\x1f\x57\x9c\xea\x52\x4c\x84\x2a\x4b\xbd\xec\x96\x92\x8a\xe9\x94\x24\x58\x3a\xfe\x96\xa7\xf6\x36\xed\xc4\xa6\xaa\x2e\x5d\x85\xc9\xef\x1d\x79\xd3\x02\xa3\xa9\xdc\xf4\x2b\xa7\x07\xa9\x4f\xf2\xff\x52\xae\x05\x1e\xf6\x3c\x2f\xd0\x52\x42\xd6\x23\x1f\x9b\x37\xeb\x2d\x93\x16\x7b\xce\x7f\x39\x95\xa0\x39\xdf\x92\x15\x11\x2f\x68\xee\x6b\x41\x2d\x0d\x07\xcd\xa8\x73\x29\x4c\x3d\x22\x56\x06\xf9\x4e\x3e\x2d\x83\xb9\xaa\x4d\xe9\xe1\x75\x5c\x9d\x17\xd2\x4c\x54\x31\xe3\x80\xef\xc9\x46\xea\x8f\x4d\xc8\x52\x2e\xbb\xef\x58\x4e\xda\x9c\x0a\xc5\xdc\x33\xf9\x1d\x78\x8d\xdf\x75\xf7\x65\xd0\x07\xfc\xea\x19\xfc\x74\x36\x02\xd9\x24\xa1\x9a\xf3\xd0\xc3\x45\xd7\x74\x00\x90\x16\x5b\x5e\x99\x05\x9b\x4f\x32\x79\x46\x7a\x14\x81\x56\xe6\x33\xad\xc4\xb2\x5d\x9c\x25\x46\x8a\xb2\xea\x57\x5d\xc6\x80\x09\xfd\x48\x39\xab\x78\xaa\xeb\x66\xba\x89\xeb\xa8\xb0\xef\xb1\x17\xc3\xd1\xde\xbc\x71\x45\x90\x0e\x65\x43\xba\x97\x0f\x52\x44\xb5\xe3\x3a\x8a\x7d\xeb\x32\x2e\x3d\x66\x94\xd2\xdc\x01\x7e\x5c\x4b\x59\x46\xa8\x3b\x30\x0d\xe4\x05\x91\x10\xf3\x8d\x58\xaf\x6d\xea\xa7\xbb\x26\xb4\xf2\x06\x4f\x10\x56\x80\x29\xf1\xe9\x20\xee\xb1\x81\x7c\xf1\xdf\x60\x98\xaa\x9b\x25\xce\x58\xdc\xf0\xb1\x9e\xf5\x47\x49\xdc\x63\xaa\x29\x47\x27\x39\x15\x7d\xe6\x23\x6f\xce\x6b\x4a\xcc\x77\x57\x5d\xa1\x71\xe3\x7e\x38\xe0\x72\x33\xd4\x11\xb5\x46\x6a\xe9\x2f\x52\x07\x56\xfc\xd3\xe4\x04\x53\x75\x64\x37\x74\xe3\xd7\xca\x8a\x18\xee\xb8\xe2\x34\x9c\x04\x8f\x9b\x8e\xf2\x26\x7a\x76\xbe\x48\xdd\x40\x10\xbb\x40\xd4\xf8\xa8\x1f\x91\xce\x31\xbd\x02\x79\xb3\xf5\x2d\xab\x1f\x10\xf7\xe4\x14\x65\x7c\x45\x76\x59\xde\xc1\xc1\x6e\x5d\xdd\x8f\xbb\xd6\x9d\x68\x8e\x34\x5e\x51\xe2\x70\x38\x6d\x71\xbd\xcd\x06\x0c\x8b\xbf\x0a\xbe\x14\x7f\x1d\xc0\xb5\x43\xfa\x9c\xb4\xfd\x98\x74\x9e\xce\xaa\x06\xde\xec\x7c\x82\x4d\x4f\xac\x95\xa3\xa8\x8f\xd2\xd4\xc3\x1d\xf3\xc5\xcb\xa5\xcb\x23\x25\x60\x27\xa3\x43\x41\x74\x05\x23\x1d\x5d\x79\xa3\xc3\x6b\x23\x7c\x37\x33\xd6\xfa\x42\x54\xd0\xa4\xad\x72\x59\x5f\xfb\x34\x69\xcb\xe5\x42\xea\x2a\x0f\x6c\x26\xbd\x66\xaf\x60\x32\x47\x9c\xe0\x0c\x82\xf9\xf0\x0f\x5a\x08\x81\x32\xb6\x30\x0f\x92\x2a\x6e\xd6\x21\x6e\x83\xe5\xe7\x52\xa9\x93\x8e\x3a\x16\x87\x5f\x60\x4b\x01\xbf\x6d\xc1\x42\xb4\x60\x11\x12\x29\x28\x92\x2b\x68\x91\x08\x36\xaf\xc8\x1c\xc6\x14\xe7\xd4\xdc\x32\x76\xaa\x0e\x6a\xa8\x8f\x99\x69\xd8\xf1\xa3\x1e\xe1\xa2\x3b\xd9\x32\x27\x6b\xa2\xd0\x9c\x83\x8c\xdb\x13\x62\xcd\xd2\xfc\x40\xe7\xd8\xc8\x1a\xe8\xd1\x2f\x9e\xd0\x1d\x1d\x94\xe0\x3e\xeb\xc8\xd9\xf4\x04\x63\xa7\x07\x7d\x21\x54\x14\x4f\xd9\x1e\x95\xe2\x5a\x81\xd0\x01\x4a\xda\xa4\x89\xa5\xef\x4c\xa1\x72\x49\x66\xd0\xbd\x78\x36\x25\xce\xc9\xb9\x39\xec\x38\x08\x61\x52\x71\xe6\xd4\x16\xc8\xa9\xa8\x52\x29\x2a\x19\x5d\xc4\xd6\xda\x27\xe8\xc6\x93\x94\xf4\x0c\x8d\xc6\x75\x37\x96\x21\x64\xe0\xb3\xf1\xef\x18\x1d\xa1\xc7\x07\x4b\x9d\x80\xef\x0e\x2a\x82\x2f\x2b\x9e\x63\xb9\x44\xcd\x84\x8a\x33\xee\x47\x87\x43\x9b\x6a\x73\xb5\x98\x44\xb1\x4b\x8a\x86\x01\xa1\x2d\x74\x4f\xcf\xa5\xc3\x74\x59\x68\xff\xd6\xd4\x29\xa8\xb8\xe2\xcc\x11\x99\xcf\x99\x81\x3b\xac\xfc\xae\x49\xe8\xb1\x71\x16\x81\x62\x45\x31\x4e\xdb\x3e\xc6\x06\x31\x39\xea\xf7\x37\x69\x5d\x88\x98\x8a\x33\xc7\x45\xee\x68\x32\x06\x1c\x99\x09\x3e\x41\x55\x35\xfa\x20\x49\x0c\x2e\xc6\x79\x67\x76\x6c\x33\x12\x87\x98\x82\xb6\x64\x52\xb3\xf7\xc4\xe1\xa3\x4f\x3f\x71\xf0\xc4\xe1\xe3\xcd\xc2\x3e\xb4\xa4\xac\x5a\xf1\x03\x9a\xe5\xe8\xa0\xeb\x3a\x22\x55\x0d\x77\xd1\x98\x1a\x03\xa2\xbe\x5e\x3a\xe7\x9c\x0a\xd1\xb3\x04\xfc\x07\x65\xaa\x2c\x2a\x90\x9d\xf9\xae\xf6\x6b\xab\xeb\x2a\x68\x35\xc1\x94\x44\xb1\xe0\xfd\x90\xb5\xa5\x0b\x5d\x33\x0b\x46\xf1\x2f\xe0\xd9\x42\xac\xb7\x8a\x44\xc5\xd1\x5b\xce\x44\xeb\x43\x63\xe7\xdd\xd8\x29\x6e\xb2\x34\x55\x6b\x15\x47\x65\x72\xd2\xc5\x66\x42\x1e\x35\x66\xa6\xbf\x6a\x22\x3d\xed\xc7\x31\xe1\x14\xac\xf1\x8c\x5f\x49\x77\xe4\xa4\xaa\x99\x99\x86\x29\xdd\x70\x26\x7d\x54\xbc\x68\xed\x26\xc3\x2b\x2a\x6d\x64\xbc\xf5\x39\xc1\xe6\x63\xd5\x4a\x10\xaa\x71\xe2\x77\x9e\xa2\xe1\xaa\x8b\x70\x7e\x9f\x67\x04\x3c\xd6\xbb\x3c\xa1\xb7\x3a\xe3\xfa\x6e\x39\x11\x0b\xbc\xba\xbc\xfe\xd0\xa7\x1d\xc1\x01\x96\x71\x20\xd9\x0c\x5a\xea\x20\x5e\xea\xc0\x6a\x8b\xc8\xca\x65\x97\xe9\xeb\x16\x19\xca\xcb\x42\x84\x61\x82\x10\x66\x60\xd2\x54\x30\xc5\x99\xb4\x8a\xf3\x18\xc2\xa0\x1d\x9f\x0a\xd9\xb2\xc2\x4f\xec\x42\x31\x43\xd8\x38\x68\xe4\x49\x82\x47\xda\xb0\x56\xb3\xcc\xca\x2b\x36\x99\x3c\x6a\x33\x0e\xfb\x5e\x62\x05\x22\x2b\x42\x25\x35\xbd\x2a\x16\x45\xe9\x06\x58\xb0\xb3\xde\x04\x1f\x5c\x59\x0a\x96\x07\x6c\x10\x95\x54\xa1\x92\xe4\x3f\xb5\x13\x4e\x1e\x2c\xf9\xb4\xa3\xf7\xad\xcf\xa1\x89\xa2\x2e\x95\xf6\x64\x33\x91\x08\xc4\xd0\xa1\x11\x89\xa5\x54\xcc\x55\xdd\xe6\xb3\x73\xad\x87\xd0\x03\x73\xd8\x99\x3b\xf5\xc0\xbc\x33\xb9\x55\x6a\x6a\xa3\x09\x0e\x25\xd1\xe1\x02\x6b\x24\x0c\x67\x46\x27\xcc\x4c\xcb\x1c\xf7\xc5\x78\xb6\x8e\x12\x6c\x8d\xa3\x3e\x35\x15\x9b\x6b\x35\x44\x87\x9f\xfc\x54\xed\x89\xa7\x3e\x7a\xea\xe8\x53\x8f\x3d\xf3\xc4\xe1\x53\xc7\x0e\x1f\x7f\xea\x89\x4f\x1d\x3e\x56\x2e\xcf\xc6\x35\xb1\xd1\x91\x1f\x21\x35\x13\x09\x52\xec\xbc\x17\x9d\xe6\xc6\x6b\xe7\x5b\x4e\xc3\x69\x96\x5a\xce\x0c\xb5\xb4\x18\xd0\x0c\x1f\xa9\x2f\x3a\x35\x47\xda\xdd\x2a\x3b\xe3\x47\xea\xd5\x91\x5c\xa8\xf6\x79\x16\x50\x1d\x55\x6c\x38\x74\xb5\xee\x3b\x4a\x87\x18\x21\xdc\x66\x34\x62\x21\x29\x97\x35\x50\x0b\x68\x97\x65\x7f\xb9\x01\x4e\xdb\xc0\x54\x5a\x0d\x9e\xa6\xec\x2c\x7d\x9c\xf1\x2d\x9f\x54\xf2\xa2\x1d\x8b\x15\xd5\xac\x8e\x83\xf4\x54\x92\x1e\x08\x64\x64\x33\x70\x7a\xd7\xa4\x2d\xac\xe7\x64\xcc\x7d\x1a\x89\xa5\xf0\x04\x33\xa7\xc3\x8f\x0f\xc2\x90\xaa\xb9\x13\xa0\x19\x31\x81\x79\x93\xb5\x3c\x31\x6c\x66\xa6\xe1\x4d\x0a\xc6\x99\x83\xa6\xcc\x96\x96\x24\x72\xcf\x20\x96\x02\x1c\x78\x72\x41\x10\xd8\x18\x95\x9a\x22\x79\xa2\x0a\x3f\x95\x6d\xad\x50\xbc\x59\xb9\xec\xab\x8d\xbd\xec\x56\x15\x0e\x24\xca\x65\xa3\xf2\x83\x68\xaa\x98\xc3\x0a\x98\x36\x4a\x31\xd7\xdb\x7b\x56\x81\x8c\xd8\x57\xee\xe7\x23\x8f\x17\x2e\x5b\x72\xc5\x02\x76\x56\xc7\x0a\x80\x58\x84\xac\x86\x23\x38\xe5\xc8\x36\x04\xc9\x70\x31\x99\xe0\x62\x2d\xc5\x0c\xbd\x39\xf2\x53\x11\x16\xe4\x7f\xb3\xf5\x74\x42\x89\x26\xf5\xc2\xa0\x16\x35\x73\x74\x85\xe3\x24\x41\x33\xb4\xc6\x09\xeb\x13\xb5\xb9\x76\xd7\x0a\x76\xcd\xf2\x64\x55\x9b\xa8\xd3\xcd\x6c\x44\x27\x1c\xf5\xfe\x3b\xdc\x3b\xaf\x29\x6e\x6f\xc4\xde\x42\x91\x5d\xbf\x3e\xfc\x5c\x04\xc0\x8d\x51\x83\x14\x5e\x28\x0a\xed\xb2\xaa\x6c\x63\xb4\x5d\xd4\x5c\xb5\xcf\x83\x33\x7e\x4c\xe6\x02\x2a\x96\x3d\x7f\x7a\x2f\xcf\x72\xe4\xb6\xde\xd1\xd8\xd3\xd8\xf4\xe2\x95\x70\xc9\xe7\xd1\xdc\x69\xb2\x7a\x96\xf1\x8e\xa0\x34\x8b\x06\x1c\x30\x74\x02\xf0\x6b\x7d\xea\x54\xc8\xfc\x0e\x11\x5b\x2c\x25\x15\x16\x47\xd2\x15\xfb\x4c\x5b\x33\x6a\x58\x14\x09\xe8\xf2\x7d\xc4\x65\xea\x16\x50\x63\x2d\x99\x21\xb5\x83\x87\x4e\x1c\x79\xea\x49\x2f\xd6\xc0\x74\x83\x08\x36\x6e\xf6\xb7\xc2\x4b\x8c\xe9\x18\x60\x2b\x17\x7f\xa9\x4a\x05\x77\x48\x36\xc3\x48\x63\xd8\x82\x08\xd6\xa4\x76\x4a\xe2\xc2\x8f\x06\x6d\xce\xc2\x60\x69\x38\x24\x35\x95\x02\xe7\x86\x3a\xba\xfc\x11\xda\x65\x51\x23\xae\xe9\x9f\x72\x3b\x25\xd3\x86\x43\x93\xa8\xa3\x3a\xca\x64\xbc\xe2\xf7\x1f\x5d\x2d\x2a\xb0\xe8\xc8\x06\x9c\x86\x36\x3b\xe1\x8e\x74\xdd\x9d\x1a\x06\xd5\xec\x26\xb1\xba\xc9\xec\x3f\xba\x3a\x93\xf1\xb1\x7e\xd0\xe5\x48\xa5\xbb\xd4\xb2\xfb\x10\x35\x21\xb9\xe6\xbb\xc4\x5b\x58\x03\x25\x44\x07\xe0\x10\xbd\xd3\x36\x69\x91\x89\xa4\xe9\xd1\x66\xdc\xc2\x05\x13\x9a\x27\xe6\xf0\x54\x95\x69\x70\xac\x51\x6e\xd0\x1d\x3d\xd4\xc9\x78\xc0\x37\x57\x26\x92\xec\x9b\xab\xfa\x25\x73\xd8\xfb\xd4\x59\xaa\x2d\xc8\x90\xd6\x0b\x5c\x47\xd7\x22\xf7\x79\x28\xa7\x88\x83\xb5\x69\x93\xe0\x5a\xad\x46\x5b\xb0\x22\xe7\x4f\x8f\x55\x1d\x0e\x78\xcd\x95\x6f\x20\xe4\x9d\xad\x32\x41\xe6\x6e\x80\x09\xd2\x46\x6b\xdc\x04\x50\x31\x88\xd6\x6a\xb5\x58\xb1\x1c\xf3\x54\x5e\xed\x4c\x9c\xe9\x71\xc0\x91\xc7\xa0\x38\x0e\x3d\x5a\x6b\x33\xda\xf6\x63\x69\xc5\x6c\x77\x91\x0f\xa8\x52\x82\x22\xec\x0b\x8c\x43\x64\x7c\x68\xb3\x26\xcc\x4c\xa1\x19\x60\x56\x7c\x3f\x2f\xfb\x31\x62\xe4\x1c\x44\x72\xea\x9d\x21\x63\xa7\x66\x5a\x46\x2d\x3d\x0a\xd7\xea\xf3\x03\xc2\x57\xab\x32\x42\xce\x26\x05\x74\xd8\x7e\xd9\x8a\xca\x91\x9f\xcc\x42\xe5\x1c\x31\xc2\x94\xfe\xaa\x77\xc9\x0c\xd3\xf7\x5c\x90\x05\x01\x95\x15\x6a\x0b\x20\x9c\x0f\x18\x3f\xad\x21\x3d\x0e\x32\xa6\xf4\x4a\x51\xc4\xdc\x03\x7e\xd1\x77\xd6\xd8\xa5\x9e\xd8\x38\x4d\x30\xa7\xb7\x4c\x2f\x68\xc6\x30\xcc\xb6\xfc\xa6\x59\xa3\x30\x63\x05\x4e\x8d\xf9\x17\xd6\x66\xf9\x19\xc3\x2c\x3a\x6a\x98\x15\x18\xfd\xc7\xb2\xb8\x46\x6b\x6e\x1d\xf3\xf4\xea\x4d\x1d\xc1\xc8\x9e\x20\xbd\x79\xc9\x5b\xf3\x66\xf6\x15\x2a\x6b\x2d\x88\x0e\xca\x51\x16\x44\xa1\x28\x49\x70\xe4\xd9\xf1\x6e\xc3\x94\x3a\x03\x4f\x28\xbe\x6d\x6f\x2d\x6f\xdf\x9e\x35\x44\xb1\xac\xdd\xb1\xd5\x13\x79\x01\x92\xe0\x5e\xde\x18\xaf\x3d\xc6\x18\xaf\xd7\x24\x2d\xaf\xad\x8d\xf1\x7a\x59\x63\x3c\xfb\x27\xee\xe5\x8d\xf1\x7a\x63\x8d\xf1\x7a\xc3\x61\x2f\x6f\x8c\xd7\xcb\x1a\xe3\xf5\xbc\xc1\xd6\x8d\xf1\x22\x1c\x1a\x63\xbc\x1e\xc2\x1d\xcb\x18\xaf\x97\x33\x95\xeb\x69\x63\xbc\x4c\xfa\x62\x6f\x74\xcc\x3b\xc6\x18\xaf\x37\xd9\x18\x2f\xdf\x42\x31\xdb\x0a\x14\x7b\xa2\x7b\xea\x72\x85\x79\x3d\xb1\x39\x11\x53\xc3\x84\xec\xc1\x3d\x4b\x9d\xf5\xa7\x96\x46\x62\x47\x59\x1d\xf0\x70\x5a\x75\x2f\x7d\xd7\xb2\x6b\xe6\xda\x71\xb1\x9c\xe0\xdb\x93\x13\x42\x84\x4d\x96\x13\x4c\xcb\x89\xc0\xa3\x53\xcb\x89\x60\xac\x9c\x08\xc6\xc8\x89\x20\x2f\x27\x82\x0c\xcf\x04\xa3\x3c\xc3\x0a\xe4\x44\xf6\xaa\x43\x4f\x7a\x31\x66\xcf\x1c\x7b\x42\x5a\xe3\xf2\xac\x35\x2e\xf4\x31\xf2\x84\x56\x11\xee\x6c\xb6\xbf\x6f\x7a\xfb\xde\x30\xbd\xf5\xda\x98\x6f\x66\x7e\x3b\xed\x6c\x17\x9a\x3f\xa8\x10\x53\xaa\x1f\x99\x42\x53\x3d\xe5\xc0\xc1\x76\xa4\x43\x44\x94\x9a\xfe\xb4\x6c\x49\xee\xe1\x33\x7b\x06\xe6\x91\xa4\x58\x88\xb0\xf4\x24\x00\x94\x0f\x5e\x2c\x54\x8a\x9f\x82\x4c\xa1\x7c\x4c\x2b\x54\xa8\x17\xbc\xa7\x94\x8f\x22\xa1\x92\xde\x9c\x50\x72\xb6\xc4\x6c\xdd\x03\x13\xa5\x44\xd0\xb1\x4a\x04\x7f\x5f\x89\xf8\xff\x86\x12\x11\x78\x3d\xb0\xea\xdf\xa9\x12\x21\x8f\x43\xe5\x73\xbd\x6a\xcc\x76\xb4\xad\xb9\x8f\xe2\xa5\x50\x6e\xbc\x2f\x27\xa6\x92\x13\xdc\x5b\x58\x33\xfc\xcc\xcb\xe5\xa2\xe3\x8a\x5a\x5f\x4c\x16\x0a\x67\xbb\xe5\x72\x3e\xc5\xdd\xca\xc6\x26\x65\xa9\x13\x0c\x36\x37\x05\x31\x49\x81\xac\x10\x94\x74\x47\x82\xe9\xfd\x70\xa4\xef\x89\x70\xa4\x81\xd7\xd9\x24\x24\xe9\xd4\x82\x69\xc0\xc3\x6a\x97\x15\xbf\x7b\x78\x5f\x24\xfd\xef\x14\x49\xea\x66\x6d\x1a\x19\x32\xe0\xe1\xe3\x8a\x1e\xd2\xce\xf3\x7d\xe1\xf1\xbe\xf0\x98\x46\x78\x4c\x38\x74\xdd\xd3\x5b\x3f\x7d\x47\xd2\x84\x2b\xf9\xea\x7c\x6b\x46\x5e\x81\x06\xd1\x27\x05\x56\x6a\x9f\x54\x2e\xbb\x2e\x31\x5e\x19\x10\xb2\xb3\x7b\x6b\xcf\xa7\x19\x1b\xe0\xae\x23\xb1\x8d\xc2\xa6\x23\xc6\xb6\xf6\x8d\x7b\x71\x6c\xbd\x73\xa1\x9b\x26\x28\xd7\x41\x99\x77\x30\x62\x32\x28\x7b\x04\x85\xb0\xa7\xcd\x90\x4e\x05\xb4\x3f\x88\x15\x5d\xbd\x58\xa7\xd9\x2a\x0b\xbc\xd0\xd1\x85\x95\x11\xca\xa7\x83\xb8\x97\xfd\xd0\xe7\xac\x4d\xa2\x88\x74\x74\x55\x5a\xde\xa9\x17\xf8\xfa\x64\xd7\x8a\x5e\x9d\x3f\x2f\xd6\x58\x81\xa5\x74\xc1\x99\xb0\x6e\x46\xd6\xae\x5e\xf6\x0f\x78\x98\x3b\x55\x3a\x35\x22\x2e\x47\x4b\x65\xd4\x31\x53\xdc\x4c\xd5\x51\x02\x18\xd7\x64\x19\xaa\x10\x6f\xc1\x35\x12\x84\x14\xea\x91\x64\x44\x8f\xcc\xa7\xb8\xb9\xfe\xe6\x55\xc5\x0c\xf6\xe0\x35\x20\x83\x87\xec\x92\x35\x28\x63\x7b\x64\xe5\x31\x1d\xb2\x07\xd3\x45\xde\x42\x06\x17\xbb\xd2\x11\x54\x46\xb9\x41\x22\xa2\xbf\xe7\x47\x25\xc7\x1b\xc6\x7a\x3d\xcf\x33\xd9\x95\x70\x84\x3d\x4d\xb3\xb9\x72\x63\x2d\x03\xa6\x98\x95\x7b\x2b\x07\x09\xdc\xc8\x3e\x73\xec\x09\x4c\x32\x37\xba\xf2\x29\xd5\x68\x3f\x22\x12\xe7\xef\xc4\x23\xb2\x87\x3e\xbd\xd4\x7d\x77\x51\xa0\x71\x37\x27\xe0\x9b\x52\x45\x6b\x79\x60\x57\x5e\x7a\xd8\x7a\x44\xb4\x28\xd8\x2b\x75\xb6\x26\xb3\xa2\x06\xc9\xa7\x11\x94\x20\xfb\xa9\x63\x81\xbf\xa5\x28\xf6\xf9\xb2\x1f\x13\xcb\x02\x7b\x4e\x10\xc2\x0f\xab\xca\xed\x43\x56\xa8\xff\xd7\x72\x18\xac\xac\x10\x9e\x66\x9f\x56\x0b\xc6\x0c\xfb\xa9\x69\x80\x76\x28\x27\x3e\xc0\x8d\xec\x9a\xb9\x43\xb5\x75\x25\x3a\x46\x57\x62\x42\x57\xa2\x5a\x57\x62\x59\x5d\xc9\xfe\x89\x59\x5e\x57\x62\x63\x75\x25\x36\x1c\xb2\xbc\xae\xc4\xb2\xba\x12\xf3\xf8\x34\xba\x92\x18\x0e\x73\x92\xa6\x97\xa7\xe1\x90\x27\x08\x33\x84\x03\x4b\x57\x62\x39\x4d\x86\x69\x5d\x29\x93\xbe\xc8\x26\x5c\x1d\x62\x36\x59\x57\xca\xb7\x30\xde\xeb\x15\x13\xdd\xd3\xd7\x48\xbb\xe1\xc4\x4a\x9a\x4d\x40\xfc\xdd\x8f\x9d\x38\xfa\xc4\xa3\x3e\x8f\x6a\xf0\x3c\xc2\x5d\x0b\x3a\x0d\xe7\xec\x33\x1f\x3e\xfc\xd1\xce\x21\xdf\xc1\x4b\x21\x6b\x9f\x6e\x3c\xb8\xe6\x44\xab\x2b\x4b\x2c\x8c\x9c\x46\xd3\x29\xfb\x71\xcc\x05\xdb\x95\xe1\x75\x7c\x0b\x3b\x51\xec\xc7\xd2\xf7\xa2\xc8\xd2\x9c\x9f\xc7\x4e\x27\x38\xe3\xb4\x70\x73\xfe\x3f\xf1\x7c\x0b\x37\x3f\x88\x9b\x0f\x7f\x18\xd7\x5b\xb8\xd9\x7c\x78\x1f\xae\xe3\xa6\xa3\x2c\x71\x08\x77\x5a\xad\x96\x34\x1d\x33\xb9\xe6\xad\x5c\x03\x5a\x94\x6f\x7e\x5f\x0b\x37\xf7\x61\xe7\xe4\x49\x5a\x2a\xc9\x56\x3e\x8c\xf7\xa5\x85\x64\x7c\x68\x91\xdf\xe4\x92\x79\x1e\x6e\xb5\xb0\xd3\xf3\xa3\xc3\x67\xfc\xd0\x69\x74\xfd\x30\x22\xd8\x19\xf4\xcf\xf8\x5c\xf6\xcb\xf6\x26\xe8\x64\x5c\x9b\xb5\x92\x07\xf1\x0a\x89\xfd\xc6\x5a\x6a\xd7\xd8\x98\x76\xaa\xd6\x7a\x4b\x91\x93\x68\xbb\x87\xc1\xb8\xed\xa2\xeb\x54\x55\x29\x27\x7d\xd8\x0d\xfe\x90\x82\xdc\x6f\x96\xdb\x59\x9a\xe5\x64\x5b\xd7\xf1\xaa\x59\xed\x5d\xc9\xbe\x95\xf7\xdf\x53\xbb\x4b\xfb\x56\x5e\xac\xc2\x72\x8c\x73\x6b\x70\xa6\x2b\xb5\x65\x12\x3f\x2d\x13\x0e\xc9\xac\x32\x87\xcf\x97\x95\x59\x3d\x4a\x80\xaf\x5c\xe3\x68\x27\xf6\xd6\x56\x06\x61\x1c\xf4\x43\xd2\x48\x73\x43\x12\x66\xf4\x50\xcf\xa7\xcb\xf6\x37\x48\x4a\x66\x0a\xda\x87\x06\x4e\x48\x36\xc8\xb5\x2f\x7d\x7e\x26\x29\x77\xc3\x3b\xc2\x6c\x15\xe9\xf7\xc2\x4a\xd4\x2e\x39\x72\x99\xed\x9d\x27\x37\x9e\x62\xab\xbc\x93\x8d\x32\xc2\xb9\xfa\xcd\x7c\xc4\x4d\xda\xc2\x9b\x39\x0e\x2a\x2e\x2a\x16\x07\x93\x3e\xd2\x82\x35\xe7\x71\x33\xd8\x62\x1b\x56\xe1\x5c\x2b\xcc\x5e\x74\x07\x38\xf5\x78\x6c\x1e\x25\x98\x97\x36\x21\x1e\x14\x18\x08\x8d\x9f\xea\xbb\xb5\x1c\xef\x86\xdf\x4b\xc9\xca\x6c\xb2\x80\x67\xfd\x67\x3e\xf3\xb9\xcf\x47\x1f\x1b\x23\xe0\xc7\xca\xf5\x47\x70\xf3\xe1\xff\xcc\xc8\x67\xe5\xae\xef\x08\x7d\x5a\xa8\xc8\x46\x44\xe3\x66\x33\x75\x9d\xe2\x90\x30\x12\x3b\xc3\xe6\x5a\xae\xb6\x7d\xd8\x31\xd2\x7b\x1e\x44\x3b\xc8\xeb\x16\x76\xa4\x9e\x4d\x62\x22\xc5\x73\x2b\xc1\xf9\xf2\xa3\xd8\x68\xe5\xa8\x08\x8d\x82\xf6\xc7\x96\xc7\x0e\x4c\xfa\x2d\xf6\x48\xd5\x58\x2f\xaa\x51\xbb\x26\x96\x15\x36\x9b\xce\xf2\x20\xe8\x38\xd8\x51\xeb\xcd\xa3\xa4\xcb\xa4\x67\xc2\xa6\xf3\x81\xf6\x80\x47\x8c\x37\xe6\x3f\xe0\x28\x8a\xb4\x36\xe9\x84\x24\xa2\xf8\x37\x3d\x21\xe5\xc2\x38\x25\x75\x77\xa3\x2f\xf5\x0f\x38\xb8\xb9\xef\x23\xad\x3d\xeb\xcb\x56\x13\xc7\xeb\x04\x01\xad\x42\x67\xb1\x13\x74\xb7\xa9\x09\x64\x54\x80\xb1\x97\xdd\x59\x15\x60\x9a\x25\x5e\x2d\xef\x5a\x67\x9f\x29\x72\x78\xa3\x5e\x1b\xe2\x78\x64\x99\xa7\x7a\x99\xe7\x13\x0e\x91\xa5\xd3\x55\x6b\xa9\xe0\x63\x97\x79\x3e\x66\x99\xe7\xf9\x65\x9e\x67\x96\x79\x3e\xba\xcc\xd3\x74\x99\xc7\x39\x9f\xd9\x66\xf3\x5e\xbc\xcc\xaa\xb5\xde\x5a\x21\xb5\x83\x3c\x7d\x20\xa2\xd6\xcf\xac\xbe\x60\x65\x33\x6e\x4f\x73\x1a\xc4\xc8\xba\xab\x6b\xd5\x47\x12\x96\xf0\x4b\x3d\x2f\x9a\xf3\x08\x59\x20\x93\x69\x38\x54\x7e\x0e\xa1\x51\x27\xa0\xf2\x70\xc1\xc9\x14\xe9\x6a\x57\x7f\x39\xef\x81\x05\xce\x54\xa7\xa4\x51\xba\x28\x8e\xa7\x52\x81\x19\x41\x8e\x67\xde\xb7\x26\xf8\x7f\xc9\x9a\x60\xa2\x82\xc4\xb0\x3f\x49\x41\x32\xae\x69\xab\x45\xfa\x91\x3c\xa1\x22\x9d\xea\x8a\xdf\x8f\xaa\x3e\xed\x54\x23\x92\x3f\xe2\xd9\xf4\xf9\x82\x26\x7d\xb6\x84\xf4\xa7\x20\xb8\xd9\xf8\x63\x13\xfb\x2f\x49\x4d\xeb\xc6\x49\x0d\x40\xe2\x12\x9c\x3f\xaa\x96\x6e\x48\xe1\x09\x63\xd1\x13\x49\xc7\x8f\x85\x22\xa5\xfd\x04\x49\xcf\x00\x25\xfd\x10\xa3\xd4\x0d\x48\xd8\x29\x31\x5a\xa2\x8c\x56\x65\xb0\x09\x6a\x39\x54\x51\xb8\xb8\x04\x25\xb2\x31\x47\x2c\xa4\x08\xd9\x81\x40\xfe\x57\x7a\xc3\x0e\xf2\xe7\xef\xa2\x0b\xf2\xb9\xd6\x0c\xb5\x9c\xcb\xa4\x9e\xad\x21\xd5\xac\xaa\xf9\x0f\x46\xf3\x1a\xf9\x02\x9b\x2d\xcb\x4d\x36\x3c\x92\x86\x73\x7e\x08\x94\xa1\x8f\xf8\xa1\x2e\x4f\xbb\xab\x73\x03\x8f\x9b\x44\x64\x4d\xd2\xa0\x5c\x0e\xb4\x1b\x57\xdd\x88\xc7\xd3\xcd\x5d\xa2\x8e\xc2\x6c\x97\xaf\xbe\xfd\x4b\xd3\x62\x9c\xc3\xe2\xc9\xae\xc1\x99\x3a\x17\x14\x3d\x5c\xb3\x25\xa7\xde\x16\x4b\x27\x74\x27\xd4\x84\x39\xea\xf7\x13\x84\xfd\x2d\x16\x48\xd2\x55\xcc\x32\x10\x51\x15\x30\x04\x5c\x99\xdb\x2c\xc3\xc9\x81\xed\x55\x40\x10\x30\xf6\x74\x49\x1f\x4a\xda\x64\x8c\x17\xe3\x46\x3d\xc9\x6d\x59\x05\x53\x50\xb4\x96\xb6\x98\x7a\x0a\x0e\xf4\x47\x7b\x23\x6c\xa1\x6a\x4a\x18\xdf\xbd\x49\x6e\x19\x33\x68\x82\x77\x31\x77\x0b\x88\xa2\xca\xfc\x4c\x9a\x49\x63\x05\x0f\x8b\x02\xf3\xd6\xdc\x20\x34\x23\xb8\xc4\x70\x85\x0d\xbb\xd4\xee\x41\x1e\x37\x65\x44\xb3\x05\xc4\x66\x68\xb5\x8a\x77\x0f\x33\xcb\xdf\x7a\x54\x24\xb3\x79\x40\x97\xab\x5d\x9a\x5a\x61\xe8\xa4\x76\xcf\xe7\x55\x7f\xea\x63\x78\xcb\xb1\x7f\x93\x78\x8e\x63\x85\x35\x2a\x91\x9a\xa8\xec\xa0\x74\xb1\xb1\x1d\x4b\x53\x89\xd0\x21\x59\x85\x17\x17\x9f\xdf\xf3\xc2\xf3\xfb\xd8\xde\xf3\x17\x78\x9b\xdf\xa4\xf7\x6d\xd6\x21\xbb\x4a\x82\x43\xac\x43\x76\x81\x0c\xaa\x9a\x3d\x23\x85\xa0\x42\x9f\x05\x34\xde\x3d\x5a\xb0\x0e\x79\x5a\xd4\xb8\x53\x62\xa4\xf5\xec\x1d\x35\x68\x7b\x7b\x64\x10\x02\xdf\x26\x02\x28\x95\x42\x77\xf1\x16\x48\xc5\x8b\xb1\xe3\xec\x88\x18\x02\xb3\xbd\xa2\x83\x58\xe9\xaa\x67\x83\xb8\xb7\x2d\x8e\x10\x9a\x82\x37\x3b\xdf\x02\xff\x8d\xb3\xf3\xd2\xad\x45\xb9\xac\x9f\xa6\x06\x98\x99\x7b\xb5\x19\x56\x35\xef\xe8\x71\xe0\xf1\x45\x52\x8b\xd9\x13\xec\x2c\xe1\x87\x7c\xa9\x9d\xc3\x23\xf7\x38\x9b\x8e\x19\x6a\x90\xf4\x23\x66\x62\x5f\x2d\xbd\x9b\x0a\x79\xe9\x79\x1e\x4b\x9d\x8f\x6e\x9b\xe8\x87\x69\x27\x92\x77\xcb\x7b\x45\xf6\xe7\x07\x5b\x78\xed\x5d\xc0\x7e\x82\xcc\x9a\x98\x07\xf6\x81\x4f\xeb\xf9\x19\x38\x02\x27\xb5\xa8\x17\x74\x63\x37\x35\x3a\xa9\x89\x5d\xd0\xaa\x4b\xbc\x05\x22\xdd\x60\xef\x80\x56\x12\xf7\xbd\xa2\x54\x97\xb3\x95\x54\x8c\xef\x7c\xc2\x6a\x5f\x2c\xa2\x5a\x90\xc1\x4a\x87\xdb\x3e\x41\x1e\xb7\xea\xda\x5b\xb2\x18\x91\xbe\xbb\x74\x01\x71\xbc\x2b\x84\x81\xca\xf6\x8a\x32\xbd\x78\x25\xac\x46\x7e\x77\x0f\xa3\x54\x4d\x69\x79\x60\xec\xbf\x46\x0c\x07\x66\xa6\xed\x5c\x40\xdb\xe1\xa0\x43\xb6\x25\x39\x8a\xa4\x35\xa0\x54\x2e\xc7\xd2\x3d\x29\x5f\x94\x92\x75\x4a\xd1\x8c\x1a\x3a\xb7\xf9\x2e\x5d\xd9\x6e\x9b\x5f\x8e\xe8\xde\xed\x15\xab\x48\xb4\xab\x6c\x3b\xb1\x45\x47\xa9\x59\x2d\xa2\xe6\xd4\x84\xdc\x45\x1a\xca\x6a\xf6\x8a\x84\xa1\x1f\xc5\xff\x06\x3a\xda\x7e\x76\x0b\x68\x99\xf9\xbc\x33\x7a\x3e\x91\x56\xb5\x57\x34\xa5\x2c\xfe\x77\x28\x08\x11\x5b\x21\x52\x3f\x98\xdd\x99\x7e\xf0\x24\x8b\xf7\x56\x45\xe8\xfb\x1d\xa1\xc7\x6e\x7f\x4f\xe3\x39\x25\x07\x73\xaf\x6e\x78\x90\x54\x1c\xe9\x07\xd2\x8d\x2b\x8e\x83\xc0\xe1\x52\x5d\x45\xf7\xd9\x0f\x8e\x9c\x0e\xf0\xfd\x88\x56\xbc\x78\x06\x12\x16\x94\x7f\x6b\x5a\x8b\x06\x4b\x0a\x37\xb7\x8e\x79\xea\x50\x75\x07\x6c\xf8\xb4\xdf\x39\x4c\x3b\x7b\x49\xd1\x28\xf6\xa7\x8f\xc8\xb9\xbb\x34\xf5\xe2\x0a\x9d\x44\x54\xf8\x54\xe5\x18\xc0\xdd\x22\xf2\x71\xd1\xeb\xbd\x22\x33\x27\x7d\xb2\x93\xbd\xb8\xa1\x2e\xf7\x1c\xc7\xf6\xc4\xb6\x9f\x1e\x88\xa5\xfb\x35\x5e\x49\x8d\x1c\xf9\xf6\x09\x73\x4c\x22\xba\x87\x64\x09\xfd\x36\xa9\xfa\x61\x58\x64\xf6\xbe\x69\xc1\xe9\x2f\x21\x9a\x04\x73\x4c\x05\x2d\x03\xb5\x04\x59\x11\xfd\x4c\xcf\x45\x95\x48\x67\xc5\x01\x9e\xad\xb7\x76\x20\x1c\x75\x7d\x07\xc3\xd0\xe3\x93\x23\xa7\x64\xa9\xc9\x37\x09\xab\xb1\x39\x51\xb6\xcd\x65\x58\x70\x97\x0a\xa2\xaa\xa9\x24\x6f\x58\xb2\x41\x08\x98\x17\xcb\x88\x32\xc3\x61\x00\x1e\x72\xc5\x74\x2f\x97\x5d\x52\xf1\x9c\x65\x07\x61\xaa\xe1\xc0\x91\xb6\x90\x69\x84\x1a\xe9\x2e\xd8\x3a\x4e\x51\xae\x23\x19\xe6\x3b\x27\xf3\x5e\x71\xac\xbc\x6a\xdc\xc9\x3c\xc6\x1c\xe4\xa4\x39\xab\xf7\xd2\x38\x23\x8b\xf0\xd0\x24\x16\xca\x8d\x06\x31\xdf\x91\x5e\x73\x5c\xd4\xb2\x67\xf4\xe9\x87\xc1\x8e\xd6\x12\xc7\x3e\x71\x53\xbe\xd7\x77\xa2\xa2\x1c\x17\x35\xec\x59\xe7\xc5\x92\xb2\xbb\x87\x6c\xa3\x0a\xb2\x0a\x11\x32\xdd\x81\x5a\x1d\x35\x54\xf6\xf4\x50\xad\xbe\x33\x25\x59\xae\x9a\x7b\x7a\x80\x66\x94\x81\xfb\x3b\xeb\x8c\xca\xa1\x66\x5e\xfa\x73\xa7\xb3\x0f\x6a\xda\x2b\x7a\xc5\xac\xda\xf6\x57\x48\x58\x6d\xfb\xd1\xb6\x25\x95\x3d\x09\xb3\xac\xa6\xc3\x21\x94\x1c\xe9\x9f\x0f\x0e\xc3\xa5\x09\xcd\x22\x69\x3c\xf7\xc0\x9a\xb9\x3b\xaa\xa3\x5a\xcc\x9e\xe9\xf7\xa1\x68\x22\xbe\x41\x70\xe3\xe4\x39\xf0\x80\xbb\x93\x13\xf4\x13\xec\x90\xe8\xaa\xa8\x7f\x0f\xc9\x7b\x9a\x2c\xf9\x4b\xf7\x9f\xbc\x8a\x3c\xd5\x9d\xd1\xe7\x13\x02\xd7\x3d\xa6\x4f\x28\xfa\x73\x7f\xe8\xb3\x13\x52\x98\x6a\xf6\x90\x14\x7d\x3f\x6a\xfb\x7b\x34\x15\x89\xb7\xb0\xe7\xd3\xef\x69\xd9\xbf\x3d\x26\x6a\x44\x68\x4c\x68\x9b\xdc\x27\xb2\x1a\x97\xe6\xee\xb3\x27\xa3\x87\x4e\x9e\x1d\x36\x6b\xb3\x8b\x2d\x09\xa2\xb9\x65\x4c\xbc\x05\x92\xa5\xec\x8e\x28\x78\x5c\x77\x66\xaf\x69\x48\xfd\xd3\xf7\x8b\x80\x23\x32\xec\xd4\xce\x98\xec\xb8\xc0\x75\x8f\xe9\x13\x07\x71\xb8\x07\xf4\xd9\xfe\xbc\x2d\xed\x8c\xa6\x27\x44\xff\xf6\x98\xa6\x03\xd1\xa9\x5d\xa4\xa9\x4d\xa4\x1d\x90\xc2\x54\xb3\x67\xa4\xe0\xc1\xca\x4e\x8e\x31\xb3\x36\x09\x10\x7f\xa1\x32\x6c\x9e\x8c\x4e\x0e\x1e\x3f\xfc\xf8\xe3\x27\xcf\x1d\xac\xb7\x2a\x0f\xcc\x2d\xef\xcc\x3e\xe1\x04\x0f\x56\xf6\xf0\x28\x52\x92\x65\x47\x67\x91\x85\x84\x79\x36\x47\x96\xdd\xa0\xca\x9e\x9e\x1d\x0a\xba\xec\xca\x84\xe1\xc1\xca\x8e\x66\x0a\x0f\x56\x76\xbb\xcf\xab\x21\xa9\x42\x54\xb4\x39\x00\x44\xcf\x57\xc3\x42\xff\xcd\x26\x82\xda\xf4\xd6\xc7\x26\xce\x2f\x93\x1d\xb7\x3c\x21\x94\xcb\x8f\x32\x16\x12\x5f\x90\x71\xd7\x2c\x6c\x69\xc1\x1b\x90\x65\x12\x97\x64\x97\x22\x57\xbf\x5d\x5c\xeb\x33\xe5\x2c\xc1\x0f\x1b\x44\x86\x59\xec\x34\xe2\x24\x7d\x52\xa0\x77\xa9\xcd\x16\x38\xcf\xae\xd5\x6a\xf2\xbe\xa7\xd6\x0d\xc2\x58\x9e\x12\xe2\xb8\x05\xcb\x07\x44\x67\x55\x71\x5e\x5d\xa2\xb7\x66\x4d\x82\xe3\x16\xf2\x16\x9a\x63\xa2\xc2\x11\x51\x07\x42\x28\x89\x48\x7c\x5c\xa1\x67\xbd\xad\x54\x5e\x0d\x58\xd8\x51\x9f\x86\x43\x4a\xce\x96\x8e\x93\x78\x86\xa4\xf6\xff\x4d\x22\x36\xd6\xc6\x13\xbb\xe3\xcc\xf0\x72\x99\xd7\xe0\xee\xda\x75\x66\x83\x15\x69\x51\x4e\x63\x47\x47\xc5\x4c\x13\xb0\x1d\xce\xcd\xce\xa9\x63\xb9\x79\x13\xd0\xb6\x8c\x87\x6b\x92\xb2\xb5\x88\xc4\xd6\xa8\x71\x4c\x91\x74\xdb\x00\x86\xa8\xe2\x17\xa0\x4d\xf4\x9b\x8b\x6c\x05\x9c\xac\xb0\x33\xd6\xc8\x1b\xc7\x0e\x86\x04\x9e\xa6\x80\x4b\x80\xf0\xa4\x59\x6f\x21\x94\x74\x82\xce\x31\xd2\x26\xc1\x19\x72\x10\x9e\xf2\xc0\xfb\xd0\x94\xb4\xea\xa7\x84\x33\x36\x9e\x05\x47\xbc\x31\x89\xe2\xea\x59\x3f\x88\xc5\x5c\x58\x1a\x04\x61\x47\xff\x2a\x9a\x12\x76\xe6\xc2\xc4\x39\xca\x58\xdf\x4e\xb9\x9f\x5e\x5f\x6c\xc9\x54\x9f\xb1\xdc\x60\x1a\xdf\x2a\x32\xe0\xf0\xe4\x2e\x8f\x0d\x0f\x9d\xc9\xa5\xfe\x56\x57\x7c\xea\x2f\x0b\xd2\x14\xe5\xb1\x7b\x5d\x98\x21\x4b\xdd\x71\xcd\x54\xbb\x8c\x57\xfb\x9c\xad\x04\x51\x81\xcf\x1c\xe5\x7f\xe1\x3e\x45\xb4\x4f\x9f\xd6\x4e\x19\xd2\x1e\x0a\x24\x93\x6a\xb5\x9f\xec\x4e\x59\x6f\x5a\x64\x62\xcd\xcb\x24\xfe\x34\x30\xe3\x94\x35\xa7\x45\x26\xd6\x7c\x8a\x13\xe9\x65\x64\xca\x5a\x55\xf6\xcd\x70\x7d\x9a\xd0\x4e\x40\x97\x55\xfb\xc7\x63\x3f\x26\x5b\x41\x7b\xb4\xf4\xc4\xf6\x7a\x7e\x94\x29\x31\x3d\x89\x46\x4a\x4e\x6c\xe7\x04\x89\x34\x45\xa7\x6c\xc0\x4c\xce\x89\xd5\xca\xb9\xb2\xa5\x7a\xe9\x54\xf5\x8a\x19\xf6\x38\xe3\x4f\xeb\xf9\x35\x5d\xd5\x81\x55\xf5\x26\xe2\x64\x44\xfe\xed\x99\xb9\xd8\x44\xe7\x57\x7a\x85\x50\xef\x61\x92\x25\xb2\x1c\xd0\x83\xd1\x2a\x6d\x67\x1f\x3d\x26\x84\x76\x20\x39\x11\xf8\x3f\x43\xe3\x20\xb4\x1e\x2f\x26\x1d\xb2\x34\x58\x3e\x42\xbb\xa9\xe3\xa8\x66\x2b\x91\xcc\x2f\x8a\x6c\x26\x6b\xc7\xd0\x65\x1a\x89\x7b\xdf\xe2\xf1\x5b\xfe\x1a\xb9\x57\x9f\xb1\x1e\x5d\xa5\x1c\x5b\xa9\x24\xd3\xb9\x16\x0b\xa2\x63\x5a\x6e\x91\x8e\x37\x3b\xaf\x16\xf5\x20\x26\x2b\x6a\x3d\x3f\xea\xf7\x47\xdf\x25\x51\x72\x2e\x3e\xc1\x4e\x13\xea\xc5\xc3\x21\x4d\xf2\x4e\x1f\xec\x2a\x87\x43\x57\x5e\x22\x43\x1e\xe5\x22\x4a\xeb\x0e\xd9\xb6\xeb\xc8\x1e\x65\x1d\x58\xd4\x34\xe5\x22\x78\x12\xa7\xa2\x85\x42\x93\x16\xc2\xa3\x4f\xdd\x74\x24\xc0\xb4\xda\x52\xdb\x0f\x43\xd2\x29\x75\x19\x2f\x3d\xb0\x46\x12\x19\xf8\x3e\x88\x4b\x41\x54\xf2\x43\x4e\xfc\xce\x6a\xa9\xaf\x04\x49\xed\x39\xa4\x29\x6c\x2a\xca\x38\x79\x54\x2d\xaa\xc7\x2c\x5a\x83\xf5\xdb\xa7\x6d\x99\x21\x13\x12\x1c\xfa\x4b\x24\x6c\xc4\x62\x04\x53\x66\xd5\xf1\xec\xa7\xc0\x1d\x8a\x4c\xc0\x9c\xb2\xb8\xa4\xdd\x52\x85\x19\xfc\xad\xea\x53\x55\x6f\x74\x92\xa4\x1e\xc7\x74\xa7\x82\x2f\x90\xa2\x69\x03\x1e\xc5\x54\x2e\xe5\xcd\xcf\x45\xe9\x64\xb2\x3e\xb6\x43\xe2\x73\x17\x6d\x3e\xbd\x56\xfb\x24\x55\x68\xec\x19\x83\xd6\x46\xcd\x41\x27\x2b\x1e\x9b\x4d\xcf\x09\x2a\xde\x7d\xf5\xa0\x38\x63\x14\xbd\x38\x99\x51\x0f\xda\x40\xd7\x73\x34\xee\x80\xd6\x66\xa2\x3a\xaf\xd3\xdd\x37\x41\x0d\xf3\x2b\xd3\x9f\x58\xb1\xbb\x76\xf8\x82\x12\x6c\xbf\xc4\xce\xe5\x04\x7e\xd3\x8e\x5d\x30\xb1\xd4\x18\x6f\x64\xb9\x92\xac\x65\x71\x14\x26\x5a\x3f\xb1\xb3\xc6\x86\xab\x54\x6d\xa3\xda\x85\xb4\x24\x19\xd1\x05\x3c\x6a\x8c\xfd\xb4\x44\xb3\x37\xc0\x60\xa4\xb1\xa6\xe7\x4d\xa3\x8e\x35\xb5\x1b\x6b\x49\x92\x3e\x77\x85\xdd\x51\xec\x2d\xe8\x87\xb5\xd6\x44\x42\x6b\xa4\xa6\xcb\x57\x2a\x33\x10\xbf\xdb\x9a\x42\x33\xa4\xa6\x6b\x6d\xc6\x92\x24\x2d\x8f\x0f\x87\xb3\xf5\x44\x8a\x85\x42\x09\xee\x22\xa8\x72\xa1\x9e\xe8\xd0\xc7\x24\x8a\xcb\xe5\x14\x36\xc3\xa4\x7a\x2a\x9f\xcb\xcf\x52\x17\x15\xb2\xd1\xb9\xb8\xba\x42\xfc\x68\xc0\x09\x4f\x1f\x34\x67\x92\xff\x3d\x76\xe2\xf0\xa8\x1f\x22\x81\x05\x34\x30\xc2\xe4\x54\x91\x13\x08\x15\xcf\xd6\xa7\x67\xfc\xc8\xeb\xb0\xb6\x4c\xd6\xa1\x38\x0f\xab\x2d\xab\xeb\xa8\xcf\x10\xc4\xbf\x1d\x9f\xf3\xac\x52\x82\x79\x0e\x31\x2a\xfa\xee\x3a\xfb\x3a\x0e\x4a\xf0\xd9\xa0\x13\xf7\x84\x24\x50\xef\xc9\xd7\xd2\x90\x8f\x2e\xd4\x50\xeb\x32\x1a\x7b\x71\x5a\x65\x4d\xd3\xed\x84\xa8\x87\xa0\x9a\xac\x23\xc1\x61\x40\x89\xf6\x3c\x07\x95\x8d\xd4\x62\x82\x2c\x81\x0d\xc7\xdc\x49\x3a\x87\x70\x60\xc2\xfb\x1a\x1b\x36\xe6\xd5\xf7\xb3\x03\x26\xea\x2f\x83\x48\xa2\xc4\xa3\x4d\xd6\x9a\x09\xba\xae\xe3\xcc\x7a\x9e\x71\x4c\x4c\xac\xe3\x73\x4c\x65\xc8\xe0\xba\xac\x6c\x3f\x3b\xc0\x8d\x6b\x56\xbb\x9e\xc2\xee\xf0\x26\x6b\x55\xe4\x11\xbc\xec\xd5\x0c\xad\x78\x04\xd3\x05\x41\x8f\xa0\x52\xc1\xd4\x23\x28\x51\xde\x3f\xc6\x16\xb7\x8a\xfa\x99\xa2\x3e\x4a\xc0\xca\x29\x48\x70\x37\x88\x45\x91\xe3\xf2\xe8\xc2\x22\x9a\xa2\x8f\xac\x1d\x06\x87\x23\xed\xce\xcb\x10\xb2\xb6\xe2\xc7\xed\x9e\x3b\x77\xb2\x53\x99\x43\xcd\x7a\x0b\xa6\xeb\x51\x3f\xee\xd5\xba\x21\x63\xdc\x95\xa1\x71\x1f\x0f\x99\x1f\xbb\x01\x7a\x28\x9e\xa3\x62\x7b\x3d\xd9\x5d\x61\xcc\x07\x71\x6f\xc4\x99\xb7\x9f\x3d\x91\xc6\x85\x99\xc1\x67\xa5\x48\x6b\x33\x7a\x86\xf0\xcd\x9c\x25\x65\xcf\xe2\x60\xd8\xb9\x57\x17\x44\x86\x61\xe7\x07\xe8\x7e\x5e\xa9\x20\x21\x78\xe6\x3d\x2f\xef\x7e\xba\xc9\x5b\x69\x8c\xe2\x26\x37\x64\xc8\x38\xef\xdd\xce\x11\x9e\x4f\x3b\xbb\x6b\x9d\x57\x4c\x5a\x69\xe3\xbd\x8d\x33\x5c\xeb\x29\x49\xb3\xde\xf2\x3c\x8f\x34\xb7\xd7\x4f\x89\xc0\xee\x1e\xde\x16\xf7\x74\x79\x7b\x87\xf7\x38\x6e\x59\xce\x14\xb8\x58\x8c\xda\xe4\xc9\x81\x68\xa8\x5c\x76\x1d\x2a\x21\x67\xd6\x3a\xba\x75\x89\xa7\xbe\xcb\x93\xba\x91\x1c\x2a\x80\xad\xce\x11\x23\x84\x30\x59\x88\xb7\x43\xb9\xe5\x5d\x3e\xe7\x1f\x47\xb6\xed\xdd\x89\xed\x09\xdd\xbc\x6d\x12\x6e\x97\x2f\xd4\x8a\x29\x17\x44\x55\x9f\x73\x7f\xea\x90\xc1\xd9\xd9\x05\xe2\x48\x9a\x88\xa5\xe2\x28\x3e\xc0\xf7\xc7\x96\x38\xd2\xee\x9f\x22\x15\xcf\x9b\x34\x63\x23\x8e\x8c\x89\xde\x6c\x7d\x3b\x44\xd2\x55\xee\x11\xa1\xc8\x4a\x3f\xde\x8b\xd8\xca\x5b\x78\x2c\xd7\xb4\x1e\x26\x02\x95\x0f\x0b\x34\xdd\x29\xdc\xee\x8e\xef\xe8\x36\xe5\xad\xba\x31\x19\xc1\x47\xd4\x26\x57\xb6\xed\x0d\xf1\xe1\xbd\x12\xbe\xe1\x7b\x57\xf8\x1e\xd8\x96\x0c\x09\xf7\x44\xf8\x86\xef\x61\xe1\x7b\x60\x7b\xc2\x37\xdc\x1b\xe1\x6b\xde\xaf\xed\x58\xb7\x99\xdd\xbe\x6e\x43\xf5\x2b\x34\xd5\xa1\x3d\xea\xf6\x7b\x42\x53\xae\x4f\xd4\x94\x77\xb8\x34\x51\x16\xef\x85\x6a\x5c\x1c\x3d\xe8\x3d\x46\xca\xdd\xdd\x74\x30\xbe\x17\x84\x3d\xb7\x17\x94\xb5\x5e\x51\x59\x84\xab\xb7\xd0\xec\x28\x39\xe7\xb7\xf7\x9a\xea\xdc\xfd\x25\x57\x11\x05\xf6\x36\xfe\x82\x79\xa8\x0b\x27\x5f\xca\x0b\x97\x13\x44\x27\x04\x56\xab\x0e\x92\xa7\x20\x4b\xca\x56\x25\xb5\x5f\x49\xdd\xe6\xcd\xe4\x14\x16\xad\xa6\xa2\xc5\xfa\xac\xe7\x65\xea\x54\x7c\xeb\xa0\xc6\xec\x6c\x51\x60\x87\x33\x7e\x18\x74\xfc\x98\xf1\x68\xae\xcd\xc2\x90\x48\x1c\x8b\xb8\xc8\xca\xa8\x08\xa8\x13\x02\x46\xab\x84\x73\xb6\x27\x07\xd0\x62\xf1\x55\xa7\x28\x69\x1f\x39\x76\x2c\xcc\x25\xe5\xe4\xdc\xa6\xe5\xf2\x6c\x9e\x3c\xa8\x88\x7b\xed\xe2\x58\x34\x31\x03\x9b\x00\x0a\xe3\xb3\x59\x0d\x51\x40\x97\x07\xa1\xcf\x75\x79\x23\x84\x37\xa1\x37\xed\x06\x7c\xc5\x7f\x8f\x53\x1c\x53\xed\xef\x27\x4b\x73\xa0\x75\x26\xd1\x0f\x43\x76\xf6\xd1\xd0\xa7\xa7\x1d\x94\xd2\x0e\xb4\x7b\x58\xa5\xea\x92\xc0\x79\x5d\x3b\xad\x88\xe2\x00\x8d\x1d\x2a\x9b\x66\x5b\x20\x76\xc7\x8f\x0b\xaf\x53\x36\x27\xb2\x09\xb0\x44\x9e\x1f\x04\x5c\x1a\xaf\x09\xca\xed\x89\x45\x0d\xb8\xbc\xa4\x23\x97\x68\xce\x51\xb6\x42\x68\xfc\xf1\xe3\xa5\x20\x2a\x69\xd4\xa4\xcb\x4b\x81\x43\xdc\x23\xa5\xc7\xfc\x98\x94\x4c\xef\x6a\x0e\xd2\x4f\x39\x0d\x99\x3f\x1d\xc4\x3d\x88\xff\xc3\xb1\x23\x3b\xfb\x38\x13\xb4\x75\xb0\x73\xf4\xe8\xd1\xd2\x63\x0c\x97\x3e\xfb\xd9\xcf\x7e\xd6\xd1\xc1\xbf\xd2\xa2\xba\x3b\x01\x89\x5c\x8e\x9b\x4e\x17\x4a\xf5\x39\x69\x07\x91\x1c\x1a\x9b\x15\x5a\xaa\xed\xc8\xf3\x6b\x2a\x2b\x0e\x3d\xbf\x66\x32\xe3\x81\xe7\xd7\xd2\xec\xb2\xb1\xf6\xd8\xc6\x96\x94\xf7\x6a\xc1\x80\x4f\xf1\x47\xe1\x87\xdf\x55\xd6\x3c\x22\xf1\xa0\x84\x75\xa3\x1d\xdc\xf3\xda\x35\x55\x08\x77\xbd\x76\x2d\x2d\x86\xfb\x5e\xbb\x26\x0b\xe2\x15\xfd\x41\x16\x15\xdc\x39\xd8\x84\x7b\x23\xb4\xd6\xf1\x02\x97\xe0\x08\xcf\xd6\x95\xc0\x90\xbf\x50\x2d\x88\x3e\x25\x88\xee\x8e\x61\x60\xc5\x87\x46\xca\x74\x36\xcb\x7f\x96\x33\xba\x2c\xc6\x12\x86\x46\x14\x4d\x48\x18\x91\x52\xd0\x75\x25\x0e\x08\x6f\x5e\x4d\xb6\xd9\x5e\xb9\xec\xf6\xbc\xc0\xed\xe1\x48\x17\x56\x14\x71\x7b\x38\x34\x33\xaf\x94\xc6\xc4\xe1\xd8\x90\xbd\xa7\x87\xd0\x65\x08\xe1\x5c\x23\x90\x07\x9a\xe9\x96\xcb\x6e\xd7\x0b\xdc\xae\x69\xe6\xb8\xbf\x42\x80\xfc\x6e\x77\x6c\x63\xf6\xd0\x76\x27\x34\x68\xe7\x83\x46\xfb\xe5\xb2\xdb\xf7\x02\xb7\x6f\x1a\x95\x83\xea\xf6\xc7\xb6\xa6\x79\xa7\x3f\xa1\x21\x9d\x05\xda\x58\x29\x97\xdd\x15\x2f\x70\x57\x72\x1d\x53\x2d\xad\x4c\xec\x97\xe2\x4e\xbc\xb2\x49\xb7\x0e\x5a\x2d\x1a\x09\x87\x49\x4d\x9e\xfd\x0b\x7e\xf0\x82\xd4\xa5\x66\x26\x8e\x99\xb3\x22\x25\x83\x83\x52\xc5\x2d\x70\xe1\xa1\xa9\x31\x8d\xa5\xec\xac\xe3\x79\x1e\x19\x0e\xf3\x7c\xbe\x48\x5d\xd4\x80\xc4\x27\x19\x25\x6e\x2c\xd2\x84\xe8\x11\xed\x8a\x99\xd0\x00\x91\xb7\x89\xcc\x8d\x40\x84\x16\xc4\xb7\xcb\x4a\xd3\x6d\xaf\x79\xf7\x49\xee\xc6\x98\x61\x7f\xac\xec\x95\xd4\xa9\x3e\xe6\xc7\xfe\x58\xe9\x7b\x5c\xe5\xcd\x4a\x60\xe9\xcb\xd9\x0b\x5c\x5f\xc9\xa6\xd0\x8b\x6a\x7d\x3f\xee\xe1\x81\x17\xd5\x4e\x93\x55\x6c\x49\x3d\x97\xe1\x10\x65\xd6\x49\x39\x14\x6d\x54\x2e\xb7\x4b\xe0\xbb\x98\x75\x4b\xb4\x26\xdb\x89\xca\xe5\xb6\xb4\xb7\x18\x58\x02\xc0\x66\x8a\x4e\xa4\xa2\x15\xe0\xd8\x5a\x68\xdb\x35\x49\xd3\xe8\x71\xc6\xdd\x01\xc2\x4e\xe8\x47\xb1\xa6\xdf\x0a\x89\x22\x7f\x99\x38\x28\xcb\x7e\x42\x1e\xfb\x71\xef\x20\xed\x7c\x82\xac\x66\x59\xd0\xe6\x60\x35\x98\x1d\x3f\xf6\x73\x6c\x68\x2c\x08\xe0\x4e\xaf\xe6\x20\xcc\xbd\xb8\xd6\x67\x7d\xd7\xf2\xc4\xdc\x1f\x44\x3d\x57\xad\x49\x91\x83\xf0\x9a\x20\x53\x23\xd6\x0f\x61\x44\x99\xd3\x64\xb5\xc1\x8b\x6c\x31\x2c\x0e\x22\xe7\xda\xe1\x20\x7a\x4f\x6b\x57\x05\xba\x15\xc5\x4e\x40\x35\xb3\xb0\xc2\x65\x90\xe2\xa6\xc3\x95\x9f\xe5\x82\x65\xd6\xf7\x58\x4d\x7e\x15\xdc\xc3\xac\x85\x75\x93\x25\x2d\x28\x97\x95\xe7\x45\xf3\x74\x7c\x9c\xb6\x6b\xd1\x55\x7a\xbd\x0d\xba\xae\x5f\x2e\xef\xf3\x3c\xcf\x07\x8f\x2d\x6b\x8a\xd5\xb9\xeb\xe3\x7d\x0a\xad\xc0\x8b\x9a\xf5\x16\x66\x5e\xd4\x9c\x6f\xa5\x8a\xa3\xd8\xd9\xc8\xa6\xcc\x99\xbb\x4e\x09\x8c\x02\x39\x36\x0b\x43\xe5\x72\x70\x40\xec\xa2\xc8\x01\x8f\x4d\x85\x6b\x62\x98\x59\x1f\x11\x65\x47\x38\xe8\xba\x52\xd1\x1f\x55\xf8\x4b\x92\x9c\xc7\x65\x08\x96\x5a\x10\x13\x2e\x58\xa7\x14\x40\xd0\x35\x2b\x63\xb6\x46\xd5\x4a\xb3\x85\xa9\x37\x5b\x97\x3e\x36\x30\x84\xb2\x9c\x89\xf9\xaa\x3c\xa8\xd0\xa1\x55\x3d\xd2\xcc\xd5\xdf\x72\xd1\xfe\x59\x97\x7a\xae\xef\x29\xb3\x31\x17\xa1\x5a\x87\x51\x82\xca\x65\x97\xab\x49\xe2\x2b\x1b\x13\x84\x67\xe3\xe1\x10\xae\xc3\xa5\x97\xa7\xfd\xa2\x49\xb4\x3f\x69\xcb\x0b\xe5\x10\xad\x05\x02\x05\xe6\x85\x49\x37\xa0\x7e\x18\xae\xae\x09\x04\x66\x69\xb9\x1c\xd5\x14\xee\x29\xe4\x22\x93\x49\xb0\x86\x16\x81\xcc\xdc\x72\x73\xe9\x24\x1d\xcd\x14\xba\x60\x3f\x42\xe5\x5c\x2a\x69\x57\xec\x42\x2e\xca\x38\x5d\x83\x76\x3c\xe0\x44\x79\x5f\x8f\x95\xb5\x67\x29\x75\xc3\x3e\x79\x2e\x83\x8e\xf9\x9e\x98\xc8\x9c\xc8\xdd\xde\xe1\x73\x7d\x4e\x22\xc1\x5c\x10\x67\xb4\x78\x92\x9b\x50\x7d\x45\x93\x39\x50\x81\xd6\xc8\x39\x07\x3b\x82\xaf\x65\x98\x16\x19\xd4\x60\xfc\xec\x16\xd9\x71\xe4\x31\x39\x11\x24\x23\x87\x32\x5e\x9d\x2c\xa6\xa3\x98\x19\x87\xd5\x61\xb9\x1c\x6e\x45\x14\x44\xe5\xf2\xac\x5f\x2e\xd3\x66\xd4\x2a\x97\x5d\xdf\x13\x00\x9a\x71\xc8\x8a\x1f\x84\x42\x65\x88\x64\xaa\xe7\xd1\x9a\x4c\x92\xbf\x46\x4d\xc4\xf4\xd7\x5a\xc4\x06\xbc\x4d\x32\xe7\xb1\xd9\xfe\x13\xdc\x54\xdd\x7c\x92\xd1\x13\x61\xc7\xc1\xce\x4a\x20\x80\x27\xd4\xb9\x45\x0b\xa4\x07\xaf\x59\xb9\x64\x3c\x41\x3b\xdf\x4c\x66\x95\x64\x68\x38\x1c\x39\x6a\x67\xc3\xa1\x1b\x7b\x71\xfa\xfe\xa4\xe9\x57\xbf\x50\xaf\x7e\xa4\xe5\x2e\x36\x34\x58\x6d\x3d\x04\x89\x68\xf1\x01\x07\x3f\x07\xbf\xd6\x1e\x58\x63\x09\x4e\xc6\xe5\x7c\x0e\x49\x07\xdf\xd9\xea\xff\x2b\xcd\x3d\xae\x89\x93\x27\x6b\xc8\xc1\x53\xe6\x5c\x44\xe9\x62\x5c\xca\xb8\xd8\x71\x02\x07\x25\x6e\x80\x20\xd6\x88\xd0\x36\x03\x0c\x5c\xe5\x23\xa5\x47\x70\xc1\xd3\xd2\xb8\xc4\x41\xc3\xa1\x3f\xc2\x02\xda\xf0\xc4\x47\x68\xd6\xf3\x06\x85\xd2\x34\x1a\x0e\x05\x73\x8a\xf9\x25\xc4\x69\x60\xe9\x06\x5a\x13\x80\x31\x6e\xfb\xf4\x08\x3d\xc3\x4e\x13\x79\xfa\x5a\x30\x5f\xd6\x24\x7b\x34\xe6\x9e\xd5\x7d\x9c\xfd\x8f\x07\x3e\x50\x7e\xf0\xa1\xca\xc9\x39\x6f\xf1\xd9\x53\xcf\xad\x0d\x93\xff\x53\x6d\x55\xdc\xc5\xc6\xc9\xda\xc4\x1c\xe8\xa1\x69\xa8\x57\x43\x95\xcd\x46\x7b\x2e\xc0\xfd\x1e\xa3\xa4\x31\xf7\xac\xdb\x3c\x59\x69\x2d\xce\x9f\x8c\x1e\x6a\x56\x4f\xce\x9d\xac\xb5\x16\x4f\x46\x0f\xa1\x45\xf7\xa4\xeb\x9e\xec\xac\x3d\x9c\xa0\x93\x68\xa8\x21\x94\xcd\x04\xdf\x47\x12\x3f\x28\x13\x5d\xb7\x79\xee\x33\xad\x61\x93\x1c\x6e\x09\xa0\x19\x9f\x68\x2d\x36\x45\xae\xa1\xb4\x14\x13\x94\x91\xd9\x9a\xff\xf1\xd0\xc9\x4e\xab\x82\xd0\x43\x0f\xcc\xe1\x01\x0f\x1b\x73\xee\x62\xc3\x6d\x1e\xac\x7e\xce\xaf\x7e\xa1\x55\x41\x0d\x81\xcc\xdc\x5a\x1d\x3f\x9c\x20\xd1\x85\x83\xd5\xcf\x89\x5e\x68\xb0\x2a\xe0\x87\xdc\x93\xb5\xe6\xc9\xb3\x82\x42\x15\xb7\x79\xf2\x6c\x0d\xff\xd7\xe2\xb3\xde\x07\xca\xfe\x4a\x7f\x7f\xe3\xe4\xdc\xff\xa9\xfc\x47\x75\x2d\x69\x3d\xd4\x3c\x79\x36\x4d\x37\xc9\x68\x71\x71\x6e\xb2\x38\x96\xef\xbd\xde\x57\xad\xb6\xa2\x5a\x79\xd3\xa8\x56\x16\x5d\x77\xa0\x5a\xcd\xee\x8a\x72\x85\x86\xc3\x60\x81\x0c\x87\x64\x61\x8c\x6e\x95\x43\xf6\x7d\xdd\xea\x7f\xa9\x6e\x35\xf6\xf1\xdd\xe4\x23\xcf\x9d\xcf\x5a\x8d\x03\xb1\x39\xa5\x56\xab\x99\x43\xfe\xc2\x5d\xa5\x85\xb8\x53\x49\x83\x06\x51\x57\x96\x9c\xdc\x53\x7d\x19\xf2\x9e\x95\x59\x3a\x34\x0f\x1d\x7b\xfa\x09\x3a\x50\x4e\x3e\x61\x81\xcb\xa3\x24\x3e\x4b\x08\x3d\xaa\x77\xee\xd8\x09\x22\xa5\x4d\x89\xff\xfd\x73\x4e\x4b\x59\xe3\x9a\x2a\xf4\x81\xb0\x71\x8a\x15\x0c\x87\x01\xf6\x21\x87\xac\x58\x06\x1c\x1b\xa9\x1a\x87\x1e\xad\x05\x11\x1e\x78\x54\x28\x61\xb8\x2d\xfe\xfa\xe7\xd2\x4d\x9d\x56\xc3\x52\x29\x38\x2b\x94\xaf\xbc\xf0\x30\x7a\x04\x07\x39\x37\x5e\x88\xca\xa3\xdc\xe2\x8b\xad\xd1\x43\x92\x10\x95\xcb\xe1\xac\xe7\x75\x26\x1c\xa9\x6a\xf5\xd2\xb4\x1e\x59\xb7\x45\xb2\x92\x01\xca\xa7\xb4\x85\x64\xe8\x1c\x18\x0c\x87\x9d\x85\xf6\x18\xf9\xbd\xa4\x08\x65\x9d\xf0\x8e\x54\x3a\x58\x18\x83\x57\xcc\xd8\xf1\x1e\xe3\xf1\xb8\xc2\xf2\xec\xe7\xc0\xf8\xc2\x4f\x30\xba\xbc\xa5\x3b\x11\x7d\xc6\x33\xb5\x27\xe2\x1d\xf0\xf8\xda\x29\xa9\x8d\x36\xe6\x4e\xae\xb9\x27\xcf\x56\xd0\xc9\x64\x6e\x19\xeb\x8f\x10\x27\x36\x60\xb4\xe1\x9c\xe8\x05\x91\x0a\xd4\xe5\xe0\x65\x62\x7f\x7b\x5c\xbd\xf1\xf2\xd6\x92\x9c\xb9\x96\x8c\xfe\x87\x9d\x4e\x9a\x55\x28\xb8\xd6\x37\x19\x9b\x6a\xb4\x31\x07\x25\xa2\x09\xcd\xd4\x05\xd5\x4b\xbb\x6c\xb5\xf1\xd4\x99\xdc\x5c\xad\x04\xe1\x18\x25\x38\x9b\x07\x6a\xd1\xd6\xeb\x7a\x30\xb2\x53\x83\x8b\x1d\x8a\x76\x72\x67\x76\x28\x32\xd8\x9d\xb5\x4b\xd2\x98\xc3\x4c\x41\x08\xa7\xaf\xe7\xf3\x99\x14\x7d\x1d\x84\xa5\x14\x81\x80\xf6\x8a\x34\x1c\xa1\x04\xfb\xed\x36\xe9\xc7\xa4\xd3\x70\xd6\x2c\x4a\x25\xa5\x95\x41\x14\x97\x96\x48\x09\xbe\x3b\x58\x1e\x76\x8f\xcd\x26\x3e\x96\xd6\xe4\x9f\xc4\xc1\xea\xc8\x7f\x5c\x66\xf5\xb5\xb4\xa6\xfe\x8a\xec\x42\xa8\xe4\x73\xb7\x7d\xfa\xa0\xca\xae\x64\x59\x7a\x1d\x3b\x16\x89\x92\x7d\x65\x6b\xdf\x09\xe6\x4b\x74\x18\x89\x44\xed\x72\x6f\x53\x5a\x63\x34\x71\xb0\x58\x71\xc6\xd7\xac\x96\x57\x7d\x5f\x22\xf7\x28\x9b\x64\x95\x99\x4a\x7e\xa7\x23\xf6\x36\xa2\x4c\x3f\x5e\x1d\xdb\x45\x6d\x8f\x29\x2d\xa8\x4e\xb0\x71\x55\xcb\xcf\x62\x69\x5f\x0b\xa2\xc4\xc1\xe4\x0c\x19\x4b\x0a\xf1\xcd\xc1\xe6\x94\x2b\x9f\x4d\x1e\x4f\x47\x84\x9f\x11\x03\xbb\x2c\x1f\x94\xf0\x13\x3d\x7f\x6c\x75\x3a\x4b\x29\xee\xf9\xb4\xb4\xb6\x1c\x27\x99\x52\x4f\xf1\xc3\x93\x11\xcf\x14\x67\xdc\xea\xc8\x72\x2c\xc6\xdf\x68\x8c\x05\x78\x52\x16\x97\xb4\x1b\x89\x8e\x50\xfe\xe2\x1e\x29\x85\x41\x14\x8b\x52\x92\xd2\x05\x65\xcc\x22\x12\x92\x28\x9a\xd4\x2f\xf1\x5d\x77\x2a\x14\x9d\x82\xfc\x9b\xf6\x28\x2d\x98\xe9\x4e\x28\xbb\x43\x59\x7c\x90\x1e\xa1\x31\x59\x9e\x30\x61\x68\x29\x50\x39\x54\x7e\x65\xeb\x37\x9e\xa9\xf4\xb1\x05\x66\x9d\xb1\x53\x95\x75\x3a\x0e\x36\x97\x44\x63\x73\x49\x94\xf5\x7c\x35\xb9\x13\x55\xf2\xd1\x89\xf3\x56\x15\x85\xd9\x9b\xe6\x17\x85\xe3\xde\x64\x0e\x92\x19\x34\xa9\x55\x18\x47\x47\x6f\xac\x37\x99\x47\x32\x93\xe9\xbe\xf2\x96\x72\x66\x6c\x29\xf8\xee\x60\x88\x16\xf8\x54\x77\x7c\x0b\x90\xa7\xc4\xba\xa5\xb5\xb4\x80\x40\x4d\x4c\x0f\x1a\x8f\x95\x60\x4a\x24\x81\x7d\xc7\xd8\x79\x9d\x95\x48\x7a\x31\x2e\x60\xd8\x98\xb1\x52\xc8\xe8\x72\xc9\x5d\xf1\xcf\x05\x2b\x83\x15\x91\xb8\xb6\xe2\x9f\x4b\x4a\xed\x9e\xcf\xfd\x76\x4c\x78\x84\x64\x0d\x52\x17\x18\x53\x45\x24\xbe\x95\xdc\x95\x80\xa6\x75\x04\x34\x57\x87\xd6\x45\xc6\x0b\x67\xf9\x59\x97\xf4\x69\x67\x04\x0f\x47\x9e\x3d\x6c\x32\x6c\x03\x1e\x3a\x38\x77\x4b\x3d\xae\x8c\x9e\xd5\x6a\xb9\x94\x63\xa1\xc0\x44\xd7\xa0\x94\xb2\xa2\x3e\xf7\x48\x49\xe6\x28\x29\xad\xaf\xe4\x46\x3d\x36\x08\x3b\xa2\x52\x21\x23\x33\x1d\x9f\xac\xf4\x00\x83\xed\xfe\x16\xc0\xb6\x93\xc3\x1c\x6b\x5f\xd9\x2c\x63\x36\x43\x10\xf6\xbd\x40\xab\x04\x42\x41\xf7\x3c\x8f\x94\xcb\xfe\xac\xe7\xb1\xc5\xfc\x76\x47\x49\x26\x07\x07\x98\xa3\x86\x13\xc6\x90\x79\x61\x34\x2f\xc8\xb3\x34\x33\x31\xb9\xc7\x66\x36\xc2\x0f\x4a\x2d\x9b\x26\x0e\x8c\x36\x61\xad\x03\x69\x7e\xd3\xca\x81\x49\xf9\x47\x1a\x32\xb3\x17\x4a\xd7\xf3\xa5\xd3\xf9\xad\x4a\x08\x99\xa7\x33\x7f\x60\x9f\xe7\x8d\xe4\x97\x32\x51\x65\x95\x4b\xa2\xc9\x3b\x3b\x9a\x57\xad\x99\x32\xf3\xac\xeb\xa4\xe2\x40\x17\x9a\xa5\xae\x3f\x27\x8f\x3f\x72\xe5\xac\x9c\xb2\x74\x26\x36\x6c\x7a\xb3\xae\x18\xcc\x76\x3a\x15\x44\x8f\x07\x34\x90\x77\xe7\xe5\xb2\xf5\x90\x4f\x9e\xba\xec\x28\xd4\x6b\xf6\x96\x41\xf1\x9b\xb1\x37\xc7\xbe\x67\x87\x71\x0e\xe0\x02\x7a\xdc\x35\x44\x66\x43\x39\xb2\xd3\x3c\xae\x5d\x32\x3b\xb0\x9c\xb5\xd2\x5b\xec\x9c\xf5\xce\x00\x92\xcc\x36\xb3\x9d\x6e\x33\x07\xc3\xe1\x00\x77\x20\x87\xaa\x15\xf7\xbc\xa8\xa6\xeb\x15\x1b\x9f\x76\xba\x17\xcc\xed\x24\xe5\x79\x5a\xb8\xc9\x79\xdb\x98\x8f\xb9\xe1\x4c\x57\x63\x7d\x98\x1d\x74\x5d\xd0\xc9\xed\xd1\x9b\x1d\xb3\xe5\x2a\x2a\x3f\x6b\x6f\x9e\xc6\x33\xc4\x6c\x10\x3d\xe9\x3f\x29\x63\x0d\xb3\x2d\x60\xd7\x93\xcc\x39\xa9\x04\x68\x23\xba\x8c\xf5\xd8\x69\x7f\x7c\xc0\x37\x8f\x9d\xd2\xa7\xb2\xdc\xf5\x9b\x71\x0b\x07\x98\x65\x6d\x4e\xd3\x37\x0c\xe6\x90\x2e\x99\x6e\x57\xa9\x56\xd4\xf6\x0e\xad\xed\x46\x72\x0e\xe8\x59\xee\xf7\xab\x7d\xce\xce\xad\xee\x91\x11\x08\xd5\x81\x92\xc7\x9e\x14\xa7\x5d\x75\x82\x65\xca\x38\xc9\x9c\x16\x33\x2f\xa8\x41\x0e\x21\xf5\x6b\x56\x1e\x1c\xe5\xac\x76\x08\xc2\xa1\xe7\x2f\x02\xe7\x3e\xad\xd4\x12\x37\x42\x8d\xd9\x2c\x37\x47\xa9\x85\x2b\x2b\x97\x67\xc3\x31\xe7\x10\x6a\x16\xc3\x19\xb2\xb4\x66\x65\xe5\xf2\x98\xdc\x5a\x09\xd2\xf9\xa7\x1b\x66\x35\x2a\x41\x54\xe4\xab\x62\x0f\x4c\xa8\x35\x92\xee\xac\x0c\xd8\x2f\xca\xc7\x3d\x42\x1d\x84\x12\xe3\x19\x21\x77\x13\x35\xea\x7b\x63\x32\x8f\xed\xe0\x7d\x8b\x46\xcb\x25\xb6\xa5\x8e\x42\x47\x75\xff\x69\xd1\xc2\x70\x58\xf0\x5d\x1e\x8d\xcb\xcf\xdb\x73\x32\x9c\xa7\x55\x89\xb8\x56\xc8\x72\x97\xa3\x45\xe2\xe6\x6c\xa7\x69\x2c\xcd\xc5\x50\x83\x27\xf2\xf1\x9a\x6c\xbd\xe8\xf1\xdd\x14\xb3\x77\x0f\x79\x40\xf9\x61\x83\xbe\xad\x09\x71\xd5\x20\x3a\xc6\x76\x8c\xdb\xca\x19\x42\x83\x63\x7d\xca\xd5\xa0\x59\x6b\xa1\xe0\xcc\xaa\x8c\xb1\xb8\x12\x08\xcc\xe7\xda\x10\x40\x3f\x9a\xcb\x7e\xd9\x83\x3e\xa9\xf1\x30\x21\xfc\x8d\xdb\x88\xd8\x5f\x7e\xd2\x5f\x21\x0d\x47\xf4\xc4\xe7\xc4\x77\xb0\xc0\xeb\xa8\xc4\x0b\x4c\xf4\xa8\x6c\x56\x7b\xbf\x70\x11\xee\x04\x9d\x23\x34\x22\x3c\x06\xc7\x11\x9b\xfa\x9d\x38\x95\x56\x6a\x02\x57\xbb\x4e\x9a\xe8\x20\x19\x39\xf2\x04\x39\x17\x1f\xe4\xc4\x77\xd3\x3c\xda\x9d\xe2\x91\x0e\x78\xa5\xb0\x53\x1d\x70\xa7\x18\x91\x78\xd0\x3f\x64\xaa\x3b\x7c\x86\xd0\xf8\x63\x3e\xed\x84\x84\xbb\x4e\x5b\x07\x8c\x97\xa7\x58\x2a\x7b\xbb\x47\x04\xb5\x3e\x25\x48\xf5\x4c\xbf\xe3\xc7\xa4\x73\x50\xd2\x1c\x25\x58\xfa\x5d\xa4\x9d\xd4\x31\xd3\xf8\x6e\x0d\x64\xd1\xb4\xdd\xa7\xe4\x76\x22\x72\xc7\x7c\x96\xcd\xb9\x28\xc1\x41\xf4\xa9\x20\x0a\x96\x42\xf2\x58\xd0\x51\x21\xba\x35\xa9\xd9\x92\x3c\x48\xe1\xae\x63\xb2\x38\x19\xef\x3e\x0a\xa1\xb3\x3e\x7c\x9d\xf5\x2c\x7a\xa6\x65\xcc\xdd\x1b\x1f\x50\xd3\xdb\xa7\x68\x9b\xb8\x0e\x97\x7d\xb3\xa9\x11\xb3\xe5\xe5\x90\xc8\xa2\x41\x18\xc4\xab\xd2\x0f\xca\x78\x12\xa9\x6d\x49\x5a\x3d\x13\xd5\x5a\xb4\x25\xb4\x33\x5a\x48\xd9\xf5\x69\x02\x60\xf9\xea\x15\x4f\x1a\x34\xbd\xe2\x82\xed\x5f\xda\xda\x52\x40\x3b\xf2\xbc\x71\x26\xcf\x58\x35\xbd\xa0\x42\x08\x7f\xe2\x3a\x67\x83\x30\x7c\x8c\x44\x31\x67\xab\x9a\x55\x75\xbf\x47\x49\x6a\xd7\xd3\xed\xca\x8a\x12\x24\x91\x2c\xea\x8e\x0e\xe1\x6f\x3a\xac\x53\x9d\x33\x56\x4e\x07\xab\xf0\xa7\x38\x4f\x5f\x70\xd7\x0a\x5e\x44\xf2\x63\x37\x53\x30\xc8\x04\x9c\xa1\x58\xc9\x1e\xc1\xa4\x5c\x1e\x41\x9f\x93\x2e\x27\x51\xcf\x15\xd8\x17\x33\xa8\xe5\xc7\xcc\x2e\xb8\x4c\x62\xf8\x8e\x04\x5f\x15\xd4\x1d\xa5\x59\xe4\x10\x8e\x9d\x00\x05\x3d\x64\xea\x9b\x83\x66\x48\xb9\x6c\x6f\x1a\x08\x4a\x7d\xbf\x9a\x71\x01\x04\xc7\xf4\x20\xc6\xf2\xbd\x7c\xa2\x46\xbb\x00\x13\xcd\x6a\x05\x78\xc8\x31\x12\x58\xc0\xdc\xc9\xd1\x40\x97\x2c\xee\xbd\xfa\x48\x86\x43\x47\xf9\xbf\xc9\xf3\xd7\x96\x44\x61\x2d\x66\x46\xe2\xd9\xd2\x2d\x23\x17\x53\x5f\x51\x47\xf4\x42\x5e\x2c\x1d\xc5\xb2\x13\x92\x98\x94\xf2\xad\xe4\x5c\x19\xe6\x16\x25\xe3\xd3\x48\x06\x03\x1e\x5d\x8f\xb0\x63\xad\x53\xf7\xed\x7e\x72\x27\x3e\x8d\x4e\x81\x82\x13\xc1\x56\x54\x79\x35\x72\xa5\x47\x9c\x04\x67\x16\x16\x62\xbd\xad\xce\xb8\xc4\x33\xc4\x25\xa9\xda\x9a\x5d\x93\xe4\x15\x07\xb4\xf5\x38\xb3\x5e\x2a\x96\x72\x78\x34\x49\x2b\xc1\x45\x15\x4f\x28\xe0\xc5\x38\x4e\x70\x14\x2c\x53\xf9\x52\x89\x0b\xe1\x41\x95\x4b\x30\x85\x4b\xfe\x53\x82\x0b\x38\x83\xa0\xb5\x0c\x17\x64\x50\xca\xf2\x41\xe8\xaf\xb2\x41\x5c\x5d\x0a\x68\xb5\xef\xb7\x4f\x13\x3e\xb7\x14\xe4\x4c\x6d\x46\xb3\x10\x1a\xf3\xd5\xa9\x75\x55\x23\x65\xa4\x2b\x22\x2f\x1e\x0e\xeb\xda\x0d\x94\x52\x08\x3d\xcb\x87\x97\x4d\xce\x8c\x70\x2e\x30\x50\x38\x3a\x88\xe2\x23\x2b\x7d\xc5\xfb\x8d\x92\x53\x21\x28\xd9\x89\x22\x1b\x63\xa2\x6c\x6e\x64\xfd\x39\x9b\x92\x14\x83\x63\x26\x8b\xeb\x3c\xed\x73\x7f\x85\xc4\x84\x9b\x83\xc7\xb3\x41\xdc\x0b\x68\xa3\xd4\xac\xcb\x83\x4e\xa7\x42\x2a\x0e\x92\xee\x06\xcf\xfa\x91\x40\x52\xc8\xcb\xb8\xd6\xe7\x2c\x66\x42\x91\xac\x29\xcf\xe1\x07\xe3\x5c\x7b\xe6\x3d\x70\xdc\xca\xe6\x07\xe7\xde\x1e\x87\xa3\x2b\x46\x85\x52\x64\x65\xe9\x86\x83\xa8\x27\xbe\x4b\x20\xf7\xb1\x47\x82\xe5\x5e\x2c\xbe\x2a\x28\xf7\x39\x88\x3e\xca\x83\x8e\x27\x55\x0f\x01\xe5\x3e\xab\x6d\xfd\xa8\x0f\xba\x92\x3d\xa0\x3a\x57\x16\xef\x15\xff\xdc\x21\xf5\xf9\xa9\x6e\x37\xe3\x9c\xce\xb2\xb0\x91\xb5\x28\xbc\xdc\xd4\xe0\x42\x9e\x63\xad\xf8\xe7\x5c\x5e\x8d\x71\x3d\x47\xbf\x33\x6a\x15\x94\x5e\xf3\x21\x70\xb1\x40\xbf\x28\x3d\xd7\x19\x75\x5c\xa2\x97\xd1\x4f\xcb\x81\x13\x25\x0b\x92\x0b\x69\x78\x50\x45\xf4\x2d\xd8\x2c\x66\xa8\xd1\x24\x2d\x5d\x20\x8b\xb8\x9c\x0d\x5b\xa8\x43\x79\x48\x9b\x3c\x77\xd5\xc4\xfc\x77\xec\x8d\xac\x91\x03\x47\xa7\x7a\xba\xab\x1f\x86\x6d\xd7\xce\x35\x38\x5e\xcd\xef\x91\x46\xbb\xd2\x0d\xce\x91\x4e\x75\x59\xb0\xe0\x26\xd2\x48\x08\xac\x2d\x9c\x97\x4b\x8d\x52\xc9\x45\xbd\x6e\x7e\xda\x46\x14\x12\x3f\xa6\xe7\x09\xb6\xd6\x9d\x07\xb2\x3e\x76\x77\x22\x6c\x38\xe6\x29\x2f\xe4\x56\xac\x54\xda\x9b\x1c\xc8\xce\x5e\x80\x8d\x67\xca\x64\x32\x2a\x49\x60\xbb\x05\xcd\x7c\xd6\x93\x7d\x94\xf9\x5c\xfb\xe8\x78\x2e\x1d\x4d\xcd\xae\x6e\x1d\xa1\xe1\x70\x1e\x2d\xcc\x67\xeb\x2b\x9c\x8b\xf9\xe3\x33\xe2\xa9\xf9\x1c\xc8\x14\x51\x75\x5e\x34\x28\x43\x02\xfd\x0a\xdf\xc2\x24\x1e\x8b\x49\x81\xeb\x3a\x8d\x76\x66\xaa\x8a\xdc\x0f\xd1\x2c\xce\x45\x42\x60\x94\xbd\xd5\xe9\x9c\xac\xb1\xa8\x93\xba\x6f\x98\x4d\x87\x2e\xd6\x9e\xff\x94\x9c\x74\x11\x8e\xbc\x42\x64\x71\xa8\xea\x6b\x93\x20\x74\xf9\x5c\x84\x1e\x62\x33\xb4\x5c\x76\xc3\x8a\xc7\x90\x3e\xff\xf6\xab\xc1\x88\x9c\x34\x04\x0e\xf1\x00\x49\x89\xc9\x37\x15\x3c\x39\xa5\xc4\x9e\x1a\xd9\xe2\x63\x84\x5f\x71\xf9\x8f\x69\xc1\xc7\x8b\x56\xb0\xb1\x2b\x00\xd0\x65\xbf\x2b\x43\x28\x0e\x87\x64\x81\xa3\x72\x39\x5d\x9c\xe5\xfd\xd6\x74\x0c\x42\x6c\x06\x59\x3b\xd7\x20\x1f\xa0\x0f\x15\xe5\x1a\xd6\xf1\x6a\x23\xc3\x3f\x14\x3d\x54\x30\x2a\x42\xc9\x28\xa0\x47\x66\x12\x05\xdd\x02\x0f\x3d\xa8\x50\x89\x51\xa5\x4b\x1d\xd2\x97\x71\x3d\x98\xbe\xb7\x0c\x78\x14\x97\x40\xc5\x2d\xb1\x6e\xe9\x0c\x30\x68\x27\xee\xb9\xaa\x6e\xa4\xed\x8b\xe3\x2c\xd1\x66\x82\xae\x24\x9b\x71\xe1\x00\x3e\x6a\xb2\xec\x31\x69\x72\xe3\xf9\xd4\xfe\x9f\x7b\x7c\xa1\xbe\xc8\x1b\xf3\x38\x65\xc5\x78\x8e\x17\xd2\xa6\x8e\x36\x11\xea\x51\x8f\x84\xdd\xaa\xec\xdd\x34\x52\x7d\x4a\xdd\xb3\xe0\x58\xde\xbe\x2f\x4b\x77\xb9\x05\x42\x1c\x83\x4f\xd2\x53\xc0\x96\x87\x55\xa4\x13\xaf\xb9\x2d\xff\x2b\xc6\x37\x08\xa6\x5b\x93\xef\x74\x5a\xf9\x4e\x27\x0b\x70\xb1\xdd\x99\x95\x2f\xd5\x60\x63\x2b\x07\x17\x0e\x0e\xe4\x8a\x20\x86\xd8\x5a\xa2\x89\xba\xbe\x29\xe0\x25\xcc\xbd\xfa\x7e\x7e\x20\x06\x57\x36\x7a\x6e\x8b\x21\x38\x18\xbb\x1c\x99\xb9\x5c\x3b\xb7\x50\x4f\x2f\xc6\xc0\x47\x50\x92\x41\xb6\x60\xa2\x6c\x0f\xd9\xe9\x98\x1e\xba\xc4\xa5\x27\xd7\x40\x7a\x73\x8d\xab\xf3\xfb\xd9\x82\x57\x2f\x97\x67\xdd\x60\xc1\xd5\xe2\xc6\x74\x88\x21\xab\x47\xab\x68\x3f\xab\x56\x11\x3d\xc0\x35\xe6\x2a\x46\xae\xfe\x81\x70\xe0\x71\x2b\x33\x4c\x97\xa0\x42\xb3\xbd\xce\x2d\xc1\x44\x09\x3a\x08\x81\x93\x63\xba\x19\xd0\x9d\x17\xe4\x49\x0f\xa8\xdb\x04\x65\xeb\x9c\x6e\xcd\x8a\xa7\xa6\x69\xac\x68\xba\xf9\x02\x97\x71\xe2\x7e\xaa\x00\x0d\x37\x90\x6d\x67\xd1\x05\xfa\x8e\x50\x81\x82\x4b\x5a\xc3\x6f\xcc\xc2\x78\x86\x2c\x78\x41\xb9\xac\x3c\xe0\x1b\xd1\x8f\xdc\x00\x64\xbf\x8f\x23\x1c\xe2\x01\x6e\x17\x13\x53\xd7\x8a\x3b\x5e\x1d\xf7\x3c\x79\x5d\x4b\x0e\xb4\x51\xa6\x0b\xb9\x22\x4d\xd2\x92\x7c\x23\x58\xa9\xbd\xe8\xfa\x5e\x1d\x47\x5e\x1d\x35\x5c\xdf\x6b\x57\xe7\x71\xcf\x73\x69\x71\x5b\x4d\xbf\x65\x4f\x86\x0a\x55\x5d\xc0\x1d\x8f\x6a\x86\x91\x06\xce\x29\xbf\x60\xbf\x52\x41\x78\xe0\xf9\xfb\x07\x07\x48\x65\x7e\xff\xa0\x52\x51\x34\xe9\x16\xa9\x02\x03\x84\xfb\xde\xa8\xa4\x1e\x20\xa1\x0e\xf4\x2b\xbd\x05\xb6\xe8\x66\xeb\xaf\x98\x76\x43\xd5\x7d\xdc\xf1\xba\xa8\x11\x7a\x3d\xdc\x5d\xe8\x94\xcb\xae\xf8\x89\xc7\xf5\x66\xd0\xf2\xb2\x71\x75\x3a\xb8\x8f\x43\x1c\x21\xdc\xf3\xc2\x4a\x1f\xde\x0f\xe4\x58\xbd\x88\x21\x46\xd4\x3f\x3d\xee\x98\x61\x45\xdd\xec\xf8\x0b\x64\x07\x5e\x7d\x66\xe0\x91\x85\x7a\xb9\x4c\x0e\x44\x8b\xd9\x29\x4a\xec\x19\xda\x48\x67\x79\xdb\x23\xfb\xdb\x07\xa2\xfd\x6d\x25\xa8\x42\xcf\xf3\xdc\x20\x1d\x2e\x28\xde\xb6\x66\x38\xaa\xad\x0e\x87\x6e\xe8\x05\xb5\xd5\xea\x00\xf3\x72\x79\x96\x95\xcb\x2e\x33\x23\x86\x10\x0e\x0f\xc4\xc8\xaf\x54\x66\x48\x18\x11\xf9\x44\x9f\xa3\x25\x4e\xfc\xd3\x33\x5c\x46\x7b\xa8\xa4\x6b\x2a\xc3\xa6\x58\x65\x5e\x0c\x2e\xd0\xc8\xcf\xd2\xa8\x48\xf9\x31\xb6\xf8\x59\x91\x06\x17\xa8\x9e\xe7\x51\xa1\x02\x51\x54\x30\x19\x28\x16\x7b\x83\xa9\x67\x3a\x87\xd5\xae\x80\x9e\x59\x44\xa7\xd2\xe5\xe5\x94\xf2\xea\xa9\xd0\x55\x02\x3d\x2e\x97\xb7\x22\x7c\xf0\xd4\x5b\x02\x18\x6d\x23\x38\xf4\x59\x81\x11\x1c\x86\x91\x7c\x8f\xe1\xc8\x0b\xf6\xef\x57\xb4\x0d\xbd\x68\xce\x17\x12\x80\x0a\xc6\xf0\xd3\xf6\x32\xba\x50\x88\x30\xab\xce\xa7\x2e\x35\x7c\xad\x63\x67\x49\xe6\x23\xdc\xf6\x06\x86\x6c\xaa\x56\x1f\xbb\x91\xd7\xae\xad\x56\x06\xc0\x06\x0b\xda\x39\xdc\xfe\x68\x41\x9e\xdb\x8b\x3c\xd5\xf9\x59\xaf\x5a\xf5\xd1\x7e\x14\x79\x6e\xdb\x73\x47\xab\xce\xb0\xa7\xa9\xcc\x3c\x3d\x49\x04\xc5\x3d\xcf\x8b\xa0\xee\x03\x1e\xd9\x2f\x58\x14\x6f\xaf\x42\x1f\xde\x02\x55\xe7\x33\xaa\x5b\xcc\x78\x10\xcc\xf9\x1d\xbf\x2f\x43\x27\xf8\xfd\x7e\x18\xb4\x47\xfc\x47\xed\xe6\xe9\x42\xc6\xa3\x2b\x04\x9d\xd3\x27\xc0\xac\x4f\x68\xc3\x45\xde\x82\xf4\x8c\x21\x73\x1c\x3b\xfe\xa9\xa7\x6b\x3a\xaa\x8f\xeb\x16\x1e\x15\x6a\x0d\xfb\x44\x8f\x94\x4e\x88\xee\x94\x74\x77\xd4\x59\x5d\x00\x27\x87\xa5\xe7\x44\xf5\xcf\xc9\xd8\x20\x7e\x29\x52\xcf\x46\x4b\x31\x93\x26\xa6\x7d\x42\x49\x47\x45\x96\xe8\x92\xb8\xdd\xbb\x8f\x58\xc8\xfa\x8b\xd1\x90\x9f\x00\x8f\x76\xc8\x22\x72\x1f\xf1\x90\xf5\x17\xe3\x21\x3f\x29\x34\xc6\xbb\x81\x57\xac\xb3\xc4\x58\x1c\xc5\xdc\xef\xcf\x71\x36\x88\x73\x11\xf6\xb1\xce\xa4\x3f\xd9\xec\x55\x15\x69\xa4\xba\x12\x9c\x93\xfa\x7f\x2e\xdf\x20\xee\x11\x1a\x8b\xac\xa4\x53\x98\x33\x0c\x96\xe6\xda\x8c\xc6\x7e\x40\x09\xaf\x4a\xdb\x81\xa2\x98\x6a\xf7\xcb\x88\x87\xc9\xa8\x6a\x02\xaf\x46\x66\xca\xa4\x26\x30\x46\x84\x05\x5e\x7d\x7f\x90\xc6\x26\x08\x60\xfd\xf7\x3d\xda\x0c\x5a\x33\x56\x4d\x4e\xc5\xb7\xec\x77\x92\x44\xeb\x6a\x42\xd4\xa6\xfb\x1c\xa6\x5c\xc9\xe8\x3a\x94\xd1\x0f\xad\x85\x8c\x9d\x1e\xf4\x91\x7a\xe5\x17\x2d\x46\x35\x4e\x04\x4b\xbb\x4c\xaa\x34\x56\x96\xc7\x7d\xb1\xcb\x58\x45\x69\xab\x4b\x7e\x14\xb4\x1d\x84\x83\xe1\xd0\x0d\x3c\x1f\xe6\x62\x8a\x88\x74\x26\x44\xad\xd8\x44\x02\x81\x00\xa1\x02\x39\x92\x32\x83\xe6\xa7\x22\x66\x48\xc3\x6a\x88\x9f\x55\xc8\xb9\xa7\x8f\xe1\x1c\x8d\x44\xc3\xa9\xf0\x99\x34\x90\x8b\x4b\xad\x11\xc4\x44\x9b\x42\xb8\x54\xa3\xee\x60\x53\x4e\xfd\xb6\xf2\x28\x6a\x3a\x2a\x68\x64\x9a\x2a\x78\x94\xb3\x30\x24\x5c\x7d\x9a\x48\x34\xdd\xc8\x28\xc9\xfa\x9c\x9d\x09\x3a\xd2\xcd\x70\x40\x4f\x93\x4e\x35\xa0\x55\x26\x26\xc9\xbe\x82\x2c\xcb\x8c\x2d\x87\x64\xca\xef\xd5\x25\xe2\xcb\xa0\x26\x53\x65\xab\x9e\x29\xaa\xb0\xeb\xb7\xc9\x12\x63\xa7\xab\x6d\x46\x29\x69\xc7\x93\xb2\xe4\xb0\x2a\x5e\x78\x46\x8a\xc7\x67\x83\x38\x26\x5c\x95\x9e\x2f\x42\x36\x88\x7b\x83\xa5\xf1\x7d\xf6\xbf\x30\xe0\xa4\xea\x77\xc6\xe7\x10\x8c\xd6\x27\x13\xba\x40\x3a\x2b\xac\xc3\x46\x32\x64\xb9\x79\x34\xb9\xcf\xfa\x83\xfe\x68\x72\xd0\xe5\xfe\xca\x98\x30\x90\x42\x65\x86\x1d\x0f\xee\xe0\x1e\xee\xe2\x3e\x5e\xb9\x3f\x46\x6f\x16\xef\xe7\x78\x1b\x77\xed\x99\x90\xe6\x52\xb3\x16\xe8\xd2\x18\x65\xc8\x78\xaa\x72\x39\x2e\xe5\x5b\x2f\x64\x58\x97\x6e\xbb\xac\xe4\xe7\x60\xaa\xe2\xa3\x4c\xce\xb6\x56\x0e\x7a\xea\x4f\x55\x4c\x73\xbc\x83\xc3\xe9\x3a\x97\xe5\xff\xc1\x54\x85\x46\x26\x45\x7b\xaa\x62\xf9\x99\xd2\x99\xaa\x54\x7e\xfa\xf4\x26\x95\xd2\x62\x21\xbb\xb6\x46\x93\x4a\x00\xef\xea\x79\x85\x57\xa6\xc9\xac\xe7\x66\xdf\x5a\x73\x47\xa4\x73\x9b\xad\xf4\xfd\x78\x6e\x99\xc4\x4a\x0f\xe1\x55\xf3\x06\xfe\xdf\x61\x9e\x5a\x22\xca\x12\x44\xe1\xe2\xa0\xe1\x90\xe8\x95\x1d\xd2\x1a\x2b\x7e\x40\x9d\xe9\xba\x12\x06\x4b\xff\xae\x5e\x9c\x52\x28\x1c\x0d\xda\x9c\x85\xc1\x92\xe8\x87\x4a\x19\x83\xb8\xb6\xa4\x54\x03\xa8\x46\xb9\x2a\xdf\xad\xf6\x58\xd8\xd9\x93\xa8\x5c\xe3\x6c\x2a\x65\xdc\xc8\x27\xfd\x15\x12\x35\x9a\xce\x58\xfc\x5a\x59\x73\x0c\xe8\x18\xed\x06\xcb\x03\x7e\x7f\x37\x5c\xca\x5c\x7f\x2d\xc9\x06\x74\x83\xe3\xb1\x84\xd4\x0c\x1a\x4b\x21\x29\x36\x4f\xd0\x86\xcf\x6c\xa5\x3f\x88\x49\xc7\x1d\xb5\xa7\x93\x07\xd9\x9e\x05\x0f\x87\x93\x76\x27\xfa\xad\x95\x1f\x9e\xf5\x57\xa3\x52\xcf\x3f\x43\x4a\xaa\x98\x83\x12\x17\x2e\x7c\x1c\xb3\xf8\xd6\x9c\x4a\x6a\x04\x45\xc5\x04\x47\x15\xa7\xe6\x54\x08\x78\x72\x72\x47\x3c\xb0\xb8\x81\x36\x54\x37\xaf\x44\x98\x3c\xc6\x30\x4e\xac\xe0\x04\xd9\x01\x3c\x2d\xa7\xd8\x8b\x71\xad\xed\x87\xa1\x8a\xc2\xd9\x88\x67\x46\xdd\x35\x9e\xeb\x93\x76\x4c\x3a\xa5\xcc\x08\x96\x24\xd1\x95\x2d\x88\xde\x49\xa9\x51\x52\x01\x29\xa1\x3b\x25\x19\xaa\xbd\x34\xda\x27\xf0\x77\x52\x62\xd2\x16\x31\x1d\x18\x92\x8d\x1b\xe8\x11\xed\x38\xf1\x90\xdd\x7a\xc6\xc1\xf9\x5a\xc1\x34\x12\x7b\x26\x3f\x8a\xf6\xda\x39\xb9\xbc\x96\x19\x0e\xdb\x8c\x46\x2c\x24\xca\x3f\x64\x3e\x7e\xf7\xf8\x4d\xdd\xfd\xc3\xb4\xe7\xeb\xc0\xaa\x9a\x7c\xc5\x76\x39\xe5\xf2\x48\xce\xc5\x91\x14\x37\x46\x0d\x58\x66\xf8\xaa\xf4\x9a\x19\xcb\x01\x2c\x88\xfb\xa8\x0e\xd4\xec\xea\xad\x55\x6e\x31\xf3\x2b\x5d\xb8\x44\x19\xbb\x85\xcc\x07\xd1\x50\x66\x77\x37\xa1\x2b\x99\x7c\x8b\xb9\xdf\xb2\x1b\x22\x17\x27\x11\x0b\xcf\x90\x5c\xa7\x0b\x52\x4d\x89\xf1\x7d\x38\x75\xca\x0c\xe9\xa9\x53\x05\xed\xd5\xcc\xe7\x91\x8f\x69\xc7\x36\xed\x91\xe9\xca\x36\x31\x2a\x46\x45\xe3\xb0\x4c\xe2\xa7\xce\xd2\x5c\xf4\xce\xbc\xc3\x08\x99\x63\x31\xfb\xd3\x25\x99\x5a\xc7\xb0\x7c\xc8\x7c\xa1\x40\x07\x71\xe0\x87\xc1\x17\xf6\x64\x2d\xb3\xeb\xd4\xa6\xe8\xf4\x09\xe6\x77\xb4\x23\xda\xda\x41\x5b\xf1\xca\x5a\xe9\xd6\x2c\x4c\x55\x7c\xa5\xc9\xdd\x52\xca\xd2\xff\xaa\xfe\x29\x94\x8f\x4c\xd9\x4f\xe9\x3f\xb9\xfa\xfc\x80\xf0\xd5\xaa\x7e\xeb\xb7\x57\xca\x48\xee\xf8\xd4\x36\xa0\x95\x0f\x69\x3e\x41\x56\xf5\xc5\xcb\x69\xb2\x1a\x25\x58\xa2\xea\x22\xe3\xc6\x4a\xdb\x49\x0f\x78\x88\xf5\x45\xa5\x29\x86\xb9\xb7\x96\x60\xea\xd5\xf7\xd3\x03\x70\x3f\xb9\x9f\xc2\xe1\x55\xe0\xc5\x4d\xda\xc2\xcc\xb3\xbc\x06\x06\x15\xc7\x73\x9b\xcf\x96\xff\xa3\xf5\x10\x72\x50\x8d\x9c\x23\x6d\x97\xa0\x19\x56\x2e\xbb\xbc\x19\xb4\x3c\x26\x83\x77\x18\x8f\x54\x45\xfa\x90\x24\xa7\x50\xca\xab\x41\x47\x68\xe9\xf7\x99\x61\xf4\x51\xf4\x9a\x69\xa9\x41\xbc\x05\xd8\xb8\x08\x34\x1a\x4e\x85\xe0\x0e\x31\xdf\x21\x22\xb5\x79\xc1\x28\xcf\xe6\x54\x2d\xe0\xed\x70\xee\x59\xd7\xae\x01\xb9\xb5\x87\xd0\x5c\x7a\xa1\xba\x18\x37\xf7\xb5\x1a\xa2\x5c\x92\x4c\x3e\x59\x15\xc4\xd8\x0e\x57\x15\x87\x47\x1a\x0e\xe5\x8b\xbd\xac\x09\xae\x6d\xf3\xa4\x6d\xb2\x65\x53\xb5\xb6\xbf\x42\x64\x87\xa5\xad\x93\xed\x24\x49\x3f\x4a\xa5\x3a\x34\xb7\xf4\x98\x1b\xbb\x76\x0e\x8e\x46\x03\x74\x3f\xf8\x4c\x44\x4a\x50\x69\xa7\x74\x86\x70\xe9\xb3\xb1\xc4\xba\xa5\x01\x0f\x4b\x7d\x9f\xfb\x2b\x51\xad\xe4\x3e\x16\x74\xa4\xd7\x8e\x6e\x40\x3b\x25\xe7\xc1\x4a\x50\x79\xd0\x11\x7a\x93\x1c\x49\x69\x5d\xdb\x09\x3a\xe6\x2b\xaf\x3c\xe8\xd4\x1e\x54\x08\xc9\x4b\xfd\x91\x66\x8f\x06\x51\x14\xd0\xe5\xb4\x91\x86\x29\x57\x72\x9f\x60\xec\xb4\x52\xcd\x1a\x69\x1b\x5a\x37\x53\x4d\xd7\x1e\x34\x0c\x2b\xea\x5f\x24\xb4\xcd\x3a\xe4\x99\x63\x47\xcc\x2e\xc0\x65\xa8\xa1\x54\xca\x9d\x18\x91\x6c\x3a\x9b\xd9\xd2\xe7\xd5\xfc\x04\x1d\x12\xc3\xc4\x95\x96\xc9\xf0\x00\xfb\x20\xc4\x7d\x57\xee\xc3\xd5\xb7\x5a\x14\xca\x77\x5c\xa8\x36\xa0\xc1\xf3\xf0\xf2\x40\x3d\xcf\xf0\xc3\x67\x8a\xab\x80\xcf\xea\xdb\x62\x41\x1a\x54\xdb\x68\xb6\x36\xa9\xb9\xe0\xb9\x07\x49\x83\xd4\x9b\x3e\x58\x9e\x0c\x17\xaa\xf3\xa3\x2e\xd2\x8f\x81\x53\xf4\x3e\x18\x63\x47\xa5\xb6\x4f\x05\xbb\xf8\x61\xa4\xaf\x71\x54\xd3\x8d\xd2\x83\x52\x09\x7f\xd0\xb1\x9e\x8c\xc4\x4c\x31\xb7\xab\x38\x3e\x95\x7d\xaa\x79\xb8\x23\x1f\x41\x1f\xae\x20\xd9\xd2\xe7\xcd\x5c\x38\xe8\x36\x5b\x66\x4e\x93\xe2\x0e\x2a\xb1\xc0\x95\x19\x03\x53\xee\xff\x54\x6c\x40\x31\xd7\xe9\xf8\x42\x63\x54\x51\x65\xd3\x3a\x5b\x47\x89\xaa\x32\x76\x29\x2a\x97\xd3\x8a\xa9\xaa\x98\xd5\x56\xfc\x7e\xb6\x52\x83\xa7\x72\x76\xee\xc9\x8b\x1d\xfd\xa3\x2c\x8f\x0a\x8a\xa5\x0f\xf7\x69\x87\xad\x54\x07\x3c\xac\x46\x7e\x77\xaf\x0f\x3c\x52\x53\x25\xe7\xe0\xa3\x87\x1e\x3b\xfc\xf8\x47\x3f\x76\xe4\xe3\x9f\x78\xe2\xe8\x93\x4f\x3d\xfd\xc9\x63\xc7\x4f\x3c\xf3\xa9\x4f\x7f\xe6\xb3\x9f\xf3\x97\xda\x1d\xd2\x5d\xee\x05\x9f\x3f\x1d\xae\x50\xd6\x7f\x9e\x47\xf1\xe0\xcc\xd9\x73\xab\x5f\xa8\xcf\xef\x7b\xf8\x83\x1f\x7a\xe4\x3f\x3f\xfc\x11\x07\x73\xcf\x71\xf4\x5a\x46\xe4\x22\xc6\x2b\x5e\x5c\x6b\xf7\x7c\x7e\x30\xb6\x6f\x86\x25\xa8\x7a\xed\xa2\x87\x60\xd9\xb3\x6c\xe4\xc6\xa8\x00\x30\xe1\xaa\x20\x46\xf6\x92\x54\x9b\x6f\xd2\x49\xc1\x0e\xfc\x31\xd1\x64\xa0\xae\x94\xba\xa9\xf8\x53\x7b\xd7\xa5\xd5\x92\x5f\x8a\x06\x4b\xf2\x68\xc3\x0e\x48\x50\x73\x26\x28\x42\x51\xec\xc7\xa4\xba\xe2\xb7\x7b\x01\xbd\x6f\xcc\xa2\x57\x5b\xe5\xf7\x33\xb5\x62\x90\xc2\x08\x73\xdb\x3b\xc5\x4c\xd6\x97\x06\xac\xd2\x5a\x11\x95\xa1\xf0\x67\x40\x08\x49\xd4\x23\x8f\x68\x00\xcf\x5a\xa9\xa3\x92\x48\x96\x3d\xaa\xfa\x59\xa2\x84\x74\xa2\x92\xca\xaa\x5c\x07\xa6\x65\x3d\xab\x9a\x66\xdc\xb2\xab\x2d\x08\xbf\xa3\xd7\x2a\x8d\xa0\xaa\x12\x9e\x07\xb6\x07\x9c\x13\x1a\xcb\x96\x9f\xf4\x57\x88\xb1\x62\x8f\x06\x4b\xc6\xb1\x4d\xe4\xad\x69\x47\xa9\xea\x1a\xc1\x23\x3a\x4c\xcd\x09\xee\x53\x65\x1b\x10\x0d\x87\xcd\x16\xf6\x3d\xa2\xc2\xd4\xe4\x3e\xc8\x4b\x4b\x65\x45\xc7\xcc\x85\xe5\x02\x55\x53\xc6\x63\x42\xe5\x93\xad\xe6\x6b\x4d\x4f\x4b\x30\xc7\xbc\xd6\xa5\xc8\xaa\xc9\x1f\xad\xc9\x37\x35\xe5\xb0\x18\xad\x28\xd1\x97\xa0\xb5\xe3\x4f\x3f\x71\xf0\x84\xe7\x3c\xe4\xcc\xd0\x5a\x6c\x0a\x9c\x60\x45\x9b\xb2\xfc\xf1\x94\x9d\x5f\x19\xf6\xda\x46\x9b\x6b\x6a\x80\x1a\x6b\x99\x35\x42\x9f\x0e\x1d\xc8\x0c\xb6\x3d\x0c\x8d\x07\xf5\x09\x4e\x7e\x6c\x2a\xce\x83\xa5\x05\x27\xc1\xb9\x56\xa5\xb5\x70\x4d\x7a\x84\x01\xd1\x53\x47\x19\x2b\xc1\x7c\x45\x56\x44\x0b\xbd\xda\xd6\x71\x75\x1e\xcd\x10\xaf\x6e\x74\xf2\x45\x2b\x84\x45\x85\x34\x48\x4d\x30\x84\xea\xc3\xbc\x22\x1e\xcf\x70\x21\x69\xc1\x42\x97\x6f\x4d\xb9\xf4\x1e\xe5\xcb\x67\xe8\x69\xca\xce\xd2\x92\xea\x74\xe9\x39\x29\x22\x9e\x03\xc6\x3c\x1b\x84\x61\x3a\x7e\xca\x4c\xc9\x9a\x00\x5a\x51\x19\x61\x5f\x6d\xfe\xd3\x09\x3a\xb9\xc2\x09\xce\x33\x97\x6d\xd8\x9b\x92\x54\xbd\xf6\x4d\x73\x39\xfa\x95\x71\x8e\xa1\xc6\x15\xce\x34\x0c\x65\xed\x1c\x19\x2b\x36\xeb\x42\xce\x53\xcf\x04\x87\xc3\x00\x77\xbc\xb8\x16\xb3\xe1\x30\x98\xa9\x7b\x9e\xd7\x31\xfa\x8b\x33\xeb\xa0\x45\x97\x7a\x1d\x3d\x16\xee\x3c\xc2\xa1\x37\x5b\x47\x0d\x91\x28\xc0\x79\x84\xa5\xe5\x61\xae\x08\xf3\xda\x56\x91\x81\x2a\xc2\xbc\xb6\x00\xe7\x91\x74\xcf\x0f\x05\x02\x24\xfd\xaa\x5a\x3f\x23\x69\xee\xea\x32\x8f\x59\x2c\x10\xe1\x3a\x42\xd8\x57\x9f\xa8\x47\xad\x4f\xbe\xfc\xa4\x34\x1b\xd1\x5d\x77\xd4\x4a\x3f\xf0\x62\xdc\xf6\xc8\x8c\xae\xba\xed\x91\x71\x55\x07\x5e\x3c\x52\x75\xe0\x79\x1e\x55\xd1\x02\xda\x9e\xe7\xb1\x59\xcf\x1b\x94\xcb\xdc\x9a\xe2\x92\xea\x48\x3f\xac\x2d\x1e\x33\xca\xe2\xa0\xbb\x3a\x6e\xb0\xb3\xec\x53\x50\xac\x78\x98\xf5\x57\x3d\xc4\xc6\xd6\xcc\x2b\x90\xa8\x4d\xd2\x92\x12\x53\x99\x15\xa7\x56\x1c\x07\x98\xb4\xe4\xa0\xcd\xa0\x65\x75\x48\x9d\xc6\xb1\x9c\x2d\x7a\xb6\xba\x49\xad\x14\x7f\x52\x1a\x9e\xc0\x5c\x3d\x55\xcf\xbe\xa1\x18\xcd\x0e\x4c\x11\xa3\x99\x78\x91\xc3\xc3\xe6\x91\x6c\x42\xb8\xb4\x89\xcb\xf1\x3c\x6a\x8c\x41\x55\x6e\x53\xe5\x9b\x78\x58\x41\x6d\x61\xa2\x65\x89\xea\xbf\x79\xa6\x8b\xe7\xe5\x22\xc8\x61\x8b\xcc\xe5\xd9\xdb\xaa\x22\x10\xd5\x52\x63\x40\x7b\xf2\xe5\x7f\x47\x7a\x01\x70\xe5\xb3\x79\xbe\x7a\x7c\x37\x1b\x4a\xa4\x93\xcb\x38\xc3\xcd\xa9\x1c\xc4\xcc\x5b\xb3\x66\x3b\x88\xe1\x42\x23\x56\xb5\xbf\x1c\x15\x8c\xda\x55\x64\xc9\xe2\x30\x8d\xd1\x5a\xb1\x0a\xef\x72\x8f\x60\xa1\xa1\xa5\xe6\xfe\x9e\xd2\x64\x16\x79\x83\x2f\x36\x79\x4b\x6e\xa6\x38\xe9\x0c\xda\xb6\x79\x97\xfd\x8a\x99\x34\x79\xcb\x8b\x31\x49\x10\x5e\xd3\xda\x10\x4f\xd4\x31\x30\x18\xaf\xc6\x76\x0b\xb3\x9e\xd6\x89\x46\xf1\x8f\xd8\x0a\x89\x7b\x42\xe5\x38\x4b\x68\xac\xbc\xe1\x39\x68\x86\x7a\x71\x6a\xf7\xeb\xd6\xb1\x21\x78\xb3\xde\xb2\x7e\xcc\x8b\x0d\x90\x1b\x17\x3d\xe6\xe7\x10\x9d\x24\x6e\xf2\xd6\xfe\x02\x0b\x07\xf8\x2e\x23\xe2\x4a\xef\xf2\xbc\x5c\xa6\xe5\x32\x43\x60\x1b\x65\x88\x9b\x0e\x92\x52\x88\x1a\x25\xa7\xe2\x32\xb1\xef\xc9\xaf\x29\xa8\xe2\x94\x84\x68\x16\x39\xb8\xbc\x80\x11\x10\x1d\xb9\xbc\xf1\x51\x22\xda\x6d\xc6\x2d\x2f\x48\xa4\x95\x39\xe6\x98\xe1\xac\x56\xe1\x32\xa4\x34\xdd\x19\xcd\x76\x4c\xbe\xc0\xce\x71\xad\xe6\x1a\xb3\x44\xca\x74\xb3\x44\xaa\x93\x05\xad\x24\xa4\x9a\xc5\x08\x42\xb1\x50\x48\xc6\x44\x9b\x4d\xb5\xeb\xc1\x20\xe8\x54\x97\x09\x55\xbe\xe6\xef\xf7\x91\x98\x6e\x88\x98\xcd\xb2\x89\xd6\x86\x6a\xcb\x24\x3e\x11\xac\x10\x63\xb9\xec\x9c\xd3\xff\xaa\xf2\xbf\x0f\x8a\xff\x56\xe1\x27\xfc\x73\x8c\x9f\xe1\xb9\xe6\xb9\xd5\xd6\xdc\x72\xf6\xd8\x55\x4d\x79\x97\x54\xe6\x1f\x79\x28\xb3\x0b\x43\x1f\x98\x7f\x64\x58\x37\x5b\x6d\x2f\x63\xc7\x3b\xff\x08\xc2\xae\x73\x4e\xe8\x54\xf1\x22\x6f\x3c\x5c\xe6\xc3\x0f\xa3\x94\xd4\xf3\x8f\xe8\x31\x9c\x7c\xce\x96\x3b\x7e\x8f\x8a\x2c\xb0\x8a\xcf\xe9\xa7\x3b\xed\xd6\xb9\xec\x26\xac\x1f\xd5\xac\xe1\xd0\xc4\x5c\x55\xc1\x8a\x4b\x7e\xfb\xf4\x94\xd9\x8d\x15\x9e\xc9\x3d\x8a\x5f\x34\x27\x1d\xb3\x28\x93\x80\x68\x93\xac\x67\xfd\xf0\xb4\xb1\xe9\x28\xb4\xb8\x04\xf3\xa5\xfb\xb2\xd1\xcd\x3a\x19\xb3\x0c\x77\xb2\x1f\xe8\xb8\x0f\x2c\xf3\xc1\xf2\x95\x16\x8d\xfb\xe0\x4f\xb2\x0d\x91\x26\xa9\xd1\xdc\xc0\x58\x94\x80\x91\x6a\x31\xff\xe4\x67\xf0\x66\x87\xde\x9b\xdc\x31\x14\xdc\xea\x16\x9a\x15\x8c\x19\xa4\x9d\x0f\xd0\xa7\x0f\x1e\x7b\xf2\xc8\x93\x1f\x3d\xf5\x89\xc3\x9f\xf5\x48\xed\xd0\x33\xc7\x8e\x1d\x7e\xf2\xc4\xa9\x63\x87\x3f\xf9\xcc\xe1\xe3\x27\x64\xaa\x8e\x9c\xa1\x9c\xb2\xf8\x63\x32\x39\xa7\x4e\x49\xb4\x4f\x71\xf2\xfc\x80\x44\xb1\x83\xc5\x46\xdc\xae\xdc\xca\xd1\x09\x38\x69\xc7\xa7\xce\xfa\x9c\x0a\x22\xe8\x48\x55\xea\xe4\xe3\xa8\x20\x3e\xbc\xbd\x9b\xd2\x9b\x08\x27\x2b\x2c\x26\x47\x3a\x1f\x85\x61\xf1\x8a\x93\x87\x43\xc3\x46\x09\x96\xa6\xb5\x82\x94\xa1\xf2\x79\x08\x2f\x93\xc4\x8e\x20\x2d\x6d\x07\x56\x9a\x68\xbd\xdd\xc3\x5d\xb4\xd6\x29\x97\xdb\x35\x69\x77\xad\x6d\x19\xfa\x5e\x7b\x14\x8d\x5a\x2a\x97\x67\x06\x23\xcf\xac\x02\xcf\x70\x6e\x2d\x73\x6b\x51\x3b\x4d\x56\x55\x28\x53\xcf\xf3\xcc\xea\x5b\x78\xca\x68\xe6\x8e\x21\xe4\x80\x87\x0d\x82\x4f\x93\xd5\xa8\x11\x27\xa8\xa6\xef\x90\x12\x97\xd4\x28\x39\x2b\x1d\xe4\xe0\x18\xcd\x84\xac\xed\x87\xc7\x63\xc6\xfd\x65\x22\xf1\x3e\x43\x8e\xc4\x64\x45\xb7\x8d\x8d\x47\xa7\x8c\xed\x48\x4f\x2c\xab\x08\x4c\x9d\x57\x2c\xf4\x53\xe4\xfb\xb9\xba\x23\x12\xcb\x8a\x7d\xbc\x82\xf0\xb8\x56\x23\x84\xdb\x35\x31\x4c\xc7\x24\x05\x5d\x82\x57\x70\x28\xd2\xc0\xcf\xd5\xd3\x2c\x0c\xd5\x6a\x2c\x5a\x3e\xe3\x9d\x0d\x68\x87\x9d\xad\x31\xaa\x76\x9f\x03\x2a\xe4\xb9\xa0\x58\xe1\x07\x5b\x26\x15\xd8\x8f\x9c\x29\x97\xcf\xb8\xa2\x35\x3d\x9e\x09\x9e\x85\xb1\x1c\x0e\x01\x52\x1f\xc1\x11\x68\x69\x5c\x4f\x7c\x84\xe5\x2c\xea\xba\x96\xe6\xa6\x6a\x28\xb5\xa5\x11\x0d\xfd\xff\xb3\xf7\xae\xbd\x8d\x23\x5d\x83\xd8\x77\xff\x0a\x99\xcf\xbc\x6a\x96\x55\x92\x48\x5d\x6d\xda\x65\xbd\xee\x6e\xf7\x4c\x3f\xd3\xed\x9e\xa7\xed\x9e\x9b\xac\xf1\xd0\x52\xc9\xaa\x69\x8a\xd4\x14\x4b\xdd\xf6\xd8\x5a\x3c\x2f\x82\x5d\x04\xf9\x94\x20\x1b\x04\x08\x90\xdd\xcd\xa7\x45\x90\x20\xbb\x01\x72\x5b\x04\xd8\x05\x36\xbf\x24\xbb\x3f\x60\xff\x42\x50\x37\xb2\x48\x91\xb2\xbb\xa7\xe7\xb9\xbc\x6f\x1a\x33\x32\x59\x3c\x75\x3b\x75\xea\xd4\xa9\x53\xe7\x9c\x8a\x98\xf0\x5f\xa8\x44\xb4\xf2\xde\x8f\x13\xe3\x7d\xb0\x95\x54\x35\x8d\xc6\xcb\x58\xb4\x48\xc4\xc9\x9a\x90\xc9\x13\x0e\x94\x8d\x35\x46\xa6\x76\xa6\x11\x57\x0a\xd1\x31\x00\xb7\xe5\x78\xde\x92\x41\x3f\x6d\x07\x46\x6b\x16\x29\x40\x78\x76\x1b\x06\x96\xb6\x35\x14\x3e\x09\xa3\xca\x1b\xa1\xea\xf2\xc3\xca\xab\xa3\x25\x9b\x55\xf4\xc4\xae\xb0\x99\xcf\x2a\x1c\xc5\x71\xe5\x26\x5a\x52\x39\x71\x2a\x47\x8b\x45\x85\xc4\x95\x09\x5e\x50\x2c\x7c\x02\x44\xcc\x15\xbe\x27\xac\x5c\xe2\xf3\xb0\x92\xf9\x27\x9b\x27\x02\xbe\xfb\x95\xe9\x52\x5c\x62\x43\x71\x80\xfd\x18\xc3\x8a\x1f\x57\x26\x11\xaf\x3a\x8e\x78\x89\x7e\x65\x11\x31\x1c\x4a\x7d\x1b\x1e\x2f\x29\x61\x37\x95\x77\xcb\x80\x4f\x32\x19\xbd\xab\x91\x2f\xfe\x0b\x32\x91\xe1\x76\x2a\x2a\x0c\x60\xe5\xf2\xa6\x12\x63\xc6\x78\xa9\x3f\x8a\x08\xb4\x6f\xc2\xd8\x9f\xe2\xd7\xaa\x4f\x5e\x85\xd1\x25\xfe\x91\xb7\x47\x74\x49\x7a\x65\x64\x78\x74\xa6\x12\x0b\xe2\x46\x41\x31\x52\x99\x83\x51\xe1\x18\xf9\x22\xca\x96\x5d\x3a\x09\xcb\x67\x8a\x0f\x38\x59\x30\x32\xc7\xd1\x92\x19\x81\xd7\x02\x9f\x61\x6a\x8f\x33\x14\x52\x44\x83\x29\xc5\xc1\x8a\xbf\x64\xb3\x88\x92\x5f\xa4\x31\x14\xff\x32\xc1\x21\xe1\x5f\x22\xca\xc7\xda\x70\xeb\xe0\x00\x1a\x7f\x22\xbe\xfb\x7b\x12\x63\x41\xca\x14\x8f\x31\xe1\xe3\xa7\x82\xc5\x8b\x40\xdd\x62\x12\xaa\x7a\x1a\x16\x17\xcd\xa1\xeb\x38\xe2\xd8\x42\x4d\x50\x7f\x22\xa5\xf2\x17\x24\x66\x9c\x47\xda\x56\x2c\x3b\x6b\xc1\xa5\x38\xee\x50\x17\x24\x65\xf8\x4f\x32\x43\x75\x29\x12\x31\x1b\x0b\x5a\x41\x95\xe7\xd6\xe0\xf5\xda\xef\x4d\x7c\x52\x3c\x27\xb3\xc2\x20\x79\x53\xae\x54\x46\x92\xab\x2b\x5e\x6e\x32\x0d\xb5\x1e\x66\x1c\x60\x3f\x7c\xb3\xb0\x45\x1d\xea\xf1\x36\xf9\x42\xcf\xe4\x20\xf1\xcf\x6b\x6c\x4c\x82\x2d\xe4\xeb\xda\x30\xb2\xc2\x20\x78\x1c\x3a\xdb\xd6\xb5\x62\x57\x00\xb6\xbb\xaa\x39\x69\xfd\x46\x34\xc0\x31\x97\x11\xa5\xf6\x43\x13\x91\x2a\x4b\x93\x94\xd2\x21\xb0\x68\xa1\x4a\xd5\xb1\x0f\xc3\x32\x46\x54\x5c\xba\xea\xdb\x9a\x4f\x52\xb0\x2e\x97\xa5\x46\xfb\xf5\x05\x25\xef\x7c\x86\x9b\xbf\xb5\x31\x59\xf4\x0e\x53\x4a\x26\xf8\x45\xe4\x4f\x4e\x85\x0e\xa5\xc8\x64\x8f\xe2\x18\xb3\x22\x10\x0e\xb1\xed\x4a\x7b\xa7\xc2\x02\xf8\xb6\x3e\xf1\x68\xb6\xb1\x64\xbb\x14\x4d\xa2\xb1\x10\x67\xd4\x62\xad\xa3\xd2\x59\x52\x8d\x63\x01\x18\xa6\x20\x57\x58\x07\xf0\x8c\x1f\xdf\x9c\xc9\x40\xa0\x29\xe4\xd0\x19\x6d\xd1\x46\x4c\xc7\x08\xc3\x90\x2f\xf2\x38\x64\x27\xd1\x04\x37\x88\x08\xfd\xa9\x2e\x58\x17\x2e\x2c\xca\xa0\x74\xdb\x35\xe3\xdf\xde\xeb\x71\xb1\xc9\xab\x45\x19\xe5\x8f\xa3\x09\x7e\xa8\x10\xfb\x29\xf6\xb9\x61\x1a\x6d\x21\x39\x75\x0f\x45\x78\xd4\xb5\xd6\x5f\xfa\x31\x7e\x43\x03\x6f\x83\x21\xac\xda\x0c\xcf\x18\x5b\xc4\x5e\xb3\x19\x44\x57\x24\x6c\x48\xbe\x12\x37\x42\xcc\x9a\xa6\xc1\x27\xc3\x61\xe8\xcb\x48\x7e\x35\x4b\xf5\xbf\xa9\xf9\x27\xb6\x38\x4d\x27\x20\x9e\xd8\x92\x98\x46\xba\xc0\x2c\x00\x5a\xe3\x68\x3e\x17\xc1\xc1\xf4\x31\x5d\x72\x76\xed\x0d\x2d\x7f\x41\xea\xca\xde\x82\x83\x06\x04\x87\xec\x82\x4c\xac\x11\x5c\x3b\xe9\xf6\x86\x56\x3c\x8e\xc4\x85\xb1\x61\x24\x83\x50\x53\x1c\x2f\xa2\x30\xc6\x17\x73\x3e\x36\x23\xa8\xdf\x5f\x46\x13\x5c\xd8\x2e\x13\x40\xde\x0f\x0e\x92\x4c\xaa\x96\x7b\x71\x38\x4c\xf1\xa4\xb3\x9e\xdd\x2c\xb0\x05\xa0\x25\x0f\xc5\x46\x1c\x3f\xfe\x82\x7c\x2d\xfb\xe5\x59\x6e\xc3\xb1\xa0\x09\xbb\xb1\x6d\x67\xf2\x52\x5c\x41\x6e\xbc\x75\x72\x81\x7d\x43\x49\x49\xae\xe4\x7b\x96\x4f\x65\x02\x0c\xc8\x1d\xc6\x1a\x77\x2a\x50\xe6\xa4\x64\xcf\x89\xaa\x6c\xb3\x58\x70\xa4\xbc\xc9\x4a\xf6\xa1\x3b\xbf\x4f\x31\x6d\x48\xb1\xbd\x8a\x98\x39\xd9\xfd\x36\x90\x37\x29\x09\x56\x13\x2f\xfc\x31\xce\x8f\xbd\x34\x7c\x2e\xc0\xea\x46\xdb\x6f\x8e\x53\x69\x5d\x95\x2f\x2e\x31\x98\x9e\xc8\x85\x4d\x85\x98\x3c\x59\xab\x45\x29\xb5\xf8\x70\x6b\x63\x4d\x20\xcd\xbd\xb5\x25\x9c\x0a\xcd\x59\x5e\x1e\xb8\xbb\x4b\x37\x4b\x34\xff\xf9\xee\xce\x92\xee\x25\xa9\x95\x88\xf6\xd3\xc8\x3a\xa1\x88\x48\x81\x40\x63\xaa\xb0\x2a\x4f\x38\x60\xae\x91\xe5\x5a\x07\x65\x04\x4c\x93\xfc\xc8\x26\xf2\xcb\xbb\xe4\x3c\x80\x43\xe7\xbc\x05\x7f\x5b\x1e\x6d\x86\x6c\x2c\xe1\xd3\xf9\x2e\x68\x36\x9d\x70\x61\x7f\x41\x1a\x12\x88\x53\x89\xec\x86\xc1\x67\xf3\xac\x69\x68\xf9\xe3\x31\x8e\xe3\x0b\x16\xbd\xc5\xa1\xe0\x77\x0f\x67\x0e\x00\x0a\xee\x59\x08\xa7\xf9\xaa\xf2\xb6\x2d\xb2\xb8\xd9\xe4\x50\xb9\x69\x68\x24\x17\xb9\x57\xf4\xf9\x48\x0e\x21\x26\x7c\xc6\xfd\x18\xc8\x3b\x46\x75\x1c\x1c\xa5\x31\x56\x02\xf4\xf4\xf2\x28\xbe\x09\xc7\xcf\x43\xc2\xc4\x3d\xcd\x62\xdb\x91\xa8\x42\x54\xb0\x52\x9d\x0c\x09\xba\x57\x39\x22\xaf\x79\x55\xa5\x3f\x7b\x9c\xca\x40\x60\x6b\xbd\x4a\x53\xa0\x7a\xf6\x58\x98\x7a\xf0\xbd\x4f\xaa\x7c\x90\x52\x38\x58\x49\x2d\x5f\x2a\x6b\x01\xdb\x6a\x36\x15\xb6\x1b\x1a\xfd\x6a\xd1\x0e\x6b\x56\x33\x9e\xbc\x6d\xfc\x14\x4b\xbb\x29\xbe\x87\xc9\x2c\x5a\x05\xed\x60\x70\x3d\xb1\x5a\xb5\xd7\x13\x85\x27\xc1\x52\xdc\x36\xbb\xfe\xd1\x96\x67\x10\x09\xf2\xfd\xf4\xc8\xe1\x76\x19\x63\xfa\x7c\xe2\xe1\x86\x78\x78\x0a\x25\xdd\x9e\x71\xb2\xf5\x70\xc3\x78\x83\xf8\x7a\x41\x28\x8e\x9f\xf3\xf4\xe4\x79\x95\xb2\xa5\x2b\xea\x87\x0c\x4f\x4e\x39\x85\xc6\x22\x1a\x51\x26\x05\xe5\x20\x00\x64\x1f\x6c\xea\xa8\x6e\x89\x29\x9b\xc5\xeb\xf4\x9e\x4c\xa4\x35\xb6\xa7\x27\x92\xbc\x3c\x9e\xaf\xde\xbc\x1b\xb2\x69\x25\x7c\x32\x05\xb0\xe0\xb6\xcb\x05\x87\x85\x14\xaa\xd6\x60\xc5\x17\x0b\x40\x25\x2f\x15\xc2\xa4\xb2\xd4\xbb\x56\xa3\x65\x01\x78\x3d\xbd\x9c\x07\x85\xa0\xe2\x8b\xac\x73\x3c\xf3\xc3\x10\x73\x51\xab\x10\x32\xfd\xac\x65\x26\x39\x43\x0a\x81\xe5\x27\x8e\x83\xf0\xe2\xcd\xa9\x05\xe0\xbd\xaa\xce\x48\xd9\x24\x49\x2d\x45\x2c\x62\x85\x4b\x25\x26\xb8\x4d\xfc\xa3\xf8\x26\x16\xa3\xdb\x55\x26\xee\x96\x58\x05\x25\xce\x01\xa4\x08\x37\x38\xef\xe4\xf2\x93\xb6\x22\x51\x52\x9a\x81\xe3\xc4\x5a\x6e\xbd\xd6\xf5\xb9\x53\x70\x0b\xb3\x71\xd8\x79\x2f\x77\x10\x67\x89\xcf\x1e\x37\x84\xb0\x9d\xb5\x78\x93\x4d\x7d\xad\xf8\xfb\x20\xc7\x03\x42\x98\xfd\x0e\xbc\x1c\x00\x81\xd2\x18\x6c\x19\xf3\x4d\xf0\xad\x24\x48\xac\xc8\xed\x22\x96\xf4\xc6\x20\x2f\xe3\x42\x5c\x14\x41\x05\x4f\x5f\xd9\x0c\x86\x90\xa6\x8c\xc2\x97\x91\xef\x15\x06\xf4\xd5\x12\xb2\x64\x6f\xdb\x81\xe3\x28\x7a\x4b\xf8\x2c\x51\x74\x94\x22\x55\x52\x4f\x4a\x8c\xe9\x17\x4d\x82\x9a\x94\xd3\x2f\x9a\x80\x0d\x72\x33\x84\x99\x94\xc8\x12\xfa\x4a\xbf\x2a\xaa\x02\xab\x55\x46\x82\x88\x1f\xb4\x50\x95\x6f\xf2\x72\x2e\x8e\x1b\xb7\x7e\xbf\xa1\x00\x41\xef\x63\x3d\xf9\x8d\x5e\x22\x41\xbc\x7f\xff\x3e\x5d\x11\xb8\x0c\x31\x21\x7e\x10\x5d\xc9\x86\x5b\x85\x5b\xae\x09\x89\x17\x81\x7f\x63\x6c\x97\x92\x4f\x6a\x8b\xab\xb6\x31\x29\x9f\x63\xf7\xf1\x39\x55\xa6\xa7\xa4\xca\xbc\x60\xb2\x96\xff\x43\x77\x2d\x92\x1f\x14\x7f\xce\x4f\x5b\x29\x02\xc8\x09\x94\xe8\xfb\x9e\x44\x13\x5c\xad\x5a\x2d\xc7\x91\x26\x6e\x6b\x1f\x0b\x2c\xcb\x62\x4c\x2b\x52\xc7\x83\x27\x59\xed\x61\xca\x45\xb0\x34\x38\xdd\x44\x86\x39\xef\xf7\xbf\x2a\x4d\x43\xae\xed\x6b\xe4\x27\xbf\x0b\xc2\x13\x4c\xee\x01\x22\x6c\x8e\xc6\xfe\x7c\xfb\xdb\xd2\x90\x0b\x7f\x5d\x23\x54\xd6\x8b\xf5\xcd\xc6\x78\x1c\x2d\x43\x16\x37\x64\x16\xb9\xe3\xd0\xca\x9d\x77\x52\xbf\x63\x41\xb1\xb5\xf8\x3a\xb9\xe7\x68\x8d\xd9\xc8\xcc\xfe\x42\x44\x05\x9f\x1b\xd9\x45\x46\x12\x4e\x23\x6b\xa3\xea\x46\x1d\xa3\x5e\xa8\xc0\x6e\x17\xbe\xc0\x54\x6c\x72\x9b\x92\xed\x89\x54\x20\xe1\x98\xa9\xc8\x7e\xf2\x9a\x93\xb8\x84\x6a\x0a\x20\x2d\x68\x59\x20\xab\x87\xb1\xe4\x4e\xea\x9e\x8d\x16\x94\x60\x62\x25\xe5\x4c\x4f\x8a\xa9\x17\xe4\xc3\xb7\x60\x89\x58\x93\x93\x61\xa4\xe6\x00\xaa\xf3\xdd\xcb\x25\x09\x38\xcb\xb6\x41\x4e\x8e\x31\x8b\x22\x68\x5d\x0f\x25\x9b\x6f\x25\x71\xe8\xa4\x32\x6f\x6d\x44\xf9\xd2\x8c\xcc\x65\x99\x7c\x89\x6f\xac\x6c\x58\x4d\xf1\x45\x72\x73\x20\xce\x2a\x6d\xca\xa5\x8e\x22\x6e\x2b\xad\x63\x86\xc2\x56\x8a\x14\xdf\x9e\x92\x8a\x71\x43\x36\xaa\x56\x69\x62\x34\x28\xee\xf8\x56\x8e\x0c\x85\x51\xc2\x74\xd7\x84\xf1\x94\x38\x6e\x49\x1c\xd5\x49\x5c\x99\x2b\xab\x74\x36\xc3\x31\x4e\xfc\x00\xd2\x4c\xd2\x75\x4b\xd8\x5c\x29\x43\x64\x58\xb1\x52\x8f\x89\x7b\x25\xb8\xe4\x56\xd3\x58\xec\x05\xbf\x7d\xf9\xe2\x0b\xc6\x16\xaf\x25\x75\x6d\xc5\x89\x62\xfd\x25\x99\x0b\x82\x12\x32\x8e\xf6\xdd\x6c\xfe\x14\x0b\x31\x28\x6e\x44\x6b\xe7\xb2\xf2\x8c\xfb\xf7\xa7\xaf\x4e\xd4\x91\x75\xdc\x48\x08\x13\x5f\x33\xb0\x15\x35\xfc\xe5\x84\xe0\x70\x8c\x11\x4a\xee\xc9\x13\x27\xd4\x00\x1d\x52\xe5\xd2\xe6\xc7\x31\xb9\xe2\x6c\xe6\x36\x0d\xcd\x92\xa1\x48\xce\x00\xb5\x0b\x18\x42\x28\x2d\x34\x57\x20\xb1\x33\x26\xd5\x58\x07\x10\xc8\x61\x9f\x53\x52\x25\xbd\x04\xad\x22\xef\x87\x6a\x54\xf8\x40\x3d\xd2\x45\x3f\x92\xd7\xd9\x57\xe6\xfe\x4d\xe5\x12\xeb\x21\x6a\x58\xbc\x25\x1b\x6a\x3d\x12\x33\x4e\xd5\x91\x5e\x75\x5d\x89\x68\x65\xe6\xc7\x95\x4b\x8c\xc3\x0a\xc3\xf3\x05\xe6\x03\xfc\x9e\xb0\x59\xa3\xf2\x5d\xb4\xd4\xb5\xc4\x4b\xc1\x56\x2b\x2c\xaa\xf8\x95\x47\x7c\x0e\x2e\x63\x3c\xa9\x4c\xf0\x62\xc9\x6e\x1e\x55\x7c\xc6\xfc\xf1\x5b\xd1\x86\x95\x18\x0f\x9c\xbd\x5c\xc3\x38\xd6\x59\x6b\xd9\x8f\x67\xf9\x6e\x2b\xee\x52\x99\xfa\x24\x50\x8d\xa9\x48\x99\xb9\xf2\xe8\xb3\xdb\x58\x49\xe6\x7c\x1c\x57\x8f\x2a\xb6\x44\x12\xff\x12\xad\x1e\x49\x00\x73\xa8\x57\x8f\x40\xe3\x47\xdd\x2e\x3e\xcf\xac\xcf\x8f\xcf\x2c\xf8\x23\x07\x1f\x98\x6c\x08\x7d\x76\x5b\xe0\xe1\xa7\x77\xd3\x12\x06\xac\x7e\xe4\xf4\x26\x6c\x62\xe5\x6a\x08\x56\x2a\x64\x20\x46\x87\xf8\xd7\x2d\x8e\x7f\x79\x3a\xb8\x8f\x58\x1b\x3f\x74\x61\x94\xab\xe2\xc7\xac\x68\xd0\x9a\x4d\xc4\x02\xf1\x09\x17\xad\x32\x45\xe0\xfd\xaa\xbd\x54\x23\xf1\x01\xf2\x96\x40\x91\x38\x2d\x1a\xfb\xc1\x2c\x8a\x99\xd7\x69\x39\x8e\x42\x4d\x62\xed\x07\xe0\xac\xf8\x14\x68\x36\x11\xad\xff\x48\xaa\xfb\x6b\x16\xc4\xfe\x94\x54\xa6\x49\x41\x0a\x27\xfe\x82\xe3\xc8\x0f\x2e\x16\x34\x9a\x2f\xd8\x27\xa5\x42\xa5\xb7\x2b\x3b\xc0\x4a\x3f\x97\x10\x6d\xd9\xf6\xf2\x5e\xa2\xd5\x9d\xfa\x4a\xf4\xa9\xb8\xf2\x0c\x08\x47\xc4\x92\x45\xbf\x9e\xde\x77\x9d\xdf\x92\xde\xd7\xc3\xd3\xfd\x55\x91\xfc\x7a\xf3\x0b\xf5\x13\x12\x8c\x84\x82\xe4\x97\x7e\x9c\x3f\x50\x56\xca\x97\xbf\xdc\x9d\xa2\x0e\xec\xf8\xe0\x73\x8e\x3f\xeb\xa8\xe8\xd6\xaa\x89\x2c\xa4\x97\x72\x9c\x65\x60\x2c\x00\xc5\xde\xe3\x75\x26\x39\xc8\xe1\x50\x6d\x39\x72\x39\x57\x1f\xb2\xb9\x59\xab\xe0\xde\xbd\x87\x22\x87\x51\xf1\x16\x24\x39\x2e\xd0\x03\x22\x9d\x50\xc0\xea\x03\x07\xf9\x83\x44\x9d\x22\xad\xe0\xa7\x18\x5a\x5a\x30\xb4\x85\xbb\xd6\x3f\xd1\x6e\xf2\x1f\xdc\xbe\xf0\x36\xc3\x99\xd4\xa9\x15\x2c\xdd\x62\xad\xd1\x19\x7d\x00\x9d\x49\xe6\xf6\x91\x1c\x05\x96\x06\x61\x79\xb0\x8d\x46\x3e\x7a\xc2\x6f\x63\x87\x2f\x2f\xc8\x28\xa0\xe7\x71\x14\x8e\x7d\x86\x43\x9f\xe1\x49\x7a\xc9\xbc\x37\xb4\xd6\x34\xd6\x16\xb4\xd6\xe4\x22\x25\xd0\xe4\x35\xdb\x89\x39\x90\x92\x85\x52\x73\x22\x98\x90\xfb\xc5\x52\x2c\xf4\x7a\x51\x29\x17\xb9\x46\xc9\x62\x96\x35\x12\x16\xa6\x3d\x5f\xe2\x9b\x12\x29\x44\xaa\x52\xee\x97\x6d\xe4\x39\x9a\x6c\x61\x89\x11\x95\xfe\x58\xbe\x9a\x65\xd4\x37\xe2\xa2\x64\xe1\x84\x56\x58\xad\xe8\xf0\xe6\x92\x24\x4d\x9c\x4a\xcf\x7e\x5e\xdc\x85\x91\x22\xa2\x02\x41\x33\x21\x6f\xde\x62\x42\x17\xd9\xb3\xa4\x15\x65\x20\x53\x5d\xfa\xdd\x9d\xad\x6c\xb5\x13\x6c\xbb\xbd\xf4\x52\xed\x7c\x0d\x18\x00\xc1\xe4\x73\x2a\x3d\x39\xb3\x72\xd2\x44\x7e\x0c\x7f\xa5\x30\x61\x5b\x4d\x6b\x1b\x21\x1b\xa3\xa1\x3a\x18\xe7\x22\xa3\x30\x96\x16\x9e\xfb\xe3\x28\x80\x56\xb3\x69\xc1\xfc\x57\x2e\x54\xae\x25\x2e\x7c\x36\xe3\x3c\x7b\xa4\x78\x91\x05\x80\xf6\xb4\xae\xbb\xa0\x5a\xb5\x71\x0d\x59\x4d\x0b\x40\x0c\x6a\x3a\x16\xbd\x6a\x5f\x63\xc6\xe6\x81\xb4\x83\x10\xa8\x10\xcc\xfe\x0f\x9c\x25\x14\x85\x93\x49\x56\xee\xec\x0c\xcb\x5a\x15\xad\xcf\xb6\x54\x5f\xb6\xe6\x7e\x91\x32\x45\x11\x15\x21\x13\xda\xc7\xc3\x30\x1b\x94\x47\x78\x68\xa4\xae\x86\x2b\x98\x2e\x4d\xeb\xb6\x75\x6a\xf6\xe9\x9b\xd6\xd7\x3b\xa6\xb1\x35\xf8\x40\xd9\xe3\x93\x29\x56\x73\xd6\x7f\xa6\x4a\x55\x45\xc7\x80\x31\xaa\xbb\xdb\x08\x91\xd4\x95\x3e\xce\xd2\xfc\x3f\x80\x35\x95\x4c\xed\xb8\x5a\x55\xc1\x4b\xb6\x11\xf2\xd7\x03\x61\xdd\x53\xf9\xcc\x8f\x2b\x7e\x58\x21\xe1\x38\xa2\xc2\x0f\x43\xdf\x07\x21\x8a\xd4\xa1\xb3\x54\xd4\xd6\x4b\x5c\xb1\x1e\xd5\xfc\xda\x23\x0b\x8a\x90\x5c\x24\xe6\xef\xaa\xfa\xda\x23\xeb\x51\xf1\x2a\xff\x24\x9a\x60\x6f\x82\xd7\xf5\x6b\xc3\x68\x04\x3e\x60\xed\xf7\x37\xad\xfd\xf9\xe0\xd4\x7f\x59\xbb\xbd\x07\x58\xb4\xe5\x3b\xb0\xb6\xdf\xd3\x56\x4a\x12\xb0\xcc\xaa\x6d\x6d\xe9\x2e\x59\x88\x45\x21\x17\x81\x1f\x4e\xa4\x70\x23\x23\xf2\x6a\xd5\xc6\x07\x1c\x60\x97\x6a\x18\x28\xf6\x27\x17\xef\x29\x91\xb3\x55\xd4\xf7\x42\x56\x57\xb2\x8a\x1a\x10\x4a\x29\x22\xda\xb4\x49\x33\x61\x00\x58\xd0\x9a\xfa\x41\xfc\xdb\x18\xf6\x6e\xa2\xbc\xfc\x1d\x05\xf7\x52\x9e\xfb\xdb\x5d\x79\x51\x46\x5c\x3a\xaa\x7c\x51\x4f\x34\x36\xea\xd2\xc7\xbd\x70\x83\x56\xea\xf0\xfa\xa7\x9a\x3d\xc2\x77\x4a\x7b\x44\xc9\xeb\xbb\xb5\x8f\xa9\x08\x55\x15\x56\x64\x87\x63\x75\xe8\x24\x40\x6e\xcd\x8b\x20\xc1\x6d\xa9\x2f\x28\xc7\x11\xb2\xd6\xab\xb0\x56\xab\xc2\x9a\xc3\x4d\xd6\xd0\x74\x99\x13\xcb\xa4\x48\x22\xa1\x1e\x7c\x3a\x46\x92\x9b\x5e\xb4\x2d\x65\xde\xf3\x8b\x15\xf9\xd4\x8a\x25\x21\x97\xc1\xf0\xf9\x2a\xce\x03\x7d\x59\x55\xac\xaa\x12\x82\x93\x11\xb6\x20\x57\x5e\x9c\x34\xc0\x70\xd5\x85\x16\xa3\x4b\x2c\xee\x45\x29\x71\xda\x8c\x01\x54\x0b\x31\x42\x28\xbd\x65\x66\x83\x01\x35\xe0\x4b\x9b\xf6\xa4\xc4\x41\x8c\x2b\x91\x38\x3b\x0a\x6d\xeb\x24\x62\x15\xbf\x22\x68\xaf\xa2\x80\x55\x7c\xb2\x2d\xa2\xae\xc0\x79\xc2\xe9\xc2\xbe\x95\x44\xed\x61\x74\x48\x12\xc9\xca\x1c\x11\x0f\xaf\x80\x38\x9b\x02\x99\x89\x54\x60\x3f\xad\x42\xe7\x4f\xe2\xa0\x8e\xaf\xc5\x0a\xb3\x29\xba\xfe\x26\x37\x23\xf3\x22\xac\xd7\x22\xcb\xd3\xd3\x17\x69\x5c\x2a\x48\xe5\xd5\x3f\xac\x91\xb9\x0e\x49\x40\xa2\xbc\x2f\x97\xa8\xd2\x0c\x80\x62\x10\xb7\x92\x4f\xcc\x38\x1e\x60\x05\xcd\x7a\xf5\x75\x41\xb7\x17\x24\x24\x4c\xa6\xfd\x5e\x98\xab\x21\x23\x2a\xcd\x02\xd3\x92\x1a\x6c\x27\xc5\x99\x32\xa3\x2f\x68\x74\x8c\x8a\xa3\xbe\xde\x7b\x3b\xd4\x7d\x56\x65\xbf\x19\x1f\x2d\xf2\x2b\x97\x6e\x89\x2f\xa3\x09\x0e\xb2\xe2\x30\xcc\xc4\xbf\x2f\xc6\x54\x12\x48\x90\x4b\x8d\x1c\x3f\x03\x5a\x6a\x13\xc9\x1a\xe3\x19\x1e\xbf\x7d\x21\x4c\x1b\x45\x00\x62\x2f\x9f\x04\x8d\x57\x79\x8a\x2e\x76\x77\xac\xc8\x13\x77\x4d\x1e\xe6\xb3\x52\x08\x79\xc6\xa4\x03\x0d\x71\x94\x69\x83\xc6\x58\x04\xb3\x35\x9b\x55\x66\x87\xf5\x80\x4b\xbb\xfe\xa1\x0e\xa0\x89\x92\x64\x08\xf3\x89\x30\x97\xa0\x63\xa1\x94\x8c\xa3\xda\x57\x99\x9b\x28\x5a\x34\x92\xe6\x46\xaa\x08\xa0\x66\x35\x48\x7c\x64\x8e\x99\xd8\x61\x25\xf7\x23\x44\x89\x19\xef\xc0\x58\xa2\x54\x0c\x78\x1b\x78\x36\x69\xf8\x8c\xe1\xf9\x82\x61\x23\xc6\x16\xc2\xd0\x1f\x84\xea\xc4\xfc\xa9\xf0\xfe\xb5\x31\xf0\xc8\x06\xba\x4a\x76\xbe\xb9\x4c\x2b\x71\x64\x9f\x4b\xbc\xc5\xf2\xe8\xdd\x32\xd3\x2d\x88\x8b\x49\x33\x7f\xdd\xd2\x07\x88\x34\xbf\x89\xd6\xb9\x48\x52\x50\x82\xca\x3b\x1c\x32\x3c\x49\x9d\xa7\xe0\xad\x19\xbe\x20\xe3\x6c\x5c\xea\xf5\xa9\x7a\x99\x71\x3c\x56\x2e\x9d\x66\x0a\x99\xa0\xcc\x3d\x25\xd6\x56\x52\xa0\x50\x75\x9e\xe2\x00\x0b\x59\xc9\x6a\x94\x5e\x67\x02\xf8\xf4\xc0\xe1\xe4\xc9\x8c\x04\x13\xdb\x28\x5d\xfb\x47\x6b\xc7\x62\xb3\xe1\x4a\x06\xb1\xc1\x0a\x9a\xbe\xc7\xe2\x76\x68\x84\x50\x59\x2b\x7e\x97\x69\x2c\x50\x01\xcd\x0a\xdc\xa8\xef\xd5\x11\xe7\x6f\xe5\xfa\x6b\x25\x07\x23\x38\x59\xc1\x8d\xd3\x2a\x8e\xa7\xa8\xa3\x42\xc2\x0a\x06\x42\x1a\x9c\xf9\xf1\xab\xf7\x61\xd2\x3a\x0a\x74\x78\xb3\xf8\x3d\xe1\x73\x12\x0f\xe9\x08\xdc\x8e\xfd\x18\x6f\x3b\x5e\x88\x2c\xd7\xda\x92\x77\xe0\x8a\x24\x97\x27\x39\x3a\x49\xb5\xca\x0b\x45\x08\xaf\x15\x93\x12\x06\xad\x59\xc8\xaa\x85\x69\xcc\x6c\xad\xa5\xb0\xc0\xaa\x20\x34\x32\x96\x17\xc3\xde\xdd\x75\x1d\x47\xf8\x16\xc8\x2b\x4b\xc5\xfb\x56\x26\xa6\xed\x1c\xd3\x2b\x6c\xdf\x06\x78\xca\xbc\x78\x4c\x31\x56\xd7\x2e\x37\x5b\x75\xd6\x6c\x41\x16\x2d\x74\xb2\x2c\xa2\xd9\xaa\xd3\x66\x0b\x0a\x18\x8f\x41\x99\xe8\xd1\x15\xe7\x13\x36\xbd\xbb\xe3\x6b\xd9\x96\x39\xa3\x74\x94\x0f\x1d\xd8\x25\x5c\x23\xe3\x1c\xc9\x66\x7c\xff\x4d\x12\x97\x31\x0a\x3e\x05\x8d\xe6\x42\x38\x15\x5d\xa4\x28\x3e\xe5\xe3\xee\x6e\x70\x13\xfd\xd0\xdb\xf4\x25\x99\xe6\x3d\x17\xf5\xed\x5c\x56\x8d\xa5\xeb\xe1\xdd\x9d\x5d\x0e\x69\xde\xe3\x05\x00\xa4\xbf\x3e\x56\xba\x5a\xc8\xb2\xb3\xe6\xe2\x2b\x1a\x5d\xdf\x88\xd5\x1e\xca\xa0\xae\x52\xa5\x1e\x1b\x21\x5c\xef\xf7\x3e\xce\xba\xb0\x0a\x61\x56\x28\xfe\x31\x5b\x2e\x84\x5e\x5c\xd4\x62\x44\x31\xe0\x32\xf3\x66\x6d\xbc\xd9\x80\x44\x17\xbc\x85\x1b\x05\x91\x48\x33\x51\x1a\xa4\x4e\x7e\x2c\x2f\x48\xb6\x94\x47\x0a\x06\x50\x7f\xc8\x45\xc0\xe3\x10\x6b\x51\xf1\xa4\x8d\x1a\x6f\xbe\x8a\x52\x97\xa0\x9b\x13\xb5\xa6\x78\x1d\x40\xa8\xd0\x23\x36\x2a\x4c\x4e\xc6\x3a\x7f\x27\xe6\x9a\x9a\x36\xe9\xf9\x83\xf7\xbd\x18\xdc\xfa\x6a\xa1\x8f\x99\x4f\xd9\xab\x05\x0e\xf9\xae\xd2\x2e\xf6\xc0\xd3\x92\x4a\x32\x81\x8b\xc0\x8c\x18\x47\x22\x80\xba\x04\x2e\x04\x4d\xcf\xbb\x75\x2b\xa6\x24\x24\xf1\x4c\x34\x03\x62\x79\x28\xb2\x26\xca\x14\xe4\xf2\x49\x90\xe4\xc9\x48\x51\xe2\x76\x50\x6c\x58\x0f\x3e\x60\x10\x3e\x05\x56\x23\x13\xab\xcf\x78\xc5\xf7\xa3\x55\xa1\x4b\x36\xb3\x0c\x5f\x51\x06\x51\xb2\x64\x28\x3a\xb8\x01\x4f\x91\x81\xa7\x24\x4b\x39\xa2\xa4\x12\xe0\xcf\x80\x28\xc5\xbb\x1f\x88\x28\xd9\xcc\x42\x44\xe5\xf1\xa4\x17\x85\x07\x63\x49\x85\x4b\xd9\x80\xa5\x8d\x72\xb0\x8a\x35\x58\x1c\x72\xe0\x9e\xd5\xa2\x6c\xad\xa0\x99\xf8\xa4\x59\xd7\xbc\x0d\x81\xc6\xf2\x6b\x45\x72\x00\x20\x1c\xe2\x6d\xbd\xfd\xc9\x0c\xad\xbc\xd1\x6d\x3b\x5a\x3f\x5c\x49\x2e\x64\xf3\xf3\xd7\xac\x3d\x12\x1e\xbc\x8f\x2a\x50\x5c\x1d\x72\x13\x2d\x2b\xd3\x88\x5e\x61\x61\xc8\xac\xaf\xd1\xaa\x10\x36\xb0\x54\xd9\x43\x3c\x12\xee\x4d\x05\x91\xb0\x93\x4a\x92\x2a\x74\xe1\x2c\x52\x37\xbd\x89\x63\x15\x75\xf9\x44\x65\x8e\xd9\x2c\x9a\x34\x52\xc2\x5b\x27\xba\x64\x43\x75\xbb\x4a\xc4\xa6\x87\xf8\x44\x33\x9b\x37\xd4\x26\x4a\xdf\xf5\xa9\xd7\x53\x79\x13\x3b\xb5\xad\x48\x70\xaf\x6d\x47\x5f\x8b\x4e\x6d\x6b\xaa\xb8\x86\xbc\x9f\x9c\xda\xd6\x58\x13\x71\x11\xe1\x15\x8a\x28\xc5\xf4\x97\x05\xfa\x13\xdc\x07\xad\xe9\x93\x23\x3c\x59\xf2\x65\xe4\x40\x7d\x43\x80\x67\x2d\xc3\x8c\x62\xc3\x82\x3a\x5a\x7c\xee\x83\x77\x2b\x2c\xde\x5f\xca\xa0\x56\x52\xf0\xc8\x6d\xb0\xbd\x6d\x17\x26\xcb\x99\x47\x24\x76\xf5\xcd\x3e\x46\x66\x6b\x04\x60\xca\xa0\x39\xa0\xc0\x79\x31\x64\x56\x7f\x30\xf1\x6e\x95\x04\xf0\x26\xc6\xb4\xa4\x15\x0e\x4c\xb9\x9a\x1e\x40\x5e\xb8\x3a\xe5\x25\xe1\x95\x77\x4b\xe2\x6f\x22\xfa\x96\x3f\x6e\x3b\x90\xc4\xaf\x54\xfa\xb6\x03\xd3\xa5\x90\x63\x50\x0c\x4e\x1a\x57\x39\xab\xf6\xd3\xa1\xa0\xcc\xc0\xba\x56\x16\x9d\x7c\xfd\x53\xab\x64\xb2\xcd\x55\x45\xe5\x10\xdc\x30\x3b\xae\xb7\xb4\xd9\xa2\xf3\x63\x05\x56\x6a\x75\x2d\xea\xd2\x33\xfd\x21\xe9\xd3\x33\xb9\x10\x7f\xb2\x4e\x25\xe5\x7d\xfa\x5e\xa9\x21\x5b\xeb\xd4\x13\x95\x2e\x5e\xd6\x86\xdd\x58\x74\x0a\xaf\x46\x28\xa8\x0a\x26\xab\xce\x6f\xd2\x11\xbe\x1d\x32\x96\x39\xc1\x2d\x10\x86\xd1\x6a\xcd\x4e\xcf\x2c\x6a\x6d\xa3\x92\xdb\xef\x16\x6c\x76\xab\x55\x9b\x0d\xe9\x48\xec\x57\x8d\x90\x0a\x24\xb3\x26\x99\xb1\xee\x74\x89\xfb\x34\xbd\xff\x8c\xd6\x6a\x80\xf7\x6b\xc8\x8b\x1a\x29\xf5\x7c\xe1\x05\x13\x19\x56\x48\xfd\xf1\x5b\x3c\xa9\xcf\xfd\x45\x5c\xf7\xc3\x49\x3d\xc6\xcc\x88\xcf\x31\xf7\xf3\x9a\x88\xcd\xf0\x7c\x71\xfe\xf4\xdc\xf1\x4c\x56\xfa\x0d\xf6\xdf\xbe\xf4\x17\x28\x49\xe0\x2f\x99\x23\x36\x9a\x1c\xb1\xbd\xf4\x17\xb7\x42\x91\x9c\xd9\x39\x8d\xa3\x30\x5e\xce\xf1\x97\xf8\x06\xa8\x28\xff\x00\x4a\x85\xaa\x84\x5d\xcd\xfc\xf8\xc1\x59\x24\xec\x0a\x87\x8c\x12\x1c\xdb\x45\xb9\x9e\x44\x41\x80\xc7\x52\x39\x2a\xa5\x04\x99\x35\xc9\xb3\x7a\x8b\x6f\x3e\x2c\xab\xcc\xb0\x12\xf8\xf9\xb0\x9c\x3a\xcb\x4a\xdb\x8d\x60\x15\xb4\xf8\x9e\x7c\x29\xf8\x8a\x8b\x26\x31\xf9\x05\x7f\x50\xbd\x3c\xc3\x2a\x56\xd7\xaf\x65\xf6\xb1\x84\xb2\x9b\x0c\x62\xd3\xe4\xd2\xc2\x54\x39\x2b\x19\xae\x25\x37\x58\x1f\x53\x62\x52\xd0\x4a\x04\x12\x4c\x25\xe6\x6c\xef\x45\xad\xe8\xb0\xa8\x1a\x0a\x1e\x52\x8f\x2a\x7d\xb5\x12\x0a\x2f\x83\x82\x29\x4c\xef\xfd\x95\x31\x5a\x4f\x6f\xe6\x97\x51\xa0\x0f\x4d\x68\x7a\xec\x36\x94\x5f\x1a\x84\xc9\x90\xbb\xa3\x92\xd9\x64\x64\x81\xb9\x2c\x50\x4c\x8b\x87\x8d\x1f\xe6\x02\x7b\xfe\xf0\x5a\xcd\xc2\x3f\xd1\xec\x7a\x18\xdd\x7c\x1c\x6d\xe4\xc7\x7f\xb5\xc6\x69\xc2\x0f\x60\x95\x31\xce\x9b\xf4\xfc\x99\x59\xe5\x29\x66\x29\xab\xe4\x2f\x25\xac\xf2\x14\xb3\xdb\xff\x9f\xef\xfd\x46\x7c\xcf\x9f\x4c\x3e\x01\x8f\x92\xa5\xfc\x3d\xe1\x79\x9c\x14\xff\x0a\x79\xde\x47\x4e\x93\x87\x10\xc0\xc7\x0c\xf2\x66\xe6\xc5\x71\xfc\x21\xcc\x4b\x30\xa3\xdf\x2e\x02\xad\x3c\x0b\x3c\xf3\xaf\x0a\x6e\x06\xe4\x1b\x5c\xaa\x2e\x94\x57\xa8\x44\x63\xbe\x25\x56\x5d\x46\x13\xfd\x92\x0e\x16\xc2\xeb\x03\x88\x14\x14\xaf\x25\xf9\xcc\x5f\x14\xdb\x2b\xba\x44\x27\xb9\x61\x16\x46\x28\x39\x47\x57\x02\x35\xf4\x51\x74\xd0\x1e\x30\x4f\x9d\x00\x86\x83\x50\xdf\xe0\x27\x55\x3f\xba\xeb\x4f\xb1\x8c\x53\x1b\xa9\xab\xd0\xc5\x9d\x3c\x56\x24\x40\xd3\xb8\xeb\xaf\xf1\x94\x37\xb4\x5a\x2d\x88\xc9\xae\xbe\x35\x26\x78\x1c\x51\x9f\x61\xe0\xa3\x7c\x52\xd2\xde\x2d\x61\x65\xa4\x77\x00\xc2\x1e\x4a\x34\xb7\xee\xee\xc7\x87\xc8\xd9\x8f\xeb\x75\x60\x13\x84\x87\xf1\x88\xef\x2b\x7c\x64\xf3\x5e\x10\xdb\x07\x5e\x74\xc8\x1f\x78\x31\x3e\xf0\xc4\x03\x00\x77\x77\x7e\xba\xc9\x39\x6c\x57\xab\x7e\xb5\x5a\x3c\xc0\x32\x1f\xf4\x57\x7a\x01\x11\xa7\x18\x64\x5c\x49\x51\x2d\xcf\xc0\x2f\x2e\x98\x7f\x75\x21\xc6\xff\xe2\x62\xa5\x80\xf4\xd0\x14\x80\xa8\x01\x5a\xad\x98\x3d\x54\x67\x25\x8a\x5a\x47\xd0\x9c\xd4\x56\x26\x97\xa5\x38\x08\x50\x37\x38\x84\x88\x1a\x83\xbe\x95\xa1\x80\x50\xc1\x88\x3b\x08\x54\x43\xb6\x0c\x72\x21\xea\x7b\x84\x6e\x65\x00\x61\x1f\x61\x74\x78\x3b\xb6\x31\x8c\xc0\x6a\xab\x88\xd8\xfc\x2d\x19\x17\x82\xc3\x4d\x12\xb8\x3c\x99\xc6\x29\x9b\x13\x3d\xab\x56\xed\xc2\xc2\x78\x31\xe6\x35\xc5\xd6\x70\x24\xec\xd4\xd6\xca\x4b\x01\xe5\x3d\x61\x7a\x74\x9e\xcc\xfc\xf0\x0a\xeb\x9c\x1a\x27\x81\xd0\x1e\x29\x61\x26\xdd\x97\x2e\xa5\xa8\xc1\x3b\x10\xa2\x40\x09\x67\x5b\x89\xe1\x78\x28\xaf\x63\xc3\xef\xf9\x26\x0a\x06\x4a\xac\x0a\x81\x8c\xeb\x4c\x50\x28\x72\xa4\xc7\x6b\x49\x46\x22\x2e\x5b\x13\xf3\x19\x86\x22\x1b\x83\x04\x00\x48\xd2\x2d\xed\x58\x56\x1d\xda\xb2\x0d\xc6\x66\x77\x22\xbf\x90\xe4\xcb\xfd\xdc\x4b\x58\xd5\x7f\x90\xcc\x25\xb6\xb3\x0f\x11\xe4\x3e\xb9\x79\x68\x69\x86\x74\x23\x60\xc1\x5b\x1c\x2e\xe7\x58\x98\x00\x7b\xdb\x0e\xbc\xc2\xcc\x2b\xb2\xdc\x49\xb3\xac\x1e\x50\xb2\x1a\xfe\x0f\x2d\x5d\x65\x7b\x48\x0d\xa7\x5c\xf2\x7d\x50\xe9\xd4\x90\x01\x1e\xda\xf6\x8f\x28\x5d\x65\x93\xc7\x0d\x82\xf1\x5f\x5c\x60\x3e\x6b\x2e\xfc\x25\x8b\x2e\xc8\x9c\x93\xcb\xc5\x45\xf6\x46\x5f\x4d\x88\x9c\xb4\xd3\x7b\xf7\xa0\x0f\x63\xc4\x86\xce\x08\x06\x88\x0d\xdd\x11\x5c\x22\x36\x6c\x8d\xe0\x04\x39\x70\x86\x86\xa3\xfd\xc9\x81\x5e\x30\xf6\x27\xb5\x1a\xf0\x51\x3c\x9c\x8c\x74\xc7\xd2\x3b\x60\xb3\x3a\x1f\x79\x6d\x17\x81\x3e\xa8\x56\xc9\xd0\x1f\x55\xab\x33\x69\xa5\xc0\x5f\x86\xce\x08\x40\xfe\x80\x1c\x79\x53\x69\x85\x84\x95\x00\x3c\xa8\xc8\x00\x86\xc2\x63\x68\x18\x8e\x50\x30\x0c\x47\xf2\xae\xd3\x71\xb5\x3a\xb6\x19\xd8\x9f\xe9\x96\x82\x59\x23\x9e\x91\x29\xb3\x0d\xdb\x3b\x79\x59\xb3\xb2\x2c\x8b\xe0\xf2\xee\x6e\x38\x02\x90\x4b\x6f\xc6\x69\x8a\x71\x3d\x3f\x64\xc8\xd9\x67\x07\xc9\x5d\xac\xac\x56\x33\x34\x53\x28\x1a\xb2\x11\x14\xb1\x43\x63\xe4\xee\xc7\x07\xda\xf7\x64\x3f\xd6\xf7\xf4\x07\x88\x0e\xe3\xd1\x16\x67\x8e\x64\x18\x8c\x04\xd7\xd9\x76\xc1\x8a\xf3\x9f\x48\xdf\x00\xc8\xea\x75\xe8\x02\x88\x91\x6f\xfb\x8d\x18\x51\x8e\x9c\xe4\x30\x02\xaf\xa4\x99\xc9\xed\x0a\x12\x74\xeb\x78\xce\x0a\x46\xc2\xc2\x24\x0d\x4a\x2a\x43\xb4\x86\x43\x36\x4a\xae\xc5\x1f\xb2\x51\x43\x71\x0c\xa5\xc8\xe3\x49\xe8\x96\x78\x0c\x06\xde\xb6\x0b\xd5\x47\xef\x76\x95\x46\x22\xe5\x99\x04\x86\xa9\xce\x2b\x2e\x81\xd5\xcf\xbe\x70\xae\xe1\xbd\x4d\xd2\x56\x7e\x63\x8e\x30\xf4\x1b\x63\x14\x42\xbf\x31\x59\xbb\xbf\xcf\x6f\x44\x82\xd5\xdd\xdd\x95\x4d\x03\x56\x44\xf7\x74\x05\x56\xd0\x6f\x50\x94\x15\xd0\x42\x99\x7b\x62\x6d\x67\x25\xea\x6a\x55\x09\xc3\xda\x5a\xfa\xcc\xbf\x2a\x5b\xe2\x13\xc1\xd9\x80\xd5\x5c\xcc\x52\x5c\x6d\xd3\xac\x2d\x61\x7e\xbc\xb9\x2c\x77\xd0\x46\xa6\xb6\x5b\x65\x22\xaa\xa7\x6f\x63\x00\xe0\x6e\x35\xb9\x43\x40\xdc\xf6\xda\xe1\x5f\xd7\xa4\x28\x5c\xad\xf2\xff\x1a\x69\x4d\x69\x26\x39\x96\xaa\x71\xca\xa0\x52\xf8\x59\xf2\xe2\xfc\x06\xb5\x69\x59\xd3\x29\xb4\x94\x26\x77\x8d\xd3\xc8\x5e\xe0\x15\x80\x2d\xd1\x20\xe5\x69\x9b\x20\x19\x83\x84\x55\x48\xf5\xae\xdf\x98\xd8\x14\x86\xb0\xe0\x68\x9f\x13\xd1\xaa\x71\x49\xc2\x89\x8a\xf3\x69\x5e\xde\x0d\xfd\x46\x91\xbd\x54\xae\xb7\x83\x75\xae\x97\x1c\x1e\xad\x0a\x58\x22\x4e\x28\x98\xb7\x8b\x41\xcb\xb7\x20\x03\x90\xf1\xea\x4a\xce\x3e\x1f\xc4\x67\xd4\x7d\xb6\x8d\x05\xb2\x2c\x15\x40\x57\x99\x29\xbd\xc7\x97\x0b\x7f\xfc\xf6\xf7\x71\x14\x2e\x0a\x98\xee\x03\xc1\xc4\x8d\xa3\x01\x8a\x25\x4f\x12\x28\x8b\xc1\x96\x7c\x45\x0c\xc6\x28\xb9\xe2\x3f\x31\x27\x5b\x22\x67\x7f\x99\x32\xe3\x65\xad\x06\x98\x1d\x0f\x97\x23\xb9\x02\x8c\x51\x90\xe5\x74\xf6\xb0\xdb\x87\x2d\xc5\xe2\xec\xdb\xd6\x9e\xb7\x1e\x36\xf9\x02\xfb\xe4\x82\x22\xe5\xb2\x04\xcd\xd4\x09\x92\x44\xb4\x82\xdd\xbe\xb7\x16\x22\xd6\x6e\xed\x71\xf9\x4d\xb1\x02\x44\xed\xee\x2e\x58\xc1\xee\xee\x1a\xa4\x5c\x64\x08\x8c\xb6\x8a\xa6\xb0\xb6\x3a\xac\x56\xf9\xf6\x16\xd9\x61\x89\x1d\xe2\x51\x10\xa4\xb7\x65\x80\x61\x98\xec\x09\x46\x8d\x98\x8e\xd3\xdb\x0d\xcf\x9b\xc3\x1f\x9a\xa3\x9d\xcf\x9a\xd0\x6a\x5a\xc0\x6c\xa1\x4d\x90\xec\x16\x8c\xe4\x03\xd5\xbd\x15\x83\x73\xb4\x64\xd1\x73\x31\x34\x4f\x6f\x42\x7f\x4e\xc6\x45\x37\x5b\xbb\x08\xad\xed\xa2\x06\x91\x6d\xc9\x82\x6f\xc2\x0b\xab\x86\x81\x67\x24\x30\x91\x62\x17\xde\x97\xbe\x7e\xa1\x2a\x58\x41\x62\x5b\x7f\x7b\x2d\x8e\x78\x9a\xd3\x78\x6e\xc1\xe1\xa8\xc8\x37\x8a\xda\xdd\x3d\x71\xde\x4b\x6c\xcb\x77\xdd\x9b\xba\x8c\x8a\x5a\x0e\xde\x73\x34\xf8\xa5\x1f\xe3\x5e\xa7\xfe\x53\xbc\x01\xd8\xd5\xc0\xe3\x80\x2c\x2e\x23\x9f\x4e\x36\x00\xb7\x34\xf0\xa4\x5d\xf7\x79\x3f\x37\x34\xda\x00\x8d\x65\x14\xe5\x32\x50\xb7\xe5\xe6\x81\xeb\xe3\x19\x8d\xe6\x7c\xaf\xb5\x29\x5b\xa6\x0e\xac\xb6\x15\x9b\x32\xb4\xcd\x0c\x33\x7f\xb1\xb1\x51\x69\x67\xfd\x9b\x8d\x28\x6c\x67\x00\x9b\x8b\x60\x79\x45\xc2\x26\xef\x46\x38\xf1\xe9\x86\x8c\x9d\x24\x23\xc6\x0b\x61\x79\xb9\x01\x38\xe9\xec\xd4\x8f\x59\x9d\xe7\xa8\xe3\x9f\x97\x7e\xb0\x21\x4b\x2f\x93\x65\x8e\xe7\x91\xf0\x59\x2c\x83\x6f\xed\x26\xf0\x81\xcf\x36\x94\xdb\xd7\x70\x24\x64\x98\xc6\x12\xef\xf5\xe8\x52\x46\x87\xab\xfb\x93\x39\xd9\x30\x0c\xbd\x5d\x23\x7b\x50\x57\x77\x53\x4d\x23\x3a\xdf\x54\xa9\xdb\xea\x95\x67\xab\x8b\xb8\x83\x1b\x50\xdd\x4a\x9a\x3c\x0f\xf1\x3c\x0a\x49\xcc\x9a\xf3\x65\xc0\x48\x5d\x9e\x09\x96\x35\x75\x6f\x3d\x9b\xd4\x8c\x97\x64\xe8\x27\x44\x13\x5e\x51\x7f\x31\x6b\x88\xdf\x0d\xf0\x09\xed\xc8\x7b\x27\x27\x49\x54\x8c\xd2\x1c\x09\x1d\x2c\x28\x66\xec\xa6\x3e\xdf\x40\x9a\xfd\x04\x67\xd4\x9f\xd6\x17\x51\xb4\x81\x5a\xfa\xc9\xb0\x30\xb2\x58\xdc\x34\x36\x91\xbc\xdb\x4a\x48\x57\x85\x12\xc4\x93\xfa\x58\xec\xda\x37\xa3\x47\xe2\x53\xec\xb1\x89\x6d\xbd\xf7\x6f\xa6\x2a\x42\x4d\x49\x86\x5d\x47\x3a\x27\xac\xc0\xbe\xfd\xc9\x97\x64\xa0\x56\x4e\xbe\x03\x1a\x6e\xdc\x20\x53\x29\x6e\x5c\x16\x3a\xaf\x12\xe9\x8c\xae\x05\x92\x22\x6b\x49\x03\x62\x5c\x08\xe1\xf3\xad\xdd\xd6\x7e\x73\x67\xbb\xb2\xf3\x29\xff\x6d\x3d\x89\x16\x37\x94\x5c\xcd\x58\xc5\x1e\x83\xca\x4b\x32\xa6\x51\x1c\x4d\x59\xe5\x49\x44\x17\x91\xba\x12\x6f\x6b\xeb\x2b\x4c\x85\x47\x3c\xdf\x30\x46\x95\x65\x8c\x61\x65\x1c\x2d\x6e\x60\x65\x1e\x4d\xc8\xf4\x06\x56\xfc\x70\xd2\x8c\x68\x65\x42\x38\x46\x2e\x97\x4c\xdd\xcb\xc7\x8b\x7a\xef\x53\xa1\xc1\xab\xf8\xe1\xcd\xd6\x62\x49\x17\x51\x8c\x65\x18\xc9\x88\x8a\xbf\xd1\x92\x55\xa6\x18\x57\x48\x5c\x99\x61\x8a\x2f\x6f\x2a\xea\x96\x83\xc6\xd6\xd6\xd9\x17\xc7\x95\xd3\x57\xcf\xce\xbe\x39\x7a\x7d\x5c\x79\x7e\x5a\xf9\xea\xf5\xab\xaf\x9f\x3f\x3d\x7e\x5a\xb1\x8e\x4e\x2b\xcf\x4f\xad\xca\xd1\xc9\xd3\x0a\x07\x3a\x7a\x73\xf6\xc5\xab\xd7\x95\xa7\xcf\x4f\x9f\xbc\x38\x7a\xfe\xf2\xb4\x72\xf4\xe2\x45\xe5\x9b\xa3\xd7\xaf\x8f\x4e\xce\x9e\x1f\x9f\x56\xbe\x79\x7e\xf6\xc5\xd6\xeb\xe3\xcf\x8f\x5e\x3f\xad\x9c\xbd\xaa\x9c\x7d\xf1\xfc\xd4\x28\xf8\xe4\xc9\x8b\x37\x4f\x9f\x9f\x7c\x2e\x72\x3d\x7f\xf9\xd5\x8b\xe7\xc7\x4f\xcd\xdc\xaf\x9e\x55\x5e\x1e\xbf\x7e\xf2\xc5\xd1\xc9\xd9\xd1\xe3\xe7\x2f\x9e\x9f\x7d\xb7\xc5\x2b\x7e\xf6\xfc\xec\xe4\xf8\xf4\xb4\x51\x79\x7e\x52\x39\x79\x55\x39\xfe\xfa\xf8\xe4\xac\x72\xfa\x05\x2f\xc4\x68\xd3\xe3\xe3\xca\x8b\xe7\x47\x8f\x5f\x1c\x57\x9e\xbd\x7a\x5d\x39\x3a\xf9\xae\x72\xfa\xd5\xf1\x93\xe7\x47\x2f\x60\xe5\xe9\xf3\xd7\xc7\x4f\xce\xe0\xd6\xf3\x13\xf5\x54\x79\xf5\xba\xf2\xe4\xd5\xc9\xe9\xf1\x1f\xde\x1c\x9f\x9c\x3d\x3f\x7a\x51\x79\x7a\xf4\xf2\xe8\x73\xde\x04\x99\x55\xbf\x7e\xf3\xc5\xd1\xd9\xe9\xab\xe3\xaf\x8f\x5f\x57\x5e\x1f\x9f\xbe\x79\x71\xc6\x5b\xff\xec\xf5\xab\x97\x5b\x2f\x5e\x9d\x8a\x06\xbf\x39\x3d\x86\x95\xa7\x47\x67\x47\x3c\xeb\x57\xaf\x5f\x3d\x7b\x7e\x76\x0a\x2b\xdf\x7c\x71\x7c\xf6\xc5\xf1\x6b\xde\xe2\xa3\x93\xca\xd1\x93\xb3\xe7\xaf\x4e\x38\xf4\x93\x57\x27\x67\xaf\x8f\x78\x0b\x4e\x8e\x3f\x7f\xf1\xfc\xf3\xe3\x93\x27\xc7\x95\x57\xaf\xb7\x5e\x09\xe8\xb3\x57\xaf\xcf\x9e\xbf\x7a\x73\xaa\x32\xc0\xca\xd1\xeb\xe7\xa7\xbc\xc6\x57\x6f\xce\x78\xee\x57\xa2\xc0\x27\xaf\x4e\x4e\x8e\x65\x89\x1c\xdd\x02\x07\x6f\x4e\x45\x31\x5f\x1d\xbf\x7e\xf6\xea\xf5\xcb\x23\x51\xea\xb3\x2c\xfa\x1b\x5b\x9f\x94\xa4\x2b\x3b\xcd\xad\xbc\x3f\x86\x71\xf1\x7b\xa2\xd6\x8e\x31\xfb\x4a\x0b\x61\xaf\xa6\x77\x77\xb7\x17\x17\x42\x28\xbb\xb8\xf0\x86\xa3\x95\xbe\x74\x39\x9a\x56\x84\xc0\x56\xad\x66\x4b\xe3\xdb\x14\x05\x8e\xd8\xea\xee\x2e\xfb\x35\x63\x04\xc3\x1e\xa6\xcc\xe0\x5c\x45\x28\x33\xe8\x48\xdc\xd6\x0e\x56\x40\x6e\x3c\xb6\xf2\x26\x32\x64\x6a\xa7\x6a\xf5\x44\x7a\x66\xd5\x2a\xdf\x67\x6d\x23\x64\x5e\x30\x7f\x76\xb3\xc0\xca\x66\x52\xf8\xdf\x26\x87\x3c\x62\xab\x57\xb1\x6a\xca\xa9\x98\x81\x9a\xc5\x67\x60\x28\xfc\x78\x0d\x37\x6d\x3e\x4b\x79\xb9\x16\xd8\xca\x68\x46\x84\xb1\x8d\x79\x7f\x3e\x5e\xc9\xce\x43\x9c\x76\x14\xa9\xd3\x04\x36\xc8\x6e\x54\x19\xf0\xcc\x13\x2c\x64\xe0\x06\x0a\x8d\xaa\xbc\x62\x33\x5a\x3f\x40\xb1\x23\x3d\x7e\x32\x1e\xb0\x89\xf9\x14\xef\x0c\x52\xe4\xc2\x70\x4d\x3e\xdf\xa7\x07\xa1\x30\x1d\xd2\x80\x44\x0c\x50\x0a\xc7\xf1\xfe\xc0\xd1\x22\x72\xb4\x08\x1f\x2d\x32\x32\x83\xe4\x17\xfb\x2b\xae\x4c\x45\x4d\x96\x4a\x90\x03\x43\xa4\x4d\x9b\x20\x49\x4e\x39\x74\x73\x21\xa9\xd5\x80\xaa\x8a\x8e\xd2\x9a\x32\x48\x85\x99\xb7\x15\xdc\x70\xd2\xce\x1a\x7e\x89\x25\xf0\x01\x1b\xd4\x5d\x0f\x1f\xb2\x01\xff\x45\x6c\xe0\x78\x27\xfe\xc9\x2a\x5b\xda\xda\xf2\xa7\xb6\x75\xb9\xbb\x89\x92\x1d\xbb\x18\x62\x84\xc2\x46\x20\x8e\x28\x83\xdc\x35\x3a\xeb\x70\x1a\x69\x29\x60\x5c\x0c\x18\x2e\xf9\xc2\x9d\x82\x05\xc5\x60\x5c\xfe\x58\x99\x07\x02\x45\x40\x8c\xcc\x71\x46\x75\x5f\x04\x24\x77\x11\x19\x3d\x7e\x11\xd8\x22\x58\x66\xfa\x39\x2b\x01\x8b\x96\xe1\x24\x85\x9a\x96\x34\xcc\xbf\x4a\x61\x16\x29\xcc\xb6\xbd\x8d\xef\xee\xb4\xd2\x28\xd5\xd1\xdc\xdd\xc9\xcc\x22\x16\x8f\xc4\x90\xa1\xd5\x9c\x7f\x60\x01\x1c\x77\x67\x64\x8e\x8d\x22\xde\xa5\x45\xdc\x8a\x0b\x57\x92\x91\x4d\x14\x48\x29\xf0\x95\x49\x60\x1a\x5c\xb6\x4a\x43\xc3\x98\xdd\x04\xd8\x63\xab\xd5\x46\x39\x2a\xbc\x57\x8e\x32\x25\xad\xd9\xbd\x92\x56\x71\x84\x30\xdf\x80\x28\x0e\x46\x12\x1b\x10\xd3\x42\x88\xc0\x80\x88\x0a\x21\x96\x06\xc4\xbc\x10\x62\x6c\x40\xbc\x2d\x84\x98\x18\x10\x41\x21\xc4\xcc\x80\x08\x0b\x21\xa6\x06\xc4\x4f\x85\x10\x0b\x03\xe2\xaa\x10\x62\x7e\xaf\xf4\xfa\xce\x80\x28\x8e\xf0\x76\xc5\x21\x4c\x4e\x8e\x87\x58\x13\x15\x72\x46\xc8\x52\xcf\x16\xe4\x1f\x34\x7f\x40\xee\x08\x59\xfa\x45\x7e\x92\x94\x85\x5a\x23\x64\xc9\x47\x99\xcc\xa9\x18\xb5\x47\xc8\x9a\xc8\x68\x6a\x43\x2c\xe6\x3b\xea\x8c\x90\xc5\x1f\x64\x92\x9c\xdd\xa8\x3b\x42\x96\x7c\x94\xc9\x72\x36\xa3\xde\x08\x59\xf2\x51\x25\xf3\xd9\x8b\xfa\x3c\x95\x3f\xa9\x52\xfd\x2b\xb4\xcb\x0b\xf5\xaf\xac\x95\x1d\xde\xdd\xd9\x21\xba\x2d\xea\x9c\x6a\xa8\x53\xd0\x50\x3e\xdd\x44\xd7\xf4\x8b\xb5\xb2\xc9\xdd\x9d\x4d\x44\x49\x2b\x08\x37\x73\x63\xda\xa0\x36\x4b\xf0\x7d\x49\x62\xd1\x91\x42\x3f\x6f\x93\x84\x24\xe0\x6b\xbe\x17\x28\x81\x1e\xaf\x41\xbf\xc0\xd3\x32\xe0\xcb\x35\xe0\x27\x38\x64\xbc\x9b\xc5\x1e\xe7\xe6\xe4\x8e\xc7\x58\x05\x1d\x2a\x9a\xe4\x19\x58\x59\x74\x54\x5c\x6c\x94\x01\x15\x21\xa9\xef\x9d\xf3\x7c\x03\x14\xdf\x3b\x23\xc7\xcb\x79\xbc\x2c\x9e\xb8\x26\x4e\x27\x78\x63\x57\x66\x19\xd0\x77\x44\x6d\xed\xef\x99\x85\x42\x82\x2b\xee\x88\x39\x15\x8f\x26\x93\x12\x6c\x9b\xd3\x71\x5a\xd6\x8d\x2b\x13\x68\x43\x77\xcd\x71\xbe\xa2\xd1\x72\x51\x08\x75\x96\x87\x2a\x46\xf1\x4b\x93\xf9\xca\xf3\xee\x02\xa8\x27\x79\x28\x5c\x5c\xda\x5b\x03\x8e\x46\x41\x50\xd2\xb6\xaf\xd6\xc0\x8a\x8b\x3b\xca\xf7\xe1\x34\xa2\xc5\xc3\xf0\x3c\x43\xa0\xc5\x23\xfa\xb5\xb9\x56\x91\x98\x45\x57\xd4\x2f\xc6\xb0\x09\xc9\x66\x14\xc7\xb3\x28\x98\x3c\xa3\x18\x4f\xe6\x7e\xf8\x94\xf8\xe3\x28\x24\xc5\x2d\xfe\xa6\x28\xe7\xe9\x38\x62\xc5\xcd\xfe\xac\x10\x9c\x2d\xe9\x55\x09\x82\xbf\x30\x57\x31\xbf\x78\xb0\x3e\xcf\xcc\xc1\xb9\x7f\xfd\xbc\x74\x5c\xbf\x33\x01\xb1\x5f\x8c\xb7\x2f\x33\x40\x13\x52\x02\xf6\x87\x0c\x98\xd0\x9c\x16\x40\xfd\xde\x84\x2a\x19\xa8\x6f\xb3\x1d\x20\x61\x79\x07\xbe\x37\xd7\x5b\x32\x2e\xae\xf3\xb1\x01\xb4\xf0\x09\x2d\x46\x2d\xc6\x26\x18\xa6\xf3\x65\x49\x44\xd3\xa7\x06\xdc\xcf\x4b\x3f\x64\x24\x28\x06\xfc\x39\xd3\x0f\x0d\xca\x69\x18\x17\xaf\xc9\x3f\x67\x78\xf8\xcf\x4b\x32\x7e\xab\x57\xc5\x22\x5d\x1c\xce\x94\x4f\xfd\xb0\x04\xe7\x61\x16\x30\xc0\x7e\x5c\x5c\x22\xc1\x79\xb0\x72\xcc\x47\x38\x33\x39\xf9\x0e\xa8\xa4\x54\xbf\x08\xb2\xbc\xe0\xd8\x04\x8f\xc7\x25\xd4\x16\x64\xa0\x66\xcb\xe9\xb4\x64\x10\x96\x05\x80\xc5\x4c\x7a\x9c\x81\x2c\x5b\x6b\x4c\x20\xc6\x07\xa8\x10\xec\x4d\x06\xe3\x1c\xee\x79\x38\xa6\x78\x5e\xb6\x8c\xbc\xc9\x8c\x3c\x87\x3f\x65\xb8\x98\x79\xbe\xc9\x48\x05\xc2\xf9\x66\x21\xfc\x62\x8b\x96\x3b\xb3\xb5\xef\x7c\x4a\xfc\xb0\x64\x8e\x98\x62\xe9\x2f\xa4\xb8\xe6\x85\x59\x1a\x7e\x87\xe9\x4d\xf1\x92\x98\xc1\x63\x54\x7c\xc7\x75\xe5\x9d\x09\x35\x25\x41\x99\xa0\x72\x85\x33\xcc\xac\xb8\x65\x97\x26\x10\xc5\x93\x65\x49\x2f\x6f\xb2\x70\xef\x30\x2d\x41\xdc\x45\xb6\x0f\x25\xab\xce\x89\x29\x4d\x90\xe9\x14\x53\x5c\x86\xdf\xf7\x38\x03\x1b\xff\x14\x91\x12\x52\x38\xc6\x99\xc5\x36\x3d\xce\x29\x84\x7e\x95\x25\xda\x4b\xa1\xec\x2f\x12\x07\xb2\x70\x0b\x5e\x6a\x31\xe4\xa9\x09\xb9\x0c\xcb\x2a\x7e\x69\x82\x3d\xe7\xcd\x0c\x5f\x96\x8c\xce\xcd\x1a\xe4\x69\x49\xdd\x17\xda\x9e\x2a\x44\xd4\x76\x5d\x00\x09\xff\x0b\x60\xc4\xff\xec\x82\x35\x7d\x4e\x80\x59\x85\x22\x67\x8b\x4c\xed\xc4\x4a\x90\x09\x55\x93\x30\x3e\xac\x08\x03\x0a\xa9\xa3\x93\x56\x87\xb5\x10\x1c\xf2\xc7\x5a\x8d\x0a\x43\x57\x65\xa4\x58\x77\xb7\x74\x26\x62\x66\xb2\x09\x62\x36\x81\xb5\x5a\x08\x31\x00\xc2\xfc\xb0\x46\xc0\x21\x22\xa2\x04\x6d\x26\x44\x8b\xb5\x26\xce\x9d\xd6\x2a\x15\xaa\x4b\xb6\x6d\x7c\xe8\x80\x42\x25\x49\x91\x82\xc0\x92\x45\x59\x24\xac\xe0\x01\xf6\xe4\x99\xf6\x94\x46\x73\xdb\x54\x14\x8c\xed\x46\xa3\x81\x81\x8c\xfa\x58\x61\xa8\xc0\x18\x58\xec\xf3\xf4\xf1\xbd\xa9\x64\x4d\x1a\xce\xd0\x21\xe6\xe5\x30\xb0\xb2\xf9\xa6\x6b\x61\xf3\xf1\x43\x36\x46\xb8\x31\xf7\x17\xf6\x12\x00\xf1\x37\x06\xf2\x9a\x6b\x55\x98\xba\xd1\x5a\xb4\xcc\x0e\x6b\x2e\x68\x4c\x49\x10\xd8\x0e\x90\x46\x53\x64\x6a\x87\x07\xce\xdd\x1d\x6d\x70\x9e\x60\x07\x40\x5b\xd6\x44\x02\xf7\xfb\xfb\xe0\x56\x19\x4e\x10\x51\xba\x50\xcf\xa2\x43\x3c\xa4\xa3\x21\x1b\x29\xeb\x50\x1f\x85\x12\xba\x56\x13\x16\x6c\x08\xd1\xa1\x3f\xda\x17\x1a\x5a\x3e\xf8\x7e\x72\x47\xf6\x20\x12\xa5\x30\xe0\x45\x5b\x64\xe8\xd7\xeb\x23\xe4\xac\x56\x6b\xf6\xa0\xa9\x36\x30\x09\xbb\xf3\x2c\x88\x7c\xd6\xeb\x98\x18\x86\x29\x75\x0d\x30\x3a\xa4\x35\x54\xc3\x77\x77\x8e\x47\xe4\x33\xa7\x91\xb0\x56\x83\x18\xdc\xdd\x39\x52\x91\x3a\x2b\x56\xf7\xb1\x03\x3c\xa8\xbb\x1e\x3b\xc4\x03\xfe\x8b\xb0\x52\xf7\x6d\x99\x2a\xa9\x84\xb2\x79\xab\x20\x41\x0e\x8c\x4a\x69\xdc\x37\xc9\xd5\x17\x06\xd9\x35\x1f\x1c\x8a\x47\x8a\xfc\x3a\x81\xa4\x86\x68\x93\x53\x70\x54\x43\x74\xc7\xf6\xeb\x04\x80\x94\xf6\x7d\x93\xf6\xe3\x0c\xed\xc7\x88\xd9\x31\xac\xd5\x7c\x45\xfb\x31\xaa\xc5\xe0\x10\xc5\xa2\xe4\x78\xbd\xe4\x98\x97\xbc\xe2\xc3\x7c\xe8\x26\x63\xdb\xb4\xc3\xba\x0b\x32\xda\x34\xde\x3d\x49\x9f\x14\xc9\xde\x26\x56\x4a\x83\x97\x3e\x9b\x35\xe2\x9f\x29\xb3\x29\xf0\xa8\xc0\xe4\x3c\x87\x49\x85\x99\x02\x7c\x28\x23\x6c\xb3\x13\xa4\x5a\x4d\xa1\xe8\x80\x88\xa9\x6b\x53\x14\x22\x02\x3c\x9b\x1e\xca\x37\x02\x60\x78\x40\x04\x83\x20\xc0\xc4\x0e\x31\xb1\x13\x65\xb0\x13\x21\x66\x47\xb0\x56\x23\x0a\x3b\x46\x2d\xd1\x21\x8a\x54\x2d\x91\xa8\x45\xbe\x45\xbc\x96\x48\xd4\x12\x81\xc4\xc8\x70\x48\x61\x38\xd2\x36\xef\xef\x72\xe1\x5a\x65\x48\xbe\x85\x4f\x19\xf1\x03\x79\x49\xa0\x49\x9d\x76\xbb\xa5\x1c\xb2\x2f\x42\xe4\x68\x57\x10\x3d\xf7\xb3\x99\xb7\x34\xaf\x4c\xb8\x23\x72\xf6\xc3\x03\x95\xbb\x5a\x0d\x0f\xda\xad\xfd\xb0\x56\xd3\xf9\x09\x62\xc3\x70\x04\x23\x84\x6b\x04\xfa\x48\x0c\x8c\x7f\xc9\xf9\xdb\x41\xf2\x4c\xc0\x00\xd7\xed\xa8\x4e\x80\x47\xf8\x5f\x0c\xb6\x7c\xe9\x6b\x5c\xab\x8d\x90\x0f\x20\x46\x51\x12\x0f\x4b\x38\x20\x27\xad\xa5\x35\x57\x3c\x4b\x87\xab\x57\x53\x5b\xd7\x8b\x8b\xda\xad\x2e\x8c\x50\x9f\x42\x3d\x1f\xc8\xa1\x23\x75\xfa\x11\xc2\xc3\x7a\x9d\x8c\xf6\xc9\xa1\xc3\x1b\x80\x22\x48\x55\x12\x8c\x10\xab\xf1\x99\x44\x79\x0b\x19\x80\xdb\x21\xd8\x07\x0a\x30\x3c\x70\xaa\x55\x3c\x24\x75\x77\xc4\x59\x53\x78\x98\xbc\x1e\x3a\x40\x0c\x5a\x6b\x27\x84\x0c\x45\x35\x0a\x29\x42\xac\xce\x87\x2f\x42\x2c\x35\x11\x8d\xd6\x15\xaf\x9a\xb6\xf9\x68\xbd\xdb\xbc\x34\xc9\x15\xa9\x5a\x95\xce\x39\x21\xd8\xbc\x26\xf1\xd5\x27\xb3\x1c\xc9\x6c\x44\x37\xa6\x66\x2c\x44\x97\x45\x6d\x49\x0a\x7e\x38\xa7\x13\x35\x08\x66\x07\x04\xb7\x93\xef\x69\x2b\xf8\x07\xed\xcf\x74\x93\xf1\x8e\x36\x29\x19\x43\x86\x5e\x09\x26\xad\x22\x4a\x17\x1a\x4a\x12\x1c\xcb\x23\x9c\xdb\x0b\x21\xf7\x84\x9e\x32\xf2\x54\xbe\x02\x2b\x78\xf1\x16\xdf\xe8\x44\x61\xe0\x2d\x27\x23\x4e\xa7\xbf\x98\x4e\x02\x5b\xc9\xbd\x0e\x14\x86\xc2\xc3\xce\x58\xe1\x52\xaf\xd1\xf7\xda\xe1\x29\xe7\x3d\x5a\x49\x9d\xac\x0c\x10\xe9\xaa\xc0\x72\x40\x3c\xf5\x38\x71\x9c\x62\xeb\x2e\x56\x95\x8c\x33\xd5\x75\x5a\x9e\x42\xdc\x45\xc6\x57\xf2\xcf\x83\xb8\x0a\xad\xa4\x68\xe3\x83\x4c\x1f\x84\x91\x8c\xfb\x59\x25\x75\x34\x3b\x4e\x41\x1e\x8e\x8d\x84\x7a\xdf\xdb\x49\x4f\xb0\x6c\x3b\x5b\x41\xaa\xc9\x39\x44\x7c\x79\x48\x0e\xe5\x44\x93\x42\x30\x10\x71\xa1\xed\x90\xaf\x1b\x49\x41\xc7\xbf\xaa\x20\x11\x26\x96\xd9\x21\xa4\x00\x9a\x27\x3a\xd7\x1f\x51\xaa\xe0\x26\xb2\x64\x2a\x23\xb2\x88\xee\x87\x22\x24\x5c\x52\xf2\x2b\x03\x4d\xea\x6c\x19\x17\x99\x29\x0f\x70\x23\x61\x9c\x9e\x34\x53\x3f\x2d\x32\x99\xc4\x86\x64\x71\x66\x63\x28\xa4\x3a\xfd\xf1\x27\x1b\xc3\x53\x78\xca\x29\x36\x01\x7a\x59\x04\x94\x32\x88\x1c\xf4\x57\x42\x1d\xde\x68\x34\x68\xae\x50\x96\xc1\xd7\x51\x31\x98\x51\x6c\x16\xfe\x49\x71\x4b\x5f\x67\xea\x7e\x7b\x4f\x4b\xb3\xd0\xaf\xd5\xc5\xed\x2e\xc7\x68\xe9\x35\x15\x93\xa5\x8c\xd5\x87\x2b\x6f\xcd\x2b\x8b\xf1\xd0\x19\xa5\x45\xfd\x94\xfa\xf6\xe9\xcd\xb3\xfe\x84\x65\xd0\x72\x32\xb5\xa3\x43\xa4\xad\x64\xb5\x2c\x44\x6d\xa2\x1d\xa7\x7c\xc1\x90\x6f\x60\x8c\xc2\x61\x54\xab\x8d\x04\x67\x0e\x34\xcb\x57\x0b\x38\x9f\x8f\x24\x5d\x16\x63\x9b\xc1\x5a\x2d\x80\x84\xcb\xe2\xbe\xf6\xaa\xa2\x83\xe4\x06\x0e\xcf\x57\xae\x54\x5c\x5c\x5e\xa5\x1c\x91\x41\xca\x39\xa2\x0f\x7c\xe5\x33\x85\x6d\x0a\xa3\xd4\x36\x9c\xd9\x3e\x17\xf4\xa1\x92\x5c\x9f\x16\x4b\xae\xc6\x22\xc1\x20\xdf\x21\x88\x5a\x52\xea\x3a\x49\x86\xa3\xd8\x58\x62\xdd\xcf\xb6\xd8\x66\x42\x7a\x53\x6b\xc3\x08\x01\x7c\x19\x60\x0b\x6c\x61\x94\xd9\xf3\x70\x94\x0d\x29\x22\x0d\x7f\x84\x18\x5f\x65\x5d\x2e\x7b\x29\x94\xdf\xdd\xe9\xb3\xfd\x43\x37\x9d\x96\x6f\x48\xc8\xda\xad\xcc\x6a\x27\xba\x88\x0e\x53\x11\x34\xcd\x37\xb0\x19\x62\x72\x0f\x81\x0e\xb1\xda\x4c\x00\x18\x36\xe2\x88\x32\xed\xba\x7c\x9b\x8e\x97\x58\xd2\x59\x2a\x7e\x49\x46\x6d\x93\x86\x0f\xec\x70\x88\x47\x30\x1c\xd2\x91\xf0\x15\x48\x1c\x11\x38\x27\xe6\x02\xa2\xda\x57\x51\xb3\x74\xde\x2c\xb3\x08\xca\x8b\xa0\x62\x27\x04\xe0\x53\xe1\x30\x97\xb8\xa9\xc8\x4c\xe6\x0c\x7a\x9e\x58\x8a\x0b\x10\x81\x1c\xdd\xb5\xc1\x89\xfd\x95\xfa\x0c\xed\x21\x86\x6c\x04\xc5\xaa\x99\xab\x90\xc1\x30\x71\x1d\x91\x29\xbc\xcb\xc0\x3b\xb1\xcf\xc4\x93\xc8\x4b\x47\x70\x18\xc2\x88\xe7\x65\x82\xaa\xf2\x39\x42\xa0\x36\x8b\xf6\x10\x73\x28\x2c\x89\xec\x05\xca\x19\x65\xc3\x67\xe8\x85\x34\xcc\x86\xbf\x20\xfb\x05\xcf\x02\x0b\xf8\x59\x81\xda\x96\xaf\x66\x6f\x10\xb5\x7b\x86\x7a\xe0\xb1\xee\xbe\x90\x78\x92\xfd\xa5\x96\x6c\x55\x13\xdf\x34\x2e\x81\x02\x14\xd2\x24\x42\x28\xbc\xbb\x13\x9e\x86\x77\x77\xdb\x24\x7e\x46\x42\xc2\xb0\x4d\xf4\x4e\x55\xe0\x6a\x8b\x1c\x3a\x03\x1b\x4b\x81\x78\x1a\x44\x7c\x91\x6e\x12\xb0\x43\x20\x93\x69\x63\x4c\x02\x9b\x89\x24\xe0\x11\x2e\x60\x6a\x68\xf1\x05\xef\x10\xd0\x4c\x80\x65\x01\x4c\xa4\xf1\xdd\x34\x59\x09\xf4\x7c\x51\xc4\xcb\xd3\x32\xc4\x53\x10\x5d\xd9\xc2\xb5\xa5\x29\x5e\x5f\x9c\xb4\x40\xcd\x5d\xc1\xaf\xf3\xf7\x80\x63\x74\x0a\x19\x9a\x43\x8a\xbe\x30\xed\x9a\x08\xb8\x95\x43\x40\x62\xb9\x97\x20\x40\x1c\x78\x1a\xd3\x83\x28\x65\x4c\x24\x9c\xd4\x88\xb6\x96\x09\x8c\x6d\x7e\x2c\xfd\x23\x22\xe4\xec\x47\x07\xf1\x7e\xad\x16\x81\x60\x18\x8d\x10\xb6\xc9\x30\x1a\xc1\x08\x12\x59\xc4\x12\x31\x3b\x00\x70\x8c\x96\x43\x67\x04\x27\x68\x39\x74\x47\x70\x86\xa8\x1d\xc0\x31\x9c\xc8\xe8\x73\xd9\xe6\xcc\x40\xca\xfa\x26\x90\xa2\xda\x4c\x4c\x1d\x84\xd0\xbc\x5a\xb5\x87\x63\x38\x19\xa1\xc7\xf6\x18\x4e\x64\xa8\x80\x59\x3a\xa8\x3e\xd0\xc9\xc3\x59\xaa\xe9\x38\x44\x13\x11\x0a\xf8\x10\x4d\xaa\x55\x51\x4c\x5a\xbe\x49\x0f\x32\xeb\x56\x32\xfa\x58\x18\x1d\x1d\x3a\x83\x09\xb2\x8d\x21\x9b\x34\x31\xa8\xb9\x60\x07\x7b\x58\x0c\xb1\xfe\x2a\xc6\x67\xb2\x53\x17\x5f\x9b\x75\x2e\xd6\x08\x87\xea\x99\xd4\xa3\xac\xb4\x05\xd2\x14\x25\xce\x72\xb3\xa1\x33\x3a\x40\x63\xc3\x69\x0e\xd6\xeb\x53\x49\xb4\xb3\xe1\x94\xb7\x7d\xc2\x3f\x8a\x02\xc4\x27\x5e\xc0\x02\xbe\x33\xc6\x61\x5a\x73\xcd\x91\x40\x53\x31\x14\xf6\x02\xbd\xe3\xa3\x31\x1c\x81\xc6\xb5\x83\xa2\x43\x67\x30\x1b\x46\x75\x77\xe4\x8d\xe1\xa2\x71\xed\xa2\xe8\x60\xca\x53\x46\xde\x64\x6d\x18\xc7\x07\xc8\xf6\x11\x1f\x4c\x50\xad\xfa\x07\x1c\x6b\xef\x86\x0a\x51\x61\x63\x02\xec\x19\xf4\xa1\x03\xa7\x60\xa4\x3d\x0b\xa3\xd4\x24\xeb\xdd\x2a\x39\x3a\x16\xfc\x3c\xa5\xc9\x74\x41\x59\xf3\xe4\xb0\x71\x91\xba\x8a\x0d\x98\xf7\x8b\xcd\x00\x24\x5c\xd0\x81\xa4\x31\x89\xe6\x3e\x09\x8b\x26\xc8\x7a\x89\xc5\x0a\xb0\x01\xf6\x7e\xb1\x87\x7c\x51\x87\x78\xe8\x8e\x46\xa2\x6c\xc6\xcb\x4e\xce\xe0\xe2\x87\x95\x4f\xcb\xca\xcf\xd2\x32\x06\x83\x5f\xec\x67\xca\xb3\x09\x00\xef\x17\x1b\x8b\x3a\xe9\x0a\x92\x15\xfc\x19\x51\xdb\x75\x00\xfc\x66\xcd\x83\x6f\x6d\xe2\xdb\xb4\xce\x40\xd3\x6e\xed\xd8\x6a\x24\x7e\x96\x5c\xb6\xd1\xef\x82\x7a\x2e\xa9\xd5\x05\x60\x47\x64\x5d\x44\xef\x05\xa7\x80\x75\xb7\xd9\x16\x81\xe5\x3f\x7b\x70\x55\xed\x46\x77\x67\x61\xe3\xd2\x92\x3e\xe7\x8d\xdf\x33\x58\xef\x77\x59\xfd\x95\x50\x0b\xd6\xdd\x52\x6d\x8d\x52\xaa\xd4\x6a\x44\x6d\x49\x84\xae\xe4\x20\xba\xbb\x4b\x15\x2a\xd5\x6a\x74\x88\x22\x29\x41\x47\x9c\x49\x1a\x41\x0a\xee\x57\xcc\xdc\x5f\x98\x96\xb7\xd3\xe5\xf3\xcb\x8c\x7a\x59\x28\x07\x8b\xf7\xf1\x6b\xca\xa6\x54\x41\x6c\xd7\x6a\x14\x86\x35\xdd\xda\x0f\xd5\x27\x45\xa8\x16\x01\xa9\x48\x52\x05\x45\x42\xb9\x46\x13\x3f\xd3\xa6\xd4\x8f\xfd\x61\x93\x9b\x5d\x42\x0d\xdd\xac\x5d\xeb\xef\x0d\xb2\x36\x38\xbe\xfe\xbe\xa3\x4d\x3b\x0d\x51\x14\x83\x1b\x82\x83\xc9\x0e\x5b\x71\x1a\x16\x55\x7f\xcb\x07\xbf\x65\x0c\xfe\xf7\x9f\x62\xf0\x0f\x3f\xe5\xe0\xdf\x5b\xd8\xfa\xe0\x63\x11\x0c\x03\x31\x9c\xaa\x4f\x86\x52\x42\x0f\x21\x41\xdb\xa6\x8c\xae\x2a\x27\xe9\x3d\x78\x76\xc8\x45\x6b\x18\xa2\x88\xc3\x3a\x5b\xeb\x47\x04\x0c\x9b\xe3\x24\x64\x0a\x81\x4c\x8a\x11\xb5\x5b\x3d\x00\x43\xfe\xd0\xee\x1b\x68\x25\xb2\x45\x5c\xa4\x4a\x70\xbb\xed\x6a\xa1\x57\xcb\x75\xf2\x5b\x64\x34\x4f\x29\x87\x53\xcd\x9a\xed\x83\x7d\x3b\x1c\x64\x45\xb4\x08\x1c\x38\x1e\x47\x4f\x36\x59\x21\x10\xf9\x30\x42\x58\x78\x5a\x83\xd5\x2a\x41\x7d\x46\xd7\x6a\x87\x03\x66\x13\x48\x75\x41\xfc\x85\xa8\xec\x44\x66\x2d\x40\x44\x64\xf4\x2a\xdf\x15\x7d\xbc\x2f\xd5\xc3\x06\x3d\x45\xd9\x4d\x12\xd1\x14\x14\x41\x3b\x3c\x70\x06\x69\xed\x9e\x6e\x51\xda\x8c\xa8\x68\xb4\xfd\xdf\x18\xb7\x87\x9f\x0a\xb7\x87\x1f\x82\xdb\xf8\x7e\xdc\x7e\xf7\xab\x71\x7b\x78\x1f\x6e\x03\x9c\xd5\x42\xca\x11\x4f\xdb\x7b\xe0\x0c\xe4\xdc\x54\xaa\xfe\x25\x46\x63\x2c\xe5\x28\x79\x15\xab\x31\x07\xc6\xb8\x68\x1b\xc0\x60\xd6\x94\x1b\x28\x36\x1b\xd6\x6d\x8a\x6a\x54\xca\x44\xfb\x64\x3f\xdd\x04\x62\x1b\xec\x90\x7a\xfd\xce\x81\x11\x62\x43\x52\xa3\xa3\x2d\xf9\x07\xb1\x61\x58\xa3\x23\x28\xff\x18\x8a\x6b\xf3\xd0\x08\x7f\xc0\xb9\xa3\x56\xee\xda\xb4\x86\x3e\x58\xb5\xcb\x33\x25\x8a\xdd\x8a\x44\xcf\x0c\x67\xa4\x12\x2e\x33\xdb\xa9\xe9\x7a\xb2\x4b\x49\x6f\xc0\x60\x7c\x54\xb5\xcb\xba\xfd\xad\xa4\xbd\x29\xe6\xec\x29\x15\x1d\x29\xd8\xaf\xd5\xd8\x01\xdd\x4f\x4d\xf4\x05\x25\x40\x5f\xc6\x2d\x48\x21\x09\x87\x8c\x0e\xc8\x3e\xf0\x85\x8c\x3f\x8c\x46\x43\x36\x4a\xc7\xdd\x38\xc4\xc2\x19\xc3\x6a\x75\x0a\x2a\xc4\x56\x5c\x10\xa2\x69\x86\xed\x42\xab\xfd\x39\xde\xe8\x7e\x51\xac\x40\x60\x38\x66\xa9\x5f\x45\x92\x4d\x51\x7a\x96\xc4\xd5\x48\x71\x4c\x72\xce\xcd\x17\x5a\xac\xf1\xb8\xad\xd5\xe4\xdb\x8e\x61\x88\xfd\xa7\x6b\xd1\x7a\x83\xf4\x6a\xb2\xed\x1a\x67\x0e\x9f\xb4\x41\xf9\xf5\xae\x90\x21\xa4\x74\x9a\x2c\x7b\xa4\x88\x07\x5d\x6e\x6c\xda\xaf\xd6\x07\x7d\x50\x8f\xe7\xfe\x62\x21\xef\x99\x5d\xeb\xf3\xba\x14\x84\xa1\x38\x33\x90\x2a\x0d\x31\x1f\xd3\x4e\xdd\x24\x37\xd0\x7c\x50\xfd\xd2\x26\xa5\xb8\x01\x09\x67\x5a\xc3\x88\xad\x42\x22\xc1\x08\xfa\x4a\x8e\xca\xef\x41\x0e\xda\xa2\x25\xf6\xed\x24\x0a\xb1\x47\x94\x81\x3f\x5d\xa1\xb0\x11\xe2\x6b\x66\x03\xbe\xd1\x90\x5d\xdc\xaf\xd5\x7c\xb1\xff\xdc\xcf\x41\x47\x26\xf4\x36\xd9\x07\x14\x09\x65\x8e\x3a\xfb\x2d\x18\xda\x0b\xac\x18\xd0\x6f\x31\xb0\x05\x03\x02\x1a\xca\x58\xc7\x8c\x16\xf3\x1e\x27\x2a\x47\x2c\xb8\xd4\xa9\x54\x89\xe6\x8e\x34\x4c\x81\x53\x08\xb2\x14\x24\xda\x77\x66\x38\x11\xa5\x67\x06\xb9\x55\x8b\x15\x8c\x8b\xe2\xa0\xa7\x98\xad\xcf\x0f\x11\x10\x46\x68\xfd\x89\xc1\x4b\x44\xdc\x41\x28\xc1\xf7\xed\x5b\xed\x88\x21\x06\x82\xad\x10\xd5\x03\x50\xad\x6e\x33\x69\xcf\xa0\x4e\x7a\x48\x2c\x6e\x56\x48\x4b\x0a\x75\x24\xbf\xd5\x3a\x7f\xba\xce\x30\xde\x8a\xe1\x53\x77\x8a\xd9\x40\x1e\x08\x49\x34\x19\x67\x0e\xc5\x78\x84\x5a\xfd\x79\x8d\xc1\x16\xf6\xd6\x0e\x8a\xd6\x34\x9f\x9c\x8b\xca\x7e\x53\x00\x6e\x13\x1c\x53\x41\xe1\x8c\x84\x4b\x5c\xc1\xab\x75\x74\x9f\xe6\xd0\x5d\x34\x0d\xca\xd1\xcd\xb2\xe8\xd6\x35\x3d\x18\xdd\x12\xd5\x2c\xc5\xae\x28\x4d\x22\x18\xe6\x46\x40\x5c\xff\x54\x84\xf5\xb3\x8c\x48\xcf\x7b\xc4\xa0\x89\xe1\x97\x38\x67\x96\xb3\xde\x99\x35\xa4\x62\x49\xaa\x4c\xb5\x65\x2b\x95\x46\xee\xf3\x45\xd8\xe0\xd0\xe3\xdf\xeb\x38\x12\xa7\x16\x58\xa9\x2d\x46\xd7\x01\x90\x18\xef\xae\xb0\xe9\x49\xdf\x5b\x79\xcb\x2c\x1d\x79\xc4\x47\x36\xab\x63\xa5\xa1\x9c\xfb\xd7\xb6\x03\x29\x80\xb1\xa9\xfb\x4c\x75\x99\x89\x22\x93\x17\x1f\x20\xbf\x99\xa8\x1c\x5c\x07\xa6\xb7\x0f\xc6\x87\xc8\x19\xd8\xc1\x21\x0a\x07\xae\xe3\x05\x87\x88\x0c\xba\xfc\x4f\x34\x68\x79\xae\xa1\xa7\x10\x99\xbc\xba\xf9\x5e\x8f\x41\xb3\x34\x67\xc6\x88\xcb\xec\x42\x62\xee\x50\xde\x15\x55\xfe\xbd\xdd\x92\xfd\x8a\x75\x57\x44\x53\xe2\x1d\xa4\x5b\x13\xef\x20\xd9\xa0\x6a\xd5\x8e\x77\x50\x0b\x40\x61\x2f\x14\x7b\xf1\x2a\xef\x40\x98\x89\xed\x02\x63\x18\xa8\xf5\x81\x4b\xbd\xd0\xc6\xa8\x86\x01\x42\x36\x43\x35\xc6\x57\xe9\x43\x27\x51\x61\x0b\x43\x2c\x3b\x44\xec\x00\x4b\x83\x36\x0c\x31\x62\x7c\xaf\x00\x20\x17\x63\xed\x18\xe9\x21\x04\xa6\x16\x3c\x36\xe4\x4b\x32\xb5\xe3\x43\x47\x10\x6b\x46\xb5\xdd\x8c\x41\x4e\xb1\xdd\x14\x77\xd2\x18\x22\xa4\xa9\x23\xaf\xe3\x9a\x0b\xb8\x4c\x19\x70\x99\x32\x1a\x06\x23\x64\xe3\x5a\x00\x76\xe2\x74\x8b\x1f\xa3\x7a\x0c\xb3\xfa\xf3\xb5\x4a\x76\x3e\xa6\x92\x74\x14\xc2\x6a\x35\x4a\xd7\x17\x18\xdd\x37\xc3\x12\x3a\xc9\x5c\x14\x96\x75\xb7\x35\x3c\x72\xd3\x08\x42\xa1\xf4\x4d\xa6\xc3\x50\x6c\x36\x46\xe9\xc2\x7a\xbf\x17\x5e\xd1\xf8\xe3\x62\x7f\x5e\x44\xe5\x75\xdf\x86\x9f\xf0\xc3\x78\x46\x31\x47\x30\x1d\xf8\xee\xe7\x2a\xc5\x6e\x82\x71\xc6\xae\xb3\x03\xd6\x1c\xac\xf3\xfb\xba\x54\x23\x89\x6b\x74\xc7\xdc\x82\x45\x26\xd2\x59\x1d\xa7\xb6\x63\xbc\x28\x7a\xe8\xee\x3a\x77\x77\xf4\xa0\xee\xee\x3a\x03\x5a\x6f\xf7\x1c\xc9\x11\x68\xb4\x0c\x27\x36\x6d\xb6\x7b\x0e\xf0\x28\xf0\x12\x4d\xb6\x0f\x6c\x12\x9f\xf8\x27\x36\x06\x03\xe6\x99\x5c\xdb\xcf\x86\x1e\x92\x93\x6a\x10\x7b\xe6\xe6\x33\x35\xc6\xaf\xb3\x41\x89\x4e\x15\xa7\x3c\x42\x9c\x9b\xb1\xf4\x9d\x83\xd5\x31\xa4\xc8\x6d\xd2\x74\x88\xc2\xac\x3a\x56\x64\xac\x85\x3b\xe2\x8c\x7c\x25\xe2\xa4\xe2\xa2\x0e\x30\x30\xa0\x1e\x33\xcd\x28\xe2\xcd\xb8\xda\x84\x85\x87\x51\xcc\xfd\x4e\xa1\xc5\x8e\x0e\x0f\x0b\xbf\xb1\xd9\x6d\xf4\xe2\x5e\x37\xc9\xeb\x7b\xdd\x46\x5f\xdd\x4b\xdb\xa7\x26\xe5\x66\x74\x72\x36\xb8\x55\x2e\xf3\x8d\x3e\xf4\x91\xdb\x8c\x60\x8c\xac\xf3\xf3\x78\xc7\x1e\xd6\xea\xa3\xc1\xf9\xf9\xa4\x06\xf8\xab\x05\x83\x5c\xfa\xce\xf9\x79\x43\x7c\xb7\x07\xde\x10\x1f\x8f\x52\xf8\x81\xca\xb1\xfc\x80\x1c\x7f\x23\xb3\x8c\x51\xf3\x87\xdf\xd9\x43\xa7\xbe\xe7\xd7\xa7\xa3\xdb\x36\xdc\x5d\x81\xcf\x9a\x70\x22\x18\xe3\x6b\x7c\x75\x7c\xbd\xb0\xad\x1f\xe8\xd5\xe5\xf9\xb9\x6d\xd5\x86\x31\x8c\x61\x3c\xaa\x59\xe7\xe7\xe0\x33\x0b\xc0\x59\x09\xd8\x12\x2e\xe1\x32\x05\x9b\xae\x81\xf9\x46\x71\x30\x48\x21\x17\x65\x90\xa2\x44\x13\x72\x9e\x85\x9c\xc5\x81\x04\x0c\xb2\x55\xbf\x5b\x03\xf3\x0d\x38\xb3\xc0\x2b\x74\xeb\x07\x64\x8c\x2f\xb9\xcc\xe7\x76\xfb\x7b\xad\xf6\x6e\x1b\xfa\x21\x23\x3f\x2f\xf1\xfb\x19\x61\xd8\x73\x7b\x9d\x4e\xa7\xdd\xef\x42\xff\xe7\xa5\xef\xf5\xba\xdd\xb6\x7c\x9c\xfb\x94\x84\xd8\xdb\x6d\xef\xee\x76\x7b\x1d\xe8\xff\xb2\xa4\xb2\x88\x8e\xdb\xef\xc2\x4b\x4c\xae\x78\x5e\xd7\xdd\x6b\xf5\x1c\x78\x49\xe2\x9f\x79\x0d\xbd\x7e\xdf\x69\x75\x3a\xf0\x32\xf0\xc7\x6f\x3d\x87\xff\x0d\xc7\x33\x3c\xf1\x83\x79\x14\x4e\xc4\xf7\x96\xd3\xe9\x42\xd1\x9e\x56\x57\x3e\xbc\x23\x51\x80\x99\xb7\xe7\x74\xbb\x2d\xa7\x05\x2f\x69\xf4\x3e\xf4\x5c\x67\xb7\xd5\x69\xb5\x3b\xf0\x72\x49\x83\x9b\xf7\x51\x34\xf1\xdc\x4e\x77\xaf\xd7\x6a\xbb\x70\xec\x4f\x30\x13\x45\xf4\x5a\xbd\x5e\xb7\xb5\x0b\xc7\x33\x9f\x32\x8a\x97\xb1\x6c\x70\xbb\xdb\x82\xe3\x59\x34\x8e\x02\x9f\xf7\xb0\xdd\xdf\xdd\xeb\xf4\x1d\x38\x8e\xa8\x1f\xf0\x46\x74\x3a\xad\x7e\x8b\xbf\x86\xd3\x20\x7a\x8f\xa9\x2c\xab\xbb\xe7\xee\xed\xba\x22\x39\x26\xc1\x5b\xd1\xda\x6e\x7b\x77\x17\x8e\x29\x99\xc7\x51\xe8\xb9\x9d\x4e\xab\xed\x3a\x0e\x1c\xdf\xf8\xa1\x42\xd5\xc4\xa7\x6f\x25\x76\xdb\x7b\xe2\x45\x7c\x6b\x77\xfb\xad\xb6\x78\xbd\x8a\x82\x09\x0e\x29\x6f\x7e\xcb\xd9\x6b\xed\x29\xa8\x2b\xea\xdf\x78\xae\xeb\xba\x7b\x8e\xdb\x57\x29\x18\x87\x5e\xab\xdb\x73\x1c\xfd\x9e\x83\x78\x3b\xf3\xdf\x12\xcf\x6d\x75\xda\xed\x56\x57\x16\x33\xf7\xaf\x70\xc8\x7c\x6f\xcf\x75\xf6\x7a\x1d\x59\x63\x14\x90\x77\x58\x96\xd6\xed\xee\xf5\xf7\xf6\x24\x68\x24\xbc\xa2\x44\xef\xfb\xdd\x96\xa3\xd2\xc6\x33\x32\xf1\x5c\xc7\xe9\x38\x8e\xdb\x12\x69\x14\x4f\x44\x71\x5d\xa7\x23\xde\x63\x31\x76\x9e\xdb\x6d\x3b\xbb\x1d\x57\xe6\x8b\xb1\x2f\x2b\xd8\xeb\xb8\x7b\x7b\xae\xac\x20\xe6\xc8\x16\xa8\xe8\xf4\xdb\x9d\x76\xa7\x9f\xa6\x8a\xde\x72\xcc\x75\xf6\xba\x66\x2a\xce\xa6\xb2\x25\xfd\x79\x19\x91\x18\x7b\xdd\xd6\x5e\x47\xa6\x69\xe2\xe8\xed\xed\x75\x39\xee\x30\x5e\x2c\x48\x28\x06\xc7\xed\xed\xf1\x4a\x30\x5e\xc4\x6f\x6f\x64\xc5\x7b\x6e\xd7\x85\x13\x32\x17\x15\xf6\xf6\x9c\xdd\x56\xaf\x2b\xdf\xb1\xf1\x1e\x4d\xae\xd4\x98\xb7\x1c\xa7\xed\xee\xed\xc1\x29\xa1\xf8\x92\x92\xf1\x5b\xcf\xe5\x08\x72\x3b\x3d\x38\x0d\x38\xb5\xe8\x39\xd2\xef\x77\xf7\x5a\x0e\x9c\x46\x14\xc7\x4c\x0d\x55\xab\xd7\xde\xed\xb4\xe0\x74\x39\x9e\xc5\xc4\x17\x2d\x72\xf7\xda\x5d\x78\xe5\x93\x30\xbe\x8c\x68\xc4\x09\xa6\xdf\xe9\xf4\x1c\x78\x35\x8b\x62\xa6\xcb\x6a\xbb\xbd\x5e\xdf\x85\x9c\x32\x78\xa6\x5e\xaf\xdf\x72\xa0\x41\x27\x9d\x76\x6b\xcf\xe5\x49\xbc\x13\xbb\x9d\x96\xcb\x87\x42\xd6\xd9\x6e\xf5\x7b\xbb\xf2\xf9\x06\x07\x41\xf4\xde\x73\xdd\x8e\xd3\x76\xba\x5d\x28\xba\xa8\xa1\x67\x51\x88\x6f\x26\xf8\xbd\x9a\xb0\x3d\x07\xce\x22\xa6\xf1\xd6\xde\xed\x77\x1c\x48\xc2\x09\xf1\x43\x3e\xda\x6e\xbb\xd3\xdd\xed\xb6\x3a\x22\xe9\x2a\x12\x58\x6c\xb7\x1d\x48\xde\x45\xf4\x46\xf4\xbd\xdf\x72\x1c\xa8\xc8\xaf\xdb\xdf\xed\xf7\x7a\x0e\x0c\xfc\x77\x38\x9c\x60\xea\xb9\x5d\xb7\xdd\xe2\x94\xa1\x53\x2e\x83\x65\x3c\x13\xf9\xda\xed\x5e\x17\x06\xfe\xfb\x50\xb6\x7e\xd7\xdd\x73\xf6\xfa\x3d\x18\xe0\x79\x14\x8e\x67\x64\x3a\xe5\x84\xc5\x71\xbb\xbb\xdb\x85\x01\xb9\x9a\xc9\x59\xed\xba\xed\xbd\x76\xab\xdb\x91\x49\x6a\xd6\x76\xfb\x3d\xb7\xdb\xee\xa9\x34\x3e\xc9\xdc\x4e\xbf\xd3\xed\xee\xed\xc9\xa4\x04\x81\x1a\x31\xbd\x4e\x67\xb7\xc5\x9b\x25\xbe\x8a\xf9\xd6\xde\xdd\x6d\xb5\x5b\x6d\x9d\x24\x29\x78\x6f\xb7\xd5\xed\x25\x49\x79\x28\x8d\xb4\xee\x6e\xa7\xa7\xda\xa8\x67\x44\xaf\xdf\x6d\xf5\x7b\x2d\x95\xa8\xa7\x44\xcb\xed\xb4\x76\xf7\x54\xb5\x9a\x30\x77\xf7\x1c\xa7\xdd\x51\xb5\xa4\x53\xa2\xbf\xdb\x6e\xf7\xbb\xed\x4c\x32\xce\x27\x33\x8c\x03\x85\x96\xee\x2e\x9f\x5a\x32\x3d\xe9\x66\xbf\xdf\x77\x77\x79\xe2\x9c\xf3\xb0\xd6\xae\x23\x1e\x15\xbd\xb4\x5b\x7b\x7c\x28\x03\x12\xe2\x50\xa0\xa4\xdb\xeb\x3b\x50\xb3\x8d\x84\x64\xe7\x3e\x8d\xa2\x50\xf0\xce\x9e\xb3\x0b\xe7\x78\x42\x96\x73\x63\x15\xe8\xf5\xdb\xfd\x76\xab\xa5\x3e\xa8\xa9\xd3\x55\xaf\x9a\x8b\xb4\x5a\x2e\xa7\x6c\x95\xba\x58\xd2\x45\x80\xbd\xbd\x5e\xaf\xd5\xdb\x6d\xab\xc4\x04\x4b\xed\xbd\xfe\xae\xb3\xa7\x61\x53\xd6\xb1\xeb\xec\xf6\xfb\x7b\x8e\x4e\x5f\x50\x12\x5e\xc9\x1c\xbd\x8e\xdb\xed\xa8\xf4\x94\x51\x74\xfa\xfd\x56\xdb\xd1\xf0\x92\x59\x48\x9a\x76\x3a\x7d\xb7\xdf\x86\x73\x32\x09\x53\xc2\xea\x75\x3a\x7b\x6e\x0b\xce\x49\xc8\xf8\xf6\x64\xce\x57\xb0\x96\xbb\xdb\x75\xe0\x9c\xc4\xec\x86\x46\xb1\x5e\xc4\x78\xd6\x68\x3c\xf6\x63\x12\xaa\x94\xd6\x1e\x0c\xfd\x77\xfe\x4f\x51\xc2\x13\x7a\xbb\xbd\xdd\x2e\x4f\xbc\xf1\xdc\xd6\x2e\x8c\x82\x49\xe0\x8f\xf9\x97\x5e\xa7\xdd\xed\xf2\x04\xf2\x0e\x8b\x39\xd9\xee\xf7\xe4\xdb\x84\xfa\x97\x5e\xdf\xe9\xec\xf6\xdb\x7b\x30\x65\xc9\xdd\x36\xe7\x2e\xf2\x5d\x34\xbf\xd7\x6f\xed\xb5\x3b\x1d\xa8\x71\xdb\x69\xbb\x5d\x3e\xf4\x0b\x3f\xc0\x06\xab\xe8\xf6\xba\x7d\xb7\xed\xc8\x64\x81\x26\xd7\x71\x5a\xdd\xdd\x5d\x99\x94\xe2\xc9\x75\xbb\xad\xbd\xbd\x5e\x4f\x24\x1b\x68\xea\xb4\x77\xdd\x96\xd3\x86\x0b\x7f\xe1\xdf\xf8\xef\x67\x64\x21\x27\xae\xd3\xef\xc3\x05\xf6\xc7\xb3\xc5\x72\x3a\x15\x7d\xed\xf7\xfa\x6d\xb8\xc0\x74\xc9\xf9\x45\x6f\x77\x6f\xcf\x85\x7a\x6e\xf4\x5c\xa7\xdd\x85\x8b\x60\x39\xe7\x6b\x74\xab\xd3\x6b\xf7\xe1\x22\x7a\x3f\x51\x4c\xd6\x75\xf9\xca\xea\x3a\x50\x91\x04\xa7\xb2\x7e\xbb\x07\x29\xbe\xc4\xe3\xb1\xaf\x52\x7b\xbd\xbd\xfe\xee\xae\x0b\x55\xf7\x5d\xb7\xb7\xeb\x40\x1a\xc5\x37\x4a\x1e\x68\xb5\xbb\xfd\xae\xbb\x07\x69\x74\xe3\xcb\xf9\xd0\x69\xed\xf6\xf8\x32\x11\xfb\x93\x49\x80\x25\xd8\x9e\xdb\xea\xbb\xbb\x7d\x98\xcc\xd1\x8e\xdb\xdb\xdd\x6d\xc1\xd8\x0f\x27\xba\xa4\x9e\xd3\x6e\xed\xf6\x3a\x30\x25\x46\xa7\xeb\xb4\x5b\x7d\x9e\x10\xcf\x70\x20\x44\x84\x7e\xa7\xd7\xde\x85\x31\xc1\x61\xe8\x7b\xae\xd3\x75\x7a\xfd\xbd\x3e\x8c\x49\xf0\x8e\xb3\xbc\x56\xaf\xdd\xe2\x5c\x23\x33\xbf\xdb\x2e\x4c\x09\xb9\xb7\xd7\x77\x9c\x9e\x4a\x91\x93\xbd\xdd\x6f\xed\x75\x3a\xd0\x98\xe7\x3a\x25\x54\x13\xb9\xbb\xd7\x76\x60\x86\xe8\xbb\x1d\xa7\x0f\x53\x16\xd0\xe9\xb5\x9c\xbd\x5d\x07\x32\xce\xfe\xda\x7c\xb2\xf0\x17\xec\x07\x5e\xbb\xb5\xbb\xd7\x13\x7e\x24\x2c\xc0\x9e\xdb\x69\x39\x9d\xdd\xdd\x5d\xc8\xa2\xb9\xcf\x22\xc1\xf5\xfb\xce\x5e\x17\x1a\x33\xa7\xd5\x75\x77\xbb\x3d\xa8\x16\x58\xb7\xdb\x6b\xbb\xce\x6e\x0f\xbe\x9f\x61\x9f\x09\xc9\xae\xcd\x7b\x94\x2e\x80\xfd\x96\xdb\x95\xaf\xf1\x3c\x7a\xab\x85\xbf\xdd\x2e\x34\x38\x51\x6f\xaf\xe7\xa8\x77\x4d\x8e\x6e\xa7\xeb\xf4\x3b\xc6\x51\xd6\x65\xba\xa5\x90\x37\xa6\x5f\x5d\xda\xa0\x21\x63\x65\x7e\x81\xaf\x4d\xbd\xf6\xcd\x06\xd0\xd7\xfc\xd9\xd0\xc3\x27\x81\x9c\x21\x4d\x34\xd9\xc8\xc6\x35\xcb\x02\x0d\x46\xc9\xdc\x06\x0d\x16\xbd\xe0\xd2\xde\x13\x5f\x68\x37\x6c\x86\xc6\x0d\x7c\x8d\xc7\x36\x06\x60\x60\x53\x11\x74\x5e\x5b\xf6\x31\x24\x62\x5e\x3e\x0f\x99\x2d\x62\xd1\xbb\x3d\x00\x7b\xc2\xa5\xe9\xbd\xcd\x80\xd7\x16\x8f\x42\x77\x69\xb3\xc3\xc3\xdd\xaa\xdb\xbd\x63\x87\x87\x9d\x6a\xab\xe3\x40\xf1\xe0\x76\xef\x5a\x1d\xa7\xca\xa0\xed\x76\xab\x0c\x1c\x1c\x74\xee\xf8\x03\x74\x81\xb7\x2b\x32\x1f\xf3\x8c\xad\x4e\x95\x4b\xc1\xec\xf0\xd0\xed\xe9\xa7\x5d\xf1\x60\xb7\xba\x3c\x5f\xb3\xd5\xed\x02\xaf\x93\xe6\x70\x5b\xaa\xae\x5d\x5d\xd7\xc6\xca\xb3\xb5\xab\xe2\x44\xa8\x6e\xcf\x66\x68\x92\xf6\x5f\xf5\x85\xf7\x55\x44\xdd\x67\xc3\xf6\x88\x37\xd6\x66\x68\x96\x87\x6a\x75\xbb\x3b\x1c\xb2\xc9\x65\x61\xf9\xd2\x32\x5f\xda\xf2\x45\xe6\x9e\xa6\xb9\x8f\xf3\xe5\xb3\x61\x67\x24\x80\x16\x26\xd0\x03\x8b\x4f\x32\xcf\xd3\xcc\x47\x69\x0d\x0a\x26\xd3\x96\x77\x0f\x80\x94\xc5\x5e\xe5\xaf\x8e\xc4\x60\xf0\xde\xbe\x1a\xe2\x11\xf0\x94\xa7\xb9\x4f\x71\xc8\x2c\x84\x10\x56\x68\x39\xf1\x4f\xa0\xfe\xdf\x91\x58\x36\xfd\x38\x0c\x77\x06\x01\x8e\x93\x41\xc7\x7a\xd0\xf9\x98\x63\x68\x2a\x60\x8f\xd7\x2c\xec\xc3\x03\x24\x0d\x69\x19\xa2\xe8\xc4\x3f\x01\x50\x15\xa7\xe0\x4c\xdf\x8c\x92\x03\x10\x72\x77\x67\x63\x74\x21\x82\xc1\xeb\xc6\x0b\x97\x56\x31\xbf\x40\x83\x42\xdc\xb8\x82\xb8\x71\x09\x71\x23\x5a\xf8\x63\xc2\x6e\x80\x3c\x2f\xc9\xb8\x67\xe4\x1a\x56\x18\x93\x9a\xb7\xc1\xcb\x34\x50\x04\xe5\x0b\x07\xae\x67\x36\x35\x6d\xbe\x74\xf4\xa3\xa8\xa6\x1c\xe4\xae\x50\x8d\xc9\xa7\x4b\x54\xa3\xf2\x49\xb5\x09\xd5\x0c\x03\x8b\xb3\x84\x55\x58\xbf\xb3\x6a\x5f\xd9\xb2\x18\xa0\x9f\xae\x92\xa7\xcb\x8c\x8b\x47\xe6\x92\x7e\x55\xee\x96\x61\x29\x6e\x63\x94\x68\x83\x5c\xcf\xd0\x78\xcb\x47\x12\xda\x2e\xc4\x00\x80\x81\xc5\x71\x67\x79\xfc\x8f\x6f\x5b\xa0\x56\x04\xca\x87\xd8\x50\xc1\xa9\x26\x0a\xbf\xb1\x9a\x05\x2b\xd6\x83\x33\x5d\x7d\x4c\xa6\x4b\x95\x49\xf4\x0b\x0f\x2c\x60\x79\x22\x3f\xae\x59\xc0\xca\x7a\xb2\x24\xc6\xf2\x5a\xa9\xbd\xb9\x78\xe5\xfb\x06\x0e\xdc\xde\xc0\x72\x2c\xcf\xb2\x40\x0d\x27\x37\x1b\xd8\x6e\x6f\xcd\x01\x26\x4f\xd0\x83\x84\x9c\x3d\x7a\x80\x9c\xbb\x3b\x7a\x88\x5c\x91\xc8\x93\x98\x26\xf9\x84\xdc\xdf\x16\x90\xfb\x13\x75\x10\x9b\x21\xf5\xb7\xc0\x98\x73\x6f\x6d\xdc\x98\x41\xdc\x88\x21\x6e\x04\x06\x6d\x6f\xe5\x73\x99\x13\x64\x1b\x67\x8a\x58\x83\x7d\x9b\xbd\x16\x81\xa1\xcc\x4c\xe2\x0c\x17\x0a\x6f\x27\xf1\x14\x22\xdc\xb8\x14\x4f\xea\xd0\x88\x63\x53\x76\x44\x7b\x96\x72\x54\xab\x94\x98\x77\x18\x06\xc8\xaf\x47\x70\x89\x6c\xbf\x16\x81\x66\x2b\x39\x31\x19\xd8\x31\x62\x7c\xce\x0d\x6c\x5a\x0f\x41\x33\xa8\xf5\x76\x6c\x7a\x10\x02\x8f\xca\xd4\xb0\xce\x78\x6a\xcb\xb3\x59\x9d\xf2\xa7\x0e\x0c\x9a\x68\x79\xd0\xe8\x0e\xfc\x5a\xe4\xb5\xea\xbc\xdc\x78\x07\xf5\x1c\xe0\x05\x68\x79\xe8\x54\xab\xcb\x03\x77\xe0\x78\xb1\xc2\x71\x0c\x03\xb8\x34\xf0\x94\xf5\x38\x32\xe7\xeb\x2c\x99\xaf\x71\x32\x5f\x83\x8d\xf3\xf5\x75\x4e\x35\xcc\x59\xbb\x8d\x0f\x7a\xce\x80\xd5\x84\xc1\xed\x0e\x6e\xf6\x1c\x0f\x1f\x08\xed\xb5\x87\x0f\x5a\x9d\xf4\x93\xdd\xea\x38\x75\x0c\x38\x00\x03\xab\x8c\xea\x16\x5e\xc0\xdb\x71\xb4\xb8\xf1\x0a\xac\x96\x33\xc1\x3b\x6d\x71\xdd\x77\x2e\x90\x28\x54\x1e\x78\x2b\x38\x21\xf1\x22\xf0\x6f\xc4\xe5\x14\xeb\xba\x50\x43\x1a\x31\x00\x6d\xb0\x82\x33\x7c\xed\x5d\xc2\x44\x9a\x49\x9f\xe3\xa0\xa0\x9c\x27\xf2\x2a\xbc\x46\x02\xc3\x8b\x48\xe4\x1b\xef\x06\xea\x49\xe4\xdd\x24\xb7\x81\xc8\x8e\x9e\xc2\x57\xe9\xfb\x25\xef\xf8\xed\xa5\x88\xa5\x8c\x69\x51\xd7\x75\x34\x54\x3c\xf0\xbd\xd4\x7e\x19\x62\xbd\x7a\xc8\x0e\xed\x68\xa6\xab\x1f\x2e\xf5\x43\x42\x02\x42\x29\x73\x5f\x1d\x51\x5a\x47\xf4\x31\x75\xd0\xab\xcb\x12\xa4\xdf\x33\x30\xf5\x46\xf7\x40\xf2\x72\x5a\xad\xca\xbf\x07\xad\x6e\xb7\xd1\xad\x56\xd3\x4f\x57\xea\xd3\xd5\xfa\xa7\x4b\xf5\xe9\x52\x7f\x72\x0e\x32\x4b\x83\xfa\xac\xde\x0e\x90\x2b\x07\xfc\xcc\x18\xf0\x33\x63\xfc\x5e\xa6\xe3\x27\xa2\x8b\x99\x03\xf8\xd6\xd0\xb1\x3f\x68\x29\x7d\xa2\x97\xd2\xb7\x45\x4b\x29\xf8\x74\xd4\xf0\x56\x8e\xd4\x4c\x4d\x68\x35\x9b\x3f\x1d\x25\x3c\xb4\xfc\x1c\x15\x18\x0b\xf5\xec\x6f\xda\x3d\xa7\xd6\xee\x39\x3b\xaa\xa8\x03\x07\x40\x96\xac\xd4\x77\x77\xea\x18\x48\x94\x0f\x06\x8e\xa7\x6a\xa2\x32\x7b\x00\x43\x44\x6b\x36\xe5\x9c\x90\x7a\x6e\x9d\x82\x1d\x06\x09\x6a\xed\xd0\x7a\xb8\x95\x91\xd1\x5e\xdb\xf8\x10\x71\xce\x83\xeb\xad\x8e\xe3\xe1\x9a\xdb\x72\x20\xe1\xbc\x99\xf3\x2f\xfd\x70\xe0\xb6\x9c\x01\xae\x09\x88\x7a\x02\x91\xc7\xd6\x26\xba\xb5\x35\x9d\xc5\x8a\xc2\xe2\x03\xe4\xe6\xba\x01\x52\x6a\x0c\x14\x54\x70\x80\xdc\x87\xd0\x68\x21\x0b\xfa\x54\x82\xcf\x2c\x0e\xb8\xe0\x33\x8b\x03\x21\xf8\xa8\x11\xe1\x12\x81\x94\x4f\x5c\x47\x0f\x53\x2c\x13\xff\x26\x9b\x1a\xa8\x54\xab\x4c\x32\x11\x71\x27\x3f\xfe\x0c\x2e\xbe\xf7\x64\x2b\xc8\x9c\xc9\xee\xa9\x58\x3b\x2d\x19\x6c\xa7\xd5\xe3\x4b\x33\xb5\x5b\x8e\x71\xe4\x15\x1b\xa6\x6f\x31\xc7\xd5\x7a\xfc\x00\x35\x1d\x7d\xe9\x59\x47\x01\x00\x89\x61\x2e\x99\xda\xd2\x1e\x41\x88\x3a\xf1\x41\x0b\x64\x3d\x15\xa4\x69\xb4\x74\x90\x3c\x44\x6e\xee\x6b\xa8\xbe\x8a\xbb\x80\x60\x80\xec\xb8\xee\x72\x02\x5e\x9a\x96\x00\xc2\xc3\xcc\xcc\xa0\x9e\x23\x69\xf9\xba\x04\x8d\x78\x79\x29\x6e\x49\xb1\x1d\xb8\xac\xb9\xa9\x0f\xec\xb8\x66\x67\x9a\x91\x02\x0a\xb0\xfa\x18\xec\xd8\x41\x7d\x69\x1e\xae\x06\x12\x1b\xc8\x57\x36\xd6\x69\x28\x9c\x7c\x5f\xc3\xa4\xaf\x35\x6a\x0b\xb7\x23\x07\xae\x75\x54\x7c\x0a\xeb\xee\x08\x86\x75\x4e\x64\x3a\xc4\x33\x12\x01\x54\x76\x98\x96\x9d\x64\x4f\x09\x97\x93\x44\x16\xe1\x65\x97\xda\x07\xc5\x35\x5b\x26\xd7\xdc\x11\x8c\x6a\xbc\xa4\x7a\x0c\x76\x6c\x52\x8f\xc0\xea\x57\xd9\x01\x3c\x8c\xa2\x36\xdb\x01\x2c\x33\x34\xa7\x48\x6e\x57\x91\x9c\x93\x7a\x47\x67\x7c\x67\x1b\x3e\xef\xac\xdf\x10\xac\x9d\x0b\x86\x8d\x00\x4f\xf9\xc8\x9b\x50\x7c\x88\x1b\x63\x11\xef\x74\x8b\x35\x26\x28\xfe\x40\x23\x0e\x61\x8a\x5b\xea\xa8\xb2\x16\x49\x8a\x1e\x86\x59\xbf\x92\xf0\x10\x29\x1f\xff\xfb\x4c\xbd\x4b\x22\x4b\xd1\x43\x92\x2d\x91\x1c\x22\xa2\xec\xeb\x0d\x3b\xf0\x8d\xe8\x0d\x65\xb0\xda\xac\x3f\xd0\x5a\x1c\x72\x8c\x0e\x6d\x80\x0e\xf1\x0a\xde\x17\xd7\x36\x1d\xa9\x5c\x00\x73\x89\x2f\x86\x30\x97\xf2\x73\xc6\x1c\x30\x84\x44\x3a\x0f\xa9\xa5\x5a\x44\xbc\x71\x80\x5a\xb9\xa5\x93\x54\x32\x55\xf6\xc3\x83\xd4\x3a\x3f\x42\x61\x8d\x1c\x1e\x1e\xba\x5b\x8a\xb2\x19\x38\x70\x06\x21\x8a\x6a\xae\x47\x52\x8b\xfc\x70\x65\x48\x0c\xba\x24\x11\xf6\x45\xc7\x8c\xb2\x19\xa8\x53\x48\x0b\x9c\xf8\x14\x44\x86\xab\x88\xd8\xbd\x40\xb8\x35\xc1\x5b\x4e\x5b\x1e\x81\x92\x94\xcc\xeb\xb4\x28\x0c\x61\x04\x6e\x0b\x3b\x25\xc3\xc2\x24\x9d\x4a\xe8\x98\xe8\x7c\x75\x37\x99\xa1\xfe\x61\x58\xad\x32\x1b\x0f\x7d\x3e\xd9\x29\x38\xac\x8b\x17\xfe\x38\xf0\xeb\xae\xe7\xaf\xa0\xa0\xf4\xec\x55\x5e\x9f\x14\xa9\x87\xce\x80\xa0\xc8\x13\x88\x4d\x91\x7a\x2f\x7b\xf8\xb5\x73\xe6\xe0\x93\xcf\x99\x83\x4f\x35\x67\x1e\xd4\xef\x9d\xf4\x6e\xc1\x02\xaf\x0f\x6a\x36\x95\x8a\x46\xd4\x28\x38\x14\x8f\xc2\x73\xae\x42\x8d\x5e\x52\xb3\x97\x19\x54\xd9\x21\x32\x4c\xff\x33\x51\xeb\x54\x39\x21\x78\x48\xdc\xf6\xfc\x8c\xd5\xdf\xe4\xfd\x10\x78\x70\xe2\x9f\x78\x35\xbc\x12\x5c\xe0\xde\xf8\xd6\xf7\x58\xfb\x98\x9c\x22\xc7\x0d\x28\x72\xa0\x6f\x46\x89\x8b\x11\x9f\x75\x82\x96\xf7\xfd\x43\x2a\x0d\x70\xfd\x3a\x3d\xec\x39\x4e\xea\xa6\xe3\xd7\x69\xcd\x85\x11\x62\xe2\x6f\x80\x12\x7b\xca\x10\xc0\x25\x6a\x74\xa5\x55\x17\xbe\x5e\xd8\xad\x9d\xa0\xd9\xe6\x0b\xbf\x4e\x14\x26\xa9\xc1\xce\x72\xc7\x0e\xeb\x4b\xd0\x0c\xc1\x8e\x1d\xd5\xc3\x66\xeb\xc0\x19\xd4\x5d\xcf\x05\x5b\xb2\x61\x89\x74\x47\x4d\xbb\x4d\x56\x8f\x76\x96\xcd\xb0\x36\x06\x20\x15\xfa\xfc\x0c\x44\xcd\x0e\xeb\x11\x48\xa0\x62\xb0\x4a\x2d\xf8\x99\x0e\xe5\x41\xe1\x12\xf9\xd2\xa9\x5a\xf0\x00\x06\x60\x2c\xa7\x79\x08\x0e\x9d\x6a\x55\xa6\xfa\x60\x3f\x38\x58\xee\xab\x20\x56\x36\x86\x01\x5c\x02\x11\xe5\xa3\x5e\x5f\xee\xf3\x0c\x01\xcf\x70\xe0\xec\x83\x5a\x2d\x90\xc6\xcc\x3c\x75\x29\x8b\xd9\x07\xf5\xfa\x72\xc5\xc9\x30\x16\xb7\x98\xc0\x10\x0c\x64\xc1\x4b\xe0\xd9\xb5\xda\x12\xf2\xb7\x25\xf4\x01\x80\xcb\x03\x24\xae\xf9\x43\x5c\xa0\x81\xec\x00\x2d\x45\xb0\xb8\x65\xdd\x05\x05\x46\xd9\x91\xa6\x83\x4c\xd7\xf8\x0f\x12\x15\x89\x3b\x53\xc2\xfb\xe5\x09\x33\x2e\xfa\xd9\x77\x5f\x1d\x97\xc4\x17\x37\x83\x9f\x9e\x7e\x79\xfc\xe2\xf8\xec\xd5\xc9\xc5\x06\xf8\xcc\x95\x01\xf1\x0b\x19\xa9\xfe\x38\x28\x8f\xaf\x4a\x1a\xb3\x4c\x96\x23\xb5\xcf\xdc\x9c\x27\x13\x89\x33\x3e\x11\x41\xe3\x37\xe7\x20\x99\x1c\x4f\x7d\x86\x37\xc3\x4f\x33\xf0\x67\x64\x7e\x0f\x7c\x94\x81\x97\xd7\x33\x6e\xce\x31\xcf\xe4\xf8\x4a\x44\xd3\xdf\x9c\xe3\x6d\x36\x47\xb4\x0c\x27\x9b\x33\x04\xd9\x4e\xf8\x57\x9b\xc1\xc3\x02\xac\x9e\xbe\xc5\x01\x66\x25\xa1\x46\x49\xe3\xa7\x35\xb4\x72\x54\xdd\x93\xe9\x2a\x13\x63\x1e\xfb\x0c\x3f\x88\x50\xc6\x6b\xd9\x1e\x32\xf0\x66\x0c\xfa\xd3\x9b\x90\xf9\xd7\xc2\xcd\xe5\xde\x98\xf1\x0b\x7c\xf5\x95\x5f\x16\x85\xf6\x5d\x26\x70\x75\x19\xd4\xa5\xc9\x80\x1d\x29\x54\x8b\x6d\x5c\xd3\x1e\x78\xc3\x63\x3c\x1e\xdd\xba\xb0\xb7\xba\xfb\xfc\xd6\x85\xdd\xd5\xdd\xf0\x0f\x3f\x8f\xe4\x13\xff\x7c\xf3\xdd\x92\x8e\x6a\x77\x6f\x44\x0a\xb8\x1b\xbe\x7c\xa1\x3e\x4e\x6e\x5d\xd8\x5a\xdd\x3d\xbd\x75\x61\x7b\x75\xf7\xec\xd6\x5d\xdd\x0d\xfd\xcb\xc7\xea\xeb\x70\xf6\xf6\x8b\x2f\x47\x12\xe4\xbd\xfc\xf3\x0d\x07\x99\xcb\xe7\x58\xfe\x19\xfe\xf2\xfd\xab\x77\x5f\x5f\x7f\xcb\x01\x3b\x2b\x60\x0f\x90\x3d\xfc\xe1\xd1\x68\xe7\x91\xfc\x05\x3b\xe2\xef\x67\xa0\x79\x05\x7d\xd4\xfc\xe1\xbc\x61\x0f\x3c\xdb\xa9\x01\xfb\x7c\x07\x0c\xee\xec\xdf\xd5\xc0\x9d\x78\xfd\x5d\x0d\x80\xcf\x9a\x57\x30\x46\xcd\x1f\xec\xbf\xad\x81\x81\x7d\x5e\xbb\xfb\x5d\x0d\x0c\x78\x62\x80\x9a\x1c\x9e\x03\x8a\x2c\xf2\xc1\xa9\xf1\x52\x97\x3c\x83\x53\x03\x9f\x35\x0d\x47\xd2\xf4\xf2\xdb\xdb\xf4\xfe\xe5\xe4\x0e\xd3\x38\xa3\xa1\x32\xf4\x53\x6b\x57\xf3\x86\x03\x9b\xf1\xe5\x81\xcc\x97\xf3\x53\x72\x15\x92\x29\x19\xfb\x21\x7b\x4a\xae\x08\x8b\x93\x50\x44\x90\xf1\x45\x66\x33\x0c\xf0\xac\x9a\x85\x10\x0a\x07\x0f\x28\xd0\xb3\x7e\x67\x89\xb8\xa7\xce\x68\xf0\x80\xb2\xbd\x4f\xd5\xc8\x9a\xad\x31\x80\x52\x0c\xe8\x18\x57\x9e\x03\x00\xb4\x2c\x21\x77\xe4\xee\xea\x89\xdf\x13\x36\x16\xd7\xf1\x8c\xfd\x18\x5b\x31\xb9\x0a\xeb\xfe\x92\x45\x96\x27\xf1\x7a\xcb\x53\x9e\x4a\x3d\x91\x67\x89\x2f\xab\x2d\x03\x74\x2c\x6e\x91\xe0\xf5\x7a\x22\xd5\x06\x49\xce\xf1\x92\x52\x1c\x8e\x6f\x78\xa3\x3d\xcb\x80\xcc\x14\x10\xbc\xf7\x6f\x62\x95\xb9\xb6\x5d\x52\xad\x04\x2a\xae\x38\x5b\x84\x0d\x36\x97\x01\x1f\xd4\x2a\x7c\x3d\xc6\x0b\x56\xff\x05\xd3\x48\x37\x6d\x50\x5c\xac\x84\xfc\x9e\x03\x96\x34\x6f\xbd\x2c\x1b\xdc\x5f\xd8\xc3\xda\x19\xe2\x77\x98\xea\x16\x5e\x14\x17\x2a\x61\xcc\xe0\xba\xb3\x64\x8e\x09\x37\xcd\x63\x71\x60\x3c\x74\x46\xd5\xaa\x7e\x76\x47\x03\x9b\xa1\xdb\x30\x62\xe2\x0a\x0e\xcf\xc2\xe1\x15\x09\x31\x16\x04\xb6\x82\x18\xa9\x6b\x7a\xed\x16\x00\x9e\x59\x40\x36\x57\x3c\x26\x38\x64\x9c\x60\x33\x99\x5c\x4e\x87\xda\xf0\x5d\x27\x3a\xb0\x25\xbd\x46\x6b\xdb\x62\x02\xf1\xe9\x6b\xf4\x03\x25\x03\x98\xab\xbc\x36\xb0\xe4\xee\x22\x0f\x6f\x22\x33\x93\x07\x6e\x2f\x1b\x0c\xc7\x8c\xef\x28\xd7\x62\xcc\xbd\xf4\x83\x69\x44\xe7\x78\x52\x19\x47\xe1\x98\xc4\xb8\x82\xc3\xab\x66\xda\x91\x8a\xee\x9d\xc5\x77\xdd\x6a\xea\x3e\x0f\x19\xbe\xc2\x54\x4d\xc9\xc4\xa3\x3a\x71\x0a\x4b\x30\x6f\xde\x68\x25\xcf\x28\x6f\x57\xb9\xbb\xac\x52\xef\xf0\xdb\x95\x10\xcf\x09\xc2\xfb\xf4\x80\x24\x57\xa0\xe9\x0b\xf4\x23\x44\x86\x74\xb4\xa5\x26\x70\xd4\x88\x19\x9e\xab\x59\xbc\xc0\x94\xef\x90\x15\x61\xfc\x8d\xe5\xb1\x86\xb8\x52\x0a\x25\x5f\x12\xa7\x3f\x49\x4c\x7f\x73\xed\x3a\x4e\x01\x18\x64\x0d\x71\xbd\x30\x72\x1d\x27\x97\x45\xd3\xa7\x91\x2b\x49\x82\xac\xa1\x9f\x51\xd4\x88\x16\xbc\x77\xf1\xd0\x19\xe5\x8a\x10\x97\x86\xd4\xa3\xe9\x54\x35\x14\x5e\xf0\xc2\x96\x31\xfe\x9c\x7f\x20\xe1\x15\xda\x76\x73\x59\x16\x14\x8f\x49\x4c\xa2\xb0\x4e\x24\xce\x55\xd6\x06\xcf\xa9\x98\xe4\x33\xea\x0b\x7c\xaa\xe1\xc8\x37\x7c\x8e\xfd\x78\x49\x71\x7d\x19\x12\x8d\x21\xf9\x98\xf4\x43\xbc\x42\xd6\xe0\x7f\x33\xed\x4f\xaf\xd2\xfe\xc1\x6e\xec\x0c\x40\xbd\x09\x2d\x0b\xe4\x11\x13\xcd\x17\xfe\x98\xd5\xe3\x59\x44\x75\x05\x5f\xf2\xd2\x35\xe5\x20\x0d\x22\xf0\x24\x1f\x13\xaa\x95\xb9\x4a\x8a\x0c\xa2\x84\xcf\x7e\xf9\xf0\x22\x45\xae\x5c\x89\xc6\xcc\xf4\x58\x91\x52\x76\xed\xf9\x76\xc5\x77\x49\x25\x93\x1b\xc0\x04\x4d\x0d\xe9\x4c\x6d\xdb\x59\x3d\x57\x81\xbe\x38\x57\x3a\x06\x70\x6a\x33\x00\x56\x00\xde\x72\x99\x29\xdb\x60\x93\x01\x7d\x6c\x8b\x33\x4c\xec\xb7\x6f\xb2\xae\xb8\x1e\x93\xf9\x22\xc0\xd9\xf1\x8a\x99\x1f\x4e\x7c\x3a\xc9\x0f\x0c\xa7\xb9\xfa\x7b\x32\x61\xb3\x7a\xe8\x53\x1a\xbd\xe7\xd9\xf4\x64\x4a\x86\x54\x7e\x92\x9e\xb8\x9a\x52\x73\x1f\x37\x14\xac\x28\xb3\xa0\xdc\x71\x34\xc1\x6b\xe5\x15\x92\xa4\x51\xdc\x74\x19\x04\xf5\xd0\x9f\xe3\x92\xa6\xce\xd7\x8b\x2c\x22\x49\xa3\x44\x12\x47\x75\xd1\x94\xa2\x02\x63\xd9\xeb\x35\x82\xf6\x25\x8a\x25\xbf\x12\xf2\xb8\x38\x00\xb1\xcd\x09\x9c\x1f\x22\xc5\x44\x64\xb5\x96\x47\xa6\x29\x74\x1a\xa1\x32\x5d\x23\x5e\xfb\xe1\x95\x76\x90\xcf\x64\xad\x70\xe6\x1b\x57\xa2\x30\xb8\xa9\xf8\x63\xbe\xee\x54\xfc\x4a\x4c\xc2\xab\x00\x57\x64\x79\x7e\xa0\x1e\x2c\xb0\x55\xc8\x52\x82\xbc\x64\x2b\x5c\x47\xe5\xe1\x05\x05\x25\x4b\x8d\x16\xf0\xa4\xe6\x8a\x4c\x6d\x52\xad\x46\xeb\x8b\xda\x37\xb8\x22\xd1\xc8\x82\x9b\xca\x24\x12\x2e\xfd\xf1\x72\xb1\x88\x28\xab\x28\xa6\x59\x51\xfd\xa9\x4c\x44\xc9\x32\x82\x83\xff\x61\x45\xe1\x6b\x7f\xcc\xd6\x0a\x52\xcb\xa0\x10\x3f\x13\xf4\xaf\xc8\xd4\x56\xab\xb0\x5a\xb9\xca\xba\x28\x3f\x9b\xfd\xac\xf0\x96\x65\xf3\xde\x7e\xc8\xc8\xe9\xf5\xa1\x9e\x2c\x26\x1f\x3a\x7c\xa2\x45\x7a\xe0\xfc\xb2\x81\x53\xfd\xde\xc9\xed\x1d\x72\xcb\x53\xb2\x13\x20\xd5\xaa\xdc\x3b\x90\xcc\xde\x21\x07\xae\xe5\x00\x2f\xaa\x56\x7d\x63\x8b\x93\x03\x8b\xd6\xb6\x0e\x25\x00\x35\x3f\xd9\xe5\x94\x16\xb6\xbe\x0f\x29\x01\xd0\x9b\x8c\xfc\x50\x08\xb9\x70\x33\x9b\x1e\x67\xe7\xa9\x0e\xcc\x48\xa6\x76\x9c\x23\x93\x07\x14\x24\x21\xe5\xa4\x10\x61\x6d\xd0\x44\xa7\x6e\x2d\x1e\xd0\x98\x85\xda\xb2\xcf\x51\x22\x58\x6d\xcd\x1f\x90\x6f\x0e\x92\xb0\x0f\x15\xb6\x76\x3d\x02\xb8\x4d\x24\x3d\x19\xba\x44\x44\x23\x96\x5e\xec\x58\xdd\xa2\x3b\x23\x31\xb8\xbb\xe3\x7f\x92\x03\x89\x86\xba\xb9\x1f\x51\xe8\x37\xf0\xf5\x02\x8f\x19\x9e\xa0\x10\xfa\x8d\xa9\xb8\x70\x91\x40\xbf\x11\x44\x63\xb9\xae\x44\xd0\x6f\x70\x8e\x8b\xb2\x6a\x8e\x82\x38\x88\xe2\x4b\x63\xec\x2f\xd8\x92\xe2\x53\xe6\x8f\xdf\x9e\x51\x7f\x8c\xab\xd5\x92\x0f\xb6\xcf\x7b\xe8\xaf\xf2\xab\xe2\x25\x10\xe1\x14\x20\x6b\x5c\x2e\x49\x30\x79\xa9\x1a\x9b\x5d\x4a\x93\x8e\xd3\x4c\xe4\xa1\xf1\xcc\xa7\x4f\xa2\x09\x3e\x62\xb6\x03\x32\xc6\x79\x0d\x16\xbd\x59\x2c\xb4\x5d\xf4\xca\x3c\xdb\x30\xf2\x27\xe2\xd8\xf9\x79\xf3\x0a\x5a\xe7\xe7\xe7\xe7\x16\x48\x53\xad\xe6\x15\x7c\x74\x7e\x6e\x3d\x32\xd2\xce\x1d\x09\xe9\x98\x80\xe7\x4c\x26\xb2\x4c\x62\x28\x13\xc3\x4c\x22\x95\x89\xd4\x4c\x1c\x9e\x5f\x3b\x4e\xfd\xfc\xda\x79\x36\x6a\x5e\x99\xdc\x20\xe1\x01\xe7\xe7\xd7\x8e\x55\xe3\x9d\x5f\x81\x6c\x46\x97\x67\x74\x9f\x9d\x5f\xf7\x9f\xd5\xcf\xaf\xf7\x36\x95\x90\x14\xb0\x32\x95\xf8\x0f\x47\xc7\xf9\x48\xa6\x8e\x32\x89\x3f\xc8\xc4\x1f\xcc\xc4\xba\x4c\xab\x5b\x7f\x6f\x11\x17\x99\xba\x0f\x71\xb9\xaf\xda\x3a\xe9\x7b\x55\xd5\x56\xfa\x91\xf5\xa8\x16\x72\x08\x7c\xcd\x40\xed\x91\xf5\x48\x09\xe4\x81\x1f\xc7\x96\x27\xf7\x69\xb8\xb1\xf0\x29\x8b\x65\x1c\xe5\x82\x33\x9d\xb5\x68\xa3\x44\x98\x19\x80\x9a\x55\xb7\x6a\xfc\xd9\x1d\x01\x8f\xc8\x16\xaa\x59\x6f\x0d\xad\x9a\x8d\x1b\x24\x7c\x87\x29\xc3\x93\x81\xf5\x83\xb4\x60\x65\x35\x6b\x64\xc9\x26\xf8\xe1\x8d\x6e\x24\x7f\xae\xf0\xb9\xe4\x8f\x19\xa6\x96\x16\x98\x27\xc9\x77\x1c\x4e\x44\xb8\xf2\x70\xb1\x64\xea\x73\xc4\x66\x7c\xf3\x94\xd0\xce\x04\xc7\x63\x4a\x04\x03\xd6\x2c\xcc\x3a\x56\xcc\xa6\x62\xd5\xcc\x6e\x29\x8f\x06\x61\x38\xca\xfb\x1c\x01\x19\x96\x45\x84\xb9\x06\x50\xcb\x24\xfa\xf6\x0f\x86\x5c\x48\x91\xbb\xcf\x0e\xf4\x97\x7d\x56\xab\x81\x70\xc8\xea\xee\x68\x1b\x89\x30\x66\xd5\xaa\x1d\x8a\x33\x8b\x21\x1b\x41\xbe\xc3\xdd\xd2\xb0\x88\xae\xd4\x30\x25\x01\xdb\xc5\x40\x55\x5c\xdd\xf6\x50\x6c\x2c\x79\x52\xcb\x4c\xaa\x59\x95\x88\x56\xac\x5a\x38\x74\x47\x5b\x13\x3c\xf5\x97\x01\x4b\xbe\x27\x3a\x87\xba\x0b\x1a\x3f\x45\x24\xb4\x2d\x58\xb1\x84\x71\x90\xca\x14\xa6\xb1\x89\x57\x2b\x1b\x83\x9a\x55\xb9\x5c\xb2\x8a\x55\xb3\x6d\x1f\x31\x30\x90\x84\xe1\x0b\x9a\xf0\xb2\x08\xe6\xb0\x82\x35\x37\xe4\x19\xbd\xbf\x82\x6c\x65\x0b\xb6\x0a\xe0\xbb\x1c\x67\x64\x48\x1e\x56\x6e\x23\xc4\x06\xcc\xbb\x5d\x89\x2c\x14\xfa\x7c\xfb\x1f\xa3\xdb\x98\xf9\x94\x79\x4f\xf0\x0a\x06\xe8\x09\x86\x4b\xf4\x0a\xdb\xd6\x81\x05\xb7\x5d\x00\xc7\x85\x77\x0a\xa8\xfe\x58\x60\x05\x27\x02\xfa\x77\x12\x7a\x86\xce\xb0\x6d\xb1\x54\xff\x0f\xe0\x54\x7c\x6f\x1e\x4a\x80\x77\xe2\x4d\xbd\x5c\xc9\x8a\x9a\xf2\xed\x52\xe4\xf5\x73\xc7\x32\x00\xde\x08\xa8\x5b\x09\x74\x21\x5e\x56\xf2\xe5\xbd\xc8\x11\x66\x8e\x0f\x9e\x4f\x2c\x00\x8f\x51\xf3\x87\xe1\xa3\xf3\xe6\xed\x6a\xd4\x84\xd7\xe8\x14\xdb\x43\xeb\x91\x05\xad\xa6\x05\x79\x41\xd6\xca\x1a\xc1\x6d\x57\x94\xf1\x0a\xc9\xfb\xb1\x05\xad\xaf\xe0\x69\x41\x91\x67\xd1\x5b\x1c\xbe\x52\x92\x19\x3c\x93\xfd\x91\x2d\x78\x59\x06\x6e\x01\xf8\x95\x00\xf4\x3c\x09\x79\x54\x84\x47\xca\x54\x48\x67\x93\xaf\xc6\x3b\x9f\x89\x2d\xff\x0a\x3e\x11\x25\x40\x59\xc0\x5b\xf1\xa2\xaf\x2d\xe6\x29\xaf\xcb\x42\xf8\x66\x84\x06\xd9\x3b\x95\x4f\x5c\xea\x42\x1a\x97\xea\x26\x64\x4f\x5e\xcd\x9c\xa4\xf2\x37\x8f\x3f\x30\x32\xd7\x37\x84\xd3\x6a\x95\x0e\x5b\xa3\xe4\x96\x71\x48\x98\x0d\xc0\x0a\xfe\x24\xda\xf3\x48\x36\xe5\x29\x47\xf8\x0f\x8f\x46\x4d\x78\xa2\xb1\x3d\x82\xdb\x8e\xf8\xf6\x5c\x7c\xf3\xeb\xbf\x1c\xd5\xbf\x7f\x24\x46\xe4\x85\x80\x19\x5a\xbe\x05\xad\x5f\xac\x11\x1c\x5a\x47\x16\xb4\xbe\xb7\x46\x50\x8c\x52\x32\x42\x32\xff\x33\x9e\x5f\x66\x1f\x35\xe1\x2f\x65\x79\x93\x11\x7d\x23\x1a\x26\xef\x9c\xe6\xef\x8f\xc5\xbb\xbc\x70\x9a\xbf\x7f\x21\xde\xf5\xa5\xd2\x3c\xe5\x6b\x91\x22\xef\xd9\x8c\xe8\x84\x84\xfa\xc3\xcf\xe2\x43\x34\x9d\xc6\x98\xa9\x71\xfc\xc6\x80\x95\x29\x9f\x89\x14\x24\x5f\x3e\x17\x04\x21\xbd\xc5\x16\xfe\x18\x5b\x00\x7e\xc7\xdb\x7f\xce\xea\xe7\xb4\x72\x7e\xbd\xdb\x3d\xbf\x3e\x72\xce\x97\x6e\x6f\xd7\x39\x5f\xb6\x1c\xbe\x34\xf1\x3f\x47\xfc\xb7\xb5\x2b\x7e\xf7\xc4\xef\x33\xfe\xdb\x7d\x76\xbe\x6c\x3b\x8e\x33\x6a\xc2\x2f\x55\xc7\xcf\x99\x05\xad\x73\xca\x91\x55\xb1\xa0\xf5\xef\xff\x31\xff\xf9\x17\x16\xb4\xfe\xdf\xff\xee\x8f\x16\x1c\x5a\xff\xe1\x8f\x7f\xb4\xa0\xf5\x1f\xfe\xf8\x5f\x70\x08\x59\xaa\xa5\x1e\xf6\xc4\x87\x7f\xc5\x7f\xff\xee\x9f\x5b\xd0\xfa\x8f\x7f\xfc\x63\x3a\x11\xfe\x20\x5a\x1e\x0b\x89\xae\xb2\xf0\x19\xc3\x94\x53\xf1\xef\x79\xeb\xb7\xeb\xe7\x4d\xaf\xfe\xb7\xc3\xfa\xf9\x0f\x3f\xde\xd6\xff\xd1\xf9\xf5\x91\x5b\x3f\xbf\x3e\xea\x9f\x5f\x1f\xed\x9d\x5f\x1f\x3d\x3e\xbf\x3e\x7a\x72\x7e\x7d\x74\x7c\x7e\xfd\xd8\x39\xbf\x7e\xec\x9e\x5f\x3f\xee\x9d\x5f\x3f\x7e\x7c\x7e\xfd\xf8\xd9\xf9\xf5\xd3\xfe\xf9\xf5\xb3\x3e\x6f\x81\x2b\x7b\xdb\x12\x2f\x6d\xf9\xd2\x3e\xe6\xbf\x1d\x57\xbc\x74\xdb\xe2\xb7\x2b\x5f\xf8\x17\x77\x4f\x80\x75\x38\x26\x5a\x5d\x89\xae\x7e\xbf\xcb\x7f\xf7\x3a\xfc\xe5\xf1\x33\xfe\xe5\x58\x7e\x39\xee\x4b\x84\xf1\xd2\xda\x8e\xd3\x16\xbf\xbb\xe2\xa5\xe5\xf0\xdf\xb6\x73\xbe\x7c\xf6\x94\xd7\xf9\xec\x69\xfb\xd9\xf9\xf2\xd9\x71\xa7\x2b\x7e\x7b\xa3\x26\xfc\x56\xa1\x78\x5b\xb0\x0a\x4e\x5b\x9e\x05\xad\xbf\x15\x4f\x43\x0b\x5a\x3f\x70\x94\xfe\xc8\x91\xcc\x49\xf4\x1f\x89\xf4\x7f\xff\x3f\x70\xfc\xff\x4b\xfe\xe5\xdf\xff\x8f\xfc\xf1\x7f\xe2\x3f\xff\x33\xff\xf9\x5f\xf8\xcf\xbf\xe6\x3f\xff\x2b\xff\xf9\x3f\xf8\xcf\xff\xcd\x7f\xfe\x9d\x05\xad\xff\xe7\xbf\xe5\x3f\xff\xa7\x1c\xb1\xff\x52\x0c\xcc\xbf\x14\x05\xfe\x87\x3f\xfe\x6b\xf1\xf6\x6f\xe5\xdb\xdf\xfd\x9d\x18\xae\xff\x5a\xbd\xfd\x37\xe2\xed\x9f\xc9\xb7\x7f\x22\xf2\xfd\x57\xff\x5c\xbe\xfd\x53\x31\xee\xff\xfd\xff\x2e\xdf\xfe\xd9\x3f\xe5\x6f\xff\xea\xdf\xc9\xb7\xff\x4b\x7c\xfb\x37\xf2\xed\x3f\xfe\xf1\xef\xc4\xe0\xff\x67\xea\xed\x3f\x17\x6f\xff\x82\x77\xe1\x3f\x8a\xca\xff\xd3\xff\xf6\x6f\xc5\x2f\x6f\xe7\x7f\xfa\x37\xff\x58\xfc\xfe\x93\x94\x52\xbe\x17\x94\x92\xec\x59\x33\xc4\x8e\xb1\xc1\x11\x2d\x00\x19\x16\xb3\xa3\x2e\x67\x07\xc5\xc8\x16\x4c\x7e\x11\xc5\x8c\x46\x8b\x19\xcf\xc2\x13\x26\xd1\xf2\x32\xc0\x95\x34\x3d\xb6\x80\x08\x83\x2c\x78\x8c\x62\x32\x44\xbe\x9e\x87\xf2\x35\xc2\x7a\xc1\x38\xf1\xe7\xf8\x15\x3d\xd1\x75\xfa\xf2\xc3\x3b\x3f\x20\x93\x33\xff\xca\x02\x30\x4e\x41\x35\x50\x20\x0b\x73\x64\x59\x4b\xcc\xc9\xdc\xad\xef\x8d\x9a\x70\x8c\x15\x19\xb8\x16\xb4\xf6\x0c\xc6\x32\x11\x40\x8e\x00\x9a\x69\x20\x27\x07\x34\xcd\xb4\xca\x02\x70\x81\xf5\x9a\xa8\x12\xe6\x18\x39\xf0\x1d\xff\xb9\xc2\x68\x78\x1b\x90\x10\x7b\x2e\x1c\x47\xc1\x72\x1e\x7a\xee\x6a\x04\x2f\xf9\xb7\x1b\x8c\x86\x23\x78\x81\xcd\x10\xb3\x7c\xfd\x6e\x88\xc5\xfa\xf5\x32\xd0\xe1\x5f\x8d\x94\x0a\x09\x2b\x71\xc1\x79\xc3\x13\x3f\x7c\xc4\x2a\x02\xac\xb2\xf0\x69\x4c\xc2\xab\xca\x94\x46\xf3\x0a\xe5\x99\xce\x2d\xab\x66\x14\x52\x7b\x64\x35\x1e\x81\xad\x00\xc5\x43\x23\x75\x94\x09\xba\x68\x08\x02\xf1\xf2\x52\x9e\x09\xda\xef\x30\x9c\x9b\xc1\x93\x8e\x0d\xb8\xaf\xf0\xda\xe7\x6b\x15\x31\x4f\xb6\xb6\x50\x2b\xca\xbb\x30\xb7\x31\x1c\x8e\xa0\x65\x41\x71\x17\x25\xcc\xc9\x32\x49\xc1\xf9\x68\x86\x49\x29\x6a\x01\xd4\x32\x37\xe4\x52\xb6\x87\x21\xb9\x0a\x23\x8a\xf9\xd6\xcf\x33\x63\x4b\x9d\xe2\xec\x5a\xaa\x72\x4b\x59\x1c\x0a\x19\x9c\x67\x56\x32\xb3\xc7\xcc\x72\xe8\x2a\x1b\x0f\x30\x57\x86\x94\x86\xa1\x21\x04\x7b\x78\x95\x89\x10\xa8\xcf\xab\x60\x88\xae\x84\xb5\x0d\x17\x79\x13\x2f\x2c\x61\xfb\x43\x11\xab\xbb\xfb\xdb\x57\x78\x48\x47\xfb\x80\xd6\xeb\x22\x35\x44\x92\x8c\x6c\x91\x91\x8e\x40\x83\xbf\x6a\x9a\x0a\x1b\xf2\x61\xb5\x4f\x0f\xd8\x3e\x70\x1d\x61\x33\x69\xec\x8b\x29\x18\x70\xc9\x97\x84\xb8\x56\x83\x1a\x1a\xb9\x20\xc9\x59\xab\x71\x81\x59\x6b\x0b\x44\xdb\x50\x08\x0d\xaf\xa6\xaf\xb0\x19\x67\xea\x25\xef\x3c\x0c\xd1\x4b\x23\xbc\xa6\x12\x32\x6f\xd5\x62\x8a\x45\x68\x06\x8f\x66\x1a\x4a\x75\x43\x21\x0e\x27\x09\x28\x93\xa0\x61\x71\x9f\x0c\x0c\x1e\x09\x9c\xcf\xf1\xc1\x25\xbe\xbb\xb3\xe7\xf8\xf0\x12\x57\xab\xf6\x25\x46\x73\x2c\xa7\x13\x80\x37\x58\x46\xab\xcd\xd0\xcb\x13\x83\x50\xdf\x66\x34\x01\xfc\x4d\xfa\x0b\xa8\x38\x92\x62\x52\x32\xf4\x1a\xdb\x60\x9f\x6d\x23\xe4\xef\x03\xac\x2f\x5f\x52\xe9\x05\xe1\x44\x5f\xeb\x62\x0c\x1f\x6d\xc6\x5b\xf5\x4e\xb4\xcd\x8e\xd8\xc0\xf7\x24\x59\x03\x5e\xa8\x30\xd2\xca\x7b\x2c\x08\xd7\x17\x11\xe7\x0f\x2e\x75\x21\x17\x7c\xc0\x6c\x8c\x4e\xb0\x0d\x00\x92\x39\x65\x91\x0c\x3d\xe7\x69\x49\x69\x6f\x8d\xb7\x08\xbd\xd0\x6f\x03\xfb\x1d\x46\x18\x06\x88\x42\x3b\x46\x8c\xa7\xd9\x4b\x11\x1e\xff\x1a\xdb\x8f\x5e\x92\x78\xee\xb3\xf1\xac\xc2\xfc\xab\x8a\xf5\xa8\x16\xd7\x1e\x59\x95\x6d\x84\xf8\xf3\x92\x6f\x4a\x20\x9f\xe3\x00\x62\x94\x55\x5a\x49\x82\x17\x72\xa4\x7f\xa5\x04\xc7\x18\x8e\x67\x24\x98\x50\x1c\x7a\x81\x92\x21\x81\x67\xcf\xb1\x08\x3e\xe8\x03\x00\x2f\x70\xbd\x0e\xb1\xea\x04\x43\xbe\x08\x45\x78\x81\xab\xd5\x23\x6c\xcf\x78\x25\x2b\xb3\xcd\x0c\x32\x44\x65\x01\xfc\xd1\xe7\xd8\xd7\x59\x8b\x30\x97\xba\xc6\x4b\xec\xfc\x64\xe0\x43\xa0\x80\x8a\x72\x8a\x7b\xa1\x78\x47\x12\x59\x57\x35\x9f\xef\xb8\x12\xb4\xaf\x55\x9b\x0c\x57\x66\xb0\xc4\xb0\xbb\xad\x76\x7e\x0a\xce\xb1\x70\xc5\xe7\x82\xc5\x1c\xd7\x6a\xe2\x4a\xa8\x0c\x0a\x6e\x00\x80\x54\x36\xf8\x73\x6c\xa7\x43\xf9\x6d\xda\x11\x9d\x3e\xb0\xdd\x56\xb7\xb0\x82\x18\xf1\xad\x93\xaa\x20\xce\x56\x70\x01\x00\x8c\x0d\xfc\x06\x28\xe2\x38\x2e\x41\x89\xde\xa6\x29\x9c\x64\x87\x54\x8e\x48\x66\x74\xc4\xe8\xea\x21\xca\x75\xed\xf2\x5e\x54\x6a\x07\x9d\x72\x24\xc3\x25\x1c\xc3\x09\x9c\x65\xa6\xd7\x6f\x8e\xe7\x4e\xa7\x0c\xcd\xb0\x0c\xcd\x4f\x34\x9a\xcd\x72\x8c\xed\x99\x5e\x51\xed\x39\x86\x3d\x30\xb0\x03\x94\xec\xf9\xe6\xb8\x86\x7a\xc0\xb3\x83\x6c\x89\x6f\x01\x80\x41\xbe\xc4\x25\xef\x7f\x49\xf3\xc6\x66\xf3\xc6\xeb\xcd\x1b\xab\x4e\x4f\xd0\xe7\xc6\x2c\x99\x15\xe2\x3e\x83\x6f\xbe\xd9\xcd\x75\xa1\x25\xd1\xcd\x77\xc1\xbc\xf9\xad\x75\x84\x7f\x95\x22\xdc\x8e\x4a\xb8\x9e\x70\x3e\xe6\x35\x30\xce\x7f\x6d\x8a\xde\xe8\x86\x09\xdb\xeb\x7d\x2a\x59\x31\x93\xac\x98\x02\x28\x21\xe4\x49\x0e\x43\x7e\xd2\x4a\x73\xc6\x47\xa5\x33\xde\x57\xdb\x63\xc8\xf8\x56\x3e\xf6\x22\x28\x8e\xfa\x26\x52\x07\x10\x7b\x3e\x1b\x2c\xec\x08\x78\xb7\xab\x2c\x2b\xc8\x72\x27\x71\xf3\x6f\x11\x7f\x4a\x18\x3f\x55\x0d\x56\x23\x7c\x44\xaf\x4e\xf9\x96\xdb\x02\xbc\x8b\x36\x45\xdb\x0e\xd0\xb7\x23\xf8\x29\x25\xfe\x84\xd7\xab\x3a\xb2\xa3\xec\xdc\x33\x1a\xb4\x44\x63\x34\x14\x93\x63\x24\x20\x96\x70\xc9\xdb\xb3\x54\xed\x59\x0a\x9f\x45\x00\x97\xaa\x82\x71\x3a\xea\xe5\x8c\x64\x62\x32\x92\xc9\x3a\x23\x99\xe4\xda\xf7\xda\x8e\x84\x61\x73\x19\x7f\x78\xc8\xf3\xfd\xec\xd6\xe0\x03\x70\xfa\x1b\x71\x82\xf8\x83\x38\x41\x60\x4e\xb5\x60\x7d\xaa\xad\xcd\xdb\x44\x21\x63\x4e\xa2\x0e\xe0\x13\x5a\xa9\x34\xf8\x34\xea\x00\xcf\x5e\x66\x4b\x7b\x03\xd2\x21\x95\xca\x8e\xe2\x42\xa4\x1e\xa4\xa4\x90\xc7\x9c\x94\x97\xf9\x36\x8d\x37\xf0\x92\x89\xd9\xc1\xc9\x7a\x07\x27\x09\xf7\x30\x79\xc9\xb4\x70\xf4\x3e\x2d\x2f\x89\x37\x52\x88\xbc\x49\x8e\xcf\x41\xfe\x13\x0b\xb6\x12\xa0\xc7\x86\x1c\x15\xa0\x2f\x84\x70\x13\xa4\x6c\x26\x90\x6c\x26\x96\xb3\x36\x00\x25\x59\x24\xdb\x89\x13\xb6\x63\x53\x24\x17\x56\x73\xb7\x44\xf9\xa6\xc5\x8b\x0d\x19\x84\xc1\x25\xa2\xb0\x78\xc1\xf5\x85\x6a\xee\x8c\xcc\x31\x54\xaa\x19\x6f\xb9\xce\x94\xec\x31\x5a\xc2\x09\xba\x5d\xc1\x71\xa2\x4f\x8c\xb2\x07\x16\xfa\x34\x41\x1d\x75\xeb\xd3\x89\xa1\x33\x52\x67\x13\x9f\x5b\xde\xa4\x81\xa9\x8f\x3a\x42\x2b\x28\xad\x28\xbc\xae\x7c\xd1\xd6\x22\xda\x5c\x43\x84\x43\x97\xba\xfe\x1b\x9e\xef\x06\xfb\x14\xb5\x24\x6c\xab\x2e\x0e\xe7\x2d\xa1\x7b\xc4\x94\x8c\x33\xe0\xdf\x69\xab\x28\xf5\xf7\x8d\xfa\x4b\x2d\xaf\xf8\x40\xfd\xc7\xef\x9a\xcb\xe6\x9b\x26\xfd\xb1\x62\xf3\x5a\x80\x56\x51\xc5\x15\x9f\x62\xd3\x42\x00\x4f\x60\x65\x19\xe3\xca\x8f\x37\x3f\x8a\x70\x15\xd8\x9f\x58\x40\x56\xfa\xb3\xaa\xe4\x0f\xa5\x95\xfc\xdc\xfc\xc3\x8f\x15\xfb\xe7\xa5\x4f\x19\xde\x58\x87\x2e\xf2\xa5\x2a\xf2\x05\xef\xfe\x3c\x0a\xd9\x0c\x0d\x93\x0e\xc3\x04\x09\x50\x61\x0c\x4a\x7c\x42\x8d\xc9\x91\x38\xa0\x30\x11\xf3\x5e\x15\xf8\x4d\x69\x1b\xdf\x37\xbf\xf9\xb1\x62\xbf\xc7\xf8\xed\x43\x1a\x38\xe1\x0d\x9b\xf8\x37\x85\xcd\x5a\xaf\xfe\xa9\xaa\xfe\x99\xfa\x7b\x55\xda\x8c\xa7\xcd\x67\xcd\xab\x1f\x2b\xf6\xc4\xbf\x79\xc0\x60\x4c\xd6\x06\xe3\x98\x37\x8c\xf7\x82\x37\x4e\x11\x9b\x32\x1a\xba\x9f\xda\xb0\xb0\xa3\x61\x07\x9d\x12\xf3\x8b\x1f\x71\xa3\x81\x31\x56\x78\xba\xa7\x89\x16\xd8\x4a\x5b\x32\x2c\x19\x29\x3d\x82\x1c\x65\x9d\x0c\xca\xc6\xf7\xb5\x65\xdc\x68\x8c\xc7\xe3\x3f\x49\x5b\x7c\x8e\xd4\x59\xb4\xa4\x6e\x0b\x6d\x3b\xe6\x97\x4b\x35\xa0\x8f\x4b\x07\xf4\xb2\xf9\xf8\xc7\x8a\xbd\xc0\x94\x44\x93\x07\x8c\xa8\xbf\x36\xa2\x33\x5d\xf9\x93\x9b\x71\x80\x91\x35\x73\x5b\x16\x94\x29\x0f\xa4\xbe\x2f\xf2\x25\xb4\xda\x1f\x58\xc2\x97\x6b\x6d\x70\x3f\xb0\x84\xb7\x6b\x6d\xe8\x7c\x60\x09\x3f\x29\x54\xff\x5e\xfd\x7d\x52\x8a\xf2\x9f\x9a\xbf\x6f\x3e\xf9\xb1\x62\xf3\xc2\x1f\x80\xf2\x59\xf3\x8b\xe6\x97\xcd\xb7\x6b\x88\x9f\x0b\xe6\x43\xc2\x25\xc3\x0f\x6c\x62\xcc\x73\xc4\x78\x1c\x85\x93\x07\xe6\x38\x55\x9d\x39\x2a\xed\xcc\x69\xf3\xe8\xc7\x8a\x2d\x0b\x7d\x40\x67\xe2\xb5\x6e\xfc\xc2\x1b\xc5\xe5\x93\xef\xa3\x10\x9f\xf8\x5c\xf0\x3b\xe8\x24\x4c\x41\xd9\xf3\x19\x4d\xfa\x5e\x35\xe9\x95\xfa\xfb\x4e\xfd\xfd\x5a\xfd\xfd\x56\xfd\xbd\x2e\x6d\xf2\xf7\xcd\x57\xcd\x77\xcd\xaf\x9b\xdf\x36\xaf\x7f\xac\xd8\xba\xea\x07\x34\xfe\x17\xa3\xf1\xa6\xed\x19\x9c\x64\x76\x05\xb4\x60\x57\x10\x3f\x78\x57\xc0\x97\xfc\x57\x94\x2f\xfa\x0f\xda\x19\xc4\x25\x3b\x83\xb8\x74\x67\x30\x46\x13\x34\x14\xc2\xb2\xdc\x19\x8c\xe1\x98\xb7\x69\x8c\xf4\x4e\x40\xee\x0c\x0a\xf6\x83\xe5\x3b\x83\x99\xb9\x33\x98\xad\xef\x0c\x66\x6b\x3b\x83\x98\x4b\x64\x9f\x60\x67\xf0\x40\x75\x4c\xba\x43\x80\x8b\x44\x0a\xfc\x55\xfb\x03\x40\xa6\xb6\x96\x96\xf9\xb3\xa9\x2d\xc8\x7f\xfb\x35\x1a\x83\x7c\x59\xfa\x0c\xb3\x58\x6b\xa0\x0f\x38\x4b\xb4\x06\x5f\x88\x9b\x48\xd4\x7e\x21\x7b\xf4\x99\x2b\xcf\x6d\xcb\x02\x73\xe7\xa3\xbc\x5c\xb7\xbd\x5e\xf0\xd7\x20\x11\x9a\x1f\xd6\xf7\xa5\xd9\xf7\xe5\x7a\xdf\x97\x45\x65\x89\x3d\x49\x72\x32\x9b\x6b\x71\x5f\x6e\x4c\x92\x73\x5b\xde\xd4\xfe\xfa\xfe\xe4\xe7\x0d\xfb\x93\xef\xf0\xc7\x4c\x12\x31\xfa\xc6\x34\x11\x47\x34\x33\xb1\xb9\x98\xa2\x9f\xb3\x3a\x8b\xa9\xdc\x4c\xcc\xe4\x64\x9f\x02\x28\x21\xe4\xe6\x61\x86\xfc\xad\x59\xd2\x98\x07\x4c\xbb\x85\x39\xed\x16\xeb\xd3\x6e\x91\x9b\x76\xb9\x10\x4c\xd1\x06\xdb\x01\xd2\xb8\x6c\x48\x62\x82\xf2\xcf\x99\x38\xce\x48\x89\x8f\x0d\xac\xb1\xaf\xc8\xc2\xb3\x12\x02\xd1\x17\x2e\xa9\x61\xa0\x03\x3a\x6c\x8d\x3c\x07\x2a\x0b\x4c\x2f\x2a\x31\x89\x57\x77\x55\x34\xc8\x44\xdc\xea\x28\x8a\x81\x04\xb1\xc4\x00\x31\xb9\xc3\xa2\x42\xc2\x0a\x96\xaa\xea\xa7\xcb\x45\x40\xc6\x3e\xd3\xb6\xb4\x15\xeb\x51\x8d\xd6\x1e\x59\x1c\x44\xb6\xb4\x82\xa5\x45\x89\xc7\x3f\xbd\xc7\x36\x30\x15\xd8\x43\x3a\x42\xea\x86\xa8\x10\xea\x7a\x3c\xb2\x82\x58\x9a\xdd\x6b\xab\x07\xa1\xc6\x18\xc3\x59\x29\x2b\x92\x16\xa5\xfa\x75\xeb\x2f\xf7\x2d\xb1\x20\xfd\x10\x9e\xf9\x57\xce\x2f\x95\xd5\x46\x31\xbf\xd4\x26\x1d\x25\xfc\xf2\x9b\xdf\x9c\xab\xdd\x0a\xb6\xc6\x79\xc5\x04\x7d\x9d\xe5\x15\x13\xc9\x2b\xc6\x92\x57\x4c\x00\x94\x10\x72\x48\xc7\xc8\xdf\xfa\xcd\x96\x68\xba\xf1\x6a\xe9\x1c\x97\x90\x28\x4c\x27\xbe\x9a\xe8\xec\x4f\x35\xd1\x65\xfd\x9f\x6a\xa2\x8f\x41\xfe\x8c\xe9\x2f\x76\xa2\x3f\x70\x32\x67\x14\x6c\xed\x62\xe2\xa0\xc8\xfa\x5d\xd9\x0c\x9e\x18\xea\x35\x45\x1d\x25\xcb\x45\xb4\x0c\x27\x59\x29\xd8\x74\x0a\xfe\xc9\x38\x0f\x85\x21\x24\x09\x5b\x51\xe7\xa1\x42\xc4\x8d\x58\x4e\xc4\x55\x21\xb6\xf8\x04\x21\xe8\x4b\x43\xed\x46\xd0\x1f\x32\x6f\xbf\x37\xde\x7a\x6b\x87\xdd\xa2\x97\x04\x59\x07\x49\x2f\x49\xb6\x97\x4b\xde\x66\x92\x4e\x3e\x22\x27\x5f\xa8\xef\x39\xfd\x13\x54\x2f\x87\x37\x44\xfe\x56\x98\x5b\xb7\xc7\x76\xb8\x89\x0c\x05\x22\x35\xae\x94\x7e\x93\x23\x2c\xcc\xb4\x38\xcc\xb4\x38\xcc\xb4\x38\x44\x4f\xc5\x4c\x09\x53\x04\x84\x12\x01\xea\xa2\xd7\x10\x7c\x44\x71\xb2\x43\x94\x93\x6a\x96\x7e\xc6\x36\x05\x62\x9e\x15\x38\xb2\x3e\xcd\x90\x49\x86\x78\x85\xd6\x56\x9e\x7e\x87\xf2\xa4\x3b\xa9\xef\x45\xe6\x4d\x9c\x8c\xcb\xd3\xc7\x50\x44\x87\xa5\xca\x7e\x44\xe0\x90\x42\xca\x65\x39\x2a\x91\x5c\x32\x58\xa1\x39\x58\xe1\xda\x60\xc1\xfc\x10\x59\x07\xd6\x86\x8d\x4a\xd2\xbb\x13\xbc\xb6\xca\x8e\xe1\x64\xbd\x97\x25\xad\x8a\xcc\x56\x45\xeb\xad\x8a\x92\x5d\xe1\xf7\x86\x60\x1b\x98\xeb\x83\xd5\x3c\x2c\x52\xb1\x8f\x91\xb0\xd6\xd5\x2a\xf6\xdc\x01\xe1\x54\x1f\x10\x0e\x28\x8a\xd0\x50\x35\x7c\x64\xa0\x13\xac\xa1\x56\x0f\xf7\xa4\x54\xbf\x9d\x3f\x63\x9f\x18\x06\xc6\x09\x17\x49\x50\xf7\x3c\xcf\x3f\x4c\xa4\x95\xe0\x8b\x9a\xf8\xa2\xeb\xf8\xd2\x0d\x0d\x53\x7c\x0d\xec\x5e\xab\x6c\xfa\x1e\x96\x4d\xdf\x77\x9a\x79\x18\x14\x11\x3e\x84\x1e\x5e\x6c\xea\x94\x75\xd0\x2c\x39\x0d\x39\x68\x96\x9e\x86\x5c\xfd\x25\x74\xeb\x59\xae\x5b\xf2\x30\x37\xb5\x85\x10\xfc\x29\xe4\x4f\x24\x9d\xd3\x11\xfa\xc6\x98\xc5\xc7\xca\x93\x5e\x34\x58\x36\x56\x4c\x00\x33\xa1\x64\x26\x5c\x03\x3d\xfb\x23\x31\xfb\x89\x39\xfb\x09\x24\xbc\xb1\xaa\x5b\xfa\x4c\xe4\x70\x8e\x1f\x58\xf8\x2b\x3d\xcd\x06\x21\x22\x68\x48\x60\x24\xa7\x41\x08\xc3\x04\x21\xf2\x79\x23\x37\xfd\xfb\xde\x79\x83\xf7\x6b\x8a\xa6\x6b\xc7\x61\x4c\x1c\x87\xd1\x8d\x76\x22\xef\xb3\x52\xc4\x2f\x85\xcb\x43\x4a\x59\x9d\x7e\x19\x23\x68\x96\x31\x82\xb3\xcc\x8c\x79\x56\xa0\x4e\x0b\x1f\x6c\xd5\x72\x9a\x6d\xed\x1b\x9c\x31\x69\x08\x93\x59\x20\x44\x9e\xcc\x76\x88\xa5\x35\x4b\xef\x16\x35\x47\x78\x87\x8b\xc8\xe7\x17\x61\x75\x66\x98\x73\xe5\x3d\xe3\x12\x0b\x3c\x3c\x37\xc5\x72\x79\x93\x64\xc6\x0c\x2b\x11\x27\xc4\xeb\x56\xf6\x2d\xc1\x70\x6a\xa8\x65\xf4\xf7\x25\x80\x86\xc9\xdb\xe3\x32\x11\xaf\xbd\x57\x36\x2a\x8f\xca\x46\xe5\xa7\x64\xe3\x58\x26\x01\x3e\x2d\x9c\x24\xa4\x90\x8e\x73\x8c\xed\xe4\x03\xa5\xbd\x5f\x59\xd5\x9a\x64\x57\x82\x0f\x62\xe2\x83\xac\xe3\x43\xce\x5b\x4e\x91\x43\x81\xdf\xd1\xc3\xb6\x29\x89\x7c\x28\x1e\xa4\x2d\x8d\xd9\xbb\xe7\x85\xbd\xa3\x85\xbd\xcb\x8d\xd2\x0b\x90\x0c\x53\xb1\x4d\xce\xa7\xad\x6a\xdd\xb6\x27\x25\xbe\x2f\x4c\x7b\x4b\xdd\xd3\x67\x1f\x5f\xdf\x2f\xf7\xf4\xec\xd7\x15\xbd\xa9\x27\x5f\x9b\xd3\x88\xe4\xcd\x3f\x99\xc9\x3a\x04\x07\x62\xac\xd0\x1a\xb0\x58\x59\x43\x4c\x65\x0d\x59\x57\xd6\xa4\xeb\xbd\x79\x2a\xa1\xf4\x24\x00\x26\x76\xd8\xd2\x2c\xe9\xed\xfd\x8a\x87\x0f\x33\x3f\xa4\x70\x89\x22\x98\xb8\x48\xe5\x4c\xb5\xc8\xc4\xd3\xc2\xe2\xf2\x1e\xe3\xc3\x87\x88\x29\x3f\x7f\x20\xa2\x0b\x34\x65\x79\x99\x4d\x4a\xef\x6e\xd9\x9e\x02\x95\xed\x29\x3e\xd3\x7b\x0a\xb1\x9b\x4c\x15\xd1\x14\x85\x68\x98\x4c\x75\x25\x5f\xdb\x1b\x16\xd3\x54\x15\x20\xc8\x22\x3d\xf8\xf9\xed\x88\x43\x29\x85\xff\x9e\x11\xc7\x37\x38\x67\x88\x2a\xa5\x8c\xef\x0a\xa7\x3d\x2b\x9c\xf6\x39\x83\xe6\x2f\x41\x56\x78\x30\x3e\x7d\x9e\xa9\xfa\xb3\xe2\xaa\x7f\xff\xf1\x55\x7f\x5b\x5e\xf5\x1f\x32\x55\x7f\x9e\x95\xaf\x38\xeb\x5b\x13\xdb\xbf\x29\x11\x49\xbe\x31\x0c\xe1\x3f\x56\xdc\xfb\x3e\x2b\x40\x7d\x57\xb2\x3f\x32\x04\xbe\x52\x8d\x56\xbd\x4c\xb4\x60\x98\xb3\xf6\xa4\x7e\x79\x94\x93\x4a\x80\x98\xad\x4b\x80\x36\x41\x21\x18\xd0\x41\x9d\x78\xc4\x73\x1e\x2c\x0e\x62\x9c\xed\xce\x97\x05\x3e\x01\x69\x57\xac\x47\x8f\x4a\xf6\x7b\x8f\x1e\x95\xee\xf7\x42\xbc\xae\x9f\xb3\x1e\x59\xaa\x5d\x9c\x53\x80\xe2\xb6\xd1\x5c\xdb\xfe\xb0\xb6\x67\x83\xf1\xa7\x11\xe0\xb8\x78\x1b\x96\x30\xcf\x9c\x31\xb1\x60\x9f\x99\x7d\x49\x58\x48\xde\xe1\xfa\xbe\x24\x34\x79\x93\x4d\x90\xd4\xb7\x21\x84\xec\x08\x85\xe0\xee\xce\x12\x7a\x8f\xe8\xee\xce\xba\xd5\x0f\x2b\xf5\x10\x32\x1b\xe8\x18\x29\x51\x4e\x01\x59\xc8\x81\x33\xda\x8e\x0d\xa4\xbe\xca\x48\xf4\x62\xbb\x17\xf1\x39\x54\x32\xd2\x71\x76\xa4\xe3\x82\x91\x8e\x37\x4a\xa4\x71\x21\xb2\xe2\x75\x89\x74\x3f\x96\xd3\x37\x92\xd3\x37\x06\x7f\x01\x4d\xb2\x09\x8a\xd6\x10\x49\x04\x22\x23\xb0\x51\x6e\x8e\x4c\x32\x8c\xd6\xc9\x30\x42\x7a\x49\x92\x73\x3d\xca\xef\xef\x6a\x24\x31\x9d\x14\xdd\xe5\x13\xe8\xa3\xce\x00\xd6\x85\xb9\xdf\x6f\xd2\xf0\x7c\x5a\x72\x5f\xf7\x35\xdf\xb6\xe5\x14\xc0\x9a\xea\x71\x96\xd8\xf1\xdd\x1d\x65\x49\x54\xa3\x6a\x55\xce\x08\x0c\x56\x76\x08\x3e\x78\x1e\x68\x8e\xba\xee\x6a\xa6\x79\xc5\x79\x58\xc6\x2c\x08\x4e\x36\x12\x85\xf3\x28\x41\xe7\xb7\x1b\x39\x28\x17\xbf\x59\xba\xdb\xa0\x5a\x06\xfa\xc8\xc5\x28\xca\xb1\xc8\xef\x3f\xac\xf2\x52\x8e\xb7\xae\x0b\x2b\x59\xc5\x42\x73\x15\x0b\x0b\x56\xb1\x30\xd1\x79\x6f\x52\x27\x45\xe8\xb3\x54\x23\xfe\x67\x55\x0b\x6d\x56\x8a\xfd\x83\xc1\xc2\x27\xd3\x8e\x2d\x30\x48\x0c\xa1\x3e\xb2\x08\x3f\x47\xe4\x9c\x86\x37\xd1\x6b\x67\xb7\x6c\x7a\x3b\x65\xb3\x3b\xf8\xff\xd8\x7b\xbf\xfc\xb6\x71\x6c\x61\xf0\x5d\xab\x90\x38\x69\x15\x10\xc1\x8c\x64\xa7\x52\x55\x4c\x10\x8d\x3b\x71\x3a\xe9\x8e\xe3\xdc\xd8\xd5\x75\xab\x59\xbc\xbe\xb4\x08\x59\xa8\x50\xa0\x9a\x84\xec\xa8\x2c\x2e\x60\x1e\x67\x05\xf3\x3c\x0b\x98\xb7\x79\xfa\x16\x30\x6b\x99\x25\xcc\x0f\x07\x00\x09\x52\x94\x93\xea\xaa\xef\x37\x77\xbe\xa9\x74\xb5\x45\x82\xf8\x8f\x83\x83\x73\x0e\xce\x9f\x0e\x1a\x65\x8c\x6b\xe2\xc4\xbd\xb8\x5a\x32\xb2\x66\x9d\x27\xc9\x17\xa1\xc6\x19\xab\x60\xcc\x9c\xb9\x61\x44\x92\xee\x0a\xbf\x68\x55\x17\x0c\xe3\xa7\x99\x86\x54\xae\x21\x35\xc3\xbf\xb9\xc6\x1e\xdf\x8b\x53\xab\xf3\x05\x5e\xdb\x57\x67\x55\xa0\xde\xbc\xba\x2c\x21\x93\x71\xf3\x36\xed\xbe\xd5\x2e\x5a\xab\x2d\x3f\xb3\xda\x5f\x20\xa9\xff\xaf\xb3\xaf\x7e\x83\xc4\xfd\xbf\xce\x20\x7e\x37\xdc\x30\xd7\x4b\x0d\x0a\x17\x92\x86\x5e\x9e\x65\xd2\x8b\x9c\x68\x2e\xb2\x8e\x22\x5b\xeb\x75\xe5\x32\xac\x48\x82\x83\x89\xe3\x01\x80\x4b\x27\x38\xe1\x70\x28\xad\x23\xb7\xb7\x46\x9f\x62\x7a\x57\x69\x56\x9c\x30\x84\xcb\xe0\xae\x84\xb6\x33\x49\x21\xbb\xb6\x99\xbf\x88\xaf\x49\x6c\x52\x8a\x45\xb6\x4e\x13\x70\x83\x6f\xdd\xe8\x28\xe0\x43\x39\x4d\x2b\x99\xc5\x92\x39\xb1\x7e\xac\x55\x7c\xde\xd3\xaa\xbd\xb9\xcd\xf3\xac\x8e\x06\x74\xcc\xac\xf7\x1b\x26\x12\xaf\xc4\x3b\x91\x2a\x1a\x6e\x06\x96\x0d\xdf\x72\x20\x38\x27\x3a\x5f\x89\x36\x8c\x5c\xd5\x35\x4f\xab\x45\xbe\x62\x3a\xdc\x71\xe3\xeb\x7b\x86\xae\x54\xfe\xd1\x04\x07\xf6\x19\xe3\x92\x5c\xd3\x47\xe8\x3f\xb6\xe1\x7f\xfc\xf4\x53\x84\xff\xa7\x47\xd7\x6e\x60\x70\xe3\xa5\xa9\x21\xc3\x10\x59\xbe\x8c\x53\xfe\x0b\x7b\x1d\x17\x0b\x19\x5f\xbf\x11\x3a\x72\x43\x30\x18\x93\x8e\xe9\x0a\x06\xe3\x92\xc8\xed\xf6\xae\xd4\x6e\x05\x73\x7a\x03\xd5\x56\xa0\xe3\xef\xab\x70\x38\xac\x11\x3e\x52\xfd\xf0\xe7\x59\x7e\x12\xcf\x16\x8e\xbe\x8e\xc4\x77\x75\x74\xb4\x8f\x18\x49\xbc\xdd\x56\xef\x4b\xf5\x8e\x87\x43\x13\x66\xf4\x23\xdb\x14\x48\x5a\x47\x8b\xb8\xa3\xb6\xbc\xf6\x40\x9d\x91\x98\x56\x79\xc3\x3c\x22\x05\x3d\x98\x90\xd4\xec\x37\xb2\xa6\xe3\xa7\xeb\x67\xb1\xd6\x0d\xb2\x9e\xbd\xd6\xd6\x3b\xf5\x8c\x9a\x2f\xe1\x1a\x7c\x25\x54\x3d\x5a\x60\x34\xc3\xc3\xe1\xb5\xc6\xcc\x33\x9d\x09\xe3\xbb\x82\xae\x49\x4a\x67\x5a\x89\xbc\x2c\xf9\x1c\xa5\xba\xa6\x84\xa6\xa6\x0d\x4b\xfc\x5f\x13\xef\xc1\xe4\xce\x1b\x19\xbd\xa4\x91\x47\xfa\xda\x4a\xb3\xf4\x30\x59\xd0\x1b\x94\xe0\xa7\x6a\x67\x9b\xba\xfd\x62\x95\xf2\x19\xf3\xe3\xd5\x2a\xdd\xa0\xac\x0e\x4a\x39\xc3\x28\x2c\xc8\x24\x22\x0b\x8c\x4b\x86\x6c\xfe\x12\xc3\x7f\x60\xab\xda\x88\xa1\xd2\x70\xe0\x58\xc5\xc7\x54\x7d\xe4\x24\x33\xe1\x25\x41\x04\xb1\xdd\xd6\x56\xc3\xc6\xdd\x22\xdf\x6e\xbd\xab\x2c\x4b\x59\xec\xf8\x60\xe4\x53\x11\xe4\x08\xe2\xec\x4a\xff\x9a\x49\x94\x55\x30\x51\x85\x30\x8a\x21\x10\x8c\xe3\x1f\x12\xe2\x38\xfa\x85\xca\x0d\xa1\x63\xe2\xd2\xf5\xae\xa8\x77\x8f\x8e\x37\xa1\x1d\xcf\xad\xf2\x4c\x66\xaa\x41\xed\xf4\x4c\x57\x54\x45\xf2\x24\x47\x3a\x24\x85\x50\xfc\x97\xee\x04\xdf\xed\x84\x8d\xa0\xa5\xa7\xb0\xd9\x0b\x4e\x32\x85\x35\xcb\x66\xfc\x29\x7d\x4e\xd5\xde\xb4\xfc\x2b\x2e\x12\x24\x09\x83\xe4\x86\x07\x43\x27\x1b\x14\x55\xb5\xbb\xb1\xc3\xa6\x32\xc8\x09\xf7\x67\xf1\x6c\xc1\x7c\x1d\xf3\x03\x61\xc2\xfd\x82\xe5\x1c\x36\x4d\xde\x70\xec\x57\x55\xf6\xd7\xf3\xb3\x77\xbe\xc6\xc4\x7c\xbe\xa9\x87\xec\xe4\x8e\x91\x09\x16\x0c\x95\x9b\x4d\x6e\xdb\x00\x2e\xb4\x8c\x9d\x09\x5c\xc4\x45\xa7\xcb\xb5\x3e\x37\xe1\x77\xa1\x9a\x92\xb8\x65\xae\x99\xec\x2a\x53\x67\x0f\x59\xd4\x2c\x51\x34\x4a\x68\x3f\x2c\x4e\x66\x2a\xb5\x8f\xb8\x82\xde\xe9\x8e\x76\x84\xa5\x55\x68\x33\x2e\xcb\x1e\xf3\xd9\xa7\x55\x96\xcb\x82\x76\xaa\xf7\xe9\xf3\x61\xb6\x60\x53\xf3\x1b\x14\x44\x18\xac\x5f\x4d\xee\xd4\x7d\x09\xb2\xca\xde\x1f\x72\xc9\x3c\x96\xec\x7a\x33\xad\x1f\x03\x8e\x11\x23\x77\xba\xba\x9c\x38\x45\x45\x89\x4b\x52\xf5\xc8\x16\xe0\xac\xa0\xaa\x3f\x3c\x4e\xf8\x2c\xe8\xf6\x35\x63\xa1\x22\x27\xb2\x0d\x06\xb2\x01\x06\x64\x99\x89\x76\x3d\xf9\x6e\x3d\x92\xe4\xed\x7a\xf2\x46\x3d\x36\xee\xd6\x17\x05\xde\xea\x8e\xf2\x55\xb8\x71\x5f\xbe\xdb\x0d\xbc\xa5\xb7\x87\x76\xe4\xcf\x1e\x32\x12\xd3\xec\x21\xb3\x93\x8b\x26\x07\x47\x0f\xd9\xe8\xe8\x61\x76\x10\xe3\x87\x72\x84\x1e\x1f\x3c\x79\x98\x8d\x8e\x1e\xc6\xf8\x61\x3e\x42\x93\x91\xfd\x0a\x29\x62\x14\x3f\xe4\xf8\xd1\x13\x7d\x90\xd3\x1c\x7d\xeb\x34\x17\x3b\x40\xe7\x9e\x19\xda\x9b\x0d\x87\x5d\x6f\xdc\xfb\xc6\x54\xc1\x8d\x76\x53\x99\x61\x52\x34\x5f\xd3\xc6\xab\xf1\x78\x33\x7e\x9a\x3f\xcb\x9e\x8e\x46\x39\xe6\xf5\x11\x39\xc7\x48\x86\x79\x84\x49\x1c\xe6\x11\xe5\x7e\xbe\xdd\x8e\x49\xa1\x9f\xaf\xd5\x73\xaa\x9f\xaf\xb6\xdb\x71\xe5\xe6\x96\x32\x04\x91\x24\x19\x2a\x54\x5b\x0c\xa5\x6a\x8f\xdb\x30\xdd\x13\xd2\xb1\x87\xb8\x9f\x53\x35\x3c\xc2\xfd\x6b\x5a\xe8\x87\x2b\x9a\xc2\xc3\xc8\xf3\xca\xb2\x74\xa3\xac\xf5\x6b\x27\x3e\xb4\x8a\x3c\x7a\xa5\xce\xc7\xd6\xda\x18\x94\x4e\x73\x84\x58\x63\x50\x0c\x63\x3f\x27\xae\x17\xe0\x39\x1c\xaf\x7e\xae\xc3\xb1\x32\xff\x9a\x48\xff\x5a\x8d\x42\xbd\x5c\x11\xe9\x5f\xa9\xb1\x34\xe2\x9c\xda\x21\x11\x59\xc7\x7a\xef\x58\x9e\xda\xa9\x2b\xe5\x48\x91\x3b\xfe\x35\x8d\xf5\xc3\x15\x2d\xf4\x83\x9d\x9c\x14\x5e\x61\xc4\x75\x78\xa5\x78\xb9\x8c\x29\x23\xbc\x44\x13\x13\x97\x95\xc6\xe8\x1e\x7b\xe3\x83\xc9\x4e\x37\xaa\x83\x24\x7f\x46\xc7\xd3\x9c\x8e\x03\x08\x81\x8f\x72\x3a\x21\xf2\x60\x82\x03\x27\xee\x5a\xfe\x50\xaa\x13\x84\x85\x22\x22\xb1\xfa\x19\x4d\x14\xc1\x20\x9e\x8f\xa7\x3a\x70\x6a\x70\xa8\x80\x59\x41\xd1\x33\x79\x30\x51\x89\xa3\x43\x95\x18\x1f\x54\xb2\x65\x8e\x50\x7e\x20\x1e\x49\xfc\x50\x92\x82\x64\x24\x26\x29\x44\xda\xed\xdd\xdb\xf1\xfd\xdd\x76\xba\x87\x50\xfe\x27\x3a\xc1\xcf\xc6\xd3\xd1\x28\x0f\x72\x6c\x7b\x8b\xc4\x48\x8d\xe4\x4f\xd2\xf4\x5a\x3d\x14\x3a\x5d\xa7\xa6\xfa\xe5\x50\xbd\x74\xf5\x53\xf5\xb2\x30\xfd\xfc\x7c\x70\xcf\x36\x3a\x61\x10\xa3\x9e\x8e\x14\xcf\x88\xf8\x4e\x7c\x6d\xfc\xec\x10\x6e\x8e\x08\xa3\x63\x32\xc1\x01\x7f\x76\x34\x9d\x04\xa3\xbc\x67\x49\x34\xa1\x28\x32\x4e\xc7\xdb\x76\x30\xe4\x19\xe3\x29\x42\xf2\x80\xe1\x47\x39\x88\x56\xeb\xbd\xcb\xf1\xd3\xd1\x08\x42\x50\x66\xa1\x88\x28\x1b\x89\x87\x95\x98\x2c\xbb\x97\xde\xd1\x5e\xcd\xd8\x8e\x13\x33\xb9\xdd\x7a\xc7\x45\xc1\x72\x95\x55\x7b\x9c\xc6\x25\x04\x3b\x38\xf9\xe7\x3a\x4e\x69\x3b\x62\x93\x44\x6c\x40\xd5\x53\x49\x20\xd7\xd9\x47\xda\xc4\xd7\x12\x0d\xd4\xaf\xfa\xcc\xf6\xd5\x40\xab\x1a\xb2\x8f\x54\xd6\xe7\x0a\x95\x16\x77\x37\xff\xdd\x8b\xc9\x7b\x4f\x1f\x3d\x1c\xf4\x1f\xfe\x9e\xff\x7a\x2f\xb2\xd5\x06\x42\x85\xf6\xd1\x0c\xf7\x4f\xf9\x2c\xcf\x8a\x6c\x2e\xfb\x2f\xb2\x7c\x95\xe5\xc0\x82\xf9\xbd\xde\x7b\x96\x2f\x79\x01\x4e\xe8\x65\xd6\x5f\x17\x8c\xf4\x67\xd9\x6a\x43\xfa\xcb\x2c\xe1\xf3\x0d\xe9\xc7\x22\x79\x94\xe5\xfd\x84\xab\xbe\x5e\xad\x25\x03\xd2\xa1\xaf\xaa\xba\x8d\x73\xd6\x9f\x67\x79\x3f\x16\x9b\xde\x6a\x9d\xaf\xb2\x82\xf5\x6f\xb9\x5c\xf4\xb3\x1c\x7e\xb3\xb5\xec\xcf\x19\xeb\xf3\xa2\xbf\x60\x39\xbb\xda\xf4\xaf\xf3\x58\x48\x96\xf8\xbd\xde\xc5\xeb\x93\xfe\xf9\xd9\xab\x8b\x1f\x8e\x3f\x9c\xf4\xdf\x9c\xf7\xdf\x7f\x38\xfb\xfb\x9b\x97\x27\x2f\xfb\xde\xf1\x79\xff\xcd\xb9\xd7\x3f\x7e\xf7\xb2\xaf\x32\x1d\x7f\x7f\xf1\xfa\xec\x43\xff\xe5\x9b\xf3\x17\x6f\x8f\xdf\x9c\x9e\xf7\x8f\xdf\xbe\xed\xff\x70\xfc\xe1\xc3\xf1\xbb\x8b\x37\x27\xe7\xfd\x1f\xde\x5c\xbc\xee\x7d\x38\xf9\xcb\xf1\x87\x97\xfd\x8b\xb3\xfe\xc5\xeb\x37\xe7\x4e\xc5\xef\x5e\xbc\xfd\xfe\xe5\x9b\x77\x7f\x81\x52\x6f\x4e\xdf\xbf\x7d\x73\xf2\xd2\x2d\x7d\xf6\xaa\x7f\x7a\xf2\xe1\xc5\xeb\xe3\x77\x17\xc7\x7f\x7e\xf3\xf6\xcd\xc5\x8f\x3d\xd5\xf0\xab\x37\x17\xef\x4e\xce\xcf\xfd\xfe\x9b\x77\xfd\x77\x67\xfd\x93\xbf\x9f\xbc\xbb\xe8\x9f\xbf\x56\x95\x38\x7d\xfa\xf3\x49\xff\xed\x9b\xe3\x3f\xbf\x3d\xe9\xbf\x3a\xfb\xd0\x3f\x7e\xf7\x63\xff\xfc\xfd\xc9\x8b\x37\xc7\x6f\x49\xff\xe5\x9b\x0f\x27\x2f\x2e\x48\xef\xcd\x3b\xf3\xd4\x3f\xfb\xd0\x7f\x71\xf6\xee\xfc\xe4\xdf\xbe\x3f\x79\x77\xf1\xe6\xf8\x6d\xff\xe5\xf1\xe9\xf1\x5f\x54\x17\x74\x51\xfb\xfa\xc3\xeb\xe3\x8b\xf3\xb3\x93\xbf\x9f\x7c\xe8\x7f\x38\x39\xff\xfe\xed\x85\xea\xfd\xab\x0f\x67\xa7\xbd\xb7\x67\xe7\xd0\xe1\xef\xcf\x4f\x48\xff\xe5\xf1\xc5\xb1\x2a\xfa\xfe\xc3\xd9\xab\x37\x17\xe7\xa4\xff\xc3\xeb\x93\x8b\xd7\x27\x1f\x54\x8f\x8f\xdf\xf5\x8f\x5f\x5c\xbc\x39\x7b\xa7\x72\xbf\x38\x7b\x77\xf1\xe1\x58\xf5\xe0\xdd\xc9\x5f\xde\xbe\xf9\xcb\xc9\xbb\x17\x27\xfd\xb3\x0f\xbd\x33\xc8\x7d\x71\xf6\xe1\xe2\xcd\xd9\xf7\xe7\xa6\x00\xe9\x1f\x7f\x78\x73\xae\x5a\x3c\xfb\xfe\x42\x95\x3e\x83\x0a\x5f\x9c\xbd\x7b\x77\xa2\x6b\x54\xd3\x0d\x73\xf0\xfd\x39\x54\xf3\xfe\xe4\xc3\xab\xb3\x0f\xa7\xc7\x50\xeb\xab\xe6\xf4\xfb\xbd\xdf\x15\xa4\xfb\x0f\x1f\x35\x89\x7c\x7b\x9c\x76\xb8\x97\xd7\xb1\x49\x86\x43\x16\xea\x27\x1f\x74\x88\x65\x96\x03\x37\x38\xc8\xad\x90\x80\xd9\x48\xda\x24\xa3\xb9\xe6\x4d\x98\x3a\x4d\xc3\xa8\x27\xf3\x8d\x8e\x43\xea\xc4\x73\xdd\x6e\xe5\xc1\x41\xff\xf9\x18\x0f\x87\x03\x24\x68\xe6\x0b\xf6\x49\x22\x8c\xfd\x24\x13\xec\x29\x8e\x8d\x1c\xc9\x72\x72\xb3\xd8\x04\x37\xe3\xf4\x8e\x29\xc4\x04\x6e\xfd\xb8\x88\xd3\x74\x73\xa7\xea\x17\xc3\xe1\x40\x40\x61\x90\xcc\x64\xbe\xee\x16\x1e\x0e\x4d\x67\x32\x5c\xe5\xe7\x73\xc4\x0d\xee\xe3\x3e\xd4\x56\x9d\xb7\x31\x90\x5e\xbc\x15\x52\xf3\x8d\x90\x2c\x5f\xe5\x4c\xb2\xfc\x5c\xc6\x72\x5d\xec\x8d\xd0\x5a\xc5\xe5\x2e\x0a\x7e\xdd\x1d\x31\xb1\xd8\x09\x7c\x78\x1a\xcf\x16\x5c\x74\x47\x1d\x6c\x44\xae\xb4\xdd\xd8\x1f\xee\xd0\xc5\xf9\x2c\x64\xfe\xbb\x4c\x9e\xcb\x38\x97\x2c\xa1\xe3\x88\x7a\xf5\xab\x47\xd4\xe7\x0f\x6b\x21\xb8\xb8\xa6\x93\x88\x7a\xe6\x59\x7f\x38\x97\xd9\x6a\xc5\x12\x7a\x18\x51\xcf\x3c\x7b\x25\xe2\xdb\x2d\xe2\xf4\xce\x12\xc4\x99\x75\xeb\xfc\xa9\x90\xb1\x64\x3e\x17\x5c\x7a\x65\x37\xc5\x5a\xad\x3c\x9b\x86\x51\x10\x46\xfe\x2c\x13\xb3\x58\x22\xd7\x5b\x65\xb1\xe3\xce\xd1\x54\x6c\x67\x53\xff\x82\xdd\x11\x6b\x87\x88\x6f\xc7\x0f\xb4\x00\x8c\x18\xdd\x09\xa8\xc7\x86\x43\xc5\xf5\x84\x2c\x9a\xaa\x3f\x01\xc3\x53\xdd\x20\x2b\x83\x8e\x2d\xc0\xec\x57\x88\xc8\x40\xd8\x27\x36\x53\x39\x1d\x4d\xcc\xf5\x1e\xda\xbc\x72\x88\x47\xa9\xeb\x00\x73\xe6\xb8\xb5\xdf\xe9\x5b\xdd\x15\xd6\x08\xf1\xe7\x28\x99\x5a\xe3\xaf\x59\x26\xc0\xd3\xa6\x24\x3a\x8a\x47\x11\x84\x11\x99\x2d\x62\x71\xcd\x92\x60\x30\x21\xe0\x58\x90\x15\x81\xea\x5e\x33\x6c\x9c\x2b\x5d\x90\x84\xd3\x81\x25\x1a\x43\xe6\xcf\x79\x2a\x59\xde\xa4\xd4\xf8\x1c\xb5\x16\x03\xf8\x7a\xed\x6f\x9f\xd3\xc1\xb8\xa7\x69\x39\xc3\x78\xeb\x3c\xe8\xae\x24\xa2\xf2\x84\xdf\x31\xaf\x7e\xbd\xa0\x53\x45\x07\xd6\xaf\x48\x90\x1c\x07\xae\xb0\xcb\xfd\xda\x25\xef\xe2\xf8\x4e\x86\x3c\xea\x42\x61\x6e\xd1\x90\x47\xd3\xd6\xbb\x6e\xab\x95\x58\xc2\x3d\x97\x24\x03\x1b\xb9\x7b\x30\x86\x24\xc2\xa3\x46\x14\x38\xc0\x9d\x15\x56\xd3\x71\xf3\x2a\xe9\xa0\x40\x0b\x14\x23\xe6\xc3\xc4\x15\xa1\xde\x21\x3c\x4e\x23\x9f\x09\x99\x6f\xf0\xde\x48\x03\x00\xd1\xbe\x59\x54\xac\x1a\x66\xbe\x59\x6c\x92\x61\x72\x08\xa2\x9e\x70\xac\x48\xdc\x3c\x9c\x44\x64\x4e\xef\x66\x99\x98\xf3\xeb\x80\x91\xcb\x4a\xf7\x98\x98\xe6\x14\xce\x62\x81\x85\x1a\xdb\x89\x0a\x66\x78\x05\x47\x85\x0b\x31\x36\x9f\x22\xcd\xf2\x58\x14\x1c\x64\xcd\x35\x74\x5b\x00\x02\xcd\x95\xdd\x3d\x26\xa7\xa6\x41\x59\x55\x5f\x8d\xa1\x0c\x24\x59\xd1\xc2\x58\x23\x2e\x69\x51\x0d\xee\x06\x8c\x95\xc8\x35\xad\x26\x6d\x05\xe7\xcc\xb5\x9f\x19\x09\xdd\x15\x8d\xe1\x2d\xbc\x01\xe8\x8b\x70\x75\xbc\xa8\xaf\x1b\xba\xcb\x5f\xdc\x73\xa8\xb5\x8e\x34\x02\xa2\x14\x16\xca\x88\x08\xed\x13\xb8\x3a\xde\xaa\x23\x0d\xdc\xe4\x0d\x87\x3b\x72\xc1\x96\xd0\xfc\x4e\x9d\x67\x1d\x02\x1d\x06\xf1\xd8\x9d\x68\xfa\xcc\x88\x61\x31\xb1\x0b\xa4\x7a\x20\x46\xa3\x88\xa8\xd3\x2c\x18\xb0\xb2\x2c\x7b\x35\xa5\x7e\xb1\x59\x19\xd7\x1a\x72\xea\xe9\x0d\xa2\xc8\x42\x91\xc9\x3e\x0c\xe3\x2a\x65\xbe\x17\x78\xad\x91\xd9\x2c\x09\x9b\x73\xc1\x12\xdf\xc3\x25\xba\xc2\xe4\x92\x6e\xcc\xc1\xfb\x74\x70\xa9\x8f\xde\x3a\x49\xcf\xdf\x2d\xbd\xd4\xeb\xd4\x88\x40\x7f\x6b\xe7\x25\x41\x2b\xb2\xd4\xf0\x7e\xb2\x0b\x04\xb7\xd3\x3b\x19\xe7\xd7\x4c\x06\xb7\x65\x70\x4b\x3e\xd1\x13\x5f\xbf\x93\x33\x7a\x62\xe1\x9b\x9c\xd3\xaa\xde\x33\x75\x3a\x9c\x91\x0b\x7a\xa2\x40\x22\x21\xa7\xf5\xa7\x4f\x70\x59\x51\xbd\x5e\x4c\x77\x26\x77\x30\x2e\x83\x0b\x8c\x96\xe4\xc6\xf4\xfd\x7d\x0d\x46\x3a\xe8\xfb\xa7\xe9\xa7\x60\x15\x91\x63\xd8\x99\xe8\x74\x1a\xa3\x73\xec\x1c\x46\xd7\x3e\xfb\xc4\x25\x39\x27\xef\xed\x06\xed\xc2\x85\x95\xef\x59\x8c\xef\xdf\xc1\x73\xdf\xee\xc5\xc6\x56\x56\xfd\x23\x47\x98\xbc\xa0\xc7\x6a\x0b\x7f\xa4\xc7\x6a\x0b\x7f\xa0\xc7\xe1\x61\x44\x7e\xa6\x4e\x4f\x7b\x0d\x7c\xff\x73\xb5\x91\x3e\x56\x7b\xf7\x45\x85\xee\x3f\x0d\x28\x5d\x6d\xb7\x2f\xaa\xa0\x1d\xdb\xed\x07\x67\x3b\xff\x8c\xcb\xb2\xfc\x3c\x19\x75\x39\x1c\x1a\x40\x00\x41\xf1\xa6\x26\xa3\x32\xbd\x01\x36\xf7\x93\x51\x65\x03\x2c\xca\x2a\xf0\xef\xbc\xd4\xe1\x9b\x3a\xc5\x82\xcc\x4e\x4f\xf7\x35\x86\x11\x5d\xf8\xea\xdc\xb5\xf5\x89\xe1\x50\xa0\x1a\x27\x4a\x10\xf4\xd7\x94\xc7\xd2\x95\x2e\xb8\x58\x90\xe4\x94\x3b\x44\x11\x11\xc0\x4f\x9f\x33\x49\x62\x7a\x77\xb9\xd4\x84\x58\xc0\x48\xc1\x44\x52\xef\xde\x0c\xdf\xe5\x94\x52\x6e\xe9\x25\x40\xf3\xcc\xaf\xd1\x22\x02\xb4\xbc\x42\x92\xcc\x50\xa6\x8e\x89\x8e\x91\x38\x90\x83\xa0\xbf\xb8\x24\xc5\xfa\xaa\x98\xe5\xfc\xca\x11\xfd\xd6\xd9\x84\x1f\x27\x89\x22\xa2\x55\x7e\x72\xb7\x16\x1d\xb9\x9d\xcc\x09\x4b\x99\x64\x70\xd2\x97\x44\x3b\x82\xae\xb2\x09\x6d\xd5\xa1\xe7\xa4\xa0\x5e\x06\x78\xa3\x11\x61\x38\xb8\x6b\xa0\xe9\x39\xbf\xae\x91\xb2\x36\xe5\x2e\x7b\xd2\x9a\x75\x5b\xd4\xed\x92\x1d\xf6\x0c\xa9\x8a\xd5\xc0\x57\x58\x32\xde\x82\x47\x5e\xcf\x25\xcc\x5a\x86\x49\xac\x3a\x9d\xad\x3a\x86\xa6\x32\x1b\x1a\x94\x08\x7f\x96\xb2\x38\x47\x90\xff\x9a\x81\xc3\x75\xe9\xb8\x96\x96\x75\xea\xba\x70\xaa\xa8\x21\x31\xfe\xb2\x68\xfa\x46\xe2\x1b\x7e\x15\x87\x8b\x9c\xcd\xa3\x40\x64\x12\x85\x32\xbe\xe2\x22\x61\x9f\xfe\x83\x7a\x07\x5e\x84\xbf\x22\x5f\xc5\x39\xfb\x4c\x0e\x88\x25\x63\x3e\x6e\x56\x8c\x7a\x0b\x9e\x24\x4c\x78\x11\x76\x13\xf3\x38\xe1\x59\x95\x96\xf0\x42\x21\xf2\xa4\xca\xd3\x5d\x6b\xb3\xec\x17\x15\x0d\x66\x0b\x36\xfb\xc8\x92\xaf\xc8\x57\xda\xc8\xe0\x4b\x1b\x54\x4b\xaa\x06\xfb\xa5\xf9\xaf\xd6\x52\x66\xe2\x8b\x87\x33\xcf\xe3\x25\xdb\x3b\xc9\xeb\x84\x67\xa1\x82\xab\x3c\x4b\x8b\xbd\x33\x7d\xc3\x13\xf6\x05\xd9\x20\x07\x13\x92\x25\x5c\xaa\x6e\xed\xcf\x68\x93\xf6\xe4\x88\x76\xe4\xcd\x70\xbf\x73\x59\x2c\xb2\x5b\x0a\x8f\xea\xc9\x5c\x98\x2d\x78\x81\x89\xfe\xbe\xe0\x09\xd3\xdf\xd5\xd3\xee\xf7\x65\xcc\x85\x8c\xb9\x78\x95\xcd\xd6\x05\xed\x48\xdb\x2d\xa2\x12\xfe\xc6\x36\xab\x9c\x15\xb6\x84\x9b\xb4\x5b\x60\x95\xb3\x1b\x9e\xad\x8b\x74\x03\x35\xb2\x04\xce\x1d\xfd\x51\xcd\x4f\xcc\x05\xcb\xa9\xbe\x66\xf1\x13\x1e\xa7\x99\xa2\xc9\xfe\xb9\x66\xf9\xe6\xdc\xf8\x28\x42\x5f\xe9\x74\xd2\x0f\xf3\x2c\x65\xd4\xd3\xaf\x5e\x54\x25\xc4\x29\xcb\xa5\x4d\xfd\xca\x34\x0d\x9f\x9c\x6a\xfd\x6b\x26\x8f\xa5\x91\x89\x21\x4f\x7d\xf6\xf0\x76\x6b\x6b\xd3\x85\xd6\x05\x7b\xa9\x3b\xe1\xa9\x39\xf5\xec\x3d\x9d\xe9\x81\x1e\x53\xca\x0b\xc9\x04\xcb\x0b\x7a\x57\x9a\x91\xe8\x5b\x21\xd9\x0e\x18\x66\x70\xc1\x3d\xf7\xaa\xac\x71\xb9\xe8\x9e\x56\x19\x42\x72\xbb\x4d\xb2\xd9\x5a\xb3\x22\x8d\x39\x39\x86\xa2\x6d\x9e\x56\x9f\x44\x20\x10\xc9\x77\x66\xd1\x0b\xe3\xb5\xcc\xe6\x6a\x15\x22\x35\x70\x19\x8e\xa3\x5e\x3e\x1c\xe6\x3e\xa4\xb9\xae\xf2\x53\xa7\xef\x31\x12\x36\xe0\x95\x87\x09\xbb\x8f\x54\x19\x0c\x10\xf3\xb5\x87\xa0\x1f\x78\x22\x17\xdb\xad\x7d\x7d\xcd\xf8\xf5\x42\xaa\xf7\x6b\x26\x5f\xa4\x9c\x09\xf9\x81\xcd\x64\x81\xb0\xa5\x66\x1b\xc1\xd6\xd6\x08\xdf\xc5\xc8\x0b\x93\x58\xc6\x07\xf1\x64\xb2\x39\xd0\xf3\x1f\x79\x5d\x1c\x19\xc3\x77\xea\x70\x55\x5b\x83\xb5\x16\xb9\x5d\x81\x1a\xb7\x21\x83\x55\x83\xdc\x59\x13\xbd\x84\xbb\x64\xbd\xe3\x69\x03\x16\x5f\xd3\x95\x16\xf8\xcd\xdb\x76\xdb\x71\xae\xbe\xcb\x12\xf6\x96\x17\xd2\x69\x84\x17\xef\xed\xf3\xd9\x1c\x31\x3c\x55\x50\x12\x98\xf0\x58\xf7\xe5\x0b\x59\x14\x74\xb0\xf0\xb1\x2a\xae\x07\x54\x42\x74\x70\x84\x72\xaa\x00\x87\x36\x37\x18\xf6\x57\x71\xce\x84\x54\x5d\xf2\xc1\x77\xbf\x7a\x2a\xee\xa5\x3b\xf5\x8d\xba\xc8\x12\xa6\x58\x01\x20\x42\xb5\x5e\x04\xca\x7d\x40\x4f\x67\x73\x45\x2f\x4c\x30\xc9\xcd\x8e\x53\x3b\x46\x34\xb6\xdc\x22\x2e\x9c\xd5\xc8\x56\x10\x4b\xcb\xcd\x50\xec\xee\xc9\x7a\xf7\xe2\xd6\x9e\x9c\xa2\xe6\xa8\x5a\xa5\xdb\x8b\x7d\x20\x62\xc9\x6f\x98\x47\x3c\xdb\x68\x5d\x32\x67\xcb\xec\x86\x39\x85\xe3\x9c\xc7\x07\xe6\xc4\xc4\x38\xa8\xc7\x33\xfd\x55\x25\x83\x7b\x7b\xe8\x66\x25\x83\xb1\xc5\x91\x6a\x5e\x14\x36\x89\xd1\x57\x3b\x20\x7f\x00\x48\xde\xfb\x6a\xd4\xaa\x98\x27\xa3\xaf\x6a\x5c\x67\xab\xa8\x76\x47\x43\x3e\xa7\xe8\xbb\x93\x1b\x26\xe4\x5b\x83\xb8\x90\x37\x4b\xf9\xec\xa3\x99\x6a\x38\x47\x70\xe9\xe0\x6e\x5b\xeb\x2c\xcd\x0a\xdd\xb1\xdd\xbd\xa8\xc6\xc1\x22\x8f\xb4\x01\xcd\xb0\x38\x9d\x63\x81\x03\x69\xff\x58\x5a\xcd\xfe\x6b\x83\x51\x6d\x74\x0e\x66\xce\x73\x86\x8c\x24\xd4\x00\x44\x49\x5c\x0c\x00\x33\xbd\x4f\xf3\x02\x60\x61\xbb\x45\x0e\xa0\x0f\xc6\x7b\xcf\x38\x8b\xb5\x81\xe1\xb8\x61\x66\x83\xb7\xc1\xb9\xb1\x11\x16\xd9\xed\x69\x96\xc4\x29\x62\xe0\x8d\x32\x16\x33\x08\xba\xaa\x46\x6a\x35\xf6\x19\x0e\xd0\xfe\xcd\x03\xbb\xeb\xd7\xc3\x3a\x69\x20\xb2\x6e\xf4\xca\x5a\x1b\xb9\x51\xc1\x70\xc8\x3e\xb7\x11\xb3\x9c\x5f\x2b\x66\xee\xa0\xb1\x01\xda\xc8\xba\xb9\x05\x49\xbb\xd6\x46\x59\x4f\xe6\x6b\xe6\x01\x77\x43\x0a\x77\x52\x30\xa9\xe6\xfe\x2a\x4b\x36\x1d\xd0\x02\xa7\x9d\xd7\x45\x02\xc1\x96\xac\x97\x6e\xa7\xe4\x47\xb6\x49\xb2\x5b\xe1\x75\xd0\x42\x4d\x20\x03\xd2\x81\x30\xdc\x05\x65\xb0\x07\xee\x85\xb2\x69\x03\xc8\x26\xf7\x41\x0d\xec\x94\x5f\x01\x31\x3b\xa0\xe0\xa2\xe4\x2f\xc2\x5a\x66\xe2\xff\x15\xa8\xf9\x32\xb0\xc0\x53\x74\xef\xca\x7f\xee\x88\xdf\x53\xab\x0e\xcb\xd8\x1a\xfd\x97\x96\x0d\x3a\xca\x36\x72\x00\x1c\xee\x41\x06\xc3\xe1\x9e\x0f\x9a\xee\xfa\xcc\x67\xd4\x06\x68\xdd\x91\x7f\x11\xa6\x3b\x0b\x7f\x31\x58\x2b\xd0\xf5\x88\x39\x96\xf5\x51\xd7\x84\xed\x84\x15\x32\xcf\x36\x74\x97\xb7\xae\xb8\x10\xf4\x65\x27\x56\x67\x47\x7f\xd5\xa1\xf5\x2f\x57\xfc\x99\x03\xc4\x8c\xb1\xda\x02\x3b\xcc\x40\x73\x4a\x32\xd1\x2d\x8b\xaa\x65\xf9\xcd\x5a\x42\x16\x0d\x87\x68\x37\x11\x22\x5e\xed\x26\xd7\xf1\xaa\x76\x5b\x9e\xcf\x3b\x95\xf8\x3a\x2a\xdf\x6e\xc3\x08\x3b\x44\x5d\xe5\xab\xef\xf9\xc1\xc4\xc2\x67\xa3\x55\x4b\x08\x2a\xea\x6f\xb7\x65\x98\xa9\x56\xdb\x7b\x5b\xed\x5c\xa6\x16\xa1\x47\x64\x73\x41\x5a\xcd\x35\x98\x52\xb7\x9e\x06\xaa\xd4\x95\x15\xa8\xfb\x6c\xc6\x76\xd6\x01\xed\x0e\x87\x87\xda\xe1\xcc\xed\x82\xcf\x16\xc3\x61\x83\xc3\x1c\x98\x45\x53\x24\xea\x70\x88\x98\xaf\xb6\x2e\x13\xf2\xa5\x8e\x19\x6c\x21\x1c\xa0\xdd\x9e\x01\xb6\xda\xef\xdc\x5a\xbb\x56\x27\xd5\xd1\xd6\x6a\x12\x7b\x4f\x77\x7b\xd2\x2f\x16\x7c\x2e\xff\xc6\x36\xda\xec\x5b\x4c\x51\x1e\xe6\xb5\x86\x7f\x85\x3e\xe4\x4e\xff\x70\x50\x17\xde\x6e\xc5\x80\xd2\xba\xdc\x76\x8b\xf2\x70\x7c\x6f\xe9\xd2\x3d\x52\x08\xdb\x59\x8e\xa6\x58\xa1\x4b\x0f\x4b\x1f\x1b\x9f\x43\xe4\x70\x8a\xe2\x9e\x3b\x7d\x83\xd6\x41\x55\x2d\xaa\xad\x13\x0f\x87\xd2\x6e\x2a\x97\xc0\x1c\x0e\x8b\x16\x4c\xe1\x92\x78\x6b\x61\xee\x29\xbc\x81\xe5\xa9\xec\x74\x0f\x87\xc8\x4b\xb3\x38\xd1\x0c\x17\x75\x30\x68\x9c\x6c\x40\xc4\x3b\xbd\x87\x52\x78\x79\x76\xfa\x42\x0b\x7f\xde\x66\x71\xc2\x12\x8f\xac\x71\x70\xcb\x45\x92\xdd\xfa\x39\xfb\xe7\x9a\x15\xf2\x58\xf0\x25\xe8\xf4\xbc\xca\xe3\x25\x9b\xde\xf7\x11\xd5\x85\x0b\x26\x2f\xf8\x92\x65\x6b\x89\xd6\x64\xf2\x44\x41\x97\x6f\x62\x55\x53\x5e\xde\xaf\x4d\x76\xb5\x91\xec\xad\x8e\x91\xbd\xbb\x28\x46\x68\x20\xc3\x71\x44\x04\x95\xe1\xa4\x52\x5e\x3b\x7a\x88\xf2\x91\xc0\x8f\x1e\x1f\x88\x92\x48\x5f\x66\x7f\xde\x48\x06\x12\x8d\x2e\x66\x99\x64\xd4\x28\x64\x64\xfa\xde\x30\x0b\x27\x11\x59\x53\xcd\xa1\xef\x31\xda\x38\x7a\x88\xe4\x28\x57\x4d\xe4\x25\x1a\x93\x98\x28\xa4\x3b\xa3\x63\x92\xd0\xe2\xf9\x78\x1a\x1f\x3c\x0e\x62\x47\x7f\x34\x79\x9a\x8f\xe8\x63\x2c\xa9\x08\x5b\xa1\x0f\xa3\x67\xcf\x26\xdf\x6e\xdb\xc9\xa3\x09\x7c\x38\xdc\xfd\x70\xa8\x3e\x3c\xd9\x4d\x3f\xc2\x11\x59\x87\xb3\xd1\x28\xa2\xf2\xf9\xf3\xc9\x93\xe1\xe1\xd7\x5f\x3b\x09\xdf\xba\xef\x87\x5f\x7f\x3d\xac\x1c\x3a\x1c\x52\x4a\x0b\x10\xdb\x77\xf5\xad\xa3\x07\x13\x1c\x3d\x7f\xfe\xb8\x51\x17\x06\x65\xf6\xfd\xb5\x4c\xc6\x7b\x46\xf8\xb8\x73\x80\xcf\x9f\x1f\xde\xdb\x75\x4c\xd6\x6a\x5d\xe7\x79\xb6\xec\x5e\x59\x7b\xe7\x29\x21\x80\xbb\x51\xfd\xe5\x54\xfc\xe9\x48\x5b\xbd\xc7\x74\x4c\x0a\x2a\x0e\xf8\xd3\xf8\x59\xf1\x34\x1e\xd1\xc9\x93\xa3\x6f\x8f\xac\x0d\xfa\x1a\x31\x12\x93\x78\x04\x89\xcf\x8b\x69\x11\x98\xe7\x2a\x76\x3d\x48\x1a\x38\xe8\x2d\x82\xe2\x27\x31\x25\xf3\x50\x3e\x7f\x7e\x18\x8d\xf2\x50\x3e\x7b\xf6\x78\xf8\xe4\x28\x1a\x79\x94\x2a\x72\x4c\xcd\x32\x87\xf9\x41\xaa\xc8\x61\xf4\xec\xd9\xb7\x78\xd4\x51\x7a\x32\x86\xe2\xcf\x9f\xeb\xe2\x50\xd3\xa1\xa9\x49\xd1\x84\x59\xed\x9a\xb0\x52\x91\x34\xa6\x71\x61\x44\x38\xed\xc2\x10\xdf\x73\x21\xbf\x85\x59\x9a\xd6\x8f\x01\xfc\x25\x19\xf5\x8e\xff\xfc\xe2\xe5\xc9\xab\xbf\xbc\x7e\xf3\xd7\xbf\xbd\x3d\x7d\x77\xf6\xfe\xdf\x3e\x9c\x5f\x7c\xff\xf7\x1f\xfe\xfd\xc7\x7f\xc4\x57\xb3\x84\xcd\xaf\x17\xfc\xe7\x8f\xe9\x52\x64\xab\x7f\xe6\x85\x5c\xdf\xdc\x7e\xda\xfc\x32\x9e\x1c\x1e\x3d\xfe\xfa\xc9\x37\xdf\x7e\x37\x7a\xe4\x99\xf9\xcc\xac\x85\x8c\x9a\xd4\xd1\x28\xc6\x79\x18\x47\x34\x0b\xe3\x88\x88\x30\x73\x57\x39\xc6\x11\x8d\x7b\x4d\xe1\x5d\x4b\xe3\x95\xcf\x91\xfc\xd3\xe3\xe7\xe3\xdd\x70\xb2\x6f\x04\x84\xd6\xed\x6b\xd9\x92\xdf\xd7\x08\xa2\xbf\x5c\x17\xb2\x7f\xc5\xfa\x71\x7f\xb9\x4e\x25\x5f\xa5\xac\x9f\xcd\xfb\x8f\x3d\xab\x71\xc0\xaa\xf3\x49\x4d\xa4\x59\xc8\x03\xb5\x90\xb9\x36\xd0\xc6\x24\xcc\xc1\x74\x5c\x4e\xc7\xc1\xe3\x83\xfc\x4f\x8f\xa3\x86\x1a\x0b\x91\x44\xd4\xa0\xc5\x49\x06\x2a\x5c\xa4\xa0\xf2\x69\xf1\x4c\x3c\x2d\x46\xf4\x08\x73\xb5\xbc\x85\x82\xf8\x27\xc3\xc9\x93\x6f\x26\x93\x27\xdf\x8e\xf1\x48\xa5\x8d\x26\x6a\xc9\x87\x4f\xbe\x3e\x84\x14\x05\xc7\x2a\xf5\x30\xc2\x24\xb6\xcb\x8f\x32\xca\xf1\xf3\xe7\x93\x6f\xcd\xd2\x67\xcf\x9f\x4f\x0e\xeb\xe7\x27\xe6\xf1\xc9\xd1\x30\x8b\x2a\x50\x8c\x6b\x80\x10\xa1\x77\xe0\xb9\xf3\x3c\xc6\x11\x7d\x72\x48\x44\xe8\x5d\xee\xa6\x1f\x35\xf5\x60\x7b\x8f\x1e\x0e\x7a\xfd\x87\xfd\x59\xca\x57\x57\x59\x9c\x27\xfe\xcf\x45\xff\xe6\xd0\x1f\xfb\xdf\xaa\xe4\x85\x94\xab\x22\x78\xf4\xa8\xfa\xfc\xb3\x3a\x99\x96\x8f\x7a\xfd\x87\xea\xf3\x5b\x3e\x63\xa2\x60\x49\xff\xf4\xcd\x45\xff\xbf\xfd\xef\xfd\x7f\x30\x91\xf5\x3f\x64\xb3\x45\xdc\xeb\x3f\x7c\xa4\x55\x60\x7a\xb2\x83\xcc\x6e\x99\xa6\x33\x7a\x37\x39\x7a\x1c\x7c\x81\x4d\xc2\x9d\x39\x44\x3a\xae\xc5\xae\xca\xb2\xb6\x4b\x38\xfc\xe6\x3b\xd0\x09\xf1\x85\x36\x00\xca\xd1\xd1\x37\x63\x50\x66\xf7\x85\x36\x01\xc8\xd1\xb7\x93\x6f\x30\x49\x21\xa5\x70\x54\xe5\x1d\xdd\x25\xb4\xbe\x4f\x59\xc2\x2b\xe0\xa1\xfd\xa1\xd2\x31\x98\x76\x71\xcf\x46\x22\x5a\x76\x5d\x70\xb2\xe1\xf0\x3e\x85\x43\x45\x13\x14\x32\x5f\xcf\x64\xa6\x00\xb6\x4a\x1f\xd8\xe7\x9a\xb8\x99\xda\xbe\x05\x55\x83\xb8\x21\xc2\x9f\xe9\x93\xb7\xc6\x25\xea\xbc\xb2\xf6\x12\x4f\x73\x6b\xec\xa6\x4e\xd8\x3c\xea\x09\x9f\x41\xb8\x96\xf8\x2a\x65\xd4\x7d\xd9\x6e\x07\x13\x08\xde\x2b\xe6\xfc\x7a\xad\xbf\x0f\xc6\xc4\x83\xeb\x4d\x8f\xc3\xbd\x34\x12\xfe\x6d\xae\x6f\x96\xa8\x62\xf2\x8c\x12\x93\xc6\x57\xef\xf3\x6c\xc5\x72\xb9\x41\x8c\x08\xff\x23\xdb\x10\x81\xb5\xd9\x66\xe2\x42\x4d\xd3\xd2\x61\xd0\xa4\x1e\x20\x20\x75\x43\xb4\x20\xdd\x70\xd4\xb5\x7e\x88\xf7\x22\x16\x22\x93\xfd\x59\x9c\xa6\xfd\xb8\x0f\xe1\x95\xfb\x71\xd1\x8f\x2b\x70\xf4\x0c\xcd\x68\x79\x47\x3f\x67\x45\x96\xde\x30\x13\xee\xcc\xf2\x2f\x70\x83\xae\xef\x2b\xa0\x7f\xe5\x8e\xab\x6b\xf0\xc6\x10\xde\x7d\x64\x9b\xc0\x6b\xd6\x61\x43\x14\xec\xec\x80\xb6\x8a\xfc\xf3\xf1\x70\x58\x3b\xb4\xb2\x1f\xc3\x71\x34\x75\x5f\x82\xbb\x52\x13\x9e\xfa\xe6\x99\x5a\xd5\x81\x9d\x8b\x2b\x97\x49\x51\x9f\xd8\x92\x4b\x09\x1f\xcc\x93\x4e\xd6\xd4\x69\x45\xfa\x9a\x44\xf6\x09\x92\x40\xb3\x00\x12\x72\x7e\x7d\x0d\x85\xcd\x93\xe1\x1d\x60\x4a\x58\x72\xa1\xf2\x7b\x5e\x59\x12\x3d\x03\x8d\xe9\xea\x98\x80\xaa\x91\xa9\x53\xcd\xab\xf8\x23\x43\x46\x4e\xad\x3b\x63\x38\x3c\xfd\xf9\x02\x92\x10\xae\x1a\xd1\x02\x53\x55\xca\xb0\x1e\x7b\x67\xda\xcb\x65\xda\xa0\x95\xed\x83\xbd\xdf\x68\xd1\xfb\x3c\xb7\xd4\xfd\xdc\xd4\x5e\x17\xd5\xad\x9a\x82\xc8\xb3\x97\xc2\x96\xeb\xb6\x05\xfc\x42\x6e\x52\xe6\xcf\x33\x21\xcf\xf9\x2f\x8c\x7a\x93\xc3\x95\xf4\x3a\xf3\x5c\x65\x79\xc2\xb4\x37\x83\xae\xcf\xab\x38\x51\xb4\xfe\xde\xef\xcb\x38\xbf\xe6\x62\x7f\xf1\x4c\x2b\x68\x50\x2f\xbe\x2a\xb2\x74\x2d\x59\x67\xbe\x90\x4d\x3d\x50\xf1\xf7\x02\x2f\x65\x73\xe9\x45\xd4\x3b\xf8\xee\xbb\xef\xbe\x5b\x7d\xf2\x8c\x66\xa3\x21\xf4\x57\xf1\x35\xfb\xf1\x0c\x2e\xcf\xea\x4b\xc0\x9d\x19\x2d\x66\x79\x96\xa6\x17\xd9\xaa\x71\x47\xd5\xea\x9b\xcc\x56\xd4\xf3\xac\x60\x5e\x12\x6f\xf5\x69\x77\x1e\x9b\xf7\x30\x2c\x4e\x32\x91\x6e\x1c\x71\x72\x95\x13\x16\x9f\x56\xa0\xd5\xfc\x5a\x41\x4d\x0d\x6b\x7b\xc1\x05\x10\x82\xbd\xa8\x6a\x03\x19\x72\x20\xe3\x75\x2c\x92\x94\xe5\x2f\xe2\x34\xbd\x8a\x67\x1f\x3b\x8e\x3d\x2b\xd6\xd1\xb0\x5d\x92\x76\xd1\x36\x3f\x78\xff\x15\x42\x47\x9b\x78\xbb\xb5\xd2\x7e\xa7\x96\xd5\x8a\x89\xe4\xc5\x82\xa7\x49\x85\xc1\x1a\x5b\x35\x45\xb8\xfa\x30\xcb\x56\x9b\x0b\x50\x77\xb3\x18\xd0\xe9\xb0\x9d\xb5\x3a\x71\xdf\x6e\x76\xfa\x66\x05\x16\x6d\x41\xff\xaf\x1c\xd9\xee\x64\xd5\x17\xf4\x5d\xb3\xaf\x5d\x2d\x35\x56\x7d\x5f\x4f\xcc\xd4\xb8\x59\x5b\x25\x75\x6d\x2d\xa8\xd1\x28\x68\xdf\x0c\xec\xce\x70\x8d\xc9\x76\xe6\xba\xc6\x62\x26\x69\x1f\x34\x82\x72\x27\xab\xf1\x0f\xfb\xc4\x66\x2f\xb2\xe5\x32\x36\x32\x27\x83\xfe\xad\x81\x80\xc4\x77\x8c\x0e\x26\xa5\x16\xf4\xc0\x0c\x7d\x60\xc5\x3a\x05\x3d\x73\xdb\xa6\x9b\xbe\xd3\xae\x95\x4e\x99\x53\x02\x7e\x91\xa2\x2f\xd6\xb3\x19\x2b\x0a\x2f\xf0\x40\xd3\xcd\x23\x77\xba\xe5\xc0\xe9\x05\xd1\xca\xd8\xed\xd9\x20\xe6\xd0\x08\xdc\xb3\x84\x80\x1e\x53\x75\x4a\x98\xfb\xc9\x46\x9a\x23\x59\x2b\x9d\x19\x6b\xe4\xd9\x7b\xba\xe8\x56\xcc\x11\x62\xde\x76\x25\xd7\x0d\xd9\x95\x7f\x95\xae\x73\x84\x89\xc1\x74\xd7\xcc\x3d\xf3\xad\xa0\x3d\x4d\x21\xb8\x5b\xe1\xac\xa1\x95\xbc\xee\xe9\x4a\xe7\x8e\x8a\x4d\xef\x0b\x26\x7f\x37\xd2\x00\x80\xc9\x03\x9e\x0a\x64\x9a\x96\x44\x20\xfa\x83\x15\x0f\x9a\xf4\xe1\xd0\x9b\xad\x65\x3b\x75\x87\x11\xfb\xca\x32\x62\xb6\xcb\x7d\xad\xf9\x06\x21\xea\x18\x97\x0b\x96\xf7\x75\xfd\xfd\x4c\x3d\xad\xa5\xf7\x15\x06\x25\xb4\x0e\x92\xdd\x6d\xa9\x9a\x0a\x69\xb6\x55\x63\x2a\xb4\xca\x7d\x35\x68\x66\x2c\xf6\xb6\x5b\xab\xba\x37\xa0\x74\x0d\x9a\x05\x93\x81\xab\x0e\x70\x4f\xff\x4d\x3b\x6e\xff\xe3\xbe\xfe\x66\x00\xe0\x2b\x50\x6e\xd6\xa3\xb1\xc2\x3a\x3b\x59\x3b\x97\x46\x46\xa5\xcb\xc3\x5f\xd0\x64\x6c\xcb\xf9\xfd\xf7\x29\x8b\x0b\x06\xad\xd7\xc7\x99\x8d\xf3\xa7\x78\xd9\xba\xe6\xba\x98\xed\xd8\x5a\xee\xf4\x0b\xb5\x3b\x56\x55\x8a\xb7\xdb\x7b\x3a\xfd\xeb\x7a\xfd\x63\xb6\xee\xcf\x62\xf1\xd3\x57\xb2\x3f\x5b\xcb\xbe\xda\xe7\xfd\x79\x9e\x2d\x6d\x18\x9c\x42\x5b\xeb\x39\x23\x52\xc0\xd0\x31\x92\xe2\x2b\x73\x80\x5e\x5a\xca\xb3\xbc\x1f\x58\x74\xb6\xb2\x8c\xf0\x70\x38\x43\x8e\x2e\x0a\xc9\x31\x61\x25\x72\x18\xb9\x85\xc3\xc8\x2d\xfe\x47\x65\xe4\xe6\xff\x95\x19\xb9\xaa\x97\x2b\xf7\x4e\x09\xad\xac\x59\x4c\xc1\xa4\xa3\x3f\xe4\x2a\x27\x35\xb4\xa1\x2f\x2f\x61\x3e\x2e\x2f\xa9\x24\x30\x7e\xe2\x2a\xb0\x2d\xdd\xdc\x03\xd9\x40\x09\xea\x04\x74\xd7\x62\x50\x5b\x63\x74\xa2\x16\xf0\x3e\xe8\xc4\xed\x64\x73\x96\x33\x31\xb3\x0c\xa4\x02\xc1\xfe\x22\x2e\xc4\x57\xb2\x7f\xc5\x98\xe8\x1b\x55\x6a\x5e\xb0\xa4\x7f\xd0\x2f\xd6\x2b\x96\x23\xdc\xc8\xa1\x98\x4d\x88\xb0\x5b\x69\xc9\x23\x86\x03\xc7\x03\xd6\x8d\x03\xa5\x37\xdd\x13\x33\x35\xa9\xd7\x8d\xd4\x4e\xc0\xab\xe7\xca\xfa\xca\x69\x95\x52\xc0\xd3\x84\xa0\xeb\x86\xc1\x23\xdc\x6e\x54\xe2\x9e\x03\xaf\xb6\x4b\x83\x83\xa4\x89\x40\x72\x8c\x2b\x4f\x3f\x0d\xa6\x29\xd7\x3c\xf1\x55\x43\x3e\xbb\xcb\xb7\x77\x2d\xcc\x70\xa8\x15\xfe\xa9\xec\x66\xe2\xcf\xd5\x24\xf7\xd9\x27\xb8\x45\x83\xf5\x5f\x17\xd2\x9e\x3c\x57\xac\xaf\x4a\x2b\x6c\xe3\x72\xf5\x3d\x56\xef\xa8\x96\x2f\x14\xf0\xf6\x51\x23\x91\x3b\x67\x6b\x56\x16\x42\xc4\x82\x7d\x30\x18\x13\x77\x8b\x04\x83\x71\x59\x62\x22\x87\x43\x0d\xe0\x25\xca\x08\xd3\x42\x28\xe3\x08\xa3\xe3\x06\xc3\xc1\x6c\x6a\x0a\x6a\xc9\x6d\x85\x28\x3e\xb0\xb9\xa2\x33\xb6\xdb\x81\x79\xaa\x11\x86\x99\xef\xc1\x44\xad\xc6\xce\x57\xbf\x58\xc4\xcb\x46\x96\x0e\x34\xf4\x3e\xcf\x3e\x6d\x6c\xa6\x31\x10\x94\x66\x11\x5f\xc6\xd2\x99\x28\x5f\x66\xe7\x5a\xd8\x0a\x0a\xa0\x3b\x8d\x21\x95\x9d\x40\x98\xc9\x7a\x44\xa0\x60\x30\x18\xd7\x86\x15\xb6\x33\x65\x89\x76\xdd\x41\x58\x67\x1d\x82\xde\x58\x00\xb3\x3e\x2a\x6e\x34\xa1\xe7\xa2\xca\x5e\x4e\x77\x3b\x21\x48\xed\xf1\x87\x1b\xe7\x75\x39\x15\xae\x43\x9f\xda\x3f\x8e\xed\xc0\x52\x7f\xc8\x71\x59\x82\xc7\x0f\x47\x17\xb6\xda\x0a\x3b\x9d\xfd\xef\x26\x6c\xca\x20\x4c\x01\xaf\x1d\x21\x61\xdc\x21\x78\xca\x7d\x7d\x27\xfd\x42\xf1\x49\x70\x09\x56\x45\xaf\xa2\x19\x11\x56\xda\xc4\x8b\xf3\x2a\xac\xf7\xef\x2c\x6a\x0a\x35\x25\x44\x80\xee\x88\x88\xec\xb0\x23\x05\xfd\x4f\x46\x72\x3a\x18\x54\x34\x35\x68\xf7\x1a\x1e\xa5\xea\x5b\xed\x21\xac\xdb\x30\x84\xe6\xc3\xe1\xe7\xea\x00\x54\x06\xae\xac\xa2\xff\xb7\xc4\x6d\xdd\xc6\x95\x90\x32\xb5\x0f\x9a\x95\x31\x72\xeb\x63\x47\x3a\x67\x28\x9e\xce\x3a\xf4\xb7\xa9\x7d\x68\xd4\x71\xd1\x16\xcd\x75\xd7\xc0\x3e\x41\xf9\x8a\x05\xb3\xa5\x2b\x61\x48\x2d\x1d\xac\xed\x5f\xe8\x02\x39\xa2\x42\x3c\x75\x5e\x82\x86\x7e\x4f\x45\xae\x3b\x50\xd9\xc5\x3c\x6a\x9c\xa7\xda\xd3\x13\x67\x15\x2b\x68\x8c\xd4\x41\x6e\xd9\xfe\x2e\xc5\x5e\xe9\x67\x15\xb4\x97\xb8\xe6\x95\xb2\xcf\xb5\xc6\xc0\xf6\xe7\x3a\x96\x4c\x4f\x95\x22\x7c\x67\xeb\x3c\x67\xc2\xcc\x5d\xcf\x70\x97\xe6\x94\x3b\xb6\xb4\x73\x57\xb2\x2b\x48\xd8\xf9\xc4\x6e\xfb\x09\xea\xe0\x7c\x41\x9c\xe2\xac\x9c\x7e\x86\xd4\x6a\x3d\xd4\x93\x4a\xa9\x27\xb8\xad\x4c\x62\xd9\x64\x62\x98\x6f\xad\xc9\xe4\x32\x9a\x0e\x4c\x75\x4d\x87\x99\xc8\x6b\x54\xf1\x97\x6c\xa7\xf4\x1e\x29\x46\x35\x99\xd7\xa8\xe2\xc8\x2c\x8a\xb6\x36\x6d\x8d\xdd\x59\xe9\xef\xcb\xdd\x26\xba\x04\x1a\x8d\xee\x49\xc8\xc1\xbe\x98\x87\xb6\x50\x64\x35\xb9\x50\xf7\x02\xed\x59\xd2\xcf\x94\xb2\xc2\x1e\xc5\x62\xcc\xdb\x2c\x86\x80\x34\x22\x30\xc9\x4a\xc4\x11\xc6\x25\xf9\xf6\xf0\xdb\x36\xa3\xda\x75\x1f\x6b\x98\xca\xe1\x70\xb0\xab\x47\x6f\x4c\xc3\xec\x9c\xef\x64\xe8\x49\x9b\x85\x56\x4f\x76\xc2\xb7\x5b\xe9\x2f\xb3\x5f\x4e\x3b\x52\x8b\x8e\xc4\xac\x23\xed\x96\x5d\x7d\xe4\xb2\xf5\xa1\xdc\xe7\x63\x0d\x5c\x57\xb0\xe1\xf0\xbb\x06\xa7\xfd\xb4\x45\xd1\x39\xa8\xc8\x74\x58\x71\x3e\xe6\x11\x49\x5c\xfb\xc9\x60\x94\x39\x6a\xff\x65\x59\x92\xc7\x47\xdf\xee\x5c\x06\xda\x9b\xbd\x6f\x0f\xbf\xbd\xcf\xe7\x58\x4c\xb3\xfb\xcf\xfe\x0e\xc5\xec\x9c\xc4\x84\x63\x72\x67\xc0\xc2\x85\xb6\x6e\x45\x3c\x5d\xa0\x2c\xcb\x26\xe5\x40\x72\xc7\xe3\x9f\x6b\xb1\x99\xb7\x10\x12\x15\x28\xaf\x6e\x58\xc0\x9d\x45\xe3\xf3\x70\x68\x88\x01\xf0\x15\xb4\x67\x1d\x60\xd0\x55\x08\xed\xee\x83\xa8\x35\xd0\x29\x37\x53\x03\x92\xd3\x7a\x6a\xba\x7c\x3c\xa8\xcc\x20\x6f\x83\xbc\xb5\x75\x4f\x77\x05\xa8\xcb\xa5\x04\x72\xe4\x94\x5d\x46\x41\xa4\x6d\x6e\xb4\x8c\x57\x76\xdc\x5d\xe7\x01\x77\x86\x0d\xe6\xa2\x25\xf9\xf6\x9b\xef\x5a\x9e\xf5\x24\x00\x64\x97\xe2\x72\x2d\x3c\x1a\x0e\x1b\x14\xdc\xeb\x8b\xd3\xb7\xd5\xe6\x6c\x59\x93\x10\x5d\x9f\x9a\xc1\x1d\x52\xde\x7a\x5b\xdb\x4b\x32\xb3\x96\xbf\x49\xdd\x36\xf2\x42\x7d\xdc\x56\x86\x37\x11\x38\xbe\xdd\x6e\xab\x0f\xaa\x47\x2f\xb2\xd4\x08\x1b\xf5\x67\xc5\xc7\x6a\x52\xc5\xd3\x81\x89\xd1\xd8\x71\x25\xa9\x76\xb1\xea\x28\x62\xe1\x38\xc2\xe0\x3d\x4a\xaf\x48\xc7\x4c\xec\xae\xd5\x76\xdb\x98\x10\x3d\x06\x50\xb6\x11\x5d\xe5\x6d\x37\x5f\x99\x4f\xd0\xc1\xcf\xce\x45\x59\x92\xa3\x6f\xc6\xfb\xf7\xb5\xb9\xb1\x47\x8f\x8f\xbe\xc5\x7b\xfc\x3b\xaa\xfc\x20\xf7\x1b\x0e\x07\x0a\x91\xe6\xbb\x7a\x22\xa7\xbc\x28\xb8\xb8\xee\xe7\xec\x9f\x6b\x9e\xb3\xa4\x5f\x41\xa9\x07\xa7\xd7\x40\xf8\xd6\x87\xf1\x1e\xc2\xfd\x9c\xcd\x32\x51\x97\x73\x54\x4c\xf4\x78\xaa\x7a\xe6\x6a\x6f\x77\xd7\x71\xb1\xe0\x79\x67\x15\xaf\x6a\x9e\x94\xcf\x91\x30\x6b\x56\x21\xc3\x3d\x7a\x67\x1d\x38\x4b\x7d\xfe\x15\x18\x0b\x5c\x0a\x97\xa5\xa9\xb7\x6e\x5b\x65\xf8\x7c\xfb\xed\x8d\x6a\x68\xf6\xce\xcd\xba\xa7\xaf\x8a\x52\xef\xea\xee\xaf\xab\x7a\xef\xd0\xf0\xce\xe8\xcc\x2a\x7f\x76\x6c\x1c\x35\xe8\xda\xca\xfd\xb2\xa9\xab\x73\x79\x5f\xf1\xbc\x90\xfb\x21\x84\xb8\x28\x85\xb4\x76\x33\xe9\x67\x79\xb5\xf3\x3d\x40\x62\x93\x6f\x82\xe6\x30\x77\x61\xdf\xc6\x63\x52\x47\xec\xf9\xc9\xdb\x93\x17\x17\x5e\x85\xa8\xde\xc5\x4b\x86\x59\xad\x09\x4b\x99\x71\x50\x01\xcc\xb0\x2a\xf1\xe6\xdd\xfb\xef\x5b\x05\xb6\x5b\xef\xe2\xe4\xdf\x2f\x8e\x3f\x9c\x1c\xb7\x6a\xba\xb3\x9a\x53\xfb\xe4\xc8\xbd\x5c\x11\xd4\xf7\xdd\xc4\x32\x73\xdf\x83\x8c\x75\x4c\x75\x6f\x02\x77\x25\x68\x4c\x58\xc3\xb9\x32\x26\x50\xe3\x8e\xe9\x42\xdd\x64\x3d\x28\xe0\xf0\x77\x4c\x36\x5a\x16\xcc\xda\xd8\xc7\x4c\x88\xd1\x09\xea\xbc\xc5\x21\xbc\x7d\x95\xaf\x7b\x88\x7b\xdc\x0c\x41\xad\x94\x51\x91\x05\x47\x9c\x62\xf7\xe2\x87\x80\x63\x02\x5d\x90\xab\xae\x8a\x0a\xf7\x21\x5c\x87\x98\x2e\xc9\x61\xe3\xb4\x6a\x38\x21\xc4\x77\xa5\x83\x3b\xe9\x9d\xeb\x59\xa6\xe9\x9c\x08\x2e\xe3\xac\x81\x17\x03\xe7\x3a\x46\x7a\x28\x40\x57\x1d\x7e\x68\x18\x61\xac\x15\xcc\xee\xe6\x22\x90\x64\x26\x3f\x05\x79\x69\x95\xe0\x33\x31\x63\xf7\xd4\xef\x92\x57\xf8\x4e\xf8\xd9\x7c\x0e\xce\x8c\x89\x34\xc7\x7f\xee\x9c\xfd\xb5\x67\xce\x4b\x6a\x18\x4b\xa8\x93\x83\x9f\x43\xc5\xb9\x04\x9d\x4a\x9a\x34\x8c\xba\xfd\x36\x4f\x30\xc9\x29\x42\x1d\x03\xc5\x95\x32\x3e\x14\x54\x33\x4f\xc7\xa0\xe5\x65\xc4\xdd\xe2\x19\x7f\x2a\x46\x23\x9c\x87\x22\xf2\xe7\x56\x08\x04\x6f\x33\xf9\xc9\x75\x4c\xae\xa7\x61\x3e\x0f\xba\x74\xdb\x3b\x9a\x26\x82\xe6\x21\x8b\x08\xa7\x21\xf8\xdf\x11\xc3\xa1\xc4\x95\x3f\x71\x3a\x26\x31\x15\xb6\x17\xd9\xb3\xf8\x69\x36\x1a\x61\x11\x66\xaa\x17\x03\xf0\x83\x64\x5e\xfc\x4b\xfd\x6a\x42\x39\xa8\xd4\xaa\x53\xdc\xba\x85\x56\x2d\x51\x1e\x68\x07\x16\x7d\x68\x17\x3a\x5c\xba\xce\x20\x1d\x87\xc3\x17\x5c\x6c\x4e\x8c\x3e\x8f\x82\x33\x49\xef\x1c\xdf\x1f\xb9\xf1\x76\x21\x43\x11\x55\xe2\x5a\x35\x25\xa6\x78\x4f\x0b\xdc\x54\x12\xbd\x33\x69\xc1\x5d\xed\x20\x82\x85\x22\x42\x9c\x70\x9b\x5f\x1d\x3c\xd5\x4b\xe5\xc0\xc2\x17\x5d\x1a\xf4\x6a\x1b\x5e\x5e\xb2\xe2\x34\x4b\xd6\x29\xdb\xf5\x50\xd3\x67\x56\x2c\x51\x76\xf9\x06\xaa\xfa\x60\x94\xff\xe2\x40\x2a\x18\x2e\x15\xc5\xdc\xc1\x94\x00\x04\x83\xcb\x6a\x9c\xfb\x19\x70\x69\x8a\x48\xf0\x15\x71\x2e\x6a\x5f\xf1\xbb\x17\x16\xe4\xae\xbe\x09\x09\x06\x63\xb8\x80\x52\xf3\x51\x62\xd5\x54\xd6\x6d\x19\xb3\x43\xf0\x2c\xe2\xe2\xec\x56\xd8\x7a\xed\x09\x26\x55\x1d\x68\x72\xf4\x18\x97\x08\x57\xa3\x75\x57\x12\xe1\xa6\x4e\x66\x07\xfe\x6f\xe9\x42\x1a\x3d\xa6\x25\x4f\x53\x5e\x00\xb9\xe2\x81\x38\xce\x3c\xe6\xea\x93\x00\xdd\x1e\x41\xbd\x45\xb6\xce\x3d\xc2\xa9\x97\xc4\x1b\x8f\x64\xd4\xbb\x65\xec\xa3\x47\x62\xea\x2d\x33\x21\x17\x1e\x29\xa8\xf7\xcf\x75\x9c\x4b\x96\x7b\x24\xa5\xde\x86\xc5\xb9\x47\xd6\x70\x15\xc0\x3c\x32\xa3\x8f\xfe\x03\xfd\x94\xdc\x3d\x2e\x71\x78\xf0\x28\x9a\xaa\xe7\x09\x39\x2c\xf1\xb4\x7a\x1d\xab\xd7\xf0\x3f\xc6\x07\xdf\x45\x0f\xeb\xcf\xc1\xb4\xfb\x39\xf4\x03\x28\x36\xc2\xd3\x07\x8f\x48\x42\x1f\xfd\x14\xa2\xf0\x3f\x7e\x8a\xa2\x11\x8e\xb6\x3f\xde\x4d\xc8\xe3\x72\x7b\xaa\x7f\x5e\x42\x91\x6d\xa2\xdf\x5e\xeb\xb7\x85\xfe\x89\xb7\xc7\xdb\xa5\x7e\x2c\xf4\xcf\x3f\xf4\xcf\xf9\xf9\xf9\xa3\x6b\xb2\xa0\x77\x22\x5e\x42\x18\x06\x8f\xa8\x11\x27\xf1\xa6\x08\xbc\xf3\xb5\x48\xe2\xcd\xe5\x69\x06\x3f\x17\x6b\x56\xa8\xdf\x1f\x58\x22\xf4\xd3\xc5\x62\x9d\xc3\xc3\xab\x9c\xab\x9f\xf3\x58\xae\x73\x35\x71\x60\x4a\x24\x91\x77\xe9\x61\x02\xf3\x56\x04\xde\x5f\x63\xb1\x8e\xf3\xcd\xe5\x2b\x76\x95\xc3\xc3\x69\x9c\xcf\x16\x97\xc7\xab\x9c\xa7\x97\xa7\xf1\xe6\xf2\xaf\x6b\xc1\x2e\xff\xba\x4e\x37\x97\xc7\xeb\xeb\x75\x21\x2f\xcf\xd9\x4a\xb2\xe5\x15\xcb\x2f\xcf\x66\x32\x53\xbf\xef\xb2\x1b\x9d\xf0\x92\xcd\xe0\xc1\x6d\xa9\x24\xf3\x1d\xfa\x57\xa3\xe9\x73\x4b\xdd\x98\x1d\x32\x10\xdb\xad\x45\x40\xcf\xa9\x9c\xb2\xc0\xf3\x46\xda\x2d\xae\x1c\x4d\x0e\xec\x27\xac\xd5\x86\x73\x3c\x62\x25\x59\xd1\xbb\x22\x98\x93\x5f\x3a\x84\x3e\x07\xcc\x5f\xcb\x99\x56\xeb\x42\x0a\x1f\x83\xef\xdd\xf8\x0a\x24\xd1\x0d\xff\xc3\xf9\xa3\x27\x63\xa0\xdb\xff\xf4\x64\x5c\x79\x50\x7f\x46\xc7\x53\x6f\xe4\x05\xde\x81\x87\x47\x73\x24\xc8\x21\xf1\xc6\x1e\x56\x29\xa3\x39\xe2\xe6\xb5\x24\xcb\xc0\xd5\xec\x34\xd4\xbd\xf4\x13\x70\x61\xf3\x2c\x37\x0f\x06\x69\x1d\x30\x94\x93\xca\x11\xcd\xe4\xf0\x21\xca\xfd\x0d\xf8\xbe\x39\x90\xe6\x01\x8f\x50\xee\xc3\xea\x40\xa2\x79\x52\xdd\x93\xfe\x2c\xcd\x04\x43\x18\x7c\x08\x09\x12\x83\x52\xf0\x01\x7f\x36\x26\x45\xfb\xe3\x08\x65\xd3\x83\x49\x30\xc1\x24\xb6\xd3\x3b\x42\x07\x2a\x3d\x3f\xe0\xf8\x11\xca\xa6\xfc\xa0\x08\x8a\x03\x8e\xf1\x76\x3b\xc6\x25\x89\x3b\xaf\xe2\x9e\x8d\xa7\xb5\xc7\x62\xa6\xb2\xba\x6e\xa5\x19\x2e\x89\xe3\xdc\x67\x56\xf9\x32\x3c\x0d\x62\xb2\x09\x52\x72\x1b\x64\x24\x09\x38\x79\x19\xac\xc9\x22\x10\x64\x19\xe4\xa4\x08\x24\x59\x16\x01\x23\xff\x16\x14\x65\x38\x8b\xb6\x5b\x03\x07\xb3\xed\xd6\xf3\xb0\x2f\xb3\xb7\xd9\x2d\xcb\x5f\xc4\x05\x03\x0d\x15\x1d\x55\xe2\x51\xf1\xe0\x91\x22\xcb\x4a\xb2\xee\xea\x68\x7d\xf3\x59\x96\x64\x49\x61\xc3\xdc\xa8\x13\xe4\x26\x5c\x46\x74\x01\xf3\xdd\xc5\x46\xf6\x1b\x3c\xe3\x6d\x49\xae\xba\x61\xb5\xa7\x7d\x2b\xdb\xab\x17\x20\x61\x77\x38\x50\x7c\xa3\x0d\x0a\x05\x65\x70\x9f\x86\x6e\x20\x20\x00\x51\xef\x40\xc7\x9a\x6b\x21\xed\x72\xb2\x77\x13\xf2\x88\x32\x22\x28\xb7\xde\x08\xf3\xe1\x50\x0c\x87\x68\x49\x05\x26\x62\xbb\x55\xef\xcb\x92\x6c\xe8\xce\xf5\x8d\xcb\x12\x30\xbb\xf0\xc6\x5a\x60\xc7\x0f\x94\x9c\xca\xe0\xce\x3d\x85\x62\xc9\x28\x23\xb9\x1f\xe7\xd7\x45\x7d\x4d\x40\x14\x7f\x70\x8b\x14\xc1\x73\x49\x57\xbd\x4b\x3f\xa5\x57\xe4\xd2\xe7\xf4\x9a\x5c\xfa\xb7\xdd\xc7\x87\x3a\x78\x20\x64\x4d\xca\x02\xe9\x3f\x78\x4b\xd6\x72\xa6\x1e\xd6\xe4\x93\xfa\xf9\x44\x1e\x68\x97\x24\xea\x45\x3f\x95\x58\xc7\x47\xb8\xed\x54\x8d\x5e\x54\xaa\x5a\x0f\xde\xd2\x2b\xc4\x7c\x5d\x37\x01\x51\x4d\xe5\xc3\x01\xe2\x37\x29\xe0\x53\x15\xcd\xe9\xc2\x11\x31\x5a\x36\x49\xe7\xd9\xb5\x4f\x7c\x90\x74\xda\xc8\x25\xda\x8b\x18\x20\x0c\xa0\x8c\x20\x5a\x08\xad\xa4\xc4\x6a\x6a\x5e\xaa\x7d\xfc\x2e\x7e\x07\xac\xd9\xa5\xbf\x76\xc4\x7f\xf6\x33\x48\x96\x5d\x80\x52\x89\x3b\x75\x48\xdc\x09\x3e\x72\x38\x1c\x3c\xfa\xc7\x83\x47\x5c\xc7\x5e\x91\xb8\xa2\x66\xb5\xc0\x11\xcd\x34\x53\x68\x2f\x17\x45\x78\x18\x1d\x4c\xb6\xdb\x31\xc9\x28\x12\xe1\x37\xd1\x76\xab\x10\x92\x13\xe0\x68\x4c\x8e\x6a\xeb\xd2\x69\xd5\x3e\xdc\x90\x7e\x7f\xf1\x02\x89\x70\x12\x11\x4e\x44\x78\x14\x6d\xb7\x13\x22\xc2\xc7\x91\xaa\x4e\x84\x5f\x9b\xdf\x27\xf0\x9b\x61\x1c\x54\x85\xbf\xb8\x4c\xe5\x16\xcc\x19\x77\x89\xac\x4e\xfa\x83\x4f\x94\xf9\x9f\xb6\x5b\xeb\xd3\x87\x0b\xae\x49\x08\x78\x6a\x47\xfd\x33\x2a\xb0\x0f\x12\x7d\xe7\xf1\x60\x43\xc1\x30\xfd\xd5\x3a\x4d\x7f\xd4\x8e\xc3\x74\xfa\xa9\x4e\x3f\xd5\x28\xd3\x24\xbe\xd4\x89\x2f\x4d\x44\x0a\x48\xfb\xc1\xa6\x55\xe2\xf3\x07\xaf\x75\xd2\xeb\x6c\x9d\x17\x55\xe2\xd2\x54\x08\x84\x48\x9d\x5c\xe8\x64\x2d\x64\x71\x72\x17\x36\x7b\x45\xd2\x14\x7a\x50\x0f\xd6\x92\xa7\x45\x87\x32\xed\x25\x0c\xb9\xf8\x7b\x9c\xf2\x64\xf7\xf3\xa0\x36\x19\x52\xdd\xaf\xf4\xa4\x1e\x24\x0e\x73\xa6\x67\xad\x38\x8f\x97\x6d\x33\x60\x8d\x0f\x36\x8e\x08\x4f\xab\x31\xca\x38\x97\x60\x7a\xfc\x8c\xe6\xc3\x61\xfe\xcc\xf0\x0a\x22\x81\x44\x5d\xdd\xf1\x5c\x11\xe2\xfb\x36\x3d\x7e\xd6\xaa\x49\x17\xfa\x33\x9b\x67\x3b\xc6\xc8\x6e\xd3\xb6\x8d\x67\x1b\x38\x3b\xe6\xfe\x83\xeb\x1d\x7c\x6b\x67\xc6\x5f\x23\x86\x41\x99\x3e\x94\x91\x55\xc0\x94\x28\x27\xba\xe4\x5a\xf0\x4f\x1d\x13\xea\x9c\x4e\x50\x04\xf8\xed\xb3\x39\xc2\x8f\x26\xec\x08\x0a\x9a\x94\x7d\x76\xf3\x0f\x12\xb5\x84\x17\x7c\xc9\xf4\xd2\x99\x31\xba\xdd\x2c\x6c\x10\x25\x90\xce\x27\x74\x30\x50\x9d\x2d\xf0\x76\x5b\x90\x05\xbd\xf4\x57\x0a\xcc\xbb\xed\xc1\x2f\xfd\x5b\x34\xf3\x1f\xac\xa7\xd5\x26\x9c\xf9\x0f\x36\x44\x12\xe6\xec\xb1\x2a\x89\xcc\xaa\x95\x4b\xa6\x79\x90\x9b\xf9\xe3\xea\xd8\xed\x9e\x65\x5d\xbf\xcc\x34\xb4\x87\x2c\x32\xec\x63\x95\xe6\x15\x1e\x26\x28\x99\x86\x63\x02\xff\x8b\x82\xf0\xf0\x88\x7c\xfd\x9d\xfa\xef\xbb\xef\xbe\xab\xd8\x52\x89\x55\xeb\xea\x2c\x35\x3b\x86\xdc\x98\xa7\x53\x72\x6d\x9e\x5e\x92\x2b\x45\xaf\x4b\x6f\xa4\xe7\xfa\xc1\x7a\xea\x7d\x7f\xf1\xc2\x0b\x3c\x0f\xf7\x8a\x5b\xae\x90\xd6\x02\xdf\xcd\xe2\x82\xf5\xd3\xa0\x1a\xc8\x1c\x4d\xc8\x18\x07\x73\x74\x34\x21\x93\x09\xee\xc1\xf7\xb8\xf9\xfd\x46\x7d\x1f\x93\x9b\x91\xfd\x9e\x05\xda\x13\xac\x6e\x48\x1f\x0b\x08\xfb\x8a\x28\x06\xb7\x8f\x0a\xe9\xdc\x52\xb4\x7c\xb6\x99\x2e\x47\xdf\x04\x4b\x7c\xb0\xa9\x0e\x03\x94\x4c\xaf\x0f\x6e\x83\xeb\x11\x7a\x72\x70\x8b\xc9\x8d\xa9\x92\x07\xf0\xb3\xb6\x2d\xaf\xd0\xd5\xc8\x83\xfd\xef\x91\xb1\xc9\x23\x1a\x1f\x0d\x1e\xf0\x88\xed\x55\xde\xf8\x6c\xf0\x81\x47\x0e\xcd\x67\xd9\x2a\x5d\xa3\x05\x4f\xa1\x66\x6b\x06\xe6\x82\x9f\x39\xcb\x4b\x05\x7a\xb0\xda\xfb\xdd\x97\x98\xcd\xc7\xc8\x60\xa2\xf7\x52\x23\x34\x51\x56\x81\x29\x49\x00\x26\x33\x4c\x16\x7b\x97\x8b\xcc\x29\x9a\xd1\xbb\x92\xcc\x14\x51\xb2\x18\x79\x2f\x35\xdf\x14\xae\x1b\x6f\x31\xbc\x9d\x6a\x96\x6b\x16\xa6\xf0\x6a\xd1\xb0\x4a\x11\x90\x62\x26\x71\x16\xe6\x3a\xbf\x9d\xb6\x59\x28\x21\xa1\x9a\xa8\x99\x22\x90\x16\xed\xa9\x99\xe1\x30\x89\xc8\x8a\x26\x60\xaa\x6a\x60\x6d\x84\x8a\x03\x03\x8a\x38\x80\xa0\xda\xea\x73\xbc\xdd\xaa\x1f\x13\x8c\xcc\x00\xab\x25\x84\x15\xba\x58\xab\xb5\x5a\xfa\x0f\x92\x70\x1e\xa1\x15\x26\x4b\x73\xd4\x10\x4b\x0e\x2c\x4d\x36\x1d\xa3\x83\x0b\x64\x61\x7b\xe9\x2b\x6e\xeb\x8d\x30\xa7\x09\xc6\xfe\x83\x44\xab\xe6\xcc\x8d\x06\xb6\xad\xb4\x81\x5d\x9d\xea\x01\x7d\xec\x84\x8b\xea\x58\x6d\x58\x3a\xc3\x66\xcf\xef\x8b\x49\x15\x6a\xe4\x12\x69\xd4\x14\x27\x49\x07\x5a\x5a\x13\x8d\x98\x7a\x8c\xbe\x03\x77\xc6\xc8\x68\x73\x69\x30\x28\x14\x18\x54\xa5\x9c\x53\xa2\xc6\x35\x0a\x89\x18\xbe\xc5\xb2\x2f\x23\x98\x9e\x3c\x5b\x8b\x04\xc9\x87\x4c\x23\x87\x6a\x11\x70\x03\x2e\x99\x44\xb1\x3d\x90\x47\xfa\xba\x5d\xaf\x51\x3b\x97\x31\x7c\x78\xb0\x71\x72\x71\x9b\x6b\x81\x26\x55\x62\x56\x27\x7e\xa3\xc7\x32\xa7\x68\xad\xc0\x75\xad\x40\xec\x09\x7b\x4c\xd6\x0a\xf4\x8e\x9e\xb0\xaf\xc9\x5a\x01\xd9\x84\x1d\x91\xb5\x02\x23\x45\xa4\xac\xe8\x0e\x66\x1f\xb1\x87\x73\x77\xb8\x2b\xed\x66\x05\x56\x6c\x7d\x25\xf3\x78\x76\xdf\xb2\x29\x0e\xeb\x60\xf2\xd0\x2e\xd8\x3c\xcb\x97\xf1\xee\xd5\x9a\xd1\x18\x51\x9c\x83\x86\x0c\x7d\xcc\x57\xbc\x60\xf3\x6c\xb7\xb6\xbe\xdb\xad\xf7\xe3\x8f\x3f\xfe\x78\x70\x7a\x7a\xf0\xf2\xe5\xc5\xeb\xd7\xc1\x72\x19\x14\xc5\x3f\x3c\x22\xe8\xa5\xff\x8b\x71\xf7\xc8\x5b\x78\x90\x64\x26\xe1\x35\x89\xcd\xd3\x92\x14\x15\xc2\x4e\x29\xf7\xad\xf8\x80\xac\x29\xd7\x4c\x65\x41\x66\xee\x18\x21\xca\x83\xab\xfd\x8b\x58\x28\xa2\xed\x56\x33\xb5\x78\xbb\xe5\xa1\x88\x6c\x64\x73\xa0\xf0\xc8\xa2\x0b\x4e\x2f\xfd\x02\x65\x7f\x9a\x1c\x6e\xb7\x93\x43\xc2\x0c\x93\x3c\x57\x8d\xb2\x9c\x27\x9c\x2d\x9b\x2a\xb2\xb5\x38\x80\x3d\x9b\x1c\x4e\xbd\xe3\x53\x2f\xf0\xde\x9f\x7a\x0e\xe1\xda\x64\x09\x03\x01\x5c\xff\x8f\x3f\x06\x86\x02\x32\x40\x64\x4f\xae\x83\x43\x4c\xd4\x0c\x06\x26\x9d\x9c\x06\xc5\x68\x42\x4e\x4f\x03\xd5\x33\xf5\xa8\x39\x77\x72\x7a\x7a\x1a\xcc\x90\x9d\x8c\xf3\x45\x96\x4b\x52\x90\x35\x39\x82\x4f\xea\xdb\x9a\x14\x98\xbc\x0c\x2c\x46\x78\xf9\x12\xaa\xb0\xaf\xa6\x9a\xa4\xd9\x8f\x1f\x30\x49\x12\xa8\xd7\xce\xf8\x29\x17\x96\xec\x24\x29\x39\x54\xdf\x9b\x19\x74\xd3\x75\x96\x23\xc8\x92\x04\x69\x68\xd2\x22\xf2\xda\x36\x92\x61\xf2\xfa\x35\x74\x23\xb3\x1d\x58\x04\x6a\xaf\x90\x85\xfa\x3d\xc4\x8a\x91\x47\x19\x89\x81\x5d\x3a\xb6\xcf\x13\x4c\x96\xb6\x8a\x18\x93\xe5\x12\xaa\x88\x6d\x15\x45\x73\x0c\x05\x26\x45\xe1\x8c\xb5\xb0\xf9\xce\xcf\xcf\x9d\xe4\x65\x41\x8e\x74\xfa\x3f\x02\xe1\x30\x98\x96\x67\x4f\x08\xea\xde\x43\xdb\xed\x0a\xa4\xe0\xa2\x8e\x18\x1f\xc0\xa5\x4b\xa9\xa9\xd9\x4a\x6c\xd3\x41\xa4\x4d\xbe\x7e\x78\xe0\x22\xa3\xe6\xce\xfe\x25\x13\xcc\x4a\x7c\x1e\x4d\xbe\x86\xda\x12\xde\x74\xce\xb3\x26\x33\x13\xbb\xd2\x50\x6b\x6b\x75\xfc\x29\x8a\x94\xac\x14\x2e\x79\x88\xe6\xae\xe0\x48\x9f\x3a\x4e\x02\x36\x44\xd1\xc1\x9c\xdc\xd0\x4b\xdf\xe8\x61\xce\xeb\x7b\x72\x8a\x12\x85\x9b\x12\x75\x3e\xde\x3c\x9a\x1c\x92\x44\x1d\x9c\x37\x24\x09\x0b\x95\x70\x44\x92\x30\x8b\x28\x5a\x1e\xac\xf0\xa3\x27\xe3\xc7\xdf\xb2\xaf\x49\xa2\x8e\x5d\x9d\xf2\xed\x93\xc7\x90\x20\x22\xba\x7c\x04\x18\x2d\x51\x48\x6e\xf9\x48\xa1\xb9\x44\x21\xb7\xa5\xa2\x65\x49\x82\xc3\x45\xb4\xdd\x2e\xc9\x6c\x7a\x13\x5c\xfa\x31\xba\xd1\xa3\xad\x0f\xad\x7d\x24\xae\xa6\x22\x63\xec\x3f\x78\x09\x74\x83\xc6\x22\x1d\xb9\x6f\x0c\x00\xbe\x8d\x54\xbe\x76\x36\x27\xe6\x54\x83\x80\x7e\xdb\x73\x6e\x20\xcc\x09\x47\x04\x85\x60\xad\x0a\x2a\x1d\x77\xdf\x28\x57\x8c\xbe\xc0\x24\x57\x0d\x40\xde\x2e\x26\xc9\xbf\xb5\xeb\x5c\xa3\x69\x4d\xcf\x76\xe4\xae\xf9\xcd\x06\xfd\x6f\x0a\xfd\xf5\xfc\xec\xdd\xbe\x79\xa9\x10\xb4\xa6\x39\x64\xf6\xe6\xfc\xcc\x72\x59\x10\xad\x56\x57\x51\xa5\xde\xc3\x42\x34\xca\xea\x62\x5f\x50\xe6\xfb\x8b\x17\x75\x99\x45\x89\x30\x39\xa1\xb7\xbb\xd2\x0d\xe7\xaa\x99\x9e\x90\x30\xf4\x1e\x2c\x0b\x8f\xb0\x88\x84\xde\x83\xc2\x23\x12\x1e\x96\x1e\xc9\xe1\xe1\xb5\x47\x04\x3c\xfc\xe0\x11\x0e\x0f\xa7\x1e\x89\xe1\x61\xe3\x91\x14\x1e\x5e\x7a\x64\x1d\x45\xdd\x6a\xac\x27\x21\x0b\x27\x51\xd4\xa0\x19\x1a\x3d\xbf\x46\x92\xb0\x70\x1c\x11\x95\x0f\x42\xad\x91\x8d\xcf\x3e\x49\x26\xda\xf7\x1b\x95\xc4\xea\x01\xdf\x6e\x91\x3a\x58\x6e\xc9\x06\x13\xf5\x0e\xc6\x18\x9b\x92\x6c\x2c\x98\x5d\x91\x8d\xcf\x8b\x97\xf1\xe6\xe7\x82\x5e\x93\x4d\x8b\xdf\x63\x0e\x37\x3a\x61\x47\x0f\x15\x4f\xb8\xf1\x99\xa0\x37\xe1\x32\x22\x1b\xff\x6d\x41\x6f\xc8\xc6\x5f\xa9\x7d\xb8\x29\x7f\xfd\xe5\xc4\x9e\xeb\x76\x7d\x50\x79\x8b\x60\xb9\xec\x1f\x7b\x84\xd3\xbb\x34\x2e\xe4\xcb\x78\x13\x78\xe1\x8f\xac\x90\x2c\x4f\xe2\x4d\x3f\x96\x51\xdf\x1b\x09\x52\xc4\x4b\xa6\xbf\x5d\x64\x6e\xba\x60\x9f\xa4\x4d\x5f\x66\x79\x9e\xdd\x36\x3e\xfd\xc0\xd8\xc7\xc0\x53\x27\x40\x3f\xb4\xe9\xaa\x19\x9d\x1e\xbe\x8d\x0b\x19\xf5\x9b\x9f\x55\x4b\x27\x69\xc1\x02\xef\xf4\xf4\xd1\xcb\x97\x8f\xd4\xf9\xe7\x95\x3d\xf7\x62\x47\x4d\xaa\x48\xe2\x36\x4f\x6f\x44\x4c\xdb\x6d\x8b\xb1\xb2\xd9\xb7\x5b\x88\xfd\x84\x58\xe5\xcb\xb7\x62\x3c\xbc\xc4\xc3\x96\xdc\x50\x38\x16\x65\xc4\x4b\xb4\xab\xd5\x82\xc6\xcf\x0e\x9e\x4c\x3d\xdb\x2f\x2f\x88\x9f\x1d\x4c\xa6\x9e\x1d\x86\x7a\x1f\xeb\xd7\x97\xf1\x46\xbd\x4d\x74\x66\xf3\x76\x38\xf5\xcc\x24\xa9\xb7\x6f\xf4\x9b\x2e\x58\xd7\x49\x52\x2a\xc2\x22\x52\x84\x49\x11\xed\x0f\x48\x93\x4e\x53\x27\x3c\x6f\x8e\xac\xc3\x59\x4d\xb5\xa1\x14\x94\x2e\x5a\x00\xb2\x73\x51\xd5\x49\x91\xef\x26\x0d\x06\x6c\x38\xdc\x11\xc0\x82\xb9\xcc\x70\x38\xd8\x25\x10\xbf\x54\xf7\xaa\xd2\x56\xfa\xc0\xae\x4f\x3e\xad\x40\x57\x49\x3a\xba\x56\x0a\xdf\xd9\xc4\x2e\x21\xb7\xff\xe0\x81\xee\x0b\xa5\x34\x57\xbd\x81\xff\x93\x7b\x63\x83\x19\x2b\xae\x79\x96\x4f\xeb\x47\xd0\x67\x98\x49\xdf\x98\xc8\x79\x38\x78\x32\x9e\x8c\x8f\x9c\x80\xe8\x0d\x43\xa6\xc9\x80\xda\x8b\x09\x08\x5f\x5e\x9c\xb2\xfc\x9a\xc5\x57\x29\x33\x51\x37\x19\x9e\x16\x08\xe5\x94\x19\x3d\x3a\x5e\xe8\xfb\x9e\x1c\x4f\xc3\x28\xb8\x2b\x21\x92\x38\x0e\x74\x1c\xb2\xbc\x6c\xab\x4c\x3a\x23\xb4\x16\xf7\xfb\xa3\x77\xe8\xf0\x85\x0d\xdf\xd7\xae\xdf\xf0\x46\x5c\xa2\xca\xb5\x6e\x47\x3d\xb5\x49\x92\x73\x53\xaa\xa7\xa8\x98\xde\xf7\x11\x75\x39\xf4\x76\xd1\xe2\xca\xe4\x7f\x53\x9c\x54\x57\xb9\x3a\xac\x44\x10\x46\x65\xd3\x07\xb9\xf1\x5f\xee\x58\xbe\xc8\x3e\x17\x7d\xd6\x65\xb5\x52\x15\x2a\x20\x44\x63\x8a\xef\x50\x4a\x53\x08\x79\xee\xc7\x6a\xbe\x61\x59\x68\xea\xbc\xa8\x7d\x9f\xee\x2e\x18\xed\x48\xdb\x6e\x25\x49\xf5\x22\x7f\x2f\x52\x56\x14\x67\x72\xc1\xf2\x5b\x5e\xb0\xf3\x15\x9b\xf1\x39\x67\x09\x15\xb0\x80\x6b\xda\x5e\x65\x8b\x68\xd7\x94\xb6\xbe\x31\x3c\x5d\x4f\xdd\x1e\x99\xae\x77\xaa\x7c\x70\xea\x5e\x70\x74\x81\xd9\x70\x98\xc1\xf4\x77\x05\x68\xe7\x8a\xa8\x12\x08\x42\x04\x69\x25\xaf\x0c\x75\x86\xa3\xca\xf0\x5d\x37\x45\xab\x17\x63\x38\x1c\x98\x48\xea\x7b\xaf\xd1\xab\xfb\xfb\xae\xa5\xae\xb3\x81\x79\x1b\xc9\xf0\x76\x8b\x62\x78\x18\x0e\xbb\x86\x25\xc3\x2c\xc2\x53\xae\xa8\xc9\x5d\xaa\x4c\xfa\xb3\x75\x21\xb3\x25\x14\xb2\x14\x5a\x61\x69\x33\xf7\xa3\x83\x67\xba\x74\x68\xf3\xa0\x28\x51\x46\x72\x8c\x58\x98\x45\x44\x35\x4a\x72\x1c\x40\xb3\x02\x99\x57\x98\x36\x5e\xda\x45\x12\x48\xfd\x94\x85\x1f\xa7\x69\x47\xdf\xda\x4b\xbd\xab\x02\x39\x6f\x6a\xa7\xe9\xb8\xfd\xa0\x9f\x26\xfa\x00\x13\x8e\x35\xa2\x9f\xb3\x64\x3d\x63\xee\xa6\x77\x50\x83\x86\x79\xb5\x8b\xc8\x9d\xbd\x7d\x4a\x69\xe1\x68\x67\xa6\x9f\x45\xfe\x8d\xfe\x92\x4a\x67\x56\xe1\x0a\x22\x76\xb1\x78\x73\xf5\x3b\xf4\x40\xfb\x0c\x02\xb3\x43\xb4\x1d\x47\xbe\x31\x80\xf0\x54\x7c\x38\xcc\x3a\x4e\x11\xde\x91\x96\x19\x7d\x71\x52\x90\x94\xac\xa9\x44\x1c\x93\x19\x85\x48\xf5\x7c\x8e\xd6\xc3\xe1\x0c\xda\x40\x05\xb5\x7a\x39\x78\x50\x39\x3b\xab\x6d\xec\x14\x62\x8f\x69\xf1\x74\x3c\xa0\xf1\xc1\xc1\x53\x0c\x44\x3d\xe2\x61\x1c\x91\x2c\x8c\x23\x5c\xe7\xb4\xfd\x2c\x55\xf5\x03\x3a\xab\xbf\x68\x09\x13\x6f\xdf\x7e\x91\x05\xcd\xda\x69\x20\xd6\x19\xd0\x45\xc3\xc8\x2f\x19\x0e\x6d\x42\x9f\xd7\x82\x1a\x4a\xb3\xfa\xc5\x88\x7e\x1a\x8d\xe8\x13\x91\xac\x9a\xcd\xe8\x54\x55\xef\x7c\x40\x57\x8d\x86\xe6\xc3\xe1\xaa\x6e\xa8\xbe\x47\x51\x2d\xd5\x6f\x3d\x2d\x4f\xcc\x11\x87\xa9\x44\x05\x5d\xd6\x33\x48\x73\x94\xe1\x2f\x9a\x45\x61\xe2\x54\x92\x65\x73\x1e\xf7\xcd\x78\x4a\x55\x46\x35\xed\x69\xe7\xb4\xdb\x7e\x0f\xa8\x82\x92\x01\xbd\x2f\x24\xb0\x2b\xcb\x69\x98\x6b\x77\x1a\x76\x37\x72\xf8\xbc\xf8\xf3\x7a\x3e\x67\x79\xab\x64\x95\xde\x30\xbe\xcd\x1b\x01\xb4\x1a\xa4\x80\xc0\xda\x18\xb5\xcf\x29\x12\x54\xe8\x23\x27\x61\x29\x5f\x72\xc9\xf2\xed\xd6\xf3\x3d\x92\x51\xe1\x2f\xe3\x4f\x2f\xd9\x4a\x47\x39\xd7\x21\x98\x14\x79\x06\x2e\x53\x73\x52\x38\xd8\xdd\xd9\x41\xb9\x82\x79\x7c\xb7\xa6\xeb\xed\x76\x42\xdc\xe3\x3b\xef\x42\xde\x33\xdb\x95\x84\xe6\xe1\x2c\x22\x0b\x2a\xfc\x22\x9e\xb3\xe1\xb0\x89\x8d\x12\x4c\xe6\x9f\x23\xcc\x12\x4c\x56\x54\xaa\x9f\x25\xad\x88\x30\x5d\x06\xc8\xb0\xb9\x43\x9b\x41\xad\x3a\x95\xdc\xd0\x74\x9a\x8e\xf8\x28\x46\x33\x1c\xc4\xe6\x46\x77\xb0\x18\x0e\x07\xab\xe1\x70\x59\x1d\x0e\x30\x88\x04\xd7\xf1\xe4\x06\xf5\x0c\x6d\xb7\xeb\x67\x59\x7d\xf9\x8f\x12\x72\x43\xd6\xa3\x09\xee\x15\xe1\x4d\x44\x13\x45\xde\x20\x86\x49\xe1\x58\x5c\x08\x22\xfc\x79\x1a\x4b\xc9\x04\x3c\xaf\x85\x7d\x6b\xe3\x23\x3d\x41\x31\x45\x19\xcd\x3a\xd7\xaa\xa0\x99\x9f\xdd\xb0\xfc\x36\xe7\x52\xdb\xdb\xa7\x6a\xdb\xb4\x16\x6c\xad\x16\x8c\xcf\x91\xc2\x47\xce\x4c\xd8\x09\x1a\x7c\x56\xd1\x9e\x57\x03\xe4\x35\x69\x09\x01\x36\x75\x0f\xa5\x23\xda\xb6\x19\x8b\x77\xf1\x3b\x24\xf1\x76\x7b\xa0\xbd\x67\x54\x3e\x13\x7d\x0f\x6f\xb7\x99\xaf\x3b\x31\x65\x81\xac\x76\x91\x8b\xc7\x11\xc7\x5d\xe7\x88\xb4\x4d\x7e\xd6\x50\x42\x51\x11\x3b\xf4\xba\x33\x64\xb5\xed\x5a\x30\x31\x00\x8b\x09\x77\xff\xda\xe1\x7d\x96\x31\x50\xb4\x7b\x07\xe0\x59\xdf\xa8\x03\xb6\xdd\xa2\x0e\x10\x94\xd3\x81\x55\x58\x0e\xf2\xe9\xa0\x45\xf3\x9a\x0f\x36\x68\x8b\x1e\xd2\x14\x08\x23\xaa\x9e\x09\xdb\x25\xbf\x3a\xa8\xe7\xbc\x63\x26\xc1\x03\x65\xa5\xb8\xc9\x46\xf1\x48\x44\x34\x0f\x45\x44\x40\x1b\x12\x97\x48\x12\x46\x04\x34\x49\x32\x6c\x4e\x6b\xd2\x5a\xa0\x4e\xf2\xcd\xae\x8f\x34\x4a\x67\xb1\x66\x01\x52\xdc\x4b\x99\xec\x0b\x3a\x43\xb9\xf6\xc0\x8c\x30\x26\x89\x7a\x0d\xc7\x11\x26\x0b\xba\x06\x34\xfc\xb4\xb2\x6b\x49\x8c\xf9\x57\xe5\x7e\x40\xcd\x98\x30\x90\xd8\xd3\xcd\xb0\xcf\x2d\xcd\x22\x14\x11\x26\xb2\x73\x75\x58\x27\x5a\x80\xf3\x70\x50\x68\x73\x90\xaa\x33\x8b\x5a\xd3\xf5\x29\x82\x8f\xdb\xad\xca\xa4\x55\x53\xe0\xeb\x70\x08\xad\x51\x1b\xb6\xb2\xf6\xab\xec\xc0\xfb\x5d\x19\x84\x30\x5a\x95\x95\xe4\x8e\xa5\x30\xda\x37\x35\xb8\x84\x6a\x99\x5d\x0c\x45\xda\xad\x7f\x4d\x84\x35\xd7\x65\x40\xc3\xf1\x61\xe5\x3d\xe8\x9a\x17\x32\xdf\x80\xed\xe9\x0f\x2c\xfe\x78\x1a\xaf\x4a\x97\x0b\x32\x33\x6b\xb8\xcc\x93\x4f\xbc\x68\x19\x12\xb8\x02\x28\x5b\x9b\x22\xbb\x80\xad\x75\xab\xb8\x66\xd6\x7f\xdb\xe7\xcb\x5f\x33\xb9\x53\x3e\x4e\x92\xdd\xf2\x0a\x2b\x30\x73\x09\x58\x95\x36\x57\x78\x80\x36\x9b\x75\x18\x83\x8f\x8e\x6e\x34\x6b\xa8\x83\xfd\x35\x8a\x1b\x83\x93\x0f\x76\xd2\x9c\xa9\xdd\x3f\x9b\xe0\x46\x86\x64\x6e\xe6\xb2\x37\x68\x09\xc1\x84\x64\x39\xf5\xe0\xc7\x03\x65\x5e\x2e\xa9\xa7\xfe\x7a\x25\x12\xdb\x2d\x12\x75\x58\xe8\x98\x14\xbf\x62\x4d\x79\xd7\x6a\xc6\x49\xb2\xeb\x56\xce\x65\xe2\x48\x46\xe2\x1e\x53\x7b\x4e\x77\x6d\x8a\x74\x60\xea\xd0\xbc\x47\x34\x27\x31\xe5\x38\x40\x28\xb3\xe9\x9f\xb8\xd4\xc9\x59\xe5\xeb\xcd\xcc\x66\xbd\x72\x48\x92\x9d\x10\xc6\x3b\x2b\x5f\xe5\xc5\x24\xc6\xed\x15\xe0\xc5\x4a\x71\xd5\x7b\xbb\xcf\xe7\xc8\xe9\xb7\xe5\x49\xef\x69\x43\x67\x74\x62\xa7\xf3\x69\x16\x70\x8c\x72\xed\xfd\xc1\x58\x81\xde\x5b\xc1\x27\x2e\x9d\xf2\xf1\x34\x0b\x62\x28\x6f\x96\x3e\xa5\x28\xee\x14\xbf\xa2\x78\x9f\xe7\x9a\xbb\x0a\xf1\x05\x61\x54\x3a\xd4\x34\xe0\xaa\xb6\x0b\xfd\x86\x4b\x9b\xb2\xed\xf7\xa6\xf2\xe5\xa3\x55\xd9\xdb\x1c\x31\xca\x31\x5c\x30\xe6\x11\xf8\xf4\xc1\xd6\x21\x4e\xcb\xa9\xba\x43\x62\x1a\x30\x73\xbd\x0e\xb1\x52\xf3\xdd\xee\x5a\x51\xab\xba\x37\x6d\xb9\x48\xc1\x01\xca\x9d\x6c\xae\x45\xb4\x82\x58\xc5\xf7\x93\x35\xdd\x43\x4b\xd7\x9a\x82\xb5\x7f\x0b\x2d\x32\xad\x7d\x40\x18\x64\xf5\xa1\xb1\x0f\x48\x45\x6c\xa4\x08\x34\x7a\xdc\x83\x23\xbb\x2a\x58\x7e\xb3\xa3\xb5\xb5\x13\x78\x9a\x30\x6b\x03\xde\x6a\xc3\x85\x71\x98\x08\x7b\xb5\xbe\x5e\x9d\xe9\xba\x73\x23\x4e\x68\xb4\xbb\x16\x7b\x5a\xae\xaf\x6d\xe6\x5c\x24\x60\x4a\xcd\xc5\xf5\x87\x2c\x93\x27\x42\xe6\x1b\x08\x56\x01\x92\x08\x05\xbc\x85\xb6\x3f\xb2\x0d\xd5\xb5\x02\x02\x93\x2d\x1c\xaa\x4a\x74\x6e\x1f\xb3\xae\x0e\x72\x40\x66\x1b\x11\x0d\x11\xed\x9a\x3e\x71\xf9\x2b\x2a\xfa\xc4\x65\x47\x3d\x76\x43\x7f\xb6\x5b\xed\x9d\x7f\x4f\xdf\xaa\x3a\x3f\xd3\xc1\xae\x2a\xf7\xf4\x72\x37\xc2\x4b\x27\x14\xb4\x0e\x08\xd4\xaa\x46\xc3\x83\x78\xe3\x2c\xda\x3e\x5d\x85\xb6\x60\x3b\x6f\xf8\xb1\x70\x6b\x30\x66\xdd\x1d\x0d\x19\x78\xe8\x82\x2d\x70\x26\x24\xfd\x3c\xcb\x24\xc9\xa8\x83\xfb\xb4\x5d\x5b\xc0\xed\x75\x82\x02\x3f\x05\x76\xaf\xf2\x6c\x59\x0d\x4b\x0b\x35\x62\x20\x5c\xf4\x4c\x32\xc9\xf2\x25\x17\xcc\x42\xaa\xd9\x0b\x05\x92\x0a\x87\x93\x2a\x34\xae\xb0\x53\x56\x90\x94\x8a\x4e\xf0\xed\x15\xda\x98\x89\x61\x92\x0e\x87\xa9\xef\xc0\x72\x85\x90\xd7\xf4\xce\xd6\x13\x80\x1d\x55\x47\x3d\x41\xaa\xfb\x26\xd8\x6d\x63\x0b\x92\x2a\x80\x7b\x69\xf4\x73\x8c\x71\x27\x9f\x6f\x6a\x07\x39\xbd\x78\x1a\x87\xb3\x88\xae\x83\xcf\x6d\xf7\x8c\x20\x94\xc3\x21\xa8\xb2\x83\x00\xae\xb9\x18\x4e\x07\xba\xb7\xb9\x5e\x06\x61\x1e\x4e\xc1\xe5\x2e\x2c\x8f\x5c\xe4\xac\x58\x64\x69\xa2\x38\x73\x76\xdb\x7f\xd3\x31\x4c\xe4\x60\x9a\x26\x5c\x48\xec\xc6\x25\xbd\x53\x75\x07\x39\xa9\x9b\x08\x04\xa9\x1a\x08\x78\x65\xf8\xd7\xcf\x9c\x29\x27\x59\x73\x2c\xd9\x3e\xe0\x6d\x62\xad\x5e\x97\x23\x9e\xfa\x8e\xcb\xe7\x45\x5d\x8d\xb8\x86\xb1\xba\x4b\xf8\x21\x96\x3c\x23\x19\x65\xf5\x0c\x6c\xb7\xe3\x5e\x53\x3a\x90\x61\x88\xa1\x9d\x85\x59\x1d\xfd\xc5\x50\x48\x34\xdf\x83\x36\x19\xee\x89\xed\x96\x3f\xcf\xa6\xf1\x70\x18\x57\xb0\xe8\x17\xd9\x92\x75\x86\xf6\x04\xa7\x90\x0c\xee\x4e\xa4\x71\xfe\x82\xf2\x6e\xa4\xa5\x81\x6b\x0c\xf2\xd7\xe0\xf7\xa9\xde\xc1\x5f\x6e\xed\x65\xfb\x18\xe9\xda\xa4\x0d\xc4\x62\x9d\x76\xb6\xc0\xb8\xa1\x2d\xd0\x06\x71\x87\xc8\x69\x1f\x23\x9d\x93\xdb\xa9\xce\x0f\x90\x9d\xd7\x08\x46\x5a\x04\x03\xf0\xbe\x17\xc1\x18\xab\xeb\x4a\x61\x3f\xec\xde\xa6\x0c\x47\x6d\x3c\xbd\x07\x0f\xed\x85\xd4\x5a\x68\x0c\x9c\xad\xec\xb8\x17\xaa\xf4\xfc\xc1\xcc\xd1\x60\x8f\xfa\x8e\x23\xce\xad\x77\xa8\xf3\x78\xc9\xc0\xb2\xb5\xc4\x18\xa2\xcc\x5a\x26\x5b\xb4\xba\xd9\x2c\xb2\x2b\x95\x67\x8e\xc5\xc3\x60\xdc\xfb\x42\xef\x10\x5d\xf2\xef\x66\x1e\x6d\xef\x90\x0f\x6a\x5e\xda\xb8\x75\xfb\x8c\x90\xc4\x49\xae\xd6\x04\xfa\xa8\x0a\x2b\xf6\xab\xeb\xaa\xb5\x23\xad\xb6\x71\xe5\x70\x43\x86\xf9\x1c\x7d\xa1\xdd\x23\xc7\xc3\xe1\x60\x52\xb9\x27\x6d\xcd\x79\xc8\x23\x22\x43\xde\x29\xa8\x6d\x1e\x8c\x2d\x10\xda\x0b\xb4\x76\xf1\xfe\x7a\x7e\xf6\xae\x2e\xd5\x74\x21\x60\xf8\x0d\x4f\xe5\x07\xf1\xc1\x70\x58\xe1\xb8\x7b\x62\x1f\x4b\x1f\xdc\xb7\xbd\xe5\x85\xdc\x27\xe8\xb2\x73\x3c\x92\x25\x26\x5e\x7d\xc1\x22\x7d\x9e\x8c\xbc\x03\x6f\x24\x2a\x4b\x59\x8d\x0c\x4a\x54\xe0\x5e\x1d\x13\x69\xbd\x2b\x22\xb0\x8e\x31\xbe\xd1\xf6\x75\xe8\x9b\x49\xd3\x53\x9d\xa1\x68\x5e\xd4\x3e\xfe\xb7\x5b\x7d\xc9\xa2\x35\x72\x24\x5b\x16\x70\x08\x9d\xc6\x2b\xeb\xe7\x48\x5b\x7c\x74\xdb\xc1\xd6\xa5\x88\xe7\xb0\x0a\x1e\x31\x6e\x10\x33\xe2\x1a\xc9\x4e\x4a\x5c\x66\xae\x8e\x84\xaa\x7b\x87\xdc\x2a\xf8\x2f\x8c\x8e\x6d\x24\xdd\x25\x13\x85\x3a\x84\xc6\x4e\x0f\x6d\xa7\x4a\x92\x35\xc9\xa1\x6e\x22\x88\x3a\x25\xb5\xcc\xa1\x52\x89\xb2\xf6\xda\x55\x3b\xa3\x11\xd1\x2e\xba\x9a\xf3\xe4\x36\xae\x05\x0f\xc2\x06\x3f\xab\xe7\x92\xd2\x73\x26\xa7\x28\xa7\x02\xc6\xa0\x4d\xfc\xc1\x0d\xdf\x33\x9d\x62\x83\x11\xf0\x5f\xd8\x68\x84\x03\x24\x1a\x11\xee\x6c\xba\xb5\xb7\x6f\x60\xbc\x94\x75\xc5\x6f\xde\x3b\xb2\xc1\x40\x56\x31\xdf\xf8\x2f\xec\x80\x76\x76\x55\xc2\xc7\xc0\x7a\x7e\x6d\x4d\xf9\xc1\x81\x3b\xea\x4a\x58\x42\x06\xe3\xd6\xc4\x6b\x79\xcb\x7e\x02\x74\x6f\x1f\xb9\xed\xe3\xce\x1c\x82\x6f\x43\xd3\xa4\xc4\xd8\x99\xb8\x83\x03\x02\x34\xac\x99\x50\xd4\xd9\xc5\xf6\x40\x30\xc9\x71\x00\x72\x6a\x24\x28\x77\x82\x01\xe2\xc6\x2c\x1d\x40\x70\xaa\xca\xa4\xfe\xcb\xea\x56\xf3\x11\x20\x6e\xc3\x06\x0a\x32\x81\x29\xc2\xad\x49\x5a\xc4\xfb\x25\x6a\xba\x09\x2b\x4e\xcb\x9a\xe2\xb4\xcf\x94\xb2\x42\x34\xb7\x94\x09\x6b\xc4\x67\x5c\x76\x1d\xd8\x7b\xb7\x83\x73\x80\x8f\x83\x2f\x81\x98\x66\xb3\xb3\x6c\x2d\x24\xdd\xd7\x91\x46\x56\x43\x37\x76\xc1\x8c\xab\xdb\x22\xf0\x9d\x45\xa7\x44\x28\x06\x48\xee\xfa\x60\x9c\x4c\xb5\x6f\x3c\x17\x58\x3b\x14\xeb\x00\xe1\x82\x07\x04\xfb\x51\x68\x12\xab\xa3\x5b\xc7\x45\x91\xcd\x78\xdc\x41\xfc\xfe\xca\xf6\x35\x8f\xe9\xb6\xa0\xe8\x8f\xbd\xfa\x90\x50\x16\x28\x94\x56\x29\x40\xa6\xc5\x8e\x99\x9e\xf6\x1e\x66\x95\xd1\x75\x71\x9d\x15\x61\x12\xd3\xea\x7c\xec\x77\xae\xa5\xc2\x72\xa2\x9e\x22\x90\xf9\xf0\x39\x1a\xc4\xfa\x0e\x5b\xad\xa4\x80\x40\x03\xd8\x4f\x32\x61\x55\x1a\xee\xd4\x73\x30\x18\x97\xbd\x98\x0e\xc6\x84\x51\x69\xdc\xb2\xd8\x86\xcd\x99\x85\xd4\x19\xeb\x96\x9f\x22\xd5\x23\xad\x10\x66\x2a\x99\x18\x4f\x7d\xa6\x8a\xb2\x34\x96\x8f\x6e\xaf\xc4\x6f\xea\x15\xc9\xc1\xd9\x87\xbd\x83\xa9\xce\xd3\xe7\x94\x9b\xfe\x88\x8e\xfe\xb0\x30\x1f\x8d\xa2\x72\x07\x3c\x98\x90\x39\xbf\x67\x1d\x2c\x3b\xad\x57\xc2\xe4\x46\x98\x14\xbf\x76\x29\xec\xa0\x0b\x3b\xe8\xf8\xfe\x41\x17\x6a\xd0\xb9\x1d\x34\xe8\x86\x56\x2f\x93\xe8\x0b\x96\xa6\xd8\x37\x15\x61\x4e\x4c\x45\xd1\xbd\xcb\xf3\xfb\xf4\x94\x70\x3a\x06\x8e\xb0\xb9\x5c\xfc\x39\xcd\xee\xef\x23\x0b\xf9\x68\x14\x75\x2c\x59\xe5\x19\xf3\x33\xbb\xae\x9a\xa2\x46\xe9\xb8\x46\x04\x9f\x29\x5f\x2d\x76\x77\xe4\x4d\xab\xe4\x87\x9c\xda\xc3\x96\xc7\xf8\x88\x76\xc0\x1a\x6e\xf4\x87\x8b\x62\xc5\x66\x5d\x6a\xfa\x75\x57\x7e\x7d\x07\x40\xcf\x50\x64\x09\xfb\xb9\xf0\xd7\x92\xa7\xb6\x19\xa3\xb3\xe4\xe1\x66\xcf\xcc\xd7\x66\xcf\x3e\xa3\xe9\xad\x3b\x96\x41\x20\xc6\x4e\x2e\x4d\xc1\x55\xe6\x44\xe7\xe5\x2d\x22\x5c\x61\x6f\xa0\xbc\x24\xb1\x1e\x7c\x1d\x77\x28\xd9\x7d\x5a\x19\xfb\x29\x57\xe2\x5d\x0a\x70\x22\x7a\x57\x3b\xeb\x9e\x34\x29\x56\x8b\x11\x4a\x7b\xf0\x67\x42\x07\x47\x69\x88\x7e\x3e\xb5\x3d\x74\x57\x79\x77\x36\x80\x63\x5f\x7d\xa9\x77\x4a\xad\x57\x95\x80\xde\x26\x72\x1a\x1a\x63\xc2\x3e\xb3\xa0\xf2\x3e\x88\xea\x5e\x0f\x35\x18\x3f\x9b\xef\x9a\x7d\xd7\xce\x09\xf2\x3a\x1a\xa6\xa0\xe3\x9e\xa3\xeb\x2f\x11\xea\x30\x02\x78\x4e\xf3\x69\x35\xc8\x5d\x7c\x2a\x2a\x7c\x2a\x7d\xb6\x5c\xc9\xcd\x6e\xdb\xba\x6e\x70\xa3\xda\x9c\x11\x40\xe8\xaa\x20\xef\xa4\xa0\x9a\x8e\xb5\x6b\x4f\xfe\x2e\x8f\x6a\xbc\xc3\x77\x87\x58\xd0\x0b\xd8\xf0\xae\xd3\x04\x27\x4d\x35\x75\x2d\x02\xb0\x4e\x5a\x43\x87\xe4\x9d\x39\xf4\x8a\xf4\xda\x4a\x3a\xd5\xfd\x1b\x29\x48\x6a\x9c\x5d\xec\xe8\xe4\x65\x57\xa9\x5d\xc9\x47\x86\xa2\x08\xfa\xdc\x18\xb1\xc1\x97\xab\x94\xf9\xda\x2b\x60\x87\x57\xfc\xdd\x38\x2c\xdd\x35\xb2\x4f\x2b\x2d\xa1\xeb\xc7\xe0\x79\xfc\x2a\x9e\x7d\x34\xb5\xb6\xf5\x06\xb7\x5b\x69\xd4\x77\xf4\xa0\x7d\x5e\xfc\x9d\xb3\x5b\xf8\xd2\xe5\x21\xd2\xb9\x7d\x37\x80\xa5\x6f\xe0\x5d\x73\x7a\xad\x9a\x35\x26\x45\x05\x71\x26\xd4\xea\x08\x0b\xc4\xc2\x38\x22\x31\xae\xbd\xd2\xed\x0e\xb3\xa2\xda\x30\x9f\xa3\xbc\xd2\xa3\xb6\xe3\xec\xf3\x56\x68\x8d\x41\x73\xdd\xc1\xe5\xe8\xee\xce\x41\x18\x93\xbd\x65\xa0\xcf\x99\x16\x6e\xb4\x45\x19\x20\xb1\x14\x5a\x75\x33\x33\x1d\x57\xd9\x39\x65\x24\xa6\xe3\xa7\x83\xb1\xe2\x42\x52\xca\x1b\xe7\xe4\x53\x2c\x50\x6a\x48\x96\x18\x93\x78\x34\xd2\x25\x1b\xd4\xaa\xb0\x2f\x3f\x70\xb9\x78\xb7\x4e\xd3\xbf\x35\x88\xc9\xdf\x04\x58\x6e\x95\xbf\x3f\x90\x35\x6b\xff\x2f\x0f\x70\x1a\x09\x59\x98\x6b\xba\x39\x65\x12\xb3\x6e\xc3\x1d\x58\x01\xf0\x02\x8d\xff\xff\x05\xb0\xda\xd9\x79\x37\xcc\x3a\x58\x55\xb4\x6f\x9b\x9b\xd7\x01\xad\x13\xb4\xcd\x67\x3d\x3b\xdc\x85\xb4\xa5\x60\xcb\x4c\xf0\x42\x3e\x3a\x67\xcd\xca\x82\xbe\x60\x2c\x29\xfa\xb1\xec\xa7\x2c\x2e\x64\x5f\xde\x66\xb5\x57\x57\xdf\x84\xfa\x05\xc2\x1d\x0e\x9e\x73\x26\x89\xa0\x93\x47\x8a\x59\x00\xe7\x37\xd9\x0e\xa3\x07\xca\x4b\x92\x8e\x9f\xca\x67\xd9\x53\x39\x1a\x41\x2f\x15\xb3\x8c\x9c\x73\x33\x94\x11\x06\x16\xd9\x0a\x50\xf3\x1e\x83\xf7\x67\x42\x3b\x2a\xd2\x92\x21\x4e\x19\x2e\xad\x94\xd4\x68\x13\x93\x19\xe5\x15\x19\xfa\x74\x80\x62\x3a\x6b\xcd\x38\x5c\xf2\x17\x34\x36\xd3\x9e\xaa\x83\xd1\xed\x90\x22\xc0\xd7\xcd\xbe\x0c\x20\x96\xf4\x60\x0d\xc2\x85\x02\xe3\xbb\x54\xb1\x22\x57\x39\x8b\x3f\x96\xe9\x70\x08\xd1\x02\x51\xed\x8f\x31\x57\xc7\xec\x5a\xfc\x1e\xab\x01\xb5\xfc\x8a\x65\x30\x62\x37\xb5\x10\xbc\x7b\xee\x19\x1d\x3f\x65\xcf\xf8\x53\x36\x1a\x61\xbd\x16\xf5\x50\x59\xe4\x4e\x9d\xe2\x2f\x5a\xc0\x0a\x03\xcd\x75\xa6\x5a\xfc\xa7\x86\x9b\xf0\xb9\x09\xd8\xd3\x65\x6a\xd9\x58\x4c\xd3\x41\x6d\x62\xde\xf5\x05\x31\x5c\x87\xda\x6e\x8c\x88\x35\xfb\xd7\xde\x4c\xa0\xaf\x51\xf5\x6f\xbb\xbd\xa7\xbf\xc5\x66\xb9\x64\x32\xe7\xb3\x97\xfb\x3a\xfe\xdf\xa3\x07\x1a\x23\xc8\xfb\xeb\x60\x5f\x3e\x0a\x5e\x9c\xaf\xaf\xf6\x4b\x6c\xeb\xce\xf6\x76\x6f\x4a\x54\x0a\xcc\xfe\xf3\xc6\x22\x18\x35\x6f\xe8\x99\x68\xf5\x4c\xaf\x98\xdb\xbb\xee\x3b\x04\x88\x84\xa2\xb0\x48\xa3\x63\xee\xb5\xbc\xed\xb8\x71\x8c\x23\xdb\x5e\x21\x5a\xf3\xdf\x9a\xb1\x76\xbf\x58\x63\x86\x60\x79\xbb\xdd\x21\xfc\xaa\x3a\x8d\xb0\xd2\xad\xb6\x42\x8e\xf7\xd4\xcb\xee\xaf\xb7\x0d\x21\x9d\xed\x24\xbc\xf8\x59\x35\xf0\x45\xcd\x80\x67\xd4\x2f\x68\xab\x72\x7d\xda\x00\xc7\x2f\x98\x88\x76\x87\x77\x40\xba\xf6\xc4\xca\xdb\x9e\x58\xab\xe1\xf1\x30\x8b\x9a\x73\xc8\x33\x01\x11\x79\xbb\xa4\x97\x6d\xe0\x84\x88\xf1\x8c\x30\x2a\x89\xa4\x39\x26\xda\x01\xbb\x8b\x3b\xc6\x6d\x10\xef\xeb\xef\x55\x07\x45\x63\xf7\x92\x4c\x1d\xca\x20\xc7\xee\x9a\x33\x51\xcd\x59\x36\x1a\x55\x97\xfd\x15\x5e\x6f\xf7\x3b\x77\xae\xeb\x5b\xc3\x83\xaf\xbd\x46\x97\x46\xb9\x16\x94\xc3\x16\xfe\x39\x9e\xcd\xe2\x3c\xf9\x57\x6a\x53\x93\x20\xa6\xe3\x40\x3c\x42\xad\x8a\x61\xa2\xb3\x1b\x96\xa7\xf1\xea\xb7\xd5\x5c\x39\x98\x31\x67\xae\x6e\x01\x77\xe8\xd5\x76\xfb\xce\xd6\x11\x39\xf8\x3f\xd7\xec\x2d\x17\x1f\xdf\x24\x9e\xaa\x8a\x32\xd0\x37\x1d\x0e\xd1\x2c\x13\x45\x96\x32\xff\x36\xce\x05\xf2\xc4\x75\x1e\xaf\x16\x3e\xfc\x0d\xfa\xe0\x21\x49\xd1\xb7\x10\xde\xf0\x86\xe5\x10\x73\x6c\xec\x4f\x1e\xf7\xff\xd3\xad\xf2\x3f\xfb\xbc\xe8\x27\x6c\x95\xb3\x59\x2c\x59\xe2\xff\x24\xbe\x2f\x58\xff\x3f\x41\x6a\x0e\x55\xfd\x67\x5f\x5f\x44\xdb\xd8\x8e\x3f\x09\x8f\x78\xf0\xe7\x5d\x26\x59\xd0\x97\x0b\x96\x33\x55\x49\x9c\x16\x59\x7f\xb6\x88\xc5\xb5\xa2\x56\xfb\xe6\x86\xb0\x7f\xc5\x16\xf1\x0d\xcf\xf2\xa0\xff\x4a\xf5\x44\x64\xb7\xfd\x4c\xf4\x59\x3c\x5b\xf4\xa1\xfe\x9f\x04\x2f\xfa\x6a\x24\x3c\x61\x39\x4b\xfa\x32\x83\x68\x68\x99\xec\xc7\xfd\xba\x17\xfd\xab\x4d\x55\x23\x82\xc2\x2c\xb9\x86\x66\xf5\x60\xb0\x0f\xee\xbb\xeb\x02\x94\xf9\xee\x30\x31\xa9\xdd\x45\x3a\xb9\x20\xee\xa4\x53\x68\x30\xe9\xa4\x60\x4f\xe3\xd5\x2e\xad\xe1\xce\xb7\x75\xdb\x5f\xf4\xff\xf3\x34\x5e\xfd\xa7\x19\x84\xe1\xc4\xab\x60\x99\xab\x2c\xdd\xcc\x79\x9a\xf6\xb9\x9a\x96\x79\x96\xb3\xfe\x1a\x9c\xfe\xeb\xaa\x0c\x29\x22\xab\xcb\xcf\x9c\x86\x11\x18\x56\x90\x19\x1d\x93\xa4\xd1\xf3\x69\xf7\xb5\xab\xb6\x25\x24\x9c\xae\xdb\x24\xb6\x80\x63\x8c\x6f\xb7\x17\x5a\x3f\xf0\x8e\x6f\xb7\x08\x5c\xe8\x8c\x75\xbb\x19\xf5\xfe\x67\x6f\xd4\x1f\x8d\x54\x62\x0f\xaa\x1a\x65\x44\x8e\x32\xec\xba\xf5\x2b\x6c\x30\x0b\x5c\xee\xb3\x0b\x70\xb3\x59\xdb\x46\xb2\x50\x63\x99\xd3\x53\xb2\xa2\xa7\x64\x49\x4f\xc9\x0d\x3d\x25\xd7\xf4\x2e\x4e\x92\x77\x59\xc2\x82\x4b\x12\x27\x89\x5a\xab\x66\xad\x02\xdf\x2d\x8d\x65\x16\xa7\x9a\xe7\xba\x04\x6d\x21\x7a\x0b\x86\x1f\x97\x48\x62\x52\xd0\xc4\x64\xae\x95\x25\x00\x57\x17\x98\xc4\x88\x93\x02\x13\xa6\xdd\x57\xc7\xe0\x23\x8b\xcc\x51\x41\xbc\x38\x49\x3c\x4c\x6e\x10\x26\x45\x49\xf4\xfd\x21\xb4\x7f\x6e\x5e\xa0\x5b\x27\xe4\x9a\x81\x2f\xf5\xe0\xd6\x3e\xbd\xc8\xd6\x42\x06\x9f\xd4\xab\xca\xaf\x5f\xcf\xec\x6b\xe1\xbc\xab\xdc\x45\x2b\x7b\xd1\xe1\xb5\xf6\xd6\x75\xd7\x37\x95\x7e\x0a\xf9\x8c\xf7\x09\xcd\xc7\x40\x17\x5e\xd8\x37\x55\x11\xd3\xf3\xe6\xe2\xa7\x8a\xf9\xd6\x35\x6a\xbb\x42\xae\xab\xeb\x14\x3b\xe5\x15\xed\x38\x6d\xd7\x53\xe9\x4f\xd0\xf1\x53\xfe\xac\xe2\x52\x47\x23\x13\xaf\x26\xa3\x2c\xe4\xe0\x52\x5c\x4b\x54\xdf\x24\x14\x54\x39\x04\x02\x4b\x68\x94\xf9\x32\x53\xdb\xae\xb2\x5b\x1a\x8c\xcb\x12\x99\xce\x10\x85\x2e\x77\xba\xfe\x65\x4d\x92\x98\xba\x2d\x4e\x75\x43\x81\x4d\x03\x75\x1e\xd3\x87\xf8\xbe\xe6\x4b\x77\x32\x77\x17\x85\x88\x3d\x61\x08\x99\x21\xfc\xc7\x44\xd4\x0e\xdc\xe5\x33\xf1\x74\x34\x92\x98\xa1\x5c\xb1\x3c\x25\xb9\x62\xd7\x5c\x7c\xbf\x4a\x62\xc9\x82\x25\x61\x22\x31\xcf\x37\x3a\x5e\xb4\xeb\x34\x7c\x89\x30\x79\xd1\xf2\xbf\x81\x98\xcf\x13\x90\x31\xdf\x80\x5f\x90\xb8\x80\x5e\x5e\xa8\xa7\x1a\x1a\x75\x5a\x65\x27\x27\xd0\x35\x26\x3b\x32\xcd\x6b\x3f\x13\x3d\xf5\xa7\x43\x10\x7b\xed\x3b\xfd\xa4\x4b\xfa\x9e\x5c\xfb\x55\x5f\xe9\x0d\x3d\x26\x73\x7a\x45\x56\x74\x43\xa0\x02\x46\x98\xf1\x2d\x78\xed\x3a\xd2\x2f\x11\x26\xd7\xb5\x78\xf1\x4a\x93\x22\x0b\xe3\xc6\x5f\xcd\x78\xc0\x88\x3e\x18\x2e\x36\x2b\x16\xc8\xd2\x31\x24\xdc\x34\x73\x0b\x35\xb8\xfd\xb9\x2f\x2b\x5d\x98\xce\xb8\xa7\x06\x33\x5b\x27\x5b\xaa\xb2\x3e\x4f\x98\x90\x7c\xce\x59\xee\xe1\xde\xb2\x0e\xab\xe0\xaa\x60\x4c\x91\xf0\x93\x58\xc6\x34\x27\x2b\x24\x88\xb7\x86\x09\xf0\x30\x0e\x90\x30\xd7\x02\x10\x44\x0b\x3e\x02\xde\xc0\x44\x56\x4a\x18\x80\x43\x44\xdd\xc9\xdb\x46\x2c\x38\x73\x39\x5e\x7d\x3d\xa9\xc3\xf0\xd8\x5d\x3a\xc8\x6b\x4e\xa0\xee\x61\xae\x81\xd5\x38\x80\x35\x6f\x20\x19\xe8\x35\x77\x8a\x70\x77\xca\x39\x12\x21\x8f\xea\xf0\x0d\x8e\xd6\xc0\x0a\xe5\xc4\x84\xc0\x37\x88\x6f\x30\xae\xfb\xf5\xc9\x91\xcf\x03\x99\x52\x7f\x3a\xab\x3f\x59\x88\xaf\x3f\x9e\x23\xd6\x74\x09\x64\x0c\x83\x25\xe5\x9a\x2a\xe2\x73\x24\x9f\x8d\x1b\x23\x54\x84\x90\x56\x55\x90\x64\xe2\xac\x88\xd9\xc3\x1a\xbd\x33\x8d\x41\x5c\xd7\x41\xba\x4e\xa1\xa7\x02\xe3\xe7\x74\x3c\x1c\x9a\x37\xb7\x42\x92\x55\x79\xb3\x46\xde\xac\x23\xef\x1c\xb1\x7b\x66\xe5\xa2\xc9\x13\x56\x2b\x26\xb6\xdb\x81\xed\x87\xed\xa0\x5d\x19\x1d\xcb\xd8\xf6\xab\x5a\x9b\xca\x46\xc4\x7c\x09\x73\x40\x9f\xbc\x46\x66\x4c\x61\x6b\x35\x68\x97\x10\xaf\xec\x6a\xe0\x3c\xa8\x3a\x76\x8a\xf0\x5d\xfd\xf6\x1e\xe1\xbb\xd9\x88\x4e\xea\x94\x63\x84\xef\xc6\x94\xa2\xd9\x01\x9d\xe0\xe1\x70\xe1\x1a\x81\x5d\xfb\x73\x9e\x33\xe4\xe9\x5d\x96\x78\x64\x81\x89\xcd\x40\xc7\x0e\xac\xbe\xb0\x44\x68\x87\x50\x6f\x77\xdb\xd9\x18\x41\x8a\x2a\xd3\xf2\x55\x4d\xce\x69\xf9\x20\xeb\x2b\x92\x5a\xd3\x7c\xb0\x33\x0b\x1d\x8e\x7b\x15\x17\x05\x4b\xfa\xde\xc8\x95\x5b\x38\x6c\x15\xa0\x59\xcd\x65\x3c\x1d\x08\x2b\x86\x52\xec\x4a\xc5\x67\xd4\x6c\x79\x9d\xb7\x2c\xcb\x5e\xa5\x89\xf6\xb8\x1d\x79\xcd\xb8\x4b\xb0\x1e\xda\x27\x3a\x46\xb0\xd1\xc9\xa9\x63\x03\x5b\x25\x1d\xe3\x4d\x51\x33\xbe\x8e\x38\xc8\xac\xf4\xd3\x7c\x44\x27\x18\x42\x55\xe4\x11\xa0\xa4\x4a\xf2\x66\x1b\x68\x45\x5c\x33\x6a\x66\x3c\xa1\x4c\xdf\xe9\xd5\x9b\xdb\xdc\xf1\x29\x6c\x24\x77\x5c\x7f\x30\x9d\x71\x6a\x7e\xad\xee\x56\x60\xde\x69\x28\xa3\xa6\xe7\x0f\x4d\xaa\xe9\xd6\x0c\x9c\x99\x16\x01\xce\xa4\xd3\x9a\x55\x30\x4b\xa8\x83\xcb\xd2\x96\x17\xa7\x5a\x86\x3d\xf2\xfe\xef\xff\xed\x7f\xfd\x5f\xfa\xde\x48\xba\x51\x63\x3e\xeb\x74\xa9\x19\x4f\xd9\x62\x8e\x1d\x58\x82\x50\x49\x7c\xbe\xe9\xcf\x74\x38\xda\x75\xc1\xfa\xf3\x38\x2d\x36\x7d\x23\x5c\x8f\x8b\x3e\xbb\x81\x88\xed\xc5\x5a\x5f\xb6\xd5\xe0\x23\x69\xe8\x65\x8a\x43\x51\x60\xee\x11\x2f\x9b\xcf\xbd\x88\xb4\x42\x8c\xab\x0d\x09\x8c\x72\x8b\x4e\x06\xdb\xa4\xdd\x0e\x9d\xeb\x56\x6c\x7f\xae\x98\x6e\x1e\x5c\x9d\x90\x7e\xc1\xc5\x8c\x29\xb2\x3e\x4e\x73\x16\x27\x9b\xfe\x22\x2e\xfa\xd6\xdf\x47\xff\x2b\x6f\xa4\x6a\x1d\x79\x5f\x79\x60\xa9\xdd\xe1\x5e\xa8\xe1\x1b\xc8\xd8\x2f\xb9\xf7\x90\x8d\xc0\x3a\x26\x6c\xe0\x17\xdf\x86\xd8\x0b\x8e\xf6\xc6\x84\xd0\x4f\x55\x0d\x96\x0b\x80\x80\xeb\x96\x69\xdf\x6e\x91\x4e\xa1\x61\x04\xb7\xed\x70\x4a\xdb\x0a\x03\x01\x01\x7a\x78\x09\x57\xc4\x8d\xb0\x34\x00\x76\xee\x39\x5d\xd1\x9a\x9d\xc3\x24\xda\x91\xba\x9a\xfb\x7d\xc3\x32\x61\x65\xa0\x7b\xd5\x0d\x81\xd5\x97\xce\x23\x90\x49\x64\xcf\x78\xbd\xbe\x19\xe6\x61\x16\xf9\xb6\xb3\x8a\x2b\x57\x08\xd6\x20\xff\x4c\x9d\x3c\x95\x07\x03\xa2\x40\x25\x70\x8d\x60\xac\xd4\x43\x1a\x3c\x3d\xe0\x75\xe4\xc7\x5d\x05\x2c\x90\xac\xef\xa8\xe2\xae\xba\xe3\x04\x35\xe4\x3e\xed\x3e\x1b\x3b\x40\xd5\xf5\x5e\x5c\x75\xde\xd0\x5d\x31\xc4\x03\x12\xd5\xf1\xce\x20\x7a\x98\x23\x21\xc9\x14\x86\xca\x04\x61\x7e\x36\x9f\xab\xc7\xf9\x9c\x30\x40\xf7\x54\xc2\x0f\x61\x5f\x68\xd5\xab\x0d\xa9\x1f\xa1\x83\x29\x9a\x06\x3f\x25\xa3\x9f\xfc\xe9\x4f\xc9\xc3\xed\x4f\xc9\x43\x78\x1a\x61\x34\x0d\x58\x78\x30\x8a\xe0\x65\x8a\x7f\x2a\x1e\xa2\xf0\xa7\xd5\xdd\xdb\x32\x7a\x88\x1f\x5d\xf3\x75\x03\xe5\x52\x0f\x22\xbd\x2c\x0b\xaf\xd2\xb6\x50\xc7\xa5\x51\x06\x62\x14\xb1\x91\xe7\x39\xa1\x1f\xd0\x4f\x09\x0e\xc9\x65\xa4\x7e\x1f\x5d\x13\xef\xc1\xe4\xc1\xa1\x87\xeb\x0c\xa2\xa9\x99\xa1\x80\x0d\x09\x9a\x21\x01\xea\x94\x39\x45\xf9\x76\x3b\xc6\x23\x08\x09\xf0\x2a\xcd\x62\xa9\x0e\xfb\x31\x7e\x28\xb4\xe2\xc6\x70\x98\x3f\x42\x19\x70\x90\x93\x3d\xbe\xa1\x38\xb8\xab\xe4\x21\xfb\x4c\x74\x8a\xa8\xe4\xbe\x88\x45\xa6\x5d\x19\x53\xee\x8b\x82\x4e\xd8\xc1\x13\xc2\x43\xef\xbf\xfd\x1f\x85\x17\x51\x1e\x7a\xff\xd7\xff\x09\x0f\xfe\xba\xa0\xdc\x5f\xf2\x59\x6e\xb3\xfb\xe3\xf1\x84\xa8\xa4\xca\x19\xb2\xca\x50\xa8\x32\x5e\x44\xd5\xa7\x2a\xb5\x60\x33\xf5\x97\x4e\xd8\xd1\x43\x95\x07\x8a\x89\xb5\x64\x50\xa5\x50\x7f\xe9\x93\xf1\x43\xee\xab\x2f\x8b\x6c\x9d\x53\xee\x2f\xe0\x8f\x4e\x5e\x12\xee\x27\xf1\x86\x72\x3f\xa1\x87\x8f\x1f\x72\x7f\x41\xb4\x3f\x52\xca\xfd\x5b\xf8\x43\xbf\x79\xc8\xfd\x84\x18\xf7\xa8\x94\xfb\x57\xf4\x68\xec\x3f\x3e\xfa\xe6\x6b\x93\xbe\x61\xb1\xaa\x70\x03\x7f\xe8\xd1\x93\xaf\xfd\x43\xfd\xa9\x56\x08\xe7\x9f\x81\x2e\x6d\x52\x0f\xa7\xf2\x37\x6e\xb8\x44\x95\x99\xde\x95\x98\x3e\x87\x23\x41\xfb\x7a\xf0\x79\xf1\x8a\x0b\x0e\xe4\x6b\x77\xc0\xc2\x13\x8b\xce\xe2\xfe\x1c\x72\xf6\x8d\x61\x3c\xee\x49\x7f\x96\xa5\x99\x78\x97\x49\x50\x9e\x02\x35\x95\x59\xb6\x5c\xc5\x33\x49\x07\x13\x22\x8d\x37\xb8\xf3\xf5\x95\xeb\x8a\x5a\x7f\x2a\xd8\x2a\x56\x34\xcb\xee\x97\x1b\x96\x5f\x65\x05\x03\x49\x51\x55\x1f\xd4\x6d\xb2\xbd\x64\x33\xbe\x8c\xd3\x97\xfc\x9a\xcb\x82\x8e\x89\x74\x17\xb7\xfd\x15\xf7\xac\x27\x83\x30\x22\x9c\x56\x2e\x79\xcd\x2c\xa0\xf1\x80\x56\x4c\xe6\x70\xd8\x1a\xd1\x76\x0b\x91\x39\xb7\xdb\x9d\x91\x7a\x4b\x0f\xfc\x2a\x5b\x3f\x06\x6a\x2f\xc7\x04\x58\x89\x8c\xa2\x6c\xbb\x65\x26\x70\x44\x7d\x72\x93\x56\x25\xf8\x2e\xa6\xb5\xe7\x80\xa9\x17\x78\x81\x07\x21\x97\xbc\xca\x2b\x42\xe6\x73\x31\x4b\xd7\x09\x2b\xc0\xe1\xc6\x34\xb3\x11\x80\x7c\x0f\x87\xe3\xc8\xba\x96\xc8\x2a\xd5\x6e\xb7\xc2\xc3\x60\xd2\xcb\xa8\x37\xf6\xd4\x86\x62\xb1\x44\x5a\x56\x1a\x7f\x42\x63\x22\x0f\x18\xc6\xa3\x4c\x7b\xde\x8e\x29\xb4\x5b\xcd\xfc\xd4\xeb\x7b\x23\x94\x52\x01\x8a\xd2\x6c\x9a\x06\xe9\xc8\x2b\x3c\x1c\x70\xed\xe6\xa9\x67\x64\x3f\xf1\x28\x1b\x15\xb8\x24\x19\x15\x56\x18\xa2\xdb\x90\xf9\x5a\xcc\x50\x06\x5e\x53\x1f\x1d\x3d\xf9\x1a\x13\x13\x3a\xca\xdb\x78\x98\x70\xf3\xe5\x4f\x47\x4f\xbe\x26\x3a\xf4\x14\x38\x3d\x54\xe9\x6a\x53\x15\xc4\x04\xa6\xf2\x16\x26\x55\x6f\xc2\x82\x54\xb1\xab\xbc\xa5\x87\xf7\xc0\x90\x5a\xab\x4e\xb0\xdb\x6e\x07\x3b\xab\xc8\x9e\x4d\xd8\x11\x86\x8e\x67\x16\xba\x48\x15\x2c\x0b\xbc\xfa\xef\xa9\x0d\xeb\x7e\xd5\x09\xa4\x19\x73\x0b\xf0\xb0\xe9\x7c\x85\x8b\x20\x53\xf5\xe6\x11\xc0\x5e\x3a\x57\x8d\xdf\x0a\xe2\xd5\x2f\x1e\xf1\x44\xe1\x99\x38\x37\x35\x54\xb8\x0d\x8f\x9a\x4d\x3c\x9a\xb0\xa3\x51\xa3\xbe\x47\x13\xf6\x84\xe4\x95\x3f\x8b\xda\x82\x67\xff\xb6\x99\xde\xf3\x2d\x18\x13\x41\xd9\x73\x3a\x99\x3a\x0e\x83\x19\x0e\xdc\x88\x46\x24\xa6\xf9\x54\xa1\xf5\x57\xfc\x13\x4b\x50\x8e\x03\xd1\xe3\xc8\x60\x1c\xe7\xc4\x88\xd5\x89\xd1\x31\x73\x24\x36\x06\xa2\x76\xef\x22\x20\x92\xe9\xf3\x2a\xc1\x8d\x97\xf4\x70\x32\x7e\xf8\x50\x8e\x26\xec\xe0\x9b\x2a\xe2\xa1\xd3\xb7\x1c\x3f\x82\x0c\xb8\xea\x8f\x04\xcb\x78\x35\x53\x7f\x7a\x32\x26\x1d\x13\xb3\x67\x4e\x3a\xa7\x63\x82\x81\x67\xf9\xc8\xd8\xca\x7c\x28\xce\xc4\x0f\x8b\x2c\x65\xc6\x21\x3f\xc4\x98\xa8\xce\xb4\x9f\xfc\xf1\x48\x1f\x6b\x9d\x33\x22\xf4\x8c\x38\x20\xa8\x68\x11\xa3\x83\x90\x37\xbd\x63\x79\x63\x6f\x84\xdc\x5d\xeb\xae\x99\x17\x00\x08\x6a\xb6\xcb\x20\xd1\x8a\x69\x0a\xc7\x40\x70\x75\x8c\x7c\x2d\xb8\x04\x79\x2a\xae\xc0\xad\xb5\x6b\xa6\x9e\x17\x78\xfd\xda\x93\xb8\x71\x10\x3e\x26\x15\x7a\x71\x6a\x51\xa4\x98\x0e\x2c\xc6\x1c\x81\x49\xb3\xbe\x5c\x67\xf0\x3c\x1c\xd8\xc7\xbe\xd7\xe6\x73\x1a\x27\x5c\x7d\xa6\x31\x8d\xc6\x77\x7c\xb5\xb0\xcf\x9e\x65\xd5\x21\x66\x9d\x03\xb1\xe7\x26\x2a\x17\x40\x55\x0d\xce\x96\x3d\x80\x28\x71\x12\x31\xed\x4a\x1a\x13\x40\x55\x90\x70\xf4\x84\x7d\x8d\xff\x74\xf8\x98\x18\x3c\x05\x89\x4f\xd8\x63\xac\xa0\xcb\x2c\x07\xa4\x29\x64\xa3\xd2\xdc\x75\x52\x1f\xf0\x9f\x26\xec\x88\xb8\xbb\x38\x90\xc6\x01\x2f\x7c\x71\x36\x33\x7c\x78\x62\x3e\x94\x9f\x23\x34\x75\x94\x2d\xc7\x89\xcc\x67\x5c\xc8\xac\xb2\x2c\x55\xe7\xa4\x66\x66\x53\x85\xe4\x71\x97\xd3\x11\xf8\xd4\x1d\x4f\xa8\x57\xc5\x53\xcd\xd9\x3f\xd7\xac\x90\xc7\x82\x2f\x61\xa1\x5f\xe5\x71\xc3\x74\xb6\x36\xd2\x53\xcd\xf6\x98\x9f\x33\x1d\x53\xae\xcb\xe0\x58\xb1\xba\x61\xd3\xb1\x52\x38\x8e\x22\x04\xc4\x26\xab\xfa\xda\xf6\x31\xb2\x7b\x6d\xaf\xef\x6f\x5d\xb5\x65\xd5\xba\x3e\xd0\xac\xf1\x37\xc4\x17\xcb\x31\xc4\x93\xdc\x75\x39\xb3\xeb\x6b\x06\xa6\xad\xae\x6b\xbf\x37\xd2\x81\x0c\x59\xb4\xd3\x49\x18\xf7\x8e\x81\x9c\x59\x8b\x66\xd6\x42\x66\x2b\x37\xa7\x99\xea\x59\x2c\x66\x2c\x6d\xcd\x34\xe8\x65\x95\xc8\xb5\x25\xfc\x1c\xe9\xa8\x21\x85\xe8\x98\x9a\x9e\x56\xc6\x63\xc9\x0b\x10\x62\x15\x4c\x7a\xa4\x43\x29\x98\x33\xa0\xf7\x75\x91\x17\xaf\x8f\xdf\xfd\xe5\xe4\xfc\xe4\xa2\x33\xeb\x85\x9b\x13\x2a\xed\xcc\x26\x76\xb2\xed\x6b\xbb\x70\xdb\x3e\xc9\xf3\xce\x4c\x99\x93\x07\x5c\x91\xc7\xf2\x73\x63\x8a\xdd\x7a\xaf\xd6\x3c\x4d\xce\xd2\xe4\xef\x20\x2e\xeb\xcc\xff\xce\xc9\x3e\xbb\xb7\xe6\xcc\xad\xf9\x9a\xc9\x97\x8c\xad\x3a\x33\x26\xcd\x7c\x7f\x63\x9b\x7b\xda\x4f\x9d\xcc\xbc\xb8\x7f\x6c\xa7\x8d\xbc\x7a\x4b\x75\x2f\x6c\x23\xe3\xfb\x3c\x5b\xf2\xa2\x7b\xc1\xd6\x4e\xce\x8f\x6c\xf3\x46\xdc\x53\xeb\x7b\x27\x6f\x9a\x65\x1f\xd7\x2b\xb3\x26\x59\xf7\xea\x2d\x9c\xfc\x4b\x96\x5f\xb3\xbd\x33\xf6\xa0\x9d\xf3\x1d\x2b\x24\x4b\x3a\xf3\xbe\x74\xf2\x0a\x45\xdf\xa5\xfc\x17\x76\x4f\xaf\x2f\x9d\xfc\x5a\x3c\xf6\x03\x97\x8b\x6c\xdd\x9d\xfb\x7b\x27\xf7\x6a\x9d\xb3\x63\x70\x90\xd4\x99\xf5\xc4\xc9\x5a\xdc\x03\x0e\x1f\x9c\x7c\x32\xfe\xd8\xbd\x0e\x7f\xb6\x7e\xa5\xc4\x2e\x8e\x02\x39\x2e\x65\x65\x43\x66\x50\x6f\xb9\x5a\x75\xbe\x43\xb1\x7e\xd0\xd4\x8e\x7d\x19\x4b\xb6\xdd\xb2\x5d\xcf\xa0\x78\x38\xdc\x71\x42\x5b\x6a\x21\x4c\x4b\x27\xd4\xe9\x11\xb1\x2f\x0a\x08\x78\x26\xa8\x2c\x49\xdb\xc7\x92\x96\x67\xdc\xe3\x56\x7b\x57\x53\xb6\x71\xeb\xd3\x67\xd6\x85\x1a\xc9\x68\x5e\x19\xd9\xc7\x34\x8c\x7a\x32\xdf\xc0\xbd\xa8\xe3\xf6\x49\x6e\xb7\xf2\xe0\xa0\xff\x7c\x0c\xce\x87\x45\xcb\x18\xed\x29\x8e\x4d\x88\x66\xab\x11\x55\x39\x87\xe6\xf4\x8e\x29\x4a\x23\x60\x65\x39\xe7\x22\x4e\xd3\x0d\xf8\x92\x16\xc3\xa1\x11\xac\x83\xe8\x24\xf3\x75\xb7\xc0\x01\xb1\x76\x65\x8a\xab\xfc\x8a\x1b\x31\xd4\x0b\xf7\xa1\xb6\x2a\xe8\x5f\x5c\xb6\xfc\x85\x19\x19\x17\x83\x33\x1b\x74\x44\xdb\x72\x33\x50\x19\x65\xb4\xf2\xe4\x1d\xa3\x86\xe6\xa8\x23\x9f\xeb\xb5\x25\xd2\x2d\x97\x49\x61\x64\x63\x61\x86\x51\xaf\x11\x53\x99\x61\x16\x8a\x68\x38\xe4\x10\xdb\x06\x0f\x87\x5f\xe8\x08\x20\x14\x11\xf1\x60\x0a\x3d\x3c\x35\x3c\xe5\xdd\x47\xb6\x09\x0a\x24\x89\xaa\xc9\x50\x83\xbe\x87\x6b\x13\x13\xa3\x02\x5a\xe2\xc0\x14\x1d\x80\xd0\x51\x17\xaf\x82\x90\x17\xc8\xd4\x6f\xab\x52\xff\x2a\x92\xb5\x16\x47\xad\x5d\x71\x14\x38\xb4\xde\xb5\x3d\x19\x0c\x10\xf8\x7a\x95\x0b\x26\xc0\x73\xab\x5a\x6d\x88\x22\xaf\x57\x6c\x8f\xb9\x89\xce\xde\xed\x13\x56\xd7\xd0\xf9\xcd\x54\xaa\x7d\xc9\x57\xfd\x9c\x75\x3a\xc8\xb7\x77\x0f\xb5\x56\x08\xca\xb7\x5b\x94\x53\x83\xac\x31\x76\x88\x10\x70\x45\xea\xde\x76\x68\x37\xe7\x29\x32\x0a\x75\x0c\x3b\x80\x9c\xa9\xd6\x1b\xf7\x1c\x75\x6e\x80\xcd\x7b\xb3\xa7\x95\xbc\xbd\xa7\x8d\x7b\xa6\x1c\x19\xd5\x36\x1c\xa0\x2a\x60\x3f\x69\x44\xf5\xcc\xa7\x12\xec\x0e\xf3\x16\xd5\xa7\x5d\xb5\x63\x98\x4f\x14\x93\x02\x97\x29\x42\x82\xda\x10\xee\xe0\x1c\x10\x62\xda\x9b\x3d\x0a\xbe\x5a\xc1\xee\x4b\x03\xb0\xfd\xd9\x21\x3c\x49\xde\x15\x90\xc2\xb1\x69\x07\x53\xcf\xbb\x34\xbe\x62\x69\xa0\x08\x79\x21\x83\xa6\xbe\xf4\x64\xc8\xc3\x71\x64\x37\x6b\x38\xa9\x84\xfa\xea\xb9\x24\x32\xdf\x14\x41\x18\x91\x6c\xa5\x7e\x2a\x25\x82\x8c\xde\xa9\xae\x06\x05\x82\xd0\xab\x79\x76\x1b\x14\x68\x82\x89\xfe\x1c\x14\xe8\x10\x97\xe4\x1e\x5c\x87\xb2\x5f\x61\x01\x96\xf5\x9c\x45\xcc\x76\x61\xa8\xd8\x4d\xd2\x1e\xb4\xf3\x6e\x0e\xea\x2f\x4c\x58\x03\x86\xa2\xba\x8a\x61\x9f\xd8\x6c\x2d\xb9\xb8\xf6\xcd\x15\xd1\xd3\xf8\x29\x56\xe0\xa2\xea\xa1\x13\x22\x86\x43\xc4\xe9\xe1\x30\x0b\xc7\xd1\x54\x18\xe4\x17\x98\x37\x68\x66\xbb\x45\x88\x53\x51\xe3\x45\xae\x71\x84\xc0\x64\x8c\x03\x0d\xa1\x80\x8c\x39\xb5\x5f\x48\x16\x4e\xa2\xa6\x01\x6a\x9f\xdb\x00\x89\x10\xfd\x1f\x7c\x0a\x85\xba\x59\x62\xb4\xee\x23\x4c\xd4\xab\x89\x9f\x38\xd6\xc1\x0a\x27\x01\xa7\x99\xd6\x97\xd7\x21\x06\x1f\xdb\xe8\x81\xb1\x0f\xcb\x3f\x1a\x55\xae\x2e\xc2\x49\x44\x8c\xdd\x5b\xa9\x33\x7f\x1d\xd4\xb9\x04\x85\x0c\x19\x55\x1c\xf6\x2c\x13\x92\x8b\x35\xd3\xd9\xbe\x09\x32\x1a\xfb\xd9\x4a\x51\xf6\x2b\x84\x49\xec\x2b\xf8\xd0\x2f\x75\x56\x1b\xbd\x10\x64\x93\x88\x53\xc4\xa9\xce\x88\x9d\xeb\x65\x1e\x72\xc7\x4f\xd2\x76\xfb\x64\x40\xa9\x1a\xd5\x70\x78\x68\x9e\x30\xbe\x8b\xe9\xb8\xaa\xb6\xe4\x73\x74\x44\x6d\x26\x34\xe0\xdb\xad\xea\xe7\x73\x0e\xef\xea\xf1\x19\x0f\x8f\xa0\x94\x1e\x0a\x0c\xc3\x58\x10\xf0\x39\x7a\x52\x95\x35\xdf\x9f\x29\x08\xaf\x73\x73\x6d\xd5\x9b\xd5\x25\xb8\x9b\xf5\xb0\x91\xf5\x30\x22\x66\x1e\x14\xc2\xcf\xb0\x2d\x14\x1e\x42\xfd\x9f\x99\xa1\x32\xa3\xd2\x3a\x92\x89\x5d\x14\x44\xc3\x27\x84\x45\x44\xd0\x71\x75\x94\xe6\x94\x53\x70\xaa\xfe\x35\xc0\x80\x81\xe8\xac\xde\xa8\xd5\xa2\x8e\xa3\xa9\x4a\x36\x4e\x7a\x89\x35\x71\x2c\x51\x98\x91\x22\x82\x60\x26\x80\x52\x1a\x9e\x84\x2c\xac\xe9\x91\x55\x20\x65\xb1\xb1\xe9\xbd\x1a\x64\x38\x26\x87\x84\x1c\x45\x98\x84\x8f\x89\x41\xce\xbe\x26\x42\xa2\x9e\x01\xc1\xea\xee\x4e\xf8\x0a\xd5\x20\x4c\xc2\x43\xd0\x23\x06\x43\x87\x1d\x9e\xb2\x3a\x0f\xbc\xab\x2c\x4b\x59\xec\x2a\x0e\x0c\x87\x0c\x50\xa6\x86\x91\xed\x36\x37\x8d\x1c\x9a\x46\xc2\x43\x62\x1b\x31\x5f\x8e\xaa\x2f\xda\x80\xd3\x8d\x89\x91\xb8\x34\x18\x5c\x22\x1e\x80\xf3\x9e\x86\x2f\xe8\x5a\xb4\x24\x1d\xea\x80\xee\xc6\x63\x9e\x4a\x47\x86\x1d\x48\xd2\x52\xb0\xe1\xc6\xe4\x46\x3b\x9c\xb4\xf4\x5b\x2f\xa7\x79\x28\x42\x1e\x45\xe5\xee\x19\xbe\xe8\x3a\x1b\x1d\x8f\x6c\x1f\xd9\x06\x24\x74\x82\xdd\x02\x0b\x45\x14\x04\x65\x86\x9f\x23\xb1\x02\x27\xcd\x30\xe9\x78\xef\x99\x90\x4c\x48\x92\xd2\x04\x81\x1a\xb0\x51\xb0\x01\xff\x75\x86\x4a\x55\x54\x5c\x4a\xeb\x57\xed\x9b\x2d\xc5\x98\x0c\xd2\xed\x96\xab\x27\xd7\x8c\xa1\x49\x12\xa7\x58\xd5\xb4\xcf\x8d\x58\x97\x1e\x88\x5a\xcb\xfb\xea\xc3\xfb\x8f\xb1\xae\xe1\x73\x77\xf8\x99\x33\xfc\xd8\x19\x7e\x61\xae\x5a\xe7\x79\xb6\x44\x6c\x6f\xf4\x17\x86\xaa\x93\x12\x4e\x69\x7b\xc6\x19\x3f\x69\x6b\x3c\x75\xa1\xbd\x30\xa7\xf8\x0c\x77\xa8\x68\xb2\x7f\x05\xc6\x5d\x85\x70\x59\xc1\x3b\xb8\x50\x2a\x51\x4a\x80\x9a\xcc\x89\x1d\x7a\x20\x88\x1d\x78\x90\x19\x0d\xb8\x22\x88\x89\x19\x74\x50\x94\x9a\xc4\x5d\xd0\x14\xc6\x05\x06\x96\x75\x34\x15\xb4\xc0\xd3\x85\x1e\x41\xe7\x5c\x94\x18\x07\x8b\xd2\xc4\x4f\xff\x83\x81\xe9\x66\x60\x56\xbf\x91\x81\x99\xef\x65\x60\xc8\xf2\x7e\xe1\x66\xca\x0b\xc9\xc0\x47\x44\x18\xed\xf1\xa4\xfc\xd6\x64\xf9\x8c\x27\xcf\x66\x75\x95\x8b\xcb\x0e\x22\xcc\xb7\x5a\xcf\x3a\x2f\x90\xc9\x1d\x22\xc5\xce\x76\x6b\x5d\x1b\x35\x2f\xad\x36\x9d\xc9\xb1\x8e\x08\xaa\x8f\xa1\x6c\xa8\x48\x01\x54\xb4\x8a\x3b\xea\x79\xcd\xfe\xc8\x9c\x5f\x5f\xb3\xfc\x5f\x5a\x24\xd5\xae\xbb\x38\xbd\x56\xa3\x9d\x6e\x24\xab\x99\xd2\xe4\xbc\x39\x80\x57\xc0\x5f\x60\x2b\xc1\xac\x16\xf3\xa6\xc5\x9a\x32\xff\x12\x94\x84\x58\xf2\x2e\xd3\x2a\xa8\x05\x18\x1c\xec\xa4\xd2\xbb\xd2\xb2\xaf\x1d\x5f\x55\x67\xed\xc1\x02\x0c\x54\x77\x1e\x50\x54\x5d\x62\x92\xc3\x1e\xbf\x26\x57\x1d\x70\xf2\xf9\xd8\x5f\x76\x87\x93\x5c\x71\xd6\x10\x1f\x49\x50\x40\xec\xd5\x6e\xaf\x76\xb8\x71\xca\xb7\x73\x51\xc3\x9a\x37\x41\x9a\xa1\xd8\x85\x3f\x36\x1c\x8a\xe7\x95\x01\x34\xd8\x14\x9b\x30\x04\x96\x9e\x55\x78\x14\xfc\x36\x18\x9a\x87\x95\x65\xd9\xeb\xa2\xfc\xe5\xd4\xd3\x5c\xbd\x22\xfc\x45\x26\x1d\xab\xf1\xc0\xdb\x31\x6e\xd6\x59\xac\x75\x86\x87\x4b\xb2\xd9\xe5\x51\xd0\x86\x36\x3c\x88\x37\x83\x36\x54\xe0\x4f\x80\x85\xd8\xb1\x16\x35\x6a\x81\xa3\xa6\x1f\x42\xd7\x5c\x34\x8f\xf0\x17\x09\x22\x24\x78\x24\x04\xcf\x83\x14\x3c\x0f\xd6\x38\x05\x1b\xb0\x04\xe2\xcf\x51\xc8\xee\xb9\xfa\xd2\x46\xc5\x6e\xbb\x1d\x70\xc4\xea\x20\x22\xbd\xb6\x55\x79\xed\x6f\x51\xe3\x5d\xa3\xa4\xb6\x41\x77\x25\x71\x55\x33\xb5\x73\xef\x3b\x47\x57\x2c\x1b\x0e\xb9\x76\x92\xfa\x45\x03\xca\x2a\xb1\xca\x70\xd8\x08\xe0\x23\xa6\xa0\x68\x96\xf9\xc6\x23\x93\x7a\xb9\x44\x19\xae\xef\xe6\x5a\x3a\xd6\xd5\x22\x68\x39\x0f\x28\x85\x86\x32\xea\x18\x94\x89\xb2\x04\x9f\xb1\xa3\x7e\x0d\xf1\x3b\x1a\xb0\x6d\x4f\x83\xc1\xc4\x55\xd9\xfe\x2d\x78\xa6\x9a\xd6\x7b\x3d\x30\x76\x79\x88\xe1\xac\x40\x8c\x5c\x23\x69\x63\x63\x94\xd7\xb4\x0a\x16\xd1\x19\x75\xee\x25\x2b\x66\x39\x5f\xc9\x2c\xdf\x13\x96\xce\xc9\xd0\x41\xe5\xd4\x31\x77\x5a\x51\x42\x76\x91\x63\x8e\xef\x60\x81\x3e\xd3\x8a\x8d\xbf\x47\xa4\x56\xc7\xfd\xf4\x07\xe9\xb1\x87\xf4\x38\xfb\x8d\xa4\xc7\xa7\x2f\x90\x9d\x9e\xbb\x04\xe1\xd4\x21\x42\x40\x54\x47\xea\xd0\x62\xbd\x6a\xc6\x32\x2d\xa7\x88\x70\x35\x9d\xa0\x65\xf3\xc7\xd9\xf2\xa5\x67\x0b\x12\x98\xac\x69\x5a\xa9\xb0\xaf\x35\xa8\xd5\x49\x7a\xfe\x66\x74\x6d\xe4\x8e\x09\x95\xe1\x2c\xea\x75\x4c\x67\x52\xf1\x74\xd3\x3c\x9c\x45\x34\x09\x38\x4a\xf0\x94\xa1\x84\xe4\xa4\x19\x47\x8a\x9c\xa1\x8c\x84\xb3\x08\xe3\xa0\xcb\x88\x29\x31\x2e\x57\x9d\x08\x58\xc3\x61\xe2\xb3\x1b\x96\x6f\xee\x67\xfc\x68\x83\xf1\x53\x40\x1f\xda\xa6\x6a\x81\x78\x44\x13\x5c\xd6\x9b\x27\xde\xb3\x79\xd6\xe0\x16\xc2\x6c\x9e\x82\xa6\xf5\xe6\x29\x34\x18\xa4\x8d\xcd\x13\x9b\xcd\x13\xb7\x36\x4f\x5e\x22\x46\xee\x4a\xd2\xc4\x59\x38\xb8\xd3\xdc\xce\x05\xf5\x2e\x2f\xab\xab\xdf\xcb\x4b\xaf\xde\x0f\xa7\xed\x88\x69\x97\x97\xd5\x05\xe9\xe5\x25\xa5\xf4\xc2\x35\xb1\x70\x10\xd6\x1f\x48\xac\x13\x89\x21\x57\x7c\x02\x96\x1b\x20\xdc\xa4\x56\x0d\x67\x52\x1b\xcf\x20\x73\x39\xd3\x70\x0f\x3d\xe0\xad\x08\x7b\x03\x16\x8a\xa8\x67\x8d\xff\x44\x75\x98\x9a\x1b\xc1\xae\x98\x89\xd9\x70\xf8\x5e\xdf\xae\xf0\x1a\x20\xf5\x45\xdf\x71\x07\x95\x77\xfc\x3f\x00\x95\xf7\xe2\x0f\xd0\xfc\x22\xd0\x04\x18\x3c\x98\x60\x32\xc1\x0a\x2e\x9b\x0e\xd9\xbb\x02\xf5\x3a\xd8\x61\x40\x69\x5e\xe2\xce\x28\x67\x8e\x6b\x0e\x45\x11\xb1\x30\xd7\x11\xce\x3a\xcc\x1c\xaa\x65\x3d\x56\x64\xb5\x70\xe4\x98\x1f\x1d\x64\x5b\x07\x23\x33\xb7\xde\xae\x5b\x6b\x93\x54\x81\x13\x24\xd4\xf5\x7c\x30\x17\x6f\x99\xc3\x87\xea\x33\xfc\xae\x88\xe7\xec\x9c\x49\x23\x46\x2e\x6d\x08\x83\xae\xd1\x3a\xdb\xb8\x74\x5c\xd5\x7f\xc4\xa4\xd0\x42\xd6\xcc\x37\xb5\xd1\xea\xa9\x19\x0e\xc8\x0d\xd4\xac\x48\xe2\xbc\x04\x7d\xdd\xb8\xb9\xc1\xfb\x55\x69\x53\x86\xd4\x2e\x27\x52\x3a\x7e\x9a\x3e\xb3\x05\x9e\xa6\xa3\x11\x36\x21\x39\xe2\x30\x8d\xc8\x8c\x2a\x72\x7e\xad\xe9\x77\x1d\xf3\x74\xa6\xc0\x79\xdd\xa4\xff\xef\x0c\xdd\xbf\x8e\xac\xb1\x18\x54\x92\xd0\x17\x4e\x22\x89\x31\x59\xd0\xbc\xc9\x8c\x18\x27\x1d\x41\xde\x53\x19\xa9\xf6\x3a\xfa\x01\x25\x24\xb6\xd8\x8c\x54\xa3\x71\xee\x82\x17\x24\xc3\xf6\xd6\xc0\x1d\xdd\x1a\x08\x78\xad\xd3\xbc\x93\x0e\x32\x5c\x67\x7a\x0e\x26\xf8\xae\x99\x29\xb7\x75\x32\xaa\xba\x63\x01\xbb\x00\xc4\xf6\xb3\x0b\xc9\x35\x5e\x78\xf9\x9b\xf8\x16\x8d\x3a\x6a\x96\x60\x8f\xcb\x31\xf3\xf5\xe7\xbd\xa1\x96\xad\x8e\x08\xca\x89\x24\xc0\x71\x69\x19\x3e\x71\xa4\xe4\xef\x1a\x5e\x0c\x00\xd9\x74\xd9\x42\xb9\x24\x68\xfc\x07\x09\xfa\xc5\x24\x28\xf8\x48\x88\x2b\x12\x54\x7b\xf6\x7c\x5a\x27\xe9\xf9\x4b\xa9\x51\x7b\xe9\x65\x61\xaa\x40\x29\xa2\x8a\x7f\x83\x47\x97\x9c\x13\x7b\x70\x75\x31\x1c\x9a\xaa\xe1\x46\x35\xde\xb9\x2f\x8d\x1b\xb8\xba\x32\x54\x6b\xe1\xea\x0c\x40\xfa\x4d\xc7\x59\xfd\xe6\xff\xb3\x67\x35\x79\x4b\xef\xae\x99\x0c\xba\xb4\x3d\xe1\x32\xd5\x2b\x60\x15\x9d\xab\xa8\xed\x96\xd9\xbb\x8f\x56\x2f\x40\xcd\xa3\xf3\x0b\x92\xd8\x86\x93\xd4\x57\x73\x0c\x70\xc8\x5f\x14\x0e\xa9\x2e\x52\x24\xc6\x58\x5f\xa2\x77\x8a\x7f\x0c\xda\xd3\xf2\x92\x1c\x57\xae\x17\xfc\xd9\x82\xa7\x49\xce\x84\xc2\x0d\xae\x61\x5f\x66\x02\x06\x4b\x26\xa4\xb5\x5e\x6b\xb4\x6b\x2e\x6d\x24\xee\xb5\xaa\x01\x9c\xfa\x0b\xca\x49\x4c\xaa\x02\xa0\x4e\x9e\xd5\xc7\xc3\x2a\xcf\x3e\x6d\xca\xaa\xbd\x81\x63\x48\x68\x1c\x1d\x35\x9a\x2e\x68\x95\x60\xdc\x20\x99\x7e\xc0\xb8\xeb\xe3\xcd\x49\x2d\xf7\xb3\x38\xa1\x8c\xd4\x32\xec\x4c\xf2\x54\x7d\xb1\xe7\x68\x49\xb2\x5b\x01\x5e\x25\x3b\xd0\xe2\x07\x36\x4f\x15\x44\x99\x2c\xf5\x32\xe0\x92\xec\x93\x99\x04\x9d\x02\x22\x5b\xd3\x7e\x49\x8b\xb3\xc2\xe0\x32\xe2\xfe\x7a\xc0\xd5\x7f\xa3\x48\xd1\x02\xd0\x86\xcf\xb1\x42\xc6\xb9\x2c\x7e\xe0\x72\x81\xbc\x4b\x0f\x4f\x6d\x35\x45\x75\x74\x07\x8d\xa4\xba\x66\xa2\x4f\x4e\x08\x57\x55\x9f\x4d\xaf\x9a\x86\xc5\xa1\x8c\x60\xdb\xff\xb2\xe7\x96\xc4\x1e\x0f\x95\x68\x1d\xf0\xe9\x5d\xe9\xf8\xf5\xa9\x63\xe7\xd5\x36\xa7\x40\x34\xbe\xb2\xb1\x2d\xf4\xa2\x5b\x43\x67\xd3\x41\xab\xe3\x67\xa0\xc6\x9a\x44\x03\xdc\x01\x80\xbe\x57\x4f\x7a\x47\xbf\xc5\xb6\xa8\x86\xe1\xae\x43\xaa\xeb\xf2\xe6\xbe\x10\x0a\x16\x14\xdd\x3e\x91\x76\x3c\xd0\x5d\x2f\x75\xd5\xa9\xda\x2c\x07\x0b\xc9\x1a\x81\xff\x6e\xf3\x78\xd5\xad\x0d\x6f\x8b\x19\xd9\x28\xc6\x77\x8c\x5e\xd6\xf6\xc9\xee\xb4\xe8\x2c\xce\x16\x82\x8c\xe4\x0d\x7a\x03\x91\x35\x31\x61\x8e\x4d\x6a\xeb\x5a\xe4\xfb\xe6\x7d\x51\x18\x29\x0c\xfd\x34\xdf\xa5\x43\x14\x76\x96\x61\x7e\x30\x89\x1a\x58\xb9\xe7\xdc\x57\xdd\x43\x7c\xb7\xa3\x81\xef\xd5\x73\x07\x05\x01\xe6\x44\xe0\xd8\x6e\x07\xf9\xee\x26\x57\xd4\xfe\x7d\x14\x8f\x0c\x59\x44\x73\xad\x32\x0f\xf4\xfe\x9d\xeb\xa9\xe4\xcf\xed\xbb\xa0\x7d\x00\x5b\x6b\x2e\xde\x95\x6d\xcd\x45\x08\x17\x52\xab\x32\x08\x2d\x6f\x11\x11\xf0\xc2\x8e\xc6\xa0\x2a\xf2\xfa\x0f\xce\x6f\x8f\x64\xf5\xef\xbf\x51\xb2\xfa\xfa\x0b\x24\xab\xff\x34\xaa\xc3\xf9\xa6\x02\x0f\x58\xc2\x7a\x9c\xd5\xb5\x42\x0d\x23\x3f\xb4\xb0\x6c\x07\x90\xb5\x38\x54\x7b\xcd\xbc\x37\x63\xf3\x74\xd0\x0b\xbc\xe7\x2a\xc0\x7c\xec\x64\x7c\x5d\x97\x0f\xd6\x8d\xc1\x9b\xe2\xa4\xf2\x4a\xaf\xb7\x47\x10\x46\x25\x5c\x85\x02\x8b\xb8\xb3\x55\xb4\x8b\x82\x4e\xb4\xa5\xa7\x4b\x41\x8a\xe9\x5a\x77\x2c\x2e\x95\xa5\x26\xc9\x76\x7a\x51\x67\xc3\x25\x44\xee\xd2\x64\x8d\xe5\x9b\x2c\xe9\xd2\x92\x73\x83\xaa\x69\xc7\xf4\x76\x8e\x21\xb6\x64\x85\x0c\xe3\xa8\x57\x0c\x87\x3b\x24\x57\x7d\x99\x55\x34\xf9\x47\x1e\xfe\x1d\x65\x24\x8c\x9b\x82\x51\x43\x62\x07\x3b\x72\xab\x62\x38\x64\xa8\x80\xfe\xd9\x72\xc0\x25\xf1\x12\x7a\x7d\x57\x92\x50\xf3\xba\x6e\x9f\xb3\x5a\xf1\x0e\xe8\x5a\xa0\x69\x2b\x1f\x02\x59\xc8\xa3\x5e\xee\xb0\x91\x9c\xc4\xb8\xd4\x3c\x28\xdc\x0a\xfe\x13\x66\x6d\xbb\x1d\x74\x00\x54\x97\xaa\x71\xa7\x06\x7e\x09\x9a\xc9\x83\x5d\x6e\xec\xb3\x71\xe4\xda\x91\xf3\xb5\x9e\xbe\x0e\x5a\xef\xf8\xd1\x7e\x19\x4b\xa6\x13\x41\xed\x18\x01\xcd\xbd\xdd\xaa\x9f\x26\xab\x6f\x57\x8a\x57\x47\x46\xb1\xb3\x2a\xcd\xe9\x28\xac\xde\x6f\x33\xf9\x12\x15\x18\x97\xcd\xb4\x07\x06\xb0\xfe\xa2\xdf\xc1\x87\x91\x3d\xba\xe1\x55\xd1\x37\x18\x13\x47\x16\xf3\x60\x87\x6c\xd1\x04\xc9\x9d\x29\x68\x15\xfa\xda\x82\x99\xba\x6a\x5a\x3d\xb5\x83\x2d\xbb\x84\x13\xa9\x7a\x4a\xf3\x2f\x95\xc6\x18\x4b\x8c\xe6\x2d\x40\x1d\xfb\x42\x50\x4a\xdb\xc6\x12\x53\x31\x95\x81\xc5\x59\x81\x84\x53\xe7\x2f\xf4\x0f\x85\xef\xcf\x2a\x7c\x93\x1f\xf7\x05\x26\xfb\x43\x89\xfb\x0f\x25\xee\x3f\x94\xb8\xff\x50\xe2\x06\x25\x6e\xf2\xb7\x3f\x48\xf8\x3d\x24\xfc\xbf\xfd\x46\x12\xfe\x6f\xfb\xf5\x32\xff\xea\xca\xce\xc9\xbf\x53\xef\xd2\xb0\xbc\x1e\xf9\x87\x7a\xd1\x2c\xb2\x47\x18\xa3\xde\x25\x74\xac\xf0\x88\x1b\x08\xb3\x22\x8f\xc6\x25\xc9\x19\xbd\x2b\x3e\x72\x6b\x35\xaa\xb7\x70\x85\x1e\x05\x6b\x28\xe4\x82\x10\x92\xdd\x27\xf0\x00\x87\xae\x4d\x76\x51\xb2\x1d\xf9\x46\x83\xa9\xd4\x31\x1e\xee\x6c\xac\x28\xab\x30\xf0\x4a\x58\xc1\x46\x6d\xcb\x78\x1a\xaf\xac\x2c\xa4\x79\xef\x7d\x61\x12\x3b\xd4\x14\x8d\x8f\x38\x63\x99\x4b\xb9\x7e\x5f\xc6\x9b\x2b\xf6\x3d\x48\x1a\xde\x1b\xb9\x09\xb1\xd1\xc2\x5f\x32\xb6\xa2\x1f\xf4\xab\x31\x29\xa6\x09\xbc\x86\xff\x1e\x59\xe1\xcb\xe5\x2a\x67\x37\x3c\x5b\x17\x2f\x8c\x14\x46\xa7\x87\xff\x88\x6c\x9b\x21\x63\xd5\xb3\x7f\x79\x63\xad\x72\xed\xa8\x2e\x4d\xb4\x64\x7a\x82\x72\xf0\xc9\xa9\x53\xf3\xb5\x10\x5c\x5c\xff\xbd\x1a\xb3\x1a\x43\x97\x84\x66\x27\xca\xa2\x55\x4f\xd5\x82\x1f\x86\x5d\x05\x5c\xd4\x16\xb2\x64\xf3\xb6\x4a\xf5\x4e\xf1\x96\xaa\x6d\xbb\x86\x1d\xcd\xd6\xdf\x28\x32\xd1\xd4\x5d\xd5\x7c\x4f\x0c\x87\xc2\x36\x62\x48\x15\x41\xfe\x0d\x34\xcb\x9a\x82\x26\x43\x77\xde\x43\x6c\xb6\xb3\x9f\xb7\xb2\x77\xdc\xfc\x75\x87\x3f\x73\x2a\x22\xde\xe5\x55\x9c\xb3\x17\x76\xb3\x35\x85\xe5\xae\xcc\x2a\xfc\x47\x45\x02\xfd\x15\xb1\x2f\xbd\x8f\xb5\x14\xde\x9e\x5b\xd9\xb2\x15\x70\x6d\x96\x89\x39\xbf\x5e\x9b\xf7\x71\xb9\x2f\xf4\x70\x63\x04\xb3\x7d\x9d\x37\x9d\x49\x91\xe9\xff\xef\xd3\x9c\x45\x45\x7b\x5a\x6b\x32\xbd\x3b\x2c\x88\x95\x3a\x09\xd7\x5e\x36\xd6\xba\x9d\x8a\xd5\x1d\x0e\x39\x52\xbf\x5f\xac\xd5\xa9\x32\x3b\x8a\x9d\xea\xd5\xa1\xa6\xb3\xa9\x68\x58\xd0\xe6\x2d\xbe\x98\xd4\x58\x29\x50\x45\x1d\x2c\x65\xe3\x73\x9a\xd4\x96\x71\x6d\xac\xe0\xda\x31\xae\x15\xa4\x40\x4c\x77\xc6\xb6\xe2\x1a\xd7\x0a\x6d\x29\xa5\x90\xc9\xef\xb9\xe8\x5f\x08\xb0\xb7\x15\x04\x4c\x2f\x11\x03\x05\xa5\xdf\x0d\x12\xf6\x02\x82\x1d\xef\xef\xd2\x54\x12\xcb\xf8\xfe\x96\xfe\xfd\xf7\x69\x88\x17\x80\xb3\xf7\xb6\xa5\x20\x39\xad\xd7\xb2\x8a\x05\xfc\xbb\x34\xfd\x3e\xe7\x85\xe4\x62\xef\xb2\x36\xa4\x46\x66\x45\x89\x91\x97\xdb\x83\xc8\xaf\x0e\xd4\xbf\xb1\x4d\x65\x9b\xd1\x66\xb7\x87\x43\xe9\xde\x0f\xdf\x67\x65\x04\xee\x68\xff\x1f\xf6\xde\x75\xbb\x6d\x5c\x59\x18\xfc\xef\xa7\xb0\xf9\x25\x3a\x80\x58\x94\x48\x39\x4e\xf7\xa6\x0d\x6b\xe5\xe2\x74\x92\x4e\xec\x24\xce\x5d\xad\xf6\xa2\x25\xc8\x62\x22\x91\x0a\x08\xd9\x56\x22\x9d\xdf\xf3\x7b\xde\x65\x5e\x60\x1e\x65\x9e\x64\x16\x00\x82\x04\x29\x4a\x96\xd3\xbd\xf7\xd9\xe7\xac\x93\xac\x65\xf1\x52\x28\x80\x40\xa1\x50\x28\xd4\x25\x0d\xb7\x26\xd3\x4f\xea\x3c\x1e\xda\xaf\x68\xe7\xea\xef\x65\x30\x61\x92\xc6\xd1\x5e\x35\x08\x3b\xa9\x2c\x20\x47\xea\x6f\xaa\xf2\x71\xc8\xf8\xec\xa6\x0a\xf5\xf8\xdc\x5c\x67\xe9\x0c\xe5\x5d\xf4\x35\x8a\x73\xce\x55\x29\x6e\x17\x46\x51\x06\x1f\x2e\x8e\xa4\xdc\x36\x15\xc7\x51\x48\xb4\x51\xae\x88\x9b\xcf\xa3\xc6\x20\x8c\xfa\x2b\xf4\xa9\x63\x29\x36\x2b\x35\x42\x1a\x11\x9a\x35\x4c\xa1\x31\x4d\xa6\xdc\xf9\xd8\xd5\xc9\x7c\xb5\xa2\x29\x86\x34\x92\x1d\x36\x4f\x90\xce\x12\xca\xb3\xfe\x94\x0c\x96\x6a\xa6\x99\x7b\x94\x05\x5a\x48\x54\x45\x86\x41\xd4\x1f\xd1\x5c\x2e\x42\x3b\x2e\x14\x8b\x2e\xf0\xd6\xed\xb0\x17\x24\x33\xfa\x3b\x55\x91\xdd\x4b\x1e\x45\x5a\x05\xb8\x2c\x3e\xe7\xa1\x69\x7c\xcb\x3e\x42\xba\x07\x7e\x2c\xcc\x28\x85\x45\x64\x13\x46\x27\x01\xab\xca\x49\x4f\xd5\xb1\x98\x29\x54\xa8\x60\x63\xa6\xf4\x9a\x25\xbd\x37\x1e\x68\x2a\x78\x8e\x78\x85\x6c\x41\x0b\xb2\x0d\xd3\x46\x41\x32\x6c\x2d\x50\x75\x04\xb4\xa5\x05\x57\xb6\x30\xf5\x24\x85\x86\x2b\x6d\x06\x5d\x3a\x95\x33\x9a\x28\x87\x26\xcd\x39\x9f\x4e\x0b\xd3\xd9\x4b\x74\x0d\xcb\xd6\x17\x4a\x8e\x11\x2f\x9c\x6a\x16\xe4\x6d\x9c\x89\xdb\x77\xa4\x30\x60\x36\x4c\x0b\x85\xc8\x4a\x1b\x65\xe1\xb2\xe8\xbd\x4a\x3a\x2f\x8b\x82\xa5\xe0\x53\x69\x25\xbf\x6d\x18\xee\x40\xa9\xc3\x34\xa3\xfc\x54\xf6\x68\x0e\x32\x8f\xe6\xa0\xe4\xd1\x6c\x76\x88\xf6\xe7\x64\x34\x89\x47\x97\x8a\x0a\xd2\x41\x4e\x3f\x0f\xe1\x2a\xc5\x17\x97\xcd\x6f\x33\xa2\x2e\xc4\xe2\x5c\x05\x55\x38\xaf\x05\x4b\x80\x0a\x61\x07\x45\xa4\x72\x1b\x24\x68\x48\xa2\x4b\x83\xd2\x46\x18\xb4\x8e\xc2\x2b\x39\x56\x07\xa6\x3f\xb6\x07\xbb\x00\xf7\x94\x3f\x76\xd9\x3b\x7a\x3b\x24\x81\x76\xc1\x96\x95\xb2\x58\x45\x08\x56\x2e\xd9\x61\xe6\x32\x9d\x6a\x22\x4a\xd0\xe5\xa1\x4c\x53\xfd\x6a\xda\xa8\x84\x81\x4c\x5f\x6d\x76\x40\xa6\xb5\xce\x1e\x9e\x52\xbe\xc0\x18\xe2\xa2\x82\xcb\x70\xda\x2e\xd0\x8b\x0c\x82\xb4\xc2\x95\xb1\xf3\x51\x2a\x32\x5e\x22\x8a\x81\x8a\x91\x2d\x31\xfe\x5a\x8d\x1a\x77\x26\x33\xdc\xca\x99\x78\xe7\x73\x17\x22\x42\xc5\x4f\x48\xb4\xa4\x00\x31\xa1\xf2\x37\x90\x73\x37\xa0\xd9\x47\x67\x5b\x4a\x0c\x09\x79\x87\x9e\xa3\x08\x43\x88\x61\x24\xaf\x63\x0c\x0c\xc3\x94\x3c\x46\x09\xc4\x18\x7a\xe4\x31\x1a\x19\xe9\x66\x02\xb9\x3b\x9d\x42\x20\x66\x4d\x0f\x82\xc6\x59\x24\xf6\xcc\xb3\xf7\x21\xe3\xd3\x60\x64\xb8\xf3\x60\x08\x4a\x2e\x96\xe9\xf0\xad\x38\xa1\x3f\xd3\xef\xa5\xf5\x08\x36\x7d\x3c\x57\x6e\x8e\x57\xd5\x4d\x53\x1a\xc8\x66\x7c\x30\xe0\x94\xbd\x49\x2b\x48\xe7\x7d\x75\xeb\x52\x49\x60\xc5\x70\x81\xe4\x97\x5a\x16\xcb\x74\x2b\x6d\xb4\xbe\x3d\x1d\xda\xc5\x79\xf3\x15\xac\x0a\xf2\x2d\x17\x0f\x0a\x14\x03\x33\x62\xf0\x1f\x3a\x9e\x26\xd7\xcf\xcb\xf0\x9f\x81\x62\x8c\xfd\x1b\xea\xc4\x85\xfe\x62\xd5\x07\xfc\x5c\xe2\x2f\x23\x97\x22\xd7\xea\x2e\xaa\x10\x2a\x8a\x92\xf1\x8a\x36\xdf\xd4\x03\xcb\x35\xea\x25\xf6\xef\x71\x83\xbd\x25\x9b\x2e\xb8\x1a\x2f\x71\xe9\x5c\x3e\xdf\x21\x29\x4d\x14\x15\x4e\x79\xd8\x07\x2d\xb8\xb6\xa5\xdc\x9b\xc5\x05\xa6\xfe\x73\x74\x5a\x55\x50\x48\xd8\x15\xae\xfe\x8a\x0a\x59\x47\xea\x65\x0b\x27\x38\xdf\xdb\x3c\xb5\x7e\x41\xd8\xe7\x79\x44\xd0\x92\x88\xa2\x22\x82\x77\x5a\x85\xc8\x17\x1c\x77\xb1\x6f\x3c\xd3\xeb\x89\x54\x17\x74\xab\xd8\x59\xd0\xef\xcb\xf3\x8b\x15\xc9\x24\x65\xaf\x15\x4e\xc3\xf3\x73\xb2\x5c\xfe\xa0\x95\x31\xca\x84\x58\x52\x3e\x21\xcf\x8e\x9d\xe7\x73\xae\x95\x1b\x55\x20\x69\x07\x5a\x18\xb2\xfc\xf6\x19\x78\xfe\x3a\x0d\xe1\x9b\x06\xd3\x97\xf4\xd8\xdd\xd2\x05\x42\x21\xc5\xa9\x03\x65\x4d\xaa\x5b\xa5\xbd\x25\x31\x95\x7d\x28\x00\x0a\x0c\x7e\x54\xaf\x0f\xe5\xa8\x95\x62\xc5\x93\x1d\x97\xfc\xcd\xba\xaf\x8c\xe3\xab\x2f\xd2\xb2\x10\x8a\x40\xa6\x05\x95\x9f\x26\xf3\x6d\x74\xba\x58\xe6\x5e\x34\x54\x0e\x49\xd6\x09\xa5\xd1\x08\x70\xad\xf6\x50\x45\x7b\x90\xd7\xc8\x2c\x46\x3a\x41\xaa\x55\x19\x15\xd0\x6d\x05\xe4\x35\x1a\x41\x1a\xe4\x74\x9a\x76\x6b\x02\x01\x5e\xdf\x8f\x11\x48\xeb\xf0\x15\xfd\x98\x1e\x2c\x24\xa6\xea\x24\x28\x49\xdb\x49\x14\x4c\x92\x61\xcc\xab\x17\x17\xb1\x32\xf2\xf2\x98\xfe\xd0\x81\x27\x7e\x4e\xbb\xf6\x43\x6c\xba\xe4\x70\xfa\x6b\x44\xe8\x74\x84\x0c\xdb\x2e\x29\x4d\xa7\x9f\x94\x1e\x30\x98\x1f\x16\x19\xdd\xb9\xd0\x92\xf6\x52\xb0\x82\x84\xc7\xd5\xbb\x81\x4c\x2a\x66\x84\xaa\xc3\x85\x04\xc2\xbf\x20\xe3\x43\x40\x9e\x23\x56\x59\x98\xeb\xaf\x63\xa6\xef\xaf\x36\x76\x8d\xf5\xe9\x09\x98\x5f\x94\xef\x1d\x4a\xeb\x45\x98\x2f\x0e\xc1\x0d\x8b\x7b\xd5\x42\xd1\x0b\x92\x52\x96\x91\xa2\x35\x9a\x56\x02\xf2\x6c\x23\x51\x91\xfe\xbc\x56\x33\xd5\x0c\x15\xb2\xd6\x43\xc4\xe1\xb9\xe1\x24\x52\xbd\xeb\xcd\x74\x17\xbc\x10\x8a\x25\xdb\x2c\x55\x34\x3f\xdd\x04\x05\xbc\xb0\x5f\x2c\x48\x1e\x55\x1a\x7e\x25\x8d\x18\x62\x08\x33\x15\x27\x7e\x1e\x83\xbe\x58\x9b\xb9\x2c\xac\x54\x0c\xa4\x9c\x5c\x88\xa4\x15\x6c\x25\xdd\xb8\xe7\xa8\xa4\x3a\x3c\xcc\x77\x9e\x99\xe4\xa5\xb2\x3f\xe6\x8d\xb6\x44\xe9\x29\xca\xb2\xd5\xe5\x1b\xfb\x67\x46\x27\x20\x0a\x3b\x2e\x86\xb8\x1c\xe5\x25\x32\xd2\x73\x55\x95\xf1\x84\x1c\xb5\xbc\xe5\x8f\x96\x76\xfc\x0b\x6d\xd8\x50\x35\x86\xac\x24\x38\x96\x5a\xcf\x75\x78\xcf\x54\x67\xb1\x5c\x5f\xbc\xac\x61\xa8\xdc\x88\x56\x61\x2f\x49\xcd\x4b\xc8\xab\x47\x2c\x0b\x2f\x74\x99\xc6\x16\xda\x91\xb4\x5c\x76\x7e\x15\x44\xee\x19\x44\x5e\xab\x29\xb8\x8e\xbb\x62\xa5\x2b\x0a\x69\x0c\x43\xd8\x8e\x14\x7f\xd6\x62\x00\x62\x9a\x41\x47\x26\x1f\xa3\x0b\xbc\x82\xea\x96\x8e\x50\xf2\x55\xcc\xd8\x9b\xe8\x9d\x8c\xda\x1f\x55\x6c\x51\x23\x6d\xf4\x16\x69\x5d\x4d\x16\x5e\xc8\x50\xd7\xb0\x2c\xbc\x90\xa1\x33\xc8\x02\x0d\x85\xd9\xc0\x2c\x47\x36\x8a\x6b\xb5\x1d\xbd\x00\xc6\x78\x3e\x8f\x17\xf9\xe1\x67\xe1\xbb\x0c\xad\x51\x25\x47\x16\x23\xc3\x32\xd3\x9b\x90\xd0\x42\xd4\xa7\x9c\x1d\x85\xd2\xe2\xff\x87\x41\x58\x7a\x79\x8c\x0d\xd3\xf2\x55\xab\x64\xa6\x8c\x09\x94\xe3\xd5\x2b\x51\x0a\xaf\xdd\x45\x2c\x1d\x89\x95\x67\xd4\x1a\xad\x61\x05\x33\x8a\xa4\x6c\x3a\x9f\xbb\x5b\x7c\x3e\xf7\x76\x08\x89\xda\x85\xaf\x60\x40\x81\xb7\x23\xdb\xf3\x23\xc7\xc3\x7e\x9a\xe4\x48\x9a\x15\x17\x5b\xb1\x82\xf1\x57\xba\xef\xcd\xe7\xa8\x7a\xff\x28\xf3\x34\x15\xd0\x9a\xef\x6f\x21\x26\x6c\xbf\x46\x3a\xdf\xfc\x6b\x24\x44\x05\xb9\x04\xe0\xa5\xbe\xcb\x7a\xb6\xdc\x6b\xc5\x53\x6d\xcb\xc2\xe6\xce\x5d\x09\xf3\x86\x13\xa2\xa0\x04\x31\x43\xa3\x6c\x86\x56\x18\x6c\xe3\xac\xf3\x78\x9a\x21\x2a\x1c\x20\xd6\x89\x3a\x6e\xb7\x9b\x7b\xfd\x90\xdf\xc5\xce\x3e\x26\x61\xc7\xed\x4a\xb9\x4f\xbb\x26\x43\x42\x18\x8c\x08\xeb\xc4\x5d\x98\x92\x78\xbf\xa8\x1a\x1c\xe1\x5a\x6d\xba\xaf\x7d\xf5\x47\xfb\xb9\x3f\x4a\x4f\xd1\xf0\x7c\xde\x33\x97\xf4\x5a\x2d\x6d\x4d\xd2\x99\x76\x21\x21\x23\x40\x53\x12\x34\x92\x61\x38\xe0\x4a\x1f\x34\x22\xa3\xce\x34\xcf\xd4\xc8\x8a\x3d\x57\x76\x19\x50\xf3\xe6\x77\x44\x0b\x1e\xd6\x8c\x70\xe5\x61\xcd\xf3\xcf\xc8\xa6\x4f\xaa\x3d\x4e\x99\xc5\x86\xb1\x59\xb4\xc7\x4f\x52\x5c\xde\xb4\xe6\x79\xa7\xd8\x2b\x49\xe6\x6f\xb4\x43\x48\x96\x09\x31\x59\xdc\xa6\xbe\x5a\xed\x4a\x2c\x7c\xa9\x0b\x5a\xdc\x61\xa2\xfb\xcf\xd0\xa8\x42\x61\x3b\xcd\x82\x25\xac\xd0\xb7\x99\x4d\x9e\x16\x1c\xc0\x71\xc1\x67\xa9\x67\x86\xd2\xcd\xf9\x6d\x08\xf1\xca\xb8\x38\x69\x5a\xcb\xa0\x40\x97\xd2\x1d\xb6\x18\x18\xe3\x1c\x05\xb7\x0b\xf8\x20\xbb\x35\x29\xf8\xc1\x07\x9d\xdc\x11\xb4\xbb\x23\x9b\xcb\x50\x02\x3d\x5c\x1d\xda\x26\x21\xea\xed\xe2\x66\x93\x9c\x42\xc8\x85\xd8\x0c\xb9\x10\x57\x85\x5c\x58\x61\x92\xb3\xe3\x2d\x04\x45\x14\xdc\x6a\x8a\x36\xc0\x65\x6f\xce\x42\xa7\x05\xa5\x4e\x4b\xc8\x39\x8a\x31\x8c\x48\x92\x75\xda\x48\x75\x5a\xfe\x48\xfb\xfe\x8e\x8c\x4e\x0b\xe6\xf3\x9d\x8d\xc8\x2c\x80\xa9\x11\x68\x20\x20\x4c\x3e\xd9\xc0\xa5\x71\x54\xab\xa5\x4d\x91\xf6\x85\xc9\x92\xf5\x60\xb2\x89\x4b\xe3\x8e\x5b\xd9\x5d\x05\x6a\x0d\x20\x8b\x85\xb0\x4c\xf7\x3d\x65\xd9\xde\xab\x74\xd8\xeb\x19\xf1\x9a\xfa\xc5\xf3\xa2\x40\xc8\x26\xc3\xe2\x4c\xee\x17\xa6\x05\x54\xc7\x02\xbc\x55\x20\xcd\x70\x83\x40\x9a\xa5\x44\x77\xf1\xea\x40\x9a\x61\x27\xee\x76\x8b\x26\xdb\xea\x99\x76\xc7\x56\x77\x46\xf0\x0f\xc9\x9b\x72\xa3\xe3\xed\xef\x68\x00\xc3\xe2\x01\x48\x85\x1b\x61\x2f\xeb\x3f\xf1\x78\x54\xe8\x5a\xb5\xe7\x29\x05\xa3\xd8\x4e\x49\x6f\x91\xba\x4e\x4a\x99\x50\x45\x9a\x97\x97\x05\xd1\x5d\xf7\x36\x4f\xed\x6f\x44\x3f\x4d\x36\xe1\x5a\x92\x0e\x0a\x72\x71\x46\x05\x13\xdc\x46\x68\xb0\xcc\x97\xf1\x7c\x5e\x7e\x5c\x12\x94\xa8\xda\x97\x63\x0c\xba\x7f\x26\x55\xfd\x83\xfd\xc9\x4d\x6e\x67\xb2\x54\x69\xe5\xa5\x78\x3e\x7f\xa5\xbf\xb4\x9d\x2e\xe0\x44\x8b\x62\x4b\xa7\xae\x28\x75\x52\x2b\xf8\x88\xc5\xb4\xca\x7e\x7c\x3b\xcc\x1f\x2b\x15\x54\x59\x4e\xce\x53\x9e\x1b\x18\x4c\x62\x50\x5d\x1c\x42\x85\xfb\x6d\xb6\x37\xbd\xa0\x1c\x99\x59\x4c\xd7\xfb\x42\xca\x6e\x29\xc0\x8b\x59\xb6\xe3\x2e\x16\x66\x4c\x8e\x84\xfe\x5b\x36\x70\x39\xc5\x4a\xaa\xad\x40\xbb\xbf\x62\x08\x09\x43\xbf\x7a\x66\x5a\x3e\xd3\x8c\x48\x45\x92\x93\x03\x6d\xce\x96\x3c\xa8\x9c\xf8\x1c\xaa\x93\xf9\x30\x82\xf8\x7c\x5e\x48\xea\xf8\xe7\x1f\x4d\x99\x5b\x4a\x48\x5f\xf9\x59\x46\xd0\x38\xe3\x2c\xa4\x24\x86\x60\xd9\x0c\x4f\xf0\x88\x06\xfd\x36\x0d\x46\x48\xfb\x9b\x80\xe6\x36\x18\x4a\xaf\xb8\x71\xb4\x87\x81\x8a\x8d\x9e\xd5\xb4\x80\x37\xce\xae\x82\xd9\x20\x60\x94\xd5\x6a\x5c\xd5\x86\xe3\xc6\x38\x9e\x46\xd2\x77\x55\x3d\x69\xc8\xc7\xb9\x22\x94\x91\x58\x1b\x89\x09\xf6\xd2\xe8\x9d\x13\x0e\xac\xc1\xe2\x29\xa7\x84\x1a\xb6\xa9\x41\x83\x8e\x43\x4e\x02\x08\xd4\xd1\x3e\x49\x20\xc8\x6b\x24\x3b\x2e\x04\x5b\x45\x47\x07\x25\xcb\xc9\x03\x19\xa5\x64\x4d\x95\x8b\x25\x05\x27\xde\x62\x1d\xb7\x4b\x78\x63\x12\xb0\x60\x9c\x18\x81\x8b\xbd\xfd\xe8\x20\xcb\x3d\x1f\xd9\x36\x96\x4e\x81\xb9\x12\x34\x32\x7c\x26\x7b\xe7\xda\x27\xbd\xd1\x3b\x07\x86\x4b\x6e\x14\x51\x23\x8a\xf9\x91\xec\x45\xaa\xd5\xfe\xd6\x7f\xc8\xaf\xfc\x8f\xed\xf1\x34\x91\xa9\x6e\xd3\x58\x02\x96\x56\x17\xc5\xa9\x11\x83\x92\x09\xb9\xcc\x4c\x78\x6e\x52\xc1\x28\x4f\xe9\xa4\x61\x55\xa0\xe2\x50\xae\x9c\x25\xd8\x10\x6f\x2d\xe5\xac\x95\x2d\xd8\xfe\x0f\xcb\xa6\xb6\xf5\x1f\xdb\x7d\x99\xcd\x9d\x6f\x4b\x54\x16\x2e\xf9\x76\xa8\x4d\xec\x39\xa1\xe2\x0b\xd3\x43\x51\x39\x4a\xea\x37\x75\xe8\x95\x9d\x48\x68\x7a\x51\x95\x9d\xca\x98\x0a\x66\x22\x92\x15\x74\x1f\x16\xe8\x3e\xdc\xd2\x4a\x0c\x4a\x64\x16\xfb\xc4\xff\xb1\x58\x2c\xa5\x7d\x2e\xfa\x9d\xdd\x90\x82\x42\xf0\xc9\x7c\x2a\x86\x10\x9a\xba\x3d\x49\x9a\x85\x2d\xc2\xca\x89\x02\x69\x6f\x26\xc3\x78\x3a\xea\xab\xb4\xbf\x7a\x0e\x6d\xe9\x0d\xf9\xd2\x2c\xd5\x0b\x78\xd3\xc2\xe5\x54\x04\x2a\xb2\x72\xc6\xd8\xa4\x56\xb8\x56\xcb\x32\xe5\x7a\x32\xf9\xa4\xee\x9c\x54\x6c\x36\xf2\xbd\x36\xff\xf4\xe7\x7f\xfe\x51\x6f\x36\x38\x4d\x38\x0a\x71\x1b\xc5\x48\xd0\x61\x9f\x26\x60\xdd\xb9\x63\xe1\x76\x40\xd2\xfb\xc6\x9d\x3b\x3e\x0a\x8c\x1e\x85\xfc\x05\x09\x30\x58\x75\x99\xe9\x52\x39\x1d\x44\x8d\xab\x70\xd4\xef\x05\xac\x4f\x76\x5c\xc1\x1d\xa2\x60\x4c\x49\x68\x7c\x9a\xaa\x57\x7c\x1d\xf6\xf3\x3a\x43\xa3\xc2\x4e\xd8\xad\xae\xb0\x13\x76\x45\x85\x14\x31\xdb\x83\x00\x2f\x90\x9b\x9d\xa6\x52\xbc\x28\x8c\x8d\x62\x03\xff\x9a\xa1\x01\x46\x7e\x2c\x20\x34\x19\xb5\x4e\x0e\x9d\x89\x3a\x61\xa6\x3f\x11\x9c\xc1\xdc\x07\x05\xb9\x5b\x4b\x38\x40\x31\x0a\xd3\x1e\x09\x72\x47\x6f\x14\xd9\x1e\xa4\xcf\xe5\x01\x87\xcc\x59\x2f\x7a\x36\x75\x77\xed\xa8\xbb\x2e\xe9\xd3\x5e\xdc\xa7\xef\xde\x3c\x7b\x14\x8f\x27\x71\x44\x23\x8e\x32\xf7\x09\x63\x35\x43\x51\xca\x67\x72\x8f\x71\xb3\x8e\xc6\x9d\x3b\x32\x06\x44\x98\x0d\x66\x5a\x4f\x3e\xb8\x15\x15\xe9\xfd\x6f\xa4\x8d\x4a\x9b\x16\xde\xa8\xee\xbc\xd6\x42\x6b\xf0\xa2\x38\xc0\xa6\xd5\x15\x0a\x8b\x71\x48\x90\x18\x00\x8c\x35\x87\x61\x10\x96\xc8\x41\x2c\x34\xa5\x75\xed\xa7\x08\xa2\x62\xbd\x4b\xbd\x31\xc1\x12\xad\x2c\x14\x8a\x75\x56\xf4\x54\xa2\x5f\x4f\x45\xa1\xca\x3d\x1f\xab\x69\x9a\x6a\x5b\xb2\x8c\x8e\xb1\x0e\xe4\xa6\x38\xad\x5a\x15\x63\x63\xb1\x0c\x08\xcb\xfb\x7d\xab\x12\x3c\xc0\x8b\x62\xaf\x69\x5a\xe3\xea\x17\x8b\x8b\x60\x2c\x37\x5a\x6a\xe2\xaa\x7b\x9c\x11\x9f\x65\x75\x73\x6b\x64\x69\x7c\x69\xbc\x59\xe1\xab\x6f\x49\x80\x34\x68\x16\x0a\x85\x60\x6a\x14\xea\x50\x19\x8c\x08\xaa\x1b\x66\x00\xea\x26\xa6\x3a\x9d\xe5\x37\x8b\x05\x6c\xf8\xaf\xbc\xe8\xac\x49\x71\x97\xf4\x82\x11\x7d\x18\x44\xd5\x59\xc2\xcc\xb4\x6a\x12\xf2\x55\x1c\x46\xd5\x29\xbf\x7a\x65\xd0\x67\x7d\x1a\xf1\x90\xcf\x2a\xa1\x3f\x96\xa1\x5f\x84\x91\x4c\x90\x5b\x01\xfb\x7c\x09\x36\xbe\xb8\x39\x19\x9e\x84\x3c\x9d\x8d\x47\x2b\x80\xfb\x4b\xc0\x27\xac\x2f\xb6\xd9\xd5\xa8\x97\xbe\x6e\x3c\x19\x85\xbd\x70\x45\xf6\xbc\xe5\x6e\xbb\xaa\x04\xbc\x5c\x6e\xf1\x37\x56\x8d\xf3\x62\x09\xf4\x4d\xd0\x0f\x57\x34\xf7\x6c\x09\xf8\xf5\x34\x88\x78\x38\xaa\x4e\x9b\x76\xbd\x02\xfc\x7b\x35\xf8\xc9\x12\xf8\xdb\x21\xa3\xc9\x30\x1e\x55\x53\xd1\xe9\x32\x7c\x38\xae\x46\xfd\x8c\x95\x41\xdf\xf1\x5e\x25\xe4\xfb\x25\xc8\x53\xfa\x6d\x2a\x48\x6e\x45\x9f\xdc\x59\x53\x60\x15\x45\xfd\xb6\xa6\xcc\xaa\x31\xfd\x7d\x4d\x99\x95\xa3\xfb\x7a\x5d\xa1\xd5\x44\xfc\x69\x4d\xb1\xb5\x23\xfe\x7c\xa9\xe0\xe3\xf0\x92\xb2\x0b\xb9\x3c\x54\xc0\xd3\x68\x25\xfc\xaa\xbe\xe3\xab\x8b\xac\xea\xba\x68\x75\x91\x95\x3d\x17\xaf\x29\xb3\xba\xe3\x98\x59\x8a\x87\xbd\xaf\x4f\x64\x8e\xeb\xea\x01\xcd\x93\x0a\x32\xb4\xfb\x4b\x41\x6e\x97\x0b\xad\x36\x1a\x2d\xef\xad\xb4\xf5\xa8\xe1\x92\xeb\x29\x8d\x05\x0b\xa2\x0b\xb9\xe7\x53\xaf\xb4\xbb\xac\xf1\x8e\xe3\x46\x3f\x1e\x07\xc5\xbc\xc1\xc3\x30\x59\x92\xf6\x6f\x55\x79\x55\x00\x2a\x75\x56\x14\x46\x9c\xb2\x49\x3c\x0a\x64\x98\x27\x7c\x73\x33\xb3\xd6\x55\xda\xba\x56\x20\xe5\xb8\xf8\x7d\x85\xaf\x52\x39\x88\x03\xa2\x7c\x4d\x91\x15\x6a\xf6\x8a\x4d\xcf\x6f\x7d\x64\x24\x36\x43\x2f\x83\x09\xa4\x96\x3b\x9d\x2e\x44\xc4\xd8\x00\xc7\x28\xd4\x47\x94\xa1\x2d\x33\xbb\x2b\xf5\x46\x8c\x53\x3d\xb8\xdc\xf2\xef\x18\xa2\x69\xb4\xa5\x14\x1a\xb1\xcc\x80\x23\x2d\x64\xc3\x3c\x26\x3c\xeb\xa0\xc4\xf1\xf0\x5d\x2d\xab\x64\x8a\xc1\x38\xed\x85\x5c\xf0\x62\x6a\x23\xb7\x34\x1a\xd9\x56\x59\x89\x90\x78\x4b\x36\x3d\xfb\x12\xb9\xef\x56\x7d\x10\x6d\xc7\x83\x6d\x86\xb3\x3c\xdf\x91\x6d\x59\x5b\x72\xf3\x86\x18\x9e\xcf\x55\x3b\x19\xa4\xad\x8c\xf2\x56\xc6\x0b\x88\x55\xe7\x56\x9d\xd7\x95\x5b\xd4\x46\xac\x90\xe0\x06\x43\x2c\x23\x54\xa8\xe6\x09\x54\x53\xa5\x52\xdb\x0c\x59\x44\xa8\x40\x10\x89\x82\xbd\x78\x52\x91\xeb\x60\x3b\x91\x5b\x38\x8d\x56\x26\xe7\x0d\x53\xb5\x41\x6c\xc4\xb1\x83\xd8\xdc\x79\xa7\x23\x2e\xc4\x18\x92\xa0\xbc\xb4\x8e\x72\x18\x13\x96\x8e\x01\x08\xf9\x50\x7e\x3e\x4c\x89\x0b\x3d\xe2\x41\x9f\xec\x78\x30\x24\x2e\x0c\x88\x0b\x13\xd2\xd8\xcb\x49\x64\x8c\xb4\x1a\x3a\x46\xda\x5e\x10\x42\xd2\x3b\x98\x42\x42\xc2\x76\xcf\x9f\xc2\x88\x84\xed\xa9\xdf\xdb\xa2\x04\x8d\x9c\x04\x37\xb3\xec\xde\x1e\x30\x67\x68\xb7\xea\x03\x0c\x7d\x69\xe3\x62\xa6\x62\xc7\x18\x12\x5b\x96\x70\x68\x1d\x31\x67\x88\x71\x5d\x10\x2a\xad\x23\xcf\x19\xaa\x12\x09\x31\x92\xb3\x0b\xa1\xd4\xbc\xe7\x29\xb3\x19\xa7\x1b\x00\x14\x35\x02\x8c\x18\x2e\x99\x25\xe6\x1b\x8e\xc4\xa6\x75\x6e\x64\x02\x0a\x50\xd8\x1e\x37\x18\xbd\xa4\x2c\xa1\x08\xfb\xe3\x8c\x42\xf4\xd9\xa5\xee\x45\x60\x4b\xf4\xbb\x6e\x8c\x63\x41\x25\x63\x24\xb7\xb5\x78\x01\xec\x36\xc4\xd6\x99\x42\xaf\x4b\xc4\xd0\xd8\x53\xe8\x11\xbb\xa7\x10\xc9\xc7\x19\xaa\x37\xa2\x03\x2a\xf0\x2d\x17\x16\x9b\x6f\x81\x41\x14\x3d\x0f\xa2\xfe\x55\xd8\xe7\xc3\xaa\xf0\x11\x32\x6e\x09\xa7\x93\x8a\x77\x74\xa1\x54\x6d\x95\x55\x56\x7c\x42\x9f\xec\xec\x50\xd5\xec\xbe\x28\x3a\x09\xfa\xfd\xb2\xd5\xd0\xca\xc2\x43\x35\xc4\xe3\x30\x42\x1e\x0c\x88\xad\x7b\x72\x68\x60\x7a\x16\x95\x13\xe0\x6c\x86\xae\x0a\xd7\xc9\x94\x6f\x8a\x4b\xb4\x46\x21\x18\x08\x04\xc1\x28\xbc\xd8\x90\x20\x26\x24\x9b\x13\x3a\xf9\x7d\xda\xa0\xb4\x45\x13\x81\x70\x05\x3b\x18\xa1\x18\x61\x90\x43\x8b\x53\xd2\xef\xe3\x42\x57\xa0\x21\x2e\x7c\x0e\x1a\x60\xd5\x3a\x34\x31\x78\xc7\x18\x61\x33\x0a\x66\x36\xc3\xa7\x05\xdb\xbc\x78\x32\xcb\x63\xcc\xea\x91\xa3\x05\xf4\x7a\xe3\x45\x0b\x8d\x58\x7a\xaa\x60\xe9\xaa\xcf\x9a\x22\x19\x91\xc5\x0c\xd1\xd3\x33\xdf\x8e\xb4\x13\xa9\xd8\x0a\xe7\xed\x2e\x7e\xb8\x97\x06\x13\xef\x13\x86\xee\xcb\xb0\xc1\xc8\xf3\x30\x0c\x08\x43\xff\xc0\x30\x11\x62\xc8\x1e\x36\xb3\x3d\xa9\x73\x93\xf9\xdc\x8c\xf5\x06\x11\xa1\xed\x6c\x54\xb4\x0f\x20\x64\x56\x76\xbe\x6b\x9c\xe9\x2f\xa9\xdf\x50\xac\x0c\x64\x19\x71\x65\x54\x53\xdb\x66\x38\xd4\xc6\x98\x82\x97\xc5\xd8\xe6\xe2\x32\x73\xa7\x09\xcd\xd0\x8b\x97\x25\xd3\xe4\xb6\xae\x5f\xd6\x6a\xb4\x2b\x2a\x34\x28\x36\x54\xd5\x21\x4e\x1d\x28\xb4\x03\xdc\x56\xde\x9e\x50\xb6\x27\x96\xc9\x41\x90\x0a\x86\xdd\x61\xdd\x34\x6a\x8b\x6e\x6e\x20\x5e\x9b\x06\xa0\x65\xe3\x5f\x13\x97\x04\x16\x08\xf3\x98\x51\xdb\x81\x0a\xee\x5f\x6d\x8d\x23\x5a\xf6\x38\xe0\x34\x23\x2b\x31\x8d\x38\xb1\x39\x54\xda\xcc\x25\x94\x8b\x4d\x0f\x92\xeb\x40\x84\x6d\x5e\x8f\x30\xb0\xc5\xa2\x90\x42\xc9\x3c\x90\x59\x46\x67\x9c\xbe\x08\x24\x4c\x20\x11\x18\x2a\x4d\x09\x21\x52\x3a\xbb\x34\xe0\x9f\x3c\x4c\x5c\x97\xe3\x5a\x9a\xf3\xfc\x58\x60\x48\x81\x78\x05\x90\x22\x30\x19\xf7\x01\x4b\x84\xb4\x1d\x95\x87\xc0\x0f\x6f\xec\x75\xd9\x14\x45\x4c\x51\xb1\xc3\xc3\xc5\x02\xce\x48\xb3\xe3\xd8\xdd\x36\x6a\xfb\x7f\xf4\xed\x3f\x1a\xed\x3f\xfa\xf5\xb9\xfc\xb1\x31\x6a\xfb\x1d\x7a\xd4\x95\xef\xc5\x7d\xbb\x79\x01\x57\x72\x24\x54\x58\x2f\x74\xd6\x48\xe2\x29\xeb\x51\xb0\x2e\x2c\x0c\x47\xab\x43\x22\x91\xb3\xc6\x28\x48\xf8\xb3\xa8\x4f\xaf\xc9\x95\x71\xed\x42\x40\x1c\x0f\x12\x21\x9e\x8d\xb4\xe3\x3a\xb5\x89\x65\x01\x17\x7f\xf7\x11\x23\x67\xd2\xd1\x4b\xac\xf5\xd2\x2f\xeb\x4a\xdd\x72\x8c\xf7\xb1\x0c\xff\x23\x4f\xb3\xf1\x61\x2c\xcf\xf3\xf5\x0c\x8b\x21\xc4\x90\x74\x82\x6e\x5b\xfc\xb1\x49\xe8\x27\x1d\xdb\x0e\xba\x24\xc4\x80\x98\xd4\x66\x61\x42\x08\x8a\x48\x24\x2e\xdb\x06\x68\xa4\x41\x23\x1f\xe9\x2b\xc1\x3e\x46\xa9\xbf\x7b\xe8\x07\x70\xed\x9f\x4b\x7d\xb9\xf4\x8e\x32\xbf\x28\x8b\xd7\x74\x60\xb8\x01\x1b\xcd\x5a\xd9\x28\xcd\xe7\x0f\x5a\xed\x51\xc7\xed\xb6\x2b\x96\x84\x2a\x2b\x5c\xc4\xb1\x6d\x59\x8b\x05\x12\x85\x1a\xd7\xb8\x2a\x62\x6d\xd5\x62\xbc\x10\x1b\x04\xc4\xc9\x48\x33\xaa\x2a\x53\x7d\x41\xd6\xee\x7e\x74\xc0\xf7\x6d\x3b\xc2\x49\x07\x31\x32\x92\x79\xb2\xc3\x2e\x61\x8d\x6b\x83\x94\x92\x54\x57\x68\xe1\x05\x5e\xc0\xb5\xe0\xa0\xf7\xb0\x99\x00\xa7\xc8\x9f\x52\x02\x37\x73\x3f\xa8\x00\x71\xda\x3a\x91\x10\x12\xa5\x31\x0e\xd1\xb5\x90\xc8\x44\x6b\xf3\xb0\xdd\x24\x6a\x9f\xfb\xb9\x89\x02\x89\x84\x7c\x9d\x82\x0f\x1a\x54\x80\xe3\x36\xe2\x84\xc1\xa4\x11\x60\xff\xc8\x2f\xb8\x91\x0c\x1a\xb4\x3d\x69\x04\xc5\x87\x82\xb9\xb4\x2f\xaa\xba\x4f\x32\xc4\x87\xd3\xc1\x80\xb2\x46\x98\xbc\x0f\xe9\x95\xf2\xea\x58\x4a\x52\x1f\x88\x77\xd2\xb9\xa3\x3d\xf6\xcb\x7e\xe1\xed\x4b\xbf\x22\xd7\x66\x6a\xc7\x7a\x32\x30\xb3\x73\x1b\x6f\xf5\x81\xef\x7c\x1e\x26\xc7\xc1\xb1\xc0\x33\xf3\xcf\x71\x7a\xe0\x7e\xfa\x13\xcc\xcc\x90\x7d\x0d\xbe\x56\x08\xe4\xfb\x36\xff\x78\x5b\xc5\xb4\x79\x49\x3a\x2e\x78\xdd\x1c\xe4\x55\x21\xec\x4d\xf6\xf8\x81\xd9\x0e\xc4\x1d\x22\x9a\x82\xdb\xcb\xcd\x40\xcc\xa1\xb8\xc9\x17\x3e\x62\x24\xfb\xb2\xe3\xe0\xd8\x6f\xec\x55\xa4\x35\x64\x3a\x97\x5e\x5e\xd3\xa3\xe2\x09\x1f\x55\xda\x69\xaa\xe2\x68\x71\x65\x08\xc8\xcd\xe0\x6a\x07\x91\xd8\x36\x3d\x40\x21\x48\x5b\x41\x86\x02\x88\x31\xf6\xe5\xb3\x48\x30\x0b\xf1\x2c\x86\x00\x63\xa8\xa0\x81\x18\x45\x32\x20\x5d\x21\xbb\x83\xd9\x80\x6c\x85\xd5\xeb\x2b\xe8\xf9\x8f\x1d\x0f\xc2\xc2\xca\x5a\x58\x77\x23\x2c\x59\xa0\x62\x7c\x9d\xa8\x7b\x40\xd5\xc9\x17\x25\x54\x0b\x0b\xf9\xee\x02\x78\x2e\x42\xe4\x4f\xf1\xbe\x6d\x07\x07\xd1\x3e\x0e\x3b\x41\x97\x3c\x40\xb4\x13\x74\x81\x76\x02\xdb\x93\x81\xcb\x82\x2e\x61\x2a\x7e\x06\x57\xcf\x96\x96\x8a\x6c\x95\x4d\xa7\xd0\xb0\xd1\x97\x24\x06\x1e\x44\xd8\xf1\x32\x9e\x26\x96\x0f\xb1\x90\xc8\x20\x33\xa5\x04\x15\x46\x50\x03\xad\xab\xd0\x17\x18\x6b\xd5\x46\xfa\x8b\xb1\xa1\xab\x10\x8f\xcd\x3b\x8c\x1b\xbd\x51\x30\x9e\x20\x9a\xfe\xe2\x7c\x1f\x4a\xb3\x2b\x33\x61\xf0\x17\x73\xdf\x9a\xc5\xe0\x7b\x09\x09\x79\x09\x23\x72\x02\x53\xf2\x6a\xab\x20\x1e\xe6\xc0\xa3\x7c\xe0\xb4\x7d\x1e\x18\x87\xf5\xa9\x18\xb9\x43\xc8\x2b\x39\x24\x81\x20\x2c\x4e\x82\xce\xc8\xf1\xba\x40\x0f\xb9\x74\x02\xa6\x40\x09\x07\x4e\xa4\x3f\xe9\xaa\x29\x27\xc4\x76\x9a\x8b\xed\x5c\x46\x97\xc4\x10\x91\xd1\x61\xab\xfd\xd5\x7f\x04\x21\x51\x47\x35\xd0\x37\x53\x21\xe7\xfd\x9a\x4e\x13\x62\x73\xdc\x66\x3e\x0a\xe7\x73\xb1\xfa\xa1\x40\xee\x54\x29\x86\x04\x46\x18\x63\x44\xd1\x54\x9a\xed\x66\xbb\xd0\x46\x18\x5d\x52\xc6\xab\x1a\x26\xa4\x67\x14\xcf\xe7\x28\x26\x11\x4a\x20\x43\x75\x2e\x10\x31\x69\xfa\xdb\xbf\xd5\x9e\x35\x28\x28\x39\xe0\x2d\x86\x9e\xd8\x98\x04\xb9\xa2\xa3\x7f\x9b\x6d\x6c\x52\xd2\x99\x48\x64\xc9\x12\xb2\x55\x1b\xd9\xed\x72\xf9\x11\x39\x15\x38\x44\x41\x49\x5a\x9b\xb5\x62\x2a\x76\xa2\xf3\xf9\x2b\x55\xbd\x24\x06\x81\xc1\xa0\xd9\xcd\xf0\x8c\x08\x55\x28\x46\xa2\xf8\xad\xf4\x3d\x82\xc6\xfa\xd8\x67\x86\x81\x83\x69\x57\x45\x09\x03\x4e\x22\xf9\x6d\x39\xf1\x3c\xce\x19\xe8\x17\x84\xd1\x2b\x78\xa5\xb6\x39\xc7\xa4\xf9\x27\x6a\xfb\xa8\x81\xdb\xa8\x73\x70\x48\xfe\xec\x8a\xc5\xb2\x63\xff\xe1\xa0\xed\xae\xb8\xba\xf3\x7f\xc4\x8f\x8b\xdb\x48\x4a\x7d\x08\xc4\x55\x43\x5d\xff\xa7\x00\x08\x9c\xef\x77\xbb\xb8\x7d\xa7\x19\xe6\xf3\xea\x99\xce\x4b\x89\x38\x39\xce\x24\x36\xbc\x64\x05\x12\x2a\xbf\xe3\xed\x81\xd4\x00\xfb\xdb\x96\xad\xa3\x93\x9b\x26\x54\x2f\xd0\x8f\x41\x38\x1a\xf9\x82\x85\x83\xdc\x85\xfa\xbc\xd3\xea\x42\xa2\xae\x76\xbb\xa0\xb2\x2b\xf8\xbc\x73\xaf\x0b\xdf\x29\x8b\x7d\xde\xd9\xeb\x82\xd4\x4c\xf8\xbc\x73\xbf\x0b\xbd\x78\x3c\x0e\x7c\xde\xf9\xa5\x0b\x13\x46\x7b\x61\xa2\x22\x11\xfd\xda\xad\xd5\xc4\xdf\xdc\xba\x9a\xb3\x70\xec\xf3\xce\x3f\xba\x20\x96\x5d\x51\xa5\xdb\x35\xe3\x7e\xbf\xc8\x0c\x52\x44\x93\x88\x91\x0b\x56\xdc\xb7\xad\x6d\xcb\x57\x97\xb6\x90\x5a\xa5\xcb\x88\xdc\xd4\x1b\x80\xf2\x41\xdb\x3a\x14\x90\xf2\x3a\x03\x4d\x4a\x90\x89\x04\x74\x04\x60\x52\x80\x93\x9f\x5b\x80\x94\x4f\xda\x96\x04\x95\xd7\x19\xb0\xe8\x0f\x41\xb4\xf2\x42\x3d\x52\x2a\x1b\xa3\xb8\x7c\xd0\x56\x0f\x7c\x3b\xbd\xd7\x71\xf3\xc7\xe3\x40\x96\x97\x57\x3a\x7a\x7e\xda\x87\x26\x92\xec\xa1\x81\x28\x7b\x96\x9d\xb5\x8f\x25\x2e\x71\x91\x3e\x9a\x4d\xa8\x89\x45\xdc\xab\xef\x10\x57\x42\x9c\xcd\xfa\xfe\x49\x66\x33\x86\x18\x41\x94\xf0\x36\x6d\xf0\xf8\xe8\x5a\xd9\x08\x84\xc1\x08\x71\xc7\xc3\x7e\xf9\xa1\x5c\x60\x52\x1b\x57\x6a\x61\x7c\xe0\x62\x43\xd4\xcc\x37\xec\x29\x11\xb8\xc0\x34\xb3\xef\x64\x51\x5f\xbc\xb6\xd8\x19\xd8\x51\x0a\xd3\xc2\x7e\x04\xb6\x2e\xc1\x6c\x0f\x77\x17\xcf\x72\x93\x00\xf2\xc2\x88\x7a\xf3\x62\xa3\xf0\x28\xdb\x19\x4d\xd9\x39\xd5\xd8\x19\x55\xd8\xc6\xb8\xdb\x28\x1b\xd7\xb6\xe5\x5a\xbe\x65\x61\xdb\x88\xf2\x98\x0d\xb0\xe8\x45\x43\x71\xea\xce\xf3\x57\x18\xa7\x48\xe4\x98\xb6\x2d\xa8\xc4\x92\x0f\xa8\x65\xf9\x56\xc3\xb2\x0d\x95\x53\x8a\x2d\x03\xc9\x30\x8a\x91\x6d\x5b\xff\xa9\x10\x66\x23\xac\xe2\x11\x7f\x87\x77\xf0\x10\x9e\x9a\x11\xdb\x33\x46\x87\x28\x79\x82\x64\x05\xc1\xb9\xcc\xef\x87\xdb\x42\x80\xf3\x8f\x83\xe3\x05\x7c\xab\x54\x03\x28\x7a\x28\x85\xc4\xb4\x2d\x4b\x1f\x18\xa5\xc9\xe9\x0a\x82\x9f\xdb\xb6\xdc\x86\x65\xe7\x22\x97\x13\x6a\x93\x12\xd7\xc2\x76\xe4\x67\x43\x1e\xda\x5e\x3b\xca\x68\x22\xb4\x3d\x6c\x8b\x3e\xd0\x8f\xc4\x03\x3f\x32\x10\x85\x8e\x2e\x6a\xb7\x0c\x94\x0b\xf8\x40\x7e\x58\x77\x2d\x5f\x36\x96\x1c\x22\xcf\x75\xeb\x14\x37\x78\xfc\x24\xbc\xa6\x62\x4d\x87\x73\x9f\x92\x43\x53\x14\x37\x42\xe2\xb4\x30\xf4\xc4\x6b\xf1\x5d\xd0\xaf\xda\x91\xe4\x7d\x46\x0a\x38\xf0\x21\xf1\x68\xcb\x93\x73\xe4\x45\x2c\xcf\x27\x15\x4a\x8b\x46\xa6\xd5\x26\x34\x2f\xc0\xb2\xd4\xb4\x49\x21\x3c\x17\x2f\x80\xea\x16\x2f\x4d\x32\x0c\x03\xf3\x5d\xf6\x1d\x17\xe6\xd3\x57\x9a\x32\xc4\x9b\x78\xcd\x17\xfe\x8a\x61\xa2\x0b\x7e\x53\xbd\x03\x1c\x03\xf3\xbf\x41\x39\xc5\xc9\x6d\x87\x1d\x62\x12\x3a\xe8\x3b\xd9\xad\x67\x94\xeb\xfc\x9a\x8b\x5d\xe9\xa5\x3a\x3d\x08\x9b\xbb\x18\x63\x6c\x7b\x10\x64\x6e\x48\x79\xbc\x65\x42\x82\x76\xe4\xc7\x87\x41\xdb\x1c\xf2\xd8\x09\x6c\xcf\x18\x6b\x3f\x3e\x74\x0d\x9a\x89\x8b\x14\x13\x63\xbf\x44\x7b\x9e\x13\x9b\xc4\xf7\x24\x93\x09\xe5\x14\xe3\x76\xec\x78\x18\x77\xdc\xee\x02\x3e\xae\xe9\x40\xef\xbe\xb8\x79\x37\x99\x50\xf6\x28\x90\x1b\x83\xeb\xf5\xd0\x0b\xb8\x53\xe9\x56\xb6\x80\xdf\x52\x19\xc9\xb4\x75\x9b\xc0\x27\xd2\xb1\x66\x16\x58\xdf\x2d\xb0\x02\x0b\xac\x81\x05\xd6\xc4\x02\x2b\xb2\xc0\xfa\x7f\xff\x1f\x0b\xac\xb1\x05\x96\x05\xd6\x57\x0b\xac\x97\x16\x58\xbf\x59\x60\xbd\xb5\xc0\x7a\x65\x81\x75\x64\x81\xf5\xd9\x02\xeb\x93\x65\x6c\x18\x7f\x2f\xd9\x4e\x67\xe9\xc0\x50\xbf\xd1\xc3\xe9\x5e\x4a\x07\x62\x46\x11\x79\x96\x3a\x12\x44\x6d\x0b\x06\x96\x1f\x61\x2c\x99\x8a\x3a\x67\xb5\x12\xcb\x57\x36\x4a\x59\xdf\x19\x6c\x04\xb2\x6b\x6e\x84\x09\x94\x7a\xb6\x28\xe7\x5e\x7a\x47\x1d\x56\xef\xa1\x8d\x41\xd9\x84\x94\xde\x23\x8e\x25\x35\x39\xef\x8b\x1c\x6d\xa1\xf6\x94\xf3\x39\x32\xea\x26\x21\x86\xa7\x28\x82\x00\xcb\x93\x62\xcb\x92\x11\xa5\x2d\x9a\xfe\x5e\xa4\xbf\x93\xf4\x97\x59\xfe\x6d\x9b\x9f\x32\x86\xb4\x43\x38\x31\xba\xc4\x29\x50\x9c\x68\xb8\xf3\x5e\x34\xd5\x96\x1e\x40\x37\x76\xe8\xf2\xb7\x38\x62\x8d\x95\x9e\x7c\x72\x84\xb0\x11\x13\xdb\x1a\xa4\x9f\x70\x77\xc3\x4f\xa8\xea\xff\x8a\x2e\xad\x68\x44\xab\x8e\xac\xbb\x66\x33\xf4\x06\xe8\x21\x32\x93\x32\xbe\x36\xcf\x29\xd4\xd6\x26\x3f\xa9\xe0\x61\xef\x6b\xb2\xe4\xa3\xc7\x08\xcf\x15\xf6\x19\xd1\x06\x18\x49\xb6\xc3\x3a\x2c\x77\xec\x02\x45\xb4\xb4\xed\xb9\xbe\x4a\xf8\x93\x1b\x3b\x98\x03\x95\x3b\x03\xe7\x98\x7f\x47\x91\x4c\x61\x99\x49\x20\x65\x7c\xc0\x24\xc6\x28\xec\xd1\xc2\x66\x2e\xf5\xb8\x91\x5b\x51\xcf\xc5\x46\x80\x68\x8e\x30\x04\xc4\x85\x84\xc4\x19\x4e\x18\x91\xb8\x13\x48\x7f\xc8\x4e\xd2\x85\x1e\xf1\x5c\xa9\x7b\x98\x1e\x8c\xa4\xa6\x72\x04\x23\x32\x85\x29\x09\x21\x24\x01\x04\x24\x81\x84\x84\x78\xbf\x27\xc3\x48\xef\x2b\x51\x2c\xcc\xe7\xee\x39\x46\x23\x99\xcb\x10\x8b\xae\xcf\x92\x7c\x75\x82\x2e\x19\x81\xa8\x81\x4c\x41\x9b\x02\x84\x87\x2e\x1e\x99\xc7\xb7\xa3\x66\x88\xeb\x21\x4c\xd5\xb3\x1e\x0d\x47\x68\x2a\x1f\x6d\x65\xf9\x2c\x50\x78\xe0\x62\xac\x28\x6a\x64\xc0\x8d\xea\x21\x6e\x66\x45\x15\xba\xa9\x7c\xb6\x88\x48\x58\x48\x5c\x94\x8d\xfd\xf3\xcc\xa2\xe1\x71\xde\xed\x2b\x8f\x96\xde\x20\x0a\xcf\xe5\xe1\x52\x98\x65\x02\x30\xce\xcd\x05\x21\xe5\xa8\x3f\xe6\x09\x09\xb2\x67\xcc\x20\x67\x45\xe9\x4a\x1b\xc6\xfd\xcc\xd7\x80\xe9\xcd\x39\xcb\x0f\x87\x97\x0e\x7a\xf9\x9a\x8d\x21\x35\x77\xb8\x5c\x6c\xb8\x99\x58\xd6\xb3\x1d\x32\xbb\xdd\x3e\x93\x13\xaa\x12\x41\xac\x3e\x48\x14\x5f\x9a\x69\x61\xa4\xd7\xcf\x52\x5e\xbe\x76\x49\x09\xe0\x4b\xe5\x21\xbc\x46\xa6\xab\xc2\xe7\xa2\x4a\xd8\x85\x90\x98\x3a\x2f\x9c\x13\xac\xca\x13\x0c\x01\xa1\x46\x1a\x90\xe0\x20\x56\x01\xd8\x20\x92\xa4\xca\x80\x91\x18\x62\x49\xb2\x0c\x83\x28\x41\x78\x4a\x17\xb1\xb8\x0f\xc5\xbd\x24\x9d\xa0\x90\xd1\x83\xd2\x32\xd7\x19\xc5\x17\x85\xb1\xe5\x4b\x10\xf4\x7a\x52\x80\x60\x06\x84\x93\xe1\x70\x4c\x90\x68\x09\x44\x20\x29\x80\x84\xb4\x40\x30\x4f\xc2\x28\x94\x55\xb7\x6d\x64\x79\x54\xec\x93\x7d\x7a\xe0\xb6\x5d\xdf\x68\x7d\x4c\xd7\x9e\x0f\x38\x14\x39\xdc\xd4\x09\x04\x34\x23\x54\x90\x3b\x20\x44\x29\x70\x2a\xad\x85\xb5\x65\x47\x2c\x59\x42\x56\xc2\xd8\xaf\x54\x8a\x10\x84\xa8\x39\x78\xd4\xd6\x5f\xee\x7b\x69\x40\x12\xfd\xc0\x73\xe7\xf3\x56\xf1\x51\x4b\x9e\x80\x19\xfd\x0d\x15\xf4\x9e\xbd\xe6\xb8\x49\x17\x92\xf1\x43\xe5\x31\xbb\xaa\xb0\x1d\x52\xbf\xdc\x1c\x7a\x3d\xf1\x57\x61\x9e\xc4\x57\x69\x40\x4b\x81\x38\x44\x42\xee\x3a\x70\xc5\x2c\x88\xa9\xb4\xd9\x15\xbf\x4c\x3a\x08\x50\x88\x28\xc6\x7e\xd6\x5d\x91\x9e\xc1\x51\xe3\x3c\x48\x36\x54\x00\xc5\xc4\xa6\x10\x48\x8b\x8e\x05\x44\xb7\x52\xac\x85\x32\xca\xbf\x28\x1a\x8a\x69\x1d\xad\x58\xaa\x22\x08\x48\x88\x64\x6a\x50\xb1\x96\x8c\x48\xc1\xed\x78\x1f\x45\x64\x74\x90\xe0\x5a\x0d\x0d\x24\x5f\x17\xbc\x7e\x90\xc6\x30\x82\x1e\x0c\x61\x40\x38\x4a\x30\x4c\x08\x47\x23\x0c\x63\x62\x2c\x3f\x36\x85\x4b\xd2\x51\xde\x20\x28\xbe\xeb\xe1\x5a\x6d\xe2\x0c\x0e\xc6\x2a\x23\x94\xc9\x86\x07\x02\x41\xce\xa9\x27\x18\x92\x43\x57\x1d\x2a\xed\x0f\x0e\xc8\x64\xdf\xb6\x07\xd2\x79\xbf\x47\x3c\x98\x12\x51\x60\xbf\x77\x10\xef\xdb\x76\x0f\xab\x0c\x16\x43\x32\xad\xf7\xf0\x41\xa2\x7c\x64\x87\x87\xa3\x74\x01\xb8\x54\x27\x70\x43\x9d\x74\xb7\x0a\x65\xec\xe4\x48\x0f\x89\xb7\xef\x38\x9b\x63\x6d\xd5\x2f\xf5\x29\xdc\xb8\x56\x43\x97\xc4\x5c\xed\x13\x18\xc1\x18\x63\x55\x73\xf1\xd5\x00\x26\xb9\x5c\x38\x71\x06\x02\x4e\xea\x52\x59\x2e\x7f\xb6\x2f\x0d\x23\xa1\x4b\x3d\x84\xcb\xa2\x41\x68\x78\xd1\x86\x72\x45\x96\xc4\x1d\xb7\xad\x86\x4b\x2d\xdf\x02\xcb\x34\x01\xcc\x8e\x8a\x14\xe8\x43\x14\x62\x0c\x62\x0e\x78\x4d\x37\x77\x04\x49\x87\x51\xaa\xb0\xb5\x84\x60\xc8\xce\x1e\xc4\x75\xda\x4c\x69\x2a\xb3\xcf\x5a\x3e\x26\xa0\xd9\x69\x4b\x93\x21\xd3\x86\x4a\x8a\x65\xd9\x97\xd6\xe3\x83\xd8\x69\xec\xd5\x6a\x28\xaa\x93\x18\x43\x74\x40\x82\x76\x28\x03\x70\x5a\xca\xf9\xa6\x20\xc1\xe4\x2c\x0f\x7d\x46\x82\x78\x7f\x48\x32\xaa\xda\xf7\xa6\xb5\x2a\x32\x53\xb5\x2e\x40\x10\xd9\x1a\x60\x49\x83\x29\xac\x0c\xf1\x16\x19\xee\x72\x34\x93\x08\x02\x8a\xbe\xa8\xbc\x18\xf2\xc8\xa2\xe3\x81\xe7\x76\x37\x13\x12\xe4\x11\x8c\x64\x03\x88\xaa\x9f\x95\x42\x83\xc1\xb9\x47\xeb\x39\xb7\xe2\x50\xd2\x79\x81\xe3\x7a\xc6\x48\x27\xb9\x28\xcc\x9b\xc5\x03\xa9\xe9\xad\x11\xd2\xeb\xc9\xd8\x43\xa6\x70\x5f\xa7\x06\xc2\x5e\xbe\x56\x10\x0f\x18\xa1\x48\x66\x89\x83\x29\x35\x37\x56\x42\x50\x90\xa7\xa0\x95\x27\x0c\x4b\x9c\x4c\x21\x21\x36\xd3\x78\x84\xb0\x51\x94\x0c\xfa\xf9\xa8\xf4\xd4\xa8\x6c\x34\x0c\x7d\x75\x74\x94\x36\x46\x65\x91\x55\x97\xab\x86\x23\xaf\x72\x78\x43\xdf\xf1\x03\xb7\xed\x64\x6b\x86\xc3\x81\x62\x3f\xbb\x15\x77\x46\xb7\x0d\x0a\x29\x41\xb2\x82\xc9\x37\xc6\xc5\x7a\xef\xe7\x77\xe6\xe2\x3f\x59\x2a\x45\xeb\xd4\xa7\x75\x83\x62\xc6\xd4\x8c\x86\xfc\x0a\x5e\x89\x15\xca\x33\x72\x91\xe4\xfd\x21\x5d\x7d\xda\x0a\xc8\x6f\xec\xa5\x77\x03\x0a\x13\x21\x44\xa0\xa1\x5c\xd6\x86\x14\x79\x4d\x96\x6f\x94\xb8\xf4\x4b\x8c\x68\x54\xb9\xce\x57\x1d\x4a\xd8\x14\x22\xb1\x26\xb1\x85\x4c\x3c\x91\x37\xf5\x32\x1f\xc2\xf1\x2d\x86\x50\xc6\xd5\xcd\x5a\x81\x68\x7e\xb9\xc9\x8c\xba\xa0\xa6\xa7\xc7\x0a\xc3\xaf\x0c\x63\x63\xcf\x68\xef\xf9\x92\x88\x27\x27\x0a\xc5\xf5\xc2\x08\xcc\x56\x82\xe5\x83\x6a\x6e\x55\xf3\x92\x67\x34\x3f\x76\x14\xbb\x0f\x60\xea\x44\x1d\x22\xb2\xe3\x99\xa6\xd4\x3a\x6c\x09\x99\x51\xc4\x11\xcb\x3b\x2e\xdd\x2b\xe3\x36\xf5\xa3\xb6\xc1\x7c\x43\xec\x87\xb9\x81\x74\xf9\xac\xaf\x18\x6b\x5e\xbc\x43\xf2\x5b\xa5\xc9\xf1\x6d\x04\x10\x6e\x58\xa0\xc7\xd8\xcf\x6e\xf1\x2d\xcd\xa0\x79\x7a\x04\x5c\xb2\x87\x86\xb7\xe9\x8a\x79\x4e\xf1\xb2\x6d\xf4\xfa\x53\xbe\x38\x33\x9c\x4f\xbb\x64\xc7\x55\xa5\x36\x37\x36\x8d\xa4\xb1\x69\x66\x51\xbd\xf9\xd9\x20\xd7\x67\xd5\x69\xaf\xa4\x27\xd6\x95\x06\xdd\xeb\xf7\x71\x5c\x20\xa0\x6b\x0c\xba\xcf\x68\x3e\x08\x62\x9b\x97\x7e\x6c\xa4\x8f\xcb\x79\xc5\x71\xf9\x2a\xa3\xef\xd7\x28\xc6\x8b\x77\xcb\xd1\x88\xe4\x9e\xc0\x38\x99\xb9\x60\xf1\x74\x22\xcd\x4f\xcc\xe3\x9a\x61\x3c\x4d\x82\xa8\x9f\xb4\xef\xf8\x88\x93\xdf\x52\xd7\xe6\x0c\x18\x8e\xa5\x99\x0e\x96\xc1\xc0\x32\x60\xdb\xb2\x4c\x47\xb9\x28\xb7\x32\x0a\xb3\x28\x6d\x10\x93\x4e\x37\xd5\x58\x70\x25\xc0\xba\xfb\xe1\xa1\x5b\xab\x25\xe2\x0f\x1a\xd9\x89\xed\x1d\x46\xb9\x4d\xb7\x92\x5e\x22\x67\x24\x88\x46\x89\x71\xb4\x91\x4c\xcf\x95\x65\x10\x0a\x1d\x92\x40\x68\x27\x18\xc3\x0e\x42\x23\x9b\x24\xb6\x87\x0f\x23\x8c\xf7\xb1\x4c\xff\x49\x50\x60\x7b\xf8\xae\xb6\xd4\xc8\x36\x97\x71\x2e\xaa\x29\x5d\x2d\xc3\x0b\xb1\x45\x32\x3a\xa1\x37\x65\x8c\x46\xbd\x99\x3a\xb7\xd2\x77\x1d\xb7\x2b\xbe\x33\xde\x00\xd2\x93\x90\x81\x09\xd9\xa7\xbd\x70\x1c\x8c\xda\x56\x43\x40\xa6\x77\xca\xa3\xc2\x80\x52\xf9\x11\x46\xa2\xf7\x37\xb3\x11\xe3\xb9\xe2\xbf\xe3\x3a\xff\xe8\x36\x2f\xa0\x32\xa0\x63\xc7\xe6\x32\x0e\xee\x02\x65\x43\xaa\xeb\x02\xa5\x49\xc6\x18\x0a\x47\x90\x13\xca\x7a\x34\xe2\x6d\xeb\xae\x68\x70\x7a\x27\x1a\x3c\x35\xa1\xc6\x61\x34\x4d\xda\xd6\xff\xf7\x7f\xfd\xdf\x02\x4a\xde\x09\x98\x5e\xe1\xa3\x82\xa8\x6d\x1d\x07\xc7\x02\x22\x0a\xa4\x13\x86\x61\x04\x91\x2d\x7b\x88\x92\x67\x82\x7b\xc9\x53\x33\x49\x5f\xf2\xd0\x0c\xfa\xe9\xc9\x29\x0c\xb3\x83\x51\x18\x90\xf4\xfc\x73\xa2\x4f\x3b\x61\x4c\xf4\x91\xe6\xa5\x79\x78\x09\x17\x24\x3d\x9e\x3c\x4f\x4f\x23\xb7\x2c\x69\x82\x76\xde\x46\x63\xb2\xe3\xc2\x39\xb1\x2e\x2c\xec\x7f\xe8\x9c\x77\xe7\xf3\xfc\xc4\xec\x52\xee\x11\xbc\x16\x86\x8b\x1c\x0a\xd0\x60\x3e\xb7\x5c\x4b\x05\x42\xb3\x88\xb8\x60\x6a\xcb\xb5\xe3\x02\x27\x96\x6b\x01\x23\x16\x49\xdd\x78\x67\xc4\xba\x23\x40\x86\xed\xd0\xb7\xfe\x8f\xbc\xaa\xd5\x9a\x9d\xf3\xf8\xfa\x63\x37\xf5\xa6\x3f\xc7\x6d\xcb\xb5\xec\x73\x79\xa8\x73\xa5\x35\xfe\xbe\x65\xc1\x59\x56\x38\xf6\x9b\x9d\xbb\x13\xa3\xc4\x48\xbc\xbf\x22\xa2\xc9\x70\x44\x9a\x9d\x3e\x1d\x5c\x4c\x58\x72\x37\x07\xc9\x3b\xf8\x5a\x77\x70\x08\x31\x8c\x60\x48\x66\x70\x4d\xce\x64\x38\xc2\x9e\xec\x06\x7c\x4d\xae\x10\xc5\xf6\x35\x50\x62\x59\xb9\x8f\xf0\x09\x51\x2a\xad\x03\x77\x3e\xf7\x9a\xf4\xc0\x95\xa1\xb6\x52\x83\x2e\x8a\xdb\x3d\xff\xaa\xa0\x47\xbe\xc4\x70\x21\x37\x21\x26\xe1\x52\x3f\x8b\x0c\x2c\x47\x34\x65\x05\x11\xf1\x20\x24\x8e\x8c\x8b\xa1\xcc\x0f\xd5\xd9\x80\xcc\x93\xad\x4e\x01\x1a\x96\x1f\x12\x4e\x22\x53\xe1\xec\x5a\xbe\x0c\xf4\x23\xb7\x43\x11\x86\xfc\xb5\x99\x24\xd1\x96\x58\xe4\xf3\x6d\xba\x25\x39\x0c\x0a\x89\xe1\x42\x7e\xe8\xb6\xf3\xc3\xe1\x10\x67\xe7\xbe\xdc\xf6\x04\x97\x96\x8e\x27\x27\x32\xa6\x90\x4d\x6b\x35\xcb\xb6\x76\x08\xe9\xd7\x6a\xe8\x84\xec\x78\x18\x86\x04\x9d\xb4\x2d\x24\xfa\xae\xdf\xee\xfb\x53\xdf\x72\xe4\xf5\x7c\xae\x1f\x5a\x96\xdf\xc7\xf6\x10\xae\x09\xb2\x12\x45\x6a\x9f\x3a\xbf\xda\xdf\x9b\xbb\x5d\x79\x8a\x7a\x6d\xa3\x93\x5a\x2d\x83\xc6\xf2\x6c\x15\x8e\x54\x46\x60\xa2\x94\x62\x3a\x5a\x88\x6d\x87\x07\xf1\xbe\xd8\xe4\xde\xfb\xf5\x10\x8d\x54\x6c\x5c\xf6\x28\xee\xd3\x07\x5c\xec\x07\xe7\xf3\xd1\xe1\xde\x2f\xf8\xc7\x35\x41\xf7\xee\x13\x42\x46\xed\x20\xfb\x1e\x79\xa4\x99\xdd\x60\x35\xc4\xe6\x97\xa7\x79\x16\x17\xe3\x5a\x6d\x67\x20\xc7\x4e\x70\x6f\xb1\xbb\x54\xf4\x7b\x4a\x86\xfa\x08\x54\x37\xc8\xbe\xd6\x63\xf8\x96\x9c\x1e\x4c\xda\xf9\xe1\xd7\xc4\x39\xcd\x0e\xcf\xb8\xa0\x60\x7d\xe0\x33\xae\xd5\x34\xf2\xb7\x36\x85\xb7\x7a\x5d\x9c\x38\x1a\x97\x2f\xaa\x84\xb7\x44\x74\x03\x4b\xc7\xff\xc0\xf2\x29\x19\xda\xd4\xbe\xb6\xdf\x9a\x34\x40\xd4\xf3\xb7\xe2\x8d\xf9\xfc\x4f\xf1\xfc\x6d\xf6\x71\xa7\x44\xd7\x73\x78\xe8\x61\x3b\x45\x94\xbe\x3e\x2d\x7b\xe1\x51\xf2\x56\x81\x68\x1a\x49\x0c\x57\xc1\xcb\x9c\x97\x5d\xb6\xef\xfb\xcd\x8e\x98\x6b\xc6\x6c\x34\x16\xab\x4c\x4f\xd0\xf2\xe0\x12\x63\xbf\xca\xa7\xa3\xe5\x8a\x57\x70\xbd\xce\x78\x40\xda\x49\x80\x6e\xcd\x8f\xd4\x9c\xa6\x0f\xea\xe2\x15\xa3\x83\xf0\xba\xf2\x2c\xb5\x8f\x50\xc6\x46\xa5\xe5\x82\x35\xb0\x54\x20\xa9\x8d\x0e\x4d\xb3\x93\x2e\x08\x49\xb6\x05\xf2\x5c\x70\xa4\x5d\xa3\x20\xe2\xa8\xb9\x5b\x69\x8d\x9e\xed\xcb\xc3\x3a\xc5\x76\xbc\x58\x2c\x16\xe8\x47\x26\x1f\xf8\x16\x58\xa0\x45\x08\xbf\xb3\xdb\x05\xbd\x54\xfa\x1d\xeb\x8e\x05\x96\xd5\x5d\x60\x78\x48\xde\x35\xd4\x17\xc2\xd3\xec\x52\x7d\xac\x24\xc7\x2b\x4a\x18\xf2\x5c\x0c\x47\xf2\xc2\x64\x72\xa6\x04\x9e\xfb\x31\x76\xba\xa6\xf4\xad\x37\x2d\xae\xfe\xb8\xd4\x01\x2d\x53\x89\x88\xf9\x17\x99\x5e\x13\x8e\x87\xf7\x6d\x9b\x1e\x84\xfb\x38\xea\x50\xc7\xeb\x6a\xc5\xd0\x15\x6d\x9c\x63\xb1\x37\x6c\x86\x86\x87\x83\xa1\x56\xad\xb6\xec\xa3\x3e\xeb\x98\x56\x98\x11\x70\x9c\x39\x40\x06\xa9\x0c\x7f\x74\xcd\xcb\xbb\xb4\xcb\x34\xeb\x50\x9e\x5b\xc1\x34\x80\xe8\x1c\x07\xc7\x70\x1c\x1c\x77\xfd\x8e\x60\x6d\x51\x27\x74\xbc\xae\xaf\x02\x4d\x1e\xe8\xf3\x26\xf1\x58\x3c\xe4\xb9\xc6\xb0\xbb\x80\xa0\x6a\x9b\xb0\xb9\xd3\xa5\xec\xb1\x11\xe5\xdb\x6c\x5b\x06\x96\x4a\x0f\xab\xf4\xd9\x1f\x23\x36\x93\x01\xef\xa5\xec\x96\xab\xcb\x78\x23\x89\x19\x47\x47\xb4\x11\x60\x90\xfe\x6f\xc1\x5f\x72\xb6\x94\xbb\xd4\x7c\x4b\x11\xdc\x5e\x3a\x0f\xa4\x74\x1e\x34\xbe\xa5\x7e\xde\x49\xc5\x9c\x8c\xcc\x1a\x56\x88\xf1\x82\x0e\xb5\x18\xcf\xb5\x61\x2c\xab\x96\xd9\x83\x4a\x65\xc5\x89\x49\xc9\x2e\xc8\x5c\xc9\x44\xac\x08\x9d\xc6\x9e\x90\x9e\x4b\xa6\xda\x49\x41\x8f\x41\x78\x3b\x28\x10\x58\x0c\x1c\x5c\x88\x70\xd7\x3c\x56\xc8\x3c\x41\xb5\x65\x72\xd1\x62\x59\x52\x7c\xb4\x8f\xe3\x0e\xed\x12\x84\xa8\xed\xe1\x3a\x73\x10\x75\x22\x5c\xe7\xb8\x29\xa3\xad\x64\x9e\x01\x19\xbf\xbc\xd5\x7e\xb3\xc3\x81\xc9\x5c\xa2\xc4\x16\x62\x81\xcd\x60\x24\x3d\x18\xc5\xe3\x05\x24\xb7\x21\x86\x88\x94\xec\x52\xcd\xc3\xa5\x51\xc9\x3e\x35\xb9\x69\x8a\x05\x37\x4e\xb1\xf0\xc0\x6b\x77\xb8\xcc\x18\xdd\xf5\xc3\x43\x12\xb5\x3b\x71\x27\x72\xbc\x2e\xb0\xae\xdf\x89\xe5\xdc\x83\xb8\x13\x76\xe5\x87\xdc\x9a\x10\x13\xec\x27\xa2\x20\xd7\x41\x20\xaa\x28\x31\x36\xbf\x68\x05\x25\x9e\x18\x94\x28\xfb\x55\x53\x63\x50\x4d\x8d\xaf\x51\x52\xed\xfb\x77\x5a\x60\xad\x82\x08\x73\xed\x86\x57\xf2\x13\xcf\x7a\x8c\x84\xed\x22\xa7\xe3\x10\x66\x84\x98\x7d\xc5\xad\x54\x14\xa5\x49\x6f\x18\xe5\x67\xee\x78\xf9\x59\x7d\xba\x61\x2f\x6b\x19\x7e\x8e\xbf\x6c\x50\x55\x41\xa1\xb1\x96\xc6\xa2\x2a\x36\xde\xe1\x8a\x84\x78\x27\x12\x74\xf3\xf7\xab\x17\x4e\x6f\xc1\x97\x4c\x5d\x82\x34\x29\x7e\x2b\x57\xdb\x5f\x31\xbc\xa4\x99\xa7\x1e\xbc\xca\xaf\x73\x22\x78\x60\x04\x51\xcc\x4f\x3e\x8b\x1e\x4d\x44\xc6\xb1\x2a\x7f\x84\xc6\xe5\xeb\x0b\x64\x73\x8c\x81\xe7\x61\x9f\xa4\x80\x52\xd5\x21\x02\x67\xb9\x14\x84\xf2\x68\xa0\x4a\x69\x4d\x51\xee\x6f\x88\x98\xe3\x09\x78\xc4\xc0\x93\x27\x81\x18\x98\x28\xbb\xac\x5c\x52\x3b\xd4\x50\x85\x00\x54\xc8\x0d\x16\x41\x1d\x7e\xc0\x1c\xda\xe6\xbe\x2c\x1e\x0f\x06\xa5\x48\x9c\x46\x12\x0e\x44\x8d\xd6\x52\x9c\x1a\x81\xb0\xb6\xe7\x1b\x72\x18\x53\x91\xbf\xc3\x32\xd9\x32\x88\x20\x4e\xa3\x83\x49\xbf\xba\x2d\x99\x4f\x3f\x6d\x10\xc3\x69\x40\x28\x42\xe2\x22\xbe\x18\xc3\x0e\x62\x07\x51\xad\x16\x1f\xba\x59\xac\xb0\x64\xab\x1f\xff\x48\x93\x98\x05\x46\xab\x58\xda\x27\xb1\xea\x93\xc5\xd5\x30\x1c\x51\x14\x1c\xb0\x5a\x8d\x1d\x44\x06\xf3\x87\x30\x4d\x22\x51\xd5\xd1\x0f\x68\xd1\xc5\x3e\x1c\x20\x7e\x48\xb8\xdc\xe5\xec\xcb\xb3\x86\x1d\x86\x38\xde\xc7\x3c\x73\xe8\xe4\x8e\x87\x17\x18\x50\x51\x95\x24\xb6\x9d\x87\x84\x8a\x3d\x50\x74\xe0\xaa\xf2\xb6\x1d\x1d\x10\x77\x5f\xdd\x70\x44\x41\x4c\xc4\x1d\x86\x28\xde\xc7\xfb\xf9\xf1\xa1\xe3\x44\x87\x05\x30\x03\x4a\x9e\x17\x31\x19\xbe\xaa\x57\x8c\xf8\xc5\x0d\xeb\xfb\x97\x34\x6b\x9d\xcd\x31\xbc\x32\x6e\x23\xd1\x3d\x2f\xa9\xf8\xfb\x4a\xdb\x51\xa5\xc3\x87\x5e\x8a\x19\xa2\xf4\xda\xf4\x92\xb2\xca\x2c\x53\xa5\x60\x07\x60\x58\x05\xd4\x6a\x54\x6c\x52\x0f\xbd\xb6\xee\x61\x14\xb5\x2b\x68\x5f\x5c\xdf\xa5\x84\xb8\x8b\xaa\x73\xf0\xf4\xc3\x90\x0b\x1a\x0a\xfb\xa1\x34\xd5\x5a\x60\x08\xe5\xdc\x7e\x44\x49\x61\x9c\xc4\x96\x5d\x7c\xe1\xcb\x38\xe2\x43\xe4\xca\x69\x21\xee\x9f\xc6\x53\x96\x20\x17\xe4\xff\xf2\x18\xf1\xb4\xd0\x93\xe9\x68\xf4\x89\x06\x0c\xc9\x10\x21\xd9\x1d\xb6\x79\x45\x89\x4c\x16\x2c\x80\x3a\xa5\xa2\xc5\x72\x79\xd7\x95\xa1\xf0\xd6\x23\xba\xba\xa7\xf3\x9e\x2d\xc5\x97\x50\xfd\x5c\xa6\x54\x5e\xf8\x18\xf3\x54\xb2\x58\x6d\x93\xe2\x3a\xc5\xc0\x4b\x1d\xc6\x6f\xe8\x30\xe9\x58\x56\xac\xa3\x84\xd8\x66\x75\x99\xbf\x4c\x8d\x95\xdc\xfb\x7c\xa5\xe4\x11\x85\x37\x94\xa0\x47\xa9\xa3\x15\x54\x0e\x9c\x9c\xc1\xb7\x1a\x35\xd5\x72\xd9\xa3\xea\xf2\xe6\xf1\x4a\xe1\x9c\x42\x21\xaf\x55\x2f\x7f\x47\x79\x34\xd7\x0e\x67\x8a\x47\xa6\x6d\xfb\x42\xc9\x1b\x63\x5d\x79\x6c\x1e\xcd\x54\x8e\x96\xfc\x6c\x59\xbb\xbc\xc2\x8e\xbe\x99\x21\x6c\xff\xe2\x50\x7c\xf7\x97\x9b\x07\x26\xef\x93\xc7\xca\x73\x2d\x43\x67\xff\x52\x5f\xdd\x27\x88\x3b\xd4\xb9\x4f\xef\xa5\x9f\x2f\x98\xc3\xf7\x38\xa2\x27\x72\x15\xd0\x9d\x50\x7e\x8a\x71\xf3\xbe\x7b\xef\x57\xba\x27\xd8\xd0\x9b\x74\x48\xe5\x48\x1f\x53\xf2\x98\x22\x17\xc3\x33\x79\xe1\x61\x78\x21\x2f\x5a\x18\x9e\xc8\x8b\x5d\x0c\xdf\xe5\xc5\x3d\x0c\xef\xe4\xc5\x1e\x86\x87\xf2\xe2\x3e\x86\xa7\x94\xa0\x63\x4d\x22\xcf\xf4\xc5\x0b\x7d\xf1\x44\x5f\x7c\xd7\x17\xef\xf4\xc5\x43\x83\xb0\x28\x39\xac\xa0\x20\xc8\xec\xc1\xab\xfa\x88\x67\xef\x7f\xb6\x47\x7e\xbd\x7f\x8f\xee\x81\xac\x3b\x1f\x49\xb1\x42\xbf\xa7\xe4\x29\x85\x6f\x94\xa0\xa7\x6b\xa9\x5f\x85\x05\x48\xe9\x32\x1c\x8d\xc2\x84\xf6\xe2\xa8\x9f\x08\x34\x74\xb7\x2e\x9f\x9f\x66\x8f\x44\x0b\x53\xd0\x68\xca\x69\xb2\x44\xa0\x19\x3d\x28\x86\x4f\xed\xdd\xfb\x74\xef\x06\x4a\xc0\x4d\x01\xb4\x8e\xd0\x55\x9f\x2a\x42\xff\x40\xc9\x37\x0a\x77\x28\x41\xdf\xfe\xbe\x0f\xbb\xe9\x2b\xc4\x77\xdf\xf4\x11\xf7\xe9\xbd\xb5\x93\x55\xf7\x98\xfc\x8a\xdf\x28\xb9\x43\xe1\x13\x25\xe8\xce\x4f\x7e\xc5\x4d\x4d\x16\x1f\x79\x53\x93\x3d\xba\xbb\xae\xc9\xef\xde\x3e\xca\x7a\x48\xb6\xfa\x77\x4a\x3e\x51\x78\x4d\x09\xfa\x54\xd9\x6a\xfc\xe3\x86\x46\xad\x63\x93\x0e\x95\x69\xb3\x5e\xaf\x59\x95\x36\x5a\xff\x2b\xb9\x9d\x6c\x80\xb9\x2e\xa9\x95\x68\xc5\x2a\x93\x0a\x2f\xe9\xa2\x52\x06\x49\x7b\x90\x39\xca\x0c\x0f\xfb\xaf\xa9\xb1\xec\x3c\xa7\xe4\xb5\xc1\x88\x3f\xde\xc8\x88\xdf\xbd\x7d\x94\xf3\x62\x7d\xa3\xd9\xb1\xbc\x5f\xe2\xc8\xef\xde\x3e\xda\x88\x29\x6b\x6c\xb4\x80\xfa\x46\xd6\x6c\x32\xda\xd7\x26\xa3\xfd\x4c\xc9\x47\xc9\x68\x29\x17\x17\x62\xe5\x96\x17\x2d\x0c\x4c\x5e\xec\x62\x88\xe4\xc5\x3d\x0c\xa1\xbc\xd8\xc3\x10\xcb\x8b\xfb\x18\x02\x4e\xd0\x67\x4d\x38\x34\x3d\xfa\x06\xae\x2f\x98\xbe\x88\xf4\x45\xa8\x2f\x62\xbe\x6e\x92\xfc\xc5\xee\xb8\xa9\x33\x24\x8f\xbd\x61\x9e\x68\xce\x2b\xa7\x49\xc2\x49\xc0\x61\xc4\x09\x0a\x6e\x6a\x77\x59\x6a\xbc\xc5\xa7\x14\x65\x47\xf3\xc1\xcd\xe2\x48\x01\xda\x59\x46\x70\xc3\xd7\x16\xe4\x48\xbc\x35\xe2\x7f\xaf\x20\x69\xd6\x50\x96\x25\x0b\xb5\x9b\xe2\x64\xb1\x33\x37\x98\x26\xf9\x74\x37\x71\x2e\x57\x52\x21\x5a\x4e\x39\x19\x19\x96\xed\x32\xaf\xa9\xd8\x74\xb9\x07\x84\x36\x66\xb5\x1a\x6d\xcc\x0e\x3c\xd7\xd5\x9b\xe0\x6c\x9f\xe8\x78\x40\x1b\x63\xa0\x8d\x3e\xd0\xc6\x53\xa0\x8d\x97\x40\x1b\xa7\x40\x1b\x2f\x4c\x4d\x6f\x61\x5b\x30\x33\xb6\xf4\x19\x1e\xda\x98\xad\x44\x64\x18\x8e\x6d\xda\x2c\xf1\xa7\xf1\xee\xed\xa3\x75\xed\x2b\x36\xb0\x48\x7e\x95\x6d\xcc\x90\xae\x6b\xac\x69\x73\xc6\x8b\x49\x1e\x7e\xcc\x7c\x0a\x63\x9f\x43\xdf\x67\xf0\xd4\x77\xe1\xa5\xef\xc2\xa9\xef\xc2\x0b\xdf\x5d\x2c\x46\xdc\x60\x4b\x03\x0e\x13\x0e\x63\x0e\x97\x9c\xfc\xb0\x1c\x4b\x9e\x05\xfb\xd6\xb6\x05\xae\x6f\xb9\xd6\x02\x2e\x38\x69\xfe\xf9\x47\x52\xff\xa3\x6f\x37\xe1\x5c\xdc\xdc\x6d\xc2\x8c\x93\x66\xe7\x8f\x3f\xfe\xbc\x53\xb7\xdb\xf3\xce\x1f\x5d\x84\x1b\x3f\x16\xdd\xe6\x45\x3e\xae\x67\xbc\x14\x55\xe3\xc0\x6d\xa7\xe8\x43\x82\xa2\xb6\x43\x7d\x8a\x95\x81\x43\x58\xf2\x97\x8b\x6c\x14\x1f\x30\xe3\xac\x8f\x39\xb1\x71\xd6\x67\x87\x7e\x68\x7c\xfb\x15\x2f\x4c\x32\x6d\x9f\x30\xe3\x60\xfd\xf1\xc7\x9d\x9a\x99\x0e\xe0\xc8\x04\x35\x62\x0f\x59\x7f\xa2\xb6\x6f\xd9\x2a\x7f\xf0\x15\xd7\x4e\x75\x73\x0b\xdb\x16\xb6\xc0\x0a\x4d\x24\xd7\x65\x24\x2f\x83\x09\x4a\x53\x0f\x2b\x79\xb4\x43\x8b\xc7\xeb\xc0\xbb\xe6\x60\x9d\x94\x7a\xe6\x82\xa7\x51\x88\xb4\x3f\x30\x30\xdb\x33\x6c\x60\xdb\x88\x36\xae\x88\x2d\x3d\x7a\x98\xfc\xc9\xc2\x6e\x39\x9e\xa1\x39\xfd\x09\xb4\xd3\x9b\xd1\xbe\xdd\x00\x6d\xab\x84\xf6\xdd\xcd\x68\x5f\xfe\x04\xda\xf7\x37\xa3\x7d\xf5\x13\x68\x3f\xdc\x8c\xf6\xc1\x06\x68\xef\x95\xd0\xce\x6e\x46\xfb\xe8\x27\x5a\x9b\xa2\xb5\x91\xfc\x39\xbc\xff\x6b\xdb\xfb\x87\xeb\xfa\x2d\xba\x8b\xd7\x55\xf5\xb5\x54\x55\xf3\x4f\xf4\x19\xcf\x51\xc7\x76\xba\x7f\xf4\xff\xe8\x63\xd4\xf6\xfd\x36\x92\x97\xb8\xdd\x5c\x6e\xc6\xfd\x52\x33\x3e\x93\xa8\xe3\x75\xdb\xae\xef\xa0\xa8\xd3\xea\xda\x28\xea\xec\x76\xe7\x73\xcb\x75\x65\xe2\xb9\xd5\x0d\x79\xf3\x13\x64\xfa\x8d\xec\xd6\x05\x42\x67\x77\x1d\xe6\x2f\x3f\xd1\x9b\x63\x19\xb2\xcb\xf1\xd6\xe1\x7d\xfc\x13\x78\xfb\x37\x0f\xfe\xf1\x06\x68\x77\x97\x9a\xeb\xc2\x46\xc8\x9f\xfd\x44\x9b\x9f\xde\x8c\xf6\xc5\x4f\xa0\x7d\x79\x33\xda\x27\x3f\x81\xf6\xf4\x66\xb4\xdf\x7f\xa2\x87\x5f\xdc\x8c\xf6\xdd\x06\x68\xcb\xd3\xe5\x85\x29\xc0\x09\xcc\x62\xfb\xb8\x76\x9e\x3c\x2c\xd5\x72\x7e\xd3\x3c\x29\xe0\x2a\xa0\x7a\x7a\x53\x83\x4b\x8d\x7d\x7d\x73\x1f\xbc\xbf\x25\xca\xe4\x66\x94\xdf\x78\x41\xd4\x16\xf2\x43\xae\x96\x01\x0e\x2d\x63\x09\xfd\x50\x0d\x9b\xaa\x3a\x4a\xc0\x77\xd6\x02\xdf\xf5\x5a\xf3\xb9\xd7\x2a\x95\xf9\x6d\xa9\x8c\x67\xbf\xa7\xa9\x82\xfb\xab\xd8\x96\xca\xa4\xc6\xb0\x6b\x94\xf9\x54\x5d\x4f\x51\xf3\x50\x2a\xf3\x7b\xb1\x4c\x8a\xc2\xb6\x5c\xd7\x35\x22\x97\xbc\x5e\x81\x59\xab\x42\x4b\x8d\x7f\xbe\xaa\x21\xa9\x12\xa5\x04\xfe\xb1\x1a\xfc\xd4\x68\xb2\x09\xfe\x99\x9b\x6e\xcf\x5a\xeb\xa9\x47\x5b\x46\xff\x68\xff\xe2\x73\xc3\x2b\x92\x95\xf1\x1f\x17\x7a\xd2\xf1\x54\x5f\x9a\x95\x70\xb6\xae\x12\x7e\x48\xee\xcd\xe7\xaa\xaa\xef\x02\x85\xff\x9d\xea\x43\x32\xc3\x93\x92\x95\xdc\xd8\x25\x52\x38\xe3\xe8\x7b\x79\x24\x6d\x74\x8f\x10\x22\xef\xb2\xca\xca\x4d\x8a\x58\x79\x33\x27\xc1\x0c\x9f\xcb\xa5\xef\x7c\x76\xe3\x77\xc6\x4b\x65\x4a\x3a\xec\xbb\x9e\xeb\x96\xca\x04\x4b\x65\x50\xfa\x6d\xf8\xc6\xb2\xc9\xcd\xf5\xd1\x7b\xc0\xe1\x9e\x99\x44\x8b\x15\x72\x3f\x2e\x8d\x86\x6a\x00\xcb\xc6\x84\x2d\x8d\xc9\x52\xbb\x96\xea\x98\x96\xc7\xbb\xac\xae\xdd\xd2\x4a\x85\x43\xb5\x8d\x40\xbc\x4e\x1c\x0f\x2c\xdb\xc2\xd8\x3e\xe3\x88\x37\xef\xbb\x73\x17\x2c\xd7\x82\x96\x7a\x70\xf7\xbe\xbe\x35\xdc\x90\xaa\x3f\x3f\xd3\x41\x94\x7a\xab\xbf\x12\xbc\x9a\xd3\x0c\x6f\x82\xaf\x66\x36\x83\xa5\x62\x9e\x9d\xf0\x94\x74\xa6\xbc\x92\xd9\x4c\x56\x56\xb5\x96\xdf\x8c\x8b\xc5\x52\x2c\x65\x7e\x73\xb9\x1a\xf9\x0a\x96\x73\xb1\xa6\x39\xd5\x5c\xe7\x7c\x65\x89\x55\x8c\x67\x56\xa6\x11\xad\xdf\x5b\xc3\x7b\xce\x96\x6a\xf9\x4c\xcd\x8e\xad\x9a\x93\x57\x37\xd5\x63\xb2\x9f\x48\x60\xf1\x23\xbe\xcc\x7e\x8e\xca\xec\xe7\x4a\xb3\x9f\xa8\x3c\xb6\x8a\xfd\xc8\x3b\xb3\xbe\x72\xc3\xae\x97\x38\x90\x86\x34\x36\x97\xcb\xdd\xca\x6f\xfa\xe0\xd3\x95\x43\xb1\x96\x97\xbc\xad\xe2\x43\x57\x19\x1f\xba\xa9\xf8\xcb\x8d\x6a\x5d\xe2\x14\xaf\x96\xb9\x51\x79\x7c\x96\x19\x52\x79\x94\xaa\x1a\xb8\x54\xd3\x03\x96\x59\xb4\x58\xb6\x5b\x9c\x21\x8f\x8c\x77\x77\x8d\xe7\x5f\x59\x21\xde\x69\xbe\xeb\x61\x65\x6f\x2f\x25\x0a\xda\x54\x0a\x82\xc6\x26\x86\x95\xb4\x0b\x4a\x67\x65\x40\x3c\x2e\x50\xc1\x52\xd8\x59\x9b\xfa\xb6\x69\xf1\x61\x6c\x38\x18\x2a\x44\xb5\x94\x51\x1e\xd3\xbc\xc9\x8f\x11\x86\x1e\x99\xa6\xc6\x44\x30\x24\x53\xed\xc1\x3f\x20\x23\x64\x35\xee\xbe\xb0\x30\x4c\xc4\xa5\x7f\xf7\xd4\xc2\x30\x16\x97\x77\x9f\xf9\x77\x5f\x5a\x18\x2e\xd5\xcd\xf6\xdd\x89\x85\xe1\x42\xde\x04\xdb\x77\xfb\x16\x86\x73\x79\x73\xae\x6e\x66\xf2\xe6\xa1\x85\xe1\x4c\x5e\x7d\xb2\x30\x5c\x91\x4e\x27\x00\x0f\x3c\xba\xdb\x85\x4e\x00\x7b\xb0\x97\x5e\x79\x7b\xe0\xe9\xeb\x5d\x17\x76\xe9\xbd\x2e\x74\x62\xf0\xe0\x7e\x7a\xb5\x07\xbb\x74\x4f\x3d\xdb\x83\x7f\xa4\x97\xbb\x2e\x78\xbf\xca\xeb\x10\x3c\xd8\xbd\x9f\x5e\xee\x82\xe7\xea\xc7\xf7\xa1\xe5\xe9\xe7\x5e\x0b\xee\xed\xb6\xe4\x4d\x04\x1e\x48\x65\xb5\xbc\x6e\x81\xf7\x4b\x4b\x95\x60\xa2\x4e\xa9\xd2\xef\x42\x87\x83\x07\xad\xbd\x7f\xb4\xe8\x7d\x79\xb3\x0b\xbf\xfc\xf2\xcb\x7d\x79\x43\x45\x7d\xde\xde\xae\xb8\x33\x2c\x26\x8f\x50\x92\x29\xc4\x03\x94\xe0\x83\xa4\x3d\xf0\x63\x75\x31\xf1\x43\x75\x31\xf6\x23\x75\x71\xe9\x73\x75\xc1\xd4\xcf\x85\x7f\xee\x53\x75\x39\xf3\xcf\x30\x32\x2d\xe5\xae\x51\x6a\xfa\x94\xb9\x78\xab\x64\xf9\x9e\x8b\x21\x8f\x6e\xac\xa3\xff\xe6\xa1\x92\x32\x27\x8a\xc8\x61\xb8\xc9\x21\xd0\x56\xc6\x6f\x69\x23\xc0\xa8\x52\x75\xdd\x69\x75\x17\x18\x37\x58\x78\x31\xe4\xe8\x0a\xe2\xdc\x0a\x99\x10\x72\x95\x47\x16\x28\xc4\x61\x62\xcd\xb4\x3f\x20\xca\xae\x38\x06\x4e\x28\xf6\x03\x01\x8c\x02\x72\xd5\x89\x9b\x57\x9d\xc0\xf1\xba\x9d\x56\xf7\xe0\xaa\x13\x88\xdf\x66\xdc\x0e\x1c\xcf\x0f\xba\xb8\xe3\xa9\x10\xa9\x6e\x17\xfb\xc8\x30\xa3\x2e\x54\x03\x91\x40\xeb\x09\xcc\x32\x4d\x9c\x54\xa7\xa3\x30\xf7\x45\xd5\x17\xd3\x35\x2e\x8d\xd9\x94\xe9\x29\x8f\xc6\xe9\x6d\xcc\x05\x87\xa8\xe0\x7f\xf8\x98\x61\xec\x0f\x91\x72\x42\xfc\xc2\x24\xb6\xea\x18\x0b\x1c\x18\x19\x22\x0c\x46\xd8\x31\x33\x02\x50\x4c\xc2\x83\x2c\xa4\x50\x2c\x47\x57\xc7\x28\x91\x1d\x89\x38\xb9\x46\x54\xcc\x67\x8c\xdb\xda\x1b\x32\x92\xc1\xe6\xfc\x4e\x17\x62\xf1\x2c\x8b\x13\xc0\x75\x33\x96\xe3\x04\x18\x16\x3e\x8a\x90\xda\x47\xfe\x48\x06\x64\x99\x96\x1c\xec\xb3\x85\x71\x98\x8b\x64\x54\x36\x42\x1a\x80\x17\x0c\xbe\x31\x6e\x0f\xd1\x67\xe9\xd2\x8c\xfd\xa9\xc0\xb5\xd2\x5d\x77\x0a\x95\xcc\x49\x34\xc0\xd0\x69\x30\xc3\xbf\x3f\xb5\x1e\x3c\x66\xe8\x2b\x85\x2f\x14\x8e\x29\xbc\xa7\xf0\x81\xc2\x6f\x14\x7e\xa7\xf0\x9c\xc2\x24\xcf\xc3\xd4\xc9\x46\xb7\x45\x77\x41\x9e\x71\x94\x9e\xb4\x70\xb7\x68\x8f\xba\x6c\x4a\x29\x83\x3c\x05\x5c\x26\x40\x93\xce\x45\xe2\x46\x06\x7e\xe4\xe2\x49\xa8\x7c\xd8\xc2\xb8\x9f\x48\x87\x9a\x7e\x30\x4b\x20\x20\xb4\x91\x0c\x63\x26\x04\xe6\x44\x26\x33\x1a\x0b\x01\x2a\x81\x91\x7e\xf1\x52\xdd\x4f\xc9\x11\x47\xa1\xe0\xc1\xd7\xf2\xb7\x2f\xee\x63\x0c\x43\x71\x1f\x63\x18\x88\xfb\x40\xb0\xe0\x6b\xf9\x3b\x16\xf7\x89\x60\xbd\xd7\xf2\xf7\x42\xdc\x8f\x04\xc3\xbd\x96\xbf\x33\xf2\x23\xa8\x72\xe9\x0b\x3a\xb9\xfc\xde\x5d\xc0\x83\x2a\x98\xb8\x08\x73\x5e\x05\x33\xea\x98\x3b\xd0\xee\x02\x1e\x56\x41\x25\x65\xa8\x9e\xaf\xa2\x12\xfb\xdf\x38\x50\xf1\x67\xe0\xff\xce\xe1\xc2\x0f\x18\xfc\xe6\x8f\x18\x3c\xf5\x3f\x70\x78\xe6\xdf\xe1\xf0\xc5\xff\x8d\xc3\x0b\xff\x13\x87\xb1\xff\x9a\xc3\x4b\xff\x39\x87\x49\x55\x1d\x61\xc7\x2e\xec\xe7\x0f\x89\xd7\x12\x55\x7d\xab\x02\xf6\xec\xff\xfc\xcf\xc2\xde\xb9\xb9\x8b\x17\xf0\xda\xff\xca\x20\xf1\xdf\x30\x38\xf5\x3f\x72\x98\xfa\x9f\x39\xbc\xf3\x29\x83\xf7\x3e\x63\x70\xe5\x47\x0c\x3e\xf8\x21\x83\x6b\xd5\xfa\x8f\xea\x67\xe6\xc7\x0c\x3e\xf9\x09\x83\xcf\xfe\x94\x81\x75\xd7\xf2\x1f\xb1\x05\x9c\xad\xef\x79\x2d\xab\xdc\xd0\xf9\x06\xd8\xba\xfe\xcf\x25\xf2\x1b\x86\xa0\x00\x98\x8d\x42\x8f\x01\x15\x7f\x06\xfe\x98\xc1\x85\xff\x56\x8c\xc2\x2b\x31\x0a\x7d\x06\xcf\xfc\x21\x83\x2f\xfe\x80\xc1\x0b\x7f\xc2\x60\xec\x5f\x32\x78\xe9\x5f\xb0\x1b\x46\x21\xdf\xeb\x6c\x38\x10\x79\xcb\x96\xc6\xe2\x9c\xc1\xd4\x9f\x31\x78\xe7\x9f\x89\xb1\x38\x12\x63\x71\x2d\xc6\xe2\x64\x79\x2c\x4e\xc5\x58\xbc\x14\x63\xf1\x20\x1f\x8b\xab\xe2\x58\x98\x0a\xab\xc1\x7a\x7d\xd5\x15\x99\xc8\xbc\x63\x52\x5b\x55\x38\xcc\xa9\x52\xda\x15\x86\xd2\xac\xa5\x7f\x53\x2d\xc3\xdb\xd4\x72\xbe\xa2\x96\x8b\xf5\xb5\x8c\xc9\xf9\x6d\x6a\x79\xb8\xa2\x96\xf1\x4d\xb5\x5c\xde\xa6\x96\x9e\x59\x8b\x19\x7f\xfa\x24\xb3\xe9\x5e\x40\xdf\x7f\x2c\xf8\xc4\x63\xc1\x27\xde\x09\x3e\xf1\x88\xc3\x6f\xfe\x03\x0e\x4f\xfd\x67\x82\x4f\x3c\x13\x7c\xe2\x58\xf0\x89\xef\x82\x4f\x7c\x11\x7c\xe2\x45\x91\x4f\x98\x5f\x30\x5d\xff\x05\x13\xd2\xbb\xcd\x17\x7c\xf3\xdf\x70\x78\xed\x3f\xe5\x90\xf8\xef\x39\x9c\xfa\x4f\x04\xeb\x38\x15\xac\xe3\x2d\x87\xf7\xfe\x4b\x0e\x57\xfe\x09\x87\x0f\xfe\x2b\x0e\x45\xf7\xb9\xd2\xe7\x32\xf9\x64\x01\x1f\x57\xa5\xec\x3f\x91\x8b\x3c\x97\x41\xfb\x66\xa2\x13\x3e\x89\x4e\xf8\xec\x7f\xe5\x92\xd4\x1f\xf2\x85\x29\x70\x9a\xeb\x79\x86\x50\x77\x42\x1a\xd0\xbe\xd3\x85\x84\xc8\x00\x7e\x2e\x4c\x33\xf7\xcf\x2c\xdf\x4c\x61\x4b\x31\x9f\x9b\x36\xec\x36\x93\x39\x02\x92\x83\xe9\x3e\xde\xfd\x45\x79\xa5\xe7\x2e\xa2\x32\x20\x54\x90\x79\xcf\xcb\x7e\x1e\x41\x82\x75\x72\x1a\x14\x92\x4b\xde\x89\xd2\x42\x0f\x38\xb2\xed\x04\x77\x71\xbb\xf4\xc4\x0f\x49\x1a\x07\x52\x86\xc4\xb6\x5c\x0b\x50\x2c\xf3\x53\xab\xbc\x2d\x31\x62\x42\xe6\x81\x40\xa7\xd2\x83\x91\xf4\xc7\xcf\xc4\xd2\xaa\x16\x04\x79\x5e\x11\x53\x8a\xbe\xb1\xbb\xc8\x90\x23\xef\x1f\xae\xab\xf3\xdf\x7b\x32\x00\xe1\x09\x8a\x81\x02\x93\xe9\x65\x5c\xbc\x93\x67\x43\x36\x24\x29\xe9\xf6\xfc\xda\x0a\xa3\xed\x18\x97\xe5\xcc\xb8\xf1\x5a\xe2\xb1\x92\xea\xf7\x1e\xdd\xad\xc7\x8d\xc4\x46\xd6\x0b\x09\xd0\x8e\x1b\x2f\x7c\x17\xeb\x94\xfa\x3b\xc8\xfa\xac\x0a\xd6\x6a\x28\x6e\x7c\x26\x42\xea\x9f\xc8\x27\xf2\xc1\x53\x12\x37\x9e\xde\xf5\x5a\xb6\xd7\xaa\xc7\x8d\x09\x86\xcc\xa9\x34\x6e\x8c\x25\xc4\x98\x58\xdf\x34\xe6\x6f\xbe\x28\xfe\x5e\x21\x14\x1b\x8a\xb8\xf1\xfe\xc0\x9b\xcf\xe3\xc6\xfb\xc3\xbd\xdd\xc2\x27\x59\x57\x12\x6a\x3e\x47\x71\xe3\x8a\x78\x18\xd2\x76\x48\x81\x3e\x22\x7d\x8e\x86\x1c\xc5\x8d\x99\x14\xb3\x70\x41\x9f\x21\x44\xd7\xc3\x74\x4f\x1e\xb6\x69\xba\x1b\x8f\xb0\x2f\x26\x9d\x78\x9b\xf0\xd4\x99\x01\x45\xf0\x4b\x5d\x34\x42\x9a\x63\xc6\x8d\x19\x89\x96\x76\xec\x20\x3e\x21\x2a\x2e\x21\x10\x37\xfa\xd9\xb3\xd4\x42\x49\xb4\xd3\xbe\x8f\xef\xfe\x22\xb7\x10\x28\x22\xbd\x8a\x26\x56\xb4\xef\x19\xcd\xda\xf7\x8c\xaa\xf6\xbd\xa7\xeb\xdb\x57\xd5\xb8\xa5\x96\x2d\x35\x4b\x46\x01\x43\xd6\x87\xb4\x5f\xad\x77\xd9\xb8\x16\xfb\xda\x9a\xea\xe1\x9a\xde\xfd\xc5\x4f\xe1\xdb\x9e\x18\xba\x90\xe8\x51\x28\xf5\xbf\xd9\xfd\x7e\x6f\xf9\x9d\xfa\xee\x58\x1e\x2c\x8a\x16\x6a\xac\x59\xeb\xec\x5f\xea\x71\xe3\x83\x83\x42\x7b\x0f\xdf\xfd\xc5\x17\x8f\xc5\x93\x77\xe2\x89\x6c\x7d\x3a\xe5\x32\x2a\x88\x1b\x4f\x6d\x12\x37\x3e\x37\x3d\xd7\x9d\x0b\xa4\x2f\xe5\xad\x54\x00\xf5\x85\x2c\x2b\xdb\x11\x9b\x73\xf0\xc4\x70\xe3\xd1\x71\x3c\x24\x97\x92\xb1\x3b\xb4\x0f\xd4\x28\x9b\x62\xfb\xc1\x41\xa2\xa2\x87\x46\x87\x64\x94\x52\xa7\xe3\x89\x99\x21\x39\x92\xcc\x91\x64\x30\xa5\xc0\xb6\xb1\x0a\xd4\xa6\x5f\xa4\x0f\x61\x07\xc5\xe4\xaa\x13\x6e\x87\xd1\xf6\x25\x6f\x17\xde\xf9\x61\x57\x06\x86\x25\x71\xba\x40\xe5\x81\xdf\x1d\x4f\x05\x6e\x13\x08\xc5\xc4\x37\xaa\x8a\x44\x55\x19\x94\x9e\x37\xfa\x62\xd6\xb8\x26\x47\x88\xc1\x0c\xc3\xac\xf1\x91\x1c\xa1\x48\x5d\xf6\xc8\x11\xe2\xe2\xf2\x2c\x05\x38\x13\x97\x0a\x40\x5e\x2a\x80\x33\x0c\xda\x37\x7b\x79\x73\x72\x94\xa6\xba\x9a\x19\xc6\x46\xeb\x5c\xbe\x17\xc0\x17\x30\x09\x58\x42\x2b\x90\x5d\xa7\xc8\x76\xbc\xdb\x60\x9b\xf2\xde\x93\x9b\x9a\x77\x76\x4b\x84\xaf\x6e\x6a\xa1\x7b\x0b\x84\x8b\x05\xfa\xa1\xb7\x70\xbe\x75\xf7\x1a\xb6\xef\x7e\xb4\x40\x3c\xf1\xad\xbb\xce\xb8\x79\xd7\xe9\x37\xef\x7e\xb2\x80\xab\xf7\xce\x33\xff\xee\x4b\xff\xee\xe9\xf6\xdd\x89\x05\xe9\xde\xce\xef\x58\x0f\x5e\x5a\x60\xbd\x7a\x69\x75\x41\xec\xf1\xfc\x8e\x75\x3a\x8d\xfa\xc1\xcc\x02\xeb\x65\x9c\x5e\xbc\x9d\xd2\x44\x5d\x7d\xa0\xfd\x48\x5f\xbf\x1d\x4e\x59\x7a\xf9\x84\x85\xea\xe2\x34\xe0\x53\x26\x2e\xbb\x90\x6d\x14\x15\x4a\x85\x4f\x21\x53\x88\x14\x0a\x55\x5a\x15\xb5\xba\xa0\x36\x94\x7e\xc7\x7a\x1e\x44\xd3\x80\x49\xe4\xf4\x9c\xa5\x97\x2f\x03\xd6\x1b\x5a\x60\x3d\x98\xb0\x70\x24\xef\xc5\xd3\xe7\xd3\x88\xca\x9f\x91\xb8\x7b\x30\xbd\x98\x26\x5c\x20\xa4\x13\x4e\xa5\xde\x08\xac\x93\x1e\x8f\xd5\xd5\x71\x7c\xa9\x1f\x3e\xa6\x3d\x75\x99\x36\xf6\xa5\x51\xb7\xaa\x57\x55\xa9\x2a\x34\xab\x53\xb5\xa9\xca\x54\x4d\xaa\x0e\x85\x5f\xa1\x96\x4e\xf9\x13\x4e\x06\x5c\xbb\xe5\x0f\x78\x43\x52\x28\x8c\xe5\xd3\x8c\xbe\x40\xdd\x48\xda\x90\x46\x6c\x2f\x58\xb5\x5f\x91\x5e\x05\x7e\xc2\x42\xd4\xf0\x53\x31\xce\x3d\x36\xb0\x0d\x2d\x78\xab\x98\x47\x26\xda\x61\xe5\x26\xfb\xd1\x9b\x0c\x48\x73\xcf\x15\x78\xc2\xc8\x0b\x06\xdf\x19\x41\x2f\xd8\x4d\xc6\xb2\xe9\x39\xcc\xda\xef\xfe\x5b\x1d\x0f\xf2\xad\xa0\x34\xec\x7d\xc7\xc8\x77\x06\x0f\x19\x41\xdf\x6f\x6a\xab\x3e\x01\xda\xa0\xa5\x7f\x83\x73\x81\x79\x48\x25\x5b\xfa\x94\x91\x87\x2c\x97\xa8\xdf\x57\xeb\x9d\xa6\x1c\x9e\x30\xf8\x4c\x21\xe1\xf0\x8e\xc1\x53\x96\xea\x9d\xc6\x86\xde\x29\xb3\xe3\xcc\xf4\x4e\xa5\x27\x4b\x7a\xa7\xcc\x1a\x82\x2d\x27\xa2\x92\x19\x0e\x3d\x48\xc8\x2b\x18\x15\x42\xbd\x4d\x57\x04\x80\x08\xfd\x04\xa9\x03\x90\xc6\x9e\x8f\x38\x41\x91\x8c\xd9\x8e\xeb\x0c\x46\xed\xea\x04\xb0\x32\x8a\xa2\x69\xad\xd8\x5b\x11\x10\x2a\x0d\xb6\xbc\xb5\x4a\x27\x8a\x3a\x0c\xa2\x2e\xe1\x90\x10\x2a\x13\x0c\xc1\x14\xfb\x9d\x04\xb9\x18\x12\xe4\xe1\xee\x22\xd7\xca\x96\x35\xad\xe1\x3a\x5f\xfe\x18\x82\x2e\x09\x81\x92\x08\xc5\xc4\x8e\x65\x54\x1e\x14\x10\x3b\x90\x31\xc2\xe4\x99\x9c\xeb\x7b\x4d\x39\xf2\xb2\x4a\x51\x40\x2a\x1f\x37\x8f\xc4\x36\x92\x21\xdc\xa6\x32\xbb\xd2\xb4\x90\x0a\x7d\xd3\x5c\x53\xb2\x74\x22\x4a\x2b\x97\xda\x1e\x3a\xc1\xfa\x46\x05\x9f\xeb\xa1\x53\xf1\xe4\x56\x21\xb5\x43\x85\x37\x34\x52\x37\xe5\x7d\x15\xc9\x5e\x09\x91\xec\x92\x10\x55\xf7\x87\x21\x75\x7d\x60\x37\xa7\x5a\x2b\xa6\x96\x2f\xde\xde\x3e\xb7\xda\x9d\x8c\xa6\xc9\x6b\x24\x08\x1c\xbd\xda\x20\x98\xa3\x6c\xe7\x1d\xc9\x17\x21\x5e\x1b\x79\xf3\x37\x66\x86\x60\xfd\xc6\x7e\x22\x06\xab\xac\xec\x37\x56\x15\x84\x75\x7d\xdd\x9f\x98\x19\x68\x54\xd6\xbd\x59\x65\x9f\xd8\xba\x50\xa3\xeb\x2b\xfd\x9d\x99\xa1\x31\x6f\x51\xe9\xef\x6c\x5d\x70\xcc\xf5\x95\xbe\x36\xd8\xe1\xef\xec\x56\xa1\x31\x9f\xe7\xed\xed\x74\x81\x9b\xa9\xf4\x98\xce\xbf\x6f\xc4\x72\xc9\xa2\xc0\x20\x54\x4c\x26\xc8\xc0\xc3\x8e\x87\x9b\x59\x82\x44\xb1\x0d\xcb\xe3\xe0\x97\xf9\x09\x5f\x1f\x64\x26\x8b\x13\xbf\x45\x97\x82\xcc\xf0\x15\x41\x66\x68\x39\xc8\x0c\x35\x83\xcc\xb0\x05\xb0\x9f\x60\x1b\x66\xc4\xfc\x92\x27\xbe\xb1\x62\x49\x43\x73\xc1\x50\xc9\x21\x47\x51\xb1\x0f\x64\x94\xfe\x8a\xa8\x32\xf9\x34\x37\x0e\xaa\x7e\xa4\xa6\x82\xdc\xf6\x16\x90\x62\xcc\x03\x0e\x05\xa2\xa3\xa3\x26\x57\x38\x57\x10\xd3\x73\x86\xf2\xd5\x8e\x1a\xa4\xc3\x2a\x49\xe7\xa3\x3e\xbb\xcf\xf2\x44\xc9\x33\x2d\x0a\x94\x9c\xa8\x78\x48\xea\x54\xdf\x85\x88\xe4\x07\x49\x10\xaa\x00\x8e\x85\xb8\x31\x32\x78\x7d\x84\x65\xc6\x68\x95\x4d\x9a\x22\x79\x2e\xd6\xb1\x6d\x56\x91\x96\x32\xdb\x38\x54\x2d\x7b\x91\xe3\x99\xfe\xf4\xb4\x4e\x22\x23\x08\x75\xdc\xe1\x5d\x44\x8b\xb1\xef\x3f\x57\x2c\xcf\x10\x40\x42\x5c\x18\x91\xc6\x1e\x4c\x89\x07\x3d\xe2\x41\x9f\xbc\x82\x61\x61\xad\x1e\xac\xc8\xe4\x10\xf8\x88\x92\xc6\x9e\x8d\xc4\x7d\x8c\x28\xc6\x0e\xc7\x75\xd4\xab\xd3\x83\x5e\x9d\xb7\x23\x3f\xc4\xd0\x47\xc3\x15\xcb\xb6\x0c\x28\x6f\xf2\xda\xc9\xfa\x65\x1b\xc2\xf5\x0b\x37\x84\x62\xe9\xee\x13\x39\x62\xe9\x03\x0c\x03\xec\x77\xfa\x62\x05\xef\x8b\x79\x0d\xfd\xc2\x3a\x3e\x58\x9a\x77\xc1\xba\x75\x3c\x81\x11\x4c\xbb\x24\x00\x4a\x62\x94\x10\x3b\x11\xcb\x56\x8c\x46\xc4\x1e\xc9\x68\xf9\x68\x4a\xec\x29\x86\x28\x5b\xc3\x1a\x7b\xe9\x22\x16\x12\x2e\x65\x1a\xf5\x88\x39\x1c\x43\x8f\xf0\x03\xda\x76\x3c\xdf\x93\x6d\x54\xb8\x17\x30\xb8\xcd\xa2\x3f\x94\x8b\xfe\x40\x26\xe3\x1f\xfc\xc4\xec\xed\x13\x59\xba\x2f\x4a\xab\xd9\x3b\x11\x8b\xfe\xc0\x5c\xf4\x27\x62\xd1\x1f\xdc\x6e\xd1\x0f\x14\xde\xc0\x58\xf4\xf3\x8e\x8d\x65\x07\x06\x48\xf6\x5e\x80\x64\xd7\x05\xe8\xa7\xfa\xcd\xa0\x6e\x1a\x19\x0b\xf5\xe7\x5b\x2d\xd4\x34\xda\x60\x09\xe1\x91\xb9\x50\x7f\x2e\x2c\xd4\x0d\x0f\x6e\xb3\x56\xf3\xe8\xf6\x6b\x35\x8b\xcc\xb5\xfa\xf3\xe6\xcb\x26\x8b\x7e\x7e\xad\x8e\x22\x73\xad\xbe\x45\xa5\x51\xf4\xf3\x6b\x75\x21\xa0\x58\xb4\xc9\x5a\xfd\x30\x5d\x7a\x16\x50\x3e\x8b\xb0\xa6\x09\xdd\x4e\x38\x0b\x7b\xdc\xda\x62\x0d\x26\xb3\x5a\x34\xfa\x88\x83\x15\xb0\x9e\x05\x68\xb9\xfd\x0f\xc4\x1e\x35\x83\xa1\x41\x25\xd0\x0b\x03\x68\x14\x46\xb4\x12\xe8\x99\x01\x34\x09\xab\x61\xde\x95\x6a\x7b\x13\xf4\xc3\x60\x54\x09\x7a\xc7\x00\x65\x12\xec\xc1\xaa\xe6\xdd\x29\x35\x6f\x0d\xd6\x0f\x4b\x58\x5f\xac\xfa\x1e\x13\x74\x12\x87\x11\x5f\x83\xf6\xb7\x62\x0b\xbe\x3e\x8d\x59\xf8\x3d\x8e\xf8\x0a\x70\x4a\x4b\xf0\xef\x29\xe3\x61\x6f\x05\x34\x2f\x43\xaf\x69\x08\x33\x61\x55\x64\xdc\x4a\xb8\xb3\x65\xb8\xa4\x12\x70\xb6\x0c\xf8\x28\x64\xbd\x51\x75\x9f\x45\x15\xd0\x2c\x4e\xaa\x51\x87\xcb\xc0\x8f\xc3\x60\x1c\x47\xfd\x4a\xf0\x64\x19\xfc\xf4\xdb\x34\x60\xd5\x2d\x19\x56\x40\xf3\x80\x55\xc2\xf6\x97\x61\xdf\xb2\x30\x88\x2e\x56\x7c\xe5\x64\x19\xfe\xc3\xac\x1a\xf4\xdc\x04\xed\x4d\xd9\x25\x7d\x18\x24\x61\xf2\x68\x14\x27\xb4\xfa\x33\xdf\x56\x97\x38\x99\xd0\xa8\x12\xfe\x55\x35\x7c\x25\xec\xc9\x32\xec\x74\x3c\xf9\x58\x09\xfb\xa8\x12\xf6\x53\x25\xec\xd7\x0a\xd8\xa8\xbf\xa2\xf7\xbe\x2c\x01\x3f\x0a\x58\x3f\x8c\x82\xd1\x9a\x5e\x79\xb2\xb2\xd0\xca\x8e\x79\xb7\xb2\x48\x35\xfb\xaa\x00\xe7\xe3\xe9\x68\xf4\x26\x1e\xaf\x69\xd8\x87\x35\xc5\x56\x36\xed\xb7\x35\x85\x2a\x0b\xbc\x5f\x2a\x20\xd8\x56\xc0\xd6\x34\xec\xf7\x15\x45\xaa\xc7\xa4\x0c\xfb\x32\x8e\x62\x1e\x47\xb4\x9a\x36\x22\xbe\x0a\xbe\x9a\x3e\xc2\x25\xf8\xe3\x80\x4f\xd9\x8a\x91\x48\x96\xa0\x4f\x39\x9d\x54\x82\x4e\x2b\x41\x1f\x0c\x38\x5d\x31\xd3\x2b\xe1\x1f\xd2\x41\xbc\x82\x8d\xf4\xcc\x02\x09\x0f\x7a\x5f\x2b\xc1\x2e\x97\xc0\x94\x53\xc4\xd1\xf5\x24\x58\xc1\xce\x2e\x56\x14\x79\x1c\x5e\x52\x76\x11\x46\x17\xd5\xfc\x64\x45\xa9\xe3\x78\xc5\x2a\x36\x5c\x51\xe0\x34\x1c\x0d\xe3\x29\xe5\xbc\xba\xd8\x6c\x45\xb1\x0f\xe1\xc5\x2a\xae\x78\xb6\x5c\x84\xf5\x29\x7b\x30\x99\xd0\x80\x05\x51\xaf\xba\xd4\xd5\x8a\x52\x49\x8f\x46\xfd\x55\xbd\x70\x5d\x5d\xe8\x31\x5d\x5b\xea\xb4\xba\xd4\xb3\x28\x09\xfb\xf4\x64\xca\xab\xd9\x71\x75\xa1\x95\xfd\x3d\xa8\x86\x7f\xa3\x6c\x3c\x2b\x8b\xbc\x14\x45\xb6\xa4\x9c\xba\x9d\x46\x96\x7c\xf5\x0c\x42\xd2\xaa\x47\x32\xbd\xad\x47\x9d\xfb\xc5\x04\x6d\x32\xe9\xf2\xd9\xb5\xab\x92\x38\x9f\xcd\xf4\xc5\xb5\xa7\x9f\x78\x32\xea\x9f\xca\xbf\x7d\x46\xcc\x14\xdb\x09\x2a\x18\xd4\x06\x8b\xc0\xc8\x6a\x9d\x18\xd7\x3f\x64\x8b\xd8\xb4\xc7\x63\xe6\x07\x30\x8e\x2f\xe9\xdb\xb8\x14\x62\x5a\xe1\xb7\x89\xf5\xd2\x4a\x93\x43\xe7\xad\xba\xf6\xc4\xa6\xd9\xb6\x20\x7b\x95\xb5\x73\xe6\x11\x9b\xe3\x05\xf4\x04\xfb\x7a\x15\xf0\xa1\x6f\xf4\x8a\xb2\x42\xc9\x90\xd4\x6a\xa8\xf4\x71\xd7\x2e\x64\x68\x34\x62\xc8\x5a\xf2\xd9\xc2\x0b\x10\x52\xe0\xea\xc6\xbe\xc8\x1b\xbb\xdc\xc6\xb4\x69\xdf\xa6\x41\x9f\x05\x3c\xec\x3d\x12\x5c\xa2\x84\x4b\x1d\x84\x67\xf8\x5e\x5b\xf6\xb6\x4d\x25\x96\x6d\x9b\x9b\xd8\x04\x7e\xb6\x84\x3f\xc2\x0b\x38\xa7\xdf\x43\xca\x56\x21\x87\x10\x62\xa3\x82\x47\xcb\x15\x6c\xdb\x2c\xfd\x8d\xca\x15\x86\x4b\x15\xc6\x78\x01\x01\xeb\x2d\x57\x24\xab\xa1\xc4\x36\x03\xef\x86\xc4\x0e\x21\x26\x76\x9c\xe6\x0d\xd3\x88\x21\xc9\x46\x0f\x46\x84\x39\x14\xa6\x24\x74\x38\xf4\x48\xe0\x50\xe8\x93\xc4\xe1\x30\x24\xbd\x7a\xcf\xee\xd7\xfb\x5b\xe1\x00\xc5\x07\x2e\xe6\x43\x16\x5f\x49\x42\x3b\x62\x2c\x66\xc8\x8a\xe8\x45\xc0\xc3\x4b\xba\x2d\xa4\xef\x69\xe2\x6f\x5b\xb6\xca\x16\xaa\x94\x78\x59\x6d\xb8\x8a\xb4\x3c\xb2\x34\x58\x1c\x6f\xe9\x83\xfe\xe1\xa1\x98\x29\x38\x1c\xe4\x49\x08\xfa\xf5\x91\x33\xad\xf7\xb0\x7c\x53\xab\xa5\x81\x32\x07\x84\x39\x01\x4c\x48\xe8\x24\x30\x26\xa3\xfa\xc8\x9e\xd6\xa7\x70\x49\x06\xf5\x81\x3d\xa9\x4f\xe0\x82\xe4\xf9\x7d\xc6\x18\xce\x8d\xdb\x21\x86\x19\x89\x55\xdc\x74\x1e\x44\x08\xa5\xd9\x1d\x83\x5e\x9c\x20\x34\xb6\x87\xce\x25\x6e\xa2\x56\xfd\xa2\x7e\x8e\x31\x6e\xb6\x30\x9c\x91\x59\xf3\x1c\xae\xc8\xac\x79\xb1\x95\xb5\xeb\xcc\xf1\x74\x9b\x50\x81\x2c\xa9\x7d\x56\xef\xe9\x6f\xb4\xcf\xea\x7d\x8c\x73\xd2\x7e\x60\xd9\xb1\x7c\x25\xfe\xba\xe0\xca\xe1\x47\xfd\xfa\xe0\xb0\x57\x9f\xe0\x12\x19\x50\xfb\xaa\x3e\x5a\xea\x2d\xfb\xaa\x3e\x4d\x73\xda\x55\x4f\x87\x8a\x0e\x96\xb4\x53\xa6\x9c\xd4\x35\x25\xa7\x9d\x11\xd9\xd9\x51\xa9\xf6\xa7\x44\xa9\x60\x55\x2f\x89\x8e\x09\x30\xf4\x08\x4b\xb3\x26\x85\x91\xb8\xef\x13\x6a\x4f\x61\x48\xb8\xdd\x83\x01\xf1\xfe\x1c\xc1\x84\x8c\xda\x81\x93\xf8\x89\x13\xc8\x18\xa6\x1b\x52\x0f\xc3\x5b\x25\xd2\x69\x9b\xa4\xd3\x97\x9f\x33\xf4\x8d\xbc\x67\x29\x98\xd3\x57\x43\x30\x9f\x97\x5e\xcd\x3c\x67\xa8\x5e\xe1\xd2\xf0\xa4\xc8\xb0\x0c\x12\x3a\x39\x70\xc5\x5f\x32\xb9\x1b\xda\x21\x86\xc9\x61\xdc\x36\x47\x4a\x4d\x4f\x26\x47\xca\x03\xcb\x1e\xa8\x7e\xa5\xce\x54\xf7\xb0\x23\x06\x7a\x35\x64\x36\x24\xfd\xf2\x90\x0c\xb1\x3f\x59\xa2\x9e\x12\x22\x49\x1a\x93\x43\x12\xa9\xc2\x65\x9c\xd4\x66\xf9\xf0\x24\x78\x99\x4e\x8c\xd1\x4a\xb0\xd2\x5a\xd3\x1e\x5f\xc7\x05\x7f\x66\x09\xb0\xad\x61\xca\xca\x2e\x53\x56\x36\xb4\x6c\x87\xd9\xd6\x67\x6b\x01\xda\x54\xc4\xaf\xd8\x12\x4b\x1c\x0b\x15\xad\x68\x44\x12\x98\x56\x29\xea\xaa\x4c\x4c\x16\xd0\xcb\xdc\x6b\xa0\x9f\x5e\xf2\x20\x6a\xc1\x90\xe8\x0e\x81\x41\xa6\x82\xd6\xa9\x2d\xc7\x61\x04\x63\xa2\xbb\x04\x2e\x73\x96\xa0\xb9\xc5\xab\x67\x70\x4e\x2e\x9a\x2d\x98\x91\x56\xdd\x0c\xb2\x63\x9e\x65\x1f\x7a\x6d\xd7\xa7\x07\x8e\xd7\xbe\xf0\x73\xbe\x61\x7a\x80\x5d\x15\xc0\x89\xd7\x3e\xf7\xe9\x01\x71\xbc\xb6\x73\x9e\x96\x48\x94\x1e\x3f\x2b\x71\x54\x38\x2c\x0f\xa3\x88\xb2\x37\x72\x76\x14\x2c\x28\x0d\x90\x78\xca\x97\x41\x4e\x0a\x20\x09\x0f\x18\x7f\x20\x36\xc0\x86\x0b\x62\x01\x82\x46\xfd\xd2\xfb\xb7\xe6\xfb\x5a\x8d\x36\x26\x41\x19\xe4\x65\xd9\x81\x44\xf1\x63\xbd\x9a\x44\xe9\x6a\x12\xca\xd5\x24\x86\x21\x11\xfc\xbb\x57\x9f\xaa\x2c\xa4\xc3\xfa\xf0\xc0\xa3\x8e\xd7\xd2\xa7\x4e\x1d\x6a\xa3\x21\x41\xbd\x3a\xe2\x4e\x8c\x9d\x7e\x1d\x51\x27\xc4\xb8\x39\xc4\xf5\x11\x70\x7b\x58\x9f\x76\x0d\xa7\xc4\x62\xdd\xaa\xe6\x84\x50\x87\xc1\x88\x70\x27\x82\x29\x41\x41\x3b\xf6\x9d\x18\x37\x2f\x51\x52\x4f\xec\x51\x7d\x24\x3d\xee\xea\x23\xe8\x13\x67\x5a\x4f\x60\x48\xa8\xdd\x83\x09\xe1\x76\x1f\xc6\x84\xd9\x3d\xb8\x20\x91\xdd\x87\x73\x82\x86\xf6\x18\xcb\xc1\x47\x13\xfb\x42\x5c\x9d\x91\xb1\x33\x84\x2b\x72\xe1\x4c\xe0\x88\x9c\xd5\xcf\xec\xab\xfa\x15\x5c\x93\xd0\x89\xe1\x84\x0c\xeb\x17\xce\xb8\x3e\x81\x53\x82\xae\x0e\x5c\xa9\xde\xc5\xf5\x4b\x34\x40\x2e\x5c\xd7\xaf\xeb\x47\xce\x49\xfd\x04\x63\x78\x4b\xd0\x49\xfd\xca\x39\xab\x9f\xe2\xe6\x11\xbc\x24\xc8\x39\xa9\x9f\x39\x57\xea\xf6\x95\x7c\x69\xa7\x2f\x1f\xa8\x97\x76\xfa\xf2\x11\x79\xeb\x9c\xc3\x57\xf2\xd2\x99\xc1\x1b\xf2\xca\x39\x87\x2f\xe4\x81\x33\xd3\xfa\xcc\x47\xf5\x47\xf6\xd7\xfa\xd7\xc3\x37\xf5\x37\xf6\x97\xfa\x97\x5a\x0d\xbd\x25\xaf\xe0\x25\x79\x80\xe1\x47\xef\xda\x7f\x0b\xbd\x99\xff\x12\xae\x5d\xcf\x77\x7a\x30\x13\x3f\x7d\xb8\xf6\x3c\xff\x6d\x1d\x85\xcd\x6b\xc7\xc3\x30\xf3\x3c\xff\xa5\xbe\x5b\xc8\xd0\xc1\x0f\x4c\xfd\xa8\xd2\xa3\x1e\x01\x27\xd7\xc0\xc8\x14\xb9\x18\x22\x25\x94\x86\xe4\x04\x62\x72\x0a\x01\x79\x0b\x89\x7c\x64\x1e\xbd\xa4\xee\x8e\x30\x80\x23\x62\xeb\xb4\x7e\x62\xbe\x9b\x09\xcd\xae\x89\xcd\x57\xbc\x3a\x21\x61\xf5\x1b\xe7\x1c\x4e\x49\xbc\xf2\xdd\x5b\xd2\x43\xa7\xce\x09\x86\x07\xe4\xf4\xf0\x44\x50\x5c\x32\x9f\xa3\x84\x4c\xc9\x08\x61\x0c\xd7\x07\x47\x32\xa9\xd3\x35\x5c\x93\x23\x38\x22\x03\x0c\xd7\x87\x8a\x1a\xc3\x01\x7a\x7b\x38\x73\xd4\x4d\xd2\x50\x82\x32\xba\xae\x0f\xd1\x09\x86\xeb\xfa\x18\x89\x91\x4c\x1a\x01\xeb\x49\xcb\x9e\x6b\x38\x81\x53\xd8\x79\x80\xe1\x48\x21\xa8\xd5\x50\x56\xea\xa8\x3e\x44\xa7\x18\x8e\xea\x63\x74\x5a\x28\x75\x04\xa7\x70\x02\x0f\x30\xce\xd3\x31\x3d\x82\xaf\xf0\x86\x9c\xc0\x17\x72\x0a\x8f\xc9\x09\x1c\x93\x53\x78\x46\xde\xc2\x0b\xf2\x16\x9e\x90\xa0\xfa\x4b\x9b\x2d\xf8\x4e\x9e\x64\x15\x47\x6d\x3b\xaa\x06\xf4\x2f\xd1\x51\xfd\xc8\xbe\xae\x5f\x63\x0c\xef\xc8\x04\xf5\xd0\xb5\x73\x24\xca\xdb\xac\xba\x84\x4c\xd7\x02\x4f\xc9\x3b\xd1\x79\xdf\xd3\xce\x91\x2d\x7d\x4f\xae\xd0\xf7\xa6\xf8\xa8\x27\x18\xc3\x37\x79\x77\xad\xee\xf6\xd1\x33\x87\xb4\xea\xef\xb1\x82\x6f\xa3\xc7\x36\x79\x5f\x27\x0f\xda\x9e\xef\x78\x70\xec\x90\xf7\xd8\x47\xcf\x88\x0b\x8f\xc9\x31\x41\x27\xf6\xa9\x14\xaa\xd0\x0b\x51\xe8\x5b\x56\xe8\x8d\x4d\xbe\x65\x85\xbe\x38\xe4\x1b\xf6\xd1\x0b\xe2\xc2\x1b\xf2\x25\x2b\x24\x49\xf4\x03\x11\xe3\xf2\x06\xc3\x1d\x22\x1a\xf0\x06\xc3\x6f\x44\xf4\xf9\x31\x86\x4f\x44\x34\xf0\x58\x0a\xa3\xef\xcc\xd6\xff\x0e\xaf\x65\xa9\x2f\x18\x9e\xcb\x52\x5f\x30\x7c\x94\xa5\x1e\x63\xf8\x2c\x4b\x3d\x96\xa5\xde\x1e\x5c\xd4\x6a\xe8\x77\xf2\x12\x7d\x80\x3b\xf0\x11\x3e\xc3\x6b\x78\x0e\xbf\xc1\x27\x8c\xd3\xf9\x40\xc9\x07\xe7\x77\xe9\x85\x47\xc9\x1d\xe7\xf7\x8e\xd7\x05\x46\xc9\x6b\xf5\x2c\xa2\xe4\xb9\x7a\x16\x52\xe2\x35\xc7\xe8\x0c\x21\x4a\xeb\x8c\xda\x9c\xd6\x23\x8a\x9b\xe8\x52\xdc\x53\x79\xcf\xa9\xe0\x17\x4c\xbe\x8e\xe4\x6b\x25\x6e\xc6\x94\x5c\x22\x81\xae\x2e\xfe\xd8\x02\x5d\x5d\xfc\xc1\x5b\x0f\xc9\x04\xbd\x03\x74\xe4\xc4\x02\x55\x48\xa5\x5d\xf4\x53\xf5\xf0\x5a\x3f\xb4\x3d\x8c\x17\x8b\x17\x69\xbf\x3e\xd5\xfd\xfb\x88\xbc\x42\xe2\x7b\xc4\x77\x5d\xc3\x53\x78\x80\xe1\x2b\x79\x85\xd2\xcf\xd3\x8f\x32\x2a\x7e\xd4\xe8\x5d\xdb\x8f\x1a\xd7\xae\x07\x8f\x1a\xbd\x99\xfd\xa8\x31\x73\x3d\x0c\x4f\x0f\xde\xb5\x15\x45\x0b\x00\xf9\x0a\x9e\x42\x1f\xc9\xd7\x20\xe1\x31\xf4\xd1\x57\x79\xfb\x55\xdd\xee\x3c\xc0\x3e\xda\xa0\xd0\xa3\xc6\xcc\x93\xb7\x9e\x2a\x54\x98\x70\xe2\xb5\x6a\x86\x84\x51\x8d\xf3\xd2\xca\x7a\x33\xfb\xab\x7c\xf1\x55\xbc\xf8\x5a\xc6\x20\x9e\x8a\x57\xaa\x56\x0d\x99\x95\x2e\x36\x15\xcb\xc6\xa6\xbd\xf0\x01\xee\x14\x9b\xf1\x06\xbe\x48\x20\xbf\x08\x92\xb1\x81\x67\x69\x77\x3f\x34\xbb\x5d\xf4\xaf\xe8\xe7\x23\x70\x1e\xea\x7e\xd7\xe4\xa5\x9f\x25\x0d\xb5\xe1\x5d\xd5\xf1\x0f\x2b\x3a\xfe\xe1\xcf\x74\x7c\x45\xa1\x35\x1d\x7f\xf4\x13\x1d\x5f\xd1\xef\x0f\x37\xea\x77\xb3\xda\x63\x78\x0c\x0f\xc4\xa3\xb4\x5b\xc4\x14\x54\x9b\x9e\xac\xe7\x5d\x70\xe5\x9c\x4d\x1a\x99\x12\x02\x61\x98\x66\x89\x10\xd4\x52\x35\xb5\x2d\x6b\x3e\x97\x81\x31\xb3\x23\xf4\x1e\x8d\x38\x8b\xc3\x7e\x79\xb1\x63\x04\xad\x5a\xaf\xc4\xae\x7d\x05\xcf\x6c\xb6\x20\x22\xc8\x5e\xb1\x66\xd9\xdb\xf6\x8a\x15\x0b\x37\x5b\xce\x45\xb3\xa5\xd3\x85\x0c\x51\x84\xeb\x0c\xc6\xf2\xa7\xab\x4e\xc7\x33\x41\x70\xd3\xa4\x21\x79\x9e\xf1\xdc\x29\xbd\xcd\xfd\xa9\xcc\x73\x30\x90\xf9\x44\x06\xa6\xf4\xb8\xa9\xc9\x4c\x05\x5e\xda\xa6\x02\x2f\x95\x78\xb9\x34\x03\x88\x59\x45\x83\xd7\x67\x65\xb9\x09\x31\x13\x88\x27\x41\xff\x36\x58\xa3\x2c\x0b\xbe\xf8\xf5\x6f\xaa\x22\x12\x55\xe4\xe2\xf2\xa6\x46\x82\x37\xa1\x0d\x05\x5a\x2d\x63\x6f\x86\x34\xbe\x11\x69\x9c\x76\xc7\x2d\x90\x06\x37\x22\x0d\xd4\xe0\x45\x9c\x5e\x6f\x98\x48\x3a\x29\xf6\xb0\x34\x9d\x48\x16\x30\x58\xc0\xa3\x34\xcf\x4e\xa6\x84\x54\x66\x5f\xf0\xb5\x02\xb1\x15\x4b\x3b\x28\xa3\x55\xb5\x9a\xa5\xaa\xb0\xc2\x48\xb6\xb1\x90\xb4\xc7\xf0\xbf\x7b\x23\xb0\xa8\x2d\xa4\x6e\x38\x5d\xbc\x31\x55\x9f\x01\xa3\xc1\xa9\x18\x54\x73\xef\xa9\x4a\x08\x96\x42\xdc\x05\x08\x90\xa3\xa8\xbf\x02\xe0\x38\x38\x56\x5a\xc8\x15\x58\xe4\x81\xb2\x40\x23\x60\x4a\x68\x50\x8e\x67\x3e\x77\x33\x55\xa8\xb8\xaf\xd5\xbc\x4c\xd1\x21\x51\xe0\x5a\xad\xf0\x21\x05\x6e\x66\xb4\xc7\x73\xf2\x9b\x05\xc8\xa2\x25\xed\xa8\xce\xb7\x99\x29\x74\xcc\x5a\x64\x02\xc6\x6d\xd7\x37\x1b\xef\x19\xf8\xdb\xc5\x46\xa4\x6c\x57\xe0\xf5\x8b\x6f\x52\xee\x2b\xde\x18\xa9\x1a\xb7\xbd\x02\xe6\x56\x96\x85\x71\x25\xda\x45\xba\xf7\xff\xb2\x2a\x50\xc4\x9b\xe2\x90\x3f\x2e\x84\xca\x70\x8d\x7d\xe1\x71\xe1\x8d\xd7\x95\x62\xe2\xb3\x52\xe8\x05\xc5\xdf\xa7\x68\xc7\xdc\xc5\x7c\x49\x73\xeb\x98\xba\x79\xbd\xaf\x84\x29\xf4\xa0\x4f\x50\x40\xbe\xa2\x20\x4b\x40\x96\xda\x99\xc5\x2c\xd5\x76\x46\xb5\x1a\x8a\x49\x88\x7a\x72\x8f\x81\x21\x21\xee\x7e\x72\x40\xfa\xfb\xb6\x9d\xe0\x1d\x94\x1c\xf4\x6b\x35\x86\xa6\x24\xe8\x24\x5d\x48\x20\xc0\x58\x25\x8c\x45\x68\x48\x76\x86\xb8\x1d\x37\x32\x12\x43\xd8\x57\x77\x47\x51\x5f\xec\x57\x86\xb5\x5a\xdc\x90\xdd\x89\x6c\x8a\xa6\xb2\x34\xd8\x3c\xbd\x92\x4b\x5f\x0f\x67\x16\x4a\xf2\x8b\x7a\x4b\x8b\x5d\xe5\x92\x20\x66\x56\x9e\xca\xb7\xfd\xd8\x9f\x22\x8a\xa1\x92\xcb\x8b\xd5\x23\x37\x24\x6c\x1f\xfb\x53\xc4\x31\x04\x8d\xeb\xbf\x65\x45\xd2\x29\xfa\x2a\xe3\x72\xdf\x7a\x1d\x0a\xe4\x3a\x14\x34\xfa\x74\x10\x46\x74\xc3\x44\xe2\x6b\x96\xa0\x9d\x1d\x85\x94\xc9\xe4\x80\x53\x76\xb9\xf1\xda\x40\x53\x47\x5c\x4d\x1d\x11\x96\x88\x42\x95\x65\xf0\x16\x8c\x36\x63\xb3\x44\x8d\xb0\x2f\xb1\x11\xd5\xae\x68\x01\xc1\x02\x5e\x90\xb2\x0d\x91\xf2\xc3\x4e\x49\x5c\x51\x7c\x4a\x1f\x01\xf9\xb2\xb4\x5f\xef\xa1\xa9\x2a\xd2\x83\x3e\x0c\x61\x00\x13\x18\x13\x34\x25\x5f\xd1\x34\xa7\xfa\x4b\xb2\xe3\xc1\x85\x61\x1a\x2a\x95\xea\xe6\xad\x31\x27\x62\x99\xee\x3b\x40\x93\x74\x4e\xf4\x88\xbb\xdf\x3b\x20\xe3\x7d\xdb\xee\x29\x23\x61\xd4\x3b\x18\xd7\x6a\x21\x1a\x90\x69\xa7\xd7\x85\x1e\x4c\xe5\xbc\xb8\x14\x1b\xf1\x4b\xb2\x73\x89\xfb\xa4\x27\x85\xc8\x94\x87\x23\x2d\x20\xa7\x77\x6a\x07\x2d\x6a\x4c\xf2\x19\x53\x04\x81\x21\xe9\x39\xde\xfe\xf0\x90\xf4\xf7\x1d\x67\x88\x93\x74\x2a\x5d\x74\x86\x5d\x38\xef\x0c\xbb\x78\xab\x58\x36\x5d\x0d\x10\x5e\x5c\xd6\x6a\xe8\xa2\xd3\xeb\x12\x9b\xa2\x81\x6c\x1c\x9c\xcb\x5b\xae\x6f\x35\x32\xb1\xf7\x4e\x9f\xf9\xa2\x04\xb0\xb6\xcd\xf4\x03\x51\x06\xe3\x45\x38\x40\x93\x92\x4c\x3a\xc9\xa7\x69\x36\x0c\x7d\xc3\x8e\x01\x61\x4d\xc3\x28\xc4\x8a\xf2\x50\x80\x35\xe5\xa0\x18\xdf\x76\x76\xdb\xeb\xa6\xf7\x14\x19\x13\xdc\xf5\xc5\xbc\xac\x9c\x14\xac\xcd\x72\xbc\x4c\xb2\x02\x9b\x61\xe8\xfd\x4d\xbc\x20\xa5\xd8\x9e\x64\x09\xbd\xc6\xb5\xfb\xb7\x60\xcd\xd0\x79\x7f\xbf\xec\xd8\x93\x53\xb0\xf7\x37\x71\x2f\x96\x7d\x3f\x97\x48\xdd\xbf\x05\x6b\x86\x6e\xc3\xef\x67\xb7\xfb\x7e\x26\x70\x8b\x59\xf4\xd1\x25\xea\xe2\x93\x5b\x61\x62\xd9\x47\xb8\x71\x8d\x28\x6e\xcc\x64\xbc\xa3\x14\xd2\x5b\x0f\xc9\x32\xc8\x8f\xab\x21\xa3\x1c\xe7\xad\xd8\xfe\x1a\xf9\x5d\xb2\xfd\x9e\xe4\xd6\xbd\xdb\xb0\xfd\x20\x63\xfb\x9a\x01\xc6\x58\x22\x0a\x24\xa2\x9f\x61\xfb\x31\x51\x1c\xc3\x97\xd8\x88\x6a\x57\xbc\x80\xde\x02\x9e\x54\x87\x96\x4a\x2d\x8d\xf9\x21\x6d\x8b\xbf\x84\xb6\x5d\x5f\x4a\xb2\xdf\x2b\xb3\xd5\x2c\xe0\xdd\xb2\xc6\xf7\x3b\x70\xf2\x44\xd3\x63\xa4\x14\xbf\x62\x21\x99\x89\x75\x44\xdc\x55\x8a\x4b\x23\x25\x30\xc1\x70\x49\x64\x1a\x10\x17\x26\xc6\x62\x31\xc4\x30\x2e\xde\x5e\x92\x55\x3a\x4c\x7d\x36\x33\x0e\x23\x34\x83\x3c\xd9\xf5\x0c\x56\xe9\x88\x2f\x71\x76\xde\x2b\x0a\x65\x27\x83\x17\xb8\x39\x84\x55\x5b\x71\x38\x23\xe7\x75\x74\xa1\xf5\xf8\x72\x31\x53\xa2\xdc\x50\x4a\x72\xa8\x4f\xc6\x9d\x49\x27\xe9\x92\x44\x2e\x0b\xb9\x38\x27\x33\xd1\x0f\x6c\xd2\xcf\x57\xc0\x1d\xc2\xdb\x13\xe5\xa9\x62\xfa\x4b\x9a\xf9\x22\xc7\x1d\xda\x85\x71\x87\x75\xb3\xb4\x1d\x3b\x84\xd5\x6a\x15\xa5\xf2\xa1\x65\x28\x10\xa5\x82\x0e\x97\xa5\xa4\x1b\xc4\x94\x0c\xda\xe8\xc2\x19\xd6\xcf\x70\x73\xe0\x67\xed\x85\x4b\xd2\xc3\x23\x22\x1a\x0c\x3d\x72\x69\x23\xd9\xfe\x51\x17\x1f\xba\xed\x7e\x7d\xea\xbb\xd8\x3e\x03\xf1\x80\xfc\xe8\x07\x3c\xf0\x83\xce\xa8\x0b\x32\x83\xa9\x9f\xc0\x65\x30\x9a\x52\xbf\x0f\xf9\x96\xd8\xbf\x04\xbd\x91\xf5\x7b\xa0\xb7\x9f\xfe\xf9\x42\x9f\x45\x8c\xf3\x7c\xd7\xb2\xf4\xdf\x2a\x1c\x8a\x2e\x79\x2f\xb0\x6e\xac\xad\xa0\x9a\x78\xb5\x44\x28\x50\x6c\xca\xff\xc4\xde\x49\x17\x96\x92\xdf\x6d\x55\x03\xd1\x8d\x52\xaa\x10\xdc\x6e\xa9\x1a\xb8\x41\xdf\xa0\x85\xcb\xdb\xa9\x06\x6e\xd0\x37\x04\x92\xd7\x04\x0b\x78\x48\xde\xa3\x2f\xc6\xac\x7f\x6a\xec\xbe\x25\x7f\x34\x0e\x08\xdf\x8b\x77\xd9\x1d\x37\xf3\x5a\xd2\x2b\x51\x12\xf1\xdc\x8b\x8c\x67\x08\xc0\x08\x27\xfb\xcd\x0c\x06\x27\xdf\xe7\x36\xfc\xd2\xa4\x97\xd0\xc6\x35\xf4\xe9\x88\x72\xba\x2d\x2e\x69\x43\x19\x13\x10\xda\x98\xe5\xcf\x67\x40\x6f\xc1\xbe\x39\x12\x2d\xc7\x3e\x47\x38\x6d\xd4\x02\xe8\xe2\xe9\x86\x2a\x05\x59\xc0\x94\x57\xd7\x68\x17\x72\x58\x25\x6e\xae\x53\x32\x28\x58\x43\xac\xad\x54\x37\x94\x61\x53\xbc\x55\x3a\x02\x13\x54\xc9\xb0\x3c\x37\x13\x10\x52\x62\xdd\xc9\x8c\x0a\x28\xc6\xe9\x1e\xfd\x43\xc5\xfa\xfb\x0d\x09\x39\x55\x09\xa7\x0f\x31\x5e\xc0\x9d\xe5\x95\xe4\x85\x01\x01\xd9\x68\xca\xb8\x7e\x4a\x68\x90\x91\xfd\xd4\x12\x2f\x63\xfb\x29\x09\x42\x86\xf6\x53\x22\xc2\x8d\x23\x6f\xcc\x4e\xda\xb8\x76\x8d\x97\x2e\xe4\x67\xdc\xe2\x9d\x67\xbc\xf3\xd6\xd0\x8c\xa9\x76\xa5\x8d\x99\x81\x72\x26\x50\x9a\xda\x53\xda\x98\x19\x58\x67\x02\x6b\x36\x56\xa5\x79\x68\xf4\x9b\xf2\xb2\xcd\x8a\xa5\x3d\x91\x0d\xdd\xea\x82\x51\x45\x41\x5d\xe7\xb3\x2a\x65\xb1\x51\x36\x5c\x2e\xfb\x49\x57\x7a\x52\xa5\x10\x36\xca\xc6\x15\x65\xbd\xbf\x61\x76\xc1\x6f\x95\x42\x4c\x47\x39\xd6\xe7\xd6\x2d\xd4\xd1\x06\x1a\xcd\x96\x20\x51\x83\x60\xbb\x86\x86\xe8\x53\xd1\x00\x22\x9e\xb2\x9e\xc1\x98\x7e\x2f\xbc\xe5\x01\xbb\xa0\x06\xcf\x79\x9d\xf3\x9c\x4f\xc0\xc8\xef\x10\x91\xc7\x10\x92\xe3\x0a\x05\x51\x9e\xaa\xf9\x51\xa3\x17\x8c\x46\xc8\x90\x56\xa6\xa4\x70\x4a\x90\x48\xab\xa9\xe2\x13\x69\x57\x37\x9f\xa3\x98\x04\xea\x5c\x9a\xa2\x18\x8a\xe2\x0f\x4a\x3a\x6e\x97\x4c\x65\x3c\xad\xe2\xb9\x42\x82\x2b\x41\x7b\x95\xa0\x82\x83\x17\xf5\x43\xc1\x92\x7e\x28\x48\xfb\x69\xf3\xa5\x55\xaf\xa9\xaa\x07\x37\x5f\x55\xf5\x72\x7a\xfd\xb7\xae\xa2\x1b\xee\xbd\x36\x5c\x3e\x6f\x25\xa4\xc7\x65\x25\xb8\x5e\x2f\x33\x5a\x79\x9e\x1b\xac\xe0\x1f\x54\x6b\x4e\x39\x30\x0c\xb4\x51\x30\x1f\x45\x9c\x20\x6e\x47\xb8\xd9\x92\x71\xea\x42\x59\xc4\x70\xe9\xbd\x05\x22\x60\x04\x31\x3b\x94\xc7\x52\x69\x11\xc3\xa3\xd6\x44\x24\xc8\x38\x26\xbf\x29\x3c\x81\xba\xd0\x65\x85\x78\xf9\x1b\x8a\xc4\x9b\x91\xbc\x08\xf1\x56\x56\x71\x2c\x1d\x85\x3b\x5e\x77\xb9\xfa\x40\xbc\x0a\x3a\x5e\x17\x04\x61\x42\x22\xae\x46\xe2\x6a\x24\xc0\x0d\xe7\x47\x9a\x33\x98\xd7\xe8\xb9\xe9\xb6\x58\x78\xf3\xd1\xf4\x28\xa4\xa6\xc3\x24\xfe\x59\xa1\x40\xaa\x87\x23\x4a\x7e\xf4\x59\x70\xe5\x57\x69\x89\x73\x63\x51\xde\xbc\x30\xbe\x9b\x81\x2b\xbe\x58\x9f\x52\x32\x70\x61\x86\x17\x0b\x08\x37\x45\xb6\x87\x9b\xad\x1c\x9d\xb3\x5b\x67\xe0\xc8\x31\x4c\xf5\xe2\x4e\xc5\xfd\x6e\xdd\x7c\x52\xf5\xc0\xbc\x5d\x42\x29\x1e\x14\xe1\x8b\x77\x45\x6c\x4e\xc5\x83\xc2\x6d\x86\xce\x38\xa5\x58\x2c\x20\xa6\xc6\x77\x7a\xcd\x5d\x0c\x01\x25\xad\x7a\x4c\x21\xd9\xb4\x6f\x02\x2a\x23\x34\xd7\x63\x9a\xf7\x90\x5b\xfc\x96\x48\xf5\x7f\x7a\xe7\x16\x5b\x96\xbe\x2c\xb6\x6b\x44\x33\x8b\x3f\x74\xd1\xf4\x5c\xdc\xcc\x6e\x7f\xa9\xcb\x07\x30\x35\x40\x66\xe2\x49\x7d\x44\xa1\x47\x49\x2e\x07\x65\x4f\xfb\x9b\x7d\x4b\xe3\xd7\x7f\xb8\xbf\x7a\xbb\xee\x3f\xbc\xbd\xd6\x3f\x5a\xbf\xee\xb5\xea\x52\xbd\x35\xa5\x75\x06\x21\xe9\xd1\x3a\x5b\xf3\x85\x61\xee\xa2\x1f\x13\x6f\x3f\x3e\xd8\xdb\xb7\xed\xd4\xea\x39\x20\xb3\x7a\xdc\xdc\x83\x84\x98\x76\xb9\x23\x62\x58\xe5\x6e\x65\xa8\x46\x82\x12\x92\xc2\x60\x26\xf5\xc8\x19\xd5\x43\x18\xd5\x23\x3b\xa9\x87\x78\x51\xee\xae\xe1\x86\x83\x25\x3e\xc7\x61\x92\x96\x19\xed\x71\x14\x49\x56\xc3\x04\x8a\x81\x49\x09\xbb\x18\x26\xeb\x50\x3a\x26\x01\xa0\xdd\xfa\x80\x62\x6c\xf6\x4d\xab\x48\x8b\x03\x5a\xa6\x6e\xe3\x49\xf1\x4b\xc6\xc5\x66\x34\x5b\x70\x49\x89\xd7\x34\x88\xb4\x85\xe1\x82\x92\xdd\x3a\xba\xa4\xcd\x96\xed\x61\x38\xdf\x98\x25\x28\x4a\x6d\xb6\x20\x24\xac\x7e\x49\x85\x8c\x00\x81\xbc\xb4\x19\x24\xc4\x89\x61\x44\x82\xfc\x3b\xc4\xa0\xe6\x4d\x8e\x21\x30\x87\x04\x46\xe6\x17\x36\xf6\xea\x91\x33\xa6\xf5\x10\xc6\xb4\x1e\xd9\xe2\x3e\x2c\xbd\x8f\xc5\xfb\x40\xbc\x8f\xe5\xfb\xa0\xf4\x3e\x11\xef\x47\xe2\x7d\x22\xdf\x2f\xe1\xb7\x25\x7e\x89\x5a\x80\x46\x65\xfc\xb6\xc4\x2f\x51\x8b\xf7\x71\x19\xbf\x2d\xf1\x4b\xd4\xe2\x7d\xb2\xdc\xf9\x33\x4a\x3a\x11\x85\x50\xcc\x7e\x18\x8a\x79\x03\x13\x0a\xe7\xb4\x0b\x67\xb4\xf2\x58\xae\x28\x62\xe9\xfd\x43\x24\x8d\xc8\x55\x60\xd4\x54\x54\xaa\x56\xdf\x34\xc4\xb0\x21\x06\x2b\x4d\x34\x20\xd2\x82\x90\xd6\x6a\x6d\x7e\x50\x36\x45\x74\x3e\x8f\x36\x56\xa0\xdf\xbf\x27\x35\xe8\x51\x43\xee\x19\xff\xaa\x1e\x44\x60\x92\x6a\x90\xa8\x91\x84\xdf\x37\x96\xd2\xd6\x0a\x3b\x91\x14\xe0\xa2\xdb\x09\x3b\xac\x2c\xec\x44\x52\x9c\x8b\x16\x70\x55\xd8\xab\x98\x31\x72\xa9\x3e\x90\xa2\xf9\x01\x70\x51\x5a\x40\xad\x3a\x6d\x9c\x5d\xbb\x36\x95\x0e\x23\xcd\x5d\x50\x4f\x66\xf2\xc9\x4c\x3d\x51\x10\x0a\x32\x7b\x32\x4b\x9f\x14\x60\xee\x29\x18\x9b\xe3\xe6\x7d\x0d\x75\x4f\x41\xd9\x0c\x37\xef\x9b\x79\x1d\x68\x95\x05\xc1\x35\xfd\x97\x9a\x10\x5c\x2f\x7b\x7d\x19\xc6\xf5\xc7\xc1\x31\xdc\x6c\x6a\x90\x1e\xfa\x2f\x1f\xf5\xef\xfa\x47\x54\x4d\x84\xcc\xfd\x47\xa3\xc6\xea\xc8\xbe\x55\x7d\x38\xbf\x0c\xbe\xf8\x5f\x7b\x06\xf3\x55\xab\xf0\x6a\x17\x2a\x6b\x42\x7b\x75\x3d\xc8\x76\xe6\x11\x25\xc8\x52\x3f\x9f\xe9\xe7\x82\x84\xef\xe3\xcc\x60\x42\x8f\x9a\xb4\x91\x58\xa2\x13\xc8\xfd\x3f\x60\x89\x64\x0c\xa7\xba\x54\x71\x73\x52\xc9\x32\x22\x7a\xa5\x26\x80\x31\x5b\x4f\x2b\x27\xc4\xe9\x8a\x09\x71\x45\x33\xd2\xbf\xa2\xb7\x23\xf1\xeb\x96\xbe\xd8\xd5\x17\xf7\x2a\xa8\x3f\xbd\xd0\xc0\x33\x0d\x3c\xbb\xf7\x57\x27\x86\x57\x4d\x00\xba\x75\xba\x13\x5b\x18\x56\xd2\x71\x15\x35\x94\xd0\x65\xf8\xec\x96\x26\x84\x5d\xc9\xaa\x34\xfa\xec\xf9\x4c\x3c\x2f\x57\xa6\xa9\x48\x17\xcd\xb1\xb4\x4c\x2c\xf9\xf3\x59\xab\x02\xcb\x8a\x26\xef\xaa\x26\xa7\xfa\xbf\x15\xdf\x5d\x78\xab\x89\x7c\xb6\x5b\xf5\xf6\x9e\x7e\x7b\x4f\xac\xfe\x7f\xeb\x54\xbe\x6e\xe5\x84\xde\x22\x7c\xcd\x0c\x85\x8c\xaa\xb2\x02\xbb\xc5\x02\xd5\xf3\xf6\xfa\x5e\x5e\xe0\x1e\xe1\xb0\x76\x34\xc5\x7a\xa2\xe9\xd9\xa6\x72\x3e\x67\xb3\x59\xbf\x99\xa9\x05\x48\xf7\xf8\x3f\x65\x5e\xbf\x5d\x39\xaf\x4f\x4b\xf3\xfa\x65\xe5\xbc\x7e\xf9\xdf\x6f\xa1\x5b\xbb\x06\xed\xfe\xfb\xac\x41\x3f\xb7\x88\x6c\xa5\xf6\xc7\x2b\xe9\x2c\x22\x2b\x29\x6d\xeb\xa6\x55\x8f\x49\x99\xaf\x8a\xae\xc5\x9b\x0a\xce\x90\xb6\xea\xde\x3f\x87\x78\x5f\xad\x24\xde\x97\x8a\x78\x7b\xa3\x20\x49\xb6\x1f\x50\xd3\x7f\xbd\x70\x7c\xa1\xe9\x58\x57\x4c\xf8\xc2\x38\x7b\x29\x92\x6e\x76\xd0\x52\x26\x58\xe3\x54\xa5\x64\xd2\x99\x9d\xa1\xfc\xf3\x0d\x39\x15\x1f\xfd\xf7\x13\x77\x8a\xe6\x9b\xd7\x25\xf4\x25\x95\xa3\xa6\x87\x9c\x7a\xa9\xd8\x71\x6b\x52\xd0\xa3\xe4\x02\x87\x8a\x16\x55\x23\xcb\x09\x29\xa7\x7b\x2e\xb0\xe6\x24\x56\xa2\x46\x93\xf6\x8c\x30\x6b\x8f\x68\x89\xc8\x1e\x88\x7d\xc9\x8e\x6b\x6c\x06\xbe\x56\x83\x78\x06\xc8\x1b\x6a\x12\xe0\x79\x90\x84\x09\xc9\xc4\xa8\xb4\xe2\x73\xca\x03\xc2\x17\x6f\x0a\xbc\x75\x1d\x57\x94\xf1\x39\x55\x9b\xf3\x4b\x89\xfb\xc6\x23\x3f\xa5\x06\x4d\xf1\x00\xd7\xb3\x4d\x1d\xad\xa5\x21\x1d\xe5\xf6\xf9\xd0\xc5\x5a\x9f\x14\x41\x48\xa8\x8a\xf1\x28\x43\x3d\x06\x84\x76\x58\xd7\x09\x21\x21\x5c\x5c\xc4\x30\x22\x8e\xb7\x6f\xdb\xa3\x03\xc2\xf6\x71\x44\x46\x4d\x56\x68\x94\xb9\xe8\x8b\x8f\xad\xd3\xce\xa8\x6b\x23\x4d\xd0\xe2\x11\xae\xa3\xd0\x8e\xea\x81\xd9\x27\x75\x5e\x05\x16\xdb\x51\x3d\xc1\x78\x2b\x9b\xc2\x69\x47\x18\x51\x2f\xf2\xae\xb8\xf1\x44\xf3\x5a\x85\x0a\xb5\xb3\xc1\x98\xa5\x0f\xb8\x3e\xc3\xfc\x92\x73\x9d\x6d\x2a\xf6\xe3\xb9\x5e\xd9\x4c\x99\xa4\xf2\x8d\xea\x91\xf5\xa5\x21\xb2\x1a\xfb\x3c\xf4\xa9\x1c\xe8\x8a\xad\x3d\x95\xd5\x01\x5b\xa0\xc6\xaf\x7b\xc6\x79\xf9\xe3\x9b\x77\xc2\x6a\xe3\x4a\x1b\x67\x5f\xeb\xf2\xba\xe5\xc8\x2d\x2d\x06\xb5\x7b\xcd\x5e\xcc\xe4\x8b\x99\x7a\x71\xdd\x32\x4a\x78\x0e\x57\xd0\xc6\xc3\x99\xa7\x74\x63\x42\xbc\x93\xaf\xcc\x44\x95\x74\x1d\x4b\xfd\x4a\xc4\x78\xe1\xe6\xfd\xc5\xf1\x7f\xb5\xa8\x90\x6d\x18\x2a\xb7\x07\x7f\x71\x33\xb0\x7e\x0f\x6c\x08\xc5\xc5\x55\xf2\xf1\xca\xad\xf5\xff\xee\x95\x5b\x15\xe2\x80\xb7\x56\x12\xcf\x56\x9b\xc7\x1b\x8a\x19\xa5\xe1\x31\x37\x09\x95\x82\x47\x3a\x88\xc6\x46\x22\x65\x0a\xcf\x36\x62\x0a\x82\x09\x1c\x97\x99\x00\xa7\x51\x12\xc6\xd1\x7a\x3e\x60\xda\xca\xbd\xd8\x70\xc2\xbd\xf8\x97\xee\xb9\xaf\xf7\x6e\xb7\xf9\x4e\x2f\xf6\xfe\xb9\xbb\xf0\xa5\xfd\xe6\x6d\x77\xe1\xc5\x79\x7c\x6b\x74\x55\x3b\xe4\x8d\xf7\xc0\x15\x6f\xf7\xf4\xdb\xbd\xbf\x7f\x87\xbc\x7a\xc3\x5b\x3d\x2f\xab\x7b\xbc\xb8\x0b\xae\xec\xdb\xd2\xbe\x79\x2f\x2f\xb1\x97\xd5\xfb\x5f\x36\x93\x9f\x6c\x3c\x93\x5f\xfc\xe5\x99\xfc\x7d\xc3\x99\xfc\xfd\x7f\xc2\xd2\xf9\x3f\x7b\xdf\x7d\xe3\x2a\xb8\x2c\x09\x6c\xaa\x3e\xdc\x64\x5f\xfd\x2f\x9f\x26\xef\x36\x9e\x26\xdf\xff\xf2\x34\x79\x48\x8b\x1e\x49\x52\x4a\x95\x66\x7e\xa2\xb1\x31\x51\x72\x69\x20\xef\x5b\x62\xb3\x42\x1b\x67\x23\xd7\x3b\x0b\xcc\xd0\x0d\x09\x91\xe7\x3c\xe2\x79\x2b\xb0\x77\xf5\x75\x20\x2f\xbc\xd6\x59\x60\xa7\x17\xad\x00\x46\xc4\x78\x9f\x61\xd3\x00\x01\xde\x8a\x08\x8a\xea\x89\x12\xad\xeb\x59\x39\x79\xfa\x64\xd4\x82\x9b\x23\x08\x09\x0a\x15\xe4\xac\x04\x39\x2b\x42\x2e\xd2\x76\xb7\x76\x8b\xed\x9e\xa6\xed\x6e\xed\xe6\xed\x16\x30\x55\xed\xee\x11\xe3\x7d\x86\xcd\x68\x77\x4c\x50\x5c\x9f\xaa\x53\xb2\x1c\xab\xc3\xf3\x96\xe1\x66\x0f\x02\x82\x02\x05\x35\x33\xa1\x58\x01\x6a\xb1\x72\x0b\xa2\x43\xfa\x54\x6f\x17\x9e\xae\xe5\x79\xc1\x68\x32\x14\x7b\xdf\xa7\xff\x5d\x38\x9e\xa4\x0c\xcd\xca\x44\x27\xeb\x6b\xd1\xf3\x24\x87\x69\x99\x40\x2d\x13\x2a\xbb\xf9\x57\xee\x3b\x96\x25\x0b\x03\xf4\xbf\x68\xeb\x21\x26\x40\x35\x9b\x56\x3a\x4d\xdd\x50\x87\x42\x94\x0d\x85\xc3\xb7\xcc\x0e\x37\xcc\x2b\xcc\x0e\x96\x8f\x27\xf1\x15\x62\x75\x66\x47\xf5\xc8\xa4\x36\x8c\x17\x2b\x7b\xf7\xdf\xe1\x58\x30\xe3\xf1\x0f\x97\x79\xfc\x12\xf5\xc1\x0a\x4a\x84\x95\x94\x08\x2b\xc9\x12\xfe\x15\xeb\xc8\xfb\x8d\xd6\x11\xa5\x49\x49\x59\x87\x9f\x6d\xa3\x5c\x63\x55\x51\x9c\x63\xbd\x32\xc5\xd4\xa5\x7c\xdb\x88\x0f\x7d\xfb\xef\xb6\x87\xfa\xaf\xe6\x47\xff\xbb\x1d\xfb\x6f\xca\xd4\xfe\x3d\xb7\x7f\xff\x23\x79\xde\x87\x5b\xf0\xbc\x6f\x06\xcf\x7b\xf1\x57\x79\xde\x9d\x8d\x78\xde\x9d\xff\x95\xbd\xfe\x0d\x36\xae\xff\xfe\x8c\xe3\xbf\xe5\x46\xf9\x7f\x24\x43\xf9\xed\x16\x0c\xe5\x8e\xc1\x50\xbe\xff\x55\x86\xf2\xa9\xd2\x28\xe4\xd3\x5f\x15\x9a\xd6\xcd\x46\x03\x62\xcd\x5c\xab\x9e\x53\x95\x13\x6a\x8d\x24\x8f\xaa\x16\xca\x0a\xc1\x5e\x1f\x0d\xfe\xbe\xd2\x20\xe1\x53\xc9\x9a\xe6\xb5\x79\x52\x4c\x53\x77\x71\xc3\xe1\xa7\x4a\xe3\xa1\xd4\x0d\x10\x12\xee\x28\x0d\x48\x4c\xd2\xb3\x39\x75\x92\xd7\x44\xd1\x7c\x1e\x1e\xb8\xb5\x9a\xe3\x62\xb1\x89\x67\x4e\x6a\xd8\x8a\xc2\xf9\x3c\xd2\x2f\x12\x82\xe2\x7a\x68\x07\xf5\x48\x94\xb0\x43\xed\xff\x82\x5e\x53\x14\x63\xfb\x35\x45\x01\x4e\x7d\xe6\x0a\x7e\xef\x31\x86\xec\x3a\xc0\xd0\xd8\xab\x67\xb7\x09\xc6\xf3\xb9\x6b\xb8\x19\x51\xd3\x28\xdb\x68\xbc\x76\xb5\x61\x6d\xb4\x5b\x2f\x36\x9e\x39\x1c\x37\x5b\xbe\xe1\x4a\xf7\xb9\xa2\x13\xdc\x54\xed\xe3\xa6\x6a\x1f\x2f\x55\xfb\x78\xf2\xb3\x9c\x08\x37\x77\xb7\x56\x2b\x26\xec\x04\x42\x3b\xa9\x73\x88\x9d\x04\x02\x27\xa9\x33\x19\xff\xd7\xf0\x26\xe2\x55\xf4\x9c\xbb\x14\x55\xbc\x16\xa3\xcb\x78\x21\x0c\x33\x5b\x8f\x25\xe2\x25\xe2\xa0\xc5\xe2\x61\xf9\x3d\x2f\xbe\x8f\xd7\xa3\x0f\x78\xe6\x82\x08\x4c\xf9\xc5\xe6\xa9\x19\x8d\x9c\x8c\xb8\x98\xa2\x51\x50\x8c\x79\x2b\xbd\x47\xc2\x8e\xdb\x25\x2e\xc4\xe2\xa7\x05\x81\xf8\xa1\x1d\xb7\x6b\xb7\xea\xb4\xe3\x75\x81\x13\x6f\x9f\x1f\x44\xf2\xac\x9f\xe3\xb0\xc3\xbb\xc4\x83\x58\xfc\xdc\x93\xe1\x05\xc8\xbd\x3a\xed\x70\x05\xce\x6d\xaf\x9b\xe2\x8c\x1c\x4f\xa0\x8b\xd5\xc5\x2f\x10\xa8\x8b\x5f\xeb\x54\x5e\xd8\xb4\x13\x65\xb8\x25\x66\x46\x04\xee\x66\xdc\xe1\x8e\xd7\x95\x15\x38\x84\xc9\x1a\x1c\xc2\xea\x81\x7c\x6c\xe2\x56\x08\x9b\xaa\x02\xe0\x24\x72\x5a\xfb\xfc\x90\xb8\xfb\x8e\x93\x36\x13\xc9\xc2\xa1\x6c\x15\x16\x88\x55\xf9\xb4\x49\x48\xb4\xc0\x56\xc8\xa4\x01\x0a\x71\x8d\xef\x94\x1f\xa8\x3f\x29\xc5\xa1\x83\x2f\x86\x10\x77\x17\x94\xff\x1b\x19\xc5\xa9\x0b\xee\xfe\x73\x0f\xb8\x4d\x9b\xf0\xc2\x2a\xfc\xb9\x70\xc0\xcd\x5d\xf8\x58\x7a\x80\xff\xab\xd4\x4d\x8a\x39\x1d\x07\xc7\x5b\xe1\x40\x3a\x0a\x83\xca\xed\x69\x24\x1c\x99\xcf\x79\x76\x37\xf3\xd6\x74\xce\xbf\x83\x9e\x08\x74\x57\xeb\x1e\x66\xe4\xb9\x21\xec\x60\x60\x65\x4b\xd2\xa5\xb1\x29\x95\xf8\x79\x03\xbd\x0c\x25\x61\x8b\xc5\x02\x10\x37\x67\x84\xca\x5a\xdb\xe8\x31\x1a\x70\x8a\xcc\xc9\x82\xb1\xda\x5e\x97\x7c\x7b\x4c\x10\x05\xa0\xfc\xa5\x55\xe3\x81\x0a\xc1\xa4\x30\xe5\xd6\x24\xa8\x29\x0b\x91\xb2\x74\x65\xf2\x99\x35\xb2\xc5\x68\x75\x4e\x99\xf2\xf4\x90\xf8\x37\xcf\xf0\xb2\xc2\x96\x0d\xa8\x74\x8c\x8b\x21\x94\x4e\x92\xff\x62\xfe\x52\x34\x2f\xfb\x49\x33\x32\x69\x44\x86\xc5\x54\xbb\x69\x6e\xc8\xa0\xd8\x1d\xb7\xbb\x6a\x86\x64\xef\xa1\x45\x08\x61\x78\x05\x16\xc1\xf9\x65\xb4\x6b\x19\xed\x37\xb3\x5d\x23\x72\x7d\x84\x50\xfc\x72\xac\xd3\xf4\xef\x07\x07\x6c\xdf\xb6\x63\xb0\xed\x00\xaf\x1b\x8a\xa8\xe3\x76\x3b\x71\x17\xc2\xf4\x37\xea\x78\xe9\xbd\xfa\xa5\x9d\x40\xd4\x1b\x74\xf1\xfe\x8d\x6c\x8d\xfd\x0c\x33\xd3\x53\xb0\x60\xe7\xf6\xd7\x2c\xda\x92\x4a\xdf\x2d\x21\x0c\x48\x51\xc3\x10\x5b\x47\x7c\x9d\x02\x81\x13\xbe\x18\xfd\xab\x69\x53\x77\xc3\x66\xcb\x9b\x7b\x90\x36\x55\xf7\x3c\x3f\xf0\x6a\xb5\x56\x71\x8d\x29\x8f\x4a\x71\xa9\xd3\xbd\x88\xe1\x9f\xb0\x6e\x1d\x12\x37\xcb\xe4\xc2\xb3\x71\xe7\xab\x88\x61\xc5\x3e\xe7\xdf\xc9\x88\x2b\x5b\x6d\xb2\xa9\xcf\x0f\x88\x5b\x3d\x69\xb3\x1e\x5e\xe1\xc5\x22\xab\xca\x92\x1e\x64\x3a\x90\x7a\x66\x12\xca\xb1\x4d\x53\x9b\x76\xad\x09\x59\x32\x61\xcf\x86\x6f\xd5\x7b\xbc\xd0\x0b\x5f\xbe\xca\x65\x5b\xed\xe9\xca\xb9\x22\xe7\x46\x63\xcf\x9c\x2e\xbd\xb2\x24\x2f\x61\x4c\x8b\xe1\x7e\x25\x84\xa7\x32\x14\x0c\xcb\x0b\x61\x38\x40\x28\xcc\x38\x2a\x3e\xf4\x32\x93\xdc\x74\x19\x21\x72\x3f\xd4\x11\xdc\xb1\x0b\x09\x09\x52\xc8\xfd\xf8\x20\x94\xde\xdf\x32\xb2\x18\x09\x52\xa0\xb8\xdb\x05\x46\xdc\x7d\x76\x90\xec\xdb\x36\xc3\x41\x87\x75\x3b\x5e\xd7\x26\xf2\xc2\xed\x12\x95\xf1\x3c\x52\x8f\x71\x3b\x52\x8f\xfd\xf4\xc1\x02\x06\xc5\xce\xd0\x8d\xe1\x59\x13\x81\x19\x7b\x0a\x8e\x85\xfc\x2d\xc4\x70\xcc\x84\x08\xcd\xb3\xdd\xa0\xd1\x65\x13\x5e\x88\x55\x26\xb6\x0f\x79\x6f\x8d\x65\x6f\xa9\xf4\x78\x9c\x74\xb4\xd4\xbd\xcd\x1b\x5f\xe9\x4c\xc6\x7e\x12\xd5\x5f\xf2\xe5\x00\x42\x53\xd4\xe9\x62\xe0\x64\xc0\x81\x91\x21\x87\x88\x4c\x78\x5e\x69\x88\x74\x14\x0b\x99\x15\xde\x0c\x16\xbd\x22\x9a\xdc\x98\x63\x18\x11\xed\xd6\x0a\x53\xe2\xa8\x60\xbe\xaa\x6d\x74\x3b\x1e\x6c\x87\xb2\xb7\xc5\xfa\x62\xdb\xd3\xfd\xf8\x60\x24\x47\x00\x25\x9d\xb8\xdb\x99\x76\x49\xc7\x05\x5b\x0c\xab\xb8\x17\xcd\x87\x29\x84\xb8\x8b\x1b\xfd\x80\x07\x84\x6e\xe9\xb2\x01\xf9\x8a\xb8\xd8\x60\x67\x18\x92\x4e\x20\x46\xae\x21\xc3\xac\x91\x38\xeb\x44\x24\xe3\xfa\x26\x5a\x99\x13\x0a\xa4\x7f\x3d\xde\xbb\xd1\x17\x42\x86\x0c\xa5\x13\x71\x58\x8e\xce\xf6\x17\x02\xb0\x84\x32\x00\x4b\xd8\x88\x59\x9f\x6e\x98\xbb\x9d\x67\x3e\xc4\x03\xbe\x3a\xb2\x64\x21\xe4\xb7\xac\x87\xcb\x7a\x64\xf2\xca\xdb\x3a\x2b\x0f\xb9\x4f\x05\x0a\xb6\x80\x70\x01\x17\x55\x13\x33\x32\x26\xa6\x9b\x4f\x06\x3d\x33\x5d\x39\xe9\xdc\x6e\x3e\x25\x03\x15\x90\x41\xee\x5b\x89\x9a\x87\x91\x9c\x87\xa1\x2d\x0d\xea\x05\xa1\x78\xdd\xf9\xdc\x15\xa2\x93\xa2\x26\x13\x2a\x07\x69\x92\x70\x31\xe4\x69\x30\x6c\x38\xaf\x6a\x5c\x52\x68\x5c\xa9\x6d\x2a\x83\x9b\x8c\x02\x98\xf2\x0e\xdd\xc8\xd1\xc1\x74\xdf\xb6\x47\x29\x25\x07\xc4\x2d\xf0\x0b\x14\x12\xf1\xd5\x1d\xde\x61\xdd\x6e\x67\xd4\xc5\x1d\xaf\xeb\x08\x01\x09\x1f\xba\x6d\x29\x29\x91\x58\x0a\x48\x24\xb6\x49\x88\xfd\xf0\x40\x3e\x16\x1b\x74\x90\x6f\x03\xf9\x58\x41\xba\x0a\x32\xc4\x0b\x98\x55\x7d\x01\x5b\xd9\xbd\x44\x2a\x85\x52\xa6\x17\x93\x50\x37\x3e\x3a\x88\xf7\x6d\x3b\xca\x61\x45\xfb\x13\xe2\xa6\xb2\x5e\x80\x13\xd1\xcf\x41\xb7\x13\x65\xfd\xac\x2e\x6d\x22\x2f\xdc\x2e\x71\x92\x66\xcb\xe8\xda\xb3\x9b\x18\xb2\x58\xbc\x23\x22\xda\xaa\x9a\x83\x6f\xa2\x08\x21\x78\x46\xb2\x31\xd9\xeb\x84\xb8\xe9\x60\xb8\xfb\x89\xe4\xdb\x49\xfe\xb2\x27\x31\x27\xdd\x2e\xf4\x49\x4f\xb4\x5d\x36\x1c\x86\x04\xf5\x1d\xd4\xeb\x04\x8e\x97\x3e\x92\xe9\x24\x06\xc4\xdd\x1f\xc8\xc1\x1a\x28\xfe\x36\x91\xc5\x07\xff\x3f\x73\x7f\xde\xdd\xb6\xed\x3c\x0a\xe3\xff\xfb\x55\xc4\xbc\x3d\xbc\x40\x0d\x29\xa4\x76\x31\x41\xf5\x4b\x52\xb7\x49\xdb\x2c\x8d\xdd\xa4\xa9\xae\xae\x0f\x17\xd0\x62\x43\x91\x0a\x49\x79\xa9\xa5\xf7\xfe\x3b\x18\x80\x24\xb8\xd9\xc9\xe7\xdb\xcf\xf3\x3c\xf1\x39\x91\x44\x0c\x06\x20\x96\xc1\x6c\x98\x59\xad\x8e\xd6\x27\x14\x6d\x0b\x04\xb8\xc7\x7f\x94\x95\x0f\xe1\x09\xf5\xc8\xee\x84\xae\xbf\xf7\x0e\x49\x5e\x72\x42\xe5\x57\x98\xd8\x50\xd7\x51\xdc\xa3\xbb\xc7\x21\xee\x02\x29\x47\xee\xba\xba\xe3\xf2\x53\x62\x63\x6f\xd1\x69\x56\x44\xe0\xf1\x39\x7d\xbf\x37\xe0\xe5\x92\xad\x7a\x7c\xb9\x1d\xb0\x7a\xce\x9e\x66\x95\xe3\x87\x24\xb4\x67\xe6\xeb\x22\x27\xd1\x31\xed\x99\x8f\x0d\xbe\x6e\x9f\x06\x4f\x30\x17\xf8\x99\x3c\xd7\x7e\x88\x21\xba\x36\x3f\x14\x92\xa2\x2b\x11\x1c\x25\x37\xdd\xdd\x7e\xfb\x3f\xef\xf6\xdb\x46\xb7\x0d\x12\xd1\x9e\xa9\x74\x9b\x2f\xe0\xb2\xbf\xb0\x3a\xb1\xae\xa3\xe4\x84\x96\xcd\x27\xd0\xd5\xb3\x56\x9a\x76\x03\x5d\x4b\x44\xca\x59\x2e\xba\x9e\xb7\xbc\x51\x45\x4d\x08\x8d\xcb\x17\x24\x31\xbd\x06\x69\x49\xee\x1c\x12\x72\x51\x70\xc7\x4f\x5e\xde\x6b\xa9\x16\x93\x2a\xba\x78\x99\xad\x88\xfd\x34\x5d\x20\xbe\xad\x97\xc9\x8a\x84\x42\xd0\x48\x20\x15\x8e\x7c\xb6\x2b\x9e\xe5\xdd\xdf\x95\xdd\xeb\xbb\x71\xe4\xda\x19\x0a\xf1\x81\xbc\x6e\x7d\x1f\xbf\xf6\x3e\x07\x52\x95\xa6\xf1\x9d\xb6\x4b\xd9\xa3\x34\x4b\x02\x37\xd3\x8e\x92\x7e\xc2\x85\xbc\x3c\xcb\x33\x68\x1c\xbe\x22\x39\x3b\x87\x8b\xdb\xd3\x46\x87\x6a\x02\xfe\xb8\x2b\x4f\x7f\x25\xa7\xfe\xc6\xce\xdc\x75\x47\x16\xea\xad\x02\x17\xd9\x1b\x96\x6e\xed\x8e\xec\xc8\x71\x1b\x64\x47\x36\x7d\x05\x14\xb8\xf0\x8e\xc6\x6f\x58\x13\xf0\x2b\xb2\xc5\xa7\x2c\x64\x6e\x7b\x8a\xe4\xcb\x26\xdc\xb3\xb0\x7d\x88\xce\x9a\xa0\xfc\x10\x6f\x4d\xa9\xdd\x04\xed\x98\x1d\xb7\x05\xb0\xab\x03\x7e\x25\x3b\xf3\x6d\x47\x2a\xeb\xdf\x14\xa8\xeb\x20\xf2\xe2\xeb\xce\xac\xe9\x47\x42\xbf\xa0\xad\xb3\x6c\x6b\x3d\x7e\x7c\x7d\x7d\xdd\xbf\x1e\xf6\xe3\xe4\xf2\xb1\x39\x9f\xcf\x1f\xdf\xac\xb3\x4d\xa8\x91\x80\xde\xa5\x57\x97\x56\x0b\xd4\xc0\x30\x8c\xc7\xe9\xd5\xa5\x46\x00\xd4\x8a\xc8\x4d\x18\x44\x9f\xdb\x40\x05\x42\x5e\xaa\x91\x9b\x4d\xd8\x06\xf2\xe7\xeb\xdf\x38\xd8\xec\xb1\xb2\xac\x6e\x36\x61\x94\x76\x36\x0d\xa5\x8f\xb5\x03\x89\xdb\x88\xde\x09\xd5\x34\x92\xd0\x4c\xf0\x9d\x6f\x7d\xa4\x59\x5a\x49\x82\x40\x6e\xd5\x00\x83\x76\x4c\x29\xe2\x54\x12\x12\xb6\x40\x74\x2d\x4e\xb2\x58\xf1\x24\x39\x31\x39\x3f\xd6\x5f\xdb\xe9\xdb\xeb\xe8\x5d\x12\x6f\x59\x92\x71\xf1\x60\x71\x07\xfd\xb4\x02\x4e\x49\x60\x73\x59\xec\x60\xb1\x83\x1a\x34\xb1\x35\xa5\xa7\xe8\x22\x88\x6a\xf1\x75\xc4\x92\x1f\x63\x17\x38\x39\x22\x45\xc4\x62\x08\xfe\x78\xff\xaa\xe8\x32\x85\xa4\x1b\x59\xdf\x93\xc0\xa7\x21\xe3\x1f\x15\x60\x0e\xb3\xc8\x55\x95\x12\x00\x31\x6c\xd5\x1e\xbd\x39\x43\x09\x61\xf8\xa0\xa6\xd6\xbe\x2f\xf7\x68\xb3\xa7\x0d\x7c\xac\x0f\x7d\x20\xac\x0f\x03\x21\xd3\x2a\x86\x2d\x33\x13\x23\x56\x98\xf0\x32\x01\xbd\x48\x2d\x1b\xa3\x4c\x3d\x6b\x76\x08\xdf\x1d\x04\x07\xd1\x26\xbf\x4a\x36\x77\xd7\x95\x60\xf5\xcb\x8e\x25\xb7\x67\x72\x47\x21\xfe\xaa\xa4\x2d\x40\xfa\xff\x20\x13\xcf\xba\x68\x71\x29\x12\xaf\xf8\xf7\x75\x74\xfd\x55\x1d\x7d\x16\x86\xa2\xaf\xdb\xaf\xcb\x09\x0b\x18\x04\xb9\x86\x54\xac\x4a\xf7\x36\x6d\x15\x95\x70\xe9\x95\x6a\x20\x85\x36\x12\x18\xf9\x41\xe4\x95\x08\x2f\x6b\xcd\xfa\x41\x92\xe6\x6b\xf0\xc5\x3a\x08\x3d\xc0\xe2\xb4\x60\x09\x33\x96\x94\x78\x6e\x6b\x78\x5c\x5e\x37\x61\x82\x7f\xb9\xe8\x52\x56\x08\x89\xbc\x60\x5c\x95\x17\xbd\x56\x34\x7c\x95\x25\x4a\x59\x6d\x73\x35\xb6\x16\x65\x95\x9f\x52\x77\x12\x81\x95\xb4\xbc\x8c\xbb\xb5\x13\xc0\x26\x7f\x5e\x70\x81\xf7\xe2\x82\x66\x87\xeb\xae\x8c\xf3\xd7\xc4\xde\x6e\x59\xe4\xc1\xb0\x58\x2d\x6f\xa4\x22\xee\x07\x51\xca\x92\xec\x39\xf3\xe3\x04\x0c\xc8\x45\x27\xf0\x81\xa8\x65\x35\x9d\xd9\xd7\xa0\x82\x64\xf0\xca\xfa\x7a\xb0\x2f\x8d\x6d\x43\xea\xeb\xf3\xdb\x50\xe4\x0b\x1a\x8e\x9a\xd3\xaf\x4e\x74\x5c\xce\xee\x4d\xd5\xe8\x50\x48\x46\x92\xbb\xcb\x4a\x85\x46\x9c\x73\xa0\x29\xc8\x80\x29\x46\x36\xe5\x92\x07\x5e\x20\xbb\x9c\xb5\x78\x99\xae\x48\xb4\x4c\x57\xd4\xc6\x56\xc2\x3f\xf9\xea\xe2\x6b\x88\x97\x08\x23\xf2\x93\x14\x34\x17\x25\x06\x5d\x47\x81\xa8\x52\x49\x3a\xdc\x92\x93\x57\x24\x03\x00\x9c\xaf\xed\x2d\xf1\xca\x0e\xae\x8b\x0e\x12\x5f\xd1\x31\x79\x6a\xc8\x7d\x91\x3c\x09\x85\x45\xab\x3e\x6f\x75\x47\x6d\x61\x3e\x0a\x49\x58\xbc\x08\x49\x49\x86\x4f\x34\x8d\xb8\xfc\x58\x42\x3b\xbc\x80\x1e\x86\x96\xdb\x4f\x59\x86\x76\x24\xc4\xcd\x60\xfe\x05\x26\xf1\xb6\x24\x25\x31\xe0\x40\x21\x75\xfb\x97\xbc\x1a\xc6\x5c\xe0\xe5\x88\x94\xb6\xc4\xa0\xb9\x7d\x11\x4b\x94\x03\x75\x8d\x5c\xfb\x6b\x08\xdc\xfc\x5d\x30\xa5\x34\xcc\x47\x33\xc4\x5d\x09\x9a\xf3\x86\x2b\x09\x9a\x55\x25\xdb\xd3\x6c\xd1\x33\x2d\xf6\x43\xb6\xe0\xff\x43\xf6\x96\x37\xf6\x9b\x4a\xb2\xe6\xb6\x05\x06\xeb\x34\x61\x9b\xf8\x8a\x3d\xcb\xb2\x24\x70\x76\x19\xb8\xb9\x54\x32\x2d\x7f\x6d\xc5\xd6\x33\xaf\x40\xf4\xac\xd2\xe1\x3a\xaa\x94\x65\x4a\x07\x40\xe2\x2c\x6a\xbe\xf8\xea\x9a\xcd\x1e\x54\x31\x7d\xee\xc2\x24\x95\xd1\xed\xaa\x42\x99\x92\x3e\x59\x74\x8c\x96\xd5\xf6\x06\x89\xda\xee\xfb\x7f\xbf\xdd\x96\xc1\x6e\xf6\xa3\x65\x3c\x12\x79\xb8\xb5\xe6\x5a\xab\x9d\x0f\xba\x5e\x7b\xd0\x97\x96\x80\x0f\x01\xbb\xde\xef\x59\xc1\x78\xe9\x3a\x83\x9f\x65\x69\x47\xb6\xb6\xc6\xe4\x71\xae\x5d\xbe\x5a\xc1\x46\x56\xd6\xdf\x9b\x5c\x2a\xbc\x17\x43\xca\xb2\xb2\x3a\xc0\x2b\x28\x5e\x75\xa3\x10\xfc\xfe\xfd\xe3\x1f\x2d\xee\xeb\xaa\xd5\xd9\x8b\xa8\xda\x8b\xdf\xaa\x1b\x56\x56\xb9\x2c\xab\x40\x62\x0b\x94\xe1\xfd\xfe\x6f\x2e\x21\x5f\xb2\xec\x45\xbc\xd9\xee\x32\xe6\x9d\x71\x50\x24\x52\xca\xe0\xb6\x2a\x65\x2b\x3f\xb5\x0f\xb6\x0c\x7a\xcc\xfb\xba\x64\x2b\xa5\x57\xff\xdc\xb7\xb7\x96\x6c\x55\x89\x9f\xf2\xc7\xff\x6c\x19\x57\x3b\x61\xe5\x2d\x24\x4a\x0b\xcf\xab\x91\xd9\x93\x60\x83\x70\x3f\xdd\x86\x41\x86\x1e\xff\xdf\xfd\xff\x49\x4f\x1e\xab\xf7\xd0\x2a\xc0\x10\x29\xe8\xb7\x20\xcd\xf6\x7b\x4e\x86\x3f\x54\x1c\xae\x3e\x94\xfe\x56\x51\xec\xb1\x82\x75\x01\x66\x87\x3e\x47\x30\x11\xe5\xf6\xd5\x00\x99\x86\xf7\x7b\x4d\xc3\x95\x6c\x14\xfc\xfd\x0b\x2d\x20\xe5\x3d\xc8\xf5\x3d\x59\x4d\xdf\x93\xf4\x6d\xcf\x43\xd9\x32\x52\x63\x5d\x7f\xfc\x36\x0c\x62\xb5\xd5\x91\x7c\xd7\x3e\xc7\x5f\xa4\xdf\x87\xba\xe8\x7e\x6e\x07\xfd\xd8\x02\xfa\xa9\x6b\x72\x51\xc7\xbc\x2e\xbe\x58\x1f\x71\x0b\xa2\x5f\xf3\xad\x99\xb1\x9b\xec\x45\x1c\x65\x9c\x57\xd4\xb4\x5a\x80\xfd\x8e\xed\xac\xd6\x61\x87\x4a\xfc\xf4\x6e\xb1\xb1\xc3\xc4\x73\xd4\xc0\x28\x56\x62\xb6\xd0\x34\x4b\x5d\xd7\x7f\xe6\xad\x43\xbe\x87\x97\xe7\xaf\x7f\xab\xf4\xf7\xaf\x7b\xfa\x5b\xd6\x50\x7b\xcb\xd8\x7f\xdc\xdd\x12\x61\x47\x67\x21\x28\xba\x60\xdc\xd9\x4d\x76\x16\x38\x61\x10\x5d\x4a\xd3\xb4\x60\x38\xdf\xc4\x1e\x34\x91\xf3\xdb\xd0\x50\x3d\x78\xba\x80\x4f\xd8\x55\x10\xef\xd2\x4e\x2c\x15\xf6\x39\x2b\x3c\x8d\x14\x08\x10\x7a\xa0\x19\xa5\x85\x48\x09\xdc\x5e\xcd\x6d\x17\xb0\xaa\xab\x49\x89\xe9\x88\xf1\xe3\x46\xac\xf8\xd6\x6e\xc7\xb5\xaa\x6e\x18\x47\x8c\xd7\x44\xc7\x26\xce\x1d\x56\x14\x7c\x85\xcf\x74\xbb\x40\xa1\x8c\x1e\xb6\x54\xe7\xcb\xee\x66\x8c\x7f\xb1\x99\x94\x3d\x4c\xea\x40\x89\x8b\x9a\xfa\x02\x50\xe3\xb0\x52\x8d\xd3\xaf\xab\x71\x14\xe5\x4d\x72\x62\x62\xc2\xaa\xba\x1c\x72\xc7\x25\x34\x8b\x11\x4e\xfe\xf8\xe2\xc2\xca\x30\x87\xf7\xae\x5d\x29\xf1\xc5\x10\x90\x39\x6b\x1a\x71\x7a\x26\x89\x4b\x42\x96\xdb\x6f\x12\xca\x49\x18\x61\x10\x09\x59\xd7\x13\xf8\x3c\xa6\x54\x3c\xd8\xef\x13\x90\x3a\xe1\x01\xff\xb2\xc8\x96\x27\x27\xc1\x8a\x26\x96\xc2\xf9\x9c\x5e\xb1\x28\xe3\xf4\x9d\x45\x2c\x41\x02\x05\x49\xfa\xa1\x7c\x42\x92\x7e\xbc\xe5\x5d\x4d\xf1\x93\x93\x93\x60\x91\xf7\x81\x06\x96\x72\xee\x40\xd7\x0f\xca\x6e\xda\xb1\x07\x98\x03\x4e\x97\xf3\x8a\x35\xb5\x5a\x8b\x2e\x81\x55\xdc\xda\x2a\xe2\x31\x3e\x1c\x50\x86\x4b\x43\x60\x69\xce\x2a\xcc\x5d\x36\x18\x7a\x6c\x2c\x6c\x91\xc1\xd2\x5e\x61\x11\x3b\x3a\x1f\x29\x5d\x8f\x60\x80\x68\x3e\x52\x58\x95\x37\xdb\xc6\x49\x04\x9f\x26\x51\x39\x4e\x51\x31\x4e\xa2\x7f\xb6\xe7\x3d\x50\x85\xc6\x65\x25\x9a\x60\x72\x15\x07\x1e\x8a\xa4\x01\x39\x93\x74\xab\x81\x46\xf4\x98\xc4\x24\xe1\x07\x9c\x5c\x71\x12\x35\x5f\x76\xe2\x05\x64\x8a\xb1\x8c\xe4\x8d\x59\x31\x91\x4d\x81\xa5\x76\x11\x08\x6b\x43\x11\xb5\xf0\x22\x8e\xe8\x32\x52\x59\x18\xb7\xe6\x64\xfe\xb7\x70\x0e\x8b\xfa\x2f\x76\x69\x16\x6f\xa0\x57\x47\x2d\x36\xe6\x60\x21\x9c\xa9\x03\xc8\x7a\x61\x21\x5e\xc5\xab\x29\xf3\x78\x5d\xa4\xc1\x87\x86\x49\xb2\x40\x41\x3f\x88\x82\x4c\x3c\xcf\x48\xd2\x77\x76\x8e\x13\xb2\x94\x24\x7d\xd7\x8e\x5c\x16\xda\x4e\xc8\x5b\xef\x7b\x2c\xb3\x83\x90\x26\xf2\x0b\xb6\xaa\x15\x8f\x4d\x72\x6c\x42\x14\x73\x2f\x48\xb7\x76\xe6\xae\x45\x89\x9a\xa0\xc3\x63\x5d\x27\x72\xae\x2a\x57\x2f\xc2\x94\xf5\xd6\xdf\x50\xaf\x23\x48\xfa\xe1\xf0\xa1\xe2\x03\xe6\x55\x75\x36\x0a\xef\x54\x10\x21\x86\x9f\x96\x7e\x4f\xa2\x08\x26\xae\xf0\x59\xe3\x7c\x57\x55\x48\x92\x5c\x96\xca\x8a\xf5\xff\x8e\x83\x08\x69\x8f\x34\x8c\xf1\x81\x88\x05\x6d\x35\x09\x60\x7b\x07\x8e\x32\xd5\xf7\x4a\x94\x72\x82\xca\xdf\x97\x98\xff\x83\x7e\xb8\x71\x94\xd9\x41\x94\x76\x6b\x7a\xea\x5d\xf9\x81\x1a\x52\xc5\xe3\x33\xba\xe4\x47\xe0\x4a\x71\x90\xa9\xdc\xe1\xbb\x4c\xe2\xdd\x36\x2d\x38\x52\x71\xb2\xa4\x54\xb9\x45\xb1\x51\x4f\x53\x76\xcd\xeb\x2f\x97\xc5\x4a\xad\x29\xbf\x57\x2b\xe2\x33\x7c\xd8\xaa\x17\x78\x36\xac\x4b\x2f\xb7\x65\x44\x18\x59\x2a\xaf\x56\x6e\x96\x63\x45\x0b\x8c\x18\x75\x11\xc3\x65\x52\x8a\x7c\x1e\xc4\x1b\x80\x65\x41\xea\x73\x22\x45\x9f\x93\xf0\xcd\x68\x3c\x09\xc0\x62\x5f\x92\x3e\xe1\xa7\x93\x2d\x83\x55\xd5\x0b\x27\x5a\x06\x2b\xa5\x76\x88\x89\x47\x8d\x27\x1e\xe8\x9f\x3c\x8c\x62\x9a\x2e\x3d\xd0\x04\xd9\x54\x12\xdb\x98\xc4\xa5\x12\xc8\x23\x29\xd8\x2a\xb4\xfc\x89\x16\x44\x8f\x62\x0e\xae\x28\x6f\x4a\x9a\x4c\x76\x4b\x6f\x45\xed\xd2\x66\x2c\x86\x37\xaa\x4e\x06\x3e\x90\xc2\x12\x56\x19\xa8\x8e\x4c\x01\xf7\x2b\xf5\xee\x67\x02\x2b\x5a\xf2\x6c\xb1\x5c\x59\x1e\x17\xf0\x0e\x5c\xd4\x84\x45\xfe\x35\xa3\xbf\x5c\x91\x80\xff\x17\x53\xe3\x49\x2c\xdc\x62\xb1\xaa\x28\xcc\x96\x71\x6d\xd8\x8d\x27\x3b\x18\xe2\x1d\x46\x36\x4d\x97\x3b\x18\xe2\x48\x6e\x61\x99\xdb\x8a\x94\x63\x48\x44\x46\x2a\x49\x9c\x6d\xdc\x1c\xc0\xa0\x18\xb4\xfb\x75\xbe\x02\xa6\x48\x73\x7a\xd9\x06\xd8\x62\x4f\x2c\xcf\xd9\x42\x5d\x0e\x52\x08\xea\x70\x26\x02\x0f\xa2\x6a\x97\x12\x16\x3d\xd0\xab\x67\x61\x58\x74\xec\xf6\xeb\x3a\xe6\xfc\xa7\x1d\x13\x46\x81\xaf\xdb\x86\xdb\x7f\x75\x1b\x8a\x4d\x58\xba\x1a\x92\x50\x6c\x42\xf0\x13\xe0\xeb\x22\x15\xeb\x22\xa6\xb6\x58\x17\x6d\xfb\x6e\x47\x6c\xac\xeb\xd2\x5d\x20\x7e\x78\x3f\x41\xae\xd1\xaa\xfa\x3e\xf0\xd1\x71\xdd\x81\x2b\xe7\x6f\x54\x1f\x36\xbe\x61\xce\xb0\x8c\x92\x9c\x2d\xde\x5a\x37\xc5\xf5\x59\x89\xbf\xe0\xd9\xc4\x90\x1c\x75\x0e\xe4\x69\x65\x20\x4b\xc7\xa3\xca\x45\xaa\x18\x93\xb4\xfa\x33\xac\xfe\x14\xa3\x14\xc3\x28\x89\xf4\xe9\x34\x5a\xee\x56\x64\x4d\x03\xfe\xe1\xd3\x75\x8e\x76\x4b\xbd\x7c\x37\xb9\xc4\xd5\x75\x57\x1d\xc0\x08\x63\xb2\xa1\xdb\x32\xcf\x3a\xdf\x86\xd5\x3c\xeb\x97\x30\x05\xf5\xdc\xeb\x61\xf5\x99\x8f\x8f\x12\xe4\x92\x35\xb9\x22\x97\xc4\x21\x5b\x92\x95\xaf\x78\x4b\x2e\xc8\x35\x35\xc8\x39\x35\x9e\x5c\x3f\xdd\x3c\x39\x39\xb9\xe6\xdc\xe6\x2d\xbd\x5a\x5e\xaf\x04\x37\x7f\xfd\x03\x3d\xd7\x75\x74\x4e\xaf\x4f\x4c\xfc\xe4\x18\x5d\xd0\xcb\xe5\x39\x9f\xf6\x93\x93\xf3\xa7\x9b\x27\xf8\xc9\xad\x34\x08\x5d\xc8\xac\x29\xd2\x5d\x11\x89\x31\xdb\x32\x64\xf3\x57\xe9\x5f\xb0\x28\x63\x09\x4d\x39\xd5\x60\x37\x41\x46\x43\x62\x1f\x08\x3c\x6c\xb1\xfc\xc9\xaa\x62\xda\x00\x68\xbf\x57\xe7\x10\x44\xa1\x0b\xdc\x58\x47\x1c\xf3\x83\xe8\x6e\x82\xec\xeb\xb0\xf1\x53\xbf\x76\xb9\xa3\xd0\x11\x72\x50\xe8\x18\xc2\x72\x7d\x71\x49\x07\x9e\xde\x04\x19\x2a\x97\x7c\x87\xb3\x24\x67\x61\x23\x29\x96\x23\x76\xa2\x69\x58\xa6\x88\xce\x74\x1d\x05\x94\xf3\x7e\xe2\x09\xa5\xc9\x22\xce\x55\x3f\xd8\x4a\xf8\x12\x8b\x74\x3d\x58\x44\xfd\x0d\x4b\x2e\x19\x0a\xb0\x70\xb5\x44\x90\xaa\x0e\x9e\x55\xe8\x06\xa4\xd5\x67\x8f\x82\x28\xcd\x38\x4f\x1a\xfb\x8f\xb6\x0c\xe3\x6c\x9d\xc4\xd7\x30\x30\xa7\x49\x12\x27\x48\x0b\xa2\x2b\x3b\x0c\xbc\x47\x80\x40\xbb\x87\x9e\xb0\xe2\x7b\x54\xd2\x96\x80\x26\xa5\x5f\x56\x71\xd5\x14\xf2\x1b\x55\x6f\x21\x12\x61\x02\x89\xc1\x04\x92\xb7\x11\x92\x1d\xd8\x42\x88\x4b\x13\xfe\xe1\xd1\x5d\x69\x16\xb2\x73\x53\x4a\x6e\x10\x92\x5e\x70\x1e\x78\xc1\xa1\x90\xee\x96\xfe\x6a\xbf\x77\x97\x3e\x9c\x52\xeb\xa5\xbf\xa2\x61\x61\xa8\x8a\xa0\x21\xc0\xc1\x5b\xa8\x51\x22\xbb\xe3\x64\x0f\xe2\xa8\xc3\x1e\x7d\x20\x30\xd8\x6a\x69\xfe\x16\xac\x3a\x52\x19\x97\x7e\x13\xd5\xf1\x2b\x7b\x9a\x3c\xa9\xc5\x5c\xce\x54\x07\xc7\x9e\x49\x6c\x1a\x2c\xe3\xd5\x93\x5e\x2f\x06\xb7\x6a\x90\xfb\x62\xc1\xe0\xe8\xfa\xe8\xff\x46\x7d\x37\xde\xf0\xce\xe6\x2a\xf8\x77\x71\x1a\x40\x37\x38\xbd\xb5\x3b\x75\x35\x11\xb1\x61\x22\x8a\x65\x29\x5e\x25\x8d\x93\x2a\xab\x57\xaa\x95\x90\x2a\x05\x67\xba\x9e\x2c\x18\xca\x4a\xfa\x94\x94\x4c\x93\x75\x9c\xf5\x8e\x93\x03\xdb\xef\x11\xa3\xe7\xe5\xc2\x49\xaa\xc3\x11\x95\x2b\xa4\x71\x6b\x95\xb3\x25\x51\xe9\x3c\x9b\xf3\x25\x49\x83\x2f\xe1\x83\x51\x65\x07\x5d\x6a\x3c\x71\x81\x57\x71\x05\xaf\xe2\xc2\x68\xed\x96\x2e\x30\x72\x3b\xe1\xc5\x57\x46\xab\x93\x13\x1f\xd4\x26\x3e\xdf\x42\x07\xc2\xc9\x71\xf3\x22\x54\x71\x12\x2d\x8d\x62\x0d\xa9\xcf\x04\x05\xc8\xb9\x38\x91\x52\xb3\x74\x2e\x17\xa3\xcd\x45\x8d\xb4\x65\x59\xd5\x4e\x33\x2c\x20\xbf\x6a\x85\x19\xea\x02\xcb\xe0\x30\xcf\xca\x15\x26\xd6\x57\x40\x0d\x12\xd3\x28\x87\x0a\x60\xef\x05\x79\xde\x38\x7e\xb6\x1f\x05\x3e\x2a\x12\x82\xda\x07\x55\x53\x47\xd2\xe0\x9f\x4a\x57\x42\x96\x3d\x62\xd4\x50\x7c\xe3\xb3\x47\xb1\x0f\xeb\x09\x9f\x9c\x94\xf9\x98\x0f\x84\x6d\xb6\xd9\x6d\xf3\x75\x8f\x85\x1e\x2c\xf6\xc0\x7b\x91\xd9\xee\xba\xba\x02\xbb\xc8\x8e\xa1\x90\x9b\xc2\x65\x3a\x87\x0e\x20\x72\x79\xb2\x92\x7e\x8d\x71\x5d\x85\x82\x02\x1a\x2f\x6d\x85\x5b\x09\x48\x50\x2e\x66\x9b\xc4\xb5\x8d\x61\x67\x59\xd2\x7a\xbb\x14\x7c\x73\xf8\x70\xd5\x38\x93\xa7\x83\xca\xc9\x20\x5e\xaf\xd0\xc2\x49\x27\x9e\xa8\x62\x56\x78\x73\x86\x12\x69\x8d\x4b\x72\x93\x5d\x15\x02\x25\x65\x3e\x6c\x38\x59\x6c\x77\x8d\x50\x2e\x0b\xe4\x58\xdf\x59\xaf\xdb\x7c\xe6\x4b\x80\xf7\xd6\x67\x2b\xff\xfe\xc2\x7a\x86\xe1\x4a\x0c\x27\x75\xd9\x6d\xc8\x1a\xe7\x5b\x87\xef\xfc\x0f\xe6\xa2\xa5\x0f\x3f\xb6\xb7\xfc\xca\x7a\x83\x01\x5f\x7e\x80\x69\x9a\x95\x60\x6c\xfd\x86\x94\xd1\x81\x8b\x94\x5b\x69\xba\x6a\xf7\xdd\xf8\xba\x4e\xfc\xd4\xde\x89\x3f\xac\x7f\xb0\x08\xe6\x60\x29\xad\x2e\xd9\xea\x40\x40\xc2\x67\x5e\xeb\x0c\x3f\x17\xa7\x71\xd7\x24\x97\x9b\xeb\xa5\xfa\x32\x38\x57\x76\x26\x25\xb9\xe7\x3b\x8d\xb3\x53\xc7\x22\xa3\x9a\x1d\x44\x29\x4a\x96\xc1\x0a\xcb\xad\x76\x9c\xe7\xb0\x3e\x36\x5a\xa6\xb9\xf5\x9d\x3e\x59\xd9\xe2\x3b\xeb\xe7\x62\x0a\x33\x76\x93\xb5\x49\x22\xcd\x34\xcb\x05\xe2\x5c\x82\xf9\xd5\x6a\x97\x41\x7e\xb1\x7e\xc7\x22\x23\x73\xf9\x76\xaa\xd5\xe4\x40\xc0\x97\xf1\x3f\x6b\xf4\xcf\x8e\x46\x19\xb3\xfe\x6a\xb6\x5a\x18\x3f\x0e\x24\xb1\x83\x94\x75\xb9\x88\x41\x13\x19\x5f\x4e\x61\x7c\xdd\xca\x4f\x96\x60\x09\x07\x13\x6c\x57\x8b\x26\xa9\x43\x2a\x0b\x4b\x8f\xbc\x8a\x98\xda\xe2\x37\x2a\xb4\x9f\xaa\xb5\xa5\x4b\xa9\x86\x0b\xf7\xa5\xd6\x75\x78\x4f\x57\xb8\x24\x27\xd7\x7e\xc4\xda\x17\x7f\x66\xb9\x28\xfb\xa6\x3e\x57\xf8\x85\xa4\xe3\x96\x54\xd4\xfe\x5c\xb0\xfe\xe2\x95\xea\x5a\xba\x96\x39\x08\xe4\x15\xed\x88\x3d\xa4\x07\x60\x0b\x9b\x59\x31\x13\x12\xe2\x6e\xf3\xf5\xab\x2e\xa7\x2b\x8a\xe6\x87\xb0\xea\xea\x2a\x9c\x68\x48\xdc\xc1\xe5\xc3\xa5\x8e\x94\x49\xf6\xdc\x2e\x8e\x95\x23\x60\xa9\x5b\xa8\x83\x20\x0f\x29\xcd\x16\x3b\x66\x85\x8c\x44\xd4\x78\x12\xc1\xb5\xa0\x08\x97\xaf\x9f\xa2\x18\xe2\x61\x10\xc5\x67\x1e\x8e\x1d\x71\x59\xa4\xda\x47\x61\x5a\xa9\xb2\xca\x06\x71\x0b\xa6\xe8\xc9\xee\xa9\x0b\xa2\xa6\xb8\x09\x68\x70\x7e\x69\xb9\x5b\x15\xcd\x8a\x0b\x2d\xbc\xc1\xc2\x78\x10\x4a\xe3\x41\x90\x1b\x0f\xc2\x8a\xf1\x20\x14\xaa\xfc\x03\xc9\x75\xd1\xf7\xf8\xd5\xdd\x43\xaa\xd6\xcc\xf2\x98\x24\xc0\x07\xb2\x3c\xbb\xdd\x38\x71\xd8\x0f\x32\x96\xd8\x59\x9c\xac\x0a\xa4\xdf\xff\xe7\xfc\x4d\xc9\x41\x1b\x9c\x71\xae\x5f\xc4\x52\x98\xe7\xdb\x80\x85\xde\xa3\x28\x77\xb4\xbb\x62\x74\xc3\xc8\x65\xdb\x7d\x37\x2d\xcd\x92\x20\xba\x54\x37\x5d\x53\xc9\x5a\xf7\x02\x5c\xad\x48\xb7\x06\x56\x44\x66\x02\x04\x4c\xaa\x63\x89\xd3\x7a\xd5\xee\x92\x21\xbe\xbd\x05\x87\xd2\x85\x8f\x8f\xe6\x2d\x70\x60\x39\xaf\x7e\x51\x53\x08\x5f\x2b\x76\xc5\xeb\xc2\xb8\x7b\x41\xb5\xff\x9f\x76\x82\x4e\x4e\x6e\x19\xee\x67\xf1\x19\xbc\x26\x1a\x4e\xf0\xe1\x5a\xd5\x07\x5f\x74\x2a\x87\xaf\xf9\x88\x65\xf7\x32\x6b\x4f\x8e\x51\xf6\x28\x88\x1e\x31\x2c\x0e\x3e\xf0\x11\x2f\x65\x92\xfc\xe0\x2b\x98\xc4\x65\xb6\xe2\x12\x57\x9d\x00\x96\xc5\x80\x75\x45\xb3\x56\xe5\x7f\x45\xe5\x0e\xcd\xea\x7a\x9e\xce\x3b\xaf\x7a\x20\xf9\xab\x76\x51\xa4\x8b\xdc\xf9\xb2\x3a\x25\x9c\xcf\xcd\x84\x10\x09\xd6\x53\xc8\x85\x0f\x56\x99\x27\x98\x95\x37\x5d\xd9\x81\xdc\xd4\x33\xd7\x42\xa0\xb7\x53\x48\xff\x53\xa6\x7f\x95\x56\x58\x77\x97\xf0\xd1\x38\x87\x14\xf9\xb8\xa4\xf6\x99\xf0\xac\x3a\xfb\xf0\xb3\x9c\xe6\xfd\x3e\x83\x00\x0b\xd2\xf4\x74\xf6\xe1\xe7\x77\x65\xb0\x38\x2e\x4b\x55\x9f\x2b\x0a\x87\xfe\x0d\x6f\x27\x0c\x58\x94\xfd\x49\xa2\xfe\x6d\xf1\xeb\x13\x59\xa2\x88\x46\xfd\x8d\x9d\x25\xc1\xcd\x79\x62\x47\xa9\x1f\x27\x1b\x94\x71\xa6\xf3\xcc\x4d\x18\x8b\x5e\x9c\xbf\x86\x73\x57\xde\xc6\xc1\xb8\x7f\xc3\x51\xac\x0e\x81\x2f\xc0\x9e\xc7\xbb\xc8\x0b\xa2\xcb\x17\x80\xf1\x3d\x73\x65\x8f\x02\xda\x51\x5c\x74\x6c\x59\x74\xaa\xc7\x77\xaa\x9f\xf5\x32\xf9\xe0\x37\xe6\x67\xa4\xe8\x64\x2f\xe8\x67\xf1\xb6\x28\x3c\x8f\xb7\xab\x5c\xa7\xb4\xe4\x8b\xe9\x92\xfd\x49\xc4\xe7\xa7\xd5\x81\xbc\xad\x0f\x7e\x69\x42\x87\x21\x16\x7a\xbd\xaf\x9a\x0b\xbe\x56\xb3\x78\xe7\xae\x59\xba\xdf\x2f\xd9\x0a\x13\xd5\xb3\x9d\x30\xfa\xc3\x0d\xcb\xc9\xd9\xd9\x37\x92\x8e\x76\xca\x21\x9c\x7f\xbf\x8e\x76\xe4\x1c\x14\x58\x00\x78\x25\x9f\x3d\x78\x59\xaa\x74\xc0\x50\xef\xba\xdd\x3f\x4d\x77\xd7\x81\x97\xad\xad\xac\x0f\x9f\x64\xcd\x82\xcb\x75\x66\x65\x7d\xf1\x85\x64\xf1\xd6\xca\xf8\x04\x91\x44\x16\xc0\x27\x71\xe2\x2c\x8b\x37\x56\xd6\x17\x5f\x08\x9f\x60\x2b\x83\x79\x26\x37\xf9\x97\x5b\x51\x55\x31\x4e\x06\x52\x41\x25\xdf\x2e\x3f\x82\xc4\xbd\x1c\xbe\xfe\xb5\xa5\xb8\x80\xf0\xe8\x23\x3c\x5a\x69\xc2\x4d\x20\x27\x5f\xb8\x7c\xad\x8a\x67\xe2\x51\xa9\xb8\xa8\x79\x29\x0a\xd4\x45\x6e\x67\xc5\x9f\xa4\x1c\xa3\xa0\x64\xf7\xee\x52\x37\x89\xc3\xf0\x37\xf1\x3a\xb0\xfa\xde\xc2\x7d\x63\x22\x0a\xce\x61\x3c\x60\x35\x8a\xe7\xca\xcb\xa9\x77\x5b\x2a\xfa\x37\x8e\xbf\x5f\xec\xf3\x4a\x91\x7c\xda\x7e\xef\xa4\x89\x84\x33\xc7\xed\x88\x94\x12\xc5\x99\x43\x59\xac\xbb\xc8\x63\x7e\x10\x31\xaf\xd4\x82\x9f\xad\x6d\x2f\xbe\x7e\x1f\xc7\xb0\x6d\x1a\x8d\x95\xc5\xb5\xb6\xca\x02\xc5\x5e\xbd\x53\x3b\xbe\x40\x0c\x58\x9a\x37\xf6\x86\x81\x17\x5d\x3f\x8b\x7f\xe3\xbc\xfa\x0b\x9b\xd3\x19\xab\xea\x15\xe4\x96\x55\x11\xe2\xa3\xb8\xa8\x4d\xaf\x55\xfa\x9a\xe2\x7c\x4a\xcb\x27\xf5\x5d\xa4\xd8\xd0\xd5\x4b\x13\x08\xcc\x97\xb0\x32\x4f\x62\xb8\xef\x59\x4c\xb5\x62\x3d\x57\x6a\x04\xed\x7e\x98\xca\x3b\xfb\xe5\x1a\x02\x53\x37\xd0\xf5\x2b\x96\xf8\x61\x7c\x0d\xea\x8b\xfc\xc7\x9f\xe0\xdf\x97\xff\xfa\x24\x17\xdb\x63\x7b\x97\xc5\x7b\xd1\x8d\x3d\x2f\x0c\xed\xdb\xfd\x3a\xf0\x3c\x16\x3d\xee\x67\x2c\xcd\x50\x72\x12\x9c\x44\x4a\x83\xdb\x82\x5f\xcd\x89\x5b\xa2\xeb\x28\xa1\xc7\xa6\xb0\x88\xd8\x24\x24\x6b\xca\x45\x01\xb2\xa5\x9c\x0a\x90\x0d\x4d\xf9\xaf\x2b\xaa\xae\x6c\x43\x59\xcd\xc6\x81\x5c\xd2\xbb\x1b\xcb\x20\xb7\x96\x71\xc8\xef\x21\x6d\xf6\xfb\xe3\x8d\xae\x1f\x27\x9c\x9b\x42\x9a\x13\x7b\xb7\x7c\x2b\xee\xc0\x41\xd5\x47\x6b\xb0\xb2\x5e\x51\x64\xd3\x0c\x1f\x53\x1a\x80\x3e\x32\x45\x36\x5e\xa8\xed\xa0\x90\xda\xea\x38\x2b\xcd\x86\xfd\xe2\xfb\xc1\x8a\x91\x8d\x31\xe1\x1d\x5d\x20\x74\x49\x23\x94\xf1\x93\xe8\x84\x56\x4e\x8c\xcb\xfe\x6d\xf9\xe4\x3c\xde\x62\x6b\xad\xeb\xe8\xb2\x7f\x43\x3d\xde\x1f\x4c\xee\x6e\xac\xad\x98\xde\x2b\xa5\xcd\xde\x65\xff\x86\xdc\x5a\x5b\x4e\x89\x8a\x82\xf3\x78\xdb\xbb\xec\xdf\x12\x41\xfc\xb6\x55\xe2\xb7\x95\xc4\x4f\xd9\xda\x9b\x72\xa2\x23\x31\xd1\x4c\xc6\x21\xf8\x08\x35\x83\xe2\xf7\x4b\xa8\x9a\xd3\xa3\x22\xc0\xa2\xa4\xaf\xbd\x04\x3f\xa5\x26\x4c\x99\x7c\xa2\xc4\x64\xcc\x89\x6e\x2f\x90\x40\x7c\xcd\x88\x47\xf0\x72\x79\x13\xbf\x09\xda\x9a\xff\x3c\x8f\xb7\xf2\x3d\x92\xfc\x0d\x02\xa5\xeb\x57\x0a\x0d\x80\x0b\x8c\x94\x4f\x23\xdf\x63\x16\xeb\xdb\x69\x1a\x5c\x46\xcc\x3b\x0b\x61\x93\x2b\xbc\xdb\x7e\x0f\xbc\xe9\x82\xf5\xd7\x71\x9a\xc1\x86\xc5\xfb\xbd\x5b\x59\xfe\x97\x8a\xfc\x7a\x54\x3b\x6e\x97\xab\xfc\x3a\x65\xe9\x16\x59\x5e\xb7\x5a\x8a\xae\x10\xb1\xb0\x88\xf6\xbf\xf2\x2d\xac\xad\x0a\x37\x0a\xbe\xd6\xf0\x0f\xd4\x58\x64\x35\x2f\x74\x5e\xc7\xe2\x8b\x45\xd7\x7d\xbe\x64\x32\x8b\xa1\x2b\x0e\x7c\xe0\x53\x13\xd3\x88\x52\x2a\x4f\x18\x08\x3a\x50\xa9\x8d\x17\xa2\xa3\x56\x02\x78\xb8\x98\x17\xa0\x08\x93\x90\xc6\x8b\xa5\xbd\xca\x2f\x30\xdb\xfd\xab\x20\xdd\xd9\x21\x3f\x44\xb6\x71\x92\xed\xf7\xcb\x15\xf1\x51\x84\x17\x91\xb5\xe4\xc7\x34\x71\xf9\x5a\xcc\x6f\x3b\xe7\xf3\x1d\x2f\x5c\xcb\xcd\x1f\x5f\xa2\x2b\x14\x62\xd5\xb9\xce\x29\xe7\x62\xa9\x65\xb6\x13\x32\x8d\x68\x99\xc7\xff\x5b\x57\xde\x9c\xc1\x9b\x97\x15\x6f\x15\xb2\xc4\x4f\x08\x5d\xd7\xfc\xe0\x06\x68\x39\x50\x9e\xfe\x56\xda\x05\x16\xf9\xaa\x78\x07\x33\x59\x23\xb4\x17\x55\x26\x3e\x10\x4b\x99\x23\x7f\x92\xe8\xba\x83\xf8\x6e\xd7\xd2\xcc\xce\x02\x97\x2f\x93\x35\x4a\x4a\xcc\x4f\x30\x87\x2c\xef\xd7\x73\xc2\xa3\x2c\xa8\x04\xef\xf7\x62\x36\xe5\xcf\x6e\x4c\x7c\xc6\x92\xfd\xbe\x5d\xb0\xe8\x99\xc7\x94\x46\xf6\x55\x70\xc9\xc5\xc6\xfe\x2e\x65\xc9\xb3\x4b\x3e\xeb\x95\x03\xa4\x74\x7e\xf4\x83\x84\xf9\xf1\x8d\xc6\x5f\x84\x2f\xf5\x27\x29\xb4\x5d\x5d\x60\xea\xd0\x26\x18\x3f\x35\x9e\xe4\x7c\x35\xef\x18\xf0\x1d\x51\x1c\x31\x3e\x9a\x51\x3f\xcb\x19\xe5\xfd\x5e\x79\xba\x65\x49\xba\x65\x6e\x16\x5c\xf1\x03\x6d\x6b\x07\x51\xc6\x5f\xac\x50\xf5\xed\xf7\xd0\xf3\xa5\x56\x54\xd7\x88\xa6\x54\x52\xfa\x10\xf5\xaf\x83\x30\x7c\xb1\xb6\xa3\x4b\x86\xf7\xfb\x0c\x26\x33\xcc\x58\x22\x10\x96\x85\x50\x16\xc9\x0b\x83\xba\xae\xf4\x46\x3c\xca\xd9\xa7\xe4\x28\xa1\x89\xb2\x77\x2b\x1a\x7d\x04\x6d\x1c\xaa\x17\xe9\xed\x28\xd8\xd8\x19\xfb\x29\xe8\xb8\x5a\xfd\x7b\xe3\x36\x3d\x3b\x0b\xa2\xcb\x90\x65\x1d\x37\xbc\x7f\x56\x2b\x70\xa1\xec\xb2\xeb\xa2\xfe\xaf\x2a\xa4\x1f\x87\x61\x7c\xfd\x62\x97\xa4\x1d\xf7\xc1\x59\xa6\x40\xaf\x03\x8f\x75\x5d\x06\xff\xa8\xa2\x0d\xa2\x30\x88\x58\x6e\x2b\xe3\x3c\x7a\x5b\x95\x4c\xc5\x9d\x70\x16\xf9\x59\x92\x74\x5c\x0f\x8f\x2b\x37\xd8\xb3\xc0\xfd\x7c\xdb\x0a\x97\x64\xf9\x3d\xf2\x6b\xaa\x65\xf1\x56\x23\xa7\x54\x13\x3c\xb2\x46\x6e\xa8\x06\xdc\xb3\x46\xde\x52\x8d\x1f\x54\x1a\x39\xa3\xcb\x6b\x72\x4a\x6e\xc8\xdb\x15\x39\xa7\x67\xfd\x84\x79\x3b\x97\x55\xa2\x50\xa8\x42\x8e\xa4\x2c\xcb\xec\x44\xeb\xa5\x99\x9d\x64\x1a\xe1\x5f\x59\xe4\x69\x2b\x7c\xc0\x64\xb9\xc2\xe4\x35\x5d\x16\x64\xec\x8c\x2c\x35\xce\x64\x68\x2b\xfc\xd5\xa8\xc9\x7d\xc8\xdf\xd1\xa5\xe6\x80\xce\xf0\x3d\xb3\x39\xe1\x4a\xc4\x87\xed\x67\x2c\x91\x8f\x44\xf9\x6b\x3b\x88\x34\xa2\x6d\xc4\x07\x94\xcb\x47\xa2\xfc\x63\x12\xf0\x15\xa2\x5d\xcb\x4f\x80\x10\x0f\x57\x30\x80\xcf\xe8\xdd\x36\xb4\x5d\x60\xe9\xac\x62\x0c\x37\xb1\x17\xf8\x01\x4b\x52\x6b\xb9\x22\x69\x96\xd8\x19\xbb\xbc\xb5\x34\xdb\x49\xe3\x70\x97\x31\x4d\xb9\x79\xf4\xa2\xa2\x69\xaa\xab\xef\x48\xa6\x18\x16\x81\x0e\x1a\x4f\x92\xa7\xec\x49\x72\x72\x82\xb3\x65\xb2\x52\x4c\x80\x49\x6e\x02\x3c\xce\xfa\x69\xbc\x61\x55\xa7\x6c\x59\x84\x18\xdf\xc7\x4d\x1d\x6e\x87\x14\x7d\xc0\x22\x44\xd8\x67\x7a\xb7\xe5\xa7\xf0\x15\xb3\x8e\x8d\x03\x79\x4f\xef\xc0\x3d\x56\x63\xaa\x37\x6d\xaa\x11\x16\xf1\xe3\xc2\xb3\x8e\x0d\xb2\x5d\xdb\x29\xb3\xf2\x81\xf3\x2b\x96\xeb\x03\x61\xbe\x5f\x77\xe8\xcb\x45\x26\x4e\x8f\x99\xf4\x1d\x17\xcc\x3c\x84\x0d\x91\x0e\xb7\x60\x34\x14\xec\x11\xb1\x69\x71\x9c\xc7\xfb\x7d\x4c\x52\x1a\xf5\x13\x96\x06\xff\x30\x12\x96\x45\xe9\x7e\x9f\x92\x1d\x0d\x50\xd6\x67\x82\xf5\x4e\xfb\xdb\x78\xbb\x65\x09\x26\xae\xb2\x0a\x33\x89\x56\x9c\x49\x69\x3f\x61\x3e\x4b\x18\x6f\xbe\x5e\x22\x6b\x17\x16\x57\x5d\x77\xfb\x7e\x9c\x9c\x82\xda\xb1\xe2\x7a\xd7\xf4\x38\xd6\x04\x2a\x8d\x24\xfd\xdd\xd6\xe3\x6f\xfa\x99\x8f\x32\x09\x75\x7d\xd7\x02\x2d\x5e\xa7\x02\x4d\x94\x81\xbc\xaf\xe9\x36\x4f\xeb\x7b\x5b\x6f\xad\xd0\xd2\x81\x83\xf4\x8c\xba\x53\x6f\xfc\xfe\x5d\xb9\x29\x20\xae\x08\x68\x3d\x0d\x2f\x0d\x25\xb0\xda\x8f\x5d\x40\xe6\xaa\x72\x99\x4e\x61\x3f\x38\x71\xca\xb7\xd5\xaa\xea\xbc\xba\xd0\x6e\x34\x4b\xbb\xd5\x2a\x97\xe8\x8a\x58\x33\x94\x29\x33\xc8\x17\x90\x9c\x7c\xe0\x82\x8b\x2d\x4b\x62\x1a\x2c\xfe\x46\x81\x10\xf6\x38\x9b\xb5\xf8\xb1\xf8\x95\xd2\xa4\x7f\x73\x92\x08\x16\xf8\xf1\xa0\x17\xe5\xdf\x48\x48\x93\xfe\xed\x49\x22\xf9\x5e\x28\xca\xbf\x1e\xc9\xa8\x88\xb1\x8c\x80\x78\x6d\x65\x5c\x70\x49\xc9\xad\x95\xf4\x6f\x0b\xc0\x83\x1a\xcb\xf0\xb4\x02\x53\xe0\xad\xc0\xdc\x08\x18\xa5\x47\xe4\xd6\x0a\x2b\x20\x6f\x0b\x90\xbc\xab\x2a\x48\x91\x22\x5d\xc2\x88\xc6\xc4\x45\xcb\x1d\x8d\x17\x6f\x50\x2c\xde\xfb\x48\xaa\x3e\x8e\x69\xe1\x2a\xa6\x09\x86\x69\xa1\x89\x8e\x69\x96\x06\xe8\xb5\xfc\x65\x6d\xf1\xb2\x9a\x20\xc8\x56\xb6\xdc\xad\x28\xff\xaf\x87\x92\xa5\xbb\xe2\xe3\x03\x1f\x6a\x00\x47\x8d\x53\xec\x12\xf2\xa4\x06\x79\x28\x8c\x8f\xd0\xc1\xdf\x72\x8a\x23\xf6\x9e\xd0\x6a\xb4\x12\x1c\x41\xea\xfd\xe8\x01\xda\xc2\xb1\x1d\x65\xfd\x82\x50\xff\x68\x67\x36\xa7\xa7\xaf\xd0\x5d\xb1\x6c\xac\xac\x9f\x30\xb7\x42\x0a\xe4\x22\x2a\x4a\x44\x77\xda\x48\x3c\x29\x8f\x85\xac\x5c\x6f\x07\x5c\x6e\x1e\xf2\x93\xf4\x49\xb2\x6f\xc8\x3f\x85\x7b\x12\xf9\x43\x7c\x85\xa3\x9e\x3c\xa7\x77\x59\xbc\xb5\xc4\xf1\x28\xb5\x5b\xf2\x87\x54\x6e\xc9\x5f\xa0\xda\x12\xdf\x95\x5d\xf9\xb2\xba\x21\x64\x6f\xa3\xe2\x2b\x27\xf2\x10\xe2\xbe\xdc\x10\x76\x21\x24\xa6\x24\x05\x40\xc1\x9f\x90\x90\xb2\xfe\xe5\x76\xf7\xcc\x75\x59\xc8\x12\x1b\x9e\xed\x28\x27\x71\xf6\x96\xf3\x8e\xc4\xe3\x5b\x8e\xf7\x5a\xce\x0e\xf1\xe9\x31\x27\xc0\xde\xa2\x6d\x2a\x6e\xa0\x47\xb7\x24\xa2\xb9\xa6\x84\x5d\x05\x2e\x7b\x17\xdc\xb0\xf0\x3d\xc7\xbe\xdf\xe7\x96\xe8\xbb\x1b\xeb\x0f\xf4\x07\xca\xbe\x8f\xf0\xe3\x08\xef\xf7\x06\xb9\x85\x07\x49\xf1\xe0\x70\x40\x36\x6e\xb3\x39\x7a\x0b\x8f\x97\xd8\x64\x4b\xfd\xfe\x0d\xd9\x94\xc7\xc2\x76\x61\x58\x5b\x72\x45\xfd\xfe\x2d\xb9\x2c\x1f\x5f\x2d\x0c\xeb\x8a\x38\xd4\xae\xc7\x8d\xd1\x38\xf7\x7e\xdb\xf2\xfc\x56\xc3\xe4\x8c\xbe\x25\xe7\xf4\x9a\xbc\xa6\xa5\x92\x50\x6e\x9e\x77\xf4\x02\x25\x98\x3c\xa3\x9a\xd0\x09\x08\xd1\x5b\x23\x2f\xf2\x07\x1f\xc5\x4e\x7a\x47\x29\x0d\x2a\x12\x09\x48\x4d\xef\xa8\xcb\x85\x81\x62\x1a\x74\x1d\x3d\xa3\x92\x8c\x2b\xa8\xc4\x03\x81\x8a\xf3\x3f\xef\x48\x4c\x29\xbd\x06\x1f\xc9\x53\x72\xd9\xa3\xef\x96\xcf\x56\x05\xf1\x21\x97\xdf\xd3\x70\x61\x5a\x3d\x13\x03\xdc\x5b\x5d\x47\x67\xf4\x86\x6c\x38\xdc\x8b\x55\x41\x3d\x36\x05\x98\xe0\x02\xc8\xfb\x3c\xaa\xb6\x10\xc9\xd1\x5d\xde\x2d\x2b\x3d\x90\x9d\xae\x3f\x2f\x0e\xc5\x70\x51\x83\x3c\x90\xf7\x04\xa1\xcf\xf4\xee\x80\x97\xe7\x2b\x7a\xbb\xd0\x0c\xcd\xd2\x34\xf2\x79\x79\xb6\xa2\x4e\xf1\xab\x14\x6c\x28\x7a\xdd\xb6\x26\xf0\xd3\xc1\x42\x88\x2f\xa1\x9d\x31\xa4\x9d\x6c\x4e\xb4\xed\x0d\x79\xa4\x9d\x5c\xf2\x2f\x58\xb3\xca\xd2\xa1\xd7\x28\x27\x8f\x0c\xac\x91\xcf\x18\x5b\xad\xfd\xcb\xca\xfe\x01\x38\x74\x2a\x13\x5d\xdc\x94\x0f\x94\x5e\xf2\x9f\x92\x4b\xfa\x90\x13\x29\x30\x47\x83\x22\xee\x6b\x79\xa2\x3a\x8d\x3a\x92\xbd\xfb\xcc\x6e\x53\x85\x71\xc1\xed\x87\x7d\x6e\xad\x01\xdf\x99\x74\xc9\x56\xfb\xfd\xdd\x01\x54\x7b\x76\xee\xb5\x53\x3c\x0d\x68\x89\x6e\xc9\x56\x47\x29\x0a\xb0\xae\xef\xe0\x7f\x54\x1d\x93\x40\x20\x24\x09\x26\x6a\x77\xa2\x7b\x7a\x91\xd1\x88\x23\x3d\x86\xb0\xc4\x8b\xa0\x2d\x10\x41\x50\x8f\x42\x00\x44\x42\x5c\x21\xe5\xcc\x88\x30\xd8\x7f\x05\x83\x78\x27\x68\x98\x55\x2e\xc2\x2c\xe7\x12\xfb\x39\x41\x96\x74\xd1\xd0\xc0\x46\xc0\x3f\x37\x76\x72\x19\x44\xfc\xeb\x81\xd8\x5c\x92\x52\xea\x2b\x0c\x3a\x29\x4f\x01\xce\xe7\xc8\x55\x5d\x1d\x9f\x06\x43\x99\x8f\x57\xc1\x5f\xe6\x53\x42\x13\xa2\x00\x43\xb3\xba\xde\x89\x0c\xca\x0b\x5c\xf0\xab\xc2\xf5\x7d\xf3\xda\x88\xaa\x73\x0e\x6b\xa0\xb9\x32\x62\x5a\x45\x2c\xba\x5e\xa7\x77\x0c\x2f\x94\x85\x66\x25\x4b\xf6\xa0\xd4\xb6\xcc\x56\x7c\x9b\xb0\x03\x26\x77\x07\x7c\xc4\x57\x10\x5f\x71\x51\x73\xc5\x45\xf2\xad\xe3\xea\x8a\x0b\x3a\xde\x2d\x6a\x0b\x0b\x22\x57\x10\x9f\xc1\x2f\xbb\x20\x61\xa9\xb5\xd4\x5c\xa1\x1c\x97\x5b\x72\x75\x20\x5f\xe8\x9d\x58\x19\x52\xd4\x95\x27\xab\x10\x77\xf3\x93\x15\x98\x4f\x58\x37\x92\x01\x55\x4e\xd6\x8f\x15\x56\x36\x61\x70\x80\xa2\xc7\x1c\xc1\x1e\x90\xed\x45\x9d\x7d\x16\x6f\x1f\x5f\x92\x16\x59\xec\xd1\x97\x25\x5b\xe5\x02\xd6\x77\xf4\x0e\x78\x27\x0b\xd8\x22\xc2\x22\xcf\x92\xcc\x94\xd2\xe6\xcf\xed\x6d\x02\xdc\x9e\x45\x5e\x47\x3b\xdf\xc9\x76\x0a\x3c\x9f\x54\x8f\x1e\xb0\x90\xbe\x8f\x63\xd0\xc9\xe8\x7a\xe5\x27\xc2\x22\xcd\x71\xe1\x28\x96\x15\x5e\x62\x10\x2d\x36\xd1\xf5\x90\x9f\x4e\xf9\x22\x3b\xf2\x62\xb0\x9b\xe9\x3a\xeb\x07\xe9\x99\xbd\x11\x77\x92\x23\xa5\x56\x44\xa3\x8a\xfe\x36\x02\xcd\xed\xe1\x7a\x1d\x84\x1c\xf0\x90\x3b\xa1\xa9\x57\xf5\xcb\x57\x69\xd0\x6c\x46\xc4\x3c\x72\x7e\x82\xcf\x14\xe7\x28\xc4\x5c\xb2\xfe\xcd\x09\x93\xe7\x98\x9c\x50\xd6\xbf\x3d\x61\x39\x6f\x8d\x2b\x77\xfd\xcb\xe5\xaa\x5d\x49\x65\xaa\x06\x54\xe9\xd7\x16\x12\x27\x35\x92\xae\x70\x7a\xca\x6a\x4a\x58\x70\xb7\x53\x8e\x76\x62\x17\xbf\xc5\x81\x2d\x83\x20\x15\x59\x8a\x22\x88\x0b\x9a\x9f\xb9\x36\x2d\x4e\xe9\xc7\xff\x17\xa1\xc5\xb1\xbb\x4e\xe2\x0d\xdb\xdb\x91\x97\xc4\x81\x87\xfb\xf8\xfb\xd4\xf6\xed\x24\x78\x1c\x08\xeb\x4b\x8b\x1a\x12\xef\xf7\x88\x0b\xc3\x8a\x26\x3e\x2c\x7e\x9e\xc7\x5b\x8c\x89\xb4\xa8\xc6\xb9\x32\xde\x26\x37\x56\x7a\xe2\xf1\x57\xe2\x32\xc3\x01\xdc\xde\xc0\xd6\xd1\x42\xe2\x55\xc7\xb3\x7e\x16\x6f\x29\xfc\x7f\xc2\x4a\xb3\x07\x11\xc6\x55\x2a\x3e\x8a\x12\xe8\x4a\x6e\x8e\xad\xd5\x92\x83\x23\x6d\xb7\xf5\x9a\x62\x28\xa5\x39\x82\xd6\x9f\x8a\x97\xa0\x0d\x54\x37\x12\x0d\xc9\xfa\xb7\xa2\x39\x92\x1d\x50\x86\xad\x96\x69\x2d\x67\x34\x96\x97\x73\x85\x72\xbe\x61\xc6\x2d\x94\xf3\x42\xc9\x4f\x6c\xfa\x13\x4a\xfa\x0a\x07\x46\xaa\xf3\x1f\x2c\x02\xb5\xd4\x32\xe0\x89\x02\x61\x41\xba\xac\x12\x89\xec\x7e\x6d\xd5\x94\x68\xc4\x83\x0a\x9e\xfc\x11\x26\x21\xed\x45\x8a\x61\x49\x4c\xe9\xae\x7c\x78\x1e\x6f\xe5\xdc\x69\x49\x16\x0a\xb5\x77\xb0\xdf\x27\xb8\xef\x05\x89\xb8\x64\xa0\xeb\x28\x3c\x81\xfe\xd4\x5f\xa3\xda\xe9\x9e\x5d\xac\x23\x3b\x5f\x47\x29\xb9\xb1\x42\x72\x6b\xed\x0e\x07\x61\xca\xc4\x95\xf8\x18\xea\x6d\x15\xce\xff\x6e\xb7\x41\x74\x29\xf5\x2a\x62\xc3\x35\x97\xdb\x25\xba\x82\xd0\xda\x09\x5d\x2a\xe2\x95\x34\x2d\x94\x3a\x81\x8a\x85\x01\xc3\x2d\xdb\x94\x9f\x56\x17\x9c\xe9\x28\x5c\xc0\x6d\x94\xf0\x03\x4c\xa8\xa6\xdb\x54\x64\x60\x20\xd7\xf5\x4f\x10\x1e\x49\xd7\x15\xa3\x22\x9c\x2d\xd6\x72\x05\xd7\x1c\x15\xbd\x11\x86\x7b\x8c\xf9\xcf\x88\x2c\x93\x15\x67\xab\x83\xa5\xb1\x22\x21\x0d\x9a\x87\xa3\x32\x06\xbf\x43\x33\xd5\xcd\xf4\x13\x8a\xc4\x4a\xe5\xff\xe3\x62\x43\xfc\x83\x22\xe9\xd6\x20\x9f\xe0\x72\x27\xf1\x32\xe9\xe3\x90\x3f\xc3\xf9\x16\xe4\xe8\xe4\x1e\xe0\x1f\x98\x64\x07\x4c\x78\xbb\x71\xe9\xe8\x17\xca\x7d\x15\x0a\xcc\xbd\x50\xd4\x08\xf3\x8d\x15\x4a\xa4\xbd\x10\x7a\x16\xf6\x6f\x68\x01\x72\x4b\xe5\x43\x35\x56\xc9\x3d\x24\x1b\x04\x5a\x43\x52\x69\x23\xa7\xcd\x86\xe0\xd4\x8c\x03\x51\x6d\x77\x7f\x55\x9d\xfb\x3a\x86\x32\x2f\xe6\xf2\x3b\x83\xd7\xbb\x53\xc9\x3b\xcb\xd3\xc4\x55\x6d\x7f\x9c\x15\x91\x47\x20\x5c\x14\x52\x75\x42\x05\x68\xb0\x50\x64\x63\x2b\x00\x95\x90\xc3\x65\x5c\x3b\xb9\xad\x28\x19\x17\x8d\xd5\x6c\xa5\x64\x47\x93\x7e\x12\xc7\x42\xb3\xca\x6b\x78\x65\x8d\xdd\xa2\x3c\x69\xac\x1d\x59\xd3\x24\x67\xd1\x5e\x88\x54\x11\xc4\x2f\x81\xd7\x0b\xa9\xf8\xd0\xac\x35\xd9\xd2\xa4\x6f\x87\x25\xd2\x5c\xa8\x3d\xa6\x74\xab\xeb\x5c\xa6\x4d\xfa\x5b\xdb\xf3\x82\xe8\xb2\x4d\xb2\xfd\x13\x69\xd1\x6e\xe3\xb0\xa4\x74\xb1\xb8\x5c\x5c\x5a\x7f\xa1\x4b\x72\x86\xb9\x88\x9b\x37\x45\x29\xf5\x17\x5a\xc1\x07\x6b\xb9\xf2\x45\x23\x17\xa5\x3a\x4d\x55\x8e\xbc\x05\x9d\x9b\xa2\x16\x39\x57\xe0\x96\x9b\xc5\xad\xe5\xaf\xc8\x6b\xfa\x0b\xb2\xd1\x39\x5e\x9c\x5b\xe7\x7d\x99\x15\xa3\x70\x16\x71\x11\x6b\x2a\x69\x43\xe2\x71\x91\x36\x42\x17\x5c\x8c\xae\x28\x68\xde\x15\x0a\x99\xb7\x0f\xe8\x60\xe2\x03\x26\x2f\xe8\xaf\xa8\xb1\x1c\xdf\x92\x67\x18\x93\xcf\xd5\xb7\x7e\x61\xbd\x23\xef\x85\xea\xe5\x35\x38\x7e\x7d\x86\xa3\xca\x81\x85\x2e\x57\xec\xe7\x7c\x4f\xbc\x96\x5f\x4e\x9c\x8a\x9f\xd1\x6b\xe1\x4f\xf6\x59\x9c\x63\x8e\xd8\x2e\x62\xd5\x7f\x96\xdb\xec\xb5\xf8\x3c\x71\xc4\xe7\x81\xfc\x4d\x59\x55\x25\x25\xcf\x6c\x30\xfe\x29\x1d\xd4\xf5\xbf\x05\x05\xf9\x91\xfe\xbd\x8c\x57\x15\x69\xf1\xfd\xbd\xe2\xd9\xf2\x86\x9c\xd6\xf5\xa8\x5c\xc2\xe7\xd4\xf5\xba\x59\xa4\xdd\x6a\x96\x76\xa3\x1d\xbd\x5f\xb2\xd5\x09\xfd\x71\x99\xac\xbe\xcf\x38\x2f\x29\xb7\xdc\xfb\x4a\xc8\x9f\xea\x5d\x8d\x9f\x10\x23\xff\xc0\x06\xad\x86\xf5\xa9\x42\xd5\x5c\x44\x0a\x17\x0f\x2c\xe8\x04\x93\x6e\x77\xd2\xe7\x20\x51\xd8\x3b\x31\x84\x92\x23\x38\x49\xfa\x37\x25\x9b\x27\x27\x26\xaf\x76\xc2\xab\x49\x36\x51\xfa\xf8\x49\x3f\x87\xfe\xcd\xa1\x12\x10\xa8\xd4\x3c\x5f\x93\x1b\x72\x4a\xde\xae\xea\xa6\x94\xaa\x58\xf3\x03\x35\x72\x0e\x3e\xa8\x3a\xdf\x15\xef\x25\x2e\xf1\xe6\xc4\x26\xa3\x0c\xfc\x6f\xa4\x32\xf6\x75\x3e\xd7\x24\x2a\x37\x6a\xb2\x58\xae\xac\x04\x84\x34\x09\xf6\xb6\xb0\x7d\x28\x84\xe9\x99\x15\x1c\xd5\xaf\x78\xb7\xfb\xdd\xc4\xa2\xed\x00\xd2\x2f\xb4\x99\xab\xe0\x9a\x19\xf3\x5e\xab\x56\xab\x3c\xc0\x49\x63\xc3\x3c\xe3\xd2\x59\x65\x91\x5a\x9c\x11\x97\xbb\xd6\x52\x76\x27\x23\x52\x42\xcf\xc4\xdd\x25\x21\x6e\x72\x68\x21\x3f\x82\x12\x74\x47\x97\x2b\xe2\xd2\x63\x93\x78\x20\x03\x65\xcc\x0a\x49\xca\xf2\x77\x2e\x35\x00\x09\xbe\x5b\x23\x4c\xc2\x22\xca\x4b\xa3\x67\x71\x59\x48\x38\xdd\xa8\x9a\x6d\xa8\xd2\x33\x70\xdf\xba\x04\xc6\xa0\x46\x83\xf8\xd3\xda\x23\x7e\xd8\xe7\x6f\x72\x09\xe1\x8e\x85\x6f\x69\x73\x73\xb5\xb0\xca\x32\xa4\xa8\x48\x50\x73\xc6\x32\x08\x7c\x50\xf8\xe9\xb6\xef\xd4\x0c\x82\x81\xca\xd8\x33\xc0\x75\x90\x0e\xc8\x04\xc2\x88\xca\x30\x3b\xa5\xb3\xc2\x23\x86\x02\x5e\x68\x7b\x1e\x12\xfe\xf4\x98\x94\x1c\x0a\xe7\x48\x84\x64\x0c\xfe\x22\xe5\xcf\x57\xfe\xe9\x4d\x90\x66\xf0\xb8\x8d\x88\x44\xe2\xda\xae\x68\x34\xc2\x15\x1f\x5b\x14\xe1\xa3\x40\xd7\x79\xc3\x07\xde\x61\x19\x96\x21\x00\x77\x17\x78\x70\x50\xa4\x86\x77\x6d\x1a\x83\xa4\x69\xe7\xbd\x97\x51\x63\x7d\xd0\xa7\xf1\x65\x2e\x84\x7e\xb2\x5c\xe1\x43\x0b\xcd\x63\x1d\xfa\x09\x71\xfa\xb3\xa5\x08\xc6\xbd\x52\x1c\xc0\xc5\x03\x9a\x34\x95\x98\x09\xc9\xc8\x5d\xe7\xde\x28\xe2\x3b\x91\xac\x8c\x60\x04\xfa\xfe\x16\x50\xfe\x9c\x64\xf0\x81\x0f\xd8\xca\x0a\x05\x49\x95\x73\x12\xda\x98\x96\x38\x5b\x05\xdb\x23\xc4\x7b\xa4\xf2\xa0\xc5\x46\x28\x8f\x13\xac\xb2\x7b\xf5\x1d\x4f\x83\xfb\x47\x5a\x2a\x31\xc1\x56\xd8\xa8\x7c\xdf\x79\x23\x57\x71\xa2\x58\x70\x2b\xa4\xee\xee\x00\xa4\x8e\xf5\x85\xc2\x0f\x0e\xba\xa6\x1a\x3f\xcf\x9b\x44\x03\x54\xd0\x08\x11\x17\x8c\xe4\x46\x62\xcb\x2b\x48\x56\x74\xc0\x47\x32\x01\x44\xac\x78\xf0\x60\xce\x15\xf2\x37\xf0\xa4\x2d\x13\xe1\x03\xf1\xe3\xc4\x65\x7f\xc0\x4f\xd5\x42\xcd\xd7\xb9\x9b\x5f\xb3\x0d\x0b\x9e\x84\x64\x15\xb3\x62\x69\x53\xe1\xfd\x7e\x21\x0e\xbb\xbb\x50\x30\x41\x2a\xbd\xd9\xa2\x8c\x80\x19\x40\x4a\x2d\x70\xbd\xa5\xae\xab\xc4\x39\x91\xd9\xa0\x04\x1f\x08\x47\x93\xb2\x8c\x53\xc6\xb0\xe4\x41\x95\x7a\x25\xc3\xfa\xb5\x53\x52\x4c\x7f\xd5\xec\xc5\xe4\x72\x6f\x6a\x57\xf2\xc5\x59\xde\x9f\x16\x97\x87\x5a\x1a\xcc\xa3\xa9\x9d\x9c\xc0\x25\x0b\xce\x8d\xca\x37\xc8\xe9\x44\xb3\xd2\x32\x12\x17\xcd\xfd\x08\x6e\xca\xe4\x0b\x24\x2d\x17\x88\xcd\x17\x88\x4d\x76\x54\x90\xb1\xb6\x10\x59\x31\x17\x57\x69\x5c\x2e\x8c\x7c\x19\xa4\x62\x89\xec\x94\x25\x72\xc0\xfb\x7d\x88\x0f\x90\xaa\x51\x19\xdf\x88\xf6\xcc\x03\x3f\x8b\xc4\x3a\x40\x01\x6d\xfa\xcc\x70\xfa\xfd\x2e\x89\x37\x41\x5a\xf3\xac\xf0\xfa\xca\x1a\x42\x98\x30\x24\xef\x9c\x35\x71\xa4\x42\x2f\xd3\x85\x49\x3e\xe4\xfd\x8a\xc3\x2b\xb8\xe1\xb8\x66\x51\xe5\x6e\x5c\x3e\x34\x84\xa1\x00\x09\x45\x27\xc6\x98\xa4\x07\x4c\x3c\x96\x66\x49\x5c\xb9\xdb\xcc\xcf\x4b\x97\x1e\x1b\x87\x03\x5c\x0e\x13\x31\x8a\x73\x7f\x2c\xaf\x1a\x14\x7f\x77\xef\x92\xe1\x7b\x05\x63\x38\xac\x73\xde\xcf\xeb\x97\xa7\x34\x4a\x1a\x7d\x65\xf8\xee\xd8\xd5\xf5\xa4\x1f\x47\x3f\x05\x49\x9a\x89\xf1\x69\x3c\x90\xa7\x83\x77\x38\xa0\xbb\x3a\x53\x64\x2d\xdf\x93\xdf\x88\xb4\xa9\x54\x55\xb8\x2d\x56\x95\x8a\xc3\xce\x83\xf6\xdf\x92\x18\x25\x0d\xab\x66\x50\xae\xbf\x68\xbf\x8f\x40\xa1\x57\x58\x39\x9b\x4e\x27\x49\xd5\xea\xd9\x74\x3d\x51\x58\xae\xbf\x91\x62\x0c\x2e\x36\x7c\xc3\x90\x40\x4a\xf3\x6c\xdd\xd4\x5c\xeb\xac\x15\x1c\x8e\x64\x88\x8e\x9a\xe4\x50\xb1\x94\x73\x89\x37\x57\xe8\x8b\x82\xe6\x6e\xaf\x01\x90\x97\x4d\x61\x69\x47\xee\xa4\x6d\xd8\xba\xb7\x39\x72\x9f\x49\x26\x1f\x4a\xcb\x26\xea\xc0\x59\x21\x5f\xca\x45\xc0\x91\x1a\x7a\x69\x33\x29\xdf\x02\x1e\xdc\xf3\x12\x50\xfe\x8d\xef\x20\xea\xb4\x98\x83\xca\x3e\x1f\x9b\xad\x9d\x56\xed\x29\xf7\x0c\x70\x03\x88\xdc\x69\x9c\xc4\xf6\xc4\xaf\x5e\xb1\x34\xb4\x4e\xa7\x81\x0f\xf9\x86\x10\x2f\xd1\xb6\x13\x84\x37\x9b\x62\xfe\xa8\x3a\x4d\xac\xbe\x65\x77\xc8\xf3\x3b\xa0\x89\x14\x45\xab\x42\xc8\xd2\x20\xc6\xca\x0a\x88\x4d\x5f\x3f\xc0\xd2\x2d\x93\x15\x6d\xbd\xcf\x9a\xc7\x42\x5c\xbe\x25\xd7\x8a\xfb\x29\x88\x9f\x3d\xd3\x32\x49\xdc\x76\xeb\x38\x59\x24\xcd\xa9\xcd\x88\xb2\xd5\xd8\x01\x63\x2b\x21\x36\x8d\x97\xc6\x8a\xa4\x34\x5e\x9a\x65\x90\x0c\x6a\xef\xf7\x06\x49\x29\x4a\xf7\x7b\x03\x7f\x1f\x90\xe5\x5b\x72\x53\x6f\x5d\xba\xe4\xd8\x07\xeb\xee\xc6\xb2\xc9\xad\x95\x1e\x0e\x28\x21\x72\x43\x72\x31\x48\x72\x6c\x24\xa5\xf6\x52\x99\x30\x11\x1f\xe4\x86\xec\x68\xda\xbf\xfd\xea\xed\x79\x4f\x79\xff\xe6\x84\x86\xe4\x7e\x90\xdb\x13\xba\xc3\x75\x98\x65\xb4\xa2\xf6\xe1\x90\xaf\x19\x3f\x0c\xb6\xdd\x2b\xe6\x9b\x97\x05\x9c\x2a\xcd\x16\xfb\x17\xe9\xe7\x60\x5b\xba\x35\xf2\xc5\xc3\x5b\x78\x76\x13\x54\x65\xd8\xfd\x3e\x00\xeb\x88\x1d\x66\x50\xa6\x1e\xfc\xfb\xbd\x0d\x6e\x56\xbe\x1d\x86\x8e\xed\x7e\x7e\x97\x0f\xae\x50\xab\xe5\x0a\x2e\x57\x55\xc8\x79\x75\x7d\xdb\xba\xa6\x2a\xf3\x39\xc2\x30\xd8\x7e\xb0\x93\xc0\x16\xef\xb2\x2d\xdb\xf4\xf7\x7b\x9f\x6c\xa0\x4a\x18\x5f\x33\xef\xd9\x2e\x8b\x95\x66\xaf\x68\xd6\xc2\x7b\x5d\xd2\xbf\xd1\x15\x44\xb8\xda\xef\xd1\xe5\x31\xa5\x57\xba\xbe\xad\x68\xb1\x39\x4b\x0b\x8e\x39\x94\xc2\x5a\x97\x07\xf0\x72\x25\x35\x02\x1f\x4b\xc1\x68\xf9\x33\xc4\xa2\x24\x3f\xa3\x0c\xaf\x0e\xe8\x0a\x5b\xcb\x8f\xe8\x0a\xaf\x30\xb9\xa5\xcb\xab\x82\xbf\x77\x5a\x2d\xae\x2d\xf2\x93\xd2\x6e\xa2\x5a\x72\x1e\x50\x87\x46\x15\x75\x68\xa0\x0e\x71\x5c\x1f\x62\x5b\x99\x8c\xb4\x39\xbc\x61\xe7\x70\xee\xca\x81\x0f\x17\xaf\xad\x90\xb8\xf4\x47\x14\x61\xe2\x51\x77\x91\x82\x76\xf0\x1e\x89\xe4\x47\xc4\x30\xa5\xd4\xe5\x7b\xfc\x8c\xac\xa9\x77\x1f\xf0\xae\x16\xf4\x12\xe3\x23\x50\xaa\x4a\x9e\x55\xd7\xd1\x9a\x7a\xe2\xed\x7d\xba\xfe\x1a\x25\x33\x43\x4c\x25\x35\x09\xc9\xc7\xc7\x0a\x88\x3a\x3a\x56\x4c\xe4\xd8\x58\xf6\x01\x2f\xf9\x2c\xac\x72\x05\x75\x9b\x98\xe7\xb7\xe4\xf7\x53\xa2\xa4\x2e\xd9\xaa\xe7\x2f\x33\x21\xee\x65\x1d\x3d\x70\xab\x3d\xf0\x8a\x1e\xec\x48\x75\x6e\xac\x2d\x69\x9d\x19\x6b\x73\xc0\x56\x92\xfb\x52\x5f\xd0\xa6\x17\xdc\x3b\x5a\x63\x4a\x9e\x15\x8a\x8e\x17\xf4\xd8\x20\x9f\xe9\x2d\xa7\xb9\xef\xa9\xf1\xe4\xfd\xd3\xdb\x5c\x34\x78\x7f\x72\x22\x88\xca\x1b\x7a\xbb\x7c\xbf\x22\xaf\xe8\xdf\xe8\x0d\x26\xbf\x51\x69\xe9\xa6\x94\xfe\xc8\x1f\xfc\x54\xd3\x44\xbe\xe2\x93\x46\xfe\xa1\x3f\x2d\xa4\xd7\xa1\x95\xbb\x21\x92\x3f\xf8\x54\x54\x06\xe2\xcd\x3d\x03\xa1\x50\x02\x6b\x5d\x0e\xcb\x01\x93\xe7\xf4\xa7\xc5\x6f\x8b\x1b\xeb\xad\xf5\xdb\xe2\xd4\xba\x3e\xba\x58\xfe\xb3\xfa\xe1\xdd\xf2\x9f\x95\xae\xa3\xe7\xf4\x23\x7a\x2e\xdd\xe5\x5f\xc2\x77\xf2\x81\x2e\x21\x3c\x51\xac\xeb\x1f\x84\x9c\xf9\xc7\xf2\xd5\xea\x29\x35\x30\x49\x95\x47\xcf\xf9\x23\xf2\xc7\xf2\xa5\x28\xfa\xd0\x67\x57\x2c\xb9\x6d\xe7\xaf\x39\x1b\x71\xf7\x99\xbe\xe1\x03\x68\x0a\x37\xc9\xc3\x33\xd0\x03\xbd\x21\x1f\xf0\x81\x8b\x97\x45\x88\x81\x2f\x2d\x8a\xa6\x5b\xc8\xfb\x54\x55\x54\x8a\xed\xfc\x0c\xd4\x33\x22\xaa\x73\x79\x19\xa3\x08\xb5\xcd\xf0\x03\xdd\xe2\xdb\x05\xe2\x68\xcb\x67\x9f\x69\x46\x34\xe8\xa0\x76\x20\xdf\xd1\xed\x62\x68\x99\x4f\xbe\xfb\xc1\xd0\x75\xf9\xf4\x98\xd2\x2f\xe8\x3b\xfc\xe4\xbb\x5e\x0f\x3f\x51\x4e\xc5\x63\x4a\x3f\x37\x0f\xba\xe2\xbc\xe0\x0b\x47\x81\xa6\x9f\xe1\xa0\x05\x09\xcd\x50\xdd\x39\x72\x2d\x95\xb5\xcc\x59\xa0\x95\xe4\x8e\x00\x8d\x75\x6c\x96\xe7\xdd\x36\x01\x0f\xf5\xb7\xf2\x4a\xe3\xbf\x78\xf4\x91\x6f\x3e\xd4\x8e\x29\xb5\x75\x5d\x1c\x6a\x05\x39\x6d\x58\x88\xdc\xda\x89\xe5\x29\xe4\x95\x9f\x66\x19\xcb\xd6\x2c\xa9\xd8\x86\xf6\x7b\x61\x13\x12\x45\xf2\x22\xf0\x55\xdd\xd3\xf1\x52\x6e\x95\x62\x7b\x84\xd5\xed\xb1\x2b\x36\x44\x75\xa3\xb8\x07\x7e\xb8\xd5\xe4\x96\x5b\xfa\x63\xf5\xc1\x19\x3d\xbe\x25\xe7\xf4\x0d\x72\x30\x79\x4d\xb5\x1b\xbe\x99\xcf\x73\xeb\x01\xd0\x8b\xfb\xa4\x85\x67\x2d\x34\xe6\x45\x9d\xc6\x7c\x6e\x63\x03\xaf\x16\x57\x2d\x6c\xa0\x64\xd0\xee\x3a\x5c\x70\xb1\x75\x45\xde\x2b\xb7\x49\x03\x1f\xbd\x83\x63\x3a\xde\xef\x53\x31\xf9\xaf\xa4\xcb\xf3\xf9\xe2\xda\x7a\xcb\x49\x94\xfc\x75\x6a\xdd\x90\x3f\x8a\x5f\x75\x77\x68\xf2\x9c\xbe\x5b\x9e\xaf\xc8\x4b\xf8\x38\xb9\x5c\xbe\x5a\x91\x0f\xf0\xbd\x77\xb9\xfc\x6d\x45\xbe\x50\x7f\xd1\x7b\xb1\xfc\x63\xf5\x78\x60\x19\xe4\xa3\x42\xf8\x6e\x17\xcf\x96\x7f\xac\x2c\x5e\x46\xbe\xab\x3c\x07\x78\xab\xc7\x8b\xc9\xcf\xb4\xee\x25\x46\x3e\x51\x5f\xd7\x7f\x5e\x6c\xd0\xcf\xd8\x92\xb6\x78\x23\xb7\xc5\x1b\x07\xf2\x6b\x7d\xe4\x97\x1a\xd4\xfb\x5f\x5b\x96\xa4\xe0\xe4\x9f\x69\xab\xc5\x57\xc0\xe4\x8b\xd0\x7a\xc8\x7c\xfb\x3b\xfd\x95\xbf\xf6\x2f\xf4\x57\xfe\xc6\x7f\xd2\x8c\x13\x19\xe8\xfd\xa7\xe5\x1f\x2b\x4c\xfe\xa2\x67\xf0\xae\x8f\x07\xbd\x2f\xbd\x3f\x7b\xbf\xf7\x3e\x5b\x1f\xc5\x27\x49\x18\x3d\x5b\xf4\x44\xe1\xc9\x97\x93\x3f\x4f\x7e\x39\xf9\x6c\x7d\x27\x3e\x49\xc4\x1a\x2f\xaf\xeb\x17\x0d\xb7\x39\x4c\x02\x46\x23\xb6\xc8\xa7\x28\x52\x9c\x52\xf6\x7b\xc3\x8a\x54\x57\x14\xfe\xc0\x20\x31\x6b\x2c\x4f\x41\x58\xea\xe3\x22\x1f\x57\x38\xfd\xe5\xf9\xca\x32\x88\xcd\xc4\x8c\xff\xd5\x8b\x59\x2f\x60\x24\x95\xbf\x13\xd6\x8b\x81\x4b\x8e\xc5\xb2\x0a\x19\x1f\x0f\x7f\xf1\x0f\x7a\x49\x6c\x86\xad\x97\xe4\x39\xf1\x17\x3f\xa1\x0f\x24\x65\xd8\xfa\x80\x8f\x78\x2d\x1a\x32\xf2\x5e\x7c\xf6\x9e\x1f\x20\xce\x0e\x54\xde\xb1\x62\x63\xf1\x45\xe9\x96\x3f\xf9\xaa\xf4\x78\x93\xaf\x57\x64\xcd\xa8\xc7\x4e\x2e\x97\x3b\xb6\x22\x3e\xff\xde\xbb\x5c\xba\x6c\x45\xb6\x45\xd3\x6b\x06\x6d\xaf\x19\xf1\x18\xb4\xee\x33\x68\xde\x67\xbc\xfd\xd7\x2b\xba\xe5\xed\xc3\x67\xcf\x63\x87\x43\x8b\x48\xf1\xfe\x7e\x7a\x5c\xd0\x5f\x5b\x5c\x55\xfb\x16\xaa\x0b\xd4\x56\xd0\x5d\x85\xd6\xaa\xf7\x7f\x92\xfa\x1e\xe0\xd4\xf6\x3e\xf2\x92\x72\xf6\x57\xa5\x56\x21\x7d\x83\x52\xd0\x66\x55\xa4\xbe\x54\x98\x3c\xeb\x77\x1c\xc4\x41\x6f\xe7\x77\x21\x5a\x59\xb3\xa6\x51\xbd\x3d\xdb\x3d\x5b\xb0\xff\x84\x5e\xc1\x45\xe8\xbf\x10\x23\x67\x9c\xf3\x0b\x8a\x13\x21\xe1\xec\xf2\x06\xc5\x98\xac\x25\x51\x0a\x61\x6d\xf8\xc5\x2f\xbe\x34\xf8\xe1\x50\x23\xaf\xcb\xdd\xea\xa4\xf9\x30\x5c\xf5\x6c\xfe\x5f\x52\xa1\xbc\xcb\xdd\x8a\x5c\xd1\x4a\x81\x5a\x85\x5c\xd2\x0b\xde\x03\x87\x5e\x2e\xf2\x56\x2f\x2b\x6e\x49\x7c\x9b\x5d\xaa\xbe\x43\x62\xdf\xdd\xd2\xed\xe3\x41\xef\xea\xf1\x80\x9c\x53\x77\xb9\x5e\x91\xd7\xd4\xe9\x79\xcb\xdd\xaa\xe7\x2e\xfd\x15\x79\x47\x9d\xc7\x03\xf8\xfd\x78\x70\x72\xcb\xcf\x08\x86\xce\xc9\x3b\xf2\x1a\x93\x17\x34\x3c\x4a\x9a\xab\x32\x77\xdf\x7e\xb1\xa2\xcf\x48\xd6\x77\x21\x12\xae\x58\x04\xf4\x59\xef\x9d\x48\x11\xfe\x55\x37\xcf\x72\x31\x2f\xbf\x33\x54\x31\x59\x68\x4b\x55\x65\x03\x4b\x70\xa5\x59\x89\x94\xf3\x23\x5d\x47\x79\xcc\x95\xc2\xc1\x22\xda\xef\x91\xea\x84\x9b\xfb\x0b\x57\x43\x36\x45\x18\x83\xe7\x51\x53\x1d\x08\xae\xb2\x75\x52\x47\x23\x7c\xb8\x4f\xcb\xd3\xb2\x41\xeb\xfc\x50\xb9\x53\xd7\x81\xc7\x1e\xd6\x25\xdd\x87\xea\xeb\xee\xdc\x80\xc3\x64\xfd\xac\x0f\xea\x67\x7d\xdc\x64\x18\xaa\xcd\x11\x5b\xb2\x33\x55\x9f\x19\x4b\x71\x57\x01\xb5\x8c\x00\x52\xf9\x99\x63\xe3\xc0\x09\x40\x22\x42\x40\x73\x06\x8c\xa1\x14\xd2\x54\x42\x06\x48\x11\xcc\x3f\x62\x68\x87\xdb\xae\x07\x95\x36\x9d\x17\xd2\xdd\xa7\x50\x04\x4a\x9d\xed\x69\xea\xda\x5b\x96\x3f\xdd\x91\x20\x7d\x9f\x57\x79\x09\x41\x33\x2c\x97\xac\xed\xf4\x9d\x02\xec\x59\x5e\xab\x72\xf0\x3f\xd1\x20\x16\xfd\xeb\x89\x10\x1d\x9a\xe5\x92\x0a\x00\x13\x4d\x6a\x96\x77\xc0\x87\xc3\xea\x80\xf9\xf9\xf7\xbf\x9f\xa6\x57\x97\x8f\x84\x0f\x98\x66\x4e\xb4\x47\xd2\xef\x4b\x9b\x68\x8f\x20\xdb\x72\x5b\xba\xe9\x22\x91\xf4\x0f\x4f\xb7\x76\xb6\x7e\xe4\x51\xed\xb5\xf1\x68\x92\x9a\xfd\xe9\x7c\xd2\xeb\x1b\xe6\xf0\xd1\xa8\x3f\x99\xf6\x86\xfd\x89\x39\x7e\x31\xee\xcf\xc6\x66\x7f\xfe\x68\xd2\x9f\x0f\xfb\x86\x31\x79\x34\x7b\x64\xb8\x66\xdf\x98\xf6\xe0\xd7\xa0\x6f\x8e\x66\xfd\xd9\x6c\xfa\x68\xd8\x1f\x8e\x86\x8f\x06\xfd\xe1\x6c\xfc\xc2\x1c\xf5\x07\xc3\xe1\xa3\x49\xdf\x30\xc6\x8f\xcc\xc9\xa3\x09\xfc\xf7\xd2\xf8\x47\xfb\xe1\x29\x6f\xfa\x87\xff\xcd\x8f\x5e\xe5\x6e\x2a\x71\xed\x6d\xb6\x4b\xe0\x9a\x6a\x69\xdf\x48\x0b\xaf\x93\xc0\x47\x22\x7e\x52\x90\xe6\x77\x6a\x73\x35\x24\x5b\x66\xab\x6a\x66\x83\x68\x51\x85\x4d\xf0\x22\x59\x66\x2b\x2b\xb1\xa2\x96\x50\x3d\x21\x53\xad\xca\x77\x87\x22\x1e\x90\x4c\xde\x59\x08\xfc\x40\x45\xca\xd8\x00\x32\x96\x90\x86\x75\xbd\x7c\x9a\x9d\x68\x2b\x0d\xff\xd0\x33\xeb\x59\x80\x0a\x37\xe5\xd6\xb3\x45\x06\x42\x94\x36\xa2\xac\x92\xcc\xc9\xad\xa6\x5c\x11\x97\x2e\x14\xa3\x67\x84\xef\xdc\x90\xd9\xc9\x79\xb0\x61\xf1\x2e\x43\x09\x26\x09\x4d\x59\x96\xff\x56\xcd\x50\xe0\xaa\x8d\x49\xee\x0b\x91\x34\x13\xc2\x88\x51\x68\x5a\x14\x15\x5f\xc7\x56\x7b\x93\x0c\x95\x96\x08\xa3\x36\x49\xaa\x29\x63\x0a\xf7\x9c\x42\x15\x56\x09\x74\x23\xdb\xee\x99\x90\x7b\xa8\x18\x4b\x08\xb0\x0b\x32\xb9\x1a\x0a\x68\xcb\xbe\xe6\xca\xea\xa6\xda\x2a\x48\xcd\xf9\x84\x2a\xe1\x4b\x94\x60\x77\xf5\xf4\x3c\x32\x9d\xb7\xe6\x05\x57\x6a\x9e\xbe\x4b\x15\xb1\x26\xa1\x34\xa2\xfd\x94\xd8\x97\x32\xc6\x48\xa7\xeb\x91\x5c\x6a\x15\xa7\x7e\x47\x7d\x1d\x00\xd0\x5e\xc7\xbb\x94\xc9\xbc\x40\x4a\x94\x0e\xa6\xde\x07\x3f\x66\xfb\xfd\x31\xeb\x5f\x64\xc1\x76\x7b\xbb\xdf\xe7\xdf\x4a\xe2\x7c\x4c\xa9\xfa\xa6\x17\x72\x8c\x3b\x1c\x52\xc0\xdb\x49\xa6\x8d\x84\x3b\x52\x60\x49\xf9\x71\x27\x8c\x55\x34\x3b\xd1\x36\xa9\x56\xed\xf8\xf5\x83\x18\xeb\xa9\x70\x80\x9c\xc1\xb1\xa2\xd5\x47\x01\x82\xaa\x15\x8c\x24\x2c\x99\x32\x36\xb6\x0c\xb7\x92\x88\xc0\xa0\xe0\xda\x9d\xdc\xeb\xda\x8d\x17\xb5\x72\x2b\x9f\xdc\xb2\xc5\x9b\x5a\x66\xa7\xec\x44\xab\x5c\xa1\xd6\x9e\xc8\x68\x1b\x30\x12\x70\xbb\x43\xbb\x66\xce\xe7\x20\x3b\x2f\x9e\x9e\x46\x9e\xb6\x6a\x79\x7d\x3e\x2a\xcb\x68\x05\x0a\xc8\xdc\xcf\xec\x2d\xa3\x77\x41\x7a\x1e\xef\xdc\xb5\x75\x6c\x42\xd0\x37\x25\xea\xe2\x39\x5f\x88\x6f\x59\x5f\x42\xec\xf7\xa8\xfc\x41\x8f\x0d\x22\xef\x5a\x6e\x59\xe2\xc7\xc9\xc6\x8e\x5c\xa6\xeb\xc5\x82\x6d\x5e\x3f\xdf\xf0\x15\xb4\x89\xaf\x98\x46\x5e\x33\x75\x9c\x5f\x97\x09\xe8\x14\x5c\xfd\x28\xbe\x46\xf8\x88\xf5\xce\xd8\xd3\x81\xa1\xeb\x95\xc6\x4d\x52\x34\xd4\x7a\xd3\xbc\xd6\x16\x7f\x31\x85\x7a\xbd\x2b\x1b\x2c\xfb\x0b\x31\x4b\xe4\xd6\xe1\x6c\x3a\x2c\xed\x92\xf3\x10\x4b\xf9\x88\xf5\x9d\x70\x97\xe8\xfa\x71\x26\x78\x91\x7e\x90\x7e\x08\xd2\xc0\x09\x61\x69\xf1\x32\x24\xf3\xcd\x3e\x63\xb4\x2d\x02\x99\x18\x34\x5d\x6f\x2b\xcb\x3b\xb3\x68\xb9\x86\x61\x69\x1a\x79\xc1\xe8\xe3\xd7\x67\xaf\x4e\x1f\xed\xcf\x93\xc0\x63\x51\xf6\x7f\x1e\xcb\xa8\x59\xcf\x18\x26\x9f\x59\x9d\x44\x8a\x20\xbd\xe7\x71\x4b\x60\x48\x4f\x0d\x2d\x74\x20\x76\x12\xd8\xd6\x9d\x2b\xe2\x1f\xe7\xd7\x80\xd9\xcd\xd6\x8e\x3c\xe6\xe5\x57\x81\x89\xc7\x42\xfb\xd6\x32\x88\x27\xb7\xa0\xb5\x1c\x1a\x06\x19\x8c\x8d\x15\xb9\x64\xd9\x7b\x85\x9b\x91\x31\x1f\xc4\xd5\x77\xce\x0e\xbe\x8d\x5e\x84\x81\xfb\x99\x9f\xaa\xc1\x65\x14\x27\xe5\x35\xab\xd4\x3a\x36\x49\xc0\xb9\x6b\x31\x05\xb5\x9f\xcf\x45\x32\x82\x81\xfa\xec\x47\xe6\xc4\xbb\xc8\x65\x96\x41\xf8\x1c\x97\x6b\x9f\x0f\x92\x90\x1b\xad\xa5\x41\x4c\x63\x45\xe2\xe8\x99\x9f\xb1\xa4\xe9\x94\x73\x20\x71\x24\x42\x01\xb7\x97\xbd\x00\x82\x5b\x7f\xfa\x63\xd3\x2f\x82\x3f\x96\xcc\x58\xf3\x69\x03\xc1\xeb\x78\x17\x65\xf5\x87\x67\xeb\xf8\xba\xed\x59\x03\xe3\x79\x12\x5c\x5e\x56\xc3\x3f\xf3\xc7\x7f\x44\x59\x7b\x01\x8c\xf9\xdb\x5d\x96\x36\x7a\xa2\x38\x6e\xc2\xcd\xb4\x6d\xb8\xbb\x0c\xa2\xb4\xf4\x4e\xcc\x5d\x26\xef\xb8\x58\x10\xf1\x29\x10\x61\x0c\xd6\xf1\xf5\xdb\x7c\x70\x8e\x4d\x92\x09\xda\x61\x90\xbc\x07\x62\xeb\x81\xb4\xf4\xc8\x8f\xdd\x5d\xaa\xe5\x45\x22\x0a\xa5\x88\xcf\x44\xee\x94\x78\x3c\x1c\x8f\x1a\x16\x47\xac\x80\x5a\x3c\x1b\xfe\x50\x44\xa1\x01\x4a\x75\xc7\x51\xf0\x2a\x2f\xcf\x5f\xff\xc6\xcb\x04\x3e\x58\x03\xbe\xcd\xc5\x0f\x71\x1f\x93\x73\x71\xf9\xaa\xd6\x48\x10\xb1\x24\x0b\x6c\x0e\xbf\xb1\x6f\xc4\xd5\x93\xe1\xd8\x20\x49\x1c\x32\x3e\x10\x71\x98\x05\x5b\x8d\x64\x6b\xc6\xc5\x18\x8d\xfc\xf3\x8a\x1f\xfb\xd6\x7c\x3e\x9f\x1f\x30\x79\xcf\x2a\x97\x1a\x3f\x33\xac\x84\xac\x28\xcf\x0a\x8a\x58\x5f\x0e\xa7\x70\x7e\xbc\xef\xce\x46\x52\x2a\x80\xf3\x20\x8e\x76\xb8\x63\xea\x75\xae\x8c\x8b\xa3\x85\xda\x97\xd3\xf0\x05\xff\xcf\x0a\x70\x87\xf5\xa7\x72\xa3\xed\x40\x54\x3e\xe5\xc7\xfb\x39\xaa\x8c\x14\x34\x60\xc7\x50\xd6\x97\x3f\xc8\x92\xad\x30\x17\x18\xea\x5b\x77\x71\x77\x68\x0d\x6c\x8b\xb2\x85\x3a\x52\x7f\xb7\xe8\x29\x3e\x83\xd1\x4b\x2c\xba\xec\x80\x31\xb6\xde\xb3\xfb\x87\xaa\x91\xb3\x18\x8e\x6e\x20\xcb\x3d\xed\x24\xc1\x32\xea\x22\xe4\x15\x05\x63\x72\x54\x24\x8b\x04\x4f\x40\xf9\x32\x1a\xe7\x98\x45\xbc\x9b\xe8\x08\x9c\xb7\xb2\xe4\xf6\x0e\x7e\xff\x72\xf6\xf6\x4d\x7f\x6b\x27\x29\xb0\xa4\xae\x9d\xb9\x10\x1c\x51\xc0\x96\x31\x24\xc4\x95\x10\xfe\xbe\xf9\x3c\x63\x25\x11\x02\x27\xa5\xcd\x91\xfd\xcc\xa0\x80\x80\xb3\x26\xff\x86\xe5\x27\xbd\xab\x91\x59\x60\xe8\x79\x49\x3f\x2f\x80\x44\xab\x25\x7d\xac\x95\x92\x2a\xd5\x2e\xab\xcb\xe7\xd5\xda\x0b\xbe\xfd\x2c\xcd\x63\xa9\x9b\x04\x0e\xf3\x9c\x5b\xcd\xaa\xc2\x1f\x54\x3e\xf9\x4d\xc1\x4f\x95\x69\x7a\x15\x7e\xe5\x95\xb2\xea\xaf\xca\x74\x10\x70\x09\x9b\x2d\x32\x91\xa2\xfa\x8d\xbd\x61\x54\x13\xf3\x24\x74\x78\x16\x6a\x29\x4a\xaf\x2e\x65\x31\x01\x76\x76\x91\x55\x82\xcc\x33\x6c\xbd\xe1\xf2\x37\x3f\xcd\x95\x1e\xfc\x26\x3b\x78\xa9\x2c\x57\xbc\x40\xd0\x6f\x4d\xc3\xa4\x96\x17\xb8\x00\x51\x03\x3c\x14\xe7\x6f\x51\x0c\x0a\x92\x82\xbc\x2c\xc4\x28\x14\x75\x2d\x56\xc9\xb1\x5c\x16\x28\x59\xc9\x99\xaa\xb5\x80\x94\xc1\x92\xb5\x80\x8e\x90\x84\x6e\xa0\xc3\x32\x61\x5a\x11\x8b\xd5\x89\x6f\xac\xac\x98\xd1\xa4\x6e\x87\x6b\x4d\xff\x5d\xde\xa8\x95\x23\x99\x2f\x74\x70\x86\x13\x64\xf0\x3f\xc4\x24\xe6\x03\x73\x56\xbe\x1b\xa8\x9c\x38\x68\xd0\xb1\xdd\xcf\x5e\x12\x6f\xff\xd3\x36\xf3\xfa\x82\xb3\x57\x12\xb7\xd7\xd6\x1a\x49\xe4\x92\x6b\x2e\x25\x27\xbe\xd1\x48\x72\x0f\xa3\xaf\x49\x7d\x06\x6e\x40\x65\xb6\x03\xa2\x9e\x46\xb4\x9e\xa9\xe5\x01\x1d\xa1\xa1\xa2\x27\x01\x4a\x48\x94\x3b\xa2\xfe\xc4\x50\x06\x37\xf4\xfa\x4e\x7c\x03\x9e\xa7\x39\xd1\x4c\x69\x20\x74\x6b\x47\x51\x1f\x4e\x94\x45\xdc\xd6\x25\x28\xd2\x88\x84\xc1\x56\xdc\xb8\x87\xae\xc2\x61\xd2\x88\xc1\x1c\xf5\x8b\xb3\xaf\xbd\x85\xa2\x98\xb7\x52\xfc\xe8\x6e\xa9\x84\xc7\x24\xea\xcb\x33\xb3\x1d\xb5\x2c\xd4\xf8\x5e\xeb\xc4\x97\x03\x61\x12\x4b\x69\x2e\x3f\x7c\x69\xae\xe8\x56\x5e\x26\x2f\x5b\x94\x5f\x45\xac\x8c\xf2\x37\x89\xfa\xfc\xc4\x6e\x74\x89\x3f\xd4\x64\x61\x6b\x77\x00\x80\x4f\xba\x9c\xa3\x22\x9c\x21\xec\xf9\xa4\xdc\xf2\x50\x50\xfc\xda\xef\x7f\x63\xc8\x26\x10\x37\x7e\x2b\x72\x44\xf0\x79\x5d\xa4\x0b\x19\x51\x01\x22\x14\xe6\x5e\x85\x71\x25\xa7\x77\xca\xdf\x5a\xa5\x41\xaf\x18\x92\xb0\xfc\xd0\xeb\x2e\xb3\x52\x5d\xaf\xa3\x2a\xc2\x1c\x36\xd7\x7c\xbe\xe9\x49\xf4\x55\xeb\xfe\x37\x86\xa2\xf2\x85\xaa\xa4\x36\x81\xb3\x49\x79\x10\x61\x12\x20\x09\x5c\x56\xca\x43\x66\x64\x9c\x03\x15\x3c\x74\x70\x38\xfc\xc3\xfa\xdf\x7d\x07\x5d\xa2\xc7\x06\x6c\x9f\x3f\x18\x35\xc9\x73\x46\x97\x2b\xf2\x92\xff\x5f\x6e\xa4\x0f\x2a\x37\x42\x20\x19\x05\xb1\x49\x4a\x42\xb2\x23\x2e\xf1\x28\x70\x2b\xad\x9c\xc3\x81\xfc\xcd\x10\x4a\x68\x56\x09\xed\x90\x3c\x10\x3c\xa2\x60\xa2\x92\x65\xb6\xd2\x75\x04\xc1\x24\xf8\xf7\xc2\xf9\x0e\xfc\x2f\x41\xbe\xf4\xf9\x7f\x5b\xfe\xdf\x86\xff\x77\xc5\xbb\x7f\x49\x5d\x86\x3e\x11\xaf\xdf\x22\x8b\x60\xe2\xd0\x3f\xd8\xc9\x09\xb9\xa5\xc8\xa5\x5e\xc1\x19\xb4\xf8\x12\x29\x3d\x72\x15\x6f\x22\x4a\x29\x84\x67\xbc\xa0\x77\x81\x67\x39\xa4\xe5\xee\x13\xd0\x3d\xf1\xfd\x55\xee\x87\x0e\x6c\x39\x4c\x89\xe5\x11\xe1\xb6\x7e\x17\xa4\xa7\xa5\xf2\xbd\x90\x50\x81\xaf\x4e\xa5\x08\xc3\xcb\xf8\x4f\x10\x48\xf2\x1f\x42\xe8\xe0\xfc\x75\xce\x9a\xdd\x12\xd0\xe3\xfd\xc8\x25\x3f\xa9\xbc\xab\x24\xf8\xaa\x68\xf9\x22\x4c\x2a\xbf\x03\x4c\x44\x92\xe8\x67\x39\x45\xf9\x29\xb1\x37\x0c\xc5\x90\x85\x2e\x7b\x07\x9d\x56\x15\x14\x9c\x6b\xbb\x28\x04\xeb\xa2\xa7\xf8\xee\x47\xa4\x55\xc5\x35\x8d\x2c\x2f\x08\x9f\xb8\xef\x50\xee\x6a\x76\x21\x17\x68\xd4\xb1\x6e\xf2\x72\xc1\xe7\x36\xa5\x50\xf0\xe5\x92\x40\x34\x22\x1f\xf9\x11\xd3\x36\xd3\xb0\xd9\x5b\x9e\xeb\x3a\xfa\x0d\xe1\x7c\x91\xb4\x82\x40\x40\xcd\x8a\x38\xa4\xeb\xc7\x51\xf5\xc9\x62\xcd\x50\x0d\xa8\xe3\x12\x26\x6b\x12\x38\xce\xc8\xf5\x72\xce\x10\x4e\x50\x2b\xaa\x37\xf8\x70\x35\xf2\x0a\x61\xf2\x37\xc2\xe4\x46\xd7\x6f\xe0\xb0\xe3\x83\x57\x59\x76\xba\x8e\xfe\x44\x98\x30\x86\x3a\x3a\x97\xb0\x2f\x3b\x96\x66\xb5\x99\x2f\x54\x82\x55\x6c\xea\xad\x07\x71\x09\x01\x26\x5c\x11\xdd\xf3\xf9\x3e\xc0\xca\x91\xac\x57\xc5\x44\x74\xd1\xcf\x97\x14\x2a\x84\x18\x76\xe0\x2b\xad\x26\x5d\x0b\xc5\xcf\x45\x5d\x7f\x43\x32\xda\xb2\xf4\x48\x42\x95\x15\x29\x77\x15\x89\x68\xa9\x8c\xd2\xf5\x63\xb9\x68\x44\x6e\x05\x12\xd0\x94\xa1\xfc\x51\xae\x2a\x21\x06\x17\x01\xf2\x5f\x42\x3e\x41\x6c\xbf\xcf\xf6\xfb\x64\xbf\x8f\xf6\xfb\x67\x08\xf7\xd7\x76\xaa\x12\xee\x20\x85\xd6\x38\xff\x85\x60\x3c\xf8\xf6\xe4\x03\xb1\x22\xc7\x26\x26\x10\x17\x29\x6f\x47\x14\xa2\x0b\x4e\xc0\xf8\x36\x6a\xbc\x1e\x3d\x36\xc8\x3b\x84\x75\x1d\x9d\xca\x43\xf8\x8a\x17\x04\x61\x90\xdd\x52\xed\x4a\x00\x69\x62\xda\x9f\x23\x3e\xe1\x39\x02\x49\x21\xf6\xfb\xa2\x66\xa9\x82\xa4\x22\x42\x2f\xe6\xa8\xf3\x6b\x55\x9f\x11\x3e\xba\x60\x68\x19\x03\x47\x14\xe7\xe7\xeb\x8a\x18\xf8\x10\xd2\xfa\x44\x1c\xb5\x75\x56\xd7\x8f\x37\xf0\x1a\x1b\xde\xed\xd3\x4a\xa0\x71\xd2\xd2\x8b\x7c\x14\xaa\xda\x20\xf1\xbe\x79\x59\xc9\xf8\x48\x26\xf2\x33\x12\xe1\xeb\x79\x2f\xa3\x92\x8b\x87\xbe\x27\x24\x5a\x91\x00\x93\xeb\xfc\x7b\x39\x42\x87\x37\x48\x6c\x10\x9f\xa1\x97\x8c\x5c\xe4\x39\x4c\x11\x5f\x53\xd5\x65\x0d\x8c\x73\xf5\x42\x4f\x63\x58\xf9\x0b\xc2\xe4\xc2\x6f\x98\x5d\x4c\x1a\x7d\xd6\x75\x78\x17\x75\xbd\x7f\x40\xac\x12\x8e\xb7\xc4\x0c\x54\xbc\xc0\x0b\xbf\x04\x5e\x70\xf5\x0c\x2a\x49\x35\xe4\x2c\xc0\xe2\x97\x6d\x4a\xa5\x21\x49\xe8\x33\x84\x9f\x88\xd7\x82\x12\x85\xa0\xe9\x3a\xe7\x9d\x3e\xb3\x02\x1a\x22\x44\x27\x52\xbc\xce\x16\x6a\x6c\x66\x50\x25\x40\x20\x0b\x5c\x32\xfb\xa7\x30\x36\x2a\x93\x71\x8a\xc9\x9f\x08\x1f\x10\xef\xde\xba\xa6\xaf\x12\x5b\xf6\xf8\x7f\xb8\x67\xdb\xb6\xa5\xd9\xbd\x2d\xf9\x5e\x81\x11\x7c\x09\xe6\xec\x72\xdb\x1d\xab\xdb\x8e\x17\xc2\xb6\xeb\xd8\x75\x26\x69\x4c\x8c\x64\x29\x80\xcd\xe8\xde\x92\x25\xab\x86\x30\x79\x29\x09\x72\xb1\xcd\x02\x58\xbe\x2d\x62\xc7\x51\xcb\xda\x41\xb0\x1d\x89\xbd\xe2\x94\xfc\x3a\xff\x5e\xb4\x50\x2e\xe9\x46\xdd\x45\x6d\xd9\x71\xd6\xa5\xbe\xf0\x9a\xd3\xa2\xeb\xa7\xca\xfc\x57\x7f\xa9\x4b\x40\xd7\x33\x24\x16\x65\x44\x2e\xfa\xbb\x68\xc3\xb7\x00\xb6\x8a\xaf\xc5\x5a\xf8\x18\x64\xeb\x57\xc5\xea\x0b\xb2\x6a\x6e\xf2\x17\x08\xdf\x6f\x6e\xb8\x84\xcd\xfa\x9c\xf1\x2f\x97\x88\xe1\x83\xf4\x4d\xb0\x5a\xb7\x8f\x5c\x30\xf4\xd8\x80\x04\x61\x4d\x40\xde\xa3\xca\x56\x2e\x6a\x98\x07\x22\xbb\xde\x8e\xba\x18\x9f\x16\x24\x92\x1e\xe8\x3a\xfa\xeb\xde\x83\xb5\x38\x42\xcb\x41\xc2\x98\xdc\x33\xe0\xaa\x08\x71\x8a\x39\x0f\xfe\x92\xdd\x7b\x41\x97\xaf\x6f\x60\x44\x9b\xb4\xca\x24\xf9\x8e\xe0\x2b\x07\x88\x0a\x3e\xb4\xdd\x16\x6c\xd9\x96\xfb\x3d\xba\xe8\x37\xb9\x49\x18\x84\xe2\x5d\x38\x3f\x47\xf2\x14\x57\xf2\x4d\x49\x0b\xb2\x82\xbc\xc9\x27\x79\x5f\xc4\xe5\x44\xaf\x2f\x74\xd6\xb9\x02\xf0\x42\xc6\x27\xcf\x9f\xa3\x0b\x4c\x4e\xe9\x75\xee\xf5\x70\x43\xaf\xfb\xb9\x0c\x73\x74\xda\x2a\xa4\x83\x8c\x95\xc4\x71\x06\xa2\x2e\x39\xed\x07\x5e\x2e\x79\x69\x27\x17\xfd\xc0\x2b\x38\x24\x7a\x4a\xf2\x8e\xd3\x0b\x72\x5a\x7c\x85\x2e\xbc\xa5\xb7\x9d\x77\xaf\x59\xdf\x8f\xd0\x05\xcc\xe6\x19\x65\x35\x66\xa0\xc6\xa1\xe5\xea\xc6\x8f\xa8\x64\xd6\x60\x38\x84\x66\x5e\x1e\x23\x5e\x5f\x55\xd7\xeb\x3a\x9c\x40\xa7\x5d\x7b\x05\x74\xf6\x5a\xed\x4c\x69\xa1\xfc\xad\xcb\xb9\x6d\x5e\xc5\xba\xec\x68\x2d\x64\xf6\x55\x25\x5c\x3e\xeb\x6c\x4e\x32\x57\x82\x8b\x2d\x7d\x1d\x94\x4e\x8b\x08\x4d\xe8\x6b\x08\x01\xdf\xff\xd0\xb3\x0b\xc5\xd0\xa9\x70\x85\x0a\x27\x97\x0f\x72\xdd\xc9\x63\xc1\xac\x25\x23\xaa\x61\xff\x35\x2a\x13\x8e\xc4\x21\x5c\xc9\x3e\x47\x55\xdb\xff\xbb\x82\xe1\x91\x3a\xd2\x63\xa4\xf2\x0d\xd0\xaa\x5c\xb4\xb9\xdd\xb8\x90\xa4\x15\xc5\xe2\xb3\xd2\x84\xb7\xdb\xef\x15\x9b\xe6\x8b\xe2\x1d\x38\x27\x59\x6e\xff\x22\x10\xc1\x02\xcc\xd9\x2d\x46\xe7\xcf\x25\xca\x9f\x18\x3a\x55\x1a\x7b\xaf\xac\xce\x16\x42\xd5\x24\xfc\xfb\xbd\x6a\x2e\xb6\x75\x5d\x13\x26\x20\x4a\xa9\x0d\x29\x19\x17\x86\xa5\x9e\xc2\x7c\xbd\x10\xfe\x50\x1c\xc3\xfc\xa7\xd2\xfc\xdf\x08\xdf\xe5\x27\xe3\x36\x86\x45\x01\x53\x9b\xb6\x73\x24\x8d\xde\x2c\x34\xcd\x12\xfc\x69\xc1\x33\x0a\x83\x0e\xd5\xf8\x9e\x15\x28\xc4\x93\x4a\x58\x71\xc5\x02\x7f\x54\xcf\x3a\x64\x60\xf2\xb6\x85\x2e\x27\xf8\x2e\x59\xb2\x95\xae\xf3\xff\xeb\x8e\x33\xe0\x7b\xa2\xeb\xa8\xe0\x53\x71\x09\x14\x55\xcc\x33\x6f\x50\xce\x9c\x16\x27\x71\x12\xd8\x70\x63\xa2\x50\x32\xe7\xc9\x53\x81\x22\x68\x27\xa5\x91\x26\xa2\x9c\x2a\x1d\xad\xcb\xf1\xad\x08\x7e\xfb\x3d\xbb\x37\x98\x0f\xab\x27\x66\x6e\xe5\xcc\x71\xcd\x7f\x22\x21\xd9\x22\x3b\xd1\x1e\x69\x27\x91\x15\x61\xb0\xa7\xe4\x91\x3c\x74\x3d\x2b\xe2\x4a\x46\x44\xb5\xcd\x2c\x1a\x48\x02\x6c\x35\xc5\xd2\x04\x22\x2c\x1c\xd4\x90\xec\xf8\xee\xf8\x4c\x61\xe9\x55\x3b\x88\xae\x7f\xfb\x9b\xb7\xac\xa3\x7a\xdf\x6a\x94\x97\xb4\x50\x3f\x46\x29\xdf\x74\x0b\x2d\x4b\x76\x4c\xb3\x34\xdf\x0e\x53\xa6\xb5\xbd\x51\x8b\x7c\xae\x98\x32\x90\x60\x65\x1e\x72\x68\xb8\xc4\xe4\x39\xa3\xcf\x1f\x3c\xc3\x2f\x2b\xd8\x7f\x92\xb7\x07\x8f\x91\x2a\xba\xa2\xed\x7e\x2f\x70\x7b\x5c\x4a\x00\x57\x27\xbe\x4f\xf1\x7e\xdf\xba\xc7\x4e\x4b\xf6\x2d\xcf\x3f\x28\x59\x5f\x4e\x75\x5a\xca\x78\x51\xd9\x60\x9e\x1d\xb3\x5d\xe6\xeb\xa4\xf4\x6e\x18\xb8\x9f\x81\xc8\x4b\x04\x22\xe8\x82\x38\xf0\x14\x13\x37\x28\x09\xd8\x0a\x1f\x81\x01\x2a\x47\xa7\xb8\x1f\x70\x56\xb8\x8b\x05\x91\x0c\x99\xcf\x39\x8b\x0e\x4f\x35\x9f\x73\x78\x6d\x8c\xd1\x7e\xff\x12\x55\x8d\x15\x08\xdf\x6d\x39\x07\x59\x3c\xf9\x43\x3c\x51\x7c\xf0\x9e\x17\x14\xfb\x05\xc2\x47\x6d\xe9\x1d\xca\x89\x21\x3f\x11\x4e\x7a\xda\x80\x44\x42\xc7\xc8\xe3\x30\x36\xbb\x07\x46\x26\x38\xf9\xe3\x7e\x28\xb1\xc6\xfe\xe1\x40\x65\x57\x5f\xd6\xba\xda\xbd\x44\xab\xbd\x6d\x85\x6b\x76\xb8\x1b\xac\xd6\xe7\x6e\xc0\xd6\x6e\x7f\x50\x8d\xdd\x9f\x11\xe6\xb2\x52\x2d\x65\x64\xbe\x52\x25\x85\xbf\xe1\xc4\x48\x4b\xe4\x4e\x8b\x30\xc9\xf8\xbc\x06\x3e\x02\x8b\x66\x61\x4f\x46\xf8\xa8\x0a\x99\x62\x22\x1e\xd8\x9e\x07\xf5\x52\x1a\x95\xfd\xf8\x82\x32\x22\x4c\x46\x45\x28\x08\x38\x0e\xb8\x38\xf9\xed\x44\xab\x65\xea\x04\x7a\x72\x25\x1c\x13\xef\x22\x2e\x75\x33\x02\x4e\xce\xe7\xb7\x5b\x66\x65\x64\x6d\x47\x5e\xc8\x12\x2b\x51\x03\xdb\x54\x08\xc4\xc7\x82\x41\x79\x0d\x32\xe9\x97\xea\x14\xfc\x4c\xd4\xac\x2d\x98\x7c\x51\x27\xf2\xd7\x6a\x21\x26\x0a\x53\x23\xdf\x8a\xe4\x5e\x91\x8f\xff\x4f\x7a\xf2\xb8\x50\x8b\x3f\x8f\xe3\x90\xd9\x11\xee\x78\xd7\x80\xf3\x79\x76\xb4\xb3\x43\x48\x8b\x89\x65\x8a\x88\x2f\x88\x91\x9f\x31\x61\x32\x53\x84\xc2\x09\x5a\x5f\xaa\xfc\xe5\xaf\x95\x34\x11\x82\x1b\xb1\xbe\xa0\x17\x6c\x21\x7e\xc4\xbb\x4c\xb3\x34\x27\xdc\x25\x1a\xf9\xbd\x09\x1b\x44\x80\xb1\x00\x25\xbf\x8b\x33\xa9\x18\xb5\xef\xf8\xa8\x3d\x10\xb3\x28\xf6\x84\xcb\x7a\x31\x1f\x70\x19\x45\xce\x88\x7a\x1f\xe5\xa8\xdd\x9b\x0d\x4c\x23\xc0\x45\x5c\xd1\xa5\xc2\x52\xfe\xac\xba\x27\x1e\x9b\x55\xaa\x2a\x65\x52\x5d\x3f\xfe\x05\x62\x90\x1e\xfb\x45\xa8\xd4\x82\x27\x43\x85\xeb\xa2\xad\x38\x2b\x02\xfd\x3f\xb2\x29\x83\x8c\x0c\x95\x14\xb2\x20\x6b\xb4\xc9\xfb\xe0\x30\xaa\xeb\xcf\xdb\xfc\x2e\x95\x98\x9b\x32\x40\x8b\x24\xe8\xc5\x69\x03\x64\xf9\x2b\xb8\xfc\xa7\xc6\x7e\xbf\xe6\xef\xa2\xaa\x60\x2a\xe4\xbd\xc9\x03\x72\x9e\xcd\x82\xd0\x30\x6d\xcd\xae\xe9\x71\x02\xcc\xd9\x71\xa4\xeb\x09\x04\x90\xa9\x84\xb6\x2e\x67\x51\x90\x09\xa1\x14\x53\x63\x58\xef\xf7\xa7\xea\xcf\x23\xe5\xa4\x56\x1a\xaa\x24\x7f\x53\xe3\x65\x17\x59\x8c\x8b\xef\x9f\xca\x80\x6e\x2d\x77\x69\xf3\xee\x28\x29\x37\x82\xe2\xe7\x19\xdc\x8e\x80\x14\x1c\xf5\xa3\x5b\xb8\xd1\x11\x9b\x6e\x19\x0a\xd4\xeb\x4b\x29\x0d\x3a\xa3\x44\x1e\xa7\x65\xac\x6d\xb8\x71\x56\x24\xf6\x82\x68\x4a\x5c\x4c\xda\xf6\x6f\x2d\x83\xec\x44\xe6\x2f\xf9\x54\xc0\x40\x81\x9b\xe7\xff\x92\x45\x21\xf3\xb3\xfe\x8d\x65\x10\x4f\xa6\x03\x93\xcf\x01\x08\x0a\xd6\x22\xb4\x72\x2f\x3a\x09\x7f\x88\x89\x4f\xa3\x5e\x1e\x84\xb6\xb7\xfb\x21\x26\x5b\x19\x84\xb9\x97\x9c\xb8\x3f\xc4\x64\x43\x93\x9e\x8c\x60\xdb\xf3\x7e\x88\xf3\xa1\x5b\xef\xf7\xfe\x7e\xbf\xdd\xef\x37\xa0\x5d\x02\x65\x8a\xf4\xf1\x3e\x6d\x09\x7e\x96\xef\x21\x25\x48\x73\xab\x99\x42\xd9\x24\x22\xb1\x42\xee\xf4\xb3\xb8\x53\x62\xec\x74\xe6\x1f\x26\xca\x2c\x59\x49\x6e\xb3\x3b\x08\x8f\x38\xdc\x20\x89\x84\xef\x28\x30\x29\xc1\xc2\xc4\xb5\x28\xe6\xbf\x20\x95\x4b\xbb\x87\x67\xd2\xf5\x35\xa8\x5e\x9a\xac\xae\x60\x7a\x1a\xca\x35\x2e\x26\xd6\x9b\xfc\x5d\x65\x97\x1b\x8d\xe5\xb4\x12\x3f\x35\x74\x3d\xdf\x2b\xc7\xc0\x15\x77\x30\x92\xfc\x2c\x0f\xed\x8c\x79\xb9\x55\xaa\xc2\x59\x56\xca\xf0\x7e\x9f\x54\x93\xd0\xfe\xa2\x38\x9d\x1f\xab\xec\xec\x6b\x84\x8f\xf3\x4d\x57\xf6\x0e\xce\x29\xad\x9a\x5e\xf2\x4f\x84\xef\xfe\x42\x79\x1c\xcd\xdc\x34\xc8\x77\x64\xc5\xfd\x11\xf6\xa5\x1a\xbd\x22\x2b\x23\xd7\x88\xe8\xf6\x4d\xa7\x57\x62\xc3\x85\xa3\x8a\x25\x22\xa5\xef\x10\x5e\x80\x78\x2d\xec\xfb\xc2\x6c\xbb\xa3\xf1\xe2\xae\x75\xb5\x58\x31\xa9\x06\x8e\xb4\xe2\x46\x80\xdb\x67\x08\x1f\x2c\x46\x5c\xba\xac\x45\xf1\xc9\x8f\x78\x19\x9b\xc8\x0a\xee\xb9\xc4\x5e\xc0\x56\xee\xe4\x0e\xf2\xbb\xb8\x03\x71\x17\x77\x2c\xef\xe8\x8e\x0f\xf5\xf8\x2f\x8d\xfa\xe3\x12\xa2\x16\x66\xab\x00\x2d\x03\x20\x29\xe1\x64\xa4\xae\xe3\xc1\x68\x5c\xdd\x99\x18\xee\x4f\x82\x12\xf8\xa8\xd0\x9e\x17\xdc\xe0\x93\xa5\x56\x86\x49\x22\x5a\xe3\xc2\x13\xd1\xf2\x2b\x4e\x6d\x2e\xf5\x0c\xdf\x29\xd5\xc1\xe7\xad\xd5\xeb\x48\x69\x42\xbd\xe8\x6e\xb5\xdc\xc0\x5a\x56\xee\x57\x69\x27\x6c\xd5\x8e\x52\x3b\x01\xff\x36\x2b\xe9\xf0\xb9\xd1\x4e\xc4\x51\xdb\x76\x13\xec\xee\x70\x38\x1c\x56\x47\xa0\xda\x4f\x75\xdd\xcd\xb9\x46\xf5\x96\x6d\x31\x57\x79\x4c\xe4\xb4\xb8\xd2\x3f\x3c\x1c\x30\x11\x95\xa4\x12\xc3\x25\xf9\x6d\x88\x32\xd5\x6c\x19\x2a\x12\x9c\x60\x1b\x06\x64\x1a\x30\xb4\x23\xa7\x4d\x33\x7d\xa2\x5e\x5d\x8d\x48\x25\xc0\x9b\x15\x2a\xd9\x10\xdd\x0a\x23\xf6\x97\x50\x57\xd6\x8d\xd4\xf5\x47\x7d\xa9\xab\x46\x2d\x3d\x82\x8c\xbf\x95\x50\xdf\x05\xe7\xb2\x61\xe8\xb4\x99\xd9\x5e\x5e\xde\x2c\x95\xc3\x2b\x4d\xed\x12\x70\x1d\x77\x1d\x02\x27\xd3\x75\x90\x5f\xa5\x4b\x77\x2e\xba\x92\xe7\x05\x51\x7a\x8f\xb8\x10\x95\xd0\x73\x84\x49\x40\x93\xa5\xb1\x22\x31\x4d\x96\xe6\xea\x48\x25\x79\x85\xc2\x31\xd0\xf5\x18\x82\xef\xc4\x98\x64\x8b\xa8\xeb\xb6\xd5\x05\xe8\x84\x91\xb8\x71\x65\x15\xbf\x8a\x4e\x03\xa9\x15\xb6\xac\xd6\x7e\x43\xa7\x0b\x87\xf3\xa2\xdb\x4d\x45\x91\x50\x36\x7c\xbd\xf6\xf6\xab\x4e\xb2\x65\x85\xb9\x57\x78\x2d\x25\xd6\xb4\x60\x60\xc5\xc1\x57\x5c\xe0\x78\x8f\x8e\x4d\x7c\x94\x2d\x82\x7b\xc6\xa5\xcb\x48\x23\x86\x2a\xa6\xed\x2e\x0d\xa8\xc5\x36\x04\x6a\x2b\xd0\x51\xbc\x44\x2a\x47\xf9\xe5\xa1\xe8\xf1\x9f\x0b\xd7\xf1\x32\x6a\xad\xea\x4b\x7e\x74\xcf\xfd\x1a\x55\x5a\x3b\x87\x6b\xf9\xf9\x0d\x9d\x26\xac\x10\x78\xde\xb1\xdc\xc1\xb1\x3d\xfa\x99\x70\x01\x4a\x0e\x7c\xfd\xb5\x28\x99\x84\x9b\xee\x92\xad\xac\x96\x42\x71\x6b\xec\x4d\xec\x31\xde\xaa\x06\xa1\x7b\x17\x70\x01\xce\x6a\xd1\xa7\x6f\x18\x2a\xde\xac\xb1\xcd\x98\xc8\x73\x7d\x6f\xe0\xdd\x4c\xd7\x3f\x30\x94\x91\x48\xcd\xd6\x2c\x2f\xea\x25\xc2\xbd\x8b\x0f\x5f\xa5\xe7\xc1\xd2\x58\x59\xc1\xe1\x0b\xcb\x5d\xef\xc1\x7b\x84\x7e\x66\xe4\x0b\x28\x01\x7f\x54\x9f\xaa\xaf\xa8\xfa\x9c\xb5\x4a\xe9\x19\xbe\xfb\x0c\xce\x65\x4c\x06\x58\xe2\x18\xa5\x24\xf5\x2a\xda\xee\x32\xfa\x96\xc1\xc8\x7f\x64\x2d\xe1\x77\xca\x70\xdf\x8b\x3b\x7e\xc0\x73\xae\x84\xdd\xb8\xe1\xce\x13\x37\x9e\x73\x73\xf5\xd1\xcb\x8e\x6b\x6e\x02\x8d\x90\x08\x13\x58\x61\xb7\x0c\x25\x78\xa1\x84\x9b\xa5\x94\x26\x56\x2e\x37\x80\xcf\x78\x1e\x21\xff\xb8\x88\xb1\xca\x6a\xc6\xf2\x23\xa6\xb8\xd8\x14\x77\x80\xa2\x03\x26\x2c\xd7\x9e\xb1\x36\xb3\x5f\x6b\xb5\x40\xc4\xcf\x3d\x90\xef\x1a\xd7\x96\x20\x2e\xe1\xff\xc7\x72\x76\xfd\xbf\x97\xac\x8b\x9f\xb6\x3f\x33\xda\xb2\xe8\xeb\x09\xe8\x73\x32\x12\x71\x91\x90\xc4\x74\xb9\x02\x56\x34\xbe\x62\x49\x12\x78\x2c\x25\x29\x7f\x14\xf2\x85\x51\x50\xa4\x1d\xc2\x77\x31\x17\x01\x3b\x8d\x92\xc5\x38\x54\x8e\x5b\x17\x4e\x89\x8e\x6b\x86\x8b\x4c\xc6\x78\x46\x9c\xc7\x91\x36\x74\x54\x55\x37\x79\x4a\x23\xf5\xe6\x15\xf9\x38\x5f\x39\xe5\x4d\xdf\xfc\x49\x39\x22\x01\xbe\x4b\x50\x00\xc9\x4d\x94\xe5\x1d\xc9\xbb\x9e\x62\xe1\x05\xd5\x18\xba\x0a\x9a\xa4\xaa\xd0\x59\xab\x54\x25\x56\xee\xfd\x82\x15\xe6\x98\xd2\x08\xdf\x45\x34\x83\x81\x4e\x29\xb2\xc5\x15\x9f\x3c\x44\x5e\xe1\x7a\xff\x15\x59\xcc\x82\x65\xb2\x12\x3b\x6c\x99\xad\x8a\x78\xdd\x4a\x9f\x1b\xdb\x22\x25\x77\x1d\xf7\xec\x5a\x6e\x70\xa7\x1d\xe2\xc9\xa2\xab\xa0\xe5\x96\x60\xd6\x25\xca\x0a\xc3\x8c\xcb\x0f\x55\xb2\x43\x79\xb8\xbb\xbb\x6a\x66\x66\x79\xa7\xa1\xf5\xd6\x9c\xcb\x99\x9b\xf6\xab\x73\x11\x15\x57\xc4\xba\xae\xaf\x81\x0a\x54\x50\xa6\xaa\x79\xfb\x38\x84\xe8\xcd\xc7\x06\x89\x24\x2f\xd7\xb8\x5b\xf7\x15\x75\xf9\x02\x88\x97\x06\x38\x36\xb4\xdc\xb8\x83\x69\x5c\x8b\xfb\x20\xaa\x6a\x0c\x73\xa6\x9a\x6c\xe9\x17\x86\xc0\x4b\xb7\x31\x79\x1e\x78\x41\x69\xc5\x6e\xd4\x56\xb8\x3c\x63\x97\xfe\xaa\xfd\xc0\xaf\x5d\x9e\x8b\x6b\xb7\xf3\x5a\x82\x3a\x54\xe5\xd7\x3b\x35\x7b\x78\xde\x44\xae\xf7\x6b\x88\xbb\xb8\x8b\x7f\x27\xcb\xef\xd8\x0a\x83\xc6\x98\x6c\xe8\x16\x06\xef\x48\x7c\xd0\x9a\xbe\x76\x83\x30\x39\x8e\x74\x5d\xb4\x51\xe8\xcc\xd7\x68\x2b\x86\x55\x5c\xcd\x12\xd7\xa6\x8f\xa9\xd4\xf1\xd6\xaf\x01\x14\xd5\x62\xb0\xaa\x8a\xca\x4c\x54\x0e\xfa\x41\x04\x87\x61\x5a\xb9\xa0\x5b\xec\xfd\x23\xa5\xc5\xac\x70\x99\x8f\xd5\x5a\x0b\x5e\xc6\xb0\x25\xde\x96\xcf\x1b\xbc\xca\x1b\x76\x93\x35\x1c\x14\x21\xe4\x6b\xf5\x3e\x99\x80\x46\x46\xce\xa9\xc7\x4a\xac\x57\x39\x2a\x28\x5e\x66\x27\xe6\x6a\xbf\x67\x38\xc7\xfe\x2e\x61\x57\x41\xbc\x4b\xdb\x5a\x88\x65\x5c\xc3\x9e\xd9\xde\x14\x6b\x6b\x8a\x24\x34\x5e\x66\x3d\x68\x25\x6f\x36\x91\x51\x14\xae\xf8\x24\xd5\x68\xe7\xb6\x85\x76\x32\x7c\x07\x49\x7a\xf3\x55\xb9\xdf\xdb\xe4\x0a\xc9\x4e\xb3\x2c\x97\x8d\xaa\x35\x60\xf3\x92\xfb\xe3\xc2\xcb\x20\xdf\xfc\x24\x2a\xc8\x04\xf1\xd0\x16\x93\xad\xc2\x0e\xd4\x56\x37\xb8\xeb\x52\x01\x75\x20\x9f\x18\xbd\x03\x0e\x9f\xf7\xce\xaa\x38\xa9\x48\x85\x93\x25\x75\xd9\x04\x64\x04\x4b\x8a\x0a\x4a\xb0\x8e\x5f\x2b\xf7\x1d\x97\x2b\xc8\x98\x41\x02\x7a\x6c\x82\x02\x47\x2a\x75\x6d\x2a\x37\xa7\xf8\xcd\x77\x66\x4b\x46\x10\x9b\xdc\x95\x97\x5c\x85\x4d\x22\xbf\xfe\x6a\x42\x18\x98\xb6\x1a\xd5\xfb\xb2\xc6\x01\x93\x1d\x05\x29\x20\x55\x2e\x14\xb9\x72\xeb\xe4\x9a\x33\x5d\x3f\x0e\x8a\x8c\x12\xf2\x59\xdf\x0d\xe3\x94\xa5\x19\x8a\x65\xf0\x45\x28\xb7\x69\xd2\x7d\x29\x32\x97\xd1\xf0\x7e\x9f\xe5\x62\xd5\x7e\xff\x99\xe5\xdf\x8f\x44\x02\x0e\xa1\xea\xd4\xf5\xe3\x8a\x08\xa1\x28\xaf\x35\x47\x68\x24\xcb\xed\x19\x0a\x07\x99\xfd\x5e\xad\x71\x5c\xd6\xb0\x8b\x55\xfa\x89\x2d\xc5\xc3\x15\x7e\x6a\xc8\xdd\x9a\xf2\x11\x48\x48\x88\x8f\x52\x30\x83\x45\x39\x5d\x4a\x31\x50\x51\x95\x47\x20\x19\x18\x3f\x4a\x89\x29\xd0\x75\x14\x80\xe5\xac\xd5\x0e\xc6\x81\x39\x1b\xf6\x90\x1d\x2c\x2a\x34\x1c\x9c\x11\xcd\x29\x06\x43\xbb\x07\x7c\x24\xa4\xfa\x00\x94\xec\x82\xc7\x81\x24\xd7\x92\xc7\x39\x2a\x00\xee\xcb\xdf\x03\xb6\x51\x5d\x8f\xba\xcc\x7b\x85\x8a\x02\x52\x9d\xf0\x05\x9b\xfc\x3f\x66\x61\x82\x4d\xc2\x0f\x78\x92\xbf\x9f\x4a\xae\x62\x84\x49\x47\xb7\x6b\xd9\x3d\xf2\xdd\x7f\x6c\x42\xe6\x07\x31\x3c\x2a\x2a\xfb\x2b\x50\xa9\x9c\x23\xc7\x65\x28\x3c\x1c\x6b\xa3\xfc\x1e\xca\x48\x45\x0e\x76\x41\x0c\x86\xc7\x05\x25\xd1\x88\x2b\x1f\xe5\x6a\xeb\xe2\x81\xa0\x1f\xc4\x2d\x12\xcd\xec\x20\x94\xc3\xef\xac\x48\xc6\x5c\xde\x5a\xd7\x88\x7a\x61\x1b\xee\xb0\xb7\xa8\x1f\x85\x47\xb1\x62\x58\x68\xf5\xf4\xca\x0a\x4f\x2f\x49\xf7\xef\x64\x2c\x1c\xfa\x13\x43\xac\x10\x2a\x22\x88\xf6\x79\x03\xb7\xc5\x73\xaf\x9f\xd2\xda\xa3\xf4\x6d\xd1\x38\x62\x94\xdb\xb9\xf9\xed\xcb\xca\x8d\xc9\xfc\xd2\x25\xb8\x07\x33\xc5\x39\x98\xb0\x03\x92\xa9\xfc\x0b\x7e\xae\x19\x1b\x21\xe6\x1b\xb9\x1f\x44\x29\x4b\x32\x71\x4d\x07\xc5\x7c\x7a\xeb\x17\x5f\x71\xfb\xf5\x34\xd9\x75\x1f\x86\x55\x83\x6b\x87\xc2\x5f\x2b\x96\x7a\xea\xc2\x1d\x9a\xa8\xc2\xa4\xbc\xe2\x5f\xb9\xfc\x9f\xae\x03\x3f\xeb\xd9\xd7\xf6\xad\x76\x10\x2c\x5c\x23\xe4\x42\x19\x42\x91\xd1\xa8\x33\xbe\x0c\xc9\xe8\x1b\xe0\x4a\x50\x99\x1e\x57\xdb\xa4\xd0\x3f\x7c\x14\x34\xeb\xb1\xd0\xbe\x55\xd2\xed\xa3\xec\xb1\x69\x60\x88\x51\x53\xdc\x7b\x6c\x89\x62\xc3\x84\x43\x76\xe5\x86\x41\x5b\x4c\x88\x18\x6e\x16\x76\xa2\xd1\x0c\x88\x85\xd3\x12\x75\x22\xd6\xf5\xbc\x85\x7c\x4e\x81\x55\xfd\x85\xd1\x3b\x69\x7d\xb4\x0c\x22\x6d\x8f\x96\x71\x20\x7f\x56\x2f\xe9\xfd\x55\xb9\xca\x9c\xdb\x2b\x93\xe2\xfb\xa7\x23\x15\x53\x56\x60\x4a\x44\x18\x14\x96\xe5\x7b\x47\x0d\xf1\xf0\x75\x9b\xa7\x96\x1f\xe7\x94\xe5\x97\x10\xeb\xae\x12\x19\xdf\x1b\xc7\x66\x7e\xb0\x1f\x1b\x40\x94\x01\x54\x09\xdc\x55\x3a\x69\x06\x51\x90\x05\x76\x28\x0e\x39\x81\x51\xed\x1d\x48\x8e\x55\x6d\xa0\x12\x9a\x0b\xc9\x6c\x58\xdd\x1e\x5a\x9e\x22\x4f\xee\x00\xfc\x21\x9f\x2e\xaf\x22\x5a\x73\x19\xe8\xd8\xa8\x2c\xf5\x7b\xe2\xab\x1c\xc4\xcb\xab\xc7\x66\x11\x33\xe1\x38\x91\xec\x03\x67\x01\x0a\x03\x5b\xfe\x10\x93\xa0\xf5\xfd\x95\xac\xc3\x7f\x2a\x19\x87\x3f\x91\x94\x76\x4a\x84\x24\xa4\x71\x4f\x18\x78\xc9\x8e\xda\x3d\x30\x0e\x1f\x1d\x83\x14\xde\xb0\xff\x55\x75\x42\x0f\x8b\xa3\x62\xaf\x76\xb7\x9d\xd0\x98\x44\xd4\x3e\x52\x27\x36\x00\x87\x4d\x91\xa4\xef\x24\x84\x03\x31\x8b\xb7\x27\x3b\x2c\x45\x77\x6d\x1d\x27\xc1\x3f\x7c\x48\x04\xf8\x02\xca\xad\x88\xb8\x54\xbb\x62\x49\x16\xb8\x65\x81\x30\x7e\x25\xc4\x6b\xab\x25\x2d\x65\x11\x59\x37\x2b\x82\xf6\x29\xc9\x29\xa7\x08\xa9\xeb\xf6\xd6\x79\x50\x5d\xaf\x97\x82\x5e\x2a\x95\xe6\x35\x37\x37\xbb\x79\x42\x6f\xb5\x3e\x1c\x0e\x15\xdd\x44\x29\xbe\x56\xd7\x2b\xfa\x53\xea\x3a\xef\x8a\xfc\x44\x8c\x78\xb1\x0b\xca\xdb\x07\x9c\x87\xd4\x75\xf8\x17\xc3\x07\x54\x49\xb2\xe8\x23\x7c\xc7\x59\x17\xf4\x27\xa3\x7f\xb6\xf8\x1c\xaa\x19\x55\xf3\xb6\x39\x27\x78\xc0\xb8\xed\xee\xab\x7a\xba\xc7\xae\x4c\xb7\x56\xc4\xce\xaf\xf6\xf4\xa1\x4d\x23\x3b\x7b\xa8\x9f\x4b\x6b\x35\x50\xcf\x3d\x61\x7e\x0a\x1a\x71\xe8\x0a\x13\x54\x38\x02\xf3\x0d\xa1\x8e\xf8\x51\xb4\xdf\x17\xb7\x89\x63\xce\xf0\xaa\xa5\xe2\x19\xf2\x11\x26\xf1\x02\xad\xb9\x40\xcc\x9a\x2e\x83\xc1\x7e\x9f\x22\xbc\xdf\x87\x08\x63\x0b\x71\xf1\xc8\x45\xb8\xe3\xc8\x6a\x9f\xf5\x63\xbe\xc6\x79\x4b\x1e\xfa\x85\x61\x4e\xf8\x4c\x4c\x0a\x9c\xdd\xea\x0b\x87\x41\x1c\x3b\x54\x21\xdc\xc5\x86\xcf\x09\x78\xe1\x90\x02\xfa\xff\xd2\x6b\x48\x78\x08\xb5\xeb\x6e\x3a\x56\xa7\x8b\x84\xfc\x17\x8b\xf0\xeb\x87\x03\xc9\x8a\x63\xa1\x11\xe9\xe7\xeb\xce\x06\x38\x81\xca\xd3\x21\xa2\xbd\x82\xfc\x4b\xc4\xc0\xd9\xbc\x6a\x62\x6f\xda\x97\x6d\x3e\xf7\x2d\xc9\x9e\xca\x4c\x71\xd2\x86\x5c\x92\xb2\x1a\x56\x5d\x07\xdd\x60\x5c\x5a\x77\x2b\xda\xc7\xaf\x20\x71\x8d\xec\x9b\x2d\x8f\x88\x74\x23\xe4\xf2\x9f\xdc\x33\x4f\x07\x79\x00\x3a\xc5\x3d\x91\x33\x9d\x03\x50\xea\xe7\x1b\x2b\x02\x73\x58\xb2\x34\x56\x40\x92\x7e\x48\x96\xe6\x4a\x26\x7e\xce\xcd\x25\xcb\x68\xb5\xdf\x67\x47\xd2\xc3\x2e\x77\xad\xcb\xe2\xad\x66\xc1\x37\xe9\xf9\x63\xc9\x24\x2c\xb9\x39\x32\x29\x35\x17\xc4\x2e\xdc\x80\x18\xf8\x15\x41\x26\x67\x1a\xe7\x99\x6c\x77\xd4\x5e\x04\x82\x24\xc6\xe2\xa0\x70\xe1\x89\xa0\x7d\xb1\xf8\xcc\x69\xa5\x20\x8b\x92\x1c\x86\x82\x1c\xee\x0a\x32\x99\x53\xd2\x5d\x4e\x49\xc3\x5e\x7a\x10\x7e\x7b\xe0\x56\x24\xba\x2c\x5c\x8f\xa0\xc7\x9e\xe0\xcc\x36\x41\x24\x6d\xd6\xfc\x27\x49\xee\xd1\x7b\x73\x3c\x07\x11\x0e\x40\x54\xb5\x6f\xbe\xb6\xaa\x48\xc0\xcb\xeb\x42\x8e\x98\x4e\x92\x59\xb8\x40\xb1\x85\xcc\xaf\x4d\xa9\x67\xe5\x39\xba\x29\x5d\x73\x11\x64\x4b\x7d\x3e\x6d\x7c\x2c\x37\xd4\x5f\xfa\xe5\x78\xcb\x71\x55\x47\xac\x48\x28\x2c\xf3\x06\x7b\x72\xc4\xd6\x72\xc4\xd6\x3d\x2f\x1f\xb1\x4d\x6f\x7b\x38\x92\x3b\xcd\x2a\x62\x1b\x1d\x10\x84\xb2\x24\x49\xe7\x59\xbb\x61\x08\x0a\xcb\x87\x29\xe2\x72\x2a\x3e\x20\x65\xf9\x83\xd9\x22\xa3\xd5\x27\x25\x2f\x66\xa3\x42\x3e\xda\xef\x51\xd6\x6a\xdd\x90\xaf\xf5\x80\xc2\x93\x7d\x95\xc2\xb3\xd4\x78\xb2\xaf\xd4\x78\x3e\x70\x78\x71\x12\x73\xcc\x69\x21\xff\xc2\xa7\x69\x99\x81\x7e\xf4\x50\xc4\xc9\x88\x85\xc8\xaa\x72\x71\x99\x90\x88\x9b\x27\x96\x5d\x3b\x80\xec\x36\xd2\x9d\xc7\x9c\x75\x18\x3f\xa1\xa5\x8d\x0e\xee\xd4\x17\x64\xb0\x65\x5e\x20\x25\x62\x77\x1c\x1e\xf0\xa5\x1b\x3c\x2d\xf9\x3d\x70\xcd\x82\x44\xc7\x83\x1f\xaa\x4f\xb3\x78\xab\x42\x7e\x82\x80\x87\x22\x59\xb5\x02\xfa\xe9\x80\xf1\x51\x44\x83\x42\x03\x14\x0b\x79\xa6\x35\x46\x9d\xcc\x95\x78\x20\x49\x71\x1c\x88\x18\x6f\xff\x91\x7c\x50\xe4\xcf\x54\x5c\xbc\x8b\xbd\x26\x62\x52\xe5\xba\x7f\x68\x84\x73\xa1\xea\x6f\x08\xc0\x21\x86\x15\xbc\xb3\x62\xf8\x68\x2e\xda\x94\x46\x48\x89\x0d\x8d\x17\x85\x88\x9e\xab\x4b\x17\xf5\x07\xf2\xf4\x6f\xe6\x39\xb7\x32\xdc\xb5\xd3\x84\x8b\x58\xc8\x1b\x93\xd9\xba\xf1\xa2\x73\x5b\x02\xf0\x13\x94\xea\x7a\x94\xa1\x80\xf0\x35\x1c\xc2\xf7\x98\x84\x58\xc4\xac\xad\xb9\xc6\x34\xba\x98\xe7\x31\x25\x01\x4d\x49\x4c\x43\xd2\xe0\x59\x74\xbd\xdd\x05\xc2\x56\x56\x74\x27\xeb\x22\xc6\x58\xd7\x6d\x04\x1c\x80\x32\x49\x99\x6a\x1b\x83\x18\xb2\x19\x9f\x9a\x2c\xde\xc2\x0e\xcb\xe2\x2d\xff\x09\x8b\x12\x1e\x24\x22\x0e\x7c\xbe\xfa\xe0\x99\xf8\xca\x1f\xf2\x15\x0d\x8f\x80\x80\x37\x2d\xf9\xe8\x4e\xc6\x33\xfc\x87\x71\x12\x95\xdb\xfe\xe9\x17\xa6\x6a\x97\xc4\x1d\x30\x6d\x97\xb2\x47\x69\x96\x04\x6e\xa6\x1d\x25\xfd\x84\xef\xe0\xa4\x0f\xaa\xa2\xd4\x5d\xb3\x0d\x7b\x61\x67\xec\x32\x4e\x6e\x4d\xa3\x7a\x71\x32\x37\x6c\x82\x4a\x4d\xad\xf0\xcc\x75\xc1\x0f\xac\x05\x38\x6e\x00\xff\x68\x27\x9f\x07\xad\xb0\x76\x03\xf6\x9d\x1d\x24\xcc\x6b\x05\x4e\x5b\x80\xd3\x8c\x85\x66\x2b\x74\xd8\x01\xdd\xde\x91\x5d\x03\xfa\x8c\x65\xed\x88\xdd\x36\xd0\x76\xac\x5e\x1b\xe8\xb0\x15\x74\xdd\x00\x3d\xe7\xec\x9d\xbd\xeb\x98\x12\x5f\x81\x07\x89\x74\x1b\x87\x76\xc6\x9e\x27\xcf\x7f\x6e\x85\xbf\x6c\xe0\xef\x04\xbd\x6a\x47\xfd\xee\xfd\xcf\x51\x2b\xfc\x6d\x73\xa4\xbb\x40\x9d\x0e\xd4\xc1\xa7\xf6\xae\x5c\x37\x51\x77\x81\x5e\x74\xa0\xde\xbd\x4d\x5a\xe1\x6f\x9a\xa8\xbb\x40\x4f\xdb\x51\xbf\xf7\x9e\xef\x5a\xe1\xcf\x1a\xa8\x3b\x41\xdf\x76\xa1\xfe\xf9\xb6\x15\xfe\x75\x0b\xea\x0e\xd0\xf3\x2e\xd4\x9f\xc2\x8e\xce\x3c\x6b\x41\xde\x09\xfc\xae\x1b\x7d\xc7\xe4\x7f\x6e\x45\xdf\x01\xfc\xa2\x1d\xfd\xd9\x96\xb9\x59\x62\x87\xad\x75\xfe\x6e\x6e\xb7\xfb\xc0\xdf\x77\x6c\xa1\x5d\x47\x97\xde\x34\xb7\x50\x17\xe8\x8f\x5d\xa8\xdf\xb5\x0f\xe6\x6f\x2d\xa8\x3b\x40\x5f\xb5\xa3\xfe\x39\xea\x98\xa7\x7f\x1a\xa8\x3b\x41\x7f\x6a\x47\xfd\x36\x79\xdf\x4e\x90\x9f\x37\x50\x77\x82\xfe\xd1\xb5\x3b\x3b\x87\xf0\x43\xcb\xfe\xec\x04\x7e\xd9\x8d\xbe\x15\xfe\x63\x2b\xf2\x56\xd0\x2f\x5d\xa8\x3b\xde\xf4\xe7\x16\xd4\x1d\xa0\xdf\x75\x6d\xa1\x8e\xa9\xff\xb5\x65\x03\x75\x80\x7e\x6a\x47\xcd\xb7\x5b\xc7\x7b\xfe\xd2\x40\x7e\x0f\xf0\xef\xdd\xe8\x5b\xe1\xff\x6a\x45\xde\x0a\xfa\x67\x17\xea\xb7\xc9\xf3\x76\xf2\x9c\xb1\x16\xec\x9d\xd0\x8c\x75\x37\xd0\x31\x4f\x51\x7b\x03\x1d\xd0\x49\x47\x03\xcf\xc3\x1d\x4b\xdb\x39\xa6\x26\xfe\x6e\xe0\xa0\x03\xfd\xcf\x09\x63\x51\x7b\x95\xb4\x89\xff\x1e\x68\xbb\xbb\x81\xdb\xf6\x1a\xbb\x56\xfc\x1d\xc0\x61\x07\xfa\x77\xbb\x64\x1b\x76\xbc\xb3\xd7\x6c\xe0\x3e\x70\xb7\xa3\x89\xf7\xcc\x6b\xaf\xe0\x37\xf1\x77\xc2\xae\x3b\x90\xbf\x4d\xec\xe8\xb2\xa3\x43\x9b\x26\xfe\xfb\xc0\xb7\x1d\x4d\xbc\x08\xae\x02\x2f\x68\xaf\x73\xd5\x55\x67\xe7\xb0\x35\x0b\x83\x1b\x29\x3b\xb4\x1f\x57\x5d\x03\x66\x07\x91\x13\x5f\xb7\x1f\x16\x1d\x75\x3e\xda\xc9\xa6\xfd\xf8\xec\xea\x61\x1c\xb7\x9f\xcf\xaf\x3a\x2a\x9c\x05\x11\xeb\xea\xd5\xcb\x8e\x3a\xe7\xbb\xc4\x89\xdb\xcf\x99\x8e\x1a\x1f\x82\xa4\x73\xb0\x3f\x76\xd4\x79\x6d\x5f\x6e\xec\x76\x52\xdf\x51\xe3\x55\xe4\xb3\x24\x6a\xef\xd9\xcf\x5d\x3b\x25\xb4\xd3\x8e\x66\x3e\xf1\x2a\xd2\x17\x5e\x55\x33\xe4\x59\x52\x33\x30\x24\x45\x97\xd9\xfa\xf1\x64\x6f\x90\x04\x52\xd4\x0a\xff\x75\xb0\x3d\x1a\x4f\xa2\xa7\xd9\x13\x9c\x2c\xa3\x15\xd5\xfe\x97\x76\xc2\x64\x4a\xd4\xc9\xf7\x11\x99\x7c\x7f\x72\xa2\xb8\xa5\x1f\x48\xc0\x45\x7a\xd3\x9f\x4e\x9d\x91\xef\x4f\x7d\x83\x0d\x5c\xdb\x18\xb8\xde\x64\x30\x1d\xcc\xe6\xa3\xc9\xd4\xf1\x66\xee\x78\x32\x72\xd8\x70\x3a\x75\x07\x53\x9f\xff\x39\xae\xe3\x0d\x06\xe6\xd4\x61\xae\xaf\x61\x12\x73\x1c\x53\xdf\x9d\x4f\x7d\x87\xd9\xcc\x1b\xf9\x9e\x6b\xcc\x26\xbe\xef\xfb\xf3\xf9\x70\x36\x71\x1d\xc3\x37\x8c\xc1\xd4\x77\xfc\xb1\x63\x4e\x27\xf0\x4f\xc3\xc4\x86\xb6\x9d\x39\x9b\x4e\xbd\xf9\xd8\x37\x06\xd3\xf1\xd4\x70\x86\x6c\x3a\x98\xcf\xec\xc9\xc4\x9e\x98\x8c\x4d\x6c\xc7\x18\xd8\x93\xe9\xc4\xf4\x8a\x7a\xa0\xf3\xb0\x27\x2e\x63\x43\xd3\x9f\xce\x9c\x91\x33\xf0\xfc\x99\x3d\x1c\xf2\x9e\xfb\xce\xdc\x9e\xcf\xd9\xd0\xb4\x4d\xd7\xf7\x1c\x9f\x77\x63\xea\x1b\x86\x6b\x3b\x03\x6f\x32\xb1\x87\xde\xdc\x16\x3d\x73\xcc\xf1\x7c\x30\xd3\xb0\x50\x6b\xf8\x8e\x33\xb2\x99\x33\x74\x3d\x36\x74\x5d\xe6\xb8\x63\x8f\xb9\x0e\x1b\xf9\xcc\x9b\xdb\xf0\x2e\xae\xcb\xc6\xde\xcc\xf1\x7c\xcf\xb3\x99\xeb\x0f\xf8\x9f\x86\xc9\x8e\xd7\x76\x86\x6c\xe0\x7a\xbe\xe7\x7a\xb6\xeb\x3a\xde\x98\xcd\xfc\x91\x6b\xb3\x11\x9b\xf8\x63\x77\xee\xfb\xfe\xc0\x66\xbe\xc9\x06\xae\xfc\xa7\x41\x52\x2e\xa4\xb1\x11\xef\xe7\x70\x3a\x65\xce\x6c\xe4\xd9\xfe\xc8\x9e\xcf\x46\xcc\x1e\x8a\x3e\xf3\x56\x87\x43\x7b\x32\x9e\x0c\x66\xfe\x74\x66\x3a\xfe\x1c\xfe\x69\x90\xca\x0b\x69\x93\x89\x3b\xb0\xc7\xbe\x3b\xf3\x26\x83\x99\x67\x1b\xae\xc3\xa6\x33\xdb\x1d\xda\x13\x6f\x36\x1e\xf9\xbe\x37\x1f\xf8\x6c\xec\x8e\xe6\x23\x67\xc8\xff\x34\x4c\xd6\xbc\xde\xcc\xf3\x86\xee\x94\x63\x77\x86\x0e\x73\x6c\xcf\xf6\x9d\x99\x31\x1d\xcc\x0c\xc7\xf4\x86\xbe\xe7\x8c\x26\x03\x67\xe8\xb1\xc9\xdc\x77\x5d\x8f\x8d\xbd\x39\xff\x73\xdc\x99\xe1\x78\x62\x6c\x7c\x9f\x79\x13\x3e\xf7\x3e\xc7\x37\x62\xd3\xb9\x3d\xf5\x07\x33\x36\x70\x99\x39\x9e\x8e\xe7\xd3\x89\x33\x75\x06\xe3\xb9\x6d\xf2\x01\x74\xe7\xa3\xb9\xed\x4f\x6d\xdb\xf4\xfd\xb9\x67\x4f\xe7\xee\x74\x3c\xf6\x1d\xdb\x31\x6c\x47\xc3\x64\x4b\x13\x34\x1c\x63\xb2\xa1\x8c\xfe\x20\x94\xaa\x68\xdb\x77\x30\x62\x4b\x56\x6a\x98\x31\xb9\x52\x56\xfa\xb0\xf4\x73\xf6\x66\xce\x70\x32\xf6\xe1\x6f\x6c\x3b\x23\xdb\xd5\x88\x66\x4f\x26\xa6\x69\x7b\xbe\x3b\x98\x7a\x33\xc3\xf5\x5c\xd3\x30\x67\xe3\xa9\x59\x2b\x12\xb5\x6a\x00\x33\x77\x6c\x1a\xb6\x44\x3b\x61\x33\x77\xe8\x4e\x99\xcd\x24\x72\xc3\x9c\x4c\xc6\xac\x15\x4c\x60\xbb\x07\xd8\xf1\x67\xe6\xc0\x93\x4d\x2b\x98\x45\x07\x86\xe3\xf9\x74\xe6\x3f\x58\x45\x6d\xa5\xb5\xe2\x78\x34\x34\x8c\xf1\xb7\xb6\x68\x18\x43\x77\x68\x3c\x58\xfd\xfe\xd6\x25\x12\x71\xaf\x39\xc2\xe4\x92\x6e\x44\x12\xf9\xd6\x99\xb3\xfd\x99\xe7\x0e\x81\xa4\x4c\x39\x75\x98\x3a\x1a\xd1\xa6\xce\x70\x30\x1f\xf1\x85\xed\xfa\xf6\xc4\x73\x6c\xc3\x30\x66\xb3\xe1\xb4\x56\x24\x6a\xd5\x01\x26\x03\x7b\x36\x14\x68\xd9\xd4\x1b\xb1\x99\x37\xf7\x0d\x6f\x28\x90\x9b\xce\xb4\x0b\x4c\x60\xbb\x07\x78\x3e\x9f\x1a\xb6\x23\x9a\x56\x31\x8b\x0e\x8c\x6d\x9b\x4d\xcc\x07\xab\xa8\xad\xb4\x56\x1c\x19\x86\x31\x72\xbe\xb5\x45\xc3\x18\x8d\x4c\xe7\xc1\xea\xf7\xb7\x2e\x91\x14\x33\x77\x4b\x37\xc8\xc1\xe4\xa2\x7d\xe6\xd8\xdc\x1e\xba\x73\x39\x07\xa6\x37\x9d\xd8\x1a\xd1\x3c\xc3\x74\x67\x8e\x6f\x3a\x13\xcf\x76\x66\xcc\x9c\x4d\x46\x9e\xed\x0e\x26\xb5\x22\x51\xab\x06\xe0\x8e\x4d\x67\xea\x49\xb4\x1e\x33\x98\xcf\x49\xa7\x67\x08\xe4\x23\x6f\x3e\x18\x98\xad\x60\x02\xdb\x3d\xc0\x1e\x9b\x4e\x39\xf1\x85\xa6\x15\xcc\xa2\x03\xfc\x30\x1b\x99\x0f\x56\x51\x5b\x69\xad\x38\x63\x86\x39\x1e\x7c\x6b\x8b\x83\xe9\x64\x64\xce\x1f\xac\x7e\x7f\xeb\x12\x49\x31\x73\xd7\x74\x23\x62\x0a\xb6\xce\xdc\x7c\x3e\x63\xf9\x9e\xf3\x4d\x7b\x38\x82\x2d\xcf\x86\xee\x7c\xee\x0c\x6c\xc7\x1b\xf8\x9e\x33\x9b\x0c\xd9\x64\x62\x1a\x66\xbd\x48\xd4\xaa\x01\x8c\x06\xd3\xd9\x4c\xa0\xf5\x66\x9e\xcd\x1c\x9f\x31\xc3\x99\x08\xe4\xce\x70\x3c\x33\x26\xed\x60\x02\x5b\x37\xf0\xcc\x98\x0e\x6d\x57\x34\x5d\xc1\x2c\x3a\x60\xcc\x06\xe6\xe8\xe1\x2a\x6a\x2b\x6d\x15\x07\x1e\xdf\x34\xdf\xda\xe2\xd4\x1f\x3a\xc6\xec\xe1\xea\xf7\xb6\x2e\x91\x14\x33\x77\x43\x37\xe8\x14\x93\xb7\x1d\x7b\xce\x9f\xd9\x13\x39\x07\x93\xa9\x3d\x77\x7d\xbe\x60\x6d\xc3\x18\x18\xfe\xc8\x1e\xcf\x06\xf3\x01\x67\x5a\x8c\xf1\xd4\x74\x8c\x5a\x91\xa8\x55\x03\x70\x06\xe6\x6c\xe0\x48\xb4\x9e\xe7\xb8\x53\xcf\x64\x63\xdf\x10\xc8\x07\xe6\x64\x02\x47\x69\x13\x4c\x52\x92\x6e\x60\x6f\x32\x31\x46\x9e\x6c\x5a\xc1\x2c\x3a\x30\x1a\xce\x87\xee\xf0\xc1\x2a\x6a\x2b\xad\x15\x27\x53\xc3\x30\xfd\x6f\x6d\xd1\x18\x0f\x8d\x89\xf9\x60\xf5\xfb\x5b\x97\x48\x8a\x99\x3b\xa3\x1b\xf4\x16\x93\xf3\x7b\x67\xce\x17\x7c\x27\x70\x70\xd5\xe9\x71\x6c\xfe\x37\x32\xf8\x5f\x7d\xe6\xe0\x5f\x0d\xa0\x39\x25\xcc\xe0\x7f\x02\xf9\xc8\xe3\x7f\xed\x33\x07\xff\xee\x01\x6e\x0e\x84\x00\x16\x1d\x98\x4d\xf9\xdf\x83\x55\xd4\x56\x5a\x2b\xde\x3f\xf4\x5d\x15\x4d\x9b\xff\x3d\x3c\x73\xf7\xb6\x2e\x91\x14\x33\xf7\x9a\x6e\xd0\x39\x26\xef\xda\x67\x8e\xf3\xd6\xe3\x39\xcc\x80\x3f\x37\x1d\xdf\xe3\xc7\xac\x37\x35\xe7\x5c\xb8\xe0\x87\xa7\xed\x78\x73\x36\x1f\xb8\x53\xc7\x99\xd4\x8a\x44\xad\x06\xc0\x90\x4b\x42\x02\x2d\x63\xc6\xdc\x60\x86\x3f\xf4\x67\x02\xf9\x68\x3c\x1d\x3b\xa3\x56\x30\x81\xed\x3e\xe0\xd1\xc4\x1b\x0d\x65\xd3\x0a\x66\xd1\x81\xe9\xc8\xf6\x3c\xf3\xc1\x2a\x6a\x2b\xad\x15\xed\xb1\x61\x0c\x26\xdf\xda\xe2\xd0\x1c\x4e\xe6\xe3\x07\xab\xdf\xdf\xba\x44\x52\xcc\xdc\x33\xba\x41\xef\x30\x79\xf1\x35\x33\xe7\xfa\x13\xa3\x3e\x73\x13\x6f\x3e\xb1\x4d\x7b\x3e\x19\x99\xed\x33\x57\x07\xa8\x4e\xc9\x8c\x77\xd0\x9f\x39\x02\xb9\x69\xcf\x67\x63\xa3\x15\x4c\x60\xbb\x0f\xb8\x36\x10\x39\x66\xd1\x81\xc9\xc4\xf1\x26\xc3\x07\xab\xa8\xad\xb4\x56\xbc\x6f\xe8\xbb\x5b\x34\x8c\x89\x60\x4d\xef\xaf\x7e\x7f\xeb\x12\x49\x31\x73\x9f\xe9\x06\xbd\xc0\xe4\xfd\x57\xcc\xdc\xdc\x1b\xcf\x47\xcd\x3d\xe7\xd9\xa3\x81\x33\x1b\x3a\x76\xd7\x9e\xab\x00\x8c\x87\x6c\xe4\xab\x53\xc2\x59\xa9\xf9\x4c\x20\x1f\x0e\x66\x33\xc7\x6b\x05\x93\xeb\xf1\x1e\xe0\xc6\x40\x08\x60\xd1\x01\x21\x9e\x3f\x58\x45\x6d\xa5\xb5\xe2\x9c\x19\xe6\x68\xf0\xad\x2d\x8e\xd9\xc8\xb7\x07\x0f\x56\xbf\xbf\x75\x89\xa4\x98\xb9\xbf\xe9\x06\xbd\xc7\xe4\xc7\x8e\x73\x8e\xcb\x86\xf3\xf9\xdc\x9b\xb9\xf3\x81\x6b\x0f\xc6\x9c\x43\x61\x9e\x3f\xf3\x1d\x67\xc0\x06\x6c\x00\xa8\x47\x83\xe1\xcc\x19\x8d\xdb\x8b\xa0\x96\x61\x4c\xbc\x81\x5b\x00\xb8\x2e\x73\xd9\x44\xa0\xfd\x26\xb0\x91\x69\xb3\xe9\x44\x34\xc7\x45\xda\x01\x5f\x49\xfe\xd4\x77\x7d\x4f\x74\xf5\xbf\x50\x85\x77\xa9\x2e\x4b\xbd\xa1\x1b\xf4\x23\x26\xaf\x3a\x46\xcd\x60\xae\x3f\x9a\x33\xc7\xf5\xec\xd9\x6c\x3c\xb1\xa7\xe5\xd0\x80\x3a\x8a\xb7\xe4\x4e\x66\xb3\x91\x39\xf7\x3a\x8a\x78\xad\x99\x69\xf8\xd3\x72\x38\x1c\xdf\x1b\xb2\x89\x44\xfb\x4d\x60\xee\xc4\x71\x4c\xd1\xdc\x84\x19\xe6\xc4\x29\x87\x00\xba\xfa\xaf\x57\x11\x5d\x1a\x01\x27\x5d\x8e\xda\x6f\x74\x83\x5e\x61\xf2\x53\xd7\xa8\xf9\x43\xcf\xb1\x67\x9e\xe7\x8c\x47\x43\x7b\xe0\xf2\x9d\xee\x1b\xfe\x9c\xcd\x1c\x9b\x8d\x1c\x77\xea\xb8\xae\xcb\x89\x80\xeb\xb0\xd6\x22\x51\xcb\x98\x4d\x66\xc0\x4d\x0a\x00\xa1\xde\x12\x68\xbf\x0d\x8c\x39\x43\x6f\x28\x9a\x33\x66\xe3\xd9\x9c\xe5\x43\x60\x88\xae\xfe\x17\xaa\xf0\x2e\x19\xb3\x91\x31\x53\x38\xd1\x7f\xe8\x06\xfd\x84\xc9\x1f\x1d\xb4\x95\xb1\x99\x3b\xf3\x3d\xc7\x99\x8d\xd8\x70\x64\x0f\x87\xbc\x49\xe6\x1b\xde\xdc\xf7\x5c\x77\x66\x0b\xf2\xc7\xc9\xbc\xe9\xb7\x16\x89\x5a\xce\xd0\x30\x0c\x43\x01\xf0\x46\x73\x26\xd0\x7e\x1b\x98\x3f\x19\x8f\x66\xa2\xb9\xf9\x3c\x07\xf6\xfd\x29\x73\xf3\xae\xfe\xcb\x55\x44\x97\xa6\x3e\x54\x2c\x46\xed\x39\xdd\xa0\x3f\x30\x79\xd9\xb1\xd6\x5c\x36\xf0\x0d\x7b\xe2\x78\x9e\x63\xba\x73\x03\xf8\x77\x7f\xc2\x05\x73\xc7\x73\xe7\xcc\x14\x42\x90\x31\x98\x99\x33\xbb\xb5\x48\xd4\x32\xcc\x89\x3b\x2e\xeb\x7a\x86\x67\xb2\x89\x40\xfb\x4d\x60\xc3\xc9\xdc\x70\x0d\xd1\x9c\x61\x4e\x46\xe3\x7c\x08\x7c\x47\x74\xf5\xbf\x51\xc5\x1d\xcf\x0d\x73\x34\x19\x4e\xca\x51\xfb\x40\x37\xe8\x25\x26\x5f\x3a\x47\x6d\xea\x0f\x04\xc6\x72\x1b\x9a\x8c\xf9\x13\x31\x34\xd3\x11\x8c\xda\x78\x6a\x80\x38\xda\x2c\x92\xeb\x7c\xc4\xb7\x40\x01\xa0\x76\xf4\x9b\xc0\xe4\xfb\x40\x73\xc6\x70\xc4\x40\xdb\x58\x0c\xc1\xd4\x1f\xfc\xfb\x55\xa0\x4b\xc6\x60\x38\x1b\x2b\x52\xfe\x47\xba\x41\x5f\x30\xf9\xae\x63\xd4\xa6\xcc\x64\xbe\x3b\x9f\x8f\xdc\xa9\xe7\x99\xee\x74\x5a\xbe\xd2\xd4\x19\x7b\x33\xcf\x9f\x8c\x1d\xc3\x65\xe6\x60\x3c\x69\x2d\x12\xb5\xe6\x33\xc3\x18\x0d\x4b\x80\x91\x33\xf7\x6c\x89\xf6\x5b\xc0\x84\x35\x46\x34\x37\x37\x0d\x63\xe8\x0b\x22\x35\xf2\xe7\xa2\xab\xff\x7e\x15\xe8\x92\x90\xf1\xca\x51\xfb\x99\x6e\xd0\x77\x98\x7c\xea\xa0\x6b\x1e\x33\x3c\xcf\xb7\xe7\xbe\x33\x76\xc7\xa6\x23\xb6\x21\x63\x0e\x1b\xf8\x8e\x33\x72\xe6\xfe\x74\x32\xb3\x4d\x9b\x19\xe6\x94\xb5\x16\x89\x5a\x53\xdb\x30\xc5\x88\x0b\x00\xd7\x1d\xbb\x86\x40\xfb\x4d\x60\x9e\x37\x1c\xcd\xa7\xa2\xb9\x12\x98\x2f\x9c\xa1\xec\xea\x7f\xa7\xca\x68\x6e\x18\x13\x45\xba\xfd\x95\x6e\xd0\x27\x4c\x7e\xef\x58\x6b\x9e\x3f\x73\xcc\xa9\xef\x7a\x8e\x33\x70\xa7\xbe\x33\x13\x4d\xfa\xae\x6b\x9b\x9e\xed\x70\x2e\x66\xe2\x8e\x06\x83\x31\xb3\x3b\x8a\xa0\xd6\x60\x3c\x1c\x01\x97\x2e\x00\xdc\x29\x9b\x3b\x23\x81\xf6\x9b\xc0\x4c\x6f\x6e\xba\x86\x68\xce\x70\x07\xee\x2c\x07\xf6\xe6\xa2\xab\xff\x7a\x15\xd1\x25\x63\x66\x7a\xea\x0e\xfd\x85\x6e\xd0\xef\x98\xfc\xd9\xb1\xd6\xa6\xbe\xeb\xcc\x6d\xcf\xf3\x66\x6c\x68\xda\xc3\xb1\xf2\x4a\x03\xce\x1a\x4e\x67\xee\x64\x3a\x1f\x0c\x67\x23\xb1\xb3\x1a\x45\xa2\x56\x21\x5a\x09\x00\x6f\xee\x1b\xf6\x50\xa0\xfd\x26\xb0\x91\x69\x3b\x63\x4f\x34\x67\x18\x63\x7b\x38\x90\xc0\x6c\x2c\xba\xfa\x5f\xa8\x32\x11\x16\x83\xf1\x40\xd1\x3b\xff\x45\x37\xe8\x4f\x4c\x18\xeb\x18\x36\x7e\x24\xba\x3e\x73\x47\x23\x1f\xcc\xbd\x2c\x9f\x29\xb0\xb1\xce\x98\xcf\xe6\xf3\xc1\xdc\x75\x47\xae\x31\x68\x2d\x12\xb5\xe6\xf3\xe1\xc8\x18\x29\x00\x6c\x38\x37\x05\xda\x6f\x02\x63\xee\xd4\x30\x47\xa2\xb9\x99\x3b\xf0\x0a\x60\x36\xce\xbb\xfa\x2f\x57\x11\x5d\x9a\x4c\x06\x63\x43\x39\x44\x33\x46\x37\x88\x31\x4c\x92\xce\x81\x63\x9e\x6d\xf8\xcc\x19\x8c\x5c\xdf\x18\x3a\x03\x79\x74\xfb\xce\xc0\x67\x9c\x26\xf8\xde\xcc\x1b\xba\xc2\xe4\xdd\x5a\x24\x6a\x39\x1e\x97\xe0\x15\x00\x6f\x3e\x9d\x48\xb4\xdf\x04\xe6\x8e\xd8\xc0\x16\xcd\x39\xa6\x02\xec\xba\x79\x57\xff\xed\x2a\xd0\xa5\x99\x01\x15\x8b\x81\x8b\xf8\xc0\x25\x0c\x93\xa0\x63\xe0\x3c\xc6\x1c\x7f\x3a\x67\xae\xcd\xcc\x21\xe8\x0a\xb9\xd4\xe3\xfb\x43\xdf\x77\x3c\x6f\xca\xa6\x13\xc7\x66\xde\x64\x60\x4e\x4d\x67\xdc\x5a\x24\x6a\x19\xb3\xb1\x39\x77\x0b\x00\x77\xe2\x39\xcc\x17\x68\xbf\x09\x6c\x34\x98\x0f\x5c\xd9\x9c\x31\x1b\x09\xc5\x06\xe7\x25\x7c\x5f\x74\xf5\xbf\x50\x85\x77\xc9\x98\x0d\x8d\x89\x22\x58\xc5\x7c\xe0\x02\x86\x89\xdd\x31\x70\x5c\xd2\x65\x86\x6d\x7a\xf3\xb9\x53\x50\x38\x4e\x4e\xd9\x1c\x04\xa8\xe1\x74\xe4\x8e\x72\x91\xb7\xb5\xa8\x20\x5d\xa5\x80\xce\xe6\x9c\x14\xbb\x12\xed\x37\x81\x15\xb4\x47\x08\xe5\x92\x5c\x71\x41\x69\x2c\xba\xfa\x5f\xa8\xd2\x26\xc7\xa7\x7c\xe0\x6c\x86\x49\xd8\xb5\x55\x0d\xfe\xe7\x78\xfc\x6f\x32\xe4\x7f\xa2\xd5\xa9\x3f\x15\x7e\x1f\xf3\x09\xff\x1b\x0f\xf8\x5f\x6b\x91\xa8\x05\xe5\xe3\x02\x40\xfa\x5f\x00\xda\x6f\x02\x9b\x0e\xf9\x9f\x68\xae\x04\x16\xff\xa0\xab\xff\xa5\x2a\x86\x51\x15\xaf\x76\x7c\xe0\x42\x86\x89\xdb\xb5\xe2\x7c\xe6\xf9\x63\xc7\x75\x3c\xcf\x9d\x8e\x27\x8e\x63\xf2\x56\x07\xbe\xe1\x4f\x5d\xc7\x9d\xb3\xc1\x9c\xcd\x6d\x77\x36\xb1\xc7\xa6\x3d\x6c\x2d\x12\xb5\xc0\x0e\xe7\x17\x00\x9e\xed\xd9\xcc\x11\x68\xbf\x09\x6c\x66\x4c\x3d\xc7\x16\xcd\x8d\x6c\x73\x34\x03\x82\xe5\xfa\x8e\xef\x89\xae\xfe\xeb\x55\x44\x97\x86\xbe\x61\x4c\xbd\x72\xe0\x3c\x3e\x70\x2e\xc3\x64\xdd\xb5\xe2\x18\x33\xbc\x81\xef\xce\x07\xd3\x81\xc7\x06\x9e\xa0\xac\x8c\x8d\xbd\xb9\xef\xda\x6c\x6e\xfa\xce\xc4\x1e\xd9\xae\x63\xce\x4c\xaf\xb5\x48\xd4\xb2\xc7\x86\x6f\x8e\x15\x00\xc7\xb1\x4d\x81\xf6\x9b\xc0\x98\x3f\x74\x06\xae\x68\x0e\xa4\x73\x4f\x2c\x9f\xb1\x6f\xe4\x5d\xfd\x97\xab\x88\x2e\x71\x71\xc1\x50\x06\xce\xe7\x03\xb7\x66\x98\x6c\xbb\x07\x6e\xe2\x32\xd0\x84\x3a\x6c\x32\x1e\x1b\x72\x74\x3c\x8f\xf9\x9e\xc3\x66\x63\x71\x0c\x79\xf3\xd1\x14\xcc\xdc\xcd\x22\x51\xcb\x9e\x0c\x27\xc6\x50\x01\xf0\x0c\x7b\x20\xd0\x7e\x13\x98\x6f\x4e\xe6\xe6\xd0\x9b\x8f\x66\x86\xa9\xf2\x16\x63\xb0\x41\x43\x57\xff\xe5\x2a\xa2\x4b\x53\x7f\x30\x35\x46\xe5\xc0\x6d\xf8\xc0\x6d\x19\x26\x57\xac\x2d\xce\x2e\x2b\x2e\x20\x23\x83\xe4\xd7\x98\x91\x49\x18\xc6\x44\x4b\x2e\x1d\xa4\x9d\xb4\x01\x0c\xc6\x63\xa2\x84\xa3\xe9\x8d\xfa\xe3\x51\x8f\x7d\x8f\x86\xe3\xfe\x10\xbe\x0c\x86\x33\xb3\x3f\x1d\xf2\xaf\x93\x91\x31\xe8\x4f\xf9\xb7\xa9\x31\x18\xf5\xa7\x83\xde\x60\x6a\x1a\xfd\xf1\xf4\x7b\x86\xc5\xbf\x13\x8d\x3c\xfa\xaa\x76\x86\x83\xfe\x68\x7e\xc2\xbe\x47\xe6\xd4\xe8\x4f\x87\xfc\xdb\x78\xd0\x9f\x0d\x38\x72\x73\x68\xf6\x47\x13\xf8\x36\x9d\xf4\xc7\xb3\xde\x64\xda\x1f\xfe\x07\x6d\xcc\xcc\xfe\x60\xc4\x31\x8f\x46\x83\xfe\x10\x10\x0e\x46\xb3\x41\x7f\x24\x5e\xc6\x9c\x4c\xfb\x03\x78\xc5\xc9\xc4\x1c\xf5\xe7\xa3\xde\x60\x34\x1d\xf7\x27\x6a\x4b\x58\x3b\x90\x4b\x46\x13\x34\xc5\xc4\xe1\x9f\x73\x7c\xe4\xc6\x51\x9a\x3d\xba\x95\xe3\xfd\xee\xd5\x63\x73\x66\x90\x0b\x46\xcd\x99\xf1\x58\x3e\x12\x89\x24\x19\x35\xfb\xd3\xd9\x60\x3a\x25\xa7\x8c\xf6\xfa\x83\xf9\x60\x30\x25\x37\xfc\xeb\xdc\x98\x8c\xe6\xe4\x2d\x07\x98\x4f\x07\xf3\x11\x39\x63\xf4\x2d\xfb\xfe\x86\x91\x73\xf8\x72\xcd\xc8\x6b\x46\xaf\xd9\xf7\xa7\xac\xf7\xa8\xd7\xe7\x24\xcb\xfc\xfe\x86\x95\xb7\x21\xdf\xe5\xf1\xb7\xd9\xa3\x3c\x9c\x46\xec\x3f\x7a\x51\x5c\xee\xe7\x1b\xeb\x05\x43\xac\xbf\x26\xac\x9f\x12\xd6\x0f\x09\xeb\xc7\x5b\xdb\x0d\xb2\x5b\x7c\x54\xa9\xe4\xb0\xbe\xb3\xdf\xa3\x3c\xbe\x2e\x72\x58\xff\x12\x23\x86\xf3\x58\x82\xac\x9f\x3c\xe6\x03\x9b\x50\xd6\xbf\x84\x6f\x11\x65\x7d\x07\xbe\x05\x14\xbd\x66\xdf\x47\x27\x67\xec\xfb\xac\x77\xce\xbe\x4f\xf0\x63\xf4\x9a\x9d\x9c\xb1\xde\x39\x44\x9a\x88\x7a\x01\xb1\x29\x7a\xcb\xbe\x47\x49\x2f\xc0\xbd\x53\xf6\x7d\x8c\x1f\xdf\xb0\xff\x3f\x6d\xdf\xde\x1c\xc7\x71\xe4\xf9\x3f\x3f\x05\x84\xb8\xa0\xa6\x89\xe6\x5c\x66\x3d\xb2\xb2\x60\xcf\xf1\xb8\xb6\x76\x57\x11\x92\xac\xb0\x68\xdf\xed\x71\x11\x72\x3d\x32\xc1\xb1\xc0\x19\x7a\x66\x48\x9a\x26\xf0\xdd\x2f\xaa\xe6\x81\x81\x00\x4a\xb2\x77\xfd\xcf\x0f\x5d\xdd\xf5\xc8\xca\xca\xca\x07\xa6\xbb\x72\x5c\x6f\x99\xb7\xfe\xcb\x6a\x33\x49\x4f\xd2\xd9\xb2\xdd\x6f\xf5\xe6\x4f\x26\xf8\x74\x3e\x0c\xe3\xd5\x6c\xfd\xac\xd7\x49\x9b\xb4\x30\x93\x34\x2e\x87\x27\xdf\xcb\x53\x34\x70\xfe\x4d\xfa\xe6\xd1\xdd\x79\x5e\xfd\x1a\x9e\x5d\x9d\x59\x82\xf3\xab\x71\x3d\xce\x8f\xe6\x7a\x94\x13\x51\x6e\x8f\x46\xd8\xb5\xc6\xd9\x6c\x96\x56\x97\x6f\xb7\x5f\xdb\x6e\xdf\x67\x7c\xd6\x59\x7b\xbe\x67\xe0\xb6\x45\xff\x2c\x7c\xf1\x0c\xcf\x17\x47\x1d\xfe\xe6\xa8\xc3\xcd\xab\xf9\x7a\xfa\x6a\x76\x26\x63\xbf\x5a\xcf\xce\x36\xdb\xab\xab\xd9\xd9\x6a\x7b\xb5\xa3\x68\x76\xb6\xb8\xd9\x71\xfa\x52\xa6\x69\x98\xfc\x46\xc6\xe7\xfb\x3c\xf4\xed\x56\x1e\xda\x12\xa4\xf1\x63\xee\x5f\xb0\xde\x39\x96\xe3\x68\xb3\xef\x0e\xce\x7c\x96\x65\x5a\xce\x3b\xa3\xde\x2c\xdf\xb7\x96\x65\x94\xe6\x81\x77\xf2\xb7\x64\xed\x68\xda\x11\xf4\x44\xee\xd0\x33\xdc\x8c\x35\xad\x7e\xf8\x05\xc3\xd4\x3b\xc3\xd4\xbf\x7b\x98\xd5\x65\xbe\x7f\x5a\xcf\x7c\xfd\x4d\xfa\x66\xd7\xc1\xf0\x0c\xce\x77\x97\x67\x68\x60\x78\xf2\x41\xc6\xcd\xec\x6c\xdb\xdf\xb8\x3a\xae\xbb\x6e\x75\xb7\x57\x4f\x36\x4d\x64\xfa\xfb\xd5\x9d\xbe\xb2\x5c\x4f\x5a\xe8\xb1\x93\xb0\x79\x9b\xcf\xb1\xb8\x34\x79\x6f\x9a\xe2\xc9\x64\x73\xb6\x7a\x32\xd9\xef\xae\xc5\xd9\x7b\x79\xd2\x04\xef\xf6\xd1\x17\x4d\xb4\xff\xfa\xe3\xbb\xbf\x93\x27\x8b\x61\xf8\xd1\xe4\xf6\xef\x85\xff\xd0\x74\x04\x1f\x1d\xda\xf8\x7b\x79\xe0\x8c\x8e\x93\xcd\x64\x35\x7c\x3c\xfe\xfe\x7c\x5c\x1c\x8e\xd3\x9e\x4c\x36\xb3\xe7\x32\xd9\x0c\xc3\xf4\xd5\x38\x59\xb4\xeb\x45\xbb\x6e\xfb\x69\x27\x25\x3f\x74\xc1\xd9\x4c\xd7\xe3\x62\xba\x1e\xc6\xf4\xe3\xfb\x57\xe3\x62\x7a\x75\x7b\x3a\xe5\xe1\xfe\x8e\xdc\x71\x71\xab\x0a\x3e\x7d\xa0\xc8\x66\xfa\x6a\x36\x6f\x9c\xdc\x4c\xd7\xb3\xe5\xf6\xe2\x6a\x96\x26\x07\x21\x90\x71\xd5\x53\x47\xec\x05\xbb\xb3\x7d\x73\x76\x7a\x7a\xb3\x3f\x29\x71\xd5\x84\x7f\x31\xbd\x4c\xaf\x5f\xa7\xd9\x66\x5c\xdc\x4c\x70\xb8\xf9\xbd\x34\x7a\xca\x96\x5f\x7f\x96\xd9\xb6\x9c\x86\xf1\xb7\x32\xfb\xb3\x4c\x9e\xcb\xc4\x02\x8c\x53\x3f\xc2\x30\x3e\x97\xc9\x53\xe3\x7a\x09\x87\x61\xfc\x66\x5f\xe3\x29\xb6\x2a\xc1\x8f\x53\xeb\x7b\x2d\x86\x11\xa7\x7e\x9c\xf2\x30\x8c\x5f\xee\x6b\x19\xfa\x74\xa5\xaf\xa4\x31\x76\x18\xff\xf5\xae\x2d\x9d\xc8\xaf\xe1\xfa\x5a\xfe\x17\x0e\x8f\x1f\x4f\xe4\xe9\x56\x86\xf4\x6a\xb9\x5c\x1d\x69\xc4\xad\x5a\xca\xeb\x89\x3c\x9d\xfa\x03\x0b\xbf\x92\xe9\xab\x99\x25\x78\x22\x9d\xba\xaf\x64\xba\x9e\xe1\xd4\x3f\xc5\xa9\x7f\xb2\x69\xc5\xab\xd9\x94\x9f\x4e\x63\x2f\x34\x2e\x8d\x7f\x3b\xd6\xb9\x3a\x4c\x86\xf1\x0f\xb7\x46\xc5\x8e\xff\x22\x33\xf3\xe4\xb6\xf8\xef\x0f\x1c\x02\x7f\x38\xab\x6f\x36\x99\xfa\xa7\x32\xec\xab\x8f\x7f\x93\xe9\x6a\xb6\x95\xd9\xe3\x7d\x30\x3c\xd9\xb4\x47\x97\xf7\x1f\x9d\xfd\xe1\xf0\x34\x3f\xf0\xf4\x5f\xf6\x4f\x3b\xe1\x7f\xfc\x27\x3a\x20\xd6\x4d\x09\xbb\x63\x80\xc1\x4c\x6d\x37\xd5\x08\x21\xda\xa9\xef\x16\xdc\x5a\x0b\x30\xc5\xee\x28\x58\xb6\xd1\x4d\x5d\x7c\x8a\x8e\x8d\x9f\x82\xff\xfb\x7d\x04\x63\xa7\xb6\x0f\xe7\x7d\x98\xda\xee\x87\xa0\x31\x7e\x37\xb0\xf5\xc1\x4d\x23\xed\x68\xb0\xd3\x10\xce\x02\x84\xa9\xa7\x7f\x60\xa0\x30\x35\xad\x77\x6b\x10\xa7\xd8\x7b\xf4\xd6\x84\x69\xec\xfe\x94\x09\x8c\x5b\x6f\xcb\x78\x8a\x53\xe4\xa7\xc4\x96\xa7\x44\x77\x7d\x91\x5b\xbd\xf2\x97\x3b\xe7\xed\x6d\x4d\xd7\xbd\xcd\xbc\x3a\x3a\x4a\xfc\x21\x12\x37\x4f\x71\x3c\x92\xf0\xd5\x93\xcd\x30\x0c\x17\xdb\x13\xf9\xfe\x8f\xcc\xfe\x22\x93\xc5\xe4\xd4\x39\x40\xef\x9c\x03\xe3\xc9\x79\x70\x3e\x38\x0f\xde\x47\x47\x10\x7c\x72\x04\xec\x8b\x23\x48\xbe\x3a\x82\xec\xc5\x05\xa8\x04\x2e\x80\x10\xba\x80\x40\xd6\x05\x44\x72\x2e\xa0\x25\xef\x18\x1d\x05\xc7\x48\xc4\x8e\x31\x50\x74\x8c\x4c\xc9\x31\x26\x2a\x8e\x31\x53\x75\x8c\x85\xc4\x31\x56\x52\xc7\xa8\x01\x1c\x1b\x08\x6d\x91\x31\x58\xc7\xc6\x06\xe7\xb8\x39\x6b\x6d\xd9\x03\x39\x36\x14\x82\x63\xc3\x81\x1d\x9b\x18\xa2\x0b\x26\x85\xe4\x82\x29\x1d\x6b\xc8\x2e\x18\x09\xc5\x05\xa3\xa1\x3a\xb2\x10\xc4\x91\x35\x1d\x6d\x50\x47\xd6\x31\x38\x6f\x3d\xa3\xf3\x36\x74\x64\x36\xce\xd9\xc8\xd6\x39\x9b\x3a\x66\x76\xce\xda\xda\x51\xd8\x3b\x63\xb5\xa1\x03\x26\x67\x1c\x32\x39\x74\x86\x83\x43\xe7\x38\x38\x70\x9e\xd9\x81\x23\x66\xab\x2e\x74\x64\x8e\x56\x5c\xec\x98\x3a\x16\x4e\xb6\xba\xda\x51\x38\xd9\xe2\xb4\xa1\x07\xce\x36\x7b\xec\x68\x38\xdb\xe4\x6d\x47\xc7\xc5\x46\xef\x3b\x12\x17\xcb\x9e\x3b\x46\x2e\x36\xf8\xd4\x31\x73\xb5\xe4\x4b\xc7\x16\x5c\x78\x2f\x1d\x95\xab\x6d\x0b\xd6\x10\xb9\x5a\x4b\xa6\xa3\xe5\x6a\x0d\x39\x16\x6b\xc8\xb3\xd8\xb6\x38\x0d\x43\x47\x66\xb1\x40\xb1\x63\x62\x31\x4a\xb9\x63\x61\x31\x42\xb5\xa3\x74\x54\x16\x53\x03\x74\x44\x16\x53\x76\xd8\x3f\x3f\x09\x96\xc5\xe4\xe0\x3a\x7a\x16\x93\x02\x75\x0c\x1d\x99\xa5\xad\x5c\xc7\xd4\xb1\x8d\xc2\xa1\x74\x6c\xa3\x84\x20\x1d\xdb\x28\x81\xdb\x28\xc4\xd8\xd1\x1c\xd0\xb3\xed\xe8\x3a\xb6\x51\x1c\x53\xc7\x36\x8a\x65\xee\x18\x3b\x26\xae\xc6\x70\xee\x58\x3a\x56\xae\x06\x59\x3a\x6a\xc3\x08\x1d\x5b\x0c\x07\xd1\x1c\xa1\xe5\x82\x1a\x5d\x47\xcf\x19\x35\x52\xc7\xd0\x91\x3b\x46\x4e\xa8\x31\x71\x42\x89\xb9\x63\xe1\x88\x12\x2b\x47\xd4\x28\x1d\x95\x19\x35\x41\x47\xdc\x61\x40\x4d\x86\x83\x81\x64\x99\x0c\x24\xc7\x64\x30\x79\xf6\x06\x13\xb1\x37\x8d\x59\x0d\x99\x9d\xb1\x29\xb2\x35\x2e\x25\xb6\xc6\xa7\xcc\xc6\xf8\x54\xd8\x18\x4a\x95\xd1\x84\x8e\x9c\x84\xc1\xc4\xa4\x41\x4d\xca\x10\xd4\x94\x8c\x41\x4c\xcd\x26\x54\x23\xd9\x86\x62\x34\xbb\x50\x2c\x66\x1f\xb2\x35\x99\x42\xb2\x2e\x53\x88\xd6\xe7\x10\xa2\x0d\x99\x03\x5b\xce\x31\x04\x9b\x72\x0a\x64\x73\xce\xc1\xdb\x9a\x4b\x70\x56\x73\x09\xd6\x41\xae\xc1\x38\x93\x25\xa0\x73\xb9\xed\x59\x2a\xd0\xf6\x6f\x41\x12\x97\x0a\x52\x75\xa5\x18\x2a\x4e\x8a\xa5\xec\xa1\x38\x4a\xde\x14\x4f\xd1\xbb\xe2\x89\x3d\x15\xa2\xe0\xb9\x04\xf2\x6d\x12\xe4\x7c\x29\x4c\xd6\x4b\x89\x64\x08\x4a\x22\x20\x5b\xb2\x57\xf2\x25\x7b\xa1\x50\x8a\x2f\x14\x4b\xf5\x99\x4a\xa9\x3e\x91\x14\xf1\x1c\xa0\xa8\x0f\xc1\x56\xf0\x14\x7c\x05\xef\x42\xa8\xe8\x6d\x48\x15\x3d\x86\x52\x8d\x87\xa0\xd5\x3a\x61\xac\xd6\x55\x76\xd5\xb9\xcc\x54\x7d\xdb\x97\xd5\x3b\xe6\x5c\xc9\x11\x4b\x25\xe7\x23\xd4\xe0\x6c\xb4\x35\x38\x8c\xbe\xb2\x83\xc8\x95\xad\xc4\x5c\xa3\x2d\xb1\xd6\x68\x73\x82\x9a\x6c\x4c\xa6\x26\x1b\x92\xaf\xd9\x52\xe2\x9a\xad\x4b\xa9\x16\x6b\x52\xad\xc5\x42\x86\x5a\x8d\x66\x53\xab\xa9\xd9\x57\x31\x39\x73\x15\x13\x73\xaa\x62\x38\xd7\xaa\x86\x0a\x54\x35\xbe\x98\xaa\xc6\x16\x2f\x60\xb0\xb0\x80\x81\x92\x04\x51\x4b\x15\xc4\x5a\x41\x10\x4b\x35\x62\x30\x57\x2f\x06\x53\xdb\x1a\x18\x6b\x12\x8b\xb1\x56\xb1\xc8\x55\x1b\x8a\x11\x87\x2c\x5e\x1c\x46\x09\x1d\x93\x78\x4c\x8d\x49\x98\x45\xc5\x63\x51\x14\x8f\x55\x9d\x10\x8a\x92\x90\x01\x65\x21\x83\x9a\x25\x18\xab\x55\x82\xf1\xa7\xc3\x30\xfe\x8f\xbd\x31\xe8\xff\x3d\x74\x80\x00\xe0\x01\x01\x81\x3a\x32\x18\x40\x88\x60\xc0\x40\xee\x58\xc1\x82\x05\x6d\x88\x06\x1c\x38\x74\xe0\xc1\x21\x01\x81\x47\xee\x98\x20\x00\x61\x01\x86\x80\x02\x11\x82\x01\x48\xc0\xa6\xf5\x11\x8d\x83\x02\xd1\x10\x54\x48\x26\x82\x40\x36\x19\x01\xb2\xa9\x88\x50\x8c\xa2\x81\x6a\x11\x2d\x54\xdb\xfa\x16\x4b\xe8\x41\x2c\x23\x81\xda\x8c\x0c\x6a\x2b\x46\x04\xab\x98\x10\x9c\xc1\x82\xe0\x1c\x56\x6c\x46\x49\x10\x5d\x34\x80\xe8\xb2\x41\x44\x27\xc6\x20\x7a\x30\x0e\x8d\xb7\xc6\xa3\xf1\xde\x04\x34\x9e\x4d\x44\xf4\xc9\x24\x44\x5f\x4c\x41\xf4\xda\xc6\x27\x34\x8a\x48\xd6\x22\x22\x79\x6b\x11\x28\x58\x87\x40\xd1\x12\x02\x65\xcb\x08\x54\x6c\x04\x25\xb1\x19\x34\x80\xad\xa0\x01\xad\x82\x06\xe3\x00\x34\x38\x67\x40\x83\x77\x0e\x34\x90\xf3\x08\x21\x34\x63\x19\xd8\xc5\x8e\xa9\xf9\x3c\xae\x20\x86\xe4\x04\x31\x64\xa7\x68\x42\xf6\x88\x26\x14\x6f\xd0\x86\xe2\x1d\xda\x50\x7d\xb3\xb2\xd5\x07\xf4\x41\x7c\xec\x98\x90\x82\xf8\x82\x14\xd4\x57\x0c\x41\xbd\x22\x07\x25\x40\x66\x20\x83\x91\x81\x1c\x26\x06\xf2\x1d\x03\x66\x06\x62\x2c\x8c\x94\x3a\x66\xac\x8c\x54\x3b\x0a\x0a\x63\x00\x54\xc6\x60\x3a\x5a\x03\x8c\xc1\x1b\x6c\xf6\xbb\x23\x1b\xc3\x18\xa2\x31\x6c\x42\x36\x96\x4d\x28\x1d\x9b\xe2\x35\x0c\x8d\x91\xdc\xd8\x89\x6c\xbb\xd2\x76\x1d\xa9\x79\x3d\xcc\x1d\xa3\x61\x46\xce\x26\x72\x53\xb6\xb1\x2b\xf6\xc4\x18\xa1\x23\x9a\xcc\x18\xad\xc9\x0c\xd1\x99\xc2\x10\xa9\x23\x9b\xca\x10\x63\xc7\x6c\x24\x68\x2c\x1d\xc5\x68\xd0\x04\x1d\xb1\x19\xfb\x64\x3b\x7a\x8b\x41\x12\x59\x0c\xb5\x69\xcc\x50\x53\xb2\x36\xd4\x94\xad\x0d\x25\x55\xeb\x42\x49\x62\x5d\xc8\x19\xac\x0f\x39\x9b\x8e\xd6\x52\x48\xd9\x77\x0c\x36\x84\x98\xb9\x63\xb2\x1c\x38\x17\xdb\xb4\x7e\xb5\x31\x84\xac\x36\x85\x50\xc0\xa6\x40\xc5\xd8\x1c\x7c\x71\xb6\x04\x5f\xbc\x2d\xc1\x95\x60\x6b\xb0\x85\xad\x04\x5b\x92\x95\x60\x4a\xb1\x1a\xb0\x54\x07\x01\x8b\x3a\x08\x50\xdb\x16\xd1\x6a\x9c\xa1\xa6\xa2\x2c\x49\xf5\xce\x51\x6d\xaa\x88\x4a\xe5\x8e\xd1\x11\xe5\x9a\x5d\xa0\x54\x8b\x63\x8a\x55\x5c\x24\xae\xea\x12\xb1\x80\x2b\xd4\x18\x5f\x89\xc4\x3a\x21\x2f\xce\x29\x39\xf1\x1e\xc8\x49\xf0\x86\x9a\xef\x62\xc9\x48\xf4\x8e\x8c\x24\x4f\x84\x92\x7d\x20\x90\xe2\x99\x40\xaa\x4f\x5e\x45\x7c\xf6\x22\xea\xab\x17\x05\xaf\x5e\x14\x09\x7c\xd3\x53\xa6\xa3\xf3\x45\x2d\x79\x5f\xd4\x51\xe8\x18\x7d\x51\x4f\xd9\x17\x25\x2a\x1d\xc5\x17\x0d\x01\x3a\x1a\x5f\x94\x83\xeb\x48\xbe\x34\x5b\xe9\xab\xc6\x10\x3b\x66\x5f\x35\x85\x36\x56\x0a\x6d\xac\xc4\xe8\x55\x33\xdb\x8e\x9e\x40\x33\x07\x42\x2d\x1c\x3b\x26\x32\x5a\xb8\x90\xd5\xc2\x42\x4e\x4b\x04\xf2\x5a\xa3\x21\xd2\xc6\xa0\xa0\x35\x12\xb1\xd6\xc8\x14\xb5\xc6\x44\x49\x6b\xcc\x94\x55\x62\xa5\xa2\x12\x95\xaa\x4a\x42\x12\x95\x64\x49\x55\x92\x0f\xa8\x92\x42\x30\x2a\x29\x06\xab\x92\x52\x70\x2a\xa9\x04\x52\x49\x12\x82\x4a\x86\xc0\x2a\xd9\x84\xa4\x92\x5d\xc8\x2a\x99\x42\x51\xc9\x21\x88\x4a\x8e\x41\x55\x72\x66\x54\xc9\x95\x8d\x4a\x56\x76\x2a\x05\xd9\xab\x14\xc3\x41\xa5\x38\x66\x95\x42\x9c\x54\x0a\x73\x51\x29\xa9\x69\xec\x52\x58\x55\x4a\x8d\xa0\x52\x34\x1a\x95\x8a\xd1\xa9\x54\x1b\xbd\x4a\xf5\x31\xa8\xd4\x10\xa3\x4a\xe5\x98\xb4\xd6\x14\x8b\xf6\xdf\x2b\xb4\x56\x49\xa0\x55\x20\xa1\x56\x31\xa9\x29\x6e\x9b\xbc\x56\xf1\x29\x34\x25\x9e\xa2\x56\x89\x29\x69\x95\x9c\x8a\x16\x29\x49\xb4\x88\x64\xd0\xa2\x90\x8d\x16\x35\xd9\x69\x51\x97\x49\x4b\xf3\xef\xb4\x68\xc8\x51\x8b\xc6\x9c\xb5\x68\xce\x55\xfb\x37\xdb\xcd\x18\xfc\xdb\x2f\x32\x06\xa9\x9b\x81\xd2\x51\xc0\x82\xc1\x56\x77\x6b\x0c\xec\xce\x18\x04\x20\x70\x18\x21\x80\xc7\x0c\x0c\x1e\x2b\x44\x20\x54\x48\x10\xba\x19\x08\xdd\x0c\x70\x37\x03\xdc\xcd\x40\xec\x66\x20\x76\x33\x90\x2c\x60\x73\x93\x0c\x3a\xc8\xd6\xa1\x87\x6c\x03\x12\x64\x1b\x91\xa1\xd8\x82\x11\x8a\x15\xcc\x50\x1c\x62\x81\xe2\x2c\x0a\x14\xe7\x51\xa1\xb4\x68\x02\x8a\x4b\xc6\x42\x71\xa5\x8d\xe3\xb4\xb9\x19\x1e\x0d\x43\xf6\xd6\x44\xc8\xde\x9b\x0c\xd9\x07\x53\x21\xfb\x68\x14\x92\xcf\x16\x21\xf9\x62\x0d\x24\x2f\xd6\x41\xf2\x6a\x09\x22\xa1\xed\x5a\xc9\x46\x88\x64\x6d\x86\x48\xce\x56\x88\xe4\xad\x40\x24\x72\x00\x89\x82\x33\x90\x88\x9d\xeb\xe8\x21\x51\x74\x01\x32\x25\x17\x3b\x26\x28\x94\x5d\xe9\x58\xa1\x52\x71\xda\xd0\x23\x08\x15\x6f\x40\x9a\x93\x02\x4a\xd5\xfb\x8e\x2d\xba\x6a\x4a\xbf\x61\x42\x6c\xdb\x0d\x0d\x89\xaf\x1d\x15\x2d\x09\x61\x47\x83\x8e\x84\x1c\x7a\x12\xf2\x1d\x03\x12\x09\xc5\x8e\x09\x03\x09\x15\x64\x12\xaa\x1d\x15\x23\x49\xc0\x8e\xcd\xed\x94\xe0\x3a\x7a\xcc\x24\x21\x60\xa1\x1a\xb8\x63\xc2\x4a\x35\x94\x8e\x15\x85\x6a\x50\x14\x2a\x0c\xd8\x22\x04\x63\x80\x0a\x3b\x03\x94\x9b\xff\x4a\x99\x43\xc7\xee\xa2\x72\xea\x58\x8c\xa5\xc8\xb5\xa3\x1a\x47\x31\xb6\x50\x93\xa3\xe9\x68\x0d\x51\x88\xbe\x63\x30\x81\x28\x72\xc7\x64\x98\x7c\xcc\x26\x92\x8b\xb5\xa3\x9a\x44\x36\x41\x47\x63\x32\x99\x64\x4d\x21\x6c\x4e\x26\x41\x22\x53\x09\x12\x1b\xf1\x9a\xa2\x11\x2f\x29\x1b\xf5\x92\xaa\x05\xdf\x9c\x27\xf0\x25\x83\x45\x9f\x33\x76\x57\xda\x76\x74\xd6\xfa\x98\xc9\x3a\xcf\x39\x58\xef\x43\x8e\xd6\x7b\xca\xa9\x69\xbe\xdc\x62\x2d\x97\xab\x65\x6f\xb3\xda\xe8\x4d\x53\xfd\x1e\x0b\xda\xe4\xa1\x58\xdb\xf6\x94\xb3\xcd\xe3\xa5\x16\xe3\x95\xd0\xe2\xbd\xd2\xe2\xc0\x5c\x92\x03\x97\x4a\x76\xe8\x62\x29\xce\x38\x2e\xe2\x9a\xfd\x51\xd7\xf4\x3d\x38\xef\x7c\x35\x8e\x9c\x6b\x56\xc9\xd9\xea\x1c\x3b\x53\xbd\x4b\x0e\x6b\x70\xd9\x6a\x65\x57\xac\xd4\xe8\xaa\xad\x35\x39\xb1\xa5\x66\x0f\x36\xd7\xea\xd1\xa6\x2a\xde\x58\xae\xea\xad\x0d\x02\xde\x5b\x12\xf4\xcd\x99\x36\x3e\x58\x27\xd6\x47\x6b\xc5\xf9\x64\x51\xbc\x2f\x16\x84\x7c\x35\x2a\xc1\x8b\x11\x61\x02\x53\x25\x12\x9a\xdc\xac\xa5\x49\x92\xc9\x99\x28\x99\xc8\xb0\x14\x0a\x86\xa4\x52\x34\x5e\x84\x92\x71\xa2\xcd\xda\x35\x07\xd2\xa0\x02\xa9\x01\xc5\x80\xa8\x8a\xc1\x62\x55\x13\x1c\x16\xb5\x81\x30\x6b\x0b\xad\xa3\xba\x10\x91\xd5\x87\x8c\x41\x7d\x73\xce\x95\x82\xa0\x53\x62\x40\xab\x81\x0d\x1a\x0d\xec\x10\x94\xd9\x83\x2a\x73\x00\x51\xe6\x08\x45\x23\x67\xc8\x1a\xb9\x40\xd2\xc8\x02\x51\x53\x04\xe0\xb6\xa8\x10\x34\x45\x07\x41\x73\x24\x20\xcd\x31\x74\x8c\x1d\x73\xc7\x0a\x41\x4b\xd4\x86\x09\x81\xb5\x24\x0b\x51\x4b\xf2\x90\xb4\x05\x18\x45\x4b\x62\xa8\x5a\x52\x02\xd5\x92\x4a\x73\xbc\x93\xa0\xd1\x92\x01\x9d\x96\x6c\x90\xb4\x2d\x1b\x6b\xce\x84\x49\x9b\xb6\xaf\xda\x7f\x06\xd5\x9c\x4b\xf3\x9d\xb3\x18\xab\xa9\x80\x21\x4d\xc5\x18\xd6\x54\x9c\x49\x9a\x0a\x99\xaa\xb1\x04\xa3\x1a\x4b\xb4\x46\x63\xc9\xd6\x2b\x97\x6a\x83\x72\x51\x9b\x34\x54\xb4\x55\x43\xb5\xdb\x6d\xee\xac\x52\x0d\x8e\xd4\xd7\xe8\xa2\xfa\x9a\x5d\x51\x57\xab\x53\x75\x6d\x6d\xd5\xb5\x55\x55\x2b\xd6\x27\xb5\xe2\x9b\x61\x16\x22\x54\x23\x4c\x5e\x8d\x24\x8a\x8a\x52\xa8\x2a\x4a\x0d\xa8\x28\x1a\xbc\xa2\x62\x88\x6a\xd4\x84\xaa\x46\x1d\x1b\xb5\xea\x99\xd4\x6a\x33\x4b\x4e\x99\xa5\x7f\x2e\x62\x94\x34\x45\x52\xd6\x1c\x93\x46\x2d\xb1\x6a\xd2\x9a\x50\x8b\x6a\x72\xcd\x18\xfc\xc7\xc1\x18\x54\x60\x0e\x08\x10\x98\x9b\xcb\xc5\x11\x09\x02\x27\x8c\x40\x5c\x30\x03\x71\xc5\x0a\x2d\x18\x07\x20\xd6\xa6\x19\x22\x18\x07\x14\xd1\x10\xf8\xd8\xd4\xae\x8f\xc6\x24\xf0\xd1\x9a\x02\x3e\x3a\x23\xe0\xa3\x37\x0a\x3e\x92\x45\xf0\x31\x58\xdb\xd1\x83\x8b\x6c\x03\xb8\x18\x2d\x83\x8b\xc9\xa6\x8e\x05\x5c\xcc\x56\xc0\xc5\x62\xb5\xa1\x43\x70\xb1\x3a\x0b\x36\x8a\x73\x1d\x09\x6c\x54\xc7\x1d\x23\xb4\x86\x19\x6c\x42\x57\xc0\x24\x74\x02\x26\x19\x0f\x1d\x11\x4c\xb2\xde\x76\xf4\x60\x92\xf3\x04\x98\x9c\xe7\x8e\x11\x30\x79\x9f\x3b\x16\xc0\x44\x5e\x1a\x12\x74\x44\x80\x16\x27\x77\x74\x1d\xa9\x63\x00\x48\x4c\xb1\x63\xea\x58\x3a\x4a\x47\x6d\xd8\x98\x98\x5a\xfc\x8f\x89\x83\xeb\xe8\x3b\x86\x8e\xdc\xb1\xe9\x39\x0e\xb9\x63\x05\x9b\x38\x48\x43\x06\x70\x89\x19\xc1\xa5\xc0\x16\x7c\x0a\xec\x3a\x12\x50\x22\x0e\x10\x12\x31\x03\x27\xe2\x04\x31\x79\xce\x90\x92\xe7\x0a\x39\x79\x16\x28\xc9\xb1\x42\x4d\x2d\x08\x91\x64\xa3\x01\x4d\x36\x3a\x6c\x21\x98\x47\x4c\xd8\xec\x5c\xc2\xc8\xe8\x12\xc4\x88\x3e\x6a\x4c\x48\x51\x63\xc1\x10\x25\x56\xe4\x58\xa3\x60\x8c\x35\x01\xa6\x58\x12\x62\x8e\x39\x19\xac\x31\x35\x5d\x13\x53\xf2\xa8\x31\x26\x32\x10\x39\x05\x83\x31\x24\x36\x26\x52\x4a\xc6\x46\x9f\xb2\x71\xd1\xa5\x62\x28\xba\x54\x4d\x88\x36\x89\xe1\x68\x32\x98\x18\x31\xa3\x49\x11\xb2\x31\x99\x35\x5b\x53\x58\xb2\x33\xc2\x35\x7b\xa3\x5c\x32\x59\xe0\x9c\x83\x45\x4e\x99\xad\xe1\xe6\xa1\x5b\xe6\x9c\x6d\x8b\xe9\x8b\xf5\x1c\x72\xb5\x81\x29\x8b\x65\xf6\x4d\x65\xb3\x6b\x2a\x9b\x6d\x41\x9b\xd9\x14\x63\x0b\x63\xb1\xb6\x72\xf3\x15\x24\x68\xf1\x0e\x82\x14\x72\x18\x6a\x09\xce\x84\x52\xd8\xd9\x90\x4b\x74\x2e\xa4\x92\x9c\x0f\x4d\x89\x53\x68\x4a\x3c\x04\x2e\xc5\xc5\x10\x4a\x75\x2d\x02\x10\x97\xbb\x63\x5c\x82\xab\xe0\x6a\xb0\x15\x9d\x04\x53\x8d\xd3\x80\xd5\x7a\x0c\x58\x9d\x37\x01\x6a\xd3\xcf\x5a\xbd\x77\x4d\xaf\x7a\x4f\xb5\x06\x4f\xcd\xdf\xf7\x81\x72\x8d\x9e\x29\xd5\xe4\x53\xc7\x4c\xb1\x66\x5f\x88\x6b\xf1\x95\x42\xad\x5e\x88\xaa\x78\x25\x5f\x85\x90\x5c\x55\x6a\x3e\x3e\x90\x25\x2b\x48\xcd\xc7\x37\xe4\x09\xc5\x10\x51\x0b\x94\x9b\x33\xda\xbc\x75\x11\x4f\xc9\x57\x69\x3e\x7b\x95\xee\xb3\x4b\x20\xf1\x59\x02\xa9\x4f\xc2\x01\x7c\x94\x18\xd0\xb3\xc4\x60\x7c\x90\x14\x9c\x0f\x92\x83\xf7\x24\x39\x90\xf7\x52\x42\xf0\xae\x39\xa6\xde\x4a\x0d\xc9\x1b\x91\x16\xa5\x8a\x86\xd2\x51\x3c\x34\x6d\xeb\x54\x81\xc1\x89\x22\xa3\xab\x8a\x6c\x5d\x51\xc3\xce\x65\xb5\xec\x3b\x06\x97\xd4\x31\xbb\xb6\x39\xa3\x63\xf5\x9c\x5d\x50\xcf\xc5\x91\x12\x57\xe7\x95\x58\x9d\xd3\x10\xa1\x23\x3a\xab\x21\x5a\x67\x94\xa3\x73\xa8\x1c\x9b\x6f\x14\x9b\xe3\xae\x31\xb2\x95\x26\x66\x56\x34\xc5\x6c\xab\xa6\x58\x6c\xd1\x14\xc5\x66\xcd\xb1\xa9\xda\x9c\xd0\x46\xcd\xc9\xd8\x6e\x06\x3a\x7a\xdb\x0c\x03\x59\x6a\x66\xc0\x7a\x2d\x29\x5a\xa7\x3d\x3e\xd4\x9a\x4a\x47\xb1\x46\x6b\x52\x8b\x5a\x33\x5a\xd0\x9a\x8d\x51\xad\xd9\x75\xf4\xa6\xc5\x01\xc1\x54\x95\x26\x50\x2a\x39\x75\xcc\xa6\xc5\x0a\xd5\xb4\xb8\x41\x1a\x16\x30\x51\x6b\x31\x1d\xad\x61\xad\xc5\x9b\xa0\xb5\x50\x47\xee\x98\x5a\x18\x58\xb2\x21\x2d\xa5\x1a\xaf\xa5\x48\xc3\x0a\x1d\x8d\xf1\x9a\xab\x35\x4e\x73\xf5\x1d\x83\x71\x9a\x2a\x77\x4c\xc6\x69\xac\xa5\x63\x6b\xcb\x55\x1b\x0a\x1a\xaf\x41\x4c\x47\x67\x7c\xff\xb7\x0f\x29\x09\x1b\x52\x2f\xb1\x63\x36\x41\x9d\x54\x13\xd4\x8a\x34\x54\x30\xa1\x19\x0c\x13\x14\xb5\x05\xa7\xa8\xde\xf8\xed\xbf\x33\x14\x34\x1a\x3c\x1d\x86\xbf\xeb\x64\xe4\x6f\x9f\xff\xfe\xc5\xf7\x2f\xfe\xe3\xdb\x2f\x7e\xf6\xc0\xe0\xf9\xfa\x5f\x97\xab\xd7\x69\xf3\x7f\xbf\xfe\x6a\x97\x24\xea\x5f\x1f\x3e\xdb\xf0\xcd\x51\x23\xed\x4d\x5e\x2c\xbf\x4d\xab\xcd\x27\x4e\x8d\x3b\xaa\xfd\xe5\x62\x73\xf5\xb5\xac\xd7\xe9\x52\xb6\x63\xfd\xec\xf1\xba\x5f\xac\x56\xcb\xd5\x6f\x96\x55\x1e\x3e\xd2\xf0\xa8\xe6\xb6\xc3\x5e\xff\x67\x0f\x3c\xfe\x72\xf1\x2e\x5d\xcd\x6b\x3f\xce\xfc\xd3\x2d\xea\x27\x5a\xbc\xf8\xf0\xe6\x27\x5a\x1d\x1f\x81\xfc\xf5\x7c\xbd\x9e\x2f\x2e\x7f\x66\x1c\x3d\x9c\x76\x36\xce\x67\xab\x09\x0c\xe3\x72\xb6\x9a\x98\x30\x8c\xa9\xfd\xe5\x61\x5c\xcf\x56\xd3\xc5\x24\x0d\xe3\x55\xbb\x31\x3c\xfa\xec\x6e\x6a\x96\xaf\xbf\xfc\xee\xbb\x2f\xbf\xf9\xb7\xef\xff\xf8\xfc\xab\x3f\x7c\x31\x3b\xbd\x53\x3c\x1d\x65\xfa\xe5\x37\x7f\x7c\xfe\xd5\x97\xbf\xdd\x3f\xbf\x53\x6c\xcf\xf7\x0d\xbe\xfc\xe6\xc5\x57\xdf\x3f\xff\xf6\xcb\xdb\x2e\xf6\x77\x4e\x6f\x26\x8b\xeb\xeb\xc9\x62\xf6\x71\x4f\xeb\xdb\xb1\xdc\x3d\x9b\xed\xf6\x37\xf7\xdd\xbb\x1a\xfb\xb4\xd5\x25\x5d\x5d\xf5\xb7\x09\xc6\xcd\x70\x7d\xdd\x2e\xf6\x3f\xa0\xcd\xa7\x65\x59\x65\xb6\x1a\xe7\xd3\xe5\x6a\x7e\x39\x5f\xa4\xbd\x74\xcc\x16\xe3\x7c\xff\xeb\xf6\xee\xb7\xdb\xf9\x34\x0f\x93\xcd\xd8\x7f\x1f\x7f\xb3\x5a\x6e\x96\x9b\x0f\x6f\x64\xba\x59\x7e\xb7\x59\xcd\x17\x97\xb3\x7b\x6c\x3d\x7d\xb9\x95\xcd\x3f\xaf\x4f\x3a\xeb\xcf\x4f\x4e\xb7\xaf\x38\xb4\x31\xcf\x4e\x2f\xf6\xc5\xd7\xdb\x11\x6f\xc6\xcd\xcd\xa4\x57\x1c\xc6\xfa\x53\x33\x9b\x8f\xcb\xa3\x13\xfb\x6f\x27\xf7\xf9\x4e\x44\x4e\xde\xb5\xd5\x5e\x9f\xe8\x72\x75\x72\xfa\xf9\xd9\xe6\xec\xf3\xd3\xf3\x76\xb1\x3a\xfb\xfc\x74\x7a\xb2\x4b\x74\x70\x92\x56\xd2\x6e\x1e\xe7\x2e\x9f\x0f\xd3\x3f\x2f\xe7\x8b\xc9\xe7\xa7\xe3\xc9\xe9\xe7\xc3\xd9\xe7\xa7\x9f\x8f\x8b\xbb\x6b\x37\x2e\x77\x1c\xfc\x34\x6f\x6e\x26\x65\x18\x5f\xfd\xe4\x04\x1e\x26\xbf\x0b\xe9\x31\xd5\x27\xaf\xdf\xae\x37\x27\x59\x4e\x96\x7a\xd2\x78\x7d\xf2\x79\x7f\xcb\xe0\x2e\x41\xf3\x5f\x46\x90\xfe\x04\x41\x0f\x93\xf3\xe2\x95\x9c\xcc\x17\x9b\xab\xae\xd6\x16\x97\x27\x3d\xc3\xde\x5f\x37\x27\xef\xd2\x6a\x9e\xf2\x95\x1c\xa8\x7c\x9f\xd6\x27\x8b\xe5\xe6\xe4\xcd\x6a\xf9\x6e\x5e\xa5\x9e\x6c\x96\x27\x9b\x57\xb2\x6f\xb7\xe3\x7c\x63\xe5\x9d\x7d\x31\xae\x7e\x11\xe5\xb7\xbf\x04\xbf\xb9\xfd\x09\xfe\x81\xfc\xce\x47\x29\xc9\x5e\xef\x5e\x57\x9a\x8f\xcb\x31\x8d\xeb\xfe\xfa\x18\xf6\x74\x07\xfb\xfc\x2f\xbb\xa1\xae\xa6\xaf\x86\x89\xf4\xe4\xc6\xdb\x7e\x5f\x7e\x6c\xbd\x9d\xbf\x9d\x5e\xcd\x37\xb2\x4a\x57\x63\x17\xa5\xf3\x56\x65\xda\x2f\x6f\x2e\x1e\xed\xcf\x40\x7c\x37\x7b\x79\x31\x5e\xce\x60\xcc\x33\xf9\xd5\xe5\xaf\xf3\xae\xf3\x5f\x5d\x9e\x9d\x6d\xb7\xde\x87\x59\x7e\x79\xd9\xf3\xd7\x1e\x0f\xf7\x61\x18\xde\xed\x72\x53\x3d\x38\xd6\x87\xdd\x40\xc3\x23\xb9\x5a\xcb\xc9\x71\xeb\xab\xde\xfa\x5e\x72\xe0\xf4\xf8\xf1\x4f\xf6\xd8\x93\x24\x6c\x73\xf7\x6d\x55\xf4\x64\xd3\xb3\x7a\xb6\xab\x34\xec\x06\xea\x14\x7f\x3f\xdb\x8d\xde\xd3\x34\x2e\xaf\xaf\x3f\x9b\x7c\x7f\x32\x5f\x9c\x2c\x87\x61\xf3\x6a\xb5\x7c\xdf\x5f\x2b\xd2\xc9\xf7\xe3\x7a\xab\x82\xde\xcf\x96\x2f\xbf\xbf\x3b\x43\xe9\x34\xbe\x7f\xfc\xf8\x74\xbb\xfc\xa7\x9f\xed\xc9\x6c\xf7\x76\xa4\xdf\xde\xbb\xbe\x9e\xbc\x9f\xed\xab\xce\x8e\x6e\xdf\x9b\xe5\xfb\x67\x5b\x3d\x33\x79\x3f\x9c\x9f\x9e\x0e\xe3\x9d\x29\xdf\xef\xe1\xd9\x81\x0b\xe7\x6f\xa7\xcb\x4e\xdd\x8e\x1d\xef\x1f\x62\xad\x76\xb2\x3b\x13\xbe\xb8\x4f\xcf\x87\x6d\xa2\xc1\x67\xf3\x69\x4d\x1b\x79\xb9\x2b\x5e\x9c\x1f\x9a\x5f\x0e\x93\xdd\xcd\xe1\xd9\xee\x62\xfa\x26\xad\xd6\x52\xf7\x89\x5a\xb6\x69\x55\x1e\xfd\xfc\x42\xfd\x36\x6d\xe4\xc5\xfc\xb5\xec\x97\x6a\xfc\xe2\xb0\x58\xef\x87\x9b\xe1\xe6\x1e\xe9\xcb\x4e\xfa\x4f\x52\xbd\x99\xbf\xfe\xaf\x50\x3d\xfe\x97\xa9\xbe\xcf\xf0\x79\xa7\x7a\xf2\x93\x64\x6f\x45\xe0\x01\xc2\xff\xfc\x0b\x09\x1f\x1e\x3f\xfe\x62\xba\x2e\xe9\x4a\x1e\x3f\x9e\xbc\x7f\x32\xdb\x15\xae\xaf\x71\xf8\x05\x73\xba\xbb\x65\x1e\x9a\xd1\xc7\xe3\x19\x2d\x6e\x45\xe8\xaf\xb3\x0f\xd3\xf2\x6a\x7e\x55\x57\xb2\x18\x7f\xb7\xdf\x54\xe3\x77\xb3\xe5\xcb\xdf\x6d\x13\x5a\xbf\x99\x7c\x77\xbc\xa7\x5e\x4d\x7e\x37\xde\xea\xb4\xfd\xf6\x7a\x31\xfb\x6e\xf2\x7a\xf2\xd7\x5b\x5d\x36\xfc\x44\x92\xa5\x9d\xd6\x18\x86\x47\xfd\x3d\xf3\xe9\x7c\xbd\x7d\xdf\xfc\xc5\x70\x7d\x3d\x79\x31\x7b\xf9\xe2\x62\x3f\xe7\x5d\xda\xa6\x77\xe3\x8b\x4f\x75\xf7\x89\x4d\x25\x9f\xde\x54\x72\xd3\x86\xbe\x39\xe6\xc7\xeb\x2d\x3f\x7a\xc2\xd7\xaf\x67\x1f\xf6\x29\x77\x5f\xbe\xbf\xb8\xbe\x3e\x94\xa6\xcb\xcd\x2b\x59\x1d\xb3\xa2\x4e\xf6\xec\x7a\x3f\x1e\x1b\xe7\x43\x93\xa1\xb3\xe7\xee\x4c\x5e\x4f\xbe\xde\x35\xda\x3b\x08\x0f\x6c\x94\x1f\x6e\x17\xe8\xeb\x47\xf7\xc8\x3a\x9d\x9d\x9e\xbd\xbf\xd8\x11\xdc\xdc\xe4\xe9\xb7\x57\x6f\x57\xe9\xea\xf7\x6f\xaf\x64\x7d\x44\x5f\x99\x7c\xfe\xe3\xa7\x27\xf3\xad\x01\x4c\xef\xd2\xfc\xaa\x9b\xc6\xf9\xe2\xa4\x59\xb6\x13\x59\xbc\x9b\xaf\x96\x8b\xe6\xca\x4f\xff\x73\xf1\x62\xf5\xe1\xe4\xcd\xf2\xea\x83\xce\xaf\xae\x9a\x65\x9c\x6f\x4e\xde\xae\xbb\x89\xfc\xdf\x7b\x4f\xe9\x7f\x36\x8b\xfb\xf4\x4d\xef\x7b\xd5\xfa\x3e\xfd\xcf\xc5\xb1\xe5\xdc\xbb\x83\x7b\x11\xf9\x76\x9b\xf0\xfa\x88\x98\xc9\x66\xdc\x2e\xdf\x87\xe9\xb6\x9b\xe6\x2c\xdf\x0c\xd3\xb5\x5c\x35\x36\xbc\x7f\xda\x38\xa9\xba\x96\xcd\xf5\x35\x0c\xc3\xa3\x63\x1e\x7c\x7b\x7f\x69\xda\x92\x7e\xf6\xf5\x7f\xfb\xfa\x8c\x3f\xa6\xa3\x27\xc1\xf9\xf4\x3b\x9a\x72\xc8\xef\xf6\x4c\xce\x65\xba\x92\xfa\xb6\xc8\xb1\xe8\xde\x66\x35\xbf\x73\x62\xeb\xe1\x98\xe1\xc7\x8f\x57\x3d\x4f\xdf\x6c\x36\x3b\x08\xf1\xe3\xc7\x9b\x7b\xf7\x9e\xad\xb6\x84\x9e\xcd\x36\xd3\x9d\x68\x6f\x15\xc5\x66\x18\xe5\x66\x18\x5f\x5e\x0c\x37\x93\x77\x47\x2f\x47\xbf\x3b\xda\x36\xe5\x5e\x22\xe0\xdd\x83\x57\x69\x7d\x94\xb8\xea\xf6\xcd\xd3\x26\x28\x72\x33\x5e\xca\xe6\xa1\xc7\xf2\x72\x73\x71\x33\xae\xef\x3c\x6c\xde\x5a\xbb\x3f\x5b\x35\x86\xdd\xdc\x8d\x43\xda\xcc\xb7\xd3\x98\xc1\xc5\xec\x74\x77\x7d\x3a\xb6\x07\xdb\xed\x3a\xc3\x8b\xd9\xe9\xf6\xf2\xf4\x66\xf2\xf6\xfa\x7a\xf2\xf6\x36\xa2\xb8\x9c\xad\xa7\xe9\xfa\x3a\x8d\xf9\xd8\x99\x3f\xcc\x54\xb6\x71\xc5\xb8\x4b\x16\x9c\xc6\xf5\xac\xc7\x12\x73\x9d\x1c\x32\x7a\xaf\x76\x59\x46\x77\x59\x84\xbe\x5a\x36\x7d\xbb\x7b\x87\x78\x2b\xe3\x1b\x59\xfd\x26\x95\x57\x32\xfb\xb8\x55\xef\xe7\x1f\x6f\xc6\xba\xb3\x1e\xed\xfa\xcd\xad\x28\x9f\x7f\xbc\xb9\x39\x6e\x7a\xff\xb5\xd0\xd9\xfe\xd1\x2e\xfe\x9d\x48\xcf\x06\x8f\xb3\x6d\xc2\xa3\x26\x04\x87\x2c\x80\x07\x1f\x6e\x97\x4a\x7a\xf3\x09\x29\xfa\x91\xc4\x3d\x24\x24\xb7\xde\xcd\xad\x6e\x3c\x96\xba\x67\x77\x4a\xf7\x45\x69\x5b\x3c\x08\xd4\x41\x48\xf7\x42\x3e\xc3\x67\xab\x97\x70\x71\x7d\x7d\x7a\x7a\xbe\xba\xc3\x82\xdd\x3c\x1f\x7a\x2b\xf5\xf5\x64\x3d\x4d\xeb\xcd\xb8\x9e\x5e\x75\xae\xaf\xc7\x23\x96\xdf\x16\xd6\xa3\x8c\x3b\xb3\x7e\x08\xbd\x86\xdd\x18\x2b\x59\x2f\xaf\xde\x1d\xac\xe8\xfd\x90\xee\xe3\xb6\xeb\xf3\xae\x01\x8f\xed\xe3\x74\xfd\xf6\xcd\x9b\xe5\x6a\x23\x75\xbb\xe4\xeb\xdf\xe9\xe4\x40\xc8\xf0\x12\x2e\xf6\x2b\x79\x29\x9b\xe7\xeb\xcd\xfd\x9e\x4f\x3a\xf1\x37\xe3\x3d\xc6\x6e\xba\x46\x3e\x0e\x14\x67\x9b\xf1\x33\x99\x7e\xff\x7d\xb7\xf8\x47\x9a\xe9\xf0\x5f\x81\xc9\xfd\x7f\x73\xec\xab\x1f\x42\xaa\xb5\x6c\x5a\x9c\xf2\x66\xb5\x2c\xb2\x5e\x9f\xfc\x69\xd7\xf7\x9f\x0e\xb1\xd6\x9f\xb6\x84\xfc\xe9\x74\x78\xd4\x07\x4f\xeb\xcd\xec\x30\x6a\x53\xb2\x8b\xd6\xf1\xd5\xfc\x6f\xf2\xef\x69\xfd\x6a\x93\x2e\xbf\x5c\x6c\xb5\xf0\xf9\x67\x38\xce\x2f\x17\xcb\x95\xbc\x48\x97\xe7\xdb\xcf\x0a\x96\xfb\xb4\x7a\xcb\xe9\xe1\xd1\xde\x97\x3b\xf4\xbe\x4d\x8e\x7e\xd7\x7a\xef\x1f\x0e\x0f\xcf\xf3\xf9\xc9\x8e\xee\xc3\xbc\x0e\x41\x58\x5a\x9f\xa4\x93\xad\xcb\x7c\xb2\x5c\x9d\x3c\xff\xee\xc5\x74\x3f\x95\x9d\x20\xcc\x1e\x94\xfb\xcd\xb3\x63\xad\x2e\xc3\xfd\x5d\x72\xf8\xdf\xc2\x72\x4c\x07\xd1\x7d\xb9\xb8\x98\x4d\x96\x33\x79\xb9\xb8\x18\x27\x69\xb6\x79\xb9\xb8\x18\x9e\x1d\x22\xba\x34\x4c\x3e\x75\xfd\xf1\x66\x5c\x5e\x5f\x7f\xbc\x19\xc6\xb4\xfd\x73\x3c\xfc\xf2\x81\xe1\xef\x6c\xd2\xa6\x09\x7f\xaa\xe7\x97\x9b\x8b\x61\x4c\x2f\x37\x17\xdb\xbe\xdb\x86\x6b\xea\xee\x7c\x39\x8c\xab\xc3\x58\x87\xea\x32\x0c\xe7\x72\x33\x91\xc3\x56\x59\xec\x54\xd7\x4e\x90\x67\xab\x1f\x69\xb2\xf5\x6c\xf9\xf8\xf1\xf2\xa8\x7c\x7d\x7d\xab\x0b\x1b\x1b\xee\xeb\xbd\xe1\xf1\xe3\x49\xfa\x85\xca\x6f\x18\x3f\xfe\xc8\x0f\x3d\xbf\x9c\x1c\xff\xff\x6a\x1f\x8b\xca\xb8\x69\xd1\xe8\x6a\x06\xbf\x5a\xfd\xfa\xc7\x1f\xfa\xfc\x6a\x75\x76\x36\x6c\x5e\xae\x2e\x6e\x3f\x01\x7a\xb9\xba\x38\xfa\x52\x64\x32\x91\xd9\xbd\x1d\x3d\x4c\xf3\x7c\x51\x77\x16\x5c\x6e\x39\x55\x86\xc9\xcb\xed\x14\x2f\xc6\x4d\xb3\xdb\xc3\xf8\xb1\xb4\x89\x9d\xbf\x9b\xa4\x9d\xcb\x3e\x8c\xeb\xcd\x2a\x6d\xe4\xf2\xc3\xf9\xe5\x74\x77\x39\x97\xf5\xb4\xff\xeb\xa0\xce\xcb\xcd\x30\xde\x8b\x19\xfe\xb9\x33\xbb\x3b\xd6\x3f\x36\xb7\xfd\x42\xfd\xb2\xd9\x1d\xb9\x64\xff\xdc\xa9\x1d\xbb\xa9\xff\xd0\xbc\x8e\x84\xee\xe7\xa7\x76\x33\xdc\xfd\x77\x4d\xb3\xf4\xf3\x85\x7c\xbb\x5a\xbe\x91\xd5\xa6\x8d\x7a\x7a\xc7\xf6\x9f\x76\x11\x7e\x20\xb3\xaf\x4c\x5f\xcb\xeb\xe5\xfc\x6f\x52\x7f\x7b\x5c\xff\xfa\x7a\xf2\x89\x27\xb3\x49\x53\x7e\x0f\xc8\xe9\x8f\xac\xd6\x64\xd8\x6d\xd7\x61\xfc\x44\x4f\x37\xa3\x2c\xde\xbe\x96\x55\x73\xd5\x9b\xb6\x2e\xcb\x85\xce\x2f\xdf\xee\xca\x70\xf3\xc9\x86\xdb\x3c\x98\x07\x2b\x30\x5b\x6e\xa3\xce\xf1\xa0\x30\x6e\xf7\x75\x79\xbb\x5a\xc9\xa2\x7c\x38\xff\xd8\xc3\xd3\xf3\xd3\xfd\x8d\xd3\x9b\xf1\x8d\xac\x8a\x2c\x36\x87\x47\xbb\xf2\xe9\xcd\x56\x19\x9c\x7f\x5c\xbf\x5a\xae\x36\xe7\x1f\x5f\x2f\x17\x9b\x57\xe7\xa7\x9d\xd6\x79\x39\x1d\x6b\xfa\x70\x54\xfa\x20\x69\x75\x7e\x6a\x9e\xd6\xf9\xe5\x7c\x73\x7a\x33\xbe\x96\x3a\x7f\xfb\xfa\xd0\xaa\xf7\xf1\x70\x9b\x7d\xf1\x66\xbc\x5a\x2e\x2e\x0f\x2d\x5a\xe1\xe7\x1a\xe8\xdb\xab\xab\xf3\x8f\xef\x45\x7e\xe8\xf5\xb6\x4d\x7e\x79\xfb\x9b\x71\xd3\x35\xdd\x6e\x82\xaf\x96\x6f\x8f\x9e\x8e\xaf\xe7\x8b\xb7\x1b\x39\x1e\x6e\x3f\xa7\x9f\xa9\x38\xae\xa5\x2c\x17\xf5\xfe\xcc\xfe\xde\x76\x9d\xbc\xff\xb7\x5c\xc8\x37\xdb\xe4\xab\x9d\x87\xfb\x59\xff\xf7\x74\x76\x73\x33\xca\xcd\x64\x78\x74\x9b\x69\x33\xdf\x5c\x5c\x0c\x8f\xfe\x7f\x00\x00\x00\xff\xff\xd7\x55\xf3\xae\x05\xbd\x18\x00") + +func web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9Js, + "web_ui/assets/vendor-a399e58c4944c43ad173eca58b0156b9.js", + ) +} + +func web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9Js() (*asset, error) { + bytes, err := web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/vendor-a399e58c4944c43ad173eca58b0156b9.js", size: 1621253, mode: os.FileMode(420), modTime: time.Unix(1642782762, 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\x7c\x6d\x73\x1b\x39\x92\xe6\x77\xff\x8a\x5a\x5d\x38\x62\x37\xce\x84\x90\x6f\x00\x72\xce\x76\x84\x86\x2d\x77\x7b\x43\x7e\x39\xd9\xbd\xb7\x3d\x5f\x14\x45\x56\xd1\xe2\x9c\x44\xea\x48\xca\x6e\xaf\xa3\xff\xfb\x45\x02\x28\xaa\x44\x69\x3c\xdd\x7d\xf7\x61\xd4\xf2\x23\x54\x66\x22\xf3\xc9\x17\xa0\xc8\x79\xfe\x2f\x3f\xbc\x9b\x7e\xfc\xe5\xfd\x69\x73\xb9\xbb\xbe\x7a\xf9\xe4\xb9\xfd\xa7\xb9\x6a\x57\x9f\x5e\x1c\xf5\xab\xa3\x66\x7e\xd5\x6e\xb7\x2f\x8e\xfa\xeb\x59\xbf\x99\x5c\xad\xdb\x6e\xb9\xfa\x74\xf4\xf2\x49\xd3\x3c\xbf\xec\xdb\xce\x7e\x69\x9a\xe7\xd7\xfd\xae\x6d\xe6\x97\xed\x66\xdb\xef\x5e\x1c\xdd\xee\x16\x93\x74\x34\xfe\xd3\xe5\x6e\x77\x33\xe9\xff\xcf\xed\xf2\xf3\x8b\xa3\xff\x9c\xfc\x7c\x32\x99\xae\xaf\x6f\xda\xdd\x72\x76\xd5\x1f\x35\xf3\xf5\x6a\xd7\xaf\x76\x2f\x8e\x5e\x9f\xbe\xe8\xbb\x4f\xfd\xf0\xe4\x6e\xb9\xbb\xea\x5f\x4e\xd7\xab\xed\xed\x55\x33\xfb\xda\xfc\xd4\x6e\x2f\x97\xd3\xf5\xe6\xe6\xf9\x71\xf9\xd3\x48\xc1\xaa\xbd\xee\x5f\x1c\x75\xfd\x76\xbe\x59\xde\xec\x96\xeb\xd5\x48\xec\xd1\xc3\x85\x9f\x97\xfd\x97\x9b\xf5\x66\x37\x5a\xf5\x65\xd9\xed\x2e\x5f\x74\xfd\xe7\xe5\xbc\x9f\xe4\x7f\x3c\x6b\x96\xab\xe5\x6e\xd9\x5e\x4d\xb6\xf3\xf6\xaa\x7f\x01\x55\x50\xf9\x31\x16\x37\xcf\x36\x4e\x6e\x97\xc7\xf3\xf5\x6a\xb1\xfc\x74\xdc\xaf\x3e\x2f\x37\xeb\xd5\x75\xbf\x1a\xab\x78\x1a\xff\xfa\x14\xf1\x7a\xdd\xdd\x5e\xf5\xef\x37\xfd\x62\xf9\xeb\x53\xc4\xa7\x74\xf2\x14\x71\x2f\xc1\x10\x9c\x3e\x45\x1c\x89\xd8\xaf\xba\xd9\xac\xbb\xdb\xb9\x6d\x6f\xbf\x6c\xb3\x5e\xef\x7e\x3e\x3f\xdb\x2f\x79\x8a\xaf\x4c\xc8\xab\xfd\x82\xab\xf5\xbc\xb5\x27\x3e\x7e\xbd\xe9\xf7\xab\x16\xdb\xeb\xc9\x97\xe5\xee\x72\xb2\xce\xce\x6a\xaf\xf6\xcb\x2f\x97\xdb\xdd\x7a\xf3\xf5\xc3\xed\x8d\xf9\xe7\xcd\xb2\xeb\xae\xfa\x2f\xed\xa6\x3e\xba\xdb\xdc\xf6\x65\xdd\x6e\xbd\x59\x2e\xab\xbc\xbc\xad\x6e\xb9\x6d\x67\x57\xfd\x79\xdf\x2d\x37\xfd\x7c\xf7\xba\xb8\x6e\xf9\x5f\xfd\xa6\xac\x5a\xb4\x57\xdb\xfe\x69\xfc\xa1\x3c\x7e\x6a\x74\x3a\x7d\xfb\x1f\x63\x09\xaf\x4e\x4f\x3e\xfe\x7c\x7e\xfa\xe1\x0e\xdb\xaf\xfe\xcf\x8f\xa7\x6f\x7f\xb8\x78\x7f\xfe\xee\xe3\x3b\xa3\xea\x87\xf1\x63\x3f\xb4\xbb\xfe\x31\x15\x17\x27\xef\xdf\x9f\xbd\x9e\x9e\x7c\x7c\xfd\xee\xed\xc5\xc7\xd3\x37\xef\xcf\x4e\x3e\x9e\x5e\xfc\xaf\xf3\x93\xf7\xef\x4f\xcf\xc7\x0f\x94\xd5\x3f\x9c\xbe\x3a\xf9\xf9\xec\xe3\xc5\xc9\x87\x5f\xde\x4e\x2f\xde\xfd\xf5\xc3\xe9\xf9\x7f\x9c\x9e\x7f\x38\xdc\xf7\xc5\xbf\xff\xcf\x9f\x4f\xcf\x7f\xb9\x78\xfd\xf6\xe3\xe9\x8f\xe7\x59\xf8\x43\x59\x7b\x6d\xef\xde\x9e\xfd\x72\xf1\xe3\xd9\xeb\x37\x6f\x4e\xcf\x2f\xa6\xef\xde\xbc\x7f\xf7\xf6\xf4\xed\xc7\xb1\xd0\xc1\xda\x93\xf7\xef\xc7\x9b\x32\x5e\x7d\x87\x1c\x9f\xfb\xcd\xb6\xb2\x20\xaf\x40\x87\xce\xdb\xbf\x06\x71\x9b\x7e\xbb\xfc\xaf\xfe\x43\xbf\x31\x3a\xff\xd0\x2f\xda\xdb\xab\xdd\x76\xac\x60\xb9\xfa\x7b\x9f\x99\xf4\xaa\x9d\x5b\x2c\xfb\xe1\xaf\x62\x7f\xb5\xfc\xd8\x2b\x33\xfe\x6e\xd6\x57\x57\x25\x92\x15\xba\xbe\x59\xaf\x2a\x35\xe5\x87\xbd\xda\xe9\xbb\xb7\x1f\x7e\x3e\xbb\x98\xbe\x7b\xff\xcb\xf9\xeb\x1f\x7f\xfa\x78\xf1\xcb\xe9\xc9\xf9\x9d\x95\xde\x9e\xc7\x7b\x4b\x7f\x7c\xfd\xf1\xe2\xc3\x4f\x27\xfb\x35\xe4\x67\x6d\xe8\x7b\x95\xc3\x85\x16\x8c\xbd\xb3\x9f\x22\x82\x03\x70\x38\xe9\xfa\xcf\x4f\xd1\xff\xeb\xfe\xb1\x7f\x3b\x7c\xee\xaf\xaf\xdf\x9e\x9c\xff\x72\x61\xb4\xd9\x3f\xbb\xde\x6e\x0f\x97\xfd\xfc\xfa\xe2\x87\xd7\x1f\x4e\xfe\x7a\x76\x7a\x71\x7e\x7a\x72\xf6\xf1\xf5\x9b\xd3\x07\x71\x7d\xb8\xf4\xe4\xed\xf4\xa7\x77\xe7\x17\x1f\x4e\xcf\x4e\xa7\x8f\x52\x61\x7d\xd3\x6f\xda\xdd\x7a\x33\xcd\x75\xe1\x21\xb3\xab\xc8\x9f\xde\xbd\x39\xbd\x18\xa7\xb1\x15\xcc\x6d\xfe\xf5\xd5\x53\x7c\xf5\xe5\xcb\x17\x57\x48\xe0\x96\xeb\x43\xcb\xcf\x4f\xdf\xbf\xbb\x78\xfd\xe1\xc3\xcf\xa7\x1f\xbe\x23\xe2\xd3\x72\x77\x79\x3b\x73\xf3\xf5\xf5\x53\x7c\x75\x69\x95\x74\xbe\xde\xdc\x3c\xc5\x57\x45\xee\x53\x7c\xb5\xdc\x6e\x6f\x8d\x05\xaf\x56\x16\xfb\x57\xf3\xcb\xf5\x7a\xdb\x1f\x2a\xfb\xe1\xdd\xf4\x7b\x5a\x0e\x0c\x7d\xd5\xad\xe7\x0f\x3c\x9d\x45\x9c\x9d\x9e\x9c\xbf\xfd\x8e\xa0\xab\xbe\xdd\xac\xdc\xde\xce\x62\xf7\x23\x72\x4e\xde\xbf\xfe\x03\xe6\xb4\x37\xcb\x43\x29\x77\x54\xfd\xbe\x98\xc7\x4d\x99\x6d\xd6\x5f\xb6\xfd\x66\xb9\xf8\x3a\xce\xad\x5d\xbf\x1d\x92\xed\x5e\x8e\xf7\xbf\x5a\x4d\x3d\xb9\xb9\xb9\x5a\x96\x9a\xfc\xe3\xd5\x7a\x56\x6a\xef\x5d\xf1\x3a\x6a\x8e\x5f\x3e\xb1\xf6\xfa\x2f\x93\x49\x73\x9f\xfb\x7f\x69\xee\x48\xdf\x8c\x28\xdf\x4c\x26\xb9\x21\x5f\x2d\x57\xff\xbb\xd9\xf4\x57\x2f\x8e\x96\x73\xeb\x80\x97\x9b\x7e\xf1\xe2\xe8\xdb\x37\x37\x2d\x1d\xe8\x7d\xbb\xbb\xfc\xed\xb7\x76\xbb\xed\x77\xdb\xe3\x45\xfb\xd9\x56\xb9\xe5\x7c\x7d\xf4\xe7\x9f\xde\x7e\xfe\x74\xd4\xec\xbe\xde\xf4\x2f\x8e\x96\xd7\xed\xa7\xfe\x78\xfb\xf9\xd3\x7f\xff\xf5\xfa\xea\x50\x64\x7b\x73\x73\xd5\x4f\x76\xeb\xdb\xf9\xe5\xe4\x77\x88\x3f\x5c\x3e\xf1\x30\xef\x38\x24\x1f\x13\x2e\x66\x33\x99\xcd\x3d\x92\x07\xe2\xd8\x2d\x54\x3d\x75\xee\x66\x98\x4a\xb2\xce\xe5\x6a\xd7\x7f\xda\x2c\x77\x5f\x5f\x1c\x1d\x15\x03\xb6\xbb\xaf\x57\xfd\xf6\xb2\xef\x77\xff\x44\xf5\xe7\x7e\xd5\xad\x37\x93\xa0\xfd\x22\x68\xaf\x69\x16\x3b\xe0\x0e\x04\x68\x91\xbc\x84\x59\x98\x87\x19\xa7\xce\xcd\xb7\xdb\xff\x3f\x0a\xf7\xd5\x7d\xe2\x11\x60\x41\xad\xf2\xa2\x65\x89\x73\xdf\x8b\x87\x38\x8b\x82\x44\x3e\x21\xcd\xf7\x3a\x9f\x0c\x73\xc8\xf3\xe3\x61\x08\x7b\x3e\x5b\x77\x5f\xf7\xf3\xc9\xf3\xd5\xba\x4c\x42\x05\x69\x9a\xe7\xdd\xf2\x73\x93\x4d\x7a\x71\x74\xdd\x6e\x3e\x2d\x57\x7f\x69\x7c\xd3\xde\xee\xd6\xff\xe3\x68\x58\x93\xd7\x5d\xe2\xcb\x7f\x6f\x3f\xb7\x1f\xf2\xd3\xcd\xb9\xcd\x6c\x9b\xbe\x7b\x7e\x7c\x89\xf7\x96\xdd\xbc\x7c\x7f\xd5\xb7\xdb\xbe\xe9\x57\xd6\xf5\x9b\xd1\x33\xcb\x55\xf3\x75\x7d\xbb\x69\xbe\xf4\xb3\xa6\xe6\x47\xb3\x5b\x37\xb7\xdb\xbe\xa9\xb3\xdc\xcf\xaf\xdd\xf3\xe3\x9b\xbd\x69\xc7\xdd\xf2\x73\xde\xc2\xf1\x9d\xd5\x66\xef\x93\x66\x18\x3e\x67\x9b\x76\xd5\xe5\xe1\xb3\xdf\x1c\x3d\x69\xee\x6f\x64\x72\xd5\x2f\x76\x7f\x69\xe6\xed\xd5\xfc\x5f\x27\xa0\xe9\xe6\xd7\xe6\xb8\xc1\x7f\x3b\x7a\xf2\xf2\xc9\xf3\xed\xe7\x4f\x4d\x19\xec\x8e\x40\xd3\x51\x73\xd9\x2f\x3f\x5d\xee\x5e\x1c\x09\x1d\x35\xbf\x5e\x5f\xad\xb6\x2f\x8e\x2c\xd5\xff\x72\x7c\x6c\x39\xfe\x85\xdc\x7a\xf3\xe9\x18\xbd\xf7\xc7\x99\xd8\x8b\xe5\xd5\xd5\x8b\xa3\xff\x96\x4e\x35\x9c\xd0\xde\x4f\xcf\x6f\xda\xdd\x65\xd3\xbd\x38\x7a\x43\xe8\x22\xb2\xf7\x1e\x9e\x79\x97\x42\x40\x12\x2f\xd0\x4c\x31\xb9\x80\xa4\x86\x4f\xbc\x43\x48\x40\x51\x59\x1b\x64\x47\x08\x7e\xc0\x93\x70\x90\x8c\x7b\x07\x49\xab\x9c\x10\xbd\xd7\x90\xe5\x40\x70\x5e\x42\x96\x03\x2e\xa0\x84\xe0\xbd\x34\x80\x0e\xd1\x8b\xa1\xe4\xc4\xe8\x61\xa8\x3a\x0f\x18\x83\x07\x79\x16\x1c\xb1\x06\x6f\xe8\x54\x5c\xf2\xac\x6a\xb0\x3a\x40\xd2\x68\x30\x39\x42\x4c\xde\x50\x40\x17\x48\xc9\x7b\x68\xc0\xc5\x04\x01\x32\x1a\x9c\x68\xd6\xd1\x4c\xbd\x43\xf6\x4c\x04\x9c\x9e\xa1\x77\xc2\x10\x0c\x9f\x78\x47\x40\x20\x31\x09\x3e\x43\x76\xc9\x2b\x1a\xee\x1d\x84\x94\x14\xf3\x72\x75\xbe\x28\x32\x31\x41\xbc\x72\x16\x43\xe4\x90\x02\x1b\x8e\x0e\x84\x7d\x34\xa5\x14\x1d\x86\x14\x0d\x65\x27\x1c\x8b\x81\xec\x5d\x0c\x9a\xd1\x69\x70\xca\x20\x94\x61\x76\x18\x7d\x86\xc1\x3b\x10\xca\x0e\xe1\xe8\x80\x38\xdb\x07\xe4\xf2\x0e\x0c\x55\x07\x50\xcd\x80\xe8\x82\x84\xbc\x58\xc0\x79\xcd\xe1\x68\x10\x5c\x22\x86\x8c\xa2\xf9\x29\x2f\xc6\xe0\x7c\x14\xdc\xa3\xc0\xec\xb5\x99\x12\xba\x00\x28\x7b\x38\xd9\x73\x0d\x25\xa7\x80\x50\xf5\x85\xa0\x59\x04\x93\x8b\x10\x8b\x15\xe2\x90\xf2\xaf\xcd\x19\x45\x27\xc2\x31\xc7\x30\xb9\xa8\x52\xf6\x47\xe2\xbc\x16\x85\x0c\xce\x03\xe5\xb8\x10\x3a\xcf\xc2\x19\x45\xc7\xd1\x67\x7d\x98\x5c\x8c\x9c\x2a\xaa\xa9\xe8\x9b\xa2\x38\xf1\x5c\x44\x90\x13\xa3\x92\x2d\x36\x37\x93\xaf\xa8\xaf\xc6\x81\x51\x22\x52\x55\x17\x0b\x65\x33\xed\x8c\x04\x19\xf6\x8e\x62\xd4\xea\x4f\x21\x9f\xaa\xc9\x90\xb2\xc3\x1b\xb0\xe7\x42\xd9\x88\x38\xf6\x25\xa8\x53\x75\x8a\x18\x72\xfc\xcc\x5b\xa8\x19\x4e\x4e\x73\x5e\x80\x18\x33\x28\xa5\x74\x88\x9a\xc3\x63\xde\xde\x74\x0c\xa3\x8b\x41\xb2\xbe\x91\x60\x50\x27\xc8\x7a\x60\x05\x04\x17\x0b\x75\x9a\xe9\xc8\x64\x63\xc3\x40\x97\xbb\xed\xd9\x73\x31\xd0\x81\x2f\xc0\x3b\x26\x5f\x36\x32\x72\x9c\x3a\x9f\x98\xd9\xf2\x67\xe4\xe4\xe4\x02\x5b\x20\x0d\xbd\x8b\x88\x3a\x08\x6c\x7c\x92\x4c\x97\x21\x7c\xea\x42\x62\xc0\x9c\x82\x77\xa1\x06\x70\xc0\x85\x87\x23\x5e\x00\x39\x92\x94\xa3\x77\x36\x62\x51\x70\x49\x31\xe4\x94\x9f\xb2\x77\xa2\x31\xe4\x40\x39\x0f\x8a\xb9\x3e\x50\x70\x09\x0b\x97\xc1\xa9\xf8\x90\xcd\xf8\x07\xb5\xea\x6f\xcd\x1b\x0e\x2e\x10\xe6\xbf\x10\xbb\x24\x31\xa7\xf1\x94\x83\x55\x2e\xac\xb0\x92\x66\xff\xb3\xb8\x64\xc9\x51\xe2\x0d\x8c\xb1\xa2\x92\x4b\x4b\x61\x41\xdd\xcc\xd4\x18\xcf\x40\x15\x8e\x54\x58\xc0\xe2\x3c\xe5\x9c\x79\x46\xc1\x01\x54\xc1\xec\x54\x24\x55\x54\x88\x8a\xff\x99\x5d\x8a\x25\xb7\xc9\xb2\xbf\x18\x67\x8b\x41\x8a\xbe\xe8\x28\x06\x1c\x04\xc7\x88\x15\x8d\x56\x2d\x07\x2b\x28\x0d\xb9\x06\x22\x3a\x98\x5c\xd3\x95\x92\xe3\xa4\x30\x6c\x2f\x94\x70\x5b\x5e\x62\x21\x79\xf1\x05\x0d\xdc\x57\x29\x19\x61\x8e\xcb\xa1\x80\x67\x64\xe4\xc8\xcf\x35\x1c\x9d\xe7\xea\xb7\x3b\x74\xca\xd1\x05\x28\x51\x19\x2f\x36\x83\xc2\x60\x5b\x92\x44\x15\x15\x09\x83\x3a\x96\x54\x23\x62\xaa\x4b\x3b\xa0\xe4\xbc\x94\xba\x63\xc5\x2d\xc1\xe0\x0b\x01\xe1\x43\xd4\xfc\x56\xca\xc0\xf4\x3e\x2c\x98\xc9\x63\x8b\x7d\xad\x89\x39\x22\x82\xd5\x8a\x84\xd5\x43\xe2\x62\x60\x1a\xac\x90\x14\xf7\xb1\x86\xe2\x22\x4e\x0e\x85\x65\xcf\x0b\x3f\xf8\x22\x85\x5a\xe6\xd8\x69\x4c\x61\xf0\x05\xd7\x44\x31\xc6\x41\xc9\xf8\xec\x38\xd1\x8a\xd6\x4c\x6a\x1e\x67\xa7\xd1\xd6\xbc\x28\x99\xfc\x18\x9d\x04\xdc\x3b\x29\x44\x48\x15\x0e\x5c\x9a\x81\x99\xa7\x30\x2c\x4e\x1c\x63\xd5\xa8\x9a\x6b\xec\x33\x4c\x0e\x38\xc0\x3e\x54\x9a\x0b\x8b\xc1\xcc\x2c\x75\x31\x6b\x71\x1d\x9a\x67\xaa\xe0\xe8\xd8\x67\x5e\x5b\x49\x43\x4a\x32\x88\x20\xcc\xdb\x32\x38\xe4\x1e\x9d\x17\x53\xd0\x42\x18\xef\x7c\x82\x01\xdd\x17\x56\xef\x38\xc2\xc8\x0a\x1c\x16\xa7\xe0\x75\x30\x39\x54\xe6\x83\x03\x65\xa8\xdb\x23\x08\xa1\xa2\x8c\x83\x9f\x93\x0b\x21\x72\x85\x43\xa8\x9c\x53\xe7\xa3\x6a\x45\x63\xda\xd3\x48\x7c\xf1\xdb\x08\x9d\x8a\x77\x3e\x94\xca\x93\xe1\x92\x3c\xe2\x5d\xf0\x69\x10\x2c\xa1\x4c\x0a\xd6\x4f\x7d\x1a\xd6\x42\xb5\x78\x2a\xe0\xd8\x97\x2a\x45\xd6\xcb\x01\xeb\xe2\x40\x04\x15\x45\x28\x1d\x29\xa3\x42\x7b\xbf\x71\x1c\x44\x8c\x60\xa4\x52\x75\x04\x9c\x80\xc7\x7d\x44\xfc\x20\x18\xa3\x0c\x71\xe2\x50\x8a\x8e\x89\xf0\xb5\x16\x59\xac\xa1\xb8\x48\xbc\x8b\xbe\xd4\xa2\xcc\x0b\x81\x8a\x12\x24\x1a\x38\x94\x68\x9f\x3c\x8a\x65\xd7\xc6\x38\x2c\x8c\x63\x75\xac\xb9\x86\x19\xca\xc5\xb3\xcd\xe3\xec\xfc\x5b\xf3\x06\x93\xf3\x11\x0b\x3f\xbd\x69\x2c\x3b\x44\x23\x3f\x60\x85\x19\x0a\x8f\x50\x9c\xe6\xfa\x9d\x51\xca\x91\x00\x1b\x23\x13\x94\x31\xd2\xe6\x31\x2c\xfc\x9c\xa2\x35\x89\x92\x3f\xe8\x5d\xe4\xc2\x39\xeb\x9d\xe0\xcb\x62\x70\xa6\xb8\xce\x3b\x5a\x67\x48\x44\x9b\x07\xaa\x08\x70\x40\x5e\x2b\x9c\x83\x6d\x8b\xad\xcd\xd4\x34\x21\x97\x82\x0c\x28\xc5\xd2\xd6\x90\x5d\x9e\x37\xb3\x08\x1b\xc6\x4a\xb4\xad\x9b\x4b\xf1\x28\x7a\x87\x41\x07\xd7\x81\x96\x50\xa1\x77\x41\xc3\x10\x2a\x44\x48\x7b\x2b\x6a\xab\xb2\x68\x4b\x69\x05\x36\xa2\xf1\x9e\x46\x40\x55\x30\x5a\x07\xf7\x03\xb9\x44\x78\xef\x0b\xcf\x54\xa9\x48\x85\x0f\xe6\xb8\xa8\xb2\xe7\xb8\x0f\x69\x70\x72\xd6\x77\x0f\xb5\x88\x70\x99\x9e\xee\x2d\x4e\x16\x33\x19\x38\x0e\x58\x7c\xa1\x4e\x07\x75\xde\x79\x29\x73\xdb\x94\xbc\xd3\xda\x4d\x30\x39\xd5\x52\x32\x2c\x63\x24\x0e\x15\x4a\xa4\x4c\xbc\x63\x34\x38\x1f\xa0\x6c\x64\x0c\xb3\x53\x2e\xf3\x0e\x81\xc3\x3a\xef\x58\x44\xaa\x87\xc8\xb2\xb2\xf4\x23\x44\xa7\x28\x35\x22\xea\x34\x85\x81\x01\xaa\x21\x54\x93\xa1\x9a\x6c\xbc\x88\xa5\x36\x3c\xce\x4e\xab\xb6\xe4\xb4\xd6\x01\x73\x0c\xd5\x09\xcb\x46\xcc\xda\x72\x31\x3a\xac\xb3\x14\x93\x83\xda\x02\x0d\xa5\x5a\xa4\xd0\x45\xe2\x81\x03\x04\x75\x54\x64\x74\x34\x50\x31\x3a\xd2\x7a\x00\x00\xa7\xec\x87\xc5\xc1\x83\x56\x34\x30\x0e\x56\xa8\xf7\xb5\x25\x81\x23\xa6\x81\x47\xa0\x25\xb7\xd9\xc6\xaa\x2a\x38\x39\x89\x65\xda\xb4\xb9\x5a\x6a\xc6\x5b\x4c\xb0\xe6\xb6\x77\x1a\x0b\x35\x50\x6d\x8e\x95\x61\x31\xa4\xa1\x8c\x27\xaa\xbd\x15\x1c\x44\x1d\x98\x88\x28\x23\x2b\x60\xa0\x62\x80\x42\x50\x33\x19\x6a\x63\xf4\x4e\xb9\x76\x78\xb0\x32\x3e\xf0\x13\x52\x29\x68\xd9\x17\x10\x70\xa8\xe3\x43\x63\xb4\xd1\x2d\x0d\x4c\x94\x9a\xd8\xe6\x64\xf1\x87\xe8\x34\x8f\x8a\x81\x0f\x17\xb3\x43\x51\x18\xf2\x01\xe2\x30\x73\x05\x51\x1c\x6c\x83\xc8\xc3\xc0\xe4\xef\x60\x81\x48\x75\x34\xca\xc5\xaf\xf8\x42\x23\xc7\x87\x28\xfb\x94\xf6\x33\xd7\x00\x27\xa3\xdf\x30\x73\x81\x24\xdd\x47\x84\x79\x18\xe6\x4a\x0d\x2b\x55\x60\xa8\xb6\xec\x82\xfa\x7d\x69\x8e\x75\xd2\x64\x47\x75\x34\xb2\xe4\x51\x1d\x7c\xf1\x08\x3b\x0f\x68\x6b\xe5\xc1\xd3\x03\xda\x7a\x27\xf5\x20\x32\xa6\xad\x9d\x73\x4b\xa2\x8c\x69\xeb\x5d\xc0\xa4\x0f\x68\xeb\x5d\x84\xd2\xd5\xc6\xb4\x35\x8f\x32\x1f\xd2\x16\x1c\x0e\x47\xd1\x31\x6d\xad\x95\x01\x1c\xd2\x16\x5c\x52\xa0\x43\xda\xa2\x23\x2f\xf0\x80\xb6\x56\xe8\x4b\xc1\x1e\xd3\xd6\xf6\x14\xf5\x80\xb6\x68\x07\xa3\x98\x0e\x69\x8b\xe4\x74\x18\x09\xef\x68\x8b\xec\x30\xf8\x74\x40\x5b\x64\xc7\xe5\xfc\x72\x8f\xb6\x56\x62\x51\xc3\x01\x6d\xad\x63\x09\xa7\x03\xda\x8e\xd0\x31\x6d\xc7\x8b\xef\x68\x8b\xec\x72\x29\xbd\x4f\x5b\xb3\x0d\x55\x0f\x69\x6b\x45\x11\xeb\x01\x7c\xc4\x44\x72\x98\x22\x1c\xa2\x66\x26\xd0\x03\xda\xa2\x43\xdd\x1f\x58\xf6\xb4\x05\x97\x06\x32\x8f\x68\x0b\x4e\x68\x38\x6d\x8c\x68\x6b\x99\x2d\x78\x48\x5b\xe3\x05\xa4\x43\xda\xde\xb1\xf3\x60\xb6\xf5\x8e\x12\xca\x83\xd9\xd6\x3b\x0e\xa5\x19\x8c\x67\x5b\xef\x42\x48\x70\x38\xdb\x5a\x1b\x1a\xaa\xed\x68\xb6\x05\x87\xa1\xfa\x79\x34\xdb\x1a\x57\x59\x0f\x67\x5b\x34\xfa\xa5\x07\xb3\x2d\x3a\x8e\x18\x0e\x66\x5b\x6b\x3e\x1e\xc2\xc1\x6c\x6b\xde\x57\xe0\xc3\xd9\x16\xc9\x85\xbb\x41\x78\x98\x6d\xd1\xce\xb3\x35\x79\xee\x66\x5b\x8b\x36\x0f\xf9\x77\x37\xdb\x1a\x15\x53\x69\xb9\xa3\xd9\xd6\x08\x53\x66\xd4\xf1\x6c\x3b\x42\xc7\xb3\x6d\x86\x4b\xf3\x1a\xcd\xb6\xc8\x8e\x92\x4f\x07\xb3\xad\x65\x49\x2a\xe9\x3e\x9e\x6d\x2d\xa7\x12\xc8\xc1\x6c\x8b\xe4\x3c\x97\x0b\x9b\xf1\x10\x6b\x7e\xab\xed\xf9\x3e\xec\xcb\x65\xc3\xbd\xd9\xd6\x22\xe2\xc3\xe1\x6c\x6b\xc3\x9c\xc6\x07\xb3\xad\x77\x4a\x49\x0f\x67\x5b\xe3\x45\x69\x5e\xe3\xd9\xd6\x3b\xf1\xec\x1f\xcc\xb6\xde\x11\x17\xc6\x8d\x67\x5b\x9b\x3f\x3d\x1e\xce\xb6\x77\xec\x2c\x37\x09\x75\x02\x7b\x06\xe4\xd0\x0f\xbd\x35\x58\x85\x09\x03\x9c\x78\x68\x06\x5a\xa6\x1c\x43\x79\x38\x86\xc8\x70\x4e\x31\x34\xa6\x20\x43\x62\x52\x3d\x48\x02\x3b\x7f\x27\x02\x42\xbd\xc9\x61\xc7\x75\x30\xcd\xd7\x00\xa5\x0e\x00\xbb\x14\x07\xda\xb2\xcd\x3e\xe5\x32\x55\x1c\xea\xfe\xe6\xc2\x53\xa9\x30\x20\x56\x08\xf6\x5d\xcd\x97\x22\x05\x76\x20\x86\x91\x15\xe5\x44\x0c\xc1\x28\x35\x34\xc6\x40\x65\x24\x84\xe0\x12\xf1\x70\x51\xa2\xa9\x0c\x63\x10\x9d\x0f\x03\x6d\x83\x23\x2a\x9d\x07\xa2\x23\x5f\x26\x37\x73\x1c\x97\xfb\x13\x88\x76\x7e\x1b\x4e\x9c\x10\xab\xdf\xee\x50\x4b\x9e\x48\x85\xf9\xe3\xc5\xc9\x86\x7b\xa8\x28\x7a\x8a\x15\x0d\xa9\xd0\xc8\x6c\xf3\x77\x27\x19\x9f\x3c\x55\x98\x3d\x0d\xd1\xa6\x7a\x63\x0a\x72\x77\xe2\xbc\x87\xa2\x0e\x9d\x67\x04\xe7\x3b\x9a\xfd\x65\x44\xcd\xbf\x1c\x11\x3f\x9c\xbe\xb5\x0e\xcd\xc0\x0e\x7c\xbd\xaa\xe4\x64\x7d\x13\x86\x58\x97\x12\x9b\xf3\xbd\x5c\x39\x16\x5e\xc8\xe0\x0b\x4d\x69\xe0\x05\x21\xef\x6f\x55\x44\x4b\xcb\x06\x72\x10\x70\xef\xb8\xa0\x7b\x14\x4b\x5d\x7d\x9c\x9d\x7f\x2b\xd7\xfc\x93\xcd\xed\x55\xff\xe2\x68\xb5\x5e\xfd\x57\xbf\x59\x1f\xbd\x7c\x7e\x7c\xd3\xee\x2e\x1f\x5e\xf9\x27\xeb\x9c\xd9\xe3\xcf\xd4\x79\xb4\xc3\x6c\xe2\x66\x1a\x65\xc8\x8e\x31\x1c\xc1\xc5\x5a\xaf\x01\x9d\x94\xfb\x91\x7b\x68\x72\xa1\x64\x79\x73\x36\x82\x89\x9c\x60\x69\xcf\x05\x66\x06\x0c\x06\x27\xf3\x5d\x68\xa6\xd1\xfa\x10\x23\x82\x3c\x23\xb5\x5a\x9a\x34\x41\x13\xc5\x71\x00\x04\xc8\xb7\xbc\x00\x36\x03\x50\x33\x32\x79\x84\x4e\x53\x70\x52\xa9\x91\xe1\x12\xc0\xa4\x66\x51\xf6\xbe\xf5\xef\x3a\x03\x29\x3a\x09\x1c\x2a\xea\xcb\xdc\xd3\x9c\x29\xb8\x14\xe2\x70\x93\x17\x7c\xc9\xca\x33\xb5\xa1\x24\x78\x89\x6a\x70\x0c\x04\x09\xa0\x99\xa6\xe4\x44\x2d\x89\xf3\x4d\x3f\x04\x6b\xd0\xd4\xa4\xe0\x20\xa9\x22\x72\xbe\xca\x4b\xcc\x88\xd9\xe6\x18\xeb\x8d\x94\x71\xbc\x1e\xeb\xa2\x3a\x86\xd2\x91\x46\x70\x4c\xce\x13\x96\x49\x58\x9c\x96\xdb\xa2\x7b\x28\x3a\xae\x2d\xf7\x6c\x04\x83\xba\x88\xe5\xce\xa7\xc0\x1c\x30\x65\x98\x35\xa5\x98\x4c\x61\x72\x5e\x25\x28\x87\x5c\x08\x88\x12\xa6\x26\xaa\x0d\x87\xe8\x43\x34\x3a\xc7\xf2\x2a\x60\x6c\xf2\x08\x35\x37\x73\xed\xce\x06\xd7\xd3\x5e\x52\x97\x6f\x3c\x4a\x52\x79\xa2\xcc\x81\x91\x3f\x41\x9c\x94\x16\xd2\x9c\x8d\xbc\x0f\xde\x41\x1d\xde\xb3\xf7\x91\x83\x57\x7c\xa6\x4e\x99\x58\x42\xc4\x66\x6a\xa2\xbd\x44\x1f\x8d\x8a\x44\x98\x00\x24\x98\x9b\x09\x43\x44\x29\x04\x15\xef\x11\xb5\x79\x9c\xcd\x7f\x6b\xde\x40\x44\x07\xac\x46\x50\xae\xcc\x38\x83\x10\x9c\x57\x7e\x04\x93\x94\x2c\xd2\x88\x9c\x00\xb1\x99\x1a\x0a\xc2\x2a\xf9\xed\x0d\x69\x14\x14\x69\x20\x44\x17\x80\xa2\x54\x1a\x96\xcb\xf8\x68\x07\xdc\x31\x32\x85\xc8\x4e\x41\xf3\x5b\x0d\x19\x56\x25\x87\x90\x32\xf9\x4a\x15\x68\x20\x81\x43\x22\x53\x20\xf5\xfe\xf7\xcc\xb0\x44\x68\xcb\x42\x1d\xc8\xcf\xc0\x02\xc0\xf4\x28\x76\x6f\x27\xc9\x5a\x59\x7a\x14\x23\x71\xa0\xf5\x42\xda\x4c\x81\xb2\x5f\xa2\xf2\xc2\x04\x2c\xef\x52\xa6\x24\x62\x39\xdf\xd9\x1e\x7c\x0a\x63\x68\x6a\x3e\x0d\x7a\xb0\xac\xb8\x99\x72\x2e\xc2\x3d\xc8\x6a\x6d\xe5\xec\x23\xd1\xb0\x18\x79\x23\xbb\x5a\xb9\x57\xa8\x07\x48\x4d\x0e\x23\x28\x47\x18\xc3\x2a\x2e\x26\xa3\x47\x19\x60\x05\x54\x98\x0c\x65\x81\xa0\x8c\xcf\xd0\x36\x23\xc9\x07\x6c\xce\x0c\x46\x89\xca\xf9\x22\x22\xc6\xc4\x31\x72\x33\xcd\x30\x8a\xaa\x1a\x9c\x04\xc5\xa7\x94\x65\x80\xaa\xa4\xbc\x58\x31\x04\x09\xa1\xa0\x31\x89\x90\x1d\xc7\xbc\xf7\xea\x45\x8b\x64\xd8\x5f\xc2\x32\x0f\x3c\xbe\x83\xad\xf0\xa5\x72\x9c\x3e\xab\x42\x88\xf2\xc5\xaf\x27\x48\x5e\x8a\x1d\x22\xa0\x2c\x21\xdf\xd0\x27\x48\xc9\x34\x46\x9b\xcb\x43\xca\x4c\xf2\xa9\x5c\x12\x17\x07\xc1\x18\x9a\x02\xe4\x83\x46\xd0\x78\x6f\xa5\x25\xb7\x24\x2c\x77\xf3\x1c\x62\x60\xcc\x20\x13\x82\x85\x91\x6d\x5e\x8b\x9e\x43\x73\x96\x61\x41\xcf\xf7\xcc\x2a\x68\xe0\x48\xb9\x4c\x27\xa2\x20\x54\x44\x48\x8a\x92\x5f\x79\xda\x31\x52\xa1\x82\x7a\x6f\xb3\x03\x36\xf6\x4b\xc1\x22\x8b\xe4\x5b\x14\x44\x20\x49\x83\x26\x22\x88\xc5\xe5\x56\x8c\xa5\x08\x65\x1f\x35\x18\x1a\x90\x02\x73\x55\x05\xea\x29\xbf\x5a\x23\x8c\x89\x03\x15\xc9\x14\x95\x24\x3e\x43\x31\xc7\x21\xa2\x98\x64\x71\x0a\x49\x39\x1f\x68\x82\x00\xa0\x36\x90\xdf\x43\x09\xe0\x3d\x46\x3d\xc2\x3d\x63\xa4\xb0\x23\x16\x43\x53\x8a\x41\xc0\x84\xda\x29\x42\x68\x8c\x81\xcd\x51\xa0\x36\x3c\x7a\x2c\x27\x82\x3d\xc4\xb6\xaa\xfa\xa4\x60\xc1\xec\x11\x07\xc4\xa4\x1a\x2b\x8c\x12\x3d\x19\x1c\xc0\x47\x4d\x54\x61\x9b\x7c\xcb\x5b\xc4\xc0\x10\xc9\xb4\x8b\xcd\x9e\x31\x92\xa1\x40\x31\x05\xae\xda\x98\x55\x33\xf3\x11\x7c\x20\xe0\x8a\x26\x2b\x66\x86\x26\x64\xc5\x41\x5f\xe4\x94\x32\xf1\xa3\x47\x45\x95\x2a\x39\x79\xaf\x52\xd2\x04\x90\x62\xdd\x5a\x92\x88\x25\x4b\x28\x85\x01\x54\x48\x90\x63\xa3\x5e\x50\x34\x14\xc1\x4c\x94\xad\x88\x0e\xd5\x68\x07\x45\x70\x04\x86\x44\xcf\xd0\xce\x2d\x09\x89\xa8\x01\x0e\x56\x3c\x91\x42\xbe\xe7\x44\x1f\x00\x0d\x2d\xb7\xe1\x40\xf9\x82\x5f\xc9\x87\x64\x82\x6d\x24\x48\x09\xc5\xd0\x24\x51\x42\x30\x8b\x25\xfb\xdb\xc7\x60\xb0\x06\x49\xc2\xb1\x31\x94\x42\x08\x68\x5d\xd2\x47\x10\xcb\x76\x03\x23\x45\x28\xbd\x13\x72\xd7\xd2\xe6\x0c\x04\x1c\x01\x44\xca\x30\x11\x50\x02\x2b\xf7\x76\x58\xf1\x1a\x38\x64\x38\xa1\x8a\x98\x0c\xb0\x7d\xe4\xe6\x4b\x4c\xc0\x94\x21\xc5\xfc\x4a\x98\xcb\x01\xc2\x64\xa2\x43\x2f\x22\x59\xa6\x08\x93\x0f\x15\x8e\x76\xc0\xc9\x32\x43\x52\x25\x31\x9f\x89\x4d\x6e\xec\x35\x19\x9c\x90\x22\x01\x14\x38\x10\x21\x65\x58\x25\x90\xb1\x7f\x0a\x62\x5d\x14\xb1\x14\x96\x48\x96\x8a\x0d\x48\x70\xde\x46\x95\x64\x09\x0c\x91\xac\x6d\x65\x14\x00\x83\x0d\x27\x62\xa7\x30\x6b\x2a\x26\xd8\x58\xe3\x39\x61\x2e\xc8\x1c\x02\xde\xc1\x2a\x3e\x96\xf7\x9d\x49\x21\x56\x94\xf3\xca\x10\xa0\xb6\x90\xbc\x32\x22\xe7\x95\x9a\x44\x63\x0a\x15\x46\x40\x2d\x8d\x33\x51\xd2\xa0\x66\x70\x70\x1e\x19\x03\x95\x77\x79\x36\xf9\x99\x27\xc5\x09\x7b\xb6\x18\x25\xe7\x21\x22\xb0\x36\xb6\xe7\xc8\x10\x6c\x70\x4a\x0e\x7c\x24\x56\x29\xae\x20\x8f\x91\xf3\x62\x40\xf0\xc6\xed\x0c\xfb\x20\x05\xab\xcd\xc2\xa2\x1c\xa8\xbc\x4c\xac\xd7\xae\x60\xc7\x88\xf2\xfa\xb4\xdc\x84\x65\xf2\xa6\xa0\x06\xf9\x54\x5e\xa0\x67\xe6\x7a\xd6\x67\x6c\x9c\x43\xdc\x63\x21\x22\x6b\x30\x38\xa5\xc8\x36\x17\x9b\x3c\xb0\x4d\x70\x6e\xc0\xa4\x81\xa4\xb0\x2b\xa8\x22\xe5\x1a\xcc\x14\x90\x20\xef\x87\xf6\x05\x1c\xaa\x85\xea\x02\xc6\x94\xe2\x18\x86\x00\x4e\x12\x71\x50\xeb\xfe\x6a\x43\x90\x62\x03\x01\x9d\x27\x8f\x29\xdb\xca\xc2\x49\xbc\x6d\xdc\xe0\xc8\x12\x73\x33\xf6\x6c\x07\x11\x9b\x50\x30\x17\xff\x94\x7b\xaf\x02\x12\x02\x15\x11\x36\x96\x71\x1e\x5c\x23\x81\x46\xcd\x28\xf8\x90\x42\x8e\x55\x20\x04\x84\x2a\x18\xd0\x7a\x66\x0e\xa1\x27\x1f\x74\x80\x49\xbd\xd4\xb7\xa6\x28\x90\x62\x85\x39\x63\x52\xde\x9f\x17\x23\x2a\xc6\x12\x02\x24\x28\xba\xd8\x27\xcc\x43\x07\xc5\x40\xa8\x3a\xa0\x96\x5f\x36\x15\x44\x00\x0a\x83\x26\x3b\xdd\x18\x91\x03\xa0\x40\x1c\x0c\x80\x98\x07\x6a\x76\x90\x82\x60\x84\xea\x07\x95\xc0\xb9\xf1\xc4\x44\x81\x62\xaa\x70\x10\xb2\xd5\xe4\xd8\x63\x54\xad\xb2\x6d\x4a\xd4\xdc\xce\x3c\xa3\x86\x5c\x0b\x03\x38\x8d\x14\x55\x2d\xcf\xa2\x27\x1f\x73\x95\x0d\xe0\x82\x28\xb0\xe4\x57\x95\x29\x04\xd6\xd4\x40\xf0\x2e\xaa\x07\xaf\xf9\xc2\x38\x87\xd1\x6a\x40\xb2\x93\x33\x73\xbe\x30\xf6\xec\x13\x40\x2e\x2d\xc9\x99\x03\x13\xe7\x77\x79\xc9\x03\xfb\xcc\xe6\xe8\x82\x17\x5f\xe0\x08\xaa\xaa\x99\x17\x31\x7f\xf6\xc3\x2a\x6a\xb2\xba\x87\x9a\x4b\x99\x75\x4f\x22\x4e\x19\xb5\x59\x24\x15\x94\x82\xcf\xcd\x2e\x19\x05\xa3\x89\xc8\x19\x98\x58\x00\x33\xcc\x31\x71\x62\x29\x30\xda\x74\x21\x06\x13\x88\x8f\x92\xd3\x47\x5c\xf4\x51\x8a\x42\xe0\x24\x88\x05\xb5\x58\x61\x9e\x73\x34\xc6\x18\xf3\x84\x20\x36\x18\x48\x00\x36\x38\x7a\x04\xd2\x5a\xbb\x18\x29\xc4\x98\xaf\xae\x09\x05\xb1\xc2\x3e\x42\x80\xdc\x06\x18\x83\x15\x74\xdb\x22\x39\x0f\x81\x63\x19\x0a\x7c\x4a\xa0\xe6\x3d\xcc\xaf\x94\x12\x96\x97\x25\x20\x18\x2a\x6a\xa4\x08\x19\x8d\x4c\xbe\x14\x19\x74\x01\x7d\x82\x32\x40\x44\x10\xc6\x54\xca\x75\x88\xc0\x92\xfb\x9c\x02\x72\x92\x5c\x9a\x19\x44\x4a\x3b\x13\x0e\x81\x21\x64\x94\x38\xc5\x00\xd6\x6b\xa3\x30\xa5\xdc\x6b\x0d\x26\xa6\x98\x5b\xb0\x40\xf0\x81\x53\x85\x31\x06\x13\x2c\x0e\x05\xcd\xed\x7b\x98\xa4\x5c\xed\x22\xb3\x94\xdc\x06\x1b\x2c\x92\x05\x80\x1c\x93\x7a\x8e\xc5\x8e\x24\x40\x40\xf9\x0d\x64\x2c\x77\xad\xe6\x51\xf6\xf7\xa0\x5c\x2b\x03\x85\x7c\xdb\x58\x2f\x5f\x8d\x44\x29\x94\x4b\xef\x72\xfe\xcf\xb5\xc2\x4b\x56\x31\xbc\x6f\xc8\x2c\x16\xcd\xa7\xef\xe8\x53\x1d\xb6\x82\x37\xd1\xa2\xd1\x60\x11\x00\xc9\x27\x19\x49\xd6\x86\x22\x1a\x0a\x9e\x7d\xf0\xa5\x57\x08\x97\x8b\x96\x94\x20\x94\x8e\xf9\x60\xf4\xb1\x81\x48\xa3\x8b\xf0\xcc\x7e\x90\xe4\xcf\x08\x9d\x81\x5a\xae\xf0\xb3\xe4\x84\xf2\x35\xff\x08\x2b\x67\x94\xda\x17\xcb\xa3\x8f\x40\x23\x69\xa6\x22\x57\x8f\xac\x58\xb1\x7e\x74\x00\xac\x95\xa7\x60\x36\xdb\xf8\x90\xfd\x60\xe9\x53\x8e\x37\x5a\x3e\x64\xd1\x80\x85\x34\x62\xbe\x4a\x96\x50\x55\xd8\xa4\x95\x86\x93\x46\x75\x0d\xda\x11\xeb\x31\xa8\x18\x37\x40\x36\x76\xca\xa3\x98\x0d\x99\xbe\x68\x98\x9a\x21\x89\x28\xdf\xb8\x86\x72\xf8\x86\xfc\xa2\x4a\x2d\x46\x31\xd6\x03\x1f\xe5\xa8\x8e\xa1\x29\x10\x3b\x42\xbc\xbf\x8c\x9d\x05\x07\x39\x1f\x43\xee\x41\x96\xb0\xa9\xf6\xa6\x8a\xdd\xb3\xcd\x5a\x47\x39\x65\x3e\xc0\x50\x9c\xaf\xd7\xe8\xd3\x3d\xe6\x5d\xfe\x28\x60\x56\xa1\x76\x1c\x18\xbb\xfc\x91\x28\xec\x4f\x68\xe5\x12\x38\xd6\x1b\x2b\xf0\xea\x40\xc2\x18\x03\xb0\x43\xb2\xd8\x2e\x44\x2a\x6d\x07\x28\x3a\x2c\x6f\x4b\x6c\x6a\x2f\x98\x95\x6f\x56\x1e\x61\x08\x94\xcb\xb7\x46\xf6\x9a\x67\x48\x83\xed\xc1\x98\x8f\x96\xc1\x73\xb0\x82\xec\xd5\x74\x82\xe6\x0b\x18\x85\x72\xc3\x34\x18\x39\x82\xa6\xe0\xed\xa8\x9a\xee\x2f\x83\x72\x6a\x09\x76\xd6\xbd\x0f\x8d\x0d\xaa\xd8\x3d\xc3\x0d\x0b\x90\x52\xae\x87\x1e\x25\x25\xb1\xae\xe1\xc1\x09\x2a\xd5\xf8\x91\x5a\x2b\x68\x4c\x75\x4c\x31\xf9\xfb\x2e\x7a\xe8\xc9\xdf\x75\x71\x37\xfe\xcf\xf3\xe3\xed\xe7\x4f\xe5\x83\xc6\xf9\x13\xc7\xf9\x53\xf6\xe5\x03\xc7\xf5\x23\xec\xed\xdd\x47\xf3\x8f\xff\xbe\x5d\xaf\x8e\x9a\xae\xdd\xb5\x93\xbb\x4f\x68\x97\xaf\x77\xbd\x7c\xf2\xed\x9b\xfd\xf9\x74\x35\x5f\x77\x7d\xe3\x7e\xfb\x2d\x0b\xbd\xfb\xc4\xf5\x1f\x94\xba\xd8\xda\x43\xdf\xb2\x91\x47\xbb\xfe\xd7\xdd\xa4\x37\xc9\xcb\xd5\xa7\xe3\xe1\x97\xc9\x72\xd5\xf5\xbf\xf6\x5b\xf7\xf7\xed\xd1\x5f\x9a\x7f\xf4\x51\xf2\xc3\xd5\x93\x28\x7d\xdf\x42\x98\xa1\x68\x84\xd0\xcd\x78\xd1\x41\xc0\xbe\xc7\x44\x1d\xb6\xbd\x98\xb8\x67\xdf\xd3\xfb\x3b\xf5\xcd\xbb\x99\xf8\xc5\xac\x6b\x67\xa1\xe3\x8e\x16\xdd\x42\x22\x77\x5d\x4c\xbc\x88\xb1\xc3\x38\xd2\x33\xdf\x6e\x5d\xbf\x9d\xb7\x37\xfd\xf1\xdd\xaf\xdf\x57\x73\xb7\x6e\x92\x04\x12\xe9\x8c\xfa\x16\x3a\x3f\xe3\x7e\xc6\xf3\xe8\x93\x32\x87\x6e\x21\xbd\x2e\xc6\x8a\xd6\x5d\x7f\xbd\xdc\x6c\xd6\x9b\xe3\xeb\x75\xd7\x1f\xff\xbd\xfd\xdc\x96\xb8\x8c\x7e\xfd\x27\x8a\x7f\x8f\x88\x49\x8c\x08\x69\xde\x01\x86\xd4\xb7\xa1\x5b\x44\x89\x51\x00\xb8\xed\x7d\x0a\x12\xc2\x77\x6c\xda\xdc\xce\xbe\xe6\x1f\x7f\xcc\x8e\xfd\x63\x93\xbe\x65\x9a\xb7\xd4\xd2\xac\xeb\x02\xb5\x82\x09\xa0\x4f\x1c\xb8\x0b\x01\x88\x67\xdf\xd1\xfd\xb5\xbd\xbe\xca\x3f\xfe\x98\xee\xfd\x63\x13\x5a\x00\x6a\xeb\xbd\x27\xd6\x9e\x7c\x94\x59\xef\x17\x41\x22\x68\x4a\x3c\x0b\xf0\x1d\xdd\xbf\x5e\x5f\xd9\xff\xfe\x98\xe6\xfa\xd0\x04\x7c\x3f\x4f\xb3\x34\x9f\x07\xe8\x17\xc6\x3a\x94\x19\xc6\x56\x54\x17\xdd\xbc\x0b\xde\xa4\x3e\x69\x9a\x7f\x94\x94\xdb\xcd\xfc\x9f\x7f\x17\xe3\x78\x5b\xbe\x3a\xb7\x9d\xb4\x10\x39\xfa\x79\xb7\x98\x75\xdc\xe6\xf2\x0a\xb1\x9d\x7b\xf0\x94\x3c\x22\xe6\xe8\xbe\xfc\xf3\x7a\x36\xeb\xdb\x9d\x25\x6a\xc4\x30\x9f\xdb\x40\x9b\x66\x89\xba\x79\xa7\x34\x57\xa4\xb9\xc6\x7e\xd6\x2b\x75\x07\x5a\x9e\x3c\xf9\xf6\x6d\xb9\x68\xdc\xc9\xf4\x6c\x7b\x9a\xbf\x81\xd1\x95\x22\xf4\xfb\x75\xb7\xf3\xab\xed\x5e\xbb\xb4\xd8\xce\x63\x47\x69\xde\x2e\xbc\xce\x17\x7d\x8f\x2d\xf7\x38\x9b\xb3\x76\xf3\x45\x3c\xd0\xfe\xed\x5b\xbf\x32\x7d\xc5\x86\xf7\xed\x66\xb7\xb4\xe2\xf6\x67\x2d\xb9\xd9\x0b\xb8\xf3\x7a\x92\x80\xb0\x40\x96\x05\xa8\x2c\x7a\x98\xf7\x10\xa3\x0f\x3c\x5b\xcc\x3c\x8b\xe7\xff\x17\xaf\x8f\xf4\xd5\xfd\xcf\x67\x2d\xab\xe7\x04\x8c\xf9\x6e\x91\xa4\x03\xc6\x79\x64\x9a\xcd\xe6\xd4\xd1\x77\xf7\xff\xb6\xbd\xee\xb7\x37\xed\xbc\xff\xb3\xfb\x5f\x95\xa7\x07\x63\x16\x4a\xda\x77\x8c\xbd\xce\x12\x2d\xb4\x83\xd9\x6c\x2e\x28\x61\xd6\x87\xd4\xc7\x38\xff\x07\xc6\xfc\x4e\x9d\xcb\xd5\x72\x37\x41\xe8\x5b\x4b\x54\xee\x80\x88\x43\x64\xe1\x59\xf0\xd0\x2f\xe6\x20\x3d\x76\x87\x6c\xfb\x7d\x92\xeb\x17\xa7\x5a\x52\xed\x25\xcd\x59\x99\xe7\x4c\x6d\x07\x91\xfa\x79\x2b\x69\xe6\x41\xc2\x4c\x1f\xc8\xfe\x9d\xe2\xaf\xfb\xdd\x66\x39\xdf\x4e\x6e\x36\xeb\xcf\xcb\xae\xdf\xec\xdd\x47\xd0\xc5\x9e\x66\xbe\x5f\xc4\xb9\xa4\x2e\x20\x51\x9a\xc7\x2e\xb6\x7d\xdb\x2e\x84\xe5\x4f\x6d\xe6\xa1\xb6\x9b\xcd\xfa\xba\xdf\x5d\xf6\xb7\xdb\x89\x2c\x08\x66\x2d\xcd\xe2\x62\xd1\x25\xf1\x8b\x56\x21\xb4\xbe\x8d\x41\x89\x7a\x0d\xe9\x81\xc6\x6f\xdf\x9a\x4d\xbb\xfa\xd4\x37\xee\xf4\xd7\xdd\xa6\x7e\x51\x6a\xdb\xfc\xf6\xdb\x03\x5b\x7e\xfb\x6d\xf4\xa4\x3d\xd7\xaf\xba\xe6\x8f\x12\xea\x76\x39\x89\x7d\x90\x59\x87\x5d\xa2\x30\xeb\x78\x31\x0b\x00\xac\x5d\x4c\x7d\xb0\xd3\x1a\x3e\x12\x85\x27\xfb\xaf\x89\x2d\xbb\xe1\xeb\xfe\xb3\x76\xbb\x9c\x4f\xba\xcd\xfa\xa6\x5b\x7f\x59\x4d\xbe\xac\x37\xd7\x97\xeb\xab\xde\x9e\xdc\x7f\x67\xab\x7c\xef\xec\xf9\x71\xf9\x7f\x0f\xf8\xbf\x01\x00\x00\xff\xff\xf8\xa8\x08\xb2\x4e\x40\x00\x00") func web_uiIndexHtmlBytes() ([]byte, error) { return bindataRead( @@ -444,7 +675,7 @@ func web_uiIndexHtml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/index.html", size: 15541, mode: os.FileMode(420), modTime: time.Unix(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/index.html", size: 16462, mode: os.FileMode(420), modTime: time.Unix(1642782761, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -464,7 +695,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(1632315734, 0)} + info := bindataFileInfo{name: "web_ui/oidc/callback", size: 492, mode: os.FileMode(420), modTime: time.Unix(1642782761, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -484,7 +715,7 @@ func web_uiRobotsTxt() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/robots.txt", size: 53, mode: os.FileMode(420), modTime: time.Unix(1632315734, 0)} + info := bindataFileInfo{name: "web_ui/robots.txt", size: 53, mode: os.FileMode(420), modTime: time.Unix(1642782761, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -504,7 +735,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(1632315833, 0)} + info := bindataFileInfo{name: "web_ui/torii/redirect.html", size: 506, mode: os.FileMode(420), modTime: time.Unix(1642782761, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -564,9 +795,20 @@ var _bindata = map[string]func() (*asset, error){ "web_ui/assets/apple-touch-icon-01cd4680782fbb5bc02301347df9903d.png": web_uiAssetsAppleTouchIcon01cd4680782fbb5bc02301347df9903dPng, "web_ui/assets/codemirror/mode/javascript/javascript-77218cd1268ea6df75775114ae086566.js": web_uiAssetsCodemirrorModeJavascriptJavascript77218cd1268ea6df75775114ae086566Js, "web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js": web_uiAssetsCodemirrorModeRubyRubyEa43ca3a3bdd63a52811e8464d66134bJs, + "web_ui/assets/codemirror/mode/xml/xml-10ec8b8cc61ef0fbd25b27a599fdcd60.js": web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60Js, "web_ui/assets/codemirror/mode/yaml/yaml-3f129a000349e3075be0f65719884b61.js": web_uiAssetsCodemirrorModeYamlYaml3f129a000349e3075be0f65719884b61Js, - "web_ui/assets/consul-ui-51d90776c9d9526f1bc127d33ec88b1e.css": web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCss, - "web_ui/assets/consul-ui-eff804c118e6bc3a3c4f9cb07c266b25.js": web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25Js, + "web_ui/assets/consul-acls/routes-75a2ac7d38caf09cfee2a4e2bc49dcf7.js": web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7Js, + "web_ui/assets/consul-acls/services-8b6b2b2bea3add7709b8075a5ed5652b.js": web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJs, + "web_ui/assets/consul-nspaces/routes-f939ed42e9b83f9d1bbc5256be68e77c.js": web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJs, + "web_ui/assets/consul-nspaces/services-8b6b2b2bea3add7709b8075a5ed5652b.js": web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJs, + "web_ui/assets/consul-partitions/routes-cba490481425519435d142c743bbc3d3.js": web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3Js, + "web_ui/assets/consul-partitions/services-85621f245f195fe1ce177064bfb04504.js": web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504Js, + "web_ui/assets/consul-ui/routes-7726cc49168b83dcd93c923c97ebe93d.js": web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJs, + "web_ui/assets/consul-ui/routes-debug-8f884a3e3f7105d43b7b4024db9b4c99.js": web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99Js, + "web_ui/assets/consul-ui/services-a17470cdfbd4a4096117ac0103802226.js": web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226Js, + "web_ui/assets/consul-ui/services-debug-5a3f1d2e3954a05aa8383f02db31b8e6.js": web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6Js, + "web_ui/assets/consul-ui-0211f3a94fa457c0e5017b752330823c.css": web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCss, + "web_ui/assets/consul-ui-7e65bd2d836bd4fb61149d78e6516029.js": web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029Js, "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, @@ -576,8 +818,8 @@ var _bindata = map[string]func() (*asset, error){ "web_ui/assets/loading-cylon-pink.svg": web_uiAssetsLoadingCylonPinkSvg, "web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js": web_uiAssetsMetricsProvidersConsul31d7e3b0ef7c58d62338c7d7aeaaf545Js, "web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js": web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js, - "web_ui/assets/vendor-11065761200f308590a78bf8e141bc49.js": web_uiAssetsVendor11065761200f308590a78bf8e141bc49Js, "web_ui/assets/vendor-69ef69e98b7d14d1513f8056b6c6b48d.css": web_uiAssetsVendor69ef69e98b7d14d1513f8056b6c6b48dCss, + "web_ui/assets/vendor-a399e58c4944c43ad173eca58b0156b9.js": web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9Js, "web_ui/index.html": web_uiIndexHtml, "web_ui/oidc/callback": web_uiOidcCallback, "web_ui/robots.txt": web_uiRobotsTxt, @@ -636,13 +878,34 @@ var _bintree = &bintree{nil, map[string]*bintree{ "ruby": &bintree{nil, map[string]*bintree{ "ruby-ea43ca3a3bdd63a52811e8464d66134b.js": &bintree{web_uiAssetsCodemirrorModeRubyRubyEa43ca3a3bdd63a52811e8464d66134bJs, map[string]*bintree{}}, }}, + "xml": &bintree{nil, map[string]*bintree{ + "xml-10ec8b8cc61ef0fbd25b27a599fdcd60.js": &bintree{web_uiAssetsCodemirrorModeXmlXml10ec8b8cc61ef0fbd25b27a599fdcd60Js, map[string]*bintree{}}, + }}, "yaml": &bintree{nil, map[string]*bintree{ "yaml-3f129a000349e3075be0f65719884b61.js": &bintree{web_uiAssetsCodemirrorModeYamlYaml3f129a000349e3075be0f65719884b61Js, map[string]*bintree{}}, }}, }}, }}, - "consul-ui-51d90776c9d9526f1bc127d33ec88b1e.css": &bintree{web_uiAssetsConsulUi51d90776c9d9526f1bc127d33ec88b1eCss, map[string]*bintree{}}, - "consul-ui-eff804c118e6bc3a3c4f9cb07c266b25.js": &bintree{web_uiAssetsConsulUiEff804c118e6bc3a3c4f9cb07c266b25Js, map[string]*bintree{}}, + "consul-acls": &bintree{nil, map[string]*bintree{ + "routes-75a2ac7d38caf09cfee2a4e2bc49dcf7.js": &bintree{web_uiAssetsConsulAclsRoutes75a2ac7d38caf09cfee2a4e2bc49dcf7Js, map[string]*bintree{}}, + "services-8b6b2b2bea3add7709b8075a5ed5652b.js": &bintree{web_uiAssetsConsulAclsServices8b6b2b2bea3add7709b8075a5ed5652bJs, map[string]*bintree{}}, + }}, + "consul-nspaces": &bintree{nil, map[string]*bintree{ + "routes-f939ed42e9b83f9d1bbc5256be68e77c.js": &bintree{web_uiAssetsConsulNspacesRoutesF939ed42e9b83f9d1bbc5256be68e77cJs, map[string]*bintree{}}, + "services-8b6b2b2bea3add7709b8075a5ed5652b.js": &bintree{web_uiAssetsConsulNspacesServices8b6b2b2bea3add7709b8075a5ed5652bJs, map[string]*bintree{}}, + }}, + "consul-partitions": &bintree{nil, map[string]*bintree{ + "routes-cba490481425519435d142c743bbc3d3.js": &bintree{web_uiAssetsConsulPartitionsRoutesCba490481425519435d142c743bbc3d3Js, map[string]*bintree{}}, + "services-85621f245f195fe1ce177064bfb04504.js": &bintree{web_uiAssetsConsulPartitionsServices85621f245f195fe1ce177064bfb04504Js, map[string]*bintree{}}, + }}, + "consul-ui": &bintree{nil, map[string]*bintree{ + "routes-7726cc49168b83dcd93c923c97ebe93d.js": &bintree{web_uiAssetsConsulUiRoutes7726cc49168b83dcd93c923c97ebe93dJs, map[string]*bintree{}}, + "routes-debug-8f884a3e3f7105d43b7b4024db9b4c99.js": &bintree{web_uiAssetsConsulUiRoutesDebug8f884a3e3f7105d43b7b4024db9b4c99Js, map[string]*bintree{}}, + "services-a17470cdfbd4a4096117ac0103802226.js": &bintree{web_uiAssetsConsulUiServicesA17470cdfbd4a4096117ac0103802226Js, map[string]*bintree{}}, + "services-debug-5a3f1d2e3954a05aa8383f02db31b8e6.js": &bintree{web_uiAssetsConsulUiServicesDebug5a3f1d2e3954a05aa8383f02db31b8e6Js, map[string]*bintree{}}, + }}, + "consul-ui-0211f3a94fa457c0e5017b752330823c.css": &bintree{web_uiAssetsConsulUi0211f3a94fa457c0e5017b752330823cCss, map[string]*bintree{}}, + "consul-ui-7e65bd2d836bd4fb61149d78e6516029.js": &bintree{web_uiAssetsConsulUi7e65bd2d836bd4fb61149d78e6516029Js, 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{}}, @@ -654,8 +917,8 @@ var _bintree = &bintree{nil, map[string]*bintree{ "consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js": &bintree{web_uiAssetsMetricsProvidersConsul31d7e3b0ef7c58d62338c7d7aeaaf545Js, map[string]*bintree{}}, "prometheus-5f31ba3b7ffd850fa916a0a76933e968.js": &bintree{web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js, map[string]*bintree{}}, }}, - "vendor-11065761200f308590a78bf8e141bc49.js": &bintree{web_uiAssetsVendor11065761200f308590a78bf8e141bc49Js, map[string]*bintree{}}, "vendor-69ef69e98b7d14d1513f8056b6c6b48d.css": &bintree{web_uiAssetsVendor69ef69e98b7d14d1513f8056b6c6b48dCss, map[string]*bintree{}}, + "vendor-a399e58c4944c43ad173eca58b0156b9.js": &bintree{web_uiAssetsVendorA399e58c4944c43ad173eca58b0156b9Js, map[string]*bintree{}}, }}, "index.html": &bintree{web_uiIndexHtml, map[string]*bintree{}}, "oidc": &bintree{nil, map[string]*bintree{ From d209de4230346f78e55a6e9a3a5362461dfbb28c Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Fri, 21 Jan 2022 16:10:54 -0500 Subject: [PATCH 302/404] Push bindata_assetfs.go to a non-protected branch (#12151) --- .circleci/config.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 274092b15..aa5c02dd3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -689,11 +689,15 @@ jobs: if ! git diff --quiet --exit-code HEAD^! ui/; then git config --local user.email "github-team-consul-core@hashicorp.com" git config --local user.name "hc-github-team-consul-core" - + + # checkout the CI branch and merge latest from main + git checkout ci/main-assetfs-build + git merge --no-edit main + short_sha=$(git rev-parse --short HEAD) git add agent/uiserver/bindata_assetfs.go git commit -m "auto-updated agent/uiserver/bindata_assetfs.go from commit ${short_sha}" - git push origin main + git push origin ci/main-assetfs-build else echo "no UI changes so no static assets to publish" fi From b7541e7698479311e7b22b7d7bbb5a3d144e6785 Mon Sep 17 00:00:00 2001 From: Michele Degges Date: Fri, 21 Jan 2022 13:43:21 -0800 Subject: [PATCH 303/404] Add missing consul.env file for linux packaging --- .release/linux/package/etc/consul.d/consul.env | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .release/linux/package/etc/consul.d/consul.env diff --git a/.release/linux/package/etc/consul.d/consul.env b/.release/linux/package/etc/consul.d/consul.env new file mode 100644 index 000000000..e69de29bb From a2b839a838cf3b77bd4699f95caa87f6379f6c52 Mon Sep 17 00:00:00 2001 From: Peter M <36747421+pcmccarron@users.noreply.github.com> Date: Fri, 21 Jan 2022 16:14:45 -0700 Subject: [PATCH 304/404] Updated intro text Jeff and I re-worded/expanded the text a bit here for the introduction section. --- website/content/docs/api-gateway.mdx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 3327e8004..d2d44d465 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -3,14 +3,16 @@ layout: docs page_title: API Gateway description: Using Consul API gateway functionality --- - # Consul API Gateway -This topic describes how to use the Consul API Gateway module, which enables applications and services running in a datacenter to be accessed by network clients outside the datacenter. This type of network traffic is commonly referred to as "north-south" network traffic. +The Consul API Gateway add-on module helps users control access to services running within a Consul service mesh. Using the API Gateway, applications and services running in a Consul datacenter can be accessed by network clients residing outside of the datacenter. This type of network traffic is commonly referred to as "north-south" network traffic as it refers to the flow of data into and out of a specific environment. Requests from clients can also be forwarded based on path or request protocol. ## Introduction -Consul API Gateway is an implementation of the Kubernetes Gateway [API Specification](https://gateway-api.sigs.k8s.io/). The specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes. +Consul API Gateway is an implementation of the Kubernetes Gateway [API Specification](https://gateway-api.sigs.k8s.io/). This specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes based on the path or protocol of a client request. The Consul API gateway solves for two primary use cases: + +* **Controlling access at the point entry** - The Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g. VeriSign, Let’sEncrypt). +* **Simplifying traffic management** - The Consul API Gateway can be used to load balance requests across services and route traffic to the appropriate service based on matching one or more criteria such as hostname, path, header presence or value, and HTTP Method type (e.g. Get, Post, Patch). ## Requirements From d7418df51d5ed9a4a1ffaa57d3fb4017c1ec9dca Mon Sep 17 00:00:00 2001 From: David Yu Date: Fri, 21 Jan 2022 15:46:02 -0800 Subject: [PATCH 305/404] docs: 1.11.0 release notes (#12138) * Work in Progress * edit nav to show 1.11 * slight updates to release note content * acl changes * add details on bbolt * first draft * add more admin partition details * revert package-lock.json * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: Blake Covarrubias * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: Blake Covarrubias * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: Blake Covarrubias * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: Blake Covarrubias * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: Blake Covarrubias * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: Blake Covarrubias * add sds change, and 1.10 change for tproxy * Small changes * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: mrspanishviking * Update website/content/docs/release-notes/1-11-0.mdx Co-authored-by: mrspanishviking * adding Consul Service mesh term Co-authored-by: Blake Covarrubias Co-authored-by: mrspanishviking --- website/content/docs/release-notes/1-10-0.mdx | 2 +- website/content/docs/release-notes/1-11-0.mdx | 28 +++++++++++++++++++ website/data/docs-nav-data.json | 8 ++++-- 3 files changed, 35 insertions(+), 3 deletions(-) create mode 100644 website/content/docs/release-notes/1-11-0.mdx diff --git a/website/content/docs/release-notes/1-10-0.mdx b/website/content/docs/release-notes/1-10-0.mdx index 074d60967..5cadcbc26 100644 --- a/website/content/docs/release-notes/1-10-0.mdx +++ b/website/content/docs/release-notes/1-10-0.mdx @@ -7,7 +7,7 @@ page_title: 1.10.0 ## Release Highlights -- **Transparent Proxy:** Simplifies deploying applications into the service mesh by using iptables to redirect traffic from applications running in virtual machines or Kubernetes through the Envoy proxy. +- **Transparent Proxy:** Simplifies deploying applications into the service mesh by using iptables to redirect traffic from applications running in virtual machines or Kubernetes through the Envoy proxy. [`consul connect redirect-traffic`](/commands/connect/redirect-traffic) now provides a CLI interface for applying traffic redirection `iptables` rules to redirect traffic through an inbound and outbound listener on the Envoy sidecar. More information on how to utilize Transparent Proxy for Consul on Kubernetes could be found on [Transparent Proxy](/docs/connect/transparent-proxy). - **Support for xDS v3 and Incremental xDS:** Consul 1.10 will default to using xDS version 3 and Incremental xDS for all supported Envoy proxy versions bootstrapped by the Consul 1.10 CLI. This is driven by the fact that xDS v2 was deprecated in Envoy 1.15 and disabled in Envoy 1.17. Envoy proxies bootstrapped with older Consul CLI binaries will continue to use the xDS v2 state-of-the-world API. diff --git a/website/content/docs/release-notes/1-11-0.mdx b/website/content/docs/release-notes/1-11-0.mdx new file mode 100644 index 000000000..d2b80b698 --- /dev/null +++ b/website/content/docs/release-notes/1-11-0.mdx @@ -0,0 +1,28 @@ +--- +layout: docs +page_title: 1.11.0 +--- + +# Consul 1.11.0 + +## Release Highlights + +- **Admin Partitions (Enterprise):** Consul 1.11.0 Enteprise introduces a new entity for defining administrative and networking boundaries within a Consul deployment. This feature also enables servers to communicate with clients over a specific gossip segment created for each partition. This release also enables cross partition communication between services across partitions, using Mesh Gateways. For more information refer to the [Admin Partitions](/docs/enterprise/admin-partitions) documentation. + +- **Virtual IPs for services deployed with Consul Service Mesh:** Consul will now generate a unique virtual IP for each service deployed within Consul Service Mesh, allowing transparent proxy to route to services within a data center that exist in different clusters or outside the service mesh. + +- **Replace [boltdb](https://github.com/boltdb/bolt) with [etcd-io/bbolt](https://github.com/etcd-io/bbolt) for raft log store:** Consul now leverages `etcd-io/bbolt` as the default implementation of `boltdb` instead of `boltdb/bolt`. This change also exposes a configuration to allow for disabling boltdb freelist syncing. In addition, Consul now emits metrics for the raft boltdb store to provide insights into boltdb performance. + +- **TLS Certificates for Ingress Gateways via an SDS source:**: Ingress Gateways can now be configured to retrieve TLS certificates from an external SDS Service and load the TLS certificates for Ingress listeners. This configuration is set using the `ingress-gateway` configuration entry via the [SDS](/docs/connect/config-entries/ingress-gateway#sds) stanza within the Ingress Gateway TLS configuration. + +- **Vault Auth Method support for Connect CA Vault Provider:** Consul now supports configuring the Connect CA Vault provider to use auth methods for authentication to Vault. Consul supports using any non-deprecated auth method that is available in Vault v1.8.5, including AppRole, AliCloud, AWS, Azure, Cloud Foundry, GitHub, Google Cloud, JWT/OIDC, Kerberos, Kubernetes, LDAP, Oracle Cloud Infrastructure, Okta, Radius, TLS Certificates, and Username & Password. The Vault Auth Method for Connect CA Provider is utilized by default for the [Vault Secrets Backend](/docs/k8s/installation/vault) feature on Consul on Kubernetes. Utilizing a Vault Auth method would no longer require a Vault token to be managed or provisioned ahead of time to be used for authentication to Vault. + +## What's Changed + +- The legacy ACL system that was deprecated in Consul 1.4.0 has been removed. Before upgrading you should verify that all tokens and policies have been migrated to the newer ACL system. See the [Migrate Legacy ACL Tokens Learn Guide](https://learn.hashicorp.com/tutorials/consul/access-control-token-migration) for more information. + +- The `agent_master` ACL token has been renamed to `agent_recovery` ACL token. In addition, the `consul acl set-agent-token master` command has been replaced with `consul acl set-agent-token recovery`. See [ACL Agent Recovery Token](/docs/security/acl/acl-system#acl-agent-recovery-token) and [Consul ACL Set Agent Token](/commands/acl/set-agent-token) for more information. + +- Drops support for Envoy versions 1.15.x and 1.16.x + +For more detailed information, please refer to the [upgrade details page](/docs/upgrading/upgrade-specific#consul-1-11-0) and the [1.11.0 changelog](https://github.com/hashicorp/consul/releases/tag/v1.11.0). diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 66a0415cb..c58c64918 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -1067,12 +1067,16 @@ "title": "Release Notes", "routes": [ { - "title": "1.9.0", - "path": "release-notes/1-9-0" + "title": "1.11.0", + "path": "release-notes/1-11-0" }, { "title": "1.10.0", "path": "release-notes/1-10-0" + }, + { + "title": "1.9.0", + "path": "release-notes/1-9-0" } ] }, From 62c09b2d0aab1f1abb21dde087d14121bf16af18 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Sat, 22 Jan 2022 14:07:26 -0500 Subject: [PATCH 306/404] acl: embed ACLResolver in Client and Server In preparation for removing duplicate resolve token methods. --- agent/consul/acl_client.go | 4 ++-- agent/consul/acl_endpoint.go | 22 ++++++++++----------- agent/consul/acl_server.go | 10 +++++----- agent/consul/acl_test.go | 6 +++--- agent/consul/acl_token_exp.go | 2 +- agent/consul/client.go | 6 +++--- agent/consul/intention_endpoint.go | 2 +- agent/consul/internal_endpoint.go | 2 +- agent/consul/leader.go | 2 +- agent/consul/operator_autopilot_endpoint.go | 8 ++++---- agent/consul/operator_raft_endpoint.go | 4 ++-- agent/consul/server.go | 8 ++++---- agent/consul/server_serf.go | 2 +- 13 files changed, 39 insertions(+), 39 deletions(-) diff --git a/agent/consul/acl_client.go b/agent/consul/acl_client.go index 36f3f19a7..89fcd1b81 100644 --- a/agent/consul/acl_client.go +++ b/agent/consul/acl_client.go @@ -48,12 +48,12 @@ func (c *Client) ResolveTokenToIdentity(token string) (structs.ACLIdentity, erro // not using ResolveTokenToIdentityAndAuthorizer because in this case we don't // need to resolve the roles, policies and namespace but just want the identity // information such as accessor id. - return c.acls.ResolveTokenToIdentity(token) + return c.ACLResolver.ResolveTokenToIdentity(token) } // TODO: Server has an identical implementation, remove duplication func (c *Client) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { - identity, authz, err := c.acls.ResolveTokenToIdentityAndAuthorizer(token) + identity, authz, err := c.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) if err != nil { return nil, err } diff --git a/agent/consul/acl_endpoint.go b/agent/consul/acl_endpoint.go index 376278c83..13799c318 100644 --- a/agent/consul/acl_endpoint.go +++ b/agent/consul/acl_endpoint.go @@ -724,7 +724,7 @@ func (a *ACL) tokenSetInternal(args *structs.ACLTokenSetRequest, reply *structs. } // Purge the identity from the cache to prevent using the previous definition of the identity - a.srv.acls.cache.RemoveIdentity(tokenSecretCacheID(token.SecretID)) + a.srv.ACLResolver.cache.RemoveIdentity(tokenSecretCacheID(token.SecretID)) // Don't check expiration times here as it doesn't really matter. if _, updatedToken, err := a.srv.fsm.State().ACLTokenGetByAccessor(nil, token.AccessorID, nil); err == nil && updatedToken != nil { @@ -876,7 +876,7 @@ func (a *ACL) TokenDelete(args *structs.ACLTokenDeleteRequest, reply *string) er } // Purge the identity from the cache to prevent using the previous definition of the identity - a.srv.acls.cache.RemoveIdentity(tokenSecretCacheID(token.SecretID)) + a.srv.ACLResolver.cache.RemoveIdentity(tokenSecretCacheID(token.SecretID)) if reply != nil { *reply = token.AccessorID @@ -1198,7 +1198,7 @@ func (a *ACL) PolicySet(args *structs.ACLPolicySetRequest, reply *structs.ACLPol } // Remove from the cache to prevent stale cache usage - a.srv.acls.cache.RemovePolicy(policy.ID) + a.srv.ACLResolver.cache.RemovePolicy(policy.ID) if _, policy, err := a.srv.fsm.State().ACLPolicyGetByID(nil, policy.ID, &policy.EnterpriseMeta); err == nil && policy != nil { *reply = *policy @@ -1257,7 +1257,7 @@ func (a *ACL) PolicyDelete(args *structs.ACLPolicyDeleteRequest, reply *string) return fmt.Errorf("Failed to apply policy delete request: %v", err) } - a.srv.acls.cache.RemovePolicy(policy.ID) + a.srv.ACLResolver.cache.RemovePolicy(policy.ID) *reply = policy.Name @@ -1318,12 +1318,12 @@ func (a *ACL) PolicyResolve(args *structs.ACLPolicyBatchGetRequest, reply *struc } // get full list of policies for this token - identity, policies, err := a.srv.acls.resolveTokenToIdentityAndPolicies(args.Token) + identity, policies, err := a.srv.ACLResolver.resolveTokenToIdentityAndPolicies(args.Token) if err != nil { return err } - entIdentity, entPolicies, err := a.srv.acls.resolveEnterpriseIdentityAndPolicies(identity) + entIdentity, entPolicies, err := a.srv.ACLResolver.resolveEnterpriseIdentityAndPolicies(identity) if err != nil { return err } @@ -1609,7 +1609,7 @@ func (a *ACL) RoleSet(args *structs.ACLRoleSetRequest, reply *structs.ACLRole) e } // Remove from the cache to prevent stale cache usage - a.srv.acls.cache.RemoveRole(role.ID) + a.srv.ACLResolver.cache.RemoveRole(role.ID) if _, role, err := a.srv.fsm.State().ACLRoleGetByID(nil, role.ID, &role.EnterpriseMeta); err == nil && role != nil { *reply = *role @@ -1664,7 +1664,7 @@ func (a *ACL) RoleDelete(args *structs.ACLRoleDeleteRequest, reply *string) erro return fmt.Errorf("Failed to apply role delete request: %v", err) } - a.srv.acls.cache.RemoveRole(role.ID) + a.srv.ACLResolver.cache.RemoveRole(role.ID) *reply = role.Name @@ -1719,12 +1719,12 @@ func (a *ACL) RoleResolve(args *structs.ACLRoleBatchGetRequest, reply *structs.A } // get full list of roles for this token - identity, roles, err := a.srv.acls.resolveTokenToIdentityAndRoles(args.Token) + identity, roles, err := a.srv.ACLResolver.resolveTokenToIdentityAndRoles(args.Token) if err != nil { return err } - entIdentity, entRoles, err := a.srv.acls.resolveEnterpriseIdentityAndRoles(identity) + entIdentity, entRoles, err := a.srv.ACLResolver.resolveEnterpriseIdentityAndRoles(identity) if err != nil { return err } @@ -2481,7 +2481,7 @@ func (a *ACL) Logout(args *structs.ACLLogoutRequest, reply *bool) error { } // Purge the identity from the cache to prevent using the previous definition of the identity - a.srv.acls.cache.RemoveIdentity(tokenSecretCacheID(token.SecretID)) + a.srv.ACLResolver.cache.RemoveIdentity(tokenSecretCacheID(token.SecretID)) *reply = true diff --git a/agent/consul/acl_server.go b/agent/consul/acl_server.go index f16b1cc86..28c83ab11 100644 --- a/agent/consul/acl_server.go +++ b/agent/consul/acl_server.go @@ -160,7 +160,7 @@ func (s *Server) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error } func (s *Server) ResolveToken(token string) (acl.Authorizer, error) { - _, authz, err := s.acls.ResolveTokenToIdentityAndAuthorizer(token) + _, authz, err := s.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) return authz, err } @@ -168,12 +168,12 @@ func (s *Server) ResolveTokenToIdentity(token string) (structs.ACLIdentity, erro // not using ResolveTokenToIdentityAndAuthorizer because in this case we don't // need to resolve the roles, policies and namespace but just want the identity // information such as accessor id. - return s.acls.ResolveTokenToIdentity(token) + return s.ACLResolver.ResolveTokenToIdentity(token) } // TODO: Client has an identical implementation, remove duplication func (s *Server) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { - identity, authz, err := s.acls.ResolveTokenToIdentityAndAuthorizer(token) + identity, authz, err := s.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) if err != nil { return nil, err } @@ -197,9 +197,9 @@ func (s *Server) ResolveTokenAndDefaultMeta(token string, entMeta *structs.Enter } func (s *Server) filterACL(token string, subj interface{}) error { - return filterACL(s.acls, token, subj) + return filterACL(s.ACLResolver, token, subj) } func (s *Server) filterACLWithAuthorizer(authorizer acl.Authorizer, subj interface{}) { - filterACLWithAuthorizer(s.acls.logger, authorizer, subj) + filterACLWithAuthorizer(s.ACLResolver.logger, authorizer, subj) } diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index d45b1e197..2d4f7dc5e 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -4065,7 +4065,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t require.NoError(t, err) runStep(t, "first resolve", func(t *testing.T) { - _, authz, err := srv.acls.ResolveTokenToIdentityAndAuthorizer(token) + _, authz, err := srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) require.NoError(t, err) require.NotNil(t, authz) require.Equal(t, acl.Allow, authz.KeyRead("foo", nil)) @@ -4084,7 +4084,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t err := msgpackrpc.CallWithCodec(codec, "ACL.PolicySet", &reqPolicy, &structs.ACLPolicy{}) require.NoError(t, err) - _, authz, err := srv.acls.ResolveTokenToIdentityAndAuthorizer(token) + _, authz, err := srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) require.NoError(t, err) require.NotNil(t, authz) require.Equal(t, acl.Deny, authz.KeyRead("foo", nil)) @@ -4100,7 +4100,7 @@ func TestACLResolver_ResolveTokenToIdentityAndAuthorizer_UpdatesPurgeTheCache(t err := msgpackrpc.CallWithCodec(codec, "ACL.TokenDelete", &req, &resp) require.NoError(t, err) - _, _, err = srv.acls.ResolveTokenToIdentityAndAuthorizer(token) + _, _, err = srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) require.True(t, acl.IsErrNotFound(err), "Error %v is not acl.ErrNotFound", err) }) } diff --git a/agent/consul/acl_token_exp.go b/agent/consul/acl_token_exp.go index a4dfa180f..370d140ef 100644 --- a/agent/consul/acl_token_exp.go +++ b/agent/consul/acl_token_exp.go @@ -107,7 +107,7 @@ func (s *Server) reapExpiredACLTokens(local, global bool) (int, error) { // Purge the identities from the cache for _, secretID := range secretIDs { - s.acls.cache.RemoveIdentity(tokenSecretCacheID(secretID)) + s.ACLResolver.cache.RemoveIdentity(tokenSecretCacheID(secretID)) } return len(req.TokenIDs), nil diff --git a/agent/consul/client.go b/agent/consul/client.go index 999f98663..d83a1c3c1 100644 --- a/agent/consul/client.go +++ b/agent/consul/client.go @@ -56,7 +56,7 @@ type Client struct { config *Config // acls is used to resolve tokens to effective policies - acls *ACLResolver + *ACLResolver // Connection pool to consul servers connPool *pool.ConnPool @@ -127,7 +127,7 @@ func NewClient(config *Config, deps Deps) (*Client, error) { Tokens: deps.Tokens, } var err error - if c.acls, err = NewACLResolver(&aclConfig); err != nil { + if c.ACLResolver, err = NewACLResolver(&aclConfig); err != nil { c.Shutdown() return nil, fmt.Errorf("Failed to create ACL resolver: %v", err) } @@ -172,7 +172,7 @@ func (c *Client) Shutdown() error { // Close the connection pool c.connPool.Shutdown() - c.acls.Close() + c.ACLResolver.Close() return nil } diff --git a/agent/consul/intention_endpoint.go b/agent/consul/intention_endpoint.go index 862637de5..814d1590a 100644 --- a/agent/consul/intention_endpoint.go +++ b/agent/consul/intention_endpoint.go @@ -100,7 +100,7 @@ func (s *Intention) Apply(args *structs.IntentionRequest, reply *string) error { } // Get the ACL token for the request for the checks below. - identity, authz, err := s.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := s.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } diff --git a/agent/consul/internal_endpoint.go b/agent/consul/internal_endpoint.go index 14fbc4be4..dea21cfc6 100644 --- a/agent/consul/internal_endpoint.go +++ b/agent/consul/internal_endpoint.go @@ -433,7 +433,7 @@ func (m *Internal) KeyringOperation( } // Check ACLs - identity, authz, err := m.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := m.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } diff --git a/agent/consul/leader.go b/agent/consul/leader.go index 1b55767b1..d8bf099d0 100644 --- a/agent/consul/leader.go +++ b/agent/consul/leader.go @@ -363,7 +363,7 @@ func (s *Server) initializeACLs(ctx context.Context) error { // Purge the cache, since it could've changed while we were not the // leader. - s.acls.cache.Purge() + s.ACLResolver.cache.Purge() // Purge the auth method validators since they could've changed while we // were not leader. diff --git a/agent/consul/operator_autopilot_endpoint.go b/agent/consul/operator_autopilot_endpoint.go index 9430b30de..d600df83c 100644 --- a/agent/consul/operator_autopilot_endpoint.go +++ b/agent/consul/operator_autopilot_endpoint.go @@ -17,7 +17,7 @@ func (op *Operator) AutopilotGetConfiguration(args *structs.DCSpecificRequest, r } // This action requires operator read access. - identity, authz, err := op.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := op.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } @@ -49,7 +49,7 @@ func (op *Operator) AutopilotSetConfiguration(args *structs.AutopilotSetConfigRe } // This action requires operator write access. - identity, authz, err := op.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := op.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } @@ -84,7 +84,7 @@ func (op *Operator) ServerHealth(args *structs.DCSpecificRequest, reply *structs } // This action requires operator read access. - identity, authz, err := op.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := op.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } @@ -151,7 +151,7 @@ func (op *Operator) AutopilotState(args *structs.DCSpecificRequest, reply *autop } // This action requires operator read access. - identity, authz, err := op.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := op.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } diff --git a/agent/consul/operator_raft_endpoint.go b/agent/consul/operator_raft_endpoint.go index 4cf38185a..72ae5b195 100644 --- a/agent/consul/operator_raft_endpoint.go +++ b/agent/consul/operator_raft_endpoint.go @@ -81,7 +81,7 @@ func (op *Operator) RaftRemovePeerByAddress(args *structs.RaftRemovePeerRequest, // This is a super dangerous operation that requires operator write // access. - identity, authz, err := op.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := op.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } @@ -134,7 +134,7 @@ func (op *Operator) RaftRemovePeerByID(args *structs.RaftRemovePeerRequest, repl // This is a super dangerous operation that requires operator write // access. - identity, authz, err := op.srv.acls.ResolveTokenToIdentityAndAuthorizer(args.Token) + identity, authz, err := op.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err } diff --git a/agent/consul/server.go b/agent/consul/server.go index e076af721..851e1745b 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -141,7 +141,7 @@ type Server struct { aclConfig *acl.Config // acls is used to resolve tokens to effective policies - acls *ACLResolver + *ACLResolver aclAuthMethodValidators authmethod.Cache @@ -457,7 +457,7 @@ func NewServer(config *Config, flat Deps) (*Server, error) { Tokens: flat.Tokens, } // Initialize the ACL resolver. - if s.acls, err = NewACLResolver(&aclConfig); err != nil { + if s.ACLResolver, err = NewACLResolver(&aclConfig); err != nil { s.Shutdown() return nil, fmt.Errorf("Failed to create ACL resolver: %v", err) } @@ -994,8 +994,8 @@ func (s *Server) Shutdown() error { s.connPool.Shutdown() } - if s.acls != nil { - s.acls.Close() + if s.ACLResolver != nil { + s.ACLResolver.Close() } if s.fsm != nil { diff --git a/agent/consul/server_serf.go b/agent/consul/server_serf.go index 44c3f857a..ff1b1e406 100644 --- a/agent/consul/server_serf.go +++ b/agent/consul/server_serf.go @@ -121,7 +121,7 @@ func (s *Server) setupSerfConfig(opts setupSerfOptions) (*serf.Config, error) { // TODO(ACL-Legacy-Compat): remove in phase 2. These are kept for now to // allow for upgrades. - if s.acls.ACLsEnabled() { + if s.ACLResolver.ACLsEnabled() { conf.Tags[metadata.TagACLs] = string(structs.ACLModeEnabled) } else { conf.Tags[metadata.TagACLs] = string(structs.ACLModeDisabled) From 314614f073f89e06af233f3cd7487ffba429373e Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Sat, 22 Jan 2022 14:12:08 -0500 Subject: [PATCH 307/404] acl: remove duplicate methods Now that ACLResolver is embedded we don't need ResolveTokenToIdentity on Client and Server. Moving ResolveTokenAndDefaultMeta to ACLResolver removes the duplicate implementation. --- agent/consul/acl.go | 24 ++++++++++++++++++++++++ agent/consul/acl_client.go | 33 --------------------------------- agent/consul/acl_server.go | 30 ------------------------------ 3 files changed, 24 insertions(+), 63 deletions(-) diff --git a/agent/consul/acl.go b/agent/consul/acl.go index b475bf159..797bd22e4 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -1158,6 +1158,30 @@ func (r *ACLResolver) ACLsEnabled() bool { return true } +func (r *ACLResolver) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { + identity, authz, err := r.ResolveTokenToIdentityAndAuthorizer(token) + if err != nil { + return nil, err + } + + if entMeta == nil { + entMeta = &structs.EnterpriseMeta{} + } + + // Default the EnterpriseMeta based on the Tokens meta or actual defaults + // in the case of unknown identity + if identity != nil { + entMeta.Merge(identity.EnterpriseMetadata()) + } else { + entMeta.Merge(structs.DefaultEnterpriseMetaInDefaultPartition()) + } + + // Use the meta to fill in the ACL authorization context + entMeta.FillAuthzContext(authzContext) + + return authz, err +} + // aclFilter is used to filter results from our state store based on ACL rules // configured for the provided token. type aclFilter struct { diff --git a/agent/consul/acl_client.go b/agent/consul/acl_client.go index 89fcd1b81..0d11906a3 100644 --- a/agent/consul/acl_client.go +++ b/agent/consul/acl_client.go @@ -1,7 +1,6 @@ package consul import ( - "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/structs" ) @@ -43,35 +42,3 @@ func (c *Client) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error // clients do no local role resolution at the moment return false, nil, nil } - -func (c *Client) ResolveTokenToIdentity(token string) (structs.ACLIdentity, error) { - // not using ResolveTokenToIdentityAndAuthorizer because in this case we don't - // need to resolve the roles, policies and namespace but just want the identity - // information such as accessor id. - return c.ACLResolver.ResolveTokenToIdentity(token) -} - -// TODO: Server has an identical implementation, remove duplication -func (c *Client) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { - identity, authz, err := c.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) - if err != nil { - return nil, err - } - - if entMeta == nil { - entMeta = &structs.EnterpriseMeta{} - } - - // Default the EnterpriseMeta based on the Tokens meta or actual defaults - // in the case of unknown identity - if identity != nil { - entMeta.Merge(identity.EnterpriseMetadata()) - } else { - entMeta.Merge(structs.DefaultEnterpriseMetaInDefaultPartition()) - } - - // Use the meta to fill in the ACL authorization context - entMeta.FillAuthzContext(authzContext) - - return authz, err -} diff --git a/agent/consul/acl_server.go b/agent/consul/acl_server.go index 28c83ab11..3802145fa 100644 --- a/agent/consul/acl_server.go +++ b/agent/consul/acl_server.go @@ -164,37 +164,7 @@ func (s *Server) ResolveToken(token string) (acl.Authorizer, error) { return authz, err } -func (s *Server) ResolveTokenToIdentity(token string) (structs.ACLIdentity, error) { - // not using ResolveTokenToIdentityAndAuthorizer because in this case we don't - // need to resolve the roles, policies and namespace but just want the identity - // information such as accessor id. - return s.ACLResolver.ResolveTokenToIdentity(token) -} - // TODO: Client has an identical implementation, remove duplication -func (s *Server) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { - identity, authz, err := s.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) - if err != nil { - return nil, err - } - - if entMeta == nil { - entMeta = &structs.EnterpriseMeta{} - } - - // Default the EnterpriseMeta based on the Tokens meta or actual defaults - // in the case of unknown identity - if identity != nil { - entMeta.Merge(identity.EnterpriseMetadata()) - } else { - entMeta.Merge(structs.DefaultEnterpriseMetaInDefaultPartition()) - } - - // Use the meta to fill in the ACL authorization context - entMeta.FillAuthzContext(authzContext) - - return authz, err -} func (s *Server) filterACL(token string, subj interface{}) error { return filterACL(s.ACLResolver, token, subj) From 26f0ebd96f4830e2fac17861b4e5076f5b10e4d5 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Sat, 22 Jan 2022 14:33:09 -0500 Subject: [PATCH 308/404] acl: return a resposne from ResolveToken that includes the ACLIdentity So that we can duplicate duplicate methods. --- agent/acl_test.go | 6 +++--- agent/agent.go | 2 +- agent/agent_endpoint_test.go | 4 ++-- agent/consul/acl.go | 19 ++++++++++++++++--- agent/consul/acl_server.go | 3 +-- agent/consul/intention_endpoint.go | 1 + agent/structs/acl.go | 4 ++-- 7 files changed, 26 insertions(+), 13 deletions(-) diff --git a/agent/acl_test.go b/agent/acl_test.go index c085e49a3..7d8039511 100644 --- a/agent/acl_test.go +++ b/agent/acl_test.go @@ -102,10 +102,10 @@ func (a *TestACLAgent) ResolveTokenToIdentity(secretID string) (structs.ACLIdent return a.resolveIdentFn(secretID) } -func (a *TestACLAgent) ResolveTokenAndDefaultMeta(secretID string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { +func (a *TestACLAgent) ResolveTokenAndDefaultMeta(secretID string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (consul.ACLResolveResult, error) { identity, authz, err := a.ResolveTokenToIdentityAndAuthorizer(secretID) if err != nil { - return nil, err + return consul.ACLResolveResult{}, err } // Default the EnterpriseMeta based on the Tokens meta or actual defaults @@ -119,7 +119,7 @@ func (a *TestACLAgent) ResolveTokenAndDefaultMeta(secretID string, entMeta *stru // Use the meta to fill in the ACL authorization context entMeta.FillAuthzContext(authzContext) - return authz, err + return consul.ACLResolveResult{Authorizer: authz, ACLIdentity: identity}, err } // All of these are stubs to satisfy the interface diff --git a/agent/agent.go b/agent/agent.go index 41bab89e7..ba587d343 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -174,7 +174,7 @@ type delegate interface { // actions based on the permissions granted to the token. // If either entMeta or authzContext are non-nil they will be populated with the // default partition and namespace from the token. - ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) + ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (consul.ACLResolveResult, error) RPC(method string, args interface{}, reply interface{}) error SnapshotRPC(args *structs.SnapshotRequest, in io.Reader, out io.Writer, replyFn structs.SnapshotReplyFn) error diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 8e965db38..70840f950 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -1640,8 +1640,8 @@ type fakeResolveTokenDelegate struct { authorizer acl.Authorizer } -func (f fakeResolveTokenDelegate) ResolveTokenAndDefaultMeta(_ string, _ *structs.EnterpriseMeta, _ *acl.AuthorizerContext) (acl.Authorizer, error) { - return f.authorizer, nil +func (f fakeResolveTokenDelegate) ResolveTokenAndDefaultMeta(_ string, _ *structs.EnterpriseMeta, _ *acl.AuthorizerContext) (consul.ACLResolveResult, error) { + return consul.ACLResolveResult{Authorizer: f.authorizer}, nil } func TestAgent_Reload(t *testing.T) { diff --git a/agent/consul/acl.go b/agent/consul/acl.go index 797bd22e4..d033db1b9 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -1115,6 +1115,19 @@ func (r *ACLResolver) ResolveTokenToIdentityAndAuthorizer(token string) (structs return identity, acl.NewChainedAuthorizer(chain), nil } +type ACLResolveResult struct { + acl.Authorizer + // TODO: likely we can reduce this interface + structs.ACLIdentity +} + +func (a ACLResolveResult) AccessorID() string { + if a.ACLIdentity == nil { + return "" + } + return a.ACLIdentity.ID() +} + // TODO: rename to AccessorIDFromToken. This method is only used to retrieve the // ACLIdentity.ID, so we don't need to return a full ACLIdentity. We could // return a much smaller type (instad of just a string) to allow for changes @@ -1158,10 +1171,10 @@ func (r *ACLResolver) ACLsEnabled() bool { return true } -func (r *ACLResolver) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) { +func (r *ACLResolver) ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (ACLResolveResult, error) { identity, authz, err := r.ResolveTokenToIdentityAndAuthorizer(token) if err != nil { - return nil, err + return ACLResolveResult{}, err } if entMeta == nil { @@ -1179,7 +1192,7 @@ func (r *ACLResolver) ResolveTokenAndDefaultMeta(token string, entMeta *structs. // Use the meta to fill in the ACL authorization context entMeta.FillAuthzContext(authzContext) - return authz, err + return ACLResolveResult{Authorizer: authz, ACLIdentity: identity}, err } // aclFilter is used to filter results from our state store based on ACL rules diff --git a/agent/consul/acl_server.go b/agent/consul/acl_server.go index 3802145fa..21b4d9503 100644 --- a/agent/consul/acl_server.go +++ b/agent/consul/acl_server.go @@ -159,13 +159,12 @@ func (s *Server) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error return s.InPrimaryDatacenter() || index > 0, role, acl.ErrNotFound } +// TODO: remove func (s *Server) ResolveToken(token string) (acl.Authorizer, error) { _, authz, err := s.ACLResolver.ResolveTokenToIdentityAndAuthorizer(token) return authz, err } -// TODO: Client has an identical implementation, remove duplication - func (s *Server) filterACL(token string, subj interface{}) error { return filterACL(s.ACLResolver, token, subj) } diff --git a/agent/consul/intention_endpoint.go b/agent/consul/intention_endpoint.go index 814d1590a..57d3fc766 100644 --- a/agent/consul/intention_endpoint.go +++ b/agent/consul/intention_endpoint.go @@ -100,6 +100,7 @@ func (s *Intention) Apply(args *structs.IntentionRequest, reply *string) error { } // Get the ACL token for the request for the checks below. + // TODO: use ResolveTokenAndDefaultMeta identity, authz, err := s.srv.ACLResolver.ResolveTokenToIdentityAndAuthorizer(args.Token) if err != nil { return err diff --git a/agent/structs/acl.go b/agent/structs/acl.go index 756cadbb1..42fa55821 100644 --- a/agent/structs/acl.go +++ b/agent/structs/acl.go @@ -89,8 +89,8 @@ var ACLBootstrapNotAllowedErr = errors.New("ACL bootstrap no longer allowed") var ACLBootstrapInvalidResetIndexErr = errors.New("Invalid ACL bootstrap reset index") type ACLIdentity interface { - // ID returns a string that can be used for logging and telemetry. This should not - // contain any secret data used for authentication + // ID returns the accessor ID, a string that can be used for logging and + // telemetry. It is not the secret ID used for authentication. ID() string SecretToken() string PolicyIDs() []string From ed1cc5f255ad0aac33bc3d4ccb8c69017c337fdd Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Sat, 22 Jan 2022 14:47:59 -0500 Subject: [PATCH 309/404] acl: remove ResolveTokenToIdentity By exposing the AccessorID from the primary ResolveToken method we can remove this duplication. --- agent/acl.go | 7 ++----- agent/acl_test.go | 19 ------------------- agent/agent.go | 3 --- agent/consul/acl.go | 27 --------------------------- agent/consul/acl_test.go | 30 ------------------------------ agent/local/state.go | 10 ++++------ agent/local/state_test.go | 6 ++++-- 7 files changed, 10 insertions(+), 92 deletions(-) diff --git a/agent/acl.go b/agent/acl.go index fa2259cfd..7b92210ed 100644 --- a/agent/acl.go +++ b/agent/acl.go @@ -15,7 +15,7 @@ import ( // critical purposes, such as logging. Therefore we interpret all errors as empty-string // so we can safely log it without handling non-critical errors at the usage site. func (a *Agent) aclAccessorID(secretID string) string { - ident, err := a.delegate.ResolveTokenToIdentity(secretID) + ident, err := a.delegate.ResolveTokenAndDefaultMeta(secretID, nil, nil) if acl.IsErrNotFound(err) { return "" } @@ -23,10 +23,7 @@ func (a *Agent) aclAccessorID(secretID string) string { a.logger.Debug("non-critical error resolving acl token accessor for logging", "error", err) return "" } - if ident == nil { - return "" - } - return ident.ID() + return ident.AccessorID() } // vetServiceRegister makes sure the service registration action is allowed by diff --git a/agent/acl_test.go b/agent/acl_test.go index 7d8039511..b205220f6 100644 --- a/agent/acl_test.go +++ b/agent/acl_test.go @@ -523,22 +523,3 @@ func TestACL_filterChecksWithAuthorizer(t *testing.T) { _, ok = checks["my-other"] require.False(t, ok) } - -// TODO: remove? -func TestACL_ResolveIdentity(t *testing.T) { - t.Parallel() - a := NewTestACLAgent(t, t.Name(), TestACLConfig(), nil, catalogIdent) - - // this test is meant to ensure we are calling the correct function - // which is ResolveTokenToIdentity on the Agent delegate. Our - // nil authz resolver will cause it to emit an error if used - ident, err := a.delegate.ResolveTokenToIdentity(nodeROSecret) - require.NoError(t, err) - require.NotNil(t, ident) - - // just double checkingto ensure if we had used the wrong function - // that an error would be produced - _, err = a.delegate.ResolveTokenAndDefaultMeta(nodeROSecret, nil, nil) - require.Error(t, err) - -} diff --git a/agent/agent.go b/agent/agent.go index ba587d343..7e2a7f110 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -167,9 +167,6 @@ type delegate interface { // RemoveFailedNode is used to remove a failed node from the cluster. RemoveFailedNode(node string, prune bool, entMeta *structs.EnterpriseMeta) error - // TODO: replace this method with consul.ACLResolver - ResolveTokenToIdentity(token string) (structs.ACLIdentity, error) - // ResolveTokenAndDefaultMeta returns an acl.Authorizer which authorizes // actions based on the permissions granted to the token. // If either entMeta or authzContext are non-nil they will be populated with the diff --git a/agent/consul/acl.go b/agent/consul/acl.go index d033db1b9..da89e2dd3 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -1128,33 +1128,6 @@ func (a ACLResolveResult) AccessorID() string { return a.ACLIdentity.ID() } -// TODO: rename to AccessorIDFromToken. This method is only used to retrieve the -// ACLIdentity.ID, so we don't need to return a full ACLIdentity. We could -// return a much smaller type (instad of just a string) to allow for changes -// in the future. -func (r *ACLResolver) ResolveTokenToIdentity(token string) (structs.ACLIdentity, error) { - if !r.ACLsEnabled() { - return nil, nil - } - - if acl.RootAuthorizer(token) != nil { - return nil, acl.ErrRootDenied - } - - // handle the anonymous token - if token == "" { - token = anonymousToken - } - - if ident, _, ok := r.resolveLocallyManagedToken(token); ok { - return ident, nil - } - - defer metrics.MeasureSince([]string{"acl", "ResolveTokenToIdentity"}, time.Now()) - - return r.resolveIdentityFromToken(token) -} - func (r *ACLResolver) ACLsEnabled() bool { // Whether we desire ACLs to be enabled according to configuration if !r.config.ACLsEnabled { diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index 2d4f7dc5e..0e663120a 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -1534,36 +1534,6 @@ func TestACLResolver_Client(t *testing.T) { require.Equal(t, policyResolves, int32(3)) }) - t.Run("Resolve-Identity", func(t *testing.T) { - t.Parallel() - - delegate := &ACLResolverTestDelegate{ - enabled: true, - datacenter: "dc1", - legacy: false, - localTokens: false, - localPolicies: false, - } - - delegate.tokenReadFn = delegate.plainTokenReadFn - delegate.policyResolveFn = delegate.plainPolicyResolveFn - delegate.roleResolveFn = delegate.plainRoleResolveFn - - r := newTestACLResolver(t, delegate, nil) - - ident, err := r.ResolveTokenToIdentity("found-policy-and-role") - require.NoError(t, err) - require.NotNil(t, ident) - require.Equal(t, "5f57c1f6-6a89-4186-9445-531b316e01df", ident.ID()) - require.EqualValues(t, 0, delegate.localTokenResolutions) - require.EqualValues(t, 1, delegate.remoteTokenResolutions) - require.EqualValues(t, 0, delegate.localPolicyResolutions) - require.EqualValues(t, 0, delegate.remotePolicyResolutions) - require.EqualValues(t, 0, delegate.localRoleResolutions) - require.EqualValues(t, 0, delegate.remoteRoleResolutions) - require.EqualValues(t, 0, delegate.remoteLegacyResolutions) - }) - t.Run("Concurrent-Token-Resolve", func(t *testing.T) { t.Parallel() diff --git a/agent/local/state.go b/agent/local/state.go index 5c70b0c8d..1eb5733bb 100644 --- a/agent/local/state.go +++ b/agent/local/state.go @@ -14,6 +14,7 @@ import ( "github.com/hashicorp/go-hclog" "github.com/hashicorp/consul/acl" + "github.com/hashicorp/consul/agent/consul" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/api" @@ -150,7 +151,7 @@ func (c *CheckState) CriticalFor() time.Duration { type rpc interface { RPC(method string, args interface{}, reply interface{}) error - ResolveTokenToIdentity(secretID string) (structs.ACLIdentity, error) + ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (consul.ACLResolveResult, error) } // State is used to represent the node's services, @@ -1538,7 +1539,7 @@ func (l *State) notifyIfAliased(serviceID structs.ServiceID) { // critical purposes, such as logging. Therefore we interpret all errors as empty-string // so we can safely log it without handling non-critical errors at the usage site. func (l *State) aclAccessorID(secretID string) string { - ident, err := l.Delegate.ResolveTokenToIdentity(secretID) + ident, err := l.Delegate.ResolveTokenAndDefaultMeta(secretID, nil, nil) if acl.IsErrNotFound(err) { return "" } @@ -1546,8 +1547,5 @@ func (l *State) aclAccessorID(secretID string) string { l.logger.Debug("non-critical error resolving acl token accessor for logging", "error", err) return "" } - if ident == nil { - return "" - } - return ident.ID() + return ident.AccessorID() } diff --git a/agent/local/state_test.go b/agent/local/state_test.go index 036e156fc..1be9274e1 100644 --- a/agent/local/state_test.go +++ b/agent/local/state_test.go @@ -12,8 +12,10 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent" "github.com/hashicorp/consul/agent/config" + "github.com/hashicorp/consul/agent/consul" "github.com/hashicorp/consul/agent/local" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/token" @@ -2372,6 +2374,6 @@ func (f *fakeRPC) RPC(method string, args interface{}, reply interface{}) error return nil } -func (f *fakeRPC) ResolveTokenToIdentity(_ string) (structs.ACLIdentity, error) { - return nil, nil +func (f *fakeRPC) ResolveTokenAndDefaultMeta(string, *structs.EnterpriseMeta, *acl.AuthorizerContext) (consul.ACLResolveResult, error) { + return consul.ACLResolveResult{}, nil } From c1da07e2eaec733f4ef44a298b97fbb0d3f6ea3f Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Sat, 22 Jan 2022 15:05:42 -0500 Subject: [PATCH 310/404] acl: remove calls to ResolveIdentityFromToken We already have an ACLResolveResult, so we can get the accessor ID from it. --- agent/consul/intention_endpoint.go | 31 ++++++------------------------ agent/consul/internal_endpoint.go | 22 ++------------------- 2 files changed, 8 insertions(+), 45 deletions(-) diff --git a/agent/consul/intention_endpoint.go b/agent/consul/intention_endpoint.go index 57d3fc766..2031641ca 100644 --- a/agent/consul/intention_endpoint.go +++ b/agent/consul/intention_endpoint.go @@ -433,7 +433,8 @@ func (s *Intention) Get(args *structs.IntentionQueryRequest, reply *structs.Inde // Get the ACL token for the request for the checks below. var entMeta structs.EnterpriseMeta - if _, err := s.srv.ResolveTokenAndDefaultMeta(args.Token, &entMeta, nil); err != nil { + authz, err := s.srv.ResolveTokenAndDefaultMeta(args.Token, &entMeta, nil) + if err != nil { return err } @@ -480,13 +481,11 @@ func (s *Intention) Get(args *structs.IntentionQueryRequest, reply *structs.Inde reply.Intentions = structs.Intentions{ixn} // Filter - if err := s.srv.filterACL(args.Token, reply); err != nil { - return err - } + s.srv.filterACLWithAuthorizer(authz, reply) // If ACLs prevented any responses, error if len(reply.Intentions) == 0 { - accessorID := s.aclAccessorID(args.Token) + accessorID := authz.AccessorID() // todo(kit) Migrate intention access denial logging over to audit logging when we implement it s.logger.Warn("Request to get intention denied due to ACLs", "intention", args.IntentionID, "accessorID", accessorID) return acl.ErrPermissionDenied @@ -619,7 +618,7 @@ func (s *Intention) Match(args *structs.IntentionQueryRequest, reply *structs.In for _, entry := range args.Match.Entries { entry.FillAuthzContext(&authzContext) if prefix := entry.Name; prefix != "" && authz.IntentionRead(prefix, &authzContext) != acl.Allow { - accessorID := s.aclAccessorID(args.Token) + accessorID := authz.AccessorID() // todo(kit) Migrate intention access denial logging over to audit logging when we implement it s.logger.Warn("Operation on intention prefix denied due to ACLs", "prefix", prefix, "accessorID", accessorID) return acl.ErrPermissionDenied @@ -709,7 +708,7 @@ func (s *Intention) Check(args *structs.IntentionQueryRequest, reply *structs.In var authzContext acl.AuthorizerContext query.FillAuthzContext(&authzContext) if authz.ServiceRead(prefix, &authzContext) != acl.Allow { - accessorID := s.aclAccessorID(args.Token) + accessorID := authz.AccessorID() // todo(kit) Migrate intention access denial logging over to audit logging when we implement it s.logger.Warn("test on intention denied due to ACLs", "prefix", prefix, "accessorID", accessorID) return acl.ErrPermissionDenied @@ -761,24 +760,6 @@ func (s *Intention) Check(args *structs.IntentionQueryRequest, reply *structs.In return nil } -// aclAccessorID is used to convert an ACLToken's secretID to its accessorID for non- -// critical purposes, such as logging. Therefore we interpret all errors as empty-string -// so we can safely log it without handling non-critical errors at the usage site. -func (s *Intention) aclAccessorID(secretID string) string { - _, ident, err := s.srv.ResolveIdentityFromToken(secretID) - if acl.IsErrNotFound(err) { - return "" - } - if err != nil { - s.logger.Debug("non-critical error resolving acl token accessor for logging", "error", err) - return "" - } - if ident == nil { - return "" - } - return ident.ID() -} - func (s *Intention) validateEnterpriseIntention(ixn *structs.Intention) error { if err := s.srv.validateEnterpriseIntentionPartition(ixn.SourcePartition); err != nil { return fmt.Errorf("Invalid source partition %q: %v", ixn.SourcePartition, err) diff --git a/agent/consul/internal_endpoint.go b/agent/consul/internal_endpoint.go index dea21cfc6..5213349e7 100644 --- a/agent/consul/internal_endpoint.go +++ b/agent/consul/internal_endpoint.go @@ -401,13 +401,13 @@ func (m *Internal) EventFire(args *structs.EventFireRequest, } // Check ACLs - authz, err := m.srv.ResolveToken(args.Token) + authz, err := m.srv.ResolveTokenAndDefaultMeta(args.Token, nil, nil) if err != nil { return err } if authz.EventWrite(args.Name, nil) != acl.Allow { - accessorID := m.aclAccessorID(args.Token) + accessorID := authz.AccessorID() m.logger.Warn("user event blocked by ACLs", "event", args.Name, "accessorID", accessorID) return acl.ErrPermissionDenied } @@ -545,21 +545,3 @@ func (m *Internal) executeKeyringOpMgr( return serfResp, err } - -// aclAccessorID is used to convert an ACLToken's secretID to its accessorID for non- -// critical purposes, such as logging. Therefore we interpret all errors as empty-string -// so we can safely log it without handling non-critical errors at the usage site. -func (m *Internal) aclAccessorID(secretID string) string { - _, ident, err := m.srv.ResolveIdentityFromToken(secretID) - if acl.IsErrNotFound(err) { - return "" - } - if err != nil { - m.logger.Debug("non-critical error resolving acl token accessor for logging", "error", err) - return "" - } - if ident == nil { - return "" - } - return ident.ID() -} From fcddb890c5a2d52919c767257c1932342287ff50 Mon Sep 17 00:00:00 2001 From: Krastin Krastev Date: Mon, 24 Jan 2022 16:10:03 +0100 Subject: [PATCH 311/404] migrating to in /docs/connect/observability/ui-visualization --- .../observability/ui-visualization.mdx | 80 ++++++++----------- 1 file changed, 33 insertions(+), 47 deletions(-) diff --git a/website/content/docs/connect/observability/ui-visualization.mdx b/website/content/docs/connect/observability/ui-visualization.mdx index 9a9056ff0..63768ff6b 100644 --- a/website/content/docs/connect/observability/ui-visualization.mdx +++ b/website/content/docs/connect/observability/ui-visualization.mdx @@ -66,8 +66,7 @@ service named `prometheus-server` so each Consul agent can reach it on A full configuration to enable Prometheus is given below. - - + ```hcl ui_config { @@ -79,9 +78,6 @@ ui_config { } ``` - - - ```json { "ui_config": [ @@ -98,8 +94,7 @@ ui_config { } ``` - - + Similarly, to configure the UI on Kubernetes, use this [reference](/docs/k8s/connect/observability/metrics). @@ -120,27 +115,22 @@ to the relevant information. An example with Grafana is shown below. - - + + + ```hcl ui_config { enabled = true dashboard_url_templates { - service = "https://grafana.example.com/d/lDlaj-NGz/ - service-overview?orgId=1&var-service={{Service.Name}}& - var-namespace={{Service.Namespace}}& - var-partition={{Service.Partition}}&var-dc={{Datacenter}}" + service = "https://grafana.example.com/d/lDlaj-NGz/service-overview?orgId=1&var-service={{Service.Name}}&var-namespace={{Service.Namespace}}&var-partition={{Service.Partition}}&var-dc={{Datacenter}}" } } ``` --> **Note**: the URL is wrapped over multiple lines to make it easier to read -without horizontal scrolling in the example above however this needs to be a -normal single-line string value in an HCL configuration file. + - - + ```json { @@ -148,10 +138,7 @@ normal single-line string value in an HCL configuration file. { "dashboard_url_templates": [ { - "service": "https://grafana.example.com/d/lDlaj-NGz/ - service-overview?orgId=1\u0026var-service={{Service.Name}}\u0026 - var-namespace={{Service.Namespace}}\u0026 - var-partition={{Service.Partition}}\u0026var-dc={{Datacenter}}" + "service": "https://grafana.example.com/d/lDlaj-NGz/service-overview?orgId=1\u0026var-service={{Service.Name}}\u0026var-namespace={{Service.Namespace}}\u0026var-partition={{Service.Partition}}\u0026var-dc={{Datacenter}}" } ], "enabled": true @@ -160,17 +147,19 @@ normal single-line string value in an HCL configuration file. } ``` --> **Note**: the URL is wrapped over multiple lines to make it easier to read -without horizontal scrolling in the example above however this needs to be a -normal single-line string value in a JSON configuration file. + - - - -On Kubernetes, Consul Server configuration is set in your Helm config via the -[`server.extraConfig`](/docs/k8s/helm#v-server-extraconfig) key as JSON: + ```yaml +################################### Notes: #################################### +# On Kubernetes, Consul Server configuration is set in your Helm config via # +# the server.extraConfig key as JSON. # +# # +# The `{{` characters in the URL must be escaped using `{{ "{{" }}` so that # +# Helm doesn't try to template them. # +############################################################################### + # The UI is enabled by default so this stanza is not required. ui: enabled: true @@ -185,10 +174,9 @@ server: } ``` --> **Note**: The `{{` characters in the URL must be escaped using `{{ "{{" }}` so that Helm doesn't try to template them. + - - +
      ![Consul UI Service Dashboard Link](/img/ui-dashboard-url-template.png) @@ -221,6 +209,8 @@ un-authenticated workloads on the network**. With ACLs enabled, the proxy endpoint requires a valid token with read access to all nodes and services (across all namespaces in Enterprise): + + ```hcl # Consul OSS service_prefix "" { @@ -241,6 +231,8 @@ namespace_prefix "" { } ``` + + It's typical for most authenticated users to have this level of access in Consul as it's required for viewing the catalog or discovering services. If you use a [Single Sign-On integration](/docs/security/acl/auth-methods/oidc) (Consul @@ -285,8 +277,7 @@ visible to Consul operators in the configuration file while UI users can query the metrics they need without separately obtaining a token for that provider or having a token exposed to them that they might be able to use elsewhere. - - + ```hcl ui_config { @@ -304,9 +295,6 @@ ui_config { } ``` - - - ```json { "ui_config": [ @@ -329,8 +317,7 @@ ui_config { } ``` - - + ## Custom Metrics Providers @@ -347,6 +334,8 @@ feedback on [GitHub](https://github.com/hashicorp/consul) or The template for a complete provider JavaScript file is given below. + + ```JavaScript (function () { var provider = { @@ -553,6 +542,8 @@ The template for a complete provider JavaScript file is given below. }()); ``` + + Additionally, the built in [Prometheus provider code](https://github.com/hashicorp/consul/blob/main/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js) can be used as a reference. @@ -565,8 +556,7 @@ named `example-provider`, which is defined in have been specified in the call to `consul.registerMetricsProvider` as in the code listing in the last section. - - + ```hcl ui_config { @@ -581,9 +571,6 @@ ui_config { } ``` - - - ```json { "ui_config": { @@ -595,8 +582,7 @@ ui_config { } ``` - - + More than one JavaScript file may be specified in [`metrics_provider_files`](/docs/agent/options#ui_config_metrics_provider_files) From 2a653efba9cda6696f6e452dca1879acb6f05452 Mon Sep 17 00:00:00 2001 From: Dao Thanh Tung Date: Mon, 24 Jan 2022 23:23:08 +0800 Subject: [PATCH 312/404] Add api changes to agent endpoint for part 2 (#12150) --- api/acl.go | 34 +++++++++++++++++----------------- api/catalog.go | 11 ++++++----- api/config_entry.go | 7 ++++--- api/coordinate.go | 3 ++- api/discovery_chain.go | 3 ++- 5 files changed, 31 insertions(+), 27 deletions(-) diff --git a/api/acl.go b/api/acl.go index 0f44494dd..c3038e389 100644 --- a/api/acl.go +++ b/api/acl.go @@ -552,7 +552,7 @@ func (a *ACL) Update(acl *ACLEntry, q *WriteOptions) (*WriteMeta, error) { // // Deprecated: Use TokenDelete instead. func (a *ACL) Destroy(id string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("PUT", "/v1/acl/destroy/"+id) + r := a.c.newRequest("PUT", "/v1/acl/destroy/"+url.PathEscape(id)) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -571,7 +571,7 @@ func (a *ACL) Destroy(id string, q *WriteOptions) (*WriteMeta, error) { // // Deprecated: Use TokenClone instead. func (a *ACL) Clone(id string, q *WriteOptions) (string, *WriteMeta, error) { - r := a.c.newRequest("PUT", "/v1/acl/clone/"+id) + r := a.c.newRequest("PUT", "/v1/acl/clone/"+url.PathEscape(id)) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -594,7 +594,7 @@ func (a *ACL) Clone(id string, q *WriteOptions) (string, *WriteMeta, error) { // // Deprecated: Use TokenRead instead. func (a *ACL) Info(id string, q *QueryOptions) (*ACLEntry, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/info/"+id) + r := a.c.newRequest("GET", "/v1/acl/info/"+url.PathEscape(id)) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -696,7 +696,7 @@ func (a *ACL) TokenUpdate(token *ACLToken, q *WriteOptions) (*ACLToken, *WriteMe if token.AccessorID == "" { return nil, nil, fmt.Errorf("Must specify an AccessorID for Token Updating") } - r := a.c.newRequest("PUT", "/v1/acl/token/"+token.AccessorID) + r := a.c.newRequest("PUT", "/v1/acl/token/"+url.PathEscape(token.AccessorID)) r.setWriteOptions(q) r.obj = token rtt, resp, err := a.c.doRequest(r) @@ -725,7 +725,7 @@ func (a *ACL) TokenClone(tokenID string, description string, q *WriteOptions) (* return nil, nil, fmt.Errorf("Must specify a tokenID for Token Cloning") } - r := a.c.newRequest("PUT", "/v1/acl/token/"+tokenID+"/clone") + r := a.c.newRequest("PUT", "/v1/acl/token/"+url.PathEscape(tokenID)+"/clone") r.setWriteOptions(q) r.obj = struct{ Description string }{description} rtt, resp, err := a.c.doRequest(r) @@ -748,7 +748,7 @@ func (a *ACL) TokenClone(tokenID string, description string, q *WriteOptions) (* // TokenDelete removes a single ACL token. The tokenID parameter must be a valid // Accessor ID of an existing token. func (a *ACL) TokenDelete(tokenID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/token/"+tokenID) + r := a.c.newRequest("DELETE", "/v1/acl/token/"+url.PathEscape(tokenID)) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -766,7 +766,7 @@ func (a *ACL) TokenDelete(tokenID string, q *WriteOptions) (*WriteMeta, error) { // TokenRead retrieves the full token details. The tokenID parameter must be a valid // Accessor ID of an existing token. func (a *ACL) TokenRead(tokenID string, q *QueryOptions) (*ACLToken, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/token/"+tokenID) + r := a.c.newRequest("GET", "/v1/acl/token/"+url.PathEscape(tokenID)) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -871,7 +871,7 @@ func (a *ACL) PolicyUpdate(policy *ACLPolicy, q *WriteOptions) (*ACLPolicy, *Wri return nil, nil, fmt.Errorf("Must specify an ID in Policy Update") } - r := a.c.newRequest("PUT", "/v1/acl/policy/"+policy.ID) + r := a.c.newRequest("PUT", "/v1/acl/policy/"+url.PathEscape(policy.ID)) r.setWriteOptions(q) r.obj = policy rtt, resp, err := a.c.doRequest(r) @@ -893,7 +893,7 @@ func (a *ACL) PolicyUpdate(policy *ACLPolicy, q *WriteOptions) (*ACLPolicy, *Wri // PolicyDelete deletes a policy given its ID. func (a *ACL) PolicyDelete(policyID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/policy/"+policyID) + r := a.c.newRequest("DELETE", "/v1/acl/policy/"+url.PathEscape(policyID)) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -910,7 +910,7 @@ func (a *ACL) PolicyDelete(policyID string, q *WriteOptions) (*WriteMeta, error) // PolicyRead retrieves the policy details including the rule set. func (a *ACL) PolicyRead(policyID string, q *QueryOptions) (*ACLPolicy, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/policy/"+policyID) + r := a.c.newRequest("GET", "/v1/acl/policy/"+url.PathEscape(policyID)) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1021,7 +1021,7 @@ func (a *ACL) RulesTranslate(rules io.Reader) (string, error) { // Deprecated: Support for the legacy syntax translation will be removed // when legacy ACL support is removed. func (a *ACL) RulesTranslateToken(tokenID string) (string, error) { - r := a.c.newRequest("GET", "/v1/acl/rules/translate/"+tokenID) + r := a.c.newRequest("GET", "/v1/acl/rules/translate/"+url.PathEscape(tokenID)) rtt, resp, err := a.c.doRequest(r) if err != nil { return "", err @@ -1076,7 +1076,7 @@ func (a *ACL) RoleUpdate(role *ACLRole, q *WriteOptions) (*ACLRole, *WriteMeta, return nil, nil, fmt.Errorf("Must specify an ID in Role Update") } - r := a.c.newRequest("PUT", "/v1/acl/role/"+role.ID) + r := a.c.newRequest("PUT", "/v1/acl/role/"+url.PathEscape(role.ID)) r.setWriteOptions(q) r.obj = role rtt, resp, err := a.c.doRequest(r) @@ -1098,7 +1098,7 @@ func (a *ACL) RoleUpdate(role *ACLRole, q *WriteOptions) (*ACLRole, *WriteMeta, // RoleDelete deletes a role given its ID. func (a *ACL) RoleDelete(roleID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/role/"+roleID) + r := a.c.newRequest("DELETE", "/v1/acl/role/"+url.PathEscape(roleID)) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1115,7 +1115,7 @@ func (a *ACL) RoleDelete(roleID string, q *WriteOptions) (*WriteMeta, error) { // RoleRead retrieves the role details (by ID). Returns nil if not found. func (a *ACL) RoleRead(roleID string, q *QueryOptions) (*ACLRole, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/role/"+roleID) + r := a.c.newRequest("GET", "/v1/acl/role/"+url.PathEscape(roleID)) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1365,7 +1365,7 @@ func (a *ACL) BindingRuleUpdate(rule *ACLBindingRule, q *WriteOptions) (*ACLBind return nil, nil, fmt.Errorf("Must specify an ID in Binding Rule Update") } - r := a.c.newRequest("PUT", "/v1/acl/binding-rule/"+rule.ID) + r := a.c.newRequest("PUT", "/v1/acl/binding-rule/"+url.PathEscape(rule.ID)) r.setWriteOptions(q) r.obj = rule rtt, resp, err := a.c.doRequest(r) @@ -1387,7 +1387,7 @@ func (a *ACL) BindingRuleUpdate(rule *ACLBindingRule, q *WriteOptions) (*ACLBind // BindingRuleDelete deletes a binding rule given its ID. func (a *ACL) BindingRuleDelete(bindingRuleID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/binding-rule/"+bindingRuleID) + r := a.c.newRequest("DELETE", "/v1/acl/binding-rule/"+url.PathEscape(bindingRuleID)) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1404,7 +1404,7 @@ func (a *ACL) BindingRuleDelete(bindingRuleID string, q *WriteOptions) (*WriteMe // BindingRuleRead retrieves the binding rule details. Returns nil if not found. func (a *ACL) BindingRuleRead(bindingRuleID string, q *QueryOptions) (*ACLBindingRule, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/binding-rule/"+bindingRuleID) + r := a.c.newRequest("GET", "/v1/acl/binding-rule/"+url.PathEscape(bindingRuleID)) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { diff --git a/api/catalog.go b/api/catalog.go index 80ae325ea..54fcce85f 100644 --- a/api/catalog.go +++ b/api/catalog.go @@ -2,6 +2,7 @@ package api import ( "net" + "net/url" "strconv" ) @@ -254,9 +255,9 @@ func (c *Catalog) ConnectMultipleTags(service string, tags []string, q *QueryOpt } func (c *Catalog) service(service string, tags []string, q *QueryOptions, connect bool) ([]*CatalogService, *QueryMeta, error) { - path := "/v1/catalog/service/" + service + path := "/v1/catalog/service/" + url.PathEscape(service) if connect { - path = "/v1/catalog/connect/" + service + path = "/v1/catalog/connect/" + url.PathEscape(service) } r := c.c.newRequest("GET", path) r.setQueryOptions(q) @@ -287,7 +288,7 @@ func (c *Catalog) service(service string, tags []string, q *QueryOptions, connec // Node is used to query for service information about a single node func (c *Catalog) Node(node string, q *QueryOptions) (*CatalogNode, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/catalog/node/"+node) + r := c.c.newRequest("GET", "/v1/catalog/node/"+url.PathEscape(node)) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { @@ -314,7 +315,7 @@ func (c *Catalog) Node(node string, q *QueryOptions) (*CatalogNode, *QueryMeta, // a map of service ids to services. This different structure allows for using the wildcard specifier // '*' for the Namespace in the QueryOptions. func (c *Catalog) NodeServiceList(node string, q *QueryOptions) (*CatalogNodeServiceList, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/catalog/node-services/"+node) + r := c.c.newRequest("GET", "/v1/catalog/node-services/"+url.PathEscape(node)) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { @@ -338,7 +339,7 @@ func (c *Catalog) NodeServiceList(node string, q *QueryOptions) (*CatalogNodeSer // GatewayServices is used to query the services associated with an ingress gateway or terminating gateway. func (c *Catalog) GatewayServices(gateway string, q *QueryOptions) ([]*GatewayService, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/catalog/gateway-services/"+gateway) + r := c.c.newRequest("GET", "/v1/catalog/gateway-services/"+url.PathEscape(gateway)) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { diff --git a/api/config_entry.go b/api/config_entry.go index 91c407bb5..f1c4091d1 100644 --- a/api/config_entry.go +++ b/api/config_entry.go @@ -5,6 +5,7 @@ import ( "encoding/json" "fmt" "io" + "net/url" "strconv" "strings" "time" @@ -378,7 +379,7 @@ func (conf *ConfigEntries) Get(kind string, name string, q *QueryOptions) (Confi return nil, nil, err } - r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s/%s", kind, name)) + r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s/%s", url.PathEscape(kind), url.PathEscape(name))) r.setQueryOptions(q) rtt, resp, err := conf.c.doRequest(r) if err != nil { @@ -405,7 +406,7 @@ func (conf *ConfigEntries) List(kind string, q *QueryOptions) ([]ConfigEntry, *Q return nil, nil, fmt.Errorf("The kind parameter must not be empty") } - r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s", kind)) + r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s", url.PathEscape(kind))) r.setQueryOptions(q) rtt, resp, err := conf.c.doRequest(r) if err != nil { @@ -485,7 +486,7 @@ func (conf *ConfigEntries) delete(kind, name string, params map[string]string, w return false, nil, fmt.Errorf("Both kind and name parameters must not be empty") } - r := conf.c.newRequest("DELETE", fmt.Sprintf("/v1/config/%s/%s", kind, name)) + r := conf.c.newRequest("DELETE", fmt.Sprintf("/v1/config/%s/%s", url.PathEscape(kind), url.PathEscape(name))) r.setWriteOptions(w) for param, value := range params { r.params.Set(param, value) diff --git a/api/coordinate.go b/api/coordinate.go index 7ef6ce274..bd607e32f 100644 --- a/api/coordinate.go +++ b/api/coordinate.go @@ -2,6 +2,7 @@ package api import ( "github.com/hashicorp/serf/coordinate" + "net/url" ) // CoordinateEntry represents a node and its associated network coordinate. @@ -96,7 +97,7 @@ func (c *Coordinate) Update(coord *CoordinateEntry, q *WriteOptions) (*WriteMeta // Node is used to return the coordinates of a single node in the LAN pool. func (c *Coordinate) Node(node string, q *QueryOptions) ([]*CoordinateEntry, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/coordinate/node/"+node) + r := c.c.newRequest("GET", "/v1/coordinate/node/"+url.PathEscape(node)) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { diff --git a/api/discovery_chain.go b/api/discovery_chain.go index 29bda8591..10150f5de 100644 --- a/api/discovery_chain.go +++ b/api/discovery_chain.go @@ -3,6 +3,7 @@ package api import ( "encoding/json" "fmt" + "net/url" "time" ) @@ -26,7 +27,7 @@ func (d *DiscoveryChain) Get(name string, opts *DiscoveryChainOptions, q *QueryO method = "POST" } - r := d.c.newRequest(method, fmt.Sprintf("/v1/discovery-chain/%s", name)) + r := d.c.newRequest(method, fmt.Sprintf("/v1/discovery-chain/%s", url.PathEscape(name))) r.setQueryOptions(q) if opts != nil { From 1e550a4c3f80d371a4676444eccefbfd1e0de428 Mon Sep 17 00:00:00 2001 From: Krastin Krastev Date: Mon, 24 Jan 2022 16:35:18 +0100 Subject: [PATCH 313/404] fixing K8s notes placement in /docs/connect/observability/ui-visualization --- .../docs/connect/observability/ui-visualization.mdx | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/website/content/docs/connect/observability/ui-visualization.mdx b/website/content/docs/connect/observability/ui-visualization.mdx index 63768ff6b..4c222e010 100644 --- a/website/content/docs/connect/observability/ui-visualization.mdx +++ b/website/content/docs/connect/observability/ui-visualization.mdx @@ -152,14 +152,6 @@ ui_config { ```yaml -################################### Notes: #################################### -# On Kubernetes, Consul Server configuration is set in your Helm config via # -# the server.extraConfig key as JSON. # -# # -# The `{{` characters in the URL must be escaped using `{{ "{{" }}` so that # -# Helm doesn't try to template them. # -############################################################################### - # The UI is enabled by default so this stanza is not required. ui: enabled: true @@ -178,6 +170,11 @@ server: +~> **Note**: On Kubernetes, Consul Server configuration is set in your Helm +config via the [`server.extraConfig`](/docs/k8s/helm#v-server-extraconfig) key as JSON. +The `{{` characters in the URL must be escaped using `{{ "{{" }}` so that Helm +doesn't try to template them. + ![Consul UI Service Dashboard Link](/img/ui-dashboard-url-template.png) ### Metrics Proxy From 97427f80b7256803660303708b1c3c5812077b99 Mon Sep 17 00:00:00 2001 From: Michele Degges Date: Mon, 24 Jan 2022 07:43:20 -0800 Subject: [PATCH 314/404] Add missing consul.env file for linux packaging (#12159) --- .release/linux/package/etc/consul.d/consul.env | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .release/linux/package/etc/consul.d/consul.env diff --git a/.release/linux/package/etc/consul.d/consul.env b/.release/linux/package/etc/consul.d/consul.env new file mode 100644 index 000000000..e69de29bb From 6a27360203b27cc7136b1110ab428ac313bf98e3 Mon Sep 17 00:00:00 2001 From: David Yu Date: Mon, 24 Jan 2022 09:04:02 -0800 Subject: [PATCH 315/404] docs: Admin Partitions K8s requirement update (#12173) * docs: Admin Partitions K8s requirement update * Update admin-partitions.mdx * Update website/content/docs/enterprise/admin-partitions.mdx Co-authored-by: mrspanishviking * extra space Co-authored-by: mrspanishviking --- website/content/docs/enterprise/admin-partitions.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/content/docs/enterprise/admin-partitions.mdx b/website/content/docs/enterprise/admin-partitions.mdx index f55742e40..d8f53bbb6 100644 --- a/website/content/docs/enterprise/admin-partitions.mdx +++ b/website/content/docs/enterprise/admin-partitions.mdx @@ -82,7 +82,8 @@ Your Consul configuration must meet the following requirements to use admin part One of the primary use cases for admin partitions is for enabling a service mesh across multiple Kubernetes clusters. The following requirements must be met to create admin partitions on Kubernetes: -* Two or more Kubernetes clusters. Consul servers must be deployed to a single cluster. The other clusters should run Consul clients. +* If you are deploying Consul servers on Kubernetes, then ensure that the Consul servers are deployed within the same Kubernetes cluster. Consul servers may be deployed external to Kubernetes and configured using the `externalServers` stanza. +* Consul clients deployed on the same Kubernetes cluster as the Consul Servers must use the `default` partition. If the clients are required to run on a non-default partition, then the clients must be deployed in a separate Kubernetes cluster. * A Consul Enterprise license must be installed on each Kubernetes cluster. * The helm chart for consul-k8s v0.39.0 or greater. * Consul 1.11.1-ent or greater. From bc776aa258ad99a6e69dc4bc5b28663254908b40 Mon Sep 17 00:00:00 2001 From: Michele Degges Date: Mon, 24 Jan 2022 12:13:14 -0800 Subject: [PATCH 316/404] Don't kill service if envfile isn't present --- .release/linux/package/usr/lib/systemd/system/consul.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.release/linux/package/usr/lib/systemd/system/consul.service b/.release/linux/package/usr/lib/systemd/system/consul.service index bde1210aa..1bbf51a7a 100644 --- a/.release/linux/package/usr/lib/systemd/system/consul.service +++ b/.release/linux/package/usr/lib/systemd/system/consul.service @@ -6,7 +6,7 @@ After=network-online.target ConditionFileNotEmpty=/etc/consul.d/consul.hcl [Service] -EnvironmentFile=/etc/consul.d/consul.env +EnvironmentFile=-/etc/consul.d/consul.env User=consul Group=consul ExecStart=/usr/bin/consul agent -config-dir=/etc/consul.d/ From 300ce7b8e7cf5fea9209a47a59884ae2ab6c8285 Mon Sep 17 00:00:00 2001 From: Michele Degges Date: Mon, 24 Jan 2022 12:32:22 -0800 Subject: [PATCH 317/404] Adding changelog entry --- .changelog/12176.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/12176.txt diff --git a/.changelog/12176.txt b/.changelog/12176.txt new file mode 100644 index 000000000..81e7f669d --- /dev/null +++ b/.changelog/12176.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +systemd: Support starting/stopping the systemd service for linux packages when the optional EnvironmentFile does not exist. +``` \ No newline at end of file From 11ef7d99bd27da2e13a176f112d49844a7dd5ab7 Mon Sep 17 00:00:00 2001 From: Morgan Drake <12264057+modrake@users.noreply.github.com> Date: Mon, 24 Jan 2022 14:34:57 -0800 Subject: [PATCH 318/404] add netcgo tag for darwin builds --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e4261c1d1..277a11610 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -218,7 +218,7 @@ jobs: GOLDFLAGS: "${{ needs.get-product-version.outputs.shared-ldflags }}" run: | mkdir dist out - go build -ldflags="$GOLDFLAGS" -o dist/ . + go build -ldflags="$GOLDFLAGS" -tags netcgo -o dist/ . zip -r -j out/${{ env.PKG_NAME }}_${{ needs.get-product-version.outputs.product-version }}_${{ matrix.goos }}_${{ matrix.goarch }}.zip dist/ - uses: actions/upload-artifact@v2 From ece75a03e308dfbf6f14c77c04098e2043d9fa6d Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Tue, 25 Jan 2022 12:15:06 -0500 Subject: [PATCH 319/404] Remove incorrect usage of url.PathEscape (#12184) When r.toHTTP is called, http.Request is built with the path already escaped. This removes all calls to url.PathEscape that would have led to double-escaped URLs. --- api/acl.go | 34 +++++++++++++++++----------------- api/agent.go | 29 ++++++++++++++--------------- api/catalog.go | 11 +++++------ api/config_entry.go | 7 +++---- api/coordinate.go | 3 +-- api/discovery_chain.go | 3 +-- 6 files changed, 41 insertions(+), 46 deletions(-) diff --git a/api/acl.go b/api/acl.go index c3038e389..0f44494dd 100644 --- a/api/acl.go +++ b/api/acl.go @@ -552,7 +552,7 @@ func (a *ACL) Update(acl *ACLEntry, q *WriteOptions) (*WriteMeta, error) { // // Deprecated: Use TokenDelete instead. func (a *ACL) Destroy(id string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("PUT", "/v1/acl/destroy/"+url.PathEscape(id)) + r := a.c.newRequest("PUT", "/v1/acl/destroy/"+id) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -571,7 +571,7 @@ func (a *ACL) Destroy(id string, q *WriteOptions) (*WriteMeta, error) { // // Deprecated: Use TokenClone instead. func (a *ACL) Clone(id string, q *WriteOptions) (string, *WriteMeta, error) { - r := a.c.newRequest("PUT", "/v1/acl/clone/"+url.PathEscape(id)) + r := a.c.newRequest("PUT", "/v1/acl/clone/"+id) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -594,7 +594,7 @@ func (a *ACL) Clone(id string, q *WriteOptions) (string, *WriteMeta, error) { // // Deprecated: Use TokenRead instead. func (a *ACL) Info(id string, q *QueryOptions) (*ACLEntry, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/info/"+url.PathEscape(id)) + r := a.c.newRequest("GET", "/v1/acl/info/"+id) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -696,7 +696,7 @@ func (a *ACL) TokenUpdate(token *ACLToken, q *WriteOptions) (*ACLToken, *WriteMe if token.AccessorID == "" { return nil, nil, fmt.Errorf("Must specify an AccessorID for Token Updating") } - r := a.c.newRequest("PUT", "/v1/acl/token/"+url.PathEscape(token.AccessorID)) + r := a.c.newRequest("PUT", "/v1/acl/token/"+token.AccessorID) r.setWriteOptions(q) r.obj = token rtt, resp, err := a.c.doRequest(r) @@ -725,7 +725,7 @@ func (a *ACL) TokenClone(tokenID string, description string, q *WriteOptions) (* return nil, nil, fmt.Errorf("Must specify a tokenID for Token Cloning") } - r := a.c.newRequest("PUT", "/v1/acl/token/"+url.PathEscape(tokenID)+"/clone") + r := a.c.newRequest("PUT", "/v1/acl/token/"+tokenID+"/clone") r.setWriteOptions(q) r.obj = struct{ Description string }{description} rtt, resp, err := a.c.doRequest(r) @@ -748,7 +748,7 @@ func (a *ACL) TokenClone(tokenID string, description string, q *WriteOptions) (* // TokenDelete removes a single ACL token. The tokenID parameter must be a valid // Accessor ID of an existing token. func (a *ACL) TokenDelete(tokenID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/token/"+url.PathEscape(tokenID)) + r := a.c.newRequest("DELETE", "/v1/acl/token/"+tokenID) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -766,7 +766,7 @@ func (a *ACL) TokenDelete(tokenID string, q *WriteOptions) (*WriteMeta, error) { // TokenRead retrieves the full token details. The tokenID parameter must be a valid // Accessor ID of an existing token. func (a *ACL) TokenRead(tokenID string, q *QueryOptions) (*ACLToken, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/token/"+url.PathEscape(tokenID)) + r := a.c.newRequest("GET", "/v1/acl/token/"+tokenID) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -871,7 +871,7 @@ func (a *ACL) PolicyUpdate(policy *ACLPolicy, q *WriteOptions) (*ACLPolicy, *Wri return nil, nil, fmt.Errorf("Must specify an ID in Policy Update") } - r := a.c.newRequest("PUT", "/v1/acl/policy/"+url.PathEscape(policy.ID)) + r := a.c.newRequest("PUT", "/v1/acl/policy/"+policy.ID) r.setWriteOptions(q) r.obj = policy rtt, resp, err := a.c.doRequest(r) @@ -893,7 +893,7 @@ func (a *ACL) PolicyUpdate(policy *ACLPolicy, q *WriteOptions) (*ACLPolicy, *Wri // PolicyDelete deletes a policy given its ID. func (a *ACL) PolicyDelete(policyID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/policy/"+url.PathEscape(policyID)) + r := a.c.newRequest("DELETE", "/v1/acl/policy/"+policyID) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -910,7 +910,7 @@ func (a *ACL) PolicyDelete(policyID string, q *WriteOptions) (*WriteMeta, error) // PolicyRead retrieves the policy details including the rule set. func (a *ACL) PolicyRead(policyID string, q *QueryOptions) (*ACLPolicy, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/policy/"+url.PathEscape(policyID)) + r := a.c.newRequest("GET", "/v1/acl/policy/"+policyID) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1021,7 +1021,7 @@ func (a *ACL) RulesTranslate(rules io.Reader) (string, error) { // Deprecated: Support for the legacy syntax translation will be removed // when legacy ACL support is removed. func (a *ACL) RulesTranslateToken(tokenID string) (string, error) { - r := a.c.newRequest("GET", "/v1/acl/rules/translate/"+url.PathEscape(tokenID)) + r := a.c.newRequest("GET", "/v1/acl/rules/translate/"+tokenID) rtt, resp, err := a.c.doRequest(r) if err != nil { return "", err @@ -1076,7 +1076,7 @@ func (a *ACL) RoleUpdate(role *ACLRole, q *WriteOptions) (*ACLRole, *WriteMeta, return nil, nil, fmt.Errorf("Must specify an ID in Role Update") } - r := a.c.newRequest("PUT", "/v1/acl/role/"+url.PathEscape(role.ID)) + r := a.c.newRequest("PUT", "/v1/acl/role/"+role.ID) r.setWriteOptions(q) r.obj = role rtt, resp, err := a.c.doRequest(r) @@ -1098,7 +1098,7 @@ func (a *ACL) RoleUpdate(role *ACLRole, q *WriteOptions) (*ACLRole, *WriteMeta, // RoleDelete deletes a role given its ID. func (a *ACL) RoleDelete(roleID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/role/"+url.PathEscape(roleID)) + r := a.c.newRequest("DELETE", "/v1/acl/role/"+roleID) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1115,7 +1115,7 @@ func (a *ACL) RoleDelete(roleID string, q *WriteOptions) (*WriteMeta, error) { // RoleRead retrieves the role details (by ID). Returns nil if not found. func (a *ACL) RoleRead(roleID string, q *QueryOptions) (*ACLRole, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/role/"+url.PathEscape(roleID)) + r := a.c.newRequest("GET", "/v1/acl/role/"+roleID) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1365,7 +1365,7 @@ func (a *ACL) BindingRuleUpdate(rule *ACLBindingRule, q *WriteOptions) (*ACLBind return nil, nil, fmt.Errorf("Must specify an ID in Binding Rule Update") } - r := a.c.newRequest("PUT", "/v1/acl/binding-rule/"+url.PathEscape(rule.ID)) + r := a.c.newRequest("PUT", "/v1/acl/binding-rule/"+rule.ID) r.setWriteOptions(q) r.obj = rule rtt, resp, err := a.c.doRequest(r) @@ -1387,7 +1387,7 @@ func (a *ACL) BindingRuleUpdate(rule *ACLBindingRule, q *WriteOptions) (*ACLBind // BindingRuleDelete deletes a binding rule given its ID. func (a *ACL) BindingRuleDelete(bindingRuleID string, q *WriteOptions) (*WriteMeta, error) { - r := a.c.newRequest("DELETE", "/v1/acl/binding-rule/"+url.PathEscape(bindingRuleID)) + r := a.c.newRequest("DELETE", "/v1/acl/binding-rule/"+bindingRuleID) r.setWriteOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1404,7 +1404,7 @@ func (a *ACL) BindingRuleDelete(bindingRuleID string, q *WriteOptions) (*WriteMe // BindingRuleRead retrieves the binding rule details. Returns nil if not found. func (a *ACL) BindingRuleRead(bindingRuleID string, q *QueryOptions) (*ACLBindingRule, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/acl/binding-rule/"+url.PathEscape(bindingRuleID)) + r := a.c.newRequest("GET", "/v1/acl/binding-rule/"+bindingRuleID) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { diff --git a/api/agent.go b/api/agent.go index 04dd059d9..7bbe39ea7 100644 --- a/api/agent.go +++ b/api/agent.go @@ -7,7 +7,6 @@ import ( "fmt" "io" "net/http" - "net/url" ) // ServiceKind is the kind of service being registered. @@ -628,7 +627,7 @@ func (a *Agent) AgentHealthServiceByID(serviceID string) (string, *AgentServiceC } func (a *Agent) AgentHealthServiceByIDOpts(serviceID string, q *QueryOptions) (string, *AgentServiceChecksInfo, error) { - path := fmt.Sprintf("/v1/agent/health/service/id/%v", url.PathEscape(serviceID)) + path := fmt.Sprintf("/v1/agent/health/service/id/%v", serviceID) r := a.c.newRequest("GET", path) r.setQueryOptions(q) r.params.Add("format", "json") @@ -669,7 +668,7 @@ func (a *Agent) AgentHealthServiceByName(service string) (string, []AgentService } func (a *Agent) AgentHealthServiceByNameOpts(service string, q *QueryOptions) (string, []AgentServiceChecksInfo, error) { - path := fmt.Sprintf("/v1/agent/health/service/name/%v", url.PathEscape(service)) + path := fmt.Sprintf("/v1/agent/health/service/name/%v", service) r := a.c.newRequest("GET", path) r.setQueryOptions(q) r.params.Add("format", "json") @@ -707,7 +706,7 @@ func (a *Agent) AgentHealthServiceByNameOpts(service string, q *QueryOptions) (s // agent-local state. That means there is no persistent raft index so we block // based on object hash instead. func (a *Agent) Service(serviceID string, q *QueryOptions) (*AgentService, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/agent/service/"+url.PathEscape(serviceID)) + r := a.c.newRequest("GET", "/v1/agent/service/"+serviceID) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -812,7 +811,7 @@ func (a *Agent) serviceRegister(service *AgentServiceRegistration, opts ServiceR // ServiceDeregister is used to deregister a service with // the local agent func (a *Agent) ServiceDeregister(serviceID string) error { - r := a.c.newRequest("PUT", "/v1/agent/service/deregister/"+url.PathEscape(serviceID)) + r := a.c.newRequest("PUT", "/v1/agent/service/deregister/"+serviceID) _, resp, err := a.c.doRequest(r) if err != nil { return err @@ -827,7 +826,7 @@ func (a *Agent) ServiceDeregister(serviceID string) error { // ServiceDeregisterOpts is used to deregister a service with // the local agent with QueryOptions. func (a *Agent) ServiceDeregisterOpts(serviceID string, q *QueryOptions) error { - r := a.c.newRequest("PUT", "/v1/agent/service/deregister/"+url.PathEscape(serviceID)) + r := a.c.newRequest("PUT", "/v1/agent/service/deregister/"+serviceID) r.setQueryOptions(q) _, resp, err := a.c.doRequest(r) if err != nil { @@ -884,7 +883,7 @@ func (a *Agent) updateTTL(checkID, note, status string) error { default: return fmt.Errorf("Invalid status: %s", status) } - endpoint := fmt.Sprintf("/v1/agent/check/%s/%s", url.PathEscape(status), url.PathEscape(checkID)) + endpoint := fmt.Sprintf("/v1/agent/check/%s/%s", status, checkID) r := a.c.newRequest("PUT", endpoint) r.params.Set("note", note) _, resp, err := a.c.doRequest(r) @@ -932,7 +931,7 @@ func (a *Agent) UpdateTTLOpts(checkID, output, status string, q *QueryOptions) e return fmt.Errorf("Invalid status: %s", status) } - endpoint := fmt.Sprintf("/v1/agent/check/update/%s", url.PathEscape(checkID)) + endpoint := fmt.Sprintf("/v1/agent/check/update/%s", checkID) r := a.c.newRequest("PUT", endpoint) r.setQueryOptions(q) r.obj = &checkUpdate{ @@ -976,7 +975,7 @@ func (a *Agent) CheckDeregister(checkID string) error { // CheckDeregisterOpts is used to deregister a check with // the local agent using query options func (a *Agent) CheckDeregisterOpts(checkID string, q *QueryOptions) error { - r := a.c.newRequest("PUT", "/v1/agent/check/deregister/"+url.PathEscape(checkID)) + r := a.c.newRequest("PUT", "/v1/agent/check/deregister/"+checkID) r.setQueryOptions(q) _, resp, err := a.c.doRequest(r) if err != nil { @@ -992,7 +991,7 @@ func (a *Agent) CheckDeregisterOpts(checkID string, q *QueryOptions) error { // Join is used to instruct the agent to attempt a join to // another cluster member func (a *Agent) Join(addr string, wan bool) error { - r := a.c.newRequest("PUT", "/v1/agent/join/"+url.PathEscape(addr)) + r := a.c.newRequest("PUT", "/v1/agent/join/"+addr) if wan { r.params.Set("wan", "1") } @@ -1044,7 +1043,7 @@ func (a *Agent) ForceLeavePrune(node string) error { // ForceLeaveOpts is used to have the agent eject a failed node or remove it // completely from the list of members. func (a *Agent) ForceLeaveOpts(node string, opts ForceLeaveOpts) error { - r := a.c.newRequest("PUT", "/v1/agent/force-leave/"+url.PathEscape(node)) + r := a.c.newRequest("PUT", "/v1/agent/force-leave/"+node) if opts.Prune { r.params.Set("prune", "1") } @@ -1108,7 +1107,7 @@ func (a *Agent) ConnectCARoots(q *QueryOptions) (*CARootList, *QueryMeta, error) // ConnectCALeaf gets the leaf certificate for the given service ID. func (a *Agent) ConnectCALeaf(serviceID string, q *QueryOptions) (*LeafCert, *QueryMeta, error) { - r := a.c.newRequest("GET", "/v1/agent/connect/ca/leaf/"+url.PathEscape(serviceID)) + r := a.c.newRequest("GET", "/v1/agent/connect/ca/leaf/"+serviceID) r.setQueryOptions(q) rtt, resp, err := a.c.doRequest(r) if err != nil { @@ -1136,7 +1135,7 @@ func (a *Agent) EnableServiceMaintenance(serviceID, reason string) error { } func (a *Agent) EnableServiceMaintenanceOpts(serviceID, reason string, q *QueryOptions) error { - r := a.c.newRequest("PUT", "/v1/agent/service/maintenance/"+url.PathEscape(serviceID)) + r := a.c.newRequest("PUT", "/v1/agent/service/maintenance/"+serviceID) r.setQueryOptions(q) r.params.Set("enable", "true") r.params.Set("reason", reason) @@ -1158,7 +1157,7 @@ func (a *Agent) DisableServiceMaintenance(serviceID string) error { } func (a *Agent) DisableServiceMaintenanceOpts(serviceID string, q *QueryOptions) error { - r := a.c.newRequest("PUT", "/v1/agent/service/maintenance/"+url.PathEscape(serviceID)) + r := a.c.newRequest("PUT", "/v1/agent/service/maintenance/"+serviceID) r.setQueryOptions(q) r.params.Set("enable", "false") _, resp, err := a.c.doRequest(r) @@ -1355,7 +1354,7 @@ func (a *Agent) updateTokenFallback(token string, q *WriteOptions, targets ...st } func (a *Agent) updateTokenOnce(target, token string, q *WriteOptions) (*WriteMeta, int, error) { - r := a.c.newRequest("PUT", fmt.Sprintf("/v1/agent/token/%s", url.PathEscape(target))) + r := a.c.newRequest("PUT", fmt.Sprintf("/v1/agent/token/%s", target)) r.setWriteOptions(q) r.obj = &AgentToken{Token: token} diff --git a/api/catalog.go b/api/catalog.go index 54fcce85f..80ae325ea 100644 --- a/api/catalog.go +++ b/api/catalog.go @@ -2,7 +2,6 @@ package api import ( "net" - "net/url" "strconv" ) @@ -255,9 +254,9 @@ func (c *Catalog) ConnectMultipleTags(service string, tags []string, q *QueryOpt } func (c *Catalog) service(service string, tags []string, q *QueryOptions, connect bool) ([]*CatalogService, *QueryMeta, error) { - path := "/v1/catalog/service/" + url.PathEscape(service) + path := "/v1/catalog/service/" + service if connect { - path = "/v1/catalog/connect/" + url.PathEscape(service) + path = "/v1/catalog/connect/" + service } r := c.c.newRequest("GET", path) r.setQueryOptions(q) @@ -288,7 +287,7 @@ func (c *Catalog) service(service string, tags []string, q *QueryOptions, connec // Node is used to query for service information about a single node func (c *Catalog) Node(node string, q *QueryOptions) (*CatalogNode, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/catalog/node/"+url.PathEscape(node)) + r := c.c.newRequest("GET", "/v1/catalog/node/"+node) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { @@ -315,7 +314,7 @@ func (c *Catalog) Node(node string, q *QueryOptions) (*CatalogNode, *QueryMeta, // a map of service ids to services. This different structure allows for using the wildcard specifier // '*' for the Namespace in the QueryOptions. func (c *Catalog) NodeServiceList(node string, q *QueryOptions) (*CatalogNodeServiceList, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/catalog/node-services/"+url.PathEscape(node)) + r := c.c.newRequest("GET", "/v1/catalog/node-services/"+node) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { @@ -339,7 +338,7 @@ func (c *Catalog) NodeServiceList(node string, q *QueryOptions) (*CatalogNodeSer // GatewayServices is used to query the services associated with an ingress gateway or terminating gateway. func (c *Catalog) GatewayServices(gateway string, q *QueryOptions) ([]*GatewayService, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/catalog/gateway-services/"+url.PathEscape(gateway)) + r := c.c.newRequest("GET", "/v1/catalog/gateway-services/"+gateway) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { diff --git a/api/config_entry.go b/api/config_entry.go index f1c4091d1..91c407bb5 100644 --- a/api/config_entry.go +++ b/api/config_entry.go @@ -5,7 +5,6 @@ import ( "encoding/json" "fmt" "io" - "net/url" "strconv" "strings" "time" @@ -379,7 +378,7 @@ func (conf *ConfigEntries) Get(kind string, name string, q *QueryOptions) (Confi return nil, nil, err } - r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s/%s", url.PathEscape(kind), url.PathEscape(name))) + r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s/%s", kind, name)) r.setQueryOptions(q) rtt, resp, err := conf.c.doRequest(r) if err != nil { @@ -406,7 +405,7 @@ func (conf *ConfigEntries) List(kind string, q *QueryOptions) ([]ConfigEntry, *Q return nil, nil, fmt.Errorf("The kind parameter must not be empty") } - r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s", url.PathEscape(kind))) + r := conf.c.newRequest("GET", fmt.Sprintf("/v1/config/%s", kind)) r.setQueryOptions(q) rtt, resp, err := conf.c.doRequest(r) if err != nil { @@ -486,7 +485,7 @@ func (conf *ConfigEntries) delete(kind, name string, params map[string]string, w return false, nil, fmt.Errorf("Both kind and name parameters must not be empty") } - r := conf.c.newRequest("DELETE", fmt.Sprintf("/v1/config/%s/%s", url.PathEscape(kind), url.PathEscape(name))) + r := conf.c.newRequest("DELETE", fmt.Sprintf("/v1/config/%s/%s", kind, name)) r.setWriteOptions(w) for param, value := range params { r.params.Set(param, value) diff --git a/api/coordinate.go b/api/coordinate.go index bd607e32f..7ef6ce274 100644 --- a/api/coordinate.go +++ b/api/coordinate.go @@ -2,7 +2,6 @@ package api import ( "github.com/hashicorp/serf/coordinate" - "net/url" ) // CoordinateEntry represents a node and its associated network coordinate. @@ -97,7 +96,7 @@ func (c *Coordinate) Update(coord *CoordinateEntry, q *WriteOptions) (*WriteMeta // Node is used to return the coordinates of a single node in the LAN pool. func (c *Coordinate) Node(node string, q *QueryOptions) ([]*CoordinateEntry, *QueryMeta, error) { - r := c.c.newRequest("GET", "/v1/coordinate/node/"+url.PathEscape(node)) + r := c.c.newRequest("GET", "/v1/coordinate/node/"+node) r.setQueryOptions(q) rtt, resp, err := c.c.doRequest(r) if err != nil { diff --git a/api/discovery_chain.go b/api/discovery_chain.go index 10150f5de..29bda8591 100644 --- a/api/discovery_chain.go +++ b/api/discovery_chain.go @@ -3,7 +3,6 @@ package api import ( "encoding/json" "fmt" - "net/url" "time" ) @@ -27,7 +26,7 @@ func (d *DiscoveryChain) Get(name string, opts *DiscoveryChainOptions, q *QueryO method = "POST" } - r := d.c.newRequest(method, fmt.Sprintf("/v1/discovery-chain/%s", url.PathEscape(name))) + r := d.c.newRequest(method, fmt.Sprintf("/v1/discovery-chain/%s", name)) r.setQueryOptions(q) if opts != nil { From b999b3edfce997f07900ef98669a84e78248390e Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" <4903+rboyer@users.noreply.github.com> Date: Tue, 25 Jan 2022 11:24:27 -0600 Subject: [PATCH 320/404] xds: fix for delta xDS reconnect bug in LDS/CDS (#12174) When a wildcard xDS type (LDS/CDS/SRDS) reconnects from a delta xDS stream, prior to envoy `1.19.0` it would populate the `ResourceNamesSubscribe` field with the full list of currently subscribed items, instead of simply omitting it to infer that it wanted everything (which is what wildcard mode means). This upstream issue was filed in envoyproxy/envoy#16063 and fixed in envoyproxy/envoy#16153 which went out in Envoy `1.19.0` and is fixed in later versions (later refactored in envoyproxy/envoy#16855). This PR conditionally forces LDS/CDS to be wildcard-only even when the connected Envoy requests a non-wildcard subscription, but only does so on versions prior to `1.19.0`, as we should not need to do this on later versions. This fixes the failure case as described here: #11833 (comment) Co-authored-by: Huan Wang --- .changelog/12174.txt | 3 ++ agent/xds/delta.go | 24 +++++++---- agent/xds/delta_test.go | 66 ++++++++++++++++++++++++++++++ agent/xds/envoy_versioning.go | 33 ++++++++------- agent/xds/envoy_versioning_test.go | 6 +++ agent/xds/testing.go | 11 ++++- 6 files changed, 117 insertions(+), 26 deletions(-) create mode 100644 .changelog/12174.txt diff --git a/.changelog/12174.txt b/.changelog/12174.txt new file mode 100644 index 000000000..b839df4ec --- /dev/null +++ b/.changelog/12174.txt @@ -0,0 +1,3 @@ +```release-note:bug +xds: fix for delta xDS reconnect bug in LDS/CDS +``` diff --git a/agent/xds/delta.go b/agent/xds/delta.go index 71c97af93..b0a4ccafc 100644 --- a/agent/xds/delta.go +++ b/agent/xds/delta.go @@ -165,12 +165,6 @@ func (s *Server) processDelta(stream ADSDeltaStream, reqCh <-chan *envoy_discove return status.Errorf(codes.InvalidArgument, "type URL is required for ADS") } - if handler, ok := handlers[req.TypeUrl]; ok { - if handler.Recv(req) { - generator.Logger.Trace("subscribing to type", "typeUrl", req.TypeUrl) - } - } - if node == nil && req.Node != nil { node = req.Node var err error @@ -180,6 +174,12 @@ func (s *Server) processDelta(stream ADSDeltaStream, reqCh <-chan *envoy_discove } } + if handler, ok := handlers[req.TypeUrl]; ok { + if handler.Recv(req, generator.ProxyFeatures) { + generator.Logger.Trace("subscribing to type", "typeUrl", req.TypeUrl) + } + } + case cfgSnap = <-stateCh: newRes, err := generator.allResourcesFromSnapshot(cfgSnap) if err != nil { @@ -434,7 +434,7 @@ func newDeltaType( // Recv handles new discovery requests from envoy. // // Returns true the first time a type receives a request. -func (t *xDSDeltaType) Recv(req *envoy_discovery_v3.DeltaDiscoveryRequest) bool { +func (t *xDSDeltaType) Recv(req *envoy_discovery_v3.DeltaDiscoveryRequest, sf supportedProxyFeatures) bool { if t == nil { return false // not something we care about } @@ -447,6 +447,16 @@ func (t *xDSDeltaType) Recv(req *envoy_discovery_v3.DeltaDiscoveryRequest) bool t.wildcard = len(req.ResourceNamesSubscribe) == 0 t.registered = true registeredThisTime = true + + if sf.ForceLDSandCDSToAlwaysUseWildcardsOnReconnect { + switch t.typeURL { + case ListenerType, ClusterType: + if !t.wildcard { + t.wildcard = true + logger.Trace("fixing Envoy bug fixed in 1.19.0 by inferring wildcard mode for type") + } + } + } } /* diff --git a/agent/xds/delta_test.go b/agent/xds/delta_test.go index d5b1a575b..eca97e36e 100644 --- a/agent/xds/delta_test.go +++ b/agent/xds/delta_test.go @@ -554,6 +554,72 @@ func TestServer_DeltaAggregatedResources_v3_SlowEndpointPopulation(t *testing.T) } } +func TestServer_DeltaAggregatedResources_v3_GetAllClusterAfterConsulRestarted(t *testing.T) { + // This illustrates a scenario related to https://github.com/hashicorp/consul/issues/11833 + + aclResolve := func(id string) (acl.Authorizer, error) { + // Allow all + return acl.RootAuthorizer("manage"), nil + } + scenario := newTestServerDeltaScenario(t, aclResolve, "web-sidecar-proxy", "", 0) + _, mgr, errCh, envoy := scenario.server, scenario.mgr, scenario.errCh, scenario.envoy + envoy.EnvoyVersion = "1.18.0" + + sid := structs.NewServiceID("web-sidecar-proxy", nil) + + // Register the proxy to create state needed to Watch() on + mgr.RegisterProxy(t, sid) + + var snap *proxycfg.ConfigSnapshot + runStep(t, "get into state after consul restarted", func(t *testing.T) { + snap = newTestSnapshot(t, nil, "") + + // Send initial cluster discover. + // This is to simulate the discovery request call from envoy after disconnected from consul ads stream. + // + // We need to force it to be an older version of envoy so that the logic shifts. + envoy.SendDeltaReq(t, ClusterType, &envoy_discovery_v3.DeltaDiscoveryRequest{ + ResourceNamesSubscribe: []string{ + "local_app", + "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + }, + InitialResourceVersions: map[string]string{ + "local_app": "a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447", + "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul": "5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03", + }, + }) + + // Check no response sent yet + assertDeltaChanBlocked(t, envoy.deltaStream.sendCh) + + requireProtocolVersionGauge(t, scenario, "v3", 1) + + // Deliver a new snapshot + // the config contains 3 clusters: local_app, db, geo-cache. + // this is to simulate the fact that there is one additional (upstream) cluster gets added to the sidecar service + // during the time xds disconnected (consul restarted). + mgr.DeliverConfig(t, sid, snap) + + assertDeltaResponseSent(t, envoy.deltaStream.sendCh, &envoy_discovery_v3.DeltaDiscoveryResponse{ + TypeUrl: ClusterType, + Nonce: hexString(1), + Resources: makeTestResources(t, + makeTestCluster(t, snap, "tcp:local_app"), + makeTestCluster(t, snap, "tcp:db"), + makeTestCluster(t, snap, "tcp:geo-cache"), + ), + }) + }) + + envoy.Close() + select { + case err := <-errCh: + require.NoError(t, err) + case <-time.After(50 * time.Millisecond): + t.Fatalf("timed out waiting for handler to finish") + } +} + func TestServer_DeltaAggregatedResources_v3_BasicProtocol_TCP_clusterChangesImpactEndpoints(t *testing.T) { aclResolve := func(id string) (acl.Authorizer, error) { // Allow all diff --git a/agent/xds/envoy_versioning.go b/agent/xds/envoy_versioning.go index 27df44f17..be0a770fe 100644 --- a/agent/xds/envoy_versioning.go +++ b/agent/xds/envoy_versioning.go @@ -13,8 +13,7 @@ var ( // the zero'th point release of the last element of proxysupport.EnvoyVersions. minSupportedVersion = version.Must(version.NewVersion("1.17.0")) - // add min version constraints for associated feature flags when necessary, for example: - // minVersionAllowingEmptyGatewayClustersWithIncrementalXDS = version.Must(version.NewVersion("1.16.0")) + minVersionToForceLDSandCDSToAlwaysUseWildcardsOnReconnect = version.Must(version.NewVersion("1.19.0")) specificUnsupportedVersions = []unsupportedVersion{} ) @@ -26,16 +25,19 @@ type unsupportedVersion struct { } type supportedProxyFeatures struct { - // add version dependent feature flags here + // Older versions of Envoy incorrectly exploded a wildcard subscription for + // LDS and CDS into specific line items on incremental xDS reconnect. They + // would populate both InitialResourceVersions and ResourceNamesSubscribe + // when they SHOULD have left ResourceNamesSubscribe empty (or used an + // explicit "*" in later Envoy versions) to imply wildcard mode. On + // reconnect, Consul interpreted the lack of the wildcard attribute as + // implying that the Envoy instance should not receive updates for any + // newly created listeners and clusters for the remaining life of that + // Envoy sidecar process. // - // For example, we previously had flags for Envoy < 1.16 called: - // - // GatewaysNeedStubClusterWhenEmptyWithIncrementalXDS - // IncrementalXDSUpdatesMustBeSerial - // - // Which then manifested in the code for checks with this struct populated. - // By dropping support for 1.15, we no longer have any special flags here - // but leaving this flagging functionality for future one-offs. + // see: https://github.com/envoyproxy/envoy/issues/16063 + // see: https://github.com/envoyproxy/envoy/pull/16153 + ForceLDSandCDSToAlwaysUseWildcardsOnReconnect bool } func determineSupportedProxyFeatures(node *envoy_core_v3.Node) (supportedProxyFeatures, error) { @@ -73,12 +75,9 @@ func determineSupportedProxyFeaturesFromVersion(version *version.Version) (suppo sf := supportedProxyFeatures{} - // add version constraints to populate feature flags here when necessary, for example: - /* - if version.LessThan(minVersionAllowingEmptyGatewayClustersWithIncrementalXDS) { - sf.GatewaysNeedStubClusterWhenEmptyWithIncrementalXDS = true - } - */ + if version.LessThan(minVersionToForceLDSandCDSToAlwaysUseWildcardsOnReconnect) { + sf.ForceLDSandCDSToAlwaysUseWildcardsOnReconnect = true + } return sf, nil } diff --git a/agent/xds/envoy_versioning_test.go b/agent/xds/envoy_versioning_test.go index 75211ecc5..47622ab73 100644 --- a/agent/xds/envoy_versioning_test.go +++ b/agent/xds/envoy_versioning_test.go @@ -125,6 +125,12 @@ func TestDetermineSupportedProxyFeaturesFromString(t *testing.T) { for _, v := range []string{ "1.17.0", "1.17.1", "1.17.2", "1.17.3", "1.17.4", "1.18.0", "1.18.1", "1.18.2", "1.18.3", "1.18.4", + } { + cases[v] = testcase{expect: supportedProxyFeatures{ + ForceLDSandCDSToAlwaysUseWildcardsOnReconnect: true, + }} + } + for _, v := range []string{ "1.19.0", "1.19.1", "1.20.0", "1.20.1", } { diff --git a/agent/xds/testing.go b/agent/xds/testing.go index fc2e97baf..90ea093c7 100644 --- a/agent/xds/testing.go +++ b/agent/xds/testing.go @@ -83,6 +83,8 @@ type TestEnvoy struct { proxyID string token string + EnvoyVersion string + deltaStream *TestADSDeltaStream // Incremental v3 } @@ -182,9 +184,14 @@ func (e *TestEnvoy) sendDeltaReq( e.mu.Lock() defer e.mu.Unlock() - ev, valid := stringToEnvoyVersion(proxysupport.EnvoyVersions[0]) + stringVersion := e.EnvoyVersion + if stringVersion == "" { + stringVersion = proxysupport.EnvoyVersions[0] + } + + ev, valid := stringToEnvoyVersion(stringVersion) if !valid { - t.Fatal("envoy version is not valid: %s", proxysupport.EnvoyVersions[0]) + t.Fatal("envoy version is not valid: %s", stringVersion) } if req == nil { From ad376d84785264dc9e98ac87392f74320a13cf53 Mon Sep 17 00:00:00 2001 From: David Yu Date: Tue, 25 Jan 2022 15:02:19 -0800 Subject: [PATCH 321/404] docs: Service Sync clarify requirements when using Service Mesh (#12177) * docs: Service Sync clarify requirements when using Service Mesh * replace with relative link --- website/content/docs/k8s/service-sync.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/website/content/docs/k8s/service-sync.mdx b/website/content/docs/k8s/service-sync.mdx index 686b50e06..5fbabe6b2 100644 --- a/website/content/docs/k8s/service-sync.mdx +++ b/website/content/docs/k8s/service-sync.mdx @@ -32,6 +32,8 @@ service discovery, including hosted services like databases. ## Installation and Configuration +~> Enabling both Service Mesh and Service Sync on the same Kubernetes services is not supported, as Service Mesh also registers Kubernetes service instances to Consul. Please ensure that Service Sync is only enabled for namespaces and services that are not injected with the Consul sidecar for Service Mesh as described in [Sync Enable/Disable](/docs/k8s/service-sync#sync-enable-disable). + The service sync is done using an external long-running process in the [consul-k8s project](https://github.com/hashicorp/consul-k8s). This process can run either in or out of a Kubernetes cluster. However, running this within From ea0d3d8d0546c232b8a4816d2b16f2444ed74f7f Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Wed, 26 Jan 2022 08:12:12 -0800 Subject: [PATCH 322/404] docs: Add ingress TLS cipher and version documentation (#12163) Document the new TLS cipher and version parameters that were added to ingress gateways in #11576. Co-authored-by: Mike Morris --- .../config-entries/ingress-gateway.mdx | 63 ++++++++++++++++++- 1 file changed, 61 insertions(+), 2 deletions(-) diff --git a/website/content/docs/connect/config-entries/ingress-gateway.mdx b/website/content/docs/connect/config-entries/ingress-gateway.mdx index e539001d1..cc3f1014e 100644 --- a/website/content/docs/connect/config-entries/ingress-gateway.mdx +++ b/website/content/docs/connect/config-entries/ingress-gateway.mdx @@ -979,6 +979,36 @@ You can specify the following parameters to configure ingress gateway configurat "Set this configuration to `true` to enable built-in TLS for every listener on the gateway.

      If TLS is enabled, then each host defined in each service's `hosts` fields will be added as a DNSSAN to the gateway's x509 certificate.", }, }, + { + name: 'TLSMinVersion', + type: 'string: ""', + description: "Set the default minimum TLS version supported for the gateway's listeners. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer [will default to TLS 1.2 as a min version](https://github.com/envoyproxy/envoy/pull/19330), while older releases of Envoy default to TLS 1.0.", + }, + { + name: 'TLSMaxVersion', + type: 'string: ""', + description: { + hcl: + "Set the default maximum TLS version supported for the gateway's listeners. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`." , + yaml: + "Set the default maximum TLS version supported for the gateway's listeners. Must be greater than or equal to `tls_min_version`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`." , + }, + }, + { + name: 'CipherSuites', + type: 'array: ', + description: `Set the default list of TLS cipher suites for the gateway's + listeners to support when negotiating connections using + TLS 1.2 or earlier. If unspecified, Envoy will use a + [default server cipher list](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto#envoy-v3-api-field-extensions-transport-sockets-tls-v3-tlsparameters-cipher-suites). + The list of supported cipher suites can seen in + [\`consul/types/tls.go\`](https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169) + and is dependent on underlying support in Envoy. Future + releases of Envoy may remove currently-supported but + insecure cipher suites, and future releases of Consul + may add new supported cipher suites if any are added to + Envoy.` + }, { name: 'SDS', yaml: false, @@ -1133,11 +1163,40 @@ You can specify the following parameters to configure ingress gateway configurat type: 'bool: false', description: { hcl: - "Set this configuration to `true` to enable built-in TLS for this listener.

      If TLS is enabled, then each host defined in each service's `Hosts` field will be added as a DNSSAN to the gateway's x509 certificate. Note that even hosts from other listeners with TLS disabled will be added.", + "Set this configuration to `true` to enable built-in TLS for this listener.

      If TLS is enabled, then each host defined in each service's `Hosts` field will be added as a DNSSAN to the gateway's x509 certificate. Note that even hosts from other listeners with TLS disabled will be added. TLS can not be disabled for individual listeners if it is enabled on the gateway.", yaml: - "Set this configuration to `true` to enable built-in TLS for this listener.

      If TLS is enabled, then each host defined in the `hosts` field will be added as a DNSSAN to the gateway's x509 certificate. Note that even hosts from other listeners with TLS disabled will be added.", + "Set this configuration to `true` to enable built-in TLS for this listener.

      If TLS is enabled, then each host defined in the `hosts` field will be added as a DNSSAN to the gateway's x509 certificate. Note that even hosts from other listeners with TLS disabled will be added. TLS can not be disabled for individual listeners if it is enabled on the gateway.", }, }, + { + name: 'TLSMinVersion', + type: 'string: ""', + description: "Set the minimum TLS version supported for this listener. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Envoy v1.22.0 and newer [will default to TLS 1.2 as a min version](https://github.com/envoyproxy/envoy/pull/19330), while older releases of Envoy default to TLS 1.0.", + }, + { + name: 'TLSMaxVersion', + type: 'string: ""', + description: { + hcl: + "Set the maximum TLS version supported for this listener. Must be greater than or equal to `TLSMinVersion`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`." , + yaml: + "Set the maximum TLS version supported for this listener. Must be greater than or equal to `tls_min_version`. One of `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`." , + }, + }, + { + name: 'CipherSuites', + type: 'array: ', + description: `Set the list of TLS cipher suites to support when negotiating + connections using TLS 1.2 or earlier. If unspecified, + Envoy will use a + [default server cipher list](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto#envoy-v3-api-field-extensions-transport-sockets-tls-v3-tlsparameters-cipher-suites). + The list of supported cipher suites can seen in + [\`consul/types/tls.go\`](https://github.com/hashicorp/consul/blob/v1.11.2/types/tls.go#L154-L169) + and is dependent on underlying support in Envoy. Future + releases of Envoy may remove currently-supported but + insecure cipher suites, and future releases of Consul + may add new supported cipher suites if any are added to Envoy.` + }, { name: 'SDS', type: 'SDSConfig: ', From 4198c09c476060b75b385b7150e997bf89359975 Mon Sep 17 00:00:00 2001 From: Matt Keeler Date: Wed, 26 Jan 2022 11:51:19 -0500 Subject: [PATCH 323/404] Update telemetry page with advice for monitoring boltdb performance (#12141) Co-authored-by: R.B. Boyer <4903+rboyer@users.noreply.github.com> --- website/content/docs/agent/telemetry.mdx | 56 +++++++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/website/content/docs/agent/telemetry.mdx b/website/content/docs/agent/telemetry.mdx index 0c8ea8d01..9bb2ef539 100644 --- a/website/content/docs/agent/telemetry.mdx +++ b/website/content/docs/agent/telemetry.mdx @@ -269,6 +269,60 @@ resources will still work. This metric should be monitored to ensure that the license doesn't expire to prevent degradation of functionality. +### Bolt DB Performance + +| Metric Name | Description | Unit | Type | +| :-------------------------------- | :--------------------------------------------------------------- | :---- | :---- | +| `consul.raft.boltdb.freelistBytes` | Represents the number of bytes necessary to encode the freelist metadata. When [`raft_boltdb.NoFreelistSync`](/docs/agent/options#NoFreelistSync) is set to `false` these metadata bytes must also be written to disk for each committed log. | bytes | gauge | +| `consul.raft.boltdb.logsPerBatch` | Measures the number of logs being written per batch to the db. | logs | sample | +| `consul.raft.boltdb.storeLogs` | Measures the amount of time spent writing logs to the db. | ms | timer | + + +** Requirements: ** +* Consul 1.11.0+ + +**Why they're important:** + +The `consul.raft.boltdb.storeLogs` metric is a direct indicator of disk write performance of a Consul server. If there are issues with the disk or +performance degradations related to Bolt DB, these metrics will show the issue and potentially the cause as well. + +**What to look for:** + +The primary thing to look for are increases in the `consul.raft.boltdb.storeLogs` times. Its value will directly govern an +upper limit to the throughput of write operations within Consul. + +In Consul each write operation will turn into a single Raft log to be committed. Raft will process these +logs and store them within Bolt DB in batches. Each call to store logs within Bolt DB is measured to record how long +it took as well as how many logs were contained in the batch. Writing logs is this fashion is serialized so that +a subsequent log storage operation can only be started after the previous one completed. Therefore the maximum number +of log storage operations that can be performed each second can be calculated with the following equation: +`(1000 ms) / (consul.raft.boltdb.storeLogs ms/op)`. From there we can extrapolate the maximum number of Consul writes +per second by multiplying that value by the `consul.raft.boltdb.logsPerBatch` metric's value. When log storage +operations are becoming slower you may not see an immediate decrease in write throughput to Consul due to increased +batch sizes of the each operation. However, the max batch size allowed is 64 logs. Therefore if the `logsPerBatch` +metric is near 64 and the `storeLogs` metric is seeing increased time to write each batch to disk, then it is likely +that increased write latencies and other errors may occur. + +There can be a number of potential issues that can cause this. Often times it could be performance of the underlying +disks that is the issue. Other times it may be caused by Bolt DB behavior. Bolt DB keeps track of free space within +the `raft.db` file. When needing to allocate data it will use existing free space first before further expanding the +file. By default, Bolt DB will write a data structure containing metadata about free pages within the DB to disk for +every log storage operation. Therefore if the free space within the database grows excessively large, such as after +a large spike in writes beyond the normal steady state and a subsequent slow down in the write rate, then Bolt DB +could end up writing a large amount of extra data to disk for each log storage operation. This has the potential +to drastically increase disk write throughput, potentially beyond what the underlying disks can keep up with. To +detect this situation you can look at the `consul.raft.boltdb.freelistBytes` metric. This metric is a count of +the extra bytes that are being written for each log storage operation beyond the log data itself. While not a clear +indicator of an actual issue, this metric can be used to diagnose why the `consul.raft.boltdb.storeLogs` metric +is high. + +If Bolt DB log storage performance becomes an issue and is caused by free list management then setting +[`raft_boltdb.NoFreelistSync`](/docs/agent/options#NoFreelistSync) to `true` in the server's configuration +may help to reduce disk IO and log storage operation times. Disabling free list syncing will however increase +the startup time for a server as it must scan the raft.db file for free space instead of loading the already +populated free list structure. + + ## Metrics Reference This is a full list of metrics emitted by Consul. @@ -344,7 +398,7 @@ These metrics are used to monitor the health of the Consul servers. | `consul.raft.applied_index` | Represents the raft applied index. | index | gauge | | `consul.raft.apply` | 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` | 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.boltdb.freelistBytes` | Represents the number of bytes necessary to encode the freelist metadata. When `raft_boltdb.NoFreelistSync` is set to `false` these metadata bytes must also be written to disk for each committed log. | bytes | gauge | +| `consul.raft.boltdb.freelistBytes` | Represents the number of bytes necessary to encode the freelist metadata. When [`raft_boltdb.NoFreelistSync`](/docs/agent/options#NoFreelistSync) is set to `false` these metadata bytes must also be written to disk for each committed log. | bytes | gauge | | `consul.raft.boltdb.freePageBytes` | Represents the number of bytes of free space within the raft.db file. | bytes | gauge | | `consul.raft.boltdb.getLog` | Measures the amount of time spent reading logs from the db. | ms | timer | | `consul.raft.boltdb.logBatchSize` | Measures the total size in bytes of logs being written to the db in a single batch. | bytes | sample | From e26c9f46ab0670a14df6eb40f8530687151c192d Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 8 Jul 2021 14:52:22 -0400 Subject: [PATCH 324/404] contrib: add first draft of Connect CA developer docs Co-authored-by: Dhia Ayachi --- docs/service-mesh/README.md | 2 +- docs/service-mesh/ca/README.md | 40 ++++++++++++++++++++++ docs/service-mesh/ca/cert-relationship.mmd | 31 +++++++++++++++++ docs/service-mesh/ca/cert-relationship.svg | 1 + 4 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 docs/service-mesh/ca/README.md create mode 100644 docs/service-mesh/ca/cert-relationship.mmd create mode 100644 docs/service-mesh/ca/cert-relationship.svg diff --git a/docs/service-mesh/README.md b/docs/service-mesh/README.md index 7bc16f7f7..470fd28f2 100644 --- a/docs/service-mesh/README.md +++ b/docs/service-mesh/README.md @@ -3,7 +3,7 @@ - call out: envoy/proxy is the data plane, Consul is the control plane - [xDS Server] - a gRPC service that implements [xDS] and handles requests from an [envoy proxy]. - [agent/proxycfg] -- CA Manager - certificate authority +- [Certificate Authority](./ca) for issuing TLS certs for services and client agents - command/connect/envoy - bootstrapping and running envoy - command/connect/proxy - built-in proxy that is dev-only and not supported for production. diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md new file mode 100644 index 000000000..7a1292177 --- /dev/null +++ b/docs/service-mesh/ca/README.md @@ -0,0 +1,40 @@ +# Certificate Authority (Connect CA) + +The Certificate Authority subsystem manages a CA trust chain for issuing certificates to +services and client agents (via auto-encrypt and auto-config). + +## Architecture + +### High level overview + +- we can start with the mind map +- high level explaination of what are the features that are involved in CA (mesh/connect, auto encrypt) +- add all the func that are involved in the CA operations +- relationship between the different certs + + +### CA and Certificate relationship + +This diagram shows the relationship between the CA certificates in Consul primary and +secondary. + +![CA relationship](./cert-relationship.svg) + +[source](./cert-relationship.mmd) + +TODO: describe the relationship + +* what does it mean for the external root CA to be optional + * it always exists , unless the Consul CA provider is used AND it has generated the CA + root. +* relationship between Primary Root CA and Signing CA in the primary + * sometimes its the same thing (Consul, and AWS providers) + * sometimes it is different (Vault provider) +* client agent cert is used by auto-encrypt for Agent HTTP TLS (and client side of RPC + TLS) +* leaf cert service is the cert used by a service in the mesh + +### detailed call flow +- sequence diagram for leader election +- sequence diagram for leaf signing +- sequence diagram for CA cert rotation diff --git a/docs/service-mesh/ca/cert-relationship.mmd b/docs/service-mesh/ca/cert-relationship.mmd new file mode 100644 index 000000000..85ae848dc --- /dev/null +++ b/docs/service-mesh/ca/cert-relationship.mmd @@ -0,0 +1,31 @@ +graph TD + + ExternalRootCA["External RootCA (optional)"] + + subgraph "Consul Primary" + PrimaryRootCA["Primary Root CA"] + PrimarySigningCA["Primary Signing CA (conditional)"] + end + + subgraph "Consul Secondary" + SeconarySigningCA["Seconary Signing CA"] + end + + LeafCertAgentPrimary[Leaf Cert Client Agent] + LeafCertServicePrimary[Leaf Cert Service] + + LeafCertAgentSecondary[Leaf Cert Client Agent] + LeafCertServiceSecondary[Leaf Cert Service] + + + ExternalRootCA -.-> PrimaryRootCA + PrimaryRootCA -.-> PrimarySigningCA + + PrimaryRootCA --> SeconarySigningCA + + PrimarySigningCA --> LeafCertAgentPrimary + PrimarySigningCA --> LeafCertServicePrimary + + SeconarySigningCA --> LeafCertAgentSecondary + SeconarySigningCA --> LeafCertServiceSecondary + diff --git a/docs/service-mesh/ca/cert-relationship.svg b/docs/service-mesh/ca/cert-relationship.svg new file mode 100644 index 000000000..a32f838d1 --- /dev/null +++ b/docs/service-mesh/ca/cert-relationship.svg @@ -0,0 +1 @@ +
      Consul Secondary
      Consul Primary
      Seconary Signing CA
      Primary Root CA
      Primary Signing CA (conditional)
      External RootCA (optional)
      Leaf Cert Client Agent
      Leaf Cert Service
      Leaf Cert Client Agent
      Leaf Cert Service
      \ No newline at end of file From 50618d95e2aeffb703c39c4ca9a7fa0c2afa75ac Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Thu, 8 Jul 2021 16:07:23 -0400 Subject: [PATCH 325/404] add HL diagram on the ca generation sequence --- docs/service-mesh/ca/README.md | 10 ++++-- docs/service-mesh/ca/hl-ca-overview.mmd | 43 +++++++++++++++++++++++++ docs/service-mesh/ca/hl-ca-overview.svg | 1 + 3 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 docs/service-mesh/ca/hl-ca-overview.mmd create mode 100644 docs/service-mesh/ca/hl-ca-overview.svg diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index 7a1292177..a9c7aaa4d 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -7,8 +7,14 @@ services and client agents (via auto-encrypt and auto-config). ### High level overview -- we can start with the mind map -- high level explaination of what are the features that are involved in CA (mesh/connect, auto encrypt) +In Consul the leader is responsible for handling of the CA management. +When a leader election happen, and the elected leader do not have any root CA available it will start a process of creating a set of CA certificate. +Those certificates will use to authenticate/encrypt communication between services (service mesh) or between `Consul client agent` (auto-encrypt/auto-config). This process is described in the following diagram: +![CA creation](./hl-ca-overview.svg) + +[source](./hl-ca-overview.mmd) + +- high level explanation of what are the features that are involved in CA (mesh/connect, auto encrypt) - add all the func that are involved in the CA operations - relationship between the different certs diff --git a/docs/service-mesh/ca/hl-ca-overview.mmd b/docs/service-mesh/ca/hl-ca-overview.mmd new file mode 100644 index 000000000..952f64b98 --- /dev/null +++ b/docs/service-mesh/ca/hl-ca-overview.mmd @@ -0,0 +1,43 @@ +graph TD + subgraph "Primary DC" + leaderP["Leader"] + rootCAI["Root CA "] + rootCA["Root CA "] + Provider["Consul/AWS providers"] + IntermediateProvider["Vault provider"] + intermediateCAP["Intermediate CA "] + leafP["Leaf certificates"] + end + + subgraph "Secondary DC" + leaderS["Leader"] + intermediateCAS["Intermediate CA"] + leafS["Leaf certificates"] + ProviderS["Consul/AWS/Vault providers"] + end + + consulCAS["Consul client Agents"] + servicesS["Mesh services"] + + consulCAP["Consul client Agents"] + servicesP["Mesh services"] + + leaderP -->|use|Provider + leaderP-->|use|IntermediateProvider + Provider--> |fetch/self sign|rootCA + IntermediateProvider --> |fetch/self sign|rootCAI + rootCAI -->|sign| intermediateCAP + intermediateCAP -->|sign| leafP + rootCA -->|sign| leafP + + leaderS -->|use| ProviderS + ProviderS --> |generate csr| intermediateCAS + rootCA -->|sign| intermediateCAS + rootCAI -->|sign| intermediateCAS + intermediateCAS --> |sign| leafS + + leafS -->|auth/encrypt| servicesS + leafS -->|auth/encrypt| consulCAS + leafP -->|auth/encrypt| servicesP + leafP -->|auth/encrypt| consulCAP + diff --git a/docs/service-mesh/ca/hl-ca-overview.svg b/docs/service-mesh/ca/hl-ca-overview.svg new file mode 100644 index 000000000..76a616624 --- /dev/null +++ b/docs/service-mesh/ca/hl-ca-overview.svg @@ -0,0 +1 @@ +
      Secondary DC
      Primary DC
      use
      use
      fetch/self sign
      fetch/self sign
      sign
      sign
      sign
      use
      generate csr
      sign
      sign
      sign
      auth/encrypt
      auth/encrypt
      auth/encrypt
      auth/encrypt
      Leader
      Intermediate CA
      Leaf certificates
      Consul/AWS/Vault providers
      Leader
      Root CA
      Root CA
      Consul/AWS providers
      Vault provider
      Intermediate CA
      Leaf certificates
      Consul client Agents
      Mesh services
      Consul client Agents
      Mesh services
      \ No newline at end of file From dfedb5a97fd1eb4b904709c1c74470dc22b3842c Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 8 Jul 2021 17:07:15 -0400 Subject: [PATCH 326/404] contrib: add description of cert relationship diagram And links to code --- docs/service-mesh/ca/README.md | 40 +++++++++++++++++++++++++--------- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index a9c7aaa4d..39f7f6ecf 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -3,6 +3,17 @@ The Certificate Authority subsystem manages a CA trust chain for issuing certificates to services and client agents (via auto-encrypt and auto-config). +The code for the Certificate Authority is in the following packages: +1. most of the core logic is in [agent/consul/leader_connect_ca.go] +2. the providers are in [agent/connect/ca] +3. the RPC interface is in [agent/consul/connect_ca_endpoint.go] + + +[agent/consul/leader_connect_ca.go]: https://github.com/hashicorp/consul/blob/main/agent/consul/leader_connect_ca.go +[agent/connect/ca]: https://github.com/hashicorp/consul/blob/main/agent/connect/ca/ +[agent/consul/connect_ca_endpoint.go]: https://github.com/hashicorp/consul/blob/main/agent/consul/connect_ca_endpoint.go + + ## Architecture ### High level overview @@ -10,6 +21,7 @@ services and client agents (via auto-encrypt and auto-config). In Consul the leader is responsible for handling of the CA management. When a leader election happen, and the elected leader do not have any root CA available it will start a process of creating a set of CA certificate. Those certificates will use to authenticate/encrypt communication between services (service mesh) or between `Consul client agent` (auto-encrypt/auto-config). This process is described in the following diagram: + ![CA creation](./hl-ca-overview.svg) [source](./hl-ca-overview.mmd) @@ -28,17 +40,25 @@ secondary. [source](./cert-relationship.mmd) -TODO: describe the relationship -* what does it mean for the external root CA to be optional - * it always exists , unless the Consul CA provider is used AND it has generated the CA - root. -* relationship between Primary Root CA and Signing CA in the primary - * sometimes its the same thing (Consul, and AWS providers) - * sometimes it is different (Vault provider) -* client agent cert is used by auto-encrypt for Agent HTTP TLS (and client side of RPC - TLS) -* leaf cert service is the cert used by a service in the mesh +In most cases there is an external root CA that provides an intermediate CA that Consul +uses as the Primary Root CA. The only except to this is when the Consul CA Provider is +used without specifying a `RootCert`. In this one case Consul will generate the the Root CA +from the provided primary key, and it will be used in the primary as the top of the chain +of trust. + +In the primary datacenter, the Consul and AWS providers use the Primary Root CA to sign +leaf certificates. The Vault provider uses an intermediate CA to sign leaf certificates. + +Leaf certificates are created for two purposes: +1. the Leaf Cert Service is used by envoy proxies in the mesh to perform mTLS with other + services. +2. the Leaf Cert Client Agent is created by auto-encrypt and auto-config. It is used by + client agents for HTTP API TLS, and for mTLS for RPC requests to servers. + +Any secondary datacenters receive an intermediate certificate, signed by the Primary Root +CA, which is used as the CA certificate to sign leaf certificates in the secondary +datacenter. ### detailed call flow - sequence diagram for leader election From 974f1604bf483ee660ad015b780f1e6369f1c142 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 8 Jul 2021 17:13:31 -0400 Subject: [PATCH 327/404] contrib: add CA operations --- docs/service-mesh/ca/README.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index 39f7f6ecf..719d2881f 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -60,6 +60,40 @@ Any secondary datacenters receive an intermediate certificate, signed by the Pri CA, which is used as the CA certificate to sign leaf certificates in the secondary datacenter. +## Operations + +When trying to learn the CA subsystem it can be helpful to understand the operations that +it can perform. The sections below are the complete set of read, write, and periodic +operations that provide the full behaviour of the CA subsystem. + +### Periodic Operations + +Periodic (or background) opeartions are started automatically by the Consul leader. They run at some interval (often 1 hour). + +- `CAManager.InitializeCA` - attempts to initialize the CA when a leader is ellected. If the synchronous InitializeCA fails, `CAManager.backgroundCAInitialization` runs `InitializeCA` periodically in a goroutine until it succeeds. +- `CAManager.RenewIntermediate` - (called by `CAManager.intermediateCertRenewalWatch`) runs in the primary if the provider uses a separate signing cert (the Vault provider). The operation always runs in the secondary. Renews the signing cert once half its lifetime has passed. +- `CAManager.secondaryCARootWatch` - runs in secondary only. Performs a blocking query to the primary to retrieve any updates to the CA roots and stores them locally. +- `Server.runCARootPruning` - removes non-active and expired roots from state.CARoots + +### Read Operations + +- `RPC.ConnectCA.ConfigurationGet` - returns the CA provider configuration. Only called by user, not by any internal subsystems. +- `RPC.ConnectCA.Roots` - returns all the roots, the trust domain ID, and the ID of the active root. Each "root" also includes the signing key/cert, and any intermediate certs in the chain. It is used (via the cache) by all the connect proxy types. + +### Write Operations + +- `CAManager.UpdateConfiguration` - (via `RPC.ConnectCA.ConfigurationSet`) called by a user when they want to change the provider or provider configuration (ex: rotate root CA). +- `CAManager.Provider.SignIntermediate` - (via `RPC.ConnectCA.SignIntermediate`) called from the secondary DC: + 1. by `CAManager.RenewIntermediate` to sign the new intermediate when the old intermediate is about to expire + 2. by `CAMananger.initializeSecondary` when setting up a new secondary, when the provider is changed in the secondary + by a user action, or when the primary roots changed and the secondary needs to generate a new intermediate for the new + primary roots. +- `CAMananger.SignCertificate` - is used by: + 1. (via `RPC.ConnectCA.Sign`) - called by client agents to sign a leaf cert for a connect proxy (via `agent/cache-types/connect_ca_leaf.go`) + 2. (via in-process call to `RPC.ConnectCA.Sign`) - called by auto-encrypt to sign a leaf cert for a client agent + 3. called by Auto-Config to sign a leaf cert for a client agent + + ### detailed call flow - sequence diagram for leader election - sequence diagram for leaf signing From d826afffe6d1b1ca8e04a188286ec124cec8d166 Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Fri, 9 Jul 2021 10:28:03 -0400 Subject: [PATCH 328/404] fix types and add reference to mesh and auto_config docs --- docs/service-mesh/ca/README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index 719d2881f..40861a851 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -18,17 +18,17 @@ The code for the Certificate Authority is in the following packages: ### High level overview -In Consul the leader is responsible for handling of the CA management. +In Consul the leader is responsible for handling the CA management. When a leader election happen, and the elected leader do not have any root CA available it will start a process of creating a set of CA certificate. -Those certificates will use to authenticate/encrypt communication between services (service mesh) or between `Consul client agent` (auto-encrypt/auto-config). This process is described in the following diagram: +Those certificates will be used to authenticate/encrypt communication between services (service mesh) or between `Consul client agent` (auto-encrypt/auto-config). This process is described in the following diagram: ![CA creation](./hl-ca-overview.svg) [source](./hl-ca-overview.mmd) -- high level explanation of what are the features that are involved in CA (mesh/connect, auto encrypt) -- add all the func that are involved in the CA operations -- relationship between the different certs +The features that benefit from Consul CA management are: +- [service Mesh/Connect](https://www.consul.io/docs/connect) +- [auto encrypt](https://www.consul.io/docs/agent/options#auto_encrypt) ### CA and Certificate relationship @@ -43,7 +43,7 @@ secondary. In most cases there is an external root CA that provides an intermediate CA that Consul uses as the Primary Root CA. The only except to this is when the Consul CA Provider is -used without specifying a `RootCert`. In this one case Consul will generate the the Root CA +used without specifying a `RootCert`. In this one case Consul will generate the Root CA from the provided primary key, and it will be used in the primary as the top of the chain of trust. @@ -93,7 +93,6 @@ Periodic (or background) opeartions are started automatically by the Consul lead 2. (via in-process call to `RPC.ConnectCA.Sign`) - called by auto-encrypt to sign a leaf cert for a client agent 3. called by Auto-Config to sign a leaf cert for a client agent - ### detailed call flow - sequence diagram for leader election - sequence diagram for leaf signing From 8e93c6ae1e08f148e147fadbda96587ffbdf6495 Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Fri, 9 Jul 2021 10:28:30 -0400 Subject: [PATCH 329/404] Add sequence diagram for leader boot sequence --- docs/service-mesh/ca/README.md | 5 ++++- docs/service-mesh/ca/ca-leader-sequence.mmd | 19 +++++++++++++++++++ docs/service-mesh/ca/ca-leader-sequence.svg | 1 + 3 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 docs/service-mesh/ca/ca-leader-sequence.mmd create mode 100644 docs/service-mesh/ca/ca-leader-sequence.svg diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index 40861a851..809dae825 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -94,6 +94,9 @@ Periodic (or background) opeartions are started automatically by the Consul lead 3. called by Auto-Config to sign a leaf cert for a client agent ### detailed call flow -- sequence diagram for leader election +![CA Leader Sequence](./ca-leader-sequence.svg) + +[source](./ca-leader-sequence.mmd) + - sequence diagram for leaf signing - sequence diagram for CA cert rotation diff --git a/docs/service-mesh/ca/ca-leader-sequence.mmd b/docs/service-mesh/ca/ca-leader-sequence.mmd new file mode 100644 index 000000000..f81e66b7a --- /dev/null +++ b/docs/service-mesh/ca/ca-leader-sequence.mmd @@ -0,0 +1,19 @@ +sequenceDiagram +Participant Provider +Participant PL As Primary Leader +Participant SL As Secondary Leader +Alt Primary don't have a valid CA +PL->>Provider:initializeRootCA (fetch root and sign intermediate) +Provider->>PL:root + intermediate +PL->>PL:RPC ConnectCA.Roots (fetch primary root and store it) +end +SL->>PL: RPC ConnectCA.Roots (fetch primary root and store it) +PL->>SL: Root + intermediate +Alt Secondary needs a new intermediate (check if current intermediate is signed by primary root) +SL->>Provider: Generate CSR +Provider->>SL: CSR +SL->>PL: ConnectCA.SignIntermediate (CSR) +PL->>SL: Intermediate CA (secondary) +SL->>Provider: Set Intermediate (secondary CA) + root (primary CA) +SL->>SL: Store certs in RAFT (primary root + secondary intermediate) +end \ No newline at end of file diff --git a/docs/service-mesh/ca/ca-leader-sequence.svg b/docs/service-mesh/ca/ca-leader-sequence.svg new file mode 100644 index 000000000..d19b957e4 --- /dev/null +++ b/docs/service-mesh/ca/ca-leader-sequence.svg @@ -0,0 +1 @@ +ProviderPrimary LeaderSecondary LeaderinitializeRootCA (fetch root and sign intermediate)root + intermediateRPC ConnectCA.Roots (fetch primary root and store it)alt[Primary don't have a valid CA]RPC ConnectCA.Roots (fetch primary root and store it)Root + intermediateGenerate CSRCSRConnectCA.SignIntermediate (CSR)Intermediate CA (secondary)Set Intermediate (secondary CA) + root (primary CA)Store certs in RAFT (primary root + secondary intermediate)alt[Secondary needs a new intermediate (check if current intermediate is signed by primary root)]ProviderPrimary LeaderSecondary Leader \ No newline at end of file From 724248e339ef045913b05580c7df960b038bd50e Mon Sep 17 00:00:00 2001 From: Dhia Ayachi Date: Fri, 9 Jul 2021 15:24:16 -0400 Subject: [PATCH 330/404] fix typo and add a TODO section for the remaining stuff --- docs/service-mesh/ca/README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index 809dae825..2a3d14d63 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -1,6 +1,6 @@ # Certificate Authority (Connect CA) -The Certificate Authority subsystem manages a CA trust chain for issuing certificates to +The Certificate Authority Subsystem manages a CA trust chain for issuing certificates to services and client agents (via auto-encrypt and auto-config). The code for the Certificate Authority is in the following packages: @@ -93,10 +93,11 @@ Periodic (or background) opeartions are started automatically by the Consul lead 2. (via in-process call to `RPC.ConnectCA.Sign`) - called by auto-encrypt to sign a leaf cert for a client agent 3. called by Auto-Config to sign a leaf cert for a client agent -### detailed call flow +## detailed call flow ![CA Leader Sequence](./ca-leader-sequence.svg) [source](./ca-leader-sequence.mmd) -- sequence diagram for leaf signing +####TODO: +- sequence diagram for leaf signing - sequence diagram for CA cert rotation From e0084abe8e451b78f6695d3c726fc5932de79d69 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 16 Jul 2021 16:48:46 -0400 Subject: [PATCH 331/404] contrib: add CA manager states diagram --- docs/service-mesh/ca/README.md | 11 +++++++++++ docs/service-mesh/ca/state-machine.mmd | 23 +++++++++++++++++++++++ docs/service-mesh/ca/state-machine.svg | 1 + 3 files changed, 35 insertions(+) create mode 100644 docs/service-mesh/ca/state-machine.mmd create mode 100644 docs/service-mesh/ca/state-machine.svg diff --git a/docs/service-mesh/ca/README.md b/docs/service-mesh/ca/README.md index 2a3d14d63..cd63244ee 100644 --- a/docs/service-mesh/ca/README.md +++ b/docs/service-mesh/ca/README.md @@ -101,3 +101,14 @@ Periodic (or background) opeartions are started automatically by the Consul lead ####TODO: - sequence diagram for leaf signing - sequence diagram for CA cert rotation + +## CAManager states + +This section is a work in progress + +TODO: style the diagram to match the others, and add some narative text to describe the +diagram. + +![CA Mananger states](./state-machine.svg) + + diff --git a/docs/service-mesh/ca/state-machine.mmd b/docs/service-mesh/ca/state-machine.mmd new file mode 100644 index 000000000..214e31167 --- /dev/null +++ b/docs/service-mesh/ca/state-machine.mmd @@ -0,0 +1,23 @@ +stateDiagram-v2 + + [*] --> Uninitialized + Uninitialized --> Initializing : InitializeCA + Uninitialized --> Reconfig : UpdateConfiguration + Reconfig --> Uninitialized : return + + # Initialized can transition to any state + Initialized --> Renew : RenewIntermediate + Initialized --> Uninitialized : Stop + Initialized --> Reconfig : UpdateConfiguration + Initialized --> Initializing : INVALID + + # Initialized is set using validate=false + Uninitialized --> Initialized : INVALID + Reconfig --> Initialized : return + Initializing --> Initialized : InitializeCA complete + Renew --> Initialized : return + + # Uninitialized is set using validate=false + Renew --> Uninitialized : Stop + Reconfig --> Uninitialized : Stop + Initializing --> Uninitialized : Stop diff --git a/docs/service-mesh/ca/state-machine.svg b/docs/service-mesh/ca/state-machine.svg new file mode 100644 index 000000000..f63e880e0 --- /dev/null +++ b/docs/service-mesh/ca/state-machine.svg @@ -0,0 +1 @@ +
      InitializeCA
      UpdateConfiguration
      return
      RenewIntermediate
      Stop
      UpdateConfiguration
      INVALID
      INVALID
      return
      InitializeCA complete
      return
      Stop
      Stop
      Stop
      Uninitialized
      Initializing
      Reconfig
      Initialized
      Renew
      \ No newline at end of file From 93a514595c656a4b92f76ad9611c4de611d01b3b Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 26 Jan 2022 09:23:10 -0800 Subject: [PATCH 332/404] added GWclass and GWClassConfig --- website/content/docs/api-gateway.mdx | 113 ++++++++++++++++++++++++--- 1 file changed, 101 insertions(+), 12 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index d2d44d465..e1ec5cc67 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -3,16 +3,17 @@ layout: docs page_title: API Gateway description: Using Consul API gateway functionality --- + # Consul API Gateway -The Consul API Gateway add-on module helps users control access to services running within a Consul service mesh. Using the API Gateway, applications and services running in a Consul datacenter can be accessed by network clients residing outside of the datacenter. This type of network traffic is commonly referred to as "north-south" network traffic as it refers to the flow of data into and out of a specific environment. Requests from clients can also be forwarded based on path or request protocol. +This topic describes how to use the Consul API Gateway add-on module, which helps users control access to services running within a Consul service mesh. The API gateway enables external network clients to access applications and services running in a Consul datacenter. This type of network traffic is commonly referred to as "north-south" network traffic as it refers to the flow of data into and out of a specific environment. Requests from clients can also be forwarded based on path or request protocol. ## Introduction -Consul API Gateway is an implementation of the Kubernetes Gateway [API Specification](https://gateway-api.sigs.k8s.io/). This specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes based on the path or protocol of a client request. The Consul API gateway solves for two primary use cases: +Consul API Gateway is an implementation of the Kubernetes Gateway [API Specification](https://gateway-api.sigs.k8s.io/). This specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes based on the path or protocol of a client request. Consul API Gateway solves two primary use cases: -* **Controlling access at the point entry** - The Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g. VeriSign, Let’sEncrypt). -* **Simplifying traffic management** - The Consul API Gateway can be used to load balance requests across services and route traffic to the appropriate service based on matching one or more criteria such as hostname, path, header presence or value, and HTTP Method type (e.g. Get, Post, Patch). +- **Controlling access at the point entry**: Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g., VeriSign, Let’sEncrypt). +- **Simplifying traffic management**: The Consul API Gateway can load balance requests across services and route traffic to the appropriate service based on matching one or more criteria, such as hostname, path, header presence or value, and HTTP Method type (e.g., GET, POST, PATCH). ## Requirements @@ -47,7 +48,11 @@ controller: $ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml ``` -The following components will be installed: - Gateway controller - CRDs required by the Kubernetes Gateway API specification - `kustomize` manifests for completing the installation +The following components will be installed: + +- Gateway controller +- CRDs required by the Kubernetes Gateway API specification +- `kustomize` manifests for completing the installation 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. @@ -67,6 +72,8 @@ $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref= $ kubectl apply --values gateway-configuration.yaml ``` + ## Configuration -Create the following artifacts to configure the API Gateway: +Configure the following artifacts to facilitate ingress into your Consul service mesh: -- [Gateway](#gateway): Defines the gateway properties, including listeners. +- [Gateway](#gateway): Defines the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners`. +- [GatewayClass](#gatewayclass): Defines a class of gateway resources that you can use as a template for creating gateways. +- [GatewayClassConfig](#gatewayclassconfig): Describes additional Consul API Gatway-related configuration parameters for the `GatewayClass` resource. - [Listeners](#listeners): Defines listener properties, such as protocol, port, and namespace. - [Routes](#routes): Specifies the path from the client to the listener. ### Gateway -The gateway object contains gateway listeners. -Add the `kind: Gateway` option to the configuration file to declare a gateway. -The following example creates a gateway called `example-gateway` that includes a listener called `https` (see [Listeners](#listeners) for details about the `listener` configuration). +The gateway configuration is the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners`. - +Add the `kind: Gateway` option to the configuration file to declare a gateway. +The following example creates a gateway called `example-gateway`. +The gateway is based on the `test-gateway-class` and includes a listener called `https` (see [Listeners](#listeners) for details about the `listener` configuration). + + ```yaml apiVersion: gateway.networking.k8s.io/v1alpha2 @@ -137,7 +149,7 @@ metadata: annotations: 'external-dns.alpha.kubernetes.io/hostname': DNS_HOSTNAME spec: - gatewayClassName: default-consul-gateway-class + gatewayClassName: test-gateway-class listeners: - protocol: HTTPS hostname: DNS_HOSTNAME @@ -156,6 +168,83 @@ spec: Refer to the Kubernetes Gateway API documentation for details about configuring gateways: +### GatewayClass + +The `GatewayClass` resource is used as a template for creating `Gateway` resources. +The specification includes the name of the controller (`controllerName`) and an API object containing controller-specific configuration resource within the cluster (`parametersRef`). + +When gateways are created from a `GatewayClass`, they use the parameters specified in the `GatewayClass` at the time of instantiation. +If you want to propagate changes made to the `GatewayClass` after gateways have been created, then the implementation must document this behavior. +The `gateway-exists-finalizer.gateway.networking.k8s.io` finalizer must also be added to a `GatewayClass` to ensure that a `GatewayClass` associated with a `Gateway` is not deleted while in use. + +Add the `kind: GatewayClass` option to the the gateway values file to declare a gateway class. +The following example creates a gateway class called `test-gateway-class`. + + + +```yaml +apiVersion: gateway.networking.k8s.io/v1alpha2 +kind: GatewayClass +metadata: + name: test-gateway-class +spec: + controllerName: 'hashicorp.com/consul-api-gateway-controller' + parametersRef: + group: api-gateway.consul.hashicorp.com + kind: GatewayClassConfig + name: test-gateway-class-config +``` + + + +Refer to the Kubernetes Gateway API documentation for details about configuring gateway classes: + + +### GatewayClassConfig + +The `GatewayClassConfig` object describes additional Consul API Gateway-related configuration parameters for the `GatewayClass`. + +Add the `kind: GatewayClassConfig` option to the gateway values file to declare a gateway class. +The following example creates a gateway class called `test-gateway-class-config`. + + + +```yaml +apiVersion: api-gateway.consul.hashicorp.com/v1alpha1 +kind: GatewayClassConfig +metadata: + name: test-gateway-class-config +spec: + useHostPorts: true + logLevel: trace + consul: + scheme: https + caSecret: consul-ca-cert + ports: + http: 8501 + grpc: 8502 +``` + + + +The following table describes the required parameters for the `spec` array: + +| Parameter | Description | Type | Default | +| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | ------- | +| `useHostPorts` | Enables the gateway to use the host ports | Boolean | `true` | +| `logLevel` | Specifies the error reporting level for logs. You can specify the following values: `FATAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`, `TRACE`, `ALL`, `OFF` | String | `trace` | +| `consul` | Specifies ingress properties for Consul. See [Consul Configuration](#consul-configuration) | Array | N/A | + +#### Consul Configuration + +The following table describes the parameters available for the `consul` element of the `GatewayClassConfiguration`: + +| Parameter | Description | Type | Default | +| ---------- | ------------------------------------------------------------- | ------ | ------------------------------- | +| `scheme` | Specifies the message protocol. | String | `http` | +| `caSecret` | Specifies the name of the CA secret. | String | none | +| `ports` | Specifies which ports to use for API and application traffic. | Array | `http: 8501`
      `grpc: 8502` | + ### Listeners Listeners are the logical endpoints bound to the gateway's addresses. From 2c311161ccc2ce1dd3a34a2a79dd208822c7ed35 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 30 Jul 2021 19:20:02 -0400 Subject: [PATCH 333/404] acl: extract a backend type for the ACLResolverBackend This is a small step to isolate the functionality that is used for the ACLResolver from the large Client and Server structs. --- agent/consul/acl.go | 40 +++++++++++++++++++------------------ agent/consul/acl_client.go | 17 ++++++++++------ agent/consul/acl_server.go | 16 ++++++++++----- agent/consul/acl_test.go | 2 +- agent/consul/client.go | 2 +- agent/consul/replication.go | 2 +- agent/consul/server.go | 2 +- 7 files changed, 47 insertions(+), 34 deletions(-) diff --git a/agent/consul/acl.go b/agent/consul/acl.go index b475bf159..4e8c88538 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -133,11 +133,12 @@ func tokenSecretCacheID(token string) string { return "token-secret:" + token } -type ACLResolverDelegate interface { +type ACLResolverBackend interface { ACLDatacenter() string ResolveIdentityFromToken(token string) (bool, structs.ACLIdentity, error) ResolvePolicyFromID(policyID string) (bool, *structs.ACLPolicy, error) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error) + // TODO: separate methods for each RPC call (there are 4) RPC(method string, args interface{}, reply interface{}) error EnterpriseACLResolverDelegate } @@ -160,8 +161,9 @@ type ACLResolverConfig struct { // CacheConfig is a pass through configuration for ACL cache limits CacheConfig *structs.ACLCachesConfig - // Delegate that implements some helper functionality that is server/client specific - Delegate ACLResolverDelegate + // Backend is used to retrieve data from the state store, or perform RPCs + // to fetch data from other Datacenters. + Backend ACLResolverBackend // DisableDuration is the length of time to leave ACLs disabled when an RPC // request to a server indicates that the ACL system is disabled. If set to @@ -219,9 +221,9 @@ type ACLResolverSettings struct { // ACLResolver is the type to handle all your token and policy resolution needs. // // Supports: -// - Resolving tokens locally via the ACLResolverDelegate -// - Resolving policies locally via the ACLResolverDelegate -// - Resolving roles locally via the ACLResolverDelegate +// - Resolving tokens locally via the ACLResolverBackend +// - Resolving policies locally via the ACLResolverBackend +// - Resolving roles locally via the ACLResolverBackend // - Resolving legacy tokens remotely via an ACL.GetPolicy RPC // - Resolving tokens remotely via an ACL.TokenRead RPC // - Resolving policies remotely via an ACL.PolicyResolve RPC @@ -245,8 +247,8 @@ type ACLResolver struct { config ACLResolverSettings logger hclog.Logger - delegate ACLResolverDelegate - aclConf *acl.Config + backend ACLResolverBackend + aclConf *acl.Config tokens *token.Store @@ -298,7 +300,7 @@ func NewACLResolver(config *ACLResolverConfig) (*ACLResolver, error) { if config == nil { return nil, fmt.Errorf("ACL Resolver must be initialized with a config") } - if config.Delegate == nil { + if config.Backend == nil { return nil, fmt.Errorf("ACL Resolver must be initialized with a valid delegate") } @@ -331,7 +333,7 @@ func NewACLResolver(config *ACLResolverConfig) (*ACLResolver, error) { return &ACLResolver{ config: config.Config, logger: config.Logger.Named(logging.ACL), - delegate: config.Delegate, + backend: config.Backend, aclConf: config.ACLConfig, cache: cache, disableDuration: config.DisableDuration, @@ -349,7 +351,7 @@ func (r *ACLResolver) fetchAndCacheIdentityFromToken(token string, cached *struc cacheID := tokenSecretCacheID(token) req := structs.ACLTokenGetRequest{ - Datacenter: r.delegate.ACLDatacenter(), + Datacenter: r.backend.ACLDatacenter(), TokenID: token, TokenIDType: structs.ACLTokenSecret, QueryOptions: structs.QueryOptions{ @@ -359,7 +361,7 @@ func (r *ACLResolver) fetchAndCacheIdentityFromToken(token string, cached *struc } var resp structs.ACLTokenResponse - err := r.delegate.RPC("ACL.TokenRead", &req, &resp) + err := r.backend.RPC("ACL.TokenRead", &req, &resp) if err == nil { if resp.Token == nil { r.cache.PutIdentity(cacheID, nil) @@ -396,7 +398,7 @@ func (r *ACLResolver) fetchAndCacheIdentityFromToken(token string, cached *struc // we initiate an RPC for the value. func (r *ACLResolver) resolveIdentityFromToken(token string) (structs.ACLIdentity, error) { // Attempt to resolve locally first (local results are not cached) - if done, identity, err := r.delegate.ResolveIdentityFromToken(token); done { + if done, identity, err := r.backend.ResolveIdentityFromToken(token); done { return identity, err } @@ -437,7 +439,7 @@ func (r *ACLResolver) resolveIdentityFromToken(token string) (structs.ACLIdentit func (r *ACLResolver) fetchAndCachePoliciesForIdentity(identity structs.ACLIdentity, policyIDs []string, cached map[string]*structs.PolicyCacheEntry) (map[string]*structs.ACLPolicy, error) { req := structs.ACLPolicyBatchGetRequest{ - Datacenter: r.delegate.ACLDatacenter(), + Datacenter: r.backend.ACLDatacenter(), PolicyIDs: policyIDs, QueryOptions: structs.QueryOptions{ Token: identity.SecretToken(), @@ -446,7 +448,7 @@ func (r *ACLResolver) fetchAndCachePoliciesForIdentity(identity structs.ACLIdent } var resp structs.ACLPolicyBatchResponse - err := r.delegate.RPC("ACL.PolicyResolve", &req, &resp) + err := r.backend.RPC("ACL.PolicyResolve", &req, &resp) if err == nil { out := make(map[string]*structs.ACLPolicy) for _, policy := range resp.Policies { @@ -492,7 +494,7 @@ func (r *ACLResolver) fetchAndCachePoliciesForIdentity(identity structs.ACLIdent func (r *ACLResolver) fetchAndCacheRolesForIdentity(identity structs.ACLIdentity, roleIDs []string, cached map[string]*structs.RoleCacheEntry) (map[string]*structs.ACLRole, error) { req := structs.ACLRoleBatchGetRequest{ - Datacenter: r.delegate.ACLDatacenter(), + Datacenter: r.backend.ACLDatacenter(), RoleIDs: roleIDs, QueryOptions: structs.QueryOptions{ Token: identity.SecretToken(), @@ -501,7 +503,7 @@ func (r *ACLResolver) fetchAndCacheRolesForIdentity(identity structs.ACLIdentity } var resp structs.ACLRoleBatchResponse - err := r.delegate.RPC("ACL.RoleResolve", &req, &resp) + err := r.backend.RPC("ACL.RoleResolve", &req, &resp) if err == nil { out := make(map[string]*structs.ACLRole) for _, role := range resp.Roles { @@ -774,7 +776,7 @@ func (r *ACLResolver) collectPoliciesForIdentity(identity structs.ACLIdentity, p } for _, policyID := range policyIDs { - if done, policy, err := r.delegate.ResolvePolicyFromID(policyID); done { + if done, policy, err := r.backend.ResolvePolicyFromID(policyID); done { if err != nil && !acl.IsErrNotFound(err) { return nil, err } @@ -871,7 +873,7 @@ func (r *ACLResolver) collectRolesForIdentity(identity structs.ACLIdentity, role expCacheMap := make(map[string]*structs.RoleCacheEntry) for _, roleID := range roleIDs { - if done, role, err := r.delegate.ResolveRoleFromID(roleID); done { + if done, role, err := r.backend.ResolveRoleFromID(roleID); done { if err != nil && !acl.IsErrNotFound(err) { return nil, err } diff --git a/agent/consul/acl_client.go b/agent/consul/acl_client.go index 36f3f19a7..2378776c8 100644 --- a/agent/consul/acl_client.go +++ b/agent/consul/acl_client.go @@ -5,7 +5,7 @@ import ( "github.com/hashicorp/consul/agent/structs" ) -var clientACLCacheConfig *structs.ACLCachesConfig = &structs.ACLCachesConfig{ +var clientACLCacheConfig = &structs.ACLCachesConfig{ // The ACL cache configuration on client agents is more conservative than // on the servers. It is assumed that individual client agents will have // fewer distinct identities accessing the client than a server would @@ -23,23 +23,28 @@ var clientACLCacheConfig *structs.ACLCachesConfig = &structs.ACLCachesConfig{ Roles: 128, } -func (c *Client) ACLDatacenter() string { - // For resolution running on clients, servers within the current datacenter +type clientACLResolverBackend struct { + // TODO: un-embed + *Client +} + +func (c *clientACLResolverBackend) ACLDatacenter() string { + // For resolution running on clients servers within the current datacenter // must be queried first to pick up local tokens. return c.config.Datacenter } -func (c *Client) ResolveIdentityFromToken(token string) (bool, structs.ACLIdentity, error) { +func (c *clientACLResolverBackend) ResolveIdentityFromToken(token string) (bool, structs.ACLIdentity, error) { // clients do no local identity resolution at the moment return false, nil, nil } -func (c *Client) ResolvePolicyFromID(policyID string) (bool, *structs.ACLPolicy, error) { +func (c *clientACLResolverBackend) ResolvePolicyFromID(policyID string) (bool, *structs.ACLPolicy, error) { // clients do no local policy resolution at the moment return false, nil, nil } -func (c *Client) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error) { +func (c *clientACLResolverBackend) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error) { // clients do no local role resolution at the moment return false, nil, nil } diff --git a/agent/consul/acl_server.go b/agent/consul/acl_server.go index f16b1cc86..497b347d7 100644 --- a/agent/consul/acl_server.go +++ b/agent/consul/acl_server.go @@ -100,9 +100,14 @@ func (s *Server) LocalTokensEnabled() bool { return true } -func (s *Server) ACLDatacenter() string { - // For resolution running on servers the only option - // is to contact the configured ACL Datacenter +type serverACLResolverBackend struct { + // TODO: un-embed + *Server +} + +func (s *serverACLResolverBackend) ACLDatacenter() string { + // For resolution running on servers the only option is to contact the + // configured ACL Datacenter if s.config.PrimaryDatacenter != "" { return s.config.PrimaryDatacenter } @@ -114,6 +119,7 @@ func (s *Server) ACLDatacenter() string { } // ResolveIdentityFromToken retrieves a token's full identity given its secretID. +// TODO: why does some code call this directly instead of using ACLResolver.ResolveTokenToIdentity ? func (s *Server) ResolveIdentityFromToken(token string) (bool, structs.ACLIdentity, error) { // only allow remote RPC resolution when token replication is off and // when not in the ACL datacenter @@ -131,7 +137,7 @@ func (s *Server) ResolveIdentityFromToken(token string) (bool, structs.ACLIdenti return s.InPrimaryDatacenter() || index > 0, nil, acl.ErrNotFound } -func (s *Server) ResolvePolicyFromID(policyID string) (bool, *structs.ACLPolicy, error) { +func (s *serverACLResolverBackend) ResolvePolicyFromID(policyID string) (bool, *structs.ACLPolicy, error) { index, policy, err := s.fsm.State().ACLPolicyGetByID(nil, policyID, nil) if err != nil { return true, nil, err @@ -145,7 +151,7 @@ func (s *Server) ResolvePolicyFromID(policyID string) (bool, *structs.ACLPolicy, return s.InPrimaryDatacenter() || index > 0, policy, acl.ErrNotFound } -func (s *Server) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error) { +func (s *serverACLResolverBackend) ResolveRoleFromID(roleID string) (bool, *structs.ACLRole, error) { index, role, err := s.fsm.State().ACLRoleGetByID(nil, roleID, nil) if err != nil { return true, nil, err diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index d45b1e197..ee328039b 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -715,7 +715,7 @@ func newTestACLResolver(t *testing.T, delegate *ACLResolverTestDelegate, cb func Roles: 4, }, DisableDuration: aclClientDisabledTTL, - Delegate: delegate, + Backend: delegate, } if cb != nil { diff --git a/agent/consul/client.go b/agent/consul/client.go index 999f98663..369595bc0 100644 --- a/agent/consul/client.go +++ b/agent/consul/client.go @@ -119,7 +119,7 @@ func NewClient(config *Config, deps Deps) (*Client, error) { aclConfig := ACLResolverConfig{ Config: config.ACLResolverSettings, - Delegate: c, + Backend: &clientACLResolverBackend{Client: c}, Logger: c.logger, DisableDuration: aclClientDisabledTTL, CacheConfig: clientACLCacheConfig, diff --git a/agent/consul/replication.go b/agent/consul/replication.go index 4b6f74c5c..d4d449aa1 100644 --- a/agent/consul/replication.go +++ b/agent/consul/replication.go @@ -110,7 +110,7 @@ func NewReplicator(config *ReplicatorConfig) (*Replicator, error) { return nil, fmt.Errorf("Cannot create the Replicator without a config") } if config.Delegate == nil { - return nil, fmt.Errorf("Cannot create the Replicator without a Delegate set in the config") + return nil, fmt.Errorf("Cannot create the Replicator without a Backend set in the config") } if config.Logger == nil { logger := hclog.New(&hclog.LoggerOptions{}) diff --git a/agent/consul/server.go b/agent/consul/server.go index e076af721..a3a9b75ca 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -450,7 +450,7 @@ func NewServer(config *Config, flat Deps) (*Server, error) { s.aclConfig = newACLConfig(partitionInfo, logger) aclConfig := ACLResolverConfig{ Config: config.ACLResolverSettings, - Delegate: s, + Backend: &serverACLResolverBackend{Server: s}, CacheConfig: serverACLCacheConfig, Logger: logger, ACLConfig: s.aclConfig, From 74dc9925cc55102a07b1426be2fb3971635c35f7 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 1 Dec 2021 13:40:41 -0500 Subject: [PATCH 334/404] Apply suggestions from code review Co-authored-by: Chris S. Kim --- agent/consul/acl.go | 2 +- agent/consul/replication.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/agent/consul/acl.go b/agent/consul/acl.go index 4e8c88538..ee0a1704e 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -301,7 +301,7 @@ func NewACLResolver(config *ACLResolverConfig) (*ACLResolver, error) { return nil, fmt.Errorf("ACL Resolver must be initialized with a config") } if config.Backend == nil { - return nil, fmt.Errorf("ACL Resolver must be initialized with a valid delegate") + return nil, fmt.Errorf("ACL Resolver must be initialized with a valid backend") } if config.Logger == nil { diff --git a/agent/consul/replication.go b/agent/consul/replication.go index d4d449aa1..4b6f74c5c 100644 --- a/agent/consul/replication.go +++ b/agent/consul/replication.go @@ -110,7 +110,7 @@ func NewReplicator(config *ReplicatorConfig) (*Replicator, error) { return nil, fmt.Errorf("Cannot create the Replicator without a config") } if config.Delegate == nil { - return nil, fmt.Errorf("Cannot create the Replicator without a Backend set in the config") + return nil, fmt.Errorf("Cannot create the Replicator without a Delegate set in the config") } if config.Logger == nil { logger := hclog.New(&hclog.LoggerOptions{}) From a5471ae90a7f40def06720b3ec8af35a29e2ae2a Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 26 Jan 2022 09:32:47 -0800 Subject: [PATCH 335/404] fixed formattting issues --- website/content/docs/api-gateway.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index e1ec5cc67..9a8168a2d 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -50,9 +50,9 @@ $ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml The following components will be installed: -- Gateway controller -- CRDs required by the Kubernetes Gateway API specification -- `kustomize` manifests for completing the installation + - Gateway controller + - CRDs required by the Kubernetes Gateway API specification + - `kustomize` manifests for completing the installation 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. From 1b8bcbc100190b97ab2da926f79298ad11810650 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 26 Jan 2022 09:44:32 -0800 Subject: [PATCH 336/404] trying to fix persistent formatting problems --- website/content/docs/api-gateway.mdx | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 9a8168a2d..38d48c725 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -28,27 +28,27 @@ Your datacenter must meet the following requirements prior to configuring the Co -```yaml -global: - name: consul - image: 'hashicorp/consul:1.11.2' - tls: + ```yaml + global: + name: consul + image: 'hashicorp/consul:1.11.2' + tls: + enabled: true + connectInject: enabled: true -connectInject: - enabled: true -controller: - enabled: true -``` + controller: + enabled: true + ``` 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. -```shell-session -$ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml -``` + ```shell-session + $ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml + ``` -The following components will be installed: + The following components will be installed: - Gateway controller - CRDs required by the Kubernetes Gateway API specification From 42d6c61b625d3bbbb74ec8c2f965ea5a63229ed2 Mon Sep 17 00:00:00 2001 From: Dao Thanh Tung Date: Thu, 27 Jan 2022 02:12:42 +0800 Subject: [PATCH 337/404] URL-encode/decode resource names for HTTP API part 3 (#12103) --- agent/event_endpoint.go | 7 +++++-- agent/federation_state_endpoint.go | 6 ++++-- agent/health_endpoint.go | 6 +++++- agent/intentions_endpoint.go | 5 ++++- agent/kvs_endpoint.go | 7 +++++-- agent/prepared_query_endpoint.go | 5 ++++- agent/session_endpoint.go | 25 ++++++++++++++++++++----- 7 files changed, 47 insertions(+), 14 deletions(-) diff --git a/agent/event_endpoint.go b/agent/event_endpoint.go index eb6561a1b..10421d620 100644 --- a/agent/event_endpoint.go +++ b/agent/event_endpoint.go @@ -6,7 +6,6 @@ import ( "io" "net/http" "strconv" - "strings" "time" "github.com/hashicorp/consul/acl" @@ -21,7 +20,11 @@ func (s *HTTPHandlers) EventFire(resp http.ResponseWriter, req *http.Request) (i s.parseDC(req, &dc) event := &UserEvent{} - event.Name = strings.TrimPrefix(req.URL.Path, "/v1/event/fire/") + var err error + event.Name, err = getPathSuffixUnescaped(req.URL.Path, "/v1/event/fire/") + if err != nil { + return nil, err + } if event.Name == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing name") diff --git a/agent/federation_state_endpoint.go b/agent/federation_state_endpoint.go index ef807adfa..94b7a7cdd 100644 --- a/agent/federation_state_endpoint.go +++ b/agent/federation_state_endpoint.go @@ -2,14 +2,16 @@ package agent import ( "net/http" - "strings" "github.com/hashicorp/consul/agent/structs" ) // GET /v1/internal/federation-state/ func (s *HTTPHandlers) FederationStateGet(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - datacenterName := strings.TrimPrefix(req.URL.Path, "/v1/internal/federation-state/") + datacenterName, err := getPathSuffixUnescaped(req.URL.Path, "/v1/internal/federation-state/") + if err != nil { + return nil, err + } if datacenterName == "" { return nil, BadRequestError{Reason: "Missing datacenter name"} } diff --git a/agent/health_endpoint.go b/agent/health_endpoint.go index d47252626..f6e803a3c 100644 --- a/agent/health_endpoint.go +++ b/agent/health_endpoint.go @@ -30,7 +30,11 @@ func (s *HTTPHandlers) HealthChecksInState(resp http.ResponseWriter, req *http.R } // Pull out the service name - args.State = strings.TrimPrefix(req.URL.Path, "/v1/health/state/") + var err error + args.State, err = getPathSuffixUnescaped(req.URL.Path, "/v1/health/state/") + if err != nil { + return nil, err + } if args.State == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing check state") diff --git a/agent/intentions_endpoint.go b/agent/intentions_endpoint.go index 8a8456721..2bb55b7f4 100644 --- a/agent/intentions_endpoint.go +++ b/agent/intentions_endpoint.go @@ -486,7 +486,10 @@ func parseIntentionStringComponent(input string, entMeta *structs.EnterpriseMeta // IntentionSpecific handles the endpoint for /v1/connect/intentions/:id. // Deprecated: use IntentionExact. func (s *HTTPHandlers) IntentionSpecific(resp http.ResponseWriter, req *http.Request) (interface{}, error) { - id := strings.TrimPrefix(req.URL.Path, "/v1/connect/intentions/") + id, err := getPathSuffixUnescaped(req.URL.Path, "/v1/connect/intentions/") + if err != nil { + return nil, err + } switch req.Method { case "GET": diff --git a/agent/kvs_endpoint.go b/agent/kvs_endpoint.go index 6534718d2..b6bed301b 100644 --- a/agent/kvs_endpoint.go +++ b/agent/kvs_endpoint.go @@ -6,7 +6,6 @@ import ( "io" "net/http" "strconv" - "strings" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" @@ -20,7 +19,11 @@ func (s *HTTPHandlers) KVSEndpoint(resp http.ResponseWriter, req *http.Request) } // Pull out the key name, validation left to each sub-handler - args.Key = strings.TrimPrefix(req.URL.Path, "/v1/kv/") + var err error + args.Key, err = getPathSuffixUnescaped(req.URL.Path, "/v1/kv/") + if err != nil { + return nil, err + } // Check for a key list keyList := false diff --git a/agent/prepared_query_endpoint.go b/agent/prepared_query_endpoint.go index 023119e4c..31e900288 100644 --- a/agent/prepared_query_endpoint.go +++ b/agent/prepared_query_endpoint.go @@ -319,7 +319,10 @@ func (s *HTTPHandlers) PreparedQuerySpecific(resp http.ResponseWriter, req *http } path := req.URL.Path - id := strings.TrimPrefix(path, "/v1/query/") + id, err := getPathSuffixUnescaped(path, "/v1/query/") + if err != nil { + return nil, err + } switch { case strings.HasSuffix(path, "/execute"): diff --git a/agent/session_endpoint.go b/agent/session_endpoint.go index 97ff995b7..9371bf741 100644 --- a/agent/session_endpoint.go +++ b/agent/session_endpoint.go @@ -3,7 +3,6 @@ package agent import ( "fmt" "net/http" - "strings" "time" "github.com/hashicorp/consul/agent/structs" @@ -72,7 +71,11 @@ func (s *HTTPHandlers) SessionDestroy(resp http.ResponseWriter, req *http.Reques } // Pull out the session id - args.Session.ID = strings.TrimPrefix(req.URL.Path, "/v1/session/destroy/") + var err error + args.Session.ID, err = getPathSuffixUnescaped(req.URL.Path, "/v1/session/destroy/") + if err != nil { + return nil, err + } if args.Session.ID == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing session") @@ -97,7 +100,11 @@ func (s *HTTPHandlers) SessionRenew(resp http.ResponseWriter, req *http.Request) } // Pull out the session id - args.SessionID = strings.TrimPrefix(req.URL.Path, "/v1/session/renew/") + var err error + args.SessionID, err = getPathSuffixUnescaped(req.URL.Path, "/v1/session/renew/") + if err != nil { + return nil, err + } args.Session = args.SessionID if args.SessionID == "" { resp.WriteHeader(http.StatusBadRequest) @@ -128,7 +135,11 @@ func (s *HTTPHandlers) SessionGet(resp http.ResponseWriter, req *http.Request) ( } // Pull out the session id - args.SessionID = strings.TrimPrefix(req.URL.Path, "/v1/session/info/") + var err error + args.SessionID, err = getPathSuffixUnescaped(req.URL.Path, "/v1/session/info/") + if err != nil { + return nil, err + } args.Session = args.SessionID if args.SessionID == "" { resp.WriteHeader(http.StatusBadRequest) @@ -183,7 +194,11 @@ func (s *HTTPHandlers) SessionsForNode(resp http.ResponseWriter, req *http.Reque } // Pull out the node name - args.Node = strings.TrimPrefix(req.URL.Path, "/v1/session/node/") + var err error + args.Node, err = getPathSuffixUnescaped(req.URL.Path, "/v1/session/node/") + if err != nil { + return nil, err + } if args.Node == "" { resp.WriteHeader(http.StatusBadRequest) fmt.Fprint(resp, "Missing node name") From 3a2d1dfccb1cba1767b7da8e9b8b8d085d9ea0b3 Mon Sep 17 00:00:00 2001 From: David Yu Date: Wed, 26 Jan 2022 10:18:31 -0800 Subject: [PATCH 338/404] docs: iptables for TProxy requirement (#12180) * docs: iptables Add iptables requirement * Update website/content/docs/connect/transparent-proxy.mdx Co-authored-by: Kyle Schochenmaier Co-authored-by: Kyle Schochenmaier --- website/content/docs/connect/transparent-proxy.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/website/content/docs/connect/transparent-proxy.mdx b/website/content/docs/connect/transparent-proxy.mdx index ee8aa1211..54c672a9b 100644 --- a/website/content/docs/connect/transparent-proxy.mdx +++ b/website/content/docs/connect/transparent-proxy.mdx @@ -33,6 +33,7 @@ the traffic redirection command is automatically set up via an init container. * To use transparent proxy on Kubernetes, Consul-helm >= `0.32.0` and Consul-k8s >= `0.26.0` are required in addition to Consul >= `1.10.0`. * If the default policy for ACLs is "deny", then Service Intentions should be set up to allow intended services to connect to each other. Otherwise, all Connect services can talk to all other services. +* If using Transparent Proxy, all worker nodes within a Kubernetes cluster must have the `ip_tables` kernel module running, e.g. `modprobe ip_tables`. The Kubernetes integration takes care of registering Kubernetes services with Consul, injecting a sidecar proxy, and enabling traffic redirection. From 0eb453ce17b12a48cee7c5ab157f348eecc3f2c7 Mon Sep 17 00:00:00 2001 From: Luke Kysow <1034429+lkysow@users.noreply.github.com> Date: Wed, 26 Jan 2022 10:39:33 -0800 Subject: [PATCH 339/404] Update distributed-tracing.mdx with caveat on 128 bit IDs (#12196) * Update distributed-tracing.mdx --- .../docs/connect/distributed-tracing.mdx | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/website/content/docs/connect/distributed-tracing.mdx b/website/content/docs/connect/distributed-tracing.mdx index cabdf92b3..2098fb5ed 100644 --- a/website/content/docs/connect/distributed-tracing.mdx +++ b/website/content/docs/connect/distributed-tracing.mdx @@ -238,3 +238,25 @@ config to take effect. Envoy not yet having support. 1. Tracing is only supported with Envoy proxies, not the built-in proxy. + +1. When configuring the Zipkin tracer in `envoy_tracing_json`, set [`trace_id_128bit`](https://www.envoyproxy.io/docs/envoy/v1.21.0/api-v3/config/trace/v3/zipkin.proto#envoy-v3-api-field-config-trace-v3-zipkinconfig-trace-id-128bit) to `true` if your application is configured to generate 128-bit trace IDs. For example: + + + + ```json + { + "http": { + "name": "envoy.tracers.zipkin", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.trace.v3.ZipkinConfig", + "collector_cluster": "zipkin", + "collector_endpoint_version": "HTTP_JSON", + "collector_endpoint": "/api/v2/spans", + "shared_span_context": false, + "trace_id_128bit": true + } + } + } + ``` + + From d221bc776783ab3a75a8c4140a540bd1182189f0 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Wed, 26 Jan 2022 13:01:57 -0800 Subject: [PATCH 340/404] docs: Clarify docs for providing multiple join addresses Rephrase the comment about specifying multiple join addresses to clarify that it pertains to joining a single cluster by attempting to contact one or more nodes. --- website/content/commands/join.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/content/commands/join.mdx b/website/content/commands/join.mdx index 218419135..2186e67e8 100644 --- a/website/content/commands/join.mdx +++ b/website/content/commands/join.mdx @@ -34,9 +34,9 @@ are not supported from commands, but may be from the corresponding HTTP endpoint Usage: `consul join [options] address ...` -You may call join with multiple addresses if you want to try to join -multiple clusters. Consul will attempt to join all addresses, and the join -command will fail only if Consul was unable to join with any. +You may call `join` with multiple addresses if you want attempt to join the cluster +through multiple nodes. Consul will attempt to join all addresses. The join +command will fail only if Consul was unable to join any of the specified addresses. #### API Options From 6fe2311ce07d2608ac85a90cfd1214dd364ffd66 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 26 Jan 2022 17:21:45 -0500 Subject: [PATCH 341/404] acl: Remove a call to aclAccessorID I missed this on the first pass, we no longer need to look up this ID, because we have it from the Authorizer. --- agent/acl.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/acl.go b/agent/acl.go index 7b92210ed..0c0334a2f 100644 --- a/agent/acl.go +++ b/agent/acl.go @@ -171,7 +171,7 @@ func (a *Agent) filterMembers(token string, members *[]serf.Member) error { if authz.NodeRead(node, &authzContext) == acl.Allow { continue } - accessorID := a.aclAccessorID(token) + accessorID := authz.AccessorID() a.logger.Debug("dropping node from result due to ACLs", "node", node, "accessorID", accessorID) m = append(m[:i], m[i+1:]...) i-- From b7f82134920c69dfa8ccce056c2f60f071361160 Mon Sep 17 00:00:00 2001 From: Luke Kysow <1034429+lkysow@users.noreply.github.com> Date: Wed, 26 Jan 2022 14:22:12 -0800 Subject: [PATCH 342/404] Update docs for new client daemonset name (#12200) --- website/content/docs/k8s/upgrade/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/docs/k8s/upgrade/index.mdx b/website/content/docs/k8s/upgrade/index.mdx index 2a2eeb67e..05eaf5bba 100644 --- a/website/content/docs/k8s/upgrade/index.mdx +++ b/website/content/docs/k8s/upgrade/index.mdx @@ -183,7 +183,7 @@ $ helm diff upgrade consul hashicorp/consul --version 0.24.1 --values /path/to/y grep "has changed" ``` -1. Take specific note if `consul, DaemonSet` or `consul-server, StatefulSet` are listed. +1. Take specific note if `consul-client, DaemonSet` or `consul-server, StatefulSet` are listed. This means that your Consul client daemonset or Consul server statefulset (or both) will be redeployed. If either is being redeployed, we will follow the same pattern for upgrades as From dd7f0b72738246944ecf23c1aa38002416561d2e Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 26 Jan 2022 15:11:40 -0800 Subject: [PATCH 343/404] added more complete spec info and applied feedback --- website/content/docs/api-gateway.mdx | 153 ++++++++++++++------------- 1 file changed, 81 insertions(+), 72 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 38d48c725..11cdf3355 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -28,27 +28,27 @@ Your datacenter must meet the following requirements prior to configuring the Co - ```yaml - global: - name: consul - image: 'hashicorp/consul:1.11.2' - tls: - enabled: true - connectInject: +```yaml +global: + name: consul + image: 'hashicorp/consul:1.11.2' + tls: enabled: true - controller: - enabled: true - ``` +connectInject: + enabled: true +controller: + enabled: true +``` 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. - ```shell-session - $ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml - ``` +```shell-session +$ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml +``` - The following components will be installed: +The following components will be installed: - Gateway controller - CRDs required by the Kubernetes Gateway API specification @@ -125,53 +125,16 @@ consul-api-gateway 0.1.0 Configure the following artifacts to facilitate ingress into your Consul service mesh: -- [Gateway](#gateway): Defines the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners`. -- [GatewayClass](#gatewayclass): Defines a class of gateway resources that you can use as a template for creating gateways. - [GatewayClassConfig](#gatewayclassconfig): Describes additional Consul API Gatway-related configuration parameters for the `GatewayClass` resource. -- [Listeners](#listeners): Defines listener properties, such as protocol, port, and namespace. +- [GatewayClass](#gatewayclass): Defines a class of gateway resources that you can use as a template for creating gateways. +- [Gateway](#gateway): Defines the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners` (see [Listeners](#listeners)), which specify the logical endpoints bound to the gateway's addresses. - [Routes](#routes): Specifies the path from the client to the listener. -### Gateway - -The gateway configuration is the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners`. - -Add the `kind: Gateway` option to the configuration file to declare a gateway. -The following example creates a gateway called `example-gateway`. -The gateway is based on the `test-gateway-class` and includes a listener called `https` (see [Listeners](#listeners) for details about the `listener` configuration). - - - -```yaml -apiVersion: gateway.networking.k8s.io/v1alpha2 -kind: Gateway -metadata: - name: example-gateway - annotations: - 'external-dns.alpha.kubernetes.io/hostname': DNS_HOSTNAME -spec: - gatewayClassName: test-gateway-class - listeners: - - protocol: HTTPS - hostname: DNS_HOSTNAME - port: 443 - name: https - allowedRoutes: - namespaces: - from: Same - tls: - certificateRefs: - - name: gateway-production-certificate -``` - - - -Refer to the Kubernetes Gateway API documentation for details about configuring gateways: - - ### GatewayClass The `GatewayClass` resource is used as a template for creating `Gateway` resources. The specification includes the name of the controller (`controllerName`) and an API object containing controller-specific configuration resource within the cluster (`parametersRef`). +The value of the `controllerName` field must be set to `hashicorp.com/consul-api-gateway-controller`. When gateways are created from a `GatewayClass`, they use the parameters specified in the `GatewayClass` at the time of instantiation. If you want to propagate changes made to the `GatewayClass` after gateways have been created, then the implementation must document this behavior. @@ -216,10 +179,10 @@ metadata: name: test-gateway-class-config spec: useHostPorts: true - logLevel: trace + logLevel: 'trace' consul: - scheme: https - caSecret: consul-ca-cert + scheme: 'https' + caSecret: 'consul-ca-cert' ports: http: 8501 grpc: 8502 @@ -229,23 +192,65 @@ spec: The following table describes the required parameters for the `spec` array: -| Parameter | Description | Type | Default | -| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | ------- | -| `useHostPorts` | Enables the gateway to use the host ports | Boolean | `true` | -| `logLevel` | Specifies the error reporting level for logs. You can specify the following values: `FATAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`, `TRACE`, `ALL`, `OFF` | String | `trace` | -| `consul` | Specifies ingress properties for Consul. See [Consul Configuration](#consul-configuration) | Array | N/A | +| Parameter | Description | Type | Default | +| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | ------------------------------------------------ | +| `consul.address` | Specifies the address of the Consul server to communicate with in the gateway pod. If unspecified, the pod will attempt to use a local agent on the host on which the pod is running. | String | N/A | +| `consul.authentication.account` | Specifies the Kubernetes service account to use for authentication. | String | N/A | +| `consul.authentication.managed` | Set to `true` to enable deployments to run with managed service accounts created by the gateway controller. The `consul.authentication.account` field is ignored when this option is enabled. | Boolean | `false` | +| `consul.authentication.method` | Specifies the Consul auth method used for initial authentication by Consul API Gateway. | String | N/A | +| `consul.authentication.namespace` | Specifies the Consul namespace to use for authentication. | String | N/A | +| `consul.ports.grpc` | Specifies the gRPC port for Consul's xDS server. | Integer | `8502` | +| `consul.ports.http` | Specifies the port for Consul's HTTP server. | Integer | `8500` | +| `consul.scheme` | Specifies the scheme to use for connecting to Consul. The supported values are `"http"` and `"https"`. | String | `"http"` | +| `copyAnnotations.service` | List of annotations to copy to the gateway service. | Array | `["external-dns.alpha.kubernetes.io/hostname"]` | +| `image.consulAPIGateway` | The image to use for consul-api-gateway. | String | `"hashicorp/consul-api-gateway:RELEASE_VERSION"` | +| `image.envoy` | Specifies the container image to use for Envoy. | String | `"envoyproxy/envoy:v1.19-latest"` | +| `logLevel` | Specifies the error reporting level for logs. You can specify the following values: `FATAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`, `TRACE`, `ALL`, `OFF` | String | `"info"` | +| `nodeSelector` | Specifies a set of parameters that constrain the nodes on which the pod can run. Defining nodes with the `nodeSelector` enables the pod to fit on a node. The selector must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | Object | N/A | +| `serviceType` | Sepcifies the ingress methods for a service. The following values are supported:
      `ClusterIP`
      `NodePort`
      `LoadBalancer` | String | N/A | +| `useHostPorts` | If set to `true`, then the Envoy container ports are mapped to host ports. | Boolean | `false` | -#### Consul Configuration +Refer to the Consul API Gateway repository for the complete specification: + -The following table describes the parameters available for the `consul` element of the `GatewayClassConfiguration`: +### Gateway -| Parameter | Description | Type | Default | -| ---------- | ------------------------------------------------------------- | ------ | ------------------------------- | -| `scheme` | Specifies the message protocol. | String | `http` | -| `caSecret` | Specifies the name of the CA secret. | String | none | -| `ports` | Specifies which ports to use for API and application traffic. | Array | `http: 8501`
      `grpc: 8502` | +The gateway configuration is the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners`. -### Listeners +Add the `kind: Gateway` option to the configuration file to declare a gateway. +The following example creates a gateway called `example-gateway`. +The gateway is based on the `test-gateway-class` and includes a listener called `https` (see [Listeners](#listeners) for details about the `listener` configuration). + + + +```yaml +apiVersion: gateway.networking.k8s.io/v1alpha2 +kind: Gateway +metadata: + name: example-gateway + annotations: + 'external-dns.alpha.kubernetes.io/hostname': DNS_HOSTNAME +spec: + gatewayClassName: test-gateway-class + listeners: + - protocol: HTTPS + hostname: DNS_HOSTNAME + port: 443 + name: https + allowedRoutes: + namespaces: + from: Same + tls: + certificateRefs: + - name: gateway-production-certificate +``` + + + +Refer to the Kubernetes Gateway API documentation for details about configuring gateways: + + +#### Listeners Listeners are the logical endpoints bound to the gateway's addresses. Add the `listener` object to the `gateway` configuration and specify the following properties to define a listener: @@ -257,14 +262,16 @@ Add the `listener` object to the `gateway` configuration and specify the followi Refer to the Kubernetes Gateway API documentation for details about configuring listeners: -In the example included the [Gateway](#gateway) description, a listener named `https` that listens over `HTTPS` is configured to listen on port `443` - ### Route Routes are independent configuration objects that are associated with specific listeners. + Use the `kind: HTTPRoute` option to declare a route and use the `spec` option to specify the route details. + The following example creates a route named `example-route` associated with a listener defined in `example-gateway`. + + ```yaml apiVersion: gateway.networking.k8s.io/v1alpha2 kind: HTTPRoute @@ -279,3 +286,5 @@ spec: name: echo port: 8080 ``` + + From 6c9470c47819ce69e3b3b485cdb7773bbd160206 Mon Sep 17 00:00:00 2001 From: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> Date: Wed, 26 Jan 2022 15:16:22 -0800 Subject: [PATCH 344/404] Apply suggestions from code review Adding content and feedback from @mikemorris Co-authored-by: Mike Morris --- website/content/docs/api-gateway.mdx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 11cdf3355..79c5ba32d 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -10,9 +10,9 @@ This topic describes how to use the Consul API Gateway add-on module, which help ## Introduction -Consul API Gateway is an implementation of the Kubernetes Gateway [API Specification](https://gateway-api.sigs.k8s.io/). This specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes based on the path or protocol of a client request. Consul API Gateway solves two primary use cases: +Consul API Gateway is an implementation of the Kubernetes [Gateway API Specification](https://gateway-api.sigs.k8s.io/). This specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes based on the path or protocol of a client request. Consul API Gateway solves two primary use cases: -- **Controlling access at the point entry**: Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g., VeriSign, Let’sEncrypt). +- **Controlling access at the point of entry**: Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g., VeriSign, Let’sEncrypt). - **Simplifying traffic management**: The Consul API Gateway can load balance requests across services and route traffic to the appropriate service based on matching one or more criteria, such as hostname, path, header presence or value, and HTTP Method type (e.g., GET, POST, PATCH). ## Requirements @@ -137,8 +137,6 @@ The specification includes the name of the controller (`controllerName`) and an The value of the `controllerName` field must be set to `hashicorp.com/consul-api-gateway-controller`. When gateways are created from a `GatewayClass`, they use the parameters specified in the `GatewayClass` at the time of instantiation. -If you want to propagate changes made to the `GatewayClass` after gateways have been created, then the implementation must document this behavior. -The `gateway-exists-finalizer.gateway.networking.k8s.io` finalizer must also be added to a `GatewayClass` to ensure that a `GatewayClass` associated with a `Gateway` is not deleted while in use. Add the `kind: GatewayClass` option to the the gateway values file to declare a gateway class. The following example creates a gateway class called `test-gateway-class`. @@ -258,6 +256,13 @@ Add the `listener` object to the `gateway` configuration and specify the followi - `hostname`: Hostname specifies the virtual hostname to match for protocol types. - `port`: Specifies the network port. - `protocol`: Specifies the network protocol expected by the listener. +- `tls` [`GatewayTLSConfig`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.GatewayTLSConfig) + - `mode` [`TLSModeType`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.TLSModeType): Defaults to `Terminate` if unspecified, `Passthrough` is not yet supported. + - `certificateRefs` [`[]*SecretObjectReference`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.SecretObjectReference): Used for Envoy SDS (Secret Discovery Service) to support terminating TLS. + - `options`: Key/value pairs to enable implementation-specific extended TLS configuration. Consul API Gateway supports the following options: + - `"api-gateway.consul.hashicorp.com/tls_min_version"`: Set the minimum TLS version supported for this listener. Allowed values are `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, `TLSv1_3`. If unspecified, Consul API Gateway will default to TLS 1.2. + - `"api-gateway.consul.hashicorp.com/tls_max_version"`: Set the maximum TLS version supported for this listener. Must be greater than or equal to `TLSMinVersion`. Allowed values are `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Consul API Gateway will use Envoy's current default of TLS 1.3. + - `"api-gateway.consul.hashicorp.com/tls_cipher_suites"`: Set the list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. If unspecified, Consul API Gateway will set a [more secure set of cipher suites](https://github.com/hashicorp/consul-api-gateway/blob/main/internal/common/tls.go#L3-L10) than Envoy's current [default server cipher list](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto#envoy-v3-api-field-extensions-transport-sockets-tls-v3-tlsparameters-cipher-suites). The full list of supported cipher suites can seen in [`internal/common/tls.go`](https://github.com/hashicorp/consul-api-gateway/blob/main/internal/common/tls.go) and is dependent on underlying support in Envoy. Future releases of Envoy may remove currently-supported but insecure cipher suites, and future releases of Consul API Gateway may add new supported cipher suites if any are added to Envoy. Refer to the Kubernetes Gateway API documentation for details about configuring listeners: From 465f3c7cfdf1e9027bff249b1a3858f939cbec3b Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Wed, 26 Jan 2022 16:04:24 -0800 Subject: [PATCH 345/404] integrated TLS info --- website/content/docs/api-gateway.mdx | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 79c5ba32d..5cddea611 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -253,16 +253,18 @@ Refer to the Kubernetes Gateway API documentation for details about configuring Listeners are the logical endpoints bound to the gateway's addresses. Add the `listener` object to the `gateway` configuration and specify the following properties to define a listener: -- `hostname`: Hostname specifies the virtual hostname to match for protocol types. -- `port`: Specifies the network port. -- `protocol`: Specifies the network protocol expected by the listener. -- `tls` [`GatewayTLSConfig`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.GatewayTLSConfig) - - `mode` [`TLSModeType`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.TLSModeType): Defaults to `Terminate` if unspecified, `Passthrough` is not yet supported. - - `certificateRefs` [`[]*SecretObjectReference`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.SecretObjectReference): Used for Envoy SDS (Secret Discovery Service) to support terminating TLS. - - `options`: Key/value pairs to enable implementation-specific extended TLS configuration. Consul API Gateway supports the following options: - - `"api-gateway.consul.hashicorp.com/tls_min_version"`: Set the minimum TLS version supported for this listener. Allowed values are `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, `TLSv1_3`. If unspecified, Consul API Gateway will default to TLS 1.2. - - `"api-gateway.consul.hashicorp.com/tls_max_version"`: Set the maximum TLS version supported for this listener. Must be greater than or equal to `TLSMinVersion`. Allowed values are `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, or `TLSv1_3`. If unspecified, Consul API Gateway will use Envoy's current default of TLS 1.3. - - `"api-gateway.consul.hashicorp.com/tls_cipher_suites"`: Set the list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier. If unspecified, Consul API Gateway will set a [more secure set of cipher suites](https://github.com/hashicorp/consul-api-gateway/blob/main/internal/common/tls.go#L3-L10) than Envoy's current [default server cipher list](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto#envoy-v3-api-field-extensions-transport-sockets-tls-v3-tlsparameters-cipher-suites). The full list of supported cipher suites can seen in [`internal/common/tls.go`](https://github.com/hashicorp/consul-api-gateway/blob/main/internal/common/tls.go) and is dependent on underlying support in Envoy. Future releases of Envoy may remove currently-supported but insecure cipher suites, and future releases of Consul API Gateway may add new supported cipher suites if any are added to Envoy. +| Parameter | Description | Type | Default | +| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | --------------- | +| `hostname` | Specifies the virtual hostname to match for protocol types. | String | none | +| `port` | Specifies the network port number. | Integer | none | +| `protocol` | Specifies the network protocol expected by the listener. | String | `http` | +| `tls` | Collection of parameters that specify TLS options for the listener. Refer to the [`GatewayTLSConfig`](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.GatewayTLSConfig) documentation for additional information about configuring TLS. | Object | N/A | +| `tls.mode` | Specifies a mode for operating Consul API Gateway listeners over TLS.
      You can only specify the `Terminate` mode, which configures the TLS session between the downstream client and the gateway to terminate at the gateway.
      Refer to the [`TLSModeType` documentation](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.TLSModeType) for additional information. | String | `Terminate` | +| `tls.certificateRefs` | Specifies the name of secret object used for Envoy SDS (Secret Discovery Service) to support terminating TLS. Refer to the [`[]*SecretObjectReference` documentation](https://gateway-api.sigs.k8s.io/v1alpha2/references/spec/#gateway.networking.k8s.io/v1alpha2.SecretObjectReference) for additional information. | String | N/A | +| `tls.options` | Specifies key/value pairs to enable extended TLS configuration specific to an implementation. | Object | N/A | +| `tls.options.tls_min_version` | Specifies the minimum TLS version supported for the listener. The following values are supported: `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, `TLSv1_3`. | String | `TLS 1.2` | +| `tls.options.tls_max_version"` | Specifies the maximum TLS version supported for the listener. The specified version must be greater than or equal to `TLSMinVersion`. The following values are supported: `TLS_AUTO`, `TLSv1_0`, `TLSv1_1`, `TLSv1_2`, `TLSv1_3`. | String | `TLS 1.3` | +| `tls.options.tls_cipher_suites` | Specifies the list of TLS cipher suites to support when negotiating connections using TLS 1.2 or earlier.
      If unspecified, a [more secure set of cipher suites](https://github.com/hashicorp/consul-api-gateway/blob/main/internal/common/tls.go#L3-L10) than Envoy's current [default server cipher list](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto#envoy-v3-api-field-extensions-transport-sockets-tls-v3-tlsparameters-cipher-suites) will be used.
      The full list of supported cipher suites can seen in [`internal/common/tls.go`](https://github.com/hashicorp/consul-api-gateway/blob/main/internal/common/tls.go) and is dependent on underlying support in Envoy. | String | See description | Refer to the Kubernetes Gateway API documentation for details about configuring listeners: From a8466a874c4d77758fd30d567461160a509938e3 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Thu, 27 Jan 2022 11:21:12 +0000 Subject: [PATCH 346/404] ui: class-map helper (#12202) {{class-map}} is used to easily add a list of classes, conditionally, and have them all formatted nicely ready to be printed in a DOM class attribute. For ease, as well as using entries, you can also just provide a simple string without the boolean and that class will always be added. --- .../consul-ui/app/helpers/class-map.js | 17 +++++++ .../consul-ui/app/helpers/class-map.mdx | 45 +++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 ui/packages/consul-ui/app/helpers/class-map.js create mode 100644 ui/packages/consul-ui/app/helpers/class-map.mdx diff --git a/ui/packages/consul-ui/app/helpers/class-map.js b/ui/packages/consul-ui/app/helpers/class-map.js new file mode 100644 index 000000000..c698dd7a6 --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/class-map.js @@ -0,0 +1,17 @@ +import { helper } from '@ember/component/helper'; + +/** + * Conditionally maps classInfos (classes) to a string ready for typical DOM + * usage (i.e. space delimited) + * + * @typedef {([string, boolean] | [string])} classInfo + * @param {(classInfo | string)[]} entries - An array of 'entry-like' arrays of `classInfo`s to map + */ +const classMap = entries => { + const str = entries + .filter(entry => (typeof entry === 'string' ? true : entry[entry.length - 1])) + .map(entry => (typeof entry === 'string' ? entry : entry[0])) + .join(' '); + return str.length > 0 ? str : undefined; +}; +export default helper(classMap); diff --git a/ui/packages/consul-ui/app/helpers/class-map.mdx b/ui/packages/consul-ui/app/helpers/class-map.mdx new file mode 100644 index 000000000..21db053f8 --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/class-map.mdx @@ -0,0 +1,45 @@ +# class-map + +`{{class-map}}` is used to easily add a list of classes, conditionally, and +have them all formatted nicely ready to be printed in a DOM `class` attribute. + +For ease, as well as using entries, you can also just provide a simple string +without the boolean and that class will always be added. + +```hbs preview-template +
      +
      + The correct classes added/omitted +
      +
      + + class="{{class-map + (array 'add-this-class' true) + (array 'dont-add-this-class' false) + 'simple-string-class' + }}" + +
      +
      +``` + +## Positional Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `entries` | `(classInfo \| string)[]` | | An array of 'entry-like' arrays of `classInfo`s to map | + +## Types + +| Type | Default | Description | +| --- | --- | --- | +| `classInfo` | `([string, boolean] \| [string])` | | + From 79b9254c1ae5094752adebf95ab6918a6ae85331 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Thu, 27 Jan 2022 11:27:38 +0000 Subject: [PATCH 347/404] ui: css-prop modifier (#12205) Get the value for a single specific CSS Property from the modified element. returns can be specified either as a second parameter or an option. --- .../consul-ui/app/modifiers/css-prop.js | 12 +++++++++ .../consul-ui/app/modifiers/css-prop.mdx | 25 +++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 ui/packages/consul-ui/app/modifiers/css-prop.js create mode 100644 ui/packages/consul-ui/app/modifiers/css-prop.mdx diff --git a/ui/packages/consul-ui/app/modifiers/css-prop.js b/ui/packages/consul-ui/app/modifiers/css-prop.js new file mode 100644 index 000000000..2b836acd1 --- /dev/null +++ b/ui/packages/consul-ui/app/modifiers/css-prop.js @@ -0,0 +1,12 @@ +import Modifier from 'ember-modifier'; +import { inject as service } from '@ember/service'; + +export default class CSSPropModifier extends Modifier { + @service('-document') doc; + didReceiveArguments() { + const params = this.args.positional; + const options = this.args.named; + const returns = params[1] || options.returns; + returns(this.doc.defaultView.getComputedStyle(this.element).getPropertyValue(params[0])); + } +} diff --git a/ui/packages/consul-ui/app/modifiers/css-prop.mdx b/ui/packages/consul-ui/app/modifiers/css-prop.mdx new file mode 100644 index 000000000..2ddf1bead --- /dev/null +++ b/ui/packages/consul-ui/app/modifiers/css-prop.mdx @@ -0,0 +1,25 @@ +# css-prop + +Get the value for a single specific CSS Property from the modified element. +`returns` can be specified either as a second parameter or an option. + +```hbs preview-template +
      + --red-500: {{this.red}} +
      +``` + +## Positional Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `property` | `string` | | The name of the CSS property to fetch from the element | +| `returns` | `function` | | Usually `set` or `mut` or similar | + +## Named Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `returns` | `function` | | See the `returns` positional argument | From f7285ed35bd6d6d7d785f27264012bc8f12e710b Mon Sep 17 00:00:00 2001 From: "Chris S. Kim" Date: Thu, 27 Jan 2022 10:59:05 -0500 Subject: [PATCH 348/404] ci: Update CI to stash changes before checkout (#12210) --- .circleci/config.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index aa5c02dd3..cb1b1a588 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -690,10 +690,15 @@ jobs: git config --local user.email "github-team-consul-core@hashicorp.com" git config --local user.name "hc-github-team-consul-core" + # stash newly built bindata_assetfs.go + git stash push + # checkout the CI branch and merge latest from main git checkout ci/main-assetfs-build git merge --no-edit main + git stash pop + short_sha=$(git rev-parse --short HEAD) git add agent/uiserver/bindata_assetfs.go git commit -m "auto-updated agent/uiserver/bindata_assetfs.go from commit ${short_sha}" From 8b4d9c3b653d76692837b45ad358b16e7fa946c2 Mon Sep 17 00:00:00 2001 From: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> Date: Thu, 27 Jan 2022 08:06:54 -0800 Subject: [PATCH 349/404] Apply suggestions from code review Thanks for catching my typos! Co-authored-by: Nathan Coleman --- website/content/docs/api-gateway.mdx | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 5cddea611..eceefb8bd 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -12,8 +12,8 @@ This topic describes how to use the Consul API Gateway add-on module, which help Consul API Gateway is an implementation of the Kubernetes [Gateway API Specification](https://gateway-api.sigs.k8s.io/). This specification defines a set of custom resource definitions (CRD) that can create logical gateways and routes based on the path or protocol of a client request. Consul API Gateway solves two primary use cases: -- **Controlling access at the point of entry**: Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g., VeriSign, Let’sEncrypt). -- **Simplifying traffic management**: The Consul API Gateway can load balance requests across services and route traffic to the appropriate service based on matching one or more criteria, such as hostname, path, header presence or value, and HTTP Method type (e.g., GET, POST, PATCH). +- **Controlling access at the point of entry**: Consul API Gateway allows users to set the protocols of external connection requests and provide clients with TLS certificates from trusted providers (e.g., Verisign, Let’s Encrypt). +- **Simplifying traffic management**: The Consul API Gateway can load balance requests across services and route traffic to the appropriate service by matching one or more criteria, such as hostname, path, header presence or value, and HTTP Method type (e.g., GET, POST, PATCH). ## Requirements @@ -54,7 +54,7 @@ The following components will be installed: - CRDs required by the Kubernetes Gateway API specification - `kustomize` manifests for completing the installation -1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster. +1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster: ```shell-session $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" @@ -65,7 +65,7 @@ $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref= 1. Verify that the [requirements](#requirements) have been met. 1. Verify that the Consul API Gateway software has been installed and applied (see [Installation](#installation)). -1. Configure the gateway, listener(s), and route(s) as described in [Configuration](#configuration) +1. Configure the gateway, listener(s), and route(s) as described in [Configuration](#configuration). 1. Issue the `kubectl apply` command to implement the configurations, e.g.: ```shell-session @@ -125,7 +125,7 @@ consul-api-gateway 0.1.0 Configure the following artifacts to facilitate ingress into your Consul service mesh: -- [GatewayClassConfig](#gatewayclassconfig): Describes additional Consul API Gatway-related configuration parameters for the `GatewayClass` resource. +- [GatewayClassConfig](#gatewayclassconfig): Describes additional Consul API Gateway-related configuration parameters for the `GatewayClass` resource. - [GatewayClass](#gatewayclass): Defines a class of gateway resources that you can use as a template for creating gateways. - [Gateway](#gateway): Defines the main infrastructure resource that links API gateway components. It specifies the name of the `GatewayClass` and one or more `listeners` (see [Listeners](#listeners)), which specify the logical endpoints bound to the gateway's addresses. - [Routes](#routes): Specifies the path from the client to the listener. @@ -133,13 +133,13 @@ Configure the following artifacts to facilitate ingress into your Consul service ### GatewayClass The `GatewayClass` resource is used as a template for creating `Gateway` resources. -The specification includes the name of the controller (`controllerName`) and an API object containing controller-specific configuration resource within the cluster (`parametersRef`). +The specification includes the name of the controller (`controllerName`) and an API object containing controller-specific configuration resources within the cluster (`parametersRef`). The value of the `controllerName` field must be set to `hashicorp.com/consul-api-gateway-controller`. When gateways are created from a `GatewayClass`, they use the parameters specified in the `GatewayClass` at the time of instantiation. Add the `kind: GatewayClass` option to the the gateway values file to declare a gateway class. -The following example creates a gateway class called `test-gateway-class`. +The following example creates a gateway class called `test-gateway-class`: @@ -166,7 +166,7 @@ Refer to the Kubernetes Gateway API documentation for details about configuring The `GatewayClassConfig` object describes additional Consul API Gateway-related configuration parameters for the `GatewayClass`. Add the `kind: GatewayClassConfig` option to the gateway values file to declare a gateway class. -The following example creates a gateway class called `test-gateway-class-config`. +The following example creates a gateway class called `test-gateway-class-config`: @@ -203,9 +203,9 @@ The following table describes the required parameters for the `spec` array: | `copyAnnotations.service` | List of annotations to copy to the gateway service. | Array | `["external-dns.alpha.kubernetes.io/hostname"]` | | `image.consulAPIGateway` | The image to use for consul-api-gateway. | String | `"hashicorp/consul-api-gateway:RELEASE_VERSION"` | | `image.envoy` | Specifies the container image to use for Envoy. | String | `"envoyproxy/envoy:v1.19-latest"` | -| `logLevel` | Specifies the error reporting level for logs. You can specify the following values: `FATAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`, `TRACE`, `ALL`, `OFF` | String | `"info"` | +| `logLevel` | Specifies the error reporting level for logs. You can specify the following values: `FATAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`, `TRACE`, `ALL`, `OFF`. | String | `"info"` | | `nodeSelector` | Specifies a set of parameters that constrain the nodes on which the pod can run. Defining nodes with the `nodeSelector` enables the pod to fit on a node. The selector must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | Object | N/A | -| `serviceType` | Sepcifies the ingress methods for a service. The following values are supported:
      `ClusterIP`
      `NodePort`
      `LoadBalancer` | String | N/A | +| `serviceType` | Specifies the ingress methods for a service. The following values are supported:
      `ClusterIP`
      `NodePort`
      `LoadBalancer`. | String | N/A | | `useHostPorts` | If set to `true`, then the Envoy container ports are mapped to host ports. | Boolean | `false` | Refer to the Consul API Gateway repository for the complete specification: From 152fed138be098593b822caaa1240248eeb6c7dc Mon Sep 17 00:00:00 2001 From: Mike Morris Date: Thu, 27 Jan 2022 11:12:23 -0500 Subject: [PATCH 350/404] website: fix indentation to resolve CodeBlockConfig syntax error --- website/content/docs/api-gateway.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index eceefb8bd..d7446ec3a 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -26,7 +26,7 @@ Your datacenter must meet the following requirements prior to configuring the Co 1. Create a values file for your Consul server agents that contains the following parameters: - + ```yaml global: @@ -40,7 +40,7 @@ controller: enabled: true ``` - + 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. From 2d7dd2e3f31c5408ca772ad6dc49f4739d819797 Mon Sep 17 00:00:00 2001 From: Mike Morris Date: Thu, 27 Jan 2022 11:34:11 -0500 Subject: [PATCH 351/404] website: fix ordering of list with nested code blocks --- website/content/docs/api-gateway.mdx | 52 ++++++++++++++-------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index d7446ec3a..0f3817a79 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -26,40 +26,40 @@ Your datacenter must meet the following requirements prior to configuring the Co 1. Create a values file for your Consul server agents that contains the following parameters: - + -```yaml -global: - name: consul - image: 'hashicorp/consul:1.11.2' - tls: + ```yaml + global: + name: consul + image: 'hashicorp/consul:1.11.2' + tls: + enabled: true + connectInject: enabled: true -connectInject: - enabled: true -controller: - enabled: true -``` + controller: + enabled: true + ``` - + 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. -```shell-session -$ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml -``` + ```shell-session + $ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml + ``` -The following components will be installed: + The following components will be installed: - - Gateway controller - - CRDs required by the Kubernetes Gateway API specification - - `kustomize` manifests for completing the installation + - Gateway controller + - CRDs required by the Kubernetes Gateway API specification + - `kustomize` manifests for completing the installation 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster: -```shell-session -$ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" -$ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" -``` + ```shell-session + $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" + $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" + ``` ## Usage @@ -68,9 +68,9 @@ $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref= 1. Configure the gateway, listener(s), and route(s) as described in [Configuration](#configuration). 1. Issue the `kubectl apply` command to implement the configurations, e.g.: -```shell-session -$ kubectl apply --values gateway-configuration.yaml -``` + ```shell-session + $ kubectl apply --values gateway-configuration.yaml + ``` **NOTE:** This page assumes you're familiar with ECS. See [What is Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) for more details. +* This pages assumes you are familiar with Terraform. If you are new to Terraform, see the [Terraform documentation](https://www.terraform.io/docs) to + learn about infrastructure as code and how to get started with Terraform. +* This page assumes you are familiar with AWS ECS. See [What is Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) for more details. +* This page does not show how to create all necessary AWS resources, such as a VPC or the ECS Cluster. + For complete runnable examples, see the links in the [Getting Started](/docs/ecs#getting-started) section. -## Task Module +## Using the Mesh Task Module -In order to add the necessary sidecar containers for your task to join the mesh, -you must use the [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task): +To run an application in ECS with Consul service mesh, you must create an ECS task definition which includes your application container(s) +and additional sidecar containers, such as the Consul agent container and the Envoy sidecar proxy container. + +The [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) will automatically include the necessary sidecar containers. + +Here is an example Terraform configuration file which defines a task definition with an application container called `example-client-app`. ```hcl module "my_task" { @@ -53,35 +55,52 @@ module "my_task" { } ``` -All possible inputs are documented on the [module reference documentation](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task?tab=inputs), +All possible inputs are documented in the [module reference documentation](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task?tab=inputs), however there are some important inputs worth highlighting: -- `family` is used as the [task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family) - but it's also used as the name of the service that gets registered in Consul. -- `container_definitions` accepts an array of [container definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions). - This is where you include application containers. -- `port` is the port that your application listens on. This should be set to a - string, not an integer, i.e. `port = "9090"`, not `port = 9090`. -- `retry_join` is passed to the [`-retry-join`](/docs/agent/options#_retry_join) option for the Consul agent. This tells - the agent the location of your Consul servers so that it can join the Consul cluster. - --> **NOTE:** If your tasks run in a public subnet, they must have `assign_public_ip = true` -in their [`network_configuration`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_service#network_configuration) block so that ECS can pull the Docker images. +| Input Variable | Type | Description | +| ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `source` and `version` | string | This specifies the source location and version of the `mesh-task` module. | +| `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name, by default. | +| `container_definitions` | list | This is the list of [container definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions) for the task definition. This is where you include your application containers. | +| `port` | number | The port that your application listens on, if any. If your application does not listen on a port, set `outbound_only = true`. | +| `retry_join` | list | The is the [`retry_join`](/docs/agent/options#_retry_join) option for the Consul agent, which specifies the locations of your Consul servers. | ## ECS Service +[ECS services](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html) are one of the most common +ways to start tasks using a task definition.. + To define an ECS Service, reference the mesh-task module's `task_definition_arn` output value in your `aws_ecs_service` resource: ```hcl resource "aws_ecs_service" "my_task" { - ... + name = "my_task_service" task_definition = module.my_task.task_definition_arn + launch_type = "FARGATE" + propagate_tags = "TASK_DEFINITION" + ... } ``` -After running `terraform apply`, you should see your tasks registered in -the Consul UI. +This is a partial configuration to highlight some important fields. +See the [`aws_ecs_service`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_service) documentation for a complete reference. + +| Input Variable | Type | Description | +| ----------------- | ------- | ------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The name of the ECS service. This is required by AWS but is not used by Consul service mesh. | +| `task_definition` | string | The task definition used to start tasks. Set this to the task definition ARN returned by the `mesh-task` module. | +| `launch_type` | string | The launch type. Consul on ECS supports the `FARGATE` and `EC2` launch types. | +| `propagate_tags` | string | This must be set to `TASK_DEFINITION` so that tags added by `mesh-task` to the task definition are copied to tasks. | + +After defining the Terraform configuration for both the `mesh-task` and ECS service, +run `terraform apply` to create the ECS task definition and service resources. The ECS +service will soon start your application in a task. The task will automatically +register itself into the Consul service catalog. + +-> **NOTE:** If your tasks run in a public subnet, they must have `assign_public_ip = true` +in their [`network_configuration`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_service#network_configuration) block so that ECS can pull the Docker images. ## Routing @@ -94,25 +113,23 @@ needs to call. You then must modify your application to make requests to the sid proxy on that port. For example, if your application `web` makes calls to another application called `backend`, then you would first configure the `mesh-task` module's upstream(s): -`backend`. ```hcl module "web" { family = "web" upstreams = [ { - destination_name = "backend" - local_bind_port = 8080 + destinationName = "backend" + localBindPort = 8080 } ] } ``` -- Set the `destination_name` to the name of the upstream service (in this case `backend`) -- Set `local_bind_port` to an unused port. This is the port that the sidecar proxy - will listen on. Any requests to this port will be forwarded over to the `destination_name`. - This does not have to be the port that `backend` is listening on because the service mesh - will handle routing the request to the right port. +| Input Variable | Type | Description | +| ----------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `destinationName` | string | The name of the upstream service, as it is registered in the Consul service catalog. | +| `localBindPort` | number | Requests to this port will be forwarded by the proxy to the upstream service. This must be an unused port, but does not need to match the upstream service port. | If you have multiple upstream services they each need to be listed here. @@ -127,8 +144,8 @@ module "web" { family = "web" upstreams = [ { - destination_name = "backend" - local_bind_port = 8080 + destinationName = "backend" + localBindPort = 8080 } ] container_definitions = [ diff --git a/website/content/docs/ecs/requirements.mdx b/website/content/docs/ecs/requirements.mdx index 1c4d0488d..c7d0b7407 100644 --- a/website/content/docs/ecs/requirements.mdx +++ b/website/content/docs/ecs/requirements.mdx @@ -9,8 +9,18 @@ description: >- The following requirements must be met in order to install Consul on ECS: -1. **Terraform:** The tasks that you want to add to the service mesh must first be modeled in Terraform. 1. **Launch Type:** Fargate and EC2 launch types are supported. 1. **Subnets:** ECS Tasks can run in private or public subnets. Tasks must have [network access](https://aws.amazon.com/premiumsupport/knowledge-center/ecs-pull-container-api-error-ecr/) to Amazon ECR or other public container registries to pull images. 1. **Consul Servers:** You can use your own Consul servers running on virtual machines or use [HashiCorp Cloud Platform Consul](https://www.hashicorp.com/cloud-platform) to host the servers for you. For development purposes or testing, you may use the `dev-server` [Terraform module](https://github.com/hashicorp/terraform-aws-consul-ecs/tree/main) that runs the Consul server as an ECS task. The `dev-server` does not support persistent storage. 1. **ACL Controller:** If you are running a secure Consul installation with ACLs enabled, configure the ACL controller. +1. **Sidecar containers:** Consul on ECS requires two sidecar containers to run in each ECS task: a + Consul agent container and a sidecar proxy container. These additional sidecar containers must + be included in the ECS task definition. The Consul ECS Terraform modules will include these + sidecar containers for you. Or if you do not use Terraform, you can construct the task + definition yourself by following our documentation. +1. **Routing:** With your application running in tasks as part of the mesh, you must specify the + upstream services that your application calls. You will also need to change the URLs your + application uses to ensure the application is making requests through the service mesh. +1. **Bind Address:** Once all communication is flowing through the service mesh, you should change + the address your application is listening on to `127.0.0.1` so that it only receives requests + through the sidecar proxy. diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 028a950e0..fdbacd0e9 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -612,7 +612,7 @@ "path": "ecs/requirements" }, { - "title": "Installation", + "title": "Installation with Terraform", "path": "ecs/install" }, { @@ -630,6 +630,10 @@ { "title": "Consul Enterprise", "path": "ecs/enterprise" + }, + { + "title": "Manual Installation", + "path": "ecs/install-no-terraform" } ] }, From d0230d8f605d34007bfe1f80e877919f9f4779ec Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Wed, 19 Jan 2022 15:18:15 -0600 Subject: [PATCH 356/404] docs: Apply suggestions for manual ECS installation Co-authored-by: Luke Kysow <1034429+lkysow@users.noreply.github.com> --- website/content/docs/ecs/install-no-terraform.mdx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/content/docs/ecs/install-no-terraform.mdx b/website/content/docs/ecs/install-no-terraform.mdx index 5f6378eaf..4cdc9ba30 100644 --- a/website/content/docs/ecs/install-no-terraform.mdx +++ b/website/content/docs/ecs/install-no-terraform.mdx @@ -17,7 +17,7 @@ for use without Terraform. * This page does not show how to create all necessary AWS resources, such as a VPC or the ECS Cluster. For complete runnable examples, see the links in the [Getting Started](/docs/ecs#getting-started) section. -# Task Definition +## Task Definition You must define a Task Definition which includes the following containers: @@ -57,7 +57,7 @@ In your task definition, you'll need to define these important top-level fields: ## Application container First, include your application container in the `containerDefinitions` list -in the task definition: +in the task definition. Ensure that the `dependsOn` field is set as shown below so that your application container starts in the correct order (see [task startup](/docs/ecs/architecture#task-startup) for more information): ```json { @@ -155,7 +155,7 @@ The sidecar proxy container runs [Envoy proxy](/docs/connect/proxies/envoy) for ## `consul-client` container -Each task must include a Consul agent container in order for the task to join your Consul cluster. +Each task must include a Consul client container in order for the task to join your Consul cluster. ```json { @@ -197,7 +197,7 @@ Each task must include a Consul agent container in order for the task to join yo | ----------- | ------- | ------------------------------------------------------------------------------------------------------------------------ | | `name` | string | The name of the Consul agent container, which should always be `consul-client`. | | `image` | string | The container image for Consul. Use our public AWS registry, `public.ecr.aws/hashicorp/consul`, to avoid rate limits. | -| `mountPoints` | list | The mounts the `/consul` data volume which contains the Envoy configuration file. | +| `mountPoints` | list | Mount the `/consul` data volume which contains the Envoy configuration file. | | `ulimits` | list | Set the file descriptor limit, `nofile`, to a sufficiently high value so that Envoy does not fail to open sockets. | | `entrypoint` | list | A custom entrypoint binary is used to run Envoy, in order to facilitate graceful shutdown. | | `command` | list | The startup command. See below for details. From 2682a99a7854a6071bfa67e60c98f93ac317ed07 Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Wed, 19 Jan 2022 17:55:55 -0600 Subject: [PATCH 357/404] docs: Improving ECS manual installation page --- .../content/docs/ecs/install-no-terraform.mdx | 179 ++++++++++-------- 1 file changed, 97 insertions(+), 82 deletions(-) diff --git a/website/content/docs/ecs/install-no-terraform.mdx b/website/content/docs/ecs/install-no-terraform.mdx index 4cdc9ba30..4a4f80e43 100644 --- a/website/content/docs/ecs/install-no-terraform.mdx +++ b/website/content/docs/ecs/install-no-terraform.mdx @@ -23,7 +23,7 @@ You must define a Task Definition which includes the following containers: * Your application container * An Envoy sidecar-proxy container -* A Consul Agent container +* A Consul client container * The `consul-ecs-mesh-init` container for service mesh setup * Optionally, a `consul-ecs-health-sync` container to sync ECS health checks into Consul @@ -47,17 +47,19 @@ In your task definition, you'll need to define these important top-level fields: } ``` -| Field name | Type | Description | -| ------------- | ------ | --------------------------------------------------------------------------------------------------- | -| `family` | string | The task family name. This is used as the Consul service name, by default. | -| `networkMode` | string | Must be `awsvpc`, which is the only network mode supported by Consul on ECS. | -| `volumes` | list | These are volumes used to share information between containers, which is important for setup steps. | -| `containerDefinitions` | list | The list of containers to run in this task (see below). | +| Field name | Type | Description | +| ---------------------- | ------ | ------------------------------------------------------------------------------------------------------------------ | +| `family` | string | The task family name. This is used as the Consul service name, by default. | +| `networkMode` | string | Must be `awsvpc`, which is the only network mode supported by Consul on ECS. | +| `volumes` | list | Must be defined as shown above. Volumes ares used to share configuration between containers for intial task setup. | +| `containerDefinitions` | list | The list of containers to run in this task (see below). | ## Application container First, include your application container in the `containerDefinitions` list -in the task definition. Ensure that the `dependsOn` field is set as shown below so that your application container starts in the correct order (see [task startup](/docs/ecs/architecture#task-startup) for more information): +in the task definition. Ensure that the `dependsOn` field is set as shown below +so that your application container starts in the correct order (see [task +startup](/docs/ecs/architecture#task-startup) for more information): ```json { @@ -75,18 +77,19 @@ in the task definition. Ensure that the `dependsOn` field is set as shown below "containerName": "sidecar-proxy", "condition": "HEALTHY" } - ] + ], + ... } ] } ``` -| Field name | Type | Description | -| ----------- | ------- | ------------------------------------------------------------------------------------------------------------------------ | -| `name` | string | The name of your application container. | -| `image` | string | The container image used to run your application. | -| `essential` | boolean | Set this to `true` ensures your application container ties into the health of the task. All tasks must have at least one essential container. | -| `dependsOn` | list | Container dependendencies are used to ensure the service mesh is ready before your application starts. | +| Field name | Type | Description | +| ----------- | ------- | -------------------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The name of your application container. | +| `image` | string | The container image used to run your application. | +| `essential` | boolean | Must be `true` to ensure your application container ties into the health of the task. | +| `dependsOn` | list | Must be set as show above. Container dependencies ensure your application container starts after service mesh setup is complete. | See the [ECS Task Definition](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) documentation for a complete reference. @@ -94,6 +97,8 @@ See the [ECS Task Definition](https://docs.aws.amazon.com/AmazonECS/latest/devel The sidecar proxy container runs [Envoy proxy](/docs/connect/proxies/envoy) for Consul Connect. + + ```json { "containerDefinitions": [ @@ -139,24 +144,29 @@ The sidecar proxy container runs [Envoy proxy](/docs/connect/proxies/envoy) for } ``` -| Field name | Type | Description | -| ----------- | ------- | ------------------------------------------------------------------------------------------------------------------ | -| `name` | string | The name of the container, which should always be `sidecar-proxy`. | -| `image` | string | The container image for Envoy. We recommend using `envoyproxy/envoy-alpine`. | -| `dependsOn` | list | Envoy must start after `consul-ecs-mesh-init`, which creates the bootstrap configuration file for Envoy. | -| `healthCheck` | list | A health check should be definied for Envoy's primary listener port. | -| `mountPoints` | list | The mounts the `/consul` data volume which contains the Envoy configuration file. | -| `ulimits` | list | Set the file descriptor limit, `nofile`, to a sufficiently high value so that Envoy does not fail to open sockets. | -| `entrypoint` | list | A custom entrypoint binary is used to help facilitate graceful shutdown. | -| `command` | list | The startup command. This passes the bootstrap configuration to Envoy. | + --> **NOTE**: Envoy and Consul must be compatible versions. See the [supported versions of Envoy](https://www.consul.io/docs/connect/proxies/envoy#supported-versions) for each Consul release. +In most cases, the `sidecar-proxy` container can be configured exactly as shown above. +| Field name | Type | Description | +| ------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The container name, which must be `sidecar-proxy`. | +| `image` | string | The Envoy image. This must be a [supported version of Envoy](/docs/connect/proxies/envoy#supported-versions). | +| `dependsOn` | list | Must be set as shown above to ensure Envoy starts after the `consul-ecs-mesh-init` has written the `envoy-bootstrap.json` config file for Envoy. | +| `healthCheck` | list | Must be set as shown above to monitor the health of Envoy's primary listener port, which ties into container dependencies and startup ordering. | +| `mountPoints` | list | Must be set as shown above to access the files shared in the `consul` directory, like the Envoy bootstrap configuration file and the `consul-ecs` binary. | +| `ulimits` | list | The `nofile` ulimit must be raised to a sufficiently high value so that Envoy does not fail to open sockets. | +| `entrypoint` | list | Must be set to the custom Envoy entrypoint to facilitate graceful shutdown. | +| `command` | list | The startup command. This passes the bootstrap configuration to Envoy. | + +-> **NOTE**: Envoy and Consul must be compatible versions. See the [supported versions of Envoy](/docs/connect/proxies/envoy#supported-versions) in the Consul documentation. ## `consul-client` container Each task must include a Consul client container in order for the task to join your Consul cluster. + + ```json { "containerDefinitions": [ @@ -193,14 +203,15 @@ Each task must include a Consul client container in order for the task to join y } ``` -| Field name | Type | Description | -| ----------- | ------- | ------------------------------------------------------------------------------------------------------------------------ | -| `name` | string | The name of the Consul agent container, which should always be `consul-client`. | -| `image` | string | The container image for Consul. Use our public AWS registry, `public.ecr.aws/hashicorp/consul`, to avoid rate limits. | -| `mountPoints` | list | Mount the `/consul` data volume which contains the Envoy configuration file. | -| `ulimits` | list | Set the file descriptor limit, `nofile`, to a sufficiently high value so that Envoy does not fail to open sockets. | -| `entrypoint` | list | A custom entrypoint binary is used to run Envoy, in order to facilitate graceful shutdown. | -| `command` | list | The startup command. See below for details. + + +| Field name | Type | Description | +| ------------- | ------- | ------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The container name, which should always be `consul-client`. | +| `image` | string | The Consul image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul`, to avoid rate limits. | +| `mountPoints` | list | Must be set as shown above. Volumes are mounted to share information with other containers for task setup. | +| `entrypoint` | list | Must be set to a plain shell so that the startup `command` works properly. | +| `command` | list | The startup command. See below for details. | The following is the recommended `command` script for the Consul agent. This is the same as the above `command` field, but is unescaped and has comments added. @@ -212,7 +223,7 @@ cp /bin/consul /bin/consul-inject/consul # At runtime, determine the IP address assigned to this ECS Task. ECS_IPV4=$(curl -s $ECS_CONTAINER_METADATA_URI_V4 | jq -r '.Networks[0].IPv4Addresses[0]') -# Define the Consul agent configuration file. +# Write the Consul agent configuration file. cat << EOF > /consul/agent-defaults.hcl addresses = { dns = "127.0.0.1" @@ -241,24 +252,30 @@ exec consul agent \ -config-file /consul/agent-defaults.hcl ``` -You can tailor the configuration above for your use case, but it's important to set the following fields as show: +Set the following fields as shown above: | Field name | Type | Description | | -------------------- | ------- | ------------------------------------------------------------------------------------------------------------ | | `addresses.*` | strings | Set the DNS, GRPC, and HTTP addresses to `127.0.0.1` to ensure these are not accessible outside of the task. | -| `advertise_addr` | string | This must be set to the task IP address so that other Consul agents know how to reach this agent. | -| `client_addr` | string | This must bind to an interface reacable by other Consul agents. | -| `leave_on_terminate` | boolean | This ensures this Consul agent will leave the cluster gracefully before exiting. | -| `retry_join` | string | This must be set to your Consul server location(s) so this agent can join the Consul cluster. | +| `advertise_addr` | string | Must be set to the task IP address so that other Consul agents know how to reach this agent. | +| `client_addr` | string | Must be set to an interface reacable by other Consul agents. | +| `datacenter` | string | Must be set to the Consul datacenter this task will join. | +| `leave_on_terminate` | boolean | Must be set to `true` so that the Consul agent leaves the cluster gracefully before exiting. | +| `retry_join` | string | Must be set to your Consul server location(s) so this agent can join the Consul cluster. | --> **NOTE**: It is important to use `exec` to start the Consul agent, so that the Consul agent runs as PID 1. This ensures +-> **NOTE**: Use `exec` to start the Consul agent, so that the Consul agent runs as PID 1. This ensures the Consul agent directly receives signals from ECS, which is important for graceful shutdown of the Consul agent. +Refer to the [Consul Agent documentation](/docs/agent/options#configuration_files) for a complete reference of Consul agent +configuration options. + ## `mesh-init` container -The mesh-init container runs at task startup to setup this instance for Consul service mesh. -It will register this service and proxy with Consul and write Envoy bootstrap configuration -to a shared volume. +The `mesh-init` container runs at task startup to setup this instance for Consul service mesh. +It registers the service and proxy for this task with Consul and writes Envoy bootstrap +configuration to a shared volume. + + ```json { @@ -306,15 +323,17 @@ to a shared volume. } ``` -| Field name | Type | Description | -| ----------- | ------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `name` | string | The container name should be `consul-ecs-mesh-init`. | -| `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | -| `mountPoints` | list | The mounts two volumes so that mesh-init can invoke the `consul` binary to write bootstrap Envoy configuration. | -| `command` | list | Set the `["mesh-init"]` so that the container runs the `consul-ecs mesh-init` command. | -| `environment` | list | This must include the `CONSUL_ECS_CONFIG_JSON` variable. See below for details. | + -Additional configuration is passed to the `consul-ecs mesh-init` command in JSON format using the `CONSUL_ECS_CONFIG_JSON` environment variable. +| Field name | Type | Description | +| ----------- | ------- | ------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The container name should be `consul-ecs-mesh-init`. | +| `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | +| `mountPoints` | list | Must be set as show above, so the `consul` and `consul-ecs` binaries can be shared among containers for task setup. | +| `command` | list | Set the `["mesh-init"]` so that the container runs the `consul-ecs mesh-init` command. | +| `environment` | list | This must include the `CONSUL_ECS_CONFIG_JSON` variable. See below for details. | + +Configuration is passed to the `consul-ecs mesh-init` command in JSON format using the `CONSUL_ECS_CONFIG_JSON` environment variable. Here is the sample config from above, expanded to be readable: ```json @@ -355,8 +374,9 @@ Optionally, Consul ECS can sync health checks for this task into Consul checks. This allows you to configure a health check for your application in one place, and see a consistent health status in both ECS and Consul. -First, you'll need to add an ECS health check command to the container definition for your application. -This configures a health check command that runs `curl localhost:9090/health` to check the application health: +For example, the following defines an ECS health check command that runs `curl localhost:9090/health`: + + ```json { @@ -377,38 +397,27 @@ This configures a health check command that runs `curl localhost:9090/health` to } ``` -See the [ECS health check documentation](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_healthcheck) for details on defining ECS health checks. + -Next, you must tell Consul ECS which containers will have their health status synced into Consul. To do this, -set the `healthSyncContainers` field of the `CONSUL_ECS_CONFIG_JSON` variable to include your application container name. +First, tell Consul ECS which containers need their health status synced into Consul. To do this, +add the container name(s) to the `healthSyncContainers` list of the `CONSUL_ECS_CONFIG_JSON` variable: -Here is the expanded configuration: + ```json { "bootstrapDir": "/consul", "healthSyncContainers": ["example-client-app"], - "proxy": { - "upstreams": [ - { - "destinationName": "example-server-app", - "localBindPort": 1234 - } - ] - }, - "service": { - "checks": [], - "meta": {}, - "name": "example-client-app", - "port": 9090, - "tags": [] - } + ... } ``` -Then, update the task definition so that the `consul-ecs-mesh-init` container uses new configuration. -You should compact and escape the JSON configuration above, and copy the result into the `CONSUL_ECS_CONFIG_JSON` -environment variable: + + +Next, pass the new configuration to the `consul-ecs-mesh-init` container. You should compact and escape the JSON +configuration above, and copy the result into the `CONSUL_ECS_CONFIG_JSON` environment variable: + + ```json { @@ -429,9 +438,13 @@ environment variable: } ``` + + Finally, include the `consul-ecs-health-sync` container in the `containerDefinitions` list. -Be sure to pass the same value as above for the `CONSUL_ECS_CONFIG_JSON` environment -variable: +The exact same configuration for the `CONSUL_ECS_CONFIG_JSON` environment variable is used +for the health sync container. + + ```json { @@ -478,13 +491,15 @@ variable: } ``` + + | Field name | Type | Description | | ------------- | ------ | ----------------------------------------------------------------------------------------------------------------- | -| `name` | string | The container name which should be `consul-ecs-health-sync`. | +| `name` | string | The container name, which must be `consul-ecs-health-sync`. | | `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | -| `command` | list | Set to `["health-sync"]` to run the `consul-ecs health-sync` command. | -| `dependsOn` | list | The `health-sync` container should not start until `mesh-init` has finished service and proxy registration. | -| `environment` | list | Set the `CONSUL_ECS_CONFIG_JSON` variable to pass configuration to the `consul-ecs health-sync command. | +| `command` | list | Must be set to `["health-sync"]` to run the `consul-ecs health-sync` command. | +| `dependsOn` | list | Must be set as shown above to ensure the `health-sync` container starts after service registration has completed. | +| `environment` | list | Must include the `CONSUL_ECS_CONFIG_JSON` variable to pass configuration to the `consul-ecs health-sync` command. | # Next Steps From 35b37345bea0a1a773d31503aabbeaf8faa53edf Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Wed, 19 Jan 2022 18:07:44 -0600 Subject: [PATCH 358/404] docs: Correct ECS filename -> manual-installation.mdx --- .../{install-no-terraform.mdx => manual-installation.mdx} | 0 website/content/docs/ecs/requirements.mdx | 6 +++--- website/data/docs-nav-data.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) rename website/content/docs/ecs/{install-no-terraform.mdx => manual-installation.mdx} (100%) diff --git a/website/content/docs/ecs/install-no-terraform.mdx b/website/content/docs/ecs/manual-installation.mdx similarity index 100% rename from website/content/docs/ecs/install-no-terraform.mdx rename to website/content/docs/ecs/manual-installation.mdx diff --git a/website/content/docs/ecs/requirements.mdx b/website/content/docs/ecs/requirements.mdx index c7d0b7407..73570f16b 100644 --- a/website/content/docs/ecs/requirements.mdx +++ b/website/content/docs/ecs/requirements.mdx @@ -15,9 +15,9 @@ The following requirements must be met in order to install Consul on ECS: 1. **ACL Controller:** If you are running a secure Consul installation with ACLs enabled, configure the ACL controller. 1. **Sidecar containers:** Consul on ECS requires two sidecar containers to run in each ECS task: a Consul agent container and a sidecar proxy container. These additional sidecar containers must - be included in the ECS task definition. The Consul ECS Terraform modules will include these - sidecar containers for you. Or if you do not use Terraform, you can construct the task - definition yourself by following our documentation. + be included in the ECS task definition. The [Consul ECS Terraform module](/docs/ecs/install) + will include these sidecar containers for you. Or if you do not use Terraform, you can construct + the task definition yourself by following [our documentation](/docs/ecs/manual-installation). 1. **Routing:** With your application running in tasks as part of the mesh, you must specify the upstream services that your application calls. You will also need to change the URLs your application uses to ensure the application is making requests through the service mesh. diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index fdbacd0e9..3e1566d56 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -633,7 +633,7 @@ }, { "title": "Manual Installation", - "path": "ecs/install-no-terraform" + "path": "ecs/manual-installation" } ] }, From 69de9c4d2e90448d9ac1572cd863357689468e63 Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Fri, 21 Jan 2022 10:12:32 -0600 Subject: [PATCH 359/404] docs: Apply suggestions to ECS docs from code review Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> --- website/content/docs/ecs/install.mdx | 12 ++++--- .../content/docs/ecs/manual-installation.mdx | 32 +++++++++---------- website/content/docs/ecs/requirements.mdx | 2 +- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/website/content/docs/ecs/install.mdx b/website/content/docs/ecs/install.mdx index 3554043cd..32d3dee3a 100644 --- a/website/content/docs/ecs/install.mdx +++ b/website/content/docs/ecs/install.mdx @@ -1,15 +1,17 @@ --- layout: docs -page_title: Installation with Terraform - AWS ECS +page_title: Installing Consul on AWS ECS using Terraform description: >- Install Consul Service Mesh on AWS ECS with Terraform (Elastic Container Service). --- # Installation with Terraform -This will describe how to use the [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) Terraform module to launch your application in AWS ECS as part of Consul service mesh. +This topic describes how to use the [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) Terraform module to launch your application in AWS ECS as part of Consul service mesh. -## Pre-requisites +This topic does not include instructions for creating all AWS resources necessary to install Consul, such as a VPC or the ECS cluster. Refer to the linked guides in the [Getting Started](/docs/ecs#getting-started) section for complete, runnable examples. + +## Prerequisites * This pages assumes you are familiar with Terraform. If you are new to Terraform, see the [Terraform documentation](https://www.terraform.io/docs) to learn about infrastructure as code and how to get started with Terraform. @@ -24,7 +26,7 @@ and additional sidecar containers, such as the Consul agent container and the En The [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) will automatically include the necessary sidecar containers. -Here is an example Terraform configuration file which defines a task definition with an application container called `example-client-app`. +The following example shows a Terraform configuration file that defines a task definition with an application container called `example-client-app`. ```hcl module "my_task" { @@ -61,7 +63,7 @@ however there are some important inputs worth highlighting: | Input Variable | Type | Description | | ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `source` and `version` | string | This specifies the source location and version of the `mesh-task` module. | -| `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name, by default. | +| `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name by default. | | `container_definitions` | list | This is the list of [container definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions) for the task definition. This is where you include your application containers. | | `port` | number | The port that your application listens on, if any. If your application does not listen on a port, set `outbound_only = true`. | | `retry_join` | list | The is the [`retry_join`](/docs/agent/options#_retry_join) option for the Consul agent, which specifies the locations of your Consul servers. | diff --git a/website/content/docs/ecs/manual-installation.mdx b/website/content/docs/ecs/manual-installation.mdx index 4a4f80e43..16b6dd5a1 100644 --- a/website/content/docs/ecs/manual-installation.mdx +++ b/website/content/docs/ecs/manual-installation.mdx @@ -7,19 +7,17 @@ description: >- # Manual Installation -While the [Consul ECS Terraform module](/docs/ecs/install) is the easiest way to use Consul on ECS, -this page will describe how to directly create the ECS task definition using the [`consul-ecs` Docker image](https://gallery.ecr.aws/hashicorp/consul-ecs) -for use without Terraform. +This topic describes how to manually create the ECS task definition for use without Terraform from the [`consul-ecs` Docker image](https://gallery.ecr.aws/hashicorp/consul-ecs). Refer to the [Consul ECS Terraform module](/docs/ecs/install) documentation for an alternative method for installing Consul on ECS. -## Pre-requisites +This topic does not include instructions for creating all AWS resources necessary to install Consul, such as a VPC or the ECS cluster. Refer to the linked guides in the [Getting Started](/docs/ecs#getting-started) section for complete, runnable examples. -* This page assumes you are familiar with AWS ECS. See [What is Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) for more details. -* This page does not show how to create all necessary AWS resources, such as a VPC or the ECS Cluster. - For complete runnable examples, see the links in the [Getting Started](/docs/ecs#getting-started) section. +## Prerequisites + +You should have some familiarity with AWS ECS. See [What is Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) for details. ## Task Definition -You must define a Task Definition which includes the following containers: +You must define a task definition which includes the following containers: * Your application container * An Envoy sidecar-proxy container @@ -29,7 +27,7 @@ You must define a Task Definition which includes the following containers: ## Top-level fields -In your task definition, you'll need to define these important top-level fields: +Your task definition must include the following top-level fields: ```json { @@ -49,9 +47,9 @@ In your task definition, you'll need to define these important top-level fields: | Field name | Type | Description | | ---------------------- | ------ | ------------------------------------------------------------------------------------------------------------------ | -| `family` | string | The task family name. This is used as the Consul service name, by default. | +| `family` | string | The task family name. This is used as the Consul service name by default. | | `networkMode` | string | Must be `awsvpc`, which is the only network mode supported by Consul on ECS. | -| `volumes` | list | Must be defined as shown above. Volumes ares used to share configuration between containers for intial task setup. | +| `volumes` | list | Must be defined as shown above. Volumes are used to share configuration between containers for intial task setup. | | `containerDefinitions` | list | The list of containers to run in this task (see below). | ## Application container @@ -95,7 +93,7 @@ See the [ECS Task Definition](https://docs.aws.amazon.com/AmazonECS/latest/devel ## `sidecar-proxy` container -The sidecar proxy container runs [Envoy proxy](/docs/connect/proxies/envoy) for Consul Connect. +The `sidecar-proxy` container runs [Envoy proxy](/docs/connect/proxies/envoy) for Consul Connect. In most cases, the container should contain the following parameters and values. @@ -146,7 +144,7 @@ The sidecar proxy container runs [Envoy proxy](/docs/connect/proxies/envoy) for -In most cases, the `sidecar-proxy` container can be configured exactly as shown above. +The following table describes the available configuration settings. | Field name | Type | Description | | ------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -252,7 +250,7 @@ exec consul agent \ -config-file /consul/agent-defaults.hcl ``` -Set the following fields as shown above: +The following table describes the values that you should use to configure the `command` script: | Field name | Type | Description | | -------------------- | ------- | ------------------------------------------------------------------------------------------------------------ | @@ -263,7 +261,7 @@ Set the following fields as shown above: | `leave_on_terminate` | boolean | Must be set to `true` so that the Consul agent leaves the cluster gracefully before exiting. | | `retry_join` | string | Must be set to your Consul server location(s) so this agent can join the Consul cluster. | --> **NOTE**: Use `exec` to start the Consul agent, so that the Consul agent runs as PID 1. This ensures +-> **NOTE**: Use `exec` to start the Consul agent so that the Consul agent runs as PID 1. This ensures the Consul agent directly receives signals from ECS, which is important for graceful shutdown of the Consul agent. Refer to the [Consul Agent documentation](/docs/agent/options#configuration_files) for a complete reference of Consul agent @@ -364,14 +362,14 @@ Here is the sample config from above, expanded to be readable: | `proxy.upstreams` | list | The upstream services that your application calls over the service mesh, if any. | | `service.name` | string | The name used to register this service into the Consul service catalog. | | `service.port` | number | The port your application listens on. Set to `0` if your application does not listen on any port. | -| `service.checks` | list | Consul [checks](/docs/discovery/checks) to include, to have Consul run health checks against your application. | +| `service.checks` | list | Specifies the Consul health [checks](/docs/discovery/checks) to run against your application. | See the [`consul-ecs JSON Schema`](https://github.com/hashicorp/consul-ecs/blob/main/config/schema.json) for a complete reference of fields. ## `consul-ecs-health-sync` container Optionally, Consul ECS can sync health checks for this task into Consul checks. -This allows you to configure a health check for your application in one place, and +This allows you to configure a health check for your application in one place and see a consistent health status in both ECS and Consul. For example, the following defines an ECS health check command that runs `curl localhost:9090/health`: diff --git a/website/content/docs/ecs/requirements.mdx b/website/content/docs/ecs/requirements.mdx index 73570f16b..faedb2f2a 100644 --- a/website/content/docs/ecs/requirements.mdx +++ b/website/content/docs/ecs/requirements.mdx @@ -16,7 +16,7 @@ The following requirements must be met in order to install Consul on ECS: 1. **Sidecar containers:** Consul on ECS requires two sidecar containers to run in each ECS task: a Consul agent container and a sidecar proxy container. These additional sidecar containers must be included in the ECS task definition. The [Consul ECS Terraform module](/docs/ecs/install) - will include these sidecar containers for you. Or if you do not use Terraform, you can construct + will include these sidecar containers for you. If you do not use Terraform, you can construct the task definition yourself by following [our documentation](/docs/ecs/manual-installation). 1. **Routing:** With your application running in tasks as part of the mesh, you must specify the upstream services that your application calls. You will also need to change the URLs your From 2d5b7b03aaed249df148163066eac734986e786c Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Fri, 21 Jan 2022 14:11:11 -0600 Subject: [PATCH 360/404] docs: Improving ECS installation docs --- website/content/docs/ecs/install.mdx | 23 +++-- .../content/docs/ecs/manual-installation.mdx | 85 ++++++++++++------- 2 files changed, 65 insertions(+), 43 deletions(-) diff --git a/website/content/docs/ecs/install.mdx b/website/content/docs/ecs/install.mdx index 32d3dee3a..dc35b53ef 100644 --- a/website/content/docs/ecs/install.mdx +++ b/website/content/docs/ecs/install.mdx @@ -1,32 +1,29 @@ --- layout: docs -page_title: Installing Consul on AWS ECS using Terraform +page_title: Installing Consul on AWS ECS using Terraform description: >- Install Consul Service Mesh on AWS ECS with Terraform (Elastic Container Service). --- # Installation with Terraform -This topic describes how to use the [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) Terraform module to launch your application in AWS ECS as part of Consul service mesh. +This topic describes how to use the [`mesh-task`](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) Terraform module to launch your application in AWS ECS as part of Consul service mesh. If you do not use Terraform, see the [Manual Installation](/docs/ecs/manual-installation) page to install Consul on ECS without Terraform. This topic does not include instructions for creating all AWS resources necessary to install Consul, such as a VPC or the ECS cluster. Refer to the linked guides in the [Getting Started](/docs/ecs#getting-started) section for complete, runnable examples. ## Prerequisites -* This pages assumes you are familiar with Terraform. If you are new to Terraform, see the [Terraform documentation](https://www.terraform.io/docs) to - learn about infrastructure as code and how to get started with Terraform. -* This page assumes you are familiar with AWS ECS. See [What is Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) for more details. -* This page does not show how to create all necessary AWS resources, such as a VPC or the ECS Cluster. - For complete runnable examples, see the links in the [Getting Started](/docs/ecs#getting-started) section. +* You should have some familiarity with using Terraform. Refer to the [Terraform documentation](https://www.terraform.io/docs) to learn about infrastructure as code and how to get started with Terraform. +* You should also be familiar with AWS ECS before following these instructions. See [What is Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) for details. ## Using the Mesh Task Module -To run an application in ECS with Consul service mesh, you must create an ECS task definition which includes your application container(s) +To run an application in ECS with Consul service mesh, you must create an ECS task definition, which includes your application container(s) and additional sidecar containers, such as the Consul agent container and the Envoy sidecar proxy container. The [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) will automatically include the necessary sidecar containers. -The following example shows a Terraform configuration file that defines a task definition with an application container called `example-client-app`. +The following example shows a Terraform configuration file that creates a task definition with an application container called `example-client-app`. ```hcl module "my_task" { @@ -52,7 +49,7 @@ module "my_task" { } ] - port = "9090" + port = 9090 retry_join = ["
      "] } ``` @@ -63,9 +60,9 @@ however there are some important inputs worth highlighting: | Input Variable | Type | Description | | ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `source` and `version` | string | This specifies the source location and version of the `mesh-task` module. | -| `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name by default. | +| `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name by default. | | `container_definitions` | list | This is the list of [container definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions) for the task definition. This is where you include your application containers. | -| `port` | number | The port that your application listens on, if any. If your application does not listen on a port, set `outbound_only = true`. | +| `port` | integer | The port that your application listens on, if any. If your application does not listen on a port, set `outbound_only = true`. | | `retry_join` | list | The is the [`retry_join`](/docs/agent/options#_retry_join) option for the Consul agent, which specifies the locations of your Consul servers. | ## ECS Service @@ -131,7 +128,7 @@ module "web" { | Input Variable | Type | Description | | ----------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `destinationName` | string | The name of the upstream service, as it is registered in the Consul service catalog. | -| `localBindPort` | number | Requests to this port will be forwarded by the proxy to the upstream service. This must be an unused port, but does not need to match the upstream service port. | +| `localBindPort` | integer | Requests to this port will be forwarded by the proxy to the upstream service. This must be an unused port, but does not need to match the upstream service port. | If you have multiple upstream services they each need to be listed here. diff --git a/website/content/docs/ecs/manual-installation.mdx b/website/content/docs/ecs/manual-installation.mdx index 16b6dd5a1..56ca85827 100644 --- a/website/content/docs/ecs/manual-installation.mdx +++ b/website/content/docs/ecs/manual-installation.mdx @@ -7,7 +7,7 @@ description: >- # Manual Installation -This topic describes how to manually create the ECS task definition for use without Terraform from the [`consul-ecs` Docker image](https://gallery.ecr.aws/hashicorp/consul-ecs). Refer to the [Consul ECS Terraform module](/docs/ecs/install) documentation for an alternative method for installing Consul on ECS. +The following instructions describe how to manually create the ECS task definition using the [`consul-ecs` Docker image](https://gallery.ecr.aws/hashicorp/consul-ecs) without Terraform. Refer to the [Consul ECS Terraform module](/docs/ecs/install) documentation for an alternative method for installing Consul on ECS. This topic does not include instructions for creating all AWS resources necessary to install Consul, such as a VPC or the ECS cluster. Refer to the linked guides in the [Getting Started](/docs/ecs#getting-started) section for complete, runnable examples. @@ -17,17 +17,22 @@ You should have some familiarity with AWS ECS. See [What is Amazon Elastic Conta ## Task Definition -You must define a task definition which includes the following containers: +You must create a task definition, which includes the following containers: * Your application container * An Envoy sidecar-proxy container * A Consul client container -* The `consul-ecs-mesh-init` container for service mesh setup +* A `consul-ecs-mesh-init` container for service mesh setup * Optionally, a `consul-ecs-health-sync` container to sync ECS health checks into Consul ## Top-level fields -Your task definition must include the following top-level fields: +Your task definition must include the following top-level fields. + +The `volumes` list contains two [bind mounts](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/bind-mounts.html), +named `consul_data` and `consul_binary`. Bind mounts are directories on the host which can be mounted into one or more containers +in order to share files among containers. For Consul on ECS, certain binaries and configuration are shared among containers +during task startup. ```json { @@ -55,9 +60,14 @@ Your task definition must include the following top-level fields: ## Application container First, include your application container in the `containerDefinitions` list -in the task definition. Ensure that the `dependsOn` field is set as shown below -so that your application container starts in the correct order (see [task -startup](/docs/ecs/architecture#task-startup) for more information): +in the task definition. + +Ensure that the `containerName` and `condition` fields in the `dependsOn` list +are specified as described in the following example. These are container dependencies, +which must be used to enforce a specific [startup order](/docs/ecs/architecture#task-startup). +By using the following settings, your application container will start after `consul-ecs-mesh-init` +has completed task setup and after `sidecar-proxy` is ready to proxy traffic between +this task and the service mesh. ```json { @@ -87,7 +97,7 @@ startup](/docs/ecs/architecture#task-startup) for more information): | `name` | string | The name of your application container. | | `image` | string | The container image used to run your application. | | `essential` | boolean | Must be `true` to ensure your application container ties into the health of the task. | -| `dependsOn` | list | Must be set as show above. Container dependencies ensure your application container starts after service mesh setup is complete. | +| `dependsOn` | list | Must be set as shown above. Container dependencies ensure your application container starts after service mesh setup is complete. | See the [ECS Task Definition](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) documentation for a complete reference. @@ -95,6 +105,11 @@ See the [ECS Task Definition](https://docs.aws.amazon.com/AmazonECS/latest/devel The `sidecar-proxy` container runs [Envoy proxy](/docs/connect/proxies/envoy) for Consul Connect. In most cases, the container should contain the following parameters and values. +The `mountPoints` list must be set as shown in the following example. This will mount the shared `consul_data` volume into the +`sidecar-proxy` container at the path `/consul`. This volume is where the `consul-ecs-mesh-init` container copies the `envoy-bootstrap.json` +file and the `consul-ecs` binary, which are required to start Envoy. The `dependsOn` list must also be defined as follows to ensure the +`sidecar-proxy` container starts after `consul-ecs-mesh-init` has successfully written these files to the shared volume. + ```json @@ -144,7 +159,7 @@ The `sidecar-proxy` container runs [Envoy proxy](/docs/connect/proxies/envoy) fo -The following table describes the available configuration settings. +The following table describes the necessary configuration settings. | Field name | Type | Description | | ------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -152,9 +167,9 @@ The following table describes the available configuration settings. | `image` | string | The Envoy image. This must be a [supported version of Envoy](/docs/connect/proxies/envoy#supported-versions). | | `dependsOn` | list | Must be set as shown above to ensure Envoy starts after the `consul-ecs-mesh-init` has written the `envoy-bootstrap.json` config file for Envoy. | | `healthCheck` | list | Must be set as shown above to monitor the health of Envoy's primary listener port, which ties into container dependencies and startup ordering. | -| `mountPoints` | list | Must be set as shown above to access the files shared in the `consul` directory, like the Envoy bootstrap configuration file and the `consul-ecs` binary. | +| `mountPoints` | list | Must be set as shown above to access the files shared in the `/consul` directory, like the Envoy bootstrap configuration file and the `consul-ecs` binary. | | `ulimits` | list | The `nofile` ulimit must be raised to a sufficiently high value so that Envoy does not fail to open sockets. | -| `entrypoint` | list | Must be set to the custom Envoy entrypoint to facilitate graceful shutdown. | +| `entrypoint` | list | Must be set to the custom Envoy entrypoint, `consul-ecs envoy-entrypoint`, to facilitate graceful shutdown. | | `command` | list | The startup command. This passes the bootstrap configuration to Envoy. | -> **NOTE**: Envoy and Consul must be compatible versions. See the [supported versions of Envoy](/docs/connect/proxies/envoy#supported-versions) in the Consul documentation. @@ -215,7 +230,7 @@ The following is the recommended `command` script for the Consul agent. This is the same as the above `command` field, but is unescaped and has comments added. ```shell -# Copy the consul binary to a shared volume for mesh-init to use to generate Envoy configuration. +# Copy the consul binary to a shared volume for `consul-ecs-mesh-init` to use to generate Envoy configuration. cp /bin/consul /bin/consul-inject/consul # At runtime, determine the IP address assigned to this ECS Task. @@ -267,9 +282,9 @@ the Consul agent directly receives signals from ECS, which is important for grac Refer to the [Consul Agent documentation](/docs/agent/options#configuration_files) for a complete reference of Consul agent configuration options. -## `mesh-init` container +## `consul-ecs-mesh-init` container -The `mesh-init` container runs at task startup to setup this instance for Consul service mesh. +The `consul-ecs-mesh-init` container runs at task startup to setup this instance for Consul service mesh. It registers the service and proxy for this task with Consul and writes Envoy bootstrap configuration to a shared volume. @@ -329,10 +344,16 @@ configuration to a shared volume. | `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | | `mountPoints` | list | Must be set as show above, so the `consul` and `consul-ecs` binaries can be shared among containers for task setup. | | `command` | list | Set the `["mesh-init"]` so that the container runs the `consul-ecs mesh-init` command. | -| `environment` | list | This must include the `CONSUL_ECS_CONFIG_JSON` variable. See below for details. | +| `environment` | list | This must include the [`CONSUL_ECS_CONFIG_JSON`](/docs/ecs/manual-installation#consul_ecs_config_json) variable. See below for details. | -Configuration is passed to the `consul-ecs mesh-init` command in JSON format using the `CONSUL_ECS_CONFIG_JSON` environment variable. -Here is the sample config from above, expanded to be readable: +### `CONSUL_ECS_CONFIG_JSON` + +Configuration is passed to the `consul-ecs` binary in JSON format using the `CONSUL_ECS_CONFIG_JSON` environment variable. + +The following is an example of the configuration that might be used for a service named `example-client-app` with one upstream +service name `example-server-app`. The `proxy` and `service` blocks include information used by `consul-ecs-mesh-init` to perform +[service registration](/docs/discovery/services) with Consul during task startup. The same configuration format is used for +the `consul-ecs-health-sync` container. ```json { @@ -356,13 +377,14 @@ Here is the sample config from above, expanded to be readable: } ``` -| Field name | Type | Description | -| ----------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------ | -| `bootstrapDir` | string | This is the path of a shared volume the is mounted to other containers, where `mesh-init` will write out Envoy configuration. | -| `proxy.upstreams` | list | The upstream services that your application calls over the service mesh, if any. | -| `service.name` | string | The name used to register this service into the Consul service catalog. | -| `service.port` | number | The port your application listens on. Set to `0` if your application does not listen on any port. | -| `service.checks` | list | Specifies the Consul health [checks](/docs/discovery/checks) to run against your application. | +| Field name | Type | Description | +| ---------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | +| `bootstrapDir` | string | This is the path of a shared volume the is mounted to other containers, where `consul-ecs-mesh-init` will write out Envoy configuration. | +| `healthSyncContainers` | list | Used for [health status syncing](/docs/ecs/manual-installation#consul-ecs-health-sync-container) from ECS to Consul. See below for details. | +| `proxy.upstreams` | list | The upstream services that your application calls over the service mesh, if any. The `destinationName` and `localBindPort` fields are required. | +| `service.name` | string | The name used to register this service into the Consul service catalog. | +| `service.port` | integer | The port your application listens on. Set to `0` if your application does not listen on any port. | +| `service.checks` | list | Consul [checks](/docs/discovery/checks) to include so that Consul can run health checks against your application. | See the [`consul-ecs JSON Schema`](https://github.com/hashicorp/consul-ecs/blob/main/config/schema.json) for a complete reference of fields. @@ -397,8 +419,10 @@ For example, the following defines an ECS health check command that runs `curl l -First, tell Consul ECS which containers need their health status synced into Consul. To do this, -add the container name(s) to the `healthSyncContainers` list of the `CONSUL_ECS_CONFIG_JSON` variable: +First, define which containers need their health status synced into Consul. To do this, +add the container name(s) to the `healthSyncContainers` list of the `CONSUL_ECS_CONFIG_JSON` variable, +as shown in the following example. This configuration must be passed to both the `consul-ecs-mesh-init` +and `consul-ecs-health-sync` containers. @@ -412,8 +436,9 @@ add the container name(s) to the `healthSyncContainers` list of the `CONSUL_ECS_ -Next, pass the new configuration to the `consul-ecs-mesh-init` container. You should compact and escape the JSON -configuration above, and copy the result into the `CONSUL_ECS_CONFIG_JSON` environment variable: +Next, set the `CONSUL_ECS_CONFIG_JSON` variable for the `consul-ecs-mesh-init` container. +The following example shows how the `CONSUL_ECS_CONFIG_JSON` variable should be formatted. +The JSON configuration is compacted down to a single line and escaped. @@ -439,8 +464,8 @@ configuration above, and copy the result into the `CONSUL_ECS_CONFIG_JSON` envir Finally, include the `consul-ecs-health-sync` container in the `containerDefinitions` list. -The exact same configuration for the `CONSUL_ECS_CONFIG_JSON` environment variable is used -for the health sync container. +Pass the same value for `CONSUL_ECS_CONFIG_JSON` for both the `consul-ecs-health-sync` +and `consul-ecs-mesh-init` containers. From 270b8255cd63d46cf136474e13ba7dcc54607cdd Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Tue, 25 Jan 2022 12:24:37 -0600 Subject: [PATCH 361/404] docs: Refine ECS installation docs Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> --- website/content/docs/ecs/install.mdx | 95 ++++++++++++++++--- .../content/docs/ecs/manual-installation.mdx | 27 +++--- 2 files changed, 98 insertions(+), 24 deletions(-) diff --git a/website/content/docs/ecs/install.mdx b/website/content/docs/ecs/install.mdx index dc35b53ef..ce51332b5 100644 --- a/website/content/docs/ecs/install.mdx +++ b/website/content/docs/ecs/install.mdx @@ -11,6 +11,17 @@ This topic describes how to use the [`mesh-task`](https://registry.terraform.io/ This topic does not include instructions for creating all AWS resources necessary to install Consul, such as a VPC or the ECS cluster. Refer to the linked guides in the [Getting Started](/docs/ecs#getting-started) section for complete, runnable examples. +## Overview + +This topic describes the following procedure: + +1. Create Terraform configuration files for the necessary components: + + * [ECS task definition](#using-the-mesh-task-module): Use the `mesh-task` module to create an ECS task definition for Consul on ECS + * [ECS service](#ecs-service): Use the `aws_ecs_service` resource to create an ECS service that schedules service mesh tasks to run on ECS + +2. [Run Terraform](#running-terraform) to deploy the resources in AWS + ## Prerequisites * You should have some familiarity with using Terraform. Refer to the [Terraform documentation](https://www.terraform.io/docs) to learn about infrastructure as code and how to get started with Terraform. @@ -23,7 +34,9 @@ and additional sidecar containers, such as the Consul agent container and the En The [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task) will automatically include the necessary sidecar containers. -The following example shows a Terraform configuration file that creates a task definition with an application container called `example-client-app`. +The following example shows a Terraform configuration file that creates a task definition with an application container called `example-client-app` in a file called `mesh-task.tf`: + + ```hcl module "my_task" { @@ -54,26 +67,84 @@ module "my_task" { } ``` -All possible inputs are documented in the [module reference documentation](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task?tab=inputs), -however there are some important inputs worth highlighting: + + +The following fields are required. Refer to the [module reference documentation](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task?tab=inputs) for a complete reference. | Input Variable | Type | Description | | ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `source` and `version` | string | This specifies the source location and version of the `mesh-task` module. | +| `source` | string | Must be set to the source location of the `mesh-task` module, `hashicorp/consul-ecs/aws//modules/mesh-task`. | +| `version` | string | Must be set to the version of the `mesh-task` module. | | `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name by default. | | `container_definitions` | list | This is the list of [container definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions) for the task definition. This is where you include your application containers. | | `port` | integer | The port that your application listens on, if any. If your application does not listen on a port, set `outbound_only = true`. | | `retry_join` | list | The is the [`retry_join`](/docs/agent/options#_retry_join) option for the Consul agent, which specifies the locations of your Consul servers. | +### Running Terraform + +You will need to run Terraform to create the task definition. + +Save the Terraform configuration for the task definition to a file, such as `mesh-task.tf`. +You should place this file in a directory alongside other Terraform configuration files for your project. + +The `mesh-task` module requires the AWS Terraform provider. The following example shows how to include +and configure the AWS provider in a file called `provider.tf`. Refer to the [AWS Terraform provider](https://registry.terraform.io/providers/hashicorp/aws/latest/docs) +documentation for complete configuration details. + + + +```hcl +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = "" + } + } +} + +provider "aws" { + region = "" + ... +} +``` + + + +Additional AWS resources for your project can be included in additional Terraform configuration files +in the same directory. The following example shows a basic project directory: + +```shell-session +$ ls +mesh-task.tf +provider.tf +... +``` + +Terraform should be run in your project directory as follows. + +* Run `terraform init` first to download dependencies, such as Terraform providers +* Run `terraform apply` to have Terraform create AWS resources, such as the task definition from the `mesh-task` module. + +Terraform automatically reads all files in the current directory that have a `.tf` file extension. +Refer to the [Terraform documentation](https://www.terraform.io/docs) for more information and Terraform best practices. + ## ECS Service [ECS services](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html) are one of the most common -ways to start tasks using a task definition.. +ways to start tasks using a task definition. -To define an ECS Service, reference the mesh-task module's `task_definition_arn` output value -in your `aws_ecs_service` resource: +To define an ECS service, reference the `mesh-task` module's `task_definition_arn` output value +in your `aws_ecs_service` resource. The following example shows how to include the service in the `mesh-task.tf` file. + + ```hcl +module "my_task" { + source = "hashicorp/consul-ecs/aws//modules/mesh-task" + ... +} + resource "aws_ecs_service" "my_task" { name = "my_task_service" task_definition = module.my_task.task_definition_arn @@ -83,6 +154,8 @@ resource "aws_ecs_service" "my_task" { } ``` + + This is a partial configuration to highlight some important fields. See the [`aws_ecs_service`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_service) documentation for a complete reference. @@ -93,10 +166,10 @@ See the [`aws_ecs_service`](https://registry.terraform.io/providers/hashicorp/aw | `launch_type` | string | The launch type. Consul on ECS supports the `FARGATE` and `EC2` launch types. | | `propagate_tags` | string | This must be set to `TASK_DEFINITION` so that tags added by `mesh-task` to the task definition are copied to tasks. | -After defining the Terraform configuration for both the `mesh-task` and ECS service, -run `terraform apply` to create the ECS task definition and service resources. The ECS -service will soon start your application in a task. The task will automatically -register itself into the Consul service catalog. +After including the ECS service in your Terraform configuration, run `terraform apply` +from your project directory to create the ECS service resource. The ECS service will +soon start your application in a task. The task will automatically register itself +into the Consul service catalog during startup. -> **NOTE:** If your tasks run in a public subnet, they must have `assign_public_ip = true` in their [`network_configuration`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_service#network_configuration) block so that ECS can pull the Docker images. diff --git a/website/content/docs/ecs/manual-installation.mdx b/website/content/docs/ecs/manual-installation.mdx index 56ca85827..31e57eac3 100644 --- a/website/content/docs/ecs/manual-installation.mdx +++ b/website/content/docs/ecs/manual-installation.mdx @@ -52,10 +52,10 @@ during task startup. | Field name | Type | Description | | ---------------------- | ------ | ------------------------------------------------------------------------------------------------------------------ | -| `family` | string | The task family name. This is used as the Consul service name by default. | +| `family` | string | The task family name. This is used as the Consul service name by default. | | `networkMode` | string | Must be `awsvpc`, which is the only network mode supported by Consul on ECS. | -| `volumes` | list | Must be defined as shown above. Volumes are used to share configuration between containers for intial task setup. | -| `containerDefinitions` | list | The list of containers to run in this task (see below). | +| `volumes` | list | Must be defined as shown above. Volumes are used to share configuration between containers for intial task setup. | +| `containerDefinitions` | list | The list of containers to run in this task (see [Application container](#application-container)). | ## Application container @@ -218,16 +218,17 @@ Each task must include a Consul client container in order for the task to join y -| Field name | Type | Description | -| ------------- | ------- | ------------------------------------------------------------------------------------------------------------------- | -| `name` | string | The container name, which should always be `consul-client`. | -| `image` | string | The Consul image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul`, to avoid rate limits. | -| `mountPoints` | list | Must be set as shown above. Volumes are mounted to share information with other containers for task setup. | -| `entrypoint` | list | Must be set to a plain shell so that the startup `command` works properly. | -| `command` | list | The startup command. See below for details. | +| Field name | Type | Description | +| ------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The container name, which should always be `consul-client`. | +| `image` | string | The Consul image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul`, to avoid rate limits. | +| `mountPoints` | list | Must be set as shown above. Volumes are mounted to share information with other containers for task setup. | +| `entrypoint` | list | Must be set to a plain shell so that the startup `command` works properly. | +| `command` | list | Specifies the contents of the [startup script](#consul-client-startup-script). Copy the script and format it into a JSON string. | -The following is the recommended `command` script for the Consul agent. -This is the same as the above `command` field, but is unescaped and has comments added. +### Consul client startup script + +The following script is used to start the Consul client for Consul on ECS. ```shell # Copy the consul binary to a shared volume for `consul-ecs-mesh-init` to use to generate Envoy configuration. @@ -271,7 +272,7 @@ The following table describes the values that you should use to configure the `c | -------------------- | ------- | ------------------------------------------------------------------------------------------------------------ | | `addresses.*` | strings | Set the DNS, GRPC, and HTTP addresses to `127.0.0.1` to ensure these are not accessible outside of the task. | | `advertise_addr` | string | Must be set to the task IP address so that other Consul agents know how to reach this agent. | -| `client_addr` | string | Must be set to an interface reacable by other Consul agents. | +| `client_addr` | string | Must be set to an interface reachable by other Consul agents. | | `datacenter` | string | Must be set to the Consul datacenter this task will join. | | `leave_on_terminate` | boolean | Must be set to `true` so that the Consul agent leaves the cluster gracefully before exiting. | | `retry_join` | string | Must be set to your Consul server location(s) so this agent can join the Consul cluster. | From 558967c767888275e19ce4fef2cb1daf348f3b95 Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Mon, 24 Jan 2022 17:43:20 -0600 Subject: [PATCH 362/404] docs: Manual secure configuration for ECS --- website/content/docs/ecs/index.mdx | 6 +- .../docs/ecs/manual/acl-controller.mdx | 213 +++++++++++++++++ .../install.mdx} | 37 ++- .../docs/ecs/manual/secure-configuration.mdx | 215 ++++++++++++++++++ website/content/docs/ecs/requirements.mdx | 4 +- .../docs/ecs/{ => terraform}/install.mdx | 2 +- .../migrate-existing-tasks.mdx | 4 +- .../secure-configuration.mdx} | 10 +- website/data/docs-nav-data.json | 42 +++- 9 files changed, 501 insertions(+), 32 deletions(-) create mode 100644 website/content/docs/ecs/manual/acl-controller.mdx rename website/content/docs/ecs/{manual-installation.mdx => manual/install.mdx} (92%) create mode 100644 website/content/docs/ecs/manual/secure-configuration.mdx rename website/content/docs/ecs/{ => terraform}/install.mdx (99%) rename website/content/docs/ecs/{ => terraform}/migrate-existing-tasks.mdx (96%) rename website/content/docs/ecs/{production-installation.mdx => terraform/secure-configuration.mdx} (92%) diff --git a/website/content/docs/ecs/index.mdx b/website/content/docs/ecs/index.mdx index 1078d65c7..cf9e63816 100644 --- a/website/content/docs/ecs/index.mdx +++ b/website/content/docs/ecs/index.mdx @@ -9,7 +9,8 @@ description: >- # AWS ECS Consul service mesh applications can be deployed on [AWS Elastic Container Service](https://aws.amazon.com/ecs/) (ECS) -using our official Terraform modules. +using either our official [Terraform modules](/docs/ecs/terraform/install) or without Terraform by [manually configuring +the task definition](/docs/ecs/manual/install). ## Service Mesh @@ -37,4 +38,5 @@ There are several ways to get started with Consul with ECS. * The [Consul with Dev Server on Fargate](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-fargate) example installation deploys a sample application in ECS using the Fargate launch type. * The [Consul with Dev Server on EC2](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-ec2) example installation deploys a sample application in ECS using the EC2 launch type. -See the [Requirements](/docs/ecs/requirements) and the full [Install Guide](/docs/ecs/install) when you're ready to install Consul on an existing ECS cluster and add existing tasks to the service mesh. +See the [Requirements](/docs/ecs/requirements) and then choose whether to [install with Terraform](/docs/ecs/terraform/install) or [install without Terraform](/docs/ecs/manual/install) +when you're ready to install Consul on an existing ECS cluster and add tasks to the service mesh. diff --git a/website/content/docs/ecs/manual/acl-controller.mdx b/website/content/docs/ecs/manual/acl-controller.mdx new file mode 100644 index 000000000..7264ea4f2 --- /dev/null +++ b/website/content/docs/ecs/manual/acl-controller.mdx @@ -0,0 +1,213 @@ +--- +layout: docs +page_title: ACL Controller - AWS ECS +description: >- + Manual Deployment of the ACL Controller for Consul Service Mesh on AWS ECS (Elastic Container Service). +--- + +# Install the ACL Controller + +This topic describes how to manually deploy the ACL controller to [automatically provision ACL tokens](/docs/ecs/architecture#automatic-acl-token-provisioning) for Consul on ECS. +If you are using Terraform, refer to the [Terraform Secure Configuration](/docs/ecs/terraform/secure-configuration) page to deploy the ACL controller. + +## Prerequisites + +* Your application tasks must include certain tags to be compatible with the ACL controller. +Refer to the [Task Tags](/docs/ecs/manual/install#task-tags) section of the installation page. +* You should be familiar with configuring Consul's secure features, including how to create ACL tokens and policies. Refer to the following [Learn Guides](https://learn.hashicorp.com/collections/consul/security) for an introduction and the [ACL system](/docs/security/acl) documentation for more information. + +## Setup AWS Secrets Manager + +The ACL controller supports managing secrets in AWS Secrets Manager. + +Before deploying the ACL controller for the first time, you must [create the following secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html) from Consul in AWS Secrets Manager. + +| Secret | Initial Value | Sample Secret Name | +| --------------------- | -------------- | ------------------------------ | +| Consul server CA cert | Set | `my-consul-ca-cert` | +| Bootstrap ACL Token | Set | `my-consul-bootstrap-token` | +| Consul Client ACL Token | Empty | `-consul-client-token` | + +The secret for the client token must be intially empty. The ACL controller creates the client token in Consul +and stores the token in Secrets Manager. In the secret name, `` should be replaced with the +[secret name prefix](/docs/ecs/manual/acl-controller#secret-name-prefix) of your choice. + +### Secret Name Prefix + +The ACL controller requires that the secrets it reads and writes are named with a unique prefix. The name prefix is used +in the [Task Role Policy](/docs/ecs/manual/acl-controller#task-role-policy) to limit the ACL controller's access within +AWS Secrets Manager to only those secrets strictly needed by the ACL controller. + +The name prefix should be unique among secrets your AWS account. We recommend a short (8 character) random +string for the prefix. + +-> **NOTE:** If you are using the ACL controller with multiple ECS clusters, each cluster requires +its own instance of the ACL controller, and each instance of the ACL controller should have a unique +name prefix. + +## Task Definition + +You must create a task definition to deploy the ACL controller in your ECS cluster. +The ACL controller must run in the same ECS cluster hosting your service mesh application +tasks. + +The following example shows how the task definition should be configured for the ACL controller. + +```json +{ + "family": "my-consul-acl-controller". + "networkMode": "awsvpc", + "containerDefinitions": [ + { + "name": "acl-controller", + "image": "public.ecr.aws/hashicorp/consul-ecs:", + "essential": true, + "command": [ + "acl-controller", + "-consul-client-secret-arn", "arn:aws:secretsmanager:us-west-2:000000000000:secret:-consul-client-token", + "-secret-name-prefix", "", + ], + "secrets": [ + { + "name": "CONSUL_HTTP_TOKEN", + "valueFrom": "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-bootstrap-token" + }, + { + "name": "CONSUL_CACERT_PEM", + "valueFrom": "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-ca-cert" + } + ], + "environment": [ + { + "name": "CONSUL_HTTP_ADDR", + "value": "" + } + ] + } + ] +} +``` + +You must include the following top-level fields. + +| Field name | Type | Description | +| ----------- | ------- | ---------------------------------------------------------------------------- | +| `family` | string | The task family name of your choice. | +| `networkMode` | string | Must be `awsvpc`, which is the only network mode supported by Consul on ECS. | + +In the `containerDefinitions` list, include one container with the following fields. + +| Field name | Type | Description | +| ----------- | ------- | -------------------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The container name, which should be `acl-controller` | +| `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | +| `command` | list | Must be set as shown. The startup command for the ACL controller. | +| `essential` | boolean | Must be `true` to ensure the container health ties into the health of the task. | +| `secrets` | list | Must have `CONSUL_HTTP_TOKEN` set to the ACL bootstrap token and `CONSUL_CACERT_PEM` set to the Consul server CA certificate. | +| `environment` | string | Must set the `CONSUL_HTTP_ADDR` environment variable to the address of the HTTP API of your Consul servers. | + +The following CLI options are required in the `command` field of the container definition. + +| Flag | Type | Description | +| --------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------- | +| `-consul-client-secret-arn` | string | The secret where the ACL controller will store the Consul client token. | +| `-secret-name-prefix` | string | The [secret name prefix](/docs/ecs/manual/acl-controller#secret-name-prefix) that you chose for this ACL controller. | + +## ECS Service + +Once the task definition is created, define an ECS service in order to start an ACL controller task. + +The following example contains the recommended settings for the ACL controller. Refer to +the [ECS service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service_definition_parameters.html) documentation +to complete the remaining details for your use case. + +```json +{ + "cluster": "" + "desiredCount": 1, + "launchType": "FARGATE", + "serviceName": "my-acl-controller", + "taskDefinition": "", + ... +} +``` + +| Field name | Type | Description | +| ---------------- | ------- | ---------------------------------------------------------------------------------------------------------------- | +| `cluster` | string | Set to your ECS cluster name or ARN. This must be the same ECS cluster where your service mesh applications run. | +| `desiredCount` | integer | Must be 1. Only one instance of the ACL controller should run per ECS cluster. | +| `launchType` | string | Consul on ECS supports both the `FARGATE` and `EC2` launch types. | +| `serviceName` | string | The service name of your choice. | +| `taskDefinition` | string | Must be set to the ACL controller [task definition](/docs/ecs/manual/acl-controller#task-definition). | + +## AWS IAM Roles + +The ECS task and execution roles must be configured to allow the ACL controller access +to the ECS API and Secrets Manager API. + +### Task Role Policy + +The following example shows the policy needed for the ECS task role for the ACL controller. +This grants the ACL controller permission to list tasks, describe tasks, and read and update +secrets. + +```json +{ + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "ecs:ListTasks", + "ecs:DescribeTasks" + ], + "Resource": ["*"] + }, + { + "Effect": "Allow", + "Action": [ + "secretsmanager:GetSecretValue", + "secretsmanager:UpdateSecret" + ], + "Resource": [ + "arn:aws:secretsmanager:us-west-2:000000000000:secret:-*" + ] + } + ] +} +``` + +The following are the required permissions. You will need to substitute `` with your chosen [name prefix](/docs/ecs/manual/acl-controller#secret-name-prefix). + +| Action | Resource | Description | +| ------------------------------- | ----------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `ecs:ListTasks` | `*` | Allow the ACL controller to watch for new tasks. | +| `ecs:DescribeTasks` | `*` | Allow the ACL controller to retrieve details for new tasks. | +| `secretsmanager:GetSecretValue` | `arn:aws:secretsmanager:us-west-2:000000000000:secret:-*` | Allow the ACL controller to read secrets with a name prefix. | +| `secretsmanager:UpdateSecret` | `arn:aws:secretsmanager:us-west-2:000000000000:secret:-*` | Allow the ACL controller to store Consul ACL tokens in secrets with a name prefix. | + +### Execution Role Policy + +The following IAM policy document allows ECS to retrieve secrets needed +to start the ACL controller task from AWS Secrets Manager, including the ACL +bootstrap token. + +The following example shows the policy needed for the execution role. + +```json +{ + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "secretsmanager:GetSecretValue" + ], + "Resource": [ + "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-bootstrap-token", + "arn:aws:secretsmanager:us-west-2:000000000000:secret:-consul-client-token" + ] + } + ] +} +``` diff --git a/website/content/docs/ecs/manual-installation.mdx b/website/content/docs/ecs/manual/install.mdx similarity index 92% rename from website/content/docs/ecs/manual-installation.mdx rename to website/content/docs/ecs/manual/install.mdx index 31e57eac3..87b98ed86 100644 --- a/website/content/docs/ecs/manual-installation.mdx +++ b/website/content/docs/ecs/manual/install.mdx @@ -7,7 +7,7 @@ description: >- # Manual Installation -The following instructions describe how to manually create the ECS task definition using the [`consul-ecs` Docker image](https://gallery.ecr.aws/hashicorp/consul-ecs) without Terraform. Refer to the [Consul ECS Terraform module](/docs/ecs/install) documentation for an alternative method for installing Consul on ECS. +The following instructions describe how to manually create the ECS task definition using the [`consul-ecs` Docker image](https://gallery.ecr.aws/hashicorp/consul-ecs) without Terraform. Refer to the [Consul ECS Terraform module](/docs/ecs/terraform/install) documentation for an alternative method for installing Consul on ECS. This topic does not include instructions for creating all AWS resources necessary to install Consul, such as a VPC or the ECS cluster. Refer to the linked guides in the [Getting Started](/docs/ecs#getting-started) section for complete, runnable examples. @@ -47,6 +47,16 @@ during task startup. } ], "containerDefinitions": [...] + "tags": [ + { + "key": "consul.hashicorp.com/mesh", + "value": "true" + }, + { + "key": "consul.hashicorp.com/service-name", + "value": "example-client-app" + } + ] } ``` @@ -57,6 +67,16 @@ during task startup. | `volumes` | list | Must be defined as shown above. Volumes are used to share configuration between containers for intial task setup. | | `containerDefinitions` | list | The list of containers to run in this task (see [Application container](#application-container)). | +### Task Tags + +The `tags` list must include the following if you are using the ACL controller in a [secure configuration](/docs/manual/secure-configuration). +Without these tags, the ACL controller will be unable to provision a service token for the task. + +| Tag Key | Tag Value | Description | +| ----------------------------------- | ------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| `consul.hashicorp.com/mesh` | `true` (string) | The ACL controller ignores tasks without this tag set to `true`. | +| `consul.hashicorp.com/service-name` | Consul service name | Specifies the Consul service associated with this task. Required if the service name is different than the task `family`. | + ## Application container First, include your application container in the `containerDefinitions` list @@ -339,13 +359,13 @@ configuration to a shared volume. -| Field name | Type | Description | -| ----------- | ------- | ------------------------------------------------------------------------------------------------------------------- | -| `name` | string | The container name should be `consul-ecs-mesh-init`. | -| `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | -| `mountPoints` | list | Must be set as show above, so the `consul` and `consul-ecs` binaries can be shared among containers for task setup. | -| `command` | list | Set the `["mesh-init"]` so that the container runs the `consul-ecs mesh-init` command. | -| `environment` | list | This must include the [`CONSUL_ECS_CONFIG_JSON`](/docs/ecs/manual-installation#consul_ecs_config_json) variable. See below for details. | +| Field name | Type | Description | +| ----------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The container name should be `consul-ecs-mesh-init`. | +| `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | +| `mountPoints` | list | Must be set as show above, so the `consul` and `consul-ecs` binaries can be shared among containers for task setup. | +| `command` | list | Set to `["mesh-init"]` so that the container runs the `consul-ecs mesh-init` command. | +| `environment` | list | This must include the [`CONSUL_ECS_CONFIG_JSON`](/docs/ecs/manual-installation#consul_ecs_config_json) variable. See below for details. | ### `CONSUL_ECS_CONFIG_JSON` @@ -529,3 +549,4 @@ and `consul-ecs-mesh-init` containers. * Create the task definition using the [AWS Console](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html) or the [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/ecs/register-task-definition.html), or another method of your choice. * Create an [ECS Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html) to start tasks using the task definition. +* Follow the [Secure Configration](/docs/ecs/manual/secure-configuration) to get production-ready. diff --git a/website/content/docs/ecs/manual/secure-configuration.mdx b/website/content/docs/ecs/manual/secure-configuration.mdx new file mode 100644 index 000000000..57b12467c --- /dev/null +++ b/website/content/docs/ecs/manual/secure-configuration.mdx @@ -0,0 +1,215 @@ +--- +layout: docs +page_title: Secure Configuration - AWS ECS +description: >- + Manual Secure Confguration of the Consul Service Mesh on AWS ECS (Elastic Container Service). +--- + +# Secure Configuration + +For a production-ready installation of Consul on ECS, you will need to make sure that the cluster is secured. +A secure Consul cluster should include the following: + +1. [TLS Encryption](/docs/security/encryption#rpc-encryption-with-tls) for RPC communication between Consul clients and servers. +1. [Gossip Encryption](/docs/security/encryption#gossip-encryption) for encrypting gossip traffic. +1. [Access Control (ACLs)](/docs/security/acl) for authentication and authorization for Consul clients and services on the mesh. + +-> **NOTE:** This page assumes that you have already configured your Consul server with the above features. + +## Prerequisites + +* You should already have followed the [installation instructions](/docs/ecs/manual/install) to understand how to define +the necessary components of the task definition for Consul on ECS. +* You should be familiar with [specifying sensitive data](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html) on ECS. +* You should be familiar with configuring Consul's secure features, including how to create ACL tokens and policies. Refer to the following [Learn Guides](https://learn.hashicorp.com/collections/consul/security) for an introduction and the [ACL system](/docs/security/acl) documentation for more information. + +## ACL Tokens + +You must create two types of ACL tokens for Consul on ECS: + +* **Client tokens:** used by the `consul-client` containers to join the Consul cluster +* **Service tokens:** used by sidecar containers for service registration and health syncing + +The following sections describe the ACL polices which must be associated with these token types. + +-> **NOTE:** This section describes how operators would create ACL tokens by hand. To ease operator +burden, the ACL Controller can automatically create ACL tokens for Consul on ECS. Refer to the +[ACL Controller](/docs/manual/acl-controller) page for installation details. + +### Create Consul client token + +You must create a token for the Consul client. This is a shared token used by the `consul-client` +containers to join the Consul cluster. + +The following is the ACL policy needed for the Consul client token: + +```hcl +node_prefix "" { + policy = "write" +} +service_prefix "" { + policy = "read" +} +``` + +This policy allows `node:write` for any node name, which is necessary because the Consul node +names on ECS are not known until runtime. + +### Create service tokens + +Service tokens should be associated with a [service identity](https://www.consul.io/docs/security/acl/acl-system#acl-service-identities). +The service identity includes `service:write` permissions for the service and sidecar proxy. + +The following example shows how to use the Consul CLI to create a service token for a service named `example-client-app`: + +```shell +consul acl token create -service-identity=example-client-app ... +``` + +-> **NOTE**: You will need to create one service token for each registered Consul service in ECS, +including when new services are added to the service mesh. + +## Secret storage + +You should securely store the following secrets in order to make them available to ECS tasks. + +1. Consul Server CA certificate +2. Consul gossip encryption key +3. Consul client ACL token +4. Consul service ACL tokens (one per service) + +These secrets can be securely stored and passed to ECS tasks using either of the following AWS secret services: + +* [AWS Systems Manager Parameter Store](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data-parameters.html) +* [AWS Secrets Manager](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data-secrets.html) + +Once the secrets are stored they can be referenced using their ARN. The following shows +example secret ARNs when using AWS Secrets Manager: + +| Secret | Sample Secret ARN | +| ---------------------- | ---------------------------------------------------------------------------------- | +| Consul Server CA Cert | `arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-ca-cert` | +| Gossip encryption key | `arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-gossip-key` | +| Client token | `arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-client-token` | +| Service token | `arn:aws:secretsmanager:us-west-2:000000000000:secret:my-example-client-app-token` | + +## Configure `consul-client` + +The following secrets must be passed to the `consul-client` container: + +* Consul server CA certificate +* Gossip encryption key +* Consul client ACL token + +The following example shows how to include these secrets in the task definition. The `secrets` +list specifies environment variable `name`s that will be set to the secret values for this container. +ECS automatically fetches the secret values specified in the `valueFrom` fields during task provisioning. + +```json +{ + "containerDefinitions": [ + { + "name": "consul-client" + "image": "public.ecr.aws/hashicorp/consul:", + "secrets": [ + { + "name": "CONSUL_CACERT", + "valueFrom": "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-ca-cert" + }, + { + "name": "CONSUL_GOSSIP_ENCRYPTION_KEY", + "valueFrom": "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-gossip-key" + }, + { + "name": "AGENT_TOKEN", + "valueFrom": "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-consul-client-token" + } + ] + }, + ... + ] +} +``` + +Next, update Consul configuration options to pass the secrets to the Consul client. + +The following is an example of the *additional* content to include in the `consul-client` startup script. Refer to the [install +page](/docs/ecs/manual/install#consul-client-container) for the remainder of the startup script and how to pass this +script to the container. + + + +```shell +... + +# Write the CA Cert to a file +echo "$CONSUL_CACERT" > /tmp/consul-ca-cert.pem + +# Write the Consul agent configuration file. +cat << EOF > /consul/agent-defaults.hcl +... + +# Configure gossip encryption key +encrypt = "$CONSUL_GOSSIP_ENCRYPTION_KEY" + +# Configure TLS settings +auto_encrypt = { + tls = true + ip_san = ["$ECS_IPV4"] +} +ca_file = "/tmp/consul-ca-cert.pem" +verify_outgoing = true + +# Configure ACLs +acl { + enabled = true + default_policy = "deny" + down_policy = "async-cache" + tokens { + agent = "$AGENT_TOKEN" + } +} + +EOF +``` + + + +The following are the additional fields that must be included in the Consul client configuration file. + +| Field name | Type | Description | +| --------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------ | +| [`encrypt`](/docs/agent/options#_encrypt) | string | Specifies the gossip encryption key | +| [`ca_file`](/docs/agent/options#ca_file) | string | Specifies the Consul server CA cert for TLS verification. | +| [`acl.enabled`](/docs/agent/options#acl_enabled) | boolen | Enable ACLs for this agent. | +| [`acl.tokens.agent`](/docs/agent/options#acl_tokens_agent) | string | Specifies the Consul client token which authorizes this agent with Consul servers. | + +## Configure `consul-ecs-mesh-init` and `consul-ecs-health-sync` + +Both `consul-ecs-mesh-init` and `consul-ecs-health-sync` containers need to be configured with +the service ACL token. This allows these containers to make HTTP API requests to the local +Consul client for service registration and health syncing. + +The following shows how to set the `CONSUL_HTTP_TOKEN` variable to the service token for the `example-client-app` service, +if the token is stored in AWS Secrets Manager. + + + +```json +{ + "containerDefinitions": [ + { + "secrets": [ + { + "name": "CONSUL_HTTP_TOKEN", + "valueFrom": "arn:aws:secretsmanager:us-west-2:000000000000:secret:my-example-client-app-token" + } + ] + }, + ... + ], + ... +} +``` + + diff --git a/website/content/docs/ecs/requirements.mdx b/website/content/docs/ecs/requirements.mdx index faedb2f2a..972b545a5 100644 --- a/website/content/docs/ecs/requirements.mdx +++ b/website/content/docs/ecs/requirements.mdx @@ -15,9 +15,9 @@ The following requirements must be met in order to install Consul on ECS: 1. **ACL Controller:** If you are running a secure Consul installation with ACLs enabled, configure the ACL controller. 1. **Sidecar containers:** Consul on ECS requires two sidecar containers to run in each ECS task: a Consul agent container and a sidecar proxy container. These additional sidecar containers must - be included in the ECS task definition. The [Consul ECS Terraform module](/docs/ecs/install) + be included in the ECS task definition. The [Consul ECS Terraform module](/docs/ecs/terraform/install) will include these sidecar containers for you. If you do not use Terraform, you can construct - the task definition yourself by following [our documentation](/docs/ecs/manual-installation). + the task definition yourself by following [our documentation](/docs/ecs/manual/install). 1. **Routing:** With your application running in tasks as part of the mesh, you must specify the upstream services that your application calls. You will also need to change the URLs your application uses to ensure the application is making requests through the service mesh. diff --git a/website/content/docs/ecs/install.mdx b/website/content/docs/ecs/terraform/install.mdx similarity index 99% rename from website/content/docs/ecs/install.mdx rename to website/content/docs/ecs/terraform/install.mdx index ce51332b5..6d9802666 100644 --- a/website/content/docs/ecs/install.mdx +++ b/website/content/docs/ecs/terraform/install.mdx @@ -268,7 +268,7 @@ python manage.py runserver "127.0.0.1:8080" ## Next Steps -- Configure a secure [Production Installation](/docs/ecs/production-installation). +- Follow the [Secure Configuration](/docs/ecs/secure-configuration) to get production-ready. - Now that your applications are running in the service mesh, read about other [Service Mesh features](/docs/connect). - View the [Architecture](/docs/ecs/architecture) documentation to understand diff --git a/website/content/docs/ecs/migrate-existing-tasks.mdx b/website/content/docs/ecs/terraform/migrate-existing-tasks.mdx similarity index 96% rename from website/content/docs/ecs/migrate-existing-tasks.mdx rename to website/content/docs/ecs/terraform/migrate-existing-tasks.mdx index 0d6a06923..7281a7a11 100644 --- a/website/content/docs/ecs/migrate-existing-tasks.mdx +++ b/website/content/docs/ecs/terraform/migrate-existing-tasks.mdx @@ -90,7 +90,7 @@ module "my_task" { } ] - port = "9090" + port = 9090 retry_join = ["
      "] } ``` @@ -111,5 +111,5 @@ resource. Now that your task(s) are migrated to the `mesh-task` module, -- Start at the [ECS Service section](/docs/ecs/install#ecs-service) of the Installation Guide to continue installing Consul on ECS. +- Start at the [ECS Service section](/docs/ecs/terraform/install#ecs-service) of the Installation Guide to continue installing Consul on ECS. - Refer to the [`mesh-task` reference documentation](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task?tab=inputs) for all available inputs to your mesh tasks. diff --git a/website/content/docs/ecs/production-installation.mdx b/website/content/docs/ecs/terraform/secure-configuration.mdx similarity index 92% rename from website/content/docs/ecs/production-installation.mdx rename to website/content/docs/ecs/terraform/secure-configuration.mdx index 9c8c6c6e6..0d6e9ef48 100644 --- a/website/content/docs/ecs/production-installation.mdx +++ b/website/content/docs/ecs/terraform/secure-configuration.mdx @@ -1,11 +1,11 @@ --- layout: docs -page_title: Production Installation - AWS ECS +page_title: Secure Configuration - AWS ECS description: >- - Production Installation of the Consul Service Mesh on AWS ECS (Elastic Container Service). + Secure Configuration of the Consul Service Mesh on AWS ECS (Elastic Container Service) with Terraform. --- -# Production Installation +# Secure Configuration For a production-ready installation of Consul on ECS, you will need to make sure that the cluster is secured. A secure Consul cluster should include the following: @@ -68,7 +68,7 @@ deploying this controller. ## Deploy Services Once the ACL controller is up and running, you will be able to deploy services on the mesh using the [`mesh-task` module](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task). -Start with the basic configuration for the [Task Module](/docs/ecs/install#task-module) and specify additional settings to make the configuration production-ready. +Start with the basic configuration for the [Task Module](/docs/ecs/terraform/install#task-module) and specify additional settings to make the configuration production-ready. First, you will need to create an AWS Secrets Manager secret for the gossip encryption key that the Consul clients should use. @@ -104,5 +104,5 @@ module "my_task" { } ``` -Now you can deploy your services! Follow the rest of the steps in the [Installation instructions](/docs/ecs/install#task-module) +Now you can deploy your services! Follow the rest of the steps in the [Installation instructions](/docs/ecs/terraform/install#task-module) to deploy and connect your services. diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index 3e1566d56..e55bf32d1 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -612,16 +612,38 @@ "path": "ecs/requirements" }, { - "title": "Installation with Terraform", - "path": "ecs/install" + "title": "Install with Terraform", + "routes": [ + { + "title": "Installation", + "path": "ecs/terraform/install" + }, + { + "title": "Secure Configuration", + "path": "ecs/terraform/secure-configuration" + }, + { + "title": "Migrate Existing Tasks", + "path": "ecs/terraform/migrate-existing-tasks" + } + ] }, { - "title": "Production Installation", - "path": "ecs/production-installation" - }, - { - "title": "Migrate Existing Tasks", - "path": "ecs/migrate-existing-tasks" + "title": "Install Manually", + "routes": [ + { + "title": "Installation", + "path": "ecs/manual/install" + }, + { + "title": "Secure Configuration", + "path": "ecs/manual/secure-configuration" + }, + { + "title": "ACL Controller", + "path": "ecs/manual/acl-controller" + } + ] }, { "title": "Architecture", @@ -630,10 +652,6 @@ { "title": "Consul Enterprise", "path": "ecs/enterprise" - }, - { - "title": "Manual Installation", - "path": "ecs/manual-installation" } ] }, From 44c69395bcba3b648cbc72bf5f45452b097b7828 Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Wed, 26 Jan 2022 17:12:34 -0600 Subject: [PATCH 363/404] docs: Fixes to ECS manual secure configuration Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com> --- website/content/docs/ecs/index.mdx | 5 +++-- website/content/docs/ecs/manual/acl-controller.mdx | 10 +++++----- website/content/docs/ecs/manual/install.mdx | 14 +++++++------- .../docs/ecs/manual/secure-configuration.mdx | 4 ++-- website/content/docs/ecs/terraform/install.mdx | 1 + 5 files changed, 18 insertions(+), 16 deletions(-) diff --git a/website/content/docs/ecs/index.mdx b/website/content/docs/ecs/index.mdx index cf9e63816..b62f2175d 100644 --- a/website/content/docs/ecs/index.mdx +++ b/website/content/docs/ecs/index.mdx @@ -38,5 +38,6 @@ There are several ways to get started with Consul with ECS. * The [Consul with Dev Server on Fargate](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-fargate) example installation deploys a sample application in ECS using the Fargate launch type. * The [Consul with Dev Server on EC2](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/examples/dev-server-ec2) example installation deploys a sample application in ECS using the EC2 launch type. -See the [Requirements](/docs/ecs/requirements) and then choose whether to [install with Terraform](/docs/ecs/terraform/install) or [install without Terraform](/docs/ecs/manual/install) -when you're ready to install Consul on an existing ECS cluster and add tasks to the service mesh. +Refer to the [Requirements](/docs/ecs/requirements) and use one of the following sets of instructions when you're ready to install Consul on an existing ECS cluster and add tasks to the service mesh: +* [Install with Terraform](/docs/ecs/terraform/install) +* [Install Manually](/docs/ecs/manual/install) diff --git a/website/content/docs/ecs/manual/acl-controller.mdx b/website/content/docs/ecs/manual/acl-controller.mdx index 7264ea4f2..eeb52b20f 100644 --- a/website/content/docs/ecs/manual/acl-controller.mdx +++ b/website/content/docs/ecs/manual/acl-controller.mdx @@ -16,7 +16,7 @@ If you are using Terraform, refer to the [Terraform Secure Configuration](/docs/ Refer to the [Task Tags](/docs/ecs/manual/install#task-tags) section of the installation page. * You should be familiar with configuring Consul's secure features, including how to create ACL tokens and policies. Refer to the following [Learn Guides](https://learn.hashicorp.com/collections/consul/security) for an introduction and the [ACL system](/docs/security/acl) documentation for more information. -## Setup AWS Secrets Manager +## Set Up Secrets The ACL controller supports managing secrets in AWS Secrets Manager. @@ -38,7 +38,7 @@ The ACL controller requires that the secrets it reads and writes are named with in the [Task Role Policy](/docs/ecs/manual/acl-controller#task-role-policy) to limit the ACL controller's access within AWS Secrets Manager to only those secrets strictly needed by the ACL controller. -The name prefix should be unique among secrets your AWS account. We recommend a short (8 character) random +The name prefix should be unique among secrets in your AWS account. We recommend using a short (8 character) random string for the prefix. -> **NOTE:** If you are using the ACL controller with multiple ECS clusters, each cluster requires @@ -55,7 +55,7 @@ The following example shows how the task definition should be configured for the ```json { - "family": "my-consul-acl-controller". + "family": "my-consul-acl-controller", "networkMode": "awsvpc", "containerDefinitions": [ { @@ -102,7 +102,7 @@ In the `containerDefinitions` list, include one container with the following fie | `name` | string | The container name, which should be `acl-controller` | | `image` | string | The `consul-ecs` image. Use our public AWS registry, `public.ecr.aws/hashicorp/consul-ecs`, to avoid rate limits. | | `command` | list | Must be set as shown. The startup command for the ACL controller. | -| `essential` | boolean | Must be `true` to ensure the container health ties into the health of the task. | +| `essential` | boolean | Must be `true` to ensure the health of your application container affects the health status of the task. | | `secrets` | list | Must have `CONSUL_HTTP_TOKEN` set to the ACL bootstrap token and `CONSUL_CACERT_PEM` set to the Consul server CA certificate. | | `environment` | string | Must set the `CONSUL_HTTP_ADDR` environment variable to the address of the HTTP API of your Consul servers. | @@ -135,7 +135,7 @@ to complete the remaining details for your use case. | Field name | Type | Description | | ---------------- | ------- | ---------------------------------------------------------------------------------------------------------------- | | `cluster` | string | Set to your ECS cluster name or ARN. This must be the same ECS cluster where your service mesh applications run. | -| `desiredCount` | integer | Must be 1. Only one instance of the ACL controller should run per ECS cluster. | +| `desiredCount` | integer | Must be `1`. Only one instance of the ACL controller should run per ECS cluster. | | `launchType` | string | Consul on ECS supports both the `FARGATE` and `EC2` launch types. | | `serviceName` | string | The service name of your choice. | | `taskDefinition` | string | Must be set to the ACL controller [task definition](/docs/ecs/manual/acl-controller#task-definition). | diff --git a/website/content/docs/ecs/manual/install.mdx b/website/content/docs/ecs/manual/install.mdx index 87b98ed86..d9804f8ed 100644 --- a/website/content/docs/ecs/manual/install.mdx +++ b/website/content/docs/ecs/manual/install.mdx @@ -112,11 +112,11 @@ this task and the service mesh. } ``` -| Field name | Type | Description | -| ----------- | ------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `name` | string | The name of your application container. | -| `image` | string | The container image used to run your application. | -| `essential` | boolean | Must be `true` to ensure your application container ties into the health of the task. | +| Field name | Type | Description | +| ----------- | ------- | -------------------------------------------------------------------------------------------------------------------------------- | +| `name` | string | The name of your application container. | +| `image` | string | The container image used to run your application. | +| `essential` | boolean | Must be `true` to ensure the health of your application container affects the health status of the task. | | `dependsOn` | list | Must be set as shown above. Container dependencies ensure your application container starts after service mesh setup is complete. | See the [ECS Task Definition](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) documentation for a complete reference. @@ -185,7 +185,7 @@ The following table describes the necessary configuration settings. | ------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | | `name` | string | The container name, which must be `sidecar-proxy`. | | `image` | string | The Envoy image. This must be a [supported version of Envoy](/docs/connect/proxies/envoy#supported-versions). | -| `dependsOn` | list | Must be set as shown above to ensure Envoy starts after the `consul-ecs-mesh-init` has written the `envoy-bootstrap.json` config file for Envoy. | +| `dependsOn` | list | Must be set as shown above to ensure Envoy starts after the `consul-ecs-mesh-init` container has written the `envoy-bootstrap.json` config file for Envoy. | | `healthCheck` | list | Must be set as shown above to monitor the health of Envoy's primary listener port, which ties into container dependencies and startup ordering. | | `mountPoints` | list | Must be set as shown above to access the files shared in the `/consul` directory, like the Envoy bootstrap configuration file and the `consul-ecs` binary. | | `ulimits` | list | The `nofile` ulimit must be raised to a sufficiently high value so that Envoy does not fail to open sockets. | @@ -400,7 +400,7 @@ the `consul-ecs-health-sync` container. | Field name | Type | Description | | ---------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | -| `bootstrapDir` | string | This is the path of a shared volume the is mounted to other containers, where `consul-ecs-mesh-init` will write out Envoy configuration. | +| `bootstrapDir` | string | This is the path of a shared volume that is mounted to other containers, where `consul-ecs-mesh-init` will write out Envoy configuration. | | `healthSyncContainers` | list | Used for [health status syncing](/docs/ecs/manual-installation#consul-ecs-health-sync-container) from ECS to Consul. See below for details. | | `proxy.upstreams` | list | The upstream services that your application calls over the service mesh, if any. The `destinationName` and `localBindPort` fields are required. | | `service.name` | string | The name used to register this service into the Consul service catalog. | diff --git a/website/content/docs/ecs/manual/secure-configuration.mdx b/website/content/docs/ecs/manual/secure-configuration.mdx index 57b12467c..3e2722a79 100644 --- a/website/content/docs/ecs/manual/secure-configuration.mdx +++ b/website/content/docs/ecs/manual/secure-configuration.mdx @@ -14,7 +14,7 @@ A secure Consul cluster should include the following: 1. [Gossip Encryption](/docs/security/encryption#gossip-encryption) for encrypting gossip traffic. 1. [Access Control (ACLs)](/docs/security/acl) for authentication and authorization for Consul clients and services on the mesh. --> **NOTE:** This page assumes that you have already configured your Consul server with the above features. +-> **NOTE:** In this topic, we assume that you have already configured your Consul server with the security-related features. ## Prerequisites @@ -175,7 +175,7 @@ EOF -The following are the additional fields that must be included in the Consul client configuration file. +The following table describes the additional fields that must be included in the Consul client configuration file. | Field name | Type | Description | | --------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------ | diff --git a/website/content/docs/ecs/terraform/install.mdx b/website/content/docs/ecs/terraform/install.mdx index 6d9802666..af1ad061f 100644 --- a/website/content/docs/ecs/terraform/install.mdx +++ b/website/content/docs/ecs/terraform/install.mdx @@ -77,6 +77,7 @@ The following fields are required. Refer to the [module reference documentation] | `version` | string | Must be set to the version of the `mesh-task` module. | | `family` | string | The [ECS task definition family](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#family). The family is also used as the Consul service name by default. | | `container_definitions` | list | This is the list of [container definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions) for the task definition. This is where you include your application containers. | +| `essential` | boolean | Must be `true` to ensure the health of your application container affects the health status of the task. | | `port` | integer | The port that your application listens on, if any. If your application does not listen on a port, set `outbound_only = true`. | | `retry_join` | list | The is the [`retry_join`](/docs/agent/options#_retry_join) option for the Consul agent, which specifies the locations of your Consul servers. | From 750d3e645b2514a1bdf64fef8abf8c88481c9c11 Mon Sep 17 00:00:00 2001 From: Paul Glass Date: Tue, 25 Jan 2022 14:30:27 -0600 Subject: [PATCH 364/404] docs: Add configuration reference for ECS --- .../docs/ecs/configuration-reference.mdx | 147 ++++++++++++++++++ website/content/docs/ecs/manual/install.mdx | 2 +- website/data/docs-nav-data.json | 4 + 3 files changed, 152 insertions(+), 1 deletion(-) create mode 100644 website/content/docs/ecs/configuration-reference.mdx diff --git a/website/content/docs/ecs/configuration-reference.mdx b/website/content/docs/ecs/configuration-reference.mdx new file mode 100644 index 000000000..8e39efb93 --- /dev/null +++ b/website/content/docs/ecs/configuration-reference.mdx @@ -0,0 +1,147 @@ +--- +layout: docs +page_title: AWS ECS +description: >- + Configuration Reference for Consul on AWS ECS (Elastic Container Service). + Do not modify by hand! This is automatically generated documentation. +--- + +# Configuration Reference + +This pages details the configuration options for the JSON config format used +by the `consul-ecs` binary. This configuration is passed to the `consul-ecs` +binary as a string using the `CONSUL_ECS_CONFIG_JSON` environment variable. + +This configuration format follows a [JSON schema](https://github.com/hashicorp/consul-ecs/blob/main/config/schema.json) +that can be used for validation. + +## Terraform Mesh Task Module Configuration + +The `mesh-task` Terraform module provides input variables for commonly used fields. +The following table shows which Terraform input variables correspond to each field +of the Consul ECS configuration. Refer to the +[Terraform registry documentation](https://registry.terraform.io/modules/hashicorp/consul-ecs/aws/latest/submodules/mesh-task?tab=inputs) +for a complete reference of supported input variables for the `mesh-task` module. + +| Terraform Input Variable | Consul ECS Config Field | +| ------------------------ | ------------------------------------- | +| `upstreams` | [`proxy.upstreams`](#proxy-upstreams) | +| `checks` | [`service.checks`](#service-checks) | +| `consul_service_name` | [`service.name`](#service) | +| `consul_service_tags` | [`service.tags`](#service) | +| `consul_service_meta` | [`service.meta`](#service) | +| `consul_namespace` | [`service.namespace`](#service) | +| `consul_partition` | [`service.partition`](#service) | + +Each of these Terraform input variables follow the Consul ECS config schema. +The remaining fields of the Consul ECS configuration not listed in this table can be passed +using the `consul_ecs_config` input variable. + +# Top-level fields + +These are the top-level fields for the Consul ECS configuration format. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `bootstrapDir` | `string` | required | The directory at which to mount the shared volume where Envoy bootstrap configuration is written by `consul-ecs mesh-init`. | +| `healthSyncContainers` | `array` | optional | The names of containers that will have health check status synced from ECS into Consul. Cannot be specified with `service.checks`. | +| [`proxy`](#proxy) | `object` | optional | Configuration for the sidecar proxy registration with Consul. | +| [`service`](#service) | `object` | required | Configuration for Consul service registration. | + +# `service` + +Configuration for Consul service registration. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| [`checks`](#service-checks) | `array` | optional | The list of Consul checks for the service. Cannot be specified with `healthSyncContainers`. | +| `enableTagOverride` | `boolean` | optional | Determines if the anti-entropy feature for the service is enabled | +| `meta` | `object` | optional | Key-value pairs of metadata to include for the Consul service. | +| `name` | `string` | optional | The name the service will be registered as in Consul. Defaults to the Task family name if empty or null. | +| `namespace` | `string` | optional | The Consul namespace where the service will be registered [Consul Enterprise]. | +| `partition` | `string` | optional | The Consul admin partition where the service will be registered [Consul Enterprise]. | +| `port` | `integer` | required | Port the application listens on, if any. | +| `tags` | `array` | optional | List of string values that can be used to add service-level labels. | +| [`weights`](#service-weights) | `object` | optional | Configures the weight of the service in terms of its DNS service (SRV) response. | + +# `service.checks` + +Defines the Consul checks for the service. Each check may contain these fields. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `aliasNode` | `string` | optional | Specifies the ID of the node for an alias check. | +| `aliasService` | `string` | optional | Specifies the ID of a service for an alias check. | +| `args` | `array` | optional | Command arguments to run to update the status of the check. | +| `body` | `string` | optional | Specifies a body that should be sent with `HTTP` checks. | +| `checkId` | `string` | optional | The unique ID for this check on the node. Defaults to the check `name`. | +| `failuresBeforeCritical` | `integer` | optional | Specifies the number of consecutive unsuccessful results required before check status transitions to critical. | +| `grpc` | `string` | optional | Specifies a `gRPC` check. Must be an endpoint that supports the [standard gRPC health checking protocol](https://github.com/grpc/grpc/blob/master/doc/health-checking.md). The endpoint will be probed every `interval`. | +| `grpcUseTls` | `boolean` | optional | Specifies whether to use TLS for this gRPC health check. | +| `h2ping` | `string` | optional | Specifies this is an h2ping check. Must be an address, which will be pinged every `interval`. | +| `h2pingUseTls` | `boolean` | optional | Specifies whether TLS is used for an h2ping check. | +| `header` | `object` | optional | Specifies a set of headers that should be set for HTTP checks. Each header can have multiple values. | +| `http` | `string` | optional | Specifies this is an HTTP check. Must be a URL against which request is performed every `interval`. | +| `interval` | `string` | optional | Specifies the frequency at which to run this check. Required for HTTP and TCP checks. | +| `method` | `string` | optional | Specifies the HTTP method to be used for an HTTP check. When no value is specified, `GET` is used. | +| `name` | `string` | optional | The name of the check. | +| `notes` | `string` | optional | Specifies arbitrary information for humans. This is not used by Consul internally. | +| `status` | `string` | optional | Specifies the initial status the health check. Must be one of `passing`, `warning`, `critical`, `maintenance`, or`null`. | +| `successBeforePassing` | `integer` | optional | Specifies the number of consecutive successful results required before check status transitions to passing. | +| `tcp` | `string` | optional | Specifies this is a TCP check. Must be an IP/hostname plus port to which a TCP connection is made every `interval`. | +| `timeout` | `string` | optional | Specifies a timeout for outgoing connections in the case of a Script, HTTP, TCP, or gRPC check. Must be a duration string, such as `10s` or `5m`. | +| `tlsServerName` | `string` | optional | Specifies an optional string used to set the SNI host when connecting via TLS. | +| `tlsSkipVerify` | `boolean` | optional | Specifies if the certificate for an HTTPS check should not be verified. | +| `ttl` | `string` | optional | Specifies this is a TTL check. Must be a duration string, such as `10s` or `5m`. | + +# `service.weights` + +Configures the weight of the service in terms of its DNS service (SRV) response. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `passing` | `integer` | required | Weight for the service when its health checks are passing. | +| `warning` | `integer` | required | Weight for the service when it has health checks in `warning` status. | + +# `proxy` + +Configuration for the sidecar proxy registration with Consul. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `config` | `object` | optional | Object value that specifies an opaque JSON configuration. The JSON is stored and returned along with the service instance when called from the API. | +| [`meshGateway`](#proxy-meshgateway) | `object` | optional | Specifies the mesh gateway configuration for the proxy. | +| [`upstreams`](#proxy-upstreams) | `array` | optional | The list of the upstream services that the proxy should create listeners for. | + +# `proxy.upstreams` + +The list of the upstream services that the proxy should create listeners for. Each upstream may contain these fields. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `config` | `object` | optional | Specifies opaque configuration options that will be provided to the proxy instance for the upstream. | +| `datacenter` | `string` | optional | Specifies the datacenter to issue the discovery query to. | +| `destinationName` | `string` | required | Specifies the name of the upstream service or prepared query to route the service mesh to. | +| `destinationNamespace` | `string` | optional | Specifies the namespace containing the upstream service [Consul Enterprise]. | +| `destinationPartition` | `string` | optional | Specifies the name of the admin partition containing the upstream service [Consul Enterprise]. | +| `destinationType` | `string` | optional | Specifies the type of discovery query the proxy should use for finding service mesh instances. Must be one of `service`, `prepared_query`, or`null`. | +| `localBindAddress` | `string` | optional | Specifies the address to bind a local listener to. | +| `localBindPort` | `integer` | required | Specifies the port to bind a local listener to. The application will make outbound connections to the upstream from the local port. | +| [`meshGateway`](#proxy-upstreams-meshgateway) | `object` | optional | Specifies the mesh gateway configuration for the proxy for this upstream. | + +## `proxy.upstreams.meshGateway` + +Specifies the mesh gateway configuration for the proxy for this upstream. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `mode` | `string` | required | Specifies how the upstream with a remote destination datacenter gets resolved. Must be one of `none`, `local`, or`remote`. | + +# `proxy.meshGateway` + +Specifies the mesh gateway configuration for the proxy. + +| Field | Type | Required | Description | +| ----- | ---- | -------- | ----------- | +| `mode` | `string` | required | Specifies how upstreams with a remote destination datacenter get resolved. Must be one of `none`, `local`, or`remote`. | + diff --git a/website/content/docs/ecs/manual/install.mdx b/website/content/docs/ecs/manual/install.mdx index d9804f8ed..d3bac3206 100644 --- a/website/content/docs/ecs/manual/install.mdx +++ b/website/content/docs/ecs/manual/install.mdx @@ -407,7 +407,7 @@ the `consul-ecs-health-sync` container. | `service.port` | integer | The port your application listens on. Set to `0` if your application does not listen on any port. | | `service.checks` | list | Consul [checks](/docs/discovery/checks) to include so that Consul can run health checks against your application. | -See the [`consul-ecs JSON Schema`](https://github.com/hashicorp/consul-ecs/blob/main/config/schema.json) for a complete reference of fields. +See the [Configuration Reference](/docs/ecs/configuration-reference) for a complete reference of fields. ## `consul-ecs-health-sync` container diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json index e55bf32d1..fe8413cef 100644 --- a/website/data/docs-nav-data.json +++ b/website/data/docs-nav-data.json @@ -652,6 +652,10 @@ { "title": "Consul Enterprise", "path": "ecs/enterprise" + }, + { + "title": "Configuration Reference", + "path": "ecs/configuration-reference" } ] }, From 80f215675c67266c6d270d560f3db323960b0a0e Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 1 Dec 2021 15:11:20 -0500 Subject: [PATCH 365/404] ca: update GenerateRoot godoc --- agent/connect/ca/provider.go | 14 +++++++++++--- agent/connect/ca/provider_consul.go | 3 +-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/agent/connect/ca/provider.go b/agent/connect/ca/provider.go index 4bab873aa..6eab92f96 100644 --- a/agent/connect/ca/provider.go +++ b/agent/connect/ca/provider.go @@ -118,9 +118,17 @@ type Provider interface { } type PrimaryProvider interface { - // GenerateRoot causes the creation of a new root certificate for this provider. - // This can also be a no-op if a root certificate already exists for the given - // config. If IsPrimary is false, calling this method is an error. + // GenerateRoot is called: + // * to initialize the CA system when a server is elected as a raft leader + // * when the CA configuration is updated in a way that might require + // generating a new root certificate. + // + // In both cases GenerateRoot is always called on a newly created provider + // after calling Provider.Configure, and before any other calls to the + // provider. + // + // The provider should return an existing root certificate if one exists, + // otherwise it should generate a new root certificate and return it. GenerateRoot() error // ActiveRoot returns the currently active root CA for this diff --git a/agent/connect/ca/provider_consul.go b/agent/connect/ca/provider_consul.go index dea91e5d7..d0e746803 100644 --- a/agent/connect/ca/provider_consul.go +++ b/agent/connect/ca/provider_consul.go @@ -159,8 +159,7 @@ func (c *ConsulProvider) ActiveRoot() (string, error) { return providerState.RootCert, nil } -// GenerateRoot initializes a new root certificate and private key -// if needed. +// GenerateRoot initializes a new root certificate and private key if needed. func (c *ConsulProvider) GenerateRoot() error { providerState, err := c.getState() if err != nil { From 722e3a6ac411be9ecbe878d094c7446e1799eef5 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 1 Dec 2021 15:40:27 -0500 Subject: [PATCH 366/404] ca: update MockProvider for new interface --- agent/connect/ca/mock_Provider.go | 46 +++++++++++-------------------- 1 file changed, 16 insertions(+), 30 deletions(-) diff --git a/agent/connect/ca/mock_Provider.go b/agent/connect/ca/mock_Provider.go index 59f5374fe..ec79ea5c7 100644 --- a/agent/connect/ca/mock_Provider.go +++ b/agent/connect/ca/mock_Provider.go @@ -34,34 +34,13 @@ func (_m *MockProvider) ActiveIntermediate() (string, error) { return r0, r1 } -// ActiveRoot provides a mock function with given fields: -func (_m *MockProvider) ActiveRoot() (string, error) { - ret := _m.Called() - - var r0 string - if rf, ok := ret.Get(0).(func() string); ok { - r0 = rf() - } else { - r0 = ret.Get(0).(string) - } - - var r1 error - if rf, ok := ret.Get(1).(func() error); ok { - r1 = rf() - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Cleanup provides a mock function with given fields: providerTypeChange, config -func (_m *MockProvider) Cleanup(providerTypeChange bool, config map[string]interface{}) error { - ret := _m.Called(providerTypeChange, config) +// Cleanup provides a mock function with given fields: providerTypeChange, otherConfig +func (_m *MockProvider) Cleanup(providerTypeChange bool, otherConfig map[string]interface{}) error { + ret := _m.Called(providerTypeChange, otherConfig) var r0 error if rf, ok := ret.Get(0).(func(bool, map[string]interface{}) error); ok { - r0 = rf(providerTypeChange, config) + r0 = rf(providerTypeChange, otherConfig) } else { r0 = ret.Error(0) } @@ -147,17 +126,24 @@ func (_m *MockProvider) GenerateIntermediateCSR() (string, error) { } // GenerateRoot provides a mock function with given fields: -func (_m *MockProvider) GenerateRoot() error { +func (_m *MockProvider) GenerateRoot() (RootResult, error) { ret := _m.Called() - var r0 error - if rf, ok := ret.Get(0).(func() error); ok { + var r0 RootResult + if rf, ok := ret.Get(0).(func() RootResult); ok { r0 = rf() } else { - r0 = ret.Error(0) + r0 = ret.Get(0).(RootResult) } - return r0 + var r1 error + if rf, ok := ret.Get(1).(func() error); ok { + r1 = rf() + } else { + r1 = ret.Error(1) + } + + return r0, r1 } // SetIntermediate provides a mock function with given fields: intermediatePEM, rootPEM From 565c66f2034b8f1760d18392056496a9699ee766 Mon Sep 17 00:00:00 2001 From: trujillo-adam Date: Thu, 27 Jan 2022 10:01:29 -0800 Subject: [PATCH 367/404] applying additional feedback --- website/content/docs/api-gateway.mdx | 94 ++++++++++++++-------------- 1 file changed, 47 insertions(+), 47 deletions(-) diff --git a/website/content/docs/api-gateway.mdx b/website/content/docs/api-gateway.mdx index 0f3817a79..a3a0826ec 100644 --- a/website/content/docs/api-gateway.mdx +++ b/website/content/docs/api-gateway.mdx @@ -28,27 +28,27 @@ Your datacenter must meet the following requirements prior to configuring the Co - ```yaml - global: - name: consul - image: 'hashicorp/consul:1.11.2' - tls: - enabled: true - connectInject: +```yaml +global: + name: consul + image: 'hashicorp/consul:1.11.2' + tls: enabled: true - controller: - enabled: true - ``` +connectInject: + enabled: true +controller: + enabled: true +``` 1. Install Consul API Gateway using the standard Consul Helm chart and specify the custom values file. - ```shell-session - $ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml - ``` +```shell-session +$ helm install consul hashicorp/consul --version 0.39.0 --values values.yaml +``` - The following components will be installed: +The following components will be installed: - Gateway controller - CRDs required by the Kubernetes Gateway API specification @@ -56,10 +56,10 @@ Your datacenter must meet the following requirements prior to configuring the Co 1. After `helm` installs Consul API Gateway packages, issue the following commands to apply the API gateway to your Kubernetes cluster: - ```shell-session - $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" - $ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" - ``` +```shell-session +$ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config/crd?ref=v0.1.0-beta" +$ kubectl apply --kustomize="github.com/hashicorp/consul-api-gateway/config?ref=v0.1.0-beta" +``` ## Usage @@ -68,9 +68,9 @@ Your datacenter must meet the following requirements prior to configuring the Co 1. Configure the gateway, listener(s), and route(s) as described in [Configuration](#configuration). 1. Issue the `kubectl apply` command to implement the configurations, e.g.: - ```shell-session - $ kubectl apply --values gateway-configuration.yaml - ``` +```shell-session +$ kubectl apply --values gateway-configuration.yaml +``` creating 1 resource(s) + --> creating 45 resource(s) + --> beginning wait for 45 resources with timeout of 10m0s + ✓ Consul installed into namespace "consul" + ``` -1. Enter `y` to proceed. The pre-install checks may fail if existing `PersistentVolumeClaims` (PVC) are detected. Refer to the [uninstall instructions](/docs/k8s/operations/uninstall#uninstall-consul) for information about removing PVCs. +1. (Optional) Run `consul-k8s status` command to quickly glance at the status of the installed Consul cluster. + + ```shell-session + $ consul-k8s status + + ==> Consul-K8s Status Summary + NAME | NAMESPACE | STATUS | CHARTVERSION | APPVERSION | REVISION | LAST UPDATED + ---------+-----------+----------+--------------+------------+----------+-------------------------- + consul | consul | deployed | 0.40.0 | 1.11.2 | 1 | 2022/01/31 16:58:51 PST + + ==> Config: + connectInject: + enabled: true + controller: + enabled: true + global: + name: consul + + ✓ Consul servers healthy (3/3) + ✓ Consul clients healthy (3/3) + ``` ## Helm Chart Installation From bcd841a2eda826a63dd01a8ba59027f3dacdad62 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 1 Feb 2022 14:25:24 +0000 Subject: [PATCH 395/404] ui: on-outside modifier (#12206) --- .../consul-ui/app/modifiers/on-outside.js | 45 +++++++++++++++++++ .../consul-ui/app/modifiers/on-outside.mdx | 22 +++++++++ 2 files changed, 67 insertions(+) create mode 100644 ui/packages/consul-ui/app/modifiers/on-outside.js create mode 100644 ui/packages/consul-ui/app/modifiers/on-outside.mdx diff --git a/ui/packages/consul-ui/app/modifiers/on-outside.js b/ui/packages/consul-ui/app/modifiers/on-outside.js new file mode 100644 index 000000000..fe32dee5a --- /dev/null +++ b/ui/packages/consul-ui/app/modifiers/on-outside.js @@ -0,0 +1,45 @@ +import Modifier from 'ember-modifier'; +import { action } from '@ember/object'; +import { inject as service } from '@ember/service'; + +export default class OnOutsideModifier extends Modifier { + @service('dom') dom; + + constructor() { + super(...arguments); + this.doc = this.dom.document(); + } + async connect(params, options) { + await new Promise(resolve => setTimeout(resolve, 0)); + try { + this.doc.addEventListener(params[0], this.listen); + } catch (e) { + // continue + } + } + + @action + listen(e) { + if (this.dom.isOutside(this.element, e.target)) { + const dispatch = typeof this.params[1] === 'function' ? this.params[1] : _ => {}; + dispatch.apply(this.element, [e]); + } + } + + disconnect() { + this.doc.removeEventListener('click', this.listen); + } + + didReceiveArguments() { + this.params = this.args.positional; + this.options = this.args.named; + } + + didInstall() { + this.connect(this.args.positional, this.args.named); + } + + willRemove() { + this.disconnect(); + } +} diff --git a/ui/packages/consul-ui/app/modifiers/on-outside.mdx b/ui/packages/consul-ui/app/modifiers/on-outside.mdx new file mode 100644 index 000000000..325091b99 --- /dev/null +++ b/ui/packages/consul-ui/app/modifiers/on-outside.mdx @@ -0,0 +1,22 @@ +# on-outside + +`{{on-outside 'click' (fn @callback}}` works similarly to `{{on }}` but allows +you to attach handlers that is specifically not the currently modified +element. + +```hbs preview-template + +``` + +## Positional Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `event` | `string` | | Name of the event to listen for | +| `handler` | `function` | | Function to handle the event | From 23d45f5ef5b1825aceb9dd33626c1f3f083f8fee Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 1 Feb 2022 16:39:02 +0000 Subject: [PATCH 396/404] ui: style-map helper (#12203) --- .../consul-ui/app/helpers/style-map.js | 22 +++++++ .../consul-ui/app/helpers/style-map.mdx | 58 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 ui/packages/consul-ui/app/helpers/style-map.js create mode 100644 ui/packages/consul-ui/app/helpers/style-map.mdx diff --git a/ui/packages/consul-ui/app/helpers/style-map.js b/ui/packages/consul-ui/app/helpers/style-map.js new file mode 100644 index 000000000..259effd1e --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/style-map.js @@ -0,0 +1,22 @@ +import { helper } from '@ember/component/helper'; + +/** + * Conditionally maps styles to a string ready for typical DOM + * usage (i.e. semi-colon delimited) + * + * @typedef {([string, (string | undefined), string] | [string, (string | undefined)])} styleInfo + * @param {styleInfo[]} entries - An array of `styleInfo`s to map + * @param {boolean} transform=true - whether to perform the build-time 'helper + * to modifier' transpilation. Note a transpiler needs installing separately. + */ +const styleMap = (entries, transform = true) => { + const str = entries.reduce((prev, [prop, value, unit = '']) => { + if (value == null) { + return prev; + } + return `${prev}${prop}:${value.toString()}${unit};`; + }, ''); + return str.length > 0 ? str : undefined; +}; + +export default helper(styleMap); diff --git a/ui/packages/consul-ui/app/helpers/style-map.mdx b/ui/packages/consul-ui/app/helpers/style-map.mdx new file mode 100644 index 000000000..cb7fb6362 --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/style-map.mdx @@ -0,0 +1,58 @@ +# style-map + +`{{style-map}}` is used to easily add a list of styles, conditionally, and +have them all formatted nicely to be printed in a DOM `style` attribute. + +As well as an entry-like array you can also pass an additional `unit` property +as the 3rd item in the array. This is to make it easier to do mathamatical +calculations for units without having to use `(concat)`. + +If any property has a value of `null` or `undefined`, that style property will +not be included in the resulting string. + +```hbs preview-template +
      +
      + This div has the correct style added/omitted. +
      +
      + + style={{style-map + (array 'outline' '1px solid red') + (array 'width' '600px') + (array 'height' 100 'px') + (array 'padding' 1 'rem') + (array 'background' null) + }} + +
      +
      +``` + +## Positional Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `entries` | `styleInfo[]` | | An array of `styleInfo`s to map | + +## Named Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `transform` | `boolean` | true | whether to perform the build-time 'helper to modifier' transpilation | + +## Types + +| Type | Default | Description | +| --- | --- | --- | +| `styleInfo` | `([string, (string \| undefined), string] \| [string, (string \| undefined)])` | | + + From cf32d8f61eda39a97cc0c8ac9007317cbbdfed89 Mon Sep 17 00:00:00 2001 From: Ricardo Oliveira <17067463+gitrgoliveira@users.noreply.github.com> Date: Tue, 1 Feb 2022 17:10:49 +0000 Subject: [PATCH 397/404] Update redirect-traffic.mdx --- website/content/commands/connect/redirect-traffic.mdx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/website/content/commands/connect/redirect-traffic.mdx b/website/content/commands/connect/redirect-traffic.mdx index 27313d536..b56012c1a 100644 --- a/website/content/commands/connect/redirect-traffic.mdx +++ b/website/content/commands/connect/redirect-traffic.mdx @@ -36,6 +36,8 @@ Usage: `consul connect redirect-traffic [options]` #### Options for Traffic Redirection Rules +- `-consul-dns-ip` - IP used to reach Consul DNS. If provided, DNS queries will be redirected to Consul. + - `-proxy-id` - The [proxy service](/docs/connect/registration/service-registration) ID. This service ID must already be registered with the local agent. @@ -47,13 +49,13 @@ Usage: `consul connect redirect-traffic [options]` - `-exclude-inbound-port` - Inbound port to exclude from traffic redirection. May be provided multiple times. -- `exclude-outbound-cidr` - Outbound CIDR to exclude from traffic redirection. May be provided multiple times. +- `-exclude-outbound-cidr` - Outbound CIDR to exclude from traffic redirection. May be provided multiple times. -- `exclude-outbound-port` - Outbound port to exclude from traffic redirection. May be provided multiple times. +- `-exclude-outbound-port` - Outbound port to exclude from traffic redirection. May be provided multiple times. -- `exclude-uid` - Additional user ID to exclude from traffic redirection. May be provided multiple times. +- `-exclude-uid` - Additional user ID to exclude from traffic redirection. May be provided multiple times. -- `netns` - The Linux network namespace where traffic redirection rules should apply. +- `-netns` - The Linux network namespace where traffic redirection rules should apply. This must be a path to the network namespace, e.g. /var/run/netns/foo. #### Enterprise Options From d2275abb1babbe61b79ed9dfc2b99bdc6536ea05 Mon Sep 17 00:00:00 2001 From: Ricardo Oliveira <17067463+gitrgoliveira@users.noreply.github.com> Date: Tue, 1 Feb 2022 17:20:20 +0000 Subject: [PATCH 398/404] Update website/content/commands/connect/redirect-traffic.mdx Co-authored-by: mrspanishviking --- website/content/commands/connect/redirect-traffic.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/commands/connect/redirect-traffic.mdx b/website/content/commands/connect/redirect-traffic.mdx index b56012c1a..2707350ab 100644 --- a/website/content/commands/connect/redirect-traffic.mdx +++ b/website/content/commands/connect/redirect-traffic.mdx @@ -36,7 +36,7 @@ Usage: `consul connect redirect-traffic [options]` #### Options for Traffic Redirection Rules -- `-consul-dns-ip` - IP used to reach Consul DNS. If provided, DNS queries will be redirected to Consul. +- `-consul-dns-ip` - The IP address of the Consul DNS resolver. If provided, Consul DNS queries will be redirected to the provided IP address for resolving. - `-proxy-id` - The [proxy service](/docs/connect/registration/service-registration) ID. This service ID must already be registered with the local agent. From 01437e81eadc7027621861fbe6345a61b4ff7b3f Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 1 Feb 2022 19:48:57 +0000 Subject: [PATCH 399/404] ui: attach-shadow modifier (#12207) * ui: attach-shadow modifier * ui: adopt-styles helper (#12208) --- .../consul-ui/app/helpers/adopt-styles.js | 18 ++++++++++++ .../consul-ui/app/helpers/adopt-styles.mdx | 28 +++++++++++++++++++ ui/packages/consul-ui/app/helpers/css.js | 8 ++++++ .../consul-ui/app/modifiers/attach-shadow.js | 23 +++++++++++++++ .../consul-ui/app/modifiers/attach-shadow.mdx | 28 +++++++++++++++++++ ui/packages/consul-ui/package.json | 3 +- ui/yarn.lock | 5 ++++ 7 files changed, 112 insertions(+), 1 deletion(-) create mode 100644 ui/packages/consul-ui/app/helpers/adopt-styles.js create mode 100644 ui/packages/consul-ui/app/helpers/adopt-styles.mdx create mode 100644 ui/packages/consul-ui/app/helpers/css.js create mode 100644 ui/packages/consul-ui/app/modifiers/attach-shadow.js create mode 100644 ui/packages/consul-ui/app/modifiers/attach-shadow.mdx diff --git a/ui/packages/consul-ui/app/helpers/adopt-styles.js b/ui/packages/consul-ui/app/helpers/adopt-styles.js new file mode 100644 index 000000000..4fd10a71b --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/adopt-styles.js @@ -0,0 +1,18 @@ +import Helper from '@ember/component/helper'; +import { assert } from '@ember/debug'; +import { adoptStyles } from '@lit/reactive-element'; + +export default class AdoptStylesHelper extends Helper { + /** + * Adopt/apply given styles to a `ShadowRoot` using constructable styleSheets if supported + * + * @param {[ShadowRoot, CSSResultGroup]} params + */ + compute([$shadow, styles], hash) { + assert( + 'adopt-styles can only be used to apply styles to ShadowDOM elements', + $shadow instanceof ShadowRoot + ); + adoptStyles($shadow, [styles]); + } +} diff --git a/ui/packages/consul-ui/app/helpers/adopt-styles.mdx b/ui/packages/consul-ui/app/helpers/adopt-styles.mdx new file mode 100644 index 000000000..b2d09331b --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/adopt-styles.mdx @@ -0,0 +1,28 @@ +# adopt-styles + +Adopt/apply given styles to a `ShadowRoot` using constructable styleSheets if supported + +```hbs preview-template +
      + {{#if this.shadow}} + {{#in-element this.shadow}} + {{adopt-styles this.shadow (css ' + :host { + background-color: red; + width: 100px; + height: 100px; + } + ')}} + {{/in-element}} + {{/if}} +
      +``` + +## Positional Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `params` | `[ShadowRoot, CSSResultGroup]` | | | + diff --git a/ui/packages/consul-ui/app/helpers/css.js b/ui/packages/consul-ui/app/helpers/css.js new file mode 100644 index 000000000..35bb4aaba --- /dev/null +++ b/ui/packages/consul-ui/app/helpers/css.js @@ -0,0 +1,8 @@ +import Helper from '@ember/component/helper'; +import { css } from '@lit/reactive-element'; + +export default class ConsoleLogHelper extends Helper { + compute([str], hash) { + return css([str]); + } +} diff --git a/ui/packages/consul-ui/app/modifiers/attach-shadow.js b/ui/packages/consul-ui/app/modifiers/attach-shadow.js new file mode 100644 index 000000000..94901c67d --- /dev/null +++ b/ui/packages/consul-ui/app/modifiers/attach-shadow.js @@ -0,0 +1,23 @@ +import { setModifierManager, capabilities } from '@ember/modifier'; + +export default setModifierManager( + () => ({ + capabilities: capabilities('3.13', { disableAutoTracking: true }), + + createModifier() {}, + + installModifier(_state, element, { positional: [fn, ...args], named }) { + let shadow; + try { + shadow = element.attachShadow({ mode: 'open' }); + } catch (e) { + // shadow = false; + console.error(e); + } + fn(shadow); + }, + updateModifier() {}, + destroyModifier() {}, + }), + class CustomElementModifier {} +); diff --git a/ui/packages/consul-ui/app/modifiers/attach-shadow.mdx b/ui/packages/consul-ui/app/modifiers/attach-shadow.mdx new file mode 100644 index 000000000..3e973665c --- /dev/null +++ b/ui/packages/consul-ui/app/modifiers/attach-shadow.mdx @@ -0,0 +1,28 @@ +# attach-shadow + +`{{attach-shadow (set this 'shadow')}}` attaches a `ShadowRoot` to the modified DOM element +and pass a reference to that `ShadowRoot` to the setter function. + + +Please note: This should be used as a utility modifier for when having access +to the shadow DOM is handy, not really for building full blown shadow DOM +based Web Components. + +```hbs preview-template +
      + {{#if this.shadow}} + {{#in-element this.shadow}} + + {{/in-element}} + {{/if}} +

      Hello from the shadows!

      +
      +``` + +## Positional Arguments + +| Argument | Type | Default | Description | +| --- | --- | --- | --- | +| `setter` | `function` | | Usually `set` or `mut` or similar | diff --git a/ui/packages/consul-ui/package.json b/ui/packages/consul-ui/package.json index 5c4035202..18bb4e6ad 100644 --- a/ui/packages/consul-ui/package.json +++ b/ui/packages/consul-ui/package.json @@ -63,6 +63,7 @@ "@glimmer/component": "^1.0.0", "@glimmer/tracking": "^1.0.0", "@hashicorp/ember-cli-api-double": "^3.1.0", + "@lit/reactive-element": "^1.2.1", "@mapbox/rehype-prism": "^0.6.0", "@xstate/fsm": "^1.4.0", "a11y-dialog": "^6.0.1", @@ -79,8 +80,8 @@ "chalk": "^4.1.0", "clipboard": "^2.0.4", "consul-acls": "*", - "consul-partitions": "*", "consul-nspaces": "*", + "consul-partitions": "*", "css.escape": "^1.5.1", "d3-array": "^2.8.0", "d3-scale": "^3.2.3", diff --git a/ui/yarn.lock b/ui/yarn.lock index e9d89fefa..d61667fbd 100644 --- a/ui/yarn.lock +++ b/ui/yarn.lock @@ -1560,6 +1560,11 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== +"@lit/reactive-element@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-1.2.1.tgz#8620d7f0baf63e12821fa93c34d21e23477736f7" + integrity sha512-03FYfMguIWo9E1y1qcTpXzoO8Ukpn0j5o4GjNFq/iHqJEPY6pYopsU44e7NSFIgCTorr8wdUU5PfVy8VeD6Rwg== + "@mapbox/rehype-prism@^0.6.0": version "0.6.0" resolved "https://registry.yarnpkg.com/@mapbox/rehype-prism/-/rehype-prism-0.6.0.tgz#3d8a860870951d4354257d0ba908d11545bd5ed5" From da1072da80a11489fb49f9a119e82afb97a475c0 Mon Sep 17 00:00:00 2001 From: JG Date: Tue, 1 Feb 2022 12:07:18 -0800 Subject: [PATCH 400/404] packaging: fix issues in pre/postremove scripts (#12147) Fixes several issues with the pre/postremove scripts for both rpm and deb packages. Specifically: For postremove: - the postremove script now functions correctly (i.e. restarts consul after a package upgrade) on rpm-based systems (where $1 is numeric rather than `purge` or `upgrade`) - `systemctl daemon-reload` is called on package removal (rather than only on upgrade) - calls `systemctl try-restart` instead of `systemctl restart`, which will only (re)start consul if it was already running when the upgrade happened. For preremove: - if the package is being completely uninstalled (rather than upgraded), stop consul before removing the package --- .github/workflows/build.yml | 3 ++- .release/linux/postremove | 21 +++++++++++++-------- .release/linux/preremove | 11 +++++++++++ 3 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 .release/linux/preremove diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 277a11610..5b8666bfc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,7 +3,7 @@ name: build on: push: # Sequence of patterns matched against refs/heads - branches: [ + branches: [ "main" ] @@ -145,6 +145,7 @@ jobs: config_dir: ".release/linux/package" preinstall: ".release/linux/preinstall" postinstall: ".release/linux/postinstall" + preremove: ".release/linux/preremove" postremove: ".release/linux/postremove" - name: Set Package Names diff --git a/.release/linux/postremove b/.release/linux/postremove index f31759821..b09bdfe60 100644 --- a/.release/linux/postremove +++ b/.release/linux/postremove @@ -1,14 +1,19 @@ #!/bin/bash -if [ "$1" = "purge" ] -then - userdel consul +if [ -d "/run/systemd/system" ]; then + systemctl --system daemon-reload >/dev/null || : fi -if [ "$1" == "upgrade" ] && [ -d /run/systemd/system ]; then - systemctl --system daemon-reload >/dev/null || true - systemctl restart consul >/dev/null || true -fi +case "$1" in + purge | 0) + userdel consul + ;; + + upgrade | [1-9]*) + if [ -d "/run/systemd/system" ]; then + systemctl try-restart consul.service >/dev/null || : + fi + ;; +esac exit 0 - diff --git a/.release/linux/preremove b/.release/linux/preremove new file mode 100644 index 000000000..16fef7f3b --- /dev/null +++ b/.release/linux/preremove @@ -0,0 +1,11 @@ +#!/bin/bash +case "$1" in + remove | 0) + if [ -d "/run/systemd/system" ]; then + systemctl --no-reload disable consul.service > /dev/null || : + systemctl stop consul.service > /dev/null || : + fi + ;; +esac + +exit 0 From 83a2c9cc4c79847e9b04dc61d92b078c7cbc733c Mon Sep 17 00:00:00 2001 From: mrspanishviking Date: Tue, 1 Feb 2022 15:08:23 -0700 Subject: [PATCH 401/404] Update website/content/commands/connect/redirect-traffic.mdx Co-authored-by: Blake Covarrubias --- website/content/commands/connect/redirect-traffic.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/content/commands/connect/redirect-traffic.mdx b/website/content/commands/connect/redirect-traffic.mdx index 2707350ab..fef0dc716 100644 --- a/website/content/commands/connect/redirect-traffic.mdx +++ b/website/content/commands/connect/redirect-traffic.mdx @@ -36,7 +36,7 @@ Usage: `consul connect redirect-traffic [options]` #### Options for Traffic Redirection Rules -- `-consul-dns-ip` - The IP address of the Consul DNS resolver. If provided, Consul DNS queries will be redirected to the provided IP address for resolving. +- `-consul-dns-ip` - The IP address of the Consul DNS resolver. If provided, DNS queries will be redirected to the provided IP address for name resolution. - `-proxy-id` - The [proxy service](/docs/connect/registration/service-registration) ID. This service ID must already be registered with the local agent. From 404523f7eaefc286205fb8e2b0631793af406961 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 2 Feb 2022 13:24:47 +0000 Subject: [PATCH 402/404] ui: Alias all our Structure Icons to Flight Icons (#12209) --- .changelog/12209.txt | 3 + .../app/components/buttons/skin.scss | 1 - .../consul/external-source/index.scss | 28 + .../consul/intention/components.scss | 8 +- .../consul/intention/form/fieldsets/skin.scss | 7 +- .../consul-ui/app/components/pill/index.scss | 28 - .../consul-ui/app/components/pill/layout.scss | 3 +- .../app/components/popover-select/index.scss | 2 +- .../styles/base/icons/base-placeholders.scss | 12 +- .../app/styles/base/icons/base-variables.scss | 2382 +++++---- .../app/styles/base/icons/debug.scss | 4706 +++++++++++++---- .../styles/base/icons/icon-placeholders.scss | 2554 ++++++--- ui/packages/consul-ui/app/styles/icons.scss | 67 + 13 files changed, 6759 insertions(+), 3042 deletions(-) create mode 100644 .changelog/12209.txt diff --git a/.changelog/12209.txt b/.changelog/12209.txt new file mode 100644 index 000000000..5847b091c --- /dev/null +++ b/.changelog/12209.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +ui: Use @hashicorp/flight icons for all our icons. +``` diff --git a/ui/packages/consul-ui/app/components/buttons/skin.scss b/ui/packages/consul-ui/app/components/buttons/skin.scss index d6d36d829..facc85a20 100644 --- a/ui/packages/consul-ui/app/components/buttons/skin.scss +++ b/ui/packages/consul-ui/app/components/buttons/skin.scss @@ -100,7 +100,6 @@ %sort-button::before { @extend %with-sort-mask, %as-pseudo; position: relative; - top: 4px; width: 16px; height: 16px; } diff --git a/ui/packages/consul-ui/app/components/consul/external-source/index.scss b/ui/packages/consul-ui/app/components/consul/external-source/index.scss index 8cc460f16..b05acb45b 100644 --- a/ui/packages/consul-ui/app/components/consul/external-source/index.scss +++ b/ui/packages/consul-ui/app/components/consul/external-source/index.scss @@ -1,3 +1,31 @@ .consul-external-source { @extend %pill-200, %frame-gray-600, %p1; } +.consul-external-source.kubernetes::before { + @extend %with-logo-kubernetes-color-icon, %as-pseudo; +} +.consul-external-source.terraform::before { + @extend %with-logo-terraform-color-icon, %as-pseudo; +} +.consul-external-source.nomad::before { + @extend %with-logo-nomad-color-icon, %as-pseudo; +} +.consul-external-source.consul::before, +.consul-external-source.consul-api-gateway::before { + @extend %with-logo-consul-color-icon, %as-pseudo; +} +.consul-external-source.vault::before { + @extend %with-vault-100; +} +.consul-external-source.aws::before { + @extend %with-aws-100; +} +.consul-external-source.leader::before { + @extend %with-star-outline-mask, %as-pseudo; +} +.consul-external-source.jwt::before { + @extend %with-logo-jwt-color-icon, %as-pseudo; +} +.consul-external-source.oidc::before { + @extend %with-logo-oidc-color-icon, %as-pseudo; +} diff --git a/ui/packages/consul-ui/app/components/consul/intention/components.scss b/ui/packages/consul-ui/app/components/consul/intention/components.scss index 59dfcd2fe..ed98c8499 100644 --- a/ui/packages/consul-ui/app/components/consul/intention/components.scss +++ b/ui/packages/consul-ui/app/components/consul/intention/components.scss @@ -1,9 +1,7 @@ %pill-allow::before, %pill-deny::before, %pill-l7::before { - @extend %as-pseudo; margin-right: 5px; - font-size: 0.9em; } %pill-allow, %pill-deny, @@ -24,11 +22,11 @@ @extend %frame-gray-900; } %pill-allow::before { - @extend %with-arrow-right-mask; + @extend %with-allow-300; } %pill-deny::before { - @extend %with-deny-color-mask; + @extend %with-deny-300; } %pill-l7::before { - @extend %with-layers-mask; + @extend %with-l7-300; } diff --git a/ui/packages/consul-ui/app/components/consul/intention/form/fieldsets/skin.scss b/ui/packages/consul-ui/app/components/consul/intention/form/fieldsets/skin.scss index 5057fc042..242b593b0 100644 --- a/ui/packages/consul-ui/app/components/consul/intention/form/fieldsets/skin.scss +++ b/ui/packages/consul-ui/app/components/consul/intention/form/fieldsets/skin.scss @@ -1,12 +1,11 @@ .consul-intention-fieldsets { .value-allow > :last-child::before { - @extend %with-arrow-right-mask, %as-pseudo; - color: rgb(var(--tone-green-500)); + @extend %with-allow-500; } .value-deny > :last-child::before { - @extend %with-deny-color-icon, %as-pseudo; + @extend %with-deny-500; } .value- > :last-child::before { - @extend %with-layers-mask, %as-pseudo; + @extend %with-l7-500; } } diff --git a/ui/packages/consul-ui/app/components/pill/index.scss b/ui/packages/consul-ui/app/components/pill/index.scss index 1ad95dfe8..f5a7642f2 100644 --- a/ui/packages/consul-ui/app/components/pill/index.scss +++ b/ui/packages/consul-ui/app/components/pill/index.scss @@ -20,31 +20,3 @@ span.policy-node-identity::before { span.policy-service-identity::before { content: 'Service Identity: '; } -%pill.kubernetes::before { - @extend %with-logo-kubernetes-color-icon, %as-pseudo; -} -%pill.terraform::before { - @extend %with-logo-terraform-color-icon, %as-pseudo; -} -%pill.nomad::before { - @extend %with-logo-nomad-color-icon, %as-pseudo; -} -%pill.consul::before, -%pill.consul-api-gateway::before { - @extend %with-logo-consul-color-icon, %as-pseudo; -} -%pill.vault::before { - @extend %with-vault-300; -} -%pill.aws::before { - @extend %with-logo-aws-color-icon, %as-pseudo; -} -%pill.leader::before { - @extend %with-star-outline-mask, %as-pseudo; -} -%pill.jwt::before { - @extend %with-logo-jwt-color-icon, %as-pseudo; -} -%pill.oidc::before { - @extend %with-logo-oidc-color-icon, %as-pseudo; -} diff --git a/ui/packages/consul-ui/app/components/pill/layout.scss b/ui/packages/consul-ui/app/components/pill/layout.scss index 6b63f13d6..60b15f82b 100644 --- a/ui/packages/consul-ui/app/components/pill/layout.scss +++ b/ui/packages/consul-ui/app/components/pill/layout.scss @@ -6,7 +6,8 @@ } %pill::before { margin-right: 4px; - font-size: 0.8em; + width: 0.75rem !important; /* 12px */ + height: 0.75rem !important; /* 12px */ } %pill-200 { @extend %pill; diff --git a/ui/packages/consul-ui/app/components/popover-select/index.scss b/ui/packages/consul-ui/app/components/popover-select/index.scss index a4fc7df8e..badd21eb4 100644 --- a/ui/packages/consul-ui/app/components/popover-select/index.scss +++ b/ui/packages/consul-ui/app/components/popover-select/index.scss @@ -50,7 +50,7 @@ color: rgb(var(--tone-gray-500)); } %popover-select .aws button::before { - @extend %with-logo-aws-color-icon, %as-pseudo; + @extend %with-aws-300; } %popover-select .kubernetes button::before { @extend %with-logo-kubernetes-color-icon, %as-pseudo; diff --git a/ui/packages/consul-ui/app/styles/base/icons/base-placeholders.scss b/ui/packages/consul-ui/app/styles/base/icons/base-placeholders.scss index c659f5374..e15efe3aa 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/base-placeholders.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/base-placeholders.scss @@ -1,3 +1,11 @@ +%theme-light { + --theme-dark-none: ; + --theme-light-none: initial; +} +%theme-dark { + --theme-dark-none: initial; + --theme-light-none: ; +} %with-icon { background-repeat: no-repeat; background-position: center; @@ -20,8 +28,8 @@ content: ''; visibility: visible; background-size: contain; - width: 1.2em; - height: 1.2em; + width: 1rem; /* 16px */ + height: 1rem; /* 16px */ vertical-align: text-top; } %led-icon { diff --git a/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss index 70a4e386e..6be078256 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss @@ -1,893 +1,949 @@ %activity-16-svg-prop { - --activity-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --activity-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %activity-24-svg-prop { - --activity-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --activity-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-circle-16-svg-prop { - --alert-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-circle-24-svg-prop { - --alert-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-circle-fill-16-svg-prop { - --alert-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-circle-fill-24-svg-prop { - --alert-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-circle-fill-svg-prop { - --alert-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %alert-circle-16-svg-prop; } %alert-circle-outline-svg-prop { - --alert-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %alert-circle-16-svg-prop; } %alert-octagon-16-svg-prop { - --alert-octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-octagon-24-svg-prop { - --alert-octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-octagon-fill-16-svg-prop { - --alert-octagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-octagon-fill-24-svg-prop { - --alert-octagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-triangle-16-svg-prop { - --alert-triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-triangle-24-svg-prop { - --alert-triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-triangle-fill-16-svg-prop { - --alert-triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-triangle-fill-24-svg-prop { - --alert-triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alert-triangle-svg-prop { - --alert-triangle-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %alert-triangle-16-svg-prop; } %alibaba-16-svg-prop { - --alibaba-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alibaba-24-svg-prop { - --alibaba-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alibaba-color-16-svg-prop { - --alibaba-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %alibaba-color-24-svg-prop { - --alibaba-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-center-16-svg-prop { - --align-center-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-center-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-center-24-svg-prop { - --align-center-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-center-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-justify-16-svg-prop { - --align-justify-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-justify-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-justify-24-svg-prop { - --align-justify-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-justify-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-left-16-svg-prop { - --align-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-left-24-svg-prop { - --align-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-right-16-svg-prop { - --align-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %align-right-24-svg-prop { - --align-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%amazon-eks-16-svg-prop { + --amazon-eks-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%amazon-eks-24-svg-prop { + --amazon-eks-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%amazon-eks-color-16-svg-prop { + --amazon-eks-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%amazon-eks-color-24-svg-prop { + --amazon-eks-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %apple-16-svg-prop { - --apple-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %apple-24-svg-prop { - --apple-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %apple-color-16-svg-prop { - --apple-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %apple-color-24-svg-prop { - --apple-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %archive-16-svg-prop { - --archive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --archive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %archive-24-svg-prop { - --archive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --archive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-16-svg-prop { - --arrow-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-24-svg-prop { - --arrow-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-circle-16-svg-prop { - --arrow-down-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-circle-24-svg-prop { - --arrow-down-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-left-16-svg-prop { - --arrow-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-left-24-svg-prop { - --arrow-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-right-16-svg-prop { - --arrow-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-right-24-svg-prop { - --arrow-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-down-svg-prop { - --arrow-down-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %arrow-down-16-svg-prop; } %arrow-left-16-svg-prop { - --arrow-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-left-24-svg-prop { - --arrow-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-left-circle-16-svg-prop { - --arrow-left-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-left-circle-24-svg-prop { - --arrow-left-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-left-svg-prop { - --arrow-left-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %arrow-left-16-svg-prop; } %arrow-right-16-svg-prop { - --arrow-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-right-24-svg-prop { - --arrow-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-right-circle-16-svg-prop { - --arrow-right-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-right-circle-24-svg-prop { - --arrow-right-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-right-svg-prop { - --arrow-right-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %arrow-right-16-svg-prop; } %arrow-up-16-svg-prop { - --arrow-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-24-svg-prop { - --arrow-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-circle-16-svg-prop { - --arrow-up-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-circle-24-svg-prop { - --arrow-up-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-left-16-svg-prop { - --arrow-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-left-24-svg-prop { - --arrow-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-right-16-svg-prop { - --arrow-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-right-24-svg-prop { - --arrow-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %arrow-up-svg-prop { - --arrow-up-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %arrow-up-16-svg-prop; } %at-sign-16-svg-prop { - --at-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --at-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %at-sign-24-svg-prop { - --at-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --at-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %auth0-16-svg-prop { - --auth0-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %auth0-24-svg-prop { - --auth0-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %auth0-color-16-svg-prop { - --auth0-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %auth0-color-24-svg-prop { - --auth0-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %auto-apply-16-svg-prop { - --auto-apply-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auto-apply-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %auto-apply-24-svg-prop { - --auto-apply-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auto-apply-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %award-16-svg-prop { - --award-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --award-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %award-24-svg-prop { - --award-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --award-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %aws-16-svg-prop { - --aws-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %aws-24-svg-prop { - --aws-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %aws-color-16-svg-prop { - --aws-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %aws-color-24-svg-prop { - --aws-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%aws-ec2-16-svg-prop { + --aws-ec2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%aws-ec2-24-svg-prop { + --aws-ec2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%aws-ec2-color-16-svg-prop { + --aws-ec2-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%aws-ec2-color-24-svg-prop { + --aws-ec2-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-16-svg-prop { - --azure-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-24-svg-prop { - --azure-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-color-16-svg-prop { - --azure-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-color-24-svg-prop { - --azure-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-devops-16-svg-prop { - --azure-devops-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-devops-24-svg-prop { - --azure-devops-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-devops-color-16-svg-prop { - --azure-devops-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %azure-devops-color-24-svg-prop { - --azure-devops-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%bank-vault-16-svg-prop { + --bank-vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%bank-vault-24-svg-prop { + --bank-vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bar-chart-16-svg-prop { - --bar-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bar-chart-24-svg-prop { - --bar-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bar-chart-alt-16-svg-prop { - --bar-chart-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bar-chart-alt-24-svg-prop { - --bar-chart-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %battery-16-svg-prop { - --battery-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %battery-24-svg-prop { - --battery-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %battery-charging-16-svg-prop { - --battery-charging-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-charging-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %battery-charging-24-svg-prop { - --battery-charging-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-charging-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %beaker-16-svg-prop { - --beaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --beaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %beaker-24-svg-prop { - --beaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --beaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-16-svg-prop { - --bell-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-24-svg-prop { - --bell-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-active-16-svg-prop { - --bell-active-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-active-24-svg-prop { - --bell-active-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-active-fill-16-svg-prop { - --bell-active-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-active-fill-24-svg-prop { - --bell-active-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-off-16-svg-prop { - --bell-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bell-off-24-svg-prop { - --bell-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bitbucket-16-svg-prop { - --bitbucket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bitbucket-24-svg-prop { - --bitbucket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bitbucket-color-16-svg-prop { - --bitbucket-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bitbucket-color-24-svg-prop { - --bitbucket-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bolt-svg-prop { - --bolt-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %zap-16-svg-prop; } %bookmark-16-svg-prop { - --bookmark-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-24-svg-prop { - --bookmark-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-add-16-svg-prop { - --bookmark-add-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-add-24-svg-prop { - --bookmark-add-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-add-fill-16-svg-prop { - --bookmark-add-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-add-fill-24-svg-prop { - --bookmark-add-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-fill-16-svg-prop { - --bookmark-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-fill-24-svg-prop { - --bookmark-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-remove-16-svg-prop { - --bookmark-remove-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-remove-24-svg-prop { - --bookmark-remove-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-remove-fill-16-svg-prop { - --bookmark-remove-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bookmark-remove-fill-24-svg-prop { - --bookmark-remove-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bottom-16-svg-prop { - --bottom-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bottom-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bottom-24-svg-prop { - --bottom-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bottom-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%boundary-16-svg-prop { + --boundary-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%boundary-24-svg-prop { + --boundary-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%boundary-color-16-svg-prop { + --boundary-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%boundary-color-24-svg-prop { + --boundary-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %box-16-svg-prop { - --box-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --box-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %box-24-svg-prop { - --box-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --box-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %box-check-fill-svg-prop { - --box-check-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %check-square-fill-16-svg-prop; } %box-outline-svg-prop { - --box-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %square-16-svg-prop; } %briefcase-16-svg-prop { - --briefcase-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --briefcase-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %briefcase-24-svg-prop { - --briefcase-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --briefcase-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %broadcast-svg-prop { - --broadcast-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %radio-16-svg-prop; } %bug-16-svg-prop { - --bug-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bug-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bug-24-svg-prop { - --bug-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bug-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %bug-svg-prop { - --bug-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %bug-16-svg-prop; } %build-16-svg-prop { - --build-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --build-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %build-24-svg-prop { - --build-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --build-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %calendar-16-svg-prop { - --calendar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --calendar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %calendar-24-svg-prop { - --calendar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --calendar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %calendar-svg-prop { - --calendar-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %calendar-16-svg-prop; } %camera-16-svg-prop { - --camera-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %camera-24-svg-prop { - --camera-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %camera-off-16-svg-prop { - --camera-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %camera-off-24-svg-prop { - --camera-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cancel-circle-fill-svg-prop { - --cancel-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %x-circle-fill-16-svg-prop; } %cancel-circle-outline-svg-prop { - --cancel-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %x-circle-16-svg-prop; } %cancel-plain-svg-prop { - --cancel-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %x-16-svg-prop; } %cancel-square-fill-svg-prop { - --cancel-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %x-square-fill-16-svg-prop; } %cancel-square-outline-svg-prop { - --cancel-square-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %x-square-16-svg-prop; } %caret-16-svg-prop { - --caret-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --caret-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %caret-24-svg-prop { - --caret-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --caret-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %caret-down-svg-prop { - --caret-down-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %caret-16-svg-prop; } %caret-up-svg-prop { - --caret-up-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %chevron-up-16-svg-prop; } %cast-16-svg-prop { - --cast-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cast-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cast-24-svg-prop { - --cast-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cast-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %certificate-16-svg-prop { - --certificate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --certificate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %certificate-24-svg-prop { - --certificate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --certificate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %change-16-svg-prop { - --change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %change-24-svg-prop { - --change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %change-circle-16-svg-prop { - --change-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %change-circle-24-svg-prop { - --change-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %change-square-16-svg-prop { - --change-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %change-square-24-svg-prop { - --change-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-16-svg-prop { - --check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-24-svg-prop { - --check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-circle-16-svg-prop { - --check-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-circle-24-svg-prop { - --check-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-circle-fill-16-svg-prop { - --check-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-circle-fill-24-svg-prop { - --check-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-circle-fill-svg-prop { - --check-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %check-circle-fill-16-svg-prop; } %check-circle-outline-svg-prop { - --check-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %check-circle-16-svg-prop; } %check-diamond-16-svg-prop { - --check-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-diamond-24-svg-prop { - --check-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-diamond-fill-16-svg-prop { - --check-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-diamond-fill-24-svg-prop { - --check-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-hexagon-16-svg-prop { - --check-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-hexagon-24-svg-prop { - --check-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-hexagon-fill-16-svg-prop { - --check-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-hexagon-fill-24-svg-prop { - --check-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-plain-svg-prop { - --check-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %check-16-svg-prop; } %check-square-16-svg-prop { - --check-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-square-24-svg-prop { - --check-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-square-fill-16-svg-prop { - --check-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %check-square-fill-24-svg-prop { - --check-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-down-16-svg-prop { - --chevron-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-down-24-svg-prop { - --chevron-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-down-svg-prop { - --chevron-down-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %chevron-down-16-svg-prop; } %chevron-left-16-svg-prop { - --chevron-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-left-24-svg-prop { - --chevron-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-left-svg-prop { - --chevron-left-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %chevron-left-16-svg-prop; } %chevron-right-16-svg-prop { - --chevron-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-right-24-svg-prop { - --chevron-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-right-svg-prop { - --chevron-right-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %chevron-right-16-svg-prop; } %chevron-up-16-svg-prop { - --chevron-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-up-24-svg-prop { - --chevron-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevron-up-svg-prop { - --chevron-up-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %chevron-up-16-svg-prop; } %chevrons-down-16-svg-prop { - --chevrons-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-down-24-svg-prop { - --chevrons-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-left-16-svg-prop { - --chevrons-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-left-24-svg-prop { - --chevrons-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-right-16-svg-prop { - --chevrons-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-right-24-svg-prop { - --chevrons-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-up-16-svg-prop { - --chevrons-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %chevrons-up-24-svg-prop { - --chevrons-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-16-svg-prop { - --circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-24-svg-prop { - --circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-dot-16-svg-prop { - --circle-dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-dot-24-svg-prop { - --circle-dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-fill-16-svg-prop { - --circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-fill-24-svg-prop { - --circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-half-16-svg-prop { - --circle-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %circle-half-24-svg-prop { - --circle-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clipboard-16-svg-prop { - --clipboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clipboard-24-svg-prop { - --clipboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clipboard-checked-16-svg-prop { - --clipboard-checked-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-checked-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clipboard-checked-24-svg-prop { - --clipboard-checked-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-checked-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clipboard-copy-16-svg-prop { - --clipboard-copy-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-copy-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clipboard-copy-24-svg-prop { - --clipboard-copy-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-copy-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clock-16-svg-prop { - --clock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clock-24-svg-prop { - --clock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %clock-fill-svg-prop { - --clock-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %clock-16-svg-prop; } %clock-outline-svg-prop { - --clock-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %clock-16-svg-prop; } %cloud-16-svg-prop { - --cloud-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-24-svg-prop { - --cloud-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-check-16-svg-prop { - --cloud-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-check-24-svg-prop { - --cloud-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-cross-svg-prop { @@ -895,255 +951,287 @@ } %cloud-download-16-svg-prop { - --cloud-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-download-24-svg-prop { - --cloud-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-lightning-16-svg-prop { - --cloud-lightning-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lightning-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-lightning-24-svg-prop { - --cloud-lightning-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lightning-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-lock-16-svg-prop { - --cloud-lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-lock-24-svg-prop { - --cloud-lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-off-16-svg-prop { - --cloud-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-off-24-svg-prop { - --cloud-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-upload-16-svg-prop { - --cloud-upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-upload-24-svg-prop { - --cloud-upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-x-16-svg-prop { - --cloud-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cloud-x-24-svg-prop { - --cloud-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %code-16-svg-prop { - --code-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --code-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %code-24-svg-prop { - --code-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --code-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %code-svg-prop { - --code-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %code-16-svg-prop; +} + +%codepen-16-svg-prop { + --codepen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%codepen-24-svg-prop { + --codepen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%codepen-color-16-svg-prop { + --codepen-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%codepen-color-24-svg-prop { + --codepen-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %collections-16-svg-prop { - --collections-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --collections-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %collections-24-svg-prop { - --collections-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --collections-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %command-16-svg-prop { - --command-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --command-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %command-24-svg-prop { - --command-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --command-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %compass-16-svg-prop { - --compass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --compass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %compass-24-svg-prop { - --compass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --compass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %connection-16-svg-prop { - --connection-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %connection-24-svg-prop { - --connection-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %connection-gateway-16-svg-prop { - --connection-gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %connection-gateway-24-svg-prop { - --connection-gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %console-svg-prop { - --console-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %terminal-16-svg-prop; +} + +%consul-16-svg-prop { + --consul-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%consul-24-svg-prop { + --consul-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%consul-color-16-svg-prop { + --consul-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%consul-color-24-svg-prop { + --consul-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %copy-action-svg-prop { - --copy-action-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %clipboard-copy-16-svg-prop; } %copy-success-svg-prop { - --copy-success-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %clipboard-checked-16-svg-prop; } %corner-down-left-16-svg-prop { - --corner-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-down-left-24-svg-prop { - --corner-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-down-right-16-svg-prop { - --corner-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-down-right-24-svg-prop { - --corner-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-left-down-16-svg-prop { - --corner-left-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-left-down-24-svg-prop { - --corner-left-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-left-up-16-svg-prop { - --corner-left-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-left-up-24-svg-prop { - --corner-left-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-right-down-16-svg-prop { - --corner-right-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-right-down-24-svg-prop { - --corner-right-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-right-up-16-svg-prop { - --corner-right-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-right-up-24-svg-prop { - --corner-right-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-up-left-16-svg-prop { - --corner-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-up-left-24-svg-prop { - --corner-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-up-right-16-svg-prop { - --corner-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %corner-up-right-24-svg-prop { - --corner-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cpu-16-svg-prop { - --cpu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cpu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %cpu-24-svg-prop { - --cpu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cpu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %credit-card-16-svg-prop { - --credit-card-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --credit-card-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %credit-card-24-svg-prop { - --credit-card-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --credit-card-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %crop-16-svg-prop { - --crop-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crop-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %crop-24-svg-prop { - --crop-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crop-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %crosshair-16-svg-prop { - --crosshair-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crosshair-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %crosshair-24-svg-prop { - --crosshair-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crosshair-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dashboard-16-svg-prop { - --dashboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dashboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dashboard-24-svg-prop { - --dashboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dashboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %database-16-svg-prop { - --database-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --database-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %database-24-svg-prop { - --database-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --database-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %database-svg-prop { - --database-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %database-16-svg-prop; } %delay-16-svg-prop { - --delay-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delay-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %delay-24-svg-prop { - --delay-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delay-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %delay-svg-prop { - --delay-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %delay-16-svg-prop; } %delete-16-svg-prop { - --delete-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delete-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %delete-24-svg-prop { - --delete-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delete-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %deny-alt-svg-prop { - --deny-alt-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %skip-16-svg-prop; } %deny-color-svg-prop { @@ -1151,1075 +1239,1163 @@ } %deny-default-svg-prop { - --deny-default-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %skip-16-svg-prop; } %diamond-16-svg-prop { - --diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %diamond-24-svg-prop { - --diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %diamond-fill-16-svg-prop { - --diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %diamond-fill-24-svg-prop { - --diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %disabled-svg-prop { - --disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %skip-16-svg-prop; } %disc-16-svg-prop { - --disc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --disc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %disc-24-svg-prop { - --disc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --disc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %discussion-circle-16-svg-prop { - --discussion-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %discussion-circle-24-svg-prop { - --discussion-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %discussion-square-16-svg-prop { - --discussion-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %discussion-square-24-svg-prop { - --discussion-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docker-16-svg-prop { - --docker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docker-24-svg-prop { - --docker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docker-color-16-svg-prop { - --docker-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docker-color-24-svg-prop { - --docker-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-16-svg-prop { - --docs-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-24-svg-prop { - --docs-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-download-16-svg-prop { - --docs-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-download-24-svg-prop { - --docs-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-link-16-svg-prop { - --docs-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-link-24-svg-prop { - --docs-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %docs-svg-prop { - --docs-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %docs-link-16-svg-prop; } %dollar-sign-16-svg-prop { - --dollar-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dollar-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dollar-sign-24-svg-prop { - --dollar-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dollar-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dot-16-svg-prop { - --dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dot-24-svg-prop { - --dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dot-half-16-svg-prop { - --dot-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %dot-half-24-svg-prop { - --dot-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %download-16-svg-prop { - --download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %download-24-svg-prop { - --download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %download-svg-prop { - --download-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %download-16-svg-prop; } %droplet-16-svg-prop { - --droplet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --droplet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %droplet-24-svg-prop { - --droplet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --droplet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %duplicate-16-svg-prop { - --duplicate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --duplicate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %duplicate-24-svg-prop { - --duplicate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --duplicate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %edit-16-svg-prop { - --edit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --edit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %edit-24-svg-prop { - --edit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --edit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %edit-svg-prop { - --edit-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %edit-16-svg-prop; } %entry-point-16-svg-prop { - --entry-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --entry-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %entry-point-24-svg-prop { - --entry-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --entry-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %envelope-sealed-fill-svg-prop { - --envelope-sealed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %mail-16-svg-prop; } %envelope-sealed-outline-svg-prop { - --envelope-sealed-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %mail-16-svg-prop; } %envelope-unsealed--outline-svg-prop { - --envelope-unsealed--outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %mail-open-16-svg-prop; } %envelope-unsealed-fill-svg-prop { - --envelope-unsealed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %mail-open-16-svg-prop; } %event-16-svg-prop { - --event-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --event-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %event-24-svg-prop { - --event-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --event-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %exit-point-16-svg-prop { - --exit-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --exit-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %exit-point-24-svg-prop { - --exit-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --exit-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %exit-svg-prop { - --exit-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %external-link-16-svg-prop; } %expand-less-svg-prop { - --expand-less-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %minimize-16-svg-prop; } %expand-more-svg-prop { - --expand-more-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %maximize-16-svg-prop; } %external-link-16-svg-prop { - --external-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --external-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %external-link-24-svg-prop { - --external-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --external-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %eye-16-svg-prop { - --eye-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %eye-24-svg-prop { - --eye-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %eye-off-16-svg-prop { - --eye-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %eye-off-24-svg-prop { - --eye-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %f5-16-svg-prop { - --f5-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %f5-24-svg-prop { - --f5-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %f5-color-16-svg-prop { - --f5-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %f5-color-24-svg-prop { - --f5-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%facebook-16-svg-prop { + --facebook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%facebook-24-svg-prop { + --facebook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%facebook-color-16-svg-prop { + --facebook-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%facebook-color-24-svg-prop { + --facebook-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %fast-forward-16-svg-prop { - --fast-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fast-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %fast-forward-24-svg-prop { - --fast-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fast-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-16-svg-prop { - --file-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-24-svg-prop { - --file-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-change-16-svg-prop { - --file-change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-change-24-svg-prop { - --file-change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-check-16-svg-prop { - --file-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-check-24-svg-prop { - --file-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-diff-16-svg-prop { - --file-diff-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-diff-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-diff-24-svg-prop { - --file-diff-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-diff-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-fill-svg-prop { - --file-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %file-16-svg-prop; } %file-minus-16-svg-prop { - --file-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-minus-24-svg-prop { - --file-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-outline-svg-prop { - --file-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %file-16-svg-prop; } %file-plus-16-svg-prop { - --file-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-plus-24-svg-prop { - --file-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-source-16-svg-prop { - --file-source-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-source-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-source-24-svg-prop { - --file-source-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-source-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-text-16-svg-prop { - --file-text-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-text-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-text-24-svg-prop { - --file-text-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-text-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-x-16-svg-prop { - --file-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %file-x-24-svg-prop { - --file-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %files-16-svg-prop { - --files-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --files-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %files-24-svg-prop { - --files-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --files-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %film-16-svg-prop { - --film-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --film-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %film-24-svg-prop { - --film-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --film-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-16-svg-prop { - --filter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-24-svg-prop { - --filter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-circle-16-svg-prop { - --filter-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-circle-24-svg-prop { - --filter-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-fill-16-svg-prop { - --filter-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-fill-24-svg-prop { - --filter-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %filter-svg-prop { - --filter-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %filter-16-svg-prop; } %fingerprint-16-svg-prop { - --fingerprint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fingerprint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %fingerprint-24-svg-prop { - --fingerprint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fingerprint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %flag-16-svg-prop { - --flag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --flag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %flag-24-svg-prop { - --flag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --flag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %flag-svg-prop { - --flag-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %flag-16-svg-prop; } %folder-16-svg-prop { - --folder-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-24-svg-prop { - --folder-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-fill-16-svg-prop { - --folder-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-fill-24-svg-prop { - --folder-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-fill-svg-prop { - --folder-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %folder-fill-16-svg-prop; } %folder-minus-16-svg-prop { - --folder-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-minus-24-svg-prop { - --folder-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-minus-fill-16-svg-prop { - --folder-minus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-minus-fill-24-svg-prop { - --folder-minus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-outline-svg-prop { - --folder-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %folder-16-svg-prop; } %folder-plus-16-svg-prop { - --folder-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-plus-24-svg-prop { - --folder-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-plus-fill-16-svg-prop { - --folder-plus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-plus-fill-24-svg-prop { - --folder-plus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-star-16-svg-prop { - --folder-star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-star-24-svg-prop { - --folder-star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-users-16-svg-prop { - --folder-users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %folder-users-24-svg-prop { - --folder-users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %frown-16-svg-prop { - --frown-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --frown-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %frown-24-svg-prop { - --frown-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --frown-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gateway-16-svg-prop { - --gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gateway-24-svg-prop { - --gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gateway-svg-prop { - --gateway-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gateway-16-svg-prop; } %gcp-16-svg-prop { - --gcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gcp-24-svg-prop { - --gcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gcp-color-16-svg-prop { - --gcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gcp-color-24-svg-prop { - --gcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gift-16-svg-prop { - --gift-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gift-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gift-24-svg-prop { - --gift-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gift-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gift-fill-svg-prop { - --gift-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gift-16-svg-prop; } %gift-outline-svg-prop { - --gift-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gift-16-svg-prop; } %git-branch-16-svg-prop { - --git-branch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-branch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-branch-24-svg-prop { - --git-branch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-branch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-branch-svg-prop { - --git-branch-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %git-branch-16-svg-prop; } %git-commit-16-svg-prop { - --git-commit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-commit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-commit-24-svg-prop { - --git-commit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-commit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-commit-svg-prop { - --git-commit-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %git-commit-16-svg-prop; } %git-merge-16-svg-prop { - --git-merge-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-merge-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-merge-24-svg-prop { - --git-merge-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-merge-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-pull-request-16-svg-prop { - --git-pull-request-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-pull-request-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-pull-request-24-svg-prop { - --git-pull-request-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-pull-request-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-pull-request-svg-prop { - --git-pull-request-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %git-pull-request-16-svg-prop; } %git-repo-16-svg-prop { - --git-repo-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-repo-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-repo-24-svg-prop { - --git-repo-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-repo-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %git-repository-svg-prop { - --git-repository-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %git-repo-16-svg-prop; } %github-16-svg-prop { - --github-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %github-24-svg-prop { - --github-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %github-color-16-svg-prop { - --github-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %github-color-24-svg-prop { - --github-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gitlab-16-svg-prop { - --gitlab-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gitlab-24-svg-prop { - --gitlab-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gitlab-color-16-svg-prop { - --gitlab-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %gitlab-color-24-svg-prop { - --gitlab-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %globe-16-svg-prop { - --globe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %globe-24-svg-prop { - --globe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %globe-private-16-svg-prop { - --globe-private-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-private-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %globe-private-24-svg-prop { - --globe-private-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-private-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %google-16-svg-prop { - --google-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %google-24-svg-prop { - --google-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %google-color-16-svg-prop { - --google-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %google-color-24-svg-prop { - --google-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %grid-16-svg-prop { - --grid-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %grid-24-svg-prop { - --grid-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %grid-alt-16-svg-prop { - --grid-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %grid-alt-24-svg-prop { - --grid-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %guide-16-svg-prop { - --guide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %guide-24-svg-prop { - --guide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %guide-link-16-svg-prop { - --guide-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %guide-link-24-svg-prop { - --guide-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %guide-svg-prop { - --guide-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %guide-16-svg-prop; } %hammer-16-svg-prop { - --hammer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hammer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hammer-24-svg-prop { - --hammer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hammer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%handshake-16-svg-prop { + --handshake-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%handshake-24-svg-prop { + --handshake-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hard-drive-16-svg-prop { - --hard-drive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hard-drive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hard-drive-24-svg-prop { - --hard-drive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hard-drive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hash-16-svg-prop { - --hash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hash-24-svg-prop { - --hash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hashicorp-16-svg-prop { + --hashicorp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hashicorp-24-svg-prop { + --hashicorp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hashicorp-color-16-svg-prop { + --hashicorp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hashicorp-color-24-svg-prop { + --hashicorp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hcp-16-svg-prop { + --hcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hcp-24-svg-prop { + --hcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hcp-color-16-svg-prop { + --hcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%hcp-color-24-svg-prop { + --hcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %headphones-16-svg-prop { - --headphones-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --headphones-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %headphones-24-svg-prop { - --headphones-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --headphones-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %health-svg-prop { - --health-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %activity-16-svg-prop; } %heart-16-svg-prop { - --heart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %heart-24-svg-prop { - --heart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %heart-fill-16-svg-prop { - --heart-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %heart-fill-24-svg-prop { - --heart-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %heart-off-16-svg-prop { - --heart-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %heart-off-24-svg-prop { - --heart-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %help-16-svg-prop { - --help-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --help-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %help-24-svg-prop { - --help-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --help-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %help-circle-fill-svg-prop { - --help-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %help-16-svg-prop; } %help-circle-outline-svg-prop { - --help-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %help-16-svg-prop; } %hexagon-16-svg-prop { - --hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hexagon-24-svg-prop { - --hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hexagon-fill-16-svg-prop { - --hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hexagon-fill-24-svg-prop { - --hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %history-16-svg-prop { - --history-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --history-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %history-24-svg-prop { - --history-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --history-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %history-svg-prop { - --history-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %history-16-svg-prop; } %home-16-svg-prop { - --home-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --home-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %home-24-svg-prop { - --home-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --home-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hourglass-16-svg-prop { - --hourglass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hourglass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %hourglass-24-svg-prop { - --hourglass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hourglass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %identity-service-16-svg-prop { - --identity-service-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-service-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %identity-service-24-svg-prop { - --identity-service-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-service-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %identity-user-16-svg-prop { - --identity-user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %identity-user-24-svg-prop { - --identity-user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %image-16-svg-prop { - --image-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --image-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %image-24-svg-prop { - --image-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --image-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %inbox-16-svg-prop { - --inbox-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --inbox-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %inbox-24-svg-prop { - --inbox-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --inbox-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %info-16-svg-prop { - --info-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --info-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %info-24-svg-prop { - --info-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --info-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %info-circle-fill-svg-prop { - --info-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %info-16-svg-prop; } %info-circle-outline-svg-prop { - --info-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %info-16-svg-prop; } %jump-link-16-svg-prop { - --jump-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --jump-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %jump-link-24-svg-prop { - --jump-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --jump-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %key-16-svg-prop { - --key-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %key-24-svg-prop { - --key-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %key-values-16-svg-prop { - --key-values-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-values-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %key-values-24-svg-prop { - --key-values-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-values-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %key-svg-prop { - --key-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %key-16-svg-prop; +} + +%keychain-16-svg-prop { + --keychain-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%keychain-24-svg-prop { + --keychain-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %kubernetes-16-svg-prop { - --kubernetes-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %kubernetes-24-svg-prop { - --kubernetes-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %kubernetes-color-16-svg-prop { - --kubernetes-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %kubernetes-color-24-svg-prop { - --kubernetes-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %labyrinth-16-svg-prop { - --labyrinth-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --labyrinth-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %labyrinth-24-svg-prop { - --labyrinth-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --labyrinth-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %layers-16-svg-prop { - --layers-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layers-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %layers-24-svg-prop { - --layers-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layers-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %layers-svg-prop { - --layers-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %layers-16-svg-prop; } %layout-16-svg-prop { - --layout-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layout-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %layout-24-svg-prop { - --layout-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layout-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %learn-16-svg-prop { - --learn-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %learn-24-svg-prop { - --learn-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %learn-link-16-svg-prop { - --learn-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %learn-link-24-svg-prop { - --learn-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %learn-svg-prop { - --learn-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %learn-16-svg-prop; } %line-chart-16-svg-prop { - --line-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %line-chart-24-svg-prop { - --line-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %line-chart-up-16-svg-prop { - --line-chart-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %line-chart-up-24-svg-prop { - --line-chart-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %link-16-svg-prop { - --link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %link-24-svg-prop { - --link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %link-svg-prop { - --link-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %link-16-svg-prop; +} + +%linkedin-16-svg-prop { + --linkedin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%linkedin-24-svg-prop { + --linkedin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%linkedin-color-16-svg-prop { + --linkedin-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%linkedin-color-24-svg-prop { + --linkedin-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %list-16-svg-prop { - --list-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --list-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %list-24-svg-prop { - --list-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --list-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%load-balancer-16-svg-prop { + --load-balancer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%load-balancer-24-svg-prop { + --load-balancer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %loading-svg-prop { - --loading-svg: url('data:image/svg+xml;charset=UTF-8,'); + --loading-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-16-svg-prop { - --lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-24-svg-prop { - --lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-closed-fill-svg-prop { - --lock-closed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %lock-fill-16-svg-prop; } %lock-closed-outline-svg-prop { - --lock-closed-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %lock-16-svg-prop; } %lock-closed-svg-prop { - --lock-closed-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %lock-fill-16-svg-prop; } %lock-disabled-svg-prop { - --lock-disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %lock-off-16-svg-prop; } %lock-fill-16-svg-prop { - --lock-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-fill-24-svg-prop { - --lock-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-off-16-svg-prop { - --lock-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-off-24-svg-prop { - --lock-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %lock-open-svg-prop { - --lock-open-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %unlock-16-svg-prop; } %logo-alicloud-color-svg-prop { - --logo-alicloud-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %alibaba-color-16-svg-prop; } %logo-alicloud-monochrome-svg-prop { - --logo-alicloud-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %alibaba-16-svg-prop; } %logo-auth0-color-svg-prop { - --logo-auth0-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %auth0-color-16-svg-prop; } %logo-aws-color-svg-prop { - --logo-aws-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %aws-color-16-svg-prop; } %logo-aws-monochrome-svg-prop { - --logo-aws-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %aws-16-svg-prop; } %logo-azure-color-svg-prop { - --logo-azure-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %azure-color-16-svg-prop; } %logo-azure-dev-ops-color-svg-prop { - --logo-azure-dev-ops-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %azure-devops-color-16-svg-prop; } %logo-azure-dev-ops-monochrome-svg-prop { - --logo-azure-dev-ops-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %azure-devops-16-svg-prop; } %logo-azure-monochrome-svg-prop { - --logo-azure-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %azure-16-svg-prop; } %logo-bitbucket-color-svg-prop { - --logo-bitbucket-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %bitbucket-color-16-svg-prop; } %logo-bitbucket-monochrome-svg-prop { - --logo-bitbucket-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %bitbucket-16-svg-prop; } %logo-consul-color-svg-prop { - --logo-consul-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %consul-color-16-svg-prop; } %logo-ember-circle-color-svg-prop { @@ -2227,27 +2403,27 @@ } %logo-gcp-color-svg-prop { - --logo-gcp-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gcp-color-16-svg-prop; } %logo-gcp-monochrome-svg-prop { - --logo-gcp-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gcp-16-svg-prop; } %logo-github-color-svg-prop { - --logo-github-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %github-color-16-svg-prop; } %logo-github-monochrome-svg-prop { - --logo-github-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %github-16-svg-prop; } %logo-gitlab-color-svg-prop { - --logo-gitlab-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gitlab-color-16-svg-prop; } %logo-gitlab-monochrome-svg-prop { - --logo-gitlab-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %gitlab-16-svg-prop; } %logo-glimmer-color-svg-prop { @@ -2255,11 +2431,11 @@ } %logo-google-color-svg-prop { - --logo-google-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %google-color-16-svg-prop; } %logo-google-monochrome-svg-prop { - --logo-google-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %google-16-svg-prop; } %logo-hashicorp-color-svg-prop { @@ -2271,19 +2447,19 @@ } %logo-kubernetes-color-svg-prop { - --logo-kubernetes-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %kubernetes-color-16-svg-prop; } %logo-kubernetes-monochrome-svg-prop { - --logo-kubernetes-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %kubernetes-16-svg-prop; } %logo-microsoft-color-svg-prop { - --logo-microsoft-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %microsoft-color-16-svg-prop; } %logo-nomad-color-svg-prop { - --logo-nomad-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %nomad-color-16-svg-prop; } %logo-oidc-color-svg-prop { @@ -2291,27 +2467,27 @@ } %logo-okta-color-svg-prop { - --logo-okta-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %okta-color-16-svg-prop; } %logo-oracle-color-svg-prop { - --logo-oracle-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %oracle-color-16-svg-prop; } %logo-oracle-monochrome-svg-prop { - --logo-oracle-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %oracle-16-svg-prop; } %logo-slack-color-svg-prop { - --logo-slack-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %slack-color-16-svg-prop; } %logo-slack-monochrome-svg-prop { - --logo-slack-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %slack-16-svg-prop; } %logo-terraform-color-svg-prop { - --logo-terraform-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %terraform-color-16-svg-prop; } %logo-vault-color-svg-prop { @@ -2319,619 +2495,675 @@ } %logo-vmware-color-svg-prop { - --logo-vmware-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %vmware-color-16-svg-prop; } %logo-vmware-monochrome-svg-prop { - --logo-vmware-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %vmware-16-svg-prop; } %mail-16-svg-prop { - --mail-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mail-24-svg-prop { - --mail-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mail-open-16-svg-prop { - --mail-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mail-open-24-svg-prop { - --mail-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%mainframe-16-svg-prop { + --mainframe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%mainframe-24-svg-prop { + --mainframe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %map-16-svg-prop { - --map-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %map-24-svg-prop { - --map-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %map-pin-16-svg-prop { - --map-pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %map-pin-24-svg-prop { - --map-pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %maximize-16-svg-prop { - --maximize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %maximize-24-svg-prop { - --maximize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %maximize-alt-16-svg-prop { - --maximize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %maximize-alt-24-svg-prop { - --maximize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %meh-16-svg-prop { - --meh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --meh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %meh-24-svg-prop { - --meh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --meh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %menu-16-svg-prop { - --menu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --menu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %menu-24-svg-prop { - --menu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --menu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %menu-svg-prop { - --menu-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %menu-16-svg-prop; } %mesh-16-svg-prop { - --mesh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mesh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mesh-24-svg-prop { - --mesh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mesh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mesh-svg-prop { - --mesh-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %mesh-16-svg-prop; } %message-circle-16-svg-prop { - --message-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-circle-24-svg-prop { - --message-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-circle-fill-16-svg-prop { - --message-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-circle-fill-24-svg-prop { - --message-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-square-16-svg-prop { - --message-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-square-24-svg-prop { - --message-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-square-fill-16-svg-prop { - --message-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-square-fill-24-svg-prop { - --message-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %message-svg-prop { - --message-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %message-square-fill-16-svg-prop; } %mic-16-svg-prop { - --mic-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mic-24-svg-prop { - --mic-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mic-off-16-svg-prop { - --mic-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mic-off-24-svg-prop { - --mic-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %microsoft-16-svg-prop { - --microsoft-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %microsoft-24-svg-prop { - --microsoft-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %microsoft-color-16-svg-prop { - --microsoft-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %microsoft-color-24-svg-prop { - --microsoft-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %migrate-16-svg-prop { - --migrate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --migrate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %migrate-24-svg-prop { - --migrate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --migrate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minimize-16-svg-prop { - --minimize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minimize-24-svg-prop { - --minimize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minimize-alt-16-svg-prop { - --minimize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minimize-alt-24-svg-prop { - --minimize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-16-svg-prop { - --minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-24-svg-prop { - --minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-circle-16-svg-prop { - --minus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-circle-24-svg-prop { - --minus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-circle-fill-svg-prop { - --minus-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %minus-circle-16-svg-prop; } %minus-circle-outline-svg-prop { - --minus-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %minus-circle-16-svg-prop; } %minus-plain-svg-prop { - --minus-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %minus-16-svg-prop; } %minus-plus-16-svg-prop { - --minus-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-plus-24-svg-prop { - --minus-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-plus-circle-16-svg-prop { - --minus-plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-plus-circle-24-svg-prop { - --minus-plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-plus-square-16-svg-prop { - --minus-plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-plus-square-24-svg-prop { - --minus-plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-square-16-svg-prop { - --minus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-square-24-svg-prop { - --minus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %minus-square-fill-svg-prop { - --minus-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %minus-square-16-svg-prop; } %module-16-svg-prop { - --module-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --module-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %module-24-svg-prop { - --module-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --module-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %module-svg-prop { - --module-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %module-16-svg-prop; } %monitor-16-svg-prop { - --monitor-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --monitor-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %monitor-24-svg-prop { - --monitor-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --monitor-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %moon-16-svg-prop { - --moon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --moon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %moon-24-svg-prop { - --moon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --moon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %more-horizontal-16-svg-prop { - --more-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %more-horizontal-24-svg-prop { - --more-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %more-horizontal-svg-prop { - --more-horizontal-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %more-horizontal-16-svg-prop; } %more-vertical-16-svg-prop { - --more-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %more-vertical-24-svg-prop { - --more-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %more-vertical-svg-prop { - --more-vertical-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %more-vertical-16-svg-prop; } %mouse-pointer-16-svg-prop { - --mouse-pointer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mouse-pointer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %mouse-pointer-24-svg-prop { - --mouse-pointer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mouse-pointer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %move-16-svg-prop { - --move-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --move-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %move-24-svg-prop { - --move-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --move-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %music-16-svg-prop { - --music-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --music-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %music-24-svg-prop { - --music-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --music-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %navigation-16-svg-prop { - --navigation-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %navigation-24-svg-prop { - --navigation-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %navigation-alt-16-svg-prop { - --navigation-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %navigation-alt-24-svg-prop { - --navigation-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %network-16-svg-prop { - --network-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %network-24-svg-prop { - --network-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %network-alt-16-svg-prop { - --network-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %network-alt-24-svg-prop { - --network-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %newspaper-16-svg-prop { - --newspaper-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --newspaper-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %newspaper-24-svg-prop { - --newspaper-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --newspaper-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %node-16-svg-prop { - --node-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --node-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %node-24-svg-prop { - --node-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --node-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%nomad-16-svg-prop { + --nomad-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%nomad-24-svg-prop { + --nomad-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%nomad-color-16-svg-prop { + --nomad-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%nomad-color-24-svg-prop { + --nomad-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %notification-disabled-svg-prop { - --notification-disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %bell-off-16-svg-prop; } %notification-fill-svg-prop { - --notification-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %bell-active-fill-16-svg-prop; } %notification-outline-svg-prop { - --notification-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %bell-16-svg-prop; } %octagon-16-svg-prop { - --octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %octagon-24-svg-prop { - --octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %okta-16-svg-prop { - --okta-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %okta-24-svg-prop { - --okta-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %okta-color-16-svg-prop { - --okta-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %okta-color-24-svg-prop { - --okta-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %oracle-16-svg-prop { - --oracle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %oracle-24-svg-prop { - --oracle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %oracle-color-16-svg-prop { - --oracle-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %oracle-color-24-svg-prop { - --oracle-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %org-16-svg-prop { - --org-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --org-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %org-24-svg-prop { - --org-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --org-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %outline-16-svg-prop { - --outline-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --outline-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %outline-24-svg-prop { - --outline-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --outline-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %outline-svg-prop { - --outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %outline-16-svg-prop; +} + +%pack-16-svg-prop { + --pack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%pack-24-svg-prop { + --pack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%pack-color-16-svg-prop { + --pack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%pack-color-24-svg-prop { + --pack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %package-16-svg-prop { - --package-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --package-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %package-24-svg-prop { - --package-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --package-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%packer-16-svg-prop { + --packer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%packer-24-svg-prop { + --packer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%packer-color-16-svg-prop { + --packer-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%packer-color-24-svg-prop { + --packer-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %page-outline-svg-prop { - --page-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %outline-16-svg-prop; } %paperclip-16-svg-prop { - --paperclip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --paperclip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %paperclip-24-svg-prop { - --paperclip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --paperclip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %partner-svg-prop { - --partner-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %users-16-svg-prop; } %path-16-svg-prop { - --path-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --path-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %path-24-svg-prop { - --path-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --path-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %path-svg-prop { - --path-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %path-16-svg-prop; } %pause-16-svg-prop { - --pause-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pause-24-svg-prop { - --pause-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pause-circle-16-svg-prop { - --pause-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pause-circle-24-svg-prop { - --pause-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pen-tool-16-svg-prop { - --pen-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pen-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pen-tool-24-svg-prop { - --pen-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pen-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pencil-tool-16-svg-prop { - --pencil-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pencil-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pencil-tool-24-svg-prop { - --pencil-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pencil-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %phone-16-svg-prop { - --phone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %phone-24-svg-prop { - --phone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %phone-call-16-svg-prop { - --phone-call-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-call-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %phone-call-24-svg-prop { - --phone-call-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-call-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %phone-off-16-svg-prop { - --phone-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %phone-off-24-svg-prop { - --phone-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pie-chart-16-svg-prop { - --pie-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pie-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pie-chart-24-svg-prop { - --pie-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pie-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pin-16-svg-prop { - --pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %pin-24-svg-prop { - --pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %play-16-svg-prop { - --play-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %play-24-svg-prop { - --play-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %play-circle-16-svg-prop { - --play-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %play-circle-24-svg-prop { - --play-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %play-fill-svg-prop { - --play-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %play-circle-16-svg-prop; } %play-outline-svg-prop { - --play-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %play-circle-16-svg-prop; } %play-plain-svg-prop { - --play-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %play-16-svg-prop; } %plus-16-svg-prop { - --plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %plus-24-svg-prop { - --plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %plus-circle-16-svg-prop { - --plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %plus-circle-24-svg-prop { - --plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %plus-circle-fill-svg-prop { - --plus-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %plus-circle-16-svg-prop; } %plus-circle-outline-svg-prop { - --plus-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %plus-circle-16-svg-prop; } %plus-plain-svg-prop { - --plus-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %plus-16-svg-prop; } %plus-square-16-svg-prop { - --plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %plus-square-24-svg-prop { - --plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %plus-square-fill-svg-prop { - --plus-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %plus-square-16-svg-prop; } %port-svg-prop { @@ -2939,19 +3171,19 @@ } %power-16-svg-prop { - --power-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --power-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %power-24-svg-prop { - --power-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --power-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %printer-16-svg-prop { - --printer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --printer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %printer-24-svg-prop { - --printer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --printer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %protocol-svg-prop { @@ -2959,191 +3191,191 @@ } %provider-16-svg-prop { - --provider-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --provider-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %provider-24-svg-prop { - --provider-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --provider-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %provider-svg-prop { - --provider-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %provider-16-svg-prop; } %public-default-svg-prop { - --public-default-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %globe-16-svg-prop; } %public-locked-svg-prop { - --public-locked-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %globe-private-16-svg-prop; } %queue-16-svg-prop { - --queue-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --queue-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %queue-24-svg-prop { - --queue-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --queue-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %queue-svg-prop { - --queue-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %queue-16-svg-prop; } %radio-16-svg-prop { - --radio-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --radio-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %radio-24-svg-prop { - --radio-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --radio-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %radio-button-checked-svg-prop { - --radio-button-checked-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %circle-dot-16-svg-prop; } %radio-button-unchecked-svg-prop { - --radio-button-unchecked-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %circle-16-svg-prop; } %random-16-svg-prop { - --random-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --random-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %random-24-svg-prop { - --random-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --random-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %random-svg-prop { - --random-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %random-16-svg-prop; } %redirect-16-svg-prop { - --redirect-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --redirect-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %redirect-24-svg-prop { - --redirect-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --redirect-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %redirect-svg-prop { - --redirect-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %redirect-16-svg-prop; } %refresh-alert-svg-prop { - --refresh-alert-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %sync-alert-16-svg-prop; } %refresh-default-svg-prop { - --refresh-default-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %sync-16-svg-prop; } %reload-16-svg-prop { - --reload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --reload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %reload-24-svg-prop { - --reload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --reload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %remix-svg-prop { - --remix-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %shuffle-16-svg-prop; } %repeat-16-svg-prop { - --repeat-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --repeat-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %repeat-24-svg-prop { - --repeat-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --repeat-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %replication-direct-16-svg-prop { - --replication-direct-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-direct-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %replication-direct-24-svg-prop { - --replication-direct-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-direct-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %replication-perf-16-svg-prop { - --replication-perf-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-perf-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %replication-perf-24-svg-prop { - --replication-perf-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-perf-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rewind-16-svg-prop { - --rewind-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rewind-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rewind-24-svg-prop { - --rewind-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rewind-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %ribbon-svg-prop { - --ribbon-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %award-16-svg-prop; } %rocket-16-svg-prop { - --rocket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rocket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rocket-24-svg-prop { - --rocket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rocket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rotate-ccw-16-svg-prop { - --rotate-ccw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-ccw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rotate-ccw-24-svg-prop { - --rotate-ccw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-ccw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rotate-cw-16-svg-prop { - --rotate-cw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-cw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rotate-cw-24-svg-prop { - --rotate-cw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-cw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rss-16-svg-prop { - --rss-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rss-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %rss-24-svg-prop { - --rss-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rss-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %run-svg-prop { - --run-svg: url('data:image/svg+xml;charset=UTF-8,'); + --run-svg: url('data:image/svg+xml;charset=UTF-8,'); } %save-16-svg-prop { - --save-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --save-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %save-24-svg-prop { - --save-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --save-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %scissors-16-svg-prop { - --scissors-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --scissors-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %scissors-24-svg-prop { - --scissors-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --scissors-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %search-16-svg-prop { - --search-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --search-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %search-24-svg-prop { - --search-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --search-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %search-color-svg-prop { @@ -3151,251 +3383,251 @@ } %search-svg-prop { - --search-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %search-16-svg-prop; } %send-16-svg-prop { - --send-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --send-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %send-24-svg-prop { - --send-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --send-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %server-16-svg-prop { - --server-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %server-24-svg-prop { - --server-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %server-cluster-16-svg-prop { - --server-cluster-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-cluster-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %server-cluster-24-svg-prop { - --server-cluster-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-cluster-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %serverless-16-svg-prop { - --serverless-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --serverless-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %serverless-24-svg-prop { - --serverless-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --serverless-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %settings-16-svg-prop { - --settings-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --settings-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %settings-24-svg-prop { - --settings-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --settings-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %settings-svg-prop { - --settings-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %settings-16-svg-prop; } %share-16-svg-prop { - --share-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --share-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %share-24-svg-prop { - --share-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --share-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-16-svg-prop { - --shield-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-24-svg-prop { - --shield-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-alert-16-svg-prop { - --shield-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-alert-24-svg-prop { - --shield-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-check-16-svg-prop { - --shield-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-check-24-svg-prop { - --shield-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-off-16-svg-prop { - --shield-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-off-24-svg-prop { - --shield-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-x-16-svg-prop { - --shield-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shield-x-24-svg-prop { - --shield-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shopping-bag-16-svg-prop { - --shopping-bag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-bag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shopping-bag-24-svg-prop { - --shopping-bag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-bag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shopping-cart-16-svg-prop { - --shopping-cart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-cart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shopping-cart-24-svg-prop { - --shopping-cart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-cart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shuffle-16-svg-prop { - --shuffle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shuffle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %shuffle-24-svg-prop { - --shuffle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shuffle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sidebar-16-svg-prop { - --sidebar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sidebar-24-svg-prop { - --sidebar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sidebar-hide-16-svg-prop { - --sidebar-hide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-hide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sidebar-hide-24-svg-prop { - --sidebar-hide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-hide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sidebar-show-16-svg-prop { - --sidebar-show-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-show-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sidebar-show-24-svg-prop { - --sidebar-show-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-show-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sign-in-16-svg-prop { - --sign-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sign-in-24-svg-prop { - --sign-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sign-out-16-svg-prop { - --sign-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sign-out-24-svg-prop { - --sign-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %skip-16-svg-prop { - --skip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %skip-24-svg-prop { - --skip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %skip-back-16-svg-prop { - --skip-back-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-back-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %skip-back-24-svg-prop { - --skip-back-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-back-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %skip-forward-16-svg-prop { - --skip-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %skip-forward-24-svg-prop { - --skip-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slack-16-svg-prop { - --slack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slack-24-svg-prop { - --slack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slack-color-16-svg-prop { - --slack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slack-color-24-svg-prop { - --slack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slash-16-svg-prop { - --slash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slash-24-svg-prop { - --slash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slash-square-16-svg-prop { - --slash-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %slash-square-24-svg-prop { - --slash-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sliders-16-svg-prop { - --sliders-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sliders-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sliders-24-svg-prop { - --sliders-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sliders-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %smartphone-16-svg-prop { - --smartphone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smartphone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %smartphone-24-svg-prop { - --smartphone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smartphone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %smile-16-svg-prop { - --smile-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smile-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %smile-24-svg-prop { - --smile-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smile-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %socket-16-svg-prop { - --socket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --socket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %socket-24-svg-prop { - --socket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --socket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %socket-svg-prop { @@ -3403,733 +3635,837 @@ } %sort-asc-16-svg-prop { - --sort-asc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-asc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sort-asc-24-svg-prop { - --sort-asc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-asc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sort-desc-16-svg-prop { - --sort-desc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-desc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sort-desc-24-svg-prop { - --sort-desc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-desc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sort-svg-prop { - --sort-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %sort-desc-16-svg-prop; } %source-file-svg-prop { - --source-file-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %file-source-16-svg-prop; } %speaker-16-svg-prop { - --speaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --speaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %speaker-24-svg-prop { - --speaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --speaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %square-16-svg-prop { - --square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %square-24-svg-prop { - --square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %square-fill-16-svg-prop { - --square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %square-fill-24-svg-prop { - --square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-16-svg-prop { - --star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-24-svg-prop { - --star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-circle-16-svg-prop { - --star-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-circle-24-svg-prop { - --star-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-fill-16-svg-prop { - --star-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-fill-24-svg-prop { - --star-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-fill-svg-prop { - --star-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %star-fill-16-svg-prop; } %star-off-16-svg-prop { - --star-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-off-24-svg-prop { - --star-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %star-outline-svg-prop { - --star-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %star-16-svg-prop; } %stop-circle-16-svg-prop { - --stop-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --stop-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %stop-circle-24-svg-prop { - --stop-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --stop-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sub-left-svg-prop { - --sub-left-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %corner-down-left-16-svg-prop; } %sub-right-svg-prop { - --sub-right-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %corner-down-right-16-svg-prop; } %sun-16-svg-prop { - --sun-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sun-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sun-24-svg-prop { - --sun-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sun-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %support-16-svg-prop { - --support-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --support-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %support-24-svg-prop { - --support-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --support-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %support-svg-prop { - --support-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %support-16-svg-prop; } %swap-horizontal-16-svg-prop { - --swap-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %swap-horizontal-24-svg-prop { - --swap-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %swap-horizontal-svg-prop { - --swap-horizontal-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %swap-horizontal-16-svg-prop; } %swap-vertical-16-svg-prop { - --swap-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %swap-vertical-24-svg-prop { - --swap-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %swap-vertical-svg-prop { - --swap-vertical-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %swap-vertical-16-svg-prop; } %switcher-16-svg-prop { - --switcher-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --switcher-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %switcher-24-svg-prop { - --switcher-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --switcher-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sync-16-svg-prop { - --sync-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sync-24-svg-prop { - --sync-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sync-alert-16-svg-prop { - --sync-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sync-alert-24-svg-prop { - --sync-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sync-reverse-16-svg-prop { - --sync-reverse-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-reverse-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %sync-reverse-24-svg-prop { - --sync-reverse-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-reverse-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tablet-16-svg-prop { - --tablet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tablet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tablet-24-svg-prop { - --tablet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tablet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tag-16-svg-prop { - --tag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tag-24-svg-prop { - --tag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tag-svg-prop { - --tag-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %tag-16-svg-prop; } %target-16-svg-prop { - --target-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --target-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %target-24-svg-prop { - --target-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --target-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %terminal-16-svg-prop { - --terminal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %terminal-24-svg-prop { - --terminal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %terminal-screen-16-svg-prop { - --terminal-screen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-screen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %terminal-screen-24-svg-prop { - --terminal-screen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-screen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%terraform-16-svg-prop { + --terraform-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%terraform-24-svg-prop { + --terraform-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%terraform-color-16-svg-prop { + --terraform-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%terraform-color-24-svg-prop { + --terraform-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %thumbs-down-16-svg-prop { - --thumbs-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %thumbs-down-24-svg-prop { - --thumbs-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %thumbs-up-16-svg-prop { - --thumbs-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %thumbs-up-24-svg-prop { - --thumbs-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %toggle-left-16-svg-prop { - --toggle-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %toggle-left-24-svg-prop { - --toggle-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %toggle-right-16-svg-prop { - --toggle-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %toggle-right-24-svg-prop { - --toggle-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %token-16-svg-prop { - --token-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --token-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %token-24-svg-prop { - --token-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --token-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tools-16-svg-prop { - --tools-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tools-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tools-24-svg-prop { - --tools-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tools-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %top-16-svg-prop { - --top-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --top-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %top-24-svg-prop { - --top-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --top-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %trash-16-svg-prop { - --trash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %trash-24-svg-prop { - --trash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %trash-svg-prop { - --trash-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %trash-16-svg-prop; } %trend-down-16-svg-prop { - --trend-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %trend-down-24-svg-prop { - --trend-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %trend-up-16-svg-prop { - --trend-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %trend-up-24-svg-prop { - --trend-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %triangle-16-svg-prop { - --triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %triangle-24-svg-prop { - --triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %triangle-fill-16-svg-prop { - --triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %triangle-fill-24-svg-prop { - --triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %truck-16-svg-prop { - --truck-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --truck-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %truck-24-svg-prop { - --truck-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --truck-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tune-svg-prop { - --tune-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %sliders-16-svg-prop; } %tv-16-svg-prop { - --tv-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tv-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %tv-24-svg-prop { - --tv-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tv-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitch-16-svg-prop { + --twitch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitch-24-svg-prop { + --twitch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitch-color-16-svg-prop { + --twitch-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitch-color-24-svg-prop { + --twitch-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitter-16-svg-prop { + --twitter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitter-24-svg-prop { + --twitter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitter-color-16-svg-prop { + --twitter-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%twitter-color-24-svg-prop { + --twitter-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %type-16-svg-prop { - --type-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --type-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %type-24-svg-prop { - --type-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --type-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %unfold-close-16-svg-prop { - --unfold-close-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-close-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %unfold-close-24-svg-prop { - --unfold-close-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-close-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %unfold-less-svg-prop { - --unfold-less-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %unfold-close-16-svg-prop; } %unfold-more-svg-prop { - --unfold-more-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %unfold-open-16-svg-prop; } %unfold-open-16-svg-prop { - --unfold-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %unfold-open-24-svg-prop { - --unfold-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } -%union-svg { - --union-svg: url('data:image/svg+xml;charset=UTF-8,'); +%union-svg-prop { + --union-svg: url('data:image/svg+xml;charset=UTF-8,'); } %unlock-16-svg-prop { - --unlock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unlock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %unlock-24-svg-prop { - --unlock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unlock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %upload-16-svg-prop { - --upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %upload-24-svg-prop { - --upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %upload-svg-prop { - --upload-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %upload-16-svg-prop; } %user-16-svg-prop { - --user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-24-svg-prop { - --user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-add-svg-prop { - --user-add-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %user-plus-16-svg-prop; } %user-check-16-svg-prop { - --user-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-check-24-svg-prop { - --user-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-circle-16-svg-prop { - --user-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-circle-24-svg-prop { - --user-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-circle-fill-16-svg-prop { - --user-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-circle-fill-24-svg-prop { - --user-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-minus-16-svg-prop { - --user-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-minus-24-svg-prop { - --user-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-organization-svg-prop { - --user-organization-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %org-16-svg-prop; } %user-plain-svg-prop { - --user-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %user-16-svg-prop; } %user-plus-16-svg-prop { - --user-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-plus-24-svg-prop { - --user-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-square-fill-svg-prop { - --user-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %user-circle-fill-16-svg-prop; } %user-square-outline-svg-prop { - --user-square-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %user-circle-16-svg-prop; } %user-team-svg-prop { - --user-team-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %users-16-svg-prop; } %user-x-16-svg-prop { - --user-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %user-x-24-svg-prop { - --user-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %users-16-svg-prop { - --users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %users-24-svg-prop { - --users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%vagrant-16-svg-prop { + --vagrant-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%vagrant-24-svg-prop { + --vagrant-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%vagrant-color-16-svg-prop { + --vagrant-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%vagrant-color-24-svg-prop { + --vagrant-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %vault-16-svg-prop { - --vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %vault-24-svg-prop { - --vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%vault-color-16-svg-prop { + --vault-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%vault-color-24-svg-prop { + --vault-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %verified-16-svg-prop { - --verified-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --verified-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %verified-24-svg-prop { - --verified-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --verified-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %video-16-svg-prop { - --video-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %video-24-svg-prop { - --video-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %video-off-16-svg-prop { - --video-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %video-off-24-svg-prop { - --video-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %visibility-hide-svg-prop { - --visibility-hide-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %eye-off-16-svg-prop; } %visibility-show-svg-prop { - --visibility-show-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %eye-16-svg-prop; } %vmware-16-svg-prop { - --vmware-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %vmware-24-svg-prop { - --vmware-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %vmware-color-16-svg-prop { - --vmware-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %vmware-color-24-svg-prop { - --vmware-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-16-svg-prop { - --volume-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-2-16-svg-prop { - --volume-2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-2-24-svg-prop { - --volume-2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-24-svg-prop { - --volume-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-down-16-svg-prop { - --volume-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-down-24-svg-prop { - --volume-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-x-16-svg-prop { - --volume-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %volume-x-24-svg-prop { - --volume-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wall-16-svg-prop { - --wall-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wall-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wall-24-svg-prop { - --wall-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wall-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %watch-16-svg-prop { - --watch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --watch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %watch-24-svg-prop { - --watch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --watch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%waypoint-16-svg-prop { + --waypoint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%waypoint-24-svg-prop { + --waypoint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%waypoint-color-16-svg-prop { + --waypoint-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%waypoint-color-24-svg-prop { + --waypoint-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %webhook-16-svg-prop { - --webhook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --webhook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %webhook-24-svg-prop { - --webhook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --webhook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %webhook-svg-prop { - --webhook-svg: url('data:image/svg+xml;charset=UTF-8,'); + @extend %webhook-16-svg-prop; } %wifi-16-svg-prop { - --wifi-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wifi-24-svg-prop { - --wifi-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wifi-off-16-svg-prop { - --wifi-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wifi-off-24-svg-prop { - --wifi-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wrench-16-svg-prop { - --wrench-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wrench-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %wrench-24-svg-prop { - --wrench-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wrench-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-16-svg-prop { - --x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-24-svg-prop { - --x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-circle-16-svg-prop { - --x-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-circle-24-svg-prop { - --x-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-circle-fill-16-svg-prop { - --x-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-circle-fill-24-svg-prop { - --x-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-diamond-16-svg-prop { - --x-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-diamond-24-svg-prop { - --x-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-diamond-fill-16-svg-prop { - --x-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-diamond-fill-24-svg-prop { - --x-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-hexagon-16-svg-prop { - --x-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-hexagon-24-svg-prop { - --x-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-hexagon-fill-16-svg-prop { - --x-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-hexagon-fill-24-svg-prop { - --x-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-square-16-svg-prop { - --x-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-square-24-svg-prop { - --x-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-square-fill-16-svg-prop { - --x-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %x-square-fill-24-svg-prop { - --x-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%youtube-16-svg-prop { + --youtube-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%youtube-24-svg-prop { + --youtube-24-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%youtube-color-16-svg-prop { + --youtube-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); +} + +%youtube-color-24-svg-prop { + --youtube-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zap-16-svg-prop { - --zap-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zap-24-svg-prop { - --zap-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zap-off-16-svg-prop { - --zap-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zap-off-24-svg-prop { - --zap-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zoom-in-16-svg-prop { - --zoom-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zoom-in-24-svg-prop { - --zoom-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zoom-out-16-svg-prop { - --zoom-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); } %zoom-out-24-svg-prop { - --zoom-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } diff --git a/ui/packages/consul-ui/app/styles/base/icons/debug.scss b/ui/packages/consul-ui/app/styles/base/icons/debug.scss index 8106bc04e..16fe3c648 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/debug.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/debug.scss @@ -1,4 +1,3 @@ - .debug-with-activity-16-mask-before::before, .debug-with-activity-16-icon-before::before, .debug-with-activity-16-mask-after::after, @@ -898,6 +897,130 @@ background-image: var(--align-right-24-svg); } +.debug-with-amazon-eks-16-mask-before::before, +.debug-with-amazon-eks-16-icon-before::before, +.debug-with-amazon-eks-16-mask-after::after, +.debug-with-amazon-eks-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-amazon-eks-16-mask-before::before, +.debug-with-amazon-eks-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--amazon-eks-16-svg); + mask-image: var(--amazon-eks-16-svg); +} +.debug-with-amazon-eks-16-icon-before::before, +.debug-with-amazon-eks-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--amazon-eks-16-svg); +} + +.debug-with-amazon-eks-24-mask-before::before, +.debug-with-amazon-eks-24-icon-before::before, +.debug-with-amazon-eks-24-mask-after::after, +.debug-with-amazon-eks-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-amazon-eks-24-mask-before::before, +.debug-with-amazon-eks-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--amazon-eks-24-svg); + mask-image: var(--amazon-eks-24-svg); +} +.debug-with-amazon-eks-24-icon-before::before, +.debug-with-amazon-eks-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--amazon-eks-24-svg); +} + +.debug-with-amazon-eks-color-16-mask-before::before, +.debug-with-amazon-eks-color-16-icon-before::before, +.debug-with-amazon-eks-color-16-mask-after::after, +.debug-with-amazon-eks-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-amazon-eks-color-16-mask-before::before, +.debug-with-amazon-eks-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--amazon-eks-color-16-svg); + mask-image: var(--amazon-eks-color-16-svg); +} +.debug-with-amazon-eks-color-16-icon-before::before, +.debug-with-amazon-eks-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--amazon-eks-color-16-svg); +} + +.debug-with-amazon-eks-color-24-mask-before::before, +.debug-with-amazon-eks-color-24-icon-before::before, +.debug-with-amazon-eks-color-24-mask-after::after, +.debug-with-amazon-eks-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-amazon-eks-color-24-mask-before::before, +.debug-with-amazon-eks-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--amazon-eks-color-24-svg); + mask-image: var(--amazon-eks-color-24-svg); +} +.debug-with-amazon-eks-color-24-icon-before::before, +.debug-with-amazon-eks-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--amazon-eks-color-24-svg); +} + .debug-with-apple-16-mask-before::before, .debug-with-apple-16-icon-before::before, .debug-with-apple-16-mask-after::after, @@ -2386,6 +2509,130 @@ background-image: var(--aws-color-24-svg); } +.debug-with-aws-ec2-16-mask-before::before, +.debug-with-aws-ec2-16-icon-before::before, +.debug-with-aws-ec2-16-mask-after::after, +.debug-with-aws-ec2-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-aws-ec2-16-mask-before::before, +.debug-with-aws-ec2-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--aws-ec2-16-svg); + mask-image: var(--aws-ec2-16-svg); +} +.debug-with-aws-ec2-16-icon-before::before, +.debug-with-aws-ec2-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--aws-ec2-16-svg); +} + +.debug-with-aws-ec2-24-mask-before::before, +.debug-with-aws-ec2-24-icon-before::before, +.debug-with-aws-ec2-24-mask-after::after, +.debug-with-aws-ec2-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-aws-ec2-24-mask-before::before, +.debug-with-aws-ec2-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--aws-ec2-24-svg); + mask-image: var(--aws-ec2-24-svg); +} +.debug-with-aws-ec2-24-icon-before::before, +.debug-with-aws-ec2-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--aws-ec2-24-svg); +} + +.debug-with-aws-ec2-color-16-mask-before::before, +.debug-with-aws-ec2-color-16-icon-before::before, +.debug-with-aws-ec2-color-16-mask-after::after, +.debug-with-aws-ec2-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-aws-ec2-color-16-mask-before::before, +.debug-with-aws-ec2-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--aws-ec2-color-16-svg); + mask-image: var(--aws-ec2-color-16-svg); +} +.debug-with-aws-ec2-color-16-icon-before::before, +.debug-with-aws-ec2-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--aws-ec2-color-16-svg); +} + +.debug-with-aws-ec2-color-24-mask-before::before, +.debug-with-aws-ec2-color-24-icon-before::before, +.debug-with-aws-ec2-color-24-mask-after::after, +.debug-with-aws-ec2-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-aws-ec2-color-24-mask-before::before, +.debug-with-aws-ec2-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--aws-ec2-color-24-svg); + mask-image: var(--aws-ec2-color-24-svg); +} +.debug-with-aws-ec2-color-24-icon-before::before, +.debug-with-aws-ec2-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--aws-ec2-color-24-svg); +} + .debug-with-azure-16-mask-before::before, .debug-with-azure-16-icon-before::before, .debug-with-azure-16-mask-after::after, @@ -2634,6 +2881,68 @@ background-image: var(--azure-devops-color-24-svg); } +.debug-with-bank-vault-16-mask-before::before, +.debug-with-bank-vault-16-icon-before::before, +.debug-with-bank-vault-16-mask-after::after, +.debug-with-bank-vault-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-bank-vault-16-mask-before::before, +.debug-with-bank-vault-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--bank-vault-16-svg); + mask-image: var(--bank-vault-16-svg); +} +.debug-with-bank-vault-16-icon-before::before, +.debug-with-bank-vault-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--bank-vault-16-svg); +} + +.debug-with-bank-vault-24-mask-before::before, +.debug-with-bank-vault-24-icon-before::before, +.debug-with-bank-vault-24-mask-after::after, +.debug-with-bank-vault-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-bank-vault-24-mask-before::before, +.debug-with-bank-vault-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--bank-vault-24-svg); + mask-image: var(--bank-vault-24-svg); +} +.debug-with-bank-vault-24-icon-before::before, +.debug-with-bank-vault-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--bank-vault-24-svg); +} + .debug-with-bar-chart-16-mask-before::before, .debug-with-bar-chart-16-icon-before::before, .debug-with-bar-chart-16-mask-after::after, @@ -3781,6 +4090,130 @@ background-image: var(--bottom-24-svg); } +.debug-with-boundary-16-mask-before::before, +.debug-with-boundary-16-icon-before::before, +.debug-with-boundary-16-mask-after::after, +.debug-with-boundary-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-boundary-16-mask-before::before, +.debug-with-boundary-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--boundary-16-svg); + mask-image: var(--boundary-16-svg); +} +.debug-with-boundary-16-icon-before::before, +.debug-with-boundary-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--boundary-16-svg); +} + +.debug-with-boundary-24-mask-before::before, +.debug-with-boundary-24-icon-before::before, +.debug-with-boundary-24-mask-after::after, +.debug-with-boundary-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-boundary-24-mask-before::before, +.debug-with-boundary-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--boundary-24-svg); + mask-image: var(--boundary-24-svg); +} +.debug-with-boundary-24-icon-before::before, +.debug-with-boundary-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--boundary-24-svg); +} + +.debug-with-boundary-color-16-mask-before::before, +.debug-with-boundary-color-16-icon-before::before, +.debug-with-boundary-color-16-mask-after::after, +.debug-with-boundary-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-boundary-color-16-mask-before::before, +.debug-with-boundary-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--boundary-color-16-svg); + mask-image: var(--boundary-color-16-svg); +} +.debug-with-boundary-color-16-icon-before::before, +.debug-with-boundary-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--boundary-color-16-svg); +} + +.debug-with-boundary-color-24-mask-before::before, +.debug-with-boundary-color-24-icon-before::before, +.debug-with-boundary-color-24-mask-after::after, +.debug-with-boundary-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-boundary-color-24-mask-before::before, +.debug-with-boundary-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--boundary-color-24-svg); + mask-image: var(--boundary-color-24-svg); +} +.debug-with-boundary-color-24-icon-before::before, +.debug-with-boundary-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--boundary-color-24-svg); +} + .debug-with-box-16-mask-before::before, .debug-with-box-16-icon-before::before, .debug-with-box-16-mask-after::after, @@ -7408,6 +7841,130 @@ background-image: var(--code-svg); } +.debug-with-codepen-16-mask-before::before, +.debug-with-codepen-16-icon-before::before, +.debug-with-codepen-16-mask-after::after, +.debug-with-codepen-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-codepen-16-mask-before::before, +.debug-with-codepen-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--codepen-16-svg); + mask-image: var(--codepen-16-svg); +} +.debug-with-codepen-16-icon-before::before, +.debug-with-codepen-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--codepen-16-svg); +} + +.debug-with-codepen-24-mask-before::before, +.debug-with-codepen-24-icon-before::before, +.debug-with-codepen-24-mask-after::after, +.debug-with-codepen-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-codepen-24-mask-before::before, +.debug-with-codepen-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--codepen-24-svg); + mask-image: var(--codepen-24-svg); +} +.debug-with-codepen-24-icon-before::before, +.debug-with-codepen-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--codepen-24-svg); +} + +.debug-with-codepen-color-16-mask-before::before, +.debug-with-codepen-color-16-icon-before::before, +.debug-with-codepen-color-16-mask-after::after, +.debug-with-codepen-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-codepen-color-16-mask-before::before, +.debug-with-codepen-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--codepen-color-16-svg); + mask-image: var(--codepen-color-16-svg); +} +.debug-with-codepen-color-16-icon-before::before, +.debug-with-codepen-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--codepen-color-16-svg); +} + +.debug-with-codepen-color-24-mask-before::before, +.debug-with-codepen-color-24-icon-before::before, +.debug-with-codepen-color-24-mask-after::after, +.debug-with-codepen-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-codepen-color-24-mask-before::before, +.debug-with-codepen-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--codepen-color-24-svg); + mask-image: var(--codepen-color-24-svg); +} +.debug-with-codepen-color-24-icon-before::before, +.debug-with-codepen-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--codepen-color-24-svg); +} + .debug-with-collections-16-mask-before::before, .debug-with-collections-16-icon-before::before, .debug-with-collections-16-mask-after::after, @@ -7749,6 +8306,130 @@ background-image: var(--console-svg); } +.debug-with-consul-16-mask-before::before, +.debug-with-consul-16-icon-before::before, +.debug-with-consul-16-mask-after::after, +.debug-with-consul-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-consul-16-mask-before::before, +.debug-with-consul-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--consul-16-svg); + mask-image: var(--consul-16-svg); +} +.debug-with-consul-16-icon-before::before, +.debug-with-consul-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--consul-16-svg); +} + +.debug-with-consul-24-mask-before::before, +.debug-with-consul-24-icon-before::before, +.debug-with-consul-24-mask-after::after, +.debug-with-consul-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-consul-24-mask-before::before, +.debug-with-consul-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--consul-24-svg); + mask-image: var(--consul-24-svg); +} +.debug-with-consul-24-icon-before::before, +.debug-with-consul-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--consul-24-svg); +} + +.debug-with-consul-color-16-mask-before::before, +.debug-with-consul-color-16-icon-before::before, +.debug-with-consul-color-16-mask-after::after, +.debug-with-consul-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-consul-color-16-mask-before::before, +.debug-with-consul-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--consul-color-16-svg); + mask-image: var(--consul-color-16-svg); +} +.debug-with-consul-color-16-icon-before::before, +.debug-with-consul-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--consul-color-16-svg); +} + +.debug-with-consul-color-24-mask-before::before, +.debug-with-consul-color-24-icon-before::before, +.debug-with-consul-color-24-mask-after::after, +.debug-with-consul-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-consul-color-24-mask-before::before, +.debug-with-consul-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--consul-color-24-svg); + mask-image: var(--consul-color-24-svg); +} +.debug-with-consul-color-24-icon-before::before, +.debug-with-consul-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--consul-color-24-svg); +} + .debug-with-copy-action-mask-before::before, .debug-with-copy-action-icon-before::before, .debug-with-copy-action-mask-after::after, @@ -10849,6 +11530,130 @@ background-image: var(--f5-color-24-svg); } +.debug-with-facebook-16-mask-before::before, +.debug-with-facebook-16-icon-before::before, +.debug-with-facebook-16-mask-after::after, +.debug-with-facebook-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-facebook-16-mask-before::before, +.debug-with-facebook-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--facebook-16-svg); + mask-image: var(--facebook-16-svg); +} +.debug-with-facebook-16-icon-before::before, +.debug-with-facebook-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--facebook-16-svg); +} + +.debug-with-facebook-24-mask-before::before, +.debug-with-facebook-24-icon-before::before, +.debug-with-facebook-24-mask-after::after, +.debug-with-facebook-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-facebook-24-mask-before::before, +.debug-with-facebook-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--facebook-24-svg); + mask-image: var(--facebook-24-svg); +} +.debug-with-facebook-24-icon-before::before, +.debug-with-facebook-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--facebook-24-svg); +} + +.debug-with-facebook-color-16-mask-before::before, +.debug-with-facebook-color-16-icon-before::before, +.debug-with-facebook-color-16-mask-after::after, +.debug-with-facebook-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-facebook-color-16-mask-before::before, +.debug-with-facebook-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--facebook-color-16-svg); + mask-image: var(--facebook-color-16-svg); +} +.debug-with-facebook-color-16-icon-before::before, +.debug-with-facebook-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--facebook-color-16-svg); +} + +.debug-with-facebook-color-24-mask-before::before, +.debug-with-facebook-color-24-icon-before::before, +.debug-with-facebook-color-24-mask-after::after, +.debug-with-facebook-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-facebook-color-24-mask-before::before, +.debug-with-facebook-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--facebook-color-24-svg); + mask-image: var(--facebook-color-24-svg); +} +.debug-with-facebook-color-24-icon-before::before, +.debug-with-facebook-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--facebook-color-24-svg); +} + .debug-with-fast-forward-16-mask-before::before, .debug-with-fast-forward-16-icon-before::before, .debug-with-fast-forward-16-mask-after::after, @@ -14259,6 +15064,68 @@ background-image: var(--hammer-24-svg); } +.debug-with-handshake-16-mask-before::before, +.debug-with-handshake-16-icon-before::before, +.debug-with-handshake-16-mask-after::after, +.debug-with-handshake-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-handshake-16-mask-before::before, +.debug-with-handshake-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--handshake-16-svg); + mask-image: var(--handshake-16-svg); +} +.debug-with-handshake-16-icon-before::before, +.debug-with-handshake-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--handshake-16-svg); +} + +.debug-with-handshake-24-mask-before::before, +.debug-with-handshake-24-icon-before::before, +.debug-with-handshake-24-mask-after::after, +.debug-with-handshake-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-handshake-24-mask-before::before, +.debug-with-handshake-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--handshake-24-svg); + mask-image: var(--handshake-24-svg); +} +.debug-with-handshake-24-icon-before::before, +.debug-with-handshake-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--handshake-24-svg); +} + .debug-with-hard-drive-16-mask-before::before, .debug-with-hard-drive-16-icon-before::before, .debug-with-hard-drive-16-mask-after::after, @@ -14383,6 +15250,254 @@ background-image: var(--hash-24-svg); } +.debug-with-hashicorp-16-mask-before::before, +.debug-with-hashicorp-16-icon-before::before, +.debug-with-hashicorp-16-mask-after::after, +.debug-with-hashicorp-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hashicorp-16-mask-before::before, +.debug-with-hashicorp-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hashicorp-16-svg); + mask-image: var(--hashicorp-16-svg); +} +.debug-with-hashicorp-16-icon-before::before, +.debug-with-hashicorp-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hashicorp-16-svg); +} + +.debug-with-hashicorp-24-mask-before::before, +.debug-with-hashicorp-24-icon-before::before, +.debug-with-hashicorp-24-mask-after::after, +.debug-with-hashicorp-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hashicorp-24-mask-before::before, +.debug-with-hashicorp-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hashicorp-24-svg); + mask-image: var(--hashicorp-24-svg); +} +.debug-with-hashicorp-24-icon-before::before, +.debug-with-hashicorp-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hashicorp-24-svg); +} + +.debug-with-hashicorp-color-16-mask-before::before, +.debug-with-hashicorp-color-16-icon-before::before, +.debug-with-hashicorp-color-16-mask-after::after, +.debug-with-hashicorp-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hashicorp-color-16-mask-before::before, +.debug-with-hashicorp-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hashicorp-color-16-svg); + mask-image: var(--hashicorp-color-16-svg); +} +.debug-with-hashicorp-color-16-icon-before::before, +.debug-with-hashicorp-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hashicorp-color-16-svg); +} + +.debug-with-hashicorp-color-24-mask-before::before, +.debug-with-hashicorp-color-24-icon-before::before, +.debug-with-hashicorp-color-24-mask-after::after, +.debug-with-hashicorp-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hashicorp-color-24-mask-before::before, +.debug-with-hashicorp-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hashicorp-color-24-svg); + mask-image: var(--hashicorp-color-24-svg); +} +.debug-with-hashicorp-color-24-icon-before::before, +.debug-with-hashicorp-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hashicorp-color-24-svg); +} + +.debug-with-hcp-16-mask-before::before, +.debug-with-hcp-16-icon-before::before, +.debug-with-hcp-16-mask-after::after, +.debug-with-hcp-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hcp-16-mask-before::before, +.debug-with-hcp-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hcp-16-svg); + mask-image: var(--hcp-16-svg); +} +.debug-with-hcp-16-icon-before::before, +.debug-with-hcp-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hcp-16-svg); +} + +.debug-with-hcp-24-mask-before::before, +.debug-with-hcp-24-icon-before::before, +.debug-with-hcp-24-mask-after::after, +.debug-with-hcp-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hcp-24-mask-before::before, +.debug-with-hcp-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hcp-24-svg); + mask-image: var(--hcp-24-svg); +} +.debug-with-hcp-24-icon-before::before, +.debug-with-hcp-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hcp-24-svg); +} + +.debug-with-hcp-color-16-mask-before::before, +.debug-with-hcp-color-16-icon-before::before, +.debug-with-hcp-color-16-mask-after::after, +.debug-with-hcp-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hcp-color-16-mask-before::before, +.debug-with-hcp-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hcp-color-16-svg); + mask-image: var(--hcp-color-16-svg); +} +.debug-with-hcp-color-16-icon-before::before, +.debug-with-hcp-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hcp-color-16-svg); +} + +.debug-with-hcp-color-24-mask-before::before, +.debug-with-hcp-color-24-icon-before::before, +.debug-with-hcp-color-24-mask-after::after, +.debug-with-hcp-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-hcp-color-24-mask-before::before, +.debug-with-hcp-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--hcp-color-24-svg); + mask-image: var(--hcp-color-24-svg); +} +.debug-with-hcp-color-24-icon-before::before, +.debug-with-hcp-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--hcp-color-24-svg); +} + .debug-with-headphones-16-mask-before::before, .debug-with-headphones-16-icon-before::before, .debug-with-headphones-16-mask-after::after, @@ -15716,6 +16831,68 @@ background-image: var(--key-svg); } +.debug-with-keychain-16-mask-before::before, +.debug-with-keychain-16-icon-before::before, +.debug-with-keychain-16-mask-after::after, +.debug-with-keychain-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-keychain-16-mask-before::before, +.debug-with-keychain-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--keychain-16-svg); + mask-image: var(--keychain-16-svg); +} +.debug-with-keychain-16-icon-before::before, +.debug-with-keychain-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--keychain-16-svg); +} + +.debug-with-keychain-24-mask-before::before, +.debug-with-keychain-24-icon-before::before, +.debug-with-keychain-24-mask-after::after, +.debug-with-keychain-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-keychain-24-mask-before::before, +.debug-with-keychain-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--keychain-24-svg); + mask-image: var(--keychain-24-svg); +} +.debug-with-keychain-24-icon-before::before, +.debug-with-keychain-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--keychain-24-svg); +} + .debug-with-kubernetes-16-mask-before::before, .debug-with-kubernetes-16-icon-before::before, .debug-with-kubernetes-16-mask-after::after, @@ -16429,6 +17606,130 @@ background-image: var(--link-svg); } +.debug-with-linkedin-16-mask-before::before, +.debug-with-linkedin-16-icon-before::before, +.debug-with-linkedin-16-mask-after::after, +.debug-with-linkedin-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-linkedin-16-mask-before::before, +.debug-with-linkedin-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--linkedin-16-svg); + mask-image: var(--linkedin-16-svg); +} +.debug-with-linkedin-16-icon-before::before, +.debug-with-linkedin-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--linkedin-16-svg); +} + +.debug-with-linkedin-24-mask-before::before, +.debug-with-linkedin-24-icon-before::before, +.debug-with-linkedin-24-mask-after::after, +.debug-with-linkedin-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-linkedin-24-mask-before::before, +.debug-with-linkedin-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--linkedin-24-svg); + mask-image: var(--linkedin-24-svg); +} +.debug-with-linkedin-24-icon-before::before, +.debug-with-linkedin-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--linkedin-24-svg); +} + +.debug-with-linkedin-color-16-mask-before::before, +.debug-with-linkedin-color-16-icon-before::before, +.debug-with-linkedin-color-16-mask-after::after, +.debug-with-linkedin-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-linkedin-color-16-mask-before::before, +.debug-with-linkedin-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--linkedin-color-16-svg); + mask-image: var(--linkedin-color-16-svg); +} +.debug-with-linkedin-color-16-icon-before::before, +.debug-with-linkedin-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--linkedin-color-16-svg); +} + +.debug-with-linkedin-color-24-mask-before::before, +.debug-with-linkedin-color-24-icon-before::before, +.debug-with-linkedin-color-24-mask-after::after, +.debug-with-linkedin-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-linkedin-color-24-mask-before::before, +.debug-with-linkedin-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--linkedin-color-24-svg); + mask-image: var(--linkedin-color-24-svg); +} +.debug-with-linkedin-color-24-icon-before::before, +.debug-with-linkedin-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--linkedin-color-24-svg); +} + .debug-with-list-16-mask-before::before, .debug-with-list-16-icon-before::before, .debug-with-list-16-mask-after::after, @@ -16491,6 +17792,68 @@ background-image: var(--list-24-svg); } +.debug-with-load-balancer-16-mask-before::before, +.debug-with-load-balancer-16-icon-before::before, +.debug-with-load-balancer-16-mask-after::after, +.debug-with-load-balancer-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-load-balancer-16-mask-before::before, +.debug-with-load-balancer-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--load-balancer-16-svg); + mask-image: var(--load-balancer-16-svg); +} +.debug-with-load-balancer-16-icon-before::before, +.debug-with-load-balancer-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--load-balancer-16-svg); +} + +.debug-with-load-balancer-24-mask-before::before, +.debug-with-load-balancer-24-icon-before::before, +.debug-with-load-balancer-24-mask-after::after, +.debug-with-load-balancer-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-load-balancer-24-mask-before::before, +.debug-with-load-balancer-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--load-balancer-24-svg); + mask-image: var(--load-balancer-24-svg); +} +.debug-with-load-balancer-24-icon-before::before, +.debug-with-load-balancer-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--load-balancer-24-svg); +} + .debug-with-loading-mask-before::before, .debug-with-loading-icon-before::before, .debug-with-loading-mask-after::after, @@ -18165,6 +19528,68 @@ background-image: var(--mail-open-24-svg); } +.debug-with-mainframe-16-mask-before::before, +.debug-with-mainframe-16-icon-before::before, +.debug-with-mainframe-16-mask-after::after, +.debug-with-mainframe-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-mainframe-16-mask-before::before, +.debug-with-mainframe-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--mainframe-16-svg); + mask-image: var(--mainframe-16-svg); +} +.debug-with-mainframe-16-icon-before::before, +.debug-with-mainframe-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--mainframe-16-svg); +} + +.debug-with-mainframe-24-mask-before::before, +.debug-with-mainframe-24-icon-before::before, +.debug-with-mainframe-24-mask-after::after, +.debug-with-mainframe-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-mainframe-24-mask-before::before, +.debug-with-mainframe-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--mainframe-24-svg); + mask-image: var(--mainframe-24-svg); +} +.debug-with-mainframe-24-icon-before::before, +.debug-with-mainframe-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--mainframe-24-svg); +} + .debug-with-map-16-mask-before::before, .debug-with-map-16-icon-before::before, .debug-with-map-16-mask-after::after, @@ -20831,6 +22256,130 @@ background-image: var(--node-24-svg); } +.debug-with-nomad-16-mask-before::before, +.debug-with-nomad-16-icon-before::before, +.debug-with-nomad-16-mask-after::after, +.debug-with-nomad-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-nomad-16-mask-before::before, +.debug-with-nomad-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--nomad-16-svg); + mask-image: var(--nomad-16-svg); +} +.debug-with-nomad-16-icon-before::before, +.debug-with-nomad-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--nomad-16-svg); +} + +.debug-with-nomad-24-mask-before::before, +.debug-with-nomad-24-icon-before::before, +.debug-with-nomad-24-mask-after::after, +.debug-with-nomad-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-nomad-24-mask-before::before, +.debug-with-nomad-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--nomad-24-svg); + mask-image: var(--nomad-24-svg); +} +.debug-with-nomad-24-icon-before::before, +.debug-with-nomad-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--nomad-24-svg); +} + +.debug-with-nomad-color-16-mask-before::before, +.debug-with-nomad-color-16-icon-before::before, +.debug-with-nomad-color-16-mask-after::after, +.debug-with-nomad-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-nomad-color-16-mask-before::before, +.debug-with-nomad-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--nomad-color-16-svg); + mask-image: var(--nomad-color-16-svg); +} +.debug-with-nomad-color-16-icon-before::before, +.debug-with-nomad-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--nomad-color-16-svg); +} + +.debug-with-nomad-color-24-mask-before::before, +.debug-with-nomad-color-24-icon-before::before, +.debug-with-nomad-color-24-mask-after::after, +.debug-with-nomad-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-nomad-color-24-mask-before::before, +.debug-with-nomad-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--nomad-color-24-svg); + mask-image: var(--nomad-color-24-svg); +} +.debug-with-nomad-color-24-icon-before::before, +.debug-with-nomad-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--nomad-color-24-svg); +} + .debug-with-notification-disabled-mask-before::before, .debug-with-notification-disabled-icon-before::before, .debug-with-notification-disabled-mask-after::after, @@ -21389,6 +22938,130 @@ background-image: var(--outline-svg); } +.debug-with-pack-16-mask-before::before, +.debug-with-pack-16-icon-before::before, +.debug-with-pack-16-mask-after::after, +.debug-with-pack-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-pack-16-mask-before::before, +.debug-with-pack-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--pack-16-svg); + mask-image: var(--pack-16-svg); +} +.debug-with-pack-16-icon-before::before, +.debug-with-pack-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--pack-16-svg); +} + +.debug-with-pack-24-mask-before::before, +.debug-with-pack-24-icon-before::before, +.debug-with-pack-24-mask-after::after, +.debug-with-pack-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-pack-24-mask-before::before, +.debug-with-pack-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--pack-24-svg); + mask-image: var(--pack-24-svg); +} +.debug-with-pack-24-icon-before::before, +.debug-with-pack-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--pack-24-svg); +} + +.debug-with-pack-color-16-mask-before::before, +.debug-with-pack-color-16-icon-before::before, +.debug-with-pack-color-16-mask-after::after, +.debug-with-pack-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-pack-color-16-mask-before::before, +.debug-with-pack-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--pack-color-16-svg); + mask-image: var(--pack-color-16-svg); +} +.debug-with-pack-color-16-icon-before::before, +.debug-with-pack-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--pack-color-16-svg); +} + +.debug-with-pack-color-24-mask-before::before, +.debug-with-pack-color-24-icon-before::before, +.debug-with-pack-color-24-mask-after::after, +.debug-with-pack-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-pack-color-24-mask-before::before, +.debug-with-pack-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--pack-color-24-svg); + mask-image: var(--pack-color-24-svg); +} +.debug-with-pack-color-24-icon-before::before, +.debug-with-pack-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--pack-color-24-svg); +} + .debug-with-package-16-mask-before::before, .debug-with-package-16-icon-before::before, .debug-with-package-16-mask-after::after, @@ -21451,6 +23124,130 @@ background-image: var(--package-24-svg); } +.debug-with-packer-16-mask-before::before, +.debug-with-packer-16-icon-before::before, +.debug-with-packer-16-mask-after::after, +.debug-with-packer-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-packer-16-mask-before::before, +.debug-with-packer-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--packer-16-svg); + mask-image: var(--packer-16-svg); +} +.debug-with-packer-16-icon-before::before, +.debug-with-packer-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--packer-16-svg); +} + +.debug-with-packer-24-mask-before::before, +.debug-with-packer-24-icon-before::before, +.debug-with-packer-24-mask-after::after, +.debug-with-packer-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-packer-24-mask-before::before, +.debug-with-packer-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--packer-24-svg); + mask-image: var(--packer-24-svg); +} +.debug-with-packer-24-icon-before::before, +.debug-with-packer-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--packer-24-svg); +} + +.debug-with-packer-color-16-mask-before::before, +.debug-with-packer-color-16-icon-before::before, +.debug-with-packer-color-16-mask-after::after, +.debug-with-packer-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-packer-color-16-mask-before::before, +.debug-with-packer-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--packer-color-16-svg); + mask-image: var(--packer-color-16-svg); +} +.debug-with-packer-color-16-icon-before::before, +.debug-with-packer-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--packer-color-16-svg); +} + +.debug-with-packer-color-24-mask-before::before, +.debug-with-packer-color-24-icon-before::before, +.debug-with-packer-color-24-mask-after::after, +.debug-with-packer-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-packer-color-24-mask-before::before, +.debug-with-packer-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--packer-color-24-svg); + mask-image: var(--packer-color-24-svg); +} +.debug-with-packer-color-24-icon-before::before, +.debug-with-packer-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--packer-color-24-svg); +} + .debug-with-page-outline-mask-before::before, .debug-with-page-outline-icon-before::before, .debug-with-page-outline-mask-after::after, @@ -28116,6 +29913,130 @@ background-image: var(--terminal-screen-24-svg); } +.debug-with-terraform-16-mask-before::before, +.debug-with-terraform-16-icon-before::before, +.debug-with-terraform-16-mask-after::after, +.debug-with-terraform-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-terraform-16-mask-before::before, +.debug-with-terraform-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--terraform-16-svg); + mask-image: var(--terraform-16-svg); +} +.debug-with-terraform-16-icon-before::before, +.debug-with-terraform-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--terraform-16-svg); +} + +.debug-with-terraform-24-mask-before::before, +.debug-with-terraform-24-icon-before::before, +.debug-with-terraform-24-mask-after::after, +.debug-with-terraform-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-terraform-24-mask-before::before, +.debug-with-terraform-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--terraform-24-svg); + mask-image: var(--terraform-24-svg); +} +.debug-with-terraform-24-icon-before::before, +.debug-with-terraform-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--terraform-24-svg); +} + +.debug-with-terraform-color-16-mask-before::before, +.debug-with-terraform-color-16-icon-before::before, +.debug-with-terraform-color-16-mask-after::after, +.debug-with-terraform-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-terraform-color-16-mask-before::before, +.debug-with-terraform-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--terraform-color-16-svg); + mask-image: var(--terraform-color-16-svg); +} +.debug-with-terraform-color-16-icon-before::before, +.debug-with-terraform-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--terraform-color-16-svg); +} + +.debug-with-terraform-color-24-mask-before::before, +.debug-with-terraform-color-24-icon-before::before, +.debug-with-terraform-color-24-mask-after::after, +.debug-with-terraform-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-terraform-color-24-mask-before::before, +.debug-with-terraform-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--terraform-color-24-svg); + mask-image: var(--terraform-color-24-svg); +} +.debug-with-terraform-color-24-icon-before::before, +.debug-with-terraform-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--terraform-color-24-svg); +} + .debug-with-thumbs-down-16-mask-before::before, .debug-with-thumbs-down-16-icon-before::before, .debug-with-thumbs-down-16-mask-after::after, @@ -29046,6 +30967,254 @@ background-image: var(--tv-24-svg); } +.debug-with-twitch-16-mask-before::before, +.debug-with-twitch-16-icon-before::before, +.debug-with-twitch-16-mask-after::after, +.debug-with-twitch-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitch-16-mask-before::before, +.debug-with-twitch-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitch-16-svg); + mask-image: var(--twitch-16-svg); +} +.debug-with-twitch-16-icon-before::before, +.debug-with-twitch-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitch-16-svg); +} + +.debug-with-twitch-24-mask-before::before, +.debug-with-twitch-24-icon-before::before, +.debug-with-twitch-24-mask-after::after, +.debug-with-twitch-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitch-24-mask-before::before, +.debug-with-twitch-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitch-24-svg); + mask-image: var(--twitch-24-svg); +} +.debug-with-twitch-24-icon-before::before, +.debug-with-twitch-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitch-24-svg); +} + +.debug-with-twitch-color-16-mask-before::before, +.debug-with-twitch-color-16-icon-before::before, +.debug-with-twitch-color-16-mask-after::after, +.debug-with-twitch-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitch-color-16-mask-before::before, +.debug-with-twitch-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitch-color-16-svg); + mask-image: var(--twitch-color-16-svg); +} +.debug-with-twitch-color-16-icon-before::before, +.debug-with-twitch-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitch-color-16-svg); +} + +.debug-with-twitch-color-24-mask-before::before, +.debug-with-twitch-color-24-icon-before::before, +.debug-with-twitch-color-24-mask-after::after, +.debug-with-twitch-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitch-color-24-mask-before::before, +.debug-with-twitch-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitch-color-24-svg); + mask-image: var(--twitch-color-24-svg); +} +.debug-with-twitch-color-24-icon-before::before, +.debug-with-twitch-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitch-color-24-svg); +} + +.debug-with-twitter-16-mask-before::before, +.debug-with-twitter-16-icon-before::before, +.debug-with-twitter-16-mask-after::after, +.debug-with-twitter-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitter-16-mask-before::before, +.debug-with-twitter-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitter-16-svg); + mask-image: var(--twitter-16-svg); +} +.debug-with-twitter-16-icon-before::before, +.debug-with-twitter-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitter-16-svg); +} + +.debug-with-twitter-24-mask-before::before, +.debug-with-twitter-24-icon-before::before, +.debug-with-twitter-24-mask-after::after, +.debug-with-twitter-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitter-24-mask-before::before, +.debug-with-twitter-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitter-24-svg); + mask-image: var(--twitter-24-svg); +} +.debug-with-twitter-24-icon-before::before, +.debug-with-twitter-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitter-24-svg); +} + +.debug-with-twitter-color-16-mask-before::before, +.debug-with-twitter-color-16-icon-before::before, +.debug-with-twitter-color-16-mask-after::after, +.debug-with-twitter-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitter-color-16-mask-before::before, +.debug-with-twitter-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitter-color-16-svg); + mask-image: var(--twitter-color-16-svg); +} +.debug-with-twitter-color-16-icon-before::before, +.debug-with-twitter-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitter-color-16-svg); +} + +.debug-with-twitter-color-24-mask-before::before, +.debug-with-twitter-color-24-icon-before::before, +.debug-with-twitter-color-24-mask-after::after, +.debug-with-twitter-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-twitter-color-24-mask-before::before, +.debug-with-twitter-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--twitter-color-24-svg); + mask-image: var(--twitter-color-24-svg); +} +.debug-with-twitter-color-24-icon-before::before, +.debug-with-twitter-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--twitter-color-24-svg); +} + .debug-with-type-16-mask-before::before, .debug-with-type-16-icon-before::before, .debug-with-type-16-mask-after::after, @@ -29294,6 +31463,37 @@ background-image: var(--unfold-open-24-svg); } +.debug-with-union-mask-before::before, +.debug-with-union-icon-before::before, +.debug-with-union-mask-after::after, +.debug-with-union-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-union-mask-before::before, +.debug-with-union-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--union-svg); + mask-image: var(--union-svg); +} +.debug-with-union-icon-before::before, +.debug-with-union-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--union-svg); +} + .debug-with-unlock-16-mask-before::before, .debug-with-unlock-16-icon-before::before, .debug-with-unlock-16-mask-after::after, @@ -30131,6 +32331,130 @@ background-image: var(--users-24-svg); } +.debug-with-vagrant-16-mask-before::before, +.debug-with-vagrant-16-icon-before::before, +.debug-with-vagrant-16-mask-after::after, +.debug-with-vagrant-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-vagrant-16-mask-before::before, +.debug-with-vagrant-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--vagrant-16-svg); + mask-image: var(--vagrant-16-svg); +} +.debug-with-vagrant-16-icon-before::before, +.debug-with-vagrant-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--vagrant-16-svg); +} + +.debug-with-vagrant-24-mask-before::before, +.debug-with-vagrant-24-icon-before::before, +.debug-with-vagrant-24-mask-after::after, +.debug-with-vagrant-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-vagrant-24-mask-before::before, +.debug-with-vagrant-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--vagrant-24-svg); + mask-image: var(--vagrant-24-svg); +} +.debug-with-vagrant-24-icon-before::before, +.debug-with-vagrant-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--vagrant-24-svg); +} + +.debug-with-vagrant-color-16-mask-before::before, +.debug-with-vagrant-color-16-icon-before::before, +.debug-with-vagrant-color-16-mask-after::after, +.debug-with-vagrant-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-vagrant-color-16-mask-before::before, +.debug-with-vagrant-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--vagrant-color-16-svg); + mask-image: var(--vagrant-color-16-svg); +} +.debug-with-vagrant-color-16-icon-before::before, +.debug-with-vagrant-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--vagrant-color-16-svg); +} + +.debug-with-vagrant-color-24-mask-before::before, +.debug-with-vagrant-color-24-icon-before::before, +.debug-with-vagrant-color-24-mask-after::after, +.debug-with-vagrant-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-vagrant-color-24-mask-before::before, +.debug-with-vagrant-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--vagrant-color-24-svg); + mask-image: var(--vagrant-color-24-svg); +} +.debug-with-vagrant-color-24-icon-before::before, +.debug-with-vagrant-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--vagrant-color-24-svg); +} + .debug-with-vault-16-mask-before::before, .debug-with-vault-16-icon-before::before, .debug-with-vault-16-mask-after::after, @@ -30193,6 +32517,68 @@ background-image: var(--vault-24-svg); } +.debug-with-vault-color-16-mask-before::before, +.debug-with-vault-color-16-icon-before::before, +.debug-with-vault-color-16-mask-after::after, +.debug-with-vault-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-vault-color-16-mask-before::before, +.debug-with-vault-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--vault-color-16-svg); + mask-image: var(--vault-color-16-svg); +} +.debug-with-vault-color-16-icon-before::before, +.debug-with-vault-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--vault-color-16-svg); +} + +.debug-with-vault-color-24-mask-before::before, +.debug-with-vault-color-24-icon-before::before, +.debug-with-vault-color-24-mask-after::after, +.debug-with-vault-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-vault-color-24-mask-before::before, +.debug-with-vault-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--vault-color-24-svg); + mask-image: var(--vault-color-24-svg); +} +.debug-with-vault-color-24-icon-before::before, +.debug-with-vault-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--vault-color-24-svg); +} + .debug-with-verified-16-mask-before::before, .debug-with-verified-16-icon-before::before, .debug-with-verified-16-mask-after::after, @@ -30937,6 +33323,130 @@ background-image: var(--watch-24-svg); } +.debug-with-waypoint-16-mask-before::before, +.debug-with-waypoint-16-icon-before::before, +.debug-with-waypoint-16-mask-after::after, +.debug-with-waypoint-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-waypoint-16-mask-before::before, +.debug-with-waypoint-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--waypoint-16-svg); + mask-image: var(--waypoint-16-svg); +} +.debug-with-waypoint-16-icon-before::before, +.debug-with-waypoint-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--waypoint-16-svg); +} + +.debug-with-waypoint-24-mask-before::before, +.debug-with-waypoint-24-icon-before::before, +.debug-with-waypoint-24-mask-after::after, +.debug-with-waypoint-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-waypoint-24-mask-before::before, +.debug-with-waypoint-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--waypoint-24-svg); + mask-image: var(--waypoint-24-svg); +} +.debug-with-waypoint-24-icon-before::before, +.debug-with-waypoint-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--waypoint-24-svg); +} + +.debug-with-waypoint-color-16-mask-before::before, +.debug-with-waypoint-color-16-icon-before::before, +.debug-with-waypoint-color-16-mask-after::after, +.debug-with-waypoint-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-waypoint-color-16-mask-before::before, +.debug-with-waypoint-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--waypoint-color-16-svg); + mask-image: var(--waypoint-color-16-svg); +} +.debug-with-waypoint-color-16-icon-before::before, +.debug-with-waypoint-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--waypoint-color-16-svg); +} + +.debug-with-waypoint-color-24-mask-before::before, +.debug-with-waypoint-color-24-icon-before::before, +.debug-with-waypoint-color-24-mask-after::after, +.debug-with-waypoint-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-waypoint-color-24-mask-before::before, +.debug-with-waypoint-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--waypoint-color-24-svg); + mask-image: var(--waypoint-color-24-svg); +} +.debug-with-waypoint-color-24-icon-before::before, +.debug-with-waypoint-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--waypoint-color-24-svg); +} + .debug-with-webhook-16-mask-before::before, .debug-with-webhook-16-icon-before::before, .debug-with-webhook-16-mask-after::after, @@ -31774,6 +34284,130 @@ background-image: var(--x-square-fill-24-svg); } +.debug-with-youtube-16-mask-before::before, +.debug-with-youtube-16-icon-before::before, +.debug-with-youtube-16-mask-after::after, +.debug-with-youtube-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-youtube-16-mask-before::before, +.debug-with-youtube-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--youtube-16-svg); + mask-image: var(--youtube-16-svg); +} +.debug-with-youtube-16-icon-before::before, +.debug-with-youtube-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--youtube-16-svg); +} + +.debug-with-youtube-24-mask-before::before, +.debug-with-youtube-24-icon-before::before, +.debug-with-youtube-24-mask-after::after, +.debug-with-youtube-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-youtube-24-mask-before::before, +.debug-with-youtube-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--youtube-24-svg); + mask-image: var(--youtube-24-svg); +} +.debug-with-youtube-24-icon-before::before, +.debug-with-youtube-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--youtube-24-svg); +} + +.debug-with-youtube-color-16-mask-before::before, +.debug-with-youtube-color-16-icon-before::before, +.debug-with-youtube-color-16-mask-after::after, +.debug-with-youtube-color-16-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-youtube-color-16-mask-before::before, +.debug-with-youtube-color-16-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--youtube-color-16-svg); + mask-image: var(--youtube-color-16-svg); +} +.debug-with-youtube-color-16-icon-before::before, +.debug-with-youtube-color-16-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--youtube-color-16-svg); +} + +.debug-with-youtube-color-24-mask-before::before, +.debug-with-youtube-color-24-icon-before::before, +.debug-with-youtube-color-24-mask-after::after, +.debug-with-youtube-color-24-icon-after::after { + display: inline-block; + content: ''; + visibility: visible; + background-size: contain; + width: 1.2em; + height: 1.2em; + vertical-align: text-top; +} +.debug-with-youtube-color-24-mask-before::before, +.debug-with-youtube-color-24-mask-after::after { + -webkit-mask-repeat: no-repeat; + -webkit-mask-position: center; + mask-repeat: no-repeat; + mask-position: center; + background-color: currentColor; + + -webkit-mask-image: var(--youtube-color-24-svg); + mask-image: var(--youtube-color-24-svg); +} +.debug-with-youtube-color-24-icon-before::before, +.debug-with-youtube-color-24-icon-after::after { + background-repeat: no-repeat; + background-position: center; + + background-image: var(--youtube-color-24-svg); +} + .debug-with-zap-16-mask-before::before, .debug-with-zap-16-icon-before::before, .debug-with-zap-16-mask-after::after, @@ -32021,2072 +34655,1904 @@ background-image: var(--zoom-out-24-svg); } - :root { +:root { + --activity-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---activity-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --activity-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---activity-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-octagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-octagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-octagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alert-triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alert-triangle-svg: url('data:image/svg+xml;charset=UTF-8,'); + --alibaba-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alibaba-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-center-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alibaba-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-center-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alibaba-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-justify-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---alibaba-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-justify-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-center-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-center-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-justify-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-justify-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --align-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --amazon-eks-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --amazon-eks-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --amazon-eks-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---align-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --amazon-eks-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---apple-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---apple-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---apple-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---apple-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --apple-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---archive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --archive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---archive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --archive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-down-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-left-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-left-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-left-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-left-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-right-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-right-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-right-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-right-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --arrow-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --at-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --at-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---arrow-up-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---at-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---at-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auth0-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---auth0-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auto-apply-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---auth0-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --auto-apply-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---auth0-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --award-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---auth0-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --award-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---auto-apply-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---auto-apply-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---award-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---award-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---aws-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-ec2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---aws-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-ec2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---aws-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-ec2-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---aws-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --aws-ec2-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-devops-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-devops-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-devops-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---azure-devops-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --azure-devops-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bar-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bank-vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bar-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bank-vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bar-chart-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bar-chart-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---battery-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---battery-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bar-chart-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---battery-charging-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---battery-charging-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---beaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-charging-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---beaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --battery-charging-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --beaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --beaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-active-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-active-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-active-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-active-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bell-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-active-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bitbucket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bitbucket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bell-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bitbucket-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bitbucket-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bolt-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bitbucket-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-add-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-add-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-add-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-add-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-add-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-remove-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-remove-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-remove-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bookmark-remove-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bottom-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bookmark-remove-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bottom-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bottom-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---box-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bottom-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---box-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --boundary-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---box-check-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --boundary-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---box-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --boundary-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---briefcase-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --boundary-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---briefcase-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --box-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---broadcast-svg: url('data:image/svg+xml;charset=UTF-8,'); + --box-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bug-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --briefcase-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bug-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --briefcase-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---bug-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bug-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---build-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --bug-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---build-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --build-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---calendar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --build-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---calendar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --calendar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---calendar-svg: url('data:image/svg+xml;charset=UTF-8,'); + --calendar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---camera-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---camera-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---camera-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---camera-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --camera-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cancel-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --caret-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cancel-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --caret-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cancel-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cast-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cancel-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cast-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cancel-square-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --certificate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---caret-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --certificate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---caret-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---caret-down-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---caret-up-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cast-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cast-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---certificate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --change-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---certificate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---change-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---change-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---change-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---change-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --check-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevron-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---check-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-down-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-left-svg: url('data:image/svg+xml;charset=UTF-8,'); + --chevrons-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-right-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevron-up-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --circle-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-checked-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-checked-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-copy-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---chevrons-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clipboard-copy-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --clock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-cross-svg: url('data:image/svg+xml;charset=UTF-8,'); ---circle-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clipboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clipboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lightning-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clipboard-checked-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lightning-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clipboard-checked-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clipboard-copy-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clipboard-copy-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clock-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---clock-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cloud-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --code-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --code-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --codepen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-cross-svg: url('data:image/svg+xml;charset=UTF-8,'); + --codepen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --codepen-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --codepen-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-lightning-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --collections-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-lightning-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --collections-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --command-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --command-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --compass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --compass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cloud-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --connection-gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---code-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --consul-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---code-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --consul-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---code-svg: url('data:image/svg+xml;charset=UTF-8,'); + --consul-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---collections-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --consul-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---collections-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---command-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---command-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---compass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---compass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---connection-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---connection-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---connection-gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-left-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---connection-gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---console-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---copy-action-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---copy-success-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-right-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-down-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-down-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-down-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-down-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --corner-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-left-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cpu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-left-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --cpu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-left-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --credit-card-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-left-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --credit-card-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-right-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crop-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-right-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crop-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-right-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crosshair-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-right-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --crosshair-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-up-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dashboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-up-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dashboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-up-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --database-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---corner-up-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --database-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cpu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delay-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---cpu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delay-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---credit-card-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delete-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---credit-card-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --delete-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---crop-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --deny-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---crop-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---crosshair-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---crosshair-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dashboard-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dashboard-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --disc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---database-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --disc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---database-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---database-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---delay-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---delay-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --discussion-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---delay-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---delete-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---delete-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---deny-alt-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docker-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---deny-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---deny-default-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --docs-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dollar-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---disc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dollar-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---disc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---discussion-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---discussion-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---discussion-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --dot-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---discussion-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --droplet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docker-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --droplet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docker-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --duplicate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --duplicate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --edit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --edit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --entry-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --entry-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --event-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---docs-svg: url('data:image/svg+xml;charset=UTF-8,'); + --event-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dollar-sign-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --exit-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dollar-sign-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --exit-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dot-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --external-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dot-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --external-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dot-half-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---dot-half-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---download-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---download-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --eye-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---download-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---droplet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---droplet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---duplicate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --f5-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---duplicate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --facebook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---edit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --facebook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---edit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --facebook-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---edit-svg: url('data:image/svg+xml;charset=UTF-8,'); + --facebook-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---entry-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fast-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---entry-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fast-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---envelope-sealed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---envelope-sealed-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---envelope-unsealed--outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---envelope-unsealed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---event-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---event-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---exit-point-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-diff-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---exit-point-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-diff-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---exit-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---expand-less-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---expand-more-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---external-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---external-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-source-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---eye-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-source-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---eye-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-text-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---eye-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-text-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---eye-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---f5-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --file-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---f5-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --files-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---f5-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --files-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---f5-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --film-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---fast-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --film-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---fast-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-change-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-change-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --filter-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fingerprint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-diff-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --fingerprint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-diff-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --flag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --flag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-source-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-source-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-text-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-minus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-text-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---file-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---files-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-plus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---files-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---film-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---film-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --folder-users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --frown-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --frown-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---filter-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---fingerprint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---fingerprint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---flag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gift-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---flag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gift-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---flag-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-branch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-branch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-commit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-commit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-merge-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-merge-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-pull-request-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-pull-request-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-minus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-repo-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-minus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --git-repo-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-plus-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --github-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-plus-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --gitlab-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---folder-users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---frown-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---frown-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-private-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gateway-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --globe-private-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gateway-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gateway-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --google-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gift-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gift-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --grid-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gift-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gift-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-branch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-branch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --guide-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-branch-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hammer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-commit-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hammer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-commit-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --handshake-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-commit-svg: url('data:image/svg+xml;charset=UTF-8,'); + --handshake-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-merge-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hard-drive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-merge-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hard-drive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-pull-request-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-pull-request-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-pull-request-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hashicorp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-repo-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hashicorp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-repo-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hashicorp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---git-repository-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hashicorp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---github-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hcp-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---github-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hcp-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---github-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hcp-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---github-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hcp-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gitlab-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --headphones-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gitlab-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --headphones-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gitlab-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---gitlab-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---globe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---globe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---globe-private-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---globe-private-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --heart-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---google-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --help-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---google-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --help-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---google-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---google-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---grid-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---grid-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---grid-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --history-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---grid-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --history-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---guide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --home-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---guide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --home-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---guide-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hourglass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---guide-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --hourglass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---guide-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-service-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hammer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-service-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hammer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hard-drive-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --identity-user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hard-drive-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --image-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --image-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --inbox-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---headphones-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --inbox-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---headphones-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --info-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---health-svg: url('data:image/svg+xml;charset=UTF-8,'); + --info-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---heart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --jump-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---heart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --jump-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---heart-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---heart-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---heart-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-values-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---heart-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --key-values-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---help-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --keychain-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---help-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --keychain-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---help-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---help-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --kubernetes-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --labyrinth-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --labyrinth-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---history-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layers-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---history-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layers-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---history-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layout-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---home-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --layout-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---home-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hourglass-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---hourglass-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---identity-service-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --learn-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---identity-service-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---identity-user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---identity-user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---image-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --line-chart-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---image-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---inbox-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---inbox-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --linkedin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---info-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --linkedin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---info-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --linkedin-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---info-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --linkedin-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---info-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --list-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---jump-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --list-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---jump-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --load-balancer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---key-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --load-balancer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---key-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --loading-svg: url('data:image/svg+xml;charset=UTF-8,'); ---key-values-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---key-values-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---key-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---kubernetes-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---kubernetes-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---kubernetes-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --lock-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---kubernetes-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-consul-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---labyrinth-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-ember-circle-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---labyrinth-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-glimmer-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---layers-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-hashicorp-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---layers-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-jwt-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---layers-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-nomad-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---layout-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-oidc-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---layout-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-terraform-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---learn-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --logo-vault-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---learn-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---learn-link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---learn-link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---learn-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mail-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---line-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mainframe-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---line-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mainframe-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---line-chart-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---line-chart-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---link-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---link-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --map-pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---link-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---list-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---list-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---loading-svg: url('data:image/svg+xml;charset=UTF-8,'); + --maximize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --meh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --meh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-closed-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --menu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-closed-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --menu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-closed-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mesh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mesh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---lock-open-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-alicloud-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-alicloud-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-auth0-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --message-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-aws-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-aws-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-azure-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-azure-dev-ops-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mic-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-azure-dev-ops-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-azure-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-bitbucket-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-bitbucket-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --microsoft-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-consul-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --migrate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-ember-circle-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --migrate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-gcp-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-gcp-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-github-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-github-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minimize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-gitlab-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-gitlab-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-glimmer-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-google-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-google-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-hashicorp-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-jwt-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-kubernetes-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-kubernetes-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-microsoft-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-nomad-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-oidc-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --minus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-okta-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --module-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-oracle-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --module-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-oracle-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --monitor-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-slack-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --monitor-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-slack-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --moon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-terraform-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --moon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-vault-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-vmware-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---logo-vmware-monochrome-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mail-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --more-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mail-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mouse-pointer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mail-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --mouse-pointer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mail-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --move-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---map-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --move-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---map-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --music-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---map-pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --music-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---map-pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---maximize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---maximize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---maximize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --navigation-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---maximize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---meh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---meh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---menu-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --network-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---menu-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --newspaper-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---menu-svg: url('data:image/svg+xml;charset=UTF-8,'); + --newspaper-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mesh-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --node-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mesh-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --node-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mesh-svg: url('data:image/svg+xml;charset=UTF-8,'); + --nomad-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --nomad-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --nomad-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --nomad-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---message-svg: url('data:image/svg+xml;charset=UTF-8,'); + --okta-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mic-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mic-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mic-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mic-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --oracle-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---microsoft-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --org-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---microsoft-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --org-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---microsoft-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --outline-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---microsoft-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --outline-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---migrate-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---migrate-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minimize-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minimize-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minimize-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --package-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minimize-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --package-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --packer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --packer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --packer-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --packer-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --paperclip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --paperclip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + --path-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --path-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pause-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pen-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pen-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pencil-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---minus-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pencil-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---module-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---module-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---module-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-call-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---monitor-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-call-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---monitor-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---moon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --phone-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---moon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pie-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---more-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pie-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---more-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---more-horizontal-svg: url('data:image/svg+xml;charset=UTF-8,'); + --pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---more-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---more-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---more-vertical-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mouse-pointer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --play-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---mouse-pointer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---move-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---move-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---music-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---music-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---navigation-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---navigation-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --port-svg: url('data:image/svg+xml;charset=UTF-8,'); ---navigation-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --power-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---navigation-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --power-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---network-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --printer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---network-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --printer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---network-alt-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --protocol-svg: url('data:image/svg+xml;charset=UTF-8,'); ---network-alt-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --provider-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---newspaper-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --provider-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---newspaper-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --queue-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---node-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --queue-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---node-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --radio-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---notification-disabled-svg: url('data:image/svg+xml;charset=UTF-8,'); + --radio-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---notification-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --random-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---notification-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --random-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---octagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --redirect-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---octagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --redirect-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---okta-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --reload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---okta-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --reload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---okta-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --repeat-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---okta-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --repeat-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---oracle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-direct-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---oracle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-direct-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---oracle-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-perf-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---oracle-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --replication-perf-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---org-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rewind-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---org-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rewind-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---outline-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rocket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---outline-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rocket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-ccw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---package-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-ccw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---package-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-cw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---page-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rotate-cw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---paperclip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rss-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---paperclip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --rss-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---partner-svg: url('data:image/svg+xml;charset=UTF-8,'); + --run-svg: url('data:image/svg+xml;charset=UTF-8,'); ---path-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --save-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---path-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --save-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---path-svg: url('data:image/svg+xml;charset=UTF-8,'); + --scissors-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pause-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --scissors-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pause-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --search-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pause-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --search-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pause-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --search-color-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pen-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --send-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pen-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --send-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pencil-tool-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pencil-tool-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---phone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-cluster-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---phone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --server-cluster-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---phone-call-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --serverless-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---phone-call-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --serverless-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---phone-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --settings-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---phone-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --settings-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pie-chart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --share-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pie-chart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --share-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pin-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---pin-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---play-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shield-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-bag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-bag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-cart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-circle-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shopping-cart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-circle-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shuffle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); + --shuffle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---plus-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-hide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---port-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-hide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---power-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-show-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---power-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sidebar-show-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---printer-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---printer-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---protocol-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---provider-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sign-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---provider-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---provider-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---public-default-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-back-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---public-locked-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-back-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---queue-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---queue-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --skip-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---queue-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---radio-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---radio-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---radio-button-checked-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---radio-button-unchecked-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---random-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---random-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---random-svg: url('data:image/svg+xml;charset=UTF-8,'); + --slash-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---redirect-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sliders-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---redirect-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sliders-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---redirect-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smartphone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---refresh-alert-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smartphone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---refresh-default-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smile-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---reload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --smile-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---reload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --socket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---remix-svg: url('data:image/svg+xml;charset=UTF-8,'); + --socket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---repeat-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --socket-svg: url('data:image/svg+xml;charset=UTF-8,'); ---repeat-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-asc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---replication-direct-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-asc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---replication-direct-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-desc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---replication-perf-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sort-desc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---replication-perf-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --speaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rewind-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --speaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rewind-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---ribbon-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rocket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rocket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rotate-ccw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rotate-ccw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rotate-cw-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rotate-cw-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rss-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---rss-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---run-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---save-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --star-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---save-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --stop-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---scissors-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --stop-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---scissors-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sun-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---search-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sun-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---search-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --support-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---search-color-svg: url('data:image/svg+xml;charset=UTF-8,'); + --support-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---search-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---send-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---send-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---server-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --swap-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---server-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --switcher-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---server-cluster-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --switcher-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---server-cluster-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---serverless-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---serverless-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---settings-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---settings-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-reverse-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---settings-svg: url('data:image/svg+xml;charset=UTF-8,'); + --sync-reverse-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---share-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tablet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---share-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tablet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --target-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --target-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-screen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terminal-screen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terraform-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shield-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terraform-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shopping-bag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terraform-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shopping-bag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --terraform-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shopping-cart-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shopping-cart-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shuffle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---shuffle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --thumbs-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sidebar-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sidebar-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sidebar-hide-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sidebar-hide-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --toggle-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sidebar-show-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --token-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sidebar-show-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --token-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sign-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tools-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sign-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tools-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sign-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --top-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sign-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --top-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---skip-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---skip-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---skip-back-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---skip-back-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---skip-forward-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---skip-forward-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --trend-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slack-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slack-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slack-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slack-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --truck-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --truck-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slash-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tv-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---slash-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --tv-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sliders-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sliders-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---smartphone-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitch-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---smartphone-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitch-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---smile-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitter-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---smile-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitter-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---socket-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitter-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---socket-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --twitter-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---socket-svg: url('data:image/svg+xml;charset=UTF-8,'); + --type-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sort-asc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --type-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sort-asc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-close-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sort-desc-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-close-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sort-desc-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sort-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unfold-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---source-file-svg: url('data:image/svg+xml;charset=UTF-8,'); + --union-svg: url('data:image/svg+xml;charset=UTF-8,'); ---speaker-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unlock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---speaker-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --unlock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---star-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---stop-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---stop-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --user-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sub-left-svg: url('data:image/svg+xml;charset=UTF-8,'); + --users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sub-right-svg: url('data:image/svg+xml;charset=UTF-8,'); + --users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sun-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vagrant-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sun-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vagrant-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---support-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vagrant-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---support-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vagrant-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---support-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---swap-horizontal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---swap-horizontal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---swap-horizontal-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vault-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---swap-vertical-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --verified-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---swap-vertical-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --verified-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---swap-vertical-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---switcher-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---switcher-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sync-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --video-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sync-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sync-alert-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sync-alert-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sync-reverse-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --vmware-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---sync-reverse-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tablet-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tablet-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tag-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tag-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tag-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---target-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---target-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --volume-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---terminal-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wall-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---terminal-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wall-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---terminal-screen-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --watch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---terminal-screen-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --watch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---thumbs-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --waypoint-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---thumbs-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --waypoint-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---thumbs-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --waypoint-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---thumbs-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --waypoint-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---toggle-left-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --webhook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---toggle-left-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --webhook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---toggle-right-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---toggle-right-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---token-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---token-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wifi-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tools-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wrench-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tools-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --wrench-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---top-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---top-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trash-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trash-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trash-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trend-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trend-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trend-up-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---trend-up-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---triangle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---triangle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---triangle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---triangle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---truck-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---truck-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tune-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tv-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---tv-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --x-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---type-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --youtube-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---type-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --youtube-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unfold-close-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --youtube-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unfold-close-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --youtube-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unfold-less-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unfold-more-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unfold-open-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unfold-open-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zap-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unlock-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); ---unlock-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); ---upload-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---upload-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---upload-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-add-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-check-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-check-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-minus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-minus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-organization-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-plain-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-plus-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-plus-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-square-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-square-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-team-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---user-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---users-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---users-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---vault-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---vault-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---verified-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---verified-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---video-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---video-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---video-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---video-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---visibility-hide-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---visibility-show-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---vmware-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---vmware-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---vmware-color-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---vmware-color-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-2-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-2-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-down-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-down-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---volume-x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wall-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wall-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---watch-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---watch-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---webhook-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---webhook-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---webhook-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wifi-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wifi-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wifi-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wifi-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wrench-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---wrench-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-circle-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-circle-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-circle-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-circle-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-diamond-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-diamond-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-diamond-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-diamond-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-hexagon-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-hexagon-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-hexagon-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-hexagon-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-square-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-square-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-square-fill-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---x-square-fill-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zap-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zap-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zap-off-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zap-off-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zoom-in-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zoom-in-24-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zoom-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); - ---zoom-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-out-16-svg: url('data:image/svg+xml;charset=UTF-8,'); + --zoom-out-24-svg: url('data:image/svg+xml;charset=UTF-8,'); } diff --git a/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss b/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss index 9669a0450..6bbfd486b 100644 --- a/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss +++ b/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss @@ -59,23 +59,23 @@ } %with-alert-circle-fill-icon { - @extend %with-icon, %alert-circle-fill-svg-prop; - background-image: var(--alert-circle-fill-svg); + @extend %with-icon, %alert-circle-16-svg-prop; + background-image: var(--alert-circle-16-svg); } %with-alert-circle-fill-mask { - @extend %with-mask, %alert-circle-fill-svg-prop; - -webkit-mask-image: var(--alert-circle-fill-svg); - mask-image: var(--alert-circle-fill-svg); + @extend %with-mask, %alert-circle-16-svg-prop; + -webkit-mask-image: var(--alert-circle-16-svg); + mask-image: var(--alert-circle-16-svg); } %with-alert-circle-outline-icon { - @extend %with-icon, %alert-circle-outline-svg-prop; - background-image: var(--alert-circle-outline-svg); + @extend %with-icon, %alert-circle-16-svg-prop; + background-image: var(--alert-circle-16-svg); } %with-alert-circle-outline-mask { - @extend %with-mask, %alert-circle-outline-svg-prop; - -webkit-mask-image: var(--alert-circle-outline-svg); - mask-image: var(--alert-circle-outline-svg); + @extend %with-mask, %alert-circle-16-svg-prop; + -webkit-mask-image: var(--alert-circle-16-svg); + mask-image: var(--alert-circle-16-svg); } %with-alert-octagon-16-icon { @@ -159,13 +159,13 @@ } %with-alert-triangle-icon { - @extend %with-icon, %alert-triangle-svg-prop; - background-image: var(--alert-triangle-svg); + @extend %with-icon, %alert-triangle-16-svg-prop; + background-image: var(--alert-triangle-16-svg); } %with-alert-triangle-mask { - @extend %with-mask, %alert-triangle-svg-prop; - -webkit-mask-image: var(--alert-triangle-svg); - mask-image: var(--alert-triangle-svg); + @extend %with-mask, %alert-triangle-16-svg-prop; + -webkit-mask-image: var(--alert-triangle-16-svg); + mask-image: var(--alert-triangle-16-svg); } %with-alibaba-16-icon { @@ -288,6 +288,46 @@ mask-image: var(--align-right-24-svg); } +%with-amazon-eks-16-icon { + @extend %with-icon, %amazon-eks-16-svg-prop; + background-image: var(--amazon-eks-16-svg); +} +%with-amazon-eks-16-mask { + @extend %with-mask, %amazon-eks-16-svg-prop; + -webkit-mask-image: var(--amazon-eks-16-svg); + mask-image: var(--amazon-eks-16-svg); +} + +%with-amazon-eks-24-icon { + @extend %with-icon, %amazon-eks-24-svg-prop; + background-image: var(--amazon-eks-24-svg); +} +%with-amazon-eks-24-mask { + @extend %with-mask, %amazon-eks-24-svg-prop; + -webkit-mask-image: var(--amazon-eks-24-svg); + mask-image: var(--amazon-eks-24-svg); +} + +%with-amazon-eks-color-16-icon { + @extend %with-icon, %amazon-eks-color-16-svg-prop; + background-image: var(--amazon-eks-color-16-svg); +} +%with-amazon-eks-color-16-mask { + @extend %with-mask, %amazon-eks-color-16-svg-prop; + -webkit-mask-image: var(--amazon-eks-color-16-svg); + mask-image: var(--amazon-eks-color-16-svg); +} + +%with-amazon-eks-color-24-icon { + @extend %with-icon, %amazon-eks-color-24-svg-prop; + background-image: var(--amazon-eks-color-24-svg); +} +%with-amazon-eks-color-24-mask { + @extend %with-mask, %amazon-eks-color-24-svg-prop; + -webkit-mask-image: var(--amazon-eks-color-24-svg); + mask-image: var(--amazon-eks-color-24-svg); +} + %with-apple-16-icon { @extend %with-icon, %apple-16-svg-prop; background-image: var(--apple-16-svg); @@ -429,13 +469,13 @@ } %with-arrow-down-icon { - @extend %with-icon, %arrow-down-svg-prop; - background-image: var(--arrow-down-svg); + @extend %with-icon, %arrow-down-16-svg-prop; + background-image: var(--arrow-down-16-svg); } %with-arrow-down-mask { - @extend %with-mask, %arrow-down-svg-prop; - -webkit-mask-image: var(--arrow-down-svg); - mask-image: var(--arrow-down-svg); + @extend %with-mask, %arrow-down-16-svg-prop; + -webkit-mask-image: var(--arrow-down-16-svg); + mask-image: var(--arrow-down-16-svg); } %with-arrow-left-16-icon { @@ -479,13 +519,13 @@ } %with-arrow-left-icon { - @extend %with-icon, %arrow-left-svg-prop; - background-image: var(--arrow-left-svg); + @extend %with-icon, %arrow-left-16-svg-prop; + background-image: var(--arrow-left-16-svg); } %with-arrow-left-mask { - @extend %with-mask, %arrow-left-svg-prop; - -webkit-mask-image: var(--arrow-left-svg); - mask-image: var(--arrow-left-svg); + @extend %with-mask, %arrow-left-16-svg-prop; + -webkit-mask-image: var(--arrow-left-16-svg); + mask-image: var(--arrow-left-16-svg); } %with-arrow-right-16-icon { @@ -529,13 +569,13 @@ } %with-arrow-right-icon { - @extend %with-icon, %arrow-right-svg-prop; - background-image: var(--arrow-right-svg); + @extend %with-icon, %arrow-right-16-svg-prop; + background-image: var(--arrow-right-16-svg); } %with-arrow-right-mask { - @extend %with-mask, %arrow-right-svg-prop; - -webkit-mask-image: var(--arrow-right-svg); - mask-image: var(--arrow-right-svg); + @extend %with-mask, %arrow-right-16-svg-prop; + -webkit-mask-image: var(--arrow-right-16-svg); + mask-image: var(--arrow-right-16-svg); } %with-arrow-up-16-icon { @@ -619,13 +659,13 @@ } %with-arrow-up-icon { - @extend %with-icon, %arrow-up-svg-prop; - background-image: var(--arrow-up-svg); + @extend %with-icon, %arrow-up-16-svg-prop; + background-image: var(--arrow-up-16-svg); } %with-arrow-up-mask { - @extend %with-mask, %arrow-up-svg-prop; - -webkit-mask-image: var(--arrow-up-svg); - mask-image: var(--arrow-up-svg); + @extend %with-mask, %arrow-up-16-svg-prop; + -webkit-mask-image: var(--arrow-up-16-svg); + mask-image: var(--arrow-up-16-svg); } %with-at-sign-16-icon { @@ -768,6 +808,46 @@ mask-image: var(--aws-color-24-svg); } +%with-aws-ec2-16-icon { + @extend %with-icon, %aws-ec2-16-svg-prop; + background-image: var(--aws-ec2-16-svg); +} +%with-aws-ec2-16-mask { + @extend %with-mask, %aws-ec2-16-svg-prop; + -webkit-mask-image: var(--aws-ec2-16-svg); + mask-image: var(--aws-ec2-16-svg); +} + +%with-aws-ec2-24-icon { + @extend %with-icon, %aws-ec2-24-svg-prop; + background-image: var(--aws-ec2-24-svg); +} +%with-aws-ec2-24-mask { + @extend %with-mask, %aws-ec2-24-svg-prop; + -webkit-mask-image: var(--aws-ec2-24-svg); + mask-image: var(--aws-ec2-24-svg); +} + +%with-aws-ec2-color-16-icon { + @extend %with-icon, %aws-ec2-color-16-svg-prop; + background-image: var(--aws-ec2-color-16-svg); +} +%with-aws-ec2-color-16-mask { + @extend %with-mask, %aws-ec2-color-16-svg-prop; + -webkit-mask-image: var(--aws-ec2-color-16-svg); + mask-image: var(--aws-ec2-color-16-svg); +} + +%with-aws-ec2-color-24-icon { + @extend %with-icon, %aws-ec2-color-24-svg-prop; + background-image: var(--aws-ec2-color-24-svg); +} +%with-aws-ec2-color-24-mask { + @extend %with-mask, %aws-ec2-color-24-svg-prop; + -webkit-mask-image: var(--aws-ec2-color-24-svg); + mask-image: var(--aws-ec2-color-24-svg); +} + %with-azure-16-icon { @extend %with-icon, %azure-16-svg-prop; background-image: var(--azure-16-svg); @@ -848,6 +928,26 @@ mask-image: var(--azure-devops-color-24-svg); } +%with-bank-vault-16-icon { + @extend %with-icon, %bank-vault-16-svg-prop; + background-image: var(--bank-vault-16-svg); +} +%with-bank-vault-16-mask { + @extend %with-mask, %bank-vault-16-svg-prop; + -webkit-mask-image: var(--bank-vault-16-svg); + mask-image: var(--bank-vault-16-svg); +} + +%with-bank-vault-24-icon { + @extend %with-icon, %bank-vault-24-svg-prop; + background-image: var(--bank-vault-24-svg); +} +%with-bank-vault-24-mask { + @extend %with-mask, %bank-vault-24-svg-prop; + -webkit-mask-image: var(--bank-vault-24-svg); + mask-image: var(--bank-vault-24-svg); +} + %with-bar-chart-16-icon { @extend %with-icon, %bar-chart-16-svg-prop; background-image: var(--bar-chart-16-svg); @@ -1069,13 +1169,13 @@ } %with-bolt-icon { - @extend %with-icon, %bolt-svg-prop; - background-image: var(--bolt-svg); + @extend %with-icon, %zap-16-svg-prop; + background-image: var(--zap-16-svg); } %with-bolt-mask { - @extend %with-mask, %bolt-svg-prop; - -webkit-mask-image: var(--bolt-svg); - mask-image: var(--bolt-svg); + @extend %with-mask, %zap-16-svg-prop; + -webkit-mask-image: var(--zap-16-svg); + mask-image: var(--zap-16-svg); } %with-bookmark-16-icon { @@ -1218,6 +1318,46 @@ mask-image: var(--bottom-24-svg); } +%with-boundary-16-icon { + @extend %with-icon, %boundary-16-svg-prop; + background-image: var(--boundary-16-svg); +} +%with-boundary-16-mask { + @extend %with-mask, %boundary-16-svg-prop; + -webkit-mask-image: var(--boundary-16-svg); + mask-image: var(--boundary-16-svg); +} + +%with-boundary-24-icon { + @extend %with-icon, %boundary-24-svg-prop; + background-image: var(--boundary-24-svg); +} +%with-boundary-24-mask { + @extend %with-mask, %boundary-24-svg-prop; + -webkit-mask-image: var(--boundary-24-svg); + mask-image: var(--boundary-24-svg); +} + +%with-boundary-color-16-icon { + @extend %with-icon, %boundary-color-16-svg-prop; + background-image: var(--boundary-color-16-svg); +} +%with-boundary-color-16-mask { + @extend %with-mask, %boundary-color-16-svg-prop; + -webkit-mask-image: var(--boundary-color-16-svg); + mask-image: var(--boundary-color-16-svg); +} + +%with-boundary-color-24-icon { + @extend %with-icon, %boundary-color-24-svg-prop; + background-image: var(--boundary-color-24-svg); +} +%with-boundary-color-24-mask { + @extend %with-mask, %boundary-color-24-svg-prop; + -webkit-mask-image: var(--boundary-color-24-svg); + mask-image: var(--boundary-color-24-svg); +} + %with-box-16-icon { @extend %with-icon, %box-16-svg-prop; background-image: var(--box-16-svg); @@ -1239,23 +1379,23 @@ } %with-box-check-fill-icon { - @extend %with-icon, %box-check-fill-svg-prop; - background-image: var(--box-check-fill-svg); + @extend %with-icon, %check-square-fill-16-svg-prop; + background-image: var(--check-square-fill-16-svg); } %with-box-check-fill-mask { - @extend %with-mask, %box-check-fill-svg-prop; - -webkit-mask-image: var(--box-check-fill-svg); - mask-image: var(--box-check-fill-svg); + @extend %with-mask, %check-square-fill-16-svg-prop; + -webkit-mask-image: var(--check-square-fill-16-svg); + mask-image: var(--check-square-fill-16-svg); } %with-box-outline-icon { - @extend %with-icon, %box-outline-svg-prop; - background-image: var(--box-outline-svg); + @extend %with-icon, %square-16-svg-prop; + background-image: var(--square-16-svg); } %with-box-outline-mask { - @extend %with-mask, %box-outline-svg-prop; - -webkit-mask-image: var(--box-outline-svg); - mask-image: var(--box-outline-svg); + @extend %with-mask, %square-16-svg-prop; + -webkit-mask-image: var(--square-16-svg); + mask-image: var(--square-16-svg); } %with-briefcase-16-icon { @@ -1279,13 +1419,13 @@ } %with-broadcast-icon { - @extend %with-icon, %broadcast-svg-prop; - background-image: var(--broadcast-svg); + @extend %with-icon, %radio-16-svg-prop; + background-image: var(--radio-16-svg); } %with-broadcast-mask { - @extend %with-mask, %broadcast-svg-prop; - -webkit-mask-image: var(--broadcast-svg); - mask-image: var(--broadcast-svg); + @extend %with-mask, %radio-16-svg-prop; + -webkit-mask-image: var(--radio-16-svg); + mask-image: var(--radio-16-svg); } %with-bug-16-icon { @@ -1309,13 +1449,13 @@ } %with-bug-icon { - @extend %with-icon, %bug-svg-prop; - background-image: var(--bug-svg); + @extend %with-icon, %bug-16-svg-prop; + background-image: var(--bug-16-svg); } %with-bug-mask { - @extend %with-mask, %bug-svg-prop; - -webkit-mask-image: var(--bug-svg); - mask-image: var(--bug-svg); + @extend %with-mask, %bug-16-svg-prop; + -webkit-mask-image: var(--bug-16-svg); + mask-image: var(--bug-16-svg); } %with-build-16-icon { @@ -1359,13 +1499,13 @@ } %with-calendar-icon { - @extend %with-icon, %calendar-svg-prop; - background-image: var(--calendar-svg); + @extend %with-icon, %calendar-16-svg-prop; + background-image: var(--calendar-16-svg); } %with-calendar-mask { - @extend %with-mask, %calendar-svg-prop; - -webkit-mask-image: var(--calendar-svg); - mask-image: var(--calendar-svg); + @extend %with-mask, %calendar-16-svg-prop; + -webkit-mask-image: var(--calendar-16-svg); + mask-image: var(--calendar-16-svg); } %with-camera-16-icon { @@ -1409,53 +1549,53 @@ } %with-cancel-circle-fill-icon { - @extend %with-icon, %cancel-circle-fill-svg-prop; - background-image: var(--cancel-circle-fill-svg); + @extend %with-icon, %x-circle-fill-16-svg-prop; + background-image: var(--x-circle-fill-16-svg); } %with-cancel-circle-fill-mask { - @extend %with-mask, %cancel-circle-fill-svg-prop; - -webkit-mask-image: var(--cancel-circle-fill-svg); - mask-image: var(--cancel-circle-fill-svg); + @extend %with-mask, %x-circle-fill-16-svg-prop; + -webkit-mask-image: var(--x-circle-fill-16-svg); + mask-image: var(--x-circle-fill-16-svg); } %with-cancel-circle-outline-icon { - @extend %with-icon, %cancel-circle-outline-svg-prop; - background-image: var(--cancel-circle-outline-svg); + @extend %with-icon, %x-circle-16-svg-prop; + background-image: var(--x-circle-16-svg); } %with-cancel-circle-outline-mask { - @extend %with-mask, %cancel-circle-outline-svg-prop; - -webkit-mask-image: var(--cancel-circle-outline-svg); - mask-image: var(--cancel-circle-outline-svg); + @extend %with-mask, %x-circle-16-svg-prop; + -webkit-mask-image: var(--x-circle-16-svg); + mask-image: var(--x-circle-16-svg); } %with-cancel-plain-icon { - @extend %with-icon, %cancel-plain-svg-prop; - background-image: var(--cancel-plain-svg); + @extend %with-icon, %x-16-svg-prop; + background-image: var(--x-16-svg); } %with-cancel-plain-mask { - @extend %with-mask, %cancel-plain-svg-prop; - -webkit-mask-image: var(--cancel-plain-svg); - mask-image: var(--cancel-plain-svg); + @extend %with-mask, %x-16-svg-prop; + -webkit-mask-image: var(--x-16-svg); + mask-image: var(--x-16-svg); } %with-cancel-square-fill-icon { - @extend %with-icon, %cancel-square-fill-svg-prop; - background-image: var(--cancel-square-fill-svg); + @extend %with-icon, %x-square-fill-16-svg-prop; + background-image: var(--x-square-fill-16-svg); } %with-cancel-square-fill-mask { - @extend %with-mask, %cancel-square-fill-svg-prop; - -webkit-mask-image: var(--cancel-square-fill-svg); - mask-image: var(--cancel-square-fill-svg); + @extend %with-mask, %x-square-fill-16-svg-prop; + -webkit-mask-image: var(--x-square-fill-16-svg); + mask-image: var(--x-square-fill-16-svg); } %with-cancel-square-outline-icon { - @extend %with-icon, %cancel-square-outline-svg-prop; - background-image: var(--cancel-square-outline-svg); + @extend %with-icon, %x-square-16-svg-prop; + background-image: var(--x-square-16-svg); } %with-cancel-square-outline-mask { - @extend %with-mask, %cancel-square-outline-svg-prop; - -webkit-mask-image: var(--cancel-square-outline-svg); - mask-image: var(--cancel-square-outline-svg); + @extend %with-mask, %x-square-16-svg-prop; + -webkit-mask-image: var(--x-square-16-svg); + mask-image: var(--x-square-16-svg); } %with-caret-16-icon { @@ -1479,23 +1619,23 @@ } %with-caret-down-icon { - @extend %with-icon, %caret-down-svg-prop; - background-image: var(--caret-down-svg); + @extend %with-icon, %caret-16-svg-prop; + background-image: var(--caret-16-svg); } %with-caret-down-mask { - @extend %with-mask, %caret-down-svg-prop; - -webkit-mask-image: var(--caret-down-svg); - mask-image: var(--caret-down-svg); + @extend %with-mask, %caret-16-svg-prop; + -webkit-mask-image: var(--caret-16-svg); + mask-image: var(--caret-16-svg); } %with-caret-up-icon { - @extend %with-icon, %caret-up-svg-prop; - background-image: var(--caret-up-svg); + @extend %with-icon, %chevron-up-16-svg-prop; + background-image: var(--chevron-up-16-svg); } %with-caret-up-mask { - @extend %with-mask, %caret-up-svg-prop; - -webkit-mask-image: var(--caret-up-svg); - mask-image: var(--caret-up-svg); + @extend %with-mask, %chevron-up-16-svg-prop; + -webkit-mask-image: var(--chevron-up-16-svg); + mask-image: var(--chevron-up-16-svg); } %with-cast-16-icon { @@ -1659,23 +1799,23 @@ } %with-check-circle-fill-icon { - @extend %with-icon, %check-circle-fill-svg-prop; - background-image: var(--check-circle-fill-svg); + @extend %with-icon, %check-circle-fill-16-svg-prop; + background-image: var(--check-circle-fill-16-svg); } %with-check-circle-fill-mask { - @extend %with-mask, %check-circle-fill-svg-prop; - -webkit-mask-image: var(--check-circle-fill-svg); - mask-image: var(--check-circle-fill-svg); + @extend %with-mask, %check-circle-fill-16-svg-prop; + -webkit-mask-image: var(--check-circle-fill-16-svg); + mask-image: var(--check-circle-fill-16-svg); } %with-check-circle-outline-icon { - @extend %with-icon, %check-circle-outline-svg-prop; - background-image: var(--check-circle-outline-svg); + @extend %with-icon, %check-circle-16-svg-prop; + background-image: var(--check-circle-16-svg); } %with-check-circle-outline-mask { - @extend %with-mask, %check-circle-outline-svg-prop; - -webkit-mask-image: var(--check-circle-outline-svg); - mask-image: var(--check-circle-outline-svg); + @extend %with-mask, %check-circle-16-svg-prop; + -webkit-mask-image: var(--check-circle-16-svg); + mask-image: var(--check-circle-16-svg); } %with-check-diamond-16-icon { @@ -1759,13 +1899,13 @@ } %with-check-plain-icon { - @extend %with-icon, %check-plain-svg-prop; - background-image: var(--check-plain-svg); + @extend %with-icon, %check-16-svg-prop; + background-image: var(--check-16-svg); } %with-check-plain-mask { - @extend %with-mask, %check-plain-svg-prop; - -webkit-mask-image: var(--check-plain-svg); - mask-image: var(--check-plain-svg); + @extend %with-mask, %check-16-svg-prop; + -webkit-mask-image: var(--check-16-svg); + mask-image: var(--check-16-svg); } %with-check-square-16-icon { @@ -1829,13 +1969,13 @@ } %with-chevron-down-icon { - @extend %with-icon, %chevron-down-svg-prop; - background-image: var(--chevron-down-svg); + @extend %with-icon, %chevron-down-16-svg-prop; + background-image: var(--chevron-down-16-svg); } %with-chevron-down-mask { - @extend %with-mask, %chevron-down-svg-prop; - -webkit-mask-image: var(--chevron-down-svg); - mask-image: var(--chevron-down-svg); + @extend %with-mask, %chevron-down-16-svg-prop; + -webkit-mask-image: var(--chevron-down-16-svg); + mask-image: var(--chevron-down-16-svg); } %with-chevron-left-16-icon { @@ -1859,13 +1999,13 @@ } %with-chevron-left-icon { - @extend %with-icon, %chevron-left-svg-prop; - background-image: var(--chevron-left-svg); + @extend %with-icon, %chevron-left-16-svg-prop; + background-image: var(--chevron-left-16-svg); } %with-chevron-left-mask { - @extend %with-mask, %chevron-left-svg-prop; - -webkit-mask-image: var(--chevron-left-svg); - mask-image: var(--chevron-left-svg); + @extend %with-mask, %chevron-left-16-svg-prop; + -webkit-mask-image: var(--chevron-left-16-svg); + mask-image: var(--chevron-left-16-svg); } %with-chevron-right-16-icon { @@ -1889,13 +2029,13 @@ } %with-chevron-right-icon { - @extend %with-icon, %chevron-right-svg-prop; - background-image: var(--chevron-right-svg); + @extend %with-icon, %chevron-right-16-svg-prop; + background-image: var(--chevron-right-16-svg); } %with-chevron-right-mask { - @extend %with-mask, %chevron-right-svg-prop; - -webkit-mask-image: var(--chevron-right-svg); - mask-image: var(--chevron-right-svg); + @extend %with-mask, %chevron-right-16-svg-prop; + -webkit-mask-image: var(--chevron-right-16-svg); + mask-image: var(--chevron-right-16-svg); } %with-chevron-up-16-icon { @@ -1919,13 +2059,13 @@ } %with-chevron-up-icon { - @extend %with-icon, %chevron-up-svg-prop; - background-image: var(--chevron-up-svg); + @extend %with-icon, %chevron-up-16-svg-prop; + background-image: var(--chevron-up-16-svg); } %with-chevron-up-mask { - @extend %with-mask, %chevron-up-svg-prop; - -webkit-mask-image: var(--chevron-up-svg); - mask-image: var(--chevron-up-svg); + @extend %with-mask, %chevron-up-16-svg-prop; + -webkit-mask-image: var(--chevron-up-16-svg); + mask-image: var(--chevron-up-16-svg); } %with-chevrons-down-16-icon { @@ -2169,23 +2309,23 @@ } %with-clock-fill-icon { - @extend %with-icon, %clock-fill-svg-prop; - background-image: var(--clock-fill-svg); + @extend %with-icon, %clock-16-svg-prop; + background-image: var(--clock-16-svg); } %with-clock-fill-mask { - @extend %with-mask, %clock-fill-svg-prop; - -webkit-mask-image: var(--clock-fill-svg); - mask-image: var(--clock-fill-svg); + @extend %with-mask, %clock-16-svg-prop; + -webkit-mask-image: var(--clock-16-svg); + mask-image: var(--clock-16-svg); } %with-clock-outline-icon { - @extend %with-icon, %clock-outline-svg-prop; - background-image: var(--clock-outline-svg); + @extend %with-icon, %clock-16-svg-prop; + background-image: var(--clock-16-svg); } %with-clock-outline-mask { - @extend %with-mask, %clock-outline-svg-prop; - -webkit-mask-image: var(--clock-outline-svg); - mask-image: var(--clock-outline-svg); + @extend %with-mask, %clock-16-svg-prop; + -webkit-mask-image: var(--clock-16-svg); + mask-image: var(--clock-16-svg); } %with-cloud-16-icon { @@ -2379,13 +2519,53 @@ } %with-code-icon { - @extend %with-icon, %code-svg-prop; - background-image: var(--code-svg); + @extend %with-icon, %code-16-svg-prop; + background-image: var(--code-16-svg); } %with-code-mask { - @extend %with-mask, %code-svg-prop; - -webkit-mask-image: var(--code-svg); - mask-image: var(--code-svg); + @extend %with-mask, %code-16-svg-prop; + -webkit-mask-image: var(--code-16-svg); + mask-image: var(--code-16-svg); +} + +%with-codepen-16-icon { + @extend %with-icon, %codepen-16-svg-prop; + background-image: var(--codepen-16-svg); +} +%with-codepen-16-mask { + @extend %with-mask, %codepen-16-svg-prop; + -webkit-mask-image: var(--codepen-16-svg); + mask-image: var(--codepen-16-svg); +} + +%with-codepen-24-icon { + @extend %with-icon, %codepen-24-svg-prop; + background-image: var(--codepen-24-svg); +} +%with-codepen-24-mask { + @extend %with-mask, %codepen-24-svg-prop; + -webkit-mask-image: var(--codepen-24-svg); + mask-image: var(--codepen-24-svg); +} + +%with-codepen-color-16-icon { + @extend %with-icon, %codepen-color-16-svg-prop; + background-image: var(--codepen-color-16-svg); +} +%with-codepen-color-16-mask { + @extend %with-mask, %codepen-color-16-svg-prop; + -webkit-mask-image: var(--codepen-color-16-svg); + mask-image: var(--codepen-color-16-svg); +} + +%with-codepen-color-24-icon { + @extend %with-icon, %codepen-color-24-svg-prop; + background-image: var(--codepen-color-24-svg); +} +%with-codepen-color-24-mask { + @extend %with-mask, %codepen-color-24-svg-prop; + -webkit-mask-image: var(--codepen-color-24-svg); + mask-image: var(--codepen-color-24-svg); } %with-collections-16-icon { @@ -2489,33 +2669,73 @@ } %with-console-icon { - @extend %with-icon, %console-svg-prop; - background-image: var(--console-svg); + @extend %with-icon, %terminal-16-svg-prop; + background-image: var(--terminal-16-svg); } %with-console-mask { - @extend %with-mask, %console-svg-prop; - -webkit-mask-image: var(--console-svg); - mask-image: var(--console-svg); + @extend %with-mask, %terminal-16-svg-prop; + -webkit-mask-image: var(--terminal-16-svg); + mask-image: var(--terminal-16-svg); +} + +%with-consul-16-icon { + @extend %with-icon, %consul-16-svg-prop; + background-image: var(--consul-16-svg); +} +%with-consul-16-mask { + @extend %with-mask, %consul-16-svg-prop; + -webkit-mask-image: var(--consul-16-svg); + mask-image: var(--consul-16-svg); +} + +%with-consul-24-icon { + @extend %with-icon, %consul-24-svg-prop; + background-image: var(--consul-24-svg); +} +%with-consul-24-mask { + @extend %with-mask, %consul-24-svg-prop; + -webkit-mask-image: var(--consul-24-svg); + mask-image: var(--consul-24-svg); +} + +%with-consul-color-16-icon { + @extend %with-icon, %consul-color-16-svg-prop; + background-image: var(--consul-color-16-svg); +} +%with-consul-color-16-mask { + @extend %with-mask, %consul-color-16-svg-prop; + -webkit-mask-image: var(--consul-color-16-svg); + mask-image: var(--consul-color-16-svg); +} + +%with-consul-color-24-icon { + @extend %with-icon, %consul-color-24-svg-prop; + background-image: var(--consul-color-24-svg); +} +%with-consul-color-24-mask { + @extend %with-mask, %consul-color-24-svg-prop; + -webkit-mask-image: var(--consul-color-24-svg); + mask-image: var(--consul-color-24-svg); } %with-copy-action-icon { - @extend %with-icon, %copy-action-svg-prop; - background-image: var(--copy-action-svg); + @extend %with-icon, %clipboard-copy-16-svg-prop; + background-image: var(--clipboard-copy-16-svg); } %with-copy-action-mask { - @extend %with-mask, %copy-action-svg-prop; - -webkit-mask-image: var(--copy-action-svg); - mask-image: var(--copy-action-svg); + @extend %with-mask, %clipboard-copy-16-svg-prop; + -webkit-mask-image: var(--clipboard-copy-16-svg); + mask-image: var(--clipboard-copy-16-svg); } %with-copy-success-icon { - @extend %with-icon, %copy-success-svg-prop; - background-image: var(--copy-success-svg); + @extend %with-icon, %clipboard-checked-16-svg-prop; + background-image: var(--clipboard-checked-16-svg); } %with-copy-success-mask { - @extend %with-mask, %copy-success-svg-prop; - -webkit-mask-image: var(--copy-success-svg); - mask-image: var(--copy-success-svg); + @extend %with-mask, %clipboard-checked-16-svg-prop; + -webkit-mask-image: var(--clipboard-checked-16-svg); + mask-image: var(--clipboard-checked-16-svg); } %with-corner-down-left-16-icon { @@ -2799,13 +3019,13 @@ } %with-database-icon { - @extend %with-icon, %database-svg-prop; - background-image: var(--database-svg); + @extend %with-icon, %database-16-svg-prop; + background-image: var(--database-16-svg); } %with-database-mask { - @extend %with-mask, %database-svg-prop; - -webkit-mask-image: var(--database-svg); - mask-image: var(--database-svg); + @extend %with-mask, %database-16-svg-prop; + -webkit-mask-image: var(--database-16-svg); + mask-image: var(--database-16-svg); } %with-delay-16-icon { @@ -2829,13 +3049,13 @@ } %with-delay-icon { - @extend %with-icon, %delay-svg-prop; - background-image: var(--delay-svg); + @extend %with-icon, %delay-16-svg-prop; + background-image: var(--delay-16-svg); } %with-delay-mask { - @extend %with-mask, %delay-svg-prop; - -webkit-mask-image: var(--delay-svg); - mask-image: var(--delay-svg); + @extend %with-mask, %delay-16-svg-prop; + -webkit-mask-image: var(--delay-16-svg); + mask-image: var(--delay-16-svg); } %with-delete-16-icon { @@ -2859,13 +3079,13 @@ } %with-deny-alt-icon { - @extend %with-icon, %deny-alt-svg-prop; - background-image: var(--deny-alt-svg); + @extend %with-icon, %skip-16-svg-prop; + background-image: var(--skip-16-svg); } %with-deny-alt-mask { - @extend %with-mask, %deny-alt-svg-prop; - -webkit-mask-image: var(--deny-alt-svg); - mask-image: var(--deny-alt-svg); + @extend %with-mask, %skip-16-svg-prop; + -webkit-mask-image: var(--skip-16-svg); + mask-image: var(--skip-16-svg); } %with-deny-color-icon { @@ -2879,13 +3099,13 @@ } %with-deny-default-icon { - @extend %with-icon, %deny-default-svg-prop; - background-image: var(--deny-default-svg); + @extend %with-icon, %skip-16-svg-prop; + background-image: var(--skip-16-svg); } %with-deny-default-mask { - @extend %with-mask, %deny-default-svg-prop; - -webkit-mask-image: var(--deny-default-svg); - mask-image: var(--deny-default-svg); + @extend %with-mask, %skip-16-svg-prop; + -webkit-mask-image: var(--skip-16-svg); + mask-image: var(--skip-16-svg); } %with-diamond-16-icon { @@ -2929,13 +3149,13 @@ } %with-disabled-icon { - @extend %with-icon, %disabled-svg-prop; - background-image: var(--disabled-svg); + @extend %with-icon, %skip-16-svg-prop; + background-image: var(--skip-16-svg); } %with-disabled-mask { - @extend %with-mask, %disabled-svg-prop; - -webkit-mask-image: var(--disabled-svg); - mask-image: var(--disabled-svg); + @extend %with-mask, %skip-16-svg-prop; + -webkit-mask-image: var(--skip-16-svg); + mask-image: var(--skip-16-svg); } %with-disc-16-icon { @@ -3099,13 +3319,13 @@ } %with-docs-icon { - @extend %with-icon, %docs-svg-prop; - background-image: var(--docs-svg); + @extend %with-icon, %docs-link-16-svg-prop; + background-image: var(--docs-link-16-svg); } %with-docs-mask { - @extend %with-mask, %docs-svg-prop; - -webkit-mask-image: var(--docs-svg); - mask-image: var(--docs-svg); + @extend %with-mask, %docs-link-16-svg-prop; + -webkit-mask-image: var(--docs-link-16-svg); + mask-image: var(--docs-link-16-svg); } %with-dollar-sign-16-icon { @@ -3189,13 +3409,13 @@ } %with-download-icon { - @extend %with-icon, %download-svg-prop; - background-image: var(--download-svg); + @extend %with-icon, %download-16-svg-prop; + background-image: var(--download-16-svg); } %with-download-mask { - @extend %with-mask, %download-svg-prop; - -webkit-mask-image: var(--download-svg); - mask-image: var(--download-svg); + @extend %with-mask, %download-16-svg-prop; + -webkit-mask-image: var(--download-16-svg); + mask-image: var(--download-16-svg); } %with-droplet-16-icon { @@ -3259,13 +3479,13 @@ } %with-edit-icon { - @extend %with-icon, %edit-svg-prop; - background-image: var(--edit-svg); + @extend %with-icon, %edit-16-svg-prop; + background-image: var(--edit-16-svg); } %with-edit-mask { - @extend %with-mask, %edit-svg-prop; - -webkit-mask-image: var(--edit-svg); - mask-image: var(--edit-svg); + @extend %with-mask, %edit-16-svg-prop; + -webkit-mask-image: var(--edit-16-svg); + mask-image: var(--edit-16-svg); } %with-entry-point-16-icon { @@ -3289,43 +3509,43 @@ } %with-envelope-sealed-fill-icon { - @extend %with-icon, %envelope-sealed-fill-svg-prop; - background-image: var(--envelope-sealed-fill-svg); + @extend %with-icon, %mail-16-svg-prop; + background-image: var(--mail-16-svg); } %with-envelope-sealed-fill-mask { - @extend %with-mask, %envelope-sealed-fill-svg-prop; - -webkit-mask-image: var(--envelope-sealed-fill-svg); - mask-image: var(--envelope-sealed-fill-svg); + @extend %with-mask, %mail-16-svg-prop; + -webkit-mask-image: var(--mail-16-svg); + mask-image: var(--mail-16-svg); } %with-envelope-sealed-outline-icon { - @extend %with-icon, %envelope-sealed-outline-svg-prop; - background-image: var(--envelope-sealed-outline-svg); + @extend %with-icon, %mail-16-svg-prop; + background-image: var(--mail-16-svg); } %with-envelope-sealed-outline-mask { - @extend %with-mask, %envelope-sealed-outline-svg-prop; - -webkit-mask-image: var(--envelope-sealed-outline-svg); - mask-image: var(--envelope-sealed-outline-svg); + @extend %with-mask, %mail-16-svg-prop; + -webkit-mask-image: var(--mail-16-svg); + mask-image: var(--mail-16-svg); } %with-envelope-unsealed--outline-icon { - @extend %with-icon, %envelope-unsealed--outline-svg-prop; - background-image: var(--envelope-unsealed--outline-svg); + @extend %with-icon, %mail-open-16-svg-prop; + background-image: var(--mail-open-16-svg); } %with-envelope-unsealed--outline-mask { - @extend %with-mask, %envelope-unsealed--outline-svg-prop; - -webkit-mask-image: var(--envelope-unsealed--outline-svg); - mask-image: var(--envelope-unsealed--outline-svg); + @extend %with-mask, %mail-open-16-svg-prop; + -webkit-mask-image: var(--mail-open-16-svg); + mask-image: var(--mail-open-16-svg); } %with-envelope-unsealed-fill-icon { - @extend %with-icon, %envelope-unsealed-fill-svg-prop; - background-image: var(--envelope-unsealed-fill-svg); + @extend %with-icon, %mail-open-16-svg-prop; + background-image: var(--mail-open-16-svg); } %with-envelope-unsealed-fill-mask { - @extend %with-mask, %envelope-unsealed-fill-svg-prop; - -webkit-mask-image: var(--envelope-unsealed-fill-svg); - mask-image: var(--envelope-unsealed-fill-svg); + @extend %with-mask, %mail-open-16-svg-prop; + -webkit-mask-image: var(--mail-open-16-svg); + mask-image: var(--mail-open-16-svg); } %with-event-16-icon { @@ -3369,33 +3589,33 @@ } %with-exit-icon { - @extend %with-icon, %exit-svg-prop; - background-image: var(--exit-svg); + @extend %with-icon, %external-link-16-svg-prop; + background-image: var(--external-link-16-svg); } %with-exit-mask { - @extend %with-mask, %exit-svg-prop; - -webkit-mask-image: var(--exit-svg); - mask-image: var(--exit-svg); + @extend %with-mask, %external-link-16-svg-prop; + -webkit-mask-image: var(--external-link-16-svg); + mask-image: var(--external-link-16-svg); } %with-expand-less-icon { - @extend %with-icon, %expand-less-svg-prop; - background-image: var(--expand-less-svg); + @extend %with-icon, %minimize-16-svg-prop; + background-image: var(--minimize-16-svg); } %with-expand-less-mask { - @extend %with-mask, %expand-less-svg-prop; - -webkit-mask-image: var(--expand-less-svg); - mask-image: var(--expand-less-svg); + @extend %with-mask, %minimize-16-svg-prop; + -webkit-mask-image: var(--minimize-16-svg); + mask-image: var(--minimize-16-svg); } %with-expand-more-icon { - @extend %with-icon, %expand-more-svg-prop; - background-image: var(--expand-more-svg); + @extend %with-icon, %maximize-16-svg-prop; + background-image: var(--maximize-16-svg); } %with-expand-more-mask { - @extend %with-mask, %expand-more-svg-prop; - -webkit-mask-image: var(--expand-more-svg); - mask-image: var(--expand-more-svg); + @extend %with-mask, %maximize-16-svg-prop; + -webkit-mask-image: var(--maximize-16-svg); + mask-image: var(--maximize-16-svg); } %with-external-link-16-icon { @@ -3498,6 +3718,46 @@ mask-image: var(--f5-color-24-svg); } +%with-facebook-16-icon { + @extend %with-icon, %facebook-16-svg-prop; + background-image: var(--facebook-16-svg); +} +%with-facebook-16-mask { + @extend %with-mask, %facebook-16-svg-prop; + -webkit-mask-image: var(--facebook-16-svg); + mask-image: var(--facebook-16-svg); +} + +%with-facebook-24-icon { + @extend %with-icon, %facebook-24-svg-prop; + background-image: var(--facebook-24-svg); +} +%with-facebook-24-mask { + @extend %with-mask, %facebook-24-svg-prop; + -webkit-mask-image: var(--facebook-24-svg); + mask-image: var(--facebook-24-svg); +} + +%with-facebook-color-16-icon { + @extend %with-icon, %facebook-color-16-svg-prop; + background-image: var(--facebook-color-16-svg); +} +%with-facebook-color-16-mask { + @extend %with-mask, %facebook-color-16-svg-prop; + -webkit-mask-image: var(--facebook-color-16-svg); + mask-image: var(--facebook-color-16-svg); +} + +%with-facebook-color-24-icon { + @extend %with-icon, %facebook-color-24-svg-prop; + background-image: var(--facebook-color-24-svg); +} +%with-facebook-color-24-mask { + @extend %with-mask, %facebook-color-24-svg-prop; + -webkit-mask-image: var(--facebook-color-24-svg); + mask-image: var(--facebook-color-24-svg); +} + %with-fast-forward-16-icon { @extend %with-icon, %fast-forward-16-svg-prop; background-image: var(--fast-forward-16-svg); @@ -3599,13 +3859,13 @@ } %with-file-fill-icon { - @extend %with-icon, %file-fill-svg-prop; - background-image: var(--file-fill-svg); + @extend %with-icon, %file-16-svg-prop; + background-image: var(--file-16-svg); } %with-file-fill-mask { - @extend %with-mask, %file-fill-svg-prop; - -webkit-mask-image: var(--file-fill-svg); - mask-image: var(--file-fill-svg); + @extend %with-mask, %file-16-svg-prop; + -webkit-mask-image: var(--file-16-svg); + mask-image: var(--file-16-svg); } %with-file-minus-16-icon { @@ -3629,13 +3889,13 @@ } %with-file-outline-icon { - @extend %with-icon, %file-outline-svg-prop; - background-image: var(--file-outline-svg); + @extend %with-icon, %file-16-svg-prop; + background-image: var(--file-16-svg); } %with-file-outline-mask { - @extend %with-mask, %file-outline-svg-prop; - -webkit-mask-image: var(--file-outline-svg); - mask-image: var(--file-outline-svg); + @extend %with-mask, %file-16-svg-prop; + -webkit-mask-image: var(--file-16-svg); + mask-image: var(--file-16-svg); } %with-file-plus-16-icon { @@ -3819,13 +4079,13 @@ } %with-filter-icon { - @extend %with-icon, %filter-svg-prop; - background-image: var(--filter-svg); + @extend %with-icon, %filter-16-svg-prop; + background-image: var(--filter-16-svg); } %with-filter-mask { - @extend %with-mask, %filter-svg-prop; - -webkit-mask-image: var(--filter-svg); - mask-image: var(--filter-svg); + @extend %with-mask, %filter-16-svg-prop; + -webkit-mask-image: var(--filter-16-svg); + mask-image: var(--filter-16-svg); } %with-fingerprint-16-icon { @@ -3869,13 +4129,13 @@ } %with-flag-icon { - @extend %with-icon, %flag-svg-prop; - background-image: var(--flag-svg); + @extend %with-icon, %flag-16-svg-prop; + background-image: var(--flag-16-svg); } %with-flag-mask { - @extend %with-mask, %flag-svg-prop; - -webkit-mask-image: var(--flag-svg); - mask-image: var(--flag-svg); + @extend %with-mask, %flag-16-svg-prop; + -webkit-mask-image: var(--flag-16-svg); + mask-image: var(--flag-16-svg); } %with-folder-16-icon { @@ -3919,13 +4179,13 @@ } %with-folder-fill-icon { - @extend %with-icon, %folder-fill-svg-prop; - background-image: var(--folder-fill-svg); + @extend %with-icon, %folder-fill-16-svg-prop; + background-image: var(--folder-fill-16-svg); } %with-folder-fill-mask { - @extend %with-mask, %folder-fill-svg-prop; - -webkit-mask-image: var(--folder-fill-svg); - mask-image: var(--folder-fill-svg); + @extend %with-mask, %folder-fill-16-svg-prop; + -webkit-mask-image: var(--folder-fill-16-svg); + mask-image: var(--folder-fill-16-svg); } %with-folder-minus-16-icon { @@ -3969,13 +4229,13 @@ } %with-folder-outline-icon { - @extend %with-icon, %folder-outline-svg-prop; - background-image: var(--folder-outline-svg); + @extend %with-icon, %folder-16-svg-prop; + background-image: var(--folder-16-svg); } %with-folder-outline-mask { - @extend %with-mask, %folder-outline-svg-prop; - -webkit-mask-image: var(--folder-outline-svg); - mask-image: var(--folder-outline-svg); + @extend %with-mask, %folder-16-svg-prop; + -webkit-mask-image: var(--folder-16-svg); + mask-image: var(--folder-16-svg); } %with-folder-plus-16-icon { @@ -4099,13 +4359,13 @@ } %with-gateway-icon { - @extend %with-icon, %gateway-svg-prop; - background-image: var(--gateway-svg); + @extend %with-icon, %gateway-16-svg-prop; + background-image: var(--gateway-16-svg); } %with-gateway-mask { - @extend %with-mask, %gateway-svg-prop; - -webkit-mask-image: var(--gateway-svg); - mask-image: var(--gateway-svg); + @extend %with-mask, %gateway-16-svg-prop; + -webkit-mask-image: var(--gateway-16-svg); + mask-image: var(--gateway-16-svg); } %with-gcp-16-icon { @@ -4169,23 +4429,23 @@ } %with-gift-fill-icon { - @extend %with-icon, %gift-fill-svg-prop; - background-image: var(--gift-fill-svg); + @extend %with-icon, %gift-16-svg-prop; + background-image: var(--gift-16-svg); } %with-gift-fill-mask { - @extend %with-mask, %gift-fill-svg-prop; - -webkit-mask-image: var(--gift-fill-svg); - mask-image: var(--gift-fill-svg); + @extend %with-mask, %gift-16-svg-prop; + -webkit-mask-image: var(--gift-16-svg); + mask-image: var(--gift-16-svg); } %with-gift-outline-icon { - @extend %with-icon, %gift-outline-svg-prop; - background-image: var(--gift-outline-svg); + @extend %with-icon, %gift-16-svg-prop; + background-image: var(--gift-16-svg); } %with-gift-outline-mask { - @extend %with-mask, %gift-outline-svg-prop; - -webkit-mask-image: var(--gift-outline-svg); - mask-image: var(--gift-outline-svg); + @extend %with-mask, %gift-16-svg-prop; + -webkit-mask-image: var(--gift-16-svg); + mask-image: var(--gift-16-svg); } %with-git-branch-16-icon { @@ -4209,13 +4469,13 @@ } %with-git-branch-icon { - @extend %with-icon, %git-branch-svg-prop; - background-image: var(--git-branch-svg); + @extend %with-icon, %git-branch-16-svg-prop; + background-image: var(--git-branch-16-svg); } %with-git-branch-mask { - @extend %with-mask, %git-branch-svg-prop; - -webkit-mask-image: var(--git-branch-svg); - mask-image: var(--git-branch-svg); + @extend %with-mask, %git-branch-16-svg-prop; + -webkit-mask-image: var(--git-branch-16-svg); + mask-image: var(--git-branch-16-svg); } %with-git-commit-16-icon { @@ -4239,13 +4499,13 @@ } %with-git-commit-icon { - @extend %with-icon, %git-commit-svg-prop; - background-image: var(--git-commit-svg); + @extend %with-icon, %git-commit-16-svg-prop; + background-image: var(--git-commit-16-svg); } %with-git-commit-mask { - @extend %with-mask, %git-commit-svg-prop; - -webkit-mask-image: var(--git-commit-svg); - mask-image: var(--git-commit-svg); + @extend %with-mask, %git-commit-16-svg-prop; + -webkit-mask-image: var(--git-commit-16-svg); + mask-image: var(--git-commit-16-svg); } %with-git-merge-16-icon { @@ -4289,13 +4549,13 @@ } %with-git-pull-request-icon { - @extend %with-icon, %git-pull-request-svg-prop; - background-image: var(--git-pull-request-svg); + @extend %with-icon, %git-pull-request-16-svg-prop; + background-image: var(--git-pull-request-16-svg); } %with-git-pull-request-mask { - @extend %with-mask, %git-pull-request-svg-prop; - -webkit-mask-image: var(--git-pull-request-svg); - mask-image: var(--git-pull-request-svg); + @extend %with-mask, %git-pull-request-16-svg-prop; + -webkit-mask-image: var(--git-pull-request-16-svg); + mask-image: var(--git-pull-request-16-svg); } %with-git-repo-16-icon { @@ -4319,13 +4579,13 @@ } %with-git-repository-icon { - @extend %with-icon, %git-repository-svg-prop; - background-image: var(--git-repository-svg); + @extend %with-icon, %git-repo-16-svg-prop; + background-image: var(--git-repo-16-svg); } %with-git-repository-mask { - @extend %with-mask, %git-repository-svg-prop; - -webkit-mask-image: var(--git-repository-svg); - mask-image: var(--git-repository-svg); + @extend %with-mask, %git-repo-16-svg-prop; + -webkit-mask-image: var(--git-repo-16-svg); + mask-image: var(--git-repo-16-svg); } %with-github-16-icon { @@ -4569,13 +4829,13 @@ } %with-guide-icon { - @extend %with-icon, %guide-svg-prop; - background-image: var(--guide-svg); + @extend %with-icon, %guide-16-svg-prop; + background-image: var(--guide-16-svg); } %with-guide-mask { - @extend %with-mask, %guide-svg-prop; - -webkit-mask-image: var(--guide-svg); - mask-image: var(--guide-svg); + @extend %with-mask, %guide-16-svg-prop; + -webkit-mask-image: var(--guide-16-svg); + mask-image: var(--guide-16-svg); } %with-hammer-16-icon { @@ -4598,6 +4858,26 @@ mask-image: var(--hammer-24-svg); } +%with-handshake-16-icon { + @extend %with-icon, %handshake-16-svg-prop; + background-image: var(--handshake-16-svg); +} +%with-handshake-16-mask { + @extend %with-mask, %handshake-16-svg-prop; + -webkit-mask-image: var(--handshake-16-svg); + mask-image: var(--handshake-16-svg); +} + +%with-handshake-24-icon { + @extend %with-icon, %handshake-24-svg-prop; + background-image: var(--handshake-24-svg); +} +%with-handshake-24-mask { + @extend %with-mask, %handshake-24-svg-prop; + -webkit-mask-image: var(--handshake-24-svg); + mask-image: var(--handshake-24-svg); +} + %with-hard-drive-16-icon { @extend %with-icon, %hard-drive-16-svg-prop; background-image: var(--hard-drive-16-svg); @@ -4638,6 +4918,86 @@ mask-image: var(--hash-24-svg); } +%with-hashicorp-16-icon { + @extend %with-icon, %hashicorp-16-svg-prop; + background-image: var(--hashicorp-16-svg); +} +%with-hashicorp-16-mask { + @extend %with-mask, %hashicorp-16-svg-prop; + -webkit-mask-image: var(--hashicorp-16-svg); + mask-image: var(--hashicorp-16-svg); +} + +%with-hashicorp-24-icon { + @extend %with-icon, %hashicorp-24-svg-prop; + background-image: var(--hashicorp-24-svg); +} +%with-hashicorp-24-mask { + @extend %with-mask, %hashicorp-24-svg-prop; + -webkit-mask-image: var(--hashicorp-24-svg); + mask-image: var(--hashicorp-24-svg); +} + +%with-hashicorp-color-16-icon { + @extend %with-icon, %hashicorp-color-16-svg-prop; + background-image: var(--hashicorp-color-16-svg); +} +%with-hashicorp-color-16-mask { + @extend %with-mask, %hashicorp-color-16-svg-prop; + -webkit-mask-image: var(--hashicorp-color-16-svg); + mask-image: var(--hashicorp-color-16-svg); +} + +%with-hashicorp-color-24-icon { + @extend %with-icon, %hashicorp-color-24-svg-prop; + background-image: var(--hashicorp-color-24-svg); +} +%with-hashicorp-color-24-mask { + @extend %with-mask, %hashicorp-color-24-svg-prop; + -webkit-mask-image: var(--hashicorp-color-24-svg); + mask-image: var(--hashicorp-color-24-svg); +} + +%with-hcp-16-icon { + @extend %with-icon, %hcp-16-svg-prop; + background-image: var(--hcp-16-svg); +} +%with-hcp-16-mask { + @extend %with-mask, %hcp-16-svg-prop; + -webkit-mask-image: var(--hcp-16-svg); + mask-image: var(--hcp-16-svg); +} + +%with-hcp-24-icon { + @extend %with-icon, %hcp-24-svg-prop; + background-image: var(--hcp-24-svg); +} +%with-hcp-24-mask { + @extend %with-mask, %hcp-24-svg-prop; + -webkit-mask-image: var(--hcp-24-svg); + mask-image: var(--hcp-24-svg); +} + +%with-hcp-color-16-icon { + @extend %with-icon, %hcp-color-16-svg-prop; + background-image: var(--hcp-color-16-svg); +} +%with-hcp-color-16-mask { + @extend %with-mask, %hcp-color-16-svg-prop; + -webkit-mask-image: var(--hcp-color-16-svg); + mask-image: var(--hcp-color-16-svg); +} + +%with-hcp-color-24-icon { + @extend %with-icon, %hcp-color-24-svg-prop; + background-image: var(--hcp-color-24-svg); +} +%with-hcp-color-24-mask { + @extend %with-mask, %hcp-color-24-svg-prop; + -webkit-mask-image: var(--hcp-color-24-svg); + mask-image: var(--hcp-color-24-svg); +} + %with-headphones-16-icon { @extend %with-icon, %headphones-16-svg-prop; background-image: var(--headphones-16-svg); @@ -4659,13 +5019,13 @@ } %with-health-icon { - @extend %with-icon, %health-svg-prop; - background-image: var(--health-svg); + @extend %with-icon, %activity-16-svg-prop; + background-image: var(--activity-16-svg); } %with-health-mask { - @extend %with-mask, %health-svg-prop; - -webkit-mask-image: var(--health-svg); - mask-image: var(--health-svg); + @extend %with-mask, %activity-16-svg-prop; + -webkit-mask-image: var(--activity-16-svg); + mask-image: var(--activity-16-svg); } %with-heart-16-icon { @@ -4749,23 +5109,23 @@ } %with-help-circle-fill-icon { - @extend %with-icon, %help-circle-fill-svg-prop; - background-image: var(--help-circle-fill-svg); + @extend %with-icon, %help-16-svg-prop; + background-image: var(--help-16-svg); } %with-help-circle-fill-mask { - @extend %with-mask, %help-circle-fill-svg-prop; - -webkit-mask-image: var(--help-circle-fill-svg); - mask-image: var(--help-circle-fill-svg); + @extend %with-mask, %help-16-svg-prop; + -webkit-mask-image: var(--help-16-svg); + mask-image: var(--help-16-svg); } %with-help-circle-outline-icon { - @extend %with-icon, %help-circle-outline-svg-prop; - background-image: var(--help-circle-outline-svg); + @extend %with-icon, %help-16-svg-prop; + background-image: var(--help-16-svg); } %with-help-circle-outline-mask { - @extend %with-mask, %help-circle-outline-svg-prop; - -webkit-mask-image: var(--help-circle-outline-svg); - mask-image: var(--help-circle-outline-svg); + @extend %with-mask, %help-16-svg-prop; + -webkit-mask-image: var(--help-16-svg); + mask-image: var(--help-16-svg); } %with-hexagon-16-icon { @@ -4829,13 +5189,13 @@ } %with-history-icon { - @extend %with-icon, %history-svg-prop; - background-image: var(--history-svg); + @extend %with-icon, %history-16-svg-prop; + background-image: var(--history-16-svg); } %with-history-mask { - @extend %with-mask, %history-svg-prop; - -webkit-mask-image: var(--history-svg); - mask-image: var(--history-svg); + @extend %with-mask, %history-16-svg-prop; + -webkit-mask-image: var(--history-16-svg); + mask-image: var(--history-16-svg); } %with-home-16-icon { @@ -4979,23 +5339,23 @@ } %with-info-circle-fill-icon { - @extend %with-icon, %info-circle-fill-svg-prop; - background-image: var(--info-circle-fill-svg); + @extend %with-icon, %info-16-svg-prop; + background-image: var(--info-16-svg); } %with-info-circle-fill-mask { - @extend %with-mask, %info-circle-fill-svg-prop; - -webkit-mask-image: var(--info-circle-fill-svg); - mask-image: var(--info-circle-fill-svg); + @extend %with-mask, %info-16-svg-prop; + -webkit-mask-image: var(--info-16-svg); + mask-image: var(--info-16-svg); } %with-info-circle-outline-icon { - @extend %with-icon, %info-circle-outline-svg-prop; - background-image: var(--info-circle-outline-svg); + @extend %with-icon, %info-16-svg-prop; + background-image: var(--info-16-svg); } %with-info-circle-outline-mask { - @extend %with-mask, %info-circle-outline-svg-prop; - -webkit-mask-image: var(--info-circle-outline-svg); - mask-image: var(--info-circle-outline-svg); + @extend %with-mask, %info-16-svg-prop; + -webkit-mask-image: var(--info-16-svg); + mask-image: var(--info-16-svg); } %with-jump-link-16-icon { @@ -5059,13 +5419,33 @@ } %with-key-icon { - @extend %with-icon, %key-svg-prop; - background-image: var(--key-svg); + @extend %with-icon, %key-16-svg-prop; + background-image: var(--key-16-svg); } %with-key-mask { - @extend %with-mask, %key-svg-prop; - -webkit-mask-image: var(--key-svg); - mask-image: var(--key-svg); + @extend %with-mask, %key-16-svg-prop; + -webkit-mask-image: var(--key-16-svg); + mask-image: var(--key-16-svg); +} + +%with-keychain-16-icon { + @extend %with-icon, %keychain-16-svg-prop; + background-image: var(--keychain-16-svg); +} +%with-keychain-16-mask { + @extend %with-mask, %keychain-16-svg-prop; + -webkit-mask-image: var(--keychain-16-svg); + mask-image: var(--keychain-16-svg); +} + +%with-keychain-24-icon { + @extend %with-icon, %keychain-24-svg-prop; + background-image: var(--keychain-24-svg); +} +%with-keychain-24-mask { + @extend %with-mask, %keychain-24-svg-prop; + -webkit-mask-image: var(--keychain-24-svg); + mask-image: var(--keychain-24-svg); } %with-kubernetes-16-icon { @@ -5149,13 +5529,13 @@ } %with-layers-icon { - @extend %with-icon, %layers-svg-prop; - background-image: var(--layers-svg); + @extend %with-icon, %layers-16-svg-prop; + background-image: var(--layers-16-svg); } %with-layers-mask { - @extend %with-mask, %layers-svg-prop; - -webkit-mask-image: var(--layers-svg); - mask-image: var(--layers-svg); + @extend %with-mask, %layers-16-svg-prop; + -webkit-mask-image: var(--layers-16-svg); + mask-image: var(--layers-16-svg); } %with-layout-16-icon { @@ -5219,13 +5599,13 @@ } %with-learn-icon { - @extend %with-icon, %learn-svg-prop; - background-image: var(--learn-svg); + @extend %with-icon, %learn-16-svg-prop; + background-image: var(--learn-16-svg); } %with-learn-mask { - @extend %with-mask, %learn-svg-prop; - -webkit-mask-image: var(--learn-svg); - mask-image: var(--learn-svg); + @extend %with-mask, %learn-16-svg-prop; + -webkit-mask-image: var(--learn-16-svg); + mask-image: var(--learn-16-svg); } %with-line-chart-16-icon { @@ -5289,13 +5669,53 @@ } %with-link-icon { - @extend %with-icon, %link-svg-prop; - background-image: var(--link-svg); + @extend %with-icon, %link-16-svg-prop; + background-image: var(--link-16-svg); } %with-link-mask { - @extend %with-mask, %link-svg-prop; - -webkit-mask-image: var(--link-svg); - mask-image: var(--link-svg); + @extend %with-mask, %link-16-svg-prop; + -webkit-mask-image: var(--link-16-svg); + mask-image: var(--link-16-svg); +} + +%with-linkedin-16-icon { + @extend %with-icon, %linkedin-16-svg-prop; + background-image: var(--linkedin-16-svg); +} +%with-linkedin-16-mask { + @extend %with-mask, %linkedin-16-svg-prop; + -webkit-mask-image: var(--linkedin-16-svg); + mask-image: var(--linkedin-16-svg); +} + +%with-linkedin-24-icon { + @extend %with-icon, %linkedin-24-svg-prop; + background-image: var(--linkedin-24-svg); +} +%with-linkedin-24-mask { + @extend %with-mask, %linkedin-24-svg-prop; + -webkit-mask-image: var(--linkedin-24-svg); + mask-image: var(--linkedin-24-svg); +} + +%with-linkedin-color-16-icon { + @extend %with-icon, %linkedin-color-16-svg-prop; + background-image: var(--linkedin-color-16-svg); +} +%with-linkedin-color-16-mask { + @extend %with-mask, %linkedin-color-16-svg-prop; + -webkit-mask-image: var(--linkedin-color-16-svg); + mask-image: var(--linkedin-color-16-svg); +} + +%with-linkedin-color-24-icon { + @extend %with-icon, %linkedin-color-24-svg-prop; + background-image: var(--linkedin-color-24-svg); +} +%with-linkedin-color-24-mask { + @extend %with-mask, %linkedin-color-24-svg-prop; + -webkit-mask-image: var(--linkedin-color-24-svg); + mask-image: var(--linkedin-color-24-svg); } %with-list-16-icon { @@ -5318,6 +5738,26 @@ mask-image: var(--list-24-svg); } +%with-load-balancer-16-icon { + @extend %with-icon, %load-balancer-16-svg-prop; + background-image: var(--load-balancer-16-svg); +} +%with-load-balancer-16-mask { + @extend %with-mask, %load-balancer-16-svg-prop; + -webkit-mask-image: var(--load-balancer-16-svg); + mask-image: var(--load-balancer-16-svg); +} + +%with-load-balancer-24-icon { + @extend %with-icon, %load-balancer-24-svg-prop; + background-image: var(--load-balancer-24-svg); +} +%with-load-balancer-24-mask { + @extend %with-mask, %load-balancer-24-svg-prop; + -webkit-mask-image: var(--load-balancer-24-svg); + mask-image: var(--load-balancer-24-svg); +} + %with-loading-icon { @extend %with-icon, %loading-svg-prop; background-image: var(--loading-svg); @@ -5349,43 +5789,43 @@ } %with-lock-closed-fill-icon { - @extend %with-icon, %lock-closed-fill-svg-prop; - background-image: var(--lock-closed-fill-svg); + @extend %with-icon, %lock-fill-16-svg-prop; + background-image: var(--lock-fill-16-svg); } %with-lock-closed-fill-mask { - @extend %with-mask, %lock-closed-fill-svg-prop; - -webkit-mask-image: var(--lock-closed-fill-svg); - mask-image: var(--lock-closed-fill-svg); + @extend %with-mask, %lock-fill-16-svg-prop; + -webkit-mask-image: var(--lock-fill-16-svg); + mask-image: var(--lock-fill-16-svg); } %with-lock-closed-outline-icon { - @extend %with-icon, %lock-closed-outline-svg-prop; - background-image: var(--lock-closed-outline-svg); + @extend %with-icon, %lock-16-svg-prop; + background-image: var(--lock-16-svg); } %with-lock-closed-outline-mask { - @extend %with-mask, %lock-closed-outline-svg-prop; - -webkit-mask-image: var(--lock-closed-outline-svg); - mask-image: var(--lock-closed-outline-svg); + @extend %with-mask, %lock-16-svg-prop; + -webkit-mask-image: var(--lock-16-svg); + mask-image: var(--lock-16-svg); } %with-lock-closed-icon { - @extend %with-icon, %lock-closed-svg-prop; - background-image: var(--lock-closed-svg); + @extend %with-icon, %lock-fill-16-svg-prop; + background-image: var(--lock-fill-16-svg); } %with-lock-closed-mask { - @extend %with-mask, %lock-closed-svg-prop; - -webkit-mask-image: var(--lock-closed-svg); - mask-image: var(--lock-closed-svg); + @extend %with-mask, %lock-fill-16-svg-prop; + -webkit-mask-image: var(--lock-fill-16-svg); + mask-image: var(--lock-fill-16-svg); } %with-lock-disabled-icon { - @extend %with-icon, %lock-disabled-svg-prop; - background-image: var(--lock-disabled-svg); + @extend %with-icon, %lock-off-16-svg-prop; + background-image: var(--lock-off-16-svg); } %with-lock-disabled-mask { - @extend %with-mask, %lock-disabled-svg-prop; - -webkit-mask-image: var(--lock-disabled-svg); - mask-image: var(--lock-disabled-svg); + @extend %with-mask, %lock-off-16-svg-prop; + -webkit-mask-image: var(--lock-off-16-svg); + mask-image: var(--lock-off-16-svg); } %with-lock-fill-16-icon { @@ -5429,133 +5869,133 @@ } %with-lock-open-icon { - @extend %with-icon, %lock-open-svg-prop; - background-image: var(--lock-open-svg); + @extend %with-icon, %unlock-16-svg-prop; + background-image: var(--unlock-16-svg); } %with-lock-open-mask { - @extend %with-mask, %lock-open-svg-prop; - -webkit-mask-image: var(--lock-open-svg); - mask-image: var(--lock-open-svg); + @extend %with-mask, %unlock-16-svg-prop; + -webkit-mask-image: var(--unlock-16-svg); + mask-image: var(--unlock-16-svg); } %with-logo-alicloud-color-icon { - @extend %with-icon, %logo-alicloud-color-svg-prop; - background-image: var(--logo-alicloud-color-svg); + @extend %with-icon, %alibaba-color-16-svg-prop; + background-image: var(--alibaba-color-16-svg); } %with-logo-alicloud-color-mask { - @extend %with-mask, %logo-alicloud-color-svg-prop; - -webkit-mask-image: var(--logo-alicloud-color-svg); - mask-image: var(--logo-alicloud-color-svg); + @extend %with-mask, %alibaba-color-16-svg-prop; + -webkit-mask-image: var(--alibaba-color-16-svg); + mask-image: var(--alibaba-color-16-svg); } %with-logo-alicloud-monochrome-icon { - @extend %with-icon, %logo-alicloud-monochrome-svg-prop; - background-image: var(--logo-alicloud-monochrome-svg); + @extend %with-icon, %alibaba-16-svg-prop; + background-image: var(--alibaba-16-svg); } %with-logo-alicloud-monochrome-mask { - @extend %with-mask, %logo-alicloud-monochrome-svg-prop; - -webkit-mask-image: var(--logo-alicloud-monochrome-svg); - mask-image: var(--logo-alicloud-monochrome-svg); + @extend %with-mask, %alibaba-16-svg-prop; + -webkit-mask-image: var(--alibaba-16-svg); + mask-image: var(--alibaba-16-svg); } %with-logo-auth0-color-icon { - @extend %with-icon, %logo-auth0-color-svg-prop; - background-image: var(--logo-auth0-color-svg); + @extend %with-icon, %auth0-color-16-svg-prop; + background-image: var(--auth0-color-16-svg); } %with-logo-auth0-color-mask { - @extend %with-mask, %logo-auth0-color-svg-prop; - -webkit-mask-image: var(--logo-auth0-color-svg); - mask-image: var(--logo-auth0-color-svg); + @extend %with-mask, %auth0-color-16-svg-prop; + -webkit-mask-image: var(--auth0-color-16-svg); + mask-image: var(--auth0-color-16-svg); } %with-logo-aws-color-icon { - @extend %with-icon, %logo-aws-color-svg-prop; - background-image: var(--logo-aws-color-svg); + @extend %with-icon, %aws-color-16-svg-prop; + background-image: var(--aws-color-16-svg); } %with-logo-aws-color-mask { - @extend %with-mask, %logo-aws-color-svg-prop; - -webkit-mask-image: var(--logo-aws-color-svg); - mask-image: var(--logo-aws-color-svg); + @extend %with-mask, %aws-color-16-svg-prop; + -webkit-mask-image: var(--aws-color-16-svg); + mask-image: var(--aws-color-16-svg); } %with-logo-aws-monochrome-icon { - @extend %with-icon, %logo-aws-monochrome-svg-prop; - background-image: var(--logo-aws-monochrome-svg); + @extend %with-icon, %aws-16-svg-prop; + background-image: var(--aws-16-svg); } %with-logo-aws-monochrome-mask { - @extend %with-mask, %logo-aws-monochrome-svg-prop; - -webkit-mask-image: var(--logo-aws-monochrome-svg); - mask-image: var(--logo-aws-monochrome-svg); + @extend %with-mask, %aws-16-svg-prop; + -webkit-mask-image: var(--aws-16-svg); + mask-image: var(--aws-16-svg); } %with-logo-azure-color-icon { - @extend %with-icon, %logo-azure-color-svg-prop; - background-image: var(--logo-azure-color-svg); + @extend %with-icon, %azure-color-16-svg-prop; + background-image: var(--azure-color-16-svg); } %with-logo-azure-color-mask { - @extend %with-mask, %logo-azure-color-svg-prop; - -webkit-mask-image: var(--logo-azure-color-svg); - mask-image: var(--logo-azure-color-svg); + @extend %with-mask, %azure-color-16-svg-prop; + -webkit-mask-image: var(--azure-color-16-svg); + mask-image: var(--azure-color-16-svg); } %with-logo-azure-dev-ops-color-icon { - @extend %with-icon, %logo-azure-dev-ops-color-svg-prop; - background-image: var(--logo-azure-dev-ops-color-svg); + @extend %with-icon, %azure-devops-color-16-svg-prop; + background-image: var(--azure-devops-color-16-svg); } %with-logo-azure-dev-ops-color-mask { - @extend %with-mask, %logo-azure-dev-ops-color-svg-prop; - -webkit-mask-image: var(--logo-azure-dev-ops-color-svg); - mask-image: var(--logo-azure-dev-ops-color-svg); + @extend %with-mask, %azure-devops-color-16-svg-prop; + -webkit-mask-image: var(--azure-devops-color-16-svg); + mask-image: var(--azure-devops-color-16-svg); } %with-logo-azure-dev-ops-monochrome-icon { - @extend %with-icon, %logo-azure-dev-ops-monochrome-svg-prop; - background-image: var(--logo-azure-dev-ops-monochrome-svg); + @extend %with-icon, %azure-devops-16-svg-prop; + background-image: var(--azure-devops-16-svg); } %with-logo-azure-dev-ops-monochrome-mask { - @extend %with-mask, %logo-azure-dev-ops-monochrome-svg-prop; - -webkit-mask-image: var(--logo-azure-dev-ops-monochrome-svg); - mask-image: var(--logo-azure-dev-ops-monochrome-svg); + @extend %with-mask, %azure-devops-16-svg-prop; + -webkit-mask-image: var(--azure-devops-16-svg); + mask-image: var(--azure-devops-16-svg); } %with-logo-azure-monochrome-icon { - @extend %with-icon, %logo-azure-monochrome-svg-prop; - background-image: var(--logo-azure-monochrome-svg); + @extend %with-icon, %azure-16-svg-prop; + background-image: var(--azure-16-svg); } %with-logo-azure-monochrome-mask { - @extend %with-mask, %logo-azure-monochrome-svg-prop; - -webkit-mask-image: var(--logo-azure-monochrome-svg); - mask-image: var(--logo-azure-monochrome-svg); + @extend %with-mask, %azure-16-svg-prop; + -webkit-mask-image: var(--azure-16-svg); + mask-image: var(--azure-16-svg); } %with-logo-bitbucket-color-icon { - @extend %with-icon, %logo-bitbucket-color-svg-prop; - background-image: var(--logo-bitbucket-color-svg); + @extend %with-icon, %bitbucket-color-16-svg-prop; + background-image: var(--bitbucket-color-16-svg); } %with-logo-bitbucket-color-mask { - @extend %with-mask, %logo-bitbucket-color-svg-prop; - -webkit-mask-image: var(--logo-bitbucket-color-svg); - mask-image: var(--logo-bitbucket-color-svg); + @extend %with-mask, %bitbucket-color-16-svg-prop; + -webkit-mask-image: var(--bitbucket-color-16-svg); + mask-image: var(--bitbucket-color-16-svg); } %with-logo-bitbucket-monochrome-icon { - @extend %with-icon, %logo-bitbucket-monochrome-svg-prop; - background-image: var(--logo-bitbucket-monochrome-svg); + @extend %with-icon, %bitbucket-16-svg-prop; + background-image: var(--bitbucket-16-svg); } %with-logo-bitbucket-monochrome-mask { - @extend %with-mask, %logo-bitbucket-monochrome-svg-prop; - -webkit-mask-image: var(--logo-bitbucket-monochrome-svg); - mask-image: var(--logo-bitbucket-monochrome-svg); + @extend %with-mask, %bitbucket-16-svg-prop; + -webkit-mask-image: var(--bitbucket-16-svg); + mask-image: var(--bitbucket-16-svg); } %with-logo-consul-color-icon { - @extend %with-icon, %logo-consul-color-svg-prop; - background-image: var(--logo-consul-color-svg); + @extend %with-icon, %consul-color-16-svg-prop; + background-image: var(--consul-color-16-svg); } %with-logo-consul-color-mask { - @extend %with-mask, %logo-consul-color-svg-prop; - -webkit-mask-image: var(--logo-consul-color-svg); - mask-image: var(--logo-consul-color-svg); + @extend %with-mask, %consul-color-16-svg-prop; + -webkit-mask-image: var(--consul-color-16-svg); + mask-image: var(--consul-color-16-svg); } %with-logo-ember-circle-color-icon { @@ -5569,63 +6009,63 @@ } %with-logo-gcp-color-icon { - @extend %with-icon, %logo-gcp-color-svg-prop; - background-image: var(--logo-gcp-color-svg); + @extend %with-icon, %gcp-color-16-svg-prop; + background-image: var(--gcp-color-16-svg); } %with-logo-gcp-color-mask { - @extend %with-mask, %logo-gcp-color-svg-prop; - -webkit-mask-image: var(--logo-gcp-color-svg); - mask-image: var(--logo-gcp-color-svg); + @extend %with-mask, %gcp-color-16-svg-prop; + -webkit-mask-image: var(--gcp-color-16-svg); + mask-image: var(--gcp-color-16-svg); } %with-logo-gcp-monochrome-icon { - @extend %with-icon, %logo-gcp-monochrome-svg-prop; - background-image: var(--logo-gcp-monochrome-svg); + @extend %with-icon, %gcp-16-svg-prop; + background-image: var(--gcp-16-svg); } %with-logo-gcp-monochrome-mask { - @extend %with-mask, %logo-gcp-monochrome-svg-prop; - -webkit-mask-image: var(--logo-gcp-monochrome-svg); - mask-image: var(--logo-gcp-monochrome-svg); + @extend %with-mask, %gcp-16-svg-prop; + -webkit-mask-image: var(--gcp-16-svg); + mask-image: var(--gcp-16-svg); } %with-logo-github-color-icon { - @extend %with-icon, %logo-github-color-svg-prop; - background-image: var(--logo-github-color-svg); + @extend %with-icon, %github-color-16-svg-prop; + background-image: var(--github-color-16-svg); } %with-logo-github-color-mask { - @extend %with-mask, %logo-github-color-svg-prop; - -webkit-mask-image: var(--logo-github-color-svg); - mask-image: var(--logo-github-color-svg); + @extend %with-mask, %github-color-16-svg-prop; + -webkit-mask-image: var(--github-color-16-svg); + mask-image: var(--github-color-16-svg); } %with-logo-github-monochrome-icon { - @extend %with-icon, %logo-github-monochrome-svg-prop; - background-image: var(--logo-github-monochrome-svg); + @extend %with-icon, %github-16-svg-prop; + background-image: var(--github-16-svg); } %with-logo-github-monochrome-mask { - @extend %with-mask, %logo-github-monochrome-svg-prop; - -webkit-mask-image: var(--logo-github-monochrome-svg); - mask-image: var(--logo-github-monochrome-svg); + @extend %with-mask, %github-16-svg-prop; + -webkit-mask-image: var(--github-16-svg); + mask-image: var(--github-16-svg); } %with-logo-gitlab-color-icon { - @extend %with-icon, %logo-gitlab-color-svg-prop; - background-image: var(--logo-gitlab-color-svg); + @extend %with-icon, %gitlab-color-16-svg-prop; + background-image: var(--gitlab-color-16-svg); } %with-logo-gitlab-color-mask { - @extend %with-mask, %logo-gitlab-color-svg-prop; - -webkit-mask-image: var(--logo-gitlab-color-svg); - mask-image: var(--logo-gitlab-color-svg); + @extend %with-mask, %gitlab-color-16-svg-prop; + -webkit-mask-image: var(--gitlab-color-16-svg); + mask-image: var(--gitlab-color-16-svg); } %with-logo-gitlab-monochrome-icon { - @extend %with-icon, %logo-gitlab-monochrome-svg-prop; - background-image: var(--logo-gitlab-monochrome-svg); + @extend %with-icon, %gitlab-16-svg-prop; + background-image: var(--gitlab-16-svg); } %with-logo-gitlab-monochrome-mask { - @extend %with-mask, %logo-gitlab-monochrome-svg-prop; - -webkit-mask-image: var(--logo-gitlab-monochrome-svg); - mask-image: var(--logo-gitlab-monochrome-svg); + @extend %with-mask, %gitlab-16-svg-prop; + -webkit-mask-image: var(--gitlab-16-svg); + mask-image: var(--gitlab-16-svg); } %with-logo-glimmer-color-icon { @@ -5639,23 +6079,23 @@ } %with-logo-google-color-icon { - @extend %with-icon, %logo-google-color-svg-prop; - background-image: var(--logo-google-color-svg); + @extend %with-icon, %google-color-16-svg-prop; + background-image: var(--google-color-16-svg); } %with-logo-google-color-mask { - @extend %with-mask, %logo-google-color-svg-prop; - -webkit-mask-image: var(--logo-google-color-svg); - mask-image: var(--logo-google-color-svg); + @extend %with-mask, %google-color-16-svg-prop; + -webkit-mask-image: var(--google-color-16-svg); + mask-image: var(--google-color-16-svg); } %with-logo-google-monochrome-icon { - @extend %with-icon, %logo-google-monochrome-svg-prop; - background-image: var(--logo-google-monochrome-svg); + @extend %with-icon, %google-16-svg-prop; + background-image: var(--google-16-svg); } %with-logo-google-monochrome-mask { - @extend %with-mask, %logo-google-monochrome-svg-prop; - -webkit-mask-image: var(--logo-google-monochrome-svg); - mask-image: var(--logo-google-monochrome-svg); + @extend %with-mask, %google-16-svg-prop; + -webkit-mask-image: var(--google-16-svg); + mask-image: var(--google-16-svg); } %with-logo-hashicorp-color-icon { @@ -5679,43 +6119,43 @@ } %with-logo-kubernetes-color-icon { - @extend %with-icon, %logo-kubernetes-color-svg-prop; - background-image: var(--logo-kubernetes-color-svg); + @extend %with-icon, %kubernetes-color-16-svg-prop; + background-image: var(--kubernetes-color-16-svg); } %with-logo-kubernetes-color-mask { - @extend %with-mask, %logo-kubernetes-color-svg-prop; - -webkit-mask-image: var(--logo-kubernetes-color-svg); - mask-image: var(--logo-kubernetes-color-svg); + @extend %with-mask, %kubernetes-color-16-svg-prop; + -webkit-mask-image: var(--kubernetes-color-16-svg); + mask-image: var(--kubernetes-color-16-svg); } %with-logo-kubernetes-monochrome-icon { - @extend %with-icon, %logo-kubernetes-monochrome-svg-prop; - background-image: var(--logo-kubernetes-monochrome-svg); + @extend %with-icon, %kubernetes-16-svg-prop; + background-image: var(--kubernetes-16-svg); } %with-logo-kubernetes-monochrome-mask { - @extend %with-mask, %logo-kubernetes-monochrome-svg-prop; - -webkit-mask-image: var(--logo-kubernetes-monochrome-svg); - mask-image: var(--logo-kubernetes-monochrome-svg); + @extend %with-mask, %kubernetes-16-svg-prop; + -webkit-mask-image: var(--kubernetes-16-svg); + mask-image: var(--kubernetes-16-svg); } %with-logo-microsoft-color-icon { - @extend %with-icon, %logo-microsoft-color-svg-prop; - background-image: var(--logo-microsoft-color-svg); + @extend %with-icon, %microsoft-color-16-svg-prop; + background-image: var(--microsoft-color-16-svg); } %with-logo-microsoft-color-mask { - @extend %with-mask, %logo-microsoft-color-svg-prop; - -webkit-mask-image: var(--logo-microsoft-color-svg); - mask-image: var(--logo-microsoft-color-svg); + @extend %with-mask, %microsoft-color-16-svg-prop; + -webkit-mask-image: var(--microsoft-color-16-svg); + mask-image: var(--microsoft-color-16-svg); } %with-logo-nomad-color-icon { - @extend %with-icon, %logo-nomad-color-svg-prop; - background-image: var(--logo-nomad-color-svg); + @extend %with-icon, %nomad-color-16-svg-prop; + background-image: var(--nomad-color-16-svg); } %with-logo-nomad-color-mask { - @extend %with-mask, %logo-nomad-color-svg-prop; - -webkit-mask-image: var(--logo-nomad-color-svg); - mask-image: var(--logo-nomad-color-svg); + @extend %with-mask, %nomad-color-16-svg-prop; + -webkit-mask-image: var(--nomad-color-16-svg); + mask-image: var(--nomad-color-16-svg); } %with-logo-oidc-color-icon { @@ -5729,63 +6169,63 @@ } %with-logo-okta-color-icon { - @extend %with-icon, %logo-okta-color-svg-prop; - background-image: var(--logo-okta-color-svg); + @extend %with-icon, %okta-color-16-svg-prop; + background-image: var(--okta-color-16-svg); } %with-logo-okta-color-mask { - @extend %with-mask, %logo-okta-color-svg-prop; - -webkit-mask-image: var(--logo-okta-color-svg); - mask-image: var(--logo-okta-color-svg); + @extend %with-mask, %okta-color-16-svg-prop; + -webkit-mask-image: var(--okta-color-16-svg); + mask-image: var(--okta-color-16-svg); } %with-logo-oracle-color-icon { - @extend %with-icon, %logo-oracle-color-svg-prop; - background-image: var(--logo-oracle-color-svg); + @extend %with-icon, %oracle-color-16-svg-prop; + background-image: var(--oracle-color-16-svg); } %with-logo-oracle-color-mask { - @extend %with-mask, %logo-oracle-color-svg-prop; - -webkit-mask-image: var(--logo-oracle-color-svg); - mask-image: var(--logo-oracle-color-svg); + @extend %with-mask, %oracle-color-16-svg-prop; + -webkit-mask-image: var(--oracle-color-16-svg); + mask-image: var(--oracle-color-16-svg); } %with-logo-oracle-monochrome-icon { - @extend %with-icon, %logo-oracle-monochrome-svg-prop; - background-image: var(--logo-oracle-monochrome-svg); + @extend %with-icon, %oracle-16-svg-prop; + background-image: var(--oracle-16-svg); } %with-logo-oracle-monochrome-mask { - @extend %with-mask, %logo-oracle-monochrome-svg-prop; - -webkit-mask-image: var(--logo-oracle-monochrome-svg); - mask-image: var(--logo-oracle-monochrome-svg); + @extend %with-mask, %oracle-16-svg-prop; + -webkit-mask-image: var(--oracle-16-svg); + mask-image: var(--oracle-16-svg); } %with-logo-slack-color-icon { - @extend %with-icon, %logo-slack-color-svg-prop; - background-image: var(--logo-slack-color-svg); + @extend %with-icon, %slack-color-16-svg-prop; + background-image: var(--slack-color-16-svg); } %with-logo-slack-color-mask { - @extend %with-mask, %logo-slack-color-svg-prop; - -webkit-mask-image: var(--logo-slack-color-svg); - mask-image: var(--logo-slack-color-svg); + @extend %with-mask, %slack-color-16-svg-prop; + -webkit-mask-image: var(--slack-color-16-svg); + mask-image: var(--slack-color-16-svg); } %with-logo-slack-monochrome-icon { - @extend %with-icon, %logo-slack-monochrome-svg-prop; - background-image: var(--logo-slack-monochrome-svg); + @extend %with-icon, %slack-16-svg-prop; + background-image: var(--slack-16-svg); } %with-logo-slack-monochrome-mask { - @extend %with-mask, %logo-slack-monochrome-svg-prop; - -webkit-mask-image: var(--logo-slack-monochrome-svg); - mask-image: var(--logo-slack-monochrome-svg); + @extend %with-mask, %slack-16-svg-prop; + -webkit-mask-image: var(--slack-16-svg); + mask-image: var(--slack-16-svg); } %with-logo-terraform-color-icon { - @extend %with-icon, %logo-terraform-color-svg-prop; - background-image: var(--logo-terraform-color-svg); + @extend %with-icon, %terraform-color-16-svg-prop; + background-image: var(--terraform-color-16-svg); } %with-logo-terraform-color-mask { - @extend %with-mask, %logo-terraform-color-svg-prop; - -webkit-mask-image: var(--logo-terraform-color-svg); - mask-image: var(--logo-terraform-color-svg); + @extend %with-mask, %terraform-color-16-svg-prop; + -webkit-mask-image: var(--terraform-color-16-svg); + mask-image: var(--terraform-color-16-svg); } %with-logo-vault-color-icon { @@ -5799,23 +6239,23 @@ } %with-logo-vmware-color-icon { - @extend %with-icon, %logo-vmware-color-svg-prop; - background-image: var(--logo-vmware-color-svg); + @extend %with-icon, %vmware-color-16-svg-prop; + background-image: var(--vmware-color-16-svg); } %with-logo-vmware-color-mask { - @extend %with-mask, %logo-vmware-color-svg-prop; - -webkit-mask-image: var(--logo-vmware-color-svg); - mask-image: var(--logo-vmware-color-svg); + @extend %with-mask, %vmware-color-16-svg-prop; + -webkit-mask-image: var(--vmware-color-16-svg); + mask-image: var(--vmware-color-16-svg); } %with-logo-vmware-monochrome-icon { - @extend %with-icon, %logo-vmware-monochrome-svg-prop; - background-image: var(--logo-vmware-monochrome-svg); + @extend %with-icon, %vmware-16-svg-prop; + background-image: var(--vmware-16-svg); } %with-logo-vmware-monochrome-mask { - @extend %with-mask, %logo-vmware-monochrome-svg-prop; - -webkit-mask-image: var(--logo-vmware-monochrome-svg); - mask-image: var(--logo-vmware-monochrome-svg); + @extend %with-mask, %vmware-16-svg-prop; + -webkit-mask-image: var(--vmware-16-svg); + mask-image: var(--vmware-16-svg); } %with-mail-16-icon { @@ -5858,6 +6298,26 @@ mask-image: var(--mail-open-24-svg); } +%with-mainframe-16-icon { + @extend %with-icon, %mainframe-16-svg-prop; + background-image: var(--mainframe-16-svg); +} +%with-mainframe-16-mask { + @extend %with-mask, %mainframe-16-svg-prop; + -webkit-mask-image: var(--mainframe-16-svg); + mask-image: var(--mainframe-16-svg); +} + +%with-mainframe-24-icon { + @extend %with-icon, %mainframe-24-svg-prop; + background-image: var(--mainframe-24-svg); +} +%with-mainframe-24-mask { + @extend %with-mask, %mainframe-24-svg-prop; + -webkit-mask-image: var(--mainframe-24-svg); + mask-image: var(--mainframe-24-svg); +} + %with-map-16-icon { @extend %with-icon, %map-16-svg-prop; background-image: var(--map-16-svg); @@ -5979,13 +6439,13 @@ } %with-menu-icon { - @extend %with-icon, %menu-svg-prop; - background-image: var(--menu-svg); + @extend %with-icon, %menu-16-svg-prop; + background-image: var(--menu-16-svg); } %with-menu-mask { - @extend %with-mask, %menu-svg-prop; - -webkit-mask-image: var(--menu-svg); - mask-image: var(--menu-svg); + @extend %with-mask, %menu-16-svg-prop; + -webkit-mask-image: var(--menu-16-svg); + mask-image: var(--menu-16-svg); } %with-mesh-16-icon { @@ -6009,13 +6469,13 @@ } %with-mesh-icon { - @extend %with-icon, %mesh-svg-prop; - background-image: var(--mesh-svg); + @extend %with-icon, %mesh-16-svg-prop; + background-image: var(--mesh-16-svg); } %with-mesh-mask { - @extend %with-mask, %mesh-svg-prop; - -webkit-mask-image: var(--mesh-svg); - mask-image: var(--mesh-svg); + @extend %with-mask, %mesh-16-svg-prop; + -webkit-mask-image: var(--mesh-16-svg); + mask-image: var(--mesh-16-svg); } %with-message-circle-16-icon { @@ -6099,13 +6559,13 @@ } %with-message-icon { - @extend %with-icon, %message-svg-prop; - background-image: var(--message-svg); + @extend %with-icon, %message-square-fill-16-svg-prop; + background-image: var(--message-square-fill-16-svg); } %with-message-mask { - @extend %with-mask, %message-svg-prop; - -webkit-mask-image: var(--message-svg); - mask-image: var(--message-svg); + @extend %with-mask, %message-square-fill-16-svg-prop; + -webkit-mask-image: var(--message-square-fill-16-svg); + mask-image: var(--message-square-fill-16-svg); } %with-mic-16-icon { @@ -6289,33 +6749,33 @@ } %with-minus-circle-fill-icon { - @extend %with-icon, %minus-circle-fill-svg-prop; - background-image: var(--minus-circle-fill-svg); + @extend %with-icon, %minus-circle-16-svg-prop; + background-image: var(--minus-circle-16-svg); } %with-minus-circle-fill-mask { - @extend %with-mask, %minus-circle-fill-svg-prop; - -webkit-mask-image: var(--minus-circle-fill-svg); - mask-image: var(--minus-circle-fill-svg); + @extend %with-mask, %minus-circle-16-svg-prop; + -webkit-mask-image: var(--minus-circle-16-svg); + mask-image: var(--minus-circle-16-svg); } %with-minus-circle-outline-icon { - @extend %with-icon, %minus-circle-outline-svg-prop; - background-image: var(--minus-circle-outline-svg); + @extend %with-icon, %minus-circle-16-svg-prop; + background-image: var(--minus-circle-16-svg); } %with-minus-circle-outline-mask { - @extend %with-mask, %minus-circle-outline-svg-prop; - -webkit-mask-image: var(--minus-circle-outline-svg); - mask-image: var(--minus-circle-outline-svg); + @extend %with-mask, %minus-circle-16-svg-prop; + -webkit-mask-image: var(--minus-circle-16-svg); + mask-image: var(--minus-circle-16-svg); } %with-minus-plain-icon { - @extend %with-icon, %minus-plain-svg-prop; - background-image: var(--minus-plain-svg); + @extend %with-icon, %minus-16-svg-prop; + background-image: var(--minus-16-svg); } %with-minus-plain-mask { - @extend %with-mask, %minus-plain-svg-prop; - -webkit-mask-image: var(--minus-plain-svg); - mask-image: var(--minus-plain-svg); + @extend %with-mask, %minus-16-svg-prop; + -webkit-mask-image: var(--minus-16-svg); + mask-image: var(--minus-16-svg); } %with-minus-plus-16-icon { @@ -6399,13 +6859,13 @@ } %with-minus-square-fill-icon { - @extend %with-icon, %minus-square-fill-svg-prop; - background-image: var(--minus-square-fill-svg); + @extend %with-icon, %minus-square-16-svg-prop; + background-image: var(--minus-square-16-svg); } %with-minus-square-fill-mask { - @extend %with-mask, %minus-square-fill-svg-prop; - -webkit-mask-image: var(--minus-square-fill-svg); - mask-image: var(--minus-square-fill-svg); + @extend %with-mask, %minus-square-16-svg-prop; + -webkit-mask-image: var(--minus-square-16-svg); + mask-image: var(--minus-square-16-svg); } %with-module-16-icon { @@ -6429,13 +6889,13 @@ } %with-module-icon { - @extend %with-icon, %module-svg-prop; - background-image: var(--module-svg); + @extend %with-icon, %module-16-svg-prop; + background-image: var(--module-16-svg); } %with-module-mask { - @extend %with-mask, %module-svg-prop; - -webkit-mask-image: var(--module-svg); - mask-image: var(--module-svg); + @extend %with-mask, %module-16-svg-prop; + -webkit-mask-image: var(--module-16-svg); + mask-image: var(--module-16-svg); } %with-monitor-16-icon { @@ -6499,13 +6959,13 @@ } %with-more-horizontal-icon { - @extend %with-icon, %more-horizontal-svg-prop; - background-image: var(--more-horizontal-svg); + @extend %with-icon, %more-horizontal-16-svg-prop; + background-image: var(--more-horizontal-16-svg); } %with-more-horizontal-mask { - @extend %with-mask, %more-horizontal-svg-prop; - -webkit-mask-image: var(--more-horizontal-svg); - mask-image: var(--more-horizontal-svg); + @extend %with-mask, %more-horizontal-16-svg-prop; + -webkit-mask-image: var(--more-horizontal-16-svg); + mask-image: var(--more-horizontal-16-svg); } %with-more-vertical-16-icon { @@ -6529,13 +6989,13 @@ } %with-more-vertical-icon { - @extend %with-icon, %more-vertical-svg-prop; - background-image: var(--more-vertical-svg); + @extend %with-icon, %more-vertical-16-svg-prop; + background-image: var(--more-vertical-16-svg); } %with-more-vertical-mask { - @extend %with-mask, %more-vertical-svg-prop; - -webkit-mask-image: var(--more-vertical-svg); - mask-image: var(--more-vertical-svg); + @extend %with-mask, %more-vertical-16-svg-prop; + -webkit-mask-image: var(--more-vertical-16-svg); + mask-image: var(--more-vertical-16-svg); } %with-mouse-pointer-16-icon { @@ -6718,34 +7178,74 @@ mask-image: var(--node-24-svg); } +%with-nomad-16-icon { + @extend %with-icon, %nomad-16-svg-prop; + background-image: var(--nomad-16-svg); +} +%with-nomad-16-mask { + @extend %with-mask, %nomad-16-svg-prop; + -webkit-mask-image: var(--nomad-16-svg); + mask-image: var(--nomad-16-svg); +} + +%with-nomad-24-icon { + @extend %with-icon, %nomad-24-svg-prop; + background-image: var(--nomad-24-svg); +} +%with-nomad-24-mask { + @extend %with-mask, %nomad-24-svg-prop; + -webkit-mask-image: var(--nomad-24-svg); + mask-image: var(--nomad-24-svg); +} + +%with-nomad-color-16-icon { + @extend %with-icon, %nomad-color-16-svg-prop; + background-image: var(--nomad-color-16-svg); +} +%with-nomad-color-16-mask { + @extend %with-mask, %nomad-color-16-svg-prop; + -webkit-mask-image: var(--nomad-color-16-svg); + mask-image: var(--nomad-color-16-svg); +} + +%with-nomad-color-24-icon { + @extend %with-icon, %nomad-color-24-svg-prop; + background-image: var(--nomad-color-24-svg); +} +%with-nomad-color-24-mask { + @extend %with-mask, %nomad-color-24-svg-prop; + -webkit-mask-image: var(--nomad-color-24-svg); + mask-image: var(--nomad-color-24-svg); +} + %with-notification-disabled-icon { - @extend %with-icon, %notification-disabled-svg-prop; - background-image: var(--notification-disabled-svg); + @extend %with-icon, %bell-off-16-svg-prop; + background-image: var(--bell-off-16-svg); } %with-notification-disabled-mask { - @extend %with-mask, %notification-disabled-svg-prop; - -webkit-mask-image: var(--notification-disabled-svg); - mask-image: var(--notification-disabled-svg); + @extend %with-mask, %bell-off-16-svg-prop; + -webkit-mask-image: var(--bell-off-16-svg); + mask-image: var(--bell-off-16-svg); } %with-notification-fill-icon { - @extend %with-icon, %notification-fill-svg-prop; - background-image: var(--notification-fill-svg); + @extend %with-icon, %bell-active-fill-16-svg-prop; + background-image: var(--bell-active-fill-16-svg); } %with-notification-fill-mask { - @extend %with-mask, %notification-fill-svg-prop; - -webkit-mask-image: var(--notification-fill-svg); - mask-image: var(--notification-fill-svg); + @extend %with-mask, %bell-active-fill-16-svg-prop; + -webkit-mask-image: var(--bell-active-fill-16-svg); + mask-image: var(--bell-active-fill-16-svg); } %with-notification-outline-icon { - @extend %with-icon, %notification-outline-svg-prop; - background-image: var(--notification-outline-svg); + @extend %with-icon, %bell-16-svg-prop; + background-image: var(--bell-16-svg); } %with-notification-outline-mask { - @extend %with-mask, %notification-outline-svg-prop; - -webkit-mask-image: var(--notification-outline-svg); - mask-image: var(--notification-outline-svg); + @extend %with-mask, %bell-16-svg-prop; + -webkit-mask-image: var(--bell-16-svg); + mask-image: var(--bell-16-svg); } %with-octagon-16-icon { @@ -6889,13 +7389,53 @@ } %with-outline-icon { - @extend %with-icon, %outline-svg-prop; - background-image: var(--outline-svg); + @extend %with-icon, %outline-16-svg-prop; + background-image: var(--outline-16-svg); } %with-outline-mask { - @extend %with-mask, %outline-svg-prop; - -webkit-mask-image: var(--outline-svg); - mask-image: var(--outline-svg); + @extend %with-mask, %outline-16-svg-prop; + -webkit-mask-image: var(--outline-16-svg); + mask-image: var(--outline-16-svg); +} + +%with-pack-16-icon { + @extend %with-icon, %pack-16-svg-prop; + background-image: var(--pack-16-svg); +} +%with-pack-16-mask { + @extend %with-mask, %pack-16-svg-prop; + -webkit-mask-image: var(--pack-16-svg); + mask-image: var(--pack-16-svg); +} + +%with-pack-24-icon { + @extend %with-icon, %pack-24-svg-prop; + background-image: var(--pack-24-svg); +} +%with-pack-24-mask { + @extend %with-mask, %pack-24-svg-prop; + -webkit-mask-image: var(--pack-24-svg); + mask-image: var(--pack-24-svg); +} + +%with-pack-color-16-icon { + @extend %with-icon, %pack-color-16-svg-prop; + background-image: var(--pack-color-16-svg); +} +%with-pack-color-16-mask { + @extend %with-mask, %pack-color-16-svg-prop; + -webkit-mask-image: var(--pack-color-16-svg); + mask-image: var(--pack-color-16-svg); +} + +%with-pack-color-24-icon { + @extend %with-icon, %pack-color-24-svg-prop; + background-image: var(--pack-color-24-svg); +} +%with-pack-color-24-mask { + @extend %with-mask, %pack-color-24-svg-prop; + -webkit-mask-image: var(--pack-color-24-svg); + mask-image: var(--pack-color-24-svg); } %with-package-16-icon { @@ -6918,14 +7458,54 @@ mask-image: var(--package-24-svg); } +%with-packer-16-icon { + @extend %with-icon, %packer-16-svg-prop; + background-image: var(--packer-16-svg); +} +%with-packer-16-mask { + @extend %with-mask, %packer-16-svg-prop; + -webkit-mask-image: var(--packer-16-svg); + mask-image: var(--packer-16-svg); +} + +%with-packer-24-icon { + @extend %with-icon, %packer-24-svg-prop; + background-image: var(--packer-24-svg); +} +%with-packer-24-mask { + @extend %with-mask, %packer-24-svg-prop; + -webkit-mask-image: var(--packer-24-svg); + mask-image: var(--packer-24-svg); +} + +%with-packer-color-16-icon { + @extend %with-icon, %packer-color-16-svg-prop; + background-image: var(--packer-color-16-svg); +} +%with-packer-color-16-mask { + @extend %with-mask, %packer-color-16-svg-prop; + -webkit-mask-image: var(--packer-color-16-svg); + mask-image: var(--packer-color-16-svg); +} + +%with-packer-color-24-icon { + @extend %with-icon, %packer-color-24-svg-prop; + background-image: var(--packer-color-24-svg); +} +%with-packer-color-24-mask { + @extend %with-mask, %packer-color-24-svg-prop; + -webkit-mask-image: var(--packer-color-24-svg); + mask-image: var(--packer-color-24-svg); +} + %with-page-outline-icon { - @extend %with-icon, %page-outline-svg-prop; - background-image: var(--page-outline-svg); + @extend %with-icon, %outline-16-svg-prop; + background-image: var(--outline-16-svg); } %with-page-outline-mask { - @extend %with-mask, %page-outline-svg-prop; - -webkit-mask-image: var(--page-outline-svg); - mask-image: var(--page-outline-svg); + @extend %with-mask, %outline-16-svg-prop; + -webkit-mask-image: var(--outline-16-svg); + mask-image: var(--outline-16-svg); } %with-paperclip-16-icon { @@ -6949,13 +7529,13 @@ } %with-partner-icon { - @extend %with-icon, %partner-svg-prop; - background-image: var(--partner-svg); + @extend %with-icon, %users-16-svg-prop; + background-image: var(--users-16-svg); } %with-partner-mask { - @extend %with-mask, %partner-svg-prop; - -webkit-mask-image: var(--partner-svg); - mask-image: var(--partner-svg); + @extend %with-mask, %users-16-svg-prop; + -webkit-mask-image: var(--users-16-svg); + mask-image: var(--users-16-svg); } %with-path-16-icon { @@ -6979,13 +7559,13 @@ } %with-path-icon { - @extend %with-icon, %path-svg-prop; - background-image: var(--path-svg); + @extend %with-icon, %path-16-svg-prop; + background-image: var(--path-16-svg); } %with-path-mask { - @extend %with-mask, %path-svg-prop; - -webkit-mask-image: var(--path-svg); - mask-image: var(--path-svg); + @extend %with-mask, %path-16-svg-prop; + -webkit-mask-image: var(--path-16-svg); + mask-image: var(--path-16-svg); } %with-pause-16-icon { @@ -7209,33 +7789,33 @@ } %with-play-fill-icon { - @extend %with-icon, %play-fill-svg-prop; - background-image: var(--play-fill-svg); + @extend %with-icon, %play-circle-16-svg-prop; + background-image: var(--play-circle-16-svg); } %with-play-fill-mask { - @extend %with-mask, %play-fill-svg-prop; - -webkit-mask-image: var(--play-fill-svg); - mask-image: var(--play-fill-svg); + @extend %with-mask, %play-circle-16-svg-prop; + -webkit-mask-image: var(--play-circle-16-svg); + mask-image: var(--play-circle-16-svg); } %with-play-outline-icon { - @extend %with-icon, %play-outline-svg-prop; - background-image: var(--play-outline-svg); + @extend %with-icon, %play-circle-16-svg-prop; + background-image: var(--play-circle-16-svg); } %with-play-outline-mask { - @extend %with-mask, %play-outline-svg-prop; - -webkit-mask-image: var(--play-outline-svg); - mask-image: var(--play-outline-svg); + @extend %with-mask, %play-circle-16-svg-prop; + -webkit-mask-image: var(--play-circle-16-svg); + mask-image: var(--play-circle-16-svg); } %with-play-plain-icon { - @extend %with-icon, %play-plain-svg-prop; - background-image: var(--play-plain-svg); + @extend %with-icon, %play-16-svg-prop; + background-image: var(--play-16-svg); } %with-play-plain-mask { - @extend %with-mask, %play-plain-svg-prop; - -webkit-mask-image: var(--play-plain-svg); - mask-image: var(--play-plain-svg); + @extend %with-mask, %play-16-svg-prop; + -webkit-mask-image: var(--play-16-svg); + mask-image: var(--play-16-svg); } %with-plus-16-icon { @@ -7279,33 +7859,33 @@ } %with-plus-circle-fill-icon { - @extend %with-icon, %plus-circle-fill-svg-prop; - background-image: var(--plus-circle-fill-svg); + @extend %with-icon, %plus-circle-16-svg-prop; + background-image: var(--plus-circle-16-svg); } %with-plus-circle-fill-mask { - @extend %with-mask, %plus-circle-fill-svg-prop; - -webkit-mask-image: var(--plus-circle-fill-svg); - mask-image: var(--plus-circle-fill-svg); + @extend %with-mask, %plus-circle-16-svg-prop; + -webkit-mask-image: var(--plus-circle-16-svg); + mask-image: var(--plus-circle-16-svg); } %with-plus-circle-outline-icon { - @extend %with-icon, %plus-circle-outline-svg-prop; - background-image: var(--plus-circle-outline-svg); + @extend %with-icon, %plus-circle-16-svg-prop; + background-image: var(--plus-circle-16-svg); } %with-plus-circle-outline-mask { - @extend %with-mask, %plus-circle-outline-svg-prop; - -webkit-mask-image: var(--plus-circle-outline-svg); - mask-image: var(--plus-circle-outline-svg); + @extend %with-mask, %plus-circle-16-svg-prop; + -webkit-mask-image: var(--plus-circle-16-svg); + mask-image: var(--plus-circle-16-svg); } %with-plus-plain-icon { - @extend %with-icon, %plus-plain-svg-prop; - background-image: var(--plus-plain-svg); + @extend %with-icon, %plus-16-svg-prop; + background-image: var(--plus-16-svg); } %with-plus-plain-mask { - @extend %with-mask, %plus-plain-svg-prop; - -webkit-mask-image: var(--plus-plain-svg); - mask-image: var(--plus-plain-svg); + @extend %with-mask, %plus-16-svg-prop; + -webkit-mask-image: var(--plus-16-svg); + mask-image: var(--plus-16-svg); } %with-plus-square-16-icon { @@ -7329,13 +7909,13 @@ } %with-plus-square-fill-icon { - @extend %with-icon, %plus-square-fill-svg-prop; - background-image: var(--plus-square-fill-svg); + @extend %with-icon, %plus-square-16-svg-prop; + background-image: var(--plus-square-16-svg); } %with-plus-square-fill-mask { - @extend %with-mask, %plus-square-fill-svg-prop; - -webkit-mask-image: var(--plus-square-fill-svg); - mask-image: var(--plus-square-fill-svg); + @extend %with-mask, %plus-square-16-svg-prop; + -webkit-mask-image: var(--plus-square-16-svg); + mask-image: var(--plus-square-16-svg); } %with-port-icon { @@ -7419,33 +7999,33 @@ } %with-provider-icon { - @extend %with-icon, %provider-svg-prop; - background-image: var(--provider-svg); + @extend %with-icon, %provider-16-svg-prop; + background-image: var(--provider-16-svg); } %with-provider-mask { - @extend %with-mask, %provider-svg-prop; - -webkit-mask-image: var(--provider-svg); - mask-image: var(--provider-svg); + @extend %with-mask, %provider-16-svg-prop; + -webkit-mask-image: var(--provider-16-svg); + mask-image: var(--provider-16-svg); } %with-public-default-icon { - @extend %with-icon, %public-default-svg-prop; - background-image: var(--public-default-svg); + @extend %with-icon, %globe-16-svg-prop; + background-image: var(--globe-16-svg); } %with-public-default-mask { - @extend %with-mask, %public-default-svg-prop; - -webkit-mask-image: var(--public-default-svg); - mask-image: var(--public-default-svg); + @extend %with-mask, %globe-16-svg-prop; + -webkit-mask-image: var(--globe-16-svg); + mask-image: var(--globe-16-svg); } %with-public-locked-icon { - @extend %with-icon, %public-locked-svg-prop; - background-image: var(--public-locked-svg); + @extend %with-icon, %globe-private-16-svg-prop; + background-image: var(--globe-private-16-svg); } %with-public-locked-mask { - @extend %with-mask, %public-locked-svg-prop; - -webkit-mask-image: var(--public-locked-svg); - mask-image: var(--public-locked-svg); + @extend %with-mask, %globe-private-16-svg-prop; + -webkit-mask-image: var(--globe-private-16-svg); + mask-image: var(--globe-private-16-svg); } %with-queue-16-icon { @@ -7469,13 +8049,13 @@ } %with-queue-icon { - @extend %with-icon, %queue-svg-prop; - background-image: var(--queue-svg); + @extend %with-icon, %queue-16-svg-prop; + background-image: var(--queue-16-svg); } %with-queue-mask { - @extend %with-mask, %queue-svg-prop; - -webkit-mask-image: var(--queue-svg); - mask-image: var(--queue-svg); + @extend %with-mask, %queue-16-svg-prop; + -webkit-mask-image: var(--queue-16-svg); + mask-image: var(--queue-16-svg); } %with-radio-16-icon { @@ -7499,23 +8079,23 @@ } %with-radio-button-checked-icon { - @extend %with-icon, %radio-button-checked-svg-prop; - background-image: var(--radio-button-checked-svg); + @extend %with-icon, %circle-dot-16-svg-prop; + background-image: var(--circle-dot-16-svg); } %with-radio-button-checked-mask { - @extend %with-mask, %radio-button-checked-svg-prop; - -webkit-mask-image: var(--radio-button-checked-svg); - mask-image: var(--radio-button-checked-svg); + @extend %with-mask, %circle-dot-16-svg-prop; + -webkit-mask-image: var(--circle-dot-16-svg); + mask-image: var(--circle-dot-16-svg); } %with-radio-button-unchecked-icon { - @extend %with-icon, %radio-button-unchecked-svg-prop; - background-image: var(--radio-button-unchecked-svg); + @extend %with-icon, %circle-16-svg-prop; + background-image: var(--circle-16-svg); } %with-radio-button-unchecked-mask { - @extend %with-mask, %radio-button-unchecked-svg-prop; - -webkit-mask-image: var(--radio-button-unchecked-svg); - mask-image: var(--radio-button-unchecked-svg); + @extend %with-mask, %circle-16-svg-prop; + -webkit-mask-image: var(--circle-16-svg); + mask-image: var(--circle-16-svg); } %with-random-16-icon { @@ -7539,13 +8119,13 @@ } %with-random-icon { - @extend %with-icon, %random-svg-prop; - background-image: var(--random-svg); + @extend %with-icon, %random-16-svg-prop; + background-image: var(--random-16-svg); } %with-random-mask { - @extend %with-mask, %random-svg-prop; - -webkit-mask-image: var(--random-svg); - mask-image: var(--random-svg); + @extend %with-mask, %random-16-svg-prop; + -webkit-mask-image: var(--random-16-svg); + mask-image: var(--random-16-svg); } %with-redirect-16-icon { @@ -7569,33 +8149,33 @@ } %with-redirect-icon { - @extend %with-icon, %redirect-svg-prop; - background-image: var(--redirect-svg); + @extend %with-icon, %redirect-16-svg-prop; + background-image: var(--redirect-16-svg); } %with-redirect-mask { - @extend %with-mask, %redirect-svg-prop; - -webkit-mask-image: var(--redirect-svg); - mask-image: var(--redirect-svg); + @extend %with-mask, %redirect-16-svg-prop; + -webkit-mask-image: var(--redirect-16-svg); + mask-image: var(--redirect-16-svg); } %with-refresh-alert-icon { - @extend %with-icon, %refresh-alert-svg-prop; - background-image: var(--refresh-alert-svg); + @extend %with-icon, %sync-alert-16-svg-prop; + background-image: var(--sync-alert-16-svg); } %with-refresh-alert-mask { - @extend %with-mask, %refresh-alert-svg-prop; - -webkit-mask-image: var(--refresh-alert-svg); - mask-image: var(--refresh-alert-svg); + @extend %with-mask, %sync-alert-16-svg-prop; + -webkit-mask-image: var(--sync-alert-16-svg); + mask-image: var(--sync-alert-16-svg); } %with-refresh-default-icon { - @extend %with-icon, %refresh-default-svg-prop; - background-image: var(--refresh-default-svg); + @extend %with-icon, %sync-16-svg-prop; + background-image: var(--sync-16-svg); } %with-refresh-default-mask { - @extend %with-mask, %refresh-default-svg-prop; - -webkit-mask-image: var(--refresh-default-svg); - mask-image: var(--refresh-default-svg); + @extend %with-mask, %sync-16-svg-prop; + -webkit-mask-image: var(--sync-16-svg); + mask-image: var(--sync-16-svg); } %with-reload-16-icon { @@ -7619,13 +8199,13 @@ } %with-remix-icon { - @extend %with-icon, %remix-svg-prop; - background-image: var(--remix-svg); + @extend %with-icon, %shuffle-16-svg-prop; + background-image: var(--shuffle-16-svg); } %with-remix-mask { - @extend %with-mask, %remix-svg-prop; - -webkit-mask-image: var(--remix-svg); - mask-image: var(--remix-svg); + @extend %with-mask, %shuffle-16-svg-prop; + -webkit-mask-image: var(--shuffle-16-svg); + mask-image: var(--shuffle-16-svg); } %with-repeat-16-icon { @@ -7709,13 +8289,13 @@ } %with-ribbon-icon { - @extend %with-icon, %ribbon-svg-prop; - background-image: var(--ribbon-svg); + @extend %with-icon, %award-16-svg-prop; + background-image: var(--award-16-svg); } %with-ribbon-mask { - @extend %with-mask, %ribbon-svg-prop; - -webkit-mask-image: var(--ribbon-svg); - mask-image: var(--ribbon-svg); + @extend %with-mask, %award-16-svg-prop; + -webkit-mask-image: var(--award-16-svg); + mask-image: var(--award-16-svg); } %with-rocket-16-icon { @@ -7879,13 +8459,13 @@ } %with-search-icon { - @extend %with-icon, %search-svg-prop; - background-image: var(--search-svg); + @extend %with-icon, %search-16-svg-prop; + background-image: var(--search-16-svg); } %with-search-mask { - @extend %with-mask, %search-svg-prop; - -webkit-mask-image: var(--search-svg); - mask-image: var(--search-svg); + @extend %with-mask, %search-16-svg-prop; + -webkit-mask-image: var(--search-16-svg); + mask-image: var(--search-16-svg); } %with-send-16-icon { @@ -7989,13 +8569,13 @@ } %with-settings-icon { - @extend %with-icon, %settings-svg-prop; - background-image: var(--settings-svg); + @extend %with-icon, %settings-16-svg-prop; + background-image: var(--settings-16-svg); } %with-settings-mask { - @extend %with-mask, %settings-svg-prop; - -webkit-mask-image: var(--settings-svg); - mask-image: var(--settings-svg); + @extend %with-mask, %settings-16-svg-prop; + -webkit-mask-image: var(--settings-16-svg); + mask-image: var(--settings-16-svg); } %with-share-16-icon { @@ -8549,23 +9129,23 @@ } %with-sort-icon { - @extend %with-icon, %sort-svg-prop; - background-image: var(--sort-svg); + @extend %with-icon, %sort-desc-16-svg-prop; + background-image: var(--sort-desc-16-svg); } %with-sort-mask { - @extend %with-mask, %sort-svg-prop; - -webkit-mask-image: var(--sort-svg); - mask-image: var(--sort-svg); + @extend %with-mask, %sort-desc-16-svg-prop; + -webkit-mask-image: var(--sort-desc-16-svg); + mask-image: var(--sort-desc-16-svg); } %with-source-file-icon { - @extend %with-icon, %source-file-svg-prop; - background-image: var(--source-file-svg); + @extend %with-icon, %file-source-16-svg-prop; + background-image: var(--file-source-16-svg); } %with-source-file-mask { - @extend %with-mask, %source-file-svg-prop; - -webkit-mask-image: var(--source-file-svg); - mask-image: var(--source-file-svg); + @extend %with-mask, %file-source-16-svg-prop; + -webkit-mask-image: var(--file-source-16-svg); + mask-image: var(--file-source-16-svg); } %with-speaker-16-icon { @@ -8689,13 +9269,13 @@ } %with-star-fill-icon { - @extend %with-icon, %star-fill-svg-prop; - background-image: var(--star-fill-svg); + @extend %with-icon, %star-fill-16-svg-prop; + background-image: var(--star-fill-16-svg); } %with-star-fill-mask { - @extend %with-mask, %star-fill-svg-prop; - -webkit-mask-image: var(--star-fill-svg); - mask-image: var(--star-fill-svg); + @extend %with-mask, %star-fill-16-svg-prop; + -webkit-mask-image: var(--star-fill-16-svg); + mask-image: var(--star-fill-16-svg); } %with-star-off-16-icon { @@ -8719,13 +9299,13 @@ } %with-star-outline-icon { - @extend %with-icon, %star-outline-svg-prop; - background-image: var(--star-outline-svg); + @extend %with-icon, %star-16-svg-prop; + background-image: var(--star-16-svg); } %with-star-outline-mask { - @extend %with-mask, %star-outline-svg-prop; - -webkit-mask-image: var(--star-outline-svg); - mask-image: var(--star-outline-svg); + @extend %with-mask, %star-16-svg-prop; + -webkit-mask-image: var(--star-16-svg); + mask-image: var(--star-16-svg); } %with-stop-circle-16-icon { @@ -8749,23 +9329,23 @@ } %with-sub-left-icon { - @extend %with-icon, %sub-left-svg-prop; - background-image: var(--sub-left-svg); + @extend %with-icon, %corner-down-left-16-svg-prop; + background-image: var(--corner-down-left-16-svg); } %with-sub-left-mask { - @extend %with-mask, %sub-left-svg-prop; - -webkit-mask-image: var(--sub-left-svg); - mask-image: var(--sub-left-svg); + @extend %with-mask, %corner-down-left-16-svg-prop; + -webkit-mask-image: var(--corner-down-left-16-svg); + mask-image: var(--corner-down-left-16-svg); } %with-sub-right-icon { - @extend %with-icon, %sub-right-svg-prop; - background-image: var(--sub-right-svg); + @extend %with-icon, %corner-down-right-16-svg-prop; + background-image: var(--corner-down-right-16-svg); } %with-sub-right-mask { - @extend %with-mask, %sub-right-svg-prop; - -webkit-mask-image: var(--sub-right-svg); - mask-image: var(--sub-right-svg); + @extend %with-mask, %corner-down-right-16-svg-prop; + -webkit-mask-image: var(--corner-down-right-16-svg); + mask-image: var(--corner-down-right-16-svg); } %with-sun-16-icon { @@ -8809,13 +9389,13 @@ } %with-support-icon { - @extend %with-icon, %support-svg-prop; - background-image: var(--support-svg); + @extend %with-icon, %support-16-svg-prop; + background-image: var(--support-16-svg); } %with-support-mask { - @extend %with-mask, %support-svg-prop; - -webkit-mask-image: var(--support-svg); - mask-image: var(--support-svg); + @extend %with-mask, %support-16-svg-prop; + -webkit-mask-image: var(--support-16-svg); + mask-image: var(--support-16-svg); } %with-swap-horizontal-16-icon { @@ -8839,13 +9419,13 @@ } %with-swap-horizontal-icon { - @extend %with-icon, %swap-horizontal-svg-prop; - background-image: var(--swap-horizontal-svg); + @extend %with-icon, %swap-horizontal-16-svg-prop; + background-image: var(--swap-horizontal-16-svg); } %with-swap-horizontal-mask { - @extend %with-mask, %swap-horizontal-svg-prop; - -webkit-mask-image: var(--swap-horizontal-svg); - mask-image: var(--swap-horizontal-svg); + @extend %with-mask, %swap-horizontal-16-svg-prop; + -webkit-mask-image: var(--swap-horizontal-16-svg); + mask-image: var(--swap-horizontal-16-svg); } %with-swap-vertical-16-icon { @@ -8869,13 +9449,13 @@ } %with-swap-vertical-icon { - @extend %with-icon, %swap-vertical-svg-prop; - background-image: var(--swap-vertical-svg); + @extend %with-icon, %swap-vertical-16-svg-prop; + background-image: var(--swap-vertical-16-svg); } %with-swap-vertical-mask { - @extend %with-mask, %swap-vertical-svg-prop; - -webkit-mask-image: var(--swap-vertical-svg); - mask-image: var(--swap-vertical-svg); + @extend %with-mask, %swap-vertical-16-svg-prop; + -webkit-mask-image: var(--swap-vertical-16-svg); + mask-image: var(--swap-vertical-16-svg); } %with-switcher-16-icon { @@ -8999,13 +9579,13 @@ } %with-tag-icon { - @extend %with-icon, %tag-svg-prop; - background-image: var(--tag-svg); + @extend %with-icon, %tag-16-svg-prop; + background-image: var(--tag-16-svg); } %with-tag-mask { - @extend %with-mask, %tag-svg-prop; - -webkit-mask-image: var(--tag-svg); - mask-image: var(--tag-svg); + @extend %with-mask, %tag-16-svg-prop; + -webkit-mask-image: var(--tag-16-svg); + mask-image: var(--tag-16-svg); } %with-target-16-icon { @@ -9068,6 +9648,46 @@ mask-image: var(--terminal-screen-24-svg); } +%with-terraform-16-icon { + @extend %with-icon, %terraform-16-svg-prop; + background-image: var(--terraform-16-svg); +} +%with-terraform-16-mask { + @extend %with-mask, %terraform-16-svg-prop; + -webkit-mask-image: var(--terraform-16-svg); + mask-image: var(--terraform-16-svg); +} + +%with-terraform-24-icon { + @extend %with-icon, %terraform-24-svg-prop; + background-image: var(--terraform-24-svg); +} +%with-terraform-24-mask { + @extend %with-mask, %terraform-24-svg-prop; + -webkit-mask-image: var(--terraform-24-svg); + mask-image: var(--terraform-24-svg); +} + +%with-terraform-color-16-icon { + @extend %with-icon, %terraform-color-16-svg-prop; + background-image: var(--terraform-color-16-svg); +} +%with-terraform-color-16-mask { + @extend %with-mask, %terraform-color-16-svg-prop; + -webkit-mask-image: var(--terraform-color-16-svg); + mask-image: var(--terraform-color-16-svg); +} + +%with-terraform-color-24-icon { + @extend %with-icon, %terraform-color-24-svg-prop; + background-image: var(--terraform-color-24-svg); +} +%with-terraform-color-24-mask { + @extend %with-mask, %terraform-color-24-svg-prop; + -webkit-mask-image: var(--terraform-color-24-svg); + mask-image: var(--terraform-color-24-svg); +} + %with-thumbs-down-16-icon { @extend %with-icon, %thumbs-down-16-svg-prop; background-image: var(--thumbs-down-16-svg); @@ -9229,13 +9849,13 @@ } %with-trash-icon { - @extend %with-icon, %trash-svg-prop; - background-image: var(--trash-svg); + @extend %with-icon, %trash-16-svg-prop; + background-image: var(--trash-16-svg); } %with-trash-mask { - @extend %with-mask, %trash-svg-prop; - -webkit-mask-image: var(--trash-svg); - mask-image: var(--trash-svg); + @extend %with-mask, %trash-16-svg-prop; + -webkit-mask-image: var(--trash-16-svg); + mask-image: var(--trash-16-svg); } %with-trend-down-16-icon { @@ -9339,13 +9959,13 @@ } %with-tune-icon { - @extend %with-icon, %tune-svg-prop; - background-image: var(--tune-svg); + @extend %with-icon, %sliders-16-svg-prop; + background-image: var(--sliders-16-svg); } %with-tune-mask { - @extend %with-mask, %tune-svg-prop; - -webkit-mask-image: var(--tune-svg); - mask-image: var(--tune-svg); + @extend %with-mask, %sliders-16-svg-prop; + -webkit-mask-image: var(--sliders-16-svg); + mask-image: var(--sliders-16-svg); } %with-tv-16-icon { @@ -9368,6 +9988,86 @@ mask-image: var(--tv-24-svg); } +%with-twitch-16-icon { + @extend %with-icon, %twitch-16-svg-prop; + background-image: var(--twitch-16-svg); +} +%with-twitch-16-mask { + @extend %with-mask, %twitch-16-svg-prop; + -webkit-mask-image: var(--twitch-16-svg); + mask-image: var(--twitch-16-svg); +} + +%with-twitch-24-icon { + @extend %with-icon, %twitch-24-svg-prop; + background-image: var(--twitch-24-svg); +} +%with-twitch-24-mask { + @extend %with-mask, %twitch-24-svg-prop; + -webkit-mask-image: var(--twitch-24-svg); + mask-image: var(--twitch-24-svg); +} + +%with-twitch-color-16-icon { + @extend %with-icon, %twitch-color-16-svg-prop; + background-image: var(--twitch-color-16-svg); +} +%with-twitch-color-16-mask { + @extend %with-mask, %twitch-color-16-svg-prop; + -webkit-mask-image: var(--twitch-color-16-svg); + mask-image: var(--twitch-color-16-svg); +} + +%with-twitch-color-24-icon { + @extend %with-icon, %twitch-color-24-svg-prop; + background-image: var(--twitch-color-24-svg); +} +%with-twitch-color-24-mask { + @extend %with-mask, %twitch-color-24-svg-prop; + -webkit-mask-image: var(--twitch-color-24-svg); + mask-image: var(--twitch-color-24-svg); +} + +%with-twitter-16-icon { + @extend %with-icon, %twitter-16-svg-prop; + background-image: var(--twitter-16-svg); +} +%with-twitter-16-mask { + @extend %with-mask, %twitter-16-svg-prop; + -webkit-mask-image: var(--twitter-16-svg); + mask-image: var(--twitter-16-svg); +} + +%with-twitter-24-icon { + @extend %with-icon, %twitter-24-svg-prop; + background-image: var(--twitter-24-svg); +} +%with-twitter-24-mask { + @extend %with-mask, %twitter-24-svg-prop; + -webkit-mask-image: var(--twitter-24-svg); + mask-image: var(--twitter-24-svg); +} + +%with-twitter-color-16-icon { + @extend %with-icon, %twitter-color-16-svg-prop; + background-image: var(--twitter-color-16-svg); +} +%with-twitter-color-16-mask { + @extend %with-mask, %twitter-color-16-svg-prop; + -webkit-mask-image: var(--twitter-color-16-svg); + mask-image: var(--twitter-color-16-svg); +} + +%with-twitter-color-24-icon { + @extend %with-icon, %twitter-color-24-svg-prop; + background-image: var(--twitter-color-24-svg); +} +%with-twitter-color-24-mask { + @extend %with-mask, %twitter-color-24-svg-prop; + -webkit-mask-image: var(--twitter-color-24-svg); + mask-image: var(--twitter-color-24-svg); +} + %with-type-16-icon { @extend %with-icon, %type-16-svg-prop; background-image: var(--type-16-svg); @@ -9409,23 +10109,23 @@ } %with-unfold-less-icon { - @extend %with-icon, %unfold-less-svg-prop; - background-image: var(--unfold-less-svg); + @extend %with-icon, %unfold-close-16-svg-prop; + background-image: var(--unfold-close-16-svg); } %with-unfold-less-mask { - @extend %with-mask, %unfold-less-svg-prop; - -webkit-mask-image: var(--unfold-less-svg); - mask-image: var(--unfold-less-svg); + @extend %with-mask, %unfold-close-16-svg-prop; + -webkit-mask-image: var(--unfold-close-16-svg); + mask-image: var(--unfold-close-16-svg); } %with-unfold-more-icon { - @extend %with-icon, %unfold-more-svg-prop; - background-image: var(--unfold-more-svg); + @extend %with-icon, %unfold-open-16-svg-prop; + background-image: var(--unfold-open-16-svg); } %with-unfold-more-mask { - @extend %with-mask, %unfold-more-svg-prop; - -webkit-mask-image: var(--unfold-more-svg); - mask-image: var(--unfold-more-svg); + @extend %with-mask, %unfold-open-16-svg-prop; + -webkit-mask-image: var(--unfold-open-16-svg); + mask-image: var(--unfold-open-16-svg); } %with-unfold-open-16-icon { @@ -9449,11 +10149,11 @@ } %with-union-icon { - @extend %with-icon, %union-svg; + @extend %with-icon, %union-svg-prop; background-image: var(--union-svg); } %with-union-mask { - @extend %with-mask, %union-svg; + @extend %with-mask, %union-svg-prop; -webkit-mask-image: var(--union-svg); mask-image: var(--union-svg); } @@ -9499,13 +10199,13 @@ } %with-upload-icon { - @extend %with-icon, %upload-svg-prop; - background-image: var(--upload-svg); + @extend %with-icon, %upload-16-svg-prop; + background-image: var(--upload-16-svg); } %with-upload-mask { - @extend %with-mask, %upload-svg-prop; - -webkit-mask-image: var(--upload-svg); - mask-image: var(--upload-svg); + @extend %with-mask, %upload-16-svg-prop; + -webkit-mask-image: var(--upload-16-svg); + mask-image: var(--upload-16-svg); } %with-user-16-icon { @@ -9529,13 +10229,13 @@ } %with-user-add-icon { - @extend %with-icon, %user-add-svg-prop; - background-image: var(--user-add-svg); + @extend %with-icon, %user-plus-16-svg-prop; + background-image: var(--user-plus-16-svg); } %with-user-add-mask { - @extend %with-mask, %user-add-svg-prop; - -webkit-mask-image: var(--user-add-svg); - mask-image: var(--user-add-svg); + @extend %with-mask, %user-plus-16-svg-prop; + -webkit-mask-image: var(--user-plus-16-svg); + mask-image: var(--user-plus-16-svg); } %with-user-check-16-icon { @@ -9619,23 +10319,23 @@ } %with-user-organization-icon { - @extend %with-icon, %user-organization-svg-prop; - background-image: var(--user-organization-svg); + @extend %with-icon, %org-16-svg-prop; + background-image: var(--org-16-svg); } %with-user-organization-mask { - @extend %with-mask, %user-organization-svg-prop; - -webkit-mask-image: var(--user-organization-svg); - mask-image: var(--user-organization-svg); + @extend %with-mask, %org-16-svg-prop; + -webkit-mask-image: var(--org-16-svg); + mask-image: var(--org-16-svg); } %with-user-plain-icon { - @extend %with-icon, %user-plain-svg-prop; - background-image: var(--user-plain-svg); + @extend %with-icon, %user-16-svg-prop; + background-image: var(--user-16-svg); } %with-user-plain-mask { - @extend %with-mask, %user-plain-svg-prop; - -webkit-mask-image: var(--user-plain-svg); - mask-image: var(--user-plain-svg); + @extend %with-mask, %user-16-svg-prop; + -webkit-mask-image: var(--user-16-svg); + mask-image: var(--user-16-svg); } %with-user-plus-16-icon { @@ -9659,33 +10359,33 @@ } %with-user-square-fill-icon { - @extend %with-icon, %user-square-fill-svg-prop; - background-image: var(--user-square-fill-svg); + @extend %with-icon, %user-circle-fill-16-svg-prop; + background-image: var(--user-circle-fill-16-svg); } %with-user-square-fill-mask { - @extend %with-mask, %user-square-fill-svg-prop; - -webkit-mask-image: var(--user-square-fill-svg); - mask-image: var(--user-square-fill-svg); + @extend %with-mask, %user-circle-fill-16-svg-prop; + -webkit-mask-image: var(--user-circle-fill-16-svg); + mask-image: var(--user-circle-fill-16-svg); } %with-user-square-outline-icon { - @extend %with-icon, %user-square-outline-svg-prop; - background-image: var(--user-square-outline-svg); + @extend %with-icon, %user-circle-16-svg-prop; + background-image: var(--user-circle-16-svg); } %with-user-square-outline-mask { - @extend %with-mask, %user-square-outline-svg-prop; - -webkit-mask-image: var(--user-square-outline-svg); - mask-image: var(--user-square-outline-svg); + @extend %with-mask, %user-circle-16-svg-prop; + -webkit-mask-image: var(--user-circle-16-svg); + mask-image: var(--user-circle-16-svg); } %with-user-team-icon { - @extend %with-icon, %user-team-svg-prop; - background-image: var(--user-team-svg); + @extend %with-icon, %users-16-svg-prop; + background-image: var(--users-16-svg); } %with-user-team-mask { - @extend %with-mask, %user-team-svg-prop; - -webkit-mask-image: var(--user-team-svg); - mask-image: var(--user-team-svg); + @extend %with-mask, %users-16-svg-prop; + -webkit-mask-image: var(--users-16-svg); + mask-image: var(--users-16-svg); } %with-user-x-16-icon { @@ -9728,6 +10428,46 @@ mask-image: var(--users-24-svg); } +%with-vagrant-16-icon { + @extend %with-icon, %vagrant-16-svg-prop; + background-image: var(--vagrant-16-svg); +} +%with-vagrant-16-mask { + @extend %with-mask, %vagrant-16-svg-prop; + -webkit-mask-image: var(--vagrant-16-svg); + mask-image: var(--vagrant-16-svg); +} + +%with-vagrant-24-icon { + @extend %with-icon, %vagrant-24-svg-prop; + background-image: var(--vagrant-24-svg); +} +%with-vagrant-24-mask { + @extend %with-mask, %vagrant-24-svg-prop; + -webkit-mask-image: var(--vagrant-24-svg); + mask-image: var(--vagrant-24-svg); +} + +%with-vagrant-color-16-icon { + @extend %with-icon, %vagrant-color-16-svg-prop; + background-image: var(--vagrant-color-16-svg); +} +%with-vagrant-color-16-mask { + @extend %with-mask, %vagrant-color-16-svg-prop; + -webkit-mask-image: var(--vagrant-color-16-svg); + mask-image: var(--vagrant-color-16-svg); +} + +%with-vagrant-color-24-icon { + @extend %with-icon, %vagrant-color-24-svg-prop; + background-image: var(--vagrant-color-24-svg); +} +%with-vagrant-color-24-mask { + @extend %with-mask, %vagrant-color-24-svg-prop; + -webkit-mask-image: var(--vagrant-color-24-svg); + mask-image: var(--vagrant-color-24-svg); +} + %with-vault-16-icon { @extend %with-icon, %vault-16-svg-prop; background-image: var(--vault-16-svg); @@ -9748,6 +10488,26 @@ mask-image: var(--vault-24-svg); } +%with-vault-color-16-icon { + @extend %with-icon, %vault-color-16-svg-prop; + background-image: var(--vault-color-16-svg); +} +%with-vault-color-16-mask { + @extend %with-mask, %vault-color-16-svg-prop; + -webkit-mask-image: var(--vault-color-16-svg); + mask-image: var(--vault-color-16-svg); +} + +%with-vault-color-24-icon { + @extend %with-icon, %vault-color-24-svg-prop; + background-image: var(--vault-color-24-svg); +} +%with-vault-color-24-mask { + @extend %with-mask, %vault-color-24-svg-prop; + -webkit-mask-image: var(--vault-color-24-svg); + mask-image: var(--vault-color-24-svg); +} + %with-verified-16-icon { @extend %with-icon, %verified-16-svg-prop; background-image: var(--verified-16-svg); @@ -9809,23 +10569,23 @@ } %with-visibility-hide-icon { - @extend %with-icon, %visibility-hide-svg-prop; - background-image: var(--visibility-hide-svg); + @extend %with-icon, %eye-off-16-svg-prop; + background-image: var(--eye-off-16-svg); } %with-visibility-hide-mask { - @extend %with-mask, %visibility-hide-svg-prop; - -webkit-mask-image: var(--visibility-hide-svg); - mask-image: var(--visibility-hide-svg); + @extend %with-mask, %eye-off-16-svg-prop; + -webkit-mask-image: var(--eye-off-16-svg); + mask-image: var(--eye-off-16-svg); } %with-visibility-show-icon { - @extend %with-icon, %visibility-show-svg-prop; - background-image: var(--visibility-show-svg); + @extend %with-icon, %eye-16-svg-prop; + background-image: var(--eye-16-svg); } %with-visibility-show-mask { - @extend %with-mask, %visibility-show-svg-prop; - -webkit-mask-image: var(--visibility-show-svg); - mask-image: var(--visibility-show-svg); + @extend %with-mask, %eye-16-svg-prop; + -webkit-mask-image: var(--eye-16-svg); + mask-image: var(--eye-16-svg); } %with-vmware-16-icon { @@ -9988,6 +10748,46 @@ mask-image: var(--watch-24-svg); } +%with-waypoint-16-icon { + @extend %with-icon, %waypoint-16-svg-prop; + background-image: var(--waypoint-16-svg); +} +%with-waypoint-16-mask { + @extend %with-mask, %waypoint-16-svg-prop; + -webkit-mask-image: var(--waypoint-16-svg); + mask-image: var(--waypoint-16-svg); +} + +%with-waypoint-24-icon { + @extend %with-icon, %waypoint-24-svg-prop; + background-image: var(--waypoint-24-svg); +} +%with-waypoint-24-mask { + @extend %with-mask, %waypoint-24-svg-prop; + -webkit-mask-image: var(--waypoint-24-svg); + mask-image: var(--waypoint-24-svg); +} + +%with-waypoint-color-16-icon { + @extend %with-icon, %waypoint-color-16-svg-prop; + background-image: var(--waypoint-color-16-svg); +} +%with-waypoint-color-16-mask { + @extend %with-mask, %waypoint-color-16-svg-prop; + -webkit-mask-image: var(--waypoint-color-16-svg); + mask-image: var(--waypoint-color-16-svg); +} + +%with-waypoint-color-24-icon { + @extend %with-icon, %waypoint-color-24-svg-prop; + background-image: var(--waypoint-color-24-svg); +} +%with-waypoint-color-24-mask { + @extend %with-mask, %waypoint-color-24-svg-prop; + -webkit-mask-image: var(--waypoint-color-24-svg); + mask-image: var(--waypoint-color-24-svg); +} + %with-webhook-16-icon { @extend %with-icon, %webhook-16-svg-prop; background-image: var(--webhook-16-svg); @@ -10009,13 +10809,13 @@ } %with-webhook-icon { - @extend %with-icon, %webhook-svg-prop; - background-image: var(--webhook-svg); + @extend %with-icon, %webhook-16-svg-prop; + background-image: var(--webhook-16-svg); } %with-webhook-mask { - @extend %with-mask, %webhook-svg-prop; - -webkit-mask-image: var(--webhook-svg); - mask-image: var(--webhook-svg); + @extend %with-mask, %webhook-16-svg-prop; + -webkit-mask-image: var(--webhook-16-svg); + mask-image: var(--webhook-16-svg); } %with-wifi-16-icon { @@ -10258,6 +11058,46 @@ mask-image: var(--x-square-fill-24-svg); } +%with-youtube-16-icon { + @extend %with-icon, %youtube-16-svg-prop; + background-image: var(--youtube-16-svg); +} +%with-youtube-16-mask { + @extend %with-mask, %youtube-16-svg-prop; + -webkit-mask-image: var(--youtube-16-svg); + mask-image: var(--youtube-16-svg); +} + +%with-youtube-24-icon { + @extend %with-icon, %youtube-24-svg-prop; + background-image: var(--youtube-24-svg); +} +%with-youtube-24-mask { + @extend %with-mask, %youtube-24-svg-prop; + -webkit-mask-image: var(--youtube-24-svg); + mask-image: var(--youtube-24-svg); +} + +%with-youtube-color-16-icon { + @extend %with-icon, %youtube-color-16-svg-prop; + background-image: var(--youtube-color-16-svg); +} +%with-youtube-color-16-mask { + @extend %with-mask, %youtube-color-16-svg-prop; + -webkit-mask-image: var(--youtube-color-16-svg); + mask-image: var(--youtube-color-16-svg); +} + +%with-youtube-color-24-icon { + @extend %with-icon, %youtube-color-24-svg-prop; + background-image: var(--youtube-color-24-svg); +} +%with-youtube-color-24-mask { + @extend %with-mask, %youtube-color-24-svg-prop; + -webkit-mask-image: var(--youtube-color-24-svg); + mask-image: var(--youtube-color-24-svg); +} + %with-zap-16-icon { @extend %with-icon, %zap-16-svg-prop; background-image: var(--zap-16-svg); diff --git a/ui/packages/consul-ui/app/styles/icons.scss b/ui/packages/consul-ui/app/styles/icons.scss index 96eac426b..0ab6ec6c6 100644 --- a/ui/packages/consul-ui/app/styles/icons.scss +++ b/ui/packages/consul-ui/app/styles/icons.scss @@ -1,4 +1,71 @@ +%with-vault-100 { + @extend %with-vault-16-mask, %as-pseudo; + color: rgb(var(--tone-vault-500)); +} %with-vault-300 { @extend %with-vault-16-mask, %as-pseudo; color: rgb(var(--tone-vault-500)); } +%with-aws-100, +%with-aws-300 { + @extend %aws-color-16-svg-prop; + @extend %with-icon, %as-pseudo; + + background-image: var(--theme-dark-none) var(--aws-color-16-svg); + + -webkit-mask-image: var(--theme-light-none) var(--aws-color-16-svg); + -webkit-mask-repeat: var(--theme-light-none) no-repeat; + -webkit-mask-position: var(--theme-light-none) center; + mask-image: var(--theme-light-none) var(--aws-color-16-svg); + mask-repeat: var(--theme-light-none) no-repeat; + mask-position: var(--theme-light-none) center; + background-color: var(--theme-light-none) rgb(var(--white)); +} +%with-allow-100, +%with-aws-100, +%with-deny-100, +%with-l7-100, +%with-vault-100 { + width: 0.75rem; /* 12px */ + height: 0.75rem; /* 12px */ +} +%with-allow-500, +%with-deny-500, +%with-l7-500 { + width: 1.25rem; /* 20px */ + height: 1.25rem; /* 20px */ +} +%with-allow-300, +%with-allow-500 { + color: rgb(var(--tone-green-500)); +} +%with-deny-300, +%with-deny-500 { + color: rgb(var(--tone-red-500)); +} +%with-allow-300, +%with-allow-500, +%with-deny-300, +%with-deny-500, +%with-l7-300, +%with-l7-500 { + @extend %as-pseudo; +} +%with-allow-300 { + @extend %with-arrow-right-16-mask; +} +%with-allow-500 { + @extend %with-arrow-right-24-mask; +} +%with-deny-300 { + @extend %with-skip-16-mask; +} +%with-deny-500 { + @extend %with-skip-24-mask; +} +%with-l7-300 { + @extend %with-layers-16-mask; +} +%with-l7-500 { + @extend %with-layers-24-mask; +} From d00a9abca29c5ac68d4ccd0db2959aeb99e69073 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 2 Feb 2022 12:07:29 -0500 Subject: [PATCH 403/404] acl: un-embed ACLIdentity This is safer than embedding two interface because there are a number of places where we check the concrete type. If we check the concrete type on the top-level interface it will fail. So instead expose the ACLIdentity from a method. --- agent/acl_test.go | 6 ++++++ agent/consul/acl.go | 6 +++++- agent/consul/internal_endpoint.go | 2 +- agent/consul/operator_autopilot_endpoint.go | 8 ++++---- agent/consul/operator_raft_endpoint.go | 4 ++-- 5 files changed, 18 insertions(+), 8 deletions(-) diff --git a/agent/acl_test.go b/agent/acl_test.go index 5ad4880ed..ad7e8cebb 100644 --- a/agent/acl_test.go +++ b/agent/acl_test.go @@ -39,6 +39,12 @@ type TestACLAgent struct { func NewTestACLAgent(t *testing.T, name string, hcl string, resolveAuthz authzResolver, resolveIdent identResolver) *TestACLAgent { t.Helper() + if resolveIdent == nil { + resolveIdent = func(s string) (structs.ACLIdentity, error) { + return nil, nil + } + } + a := &TestACLAgent{resolveAuthzFn: resolveAuthz, resolveIdentFn: resolveIdent} dataDir := testutil.TempDir(t, "acl-agent") diff --git a/agent/consul/acl.go b/agent/consul/acl.go index e18feb415..350f9993b 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -1120,7 +1120,7 @@ func (r *ACLResolver) ResolveToken(token string) (ACLResolveResult, error) { type ACLResolveResult struct { acl.Authorizer // TODO: likely we can reduce this interface - structs.ACLIdentity + ACLIdentity structs.ACLIdentity } func (a ACLResolveResult) AccessorID() string { @@ -1130,6 +1130,10 @@ func (a ACLResolveResult) AccessorID() string { return a.ACLIdentity.ID() } +func (a ACLResolveResult) Identity() structs.ACLIdentity { + return a.ACLIdentity +} + func (r *ACLResolver) ACLsEnabled() bool { // Whether we desire ACLs to be enabled according to configuration if !r.config.ACLsEnabled { diff --git a/agent/consul/internal_endpoint.go b/agent/consul/internal_endpoint.go index 44b6af5aa..0f7740a39 100644 --- a/agent/consul/internal_endpoint.go +++ b/agent/consul/internal_endpoint.go @@ -437,7 +437,7 @@ func (m *Internal) KeyringOperation( if err != nil { return err } - if err := m.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := m.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } switch args.Operation { diff --git a/agent/consul/operator_autopilot_endpoint.go b/agent/consul/operator_autopilot_endpoint.go index f4a3db65e..2ee85bb06 100644 --- a/agent/consul/operator_autopilot_endpoint.go +++ b/agent/consul/operator_autopilot_endpoint.go @@ -21,7 +21,7 @@ func (op *Operator) AutopilotGetConfiguration(args *structs.DCSpecificRequest, r if err != nil { return err } - if err := op.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := op.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } if authz.OperatorRead(nil) != acl.Allow { @@ -53,7 +53,7 @@ func (op *Operator) AutopilotSetConfiguration(args *structs.AutopilotSetConfigRe if err != nil { return err } - if err := op.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := op.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } if authz.OperatorWrite(nil) != acl.Allow { @@ -88,7 +88,7 @@ func (op *Operator) ServerHealth(args *structs.DCSpecificRequest, reply *structs if err != nil { return err } - if err := op.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := op.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } if authz.OperatorRead(nil) != acl.Allow { @@ -155,7 +155,7 @@ func (op *Operator) AutopilotState(args *structs.DCSpecificRequest, reply *autop if err != nil { return err } - if err := op.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := op.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } if authz.OperatorRead(nil) != acl.Allow { diff --git a/agent/consul/operator_raft_endpoint.go b/agent/consul/operator_raft_endpoint.go index 431b455c0..33f9ad7ff 100644 --- a/agent/consul/operator_raft_endpoint.go +++ b/agent/consul/operator_raft_endpoint.go @@ -85,7 +85,7 @@ func (op *Operator) RaftRemovePeerByAddress(args *structs.RaftRemovePeerRequest, if err != nil { return err } - if err := op.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := op.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } if authz.OperatorWrite(nil) != acl.Allow { @@ -138,7 +138,7 @@ func (op *Operator) RaftRemovePeerByID(args *structs.RaftRemovePeerRequest, repl if err != nil { return err } - if err := op.srv.validateEnterpriseToken(authz.ACLIdentity); err != nil { + if err := op.srv.validateEnterpriseToken(authz.Identity()); err != nil { return err } if authz.OperatorWrite(nil) != acl.Allow { From 0784d44a3cac43f35c4b812c0715a2c00f5bcc66 Mon Sep 17 00:00:00 2001 From: Evan Culver Date: Wed, 2 Feb 2022 17:31:08 -0800 Subject: [PATCH 404/404] Add changelog entry --- .changelog/11956.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/11956.txt diff --git a/.changelog/11956.txt b/.changelog/11956.txt new file mode 100644 index 000000000..716a6f1ae --- /dev/null +++ b/.changelog/11956.txt @@ -0,0 +1,3 @@ +```release-note:improvement +ci: Enable security scanning for CRT +```